{"version":3,"file":"static/js/main.f11323e8.js","mappings":";sCAAA,OAOC,WACA,aAEA,IAAIA,EAAS,CAAC,EAAEC,eAGhB,SAASC,IAGR,IAFA,IAAIC,EAAU,GAELC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAC1C,IAAIG,EAAMF,UAAUD,GACpB,GAAKG,EAAL,CAEA,IAAIC,SAAiBD,EAErB,GAAgB,WAAZC,GAAoC,WAAZA,EAC3BL,EAAQM,KAAKF,QACP,GAAIG,MAAMC,QAAQJ,IACxB,GAAIA,EAAID,OAAQ,CACf,IAAIM,EAAQV,EAAWW,MAAM,KAAMN,GAC/BK,GACHT,EAAQM,KAAKG,EAEf,OACM,GAAgB,WAAZJ,EAAsB,CAChC,GAAID,EAAIO,WAAaC,OAAOC,UAAUF,WAAaP,EAAIO,SAASA,WAAWG,SAAS,iBAAkB,CACrGd,EAAQM,KAAKF,EAAIO,YACjB,QACD,CAEA,IAAK,IAAII,KAAOX,EACXP,EAAOmB,KAAKZ,EAAKW,IAAQX,EAAIW,IAChCf,EAAQM,KAAKS,EAGhB,CAxBkB,CAyBnB,CAEA,OAAOf,EAAQiB,KAAK,IACrB,CAEqCC,EAAOC,SAC3CpB,EAAWqB,QAAUrB,EACrBmB,EAAOC,QAAUpB,QAKhB,KAFwB,EAAF,WACtB,OAAOA,CACP,UAFoB,OAEpB,YAIF,CApDA,uDCSD,IAAIsB,EAAgB,SAASC,EAAGC,GAI5B,OAHAF,EAAgBT,OAAOY,gBAClB,CAAEC,UAAW,cAAgBlB,OAAS,SAAUe,EAAGC,GAAKD,EAAEG,UAAYF,CAAE,GACzE,SAAUD,EAAGC,GAAK,IAAK,IAAIG,KAAKH,EAAOX,OAAOC,UAAUf,eAAekB,KAAKO,EAAGG,KAAIJ,EAAEI,GAAKH,EAAEG,GAAG,EAC5FL,EAAcC,EAAGC,EAC5B,EAEO,SAASI,EAAUL,EAAGC,GACzB,GAAiB,oBAANA,GAA0B,OAANA,EAC3B,MAAM,IAAIK,UAAU,uBAAyBC,OAAON,GAAK,iCAE7D,SAASO,IAAOC,KAAKC,YAAcV,CAAE,CADrCD,EAAcC,EAAGC,GAEjBD,EAAET,UAAkB,OAANU,EAAaX,OAAOqB,OAAOV,IAAMO,EAAGjB,UAAYU,EAAEV,UAAW,IAAIiB,EACnF,CAEO,IAAII,EAAW,WAQlB,OAPAA,EAAWtB,OAAOuB,QAAU,SAAkBC,GAC1C,IAAK,IAAIC,EAAGpC,EAAI,EAAGqC,EAAIpC,UAAUC,OAAQF,EAAIqC,EAAGrC,IAE5C,IAAK,IAAIyB,KADTW,EAAInC,UAAUD,GACOW,OAAOC,UAAUf,eAAekB,KAAKqB,EAAGX,KAAIU,EAAEV,GAAKW,EAAEX,IAE9E,OAAOU,CACf,EACWF,EAASxB,MAAMqB,KAAM7B,UAChC,EA6BO,SAASqC,EAAUC,EAASC,EAAYC,EAAGC,GAC9C,SAASC,EAAMC,GAAS,OAAOA,aAAiBH,EAAIG,EAAQ,IAAIH,GAAE,SAAUI,GAAWA,EAAQD,EAAO,GAAI,CAC1G,OAAO,IAAKH,IAAMA,EAAIK,WAAU,SAAUD,EAASE,GAC/C,SAASC,EAAUJ,GAAS,IAAMK,EAAKP,EAAUQ,KAAKN,GAAiC,CAAtB,MAAOO,IAAKJ,EAAOI,GAAG,CAAE,CACzF,SAASC,EAASR,GAAS,IAAMK,EAAKP,EAAiB,MAAEE,GAAiC,CAAtB,MAAOO,IAAKJ,EAAOI,GAAG,CAAE,CAC5F,SAASF,EAAKI,GAAUA,EAAOC,KAAOT,EAAQQ,EAAOT,OAASD,EAAMU,EAAOT,OAAOW,KAAKP,EAAWI,EAAU,CAC5GH,GAAMP,EAAYA,EAAUjC,MAAM8B,EAASC,GAAc,KAAKU,OACtE,GACA,CAEO,SAASM,EAAYjB,EAASkB,GACjC,IAAsGC,EAAGC,EAAGxB,EAAGyB,EAA3GC,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAa,GAAW,EAAP5B,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,EAAG,EAAI6B,KAAM,GAAIC,IAAK,IAChG,OAAOL,EAAI,CAAEV,KAAMgB,EAAK,GAAI,MAASA,EAAK,GAAI,OAAUA,EAAK,IAAwB,oBAAXC,SAA0BP,EAAEO,OAAOC,UAAY,WAAa,OAAOtC,IAAK,GAAK8B,EACvJ,SAASM,EAAK7B,GAAK,OAAO,SAAUgC,GAAK,OAAOpB,EAAK,CAACZ,EAAGgC,GAAI,CAAG,CAChE,SAASpB,EAAKqB,GACV,GAAIZ,EAAG,MAAM,IAAI/B,UAAU,mCAC3B,KAAOkC,OACH,GAAIH,EAAI,EAAGC,IAAMxB,EAAY,EAARmC,EAAG,GAASX,EAAU,OAAIW,EAAG,GAAKX,EAAS,SAAOxB,EAAIwB,EAAU,SAAMxB,EAAEpB,KAAK4C,GAAI,GAAKA,EAAET,SAAWf,EAAIA,EAAEpB,KAAK4C,EAAGW,EAAG,KAAKhB,KAAM,OAAOnB,EAE3J,OADIwB,EAAI,EAAGxB,IAAGmC,EAAK,CAAS,EAARA,EAAG,GAAQnC,EAAES,QACzB0B,EAAG,IACP,KAAK,EAAG,KAAK,EAAGnC,EAAImC,EAAI,MACxB,KAAK,EAAc,OAAXT,EAAEC,QAAgB,CAAElB,MAAO0B,EAAG,GAAIhB,MAAM,GAChD,KAAK,EAAGO,EAAEC,QAASH,EAAIW,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKT,EAAEI,IAAIM,MAAOV,EAAEG,KAAKO,MAAO,SACxC,QACI,KAAkBpC,GAAZA,EAAI0B,EAAEG,MAAY9D,OAAS,GAAKiC,EAAEA,EAAEjC,OAAS,MAAkB,IAAVoE,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAET,EAAI,EAAG,QAAS,CAC1G,GAAc,IAAVS,EAAG,MAAcnC,GAAMmC,EAAG,GAAKnC,EAAE,IAAMmC,EAAG,GAAKnC,EAAE,IAAM,CAAE0B,EAAEC,MAAQQ,EAAG,GAAI,KAAM,CACpF,GAAc,IAAVA,EAAG,IAAYT,EAAEC,MAAQ3B,EAAE,GAAI,CAAE0B,EAAEC,MAAQ3B,EAAE,GAAIA,EAAImC,EAAI,KAAM,CACnE,GAAInC,GAAK0B,EAAEC,MAAQ3B,EAAE,GAAI,CAAE0B,EAAEC,MAAQ3B,EAAE,GAAI0B,EAAEI,IAAI5D,KAAKiE,GAAK,KAAM,CAC7DnC,EAAE,IAAI0B,EAAEI,IAAIM,MAChBV,EAAEG,KAAKO,MAAO,SAEtBD,EAAKb,EAAK1C,KAAKwB,EAASsB,GAC1B,MAAOV,IAAKmB,EAAK,CAAC,EAAGnB,IAAIQ,EAAI,CAAE,CAAG,QAAUD,EAAIvB,EAAI,CAAE,CACxD,GAAY,EAARmC,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAE1B,MAAO0B,EAAG,GAAKA,EAAG,QAAK,EAAQhB,MAAM,EAClF,CACA,CA2DO,SAASkB,EAAcC,EAAIC,EAAMC,GACpC,GAAIA,GAA6B,IAArB1E,UAAUC,OAAc,IAAK,IAA4B0E,EAAxB5E,EAAI,EAAG6E,EAAIH,EAAKxE,OAAYF,EAAI6E,EAAG7E,KACxE4E,GAAQ5E,KAAK0E,IACRE,IAAIA,EAAKtE,MAAMM,UAAUkE,MAAM/D,KAAK2D,EAAM,EAAG1E,IAClD4E,EAAG5E,GAAK0E,EAAK1E,IAGrB,OAAOyE,EAAGM,OAAOH,GAAMF,EAC3B,CCrHA,ICrDA,iBACI,WAAqBM,EAAuBC,EAAsBC,EAAwBC,GAArE,KAAAH,KAAAA,EAAuB,KAAAC,IAAAA,EAAsB,KAAAC,MAAAA,EAAwB,KAAAC,OAAAA,EA4B9F,OA1BIC,EAAAA,UAAAA,IAAA,SAAIC,EAAW1B,EAAW2B,EAAWC,GACjC,OAAO,IAAIH,EAAOtD,KAAKkD,KAAOK,EAAGvD,KAAKmD,IAAMtB,EAAG7B,KAAKoD,MAAQI,EAAGxD,KAAKqD,OAASI,IAG1EH,EAAAA,eAAP,SAAsBI,EAAkBC,GACpC,OAAO,IAAIL,EACPK,EAAWT,KAAOQ,EAAQE,aAAaV,KACvCS,EAAWR,IAAMO,EAAQE,aAAaT,IACtCQ,EAAWP,MACXO,EAAWN,SAIZC,EAAAA,gBAAP,SAAuBI,EAAkBG,GACrC,IAAMC,EAAUtF,MAAMoE,KAAKiB,GAAaE,MAAK,SAACC,GAAS,OAAe,IAAfA,EAAKZ,KAAW,IACvE,OAAOU,EACD,IAAIR,EACAQ,EAAQZ,KAAOQ,EAAQE,aAAaV,KACpCY,EAAQX,IAAMO,EAAQE,aAAaT,IACnCW,EAAQV,MACRU,EAAQT,QAEZC,EAAOW,OAGVX,EAAAA,MAAQ,IAAIA,EAAO,EAAG,EAAG,EAAG,GACvC,EA7BA,GA+BaY,EAAc,SAACR,EAAkBS,GAC1C,OAAOb,EAAOc,eAAeV,EAASS,EAAKE,wBAC/C,EAEaC,EAAoB,SAACC,GAC9B,IAAM5C,EAAO4C,EAAS5C,KAChB6C,EAAkBD,EAASC,gBAEjC,IAAK7C,IAAS6C,EACV,MAAM,IAAIC,MAAM,+BAEpB,IAAMrB,EAAQsB,KAAKC,IACfD,KAAKC,IAAIhD,EAAKiD,YAAaJ,EAAgBI,aAC3CF,KAAKC,IAAIhD,EAAKkD,YAAaL,EAAgBK,aAC3CH,KAAKC,IAAIhD,EAAKmD,YAAaN,EAAgBM,cAGzCzB,EAASqB,KAAKC,IAChBD,KAAKC,IAAIhD,EAAKoD,aAAcP,EAAgBO,cAC5CL,KAAKC,IAAIhD,EAAKqD,aAAcR,EAAgBQ,cAC5CN,KAAKC,IAAIhD,EAAKsD,aAAcT,EAAgBS,eAGhD,OAAO,IAAI3B,EAAO,EAAG,EAAGF,EAAOC,EACnC,EDzDa6B,EAAe,SAACC,GAIzB,IAHA,IAAMC,EAAa,GACflH,EAAI,EACFE,EAAS+G,EAAI/G,OACZF,EAAIE,GAAQ,CACf,IAAM0C,EAAQqE,EAAIE,WAAWnH,KAC7B,GAAI4C,GAAS,OAAUA,GAAS,OAAU5C,EAAIE,EAAQ,CAClD,IAAMkH,EAAQH,EAAIE,WAAWnH,KACJ,SAAZ,MAARoH,GACDF,EAAW7G,OAAe,KAARuC,IAAkB,KAAe,KAARwE,GAAiB,QAE5DF,EAAW7G,KAAKuC,GAChB5C,UAGJkH,EAAW7G,KAAKuC,GAGxB,OAAOsE,CACX,EAEaG,EAAgB,eAAC,aAAAC,EAAAA,UAAAA,OAAAA,IAAAJ,EAAAA,GAAAA,UAAAA,GAC1B,GAAItF,OAAOyF,cACP,OAAOzF,OAAOyF,cAAa,MAApBzF,OAAwBsF,GAGnC,IAAMhH,EAASgH,EAAWhH,OAC1B,IAAKA,EACD,MAAO,GAOX,IAJA,IAAMqH,EAAY,GAEdC,GAAS,EACTnE,EAAS,KACJmE,EAAQtH,GAAQ,CACrB,IAAIuH,EAAYP,EAAWM,GACvBC,GAAa,MACbF,EAAUlH,KAAKoH,IAEfA,GAAa,MACbF,EAAUlH,KAAyB,OAAnBoH,GAAa,IAAeA,EAAY,KAAS,SAEjED,EAAQ,IAAMtH,GAAUqH,EAAUrH,OAAS,SAC3CmD,GAAUzB,OAAO8F,aAAY,MAAnB9F,OAAuB2F,GACjCA,EAAUrH,OAAS,GAG3B,OAAOmD,CACX,EAEMsE,EAAQ,mEAGRC,EAA+B,qBAAfC,WAA6B,GAAK,IAAIA,WAAW,KAC9D7H,EAAI,EAAGA,EAAI2H,EAAMzH,OAAQF,IAC9B4H,EAAOD,EAAMR,WAAWnH,IAAMA,EEpDlC,IAJA,IAAM2H,EAAQ,mEAGRC,EAA+B,qBAAfC,WAA6B,GAAK,IAAIA,WAAW,KAC9D7H,EAAI,EAAGA,EAAI2H,EAAMzH,OAAQF,IAC9B4H,EAAOD,EAAMR,WAAWnH,IAAMA,ECDlC,IDIO,IAAM8H,EAAS,SAACC,GACnB,IAEI/H,EAEAgI,EACAC,EACAC,EACAC,EAPAC,EAA+B,IAAhBL,EAAO7H,OACtBmI,EAAMN,EAAO7H,OAEbuB,EAAI,EAM0B,MAA9BsG,EAAOA,EAAO7H,OAAS,KACvBkI,IACkC,MAA9BL,EAAOA,EAAO7H,OAAS,IACvBkI,KAIR,IAAME,EACqB,qBAAhBC,aACe,qBAAfV,YAC+B,qBAA/BA,WAAWjH,UAAUkE,MACtB,IAAIyD,YAAYH,GAChB,IAAI9H,MAAM8H,GACdI,EAAQlI,MAAMC,QAAQ+H,GAAUA,EAAS,IAAIT,WAAWS,GAE9D,IAAKtI,EAAI,EAAGA,EAAIqI,EAAKrI,GAAK,EACtBgI,EAAWJ,EAAOG,EAAOZ,WAAWnH,IACpCiI,EAAWL,EAAOG,EAAOZ,WAAWnH,EAAI,IACxCkI,EAAWN,EAAOG,EAAOZ,WAAWnH,EAAI,IACxCmI,EAAWP,EAAOG,EAAOZ,WAAWnH,EAAI,IAExCwI,EAAM/G,KAAQuG,GAAY,EAAMC,GAAY,EAC5CO,EAAM/G,MAAoB,GAAXwG,IAAkB,EAAMC,GAAY,EACnDM,EAAM/G,MAAoB,EAAXyG,IAAiB,EAAiB,GAAXC,EAG1C,OAAOG,CACX,EAEaG,EAAkB,SAACH,GAG5B,IAFA,IAAMpI,EAASoI,EAAOpI,OAChBsI,EAAQ,GACLxI,EAAI,EAAGA,EAAIE,EAAQF,GAAK,EAC7BwI,EAAMnI,KAAMiI,EAAOtI,EAAI,IAAM,EAAKsI,EAAOtI,IAE7C,OAAOwI,CACX,EAEaE,EAAkB,SAACJ,GAG5B,IAFA,IAAMpI,EAASoI,EAAOpI,OAChBsI,EAAQ,GACLxI,EAAI,EAAGA,EAAIE,EAAQF,GAAK,EAC7BwI,EAAMnI,KAAMiI,EAAOtI,EAAI,IAAM,GAAOsI,EAAOtI,EAAI,IAAM,GAAOsI,EAAOtI,EAAI,IAAM,EAAKsI,EAAOtI,IAE7F,OAAOwI,CACX,EE1DaG,EAAiB,EAGjBC,EAAiB,GAQjBC,EAAqB,EAcrBC,EAA6B,OAAWH,EAKxCI,GAF2B,GAAKJ,GAEc,EAuB9CK,EAnB4BF,GAFC,MAASH,GAQN,GAmBhCM,EAAoC,OAAWL,EAK/CM,GAF8B,GA7CXN,EAAiBD,GA+CgB,EAE3DQ,EAAU,SAACC,EAA8BC,EAAeC,GAC1D,OAAIF,EAAKtE,MACEsE,EAAKtE,MAAMuE,EAAOC,GAGtB,IAAIC,YAAYjJ,MAAMM,UAAUkE,MAAM/D,KAAKqI,EAAMC,EAAOC,GACnE,EAEME,EAAU,SAACJ,EAA8BC,EAAeC,GAC1D,OAAIF,EAAKtE,MACEsE,EAAKtE,MAAMuE,EAAOC,GAGtB,IAAIG,YAAYnJ,MAAMM,UAAUkE,MAAM/D,KAAKqI,EAAMC,EAAOC,GACnE,EAEaI,EAAuB,SAAC3B,EAAgB4B,GACjD,IAAMrB,EAASR,EAAOC,GAChB6B,EAAStJ,MAAMC,QAAQ+H,GAAUI,EAAgBJ,GAAU,IAAImB,YAAYnB,GAC3EuB,EAASvJ,MAAMC,QAAQ+H,GAAUG,EAAgBH,GAAU,IAAIiB,YAAYjB,GAC3EwB,EAAe,GAEftC,EAAQ2B,EAAQU,EAAQC,EAAe,EAAGF,EAAO,GAAK,GACtDG,EACY,IAAdH,EAAO,GACDT,EAAQU,GAASC,EAAeF,EAAO,IAAM,GAC7CJ,EAAQI,EAAQpD,KAAKwD,MAAMF,EAAeF,EAAO,IAAM,IAEjE,OAAO,IAAIK,EAAKL,EAAO,GAAIA,EAAO,GAAIA,EAAO,GAAIA,EAAO,GAAIpC,EAAOuC,EACvE,eAUI,WACIG,EACAC,EACAC,EACAC,EACA7C,EACAuC,GAEAjI,KAAKoI,aAAeA,EACpBpI,KAAKqI,WAAaA,EAClBrI,KAAKsI,UAAYA,EACjBtI,KAAKuI,eAAiBA,EACtBvI,KAAK0F,MAAQA,EACb1F,KAAKiI,KAAOA,EAkDpB,OAzCIE,EAAAA,UAAAA,IAAA,SAAIxC,GACA,IAAI6C,EACJ,GAAI7C,GAAa,EAAG,CAChB,GAAIA,EAAY,OAAYA,EAAY,OAAWA,GAAa,MAM5D,OADA6C,IADAA,EAAKxI,KAAK0F,MAAMC,GAAakB,KACjBE,IAAuBpB,EAAYsB,GACxCjH,KAAKiI,KAAKO,GAGrB,GAAI7C,GAAa,MASb,OADA6C,IADAA,EAAKxI,KAAK0F,MAAMsB,GAA+BrB,EAAY,OAAWkB,MAC1DE,IAAuBpB,EAAYsB,GACxCjH,KAAKiI,KAAKO,GAGrB,GAAI7C,EAAY3F,KAAKsI,UAOjB,OALAE,EAAKtB,EAAwBC,GAAqCxB,GAAamB,GAC/E0B,EAAKxI,KAAK0F,MAAM8C,GAChBA,GAAO7C,GAAakB,EAAkBO,EAEtCoB,IADAA,EAAKxI,KAAK0F,MAAM8C,KACJzB,IAAuBpB,EAAYsB,GACxCjH,KAAKiI,KAAKO,GAErB,GAAI7C,GAAa,QACb,OAAO3F,KAAKiI,KAAKjI,KAAKuI,gBAK9B,OAAOvI,KAAKqI,YAEpB,KD7KMxC,EAAQ,mEAGRC,EAA+B,qBAAfC,WAA6B,GAAK,IAAIA,WAAW,KAC9D7H,EAAI,EAAGA,EAAI2H,EAAMzH,OAAQF,IAC9B4H,EAAOD,EAAMR,WAAWnH,IAAMA,EEL3B,ICMMuK,EAAyB,GAGhCC,EAAK,EACLC,EAAK,EACLC,EAAK,EACLC,EAAK,EACLC,EAAK,EAELC,EAAK,EACLC,EAAK,EACLC,EAAK,EACLC,EAAK,GACLC,EAAM,GAENC,EAAK,GACLC,EAAK,GACLC,EAAK,GACLC,EAAK,GACLC,EAAK,GAELC,EAAK,GACLC,EAAK,GACLC,EAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GAELC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GAELC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GACLC,GAAK,GAELC,GAAQ,CAAC,KAAQ,OAgDVC,GAAkB,IAClBC,GAAoB,OACpBC,GAAgB,OAChBC,GAAc5D,ED3GvB,4pnDC6GE6D,GAAc,CAACnB,GAAIM,IACnBc,GAAmB,CAAChD,EAAIC,EAAIC,EAAIE,GAChC6C,GAAQ,CAACzC,EAAIF,GACb4C,GAAiB,CAACzB,GAAID,IACtB2B,GAAcH,GAAiBzI,OAAO0I,IACtCG,GAAwB,CAAChB,GAAIC,GAAIC,GAAIN,GAAIC,IACzCoB,GAAS,CAACxC,EAAIF,GAEP2C,GAA+B,SACxC5G,EACA6G,QAAA,IAAAA,IAAAA,EAAAA,UAEA,IAAMC,EAAkB,GAClBC,EAAoB,GACpBC,EAAwB,GAgE9B,OA/DAhH,EAAWiH,SAAQ,SAAC1G,EAAWD,GAC3B,IAAI4G,EAAYd,GAAYe,IAAI5G,GAQhC,GAPI2G,EAAY7D,GACZ2D,EAAW7N,MAAK,GAChB+N,GAAa7D,GAEb2D,EAAW7N,MAAK,IAGoC,IAApD,CAAC,SAAU,OAAQ,SAASiO,QAAQP,KAEyB,IAAzD,CAAC,KAAQ,KAAQ,MAAQ,OAAQO,QAAQ7G,GAEzC,OADAwG,EAAQ5N,KAAKmH,GACNwG,EAAM3N,KAAKiL,GAI1B,GAAI8C,IAAczD,GAAMyD,IAAcnD,EAAK,CAEvC,GAAc,IAAVzD,EAEA,OADAyG,EAAQ5N,KAAKmH,GACNwG,EAAM3N,KAAK+L,IAKtB,IAAMmC,EAAOP,EAAMxG,EAAQ,GAC3B,OAAmC,IAA/BmG,GAAYW,QAAQC,IACpBN,EAAQ5N,KAAK4N,EAAQzG,EAAQ,IACtBwG,EAAM3N,KAAKkO,KAEtBN,EAAQ5N,KAAKmH,GACNwG,EAAM3N,KAAK+L,KAKtB,OAFA6B,EAAQ5N,KAAKmH,GAET4G,IAAc/B,GACP2B,EAAM3N,KAAmB,WAAd0N,EAAyBpC,GAAKgB,IAGhDyB,IAAcpB,IAIdoB,IAAcjC,GAHP6B,EAAM3N,KAAK+L,IAUlBgC,IAAcnB,GACTxF,GAAa,QAAWA,GAAa,QAAaA,GAAa,QAAWA,GAAa,OACjFuG,EAAM3N,KAAKsM,IAEXqB,EAAM3N,KAAK+L,SAI1B4B,EAAM3N,KAAK+N,MAGR,CAACH,EAASD,EAAOE,EAC5B,EAEMM,GAA6B,SAC/BC,EACAnN,EACAoN,EACAC,GAEA,IAAMC,EAAUD,EAAWD,GAC3B,GAAIpO,MAAMC,QAAQkO,IAA6B,IAAxBA,EAAEH,QAAQM,GAAkBH,IAAMG,EAErD,IADA,IAAI5O,EAAI0O,EACD1O,GAAK2O,EAAWzO,QAAQ,CAI3B,IAFIgD,EAAOyL,IADX3O,MAGasB,EACT,OAAO,EAGX,GAAI4B,IAAS8H,EACT,MAKZ,GAAI4D,IAAY5D,EAGZ,IAFIhL,EAAI0O,EAED1O,EAAI,GAAG,CAEV,IAAMuO,EAAOI,IADb3O,GAGA,GAAIM,MAAMC,QAAQkO,IAA0B,IAArBA,EAAEH,QAAQC,GAAeE,IAAMF,EAElD,IADA,IAAIlM,EAAIqM,EACDrM,GAAKsM,EAAWzO,QAAQ,CAE3B,IAAIgD,EAEJ,IAFIA,EAAOyL,IADXtM,MAGaf,EACT,OAAO,EAGX,GAAI4B,IAAS8H,EACT,MAKZ,GAAIuD,IAASvD,EACT,MAIZ,OAAO,CACX,EAEM6D,GAA4B,SAACH,EAAsBC,GAErD,IADA,IAAI3O,EAAI0O,EACD1O,GAAK,GAAG,CACX,IAAI8O,EAAOH,EAAW3O,GACtB,GAAI8O,IAAS9D,EAGT,OAAO8D,EAFP9O,IAKR,OAAO,CACX,EAIM+O,GAAoB,SACtB7H,EACAyH,EACAK,EACAxH,EACAyH,GAEA,GAAwB,IAApBD,EAASxH,GACT,OAAO4F,GAGX,IAAIsB,EAAelH,EAAQ,EAC3B,GAAIlH,MAAMC,QAAQ0O,KAAsD,IAAlCA,EAAgBP,GAClD,OAAOtB,GAGX,IAAI8B,EAAcR,EAAe,EAC7BS,EAAaT,EAAe,EAC5BE,EAAUD,EAAWD,GAIrBU,EAASF,GAAe,EAAIP,EAAWO,GAAe,EACtDhM,EAAOyL,EAAWQ,GAEtB,GAAIP,IAAYnE,GAAMvH,IAASwH,EAC3B,OAAO0C,GAGX,IAA2C,IAAvCI,GAAiBc,QAAQM,GACzB,OAAOzB,GAIX,IAAwC,IAApCK,GAAiBc,QAAQpL,GACzB,OAAOkK,GAIX,IAA6B,IAAzBK,GAAMa,QAAQpL,GACd,OAAOkK,GAIX,GAAIyB,GAA0BH,EAAcC,KAAgB7D,EACxD,OAAOuC,GAIX,GAAIC,GAAYe,IAAInH,EAAWwH,MAAmBzD,EAC9C,OAAOmC,GAIX,IAAKwB,IAAYtC,IAAMsC,IAAYrC,KAAOe,GAAYe,IAAInH,EAAWiI,MAAiBlE,EAClF,OAAOmC,GAIX,GAAIwB,IAAY/D,GAAM3H,IAAS2H,EAC3B,OAAOuC,GAIX,GAAIwB,IAAY7D,EACZ,OAAOqC,GAIX,IAAuC,IAAnC,CAACpC,EAAIG,EAAIE,GAAIiD,QAAQM,IAAmB1L,IAAS6H,EACjD,OAAOqC,GAIX,IAA4C,IAAxC,CAAC7B,EAAIC,EAAIC,EAAIK,GAAII,IAAIoC,QAAQpL,GAC7B,OAAOkK,GAIX,GAAIyB,GAA0BH,EAAcC,KAAgB/C,GACxD,OAAOwB,GAIX,GAAIoB,GAA2B3C,GAAID,GAAI8C,EAAcC,GACjD,OAAOvB,GAIX,GAAIoB,GAA2B,CAACjD,EAAIC,GAAKG,GAAI+C,EAAcC,GACvD,OAAOvB,GAIX,GAAIoB,GAA2BtD,EAAIA,EAAIwD,EAAcC,GACjD,OAAOvB,GAIX,GAAIwB,IAAY5D,EACZ,OAAOqC,GAIX,GAAIuB,IAAY/C,IAAM3I,IAAS2I,GAC3B,OAAOuB,GAIX,GAAIlK,IAASoI,GAAMsD,IAAYtD,EAC3B,OAAO+B,GAIX,IAAoC,IAAhC,CAAClC,EAAIE,EAAIM,IAAI2C,QAAQpL,IAAgB0L,IAAYxD,EACjD,OAAOgC,GAIX,GAAIgC,IAAW1C,KAAmC,IAA7BmB,GAAOS,QAAQM,GAChC,OAAOxB,GAIX,GAAIwB,IAAY1C,IAAMhJ,IAASwJ,GAC3B,OAAOU,GAIX,GAAIlK,IAASwI,GACT,OAAO0B,GAIX,IAAoC,IAA/BG,GAAYe,QAAQpL,IAAgB0L,IAAY7C,KAA0C,IAAlCwB,GAAYe,QAAQM,IAAmB1L,IAAS6I,GACzG,OAAOqB,GAIX,GACKwB,IAAY3C,KAAsC,IAAhC,CAACU,GAAIL,GAAIC,IAAI+B,QAAQpL,KACJ,IAAnC,CAACyJ,GAAIL,GAAIC,IAAI+B,QAAQM,IAAmB1L,IAAS8I,GAElD,OAAOoB,GAIX,IACuC,IAAlCG,GAAYe,QAAQM,KAAqD,IAAlClB,GAAeY,QAAQpL,KACzB,IAArCwK,GAAeY,QAAQM,KAAkD,IAA/BrB,GAAYe,QAAQpL,GAE/D,OAAOkK,GAIX,IAEoC,IAA/B,CAACnB,GAAID,IAAIsC,QAAQM,KACb1L,IAAS6I,KAAmC,IAA5B,CAACH,GAAIP,GAAIiD,QAAQpL,IAAgByL,EAAWQ,EAAa,KAAOpD,MAErD,IAA/B,CAACH,GAAIP,GAAIiD,QAAQM,IAAmB1L,IAAS6I,IAE7C6C,IAAY7C,KAAsC,IAAhC,CAACA,GAAIG,GAAIJ,IAAIwC,QAAQpL,GAExC,OAAOkK,GAIX,IAA4C,IAAxC,CAACrB,GAAIG,GAAIJ,GAAIP,EAAIC,GAAI8C,QAAQpL,GAE7B,IADA,IAAImM,EAAYX,EACTW,GAAa,GAAG,CAEnB,IADIP,EAAOH,EAAWU,MACTtD,GACT,OAAOqB,GACJ,IAAgC,IAA5B,CAAClB,GAAIJ,IAAIwC,QAAQQ,GAGxB,MAFAO,IAQZ,IAAgC,IAA5B,CAACpD,GAAID,IAAIsC,QAAQpL,GAEjB,IADImM,GAA2C,IAA/B,CAAC9D,EAAIC,GAAI8C,QAAQM,GAAkBM,EAAcR,EAC1DW,GAAa,GAAG,CACnB,IAAIP,EACJ,IADIA,EAAOH,EAAWU,MACTtD,GACT,OAAOqB,GACJ,IAAgC,IAA5B,CAAClB,GAAIJ,IAAIwC,QAAQQ,GAGxB,MAFAO,IAQZ,GACKzC,KAAOgC,IAA+C,IAApC,CAAChC,GAAIC,GAAIL,GAAIC,IAAI6B,QAAQpL,KACZ,IAA/B,CAAC2J,GAAIL,IAAI8B,QAAQM,KAA+C,IAA5B,CAAC/B,GAAIC,IAAIwB,QAAQpL,KACtB,IAA/B,CAAC4J,GAAIL,IAAI6B,QAAQM,IAAmB1L,IAAS4J,GAE9C,OAAOM,GAIX,IACiD,IAA5CQ,GAAsBU,QAAQM,KAA+C,IAA5B,CAAClD,GAAIM,IAAIsC,QAAQpL,KACzB,IAAzC0K,GAAsBU,QAAQpL,IAAgB0L,IAAY3C,GAE3D,OAAOmB,GAIX,IAAsC,IAAlCG,GAAYe,QAAQM,KAAkD,IAA/BrB,GAAYe,QAAQpL,GAC3D,OAAOkK,GAIX,GAAIwB,IAAY9C,KAAqC,IAA/ByB,GAAYe,QAAQpL,GACtC,OAAOkK,GAIX,IACkD,IAA7CG,GAAYxI,OAAOgH,IAAIuC,QAAQM,IAC5B1L,IAAS0I,KACkC,IAA3CsB,GAAMoB,QAAQpH,EAAWiI,MACc,IAA1C5B,GAAYxI,OAAOgH,IAAIuC,QAAQpL,IAAgB0L,IAAYpD,EAE5D,OAAO4B,GAKX,GAAIwB,IAAY7B,IAAM7J,IAAS6J,GAAI,CAG/B,IAFA,IAAI/M,EAAIgP,EAASN,GACbY,EAAQ,EACLtP,EAAI,GAEH2O,IADJ3O,KACsB+M,IAClBuC,IAKR,GAAIA,EAAQ,IAAM,EACd,OAAOlC,GAKf,OAAIwB,IAAYtC,IAAMpJ,IAASqJ,GACpBa,GAGJC,EACX,EA0BMkC,GAAsB,SAACrI,EAAsBsI,GAC1CA,IACDA,EAAU,CAACzB,UAAW,SAAU0B,UAAW,WAE3C,MAAyC3B,GAA6B5G,EAAYsI,EAAQzB,WAAzFiB,EAAQ,KAAEL,EAAU,KAAEe,EAAc,KAEf,cAAtBF,EAAQC,WAAmD,eAAtBD,EAAQC,YAC7Cd,EAAaA,EAAWgB,KAAI,SAACb,GAAS,OAAiC,IAAhC,CAAC/C,GAAIK,GAAIY,IAAIsB,QAAQQ,GAAenC,GAAKmC,CAAI,KAGxF,IAAMc,EACoB,aAAtBJ,EAAQC,UACFC,EAAeC,KAAI,SAACE,EAAc7P,GAC9B,OAAO6P,GAAgB3I,EAAWlH,IAAM,OAAUkH,EAAWlH,IAAM,cAEvE8P,EAEV,MAAO,CAACd,EAAUL,EAAYiB,EAClC,EAkBA,cAMI,WAAY1I,EAAsB6G,EAAmB1E,EAAeC,GAChExH,KAAKoF,WAAaA,EAClBpF,KAAKiO,SAAWhC,IAAcZ,GAC9BrL,KAAKuH,MAAQA,EACbvH,KAAKwH,IAAMA,EAMnB,OAHI0G,EAAAA,UAAAA,MAAA,WACI,OAAO3I,EAAa,aAAIvF,KAAKoF,WAAWpC,MAAMhD,KAAKuH,MAAOvH,KAAKwH,OAEvE,EAhBA,GAgCa2G,GAAc,SAAChJ,EAAauI,GACrC,IAAMtI,EAAaF,EAAaC,GAC1B,EAA+CsI,GAAoBrI,EAAYsI,GAA9ER,EAAQ,KAAEL,EAAU,KAAEiB,EAAoB,KAC3C1P,EAASgH,EAAWhH,OACtBgQ,EAAU,EACVC,EAAY,EAEhB,MAAO,CACHjN,KAAM,WACF,GAAIiN,GAAajQ,EACb,MAAO,CAACoD,MAAM,EAAMV,MAAO,MAG/B,IADA,IAAImL,EAAYX,GAEZ+C,EAAYjQ,IACX6N,EAAYgB,GAAkB7H,EAAYyH,EAAYK,IAAYmB,EAAWP,MAC1ExC,KAGR,GAAIW,IAAcX,IAAqB+C,IAAcjQ,EAAQ,CACzD,IAAM0C,EAAQ,IAAIoN,GAAM9I,EAAY6G,EAAWmC,EAASC,GAExD,OADAD,EAAUC,EACH,CAACvN,MAAK,EAAEU,MAAM,GAGzB,MAAO,CAACA,MAAM,EAAMV,MAAO,OAGvC,ECrhBawN,GAAoB,EACpBC,GAAU,EACVC,GAAe,EACfC,GAAc,EAErBC,GAAY,GACZC,GAAU,GACVC,GAAkB,GAClBC,GAAuB,EACvBlD,GAAQ,GACRmD,GAAiB,GACjBC,GAAc,GACdC,GAAc,GACdC,GAAc,GACdC,GAAkB,GAClBC,GAAa,GACbC,GAAmB,GACnBC,GAAoB,GACpBC,GAAW,GACXC,GAAe,GACfC,GAAmB,GACnBC,GAAiB,GACjBC,GAAoB,GACpBC,GAAgB,GAChBC,GAAsB,GACtBC,GAAuB,GACvBC,GAAoB,GACpBC,GAAqB,IACrBC,GAAgB,GAChBC,GAAsB,IACtBC,GAAgB,IAChBC,GAAQ,IACRC,GAAU,IACVC,GAAwB,MACxBC,GAAW,GACXC,GAAY,GACZC,GAAQ,GACRC,GAAQ,GACRC,GAAY,GACZC,GAAY,GACZC,GAAO,EACPC,GAAY,EACZC,GAAkB,GAClBC,GAAY,GACZC,GAA4B,GAC5BC,GAAS,IACTC,IAAO,EACPC,GAAO,GACPxE,GAAI,GACJtL,GAAI,IACJO,GAAI,IACJwP,GAAI,IACJC,GAAI,IACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GAEJC,GAAU,SAAChM,GAAsB,OAAAA,GAAawL,IAAQxL,GAAa,EAAM,EACzEiM,GAAuB,SAACjM,GAAsB,OAAAA,GAAa,OAAUA,GAAa,KAAM,EACxFkM,GAAQ,SAAClM,GACX,OAAAgM,GAAQhM,IAAeA,GAAa2L,IAAK3L,GAAa6L,IAAO7L,GAAagH,IAAKhH,GAAa/D,EAA5F,EACEkQ,GAAoB,SAACnM,GAAsB,OAAAA,GAAagH,IAAKhH,GAAa0L,EAAC,EAC3EU,GAAoB,SAACpM,GAAsB,OAAAA,GAAa2L,IAAK3L,GAAa+L,EAAC,EAC3EM,GAAW,SAACrM,GAAsB,OAAAmM,GAAkBnM,IAAcoM,GAAkBpM,EAAU,EAC9FsM,GAAsB,SAACtM,GAAsB,OAAAA,GAAayK,EAAO,EACjE8B,GAAe,SAACvM,GAClB,OAAAA,IAAc+I,IAAa/I,IAAckJ,IAAwBlJ,IAAcgG,EAA/E,EACEwG,GAAuB,SAACxM,GAC1B,OAAAqM,GAASrM,IAAcsM,GAAoBtM,IAAcA,IAAc2J,EAAvE,EACE8C,GAAkB,SAACzM,GACrB,OAAAwM,GAAqBxM,IAAcgM,GAAQhM,IAAcA,IAAc4J,EAAvE,EACE8C,GAA0B,SAAC1M,GAC7B,OACKA,GAAaiL,IAAQjL,GAAakL,IACnClL,IAAcmL,IACbnL,GAAaoL,IAAapL,GAAaqL,IACxCrL,IAAcsL,EAEtB,EACMqB,GAAgB,SAACC,EAAYC,GAC/B,OAAID,IAAO3D,IAIJ4D,IAAO9D,EAClB,EACM+D,GAAoB,SAACF,EAAYC,EAAYE,GAC/C,OAAIH,IAAOhD,GACA4C,GAAqBK,IAAOF,GAAcE,EAAIE,KAC9CP,GAAqBI,MAErBA,IAAO3D,KAAmB0D,GAAcC,EAAIC,GAI3D,EAEMG,GAAgB,SAACJ,EAAYC,EAAYE,GAC3C,OAAIH,IAAOhC,IAAagC,IAAOhD,KACvBoC,GAAQa,IAILA,IAAO7B,IAAagB,GAAQe,GAI5Bf,GADPY,IAAO5B,GACQ6B,EAGJD,EACnB,EAEMK,GAAiB,SAACxN,GACpB,IAAIyN,EAAI,EACJC,EAAO,EACP1N,EAAWyN,KAAOtC,IAAanL,EAAWyN,KAAOtD,KAC7CnK,EAAWyN,KAAOtD,KAClBuD,GAAQ,GAEZD,KAKJ,IAFA,IAAME,EAAW,GAEVpB,GAAQvM,EAAWyN,KACtBE,EAASxU,KAAK6G,EAAWyN,MAG7B,IAAMG,EAAMD,EAAS3U,OAAS6U,SAAS1N,EAAa,aAAIwN,GAAW,IAAM,EAErE3N,EAAWyN,KAAOlC,IAClBkC,IAIJ,IADA,IAAMK,EAAW,GACVvB,GAAQvM,EAAWyN,KACtBK,EAAS3U,KAAK6G,EAAWyN,MAG7B,IAAMM,EAAQD,EAAS9U,OACjBgV,EAAOD,EAAQF,SAAS1N,EAAa,aAAI2N,GAAW,IAAM,EAE5D9N,EAAWyN,KAAOtB,IAAKnM,EAAWyN,KAAOxR,IACzCwR,IAGJ,IAAIQ,EAAU,EAEVjO,EAAWyN,KAAOtC,IAAanL,EAAWyN,KAAOtD,KAC7CnK,EAAWyN,KAAOtD,KAClB8D,GAAW,GAEfR,KAKJ,IAFA,IAAMS,EAAW,GAEV3B,GAAQvM,EAAWyN,KACtBS,EAAS/U,KAAK6G,EAAWyN,MAG7B,IAAMU,EAAMD,EAASlV,OAAS6U,SAAS1N,EAAa,aAAI+N,GAAW,IAAM,EAEzE,OAAOR,GAAQE,EAAMI,EAAO1O,KAAK8O,IAAI,IAAKL,IAAUzO,KAAK8O,IAAI,GAAIH,EAAUE,EAC/E,EAEME,GAAgC,CAClCzG,KAAM,GAEJ0G,GAAiC,CACnC1G,KAAM,GAEJ2G,GAAqB,CAAC3G,KAAM,GAC5B4G,GAA4B,CAAC5G,KAAM,IACnC6G,GAA4B,CAAC7G,KAAM,GACnC8G,GAAsB,CAAC9G,KAAM,IAC7B+G,GAA0B,CAAC/G,KAAM,GACjCgH,GAA6B,CAAChH,KAAM,IACpCiH,GAAkC,CACpCjH,KAAM,IAEJkH,GAAmC,CACrClH,KAAM,IAEJmH,GAA+B,CAACnH,KAAM,IACtCoH,GAAuB,CAACpH,KAAM,IAC9BqH,GAA0B,CAACrH,KAAM,GACjCsH,GAAmB,CAACtH,KAAM,IAC1BuH,GAAmB,CAACvH,KAAM,IAC1BwH,GAAqB,CAACxH,KAAM,IAC5ByH,GAAyB,CAACzH,KAAM,IAChC0H,GAAmC,CACrC1H,KAAM,IAEJ2H,GAAoC,CACtC3H,KAAM,IAEJ4H,GAA0B,CAAC5H,KAAM,IAC1B6H,GAAmB,CAAC7H,KAAM,IAEvC,cAGI,aACIhN,KAAK8U,OAAS,GAyetB,OAteIC,EAAAA,UAAAA,MAAA,SAAMC,GACFhV,KAAK8U,OAAS9U,KAAK8U,OAAO7R,OAAOiC,EAAa8P,KAGlDD,EAAAA,UAAAA,KAAA,WAGI,IAFA,IAAME,EAAS,GACXC,EAAQlV,KAAKmV,eACVD,IAAUL,IACbI,EAAO1W,KAAK2W,GACZA,EAAQlV,KAAKmV,eAEjB,OAAOF,GAGHF,EAAAA,UAAAA,aAAR,WACI,IAAMpP,EAAY3F,KAAKoV,mBAEvB,OAAQzP,GACJ,KAAKmJ,GACD,OAAO9O,KAAKqV,mBAAmBvG,IACnC,KAAKE,GACD,IAAMuD,EAAKvS,KAAKsV,cAAc,GACxB9C,EAAKxS,KAAKsV,cAAc,GACxB5C,EAAK1S,KAAKsV,cAAc,GAC9B,GAAIlD,GAAgBG,IAAOD,GAAcE,EAAIE,GAAK,CAC9C,IAAM6C,EAAQ9C,GAAkBF,EAAIC,EAAIE,GAAMnE,GAAUD,GAGxD,MAAO,CAACtB,KAAM,EAAsBlM,MAFtBd,KAAKwV,cAEwBD,MAAK,GAEpD,MACJ,KAAKtG,GACD,GAAIjP,KAAKsV,cAAc,KAAOvG,GAE1B,OADA/O,KAAKoV,mBACExB,GAEX,MACJ,KAAKzE,GACD,OAAOnP,KAAKqV,mBAAmBlG,IACnC,KAAKC,GACD,OAAOqE,GACX,KAAKpE,GACD,OAAOqE,GACX,KAAKpD,GACD,GAAItQ,KAAKsV,cAAc,KAAOvG,GAE1B,OADA/O,KAAKoV,mBACEjB,GAEX,MACJ,KAAK5D,GACD,GAAIoC,GAAchN,EAAW3F,KAAKsV,cAAc,GAAItV,KAAKsV,cAAc,IAEnE,OADAtV,KAAKyV,mBAAmB9P,GACjB3F,KAAK0V,sBAEhB,MACJ,KAAKlF,GACD,OAAOmD,GACX,KAAKpE,GACD,IAAMoG,EAAKhQ,EACLiQ,EAAK5V,KAAKsV,cAAc,GACxBO,EAAK7V,KAAKsV,cAAc,GAE9B,GAAI3C,GAAcgD,EAAIC,EAAIC,GAEtB,OADA7V,KAAKyV,mBAAmB9P,GACjB3F,KAAK0V,sBAGhB,GAAIjD,GAAkBkD,EAAIC,EAAIC,GAE1B,OADA7V,KAAKyV,mBAAmB9P,GACjB3F,KAAK8V,wBAGhB,GAAIF,IAAOrG,IAAgBsG,IAAOnG,GAG9B,OAFA1P,KAAKoV,mBACLpV,KAAKoV,mBACEb,GAEX,MAEJ,KAAK5D,GACD,GAAIgC,GAAchN,EAAW3F,KAAKsV,cAAc,GAAItV,KAAKsV,cAAc,IAEnE,OADAtV,KAAKyV,mBAAmB9P,GACjB3F,KAAK0V,sBAEhB,MACJ,KAAK/G,GACD,GAAI3O,KAAKsV,cAAc,KAAOhF,GAE1B,IADAtQ,KAAKoV,qBACQ,CACT,IAAIvC,EAAI7S,KAAKoV,mBACb,GAAIvC,IAAMvC,KACNuC,EAAI7S,KAAKoV,sBACCzG,GACN,OAAO3O,KAAKmV,eAGpB,GAAItC,IAAM3B,GACN,OAAOlR,KAAKmV,eAIxB,MACJ,KAAK1E,GACD,OAAO+D,GACX,KAAK9D,GACD,OAAO+D,GACX,KAAKhF,GACD,GACIzP,KAAKsV,cAAc,KAAO9F,IAC1BxP,KAAKsV,cAAc,KAAO/F,IAC1BvP,KAAKsV,cAAc,KAAO/F,GAI1B,OAFAvP,KAAKoV,mBACLpV,KAAKoV,mBACEd,GAEX,MACJ,KAAK3E,GACD,IAAMoG,EAAK/V,KAAKsV,cAAc,GACxBU,EAAKhW,KAAKsV,cAAc,GACxBW,EAAKjW,KAAKsV,cAAc,GAC9B,GAAI7C,GAAkBsD,EAAIC,EAAIC,GAE1B,MAAO,CAACjJ,KAAM,EAA4BlM,MAD5Bd,KAAKwV,eAGvB,MACJ,KAAK5F,GACD,OAAO8E,GACX,KAAK9F,GACD,GAAI0D,GAAc3M,EAAW3F,KAAKsV,cAAc,IAE5C,OADAtV,KAAKyV,mBAAmB9P,GACjB3F,KAAK8V,wBAEhB,MACJ,KAAKjG,GACD,OAAO8E,GACX,KAAK7E,GACD,GAAI9P,KAAKsV,cAAc,KAAOvG,GAE1B,OADA/O,KAAKoV,mBACEvB,GAEX,MACJ,KAAK9D,GACD,OAAOkE,GACX,KAAKhE,GACD,OAAOiE,GACX,KAAK9C,GACL,KAAKK,GACD,IAAMyE,EAAKlW,KAAKsV,cAAc,GACxBa,EAAKnW,KAAKsV,cAAc,GAM9B,OALIY,IAAO3F,KAAcsB,GAAMsE,IAAOA,IAAOnG,KACzChQ,KAAKoV,mBACLpV,KAAKoW,4BAETpW,KAAKyV,mBAAmB9P,GACjB3F,KAAK8V,wBAChB,KAAK5F,GACD,GAAIlQ,KAAKsV,cAAc,KAAOvG,GAE1B,OADA/O,KAAKoV,mBACErB,GAEX,GAAI/T,KAAKsV,cAAc,KAAOpF,GAE1B,OADAlQ,KAAKoV,mBACEtB,GAEX,MACJ,KAAK3D,GACD,GAAInQ,KAAKsV,cAAc,KAAOvG,GAE1B,OADA/O,KAAKoV,mBACEpB,GAEX,MACJ,KAAK9C,GACD,OAAO2D,GAGf,OAAI3C,GAAavM,IACb3F,KAAKqW,oBACEzB,IAGPjD,GAAQhM,IACR3F,KAAKyV,mBAAmB9P,GACjB3F,KAAK0V,uBAGZvD,GAAqBxM,IACrB3F,KAAKyV,mBAAmB9P,GACjB3F,KAAK8V,yBAGT,CAAC9I,KAAM,EAAuBlM,MAAOyE,EAAcI,KAGtDoP,EAAAA,UAAAA,iBAAR,WACI,IAAMjU,EAAQd,KAAK8U,OAAOwB,QAE1B,MAAwB,qBAAVxV,GAAyB,EAAIA,GAGvCiU,EAAAA,UAAAA,mBAAR,SAA2BpP,GACvB3F,KAAK8U,OAAOyB,QAAQ5Q,IAGhBoP,EAAAA,UAAAA,cAAR,SAAsByB,GAClB,OAAIA,GAASxW,KAAK8U,OAAO1W,QACb,EAGL4B,KAAK8U,OAAO0B,IAGfzB,EAAAA,UAAAA,yBAAR,WAGI,IAFA,IAAM0B,EAAS,GACX9Q,EAAY3F,KAAKoV,mBACdvD,GAAMlM,IAAc8Q,EAAOrY,OAAS,GACvCqY,EAAOlY,KAAKoH,GACZA,EAAY3F,KAAKoV,mBAGrB,IADA,IAAIsB,GAAgB,EACb/Q,IAAcqK,IAAiByG,EAAOrY,OAAS,GAClDqY,EAAOlY,KAAKoH,GACZA,EAAY3F,KAAKoV,mBACjBsB,GAAgB,EAGpB,GAAIA,EAMA,MAAO,CAAC1J,KAAM,GAA+BzF,MAL/B0L,SACV1N,EAAa,aAAIkR,EAAO5I,KAAI,SAAC8I,GAAU,OAACA,IAAU3G,GAAgBmB,GAAOwF,CAAK,KAC9E,IAGgDnP,IADxCyL,SAAS1N,EAAa,aAAIkR,EAAO5I,KAAI,SAAC8I,GAAU,OAACA,IAAU3G,GAAgBwB,GAAImF,CAAK,KAAK,KAIzG,IAAMpP,EAAQ0L,SAAS1N,EAAa,aAAIkR,GAAS,IACjD,GAAIzW,KAAKsV,cAAc,KAAO/F,IAAgBsC,GAAM7R,KAAKsV,cAAc,IAAK,CACxEtV,KAAKoV,mBACLzP,EAAY3F,KAAKoV,mBAEjB,IADA,IAAMwB,EAAY,GACX/E,GAAMlM,IAAciR,EAAUxY,OAAS,GAC1CwY,EAAUrY,KAAKoH,GACfA,EAAY3F,KAAKoV,mBAIrB,MAAO,CAACpI,KAAM,GAA+BzF,MAAK,EAAEC,IAFxCyL,SAAS1N,EAAa,aAAIqR,GAAY,KAIlD,MAAO,CAAC5J,KAAM,GAA+BzF,MAAK,EAAEC,IAAKD,IAIzDwN,EAAAA,UAAAA,sBAAR,WACI,IAAMjU,EAAQd,KAAKwV,cACnB,MAA4B,QAAxB1U,EAAM+V,eAA2B7W,KAAKsV,cAAc,KAAOlG,IAC3DpP,KAAKoV,mBACEpV,KAAK8W,mBACL9W,KAAKsV,cAAc,KAAOlG,IACjCpP,KAAKoV,mBACE,CAACpI,KAAM,GAA0BlM,MAAK,IAG1C,CAACkM,KAAM,GAAuBlM,MAAK,IAGtCiU,EAAAA,UAAAA,gBAAR,WACI,IAAMjU,EAAQ,GAGd,GAFAd,KAAKqW,oBAEDrW,KAAKsV,cAAc,KAAOpE,GAC1B,MAAO,CAAClE,KAAM,GAAqBlM,MAAO,IAG9C,IAAMM,EAAOpB,KAAKsV,cAAc,GAChC,GAAIlU,IAAS+N,IAAc/N,IAAS0N,GAAgB,CAChD,IAAMiI,EAAc/W,KAAKqV,mBAAmBrV,KAAKoV,oBACjD,OAAyB,IAArB2B,EAAY/J,OACZhN,KAAKqW,oBAEDrW,KAAKsV,cAAc,KAAOpE,IAAOlR,KAAKsV,cAAc,KAAOjG,KAC3DrP,KAAKoV,mBACE,CAACpI,KAAM,GAAqBlM,MAAOiW,EAAYjW,SAI9Dd,KAAKgX,wBACE5C,IAGX,OAAa,CACT,IAAMzO,EAAY3F,KAAKoV,mBACvB,GAAIzP,IAAcuL,IAAOvL,IAAc0J,GACnC,MAAO,CAACrC,KAAM,GAAqBlM,MAAOyE,EAAa,aAAIzE,IACxD,GAAIoR,GAAavM,GAEpB,OADA3F,KAAKqW,oBACDrW,KAAKsV,cAAc,KAAOpE,IAAOlR,KAAKsV,cAAc,KAAOjG,IAC3DrP,KAAKoV,mBACE,CAACpI,KAAM,GAAqBlM,MAAOyE,EAAa,aAAIzE,MAE/Dd,KAAKgX,wBACE5C,IACJ,GACHzO,IAAcmJ,IACdnJ,IAAcwJ,IACdxJ,IAAcyJ,IACdiD,GAAwB1M,GAGxB,OADA3F,KAAKgX,wBACE5C,GACJ,GAAIzO,IAAciJ,GAAiB,CACtC,IAAI0D,GAAc3M,EAAW3F,KAAKsV,cAAc,IAI5C,OADAtV,KAAKgX,wBACE5C,GAHPtT,EAAMvC,KAAKyB,KAAKiX,gCAMpBnW,EAAMvC,KAAKoH,KAKfoP,EAAAA,UAAAA,kBAAR,WACI,KAAO7C,GAAalS,KAAKsV,cAAc,KACnCtV,KAAKoV,oBAILL,EAAAA,UAAAA,sBAAR,WACI,OAAa,CACT,IAAMpP,EAAY3F,KAAKoV,mBACvB,GAAIzP,IAAc0J,IAAqB1J,IAAcuL,GACjD,OAGAoB,GAAc3M,EAAW3F,KAAKsV,cAAc,KAC5CtV,KAAKiX,4BAKTlC,EAAAA,UAAAA,mBAAR,SAA2BvH,GAGvB,IAFA,IAAM0J,EAAmB,IACrBpW,EAAQ,GACL0M,EAAQ,GAAG,CACd,IAAM2J,EAASzS,KAAK0S,IAAIF,EAAkB1J,GAC1C1M,GAASyE,EAAa,aAAIvF,KAAK8U,OAAOuC,OAAO,EAAGF,IAChD3J,GAAS2J,EAIb,OAFAnX,KAAK8U,OAAOwB,QAELxV,GAGHiU,EAAAA,UAAAA,mBAAR,SAA2BuC,GAIvB,IAHA,IAAIxW,EAAQ,GACR5C,EAAI,IAEL,CACC,IAAMyH,EAAY3F,KAAK8U,OAAO5W,GAC9B,GAAIyH,IAAcuL,SAAqBlD,IAAdrI,GAA2BA,IAAc2R,EAE9D,MAAO,CAACtK,KAAM,EAAwBlM,MADtCA,GAASd,KAAKuX,mBAAmBrZ,IAIrC,GAAIyH,IAAc+I,GAEd,OADA1O,KAAK8U,OAAOuC,OAAO,EAAGnZ,GACfmW,GAGX,GAAI1O,IAAciJ,GAAiB,CAC/B,IAAMxN,EAAOpB,KAAK8U,OAAO5W,EAAI,GACzBkD,IAAS8P,SAAgBlD,IAAT5M,IACZA,IAASsN,IACT5N,GAASd,KAAKuX,mBAAmBrZ,GACjCA,GAAK,EACL8B,KAAK8U,OAAOwB,SACLhE,GAAc3M,EAAWvE,KAChCN,GAASd,KAAKuX,mBAAmBrZ,GACjC4C,GAASyE,EAAcvF,KAAKiX,2BAC5B/Y,GAAK,IAKjBA,MAIA6W,EAAAA,UAAAA,cAAR,WACI,IAAMyC,EAAO,GACTxK,EAAOwB,GACP+D,EAAKvS,KAAKsV,cAAc,GAK5B,IAJI/C,IAAOhC,IAAagC,IAAOhD,IAC3BiI,EAAKjZ,KAAKyB,KAAKoV,oBAGZzD,GAAQ3R,KAAKsV,cAAc,KAC9BkC,EAAKjZ,KAAKyB,KAAKoV,oBAEnB7C,EAAKvS,KAAKsV,cAAc,GACxB,IAAI9C,EAAKxS,KAAKsV,cAAc,GAC5B,GAAI/C,IAAO5B,IAAagB,GAAQa,GAG5B,IAFAgF,EAAKjZ,KAAKyB,KAAKoV,mBAAoBpV,KAAKoV,oBACxCpI,EAAOyB,GACAkD,GAAQ3R,KAAKsV,cAAc,KAC9BkC,EAAKjZ,KAAKyB,KAAKoV,oBAIvB7C,EAAKvS,KAAKsV,cAAc,GACxB9C,EAAKxS,KAAKsV,cAAc,GACxB,IAAM5C,EAAK1S,KAAKsV,cAAc,GAC9B,IAAK/C,IAAOhB,IAAKgB,IAAOlR,OAASmR,IAAOjC,IAAaiC,IAAOjD,KAAiBoC,GAAQe,IAAQf,GAAQa,IAGjG,IAFAgF,EAAKjZ,KAAKyB,KAAKoV,mBAAoBpV,KAAKoV,oBACxCpI,EAAOyB,GACAkD,GAAQ3R,KAAKsV,cAAc,KAC9BkC,EAAKjZ,KAAKyB,KAAKoV,oBAIvB,MAAO,CAACxC,GAAe4E,GAAOxK,IAG1B+H,EAAAA,UAAAA,oBAAR,WACU,MAAkB/U,KAAKyX,gBAAtBC,EAAM,KAAEnC,EAAK,KACdhD,EAAKvS,KAAKsV,cAAc,GACxB9C,EAAKxS,KAAKsV,cAAc,GACxB5C,EAAK1S,KAAKsV,cAAc,GAE9B,OAAI7C,GAAkBF,EAAIC,EAAIE,GAEnB,CAAC1F,KAAM,GAA2B0K,OAAM,EAAEnC,MAAK,EAAEoC,KAD3C3X,KAAKwV,eAIlBjD,IAAOrD,IACPlP,KAAKoV,mBACE,CAACpI,KAAM,GAA4B0K,OAAM,EAAEnC,MAAK,IAGpD,CAACvI,KAAM,GAAwB0K,OAAM,EAAEnC,MAAK,IAG/CR,EAAAA,UAAAA,wBAAR,WACI,IAAMpP,EAAY3F,KAAKoV,mBAEvB,GAAIvD,GAAMlM,GAAY,CAElB,IADA,IAAIiS,EAAMrS,EAAcI,GACjBkM,GAAM7R,KAAKsV,cAAc,KAAOsC,EAAIxZ,OAAS,GAChDwZ,GAAOrS,EAAcvF,KAAKoV,oBAG1BlD,GAAalS,KAAKsV,cAAc,KAChCtV,KAAKoV,mBAGT,IAAMyC,EAAe5E,SAAS2E,EAAK,IAEnC,OAAqB,IAAjBC,GAAsBjG,GAAqBiG,IAAiBA,EAAe,QACpExH,GAGJwH,EAGX,OAAIlS,IAAcuL,GACPb,GAGJ1K,GAGHoP,EAAAA,UAAAA,YAAR,WAEI,IADA,IAAIxT,EAAS,KACA,CACT,IAAMoE,EAAY3F,KAAKoV,mBACvB,GAAIhD,GAAgBzM,GAChBpE,GAAUgE,EAAcI,OACrB,KAAI2M,GAAc3M,EAAW3F,KAAKsV,cAAc,IAInD,OADAtV,KAAKyV,mBAAmB9P,GACjBpE,EAHPA,GAAUgE,EAAcvF,KAAKiX,8BAO7C,EA7eA,GC1RA,cAGI,WAAYhC,GACRjV,KAAK8X,QAAU7C,EA6GvB,OA1GW8C,EAAAA,OAAP,SAAcjX,GACV,IAAMkX,EAAY,IAAIjD,GAEtB,OADAiD,EAAUC,MAAMnX,GACT,IAAIiX,EAAOC,EAAUE,SAGzBH,EAAAA,WAAP,SAAkBjX,GACd,OAAOiX,EAAO7X,OAAOY,GAAOqX,uBAGzBJ,EAAAA,YAAP,SAAmBjX,GACf,OAAOiX,EAAO7X,OAAOY,GAAOsX,wBAGhCL,EAAAA,UAAAA,oBAAA,WAEI,IADA,IAAI7C,EAAQlV,KAAKmV,eACK,KAAfD,EAAMlI,MACTkI,EAAQlV,KAAKmV,eAGjB,GAAmB,KAAfD,EAAMlI,KACN,MAAM,IAAIqL,YAAY,qDAG1BrY,KAAKsY,eAAepD,GACpB,IAAMpU,EAAQd,KAAKuY,wBAEnB,GACIrD,EAAQlV,KAAKmV,qBACO,KAAfD,EAAMlI,MAEf,GAAmB,KAAfkI,EAAMlI,KACN,OAAOlM,EAGX,MAAM,IAAIuX,YAAY,qFAG1BN,EAAAA,UAAAA,qBAAA,WAEI,IADA,IAAMS,EAAS,KACF,CACT,IAAM1X,EAAQd,KAAKuY,wBACnB,GAAmB,KAAfzX,EAAMkM,KACN,OAAOwL,EAEXA,EAAOja,KAAKuC,GACZ0X,EAAOja,SAIPwZ,EAAAA,UAAAA,sBAAR,WACI,IAAM7C,EAAQlV,KAAKmV,eAEnB,OAAQD,EAAMlI,MACV,KAAK,GACL,KAAK,GACL,KAAK,EACD,OAAOhN,KAAKyY,mBAAmBvD,EAAMlI,MACzC,KAAK,GACD,OAAOhN,KAAK0Y,gBAAgBxD,GAGpC,OAAOA,GAGH6C,EAAAA,UAAAA,mBAAR,SAA2B/K,GAIvB,IAHA,IAAM2L,EAAkB,CAAC3L,KAAI,EAAEwL,OAAQ,IAEnCtD,EAAQlV,KAAKmV,iBACJ,CACT,GAAmB,KAAfD,EAAMlI,MAAgC4L,GAAiB1D,EAAOlI,GAC9D,OAAO2L,EAGX3Y,KAAKsY,eAAepD,GACpByD,EAAMH,OAAOja,KAAKyB,KAAKuY,yBACvBrD,EAAQlV,KAAKmV,iBAIb4C,EAAAA,UAAAA,gBAAR,SAAwBc,GAOpB,IANA,IAAMC,EAA2B,CAC7BC,KAAMF,EAAc/X,MACpB0X,OAAQ,GACRxL,KAAM,MAGG,CACT,IAAMkI,EAAQlV,KAAKmV,eACnB,GAAmB,KAAfD,EAAMlI,MAA+C,IAAfkI,EAAMlI,KAC5C,OAAO8L,EAGX9Y,KAAKsY,eAAepD,GACpB4D,EAAYN,OAAOja,KAAKyB,KAAKuY,2BAI7BR,EAAAA,UAAAA,aAAR,WACI,IAAM7C,EAAQlV,KAAK8X,QAAQxB,QAC3B,MAAwB,qBAAVpB,EAAwBL,GAAYK,GAG9C6C,EAAAA,UAAAA,eAAR,SAAuB7C,GACnBlV,KAAK8X,QAAQvB,QAAQrB,IAE7B,EAjHA,GAmHa8D,GAAmB,SAAC9D,GAA6C,OAAe,KAAfA,EAAMlI,IAAI,EAC3EiM,GAAgB,SAAC/D,GAA+C,OAAe,KAAfA,EAAMlI,IAAI,EAC1EkM,GAAe,SAAChE,GAA+C,OAAe,KAAfA,EAAMlI,IAAI,EACzEmM,GAAgB,SAACjE,GAA+C,OAAe,IAAfA,EAAMlI,IAAI,EAC1EoM,GAAmB,SAAClE,EAAiBpU,GAC9C,OAAAoY,GAAahE,IAAUA,EAAMpU,QAAUA,CAAvC,EAESuY,GAAgB,SAACnE,GAA6B,OAAe,KAAfA,EAAMlI,IAAI,EACxDsM,GAA0B,SAACpE,GACpC,OAAe,KAAfA,EAAMlI,MAAsD,IAAfkI,EAAMlI,IAAnD,EAESuM,GAAoB,SAACtE,GAC9B,IAAMuE,EAAqB,GACvBnb,EAAkB,GAmBtB,OAlBA4W,EAAO5I,SAAQ,SAAC6I,GACZ,GAAmB,IAAfA,EAAMlI,KAAgC,CACtC,GAAmB,IAAf3O,EAAID,OACJ,MAAM,IAAIqG,MAAM,oDAIpB,OAFA+U,EAAKjb,KAAKF,QACVA,EAAM,IAIS,KAAf6W,EAAMlI,MACN3O,EAAIE,KAAK2W,MAGb7W,EAAID,QACJob,EAAKjb,KAAKF,GAGPmb,CACX,EAEMZ,GAAmB,SAAC1D,EAAiBlI,GACvC,OAAa,KAATA,GAA8D,KAAfkI,EAAMlI,MAG5C,KAATA,GAA+D,KAAfkI,EAAMlI,MAI1C,IAATA,GAA4D,IAAfkI,EAAMlI,IAC9D,ECtLayM,GAAW,SAACvE,GACrB,OAAe,KAAfA,EAAMlI,MAAkD,KAAfkI,EAAMlI,IAA/C,ECAS0M,GAAqB,SAACxE,GAC/B,OAAe,KAAfA,EAAMlI,MAAuCyM,GAASvE,EAAtD,EACSyE,GAA6B,SAAC1E,GACvC,OAAAA,EAAO7W,OAAS,EAAI,CAAC6W,EAAO,GAAIA,EAAO,IAAM,CAACA,EAAO,GAArD,EACS2E,GAAgC,CACzC5M,KAAM,GACN0K,OAAQ,EACRnC,MAAO/G,IAGEqL,GAAkC,CAC3C7M,KAAM,GACN0K,OAAQ,GACRnC,MAAO/G,IAGEsL,GAAoC,CAC7C9M,KAAM,GACN0K,OAAQ,IACRnC,MAAO/G,IAGEuL,GAA2B,SACpCC,EACA5W,EACAC,GAEO,IAAAE,EAAQyW,EAAK,GAAVnY,EAAKmY,EAAK,GACpB,MAAO,CAACC,GAAiB1W,EAAGH,GAAQ6W,GAA8B,qBAANpY,EAAoBA,EAAI0B,EAAGF,GAC3F,EACa4W,GAAmB,SAAC/E,EAAyBgF,GACtD,GAAmB,KAAfhF,EAAMlI,KACN,OAAQkI,EAAMwC,OAAS,IAAOwC,EAGlC,GAAIlB,GAAiB9D,GACjB,OAAQA,EAAMyC,MACV,IAAK,MACL,IAAK,KACD,OAAO,GAAKzC,EAAMwC,OAEtB,QACI,OAAOxC,EAAMwC,OAIzB,OAAOxC,EAAMwC,MACjB,EC9CMyC,GAAM,MACNC,GAAO,OACPC,GAAM,MACNC,GAAO,OAEAC,GAAiC,CAC1CxB,KAAM,QACNyB,MAAO,SAACC,EAAmB3Z,GACvB,GAAmB,KAAfA,EAAMkM,KACN,OAAQlM,EAAM6W,MACV,KAAKwC,GACD,OAAQzV,KAAKgW,GAAK5Z,EAAM4W,OAAU,IACtC,KAAK0C,GACD,OAAQ1V,KAAKgW,GAAK,IAAO5Z,EAAM4W,OACnC,KAAK2C,GACD,OAAOvZ,EAAM4W,OACjB,KAAK4C,GACD,OAAiB,EAAV5V,KAAKgW,GAAS5Z,EAAM4W,OAIvC,MAAM,IAAIjT,MAAM,4BAIXkW,GAAU,SAAC7Z,GACpB,OAAmB,KAAfA,EAAMkM,OACFlM,EAAM6W,OAASwC,IAAOrZ,EAAM6W,OAASyC,IAAQtZ,EAAM6W,OAAS0C,IAAOvZ,EAAM6W,OAAS2C,GAK9F,EAEaM,GAAiB,SAAC3F,GAM3B,OALqBA,EAChB4F,OAAO3B,IACPrL,KAAI,SAACiN,GAAU,OAAAA,EAAMha,KAAK,IAC1B5B,KAAK,MAGN,IAAK,kBACL,IAAK,kBACL,IAAK,WACL,IAAK,WACD,MAAO,CAAC0a,GAAaA,IACzB,IAAK,SACL,IAAK,SACD,OAAOmB,GAAI,GACf,IAAK,iBACL,IAAK,iBACL,IAAK,YACL,IAAK,YACD,MAAO,CAACnB,GAAaE,IACzB,IAAK,WACL,IAAK,OACD,OAAOiB,GAAI,IACf,IAAK,cACL,IAAK,cACL,IAAK,eACL,IAAK,eACD,MAAO,CAACjB,GAAiBA,IAC7B,IAAK,YACL,IAAK,MACD,OAAOiB,GAAI,KACf,IAAK,eACL,IAAK,eACL,IAAK,cACL,IAAK,cACD,MAAO,CAACjB,GAAiBF,IAC7B,IAAK,UACL,IAAK,QACD,OAAOmB,GAAI,KAGnB,OAAO,CACX,EAEaA,GAAM,SAACA,GAAwB,OAACrW,KAAKgW,GAAKK,EAAO,GAAG,EC7EpDC,GAAgC,CACzCjC,KAAM,QACNyB,MAAO,SAAC9W,EAAkB5C,GACtB,GAAmB,KAAfA,EAAMkM,KAA6B,CACnC,IAAMiO,EAAgBC,GAA0Bpa,EAAMiY,MACtD,GAA6B,qBAAlBkC,EACP,MAAM,IAAIxW,MAAM,sDAAsD3D,EAAMiY,KAAI,KAEpF,OAAOkC,EAAcvX,EAAS5C,EAAM0X,QAGxC,GAAmB,IAAf1X,EAAMkM,KAA+B,CACrC,GAA2B,IAAvBlM,EAAMA,MAAM1C,OAAc,CAC1B,IAAM+c,EAAIra,EAAMA,MAAMsa,UAAU,EAAG,GAC7BtZ,EAAIhB,EAAMA,MAAMsa,UAAU,EAAG,GAC7B5b,EAAIsB,EAAMA,MAAMsa,UAAU,EAAG,GACnC,OAAOvY,GAAKoQ,SAASkI,EAAIA,EAAG,IAAKlI,SAASnR,EAAIA,EAAG,IAAKmR,SAASzT,EAAIA,EAAG,IAAK,GAG/E,GAA2B,IAAvBsB,EAAMA,MAAM1C,OAAc,CACpB+c,EAAIra,EAAMA,MAAMsa,UAAU,EAAG,GAC7BtZ,EAAIhB,EAAMA,MAAMsa,UAAU,EAAG,GAC7B5b,EAAIsB,EAAMA,MAAMsa,UAAU,EAAG,GAFnC,IAGMzO,EAAI7L,EAAMA,MAAMsa,UAAU,EAAG,GACnC,OAAOvY,GAAKoQ,SAASkI,EAAIA,EAAG,IAAKlI,SAASnR,EAAIA,EAAG,IAAKmR,SAASzT,EAAIA,EAAG,IAAKyT,SAAStG,EAAIA,EAAG,IAAM,KAGrG,GAA2B,IAAvB7L,EAAMA,MAAM1C,OAIZ,OAHM+c,EAAIra,EAAMA,MAAMsa,UAAU,EAAG,GAC7BtZ,EAAIhB,EAAMA,MAAMsa,UAAU,EAAG,GAC7B5b,EAAIsB,EAAMA,MAAMsa,UAAU,EAAG,GAC5BvY,GAAKoQ,SAASkI,EAAG,IAAKlI,SAASnR,EAAG,IAAKmR,SAASzT,EAAG,IAAK,GAGnE,GAA2B,IAAvBsB,EAAMA,MAAM1C,OAKZ,OAJM+c,EAAIra,EAAMA,MAAMsa,UAAU,EAAG,GAC7BtZ,EAAIhB,EAAMA,MAAMsa,UAAU,EAAG,GAC7B5b,EAAIsB,EAAMA,MAAMsa,UAAU,EAAG,GAC7BzO,EAAI7L,EAAMA,MAAMsa,UAAU,EAAG,GAC5BvY,GAAKoQ,SAASkI,EAAG,IAAKlI,SAASnR,EAAG,IAAKmR,SAASzT,EAAG,IAAKyT,SAAStG,EAAG,IAAM,KAIzF,GAAmB,KAAf7L,EAAMkM,KAAgC,CACtC,IAAMqO,EAAaC,GAAOxa,EAAMA,MAAMya,eACtC,GAA0B,qBAAfF,EACP,OAAOA,EAIf,OAAOC,GAAOE,cAITC,GAAgB,SAACT,GAA0B,OAAmB,KAAlB,IAAOA,EAAY,EAE/DU,GAAW,SAACV,GACrB,IAAMW,EAAQ,IAAOX,EACfY,EAAO,IAAQZ,GAAS,EACxBa,EAAQ,IAAQb,GAAS,GACzBc,EAAM,IAAQd,GAAS,GAC7B,OAAOW,EAAQ,IAAM,QAAQG,EAAG,IAAID,EAAK,IAAID,EAAI,IAAID,EAAQ,IAAG,IAAM,OAAOG,EAAG,IAAID,EAAK,IAAID,EAAI,GACrG,EAEa/Y,GAAO,SAACsY,EAAWrZ,EAAWtC,EAAWmN,GAClD,OAAEwO,GAAK,GAAOrZ,GAAK,GAAOtC,GAAK,EAAMkF,KAAKqX,MAAU,IAAJpP,IAAY,KAAQ,CAApE,EAEEqP,GAAqB,SAAC9G,EAAiBhX,GACzC,GAAmB,KAAfgX,EAAMlI,KACN,OAAOkI,EAAMwC,OAGjB,GAAmB,KAAfxC,EAAMlI,KAAqC,CAC3C,IAAMrI,EAAY,IAANzG,EAAU,EAAI,IAC1B,OAAa,IAANA,EAAWgX,EAAMwC,OAAS,IAAO/S,EAAMD,KAAKqX,MAAO7G,EAAMwC,OAAS,IAAO/S,GAGpF,OAAO,CACX,EAEMsX,GAAM,SAACxB,EAAmBjB,GAC5B,IAAMvE,EAASuE,EAAKqB,OAAOvB,IAE3B,GAAsB,IAAlBrE,EAAO7W,OAAc,CACf,MAAY6W,EAAOpH,IAAImO,IAAtBb,EAAC,KAAErZ,EAAC,KAAEtC,EAAC,KACd,OAAOqD,GAAKsY,EAAGrZ,EAAGtC,EAAG,GAGzB,GAAsB,IAAlByV,EAAO7W,OAAc,CACf,MAAe6W,EAAOpH,IAAImO,IAAhBrP,GAATwO,EAAC,KAAErZ,EAAC,KAAEtC,EAAC,KAAG,MACjB,OAAOqD,GAAKsY,EAAGrZ,EAAGtC,EAAGmN,GAGzB,OAAO,CACX,EAEA,SAASuP,GAAQC,EAAYC,EAAYC,GAQrC,OAPIA,EAAM,IACNA,GAAO,GAEPA,GAAO,IACPA,GAAO,GAGPA,EAAM,EAAI,GACFD,EAAKD,GAAME,EAAM,EAAIF,EACtBE,EAAM,GACND,EACAC,EAAM,EAAI,EACE,GAAXD,EAAKD,IAAW,EAAI,EAAIE,GAAOF,EAEhCA,CAEf,CAEA,IAAMG,GAAM,SAAC5Y,EAAkB8V,GAC3B,IAAMvE,EAASuE,EAAKqB,OAAOvB,IACpB+C,EAAqCpH,EAAM,GAAtCsH,EAAgCtH,EAAM,GAA1BuH,EAAoBvH,EAAM,GAAf0G,EAAS1G,EAAM,GAE5CxR,GAAkB,KAAb4Y,EAAIrP,KAAkC+N,GAAIsB,EAAI3E,QAAU6C,GAAMC,MAAM9W,EAAS2Y,KAAmB,EAAV3X,KAAKgW,IAChGpa,EAAIoZ,GAAmB6C,GAAcA,EAAW7E,OAAS,IAAM,EAC/D3U,EAAI2W,GAAmB8C,GAAaA,EAAU9E,OAAS,IAAM,EAC7D/K,EAAqB,qBAAVgP,GAAyBjC,GAAmBiC,GAAS1B,GAAiB0B,EAAO,GAAK,EAEnG,GAAU,IAANrb,EACA,OAAOuC,GAAS,IAAJE,EAAa,IAAJA,EAAa,IAAJA,EAAS,GAG3C,IAAMqZ,EAAKrZ,GAAK,GAAMA,GAAKzC,EAAI,GAAKyC,EAAIzC,EAAIyC,EAAIzC,EAE1C6b,EAAS,EAAJpZ,EAAQqZ,EACbjB,EAAIe,GAAQC,EAAIC,EAAI3Y,EAAI,EAAI,GAC5B3B,EAAIoa,GAAQC,EAAIC,EAAI3Y,GACpBjE,EAAI0c,GAAQC,EAAIC,EAAI3Y,EAAI,EAAI,GAClC,OAAOZ,GAAS,IAAJsY,EAAa,IAAJrZ,EAAa,IAAJtC,EAASmN,EAC3C,EAEMuO,GAEF,CACAoB,IAAKA,GACLG,KAAMH,GACNL,IAAKA,GACLS,KAAMT,IAGGU,GAAa,SAACjZ,EAAkB5C,GACzC,UAAM0Z,MAAM9W,EAASqU,GAAO7X,OAAOY,GAAOqX,sBAA1C,EAESmD,GAAiC,CAC1CsB,UAAW,WACXC,aAAc,WACdC,KAAM,SACNC,WAAY,WACZC,MAAO,WACPC,MAAO,WACPC,OAAQ,WACRC,MAAO,IACPC,eAAgB,WAChBC,KAAM,MACNC,WAAY,WACZC,MAAO,WACPC,UAAW,WACXC,UAAW,WACXC,WAAY,WACZC,UAAW,WACXC,MAAO,WACPC,eAAgB,WAChBC,SAAU,WACVC,QAAS,WACTC,KAAM,SACNC,SAAU,MACVC,SAAU,QACVC,cAAe,WACfC,SAAU,WACVC,UAAW,QACXC,SAAU,WACVC,UAAW,WACXC,YAAa,WACbC,eAAgB,WAChBC,WAAY,WACZC,WAAY,WACZC,QAAS,WACTC,WAAY,WACZC,aAAc,WACdC,cAAe,WACfC,cAAe,UACfC,cAAe,UACfC,cAAe,SACfC,WAAY,WACZC,SAAU,WACVC,YAAa,SACbC,QAAS,WACTC,QAAS,WACTC,WAAY,UACZC,UAAW,WACXC,YAAa,WACbC,YAAa,UACbC,QAAS,WACTC,UAAW,WACXC,WAAY,WACZC,KAAM,WACNC,UAAW,WACXC,KAAM,WACNC,MAAO,QACPC,YAAa,WACbC,KAAM,WACNC,SAAU,WACVC,QAAS,WACTC,UAAW,WACXC,OAAQ,WACRC,MAAO,WACPC,MAAO,WACPC,SAAU,WACVC,cAAe,WACfC,UAAW,WACXC,aAAc,WACdC,UAAW,WACXC,WAAY,WACZC,UAAW,WACXC,qBAAsB,WACtBC,UAAW,WACXC,WAAY,WACZC,UAAW,WACXC,UAAW,WACXC,YAAa,WACbC,cAAe,UACfC,aAAc,WACdC,eAAgB,WAChBC,eAAgB,WAChBC,eAAgB,WAChBC,YAAa,WACbC,KAAM,SACNC,UAAW,UACXC,MAAO,WACPC,QAAS,WACTC,OAAQ,WACRC,iBAAkB,WAClBC,WAAY,MACZC,aAAc,WACdC,aAAc,WACdC,eAAgB,WAChBC,gBAAiB,WACjBC,kBAAmB,SACnBC,gBAAiB,WACjBC,gBAAiB,WACjBC,aAAc,UACdC,UAAW,WACXC,UAAW,WACXC,SAAU,WACVC,YAAa,WACbC,KAAM,MACNC,QAAS,WACTC,MAAO,WACPC,UAAW,WACXC,OAAQ,WACRC,UAAW,WACXC,OAAQ,WACRC,cAAe,WACfC,UAAW,WACXC,cAAe,WACfC,cAAe,WACfC,WAAY,WACZC,UAAW,WACXC,KAAM,WACNC,KAAM,WACNC,KAAM,WACNC,WAAY,WACZC,OAAQ,WACRC,cAAe,WACfC,IAAK,WACLC,UAAW,WACXC,UAAW,WACXC,YAAa,WACbC,OAAQ,WACRC,WAAY,WACZC,SAAU,UACVC,SAAU,WACVC,OAAQ,WACRC,OAAQ,WACRC,QAAS,WACTC,UAAW,WACXC,UAAW,WACXC,UAAW,WACXC,KAAM,WACNC,YAAa,SACbC,UAAW,WACXC,IAAK,WACLC,KAAM,QACNC,QAAS,WACTC,OAAQ,WACRhK,YAAa,EACbiK,UAAW,WACXC,OAAQ,WACRC,MAAO,WACPC,MAAO,WACPC,WAAY,WACZC,OAAQ,WACRC,YAAa,YCvSJC,GAA0D,CACnEjN,KAAM,kBACN3Q,aAAc,aACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,OAAOA,EAAOpH,KAAI,SAACqH,GACf,GAAIgE,GAAahE,GACb,OAAQA,EAAMpU,OACV,IAAK,cACD,OAAO,EACX,IAAK,cACD,OAAO,EAGnB,OAAO,OCxBNolB,GAAgD,CACzDnN,KAAM,mBACN3Q,aAAc,cACd6d,QAAQ,EACRjZ,KAAM,EACNmZ,OAAQ,SCMCC,GAAiB,SAAC1iB,EAAkB8V,GAC7C,IAAMwB,EAAQqL,GAAU7L,MAAM9W,EAAS8V,EAAK,IACtC8M,EAAO9M,EAAK,GAClB,OAAO8M,GAAQ5M,GAAmB4M,GAAQ,CAACtL,MAAK,EAAEsL,KAAI,GAAI,CAACtL,MAAK,EAAEsL,KAAM,KAC5E,EAEaC,GAAoB,SAACC,EAAuCC,GACrE,IAAMC,EAAQF,EAAM,GACdG,EAAOH,EAAMA,EAAMpoB,OAAS,GACf,OAAfsoB,EAAMJ,OACNI,EAAMJ,KAAO1M,IAGC,OAAd+M,EAAKL,OACLK,EAAKL,KAAOxM,IAKhB,IAFA,IAAM8M,EAAkC,GACpCC,EAAW,EACN3oB,EAAI,EAAGA,EAAIsoB,EAAMpoB,OAAQF,IAAK,CACnC,IAAM4oB,EAAON,EAAMtoB,GAAGooB,KACtB,GAAa,OAATQ,EAAe,CACf,IAAMC,EAAgB9M,GAAiB6M,EAAML,GACzCM,EAAgBF,EAChBD,EAAaroB,KAAKwoB,GAElBH,EAAaroB,KAAKsoB,GAEtBA,EAAWE,OAEXH,EAAaroB,KAAK,MAI1B,IAAIyoB,EAAW,KACf,IAAS9oB,EAAI,EAAGA,EAAI0oB,EAAaxoB,OAAQF,IAAK,CAC1C,IAAM+oB,EAAOL,EAAa1oB,GAC1B,GAAa,OAAT+oB,EACiB,OAAbD,IACAA,EAAW9oB,QAEZ,GAAiB,OAAb8oB,EAAmB,CAI1B,IAHA,IAAME,EAAYhpB,EAAI8oB,EAEhBG,GAAYF,EADAL,EAAaI,EAAW,KACHE,EAAY,GAC1CplB,EAAI,EAAGA,GAAKolB,EAAWplB,IAC5B8kB,EAAaI,EAAWllB,EAAI,GAAKqlB,EAAWrlB,EAEhDklB,EAAW,MAInB,OAAOR,EAAM3Y,KAAI,SAACuZ,EAASlpB,GACvB,MAAO,CAAC8c,MADY,QACLsL,KAAM5hB,KAAKC,IAAID,KAAK0S,IAAI,EAAIwP,EAAa1oB,GAAgBuoB,GAAa,MAE7F,EAEMY,GAAqB,SAACC,EAAwBlkB,EAAeC,GAC/D,IAAMkkB,EAAUnkB,EAAQ,EAClBokB,EAAUnkB,EAAS,EACnBE,EAAI0W,GAAiBqN,EAAO,GAAIlkB,GAASmkB,EACzC1lB,EAAI2lB,EAAUvN,GAAiBqN,EAAO,GAAIjkB,GAEhD,OAAQqB,KAAK+iB,MAAM5lB,EAAG0B,GAAe,EAAVmB,KAAKgW,KAAqB,EAAVhW,KAAKgW,GACpD,EAEagN,GAA6B,SACtCnN,EACAnX,EACAC,GAEA,IAAMskB,EAA0B,kBAAVpN,EAAqBA,EAAQ8M,GAAmB9M,EAAOnX,EAAOC,GAE9EojB,EAAa/hB,KAAKkjB,IAAIxkB,EAAQsB,KAAKmjB,IAAIF,IAAWjjB,KAAKkjB,IAAIvkB,EAASqB,KAAKojB,IAAIH,IAE7EI,EAAY3kB,EAAQ,EACpB4kB,EAAa3kB,EAAS,EACtB4kB,EAAiBxB,EAAa,EAE9ByB,EAAQxjB,KAAKmjB,IAAIF,EAASjjB,KAAKgW,GAAK,GAAKuN,EACzCE,EAAQzjB,KAAKojB,IAAIH,EAASjjB,KAAKgW,GAAK,GAAKuN,EAE/C,MAAO,CAACxB,EAAYsB,EAAYI,EAAOJ,EAAYI,EAAOH,EAAaE,EAAOF,EAAaE,EAC/F,EAEME,GAAW,SAACzb,EAAWnN,GAAsB,OAAAkF,KAAK2jB,KAAK1b,EAAIA,EAAInN,EAAIA,EAAE,EAErE8oB,GAAa,SAACllB,EAAeC,EAAgBE,EAAW1B,EAAW0mB,GAQrE,MAPgB,CACZ,CAAC,EAAG,GACJ,CAAC,EAAGllB,GACJ,CAACD,EAAO,GACR,CAACA,EAAOC,IAGGmlB,QACX,SAACC,EAAMnB,GACI,IAAAoB,EAAUpB,EAAM,GAAZqB,EAAMrB,EAAM,GACjB/nB,EAAI6oB,GAAS7kB,EAAImlB,EAAI7mB,EAAI8mB,GAC/B,OAAIJ,EAAUhpB,EAAIkpB,EAAKG,gBAAkBrpB,EAAIkpB,EAAKG,iBACvC,CACHC,cAAevB,EACfsB,gBAAiBrpB,GAIlBkpB,IAEX,CACIG,gBAAiBL,EAAUO,KAAW,IACtCD,cAAe,OAErBA,aACN,EAEaE,GAAkB,SAC3BC,EACAzlB,EACA1B,EACAuB,EACAC,GAEA,IAAI4lB,EAAK,EACLC,EAAK,EAET,OAAQF,EAASG,MACb,KAAK,EAGsB,IAAnBH,EAASI,MACTH,EAAKC,EAAKxkB,KAAK0S,IAAI1S,KAAKkjB,IAAIrkB,GAAImB,KAAKkjB,IAAIrkB,EAAIH,GAAQsB,KAAKkjB,IAAI/lB,GAAI6C,KAAKkjB,IAAI/lB,EAAIwB,IACrD,IAAnB2lB,EAASI,QAChBH,EAAKvkB,KAAK0S,IAAI1S,KAAKkjB,IAAIrkB,GAAImB,KAAKkjB,IAAIrkB,EAAIH,IACxC8lB,EAAKxkB,KAAK0S,IAAI1S,KAAKkjB,IAAI/lB,GAAI6C,KAAKkjB,IAAI/lB,EAAIwB,KAE5C,MAEJ,KAAK,EAGD,GAAuB,IAAnB2lB,EAASI,MACTH,EAAKC,EAAKxkB,KAAK0S,IACXgR,GAAS7kB,EAAG1B,GACZumB,GAAS7kB,EAAG1B,EAAIwB,GAChB+kB,GAAS7kB,EAAIH,EAAOvB,GACpBumB,GAAS7kB,EAAIH,EAAOvB,EAAIwB,SAEzB,GAAuB,IAAnB2lB,EAASI,MAAkC,CAElD,IAAMvW,EAAInO,KAAK0S,IAAI1S,KAAKkjB,IAAI/lB,GAAI6C,KAAKkjB,IAAI/lB,EAAIwB,IAAWqB,KAAK0S,IAAI1S,KAAKkjB,IAAIrkB,GAAImB,KAAKkjB,IAAIrkB,EAAIH,IACrF,EAAWklB,GAAWllB,EAAOC,EAAQE,EAAG1B,GAAG,GAA1C6mB,EAAE,KAAEC,EAAE,KAEbO,EAAKrW,GADLoW,EAAKb,GAASM,EAAKnlB,GAAIolB,EAAK9mB,GAAKgR,IAGrC,MAEJ,KAAK,EAEsB,IAAnBmW,EAASI,MACTH,EAAKC,EAAKxkB,KAAKC,IAAID,KAAKkjB,IAAIrkB,GAAImB,KAAKkjB,IAAIrkB,EAAIH,GAAQsB,KAAKkjB,IAAI/lB,GAAI6C,KAAKkjB,IAAI/lB,EAAIwB,IACrD,IAAnB2lB,EAASI,QAChBH,EAAKvkB,KAAKC,IAAID,KAAKkjB,IAAIrkB,GAAImB,KAAKkjB,IAAIrkB,EAAIH,IACxC8lB,EAAKxkB,KAAKC,IAAID,KAAKkjB,IAAI/lB,GAAI6C,KAAKkjB,IAAI/lB,EAAIwB,KAE5C,MAEJ,KAAK,EAGD,GAAuB,IAAnB2lB,EAASI,MACTH,EAAKC,EAAKxkB,KAAKC,IACXyjB,GAAS7kB,EAAG1B,GACZumB,GAAS7kB,EAAG1B,EAAIwB,GAChB+kB,GAAS7kB,EAAIH,EAAOvB,GACpBumB,GAAS7kB,EAAIH,EAAOvB,EAAIwB,SAEzB,GAAuB,IAAnB2lB,EAASI,MAAkC,CAE5CvW,EAAInO,KAAKC,IAAID,KAAKkjB,IAAI/lB,GAAI6C,KAAKkjB,IAAI/lB,EAAIwB,IAAWqB,KAAKC,IAAID,KAAKkjB,IAAIrkB,GAAImB,KAAKkjB,IAAIrkB,EAAIH,IAA3F,IACM,EAAWklB,GAAWllB,EAAOC,EAAQE,EAAG1B,GAAG,GAA1C6mB,EAAE,KAAEC,EAAE,KAEbO,EAAKrW,GADLoW,EAAKb,GAASM,EAAKnlB,GAAIolB,EAAK9mB,GAAKgR,KAW7C,OALIrU,MAAMC,QAAQuqB,EAASG,QACvBF,EAAKhP,GAAiB+O,EAASG,KAAK,GAAI/lB,GACxC8lB,EAA8B,IAAzBF,EAASG,KAAK/qB,OAAe6b,GAAiB+O,EAASG,KAAK,GAAI9lB,GAAU4lB,GAG5E,CAACA,EAAIC,EAChB,ECtMaG,GAAuB,SAAC3lB,EAAkBuR,GACnD,IAAIsF,EAAiCQ,GAAI,KACnCyL,EAAwC,GAoB9C,OAlBAjN,GAAkBtE,GAAQ5I,SAAQ,SAAChO,EAAKH,GACpC,GAAU,IAANA,EAAS,CACT,IAAMorB,EAAajrB,EAAI,GACvB,GACwB,KAApBirB,EAAWtc,OACuD,IAAlE,CAAC,MAAO,OAAQ,QAAS,UAAUR,QAAQ8c,EAAWxoB,OAGtD,YADAyZ,EAAQK,GAAevc,IAEpB,GAAIsc,GAAQ2O,GAEf,YADA/O,GAASgP,GAAU/O,MAAM9W,EAAS4lB,GAAcvO,GAAI,MAAQA,GAAI,MAIxE,IAAMyO,EAAYpD,GAAe1iB,EAASrF,GAC1CmoB,EAAMjoB,KAAKirB,MAGR,CACHjP,MAAK,EACLiM,MAAK,EACLxZ,KAAM,EAEd,ECrBayc,GAAe,eACfC,GAAgB,gBAChBC,GAAiB,iBACjBC,GAAkB,kBAClBC,GAAS,SACTC,GAAU,UACVC,GAAQ,QACRC,GAAU,UCIVC,GAAuB,SAACvmB,EAAkBuR,GACnD,IAAImU,EAAK,EACLD,EAAI,EACF3C,EAAwC,GACxC0D,EAA+B,GAsErC,OApEA3Q,GAAkBtE,GAAQ5I,SAAQ,SAAChO,EAAKH,GACpC,IAAIisB,GAAc,EA6DlB,GA5DU,IAANjsB,EACAisB,EAAc9rB,EAAImqB,QAAO,SAAC4B,EAAKlV,GAC3B,GAAIgE,GAAahE,GACb,OAAQA,EAAMpU,OACV,IAAK,SAED,OADAopB,EAAS3rB,KAAKsb,KACP,EACX,IAAK,MACL,IAAK,OAED,OADAqQ,EAAS3rB,KAAKqb,KACP,EACX,IAAK,QACL,IAAK,SAED,OADAsQ,EAAS3rB,KAAKub,KACP,OAEZ,GAAIJ,GAAmBxE,IAAUuE,GAASvE,GAE7C,OADAgV,EAAS3rB,KAAK2W,IACP,EAGX,OAAOkV,IACRD,GACU,IAANjsB,IACPisB,EAAc9rB,EAAImqB,QAAO,SAAC4B,EAAKlV,GAC3B,GAAIgE,GAAahE,GACb,OAAQA,EAAMpU,OACV,KAAK+oB,GAED,OADAT,EAAQ,GACD,EACX,KAAKU,GAED,OADAV,EAAQ,GACD,EACX,KAAKY,GACL,KAAKP,GAED,OADAN,EAAO,GACA,EACX,KAAKO,GAED,OADAP,EAAO,GACA,EACX,KAAKQ,GAED,OADAR,EAAO,GACA,EACX,KAAKY,GACL,KAAKH,GAED,OADAT,EAAO,GACA,OAEZ,GAAI1P,GAASvE,IAAUwE,GAAmBxE,GAK7C,OAJK1W,MAAMC,QAAQ0qB,KACfA,EAAO,IAEXA,EAAK5qB,KAAK2W,IACH,EAGX,OAAOkV,IACRD,IAGHA,EAAa,CACb,IAAMX,EAAYpD,GAAe1iB,EAASrF,GAC1CmoB,EAAMjoB,KAAKirB,OAIZ,CAACL,KAAI,EAAEC,MAAK,EAAE5C,MAAK,EAAE0D,SAAQ,EAAEld,KAAM,EAChD,ECjFaqd,GAAmB,SAACC,GAC7B,OAA2B,IAApBA,EAAWtd,IACtB,EAEaud,GAAmB,SAACD,GAC7B,OAA2B,IAApBA,EAAWtd,IACtB,EAuDawd,GAAoC,CAC7CzR,KAAM,QACNyB,MAAO,SAAC9W,EAAkB5C,GACtB,GAAmB,KAAfA,EAAMkM,KAA8B,CACpC,IAAMyd,EAAqB,CAACC,IAAK5pB,EAAMA,MAAOkM,KAAM,GAEpD,OADAtJ,EAAQinB,MAAMC,SAAS9pB,EAAMA,OACtB2pB,EAGX,GAAmB,KAAf3pB,EAAMkM,KAA6B,CACnC,IAAM6d,EAAgBC,GAA0BhqB,EAAMiY,MACtD,GAA6B,qBAAlB8R,EACP,MAAM,IAAIpmB,MAAM,sDAAsD3D,EAAMiY,KAAI,KAEpF,OAAO8R,EAAcnnB,EAAS5C,EAAM0X,QAGxC,MAAM,IAAI/T,MAAM,0BAA0B3D,EAAMkM,iBAIxC+d,GAAiBjqB,GAC7B,QACqB,KAAfA,EAAMkM,MAAkD,SAAhBlM,EAAMA,SAChC,KAAfA,EAAMkM,QAAiC8d,GAA0BhqB,EAAMiY,MAEhF,CAEA,ICrGYiS,GDqGNF,GAA+F,CACjG,kBErG0B,SAACpnB,EAAkBuR,GAC7C,IAAIsF,EAAiCQ,GAAI,KACnCyL,EAAwC,GAiB9C,OAfAjN,GAAkBtE,GAAQ5I,SAAQ,SAAChO,EAAKH,GACpC,GAAU,IAANA,EAAS,CACT,IAAMorB,EAAajrB,EAAI,GACvB,GAAwB,KAApBirB,EAAWtc,MAAuD,OAArBsc,EAAWxoB,MAExD,YADAyZ,EAAQK,GAAevc,IAEpB,GAAIsc,GAAQ2O,GAEf,YADA/O,EAAQgP,GAAU/O,MAAM9W,EAAS4lB,IAIzC,IAAME,EAAYpD,GAAe1iB,EAASrF,GAC1CmoB,EAAMjoB,KAAKirB,MAGR,CAACjP,MAAK,EAAEiM,MAAK,EAAExZ,KAAM,EAChC,EFkFI,uBAAwBqc,GACxB,sBAAuBA,GACvB,qBAAsBA,GACtB,0BAA2BA,GAC3B,kBF3F0B,SAAC3lB,EAAkBuR,GAC7C,IAAImU,EAAK,EACLD,EAAI,EACF3C,EAAwC,GACxC0D,EAA+B,GAmErC,OAlEA3Q,GAAkBtE,GAAQ5I,SAAQ,SAAChO,EAAKH,GACpC,IAAIisB,GAAc,EAClB,GAAU,IAANjsB,EAAS,CACT,IAAI+sB,GAAe,EACnBd,EAAc9rB,EAAImqB,QAAO,SAAC4B,EAAKlV,GAC3B,GAAI+V,EACA,GAAI/R,GAAahE,GACb,OAAQA,EAAMpU,OACV,IAAK,SAED,OADAopB,EAAS3rB,KAAKsb,IACPuQ,EACX,IAAK,MACL,IAAK,OAED,OADAF,EAAS3rB,KAAKqb,IACPwQ,EACX,IAAK,QACL,IAAK,SAED,OADAF,EAAS3rB,KAAKub,IACPsQ,OAER1Q,GAAmBxE,IAAUuE,GAASvE,KAC7CgV,EAAS3rB,KAAK2W,QAEf,GAAIgE,GAAahE,GACpB,OAAQA,EAAMpU,OACV,KAAK+oB,GAED,OADAT,EAAQ,GACD,EACX,KAAKU,GAED,OADAV,EAAQ,GACD,EACX,IAAK,KAED,OADA6B,GAAe,GACR,EACX,KAAKxB,GAED,OADAN,EAAO,GACA,EACX,KAAKY,GACL,KAAKL,GAED,OADAP,EAAO,GACA,EACX,KAAKa,GACL,KAAKL,GAED,OADAR,EAAO,GACA,EACX,KAAKS,GAED,OADAT,EAAO,GACA,OAEZ,GAAI1P,GAASvE,IAAUwE,GAAmBxE,GAK7C,OAJK1W,MAAMC,QAAQ0qB,KACfA,EAAO,IAEXA,EAAK5qB,KAAK2W,IACH,EAEX,OAAOkV,IACRD,GAGP,GAAIA,EAAa,CACb,IAAMX,EAAYpD,GAAe1iB,EAASrF,GAC1CmoB,EAAMjoB,KAAKirB,OAIZ,CAACL,KAAI,EAAEC,MAAK,EAAE5C,MAAK,EAAE0D,SAAQ,EAAEld,KAAM,EAChD,EEoBI,uBAAwBid,GACxB,sBAAuBA,GACvB,qBAAsBA,GACtB,0BAA2BA,GAC3B,mBGtG0B,SAC1BvmB,EACAuR,GAEA,IAAMsF,EAAQQ,GAAI,KACZyL,EAAwC,GAC1CxZ,EAAO,EACLoc,EAAK,EACLD,EAAI,EACJe,EAA+B,GAoCrC,OAnCA3Q,GAAkBtE,GAAQ5I,SAAQ,SAAChO,EAAKH,GACpC,IAAMorB,EAAajrB,EAAI,GACvB,GAAU,IAANH,EAAS,CACT,GAAIgb,GAAaoQ,IAAoC,WAArBA,EAAWxoB,MAEvC,YADAkM,EAAO,GAEJ,GAAIkM,GAAaoQ,IAAoC,WAArBA,EAAWxoB,MAE9C,YADAkM,EAAO,GAKf,GAAwB,KAApBsc,EAAWtc,KACX,GAAwB,SAApBsc,EAAWvQ,KAAiB,CAC5B,IAAMiC,EAAQqL,GAAU7L,MAAM9W,EAAS4lB,EAAW9Q,OAAO,IACzDgO,EAAMjoB,KAAK,CAAC+nB,KAAM1M,GAAaoB,MAAK,SACjC,GAAwB,OAApBsO,EAAWvQ,KACZiC,EAAQqL,GAAU7L,MAAM9W,EAAS4lB,EAAW9Q,OAAO,IACzDgO,EAAMjoB,KAAK,CAAC+nB,KAAMxM,GAAiBkB,MAAK,SACrC,GAAwB,eAApBsO,EAAWvQ,KAAuB,CACzC,IAAMP,EAAS8Q,EAAW9Q,OAAOqC,OAAOvB,IACxC,GAAsB,IAAlBd,EAAOpa,OAAc,CACf4c,EAAQqL,GAAU7L,MAAM9W,EAAS8U,EAAO,IAA9C,IACMsO,EAAOtO,EAAO,GAChBS,GAAc6N,IACdN,EAAMjoB,KAAK,CACP+nB,KAAM,CAACtZ,KAAM,GAA4B0K,OAAsB,IAAdoP,EAAKpP,OAAcnC,MAAOuR,EAAKvR,OAChFyF,MAAK,SAQb,IAAThO,EACD,CACIuN,OAAQA,EAAQQ,GAAI,MAAQA,GAAI,KAChCyL,MAAK,EACLxZ,KAAI,GAER,CAACmc,KAAI,EAAEC,MAAK,EAAE5C,MAAK,EAAE0D,SAAQ,EAAEld,KAAI,EAC7C,GC9Dake,GAAwD,CACjEnS,KAAM,mBACN3Q,aAAc,OACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAAC9W,EAAkBuR,GACtB,GAAsB,IAAlBA,EAAO7W,OACP,MAAO,GAGX,IAAMsoB,EAAQzR,EAAO,GAErB,OAAmB,KAAfyR,EAAM1Z,MAAkD,SAAhB0Z,EAAM5lB,MACvC,GAGJmU,EACF4F,QAAO,SAAC/Z,GAAU,OAAAwY,GAAwBxY,IAAUiqB,GAAiBjqB,EAAM,IAC3E+M,KAAI,SAAC/M,GAAU,OAAA0pB,GAAMhQ,MAAM9W,EAAS5C,EAAM,MCZ1CqqB,GAA8D,CACvEpS,KAAM,oBACN3Q,aAAc,aACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,OAAOA,EAAOpH,KAAI,SAACqH,GACf,GAAIgE,GAAahE,GACb,OAAQA,EAAMpU,OACV,IAAK,cACD,OAAO,EACX,IAAK,cACD,OAAO,EAGnB,OAAO,OCnBNsqB,GAAkE,CAC3ErS,KAAM,sBACN3Q,aAAc,QACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAACC,EAAmBxF,GACvB,OAAOsE,GAAkBtE,GACpBpH,KAAI,SAAC2K,GAAuB,OAAAA,EAAOqC,OAAOnB,GAAmB,IAC7D7L,IAAI8L,MCJJ0R,GAA8D,CACvEtS,KAAM,oBACN3Q,aAAc,SACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,OAAOsE,GAAkBtE,GACpBpH,KAAI,SAAC2K,GACF,OAAAA,EACKqC,OAAO3B,IACPrL,KAAI,SAACqH,GAAU,OAAAA,EAAMpU,KAAK,IAC1B5B,KAAK,QAEb2O,IAAIyd,MAIXA,GAAwB,SAACxqB,GAC3B,OAAQA,GACJ,IAAK,YACD,OAAO,EACX,IAAK,WACL,IAAK,mBACD,OAAO,EACX,IAAK,WACL,IAAK,mBACD,OAAO,EAEX,QACI,OAAO,EAEnB,GNrCA,SAAYkqB,GACRA,EAAAA,KAAAA,OACAA,EAAAA,QAAAA,UACAA,EAAAA,MAAAA,OACH,CAJD,CAAYA,KAAAA,GAAe,KASpB,IObKO,GPaCC,GAA0D,CACnEzS,KAAM,kBACN3Q,aAAc,IACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,OAAOsE,GAAkBtE,GAAQpH,KAAI,SAAC2K,GAAW,OAAAA,EAAOqC,OAAO4Q,GAA0B,MAI3FA,GAA4B,SAAC3qB,GAC/B,OAAAoY,GAAapY,IAAU4Y,GAAmB5Y,EAA1C,EQzBE4qB,GAAqB,SAACC,GAA+C,MAAC,CACxE5S,KAAM,UAAU4S,EAAI,SACpBvjB,aAAc,cACd6d,QAAQ,EACRjZ,KAAM,EACNmZ,OAAQ,QACX,EAEYyF,GAA+CF,GAAmB,OAClEG,GAAiDH,GAAmB,SACpEI,GAAkDJ,GAAmB,UACrEK,GAAgDL,GAAmB,QCN1EM,GAAsB,SAACL,GAAwD,MAAC,CAClF5S,KAAM,iBAAiB4S,EACvBvjB,aAAc,MACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,OAAA0E,GAA2B1E,EAAO4F,OAAOnB,MAChD,EAEYuS,GAA6DD,GAAoB,YACjFE,GAA8DF,GAAoB,aAClFG,GAAiEH,GAAoB,gBACrFI,GAAgEJ,GAAoB,eCR3FK,GAAqB,SAACV,GAA8D,MAAC,CACvF5S,KAAM,UAAU4S,EAAI,SACpBvjB,aAAc,QACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmB6R,GACvB,OAAQA,GACJ,IAAK,OACD,OAAO,EACX,IAAK,SACD,OAAO,EACX,IAAK,SACD,OAAO,EACX,IAAK,SACD,OAAO,EAEf,OAAO,GAEd,EAEYC,GAA8DF,GAAmB,OACjFG,GAAgEH,GAAmB,SACnFI,GAAiEJ,GAAmB,UACpFK,GAA+DL,GAAmB,QC9BzFM,GAAqB,SAAChB,GAAmD,MAAC,CAC5E5S,KAAM,UAAU4S,EAAI,SACpBvjB,aAAc,IACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAACC,EAAmBvF,GACvB,OAAI8D,GAAiB9D,GACVA,EAAMwC,OAEV,GAEd,EAEYkV,GAAmDD,GAAmB,OACtEE,GAAqDF,GAAmB,SACxEG,GAAsDH,GAAmB,UACzEI,GAAoDJ,GAAmB,QCjBvE3R,GAAsC,CAC/CjC,KAAM,QACN3Q,aAAc,cACd6d,QAAQ,EACRjZ,KAAM,EACNmZ,OAAQ,SCCC6G,GAAsD,CAC/DjU,KAAM,YACN3Q,aAAc,MACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBuS,GACvB,MACS,QADDA,EAEO,EAGA,ICmBVC,GAA4C,CACrDlU,KAAM,UACN3Q,aAAc,eACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,OAAOA,EAAO4F,OAAO3B,IAAcsP,QAAO,SAAC0E,EAAKhY,GAC5C,OAAOgY,EAAMC,GAAkBjY,EAAMpU,SACtC,KAILqsB,GAAoB,SAACF,GACvB,OAAQA,GACJ,IAAK,QACL,IAAK,cACD,OAAO,EACX,IAAK,SACD,OAAO,EACX,IAAK,SACD,OAAO,EACX,IAAK,OACD,OAAO,GACX,IAAK,YACD,OAAO,GACX,IAAK,QACD,OAAO,GACX,IAAK,OACL,IAAK,eACD,OAAO,IACX,IAAK,OACL,IAAK,WACD,OAAO,IACX,IAAK,OACD,OAAO,IACX,IAAK,UACD,OAAO,KACX,IAAK,YACD,OAAO,KACX,IAAK,kBACD,OAAO,KACX,IAAK,qBACD,OAAO,KACX,IAAK,qBACD,OAAO,MACX,IAAK,YACD,OAAO,MACX,IAAK,aACD,OAAO,MACX,IAAK,qBACD,OAAO,OACX,IAAK,eACD,OAAO,OACX,IAAK,gBACD,OAAO,OACX,IAAK,YACD,OAAO,QACX,IAAK,YACD,OAAO,QACX,IAAK,sBACD,OAAO,QACX,IAAK,sBACD,OAAO,QACX,IAAK,WACD,OAAO,SACX,IAAK,eACD,OAAO,SACX,IAAK,mBACD,OAAO,SACX,IAAK,eACD,OAAO,UACX,IAAK,cACD,OAAO,UACX,IAAK,cACD,OAAO,UAGf,OAAO,CACX,EC1GaG,GAA8C,CACvDrU,KAAM,QACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmB2S,GACvB,OAAQA,GACJ,IAAK,OACD,OAAO,EACX,IAAK,QACD,OAAO,EACX,IAAK,eACD,OAAO,EACX,IAAK,aACD,OAAO,EAEf,OAAO,ICtBFC,GAAkD,CAC3DtU,KAAM,iBACN3Q,aAAc,IACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBvF,GACvB,OAAmB,KAAfA,EAAMlI,MAAkD,WAAhBkI,EAAMpU,MACvC,EAGQ,KAAfoU,EAAMlI,MAIS,KAAfkI,EAAMlI,KAHCkI,EAAMwC,OAOV,KTpBf,SAAY6T,GACRA,EAAAA,OAAAA,SACAA,EAAAA,OAAAA,QACH,CAHD,CAAYA,KAAAA,GAAU,KAKf,IULK+B,GVKCrhB,GAAuD,CAChE8M,KAAM,aACN3Q,aAAc,SACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxO,GACvB,MACS,WADDA,EAEOsf,GAAWgC,OAGXhC,GAAWiC,SWdrBC,GAA4C,CACrD1U,KAAM,cACN3Q,aAAc,SACd6d,QAAQ,EACRjZ,KAAM,GAGG0gB,GAAoB,SAACxY,EAAiByY,GAC/C,OAAIzU,GAAahE,IAA0B,WAAhBA,EAAMpU,MACtB,IAAM6sB,EACS,KAAfzY,EAAMlI,KACN2gB,EAAWzY,EAAMwC,OACjBgC,GAAmBxE,GACnB+E,GAAiB/E,EAAOyY,GAG5BA,CACX,ECfaC,GAA6D,CACtE7U,KAAM,mBACN3Q,aAAc,OACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAAC9W,EAAkBwR,GACtB,OAAmB,KAAfA,EAAMlI,MAAkD,SAAhBkI,EAAMpU,MACvC,KAGJ0pB,GAAMhQ,MAAM9W,EAASwR,KCTvB2Y,GAAwE,CACjF9U,KAAM,sBACN3Q,aAAc,UACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmByP,GACvB,MACS,WADDA,EAEO,EAGA,ICyCV4D,GAAgE,CACzE/U,KAAM,kBACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBzN,GACvB,OAAQA,GACJ,IAAK,OACD,OAAO,EACX,IAAK,SACD,OAAO,EACX,IAAK,SACD,OAAO,EACX,IAAK,UACD,OAAO,EACX,IAAK,cACD,OAAO,EACX,IAAK,uBACD,OAAO,EACX,IAAK,cACD,OAAO,EACX,IAAK,cACD,OAAO,EACX,IAAK,cACD,OAAO,EACX,IAAK,cACD,OAAO,EACX,IAAK,cACD,OAAO,GACX,IAAK,eACD,OAAO,GACX,IAAK,WACD,OAAO,GACX,IAAK,UACD,OAAO,GACX,IAAK,YACD,OAAO,GACX,IAAK,qBACD,OAAO,GACX,IAAK,oBACD,OAAO,GACX,IAAK,kBACD,OAAO,GACX,IAAK,aACD,OAAO,GACX,IAAK,mBACD,OAAO,GACX,IAAK,WACD,OAAO,GACX,IAAK,WACD,OAAO,GACX,IAAK,WAEL,IAAK,SACD,OAAO,GACX,IAAK,WACD,OAAO,GACX,IAAK,iBACD,OAAO,GACX,IAAK,kBACD,OAAO,GACX,IAAK,oBACD,OAAO,GACX,IAAK,UACD,OAAO,GACX,IAAK,WACD,OAAO,GACX,IAAK,iBACD,OAAO,GACX,IAAK,QACD,OAAO,GACX,IAAK,uBACD,OAAO,GACX,IAAK,sBACD,OAAO,GACX,IAAK,wBACD,OAAO,GACX,IAAK,MACD,OAAO,GACX,IAAK,iBACD,OAAO,GACX,IAAK,YACD,OAAO,GACX,IAAK,YACD,OAAO,GACX,IAAK,UACD,OAAO,GACX,IAAK,QACD,OAAO,GACX,IAAK,UACD,OAAO,GACX,IAAK,sBACD,OAAO,GACX,IAAK,wBACD,OAAO,GACX,IAAK,QACD,OAAO,GACX,IAAK,SACD,OAAO,GACX,IAAK,OACD,OAAO,GACX,IAAK,UACD,OAAO,GACX,IAAK,sBACD,OAAO,GACX,IAAK,wBACD,OAAO,GACX,IAAK,iBACD,OAAO,GACX,IAAK,kBACD,OAAO,GACX,IAAK,oBACD,OAAO,GAEX,QACI,YC5KV+gB,GAAgB,SAACpC,GAAgD,MAAC,CACpE5S,KAAM,UAAU4S,EAChBvjB,aAAc,IACd6d,QAAQ,EACRjZ,KAAM,EACT,EAEYghB,GAA2CD,GAAc,OACzDE,GAA6CF,GAAc,SAC3DG,GAA8CH,GAAc,UAC5DI,GAA4CJ,GAAc,QCD1DK,GAAgD,CACzDrV,KAAM,WACN3Q,aAAc,UACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,OAAOA,EAAO4F,OAAO3B,IAAcrL,KAAI,SAACugB,GACpC,OAAQA,EAASttB,OACb,IAAK,SACD,OAAO,EACX,IAAK,SACD,OAAO,EACX,IAAK,OACD,OAAO,EACX,IAAK,OACD,OAAO,EAEX,QACI,OAAO,QCtBdutB,GAA6D,CACtEtV,KAAM,gBACN3Q,aAAc,SACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmB2T,GACvB,MACS,eADDA,EAEO,aAGA,WChBjBE,GAAiB,SAAC3C,GAA+C,MAAC,CACpE5S,KAAM,WAAW4S,EACjBvjB,aAAc,IACd6d,QAAQ,EACRjZ,KAAM,EACNmZ,OAAQ,oBACX,EAEYoI,GAA2CD,GAAe,OAC1DE,GAA6CF,GAAe,SAC5DG,GAA8CH,GAAe,UAC7DI,GAA4CJ,GAAe,QCL3DK,GAAuD,CAChE5V,KAAM,aACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBkU,GACvB,OAAQA,GACJ,IAAK,QACD,OAAO,EACX,IAAK,SACL,IAAK,UACD,OAAO,EAEX,QACI,OAAO,KCZVzE,GAAoD,CAC7DnR,KAAM,WACN3Q,aAAc,SACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmByP,GACvB,OAAQA,GACJ,IAAK,WACD,OAAO,EACX,IAAK,WACD,OAAO,EACX,IAAK,QACD,OAAO,EACX,IAAK,SACD,OAAO,EAGf,OAAO,ICZF0E,GAAkD,CAC3D7V,KAAM,cACN3Q,aAAc,OACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAAC9W,EAAkBuR,GACtB,OAAsB,IAAlBA,EAAO7W,QAAgBgb,GAAiBnE,EAAO,GAAI,QAC5C,GAGJsE,GAAkBtE,GAAQpH,KAAI,SAAC2K,GAQlC,IAPA,IAAMqW,EAAyB,CAC3B7T,MAAOM,GAAOE,YACdsT,QAASlV,GACTmV,QAASnV,GACToV,KAAMpV,IAEN/G,EAAI,EACC3U,EAAI,EAAGA,EAAIsa,EAAOpa,OAAQF,IAAK,CACpC,IAAMgX,EAAQsD,EAAOta,GACjBub,GAASvE,IACC,IAANrC,EACAgc,EAAOC,QAAU5Z,EACJ,IAANrC,EACPgc,EAAOE,QAAU7Z,EAEjB2Z,EAAOG,KAAO9Z,EAElBrC,KAEAgc,EAAO7T,MAAQA,GAAMR,MAAM9W,EAASwR,GAG5C,OAAO2Z,OCvCNI,GAA+D,CACxElW,KAAM,iBACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBwU,GACvB,OAAQA,GACJ,IAAK,YACD,OAAO,EACX,IAAK,YACD,OAAO,EACX,IAAK,aACD,OAAO,EAGf,OAAO,ICjBFC,GAAiD,CAC1DnW,KAAM,YACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBvF,GACvB,GAAmB,KAAfA,EAAMlI,MAAkD,SAAhBkI,EAAMpU,MAC9C,OAAO,KAGX,GAAmB,KAAfoU,EAAMlI,KAA6B,CACnC,IAAMmiB,EAAoBC,GAA8Bla,EAAM6D,MAC9D,GAAiC,qBAAtBoW,EACP,MAAM,IAAI1qB,MAAM,0DAA0DyQ,EAAM6D,KAAI,KAExF,OAAOoW,EAAkBja,EAAMsD,QAGnC,OAAO,OAmBT4W,GAEF,CACAC,OAlBW,SAAC7V,GACZ,IAAMhB,EAASgB,EAAKqB,QAAO,SAACxc,GAAQ,OAAa,KAAbA,EAAI2O,IAAI,IAA6Ba,KAAI,SAACxP,GAA0B,OAAAA,EAAIqZ,MAAM,IAElH,OAAyB,IAAlBc,EAAOpa,OAAgBoa,EAAoB,IACtD,EAeI8W,SAZa,SAAC9V,GACd,IAAMhB,EAASgB,EAAKqB,QAAO,SAACxc,GAAQ,OAAa,KAAbA,EAAI2O,IAAI,IAA6Ba,KAAI,SAACxP,GAA0B,OAAAA,EAAIqZ,MAAM,IAE3G3B,EAAkEyC,EAAM,GAApE+W,EAA8D/W,EAAM,GAANA,EAAM,GAANA,EAAM,GAA1D,IAAExC,EAAkDwC,EAAM,GAApDgX,EAA8ChX,EAAM,GAANA,EAAM,GAANA,EAAM,GAANA,EAAM,GAANA,EAAM,GAANA,EAAM,IAANA,EAAM,IAA1B,IAAEiX,EAAkBjX,EAAM,IAApBkX,EAAclX,EAAM,IAE/E,OAFyEA,EAAM,IAANA,EAAM,IAEtD,KAAlBA,EAAOpa,OAAgB,CAAC2X,EAAIwZ,EAAIvZ,EAAIwZ,EAAIC,EAAIC,GAAM,IAC7D,GCnCMC,GAAkC,CACpC3iB,KAAM,GACN0K,OAAQ,GACRnC,MAAO/G,IAELohB,GAA2B,CAACD,GAAeA,IAEpCE,GAA4D,CACrE9W,KAAM,mBACN3Q,aAAc,UACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,IAAM6a,EAA8B7a,EAAO4F,OAAOnB,IAElD,OAAuB,IAAnBoW,EAAQ1xB,OACDwxB,GAGJ,CAACE,EAAQ,GAAIA,EAAQ,MClBvBC,GAAwD,CACjEhX,KAAM,UACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBsV,GACvB,OAAQA,GACJ,IAAK,SACD,OAAO,EACX,IAAK,WACD,OAAO,EAEX,QACI,OAAO,MfnBvB,SAAYzC,GACRA,EAAAA,OAAAA,SACAA,EAAAA,UAAAA,YACAA,EAAAA,SAAAA,UACH,CAJD,CAAYA,KAAAA,GAAU,KgBEtB,IhBIO,IAAM3f,GAAuD,CAChEoL,KAAM,aACN3Q,aAAc,SACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmB9M,GACvB,OAAQA,GACJ,IAAK,YACD,OAAO2f,GAAW0C,UACtB,IAAK,WACD,OAAO1C,GAAW2C,SAEtB,QACI,OAAO3C,GAAWE,UiBXrB0C,GAA2C,CACpDnX,KAAM,UACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBvF,GACvB,GAAmB,KAAfA,EAAMlI,KACN,MAAO,CAACmjB,MAAM,EAAMC,MAAO,GAG/B,GAAInX,GAAc/D,GACd,MAAO,CAACib,MAAM,EAAOC,MAAOlb,EAAMwC,QAGtC,MAAM,IAAIjT,MAAM,mCCnBX4rB,GAAgC,CACzCtX,KAAM,OACNyB,MAAO,SAACC,EAAmB3Z,GACvB,GAAmB,KAAfA,EAAMkM,KACN,OAAQlM,EAAM6W,KAAKd,eACf,IAAK,IACD,OAAO,IAAO/V,EAAM4W,OACxB,IAAK,KACD,OAAO5W,EAAM4W,OAIzB,MAAM,IAAIjT,MAAM,2BCdX6rB,GAA4C,CACrDvX,KAAM,UACN3Q,aAAc,IACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAACC,EAAmBvF,GACvB,OAAI+D,GAAc/D,GACPA,EAAMwC,OAEV,ICVF6Y,GAAoD,CAC7DxX,KAAM,wBACN3Q,aAAc,cACd6d,QAAQ,EACRjZ,KAAM,EACNmZ,OAAQ,SCOCqK,GAAkE,CAC3EzX,KAAM,uBACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,OAAOA,EACF4F,OAAO3B,IACPrL,KAAI,SAACqH,GACF,OAAQA,EAAMpU,OACV,IAAK,YACD,OAAO,EACX,IAAK,WACD,OAAO,EACX,IAAK,eACD,OAAO,EACX,IAAK,OACD,OAAO,EAEf,OAAO,KAEV+Z,QAAO,SAAC4V,GAAS,OAAS,IAATA,CAAI,MC1BrBC,GAAkD,CAC3D3X,KAAM,cACN3Q,aAAc,GACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,IAAM0b,EAAwB,GACxBC,EAAoB,GAmB1B,OAlBA3b,EAAO5I,SAAQ,SAAC6I,GACZ,OAAQA,EAAMlI,MACV,KAAK,GACL,KAAK,EACD2jB,EAAYpyB,KAAK2W,EAAMpU,OACvB,MACJ,KAAK,GACD6vB,EAAYpyB,KAAK2W,EAAMwC,OAAO9Y,YAC9B,MACJ,KAAK,EACDgyB,EAAQryB,KAAKoyB,EAAYzxB,KAAK,MAC9ByxB,EAAYvyB,OAAS,MAI7BuyB,EAAYvyB,QACZwyB,EAAQryB,KAAKoyB,EAAYzxB,KAAK,MAE3B0xB,EAAQ/iB,KAAI,SAACtM,GAAW,OAA0B,IAAzBA,EAAOiL,QAAQ,KAAcjL,EAAS,IAAIA,EAAM,GAAG,MCjC9EosB,GAAyC,CAClD5U,KAAM,YACN3Q,aAAc,IACd6d,QAAQ,EACRjZ,KAAM,EACNmZ,OAAQ,UCJC0K,GAA+C,CACxD9X,KAAM,cACN3Q,aAAc,SACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAACC,EAAmBvF,GACvB,OAAI+D,GAAc/D,GACPA,EAAMwC,OAGbwB,GAAahE,IAEJ,SADDA,EAAMpU,MAEC,IAOZ,MCpBFgwB,GAAiD,CAC1D/X,KAAM,eACN3Q,aAAc,OACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAACC,EAAmBxF,GACvB,OAAOA,EAAO4F,OAAO3B,IAAcrL,KAAI,SAACqH,GAAU,OAAAA,EAAMpU,KAAK,MCDxDiwB,GAAuD,CAChEhY,KAAM,aACN3Q,aAAc,SACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmB2T,GACvB,OAAQA,GACJ,IAAK,UACD,MAAO,UACX,IAAK,SACD,MAAO,SAEX,QACI,MAAO,YCrBV4C,GAAW,SAAC9D,EAAapsB,GAA2B,OAAkB,KAAjBosB,EAAMpsB,EAAY,ECOvEmwB,GAA4C,CACrDlY,KAAM,UACN3Q,aAAc,OACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAACC,EAAmBxF,GACvB,GAAsB,IAAlBA,EAAO7W,OACP,MAAO,GAGX,IAAMsoB,EAAQzR,EAAO,GAErB,OAAmB,KAAfyR,EAAM1Z,MAAkD,SAAhB0Z,EAAM5lB,MACvC,GAGJmU,ICXFic,GAA8D,CACvEnY,KAAM,oBACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,GAAsB,IAAlBA,EAAO7W,OACP,OAAO,KAGX,IAAMsoB,EAAQzR,EAAO,GAErB,GAAmB,KAAfyR,EAAM1Z,MAAkD,SAAhB0Z,EAAM5lB,MAC9C,OAAO,KAMX,IAHA,IAAMqwB,EAAa,GACbC,EAAWnc,EAAO4F,OAAOxB,IAEtBnb,EAAI,EAAGA,EAAIkzB,EAAShzB,OAAQF,IAAK,CACtC,IAAMmzB,EAAUD,EAASlzB,GACnBkD,EAAOgwB,EAASlzB,EAAI,GAC1B,GAAqB,KAAjBmzB,EAAQrkB,KAAgC,CACxC,IAAMskB,EAAYlwB,GAAQ6X,GAAc7X,GAAQA,EAAKsW,OAAS,EAC9DyZ,EAAW5yB,KAAK,CAAC8yB,QAASA,EAAQvwB,MAAOwwB,UAAS,KAI1D,OAAOH,IC7BFI,GAAsD,CAC/DxY,KAAM,gBACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,GAAsB,IAAlBA,EAAO7W,OACP,MAAO,GAMX,IAHA,IAAMozB,EAAS,GACTJ,EAAWnc,EAAO4F,OAAOxB,IAEtBnb,EAAI,EAAGA,EAAIkzB,EAAShzB,OAAQF,IAAK,CACtC,IAAMmzB,EAAUD,EAASlzB,GACnBkD,EAAOgwB,EAASlzB,EAAI,GAC1B,GAAIgb,GAAamY,IAA8B,SAAlBA,EAAQvwB,MAAkB,CACnD,IAAM2wB,EAAQrwB,GAAQ6X,GAAc7X,GAAQA,EAAKsW,OAAS,EAC1D8Z,EAAOjzB,KAAK,CAAC8yB,QAASA,EAAQvwB,MAAO2wB,MAAK,KAIlD,OAAOD,IC5BFE,GAA8C,CACvD3Y,KAAM,WACN3Q,aAAc,KACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAAC9W,EAAkBuR,GACtB,OAAOA,EAAO4F,OAAO7B,IAAkBnL,KAAI,SAACqH,GAAU,OAAAmb,GAAK7V,MAAM9W,EAASwR,EAAM,MCC3Eyc,GAA0C,CACnD5Y,KAAM,SACN3Q,aAAc,OACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,GAAsB,IAAlBA,EAAO7W,OACP,OAAO,KAGX,IAAMsoB,EAAQzR,EAAO,GAErB,GAAmB,KAAfyR,EAAM1Z,MAAkD,SAAhB0Z,EAAM5lB,MAC9C,OAAO,KAGX,IAAM6wB,EAAS,GACTP,EAAWnc,EAAO4F,OAAO1B,IAE/B,GAAIiY,EAAShzB,OAAS,IAAM,EACxB,OAAO,KAGX,IAAK,IAAIF,EAAI,EAAGA,EAAIkzB,EAAShzB,OAAQF,GAAK,EAAG,CACzC,IAAM0zB,EAAOR,EAASlzB,GAAG4C,MACnB+wB,EAAQT,EAASlzB,EAAI,GAAG4C,MAC9B6wB,EAAOpzB,KAAK,CAACuzB,KAAI,EAAEC,MAAK,IAG5B,OAAOJ,IAIFK,GAAW,SAACL,EAAgBM,EAAeH,GACpD,IAAKH,EACD,MAAO,GAGX,IAAMO,EAAQP,EAAOjtB,KAAK0S,IAAI6a,EAAON,EAAOvzB,OAAS,IACrD,OAAK8zB,EAIEJ,EAAOI,EAAMJ,KAAOI,EAAMH,MAHtB,EAIf,ECvCaI,GAAgD,CACzDpZ,KAAM,aACN3Q,aAAc,OACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAAC9W,EAAkBuR,GACtB,OAAsB,IAAlBA,EAAO7W,QAAgBgb,GAAiBnE,EAAO,GAAI,QAC5C,GAGJsE,GAAkBtE,GAAQpH,KAAI,SAAC2K,GAUlC,IATA,IAAMqW,EAAwB,CAC1B7T,MAAO,IACP8T,QAASlV,GACTmV,QAASnV,GACToV,KAAMpV,GACNwY,OAAQxY,GACRyY,OAAO,GAEPxf,EAAI,EACC3U,EAAI,EAAGA,EAAIsa,EAAOpa,OAAQF,IAAK,CACpC,IAAMgX,EAAQsD,EAAOta,GACjBkb,GAAiBlE,EAAO,SACxB2Z,EAAOwD,OAAQ,EACR5Y,GAASvE,IACN,IAANrC,EACAgc,EAAOC,QAAU5Z,EACJ,IAANrC,EACPgc,EAAOE,QAAU7Z,EACJ,IAANrC,EACPgc,EAAOG,KAAO9Z,EAEd2Z,EAAOuD,OAASld,EAEpBrC,KAEAgc,EAAO7T,MAAQA,GAAMR,MAAM9W,EAASwR,GAG5C,OAAO2Z,OC7CNyD,GAAkD,CAC3DvZ,KAAM,cACN3Q,aAAc,SACd6d,QAAQ,EACRjZ,KAAM,EACNwN,MAAO,SAACC,EAAmBxF,GACvB,IAAM0a,EAAgB,CAAC,EAAD,KAChB4C,EAAqB,GAqB3B,OAnBAtd,EAAO4F,OAAO3B,IAAc7M,SAAQ,SAAC6I,GACjC,OAAQA,EAAMpU,OACV,IAAK,SACDyxB,EAAOh0B,KAAK,GACZ,MACJ,IAAK,OACDg0B,EAAOh0B,KAAK,GACZ,MACJ,IAAK,UACDg0B,EAAOh0B,KAAK,OAIxBoxB,EAActjB,SAAQ,SAACvL,IACY,IAA3ByxB,EAAO/lB,QAAQ1L,IACfyxB,EAAOh0B,KAAKuC,MAIbyxB,ICtCFC,GAAsD,CAC/DzZ,KAAM,4BACN3Q,aAAc,eACd6d,QAAQ,EACRjZ,KAAM,EACNmZ,OAAQ,SCHCsM,GAA0D,CACnE1Z,KAAM,4BACN3Q,aAAc,IACd4E,KAAM,EACNiZ,QAAQ,EACRzL,MAAO,SAACC,EAAmBvF,GACvB,OAAI8D,GAAiB9D,GACVA,EAAMwC,OAEV,ICuEf,cAoEI,WAAYhU,EAAkBgvB,WAC1B1yB,KAAK2yB,kBAAoBnY,GAAM9W,EAASguB,GAAUgB,EAAYC,mBAC9D3yB,KAAKgmB,eAAiBxL,GAAM9W,EAASsiB,GAAgB0M,EAAY1M,gBACjEhmB,KAAKkmB,gBAAkB1L,GAAM9W,EAASwiB,GAAiBwM,EAAYxM,iBACnElmB,KAAKkrB,gBAAkB1Q,GAAM9W,EAASwnB,GAAiBwH,EAAYxH,iBACnElrB,KAAKmrB,iBAAmB3Q,GAAM9W,EAASynB,GAAkBuH,EAAYvH,kBACrEnrB,KAAKorB,mBAAqB5Q,GAAM9W,EAAS0nB,GAAoBsH,EAAYtH,oBACzEprB,KAAKqrB,iBAAmB7Q,GAAM9W,EAAS2nB,GAAkBqH,EAAYrH,kBACrErrB,KAAKwrB,eAAiBhR,GAAM9W,EAAS8nB,GAAgBkH,EAAYlH,gBACjExrB,KAAK4rB,eAAiBpR,GAAM9W,EAASkoB,GAAgB8G,EAAY9G,gBACjE5rB,KAAK6rB,iBAAmBrR,GAAM9W,EAASmoB,GAAkB6G,EAAY7G,kBACrE7rB,KAAK8rB,kBAAoBtR,GAAM9W,EAASooB,GAAmB4G,EAAY5G,mBACvE9rB,KAAK+rB,gBAAkBvR,GAAM9W,EAASqoB,GAAiB2G,EAAY3G,iBACnE/rB,KAAKisB,oBAAsBzR,GAAM9W,EAASuoB,GAAqByG,EAAYzG,qBAC3EjsB,KAAKksB,qBAAuB1R,GAAM9W,EAASwoB,GAAsBwG,EAAYxG,sBAC7ElsB,KAAKmsB,wBAA0B3R,GAAM9W,EAASyoB,GAAyBuG,EAAYvG,yBACnFnsB,KAAKosB,uBAAyB5R,GAAM9W,EAAS0oB,GAAwBsG,EAAYtG,wBACjFpsB,KAAKusB,eAAiB/R,GAAM9W,EAAS6oB,GAAgBmG,EAAYnG,gBACjEvsB,KAAKwsB,iBAAmBhS,GAAM9W,EAAS8oB,GAAkBkG,EAAYlG,kBACrExsB,KAAKysB,kBAAoBjS,GAAM9W,EAAS+oB,GAAmBiG,EAAYjG,mBACvEzsB,KAAK0sB,gBAAkBlS,GAAM9W,EAASgpB,GAAiBgG,EAAYhG,iBACnE1sB,KAAK4sB,eAAiBpS,GAAM9W,EAASkpB,GAAgB8F,EAAY9F,gBACjE5sB,KAAK6sB,iBAAmBrS,GAAM9W,EAASmpB,GAAkB6F,EAAY7F,kBACrE7sB,KAAK8sB,kBAAoBtS,GAAM9W,EAASopB,GAAmB4F,EAAY5F,mBACvE9sB,KAAK+sB,gBAAkBvS,GAAM9W,EAASqpB,GAAiB2F,EAAY3F,iBACnE/sB,KAAKmyB,UAAY3X,GAAM9W,EAASyuB,GAAWO,EAAYP,WACvDnyB,KAAKgb,MAAQR,GAAM9W,EAASsX,GAAO0X,EAAY1X,OAC/Chb,KAAKgtB,UAAYxS,GAAM9W,EAASspB,GAAW0F,EAAY1F,WACvDhtB,KAAKitB,QAAUzS,GAAM9W,EAASupB,GAASyF,EAAYzF,SACnDjtB,KAAKotB,MAAQ5S,GAAM9W,EAAS0pB,GAAOsF,EAAYE,UAC/C5yB,KAAK0wB,WAAalW,GAAM9W,EAASgtB,GAAYgC,EAAYhC,YACzD1wB,KAAK2tB,SAAWnT,GAAM9W,EAASiqB,GAAU+E,EAAY/E,UACrD3tB,KAAK+wB,UAAYvW,GAAM9W,EAASqtB,GAAW2B,EAAY3B,WACvD/wB,KAAK8wB,YAActW,GAAM9W,EAASotB,GAAa4B,EAAY5B,aAC3D9wB,KAAK6wB,WAAarW,GAAM9W,EAASmtB,GAAY6B,EAAY7B,YACzD7wB,KAAKqtB,cAAgB7S,GAAM9W,EAAS2pB,GAAeqF,EAAYrF,eAC/DrtB,KAAKiM,UAAYuO,GAAM9W,EAASuI,GAAWymB,EAAYzmB,WACvDjM,KAAKytB,WAAajT,GAAM9W,EAAS+pB,GAAYiF,EAAYjF,YACzDztB,KAAK4tB,eAAiBpT,GAAM9W,EAASkqB,GAAgB8E,EAAY9E,gBACjE5tB,KAAK6tB,kBAAoBrT,GAAM9W,EAASmqB,GAAmB6E,EAAY7E,mBACvE7tB,KAAK8tB,cAAgBtT,GAAM9W,EAASoqB,GAAe4E,EAAY5E,eAC/D9tB,KAAKguB,UAAYxT,GAAM9W,EAASsqB,GAAW0E,EAAY1E,WACvDhuB,KAAKiuB,YAAczT,GAAM9W,EAASuqB,GAAayE,EAAYzE,aAC3DjuB,KAAKkuB,aAAe1T,GAAM9W,EAASwqB,GAAcwE,EAAYxE,cAC7DluB,KAAKmuB,WAAa3T,GAAM9W,EAASyqB,GAAYuE,EAAYvE,YACzDnuB,KAAKswB,QAAU9V,GAAM9W,EAAS4sB,GAASoC,EAAYpC,SACnD,IAAMuC,EAAgBrY,GAAM9W,EAAS0qB,GAAUsE,EAAYtE,UAC3DpuB,KAAK8yB,UAAYD,EAAc,GAC/B7yB,KAAK+yB,UAAYF,EAAcA,EAAcz0B,OAAS,EAAI,EAAI,GAC9D4B,KAAKquB,aAAe7T,GAAM9W,EAAS2qB,GAAcqE,EAAYrE,cAC7DruB,KAAKuuB,WAAa/T,GAAM9W,EAAS6qB,GAAYmE,EAAYnE,YACzDvuB,KAAKwuB,aAAehU,GAAM9W,EAAS8qB,GAAckE,EAAYlE,cAC7DxuB,KAAKyuB,cAAgBjU,GAAM9W,EAAS+qB,GAAeiE,EAAYjE,eAC/DzuB,KAAK0uB,YAAclU,GAAM9W,EAASgrB,GAAagE,EAAYhE,aAC3D1uB,KAAKsyB,WAAa9X,GAAM9W,EAAS4uB,GAAYI,EAAYJ,YACzDtyB,KAAKkqB,SAAW1P,GAAM9W,EAASwmB,GAAUwI,EAAYxI,UACrDlqB,KAAK2uB,UAAYnU,GAAM9W,EAASirB,GAAW+D,EAAY/D,WACvD3uB,KAAKuwB,oBAAsB/V,GACvB9W,EACA6sB,GAC+B,QAA/B,EAAAmC,EAAYnC,2BAAmB,QAAImC,EAAY1X,OAEnDhb,KAAKwwB,mBAAqBhW,GACtB9W,EACA8sB,GAC8B,QAA9B,EAAAkC,EAAYlC,0BAAkB,QAAIkC,EAAYM,gBAElDhzB,KAAK4uB,WAAapU,GAAM9W,EAASkrB,GAAY8D,EAAY9D,YACzD5uB,KAAKivB,cAAgBzU,GAAM9W,EAASurB,GAAeyD,EAAYzD,eAC/DjvB,KAAKkvB,UAAY1U,GAAM9W,EAASwrB,GAAWwD,EAAYxD,WACvDlvB,KAAK6vB,gBAAkBrV,GAAM9W,EAASmsB,GAAiB6C,EAAY7C,iBACnE7vB,KAAK+vB,WAAavV,GAAM9W,EAASqsB,GAAY2C,EAAY3C,YACzD/vB,KAAKwyB,sBAAwBhY,GAAM9W,EAAS8uB,GAAuBE,EAAYF,uBAC/ExyB,KAAKyyB,sBAAwBjY,GAAM9W,EAAS+uB,GAAuBC,EAAYD,uBAC/EzyB,KAAK2N,UAAY6M,GAAM9W,EAASiK,GAAW+kB,EAAY/kB,WACvD3N,KAAKkwB,OAAS1V,GAAM9W,EAASwsB,GAAQwC,EAAYxC,QAqCzD,OAlCI+C,EAAAA,UAAAA,UAAA,WACI,OAAOjzB,KAAKitB,QAAU,GAAKjtB,KAAKswB,QAAU,GAAyB,IAApBtwB,KAAK+vB,YAGxDkD,EAAAA,UAAAA,cAAA,WACI,OAAOxX,GAAczb,KAAKkmB,kBAG9B+M,EAAAA,UAAAA,cAAA,WACI,OAA0B,OAAnBjzB,KAAKkvB,WAGhB+D,EAAAA,UAAAA,aAAA,WACI,OAAyB,IAAlBjzB,KAAKkqB,UAGhB+I,EAAAA,UAAAA,uBAAA,WACI,OAAOjzB,KAAKkzB,iBAAmBlzB,KAAKkwB,OAAOC,MAG/C8C,EAAAA,UAAAA,WAAA,WACI,OAAsB,IAAfjzB,KAAKotB,OAGhB6F,EAAAA,UAAAA,cAAA,WACI,OACIjC,GAAShxB,KAAKitB,QAAS,IACvB+D,GAAShxB,KAAKitB,QAAS,WACvB+D,GAAShxB,KAAKitB,QAAS,YACvB+D,GAAShxB,KAAKitB,QAAS,YACvB+D,GAAShxB,KAAKitB,QAAS,WACvB+D,GAAShxB,KAAKitB,QAAS,YAGnC,EApLA,GAsLA,cAII,WAAYvpB,EAAkBgvB,GAC1B1yB,KAAKixB,QAAUzW,GAAM9W,EAASutB,GAASyB,EAAYzB,SACnDjxB,KAAK2xB,OAASnX,GAAM9W,EAASiuB,GAAQe,EAAYf,QAEzD,SARA,GAUA,cAII,WAAYjuB,EAAkBgvB,GAC1B1yB,KAAKkxB,iBAAmB1W,GAAM9W,EAASwtB,GAAkBwB,EAAYxB,kBACrElxB,KAAKuxB,aAAe/W,GAAM9W,EAAS6tB,GAAcmB,EAAYnB,cAErE,SARA,GAWM/W,GAAQ,SAAC9W,EAAkByvB,EAAwC7G,GACrE,IAAMtU,EAAY,IAAIjD,GAChBjU,EAAkB,OAAVwrB,GAAmC,qBAAVA,EAAwBA,EAAM1tB,WAAau0B,EAAW/qB,aAC7F4P,EAAUC,MAAMnX,GAChB,IAAMsyB,EAAS,IAAIrb,GAAOC,EAAUE,QACpC,OAAQib,EAAWnmB,MACf,KAAK,EACD,IAAMkI,EAAQke,EAAOjb,sBACrB,OAAOgb,EAAW3Y,MAAM9W,EAASwV,GAAahE,GAASA,EAAMpU,MAAQqyB,EAAW/qB,cACpF,KAAK,EACD,OAAO+qB,EAAW3Y,MAAM9W,EAAS0vB,EAAOjb,uBAC5C,KAAK,EACD,OAAOgb,EAAW3Y,MAAM9W,EAAS0vB,EAAOhb,wBAC5C,KAAK,EACD,OAAOgb,EAAOjb,sBAClB,KAAK,EACD,OAAQgb,EAAWhN,QACf,IAAK,QACD,OAAO5L,GAAMC,MAAM9W,EAAS0vB,EAAOjb,uBACvC,IAAK,QACD,OAAOkO,GAAU7L,MAAM9W,EAAS0vB,EAAOjb,uBAC3C,IAAK,QACD,OAAOqS,GAAMhQ,MAAM9W,EAAS0vB,EAAOjb,uBACvC,IAAK,SACD,IAAMkb,EAASD,EAAOjb,sBACtB,OAAOsB,GAAS4Z,GAAUA,EAASzZ,GACvC,IAAK,oBACD,IAAM0Z,EAAQF,EAAOjb,sBACrB,OAAOuB,GAAmB4Z,GAASA,EAAQ1Z,GAC/C,IAAK,OACD,OAAOyW,GAAK7V,MAAM9W,EAAS0vB,EAAOjb,wBAItD,EChUMob,GAA2B,yBAS3BC,GAAsB,SAACC,GAEzB,OADkBA,EAAQC,aAAaH,KAEnC,IAAK,MACD,OAAO,EACX,IAAK,QACD,OAAO,EACX,IAAK,QACD,OAAO,EACX,IAAK,SACD,OAAO,EACX,QACI,OAAO,EAEnB,EAEaI,GAAc,SAACF,EAAkBzmB,GAC1C,IAAM4mB,EAAcJ,GAAoBC,GACxC,OAAuB,IAAhBG,GAAoC5mB,IAAS4mB,CACxD,ECdA,cAOI,WAA+BlwB,EAAkB+vB,GAAlB,KAAA/vB,QAAAA,EALtB,KAAAmwB,UAA6B,GAC7B,KAAAC,SAA+B,GAExC,KAAAve,MAAQ,EAGAoe,GAAYF,EAAS,GAIzBzzB,KAAK+zB,OAAS,IAAId,GAAqBvvB,EAASswB,OAAOC,iBAAiBR,EAAS,OAE7ES,GAAkBT,KACdzzB,KAAK+zB,OAAOpB,kBAAkBwB,MAAK,SAACzC,GAAa,OAAAA,EAAW,CAAC,MAC7D+B,EAAQnH,MAAMqG,kBAAoB,MAGR,OAA1B3yB,KAAK+zB,OAAO7E,YAEZuE,EAAQnH,MAAM4C,UAAY,SAIlClvB,KAAKo0B,OAASlwB,EAAYlE,KAAK0D,QAAS+vB,GAEpCE,GAAYF,EAAS,KACrBzzB,KAAKuV,OAAS,IAG1B,SA/BA,GCdatP,GACT,+izBxBDEJ,GAAQ,mEAGRC,GAA+B,qBAAfC,WAA6B,GAAK,IAAIA,WAAW,KAC9D7H,GAAI,EAAGA,GAAI2H,GAAMzH,OAAQF,KAC9B4H,GAAOD,GAAMR,WAAWnH,KAAMA,GyBDlC,IzBIO,IAAM8H,GAAS,SAACC,GACnB,IAEI/H,EAEAgI,EACAC,EACAC,EACAC,EAPAC,EAA+B,IAAhBL,EAAO7H,OACtBmI,EAAMN,EAAO7H,OAEbuB,EAAI,EAM0B,MAA9BsG,EAAOA,EAAO7H,OAAS,KACvBkI,IACkC,MAA9BL,EAAOA,EAAO7H,OAAS,IACvBkI,KAIR,IAAME,EACqB,qBAAhBC,aACe,qBAAfV,YAC+B,qBAA/BA,WAAWjH,UAAUkE,MACtB,IAAIyD,YAAYH,GAChB,IAAI9H,MAAM8H,GACdI,EAAQlI,MAAMC,QAAQ+H,GAAUA,EAAS,IAAIT,WAAWS,GAE9D,IAAKtI,EAAI,EAAGA,EAAIqI,EAAKrI,GAAK,EACtBgI,EAAWJ,GAAOG,EAAOZ,WAAWnH,IACpCiI,EAAWL,GAAOG,EAAOZ,WAAWnH,EAAI,IACxCkI,EAAWN,GAAOG,EAAOZ,WAAWnH,EAAI,IACxCmI,EAAWP,GAAOG,EAAOZ,WAAWnH,EAAI,IAExCwI,EAAM/G,KAAQuG,GAAY,EAAMC,GAAY,EAC5CO,EAAM/G,MAAoB,GAAXwG,IAAkB,EAAMC,GAAY,EACnDM,EAAM/G,MAAoB,EAAXyG,IAAiB,EAAiB,GAAXC,EAG1C,OAAOG,CACX,EAEaG,GAAkB,SAACH,GAG5B,IAFA,IAAMpI,EAASoI,EAAOpI,OAChBsI,EAAQ,GACLxI,EAAI,EAAGA,EAAIE,EAAQF,GAAK,EAC7BwI,EAAMnI,KAAMiI,EAAOtI,EAAI,IAAM,EAAKsI,EAAOtI,IAE7C,OAAOwI,CACX,EAEaE,GAAkB,SAACJ,GAG5B,IAFA,IAAMpI,EAASoI,EAAOpI,OAChBsI,EAAQ,GACLxI,EAAI,EAAGA,EAAIE,EAAQF,GAAK,EAC7BwI,EAAMnI,KAAMiI,EAAOtI,EAAI,IAAM,GAAOsI,EAAOtI,EAAI,IAAM,GAAOsI,EAAOtI,EAAI,IAAM,EAAKsI,EAAOtI,IAE7F,OAAOwI,CACX,E0B1DaG,GAAiB,EAGjBC,GAAiB,GAQjBC,GAAqB,EAcrBC,GAA6B,OAAWH,GAKxCI,IAF2B,GAAKJ,IAEc,EAuB9CK,GAnB4BF,IAFC,MAASH,IAQN,GAmBhCM,GAAoC,OAAWL,GAK/CM,IAF8B,GA7CXN,GAAiBD,IA+CgB,EAE3DQ,GAAU,SAACC,EAA8BC,EAAeC,GAC1D,OAAIF,EAAKtE,MACEsE,EAAKtE,MAAMuE,EAAOC,GAGtB,IAAIC,YAAYjJ,MAAMM,UAAUkE,MAAM/D,KAAKqI,EAAMC,EAAOC,GACnE,EAEME,GAAU,SAACJ,EAA8BC,EAAeC,GAC1D,OAAIF,EAAKtE,MACEsE,EAAKtE,MAAMuE,EAAOC,GAGtB,IAAIG,YAAYnJ,MAAMM,UAAUkE,MAAM/D,KAAKqI,EAAMC,EAAOC,GACnE,EAEaI,GAAuB,SAAC3B,EAAgB4B,GACjD,IAAMrB,EAASR,GAAOC,GAChB6B,EAAStJ,MAAMC,QAAQ+H,GAAUI,GAAgBJ,GAAU,IAAImB,YAAYnB,GAC3EuB,EAASvJ,MAAMC,QAAQ+H,GAAUG,GAAgBH,GAAU,IAAIiB,YAAYjB,GAC3EwB,EAAe,GAEftC,EAAQ2B,GAAQU,EAAQC,EAAe,EAAGF,EAAO,GAAK,GACtDG,EACY,IAAdH,EAAO,GACDT,GAAQU,GAASC,EAAeF,EAAO,IAAM,GAC7CJ,GAAQI,EAAQpD,KAAKwD,MAAMF,EAAeF,EAAO,IAAM,IAEjE,OAAO,IAAIK,GAAKL,EAAO,GAAIA,EAAO,GAAIA,EAAO,GAAIA,EAAO,GAAIpC,EAAOuC,EACvE,gBAUI,WACIG,EACAC,EACAC,EACAC,EACA7C,EACAuC,GAEAjI,KAAKoI,aAAeA,EACpBpI,KAAKqI,WAAaA,EAClBrI,KAAKsI,UAAYA,EACjBtI,KAAKuI,eAAiBA,EACtBvI,KAAK0F,MAAQA,EACb1F,KAAKiI,KAAOA,EAkDpB,OAzCIE,EAAAA,UAAAA,IAAA,SAAIxC,GACA,IAAI6C,EACJ,GAAI7C,GAAa,EAAG,CAChB,GAAIA,EAAY,OAAYA,EAAY,OAAWA,GAAa,MAM5D,OADA6C,IADAA,EAAKxI,KAAK0F,MAAMC,GAAakB,MACjBE,KAAuBpB,EAAYsB,IACxCjH,KAAKiI,KAAKO,GAGrB,GAAI7C,GAAa,MASb,OADA6C,IADAA,EAAKxI,KAAK0F,MAAMsB,IAA+BrB,EAAY,OAAWkB,OAC1DE,KAAuBpB,EAAYsB,IACxCjH,KAAKiI,KAAKO,GAGrB,GAAI7C,EAAY3F,KAAKsI,UAOjB,OALAE,EAAKtB,GAAwBC,IAAqCxB,GAAamB,IAC/E0B,EAAKxI,KAAK0F,MAAM8C,GAChBA,GAAO7C,GAAakB,GAAkBO,GAEtCoB,IADAA,EAAKxI,KAAK0F,MAAM8C,KACJzB,KAAuBpB,EAAYsB,IACxCjH,KAAKiI,KAAKO,GAErB,GAAI7C,GAAa,QACb,OAAO3F,KAAKiI,KAAKjI,KAAKuI,gBAK9B,OAAOvI,KAAKqI,YAEpB,KD7KMxC,GAAQ,mEAGRC,GAA+B,qBAAfC,WAA6B,GAAK,IAAIA,WAAW,KAC9D7H,GAAI,EAAGA,GAAI2H,GAAMzH,OAAQF,KAC9B4H,GAAOD,GAAMR,WAAWnH,KAAMA,GEDlC,ICqeKm2B,GDreCC,GAAU,EACV3rB,GAAK,EACLC,GAAK,EACL2rB,GAAU,EACVC,GAAS,EAETC,GAAc,EACdC,GAAI,EACJC,GAAI,EACJC,GAAI,GACJC,GAAK,GACLC,GAAM,GACN3rB,GAAM,GACN4rB,GAAwB,GACxB9pB,GAAK,GAqBE/F,GAAe,SAACC,GAIzB,IAHA,IAAMC,EAAa,GACflH,EAAI,EACFE,EAAS+G,EAAI/G,OACZF,EAAIE,GAAQ,CACf,IAAM0C,EAAQqE,EAAIE,WAAWnH,KAC7B,GAAI4C,GAAS,OAAUA,GAAS,OAAU5C,EAAIE,EAAQ,CAClD,IAAMkH,EAAQH,EAAIE,WAAWnH,KACJ,SAAZ,MAARoH,GACDF,EAAW7G,OAAe,KAARuC,IAAkB,KAAe,KAARwE,GAAiB,QAE5DF,EAAW7G,KAAKuC,GAChB5C,UAGJkH,EAAW7G,KAAKuC,GAGxB,OAAOsE,CACX,EAEaG,GAAgB,eAAC,aAAAC,EAAAA,UAAAA,OAAAA,IAAAJ,EAAAA,GAAAA,UAAAA,GAC1B,GAAItF,OAAOyF,cACP,OAAOzF,OAAOyF,cAAa,MAApBzF,OAAwBsF,GAGnC,IAAMhH,EAASgH,EAAWhH,OAC1B,IAAKA,EACD,MAAO,GAOX,IAJA,IAAMqH,EAAY,GAEdC,GAAS,EACTnE,EAAS,KACJmE,EAAQtH,GAAQ,CACrB,IAAIuH,EAAYP,EAAWM,GACvBC,GAAa,MACbF,EAAUlH,KAAKoH,IAEfA,GAAa,MACbF,EAAUlH,KAAyB,OAAnBoH,GAAa,IAAeA,EAAY,KAAS,SAEjED,EAAQ,IAAMtH,GAAUqH,EAAUrH,OAAS,SAC3CmD,GAAUzB,OAAO8F,aAAY,MAAnB9F,OAAuB2F,GACjCA,EAAUrH,OAAS,GAG3B,OAAOmD,CACX,EAEaiK,GAAc5D,GAAqB3B,IAEnCqF,GAAoB,OACpBC,GAAgB,OAIhBypB,GAAmB,SAACrvB,GAA8B,OAAA6F,GAAYe,IAAI5G,EAAU,EAEnFsvB,GAAwB,SAACC,EAAuBroB,EAAsBnH,GACxE,IAAI6H,EAAY7H,EAAQ,EACpB+G,EAAOI,EAAWU,GAChBT,EAAUD,EAAWnH,EAAQ,GAC7BtE,EAAOyL,EAAWnH,GAExB,GAAIoH,IAAYnE,IAAMvH,IAASwH,GAC3B,OAAO0C,GAIX,GAAIwB,IAAYnE,IAAMmE,IAAYlE,IAAMkE,IAAYynB,GAChD,OAAOhpB,GAIX,GAAInK,IAASuH,IAAMvH,IAASwH,IAAMxH,IAASmzB,GACvC,OAAOhpB,GAKX,GAAIuB,IAAY4nB,KAAwC,IAAnC,CAACA,GAAGC,GAAGE,GAAIC,IAAKtoB,QAAQpL,GACzC,OAAOkK,GAIX,IAAKwB,IAAY+nB,IAAM/nB,IAAY6nB,MAAOvzB,IAASuzB,IAAKvzB,IAASwzB,IAC7D,OAAOtpB,GAIX,IAAKwB,IAAYgoB,IAAOhoB,IAAY8nB,KAAMxzB,IAASwzB,GAC/C,OAAOtpB,GAIX,GAAIlK,IAAS+H,IAAO/H,IAASozB,GACzB,OAAOlpB,GAIX,GAAIlK,IAASqzB,GACT,OAAOnpB,GAIX,GAAIwB,IAAYwnB,GACZ,OAAOhpB,GAIX,GAAIwB,IAAY3D,IAAO/H,IAAS2zB,GAAuB,CACnD,KAAOtoB,IAAS+nB,IACZ/nB,EAAOI,IAAaU,GAExB,GAAId,IAASsoB,GACT,OAAOzpB,GAOf,GAAIwB,IAAY7B,IAAM7J,IAAS6J,GAAI,CAE/B,IADA,IAAIkqB,EAAU,EACP1oB,IAASxB,IACZkqB,IACA1oB,EAAOI,IAAaU,GAExB,GAAI4nB,EAAU,IAAM,EAChB,OAAO7pB,GAIf,OAAOC,EACX,EAiBa6pB,GAAkB,SAACjwB,GAC5B,IAAMC,EAAaF,GAAaC,GAC1B/G,EAASgH,EAAWhH,OACtBsH,EAAQ,EACR0I,EAAU,EACRvB,EAAazH,EAAWyI,IAAImnB,IAElC,MAAO,CACH5zB,KAAM,WACF,GAAIsE,GAAStH,EACT,MAAO,CAACoD,MAAM,EAAMV,MAAO,MAI/B,IADA,IAAIu0B,EAAgB/pB,GAEhB5F,EAAQtH,IACPi3B,EAAgBJ,GAAsB7vB,EAAYyH,IAAcnH,MAAY4F,KAGjF,GAAI+pB,IAAkB/pB,IAAqB5F,IAAUtH,EAAQ,CACzD,IAAM0C,EAAQyE,GAAc5G,MAAM,KAAMyG,EAAWpC,MAAMoL,EAAS1I,IAElE,OADA0I,EAAU1I,EACH,CAAC5E,MAAK,EAAEU,MAAM,GAGzB,MAAO,CAACA,MAAM,EAAMV,MAAO,OAMvC,EAEaw0B,GAAiB,SAACnwB,GAM3B,IALA,IAGIowB,EAHEC,EAAUJ,GAAgBjwB,GAE1BswB,EAAY,KAGTF,EAAKC,EAAQp0B,QAAQI,MACtB+zB,EAAGz0B,OACH20B,EAAUl3B,KAAKg3B,EAAGz0B,MAAMkC,SAIhC,OAAOyyB,CACX,EE5OMC,GAAkB,SAACnxB,GACrB,IAAMoxB,EAAc,IAEpB,GAAIpxB,EAASqxB,YAAa,CACtB,IAAMC,EAAQtxB,EAASqxB,cACvB,GAAIC,EAAMxxB,sBAAuB,CAC7B,IAAMyxB,EAAcvxB,EAASwxB,cAAc,aAC3CD,EAAYxJ,MAAMjpB,OAAYsyB,EAAW,KACzCG,EAAYxJ,MAAMW,QAAU,QAC5B1oB,EAAS5C,KAAKq0B,YAAYF,GAE1BD,EAAMI,WAAWH,GACjB,IAAMI,EAAcL,EAAMxxB,wBACpB8xB,EAAczxB,KAAKqX,MAAMma,EAAY7yB,QAE3C,GADAkB,EAAS5C,KAAKy0B,YAAYN,GACtBK,IAAgBR,EAChB,OAAO,GAKnB,OAAO,CACX,EAEMU,GAAmB,SAAC9xB,GACtB,IAAMuxB,EAAcvxB,EAASwxB,cAAc,aAC3CD,EAAYxJ,MAAMlpB,MAAQ,OAC1B0yB,EAAYxJ,MAAMW,QAAU,QAC5B6I,EAAYxJ,MAAMqB,SAAW,OAC7BmI,EAAYxJ,MAAMe,cAAgB,MAClCyI,EAAYxJ,MAAMgK,YAAc,MAChC/xB,EAAS5C,KAAKq0B,YAAYF,GAC1B,IAAMD,EAAQtxB,EAASqxB,cAEvBE,EAAYS,UAAiC,mBAAd,GAAGC,OAAwB,YAAYA,OAAO,IAAM,GAEnF,IAAMryB,EAAO2xB,EAAYW,WAEnBC,EAAWxxB,EAAaf,EAAK8D,MAAM4F,KAAI,SAAC3P,GAAM,SAAcA,EAAE,IAChEy4B,EAAS,EACTlqB,EAAgB,CAAC,EAGfmqB,EAAWF,EAASG,OAAM,SAACC,EAAM54B,GACnC23B,EAAMkB,SAAS5yB,EAAMwyB,GACrBd,EAAMmB,OAAO7yB,EAAMwyB,EAASG,EAAK14B,QACjC,IAAM4F,EAAO6xB,EAAMxxB,wBAEnBsyB,GAAUG,EAAK14B,OACf,IAAM64B,EAAajzB,EAAKT,EAAIkJ,EAAKlJ,GAAKS,EAAKnC,EAAI4K,EAAK5K,EAGpD,OADA4K,EAAOzI,EACG,IAAN9F,GAIG+4B,KAIX,OADA1yB,EAAS5C,KAAKy0B,YAAYN,GACnBc,CACX,EAEMM,GAAW,WAAe,MAAmC,qBAA5B,IAAIC,OAAQC,WAA2B,EAExEC,GAAmB,WAAe,MAA6C,kBAAtC,IAAIC,gBAAiBC,YAAyB,EAEvFC,GAAU,SAACjzB,GACb,IAAMkzB,EAAM,IAAIN,MACVO,EAASnzB,EAASwxB,cAAc,UAChC4B,EAAMD,EAAOE,WAAW,MAC9B,IAAKD,EACD,OAAO,EAGXF,EAAII,IAAM,oEAEV,IACIF,EAAIG,UAAUL,EAAK,EAAG,GACtBC,EAAOK,YACT,MAAO12B,IACL,OAAO,EAEX,OAAO,CACX,EAEM22B,GAAe,SAAC/vB,GAClB,OAAY,IAAZA,EAAK,IAAwB,MAAZA,EAAK,IAA0B,IAAZA,EAAK,IAAwB,MAAZA,EAAK,EAA1D,EAEEgwB,GAAoB,SAAC1zB,GACvB,IAAMmzB,EAASnzB,EAASwxB,cAAc,UAChC5M,EAAO,IACbuO,EAAOt0B,MAAQ+lB,EACfuO,EAAOr0B,OAAS8lB,EAChB,IAAMwO,EAAMD,EAAOE,WAAW,MAC9B,IAAKD,EACD,OAAO32B,QAAQC,QAAO,GAE1B02B,EAAIO,UAAY,iBAChBP,EAAIQ,SAAS,EAAG,EAAGhP,EAAMA,GAEzB,IAAMsO,EAAM,IAAIN,MACViB,EAAgBV,EAAOK,YAC7BN,EAAII,IAAMO,EACV,IAAMC,EAAMC,GAAuBnP,EAAMA,EAAM,EAAG,EAAGsO,GAIrD,OAHAE,EAAIO,UAAY,MAChBP,EAAIQ,SAAS,EAAG,EAAGhP,EAAMA,GAElBoP,GAAkBF,GACpB52B,MAAK,SAACg2B,GACHE,EAAIG,UAAUL,EAAK,EAAG,GACtB,IAAMxvB,EAAO0vB,EAAIa,aAAa,EAAG,EAAGrP,EAAMA,GAAMlhB,KAChD0vB,EAAIO,UAAY,MAChBP,EAAIQ,SAAS,EAAG,EAAGhP,EAAMA,GAEzB,IAAMhlB,EAAOI,EAASwxB,cAAc,OAIpC,OAHA5xB,EAAKmoB,MAAMpB,gBAAkB,OAAOkN,EAAa,IACjDj0B,EAAKmoB,MAAMjpB,OAAY8lB,EAAI,KAEpB6O,GAAa/vB,GACdswB,GAAkBD,GAAuBnP,EAAMA,EAAM,EAAG,EAAGhlB,IAC3DnD,QAAQC,QAAO,MAExBQ,MAAK,SAACg2B,GAGH,OAFAE,EAAIG,UAAUL,EAAK,EAAG,GAEfO,GAAaL,EAAIa,aAAa,EAAG,EAAGrP,EAAMA,GAAMlhB,SAE1DwwB,OAAM,WAAM,QAAK,GAC1B,EAEaH,GAAyB,SAClCl1B,EACAC,EACAE,EACA1B,EACAsC,GAEA,IAAMu0B,EAAQ,6BACRL,EAAM9zB,SAASo0B,gBAAgBD,EAAO,OACtCE,EAAgBr0B,SAASo0B,gBAAgBD,EAAO,iBAatD,OAZAL,EAAIQ,eAAe,KAAM,QAASz1B,EAAMxE,YACxCy5B,EAAIQ,eAAe,KAAM,SAAUx1B,EAAOzE,YAE1Cg6B,EAAcC,eAAe,KAAM,QAAS,QAC5CD,EAAcC,eAAe,KAAM,SAAU,QAC7CD,EAAcC,eAAe,KAAM,IAAKt1B,EAAE3E,YAC1Cg6B,EAAcC,eAAe,KAAM,IAAKh3B,EAAEjD,YAC1Cg6B,EAAcC,eAAe,KAAM,4BAA6B,QAChER,EAAIrC,YAAY4C,GAEhBA,EAAc5C,YAAY7xB,GAEnBk0B,CACX,EAEaE,GAAoB,SAACF,GAC9B,OAAO,IAAIr3B,SAAQ,SAACD,EAASE,GACzB,IAAMw2B,EAAM,IAAIN,MAChBM,EAAIqB,OAAS,WAAM,OAAA/3B,EAAQ02B,EAAI,EAC/BA,EAAIsB,QAAU93B,EAEdw2B,EAAII,IAAM,oCAAoCmB,oBAAmB,IAAIC,eAAgBC,kBAAkBb,MAE/G,EAEac,GAAW,CAChBC,2BAEA,IAAMt4B,EAAQ40B,GAAgBnxB,UAE9B,OADA1F,OAAOw6B,eAAeF,GAAU,uBAAwB,CAACr4B,MAAK,IACvDA,GAEPw4B,4BAEA,IAAMx4B,EAAQq4B,GAASC,sBAAwB/C,GAAiB9xB,UAEhE,OADA1F,OAAOw6B,eAAeF,GAAU,wBAAyB,CAACr4B,MAAK,IACxDA,GAEPy4B,0BAEA,IAAMz4B,EAAQ02B,GAAQjzB,UAEtB,OADA1F,OAAOw6B,eAAeF,GAAU,sBAAuB,CAACr4B,MAAK,IACtDA,GAEP04B,oCAEA,IAAM14B,EACoB,oBAAftC,MAAMoE,MAA+C,oBAAjBoxB,OAAOyF,MAC5CxB,GAAkB1zB,UAClBvD,QAAQD,SAAQ,GAE1B,OADAlC,OAAOw6B,eAAeF,GAAU,gCAAiC,CAACr4B,MAAK,IAChEA,GAEP44B,0BAEA,IAAM54B,EAAQo2B,KAEd,OADAr4B,OAAOw6B,eAAeF,GAAU,sBAAuB,CAACr4B,MAAK,IACtDA,GAEP64B,4BAEA,IAAM74B,EAAQu2B,KAEd,OADAx4B,OAAOw6B,eAAeF,GAAU,wBAAyB,CAACr4B,MAAK,IACxDA,GAEP84B,uBAEA,IAAM94B,EAAQ,oBAAqB,IAAIw2B,eAEvC,OADAz4B,OAAOw6B,eAAeF,GAAU,mBAAoB,CAACr4B,MAAK,IACnDA,GAEP+4B,uCAGA,IAAM/4B,IAA2B,qBAATg5B,OAAyBA,KAAaC,WAE9D,OADAl7B,OAAOw6B,eAAeF,GAAU,mCAAoC,CAACr4B,MAAK,IACnEA,ICnNf,cAII,WAAYg2B,EAAc1C,GACtBp0B,KAAK82B,KAAOA,EACZ92B,KAAKo0B,OAASA,EAEtB,SARA,GAUa4F,GAAkB,SAC3Bt2B,EACA5C,EACAizB,EACA5vB,GAEA,IAAMuyB,EAAWuD,GAAUn5B,EAAOizB,GAC5BmG,EAA2B,GAC7BvD,EAAS,EAkCb,OAjCAD,EAASrqB,SAAQ,SAACyqB,GACd,GAAI/C,EAAOvD,mBAAmBpyB,QAAU04B,EAAKqD,OAAO/7B,OAAS,EACzD,GAAI+6B,GAASC,qBAAsB,CAC/B,IAAMgB,EAAcxE,GAAYzxB,EAAMwyB,EAAQG,EAAK14B,QAAQi8B,iBAC3D,GAAID,EAAYh8B,OAAS,EAAG,CACxB,IAAMk8B,EAAcC,GAAiBzD,GACjC0D,EAAY,EAChBF,EAAYjuB,SAAQ,SAACouB,GACjBP,EAAW37B,KACP,IAAIm8B,GACAD,EACAn3B,EAAOq3B,gBACHj3B,EACAkyB,GAAYzxB,EAAMq2B,EAAY7D,EAAQ8D,EAAWr8B,QAAQi8B,oBAIrEG,GAAaC,EAAWr8B,eAG5B87B,EAAW37B,KAAK,IAAIm8B,GAAW5D,EAAMxzB,EAAOq3B,gBAAgBj3B,EAAS02B,SAEtE,CACH,IAAMQ,EAAkBz2B,EAAK02B,UAAU/D,EAAK14B,QAC5C87B,EAAW37B,KAAK,IAAIm8B,GAAW5D,EAAMgE,GAAiBp3B,EAASS,KAC/DA,EAAOy2B,OAEHzB,GAASC,uBACjBj1B,EAAOA,EAAK02B,UAAU/D,EAAK14B,SAE/Bu4B,GAAUG,EAAK14B,UAGZ87B,CACX,EAEMY,GAAmB,SAACp3B,EAAkBS,GACxC,IAAM42B,EAAgB52B,EAAK42B,cAC3B,GAAIA,EAAe,CACf,IAAMC,EAAUD,EAAchF,cAAc,sBAC5CiF,EAAQhF,YAAY7xB,EAAK82B,WAAU,IACnC,IAAMC,EAAa/2B,EAAK+2B,WACxB,GAAIA,EAAY,CACZA,EAAWC,aAAaH,EAAS72B,GACjC,IAAMiwB,EAASlwB,EAAYR,EAASs3B,GAIpC,OAHIA,EAAQvE,YACRyE,EAAWC,aAAaH,EAAQvE,WAAYuE,GAEzC5G,GAIf,OAAO9wB,EAAOW,KAClB,EAEM2xB,GAAc,SAACzxB,EAAYwyB,EAAgBv4B,GAC7C,IAAM28B,EAAgB52B,EAAK42B,cAC3B,IAAKA,EACD,MAAM,IAAIt2B,MAAM,8BAEpB,IAAMoxB,EAAQkF,EAAcnF,cAG5B,OAFAC,EAAMkB,SAAS5yB,EAAMwyB,GACrBd,EAAMmB,OAAO7yB,EAAMwyB,EAASv4B,GACrBy3B,CACX,EAEa0E,GAAmB,SAACz5B,GAC7B,GAAIq4B,GAASU,iCAAkC,CAE3C,IAAMuB,EAAY,IAAKtB,KAAaC,eAAU,EAAQ,CAACsB,YAAa,aAEpE,OAAO78B,MAAMoE,KAAKw4B,EAAUE,QAAQx6B,IAAQ+M,KAAI,SAACytB,GAAiB,OAAAA,EAAQA,OAAO,IAGrF,OAAOhG,GAAex0B,EAC1B,EAEMy6B,GAAe,SAACz6B,EAAeizB,GACjC,GAAIoF,GAASU,iCAAkC,CAE3C,IAAMuB,EAAY,IAAKtB,KAAaC,eAAU,EAAQ,CAClDsB,YAAa,SAGjB,OAAO78B,MAAMoE,KAAKw4B,EAAUE,QAAQx6B,IAAQ+M,KAAI,SAACytB,GAAiB,OAAAA,EAAQA,OAAO,IAGrF,OAAOE,GAAW16B,EAAOizB,EAC7B,EAEMkG,GAAY,SAACn5B,EAAeizB,GAC9B,OAAgC,IAAzBA,EAAO1G,cAAsBkN,GAAiBz5B,GAASy6B,GAAaz6B,EAAOizB,EACtF,EAGM0H,GAAiB,CAAC,GAAQ,IAAQ,KAAQ,MAAS,MAAS,KAAQ,MAEpED,GAAa,SAACr2B,EAAa4uB,GAS7B,IARA,IAMIwB,EANEC,EAAUrnB,GAAYhJ,EAAK,CAC7B8G,UAAW8nB,EAAO9nB,UAClB0B,UAAmC,eAAxBomB,EAAO1F,aAA4C,aAAe0F,EAAOpmB,YAGlF+tB,EAAQ,gBAIV,GAAInG,EAAGz0B,MAAO,CACV,IAAMA,EAAQy0B,EAAGz0B,MAAMkC,QACjBoC,EAAaF,EAAapE,GAC5B66B,EAAO,GACXv2B,EAAWiH,SAAQ,SAAC1G,IAC2B,IAAvC81B,GAAejvB,QAAQ7G,GACvBg2B,GAAQp2B,EAAcI,IAElBg2B,EAAKv9B,QACLs9B,EAAMn9B,KAAKo9B,GAEfD,EAAMn9B,KAAKgH,EAAcI,IACzBg2B,EAAO,OAIXA,EAAKv9B,QACLs9B,EAAMn9B,KAAKo9B,OAlBdpG,EAAKC,EAAQp0B,QAAQI,UAuB9B,OAAOk6B,CACX,ECxJA,cAII,WAAYh4B,EAAkBS,EAAY4vB,GACtC/zB,KAAK82B,KAAO5H,GAAU/qB,EAAK8D,KAAM8rB,EAAO9E,eACxCjvB,KAAKk6B,WAAaF,GAAgBt2B,EAAS1D,KAAK82B,KAAM/C,EAAQ5vB,GAEtE,SARA,GAUM+qB,GAAY,SAAC4H,EAAc5H,GAC7B,OAAQA,GACJ,KAAK,EACD,OAAO4H,EAAKjgB,cAChB,KAAK,EACD,OAAOigB,EAAK8E,QAAQC,GAAYC,IACpC,KAAK,EACD,OAAOhF,EAAKvb,cAChB,QACI,OAAOub,EAEnB,EAEM+E,GAAa,2BAEbC,GAAa,SAACC,EAAWC,EAAYC,GACvC,OAAIF,EAAE39B,OAAS,EACJ49B,EAAKC,EAAG1gB,cAGZwgB,CACX,ECjCA,eAKI,WAAYr4B,EAAkB+zB,GAA9B,MACIyE,EAAAA,KAAAA,KAAMx4B,EAAS+zB,IAAI,YACnB0E,EAAKtE,IAAMJ,EAAI2E,YAAc3E,EAAII,IACjCsE,EAAKE,eAAiB5E,EAAI6E,aAC1BH,EAAKI,gBAAkB9E,EAAI+E,cAC3BL,EAAKz4B,QAAQinB,MAAMC,SAASuR,EAAKtE,OAEzC,OAZ2Cj4B,EAAAA,EAAAA,GAY3C,EAZA,CAA2C68B,ICA3C,eAKI,WAAY/4B,EAAkBg0B,GAA9B,MACIwE,EAAAA,KAAAA,KAAMx4B,EAASg0B,IAAO,YACtByE,EAAKzE,OAASA,EACdyE,EAAKE,eAAiB3E,EAAOt0B,MAC7B+4B,EAAKI,gBAAkB7E,EAAOr0B,SAEtC,OAX4CzD,EAAAA,EAAAA,GAW5C,EAXA,CAA4C68B,ICC5C,eAKI,WAAY/4B,EAAkB+zB,GAA9B,MACIyE,EAAAA,KAAAA,KAAMx4B,EAAS+zB,IAAI,KACbn3B,EAAI,IAAI24B,cACR7E,EAASlwB,EAAYR,EAAS+zB,UACpCA,EAAIiF,aAAa,QAAYtI,EAAOhxB,MAAK,MACzCq0B,EAAIiF,aAAa,SAAatI,EAAO/wB,OAAM,MAE3C84B,EAAK9D,IAAM,sBAAsBW,mBAAmB14B,EAAE44B,kBAAkBzB,IACxE0E,EAAKE,eAAiB5E,EAAIr0B,MAAMu5B,QAAQ77B,MACxCq7B,EAAKI,gBAAkB9E,EAAIp0B,OAAOs5B,QAAQ77B,MAE1Cq7B,EAAKz4B,QAAQinB,MAAMC,SAASuR,EAAK9D,OAEzC,OAlByCz4B,EAAAA,EAAAA,GAkBzC,EAlBA,CAAyC68B,ICFzC,eAGI,WAAY/4B,EAAkB+vB,GAA9B,MACIyI,EAAAA,KAAAA,KAAMx4B,EAAS+vB,IAAQ,YACvB0I,EAAKr7B,MAAQ2yB,EAAQ3yB,QAE7B,OAPwClB,EAAAA,EAAAA,GAOxC,EAPA,CAAwC68B,ICAxC,eAII,WAAY/4B,EAAkB+vB,GAA9B,MACIyI,EAAAA,KAAAA,KAAMx4B,EAAS+vB,IAAQ,YACvB0I,EAAK50B,MAAQksB,EAAQlsB,MACrB40B,EAAKS,SAAuC,mBAArBnJ,EAAQmJ,WAA+C,IAArBnJ,EAAQmJ,WAEzE,OATwCh9B,EAAAA,EAAAA,GASxC,EATA,CAAwC68B,ICOlCI,GAAgD,CAClD,CACI7vB,KAAM,GACNuI,MAAO,EACPoC,KAAM,KACND,OAAQ,IAIVolB,GAA6C,CAC/C,CACI9vB,KAAM,GACNuI,MAAO,EACPmC,OAAQ,KAIVqlB,GAAsB,SAAC3I,GACzB,OAAIA,EAAOhxB,MAAQgxB,EAAO/wB,OACf,IAAIC,EAAO8wB,EAAOlxB,MAAQkxB,EAAOhxB,MAAQgxB,EAAO/wB,QAAU,EAAG+wB,EAAOjxB,IAAKixB,EAAO/wB,OAAQ+wB,EAAO/wB,QAC/F+wB,EAAOhxB,MAAQgxB,EAAO/wB,OACtB,IAAIC,EAAO8wB,EAAOlxB,KAAMkxB,EAAOjxB,KAAOixB,EAAO/wB,OAAS+wB,EAAOhxB,OAAS,EAAGgxB,EAAOhxB,MAAOgxB,EAAOhxB,OAElGgxB,CACX,EAEM4I,GAAgB,SAAC74B,GACnB,IAAMrD,EAAQqD,EAAK6I,OAASiwB,GAAW,IAAIz+B,MAAM2F,EAAKrD,MAAM1C,OAAS,GAAGc,KAAK,UAAYiF,EAAKrD,MAE9F,OAAwB,IAAjBA,EAAM1C,OAAe+F,EAAK+4B,aAAe,GAAKp8B,CACzD,EAEaq8B,GAAW,WACXC,GAAQ,QACRH,GAAW,WACXI,GAAc,UAE3B,eAKI,WAAY35B,EAAkB45B,GAA9B,MACIpB,EAAAA,KAAAA,KAAMx4B,EAAS45B,IAAM,KA2BrB,OA1BAnB,EAAKnvB,KAAOswB,EAAMtwB,KAAK6J,cACvBslB,EAAKoB,QAAUD,EAAMC,QACrBpB,EAAKr7B,MAAQk8B,GAAcM,GAEvBnB,EAAKnvB,OAASmwB,IAAYhB,EAAKnvB,OAASowB,KACxCjB,EAAKpI,OAAO7N,gBAAkB,WAC9BiW,EAAKpI,OAAOnI,eACRuQ,EAAKpI,OAAOlI,iBACZsQ,EAAKpI,OAAOjI,kBACZqQ,EAAKpI,OAAOhI,gBACR,WACRoQ,EAAKpI,OAAOnH,eACRuP,EAAKpI,OAAOlH,iBACZsP,EAAKpI,OAAOjH,kBACZqP,EAAKpI,OAAOhH,gBACR,EACRoP,EAAKpI,OAAOxH,eACR4P,EAAKpI,OAAOvH,iBACZ2P,EAAKpI,OAAOtH,kBACZ0P,EAAKpI,OAAOrH,gBAAe,EAE/ByP,EAAKpI,OAAO/N,eAAiB,CAAC,GAC9BmW,EAAKpI,OAAO5I,iBAAmB,CAAC,GAChCgR,EAAK/H,OAAS2I,GAAoBZ,EAAK/H,SAGnC+H,EAAKnvB,MACT,KAAKmwB,GACDhB,EAAKpI,OAAO7H,qBACRiQ,EAAKpI,OAAO9H,oBACZkQ,EAAKpI,OAAO5H,wBACZgQ,EAAKpI,OAAO3H,uBACRyQ,GACR,MACJ,KAAKO,GACDjB,EAAKpI,OAAO7H,qBACRiQ,EAAKpI,OAAO9H,oBACZkQ,EAAKpI,OAAO5H,wBACZgQ,EAAKpI,OAAO3H,uBACR0Q,YAIxB,OAlD2Cl9B,EAAAA,EAAAA,GAkD3C,EAlDA,CAA2C68B,IC5C3C,eAEI,WAAY/4B,EAAkB+vB,GAA9B,MACIyI,EAAAA,KAAAA,KAAMx4B,EAAS+vB,IAAQ,KACjB+J,EAAS/J,EAAQ/lB,QAAQ+lB,EAAQgK,eAAiB,UACxDtB,EAAKr7B,MAAQ08B,GAASA,EAAO1G,MAAa,KAElD,OAP4Cl3B,EAAAA,EAAAA,GAO5C,EAPA,CAA4C68B,ICA5C,eAEI,WAAY/4B,EAAkB+vB,GAA9B,MACIyI,EAAAA,KAAAA,KAAMx4B,EAAS+vB,IAAQ,YACvB0I,EAAKr7B,MAAQ2yB,EAAQ3yB,QAE7B,OAN8ClB,EAAAA,EAAAA,GAM9C,EANA,CAA8C68B,ICG9C,eAOI,WAAY/4B,EAAkBg6B,GAA9B,MACIxB,EAAAA,KAAAA,KAAMx4B,EAASg6B,IAAO,KACtBvB,EAAKtE,IAAM6F,EAAO7F,IAClBsE,EAAK/4B,MAAQ6P,SAASyqB,EAAOt6B,MAAO,KAAO,EAC3C+4B,EAAK94B,OAAS4P,SAASyqB,EAAOr6B,OAAQ,KAAO,EAC7C84B,EAAKjW,gBAAkBiW,EAAKpI,OAAO7N,gBACnC,IACI,GACIwX,EAAOC,eACPD,EAAOC,cAAcp5B,UACrBm5B,EAAOC,cAAcp5B,SAASC,gBAChC,CACE23B,EAAKyB,KAAOC,GAAUn6B,EAASg6B,EAAOC,cAAcp5B,SAASC,iBAG7D,IAAMs5B,EAA0BJ,EAAOC,cAAcp5B,SAASC,gBACxDmY,GACIjZ,EACAuwB,iBAAiByJ,EAAOC,cAAcp5B,SAASC,iBAAiB0hB,iBAEpE5K,GAAOE,YACPuiB,EAAsBL,EAAOC,cAAcp5B,SAAS5C,KACpDgb,GACIjZ,EACAuwB,iBAAiByJ,EAAOC,cAAcp5B,SAAS5C,MAAMukB,iBAEzD5K,GAAOE,YAEb2gB,EAAKjW,gBAAkBzK,GAAcqiB,GAC/BriB,GAAcsiB,GACV5B,EAAKpI,OAAO7N,gBACZ6X,EACJD,EAED,CAAX,MAAOz8B,IAAI,UAErB,OA3C4CzB,EAAAA,EAAAA,GA2C5C,EA3CA,CAA4C68B,ICStCuB,GAAc,CAAC,KAAM,KAAM,QAE3BC,GAAgB,SAAhBA,EAAiBv6B,EAAkBS,EAAY+V,EAA0BgkB,GAC3E,IAAK,IAAIC,EAAYh6B,EAAKsyB,WAAY2H,OAAQ,EAAED,EAAWA,EAAYC,EAGnE,GAFAA,EAAWD,EAAUE,YAEjBC,GAAWH,IAAcA,EAAUl2B,KAAKkyB,OAAO/7B,OAAS,EACxD8b,EAAO2Z,UAAUt1B,KAAK,IAAIggC,GAAc76B,EAASy6B,EAAWjkB,EAAO6Z,cAChE,GAAIyK,GAAcL,GACrB,GAAIM,GAAcN,IAAcA,EAAUO,cACtCP,EAAUO,gBAAgBryB,SAAQ,SAAC8xB,GAAc,OAAAF,EAAcv6B,EAASy6B,EAAWjkB,EAAQgkB,EAAK,QAC7F,CACH,IAAMS,EAAYC,GAAgBl7B,EAASy6B,GACvCQ,EAAU5K,OAAO8K,cACbC,GAA2BX,EAAWQ,EAAWT,GACjDS,EAAUppB,OAAS,EACZwpB,GAAuBJ,EAAU5K,UACxC4K,EAAUppB,OAAS,IAGyB,IAA5CyoB,GAAYxxB,QAAQ2xB,EAAUa,WAC9BL,EAAUppB,OAAS,GAGvB2E,EAAO4Z,SAASv1B,KAAKogC,GACrBR,EAAUc,KACNd,EAAUe,WACVjB,EAAcv6B,EAASy6B,EAAUe,WAAYP,EAAWT,GAEvDiB,GAAkBhB,IAClBiB,GAAajB,IACbkB,GAAgBlB,IAEjBF,EAAcv6B,EAASy6B,EAAWQ,EAAWT,IAMrE,EAEMU,GAAkB,SAACl7B,EAAkB+vB,GACvC,OAAI6L,GAAe7L,GACR,IAAI8L,GAAsB77B,EAAS+vB,GAG1C+L,GAAgB/L,GACT,IAAIgM,GAAuB/7B,EAAS+vB,GAG3C2L,GAAa3L,GACN,IAAIiM,GAAoBh8B,EAAS+vB,GAGxCkM,GAAYlM,GACL,IAAImM,GAAmBl8B,EAAS+vB,GAGvCoM,GAAYpM,GACL,IAAIqM,GAAmBp8B,EAAS+vB,GAGvCsM,GAAetM,GACR,IAAIuM,GAAsBt8B,EAAS+vB,GAG1C4L,GAAgB5L,GACT,IAAIwM,GAAuBv8B,EAAS+vB,GAG3C0L,GAAkB1L,GACX,IAAIyM,GAAyBx8B,EAAS+vB,GAG7C0M,GAAgB1M,GACT,IAAI2M,GAAuB18B,EAAS+vB,GAGxC,IAAIgJ,GAAiB/4B,EAAS+vB,EACzC,EAEaoK,GAAY,SAACn6B,EAAkB+vB,GACxC,IAAMkL,EAAYC,GAAgBl7B,EAAS+vB,GAG3C,OAFAkL,EAAUppB,OAAS,EACnB0oB,GAAcv6B,EAAS+vB,EAASkL,EAAWA,GACpCA,CACX,EAEMG,GAA6B,SAAC36B,EAAew6B,EAA6BT,GAC5E,OACIS,EAAU5K,OAAOsM,0BACjB1B,EAAU5K,OAAOzD,QAAU,GAC3BqO,EAAU5K,OAAOuM,iBAChBC,GAAcp8B,IAAS+5B,EAAKnK,OAAOtY,eAE5C,EAEMsjB,GAAyB,SAAChL,GAA0C,OAAAA,EAAOb,gBAAkBa,EAAOyM,YAAY,EAEzGlC,GAAa,SAACn6B,GAA6B,OAAAA,EAAKs8B,WAAaC,KAAKC,SAAS,EAC3EnC,GAAgB,SAACr6B,GAAgC,OAAAA,EAAKs8B,WAAaC,KAAKE,YAAY,EACpF1M,GAAoB,SAAC/vB,GAC9B,OAAAq6B,GAAcr6B,IAAgD,qBAA/BA,EAAqBmoB,QAA0BuU,GAAiB18B,EAA/F,EACS08B,GAAmB,SAACpN,GAC7B,MAA6C,kBAArCA,EAAuBqN,SAA/B,EACSnB,GAAc,SAACx7B,GAAyC,MAAiB,OAAjBA,EAAK66B,OAAgB,EAC7Ea,GAAc,SAAC17B,GAA4C,MAAiB,OAAjBA,EAAK66B,OAAgB,EAChFe,GAAiB,SAAC57B,GAA4C,MAAiB,UAAjBA,EAAK66B,OAAmB,EACtF+B,GAAgB,SAAC58B,GAA2C,MAAiB,SAAjBA,EAAK66B,OAAkB,EACnFI,GAAe,SAACj7B,GAAyC,MAAiB,QAAjBA,EAAK66B,OAAiB,EAC/EuB,GAAgB,SAACp8B,GAA2C,MAAiB,SAAjBA,EAAK66B,OAAkB,EACnFQ,GAAkB,SAACr7B,GAA6C,MAAiB,WAAjBA,EAAK66B,OAAoB,EACzFgC,GAAiB,SAAC78B,GAA4C,MAAiB,UAAjBA,EAAK66B,OAAmB,EACtFM,GAAiB,SAACn7B,GAA4C,MAAiB,QAAjBA,EAAK66B,OAAiB,EACpFmB,GAAkB,SAACh8B,GAA6C,MAAiB,WAAjBA,EAAK66B,OAAoB,EACzFiC,GAAiB,SAAC98B,GAA4C,MAAiB,UAAjBA,EAAK66B,OAAmB,EACtFkC,GAAkB,SAAC/8B,GAA6C,MAAiB,WAAjBA,EAAK66B,OAAoB,EACzFG,GAAoB,SAACh7B,GAA+C,MAAiB,aAAjBA,EAAK66B,OAAsB,EAC/FK,GAAkB,SAACl7B,GAA6C,MAAiB,WAAjBA,EAAK66B,OAAoB,EACzFP,GAAgB,SAACt6B,GAA2C,MAAiB,SAAjBA,EAAK66B,OAAkB,EAEnFmC,GAAkB,SAACh9B,GAAuC,OAAAA,EAAK66B,QAAQxyB,QAAQ,KAAO,CAAC,EClIpG,2BACqB,KAAA40B,SAAsC,CAAC,EAoD5D,OAlDIC,EAAAA,UAAAA,gBAAA,SAAgBtoB,GACZ,IAAMsY,EAAUrxB,KAAKohC,SAASroB,GAE9B,OAAIsY,GAAWA,EAAQjzB,OACZizB,EAAQA,EAAQjzB,OAAS,GAE7B,GAGXijC,EAAAA,UAAAA,iBAAA,SAAiBtoB,GACb,IAAMsY,EAAUrxB,KAAKohC,SAASroB,GAC9B,OAAOsY,GAAoB,IAG/BgQ,EAAAA,UAAAA,IAAA,SAAID,GAAJ,WACIA,EAAS/0B,SAAQ,SAACglB,GAAY,SAAK+P,SAAS/P,GAAS5uB,KAAK,KAG9D4+B,EAAAA,UAAAA,MAAA,SAAM/U,GAAN,WACU4E,EAAmB5E,EAAM4E,iBACzBK,EAAejF,EAAMiF,aACvB+P,GAAW,EAEU,OAArBpQ,GACAA,EAAiB7kB,SAAQ,SAACk1B,GACtB,IAAMlQ,EAAU8K,EAAKiF,SAASG,EAAMlQ,SAChCA,GAA+B,IAApBkQ,EAAMjQ,YACjBgQ,GAAW,EACNjQ,EAAQjzB,QACTizB,EAAQ9yB,KAAK,GAEjB8yB,EAAQ3sB,KAAKC,IAAI,EAAG0sB,EAAQjzB,OAAS,KAAOmjC,EAAMjQ,cAK9D,IAAMkQ,EAAyB,GAY/B,OAXIF,GACA/P,EAAallB,SAAQ,SAACk1B,GAClB,IAAIlQ,EAAU8K,EAAKiF,SAASG,EAAMlQ,SAClCmQ,EAAajjC,KAAKgjC,EAAMlQ,SACnBA,IACDA,EAAU8K,EAAKiF,SAASG,EAAMlQ,SAAW,IAE7CA,EAAQ9yB,KAAKgjC,EAAM9P,UAIpB+P,GAEf,EArDA,GA4DMC,GAA8B,CAChC1uB,SAAU,CAAC,IAAM,IAAK,IAAK,IAAK,IAAK,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,GAC9DyF,OAAQ,CAAC,IAAK,KAAM,IAAK,KAAM,IAAK,KAAM,IAAK,KAAM,IAAK,KAAM,IAAK,KAAM,MAGzEkpB,GAA2B,CAC7B3uB,SAAU,CACN,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,GAAI,GAAI,GAC3G,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAEpDyF,OAAQ,CACJ,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,WAIFmpB,GAAyB,CAC3B5uB,SAAU,CACN,IAAO,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAC7G,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAEpDyF,OAAQ,CACJ,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,eACA,eACA,eACA,eACA,eACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,WAIFopB,GAA2B,CAC7B7uB,SAAU,CACN,IAAO,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,GAC1G,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAE5DyF,OAAQ,CACJ,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,WAIFqpB,GAAwB,SAC1B/gC,EACAsW,EACAzS,EACAm9B,EACAC,EACAC,GAEA,OAAIlhC,EAAQsW,GAAOtW,EAAQ6D,EAChBs9B,GAAkBnhC,EAAOihC,EAAUC,EAAO5jC,OAAS,GAI1D0jC,EAAQ/uB,SAASyV,QAAO,SAAC0Z,EAAQC,EAASz8B,GACtC,KAAO5E,GAASqhC,GACZrhC,GAASqhC,EACTD,GAAUJ,EAAQtpB,OAAO9S,GAE7B,OAAOw8B,IACR,IAAMF,CAEjB,EAEMI,GAAuC,SACzCthC,EACAuhC,EACAC,EACAC,GAEA,IAAIL,EAAS,GAEb,GACSI,GACDxhC,IAEJohC,EAASK,EAASzhC,GAASohC,EAC3BphC,GAASuhC,QACJvhC,EAAQuhC,GAAwBA,GAEzC,OAAOH,CACX,EAEMM,GAA8B,SAChC1hC,EACA2hC,EACAC,EACAJ,EACAN,GAEA,IAAMK,EAAuBK,EAAoBD,EAAsB,EAEvE,OACK3hC,EAAQ,EAAI,IAAM,KAClBshC,GAAqC19B,KAAKkjB,IAAI9mB,GAAQuhC,EAAsBC,GAAW,SAAC38B,GACrF,SAAcjB,KAAKi+B,MAAMh9B,EAAY08B,GAAwBI,MAE7DT,EAEZ,EAEMY,GAAgC,SAAC9hC,EAAeghC,EAAiBE,QAAA,IAAAA,IAAAA,EAAS,MAC5E,IAAMK,EAAuBP,EAAQ1jC,OACrC,OACIgkC,GACI19B,KAAKkjB,IAAI9mB,GACTuhC,GACA,GACA,SAAC18B,GAAc,OAAAm8B,EAAQp9B,KAAKi+B,MAAMh9B,EAAY08B,GAAsB,IACpEL,CAEZ,EAEMa,GAAY,EACZC,GAAuB,EACvBC,GAA4B,EAC5BC,GAA2B,EAE3BC,GAAmB,SACrBniC,EACAoiC,EACAC,EACAC,EACApB,EACAzsB,GAEA,GAAIzU,GAAS,MAAQA,EAAQ,KACzB,OAAOmhC,GAAkBnhC,EAAO,EAA6BkhC,EAAO5jC,OAAS,GAEjF,IAAIilC,EAAM3+B,KAAKkjB,IAAI9mB,GACfohC,EAASF,EAEb,GAAY,IAARqB,EACA,OAAOH,EAAQ,GAAKhB,EAGxB,IAAK,IAAIvrB,EAAQ,EAAG0sB,EAAM,GAAK1sB,GAAS,EAAGA,IAAS,CAChD,IAAM2sB,EAAcD,EAAM,GAEN,IAAhBC,GAAqBtS,GAASzb,EAAOstB,KAAyB,KAAXX,EACnDA,EAASgB,EAAQI,GAAepB,EAEhCoB,EAAc,GACG,IAAhBA,GAA+B,IAAV3sB,GACL,IAAhB2sB,GAA+B,IAAV3sB,GAAeqa,GAASzb,EAAOutB,KACpC,IAAhBQ,GAA+B,IAAV3sB,GAAeqa,GAASzb,EAAOwtB,KAA8BjiC,EAAQ,KAC1E,IAAhBwiC,GAAqB3sB,EAAQ,GAAKqa,GAASzb,EAAOytB,IAEnDd,EAASgB,EAAQI,IAAgB3sB,EAAQ,EAAIwsB,EAAYxsB,EAAQ,GAAK,IAAMurB,EACrD,IAAhBoB,GAAqB3sB,EAAQ,IACpCurB,EAASiB,EAAYxsB,EAAQ,GAAKurB,GAEtCmB,EAAM3+B,KAAKi+B,MAAMU,EAAM,IAG3B,OAAQviC,EAAQ,EAAIsiC,EAAe,IAAMlB,CAC7C,EAEMqB,GAA+B,2BAC/BC,GAA6B,2BAC7BC,GAAoB,2BACpBC,GAAkB,2BAEXzB,GAAoB,SAACnhC,EAAekM,EAAuB22B,GACpE,IAAMC,EAAgBD,EAAe,KAAO,GACtCE,EAAYF,EAAe,SAAM,GACjCG,EAAeH,EAAe,KAAO,GACrCI,EAAcJ,EAAe,IAAM,GACzC,OAAQ32B,GACJ,KAAK,EACD,MAAO,SAAM+2B,EACjB,KAAK,EACD,MAAO,SAAMA,EACjB,KAAK,EACD,MAAO,SAAMA,EACjB,KAAK,EACD,IAAM7B,EAASM,GAA4B1hC,EAAO,GAAI,IAAI,EAAM8iC,GAChE,OAAO1B,EAAO9jC,OAAS,EAAI,IAAI8jC,EAAWA,EAC9C,KAAK,EACD,OAAOU,GAA8B9hC,EAAO,+DAAc+iC,GAC9D,KAAK,EACD,OAAOhC,GACH/gC,EACA,EACA,KACA2gC,GAAW,EAEXmC,GACF/sB,cACN,KAAK,EACD,OAAOgrB,GAAsB/gC,EAAO,EAAG,KAAM2gC,GAAa,EAAyBmC,GACvF,KAAK,EACD,OAAOpB,GAA4B1hC,EAAO,IAAK,KAAK,EAAO8iC,GAC/D,KAAK,EACD,OAAOpB,GAA4B1hC,EAAO,GAAI,KAAK,EAAO8iC,GAC9D,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,GAAI,IAAI,EAAO8iC,GAC7D,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAM,MAAM,EAAM8iC,GAChE,KAAK,GACL,KAAK,GACD,OAAO/B,GAAsB/gC,EAAO,EAAG,KAAM4gC,GAAU,EAAyBkC,GACpF,KAAK,GACD,OAAO/B,GACH/gC,EACA,EACA,KACA4gC,GAAQ,EAERkC,GACF/sB,cACN,KAAK,GACD,OAAO2rB,GAA4B1hC,EAAO,KAAM,MAAM,EAAM8iC,GAChE,KAAK,GACL,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAM,MAAM,EAAM8iC,GAChE,KAAK,GACD,OAAOhB,GAA8B9hC,EAAO,2EAAgB+iC,GAChE,KAAK,GACD,OAAOjB,GAA8B9hC,EAAO,+DAAc+iC,GAC9D,KAAK,GACL,KAAK,GACD,OAAOZ,GACHniC,EACA,+DACAyiC,GACA,SACAM,EACAf,GAAuBC,GAA4BC,IAE3D,KAAK,GACD,OAAOC,GACHniC,EACA,+DACA0iC,GACA,SACAK,EACAhB,GAAYC,GAAuBC,GAA4BC,IAEvE,KAAK,GACD,OAAOC,GACHniC,EACA,+DACAyiC,GACA,SACAM,EACAf,GAAuBC,GAA4BC,IAE3D,KAAK,GACD,OAAOC,GACHniC,EACA,+DACA0iC,GACA,SACAK,EACAhB,GAAYC,GAAuBC,GAA4BC,IAEvE,KAAK,GACD,OAAOC,GAAiBniC,EAAO,+DAAc,2BAAQ2iC,GAAmBI,EAAW,GACvF,KAAK,GACD,OAAOZ,GACHniC,EACA,+DACA,2BACA2iC,GACAI,EACAhB,GAAYC,GAAuBC,IAE3C,KAAK,GACD,OAAOE,GACHniC,EACA,+DACA,2BACA4iC,GACAI,EACAjB,GAAYC,GAAuBC,IAE3C,KAAK,GACD,OAAOE,GAAiBniC,EAAO,+DAAc,2BAAQ4iC,GAAiBI,EAAc,GACxF,KAAK,GACD,OAAOb,GACHniC,EACA,+DACA,qBACA4iC,GACAI,EACAjB,GAAYC,GAAuBC,IAE3C,KAAK,GACD,OAAOP,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAO/B,GAAsB/gC,EAAO,EAAG,MAAO8gC,GAAU,EAAyBgC,GACrF,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAO/B,GAAsB/gC,EAAO,EAAG,MAAO6gC,GAAQ,EAAyBiC,GACnF,KAAK,GACD,OAAOhB,GACH9hC,EACA,oSAER,KAAK,GACD,OAAO8hC,GACH9hC,EACA,8RAER,KAAK,GACD,OAAO0hC,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAOhB,GACH9hC,EACA,mSACA+iC,GAER,KAAK,GACD,OAAOjB,GACH9hC,EACA,6RACA+iC,GAER,KAAK,GACD,OAAOrB,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAQ,MAAQ,EAAM8iC,GACpE,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAQ,MAAQ,EAAM8iC,GACpE,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAClE,KAAK,GACD,OAAOpB,GAA4B1hC,EAAO,KAAO,MAAO,EAAM8iC,GAElE,QACI,OAAOpB,GAA4B1hC,EAAO,GAAI,IAAI,EAAM8iC,GAEpE,EdjdMI,GAAmB,0BAEzB,cAQI,WACqBtgC,EACjB+vB,EACiB/lB,GAMjB,GARiB,KAAAhK,QAAAA,EAEA,KAAAgK,QAAAA,EAEjB1N,KAAKikC,iBAAmB,GACxBjkC,KAAKkkC,iBAAmBzQ,EACxBzzB,KAAKohC,SAAW,IAAIC,GACpBrhC,KAAKmkC,WAAa,GACb1Q,EAAQsH,cACT,MAAM,IAAIt2B,MAAM,kDAGpBzE,KAAKwE,gBAAkBxE,KAAKi7B,UAAUxH,EAAQsH,cAAcv2B,iBAAiB,GAmarF,OAhaI4/B,EAAAA,UAAAA,SAAA,SAASrJ,EAAyBsJ,GAAlC,WACU3G,EAA4B4G,GAAsBvJ,EAAesJ,GAEvE,IAAK3G,EAAOC,cACR,OAAO38B,QAAQC,OAAO,gCAG1B,IAAMsjC,EAAWxJ,EAAcyJ,YAAuBC,YAChDC,EAAW3J,EAAcyJ,YAAuBG,YAEhDC,EAAclH,EAAOC,cACrBkH,EAA0BD,EAAYrgC,SAMtCugC,EAAaC,GAAarH,GAAQj8B,MAAK,0GAsBzC,OArBAzB,KAAKikC,iBAAiB53B,QAAQ24B,IAC1BJ,IACAA,EAAYK,SAASZ,EAAWnhC,KAAMmhC,EAAWlhC,MAE7C,sBAAsB+hC,KAAKC,UAAUC,YACpCR,EAAYF,UAAYL,EAAWlhC,KAAOyhC,EAAYL,UAAYF,EAAWnhC,OAE9ElD,KAAK0D,QAAQ2hC,OAAOC,KAAK,yDACzBtlC,KAAK0D,QAAQE,aAAe5D,KAAK0D,QAAQE,aAAa2hC,IAClDX,EAAYL,QAAUF,EAAWnhC,KACjC0hC,EAAYF,QAAUL,EAAWlhC,IACjC,EACA,KAKNqiC,EAAUxlC,KAAK0N,QAAQ83B,QAIG,qBAF1BtB,EAAmBlkC,KAAKylC,wBAGnB,CAAP,EAAOzkC,QAAQC,OAAO,qBAAqBjB,KAAKkkC,iBAAiBwB,SAAQ,4BAGzEb,EAAcc,OAASd,EAAcc,MAAMC,MAC3C,GAAMf,EAAcc,MAAMC,OAD1B,aACAxe,EAAAA,8BAGA,iBAAiB8d,KAAKC,UAAUC,WAChC,GAAMS,GAAYhB,IADlB,aACAzd,EAAAA,wBAGJ,MAAuB,oBAAZoe,EACA,CAAP,EAAOxkC,QAAQD,UACVU,MAAK,WAAM,OAAA+jC,EAAQX,EAAeX,EAAiB,IACnDziC,MAAK,WAAM,OAAAi8B,CAAM,KAGnB,CAAP,EAAOA,aAUX,OAPAmH,EAAc/S,OACd+S,EAAc5sB,MAAS6tB,GAAiBvhC,SAASwhC,SAAQ,iBAEzDC,GAAmBhmC,KAAKkkC,iBAAiBnJ,cAAewJ,EAASG,GACjEG,EAAc1J,aAAa0J,EAAcoB,UAAUjmC,KAAKwE,iBAAkBqgC,EAAcrgC,iBACxFqgC,EAAc9S,QAEP+S,GAGXV,EAAAA,UAAAA,mBAAA,SAAuDjgC,GAInD,GAHIwvB,GAAYxvB,EAAM,GAGlBq7B,GAAgBr7B,GAChB,OAAOnE,KAAKkmC,kBAAkB/hC,GAElC,GAAI68B,GAAe78B,GACf,OAAOnE,KAAKmmC,iBAAiBhiC,GAEjC,GAAI88B,GAAe98B,GACf,OAAOnE,KAAKomC,iBAAiBjiC,GAGjC,IAAMkiC,EAAQliC,EAAK82B,WAAU,GAY7B,OAXIqE,GAAe+G,KACX/G,GAAen7B,IAASA,EAAKi4B,YAAcj4B,EAAKi4B,aAAej4B,EAAK0zB,MACpEwO,EAAMxO,IAAM1zB,EAAKi4B,WACjBiK,EAAMC,OAAS,IAGG,SAAlBD,EAAME,UACNF,EAAME,QAAU,UAIpBpF,GAAgBkF,GACTrmC,KAAKwmC,yBAAyBH,GAGlCA,GAGXjC,EAAAA,UAAAA,yBAAA,SAAyBjgC,GACrB,IAAMkiC,EAAQ9hC,SAASwxB,cAAc,4BAGrC,OAFA0Q,GAActiC,EAAKmoB,MAAO+Z,GAEnBA,GAGXjC,EAAAA,UAAAA,iBAAA,SAAiBjgC,GACb,IACI,IAAMuiC,EAAQviC,EAAKuiC,MACnB,GAAIA,GAASA,EAAMC,SAAU,CACzB,IAAMC,EAAc,GAAG5jC,MAAM/D,KAAKynC,EAAMC,SAAU,GAAGne,QAAO,SAACoe,EAAaC,GACtE,OAAIA,GAAgC,kBAAjBA,EAAKC,QACbF,EAAMC,EAAKC,QAEfF,IACR,IACGta,EAAQnoB,EAAK82B,WAAU,GAE7B,OADA3O,EAAMya,YAAcH,EACbta,GAEb,MAAOjrB,IAGL,GADArB,KAAK0D,QAAQ2hC,OAAO2B,MAAM,qCAAsC3lC,IACjD,kBAAXA,GAAE0X,KACF,MAAM1X,GAGd,OAAO8C,EAAK82B,WAAU,IAG1BmJ,EAAAA,UAAAA,kBAAA,SAAkB1M,SACd,GAAI13B,KAAK0N,QAAQu5B,cAAgBvP,EAAOqD,cAAe,CACnD,IAAMtD,EAAMC,EAAOqD,cAAchF,cAAc,OAC/C,IAEI,OADA0B,EAAII,IAAMH,EAAOK,YACVN,EACT,MAAOp2B,IACLrB,KAAK0D,QAAQ2hC,OAAO6B,KAAK,sDAAuDxP,IAIxF,IAAMyP,EAAezP,EAAOuD,WAAU,GAEtC,IACIkM,EAAa/jC,MAAQs0B,EAAOt0B,MAC5B+jC,EAAa9jC,OAASq0B,EAAOr0B,OAC7B,IAAMs0B,EAAMD,EAAOE,WAAW,MACxBwP,EAAYD,EAAavP,WAAW,MAC1C,GAAIwP,EACA,IAAKpnC,KAAK0N,QAAQ25B,YAAc1P,EAC5ByP,EAAUE,aAAa3P,EAAIa,aAAa,EAAG,EAAGd,EAAOt0B,MAAOs0B,EAAOr0B,QAAS,EAAG,OAC5E,CACH,IAAMkkC,EAAgC,QAA3B,EAAA7P,EAAOE,WAAW,iBAAS,QAAIF,EAAOE,WAAW,SAC5D,GAAI2P,EAAI,CACJ,IAAMC,EAAUD,EAAGE,wBACoB,KAA5B,OAAPD,QAAO,IAAPA,OAAO,EAAPA,EAASE,wBACT1nC,KAAK0D,QAAQ2hC,OAAOC,KAChB,sEACA5N,GAKZ0P,EAAUtP,UAAUJ,EAAQ,EAAG,GAGvC,OAAOyP,EACT,MAAO9lC,IACLrB,KAAK0D,QAAQ2hC,OAAO6B,KAAK,0CAA2CxP,GAGxE,OAAOyP,GAGX/C,EAAAA,UAAAA,iBAAA,SAAiBuD,GACb,IAAMjQ,EAASiQ,EAAM5M,cAAchF,cAAc,UAEjD2B,EAAOt0B,MAAQukC,EAAM9iC,YACrB6yB,EAAOr0B,OAASskC,EAAM3iC,aACtB,IAAM2yB,EAAMD,EAAOE,WAAW,MAE9B,IAOI,OANID,IACAA,EAAIG,UAAU6P,EAAO,EAAG,EAAGjQ,EAAOt0B,MAAOs0B,EAAOr0B,QAC3CrD,KAAK0N,QAAQ25B,YACd1P,EAAIa,aAAa,EAAG,EAAGd,EAAOt0B,MAAOs0B,EAAOr0B,SAG7Cq0B,EACT,MAAOr2B,IACLrB,KAAK0D,QAAQ2hC,OAAO6B,KAAK,yCAA0CS,GAGvE,IAAMC,EAAcD,EAAM5M,cAAchF,cAAc,UAItD,OAFA6R,EAAYxkC,MAAQukC,EAAM9iC,YAC1B+iC,EAAYvkC,OAASskC,EAAM3iC,aACpB4iC,GAGXxD,EAAAA,UAAAA,gBAAA,SAAgBiC,EAAiCwB,EAAaC,GAErDtJ,GAAcqJ,KACb3G,GAAgB2G,IACbA,EAAME,aAAa/D,KACoB,oBAAhChkC,KAAK0N,QAAQs6B,gBAAkChoC,KAAK0N,QAAQs6B,eAAeH,KAElF7nC,KAAK0N,QAAQo6B,YAAetJ,GAAcqJ,IAAW5G,GAAe4G,IACrExB,EAAMrQ,YAAYh2B,KAAKi7B,UAAU4M,EAAOC,KAKpD1D,EAAAA,UAAAA,gBAAA,SAAgBjgC,EAAekiC,EAAiCyB,GAC5D,IADJ,WAEYD,EAAQ1jC,EAAK+6B,WAAa/6B,EAAK+6B,WAAWzI,WAAatyB,EAAKsyB,WAChEoR,EACAA,EAAQA,EAAMxJ,YAEd,GAAIG,GAAcqJ,IAAUpJ,GAAcoJ,IAAyC,oBAAxBA,EAAMnJ,cAA8B,CAC3F,IAAMA,EAAgBmJ,EAAMnJ,gBACxBA,EAActgC,QACdsgC,EAAcryB,SAAQ,SAAC47B,GAAiB,SAAKC,gBAAgB7B,EAAO4B,EAAcH,EAAW,SAGjG9nC,KAAKkoC,gBAAgB7B,EAAOwB,EAAOC,IAK/C1D,EAAAA,UAAAA,UAAA,SAAUjgC,EAAY2jC,GAClB,GAAIxJ,GAAWn6B,GACX,OAAOI,SAAS4jC,eAAehkC,EAAK8D,MAGxC,IAAK9D,EAAK42B,cACN,OAAO52B,EAAK82B,WAAU,GAG1B,IAAMjH,EAAS7vB,EAAK42B,cAAcyJ,YAElC,GAAIxQ,GAAUwK,GAAcr6B,KAAU+vB,GAAkB/vB,IAAS08B,GAAiB18B,IAAQ,CACtF,IAAMkiC,EAAQrmC,KAAKooC,mBAAmBjkC,GACtCkiC,EAAM/Z,MAAM+b,mBAAqB,OAEjC,IAAM/b,EAAQ0H,EAAOC,iBAAiB9vB,GAChCmkC,EAActU,EAAOC,iBAAiB9vB,EAAM,WAC5CokC,EAAavU,EAAOC,iBAAiB9vB,EAAM,UAE7CnE,KAAKkkC,mBAAqB//B,GAAQ+vB,GAAkBmS,KACpDrmC,KAAKylC,uBAAyBY,GAE9B9F,GAAc8F,IACdmC,GAAuBnC,GAG3B,IAAMjF,EAAWphC,KAAKohC,SAAS5mB,MAAM,IAAIiuB,GAA4BzoC,KAAK0D,QAAS4oB,IAC7Ehf,EAAStN,KAAK0oC,qBAAqBvkC,EAAMkiC,EAAOiC,EAAajU,GAAkBsU,QAEjFxH,GAAgBh9B,KAChB2jC,GAAa,GAGZ9G,GAAe78B,IAChBnE,KAAK4oC,gBAAgBzkC,EAAMkiC,EAAOyB,GAGlCx6B,GACA+4B,EAAMwC,aAAav7B,EAAQ+4B,EAAM5P,YAGrC,IAAMqS,EAAQ9oC,KAAK0oC,qBAAqBvkC,EAAMkiC,EAAOkC,EAAYlU,GAAkB0U,OAyBnF,OAxBID,GACAzC,EAAMrQ,YAAY8S,GAGtB9oC,KAAKohC,SAAS3+B,IAAI2+B,IAGb9U,IAAUtsB,KAAK0N,QAAQo6B,YAAcjH,GAAiB18B,MAAWg8B,GAAgBh8B,IAClF2jC,IAEArB,GAAcna,EAAO+Z,GAGF,IAAnBliC,EAAK6kC,WAAuC,IAApB7kC,EAAK8kC,YAC7BjpC,KAAKikC,iBAAiB1lC,KAAK,CAAC8nC,EAAOliC,EAAK8kC,WAAY9kC,EAAK6kC,aAIxD7J,GAAkBh7B,IAASk7B,GAAgBl7B,MAC3Cg7B,GAAkBkH,IAAUhH,GAAgBgH,MAE7CA,EAAMvlC,MAAQqD,EAAKrD,OAGhBulC,EAGX,OAAOliC,EAAK82B,WAAU,IAG1BmJ,EAAAA,UAAAA,qBAAA,SACIjgC,EACAkiC,EACA/Z,EACA4c,GAJJ,WAMI,GAAK5c,EAAL,CAIA,IAAMxrB,EAAQwrB,EAAM2E,QACd1sB,EAAW8hC,EAAMtL,cACvB,GAAKx2B,GAAazD,GAAmB,SAAVA,GAA8B,qBAAVA,GAAkD,SAAlBwrB,EAAMW,QAArF,CAIAjtB,KAAKohC,SAAS5mB,MAAM,IAAIiuB,GAA4BzoC,KAAK0D,QAAS4oB,IAClE,IAAMoG,EAAc,IAAIyW,GAA2BnpC,KAAK0D,QAAS4oB,GAE3D8c,EAA2B7kC,EAASwxB,cAAc,4BACxD0Q,GAAcna,EAAO8c,GAErB1W,EAAYzB,QAAQ5kB,SAAQ,SAAC6I,GACzB,GAAmB,IAAfA,EAAMlI,KACNo8B,EAAyBpT,YAAYzxB,EAAS4jC,eAAejzB,EAAMpU,aAChE,GAAmB,KAAfoU,EAAMlI,KAA8B,CAC3C,IAAMyqB,EAAMlzB,EAASwxB,cAAc,OACnC0B,EAAII,IAAM3iB,EAAMpU,MAChB22B,EAAInL,MAAMgE,QAAU,IACpB8Y,EAAyBpT,YAAYyB,QAClC,GAAmB,KAAfviB,EAAMlI,MACb,GAAmB,SAAfkI,EAAM6D,KAAiB,CACvB,IAAMswB,EAAOn0B,EAAMsD,OAAOqC,OAAO3B,IAC7BmwB,EAAKjrC,QACLgrC,EAAyBpT,YACrBzxB,EAAS4jC,eAAehkC,EAAKuvB,aAAa2V,EAAK,GAAGvoC,QAAU,UAGjE,GAAmB,YAAfoU,EAAM6D,KAAoB,CAC3B,MAA0B7D,EAAMsD,OAAOqC,OAAOvB,IAA7C+X,EAAO,KAAEiY,EAAY,KAC5B,GAAIjY,GAAWnY,GAAamY,GAAU,CAClC,IAAMkY,EAAepN,EAAKiF,SAASoI,gBAAgBnY,EAAQvwB,OACrD2oC,EACFH,GAAgBpwB,GAAaowB,GACvBxb,GAActT,MAAM2hB,EAAKz4B,QAAS4lC,EAAaxoC,OAAM,EAG/DsoC,EAAyBpT,YACrBzxB,EAAS4jC,eAAelG,GAAkBsH,EAAcE,GAAa,WAG1E,GAAmB,aAAfv0B,EAAM6D,KAAqB,CAC5B,MAAiC7D,EAAMsD,OAAOqC,OAAOvB,IAA3CowB,GAATrY,EAAO,KAAO,MACrB,GADuBiY,EAAY,KAC/BjY,GAAWnY,GAAamY,GAAU,CAClC,IAAMsY,EAAgBxN,EAAKiF,SAASwI,iBAAiBvY,EAAQvwB,OACvD+oC,EACFP,GAAgBpwB,GAAaowB,GACvBxb,GAActT,MAAM2hB,EAAKz4B,QAAS4lC,EAAaxoC,OAAM,EAEzDgpC,EAAYJ,GAAwB,IAAfA,EAAM18B,KAAkC08B,EAAM5oC,MAAQ,GAC3Eg2B,EAAO6S,EACR97B,KAAI,SAAC/M,GAAU,OAAAmhC,GAAkBnhC,EAAO+oC,GAAa,EAAM,IAC3D3qC,KAAK4qC,GAEVV,EAAyBpT,YAAYzxB,EAAS4jC,eAAerR,WAKlE,GAAmB,KAAf5hB,EAAMlI,KACb,OAAQkI,EAAMpU,OACV,IAAK,aACDsoC,EAAyBpT,YACrBzxB,EAAS4jC,eAAenW,GAASU,EAAYf,OAAQwK,EAAKgI,cAAc,KAE5E,MACJ,IAAK,cACDiF,EAAyBpT,YACrBzxB,EAAS4jC,eAAenW,GAASU,EAAYf,SAAUwK,EAAKgI,YAAY,KAE5E,MACJ,QAEIiF,EAAyBpT,YAAYzxB,EAAS4jC,eAAejzB,EAAMpU,YAKnFsoC,EAAyBtI,UAAeiJ,GAAgC,IAAIC,GAC5E,IAAMC,EACFf,IAAc7U,GAAkBsU,OAC1B,IAAIoB,GACJ,IAAIC,GAQd,OANInJ,GAAiBwF,GACjBA,EAAMvF,UAAUoJ,WAAaD,EAE7B5D,EAAMvF,WAAamJ,EAGhBb,KAGJhF,EAAAA,QAAP,SAAezF,GACX,QAAIA,EAAUzD,aACVyD,EAAUzD,WAAW9E,YAAYuI,IAC1B,IAInB,EAxbA,IA0bA,SAAKtK,GACDA,EAAAA,EAAAA,OAAAA,GAAAA,SACAA,EAAAA,EAAAA,MAAAA,GAAAA,OACH,CAHD,CAAKA,KAAAA,GAAiB,KAKtB,Ie9KK8V,Gf8KC7F,GAAwB,SAACvJ,EAAyB3G,GACpD,IAAMgW,EAAuBrP,EAAchF,cAAc,UAczD,OAZAqU,EAAqBtJ,UAAY,wBACjCsJ,EAAqB9d,MAAMyD,WAAa,SACxCqa,EAAqB9d,MAAMpC,SAAW,QACtCkgB,EAAqB9d,MAAMppB,KAAO,WAClCknC,EAAqB9d,MAAMnpB,IAAM,MACjCinC,EAAqB9d,MAAM+d,OAAS,IACpCD,EAAqBhnC,MAAQgxB,EAAOhxB,MAAMxE,WAC1CwrC,EAAqB/mC,OAAS+wB,EAAO/wB,OAAOzE,WAC5CwrC,EAAqBE,UAAY,KACjCF,EAAqB1N,aAAasH,GAAkB,QACpDjJ,EAAcp5B,KAAKq0B,YAAYoU,GAExBA,CACX,EAEMG,GAAa,SAAC9S,GAChB,OAAO,IAAIz2B,SAAQ,SAACD,GACZ02B,EAAI+S,SACJzpC,IAGC02B,EAAII,KAITJ,EAAIqB,OAAS/3B,EACb02B,EAAIsB,QAAUh4B,GAJVA,MAMZ,EAEM8kC,GAAc,SAACthC,GACjB,OAAOvD,QAAQypC,IAAI,GAAGznC,MAAM/D,KAAKsF,EAASmmC,OAAQ,GAAG78B,IAAI08B,IAC7D,EAEMxF,GAAe,SAACrH,GAClB,OAAO,IAAI18B,SAAQ,SAACD,EAASE,GACzB,IAAM2jC,EAAclH,EAAOC,cAE3B,IAAKiH,EACD,OAAO3jC,EAAO,iCAGlB,IAAM4jC,EAAgBD,EAAYrgC,SAElCqgC,EAAY9L,OAAS4E,EAAO5E,OAAS,WACjC8L,EAAY9L,OAAS4E,EAAO5E,OAAS,KACrC,IAAM6R,EAAWC,aAAY,WACrB/F,EAAcljC,KAAKkpC,WAAWzsC,OAAS,GAAkC,aAA7BymC,EAAciG,aAC1DC,cAAcJ,GACd5pC,EAAQ28B,MAEb,OAGf,EAEMsN,GAAyB,CAC3B,MACA,IACA,WAGSvE,GAAgB,SAAqCna,EAA4B2e,GAE1F,IAAK,IAAI/sC,EAAIouB,EAAMluB,OAAS,EAAGF,GAAK,EAAGA,IAAK,CACxC,IAAMgtC,EAAW5e,EAAM6e,KAAKjtC,IACsB,IAA9C8sC,GAAuBx+B,QAAQ0+B,IAC/BD,EAAO3e,MAAM8e,YAAYF,EAAU5e,EAAM+e,iBAAiBH,IAGlE,OAAOD,CACX,EAEMnF,GAAmB,SAACC,GACtB,IAAI5gC,EAAM,GAsBV,OArBI4gC,IACA5gC,GAAO,aACH4gC,EAAQhtB,OACR5T,GAAO4gC,EAAQhtB,MAGfgtB,EAAQuF,iBACRnmC,GAAO4gC,EAAQuF,gBAGfvF,EAAQwF,WACRpmC,GAAO,IAAI4gC,EAAQwF,SAAQ,KAG3BxF,EAAQyF,WACRrmC,GAAO,IAAI4gC,EAAQyF,SAAQ,KAG/BrmC,GAAO,KAGJA,CACX,EAEM6gC,GAAqB,SAACjL,EAAgCx3B,EAAW1B,GAE/Dk5B,GACAA,EAAcyJ,cACbjhC,IAAMw3B,EAAcyJ,YAAYC,aAAe5iC,IAAMk5B,EAAcyJ,YAAYG,cAEhF5J,EAAcyJ,YAAYS,SAAS1hC,EAAG1B,EAE9C,EAEMmjC,GAAoB,SAAC5d,OAACqM,EAAO,KAAElwB,EAAC,KAAE1B,EAAC,KACrC4xB,EAAQwV,WAAa1lC,EACrBkwB,EAAQuV,UAAYnnC,CACxB,EAEM4pC,GAAgB,UAChBC,GAAe,SACf3B,GAAmC,wCACnCC,GAAkC,uCAElC2B,GAA4B,mEAK5BnD,GAAyB,SAAC7mC,GAC5BiqC,GACIjqC,EACA,IAAIooC,GAAmC0B,GAAgBE,GAAyB,eAC5E3B,GAAkC0B,GAAeC,GAE7D,EAEMC,GAAe,SAACjqC,EAAmBoyB,GACrC,IAAMxvB,EAAW5C,EAAKo5B,cACtB,GAAIx2B,EAAU,CACV,IAAM+nB,EAAQ/nB,EAASwxB,cAAc,SACrCzJ,EAAMya,YAAchT,EACpBpyB,EAAKq0B,YAAY1J,GAEzB,EgBznBA,4BAuBA,OAnBWuf,EAAAA,UAAP,SAAiBnhB,GACb,IAAMohB,EAAOD,EAAaE,MAC1B,OAAKD,GAILA,EAAKE,KAAOthB,EACZohB,EAAKE,KAAOF,EAAKE,KACVF,EAAKG,SAAWH,EAAKI,SAAWJ,EAAKK,MALjC,eAQRN,EAAAA,aAAP,SAAoBhU,GAChB,OAAOgU,EAAaO,UAAUvU,KAASgU,EAAaQ,SAGjDR,EAAAA,WAAP,SAAkB7X,GACd6X,EAAaE,MAAQ/X,EAAOzvB,SAASwxB,cAAc,KACnD8V,EAAaQ,QAAUR,EAAaO,UAAUpY,EAAOsY,SAASN,OAnBnDH,EAAAA,QAAU,cAqB7B,EAvBA,GAgCA,cAII,WAA6BnoC,EAAmC6oC,GAAnC,KAAA7oC,QAAAA,EAAmC,KAAA6oC,SAAAA,EAF/C,KAAAC,OAAwC,CAAC,EAgI9D,OA5HIC,EAAAA,UAAAA,SAAA,SAAS5U,GACL,IAAMt2B,EAASP,QAAQD,UACvB,OAAIf,KAAK0sC,IAAI7U,GACFt2B,EAGPorC,GAAY9U,IAAQ+U,GAAa/U,KAChC73B,KAAKwsC,OAAO3U,GAAO73B,KAAK6sC,UAAUhV,IAAMY,OAAM,eAGxCl3B,GAGJA,GAIXkrC,EAAAA,UAAAA,MAAA,SAAM5U,GACF,OAAO73B,KAAKwsC,OAAO3U,IAGT4U,EAAAA,UAAAA,UAAd,SAAwBztC,gHAWpB,OAVM8tC,EAAejB,GAAaiB,aAAa9tC,GACzC+tC,GACDC,GAAchuC,KAAkC,IAA1BgB,KAAKusC,SAASQ,SAAoB5T,GAASO,sBAAwBoT,EACxFG,GACDD,GAAchuC,KACd8tC,IACAH,GAAY3tC,IACkB,kBAAxBgB,KAAKusC,SAASW,OACrB/T,GAASS,mBACRmT,EAEAD,IAC4B,IAA7B9sC,KAAKusC,SAASlF,YACb2F,GAAchuC,IACd2tC,GAAY3tC,IACZiuC,GACAF,GAKDlV,EAAM74B,EACNiuC,EACM,GAAMjtC,KAAKktC,MAAMrV,IADvB,OAJA,WAKAA,EAAMzQ,EAAAA,wBAKH,OAFPpnB,KAAK0D,QAAQ2hC,OAAO8H,MAAM,eAAenuC,EAAIoc,UAAU,EAAG,MAEnD,GAAM,IAAIpa,SAAQ,SAACD,EAASE,GAC/B,IAAMw2B,EAAM,IAAIN,MAChBM,EAAIqB,OAAS,WAAM,OAAA/3B,EAAQ02B,EAAI,EAC/BA,EAAIsB,QAAU93B,GAEVmsC,GAAoBvV,IAAQkV,KAC5BtV,EAAIL,YAAc,aAEtBK,EAAII,IAAMA,GACW,IAAjBJ,EAAI+S,UAEJ6C,YAAW,WAAM,OAAAtsC,EAAQ02B,EAAI,GAAE,KAE/B0E,EAAKoQ,SAASe,aAAe,GAC7BD,YACI,WAAM,OAAApsC,EAAO,cAAck7B,EAAKoQ,SAASe,aAAY,oBAAoB,GACzEnR,EAAKoQ,SAASe,yBAhB1B,MAAO,CAAP,EAAOlmB,EAAAA,gBAsBHqlB,EAAAA,UAAAA,IAAR,SAAYztC,GACR,MAAmC,qBAArBgB,KAAKwsC,OAAOxtC,IAG9BytC,EAAAA,UAAAA,KAAA,WACI,OAAOzrC,QAAQD,QAAQlC,OAAO0uC,KAAKvtC,KAAKwsC,UAGpCC,EAAAA,UAAAA,MAAR,SAAc5U,GAAd,WACUqV,EAAQltC,KAAKusC,SAASW,MAE5B,IAAKA,EACD,MAAM,IAAIzoC,MAAM,oBAGpB,IAAMzF,EAAM64B,EAAIzc,UAAU,EAAG,KAE7B,OAAO,IAAIpa,SAAQ,SAACD,EAASE,GACzB,IAAMs2B,EAAe4B,GAASQ,sBAAwB,OAAS,OACzD6T,EAAM,IAAIlW,eAChBkW,EAAI1U,OAAS,WACT,GAAmB,MAAf0U,EAAIC,OACJ,GAAqB,SAAjBlW,EACAx2B,EAAQysC,EAAIE,cACT,CACH,IAAMC,EAAS,IAAIC,WACnBD,EAAOE,iBAAiB,QAAQ,WAAM,OAAA9sC,EAAQ4sC,EAAOpsC,OAAiB,IAAE,GACxEosC,EAAOE,iBAAiB,SAAS,SAACxsC,GAAM,OAAAJ,EAAOI,EAAE,IAAE,GACnDssC,EAAOG,cAAcN,EAAIE,eAG7BzsC,EAAO,4BAA4BjC,EAAG,qBAAqBwuC,EAAIC,SAIvED,EAAIzU,QAAU93B,EACd,IAAM8sC,EAAcb,EAAM1gC,QAAQ,MAAQ,EAAI,IAAM,IAOpD,GANAghC,EAAI1b,KAAK,MAAO,GAAGob,EAAQa,EAAW,OAAO/U,mBAAmBnB,GAAI,iBAAiBN,GAEhE,SAAjBA,GAA2BiW,aAAelW,iBAC1CkW,EAAIjW,aAAeA,GAGnB4E,EAAKoQ,SAASe,aAAc,CAC5B,IAAMU,EAAU7R,EAAKoQ,SAASe,aAC9BE,EAAIS,QAAUD,EACdR,EAAIU,UAAY,WAAM,OAAAjtC,EAAO,cAAc+sC,EAAO,gBAAgBhvC,EAAM,EAG5EwuC,EAAIW,WAGhB,EAlIA,GAoIMC,GAAa,yBACbC,GAAgB,2BAChBC,GAAa,mBAEb1B,GAAe,SAAC/U,GAAyB,OAAAsB,GAASI,sBAAwBgV,GAAM1W,EAAI,EACpFmV,GAAgB,SAACnV,GAAyB,OAAAyW,GAAWpJ,KAAKrN,EAAI,EAC9DuV,GAAsB,SAACvV,GAAyB,OAAAwW,GAAcnJ,KAAKrN,EAAI,EACvE8U,GAAc,SAAC9U,GAAyB,MAAqB,SAArBA,EAAI2W,OAAO,EAAG,EAAa,EAEnED,GAAQ,SAAC1W,GAAyB,MAAiC,QAAjCA,EAAI2W,QAAQ,GAAG33B,eAA2Bu3B,GAAWlJ,KAAKrN,EAAI,EC9KtG,cAKI,WAAYt0B,EAAW1B,GACnB7B,KAAKgN,KAAO,EACZhN,KAAKuD,EAAIA,EACTvD,KAAK6B,EAAIA,EAMjB,OAHI4sC,EAAAA,UAAAA,IAAA,SAAIC,EAAgBC,GAChB,OAAO,IAAIF,EAAOzuC,KAAKuD,EAAImrC,EAAQ1uC,KAAK6B,EAAI8sC,IAEpD,EAdA,GCCMC,GAAO,SAACjiC,EAAWnN,EAAWa,GAChC,OAAO,IAAIouC,GAAO9hC,EAAEpJ,GAAK/D,EAAE+D,EAAIoJ,EAAEpJ,GAAKlD,EAAGsM,EAAE9K,GAAKrC,EAAEqC,EAAI8K,EAAE9K,GAAKxB,EACjE,EAEA,cAOI,WAAYkH,EAAesnC,EAAsBC,EAAoBtnC,GACjExH,KAAKgN,KAAO,EACZhN,KAAKuH,MAAQA,EACbvH,KAAK6uC,aAAeA,EACpB7uC,KAAK8uC,WAAaA,EAClB9uC,KAAKwH,IAAMA,EAyBnB,OAtBIunC,EAAAA,UAAAA,UAAA,SAAU1uC,EAAW2uC,GACjB,IAAMC,EAAKL,GAAK5uC,KAAKuH,MAAOvH,KAAK6uC,aAAcxuC,GACzC6uC,EAAKN,GAAK5uC,KAAK6uC,aAAc7uC,KAAK8uC,WAAYzuC,GAC9C8uC,EAAKP,GAAK5uC,KAAK8uC,WAAY9uC,KAAKwH,IAAKnH,GACrC+uC,EAAOR,GAAKK,EAAIC,EAAI7uC,GACpBgvC,EAAOT,GAAKM,EAAIC,EAAI9uC,GACpBivC,EAAOV,GAAKQ,EAAMC,EAAMhvC,GAC9B,OAAO2uC,EAAY,IAAID,EAAY/uC,KAAKuH,MAAO0nC,EAAIG,EAAME,GAAQ,IAAIP,EAAYO,EAAMD,EAAMF,EAAInvC,KAAKwH,MAG1GunC,EAAAA,UAAAA,IAAA,SAAIL,EAAgBC,GAChB,OAAO,IAAII,EACP/uC,KAAKuH,MAAMg+B,IAAImJ,EAAQC,GACvB3uC,KAAK6uC,aAAatJ,IAAImJ,EAAQC,GAC9B3uC,KAAK8uC,WAAWvJ,IAAImJ,EAAQC,GAC5B3uC,KAAKwH,IAAI+9B,IAAImJ,EAAQC,KAI7BI,EAAAA,UAAAA,QAAA,WACI,OAAO,IAAIA,EAAY/uC,KAAKwH,IAAKxH,KAAK8uC,WAAY9uC,KAAK6uC,aAAc7uC,KAAKuH,QAElF,EArCA,GAuCagoC,GAAgB,SAACC,GAAoC,OAAc,IAAdA,EAAKxiC,IAAI,EHxC3E,cA0BI,WAAYymB,GACR,IAAMM,EAASN,EAAQM,OACjBK,EAASX,EAAQW,OAEnB,EAAara,GAAyBga,EAAO9H,oBAAqBmI,EAAOhxB,MAAOgxB,EAAO/wB,QAAtFosC,EAAG,KAAEC,EAAG,KACT,EAAa31B,GAAyBga,EAAO7H,qBAAsBkI,EAAOhxB,MAAOgxB,EAAO/wB,QAAvFssC,EAAG,KAAEC,EAAG,KACT,EAAa71B,GAAyBga,EAAO5H,wBAAyBiI,EAAOhxB,MAAOgxB,EAAO/wB,QAA1FwsC,EAAG,KAAEC,EAAG,KACT,EAAa/1B,GAAyBga,EAAO3H,uBAAwBgI,EAAOhxB,MAAOgxB,EAAO/wB,QAAzF0sC,EAAG,KAAEC,EAAG,KAEPC,EAAU,GAChBA,EAAQ1xC,MAAMkxC,EAAME,GAAOvb,EAAOhxB,OAClC6sC,EAAQ1xC,MAAMwxC,EAAMF,GAAOzb,EAAOhxB,OAClC6sC,EAAQ1xC,MAAMmxC,EAAMM,GAAO5b,EAAO/wB,QAClC4sC,EAAQ1xC,MAAMqxC,EAAME,GAAO1b,EAAO/wB,QAClC,IAAM6sC,EAAYxrC,KAAKC,IAAG,MAARD,KAAYurC,GAE1BC,EAAY,IACZT,GAAOS,EACPR,GAAOQ,EACPP,GAAOO,EACPN,GAAOM,EACPL,GAAOK,EACPJ,GAAOI,EACPH,GAAOG,EACPF,GAAOE,GAGX,IAAMC,EAAW/b,EAAOhxB,MAAQusC,EAC1BS,EAAchc,EAAO/wB,OAASysC,EAC9BO,EAAcjc,EAAOhxB,MAAQysC,EAC7BS,EAAalc,EAAO/wB,OAAS2sC,EAE7BpjB,EAAiBmH,EAAOnH,eACxBC,EAAmBkH,EAAOlH,iBAC1BC,EAAoBiH,EAAOjH,kBAC3BC,EAAkBgH,EAAOhH,gBAEzBwB,EAAatU,GAAiB8Z,EAAOxF,WAAYkF,EAAQW,OAAOhxB,OAChEorB,EAAevU,GAAiB8Z,EAAOvF,aAAciF,EAAQW,OAAOhxB,OACpEqrB,EAAgBxU,GAAiB8Z,EAAOtF,cAAegF,EAAQW,OAAOhxB,OACtEsrB,EAAczU,GAAiB8Z,EAAOrF,YAAa+E,EAAQW,OAAOhxB,OAExEpD,KAAKuwC,4BACDd,EAAM,GAAKC,EAAM,EACXc,GACIpc,EAAOlxB,KAAO6pB,EAAkB,EAChCqH,EAAOjxB,IAAMypB,EAAiB,EAC9B6iB,EAAM1iB,EAAkB,EACxB2iB,EAAM9iB,EAAiB,EACvBud,GAAOsG,UAEX,IAAIhC,GAAOra,EAAOlxB,KAAO6pB,EAAkB,EAAGqH,EAAOjxB,IAAMypB,EAAiB,GACtF5sB,KAAK0wC,6BACDjB,EAAM,GAAKC,EAAM,EACXc,GACIpc,EAAOlxB,KAAOitC,EACd/b,EAAOjxB,IAAMypB,EAAiB,EAC9B+iB,EAAM9iB,EAAmB,EACzB+iB,EAAMhjB,EAAiB,EACvBud,GAAOwG,WAEX,IAAIlC,GAAOra,EAAOlxB,KAAOkxB,EAAOhxB,MAAQypB,EAAmB,EAAGuH,EAAOjxB,IAAMypB,EAAiB,GACtG5sB,KAAK4wC,gCACDf,EAAM,GAAKC,EAAM,EACXU,GACIpc,EAAOlxB,KAAOmtC,EACdjc,EAAOjxB,IAAMitC,EACbP,EAAMhjB,EAAmB,EACzBijB,EAAMhjB,EAAoB,EAC1Bqd,GAAO0G,cAEX,IAAIpC,GACAra,EAAOlxB,KAAOkxB,EAAOhxB,MAAQypB,EAAmB,EAChDuH,EAAOjxB,IAAMixB,EAAO/wB,OAASypB,EAAoB,GAE/D9sB,KAAK8wC,+BACDf,EAAM,GAAKC,EAAM,EACXQ,GACIpc,EAAOlxB,KAAO6pB,EAAkB,EAChCqH,EAAOjxB,IAAMmtC,EACbP,EAAMhjB,EAAkB,EACxBijB,EAAMljB,EAAoB,EAC1Bqd,GAAO4G,aAEX,IAAItC,GAAOra,EAAOlxB,KAAO6pB,EAAkB,EAAGqH,EAAOjxB,IAAMixB,EAAO/wB,OAASypB,EAAoB,GACzG9sB,KAAKgxC,4BACDvB,EAAM,GAAKC,EAAM,EACXc,GACIpc,EAAOlxB,KAA0B,EAAlB6pB,EAAuB,EACtCqH,EAAOjxB,IAAwB,EAAjBypB,EAAsB,EACpC6iB,EAAyB,EAAlB1iB,EAAuB,EAC9B2iB,EAAwB,EAAjB9iB,EAAsB,EAC7Bud,GAAOsG,UAEX,IAAIhC,GAAOra,EAAOlxB,KAA0B,EAAlB6pB,EAAuB,EAAGqH,EAAOjxB,IAAwB,EAAjBypB,EAAsB,GAClG5sB,KAAKixC,6BACDxB,EAAM,GAAKC,EAAM,EACXc,GACIpc,EAAOlxB,KAAOitC,EACd/b,EAAOjxB,IAAwB,EAAjBypB,EAAsB,EACpC+iB,EAA0B,EAAnB9iB,EAAwB,EAC/B+iB,EAAwB,EAAjBhjB,EAAsB,EAC7Bud,GAAOwG,WAEX,IAAIlC,GACAra,EAAOlxB,KAAOkxB,EAAOhxB,MAA4B,EAAnBypB,EAAwB,EACtDuH,EAAOjxB,IAAwB,EAAjBypB,EAAsB,GAElD5sB,KAAKkxC,gCACDrB,EAAM,GAAKC,EAAM,EACXU,GACIpc,EAAOlxB,KAAOmtC,EACdjc,EAAOjxB,IAAMitC,EACbP,EAA0B,EAAnBhjB,EAAwB,EAC/BijB,EAA2B,EAApBhjB,EAAyB,EAChCqd,GAAO0G,cAEX,IAAIpC,GACAra,EAAOlxB,KAAOkxB,EAAOhxB,MAA4B,EAAnBypB,EAAwB,EACtDuH,EAAOjxB,IAAMixB,EAAO/wB,OAA8B,EAApBypB,EAAyB,GAErE9sB,KAAKmxC,+BACDpB,EAAM,GAAKC,EAAM,EACXQ,GACIpc,EAAOlxB,KAA0B,EAAlB6pB,EAAuB,EACtCqH,EAAOjxB,IAAMmtC,EACbP,EAAyB,EAAlBhjB,EAAuB,EAC9BijB,EAA2B,EAApBljB,EAAyB,EAChCqd,GAAO4G,aAEX,IAAItC,GACAra,EAAOlxB,KAA0B,EAAlB6pB,EAAuB,EACtCqH,EAAOjxB,IAAMixB,EAAO/wB,OAA8B,EAApBypB,EAAyB,GAErE9sB,KAAKoxC,oBACD3B,EAAM,GAAKC,EAAM,EACXc,GACIpc,EAAOlxB,KAAO6pB,EAAkB,EAChCqH,EAAOjxB,IAAMypB,EAAiB,EAC9B6iB,EAAM1iB,EAAkB,EACxB2iB,EAAM9iB,EAAiB,EACvBud,GAAOsG,UAEX,IAAIhC,GAAOra,EAAOlxB,KAAO6pB,EAAkB,EAAGqH,EAAOjxB,IAAMypB,EAAiB,GACtF5sB,KAAKqxC,qBACD5B,EAAM,GAAKC,EAAM,EACXc,GACIpc,EAAOlxB,KAAOitC,EACd/b,EAAOjxB,IAAMypB,EAAiB,EAC9B+iB,EAAM9iB,EAAmB,EACzB+iB,EAAMhjB,EAAiB,EACvBud,GAAOwG,WAEX,IAAIlC,GAAOra,EAAOlxB,KAAOkxB,EAAOhxB,MAAQypB,EAAmB,EAAGuH,EAAOjxB,IAAMypB,EAAiB,GACtG5sB,KAAKsxC,wBACDzB,EAAM,GAAKC,EAAM,EACXU,GACIpc,EAAOlxB,KAAOmtC,EACdjc,EAAOjxB,IAAMitC,EACbP,EAAMhjB,EAAmB,EACzBijB,EAAMhjB,EAAoB,EAC1Bqd,GAAO0G,cAEX,IAAIpC,GACAra,EAAOlxB,KAAOkxB,EAAOhxB,MAAQypB,EAAmB,EAChDuH,EAAOjxB,IAAMixB,EAAO/wB,OAASypB,EAAoB,GAE/D9sB,KAAKuxC,uBACDxB,EAAM,GAAKC,EAAM,EACXQ,GACIpc,EAAOlxB,KAAO6pB,EAAkB,EAChCqH,EAAOjxB,IAAMmtC,EACbP,EAAMhjB,EAAkB,EACxBijB,EAAMljB,EAAoB,EAC1Bqd,GAAO4G,aAEX,IAAItC,GAAOra,EAAOlxB,KAAO6pB,EAAkB,EAAGqH,EAAOjxB,IAAMixB,EAAO/wB,OAASypB,EAAoB,GACzG9sB,KAAKwxC,iBACD/B,EAAM,GAAKC,EAAM,EACXc,GAAepc,EAAOlxB,KAAMkxB,EAAOjxB,IAAKssC,EAAKC,EAAKvF,GAAOsG,UACzD,IAAIhC,GAAOra,EAAOlxB,KAAMkxB,EAAOjxB,KACzCnD,KAAKyxC,kBACD9B,EAAM,GAAKC,EAAM,EACXY,GAAepc,EAAOlxB,KAAOitC,EAAU/b,EAAOjxB,IAAKwsC,EAAKC,EAAKzF,GAAOwG,WACpE,IAAIlC,GAAOra,EAAOlxB,KAAOkxB,EAAOhxB,MAAOgxB,EAAOjxB,KACxDnD,KAAK0xC,qBACD7B,EAAM,GAAKC,EAAM,EACXU,GAAepc,EAAOlxB,KAAOmtC,EAAajc,EAAOjxB,IAAMitC,EAAaP,EAAKC,EAAK3F,GAAO0G,cACrF,IAAIpC,GAAOra,EAAOlxB,KAAOkxB,EAAOhxB,MAAOgxB,EAAOjxB,IAAMixB,EAAO/wB,QACrErD,KAAK2xC,oBACD5B,EAAM,GAAKC,EAAM,EACXQ,GAAepc,EAAOlxB,KAAMkxB,EAAOjxB,IAAMmtC,EAAYP,EAAKC,EAAK7F,GAAO4G,aACtE,IAAItC,GAAOra,EAAOlxB,KAAMkxB,EAAOjxB,IAAMixB,EAAO/wB,QACtDrD,KAAK4xC,kBACDnC,EAAM,GAAKC,EAAM,EACXc,GACIpc,EAAOlxB,KAAO6pB,EACdqH,EAAOjxB,IAAMypB,EACbloB,KAAKC,IAAI,EAAG8qC,EAAM1iB,GAClBroB,KAAKC,IAAI,EAAG+qC,EAAM9iB,GAClBud,GAAOsG,UAEX,IAAIhC,GAAOra,EAAOlxB,KAAO6pB,EAAiBqH,EAAOjxB,IAAMypB,GACjE5sB,KAAK6xC,mBACDlC,EAAM,GAAKC,EAAM,EACXY,GACIpc,EAAOlxB,KAAOwB,KAAK0S,IAAI+4B,EAAU/b,EAAOhxB,MAAQypB,GAChDuH,EAAOjxB,IAAMypB,EACbujB,EAAW/b,EAAOhxB,MAAQypB,EAAmB,EAAInoB,KAAKC,IAAI,EAAGgrC,EAAM9iB,GACnEnoB,KAAKC,IAAI,EAAGirC,EAAMhjB,GAClBud,GAAOwG,WAEX,IAAIlC,GAAOra,EAAOlxB,KAAOkxB,EAAOhxB,MAAQypB,EAAkBuH,EAAOjxB,IAAMypB,GACjF5sB,KAAK8xC,sBACDjC,EAAM,GAAKC,EAAM,EACXU,GACIpc,EAAOlxB,KAAOwB,KAAK0S,IAAIi5B,EAAajc,EAAOhxB,MAAQ2pB,GACnDqH,EAAOjxB,IAAMuB,KAAK0S,IAAIg5B,EAAahc,EAAO/wB,OAASypB,GACnDpoB,KAAKC,IAAI,EAAGkrC,EAAMhjB,GAClBnoB,KAAKC,IAAI,EAAGmrC,EAAMhjB,GAClBqd,GAAO0G,cAEX,IAAIpC,GACAra,EAAOlxB,KAAOkxB,EAAOhxB,MAAQypB,EAC7BuH,EAAOjxB,IAAMixB,EAAO/wB,OAASypB,GAE3C9sB,KAAK+xC,qBACDhC,EAAM,GAAKC,EAAM,EACXQ,GACIpc,EAAOlxB,KAAO6pB,EACdqH,EAAOjxB,IAAMuB,KAAK0S,IAAIk5B,EAAYlc,EAAO/wB,OAASypB,GAClDpoB,KAAKC,IAAI,EAAGorC,EAAMhjB,GAClBroB,KAAKC,IAAI,EAAGqrC,EAAMljB,GAClBqd,GAAO4G,aAEX,IAAItC,GAAOra,EAAOlxB,KAAO6pB,EAAiBqH,EAAOjxB,IAAMixB,EAAO/wB,OAASypB,GACjF9sB,KAAKgyC,kBACDvC,EAAM,GAAKC,EAAM,EACXc,GACIpc,EAAOlxB,KAAO6pB,EAAkB2B,EAChC0F,EAAOjxB,IAAMypB,EAAiB2B,EAC9B7pB,KAAKC,IAAI,EAAG8qC,GAAO1iB,EAAkB2B,IACrChqB,KAAKC,IAAI,EAAG+qC,GAAO9iB,EAAiB2B,IACpC4b,GAAOsG,UAEX,IAAIhC,GAAOra,EAAOlxB,KAAO6pB,EAAkB2B,EAAa0F,EAAOjxB,IAAMypB,EAAiB2B,GAChGvuB,KAAKiyC,mBACDtC,EAAM,GAAKC,EAAM,EACXY,GACIpc,EAAOlxB,KAAOwB,KAAK0S,IAAI+4B,EAAU/b,EAAOhxB,MAAQ2pB,EAAkB2B,GAClE0F,EAAOjxB,IAAMypB,EAAiB2B,EAC9B4hB,EAAW/b,EAAOhxB,MAAQ2pB,EAAkB2B,EAAc,EAAIihB,EAAM5iB,EAAkB2B,EACtFkhB,GAAOhjB,EAAiB2B,GACxB4b,GAAOwG,WAEX,IAAIlC,GACAra,EAAOlxB,KAAOkxB,EAAOhxB,OAASypB,EAAmB2B,GACjD4F,EAAOjxB,IAAMypB,EAAiB2B,GAE5CvuB,KAAKkyC,sBACDrC,EAAM,GAAKC,EAAM,EACXU,GACIpc,EAAOlxB,KAAOwB,KAAK0S,IAAIi5B,EAAajc,EAAOhxB,OAAS2pB,EAAkB2B,IACtE0F,EAAOjxB,IAAMuB,KAAK0S,IAAIg5B,EAAahc,EAAO/wB,OAASupB,EAAiB2B,GACpE7pB,KAAKC,IAAI,EAAGkrC,GAAOhjB,EAAmB2B,IACtCshB,GAAOhjB,EAAoB2B,GAC3B0b,GAAO0G,cAEX,IAAIpC,GACAra,EAAOlxB,KAAOkxB,EAAOhxB,OAASypB,EAAmB2B,GACjD4F,EAAOjxB,IAAMixB,EAAO/wB,QAAUypB,EAAoB2B,IAEhEzuB,KAAKmyC,qBACDpC,EAAM,GAAKC,EAAM,EACXQ,GACIpc,EAAOlxB,KAAO6pB,EAAkB2B,EAChC0F,EAAOjxB,IAAMmtC,EACb5rC,KAAKC,IAAI,EAAGorC,GAAOhjB,EAAkB2B,IACrCshB,GAAOljB,EAAoB2B,GAC3B0b,GAAO4G,aAEX,IAAItC,GACAra,EAAOlxB,KAAO6pB,EAAkB2B,EAChC0F,EAAOjxB,IAAMixB,EAAO/wB,QAAUypB,EAAoB2B,IAGxE,SAxTA,IA0TA,SAAK0b,GACDA,EAAAA,EAAAA,SAAAA,GAAAA,WACAA,EAAAA,EAAAA,UAAAA,GAAAA,YACAA,EAAAA,EAAAA,aAAAA,GAAAA,eACAA,EAAAA,EAAAA,YAAAA,GAAAA,aACH,CALD,CAAKA,KAAAA,GAAM,KAOX,IAAMqG,GAAiB,SAACjtC,EAAW1B,EAAWuwC,EAAYC,EAAYnoB,GAClE,IAAMooB,GAAc5tC,KAAK2jB,KAAK,GAAK,GAAK,EAA1B,EACRkqB,EAAKH,EAAKE,EACVE,EAAKH,EAAKC,EACVG,EAAKlvC,EAAI6uC,EACTM,EAAK7wC,EAAIwwC,EAEf,OAAQnoB,GACJ,KAAKigB,GAAOsG,SACR,OAAO,IAAI1B,GACP,IAAIN,GAAOlrC,EAAGmvC,GACd,IAAIjE,GAAOlrC,EAAGmvC,EAAKF,GACnB,IAAI/D,GAAOgE,EAAKF,EAAI1wC,GACpB,IAAI4sC,GAAOgE,EAAI5wC,IAEvB,KAAKsoC,GAAOwG,UACR,OAAO,IAAI5B,GACP,IAAIN,GAAOlrC,EAAG1B,GACd,IAAI4sC,GAAOlrC,EAAIgvC,EAAI1wC,GACnB,IAAI4sC,GAAOgE,EAAIC,EAAKF,GACpB,IAAI/D,GAAOgE,EAAIC,IAEvB,KAAKvI,GAAO0G,aACR,OAAO,IAAI9B,GACP,IAAIN,GAAOgE,EAAI5wC,GACf,IAAI4sC,GAAOgE,EAAI5wC,EAAI2wC,GACnB,IAAI/D,GAAOlrC,EAAIgvC,EAAIG,GACnB,IAAIjE,GAAOlrC,EAAGmvC,IAEtB,KAAKvI,GAAO4G,YACZ,QACI,OAAO,IAAIhC,GACP,IAAIN,GAAOgE,EAAIC,GACf,IAAIjE,GAAOgE,EAAKF,EAAIG,GACpB,IAAIjE,GAAOlrC,EAAG1B,EAAI2wC,GAClB,IAAI/D,GAAOlrC,EAAG1B,IAG9B,EAEa8wC,GAAyB,SAACC,GACnC,MAAO,CAACA,EAAOpB,iBAAkBoB,EAAOnB,kBAAmBmB,EAAOlB,qBAAsBkB,EAAOjB,oBACnG,EAEakB,GAA0B,SAACD,GACpC,MAAO,CACHA,EAAOZ,kBACPY,EAAOX,mBACPW,EAAOV,sBACPU,EAAOT,qBAEf,EAEaW,GAA0B,SAACF,GACpC,MAAO,CACHA,EAAOhB,kBACPgB,EAAOf,mBACPe,EAAOd,sBACPc,EAAOb,qBAEf,EIhXA,cAII,WAAqBjjB,EAA0BC,EAA0BM,GAApD,KAAAP,QAAAA,EAA0B,KAAAC,QAAAA,EAA0B,KAAAM,OAAAA,EAHhE,KAAAriB,KAAI,EACJ,KAAAi+B,OAAiB,EAG9B,SALA,GAOA,cAGI,WAAqBuE,EAAuBvE,GAAvB,KAAAuE,KAAAA,EAAuB,KAAAvE,OAAAA,EAFnC,KAAAj+B,KAAI,EAGjB,SAJA,GAMA,cAII,WAAqBsjB,GAAA,KAAAA,QAAAA,EAHZ,KAAAtjB,KAAI,EACJ,KAAAi+B,OAAiB,EAG9B,SALA,GAOa8H,GAAoB,SAACC,GAC9B,OAAgB,IAAhBA,EAAOhmC,IAAP,EACSimC,GAAe,SAACD,GAAiD,OAAgB,IAAhBA,EAAOhmC,IAAI,EAC5EkmC,GAAkB,SAACF,GAAoD,OAAgB,IAAhBA,EAAOhmC,IAAI,EC9BlFmmC,GAAY,SAACxmC,EAAWnN,GACjC,OAAImN,EAAEvO,SAAWoB,EAAEpB,QACRuO,EAAEwnB,MAAK,SAAC5xB,EAAGrE,GAAM,OAAAqE,IAAM/C,EAAEtB,EAAE,GAI1C,EAEak1C,GAAgB,SAAC5D,EAAcd,EAAgBC,EAAgB0E,EAAgBC,GACxF,OAAO9D,EAAK3hC,KAAI,SAAC0lC,EAAO7tC,GACpB,OAAQA,GACJ,KAAK,EACD,OAAO6tC,EAAMhO,IAAImJ,EAAQC,GAC7B,KAAK,EACD,OAAO4E,EAAMhO,IAAImJ,EAAS2E,EAAQ1E,GACtC,KAAK,EACD,OAAO4E,EAAMhO,IAAImJ,EAAS2E,EAAQ1E,EAAS2E,GAC/C,KAAK,EACD,OAAOC,EAAMhO,IAAImJ,EAAQC,EAAS2E,GAE1C,OAAOC,IAEf,ECtBA,cAUI,WAAY5U,GACR3+B,KAAKyzB,QAAUkL,EACf3+B,KAAKwzC,YAAc,GACnBxzC,KAAKyzC,eAAiB,GACtBzzC,KAAK0zC,eAAiB,GACtB1zC,KAAK2zC,uCAAyC,GAC9C3zC,KAAK4zC,eAAiB,GACtB5zC,KAAK6zC,oBAAsB,GAC3B7zC,KAAK8zC,yBAA2B,GAExC,SApBA,GAsBA,cAKI,WAAqBnV,EAAsCzkB,GAMvD,GANiB,KAAAykB,UAAAA,EAAsC,KAAAzkB,OAAAA,EAJlD,KAAA65B,QAA4B,GAKjC/zC,KAAK4yC,OAAS,IAAIoB,GAAYh0C,KAAK2+B,WAC/B3+B,KAAK2+B,UAAU5K,OAAOzD,QAAU,GAChCtwB,KAAK+zC,QAAQx1C,KAAK,IAAI01C,GAAcj0C,KAAK2+B,UAAU5K,OAAOzD,UAGtB,OAApCtwB,KAAK2+B,UAAU5K,OAAO7E,UAAoB,CAC1C,IAAMJ,EAAU9uB,KAAK2+B,UAAUvK,OAAOlxB,KAAOlD,KAAK2+B,UAAU5K,OAAOlE,gBAAgB,GAAGnY,OAChFqX,EAAU/uB,KAAK2+B,UAAUvK,OAAOjxB,IAAMnD,KAAK2+B,UAAU5K,OAAOlE,gBAAgB,GAAGnY,OAC/E2X,EAASrvB,KAAK2+B,UAAU5K,OAAO7E,UACrClvB,KAAK+zC,QAAQx1C,KAAK,IAAI21C,GAAgBplB,EAASC,EAASM,IAG5D,GAAwC,IAApCrvB,KAAK2+B,UAAU5K,OAAOjB,UAAgC,CACtD,IAAMqhB,EAAYxB,GAAuB3yC,KAAK4yC,QACxCwB,EAAatB,GAAwB9yC,KAAK4yC,QAE5CO,GAAUgB,EAAWC,GACrBp0C,KAAK+zC,QAAQx1C,KAAK,IAAI81C,GAAWF,EAAW,KAE5Cn0C,KAAK+zC,QAAQx1C,KAAK,IAAI81C,GAAWF,EAAW,IAC5Cn0C,KAAK+zC,QAAQx1C,KAAK,IAAI81C,GAAWD,EAAY,MAgC7D,OA3BIE,EAAAA,UAAAA,WAAA,SAAWrJ,GAIP,IAHA,IAAIsJ,GAA0F,IAAjF,CAAC,EAAD,GAAoC/nC,QAAQxM,KAAK2+B,UAAU5K,OAAO7J,UAC3EhQ,EAASla,KAAKka,OACZ65B,EAAU/zC,KAAK+zC,QAAQ/wC,MAAM,GAC5BkX,GAAQ,CACX,IAAMs6B,EAAkBt6B,EAAO65B,QAAQl5B,QAAO,SAACm4B,GAAW,OAACC,GAAaD,EAAO,IAC/E,GAAIuB,GAA+C,IAArCr6B,EAAOykB,UAAU5K,OAAO7J,WAAiChQ,EAAOA,QAG1E,GAFA65B,EAAQx9B,QAAO,MAAfw9B,EAAmBS,GACnBD,GAA4F,IAAnF,CAAC,EAAD,GAAoC/nC,QAAQ0N,EAAOykB,UAAU5K,OAAO7J,UACnC,IAAtChQ,EAAOykB,UAAU5K,OAAOjB,UAAgC,CACxD,IAAMqhB,EAAYxB,GAAuBz4B,EAAO04B,QAC1CwB,EAAatB,GAAwB54B,EAAO04B,QAC7CO,GAAUgB,EAAWC,IACtBL,EAAQx9B,QACJ,IAAI89B,GAAWD,EAAY,UAKvCL,EAAQx9B,QAAO,MAAfw9B,EAAmBS,GAGvBt6B,EAASA,EAAOA,OAGpB,OAAO65B,EAAQl5B,QAAO,SAACm4B,GAAW,OAAAhiB,GAASgiB,EAAO/H,OAAQA,EAAO,KAEzE,EA1DA,GA4DMwJ,GAAiB,SAAjBA,EACFv6B,EACAw6B,EACAC,EACAC,GAEA16B,EAAOykB,UAAU7K,SAASznB,SAAQ,SAACw7B,GAC/B,IAAMgN,EAA6B7jB,GAAS6W,EAAMtyB,MAAO,GACnDwpB,EAAyB/N,GAAS6W,EAAMtyB,MAAO,GAC/Cu/B,EAAiB,IAAIR,GAAazM,EAAO3tB,GAC3C8W,GAAS6W,EAAM9T,OAAO9G,QAAS,OAC/B2nB,EAAUr2C,KAAKu2C,GAGnB,IAAMC,EAAiB/jB,GAAS6W,EAAMtyB,MAAO,GAAuB,GAAKq/B,EAEzE,GAAIC,GAA8B9V,EAAwB,CACtD,IAAMiW,EACFH,GAA8BhN,EAAM9T,OAAOb,eAAiByhB,EAAsBD,EAEhFO,EAAQ,IAAIC,GAAgBJ,GAElC,GAAIjN,EAAM9T,OAAOb,gBAAkB2U,EAAM9T,OAAOzD,QAAU,GAAKuX,EAAM9T,OAAOuM,gBAAiB,CACzF,IAAM6U,EAAQtN,EAAM9T,OAAO7D,OAAOE,MAClC,GAAI+kB,EAAQ,EAAG,CACX,IAAIC,EAAQ,EAEZJ,EAAYtB,eAAevf,MAAK,SAACrnB,EAAS5O,GACtC,OAAIi3C,EAAQroC,EAAQ2mB,QAAQkL,UAAU5K,OAAO7D,OAAOE,OAChDglB,EAAQl3C,GACD,GACAk3C,EAAQ,KAMvBJ,EAAYtB,eAAer8B,OAAO+9B,EAAO,EAAGH,QACzC,GAAIE,EAAQ,EAAG,CAClB,IAAIE,EAAQ,EACZL,EAAYpB,eAAezf,MAAK,SAACrnB,EAAS5O,GACtC,OAAIi3C,GAASroC,EAAQ2mB,QAAQkL,UAAU5K,OAAO7D,OAAOE,OACjDilB,EAAQn3C,EAAI,GACL,GACAm3C,EAAQ,KAMvBL,EAAYpB,eAAev8B,OAAOg+B,EAAO,EAAGJ,QAE5CD,EAAYrB,uCAAuCp1C,KAAK02C,QAGxDpN,EAAM9T,OAAOyM,aACbwU,EAAYnB,oBAAoBt1C,KAAK02C,GAErCD,EAAYlB,yBAAyBv1C,KAAK02C,GAIlDR,EACIK,EACAG,EACAJ,EAA6BI,EAAQN,EACrCI,QAGAlN,EAAM9T,OAAOuhB,gBACbZ,EAAgBlB,YAAYj1C,KAAKu2C,GAEjCJ,EAAgBjB,eAAel1C,KAAKu2C,GAGxCL,EAAeK,EAAgBJ,EAAiBC,EAAqBI,GAGrE/jB,GAAS6W,EAAMtyB,MAAO,IACtBggC,GAAiB1N,EAAOkN,KAGpC,EAEMQ,GAAmB,SAACC,EAAyB1hB,GAG/C,IAFA,IAAI2hB,EAAYD,aAAiB1V,GAAqB0V,EAAMjuC,MAAQ,EAC9Dq1B,EAAW4Y,aAAiB1V,IAAqB0V,EAAM5Y,SACpD1+B,EAAI,EAAGA,EAAI41B,EAAS11B,OAAQF,IAAK,CACtC,IAAMitC,EAAOrX,EAAS51B,GAElBitC,EAAKxM,qBAAqBiB,IACM,kBAAzBuL,EAAKxM,UAAU79B,OACG,IAAzBqqC,EAAKxM,UAAU79B,QAEf20C,EAAYtK,EAAKxM,UAAU79B,OAG/BqqC,EAAKuK,UAAYzT,GAAkBwT,EAAWtK,EAAKxM,UAAU5K,OAAOjG,eAAe,GAEnF2nB,GAAa7Y,GAAY,EAAI,EAErC,EAEa+Y,GAAwB,SAAChX,GAClC,IAAMmW,EAAiB,IAAIR,GAAa3V,EAAW,MAC7CT,EAAO,IAAIgX,GAAgBJ,GAC3BF,EAA4B,GAGlC,OAFAH,GAAeK,EAAgB5W,EAAMA,EAAM0W,GAC3CW,GAAiBT,EAAenW,UAAWiW,GACpC1W,CACX,ECxMa0X,GAAqB,SAAChD,EAAqBiD,GACpD,OAAQA,GACJ,KAAK,EACD,OAAOC,GACHlD,EAAOpB,iBACPoB,EAAOhB,kBACPgB,EAAOnB,kBACPmB,EAAOf,oBAEf,KAAK,EACD,OAAOiE,GACHlD,EAAOnB,kBACPmB,EAAOf,mBACPe,EAAOlB,qBACPkB,EAAOd,uBAEf,KAAK,EACD,OAAOgE,GACHlD,EAAOlB,qBACPkB,EAAOd,sBACPc,EAAOjB,oBACPiB,EAAOb,sBAGf,QACI,OAAO+D,GACHlD,EAAOjB,oBACPiB,EAAOb,qBACPa,EAAOpB,iBACPoB,EAAOhB,mBAGvB,EAEamE,GAAgC,SAACnD,EAAqBiD,GAC/D,OAAQA,GACJ,KAAK,EACD,OAAOC,GACHlD,EAAOpB,iBACPoB,EAAOrC,4BACPqC,EAAOnB,kBACPmB,EAAOlC,8BAEf,KAAK,EACD,OAAOoF,GACHlD,EAAOnB,kBACPmB,EAAOlC,6BACPkC,EAAOlB,qBACPkB,EAAOhC,iCAEf,KAAK,EACD,OAAOkF,GACHlD,EAAOlB,qBACPkB,EAAOhC,gCACPgC,EAAOjB,oBACPiB,EAAO9B,gCAGf,QACI,OAAOgF,GACHlD,EAAOjB,oBACPiB,EAAO9B,+BACP8B,EAAOpB,iBACPoB,EAAOrC,6BAGvB,EAEayF,GAAgC,SAACpD,EAAqBiD,GAC/D,OAAQA,GACJ,KAAK,EACD,OAAOC,GACHlD,EAAO5B,4BACP4B,EAAOhB,kBACPgB,EAAO3B,6BACP2B,EAAOf,oBAEf,KAAK,EACD,OAAOiE,GACHlD,EAAO3B,6BACP2B,EAAOf,mBACPe,EAAO1B,gCACP0B,EAAOd,uBAEf,KAAK,EACD,OAAOgE,GACHlD,EAAO1B,gCACP0B,EAAOd,sBACPc,EAAOzB,+BACPyB,EAAOb,sBAGf,QACI,OAAO+D,GACHlD,EAAOzB,+BACPyB,EAAOb,qBACPa,EAAO5B,4BACP4B,EAAOhB,mBAGvB,EAEaqE,GAA2B,SAACrD,EAAqBiD,GAC1D,OAAQA,GACJ,KAAK,EACD,OAAOK,GAA2BtD,EAAOxB,oBAAqBwB,EAAOvB,sBACzE,KAAK,EACD,OAAO6E,GAA2BtD,EAAOvB,qBAAsBuB,EAAOtB,yBAC1E,KAAK,EACD,OAAO4E,GAA2BtD,EAAOtB,wBAAyBsB,EAAOrB,wBAE7E,QACI,OAAO2E,GAA2BtD,EAAOrB,uBAAwBqB,EAAOxB,qBAEpF,EAEM8E,GAA6B,SAACC,EAAcC,GAC9C,IAAM5G,EAAO,GAab,OAZID,GAAc4G,GACd3G,EAAKjxC,KAAK43C,EAAOE,UAAU,IAAK,IAEhC7G,EAAKjxC,KAAK43C,GAGV5G,GAAc6G,GACd5G,EAAKjxC,KAAK63C,EAAOC,UAAU,IAAK,IAEhC7G,EAAKjxC,KAAK63C,GAGP5G,CACX,EAEMsG,GAAuB,SAACK,EAAcG,EAAcF,EAAcG,GACpE,IAAM/G,EAAO,GAyBb,OAxBID,GAAc4G,GACd3G,EAAKjxC,KAAK43C,EAAOE,UAAU,IAAK,IAEhC7G,EAAKjxC,KAAK43C,GAGV5G,GAAc6G,GACd5G,EAAKjxC,KAAK63C,EAAOC,UAAU,IAAK,IAEhC7G,EAAKjxC,KAAK63C,GAGV7G,GAAcgH,GACd/G,EAAKjxC,KAAKg4C,EAAOF,UAAU,IAAK,GAAMG,WAEtChH,EAAKjxC,KAAKg4C,GAGVhH,GAAc+G,GACd9G,EAAKjxC,KAAK+3C,EAAOD,UAAU,IAAK,GAAOG,WAEvChH,EAAKjxC,KAAK+3C,GAGP9G,CACX,EChKa4E,GAAa,SAAC3gB,GACvB,IAAMW,EAASX,EAAQW,OACjBL,EAASN,EAAQM,OACvB,OAAOK,EAAOmR,IACVxR,EAAOhH,gBACPgH,EAAOnH,iBACLmH,EAAOlH,iBAAmBkH,EAAOhH,mBACjCgH,EAAOnH,eAAiBmH,EAAOjH,mBAEzC,EAEa2pB,GAAa,SAAChjB,GACvB,IAAMM,EAASN,EAAQM,OACjBK,EAASX,EAAQW,OAEjB1F,EAAczU,GAAiB8Z,EAAOrF,YAAa0F,EAAOhxB,OAC1DorB,EAAevU,GAAiB8Z,EAAOvF,aAAc4F,EAAOhxB,OAC5DmrB,EAAatU,GAAiB8Z,EAAOxF,WAAY6F,EAAOhxB,OACxDqrB,EAAgBxU,GAAiB8Z,EAAOtF,cAAe2F,EAAOhxB,OAEpE,OAAOgxB,EAAOmR,IACV7W,EAAcqF,EAAOhH,gBACrBwB,EAAawF,EAAOnH,iBAClBmH,EAAOlH,iBAAmBkH,EAAOhH,gBAAkB2B,EAAcF,KACjEuF,EAAOnH,eAAiBmH,EAAOjH,kBAAoByB,EAAaE,GAE1E,EClBaioB,GAAqC,SAC9CvrB,EACAsI,GAEA,OAAyB,IAArBtI,EACOsI,EAAQW,OAGM,IAArBjJ,EACOsrB,GAAWhjB,GAGf2gB,GAAW3gB,EACtB,EAEakjB,GAAkC,SAAC3wB,EAAiCyN,GAC7E,OAAuB,IAAnBzN,EACOyN,EAAQW,OAGI,IAAnBpO,EACOywB,GAAWhjB,GAGf2gB,GAAW3gB,EACtB,EAEamjB,GAA+B,SACxCjY,EACAj5B,EACAmxC,GAEA,IAAMC,EAA4BJ,GAC9BK,GAA2BpY,EAAU5K,OAAO5I,iBAAkBzlB,GAC9Di5B,GAGEqY,EAAyBL,GAC3BI,GAA2BpY,EAAU5K,OAAO/N,eAAgBtgB,GAC5Di5B,GAGEsY,EAAsBC,GACxBH,GAA2BpY,EAAU5K,OAAOvI,eAAgB9lB,GAC5DmxC,EACAC,GAGGK,EAAyBF,EAAmB,GAAjCG,EAAcH,EAAmB,GAE7C/sB,EAAWnQ,GACbg9B,GAA2BpY,EAAU5K,OAAO3I,mBAAoB1lB,GAChEoxC,EAA0B1zC,MAAQ+zC,EAClCL,EAA0BzzC,OAAS+zC,GAcvC,MAAO,CAXMC,GACTN,GAA2BpY,EAAU5K,OAAO1I,iBAAkB3lB,GAC9DwkB,EACA+sB,EACAH,EACAE,GAGYtyC,KAAKqX,MAAM+6B,EAA0B5zC,KAAOgnB,EAAS,IACrDxlB,KAAKqX,MAAM+6B,EAA0B3zC,IAAM+mB,EAAS,IAEpCitB,EAAWC,EAC/C,EAEaE,GAAS,SAACpiC,GAA6B,OAAAgE,GAAahE,IAAUA,EAAMpU,QAAUkqB,GAAgBusB,IAAI,EAEzGC,GAAoB,SAAC12C,GAA0C,MAAiB,kBAAVA,CAAkB,EAEjFo2C,GAA0B,SACnC/tB,EACA/B,EACAgN,OADCiI,EAAc,KAAEE,EAAe,KAAEkb,EAAmB,KAG9C/wB,EAAiByC,EAAI,GAAduuB,EAAUvuB,EAAI,GAE5B,IAAKzC,EACD,MAAO,CAAC,EAAG,GAGf,GAAIhN,GAAmBgN,IAAUgxB,GAAUh+B,GAAmBg+B,GAC1D,MAAO,CAACz9B,GAAiByM,EAAO0N,EAAOhxB,OAAQ6W,GAAiBy9B,EAAQtjB,EAAO/wB,SAGnF,IAAMs0C,EAAyBH,GAAkBC,GAEjD,GAAIv+B,GAAawN,KAAWA,EAAM5lB,QAAUkqB,GAAgBhB,SAAWtD,EAAM5lB,QAAUkqB,GAAgBjB,OACnG,OAAIytB,GAAkBC,GACErjB,EAAOhxB,MAAQgxB,EAAO/wB,OAErBo0C,KAAyB/wB,EAAM5lB,QAAUkqB,GAAgBjB,OACxE,CAACqK,EAAOhxB,MAAOgxB,EAAOhxB,MAAQq0C,GAC9B,CAACrjB,EAAO/wB,OAASo0C,EAAqBrjB,EAAO/wB,QAGhD,CAAC+wB,EAAOhxB,MAAOgxB,EAAO/wB,QAGjC,IAAMu0C,EAAoBJ,GAAkBnb,GACtCwb,EAAqBL,GAAkBjb,GACvCub,EAAyBF,GAAqBC,EAGpD,GAAIP,GAAO5wB,MAAYgxB,GAAUJ,GAAOI,IAEpC,OAAIE,GAAqBC,EACd,CAACxb,EAA0BE,GAMjCob,GAA2BG,EAQ5BA,GAA0BH,EAOnB,CANOC,EACPvb,EACAE,EAA8Bkb,EACtBI,EACRtb,EACAF,EAA6Bob,GAQjC,CAFOG,EAAqBvb,EAA4BjI,EAAOhxB,MACvDy0C,EAAsBtb,EAA6BnI,EAAO/wB,QApB9D,CAAC+wB,EAAOhxB,MAAOgxB,EAAO/wB,QA0BrC,GAAIs0C,EAAwB,CACxB,IAAII,EAAQ,EACRC,EAAS,EAab,OAZIt+B,GAAmBgN,GACnBqxB,EAAQ99B,GAAiByM,EAAO0N,EAAOhxB,OAChCsW,GAAmBg+B,KAC1BM,EAAS/9B,GAAiBy9B,EAAQtjB,EAAO/wB,SAGzCi0C,GAAO5wB,GACPqxB,EAAQC,EAAUP,EACVC,IAAUJ,GAAOI,KACzBM,EAASD,EAASN,GAGf,CAACM,EAAOC,GAQnB,IAAI50C,EAAQ,KACRC,EAAS,KAsBb,GApBIqW,GAAmBgN,GACnBtjB,EAAQ6W,GAAiByM,EAAO0N,EAAOhxB,OAChCs0C,GAAUh+B,GAAmBg+B,KACpCr0C,EAAS4W,GAAiBy9B,EAAQtjB,EAAO/wB,SAG/B,OAAVD,GAAoBs0C,IAAUJ,GAAOI,KACrCr0C,EACIu0C,GAAqBC,EACdz0C,EAASi5B,EAA8BE,EACxCnI,EAAO/wB,QAGN,OAAXA,GAAmBi0C,GAAO5wB,KAC1BtjB,EACIw0C,GAAqBC,EACdx0C,EAAUk5B,EAA+BF,EAC1CjI,EAAOhxB,OAGP,OAAVA,GAA6B,OAAXC,EAClB,MAAO,CAACD,EAAOC,GAGnB,MAAM,IAAIoB,MAAM,kDACpB,EAEasyC,GAA6B,SAAIv+B,EAAa9S,GACvD,IAAM5E,EAAQ0X,EAAO9S,GACrB,MAAqB,qBAAV5E,EACA0X,EAAO,GAGX1X,CACX,EAEau2C,GAAgC,SACzC7gB,EACApP,EACA6wB,EACAnB,EACAE,OAHCzzC,EAAC,KAAE1B,EAAC,KACJuB,EAAK,KAAEC,EAAM,KAId,OAAQmzB,GACJ,KAAK,EACD,MAAO,CACH,IAAIiY,GAAO/pC,KAAKqX,MAAM+6B,EAA0B5zC,MAAOwB,KAAKqX,MAAM+6B,EAA0B3zC,IAAMtB,IAClG,IAAI4sC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAO4zC,EAA0B1zC,OACtEsB,KAAKqX,MAAM+6B,EAA0B3zC,IAAMtB,IAE/C,IAAI4sC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAO4zC,EAA0B1zC,OACtEsB,KAAKqX,MAAM1Y,EAASyzC,EAA0B3zC,IAAMtB,IAExD,IAAI4sC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,MACrCwB,KAAKqX,MAAM1Y,EAASyzC,EAA0B3zC,IAAMtB,KAGhE,KAAK,EACD,MAAO,CACH,IAAI4sC,GAAO/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAOK,GAAImB,KAAKqX,MAAM+6B,EAA0B3zC,MAChG,IAAIsrC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAOK,EAAIH,GAChDsB,KAAKqX,MAAM+6B,EAA0B3zC,MAEzC,IAAIsrC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAOK,EAAIH,GAChDsB,KAAKqX,MAAM+6B,EAA0BzzC,OAASyzC,EAA0B3zC,MAE5E,IAAIsrC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAOK,GAC5CmB,KAAKqX,MAAM+6B,EAA0BzzC,OAASyzC,EAA0B3zC,OAGpF,KAAK,EACD,MAAO,CACH,IAAIsrC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAOK,GAC5CmB,KAAKqX,MAAM+6B,EAA0B3zC,IAAMtB,IAE/C,IAAI4sC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAOK,EAAIH,GAChDsB,KAAKqX,MAAM+6B,EAA0B3zC,IAAMtB,IAE/C,IAAI4sC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAOK,EAAIH,GAChDsB,KAAKqX,MAAM+6B,EAA0B3zC,IAAMtB,EAAIwB,IAEnD,IAAIorC,GACA/pC,KAAKqX,MAAM+6B,EAA0B5zC,KAAOK,GAC5CmB,KAAKqX,MAAM+6B,EAA0B3zC,IAAMtB,EAAIwB,KAG3D,QACI,MAAO,CACH,IAAIorC,GAAO/pC,KAAKqX,MAAMi7B,EAAuB9zC,MAAOwB,KAAKqX,MAAMi7B,EAAuB7zC,MACtF,IAAIsrC,GACA/pC,KAAKqX,MAAMi7B,EAAuB9zC,KAAO8zC,EAAuB5zC,OAChEsB,KAAKqX,MAAMi7B,EAAuB7zC,MAEtC,IAAIsrC,GACA/pC,KAAKqX,MAAMi7B,EAAuB9zC,KAAO8zC,EAAuB5zC,OAChEsB,KAAKqX,MAAMi7B,EAAuB3zC,OAAS2zC,EAAuB7zC,MAEtE,IAAIsrC,GACA/pC,KAAKqX,MAAMi7B,EAAuB9zC,MAClCwB,KAAKqX,MAAMi7B,EAAuB3zC,OAAS2zC,EAAuB7zC,OAItF,ECtSa+0C,GAAc,iFCMrBC,GAAc,cAEpB,cAII,WAAY5zC,GACRvE,KAAKo4C,MAAQ,CAAC,EACdp4C,KAAKq4C,UAAY9zC,EAyDzB,OAtDY+zC,EAAAA,UAAAA,aAAR,SAAqB5nB,EAAoB/C,GACrC,IAAMgR,EAAY3+B,KAAKq4C,UAAUtiB,cAAc,OACzC0B,EAAMz3B,KAAKq4C,UAAUtiB,cAAc,OACnCwiB,EAAOv4C,KAAKq4C,UAAUtiB,cAAc,QAEpCp0B,EAAO3B,KAAKq4C,UAAU12C,KAE5Bg9B,EAAUrS,MAAMyD,WAAa,SAC7B4O,EAAUrS,MAAMoE,WAAaA,EAC7BiO,EAAUrS,MAAMqB,SAAWA,EAC3BgR,EAAUrS,MAAMksB,OAAS,IACzB7Z,EAAUrS,MAAMmsB,QAAU,IAC1B9Z,EAAUrS,MAAMosB,WAAa,SAE7B/2C,EAAKq0B,YAAY2I,GAEjBlH,EAAII,IAAMqgB,GACVzgB,EAAIr0B,MAAQ,EACZq0B,EAAIp0B,OAAS,EAEbo0B,EAAInL,MAAMksB,OAAS,IACnB/gB,EAAInL,MAAMmsB,QAAU,IACpBhhB,EAAInL,MAAMqsB,cAAgB,WAE1BJ,EAAKjsB,MAAMoE,WAAaA,EACxB6nB,EAAKjsB,MAAMqB,SAAWA,EACtB4qB,EAAKjsB,MAAMksB,OAAS,IACpBD,EAAKjsB,MAAMmsB,QAAU,IAErBF,EAAKviB,YAAYh2B,KAAKq4C,UAAUlQ,eAAegQ,KAC/CxZ,EAAU3I,YAAYuiB,GACtB5Z,EAAU3I,YAAYyB,GACtB,IAAMmhB,EAAWnhB,EAAIohB,UAAYN,EAAKM,UAAY,EAElDla,EAAUvI,YAAYmiB,GACtB5Z,EAAU3I,YAAYh2B,KAAKq4C,UAAUlQ,eAAegQ,KAEpDxZ,EAAUrS,MAAMmB,WAAa,SAC7BgK,EAAInL,MAAMqsB,cAAgB,QAE1B,IAAMG,EAASrhB,EAAIohB,UAAYla,EAAUka,UAAY,EAIrD,OAFAl3C,EAAKy0B,YAAYuI,GAEV,CAACia,SAAQ,EAAEE,OAAM,IAE5BR,EAAAA,UAAAA,WAAA,SAAW5nB,EAAoB/C,GAC3B,IAAM3uB,EAAS0xB,EAAU,IAAI/C,EAK7B,MAJ+B,qBAApB3tB,KAAKo4C,MAAMp5C,KAClBgB,KAAKo4C,MAAMp5C,GAAOgB,KAAK+4C,aAAaroB,EAAY/C,IAG7C3tB,KAAKo4C,MAAMp5C,IAE1B,EA/DA,GCLA,cACI,WAA+B0E,EAAqCgK,GAArC,KAAAhK,QAAAA,EAAqC,KAAAgK,QAAAA,EACxE,SAFA,GCyDMsrC,GAAc,IAEpB,eAMI,WAAYt1C,EAAkBgK,GAA9B,MACIwuB,EAAAA,KAAAA,KAAMx4B,EAASgK,IAAQ,YAJVyuB,EAAAA,eAAmC,GAKhDA,EAAKzE,OAAShqB,EAAQgqB,OAAShqB,EAAQgqB,OAASnzB,SAASwxB,cAAc,UACvEoG,EAAKxE,IAAMwE,EAAKzE,OAAOE,WAAW,MAC7BlqB,EAAQgqB,SACTyE,EAAKzE,OAAOt0B,MAAQsB,KAAKi+B,MAAMj1B,EAAQtK,MAAQsK,EAAQurC,OACvD9c,EAAKzE,OAAOr0B,OAASqB,KAAKi+B,MAAMj1B,EAAQrK,OAASqK,EAAQurC,OACzD9c,EAAKzE,OAAOpL,MAAMlpB,MAAWsK,EAAQtK,MAAK,KAC1C+4B,EAAKzE,OAAOpL,MAAMjpB,OAAYqK,EAAQrK,OAAM,MAEhD84B,EAAK+c,YAAc,IAAIZ,GAAY/zC,UACnC43B,EAAKxE,IAAIshB,MAAM9c,EAAKzuB,QAAQurC,MAAO9c,EAAKzuB,QAAQurC,OAChD9c,EAAKxE,IAAIwhB,WAAWzrC,EAAQnK,GAAImK,EAAQ7L,GACxCs6B,EAAKxE,IAAIyhB,aAAe,SACxBjd,EAAKkd,eAAiB,GACtBld,EAAKz4B,QAAQ2hC,OAAO8H,MAChB,gCAAgCz/B,EAAQtK,MAAK,IAAIsK,EAAQrK,OAAM,gBAAgBqK,EAAQurC,SA0zBnG,OAh1BoCr5C,EAAAA,EAAAA,GA0BhC05C,EAAAA,UAAAA,aAAA,SAAavF,GACT,IADJ,WACW/zC,KAAKq5C,eAAej7C,QACvB4B,KAAKu5C,YAGTxF,EAAQ1nC,SAAQ,SAAC2mC,GAAW,SAAKwG,YAAYxG,EAAO,KAGxDsG,EAAAA,UAAAA,YAAA,SAAYtG,GACRhzC,KAAK23B,IAAI8hB,OACLvG,GAAgBF,KAChBhzC,KAAK23B,IAAI+hB,YAAc1G,EAAO1iB,SAG9ByiB,GAAkBC,KAClBhzC,KAAK23B,IAAIwhB,UAAUnG,EAAOlkB,QAASkkB,EAAOjkB,SAC1C/uB,KAAK23B,IAAIzI,UACL8jB,EAAO3jB,OAAO,GACd2jB,EAAO3jB,OAAO,GACd2jB,EAAO3jB,OAAO,GACd2jB,EAAO3jB,OAAO,GACd2jB,EAAO3jB,OAAO,GACd2jB,EAAO3jB,OAAO,IAElBrvB,KAAK23B,IAAIwhB,WAAWnG,EAAOlkB,SAAUkkB,EAAOjkB,UAG5CkkB,GAAaD,KACbhzC,KAAKwvC,KAAKwD,EAAOxD,MACjBxvC,KAAK23B,IAAIgiB,QAGb35C,KAAKq5C,eAAe96C,KAAKy0C,IAG7BsG,EAAAA,UAAAA,UAAA,WACIt5C,KAAKq5C,eAAe52C,MACpBzC,KAAK23B,IAAIiiB,WAGPN,EAAAA,UAAAA,YAAN,SAAkBrE,oGACCA,EAAMxhB,QAAQkL,UAAU5K,OAC5B8K,YACP,GAAM7+B,KAAK65C,mBAAmB5E,IAD9B,aACA7tB,EAAAA,0CAIFkyB,EAAAA,UAAAA,WAAN,SAAiBQ,oGACT9oB,GAAS8oB,EAAMnb,UAAUppB,MAAO,IAIhCukC,EAAMnb,UAAU5K,OAAO8K,YACvB,GAAM7+B,KAAK+5C,+BAA+BD,IAD1C,aAEA,OADA1yB,EAAAA,OACA,GAAMpnB,KAAKg6C,kBAAkBF,WAA7B1yB,EAAAA,0CAIRkyB,EAAAA,UAAAA,4BAAA,SAA4BxiB,EAAkBzJ,EAAuBurB,GAArE,WAC0B,IAAlBvrB,EACArtB,KAAK23B,IAAIsiB,SAASnjB,EAAKA,KAAMA,EAAK1C,OAAOlxB,KAAM4zB,EAAK1C,OAAOjxB,IAAMy1C,GAEjDre,GAAiBzD,EAAKA,MAC9BtO,QAAO,SAACtlB,EAAMg3C,GAGlB,OAFA/d,EAAKxE,IAAIsiB,SAASC,EAAQh3C,EAAM4zB,EAAK1C,OAAOjxB,IAAMy1C,GAE3C11C,EAAOi5B,EAAKxE,IAAIwiB,YAAYD,GAAQ92C,QAC5C0zB,EAAK1C,OAAOlxB,OAIfo2C,EAAAA,UAAAA,gBAAR,SAAwBvlB,GACpB,IAAMjD,EAAciD,EAAOjD,YACtBjW,QAAO,SAACu/B,GAAY,MAAY,WAAZA,GAAoC,eAAZA,CAAwB,IACpEl7C,KAAK,IACJwxB,EAAa2pB,GAAkBtmB,EAAOrD,YAAYxxB,KAAK,MACvDyuB,EAAW3U,GAAiB+a,EAAOpG,UACnC,GAAGoG,EAAOpG,SAASjW,OAASqc,EAAOpG,SAAShW,KACzCoc,EAAOpG,SAASjW,OAAM,KAE/B,MAAO,CACH,CAACqc,EAAOhD,UAAWD,EAAaiD,EAAOlD,WAAYlD,EAAU+C,GAAYxxB,KAAK,KAC9EwxB,EACA/C,IAIF2rB,EAAAA,UAAAA,eAAN,SAAqBxiB,EAAqB/C,wGAChC3M,EAA+BpnB,KAAKs6C,gBAAgBvmB,GAAnDwmB,EAAI,KAAE7pB,EAAU,KAAE/C,EAAQ,KAEjC3tB,KAAK23B,IAAI4iB,KAAOA,EAEhBv6C,KAAK23B,IAAI3K,UAAiC,IAArB+G,EAAO/G,UAA8B,MAAQ,MAClEhtB,KAAK23B,IAAIhJ,UAAY,OACrB3uB,KAAK23B,IAAIyhB,aAAe,aAClBnB,EAAqBj4C,KAAKk5C,YAAYsB,WAAW9pB,EAAY/C,GAA5DirB,EAAQ,WAAEE,EAAM,SACjBxmB,EAAayB,EAAOzB,WAE1BwE,EAAKoD,WAAW7tB,SAAQ,SAACyqB,GACrBxE,EAAWjmB,SAAQ,SAACouC,GAChB,OAAQA,GACJ,KAAK,EACDte,EAAKxE,IAAIO,UAAYxc,GAASqY,EAAO/Y,OACrCmhB,EAAKue,4BAA4B5jB,EAAM/C,EAAO1G,cAAeurB,GAC7D,IAAM+B,EAA0B5mB,EAAOnF,WAEnC+rB,EAAYv8C,QAAU04B,EAAKA,KAAKqD,OAAO/7B,SACvCu8C,EACK33C,MAAM,GACNwzC,UACAnqC,SAAQ,SAACuiB,GACNuN,EAAKxE,IAAIijB,YAAcl/B,GAASkT,EAAW5T,OAC3CmhB,EAAKxE,IAAIkjB,cAAgBjsB,EAAWE,QAAQpX,OAASykB,EAAKzuB,QAAQurC,MAClE9c,EAAKxE,IAAImjB,cAAgBlsB,EAAWG,QAAQrX,OAASykB,EAAKzuB,QAAQurC,MAClE9c,EAAKxE,IAAIojB,WAAansB,EAAWI,KAAKtX,OAEtCykB,EAAKue,4BAA4B5jB,EAAM/C,EAAO1G,cAAeurB,MAGrEzc,EAAKxE,IAAIijB,YAAc,GACvBze,EAAKxE,IAAIkjB,cAAgB,EACzB1e,EAAKxE,IAAImjB,cAAgB,EACzB3e,EAAKxE,IAAIojB,WAAa,GAGtBhnB,EAAOvD,mBAAmBpyB,SAC1B+9B,EAAKxE,IAAIO,UAAYxc,GAASqY,EAAOxD,qBAAuBwD,EAAO/Y,OACnE+Y,EAAOvD,mBAAmBnkB,SAAQ,SAACmkB,GAC/B,OAAQA,GACJ,KAAK,EAID2L,EAAKxE,IAAIQ,SACLrB,EAAK1C,OAAOlxB,KACZwB,KAAKqX,MAAM+a,EAAK1C,OAAOjxB,IAAMy1C,GAC7B9hB,EAAK1C,OAAOhxB,MACZ,GAGJ,MACJ,KAAK,EACD+4B,EAAKxE,IAAIQ,SACLrB,EAAK1C,OAAOlxB,KACZwB,KAAKqX,MAAM+a,EAAK1C,OAAOjxB,KACvB2zB,EAAK1C,OAAOhxB,MACZ,GAEJ,MACJ,KAAK,EAED+4B,EAAKxE,IAAIQ,SACLrB,EAAK1C,OAAOlxB,KACZwB,KAAKwD,KAAK4uB,EAAK1C,OAAOjxB,IAAM21C,GAC5BhiB,EAAK1C,OAAOhxB,MACZ,QAMpB,MACJ,KAAK,EACG2wB,EAAOtB,uBAAyBqE,EAAKA,KAAKqD,OAAO/7B,SACjD+9B,EAAKxE,IAAIqjB,YAAct/B,GAASqY,EAAOvB,uBACvC2J,EAAKxE,IAAIsjB,UAAYlnB,EAAOtB,sBAE5B0J,EAAKxE,IAAIujB,SAAclnB,OAAemnB,OAAS,QAAU,QACzDhf,EAAKxE,IAAIyjB,WAAWtkB,EAAKA,KAAMA,EAAK1C,OAAOlxB,KAAM4zB,EAAK1C,OAAOjxB,IAAMy1C,IAEvEzc,EAAKxE,IAAIqjB,YAAc,GACvB7e,EAAKxE,IAAIsjB,UAAY,EACrB9e,EAAKxE,IAAIujB,SAAW,0BAOxC5B,EAAAA,UAAAA,sBAAA,SACI3a,EACAiU,EACApoB,GAEA,GAAIA,GAASmU,EAAUtC,eAAiB,GAAKsC,EAAUpC,gBAAkB,EAAG,CACxE,IAAM8e,EAAM5E,GAAW9X,GACjB6Q,EAAOsD,GAAwBF,GACrC5yC,KAAKwvC,KAAKA,GACVxvC,KAAK23B,IAAI8hB,OACTz5C,KAAK23B,IAAIgiB,OACT35C,KAAK23B,IAAIG,UACLtN,EACA,EACA,EACAmU,EAAUtC,eACVsC,EAAUpC,gBACV8e,EAAIn4C,KACJm4C,EAAIl4C,IACJk4C,EAAIj4C,MACJi4C,EAAIh4C,QAERrD,KAAK23B,IAAIiiB,YAIXN,EAAAA,UAAAA,kBAAN,SAAwBQ,qIACpB95C,KAAKs7C,aAAaxB,EAAMyB,WAAW,IAC7B5c,EAAYmb,EAAMnb,UAClBiU,EAASkH,EAAMlH,OACf7e,EAAS4K,EAAU5K,WACL3M,EAAAA,EAAUyM,kCAAVruB,EAAAA,EAAAA,QAATqiC,EAAK,KACZ,GAAM7nC,KAAKw7C,eAAe3T,EAAO9T,KADE,aACnC0nB,EAAAA,+BADgBj2C,sBAIhBm5B,aAAqBY,IAArB,6BAEkB,gCAAMv/B,KAAK0D,QAAQinB,MAAM+wB,MAAM/c,EAAU9G,oBAAjDrN,EAAQixB,EAAAA,OACdz7C,KAAK27C,sBAAsBhd,EAAWiU,EAAQpoB,gCAE9CxqB,KAAK0D,QAAQ2hC,OAAO2B,MAAM,uBAAuBrI,EAAU9G,qBAI/D8G,aAAqBc,IACrBz/B,KAAK27C,sBAAsBhd,EAAWiU,EAAQjU,EAAUjH,UAGxDiH,aAAqBe,IAArB,8BAEkB,kCAAM1/B,KAAK0D,QAAQinB,MAAM+wB,MAAM/c,EAAUtG,qBAAjD7N,EAAQixB,EAAAA,OACdz7C,KAAK27C,sBAAsBhd,EAAWiU,EAAQpoB,kCAE9CxqB,KAAK0D,QAAQ2hC,OAAO2B,MAAM,qBAAqBrI,EAAUtG,IAAIjd,UAAU,EAAG,4BAI9EujB,aAAqByB,IAA0BzB,EAAUf,KAU1C,GATQ,IAAI0b,EAAet5C,KAAK0D,QAAS,CACpDu1C,MAAOj5C,KAAK0N,QAAQurC,MACpB/yB,gBAAiByY,EAAUzY,gBAC3B3iB,EAAG,EACH1B,EAAG,EACHuB,MAAOu7B,EAAUv7B,MACjBC,OAAQs7B,EAAUt7B,SAGcu4C,OAAOjd,EAAUf,OAVrD,eAUMlG,EAAS+jB,EAAAA,OACX9c,EAAUv7B,OAASu7B,EAAUt7B,QAC7BrD,KAAK23B,IAAIG,UACLJ,EACA,EACA,EACAiH,EAAUv7B,MACVu7B,EAAUt7B,OACVs7B,EAAUvK,OAAOlxB,KACjBy7B,EAAUvK,OAAOjxB,IACjBw7B,EAAUvK,OAAOhxB,MACjBu7B,EAAUvK,OAAO/wB,2BA4C7B,GAvCIs7B,aAAqBqB,KACf7W,EAAOzkB,KAAK0S,IAAIunB,EAAUvK,OAAOhxB,MAAOu7B,EAAUvK,OAAO/wB,QAE3Ds7B,EAAU3xB,OAASmwB,GACfwB,EAAUpB,UACVv9B,KAAK23B,IAAI8hB,OACTz5C,KAAKwvC,KAAK,CACN,IAAIf,GAAO9P,EAAUvK,OAAOlxB,KAAc,OAAPimB,EAAgBwV,EAAUvK,OAAOjxB,IAAa,IAAPgmB,GAC1E,IAAIslB,GAAO9P,EAAUvK,OAAOlxB,KAAc,IAAPimB,EAAawV,EAAUvK,OAAOjxB,IAAa,MAAPgmB,GACvE,IAAIslB,GAAO9P,EAAUvK,OAAOlxB,KAAc,OAAPimB,EAAgBwV,EAAUvK,OAAOjxB,IAAa,OAAPgmB,GAC1E,IAAIslB,GAAO9P,EAAUvK,OAAOlxB,KAAc,OAAPimB,EAAgBwV,EAAUvK,OAAOjxB,IAAa,MAAPgmB,GAC1E,IAAIslB,GAAO9P,EAAUvK,OAAOlxB,KAAc,OAAPimB,EAAgBwV,EAAUvK,OAAOjxB,IAAa,IAAPgmB,GAC1E,IAAIslB,GAAO9P,EAAUvK,OAAOlxB,KAAc,IAAPimB,EAAawV,EAAUvK,OAAOjxB,IAAa,OAAPgmB,GACvE,IAAIslB,GAAO9P,EAAUvK,OAAOlxB,KAAc,OAAPimB,EAAgBwV,EAAUvK,OAAOjxB,IAAa,IAAPgmB,KAG9EnpB,KAAK23B,IAAIO,UAAYxc,GAAS2hB,IAC9Br9B,KAAK23B,IAAIkkB,OACT77C,KAAK23B,IAAIiiB,WAENjb,EAAU3xB,OAASowB,IACtBuB,EAAUpB,UACVv9B,KAAK23B,IAAI8hB,OACTz5C,KAAK23B,IAAImkB,YACT97C,KAAK23B,IAAIokB,IACLpd,EAAUvK,OAAOlxB,KAAOimB,EAAO,EAC/BwV,EAAUvK,OAAOjxB,IAAMgmB,EAAO,EAC9BA,EAAO,EACP,EACU,EAAVzkB,KAAKgW,IACL,GAEJ1a,KAAK23B,IAAIO,UAAYxc,GAAS2hB,IAC9Br9B,KAAK23B,IAAIkkB,OACT77C,KAAK23B,IAAIiiB,YAKjBoC,GAAmBrd,IAAcA,EAAU79B,MAAM1C,OAAQ,CAczD,OAbM65C,EAAyBj4C,KAAKs6C,gBAAgBvmB,GAA7CrD,EAAU,KAAE/C,EAAQ,KACpBirB,EAAY54C,KAAKk5C,YAAYsB,WAAW9pB,EAAY/C,GAAS,SAEpE3tB,KAAK23B,IAAI4iB,KAAO7pB,EAChB1wB,KAAK23B,IAAIO,UAAYxc,GAASqY,EAAO/Y,OAErChb,KAAK23B,IAAIyhB,aAAe,aACxBp5C,KAAK23B,IAAIhJ,UAAYstB,GAAgBtd,EAAU5K,OAAOpF,WAEhDyF,EAASqiB,GAAW9X,GAEtBp7B,EAAI,EAEAo7B,EAAU5K,OAAOpF,WACrB,KAAK,EACDprB,GAAK6wB,EAAOhxB,MAAQ,EACpB,MACJ,KAAK,EACDG,GAAK6wB,EAAOhxB,MAId82B,EAAa9F,EAAOmR,IAAIhiC,EAAG,EAAG,GAAI6wB,EAAO/wB,OAAS,EAAI,GAE5DrD,KAAK23B,IAAI8hB,OACTz5C,KAAKwvC,KAAK,CACN,IAAIf,GAAOra,EAAOlxB,KAAMkxB,EAAOjxB,KAC/B,IAAIsrC,GAAOra,EAAOlxB,KAAOkxB,EAAOhxB,MAAOgxB,EAAOjxB,KAC9C,IAAIsrC,GAAOra,EAAOlxB,KAAOkxB,EAAOhxB,MAAOgxB,EAAOjxB,IAAMixB,EAAO/wB,QAC3D,IAAIorC,GAAOra,EAAOlxB,KAAMkxB,EAAOjxB,IAAMixB,EAAO/wB,UAGhDrD,KAAK23B,IAAIgiB,OACT35C,KAAK06C,4BACD,IAAIhgB,GAAWiE,EAAU79B,MAAOo5B,GAChCnG,EAAO1G,cACPurB,GAEJ54C,KAAK23B,IAAIiiB,UACT55C,KAAK23B,IAAIyhB,aAAe,aACxBp5C,KAAK23B,IAAIhJ,UAAY,WAGrBqC,GAAS2N,EAAU5K,OAAO9G,QAAS,MAAnC,gBACwC,OAApC0R,EAAU5K,OAAOnG,eAAjB,gBAEiB,KADX6J,EAAMkH,EAAU5K,OAAOnG,gBACrB5gB,KAAJ,aACIwd,OAAK,EACHE,EAAO+M,EAAoB/M,uBAErB,mCAAM1qB,KAAK0D,QAAQinB,MAAM+wB,MAAMhxB,mBAAvCF,EAAQixB,EAAAA,OACRz7C,KAAK23B,IAAIG,UAAUtN,EAAOmU,EAAUvK,OAAOlxB,MAAQsnB,EAAMpnB,MAAQ,IAAKu7B,EAAUvK,OAAOjxB,oCAEvFnD,KAAK0D,QAAQ2hC,OAAO2B,MAAM,kCAAkCtc,uCAG7DovB,EAAMpE,YAA2C,IAA9B/W,EAAU5K,OAAOjG,gBACpC4C,EAAc1wB,KAAKs6C,gBAAgBvmB,GAAO,GAEjD/zB,KAAK23B,IAAI4iB,KAAO7pB,EAChB1wB,KAAK23B,IAAIO,UAAYxc,GAASqY,EAAO/Y,OAErChb,KAAK23B,IAAIyhB,aAAe,SACxBp5C,KAAK23B,IAAIhJ,UAAY,QACfyF,EAAS,IAAI9wB,EACfq7B,EAAUvK,OAAOlxB,KACjBy7B,EAAUvK,OAAOjxB,IAAM8W,GAAiB0kB,EAAU5K,OAAOxF,WAAYoQ,EAAUvK,OAAOhxB,OACtFu7B,EAAUvK,OAAOhxB,MACjBsqB,GAAkBqG,EAAOtG,WAAYsG,EAAOpG,SAASjW,QAAU,EAAI,GAGvE1X,KAAK06C,4BACD,IAAIhgB,GAAWof,EAAMpE,UAAWthB,GAChCL,EAAO1G,cACPK,GAAkBqG,EAAOtG,WAAYsG,EAAOpG,SAASjW,QAAU,EAAI,GAEvE1X,KAAK23B,IAAIyhB,aAAe,SACxBp5C,KAAK23B,IAAIhJ,UAAY,6CAK3B2qB,EAAAA,UAAAA,mBAAN,SAAyBrE,+HAMrB,OALIjkB,GAASikB,EAAMxhB,QAAQkL,UAAUppB,MAAO,IAK5C,GAAMvV,KAAK+5C,+BAA+B9E,EAAMxhB,iBAAhDyoB,EAAAA,WAEoB90B,EAAAA,EAAMssB,uCAANluC,EAAAA,EAAAA,QAATqiC,EAAK,KACZ,GAAM7nC,KAAKm8C,YAAYtU,KADa,aACpCqU,EAAAA,+BADgB12C,iBAIpB,SAAMxF,KAAKg6C,kBAAkB/E,EAAMxhB,iBAAnCyoB,EAAAA,WAEoBT,EAAAA,EAAMhI,uCAANwE,EAAAA,EAAAA,QAATpQ,EAAK,KACZ,GAAM7nC,KAAKo8C,WAAWvU,KADc,cACpCqU,EAAAA,+BADgBjE,sBAOAoE,EAAAA,EAAMxI,8CAANyI,EAAAA,EAAAA,QAATzU,EAAK,KACZ,GAAM7nC,KAAKm8C,YAAYtU,KADkB,eACzCqU,EAAAA,iCADgBI,uBAIAC,EAAAA,EAAMzI,mDAAN0I,EAAAA,EAAAA,QAAT3U,EAAK,KACZ,GAAM7nC,KAAKm8C,YAAYtU,KADuB,eAC9CqU,EAAAA,iCADgBM,uBAGAC,EAAAA,EAAMjJ,sCAANkJ,EAAAA,EAAAA,QAAT7U,EAAK,KACZ,GAAM7nC,KAAKo8C,WAAWvU,KADW,eACjCqU,EAAAA,iCADgBQ,uBAaAC,EAAAA,EAAMhJ,iEAANiJ,EAAAA,EAAAA,QAAT/U,EAAK,KACZ,GAAM7nC,KAAKm8C,YAAYtU,KADqC,eAC5DqU,EAAAA,iCADgBU,uBAKAC,EAAAA,EAAMjJ,yCAANkJ,EAAAA,EAAAA,QAATjV,EAAK,KACZ,GAAM7nC,KAAKm8C,YAAYtU,KADa,eACpCqU,EAAAA,iCADgBY,qCAKxBxD,EAAAA,UAAAA,KAAA,SAAKyD,GACD/8C,KAAK23B,IAAImkB,YACT97C,KAAK23B,IAAIqlB,OAAO,EAAG,GACnBh9C,KAAK23B,IAAIslB,OAAOj9C,KAAK03B,OAAOt0B,MAAO,GACnCpD,KAAK23B,IAAIslB,OAAOj9C,KAAK03B,OAAOt0B,MAAOpD,KAAK03B,OAAOr0B,QAC/CrD,KAAK23B,IAAIslB,OAAO,EAAGj9C,KAAK03B,OAAOr0B,QAC/BrD,KAAK23B,IAAIslB,OAAO,EAAG,GACnBj9C,KAAKk9C,WAAWH,EAAM/5C,MAAM,GAAGwzC,WAC/Bx2C,KAAK23B,IAAIwlB,aAGb7D,EAAAA,UAAAA,KAAA,SAAKyD,GACD/8C,KAAK23B,IAAImkB,YACT97C,KAAKk9C,WAAWH,GAChB/8C,KAAK23B,IAAIwlB,aAGb7D,EAAAA,UAAAA,WAAA,SAAWyD,GAAX,WACIA,EAAM1wC,SAAQ,SAACknC,EAAO7tC,GAClB,IAAM6B,EAAgBgoC,GAAcgE,GAASA,EAAMhsC,MAAQgsC,EAC7C,IAAV7tC,EACAy2B,EAAKxE,IAAIqlB,OAAOz1C,EAAMhE,EAAGgE,EAAM1F,GAE/Bs6B,EAAKxE,IAAIslB,OAAO11C,EAAMhE,EAAGgE,EAAM1F,GAG/B0tC,GAAcgE,IACdpX,EAAKxE,IAAIylB,cACL7J,EAAM1E,aAAatrC,EACnBgwC,EAAM1E,aAAahtC,EACnB0xC,EAAMzE,WAAWvrC,EACjBgwC,EAAMzE,WAAWjtC,EACjB0xC,EAAM/rC,IAAIjE,EACVgwC,EAAM/rC,IAAI3F,OAM1By3C,EAAAA,UAAAA,aAAA,SAAa9J,EAAc6N,EAAyCvuB,EAAiBC,GACjF/uB,KAAKwvC,KAAKA,GACVxvC,KAAK23B,IAAIO,UAAYmlB,EACrBr9C,KAAK23B,IAAIwhB,UAAUrqB,EAASC,GAC5B/uB,KAAK23B,IAAIkkB,OACT77C,KAAK23B,IAAIwhB,WAAWrqB,GAAUC,IAGlCuqB,EAAAA,UAAAA,YAAA,SAAY9uB,EAAyBpnB,EAAeC,SAChD,GAAImnB,EAAMpnB,QAAUA,GAASonB,EAAMnnB,SAAWA,EAC1C,OAAOmnB,EAGX,IACMkN,GADyC,QAAzB,EAAA13B,KAAK03B,OAAOqD,qBAAa,QAAIx2B,UACtBwxB,cAAc,UAK3C,OAJA2B,EAAOt0B,MAAQsB,KAAKC,IAAI,EAAGvB,GAC3Bs0B,EAAOr0B,OAASqB,KAAKC,IAAI,EAAGtB,GAChBq0B,EAAOE,WAAW,MAC1BE,UAAUtN,EAAO,EAAG,EAAGA,EAAMpnB,MAAOonB,EAAMnnB,OAAQ,EAAG,EAAGD,EAAOC,GAC5Dq0B,GAGL4hB,EAAAA,UAAAA,sBAAN,SAA4B3a,6GACpBj5B,EAAQi5B,EAAU5K,OAAO7I,gBAAgB9sB,OAAS,aAC3C8sB,0HACsB,IAAzBA,EAAgBle,KAAhB,YACIwd,OAAK,EACHE,EAAOQ,EAAgCR,qBAEjC,gCAAM4yB,EAAK55C,QAAQinB,MAAM+wB,MAAMhxB,kBAAvCF,EAAQkyB,EAAAA,oCAERY,EAAK55C,QAAQ2hC,OAAO2B,MAAM,kCAAkCtc,uBAG5DF,IACMixB,EAA8B7E,GAA6BjY,EAAWj5B,EAAO,CAC/E8kB,EAAMpnB,MACNonB,EAAMnnB,OACNmnB,EAAMpnB,MAAQonB,EAAMnnB,SAHjBmsC,EAAI,KAAEjsC,EAAC,KAAE1B,EAAC,KAAEuB,EAAK,KAAEC,EAAM,KAK1Bg6C,EAAUC,EAAK3lB,IAAI4lB,cACrBD,EAAKE,YAAYhzB,EAAOpnB,EAAOC,GAC/B,UAEJi6C,EAAKG,aAAajO,EAAM6N,EAAS95C,EAAG1B,iBAEjCwoB,GAAiBa,IAClBoxB,EAA8B1F,GAA6BjY,EAAWj5B,EAAO,CAAC,KAAM,KAAM,OAAzF8pC,EAAI,KAAEjsC,EAAC,KAAE1B,EAAC,KAAEuB,EAAK,KAAEC,EAAM,KAC1Bg5C,EAA+B30B,GAA2BwD,EAAgB3Q,MAAOnX,EAAOC,GAAvFojB,EAAU,KAAEi3B,EAAE,KAAEC,EAAE,KAAEC,EAAE,KAAEC,EAAE,MAE3BnmB,EAASnzB,SAASwxB,cAAc,WAC/B3yB,MAAQA,EACfs0B,EAAOr0B,OAASA,EACVs0B,EAAMD,EAAOE,WAAW,MACxBkmB,EAAWnmB,EAAIomB,qBAAqBL,EAAIE,EAAID,EAAIE,GAEtDt3B,GAAkB2E,EAAgB1E,MAAOC,GAAYpa,SAAQ,SAACmd,GAC1D,SAASw0B,aAAax0B,EAAUlD,KAAM5K,GAAS8N,EAAUxO,WAG7D2c,EAAIO,UAAY4lB,EAChBnmB,EAAIQ,SAAS,EAAG,EAAG/0B,EAAOC,GACtBD,EAAQ,GAAKC,EAAS,IAChBg6C,EAAUC,EAAK3lB,IAAI4lB,cAAc7lB,EAAQ,UAC/C4lB,EAAKG,aAAajO,EAAM6N,EAAS95C,EAAG1B,KAEjC0oB,GAAiBW,KAClBsxB,EAAmC5F,GAA6BjY,EAAWj5B,EAAO,CACpF,KACA,KACA,OAHG8pC,EAAI,KAAEtsC,EAAI,KAAE+6C,EAAAA,EAAAA,GAAK76C,EAAK,KAAEC,EAAM,KAK/B6mB,EAA+C,IAApCgB,EAAgBhB,SAAS9rB,OAAe,CAACyb,IAAiBqR,EAAgBhB,SACrF3mB,EAAI0W,GAAiBiQ,EAAS,GAAI9mB,GAClCvB,EAAIoY,GAAiBiQ,EAASA,EAAS9rB,OAAS,GAAIiF,GAEpDk5C,EAAWxzB,GAAgBmC,EAAiB3nB,EAAG1B,EAAGuB,EAAOC,GAAxD4lB,EAAE,KAAEC,EAAE,KACTD,EAAK,GAAKC,EAAK,IACTg1B,EAAiBZ,EAAK3lB,IAAIwmB,qBAAqBj7C,EAAOK,EAAG06C,EAAMp8C,EAAG,EAAGqB,EAAOK,EAAG06C,EAAMp8C,EAAGonB,GAE9F1C,GAAkB2E,EAAgB1E,MAAY,EAALyC,GAAQ5c,SAAQ,SAACmd,GACtD,SAAew0B,aAAax0B,EAAUlD,KAAM5K,GAAS8N,EAAUxO,WAGnEsiC,EAAK9N,KAAKA,GACV8N,EAAK3lB,IAAIO,UAAYgmB,EACjBj1B,IAAOC,GAEDk1B,EAAOzf,EAAUvK,OAAOlxB,KAAO,GAAMy7B,EAAUvK,OAAOhxB,MACtDi7C,EAAO1f,EAAUvK,OAAOjxB,IAAM,GAAMw7B,EAAUvK,OAAO/wB,OAErDi7C,EAAO,GADP18C,EAAIsnB,EAAKD,GAGfq0B,EAAK3lB,IAAI8hB,OACT6D,EAAK3lB,IAAIwhB,UAAUiF,EAAMC,GACzBf,EAAK3lB,IAAIzI,UAAU,EAAG,EAAG,EAAGttB,EAAG,EAAG,GAClC07C,EAAK3lB,IAAIwhB,WAAWiF,GAAOC,GAE3Bf,EAAK3lB,IAAIQ,SAASj1B,EAAMo7C,GAAQL,EAAMI,GAAQA,EAAMj7C,EAAOC,EAASi7C,GACpEhB,EAAK3lB,IAAIiiB,WAET0D,EAAK3lB,IAAIkkB,iCAIrBn2C,wBAjF0B0hB,EAAAA,EAAU2M,OAAO7I,gBAAgBloB,MAAM,GAAGwzC,kCAA1ChxC,EAAAA,EAAAA,QAAnB0lB,EAAe,UAAfA,KAAsE,8CAAnD1lB,mCAqF5B8zC,EAAAA,UAAAA,kBAAN,SAAwBt+B,EAAc2Q,EAAc4yB,6EAChDv+C,KAAKwvC,KAAKoG,GAAmB2I,EAAa5yB,IAC1C3rB,KAAK23B,IAAIO,UAAYxc,GAASV,GAC9Bhb,KAAK23B,IAAIkkB,kBAGPvC,EAAAA,UAAAA,mBAAN,SAAyBt+B,EAAc5X,EAAeuoB,EAAc4yB,4GAC5Dn7C,EAAQ,EACR,GAAMpD,KAAKw+C,kBAAkBxjC,EAAO2Q,EAAM4yB,IAD1C,aAEA,OADAn3B,EAAAA,OACA,kBAGEq3B,EAAa1I,GAA8BwI,EAAa5yB,GAC9D3rB,KAAKwvC,KAAKiP,GACVz+C,KAAK23B,IAAIO,UAAYxc,GAASV,GAC9Bhb,KAAK23B,IAAIkkB,OACH6C,EAAa1I,GAA8BuI,EAAa5yB,GAC9D3rB,KAAKwvC,KAAKkP,GACV1+C,KAAK23B,IAAIkkB,mBAGPvC,EAAAA,UAAAA,+BAAN,SAAqCQ,+HACjC95C,KAAKs7C,aAAaxB,EAAMyB,WAAW,IAC7BxnB,EAAS+lB,EAAMnb,UAAU5K,OACzB4qB,GAAiBljC,GAAcsY,EAAO7N,kBAAoB6N,EAAO7I,gBAAgB9sB,OAEjFwgD,EAAU,CACZ,CAACtyB,MAAOyH,EAAOxH,eAAgBvR,MAAO+Y,EAAOnI,eAAgBxoB,MAAO2wB,EAAOnH,gBAC3E,CAACN,MAAOyH,EAAOvH,iBAAkBxR,MAAO+Y,EAAOlI,iBAAkBzoB,MAAO2wB,EAAOlH,kBAC/E,CAACP,MAAOyH,EAAOtH,kBAAmBzR,MAAO+Y,EAAOjI,kBAAmB1oB,MAAO2wB,EAAOjH,mBACjF,CAACR,MAAOyH,EAAOrH,gBAAiB1R,MAAO+Y,EAAOhI,gBAAiB3oB,MAAO2wB,EAAOhH,kBAG3EiqB,EAAyB6H,GAC3B9H,GAA2BhjB,EAAO/N,eAAgB,GAClD8zB,EAAMlH,QAGN+L,GAAiB5qB,EAAO5B,UAAU/zB,QAClC4B,KAAK23B,IAAI8hB,OACTz5C,KAAKwvC,KAAKwH,GACVh3C,KAAK23B,IAAIgiB,OAEJl+B,GAAcsY,EAAO7N,mBACtBlmB,KAAK23B,IAAIO,UAAYxc,GAASqY,EAAO7N,iBACrClmB,KAAK23B,IAAIkkB,QAGb,GAAM77C,KAAK8+C,sBAAsBhF,EAAMnb,aAVvC,aAUAvX,EAAAA,OAEApnB,KAAK23B,IAAIiiB,UAET7lB,EAAO5B,UACFnvB,MAAM,GACNwzC,UACAnqC,SAAQ,SAACwiB,GACNsN,EAAKxE,IAAI8hB,OACT,IAAMsF,EAAgBpM,GAAuBmH,EAAMlH,QAC7CoM,EAAanwB,EAAOwD,MAAQ,EAAI2mB,GAChCiG,EAAqB7L,GACvB2L,GACCC,GAAcnwB,EAAOwD,MAAQ,GAAK,GAAKxD,EAAOuD,OAAO1a,QACrDmX,EAAOwD,MAAQ,GAAK,GAAKxD,EAAOuD,OAAO1a,OACxCmX,EAAOuD,OAAO1a,QAAUmX,EAAOwD,OAAS,EAAI,GAC5CxD,EAAOuD,OAAO1a,QAAUmX,EAAOwD,OAAS,EAAI,IAG5CxD,EAAOwD,OACP8J,EAAKqT,KAAKuP,GACV5iB,EAAKxE,IAAIgiB,OACTxd,EAAK+iB,KAAKD,KAEV9iB,EAAK+iB,KAAKH,GACV5iB,EAAKxE,IAAIgiB,OACTxd,EAAKqT,KAAKyP,IAGd9iB,EAAKxE,IAAIkjB,cAAgBhsB,EAAOC,QAAQpX,OAASsnC,EACjD7iB,EAAKxE,IAAImjB,cAAgBjsB,EAAOE,QAAQrX,OACxCykB,EAAKxE,IAAIijB,YAAcl/B,GAASmT,EAAO7T,OACvCmhB,EAAKxE,IAAIojB,WAAalsB,EAAOG,KAAKtX,OAClCykB,EAAKxE,IAAIO,UAAYrJ,EAAOwD,MAAQ3W,GAASmT,EAAO7T,OAAS,gBAE7DmhB,EAAKxE,IAAIkkB,OACT1f,EAAKxE,IAAIiiB,8BAIjBjuB,EAAO,MACUwzB,EAAAA,0BAAA35C,EAAAA,EAAAA,OACI,KADd6kC,EAAM,MACF/d,QAAgC7Q,GAAc4uB,EAAOrvB,QAAUqvB,EAAOjnC,MAAQ,EAChE,IAAjBinC,EAAO/d,MAAP,MACA,GAAMtsB,KAAKo/C,yBACP/U,EAAOrvB,MACPqvB,EAAOjnC,MACPuoB,EACAmuB,EAAMlH,OAAM,IANpB,OADoB,qBAGhBxrB,EAAAA,4BAOwB,IAAjBijB,EAAO/d,MAAP,MACP,GAAMtsB,KAAKo/C,yBACP/U,EAAOrvB,MACPqvB,EAAOjnC,MACPuoB,EACAmuB,EAAMlH,OAAM,kBAJhBxrB,EAAAA,4BAOwB,IAAjBijB,EAAO/d,MAAP,MACP,GAAMtsB,KAAKq/C,mBAAmBhV,EAAOrvB,MAAOqvB,EAAOjnC,MAAOuoB,EAAMmuB,EAAMlH,uBAAtExrB,EAAAA,qBAEA,SAAMpnB,KAAKw+C,kBAAkBnU,EAAOrvB,MAAO2Q,EAAMmuB,EAAMlH,iBAAvDxrB,EAAAA,0BAGRuE,8BAxBiBnmB,oCA4BnB8zC,EAAAA,UAAAA,yBAAN,SACIt+B,EACA5X,EACAuoB,EACA4yB,EACAjyB,iHAEAtsB,KAAK23B,IAAI8hB,OAEH6F,EAAcrJ,GAAyBsI,EAAa5yB,GACpD4zB,EAAW3J,GAAmB2I,EAAa5yB,GAEnC,IAAVW,IACAtsB,KAAKwvC,KAAK+P,GACVv/C,KAAK23B,IAAIgiB,QAITpK,GAAcgQ,EAAS,KACvBC,EAAUD,EAAS,GAAmBh4C,MAAMhE,EAC5Ck8C,EAAUF,EAAS,GAAmBh4C,MAAM1F,IAE5C29C,EAAUD,EAAS,GAAch8C,EACjCk8C,EAAUF,EAAS,GAAc19C,GAEjC0tC,GAAcgQ,EAAS,KACvBG,EAAQH,EAAS,GAAmB/3C,IAAIjE,EACxCo8C,EAAQJ,EAAS,GAAmB/3C,IAAI3F,IAExC69C,EAAQH,EAAS,GAAch8C,EAC/Bo8C,EAAQJ,EAAS,GAAc19C,GAK/BzD,EADS,IAATutB,GAAuB,IAATA,EACLjnB,KAAKkjB,IAAI43B,EAASE,GAElBh7C,KAAKkjB,IAAI63B,EAASE,GAG/B3/C,KAAK23B,IAAImkB,YACK,IAAVxvB,EACAtsB,KAAKk9C,WAAWoC,GAEhBt/C,KAAKk9C,WAAWqC,EAASv8C,MAAM,EAAG,IAGlC48C,EAAax8C,EAAQ,EAAY,EAARA,EAAoB,EAARA,EACrCy8C,EAAcz8C,EAAQ,EAAY,EAARA,EAAYA,EAC5B,IAAVkpB,IACAszB,EAAax8C,EACby8C,EAAcz8C,GAGd08C,GAAc,EACd1hD,GAAuB,EAAbwhD,EACVE,GAAc,EACP1hD,GAAuB,EAAbwhD,EAAiBC,GAElCD,GADMG,EAAa3hD,GAAU,EAAIwhD,EAAaC,GAE9CA,GAAeE,IAETC,EAAiBt7C,KAAKi+B,OAAOvkC,EAASyhD,IAAgBD,EAAaC,IACnEI,GAAY7hD,EAAS4hD,EAAiBJ,IAAeI,EAAiB,GAE5EH,GADMK,GAAY9hD,GAAU4hD,EAAiB,GAAKJ,GAAcI,IAEhD,GAAKt7C,KAAKkjB,IAAIi4B,EAAcI,GAAYv7C,KAAKkjB,IAAIi4B,EAAcK,GACrED,EACAC,GAGVJ,IACc,IAAVxzB,EACAtsB,KAAK23B,IAAIwoB,YAAY,CAAC,EAAGP,EAAaC,IAEtC7/C,KAAK23B,IAAIwoB,YAAY,CAACP,EAAYC,KAI5B,IAAVvzB,GACAtsB,KAAK23B,IAAIyoB,QAAU,QACnBpgD,KAAK23B,IAAIsjB,UAAY73C,GAErBpD,KAAK23B,IAAIsjB,UAAoB,EAAR73C,EAAY,IAErCpD,KAAK23B,IAAIqjB,YAAct/B,GAASV,GAChChb,KAAK23B,IAAI0oB,SACTrgD,KAAK23B,IAAIwoB,YAAY,IAGP,IAAV7zB,IACIijB,GAAcgQ,EAAS,MACjBe,EAAQf,EAAS,GACjBgB,EAAQhB,EAAS,GACvBv/C,KAAK23B,IAAImkB,YACT97C,KAAKk9C,WAAW,CAAC,IAAIzO,GAAO6R,EAAM94C,IAAIjE,EAAG+8C,EAAM94C,IAAI3F,GAAI,IAAI4sC,GAAO8R,EAAMh5C,MAAMhE,EAAGg9C,EAAMh5C,MAAM1F,KAC7F7B,KAAK23B,IAAI0oB,UAET9Q,GAAcgQ,EAAS,MACjBe,EAAQf,EAAS,GACjBgB,EAAQhB,EAAS,GACvBv/C,KAAK23B,IAAImkB,YACT97C,KAAKk9C,WAAW,CAAC,IAAIzO,GAAO6R,EAAM94C,IAAIjE,EAAG+8C,EAAM94C,IAAI3F,GAAI,IAAI4sC,GAAO8R,EAAMh5C,MAAMhE,EAAGg9C,EAAMh5C,MAAM1F,KAC7F7B,KAAK23B,IAAI0oB,WAIjBrgD,KAAK23B,IAAIiiB,qBAGPN,EAAAA,UAAAA,OAAN,SAAa7lB,mGAQT,OAPIzzB,KAAK0N,QAAQwY,kBACblmB,KAAK23B,IAAIO,UAAYxc,GAAS1b,KAAK0N,QAAQwY,iBAC3ClmB,KAAK23B,IAAIQ,SAASn4B,KAAK0N,QAAQnK,EAAGvD,KAAK0N,QAAQ7L,EAAG7B,KAAK0N,QAAQtK,MAAOpD,KAAK0N,QAAQrK,SAGjF4xC,EAAQU,GAAsBliB,GAEpC,GAAMzzB,KAAKm8C,YAAYlH,WAEvB,OAFA7tB,EAAAA,OACApnB,KAAKs7C,aAAa,IACX,CAAP,EAAOt7C,KAAK03B,gBAEpB,EAh1BA,CAAoC8oB,IAk1B9BxE,GAAqB,SACvBrd,GAEA,OAAIA,aAAqBuB,IAEdvB,aAAqBsB,IAErBtB,aAAqBqB,IAAyBrB,EAAU3xB,OAASowB,IAASuB,EAAU3xB,OAASmwB,EAI5G,EAEM0hB,GAAwC,SAAClF,EAAuB/G,GAClE,OAAQ+G,GACJ,KAAK,EACD,OAAOhH,GAAuBC,GAClC,KAAK,EACD,OAAOC,GAAwBD,GAEnC,QACI,OAAOE,GAAwBF,GAE3C,EAEMqJ,GAAkB,SAACttB,GACrB,OAAQA,GACJ,KAAK,EACD,MAAO,SACX,KAAK,EACD,MAAO,QAEX,QACI,MAAO,OAEnB,EAGM8xB,GAAiB,CAAC,gBAAiB,aAEnCpG,GAAoB,SAACqG,GACvB,MAAO,qBAAqBxb,KAAKlR,OAAOmR,UAAUC,WAC5Csb,EAAa7lC,QAAO,SAAC6V,GAAe,OAAwC,IAAxC+vB,GAAej0C,QAAQkkB,EAAkB,IAC7EgwB,CACV,ECt7BA,eAKI,WAAYh9C,EAAkBgK,GAA9B,MACIwuB,EAAAA,KAAAA,KAAMx4B,EAASgK,IAAQ,YACvByuB,EAAKzE,OAAShqB,EAAQgqB,OAAShqB,EAAQgqB,OAASnzB,SAASwxB,cAAc,UACvEoG,EAAKxE,IAAMwE,EAAKzE,OAAOE,WAAW,MAClCuE,EAAKzuB,QAAUA,EACfyuB,EAAKzE,OAAOt0B,MAAQsB,KAAKi+B,MAAMj1B,EAAQtK,MAAQsK,EAAQurC,OACvD9c,EAAKzE,OAAOr0B,OAASqB,KAAKi+B,MAAMj1B,EAAQrK,OAASqK,EAAQurC,OACzD9c,EAAKzE,OAAOpL,MAAMlpB,MAAWsK,EAAQtK,MAAK,KAC1C+4B,EAAKzE,OAAOpL,MAAMjpB,OAAYqK,EAAQrK,OAAM,KAE5C84B,EAAKxE,IAAIshB,MAAM9c,EAAKzuB,QAAQurC,MAAO9c,EAAKzuB,QAAQurC,OAChD9c,EAAKxE,IAAIwhB,WAAWzrC,EAAQnK,GAAImK,EAAQ7L,GACxCs6B,EAAKz4B,QAAQ2hC,OAAO8H,MAChB,oDAAoDz/B,EAAQtK,MAAK,IAAIsK,EAAQrK,OAAM,OAAOqK,EAAQnK,EAAC,IAAImK,EAAQ7L,EAAC,gBAAgB6L,EAAQurC,SAwBpJ,OA1C2Cr5C,EAAAA,EAAAA,GAsBjC+gD,EAAAA,UAAAA,OAAN,SAAaltB,qGASG,OARN4E,EAAMC,GACRt4B,KAAK0N,QAAQtK,MAAQpD,KAAK0N,QAAQurC,MAClCj5C,KAAK0N,QAAQrK,OAASrD,KAAK0N,QAAQurC,MACnCj5C,KAAK0N,QAAQurC,MACbj5C,KAAK0N,QAAQurC,MACbxlB,GAGQ,GAAM8E,GAAkBF,WASpC,OATMZ,EAAMrQ,EAAAA,OAERpnB,KAAK0N,QAAQwY,kBACblmB,KAAK23B,IAAIO,UAAYxc,GAAS1b,KAAK0N,QAAQwY,iBAC3ClmB,KAAK23B,IAAIQ,SAAS,EAAG,EAAGn4B,KAAK0N,QAAQtK,MAAQpD,KAAK0N,QAAQurC,MAAOj5C,KAAK0N,QAAQrK,OAASrD,KAAK0N,QAAQurC,QAGxGj5C,KAAK23B,IAAIG,UAAUL,GAAMz3B,KAAK0N,QAAQnK,EAAIvD,KAAK0N,QAAQurC,OAAQj5C,KAAK0N,QAAQ7L,EAAI7B,KAAK0N,QAAQurC,OAEtF,CAAP,EAAOj5C,KAAK03B,gBAEpB,EA1CA,CAA2C8oB,IA4C9BjoB,GAAoB,SAACF,GAC9B,WAAIr3B,SAAQ,SAACD,EAASE,GAClB,IAAMw2B,EAAM,IAAIN,MAChBM,EAAIqB,OAAS,WACT/3B,EAAQ02B,IAEZA,EAAIsB,QAAU93B,EAEdw2B,EAAII,IAAM,oCAAoCmB,oBAAmB,IAAIC,eAAgBC,kBAAkBb,MAP3G,EC9CJ,cAOI,WAAYjR,OAACw5B,EAAE,KAAEC,EAAO,UACpB7gD,KAAK4gD,GAAKA,EACV5gD,KAAK6gD,QAAUA,EACf7gD,KAAKuH,MAAQu5C,KAAKC,MAwD1B,OApDIC,EAAAA,UAAAA,MAAA,eAAM,aAAAx7C,EAAAA,UAAAA,OAAAA,IAAAgU,EAAAA,GAAAA,UAAAA,GACExZ,KAAK6gD,UAEiB,qBAAX7sB,QAA0BA,OAAOitB,SAAoC,oBAAlBA,QAAQ9T,MAElE8T,QAAQ9T,MAAK,MAAb8T,QAAO,GAAOjhD,KAAK4gD,GAAO5gD,KAAKkhD,UAAS,MAAS1nC,IAEjDxZ,KAAKknC,KAAI,MAATlnC,KAAawZ,KAKzBwnC,EAAAA,UAAAA,QAAA,WACI,OAAOF,KAAKC,MAAQ/gD,KAAKuH,OAI7By5C,EAAAA,UAAAA,KAAA,eAAK,aAAAx7C,EAAAA,UAAAA,OAAAA,IAAAgU,EAAAA,GAAAA,UAAAA,GACGxZ,KAAK6gD,SAEiB,qBAAX7sB,QAA0BA,OAAOitB,SAAmC,oBAAjBA,QAAQ/Z,MAElE+Z,QAAQ/Z,KAAI,MAAZ+Z,QAAO,GAAMjhD,KAAK4gD,GAAO5gD,KAAKkhD,UAAS,MAAS1nC,KAM5DwnC,EAAAA,UAAAA,KAAA,eAAK,aAAAx7C,EAAAA,UAAAA,OAAAA,IAAAgU,EAAAA,GAAAA,UAAAA,GACGxZ,KAAK6gD,UAEiB,qBAAX7sB,QAA0BA,OAAOitB,SAAmC,oBAAjBA,QAAQ3b,KAElE2b,QAAQ3b,KAAI,MAAZ2b,QAAO,GAAMjhD,KAAK4gD,GAAO5gD,KAAKkhD,UAAS,MAAS1nC,IAEhDxZ,KAAKknC,KAAI,MAATlnC,KAAawZ,KAMzBwnC,EAAAA,UAAAA,MAAA,eAAM,aAAAx7C,EAAAA,UAAAA,OAAAA,IAAAgU,EAAAA,GAAAA,UAAAA,GACExZ,KAAK6gD,UAEiB,qBAAX7sB,QAA0BA,OAAOitB,SAAoC,oBAAlBA,QAAQja,MAElEia,QAAQja,MAAK,MAAbia,QAAO,GAAOjhD,KAAK4gD,GAAO5gD,KAAKkhD,UAAS,MAAS1nC,IAEjDxZ,KAAKknC,KAAI,MAATlnC,KAAawZ,KA7DlBwnC,EAAAA,UAAqC,CAAC,EAiEjD,EAlEA,GCIA,cAOI,WAAYtzC,EAAgC9J,SAAA,KAAAA,aAAAA,EAN3B,KAAAu9C,aAAe,IAAIC,EAAQC,gBAOxCrhD,KAAKqlC,OAAS,IAAI2b,GAAO,CAACJ,GAAI5gD,KAAKmhD,aAAcN,QAASnzC,EAAQ4zC,UAClEthD,KAAK2qB,MAAqB,QAAb,EAAAjd,EAAQid,aAAK,QAAI,IAAI8hB,GAAMzsC,KAAM0N,GAEtD,OANmB0zC,EAAAA,cAAgB,EAMnC,EAXA,GCSMG,GAAc,SAAC9tB,EAAsB/lB,GACvC,YADuC,IAAAA,IAAAA,EAAAA,CAAAA,GAChC8zC,GAAc/tB,EAAS/lB,EAClC,EAIsB,qBAAXsmB,QACP6X,GAAa4V,WAAWztB,QAG5B,IAAMwtB,GAAgB,SAAO/tB,EAAsBiuB,GAAsB,4KACrE,IAAKjuB,GAA8B,kBAAZA,EACnB,MAAO,CAAP,EAAOzyB,QAAQC,OAAO,+CAI1B,KAFM85B,EAAgBtH,EAAQsH,eAG1B,MAAM,IAAIt2B,MAAM,yCAKpB,KAFM+/B,EAAczJ,EAAcyJ,aAG9B,MAAM,IAAI//B,MAAM,wCAkDpB,OA/CMk9C,EAAkB,CACpBta,WAA2B,QAAf,EAAAqa,EAAKra,kBAAU,SAC3BiG,aAA+B,QAAjB,EAAAoU,EAAKpU,oBAAY,QAAI,KACnCJ,MAAOwU,EAAKxU,MACZH,QAAqB,QAAZ,EAAA2U,EAAK3U,eAAO,UAGnB6U,EAAiB,EAAH,CAChBN,QAAqB,QAAZ,EAAAI,EAAKJ,eAAO,SACrB32B,MAAO+2B,EAAK/2B,OACTg3B,GAGDE,EAAgB,CAClBC,YAA6B,QAAhB,EAAAJ,EAAKI,mBAAW,QAAItd,EAAYud,WAC7CC,aAA+B,QAAjB,EAAAN,EAAKM,oBAAY,QAAIxd,EAAYyd,YAC/C1d,QAAqB,QAAZ,EAAAmd,EAAKnd,eAAO,QAAIC,EAAYC,YACrCC,QAAqB,QAAZ,EAAAgd,EAAKhd,eAAO,QAAIF,EAAYG,aAGnC/gC,EAAe,IAAIN,EACrBu+C,EAActd,QACdsd,EAAcnd,QACdmd,EAAcC,YACdD,EAAcG,cAGZt+C,EAAU,IAAI09C,GAAQQ,EAAgBh+C,GAEtCs+C,EAAoD,QAA3B,EAAAR,EAAKQ,8BAAsB,SAEpDC,EAAoC,CACtC9a,WAA2B,QAAf,EAAAqa,EAAKra,kBAAU,SAC3B7B,QAASkc,EAAKlc,QACdwC,eAAgB0Z,EAAK1Z,eACrBf,aAAcib,EACdpa,WAAYoa,GAGhBx+C,EAAQ2hC,OAAO8H,MACX,qCAAqCvpC,EAAaR,MAAK,IACnDQ,EAAaP,OAAM,iBACNO,EAAaV,KAAI,KAAKU,EAAaT,KAGlDi/C,EAAiB,IAAIhe,GAAe1gC,EAAS+vB,EAAS0uB,IACtDE,EAAgBD,EAAe3c,wBAKnB,GAAM2c,EAAeE,SAASvnB,EAAen3B,IAHpD,CAAP,EAAO5C,QAAQC,OAAO,0DAGpB09B,EAAY4jB,EAAAA,OAEZn7B,EACFmZ,GAAc8hB,IAAkBthB,GAAcshB,GACxC/9C,EAAkB+9C,EAActnB,eAChC72B,EAAYR,EAAS2+C,GAHxBj/C,EAAK,QAAEC,EAAM,SAAEH,EAAI,OAAEC,EAAG,MAKzB+iB,EAAkBs8B,GAAqB9+C,EAAS2+C,EAAeX,EAAKx7B,iBAEpEu8B,EAAsC,CACxC/qB,OAAQgqB,EAAKhqB,OACbxR,gBAAe,EACf+yB,MAAiD,QAA1C,EAAU,QAAV,EAAAyI,EAAKzI,aAAK,QAAIzU,EAAYke,wBAAgB,QAAI,EACrDn/C,GAAU,QAAN,EAAAm+C,EAAKn+C,SAAC,QAAI,GAAKL,EACnBrB,GAAU,QAAN,EAAA6/C,EAAK7/C,SAAC,QAAI,GAAKsB,EACnBC,MAAiB,QAAV,EAAAs+C,EAAKt+C,aAAK,QAAIsB,KAAKwD,KAAK9E,GAC/BC,OAAmB,QAAX,EAAAq+C,EAAKr+C,cAAM,QAAIqB,KAAKwD,KAAK7E,IAKjC6+C,GACAx+C,EAAQ2hC,OAAO8H,MAAM,mDAEZ,GADQ,IAAIwT,GAAsBj9C,EAAS++C,GAC5B7G,OAAOyG,KAH/B,oBAGA3qB,EAAS6qB,EAAAA,oBAkBA,OAhBT7+C,EAAQ2hC,OAAO8H,MACX,uCAAuCjqC,EAAI,IAAIC,EAAG,cAAcC,EAAK,IAAIC,EAAM,6BAGnFK,EAAQ2hC,OAAO8H,MAAM,wBACfjP,EAAOL,GAAUn6B,EAAS2+C,GAE5Bn8B,IAAoBgY,EAAKnK,OAAO7N,kBAChCgY,EAAKnK,OAAO7N,gBAAkB5K,GAAOE,aAGzC9X,EAAQ2hC,OAAO8H,MACX,oCAAoCsV,EAAcl/C,EAAC,IAAIk/C,EAAc5gD,EAAC,cAAc4gD,EAAcr/C,MAAK,IAAIq/C,EAAcp/C,QAIpH,GADQ,IAAIi2C,GAAe51C,EAAS++C,GACrB7G,OAAO1d,WAA/BxG,EAAS6qB,EAAAA,wBAUb,OAPwB,QAApB,EAAAb,EAAKiB,uBAAe,YACfve,GAAewe,QAAQjkB,IACxBj7B,EAAQ2hC,OAAO2B,MAAM,gEAI7BtjC,EAAQ2hC,OAAO8H,MAAM,sBACd,CAAP,EAAOzV,WAGL8qB,GAAuB,SAAC9+C,EAAkB+vB,EAAsBovB,GAClE,IAAM9nB,EAAgBtH,EAAQsH,cAExB+C,EAA0B/C,EAAcv2B,gBACxCmY,GAAWjZ,EAASuwB,iBAAiB8G,EAAcv2B,iBAAiB0hB,iBACpE5K,GAAOE,YACPuiB,EAAsBhD,EAAcp5B,KACpCgb,GAAWjZ,EAASuwB,iBAAiB8G,EAAcp5B,MAAMukB,iBACzD5K,GAAOE,YAEPsnC,EACiC,kBAA5BD,EACDlmC,GAAWjZ,EAASm/C,GACQ,OAA5BA,EACAvnC,GAAOE,YACP,WAEV,OAAOiY,IAAYsH,EAAcv2B,gBAC3BiX,GAAcqiB,GACVriB,GAAcsiB,GACV+kB,EACA/kB,EACJD,EACJglB,CACV,sCC9Ka3jD,EAAOC,QAAU,EAAjBD,OACN4jD,GAAGC,KAAKC,EAAQ,6BCDvB,WAMC,SAAU/kB,EAAMglB,GAChB,aAGkC/jD,EAAOC,QACxCD,EAAOC,QAAU8jD,EAAQD,EAAQ,QAEjCE,EAAO,CAAC,cAAkB,2BAAP,EAAF,GAAS,+BAI3B,CAXA,CAWCnjD,GAAM,SAAUojD,GACjB,kBAGuBp1C,IAAnBo1C,EAAOC,SAAyBD,EAAO/jD,UAC1C+jD,EAASA,EAAO/jD,SASjB,IAMCikD,EALAC,EAAQ,CAAC,EACTC,EAAQ,CAAC,EACTC,EAAY,CAAC,EACbC,EAAQ,CAAC,EACTC,EAAU,CAAC,EAGPP,GAAoC,kBAAnBA,EAAOC,SAC5BO,EAAS,gGAGV,IAAIC,EAAgBT,EAAOC,QAAQS,MAAM,KACxCC,GAASF,EAAc,GACvBG,GAASH,EAAc,GAWxB,SAASI,EAAcC,GACtB,OAAIA,EAAW,GACPA,EAAW,GACRA,EAAW,GACdA,EAAW,GAEZA,EAAW,EACnB,CAEA,SAASC,EAAajiB,GACrB,IAAIhkC,EAAI,EACPkmD,EAAQliB,EAAO4hB,MAAM,KACrBO,EAAQD,EAAM,GACdE,EAAaF,EAAM,IAAM,GACzBrE,EAAa,EAEbwE,EAAM,EACNzxC,EAAO,EASR,IAN6B,KAAzBovB,EAAO78B,WAAW,KACrBnH,EAAI,EACJ4U,GAAQ,GAID5U,EAAImmD,EAAMjmD,OAAQF,IAEzBqmD,EAAM,GAAKA,EADLN,EAAcI,EAAMh/C,WAAWnH,IAKtC,IAAKA,EAAI,EAAGA,EAAIomD,EAAWlmD,OAAQF,IAClC6hD,GAA0B,GAE1BwE,GADMN,EAAcK,EAAWj/C,WAAWnH,IAC7B6hD,EAGd,OAAOwE,EAAMzxC,CACd,CAEA,SAAS0xC,EAAYC,GACpB,IAAK,IAAIvmD,EAAI,EAAGA,EAAIumD,EAAMrmD,OAAQF,IACjCumD,EAAMvmD,GAAKimD,EAAaM,EAAMvmD,GAEhC,CAUA,SAASwmD,EAAYC,EAAQx4C,GAC5B,IAAcjO,EAAVqmD,EAAM,GAEV,IAAKrmD,EAAI,EAAGA,EAAIiO,EAAQ/N,OAAQF,IAC/BqmD,EAAIrmD,GAAKymD,EAAOx4C,EAAQjO,IAGzB,OAAOqmD,CACR,CAEA,SAASK,EAAQ1iB,GAChB,IAAIj6B,EAAOi6B,EAAO4hB,MAAM,KACvBe,EAAU58C,EAAK,GAAG67C,MAAM,KACxB33C,EAAUlE,EAAK,GAAG67C,MAAM,IACxBgB,EAAU78C,EAAK,GAAG67C,MAAM,KAQzB,OANAU,EAAWK,GACXL,EAAWr4C,GACXq4C,EAAWM,GA1BZ,SAAqBL,EAAOrmD,GAC3B,IAAK,IAAIF,EAAI,EAAGA,EAAIE,EAAQF,IAC3BumD,EAAMvmD,GAAKwG,KAAKqX,OAAO0oC,EAAMvmD,EAAI,IAAM,GAAiB,IAAXumD,EAAMvmD,IAGpDumD,EAAMrmD,EAAS,GAAK0qB,GACrB,CAsBCi8B,CAAWD,EAAQ34C,EAAQ/N,QAEpB,CACN2a,KAAa9Q,EAAK,GAClB+8C,MAAaN,EAAWz8C,EAAK,GAAG67C,MAAM,KAAM33C,GAC5C04C,QAAaH,EAAWG,EAAS14C,GACjC24C,OAAaA,EACbG,WAAuB,EAAVh9C,EAAK,GAEpB,CAMA,SAASi9C,EAAMC,GACVA,GACHnlD,KAAKolD,KAAKR,EAAOO,GAEnB,CA0EA,SAASE,EAASC,EAAcC,GAC/BvlD,KAAK+Y,KAAOusC,EACZtlD,KAAKujD,MAAQgC,CACd,CAMA,SAASC,EAASC,GACjB,IAAIC,EAAaD,EAAGE,eAChBC,EAAOF,EAAWhK,MAAM,gBAaf,SARZkK,EAJGA,GAAQA,EAAK,IAGhBA,EAAOA,EAAK,GAAGlK,MAAM,WACPkK,EAAK1mD,KAAK,SAAM8O,GAI9B43C,EAAOF,EAAWhK,MAAM,gBACVkK,EAAK,QAAK53C,KAIxB43C,OAAO53C,GAGRhO,KAAKylD,IAAMA,EACXzlD,KAAK4lD,KAAOA,EACZ5lD,KAAK22B,OAAS8uB,EAAGI,mBAClB,CAEA,SAASC,EAAUC,GAClB/lD,KAAK+lD,KAAOA,EACZ/lD,KAAKgmD,YAAc,EACnBhmD,KAAKimD,UAAY,CAClB,CASA,SAASC,EAAWC,EAAKC,GAGxB,IAFA,IAAIC,EAAKC,EAEDA,EAAyC,MAAhCF,EAAKX,GAAKU,EAAIV,IAAM,KAAO,KAC3CY,EAAM,IAAIb,EAAS,IAAI1E,KAAKqF,EAAIV,GAAKa,KAC7B3vB,SAAWwvB,EAAIxvB,OACtBwvB,EAAME,EAEND,EAAOC,EAIT,OAAOF,CACR,CA0BA,SAASI,EAAgB55C,EAAGnN,GAC3B,OAAImN,EAAEq5C,cAAgBxmD,EAAEwmD,YAChBr5C,EAAEq5C,YAAcxmD,EAAEwmD,YAEtBr5C,EAAEs5C,YAAczmD,EAAEymD,UACdt5C,EAAEs5C,UAAYzmD,EAAEymD,UAEpBt5C,EAAEo5C,KAAKd,aAAezlD,EAAEumD,KAAKd,WACzBzlD,EAAEumD,KAAKd,WAAat4C,EAAEo5C,KAAKd,WAE5BzlD,EAAEumD,KAAKhtC,KAAKytC,cAAc75C,EAAEo5C,KAAKhtC,KACzC,CAEA,SAAS0tC,EAAc1tC,EAAM8rC,GAC5B,IAAI3mD,EAAGy4B,EAEP,IADA6tB,EAAWK,GACN3mD,EAAI,EAAGA,EAAI2mD,EAAQzmD,OAAQF,IAC/By4B,EAASkuB,EAAQ3mD,GACjBylD,EAAQhtB,GAAUgtB,EAAQhtB,IAAW,CAAC,EACtCgtB,EAAQhtB,GAAQ5d,IAAQ,CAE1B,CAEA,SAAS2tC,EAAuB7B,GAC/B,IAGC3mD,EAAGyoD,EAAGC,EAHHC,EAAgBhC,EAAQzmD,OAC3B0oD,EAAkB,CAAC,EACnBvC,EAAM,GAGP,IAAKrmD,EAAI,EAAGA,EAAI2oD,EAAe3oD,IAE9B,IAAKyoD,KADLC,EAAgBjD,EAAQkB,EAAQ3mD,GAAGy4B,SAAW,CAAC,EAE1CiwB,EAAc7oD,eAAe4oD,KAChCG,EAAgBH,IAAK,GAKxB,IAAKzoD,KAAK4oD,EACLA,EAAgB/oD,eAAeG,IAClCqmD,EAAIhmD,KAAKmlD,EAAMxlD,IAIjB,OAAOqmD,CACR,CAEA,SAASwC,IAGR,IACC,IAAIC,EAAWltB,KAAKmtB,iBAAiBC,kBAAkBC,SACvD,GAAIH,GAAYA,EAAS5oD,OAAS,EAAG,CACpC,IAAI2a,EAAO2qC,EAAM0D,EAAcJ,IAC/B,GAAIjuC,EACH,OAAOA,EAER6qC,EAAS,yBAA2BoD,EAAW,yDAChD,CAEA,CADC,MAAO3lD,GACR,CAGD,IAICgmD,EAAWnpD,EAAGyoD,EAJX9B,EAvFL,WACC,IAGCyC,EAAQlmD,EAAMlD,EAHXqpD,GAAY,IAAIzG,MAAO0G,cAAgB,EAC1C7gC,EAAO,IAAI6+B,EAAS,IAAI1E,KAAKyG,EAAW,EAAG,IAC3C1C,EAAU,CAACl+B,GAGZ,IAAKzoB,EAAI,EAAGA,EAAI,GAAIA,KACnBkD,EAAO,IAAIokD,EAAS,IAAI1E,KAAKyG,EAAWrpD,EAAG,KAClCy4B,SAAWhQ,EAAKgQ,SACxB2wB,EAASpB,EAAWv/B,EAAMvlB,GAC1ByjD,EAAQtmD,KAAK+oD,GACbzC,EAAQtmD,KAAK,IAAIinD,EAAS,IAAI1E,KAAKwG,EAAO7B,GAAK,QAEhD9+B,EAAOvlB,EAGR,IAAKlD,EAAI,EAAGA,EAAI,EAAGA,IAClB2mD,EAAQtmD,KAAK,IAAIinD,EAAS,IAAI1E,KAAKyG,EAAYrpD,EAAG,EAAG,KACrD2mD,EAAQtmD,KAAK,IAAIinD,EAAS,IAAI1E,KAAKyG,EAAYrpD,EAAG,EAAG,KAGtD,OAAO2mD,CACR,CAiEe4C,GACbZ,EAAgBhC,EAAQzmD,OACxBulD,EAAU+C,EAAsB7B,GAChC6C,EAAa,GAGd,IAAKxpD,EAAI,EAAGA,EAAIylD,EAAQvlD,OAAQF,IAAK,CAEpC,IADAmpD,EAAY,IAAIvB,EAAU6B,EAAQhE,EAAQzlD,IAAK2oD,GAC1CF,EAAI,EAAGA,EAAIE,EAAeF,IAC9BU,EAAUO,cAAc/C,EAAQ8B,IAEjCe,EAAWnpD,KAAK8oD,EACjB,CAIA,OAFAK,EAAWG,KAAKtB,GAETmB,EAAWtpD,OAAS,EAAIspD,EAAW,GAAG3B,KAAKhtC,UAAO/K,CAC1D,CAaA,SAASo5C,EAAeruC,GACvB,OAAQA,GAAQ,IAAIlC,cAAc+kB,QAAQ,MAAO,IAClD,CAEA,SAASksB,EAASC,GACjB,IAAI7pD,EAAG6a,EAAM+qC,EAAOkE,EAMpB,IAJsB,kBAAXD,IACVA,EAAS,CAACA,IAGN7pD,EAAI,EAAGA,EAAI6pD,EAAO3pD,OAAQF,IAG9B8pD,EAAaZ,EADbruC,GADA+qC,EAAQiE,EAAO7pD,GAAG4lD,MAAM,MACX,IAEbP,EAAMyE,GAAcD,EAAO7pD,GAC3BwlD,EAAMsE,GAAcjvC,EACpB0tC,EAAauB,EAAYlE,EAAM,GAAGA,MAAM,KAE1C,CAEA,SAAS6D,EAAS5uC,EAAMkvC,GAEvBlvC,EAAOquC,EAAcruC,GAErB,IACI+yB,EADAia,EAAOxC,EAAMxqC,GAGjB,OAAIgtC,aAAgBb,EACZa,EAGY,kBAATA,GACVA,EAAO,IAAIb,EAAKa,GAChBxC,EAAMxqC,GAAQgtC,EACPA,GAIJvC,EAAMzqC,IAASkvC,IAAWN,IAAY7b,EAAO6b,EAAQnE,EAAMzqC,GAAO4uC,MACrE5B,EAAOxC,EAAMxqC,GAAQ,IAAImsC,GACpBE,KAAKtZ,GACVia,EAAKhtC,KAAO2qC,EAAM3qC,GACXgtC,GAGD,IACR,CAkBA,SAASmC,EAASC,GACjB,IAAIjqD,EAAGkqD,EAAOC,EAASC,EAMvB,IAJuB,kBAAZH,IACVA,EAAU,CAACA,IAGPjqD,EAAI,EAAGA,EAAIiqD,EAAQ/pD,OAAQF,IAG/BmqD,EAAUjB,GAFVgB,EAAQD,EAAQjqD,GAAG4lD,MAAM,MAEK,IAC9BwE,EAAUlB,EAAcgB,EAAM,IAE9B5E,EAAM6E,GAAWC,EACjB5E,EAAM2E,GAAWD,EAAM,GAEvB5E,EAAM8E,GAAWD,EACjB3E,EAAM4E,GAAWF,EAAM,EAEzB,CAwDA,SAASG,EAAaxsB,GACrB,IAAIysB,EAA4B,MAATzsB,EAAEygB,IAAuB,MAATzgB,EAAEygB,GACzC,SAAUzgB,EAAE3U,SAAkBpZ,IAAX+tB,EAAE0sB,MAAwBD,EAC9C,CAEA,SAAS5E,EAAU8E,GACK,qBAAZzH,SAAoD,oBAAlBA,QAAQja,OACpDia,QAAQja,MAAM0hB,EAEhB,CAMA,SAAS3F,EAAIzlB,GACZ,IAAI9jB,EAAOhb,MAAMM,UAAUkE,MAAM/D,KAAKd,UAAW,GAAI,GACpD4a,EAAO5a,UAAUA,UAAUC,OAAS,GACpC2nD,EAAO4B,EAAQ5uC,GACfwrC,EAAOnB,EAAOuF,IAAIhqD,MAAM,KAAM6a,GAQ/B,OANIusC,IAAS3C,EAAOwF,SAAStrB,IAAUirB,EAAYhE,IAClDA,EAAIhf,IAAIwgB,EAAKvrC,MAAM+pC,GAAM,WAG1BA,EAAIxB,GAAGhqC,GAEAwrC,CACR,EA1gBIR,EAAQ,GAAgB,IAAVA,GAAeC,EAAQ,IACxCJ,EAAS,wEAA0ER,EAAOC,QAAU,sBAuGrG6B,EAAKpmD,UAAY,CAChBsmD,KAAO,SAAUyD,GAChB7oD,KAAK+Y,KAAa8vC,EAAS9vC,KAC3B/Y,KAAKglD,MAAa6D,EAAS7D,MAC3BhlD,KAAK8kD,OAAa+D,EAAS/D,OAC3B9kD,KAAK6kD,QAAagE,EAAShE,QAC3B7kD,KAAKilD,WAAa4D,EAAS5D,UAC5B,EAEA6D,OAAS,SAAUC,GAClB,IAEC7qD,EAFG+sC,GAAU8d,EACbjE,EAAS9kD,KAAK8kD,OAGf,IAAK5mD,EAAI,EAAGA,EAAI4mD,EAAO1mD,OAAQF,IAC9B,GAAI+sC,EAAS6Z,EAAO5mD,GACnB,OAAOA,CAGV,EAEAulD,UAAY,WACX,IAAIuF,EAAYhpD,KAAK+Y,KACrB,OAAOla,OAAO0uC,KAAKkW,GAAW5oC,QAAO,SAAUouC,GAC9C,OAA6D,IAAtDxF,EAAUwF,GAAc1F,MAAM/2C,QAAQw8C,EAC9C,GACD,EAEAxuC,MAAQ,SAAUuuC,GACjB,IAICpyB,EAAQuyB,EAAYC,EAAYjrD,EAJ7B+sC,GAAW8d,EACdlE,EAAU7kD,KAAK6kD,QACfC,EAAU9kD,KAAK8kD,OACfngD,EAAUmgD,EAAO1mD,OAAS,EAG3B,IAAKF,EAAI,EAAGA,EAAIyG,EAAKzG,IAWpB,GAVAy4B,EAAakuB,EAAQ3mD,GACrBgrD,EAAarE,EAAQ3mD,EAAI,GACzBirD,EAAatE,EAAQ3mD,EAAIA,EAAI,EAAIA,GAE7By4B,EAASuyB,GAAcnG,EAAGqG,qBAC7BzyB,EAASuyB,EACCvyB,EAASwyB,GAAcpG,EAAGsG,qBACpC1yB,EAASwyB,GAGNle,EAAS6Z,EAAO5mD,GAAe,IAATy4B,EACzB,OAAOkuB,EAAQ3mD,GAIjB,OAAO2mD,EAAQlgD,EAChB,EAEAihD,KAAO,SAAU0D,GAChB,OAAOtpD,KAAKglD,MAAMhlD,KAAK8oD,OAAOQ,GAC/B,EAEA3yB,OAAS,SAAU2yB,GAElB,OADA1F,EAAS,8DACF5jD,KAAK6kD,QAAQ7kD,KAAK8oD,OAAOQ,GACjC,EAEAC,UAAY,SAAUD,GACrB,OAAOtpD,KAAK6kD,QAAQ7kD,KAAK8oD,OAAOQ,GACjC,GA8CDxD,EAAUhnD,UAAU8oD,cAAgB,SAAU4B,GAC7CxpD,KAAKgmD,aAAethD,KAAKkjB,IAAI5nB,KAAK+lD,KAAKwD,UAAUC,EAAS/D,IAAM+D,EAAS7yB,QACrE32B,KAAK+lD,KAAKH,KAAK4D,EAAS/D,IAAI7pB,QAAQ,UAAW,MAAQ4tB,EAAS5D,MACnE5lD,KAAKimD,WAEP,EAgTAlD,EAAGM,QA7hBW,SA8hBdN,EAAG0G,YAAe,GAClB1G,EAAG2G,OAAenG,EAClBR,EAAG4G,OAAenG,EAClBT,EAAG6G,OAAelG,EAClBX,EAAG8G,WAAapG,EAChBV,EAAGxd,IAAeuiB,EAClB/E,EAAGjX,KAAeoc,EAClBnF,EAAGC,KArDH,SAAmB/6C,GAClB6/C,EAAQ7/C,EAAKs7C,OACb2E,EAAQjgD,EAAKu7C,OAzCd,SAAuBv7C,GACtB,IAAI/J,EAAG+qD,EAAca,EAAehG,EACpC,GAAK77C,GAASA,EAAK7J,OACnB,IAAKF,EAAI,EAAGA,EAAI+J,EAAK7J,OAAQF,IAE5B+qD,GADAnF,EAAQ77C,EAAK/J,GAAG4lD,MAAM,MACD,GAAGvoC,cACxBuuC,EAAgBhG,EAAM,GAAGA,MAAM,KAC/BL,EAAUwF,GAAgB,IAAI5D,EAC7B4D,EACAa,EAGH,CA8BCC,CAAa9hD,EAAKw7C,WAClBV,EAAG0G,YAAcxhD,EAAKo7C,OACvB,EAiDAN,EAAGgD,KAAe4B,EAClB5E,EAAGiH,WAhDH,SAASA,EAAYjxC,GAKpB,OAJKixC,EAAWC,eACfD,EAAWC,cAAe,EACzBrG,EAAS,yBAA2B7qC,EAAO,uDAAyDA,EAAO,SAEpG4uC,EAAQ5uC,EAClB,EA2CAgqC,EAAGmH,MAhMH,SAAgBC,GAIf,OAHK7G,IAAe6G,IACnB7G,EAAcyD,KAERzD,CACR,EA4LAP,EAAGW,MArIH,WACC,IAAIxlD,EAAGqmD,EAAM,GAEb,IAAKrmD,KAAKwlD,EACLA,EAAM3lD,eAAeG,KAAOqlD,EAAMrlD,IAAMqlD,EAAMC,EAAMtlD,MAAQwlD,EAAMxlD,IACrEqmD,EAAIhmD,KAAKmlD,EAAMxlD,IAIjB,OAAOqmD,EAAIsD,MACZ,EA4HA9E,EAAGmC,KAAeA,EAClBnC,EAAG6B,OAAeA,EAClB7B,EAAGoB,aAAeA,EAClBpB,EAAGwF,YAAeA,EAClBxF,EAAGsG,oBAAuB,EAC1BtG,EAAGqG,sBAAuB,EAC1BrG,EAAGU,UAhIH,WACC,OAAO5kD,OAAO0uC,KAAKkW,EACpB,EA+HAV,EAAGqH,gBArFH,SAAyBC,EAASC,GALlC,IAAqBvxC,EAQpB,GAPAA,GADoBA,EAMCsxC,GALT9uC,gBAKZ8uC,EAJO5G,EAAU1qC,IAAS,MAMZ,OAAO,KAErB,IAAIwqC,EAAQ8G,EAAQ9G,MAAMsE,OAE1B,OAAIyC,EACI/G,EAAM11C,KAAI,SAAUm7C,GAE1B,MAAO,CACNjwC,KAAMiwC,EACNryB,OAHUgxB,EAAQqB,GAGLO,UAAU,IAAIzI,MAE7B,IAGMyC,CACR,EAyEA,IA8DyBgH,EA9DrBC,EAAKpH,EAAOoH,GAgDhB,SAASC,EAAUF,GAClB,OAAO,WACN,OAAIvqD,KAAK0qD,GAAa1qD,KAAK0qD,GAAG9E,KAAK5lD,MAC5BuqD,EAAItrD,KAAKe,KACjB,CACD,CAEA,SAAS2qD,EAAeJ,GACvB,OAAO,WAEN,OADAvqD,KAAK0qD,GAAK,KACHH,EAAI5rD,MAAMqB,KAAM7B,UACxB,CACD,CA1DAilD,EAAOL,GAAKA,EAEZK,EAAOwH,YAAc,KAErBxH,EAAOyH,aAAe,SAAUvB,EAAKwB,GACpC,IACCn0B,EADGovB,EAAO3C,EAAOwH,YAUlB,QAPe58C,IAAXs7C,EAAIoB,KACH3E,GAAQwC,EAAYe,KAASA,EAAIyB,SACpCzB,EAAIhN,GAAK8G,EAAOuF,IAAIW,EAAIliC,IAAIk1B,GAC5BgN,EAAIX,MAAMpjB,IAAIwgB,EAAKvrC,MAAM8uC,GAAM,YAEhCA,EAAIoB,GAAK3E,GAENuD,EAAIoB,GAKP,GAJA/zB,EAAS2yB,EAAIoB,GAAGnB,UAAUD,GACtB5kD,KAAKkjB,IAAI+O,GAAU,KACtBA,GAAkB,SAEG3oB,IAAlBs7C,EAAIC,UAAyB,CAChC,IAAIl4C,EAAIi4C,EAAIoB,GACZpB,EAAIC,WAAW5yB,EAAQm0B,GACvBxB,EAAIoB,GAAKr5C,CACV,MACCi4C,EAAIvD,KAAKpvB,EAAQm0B,EAGpB,EAEAN,EAAGzH,GAAK,SAAUhqC,EAAM+xC,GACvB,GAAI/xC,EAAM,CACT,GAAoB,kBAATA,EACV,MAAM,IAAItU,MAAM,wCAA0CsU,EAAO,YAAcA,EAAO,KAQvF,OANA/Y,KAAK0qD,GAAK/C,EAAQ5uC,GACd/Y,KAAK0qD,GACRtH,EAAOyH,aAAa7qD,KAAM8qD,GAE1BlH,EAAS,mCAAqC7qC,EAAO,4DAE/C/Y,IACR,CACA,GAAIA,KAAK0qD,GAAM,OAAO1qD,KAAK0qD,GAAG3xC,IAC/B,EAuBAyxC,EAAGQ,SAAYP,EAASD,EAAGQ,UAC3BR,EAAGS,SAAYR,EAASD,EAAGS,UAC3BT,EAAG7B,IAAYgC,EAAcH,EAAG7B,KAChC6B,EAAGU,MAAYP,EAAcH,EAAGU,OAChCV,EAAGjB,WAXsBgB,EAWKC,EAAGjB,UAVzB,WAEN,OADIprD,UAAUC,OAAS,IAAG4B,KAAK0qD,GAAK,MAC7BH,EAAI5rD,MAAMqB,KAAM7B,UACxB,GASDilD,EAAOL,GAAGoI,WAAa,SAASpyC,GAK/B,OAJIgrC,EAAQ,GAAgB,IAAVA,GAAeC,EAAQ,IACxCJ,EAAS,qFAAuFR,EAAOC,QAAU,KAElHD,EAAOwH,YAAc7xC,EAAO4uC,EAAQ5uC,GAAQ,KACrCqqC,CACR,EAGA,IAAIgI,EAAmBhI,EAAOgI,iBAY9B,MAXyD,mBAArDvsD,OAAOC,UAAUF,SAASK,KAAKmsD,IAElCA,EAAiB7sD,KAAK,MACtB6sD,EAAiB7sD,KAAK,OACZ6sD,IAEVA,EAAiBV,GAAK,MAKhBtH,CACR,uCChrB0EhkD,QAGjE,WAAc,aAEnB,IAAIisD,EA6HAl3B,EA3HJ,SAASm3B,IACL,OAAOD,EAAa1sD,MAAM,KAAMR,UACpC,CAIA,SAASotD,EAAgBC,GACrBH,EAAeG,CACnB,CAEA,SAAS/sD,EAAQ6+B,GACb,OACIA,aAAiB9+B,OACyB,mBAA1CK,OAAOC,UAAUF,SAASK,KAAKq+B,EAEvC,CAEA,SAASmuB,EAASnuB,GAGd,OACa,MAATA,GAC0C,oBAA1Cz+B,OAAOC,UAAUF,SAASK,KAAKq+B,EAEvC,CAEA,SAASouB,EAAW/+C,EAAGnN,GACnB,OAAOX,OAAOC,UAAUf,eAAekB,KAAK0N,EAAGnN,EACnD,CAEA,SAASmsD,EAAcC,GACnB,GAAI/sD,OAAOgtD,oBACP,OAAkD,IAA3ChtD,OAAOgtD,oBAAoBD,GAAKxtD,OAEvC,IAAI0tD,EACJ,IAAKA,KAAKF,EACN,GAAIF,EAAWE,EAAKE,GAChB,OAAO,EAGf,OAAO,CAEf,CAEA,SAASC,EAAYzuB,GACjB,YAAiB,IAAVA,CACX,CAEA,SAAS0uB,EAAS1uB,GACd,MACqB,kBAAVA,GACmC,oBAA1Cz+B,OAAOC,UAAUF,SAASK,KAAKq+B,EAEvC,CAEA,SAAS2uB,EAAO3uB,GACZ,OACIA,aAAiBwjB,MACyB,kBAA1CjiD,OAAOC,UAAUF,SAASK,KAAKq+B,EAEvC,CAEA,SAASzvB,EAAIq+C,EAAK1B,GACd,IACItsD,EADAiuD,EAAM,GAENC,EAASF,EAAI9tD,OACjB,IAAKF,EAAI,EAAGA,EAAIkuD,IAAUluD,EACtBiuD,EAAI5tD,KAAKisD,EAAG0B,EAAIhuD,GAAIA,IAExB,OAAOiuD,CACX,CAEA,SAASE,EAAO1/C,EAAGnN,GACf,IAAK,IAAItB,KAAKsB,EACNksD,EAAWlsD,EAAGtB,KACdyO,EAAEzO,GAAKsB,EAAEtB,IAYjB,OARIwtD,EAAWlsD,EAAG,cACdmN,EAAE/N,SAAWY,EAAEZ,UAGf8sD,EAAWlsD,EAAG,aACdmN,EAAE2/C,QAAU9sD,EAAE8sD,SAGX3/C,CACX,CAEA,SAAS4/C,EAAUjvB,EAAOnX,EAAQqmC,EAAQC,GACtC,OAAOC,GAAiBpvB,EAAOnX,EAAQqmC,EAAQC,GAAQ,GAAM9D,KACjE,CAEA,SAASgE,IAEL,MAAO,CACHC,OAAO,EACPC,aAAc,GACdC,YAAa,GACb1+B,UAAW,EACX2+B,cAAe,EACfC,WAAW,EACXC,WAAY,KACZC,aAAc,KACdC,eAAe,EACfC,iBAAiB,EACjBC,KAAK,EACLC,gBAAiB,GACjBC,IAAK,KACLC,SAAU,KACVC,SAAS,EACTC,iBAAiB,EAEzB,CAEA,SAASC,EAAgB5xB,GAIrB,OAHa,MAATA,EAAE6xB,MACF7xB,EAAE6xB,IAAMjB,KAEL5wB,EAAE6xB,GACb,CAqBA,SAASC,EAAQ9xB,GACb,GAAkB,MAAdA,EAAE+xB,SAAkB,CACpB,IAAIv4C,EAAQo4C,EAAgB5xB,GACxBgyB,EAAc55B,EAAKl1B,KAAKsW,EAAM+3C,iBAAiB,SAAUpvD,GACrD,OAAY,MAALA,CACX,IACA8vD,GACKC,MAAMlyB,EAAEugB,GAAG4E,YACZ3rC,EAAM6Y,SAAW,IAChB7Y,EAAMq3C,QACNr3C,EAAM03C,aACN13C,EAAM23C,eACN33C,EAAM24C,iBACN34C,EAAMm4C,kBACNn4C,EAAMy3C,YACNz3C,EAAM43C,gBACN53C,EAAM63C,mBACL73C,EAAMi4C,UAAaj4C,EAAMi4C,UAAYO,GAU/C,GARIhyB,EAAEoyB,UACFH,EACIA,GACwB,IAAxBz4C,EAAMw3C,eACwB,IAA9Bx3C,EAAMs3C,aAAazuD,aACD4P,IAAlBuH,EAAM64C,SAGS,MAAnBvvD,OAAOwvD,UAAqBxvD,OAAOwvD,SAAStyB,GAG5C,OAAOiyB,EAFPjyB,EAAE+xB,SAAWE,CAIrB,CACA,OAAOjyB,EAAE+xB,QACb,CAEA,SAASQ,EAAc/4C,GACnB,IAAIwmB,EAAIwwB,EAAUgC,KAOlB,OANa,MAATh5C,EACA82C,EAAOsB,EAAgB5xB,GAAIxmB,GAE3Bo4C,EAAgB5xB,GAAGqxB,iBAAkB,EAGlCrxB,CACX,CA9DI5H,EADA31B,MAAMM,UAAUq1B,KACT31B,MAAMM,UAAUq1B,KAEhB,SAAUq6B,GACb,IAEItwD,EAFAmC,EAAIxB,OAAOmB,MACXuG,EAAMlG,EAAEjC,SAAW,EAGvB,IAAKF,EAAI,EAAGA,EAAIqI,EAAKrI,IACjB,GAAIA,KAAKmC,GAAKmuD,EAAIvvD,KAAKe,KAAMK,EAAEnC,GAAIA,EAAGmC,GAClC,OAAO,EAIf,OAAO,CACX,EAoDJ,IAAI+qD,EAAoBE,EAAMF,iBAAmB,GAC7CqD,GAAmB,EAEvB,SAASC,EAAW/rD,EAAIC,GACpB,IAAI1E,EACAywD,EACAC,EACAC,EAAsBzD,EAAiBhtD,OAiC3C,GA/BK2tD,EAAYnpD,EAAKksD,oBAClBnsD,EAAGmsD,iBAAmBlsD,EAAKksD,kBAE1B/C,EAAYnpD,EAAK4C,MAClB7C,EAAG6C,GAAK5C,EAAK4C,IAEZumD,EAAYnpD,EAAK45C,MAClB75C,EAAG65C,GAAK55C,EAAK45C,IAEZuP,EAAYnpD,EAAK+5C,MAClBh6C,EAAGg6C,GAAK/5C,EAAK+5C,IAEZoP,EAAYnpD,EAAKurD,WAClBxrD,EAAGwrD,QAAUvrD,EAAKurD,SAEjBpC,EAAYnpD,EAAK6lD,QAClB9lD,EAAG8lD,KAAO7lD,EAAK6lD,MAEdsD,EAAYnpD,EAAKmoD,UAClBpoD,EAAGooD,OAASnoD,EAAKmoD,QAEhBgB,EAAYnpD,EAAKmsD,WAClBpsD,EAAGosD,QAAUnsD,EAAKmsD,SAEjBhD,EAAYnpD,EAAKgrD,OAClBjrD,EAAGirD,IAAMD,EAAgB/qD,IAExBmpD,EAAYnpD,EAAKosD,WAClBrsD,EAAGqsD,QAAUpsD,EAAKosD,SAGlBH,EAAsB,EACtB,IAAK3wD,EAAI,EAAGA,EAAI2wD,EAAqB3wD,IAG5B6tD,EADL6C,EAAMhsD,EADN+rD,EAAOvD,EAAiBltD,OAGpByE,EAAGgsD,GAAQC,GAKvB,OAAOjsD,CACX,CAGA,SAASssD,EAAOC,GACZR,EAAW1uD,KAAMkvD,GACjBlvD,KAAKs8C,GAAK,IAAIwE,KAAkB,MAAboO,EAAO5S,GAAa4S,EAAO5S,GAAG4E,UAAYqN,KACxDvuD,KAAK6tD,YACN7tD,KAAKs8C,GAAK,IAAIwE,KAAKyN,OAIE,IAArBE,IACAA,GAAmB,EACnBnD,EAAMT,aAAa7qD,MACnByuD,GAAmB,EAE3B,CAEA,SAAS7F,EAASgD,GACd,OACIA,aAAeqD,GAAkB,MAAPrD,GAAuC,MAAxBA,EAAIkD,gBAErD,CAEA,SAASxpB,EAAK6pB,IAEgC,IAAtC7D,EAAM8D,6BACa,qBAAZnO,SACPA,QAAQ3b,MAER2b,QAAQ3b,KAAK,wBAA0B6pB,EAE/C,CAEA,SAASE,EAAUF,EAAK3E,GACpB,IAAI8E,GAAY,EAEhB,OAAOjD,GAAO,WAIV,GAHgC,MAA5Bf,EAAMiE,oBACNjE,EAAMiE,mBAAmB,KAAMJ,GAE/BG,EAAW,CACX,IACIjxD,EACAH,EACAc,EAHAwa,EAAO,GAIPg2C,EAASrxD,UAAUC,OACvB,IAAKF,EAAI,EAAGA,EAAIsxD,EAAQtxD,IAAK,CAEzB,GADAG,EAAM,GACsB,kBAAjBF,UAAUD,GAAiB,CAElC,IAAKc,KADLX,GAAO,MAAQH,EAAI,KACPC,UAAU,GACdutD,EAAWvtD,UAAU,GAAIa,KACzBX,GAAOW,EAAM,KAAOb,UAAU,GAAGa,GAAO,MAGhDX,EAAMA,EAAI2E,MAAM,GAAI,EACxB,MACI3E,EAAMF,UAAUD,GAEpBsb,EAAKjb,KAAKF,EACd,CACAinC,EACI6pB,EACI,gBACA3wD,MAAMM,UAAUkE,MAAM/D,KAAKua,GAAMta,KAAK,IACtC,MACA,IAAIuF,OAAQwwC,OAEpBqa,GAAY,CAChB,CACA,OAAO9E,EAAG7rD,MAAMqB,KAAM7B,UAC1B,GAAGqsD,EACP,CAEA,IAgFIjd,EAhFAkiB,EAAe,CAAC,EAEpB,SAASC,EAAgB32C,EAAMo2C,GACK,MAA5B7D,EAAMiE,oBACNjE,EAAMiE,mBAAmBx2C,EAAMo2C,GAE9BM,EAAa12C,KACdusB,EAAK6pB,GACLM,EAAa12C,IAAQ,EAE7B,CAKA,SAAS42C,EAAWryB,GAChB,MACyB,qBAAbsyB,UAA4BtyB,aAAiBsyB,UACX,sBAA1C/wD,OAAOC,UAAUF,SAASK,KAAKq+B,EAEvC,CAEA,SAASuyB,EAAIX,GACT,IAAIP,EAAMzwD,EACV,IAAKA,KAAKgxD,EACFxD,EAAWwD,EAAQhxD,KAEfyxD,EADJhB,EAAOO,EAAOhxD,IAEV8B,KAAK9B,GAAKywD,EAEV3uD,KAAK,IAAM9B,GAAKywD,GAI5B3uD,KAAK8vD,QAAUZ,EAIflvD,KAAK+vD,+BAAiC,IAAIC,QACrChwD,KAAKiwD,wBAAwBtL,QAAU3kD,KAAKkwD,cAAcvL,QACvD,IACA,UAAUA,OAEtB,CAEA,SAASwL,EAAaC,EAAcC,GAChC,IACI1B,EADAxC,EAAME,EAAO,CAAC,EAAG+D,GAErB,IAAKzB,KAAQ0B,EACL3E,EAAW2E,EAAa1B,KACpBlD,EAAS2E,EAAazB,KAAUlD,EAAS4E,EAAY1B,KACrDxC,EAAIwC,GAAQ,CAAC,EACbtC,EAAOF,EAAIwC,GAAOyB,EAAazB,IAC/BtC,EAAOF,EAAIwC,GAAO0B,EAAY1B,KACF,MAArB0B,EAAY1B,GACnBxC,EAAIwC,GAAQ0B,EAAY1B,UAEjBxC,EAAIwC,IAIvB,IAAKA,KAAQyB,EAEL1E,EAAW0E,EAAczB,KACxBjD,EAAW2E,EAAa1B,IACzBlD,EAAS2E,EAAazB,MAGtBxC,EAAIwC,GAAQtC,EAAO,CAAC,EAAGF,EAAIwC,KAGnC,OAAOxC,CACX,CAEA,SAASmE,EAAOpB,GACE,MAAVA,GACAlvD,KAAK6vD,IAAIX,EAEjB,CAlEA5D,EAAM8D,6BAA8B,EACpC9D,EAAMiE,mBAAqB,KAsEvBhiB,EADA1uC,OAAO0uC,KACA1uC,OAAO0uC,KAEP,SAAUqe,GACb,IAAI1tD,EACAiuD,EAAM,GACV,IAAKjuD,KAAK0tD,EACFF,EAAWE,EAAK1tD,IAChBiuD,EAAI5tD,KAAKL,GAGjB,OAAOiuD,CACX,EAGJ,IAAIoE,EAAkB,CAClBC,QAAS,gBACTC,QAAS,mBACTC,SAAU,eACVC,QAAS,oBACTC,SAAU,sBACVC,SAAU,KAGd,SAASC,EAAS9xD,EAAKsqD,EAAKvI,GACxB,IAAIgQ,EAAS/wD,KAAKgxD,UAAUhyD,IAAQgB,KAAKgxD,UAAoB,SAC7D,OAAOrB,EAAWoB,GAAUA,EAAO9xD,KAAKqqD,EAAKvI,GAAOgQ,CACxD,CAEA,SAASE,EAASv5C,EAAQw5C,EAAcC,GACpC,IAAIC,EAAY,GAAK1sD,KAAKkjB,IAAIlQ,GAC1B25C,EAAcH,EAAeE,EAAUhzD,OAE3C,OADWsZ,GAAU,EAERy5C,EAAY,IAAM,GAAM,KACjCzsD,KAAK8O,IAAI,GAAI9O,KAAKC,IAAI,EAAG0sD,IAAczyD,WAAW4vC,OAAO,GACzD4iB,CAER,CAEA,IAAIE,EACI,yMACJC,EAAwB,6CACxBC,EAAkB,CAAC,EACnBC,EAAuB,CAAC,EAM5B,SAASC,EAAex8C,EAAOy8C,EAAQC,EAASpG,GAC5C,IAAIqG,EAAOrG,EACa,kBAAbA,IACPqG,EAAO,WACH,OAAO7xD,KAAKwrD,IAChB,GAEAt2C,IACAu8C,EAAqBv8C,GAAS28C,GAE9BF,IACAF,EAAqBE,EAAO,IAAM,WAC9B,OAAOV,EAASY,EAAKlzD,MAAMqB,KAAM7B,WAAYwzD,EAAO,GAAIA,EAAO,GACnE,GAEAC,IACAH,EAAqBG,GAAW,WAC5B,OAAO5xD,KAAK8xD,aAAaF,QACrBC,EAAKlzD,MAAMqB,KAAM7B,WACjB+W,EAER,EAER,CAEA,SAAS68C,EAAuBz0B,GAC5B,OAAIA,EAAMoe,MAAM,YACLpe,EAAM1B,QAAQ,WAAY,IAE9B0B,EAAM1B,QAAQ,MAAO,GAChC,CAEA,SAASo2B,EAAmB7rC,GACxB,IACIjoB,EACAE,EAFAqmD,EAAQt+B,EAAOu1B,MAAM4V,GAIzB,IAAKpzD,EAAI,EAAGE,EAASqmD,EAAMrmD,OAAQF,EAAIE,EAAQF,IACvCuzD,EAAqBhN,EAAMvmD,IAC3BumD,EAAMvmD,GAAKuzD,EAAqBhN,EAAMvmD,IAEtCumD,EAAMvmD,GAAK6zD,EAAuBtN,EAAMvmD,IAIhD,OAAO,SAAUorD,GACb,IACIprD,EADA6yD,EAAS,GAEb,IAAK7yD,EAAI,EAAGA,EAAIE,EAAQF,IACpB6yD,GAAUpB,EAAWlL,EAAMvmD,IACrBumD,EAAMvmD,GAAGe,KAAKqqD,EAAKnjC,GACnBs+B,EAAMvmD,GAEhB,OAAO6yD,CACX,CACJ,CAGA,SAASkB,EAAal2B,EAAG5V,GACrB,OAAK4V,EAAE8xB,WAIP1nC,EAAS+rC,EAAa/rC,EAAQ4V,EAAE+1B,cAChCN,EAAgBrrC,GACZqrC,EAAgBrrC,IAAW6rC,EAAmB7rC,GAE3CqrC,EAAgBrrC,GAAQ4V,IAPpBA,EAAE+1B,aAAaK,aAQ9B,CAEA,SAASD,EAAa/rC,EAAQqmC,GAC1B,IAAItuD,EAAI,EAER,SAASk0D,EAA4B90B,GACjC,OAAOkvB,EAAO6F,eAAe/0B,IAAUA,CAC3C,CAGA,IADAi0B,EAAsBe,UAAY,EAC3Bp0D,GAAK,GAAKqzD,EAAsBrsB,KAAK/e,IACxCA,EAASA,EAAOyV,QACZ21B,EACAa,GAEJb,EAAsBe,UAAY,EAClCp0D,GAAK,EAGT,OAAOioB,CACX,CAEA,IAAIosC,EAAwB,CACxBC,IAAK,YACLC,GAAI,SACJ/9B,EAAG,aACHg+B,GAAI,eACJC,IAAK,sBACLC,KAAM,6BAGV,SAASP,EAAerzD,GACpB,IAAImnB,EAASnmB,KAAK6yD,gBAAgB7zD,GAC9B8zD,EAAc9yD,KAAK6yD,gBAAgB7zD,EAAIuc,eAE3C,OAAI4K,IAAW2sC,EACJ3sC,GAGXnmB,KAAK6yD,gBAAgB7zD,GAAO8zD,EACvBpX,MAAM4V,GACNzjD,KAAI,SAAUklD,GACX,MACY,SAARA,GACQ,OAARA,GACQ,OAARA,GACQ,SAARA,EAEOA,EAAI/vD,MAAM,GAEd+vD,CACX,IACC7zD,KAAK,IAEHc,KAAK6yD,gBAAgB7zD,GAChC,CAEA,IAAIg0D,EAAqB,eAEzB,SAASb,IACL,OAAOnyD,KAAKizD,YAChB,CAEA,IAAIC,EAAiB,KACjBC,EAAgC,UAEpC,SAASvB,EAAQl6C,GACb,OAAO1X,KAAKozD,SAASx3B,QAAQ,KAAMlkB,EACvC,CAEA,IAAI27C,EAAsB,CACtBC,OAAQ,QACRC,KAAM,SACNjzD,EAAG,gBACHkzD,GAAI,aACJz3B,EAAG,WACH03B,GAAI,aACJhwD,EAAG,UACHiwD,GAAI,WACJn0D,EAAG,QACHo0D,GAAI,UACJnwD,EAAG,SACHowD,GAAI,WACJC,EAAG,UACHC,GAAI,YACJjyD,EAAG,SACHkyD,GAAI,YAGR,SAASC,EAAat8C,EAAQu8C,EAAe/xB,EAAQgyB,GACjD,IAAInD,EAAS/wD,KAAKm0D,cAAcjyB,GAChC,OAAOytB,EAAWoB,GACZA,EAAOr5C,EAAQu8C,EAAe/xB,EAAQgyB,GACtCnD,EAAOn1B,QAAQ,MAAOlkB,EAChC,CAEA,SAAS08C,GAAW9N,EAAMyK,GACtB,IAAI5qC,EAASnmB,KAAKm0D,cAAc7N,EAAO,EAAI,SAAW,QACtD,OAAOqJ,EAAWxpC,GAAUA,EAAO4qC,GAAU5qC,EAAOyV,QAAQ,MAAOm1B,EACvE,CAEA,IAAI5I,GAAU,CAAC,EAEf,SAASkM,GAAa18C,EAAM28C,GACxB,IAAIC,EAAY58C,EAAKd,cACrBsxC,GAAQoM,GAAapM,GAAQoM,EAAY,KAAOpM,GAAQmM,GAAa38C,CACzE,CAEA,SAAS68C,GAAeC,GACpB,MAAwB,kBAAVA,EACRtM,GAAQsM,IAAUtM,GAAQsM,EAAM59C,oBAChC7I,CACV,CAEA,SAAS0mD,GAAqBC,GAC1B,IACIC,EACAjG,EAFAkG,EAAkB,CAAC,EAIvB,IAAKlG,KAAQgG,EACLjJ,EAAWiJ,EAAahG,KACxBiG,EAAiBJ,GAAe7F,MAE5BkG,EAAgBD,GAAkBD,EAAYhG,IAK1D,OAAOkG,CACX,CAEA,IAAIC,GAAa,CAAC,EAElB,SAASC,GAAgBp9C,EAAMq9C,GAC3BF,GAAWn9C,GAAQq9C,CACvB,CAEA,SAASC,GAAoBC,GACzB,IACI9jD,EADAqjD,EAAQ,GAEZ,IAAKrjD,KAAK8jD,EACFxJ,EAAWwJ,EAAU9jD,IACrBqjD,EAAMl2D,KAAK,CAAEoZ,KAAMvG,EAAG4jD,SAAUF,GAAW1jD,KAMnD,OAHAqjD,EAAM5M,MAAK,SAAUl7C,EAAGnN,GACpB,OAAOmN,EAAEqoD,SAAWx1D,EAAEw1D,QAC1B,IACOP,CACX,CAEA,SAASU,GAAWC,GAChB,OAAQA,EAAO,IAAM,GAAKA,EAAO,MAAQ,GAAMA,EAAO,MAAQ,CAClE,CAEA,SAASC,GAAS39C,GACd,OAAIA,EAAS,EAEFhT,KAAKwD,KAAKwP,IAAW,EAErBhT,KAAKi+B,MAAMjrB,EAE1B,CAEA,SAAS49C,GAAMC,GACX,IAAIC,GAAiBD,EACjBz0D,EAAQ,EAMZ,OAJsB,IAAlB00D,GAAuBC,SAASD,KAChC10D,EAAQu0D,GAASG,IAGd10D,CACX,CAEA,SAAS40D,GAAW/9C,EAAMmzC,GACtB,OAAO,SAAUhqD,GACb,OAAa,MAATA,GACA60D,GAAM31D,KAAM2X,EAAM7W,GAClBwqD,EAAMT,aAAa7qD,KAAM8qD,GAClB9qD,MAEAuM,GAAIvM,KAAM2X,EAEzB,CACJ,CAEA,SAASpL,GAAI+8C,EAAK3xC,GACd,OAAO2xC,EAAIuE,UACLvE,EAAIhN,GAAG,OAASgN,EAAIyB,OAAS,MAAQ,IAAMpzC,KAC3C42C,GACV,CAEA,SAASoH,GAAMrM,EAAK3xC,EAAM7W,GAClBwoD,EAAIuE,YAAcI,MAAMntD,KAEX,aAAT6W,GACAw9C,GAAW7L,EAAI8L,SACC,IAAhB9L,EAAIsM,SACW,KAAftM,EAAIuM,QAEJ/0D,EAAQw0D,GAAMx0D,GACdwoD,EAAIhN,GAAG,OAASgN,EAAIyB,OAAS,MAAQ,IAAMpzC,GACvC7W,EACAwoD,EAAIsM,QACJE,GAAYh1D,EAAOwoD,EAAIsM,WAG3BtM,EAAIhN,GAAG,OAASgN,EAAIyB,OAAS,MAAQ,IAAMpzC,GAAM7W,GAG7D,CAIA,SAASi1D,GAAUtB,GAEf,OAAI9E,EAAW3vD,KADfy0D,EAAQD,GAAeC,KAEZz0D,KAAKy0D,KAETz0D,IACX,CAEA,SAASg2D,GAAUvB,EAAO3zD,GACtB,GAAqB,kBAAV2zD,EAAoB,CAE3B,IACIv2D,EADA+3D,EAAchB,GADlBR,EAAQC,GAAqBD,IAGzByB,EAAiBD,EAAY73D,OACjC,IAAKF,EAAI,EAAGA,EAAIg4D,EAAgBh4D,IAC5B8B,KAAKi2D,EAAY/3D,GAAGyZ,MAAM88C,EAAMwB,EAAY/3D,GAAGyZ,MAEvD,MAEI,GAAIg4C,EAAW3vD,KADfy0D,EAAQD,GAAeC,KAEnB,OAAOz0D,KAAKy0D,GAAO3zD,GAG3B,OAAOd,IACX,CAEA,IAoBIm2D,GApBAC,GAAS,KACTC,GAAS,OACTC,GAAS,QACTC,GAAS,QACTC,GAAS,aACTC,GAAY,QACZC,GAAY,YACZC,GAAY,gBACZC,GAAY,UACZC,GAAY,UACZC,GAAY,eACZC,GAAgB,MAChBC,GAAc,WACdC,GAAc,qBACdC,GAAmB,0BACnBC,GAAiB,uBAGjBC,GACI,wJAKR,SAASC,GAAcniD,EAAOoiD,EAAOC,GACjCpB,GAAQjhD,GAASy6C,EAAW2H,GACtBA,EACA,SAAUE,EAAU1F,GAChB,OAAO0F,GAAYD,EAAcA,EAAcD,CACnD,CACV,CAEA,SAASG,GAAsBviD,EAAOg6C,GAClC,OAAKxD,EAAWyK,GAASjhD,GAIlBihD,GAAQjhD,GAAOg6C,EAAOf,QAASe,EAAOF,SAHlC,IAAIgB,OAAO0H,GAAexiD,GAIzC,CAGA,SAASwiD,GAAep3D,GACpB,OAAOq3D,GACHr3D,EACKs7B,QAAQ,KAAM,IACdA,QACG,uCACA,SAAUg8B,EAAS57B,EAAIC,EAAI47B,EAAIC,GAC3B,OAAO97B,GAAMC,GAAM47B,GAAMC,CAC7B,IAGhB,CAEA,SAASH,GAAYr3D,GACjB,OAAOA,EAAEs7B,QAAQ,yBAA0B,OAC/C,CAlCAu6B,GAAU,CAAC,EAoCX,IAAIlhD,GAAS,CAAC,EAEd,SAAS8iD,GAAc7iD,EAAOs2C,GAC1B,IAAIttD,EAEA85D,EADAnG,EAAOrG,EAWX,IATqB,kBAAVt2C,IACPA,EAAQ,CAACA,IAET82C,EAASR,KACTqG,EAAO,SAAUv0B,EAAOmnB,GACpBA,EAAM+G,GAAY8J,GAAMh4B,EAC5B,GAEJ06B,EAAW9iD,EAAM9W,OACZF,EAAI,EAAGA,EAAI85D,EAAU95D,IACtB+W,GAAOC,EAAMhX,IAAM2zD,CAE3B,CAEA,SAASoG,GAAkB/iD,EAAOs2C,GAC9BuM,GAAc7iD,GAAO,SAAUooB,EAAOmnB,EAAOyK,EAAQh6C,GACjDg6C,EAAOgJ,GAAKhJ,EAAOgJ,IAAM,CAAC,EAC1B1M,EAASluB,EAAO4xB,EAAOgJ,GAAIhJ,EAAQh6C,EACvC,GACJ,CAEA,SAASijD,GAAwBjjD,EAAOooB,EAAO4xB,GAC9B,MAAT5xB,GAAiBouB,EAAWz2C,GAAQC,IACpCD,GAAOC,GAAOooB,EAAO4xB,EAAO9nC,GAAI8nC,EAAQh6C,EAEhD,CAEA,IAcI1I,GAdA4rD,GAAO,EACPC,GAAQ,EACRC,GAAO,EACPC,GAAO,EACPC,GAAS,EACTC,GAAS,EACTC,GAAc,EACdC,GAAO,EACPC,GAAU,EAEd,SAASC,GAAIt4D,EAAGgD,GACZ,OAAShD,EAAIgD,EAAKA,GAAKA,CAC3B,CAmBA,SAASuyD,GAAYV,EAAMQ,GACvB,GAAI3H,MAAMmH,IAASnH,MAAM2H,GACrB,OAAOrH,IAEX,IAAIuK,EAAWD,GAAIjD,EAAO,IAE1B,OADAR,IAASQ,EAAQkD,GAAY,GACT,IAAbA,EACD3D,GAAWC,GACP,GACA,GACJ,GAAO0D,EAAW,EAAK,CACjC,CAzBItsD,GADAhO,MAAMM,UAAU0N,QACNhO,MAAMM,UAAU0N,QAEhB,SAAUusD,GAEhB,IAAI76D,EACJ,IAAKA,EAAI,EAAGA,EAAI8B,KAAK5B,SAAUF,EAC3B,GAAI8B,KAAK9B,KAAO66D,EACZ,OAAO76D,EAGf,OAAQ,CACZ,EAkBJwzD,EAAe,IAAK,CAAC,KAAM,GAAI,MAAM,WACjC,OAAO1xD,KAAK41D,QAAU,CAC1B,IAEAlE,EAAe,MAAO,EAAG,GAAG,SAAUvrC,GAClC,OAAOnmB,KAAK8xD,aAAakH,YAAYh5D,KAAMmmB,EAC/C,IAEAurC,EAAe,OAAQ,EAAG,GAAG,SAAUvrC,GACnC,OAAOnmB,KAAK8xD,aAAamH,OAAOj5D,KAAMmmB,EAC1C,IAIAkuC,GAAa,QAAS,KAItBU,GAAgB,QAAS,GAIzBsC,GAAc,IAAKZ,IACnBY,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,OAAO,SAAUG,EAAUhL,GACrC,OAAOA,EAAO0M,iBAAiB1B,EACnC,IACAH,GAAc,QAAQ,SAAUG,EAAUhL,GACtC,OAAOA,EAAO2M,YAAY3B,EAC9B,IAEAO,GAAc,CAAC,IAAK,OAAO,SAAUz6B,EAAOmnB,GACxCA,EAAM4T,IAAS/C,GAAMh4B,GAAS,CAClC,IAEAy6B,GAAc,CAAC,MAAO,SAAS,SAAUz6B,EAAOmnB,EAAOyK,EAAQh6C,GAC3D,IAAI0gD,EAAQ1G,EAAOF,QAAQoK,YAAY97B,EAAOpoB,EAAOg6C,EAAOf,SAE/C,MAATyH,EACAnR,EAAM4T,IAASzC,EAEfjI,EAAgBuB,GAAQhC,aAAe5vB,CAE/C,IAIA,IAAI+7B,GACI,wFAAwFvV,MACpF,KAERwV,GACI,kDAAkDxV,MAAM,KAC5DyV,GAAmB,gCACnBC,GAA0BpC,GAC1BqC,GAAqBrC,GAEzB,SAASsC,GAAa39B,EAAG5V,GACrB,OAAK4V,EAKEt9B,EAAQuB,KAAK25D,SACd35D,KAAK25D,QAAQ59B,EAAE65B,SACf51D,KAAK25D,SACA35D,KAAK25D,QAAQC,UAAYL,IAAkBr0B,KAAK/e,GAC3C,SACA,cACR4V,EAAE65B,SAVCn3D,EAAQuB,KAAK25D,SACd35D,KAAK25D,QACL35D,KAAK25D,QAAoB,UASvC,CAEA,SAASE,GAAkB99B,EAAG5V,GAC1B,OAAK4V,EAKEt9B,EAAQuB,KAAK85D,cACd95D,KAAK85D,aAAa/9B,EAAE65B,SACpB51D,KAAK85D,aACDP,GAAiBr0B,KAAK/e,GAAU,SAAW,cAC7C4V,EAAE65B,SARCn3D,EAAQuB,KAAK85D,cACd95D,KAAK85D,aACL95D,KAAK85D,aAAyB,UAO5C,CAEA,SAASC,GAAkBC,EAAW7zC,EAAQsmC,GAC1C,IAAIvuD,EACA+7D,EACA3Q,EACA4Q,EAAMF,EAAUG,oBACpB,IAAKn6D,KAAKo6D,aAKN,IAHAp6D,KAAKo6D,aAAe,GACpBp6D,KAAKq6D,iBAAmB,GACxBr6D,KAAKs6D,kBAAoB,GACpBp8D,EAAI,EAAGA,EAAI,KAAMA,EAClBorD,EAAMiD,EAAU,CAAC,IAAMruD,IACvB8B,KAAKs6D,kBAAkBp8D,GAAK8B,KAAKg5D,YAC7B1P,EACA,IACF6Q,oBACFn6D,KAAKq6D,iBAAiBn8D,GAAK8B,KAAKi5D,OAAO3P,EAAK,IAAI6Q,oBAIxD,OAAI1N,EACe,QAAXtmC,GAEe,KADf8zC,EAAKztD,GAAQvN,KAAKe,KAAKs6D,kBAAmBJ,IACvBD,EAAK,MAGT,KADfA,EAAKztD,GAAQvN,KAAKe,KAAKq6D,iBAAkBH,IACtBD,EAAK,KAGb,QAAX9zC,GAEY,KADZ8zC,EAAKztD,GAAQvN,KAAKe,KAAKs6D,kBAAmBJ,MAK3B,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKq6D,iBAAkBH,IAF9BD,EAGa,MAGZ,KADZA,EAAKztD,GAAQvN,KAAKe,KAAKq6D,iBAAkBH,MAK1B,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKs6D,kBAAmBJ,IAF/BD,EAGa,IAGpC,CAEA,SAASM,GAAkBP,EAAW7zC,EAAQsmC,GAC1C,IAAIvuD,EAAGorD,EAAKgO,EAEZ,GAAIt3D,KAAKw6D,kBACL,OAAOT,GAAkB96D,KAAKe,KAAMg6D,EAAW7zC,EAAQsmC,GAY3D,IATKzsD,KAAKo6D,eACNp6D,KAAKo6D,aAAe,GACpBp6D,KAAKq6D,iBAAmB,GACxBr6D,KAAKs6D,kBAAoB,IAMxBp8D,EAAI,EAAGA,EAAI,GAAIA,IAAK,CAmBrB,GAjBAorD,EAAMiD,EAAU,CAAC,IAAMruD,IACnBuuD,IAAWzsD,KAAKq6D,iBAAiBn8D,KACjC8B,KAAKq6D,iBAAiBn8D,GAAK,IAAI8xD,OAC3B,IAAMhwD,KAAKi5D,OAAO3P,EAAK,IAAI1tB,QAAQ,IAAK,IAAM,IAC9C,KAEJ57B,KAAKs6D,kBAAkBp8D,GAAK,IAAI8xD,OAC5B,IAAMhwD,KAAKg5D,YAAY1P,EAAK,IAAI1tB,QAAQ,IAAK,IAAM,IACnD,MAGH6wB,GAAWzsD,KAAKo6D,aAAal8D,KAC9Bo5D,EACI,IAAMt3D,KAAKi5D,OAAO3P,EAAK,IAAM,KAAOtpD,KAAKg5D,YAAY1P,EAAK,IAC9DtpD,KAAKo6D,aAAal8D,GAAK,IAAI8xD,OAAOsH,EAAM17B,QAAQ,IAAK,IAAK,MAI1D6wB,GACW,SAAXtmC,GACAnmB,KAAKq6D,iBAAiBn8D,GAAGgnC,KAAK80B,GAE9B,OAAO97D,EACJ,GACHuuD,GACW,QAAXtmC,GACAnmB,KAAKs6D,kBAAkBp8D,GAAGgnC,KAAK80B,GAE/B,OAAO97D,EACJ,IAAKuuD,GAAUzsD,KAAKo6D,aAAal8D,GAAGgnC,KAAK80B,GAC5C,OAAO97D,CAEf,CACJ,CAIA,SAASu8D,GAASnR,EAAKxoD,GACnB,IAAI45D,EAEJ,IAAKpR,EAAIuE,UAEL,OAAOvE,EAGX,GAAqB,kBAAVxoD,EACP,GAAI,QAAQokC,KAAKpkC,GACbA,EAAQw0D,GAAMx0D,QAId,IAAKkrD,EAFLlrD,EAAQwoD,EAAIwI,aAAasH,YAAYt4D,IAGjC,OAAOwoD,EAOnB,OAFAoR,EAAah2D,KAAK0S,IAAIkyC,EAAIuM,OAAQC,GAAYxM,EAAI8L,OAAQt0D,IAC1DwoD,EAAIhN,GAAG,OAASgN,EAAIyB,OAAS,MAAQ,IAAM,SAASjqD,EAAO45D,GACpDpR,CACX,CAEA,SAASqR,GAAY75D,GACjB,OAAa,MAATA,GACA25D,GAASz6D,KAAMc,GACfwqD,EAAMT,aAAa7qD,MAAM,GAClBA,MAEAuM,GAAIvM,KAAM,QAEzB,CAEA,SAAS46D,KACL,OAAO9E,GAAY91D,KAAKo1D,OAAQp1D,KAAK41D,QACzC,CAEA,SAASsD,GAAiB1B,GACtB,OAAIx3D,KAAKw6D,mBACA9O,EAAW1rD,KAAM,iBAClB66D,GAAmB57D,KAAKe,MAExBw3D,EACOx3D,KAAK86D,wBAEL96D,KAAK+6D,oBAGXrP,EAAW1rD,KAAM,uBAClBA,KAAK+6D,kBAAoBvB,IAEtBx5D,KAAK86D,yBAA2BtD,EACjCx3D,KAAK86D,wBACL96D,KAAK+6D,kBAEnB,CAEA,SAAS5B,GAAY3B,GACjB,OAAIx3D,KAAKw6D,mBACA9O,EAAW1rD,KAAM,iBAClB66D,GAAmB57D,KAAKe,MAExBw3D,EACOx3D,KAAKg7D,mBAELh7D,KAAKi7D,eAGXvP,EAAW1rD,KAAM,kBAClBA,KAAKi7D,aAAexB,IAEjBz5D,KAAKg7D,oBAAsBxD,EAC5Bx3D,KAAKg7D,mBACLh7D,KAAKi7D,aAEnB,CAEA,SAASJ,KACL,SAASK,EAAUvuD,EAAGnN,GAClB,OAAOA,EAAEpB,OAASuO,EAAEvO,MACxB,CAEA,IAGIF,EACAorD,EAJA6R,EAAc,GACdC,EAAa,GACbC,EAAc,GAGlB,IAAKn9D,EAAI,EAAGA,EAAI,GAAIA,IAEhBorD,EAAMiD,EAAU,CAAC,IAAMruD,IACvBi9D,EAAY58D,KAAKyB,KAAKg5D,YAAY1P,EAAK,KACvC8R,EAAW78D,KAAKyB,KAAKi5D,OAAO3P,EAAK,KACjC+R,EAAY98D,KAAKyB,KAAKi5D,OAAO3P,EAAK,KAClC+R,EAAY98D,KAAKyB,KAAKg5D,YAAY1P,EAAK,KAO3C,IAHA6R,EAAYtT,KAAKqT,GACjBE,EAAWvT,KAAKqT,GAChBG,EAAYxT,KAAKqT,GACZh9D,EAAI,EAAGA,EAAI,GAAIA,IAChBi9D,EAAYj9D,GAAKy5D,GAAYwD,EAAYj9D,IACzCk9D,EAAWl9D,GAAKy5D,GAAYyD,EAAWl9D,IAE3C,IAAKA,EAAI,EAAGA,EAAI,GAAIA,IAChBm9D,EAAYn9D,GAAKy5D,GAAY0D,EAAYn9D,IAG7C8B,KAAKi7D,aAAe,IAAIjL,OAAO,KAAOqL,EAAYn8D,KAAK,KAAO,IAAK,KACnEc,KAAK+6D,kBAAoB/6D,KAAKi7D,aAC9Bj7D,KAAKg7D,mBAAqB,IAAIhL,OAC1B,KAAOoL,EAAWl8D,KAAK,KAAO,IAC9B,KAEJc,KAAK86D,wBAA0B,IAAI9K,OAC/B,KAAOmL,EAAYj8D,KAAK,KAAO,IAC/B,IAER,CA+CA,SAASo8D,GAAWlG,GAChB,OAAOD,GAAWC,GAAQ,IAAM,GACpC,CA7CA1D,EAAe,IAAK,EAAG,GAAG,WACtB,IAAI7vD,EAAI7B,KAAKo1D,OACb,OAAOvzD,GAAK,KAAOovD,EAASpvD,EAAG,GAAK,IAAMA,CAC9C,IAEA6vD,EAAe,EAAG,CAAC,KAAM,GAAI,GAAG,WAC5B,OAAO1xD,KAAKo1D,OAAS,GACzB,IAEA1D,EAAe,EAAG,CAAC,OAAQ,GAAI,EAAG,QAClCA,EAAe,EAAG,CAAC,QAAS,GAAI,EAAG,QACnCA,EAAe,EAAG,CAAC,SAAU,GAAG,GAAO,EAAG,QAI1C2C,GAAa,OAAQ,KAIrBU,GAAgB,OAAQ,GAIxBsC,GAAc,IAAKL,IACnBK,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,OAAQR,GAAWN,IACjCc,GAAc,QAASP,GAAWN,IAClCa,GAAc,SAAUP,GAAWN,IAEnCuB,GAAc,CAAC,QAAS,UAAWK,IACnCL,GAAc,QAAQ,SAAUz6B,EAAOmnB,GACnCA,EAAM2T,IACe,IAAjB96B,EAAMl/B,OAAektD,EAAMiQ,kBAAkBj+B,GAASg4B,GAAMh4B,EACpE,IACAy6B,GAAc,MAAM,SAAUz6B,EAAOmnB,GACjCA,EAAM2T,IAAQ9M,EAAMiQ,kBAAkBj+B,EAC1C,IACAy6B,GAAc,KAAK,SAAUz6B,EAAOmnB,GAChCA,EAAM2T,IAAQnlD,SAASqqB,EAAO,GAClC,IAUAguB,EAAMiQ,kBAAoB,SAAUj+B,GAChC,OAAOg4B,GAAMh4B,IAAUg4B,GAAMh4B,GAAS,GAAK,KAAO,IACtD,EAIA,IAAIk+B,GAAa9F,GAAW,YAAY,GAExC,SAAS+F,KACL,OAAOtG,GAAWn1D,KAAKo1D,OAC3B,CAEA,SAASsG,GAAW75D,EAAGk6B,EAAGx8B,EAAGkE,EAAGowD,EAAGvzD,EAAGq7D,GAGlC,IAAI9F,EAYJ,OAVIh0D,EAAI,KAAOA,GAAK,GAEhBg0D,EAAO,IAAI/U,KAAKj/C,EAAI,IAAKk6B,EAAGx8B,EAAGkE,EAAGowD,EAAGvzD,EAAGq7D,GACpClG,SAASI,EAAKrO,gBACdqO,EAAK+F,YAAY/5D,IAGrBg0D,EAAO,IAAI/U,KAAKj/C,EAAGk6B,EAAGx8B,EAAGkE,EAAGowD,EAAGvzD,EAAGq7D,GAG/B9F,CACX,CAEA,SAASgG,GAAch6D,GACnB,IAAIg0D,EAAMr8C,EAcV,OAZI3X,EAAI,KAAOA,GAAK,IAChB2X,EAAOhb,MAAMM,UAAUkE,MAAM/D,KAAKd,YAE7B,GAAK0D,EAAI,IACdg0D,EAAO,IAAI/U,KAAKA,KAAKgb,IAAIn9D,MAAM,KAAM6a,IACjCi8C,SAASI,EAAKkG,mBACdlG,EAAKmG,eAAen6D,IAGxBg0D,EAAO,IAAI/U,KAAKA,KAAKgb,IAAIn9D,MAAM,KAAMR,YAGlC03D,CACX,CAGA,SAASoG,GAAgB7G,EAAM8G,EAAKC,GAChC,IACIC,EAAM,EAAIF,EAAMC,EAIpB,QAFa,EAAIN,GAAczG,EAAM,EAAGgH,GAAKC,YAAcH,GAAO,EAElDE,EAAM,CAC1B,CAGA,SAASE,GAAmBlH,EAAMmH,EAAMC,EAASN,EAAKC,GAClD,IAGIM,EACAC,EAFAC,EAAY,EAAI,GAAKJ,EAAO,IAFZ,EAAIC,EAAUN,GAAO,EACxBD,GAAgB7G,EAAM8G,EAAKC,GAgB5C,OAXIQ,GAAa,EAEbD,EAAepB,GADfmB,EAAUrH,EAAO,GACoBuH,EAC9BA,EAAYrB,GAAWlG,IAC9BqH,EAAUrH,EAAO,EACjBsH,EAAeC,EAAYrB,GAAWlG,KAEtCqH,EAAUrH,EACVsH,EAAeC,GAGZ,CACHvH,KAAMqH,EACNE,UAAWD,EAEnB,CAEA,SAASE,GAAWtT,EAAK4S,EAAKC,GAC1B,IAEIU,EACAJ,EAHAK,EAAab,GAAgB3S,EAAI8L,OAAQ8G,EAAKC,GAC9CI,EAAO73D,KAAKi+B,OAAO2mB,EAAIqT,YAAcG,EAAa,GAAK,GAAK,EAehE,OAXIP,EAAO,EAEPM,EAAUN,EAAOQ,GADjBN,EAAUnT,EAAI8L,OAAS,EACe8G,EAAKC,GACpCI,EAAOQ,GAAYzT,EAAI8L,OAAQ8G,EAAKC,IAC3CU,EAAUN,EAAOQ,GAAYzT,EAAI8L,OAAQ8G,EAAKC,GAC9CM,EAAUnT,EAAI8L,OAAS,IAEvBqH,EAAUnT,EAAI8L,OACdyH,EAAUN,GAGP,CACHA,KAAMM,EACNzH,KAAMqH,EAEd,CAEA,SAASM,GAAY3H,EAAM8G,EAAKC,GAC5B,IAAIW,EAAab,GAAgB7G,EAAM8G,EAAKC,GACxCa,EAAiBf,GAAgB7G,EAAO,EAAG8G,EAAKC,GACpD,OAAQb,GAAWlG,GAAQ0H,EAAaE,GAAkB,CAC9D,CAmCA,SAASC,GAAW3T,GAChB,OAAOsT,GAAWtT,EAAKtpD,KAAKk9D,MAAMhB,IAAKl8D,KAAKk9D,MAAMf,KAAKI,IAC3D,CAjCA7K,EAAe,IAAK,CAAC,KAAM,GAAI,KAAM,QACrCA,EAAe,IAAK,CAAC,KAAM,GAAI,KAAM,WAIrC2C,GAAa,OAAQ,KACrBA,GAAa,UAAW,KAIxBU,GAAgB,OAAQ,GACxBA,GAAgB,UAAW,GAI3BsC,GAAc,IAAKZ,IACnBY,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,IAAKZ,IACnBY,GAAc,KAAMZ,GAAWJ,IAE/B4B,GACI,CAAC,IAAK,KAAM,IAAK,OACjB,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GAC3BqnD,EAAKrnD,EAAMs5B,OAAO,EAAG,IAAM8mB,GAAMh4B,EACrC,IAWJ,IAAI6/B,GAAoB,CACpBjB,IAAK,EACLC,IAAK,GAGT,SAASiB,KACL,OAAOp9D,KAAKk9D,MAAMhB,GACtB,CAEA,SAASmB,KACL,OAAOr9D,KAAKk9D,MAAMf,GACtB,CAIA,SAASmB,GAAWhgC,GAChB,IAAIi/B,EAAOv8D,KAAK8xD,aAAayK,KAAKv8D,MAClC,OAAgB,MAATs9B,EAAgBi/B,EAAOv8D,KAAKulC,IAAqB,GAAhBjI,EAAQi/B,GAAW,IAC/D,CAEA,SAASgB,GAAcjgC,GACnB,IAAIi/B,EAAOK,GAAW58D,KAAM,EAAG,GAAGu8D,KAClC,OAAgB,MAATj/B,EAAgBi/B,EAAOv8D,KAAKulC,IAAqB,GAAhBjI,EAAQi/B,GAAW,IAC/D,CA+DA,SAASiB,GAAalgC,EAAOkvB,GACzB,MAAqB,kBAAVlvB,EACAA,EAGN2wB,MAAM3wB,GAKU,kBADrBA,EAAQkvB,EAAOiR,cAAcngC,IAElBA,EAGJ,KARIrqB,SAASqqB,EAAO,GAS/B,CAEA,SAASogC,GAAgBpgC,EAAOkvB,GAC5B,MAAqB,kBAAVlvB,EACAkvB,EAAOiR,cAAcngC,GAAS,GAAK,EAEvC2wB,MAAM3wB,GAAS,KAAOA,CACjC,CAGA,SAASqgC,GAAcC,EAAIr9D,GACvB,OAAOq9D,EAAG56D,MAAMzC,EAAG,GAAG0C,OAAO26D,EAAG56D,MAAM,EAAGzC,GAC7C,CAtFAmxD,EAAe,IAAK,EAAG,KAAM,OAE7BA,EAAe,KAAM,EAAG,GAAG,SAAUvrC,GACjC,OAAOnmB,KAAK8xD,aAAa+L,YAAY79D,KAAMmmB,EAC/C,IAEAurC,EAAe,MAAO,EAAG,GAAG,SAAUvrC,GAClC,OAAOnmB,KAAK8xD,aAAagM,cAAc99D,KAAMmmB,EACjD,IAEAurC,EAAe,OAAQ,EAAG,GAAG,SAAUvrC,GACnC,OAAOnmB,KAAK8xD,aAAaiM,SAAS/9D,KAAMmmB,EAC5C,IAEAurC,EAAe,IAAK,EAAG,EAAG,WAC1BA,EAAe,IAAK,EAAG,EAAG,cAI1B2C,GAAa,MAAO,KACpBA,GAAa,UAAW,KACxBA,GAAa,aAAc,KAG3BU,GAAgB,MAAO,IACvBA,GAAgB,UAAW,IAC3BA,GAAgB,aAAc,IAI9BsC,GAAc,IAAKZ,IACnBY,GAAc,IAAKZ,IACnBY,GAAc,IAAKZ,IACnBY,GAAc,MAAM,SAAUG,EAAUhL,GACpC,OAAOA,EAAOwR,iBAAiBxG,EACnC,IACAH,GAAc,OAAO,SAAUG,EAAUhL,GACrC,OAAOA,EAAOyR,mBAAmBzG,EACrC,IACAH,GAAc,QAAQ,SAAUG,EAAUhL,GACtC,OAAOA,EAAO0R,cAAc1G,EAChC,IAEAS,GAAkB,CAAC,KAAM,MAAO,SAAS,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GACpE,IAAIsnD,EAAUtN,EAAOF,QAAQyO,cAAcngC,EAAOpoB,EAAOg6C,EAAOf,SAEjD,MAAXqO,EACAD,EAAKh9D,EAAIi9D,EAET7O,EAAgBuB,GAAQhB,eAAiB5wB,CAEjD,IAEA26B,GAAkB,CAAC,IAAK,IAAK,MAAM,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GAC9DqnD,EAAKrnD,GAASogD,GAAMh4B,EACxB,IAiCA,IAAI6gC,GACI,2DAA2Dra,MAAM,KACrEsa,GAA6B,8BAA8Bta,MAAM,KACjEua,GAA2B,uBAAuBva,MAAM,KACxDwa,GAAuBlH,GACvBmH,GAA4BnH,GAC5BoH,GAA0BpH,GAE9B,SAASqH,GAAe1iC,EAAG5V,GACvB,IAAI43C,EAAWt/D,EAAQuB,KAAK0+D,WACtB1+D,KAAK0+D,UACL1+D,KAAK0+D,UACD3iC,IAAW,IAANA,GAAc/7B,KAAK0+D,UAAU9E,SAAS10B,KAAK/e,GAC1C,SACA,cAEhB,OAAa,IAAN4V,EACD4hC,GAAcI,EAAU/9D,KAAKk9D,MAAMhB,KACnCngC,EACAgiC,EAAShiC,EAAE4iC,OACXZ,CACV,CAEA,SAASa,GAAoB7iC,GACzB,OAAa,IAANA,EACD4hC,GAAc39D,KAAK6+D,eAAgB7+D,KAAKk9D,MAAMhB,KAC9CngC,EACA/7B,KAAK6+D,eAAe9iC,EAAE4iC,OACtB3+D,KAAK6+D,cACf,CAEA,SAASC,GAAkB/iC,GACvB,OAAa,IAANA,EACD4hC,GAAc39D,KAAK++D,aAAc/+D,KAAKk9D,MAAMhB,KAC5CngC,EACA/7B,KAAK++D,aAAahjC,EAAE4iC,OACpB3+D,KAAK++D,YACf,CAEA,SAASC,GAAoBC,EAAa94C,EAAQsmC,GAC9C,IAAIvuD,EACA+7D,EACA3Q,EACA4Q,EAAM+E,EAAY9E,oBACtB,IAAKn6D,KAAKk/D,eAKN,IAJAl/D,KAAKk/D,eAAiB,GACtBl/D,KAAKm/D,oBAAsB,GAC3Bn/D,KAAKo/D,kBAAoB,GAEpBlhE,EAAI,EAAGA,EAAI,IAAKA,EACjBorD,EAAMiD,EAAU,CAAC,IAAM,IAAIoS,IAAIzgE,GAC/B8B,KAAKo/D,kBAAkBlhE,GAAK8B,KAAK69D,YAC7BvU,EACA,IACF6Q,oBACFn6D,KAAKm/D,oBAAoBjhE,GAAK8B,KAAK89D,cAC/BxU,EACA,IACF6Q,oBACFn6D,KAAKk/D,eAAehhE,GAAK8B,KAAK+9D,SAASzU,EAAK,IAAI6Q,oBAIxD,OAAI1N,EACe,SAAXtmC,GAEe,KADf8zC,EAAKztD,GAAQvN,KAAKe,KAAKk/D,eAAgBhF,IACpBD,EAAK,KACN,QAAX9zC,GAEQ,KADf8zC,EAAKztD,GAAQvN,KAAKe,KAAKm/D,oBAAqBjF,IACzBD,EAAK,MAGT,KADfA,EAAKztD,GAAQvN,KAAKe,KAAKo/D,kBAAmBlF,IACvBD,EAAK,KAGb,SAAX9zC,GAEY,KADZ8zC,EAAKztD,GAAQvN,KAAKe,KAAKk/D,eAAgBhF,MAK3B,KADZD,EAAKztD,GAAQvN,KAAKe,KAAKm/D,oBAAqBjF,MAK7B,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKo/D,kBAAmBlF,IAN/BD,EAOa,KACN,QAAX9zC,GAEK,KADZ8zC,EAAKztD,GAAQvN,KAAKe,KAAKm/D,oBAAqBjF,MAKhC,KADZD,EAAKztD,GAAQvN,KAAKe,KAAKk/D,eAAgBhF,MAKxB,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKo/D,kBAAmBlF,IAN/BD,EAOa,MAGZ,KADZA,EAAKztD,GAAQvN,KAAKe,KAAKo/D,kBAAmBlF,MAK9B,KADZD,EAAKztD,GAAQvN,KAAKe,KAAKk/D,eAAgBhF,MAKxB,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKm/D,oBAAqBjF,IANjCD,EAOa,IAGpC,CAEA,SAASoF,GAAoBJ,EAAa94C,EAAQsmC,GAC9C,IAAIvuD,EAAGorD,EAAKgO,EAEZ,GAAIt3D,KAAKs/D,oBACL,OAAON,GAAoB//D,KAAKe,KAAMi/D,EAAa94C,EAAQsmC,GAU/D,IAPKzsD,KAAKk/D,iBACNl/D,KAAKk/D,eAAiB,GACtBl/D,KAAKo/D,kBAAoB,GACzBp/D,KAAKm/D,oBAAsB,GAC3Bn/D,KAAKu/D,mBAAqB,IAGzBrhE,EAAI,EAAGA,EAAI,EAAGA,IAAK,CA6BpB,GA1BAorD,EAAMiD,EAAU,CAAC,IAAM,IAAIoS,IAAIzgE,GAC3BuuD,IAAWzsD,KAAKu/D,mBAAmBrhE,KACnC8B,KAAKu/D,mBAAmBrhE,GAAK,IAAI8xD,OAC7B,IAAMhwD,KAAK+9D,SAASzU,EAAK,IAAI1tB,QAAQ,IAAK,QAAU,IACpD,KAEJ57B,KAAKm/D,oBAAoBjhE,GAAK,IAAI8xD,OAC9B,IAAMhwD,KAAK89D,cAAcxU,EAAK,IAAI1tB,QAAQ,IAAK,QAAU,IACzD,KAEJ57B,KAAKo/D,kBAAkBlhE,GAAK,IAAI8xD,OAC5B,IAAMhwD,KAAK69D,YAAYvU,EAAK,IAAI1tB,QAAQ,IAAK,QAAU,IACvD,MAGH57B,KAAKk/D,eAAehhE,KACrBo5D,EACI,IACAt3D,KAAK+9D,SAASzU,EAAK,IACnB,KACAtpD,KAAK89D,cAAcxU,EAAK,IACxB,KACAtpD,KAAK69D,YAAYvU,EAAK,IAC1BtpD,KAAKk/D,eAAehhE,GAAK,IAAI8xD,OAAOsH,EAAM17B,QAAQ,IAAK,IAAK,MAI5D6wB,GACW,SAAXtmC,GACAnmB,KAAKu/D,mBAAmBrhE,GAAGgnC,KAAK+5B,GAEhC,OAAO/gE,EACJ,GACHuuD,GACW,QAAXtmC,GACAnmB,KAAKm/D,oBAAoBjhE,GAAGgnC,KAAK+5B,GAEjC,OAAO/gE,EACJ,GACHuuD,GACW,OAAXtmC,GACAnmB,KAAKo/D,kBAAkBlhE,GAAGgnC,KAAK+5B,GAE/B,OAAO/gE,EACJ,IAAKuuD,GAAUzsD,KAAKk/D,eAAehhE,GAAGgnC,KAAK+5B,GAC9C,OAAO/gE,CAEf,CACJ,CAIA,SAASshE,GAAgBliC,GACrB,IAAKt9B,KAAK6tD,UACN,OAAgB,MAATvwB,EAAgBt9B,KAAOuuD,IAElC,IAAIoQ,EAAM3+D,KAAK+qD,OAAS/qD,KAAKs8C,GAAG+f,YAAcr8D,KAAKs8C,GAAGmjB,SACtD,OAAa,MAATniC,GACAA,EAAQkgC,GAAalgC,EAAOt9B,KAAK8xD,cAC1B9xD,KAAKulC,IAAIjI,EAAQqhC,EAAK,MAEtBA,CAEf,CAEA,SAASe,GAAsBpiC,GAC3B,IAAKt9B,KAAK6tD,UACN,OAAgB,MAATvwB,EAAgBt9B,KAAOuuD,IAElC,IAAIiO,GAAWx8D,KAAK2+D,MAAQ,EAAI3+D,KAAK8xD,aAAaoL,MAAMhB,KAAO,EAC/D,OAAgB,MAAT5+B,EAAgBk/B,EAAUx8D,KAAKulC,IAAIjI,EAAQk/B,EAAS,IAC/D,CAEA,SAASmD,GAAmBriC,GACxB,IAAKt9B,KAAK6tD,UACN,OAAgB,MAATvwB,EAAgBt9B,KAAOuuD,IAOlC,GAAa,MAATjxB,EAAe,CACf,IAAIk/B,EAAUkB,GAAgBpgC,EAAOt9B,KAAK8xD,cAC1C,OAAO9xD,KAAK2+D,IAAI3+D,KAAK2+D,MAAQ,EAAInC,EAAUA,EAAU,EACzD,CACI,OAAOx8D,KAAK2+D,OAAS,CAE7B,CAEA,SAAST,GAAc1G,GACnB,OAAIx3D,KAAKs/D,qBACA5T,EAAW1rD,KAAM,mBAClB4/D,GAAqB3gE,KAAKe,MAE1Bw3D,EACOx3D,KAAK6/D,qBAEL7/D,KAAK8/D,iBAGXpU,EAAW1rD,KAAM,oBAClBA,KAAK8/D,eAAiBxB,IAEnBt+D,KAAK6/D,sBAAwBrI,EAC9Bx3D,KAAK6/D,qBACL7/D,KAAK8/D,eAEnB,CAEA,SAAS7B,GAAmBzG,GACxB,OAAIx3D,KAAKs/D,qBACA5T,EAAW1rD,KAAM,mBAClB4/D,GAAqB3gE,KAAKe,MAE1Bw3D,EACOx3D,KAAK+/D,0BAEL//D,KAAKggE,sBAGXtU,EAAW1rD,KAAM,yBAClBA,KAAKggE,oBAAsBzB,IAExBv+D,KAAK+/D,2BAA6BvI,EACnCx3D,KAAK+/D,0BACL//D,KAAKggE,oBAEnB,CAEA,SAAShC,GAAiBxG,GACtB,OAAIx3D,KAAKs/D,qBACA5T,EAAW1rD,KAAM,mBAClB4/D,GAAqB3gE,KAAKe,MAE1Bw3D,EACOx3D,KAAKigE,wBAELjgE,KAAKkgE,oBAGXxU,EAAW1rD,KAAM,uBAClBA,KAAKkgE,kBAAoB1B,IAEtBx+D,KAAKigE,yBAA2BzI,EACjCx3D,KAAKigE,wBACLjgE,KAAKkgE,kBAEnB,CAEA,SAASN,KACL,SAAS1E,EAAUvuD,EAAGnN,GAClB,OAAOA,EAAEpB,OAASuO,EAAEvO,MACxB,CAEA,IAIIF,EACAorD,EACA6W,EACAC,EACAC,EARAC,EAAY,GACZnF,EAAc,GACdC,EAAa,GACbC,EAAc,GAMlB,IAAKn9D,EAAI,EAAGA,EAAI,EAAGA,IAEforD,EAAMiD,EAAU,CAAC,IAAM,IAAIoS,IAAIzgE,GAC/BiiE,EAAOxI,GAAY33D,KAAK69D,YAAYvU,EAAK,KACzC8W,EAASzI,GAAY33D,KAAK89D,cAAcxU,EAAK,KAC7C+W,EAAQ1I,GAAY33D,KAAK+9D,SAASzU,EAAK,KACvCgX,EAAU/hE,KAAK4hE,GACfhF,EAAY58D,KAAK6hE,GACjBhF,EAAW78D,KAAK8hE,GAChBhF,EAAY98D,KAAK4hE,GACjB9E,EAAY98D,KAAK6hE,GACjB/E,EAAY98D,KAAK8hE,GAIrBC,EAAUzY,KAAKqT,GACfC,EAAYtT,KAAKqT,GACjBE,EAAWvT,KAAKqT,GAChBG,EAAYxT,KAAKqT,GAEjBl7D,KAAK8/D,eAAiB,IAAI9P,OAAO,KAAOqL,EAAYn8D,KAAK,KAAO,IAAK,KACrEc,KAAKggE,oBAAsBhgE,KAAK8/D,eAChC9/D,KAAKkgE,kBAAoBlgE,KAAK8/D,eAE9B9/D,KAAK6/D,qBAAuB,IAAI7P,OAC5B,KAAOoL,EAAWl8D,KAAK,KAAO,IAC9B,KAEJc,KAAK+/D,0BAA4B,IAAI/P,OACjC,KAAOmL,EAAYj8D,KAAK,KAAO,IAC/B,KAEJc,KAAKigE,wBAA0B,IAAIjQ,OAC/B,KAAOsQ,EAAUphE,KAAK,KAAO,IAC7B,IAER,CAIA,SAASqhE,KACL,OAAOvgE,KAAKwgE,QAAU,IAAM,EAChC,CAEA,SAASC,KACL,OAAOzgE,KAAKwgE,SAAW,EAC3B,CAgCA,SAAShT,GAASt4C,EAAOwrD,GACrBhP,EAAex8C,EAAO,EAAG,GAAG,WACxB,OAAOlV,KAAK8xD,aAAatE,SACrBxtD,KAAKwgE,QACLxgE,KAAK2gE,UACLD,EAER,GACJ,CAcA,SAASE,GAAcpJ,EAAUhL,GAC7B,OAAOA,EAAOqU,cAClB,CA0DA,SAASC,GAAWxjC,GAGhB,MAAgD,OAAxCA,EAAQ,IAAIzmB,cAAckqD,OAAO,EAC7C,CApHArP,EAAe,IAAK,CAAC,KAAM,GAAI,EAAG,QAClCA,EAAe,IAAK,CAAC,KAAM,GAAI,EAAG6O,IAClC7O,EAAe,IAAK,CAAC,KAAM,GAAI,EAAG+O,IAElC/O,EAAe,MAAO,EAAG,GAAG,WACxB,MAAO,GAAK6O,GAAQ5hE,MAAMqB,MAAQixD,EAASjxD,KAAK2gE,UAAW,EAC/D,IAEAjP,EAAe,QAAS,EAAG,GAAG,WAC1B,MACI,GACA6O,GAAQ5hE,MAAMqB,MACdixD,EAASjxD,KAAK2gE,UAAW,GACzB1P,EAASjxD,KAAKghE,UAAW,EAEjC,IAEAtP,EAAe,MAAO,EAAG,GAAG,WACxB,MAAO,GAAK1xD,KAAKwgE,QAAUvP,EAASjxD,KAAK2gE,UAAW,EACxD,IAEAjP,EAAe,QAAS,EAAG,GAAG,WAC1B,MACI,GACA1xD,KAAKwgE,QACLvP,EAASjxD,KAAK2gE,UAAW,GACzB1P,EAASjxD,KAAKghE,UAAW,EAEjC,IAYAxT,GAAS,KAAK,GACdA,GAAS,KAAK,GAId6G,GAAa,OAAQ,KAGrBU,GAAgB,OAAQ,IAQxBsC,GAAc,IAAKuJ,IACnBvJ,GAAc,IAAKuJ,IACnBvJ,GAAc,IAAKZ,IACnBY,GAAc,IAAKZ,IACnBY,GAAc,IAAKZ,IACnBY,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,KAAMZ,GAAWJ,IAE/BgB,GAAc,MAAOX,IACrBW,GAAc,QAASV,IACvBU,GAAc,MAAOX,IACrBW,GAAc,QAASV,IAEvBoB,GAAc,CAAC,IAAK,MAAOQ,IAC3BR,GAAc,CAAC,IAAK,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GAC/C,IAAI+R,EAAS3L,GAAMh4B,GACnBmnB,EAAM8T,IAAmB,KAAX0I,EAAgB,EAAIA,CACtC,IACAlJ,GAAc,CAAC,IAAK,MAAM,SAAUz6B,EAAOmnB,EAAOyK,GAC9CA,EAAOgS,MAAQhS,EAAOF,QAAQmS,KAAK7jC,GACnC4xB,EAAOkS,UAAY9jC,CACvB,IACAy6B,GAAc,CAAC,IAAK,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GAC/CzK,EAAM8T,IAAQjD,GAAMh4B,GACpBqwB,EAAgBuB,GAAQd,SAAU,CACtC,IACA2J,GAAc,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GACzC,IAAImS,EAAM/jC,EAAMl/B,OAAS,EACzBqmD,EAAM8T,IAAQjD,GAAMh4B,EAAMkR,OAAO,EAAG6yB,IACpC5c,EAAM+T,IAAUlD,GAAMh4B,EAAMkR,OAAO6yB,IACnC1T,EAAgBuB,GAAQd,SAAU,CACtC,IACA2J,GAAc,SAAS,SAAUz6B,EAAOmnB,EAAOyK,GAC3C,IAAIoS,EAAOhkC,EAAMl/B,OAAS,EACtBmjE,EAAOjkC,EAAMl/B,OAAS,EAC1BqmD,EAAM8T,IAAQjD,GAAMh4B,EAAMkR,OAAO,EAAG8yB,IACpC7c,EAAM+T,IAAUlD,GAAMh4B,EAAMkR,OAAO8yB,EAAM,IACzC7c,EAAMgU,IAAUnD,GAAMh4B,EAAMkR,OAAO+yB,IACnC5T,EAAgBuB,GAAQd,SAAU,CACtC,IACA2J,GAAc,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GACzC,IAAImS,EAAM/jC,EAAMl/B,OAAS,EACzBqmD,EAAM8T,IAAQjD,GAAMh4B,EAAMkR,OAAO,EAAG6yB,IACpC5c,EAAM+T,IAAUlD,GAAMh4B,EAAMkR,OAAO6yB,GACvC,IACAtJ,GAAc,SAAS,SAAUz6B,EAAOmnB,EAAOyK,GAC3C,IAAIoS,EAAOhkC,EAAMl/B,OAAS,EACtBmjE,EAAOjkC,EAAMl/B,OAAS,EAC1BqmD,EAAM8T,IAAQjD,GAAMh4B,EAAMkR,OAAO,EAAG8yB,IACpC7c,EAAM+T,IAAUlD,GAAMh4B,EAAMkR,OAAO8yB,EAAM,IACzC7c,EAAMgU,IAAUnD,GAAMh4B,EAAMkR,OAAO+yB,GACvC,IAUA,IAAIC,GAA6B,gBAK7BC,GAAa/L,GAAW,SAAS,GAErC,SAASgM,GAAelB,EAAOG,EAASgB,GACpC,OAAInB,EAAQ,GACDmB,EAAU,KAAO,KAEjBA,EAAU,KAAO,IAEhC,CAEA,IAuBIC,GAvBAC,GAAa,CACb/Q,SAAUP,EACV8B,eAAgBE,EAChBJ,YAAaa,EACbpB,QAASsB,EACT4O,uBAAwB3O,EACxBa,aAAcX,EAEd4F,OAAQI,GACRL,YAAaM,GAEbiD,KAAMY,GAENY,SAAUI,GACVN,YAAaQ,GACbP,cAAeM,GAEf2D,cAAeP,IAIfQ,GAAU,CAAC,EACXC,GAAiB,CAAC,EAGtB,SAASC,GAAaC,EAAMC,GACxB,IAAIlkE,EACAmkE,EAAO39D,KAAK0S,IAAI+qD,EAAK/jE,OAAQgkE,EAAKhkE,QACtC,IAAKF,EAAI,EAAGA,EAAImkE,EAAMnkE,GAAK,EACvB,GAAIikE,EAAKjkE,KAAOkkE,EAAKlkE,GACjB,OAAOA,EAGf,OAAOmkE,CACX,CAEA,SAASC,GAAgBtjE,GACrB,OAAOA,EAAMA,EAAI6X,cAAc+kB,QAAQ,IAAK,KAAO58B,CACvD,CAKA,SAASujE,GAAa7e,GAOlB,IANA,IACIiD,EACAvlD,EACAorD,EACA1I,EAJA5lD,EAAI,EAMDA,EAAIwlD,EAAMtlD,QAAQ,CAKrB,IAHAuoD,GADA7C,EAAQwe,GAAgB5e,EAAMxlD,IAAI4lD,MAAM,MAC9B1lD,OAEVgD,GADAA,EAAOkhE,GAAgB5e,EAAMxlD,EAAI,KACnBkD,EAAK0iD,MAAM,KAAO,KACzB6C,EAAI,GAAG,CAEV,GADA6F,EAASgW,GAAW1e,EAAM9gD,MAAM,EAAG2jD,GAAGznD,KAAK,MAEvC,OAAOstD,EAEX,GACIprD,GACAA,EAAKhD,QAAUuoD,GACfub,GAAape,EAAO1iD,IAASulD,EAAI,EAGjC,MAEJA,GACJ,CACAzoD,GACJ,CACA,OAAO0jE,EACX,CAEA,SAASa,GAAiB1pD,GAEtB,OAAoC,MAA7BA,EAAK2iC,MAAM,cACtB,CAEA,SAAS8mB,GAAWzpD,GAChB,IAAI2pD,EAAY,KAGhB,QACsB10D,IAAlBg0D,GAAQjpD,IAER5Z,GACAA,EAAOC,SACPqjE,GAAiB1pD,GAEjB,IACI2pD,EAAYd,GAAae,MAEzBC,OAAAA,WAAAA,IAAAA,EAAAA,IAAAA,MAAAA,kCAAAA,MAAAA,EAAAA,KAAAA,mBAAAA,CAAAA,CAAAA,IACAC,GAAmBH,EAKvB,CAJE,MAAOrhE,GAGL2gE,GAAQjpD,GAAQ,IACpB,CAEJ,OAAOipD,GAAQjpD,EACnB,CAKA,SAAS8pD,GAAmB7jE,EAAKwZ,GAC7B,IAAIvQ,EAqBJ,OApBIjJ,KAEIiJ,EADA8jD,EAAYvzC,GACLsqD,GAAU9jE,GAEV+jE,GAAa/jE,EAAKwZ,IAKzBopD,GAAe35D,EAEQ,qBAAZg5C,SAA2BA,QAAQ3b,MAE1C2b,QAAQ3b,KACJ,UAAYtmC,EAAM,2CAM3B4iE,GAAae,KACxB,CAEA,SAASI,GAAahqD,EAAMm2C,GACxB,GAAe,OAAXA,EAAiB,CACjB,IAAI1C,EACA4D,EAAeyR,GAEnB,GADA3S,EAAOtJ,KAAO7sC,EACO,MAAjBipD,GAAQjpD,GACR22C,EACI,uBACA,2OAKJU,EAAe4R,GAAQjpD,GAAM+2C,aAC1B,GAA2B,MAAvBZ,EAAO8T,aACd,GAAoC,MAAhChB,GAAQ9S,EAAO8T,cACf5S,EAAe4R,GAAQ9S,EAAO8T,cAAclT,YACzC,CAEH,GAAc,OADdtD,EAASgW,GAAWtT,EAAO8T,eAWvB,OAPKf,GAAe/S,EAAO8T,gBACvBf,GAAe/S,EAAO8T,cAAgB,IAE1Cf,GAAe/S,EAAO8T,cAAczkE,KAAK,CACrCwa,KAAMA,EACNm2C,OAAQA,IAEL,KATPkB,EAAe5D,EAAOsD,OAW9B,CAeJ,OAbAkS,GAAQjpD,GAAQ,IAAIu3C,EAAOH,EAAaC,EAAclB,IAElD+S,GAAelpD,IACfkpD,GAAelpD,GAAM1M,SAAQ,SAAU9I,GACnCw/D,GAAax/D,EAAEwV,KAAMxV,EAAE2rD,OAC3B,IAMJ2T,GAAmB9pD,GAEZipD,GAAQjpD,EACnB,CAGI,cADOipD,GAAQjpD,GACR,IAEf,CAEA,SAASkqD,GAAalqD,EAAMm2C,GACxB,GAAc,MAAVA,EAAgB,CAChB,IAAI1C,EACA0W,EACA9S,EAAeyR,GAEE,MAAjBG,GAAQjpD,IAA+C,MAA9BipD,GAAQjpD,GAAMiqD,aAEvChB,GAAQjpD,GAAM82C,IAAIM,EAAa6R,GAAQjpD,GAAM+2C,QAASZ,KAIrC,OADjBgU,EAAYV,GAAWzpD,MAEnBq3C,EAAe8S,EAAUpT,SAE7BZ,EAASiB,EAAaC,EAAclB,GACnB,MAAbgU,IAIAhU,EAAOtJ,KAAO7sC,IAElByzC,EAAS,IAAI8D,EAAOpB,IACb8T,aAAehB,GAAQjpD,GAC9BipD,GAAQjpD,GAAQyzC,GAIpBqW,GAAmB9pD,EACvB,MAEyB,MAAjBipD,GAAQjpD,KAC0B,MAA9BipD,GAAQjpD,GAAMiqD,cACdhB,GAAQjpD,GAAQipD,GAAQjpD,GAAMiqD,aAC1BjqD,IAAS8pD,MACTA,GAAmB9pD,IAEC,MAAjBipD,GAAQjpD,WACRipD,GAAQjpD,IAI3B,OAAOipD,GAAQjpD,EACnB,CAGA,SAAS+pD,GAAU9jE,GACf,IAAIwtD,EAMJ,GAJIxtD,GAAOA,EAAIgwD,SAAWhwD,EAAIgwD,QAAQ2T,QAClC3jE,EAAMA,EAAIgwD,QAAQ2T,QAGjB3jE,EACD,OAAO4iE,GAGX,IAAKnjE,EAAQO,GAAM,CAGf,GADAwtD,EAASgW,GAAWxjE,GAEhB,OAAOwtD,EAEXxtD,EAAM,CAACA,EACX,CAEA,OAAOujE,GAAavjE,EACxB,CAEA,SAASmkE,KACL,OAAO51B,EAAKy0B,GAChB,CAEA,SAASoB,GAAcrnC,GACnB,IAAI3N,EACAzhB,EAAIovB,EAAE3U,GAuCV,OArCIza,IAAsC,IAAjCghD,EAAgB5xB,GAAG3N,WACxBA,EACIzhB,EAAE0rD,IAAS,GAAK1rD,EAAE0rD,IAAS,GACrBA,GACA1rD,EAAE2rD,IAAQ,GAAK3rD,EAAE2rD,IAAQxC,GAAYnpD,EAAEyrD,IAAOzrD,EAAE0rD,KAChDC,GACA3rD,EAAE4rD,IAAQ,GACV5rD,EAAE4rD,IAAQ,IACG,KAAZ5rD,EAAE4rD,MACgB,IAAd5rD,EAAE6rD,KACe,IAAd7rD,EAAE8rD,KACiB,IAAnB9rD,EAAE+rD,KACVH,GACA5rD,EAAE6rD,IAAU,GAAK7rD,EAAE6rD,IAAU,GAC7BA,GACA7rD,EAAE8rD,IAAU,GAAK9rD,EAAE8rD,IAAU,GAC7BA,GACA9rD,EAAE+rD,IAAe,GAAK/rD,EAAE+rD,IAAe,IACvCA,IACC,EAGP/K,EAAgB5xB,GAAGsnC,qBAClBj1C,EAAWgqC,IAAQhqC,EAAWkqC,MAE/BlqC,EAAWkqC,IAEX3K,EAAgB5xB,GAAGunC,iBAAgC,IAAdl1C,IACrCA,EAAWuqC,IAEXhL,EAAgB5xB,GAAGwnC,mBAAkC,IAAdn1C,IACvCA,EAAWwqC,IAGfjL,EAAgB5xB,GAAG3N,SAAWA,GAG3B2N,CACX,CAIA,IAAIynC,GACI,iJACJC,GACI,6IACJC,GAAU,wBACVC,GAAW,CACP,CAAC,eAAgB,uBACjB,CAAC,aAAc,mBACf,CAAC,eAAgB,kBACjB,CAAC,aAAc,eAAe,GAC9B,CAAC,WAAY,eACb,CAAC,UAAW,cAAc,GAC1B,CAAC,aAAc,cACf,CAAC,WAAY,SACb,CAAC,aAAc,eACf,CAAC,YAAa,eAAe,GAC7B,CAAC,UAAW,SACZ,CAAC,SAAU,SAAS,GACpB,CAAC,OAAQ,SAAS,IAGtBC,GAAW,CACP,CAAC,gBAAiB,uBAClB,CAAC,gBAAiB,sBAClB,CAAC,WAAY,kBACb,CAAC,QAAS,aACV,CAAC,cAAe,qBAChB,CAAC,cAAe,oBAChB,CAAC,SAAU,gBACX,CAAC,OAAQ,YACT,CAAC,KAAM,SAEXC,GAAkB,qBAElBpW,GACI,0LACJqW,GAAa,CACTC,GAAI,EACJC,IAAK,EACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,KAIb,SAASC,GAAcvV,GACnB,IAAIhxD,EACA6E,EAGA2hE,EACAC,EACAC,EACAC,EALA3iC,EAASgtB,EAAO1pD,GAChBk2C,EAAQ8nB,GAAiBsB,KAAK5iC,IAAWuhC,GAAcqB,KAAK5iC,GAK5D6iC,EAAcpB,GAASvlE,OACvB4mE,EAAcpB,GAASxlE,OAE3B,GAAIs9C,EAAO,CAEP,IADAiS,EAAgBuB,GAAQ7B,KAAM,EACzBnvD,EAAI,EAAG6E,EAAIgiE,EAAa7mE,EAAI6E,EAAG7E,IAChC,GAAIylE,GAASzlE,GAAG,GAAG4mE,KAAKppB,EAAM,IAAK,CAC/BipB,EAAahB,GAASzlE,GAAG,GACzBwmE,GAA+B,IAAnBf,GAASzlE,GAAG,GACxB,KACJ,CAEJ,GAAkB,MAAdymE,EAEA,YADAzV,EAAOpB,UAAW,GAGtB,GAAIpS,EAAM,GAAI,CACV,IAAKx9C,EAAI,EAAG6E,EAAIiiE,EAAa9mE,EAAI6E,EAAG7E,IAChC,GAAI0lE,GAAS1lE,GAAG,GAAG4mE,KAAKppB,EAAM,IAAK,CAE/BkpB,GAAclpB,EAAM,IAAM,KAAOkoB,GAAS1lE,GAAG,GAC7C,KACJ,CAEJ,GAAkB,MAAd0mE,EAEA,YADA1V,EAAOpB,UAAW,EAG1B,CACA,IAAK4W,GAA2B,MAAdE,EAEd,YADA1V,EAAOpB,UAAW,GAGtB,GAAIpS,EAAM,GAAI,CACV,IAAIgoB,GAAQoB,KAAKppB,EAAM,IAInB,YADAwT,EAAOpB,UAAW,GAFlB+W,EAAW,GAKnB,CACA3V,EAAO1S,GAAKmoB,GAAcC,GAAc,KAAOC,GAAY,IAC3DI,GAA0B/V,EAC9B,MACIA,EAAOpB,UAAW,CAE1B,CAEA,SAASoX,GACLC,EACAC,EACAC,EACAC,EACAC,EACAC,GAEA,IAAIjkE,EAAS,CACTkkE,GAAeN,GACf7L,GAAyB9sD,QAAQ44D,GACjCnyD,SAASoyD,EAAQ,IACjBpyD,SAASqyD,EAAS,IAClBryD,SAASsyD,EAAW,KAOxB,OAJIC,GACAjkE,EAAOhD,KAAK0U,SAASuyD,EAAW,KAG7BjkE,CACX,CAEA,SAASkkE,GAAeN,GACpB,IAAI/P,EAAOniD,SAASkyD,EAAS,IAC7B,OAAI/P,GAAQ,GACD,IAAOA,EACPA,GAAQ,IACR,KAAOA,EAEXA,CACX,CAEA,SAASsQ,GAAkBplE,GAEvB,OAAOA,EACFs7B,QAAQ,qBAAsB,KAC9BA,QAAQ,WAAY,KACpBA,QAAQ,SAAU,IAClBA,QAAQ,SAAU,GAC3B,CAEA,SAAS+pC,GAAaC,EAAYC,EAAa3W,GAC3C,OAAI0W,GAEsBxH,GAA2B5xD,QAAQo5D,KACrC,IAAI9kB,KAChB+kB,EAAY,GACZA,EAAY,GACZA,EAAY,IACdpG,WAEF9R,EAAgBuB,GAAQxB,iBAAkB,EAC1CwB,EAAOpB,UAAW,GACX,EAInB,CAEA,SAASgY,GAAgBC,EAAWC,EAAgBC,GAChD,GAAIF,EACA,OAAOjC,GAAWiC,GACf,GAAIC,EAEP,OAAO,EAEP,IAAIE,EAAKjzD,SAASgzD,EAAW,IACzBlqC,EAAImqC,EAAK,IAEb,OADSA,EAAKnqC,GAAK,IACR,GAAKA,CAExB,CAGA,SAASoqC,GAAkBjX,GACvB,IACIkX,EADA1qB,EAAQ+R,GAAQqX,KAAKY,GAAkBxW,EAAO1pD,KAElD,GAAIk2C,EAAO,CASP,GARA0qB,EAAclB,GACVxpB,EAAM,GACNA,EAAM,GACNA,EAAM,GACNA,EAAM,GACNA,EAAM,GACNA,EAAM,KAELiqB,GAAajqB,EAAM,GAAI0qB,EAAalX,GACrC,OAGJA,EAAO9nC,GAAKg/C,EACZlX,EAAOzG,KAAOqd,GAAgBpqB,EAAM,GAAIA,EAAM,GAAIA,EAAM,KAExDwT,EAAO5S,GAAKuf,GAAcl9D,MAAM,KAAMuwD,EAAO9nC,IAC7C8nC,EAAO5S,GAAG+pB,cAAcnX,EAAO5S,GAAGgqB,gBAAkBpX,EAAOzG,MAE3DkF,EAAgBuB,GAAQzB,SAAU,CACtC,MACIyB,EAAOpB,UAAW,CAE1B,CAGA,SAASyY,GAAiBrX,GACtB,IAAI0I,EAAUiM,GAAgBiB,KAAK5V,EAAO1pD,IAC1B,OAAZoyD,GAKJ6M,GAAcvV,IACU,IAApBA,EAAOpB,kBACAoB,EAAOpB,SAKlBqY,GAAkBjX,IACM,IAApBA,EAAOpB,kBACAoB,EAAOpB,SAKdoB,EAAOf,QACPe,EAAOpB,UAAW,EAGlBxC,EAAMkb,wBAAwBtX,MAtB9BA,EAAO5S,GAAK,IAAIwE,MAAM8W,EAAQ,GAwBtC,CAYA,SAAS6O,GAAS95D,EAAGnN,EAAGqT,GACpB,OAAS,MAALlG,EACOA,EAEF,MAALnN,EACOA,EAEJqT,CACX,CAEA,SAAS6zD,GAAiBxX,GAEtB,IAAIyX,EAAW,IAAI7lB,KAAKwK,EAAMvK,OAC9B,OAAImO,EAAO0X,QACA,CACHD,EAAS5K,iBACT4K,EAASE,cACTF,EAASG,cAGV,CAACH,EAASnf,cAAemf,EAASI,WAAYJ,EAASK,UAClE,CAMA,SAASC,GAAgB/X,GACrB,IAAIhxD,EACA23D,EAEAqR,EACAC,EACAC,EAHA9pC,EAAQ,GAKZ,IAAI4xB,EAAO5S,GAAX,CAgCA,IA5BA4qB,EAAcR,GAAiBxX,GAG3BA,EAAOgJ,IAAyB,MAAnBhJ,EAAO9nC,GAAGkxC,KAAqC,MAApBpJ,EAAO9nC,GAAGixC,KAClDgP,GAAsBnY,GAID,MAArBA,EAAOoY,aACPF,EAAYX,GAASvX,EAAO9nC,GAAGgxC,IAAO8O,EAAY9O,MAG9ClJ,EAAOoY,WAAahM,GAAW8L,IACT,IAAtBlY,EAAOoY,cAEP3Z,EAAgBuB,GAAQmU,oBAAqB,GAGjDxN,EAAOgG,GAAcuL,EAAW,EAAGlY,EAAOoY,YAC1CpY,EAAO9nC,GAAGixC,IAASxC,EAAKgR,cACxB3X,EAAO9nC,GAAGkxC,IAAQzC,EAAKiR,cAQtB5oE,EAAI,EAAGA,EAAI,GAAqB,MAAhBgxD,EAAO9nC,GAAGlpB,KAAcA,EACzCgxD,EAAO9nC,GAAGlpB,GAAKo/B,EAAMp/B,GAAKgpE,EAAYhpE,GAI1C,KAAOA,EAAI,EAAGA,IACVgxD,EAAO9nC,GAAGlpB,GAAKo/B,EAAMp/B,GACD,MAAhBgxD,EAAO9nC,GAAGlpB,GAAoB,IAANA,EAAU,EAAI,EAAKgxD,EAAO9nC,GAAGlpB,GAKrC,KAApBgxD,EAAO9nC,GAAGmxC,KACY,IAAtBrJ,EAAO9nC,GAAGoxC,KACY,IAAtBtJ,EAAO9nC,GAAGqxC,KACiB,IAA3BvJ,EAAO9nC,GAAGsxC,MAEVxJ,EAAOqY,UAAW,EAClBrY,EAAO9nC,GAAGmxC,IAAQ,GAGtBrJ,EAAO5S,IAAM4S,EAAO0X,QAAU/K,GAAgBH,IAAY/8D,MACtD,KACA2+B,GAEJ6pC,EAAkBjY,EAAO0X,QACnB1X,EAAO5S,GAAG+f,YACVnN,EAAO5S,GAAGmjB,SAIG,MAAfvQ,EAAOzG,MACPyG,EAAO5S,GAAG+pB,cAAcnX,EAAO5S,GAAGgqB,gBAAkBpX,EAAOzG,MAG3DyG,EAAOqY,WACPrY,EAAO9nC,GAAGmxC,IAAQ,IAKlBrJ,EAAOgJ,IACgB,qBAAhBhJ,EAAOgJ,GAAG34D,GACjB2vD,EAAOgJ,GAAG34D,IAAM4nE,IAEhBxZ,EAAgBuB,GAAQxB,iBAAkB,EA3E9C,CA6EJ,CAEA,SAAS2Z,GAAsBnY,GAC3B,IAAI1rD,EAAGgkE,EAAUjL,EAAMC,EAASN,EAAKC,EAAKsL,EAAMC,EAAiBC,EAGrD,OADZnkE,EAAI0rD,EAAOgJ,IACL0P,IAAqB,MAAPpkE,EAAEqkE,GAAoB,MAAPrkE,EAAE+N,GACjC2qD,EAAM,EACNC,EAAM,EAMNqL,EAAWf,GACPjjE,EAAEokE,GACF1Y,EAAO9nC,GAAGgxC,IACVwE,GAAWkL,KAAe,EAAG,GAAG1S,MAEpCmH,EAAOkK,GAASjjE,EAAEqkE,EAAG,KACrBrL,EAAUiK,GAASjjE,EAAE+N,EAAG,IACV,GAAKirD,EAAU,KACzBkL,GAAkB,KAGtBxL,EAAMhN,EAAOF,QAAQkO,MAAMhB,IAC3BC,EAAMjN,EAAOF,QAAQkO,MAAMf,IAE3BwL,EAAU/K,GAAWkL,KAAe5L,EAAKC,GAEzCqL,EAAWf,GAASjjE,EAAEukE,GAAI7Y,EAAO9nC,GAAGgxC,IAAOuP,EAAQvS,MAGnDmH,EAAOkK,GAASjjE,EAAEA,EAAGmkE,EAAQpL,MAElB,MAAP/4D,EAAEjE,IAEFi9D,EAAUh5D,EAAEjE,GACE,GAAKi9D,EAAU,KACzBkL,GAAkB,GAER,MAAPlkE,EAAEnC,GAETm7D,EAAUh5D,EAAEnC,EAAI66D,GACZ14D,EAAEnC,EAAI,GAAKmC,EAAEnC,EAAI,KACjBqmE,GAAkB,IAItBlL,EAAUN,GAGdK,EAAO,GAAKA,EAAOQ,GAAYyK,EAAUtL,EAAKC,GAC9CxO,EAAgBuB,GAAQoU,gBAAiB,EACf,MAAnBoE,EACP/Z,EAAgBuB,GAAQqU,kBAAmB,GAE3CkE,EAAOnL,GAAmBkL,EAAUjL,EAAMC,EAASN,EAAKC,GACxDjN,EAAO9nC,GAAGgxC,IAAQqP,EAAKrS,KACvBlG,EAAOoY,WAAaG,EAAK9K,UAEjC,CASA,SAASsI,GAA0B/V,GAE/B,GAAIA,EAAO1S,KAAO8O,EAAM0c,SAIxB,GAAI9Y,EAAO1S,KAAO8O,EAAM2c,SAAxB,CAIA/Y,EAAO9nC,GAAK,GACZumC,EAAgBuB,GAAQtC,OAAQ,EAGhC,IACI1uD,EACA2nE,EACA5wD,EACAC,EACAgzD,EAGA3a,EACAyK,EATA91B,EAAS,GAAKgtB,EAAO1pD,GAMrB2iE,EAAejmC,EAAO9jC,OACtBgqE,EAAyB,EAO7B,IADApQ,GAFA/iD,EACIi9C,EAAahD,EAAO1S,GAAI0S,EAAOF,SAAStT,MAAM4V,IAAqB,IACrDlzD,OACbF,EAAI,EAAGA,EAAI85D,EAAU95D,IACtBgX,EAAQD,EAAO/W,IACf2nE,GAAe3jC,EAAOwZ,MAAM+b,GAAsBviD,EAAOg6C,KACrD,IAAI,OAEJgZ,EAAUhmC,EAAOsM,OAAO,EAAGtM,EAAO11B,QAAQq5D,KAC9BznE,OAAS,GACjBuvD,EAAgBuB,GAAQpC,YAAYvuD,KAAK2pE,GAE7ChmC,EAASA,EAAOl/B,MACZk/B,EAAO11B,QAAQq5D,GAAeA,EAAYznE,QAE9CgqE,GAA0BvC,EAAYznE,QAGtCqzD,EAAqBv8C,IACjB2wD,EACAlY,EAAgBuB,GAAQtC,OAAQ,EAEhCe,EAAgBuB,GAAQrC,aAAatuD,KAAK2W,GAE9CijD,GAAwBjjD,EAAO2wD,EAAa3W,IACrCA,EAAOf,UAAY0X,GAC1BlY,EAAgBuB,GAAQrC,aAAatuD,KAAK2W,GAKlDy4C,EAAgBuB,GAAQnC,cACpBob,EAAeC,EACflmC,EAAO9jC,OAAS,GAChBuvD,EAAgBuB,GAAQpC,YAAYvuD,KAAK2jC,GAKzCgtB,EAAO9nC,GAAGmxC,KAAS,KACiB,IAApC5K,EAAgBuB,GAAQd,SACxBc,EAAO9nC,GAAGmxC,IAAQ,IAElB5K,EAAgBuB,GAAQd,aAAUpgD,GAGtC2/C,EAAgBuB,GAAQ5B,gBAAkB4B,EAAO9nC,GAAGpkB,MAAM,GAC1D2qD,EAAgBuB,GAAQ1B,SAAW0B,EAAOkS,UAE1ClS,EAAO9nC,GAAGmxC,IAAQ8P,GACdnZ,EAAOF,QACPE,EAAO9nC,GAAGmxC,IACVrJ,EAAOkS,WAKC,QADZ7T,EAAMI,EAAgBuB,GAAQ3B,OAE1B2B,EAAO9nC,GAAGgxC,IAAQlJ,EAAOF,QAAQsZ,gBAAgB/a,EAAK2B,EAAO9nC,GAAGgxC,MAGpE6O,GAAgB/X,GAChBkU,GAAclU,EA9Ed,MAFIiX,GAAkBjX,QAJlBuV,GAAcvV,EAqFtB,CAEA,SAASmZ,GAAgB7b,EAAQ+b,EAAM/a,GACnC,IAAIgb,EAEJ,OAAgB,MAAZhb,EAEO+a,EAEgB,MAAvB/b,EAAOic,aACAjc,EAAOic,aAAaF,EAAM/a,GACX,MAAfhB,EAAO2U,OAEdqH,EAAOhc,EAAO2U,KAAK3T,KACP+a,EAAO,KACfA,GAAQ,IAEPC,GAAiB,KAATD,IACTA,EAAO,GAEJA,GAGAA,CAEf,CAGA,SAASG,GAAyBxZ,GAC9B,IAAIyZ,EACAC,EACAC,EACA3qE,EACA4qE,EACAC,EACAC,GAAoB,EACpBC,EAAa/Z,EAAO1S,GAAGp+C,OAE3B,GAAmB,IAAf6qE,EAGA,OAFAtb,EAAgBuB,GAAQ/B,eAAgB,OACxC+B,EAAO5S,GAAK,IAAIwE,KAAKyN,MAIzB,IAAKrwD,EAAI,EAAGA,EAAI+qE,EAAY/qE,IACxB4qE,EAAe,EACfC,GAAmB,EACnBJ,EAAaja,EAAW,CAAC,EAAGQ,GACN,MAAlBA,EAAO0X,UACP+B,EAAW/B,QAAU1X,EAAO0X,SAEhC+B,EAAWnsB,GAAK0S,EAAO1S,GAAGt+C,GAC1B+mE,GAA0B0D,GAEtB9a,EAAQ8a,KACRI,GAAmB,GAIvBD,GAAgBnb,EAAgBgb,GAAY5b,cAG5C+b,GAAkE,GAAlDnb,EAAgBgb,GAAY9b,aAAazuD,OAEzDuvD,EAAgBgb,GAAYO,MAAQJ,EAE/BE,EAaGF,EAAeD,IACfA,EAAcC,EACdF,EAAaD,IAbE,MAAfE,GACAC,EAAeD,GACfE,KAEAF,EAAcC,EACdF,EAAaD,EACTI,IACAC,GAAoB,IAWpC3c,EAAO6C,EAAQ0Z,GAAcD,EACjC,CAEA,SAASQ,GAAiBja,GACtB,IAAIA,EAAO5S,GAAX,CAIA,IAAIp+C,EAAIw2D,GAAqBxF,EAAO1pD,IAChC4jE,OAAsBp7D,IAAV9P,EAAEygE,IAAoBzgE,EAAE23D,KAAO33D,EAAEygE,IACjDzP,EAAO9nC,GAAKvZ,EACR,CAAC3P,EAAEk3D,KAAMl3D,EAAE03D,MAAOwT,EAAWlrE,EAAEqqE,KAAMrqE,EAAEmrE,OAAQnrE,EAAEw5C,OAAQx5C,EAAEorE,cAC3D,SAAU1d,GACN,OAAOA,GAAO34C,SAAS24C,EAAK,GAChC,IAGJqb,GAAgB/X,EAXhB,CAYJ,CAEA,SAASqa,GAAiBra,GACtB,IAAI/C,EAAM,IAAI8C,EAAOmU,GAAcoG,GAActa,KAOjD,OANI/C,EAAIob,WAEJpb,EAAI5mB,IAAI,EAAG,KACX4mB,EAAIob,cAAWv5D,GAGZm+C,CACX,CAEA,SAASqd,GAActa,GACnB,IAAI5xB,EAAQ4xB,EAAO1pD,GACf2gB,EAAS+oC,EAAO1S,GAIpB,OAFA0S,EAAOF,QAAUE,EAAOF,SAAW8T,GAAU5T,EAAOvS,IAEtC,OAAVrf,QAA8BtvB,IAAXmY,GAAkC,KAAVmX,EACpCgxB,EAAc,CAAEtB,WAAW,KAGjB,kBAAV1vB,IACP4xB,EAAO1pD,GAAK83B,EAAQ4xB,EAAOF,QAAQya,SAASnsC,IAG5CsrB,EAAStrB,GACF,IAAI2xB,EAAOmU,GAAc9lC,KACzB2uB,EAAO3uB,GACd4xB,EAAO5S,GAAKhf,EACL7+B,EAAQ0nB,GACfuiD,GAAyBxZ,GAClB/oC,EACP8+C,GAA0B/V,GAE1Bwa,GAAgBxa,GAGfrB,EAAQqB,KACTA,EAAO5S,GAAK,MAGT4S,GACX,CAEA,SAASwa,GAAgBxa,GACrB,IAAI5xB,EAAQ4xB,EAAO1pD,GACfumD,EAAYzuB,GACZ4xB,EAAO5S,GAAK,IAAIwE,KAAKwK,EAAMvK,OACpBkL,EAAO3uB,GACd4xB,EAAO5S,GAAK,IAAIwE,KAAKxjB,EAAMgvB,WACH,kBAAVhvB,EACdipC,GAAiBrX,GACVzwD,EAAQ6+B,IACf4xB,EAAO9nC,GAAKvZ,EAAIyvB,EAAMt6B,MAAM,IAAI,SAAU4oD,GACtC,OAAO34C,SAAS24C,EAAK,GACzB,IACAqb,GAAgB/X,IACTzD,EAASnuB,GAChB6rC,GAAiBja,GACVlD,EAAS1uB,GAEhB4xB,EAAO5S,GAAK,IAAIwE,KAAKxjB,GAErBguB,EAAMkb,wBAAwBtX,EAEtC,CAEA,SAASxC,GAAiBpvB,EAAOnX,EAAQqmC,EAAQC,EAAQkd,GACrD,IAAI92D,EAAI,CAAC,EA2BT,OAzBe,IAAXsT,IAA8B,IAAXA,IACnBsmC,EAAStmC,EACTA,OAASnY,IAGE,IAAXw+C,IAA8B,IAAXA,IACnBC,EAASD,EACTA,OAASx+C,IAIRy9C,EAASnuB,IAAUquB,EAAcruB,IACjC7+B,EAAQ6+B,IAA2B,IAAjBA,EAAMl/B,UAEzBk/B,OAAQtvB,GAIZ6E,EAAEi8C,kBAAmB,EACrBj8C,EAAE+zD,QAAU/zD,EAAEk4C,OAAS4e,EACvB92D,EAAE8pC,GAAK6P,EACP35C,EAAErN,GAAK83B,EACPzqB,EAAE2pC,GAAKr2B,EACPtT,EAAEs7C,QAAU1B,EAEL8c,GAAiB12D,EAC5B,CAEA,SAASi1D,GAAYxqC,EAAOnX,EAAQqmC,EAAQC,GACxC,OAAOC,GAAiBpvB,EAAOnX,EAAQqmC,EAAQC,GAAQ,EAC3D,CAxeAnB,EAAMkb,wBAA0BnX,EAC5B,iSAGA,SAAUH,GACNA,EAAO5S,GAAK,IAAIwE,KAAKoO,EAAO1pD,IAAM0pD,EAAO0X,QAAU,OAAS,IAChE,IAsLJtb,EAAM0c,SAAW,WAAa,EAG9B1c,EAAM2c,SAAW,WAAa,EA2S9B,IAAI2B,GAAeva,EACX,sGACA,WACI,IAAIwa,EAAQ/B,GAAYnpE,MAAM,KAAMR,WACpC,OAAI6B,KAAK6tD,WAAagc,EAAMhc,UACjBgc,EAAQ7pE,KAAOA,KAAO6pE,EAEtBvb,GAEf,IAEJwb,GAAeza,EACX,sGACA,WACI,IAAIwa,EAAQ/B,GAAYnpE,MAAM,KAAMR,WACpC,OAAI6B,KAAK6tD,WAAagc,EAAMhc,UACjBgc,EAAQ7pE,KAAOA,KAAO6pE,EAEtBvb,GAEf,IAQR,SAASyb,GAAOvf,EAAIwf,GAChB,IAAI7d,EAAKjuD,EAIT,GAHuB,IAAnB8rE,EAAQ5rE,QAAgBK,EAAQurE,EAAQ,MACxCA,EAAUA,EAAQ,KAEjBA,EAAQ5rE,OACT,OAAO0pE,KAGX,IADA3b,EAAM6d,EAAQ,GACT9rE,EAAI,EAAGA,EAAI8rE,EAAQ5rE,SAAUF,EACzB8rE,EAAQ9rE,GAAG2vD,YAAamc,EAAQ9rE,GAAGssD,GAAI2B,KACxCA,EAAM6d,EAAQ9rE,IAGtB,OAAOiuD,CACX,CAGA,SAAS/0C,KAGL,OAAO2yD,GAAO,WAFH,GAAG/mE,MAAM/D,KAAKd,UAAW,GAGxC,CAEA,SAASwG,KAGL,OAAOolE,GAAO,UAFH,GAAG/mE,MAAM/D,KAAKd,UAAW,GAGxC,CAEA,IAAI4iD,GAAM,WACN,OAAOD,KAAKC,IAAMD,KAAKC,OAAS,IAAID,IACxC,EAEImpB,GAAW,CACX,OACA,UACA,QACA,OACA,MACA,OACA,SACA,SACA,eAGJ,SAASC,GAAgBnuC,GACrB,IAAI/8B,EAEAd,EADAisE,GAAiB,EAEjBC,EAAWH,GAAS7rE,OACxB,IAAKY,KAAO+8B,EACR,GACI2vB,EAAW3vB,EAAG/8B,MAEuB,IAAjCwN,GAAQvN,KAAKgrE,GAAUjrE,IACZ,MAAV+8B,EAAE/8B,IAAiBivD,MAAMlyB,EAAE/8B,KAGhC,OAAO,EAIf,IAAKd,EAAI,EAAGA,EAAIksE,IAAYlsE,EACxB,GAAI69B,EAAEkuC,GAAS/rE,IAAK,CAChB,GAAIisE,EACA,OAAO,EAEPE,WAAWtuC,EAAEkuC,GAAS/rE,OAASo3D,GAAMv5B,EAAEkuC,GAAS/rE,OAChDisE,GAAiB,EAEzB,CAGJ,OAAO,CACX,CAEA,SAASG,KACL,OAAOtqE,KAAK8tD,QAChB,CAEA,SAASyc,KACL,OAAOC,GAAejc,IAC1B,CAEA,SAASkc,GAAS/4C,GACd,IAAImjC,EAAkBH,GAAqBhjC,GACvCg5C,EAAQ7V,EAAgBO,MAAQ,EAChCuV,EAAW9V,EAAgB+V,SAAW,EACtC3R,EAASpE,EAAgBe,OAAS,EAClCiV,EAAQhW,EAAgB0H,MAAQ1H,EAAgBiW,SAAW,EAC3DC,EAAOlW,EAAgB8J,KAAO,EAC9B6B,EAAQ3L,EAAgB0T,MAAQ,EAChC5H,EAAU9L,EAAgBwU,QAAU,EACpCrI,EAAUnM,EAAgBnd,QAAU,EACpCszB,EAAenW,EAAgByU,aAAe,EAElDtpE,KAAK8tD,SAAWoc,GAAgBrV,GAGhC70D,KAAKirE,eACAD,EACS,IAAVhK,EACU,IAAVL,EACQ,IAARH,EAAe,GAAK,GAGxBxgE,KAAKkrE,OAASH,EAAe,EAARF,EAIrB7qE,KAAK25D,SAAWV,EAAoB,EAAX0R,EAAuB,GAARD,EAExC1qE,KAAKo4C,MAAQ,CAAC,EAEdp4C,KAAKgvD,QAAU8T,KAEf9iE,KAAKmrE,SACT,CAEA,SAASC,GAAWxf,GAChB,OAAOA,aAAe6e,EAC1B,CAEA,SAASY,GAAS3zD,GACd,OAAIA,EAAS,GACyB,EAA3BhT,KAAKqX,OAAO,EAAIrE,GAEhBhT,KAAKqX,MAAMrE,EAE1B,CAGA,SAAS4zD,GAAcC,EAAQC,EAAQC,GACnC,IAGIvtE,EAHAqI,EAAM7B,KAAK0S,IAAIm0D,EAAOntE,OAAQotE,EAAOptE,QACrCstE,EAAahnE,KAAKkjB,IAAI2jD,EAAOntE,OAASotE,EAAOptE,QAC7CutE,EAAQ,EAEZ,IAAKztE,EAAI,EAAGA,EAAIqI,EAAKrI,KAEZutE,GAAeF,EAAOrtE,KAAOstE,EAAOttE,KACnCutE,GAAenW,GAAMiW,EAAOrtE,MAAQo3D,GAAMkW,EAAOttE,MAEnDytE,IAGR,OAAOA,EAAQD,CACnB,CAIA,SAAS/0C,GAAOzhB,EAAO40B,GACnB4nB,EAAex8C,EAAO,EAAG,GAAG,WACxB,IAAIyhB,EAAS32B,KAAKupD,YACdz2C,EAAO,IAKX,OAJI6jB,EAAS,IACTA,GAAUA,EACV7jB,EAAO,KAGPA,EACAm+C,KAAYt6B,EAAS,IAAK,GAC1BmT,EACAmnB,IAAWt6B,EAAS,GAAI,EAEhC,GACJ,CAEAA,GAAO,IAAK,KACZA,GAAO,KAAM,IAIb0gC,GAAc,IAAKH,IACnBG,GAAc,KAAMH,IACpBa,GAAc,CAAC,IAAK,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GAC/CA,EAAO0X,SAAU,EACjB1X,EAAOzG,KAAOmjB,GAAiB1U,GAAkB55B,EACrD,IAOA,IAAIuuC,GAAc,kBAElB,SAASD,GAAiBE,EAAS5pC,GAC/B,IAEIkiB,EACAuc,EAHAoL,GAAW7pC,GAAU,IAAIwZ,MAAMowB,GAKnC,OAAgB,OAAZC,EACO,KAOQ,KAFnBpL,EAAuB,IADvBvc,IADQ2nB,EAAQA,EAAQ3tE,OAAS,IAAM,IACtB,IAAIs9C,MAAMmwB,KAAgB,CAAC,IAAK,EAAG,IAClC,GAAWvW,GAAMlR,EAAM,KAElB,EAAiB,MAAbA,EAAM,GAAauc,GAAWA,CAC7D,CAGA,SAASqL,GAAgB1uC,EAAO2uC,GAC5B,IAAI9f,EAAK7F,EACT,OAAI2lB,EAAMlhB,QACNoB,EAAM8f,EAAM5lC,QACZigB,GACKsC,EAAStrB,IAAU2uB,EAAO3uB,GACrBA,EAAMgvB,UACNwb,GAAYxqC,GAAOgvB,WAAaH,EAAIG,UAE9CH,EAAI7P,GAAG4vB,QAAQ/f,EAAI7P,GAAGgQ,UAAYhG,GAClCgF,EAAMT,aAAasB,GAAK,GACjBA,GAEA2b,GAAYxqC,GAAO4tB,OAElC,CAEA,SAASihB,GAAcpwC,GAGnB,OAAQr3B,KAAKqX,MAAMggB,EAAEugB,GAAGuJ,oBAC5B,CAoBA,SAASumB,GAAa9uC,EAAO+uC,EAAeC,GACxC,IACIC,EADA51C,EAAS32B,KAAK+uD,SAAW,EAE7B,IAAK/uD,KAAK6tD,UACN,OAAgB,MAATvwB,EAAgBt9B,KAAOuuD,IAElC,GAAa,MAATjxB,EAAe,CACf,GAAqB,kBAAVA,GAEP,GAAc,QADdA,EAAQsuC,GAAiB1U,GAAkB55B,IAEvC,OAAOt9B,UAEJ0E,KAAKkjB,IAAI0V,GAAS,KAAOgvC,IAChChvC,GAAgB,IAwBpB,OAtBKt9B,KAAK+qD,QAAUshB,IAChBE,EAAcJ,GAAcnsE,OAEhCA,KAAK+uD,QAAUzxB,EACft9B,KAAK+qD,QAAS,EACK,MAAfwhB,GACAvsE,KAAKulC,IAAIgnC,EAAa,KAEtB51C,IAAW2G,KACN+uC,GAAiBrsE,KAAKwsE,kBACvBC,GACIzsE,KACAwqE,GAAeltC,EAAQ3G,EAAQ,KAC/B,GACA,GAEI32B,KAAKwsE,oBACbxsE,KAAKwsE,mBAAoB,EACzBlhB,EAAMT,aAAa7qD,MAAM,GACzBA,KAAKwsE,kBAAoB,OAG1BxsE,IACX,CACI,OAAOA,KAAK+qD,OAASp0B,EAASw1C,GAAcnsE,KAEpD,CAEA,SAAS0sE,GAAWpvC,EAAO+uC,GACvB,OAAa,MAAT/uC,GACqB,kBAAVA,IACPA,GAASA,GAGbt9B,KAAKupD,UAAUjsB,EAAO+uC,GAEfrsE,OAECA,KAAKupD,WAErB,CAEA,SAASojB,GAAeN,GACpB,OAAOrsE,KAAKupD,UAAU,EAAG8iB,EAC7B,CAEA,SAASO,GAAiBP,GAStB,OARIrsE,KAAK+qD,SACL/qD,KAAKupD,UAAU,EAAG8iB,GAClBrsE,KAAK+qD,QAAS,EAEVshB,GACArsE,KAAK6sE,SAASV,GAAcnsE,MAAO,MAGpCA,IACX,CAEA,SAAS8sE,KACL,GAAiB,MAAb9sE,KAAKyoD,KACLzoD,KAAKupD,UAAUvpD,KAAKyoD,MAAM,GAAO,QAC9B,GAAuB,kBAAZzoD,KAAKwF,GAAiB,CACpC,IAAIunE,EAAQnB,GAAiB3U,GAAaj3D,KAAKwF,IAClC,MAATunE,EACA/sE,KAAKupD,UAAUwjB,GAEf/sE,KAAKupD,UAAU,GAAG,EAE1B,CACA,OAAOvpD,IACX,CAEA,SAASgtE,GAAqB1vC,GAC1B,QAAKt9B,KAAK6tD,YAGVvwB,EAAQA,EAAQwqC,GAAYxqC,GAAOisB,YAAc,GAEzCvpD,KAAKupD,YAAcjsB,GAAS,KAAO,EAC/C,CAEA,SAAS2vC,KACL,OACIjtE,KAAKupD,YAAcvpD,KAAKqmC,QAAQuvB,MAAM,GAAGrM,aACzCvpD,KAAKupD,YAAcvpD,KAAKqmC,QAAQuvB,MAAM,GAAGrM,WAEjD,CAEA,SAAS2jB,KACL,IAAKnhB,EAAY/rD,KAAKmtE,eAClB,OAAOntE,KAAKmtE,cAGhB,IACItD,EADAh3D,EAAI,CAAC,EAcT,OAXA67C,EAAW77C,EAAG7S,OACd6S,EAAI22D,GAAc32D,IAEZuU,IACFyiD,EAAQh3D,EAAEk4C,OAASwB,EAAU15C,EAAEuU,IAAM0gD,GAAYj1D,EAAEuU,IACnDpnB,KAAKmtE,cACDntE,KAAK6tD,WAAayd,GAAcz4D,EAAEuU,GAAIyiD,EAAMuD,WAAa,GAE7DptE,KAAKmtE,eAAgB,EAGlBntE,KAAKmtE,aAChB,CAEA,SAASE,KACL,QAAOrtE,KAAK6tD,YAAa7tD,KAAK+qD,MAClC,CAEA,SAASuiB,KACL,QAAOttE,KAAK6tD,WAAY7tD,KAAK+qD,MACjC,CAEA,SAASwiB,KACL,QAAOvtE,KAAK6tD,WAAY7tD,KAAK+qD,QAA2B,IAAjB/qD,KAAK+uD,OAChD,CArJAzD,EAAMT,aAAe,WAAa,EAwJlC,IAAI2iB,GAAc,wDAIdC,GACI,sKAER,SAASjD,GAAeltC,EAAOt+B,GAC3B,IAGI8T,EACA46D,EACAC,EALAj8C,EAAW4L,EAEXoe,EAAQ,KAkEZ,OA7DI0vB,GAAW9tC,GACX5L,EAAW,CACPiqC,GAAIr+B,EAAM2tC,cACV1rE,EAAG+9B,EAAM4tC,MACTrX,EAAGv2B,EAAMq8B,SAEN3N,EAAS1uB,KAAW2wB,OAAO3wB,IAClC5L,EAAW,CAAC,EACR1yB,EACA0yB,EAAS1yB,IAAQs+B,EAEjB5L,EAASs5C,cAAgB1tC,IAErBoe,EAAQ8xB,GAAY1I,KAAKxnC,KACjCxqB,EAAoB,MAAb4oC,EAAM,IAAc,EAAI,EAC/BhqB,EAAW,CACP7vB,EAAG,EACHtC,EAAG+1D,GAAM5Z,EAAM4c,KAASxlD,EACxBrP,EAAG6xD,GAAM5Z,EAAM6c,KAASzlD,EACxBipB,EAAGu5B,GAAM5Z,EAAM8c,KAAW1lD,EAC1BxS,EAAGg1D,GAAM5Z,EAAM+c,KAAW3lD,EAC1B6oD,GAAIrG,GAAM+V,GAA8B,IAArB3vB,EAAMgd,MAAwB5lD,KAE7C4oC,EAAQ+xB,GAAS3I,KAAKxnC,KAC9BxqB,EAAoB,MAAb4oC,EAAM,IAAc,EAAI,EAC/BhqB,EAAW,CACP7vB,EAAG+rE,GAASlyB,EAAM,GAAI5oC,GACtB+gD,EAAG+Z,GAASlyB,EAAM,GAAI5oC,GACtBtP,EAAGoqE,GAASlyB,EAAM,GAAI5oC,GACtBvT,EAAGquE,GAASlyB,EAAM,GAAI5oC,GACtBrP,EAAGmqE,GAASlyB,EAAM,GAAI5oC,GACtBipB,EAAG6xC,GAASlyB,EAAM,GAAI5oC,GACtBxS,EAAGstE,GAASlyB,EAAM,GAAI5oC,KAEP,MAAZ4e,EAEPA,EAAW,CAAC,EAEQ,kBAAbA,IACN,SAAUA,GAAY,OAAQA,KAE/Bi8C,EAAUE,GACN/F,GAAYp2C,EAAS9uB,MACrBklE,GAAYp2C,EAAS/uB,MAGzB+uB,EAAW,CAAC,GACHiqC,GAAKgS,EAAQ3C,aACtBt5C,EAASmiC,EAAI8Z,EAAQ1U,QAGzByU,EAAM,IAAIjD,GAAS/4C,GAEf05C,GAAW9tC,IAAUouB,EAAWpuB,EAAO,aACvCowC,EAAI1e,QAAU1xB,EAAM0xB,SAGpBoc,GAAW9tC,IAAUouB,EAAWpuB,EAAO,cACvCowC,EAAI5f,SAAWxwB,EAAMwwB,UAGlB4f,CACX,CAKA,SAASE,GAASE,EAAKh7D,GAInB,IAAIq5C,EAAM2hB,GAAOzD,WAAWyD,EAAIlyC,QAAQ,IAAK,MAE7C,OAAQqyB,MAAM9B,GAAO,EAAIA,GAAOr5C,CACpC,CAEA,SAASi7D,GAA0BC,EAAMnE,GACrC,IAAI1d,EAAM,CAAC,EAUX,OARAA,EAAI8M,OACA4Q,EAAMjU,QAAUoY,EAAKpY,QAAyC,IAA9BiU,EAAMzU,OAAS4Y,EAAK5Y,QACpD4Y,EAAK3nC,QAAQd,IAAI4mB,EAAI8M,OAAQ,KAAKgV,QAAQpE,MACxC1d,EAAI8M,OAGV9M,EAAI6e,cAAgBnB,GAASmE,EAAK3nC,QAAQd,IAAI4mB,EAAI8M,OAAQ,KAEnD9M,CACX,CAEA,SAAS0hB,GAAkBG,EAAMnE,GAC7B,IAAI1d,EACJ,OAAM6hB,EAAKngB,WAAagc,EAAMhc,WAI9Bgc,EAAQmC,GAAgBnC,EAAOmE,GAC3BA,EAAKE,SAASrE,GACd1d,EAAM4hB,GAA0BC,EAAMnE,KAEtC1d,EAAM4hB,GAA0BlE,EAAOmE,IACnChD,cAAgB7e,EAAI6e,aACxB7e,EAAI8M,QAAU9M,EAAI8M,QAGf9M,GAZI,CAAE6e,aAAc,EAAG/R,OAAQ,EAa1C,CAGA,SAASkV,GAAYnhD,EAAWjU,GAC5B,OAAO,SAAU61C,EAAKwf,GAClB,IAAS/qC,EAmBT,OAjBe,OAAX+qC,GAAoBngB,OAAOmgB,KAC3B1e,EACI32C,EACA,YACIA,EACA,uDACAA,EAHJ,kGAOJsqB,EAAMurB,EACNA,EAAMwf,EACNA,EAAS/qC,GAIbopC,GAAYzsE,KADNwqE,GAAe5b,EAAKwf,GACHphD,GAChBhtB,IACX,CACJ,CAEA,SAASysE,GAAYnjB,EAAK53B,EAAU28C,EAAUxjB,GAC1C,IAAImgB,EAAet5C,EAASu5C,cACxBF,EAAOM,GAAS35C,EAASw5C,OACzBjS,EAASoS,GAAS35C,EAASioC,SAE1BrQ,EAAIuE,YAKThD,EAA+B,MAAhBA,GAA8BA,EAEzCoO,GACAwB,GAASnR,EAAK/8C,GAAI+8C,EAAK,SAAW2P,EAASoV,GAE3CtD,GACApV,GAAMrM,EAAK,OAAQ/8C,GAAI+8C,EAAK,QAAUyhB,EAAOsD,GAE7CrD,GACA1hB,EAAIhN,GAAG4vB,QAAQ5iB,EAAIhN,GAAGgQ,UAAY0e,EAAeqD,GAEjDxjB,GACAS,EAAMT,aAAavB,EAAKyhB,GAAQ9R,GAExC,CA9FAuR,GAAehgB,GAAKigB,GAAS3rE,UAC7B0rE,GAAe8D,QAAU/D,GA+FzB,IAAIhlC,GAAM4oC,GAAY,EAAG,OACrBtB,GAAWsB,IAAa,EAAG,YAE/B,SAASI,GAASjxC,GACd,MAAwB,kBAAVA,GAAsBA,aAAiBx9B,MACzD,CAGA,SAAS0uE,GAAclxC,GACnB,OACIsrB,EAAStrB,IACT2uB,EAAO3uB,IACPixC,GAASjxC,IACT0uB,EAAS1uB,IACTmxC,GAAsBnxC,IACtBoxC,GAAoBpxC,IACV,OAAVA,QACUtvB,IAAVsvB,CAER,CAEA,SAASoxC,GAAoBpxC,GACzB,IA4BIp/B,EACAgtC,EA7BAyjC,EAAaljB,EAASnuB,KAAWquB,EAAcruB,GAC/CsxC,GAAe,EACfC,EAAa,CACT,QACA,OACA,IACA,SACA,QACA,IACA,OACA,MACA,IACA,QACA,OACA,IACA,QACA,OACA,IACA,UACA,SACA,IACA,UACA,SACA,IACA,eACA,cACA,MAIJC,EAAcD,EAAWzwE,OAE7B,IAAKF,EAAI,EAAGA,EAAI4wE,EAAa5wE,GAAK,EAC9BgtC,EAAW2jC,EAAW3wE,GACtB0wE,EAAeA,GAAgBljB,EAAWpuB,EAAO4N,GAGrD,OAAOyjC,GAAcC,CACzB,CAEA,SAASH,GAAsBnxC,GAC3B,IAAIyxC,EAAYtwE,EAAQ6+B,GACpB0xC,GAAe,EAOnB,OANID,IACAC,EAGkB,IAFd1xC,EAAMziB,QAAO,SAAUswB,GACnB,OAAQ6gB,EAAS7gB,IAASojC,GAASjxC,EACvC,IAAGl/B,QAEJ2wE,GAAaC,CACxB,CAEA,SAASC,GAAe3xC,GACpB,IAUIp/B,EACAgtC,EAXAyjC,EAAaljB,EAASnuB,KAAWquB,EAAcruB,GAC/CsxC,GAAe,EACfC,EAAa,CACT,UACA,UACA,UACA,WACA,WACA,YAKR,IAAK3wE,EAAI,EAAGA,EAAI2wE,EAAWzwE,OAAQF,GAAK,EACpCgtC,EAAW2jC,EAAW3wE,GACtB0wE,EAAeA,GAAgBljB,EAAWpuB,EAAO4N,GAGrD,OAAOyjC,GAAcC,CACzB,CAEA,SAASM,GAAkBC,EAAUpuB,GACjC,IAAIuF,EAAO6oB,EAAS7oB,KAAKvF,EAAK,QAAQ,GACtC,OAAOuF,GAAQ,EACT,WACAA,GAAQ,EACR,WACAA,EAAO,EACP,UACAA,EAAO,EACP,UACAA,EAAO,EACP,UACAA,EAAO,EACP,WACA,UACV,CAEA,SAAS8oB,GAAW/+C,EAAMg/C,GAEG,IAArBlxE,UAAUC,SACLD,UAAU,GAGJqwE,GAAcrwE,UAAU,KAC/BkyB,EAAOlyB,UAAU,GACjBkxE,OAAUrhE,GACHihE,GAAe9wE,UAAU,MAChCkxE,EAAUlxE,UAAU,GACpBkyB,OAAOriB,IAPPqiB,OAAOriB,EACPqhE,OAAUrhE,IAWlB,IAAI+yC,EAAM1wB,GAAQy3C,KACdwH,EAAMtD,GAAgBjrB,EAAK/gD,MAAMuvE,QAAQ,OACzCppD,EAASmlC,EAAMkkB,eAAexvE,KAAMsvE,IAAQ,WAC5Cve,EACIse,IACC1f,EAAW0f,EAAQlpD,IACdkpD,EAAQlpD,GAAQlnB,KAAKe,KAAM+gD,GAC3BsuB,EAAQlpD,IAEtB,OAAOnmB,KAAKmmB,OACR4qC,GAAU/wD,KAAK8xD,aAAahB,SAAS3qC,EAAQnmB,KAAM8nE,GAAY/mB,IAEvE,CAEA,SAAS1a,KACL,OAAO,IAAI4oB,EAAOjvD,KACtB,CAEA,SAASiuE,GAAQ3wC,EAAOm3B,GACpB,IAAIgb,EAAa7mB,EAAStrB,GAASA,EAAQwqC,GAAYxqC,GACvD,SAAMt9B,KAAK6tD,YAAa4hB,EAAW5hB,aAIrB,iBADd4G,EAAQD,GAAeC,IAAU,eAEtBz0D,KAAKssD,UAAYmjB,EAAWnjB,UAE5BmjB,EAAWnjB,UAAYtsD,KAAKqmC,QAAQkpC,QAAQ9a,GAAOnI,UAElE,CAEA,SAAS4hB,GAAS5wC,EAAOm3B,GACrB,IAAIgb,EAAa7mB,EAAStrB,GAASA,EAAQwqC,GAAYxqC,GACvD,SAAMt9B,KAAK6tD,YAAa4hB,EAAW5hB,aAIrB,iBADd4G,EAAQD,GAAeC,IAAU,eAEtBz0D,KAAKssD,UAAYmjB,EAAWnjB,UAE5BtsD,KAAKqmC,QAAQqpC,MAAMjb,GAAOnI,UAAYmjB,EAAWnjB,UAEhE,CAEA,SAASqjB,GAAU/sE,EAAMD,EAAI8xD,EAAOmb,GAChC,IAAIC,EAAYjnB,EAAShmD,GAAQA,EAAOklE,GAAYllE,GAChDktE,EAAUlnB,EAASjmD,GAAMA,EAAKmlE,GAAYnlE,GAC9C,SAAM3C,KAAK6tD,WAAagiB,EAAUhiB,WAAaiiB,EAAQjiB,aAK/B,OAFxB+hB,EAAcA,GAAe,MAEZ,GACP5vE,KAAKiuE,QAAQ4B,EAAWpb,IACvBz0D,KAAKkuE,SAAS2B,EAAWpb,MACZ,MAAnBmb,EAAY,GACP5vE,KAAKkuE,SAAS4B,EAASrb,IACtBz0D,KAAKiuE,QAAQ6B,EAASrb,GAErC,CAEA,SAASsb,GAAOzyC,EAAOm3B,GACnB,IACIub,EADAP,EAAa7mB,EAAStrB,GAASA,EAAQwqC,GAAYxqC,GAEvD,SAAMt9B,KAAK6tD,YAAa4hB,EAAW5hB,aAIrB,iBADd4G,EAAQD,GAAeC,IAAU,eAEtBz0D,KAAKssD,YAAcmjB,EAAWnjB,WAErC0jB,EAAUP,EAAWnjB,UAEjBtsD,KAAKqmC,QAAQkpC,QAAQ9a,GAAOnI,WAAa0jB,GACzCA,GAAWhwE,KAAKqmC,QAAQqpC,MAAMjb,GAAOnI,WAGjD,CAEA,SAAS2jB,GAAc3yC,EAAOm3B,GAC1B,OAAOz0D,KAAK+vE,OAAOzyC,EAAOm3B,IAAUz0D,KAAKiuE,QAAQ3wC,EAAOm3B,EAC5D,CAEA,SAASyb,GAAe5yC,EAAOm3B,GAC3B,OAAOz0D,KAAK+vE,OAAOzyC,EAAOm3B,IAAUz0D,KAAKkuE,SAAS5wC,EAAOm3B,EAC7D,CAEA,SAASnO,GAAKhpB,EAAOm3B,EAAO0b,GACxB,IAAIC,EAAMC,EAAWtf,EAErB,IAAK/wD,KAAK6tD,UACN,OAAOU,IAKX,KAFA6hB,EAAOpE,GAAgB1uC,EAAOt9B,OAEpB6tD,UACN,OAAOU,IAOX,OAJA8hB,EAAoD,KAAvCD,EAAK7mB,YAAcvpD,KAAKupD,aAErCkL,EAAQD,GAAeC,IAGnB,IAAK,OACD1D,EAASuf,GAAUtwE,KAAMowE,GAAQ,GACjC,MACJ,IAAK,QACDrf,EAASuf,GAAUtwE,KAAMowE,GACzB,MACJ,IAAK,UACDrf,EAASuf,GAAUtwE,KAAMowE,GAAQ,EACjC,MACJ,IAAK,SACDrf,GAAU/wD,KAAOowE,GAAQ,IACzB,MACJ,IAAK,SACDrf,GAAU/wD,KAAOowE,GAAQ,IACzB,MACJ,IAAK,OACDrf,GAAU/wD,KAAOowE,GAAQ,KACzB,MACJ,IAAK,MACDrf,GAAU/wD,KAAOowE,EAAOC,GAAa,MACrC,MACJ,IAAK,OACDtf,GAAU/wD,KAAOowE,EAAOC,GAAa,OACrC,MACJ,QACItf,EAAS/wD,KAAOowE,EAGxB,OAAOD,EAAUpf,EAASsE,GAAStE,EACvC,CAEA,SAASuf,GAAU3jE,EAAGnN,GAClB,GAAImN,EAAEkpD,OAASr2D,EAAEq2D,OAGb,OAAQya,GAAU9wE,EAAGmN,GAGzB,IAAI4jE,EAAyC,IAAvB/wE,EAAE41D,OAASzoD,EAAEyoD,SAAgB51D,EAAEo2D,QAAUjpD,EAAEipD,SAE7D4a,EAAS7jE,EAAE05B,QAAQd,IAAIgrC,EAAgB,UAe3C,QAASA,GAXL/wE,EAAIgxE,EAAS,GAGHhxE,EAAIgxE,IAAWA,EAFf7jE,EAAE05B,QAAQd,IAAIgrC,EAAiB,EAAG,YAMlC/wE,EAAIgxE,IAFJ7jE,EAAE05B,QAAQd,IAAIgrC,EAAiB,EAAG,UAETC,MAIF,CACzC,CAKA,SAAS5xE,KACL,OAAOoB,KAAKqmC,QAAQmmB,OAAO,MAAMrmC,OAAO,mCAC5C,CAEA,SAASsqD,GAAYC,GACjB,IAAK1wE,KAAK6tD,UACN,OAAO,KAEX,IAAIlF,GAAqB,IAAf+nB,EACN30C,EAAI4sB,EAAM3oD,KAAKqmC,QAAQsiB,MAAQ3oD,KACnC,OAAI+7B,EAAEq5B,OAAS,GAAKr5B,EAAEq5B,OAAS,KACpBnD,EACHl2B,EACA4sB,EACM,iCACA,gCAGVgH,EAAW7O,KAAKhiD,UAAU2xE,aAEtB9nB,EACO3oD,KAAK2wE,SAASF,cAEd,IAAI3vB,KAAK9gD,KAAKssD,UAA+B,GAAnBtsD,KAAKupD,YAAmB,KACpDknB,cACA70C,QAAQ,IAAKq2B,EAAal2B,EAAG,MAGnCk2B,EACHl2B,EACA4sB,EAAM,+BAAiC,6BAE/C,CAQA,SAASioB,KACL,IAAK5wE,KAAK6tD,UACN,MAAO,qBAAuB7tD,KAAKwF,GAAK,OAE5C,IAEIygB,EACAmvC,EACAyb,EACA7uC,EALA6vB,EAAO,SACP9L,EAAO,GAcX,OATK/lD,KAAKqtE,YACNxb,EAA4B,IAArB7xD,KAAKupD,YAAoB,aAAe,mBAC/CxD,EAAO,KAEX9/B,EAAS,IAAM4rC,EAAO,MACtBuD,EAAO,GAAKp1D,KAAKo1D,QAAUp1D,KAAKo1D,QAAU,KAAO,OAAS,SAC1Dyb,EAAW,wBACX7uC,EAAS+jB,EAAO,OAET/lD,KAAKmmB,OAAOF,EAASmvC,EAAOyb,EAAW7uC,EAClD,CAEA,SAAS7b,GAAO2qD,GACPA,IACDA,EAAc9wE,KAAKutE,QACbjiB,EAAMylB,iBACNzlB,EAAM0lB,eAEhB,IAAIjgB,EAASkB,EAAajyD,KAAM8wE,GAChC,OAAO9wE,KAAK8xD,aAAamf,WAAWlgB,EACxC,CAEA,SAASnuD,GAAKytB,EAAM4jC,GAChB,OACIj0D,KAAK6tD,YACHjF,EAASv4B,IAASA,EAAKw9B,WAAcia,GAAYz3C,GAAMw9B,WAElD2c,GAAe,CAAE7nE,GAAI3C,KAAM4C,KAAMytB,IACnCm8B,OAAOxsD,KAAKwsD,UACZ0kB,UAAUjd,GAERj0D,KAAK8xD,aAAaK,aAEjC,CAEA,SAASgf,GAAQld,GACb,OAAOj0D,KAAK4C,KAAKklE,KAAe7T,EACpC,CAEA,SAAStxD,GAAG0tB,EAAM4jC,GACd,OACIj0D,KAAK6tD,YACHjF,EAASv4B,IAASA,EAAKw9B,WAAcia,GAAYz3C,GAAMw9B,WAElD2c,GAAe,CAAE5nE,KAAM5C,KAAM2C,GAAI0tB,IACnCm8B,OAAOxsD,KAAKwsD,UACZ0kB,UAAUjd,GAERj0D,KAAK8xD,aAAaK,aAEjC,CAEA,SAASif,GAAMnd,GACX,OAAOj0D,KAAK2C,GAAGmlE,KAAe7T,EAClC,CAKA,SAASzH,GAAOxtD,GACZ,IAAIqyE,EAEJ,YAAYrjE,IAARhP,EACOgB,KAAKgvD,QAAQ2T,OAGC,OADrB0O,EAAgBvO,GAAU9jE,MAEtBgB,KAAKgvD,QAAUqiB,GAEZrxE,KAEf,CA5HAsrD,EAAM0lB,cAAgB,uBACtB1lB,EAAMylB,iBAAmB,yBA6HzB,IAAIO,GAAOjiB,EACP,mJACA,SAAUrwD,GACN,YAAYgP,IAARhP,EACOgB,KAAK8xD,aAEL9xD,KAAKwsD,OAAOxtD,EAE3B,IAGJ,SAAS8yD,KACL,OAAO9xD,KAAKgvD,OAChB,CAEA,IAAIuiB,GAAgB,IAChBC,GAAgB,GAAKD,GACrBE,GAAc,GAAKD,GACnBE,GAAmB,QAAwBD,GAG/C,SAASE,GAAMC,EAAUC,GACrB,OAASD,EAAWC,EAAWA,GAAWA,CAC9C,CAEA,SAASC,GAAiBjwE,EAAGk6B,EAAGx8B,GAE5B,OAAIsC,EAAI,KAAOA,GAAK,EAET,IAAIi/C,KAAKj/C,EAAI,IAAKk6B,EAAGx8B,GAAKmyE,GAE1B,IAAI5wB,KAAKj/C,EAAGk6B,EAAGx8B,GAAG+sD,SAEjC,CAEA,SAASylB,GAAelwE,EAAGk6B,EAAGx8B,GAE1B,OAAIsC,EAAI,KAAOA,GAAK,EAETi/C,KAAKgb,IAAIj6D,EAAI,IAAKk6B,EAAGx8B,GAAKmyE,GAE1B5wB,KAAKgb,IAAIj6D,EAAGk6B,EAAGx8B,EAE9B,CAEA,SAASgwE,GAAQ9a,GACb,IAAIpkC,EAAM2hD,EAEV,QAAchkE,KADdymD,EAAQD,GAAeC,KACc,gBAAVA,IAA4Bz0D,KAAK6tD,UACxD,OAAO7tD,KAKX,OAFAgyE,EAAchyE,KAAK+qD,OAASgnB,GAAiBD,GAErCrd,GACJ,IAAK,OACDpkC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQ,EAAG,GACnC,MACJ,IAAK,UACD/kC,EAAO2hD,EACHhyE,KAAKo1D,OACLp1D,KAAK41D,QAAW51D,KAAK41D,QAAU,EAC/B,GAEJ,MACJ,IAAK,QACDvlC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS,GAC9C,MACJ,IAAK,OACDvlC,EAAO2hD,EACHhyE,KAAKo1D,OACLp1D,KAAK41D,QACL51D,KAAK61D,OAAS71D,KAAKw8D,WAEvB,MACJ,IAAK,UACDnsC,EAAO2hD,EACHhyE,KAAKo1D,OACLp1D,KAAK41D,QACL51D,KAAK61D,QAAU71D,KAAKiyE,aAAe,IAEvC,MACJ,IAAK,MACL,IAAK,OACD5hD,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS51D,KAAK61D,QACnD,MACJ,IAAK,OACDxlC,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQshD,GACJthD,GAAQrwB,KAAK+qD,OAAS,EAAI/qD,KAAKupD,YAAcioB,IAC7CC,IAEJ,MACJ,IAAK,SACDphD,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQshD,GAAMthD,EAAMmhD,IACpB,MACJ,IAAK,SACDnhD,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQshD,GAAMthD,EAAMkhD,IAM5B,OAFAvxE,KAAKs8C,GAAG4vB,QAAQ77C,GAChBi7B,EAAMT,aAAa7qD,MAAM,GAClBA,IACX,CAEA,SAAS0vE,GAAMjb,GACX,IAAIpkC,EAAM2hD,EAEV,QAAchkE,KADdymD,EAAQD,GAAeC,KACc,gBAAVA,IAA4Bz0D,KAAK6tD,UACxD,OAAO7tD,KAKX,OAFAgyE,EAAchyE,KAAK+qD,OAASgnB,GAAiBD,GAErCrd,GACJ,IAAK,OACDpkC,EAAO2hD,EAAYhyE,KAAKo1D,OAAS,EAAG,EAAG,GAAK,EAC5C,MACJ,IAAK,UACD/kC,EACI2hD,EACIhyE,KAAKo1D,OACLp1D,KAAK41D,QAAW51D,KAAK41D,QAAU,EAAK,EACpC,GACA,EACR,MACJ,IAAK,QACDvlC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAU,EAAG,GAAK,EACvD,MACJ,IAAK,OACDvlC,EACI2hD,EACIhyE,KAAKo1D,OACLp1D,KAAK41D,QACL51D,KAAK61D,OAAS71D,KAAKw8D,UAAY,GAC/B,EACR,MACJ,IAAK,UACDnsC,EACI2hD,EACIhyE,KAAKo1D,OACLp1D,KAAK41D,QACL51D,KAAK61D,QAAU71D,KAAKiyE,aAAe,GAAK,GACxC,EACR,MACJ,IAAK,MACL,IAAK,OACD5hD,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS51D,KAAK61D,OAAS,GAAK,EACjE,MACJ,IAAK,OACDxlC,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GACIohD,GACAE,GACIthD,GAAQrwB,KAAK+qD,OAAS,EAAI/qD,KAAKupD,YAAcioB,IAC7CC,IAEJ,EACJ,MACJ,IAAK,SACDphD,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQmhD,GAAgBG,GAAMthD,EAAMmhD,IAAiB,EACrD,MACJ,IAAK,SACDnhD,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQkhD,GAAgBI,GAAMthD,EAAMkhD,IAAiB,EAM7D,OAFAvxE,KAAKs8C,GAAG4vB,QAAQ77C,GAChBi7B,EAAMT,aAAa7qD,MAAM,GAClBA,IACX,CAEA,SAASssD,KACL,OAAOtsD,KAAKs8C,GAAGgQ,UAAkC,KAArBtsD,KAAK+uD,SAAW,EAChD,CAEA,SAASmjB,KACL,OAAOxtE,KAAKi+B,MAAM3iC,KAAKssD,UAAY,IACvC,CAEA,SAASqkB,KACL,OAAO,IAAI7vB,KAAK9gD,KAAKssD,UACzB,CAEA,SAAS8gB,KACL,IAAIrxC,EAAI/7B,KACR,MAAO,CACH+7B,EAAEq5B,OACFr5B,EAAE65B,QACF75B,EAAE85B,OACF95B,EAAEwsC,OACFxsC,EAAEstC,SACFttC,EAAE2b,SACF3b,EAAEutC,cAEV,CAEA,SAAS6I,KACL,IAAIp2C,EAAI/7B,KACR,MAAO,CACH0qE,MAAO3uC,EAAEq5B,OACT6D,OAAQl9B,EAAE65B,QACVC,KAAM95B,EAAE85B,OACR2K,MAAOzkC,EAAEykC,QACTG,QAAS5kC,EAAE4kC,UACXK,QAASjlC,EAAEilC,UACXgK,aAAcjvC,EAAEivC,eAExB,CAEA,SAASoH,KAEL,OAAOpyE,KAAK6tD,UAAY7tD,KAAKywE,cAAgB,IACjD,CAEA,SAAS4B,KACL,OAAOxkB,EAAQ7tD,KACnB,CAEA,SAASsyE,KACL,OAAOjmB,EAAO,CAAC,EAAGsB,EAAgB3tD,MACtC,CAEA,SAASuyE,KACL,OAAO5kB,EAAgB3tD,MAAMouB,QACjC,CAEA,SAASokD,KACL,MAAO,CACHl1C,MAAOt9B,KAAKwF,GACZ2gB,OAAQnmB,KAAKw8C,GACbgQ,OAAQxsD,KAAKgvD,QACb2a,MAAO3pE,KAAK+qD,OACZ0B,OAAQzsD,KAAKmuD,QAErB,CAmDA,SAASskB,GAAW12C,EAAG5V,GACnB,IAAIjoB,EACA6E,EACA8yD,EACA6c,EAAO1yE,KAAK2yE,OAAS7P,GAAU,MAAM6P,MACzC,IAAKz0E,EAAI,EAAG6E,EAAI2vE,EAAKt0E,OAAQF,EAAI6E,IAAK7E,EASlC,OAPS,kBADMw0E,EAAKx0E,GAAG00E,QAGf/c,EAAOvK,EAAMonB,EAAKx0E,GAAG00E,OAAOrD,QAAQ,OACpCmD,EAAKx0E,GAAG00E,MAAQ/c,EAAKvJ,kBAIdomB,EAAKx0E,GAAG20E,OACnB,IAAK,YACDH,EAAKx0E,GAAG20E,MAAQ,IAChB,MACJ,IAAK,SAEDhd,EAAOvK,EAAMonB,EAAKx0E,GAAG20E,OAAOtD,QAAQ,OAAOjjB,UAC3ComB,EAAKx0E,GAAG20E,MAAQhd,EAAKvJ,UAIjC,OAAOomB,CACX,CAEA,SAASI,GAAgBC,EAAS5sD,EAAQsmC,GACtC,IAAIvuD,EACA6E,EAEAgW,EACA6sC,EACAotB,EAHAN,EAAO1yE,KAAK0yE,OAMhB,IAFAK,EAAUA,EAAQx3D,cAEbrd,EAAI,EAAG6E,EAAI2vE,EAAKt0E,OAAQF,EAAI6E,IAAK7E,EAKlC,GAJA6a,EAAO25D,EAAKx0E,GAAG6a,KAAKwC,cACpBqqC,EAAO8sB,EAAKx0E,GAAG0nD,KAAKrqC,cACpBy3D,EAASN,EAAKx0E,GAAG80E,OAAOz3D,cAEpBkxC,EACA,OAAQtmC,GACJ,IAAK,IACL,IAAK,KACL,IAAK,MACD,GAAIy/B,IAASmtB,EACT,OAAOL,EAAKx0E,GAEhB,MAEJ,IAAK,OACD,GAAI6a,IAASg6D,EACT,OAAOL,EAAKx0E,GAEhB,MAEJ,IAAK,QACD,GAAI80E,IAAWD,EACX,OAAOL,EAAKx0E,QAIrB,GAAI,CAAC6a,EAAM6sC,EAAMotB,GAAQxmE,QAAQumE,IAAY,EAChD,OAAOL,EAAKx0E,EAGxB,CAEA,SAAS+0E,GAAsB1lB,EAAK6H,GAChC,IAAI8d,EAAM3lB,EAAIqlB,OAASrlB,EAAIslB,MAAQ,GAAM,EACzC,YAAa7kE,IAATonD,EACO9J,EAAMiC,EAAIqlB,OAAOxd,OAEjB9J,EAAMiC,EAAIqlB,OAAOxd,QAAUA,EAAO7H,EAAI52B,QAAUu8C,CAE/D,CAEA,SAASC,KACL,IAAIj1E,EACA6E,EACA6rD,EACA8jB,EAAO1yE,KAAK8xD,aAAa4gB,OAC7B,IAAKx0E,EAAI,EAAG6E,EAAI2vE,EAAKt0E,OAAQF,EAAI6E,IAAK7E,EAAG,CAIrC,GAFA0wD,EAAM5uD,KAAKqmC,QAAQkpC,QAAQ,OAAOjjB,UAE9BomB,EAAKx0E,GAAG00E,OAAShkB,GAAOA,GAAO8jB,EAAKx0E,GAAG20E,MACvC,OAAOH,EAAKx0E,GAAG6a,KAEnB,GAAI25D,EAAKx0E,GAAG20E,OAASjkB,GAAOA,GAAO8jB,EAAKx0E,GAAG00E,MACvC,OAAOF,EAAKx0E,GAAG6a,IAEvB,CAEA,MAAO,EACX,CAEA,SAASq6D,KACL,IAAIl1E,EACA6E,EACA6rD,EACA8jB,EAAO1yE,KAAK8xD,aAAa4gB,OAC7B,IAAKx0E,EAAI,EAAG6E,EAAI2vE,EAAKt0E,OAAQF,EAAI6E,IAAK7E,EAAG,CAIrC,GAFA0wD,EAAM5uD,KAAKqmC,QAAQkpC,QAAQ,OAAOjjB,UAE9BomB,EAAKx0E,GAAG00E,OAAShkB,GAAOA,GAAO8jB,EAAKx0E,GAAG20E,MACvC,OAAOH,EAAKx0E,GAAG80E,OAEnB,GAAIN,EAAKx0E,GAAG20E,OAASjkB,GAAOA,GAAO8jB,EAAKx0E,GAAG00E,MACvC,OAAOF,EAAKx0E,GAAG80E,MAEvB,CAEA,MAAO,EACX,CAEA,SAASK,KACL,IAAIn1E,EACA6E,EACA6rD,EACA8jB,EAAO1yE,KAAK8xD,aAAa4gB,OAC7B,IAAKx0E,EAAI,EAAG6E,EAAI2vE,EAAKt0E,OAAQF,EAAI6E,IAAK7E,EAAG,CAIrC,GAFA0wD,EAAM5uD,KAAKqmC,QAAQkpC,QAAQ,OAAOjjB,UAE9BomB,EAAKx0E,GAAG00E,OAAShkB,GAAOA,GAAO8jB,EAAKx0E,GAAG20E,MACvC,OAAOH,EAAKx0E,GAAG0nD,KAEnB,GAAI8sB,EAAKx0E,GAAG20E,OAASjkB,GAAOA,GAAO8jB,EAAKx0E,GAAG00E,MACvC,OAAOF,EAAKx0E,GAAG0nD,IAEvB,CAEA,MAAO,EACX,CAEA,SAAS0tB,KACL,IAAIp1E,EACA6E,EACAmwE,EACAtkB,EACA8jB,EAAO1yE,KAAK8xD,aAAa4gB,OAC7B,IAAKx0E,EAAI,EAAG6E,EAAI2vE,EAAKt0E,OAAQF,EAAI6E,IAAK7E,EAMlC,GALAg1E,EAAMR,EAAKx0E,GAAG00E,OAASF,EAAKx0E,GAAG20E,MAAQ,GAAM,EAG7CjkB,EAAM5uD,KAAKqmC,QAAQkpC,QAAQ,OAAOjjB,UAG7BomB,EAAKx0E,GAAG00E,OAAShkB,GAAOA,GAAO8jB,EAAKx0E,GAAG20E,OACvCH,EAAKx0E,GAAG20E,OAASjkB,GAAOA,GAAO8jB,EAAKx0E,GAAG00E,MAExC,OACK5yE,KAAKo1D,OAAS9J,EAAMonB,EAAKx0E,GAAG00E,OAAOxd,QAAU8d,EAC9CR,EAAKx0E,GAAGy4B,OAKpB,OAAO32B,KAAKo1D,MAChB,CAEA,SAASme,GAAc/b,GAInB,OAHK9L,EAAW1rD,KAAM,mBAClBwzE,GAAiBv0E,KAAKe,MAEnBw3D,EAAWx3D,KAAKyzE,eAAiBzzE,KAAK0zE,UACjD,CAEA,SAASC,GAAcnc,GAInB,OAHK9L,EAAW1rD,KAAM,mBAClBwzE,GAAiBv0E,KAAKe,MAEnBw3D,EAAWx3D,KAAK4zE,eAAiB5zE,KAAK0zE,UACjD,CAEA,SAASG,GAAgBrc,GAIrB,OAHK9L,EAAW1rD,KAAM,qBAClBwzE,GAAiBv0E,KAAKe,MAEnBw3D,EAAWx3D,KAAK8zE,iBAAmB9zE,KAAK0zE,UACnD,CAEA,SAASK,GAAavc,EAAUhL,GAC5B,OAAOA,EAAOmnB,cAAcnc,EAChC,CAEA,SAASwc,GAAaxc,EAAUhL,GAC5B,OAAOA,EAAO+mB,cAAc/b,EAChC,CAEA,SAASyc,GAAezc,EAAUhL,GAC9B,OAAOA,EAAOqnB,gBAAgBrc,EAClC,CAEA,SAAS0c,GAAoB1c,EAAUhL,GACnC,OAAOA,EAAO2nB,sBAAwBpd,EAC1C,CAEA,SAASyc,KACL,IAIIt1E,EACA6E,EALAqxE,EAAa,GACbC,EAAa,GACbC,EAAe,GACfjZ,EAAc,GAGdqX,EAAO1yE,KAAK0yE,OAEhB,IAAKx0E,EAAI,EAAG6E,EAAI2vE,EAAKt0E,OAAQF,EAAI6E,IAAK7E,EAClCm2E,EAAW91E,KAAKo5D,GAAY+a,EAAKx0E,GAAG6a,OACpCq7D,EAAW71E,KAAKo5D,GAAY+a,EAAKx0E,GAAG0nD,OACpC0uB,EAAa/1E,KAAKo5D,GAAY+a,EAAKx0E,GAAG80E,SAEtC3X,EAAY98D,KAAKo5D,GAAY+a,EAAKx0E,GAAG6a,OACrCsiD,EAAY98D,KAAKo5D,GAAY+a,EAAKx0E,GAAG0nD,OACrCyV,EAAY98D,KAAKo5D,GAAY+a,EAAKx0E,GAAG80E,SAGzChzE,KAAK0zE,WAAa,IAAI1jB,OAAO,KAAOqL,EAAYn8D,KAAK,KAAO,IAAK,KACjEc,KAAKyzE,eAAiB,IAAIzjB,OAAO,KAAOqkB,EAAWn1E,KAAK,KAAO,IAAK,KACpEc,KAAK4zE,eAAiB,IAAI5jB,OAAO,KAAOokB,EAAWl1E,KAAK,KAAO,IAAK,KACpEc,KAAK8zE,iBAAmB,IAAI9jB,OACxB,KAAOskB,EAAap1E,KAAK,KAAO,IAChC,IAER,CAYA,SAASq1E,GAAuBr/D,EAAOs/D,GACnC9iB,EAAe,EAAG,CAACx8C,EAAOA,EAAM9W,QAAS,EAAGo2E,EAChD,CAyCA,SAASC,GAAen3C,GACpB,OAAOo3C,GAAqBz1E,KACxBe,KACAs9B,EACAt9B,KAAKu8D,OACLv8D,KAAKw8D,UACLx8D,KAAK8xD,aAAaoL,MAAMhB,IACxBl8D,KAAK8xD,aAAaoL,MAAMf,IAEhC,CAEA,SAASwY,GAAkBr3C,GACvB,OAAOo3C,GAAqBz1E,KACxBe,KACAs9B,EACAt9B,KAAK8qE,UACL9qE,KAAKiyE,aACL,EACA,EAER,CAEA,SAAS2C,KACL,OAAO7X,GAAY/8D,KAAKo1D,OAAQ,EAAG,EACvC,CAEA,SAASyf,KACL,OAAO9X,GAAY/8D,KAAK80E,cAAe,EAAG,EAC9C,CAEA,SAASC,KACL,IAAIC,EAAWh1E,KAAK8xD,aAAaoL,MACjC,OAAOH,GAAY/8D,KAAKo1D,OAAQ4f,EAAS9Y,IAAK8Y,EAAS7Y,IAC3D,CAEA,SAAS8Y,KACL,IAAID,EAAWh1E,KAAK8xD,aAAaoL,MACjC,OAAOH,GAAY/8D,KAAKwnE,WAAYwN,EAAS9Y,IAAK8Y,EAAS7Y,IAC/D,CAEA,SAASuY,GAAqBp3C,EAAOi/B,EAAMC,EAASN,EAAKC,GACrD,IAAI+Y,EACJ,OAAa,MAAT53C,EACOs/B,GAAW58D,KAAMk8D,EAAKC,GAAK/G,MAG9BmH,GADJ2Y,EAAcnY,GAAYz/B,EAAO4+B,EAAKC,MAElCI,EAAO2Y,GAEJC,GAAWl2E,KAAKe,KAAMs9B,EAAOi/B,EAAMC,EAASN,EAAKC,GAEhE,CAEA,SAASgZ,GAAW3N,EAAUjL,EAAMC,EAASN,EAAKC,GAC9C,IAAIiZ,EAAgB9Y,GAAmBkL,EAAUjL,EAAMC,EAASN,EAAKC,GACjEtG,EAAOgG,GAAcuZ,EAAchgB,KAAM,EAAGggB,EAAczY,WAK9D,OAHA38D,KAAKo1D,KAAKS,EAAKkG,kBACf/7D,KAAK41D,MAAMC,EAAKgR,eAChB7mE,KAAK61D,KAAKA,EAAKiR,cACR9mE,IACX,CAuBA,SAASq1E,GAAc/3C,GACnB,OAAgB,MAATA,EACD54B,KAAKwD,MAAMlI,KAAK41D,QAAU,GAAK,GAC/B51D,KAAK41D,MAAoB,GAAbt4B,EAAQ,GAAUt9B,KAAK41D,QAAU,EACvD,CApaAlE,EAAe,IAAK,EAAG,EAAG,WAC1BA,EAAe,KAAM,EAAG,EAAG,WAC3BA,EAAe,MAAO,EAAG,EAAG,WAC5BA,EAAe,OAAQ,EAAG,EAAG,WAC7BA,EAAe,QAAS,EAAG,EAAG,aAE9BA,EAAe,IAAK,CAAC,IAAK,GAAI,KAAM,WACpCA,EAAe,IAAK,CAAC,KAAM,GAAI,EAAG,WAClCA,EAAe,IAAK,CAAC,MAAO,GAAI,EAAG,WACnCA,EAAe,IAAK,CAAC,OAAQ,GAAI,EAAG,WAEpC2F,GAAc,IAAK0c,IACnB1c,GAAc,KAAM0c,IACpB1c,GAAc,MAAO0c,IACrB1c,GAAc,OAAQ2c,IACtB3c,GAAc,QAAS4c,IAEvBlc,GACI,CAAC,IAAK,KAAM,MAAO,OAAQ,UAC3B,SAAUz6B,EAAOmnB,EAAOyK,EAAQh6C,GAC5B,IAAIq4C,EAAM2B,EAAOF,QAAQsmB,UAAUh4C,EAAOpoB,EAAOg6C,EAAOf,SACpDZ,EACAI,EAAgBuB,GAAQ3B,IAAMA,EAE9BI,EAAgBuB,GAAQjC,WAAa3vB,CAE7C,IAGJ+5B,GAAc,IAAKN,IACnBM,GAAc,KAAMN,IACpBM,GAAc,MAAON,IACrBM,GAAc,OAAQN,IACtBM,GAAc,KAAM6c,IAEpBnc,GAAc,CAAC,IAAK,KAAM,MAAO,QAASK,IAC1CL,GAAc,CAAC,OAAO,SAAUz6B,EAAOmnB,EAAOyK,EAAQh6C,GAClD,IAAIwmC,EACAwT,EAAOF,QAAQmlB,uBACfz4B,EAAQpe,EAAMoe,MAAMwT,EAAOF,QAAQmlB,uBAGnCjlB,EAAOF,QAAQumB,oBACf9wB,EAAM2T,IAAQlJ,EAAOF,QAAQumB,oBAAoBj4C,EAAOoe,GAExD+I,EAAM2T,IAAQnlD,SAASqqB,EAAO,GAEtC,IA0OAo0B,EAAe,EAAG,CAAC,KAAM,GAAI,GAAG,WAC5B,OAAO1xD,KAAKwnE,WAAa,GAC7B,IAEA9V,EAAe,EAAG,CAAC,KAAM,GAAI,GAAG,WAC5B,OAAO1xD,KAAK80E,cAAgB,GAChC,IAMAP,GAAuB,OAAQ,YAC/BA,GAAuB,QAAS,YAChCA,GAAuB,OAAQ,eAC/BA,GAAuB,QAAS,eAIhClgB,GAAa,WAAY,MACzBA,GAAa,cAAe,MAI5BU,GAAgB,WAAY,GAC5BA,GAAgB,cAAe,GAI/BsC,GAAc,IAAKL,IACnBK,GAAc,IAAKL,IACnBK,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,OAAQR,GAAWN,IACjCc,GAAc,OAAQR,GAAWN,IACjCc,GAAc,QAASP,GAAWN,IAClCa,GAAc,QAASP,GAAWN,IAElCyB,GACI,CAAC,OAAQ,QAAS,OAAQ,UAC1B,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GAC3BqnD,EAAKrnD,EAAMs5B,OAAO,EAAG,IAAM8mB,GAAMh4B,EACrC,IAGJ26B,GAAkB,CAAC,KAAM,OAAO,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GAC3DqnD,EAAKrnD,GAASo2C,EAAMiQ,kBAAkBj+B,EAC1C,IAqEAo0B,EAAe,IAAK,EAAG,KAAM,WAI7B2C,GAAa,UAAW,KAIxBU,GAAgB,UAAW,GAI3BsC,GAAc,IAAKjB,IACnB2B,GAAc,KAAK,SAAUz6B,EAAOmnB,GAChCA,EAAM4T,IAA8B,GAApB/C,GAAMh4B,GAAS,EACnC,IAYAo0B,EAAe,IAAK,CAAC,KAAM,GAAI,KAAM,QAIrC2C,GAAa,OAAQ,KAGrBU,GAAgB,OAAQ,GAIxBsC,GAAc,IAAKZ,IACnBY,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,MAAM,SAAUG,EAAUhL,GAEpC,OAAOgL,EACDhL,EAAOyD,yBAA2BzD,EAAO0D,cACzC1D,EAAOuD,8BACjB,IAEAgI,GAAc,CAAC,IAAK,MAAOO,IAC3BP,GAAc,MAAM,SAAUz6B,EAAOmnB,GACjCA,EAAM6T,IAAQhD,GAAMh4B,EAAMoe,MAAM+a,IAAW,GAC/C,IAIA,IAAI+e,GAAmB9f,GAAW,QAAQ,GAyB1C,SAAS+f,GAAgBn4C,GACrB,IAAIq/B,EACAj4D,KAAKqX,OACA/b,KAAKqmC,QAAQkpC,QAAQ,OAASvvE,KAAKqmC,QAAQkpC,QAAQ,SAAW,OAC/D,EACR,OAAgB,MAATjyC,EAAgBq/B,EAAY38D,KAAKulC,IAAIjI,EAAQq/B,EAAW,IACnE,CA3BAjL,EAAe,MAAO,CAAC,OAAQ,GAAI,OAAQ,aAI3C2C,GAAa,YAAa,OAG1BU,GAAgB,YAAa,GAI7BsC,GAAc,MAAOT,IACrBS,GAAc,OAAQf,IACtByB,GAAc,CAAC,MAAO,SAAS,SAAUz6B,EAAOmnB,EAAOyK,GACnDA,EAAOoY,WAAahS,GAAMh4B,EAC9B,IAgBAo0B,EAAe,IAAK,CAAC,KAAM,GAAI,EAAG,UAIlC2C,GAAa,SAAU,KAIvBU,GAAgB,SAAU,IAI1BsC,GAAc,IAAKZ,IACnBY,GAAc,KAAMZ,GAAWJ,IAC/B0B,GAAc,CAAC,IAAK,MAAOS,IAI3B,IAAIkd,GAAehgB,GAAW,WAAW,GAIzChE,EAAe,IAAK,CAAC,KAAM,GAAI,EAAG,UAIlC2C,GAAa,SAAU,KAIvBU,GAAgB,SAAU,IAI1BsC,GAAc,IAAKZ,IACnBY,GAAc,KAAMZ,GAAWJ,IAC/B0B,GAAc,CAAC,IAAK,MAAOU,IAI3B,IA8CIvjD,GAAOygE,GA9CPC,GAAelgB,GAAW,WAAW,GA+CzC,IA3CAhE,EAAe,IAAK,EAAG,GAAG,WACtB,SAAU1xD,KAAKspE,cAAgB,IACnC,IAEA5X,EAAe,EAAG,CAAC,KAAM,GAAI,GAAG,WAC5B,SAAU1xD,KAAKspE,cAAgB,GACnC,IAEA5X,EAAe,EAAG,CAAC,MAAO,GAAI,EAAG,eACjCA,EAAe,EAAG,CAAC,OAAQ,GAAI,GAAG,WAC9B,OAA4B,GAArB1xD,KAAKspE,aAChB,IACA5X,EAAe,EAAG,CAAC,QAAS,GAAI,GAAG,WAC/B,OAA4B,IAArB1xD,KAAKspE,aAChB,IACA5X,EAAe,EAAG,CAAC,SAAU,GAAI,GAAG,WAChC,OAA4B,IAArB1xD,KAAKspE,aAChB,IACA5X,EAAe,EAAG,CAAC,UAAW,GAAI,GAAG,WACjC,OAA4B,IAArB1xD,KAAKspE,aAChB,IACA5X,EAAe,EAAG,CAAC,WAAY,GAAI,GAAG,WAClC,OAA4B,IAArB1xD,KAAKspE,aAChB,IACA5X,EAAe,EAAG,CAAC,YAAa,GAAI,GAAG,WACnC,OAA4B,IAArB1xD,KAAKspE,aAChB,IAIAjV,GAAa,cAAe,MAI5BU,GAAgB,cAAe,IAI/BsC,GAAc,IAAKT,GAAWR,IAC9BiB,GAAc,KAAMT,GAAWP,IAC/BgB,GAAc,MAAOT,GAAWN,IAG3BphD,GAAQ,OAAQA,GAAM9W,QAAU,EAAG8W,IAAS,IAC7CmiD,GAAcniD,GAAO6hD,IAGzB,SAAS8e,GAAQv4C,EAAOmnB,GACpBA,EAAMiU,IAAepD,GAAuB,KAAhB,KAAOh4B,GACvC,CAEA,IAAKpoB,GAAQ,IAAKA,GAAM9W,QAAU,EAAG8W,IAAS,IAC1C6iD,GAAc7iD,GAAO2gE,IAYzB,SAASC,KACL,OAAO91E,KAAK+qD,OAAS,MAAQ,EACjC,CAEA,SAASgrB,KACL,OAAO/1E,KAAK+qD,OAAS,6BAA+B,EACxD,CAfA4qB,GAAoBjgB,GAAW,gBAAgB,GAI/ChE,EAAe,IAAK,EAAG,EAAG,YAC1BA,EAAe,KAAM,EAAG,EAAG,YAY3B,IAAIskB,GAAQ/mB,EAAOnwD,UAwGnB,SAASm3E,GAAW34C,GAChB,OAAOwqC,GAAoB,IAARxqC,EACvB,CAEA,SAAS44C,KACL,OAAOpO,GAAYnpE,MAAM,KAAMR,WAAWg4E,WAC9C,CAEA,SAASC,GAAmBl0C,GACxB,OAAOA,CACX,CAhHA8zC,GAAMzwC,IAAMA,GACZywC,GAAMllB,SAAWse,GACjB4G,GAAM3vC,MAAQA,GACd2vC,GAAM1vB,KAAOA,GACb0vB,GAAMtG,MAAQA,GACdsG,GAAM7vD,OAASA,GACf6vD,GAAMpzE,KAAOA,GACbozE,GAAM7E,QAAUA,GAChB6E,GAAMrzE,GAAKA,GACXqzE,GAAM5E,MAAQA,GACd4E,GAAMzpE,IAAMwpD,GACZigB,GAAMzD,UAAYA,GAClByD,GAAM/H,QAAUA,GAChB+H,GAAM9H,SAAWA,GACjB8H,GAAMrG,UAAYA,GAClBqG,GAAMjG,OAASA,GACfiG,GAAM/F,cAAgBA,GACtB+F,GAAM9F,eAAiBA,GACvB8F,GAAMnoB,QAAUwkB,GAChB2D,GAAM1E,KAAOA,GACb0E,GAAMxpB,OAASA,GACfwpB,GAAMlkB,WAAaA,GACnBkkB,GAAMrxE,IAAMmlE,GACZkM,GAAM5+D,IAAMwyD,GACZoM,GAAM1D,aAAeA,GACrB0D,GAAMnmB,IAAMmG,GACZggB,GAAMzG,QAAUA,GAChByG,GAAMnJ,SAAWA,GACjBmJ,GAAM5I,QAAUA,GAChB4I,GAAM7D,SAAWA,GACjB6D,GAAMrF,OAASA,GACfqF,GAAMvF,YAAcA,GACpBuF,GAAMpF,QAAUA,GACM,qBAAXvuE,QAAwC,MAAdA,OAAOg0E,MACxCL,GAAM3zE,OAAOg0E,IAAI,+BAAiC,WAC9C,MAAO,UAAYr2E,KAAKmmB,SAAW,GACvC,GAEJ6vD,GAAM5D,OAASA,GACf4D,GAAMp3E,SAAWA,GACjBo3E,GAAM9D,KAAOA,GACb8D,GAAM1pB,QAAUA,GAChB0pB,GAAMxD,aAAeA,GACrBwD,GAAMjD,QAAUI,GAChB6C,GAAMM,UAAYlD,GAClB4C,GAAMO,QAAUlD,GAChB2C,GAAMQ,QAAUlD,GAChB0C,GAAM5gB,KAAOoG,GACbwa,GAAM7gB,WAAasG,GACnBua,GAAMxO,SAAWiN,GACjBuB,GAAMlB,YAAcH,GACpBqB,GAAMpL,QAAUoL,GAAMrL,SAAW0K,GACjCW,GAAMpgB,MAAQ+E,GACdqb,GAAMlgB,YAAc8E,GACpBob,GAAMzZ,KAAOyZ,GAAMnL,MAAQvN,GAC3B0Y,GAAMlL,QAAUkL,GAAMS,SAAWlZ,GACjCyY,GAAMjZ,YAAcgY,GACpBiB,GAAMU,gBAAkBzB,GACxBe,GAAMW,eAAiB/B,GACvBoB,GAAMY,sBAAwB/B,GAC9BmB,GAAMngB,KAAO2f,GACbQ,GAAMrX,IAAMqX,GAAMjL,KAAOvL,GACzBwW,GAAMxZ,QAAUkD,GAChBsW,GAAM/D,WAAatS,GACnBqW,GAAMrZ,UAAY8Y,GAClBO,GAAMzN,KAAOyN,GAAMxV,MAAQiB,GAC3BuU,GAAM3M,OAAS2M,GAAMrV,QAAU+U,GAC/BM,GAAMt+B,OAASs+B,GAAMhV,QAAU4U,GAC/BI,GAAM1M,YAAc0M,GAAMhL,aAAe2K,GACzCK,GAAMzsB,UAAY6iB,GAClB4J,GAAMrtB,IAAMgkB,GACZqJ,GAAM9qB,MAAQ0hB,GACdoJ,GAAMG,UAAYrJ,GAClBkJ,GAAMhJ,qBAAuBA,GAC7BgJ,GAAMa,MAAQ5J,GACd+I,GAAM3I,QAAUA,GAChB2I,GAAM1I,YAAcA,GACpB0I,GAAMzI,MAAQA,GACdyI,GAAMrM,MAAQ4D,GACdyI,GAAM/qB,SAAW6qB,GACjBE,GAAMhrB,SAAW+qB,GACjBC,GAAMc,MAAQznB,EACV,kDACAmmB,IAEJQ,GAAM/c,OAAS5J,EACX,mDACAsL,IAEJqb,GAAMtL,MAAQrb,EACV,iDACAmM,IAEJwa,GAAMjwB,KAAOsJ,EACT,2GACAqd,IAEJsJ,GAAMe,aAAe1nB,EACjB,0GACA6d,IAeJ,IAAI8J,GAAU1mB,EAAOxxD,UAuCrB,SAASm4E,GAAM9wD,EAAQzgB,EAAOwxE,EAAOC,GACjC,IAAI3qB,EAASsW,KACTna,EAAM4D,IAAYsD,IAAIsnB,EAAQzxE,GAClC,OAAO8mD,EAAO0qB,GAAOvuB,EAAKxiC,EAC9B,CAEA,SAASixD,GAAejxD,EAAQzgB,EAAOwxE,GAQnC,GAPIlrB,EAAS7lC,KACTzgB,EAAQygB,EACRA,OAASnY,GAGbmY,EAASA,GAAU,GAEN,MAATzgB,EACA,OAAOuxE,GAAM9wD,EAAQzgB,EAAOwxE,EAAO,SAGvC,IAAIh5E,EACAqmD,EAAM,GACV,IAAKrmD,EAAI,EAAGA,EAAI,GAAIA,IAChBqmD,EAAIrmD,GAAK+4E,GAAM9wD,EAAQjoB,EAAGg5E,EAAO,SAErC,OAAO3yB,CACX,CAUA,SAAS8yB,GAAiBC,EAAcnxD,EAAQzgB,EAAOwxE,GACvB,mBAAjBI,GACHtrB,EAAS7lC,KACTzgB,EAAQygB,EACRA,OAASnY,GAGbmY,EAASA,GAAU,KAGnBzgB,EADAygB,EAASmxD,EAETA,GAAe,EAEXtrB,EAAS7lC,KACTzgB,EAAQygB,EACRA,OAASnY,GAGbmY,EAASA,GAAU,IAGvB,IAEIjoB,EAFAsuD,EAASsW,KACTxsD,EAAQghE,EAAe9qB,EAAO0Q,MAAMhB,IAAM,EAE1C3X,EAAM,GAEV,GAAa,MAAT7+C,EACA,OAAOuxE,GAAM9wD,GAASzgB,EAAQ4Q,GAAS,EAAG4gE,EAAO,OAGrD,IAAKh5E,EAAI,EAAGA,EAAI,EAAGA,IACfqmD,EAAIrmD,GAAK+4E,GAAM9wD,GAASjoB,EAAIoY,GAAS,EAAG4gE,EAAO,OAEnD,OAAO3yB,CACX,CAEA,SAASgzB,GAAWpxD,EAAQzgB,GACxB,OAAO0xE,GAAejxD,EAAQzgB,EAAO,SACzC,CAEA,SAAS8xE,GAAgBrxD,EAAQzgB,GAC7B,OAAO0xE,GAAejxD,EAAQzgB,EAAO,cACzC,CAEA,SAAS+xE,GAAaH,EAAcnxD,EAAQzgB,GACxC,OAAO2xE,GAAiBC,EAAcnxD,EAAQzgB,EAAO,WACzD,CAEA,SAASgyE,GAAkBJ,EAAcnxD,EAAQzgB,GAC7C,OAAO2xE,GAAiBC,EAAcnxD,EAAQzgB,EAAO,gBACzD,CAEA,SAASiyE,GAAgBL,EAAcnxD,EAAQzgB,GAC3C,OAAO2xE,GAAiBC,EAAcnxD,EAAQzgB,EAAO,cACzD,CA7HAsxE,GAAQlmB,SAAWA,EACnBkmB,GAAQ3kB,eAAiBA,EACzB2kB,GAAQ7kB,YAAcA,EACtB6kB,GAAQplB,QAAUA,EAClBolB,GAAQvN,SAAW2M,GACnBY,GAAQ/F,WAAamF,GACrBY,GAAQhjB,aAAeA,EACvBgjB,GAAQ5iB,WAAaA,GACrB4iB,GAAQnnB,IAAMA,EACdmnB,GAAQtE,KAAOD,GACfuE,GAAQ1B,UAAYxC,GACpBkE,GAAQ1O,gBAAkB2K,GAC1B+D,GAAQrD,cAAgBA,GACxBqD,GAAQzD,cAAgBA,GACxByD,GAAQnD,gBAAkBA,GAE1BmD,GAAQ/d,OAASS,GACjBsd,GAAQhe,YAAca,GACtBmd,GAAQ5d,YAAcmB,GACtByc,GAAQ7d,YAAcA,GACtB6d,GAAQ9d,iBAAmBA,GAC3B8d,GAAQza,KAAOU,GACf+Z,GAAQY,eAAiBva,GACzB2Z,GAAQa,eAAiBza,GAEzB4Z,GAAQjZ,SAAWU,GACnBuY,GAAQnZ,YAAciB,GACtBkY,GAAQlZ,cAAgBc,GACxBoY,GAAQvZ,cAAgB4B,GAExB2X,GAAQ9Y,cAAgBA,GACxB8Y,GAAQ/Y,mBAAqBA,GAC7B+Y,GAAQhZ,iBAAmBA,GAE3BgZ,GAAQ7V,KAAOL,GACfkW,GAAQxpB,SAAWkU,GA4FnBmB,GAAmB,KAAM,CACrB6P,KAAM,CACF,CACIE,MAAO,aACPC,MAAO,IACPl8C,OAAQ,EACR5d,KAAM,cACNi6D,OAAQ,KACRptB,KAAM,MAEV,CACIgtB,MAAO,aACPC,OAAO,IACPl8C,OAAQ,EACR5d,KAAM,gBACNi6D,OAAQ,KACRptB,KAAM,OAGdkc,uBAAwB,uBACxBlQ,QAAS,SAAUl6C,GACf,IAAIlY,EAAIkY,EAAS,GAWjB,OAAOA,GATgC,IAA/B49C,GAAO59C,EAAS,IAAO,IACjB,KACM,IAANlY,EACA,KACM,IAANA,EACA,KACM,IAANA,EACA,KACA,KAElB,IAKJ8rD,EAAMgmB,KAAOjiB,EACT,wDACAwT,IAEJvX,EAAMwsB,SAAWzoB,EACb,gEACAyT,IAGJ,IAAIiV,GAAUrzE,KAAKkjB,IAEnB,SAASA,KACL,IAAI3f,EAAOjI,KAAKo4C,MAahB,OAXAp4C,KAAKirE,cAAgB8M,GAAQ/3E,KAAKirE,eAClCjrE,KAAKkrE,MAAQ6M,GAAQ/3E,KAAKkrE,OAC1BlrE,KAAK25D,QAAUoe,GAAQ/3E,KAAK25D,SAE5B1xD,EAAK+iE,aAAe+M,GAAQ9vE,EAAK+iE,cACjC/iE,EAAK+4D,QAAU+W,GAAQ9vE,EAAK+4D,SAC5B/4D,EAAK04D,QAAUoX,GAAQ9vE,EAAK04D,SAC5B14D,EAAKu4D,MAAQuX,GAAQ9vE,EAAKu4D,OAC1Bv4D,EAAKgxD,OAAS8e,GAAQ9vE,EAAKgxD,QAC3BhxD,EAAKyiE,MAAQqN,GAAQ9vE,EAAKyiE,OAEnB1qE,IACX,CAEA,SAASg4E,GAActmD,EAAU4L,EAAOx8B,EAAOksB,GAC3C,IAAI68C,EAAQW,GAAeltC,EAAOx8B,GAMlC,OAJA4wB,EAASu5C,eAAiBj+C,EAAY68C,EAAMoB,cAC5Cv5C,EAASw5C,OAASl+C,EAAY68C,EAAMqB,MACpCx5C,EAASioC,SAAW3sC,EAAY68C,EAAMlQ,QAE/BjoC,EAASy5C,SACpB,CAGA,SAAS8M,GAAM36C,EAAOx8B,GAClB,OAAOk3E,GAAch4E,KAAMs9B,EAAOx8B,EAAO,EAC7C,CAGA,SAASo3E,GAAW56C,EAAOx8B,GACvB,OAAOk3E,GAAch4E,KAAMs9B,EAAOx8B,GAAQ,EAC9C,CAEA,SAASq3E,GAAQzgE,GACb,OAAIA,EAAS,EACFhT,KAAKi+B,MAAMjrB,GAEXhT,KAAKwD,KAAKwP,EAEzB,CAEA,SAAS0gE,KACL,IAIIpX,EACAL,EACAH,EACAkK,EACA2N,EARArN,EAAehrE,KAAKirE,cACpBF,EAAO/qE,KAAKkrE,MACZjS,EAASj5D,KAAK25D,QACd1xD,EAAOjI,KAAKo4C,MAgDhB,OArCS4yB,GAAgB,GAAKD,GAAQ,GAAK9R,GAAU,GAC5C+R,GAAgB,GAAKD,GAAQ,GAAK9R,GAAU,IAGjD+R,GAAuD,MAAvCmN,GAAQG,GAAarf,GAAU8R,GAC/CA,EAAO,EACP9R,EAAS,GAKbhxD,EAAK+iE,aAAeA,EAAe,IAEnChK,EAAU3L,GAAS2V,EAAe,KAClC/iE,EAAK+4D,QAAUA,EAAU,GAEzBL,EAAUtL,GAAS2L,EAAU,IAC7B/4D,EAAK04D,QAAUA,EAAU,GAEzBH,EAAQnL,GAASsL,EAAU,IAC3B14D,EAAKu4D,MAAQA,EAAQ,GAErBuK,GAAQ1V,GAASmL,EAAQ,IAIzBvH,GADAof,EAAiBhjB,GAASkjB,GAAaxN,IAEvCA,GAAQoN,GAAQG,GAAaD,IAG7B3N,EAAQrV,GAAS4D,EAAS,IAC1BA,GAAU,GAEVhxD,EAAK8iE,KAAOA,EACZ9iE,EAAKgxD,OAASA,EACdhxD,EAAKyiE,MAAQA,EAEN1qE,IACX,CAEA,SAASu4E,GAAaxN,GAGlB,OAAe,KAAPA,EAAe,MAC3B,CAEA,SAASuN,GAAarf,GAElB,OAAiB,OAATA,EAAmB,IAC/B,CAEA,SAASuf,GAAG/jB,GACR,IAAKz0D,KAAK6tD,UACN,OAAOU,IAEX,IAAIwc,EACA9R,EACA+R,EAAehrE,KAAKirE,cAIxB,GAAc,WAFdxW,EAAQD,GAAeC,KAEY,YAAVA,GAAiC,SAAVA,EAG5C,OAFAsW,EAAO/qE,KAAKkrE,MAAQF,EAAe,MACnC/R,EAASj5D,KAAK25D,QAAU4e,GAAaxN,GAC7BtW,GACJ,IAAK,QACD,OAAOwE,EACX,IAAK,UACD,OAAOA,EAAS,EACpB,IAAK,OACD,OAAOA,EAAS,QAKxB,OADA8R,EAAO/qE,KAAKkrE,MAAQxmE,KAAKqX,MAAMu8D,GAAat4E,KAAK25D,UACzClF,GACJ,IAAK,OACD,OAAOsW,EAAO,EAAIC,EAAe,OACrC,IAAK,MACD,OAAOD,EAAOC,EAAe,MACjC,IAAK,OACD,OAAc,GAAPD,EAAYC,EAAe,KACtC,IAAK,SACD,OAAc,KAAPD,EAAcC,EAAe,IACxC,IAAK,SACD,OAAc,MAAPD,EAAeC,EAAe,IAEzC,IAAK,cACD,OAAOtmE,KAAKi+B,MAAa,MAAPooC,GAAgBC,EACtC,QACI,MAAM,IAAIvmE,MAAM,gBAAkBgwD,GAGlD,CAGA,SAASgkB,KACL,OAAKz4E,KAAK6tD,UAIN7tD,KAAKirE,cACQ,MAAbjrE,KAAKkrE,MACJlrE,KAAK25D,QAAU,GAAM,OACK,QAA3BrE,GAAMt1D,KAAK25D,QAAU,IANdpL,GAQf,CAEA,SAASmqB,GAAOtwB,GACZ,OAAO,WACH,OAAOpoD,KAAKw4E,GAAGpwB,EACnB,CACJ,CAEA,IAAIuwB,GAAiBD,GAAO,MACxBE,GAAYF,GAAO,KACnBG,GAAYH,GAAO,KACnBI,GAAUJ,GAAO,KACjBK,GAASL,GAAO,KAChBM,GAAUN,GAAO,KACjBO,GAAWP,GAAO,KAClBQ,GAAaR,GAAO,KACpBS,GAAUT,GAAO,KAErB,SAASU,KACL,OAAO5O,GAAexqE,KAC1B,CAEA,SAASq5E,GAAM5kB,GAEX,OADAA,EAAQD,GAAeC,GAChBz0D,KAAK6tD,UAAY7tD,KAAKy0D,EAAQ,OAASlG,GAClD,CAEA,SAAS+qB,GAAWvgE,GAChB,OAAO,WACH,OAAO/Y,KAAK6tD,UAAY7tD,KAAKo4C,MAAMr/B,GAAQw1C,GAC/C,CACJ,CAEA,IAAIyc,GAAesO,GAAW,gBAC1BtY,GAAUsY,GAAW,WACrB3Y,GAAU2Y,GAAW,WACrB9Y,GAAQ8Y,GAAW,SACnBvO,GAAOuO,GAAW,QAClBrgB,GAASqgB,GAAW,UACpB5O,GAAQ4O,GAAW,SAEvB,SAASzO,KACL,OAAOxV,GAASr1D,KAAK+qE,OAAS,EAClC,CAEA,IAAIhvD,GAAQrX,KAAKqX,MACbw9D,GAAa,CACT/lB,GAAI,GACJlzD,EAAG,GACHy7B,EAAG,GACHt4B,EAAG,GACHlE,EAAG,GACHiE,EAAG,KACHqwD,EAAG,IAIX,SAAS2lB,GAAkBt3C,EAAQxqB,EAAQu8C,EAAeC,EAAU1H,GAChE,OAAOA,EAAOwH,aAAat8C,GAAU,IAAKu8C,EAAe/xB,EAAQgyB,EACrE,CAEA,SAASulB,GAAeC,EAAgBzlB,EAAeslB,EAAY/sB,GAC/D,IAAI96B,EAAW84C,GAAekP,GAAgB9xD,MAC1Co5C,EAAUjlD,GAAM2V,EAAS8mD,GAAG,MAC5B7X,EAAU5kD,GAAM2V,EAAS8mD,GAAG,MAC5BhY,EAAQzkD,GAAM2V,EAAS8mD,GAAG,MAC1BzN,EAAOhvD,GAAM2V,EAAS8mD,GAAG,MACzBvf,EAASl9C,GAAM2V,EAAS8mD,GAAG,MAC3B3N,EAAQ9uD,GAAM2V,EAAS8mD,GAAG,MAC1B9N,EAAQ3uD,GAAM2V,EAAS8mD,GAAG,MAC1B7rE,EACKq0D,GAAWuY,EAAW/lB,IAAM,CAAC,IAAKwN,IAClCA,EAAUuY,EAAWj5E,GAAK,CAAC,KAAM0gE,IACjCL,GAAW,GAAK,CAAC,MACjBA,EAAU4Y,EAAWx9C,GAAK,CAAC,KAAM4kC,IACjCH,GAAS,GAAK,CAAC,MACfA,EAAQ+Y,EAAW91E,GAAK,CAAC,KAAM+8D,IAC/BuK,GAAQ,GAAK,CAAC,MACdA,EAAOwO,EAAWh6E,GAAK,CAAC,KAAMwrE,GAgBvC,OAdoB,MAAhBwO,EAAW/1E,IACXmJ,EACIA,GACCk+D,GAAS,GAAK,CAAC,MACfA,EAAQ0O,EAAW/1E,GAAK,CAAC,KAAMqnE,KAExCl+D,EAAIA,GACCssD,GAAU,GAAK,CAAC,MAChBA,EAASsgB,EAAW1lB,GAAK,CAAC,KAAMoF,IAChCyR,GAAS,GAAK,CAAC,MAAS,CAAC,KAAMA,IAElC,GAAKzW,EACPtnD,EAAE,IAAM+sE,EAAiB,EACzB/sE,EAAE,GAAK6/C,EACAgtB,GAAkB76E,MAAM,KAAMgO,EACzC,CAGA,SAASgtE,GAA2BC,GAChC,YAAyB5rE,IAArB4rE,EACO79D,GAEqB,oBAArB69D,IACP79D,GAAQ69D,GACD,EAGf,CAGA,SAASC,GAA4BC,EAAWC,GAC5C,YAA8B/rE,IAA1BurE,GAAWO,UAGD9rE,IAAV+rE,EACOR,GAAWO,IAEtBP,GAAWO,GAAaC,EACN,MAAdD,IACAP,GAAW/lB,GAAKumB,EAAQ,IAErB,GACX,CAEA,SAAS7I,GAAS8I,EAAeC,GAC7B,IAAKj6E,KAAK6tD,UACN,OAAO7tD,KAAK8xD,aAAaK,cAG7B,IAEI3F,EACAuE,EAHAmpB,GAAa,EACbC,EAAKZ,GAyBT,MArB6B,kBAAlBS,IACPC,EAAgBD,EAChBA,GAAgB,GAES,mBAAlBA,IACPE,EAAaF,GAEY,kBAAlBC,IACPE,EAAKt7E,OAAOuB,OAAO,CAAC,EAAGm5E,GAAYU,GACZ,MAAnBA,EAAc35E,GAAiC,MAApB25E,EAAczmB,KACzC2mB,EAAG3mB,GAAKymB,EAAc35E,EAAI,IAKlCywD,EAAS0oB,GAAez5E,MAAOk6E,EAAYC,EAD3C3tB,EAASxsD,KAAK8xD,cAGVooB,IACAnpB,EAASvE,EAAO4H,YAAYp0D,KAAM+wD,IAG/BvE,EAAOykB,WAAWlgB,EAC7B,CAEA,IAAIqpB,GAAQ11E,KAAKkjB,IAEjB,SAAS9U,GAAKvP,GACV,OAAQA,EAAI,IAAMA,EAAI,KAAOA,CACjC,CAEA,SAAS82E,KAQL,IAAKr6E,KAAK6tD,UACN,OAAO7tD,KAAK8xD,aAAaK,cAG7B,IAGIwO,EACAH,EACAkK,EACApqE,EAEAg6E,EACAC,EACAC,EACAC,EAXAzZ,EAAUoZ,GAAMp6E,KAAKirE,eAAiB,IACtCF,EAAOqP,GAAMp6E,KAAKkrE,OAClBjS,EAASmhB,GAAMp6E,KAAK25D,SAKpB+gB,EAAQ16E,KAAK44E,YAMjB,OAAK8B,GAOL/Z,EAAUtL,GAAS2L,EAAU,IAC7BR,EAAQnL,GAASsL,EAAU,IAC3BK,GAAW,GACXL,GAAW,GAGX+J,EAAQrV,GAAS4D,EAAS,IAC1BA,GAAU,GAGV34D,EAAI0gE,EAAUA,EAAQ2Z,QAAQ,GAAG/+C,QAAQ,SAAU,IAAM,GAEzD0+C,EAAYI,EAAQ,EAAI,IAAM,GAC9BH,EAASznE,GAAK9S,KAAK25D,WAAa7mD,GAAK4nE,GAAS,IAAM,GACpDF,EAAW1nE,GAAK9S,KAAKkrE,SAAWp4D,GAAK4nE,GAAS,IAAM,GACpDD,EAAU3nE,GAAK9S,KAAKirE,iBAAmBn4D,GAAK4nE,GAAS,IAAM,GAGvDJ,EACA,KACC5P,EAAQ6P,EAAS7P,EAAQ,IAAM,KAC/BzR,EAASshB,EAASthB,EAAS,IAAM,KACjC8R,EAAOyP,EAAWzP,EAAO,IAAM,KAC/BvK,GAASG,GAAWK,EAAU,IAAM,KACpCR,EAAQia,EAAUja,EAAQ,IAAM,KAChCG,EAAU8Z,EAAU9Z,EAAU,IAAM,KACpCK,EAAUyZ,EAAUn6E,EAAI,IAAM,KA9BxB,KAgCf,CAEA,IAAIs6E,GAAUnQ,GAAS3rE,UAwGvB,OAtGA87E,GAAQ/sB,QAAUyc,GAClBsQ,GAAQhzD,IAAMA,GACdgzD,GAAQr1C,IAAM0yC,GACd2C,GAAQ/N,SAAWqL,GACnB0C,GAAQpC,GAAKA,GACboC,GAAQjC,eAAiBA,GACzBiC,GAAQhC,UAAYA,GACpBgC,GAAQ/B,UAAYA,GACpB+B,GAAQ9B,QAAUA,GAClB8B,GAAQ7B,OAASA,GACjB6B,GAAQ5B,QAAUA,GAClB4B,GAAQ3B,SAAWA,GACnB2B,GAAQ1B,WAAaA,GACrB0B,GAAQzB,QAAUA,GAClByB,GAAQtuB,QAAUmsB,GAClBmC,GAAQzP,QAAUiN,GAClBwC,GAAQv0C,MAAQ+yC,GAChBwB,GAAQruE,IAAM8sE,GACduB,GAAQ5P,aAAeA,GACvB4P,GAAQ5Z,QAAUA,GAClB4Z,GAAQja,QAAUA,GAClBia,GAAQpa,MAAQA,GAChBoa,GAAQ7P,KAAOA,GACf6P,GAAQ/P,MAAQA,GAChB+P,GAAQ3hB,OAASA,GACjB2hB,GAAQlQ,MAAQA,GAChBkQ,GAAQ1J,SAAWA,GACnB0J,GAAQnK,YAAc4J,GACtBO,GAAQh8E,SAAWy7E,GACnBO,GAAQxI,OAASiI,GACjBO,GAAQpuB,OAASA,GACjBouB,GAAQ9oB,WAAaA,GAErB8oB,GAAQC,YAAcxrB,EAClB,sFACAgrB,IAEJO,GAAQtJ,KAAOA,GAIf5f,EAAe,IAAK,EAAG,EAAG,QAC1BA,EAAe,IAAK,EAAG,EAAG,WAI1B2F,GAAc,IAAKL,IACnBK,GAAc,IAAKF,IACnBY,GAAc,KAAK,SAAUz6B,EAAOmnB,EAAOyK,GACvCA,EAAO5S,GAAK,IAAIwE,KAAyB,IAApBupB,WAAW/sC,GACpC,IACAy6B,GAAc,KAAK,SAAUz6B,EAAOmnB,EAAOyK,GACvCA,EAAO5S,GAAK,IAAIwE,KAAKwU,GAAMh4B,GAC/B,IAIAguB,EAAMjI,QAAU,SAEhBkI,EAAgBuc,IAEhBxc,EAAMd,GAAKwrB,GACX1qB,EAAMl0C,IAAMA,GACZk0C,EAAM3mD,IAAMA,GACZ2mD,EAAMvK,IAAMA,GACZuK,EAAM3C,IAAM4D,EACZjB,EAAM4mB,KAAO+D,GACb3qB,EAAM2N,OAASse,GACfjsB,EAAMW,OAASA,EACfX,EAAMkB,OAASqW,GACfvX,EAAMgjB,QAAUhgB,EAChBhD,EAAM55B,SAAW84C,GACjBlf,EAAM1C,SAAWA,EACjB0C,EAAMyS,SAAW0Z,GACjBnsB,EAAM6qB,UAAYD,GAClB5qB,EAAMwG,WAAagR,GACnBxX,EAAM8f,WAAaA,GACnB9f,EAAM0N,YAAcwe,GACpBlsB,EAAMuS,YAAc8Z,GACpBrsB,EAAMyX,aAAeA,GACrBzX,EAAM2X,aAAeA,GACrB3X,EAAM0W,QAAUmB,GAChB7X,EAAMwS,cAAgB4Z,GACtBpsB,EAAMkJ,eAAiBA,GACvBlJ,EAAMwvB,qBAAuBnB,GAC7BruB,EAAMyvB,sBAAwBlB,GAC9BvuB,EAAMkkB,eAAiBN,GACvB5jB,EAAMxsD,UAAYk3E,GAGlB1qB,EAAM0vB,UAAY,CACdC,eAAgB,mBAChBC,uBAAwB,sBACxBC,kBAAmB,0BACnB7iB,KAAM,aACN8iB,KAAM,QACNC,aAAc,WACdC,QAAS,eACT3iB,KAAM,aACNN,MAAO,WAGJ/M,CAEX,CA7iLoFpI,sCCJV9jD,QAGjE,WAAc,aAEnB,IAAIisD,EA6GAl3B,EA3GJ,SAASm3B,IACL,OAAOD,EAAa1sD,MAAM,KAAMR,UACpC,CAIA,SAASotD,EAAiBC,GACtBH,EAAeG,CACnB,CAEA,SAAS/sD,EAAQ6+B,GACb,OAAOA,aAAiB9+B,OAAmD,mBAA1CK,OAAOC,UAAUF,SAASK,KAAKq+B,EACpE,CAEA,SAASmuB,EAASnuB,GAGd,OAAgB,MAATA,GAA2D,oBAA1Cz+B,OAAOC,UAAUF,SAASK,KAAKq+B,EAC3D,CAEA,SAASquB,EAAcC,GACnB,GAAI/sD,OAAOgtD,oBACP,OAAmD,IAA3ChtD,OAAOgtD,oBAAoBD,GAAKxtD,OAExC,IAAI0tD,EACJ,IAAKA,KAAKF,EACN,GAAIA,EAAI7tD,eAAe+tD,GACnB,OAAO,EAGf,OAAO,CAEf,CAEA,SAASC,EAAYzuB,GACjB,YAAiB,IAAVA,CACX,CAEA,SAAS0uB,EAAS1uB,GACd,MAAwB,kBAAVA,GAAgE,oBAA1Cz+B,OAAOC,UAAUF,SAASK,KAAKq+B,EACvE,CAEA,SAAS2uB,EAAO3uB,GACZ,OAAOA,aAAiBwjB,MAAkD,kBAA1CjiD,OAAOC,UAAUF,SAASK,KAAKq+B,EACnE,CAEA,SAASzvB,EAAIq+C,EAAK1B,GACd,IAActsD,EAAViuD,EAAM,GACV,IAAKjuD,EAAI,EAAGA,EAAIguD,EAAI9tD,SAAUF,EAC1BiuD,EAAI5tD,KAAKisD,EAAG0B,EAAIhuD,GAAIA,IAExB,OAAOiuD,CACX,CAEA,SAAST,EAAW/+C,EAAGnN,GACnB,OAAOX,OAAOC,UAAUf,eAAekB,KAAK0N,EAAGnN,EACnD,CAEA,SAAS6sD,EAAO1/C,EAAGnN,GACf,IAAK,IAAItB,KAAKsB,EACNksD,EAAWlsD,EAAGtB,KACdyO,EAAEzO,GAAKsB,EAAEtB,IAYjB,OARIwtD,EAAWlsD,EAAG,cACdmN,EAAE/N,SAAWY,EAAEZ,UAGf8sD,EAAWlsD,EAAG,aACdmN,EAAE2/C,QAAU9sD,EAAE8sD,SAGX3/C,CACX,CAEA,SAAS4/C,EAAWjvB,EAAOnX,EAAQqmC,EAAQC,GACvC,OAAOC,GAAiBpvB,EAAOnX,EAAQqmC,EAAQC,GAAQ,GAAM9D,KACjE,CAEA,SAASgE,IAEL,MAAO,CACHC,OAAkB,EAClBC,aAAkB,GAClBC,YAAkB,GAClB1+B,UAAmB,EACnB2+B,cAAkB,EAClBC,WAAkB,EAClBE,aAAkB,KAClBC,eAAkB,EAClBC,iBAAkB,EAClBC,KAAkB,EAClBC,gBAAkB,GAClBE,SAAkB,KAClBC,SAAkB,EAClBC,iBAAkB,EAE1B,CAEA,SAASC,EAAgB5xB,GAIrB,OAHa,MAATA,EAAE6xB,MACF7xB,EAAE6xB,IAAMjB,KAEL5wB,EAAE6xB,GACb,CAoBA,SAASC,EAAQ9xB,GACb,GAAkB,MAAdA,EAAE+xB,SAAkB,CACpB,IAAIv4C,EAAQo4C,EAAgB5xB,GACxBgyB,EAAc55B,EAAKl1B,KAAKsW,EAAM+3C,iBAAiB,SAAUpvD,GACzD,OAAY,MAALA,CACX,IACI8vD,GAAcC,MAAMlyB,EAAEugB,GAAG4E,YACzB3rC,EAAM6Y,SAAW,IAChB7Y,EAAMq3C,QACNr3C,EAAM23C,eACN33C,EAAM24C,iBACN34C,EAAMm4C,kBACNn4C,EAAMy3C,YACNz3C,EAAM43C,gBACN53C,EAAM63C,mBACL73C,EAAMi4C,UAAaj4C,EAAMi4C,UAAYO,GAS3C,GAPIhyB,EAAEoyB,UACFH,EAAaA,GACe,IAAxBz4C,EAAMw3C,eACwB,IAA9Bx3C,EAAMs3C,aAAazuD,aACD4P,IAAlBuH,EAAM64C,SAGS,MAAnBvvD,OAAOwvD,UAAqBxvD,OAAOwvD,SAAStyB,GAI5C,OAAOiyB,EAHPjyB,EAAE+xB,SAAWE,CAKrB,CACA,OAAOjyB,EAAE+xB,QACb,CAEA,SAASQ,EAAe/4C,GACpB,IAAIwmB,EAAIwwB,EAAUgC,KAQlB,OAPa,MAATh5C,EACA82C,EAAOsB,EAAgB5xB,GAAIxmB,GAG3Bo4C,EAAgB5xB,GAAGqxB,iBAAkB,EAGlCrxB,CACX,CA5DI5H,EADA31B,MAAMM,UAAUq1B,KACT31B,MAAMM,UAAUq1B,KAEhB,SAAUq6B,GAIb,IAHA,IAAInuD,EAAIxB,OAAOmB,MACXuG,EAAMlG,EAAEjC,SAAW,EAEdF,EAAI,EAAGA,EAAIqI,EAAKrI,IACrB,GAAIA,KAAKmC,GAAKmuD,EAAIvvD,KAAKe,KAAMK,EAAEnC,GAAIA,EAAGmC,GAClC,OAAO,EAIf,OAAO,CACX,EAmDJ,IAAI+qD,EAAmBE,EAAMF,iBAAmB,GAEhD,SAASsD,EAAW/rD,EAAIC,GACpB,IAAI1E,EAAGywD,EAAMC,EAiCb,GA/BK7C,EAAYnpD,EAAKksD,oBAClBnsD,EAAGmsD,iBAAmBlsD,EAAKksD,kBAE1B/C,EAAYnpD,EAAK4C,MAClB7C,EAAG6C,GAAK5C,EAAK4C,IAEZumD,EAAYnpD,EAAK45C,MAClB75C,EAAG65C,GAAK55C,EAAK45C,IAEZuP,EAAYnpD,EAAK+5C,MAClBh6C,EAAGg6C,GAAK/5C,EAAK+5C,IAEZoP,EAAYnpD,EAAKurD,WAClBxrD,EAAGwrD,QAAUvrD,EAAKurD,SAEjBpC,EAAYnpD,EAAK6lD,QAClB9lD,EAAG8lD,KAAO7lD,EAAK6lD,MAEdsD,EAAYnpD,EAAKmoD,UAClBpoD,EAAGooD,OAASnoD,EAAKmoD,QAEhBgB,EAAYnpD,EAAKmsD,WAClBpsD,EAAGosD,QAAUnsD,EAAKmsD,SAEjBhD,EAAYnpD,EAAKgrD,OAClBjrD,EAAGirD,IAAMD,EAAgB/qD,IAExBmpD,EAAYnpD,EAAKosD,WAClBrsD,EAAGqsD,QAAUpsD,EAAKosD,SAGlB5D,EAAiBhtD,OAAS,EAC1B,IAAKF,EAAI,EAAGA,EAAIktD,EAAiBhtD,OAAQF,IAGhC6tD,EADL6C,EAAMhsD,EADN+rD,EAAOvD,EAAiBltD,OAGpByE,EAAGgsD,GAAQC,GAKvB,OAAOjsD,CACX,CAEA,IAAI8rD,GAAmB,EAGvB,SAASQ,EAAOC,GACZR,EAAW1uD,KAAMkvD,GACjBlvD,KAAKs8C,GAAK,IAAIwE,KAAkB,MAAboO,EAAO5S,GAAa4S,EAAO5S,GAAG4E,UAAYqN,KACxDvuD,KAAK6tD,YACN7tD,KAAKs8C,GAAK,IAAIwE,KAAKyN,OAIE,IAArBE,IACAA,GAAmB,EACnBnD,EAAMT,aAAa7qD,MACnByuD,GAAmB,EAE3B,CAEA,SAAS7F,EAAUgD,GACf,OAAOA,aAAeqD,GAAkB,MAAPrD,GAAuC,MAAxBA,EAAIkD,gBACxD,CAEA,SAASuG,EAAU39C,GACf,OAAIA,EAAS,EAEFhT,KAAKwD,KAAKwP,IAAW,EAErBhT,KAAKi+B,MAAMjrB,EAE1B,CAEA,SAAS49C,EAAMC,GACX,IAAIC,GAAiBD,EACjBz0D,EAAQ,EAMZ,OAJsB,IAAlB00D,GAAuBC,SAASD,KAChC10D,EAAQu0D,EAASG,IAGd10D,CACX,CAGA,SAASwqE,EAAcC,EAAQC,EAAQC,GACnC,IAGIvtE,EAHAqI,EAAM7B,KAAK0S,IAAIm0D,EAAOntE,OAAQotE,EAAOptE,QACrCstE,EAAahnE,KAAKkjB,IAAI2jD,EAAOntE,OAASotE,EAAOptE,QAC7CutE,EAAQ,EAEZ,IAAKztE,EAAI,EAAGA,EAAIqI,EAAKrI,KACZutE,GAAeF,EAAOrtE,KAAOstE,EAAOttE,KACnCutE,GAAenW,EAAMiW,EAAOrtE,MAAQo3D,EAAMkW,EAAOttE,MACnDytE,IAGR,OAAOA,EAAQD,CACnB,CAEA,SAASpmC,EAAK6pB,IACgC,IAAtC7D,EAAM8D,6BACmB,qBAAbnO,SAA6BA,QAAQ3b,MACjD2b,QAAQ3b,KAAK,wBAA0B6pB,EAE/C,CAEA,SAASE,EAAUF,EAAK3E,GACpB,IAAI8E,GAAY,EAEhB,OAAOjD,GAAO,WAIV,GAHgC,MAA5Bf,EAAMiE,oBACNjE,EAAMiE,mBAAmB,KAAMJ,GAE/BG,EAAW,CAGX,IAFA,IACIjxD,EADAmb,EAAO,GAEFtb,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAEvC,GADAG,EAAM,GACsB,kBAAjBF,UAAUD,GAAiB,CAElC,IAAK,IAAIc,KADTX,GAAO,MAAQH,EAAI,KACHC,UAAU,GACtBE,GAAOW,EAAM,KAAOb,UAAU,GAAGa,GAAO,KAE5CX,EAAMA,EAAI2E,MAAM,GAAI,EACxB,MACI3E,EAAMF,UAAUD,GAEpBsb,EAAKjb,KAAKF,EACd,CACAinC,EAAK6pB,EAAM,gBAAkB3wD,MAAMM,UAAUkE,MAAM/D,KAAKua,GAAMta,KAAK,IAAM,MAAQ,IAAIuF,OAASwwC,OAC9Fqa,GAAY,CAChB,CACA,OAAO9E,EAAG7rD,MAAMqB,KAAM7B,UAC1B,GAAGqsD,EACP,CAEA,IAsEIjd,EAtEAkiB,EAAe,CAAC,EAEpB,SAASC,EAAgB32C,EAAMo2C,GACK,MAA5B7D,EAAMiE,oBACNjE,EAAMiE,mBAAmBx2C,EAAMo2C,GAE9BM,EAAa12C,KACdusB,EAAK6pB,GACLM,EAAa12C,IAAQ,EAE7B,CAKA,SAAS42C,EAAWryB,GAChB,OAAOA,aAAiBsyB,UAAsD,sBAA1C/wD,OAAOC,UAAUF,SAASK,KAAKq+B,EACvE,CAEA,SAASuyB,EAAKX,GACV,IAAIP,EAAMzwD,EACV,IAAKA,KAAKgxD,EAEFS,EADJhB,EAAOO,EAAOhxD,IAEV8B,KAAK9B,GAAKywD,EAEV3uD,KAAK,IAAM9B,GAAKywD,EAGxB3uD,KAAK8vD,QAAUZ,EAIflvD,KAAK+vD,+BAAiC,IAAIC,QACrChwD,KAAKiwD,wBAAwBtL,QAAU3kD,KAAKkwD,cAAcvL,QACvD,IAAO,UAAWA,OAC9B,CAEA,SAASwL,EAAaC,EAAcC,GAChC,IAAoC1B,EAAhCxC,EAAME,EAAO,CAAC,EAAG+D,GACrB,IAAKzB,KAAQ0B,EACL3E,EAAW2E,EAAa1B,KACpBlD,EAAS2E,EAAazB,KAAUlD,EAAS4E,EAAY1B,KACrDxC,EAAIwC,GAAQ,CAAC,EACbtC,EAAOF,EAAIwC,GAAOyB,EAAazB,IAC/BtC,EAAOF,EAAIwC,GAAO0B,EAAY1B,KACF,MAArB0B,EAAY1B,GACnBxC,EAAIwC,GAAQ0B,EAAY1B,UAEjBxC,EAAIwC,IAIvB,IAAKA,KAAQyB,EACL1E,EAAW0E,EAAczB,KACpBjD,EAAW2E,EAAa1B,IACzBlD,EAAS2E,EAAazB,MAE1BxC,EAAIwC,GAAQtC,EAAO,CAAC,EAAGF,EAAIwC,KAGnC,OAAOxC,CACX,CAEA,SAASmE,EAAOpB,GACE,MAAVA,GACAlvD,KAAK6vD,IAAIX,EAEjB,CAxDA5D,EAAM8D,6BAA8B,EACpC9D,EAAMiE,mBAAqB,KA4DvBhiB,EADA1uC,OAAO0uC,KACA1uC,OAAO0uC,KAEP,SAAUqe,GACb,IAAI1tD,EAAGiuD,EAAM,GACb,IAAKjuD,KAAK0tD,EACFF,EAAWE,EAAK1tD,IAChBiuD,EAAI5tD,KAAKL,GAGjB,OAAOiuD,CACX,EAGJ,IAAIoE,EAAkB,CAClBC,QAAU,gBACVC,QAAU,mBACVC,SAAW,eACXC,QAAU,oBACVC,SAAW,sBACXC,SAAW,KAGf,SAASC,EAAU9xD,EAAKsqD,EAAKvI,GACzB,IAAIgQ,EAAS/wD,KAAKgxD,UAAUhyD,IAAQgB,KAAKgxD,UAAoB,SAC7D,OAAOrB,EAAWoB,GAAUA,EAAO9xD,KAAKqqD,EAAKvI,GAAOgQ,CACxD,CAEA,IAAIwB,EAAwB,CACxBC,IAAO,YACPC,GAAO,SACP/9B,EAAO,aACPg+B,GAAO,eACPC,IAAO,sBACPC,KAAO,6BAGX,SAASP,EAAgBrzD,GACrB,IAAImnB,EAASnmB,KAAK6yD,gBAAgB7zD,GAC9B8zD,EAAc9yD,KAAK6yD,gBAAgB7zD,EAAIuc,eAE3C,OAAI4K,IAAW2sC,EACJ3sC,GAGXnmB,KAAK6yD,gBAAgB7zD,GAAO8zD,EAAYl3B,QAAQ,oBAAoB,SAAUgzB,GAC1E,OAAOA,EAAI5rD,MAAM,EACrB,IAEOhD,KAAK6yD,gBAAgB7zD,GAChC,CAEA,IAAIg0D,EAAqB,eAEzB,SAASb,IACL,OAAOnyD,KAAKizD,YAChB,CAEA,IAAIC,EAAiB,KACjBC,EAAgC,UAEpC,SAASvB,EAASl6C,GACd,OAAO1X,KAAKozD,SAASx3B,QAAQ,KAAMlkB,EACvC,CAEA,IAAI27C,EAAsB,CACtBC,OAAS,QACTC,KAAS,SACTjzD,EAAK,gBACLkzD,GAAK,aACLz3B,EAAK,WACL03B,GAAK,aACLhwD,EAAK,UACLiwD,GAAK,WACLn0D,EAAK,QACLo0D,GAAK,UACLE,EAAK,UACLC,GAAK,YACLjyD,EAAK,SACLkyD,GAAK,YAGT,SAASC,EAAct8C,EAAQu8C,EAAe/xB,EAAQgyB,GAClD,IAAInD,EAAS/wD,KAAKm0D,cAAcjyB,GAChC,OAAQytB,EAAWoB,GACfA,EAAOr5C,EAAQu8C,EAAe/xB,EAAQgyB,GACtCnD,EAAOn1B,QAAQ,MAAOlkB,EAC9B,CAEA,SAAS08C,EAAY9N,EAAMyK,GACvB,IAAI5qC,EAASnmB,KAAKm0D,cAAc7N,EAAO,EAAI,SAAW,QACtD,OAAOqJ,EAAWxpC,GAAUA,EAAO4qC,GAAU5qC,EAAOyV,QAAQ,MAAOm1B,EACvE,CAEA,IAAI5I,EAAU,CAAC,EAEf,SAASkM,EAAc18C,EAAM28C,GACzB,IAAIC,EAAY58C,EAAKd,cACrBsxC,EAAQoM,GAAapM,EAAQoM,EAAY,KAAOpM,EAAQmM,GAAa38C,CACzE,CAEA,SAAS68C,EAAeC,GACpB,MAAwB,kBAAVA,EAAqBtM,EAAQsM,IAAUtM,EAAQsM,EAAM59C,oBAAiB7I,CACxF,CAEA,SAAS0mD,EAAqBC,GAC1B,IACIC,EACAjG,EAFAkG,EAAkB,CAAC,EAIvB,IAAKlG,KAAQgG,EACLjJ,EAAWiJ,EAAahG,KACxBiG,EAAiBJ,EAAe7F,MAE5BkG,EAAgBD,GAAkBD,EAAYhG,IAK1D,OAAOkG,CACX,CAEA,IAAIC,EAAa,CAAC,EAElB,SAASC,EAAgBp9C,EAAMq9C,GAC3BF,EAAWn9C,GAAQq9C,CACvB,CAEA,SAASC,GAAoBC,GACzB,IAAIT,EAAQ,GACZ,IAAK,IAAIrjD,KAAK8jD,EACVT,EAAMl2D,KAAK,CAACoZ,KAAMvG,EAAG4jD,SAAUF,EAAW1jD,KAK9C,OAHAqjD,EAAM5M,MAAK,SAAUl7C,EAAGnN,GACpB,OAAOmN,EAAEqoD,SAAWx1D,EAAEw1D,QAC1B,IACOP,CACX,CAEA,SAASxD,GAASv5C,EAAQw5C,EAAcC,GACpC,IAAIC,EAAY,GAAK1sD,KAAKkjB,IAAIlQ,GAC1B25C,EAAcH,EAAeE,EAAUhzD,OAE3C,OADWsZ,GAAU,EACLy5C,EAAY,IAAM,GAAM,KACpCzsD,KAAK8O,IAAI,GAAI9O,KAAKC,IAAI,EAAG0sD,IAAczyD,WAAW4vC,OAAO,GAAK4iB,CACtE,CAEA,IAAIE,GAAmB,uLAEnBC,GAAwB,6CAExBC,GAAkB,CAAC,EAEnBC,GAAuB,CAAC,EAM5B,SAASC,GAAgBx8C,EAAOy8C,EAAQC,EAASpG,GAC7C,IAAIqG,EAAOrG,EACa,kBAAbA,IACPqG,EAAO,WACH,OAAO7xD,KAAKwrD,IAChB,GAEAt2C,IACAu8C,GAAqBv8C,GAAS28C,GAE9BF,IACAF,GAAqBE,EAAO,IAAM,WAC9B,OAAOV,GAASY,EAAKlzD,MAAMqB,KAAM7B,WAAYwzD,EAAO,GAAIA,EAAO,GACnE,GAEAC,IACAH,GAAqBG,GAAW,WAC5B,OAAO5xD,KAAK8xD,aAAaF,QAAQC,EAAKlzD,MAAMqB,KAAM7B,WAAY+W,EAClE,EAER,CAEA,SAAS68C,GAAuBz0B,GAC5B,OAAIA,EAAMoe,MAAM,YACLpe,EAAM1B,QAAQ,WAAY,IAE9B0B,EAAM1B,QAAQ,MAAO,GAChC,CAEA,SAASo2B,GAAmB7rC,GACxB,IAA4CjoB,EAAGE,EAA3CqmD,EAAQt+B,EAAOu1B,MAAM4V,IAEzB,IAAKpzD,EAAI,EAAGE,EAASqmD,EAAMrmD,OAAQF,EAAIE,EAAQF,IACvCuzD,GAAqBhN,EAAMvmD,IAC3BumD,EAAMvmD,GAAKuzD,GAAqBhN,EAAMvmD,IAEtCumD,EAAMvmD,GAAK6zD,GAAuBtN,EAAMvmD,IAIhD,OAAO,SAAUorD,GACb,IAAiBprD,EAAb6yD,EAAS,GACb,IAAK7yD,EAAI,EAAGA,EAAIE,EAAQF,IACpB6yD,GAAUpB,EAAWlL,EAAMvmD,IAAMumD,EAAMvmD,GAAGe,KAAKqqD,EAAKnjC,GAAUs+B,EAAMvmD,GAExE,OAAO6yD,CACX,CACJ,CAGA,SAASkB,GAAal2B,EAAG5V,GACrB,OAAK4V,EAAE8xB,WAIP1nC,EAAS+rC,GAAa/rC,EAAQ4V,EAAE+1B,cAChCN,GAAgBrrC,GAAUqrC,GAAgBrrC,IAAW6rC,GAAmB7rC,GAEjEqrC,GAAgBrrC,GAAQ4V,IANpBA,EAAE+1B,aAAaK,aAO9B,CAEA,SAASD,GAAa/rC,EAAQqmC,GAC1B,IAAItuD,EAAI,EAER,SAASk0D,EAA4B90B,GACjC,OAAOkvB,EAAO6F,eAAe/0B,IAAUA,CAC3C,CAGA,IADAi0B,GAAsBe,UAAY,EAC3Bp0D,GAAK,GAAKqzD,GAAsBrsB,KAAK/e,IACxCA,EAASA,EAAOyV,QAAQ21B,GAAuBa,GAC/Cb,GAAsBe,UAAY,EAClCp0D,GAAK,EAGT,OAAOioB,CACX,CAEA,IAAIiwC,GAAiB,KACjBC,GAAiB,OACjBC,GAAiB,QACjBC,GAAiB,QACjBC,GAAiB,aACjBC,GAAiB,QACjBC,GAAiB,YACjBC,GAAiB,gBACjBC,GAAiB,UACjBC,GAAiB,UACjBC,GAAiB,eAEjBC,GAAiB,MACjBC,GAAiB,WAEjBC,GAAiB,qBACjBC,GAAmB,0BAEnBC,GAAiB,uBAIjBC,GAAY,wJAEZjB,GAAU,CAAC,EAEf,SAASkB,GAAeniD,EAAOoiD,EAAOC,GAClCpB,GAAQjhD,GAASy6C,EAAW2H,GAASA,EAAQ,SAAUE,EAAU1F,GAC7D,OAAQ0F,GAAYD,EAAeA,EAAcD,CACrD,CACJ,CAEA,SAASG,GAAuBviD,EAAOg6C,GACnC,OAAKxD,EAAWyK,GAASjhD,GAIlBihD,GAAQjhD,GAAOg6C,EAAOf,QAASe,EAAOF,SAHlC,IAAIgB,OAAO0H,GAAexiD,GAIzC,CAGA,SAASwiD,GAAep3D,GACpB,OAAOq3D,GAAYr3D,EAAEs7B,QAAQ,KAAM,IAAIA,QAAQ,uCAAuC,SAAUg8B,EAAS57B,EAAIC,EAAI47B,EAAIC,GACjH,OAAO97B,GAAMC,GAAM47B,GAAMC,CAC7B,IACJ,CAEA,SAASH,GAAYr3D,GACjB,OAAOA,EAAEs7B,QAAQ,yBAA0B,OAC/C,CAEA,IAAI3mB,GAAS,CAAC,EAEd,SAAS8iD,GAAe7iD,EAAOs2C,GAC3B,IAAIttD,EAAG2zD,EAAOrG,EASd,IARqB,kBAAVt2C,IACPA,EAAQ,CAACA,IAET82C,EAASR,KACTqG,EAAO,SAAUv0B,EAAOmnB,GACpBA,EAAM+G,GAAY8J,EAAMh4B,EAC5B,GAECp/B,EAAI,EAAGA,EAAIgX,EAAM9W,OAAQF,IAC1B+W,GAAOC,EAAMhX,IAAM2zD,CAE3B,CAEA,SAASoG,GAAmB/iD,EAAOs2C,GAC/BuM,GAAc7iD,GAAO,SAAUooB,EAAOmnB,EAAOyK,EAAQh6C,GACjDg6C,EAAOgJ,GAAKhJ,EAAOgJ,IAAM,CAAC,EAC1B1M,EAASluB,EAAO4xB,EAAOgJ,GAAIhJ,EAAQh6C,EACvC,GACJ,CAEA,SAASijD,GAAwBjjD,EAAOooB,EAAO4xB,GAC9B,MAAT5xB,GAAiBouB,EAAWz2C,GAAQC,IACpCD,GAAOC,GAAOooB,EAAO4xB,EAAO9nC,GAAI8nC,EAAQh6C,EAEhD,CAEA,IAAIkjD,GAAO,EACPC,GAAQ,EACRC,GAAO,EACPC,GAAO,EACPC,GAAS,EACTC,GAAS,EACTC,GAAc,EACdC,GAAO,EACPC,GAAU,EA8Cd,SAAS0C,GAAWlG,GAChB,OAAOD,GAAWC,GAAQ,IAAM,GACpC,CAEA,SAASD,GAAWC,GAChB,OAAQA,EAAO,IAAM,GAAKA,EAAO,MAAQ,GAAMA,EAAO,MAAQ,CAClE,CAhDA1D,GAAe,IAAK,EAAG,GAAG,WACtB,IAAI7vD,EAAI7B,KAAKo1D,OACb,OAAOvzD,GAAK,KAAO,GAAKA,EAAI,IAAMA,CACtC,IAEA6vD,GAAe,EAAG,CAAC,KAAM,GAAI,GAAG,WAC5B,OAAO1xD,KAAKo1D,OAAS,GACzB,IAEA1D,GAAe,EAAG,CAAC,OAAU,GAAU,EAAG,QAC1CA,GAAe,EAAG,CAAC,QAAU,GAAU,EAAG,QAC1CA,GAAe,EAAG,CAAC,SAAU,GAAG,GAAO,EAAG,QAI1C2C,EAAa,OAAQ,KAIrBU,EAAgB,OAAQ,GAIxBsC,GAAc,IAAUL,IACxBK,GAAc,KAAUZ,GAAWJ,IACnCgB,GAAc,OAAUR,GAAWN,IACnCc,GAAc,QAAUP,GAAWN,IACnCa,GAAc,SAAUP,GAAWN,IAEnCuB,GAAc,CAAC,QAAS,UAAWK,IACnCL,GAAc,QAAQ,SAAUz6B,EAAOmnB,GACnCA,EAAM2T,IAAyB,IAAjB96B,EAAMl/B,OAAektD,EAAMiQ,kBAAkBj+B,GAASg4B,EAAMh4B,EAC9E,IACAy6B,GAAc,MAAM,SAAUz6B,EAAOmnB,GACjCA,EAAM2T,IAAQ9M,EAAMiQ,kBAAkBj+B,EAC1C,IACAy6B,GAAc,KAAK,SAAUz6B,EAAOmnB,GAChCA,EAAM2T,IAAQnlD,SAASqqB,EAAO,GAClC,IAcAguB,EAAMiQ,kBAAoB,SAAUj+B,GAChC,OAAOg4B,EAAMh4B,IAAUg4B,EAAMh4B,GAAS,GAAK,KAAO,IACtD,EAIA,IAiEI9wB,GAjEAgvD,GAAa9F,GAAW,YAAY,GAExC,SAAS+F,KACL,OAAOtG,GAAWn1D,KAAKo1D,OAC3B,CAEA,SAASM,GAAY/9C,EAAMmzC,GACvB,OAAO,SAAUhqD,GACb,OAAa,MAATA,GACA60D,GAAM31D,KAAM2X,EAAM7W,GAClBwqD,EAAMT,aAAa7qD,KAAM8qD,GAClB9qD,MAEAuM,GAAIvM,KAAM2X,EAEzB,CACJ,CAEA,SAASpL,GAAK+8C,EAAK3xC,GACf,OAAO2xC,EAAIuE,UACPvE,EAAIhN,GAAG,OAASgN,EAAIyB,OAAS,MAAQ,IAAMpzC,KAAU42C,GAC7D,CAEA,SAASoH,GAAOrM,EAAK3xC,EAAM7W,GACnBwoD,EAAIuE,YAAcI,MAAMntD,KACX,aAAT6W,GAAuBw9C,GAAW7L,EAAI8L,SAA2B,IAAhB9L,EAAIsM,SAAgC,KAAftM,EAAIuM,OAC1EvM,EAAIhN,GAAG,OAASgN,EAAIyB,OAAS,MAAQ,IAAMpzC,GAAM7W,EAAOwoD,EAAIsM,QAASE,GAAYh1D,EAAOwoD,EAAIsM,UAG5FtM,EAAIhN,GAAG,OAASgN,EAAIyB,OAAS,MAAQ,IAAMpzC,GAAM7W,GAG7D,CAIA,SAASi1D,GAAWtB,GAEhB,OAAI9E,EAAW3vD,KADfy0D,EAAQD,EAAeC,KAEZz0D,KAAKy0D,KAETz0D,IACX,CAGA,SAASg2D,GAAWvB,EAAO3zD,GACvB,GAAqB,kBAAV2zD,EAGP,IADA,IAAIwB,EAAchB,GADlBR,EAAQC,EAAqBD,IAEpBv2D,EAAI,EAAGA,EAAI+3D,EAAY73D,OAAQF,IACpC8B,KAAKi2D,EAAY/3D,GAAGyZ,MAAM88C,EAAMwB,EAAY/3D,GAAGyZ,YAInD,GAAIg4C,EAAW3vD,KADfy0D,EAAQD,EAAeC,KAEnB,OAAOz0D,KAAKy0D,GAAO3zD,GAG3B,OAAOd,IACX,CAEA,SAAS64D,GAAIt4D,EAAGgD,GACZ,OAAShD,EAAIgD,EAAKA,GAAKA,CAC3B,CAmBA,SAASuyD,GAAYV,EAAMQ,GACvB,GAAI3H,MAAMmH,IAASnH,MAAM2H,GACrB,OAAOrH,IAEX,IAAIuK,EAAWD,GAAIjD,EAAO,IAE1B,OADAR,IAASQ,EAAQkD,GAAY,GACT,IAAbA,EAAkB3D,GAAWC,GAAQ,GAAK,GAAO,GAAK0D,EAAW,EAAI,CAChF,CArBItsD,GADAhO,MAAMM,UAAU0N,QACNhO,MAAMM,UAAU0N,QAEhB,SAAUusD,GAEhB,IAAI76D,EACJ,IAAKA,EAAI,EAAGA,EAAI8B,KAAK5B,SAAUF,EAC3B,GAAI8B,KAAK9B,KAAO66D,EACZ,OAAO76D,EAGf,OAAQ,CACZ,EAcJwzD,GAAe,IAAK,CAAC,KAAM,GAAI,MAAM,WACjC,OAAO1xD,KAAK41D,QAAU,CAC1B,IAEAlE,GAAe,MAAO,EAAG,GAAG,SAAUvrC,GAClC,OAAOnmB,KAAK8xD,aAAakH,YAAYh5D,KAAMmmB,EAC/C,IAEAurC,GAAe,OAAQ,EAAG,GAAG,SAAUvrC,GACnC,OAAOnmB,KAAK8xD,aAAamH,OAAOj5D,KAAMmmB,EAC1C,IAIAkuC,EAAa,QAAS,KAItBU,EAAgB,QAAS,GAIzBsC,GAAc,IAAQZ,IACtBY,GAAc,KAAQZ,GAAWJ,IACjCgB,GAAc,OAAQ,SAAUG,EAAUhL,GACtC,OAAOA,EAAO0M,iBAAiB1B,EACnC,IACAH,GAAc,QAAQ,SAAUG,EAAUhL,GACtC,OAAOA,EAAO2M,YAAY3B,EAC9B,IAEAO,GAAc,CAAC,IAAK,OAAO,SAAUz6B,EAAOmnB,GACxCA,EAAM4T,IAAS/C,EAAMh4B,GAAS,CAClC,IAEAy6B,GAAc,CAAC,MAAO,SAAS,SAAUz6B,EAAOmnB,EAAOyK,EAAQh6C,GAC3D,IAAI0gD,EAAQ1G,EAAOF,QAAQoK,YAAY97B,EAAOpoB,EAAOg6C,EAAOf,SAE/C,MAATyH,EACAnR,EAAM4T,IAASzC,EAEfjI,EAAgBuB,GAAQhC,aAAe5vB,CAE/C,IAIA,IAAIi8B,GAAmB,gCACnBF,GAAsB,wFAAwFvV,MAAM,KACxH,SAAS4V,GAAc39B,EAAG5V,GACtB,OAAK4V,EAIEt9B,EAAQuB,KAAK25D,SAAW35D,KAAK25D,QAAQ59B,EAAE65B,SAC1C51D,KAAK25D,SAAS35D,KAAK25D,QAAQC,UAAYL,IAAkBr0B,KAAK/e,GAAU,SAAW,cAAc4V,EAAE65B,SAJ5Fn3D,EAAQuB,KAAK25D,SAAW35D,KAAK25D,QAChC35D,KAAK25D,QAAoB,UAIrC,CAEA,IAAIL,GAA2B,kDAAkDxV,MAAM,KACvF,SAAS+V,GAAmB99B,EAAG5V,GAC3B,OAAK4V,EAIEt9B,EAAQuB,KAAK85D,cAAgB95D,KAAK85D,aAAa/9B,EAAE65B,SACpD51D,KAAK85D,aAAaP,GAAiBr0B,KAAK/e,GAAU,SAAW,cAAc4V,EAAE65B,SAJtEn3D,EAAQuB,KAAK85D,cAAgB95D,KAAK85D,aACrC95D,KAAK85D,aAAyB,UAI1C,CAEA,SAASC,GAAkBC,EAAW7zC,EAAQsmC,GAC1C,IAAIvuD,EAAG+7D,EAAI3Q,EAAK4Q,EAAMF,EAAUG,oBAChC,IAAKn6D,KAAKo6D,aAKN,IAHAp6D,KAAKo6D,aAAe,GACpBp6D,KAAKq6D,iBAAmB,GACxBr6D,KAAKs6D,kBAAoB,GACpBp8D,EAAI,EAAGA,EAAI,KAAMA,EAClBorD,EAAMiD,EAAU,CAAC,IAAMruD,IACvB8B,KAAKs6D,kBAAkBp8D,GAAK8B,KAAKg5D,YAAY1P,EAAK,IAAI6Q,oBACtDn6D,KAAKq6D,iBAAiBn8D,GAAK8B,KAAKi5D,OAAO3P,EAAK,IAAI6Q,oBAIxD,OAAI1N,EACe,QAAXtmC,GAEe,KADf8zC,EAAKztD,GAAQvN,KAAKe,KAAKs6D,kBAAmBJ,IACvBD,EAAK,MAGT,KADfA,EAAKztD,GAAQvN,KAAKe,KAAKq6D,iBAAkBH,IACtBD,EAAK,KAGb,QAAX9zC,GAEY,KADZ8zC,EAAKztD,GAAQvN,KAAKe,KAAKs6D,kBAAmBJ,MAK3B,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKq6D,iBAAkBH,IAF9BD,EAGa,MAGZ,KADZA,EAAKztD,GAAQvN,KAAKe,KAAKq6D,iBAAkBH,MAK1B,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKs6D,kBAAmBJ,IAF/BD,EAGa,IAGpC,CAEA,SAASM,GAAmBP,EAAW7zC,EAAQsmC,GAC3C,IAAIvuD,EAAGorD,EAAKgO,EAEZ,GAAIt3D,KAAKw6D,kBACL,OAAOT,GAAkB96D,KAAKe,KAAMg6D,EAAW7zC,EAAQsmC,GAY3D,IATKzsD,KAAKo6D,eACNp6D,KAAKo6D,aAAe,GACpBp6D,KAAKq6D,iBAAmB,GACxBr6D,KAAKs6D,kBAAoB,IAMxBp8D,EAAI,EAAGA,EAAI,GAAIA,IAAK,CAYrB,GAVAorD,EAAMiD,EAAU,CAAC,IAAMruD,IACnBuuD,IAAWzsD,KAAKq6D,iBAAiBn8D,KACjC8B,KAAKq6D,iBAAiBn8D,GAAK,IAAI8xD,OAAO,IAAMhwD,KAAKi5D,OAAO3P,EAAK,IAAI1tB,QAAQ,IAAK,IAAM,IAAK,KACzF57B,KAAKs6D,kBAAkBp8D,GAAK,IAAI8xD,OAAO,IAAMhwD,KAAKg5D,YAAY1P,EAAK,IAAI1tB,QAAQ,IAAK,IAAM,IAAK,MAE9F6wB,GAAWzsD,KAAKo6D,aAAal8D,KAC9Bo5D,EAAQ,IAAMt3D,KAAKi5D,OAAO3P,EAAK,IAAM,KAAOtpD,KAAKg5D,YAAY1P,EAAK,IAClEtpD,KAAKo6D,aAAal8D,GAAK,IAAI8xD,OAAOsH,EAAM17B,QAAQ,IAAK,IAAK,MAG1D6wB,GAAqB,SAAXtmC,GAAqBnmB,KAAKq6D,iBAAiBn8D,GAAGgnC,KAAK80B,GAC7D,OAAO97D,EACJ,GAAIuuD,GAAqB,QAAXtmC,GAAoBnmB,KAAKs6D,kBAAkBp8D,GAAGgnC,KAAK80B,GACpE,OAAO97D,EACJ,IAAKuuD,GAAUzsD,KAAKo6D,aAAal8D,GAAGgnC,KAAK80B,GAC5C,OAAO97D,CAEf,CACJ,CAIA,SAASu8D,GAAUnR,EAAKxoD,GACpB,IAAI45D,EAEJ,IAAKpR,EAAIuE,UAEL,OAAOvE,EAGX,GAAqB,kBAAVxoD,EACP,GAAI,QAAQokC,KAAKpkC,GACbA,EAAQw0D,EAAMx0D,QAId,IAAKkrD,EAFLlrD,EAAQwoD,EAAIwI,aAAasH,YAAYt4D,IAGjC,OAAOwoD,EAOnB,OAFAoR,EAAah2D,KAAK0S,IAAIkyC,EAAIuM,OAAQC,GAAYxM,EAAI8L,OAAQt0D,IAC1DwoD,EAAIhN,GAAG,OAASgN,EAAIyB,OAAS,MAAQ,IAAM,SAASjqD,EAAO45D,GACpDpR,CACX,CAEA,SAASqR,GAAa75D,GAClB,OAAa,MAATA,GACA25D,GAASz6D,KAAMc,GACfwqD,EAAMT,aAAa7qD,MAAM,GAClBA,MAEAuM,GAAIvM,KAAM,QAEzB,CAEA,SAAS46D,KACL,OAAO9E,GAAY91D,KAAKo1D,OAAQp1D,KAAK41D,QACzC,CAEA,IAAI4D,GAA0BpC,GAC9B,SAAS8B,GAAkB1B,GACvB,OAAIx3D,KAAKw6D,mBACA9O,EAAW1rD,KAAM,iBAClB66D,GAAmB57D,KAAKe,MAExBw3D,EACOx3D,KAAK86D,wBAEL96D,KAAK+6D,oBAGXrP,EAAW1rD,KAAM,uBAClBA,KAAK+6D,kBAAoBvB,IAEtBx5D,KAAK86D,yBAA2BtD,EACnCx3D,KAAK86D,wBAA0B96D,KAAK+6D,kBAEhD,CAEA,IAAItB,GAAqBrC,GACzB,SAAS+B,GAAa3B,GAClB,OAAIx3D,KAAKw6D,mBACA9O,EAAW1rD,KAAM,iBAClB66D,GAAmB57D,KAAKe,MAExBw3D,EACOx3D,KAAKg7D,mBAELh7D,KAAKi7D,eAGXvP,EAAW1rD,KAAM,kBAClBA,KAAKi7D,aAAexB,IAEjBz5D,KAAKg7D,oBAAsBxD,EAC9Bx3D,KAAKg7D,mBAAqBh7D,KAAKi7D,aAE3C,CAEA,SAASJ,KACL,SAASK,EAAUvuD,EAAGnN,GAClB,OAAOA,EAAEpB,OAASuO,EAAEvO,MACxB,CAEA,IACIF,EAAGorD,EADH6R,EAAc,GAAIC,EAAa,GAAIC,EAAc,GAErD,IAAKn9D,EAAI,EAAGA,EAAI,GAAIA,IAEhBorD,EAAMiD,EAAU,CAAC,IAAMruD,IACvBi9D,EAAY58D,KAAKyB,KAAKg5D,YAAY1P,EAAK,KACvC8R,EAAW78D,KAAKyB,KAAKi5D,OAAO3P,EAAK,KACjC+R,EAAY98D,KAAKyB,KAAKi5D,OAAO3P,EAAK,KAClC+R,EAAY98D,KAAKyB,KAAKg5D,YAAY1P,EAAK,KAO3C,IAHA6R,EAAYtT,KAAKqT,GACjBE,EAAWvT,KAAKqT,GAChBG,EAAYxT,KAAKqT,GACZh9D,EAAI,EAAGA,EAAI,GAAIA,IAChBi9D,EAAYj9D,GAAKy5D,GAAYwD,EAAYj9D,IACzCk9D,EAAWl9D,GAAKy5D,GAAYyD,EAAWl9D,IAE3C,IAAKA,EAAI,EAAGA,EAAI,GAAIA,IAChBm9D,EAAYn9D,GAAKy5D,GAAY0D,EAAYn9D,IAG7C8B,KAAKi7D,aAAe,IAAIjL,OAAO,KAAOqL,EAAYn8D,KAAK,KAAO,IAAK,KACnEc,KAAK+6D,kBAAoB/6D,KAAKi7D,aAC9Bj7D,KAAKg7D,mBAAqB,IAAIhL,OAAO,KAAOoL,EAAWl8D,KAAK,KAAO,IAAK,KACxEc,KAAK86D,wBAA0B,IAAI9K,OAAO,KAAOmL,EAAYj8D,KAAK,KAAO,IAAK,IAClF,CAEA,SAASw8D,GAAY75D,EAAGk6B,EAAGx8B,EAAGkE,EAAGowD,EAAGvzD,EAAGq7D,GAGnC,IAAI9F,EAYJ,OAVIh0D,EAAI,KAAOA,GAAK,GAEhBg0D,EAAO,IAAI/U,KAAKj/C,EAAI,IAAKk6B,EAAGx8B,EAAGkE,EAAGowD,EAAGvzD,EAAGq7D,GACpClG,SAASI,EAAKrO,gBACdqO,EAAK+F,YAAY/5D,IAGrBg0D,EAAO,IAAI/U,KAAKj/C,EAAGk6B,EAAGx8B,EAAGkE,EAAGowD,EAAGvzD,EAAGq7D,GAG/B9F,CACX,CAEA,SAASgG,GAAeh6D,GACpB,IAAIg0D,EAEJ,GAAIh0D,EAAI,KAAOA,GAAK,EAAG,CACnB,IAAI2X,EAAOhb,MAAMM,UAAUkE,MAAM/D,KAAKd,WAEtCqb,EAAK,GAAK3X,EAAI,IACdg0D,EAAO,IAAI/U,KAAKA,KAAKgb,IAAIn9D,MAAM,KAAM6a,IACjCi8C,SAASI,EAAKkG,mBACdlG,EAAKmG,eAAen6D,EAE5B,MACIg0D,EAAO,IAAI/U,KAAKA,KAAKgb,IAAIn9D,MAAM,KAAMR,YAGzC,OAAO03D,CACX,CAGA,SAASoG,GAAgB7G,EAAM8G,EAAKC,GAChC,IACIC,EAAM,EAAIF,EAAMC,EAIpB,QAFa,EAAIN,GAAczG,EAAM,EAAGgH,GAAKC,YAAcH,GAAO,EAElDE,EAAM,CAC1B,CAGA,SAASE,GAAmBlH,EAAMmH,EAAMC,EAASN,EAAKC,GAClD,IAGIM,EAASC,EADTC,EAAY,EAAI,GAAKJ,EAAO,IAFZ,EAAIC,EAAUN,GAAO,EACxBD,GAAgB7G,EAAM8G,EAAKC,GAe5C,OAXIQ,GAAa,EAEbD,EAAepB,GADfmB,EAAUrH,EAAO,GACoBuH,EAC9BA,EAAYrB,GAAWlG,IAC9BqH,EAAUrH,EAAO,EACjBsH,EAAeC,EAAYrB,GAAWlG,KAEtCqH,EAAUrH,EACVsH,EAAeC,GAGZ,CACHvH,KAAMqH,EACNE,UAAWD,EAEnB,CAEA,SAASE,GAAWtT,EAAK4S,EAAKC,GAC1B,IAEIU,EAASJ,EAFTK,EAAab,GAAgB3S,EAAI8L,OAAQ8G,EAAKC,GAC9CI,EAAO73D,KAAKi+B,OAAO2mB,EAAIqT,YAAcG,EAAa,GAAK,GAAK,EAchE,OAXIP,EAAO,EAEPM,EAAUN,EAAOQ,GADjBN,EAAUnT,EAAI8L,OAAS,EACe8G,EAAKC,GACpCI,EAAOQ,GAAYzT,EAAI8L,OAAQ8G,EAAKC,IAC3CU,EAAUN,EAAOQ,GAAYzT,EAAI8L,OAAQ8G,EAAKC,GAC9CM,EAAUnT,EAAI8L,OAAS,IAEvBqH,EAAUnT,EAAI8L,OACdyH,EAAUN,GAGP,CACHA,KAAMM,EACNzH,KAAMqH,EAEd,CAEA,SAASM,GAAY3H,EAAM8G,EAAKC,GAC5B,IAAIW,EAAab,GAAgB7G,EAAM8G,EAAKC,GACxCa,EAAiBf,GAAgB7G,EAAO,EAAG8G,EAAKC,GACpD,OAAQb,GAAWlG,GAAQ0H,EAAaE,GAAkB,CAC9D,CAgCA,SAASC,GAAY3T,GACjB,OAAOsT,GAAWtT,EAAKtpD,KAAKk9D,MAAMhB,IAAKl8D,KAAKk9D,MAAMf,KAAKI,IAC3D,CA9BA7K,GAAe,IAAK,CAAC,KAAM,GAAI,KAAM,QACrCA,GAAe,IAAK,CAAC,KAAM,GAAI,KAAM,WAIrC2C,EAAa,OAAQ,KACrBA,EAAa,UAAW,KAIxBU,EAAgB,OAAQ,GACxBA,EAAgB,UAAW,GAI3BsC,GAAc,IAAMZ,IACpBY,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,IAAMZ,IACpBY,GAAc,KAAMZ,GAAWJ,IAE/B4B,GAAkB,CAAC,IAAK,KAAM,IAAK,OAAO,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GACrEqnD,EAAKrnD,EAAMs5B,OAAO,EAAG,IAAM8mB,EAAMh4B,EACrC,IAUA,IAAI6/B,GAAoB,CACpBjB,IAAM,EACNC,IAAM,GAGV,SAASiB,KACL,OAAOp9D,KAAKk9D,MAAMhB,GACtB,CAEA,SAASmB,KACL,OAAOr9D,KAAKk9D,MAAMf,GACtB,CAIA,SAASmB,GAAYhgC,GACjB,IAAIi/B,EAAOv8D,KAAK8xD,aAAayK,KAAKv8D,MAClC,OAAgB,MAATs9B,EAAgBi/B,EAAOv8D,KAAKulC,IAAqB,GAAhBjI,EAAQi/B,GAAW,IAC/D,CAEA,SAASgB,GAAejgC,GACpB,IAAIi/B,EAAOK,GAAW58D,KAAM,EAAG,GAAGu8D,KAClC,OAAgB,MAATj/B,EAAgBi/B,EAAOv8D,KAAKulC,IAAqB,GAAhBjI,EAAQi/B,GAAW,IAC/D,CA+DA,SAASiB,GAAalgC,EAAOkvB,GACzB,MAAqB,kBAAVlvB,EACAA,EAGN2wB,MAAM3wB,GAKU,kBADrBA,EAAQkvB,EAAOiR,cAAcngC,IAElBA,EAGJ,KARIrqB,SAASqqB,EAAO,GAS/B,CAEA,SAASogC,GAAgBpgC,EAAOkvB,GAC5B,MAAqB,kBAAVlvB,EACAkvB,EAAOiR,cAAcngC,GAAS,GAAK,EAEvC2wB,MAAM3wB,GAAS,KAAOA,CACjC,CAGA,SAASqgC,GAAeC,EAAIr9D,GACxB,OAAOq9D,EAAG56D,MAAMzC,EAAG,GAAG0C,OAAO26D,EAAG56D,MAAM,EAAGzC,GAC7C,CAtFAmxD,GAAe,IAAK,EAAG,KAAM,OAE7BA,GAAe,KAAM,EAAG,GAAG,SAAUvrC,GACjC,OAAOnmB,KAAK8xD,aAAa+L,YAAY79D,KAAMmmB,EAC/C,IAEAurC,GAAe,MAAO,EAAG,GAAG,SAAUvrC,GAClC,OAAOnmB,KAAK8xD,aAAagM,cAAc99D,KAAMmmB,EACjD,IAEAurC,GAAe,OAAQ,EAAG,GAAG,SAAUvrC,GACnC,OAAOnmB,KAAK8xD,aAAaiM,SAAS/9D,KAAMmmB,EAC5C,IAEAurC,GAAe,IAAK,EAAG,EAAG,WAC1BA,GAAe,IAAK,EAAG,EAAG,cAI1B2C,EAAa,MAAO,KACpBA,EAAa,UAAW,KACxBA,EAAa,aAAc,KAG3BU,EAAgB,MAAO,IACvBA,EAAgB,UAAW,IAC3BA,EAAgB,aAAc,IAI9BsC,GAAc,IAAQZ,IACtBY,GAAc,IAAQZ,IACtBY,GAAc,IAAQZ,IACtBY,GAAc,MAAQ,SAAUG,EAAUhL,GACtC,OAAOA,EAAOwR,iBAAiBxG,EACnC,IACAH,GAAc,OAAS,SAAUG,EAAUhL,GACvC,OAAOA,EAAOyR,mBAAmBzG,EACrC,IACAH,GAAc,QAAU,SAAUG,EAAUhL,GACxC,OAAOA,EAAO0R,cAAc1G,EAChC,IAEAS,GAAkB,CAAC,KAAM,MAAO,SAAS,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GACpE,IAAIsnD,EAAUtN,EAAOF,QAAQyO,cAAcngC,EAAOpoB,EAAOg6C,EAAOf,SAEjD,MAAXqO,EACAD,EAAKh9D,EAAIi9D,EAET7O,EAAgBuB,GAAQhB,eAAiB5wB,CAEjD,IAEA26B,GAAkB,CAAC,IAAK,IAAK,MAAM,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GAC9DqnD,EAAKrnD,GAASogD,EAAMh4B,EACxB,IAiCA,IAAI6gC,GAAwB,2DAA2Dra,MAAM,KAC7F,SAAS2a,GAAgB1iC,EAAG5V,GACxB,IAAI43C,EAAWt/D,EAAQuB,KAAK0+D,WAAa1+D,KAAK0+D,UAC1C1+D,KAAK0+D,UAAW3iC,IAAW,IAANA,GAAc/7B,KAAK0+D,UAAU9E,SAAS10B,KAAK/e,GAAW,SAAW,cAC1F,OAAc,IAAN4V,EAAc4hC,GAAcI,EAAU/9D,KAAKk9D,MAAMhB,KAClDngC,EAAKgiC,EAAShiC,EAAE4iC,OAASZ,CACpC,CAEA,IAAIK,GAA6B,8BAA8Bta,MAAM,KACrE,SAAS8a,GAAqB7iC,GAC1B,OAAc,IAANA,EAAc4hC,GAAc39D,KAAK6+D,eAAgB7+D,KAAKk9D,MAAMhB,KAC7DngC,EAAK/7B,KAAK6+D,eAAe9iC,EAAE4iC,OAAS3+D,KAAK6+D,cACpD,CAEA,IAAIR,GAA2B,uBAAuBva,MAAM,KAC5D,SAASgb,GAAmB/iC,GACxB,OAAc,IAANA,EAAc4hC,GAAc39D,KAAK++D,aAAc/+D,KAAKk9D,MAAMhB,KAC3DngC,EAAK/7B,KAAK++D,aAAahjC,EAAE4iC,OAAS3+D,KAAK++D,YAClD,CAEA,SAASC,GAAoBC,EAAa94C,EAAQsmC,GAC9C,IAAIvuD,EAAG+7D,EAAI3Q,EAAK4Q,EAAM+E,EAAY9E,oBAClC,IAAKn6D,KAAKk/D,eAKN,IAJAl/D,KAAKk/D,eAAiB,GACtBl/D,KAAKm/D,oBAAsB,GAC3Bn/D,KAAKo/D,kBAAoB,GAEpBlhE,EAAI,EAAGA,EAAI,IAAKA,EACjBorD,EAAMiD,EAAU,CAAC,IAAM,IAAIoS,IAAIzgE,GAC/B8B,KAAKo/D,kBAAkBlhE,GAAK8B,KAAK69D,YAAYvU,EAAK,IAAI6Q,oBACtDn6D,KAAKm/D,oBAAoBjhE,GAAK8B,KAAK89D,cAAcxU,EAAK,IAAI6Q,oBAC1Dn6D,KAAKk/D,eAAehhE,GAAK8B,KAAK+9D,SAASzU,EAAK,IAAI6Q,oBAIxD,OAAI1N,EACe,SAAXtmC,GAEe,KADf8zC,EAAKztD,GAAQvN,KAAKe,KAAKk/D,eAAgBhF,IACpBD,EAAK,KACN,QAAX9zC,GAEQ,KADf8zC,EAAKztD,GAAQvN,KAAKe,KAAKm/D,oBAAqBjF,IACzBD,EAAK,MAGT,KADfA,EAAKztD,GAAQvN,KAAKe,KAAKo/D,kBAAmBlF,IACvBD,EAAK,KAGb,SAAX9zC,GAEY,KADZ8zC,EAAKztD,GAAQvN,KAAKe,KAAKk/D,eAAgBhF,MAK3B,KADZD,EAAKztD,GAAQvN,KAAKe,KAAKm/D,oBAAqBjF,MAK7B,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKo/D,kBAAmBlF,IAN/BD,EAOa,KACN,QAAX9zC,GAEK,KADZ8zC,EAAKztD,GAAQvN,KAAKe,KAAKm/D,oBAAqBjF,MAKhC,KADZD,EAAKztD,GAAQvN,KAAKe,KAAKk/D,eAAgBhF,MAKxB,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKo/D,kBAAmBlF,IAN/BD,EAOa,MAGZ,KADZA,EAAKztD,GAAQvN,KAAKe,KAAKo/D,kBAAmBlF,MAK9B,KADZD,EAAKztD,GAAQvN,KAAKe,KAAKk/D,eAAgBhF,MAKxB,KADfD,EAAKztD,GAAQvN,KAAKe,KAAKm/D,oBAAqBjF,IANjCD,EAOa,IAGpC,CAEA,SAASoF,GAAqBJ,EAAa94C,EAAQsmC,GAC/C,IAAIvuD,EAAGorD,EAAKgO,EAEZ,GAAIt3D,KAAKs/D,oBACL,OAAON,GAAoB//D,KAAKe,KAAMi/D,EAAa94C,EAAQsmC,GAU/D,IAPKzsD,KAAKk/D,iBACNl/D,KAAKk/D,eAAiB,GACtBl/D,KAAKo/D,kBAAoB,GACzBp/D,KAAKm/D,oBAAsB,GAC3Bn/D,KAAKu/D,mBAAqB,IAGzBrhE,EAAI,EAAGA,EAAI,EAAGA,IAAK,CAcpB,GAXAorD,EAAMiD,EAAU,CAAC,IAAM,IAAIoS,IAAIzgE,GAC3BuuD,IAAWzsD,KAAKu/D,mBAAmBrhE,KACnC8B,KAAKu/D,mBAAmBrhE,GAAK,IAAI8xD,OAAO,IAAMhwD,KAAK+9D,SAASzU,EAAK,IAAI1tB,QAAQ,IAAK,QAAU,IAAK,KACjG57B,KAAKm/D,oBAAoBjhE,GAAK,IAAI8xD,OAAO,IAAMhwD,KAAK89D,cAAcxU,EAAK,IAAI1tB,QAAQ,IAAK,QAAU,IAAK,KACvG57B,KAAKo/D,kBAAkBlhE,GAAK,IAAI8xD,OAAO,IAAMhwD,KAAK69D,YAAYvU,EAAK,IAAI1tB,QAAQ,IAAK,QAAU,IAAK,MAElG57B,KAAKk/D,eAAehhE,KACrBo5D,EAAQ,IAAMt3D,KAAK+9D,SAASzU,EAAK,IAAM,KAAOtpD,KAAK89D,cAAcxU,EAAK,IAAM,KAAOtpD,KAAK69D,YAAYvU,EAAK,IACzGtpD,KAAKk/D,eAAehhE,GAAK,IAAI8xD,OAAOsH,EAAM17B,QAAQ,IAAK,IAAK,MAG5D6wB,GAAqB,SAAXtmC,GAAqBnmB,KAAKu/D,mBAAmBrhE,GAAGgnC,KAAK+5B,GAC/D,OAAO/gE,EACJ,GAAIuuD,GAAqB,QAAXtmC,GAAoBnmB,KAAKm/D,oBAAoBjhE,GAAGgnC,KAAK+5B,GACtE,OAAO/gE,EACJ,GAAIuuD,GAAqB,OAAXtmC,GAAmBnmB,KAAKo/D,kBAAkBlhE,GAAGgnC,KAAK+5B,GACnE,OAAO/gE,EACJ,IAAKuuD,GAAUzsD,KAAKk/D,eAAehhE,GAAGgnC,KAAK+5B,GAC9C,OAAO/gE,CAEf,CACJ,CAIA,SAASshE,GAAiBliC,GACtB,IAAKt9B,KAAK6tD,UACN,OAAgB,MAATvwB,EAAgBt9B,KAAOuuD,IAElC,IAAIoQ,EAAM3+D,KAAK+qD,OAAS/qD,KAAKs8C,GAAG+f,YAAcr8D,KAAKs8C,GAAGmjB,SACtD,OAAa,MAATniC,GACAA,EAAQkgC,GAAalgC,EAAOt9B,KAAK8xD,cAC1B9xD,KAAKulC,IAAIjI,EAAQqhC,EAAK,MAEtBA,CAEf,CAEA,SAASe,GAAuBpiC,GAC5B,IAAKt9B,KAAK6tD,UACN,OAAgB,MAATvwB,EAAgBt9B,KAAOuuD,IAElC,IAAIiO,GAAWx8D,KAAK2+D,MAAQ,EAAI3+D,KAAK8xD,aAAaoL,MAAMhB,KAAO,EAC/D,OAAgB,MAAT5+B,EAAgBk/B,EAAUx8D,KAAKulC,IAAIjI,EAAQk/B,EAAS,IAC/D,CAEA,SAASmD,GAAoBriC,GACzB,IAAKt9B,KAAK6tD,UACN,OAAgB,MAATvwB,EAAgBt9B,KAAOuuD,IAOlC,GAAa,MAATjxB,EAAe,CACf,IAAIk/B,EAAUkB,GAAgBpgC,EAAOt9B,KAAK8xD,cAC1C,OAAO9xD,KAAK2+D,IAAI3+D,KAAK2+D,MAAQ,EAAInC,EAAUA,EAAU,EACzD,CACI,OAAOx8D,KAAK2+D,OAAS,CAE7B,CAEA,IAAIL,GAAuBlH,GAC3B,SAAS8G,GAAe1G,GACpB,OAAIx3D,KAAKs/D,qBACA5T,EAAW1rD,KAAM,mBAClB4/D,GAAqB3gE,KAAKe,MAE1Bw3D,EACOx3D,KAAK6/D,qBAEL7/D,KAAK8/D,iBAGXpU,EAAW1rD,KAAM,oBAClBA,KAAK8/D,eAAiBxB,IAEnBt+D,KAAK6/D,sBAAwBrI,EAChCx3D,KAAK6/D,qBAAuB7/D,KAAK8/D,eAE7C,CAEA,IAAIvB,GAA4BnH,GAChC,SAAS6G,GAAoBzG,GACzB,OAAIx3D,KAAKs/D,qBACA5T,EAAW1rD,KAAM,mBAClB4/D,GAAqB3gE,KAAKe,MAE1Bw3D,EACOx3D,KAAK+/D,0BAEL//D,KAAKggE,sBAGXtU,EAAW1rD,KAAM,yBAClBA,KAAKggE,oBAAsBzB,IAExBv+D,KAAK+/D,2BAA6BvI,EACrCx3D,KAAK+/D,0BAA4B//D,KAAKggE,oBAElD,CAEA,IAAIxB,GAA0BpH,GAC9B,SAAS4G,GAAkBxG,GACvB,OAAIx3D,KAAKs/D,qBACA5T,EAAW1rD,KAAM,mBAClB4/D,GAAqB3gE,KAAKe,MAE1Bw3D,EACOx3D,KAAKigE,wBAELjgE,KAAKkgE,oBAGXxU,EAAW1rD,KAAM,uBAClBA,KAAKkgE,kBAAoB1B,IAEtBx+D,KAAKigE,yBAA2BzI,EACnCx3D,KAAKigE,wBAA0BjgE,KAAKkgE,kBAEhD,CAGA,SAASN,KACL,SAAS1E,EAAUvuD,EAAGnN,GAClB,OAAOA,EAAEpB,OAASuO,EAAEvO,MACxB,CAEA,IACIF,EAAGorD,EAAK6W,EAAMC,EAAQC,EADtBC,EAAY,GAAInF,EAAc,GAAIC,EAAa,GAAIC,EAAc,GAErE,IAAKn9D,EAAI,EAAGA,EAAI,EAAGA,IAEforD,EAAMiD,EAAU,CAAC,IAAM,IAAIoS,IAAIzgE,GAC/BiiE,EAAOngE,KAAK69D,YAAYvU,EAAK,IAC7B8W,EAASpgE,KAAK89D,cAAcxU,EAAK,IACjC+W,EAAQrgE,KAAK+9D,SAASzU,EAAK,IAC3BgX,EAAU/hE,KAAK4hE,GACfhF,EAAY58D,KAAK6hE,GACjBhF,EAAW78D,KAAK8hE,GAChBhF,EAAY98D,KAAK4hE,GACjB9E,EAAY98D,KAAK6hE,GACjB/E,EAAY98D,KAAK8hE,GAQrB,IAJAC,EAAUzY,KAAKqT,GACfC,EAAYtT,KAAKqT,GACjBE,EAAWvT,KAAKqT,GAChBG,EAAYxT,KAAKqT,GACZh9D,EAAI,EAAGA,EAAI,EAAGA,IACfi9D,EAAYj9D,GAAKy5D,GAAYwD,EAAYj9D,IACzCk9D,EAAWl9D,GAAKy5D,GAAYyD,EAAWl9D,IACvCm9D,EAAYn9D,GAAKy5D,GAAY0D,EAAYn9D,IAG7C8B,KAAK8/D,eAAiB,IAAI9P,OAAO,KAAOqL,EAAYn8D,KAAK,KAAO,IAAK,KACrEc,KAAKggE,oBAAsBhgE,KAAK8/D,eAChC9/D,KAAKkgE,kBAAoBlgE,KAAK8/D,eAE9B9/D,KAAK6/D,qBAAuB,IAAI7P,OAAO,KAAOoL,EAAWl8D,KAAK,KAAO,IAAK,KAC1Ec,KAAK+/D,0BAA4B,IAAI/P,OAAO,KAAOmL,EAAYj8D,KAAK,KAAO,IAAK,KAChFc,KAAKigE,wBAA0B,IAAIjQ,OAAO,KAAOsQ,EAAUphE,KAAK,KAAO,IAAK,IAChF,CAIA,SAASqhE,KACL,OAAOvgE,KAAKwgE,QAAU,IAAM,EAChC,CAEA,SAASC,KACL,OAAOzgE,KAAKwgE,SAAW,EAC3B,CAwBA,SAAShT,GAAUt4C,EAAOwrD,GACtBhP,GAAex8C,EAAO,EAAG,GAAG,WACxB,OAAOlV,KAAK8xD,aAAatE,SAASxtD,KAAKwgE,QAASxgE,KAAK2gE,UAAWD,EACpE,GACJ,CAcA,SAASE,GAAepJ,EAAUhL,GAC9B,OAAOA,EAAOqU,cAClB,CA0DA,SAASC,GAAYxjC,GAGjB,MAAiD,OAAxCA,EAAQ,IAAIzmB,cAAckqD,OAAO,EAC9C,CAxGArP,GAAe,IAAK,CAAC,KAAM,GAAI,EAAG,QAClCA,GAAe,IAAK,CAAC,KAAM,GAAI,EAAG6O,IAClC7O,GAAe,IAAK,CAAC,KAAM,GAAI,EAAG+O,IAElC/O,GAAe,MAAO,EAAG,GAAG,WACxB,MAAO,GAAK6O,GAAQ5hE,MAAMqB,MAAQixD,GAASjxD,KAAK2gE,UAAW,EAC/D,IAEAjP,GAAe,QAAS,EAAG,GAAG,WAC1B,MAAO,GAAK6O,GAAQ5hE,MAAMqB,MAAQixD,GAASjxD,KAAK2gE,UAAW,GACvD1P,GAASjxD,KAAKghE,UAAW,EACjC,IAEAtP,GAAe,MAAO,EAAG,GAAG,WACxB,MAAO,GAAK1xD,KAAKwgE,QAAUvP,GAASjxD,KAAK2gE,UAAW,EACxD,IAEAjP,GAAe,QAAS,EAAG,GAAG,WAC1B,MAAO,GAAK1xD,KAAKwgE,QAAUvP,GAASjxD,KAAK2gE,UAAW,GAChD1P,GAASjxD,KAAKghE,UAAW,EACjC,IAQAxT,GAAS,KAAK,GACdA,GAAS,KAAK,GAId6G,EAAa,OAAQ,KAGrBU,EAAgB,OAAQ,IAQxBsC,GAAc,IAAMuJ,IACpBvJ,GAAc,IAAMuJ,IACpBvJ,GAAc,IAAMZ,IACpBY,GAAc,IAAMZ,IACpBY,GAAc,IAAMZ,IACpBY,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,KAAMZ,GAAWJ,IAE/BgB,GAAc,MAAOX,IACrBW,GAAc,QAASV,IACvBU,GAAc,MAAOX,IACrBW,GAAc,QAASV,IAEvBoB,GAAc,CAAC,IAAK,MAAOQ,IAC3BR,GAAc,CAAC,IAAK,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GAC/C,IAAI+R,EAAS3L,EAAMh4B,GACnBmnB,EAAM8T,IAAmB,KAAX0I,EAAgB,EAAIA,CACtC,IACAlJ,GAAc,CAAC,IAAK,MAAM,SAAUz6B,EAAOmnB,EAAOyK,GAC9CA,EAAOgS,MAAQhS,EAAOF,QAAQmS,KAAK7jC,GACnC4xB,EAAOkS,UAAY9jC,CACvB,IACAy6B,GAAc,CAAC,IAAK,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GAC/CzK,EAAM8T,IAAQjD,EAAMh4B,GACpBqwB,EAAgBuB,GAAQd,SAAU,CACtC,IACA2J,GAAc,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GACzC,IAAImS,EAAM/jC,EAAMl/B,OAAS,EACzBqmD,EAAM8T,IAAQjD,EAAMh4B,EAAMkR,OAAO,EAAG6yB,IACpC5c,EAAM+T,IAAUlD,EAAMh4B,EAAMkR,OAAO6yB,IACnC1T,EAAgBuB,GAAQd,SAAU,CACtC,IACA2J,GAAc,SAAS,SAAUz6B,EAAOmnB,EAAOyK,GAC3C,IAAIoS,EAAOhkC,EAAMl/B,OAAS,EACtBmjE,EAAOjkC,EAAMl/B,OAAS,EAC1BqmD,EAAM8T,IAAQjD,EAAMh4B,EAAMkR,OAAO,EAAG8yB,IACpC7c,EAAM+T,IAAUlD,EAAMh4B,EAAMkR,OAAO8yB,EAAM,IACzC7c,EAAMgU,IAAUnD,EAAMh4B,EAAMkR,OAAO+yB,IACnC5T,EAAgBuB,GAAQd,SAAU,CACtC,IACA2J,GAAc,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GACzC,IAAImS,EAAM/jC,EAAMl/B,OAAS,EACzBqmD,EAAM8T,IAAQjD,EAAMh4B,EAAMkR,OAAO,EAAG6yB,IACpC5c,EAAM+T,IAAUlD,EAAMh4B,EAAMkR,OAAO6yB,GACvC,IACAtJ,GAAc,SAAS,SAAUz6B,EAAOmnB,EAAOyK,GAC3C,IAAIoS,EAAOhkC,EAAMl/B,OAAS,EACtBmjE,EAAOjkC,EAAMl/B,OAAS,EAC1BqmD,EAAM8T,IAAQjD,EAAMh4B,EAAMkR,OAAO,EAAG8yB,IACpC7c,EAAM+T,IAAUlD,EAAMh4B,EAAMkR,OAAO8yB,EAAM,IACzC7c,EAAMgU,IAAUnD,EAAMh4B,EAAMkR,OAAO+yB,GACvC,IAUA,IAAIC,GAA6B,gBACjC,SAASE,GAAgBlB,EAAOG,EAASgB,GACrC,OAAInB,EAAQ,GACDmB,EAAU,KAAO,KAEjBA,EAAU,KAAO,IAEhC,CASA,IAyBIC,GAzBAH,GAAa/L,GAAW,SAAS,GAEjCmM,GAAa,CACb/Q,SAAUP,EACV8B,eAAgBE,EAChBJ,YAAaa,EACbpB,QAASsB,EACT4O,uBAAwB3O,EACxBa,aAAcX,EAEd4F,OAAQI,GACRL,YAAaM,GAEbiD,KAAMY,GAENY,SAAUI,GACVN,YAAaQ,GACbP,cAAeM,GAEf2D,cAAeP,IAIfQ,GAAU,CAAC,EACXC,GAAiB,CAAC,EAGtB,SAASK,GAAgBtjE,GACrB,OAAOA,EAAMA,EAAI6X,cAAc+kB,QAAQ,IAAK,KAAO58B,CACvD,CAKA,SAASujE,GAAa7e,GAGlB,IAFA,IAAWiD,EAAGvlD,EAAMorD,EAAQ1I,EAAxB5lD,EAAI,EAEDA,EAAIwlD,EAAMtlD,QAAQ,CAKrB,IAHAuoD,GADA7C,EAAQwe,GAAgB5e,EAAMxlD,IAAI4lD,MAAM,MAC9B1lD,OAEVgD,GADAA,EAAOkhE,GAAgB5e,EAAMxlD,EAAI,KACnBkD,EAAK0iD,MAAM,KAAO,KACzB6C,EAAI,GAAG,CAEV,GADA6F,EAASgW,GAAW1e,EAAM9gD,MAAM,EAAG2jD,GAAGznD,KAAK,MAEvC,OAAOstD,EAEX,GAAIprD,GAAQA,EAAKhD,QAAUuoD,GAAK2kB,EAAcxnB,EAAO1iD,GAAM,IAASulD,EAAI,EAEpE,MAEJA,GACJ,CACAzoD,GACJ,CACA,OAAO0jE,EACX,CAEA,SAASY,GAAWzpD,GAChB,IAAI2pD,EAAY,KAEhB,IAAKV,GAAQjpD,IACL5Z,GAAUA,EAAOC,QACrB,IACIsjE,EAAYd,GAAae,MAEzBC,OAAAA,WAAAA,IAAAA,EAAAA,IAAAA,MAAAA,kCAAAA,MAAAA,EAAAA,KAAAA,mBAAAA,CAAAA,CAAAA,IACAC,GAAmBH,EACV,CAAX,MAAOrhE,GAAI,CAEjB,OAAO2gE,GAAQjpD,EACnB,CAKA,SAAS8pD,GAAoB7jE,EAAKwZ,GAC9B,IAAIvQ,EAqBJ,OApBIjJ,KAEIiJ,EADA8jD,EAAYvzC,GACLsqD,GAAU9jE,GAGV+jE,GAAa/jE,EAAKwZ,IAKzBopD,GAAe35D,EAGU,qBAAbg5C,SAA6BA,QAAQ3b,MAE7C2b,QAAQ3b,KAAK,UAAYtmC,EAAO,2CAKrC4iE,GAAae,KACxB,CAEA,SAASI,GAAchqD,EAAMm2C,GACzB,GAAe,OAAXA,EAAiB,CACjB,IAAI1C,EAAQ4D,EAAeyR,GAE3B,GADA3S,EAAOtJ,KAAO7sC,EACO,MAAjBipD,GAAQjpD,GACR22C,EAAgB,uBACR,2OAIRU,EAAe4R,GAAQjpD,GAAM+2C,aAC1B,GAA2B,MAAvBZ,EAAO8T,aACd,GAAoC,MAAhChB,GAAQ9S,EAAO8T,cACf5S,EAAe4R,GAAQ9S,EAAO8T,cAAclT,YACzC,CAEH,GAAc,OADdtD,EAASgW,GAAWtT,EAAO8T,eAWvB,OAPKf,GAAe/S,EAAO8T,gBACvBf,GAAe/S,EAAO8T,cAAgB,IAE1Cf,GAAe/S,EAAO8T,cAAczkE,KAAK,CACrCwa,KAAMA,EACNm2C,OAAQA,IAEL,KATPkB,EAAe5D,EAAOsD,OAW9B,CAgBJ,OAdAkS,GAAQjpD,GAAQ,IAAIu3C,EAAOH,EAAaC,EAAclB,IAElD+S,GAAelpD,IACfkpD,GAAelpD,GAAM1M,SAAQ,SAAU9I,GACnCw/D,GAAax/D,EAAEwV,KAAMxV,EAAE2rD,OAC3B,IAMJ2T,GAAmB9pD,GAGZipD,GAAQjpD,EACnB,CAGI,cADOipD,GAAQjpD,GACR,IAEf,CAEA,SAASkqD,GAAalqD,EAAMm2C,GACxB,GAAc,MAAVA,EAAgB,CAChB,IAAI1C,EAAQ0W,EAAW9S,EAAeyR,GAGrB,OADjBqB,EAAYV,GAAWzpD,MAEnBq3C,EAAe8S,EAAUpT,UAG7BtD,EAAS,IAAI8D,EADbpB,EAASiB,EAAaC,EAAclB,KAE7B8T,aAAehB,GAAQjpD,GAC9BipD,GAAQjpD,GAAQyzC,EAGhBqW,GAAmB9pD,EACvB,MAEyB,MAAjBipD,GAAQjpD,KAC0B,MAA9BipD,GAAQjpD,GAAMiqD,aACdhB,GAAQjpD,GAAQipD,GAAQjpD,GAAMiqD,aACN,MAAjBhB,GAAQjpD,WACRipD,GAAQjpD,IAI3B,OAAOipD,GAAQjpD,EACnB,CAGA,SAAS+pD,GAAW9jE,GAChB,IAAIwtD,EAMJ,GAJIxtD,GAAOA,EAAIgwD,SAAWhwD,EAAIgwD,QAAQ2T,QAClC3jE,EAAMA,EAAIgwD,QAAQ2T,QAGjB3jE,EACD,OAAO4iE,GAGX,IAAKnjE,EAAQO,GAAM,CAGf,GADAwtD,EAASgW,GAAWxjE,GAEhB,OAAOwtD,EAEXxtD,EAAM,CAACA,EACX,CAEA,OAAOujE,GAAavjE,EACxB,CAEA,SAASmkE,KACL,OAAO51B,EAAKy0B,GAChB,CAEA,SAASoB,GAAernC,GACpB,IAAI3N,EACAzhB,EAAIovB,EAAE3U,GAyBV,OAvBIza,IAAsC,IAAjCghD,EAAgB5xB,GAAG3N,WACxBA,EACIzhB,EAAE0rD,IAAe,GAAK1rD,EAAE0rD,IAAe,GAAMA,GAC7C1rD,EAAE2rD,IAAe,GAAK3rD,EAAE2rD,IAAexC,GAAYnpD,EAAEyrD,IAAOzrD,EAAE0rD,KAAUC,GACxE3rD,EAAE4rD,IAAe,GAAK5rD,EAAE4rD,IAAe,IAAmB,KAAZ5rD,EAAE4rD,MAA+B,IAAd5rD,EAAE6rD,KAA+B,IAAd7rD,EAAE8rD,KAAoC,IAAnB9rD,EAAE+rD,KAAuBH,GAChI5rD,EAAE6rD,IAAe,GAAK7rD,EAAE6rD,IAAe,GAAMA,GAC7C7rD,EAAE8rD,IAAe,GAAK9rD,EAAE8rD,IAAe,GAAMA,GAC7C9rD,EAAE+rD,IAAe,GAAK/rD,EAAE+rD,IAAe,IAAMA,IAC5C,EAED/K,EAAgB5xB,GAAGsnC,qBAAuBj1C,EAAWgqC,IAAQhqC,EAAWkqC,MACxElqC,EAAWkqC,IAEX3K,EAAgB5xB,GAAGunC,iBAAgC,IAAdl1C,IACrCA,EAAWuqC,IAEXhL,EAAgB5xB,GAAGwnC,mBAAkC,IAAdn1C,IACvCA,EAAWwqC,IAGfjL,EAAgB5xB,GAAG3N,SAAWA,GAG3B2N,CACX,CAGA,SAAS0qC,GAAS95D,EAAGnN,EAAGqT,GACpB,OAAS,MAALlG,EACOA,EAEF,MAALnN,EACOA,EAEJqT,CACX,CAEA,SAAS6zD,GAAiBxX,GAEtB,IAAIyX,EAAW,IAAI7lB,KAAKwK,EAAMvK,OAC9B,OAAImO,EAAO0X,QACA,CAACD,EAAS5K,iBAAkB4K,EAASE,cAAeF,EAASG,cAEjE,CAACH,EAASnf,cAAemf,EAASI,WAAYJ,EAASK,UAClE,CAMA,SAASC,GAAiB/X,GACtB,IAAIhxD,EAAG23D,EAAkBqR,EAAaC,EAAiBC,EAA1C9pC,EAAQ,GAErB,IAAI4xB,EAAO5S,GAAX,CA6BA,IAzBA4qB,EAAcR,GAAiBxX,GAG3BA,EAAOgJ,IAAyB,MAAnBhJ,EAAO9nC,GAAGkxC,KAAqC,MAApBpJ,EAAO9nC,GAAGixC,KAClDgP,GAAsBnY,GAID,MAArBA,EAAOoY,aACPF,EAAYX,GAASvX,EAAO9nC,GAAGgxC,IAAO8O,EAAY9O,MAE9ClJ,EAAOoY,WAAahM,GAAW8L,IAAoC,IAAtBlY,EAAOoY,cACpD3Z,EAAgBuB,GAAQmU,oBAAqB,GAGjDxN,EAAOgG,GAAcuL,EAAW,EAAGlY,EAAOoY,YAC1CpY,EAAO9nC,GAAGixC,IAASxC,EAAKgR,cACxB3X,EAAO9nC,GAAGkxC,IAAQzC,EAAKiR,cAQtB5oE,EAAI,EAAGA,EAAI,GAAqB,MAAhBgxD,EAAO9nC,GAAGlpB,KAAcA,EACzCgxD,EAAO9nC,GAAGlpB,GAAKo/B,EAAMp/B,GAAKgpE,EAAYhpE,GAI1C,KAAOA,EAAI,EAAGA,IACVgxD,EAAO9nC,GAAGlpB,GAAKo/B,EAAMp/B,GAAsB,MAAhBgxD,EAAO9nC,GAAGlpB,GAAqB,IAANA,EAAU,EAAI,EAAKgxD,EAAO9nC,GAAGlpB,GAI7D,KAApBgxD,EAAO9nC,GAAGmxC,KACgB,IAAtBrJ,EAAO9nC,GAAGoxC,KACY,IAAtBtJ,EAAO9nC,GAAGqxC,KACiB,IAA3BvJ,EAAO9nC,GAAGsxC,MACdxJ,EAAOqY,UAAW,EAClBrY,EAAO9nC,GAAGmxC,IAAQ,GAGtBrJ,EAAO5S,IAAM4S,EAAO0X,QAAU/K,GAAgBH,IAAY/8D,MAAM,KAAM2+B,GACtE6pC,EAAkBjY,EAAO0X,QAAU1X,EAAO5S,GAAG+f,YAAcnN,EAAO5S,GAAGmjB,SAIlD,MAAfvQ,EAAOzG,MACPyG,EAAO5S,GAAG+pB,cAAcnX,EAAO5S,GAAGgqB,gBAAkBpX,EAAOzG,MAG3DyG,EAAOqY,WACPrY,EAAO9nC,GAAGmxC,IAAQ,IAIlBrJ,EAAOgJ,IAA6B,qBAAhBhJ,EAAOgJ,GAAG34D,GAAqB2vD,EAAOgJ,GAAG34D,IAAM4nE,IACnExZ,EAAgBuB,GAAQxB,iBAAkB,EA5D9C,CA8DJ,CAEA,SAAS2Z,GAAsBnY,GAC3B,IAAI1rD,EAAGgkE,EAAUjL,EAAMC,EAASN,EAAKC,EAAKsL,EAAMC,EAGhD,GAAY,OADZlkE,EAAI0rD,EAAOgJ,IACL0P,IAAqB,MAAPpkE,EAAEqkE,GAAoB,MAAPrkE,EAAE+N,EACjC2qD,EAAM,EACNC,EAAM,EAMNqL,EAAWf,GAASjjE,EAAEokE,GAAI1Y,EAAO9nC,GAAGgxC,IAAOwE,GAAWkL,KAAe,EAAG,GAAG1S,MAC3EmH,EAAOkK,GAASjjE,EAAEqkE,EAAG,KACrBrL,EAAUiK,GAASjjE,EAAE+N,EAAG,IACV,GAAKirD,EAAU,KACzBkL,GAAkB,OAEnB,CACHxL,EAAMhN,EAAOF,QAAQkO,MAAMhB,IAC3BC,EAAMjN,EAAOF,QAAQkO,MAAMf,IAE3B,IAAIwL,EAAU/K,GAAWkL,KAAe5L,EAAKC,GAE7CqL,EAAWf,GAASjjE,EAAEukE,GAAI7Y,EAAO9nC,GAAGgxC,IAAOuP,EAAQvS,MAGnDmH,EAAOkK,GAASjjE,EAAEA,EAAGmkE,EAAQpL,MAElB,MAAP/4D,EAAEjE,IAEFi9D,EAAUh5D,EAAEjE,GACE,GAAKi9D,EAAU,KACzBkL,GAAkB,GAER,MAAPlkE,EAAEnC,GAETm7D,EAAUh5D,EAAEnC,EAAI66D,GACZ14D,EAAEnC,EAAI,GAAKmC,EAAEnC,EAAI,KACjBqmE,GAAkB,IAItBlL,EAAUN,CAElB,CACIK,EAAO,GAAKA,EAAOQ,GAAYyK,EAAUtL,EAAKC,GAC9CxO,EAAgBuB,GAAQoU,gBAAiB,EACf,MAAnBoE,EACP/Z,EAAgBuB,GAAQqU,kBAAmB,GAE3CkE,EAAOnL,GAAmBkL,EAAUjL,EAAMC,EAASN,EAAKC,GACxDjN,EAAO9nC,GAAGgxC,IAAQqP,EAAKrS,KACvBlG,EAAOoY,WAAaG,EAAK9K,UAEjC,CAIA,IAAI6G,GAAmB,mJACnBC,GAAgB,8IAEhBC,GAAU,wBAEVC,GAAW,CACX,CAAC,eAAgB,uBACjB,CAAC,aAAc,mBACf,CAAC,eAAgB,kBACjB,CAAC,aAAc,eAAe,GAC9B,CAAC,WAAY,eACb,CAAC,UAAW,cAAc,GAC1B,CAAC,aAAc,cACf,CAAC,WAAY,SAEb,CAAC,aAAc,eACf,CAAC,YAAa,eAAe,GAC7B,CAAC,UAAW,UAIZC,GAAW,CACX,CAAC,gBAAiB,uBAClB,CAAC,gBAAiB,sBAClB,CAAC,WAAY,kBACb,CAAC,QAAS,aACV,CAAC,cAAe,qBAChB,CAAC,cAAe,oBAChB,CAAC,SAAU,gBACX,CAAC,OAAQ,YACT,CAAC,KAAM,SAGPC,GAAkB,sBAGtB,SAASY,GAAcvV,GACnB,IAAIhxD,EAAG6E,EAGH2hE,EAAWC,EAAYC,EAAYC,EAFnC3iC,EAASgtB,EAAO1pD,GAChBk2C,EAAQ8nB,GAAiBsB,KAAK5iC,IAAWuhC,GAAcqB,KAAK5iC,GAGhE,GAAIwZ,EAAO,CAGP,IAFAiS,EAAgBuB,GAAQ7B,KAAM,EAEzBnvD,EAAI,EAAG6E,EAAI4gE,GAASvlE,OAAQF,EAAI6E,EAAG7E,IACpC,GAAIylE,GAASzlE,GAAG,GAAG4mE,KAAKppB,EAAM,IAAK,CAC/BipB,EAAahB,GAASzlE,GAAG,GACzBwmE,GAA+B,IAAnBf,GAASzlE,GAAG,GACxB,KACJ,CAEJ,GAAkB,MAAdymE,EAEA,YADAzV,EAAOpB,UAAW,GAGtB,GAAIpS,EAAM,GAAI,CACV,IAAKx9C,EAAI,EAAG6E,EAAI6gE,GAASxlE,OAAQF,EAAI6E,EAAG7E,IACpC,GAAI0lE,GAAS1lE,GAAG,GAAG4mE,KAAKppB,EAAM,IAAK,CAE/BkpB,GAAclpB,EAAM,IAAM,KAAOkoB,GAAS1lE,GAAG,GAC7C,KACJ,CAEJ,GAAkB,MAAd0mE,EAEA,YADA1V,EAAOpB,UAAW,EAG1B,CACA,IAAK4W,GAA2B,MAAdE,EAEd,YADA1V,EAAOpB,UAAW,GAGtB,GAAIpS,EAAM,GAAI,CACV,IAAIgoB,GAAQoB,KAAKppB,EAAM,IAInB,YADAwT,EAAOpB,UAAW,GAFlB+W,EAAW,GAKnB,CACA3V,EAAO1S,GAAKmoB,GAAcC,GAAc,KAAOC,GAAY,IAC3DI,GAA0B/V,EAC9B,MACIA,EAAOpB,UAAW,CAE1B,CAGA,IAAIL,GAAU,0LAEd,SAASyX,GAA0BC,EAASC,EAAUC,EAAQC,EAASC,EAAWC,GAC9E,IAAIjkE,EAAS,CACTkkE,GAAeN,GACf7L,GAAyB9sD,QAAQ44D,GACjCnyD,SAASoyD,EAAQ,IACjBpyD,SAASqyD,EAAS,IAClBryD,SAASsyD,EAAW,KAOxB,OAJIC,GACAjkE,EAAOhD,KAAK0U,SAASuyD,EAAW,KAG7BjkE,CACX,CAEA,SAASkkE,GAAeN,GACpB,IAAI/P,EAAOniD,SAASkyD,EAAS,IAC7B,OAAI/P,GAAQ,GACD,IAAOA,EACPA,GAAQ,IACR,KAAOA,EAEXA,CACX,CAEA,SAASsQ,GAAkBplE,GAEvB,OAAOA,EAAEs7B,QAAQ,oBAAqB,KAAKA,QAAQ,WAAY,KAAKA,QAAQ,SAAU,IAAIA,QAAQ,SAAU,GAChH,CAEA,SAAS+pC,GAAaC,EAAYC,EAAa3W,GAC3C,OAAI0W,GAEsBxH,GAA2B5xD,QAAQo5D,KACrC,IAAI9kB,KAAK+kB,EAAY,GAAIA,EAAY,GAAIA,EAAY,IAAIpG,WAEzE9R,EAAgBuB,GAAQxB,iBAAkB,EAC1CwB,EAAOpB,UAAW,GACX,EAInB,CAEA,IAAIgW,GAAa,CACbC,GAAI,EACJC,IAAK,EACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,IACLC,KAAK,KAGT,SAASsB,GAAgBC,EAAWC,EAAgBC,GAChD,GAAIF,EACA,OAAOjC,GAAWiC,GACf,GAAIC,EAEP,OAAO,EAEP,IAAIE,EAAKjzD,SAASgzD,EAAW,IACzBlqC,EAAImqC,EAAK,IACb,OADuBA,EAAKnqC,GAAK,IACtB,GAAKA,CAExB,CAGA,SAASoqC,GAAkBjX,GACvB,IAAIxT,EAAQ+R,GAAQqX,KAAKY,GAAkBxW,EAAO1pD,KAClD,GAAIk2C,EAAO,CACP,IAAI0qB,EAAclB,GAA0BxpB,EAAM,GAAIA,EAAM,GAAIA,EAAM,GAAIA,EAAM,GAAIA,EAAM,GAAIA,EAAM,IACpG,IAAKiqB,GAAajqB,EAAM,GAAI0qB,EAAalX,GACrC,OAGJA,EAAO9nC,GAAKg/C,EACZlX,EAAOzG,KAAOqd,GAAgBpqB,EAAM,GAAIA,EAAM,GAAIA,EAAM,KAExDwT,EAAO5S,GAAKuf,GAAcl9D,MAAM,KAAMuwD,EAAO9nC,IAC7C8nC,EAAO5S,GAAG+pB,cAAcnX,EAAO5S,GAAGgqB,gBAAkBpX,EAAOzG,MAE3DkF,EAAgBuB,GAAQzB,SAAU,CACtC,MACIyB,EAAOpB,UAAW,CAE1B,CAGA,SAASyY,GAAiBrX,GACtB,IAAI0I,EAAUiM,GAAgBiB,KAAK5V,EAAO1pD,IAE1B,OAAZoyD,GAKJ6M,GAAcvV,IACU,IAApBA,EAAOpB,kBACAoB,EAAOpB,SAKlBqY,GAAkBjX,IACM,IAApBA,EAAOpB,kBACAoB,EAAOpB,SAMlBxC,EAAMkb,wBAAwBtX,MAnB1BA,EAAO5S,GAAK,IAAIwE,MAAM8W,EAAQ,GAoBtC,CAmBA,SAASqN,GAA0B/V,GAE/B,GAAIA,EAAO1S,KAAO8O,EAAM0c,SAIxB,GAAI9Y,EAAO1S,KAAO8O,EAAM2c,SAAxB,CAIA/Y,EAAO9nC,GAAK,GACZumC,EAAgBuB,GAAQtC,OAAQ,EAGhC,IACI1uD,EAAG2nE,EAAa5wD,EAAQC,EAAOgzD,EAD/BhmC,EAAS,GAAKgtB,EAAO1pD,GAErB2iE,EAAejmC,EAAO9jC,OACtBgqE,EAAyB,EAI7B,IAFAnzD,EAASi9C,GAAahD,EAAO1S,GAAI0S,EAAOF,SAAStT,MAAM4V,KAAqB,GAEvEpzD,EAAI,EAAGA,EAAI+W,EAAO7W,OAAQF,IAC3BgX,EAAQD,EAAO/W,IACf2nE,GAAe3jC,EAAOwZ,MAAM+b,GAAsBviD,EAAOg6C,KAAY,IAAI,OAIrEgZ,EAAUhmC,EAAOsM,OAAO,EAAGtM,EAAO11B,QAAQq5D,KAC9BznE,OAAS,GACjBuvD,EAAgBuB,GAAQpC,YAAYvuD,KAAK2pE,GAE7ChmC,EAASA,EAAOl/B,MAAMk/B,EAAO11B,QAAQq5D,GAAeA,EAAYznE,QAChEgqE,GAA0BvC,EAAYznE,QAGtCqzD,GAAqBv8C,IACjB2wD,EACAlY,EAAgBuB,GAAQtC,OAAQ,EAGhCe,EAAgBuB,GAAQrC,aAAatuD,KAAK2W,GAE9CijD,GAAwBjjD,EAAO2wD,EAAa3W,IAEvCA,EAAOf,UAAY0X,GACxBlY,EAAgBuB,GAAQrC,aAAatuD,KAAK2W,GAKlDy4C,EAAgBuB,GAAQnC,cAAgBob,EAAeC,EACnDlmC,EAAO9jC,OAAS,GAChBuvD,EAAgBuB,GAAQpC,YAAYvuD,KAAK2jC,GAIzCgtB,EAAO9nC,GAAGmxC,KAAS,KACiB,IAApC5K,EAAgBuB,GAAQd,SACxBc,EAAO9nC,GAAGmxC,IAAQ,IAClB5K,EAAgBuB,GAAQd,aAAUpgD,GAGtC2/C,EAAgBuB,GAAQ5B,gBAAkB4B,EAAO9nC,GAAGpkB,MAAM,GAC1D2qD,EAAgBuB,GAAQ1B,SAAW0B,EAAOkS,UAE1ClS,EAAO9nC,GAAGmxC,IAAQ8P,GAAgBnZ,EAAOF,QAASE,EAAO9nC,GAAGmxC,IAAOrJ,EAAOkS,WAE1E6F,GAAgB/X,GAChBkU,GAAclU,EA3Dd,MAFIiX,GAAkBjX,QAJlBuV,GAAcvV,EAkEtB,CAGA,SAASmZ,GAAiB7b,EAAQ+b,EAAM/a,GACpC,IAAIgb,EAEJ,OAAgB,MAAZhb,EAEO+a,EAEgB,MAAvB/b,EAAOic,aACAjc,EAAOic,aAAaF,EAAM/a,GACX,MAAfhB,EAAO2U,OAEdqH,EAAOhc,EAAO2U,KAAK3T,KACP+a,EAAO,KACfA,GAAQ,IAEPC,GAAiB,KAATD,IACTA,EAAO,GAEJA,GAGAA,CAEf,CAGA,SAASG,GAAyBxZ,GAC9B,IAAIyZ,EACAC,EAEAC,EACA3qE,EACA4qE,EAEJ,GAAyB,IAArB5Z,EAAO1S,GAAGp+C,OAGV,OAFAuvD,EAAgBuB,GAAQ/B,eAAgB,OACxC+B,EAAO5S,GAAK,IAAIwE,KAAKyN,MAIzB,IAAKrwD,EAAI,EAAGA,EAAIgxD,EAAO1S,GAAGp+C,OAAQF,IAC9B4qE,EAAe,EACfH,EAAaja,EAAW,CAAC,EAAGQ,GACN,MAAlBA,EAAO0X,UACP+B,EAAW/B,QAAU1X,EAAO0X,SAEhC+B,EAAWnsB,GAAK0S,EAAO1S,GAAGt+C,GAC1B+mE,GAA0B0D,GAErB9a,EAAQ8a,KAKbG,GAAgBnb,EAAgBgb,GAAY5b,cAG5C+b,GAAkE,GAAlDnb,EAAgBgb,GAAY9b,aAAazuD,OAEzDuvD,EAAgBgb,GAAYO,MAAQJ,GAEjB,MAAfD,GAAuBC,EAAeD,KACtCA,EAAcC,EACdF,EAAaD,IAIrBtc,EAAO6C,EAAQ0Z,GAAcD,EACjC,CAEA,SAASQ,GAAiBja,GACtB,IAAIA,EAAO5S,GAAX,CAIA,IAAIp+C,EAAIw2D,EAAqBxF,EAAO1pD,IACpC0pD,EAAO9nC,GAAKvZ,EAAI,CAAC3P,EAAEk3D,KAAMl3D,EAAE03D,MAAO13D,EAAEygE,KAAOzgE,EAAE23D,KAAM33D,EAAEqqE,KAAMrqE,EAAEmrE,OAAQnrE,EAAEw5C,OAAQx5C,EAAEorE,cAAc,SAAU1d,GACrG,OAAOA,GAAO34C,SAAS24C,EAAK,GAChC,IAEAqb,GAAgB/X,EAPhB,CAQJ,CAEA,SAASqa,GAAkBra,GACvB,IAAI/C,EAAM,IAAI8C,EAAOmU,GAAcoG,GAActa,KAOjD,OANI/C,EAAIob,WAEJpb,EAAI5mB,IAAI,EAAG,KACX4mB,EAAIob,cAAWv5D,GAGZm+C,CACX,CAEA,SAASqd,GAAeta,GACpB,IAAI5xB,EAAQ4xB,EAAO1pD,GACf2gB,EAAS+oC,EAAO1S,GAIpB,OAFA0S,EAAOF,QAAUE,EAAOF,SAAW8T,GAAU5T,EAAOvS,IAEtC,OAAVrf,QAA8BtvB,IAAXmY,GAAkC,KAAVmX,EACpCgxB,EAAc,CAACtB,WAAW,KAGhB,kBAAV1vB,IACP4xB,EAAO1pD,GAAK83B,EAAQ4xB,EAAOF,QAAQya,SAASnsC,IAG5CsrB,EAAStrB,GACF,IAAI2xB,EAAOmU,GAAc9lC,KACzB2uB,EAAO3uB,GACd4xB,EAAO5S,GAAKhf,EACL7+B,EAAQ0nB,GACfuiD,GAAyBxZ,GAClB/oC,EACP8+C,GAA0B/V,GAE1Bwa,GAAgBxa,GAGfrB,EAAQqB,KACTA,EAAO5S,GAAK,MAGT4S,GACX,CAEA,SAASwa,GAAgBxa,GACrB,IAAI5xB,EAAQ4xB,EAAO1pD,GACfumD,EAAYzuB,GACZ4xB,EAAO5S,GAAK,IAAIwE,KAAKwK,EAAMvK,OACpBkL,EAAO3uB,GACd4xB,EAAO5S,GAAK,IAAIwE,KAAKxjB,EAAMgvB,WACH,kBAAVhvB,EACdipC,GAAiBrX,GACVzwD,EAAQ6+B,IACf4xB,EAAO9nC,GAAKvZ,EAAIyvB,EAAMt6B,MAAM,IAAI,SAAU4oD,GACtC,OAAO34C,SAAS24C,EAAK,GACzB,IACAqb,GAAgB/X,IACTzD,EAASnuB,GAChB6rC,GAAiBja,GACVlD,EAAS1uB,GAEhB4xB,EAAO5S,GAAK,IAAIwE,KAAKxjB,GAErBguB,EAAMkb,wBAAwBtX,EAEtC,CAEA,SAASxC,GAAkBpvB,EAAOnX,EAAQqmC,EAAQC,EAAQkd,GACtD,IAAI92D,EAAI,CAAC,EAoBT,OAlBe,IAAX25C,IAA8B,IAAXA,IACnBC,EAASD,EACTA,OAASx+C,IAGRy9C,EAASnuB,IAAUquB,EAAcruB,IAC7B7+B,EAAQ6+B,IAA2B,IAAjBA,EAAMl/B,UAC7Bk/B,OAAQtvB,GAIZ6E,EAAEi8C,kBAAmB,EACrBj8C,EAAE+zD,QAAU/zD,EAAEk4C,OAAS4e,EACvB92D,EAAE8pC,GAAK6P,EACP35C,EAAErN,GAAK83B,EACPzqB,EAAE2pC,GAAKr2B,EACPtT,EAAEs7C,QAAU1B,EAEL8c,GAAiB12D,EAC5B,CAEA,SAASi1D,GAAaxqC,EAAOnX,EAAQqmC,EAAQC,GACzC,OAAOC,GAAiBpvB,EAAOnX,EAAQqmC,EAAQC,GAAQ,EAC3D,CAzQAnB,EAAMkb,wBAA0BnX,EAC5B,kVAIA,SAAUH,GACNA,EAAO5S,GAAK,IAAIwE,KAAKoO,EAAO1pD,IAAM0pD,EAAO0X,QAAU,OAAS,IAChE,IAIJtb,EAAM0c,SAAW,WAAa,EAG9B1c,EAAM2c,SAAW,WAAa,EA6P9B,IAAI2B,GAAeva,EACf,sGACA,WACI,IAAIwa,EAAQ/B,GAAYnpE,MAAM,KAAMR,WACpC,OAAI6B,KAAK6tD,WAAagc,EAAMhc,UACjBgc,EAAQ7pE,KAAOA,KAAO6pE,EAEtBvb,GAEf,IAGAwb,GAAeza,EACf,sGACA,WACI,IAAIwa,EAAQ/B,GAAYnpE,MAAM,KAAMR,WACpC,OAAI6B,KAAK6tD,WAAagc,EAAMhc,UACjBgc,EAAQ7pE,KAAOA,KAAO6pE,EAEtBvb,GAEf,IAQJ,SAASyb,GAAOvf,EAAIwf,GAChB,IAAI7d,EAAKjuD,EAIT,GAHuB,IAAnB8rE,EAAQ5rE,QAAgBK,EAAQurE,EAAQ,MACxCA,EAAUA,EAAQ,KAEjBA,EAAQ5rE,OACT,OAAO0pE,KAGX,IADA3b,EAAM6d,EAAQ,GACT9rE,EAAI,EAAGA,EAAI8rE,EAAQ5rE,SAAUF,EACzB8rE,EAAQ9rE,GAAG2vD,YAAamc,EAAQ9rE,GAAGssD,GAAI2B,KACxCA,EAAM6d,EAAQ9rE,IAGtB,OAAOiuD,CACX,CAGA,SAAS/0C,KAGL,OAAO2yD,GAAO,WAFH,GAAG/mE,MAAM/D,KAAKd,UAAW,GAGxC,CAEA,SAASwG,KAGL,OAAOolE,GAAO,UAFH,GAAG/mE,MAAM/D,KAAKd,UAAW,GAGxC,CAEA,IAAI4iD,GAAM,WACN,OAAOD,KAAKC,IAAMD,KAAKC,OAAU,IAAID,IACzC,EAEImpB,GAAW,CAAC,OAAQ,UAAW,QAAS,OAAQ,MAAO,OAAQ,SAAU,SAAU,eAEvF,SAASC,GAAgBnuC,GACrB,IAAK,IAAI/8B,KAAO+8B,EACZ,IAAuC,IAAjCvvB,GAAQvN,KAAKgrE,GAAUjrE,IAA0B,MAAV+8B,EAAE/8B,IAAiBivD,MAAMlyB,EAAE/8B,IACpE,OAAO,EAKf,IADA,IAAImrE,GAAiB,EACZjsE,EAAI,EAAGA,EAAI+rE,GAAS7rE,SAAUF,EACnC,GAAI69B,EAAEkuC,GAAS/rE,IAAK,CAChB,GAAIisE,EACA,OAAO,EAEPE,WAAWtuC,EAAEkuC,GAAS/rE,OAASo3D,EAAMv5B,EAAEkuC,GAAS/rE,OAChDisE,GAAiB,EAEzB,CAGJ,OAAO,CACX,CAEA,SAASG,KACL,OAAOtqE,KAAK8tD,QAChB,CAEA,SAASyc,KACL,OAAOC,GAAejc,IAC1B,CAEA,SAASkc,GAAU/4C,GACf,IAAImjC,EAAkBH,EAAqBhjC,GACvCg5C,EAAQ7V,EAAgBO,MAAQ,EAChCuV,EAAW9V,EAAgB+V,SAAW,EACtC3R,EAASpE,EAAgBe,OAAS,EAClCiV,EAAQhW,EAAgB0H,MAAQ1H,EAAgBiW,SAAW,EAC3DC,EAAOlW,EAAgB8J,KAAO,EAC9B6B,EAAQ3L,EAAgB0T,MAAQ,EAChC5H,EAAU9L,EAAgBwU,QAAU,EACpCrI,EAAUnM,EAAgBnd,QAAU,EACpCszB,EAAenW,EAAgByU,aAAe,EAElDtpE,KAAK8tD,SAAWoc,GAAgBrV,GAGhC70D,KAAKirE,eAAiBD,EACR,IAAVhK,EACU,IAAVL,EACQ,IAARH,EAAe,GAAK,GAGxBxgE,KAAKkrE,OAASH,EACF,EAARF,EAIJ7qE,KAAK25D,SAAWV,EACD,EAAX0R,EACQ,GAARD,EAEJ1qE,KAAKo4C,MAAQ,CAAC,EAEdp4C,KAAKgvD,QAAU8T,KAEf9iE,KAAKmrE,SACT,CAEA,SAASC,GAAYxf,GACjB,OAAOA,aAAe6e,EAC1B,CAEA,SAASY,GAAU3zD,GACf,OAAIA,EAAS,GACyB,EAA3BhT,KAAKqX,OAAO,EAAIrE,GAEhBhT,KAAKqX,MAAMrE,EAE1B,CAIA,SAASif,GAAQzhB,EAAO40B,GACpB4nB,GAAex8C,EAAO,EAAG,GAAG,WACxB,IAAIyhB,EAAS32B,KAAKupD,YACdz2C,EAAO,IAKX,OAJI6jB,EAAS,IACTA,GAAUA,EACV7jB,EAAO,KAEJA,EAAOm+C,MAAYt6B,EAAS,IAAK,GAAKmT,EAAYmnB,KAAYt6B,EAAU,GAAI,EACvF,GACJ,CAEAA,GAAO,IAAK,KACZA,GAAO,KAAM,IAIb0gC,GAAc,IAAMH,IACpBG,GAAc,KAAMH,IACpBa,GAAc,CAAC,IAAK,OAAO,SAAUz6B,EAAOmnB,EAAOyK,GAC/CA,EAAO0X,SAAU,EACjB1X,EAAOzG,KAAOmjB,GAAiB1U,GAAkB55B,EACrD,IAOA,IAAIuuC,GAAc,kBAElB,SAASD,GAAiBE,EAAS5pC,GAC/B,IAAI6pC,GAAW7pC,GAAU,IAAIwZ,MAAMowB,GAEnC,GAAgB,OAAZC,EACA,OAAO,KAGX,IACI3nB,IADU2nB,EAAQA,EAAQ3tE,OAAS,IAAM,IACtB,IAAIs9C,MAAMmwB,KAAgB,CAAC,IAAK,EAAG,GACtDlL,EAAuB,GAAXvc,EAAM,GAAWkR,EAAMlR,EAAM,IAE7C,OAAmB,IAAZuc,EACL,EACa,MAAbvc,EAAM,GAAauc,GAAWA,CACpC,CAGA,SAASqL,GAAgB1uC,EAAO2uC,GAC5B,IAAI9f,EAAK7F,EACT,OAAI2lB,EAAMlhB,QACNoB,EAAM8f,EAAM5lC,QACZigB,GAAQsC,EAAStrB,IAAU2uB,EAAO3uB,GAASA,EAAMgvB,UAAYwb,GAAYxqC,GAAOgvB,WAAaH,EAAIG,UAEjGH,EAAI7P,GAAG4vB,QAAQ/f,EAAI7P,GAAGgQ,UAAYhG,GAClCgF,EAAMT,aAAasB,GAAK,GACjBA,GAEA2b,GAAYxqC,GAAO4tB,OAElC,CAEA,SAASihB,GAAepwC,GAGpB,OAAoD,IAA5Cr3B,KAAKqX,MAAMggB,EAAEugB,GAAGuJ,oBAAsB,GAClD,CAoBA,SAASumB,GAAc9uC,EAAO+uC,EAAeC,GACzC,IACIC,EADA51C,EAAS32B,KAAK+uD,SAAW,EAE7B,IAAK/uD,KAAK6tD,UACN,OAAgB,MAATvwB,EAAgBt9B,KAAOuuD,IAElC,GAAa,MAATjxB,EAAe,CACf,GAAqB,kBAAVA,GAEP,GAAc,QADdA,EAAQsuC,GAAiB1U,GAAkB55B,IAEvC,OAAOt9B,UAEJ0E,KAAKkjB,IAAI0V,GAAS,KAAOgvC,IAChChvC,GAAgB,IAmBpB,OAjBKt9B,KAAK+qD,QAAUshB,IAChBE,EAAcJ,GAAcnsE,OAEhCA,KAAK+uD,QAAUzxB,EACft9B,KAAK+qD,QAAS,EACK,MAAfwhB,GACAvsE,KAAKulC,IAAIgnC,EAAa,KAEtB51C,IAAW2G,KACN+uC,GAAiBrsE,KAAKwsE,kBACvBC,GAAYzsE,KAAMwqE,GAAeltC,EAAQ3G,EAAQ,KAAM,GAAG,GAClD32B,KAAKwsE,oBACbxsE,KAAKwsE,mBAAoB,EACzBlhB,EAAMT,aAAa7qD,MAAM,GACzBA,KAAKwsE,kBAAoB,OAG1BxsE,IACX,CACI,OAAOA,KAAK+qD,OAASp0B,EAASw1C,GAAcnsE,KAEpD,CAEA,SAAS0sE,GAAYpvC,EAAO+uC,GACxB,OAAa,MAAT/uC,GACqB,kBAAVA,IACPA,GAASA,GAGbt9B,KAAKupD,UAAUjsB,EAAO+uC,GAEfrsE,OAECA,KAAKupD,WAErB,CAEA,SAASojB,GAAgBN,GACrB,OAAOrsE,KAAKupD,UAAU,EAAG8iB,EAC7B,CAEA,SAASO,GAAkBP,GASvB,OARIrsE,KAAK+qD,SACL/qD,KAAKupD,UAAU,EAAG8iB,GAClBrsE,KAAK+qD,QAAS,EAEVshB,GACArsE,KAAK6sE,SAASV,GAAcnsE,MAAO,MAGpCA,IACX,CAEA,SAAS8sE,KACL,GAAiB,MAAb9sE,KAAKyoD,KACLzoD,KAAKupD,UAAUvpD,KAAKyoD,MAAM,GAAO,QAC9B,GAAuB,kBAAZzoD,KAAKwF,GAAiB,CACpC,IAAIunE,EAAQnB,GAAiB3U,GAAaj3D,KAAKwF,IAClC,MAATunE,EACA/sE,KAAKupD,UAAUwjB,GAGf/sE,KAAKupD,UAAU,GAAG,EAE1B,CACA,OAAOvpD,IACX,CAEA,SAASgtE,GAAsB1vC,GAC3B,QAAKt9B,KAAK6tD,YAGVvwB,EAAQA,EAAQwqC,GAAYxqC,GAAOisB,YAAc,GAEzCvpD,KAAKupD,YAAcjsB,GAAS,KAAO,EAC/C,CAEA,SAAS2vC,KACL,OACIjtE,KAAKupD,YAAcvpD,KAAKqmC,QAAQuvB,MAAM,GAAGrM,aACzCvpD,KAAKupD,YAAcvpD,KAAKqmC,QAAQuvB,MAAM,GAAGrM,WAEjD,CAEA,SAAS2jB,KACL,IAAKnhB,EAAY/rD,KAAKmtE,eAClB,OAAOntE,KAAKmtE,cAGhB,IAAIt6D,EAAI,CAAC,EAKT,GAHA67C,EAAW77C,EAAG7S,OACd6S,EAAI22D,GAAc32D,IAEZuU,GAAI,CACN,IAAIyiD,EAAQh3D,EAAEk4C,OAASwB,EAAU15C,EAAEuU,IAAM0gD,GAAYj1D,EAAEuU,IACvDpnB,KAAKmtE,cAAgBntE,KAAK6tD,WACtByd,EAAcz4D,EAAEuU,GAAIyiD,EAAMuD,WAAa,CAC/C,MACIptE,KAAKmtE,eAAgB,EAGzB,OAAOntE,KAAKmtE,aAChB,CAEA,SAASE,KACL,QAAOrtE,KAAK6tD,YAAa7tD,KAAK+qD,MAClC,CAEA,SAASuiB,KACL,QAAOttE,KAAK6tD,WAAY7tD,KAAK+qD,MACjC,CAEA,SAASwiB,KACL,QAAOvtE,KAAK6tD,WAAY7tD,KAAK+qD,QAA2B,IAAjB/qD,KAAK+uD,OAChD,CAhJAzD,EAAMT,aAAe,WAAa,EAmJlC,IAAI2iB,GAAc,2DAKdC,GAAW,sKAEf,SAASjD,GAAgBltC,EAAOt+B,GAC5B,IAGI8T,EACA46D,EACAC,EALAj8C,EAAW4L,EAEXoe,EAAQ,KAuDZ,OAlDI0vB,GAAW9tC,GACX5L,EAAW,CACPiqC,GAAKr+B,EAAM2tC,cACX1rE,EAAK+9B,EAAM4tC,MACXrX,EAAKv2B,EAAMq8B,SAER3N,EAAS1uB,IAChB5L,EAAW,CAAC,EACR1yB,EACA0yB,EAAS1yB,GAAOs+B,EAEhB5L,EAASs5C,aAAe1tC,IAElBoe,EAAQ8xB,GAAY1I,KAAKxnC,KACnCxqB,EAAqB,MAAb4oC,EAAM,IAAe,EAAI,EACjChqB,EAAW,CACP7vB,EAAK,EACLtC,EAAK+1D,EAAM5Z,EAAM4c,KAAiCxlD,EAClDrP,EAAK6xD,EAAM5Z,EAAM6c,KAAiCzlD,EAClDipB,EAAKu5B,EAAM5Z,EAAM8c,KAAiC1lD,EAClDxS,EAAKg1D,EAAM5Z,EAAM+c,KAAiC3lD,EAClD6oD,GAAKrG,EAAM+V,GAA8B,IAArB3vB,EAAMgd,MAAwB5lD,KAE5C4oC,EAAQ+xB,GAAS3I,KAAKxnC,KAChCxqB,EAAqB,MAAb4oC,EAAM,IAAe,EAAI,EACjChqB,EAAW,CACP7vB,EAAI+rE,GAASlyB,EAAM,GAAI5oC,GACvB+gD,EAAI+Z,GAASlyB,EAAM,GAAI5oC,GACvBtP,EAAIoqE,GAASlyB,EAAM,GAAI5oC,GACvBvT,EAAIquE,GAASlyB,EAAM,GAAI5oC,GACvBrP,EAAImqE,GAASlyB,EAAM,GAAI5oC,GACvBipB,EAAI6xC,GAASlyB,EAAM,GAAI5oC,GACvBxS,EAAIstE,GAASlyB,EAAM,GAAI5oC,KAER,MAAZ4e,EACPA,EAAW,CAAC,EACe,kBAAbA,IAA0B,SAAUA,GAAY,OAAQA,KACtEi8C,EAAUE,GAAkB/F,GAAYp2C,EAAS9uB,MAAOklE,GAAYp2C,EAAS/uB,MAE7E+uB,EAAW,CAAC,GACHiqC,GAAKgS,EAAQ3C,aACtBt5C,EAASmiC,EAAI8Z,EAAQ1U,QAGzByU,EAAM,IAAIjD,GAAS/4C,GAEf05C,GAAW9tC,IAAUouB,EAAWpuB,EAAO,aACvCowC,EAAI1e,QAAU1xB,EAAM0xB,SAGjB0e,CACX,CAKA,SAASE,GAAUE,EAAKh7D,GAIpB,IAAIq5C,EAAM2hB,GAAOzD,WAAWyD,EAAIlyC,QAAQ,IAAK,MAE7C,OAAQqyB,MAAM9B,GAAO,EAAIA,GAAOr5C,CACpC,CAEA,SAASi7D,GAA0BC,EAAMnE,GACrC,IAAI1d,EAAM,CAAC,EAUX,OARAA,EAAI8M,OAAS4Q,EAAMjU,QAAUoY,EAAKpY,QACC,IAA9BiU,EAAMzU,OAAS4Y,EAAK5Y,QACrB4Y,EAAK3nC,QAAQd,IAAI4mB,EAAI8M,OAAQ,KAAKgV,QAAQpE,MACxC1d,EAAI8M,OAGV9M,EAAI6e,cAAgBnB,GAAUmE,EAAK3nC,QAAQd,IAAI4mB,EAAI8M,OAAQ,KAEpD9M,CACX,CAEA,SAAS0hB,GAAkBG,EAAMnE,GAC7B,IAAI1d,EACJ,OAAM6hB,EAAKngB,WAAagc,EAAMhc,WAI9Bgc,EAAQmC,GAAgBnC,EAAOmE,GAC3BA,EAAKE,SAASrE,GACd1d,EAAM4hB,GAA0BC,EAAMnE,KAEtC1d,EAAM4hB,GAA0BlE,EAAOmE,IACnChD,cAAgB7e,EAAI6e,aACxB7e,EAAI8M,QAAU9M,EAAI8M,QAGf9M,GAZI,CAAC6e,aAAc,EAAG/R,OAAQ,EAazC,CAGA,SAASkV,GAAYnhD,EAAWjU,GAC5B,OAAO,SAAU61C,EAAKwf,GAClB,IAAS/qC,EAWT,OATe,OAAX+qC,GAAoBngB,OAAOmgB,KAC3B1e,EAAgB32C,EAAM,YAAcA,EAAQ,uDAAyDA,EAA/E,kGAEtBsqB,EAAMurB,EAAKA,EAAMwf,EAAQA,EAAS/qC,GAKtCopC,GAAYzsE,KADNwqE,GADN5b,EAAqB,kBAARA,GAAoBA,EAAMA,EACbwf,GACHphD,GAChBhtB,IACX,CACJ,CAEA,SAASysE,GAAanjB,EAAK53B,EAAU28C,EAAUxjB,GAC3C,IAAImgB,EAAet5C,EAASu5C,cACxBF,EAAOM,GAAS35C,EAASw5C,OACzBjS,EAASoS,GAAS35C,EAASioC,SAE1BrQ,EAAIuE,YAKThD,EAA+B,MAAhBA,GAA8BA,EAEzCoO,GACAwB,GAASnR,EAAK/8C,GAAI+8C,EAAK,SAAW2P,EAASoV,GAE3CtD,GACApV,GAAMrM,EAAK,OAAQ/8C,GAAI+8C,EAAK,QAAUyhB,EAAOsD,GAE7CrD,GACA1hB,EAAIhN,GAAG4vB,QAAQ5iB,EAAIhN,GAAGgQ,UAAY0e,EAAeqD,GAEjDxjB,GACAS,EAAMT,aAAavB,EAAKyhB,GAAQ9R,GAExC,CAtFAuR,GAAehgB,GAAKigB,GAAS3rE,UAC7B0rE,GAAe8D,QAAU/D,GAuFzB,IAAIhlC,GAAW4oC,GAAY,EAAG,OAC1BtB,GAAWsB,IAAa,EAAG,YAE/B,SAASe,GAAkBC,EAAUpuB,GACjC,IAAIuF,EAAO6oB,EAAS7oB,KAAKvF,EAAK,QAAQ,GACtC,OAAOuF,GAAQ,EAAI,WACXA,GAAQ,EAAI,WACZA,EAAO,EAAI,UACXA,EAAO,EAAI,UACXA,EAAO,EAAI,UACXA,EAAO,EAAI,WAAa,UACpC,CAEA,SAAS8oB,GAAY/+C,EAAMg/C,GAGvB,IAAItuB,EAAM1wB,GAAQy3C,KACdwH,EAAMtD,GAAgBjrB,EAAK/gD,MAAMuvE,QAAQ,OACzCppD,EAASmlC,EAAMkkB,eAAexvE,KAAMsvE,IAAQ,WAE5Cve,EAASse,IAAY1f,EAAW0f,EAAQlpD,IAAWkpD,EAAQlpD,GAAQlnB,KAAKe,KAAM+gD,GAAOsuB,EAAQlpD,IAEjG,OAAOnmB,KAAKmmB,OAAO4qC,GAAU/wD,KAAK8xD,aAAahB,SAAS3qC,EAAQnmB,KAAM8nE,GAAY/mB,IACtF,CAEA,SAAS1a,KACL,OAAO,IAAI4oB,EAAOjvD,KACtB,CAEA,SAASiuE,GAAS3wC,EAAOm3B,GACrB,IAAIgb,EAAa7mB,EAAStrB,GAASA,EAAQwqC,GAAYxqC,GACvD,SAAMt9B,KAAK6tD,YAAa4hB,EAAW5hB,aAIrB,iBADd4G,EAAQD,EAAeC,IAAU,eAEtBz0D,KAAKssD,UAAYmjB,EAAWnjB,UAE5BmjB,EAAWnjB,UAAYtsD,KAAKqmC,QAAQkpC,QAAQ9a,GAAOnI,UAElE,CAEA,SAAS4hB,GAAU5wC,EAAOm3B,GACtB,IAAIgb,EAAa7mB,EAAStrB,GAASA,EAAQwqC,GAAYxqC,GACvD,SAAMt9B,KAAK6tD,YAAa4hB,EAAW5hB,aAIrB,iBADd4G,EAAQD,EAAeC,IAAU,eAEtBz0D,KAAKssD,UAAYmjB,EAAWnjB,UAE5BtsD,KAAKqmC,QAAQqpC,MAAMjb,GAAOnI,UAAYmjB,EAAWnjB,UAEhE,CAEA,SAASqjB,GAAW/sE,EAAMD,EAAI8xD,EAAOmb,GACjC,IAAIC,EAAYjnB,EAAShmD,GAAQA,EAAOklE,GAAYllE,GAChDktE,EAAUlnB,EAASjmD,GAAMA,EAAKmlE,GAAYnlE,GAC9C,SAAM3C,KAAK6tD,WAAagiB,EAAUhiB,WAAaiiB,EAAQjiB,aAI5B,OAD3B+hB,EAAcA,GAAe,MACT,GAAa5vE,KAAKiuE,QAAQ4B,EAAWpb,IAAUz0D,KAAKkuE,SAAS2B,EAAWpb,MACpE,MAAnBmb,EAAY,GAAa5vE,KAAKkuE,SAAS4B,EAASrb,IAAUz0D,KAAKiuE,QAAQ6B,EAASrb,GACzF,CAEA,SAASsb,GAAQzyC,EAAOm3B,GACpB,IACIub,EADAP,EAAa7mB,EAAStrB,GAASA,EAAQwqC,GAAYxqC,GAEvD,SAAMt9B,KAAK6tD,YAAa4hB,EAAW5hB,aAIrB,iBADd4G,EAAQD,EAAeC,IAAU,eAEtBz0D,KAAKssD,YAAcmjB,EAAWnjB,WAErC0jB,EAAUP,EAAWnjB,UACdtsD,KAAKqmC,QAAQkpC,QAAQ9a,GAAOnI,WAAa0jB,GAAWA,GAAWhwE,KAAKqmC,QAAQqpC,MAAMjb,GAAOnI,WAExG,CAEA,SAAS2jB,GAAe3yC,EAAOm3B,GAC3B,OAAOz0D,KAAK+vE,OAAOzyC,EAAOm3B,IAAUz0D,KAAKiuE,QAAQ3wC,EAAOm3B,EAC5D,CAEA,SAASyb,GAAgB5yC,EAAOm3B,GAC5B,OAAOz0D,KAAK+vE,OAAOzyC,EAAOm3B,IAAUz0D,KAAKkuE,SAAS5wC,EAAOm3B,EAC7D,CAEA,SAASnO,GAAMhpB,EAAOm3B,EAAO0b,GACzB,IAAIC,EACAC,EACAtf,EAEJ,IAAK/wD,KAAK6tD,UACN,OAAOU,IAKX,KAFA6hB,EAAOpE,GAAgB1uC,EAAOt9B,OAEpB6tD,UACN,OAAOU,IAOX,OAJA8hB,EAAoD,KAAvCD,EAAK7mB,YAAcvpD,KAAKupD,aAErCkL,EAAQD,EAAeC,IAGnB,IAAK,OAAQ1D,EAASuf,GAAUtwE,KAAMowE,GAAQ,GAAI,MAClD,IAAK,QAASrf,EAASuf,GAAUtwE,KAAMowE,GAAO,MAC9C,IAAK,UAAWrf,EAASuf,GAAUtwE,KAAMowE,GAAQ,EAAG,MACpD,IAAK,SAAUrf,GAAU/wD,KAAOowE,GAAQ,IAAK,MAC7C,IAAK,SAAUrf,GAAU/wD,KAAOowE,GAAQ,IAAK,MAC7C,IAAK,OAAQrf,GAAU/wD,KAAOowE,GAAQ,KAAM,MAC5C,IAAK,MAAOrf,GAAU/wD,KAAOowE,EAAOC,GAAa,MAAO,MACxD,IAAK,OAAQtf,GAAU/wD,KAAOowE,EAAOC,GAAa,OAAQ,MAC1D,QAAStf,EAAS/wD,KAAOowE,EAG7B,OAAOD,EAAUpf,EAASsE,EAAStE,EACvC,CAEA,SAASuf,GAAW3jE,EAAGnN,GAEnB,IAAI+wE,EAA0C,IAAvB/wE,EAAE41D,OAASzoD,EAAEyoD,SAAiB51D,EAAEo2D,QAAUjpD,EAAEipD,SAE/D4a,EAAS7jE,EAAE05B,QAAQd,IAAIgrC,EAAgB,UAc3C,QAASA,GAXL/wE,EAAIgxE,EAAS,GAGHhxE,EAAIgxE,IAAWA,EAFf7jE,EAAE05B,QAAQd,IAAIgrC,EAAiB,EAAG,YAMlC/wE,EAAIgxE,IAFJ7jE,EAAE05B,QAAQd,IAAIgrC,EAAiB,EAAG,UAETC,MAIF,CACzC,CAKA,SAAS5xE,KACL,OAAOoB,KAAKqmC,QAAQmmB,OAAO,MAAMrmC,OAAO,mCAC5C,CAEA,SAASsqD,GAAYC,GACjB,IAAK1wE,KAAK6tD,UACN,OAAO,KAEX,IAAIlF,GAAqB,IAAf+nB,EACN30C,EAAI4sB,EAAM3oD,KAAKqmC,QAAQsiB,MAAQ3oD,KACnC,OAAI+7B,EAAEq5B,OAAS,GAAKr5B,EAAEq5B,OAAS,KACpBnD,GAAal2B,EAAG4sB,EAAM,iCAAmC,gCAEhEgH,EAAW7O,KAAKhiD,UAAU2xE,aAEtB9nB,EACO3oD,KAAK2wE,SAASF,cAEd,IAAI3vB,KAAK9gD,KAAKssD,UAA+B,GAAnBtsD,KAAKupD,YAAmB,KAAMknB,cAAc70C,QAAQ,IAAKq2B,GAAal2B,EAAG,MAG3Gk2B,GAAal2B,EAAG4sB,EAAM,+BAAiC,6BAClE,CAQA,SAASioB,KACL,IAAK5wE,KAAK6tD,UACN,MAAO,qBAAuB7tD,KAAKwF,GAAK,OAE5C,IAAIqsD,EAAO,SACP9L,EAAO,GACN/lD,KAAKqtE,YACNxb,EAA4B,IAArB7xD,KAAKupD,YAAoB,aAAe,mBAC/CxD,EAAO,KAEX,IAAI9/B,EAAS,IAAM4rC,EAAO,MACtBuD,EAAQ,GAAKp1D,KAAKo1D,QAAUp1D,KAAKo1D,QAAU,KAAQ,OAAS,SAC5Dyb,EAAW,wBACX7uC,EAAS+jB,EAAO,OAEpB,OAAO/lD,KAAKmmB,OAAOF,EAASmvC,EAAOyb,EAAW7uC,EAClD,CAEA,SAAS7b,GAAQ2qD,GACRA,IACDA,EAAc9wE,KAAKutE,QAAUjiB,EAAMylB,iBAAmBzlB,EAAM0lB,eAEhE,IAAIjgB,EAASkB,GAAajyD,KAAM8wE,GAChC,OAAO9wE,KAAK8xD,aAAamf,WAAWlgB,EACxC,CAEA,SAASnuD,GAAMytB,EAAM4jC,GACjB,OAAIj0D,KAAK6tD,YACCjF,EAASv4B,IAASA,EAAKw9B,WACxBia,GAAYz3C,GAAMw9B,WAChB2c,GAAe,CAAC7nE,GAAI3C,KAAM4C,KAAMytB,IAAOm8B,OAAOxsD,KAAKwsD,UAAU0kB,UAAUjd,GAEvEj0D,KAAK8xD,aAAaK,aAEjC,CAEA,SAASgf,GAASld,GACd,OAAOj0D,KAAK4C,KAAKklE,KAAe7T,EACpC,CAEA,SAAStxD,GAAI0tB,EAAM4jC,GACf,OAAIj0D,KAAK6tD,YACCjF,EAASv4B,IAASA,EAAKw9B,WACxBia,GAAYz3C,GAAMw9B,WAChB2c,GAAe,CAAC5nE,KAAM5C,KAAM2C,GAAI0tB,IAAOm8B,OAAOxsD,KAAKwsD,UAAU0kB,UAAUjd,GAEvEj0D,KAAK8xD,aAAaK,aAEjC,CAEA,SAASif,GAAOnd,GACZ,OAAOj0D,KAAK2C,GAAGmlE,KAAe7T,EAClC,CAKA,SAASzH,GAAQxtD,GACb,IAAIqyE,EAEJ,YAAYrjE,IAARhP,EACOgB,KAAKgvD,QAAQ2T,OAGC,OADrB0O,EAAgBvO,GAAU9jE,MAEtBgB,KAAKgvD,QAAUqiB,GAEZrxE,KAEf,CAtGAsrD,EAAM0lB,cAAgB,uBACtB1lB,EAAMylB,iBAAmB,yBAuGzB,IAAIO,GAAOjiB,EACP,mJACA,SAAUrwD,GACN,YAAYgP,IAARhP,EACOgB,KAAK8xD,aAEL9xD,KAAKwsD,OAAOxtD,EAE3B,IAGJ,SAAS8yD,KACL,OAAO9xD,KAAKgvD,OAChB,CAEA,IAAIuiB,GAAgB,IAChBC,GAAgB,GAAKD,GACrBE,GAAc,GAAKD,GACnBE,GAAmB,QAAwBD,GAG/C,SAASE,GAAMC,EAAUC,GACrB,OAAQD,EAAWC,EAAUA,GAAWA,CAC5C,CAEA,SAASC,GAAiBjwE,EAAGk6B,EAAGx8B,GAE5B,OAAIsC,EAAI,KAAOA,GAAK,EAET,IAAIi/C,KAAKj/C,EAAI,IAAKk6B,EAAGx8B,GAAKmyE,GAE1B,IAAI5wB,KAAKj/C,EAAGk6B,EAAGx8B,GAAG+sD,SAEjC,CAEA,SAASylB,GAAelwE,EAAGk6B,EAAGx8B,GAE1B,OAAIsC,EAAI,KAAOA,GAAK,EAETi/C,KAAKgb,IAAIj6D,EAAI,IAAKk6B,EAAGx8B,GAAKmyE,GAE1B5wB,KAAKgb,IAAIj6D,EAAGk6B,EAAGx8B,EAE9B,CAEA,SAASgwE,GAAS9a,GACd,IAAIpkC,EAEJ,QAAcriB,KADdymD,EAAQD,EAAeC,KACc,gBAAVA,IAA4Bz0D,KAAK6tD,UACxD,OAAO7tD,KAGX,IAAIgyE,EAAchyE,KAAK+qD,OAASgnB,GAAiBD,GAEjD,OAAQrd,GACJ,IAAK,OACDpkC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQ,EAAG,GACnC,MACJ,IAAK,UACD/kC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAU51D,KAAK41D,QAAU,EAAG,GACjE,MACJ,IAAK,QACDvlC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS,GAC9C,MACJ,IAAK,OACDvlC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS51D,KAAK61D,OAAS71D,KAAKw8D,WACjE,MACJ,IAAK,UACDnsC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS51D,KAAK61D,QAAU71D,KAAKiyE,aAAe,IACjF,MACJ,IAAK,MACL,IAAK,OACD5hD,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS51D,KAAK61D,QACnD,MACJ,IAAK,OACDxlC,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQshD,GAAMthD,GAAQrwB,KAAK+qD,OAAS,EAAI/qD,KAAKupD,YAAcioB,IAAgBC,IAC3E,MACJ,IAAK,SACDphD,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQshD,GAAMthD,EAAMmhD,IACpB,MACJ,IAAK,SACDnhD,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQshD,GAAMthD,EAAMkhD,IAM5B,OAFAvxE,KAAKs8C,GAAG4vB,QAAQ77C,GAChBi7B,EAAMT,aAAa7qD,MAAM,GAClBA,IACX,CAEA,SAAS0vE,GAAOjb,GACZ,IAAIpkC,EAEJ,QAAcriB,KADdymD,EAAQD,EAAeC,KACc,gBAAVA,IAA4Bz0D,KAAK6tD,UACxD,OAAO7tD,KAGX,IAAIgyE,EAAchyE,KAAK+qD,OAASgnB,GAAiBD,GAEjD,OAAQrd,GACJ,IAAK,OACDpkC,EAAO2hD,EAAYhyE,KAAKo1D,OAAS,EAAG,EAAG,GAAK,EAC5C,MACJ,IAAK,UACD/kC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAU51D,KAAK41D,QAAU,EAAI,EAAG,GAAK,EAC1E,MACJ,IAAK,QACDvlC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAU,EAAG,GAAK,EACvD,MACJ,IAAK,OACDvlC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS51D,KAAK61D,OAAS71D,KAAKw8D,UAAY,GAAK,EAClF,MACJ,IAAK,UACDnsC,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS51D,KAAK61D,QAAU71D,KAAKiyE,aAAe,GAAK,GAAK,EAC3F,MACJ,IAAK,MACL,IAAK,OACD5hD,EAAO2hD,EAAYhyE,KAAKo1D,OAAQp1D,KAAK41D,QAAS51D,KAAK61D,OAAS,GAAK,EACjE,MACJ,IAAK,OACDxlC,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQohD,GAAcE,GAAMthD,GAAQrwB,KAAK+qD,OAAS,EAAI/qD,KAAKupD,YAAcioB,IAAgBC,IAAe,EACxG,MACJ,IAAK,SACDphD,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQmhD,GAAgBG,GAAMthD,EAAMmhD,IAAiB,EACrD,MACJ,IAAK,SACDnhD,EAAOrwB,KAAKs8C,GAAGgQ,UACfj8B,GAAQkhD,GAAgBI,GAAMthD,EAAMkhD,IAAiB,EAM7D,OAFAvxE,KAAKs8C,GAAG4vB,QAAQ77C,GAChBi7B,EAAMT,aAAa7qD,MAAM,GAClBA,IACX,CAEA,SAASssD,KACL,OAAOtsD,KAAKs8C,GAAGgQ,UAAmC,KAArBtsD,KAAK+uD,SAAW,EACjD,CAEA,SAASmjB,KACL,OAAOxtE,KAAKi+B,MAAM3iC,KAAKssD,UAAY,IACvC,CAEA,SAASqkB,KACL,OAAO,IAAI7vB,KAAK9gD,KAAKssD,UACzB,CAEA,SAAS8gB,KACL,IAAIrxC,EAAI/7B,KACR,MAAO,CAAC+7B,EAAEq5B,OAAQr5B,EAAE65B,QAAS75B,EAAE85B,OAAQ95B,EAAEwsC,OAAQxsC,EAAEstC,SAAUttC,EAAE2b,SAAU3b,EAAEutC,cAC/E,CAEA,SAAS6I,KACL,IAAIp2C,EAAI/7B,KACR,MAAO,CACH0qE,MAAO3uC,EAAEq5B,OACT6D,OAAQl9B,EAAE65B,QACVC,KAAM95B,EAAE85B,OACR2K,MAAOzkC,EAAEykC,QACTG,QAAS5kC,EAAE4kC,UACXK,QAASjlC,EAAEilC,UACXgK,aAAcjvC,EAAEivC,eAExB,CAEA,SAASoH,KAEL,OAAOpyE,KAAK6tD,UAAY7tD,KAAKywE,cAAgB,IACjD,CAEA,SAAS4B,KACL,OAAOxkB,EAAQ7tD,KACnB,CAEA,SAASsyE,KACL,OAAOjmB,EAAO,CAAC,EAAGsB,EAAgB3tD,MACtC,CAEA,SAASuyE,KACL,OAAO5kB,EAAgB3tD,MAAMouB,QACjC,CAEA,SAASokD,KACL,MAAO,CACHl1C,MAAOt9B,KAAKwF,GACZ2gB,OAAQnmB,KAAKw8C,GACbgQ,OAAQxsD,KAAKgvD,QACb2a,MAAO3pE,KAAK+qD,OACZ0B,OAAQzsD,KAAKmuD,QAErB,CAYA,SAASomB,GAAwBr/D,EAAOs/D,GACpC9iB,GAAe,EAAG,CAACx8C,EAAOA,EAAM9W,QAAS,EAAGo2E,EAChD,CAuCA,SAASC,GAAgBn3C,GACrB,OAAOo3C,GAAqBz1E,KAAKe,KACzBs9B,EACAt9B,KAAKu8D,OACLv8D,KAAKw8D,UACLx8D,KAAK8xD,aAAaoL,MAAMhB,IACxBl8D,KAAK8xD,aAAaoL,MAAMf,IACpC,CAEA,SAASwY,GAAmBr3C,GACxB,OAAOo3C,GAAqBz1E,KAAKe,KACzBs9B,EAAOt9B,KAAK8qE,UAAW9qE,KAAKiyE,aAAc,EAAG,EACzD,CAEA,SAAS2C,KACL,OAAO7X,GAAY/8D,KAAKo1D,OAAQ,EAAG,EACvC,CAEA,SAAS2f,KACL,IAAIC,EAAWh1E,KAAK8xD,aAAaoL,MACjC,OAAOH,GAAY/8D,KAAKo1D,OAAQ4f,EAAS9Y,IAAK8Y,EAAS7Y,IAC3D,CAEA,SAASuY,GAAqBp3C,EAAOi/B,EAAMC,EAASN,EAAKC,GACrD,IAAI+Y,EACJ,OAAa,MAAT53C,EACOs/B,GAAW58D,KAAMk8D,EAAKC,GAAK/G,MAG9BmH,GADJ2Y,EAAcnY,GAAYz/B,EAAO4+B,EAAKC,MAElCI,EAAO2Y,GAEJC,GAAWl2E,KAAKe,KAAMs9B,EAAOi/B,EAAMC,EAASN,EAAKC,GAEhE,CAEA,SAASgZ,GAAW3N,EAAUjL,EAAMC,EAASN,EAAKC,GAC9C,IAAIiZ,EAAgB9Y,GAAmBkL,EAAUjL,EAAMC,EAASN,EAAKC,GACjEtG,EAAOgG,GAAcuZ,EAAchgB,KAAM,EAAGggB,EAAczY,WAK9D,OAHA38D,KAAKo1D,KAAKS,EAAKkG,kBACf/7D,KAAK41D,MAAMC,EAAKgR,eAChB7mE,KAAK61D,KAAKA,EAAKiR,cACR9mE,IACX,CAuBA,SAASq1E,GAAe/3C,GACpB,OAAgB,MAATA,EAAgB54B,KAAKwD,MAAMlI,KAAK41D,QAAU,GAAK,GAAK51D,KAAK41D,MAAoB,GAAbt4B,EAAQ,GAASt9B,KAAK41D,QAAU,EAC3G,CAtHAlE,GAAe,EAAG,CAAC,KAAM,GAAI,GAAG,WAC5B,OAAO1xD,KAAKwnE,WAAa,GAC7B,IAEA9V,GAAe,EAAG,CAAC,KAAM,GAAI,GAAG,WAC5B,OAAO1xD,KAAK80E,cAAgB,GAChC,IAMAP,GAAuB,OAAY,YACnCA,GAAuB,QAAY,YACnCA,GAAuB,OAAS,eAChCA,GAAuB,QAAS,eAIhClgB,EAAa,WAAY,MACzBA,EAAa,cAAe,MAI5BU,EAAgB,WAAY,GAC5BA,EAAgB,cAAe,GAK/BsC,GAAc,IAAUL,IACxBK,GAAc,IAAUL,IACxBK,GAAc,KAAUZ,GAAWJ,IACnCgB,GAAc,KAAUZ,GAAWJ,IACnCgB,GAAc,OAAUR,GAAWN,IACnCc,GAAc,OAAUR,GAAWN,IACnCc,GAAc,QAAUP,GAAWN,IACnCa,GAAc,QAAUP,GAAWN,IAEnCyB,GAAkB,CAAC,OAAQ,QAAS,OAAQ,UAAU,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GACjFqnD,EAAKrnD,EAAMs5B,OAAO,EAAG,IAAM8mB,EAAMh4B,EACrC,IAEA26B,GAAkB,CAAC,KAAM,OAAO,SAAU36B,EAAOi/B,EAAMrN,EAAQh6C,GAC3DqnD,EAAKrnD,GAASo2C,EAAMiQ,kBAAkBj+B,EAC1C,IAoDAo0B,GAAe,IAAK,EAAG,KAAM,WAI7B2C,EAAa,UAAW,KAIxBU,EAAgB,UAAW,GAI3BsC,GAAc,IAAKjB,IACnB2B,GAAc,KAAK,SAAUz6B,EAAOmnB,GAChCA,EAAM4T,IAA8B,GAApB/C,EAAMh4B,GAAS,EACnC,IAUAo0B,GAAe,IAAK,CAAC,KAAM,GAAI,KAAM,QAIrC2C,EAAa,OAAQ,KAGrBU,EAAgB,OAAQ,GAIxBsC,GAAc,IAAMZ,IACpBY,GAAc,KAAMZ,GAAWJ,IAC/BgB,GAAc,MAAM,SAAUG,EAAUhL,GAEpC,OAAOgL,EACJhL,EAAOyD,yBAA2BzD,EAAO0D,cAC1C1D,EAAOuD,8BACb,IAEAgI,GAAc,CAAC,IAAK,MAAOO,IAC3BP,GAAc,MAAM,SAAUz6B,EAAOmnB,GACjCA,EAAM6T,IAAQhD,EAAMh4B,EAAMoe,MAAM+a,IAAW,GAC/C,IAIA,IAAI+e,GAAmB9f,GAAW,QAAQ,GAyB1C,SAAS+f,GAAiBn4C,GACtB,IAAIq/B,EAAYj4D,KAAKqX,OAAO/b,KAAKqmC,QAAQkpC,QAAQ,OAASvvE,KAAKqmC,QAAQkpC,QAAQ,SAAW,OAAS,EACnG,OAAgB,MAATjyC,EAAgBq/B,EAAY38D,KAAKulC,IAAKjI,EAAQq/B,EAAY,IACrE,CAxBAjL,GAAe,MAAO,CAAC,OAAQ,GAAI,OAAQ,aAI3C2C,EAAa,YAAa,OAG1BU,EAAgB,YAAa,GAI7BsC,GAAc,MAAQT,IACtBS,GAAc,OAAQf,IACtByB,GAAc,CAAC,MAAO,SAAS,SAAUz6B,EAAOmnB,EAAOyK,GACnDA,EAAOoY,WAAahS,EAAMh4B,EAC9B,IAaAo0B,GAAe,IAAK,CAAC,KAAM,GAAI,EAAG,UAIlC2C,EAAa,SAAU,KAIvBU,EAAgB,SAAU,IAI1BsC,GAAc,IAAMZ,IACpBY,GAAc,KAAMZ,GAAWJ,IAC/B0B,GAAc,CAAC,IAAK,MAAOS,IAI3B,IAAIkd,GAAehgB,GAAW,WAAW,GAIzChE,GAAe,IAAK,CAAC,KAAM,GAAI,EAAG,UAIlC2C,EAAa,SAAU,KAIvBU,EAAgB,SAAU,IAI1BsC,GAAc,IAAMZ,IACpBY,GAAc,KAAMZ,GAAWJ,IAC/B0B,GAAc,CAAC,IAAK,MAAOU,IAI3B,IA+CIvjD,GA/CA0gE,GAAelgB,GAAW,WAAW,GAgDzC,IA5CAhE,GAAe,IAAK,EAAG,GAAG,WACtB,SAAU1xD,KAAKspE,cAAgB,IACnC,IAEA5X,GAAe,EAAG,CAAC,KAAM,GAAI,GAAG,WAC5B,SAAU1xD,KAAKspE,cAAgB,GACnC,IAEA5X,GAAe,EAAG,CAAC,MAAO,GAAI,EAAG,eACjCA,GAAe,EAAG,CAAC,OAAQ,GAAI,GAAG,WAC9B,OAA4B,GAArB1xD,KAAKspE,aAChB,IACA5X,GAAe,EAAG,CAAC,QAAS,GAAI,GAAG,WAC/B,OAA4B,IAArB1xD,KAAKspE,aAChB,IACA5X,GAAe,EAAG,CAAC,SAAU,GAAI,GAAG,WAChC,OAA4B,IAArB1xD,KAAKspE,aAChB,IACA5X,GAAe,EAAG,CAAC,UAAW,GAAI,GAAG,WACjC,OAA4B,IAArB1xD,KAAKspE,aAChB,IACA5X,GAAe,EAAG,CAAC,WAAY,GAAI,GAAG,WAClC,OAA4B,IAArB1xD,KAAKspE,aAChB,IACA5X,GAAe,EAAG,CAAC,YAAa,GAAI,GAAG,WACnC,OAA4B,IAArB1xD,KAAKspE,aAChB,IAKAjV,EAAa,cAAe,MAI5BU,EAAgB,cAAe,IAI/BsC,GAAc,IAAQT,GAAWR,IACjCiB,GAAc,KAAQT,GAAWP,IACjCgB,GAAc,MAAQT,GAAWN,IAG5BphD,GAAQ,OAAQA,GAAM9W,QAAU,EAAG8W,IAAS,IAC7CmiD,GAAcniD,GAAO6hD,IAGzB,SAAS8e,GAAQv4C,EAAOmnB,GACpBA,EAAMiU,IAAepD,EAAuB,KAAhB,KAAOh4B,GACvC,CAEA,IAAKpoB,GAAQ,IAAKA,GAAM9W,QAAU,EAAG8W,IAAS,IAC1C6iD,GAAc7iD,GAAO2gE,IAIzB,IAAIF,GAAoBjgB,GAAW,gBAAgB,GASnD,SAASogB,KACL,OAAO91E,KAAK+qD,OAAS,MAAQ,EACjC,CAEA,SAASgrB,KACL,OAAO/1E,KAAK+qD,OAAS,6BAA+B,EACxD,CAXA2G,GAAe,IAAM,EAAG,EAAG,YAC3BA,GAAe,KAAM,EAAG,EAAG,YAY3B,IAAIskB,GAAQ/mB,EAAOnwD,UA8EnB,SAASm3E,GAAY34C,GACjB,OAAOwqC,GAAoB,IAARxqC,EACvB,CAEA,SAAS44C,KACL,OAAOpO,GAAYnpE,MAAM,KAAMR,WAAWg4E,WAC9C,CAEA,SAASC,GAAoBl0C,GACzB,OAAOA,CACX,CAtFA8zC,GAAMzwC,IAAoBA,GAC1BywC,GAAMllB,SAAoBse,GAC1B4G,GAAM3vC,MAAoBA,GAC1B2vC,GAAM1vB,KAAoBA,GAC1B0vB,GAAMtG,MAAoBA,GAC1BsG,GAAM7vD,OAAoBA,GAC1B6vD,GAAMpzE,KAAoBA,GAC1BozE,GAAM7E,QAAoBA,GAC1B6E,GAAMrzE,GAAoBA,GAC1BqzE,GAAM5E,MAAoBA,GAC1B4E,GAAMzpE,IAAoBwpD,GAC1BigB,GAAMzD,UAAoBA,GAC1ByD,GAAM/H,QAAoBA,GAC1B+H,GAAM9H,SAAoBA,GAC1B8H,GAAMrG,UAAoBA,GAC1BqG,GAAMjG,OAAoBA,GAC1BiG,GAAM/F,cAAoBA,GAC1B+F,GAAM9F,eAAoBA,GAC1B8F,GAAMnoB,QAAoBwkB,GAC1B2D,GAAM1E,KAAoBA,GAC1B0E,GAAMxpB,OAAoBA,GAC1BwpB,GAAMlkB,WAAoBA,GAC1BkkB,GAAMrxE,IAAoBmlE,GAC1BkM,GAAM5+D,IAAoBwyD,GAC1BoM,GAAM1D,aAAoBA,GAC1B0D,GAAMnmB,IAAoBmG,GAC1BggB,GAAMzG,QAAoBA,GAC1ByG,GAAMnJ,SAAoBA,GAC1BmJ,GAAM5I,QAAoBA,GAC1B4I,GAAM7D,SAAoBA,GAC1B6D,GAAMrF,OAAoBA,GAC1BqF,GAAMvF,YAAoBA,GAC1BuF,GAAMpF,QAAoBA,GAC1BoF,GAAM5D,OAAoBA,GAC1B4D,GAAMp3E,SAAoBA,GAC1Bo3E,GAAM9D,KAAoBA,GAC1B8D,GAAM1pB,QAAoBA,GAC1B0pB,GAAMxD,aAAoBA,GAC1BwD,GAAM5gB,KAAaoG,GACnBwa,GAAM7gB,WAAasG,GACnBua,GAAMxO,SAAciN,GACpBuB,GAAMlB,YAAcH,GACpBqB,GAAMpL,QAAUoL,GAAMrL,SAAW0K,GACjCW,GAAMpgB,MAAc+E,GACpBqb,GAAMlgB,YAAc8E,GACpBob,GAAMzZ,KAAiByZ,GAAMnL,MAAevN,GAC5C0Y,GAAMlL,QAAiBkL,GAAMS,SAAelZ,GAC5CyY,GAAMjZ,YAAiBgY,GACvBiB,GAAMW,eAAiB/B,GACvBoB,GAAMngB,KAAa2f,GACnBQ,GAAMrX,IAAaqX,GAAMjL,KAAmBvL,GAC5CwW,GAAMxZ,QAAakD,GACnBsW,GAAM/D,WAAatS,GACnBqW,GAAMrZ,UAAa8Y,GACnBO,GAAMzN,KAAOyN,GAAMxV,MAAQiB,GAC3BuU,GAAM3M,OAAS2M,GAAMrV,QAAU+U,GAC/BM,GAAMt+B,OAASs+B,GAAMhV,QAAU4U,GAC/BI,GAAM1M,YAAc0M,GAAMhL,aAAe2K,GACzCK,GAAMzsB,UAAuB6iB,GAC7B4J,GAAMrtB,IAAuBgkB,GAC7BqJ,GAAM9qB,MAAuB0hB,GAC7BoJ,GAAMG,UAAuBrJ,GAC7BkJ,GAAMhJ,qBAAuBA,GAC7BgJ,GAAMa,MAAuB5J,GAC7B+I,GAAM3I,QAAuBA,GAC7B2I,GAAM1I,YAAuBA,GAC7B0I,GAAMzI,MAAuBA,GAC7ByI,GAAMrM,MAAuB4D,GAC7ByI,GAAM/qB,SAAW6qB,GACjBE,GAAMhrB,SAAW+qB,GACjBC,GAAMc,MAASznB,EAAU,kDAAmDmmB,IAC5EQ,GAAM/c,OAAS5J,EAAU,mDAAoDsL,IAC7Eqb,GAAMtL,MAASrb,EAAU,iDAAkDmM,IAC3Ewa,GAAMjwB,KAASsJ,EAAU,2GAA4Gqd,IACrIsJ,GAAMe,aAAe1nB,EAAU,0GAA2G6d,IAc1I,IAAI8J,GAAU1mB,EAAOxxD,UAiCrB,SAASm4E,GAAO9wD,EAAQzgB,EAAOwxE,EAAOC,GAClC,IAAI3qB,EAASsW,KACTna,EAAM4D,IAAYsD,IAAIsnB,EAAQzxE,GAClC,OAAO8mD,EAAO0qB,GAAOvuB,EAAKxiC,EAC9B,CAEA,SAASixD,GAAgBjxD,EAAQzgB,EAAOwxE,GAQpC,GAPIlrB,EAAS7lC,KACTzgB,EAAQygB,EACRA,OAASnY,GAGbmY,EAASA,GAAU,GAEN,MAATzgB,EACA,OAAOuxE,GAAM9wD,EAAQzgB,EAAOwxE,EAAO,SAGvC,IAAIh5E,EACAqmD,EAAM,GACV,IAAKrmD,EAAI,EAAGA,EAAI,GAAIA,IAChBqmD,EAAIrmD,GAAK+4E,GAAM9wD,EAAQjoB,EAAGg5E,EAAO,SAErC,OAAO3yB,CACX,CAUA,SAAS8yB,GAAkBC,EAAcnxD,EAAQzgB,EAAOwxE,GACxB,mBAAjBI,GACHtrB,EAAS7lC,KACTzgB,EAAQygB,EACRA,OAASnY,GAGbmY,EAASA,GAAU,KAGnBzgB,EADAygB,EAASmxD,EAETA,GAAe,EAEXtrB,EAAS7lC,KACTzgB,EAAQygB,EACRA,OAASnY,GAGbmY,EAASA,GAAU,IAGvB,IAOIjoB,EAPAsuD,EAASsW,KACTxsD,EAAQghE,EAAe9qB,EAAO0Q,MAAMhB,IAAM,EAE9C,GAAa,MAATx2D,EACA,OAAOuxE,GAAM9wD,GAASzgB,EAAQ4Q,GAAS,EAAG4gE,EAAO,OAIrD,IAAI3yB,EAAM,GACV,IAAKrmD,EAAI,EAAGA,EAAI,EAAGA,IACfqmD,EAAIrmD,GAAK+4E,GAAM9wD,GAASjoB,EAAIoY,GAAS,EAAG4gE,EAAO,OAEnD,OAAO3yB,CACX,CAEA,SAASgzB,GAAYpxD,EAAQzgB,GACzB,OAAO0xE,GAAejxD,EAAQzgB,EAAO,SACzC,CAEA,SAAS8xE,GAAiBrxD,EAAQzgB,GAC9B,OAAO0xE,GAAejxD,EAAQzgB,EAAO,cACzC,CAEA,SAAS+xE,GAAcH,EAAcnxD,EAAQzgB,GACzC,OAAO2xE,GAAiBC,EAAcnxD,EAAQzgB,EAAO,WACzD,CAEA,SAASgyE,GAAmBJ,EAAcnxD,EAAQzgB,GAC9C,OAAO2xE,GAAiBC,EAAcnxD,EAAQzgB,EAAO,gBACzD,CAEA,SAASiyE,GAAiBL,EAAcnxD,EAAQzgB,GAC5C,OAAO2xE,GAAiBC,EAAcnxD,EAAQzgB,EAAO,cACzD,CAvHAsxE,GAAQlmB,SAAkBA,EAC1BkmB,GAAQ3kB,eAAkBA,EAC1B2kB,GAAQ7kB,YAAkBA,EAC1B6kB,GAAQplB,QAAkBA,EAC1BolB,GAAQvN,SAAkB2M,GAC1BY,GAAQ/F,WAAkBmF,GAC1BY,GAAQhjB,aAAkBA,EAC1BgjB,GAAQ5iB,WAAkBA,EAC1B4iB,GAAQnnB,IAAkBA,EAE1BmnB,GAAQ/d,OAA2BS,GACnCsd,GAAQhe,YAA2Ba,GACnCmd,GAAQ5d,YAA2BmB,GACnCyc,GAAQ7d,YAAoBA,GAC5B6d,GAAQ9d,iBAAoBA,GAC5B8d,GAAQza,KAAOU,GACf+Z,GAAQY,eAAiBva,GACzB2Z,GAAQa,eAAiBza,GAEzB4Z,GAAQjZ,SAAwBU,GAChCuY,GAAQnZ,YAAwBiB,GAChCkY,GAAQlZ,cAAwBc,GAChCoY,GAAQvZ,cAAwB4B,GAEhC2X,GAAQ9Y,cAA6BA,GACrC8Y,GAAQ/Y,mBAA6BA,GACrC+Y,GAAQhZ,iBAA6BA,GAErCgZ,GAAQ7V,KAAOL,GACfkW,GAAQxpB,SAAWkU,GA4FnBmB,GAAmB,KAAM,CACrBf,uBAAwB,uBACxBlQ,QAAU,SAAUl6C,GAChB,IAAIlY,EAAIkY,EAAS,GAKjB,OAAOA,GAJoC,IAA7B49C,EAAM59C,EAAS,IAAM,IAAa,KACrC,IAANlY,EAAW,KACL,IAANA,EAAW,KACL,IAANA,EAAW,KAAO,KAE3B,IAKJ8rD,EAAMgmB,KAAOjiB,EAAU,wDAAyDwT,IAChFvX,EAAMwsB,SAAWzoB,EAAU,gEAAiEyT,IAE5F,IAAIiV,GAAUrzE,KAAKkjB,IAEnB,SAASA,KACL,IAAI3f,EAAiBjI,KAAKo4C,MAa1B,OAXAp4C,KAAKirE,cAAgB8M,GAAQ/3E,KAAKirE,eAClCjrE,KAAKkrE,MAAgB6M,GAAQ/3E,KAAKkrE,OAClClrE,KAAK25D,QAAgBoe,GAAQ/3E,KAAK25D,SAElC1xD,EAAK+iE,aAAgB+M,GAAQ9vE,EAAK+iE,cAClC/iE,EAAK+4D,QAAgB+W,GAAQ9vE,EAAK+4D,SAClC/4D,EAAK04D,QAAgBoX,GAAQ9vE,EAAK04D,SAClC14D,EAAKu4D,MAAgBuX,GAAQ9vE,EAAKu4D,OAClCv4D,EAAKgxD,OAAgB8e,GAAQ9vE,EAAKgxD,QAClChxD,EAAKyiE,MAAgBqN,GAAQ9vE,EAAKyiE,OAE3B1qE,IACX,CAEA,SAASg4E,GAAetmD,EAAU4L,EAAOx8B,EAAOksB,GAC5C,IAAI68C,EAAQW,GAAeltC,EAAOx8B,GAMlC,OAJA4wB,EAASu5C,eAAiBj+C,EAAY68C,EAAMoB,cAC5Cv5C,EAASw5C,OAAiBl+C,EAAY68C,EAAMqB,MAC5Cx5C,EAASioC,SAAiB3sC,EAAY68C,EAAMlQ,QAErCjoC,EAASy5C,SACpB,CAGA,SAAS8M,GAAO36C,EAAOx8B,GACnB,OAAOk3E,GAAch4E,KAAMs9B,EAAOx8B,EAAO,EAC7C,CAGA,SAASo3E,GAAY56C,EAAOx8B,GACxB,OAAOk3E,GAAch4E,KAAMs9B,EAAOx8B,GAAQ,EAC9C,CAEA,SAASq3E,GAASzgE,GACd,OAAIA,EAAS,EACFhT,KAAKi+B,MAAMjrB,GAEXhT,KAAKwD,KAAKwP,EAEzB,CAEA,SAAS0gE,KACL,IAIIpX,EAASL,EAASH,EAAOkK,EAAO2N,EAJhCrN,EAAehrE,KAAKirE,cACpBF,EAAe/qE,KAAKkrE,MACpBjS,EAAej5D,KAAK25D,QACpB1xD,EAAejI,KAAKo4C,MAwCxB,OAnCO4yB,GAAgB,GAAKD,GAAQ,GAAK9R,GAAU,GAC1C+R,GAAgB,GAAKD,GAAQ,GAAK9R,GAAU,IACjD+R,GAAuD,MAAvCmN,GAAQG,GAAarf,GAAU8R,GAC/CA,EAAO,EACP9R,EAAS,GAKbhxD,EAAK+iE,aAAeA,EAAe,IAEnChK,EAAoB3L,EAAS2V,EAAe,KAC5C/iE,EAAK+4D,QAAeA,EAAU,GAE9BL,EAAoBtL,EAAS2L,EAAU,IACvC/4D,EAAK04D,QAAeA,EAAU,GAE9BH,EAAoBnL,EAASsL,EAAU,IACvC14D,EAAKu4D,MAAeA,EAAQ,GAE5BuK,GAAQ1V,EAASmL,EAAQ,IAIzBvH,GADAof,EAAiBhjB,EAASkjB,GAAaxN,IAEvCA,GAAQoN,GAAQG,GAAaD,IAG7B3N,EAAQrV,EAAS4D,EAAS,IAC1BA,GAAU,GAEVhxD,EAAK8iE,KAASA,EACd9iE,EAAKgxD,OAASA,EACdhxD,EAAKyiE,MAASA,EAEP1qE,IACX,CAEA,SAASu4E,GAAcxN,GAGnB,OAAc,KAAPA,EAAc,MACzB,CAEA,SAASuN,GAAcrf,GAEnB,OAAgB,OAATA,EAAkB,IAC7B,CAEA,SAASuf,GAAI/jB,GACT,IAAKz0D,KAAK6tD,UACN,OAAOU,IAEX,IAAIwc,EACA9R,EACA+R,EAAehrE,KAAKirE,cAIxB,GAAc,WAFdxW,EAAQD,EAAeC,KAEY,YAAVA,GAAiC,SAAVA,EAG5C,OAFAsW,EAAO/qE,KAAKkrE,MAAQF,EAAe,MACnC/R,EAASj5D,KAAK25D,QAAU4e,GAAaxN,GAC7BtW,GACJ,IAAK,QAAW,OAAOwE,EACvB,IAAK,UAAW,OAAOA,EAAS,EAChC,IAAK,OAAW,OAAOA,EAAS,QAKpC,OADA8R,EAAO/qE,KAAKkrE,MAAQxmE,KAAKqX,MAAMu8D,GAAat4E,KAAK25D,UACzClF,GACJ,IAAK,OAAW,OAAOsW,EAAO,EAAQC,EAAe,OACrD,IAAK,MAAW,OAAOD,EAAeC,EAAe,MACrD,IAAK,OAAW,OAAc,GAAPD,EAAeC,EAAe,KACrD,IAAK,SAAW,OAAc,KAAPD,EAAeC,EAAe,IACrD,IAAK,SAAW,OAAc,MAAPD,EAAeC,EAAe,IAErD,IAAK,cAAe,OAAOtmE,KAAKi+B,MAAa,MAAPooC,GAAgBC,EACtD,QAAS,MAAM,IAAIvmE,MAAM,gBAAkBgwD,GAGvD,CAGA,SAASgkB,KACL,OAAKz4E,KAAK6tD,UAIN7tD,KAAKirE,cACQ,MAAbjrE,KAAKkrE,MACJlrE,KAAK25D,QAAU,GAAM,OACK,QAA3BrE,EAAMt1D,KAAK25D,QAAU,IANdpL,GAQf,CAEA,SAASmqB,GAAQtwB,GACb,OAAO,WACH,OAAOpoD,KAAKw4E,GAAGpwB,EACnB,CACJ,CAEA,IAAIuwB,GAAiBD,GAAO,MACxBE,GAAiBF,GAAO,KACxBG,GAAiBH,GAAO,KACxBI,GAAiBJ,GAAO,KACxBK,GAAiBL,GAAO,KACxBM,GAAiBN,GAAO,KACxBO,GAAiBP,GAAO,KACxBQ,GAAiBR,GAAO,KACxBS,GAAiBT,GAAO,KAE5B,SAASU,KACL,OAAO5O,GAAexqE,KAC1B,CAEA,SAASq5E,GAAO5kB,GAEZ,OADAA,EAAQD,EAAeC,GAChBz0D,KAAK6tD,UAAY7tD,KAAKy0D,EAAQ,OAASlG,GAClD,CAEA,SAAS+qB,GAAWvgE,GAChB,OAAO,WACH,OAAO/Y,KAAK6tD,UAAY7tD,KAAKo4C,MAAMr/B,GAAQw1C,GAC/C,CACJ,CAEA,IAAIyc,GAAesO,GAAW,gBAC1BtY,GAAesY,GAAW,WAC1B3Y,GAAe2Y,GAAW,WAC1B9Y,GAAe8Y,GAAW,SAC1BvO,GAAeuO,GAAW,QAC1BrgB,GAAeqgB,GAAW,UAC1B5O,GAAe4O,GAAW,SAE9B,SAASzO,KACL,OAAOxV,EAASr1D,KAAK+qE,OAAS,EAClC,CAEA,IAAIhvD,GAAQrX,KAAKqX,MACbw9D,GAAa,CACb/lB,GAAI,GACJlzD,EAAI,GACJy7B,EAAI,GACJt4B,EAAI,GACJlE,EAAI,GACJs0D,EAAI,IAIR,SAAS2lB,GAAkBt3C,EAAQxqB,EAAQu8C,EAAeC,EAAU1H,GAChE,OAAOA,EAAOwH,aAAat8C,GAAU,IAAKu8C,EAAe/xB,EAAQgyB,EACrE,CAEA,SAASulB,GAAgBC,EAAgBzlB,EAAezH,GACpD,IAAI96B,EAAW84C,GAAekP,GAAgB9xD,MAC1Co5C,EAAWjlD,GAAM2V,EAAS8mD,GAAG,MAC7B7X,EAAW5kD,GAAM2V,EAAS8mD,GAAG,MAC7BhY,EAAWzkD,GAAM2V,EAAS8mD,GAAG,MAC7BzN,EAAWhvD,GAAM2V,EAAS8mD,GAAG,MAC7Bvf,EAAWl9C,GAAM2V,EAAS8mD,GAAG,MAC7B9N,EAAW3uD,GAAM2V,EAAS8mD,GAAG,MAE7B7rE,EAAIq0D,GAAWuY,GAAW/lB,IAAM,CAAC,IAAKwN,IAClCA,EAAUuY,GAAWj5E,GAAO,CAAC,KAAM0gE,IACnCL,GAAW,GAAiB,CAAC,MAC7BA,EAAU4Y,GAAWx9C,GAAO,CAAC,KAAM4kC,IACnCH,GAAW,GAAiB,CAAC,MAC7BA,EAAU+Y,GAAW91E,GAAO,CAAC,KAAM+8D,IACnCuK,GAAW,GAAiB,CAAC,MAC7BA,EAAUwO,GAAWh6E,GAAO,CAAC,KAAMwrE,IACnC9R,GAAW,GAAiB,CAAC,MAC7BA,EAAUsgB,GAAW1lB,GAAO,CAAC,KAAMoF,IACnCyR,GAAW,GAAiB,CAAC,MAAkB,CAAC,KAAMA,GAK9D,OAHA/9D,EAAE,GAAKsnD,EACPtnD,EAAE,IAAM+sE,EAAiB,EACzB/sE,EAAE,GAAK6/C,EACAgtB,GAAkB76E,MAAM,KAAMgO,EACzC,CAGA,SAASgtE,GAA4BC,GACjC,YAAyB5rE,IAArB4rE,EACO79D,GAEsB,oBAAtB69D,IACP79D,GAAQ69D,GACD,EAGf,CAGA,SAASC,GAA6BC,EAAWC,GAC7C,YAA8B/rE,IAA1BurE,GAAWO,UAGD9rE,IAAV+rE,EACOR,GAAWO,IAEtBP,GAAWO,GAAaC,EACN,MAAdD,IACAP,GAAW/lB,GAAKumB,EAAQ,IAErB,GACX,CAEA,SAAS7I,GAAUgJ,GACf,IAAKl6E,KAAK6tD,UACN,OAAO7tD,KAAK8xD,aAAaK,cAG7B,IAAI3F,EAASxsD,KAAK8xD,aACdf,EAAS0oB,GAAez5E,MAAOk6E,EAAY1tB,GAM/C,OAJI0tB,IACAnpB,EAASvE,EAAO4H,YAAYp0D,KAAM+wD,IAG/BvE,EAAOykB,WAAWlgB,EAC7B,CAEA,IAAIqpB,GAAQ11E,KAAKkjB,IAEjB,SAAS9U,GAAKvP,GACV,OAASA,EAAI,IAAMA,EAAI,KAAQA,CACnC,CAEA,SAAS82E,KAQL,IAAKr6E,KAAK6tD,UACN,OAAO7tD,KAAK8xD,aAAaK,cAG7B,IAGIwO,EAASH,EAHTQ,EAAUoZ,GAAMp6E,KAAKirE,eAAiB,IACtCF,EAAeqP,GAAMp6E,KAAKkrE,OAC1BjS,EAAemhB,GAAMp6E,KAAK25D,SAI9BgH,EAAoBtL,EAAS2L,EAAU,IACvCR,EAAoBnL,EAASsL,EAAU,IACvCK,GAAW,GACXL,GAAW,GAQX,IAAI4a,EALKlmB,EAAS4D,EAAS,IAMvBpF,EALJoF,GAAU,GAMNuiB,EAAIzQ,EACJtnE,EAAI+8D,EACJzkC,EAAI4kC,EACJrgE,EAAI0gE,EAAUA,EAAQ2Z,QAAQ,GAAG/+C,QAAQ,SAAU,IAAM,GACzD8+C,EAAQ16E,KAAK44E,YAEjB,IAAK8B,EAGD,MAAO,MAGX,IAAIJ,EAAYI,EAAQ,EAAI,IAAM,GAC9BH,EAASznE,GAAK9S,KAAK25D,WAAa7mD,GAAK4nE,GAAS,IAAM,GACpDF,EAAW1nE,GAAK9S,KAAKkrE,SAAWp4D,GAAK4nE,GAAS,IAAM,GACpDD,EAAU3nE,GAAK9S,KAAKirE,iBAAmBn4D,GAAK4nE,GAAS,IAAM,GAE/D,OAAOJ,EAAY,KACdiB,EAAIhB,EAASgB,EAAI,IAAM,KACvB1nB,EAAI0mB,EAAS1mB,EAAI,IAAM,KACvB2nB,EAAIhB,EAAWgB,EAAI,IAAM,KACxB/3E,GAAKs4B,GAAKz7B,EAAK,IAAM,KACtBmD,EAAIg3E,EAAUh3E,EAAI,IAAM,KACxBs4B,EAAI0+C,EAAU1+C,EAAI,IAAM,KACxBz7B,EAAIm6E,EAAUn6E,EAAI,IAAM,GACjC,CAEA,IAAIs6E,GAAUnQ,GAAS3rE,UAwGvB,OAtGA87E,GAAQ/sB,QAAiByc,GACzBsQ,GAAQhzD,IAAiBA,GACzBgzD,GAAQr1C,IAAiB0yC,GACzB2C,GAAQ/N,SAAiBqL,GACzB0C,GAAQpC,GAAiBA,GACzBoC,GAAQjC,eAAiBA,GACzBiC,GAAQhC,UAAiBA,GACzBgC,GAAQ/B,UAAiBA,GACzB+B,GAAQ9B,QAAiBA,GACzB8B,GAAQ7B,OAAiBA,GACzB6B,GAAQ5B,QAAiBA,GACzB4B,GAAQ3B,SAAiBA,GACzB2B,GAAQ1B,WAAiBA,GACzB0B,GAAQzB,QAAiBA,GACzByB,GAAQtuB,QAAiBmsB,GACzBmC,GAAQzP,QAAiBiN,GACzBwC,GAAQv0C,MAAiB+yC,GACzBwB,GAAQruE,IAAiB8sE,GACzBuB,GAAQ5P,aAAiBA,GACzB4P,GAAQ5Z,QAAiBA,GACzB4Z,GAAQja,QAAiBA,GACzBia,GAAQpa,MAAiBA,GACzBoa,GAAQ7P,KAAiBA,GACzB6P,GAAQ/P,MAAiBA,GACzB+P,GAAQ3hB,OAAiBA,GACzB2hB,GAAQlQ,MAAiBA,GACzBkQ,GAAQ1J,SAAiBA,GACzB0J,GAAQnK,YAAiB4J,GACzBO,GAAQh8E,SAAiBy7E,GACzBO,GAAQxI,OAAiBiI,GACzBO,GAAQpuB,OAAiBA,GACzBouB,GAAQ9oB,WAAiBA,GAEzB8oB,GAAQC,YAAcxrB,EAAU,sFAAuFgrB,IACvHO,GAAQtJ,KAAOA,GAMf5f,GAAe,IAAK,EAAG,EAAG,QAC1BA,GAAe,IAAK,EAAG,EAAG,WAI1B2F,GAAc,IAAKL,IACnBK,GAAc,IAAKF,IACnBY,GAAc,KAAK,SAAUz6B,EAAOmnB,EAAOyK,GACvCA,EAAO5S,GAAK,IAAIwE,KAA6B,IAAxBupB,WAAW/sC,EAAO,IAC3C,IACAy6B,GAAc,KAAK,SAAUz6B,EAAOmnB,EAAOyK,GACvCA,EAAO5S,GAAK,IAAIwE,KAAKwU,EAAMh4B,GAC/B,IAKAguB,EAAMjI,QAAU,SAEhBkI,EAAgBuc,IAEhBxc,EAAMd,GAAwBwrB,GAC9B1qB,EAAMl0C,IAAwBA,GAC9Bk0C,EAAM3mD,IAAwBA,GAC9B2mD,EAAMvK,IAAwBA,GAC9BuK,EAAM3C,IAAwB4D,EAC9BjB,EAAM4mB,KAAwB+D,GAC9B3qB,EAAM2N,OAAwBse,GAC9BjsB,EAAMW,OAAwBA,EAC9BX,EAAMkB,OAAwBqW,GAC9BvX,EAAMgjB,QAAwBhgB,EAC9BhD,EAAM55B,SAAwB84C,GAC9Blf,EAAM1C,SAAwBA,EAC9B0C,EAAMyS,SAAwB0Z,GAC9BnsB,EAAM6qB,UAAwBD,GAC9B5qB,EAAMwG,WAAwBgR,GAC9BxX,EAAM8f,WAAwBA,GAC9B9f,EAAM0N,YAAwBwe,GAC9BlsB,EAAMuS,YAAwB8Z,GAC9BrsB,EAAMyX,aAAwBA,GAC9BzX,EAAM2X,aAAwBA,GAC9B3X,EAAM0W,QAAwBmB,GAC9B7X,EAAMwS,cAAwB4Z,GAC9BpsB,EAAMkJ,eAAwBA,EAC9BlJ,EAAMwvB,qBAAwBnB,GAC9BruB,EAAMyvB,sBAAwBlB,GAC9BvuB,EAAMkkB,eAAwBN,GAC9B5jB,EAAMxsD,UAAwBk3E,GAG9B1qB,EAAM0vB,UAAY,CACdC,eAAgB,mBAChBC,uBAAwB,sBACxBC,kBAAmB,0BACnB7iB,KAAM,aACN8iB,KAAM,QACNC,aAAc,WACdC,QAAS,eACT3iB,KAAM,aACNN,MAAO,WAGJ/M,CAEX,CAt/IoFpI,sCCSvE,IAAIu4B,EAAGx4B,EAAQ,MAASy4B,EAAGz4B,EAAQ,MAAa,SAAStjD,EAAEgN,GAAG,IAAI,IAAInN,EAAE,yDAAyDmN,EAAEkG,EAAE,EAAEA,EAAE1U,UAAUC,OAAOyU,IAAIrT,GAAG,WAAWw5B,mBAAmB76B,UAAU0U,IAAI,MAAM,yBAAyBlG,EAAE,WAAWnN,EAAE,gHAAgH,CAAC,IAAIm8E,EAAG,IAAIC,IAAIC,EAAG,CAAC,EAAE,SAASC,EAAGnvE,EAAEnN,GAAGu8E,EAAGpvE,EAAEnN,GAAGu8E,EAAGpvE,EAAE,UAAUnN,EAAE,CACxb,SAASu8E,EAAGpvE,EAAEnN,GAAW,IAARq8E,EAAGlvE,GAAGnN,EAAMmN,EAAE,EAAEA,EAAEnN,EAAEpB,OAAOuO,IAAIgvE,EAAGp2C,IAAI/lC,EAAEmN,GAAG,CAC5D,IAAIqvE,IAAK,qBAAqBhoD,QAAQ,qBAAqBA,OAAOzvB,UAAU,qBAAqByvB,OAAOzvB,SAASwxB,eAAekmD,EAAGp9E,OAAOC,UAAUf,eAAem+E,EAAG,8VAA8VC,EACpgB,CAAC,EAAEC,EAAG,CAAC,EACiN,SAAS75E,EAAEoK,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,EAAEE,GAAG9B,KAAKq8E,gBAAgB,IAAI78E,GAAG,IAAIA,GAAG,IAAIA,EAAEQ,KAAKs8E,cAAc/8E,EAAES,KAAKu8E,mBAAmBl7E,EAAErB,KAAKw8E,gBAAgB3pE,EAAE7S,KAAKy8E,aAAa9vE,EAAE3M,KAAKgN,KAAKxN,EAAEQ,KAAK08E,YAAY96E,EAAE5B,KAAK28E,kBAAkB76E,CAAC,CAAC,IAAIuP,EAAE,CAAC,EACpb,uIAAuIyyC,MAAM,KAAKz3C,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAE,MAAK,GAAG,EAAG,IAAG,CAAC,CAAC,gBAAgB,kBAAkB,CAAC,YAAY,SAAS,CAAC,UAAU,OAAO,CAAC,YAAY,eAAeN,SAAQ,SAASM,GAAG,IAAInN,EAAEmN,EAAE,GAAG0E,EAAE7R,GAAG,IAAI+C,EAAE/C,EAAE,GAAE,EAAGmN,EAAE,GAAG,MAAK,GAAG,EAAG,IAAG,CAAC,kBAAkB,YAAY,aAAa,SAASN,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAEkK,cAAc,MAAK,GAAG,EAAG,IAC1e,CAAC,cAAc,4BAA4B,YAAY,iBAAiBxK,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAE,MAAK,GAAG,EAAG,IAAG,8OAA8Om3C,MAAM,KAAKz3C,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAEkK,cAAc,MAAK,GAAG,EAAG,IACxb,CAAC,UAAU,WAAW,QAAQ,YAAYxK,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAE,MAAK,GAAG,EAAG,IAAG,CAAC,UAAU,YAAYN,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAE,MAAK,GAAG,EAAG,IAAG,CAAC,OAAO,OAAO,OAAO,QAAQN,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAE,MAAK,GAAG,EAAG,IAAG,CAAC,UAAU,SAASN,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAEkK,cAAc,MAAK,GAAG,EAAG,IAAG,IAAI+lE,EAAG,gBAAgB,SAASC,EAAGlwE,GAAG,OAAOA,EAAE,GAAG4O,aAAa,CAIxZ,SAASuhE,EAAGnwE,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAEgQ,EAAEtT,eAAeyB,GAAG6R,EAAE7R,GAAG,MAAQ,OAAO6B,EAAE,IAAIA,EAAE2L,KAAKzN,KAAK,EAAEC,EAAEpB,SAAS,MAAMoB,EAAE,IAAI,MAAMA,EAAE,IAAI,MAAMA,EAAE,IAAI,MAAMA,EAAE,MAP9I,SAAYmN,EAAEnN,EAAEqT,EAAEtT,GAAG,GAAG,OAAOC,GAAG,qBAAqBA,GADqE,SAAYmN,EAAEnN,EAAEqT,EAAEtT,GAAG,GAAG,OAAOsT,GAAG,IAAIA,EAAE7F,KAAK,OAAM,EAAG,cAAcxN,GAAG,IAAK,WAAW,IAAK,SAAS,OAAM,EAAG,IAAK,UAAU,OAAGD,IAAc,OAAOsT,GAASA,EAAEwpE,gBAAmD,WAAnC1vE,EAAEA,EAAEkK,cAAc7T,MAAM,EAAE,KAAsB,UAAU2J,GAAE,QAAQ,OAAM,EAAG,CAC/TowE,CAAGpwE,EAAEnN,EAAEqT,EAAEtT,GAAG,OAAM,EAAG,GAAGA,EAAE,OAAM,EAAG,GAAG,OAAOsT,EAAE,OAAOA,EAAE7F,MAAM,KAAK,EAAE,OAAOxN,EAAE,KAAK,EAAE,OAAM,IAAKA,EAAE,KAAK,EAAE,OAAOyuD,MAAMzuD,GAAG,KAAK,EAAE,OAAOyuD,MAAMzuD,IAAI,EAAEA,EAAE,OAAM,CAAE,CAOtEw9E,CAAGx9E,EAAEqT,EAAExR,EAAE9B,KAAKsT,EAAE,MAAMtT,GAAG,OAAO8B,EARxK,SAAYsL,GAAG,QAAGsvE,EAAGh9E,KAAKm9E,EAAGzvE,KAAesvE,EAAGh9E,KAAKk9E,EAAGxvE,KAAeuvE,EAAGh3C,KAAKv4B,GAAUyvE,EAAGzvE,IAAG,GAAGwvE,EAAGxvE,IAAG,GAAS,GAAE,CAQwDswE,CAAGz9E,KAAK,OAAOqT,EAAElG,EAAEuwE,gBAAgB19E,GAAGmN,EAAE+vB,aAAal9B,EAAE,GAAGqT,IAAIxR,EAAEm7E,gBAAgB7vE,EAAEtL,EAAEo7E,cAAc,OAAO5pE,EAAE,IAAIxR,EAAE2L,MAAQ,GAAG6F,GAAGrT,EAAE6B,EAAEi7E,cAAc/8E,EAAE8B,EAAEk7E,mBAAmB,OAAO1pE,EAAElG,EAAEuwE,gBAAgB19E,IAAaqT,EAAE,KAAXxR,EAAEA,EAAE2L,OAAc,IAAI3L,IAAG,IAAKwR,EAAE,GAAG,GAAGA,EAAEtT,EAAEoN,EAAEksB,eAAet5B,EAAEC,EAAEqT,GAAGlG,EAAE+vB,aAAal9B,EAAEqT,KAAI,CAHjd,0jCAA0jCixC,MAAM,KAAKz3C,SAAQ,SAASM,GAAG,IAAInN,EAAEmN,EAAEivB,QAAQghD,EACzmCC,GAAIxrE,EAAE7R,GAAG,IAAI+C,EAAE/C,EAAE,GAAE,EAAGmN,EAAE,MAAK,GAAG,EAAG,IAAG,2EAA2Em3C,MAAM,KAAKz3C,SAAQ,SAASM,GAAG,IAAInN,EAAEmN,EAAEivB,QAAQghD,EAAGC,GAAIxrE,EAAE7R,GAAG,IAAI+C,EAAE/C,EAAE,GAAE,EAAGmN,EAAE,gCAA+B,GAAG,EAAG,IAAG,CAAC,WAAW,WAAW,aAAaN,SAAQ,SAASM,GAAG,IAAInN,EAAEmN,EAAEivB,QAAQghD,EAAGC,GAAIxrE,EAAE7R,GAAG,IAAI+C,EAAE/C,EAAE,GAAE,EAAGmN,EAAE,wCAAuC,GAAG,EAAG,IAAG,CAAC,WAAW,eAAeN,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAEkK,cAAc,MAAK,GAAG,EAAG,IACldxF,EAAE8rE,UAAU,IAAI56E,EAAE,YAAY,GAAE,EAAG,aAAa,gCAA+B,GAAG,GAAI,CAAC,MAAM,OAAO,SAAS,cAAc8J,SAAQ,SAASM,GAAG0E,EAAE1E,GAAG,IAAIpK,EAAEoK,EAAE,GAAE,EAAGA,EAAEkK,cAAc,MAAK,GAAG,EAAG,IAE5L,IAAIumE,EAAG3B,EAAG4B,mDAAmDC,EAAGj7E,OAAOg0E,IAAI,iBAAiBkH,EAAGl7E,OAAOg0E,IAAI,gBAAgBmH,EAAGn7E,OAAOg0E,IAAI,kBAAkBoH,EAAGp7E,OAAOg0E,IAAI,qBAAqBqH,EAAGr7E,OAAOg0E,IAAI,kBAAkBsH,EAAGt7E,OAAOg0E,IAAI,kBAAkBuH,EAAGv7E,OAAOg0E,IAAI,iBAAiBwH,EAAGx7E,OAAOg0E,IAAI,qBAAqByH,EAAGz7E,OAAOg0E,IAAI,kBAAkB0H,EAAG17E,OAAOg0E,IAAI,uBAAuB2H,EAAG37E,OAAOg0E,IAAI,cAAc4H,EAAG57E,OAAOg0E,IAAI,cAAch0E,OAAOg0E,IAAI,eAAeh0E,OAAOg0E,IAAI,0BACje,IAAI6H,EAAG77E,OAAOg0E,IAAI,mBAAmBh0E,OAAOg0E,IAAI,uBAAuBh0E,OAAOg0E,IAAI,eAAeh0E,OAAOg0E,IAAI,wBAAwB,IAAI8H,EAAG97E,OAAOC,SAAS,SAAS87E,EAAGzxE,GAAG,OAAG,OAAOA,GAAG,kBAAkBA,EAAS,KAAwC,oBAAnCA,EAAEwxE,GAAIxxE,EAAEwxE,IAAKxxE,EAAE,eAA0CA,EAAE,IAAI,CAAC,IAAoB0xE,EAAhB/sE,EAAEzS,OAAOuB,OAAU,SAASk+E,EAAG3xE,GAAG,QAAG,IAAS0xE,EAAG,IAAI,MAAM55E,OAA2E,CAAlE,MAAMoO,GAAG,IAAIrT,EAAEqT,EAAEoiC,MAAM9a,OAAOuhB,MAAM,gBAAgB2iC,EAAG7+E,GAAGA,EAAE,IAAI,EAAE,CAAC,MAAM,KAAK6+E,EAAG1xE,CAAC,CAAC,IAAI4xE,GAAG,EACzb,SAASC,EAAG7xE,EAAEnN,GAAG,IAAImN,GAAG4xE,EAAG,MAAM,GAAGA,GAAG,EAAG,IAAI1rE,EAAEpO,MAAMg6E,kBAAkBh6E,MAAMg6E,uBAAkB,EAAO,IAAI,GAAGj/E,EAAE,GAAGA,EAAE,WAAW,MAAMiF,OAAQ,EAAE5F,OAAOw6B,eAAe75B,EAAEV,UAAU,QAAQ,CAAC+wD,IAAI,WAAW,MAAMprD,OAAQ,IAAI,kBAAkBi6E,SAASA,QAAQC,UAAU,CAAC,IAAID,QAAQC,UAAUn/E,EAAE,GAAoB,CAAhB,MAAMuD,GAAG,IAAIxD,EAAEwD,CAAC,CAAC27E,QAAQC,UAAUhyE,EAAE,GAAGnN,EAAE,KAAK,CAAC,IAAIA,EAAEP,MAAmB,CAAZ,MAAM8D,GAAGxD,EAAEwD,CAAC,CAAC4J,EAAE1N,KAAKO,EAAEV,UAAU,KAAK,CAAC,IAAI,MAAM2F,OAAqB,CAAZ,MAAM1B,GAAGxD,EAAEwD,CAAC,CAAC4J,GAAG,CAC5D,CAD8D,MAAM5J,GAAG,GAAGA,GAAGxD,GAAG,kBAAkBwD,EAAEkyC,MAAM,CAAC,IAAI,IAAI5zC,EAAE0B,EAAEkyC,MAAM6O,MAAM,MACnfliD,EAAErC,EAAE01C,MAAM6O,MAAM,MAAMhiD,EAAET,EAAEjD,OAAO,EAAEqF,EAAE7B,EAAExD,OAAO,EAAE,GAAG0D,GAAG,GAAG2B,GAAGpC,EAAES,KAAKF,EAAE6B,IAAIA,IAAI,KAAK,GAAG3B,GAAG,GAAG2B,EAAE3B,IAAI2B,IAAI,GAAGpC,EAAES,KAAKF,EAAE6B,GAAG,CAAC,GAAG,IAAI3B,GAAG,IAAI2B,EAAG,MAAM3B,IAAQ,IAAJ2B,GAASpC,EAAES,KAAKF,EAAE6B,GAAG,CAAC,IAAIqoD,EAAE,KAAKzqD,EAAES,GAAG85B,QAAQ,WAAW,QAA6F,OAArFjvB,EAAEiyE,aAAa9yB,EAAE/sD,SAAS,iBAAiB+sD,EAAEA,EAAElwB,QAAQ,cAAcjvB,EAAEiyE,cAAqB9yB,CAAC,QAAO,GAAGhqD,GAAG,GAAG2B,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ86E,GAAG,EAAG95E,MAAMg6E,kBAAkB5rE,CAAC,CAAC,OAAOlG,EAAEA,EAAEA,EAAEiyE,aAAajyE,EAAEoM,KAAK,IAAIulE,EAAG3xE,GAAG,EAAE,CAC9Z,SAASkyE,EAAGlyE,GAAG,OAAOA,EAAEmyE,KAAK,KAAK,EAAE,OAAOR,EAAG3xE,EAAEK,MAAM,KAAK,GAAG,OAAOsxE,EAAG,QAAQ,KAAK,GAAG,OAAOA,EAAG,YAAY,KAAK,GAAG,OAAOA,EAAG,gBAAgB,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO3xE,EAAE6xE,EAAG7xE,EAAEK,MAAK,GAAM,KAAK,GAAG,OAAOL,EAAE6xE,EAAG7xE,EAAEK,KAAK4uC,QAAO,GAAM,KAAK,EAAE,OAAOjvC,EAAE6xE,EAAG7xE,EAAEK,MAAK,GAAM,QAAQ,MAAM,GAAG,CACxR,SAAS+xE,EAAGpyE,GAAG,GAAG,MAAMA,EAAE,OAAO,KAAK,GAAG,oBAAoBA,EAAE,OAAOA,EAAEiyE,aAAajyE,EAAEoM,MAAM,KAAK,GAAG,kBAAkBpM,EAAE,OAAOA,EAAE,OAAOA,GAAG,KAAK6wE,EAAG,MAAM,WAAW,KAAKD,EAAG,MAAM,SAAS,KAAKG,EAAG,MAAM,WAAW,KAAKD,EAAG,MAAM,aAAa,KAAKK,EAAG,MAAM,WAAW,KAAKC,EAAG,MAAM,eAAe,GAAG,kBAAkBpxE,EAAE,OAAOA,EAAEqyE,UAAU,KAAKpB,EAAG,OAAOjxE,EAAEiyE,aAAa,WAAW,YAAY,KAAKjB,EAAG,OAAOhxE,EAAE8N,SAASmkE,aAAa,WAAW,YAAY,KAAKf,EAAG,IAAIr+E,EAAEmN,EAAEivC,OAC7Z,OADoajvC,EAAEA,EAAEiyE,eACndjyE,EAAE,MADieA,EAAEnN,EAAEo/E,aAClfp/E,EAAEuZ,MAAM,IAAY,cAAcpM,EAAE,IAAI,cAAqBA,EAAE,KAAKqxE,EAAG,OAA6B,QAAtBx+E,EAAEmN,EAAEiyE,aAAa,MAAcp/E,EAAEu/E,EAAGpyE,EAAEK,OAAO,OAAO,KAAKixE,EAAGz+E,EAAEmN,EAAEsyE,SAAStyE,EAAEA,EAAEuyE,MAAM,IAAI,OAAOH,EAAGpyE,EAAEnN,GAAa,CAAT,MAAMqT,GAAG,EAAE,OAAO,IAAI,CAC3M,SAASssE,EAAGxyE,GAAG,IAAInN,EAAEmN,EAAEK,KAAK,OAAOL,EAAEmyE,KAAK,KAAK,GAAG,MAAM,QAAQ,KAAK,EAAE,OAAOt/E,EAAEo/E,aAAa,WAAW,YAAY,KAAK,GAAG,OAAOp/E,EAAEib,SAASmkE,aAAa,WAAW,YAAY,KAAK,GAAG,MAAM,qBAAqB,KAAK,GAAG,OAAkBjyE,GAAXA,EAAEnN,EAAEo8C,QAAWgjC,aAAajyE,EAAEoM,MAAM,GAAGvZ,EAAEo/E,cAAc,KAAKjyE,EAAE,cAAcA,EAAE,IAAI,cAAc,KAAK,EAAE,MAAM,WAAW,KAAK,EAAE,OAAOnN,EAAE,KAAK,EAAE,MAAM,SAAS,KAAK,EAAE,MAAM,OAAO,KAAK,EAAE,MAAM,OAAO,KAAK,GAAG,OAAOu/E,EAAGv/E,GAAG,KAAK,EAAE,OAAOA,IAAIi+E,EAAG,aAAa,OAAO,KAAK,GAAG,MAAM,YACtf,KAAK,GAAG,MAAM,WAAW,KAAK,GAAG,MAAM,QAAQ,KAAK,GAAG,MAAM,WAAW,KAAK,GAAG,MAAM,eAAe,KAAK,GAAG,MAAM,gBAAgB,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,GAAG,oBAAoBj+E,EAAE,OAAOA,EAAEo/E,aAAap/E,EAAEuZ,MAAM,KAAK,GAAG,kBAAkBvZ,EAAE,OAAOA,EAAE,OAAO,IAAI,CAAC,SAAS4/E,EAAGzyE,GAAG,cAAcA,GAAG,IAAK,UAAU,IAAK,SAAS,IAAK,SAAS,IAAK,YAAqB,IAAK,SAAS,OAAOA,EAAE,QAAQ,MAAM,GAAG,CACra,SAAS0yE,EAAG1yE,GAAG,IAAInN,EAAEmN,EAAEK,KAAK,OAAOL,EAAEA,EAAE+4B,WAAW,UAAU/4B,EAAEkK,gBAAgB,aAAarX,GAAG,UAAUA,EAAE,CAEtF,SAAS8/E,EAAG3yE,GAAGA,EAAE4yE,gBAAgB5yE,EAAE4yE,cADvD,SAAY5yE,GAAG,IAAInN,EAAE6/E,EAAG1yE,GAAG,UAAU,QAAQkG,EAAEhU,OAAO2gF,yBAAyB7yE,EAAE1M,YAAYnB,UAAUU,GAAGD,EAAE,GAAGoN,EAAEnN,GAAG,IAAImN,EAAE5O,eAAeyB,IAAI,qBAAqBqT,GAAG,oBAAoBA,EAAEtG,KAAK,oBAAoBsG,EAAEg9C,IAAI,CAAC,IAAIxuD,EAAEwR,EAAEtG,IAAI3K,EAAEiR,EAAEg9C,IAAiL,OAA7KhxD,OAAOw6B,eAAe1sB,EAAEnN,EAAE,CAACigF,cAAa,EAAGlzE,IAAI,WAAW,OAAOlL,EAAEpC,KAAKe,KAAK,EAAE6vD,IAAI,SAASljD,GAAGpN,EAAE,GAAGoN,EAAE/K,EAAE3C,KAAKe,KAAK2M,EAAE,IAAI9N,OAAOw6B,eAAe1sB,EAAEnN,EAAE,CAACkgF,WAAW7sE,EAAE6sE,aAAmB,CAACC,SAAS,WAAW,OAAOpgF,CAAC,EAAEqgF,SAAS,SAASjzE,GAAGpN,EAAE,GAAGoN,CAAC,EAAEkzE,aAAa,WAAWlzE,EAAE4yE,cACxf,YAAY5yE,EAAEnN,EAAE,EAAE,CAAC,CAAkDsgF,CAAGnzE,GAAG,CAAC,SAASozE,EAAGpzE,GAAG,IAAIA,EAAE,OAAM,EAAG,IAAInN,EAAEmN,EAAE4yE,cAAc,IAAI//E,EAAE,OAAM,EAAG,IAAIqT,EAAErT,EAAEmgF,WAAepgF,EAAE,GAAqD,OAAlDoN,IAAIpN,EAAE8/E,EAAG1yE,GAAGA,EAAE4wB,QAAQ,OAAO,QAAQ5wB,EAAE7L,QAAO6L,EAAEpN,KAAasT,IAAGrT,EAAEogF,SAASjzE,IAAG,EAAM,CAAC,SAASqzE,EAAGrzE,GAAwD,GAAG,qBAAxDA,EAAEA,IAAI,qBAAqBpI,SAASA,cAAS,IAAkC,OAAO,KAAK,IAAI,OAAOoI,EAAEszE,eAAetzE,EAAEhL,IAA2B,CAAtB,MAAMnC,GAAG,OAAOmN,EAAEhL,IAAI,CAAC,CACpa,SAASu+E,EAAGvzE,EAAEnN,GAAG,IAAIqT,EAAErT,EAAE+9B,QAAQ,OAAOjsB,EAAE,CAAC,EAAE9R,EAAE,CAAC2gF,oBAAe,EAAOC,kBAAa,EAAOt/E,WAAM,EAAOy8B,QAAQ,MAAM1qB,EAAEA,EAAElG,EAAE0zE,cAAcC,gBAAgB,CAAC,SAASC,EAAG5zE,EAAEnN,GAAG,IAAIqT,EAAE,MAAMrT,EAAE4gF,aAAa,GAAG5gF,EAAE4gF,aAAa7gF,EAAE,MAAMC,EAAE+9B,QAAQ/9B,EAAE+9B,QAAQ/9B,EAAE2gF,eAAettE,EAAEusE,EAAG,MAAM5/E,EAAEsB,MAAMtB,EAAEsB,MAAM+R,GAAGlG,EAAE0zE,cAAc,CAACC,eAAe/gF,EAAE6I,aAAayK,EAAE2tE,WAAW,aAAahhF,EAAEwN,MAAM,UAAUxN,EAAEwN,KAAK,MAAMxN,EAAE+9B,QAAQ,MAAM/9B,EAAEsB,MAAM,CAAC,SAASmuC,EAAGtiC,EAAEnN,GAAe,OAAZA,EAAEA,EAAE+9B,UAAiBu/C,EAAGnwE,EAAE,UAAUnN,GAAE,EAAG,CAC9d,SAASihF,EAAG9zE,EAAEnN,GAAGyvC,EAAGtiC,EAAEnN,GAAG,IAAIqT,EAAEusE,EAAG5/E,EAAEsB,OAAOvB,EAAEC,EAAEwN,KAAK,GAAG,MAAM6F,EAAK,WAAWtT,GAAM,IAAIsT,GAAG,KAAKlG,EAAE7L,OAAO6L,EAAE7L,OAAO+R,KAAElG,EAAE7L,MAAM,GAAG+R,GAAOlG,EAAE7L,QAAQ,GAAG+R,IAAIlG,EAAE7L,MAAM,GAAG+R,QAAQ,GAAG,WAAWtT,GAAG,UAAUA,EAA8B,YAA3BoN,EAAEuwE,gBAAgB,SAAgB19E,EAAEzB,eAAe,SAAS2iF,GAAG/zE,EAAEnN,EAAEwN,KAAK6F,GAAGrT,EAAEzB,eAAe,iBAAiB2iF,GAAG/zE,EAAEnN,EAAEwN,KAAKoyE,EAAG5/E,EAAE4gF,eAAe,MAAM5gF,EAAE+9B,SAAS,MAAM/9B,EAAE2gF,iBAAiBxzE,EAAEwzE,iBAAiB3gF,EAAE2gF,eAAe,CACla,SAASQ,EAAGh0E,EAAEnN,EAAEqT,GAAG,GAAGrT,EAAEzB,eAAe,UAAUyB,EAAEzB,eAAe,gBAAgB,CAAC,IAAIwB,EAAEC,EAAEwN,KAAK,KAAK,WAAWzN,GAAG,UAAUA,QAAG,IAASC,EAAEsB,OAAO,OAAOtB,EAAEsB,OAAO,OAAOtB,EAAE,GAAGmN,EAAE0zE,cAAcj4E,aAAayK,GAAGrT,IAAImN,EAAE7L,QAAQ6L,EAAE7L,MAAMtB,GAAGmN,EAAEyzE,aAAa5gF,CAAC,CAAU,MAATqT,EAAElG,EAAEoM,QAAcpM,EAAEoM,KAAK,IAAIpM,EAAEwzE,iBAAiBxzE,EAAE0zE,cAAcC,eAAe,KAAKztE,IAAIlG,EAAEoM,KAAKlG,EAAE,CACzV,SAAS6tE,GAAG/zE,EAAEnN,EAAEqT,GAAM,WAAWrT,GAAGwgF,EAAGrzE,EAAEouB,iBAAiBpuB,IAAE,MAAMkG,EAAElG,EAAEyzE,aAAa,GAAGzzE,EAAE0zE,cAAcj4E,aAAauE,EAAEyzE,eAAe,GAAGvtE,IAAIlG,EAAEyzE,aAAa,GAAGvtE,GAAE,CAAC,IAAI+tE,GAAGpiF,MAAMC,QAC7K,SAASoiF,GAAGl0E,EAAEnN,EAAEqT,EAAEtT,GAAe,GAAZoN,EAAEA,EAAEe,QAAWlO,EAAE,CAACA,EAAE,CAAC,EAAE,IAAI,IAAI6B,EAAE,EAAEA,EAAEwR,EAAEzU,OAAOiD,IAAI7B,EAAE,IAAIqT,EAAExR,KAAI,EAAG,IAAIwR,EAAE,EAAEA,EAAElG,EAAEvO,OAAOyU,IAAIxR,EAAE7B,EAAEzB,eAAe,IAAI4O,EAAEkG,GAAG/R,OAAO6L,EAAEkG,GAAGiuE,WAAWz/E,IAAIsL,EAAEkG,GAAGiuE,SAASz/E,GAAGA,GAAG9B,IAAIoN,EAAEkG,GAAGkuE,iBAAgB,EAAG,KAAK,CAAmB,IAAlBluE,EAAE,GAAGusE,EAAGvsE,GAAGrT,EAAE,KAAS6B,EAAE,EAAEA,EAAEsL,EAAEvO,OAAOiD,IAAI,CAAC,GAAGsL,EAAEtL,GAAGP,QAAQ+R,EAAiD,OAA9ClG,EAAEtL,GAAGy/E,UAAS,OAAGvhF,IAAIoN,EAAEtL,GAAG0/E,iBAAgB,IAAW,OAAOvhF,GAAGmN,EAAEtL,GAAG2/E,WAAWxhF,EAAEmN,EAAEtL,GAAG,CAAC,OAAO7B,IAAIA,EAAEshF,UAAS,EAAG,CAAC,CACxY,SAASG,GAAGt0E,EAAEnN,GAAG,GAAG,MAAMA,EAAE0hF,wBAAwB,MAAMz8E,MAAM9E,EAAE,KAAK,OAAO2R,EAAE,CAAC,EAAE9R,EAAE,CAACsB,WAAM,EAAOs/E,kBAAa,EAAOe,SAAS,GAAGx0E,EAAE0zE,cAAcj4E,cAAc,CAAC,SAASg5E,GAAGz0E,EAAEnN,GAAG,IAAIqT,EAAErT,EAAEsB,MAAM,GAAG,MAAM+R,EAAE,CAA+B,GAA9BA,EAAErT,EAAE2hF,SAAS3hF,EAAEA,EAAE4gF,aAAgB,MAAMvtE,EAAE,CAAC,GAAG,MAAMrT,EAAE,MAAMiF,MAAM9E,EAAE,KAAK,GAAGihF,GAAG/tE,GAAG,CAAC,GAAG,EAAEA,EAAEzU,OAAO,MAAMqG,MAAM9E,EAAE,KAAKkT,EAAEA,EAAE,EAAE,CAACrT,EAAEqT,CAAC,CAAC,MAAMrT,IAAIA,EAAE,IAAIqT,EAAErT,CAAC,CAACmN,EAAE0zE,cAAc,CAACj4E,aAAag3E,EAAGvsE,GAAG,CACnY,SAASwuE,GAAG10E,EAAEnN,GAAG,IAAIqT,EAAEusE,EAAG5/E,EAAEsB,OAAOvB,EAAE6/E,EAAG5/E,EAAE4gF,cAAc,MAAMvtE,KAAIA,EAAE,GAAGA,KAAMlG,EAAE7L,QAAQ6L,EAAE7L,MAAM+R,GAAG,MAAMrT,EAAE4gF,cAAczzE,EAAEyzE,eAAevtE,IAAIlG,EAAEyzE,aAAavtE,IAAI,MAAMtT,IAAIoN,EAAEyzE,aAAa,GAAG7gF,EAAE,CAAC,SAAS+hF,GAAG30E,GAAG,IAAInN,EAAEmN,EAAEo6B,YAAYvnC,IAAImN,EAAE0zE,cAAcj4E,cAAc,KAAK5I,GAAG,OAAOA,IAAImN,EAAE7L,MAAMtB,EAAE,CAAC,SAAS+hF,GAAG50E,GAAG,OAAOA,GAAG,IAAK,MAAM,MAAM,6BAA6B,IAAK,OAAO,MAAM,qCAAqC,QAAQ,MAAM,+BAA+B,CAC7c,SAAS60E,GAAG70E,EAAEnN,GAAG,OAAO,MAAMmN,GAAG,iCAAiCA,EAAE40E,GAAG/hF,GAAG,+BAA+BmN,GAAG,kBAAkBnN,EAAE,+BAA+BmN,CAAC,CAChK,IAAI80E,GAAe90E,GAAZ+0E,IAAY/0E,GAAsJ,SAASA,EAAEnN,GAAG,GAAG,+BAA+BmN,EAAEg1E,cAAc,cAAch1E,EAAEA,EAAE4pB,UAAU/2B,MAAM,CAA2F,KAA1FiiF,GAAGA,IAAIl9E,SAASwxB,cAAc,QAAUQ,UAAU,QAAQ/2B,EAAE8sD,UAAU1tD,WAAW,SAAaY,EAAEiiF,GAAGhrD,WAAW9pB,EAAE8pB,YAAY9pB,EAAEypB,YAAYzpB,EAAE8pB,YAAY,KAAKj3B,EAAEi3B,YAAY9pB,EAAEqpB,YAAYx2B,EAAEi3B,WAAW,CAAC,EAAvb,qBAAqBmrD,OAAOA,MAAMC,wBAAwB,SAASriF,EAAEqT,EAAEtT,EAAE8B,GAAGugF,MAAMC,yBAAwB,WAAW,OAAOl1E,GAAEnN,EAAEqT,EAAM,GAAE,EAAElG,IACtK,SAASm1E,GAAGn1E,EAAEnN,GAAG,GAAGA,EAAE,CAAC,IAAIqT,EAAElG,EAAE8pB,WAAW,GAAG5jB,GAAGA,IAAIlG,EAAEo1E,WAAW,IAAIlvE,EAAE4tB,SAAwB,YAAd5tB,EAAEmvE,UAAUxiF,EAAS,CAACmN,EAAEo6B,YAAYvnC,CAAC,CACtH,IAAIyiF,GAAG,CAACC,yBAAwB,EAAGC,aAAY,EAAGC,mBAAkB,EAAGC,kBAAiB,EAAGC,kBAAiB,EAAGC,SAAQ,EAAGC,cAAa,EAAGC,iBAAgB,EAAGC,aAAY,EAAGC,SAAQ,EAAGC,MAAK,EAAGC,UAAS,EAAGC,cAAa,EAAGC,YAAW,EAAGC,cAAa,EAAGC,WAAU,EAAGC,UAAS,EAAGC,SAAQ,EAAGC,YAAW,EAAGC,aAAY,EAAGC,cAAa,EAAGC,YAAW,EAAGC,eAAc,EAAGC,gBAAe,EAAGC,iBAAgB,EAAG7yD,YAAW,EAAG8yD,WAAU,EAAGl2D,YAAW,EAAG6C,SAAQ,EAAGF,OAAM,EAAGwzD,SAAQ,EAAGC,SAAQ,EAAGC,QAAO,EAAG5zD,QAAO,EAClf6zD,MAAK,EAAGC,aAAY,EAAGC,cAAa,EAAGC,aAAY,EAAGC,iBAAgB,EAAGC,kBAAiB,EAAGC,kBAAiB,EAAGC,eAAc,EAAGC,aAAY,GAAIC,GAAG,CAAC,SAAS,KAAK,MAAM,KAA6H,SAASC,GAAG93E,EAAEnN,EAAEqT,GAAG,OAAO,MAAMrT,GAAG,mBAAmBA,GAAG,KAAKA,EAAE,GAAGqT,GAAG,kBAAkBrT,GAAG,IAAIA,GAAGyiF,GAAGlkF,eAAe4O,IAAIs1E,GAAGt1E,IAAI,GAAGnN,GAAG26B,OAAO36B,EAAE,IAAI,CACzb,SAASklF,GAAG/3E,EAAEnN,GAAa,IAAI,IAAIqT,KAAlBlG,EAAEA,EAAE2f,MAAmB9sB,EAAE,GAAGA,EAAEzB,eAAe8U,GAAG,CAAC,IAAItT,EAAE,IAAIsT,EAAErG,QAAQ,MAAMnL,EAAEojF,GAAG5xE,EAAErT,EAAEqT,GAAGtT,GAAG,UAAUsT,IAAIA,EAAE,YAAYtT,EAAEoN,EAAEy+B,YAAYv4B,EAAExR,GAAGsL,EAAEkG,GAAGxR,CAAC,CAAC,CADYxC,OAAO0uC,KAAK00C,IAAI51E,SAAQ,SAASM,GAAG63E,GAAGn4E,SAAQ,SAAS7M,GAAGA,EAAEA,EAAEmN,EAAEo0D,OAAO,GAAGxlD,cAAc5O,EAAEyO,UAAU,GAAG6mE,GAAGziF,GAAGyiF,GAAGt1E,EAAE,GAAE,IAChI,IAAIg4E,GAAGrzE,EAAE,CAACszE,UAAS,GAAI,CAACC,MAAK,EAAG7W,MAAK,EAAG8W,IAAG,EAAGC,KAAI,EAAGC,OAAM,EAAGC,IAAG,EAAGxtD,KAAI,EAAG6F,OAAM,EAAG4nD,QAAO,EAAGp5C,MAAK,EAAGq5C,MAAK,EAAGC,OAAM,EAAGzgC,QAAO,EAAG0gC,OAAM,EAAGC,KAAI,IAClT,SAASC,GAAG54E,EAAEnN,GAAG,GAAGA,EAAE,CAAC,GAAGmlF,GAAGh4E,KAAK,MAAMnN,EAAE2hF,UAAU,MAAM3hF,EAAE0hF,yBAAyB,MAAMz8E,MAAM9E,EAAE,IAAIgN,IAAI,GAAG,MAAMnN,EAAE0hF,wBAAwB,CAAC,GAAG,MAAM1hF,EAAE2hF,SAAS,MAAM18E,MAAM9E,EAAE,KAAK,GAAG,kBAAkBH,EAAE0hF,2BAA2B,WAAW1hF,EAAE0hF,yBAAyB,MAAMz8E,MAAM9E,EAAE,IAAK,CAAC,GAAG,MAAMH,EAAE8sB,OAAO,kBAAkB9sB,EAAE8sB,MAAM,MAAM7nB,MAAM9E,EAAE,IAAK,CAAC,CAClW,SAAS6lF,GAAG74E,EAAEnN,GAAG,IAAI,IAAImN,EAAEH,QAAQ,KAAK,MAAM,kBAAkBhN,EAAEimF,GAAG,OAAO94E,GAAG,IAAK,iBAAiB,IAAK,gBAAgB,IAAK,YAAY,IAAK,gBAAgB,IAAK,gBAAgB,IAAK,mBAAmB,IAAK,iBAAiB,IAAK,gBAAgB,OAAM,EAAG,QAAQ,OAAM,EAAG,CAAC,IAAI+4E,GAAG,KAAK,SAASC,GAAGh5E,GAA6F,OAA1FA,EAAEA,EAAEs+B,QAAQt+B,EAAEi5E,YAAY5xD,QAAS6xD,0BAA0Bl5E,EAAEA,EAAEk5E,yBAAgC,IAAIl5E,EAAE8zB,SAAS9zB,EAAEuuB,WAAWvuB,CAAC,CAAC,IAAIm5E,GAAG,KAAKC,GAAG,KAAKC,GAAG,KACpc,SAASC,GAAGt5E,GAAG,GAAGA,EAAEu5E,GAAGv5E,GAAG,CAAC,GAAG,oBAAoBm5E,GAAG,MAAMrhF,MAAM9E,EAAE,MAAM,IAAIH,EAAEmN,EAAEw5E,UAAU3mF,IAAIA,EAAE4mF,GAAG5mF,GAAGsmF,GAAGn5E,EAAEw5E,UAAUx5E,EAAEK,KAAKxN,GAAG,CAAC,CAAC,SAAS6mF,GAAG15E,GAAGo5E,GAAGC,GAAGA,GAAGznF,KAAKoO,GAAGq5E,GAAG,CAACr5E,GAAGo5E,GAAGp5E,CAAC,CAAC,SAAS25E,KAAK,GAAGP,GAAG,CAAC,IAAIp5E,EAAEo5E,GAAGvmF,EAAEwmF,GAAoB,GAAjBA,GAAGD,GAAG,KAAKE,GAAGt5E,GAAMnN,EAAE,IAAImN,EAAE,EAAEA,EAAEnN,EAAEpB,OAAOuO,IAAIs5E,GAAGzmF,EAAEmN,GAAG,CAAC,CAAC,SAAS45E,GAAG55E,EAAEnN,GAAG,OAAOmN,EAAEnN,EAAE,CAAC,SAASgnF,KAAK,CAAC,IAAIC,IAAG,EAAG,SAASC,GAAG/5E,EAAEnN,EAAEqT,GAAG,GAAG4zE,GAAG,OAAO95E,EAAEnN,EAAEqT,GAAG4zE,IAAG,EAAG,IAAI,OAAOF,GAAG55E,EAAEnN,EAAEqT,EAAkD,CAA/C,QAAW4zE,IAAG,GAAG,OAAOV,IAAI,OAAOC,MAAGQ,KAAKF,KAAI,CAAC,CAChb,SAASK,GAAGh6E,EAAEnN,GAAG,IAAIqT,EAAElG,EAAEw5E,UAAU,GAAG,OAAOtzE,EAAE,OAAO,KAAK,IAAItT,EAAE6mF,GAAGvzE,GAAG,GAAG,OAAOtT,EAAE,OAAO,KAAKsT,EAAEtT,EAAEC,GAAGmN,EAAE,OAAOnN,GAAG,IAAK,UAAU,IAAK,iBAAiB,IAAK,gBAAgB,IAAK,uBAAuB,IAAK,cAAc,IAAK,qBAAqB,IAAK,cAAc,IAAK,qBAAqB,IAAK,YAAY,IAAK,mBAAmB,IAAK,gBAAgBD,GAAGA,EAAEyhF,YAAqBzhF,IAAI,YAAboN,EAAEA,EAAEK,OAAuB,UAAUL,GAAG,WAAWA,GAAG,aAAaA,IAAIA,GAAGpN,EAAE,MAAMoN,EAAE,QAAQA,GAAE,EAAG,GAAGA,EAAE,OAAO,KAAK,GAAGkG,GAAG,oBACleA,EAAE,MAAMpO,MAAM9E,EAAE,IAAIH,SAASqT,IAAI,OAAOA,CAAC,CAAC,IAAI+zE,IAAG,EAAG,GAAG5K,EAAG,IAAI,IAAI6K,GAAG,CAAC,EAAEhoF,OAAOw6B,eAAewtD,GAAG,UAAU,CAACt6E,IAAI,WAAWq6E,IAAG,CAAE,IAAI5yD,OAAO6Z,iBAAiB,OAAOg5C,GAAGA,IAAI7yD,OAAO8yD,oBAAoB,OAAOD,GAAGA,GAAkB,CAAd,MAAMl6E,IAAGi6E,IAAG,CAAE,CAAC,SAASG,GAAGp6E,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,EAAEE,EAAE2B,EAAEqoD,GAAG,IAAI/oD,EAAEvE,MAAMM,UAAUkE,MAAM/D,KAAKd,UAAU,GAAG,IAAIqB,EAAEb,MAAMkU,EAAE9P,EAA2B,CAAxB,MAAMg5B,GAAG/7B,KAAKgnF,QAAQjrD,EAAE,CAAC,CAAC,IAAIkrD,IAAG,EAAGC,GAAG,KAAKC,IAAG,EAAGC,GAAG,KAAKC,GAAG,CAACL,QAAQ,SAASr6E,GAAGs6E,IAAG,EAAGC,GAAGv6E,CAAC,GAAG,SAAS26E,GAAG36E,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,EAAEE,EAAE2B,EAAEqoD,GAAGm7B,IAAG,EAAGC,GAAG,KAAKH,GAAGpoF,MAAM0oF,GAAGlpF,UAAU,CACjW,SAASopF,GAAG56E,GAAG,IAAInN,EAAEmN,EAAEkG,EAAElG,EAAE,GAAGA,EAAE66E,UAAU,KAAKhoF,EAAEioF,QAAQjoF,EAAEA,EAAEioF,WAAW,CAAC96E,EAAEnN,EAAE,GAAO,KAAa,MAAjBA,EAAEmN,GAAS4I,SAAc1C,EAAErT,EAAEioF,QAAQ96E,EAAEnN,EAAEioF,aAAa96E,EAAE,CAAC,OAAO,IAAInN,EAAEs/E,IAAIjsE,EAAE,IAAI,CAAC,SAAS60E,GAAG/6E,GAAG,GAAG,KAAKA,EAAEmyE,IAAI,CAAC,IAAIt/E,EAAEmN,EAAEg7E,cAAsE,GAAxD,OAAOnoF,IAAkB,QAAdmN,EAAEA,EAAE66E,aAAqBhoF,EAAEmN,EAAEg7E,gBAAmB,OAAOnoF,EAAE,OAAOA,EAAEooF,UAAU,CAAC,OAAO,IAAI,CAAC,SAASC,GAAGl7E,GAAG,GAAG46E,GAAG56E,KAAKA,EAAE,MAAMlI,MAAM9E,EAAE,KAAM,CAE1S,SAASmoF,GAAGn7E,GAAW,OAAO,QAAfA,EADtN,SAAYA,GAAG,IAAInN,EAAEmN,EAAE66E,UAAU,IAAIhoF,EAAE,CAAS,GAAG,QAAXA,EAAE+nF,GAAG56E,IAAe,MAAMlI,MAAM9E,EAAE,MAAM,OAAOH,IAAImN,EAAE,KAAKA,CAAC,CAAC,IAAI,IAAIkG,EAAElG,EAAEpN,EAAEC,IAAI,CAAC,IAAI6B,EAAEwR,EAAE40E,OAAO,GAAG,OAAOpmF,EAAE,MAAM,IAAIO,EAAEP,EAAEmmF,UAAU,GAAG,OAAO5lF,EAAE,CAAY,GAAG,QAAdrC,EAAE8B,EAAEomF,QAAmB,CAAC50E,EAAEtT,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG8B,EAAEwmC,QAAQjmC,EAAEimC,MAAM,CAAC,IAAIjmC,EAAEP,EAAEwmC,MAAMjmC,GAAG,CAAC,GAAGA,IAAIiR,EAAE,OAAOg1E,GAAGxmF,GAAGsL,EAAE,GAAG/K,IAAIrC,EAAE,OAAOsoF,GAAGxmF,GAAG7B,EAAEoC,EAAEA,EAAEmmF,OAAO,CAAC,MAAMtjF,MAAM9E,EAAE,KAAM,CAAC,GAAGkT,EAAE40E,SAASloF,EAAEkoF,OAAO50E,EAAExR,EAAE9B,EAAEqC,MAAM,CAAC,IAAI,IAAIE,GAAE,EAAG2B,EAAEpC,EAAEwmC,MAAMpkC,GAAG,CAAC,GAAGA,IAAIoP,EAAE,CAAC/Q,GAAE,EAAG+Q,EAAExR,EAAE9B,EAAEqC,EAAE,KAAK,CAAC,GAAG6B,IAAIlE,EAAE,CAACuC,GAAE,EAAGvC,EAAE8B,EAAEwR,EAAEjR,EAAE,KAAK,CAAC6B,EAAEA,EAAEskF,OAAO,CAAC,IAAIjmF,EAAE,CAAC,IAAI2B,EAAE7B,EAAEimC,MAAMpkC,GAAG,CAAC,GAAGA,IAC5foP,EAAE,CAAC/Q,GAAE,EAAG+Q,EAAEjR,EAAErC,EAAE8B,EAAE,KAAK,CAAC,GAAGoC,IAAIlE,EAAE,CAACuC,GAAE,EAAGvC,EAAEqC,EAAEiR,EAAExR,EAAE,KAAK,CAACoC,EAAEA,EAAEskF,OAAO,CAAC,IAAIjmF,EAAE,MAAM2C,MAAM9E,EAAE,KAAM,CAAC,CAAC,GAAGkT,EAAE20E,YAAYjoF,EAAE,MAAMkF,MAAM9E,EAAE,KAAM,CAAC,GAAG,IAAIkT,EAAEisE,IAAI,MAAMr6E,MAAM9E,EAAE,MAAM,OAAOkT,EAAEszE,UAAUr5E,UAAU+F,EAAElG,EAAEnN,CAAC,CAAkBwoF,CAAGr7E,IAAmBs7E,GAAGt7E,GAAG,IAAI,CAAC,SAASs7E,GAAGt7E,GAAG,GAAG,IAAIA,EAAEmyE,KAAK,IAAInyE,EAAEmyE,IAAI,OAAOnyE,EAAE,IAAIA,EAAEA,EAAEk7B,MAAM,OAAOl7B,GAAG,CAAC,IAAInN,EAAEyoF,GAAGt7E,GAAG,GAAG,OAAOnN,EAAE,OAAOA,EAAEmN,EAAEA,EAAEo7E,OAAO,CAAC,OAAO,IAAI,CAC1X,IAAIG,GAAGxM,EAAGyM,0BAA0Bj5C,GAAGwsC,EAAG0M,wBAAwBC,GAAG3M,EAAG4M,qBAAqBC,GAAG7M,EAAG8M,sBAAsBC,GAAE/M,EAAGgN,aAAaC,GAAGjN,EAAGkN,iCAAiCC,GAAGnN,EAAGoN,2BAA2BC,GAAGrN,EAAGsN,8BAA8BC,GAAGvN,EAAGwN,wBAAwBC,GAAGzN,EAAG0N,qBAAqBC,GAAG3N,EAAG4N,sBAAsBC,GAAG,KAAKC,GAAG,KACvV,IAAIC,GAAG/kF,KAAKglF,MAAMhlF,KAAKglF,MAAiC,SAAY/8E,GAAU,OAAPA,KAAK,EAAS,IAAIA,EAAE,GAAG,IAAIg9E,GAAGh9E,GAAGi9E,GAAG,GAAG,CAAC,EAA/ED,GAAGjlF,KAAKmlF,IAAID,GAAGllF,KAAKolF,IAA4D,IAAIC,GAAG,GAAGC,GAAG,QAC7H,SAASC,GAAGt9E,GAAG,OAAOA,GAAGA,GAAG,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO,KAAK,QAAQ,KAAK,QAAQ,OAAS,QAAFA,EAAU,KAAK,QAAQ,KAAK,QAAQ,KAAK,SAAS,KAAK,SAAS,KAAK,SAAS,OAAS,UAAFA,EAAY,KAAK,UAAU,OAAO,UAAU,KAAK,UAAU,OAAO,UAAU,KAAK,UAAU,OAAO,UAAU,KAAK,WAAW,OAAO,WACzgB,QAAQ,OAAOA,EAAE,CAAC,SAASu9E,GAAGv9E,EAAEnN,GAAG,IAAIqT,EAAElG,EAAEw9E,aAAa,GAAG,IAAIt3E,EAAE,OAAO,EAAE,IAAItT,EAAE,EAAE8B,EAAEsL,EAAEy9E,eAAexoF,EAAE+K,EAAE09E,YAAYvoF,EAAI,UAAF+Q,EAAY,GAAG,IAAI/Q,EAAE,CAAC,IAAI2B,EAAE3B,GAAGT,EAAE,IAAIoC,EAAElE,EAAE0qF,GAAGxmF,GAAS,KAAL7B,GAAGE,KAAUvC,EAAE0qF,GAAGroF,GAAI,MAAa,KAAPE,EAAE+Q,GAAGxR,GAAQ9B,EAAE0qF,GAAGnoF,GAAG,IAAIF,IAAIrC,EAAE0qF,GAAGroF,IAAI,GAAG,IAAIrC,EAAE,OAAO,EAAE,GAAG,IAAIC,GAAGA,IAAID,GAAG,KAAKC,EAAE6B,MAAKA,EAAE9B,GAAGA,KAAEqC,EAAEpC,GAAGA,IAAQ,KAAK6B,GAAG,KAAO,QAAFO,IAAY,OAAOpC,EAA0C,GAAxC,KAAO,EAAFD,KAAOA,GAAK,GAAFsT,GAA4B,KAAtBrT,EAAEmN,EAAE29E,gBAAwB,IAAI39E,EAAEA,EAAE49E,cAAc/qF,GAAGD,EAAE,EAAEC,GAAc6B,EAAE,IAAbwR,EAAE,GAAG42E,GAAGjqF,IAAUD,GAAGoN,EAAEkG,GAAGrT,IAAI6B,EAAE,OAAO9B,CAAC,CACvc,SAASirF,GAAG79E,EAAEnN,GAAG,OAAOmN,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAOnN,EAAE,IAAI,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO,KAAK,QAAQ,KAAK,QAAQ,OAAOA,EAAE,IAAuJ,QAAQ,OAAO,EAAE,CACrN,SAASirF,GAAG99E,GAAgC,OAAO,KAApCA,GAAkB,WAAhBA,EAAEw9E,cAAsCx9E,EAAI,WAAFA,EAAa,WAAW,CAAC,CAAC,SAAS+9E,KAAK,IAAI/9E,EAAEo9E,GAAoC,OAA1B,KAAQ,SAAfA,KAAK,MAAqBA,GAAG,IAAWp9E,CAAC,CAAC,SAASg+E,GAAGh+E,GAAG,IAAI,IAAInN,EAAE,GAAGqT,EAAE,EAAE,GAAGA,EAAEA,IAAIrT,EAAEjB,KAAKoO,GAAG,OAAOnN,CAAC,CAC3a,SAASorF,GAAGj+E,EAAEnN,EAAEqT,GAAGlG,EAAEw9E,cAAc3qF,EAAE,YAAYA,IAAImN,EAAEy9E,eAAe,EAAEz9E,EAAE09E,YAAY,IAAG19E,EAAEA,EAAEk+E,YAAWrrF,EAAE,GAAGiqF,GAAGjqF,IAAQqT,CAAC,CACzH,SAASi4E,GAAGn+E,EAAEnN,GAAG,IAAIqT,EAAElG,EAAE29E,gBAAgB9qF,EAAE,IAAImN,EAAEA,EAAE49E,cAAc13E,GAAG,CAAC,IAAItT,EAAE,GAAGkqF,GAAG52E,GAAGxR,EAAE,GAAG9B,EAAE8B,EAAE7B,EAAEmN,EAAEpN,GAAGC,IAAImN,EAAEpN,IAAIC,GAAGqT,IAAIxR,CAAC,CAAC,CAAC,IAAI0pF,GAAE,EAAE,SAASC,GAAGr+E,GAAS,OAAO,GAAbA,IAAIA,GAAa,EAAEA,EAAE,KAAO,UAAFA,GAAa,GAAG,UAAU,EAAE,CAAC,CAAC,IAAIs+E,GAAGC,GAAGC,GAAGC,GAAGC,GAAGC,IAAG,EAAGC,GAAG,GAAGC,GAAG,KAAKC,GAAG,KAAKC,GAAG,KAAKC,GAAG,IAAIC,IAAIC,GAAG,IAAID,IAAIE,GAAG,GAAGC,GAAG,6PAA6PjoC,MAAM,KAChiB,SAASkoC,GAAGr/E,EAAEnN,GAAG,OAAOmN,GAAG,IAAK,UAAU,IAAK,WAAW6+E,GAAG,KAAK,MAAM,IAAK,YAAY,IAAK,YAAYC,GAAG,KAAK,MAAM,IAAK,YAAY,IAAK,WAAWC,GAAG,KAAK,MAAM,IAAK,cAAc,IAAK,aAAaC,GAAGM,OAAOzsF,EAAE0sF,WAAW,MAAM,IAAK,oBAAoB,IAAK,qBAAqBL,GAAGI,OAAOzsF,EAAE0sF,WAAW,CACnT,SAASC,GAAGx/E,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,GAAG,OAAG,OAAO+K,GAAGA,EAAEy/E,cAAcxqF,GAAS+K,EAAE,CAAC0/E,UAAU7sF,EAAE8sF,aAAaz5E,EAAE05E,iBAAiBhtF,EAAE6sF,YAAYxqF,EAAE4qF,iBAAiB,CAACnrF,IAAI,OAAO7B,IAAY,QAARA,EAAE0mF,GAAG1mF,KAAa0rF,GAAG1rF,IAAImN,IAAEA,EAAE4/E,kBAAkBhtF,EAAEC,EAAEmN,EAAE6/E,iBAAiB,OAAOnrF,IAAI,IAAI7B,EAAEgN,QAAQnL,IAAI7B,EAAEjB,KAAK8C,GAAUsL,EAAC,CAEpR,SAAS8/E,GAAG9/E,GAAG,IAAInN,EAAEktF,GAAG//E,EAAEs+B,QAAQ,GAAG,OAAOzrC,EAAE,CAAC,IAAIqT,EAAE00E,GAAG/nF,GAAG,GAAG,OAAOqT,EAAE,GAAW,MAARrT,EAAEqT,EAAEisE,MAAY,GAAW,QAARt/E,EAAEkoF,GAAG70E,IAA4D,OAA/ClG,EAAE0/E,UAAU7sF,OAAE6rF,GAAG1+E,EAAEqoD,UAAS,WAAWm2B,GAAGt4E,EAAE,SAAgB,GAAG,IAAIrT,GAAGqT,EAAEszE,UAAUr5E,QAAQ66E,cAAcgF,aAAmE,YAArDhgF,EAAE0/E,UAAU,IAAIx5E,EAAEisE,IAAIjsE,EAAEszE,UAAUyG,cAAc,KAAY,CAACjgF,EAAE0/E,UAAU,IAAI,CAClT,SAASQ,GAAGlgF,GAAG,GAAG,OAAOA,EAAE0/E,UAAU,OAAM,EAAG,IAAI,IAAI7sF,EAAEmN,EAAE6/E,iBAAiB,EAAEhtF,EAAEpB,QAAQ,CAAC,IAAIyU,EAAEi6E,GAAGngF,EAAE2/E,aAAa3/E,EAAE4/E,iBAAiB/sF,EAAE,GAAGmN,EAAEy/E,aAAa,GAAG,OAAOv5E,EAAiG,OAAe,QAARrT,EAAE0mF,GAAGrzE,KAAaq4E,GAAG1rF,GAAGmN,EAAE0/E,UAAUx5E,GAAE,EAA3H,IAAItT,EAAE,IAAtBsT,EAAElG,EAAEy/E,aAAwBnsF,YAAY4S,EAAE7F,KAAK6F,GAAG6yE,GAAGnmF,EAAEsT,EAAEo4B,OAAO8hD,cAAcxtF,GAAGmmF,GAAG,KAA0DlmF,EAAE8W,OAAO,CAAC,OAAM,CAAE,CAAC,SAAS02E,GAAGrgF,EAAEnN,EAAEqT,GAAGg6E,GAAGlgF,IAAIkG,EAAEo5E,OAAOzsF,EAAE,CAAC,SAASytF,KAAK3B,IAAG,EAAG,OAAOE,IAAIqB,GAAGrB,MAAMA,GAAG,MAAM,OAAOC,IAAIoB,GAAGpB,MAAMA,GAAG,MAAM,OAAOC,IAAImB,GAAGnB,MAAMA,GAAG,MAAMC,GAAGt/E,QAAQ2gF,IAAInB,GAAGx/E,QAAQ2gF,GAAG,CACnf,SAASE,GAAGvgF,EAAEnN,GAAGmN,EAAE0/E,YAAY7sF,IAAImN,EAAE0/E,UAAU,KAAKf,KAAKA,IAAG,EAAG5P,EAAGyM,0BAA0BzM,EAAGwN,wBAAwB+D,KAAK,CAC5H,SAASE,GAAGxgF,GAAG,SAASnN,EAAEA,GAAG,OAAO0tF,GAAG1tF,EAAEmN,EAAE,CAAC,GAAG,EAAE4+E,GAAGntF,OAAO,CAAC8uF,GAAG3B,GAAG,GAAG5+E,GAAG,IAAI,IAAIkG,EAAE,EAAEA,EAAE04E,GAAGntF,OAAOyU,IAAI,CAAC,IAAItT,EAAEgsF,GAAG14E,GAAGtT,EAAE8sF,YAAY1/E,IAAIpN,EAAE8sF,UAAU,KAAK,CAAC,CAAyF,IAAxF,OAAOb,IAAI0B,GAAG1B,GAAG7+E,GAAG,OAAO8+E,IAAIyB,GAAGzB,GAAG9+E,GAAG,OAAO++E,IAAIwB,GAAGxB,GAAG/+E,GAAGg/E,GAAGt/E,QAAQ7M,GAAGqsF,GAAGx/E,QAAQ7M,GAAOqT,EAAE,EAAEA,EAAEi5E,GAAG1tF,OAAOyU,KAAItT,EAAEusF,GAAGj5E,IAAKw5E,YAAY1/E,IAAIpN,EAAE8sF,UAAU,MAAM,KAAK,EAAEP,GAAG1tF,QAAiB,QAARyU,EAAEi5E,GAAG,IAAYO,WAAYI,GAAG55E,GAAG,OAAOA,EAAEw5E,WAAWP,GAAGx1E,OAAO,CAAC,IAAI64B,GAAGiuC,EAAGgQ,wBAAwBz5B,IAAG,EAC5a,SAAS05B,GAAG1gF,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAE0pF,GAAEnpF,EAAEutC,GAAGm+C,WAAWn+C,GAAGm+C,WAAW,KAAK,IAAIvC,GAAE,EAAEwC,GAAG5gF,EAAEnN,EAAEqT,EAAEtT,EAA8B,CAA3B,QAAQwrF,GAAE1pF,EAAE8tC,GAAGm+C,WAAW1rF,CAAC,CAAC,CAAC,SAAS4rF,GAAG7gF,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAE0pF,GAAEnpF,EAAEutC,GAAGm+C,WAAWn+C,GAAGm+C,WAAW,KAAK,IAAIvC,GAAE,EAAEwC,GAAG5gF,EAAEnN,EAAEqT,EAAEtT,EAA8B,CAA3B,QAAQwrF,GAAE1pF,EAAE8tC,GAAGm+C,WAAW1rF,CAAC,CAAC,CACjO,SAAS2rF,GAAG5gF,EAAEnN,EAAEqT,EAAEtT,GAAG,GAAGo0D,GAAG,CAAC,IAAItyD,EAAEyrF,GAAGngF,EAAEnN,EAAEqT,EAAEtT,GAAG,GAAG,OAAO8B,EAAEosF,GAAG9gF,EAAEnN,EAAED,EAAEqhD,GAAG/tC,GAAGm5E,GAAGr/E,EAAEpN,QAAQ,GANtF,SAAYoN,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,OAAO7B,GAAG,IAAK,UAAU,OAAOgsF,GAAGW,GAAGX,GAAG7+E,EAAEnN,EAAEqT,EAAEtT,EAAE8B,IAAG,EAAG,IAAK,YAAY,OAAOoqF,GAAGU,GAAGV,GAAG9+E,EAAEnN,EAAEqT,EAAEtT,EAAE8B,IAAG,EAAG,IAAK,YAAY,OAAOqqF,GAAGS,GAAGT,GAAG/+E,EAAEnN,EAAEqT,EAAEtT,EAAE8B,IAAG,EAAG,IAAK,cAAc,IAAIO,EAAEP,EAAE6qF,UAAkD,OAAxCP,GAAG97B,IAAIjuD,EAAEuqF,GAAGR,GAAGp/E,IAAI3K,IAAI,KAAK+K,EAAEnN,EAAEqT,EAAEtT,EAAE8B,KAAU,EAAG,IAAK,oBAAoB,OAAOO,EAAEP,EAAE6qF,UAAUL,GAAGh8B,IAAIjuD,EAAEuqF,GAAGN,GAAGt/E,IAAI3K,IAAI,KAAK+K,EAAEnN,EAAEqT,EAAEtT,EAAE8B,KAAI,EAAG,OAAM,CAAE,CAM1QqsF,CAAGrsF,EAAEsL,EAAEnN,EAAEqT,EAAEtT,GAAGA,EAAEouF,uBAAuB,GAAG3B,GAAGr/E,EAAEpN,GAAK,EAAFC,IAAM,EAAEusF,GAAGv/E,QAAQG,GAAG,CAAC,KAAK,OAAOtL,GAAG,CAAC,IAAIO,EAAEskF,GAAG7kF,GAA0D,GAAvD,OAAOO,GAAGqpF,GAAGrpF,GAAiB,QAAdA,EAAEkrF,GAAGngF,EAAEnN,EAAEqT,EAAEtT,KAAakuF,GAAG9gF,EAAEnN,EAAED,EAAEqhD,GAAG/tC,GAAMjR,IAAIP,EAAE,MAAMA,EAAEO,CAAC,CAAC,OAAOP,GAAG9B,EAAEouF,iBAAiB,MAAMF,GAAG9gF,EAAEnN,EAAED,EAAE,KAAKsT,EAAE,CAAC,CAAC,IAAI+tC,GAAG,KACpU,SAASksC,GAAGngF,EAAEnN,EAAEqT,EAAEtT,GAA2B,GAAxBqhD,GAAG,KAAwB,QAAXj0C,EAAE+/E,GAAV//E,EAAEg5E,GAAGpmF,KAAuB,GAAW,QAARC,EAAE+nF,GAAG56E,IAAYA,EAAE,UAAU,GAAW,MAARkG,EAAErT,EAAEs/E,KAAW,CAAS,GAAG,QAAXnyE,EAAE+6E,GAAGloF,IAAe,OAAOmN,EAAEA,EAAE,IAAI,MAAM,GAAG,IAAIkG,EAAE,CAAC,GAAGrT,EAAE2mF,UAAUr5E,QAAQ66E,cAAcgF,aAAa,OAAO,IAAIntF,EAAEs/E,IAAIt/E,EAAE2mF,UAAUyG,cAAc,KAAKjgF,EAAE,IAAI,MAAMnN,IAAImN,IAAIA,EAAE,MAAW,OAALi0C,GAAGj0C,EAAS,IAAI,CAC7S,SAASihF,GAAGjhF,GAAG,OAAOA,GAAG,IAAK,SAAS,IAAK,QAAQ,IAAK,QAAQ,IAAK,cAAc,IAAK,OAAO,IAAK,MAAM,IAAK,WAAW,IAAK,WAAW,IAAK,UAAU,IAAK,YAAY,IAAK,OAAO,IAAK,UAAU,IAAK,WAAW,IAAK,QAAQ,IAAK,UAAU,IAAK,UAAU,IAAK,WAAW,IAAK,QAAQ,IAAK,YAAY,IAAK,UAAU,IAAK,QAAQ,IAAK,QAAQ,IAAK,OAAO,IAAK,gBAAgB,IAAK,cAAc,IAAK,YAAY,IAAK,aAAa,IAAK,QAAQ,IAAK,SAAS,IAAK,SAAS,IAAK,SAAS,IAAK,cAAc,IAAK,WAAW,IAAK,aAAa,IAAK,eAAe,IAAK,SAAS,IAAK,kBAAkB,IAAK,YAAY,IAAK,mBAAmB,IAAK,iBAAiB,IAAK,oBAAoB,IAAK,aAAa,IAAK,YAAY,IAAK,cAAc,IAAK,OAAO,IAAK,mBAAmB,IAAK,QAAQ,IAAK,aAAa,IAAK,WAAW,IAAK,SAAS,IAAK,cAAc,OAAO,EAAE,IAAK,OAAO,IAAK,YAAY,IAAK,WAAW,IAAK,YAAY,IAAK,WAAW,IAAK,YAAY,IAAK,WAAW,IAAK,YAAY,IAAK,cAAc,IAAK,aAAa,IAAK,cAAc,IAAK,SAAS,IAAK,SAAS,IAAK,YAAY,IAAK,QAAQ,IAAK,aAAa,IAAK,aAAa,IAAK,eAAe,IAAK,eAAe,OAAO,EACpqC,IAAK,UAAU,OAAOg8E,MAAM,KAAKE,GAAG,OAAO,EAAE,KAAKE,GAAG,OAAO,EAAE,KAAKE,GAAG,KAAKE,GAAG,OAAO,GAAG,KAAKE,GAAG,OAAO,UAAU,QAAQ,OAAO,GAAG,QAAQ,OAAO,GAAG,CAAC,IAAIwE,GAAG,KAAKC,GAAG,KAAKC,GAAG,KAAK,SAASC,KAAK,GAAGD,GAAG,OAAOA,GAAG,IAAIphF,EAAkBpN,EAAhBC,EAAEsuF,GAAGj7E,EAAErT,EAAEpB,OAASiD,EAAE,UAAUwsF,GAAGA,GAAG/sF,MAAM+sF,GAAG9mD,YAAYnlC,EAAEP,EAAEjD,OAAO,IAAIuO,EAAE,EAAEA,EAAEkG,GAAGrT,EAAEmN,KAAKtL,EAAEsL,GAAGA,KAAK,IAAI7K,EAAE+Q,EAAElG,EAAE,IAAIpN,EAAE,EAAEA,GAAGuC,GAAGtC,EAAEqT,EAAEtT,KAAK8B,EAAEO,EAAErC,GAAGA,KAAK,OAAOwuF,GAAG1sF,EAAE2B,MAAM2J,EAAE,EAAEpN,EAAE,EAAEA,OAAE,EAAO,CACxY,SAAS0uF,GAAGthF,GAAG,IAAInN,EAAEmN,EAAEuhF,QAA+E,MAAvE,aAAavhF,EAAgB,KAAbA,EAAEA,EAAEu3C,WAAgB,KAAK1kD,IAAImN,EAAE,IAAKA,EAAEnN,EAAE,KAAKmN,IAAIA,EAAE,IAAW,IAAIA,GAAG,KAAKA,EAAEA,EAAE,CAAC,CAAC,SAASwhF,KAAK,OAAM,CAAE,CAAC,SAASC,KAAK,OAAM,CAAE,CAC5K,SAASC,GAAG1hF,GAAG,SAASnN,EAAEA,EAAED,EAAE8B,EAAEO,EAAEE,GAA6G,IAAI,IAAI+Q,KAAlH7S,KAAKsuF,WAAW9uF,EAAEQ,KAAKuuF,YAAYltF,EAAErB,KAAKgN,KAAKzN,EAAES,KAAKosF,YAAYxqF,EAAE5B,KAAKirC,OAAOnpC,EAAE9B,KAAKwuF,cAAc,KAAkB7hF,EAAEA,EAAE5O,eAAe8U,KAAKrT,EAAEmN,EAAEkG,GAAG7S,KAAK6S,GAAGrT,EAAEA,EAAEoC,GAAGA,EAAEiR,IAAgI,OAA5H7S,KAAKyuF,oBAAoB,MAAM7sF,EAAE8sF,iBAAiB9sF,EAAE8sF,kBAAiB,IAAK9sF,EAAE+sF,aAAaR,GAAGC,GAAGpuF,KAAK4uF,qBAAqBR,GAAUpuF,IAAI,CAC9E,OAD+EsR,EAAE9R,EAAEV,UAAU,CAAC+vF,eAAe,WAAW7uF,KAAK0uF,kBAAiB,EAAG,IAAI/hF,EAAE3M,KAAKosF,YAAYz/E,IAAIA,EAAEkiF,eAAeliF,EAAEkiF,iBAAiB,mBAAmBliF,EAAEgiF,cAC7ehiF,EAAEgiF,aAAY,GAAI3uF,KAAKyuF,mBAAmBN,GAAG,EAAER,gBAAgB,WAAW,IAAIhhF,EAAE3M,KAAKosF,YAAYz/E,IAAIA,EAAEghF,gBAAgBhhF,EAAEghF,kBAAkB,mBAAmBhhF,EAAEmiF,eAAeniF,EAAEmiF,cAAa,GAAI9uF,KAAK4uF,qBAAqBT,GAAG,EAAEY,QAAQ,WAAW,EAAEC,aAAab,KAAY3uF,CAAC,CACjR,IAAoLyvF,GAAGC,GAAGC,GAAtLC,GAAG,CAACC,WAAW,EAAEC,QAAQ,EAAEC,WAAW,EAAEC,UAAU,SAAS7iF,GAAG,OAAOA,EAAE6iF,WAAW1uC,KAAKC,KAAK,EAAE2tC,iBAAiB,EAAEe,UAAU,GAAGC,GAAGrB,GAAGe,IAAIO,GAAGr+E,EAAE,CAAC,EAAE89E,GAAG,CAAC9nF,KAAK,EAAEsoF,OAAO,IAAIC,GAAGxB,GAAGsB,IAAaG,GAAGx+E,EAAE,CAAC,EAAEq+E,GAAG,CAACI,QAAQ,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,EAAEC,iBAAiBC,GAAGC,OAAO,EAAEC,QAAQ,EAAEC,cAAc,SAASlkF,GAAG,YAAO,IAASA,EAAEkkF,cAAclkF,EAAEmkF,cAAcnkF,EAAEi5E,WAAWj5E,EAAEokF,UAAUpkF,EAAEmkF,YAAYnkF,EAAEkkF,aAAa,EAAEG,UAAU,SAASrkF,GAAG,MAAG,cAC3eA,EAASA,EAAEqkF,WAAUrkF,IAAIwiF,KAAKA,IAAI,cAAcxiF,EAAEK,MAAMiiF,GAAGtiF,EAAEojF,QAAQZ,GAAGY,QAAQb,GAAGviF,EAAEqjF,QAAQb,GAAGa,SAASd,GAAGD,GAAG,EAAEE,GAAGxiF,GAAUsiF,GAAE,EAAEgC,UAAU,SAAStkF,GAAG,MAAM,cAAcA,EAAEA,EAAEskF,UAAU/B,EAAE,IAAIgC,GAAG7C,GAAGyB,IAAiCqB,GAAG9C,GAA7B/8E,EAAE,CAAC,EAAEw+E,GAAG,CAACsB,aAAa,KAA4CC,GAAGhD,GAA9B/8E,EAAE,CAAC,EAAEq+E,GAAG,CAACkB,cAAc,KAA0ES,GAAGjD,GAA5D/8E,EAAE,CAAC,EAAE89E,GAAG,CAACmC,cAAc,EAAEC,YAAY,EAAEC,cAAc,KAAcC,GAAGpgF,EAAE,CAAC,EAAE89E,GAAG,CAACuC,cAAc,SAAShlF,GAAG,MAAM,kBAAkBA,EAAEA,EAAEglF,cAAc39D,OAAO29D,aAAa,IAAIC,GAAGvD,GAAGqD,IAAyBG,GAAGxD,GAArB/8E,EAAE,CAAC,EAAE89E,GAAG,CAACnnF,KAAK,KAAc6pF,GAAG,CAACC,IAAI,SACxfC,SAAS,IAAIC,KAAK,YAAYC,GAAG,UAAUC,MAAM,aAAaC,KAAK,YAAYC,IAAI,SAASC,IAAI,KAAKC,KAAK,cAAcC,KAAK,cAAcC,OAAO,aAAaC,gBAAgB,gBAAgBC,GAAG,CAAC,EAAE,YAAY,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,GAAG,UAAU,GAAG,aAAa,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KACtf,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,UAAU,IAAI,aAAa,IAAI,QAAQC,GAAG,CAACC,IAAI,SAASt+D,QAAQ,UAAUu+D,KAAK,UAAUC,MAAM,YAAY,SAASC,GAAGrmF,GAAG,IAAInN,EAAEQ,KAAKosF,YAAY,OAAO5sF,EAAEixF,iBAAiBjxF,EAAEixF,iBAAiB9jF,MAAIA,EAAEimF,GAAGjmF,OAAMnN,EAAEmN,EAAK,CAAC,SAAS+jF,KAAK,OAAOsC,EAAE,CAChS,IAAIC,GAAG3hF,EAAE,CAAC,EAAEq+E,GAAG,CAAC3wF,IAAI,SAAS2N,GAAG,GAAGA,EAAE3N,IAAI,CAAC,IAAIQ,EAAEsyF,GAAGnlF,EAAE3N,MAAM2N,EAAE3N,IAAI,GAAG,iBAAiBQ,EAAE,OAAOA,CAAC,CAAC,MAAM,aAAamN,EAAEK,KAAc,MAARL,EAAEshF,GAAGthF,IAAU,QAAQ7M,OAAO8F,aAAa+G,GAAI,YAAYA,EAAEK,MAAM,UAAUL,EAAEK,KAAK2lF,GAAGhmF,EAAEuhF,UAAU,eAAe,EAAE,EAAEgF,KAAK,EAAE5mD,SAAS,EAAE+jD,QAAQ,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,EAAEh6D,OAAO,EAAEg2B,OAAO,EAAEikC,iBAAiBC,GAAGxsC,SAAS,SAASv3C,GAAG,MAAM,aAAaA,EAAEK,KAAKihF,GAAGthF,GAAG,CAAC,EAAEuhF,QAAQ,SAASvhF,GAAG,MAAM,YAAYA,EAAEK,MAAM,UAAUL,EAAEK,KAAKL,EAAEuhF,QAAQ,CAAC,EAAEiF,MAAM,SAASxmF,GAAG,MAAM,aAC7eA,EAAEK,KAAKihF,GAAGthF,GAAG,YAAYA,EAAEK,MAAM,UAAUL,EAAEK,KAAKL,EAAEuhF,QAAQ,CAAC,IAAIkF,GAAG/E,GAAG4E,IAAiII,GAAGhF,GAA7H/8E,EAAE,CAAC,EAAEw+E,GAAG,CAAC5D,UAAU,EAAE9oF,MAAM,EAAEC,OAAO,EAAEiwF,SAAS,EAAEC,mBAAmB,EAAEC,MAAM,EAAEC,MAAM,EAAEC,MAAM,EAAEC,YAAY,EAAEC,UAAU,KAAmIC,GAAGxF,GAArH/8E,EAAE,CAAC,EAAEq+E,GAAG,CAACmE,QAAQ,EAAEC,cAAc,EAAEC,eAAe,EAAEzD,OAAO,EAAEC,QAAQ,EAAEH,QAAQ,EAAEC,SAAS,EAAEG,iBAAiBC,MAA0EuD,GAAG5F,GAA3D/8E,EAAE,CAAC,EAAE89E,GAAG,CAAC3S,aAAa,EAAE+U,YAAY,EAAEC,cAAc,KAAcyC,GAAG5iF,EAAE,CAAC,EAAEw+E,GAAG,CAACphD,OAAO,SAAS/hC,GAAG,MAAM,WAAWA,EAAEA,EAAE+hC,OAAO,gBAAgB/hC,GAAGA,EAAEwnF,YAAY,CAAC,EACnfxlD,OAAO,SAAShiC,GAAG,MAAM,WAAWA,EAAEA,EAAEgiC,OAAO,gBAAgBhiC,GAAGA,EAAEynF,YAAY,eAAeznF,GAAGA,EAAE0nF,WAAW,CAAC,EAAEC,OAAO,EAAEC,UAAU,IAAIC,GAAGnG,GAAG6F,IAAIO,GAAG,CAAC,EAAE,GAAG,GAAG,IAAIC,GAAG1Y,GAAI,qBAAqBhoD,OAAO2gE,GAAG,KAAK3Y,GAAI,iBAAiBz3E,WAAWowF,GAAGpwF,SAASqwF,cAAc,IAAIC,GAAG7Y,GAAI,cAAchoD,SAAS2gE,GAAGG,GAAG9Y,KAAM0Y,IAAIC,IAAI,EAAEA,IAAI,IAAIA,IAAII,GAAGj1F,OAAO8F,aAAa,IAAIovF,IAAG,EAC1W,SAASC,GAAGtoF,EAAEnN,GAAG,OAAOmN,GAAG,IAAK,QAAQ,OAAO,IAAI8nF,GAAGjoF,QAAQhN,EAAE0uF,SAAS,IAAK,UAAU,OAAO,MAAM1uF,EAAE0uF,QAAQ,IAAK,WAAW,IAAK,YAAY,IAAK,WAAW,OAAM,EAAG,QAAQ,OAAM,EAAG,CAAC,SAASgH,GAAGvoF,GAAc,MAAM,kBAAjBA,EAAEA,EAAEijF,SAAkC,SAASjjF,EAAEA,EAAE1E,KAAK,IAAI,CAAC,IAAIktF,IAAG,EAE9Q,IAAIC,GAAG,CAACp6E,OAAM,EAAG66C,MAAK,EAAGgb,UAAS,EAAG,kBAAiB,EAAGwkB,OAAM,EAAGz/B,OAAM,EAAGl+C,QAAO,EAAG49E,UAAS,EAAGz/D,OAAM,EAAG0/D,QAAO,EAAGC,KAAI,EAAG1+D,MAAK,EAAGzG,MAAK,EAAG3F,KAAI,EAAG6xC,MAAK,GAAI,SAASk5B,GAAG9oF,GAAG,IAAInN,EAAEmN,GAAGA,EAAE+4B,UAAU/4B,EAAE+4B,SAAS7uB,cAAc,MAAM,UAAUrX,IAAI41F,GAAGzoF,EAAEK,MAAM,aAAaxN,CAAO,CAAC,SAASk2F,GAAG/oF,EAAEnN,EAAEqT,EAAEtT,GAAG8mF,GAAG9mF,GAAsB,GAAnBC,EAAEm2F,GAAGn2F,EAAE,aAAgBpB,SAASyU,EAAE,IAAI68E,GAAG,WAAW,SAAS,KAAK78E,EAAEtT,GAAGoN,EAAEpO,KAAK,CAACq3F,MAAM/iF,EAAEgjF,UAAUr2F,IAAI,CAAC,IAAIs2F,GAAG,KAAKC,GAAG,KAAK,SAASC,GAAGrpF,GAAGspF,GAAGtpF,EAAE,EAAE,CAAC,SAASupF,GAAGvpF,GAAe,GAAGozE,EAAToW,GAAGxpF,IAAY,OAAOA,CAAC,CACpe,SAASypF,GAAGzpF,EAAEnN,GAAG,GAAG,WAAWmN,EAAE,OAAOnN,CAAC,CAAC,IAAI62F,IAAG,EAAG,GAAGra,EAAG,CAAC,IAAIsa,GAAG,GAAGta,EAAG,CAAC,IAAIua,GAAG,YAAYhyF,SAAS,IAAIgyF,GAAG,CAAC,IAAIC,GAAGjyF,SAASwxB,cAAc,OAAOygE,GAAG95D,aAAa,UAAU,WAAW65D,GAAG,oBAAoBC,GAAGC,OAAO,CAACH,GAAGC,EAAE,MAAMD,IAAG,EAAGD,GAAGC,MAAM/xF,SAASqwF,cAAc,EAAErwF,SAASqwF,aAAa,CAAC,SAAS8B,KAAKZ,KAAKA,GAAGa,YAAY,mBAAmBC,IAAIb,GAAGD,GAAG,KAAK,CAAC,SAASc,GAAGjqF,GAAG,GAAG,UAAUA,EAAE8vE,cAAcyZ,GAAGH,IAAI,CAAC,IAAIv2F,EAAE,GAAGk2F,GAAGl2F,EAAEu2F,GAAGppF,EAAEg5E,GAAGh5E,IAAI+5E,GAAGsP,GAAGx2F,EAAE,CAAC,CAC/b,SAASq3F,GAAGlqF,EAAEnN,EAAEqT,GAAG,YAAYlG,GAAG+pF,KAAUX,GAAGljF,GAARijF,GAAGt2F,GAAUs3F,YAAY,mBAAmBF,KAAK,aAAajqF,GAAG+pF,IAAI,CAAC,SAASK,GAAGpqF,GAAG,GAAG,oBAAoBA,GAAG,UAAUA,GAAG,YAAYA,EAAE,OAAOupF,GAAGH,GAAG,CAAC,SAASiB,GAAGrqF,EAAEnN,GAAG,GAAG,UAAUmN,EAAE,OAAOupF,GAAG12F,EAAE,CAAC,SAASy3F,GAAGtqF,EAAEnN,GAAG,GAAG,UAAUmN,GAAG,WAAWA,EAAE,OAAOupF,GAAG12F,EAAE,CAAiE,IAAI03F,GAAG,oBAAoBr4F,OAAO4mF,GAAG5mF,OAAO4mF,GAA5G,SAAY94E,EAAEnN,GAAG,OAAOmN,IAAInN,IAAI,IAAImN,GAAG,EAAEA,IAAI,EAAEnN,IAAImN,IAAIA,GAAGnN,IAAIA,CAAC,EACtW,SAAS23F,GAAGxqF,EAAEnN,GAAG,GAAG03F,GAAGvqF,EAAEnN,GAAG,OAAM,EAAG,GAAG,kBAAkBmN,GAAG,OAAOA,GAAG,kBAAkBnN,GAAG,OAAOA,EAAE,OAAM,EAAG,IAAIqT,EAAEhU,OAAO0uC,KAAK5gC,GAAGpN,EAAEV,OAAO0uC,KAAK/tC,GAAG,GAAGqT,EAAEzU,SAASmB,EAAEnB,OAAO,OAAM,EAAG,IAAImB,EAAE,EAAEA,EAAEsT,EAAEzU,OAAOmB,IAAI,CAAC,IAAI8B,EAAEwR,EAAEtT,GAAG,IAAI08E,EAAGh9E,KAAKO,EAAE6B,KAAK61F,GAAGvqF,EAAEtL,GAAG7B,EAAE6B,IAAI,OAAM,CAAE,CAAC,OAAM,CAAE,CAAC,SAAS+1F,GAAGzqF,GAAG,KAAKA,GAAGA,EAAE8pB,YAAY9pB,EAAEA,EAAE8pB,WAAW,OAAO9pB,CAAC,CACtU,SAAS0qF,GAAG1qF,EAAEnN,GAAG,IAAwBD,EAApBsT,EAAEukF,GAAGzqF,GAAO,IAAJA,EAAE,EAAYkG,GAAG,CAAC,GAAG,IAAIA,EAAE4tB,SAAS,CAA0B,GAAzBlhC,EAAEoN,EAAEkG,EAAEk0B,YAAY3oC,OAAUuO,GAAGnN,GAAGD,GAAGC,EAAE,MAAM,CAAC2E,KAAK0O,EAAE8jB,OAAOn3B,EAAEmN,GAAGA,EAAEpN,CAAC,CAACoN,EAAE,CAAC,KAAKkG,GAAG,CAAC,GAAGA,EAAEwrB,YAAY,CAACxrB,EAAEA,EAAEwrB,YAAY,MAAM1xB,CAAC,CAACkG,EAAEA,EAAEqoB,UAAU,CAACroB,OAAE,CAAM,CAACA,EAAEukF,GAAGvkF,EAAE,CAAC,CAAC,SAASykF,GAAG3qF,EAAEnN,GAAG,SAAOmN,IAAGnN,KAAEmN,IAAInN,KAAKmN,GAAG,IAAIA,EAAE8zB,YAAYjhC,GAAG,IAAIA,EAAEihC,SAAS62D,GAAG3qF,EAAEnN,EAAE07B,YAAY,aAAavuB,EAAEA,EAAEqkB,SAASxxB,KAAGmN,EAAE4qF,4BAAwD,GAA7B5qF,EAAE4qF,wBAAwB/3F,KAAY,CAC9Z,SAASg4F,KAAK,IAAI,IAAI7qF,EAAEqnB,OAAOx0B,EAAEwgF,IAAKxgF,aAAamN,EAAE8qF,mBAAmB,CAAC,IAAI,IAAI5kF,EAAE,kBAAkBrT,EAAEm+B,cAAc2O,SAASN,IAAkB,CAAb,MAAMzsC,GAAGsT,GAAE,CAAE,CAAC,IAAGA,EAAyB,MAAMrT,EAAEwgF,GAA/BrzE,EAAEnN,EAAEm+B,eAAgCp5B,SAAS,CAAC,OAAO/E,CAAC,CAAC,SAASk4F,GAAG/qF,GAAG,IAAInN,EAAEmN,GAAGA,EAAE+4B,UAAU/4B,EAAE+4B,SAAS7uB,cAAc,OAAOrX,IAAI,UAAUA,IAAI,SAASmN,EAAEK,MAAM,WAAWL,EAAEK,MAAM,QAAQL,EAAEK,MAAM,QAAQL,EAAEK,MAAM,aAAaL,EAAEK,OAAO,aAAaxN,GAAG,SAASmN,EAAEgrF,gBAAgB,CACxa,SAASC,GAAGjrF,GAAG,IAAInN,EAAEg4F,KAAK3kF,EAAElG,EAAEkrF,YAAYt4F,EAAEoN,EAAEmrF,eAAe,GAAGt4F,IAAIqT,GAAGA,GAAGA,EAAEkoB,eAAeu8D,GAAGzkF,EAAEkoB,cAAcv2B,gBAAgBqO,GAAG,CAAC,GAAG,OAAOtT,GAAGm4F,GAAG7kF,GAAG,GAAGrT,EAAED,EAAEgI,WAAc,KAARoF,EAAEpN,EAAEiI,OAAiBmF,EAAEnN,GAAG,mBAAmBqT,EAAEA,EAAEklF,eAAev4F,EAAEqT,EAAEmlF,aAAatzF,KAAK0S,IAAIzK,EAAEkG,EAAE/R,MAAM1C,aAAa,IAAGuO,GAAGnN,EAAEqT,EAAEkoB,eAAex2B,WAAW/E,EAAEglC,aAAaxQ,QAASikE,aAAa,CAACtrF,EAAEA,EAAEsrF,eAAe,IAAI52F,EAAEwR,EAAEk0B,YAAY3oC,OAAOwD,EAAE8C,KAAK0S,IAAI7X,EAAEgI,MAAMlG,GAAG9B,OAAE,IAASA,EAAEiI,IAAI5F,EAAE8C,KAAK0S,IAAI7X,EAAEiI,IAAInG,IAAIsL,EAAE0/C,QAAQzqD,EAAErC,IAAI8B,EAAE9B,EAAEA,EAAEqC,EAAEA,EAAEP,GAAGA,EAAEg2F,GAAGxkF,EAAEjR,GAAG,IAAIE,EAAEu1F,GAAGxkF,EACvftT,GAAG8B,GAAGS,IAAI,IAAI6K,EAAEurF,YAAYvrF,EAAEwrF,aAAa92F,EAAE8C,MAAMwI,EAAEyrF,eAAe/2F,EAAEs1B,QAAQhqB,EAAE0rF,YAAYv2F,EAAEqC,MAAMwI,EAAE2rF,cAAcx2F,EAAE60B,WAAUn3B,EAAEA,EAAEo2B,eAAgBmB,SAAS11B,EAAE8C,KAAK9C,EAAEs1B,QAAQhqB,EAAE4rF,kBAAkB32F,EAAErC,GAAGoN,EAAE6rF,SAASh5F,GAAGmN,EAAE0/C,OAAOvqD,EAAEqC,KAAKrC,EAAE60B,UAAUn3B,EAAEw3B,OAAOl1B,EAAEqC,KAAKrC,EAAE60B,QAAQhqB,EAAE6rF,SAASh5F,IAAI,CAAM,IAALA,EAAE,GAAOmN,EAAEkG,EAAElG,EAAEA,EAAEuuB,YAAY,IAAIvuB,EAAE8zB,UAAUjhC,EAAEjB,KAAK,CAACk1B,QAAQ9mB,EAAEzJ,KAAKyJ,EAAEs8B,WAAW9lC,IAAIwJ,EAAEq8B,YAAmD,IAAvC,oBAAoBn2B,EAAE4lF,OAAO5lF,EAAE4lF,QAAY5lF,EAAE,EAAEA,EAAErT,EAAEpB,OAAOyU,KAAIlG,EAAEnN,EAAEqT,IAAK4gB,QAAQwV,WAAWt8B,EAAEzJ,KAAKyJ,EAAE8mB,QAAQuV,UAAUr8B,EAAExJ,GAAG,CAAC,CACzf,IAAIu1F,GAAG1c,GAAI,iBAAiBz3E,UAAU,IAAIA,SAASqwF,aAAa+D,GAAG,KAAKC,GAAG,KAAKC,GAAG,KAAKC,IAAG,EAC3F,SAASC,GAAGpsF,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEsT,EAAEmhB,SAASnhB,EAAEA,EAAEtO,SAAS,IAAIsO,EAAE4tB,SAAS5tB,EAAEA,EAAEkoB,cAAc+9D,IAAI,MAAMH,IAAIA,KAAK3Y,EAAGzgF,KAAU,mBAALA,EAAEo5F,KAAyBjB,GAAGn4F,GAAGA,EAAE,CAACgI,MAAMhI,EAAEw4F,eAAevwF,IAAIjI,EAAEy4F,cAAuFz4F,EAAE,CAAC44F,YAA3E54F,GAAGA,EAAEw7B,eAAex7B,EAAEw7B,cAAcyJ,aAAaxQ,QAAQikE,gBAA+BE,WAAWC,aAAa74F,EAAE64F,aAAaC,UAAU94F,EAAE84F,UAAUC,YAAY/4F,EAAE+4F,aAAcO,IAAI1B,GAAG0B,GAAGt5F,KAAKs5F,GAAGt5F,EAAsB,GAApBA,EAAEo2F,GAAGiD,GAAG,aAAgBx6F,SAASoB,EAAE,IAAIkwF,GAAG,WAAW,SAAS,KAAKlwF,EAAEqT,GAAGlG,EAAEpO,KAAK,CAACq3F,MAAMp2F,EAAEq2F,UAAUt2F,IAAIC,EAAEyrC,OAAO0tD,KAAK,CACtf,SAASK,GAAGrsF,EAAEnN,GAAG,IAAIqT,EAAE,CAAC,EAAiF,OAA/EA,EAAElG,EAAEkK,eAAerX,EAAEqX,cAAchE,EAAE,SAASlG,GAAG,SAASnN,EAAEqT,EAAE,MAAMlG,GAAG,MAAMnN,EAASqT,CAAC,CAAC,IAAIomF,GAAG,CAACC,aAAaF,GAAG,YAAY,gBAAgBG,mBAAmBH,GAAG,YAAY,sBAAsBI,eAAeJ,GAAG,YAAY,kBAAkBK,cAAcL,GAAG,aAAa,kBAAkBM,GAAG,CAAC,EAAEC,GAAG,CAAC,EACpF,SAASC,GAAG7sF,GAAG,GAAG2sF,GAAG3sF,GAAG,OAAO2sF,GAAG3sF,GAAG,IAAIssF,GAAGtsF,GAAG,OAAOA,EAAE,IAAYkG,EAARrT,EAAEy5F,GAAGtsF,GAAK,IAAIkG,KAAKrT,EAAE,GAAGA,EAAEzB,eAAe8U,IAAIA,KAAK0mF,GAAG,OAAOD,GAAG3sF,GAAGnN,EAAEqT,GAAG,OAAOlG,CAAC,CAA/XqvE,IAAKud,GAAGh1F,SAASwxB,cAAc,OAAOzJ,MAAM,mBAAmB0H,gBAAgBilE,GAAGC,aAAaO,iBAAiBR,GAAGE,mBAAmBM,iBAAiBR,GAAGG,eAAeK,WAAW,oBAAoBzlE,eAAeilE,GAAGI,cAAc/L,YAAwJ,IAAIoM,GAAGF,GAAG,gBAAgBG,GAAGH,GAAG,sBAAsBI,GAAGJ,GAAG,kBAAkBK,GAAGL,GAAG,iBAAiBM,GAAG,IAAIlO,IAAImO,GAAG,smBAAsmBj2C,MAAM,KAC/lC,SAASk2C,GAAGrtF,EAAEnN,GAAGs6F,GAAGjqC,IAAIljD,EAAEnN,GAAGs8E,EAAGt8E,EAAE,CAACmN,GAAG,CAAC,IAAI,IAAIstF,GAAG,EAAEA,GAAGF,GAAG37F,OAAO67F,KAAK,CAAC,IAAIC,GAAGH,GAAGE,IAA2DD,GAApDE,GAAGrjF,cAAuD,MAAtCqjF,GAAG,GAAG3+E,cAAc2+E,GAAGl3F,MAAM,IAAiB,CAACg3F,GAAGN,GAAG,kBAAkBM,GAAGL,GAAG,wBAAwBK,GAAGJ,GAAG,oBAAoBI,GAAG,WAAW,iBAAiBA,GAAG,UAAU,WAAWA,GAAG,WAAW,UAAUA,GAAGH,GAAG,mBAAmB9d,EAAG,eAAe,CAAC,WAAW,cAAcA,EAAG,eAAe,CAAC,WAAW,cAAcA,EAAG,iBAAiB,CAAC,aAAa,gBAC7cA,EAAG,iBAAiB,CAAC,aAAa,gBAAgBD,EAAG,WAAW,oEAAoEh4B,MAAM,MAAMg4B,EAAG,WAAW,uFAAuFh4B,MAAM,MAAMg4B,EAAG,gBAAgB,CAAC,iBAAiB,WAAW,YAAY,UAAUA,EAAG,mBAAmB,2DAA2Dh4B,MAAM,MAAMg4B,EAAG,qBAAqB,6DAA6Dh4B,MAAM,MAC/fg4B,EAAG,sBAAsB,8DAA8Dh4B,MAAM,MAAM,IAAIq2C,GAAG,6NAA6Nr2C,MAAM,KAAKs2C,GAAG,IAAIxe,IAAI,0CAA0C93B,MAAM,KAAK7gD,OAAOk3F,KACzZ,SAASE,GAAG1tF,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEoN,EAAEK,MAAM,gBAAgBL,EAAE6hF,cAAc37E,EAlDjE,SAAYlG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,EAAEE,EAAE2B,EAAEqoD,GAA4B,GAAzBw7B,GAAG3oF,MAAMqB,KAAK7B,WAAc8oF,GAAG,CAAC,IAAGA,GAAgC,MAAMxiF,MAAM9E,EAAE,MAA1C,IAAIoD,EAAEmkF,GAAGD,IAAG,EAAGC,GAAG,KAA8BC,KAAKA,IAAG,EAAGC,GAAGrkF,EAAE,CAAC,CAkDpEu3F,CAAG/6F,EAAEC,OAAE,EAAOmN,GAAGA,EAAE6hF,cAAc,IAAI,CACxG,SAASyH,GAAGtpF,EAAEnN,GAAGA,EAAE,KAAO,EAAFA,GAAK,IAAI,IAAIqT,EAAE,EAAEA,EAAElG,EAAEvO,OAAOyU,IAAI,CAAC,IAAItT,EAAEoN,EAAEkG,GAAGxR,EAAE9B,EAAEq2F,MAAMr2F,EAAEA,EAAEs2F,UAAUlpF,EAAE,CAAC,IAAI/K,OAAE,EAAO,GAAGpC,EAAE,IAAI,IAAIsC,EAAEvC,EAAEnB,OAAO,EAAE,GAAG0D,EAAEA,IAAI,CAAC,IAAI2B,EAAElE,EAAEuC,GAAGgqD,EAAEroD,EAAE82F,SAASx3F,EAAEU,EAAE+qF,cAA2B,GAAb/qF,EAAEA,EAAE+2F,SAAY1uC,IAAIlqD,GAAGP,EAAEutF,uBAAuB,MAAMjiF,EAAE0tF,GAAGh5F,EAAEoC,EAAEV,GAAGnB,EAAEkqD,CAAC,MAAM,IAAIhqD,EAAE,EAAEA,EAAEvC,EAAEnB,OAAO0D,IAAI,CAAoD,GAA5CgqD,GAAProD,EAAElE,EAAEuC,IAAOy4F,SAASx3F,EAAEU,EAAE+qF,cAAc/qF,EAAEA,EAAE+2F,SAAY1uC,IAAIlqD,GAAGP,EAAEutF,uBAAuB,MAAMjiF,EAAE0tF,GAAGh5F,EAAEoC,EAAEV,GAAGnB,EAAEkqD,CAAC,CAAC,CAAC,CAAC,GAAGq7B,GAAG,MAAMx6E,EAAEy6E,GAAGD,IAAG,EAAGC,GAAG,KAAKz6E,CAAE,CAC5a,SAAS6uE,GAAE7uE,EAAEnN,GAAG,IAAIqT,EAAErT,EAAEi7F,SAAI,IAAS5nF,IAAIA,EAAErT,EAAEi7F,IAAI,IAAI7e,KAAK,IAAIr8E,EAAEoN,EAAE,WAAWkG,EAAE65B,IAAIntC,KAAKm7F,GAAGl7F,EAAEmN,EAAE,GAAE,GAAIkG,EAAE0yB,IAAIhmC,GAAG,CAAC,SAASo7F,GAAGhuF,EAAEnN,EAAEqT,GAAG,IAAItT,EAAE,EAAEC,IAAID,GAAG,GAAGm7F,GAAG7nF,EAAElG,EAAEpN,EAAEC,EAAE,CAAC,IAAIo7F,GAAG,kBAAkBl2F,KAAKm2F,SAASj8F,SAAS,IAAIoE,MAAM,GAAG,SAAS83F,GAAGnuF,GAAG,IAAIA,EAAEiuF,IAAI,CAACjuF,EAAEiuF,KAAI,EAAGjf,EAAGtvE,SAAQ,SAAS7M,GAAG,oBAAoBA,IAAI46F,GAAG1tD,IAAIltC,IAAIm7F,GAAGn7F,GAAE,EAAGmN,GAAGguF,GAAGn7F,GAAE,EAAGmN,GAAG,IAAG,IAAInN,EAAE,IAAImN,EAAE8zB,SAAS9zB,EAAEA,EAAEouB,cAAc,OAAOv7B,GAAGA,EAAEo7F,MAAMp7F,EAAEo7F,KAAI,EAAGD,GAAG,mBAAkB,EAAGn7F,GAAG,CAAC,CACjb,SAASk7F,GAAG/tF,EAAEnN,EAAEqT,EAAEtT,GAAG,OAAOquF,GAAGpuF,IAAI,KAAK,EAAE,IAAI6B,EAAEgsF,GAAG,MAAM,KAAK,EAAEhsF,EAAEmsF,GAAG,MAAM,QAAQnsF,EAAEksF,GAAG16E,EAAExR,EAAE05F,KAAK,KAAKv7F,EAAEqT,EAAElG,GAAGtL,OAAE,GAAQulF,IAAI,eAAepnF,GAAG,cAAcA,GAAG,UAAUA,IAAI6B,GAAE,GAAI9B,OAAE,IAAS8B,EAAEsL,EAAEkhC,iBAAiBruC,EAAEqT,EAAE,CAACmoF,SAAQ,EAAGC,QAAQ55F,IAAIsL,EAAEkhC,iBAAiBruC,EAAEqT,GAAE,QAAI,IAASxR,EAAEsL,EAAEkhC,iBAAiBruC,EAAEqT,EAAE,CAACooF,QAAQ55F,IAAIsL,EAAEkhC,iBAAiBruC,EAAEqT,GAAE,EAAG,CAClV,SAAS46E,GAAG9gF,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,IAAIO,EAAErC,EAAE,GAAG,KAAO,EAAFC,IAAM,KAAO,EAAFA,IAAM,OAAOD,EAAEoN,EAAE,OAAO,CAAC,GAAG,OAAOpN,EAAE,OAAO,IAAIuC,EAAEvC,EAAEu/E,IAAI,GAAG,IAAIh9E,GAAG,IAAIA,EAAE,CAAC,IAAI2B,EAAElE,EAAE4mF,UAAUyG,cAAc,GAAGnpF,IAAIpC,GAAG,IAAIoC,EAAEg9B,UAAUh9B,EAAEy3B,aAAa75B,EAAE,MAAM,GAAG,IAAIS,EAAE,IAAIA,EAAEvC,EAAEkoF,OAAO,OAAO3lF,GAAG,CAAC,IAAIgqD,EAAEhqD,EAAEg9E,IAAI,IAAG,IAAIhzB,GAAG,IAAIA,MAAKA,EAAEhqD,EAAEqkF,UAAUyG,iBAAkBvrF,GAAG,IAAIyqD,EAAErrB,UAAUqrB,EAAE5wB,aAAa75B,GAAE,OAAOS,EAAEA,EAAE2lF,MAAM,CAAC,KAAK,OAAOhkF,GAAG,CAAS,GAAG,QAAX3B,EAAE4qF,GAAGjpF,IAAe,OAAe,GAAG,KAAXqoD,EAAEhqD,EAAEg9E,MAAc,IAAIhzB,EAAE,CAACvsD,EAAEqC,EAAEE,EAAE,SAAS6K,CAAC,CAAClJ,EAAEA,EAAEy3B,UAAU,CAAC,CAAC37B,EAAEA,EAAEkoF,MAAM,CAACf,IAAG,WAAW,IAAInnF,EAAEqC,EAAEP,EAAEskF,GAAG9yE,GAAG/Q,EAAE,GACpf6K,EAAE,CAAC,IAAIlJ,EAAEq2F,GAAGvtF,IAAII,GAAG,QAAG,IAASlJ,EAAE,CAAC,IAAIqoD,EAAE4jC,GAAGnvF,EAAEoM,EAAE,OAAOA,GAAG,IAAK,WAAW,GAAG,IAAIshF,GAAGp7E,GAAG,MAAMlG,EAAE,IAAK,UAAU,IAAK,QAAQm/C,EAAEsnC,GAAG,MAAM,IAAK,UAAU7yF,EAAE,QAAQurD,EAAEulC,GAAG,MAAM,IAAK,WAAW9wF,EAAE,OAAOurD,EAAEulC,GAAG,MAAM,IAAK,aAAa,IAAK,YAAYvlC,EAAEulC,GAAG,MAAM,IAAK,QAAQ,GAAG,IAAIx+E,EAAE89E,OAAO,MAAMhkF,EAAE,IAAK,WAAW,IAAK,WAAW,IAAK,YAAY,IAAK,YAAY,IAAK,UAAU,IAAK,WAAW,IAAK,YAAY,IAAK,cAAcm/C,EAAEolC,GAAG,MAAM,IAAK,OAAO,IAAK,UAAU,IAAK,YAAY,IAAK,WAAW,IAAK,YAAY,IAAK,WAAW,IAAK,YAAY,IAAK,OAAOplC,EAC1iBqlC,GAAG,MAAM,IAAK,cAAc,IAAK,WAAW,IAAK,YAAY,IAAK,aAAarlC,EAAE+nC,GAAG,MAAM,KAAK6F,GAAG,KAAKC,GAAG,KAAKC,GAAG9tC,EAAEwlC,GAAG,MAAM,KAAKuI,GAAG/tC,EAAEmoC,GAAG,MAAM,IAAK,SAASnoC,EAAE+jC,GAAG,MAAM,IAAK,QAAQ/jC,EAAE0oC,GAAG,MAAM,IAAK,OAAO,IAAK,MAAM,IAAK,QAAQ1oC,EAAE8lC,GAAG,MAAM,IAAK,oBAAoB,IAAK,qBAAqB,IAAK,gBAAgB,IAAK,cAAc,IAAK,cAAc,IAAK,aAAa,IAAK,cAAc,IAAK,YAAY9lC,EAAEunC,GAAG,IAAIhzF,EAAE,KAAO,EAAFb,GAAK07F,GAAG76F,GAAG,WAAWsM,EAAEpJ,EAAElD,EAAE,OAAOoD,EAAEA,EAAE,UAAU,KAAKA,EAAEpD,EAAE,GAAG,IAAI,IAAQ+Q,EAAJ5N,EAAEjE,EAAI,OAC/eiE,GAAG,CAAK,IAAIgO,GAARJ,EAAE5N,GAAU2iF,UAAsF,GAA5E,IAAI/0E,EAAE0tE,KAAK,OAAOttE,IAAIJ,EAAEI,EAAE,OAAOjO,IAAc,OAAViO,EAAEm1E,GAAGnjF,EAAED,KAAYlD,EAAE9B,KAAK48F,GAAG33F,EAAEgO,EAAEJ,MAAS8pF,EAAE,MAAM13F,EAAEA,EAAEikF,MAAM,CAAC,EAAEpnF,EAAEjC,SAASqF,EAAE,IAAIqoD,EAAEroD,EAAElD,EAAE,KAAKsS,EAAExR,GAAGS,EAAEvD,KAAK,CAACq3F,MAAMnyF,EAAEoyF,UAAUx1F,IAAI,CAAC,CAAC,GAAG,KAAO,EAAFb,GAAK,CAA4E,GAAnCssD,EAAE,aAAan/C,GAAG,eAAeA,KAAtElJ,EAAE,cAAckJ,GAAG,gBAAgBA,IAA2CkG,IAAI6yE,MAAKnlF,EAAEsS,EAAEg+E,eAAeh+E,EAAEi+E,eAAepE,GAAGnsF,KAAIA,EAAE66F,OAAgBtvC,GAAGroD,KAAGA,EAAEpC,EAAE2yB,SAAS3yB,EAAEA,GAAGoC,EAAEpC,EAAE05B,eAAet3B,EAAE+gC,aAAa/gC,EAAE43F,aAAarnE,OAAU83B,GAAqCA,EAAEvsD,EAAiB,QAAfgB,GAAnCA,EAAEsS,EAAEg+E,eAAeh+E,EAAEk+E,WAAkBrE,GAAGnsF,GAAG,QAC9dA,KAAR26F,EAAE3T,GAAGhnF,KAAU,IAAIA,EAAEu+E,KAAK,IAAIv+E,EAAEu+E,OAAKv+E,EAAE,QAAUurD,EAAE,KAAKvrD,EAAEhB,GAAKusD,IAAIvrD,GAAE,CAAgU,GAA/TF,EAAE6wF,GAAG1/E,EAAE,eAAejO,EAAE,eAAeC,EAAE,QAAW,eAAemJ,GAAG,gBAAgBA,IAAEtM,EAAEgzF,GAAG7hF,EAAE,iBAAiBjO,EAAE,iBAAiBC,EAAE,WAAU03F,EAAE,MAAMpvC,EAAEroD,EAAE0yF,GAAGrqC,GAAG16C,EAAE,MAAM7Q,EAAEkD,EAAE0yF,GAAG51F,IAAGkD,EAAE,IAAIpD,EAAEmR,EAAEhO,EAAE,QAAQsoD,EAAEj5C,EAAExR,IAAK4pC,OAAOiwD,EAAEz3F,EAAEotF,cAAcz/E,EAAEI,EAAE,KAAKk7E,GAAGrrF,KAAK9B,KAAIc,EAAE,IAAIA,EAAEkD,EAAEC,EAAE,QAAQjD,EAAEsS,EAAExR,IAAK4pC,OAAO75B,EAAE/Q,EAAEwwF,cAAcqK,EAAE1pF,EAAEnR,GAAG66F,EAAE1pF,EAAKs6C,GAAGvrD,EAAEf,EAAE,CAAa,IAAR+D,EAAEhD,EAAEiD,EAAE,EAAM4N,EAAhB/Q,EAAEyrD,EAAkB16C,EAAEA,EAAEkqF,GAAGlqF,GAAG5N,IAAQ,IAAJ4N,EAAE,EAAMI,EAAEjO,EAAEiO,EAAEA,EAAE8pF,GAAG9pF,GAAGJ,IAAI,KAAK,EAAE5N,EAAE4N,GAAG/Q,EAAEi7F,GAAGj7F,GAAGmD,IAAI,KAAK,EAAE4N,EAAE5N,GAAGD,EACpf+3F,GAAG/3F,GAAG6N,IAAI,KAAK5N,KAAK,CAAC,GAAGnD,IAAIkD,GAAG,OAAOA,GAAGlD,IAAIkD,EAAEikF,UAAU,MAAMhoF,EAAEa,EAAEi7F,GAAGj7F,GAAGkD,EAAE+3F,GAAG/3F,EAAE,CAAClD,EAAE,IAAI,MAAMA,EAAE,KAAK,OAAOyrD,GAAGyvC,GAAGz5F,EAAE2B,EAAEqoD,EAAEzrD,GAAE,GAAI,OAAOE,GAAG,OAAO26F,GAAGK,GAAGz5F,EAAEo5F,EAAE36F,EAAEF,GAAE,EAAG,CAA8D,GAAG,YAA1CyrD,GAAjBroD,EAAElE,EAAE42F,GAAG52F,GAAGy0B,QAAW0R,UAAUjiC,EAAEiiC,SAAS7uB,gBAA+B,UAAUi1C,GAAG,SAASroD,EAAEuJ,KAAK,IAAIwuF,EAAGpF,QAAQ,GAAGX,GAAGhyF,GAAG,GAAG4yF,GAAGmF,EAAGvE,OAAO,CAACuE,EAAGzE,GAAG,IAAI0E,EAAG5E,EAAE,MAAM/qC,EAAEroD,EAAEiiC,WAAW,UAAUomB,EAAEj1C,gBAAgB,aAAapT,EAAEuJ,MAAM,UAAUvJ,EAAEuJ,QAAQwuF,EAAGxE,IACrV,OAD4VwE,IAAKA,EAAGA,EAAG7uF,EAAEpN,IAAKm2F,GAAG5zF,EAAE05F,EAAG3oF,EAAExR,IAAWo6F,GAAIA,EAAG9uF,EAAElJ,EAAElE,GAAG,aAAaoN,IAAI8uF,EAAGh4F,EAAE48E,gBAClfob,EAAGjb,YAAY,WAAW/8E,EAAEuJ,MAAM0zE,GAAGj9E,EAAE,SAASA,EAAE3C,QAAO26F,EAAGl8F,EAAE42F,GAAG52F,GAAGy0B,OAAcrnB,GAAG,IAAK,WAAa8oF,GAAGgG,IAAK,SAASA,EAAG9D,mBAAgBgB,GAAG8C,EAAG7C,GAAGr5F,EAAEs5F,GAAG,MAAK,MAAM,IAAK,WAAWA,GAAGD,GAAGD,GAAG,KAAK,MAAM,IAAK,YAAYG,IAAG,EAAG,MAAM,IAAK,cAAc,IAAK,UAAU,IAAK,UAAUA,IAAG,EAAGC,GAAGj3F,EAAE+Q,EAAExR,GAAG,MAAM,IAAK,kBAAkB,GAAGq3F,GAAG,MAAM,IAAK,UAAU,IAAK,QAAQK,GAAGj3F,EAAE+Q,EAAExR,GAAG,IAAIq6F,EAAG,GAAGhH,GAAGl1F,EAAE,CAAC,OAAOmN,GAAG,IAAK,mBAAmB,IAAIgvF,EAAG,qBAAqB,MAAMn8F,EAAE,IAAK,iBAAiBm8F,EAAG,mBACpe,MAAMn8F,EAAE,IAAK,oBAAoBm8F,EAAG,sBAAsB,MAAMn8F,EAAEm8F,OAAG,CAAM,MAAMxG,GAAGF,GAAGtoF,EAAEkG,KAAK8oF,EAAG,oBAAoB,YAAYhvF,GAAG,MAAMkG,EAAEq7E,UAAUyN,EAAG,sBAAsBA,IAAK7G,IAAI,OAAOjiF,EAAE25C,SAAS2oC,IAAI,uBAAuBwG,EAAG,qBAAqBA,GAAIxG,KAAKuG,EAAG1N,OAAYF,GAAG,UAARD,GAAGxsF,GAAkBwsF,GAAG/sF,MAAM+sF,GAAG9mD,YAAYouD,IAAG,IAAiB,GAAZsG,EAAG9F,GAAGp2F,EAAEo8F,IAASv9F,SAASu9F,EAAG,IAAI9J,GAAG8J,EAAGhvF,EAAE,KAAKkG,EAAExR,GAAGS,EAAEvD,KAAK,CAACq3F,MAAM+F,EAAG9F,UAAU4F,IAAKC,EAAGC,EAAG1zF,KAAKyzF,EAAa,QAATA,EAAGxG,GAAGriF,MAAe8oF,EAAG1zF,KAAKyzF,MAAUA,EAAG7G,GA5BhM,SAAYloF,EAAEnN,GAAG,OAAOmN,GAAG,IAAK,iBAAiB,OAAOuoF,GAAG11F,GAAG,IAAK,WAAW,OAAG,KAAKA,EAAE2zF,MAAa,MAAK6B,IAAG,EAAUD,IAAG,IAAK,YAAY,OAAOpoF,EAAEnN,EAAEyI,QAAS8sF,IAAIC,GAAG,KAAKroF,EAAE,QAAQ,OAAO,KAAK,CA4BEivF,CAAGjvF,EAAEkG,GA3Bzd,SAAYlG,EAAEnN,GAAG,GAAG21F,GAAG,MAAM,mBAAmBxoF,IAAI+nF,IAAIO,GAAGtoF,EAAEnN,IAAImN,EAAEqhF,KAAKD,GAAGD,GAAGD,GAAG,KAAKsH,IAAG,EAAGxoF,GAAG,KAAK,OAAOA,GAAG,IAAK,QAAgQ,QAAQ,OAAO,KAA3P,IAAK,WAAW,KAAKnN,EAAE6wF,SAAS7wF,EAAE+wF,QAAQ/wF,EAAEgxF,UAAUhxF,EAAE6wF,SAAS7wF,EAAE+wF,OAAO,CAAC,GAAG/wF,EAAEq8F,MAAM,EAAEr8F,EAAEq8F,KAAKz9F,OAAO,OAAOoB,EAAEq8F,KAAK,GAAGr8F,EAAE2zF,MAAM,OAAOrzF,OAAO8F,aAAapG,EAAE2zF,MAAM,CAAC,OAAO,KAAK,IAAK,iBAAiB,OAAO2B,IAAI,OAAOt1F,EAAEgtD,OAAO,KAAKhtD,EAAEyI,KAAyB,CA2BqF6zF,CAAGnvF,EAAEkG,MACje,GADoetT,EAAEo2F,GAAGp2F,EAAE,kBACvenB,SAASiD,EAAE,IAAIwwF,GAAG,gBAAgB,cAAc,KAAKh/E,EAAExR,GAAGS,EAAEvD,KAAK,CAACq3F,MAAMv0F,EAAEw0F,UAAUt2F,IAAI8B,EAAE4G,KAAKyzF,GAAG,CAACzF,GAAGn0F,EAAEtC,EAAE,GAAE,CAAC,SAAS27F,GAAGxuF,EAAEnN,EAAEqT,GAAG,MAAM,CAAC0nF,SAAS5tF,EAAE6tF,SAASh7F,EAAEgvF,cAAc37E,EAAE,CAAC,SAAS8iF,GAAGhpF,EAAEnN,GAAG,IAAI,IAAIqT,EAAErT,EAAE,UAAUD,EAAE,GAAG,OAAOoN,GAAG,CAAC,IAAItL,EAAEsL,EAAE/K,EAAEP,EAAE8kF,UAAU,IAAI9kF,EAAEy9E,KAAK,OAAOl9E,IAAIP,EAAEO,EAAY,OAAVA,EAAE+kF,GAAGh6E,EAAEkG,KAAYtT,EAAEgX,QAAQ4kF,GAAGxuF,EAAE/K,EAAEP,IAAc,OAAVO,EAAE+kF,GAAGh6E,EAAEnN,KAAYD,EAAEhB,KAAK48F,GAAGxuF,EAAE/K,EAAEP,KAAKsL,EAAEA,EAAE86E,MAAM,CAAC,OAAOloF,CAAC,CAAC,SAAS+7F,GAAG3uF,GAAG,GAAG,OAAOA,EAAE,OAAO,KAAK,GAAGA,EAAEA,EAAE86E,aAAa96E,GAAG,IAAIA,EAAEmyE,KAAK,OAAOnyE,GAAI,IAAI,CACnd,SAAS4uF,GAAG5uF,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,IAAI,IAAIO,EAAEpC,EAAE8uF,WAAWxsF,EAAE,GAAG,OAAO+Q,GAAGA,IAAItT,GAAG,CAAC,IAAIkE,EAAEoP,EAAEi5C,EAAEroD,EAAE+jF,UAAUzkF,EAAEU,EAAE0iF,UAAU,GAAG,OAAOr6B,GAAGA,IAAIvsD,EAAE,MAAM,IAAIkE,EAAEq7E,KAAK,OAAO/7E,IAAIU,EAAEV,EAAE1B,EAAa,OAAVyqD,EAAE66B,GAAG9zE,EAAEjR,KAAYE,EAAEyU,QAAQ4kF,GAAGtoF,EAAEi5C,EAAEroD,IAAKpC,GAAc,OAAVyqD,EAAE66B,GAAG9zE,EAAEjR,KAAYE,EAAEvD,KAAK48F,GAAGtoF,EAAEi5C,EAAEroD,KAAMoP,EAAEA,EAAE40E,MAAM,CAAC,IAAI3lF,EAAE1D,QAAQuO,EAAEpO,KAAK,CAACq3F,MAAMp2F,EAAEq2F,UAAU/zF,GAAG,CAAC,IAAIi6F,GAAG,SAASC,GAAG,iBAAiB,SAASC,GAAGtvF,GAAG,OAAO,kBAAkBA,EAAEA,EAAE,GAAGA,GAAGivB,QAAQmgE,GAAG,MAAMngE,QAAQogE,GAAG,GAAG,CAAC,SAASE,GAAGvvF,EAAEnN,EAAEqT,GAAW,GAARrT,EAAEy8F,GAAGz8F,GAAMy8F,GAAGtvF,KAAKnN,GAAGqT,EAAE,MAAMpO,MAAM9E,EAAE,KAAM,CAAC,SAASw8F,KAAK,CAC9e,IAAIC,GAAG,KAAKC,GAAG,KAAK,SAASC,GAAG3vF,EAAEnN,GAAG,MAAM,aAAamN,GAAG,aAAaA,GAAG,kBAAkBnN,EAAE2hF,UAAU,kBAAkB3hF,EAAE2hF,UAAU,kBAAkB3hF,EAAE0hF,yBAAyB,OAAO1hF,EAAE0hF,yBAAyB,MAAM1hF,EAAE0hF,wBAAwBqb,MAAM,CAC5P,IAAIC,GAAG,oBAAoBnvD,WAAWA,gBAAW,EAAOovD,GAAG,oBAAoBC,aAAaA,kBAAa,EAAOC,GAAG,oBAAoB37F,QAAQA,aAAQ,EAAO47F,GAAG,oBAAoBC,eAAeA,eAAe,qBAAqBF,GAAG,SAAShwF,GAAG,OAAOgwF,GAAG57F,QAAQ,MAAMU,KAAKkL,GAAG8rB,MAAMqkE,GAAG,EAAEN,GAAG,SAASM,GAAGnwF,GAAG0gC,YAAW,WAAW,MAAM1gC,CAAE,GAAE,CACpV,SAASowF,GAAGpwF,EAAEnN,GAAG,IAAIqT,EAAErT,EAAED,EAAE,EAAE,EAAE,CAAC,IAAI8B,EAAEwR,EAAEwrB,YAA6B,GAAjB1xB,EAAEypB,YAAYvjB,GAAMxR,GAAG,IAAIA,EAAEo/B,SAAS,GAAY,QAAT5tB,EAAExR,EAAE4G,MAAc,CAAC,GAAG,IAAI1I,EAA0B,OAAvBoN,EAAEypB,YAAY/0B,QAAG8rF,GAAG3tF,GAAUD,GAAG,KAAK,MAAMsT,GAAG,OAAOA,GAAG,OAAOA,GAAGtT,IAAIsT,EAAExR,CAAC,OAAOwR,GAAGs6E,GAAG3tF,EAAE,CAAC,SAASw9F,GAAGrwF,GAAG,KAAK,MAAMA,EAAEA,EAAEA,EAAE0xB,YAAY,CAAC,IAAI7+B,EAAEmN,EAAE8zB,SAAS,GAAG,IAAIjhC,GAAG,IAAIA,EAAE,MAAM,GAAG,IAAIA,EAAE,CAAU,GAAG,OAAZA,EAAEmN,EAAE1E,OAAiB,OAAOzI,GAAG,OAAOA,EAAE,MAAM,GAAG,OAAOA,EAAE,OAAO,IAAI,CAAC,CAAC,OAAOmN,CAAC,CACjY,SAASswF,GAAGtwF,GAAGA,EAAEA,EAAEuwF,gBAAgB,IAAI,IAAI19F,EAAE,EAAEmN,GAAG,CAAC,GAAG,IAAIA,EAAE8zB,SAAS,CAAC,IAAI5tB,EAAElG,EAAE1E,KAAK,GAAG,MAAM4K,GAAG,OAAOA,GAAG,OAAOA,EAAE,CAAC,GAAG,IAAIrT,EAAE,OAAOmN,EAAEnN,GAAG,KAAK,OAAOqT,GAAGrT,GAAG,CAACmN,EAAEA,EAAEuwF,eAAe,CAAC,OAAO,IAAI,CAAC,IAAIC,GAAGz4F,KAAKm2F,SAASj8F,SAAS,IAAIoE,MAAM,GAAGo6F,GAAG,gBAAgBD,GAAGE,GAAG,gBAAgBF,GAAG/B,GAAG,oBAAoB+B,GAAG1C,GAAG,iBAAiB0C,GAAGG,GAAG,oBAAoBH,GAAGI,GAAG,kBAAkBJ,GAClX,SAASzQ,GAAG//E,GAAG,IAAInN,EAAEmN,EAAEywF,IAAI,GAAG59F,EAAE,OAAOA,EAAE,IAAI,IAAIqT,EAAElG,EAAEuuB,WAAWroB,GAAG,CAAC,GAAGrT,EAAEqT,EAAEuoF,KAAKvoF,EAAEuqF,IAAI,CAAe,GAAdvqF,EAAErT,EAAEgoF,UAAa,OAAOhoF,EAAEqoC,OAAO,OAAOh1B,GAAG,OAAOA,EAAEg1B,MAAM,IAAIl7B,EAAEswF,GAAGtwF,GAAG,OAAOA,GAAG,CAAC,GAAGkG,EAAElG,EAAEywF,IAAI,OAAOvqF,EAAElG,EAAEswF,GAAGtwF,EAAE,CAAC,OAAOnN,CAAC,CAAKqT,GAAJlG,EAAEkG,GAAMqoB,UAAU,CAAC,OAAO,IAAI,CAAC,SAASgrD,GAAGv5E,GAAkB,QAAfA,EAAEA,EAAEywF,KAAKzwF,EAAEyuF,MAAc,IAAIzuF,EAAEmyE,KAAK,IAAInyE,EAAEmyE,KAAK,KAAKnyE,EAAEmyE,KAAK,IAAInyE,EAAEmyE,IAAI,KAAKnyE,CAAC,CAAC,SAASwpF,GAAGxpF,GAAG,GAAG,IAAIA,EAAEmyE,KAAK,IAAInyE,EAAEmyE,IAAI,OAAOnyE,EAAEw5E,UAAU,MAAM1hF,MAAM9E,EAAE,IAAK,CAAC,SAASymF,GAAGz5E,GAAG,OAAOA,EAAE0wF,KAAK,IAAI,CAAC,IAAIG,GAAG,GAAGC,IAAI,EAAE,SAASC,GAAG/wF,GAAG,MAAM,CAACG,QAAQH,EAAE,CACve,SAAS4E,GAAE5E,GAAG,EAAE8wF,KAAK9wF,EAAEG,QAAQ0wF,GAAGC,IAAID,GAAGC,IAAI,KAAKA,KAAK,CAAC,SAASE,GAAEhxF,EAAEnN,GAAGi+F,KAAKD,GAAGC,IAAI9wF,EAAEG,QAAQH,EAAEG,QAAQtN,CAAC,CAAC,IAAIo+F,GAAG,CAAC,EAAEC,GAAEH,GAAGE,IAAIE,GAAGJ,IAAG,GAAIK,GAAGH,GAAG,SAASI,GAAGrxF,EAAEnN,GAAG,IAAIqT,EAAElG,EAAEK,KAAKixF,aAAa,IAAIprF,EAAE,OAAO+qF,GAAG,IAAIr+F,EAAEoN,EAAEw5E,UAAU,GAAG5mF,GAAGA,EAAE2+F,8CAA8C1+F,EAAE,OAAOD,EAAE4+F,0CAA0C,IAASv8F,EAALP,EAAE,CAAC,EAAI,IAAIO,KAAKiR,EAAExR,EAAEO,GAAGpC,EAAEoC,GAAoH,OAAjHrC,KAAIoN,EAAEA,EAAEw5E,WAAY+X,4CAA4C1+F,EAAEmN,EAAEwxF,0CAA0C98F,GAAUA,CAAC,CAC9d,SAAS+8F,GAAGzxF,GAAyB,OAAO,QAA7BA,EAAEA,EAAE0xF,yBAAmC,IAAS1xF,CAAC,CAAC,SAAS2xF,KAAK/sF,GAAEusF,IAAIvsF,GAAEssF,GAAE,CAAC,SAASU,GAAG5xF,EAAEnN,EAAEqT,GAAG,GAAGgrF,GAAE/wF,UAAU8wF,GAAG,MAAMn5F,MAAM9E,EAAE,MAAMg+F,GAAEE,GAAEr+F,GAAGm+F,GAAEG,GAAGjrF,EAAE,CAAC,SAAS2rF,GAAG7xF,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEoN,EAAEw5E,UAAgC,GAAtB3mF,EAAEA,EAAE6+F,kBAAqB,oBAAoB9+F,EAAEk/F,gBAAgB,OAAO5rF,EAAwB,IAAI,IAAIxR,KAA9B9B,EAAEA,EAAEk/F,kBAAiC,KAAKp9F,KAAK7B,GAAG,MAAMiF,MAAM9E,EAAE,IAAIw/E,EAAGxyE,IAAI,UAAUtL,IAAI,OAAOiQ,EAAE,CAAC,EAAEuB,EAAEtT,EAAE,CACxX,SAASm/F,GAAG/xF,GAA2G,OAAxGA,GAAGA,EAAEA,EAAEw5E,YAAYx5E,EAAEgyF,2CAA2Cf,GAAGG,GAAGF,GAAE/wF,QAAQ6wF,GAAEE,GAAElxF,GAAGgxF,GAAEG,GAAGA,GAAGhxF,UAAe,CAAE,CAAC,SAAS8xF,GAAGjyF,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEoN,EAAEw5E,UAAU,IAAI5mF,EAAE,MAAMkF,MAAM9E,EAAE,MAAMkT,GAAGlG,EAAE6xF,GAAG7xF,EAAEnN,EAAEu+F,IAAIx+F,EAAEo/F,0CAA0ChyF,EAAE4E,GAAEusF,IAAIvsF,GAAEssF,IAAGF,GAAEE,GAAElxF,IAAI4E,GAAEusF,IAAIH,GAAEG,GAAGjrF,EAAE,CAAC,IAAIgsF,GAAG,KAAKC,IAAG,EAAG/2B,IAAG,EAAG,SAASg3B,GAAGpyF,GAAG,OAAOkyF,GAAGA,GAAG,CAAClyF,GAAGkyF,GAAGtgG,KAAKoO,EAAE,CAChW,SAASqyF,KAAK,IAAIj3B,IAAI,OAAO82B,GAAG,CAAC92B,IAAG,EAAG,IAAIp7D,EAAE,EAAEnN,EAAEurF,GAAE,IAAI,IAAIl4E,EAAEgsF,GAAG,IAAI9T,GAAE,EAAEp+E,EAAEkG,EAAEzU,OAAOuO,IAAI,CAAC,IAAIpN,EAAEsT,EAAElG,GAAG,GAAGpN,EAAEA,GAAE,SAAU,OAAOA,EAAE,CAACs/F,GAAG,KAAKC,IAAG,CAA8E,CAA3E,MAAMz9F,GAAG,MAAM,OAAOw9F,KAAKA,GAAGA,GAAG77F,MAAM2J,EAAE,IAAIu7E,GAAGW,GAAGmW,IAAI39F,CAAE,CAAC,QAAQ0pF,GAAEvrF,EAAEuoE,IAAG,CAAE,CAAC,CAAC,OAAO,IAAI,CAAC,IAAIk3B,GAAG,GAAGC,GAAG,EAAEC,GAAG,KAAKC,GAAG,EAAEC,GAAG,GAAGC,GAAG,EAAEC,GAAG,KAAKC,GAAG,EAAEC,GAAG,GAAG,SAASC,GAAG/yF,EAAEnN,GAAGy/F,GAAGC,MAAME,GAAGH,GAAGC,MAAMC,GAAGA,GAAGxyF,EAAEyyF,GAAG5/F,CAAC,CACjV,SAASmgG,GAAGhzF,EAAEnN,EAAEqT,GAAGwsF,GAAGC,MAAME,GAAGH,GAAGC,MAAMG,GAAGJ,GAAGC,MAAMC,GAAGA,GAAG5yF,EAAE,IAAIpN,EAAEigG,GAAG7yF,EAAE8yF,GAAG,IAAIp+F,EAAE,GAAGooF,GAAGlqF,GAAG,EAAEA,KAAK,GAAG8B,GAAGwR,GAAG,EAAE,IAAIjR,EAAE,GAAG6nF,GAAGjqF,GAAG6B,EAAE,GAAG,GAAGO,EAAE,CAAC,IAAIE,EAAET,EAAEA,EAAE,EAAEO,GAAGrC,GAAG,GAAGuC,GAAG,GAAGlD,SAAS,IAAIW,IAAIuC,EAAET,GAAGS,EAAE09F,GAAG,GAAG,GAAG/V,GAAGjqF,GAAG6B,EAAEwR,GAAGxR,EAAE9B,EAAEkgG,GAAG79F,EAAE+K,CAAC,MAAM6yF,GAAG,GAAG59F,EAAEiR,GAAGxR,EAAE9B,EAAEkgG,GAAG9yF,CAAC,CAAC,SAASizF,GAAGjzF,GAAG,OAAOA,EAAE86E,SAASiY,GAAG/yF,EAAE,GAAGgzF,GAAGhzF,EAAE,EAAE,GAAG,CAAC,SAASkzF,GAAGlzF,GAAG,KAAKA,IAAIwyF,IAAIA,GAAGF,KAAKC,IAAID,GAAGC,IAAI,KAAKE,GAAGH,KAAKC,IAAID,GAAGC,IAAI,KAAK,KAAKvyF,IAAI4yF,IAAIA,GAAGF,KAAKC,IAAID,GAAGC,IAAI,KAAKG,GAAGJ,KAAKC,IAAID,GAAGC,IAAI,KAAKE,GAAGH,KAAKC,IAAID,GAAGC,IAAI,IAAI,CAAC,IAAIQ,GAAG,KAAKC,GAAG,KAAKC,IAAE,EAAGC,GAAG,KACje,SAASC,GAAGvzF,EAAEnN,GAAG,IAAIqT,EAAEstF,GAAG,EAAE,KAAK,KAAK,GAAGttF,EAAE+gB,YAAY,UAAU/gB,EAAEszE,UAAU3mF,EAAEqT,EAAE40E,OAAO96E,EAAgB,QAAdnN,EAAEmN,EAAEyzF,YAAoBzzF,EAAEyzF,UAAU,CAACvtF,GAAGlG,EAAE4I,OAAO,IAAI/V,EAAEjB,KAAKsU,EAAE,CACxJ,SAASwtF,GAAG1zF,EAAEnN,GAAG,OAAOmN,EAAEmyE,KAAK,KAAK,EAAE,IAAIjsE,EAAElG,EAAEK,KAAyE,OAAO,QAA3ExN,EAAE,IAAIA,EAAEihC,UAAU5tB,EAAEgE,gBAAgBrX,EAAEkmC,SAAS7uB,cAAc,KAAKrX,KAAmBmN,EAAEw5E,UAAU3mF,EAAEsgG,GAAGnzF,EAAEozF,GAAG/C,GAAGx9F,EAAEi3B,aAAY,GAAO,KAAK,EAAE,OAAoD,QAA7Cj3B,EAAE,KAAKmN,EAAE2zF,cAAc,IAAI9gG,EAAEihC,SAAS,KAAKjhC,KAAYmN,EAAEw5E,UAAU3mF,EAAEsgG,GAAGnzF,EAAEozF,GAAG,MAAK,GAAO,KAAK,GAAG,OAA+B,QAAxBvgG,EAAE,IAAIA,EAAEihC,SAAS,KAAKjhC,KAAYqT,EAAE,OAAO0sF,GAAG,CAAC3+C,GAAG4+C,GAAGpxE,SAASqxE,IAAI,KAAK9yF,EAAEg7E,cAAc,CAACC,WAAWpoF,EAAE+gG,YAAY1tF,EAAE2tF,UAAU,aAAY3tF,EAAEstF,GAAG,GAAG,KAAK,KAAK,IAAKha,UAAU3mF,EAAEqT,EAAE40E,OAAO96E,EAAEA,EAAEk7B,MAAMh1B,EAAEitF,GAAGnzF,EAAEozF,GAClf,MAAK,GAAO,QAAQ,OAAM,EAAG,CAAC,SAASU,GAAG9zF,GAAG,OAAO,KAAY,EAAPA,EAAE+zF,OAAS,KAAa,IAAR/zF,EAAE4I,MAAU,CAAC,SAASorF,GAAGh0F,GAAG,GAAGqzF,GAAE,CAAC,IAAIxgG,EAAEugG,GAAG,GAAGvgG,EAAE,CAAC,IAAIqT,EAAErT,EAAE,IAAI6gG,GAAG1zF,EAAEnN,GAAG,CAAC,GAAGihG,GAAG9zF,GAAG,MAAMlI,MAAM9E,EAAE,MAAMH,EAAEw9F,GAAGnqF,EAAEwrB,aAAa,IAAI9+B,EAAEugG,GAAGtgG,GAAG6gG,GAAG1zF,EAAEnN,GAAG0gG,GAAG3gG,EAAEsT,IAAIlG,EAAE4I,OAAe,KAAT5I,EAAE4I,MAAY,EAAEyqF,IAAE,EAAGF,GAAGnzF,EAAE,CAAC,KAAK,CAAC,GAAG8zF,GAAG9zF,GAAG,MAAMlI,MAAM9E,EAAE,MAAMgN,EAAE4I,OAAe,KAAT5I,EAAE4I,MAAY,EAAEyqF,IAAE,EAAGF,GAAGnzF,CAAC,CAAC,CAAC,CAAC,SAASi0F,GAAGj0F,GAAG,IAAIA,EAAEA,EAAE86E,OAAO,OAAO96E,GAAG,IAAIA,EAAEmyE,KAAK,IAAInyE,EAAEmyE,KAAK,KAAKnyE,EAAEmyE,KAAKnyE,EAAEA,EAAE86E,OAAOqY,GAAGnzF,CAAC,CACha,SAASk0F,GAAGl0F,GAAG,GAAGA,IAAImzF,GAAG,OAAM,EAAG,IAAIE,GAAE,OAAOY,GAAGj0F,GAAGqzF,IAAE,GAAG,EAAG,IAAIxgG,EAAkG,IAA/FA,EAAE,IAAImN,EAAEmyE,QAAQt/E,EAAE,IAAImN,EAAEmyE,OAAgBt/E,EAAE,UAAXA,EAAEmN,EAAEK,OAAmB,SAASxN,IAAI88F,GAAG3vF,EAAEK,KAAKL,EAAEm0F,gBAAmBthG,IAAIA,EAAEugG,IAAI,CAAC,GAAGU,GAAG9zF,GAAG,MAAMo0F,KAAKt8F,MAAM9E,EAAE,MAAM,KAAKH,GAAG0gG,GAAGvzF,EAAEnN,GAAGA,EAAEw9F,GAAGx9F,EAAE6+B,YAAY,CAAO,GAANuiE,GAAGj0F,GAAM,KAAKA,EAAEmyE,IAAI,CAAgD,KAA7BnyE,EAAE,QAApBA,EAAEA,EAAEg7E,eAAyBh7E,EAAEi7E,WAAW,MAAW,MAAMnjF,MAAM9E,EAAE,MAAMgN,EAAE,CAAiB,IAAhBA,EAAEA,EAAE0xB,YAAgB7+B,EAAE,EAAEmN,GAAG,CAAC,GAAG,IAAIA,EAAE8zB,SAAS,CAAC,IAAI5tB,EAAElG,EAAE1E,KAAK,GAAG,OAAO4K,EAAE,CAAC,GAAG,IAAIrT,EAAE,CAACugG,GAAG/C,GAAGrwF,EAAE0xB,aAAa,MAAM1xB,CAAC,CAACnN,GAAG,KAAK,MAAMqT,GAAG,OAAOA,GAAG,OAAOA,GAAGrT,GAAG,CAACmN,EAAEA,EAAE0xB,WAAW,CAAC0hE,GACjgB,IAAI,CAAC,MAAMA,GAAGD,GAAG9C,GAAGrwF,EAAEw5E,UAAU9nD,aAAa,KAAK,OAAM,CAAE,CAAC,SAAS0iE,KAAK,IAAI,IAAIp0F,EAAEozF,GAAGpzF,GAAGA,EAAEqwF,GAAGrwF,EAAE0xB,YAAY,CAAC,SAAS2iE,KAAKjB,GAAGD,GAAG,KAAKE,IAAE,CAAE,CAAC,SAASiB,GAAGt0F,GAAG,OAAOszF,GAAGA,GAAG,CAACtzF,GAAGszF,GAAG1hG,KAAKoO,EAAE,CAAC,IAAIu0F,GAAG9jB,EAAGgQ,wBAAwB,SAAS+T,GAAGx0F,EAAEnN,GAAG,GAAGmN,GAAGA,EAAEy0F,aAAa,CAA4B,IAAI,IAAIvuF,KAAnCrT,EAAE8R,EAAE,CAAC,EAAE9R,GAAGmN,EAAEA,EAAEy0F,kBAA4B,IAAS5hG,EAAEqT,KAAKrT,EAAEqT,GAAGlG,EAAEkG,IAAI,OAAOrT,CAAC,CAAC,OAAOA,CAAC,CAAC,IAAI6hG,GAAG3D,GAAG,MAAM4D,GAAG,KAAKC,GAAG,KAAKC,GAAG,KAAK,SAASC,KAAKD,GAAGD,GAAGD,GAAG,IAAI,CAAC,SAASI,GAAG/0F,GAAG,IAAInN,EAAE6hG,GAAGv0F,QAAQyE,GAAE8vF,IAAI10F,EAAEg1F,cAAcniG,CAAC,CACjd,SAASoiG,GAAGj1F,EAAEnN,EAAEqT,GAAG,KAAK,OAAOlG,GAAG,CAAC,IAAIpN,EAAEoN,EAAE66E,UAA+H,IAApH76E,EAAEk1F,WAAWriG,KAAKA,GAAGmN,EAAEk1F,YAAYriG,EAAE,OAAOD,IAAIA,EAAEsiG,YAAYriG,IAAI,OAAOD,IAAIA,EAAEsiG,WAAWriG,KAAKA,IAAID,EAAEsiG,YAAYriG,GAAMmN,IAAIkG,EAAE,MAAMlG,EAAEA,EAAE86E,MAAM,CAAC,CAAC,SAASqa,GAAGn1F,EAAEnN,GAAG8hG,GAAG30F,EAAE60F,GAAGD,GAAG,KAAsB,QAAjB50F,EAAEA,EAAEo1F,eAAuB,OAAOp1F,EAAEq1F,eAAe,KAAKr1F,EAAEs1F,MAAMziG,KAAK0iG,IAAG,GAAIv1F,EAAEq1F,aAAa,KAAK,CACtU,SAASG,GAAGx1F,GAAG,IAAInN,EAAEmN,EAAEg1F,cAAc,GAAGH,KAAK70F,EAAE,GAAGA,EAAE,CAACjJ,QAAQiJ,EAAEy1F,cAAc5iG,EAAE4B,KAAK,MAAM,OAAOmgG,GAAG,CAAC,GAAG,OAAOD,GAAG,MAAM78F,MAAM9E,EAAE,MAAM4hG,GAAG50F,EAAE20F,GAAGS,aAAa,CAACE,MAAM,EAAED,aAAar1F,EAAE,MAAM40F,GAAGA,GAAGngG,KAAKuL,EAAE,OAAOnN,CAAC,CAAC,IAAI6iG,GAAG,KAAK,SAASC,GAAG31F,GAAG,OAAO01F,GAAGA,GAAG,CAAC11F,GAAG01F,GAAG9jG,KAAKoO,EAAE,CAAC,SAAS41F,GAAG51F,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAE7B,EAAEgjG,YAA+E,OAAnE,OAAOnhG,GAAGwR,EAAEzR,KAAKyR,EAAEyvF,GAAG9iG,KAAKqT,EAAEzR,KAAKC,EAAED,KAAKC,EAAED,KAAKyR,GAAGrT,EAAEgjG,YAAY3vF,EAAS4vF,GAAG91F,EAAEpN,EAAE,CAChY,SAASkjG,GAAG91F,EAAEnN,GAAGmN,EAAEs1F,OAAOziG,EAAE,IAAIqT,EAAElG,EAAE66E,UAAqC,IAA3B,OAAO30E,IAAIA,EAAEovF,OAAOziG,GAAGqT,EAAElG,EAAMA,EAAEA,EAAE86E,OAAO,OAAO96E,GAAGA,EAAEk1F,YAAYriG,EAAgB,QAAdqT,EAAElG,EAAE66E,aAAqB30E,EAAEgvF,YAAYriG,GAAGqT,EAAElG,EAAEA,EAAEA,EAAE86E,OAAO,OAAO,IAAI50E,EAAEisE,IAAIjsE,EAAEszE,UAAU,IAAI,CAAC,IAAIuc,IAAG,EAAG,SAASC,GAAGh2F,GAAGA,EAAEi2F,YAAY,CAACC,UAAUl2F,EAAEg7E,cAAcmb,gBAAgB,KAAKC,eAAe,KAAKC,OAAO,CAACC,QAAQ,KAAKT,YAAY,KAAKP,MAAM,GAAGluD,QAAQ,KAAK,CACpX,SAASmvD,GAAGv2F,EAAEnN,GAAGmN,EAAEA,EAAEi2F,YAAYpjG,EAAEojG,cAAcj2F,IAAInN,EAAEojG,YAAY,CAACC,UAAUl2F,EAAEk2F,UAAUC,gBAAgBn2F,EAAEm2F,gBAAgBC,eAAep2F,EAAEo2F,eAAeC,OAAOr2F,EAAEq2F,OAAOjvD,QAAQpnC,EAAEonC,SAAS,CAAC,SAASovD,GAAGx2F,EAAEnN,GAAG,MAAM,CAAC4jG,UAAUz2F,EAAE02F,KAAK7jG,EAAEs/E,IAAI,EAAEwkB,QAAQ,KAAK93C,SAAS,KAAKpqD,KAAK,KAAK,CACtR,SAASmiG,GAAG52F,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEoN,EAAEi2F,YAAY,GAAG,OAAOrjG,EAAE,OAAO,KAAgB,GAAXA,EAAEA,EAAEyjG,OAAU,KAAO,EAAFQ,IAAK,CAAC,IAAIniG,EAAE9B,EAAE0jG,QAA+D,OAAvD,OAAO5hG,EAAE7B,EAAE4B,KAAK5B,GAAGA,EAAE4B,KAAKC,EAAED,KAAKC,EAAED,KAAK5B,GAAGD,EAAE0jG,QAAQzjG,EAASijG,GAAG91F,EAAEkG,EAAE,CAAoF,OAAnE,QAAhBxR,EAAE9B,EAAEijG,cAAsBhjG,EAAE4B,KAAK5B,EAAE8iG,GAAG/iG,KAAKC,EAAE4B,KAAKC,EAAED,KAAKC,EAAED,KAAK5B,GAAGD,EAAEijG,YAAYhjG,EAASijG,GAAG91F,EAAEkG,EAAE,CAAC,SAAS4wF,GAAG92F,EAAEnN,EAAEqT,GAAmB,GAAG,QAAnBrT,EAAEA,EAAEojG,eAA0BpjG,EAAEA,EAAEwjG,OAAO,KAAO,QAAFnwF,IAAY,CAAC,IAAItT,EAAEC,EAAEyiG,MAAwBpvF,GAAlBtT,GAAGoN,EAAEw9E,aAAkB3qF,EAAEyiG,MAAMpvF,EAAEi4E,GAAGn+E,EAAEkG,EAAE,CAAC,CACrZ,SAAS6wF,GAAG/2F,EAAEnN,GAAG,IAAIqT,EAAElG,EAAEi2F,YAAYrjG,EAAEoN,EAAE66E,UAAU,GAAG,OAAOjoF,GAAoBsT,KAAhBtT,EAAEA,EAAEqjG,aAAmB,CAAC,IAAIvhG,EAAE,KAAKO,EAAE,KAAyB,GAAG,QAAvBiR,EAAEA,EAAEiwF,iBAA4B,CAAC,EAAE,CAAC,IAAIhhG,EAAE,CAACshG,UAAUvwF,EAAEuwF,UAAUC,KAAKxwF,EAAEwwF,KAAKvkB,IAAIjsE,EAAEisE,IAAIwkB,QAAQzwF,EAAEywF,QAAQ93C,SAAS34C,EAAE24C,SAASpqD,KAAK,MAAM,OAAOQ,EAAEP,EAAEO,EAAEE,EAAEF,EAAEA,EAAER,KAAKU,EAAE+Q,EAAEA,EAAEzR,IAAI,OAAO,OAAOyR,GAAG,OAAOjR,EAAEP,EAAEO,EAAEpC,EAAEoC,EAAEA,EAAER,KAAK5B,CAAC,MAAM6B,EAAEO,EAAEpC,EAAiH,OAA/GqT,EAAE,CAACgwF,UAAUtjG,EAAEsjG,UAAUC,gBAAgBzhG,EAAE0hG,eAAenhG,EAAEohG,OAAOzjG,EAAEyjG,OAAOjvD,QAAQx0C,EAAEw0C,cAASpnC,EAAEi2F,YAAY/vF,EAAQ,CAAoB,QAAnBlG,EAAEkG,EAAEkwF,gBAAwBlwF,EAAEiwF,gBAAgBtjG,EAAEmN,EAAEvL,KACnf5B,EAAEqT,EAAEkwF,eAAevjG,CAAC,CACpB,SAASmkG,GAAGh3F,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAEsL,EAAEi2F,YAAYF,IAAG,EAAG,IAAI9gG,EAAEP,EAAEyhG,gBAAgBhhG,EAAET,EAAE0hG,eAAet/F,EAAEpC,EAAE2hG,OAAOC,QAAQ,GAAG,OAAOx/F,EAAE,CAACpC,EAAE2hG,OAAOC,QAAQ,KAAK,IAAIn3C,EAAEroD,EAAEV,EAAE+oD,EAAE1qD,KAAK0qD,EAAE1qD,KAAK,KAAK,OAAOU,EAAEF,EAAEmB,EAAEjB,EAAEV,KAAK2B,EAAEjB,EAAEgqD,EAAE,IAAI/vB,EAAEpvB,EAAE66E,UAAU,OAAOzrD,KAAoBt4B,GAAhBs4B,EAAEA,EAAE6mE,aAAgBG,kBAAmBjhG,IAAI,OAAO2B,EAAEs4B,EAAE+mE,gBAAgB//F,EAAEU,EAAErC,KAAK2B,EAAEg5B,EAAEgnE,eAAej3C,GAAG,CAAC,GAAG,OAAOlqD,EAAE,CAAC,IAAIgiG,EAAEviG,EAAEwhG,UAA6B,IAAnB/gG,EAAE,EAAEi6B,EAAEh5B,EAAE+oD,EAAE,KAAKroD,EAAE7B,IAAI,CAAC,IAAIuZ,EAAE1X,EAAE4/F,KAAKxhG,EAAE4B,EAAE2/F,UAAU,IAAI7jG,EAAE4b,KAAKA,EAAE,CAAC,OAAO4gB,IAAIA,EAAEA,EAAE36B,KAAK,CAACgiG,UAAUvhG,EAAEwhG,KAAK,EAAEvkB,IAAIr7E,EAAEq7E,IAAIwkB,QAAQ7/F,EAAE6/F,QAAQ93C,SAAS/nD,EAAE+nD,SACvfpqD,KAAK,OAAOuL,EAAE,CAAC,IAAIpM,EAAEoM,EAAEtM,EAAEoD,EAAU,OAAR0X,EAAE3b,EAAEqC,EAAEgR,EAASxS,EAAEy+E,KAAK,KAAK,EAAc,GAAG,oBAAfv+E,EAAEF,EAAEijG,SAAiC,CAACM,EAAErjG,EAAEtB,KAAK4C,EAAE+hG,EAAEzoF,GAAG,MAAMxO,CAAC,CAACi3F,EAAErjG,EAAE,MAAMoM,EAAE,KAAK,EAAEpM,EAAEgV,OAAe,MAAThV,EAAEgV,MAAa,IAAI,KAAK,EAAsD,GAAG,QAA3C4F,EAAE,oBAAd5a,EAAEF,EAAEijG,SAAgC/iG,EAAEtB,KAAK4C,EAAE+hG,EAAEzoF,GAAG5a,SAAe,IAAS4a,EAAE,MAAMxO,EAAEi3F,EAAEtyF,EAAE,CAAC,EAAEsyF,EAAEzoF,GAAG,MAAMxO,EAAE,KAAK,EAAE+1F,IAAG,EAAG,CAAC,OAAOj/F,EAAE+nD,UAAU,IAAI/nD,EAAE4/F,OAAO12F,EAAE4I,OAAO,GAAe,QAAZ4F,EAAE9Z,EAAE0yC,SAAiB1yC,EAAE0yC,QAAQ,CAACtwC,GAAG0X,EAAE5c,KAAKkF,GAAG,MAAM5B,EAAE,CAACuhG,UAAUvhG,EAAEwhG,KAAKloF,EAAE2jE,IAAIr7E,EAAEq7E,IAAIwkB,QAAQ7/F,EAAE6/F,QAAQ93C,SAAS/nD,EAAE+nD,SAASpqD,KAAK,MAAM,OAAO26B,GAAGh5B,EAAEg5B,EAAEl6B,EAAEiqD,EAAE83C,GAAG7nE,EAAEA,EAAE36B,KAAKS,EAAEC,GAAGqZ,EAC3e,GAAG,QAAZ1X,EAAEA,EAAErC,MAAiB,IAAsB,QAAnBqC,EAAEpC,EAAE2hG,OAAOC,SAAiB,MAAex/F,GAAJ0X,EAAE1X,GAAMrC,KAAK+Z,EAAE/Z,KAAK,KAAKC,EAAE0hG,eAAe5nF,EAAE9Z,EAAE2hG,OAAOC,QAAQ,IAAI,EAAsG,GAA5F,OAAOlnE,IAAI+vB,EAAE83C,GAAGviG,EAAEwhG,UAAU/2C,EAAEzqD,EAAEyhG,gBAAgB//F,EAAE1B,EAAE0hG,eAAehnE,EAA4B,QAA1Bv8B,EAAE6B,EAAE2hG,OAAOR,aAAwB,CAACnhG,EAAE7B,EAAE,GAAGsC,GAAGT,EAAEgiG,KAAKhiG,EAAEA,EAAED,WAAWC,IAAI7B,EAAE,MAAM,OAAOoC,IAAIP,EAAE2hG,OAAOf,MAAM,GAAGvuC,IAAI5xD,EAAE6K,EAAEs1F,MAAMngG,EAAE6K,EAAEg7E,cAAcic,CAAC,CAAC,CAC9V,SAASC,GAAGl3F,EAAEnN,EAAEqT,GAA8B,GAA3BlG,EAAEnN,EAAEu0C,QAAQv0C,EAAEu0C,QAAQ,KAAQ,OAAOpnC,EAAE,IAAInN,EAAE,EAAEA,EAAEmN,EAAEvO,OAAOoB,IAAI,CAAC,IAAID,EAAEoN,EAAEnN,GAAG6B,EAAE9B,EAAEisD,SAAS,GAAG,OAAOnqD,EAAE,CAAqB,GAApB9B,EAAEisD,SAAS,KAAKjsD,EAAEsT,EAAK,oBAAoBxR,EAAE,MAAMoD,MAAM9E,EAAE,IAAI0B,IAAIA,EAAEpC,KAAKM,EAAE,CAAC,CAAC,CAAC,IAAIukG,IAAI,IAAIroB,EAAGsoB,WAAWC,KAAK,SAASC,GAAGt3F,EAAEnN,EAAEqT,EAAEtT,GAA8BsT,EAAE,QAAXA,EAAEA,EAAEtT,EAAtBC,EAAEmN,EAAEg7E,sBAAmC,IAAS90E,EAAErT,EAAE8R,EAAE,CAAC,EAAE9R,EAAEqT,GAAGlG,EAAEg7E,cAAc90E,EAAE,IAAIlG,EAAEs1F,QAAQt1F,EAAEi2F,YAAYC,UAAUhwF,EAAE,CAClX,IAAIqxF,GAAG,CAACC,UAAU,SAASx3F,GAAG,SAAOA,EAAEA,EAAEy3F,kBAAiB7c,GAAG56E,KAAKA,CAAI,EAAE03F,gBAAgB,SAAS13F,EAAEnN,EAAEqT,GAAGlG,EAAEA,EAAEy3F,gBAAgB,IAAI7kG,EAAEm1B,KAAIrzB,EAAEijG,GAAG33F,GAAG/K,EAAEuhG,GAAG5jG,EAAE8B,GAAGO,EAAE0hG,QAAQ9jG,OAAE,IAASqT,GAAG,OAAOA,IAAIjR,EAAE4pD,SAAS34C,GAAe,QAAZrT,EAAE+jG,GAAG52F,EAAE/K,EAAEP,MAAckjG,GAAG/kG,EAAEmN,EAAEtL,EAAE9B,GAAGkkG,GAAGjkG,EAAEmN,EAAEtL,GAAG,EAAEmjG,oBAAoB,SAAS73F,EAAEnN,EAAEqT,GAAGlG,EAAEA,EAAEy3F,gBAAgB,IAAI7kG,EAAEm1B,KAAIrzB,EAAEijG,GAAG33F,GAAG/K,EAAEuhG,GAAG5jG,EAAE8B,GAAGO,EAAEk9E,IAAI,EAAEl9E,EAAE0hG,QAAQ9jG,OAAE,IAASqT,GAAG,OAAOA,IAAIjR,EAAE4pD,SAAS34C,GAAe,QAAZrT,EAAE+jG,GAAG52F,EAAE/K,EAAEP,MAAckjG,GAAG/kG,EAAEmN,EAAEtL,EAAE9B,GAAGkkG,GAAGjkG,EAAEmN,EAAEtL,GAAG,EAAEojG,mBAAmB,SAAS93F,EAAEnN,GAAGmN,EAAEA,EAAEy3F,gBAAgB,IAAIvxF,EAAE6hB,KAAIn1B,EACnf+kG,GAAG33F,GAAGtL,EAAE8hG,GAAGtwF,EAAEtT,GAAG8B,EAAEy9E,IAAI,OAAE,IAASt/E,GAAG,OAAOA,IAAI6B,EAAEmqD,SAAShsD,GAAe,QAAZA,EAAE+jG,GAAG52F,EAAEtL,EAAE9B,MAAcglG,GAAG/kG,EAAEmN,EAAEpN,EAAEsT,GAAG4wF,GAAGjkG,EAAEmN,EAAEpN,GAAG,GAAG,SAASmlG,GAAG/3F,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,EAAEE,GAAiB,MAAM,oBAApB6K,EAAEA,EAAEw5E,WAAsCwe,sBAAsBh4F,EAAEg4F,sBAAsBplG,EAAEqC,EAAEE,IAAGtC,EAAEV,YAAWU,EAAEV,UAAU8lG,wBAAsBzN,GAAGtkF,EAAEtT,KAAK43F,GAAG91F,EAAEO,GAAK,CAC1S,SAASijG,GAAGl4F,EAAEnN,EAAEqT,GAAG,IAAItT,GAAE,EAAG8B,EAAEu8F,GAAOh8F,EAAEpC,EAAEslG,YAA2W,MAA/V,kBAAkBljG,GAAG,OAAOA,EAAEA,EAAEugG,GAAGvgG,IAAIP,EAAE+8F,GAAG5+F,GAAGu+F,GAAGF,GAAE/wF,QAAyBlL,GAAGrC,EAAE,QAAtBA,EAAEC,EAAEy+F,oBAA4B,IAAS1+F,GAAGy+F,GAAGrxF,EAAEtL,GAAGu8F,IAAIp+F,EAAE,IAAIA,EAAEqT,EAAEjR,GAAG+K,EAAEg7E,cAAc,OAAOnoF,EAAEulG,YAAO,IAASvlG,EAAEulG,MAAMvlG,EAAEulG,MAAM,KAAKvlG,EAAEwlG,QAAQd,GAAGv3F,EAAEw5E,UAAU3mF,EAAEA,EAAE4kG,gBAAgBz3F,EAAEpN,KAAIoN,EAAEA,EAAEw5E,WAAY+X,4CAA4C78F,EAAEsL,EAAEwxF,0CAA0Cv8F,GAAUpC,CAAC,CAC5Z,SAASylG,GAAGt4F,EAAEnN,EAAEqT,EAAEtT,GAAGoN,EAAEnN,EAAEulG,MAAM,oBAAoBvlG,EAAE0lG,2BAA2B1lG,EAAE0lG,0BAA0BryF,EAAEtT,GAAG,oBAAoBC,EAAE2lG,kCAAkC3lG,EAAE2lG,iCAAiCtyF,EAAEtT,GAAGC,EAAEulG,QAAQp4F,GAAGu3F,GAAGM,oBAAoBhlG,EAAEA,EAAEulG,MAAM,KAAK,CACpQ,SAASK,GAAGz4F,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAEsL,EAAEw5E,UAAU9kF,EAAEgkG,MAAMxyF,EAAExR,EAAE0jG,MAAMp4F,EAAEg7E,cAActmF,EAAE2iG,KAAKF,GAAGnB,GAAGh2F,GAAG,IAAI/K,EAAEpC,EAAEslG,YAAY,kBAAkBljG,GAAG,OAAOA,EAAEP,EAAEqC,QAAQy+F,GAAGvgG,IAAIA,EAAEw8F,GAAG5+F,GAAGu+F,GAAGF,GAAE/wF,QAAQzL,EAAEqC,QAAQs6F,GAAGrxF,EAAE/K,IAAIP,EAAE0jG,MAAMp4F,EAAEg7E,cAA2C,oBAA7B/lF,EAAEpC,EAAE8lG,4BAAiDrB,GAAGt3F,EAAEnN,EAAEoC,EAAEiR,GAAGxR,EAAE0jG,MAAMp4F,EAAEg7E,eAAe,oBAAoBnoF,EAAE8lG,0BAA0B,oBAAoBjkG,EAAEkkG,yBAAyB,oBAAoBlkG,EAAEmkG,2BAA2B,oBAAoBnkG,EAAEokG,qBAAqBjmG,EAAE6B,EAAE0jG,MACrf,oBAAoB1jG,EAAEokG,oBAAoBpkG,EAAEokG,qBAAqB,oBAAoBpkG,EAAEmkG,2BAA2BnkG,EAAEmkG,4BAA4BhmG,IAAI6B,EAAE0jG,OAAOb,GAAGM,oBAAoBnjG,EAAEA,EAAE0jG,MAAM,MAAMpB,GAAGh3F,EAAEkG,EAAExR,EAAE9B,GAAG8B,EAAE0jG,MAAMp4F,EAAEg7E,eAAe,oBAAoBtmF,EAAEqkG,oBAAoB/4F,EAAE4I,OAAO,QAAQ,CACpS,SAASowF,GAAGh5F,EAAEnN,EAAEqT,GAAW,GAAG,QAAXlG,EAAEkG,EAAE+yF,MAAiB,oBAAoBj5F,GAAG,kBAAkBA,EAAE,CAAC,GAAGkG,EAAEgzF,OAAO,CAAY,GAAXhzF,EAAEA,EAAEgzF,OAAY,CAAC,GAAG,IAAIhzF,EAAEisE,IAAI,MAAMr6E,MAAM9E,EAAE,MAAM,IAAIJ,EAAEsT,EAAEszE,SAAS,CAAC,IAAI5mF,EAAE,MAAMkF,MAAM9E,EAAE,IAAIgN,IAAI,IAAItL,EAAE9B,EAAEqC,EAAE,GAAG+K,EAAE,OAAG,OAAOnN,GAAG,OAAOA,EAAEomG,KAAK,oBAAoBpmG,EAAEomG,KAAKpmG,EAAEomG,IAAIE,aAAalkG,EAASpC,EAAEomG,KAAIpmG,EAAE,SAASmN,GAAG,IAAInN,EAAE6B,EAAE2iG,KAAKxkG,IAAIskG,KAAKtkG,EAAE6B,EAAE2iG,KAAK,CAAC,GAAG,OAAOr3F,SAASnN,EAAEoC,GAAGpC,EAAEoC,GAAG+K,CAAC,EAAEnN,EAAEsmG,WAAWlkG,EAASpC,EAAC,CAAC,GAAG,kBAAkBmN,EAAE,MAAMlI,MAAM9E,EAAE,MAAM,IAAIkT,EAAEgzF,OAAO,MAAMphG,MAAM9E,EAAE,IAAIgN,GAAI,CAAC,OAAOA,CAAC,CACre,SAASwtE,GAAGxtE,EAAEnN,GAAuC,MAApCmN,EAAE9N,OAAOC,UAAUF,SAASK,KAAKO,GAASiF,MAAM9E,EAAE,GAAG,oBAAoBgN,EAAE,qBAAqB9N,OAAO0uC,KAAK/tC,GAAGN,KAAK,MAAM,IAAIyN,GAAI,CAAC,SAASo5F,GAAGp5F,GAAiB,OAAOnN,EAAfmN,EAAEuyE,OAAevyE,EAAEsyE,SAAS,CACrM,SAAS+mB,GAAGr5F,GAAG,SAASnN,EAAEA,EAAEqT,GAAG,GAAGlG,EAAE,CAAC,IAAIpN,EAAEC,EAAE4gG,UAAU,OAAO7gG,GAAGC,EAAE4gG,UAAU,CAACvtF,GAAGrT,EAAE+V,OAAO,IAAIhW,EAAEhB,KAAKsU,EAAE,CAAC,CAAC,SAASA,EAAEA,EAAEtT,GAAG,IAAIoN,EAAE,OAAO,KAAK,KAAK,OAAOpN,GAAGC,EAAEqT,EAAEtT,GAAGA,EAAEA,EAAEwoF,QAAQ,OAAO,IAAI,CAAC,SAASxoF,EAAEoN,EAAEnN,GAAG,IAAImN,EAAE,IAAIi/E,IAAI,OAAOpsF,GAAG,OAAOA,EAAER,IAAI2N,EAAEkjD,IAAIrwD,EAAER,IAAIQ,GAAGmN,EAAEkjD,IAAIrwD,EAAEkG,MAAMlG,GAAGA,EAAEA,EAAEuoF,QAAQ,OAAOp7E,CAAC,CAAC,SAAStL,EAAEsL,EAAEnN,GAAsC,OAAnCmN,EAAEs5F,GAAGt5F,EAAEnN,IAAKkG,MAAM,EAAEiH,EAAEo7E,QAAQ,KAAYp7E,CAAC,CAAC,SAAS/K,EAAEpC,EAAEqT,EAAEtT,GAAa,OAAVC,EAAEkG,MAAMnG,EAAMoN,EAA6C,QAAjBpN,EAAEC,EAAEgoF,YAA6BjoF,EAAEA,EAAEmG,OAAQmN,GAAGrT,EAAE+V,OAAO,EAAE1C,GAAGtT,GAAEC,EAAE+V,OAAO,EAAS1C,IAArGrT,EAAE+V,OAAO,QAAQ1C,EAAqF,CAAC,SAAS/Q,EAAEtC,GACzd,OAD4dmN,GAC7f,OAAOnN,EAAEgoF,YAAYhoF,EAAE+V,OAAO,GAAU/V,CAAC,CAAC,SAASiE,EAAEkJ,EAAEnN,EAAEqT,EAAEtT,GAAG,OAAG,OAAOC,GAAG,IAAIA,EAAEs/E,MAAWt/E,EAAE0mG,GAAGrzF,EAAElG,EAAE+zF,KAAKnhG,IAAKkoF,OAAO96E,EAAEnN,KAAEA,EAAE6B,EAAE7B,EAAEqT,IAAK40E,OAAO96E,EAASnN,EAAC,CAAC,SAASssD,EAAEn/C,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAIqC,EAAEiR,EAAE7F,KAAK,OAAGpL,IAAI47E,EAAUzhD,EAAEpvB,EAAEnN,EAAEqT,EAAEwyF,MAAMlkB,SAAS5hF,EAAEsT,EAAE7T,KAAQ,OAAOQ,IAAIA,EAAEo0B,cAAchyB,GAAG,kBAAkBA,GAAG,OAAOA,GAAGA,EAAEo9E,WAAWf,GAAI8nB,GAAGnkG,KAAKpC,EAAEwN,QAAazN,EAAE8B,EAAE7B,EAAEqT,EAAEwyF,QAASO,IAAID,GAAGh5F,EAAEnN,EAAEqT,GAAGtT,EAAEkoF,OAAO96E,EAAEpN,KAAEA,EAAE4mG,GAAGtzF,EAAE7F,KAAK6F,EAAE7T,IAAI6T,EAAEwyF,MAAM,KAAK14F,EAAE+zF,KAAKnhG,IAAKqmG,IAAID,GAAGh5F,EAAEnN,EAAEqT,GAAGtT,EAAEkoF,OAAO96E,EAASpN,EAAC,CAAC,SAASwD,EAAE4J,EAAEnN,EAAEqT,EAAEtT,GAAG,OAAG,OAAOC,GAAG,IAAIA,EAAEs/E,KACjft/E,EAAE2mF,UAAUyG,gBAAgB/5E,EAAE+5E,eAAeptF,EAAE2mF,UAAUigB,iBAAiBvzF,EAAEuzF,iBAAsB5mG,EAAE6mG,GAAGxzF,EAAElG,EAAE+zF,KAAKnhG,IAAKkoF,OAAO96E,EAAEnN,KAAEA,EAAE6B,EAAE7B,EAAEqT,EAAEsuE,UAAU,KAAMsG,OAAO96E,EAASnN,EAAC,CAAC,SAASu8B,EAAEpvB,EAAEnN,EAAEqT,EAAEtT,EAAEqC,GAAG,OAAG,OAAOpC,GAAG,IAAIA,EAAEs/E,MAAWt/E,EAAE8mG,GAAGzzF,EAAElG,EAAE+zF,KAAKnhG,EAAEqC,IAAK6lF,OAAO96E,EAAEnN,KAAEA,EAAE6B,EAAE7B,EAAEqT,IAAK40E,OAAO96E,EAASnN,EAAC,CAAC,SAASokG,EAAEj3F,EAAEnN,EAAEqT,GAAG,GAAG,kBAAkBrT,GAAG,KAAKA,GAAG,kBAAkBA,EAAE,OAAOA,EAAE0mG,GAAG,GAAG1mG,EAAEmN,EAAE+zF,KAAK7tF,IAAK40E,OAAO96E,EAAEnN,EAAE,GAAG,kBAAkBA,GAAG,OAAOA,EAAE,CAAC,OAAOA,EAAEw/E,UAAU,KAAK1B,EAAG,OAAOzqE,EAAEszF,GAAG3mG,EAAEwN,KAAKxN,EAAER,IAAIQ,EAAE6lG,MAAM,KAAK14F,EAAE+zF,KAAK7tF,IACjf+yF,IAAID,GAAGh5F,EAAE,KAAKnN,GAAGqT,EAAE40E,OAAO96E,EAAEkG,EAAE,KAAK0qE,EAAG,OAAO/9E,EAAE6mG,GAAG7mG,EAAEmN,EAAE+zF,KAAK7tF,IAAK40E,OAAO96E,EAAEnN,EAAE,KAAKy+E,EAAiB,OAAO2lB,EAAEj3F,GAAEpN,EAAnBC,EAAE0/E,OAAmB1/E,EAAEy/E,UAAUpsE,GAAG,GAAG+tE,GAAGphF,IAAI4+E,EAAG5+E,GAAG,OAAOA,EAAE8mG,GAAG9mG,EAAEmN,EAAE+zF,KAAK7tF,EAAE,OAAQ40E,OAAO96E,EAAEnN,EAAE26E,GAAGxtE,EAAEnN,EAAE,CAAC,OAAO,IAAI,CAAC,SAAS2b,EAAExO,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAE,OAAO7B,EAAEA,EAAER,IAAI,KAAK,GAAG,kBAAkB6T,GAAG,KAAKA,GAAG,kBAAkBA,EAAE,OAAO,OAAOxR,EAAE,KAAKoC,EAAEkJ,EAAEnN,EAAE,GAAGqT,EAAEtT,GAAG,GAAG,kBAAkBsT,GAAG,OAAOA,EAAE,CAAC,OAAOA,EAAEmsE,UAAU,KAAK1B,EAAG,OAAOzqE,EAAE7T,MAAMqC,EAAEyqD,EAAEn/C,EAAEnN,EAAEqT,EAAEtT,GAAG,KAAK,KAAKg+E,EAAG,OAAO1qE,EAAE7T,MAAMqC,EAAE0B,EAAE4J,EAAEnN,EAAEqT,EAAEtT,GAAG,KAAK,KAAK0+E,EAAG,OAAiB9iE,EAAExO,EACpfnN,GADwe6B,EAAEwR,EAAEqsE,OACxersE,EAAEosE,UAAU1/E,GAAG,GAAGqhF,GAAG/tE,IAAIurE,EAAGvrE,GAAG,OAAO,OAAOxR,EAAE,KAAK06B,EAAEpvB,EAAEnN,EAAEqT,EAAEtT,EAAE,MAAM46E,GAAGxtE,EAAEkG,EAAE,CAAC,OAAO,IAAI,CAAC,SAAShR,EAAE8K,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,GAAG,kBAAkB9B,GAAG,KAAKA,GAAG,kBAAkBA,EAAE,OAAwBkE,EAAEjE,EAAnBmN,EAAEA,EAAEJ,IAAIsG,IAAI,KAAW,GAAGtT,EAAE8B,GAAG,GAAG,kBAAkB9B,GAAG,OAAOA,EAAE,CAAC,OAAOA,EAAEy/E,UAAU,KAAK1B,EAAG,OAA2CxxB,EAAEtsD,EAAtCmN,EAAEA,EAAEJ,IAAI,OAAOhN,EAAEP,IAAI6T,EAAEtT,EAAEP,MAAM,KAAWO,EAAE8B,GAAG,KAAKk8E,EAAG,OAA2Cx6E,EAAEvD,EAAtCmN,EAAEA,EAAEJ,IAAI,OAAOhN,EAAEP,IAAI6T,EAAEtT,EAAEP,MAAM,KAAWO,EAAE8B,GAAG,KAAK48E,EAAiB,OAAOp8E,EAAE8K,EAAEnN,EAAEqT,GAAEjR,EAAvBrC,EAAE2/E,OAAuB3/E,EAAE0/E,UAAU59E,GAAG,GAAGu/E,GAAGrhF,IAAI6+E,EAAG7+E,GAAG,OAAwBw8B,EAAEv8B,EAAnBmN,EAAEA,EAAEJ,IAAIsG,IAAI,KAAWtT,EAAE8B,EAAE,MAAM84E,GAAG36E,EAAED,EAAE,CAAC,OAAO,IAAI,CAC9f,SAASgB,EAAEc,EAAES,EAAE2B,EAAEqoD,GAAG,IAAI,IAAI/oD,EAAE,KAAKg5B,EAAE,KAAK3qB,EAAEtP,EAAE0B,EAAE1B,EAAE,EAAEyB,EAAE,KAAK,OAAO6N,GAAG5N,EAAEC,EAAErF,OAAOoF,IAAI,CAAC4N,EAAE1L,MAAMlC,GAAGD,EAAE6N,EAAEA,EAAE,MAAM7N,EAAE6N,EAAE22E,QAAQ,IAAIxnF,EAAE4a,EAAE9Z,EAAE+P,EAAE3N,EAAED,GAAGsoD,GAAG,GAAG,OAAOvrD,EAAE,CAAC,OAAO6Q,IAAIA,EAAE7N,GAAG,KAAK,CAACoJ,GAAGyE,GAAG,OAAO7Q,EAAEinF,WAAWhoF,EAAE6B,EAAE+P,GAAGtP,EAAEF,EAAErB,EAAEuB,EAAE0B,GAAG,OAAOu4B,EAAEh5B,EAAExC,EAAEw7B,EAAEgsD,QAAQxnF,EAAEw7B,EAAEx7B,EAAE6Q,EAAE7N,CAAC,CAAC,GAAGC,IAAIC,EAAErF,OAAO,OAAOyU,EAAExR,EAAE+P,GAAG4uF,IAAGN,GAAGr+F,EAAEmC,GAAGT,EAAE,GAAG,OAAOqO,EAAE,CAAC,KAAK5N,EAAEC,EAAErF,OAAOoF,IAAkB,QAAd4N,EAAEwyF,EAAEviG,EAAEoC,EAAED,GAAGsoD,MAAchqD,EAAEF,EAAEwP,EAAEtP,EAAE0B,GAAG,OAAOu4B,EAAEh5B,EAAEqO,EAAE2qB,EAAEgsD,QAAQ32E,EAAE2qB,EAAE3qB,GAAc,OAAX4uF,IAAGN,GAAGr+F,EAAEmC,GAAUT,CAAC,CAAC,IAAIqO,EAAE7R,EAAE8B,EAAE+P,GAAG5N,EAAEC,EAAErF,OAAOoF,IAAsB,QAAlBD,EAAE1B,EAAEuP,EAAE/P,EAAEmC,EAAEC,EAAED,GAAGsoD,MAAcn/C,GAAG,OAAOpJ,EAAEikF,WAAWp2E,EAAE66E,OAAO,OACvf1oF,EAAEvE,IAAIwE,EAAED,EAAEvE,KAAK8C,EAAEF,EAAE2B,EAAEzB,EAAE0B,GAAG,OAAOu4B,EAAEh5B,EAAEQ,EAAEw4B,EAAEgsD,QAAQxkF,EAAEw4B,EAAEx4B,GAAuD,OAApDoJ,GAAGyE,EAAE/E,SAAQ,SAASM,GAAG,OAAOnN,EAAE6B,EAAEsL,EAAE,IAAGqzF,IAAGN,GAAGr+F,EAAEmC,GAAUT,CAAC,CAAC,SAAS1C,EAAEgB,EAAES,EAAE2B,EAAEqoD,GAAG,IAAI/oD,EAAEq7E,EAAG36E,GAAG,GAAG,oBAAoBV,EAAE,MAAM0B,MAAM9E,EAAE,MAAkB,GAAG,OAAf8D,EAAEV,EAAE9D,KAAKwE,IAAc,MAAMgB,MAAM9E,EAAE,MAAM,IAAI,IAAIyR,EAAErO,EAAE,KAAKg5B,EAAEj6B,EAAE0B,EAAE1B,EAAE,EAAEyB,EAAE,KAAKhD,EAAEkD,EAAErC,OAAO,OAAO26B,IAAIx7B,EAAEiB,KAAKgC,IAAIjD,EAAEkD,EAAErC,OAAO,CAAC26B,EAAEr2B,MAAMlC,GAAGD,EAAEw4B,EAAEA,EAAE,MAAMx4B,EAAEw4B,EAAEgsD,QAAQ,IAAI1nF,EAAE8a,EAAE9Z,EAAE06B,EAAEx7B,EAAEO,MAAMgrD,GAAG,GAAG,OAAOzrD,EAAE,CAAC,OAAO07B,IAAIA,EAAEx4B,GAAG,KAAK,CAACoJ,GAAGovB,GAAG,OAAO17B,EAAEmnF,WAAWhoF,EAAE6B,EAAE06B,GAAGj6B,EAAEF,EAAEvB,EAAEyB,EAAE0B,GAAG,OAAO4N,EAAErO,EAAE1C,EAAE+Q,EAAE22E,QAAQ1nF,EAAE+Q,EAAE/Q,EAAE07B,EAAEx4B,CAAC,CAAC,GAAGhD,EAAEiB,KAAK,OAAOqR,EAAExR,EACzf06B,GAAGikE,IAAGN,GAAGr+F,EAAEmC,GAAGT,EAAE,GAAG,OAAOg5B,EAAE,CAAC,MAAMx7B,EAAEiB,KAAKgC,IAAIjD,EAAEkD,EAAErC,OAAwB,QAAjBb,EAAEqjG,EAAEviG,EAAEd,EAAEO,MAAMgrD,MAAchqD,EAAEF,EAAErB,EAAEuB,EAAE0B,GAAG,OAAO4N,EAAErO,EAAExC,EAAE6Q,EAAE22E,QAAQxnF,EAAE6Q,EAAE7Q,GAAc,OAAXy/F,IAAGN,GAAGr+F,EAAEmC,GAAUT,CAAC,CAAC,IAAIg5B,EAAEx8B,EAAE8B,EAAE06B,IAAIx7B,EAAEiB,KAAKgC,IAAIjD,EAAEkD,EAAErC,OAA4B,QAArBb,EAAEsB,EAAEk6B,EAAE16B,EAAEmC,EAAEjD,EAAEO,MAAMgrD,MAAcn/C,GAAG,OAAOpM,EAAEinF,WAAWzrD,EAAEkwD,OAAO,OAAO1rF,EAAEvB,IAAIwE,EAAEjD,EAAEvB,KAAK8C,EAAEF,EAAErB,EAAEuB,EAAE0B,GAAG,OAAO4N,EAAErO,EAAExC,EAAE6Q,EAAE22E,QAAQxnF,EAAE6Q,EAAE7Q,GAAuD,OAApDoM,GAAGovB,EAAE1vB,SAAQ,SAASM,GAAG,OAAOnN,EAAE6B,EAAEsL,EAAE,IAAGqzF,IAAGN,GAAGr+F,EAAEmC,GAAUT,CAAC,CAG3T,OAH4T,SAASm4F,EAAEvuF,EAAEpN,EAAEqC,EAAE6B,GAAkF,GAA/E,kBAAkB7B,GAAG,OAAOA,GAAGA,EAAEoL,OAAOwwE,GAAI,OAAO57E,EAAE5C,MAAM4C,EAAEA,EAAEyjG,MAAMlkB,UAAa,kBAAkBv/E,GAAG,OAAOA,EAAE,CAAC,OAAOA,EAAEo9E,UAAU,KAAK1B,EAAG3wE,EAAE,CAAC,IAAI,IAAIm/C,EAC7hBlqD,EAAE5C,IAAI+D,EAAExD,EAAE,OAAOwD,GAAG,CAAC,GAAGA,EAAE/D,MAAM8sD,EAAE,CAAU,IAATA,EAAElqD,EAAEoL,QAAYwwE,GAAI,GAAG,IAAIz6E,EAAE+7E,IAAI,CAACjsE,EAAElG,EAAE5J,EAAEglF,UAASxoF,EAAE8B,EAAE0B,EAAEnB,EAAEyjG,MAAMlkB,WAAYsG,OAAO96E,EAAEA,EAAEpN,EAAE,MAAMoN,CAAC,OAAO,GAAG5J,EAAE6wB,cAAck4B,GAAG,kBAAkBA,GAAG,OAAOA,GAAGA,EAAEkzB,WAAWf,GAAI8nB,GAAGj6C,KAAK/oD,EAAEiK,KAAK,CAAC6F,EAAElG,EAAE5J,EAAEglF,UAASxoF,EAAE8B,EAAE0B,EAAEnB,EAAEyjG,QAASO,IAAID,GAAGh5F,EAAE5J,EAAEnB,GAAGrC,EAAEkoF,OAAO96E,EAAEA,EAAEpN,EAAE,MAAMoN,CAAC,CAACkG,EAAElG,EAAE5J,GAAG,KAAK,CAAMvD,EAAEmN,EAAE5J,GAAGA,EAAEA,EAAEglF,OAAO,CAACnmF,EAAEoL,OAAOwwE,IAAIj+E,EAAE+mG,GAAG1kG,EAAEyjG,MAAMlkB,SAASx0E,EAAE+zF,KAAKj9F,EAAE7B,EAAE5C,MAAOyoF,OAAO96E,EAAEA,EAAEpN,KAAIkE,EAAE0iG,GAAGvkG,EAAEoL,KAAKpL,EAAE5C,IAAI4C,EAAEyjG,MAAM,KAAK14F,EAAE+zF,KAAKj9F,IAAKmiG,IAAID,GAAGh5F,EAAEpN,EAAEqC,GAAG6B,EAAEgkF,OAAO96E,EAAEA,EAAElJ,EAAE,CAAC,OAAO3B,EAAE6K,GAAG,KAAK4wE,EAAG5wE,EAAE,CAAC,IAAI5J,EAAEnB,EAAE5C,IAAI,OACzfO,GAAG,CAAC,GAAGA,EAAEP,MAAM+D,EAAC,CAAC,GAAG,IAAIxD,EAAEu/E,KAAKv/E,EAAE4mF,UAAUyG,gBAAgBhrF,EAAEgrF,eAAertF,EAAE4mF,UAAUigB,iBAAiBxkG,EAAEwkG,eAAe,CAACvzF,EAAElG,EAAEpN,EAAEwoF,UAASxoF,EAAE8B,EAAE9B,EAAEqC,EAAEu/E,UAAU,KAAMsG,OAAO96E,EAAEA,EAAEpN,EAAE,MAAMoN,CAAC,CAAMkG,EAAElG,EAAEpN,GAAG,KAAM,CAAKC,EAAEmN,EAAEpN,GAAGA,EAAEA,EAAEwoF,OAAO,EAACxoF,EAAE8mG,GAAGzkG,EAAE+K,EAAE+zF,KAAKj9F,IAAKgkF,OAAO96E,EAAEA,EAAEpN,CAAC,CAAC,OAAOuC,EAAE6K,GAAG,KAAKsxE,EAAG,OAAiBid,EAAEvuF,EAAEpN,GAAdwD,EAAEnB,EAAEs9E,OAAct9E,EAAEq9E,UAAUx7E,GAAG,GAAGm9E,GAAGh/E,GAAG,OAAOrB,EAAEoM,EAAEpN,EAAEqC,EAAE6B,GAAG,GAAG26E,EAAGx8E,GAAG,OAAOvB,EAAEsM,EAAEpN,EAAEqC,EAAE6B,GAAG02E,GAAGxtE,EAAE/K,EAAE,CAAC,MAAM,kBAAkBA,GAAG,KAAKA,GAAG,kBAAkBA,GAAGA,EAAE,GAAGA,EAAE,OAAOrC,GAAG,IAAIA,EAAEu/E,KAAKjsE,EAAElG,EAAEpN,EAAEwoF,UAASxoF,EAAE8B,EAAE9B,EAAEqC,IAAK6lF,OAAO96E,EAAEA,EAAEpN,IACnfsT,EAAElG,EAAEpN,IAAGA,EAAE2mG,GAAGtkG,EAAE+K,EAAE+zF,KAAKj9F,IAAKgkF,OAAO96E,EAAEA,EAAEpN,GAAGuC,EAAE6K,IAAIkG,EAAElG,EAAEpN,EAAE,CAAS,CAAC,IAAIgnG,GAAGP,IAAG,GAAIQ,GAAGR,IAAG,GAAIS,GAAG,CAAC,EAAEC,GAAGhJ,GAAG+I,IAAIE,GAAGjJ,GAAG+I,IAAIG,GAAGlJ,GAAG+I,IAAI,SAASI,GAAGl6F,GAAG,GAAGA,IAAI85F,GAAG,MAAMhiG,MAAM9E,EAAE,MAAM,OAAOgN,CAAC,CAAC,SAASm6F,GAAGn6F,EAAEnN,GAAyC,OAAtCm+F,GAAEiJ,GAAGpnG,GAAGm+F,GAAEgJ,GAAGh6F,GAAGgxF,GAAE+I,GAAGD,IAAI95F,EAAEnN,EAAEihC,UAAmB,KAAK,EAAE,KAAK,GAAGjhC,GAAGA,EAAEA,EAAEgF,iBAAiBhF,EAAEmiF,aAAaH,GAAG,KAAK,IAAI,MAAM,QAAkEhiF,EAAEgiF,GAArChiF,GAAvBmN,EAAE,IAAIA,EAAEnN,EAAE07B,WAAW17B,GAAMmiF,cAAc,KAAKh1E,EAAEA,EAAEqyB,SAAkBztB,GAAEm1F,IAAI/I,GAAE+I,GAAGlnG,EAAE,CAAC,SAASunG,KAAKx1F,GAAEm1F,IAAIn1F,GAAEo1F,IAAIp1F,GAAEq1F,GAAG,CACnb,SAASI,GAAGr6F,GAAGk6F,GAAGD,GAAG95F,SAAS,IAAItN,EAAEqnG,GAAGH,GAAG55F,SAAa+F,EAAE2uE,GAAGhiF,EAAEmN,EAAEK,MAAMxN,IAAIqT,IAAI8qF,GAAEgJ,GAAGh6F,GAAGgxF,GAAE+I,GAAG7zF,GAAG,CAAC,SAASo0F,GAAGt6F,GAAGg6F,GAAG75F,UAAUH,IAAI4E,GAAEm1F,IAAIn1F,GAAEo1F,IAAI,CAAC,IAAI9yC,GAAE6pC,GAAG,GACrJ,SAASwJ,GAAGv6F,GAAG,IAAI,IAAInN,EAAEmN,EAAE,OAAOnN,GAAG,CAAC,GAAG,KAAKA,EAAEs/E,IAAI,CAAC,IAAIjsE,EAAErT,EAAEmoF,cAAc,GAAG,OAAO90E,IAAmB,QAAfA,EAAEA,EAAE+0E,aAAqB,OAAO/0E,EAAE5K,MAAM,OAAO4K,EAAE5K,MAAM,OAAOzI,CAAC,MAAM,GAAG,KAAKA,EAAEs/E,UAAK,IAASt/E,EAAEshG,cAAcqG,aAAa,GAAG,KAAa,IAAR3nG,EAAE+V,OAAW,OAAO/V,OAAO,GAAG,OAAOA,EAAEqoC,MAAM,CAACroC,EAAEqoC,MAAM4/C,OAAOjoF,EAAEA,EAAEA,EAAEqoC,MAAM,QAAQ,CAAC,GAAGroC,IAAImN,EAAE,MAAM,KAAK,OAAOnN,EAAEuoF,SAAS,CAAC,GAAG,OAAOvoF,EAAEioF,QAAQjoF,EAAEioF,SAAS96E,EAAE,OAAO,KAAKnN,EAAEA,EAAEioF,MAAM,CAACjoF,EAAEuoF,QAAQN,OAAOjoF,EAAEioF,OAAOjoF,EAAEA,EAAEuoF,OAAO,CAAC,OAAO,IAAI,CAAC,IAAIqf,GAAG,GACrc,SAASC,KAAK,IAAI,IAAI16F,EAAE,EAAEA,EAAEy6F,GAAGhpG,OAAOuO,IAAIy6F,GAAGz6F,GAAG26F,8BAA8B,KAAKF,GAAGhpG,OAAO,CAAC,CAAC,IAAImpG,GAAGnqB,EAAGoqB,uBAAuBC,GAAGrqB,EAAGgQ,wBAAwBsa,GAAG,EAAEC,GAAE,KAAKC,GAAE,KAAKjnG,GAAE,KAAKknG,IAAG,EAAGC,IAAG,EAAGC,GAAG,EAAEC,GAAG,EAAE,SAASC,KAAI,MAAMxjG,MAAM9E,EAAE,KAAM,CAAC,SAASuoG,GAAGv7F,EAAEnN,GAAG,GAAG,OAAOA,EAAE,OAAM,EAAG,IAAI,IAAIqT,EAAE,EAAEA,EAAErT,EAAEpB,QAAQyU,EAAElG,EAAEvO,OAAOyU,IAAI,IAAIqkF,GAAGvqF,EAAEkG,GAAGrT,EAAEqT,IAAI,OAAM,EAAG,OAAM,CAAE,CAChW,SAASs1F,GAAGx7F,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,GAAyH,GAAtH8lG,GAAG9lG,EAAE+lG,GAAEnoG,EAAEA,EAAEmoF,cAAc,KAAKnoF,EAAEojG,YAAY,KAAKpjG,EAAEyiG,MAAM,EAAEsF,GAAGz6F,QAAQ,OAAOH,GAAG,OAAOA,EAAEg7E,cAAcygB,GAAGC,GAAG17F,EAAEkG,EAAEtT,EAAE8B,GAAMymG,GAAG,CAAClmG,EAAE,EAAE,EAAE,CAAY,GAAXkmG,IAAG,EAAGC,GAAG,EAAK,IAAInmG,EAAE,MAAM6C,MAAM9E,EAAE,MAAMiC,GAAG,EAAEjB,GAAEinG,GAAE,KAAKpoG,EAAEojG,YAAY,KAAK2E,GAAGz6F,QAAQw7F,GAAG37F,EAAEkG,EAAEtT,EAAE8B,EAAE,OAAOymG,GAAG,CAA+D,GAA9DP,GAAGz6F,QAAQy7F,GAAG/oG,EAAE,OAAOooG,IAAG,OAAOA,GAAExmG,KAAKsmG,GAAG,EAAE/mG,GAAEinG,GAAED,GAAE,KAAKE,IAAG,EAAMroG,EAAE,MAAMiF,MAAM9E,EAAE,MAAM,OAAOgN,CAAC,CAAC,SAAS67F,KAAK,IAAI77F,EAAE,IAAIo7F,GAAQ,OAALA,GAAG,EAASp7F,CAAC,CAC/Y,SAAS87F,KAAK,IAAI97F,EAAE,CAACg7E,cAAc,KAAKkb,UAAU,KAAK6F,UAAU,KAAKC,MAAM,KAAKvnG,KAAK,MAA8C,OAAxC,OAAOT,GAAEgnG,GAAEhgB,cAAchnF,GAAEgM,EAAEhM,GAAEA,GAAES,KAAKuL,EAAShM,EAAC,CAAC,SAASioG,KAAK,GAAG,OAAOhB,GAAE,CAAC,IAAIj7F,EAAEg7F,GAAEngB,UAAU76E,EAAE,OAAOA,EAAEA,EAAEg7E,cAAc,IAAI,MAAMh7E,EAAEi7F,GAAExmG,KAAK,IAAI5B,EAAE,OAAOmB,GAAEgnG,GAAEhgB,cAAchnF,GAAES,KAAK,GAAG,OAAO5B,EAAEmB,GAAEnB,EAAEooG,GAAEj7F,MAAM,CAAC,GAAG,OAAOA,EAAE,MAAMlI,MAAM9E,EAAE,MAAUgN,EAAE,CAACg7E,eAAPigB,GAAEj7F,GAAqBg7E,cAAckb,UAAU+E,GAAE/E,UAAU6F,UAAUd,GAAEc,UAAUC,MAAMf,GAAEe,MAAMvnG,KAAK,MAAM,OAAOT,GAAEgnG,GAAEhgB,cAAchnF,GAAEgM,EAAEhM,GAAEA,GAAES,KAAKuL,CAAC,CAAC,OAAOhM,EAAC,CACje,SAASkoG,GAAGl8F,EAAEnN,GAAG,MAAM,oBAAoBA,EAAEA,EAAEmN,GAAGnN,CAAC,CACnD,SAASspG,GAAGn8F,GAAG,IAAInN,EAAEopG,KAAK/1F,EAAErT,EAAEmpG,MAAM,GAAG,OAAO91F,EAAE,MAAMpO,MAAM9E,EAAE,MAAMkT,EAAEk2F,oBAAoBp8F,EAAE,IAAIpN,EAAEqoG,GAAEvmG,EAAE9B,EAAEmpG,UAAU9mG,EAAEiR,EAAEowF,QAAQ,GAAG,OAAOrhG,EAAE,CAAC,GAAG,OAAOP,EAAE,CAAC,IAAIS,EAAET,EAAED,KAAKC,EAAED,KAAKQ,EAAER,KAAKQ,EAAER,KAAKU,CAAC,CAACvC,EAAEmpG,UAAUrnG,EAAEO,EAAEiR,EAAEowF,QAAQ,IAAI,CAAC,GAAG,OAAO5hG,EAAE,CAACO,EAAEP,EAAED,KAAK7B,EAAEA,EAAEsjG,UAAU,IAAIp/F,EAAE3B,EAAE,KAAKgqD,EAAE,KAAK/oD,EAAEnB,EAAE,EAAE,CAAC,IAAIm6B,EAAEh5B,EAAEsgG,KAAK,IAAIqE,GAAG3rE,KAAKA,EAAE,OAAO+vB,IAAIA,EAAEA,EAAE1qD,KAAK,CAACiiG,KAAK,EAAE2F,OAAOjmG,EAAEimG,OAAOC,cAAclmG,EAAEkmG,cAAcC,WAAWnmG,EAAEmmG,WAAW9nG,KAAK,OAAO7B,EAAEwD,EAAEkmG,cAAclmG,EAAEmmG,WAAWv8F,EAAEpN,EAAEwD,EAAEimG,YAAY,CAAC,IAAIpF,EAAE,CAACP,KAAKtnE,EAAEitE,OAAOjmG,EAAEimG,OAAOC,cAAclmG,EAAEkmG,cACngBC,WAAWnmG,EAAEmmG,WAAW9nG,KAAK,MAAM,OAAO0qD,GAAGroD,EAAEqoD,EAAE83C,EAAE9hG,EAAEvC,GAAGusD,EAAEA,EAAE1qD,KAAKwiG,EAAE+D,GAAE1F,OAAOlmE,EAAE23B,IAAI33B,CAAC,CAACh5B,EAAEA,EAAE3B,IAAI,OAAO,OAAO2B,GAAGA,IAAInB,GAAG,OAAOkqD,EAAEhqD,EAAEvC,EAAEusD,EAAE1qD,KAAKqC,EAAEyzF,GAAG33F,EAAEC,EAAEmoF,iBAAiBua,IAAG,GAAI1iG,EAAEmoF,cAAcpoF,EAAEC,EAAEqjG,UAAU/gG,EAAEtC,EAAEkpG,UAAU58C,EAAEj5C,EAAEs2F,kBAAkB5pG,CAAC,CAAiB,GAAG,QAAnBoN,EAAEkG,EAAE2vF,aAAwB,CAACnhG,EAAEsL,EAAE,GAAG/K,EAAEP,EAAEgiG,KAAKsE,GAAE1F,OAAOrgG,EAAE8xD,IAAI9xD,EAAEP,EAAEA,EAAED,WAAWC,IAAIsL,EAAE,MAAM,OAAOtL,IAAIwR,EAAEovF,MAAM,GAAG,MAAM,CAACziG,EAAEmoF,cAAc90E,EAAEu2F,SAAS,CAC9X,SAASC,GAAG18F,GAAG,IAAInN,EAAEopG,KAAK/1F,EAAErT,EAAEmpG,MAAM,GAAG,OAAO91F,EAAE,MAAMpO,MAAM9E,EAAE,MAAMkT,EAAEk2F,oBAAoBp8F,EAAE,IAAIpN,EAAEsT,EAAEu2F,SAAS/nG,EAAEwR,EAAEowF,QAAQrhG,EAAEpC,EAAEmoF,cAAc,GAAG,OAAOtmF,EAAE,CAACwR,EAAEowF,QAAQ,KAAK,IAAInhG,EAAET,EAAEA,EAAED,KAAK,GAAGQ,EAAE+K,EAAE/K,EAAEE,EAAEknG,QAAQlnG,EAAEA,EAAEV,WAAWU,IAAIT,GAAG61F,GAAGt1F,EAAEpC,EAAEmoF,iBAAiBua,IAAG,GAAI1iG,EAAEmoF,cAAc/lF,EAAE,OAAOpC,EAAEkpG,YAAYlpG,EAAEqjG,UAAUjhG,GAAGiR,EAAEs2F,kBAAkBvnG,CAAC,CAAC,MAAM,CAACA,EAAErC,EAAE,CAAC,SAAS+pG,KAAK,CACpW,SAASrvC,GAAGttD,EAAEnN,GAAG,IAAIqT,EAAE80F,GAAEpoG,EAAEqpG,KAAKvnG,EAAE7B,IAAIoC,GAAGs1F,GAAG33F,EAAEooF,cAActmF,GAAsE,GAAnEO,IAAIrC,EAAEooF,cAActmF,EAAE6gG,IAAG,GAAI3iG,EAAEA,EAAEopG,MAAMY,GAAGC,GAAGzO,KAAK,KAAKloF,EAAEtT,EAAEoN,GAAG,CAACA,IAAOpN,EAAEkqG,cAAcjqG,GAAGoC,GAAG,OAAOjB,IAAuB,EAApBA,GAAEgnF,cAAc7I,IAAM,CAAuD,GAAtDjsE,EAAE0C,OAAO,KAAKm0F,GAAG,EAAEC,GAAG5O,KAAK,KAAKloF,EAAEtT,EAAE8B,EAAE7B,QAAG,EAAO,MAAS,OAAOoqG,GAAE,MAAMnlG,MAAM9E,EAAE,MAAM,KAAQ,GAAH+nG,KAAQmC,GAAGh3F,EAAErT,EAAE6B,EAAE,CAAC,OAAOA,CAAC,CAAC,SAASwoG,GAAGl9F,EAAEnN,EAAEqT,GAAGlG,EAAE4I,OAAO,MAAM5I,EAAE,CAAC88F,YAAYjqG,EAAEsB,MAAM+R,GAAmB,QAAhBrT,EAAEmoG,GAAE/E,cAAsBpjG,EAAE,CAACsqG,WAAW,KAAKC,OAAO,MAAMpC,GAAE/E,YAAYpjG,EAAEA,EAAEuqG,OAAO,CAACp9F,IAAgB,QAAXkG,EAAErT,EAAEuqG,QAAgBvqG,EAAEuqG,OAAO,CAACp9F,GAAGkG,EAAEtU,KAAKoO,EAAG,CAClf,SAASg9F,GAAGh9F,EAAEnN,EAAEqT,EAAEtT,GAAGC,EAAEsB,MAAM+R,EAAErT,EAAEiqG,YAAYlqG,EAAEyqG,GAAGxqG,IAAIyqG,GAAGt9F,EAAE,CAAC,SAAS68F,GAAG78F,EAAEnN,EAAEqT,GAAG,OAAOA,GAAE,WAAWm3F,GAAGxqG,IAAIyqG,GAAGt9F,EAAE,GAAE,CAAC,SAASq9F,GAAGr9F,GAAG,IAAInN,EAAEmN,EAAE88F,YAAY98F,EAAEA,EAAE7L,MAAM,IAAI,IAAI+R,EAAErT,IAAI,OAAO03F,GAAGvqF,EAAEkG,EAAoB,CAAjB,MAAMtT,GAAG,OAAM,CAAE,CAAC,CAAC,SAAS0qG,GAAGt9F,GAAG,IAAInN,EAAEijG,GAAG91F,EAAE,GAAG,OAAOnN,GAAG+kG,GAAG/kG,EAAEmN,EAAE,GAAG,EAAE,CAClQ,SAASu9F,GAAGv9F,GAAG,IAAInN,EAAEipG,KAA8M,MAAzM,oBAAoB97F,IAAIA,EAAEA,KAAKnN,EAAEmoF,cAAcnoF,EAAEqjG,UAAUl2F,EAAEA,EAAE,CAACs2F,QAAQ,KAAKT,YAAY,KAAKP,MAAM,EAAEmH,SAAS,KAAKL,oBAAoBF,GAAGM,kBAAkBx8F,GAAGnN,EAAEmpG,MAAMh8F,EAAEA,EAAEA,EAAEy8F,SAASe,GAAGpP,KAAK,KAAK4M,GAAEh7F,GAAS,CAACnN,EAAEmoF,cAAch7E,EAAE,CAC5P,SAAS+8F,GAAG/8F,EAAEnN,EAAEqT,EAAEtT,GAA8O,OAA3OoN,EAAE,CAACmyE,IAAInyE,EAAEzM,OAAOV,EAAEojD,QAAQ/vC,EAAEu3F,KAAK7qG,EAAE6B,KAAK,MAAsB,QAAhB5B,EAAEmoG,GAAE/E,cAAsBpjG,EAAE,CAACsqG,WAAW,KAAKC,OAAO,MAAMpC,GAAE/E,YAAYpjG,EAAEA,EAAEsqG,WAAWn9F,EAAEvL,KAAKuL,GAAmB,QAAfkG,EAAErT,EAAEsqG,YAAoBtqG,EAAEsqG,WAAWn9F,EAAEvL,KAAKuL,GAAGpN,EAAEsT,EAAEzR,KAAKyR,EAAEzR,KAAKuL,EAAEA,EAAEvL,KAAK7B,EAAEC,EAAEsqG,WAAWn9F,GAAWA,CAAC,CAAC,SAAS09F,KAAK,OAAOzB,KAAKjhB,aAAa,CAAC,SAAS2iB,GAAG39F,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAEonG,KAAKd,GAAEpyF,OAAO5I,EAAEtL,EAAEsmF,cAAc+hB,GAAG,EAAElqG,EAAEqT,OAAE,OAAO,IAAStT,EAAE,KAAKA,EAAE,CAC9Y,SAASgrG,GAAG59F,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAEunG,KAAKrpG,OAAE,IAASA,EAAE,KAAKA,EAAE,IAAIqC,OAAE,EAAO,GAAG,OAAOgmG,GAAE,CAAC,IAAI9lG,EAAE8lG,GAAEjgB,cAA0B,GAAZ/lF,EAAEE,EAAE8gD,QAAW,OAAOrjD,GAAG2oG,GAAG3oG,EAAEuC,EAAEsoG,MAAmC,YAA5B/oG,EAAEsmF,cAAc+hB,GAAGlqG,EAAEqT,EAAEjR,EAAErC,GAAU,CAACooG,GAAEpyF,OAAO5I,EAAEtL,EAAEsmF,cAAc+hB,GAAG,EAAElqG,EAAEqT,EAAEjR,EAAErC,EAAE,CAAC,SAASirG,GAAG79F,EAAEnN,GAAG,OAAO8qG,GAAG,QAAQ,EAAE39F,EAAEnN,EAAE,CAAC,SAAS+pG,GAAG58F,EAAEnN,GAAG,OAAO+qG,GAAG,KAAK,EAAE59F,EAAEnN,EAAE,CAAC,SAASirG,GAAG99F,EAAEnN,GAAG,OAAO+qG,GAAG,EAAE,EAAE59F,EAAEnN,EAAE,CAAC,SAASkrG,GAAG/9F,EAAEnN,GAAG,OAAO+qG,GAAG,EAAE,EAAE59F,EAAEnN,EAAE,CAChX,SAASmrG,GAAGh+F,EAAEnN,GAAG,MAAG,oBAAoBA,GAASmN,EAAEA,IAAInN,EAAEmN,GAAG,WAAWnN,EAAE,KAAK,GAAK,OAAOA,QAAG,IAASA,GAASmN,EAAEA,IAAInN,EAAEsN,QAAQH,EAAE,WAAWnN,EAAEsN,QAAQ,IAAI,QAA1E,CAA2E,CAAC,SAAS89F,GAAGj+F,EAAEnN,EAAEqT,GAA6C,OAA1CA,EAAE,OAAOA,QAAG,IAASA,EAAEA,EAAE5P,OAAO,CAAC0J,IAAI,KAAY49F,GAAG,EAAE,EAAEI,GAAG5P,KAAK,KAAKv7F,EAAEmN,GAAGkG,EAAE,CAAC,SAASg4F,KAAK,CAAC,SAASC,GAAGn+F,EAAEnN,GAAG,IAAIqT,EAAE+1F,KAAKppG,OAAE,IAASA,EAAE,KAAKA,EAAE,IAAID,EAAEsT,EAAE80E,cAAc,OAAG,OAAOpoF,GAAG,OAAOC,GAAG0oG,GAAG1oG,EAAED,EAAE,IAAWA,EAAE,IAAGsT,EAAE80E,cAAc,CAACh7E,EAAEnN,GAAUmN,EAAC,CAC7Z,SAASo+F,GAAGp+F,EAAEnN,GAAG,IAAIqT,EAAE+1F,KAAKppG,OAAE,IAASA,EAAE,KAAKA,EAAE,IAAID,EAAEsT,EAAE80E,cAAc,OAAG,OAAOpoF,GAAG,OAAOC,GAAG0oG,GAAG1oG,EAAED,EAAE,IAAWA,EAAE,IAAGoN,EAAEA,IAAIkG,EAAE80E,cAAc,CAACh7E,EAAEnN,GAAUmN,EAAC,CAAC,SAASq+F,GAAGr+F,EAAEnN,EAAEqT,GAAG,OAAG,KAAQ,GAAH60F,KAAc/6F,EAAEk2F,YAAYl2F,EAAEk2F,WAAU,EAAGX,IAAG,GAAIv1F,EAAEg7E,cAAc90E,IAAEqkF,GAAGrkF,EAAErT,KAAKqT,EAAE63E,KAAKid,GAAE1F,OAAOpvF,EAAE6gD,IAAI7gD,EAAElG,EAAEk2F,WAAU,GAAWrjG,EAAC,CAAC,SAASyrG,GAAGt+F,EAAEnN,GAAG,IAAIqT,EAAEk4E,GAAEA,GAAE,IAAIl4E,GAAG,EAAEA,EAAEA,EAAE,EAAElG,GAAE,GAAI,IAAIpN,EAAEkoG,GAAGna,WAAWma,GAAGna,WAAW,CAAC,EAAE,IAAI3gF,GAAE,GAAInN,GAA+B,CAA3B,QAAQurF,GAAEl4E,EAAE40F,GAAGna,WAAW/tF,CAAC,CAAC,CAAC,SAAS2rG,KAAK,OAAOtC,KAAKjhB,aAAa,CAC1d,SAASwjB,GAAGx+F,EAAEnN,EAAEqT,GAAG,IAAItT,EAAE+kG,GAAG33F,GAAkE,GAA/DkG,EAAE,CAACwwF,KAAK9jG,EAAEypG,OAAOn2F,EAAEo2F,eAAc,EAAGC,WAAW,KAAK9nG,KAAK,MAASgqG,GAAGz+F,GAAG0+F,GAAG7rG,EAAEqT,QAAQ,GAAiB,QAAdA,EAAE0vF,GAAG51F,EAAEnN,EAAEqT,EAAEtT,IAAY,CAAWglG,GAAG1xF,EAAElG,EAAEpN,EAAXm1B,MAAgB42E,GAAGz4F,EAAErT,EAAED,EAAE,CAAC,CAC/K,SAAS4qG,GAAGx9F,EAAEnN,EAAEqT,GAAG,IAAItT,EAAE+kG,GAAG33F,GAAGtL,EAAE,CAACgiG,KAAK9jG,EAAEypG,OAAOn2F,EAAEo2F,eAAc,EAAGC,WAAW,KAAK9nG,KAAK,MAAM,GAAGgqG,GAAGz+F,GAAG0+F,GAAG7rG,EAAE6B,OAAO,CAAC,IAAIO,EAAE+K,EAAE66E,UAAU,GAAG,IAAI76E,EAAEs1F,QAAQ,OAAOrgG,GAAG,IAAIA,EAAEqgG,QAAiC,QAAxBrgG,EAAEpC,EAAEupG,qBAA8B,IAAI,IAAIjnG,EAAEtC,EAAE2pG,kBAAkB1lG,EAAE7B,EAAEE,EAAE+Q,GAAqC,GAAlCxR,EAAE4nG,eAAc,EAAG5nG,EAAE6nG,WAAWzlG,EAAKyzF,GAAGzzF,EAAE3B,GAAG,CAAC,IAAIgqD,EAAEtsD,EAAEgjG,YAA+E,OAAnE,OAAO12C,GAAGzqD,EAAED,KAAKC,EAAEihG,GAAG9iG,KAAK6B,EAAED,KAAK0qD,EAAE1qD,KAAK0qD,EAAE1qD,KAAKC,QAAG7B,EAAEgjG,YAAYnhG,EAAQ,CAAoB,CAAlB,MAAM0B,GAAG,CAAwB,QAAd8P,EAAE0vF,GAAG51F,EAAEnN,EAAE6B,EAAE9B,MAAoBglG,GAAG1xF,EAAElG,EAAEpN,EAAb8B,EAAEqzB,MAAgB42E,GAAGz4F,EAAErT,EAAED,GAAG,CAAC,CAC/c,SAAS6rG,GAAGz+F,GAAG,IAAInN,EAAEmN,EAAE66E,UAAU,OAAO76E,IAAIg7F,IAAG,OAAOnoG,GAAGA,IAAImoG,EAAC,CAAC,SAAS0D,GAAG1+F,EAAEnN,GAAGsoG,GAAGD,IAAG,EAAG,IAAIh1F,EAAElG,EAAEs2F,QAAQ,OAAOpwF,EAAErT,EAAE4B,KAAK5B,GAAGA,EAAE4B,KAAKyR,EAAEzR,KAAKyR,EAAEzR,KAAK5B,GAAGmN,EAAEs2F,QAAQzjG,CAAC,CAAC,SAAS8rG,GAAG3+F,EAAEnN,EAAEqT,GAAG,GAAG,KAAO,QAAFA,GAAW,CAAC,IAAItT,EAAEC,EAAEyiG,MAAwBpvF,GAAlBtT,GAAGoN,EAAEw9E,aAAkB3qF,EAAEyiG,MAAMpvF,EAAEi4E,GAAGn+E,EAAEkG,EAAE,CAAC,CAC9P,IAAI01F,GAAG,CAACgD,YAAYpJ,GAAGqJ,YAAYvD,GAAEwD,WAAWxD,GAAEyD,UAAUzD,GAAE0D,oBAAoB1D,GAAE2D,mBAAmB3D,GAAE4D,gBAAgB5D,GAAE6D,QAAQ7D,GAAE8D,WAAW9D,GAAE+D,OAAO/D,GAAEgE,SAAShE,GAAEiE,cAAcjE,GAAEkE,iBAAiBlE,GAAEmE,cAAcnE,GAAEoE,iBAAiBpE,GAAEqE,qBAAqBrE,GAAEsE,MAAMtE,GAAEuE,0BAAyB,GAAIpE,GAAG,CAACmD,YAAYpJ,GAAGqJ,YAAY,SAAS7+F,EAAEnN,GAA4C,OAAzCipG,KAAK9gB,cAAc,CAACh7E,OAAE,IAASnN,EAAE,KAAKA,GAAUmN,CAAC,EAAE8+F,WAAWtJ,GAAGuJ,UAAUlB,GAAGmB,oBAAoB,SAASh/F,EAAEnN,EAAEqT,GAA6C,OAA1CA,EAAE,OAAOA,QAAG,IAASA,EAAEA,EAAE5P,OAAO,CAAC0J,IAAI,KAAY29F,GAAG,QAC3f,EAAEK,GAAG5P,KAAK,KAAKv7F,EAAEmN,GAAGkG,EAAE,EAAEg5F,gBAAgB,SAASl/F,EAAEnN,GAAG,OAAO8qG,GAAG,QAAQ,EAAE39F,EAAEnN,EAAE,EAAEosG,mBAAmB,SAASj/F,EAAEnN,GAAG,OAAO8qG,GAAG,EAAE,EAAE39F,EAAEnN,EAAE,EAAEssG,QAAQ,SAASn/F,EAAEnN,GAAG,IAAIqT,EAAE41F,KAAqD,OAAhDjpG,OAAE,IAASA,EAAE,KAAKA,EAAEmN,EAAEA,IAAIkG,EAAE80E,cAAc,CAACh7E,EAAEnN,GAAUmN,CAAC,EAAEo/F,WAAW,SAASp/F,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEkpG,KAAkM,OAA7LjpG,OAAE,IAASqT,EAAEA,EAAErT,GAAGA,EAAED,EAAEooF,cAAcpoF,EAAEsjG,UAAUrjG,EAAEmN,EAAE,CAACs2F,QAAQ,KAAKT,YAAY,KAAKP,MAAM,EAAEmH,SAAS,KAAKL,oBAAoBp8F,EAAEw8F,kBAAkB3pG,GAAGD,EAAEopG,MAAMh8F,EAAEA,EAAEA,EAAEy8F,SAAS+B,GAAGpQ,KAAK,KAAK4M,GAAEh7F,GAAS,CAACpN,EAAEooF,cAAch7E,EAAE,EAAEq/F,OAAO,SAASr/F,GAC3d,OAAdA,EAAE,CAACG,QAAQH,GAAhB87F,KAA4B9gB,cAAch7E,CAAC,EAAEs/F,SAAS/B,GAAGgC,cAAcrB,GAAGsB,iBAAiB,SAASx/F,GAAG,OAAO87F,KAAK9gB,cAAch7E,CAAC,EAAEy/F,cAAc,WAAW,IAAIz/F,EAAEu9F,IAAG,GAAI1qG,EAAEmN,EAAE,GAA6C,OAA1CA,EAAEs+F,GAAGlQ,KAAK,KAAKpuF,EAAE,IAAI87F,KAAK9gB,cAAch7E,EAAQ,CAACnN,EAAEmN,EAAE,EAAE0/F,iBAAiB,WAAW,EAAEC,qBAAqB,SAAS3/F,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEooG,GAAEtmG,EAAEonG,KAAK,GAAGzI,GAAE,CAAC,QAAG,IAASntF,EAAE,MAAMpO,MAAM9E,EAAE,MAAMkT,EAAEA,GAAG,KAAK,CAAO,GAANA,EAAErT,IAAO,OAAOoqG,GAAE,MAAMnlG,MAAM9E,EAAE,MAAM,KAAQ,GAAH+nG,KAAQmC,GAAGtqG,EAAEC,EAAEqT,EAAE,CAACxR,EAAEsmF,cAAc90E,EAAE,IAAIjR,EAAE,CAACd,MAAM+R,EAAE42F,YAAYjqG,GACvZ,OAD0Z6B,EAAEsnG,MAAM/mG,EAAE4oG,GAAGhB,GAAGzO,KAAK,KAAKx7F,EACpfqC,EAAE+K,GAAG,CAACA,IAAIpN,EAAEgW,OAAO,KAAKm0F,GAAG,EAAEC,GAAG5O,KAAK,KAAKx7F,EAAEqC,EAAEiR,EAAErT,QAAG,EAAO,MAAaqT,CAAC,EAAE05F,MAAM,WAAW,IAAI5/F,EAAE87F,KAAKjpG,EAAEoqG,GAAE6C,iBAAiB,GAAGzM,GAAE,CAAC,IAAIntF,EAAE4sF,GAAkDjgG,EAAE,IAAIA,EAAE,KAA9CqT,GAAH2sF,KAAU,GAAG,GAAG/V,GAAhB+V,IAAsB,IAAI5gG,SAAS,IAAIiU,GAAuB,GAAPA,EAAEk1F,QAAWvoG,GAAG,IAAIqT,EAAEjU,SAAS,KAAKY,GAAG,GAAG,MAAaA,EAAE,IAAIA,EAAE,KAAfqT,EAAEm1F,MAAmBppG,SAAS,IAAI,IAAI,OAAO+N,EAAEg7E,cAAcnoF,CAAC,EAAEgtG,0BAAyB,GAAInE,GAAG,CAACkD,YAAYpJ,GAAGqJ,YAAYV,GAAGW,WAAWtJ,GAAGuJ,UAAUnC,GAAGoC,oBAAoBf,GAAGgB,mBAAmBnB,GAAGoB,gBAAgBnB,GAAGoB,QAAQf,GAAGgB,WAAWjD,GAAGkD,OAAO3B,GAAG4B,SAAS,WAAW,OAAOnD,GAAGD,GAAG,EACrhBqD,cAAcrB,GAAGsB,iBAAiB,SAASx/F,GAAc,OAAOq+F,GAAZpC,KAAiBhB,GAAEjgB,cAAch7E,EAAE,EAAEy/F,cAAc,WAAgD,MAAM,CAArCtD,GAAGD,IAAI,GAAKD,KAAKjhB,cAAyB,EAAE0kB,iBAAiB/C,GAAGgD,qBAAqBryC,GAAGsyC,MAAMrB,GAAGsB,0BAAyB,GAAIlE,GAAG,CAACiD,YAAYpJ,GAAGqJ,YAAYV,GAAGW,WAAWtJ,GAAGuJ,UAAUnC,GAAGoC,oBAAoBf,GAAGgB,mBAAmBnB,GAAGoB,gBAAgBnB,GAAGoB,QAAQf,GAAGgB,WAAW1C,GAAG2C,OAAO3B,GAAG4B,SAAS,WAAW,OAAO5C,GAAGR,GAAG,EAAEqD,cAAcrB,GAAGsB,iBAAiB,SAASx/F,GAAG,IAAInN,EAAEopG,KAAK,OAAO,OACzfhB,GAAEpoG,EAAEmoF,cAAch7E,EAAEq+F,GAAGxrG,EAAEooG,GAAEjgB,cAAch7E,EAAE,EAAEy/F,cAAc,WAAgD,MAAM,CAArC/C,GAAGR,IAAI,GAAKD,KAAKjhB,cAAyB,EAAE0kB,iBAAiB/C,GAAGgD,qBAAqBryC,GAAGsyC,MAAMrB,GAAGsB,0BAAyB,GAAI,SAASE,GAAG//F,EAAEnN,GAAG,IAAI,IAAIqT,EAAE,GAAGtT,EAAEC,EAAE,GAAGqT,GAAGgsE,EAAGt/E,GAAGA,EAAEA,EAAEkoF,aAAaloF,GAAG,IAAI8B,EAAEwR,CAAgE,CAA9D,MAAMjR,GAAGP,EAAE,6BAA6BO,EAAE8mD,QAAQ,KAAK9mD,EAAEqzC,KAAK,CAAC,MAAM,CAACn0C,MAAM6L,EAAEg4C,OAAOnlD,EAAEy1C,MAAM5zC,EAAEsrG,OAAO,KAAK,CAAC,SAASC,GAAGjgG,EAAEnN,EAAEqT,GAAG,MAAM,CAAC/R,MAAM6L,EAAEg4C,OAAO,KAAK1P,MAAM,MAAMpiC,EAAEA,EAAE,KAAK85F,OAAO,MAAMntG,EAAEA,EAAE,KAAK,CACzd,SAASqtG,GAAGlgG,EAAEnN,GAAG,IAAIyhD,QAAQja,MAAMxnC,EAAEsB,MAAgD,CAAzC,MAAM+R,GAAGw6B,YAAW,WAAW,MAAMx6B,CAAE,GAAE,CAAC,CAAC,IAAIi6F,GAAG,oBAAoBC,QAAQA,QAAQnhB,IAAI,SAASohB,GAAGrgG,EAAEnN,EAAEqT,IAAGA,EAAEswF,IAAI,EAAEtwF,IAAKisE,IAAI,EAAEjsE,EAAEywF,QAAQ,CAAC7vE,QAAQ,MAAM,IAAIl0B,EAAEC,EAAEsB,MAAsD,OAAhD+R,EAAE24C,SAAS,WAAWyhD,KAAKA,IAAG,EAAGC,GAAG3tG,GAAGstG,GAAGlgG,EAAEnN,EAAE,EAASqT,CAAC,CAC3Q,SAASs6F,GAAGxgG,EAAEnN,EAAEqT,IAAGA,EAAEswF,IAAI,EAAEtwF,IAAKisE,IAAI,EAAE,IAAIv/E,EAAEoN,EAAEK,KAAKogG,yBAAyB,GAAG,oBAAoB7tG,EAAE,CAAC,IAAI8B,EAAE7B,EAAEsB,MAAM+R,EAAEywF,QAAQ,WAAW,OAAO/jG,EAAE8B,EAAE,EAAEwR,EAAE24C,SAAS,WAAWqhD,GAAGlgG,EAAEnN,EAAE,CAAC,CAAC,IAAIoC,EAAE+K,EAAEw5E,UAA8O,OAApO,OAAOvkF,GAAG,oBAAoBA,EAAEyrG,oBAAoBx6F,EAAE24C,SAAS,WAAWqhD,GAAGlgG,EAAEnN,GAAG,oBAAoBD,IAAI,OAAO+tG,GAAGA,GAAG,IAAI1xB,IAAI,CAAC57E,OAAOstG,GAAG/nE,IAAIvlC,OAAO,IAAI6S,EAAErT,EAAEy1C,MAAMj1C,KAAKqtG,kBAAkB7tG,EAAEsB,MAAM,CAACysG,eAAe,OAAO16F,EAAEA,EAAE,IAAI,GAAUA,CAAC,CACnb,SAAS26F,GAAG7gG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEoN,EAAE8gG,UAAU,GAAG,OAAOluG,EAAE,CAACA,EAAEoN,EAAE8gG,UAAU,IAAIX,GAAG,IAAIzrG,EAAE,IAAIu6E,IAAIr8E,EAAEswD,IAAIrwD,EAAE6B,EAAE,WAAiB,KAAXA,EAAE9B,EAAEgN,IAAI/M,MAAgB6B,EAAE,IAAIu6E,IAAIr8E,EAAEswD,IAAIrwD,EAAE6B,IAAIA,EAAEqrC,IAAI75B,KAAKxR,EAAEkkC,IAAI1yB,GAAGlG,EAAE+gG,GAAG3S,KAAK,KAAKpuF,EAAEnN,EAAEqT,GAAGrT,EAAEiC,KAAKkL,EAAEA,GAAG,CAAC,SAASghG,GAAGhhG,GAAG,EAAE,CAAC,IAAInN,EAA4E,IAAvEA,EAAE,KAAKmN,EAAEmyE,OAAsBt/E,EAAE,QAApBA,EAAEmN,EAAEg7E,gBAAyB,OAAOnoF,EAAEooF,YAAuBpoF,EAAE,OAAOmN,EAAEA,EAAEA,EAAE86E,MAAM,OAAO,OAAO96E,GAAG,OAAO,IAAI,CAChW,SAASihG,GAAGjhG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,OAAG,KAAY,EAAPsL,EAAE+zF,OAAe/zF,IAAInN,EAAEmN,EAAE4I,OAAO,OAAO5I,EAAE4I,OAAO,IAAI1C,EAAE0C,OAAO,OAAO1C,EAAE0C,QAAQ,MAAM,IAAI1C,EAAEisE,MAAM,OAAOjsE,EAAE20E,UAAU30E,EAAEisE,IAAI,KAAIt/E,EAAE2jG,IAAI,EAAE,IAAKrkB,IAAI,EAAEykB,GAAG1wF,EAAErT,EAAE,KAAKqT,EAAEovF,OAAO,GAAGt1F,IAAEA,EAAE4I,OAAO,MAAM5I,EAAEs1F,MAAM5gG,EAASsL,EAAC,CAAC,IAAIkhG,GAAGzwB,EAAG0wB,kBAAkB5L,IAAG,EAAG,SAAS6L,GAAGphG,EAAEnN,EAAEqT,EAAEtT,GAAGC,EAAEqoC,MAAM,OAAOl7B,EAAE65F,GAAGhnG,EAAE,KAAKqT,EAAEtT,GAAGgnG,GAAG/mG,EAAEmN,EAAEk7B,MAAMh1B,EAAEtT,EAAE,CACnV,SAASyuG,GAAGrhG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAGwR,EAAEA,EAAE+oC,OAAO,IAAIh6C,EAAEpC,EAAEomG,IAAqC,OAAjC9D,GAAGtiG,EAAE6B,GAAG9B,EAAE4oG,GAAGx7F,EAAEnN,EAAEqT,EAAEtT,EAAEqC,EAAEP,GAAGwR,EAAE21F,KAAQ,OAAO77F,GAAIu1F,IAA2ElC,IAAGntF,GAAG+sF,GAAGpgG,GAAGA,EAAE+V,OAAO,EAAEw4F,GAAGphG,EAAEnN,EAAED,EAAE8B,GAAU7B,EAAEqoC,QAA7GroC,EAAEojG,YAAYj2F,EAAEi2F,YAAYpjG,EAAE+V,QAAQ,KAAK5I,EAAEs1F,QAAQ5gG,EAAE4sG,GAAGthG,EAAEnN,EAAE6B,GAAoD,CACzN,SAAS6sG,GAAGvhG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,GAAG,OAAOsL,EAAE,CAAC,IAAI/K,EAAEiR,EAAE7F,KAAK,MAAG,oBAAoBpL,GAAIusG,GAAGvsG,SAAI,IAASA,EAAEw/F,cAAc,OAAOvuF,EAAEu7F,cAAS,IAASv7F,EAAEuuF,eAAoDz0F,EAAEw5F,GAAGtzF,EAAE7F,KAAK,KAAKzN,EAAEC,EAAEA,EAAEkhG,KAAKr/F,IAAKukG,IAAIpmG,EAAEomG,IAAIj5F,EAAE86E,OAAOjoF,EAASA,EAAEqoC,MAAMl7B,IAArGnN,EAAEs/E,IAAI,GAAGt/E,EAAEwN,KAAKpL,EAAEysG,GAAG1hG,EAAEnN,EAAEoC,EAAErC,EAAE8B,GAAyE,CAAW,GAAVO,EAAE+K,EAAEk7B,MAAS,KAAKl7B,EAAEs1F,MAAM5gG,GAAG,CAAC,IAAIS,EAAEF,EAAEk/F,cAA0C,IAAhBjuF,EAAE,QAAdA,EAAEA,EAAEu7F,SAAmBv7F,EAAEskF,IAAQr1F,EAAEvC,IAAIoN,EAAEi5F,MAAMpmG,EAAEomG,IAAI,OAAOqI,GAAGthG,EAAEnN,EAAE6B,EAAE,CAA6C,OAA5C7B,EAAE+V,OAAO,GAAE5I,EAAEs5F,GAAGrkG,EAAErC,IAAKqmG,IAAIpmG,EAAEomG,IAAIj5F,EAAE86E,OAAOjoF,EAASA,EAAEqoC,MAAMl7B,CAAC,CAC1b,SAAS0hG,GAAG1hG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,GAAG,OAAOsL,EAAE,CAAC,IAAI/K,EAAE+K,EAAEm0F,cAAc,GAAG3J,GAAGv1F,EAAErC,IAAIoN,EAAEi5F,MAAMpmG,EAAEomG,IAAI,IAAG1D,IAAG,EAAG1iG,EAAE8gG,aAAa/gG,EAAEqC,EAAE,KAAK+K,EAAEs1F,MAAM5gG,GAAsC,OAAO7B,EAAEyiG,MAAMt1F,EAAEs1F,MAAMgM,GAAGthG,EAAEnN,EAAE6B,GAAjE,KAAa,OAARsL,EAAE4I,SAAgB2sF,IAAG,EAAyC,EAAC,OAAOoM,GAAG3hG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAE,CACxN,SAASktG,GAAG5hG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEC,EAAE8gG,aAAaj/F,EAAE9B,EAAE4hF,SAASv/E,EAAE,OAAO+K,EAAEA,EAAEg7E,cAAc,KAAK,GAAG,WAAWpoF,EAAEmhG,KAAK,GAAG,KAAY,EAAPlhG,EAAEkhG,MAAQlhG,EAAEmoF,cAAc,CAAC6mB,UAAU,EAAEC,UAAU,KAAKC,YAAY,MAAM/Q,GAAEgR,GAAGC,IAAIA,IAAI/7F,MAAM,CAAC,GAAG,KAAO,WAAFA,GAAc,OAAOlG,EAAE,OAAO/K,EAAEA,EAAE4sG,UAAU37F,EAAEA,EAAErT,EAAEyiG,MAAMziG,EAAEqiG,WAAW,WAAWriG,EAAEmoF,cAAc,CAAC6mB,UAAU7hG,EAAE8hG,UAAU,KAAKC,YAAY,MAAMlvG,EAAEojG,YAAY,KAAKjF,GAAEgR,GAAGC,IAAIA,IAAIjiG,EAAE,KAAKnN,EAAEmoF,cAAc,CAAC6mB,UAAU,EAAEC,UAAU,KAAKC,YAAY,MAAMnvG,EAAE,OAAOqC,EAAEA,EAAE4sG,UAAU37F,EAAE8qF,GAAEgR,GAAGC,IAAIA,IAAIrvG,CAAC,MAAM,OACtfqC,GAAGrC,EAAEqC,EAAE4sG,UAAU37F,EAAErT,EAAEmoF,cAAc,MAAMpoF,EAAEsT,EAAE8qF,GAAEgR,GAAGC,IAAIA,IAAIrvG,EAAc,OAAZwuG,GAAGphG,EAAEnN,EAAE6B,EAAEwR,GAAUrT,EAAEqoC,KAAK,CAAC,SAASgnE,GAAGliG,EAAEnN,GAAG,IAAIqT,EAAErT,EAAEomG,KAAO,OAAOj5F,GAAG,OAAOkG,GAAG,OAAOlG,GAAGA,EAAEi5F,MAAM/yF,KAAErT,EAAE+V,OAAO,IAAI/V,EAAE+V,OAAO,QAAO,CAAC,SAAS+4F,GAAG3hG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,IAAIO,EAAEw8F,GAAGvrF,GAAGkrF,GAAGF,GAAE/wF,QAAmD,OAA3ClL,EAAEo8F,GAAGx+F,EAAEoC,GAAGkgG,GAAGtiG,EAAE6B,GAAGwR,EAAEs1F,GAAGx7F,EAAEnN,EAAEqT,EAAEtT,EAAEqC,EAAEP,GAAG9B,EAAEipG,KAAQ,OAAO77F,GAAIu1F,IAA2ElC,IAAGzgG,GAAGqgG,GAAGpgG,GAAGA,EAAE+V,OAAO,EAAEw4F,GAAGphG,EAAEnN,EAAEqT,EAAExR,GAAU7B,EAAEqoC,QAA7GroC,EAAEojG,YAAYj2F,EAAEi2F,YAAYpjG,EAAE+V,QAAQ,KAAK5I,EAAEs1F,QAAQ5gG,EAAE4sG,GAAGthG,EAAEnN,EAAE6B,GAAoD,CACla,SAASytG,GAAGniG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,GAAG+8F,GAAGvrF,GAAG,CAAC,IAAIjR,GAAE,EAAG88F,GAAGl/F,EAAE,MAAMoC,GAAE,EAAW,GAARkgG,GAAGtiG,EAAE6B,GAAM,OAAO7B,EAAE2mF,UAAU4oB,GAAGpiG,EAAEnN,GAAGqlG,GAAGrlG,EAAEqT,EAAEtT,GAAG6lG,GAAG5lG,EAAEqT,EAAEtT,EAAE8B,GAAG9B,GAAE,OAAQ,GAAG,OAAOoN,EAAE,CAAC,IAAI7K,EAAEtC,EAAE2mF,UAAU1iF,EAAEjE,EAAEshG,cAAch/F,EAAEujG,MAAM5hG,EAAE,IAAIqoD,EAAEhqD,EAAE4B,QAAQX,EAAE8P,EAAEiyF,YAAY,kBAAkB/hG,GAAG,OAAOA,EAAEA,EAAEo/F,GAAGp/F,GAAyBA,EAAEi7F,GAAGx+F,EAA1BuD,EAAEq7F,GAAGvrF,GAAGkrF,GAAGF,GAAE/wF,SAAmB,IAAIivB,EAAElpB,EAAEyyF,yBAAyB1B,EAAE,oBAAoB7nE,GAAG,oBAAoBj6B,EAAEyjG,wBAAwB3B,GAAG,oBAAoB9hG,EAAEqjG,kCAAkC,oBAAoBrjG,EAAEojG,4BAC1dzhG,IAAIlE,GAAGusD,IAAI/oD,IAAIkiG,GAAGzlG,EAAEsC,EAAEvC,EAAEwD,GAAG2/F,IAAG,EAAG,IAAIvnF,EAAE3b,EAAEmoF,cAAc7lF,EAAEijG,MAAM5pF,EAAEwoF,GAAGnkG,EAAED,EAAEuC,EAAET,GAAGyqD,EAAEtsD,EAAEmoF,cAAclkF,IAAIlE,GAAG4b,IAAI2wC,GAAGgyC,GAAGhxF,SAAS41F,IAAI,oBAAoB3mE,IAAIkoE,GAAGzkG,EAAEqT,EAAEkpB,EAAEx8B,GAAGusD,EAAEtsD,EAAEmoF,gBAAgBlkF,EAAEi/F,IAAIgC,GAAGllG,EAAEqT,EAAEpP,EAAElE,EAAE4b,EAAE2wC,EAAE/oD,KAAK6gG,GAAG,oBAAoB9hG,EAAE0jG,2BAA2B,oBAAoB1jG,EAAE2jG,qBAAqB,oBAAoB3jG,EAAE2jG,oBAAoB3jG,EAAE2jG,qBAAqB,oBAAoB3jG,EAAE0jG,2BAA2B1jG,EAAE0jG,6BAA6B,oBAAoB1jG,EAAE4jG,oBAAoBlmG,EAAE+V,OAAO,WAClf,oBAAoBzT,EAAE4jG,oBAAoBlmG,EAAE+V,OAAO,SAAS/V,EAAEshG,cAAcvhG,EAAEC,EAAEmoF,cAAc77B,GAAGhqD,EAAEujG,MAAM9lG,EAAEuC,EAAEijG,MAAMj5C,EAAEhqD,EAAE4B,QAAQX,EAAExD,EAAEkE,IAAI,oBAAoB3B,EAAE4jG,oBAAoBlmG,EAAE+V,OAAO,SAAShW,GAAE,EAAG,KAAK,CAACuC,EAAEtC,EAAE2mF,UAAU+c,GAAGv2F,EAAEnN,GAAGiE,EAAEjE,EAAEshG,cAAc/9F,EAAEvD,EAAEwN,OAAOxN,EAAEo0B,YAAYnwB,EAAE09F,GAAG3hG,EAAEwN,KAAKvJ,GAAG3B,EAAEujG,MAAMtiG,EAAE6gG,EAAEpkG,EAAE8gG,aAAanlF,EAAErZ,EAAE4B,QAAwB,kBAAhBooD,EAAEj5C,EAAEiyF,cAAiC,OAAOh5C,EAAEA,EAAEq2C,GAAGr2C,GAAyBA,EAAEkyC,GAAGx+F,EAA1BssD,EAAEsyC,GAAGvrF,GAAGkrF,GAAGF,GAAE/wF,SAAmB,IAAIjL,EAAEgR,EAAEyyF,0BAA0BvpE,EAAE,oBAAoBl6B,GAAG,oBAAoBC,EAAEyjG,0BAC9e,oBAAoBzjG,EAAEqjG,kCAAkC,oBAAoBrjG,EAAEojG,4BAA4BzhG,IAAImgG,GAAGzoF,IAAI2wC,IAAIm5C,GAAGzlG,EAAEsC,EAAEvC,EAAEusD,GAAG42C,IAAG,EAAGvnF,EAAE3b,EAAEmoF,cAAc7lF,EAAEijG,MAAM5pF,EAAEwoF,GAAGnkG,EAAED,EAAEuC,EAAET,GAAG,IAAId,EAAEf,EAAEmoF,cAAclkF,IAAImgG,GAAGzoF,IAAI5a,GAAGu9F,GAAGhxF,SAAS41F,IAAI,oBAAoB7gG,IAAIoiG,GAAGzkG,EAAEqT,EAAEhR,EAAEtC,GAAGgB,EAAEf,EAAEmoF,gBAAgB5kF,EAAE2/F,IAAIgC,GAAGllG,EAAEqT,EAAE9P,EAAExD,EAAE4b,EAAE5a,EAAEurD,KAAI,IAAK/vB,GAAG,oBAAoBj6B,EAAEktG,4BAA4B,oBAAoBltG,EAAEmtG,sBAAsB,oBAAoBntG,EAAEmtG,qBAAqBntG,EAAEmtG,oBAAoB1vG,EAAEgB,EAAEurD,GAAG,oBAAoBhqD,EAAEktG,4BAC5fltG,EAAEktG,2BAA2BzvG,EAAEgB,EAAEurD,IAAI,oBAAoBhqD,EAAEotG,qBAAqB1vG,EAAE+V,OAAO,GAAG,oBAAoBzT,EAAEyjG,0BAA0B/lG,EAAE+V,OAAO,QAAQ,oBAAoBzT,EAAEotG,oBAAoBzrG,IAAIkJ,EAAEm0F,eAAe3lF,IAAIxO,EAAEg7E,gBAAgBnoF,EAAE+V,OAAO,GAAG,oBAAoBzT,EAAEyjG,yBAAyB9hG,IAAIkJ,EAAEm0F,eAAe3lF,IAAIxO,EAAEg7E,gBAAgBnoF,EAAE+V,OAAO,MAAM/V,EAAEshG,cAAcvhG,EAAEC,EAAEmoF,cAAcpnF,GAAGuB,EAAEujG,MAAM9lG,EAAEuC,EAAEijG,MAAMxkG,EAAEuB,EAAE4B,QAAQooD,EAAEvsD,EAAEwD,IAAI,oBAAoBjB,EAAEotG,oBAAoBzrG,IAAIkJ,EAAEm0F,eAAe3lF,IACjfxO,EAAEg7E,gBAAgBnoF,EAAE+V,OAAO,GAAG,oBAAoBzT,EAAEyjG,yBAAyB9hG,IAAIkJ,EAAEm0F,eAAe3lF,IAAIxO,EAAEg7E,gBAAgBnoF,EAAE+V,OAAO,MAAMhW,GAAE,EAAG,CAAC,OAAO4vG,GAAGxiG,EAAEnN,EAAEqT,EAAEtT,EAAEqC,EAAEP,EAAE,CACnK,SAAS8tG,GAAGxiG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,GAAGitG,GAAGliG,EAAEnN,GAAG,IAAIsC,EAAE,KAAa,IAARtC,EAAE+V,OAAW,IAAIhW,IAAIuC,EAAE,OAAOT,GAAGu9F,GAAGp/F,EAAEqT,GAAE,GAAIo7F,GAAGthG,EAAEnN,EAAEoC,GAAGrC,EAAEC,EAAE2mF,UAAU0nB,GAAG/gG,QAAQtN,EAAE,IAAIiE,EAAE3B,GAAG,oBAAoB+Q,EAAEu6F,yBAAyB,KAAK7tG,EAAEq8C,SAAwI,OAA/Hp8C,EAAE+V,OAAO,EAAE,OAAO5I,GAAG7K,GAAGtC,EAAEqoC,MAAM0+D,GAAG/mG,EAAEmN,EAAEk7B,MAAM,KAAKjmC,GAAGpC,EAAEqoC,MAAM0+D,GAAG/mG,EAAE,KAAKiE,EAAE7B,IAAImsG,GAAGphG,EAAEnN,EAAEiE,EAAE7B,GAAGpC,EAAEmoF,cAAcpoF,EAAEwlG,MAAM1jG,GAAGu9F,GAAGp/F,EAAEqT,GAAE,GAAWrT,EAAEqoC,KAAK,CAAC,SAASunE,GAAGziG,GAAG,IAAInN,EAAEmN,EAAEw5E,UAAU3mF,EAAE6vG,eAAe9Q,GAAG5xF,EAAEnN,EAAE6vG,eAAe7vG,EAAE6vG,iBAAiB7vG,EAAEkE,SAASlE,EAAEkE,SAAS66F,GAAG5xF,EAAEnN,EAAEkE,SAAQ,GAAIojG,GAAGn6F,EAAEnN,EAAEotF,cAAc,CAC5e,SAAS0iB,GAAG3iG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAuC,OAApC2/F,KAAKC,GAAG5/F,GAAG7B,EAAE+V,OAAO,IAAIw4F,GAAGphG,EAAEnN,EAAEqT,EAAEtT,GAAUC,EAAEqoC,KAAK,CAAC,IAaqL0nE,GAAMC,GAAGC,GAb1LC,GAAG,CAAC9nB,WAAW,KAAK2Y,YAAY,KAAKC,UAAU,GAAG,SAASmP,GAAGhjG,GAAG,MAAM,CAAC6hG,UAAU7hG,EAAE8hG,UAAU,KAAKC,YAAY,KAAK,CAClM,SAASkB,GAAGjjG,EAAEnN,EAAEqT,GAAG,IAA0DpP,EAAtDlE,EAAEC,EAAE8gG,aAAaj/F,EAAEwyD,GAAE/mD,QAAQlL,GAAE,EAAGE,EAAE,KAAa,IAARtC,EAAE+V,OAAqJ,IAAvI9R,EAAE3B,KAAK2B,GAAE,OAAOkJ,GAAG,OAAOA,EAAEg7E,gBAAiB,KAAO,EAAFtmF,IAASoC,GAAE7B,GAAE,EAAGpC,EAAE+V,QAAQ,KAAY,OAAO5I,GAAG,OAAOA,EAAEg7E,gBAActmF,GAAG,GAAEs8F,GAAE9pC,GAAI,EAAFxyD,GAAQ,OAAOsL,EAA2B,OAAxBg0F,GAAGnhG,GAAwB,QAArBmN,EAAEnN,EAAEmoF,gBAA2C,QAAfh7E,EAAEA,EAAEi7E,aAA4B,KAAY,EAAPpoF,EAAEkhG,MAAQlhG,EAAEyiG,MAAM,EAAE,OAAOt1F,EAAE1E,KAAKzI,EAAEyiG,MAAM,EAAEziG,EAAEyiG,MAAM,WAAW,OAAKngG,EAAEvC,EAAE4hF,SAASx0E,EAAEpN,EAAEwiC,SAAgBngC,GAAGrC,EAAEC,EAAEkhG,KAAK9+F,EAAEpC,EAAEqoC,MAAM/lC,EAAE,CAAC4+F,KAAK,SAASvf,SAASr/E,GAAG,KAAO,EAAFvC,IAAM,OAAOqC,GAAGA,EAAEigG,WAAW,EAAEjgG,EAAE0+F,aAC7ex+F,GAAGF,EAAEiuG,GAAG/tG,EAAEvC,EAAE,EAAE,MAAMoN,EAAE25F,GAAG35F,EAAEpN,EAAEsT,EAAE,MAAMjR,EAAE6lF,OAAOjoF,EAAEmN,EAAE86E,OAAOjoF,EAAEoC,EAAEmmF,QAAQp7E,EAAEnN,EAAEqoC,MAAMjmC,EAAEpC,EAAEqoC,MAAM8/C,cAAcgoB,GAAG98F,GAAGrT,EAAEmoF,cAAc+nB,GAAG/iG,GAAGmjG,GAAGtwG,EAAEsC,IAAqB,GAAG,QAArBT,EAAEsL,EAAEg7E,gBAA2C,QAAflkF,EAAEpC,EAAEumF,YAAqB,OAGpM,SAAYj7E,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,EAAEE,GAAG,GAAG+Q,EAAG,OAAW,IAARrT,EAAE+V,OAAiB/V,EAAE+V,QAAQ,IAAwBw6F,GAAGpjG,EAAEnN,EAAEsC,EAA3BvC,EAAEqtG,GAAGnoG,MAAM9E,EAAE,SAAsB,OAAOH,EAAEmoF,eAAqBnoF,EAAEqoC,MAAMl7B,EAAEk7B,MAAMroC,EAAE+V,OAAO,IAAI,OAAK3T,EAAErC,EAAEwiC,SAAS1gC,EAAE7B,EAAEkhG,KAAKnhG,EAAEswG,GAAG,CAACnP,KAAK,UAAUvf,SAAS5hF,EAAE4hF,UAAU9/E,EAAE,EAAE,OAAMO,EAAE0kG,GAAG1kG,EAAEP,EAAES,EAAE,OAAQyT,OAAO,EAAEhW,EAAEkoF,OAAOjoF,EAAEoC,EAAE6lF,OAAOjoF,EAAED,EAAEwoF,QAAQnmF,EAAEpC,EAAEqoC,MAAMtoC,EAAE,KAAY,EAAPC,EAAEkhG,OAAS6F,GAAG/mG,EAAEmN,EAAEk7B,MAAM,KAAK/lC,GAAGtC,EAAEqoC,MAAM8/C,cAAcgoB,GAAG7tG,GAAGtC,EAAEmoF,cAAc+nB,GAAU9tG,GAAE,GAAG,KAAY,EAAPpC,EAAEkhG,MAAQ,OAAOqP,GAAGpjG,EAAEnN,EAAEsC,EAAE,MAAM,GAAG,OAAOT,EAAE4G,KAAK,CAChd,GADid1I,EAAE8B,EAAEg9B,aAAah9B,EAAEg9B,YAAY2xE,QAC3e,IAAIvsG,EAAElE,EAAE0wG,KAA0C,OAArC1wG,EAAEkE,EAA0CssG,GAAGpjG,EAAEnN,EAAEsC,EAA/BvC,EAAEqtG,GAAlBhrG,EAAE6C,MAAM9E,EAAE,MAAaJ,OAAE,GAA0B,CAAwB,GAAvBkE,EAAE,KAAK3B,EAAE6K,EAAEk1F,YAAeK,IAAIz+F,EAAE,CAAK,GAAG,QAAPlE,EAAEqqG,IAAc,CAAC,OAAO9nG,GAAGA,GAAG,KAAK,EAAET,EAAE,EAAE,MAAM,KAAK,GAAGA,EAAE,EAAE,MAAM,KAAK,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,OAAO,KAAK,OAAO,KAAK,OAAO,KAAK,QAAQ,KAAK,QAAQ,KAAK,QAAQ,KAAK,QAAQ,KAAK,SAAS,KAAK,SAAS,KAAK,SAASA,EAAE,GAAG,MAAM,KAAK,UAAUA,EAAE,UAAU,MAAM,QAAQA,EAAE,EAChd,KADkdA,EAAE,KAAKA,GAAG9B,EAAE6qF,eAAetoF,IAAI,EAAET,IAC5eA,IAAIO,EAAE4+F,YAAY5+F,EAAE4+F,UAAUn/F,EAAEohG,GAAG91F,EAAEtL,GAAGkjG,GAAGhlG,EAAEoN,EAAEtL,GAAG,GAAG,CAA0B,OAAzB6uG,KAAgCH,GAAGpjG,EAAEnN,EAAEsC,EAAlCvC,EAAEqtG,GAAGnoG,MAAM9E,EAAE,OAAyB,CAAC,MAAG,OAAO0B,EAAE4G,MAAYzI,EAAE+V,OAAO,IAAI/V,EAAEqoC,MAAMl7B,EAAEk7B,MAAMroC,EAAE2wG,GAAGpV,KAAK,KAAKpuF,GAAGtL,EAAE+uG,YAAY5wG,EAAE,OAAKmN,EAAE/K,EAAE2+F,YAAYR,GAAG/C,GAAG37F,EAAEg9B,aAAayhE,GAAGtgG,EAAEwgG,IAAE,EAAGC,GAAG,KAAK,OAAOtzF,IAAI0yF,GAAGC,MAAME,GAAGH,GAAGC,MAAMG,GAAGJ,GAAGC,MAAMC,GAAGC,GAAG7yF,EAAEi0C,GAAG6+C,GAAG9yF,EAAEyhB,SAASmxE,GAAG//F,GAAGA,EAAEswG,GAAGtwG,EAAED,EAAE4hF,UAAU3hF,EAAE+V,OAAO,KAAY/V,EAAC,CALrK6wG,CAAG1jG,EAAEnN,EAAEsC,EAAEvC,EAAEkE,EAAEpC,EAAEwR,GAAG,GAAGjR,EAAE,CAACA,EAAErC,EAAEwiC,SAASjgC,EAAEtC,EAAEkhG,KAAej9F,GAAVpC,EAAEsL,EAAEk7B,OAAUkgD,QAAQ,IAAIj8B,EAAE,CAAC40C,KAAK,SAASvf,SAAS5hF,EAAE4hF,UAChF,OAD0F,KAAO,EAAFr/E,IAAMtC,EAAEqoC,QAAQxmC,IAAG9B,EAAEC,EAAEqoC,OAAQg6D,WAAW,EAAEtiG,EAAE+gG,aAAax0C,EAAEtsD,EAAE4gG,UAAU,OAAO7gG,EAAE0mG,GAAG5kG,EAAEyqD,IAAKwkD,aAA4B,SAAfjvG,EAAEivG,aAAuB,OAAO7sG,EAAE7B,EAAEqkG,GAAGxiG,EAAE7B,IAAIA,EAAE0kG,GAAG1kG,EAAEE,EAAE+Q,EAAE,OAAQ0C,OAAO,EAAG3T,EAAE6lF,OACnfjoF,EAAED,EAAEkoF,OAAOjoF,EAAED,EAAEwoF,QAAQnmF,EAAEpC,EAAEqoC,MAAMtoC,EAAEA,EAAEqC,EAAEA,EAAEpC,EAAEqoC,MAA8B/lC,EAAE,QAA1BA,EAAE6K,EAAEk7B,MAAM8/C,eAAyBgoB,GAAG98F,GAAG,CAAC27F,UAAU1sG,EAAE0sG,UAAU37F,EAAE47F,UAAU,KAAKC,YAAY5sG,EAAE4sG,aAAa9sG,EAAE+lF,cAAc7lF,EAAEF,EAAEigG,WAAWl1F,EAAEk1F,YAAYhvF,EAAErT,EAAEmoF,cAAc+nB,GAAUnwG,CAAC,CAAoO,OAAzNoN,GAAV/K,EAAE+K,EAAEk7B,OAAUkgD,QAAQxoF,EAAE0mG,GAAGrkG,EAAE,CAAC8+F,KAAK,UAAUvf,SAAS5hF,EAAE4hF,WAAW,KAAY,EAAP3hF,EAAEkhG,QAAUnhG,EAAE0iG,MAAMpvF,GAAGtT,EAAEkoF,OAAOjoF,EAAED,EAAEwoF,QAAQ,KAAK,OAAOp7E,IAAkB,QAAdkG,EAAErT,EAAE4gG,YAAoB5gG,EAAE4gG,UAAU,CAACzzF,GAAGnN,EAAE+V,OAAO,IAAI1C,EAAEtU,KAAKoO,IAAInN,EAAEqoC,MAAMtoC,EAAEC,EAAEmoF,cAAc,KAAYpoF,CAAC,CACnd,SAASuwG,GAAGnjG,EAAEnN,GAA8D,OAA3DA,EAAEqwG,GAAG,CAACnP,KAAK,UAAUvf,SAAS3hF,GAAGmN,EAAE+zF,KAAK,EAAE,OAAQjZ,OAAO96E,EAASA,EAAEk7B,MAAMroC,CAAC,CAAC,SAASuwG,GAAGpjG,EAAEnN,EAAEqT,EAAEtT,GAAwG,OAArG,OAAOA,GAAG0hG,GAAG1hG,GAAGgnG,GAAG/mG,EAAEmN,EAAEk7B,MAAM,KAAKh1B,IAAGlG,EAAEmjG,GAAGtwG,EAAEA,EAAE8gG,aAAanf,WAAY5rE,OAAO,EAAE/V,EAAEmoF,cAAc,KAAYh7E,CAAC,CAGkJ,SAAS4jG,GAAG5jG,EAAEnN,EAAEqT,GAAGlG,EAAEs1F,OAAOziG,EAAE,IAAID,EAAEoN,EAAE66E,UAAU,OAAOjoF,IAAIA,EAAE0iG,OAAOziG,GAAGoiG,GAAGj1F,EAAE86E,OAAOjoF,EAAEqT,EAAE,CACxc,SAAS29F,GAAG7jG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,IAAIO,EAAE+K,EAAEg7E,cAAc,OAAO/lF,EAAE+K,EAAEg7E,cAAc,CAAC8oB,YAAYjxG,EAAEkxG,UAAU,KAAKC,mBAAmB,EAAEhqF,KAAKpnB,EAAEqxG,KAAK/9F,EAAEg+F,SAASxvG,IAAIO,EAAE6uG,YAAYjxG,EAAEoC,EAAE8uG,UAAU,KAAK9uG,EAAE+uG,mBAAmB,EAAE/uG,EAAE+kB,KAAKpnB,EAAEqC,EAAEgvG,KAAK/9F,EAAEjR,EAAEivG,SAASxvG,EAAE,CAC3O,SAASyvG,GAAGnkG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEC,EAAE8gG,aAAaj/F,EAAE9B,EAAE4nG,YAAYvlG,EAAErC,EAAEqxG,KAAsC,GAAjC7C,GAAGphG,EAAEnN,EAAED,EAAE4hF,SAAStuE,GAAkB,KAAO,GAAtBtT,EAAEs0D,GAAE/mD,UAAqBvN,EAAI,EAAFA,EAAI,EAAEC,EAAE+V,OAAO,QAAQ,CAAC,GAAG,OAAO5I,GAAG,KAAa,IAARA,EAAE4I,OAAW5I,EAAE,IAAIA,EAAEnN,EAAEqoC,MAAM,OAAOl7B,GAAG,CAAC,GAAG,KAAKA,EAAEmyE,IAAI,OAAOnyE,EAAEg7E,eAAe4oB,GAAG5jG,EAAEkG,EAAErT,QAAQ,GAAG,KAAKmN,EAAEmyE,IAAIyxB,GAAG5jG,EAAEkG,EAAErT,QAAQ,GAAG,OAAOmN,EAAEk7B,MAAM,CAACl7B,EAAEk7B,MAAM4/C,OAAO96E,EAAEA,EAAEA,EAAEk7B,MAAM,QAAQ,CAAC,GAAGl7B,IAAInN,EAAE,MAAMmN,EAAE,KAAK,OAAOA,EAAEo7E,SAAS,CAAC,GAAG,OAAOp7E,EAAE86E,QAAQ96E,EAAE86E,SAASjoF,EAAE,MAAMmN,EAAEA,EAAEA,EAAE86E,MAAM,CAAC96E,EAAEo7E,QAAQN,OAAO96E,EAAE86E,OAAO96E,EAAEA,EAAEo7E,OAAO,CAACxoF,GAAG,CAAC,CAAQ,GAAPo+F,GAAE9pC,GAAEt0D,GAAM,KAAY,EAAPC,EAAEkhG,MAAQlhG,EAAEmoF,cAC/e,UAAU,OAAOtmF,GAAG,IAAK,WAAqB,IAAVwR,EAAErT,EAAEqoC,MAAUxmC,EAAE,KAAK,OAAOwR,GAAiB,QAAdlG,EAAEkG,EAAE20E,YAAoB,OAAO0f,GAAGv6F,KAAKtL,EAAEwR,GAAGA,EAAEA,EAAEk1E,QAAY,QAAJl1E,EAAExR,IAAYA,EAAE7B,EAAEqoC,MAAMroC,EAAEqoC,MAAM,OAAOxmC,EAAEwR,EAAEk1E,QAAQl1E,EAAEk1E,QAAQ,MAAMyoB,GAAGhxG,GAAE,EAAG6B,EAAEwR,EAAEjR,GAAG,MAAM,IAAK,YAA6B,IAAjBiR,EAAE,KAAKxR,EAAE7B,EAAEqoC,MAAUroC,EAAEqoC,MAAM,KAAK,OAAOxmC,GAAG,CAAe,GAAG,QAAjBsL,EAAEtL,EAAEmmF,YAAuB,OAAO0f,GAAGv6F,GAAG,CAACnN,EAAEqoC,MAAMxmC,EAAE,KAAK,CAACsL,EAAEtL,EAAE0mF,QAAQ1mF,EAAE0mF,QAAQl1E,EAAEA,EAAExR,EAAEA,EAAEsL,CAAC,CAAC6jG,GAAGhxG,GAAE,EAAGqT,EAAE,KAAKjR,GAAG,MAAM,IAAK,WAAW4uG,GAAGhxG,GAAE,EAAG,KAAK,UAAK,GAAQ,MAAM,QAAQA,EAAEmoF,cAAc,KAAK,OAAOnoF,EAAEqoC,KAAK,CAC7d,SAASknE,GAAGpiG,EAAEnN,GAAG,KAAY,EAAPA,EAAEkhG,OAAS,OAAO/zF,IAAIA,EAAE66E,UAAU,KAAKhoF,EAAEgoF,UAAU,KAAKhoF,EAAE+V,OAAO,EAAE,CAAC,SAAS04F,GAAGthG,EAAEnN,EAAEqT,GAAyD,GAAtD,OAAOlG,IAAInN,EAAEuiG,aAAap1F,EAAEo1F,cAAcruC,IAAIl0D,EAAEyiG,MAAS,KAAKpvF,EAAErT,EAAEqiG,YAAY,OAAO,KAAK,GAAG,OAAOl1F,GAAGnN,EAAEqoC,QAAQl7B,EAAEk7B,MAAM,MAAMpjC,MAAM9E,EAAE,MAAM,GAAG,OAAOH,EAAEqoC,MAAM,CAA4C,IAAjCh1B,EAAEozF,GAAZt5F,EAAEnN,EAAEqoC,MAAal7B,EAAE2zF,cAAc9gG,EAAEqoC,MAAMh1B,EAAMA,EAAE40E,OAAOjoF,EAAE,OAAOmN,EAAEo7E,SAASp7E,EAAEA,EAAEo7E,SAAQl1E,EAAEA,EAAEk1E,QAAQke,GAAGt5F,EAAEA,EAAE2zF,eAAgB7Y,OAAOjoF,EAAEqT,EAAEk1E,QAAQ,IAAI,CAAC,OAAOvoF,EAAEqoC,KAAK,CAO9a,SAASkpE,GAAGpkG,EAAEnN,GAAG,IAAIwgG,GAAE,OAAOrzF,EAAEkkG,UAAU,IAAK,SAASrxG,EAAEmN,EAAEikG,KAAK,IAAI,IAAI/9F,EAAE,KAAK,OAAOrT,GAAG,OAAOA,EAAEgoF,YAAY30E,EAAErT,GAAGA,EAAEA,EAAEuoF,QAAQ,OAAOl1E,EAAElG,EAAEikG,KAAK,KAAK/9F,EAAEk1E,QAAQ,KAAK,MAAM,IAAK,YAAYl1E,EAAElG,EAAEikG,KAAK,IAAI,IAAIrxG,EAAE,KAAK,OAAOsT,GAAG,OAAOA,EAAE20E,YAAYjoF,EAAEsT,GAAGA,EAAEA,EAAEk1E,QAAQ,OAAOxoF,EAAEC,GAAG,OAAOmN,EAAEikG,KAAKjkG,EAAEikG,KAAK,KAAKjkG,EAAEikG,KAAK7oB,QAAQ,KAAKxoF,EAAEwoF,QAAQ,KAAK,CAC5U,SAASipB,GAAErkG,GAAG,IAAInN,EAAE,OAAOmN,EAAE66E,WAAW76E,EAAE66E,UAAU3/C,QAAQl7B,EAAEk7B,MAAMh1B,EAAE,EAAEtT,EAAE,EAAE,GAAGC,EAAE,IAAI,IAAI6B,EAAEsL,EAAEk7B,MAAM,OAAOxmC,GAAGwR,GAAGxR,EAAE4gG,MAAM5gG,EAAEwgG,WAAWtiG,GAAkB,SAAf8B,EAAEivG,aAAsB/wG,GAAW,SAAR8B,EAAEkU,MAAelU,EAAEomF,OAAO96E,EAAEtL,EAAEA,EAAE0mF,aAAa,IAAI1mF,EAAEsL,EAAEk7B,MAAM,OAAOxmC,GAAGwR,GAAGxR,EAAE4gG,MAAM5gG,EAAEwgG,WAAWtiG,GAAG8B,EAAEivG,aAAa/wG,GAAG8B,EAAEkU,MAAMlU,EAAEomF,OAAO96E,EAAEtL,EAAEA,EAAE0mF,QAAyC,OAAjCp7E,EAAE2jG,cAAc/wG,EAAEoN,EAAEk1F,WAAWhvF,EAASrT,CAAC,CAC7V,SAASyxG,GAAGtkG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEC,EAAE8gG,aAAmB,OAANT,GAAGrgG,GAAUA,EAAEs/E,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,GAAG,OAAOkyB,GAAExxG,GAAG,KAAK,KAAK,EAUtD,KAAK,GAAG,OAAO4+F,GAAG5+F,EAAEwN,OAAOsxF,KAAK0S,GAAExxG,GAAG,KAVqD,KAAK,EAA2Q,OAAzQD,EAAEC,EAAE2mF,UAAU4gB,KAAKx1F,GAAEusF,IAAIvsF,GAAEssF,IAAGwJ,KAAK9nG,EAAE8vG,iBAAiB9vG,EAAEmE,QAAQnE,EAAE8vG,eAAe9vG,EAAE8vG,eAAe,MAAS,OAAO1iG,GAAG,OAAOA,EAAEk7B,QAAMg5D,GAAGrhG,GAAGA,EAAE+V,OAAO,EAAE,OAAO5I,GAAGA,EAAEg7E,cAAcgF,cAAc,KAAa,IAARntF,EAAE+V,SAAa/V,EAAE+V,OAAO,KAAK,OAAO0qF,KAAKiR,GAAGjR,IAAIA,GAAG,QAAe+Q,GAAExxG,GAAU,KAAK,KAAK,EAAEynG,GAAGznG,GAAG,IAAI6B,EAAEwlG,GAAGD,GAAG95F,SAC7e,GAAT+F,EAAErT,EAAEwN,KAAQ,OAAOL,GAAG,MAAMnN,EAAE2mF,UAAUqpB,GAAG7iG,EAAEnN,EAAEqT,EAAEtT,GAAKoN,EAAEi5F,MAAMpmG,EAAEomG,MAAMpmG,EAAE+V,OAAO,IAAI/V,EAAE+V,OAAO,aAAa,CAAC,IAAIhW,EAAE,CAAC,GAAG,OAAOC,EAAE2mF,UAAU,MAAM1hF,MAAM9E,EAAE,MAAW,OAALqxG,GAAExxG,GAAU,IAAI,CAAkB,GAAjBmN,EAAEk6F,GAAGH,GAAG55F,SAAY+zF,GAAGrhG,GAAG,CAACD,EAAEC,EAAE2mF,UAAUtzE,EAAErT,EAAEwN,KAAK,IAAIpL,EAAEpC,EAAEshG,cAA+C,OAAjCvhG,EAAE69F,IAAI59F,EAAED,EAAE89F,IAAIz7F,EAAE+K,EAAE,KAAY,EAAPnN,EAAEkhG,MAAe7tF,GAAG,IAAK,SAAS2oE,GAAE,SAASj8E,GAAGi8E,GAAE,QAAQj8E,GAAG,MAAM,IAAK,SAAS,IAAK,SAAS,IAAK,QAAQi8E,GAAE,OAAOj8E,GAAG,MAAM,IAAK,QAAQ,IAAK,QAAQ,IAAI8B,EAAE,EAAEA,EAAE84F,GAAG/7F,OAAOiD,IAAIm6E,GAAE2e,GAAG94F,GAAG9B,GAAG,MAAM,IAAK,SAASi8E,GAAE,QAAQj8E,GAAG,MAAM,IAAK,MAAM,IAAK,QAAQ,IAAK,OAAOi8E,GAAE,QACnhBj8E,GAAGi8E,GAAE,OAAOj8E,GAAG,MAAM,IAAK,UAAUi8E,GAAE,SAASj8E,GAAG,MAAM,IAAK,QAAQghF,EAAGhhF,EAAEqC,GAAG45E,GAAE,UAAUj8E,GAAG,MAAM,IAAK,SAASA,EAAE8gF,cAAc,CAAC8wB,cAAcvvG,EAAEwvG,UAAU51B,GAAE,UAAUj8E,GAAG,MAAM,IAAK,WAAW6hF,GAAG7hF,EAAEqC,GAAG45E,GAAE,UAAUj8E,GAAkB,IAAI,IAAIuC,KAAvByjF,GAAG1yE,EAAEjR,GAAGP,EAAE,KAAkBO,EAAE,GAAGA,EAAE7D,eAAe+D,GAAG,CAAC,IAAI2B,EAAE7B,EAAEE,GAAG,aAAaA,EAAE,kBAAkB2B,EAAElE,EAAEwnC,cAActjC,KAAI,IAAK7B,EAAEyvG,0BAA0BnV,GAAG38F,EAAEwnC,YAAYtjC,EAAEkJ,GAAGtL,EAAE,CAAC,WAAWoC,IAAI,kBAAkBA,GAAGlE,EAAEwnC,cAAc,GAAGtjC,KAAI,IAAK7B,EAAEyvG,0BAA0BnV,GAAG38F,EAAEwnC,YAC1etjC,EAAEkJ,GAAGtL,EAAE,CAAC,WAAW,GAAGoC,IAAIo4E,EAAG99E,eAAe+D,IAAI,MAAM2B,GAAG,aAAa3B,GAAG05E,GAAE,SAASj8E,EAAE,CAAC,OAAOsT,GAAG,IAAK,QAAQysE,EAAG//E,GAAGohF,EAAGphF,EAAEqC,GAAE,GAAI,MAAM,IAAK,WAAW09E,EAAG//E,GAAG+hF,GAAG/hF,GAAG,MAAM,IAAK,SAAS,IAAK,SAAS,MAAM,QAAQ,oBAAoBqC,EAAE0vG,UAAU/xG,EAAEgyG,QAAQpV,IAAI58F,EAAE8B,EAAE7B,EAAEojG,YAAYrjG,EAAE,OAAOA,IAAIC,EAAE+V,OAAO,EAAE,KAAK,CAACzT,EAAE,IAAIT,EAAEo/B,SAASp/B,EAAEA,EAAE05B,cAAc,iCAAiCpuB,IAAIA,EAAE40E,GAAG1uE,IAAI,iCAAiClG,EAAE,WAAWkG,IAAGlG,EAAE7K,EAAEi0B,cAAc,QAASQ,UAAU,qBAAuB5pB,EAAEA,EAAEypB,YAAYzpB,EAAE8pB,aAC/f,kBAAkBl3B,EAAEkmF,GAAG94E,EAAE7K,EAAEi0B,cAAcljB,EAAE,CAAC4yE,GAAGlmF,EAAEkmF,MAAM94E,EAAE7K,EAAEi0B,cAAcljB,GAAG,WAAWA,IAAI/Q,EAAE6K,EAAEpN,EAAE6xG,SAAStvG,EAAEsvG,UAAS,EAAG7xG,EAAE4pB,OAAOrnB,EAAEqnB,KAAK5pB,EAAE4pB,QAAQxc,EAAE7K,EAAE62B,gBAAgBhsB,EAAEkG,GAAGlG,EAAEywF,IAAI59F,EAAEmN,EAAE0wF,IAAI99F,EAAEgwG,GAAG5iG,EAAEnN,GAASA,EAAE2mF,UAAUx5E,EAAEA,EAAE,CAAW,OAAV7K,EAAE0jF,GAAG3yE,EAAEtT,GAAUsT,GAAG,IAAK,SAAS2oE,GAAE,SAAS7uE,GAAG6uE,GAAE,QAAQ7uE,GAAGtL,EAAE9B,EAAE,MAAM,IAAK,SAAS,IAAK,SAAS,IAAK,QAAQi8E,GAAE,OAAO7uE,GAAGtL,EAAE9B,EAAE,MAAM,IAAK,QAAQ,IAAK,QAAQ,IAAI8B,EAAE,EAAEA,EAAE84F,GAAG/7F,OAAOiD,IAAIm6E,GAAE2e,GAAG94F,GAAGsL,GAAGtL,EAAE9B,EAAE,MAAM,IAAK,SAASi8E,GAAE,QAAQ7uE,GAAGtL,EAAE9B,EAAE,MAAM,IAAK,MAAM,IAAK,QAAQ,IAAK,OAAOi8E,GAAE,QAClf7uE,GAAG6uE,GAAE,OAAO7uE,GAAGtL,EAAE9B,EAAE,MAAM,IAAK,UAAUi8E,GAAE,SAAS7uE,GAAGtL,EAAE9B,EAAE,MAAM,IAAK,QAAQghF,EAAG5zE,EAAEpN,GAAG8B,EAAE6+E,EAAGvzE,EAAEpN,GAAGi8E,GAAE,UAAU7uE,GAAG,MAAM,IAAK,SAAiL,QAAQtL,EAAE9B,QAAxK,IAAK,SAASoN,EAAE0zE,cAAc,CAAC8wB,cAAc5xG,EAAE6xG,UAAU/vG,EAAEiQ,EAAE,CAAC,EAAE/R,EAAE,CAACuB,WAAM,IAAS06E,GAAE,UAAU7uE,GAAG,MAAM,IAAK,WAAWy0E,GAAGz0E,EAAEpN,GAAG8B,EAAE4/E,GAAGt0E,EAAEpN,GAAGi8E,GAAE,UAAU7uE,GAAiC,IAAI/K,KAAhB2jF,GAAG1yE,EAAExR,GAAGoC,EAAEpC,EAAa,GAAGoC,EAAE1F,eAAe6D,GAAG,CAAC,IAAIkqD,EAAEroD,EAAE7B,GAAG,UAAUA,EAAE8iF,GAAG/3E,EAAEm/C,GAAG,4BAA4BlqD,EAAuB,OAApBkqD,EAAEA,EAAEA,EAAEywC,YAAO,IAAgB7a,GAAG/0E,EAAEm/C,GAAI,aAAalqD,EAAE,kBAAkBkqD,GAAG,aAC7ej5C,GAAG,KAAKi5C,IAAIg2B,GAAGn1E,EAAEm/C,GAAG,kBAAkBA,GAAGg2B,GAAGn1E,EAAE,GAAGm/C,GAAG,mCAAmClqD,GAAG,6BAA6BA,GAAG,cAAcA,IAAIi6E,EAAG99E,eAAe6D,GAAG,MAAMkqD,GAAG,aAAalqD,GAAG45E,GAAE,SAAS7uE,GAAG,MAAMm/C,GAAGgxB,EAAGnwE,EAAE/K,EAAEkqD,EAAEhqD,GAAG,CAAC,OAAO+Q,GAAG,IAAK,QAAQysE,EAAG3yE,GAAGg0E,EAAGh0E,EAAEpN,GAAE,GAAI,MAAM,IAAK,WAAW+/E,EAAG3yE,GAAG20E,GAAG30E,GAAG,MAAM,IAAK,SAAS,MAAMpN,EAAEuB,OAAO6L,EAAE+vB,aAAa,QAAQ,GAAG0iD,EAAG7/E,EAAEuB,QAAQ,MAAM,IAAK,SAAS6L,EAAEykG,WAAW7xG,EAAE6xG,SAAmB,OAAVxvG,EAAErC,EAAEuB,OAAc+/E,GAAGl0E,IAAIpN,EAAE6xG,SAASxvG,GAAE,GAAI,MAAMrC,EAAE6gF,cAAcS,GAAGl0E,IAAIpN,EAAE6xG,SAAS7xG,EAAE6gF,cAClf,GAAI,MAAM,QAAQ,oBAAoB/+E,EAAEiwG,UAAU3kG,EAAE4kG,QAAQpV,IAAI,OAAOtpF,GAAG,IAAK,SAAS,IAAK,QAAQ,IAAK,SAAS,IAAK,WAAWtT,IAAIA,EAAEiyG,UAAU,MAAM7kG,EAAE,IAAK,MAAMpN,GAAE,EAAG,MAAMoN,EAAE,QAAQpN,GAAE,EAAG,CAACA,IAAIC,EAAE+V,OAAO,EAAE,CAAC,OAAO/V,EAAEomG,MAAMpmG,EAAE+V,OAAO,IAAI/V,EAAE+V,OAAO,QAAQ,CAAM,OAALy7F,GAAExxG,GAAU,KAAK,KAAK,EAAE,GAAGmN,GAAG,MAAMnN,EAAE2mF,UAAUspB,GAAG9iG,EAAEnN,EAAEmN,EAAEm0F,cAAcvhG,OAAO,CAAC,GAAG,kBAAkBA,GAAG,OAAOC,EAAE2mF,UAAU,MAAM1hF,MAAM9E,EAAE,MAAsC,GAAhCkT,EAAEg0F,GAAGD,GAAG95F,SAAS+5F,GAAGH,GAAG55F,SAAY+zF,GAAGrhG,GAAG,CAAyC,GAAxCD,EAAEC,EAAE2mF,UAAUtzE,EAAErT,EAAEshG,cAAcvhG,EAAE69F,IAAI59F,GAAKoC,EAAErC,EAAEyiF,YAAYnvE,IAC/e,QADoflG,EACvfmzF,IAAY,OAAOnzF,EAAEmyE,KAAK,KAAK,EAAEod,GAAG38F,EAAEyiF,UAAUnvE,EAAE,KAAY,EAAPlG,EAAE+zF,OAAS,MAAM,KAAK,GAAE,IAAK/zF,EAAEm0F,cAAcuQ,0BAA0BnV,GAAG38F,EAAEyiF,UAAUnvE,EAAE,KAAY,EAAPlG,EAAE+zF,OAAS9+F,IAAIpC,EAAE+V,OAAO,EAAE,MAAMhW,GAAG,IAAIsT,EAAE4tB,SAAS5tB,EAAEA,EAAEkoB,eAAeoN,eAAe5oC,IAAK69F,IAAI59F,EAAEA,EAAE2mF,UAAU5mF,CAAC,CAAM,OAALyxG,GAAExxG,GAAU,KAAK,KAAK,GAA0B,GAAvB+R,GAAEsiD,IAAGt0D,EAAEC,EAAEmoF,cAAiB,OAAOh7E,GAAG,OAAOA,EAAEg7E,eAAe,OAAOh7E,EAAEg7E,cAAcC,WAAW,CAAC,GAAGoY,IAAG,OAAOD,IAAI,KAAY,EAAPvgG,EAAEkhG,OAAS,KAAa,IAARlhG,EAAE+V,OAAWwrF,KAAKC,KAAKxhG,EAAE+V,OAAO,MAAM3T,GAAE,OAAQ,GAAGA,EAAEi/F,GAAGrhG,GAAG,OAAOD,GAAG,OAAOA,EAAEqoF,WAAW,CAAC,GAAG,OAC5fj7E,EAAE,CAAC,IAAI/K,EAAE,MAAM6C,MAAM9E,EAAE,MAAqD,KAA7BiC,EAAE,QAApBA,EAAEpC,EAAEmoF,eAAyB/lF,EAAEgmF,WAAW,MAAW,MAAMnjF,MAAM9E,EAAE,MAAMiC,EAAEw7F,IAAI59F,CAAC,MAAMwhG,KAAK,KAAa,IAARxhG,EAAE+V,SAAa/V,EAAEmoF,cAAc,MAAMnoF,EAAE+V,OAAO,EAAEy7F,GAAExxG,GAAGoC,GAAE,CAAE,MAAM,OAAOq+F,KAAKiR,GAAGjR,IAAIA,GAAG,MAAMr+F,GAAE,EAAG,IAAIA,EAAE,OAAe,MAARpC,EAAE+V,MAAY/V,EAAE,IAAI,CAAC,OAAG,KAAa,IAARA,EAAE+V,QAAkB/V,EAAEyiG,MAAMpvF,EAAErT,KAAED,EAAE,OAAOA,MAAO,OAAOoN,GAAG,OAAOA,EAAEg7E,gBAAgBpoF,IAAIC,EAAEqoC,MAAMtyB,OAAO,KAAK,KAAY,EAAP/V,EAAEkhG,QAAU,OAAO/zF,GAAG,KAAe,EAAVknD,GAAE/mD,SAAW,IAAI8nB,KAAIA,GAAE,GAAGs7E,OAAO,OAAO1wG,EAAEojG,cAAcpjG,EAAE+V,OAAO,GAAGy7F,GAAExxG,GAAU,MAAK,KAAK,EAAE,OAAOunG,KAC7e,OAAOp6F,GAAGmuF,GAAGt7F,EAAE2mF,UAAUyG,eAAeokB,GAAExxG,GAAG,KAAK,KAAK,GAAG,OAAOkiG,GAAGliG,EAAEwN,KAAKyN,UAAUu2F,GAAExxG,GAAG,KAA+C,KAAK,GAA0B,GAAvB+R,GAAEsiD,IAAwB,QAArBjyD,EAAEpC,EAAEmoF,eAA0B,OAAOqpB,GAAExxG,GAAG,KAAuC,GAAlCD,EAAE,KAAa,IAARC,EAAE+V,OAA4B,QAAjBzT,EAAEF,EAAE8uG,WAAsB,GAAGnxG,EAAEwxG,GAAGnvG,GAAE,OAAQ,CAAC,GAAG,IAAIgzB,IAAG,OAAOjoB,GAAG,KAAa,IAARA,EAAE4I,OAAW,IAAI5I,EAAEnN,EAAEqoC,MAAM,OAAOl7B,GAAG,CAAS,GAAG,QAAX7K,EAAEolG,GAAGv6F,IAAe,CAAmG,IAAlGnN,EAAE+V,OAAO,IAAIw7F,GAAGnvG,GAAE,GAAoB,QAAhBrC,EAAEuC,EAAE8gG,eAAuBpjG,EAAEojG,YAAYrjG,EAAEC,EAAE+V,OAAO,GAAG/V,EAAE8wG,aAAa,EAAE/wG,EAAEsT,EAAMA,EAAErT,EAAEqoC,MAAM,OAAOh1B,GAAOlG,EAAEpN,GAANqC,EAAEiR,GAAQ0C,OAAO,SAC/d,QAAdzT,EAAEF,EAAE4lF,YAAoB5lF,EAAEigG,WAAW,EAAEjgG,EAAEqgG,MAAMt1F,EAAE/K,EAAEimC,MAAM,KAAKjmC,EAAE0uG,aAAa,EAAE1uG,EAAEk/F,cAAc,KAAKl/F,EAAE+lF,cAAc,KAAK/lF,EAAEghG,YAAY,KAAKhhG,EAAEmgG,aAAa,KAAKngG,EAAEukF,UAAU,OAAOvkF,EAAEigG,WAAW//F,EAAE+/F,WAAWjgG,EAAEqgG,MAAMngG,EAAEmgG,MAAMrgG,EAAEimC,MAAM/lC,EAAE+lC,MAAMjmC,EAAE0uG,aAAa,EAAE1uG,EAAEw+F,UAAU,KAAKx+F,EAAEk/F,cAAch/F,EAAEg/F,cAAcl/F,EAAE+lF,cAAc7lF,EAAE6lF,cAAc/lF,EAAEghG,YAAY9gG,EAAE8gG,YAAYhhG,EAAEoL,KAAKlL,EAAEkL,KAAKL,EAAE7K,EAAEigG,aAAangG,EAAEmgG,aAAa,OAAOp1F,EAAE,KAAK,CAACs1F,MAAMt1F,EAAEs1F,MAAMD,aAAar1F,EAAEq1F,eAAenvF,EAAEA,EAAEk1E,QAA2B,OAAnB4V,GAAE9pC,GAAY,EAAVA,GAAE/mD,QAAU,GAAUtN,EAAEqoC,KAAK,CAACl7B,EAClgBA,EAAEo7E,OAAO,CAAC,OAAOnmF,EAAEgvG,MAAMnoB,KAAIgpB,KAAKjyG,EAAE+V,OAAO,IAAIhW,GAAE,EAAGwxG,GAAGnvG,GAAE,GAAIpC,EAAEyiG,MAAM,QAAQ,KAAK,CAAC,IAAI1iG,EAAE,GAAW,QAARoN,EAAEu6F,GAAGplG,KAAa,GAAGtC,EAAE+V,OAAO,IAAIhW,GAAE,EAAmB,QAAhBsT,EAAElG,EAAEi2F,eAAuBpjG,EAAEojG,YAAY/vF,EAAErT,EAAE+V,OAAO,GAAGw7F,GAAGnvG,GAAE,GAAI,OAAOA,EAAEgvG,MAAM,WAAWhvG,EAAEivG,WAAW/uG,EAAE0lF,YAAYwY,GAAE,OAAOgR,GAAExxG,GAAG,UAAU,EAAEipF,KAAI7mF,EAAE+uG,mBAAmBc,IAAI,aAAa5+F,IAAIrT,EAAE+V,OAAO,IAAIhW,GAAE,EAAGwxG,GAAGnvG,GAAE,GAAIpC,EAAEyiG,MAAM,SAASrgG,EAAE6uG,aAAa3uG,EAAEimF,QAAQvoF,EAAEqoC,MAAMroC,EAAEqoC,MAAM/lC,IAAa,QAAT+Q,EAAEjR,EAAE+kB,MAAc9T,EAAEk1E,QAAQjmF,EAAEtC,EAAEqoC,MAAM/lC,EAAEF,EAAE+kB,KAAK7kB,EAAE,CAAC,OAAG,OAAOF,EAAEgvG,MAAYpxG,EAAEoC,EAAEgvG,KAAKhvG,EAAE8uG,UAC9elxG,EAAEoC,EAAEgvG,KAAKpxG,EAAEuoF,QAAQnmF,EAAE+uG,mBAAmBloB,KAAIjpF,EAAEuoF,QAAQ,KAAKl1E,EAAEghD,GAAE/mD,QAAQ6wF,GAAE9pC,GAAEt0D,EAAI,EAAFsT,EAAI,EAAI,EAAFA,GAAKrT,IAAEwxG,GAAExxG,GAAU,MAAK,KAAK,GAAG,KAAK,GAAG,OAAOkyG,KAAKnyG,EAAE,OAAOC,EAAEmoF,cAAc,OAAOh7E,GAAG,OAAOA,EAAEg7E,gBAAgBpoF,IAAIC,EAAE+V,OAAO,MAAMhW,GAAG,KAAY,EAAPC,EAAEkhG,MAAQ,KAAQ,WAAHkO,MAAiBoC,GAAExxG,GAAkB,EAAfA,EAAE8wG,eAAiB9wG,EAAE+V,OAAO,OAAOy7F,GAAExxG,GAAG,KAAK,KAAK,GAAe,KAAK,GAAG,OAAO,KAAK,MAAMiF,MAAM9E,EAAE,IAAIH,EAAEs/E,KAAM,CAClX,SAAS6yB,GAAGhlG,EAAEnN,GAAS,OAANqgG,GAAGrgG,GAAUA,EAAEs/E,KAAK,KAAK,EAAE,OAAOsf,GAAG5+F,EAAEwN,OAAOsxF,KAAiB,OAAZ3xF,EAAEnN,EAAE+V,QAAe/V,EAAE+V,OAAS,MAAH5I,EAAS,IAAInN,GAAG,KAAK,KAAK,EAAE,OAAOunG,KAAKx1F,GAAEusF,IAAIvsF,GAAEssF,IAAGwJ,KAAe,KAAO,OAAjB16F,EAAEnN,EAAE+V,SAAqB,KAAO,IAAF5I,IAAQnN,EAAE+V,OAAS,MAAH5I,EAAS,IAAInN,GAAG,KAAK,KAAK,EAAE,OAAOynG,GAAGznG,GAAG,KAAK,KAAK,GAA0B,GAAvB+R,GAAEsiD,IAAwB,QAArBlnD,EAAEnN,EAAEmoF,gBAA2B,OAAOh7E,EAAEi7E,WAAW,CAAC,GAAG,OAAOpoF,EAAEgoF,UAAU,MAAM/iF,MAAM9E,EAAE,MAAMqhG,IAAI,CAAW,OAAS,OAAnBr0F,EAAEnN,EAAE+V,QAAsB/V,EAAE+V,OAAS,MAAH5I,EAAS,IAAInN,GAAG,KAAK,KAAK,GAAG,OAAO+R,GAAEsiD,IAAG,KAAK,KAAK,EAAE,OAAOkzC,KAAK,KAAK,KAAK,GAAG,OAAOrF,GAAGliG,EAAEwN,KAAKyN,UAAU,KAAK,KAAK,GAAG,KAAK,GAAG,OAAOi3F,KAC1gB,KAAyB,QAAQ,OAAO,KAAK,CArB7CnC,GAAG,SAAS5iG,EAAEnN,GAAG,IAAI,IAAIqT,EAAErT,EAAEqoC,MAAM,OAAOh1B,GAAG,CAAC,GAAG,IAAIA,EAAEisE,KAAK,IAAIjsE,EAAEisE,IAAInyE,EAAEqpB,YAAYnjB,EAAEszE,gBAAgB,GAAG,IAAItzE,EAAEisE,KAAK,OAAOjsE,EAAEg1B,MAAM,CAACh1B,EAAEg1B,MAAM4/C,OAAO50E,EAAEA,EAAEA,EAAEg1B,MAAM,QAAQ,CAAC,GAAGh1B,IAAIrT,EAAE,MAAM,KAAK,OAAOqT,EAAEk1E,SAAS,CAAC,GAAG,OAAOl1E,EAAE40E,QAAQ50E,EAAE40E,SAASjoF,EAAE,OAAOqT,EAAEA,EAAE40E,MAAM,CAAC50E,EAAEk1E,QAAQN,OAAO50E,EAAE40E,OAAO50E,EAAEA,EAAEk1E,OAAO,CAAC,EACxSynB,GAAG,SAAS7iG,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAEsL,EAAEm0F,cAAc,GAAGz/F,IAAI9B,EAAE,CAACoN,EAAEnN,EAAE2mF,UAAU0gB,GAAGH,GAAG55F,SAAS,IAA4RhL,EAAxRF,EAAE,KAAK,OAAOiR,GAAG,IAAK,QAAQxR,EAAE6+E,EAAGvzE,EAAEtL,GAAG9B,EAAE2gF,EAAGvzE,EAAEpN,GAAGqC,EAAE,GAAG,MAAM,IAAK,SAASP,EAAEiQ,EAAE,CAAC,EAAEjQ,EAAE,CAACP,WAAM,IAASvB,EAAE+R,EAAE,CAAC,EAAE/R,EAAE,CAACuB,WAAM,IAASc,EAAE,GAAG,MAAM,IAAK,WAAWP,EAAE4/E,GAAGt0E,EAAEtL,GAAG9B,EAAE0hF,GAAGt0E,EAAEpN,GAAGqC,EAAE,GAAG,MAAM,QAAQ,oBAAoBP,EAAEiwG,SAAS,oBAAoB/xG,EAAE+xG,UAAU3kG,EAAE4kG,QAAQpV,IAAyB,IAAIp5F,KAAzBwiF,GAAG1yE,EAAEtT,GAASsT,EAAE,KAAcxR,EAAE,IAAI9B,EAAExB,eAAegF,IAAI1B,EAAEtD,eAAegF,IAAI,MAAM1B,EAAE0B,GAAG,GAAG,UAAUA,EAAE,CAAC,IAAIU,EAAEpC,EAAE0B,GAAG,IAAIjB,KAAK2B,EAAEA,EAAE1F,eAAe+D,KACjf+Q,IAAIA,EAAE,CAAC,GAAGA,EAAE/Q,GAAG,GAAG,KAAK,4BAA4BiB,GAAG,aAAaA,GAAG,mCAAmCA,GAAG,6BAA6BA,GAAG,cAAcA,IAAI84E,EAAG99E,eAAegF,GAAGnB,IAAIA,EAAE,KAAKA,EAAEA,GAAG,IAAIrD,KAAKwE,EAAE,OAAO,IAAIA,KAAKxD,EAAE,CAAC,IAAIusD,EAAEvsD,EAAEwD,GAAyB,GAAtBU,EAAE,MAAMpC,EAAEA,EAAE0B,QAAG,EAAUxD,EAAExB,eAAegF,IAAI+oD,IAAIroD,IAAI,MAAMqoD,GAAG,MAAMroD,GAAG,GAAG,UAAUV,EAAE,GAAGU,EAAE,CAAC,IAAI3B,KAAK2B,GAAGA,EAAE1F,eAAe+D,IAAIgqD,GAAGA,EAAE/tD,eAAe+D,KAAK+Q,IAAIA,EAAE,CAAC,GAAGA,EAAE/Q,GAAG,IAAI,IAAIA,KAAKgqD,EAAEA,EAAE/tD,eAAe+D,IAAI2B,EAAE3B,KAAKgqD,EAAEhqD,KAAK+Q,IAAIA,EAAE,CAAC,GAAGA,EAAE/Q,GAAGgqD,EAAEhqD,GAAG,MAAM+Q,IAAIjR,IAAIA,EAAE,IAAIA,EAAErD,KAAKwE,EACpf8P,IAAIA,EAAEi5C,MAAM,4BAA4B/oD,GAAG+oD,EAAEA,EAAEA,EAAEywC,YAAO,EAAO94F,EAAEA,EAAEA,EAAE84F,YAAO,EAAO,MAAMzwC,GAAGroD,IAAIqoD,IAAIlqD,EAAEA,GAAG,IAAIrD,KAAKwE,EAAE+oD,IAAI,aAAa/oD,EAAE,kBAAkB+oD,GAAG,kBAAkBA,IAAIlqD,EAAEA,GAAG,IAAIrD,KAAKwE,EAAE,GAAG+oD,GAAG,mCAAmC/oD,GAAG,6BAA6BA,IAAI84E,EAAG99E,eAAegF,IAAI,MAAM+oD,GAAG,aAAa/oD,GAAGy4E,GAAE,SAAS7uE,GAAG/K,GAAG6B,IAAIqoD,IAAIlqD,EAAE,MAAMA,EAAEA,GAAG,IAAIrD,KAAKwE,EAAE+oD,GAAG,CAACj5C,IAAIjR,EAAEA,GAAG,IAAIrD,KAAK,QAAQsU,GAAG,IAAI9P,EAAEnB,GAAKpC,EAAEojG,YAAY7/F,KAAEvD,EAAE+V,OAAO,EAAC,CAAC,EAAEk6F,GAAG,SAAS9iG,EAAEnN,EAAEqT,EAAEtT,GAAGsT,IAAItT,IAAIC,EAAE+V,OAAO,EAAE,EAkBlb,IAAIq8F,IAAG,EAAGngG,IAAE,EAAGogG,GAAG,oBAAoBC,QAAQA,QAAQl2B,IAAIjnD,GAAE,KAAK,SAASo9E,GAAGplG,EAAEnN,GAAG,IAAIqT,EAAElG,EAAEi5F,IAAI,GAAG,OAAO/yF,EAAE,GAAG,oBAAoBA,EAAE,IAAIA,EAAE,KAAuB,CAAjB,MAAMtT,GAAGsoE,GAAEl7D,EAAEnN,EAAED,EAAE,MAAMsT,EAAE/F,QAAQ,IAAI,CAAC,SAASklG,GAAGrlG,EAAEnN,EAAEqT,GAAG,IAAIA,GAAqB,CAAjB,MAAMtT,GAAGsoE,GAAEl7D,EAAEnN,EAAED,EAAE,CAAC,CAAC,IAAI0yG,IAAG,EAIxR,SAASC,GAAGvlG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEC,EAAEojG,YAAyC,GAAG,QAAhCrjG,EAAE,OAAOA,EAAEA,EAAEuqG,WAAW,MAAiB,CAAC,IAAIzoG,EAAE9B,EAAEA,EAAE6B,KAAK,EAAE,CAAC,IAAIC,EAAEy9E,IAAInyE,KAAKA,EAAE,CAAC,IAAI/K,EAAEP,EAAEuhD,QAAQvhD,EAAEuhD,aAAQ,OAAO,IAAShhD,GAAGowG,GAAGxyG,EAAEqT,EAAEjR,EAAE,CAACP,EAAEA,EAAED,IAAI,OAAOC,IAAI9B,EAAE,CAAC,CAAC,SAAS4yG,GAAGxlG,EAAEnN,GAAgD,GAAG,QAAhCA,EAAE,QAAlBA,EAAEA,EAAEojG,aAAuBpjG,EAAEsqG,WAAW,MAAiB,CAAC,IAAIj3F,EAAErT,EAAEA,EAAE4B,KAAK,EAAE,CAAC,IAAIyR,EAAEisE,IAAInyE,KAAKA,EAAE,CAAC,IAAIpN,EAAEsT,EAAE3S,OAAO2S,EAAE+vC,QAAQrjD,GAAG,CAACsT,EAAEA,EAAEzR,IAAI,OAAOyR,IAAIrT,EAAE,CAAC,CAAC,SAAS4yG,GAAGzlG,GAAG,IAAInN,EAAEmN,EAAEi5F,IAAI,GAAG,OAAOpmG,EAAE,CAAC,IAAIqT,EAAElG,EAAEw5E,UAAiBx5E,EAAEmyE,IAA8BnyE,EAAEkG,EAAE,oBAAoBrT,EAAEA,EAAEmN,GAAGnN,EAAEsN,QAAQH,CAAC,CAAC,CAClf,SAAS0lG,GAAG1lG,GAAG,IAAInN,EAAEmN,EAAE66E,UAAU,OAAOhoF,IAAImN,EAAE66E,UAAU,KAAK6qB,GAAG7yG,IAAImN,EAAEk7B,MAAM,KAAKl7B,EAAEyzF,UAAU,KAAKzzF,EAAEo7E,QAAQ,KAAK,IAAIp7E,EAAEmyE,MAAoB,QAAdt/E,EAAEmN,EAAEw5E,oBAA4B3mF,EAAE49F,WAAW59F,EAAE69F,WAAW79F,EAAEi7F,WAAWj7F,EAAE89F,WAAW99F,EAAE+9F,MAAM5wF,EAAEw5E,UAAU,KAAKx5E,EAAE86E,OAAO,KAAK96E,EAAEo1F,aAAa,KAAKp1F,EAAEm0F,cAAc,KAAKn0F,EAAEg7E,cAAc,KAAKh7E,EAAE2zF,aAAa,KAAK3zF,EAAEw5E,UAAU,KAAKx5E,EAAEi2F,YAAY,IAAI,CAAC,SAAS0P,GAAG3lG,GAAG,OAAO,IAAIA,EAAEmyE,KAAK,IAAInyE,EAAEmyE,KAAK,IAAInyE,EAAEmyE,GAAG,CACna,SAASyzB,GAAG5lG,GAAGA,EAAE,OAAO,CAAC,KAAK,OAAOA,EAAEo7E,SAAS,CAAC,GAAG,OAAOp7E,EAAE86E,QAAQ6qB,GAAG3lG,EAAE86E,QAAQ,OAAO,KAAK96E,EAAEA,EAAE86E,MAAM,CAA2B,IAA1B96E,EAAEo7E,QAAQN,OAAO96E,EAAE86E,OAAW96E,EAAEA,EAAEo7E,QAAQ,IAAIp7E,EAAEmyE,KAAK,IAAInyE,EAAEmyE,KAAK,KAAKnyE,EAAEmyE,KAAK,CAAC,GAAW,EAARnyE,EAAE4I,MAAQ,SAAS5I,EAAE,GAAG,OAAOA,EAAEk7B,OAAO,IAAIl7B,EAAEmyE,IAAI,SAASnyE,EAAOA,EAAEk7B,MAAM4/C,OAAO96E,EAAEA,EAAEA,EAAEk7B,KAAK,CAAC,KAAa,EAARl7B,EAAE4I,OAAS,OAAO5I,EAAEw5E,SAAS,CAAC,CACzT,SAASqsB,GAAG7lG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEoN,EAAEmyE,IAAI,GAAG,IAAIv/E,GAAG,IAAIA,EAAEoN,EAAEA,EAAEw5E,UAAU3mF,EAAE,IAAIqT,EAAE4tB,SAAS5tB,EAAEqoB,WAAW2N,aAAal8B,EAAEnN,GAAGqT,EAAEg2B,aAAal8B,EAAEnN,IAAI,IAAIqT,EAAE4tB,UAAUjhC,EAAEqT,EAAEqoB,YAAa2N,aAAal8B,EAAEkG,IAAKrT,EAAEqT,GAAImjB,YAAYrpB,GAA4B,QAAxBkG,EAAEA,EAAE4/F,2BAA8B,IAAS5/F,GAAG,OAAOrT,EAAE+xG,UAAU/xG,EAAE+xG,QAAQpV,UAAU,GAAG,IAAI58F,GAAc,QAAVoN,EAAEA,EAAEk7B,OAAgB,IAAI2qE,GAAG7lG,EAAEnN,EAAEqT,GAAGlG,EAAEA,EAAEo7E,QAAQ,OAAOp7E,GAAG6lG,GAAG7lG,EAAEnN,EAAEqT,GAAGlG,EAAEA,EAAEo7E,OAAO,CAC1X,SAAS2qB,GAAG/lG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEoN,EAAEmyE,IAAI,GAAG,IAAIv/E,GAAG,IAAIA,EAAEoN,EAAEA,EAAEw5E,UAAU3mF,EAAEqT,EAAEg2B,aAAal8B,EAAEnN,GAAGqT,EAAEmjB,YAAYrpB,QAAQ,GAAG,IAAIpN,GAAc,QAAVoN,EAAEA,EAAEk7B,OAAgB,IAAI6qE,GAAG/lG,EAAEnN,EAAEqT,GAAGlG,EAAEA,EAAEo7E,QAAQ,OAAOp7E,GAAG+lG,GAAG/lG,EAAEnN,EAAEqT,GAAGlG,EAAEA,EAAEo7E,OAAO,CAAC,IAAI4qB,GAAE,KAAKC,IAAG,EAAG,SAASC,GAAGlmG,EAAEnN,EAAEqT,GAAG,IAAIA,EAAEA,EAAEg1B,MAAM,OAAOh1B,GAAGigG,GAAGnmG,EAAEnN,EAAEqT,GAAGA,EAAEA,EAAEk1E,OAAO,CACnR,SAAS+qB,GAAGnmG,EAAEnN,EAAEqT,GAAG,GAAG22E,IAAI,oBAAoBA,GAAGupB,qBAAqB,IAAIvpB,GAAGupB,qBAAqBxpB,GAAG12E,EAAY,CAAT,MAAMpP,GAAG,CAAC,OAAOoP,EAAEisE,KAAK,KAAK,EAAErtE,IAAGsgG,GAAGl/F,EAAErT,GAAG,KAAK,EAAE,IAAID,EAAEozG,GAAEtxG,EAAEuxG,GAAGD,GAAE,KAAKE,GAAGlmG,EAAEnN,EAAEqT,GAAO+/F,GAAGvxG,EAAE,QAATsxG,GAAEpzG,KAAkBqzG,IAAIjmG,EAAEgmG,GAAE9/F,EAAEA,EAAEszE,UAAU,IAAIx5E,EAAE8zB,SAAS9zB,EAAEuuB,WAAW9E,YAAYvjB,GAAGlG,EAAEypB,YAAYvjB,IAAI8/F,GAAEv8E,YAAYvjB,EAAEszE,YAAY,MAAM,KAAK,GAAG,OAAOwsB,KAAIC,IAAIjmG,EAAEgmG,GAAE9/F,EAAEA,EAAEszE,UAAU,IAAIx5E,EAAE8zB,SAASs8D,GAAGpwF,EAAEuuB,WAAWroB,GAAG,IAAIlG,EAAE8zB,UAAUs8D,GAAGpwF,EAAEkG,GAAGs6E,GAAGxgF,IAAIowF,GAAG4V,GAAE9/F,EAAEszE,YAAY,MAAM,KAAK,EAAE5mF,EAAEozG,GAAEtxG,EAAEuxG,GAAGD,GAAE9/F,EAAEszE,UAAUyG,cAAcgmB,IAAG,EAClfC,GAAGlmG,EAAEnN,EAAEqT,GAAG8/F,GAAEpzG,EAAEqzG,GAAGvxG,EAAE,MAAM,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,IAAIoQ,KAAoB,QAAhBlS,EAAEsT,EAAE+vF,cAAsC,QAAfrjG,EAAEA,EAAEuqG,aAAsB,CAACzoG,EAAE9B,EAAEA,EAAE6B,KAAK,EAAE,CAAC,IAAIQ,EAAEP,EAAES,EAAEF,EAAEghD,QAAQhhD,EAAEA,EAAEk9E,SAAI,IAASh9E,IAAI,KAAO,EAAFF,IAAe,KAAO,EAAFA,KAAfowG,GAAGn/F,EAAErT,EAAEsC,GAAyBT,EAAEA,EAAED,IAAI,OAAOC,IAAI9B,EAAE,CAACszG,GAAGlmG,EAAEnN,EAAEqT,GAAG,MAAM,KAAK,EAAE,IAAIpB,KAAIsgG,GAAGl/F,EAAErT,GAAiB,oBAAdD,EAAEsT,EAAEszE,WAAgC6sB,sBAAsB,IAAIzzG,EAAE8lG,MAAMxyF,EAAEiuF,cAAcvhG,EAAEwlG,MAAMlyF,EAAE80E,cAAcpoF,EAAEyzG,sBAAwC,CAAjB,MAAMvvG,GAAGokE,GAAEh1D,EAAErT,EAAEiE,EAAE,CAACovG,GAAGlmG,EAAEnN,EAAEqT,GAAG,MAAM,KAAK,GAAGggG,GAAGlmG,EAAEnN,EAAEqT,GAAG,MAAM,KAAK,GAAU,EAAPA,EAAE6tF,MAAQjvF,IAAGlS,EAAEkS,KAAI,OAChfoB,EAAE80E,cAAckrB,GAAGlmG,EAAEnN,EAAEqT,GAAGpB,GAAElS,GAAGszG,GAAGlmG,EAAEnN,EAAEqT,GAAG,MAAM,QAAQggG,GAAGlmG,EAAEnN,EAAEqT,GAAG,CAAC,SAAS0iB,GAAG5oB,GAAG,IAAInN,EAAEmN,EAAEi2F,YAAY,GAAG,OAAOpjG,EAAE,CAACmN,EAAEi2F,YAAY,KAAK,IAAI/vF,EAAElG,EAAEw5E,UAAU,OAAOtzE,IAAIA,EAAElG,EAAEw5E,UAAU,IAAI0rB,IAAIryG,EAAE6M,SAAQ,SAAS7M,GAAG,IAAID,EAAE0zG,GAAGlY,KAAK,KAAKpuF,EAAEnN,GAAGqT,EAAE65B,IAAIltC,KAAKqT,EAAE0yB,IAAI/lC,GAAGA,EAAEiC,KAAKlC,EAAEA,GAAG,GAAE,CAAC,CACzQ,SAAS2zG,GAAGvmG,EAAEnN,GAAG,IAAIqT,EAAErT,EAAE4gG,UAAU,GAAG,OAAOvtF,EAAE,IAAI,IAAItT,EAAE,EAAEA,EAAEsT,EAAEzU,OAAOmB,IAAI,CAAC,IAAI8B,EAAEwR,EAAEtT,GAAG,IAAI,IAAIqC,EAAE+K,EAAE7K,EAAEtC,EAAEiE,EAAE3B,EAAE6K,EAAE,KAAK,OAAOlJ,GAAG,CAAC,OAAOA,EAAEq7E,KAAK,KAAK,EAAE6zB,GAAElvG,EAAE0iF,UAAUysB,IAAG,EAAG,MAAMjmG,EAAE,KAAK,EAA4C,KAAK,EAAEgmG,GAAElvG,EAAE0iF,UAAUyG,cAAcgmB,IAAG,EAAG,MAAMjmG,EAAElJ,EAAEA,EAAEgkF,MAAM,CAAC,GAAG,OAAOkrB,GAAE,MAAMluG,MAAM9E,EAAE,MAAMmzG,GAAGlxG,EAAEE,EAAET,GAAGsxG,GAAE,KAAKC,IAAG,EAAG,IAAI9mD,EAAEzqD,EAAEmmF,UAAU,OAAO17B,IAAIA,EAAE27B,OAAO,MAAMpmF,EAAEomF,OAAO,IAAsB,CAAjB,MAAM1kF,GAAG8kE,GAAExmE,EAAE7B,EAAEuD,EAAE,CAAC,CAAC,GAAkB,MAAfvD,EAAE8wG,aAAmB,IAAI9wG,EAAEA,EAAEqoC,MAAM,OAAOroC,GAAG2zG,GAAG3zG,EAAEmN,GAAGnN,EAAEA,EAAEuoF,OAAO,CACje,SAASorB,GAAGxmG,EAAEnN,GAAG,IAAIqT,EAAElG,EAAE66E,UAAUjoF,EAAEoN,EAAE4I,MAAM,OAAO5I,EAAEmyE,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAiB,GAAdo0B,GAAG1zG,EAAEmN,GAAGymG,GAAGzmG,GAAQ,EAAFpN,EAAI,CAAC,IAAI2yG,GAAG,EAAEvlG,EAAEA,EAAE86E,QAAQ0qB,GAAG,EAAExlG,EAA2B,CAAxB,MAAMtM,GAAGwnE,GAAEl7D,EAAEA,EAAE86E,OAAOpnF,EAAE,CAAC,IAAI6xG,GAAG,EAAEvlG,EAAEA,EAAE86E,OAAgC,CAAxB,MAAMpnF,GAAGwnE,GAAEl7D,EAAEA,EAAE86E,OAAOpnF,EAAE,CAAC,CAAC,MAAM,KAAK,EAAE6yG,GAAG1zG,EAAEmN,GAAGymG,GAAGzmG,GAAK,IAAFpN,GAAO,OAAOsT,GAAGk/F,GAAGl/F,EAAEA,EAAE40E,QAAQ,MAAM,KAAK,EAAgD,GAA9CyrB,GAAG1zG,EAAEmN,GAAGymG,GAAGzmG,GAAK,IAAFpN,GAAO,OAAOsT,GAAGk/F,GAAGl/F,EAAEA,EAAE40E,QAAmB,GAAR96E,EAAE4I,MAAS,CAAC,IAAIlU,EAAEsL,EAAEw5E,UAAU,IAAIrE,GAAGzgF,EAAE,GAA4B,CAAxB,MAAMhB,GAAGwnE,GAAEl7D,EAAEA,EAAE86E,OAAOpnF,EAAE,CAAC,CAAC,GAAK,EAAFd,GAAoB,OAAd8B,EAAEsL,EAAEw5E,WAAmB,CAAC,IAAIvkF,EAAE+K,EAAEm0F,cAAch/F,EAAE,OAAO+Q,EAAEA,EAAEiuF,cAAcl/F,EAAE6B,EAAEkJ,EAAEK,KAAK8+C,EAAEn/C,EAAEi2F,YACje,GAAnBj2F,EAAEi2F,YAAY,KAAQ,OAAO92C,EAAE,IAAI,UAAUroD,GAAG,UAAU7B,EAAEoL,MAAM,MAAMpL,EAAEmX,MAAMk2B,EAAG5tC,EAAEO,GAAG4jF,GAAG/hF,EAAE3B,GAAG,IAAIiB,EAAEyiF,GAAG/hF,EAAE7B,GAAG,IAAIE,EAAE,EAAEA,EAAEgqD,EAAE1tD,OAAO0D,GAAG,EAAE,CAAC,IAAIi6B,EAAE+vB,EAAEhqD,GAAG8hG,EAAE93C,EAAEhqD,EAAE,GAAG,UAAUi6B,EAAE2oD,GAAGrjF,EAAEuiG,GAAG,4BAA4B7nE,EAAE2lD,GAAGrgF,EAAEuiG,GAAG,aAAa7nE,EAAE+lD,GAAGzgF,EAAEuiG,GAAG9mB,EAAGz7E,EAAE06B,EAAE6nE,EAAE7gG,EAAE,CAAC,OAAOU,GAAG,IAAK,QAAQg9E,EAAGp/E,EAAEO,GAAG,MAAM,IAAK,WAAWy/E,GAAGhgF,EAAEO,GAAG,MAAM,IAAK,SAAS,IAAIuZ,EAAE9Z,EAAEg/E,cAAc8wB,YAAY9vG,EAAEg/E,cAAc8wB,cAAcvvG,EAAEwvG,SAAS,IAAIvvG,EAAED,EAAEd,MAAM,MAAMe,EAAEg/E,GAAGx/E,IAAIO,EAAEwvG,SAASvvG,GAAE,GAAIsZ,MAAMvZ,EAAEwvG,WAAW,MAAMxvG,EAAEw+E,aAAaS,GAAGx/E,IAAIO,EAAEwvG,SACnfxvG,EAAEw+E,cAAa,GAAIS,GAAGx/E,IAAIO,EAAEwvG,SAASxvG,EAAEwvG,SAAS,GAAG,IAAG,IAAK/vG,EAAEg8F,IAAIz7F,CAA0B,CAAxB,MAAMvB,GAAGwnE,GAAEl7D,EAAEA,EAAE86E,OAAOpnF,EAAE,CAAC,CAAC,MAAM,KAAK,EAAgB,GAAd6yG,GAAG1zG,EAAEmN,GAAGymG,GAAGzmG,GAAQ,EAAFpN,EAAI,CAAC,GAAG,OAAOoN,EAAEw5E,UAAU,MAAM1hF,MAAM9E,EAAE,MAAM0B,EAAEsL,EAAEw5E,UAAUvkF,EAAE+K,EAAEm0F,cAAc,IAAIz/F,EAAE2gF,UAAUpgF,CAA0B,CAAxB,MAAMvB,GAAGwnE,GAAEl7D,EAAEA,EAAE86E,OAAOpnF,EAAE,CAAC,CAAC,MAAM,KAAK,EAAgB,GAAd6yG,GAAG1zG,EAAEmN,GAAGymG,GAAGzmG,GAAQ,EAAFpN,GAAK,OAAOsT,GAAGA,EAAE80E,cAAcgF,aAAa,IAAIQ,GAAG3tF,EAAEotF,cAAuC,CAAxB,MAAMvsF,GAAGwnE,GAAEl7D,EAAEA,EAAE86E,OAAOpnF,EAAE,CAAC,MAAM,KAAK,EAG4G,QAAQ6yG,GAAG1zG,EACnfmN,GAAGymG,GAAGzmG,SAJ4Y,KAAK,GAAGumG,GAAG1zG,EAAEmN,GAAGymG,GAAGzmG,GAAqB,MAAlBtL,EAAEsL,EAAEk7B,OAAQtyB,QAAa3T,EAAE,OAAOP,EAAEsmF,cAActmF,EAAE8kF,UAAUktB,SAASzxG,GAAGA,GAClf,OAAOP,EAAEmmF,WAAW,OAAOnmF,EAAEmmF,UAAUG,gBAAgB2rB,GAAG7qB,OAAQ,EAAFlpF,GAAKg2B,GAAG5oB,GAAG,MAAM,KAAK,GAAsF,GAAnFovB,EAAE,OAAOlpB,GAAG,OAAOA,EAAE80E,cAAqB,EAAPh7E,EAAE+zF,MAAQjvF,IAAG1O,EAAE0O,KAAIsqB,EAAEm3E,GAAG1zG,EAAEmN,GAAG8E,GAAE1O,GAAGmwG,GAAG1zG,EAAEmN,GAAGymG,GAAGzmG,GAAQ,KAAFpN,EAAO,CAA0B,GAAzBwD,EAAE,OAAO4J,EAAEg7E,eAAkBh7E,EAAEw5E,UAAUktB,SAAStwG,KAAKg5B,GAAG,KAAY,EAAPpvB,EAAE+zF,MAAQ,IAAI/rE,GAAEhoB,EAAEovB,EAAEpvB,EAAEk7B,MAAM,OAAO9L,GAAG,CAAC,IAAI6nE,EAAEjvE,GAAEoH,EAAE,OAAOpH,IAAG,CAAe,OAAV9yB,GAAJsZ,EAAEwZ,IAAMkT,MAAa1sB,EAAE2jE,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAGozB,GAAG,EAAE/2F,EAAEA,EAAEssE,QAAQ,MAAM,KAAK,EAAEsqB,GAAG52F,EAAEA,EAAEssE,QAAQ,IAAIlnF,EAAE4a,EAAEgrE,UAAU,GAAG,oBAAoB5lF,EAAEyyG,qBAAqB,CAACzzG,EAAE4b,EAAEtI,EAAEsI,EAAEssE,OAAO,IAAIjoF,EAAED,EAAEgB,EAAE8kG,MACpf7lG,EAAEshG,cAAcvgG,EAAEwkG,MAAMvlG,EAAEmoF,cAAcpnF,EAAEyyG,sBAAwC,CAAjB,MAAM3yG,GAAGwnE,GAAEtoE,EAAEsT,EAAExS,EAAE,CAAC,CAAC,MAAM,KAAK,EAAE0xG,GAAG52F,EAAEA,EAAEssE,QAAQ,MAAM,KAAK,GAAG,GAAG,OAAOtsE,EAAEwsE,cAAc,CAAC4rB,GAAG3P,GAAG,QAAQ,EAAE,OAAO/hG,GAAGA,EAAE4lF,OAAOtsE,EAAEwZ,GAAE9yB,GAAG0xG,GAAG3P,EAAE,CAAC7nE,EAAEA,EAAEgsD,OAAO,CAACp7E,EAAE,IAAIovB,EAAE,KAAK6nE,EAAEj3F,IAAI,CAAC,GAAG,IAAIi3F,EAAE9kB,KAAK,GAAG,OAAO/iD,EAAE,CAACA,EAAE6nE,EAAE,IAAIviG,EAAEuiG,EAAEzd,UAAUpjF,EAAa,oBAAVnB,EAAEP,EAAEirB,OAA4B8e,YAAYxpC,EAAEwpC,YAAY,UAAU,OAAO,aAAaxpC,EAAEqrB,QAAQ,QAASxpB,EAAEmgG,EAAEzd,UAAkCrkF,OAAE,KAA1BgqD,EAAE83C,EAAE9C,cAAcx0E,QAAoB,OAAOw/B,GAAGA,EAAE/tD,eAAe,WAAW+tD,EAAE7+B,QAAQ,KAAKxpB,EAAE6oB,MAAMW,QACzfw3D,GAAG,UAAU3iF,GAA4B,CAAxB,MAAMzB,GAAGwnE,GAAEl7D,EAAEA,EAAE86E,OAAOpnF,EAAE,CAAC,OAAO,GAAG,IAAIujG,EAAE9kB,KAAK,GAAG,OAAO/iD,EAAE,IAAI6nE,EAAEzd,UAAUnE,UAAUj/E,EAAE,GAAG6gG,EAAE9C,aAAsC,CAAxB,MAAMzgG,GAAGwnE,GAAEl7D,EAAEA,EAAE86E,OAAOpnF,EAAE,OAAO,IAAI,KAAKujG,EAAE9kB,KAAK,KAAK8kB,EAAE9kB,KAAK,OAAO8kB,EAAEjc,eAAeic,IAAIj3F,IAAI,OAAOi3F,EAAE/7D,MAAM,CAAC+7D,EAAE/7D,MAAM4/C,OAAOmc,EAAEA,EAAEA,EAAE/7D,MAAM,QAAQ,CAAC,GAAG+7D,IAAIj3F,EAAE,MAAMA,EAAE,KAAK,OAAOi3F,EAAE7b,SAAS,CAAC,GAAG,OAAO6b,EAAEnc,QAAQmc,EAAEnc,SAAS96E,EAAE,MAAMA,EAAEovB,IAAI6nE,IAAI7nE,EAAE,MAAM6nE,EAAEA,EAAEnc,MAAM,CAAC1rD,IAAI6nE,IAAI7nE,EAAE,MAAM6nE,EAAE7b,QAAQN,OAAOmc,EAAEnc,OAAOmc,EAAEA,EAAE7b,OAAO,CAAC,CAAC,MAAM,KAAK,GAAGmrB,GAAG1zG,EAAEmN,GAAGymG,GAAGzmG,GAAK,EAAFpN,GAAKg2B,GAAG5oB,GAAS,KAAK,IACtd,CAAC,SAASymG,GAAGzmG,GAAG,IAAInN,EAAEmN,EAAE4I,MAAM,GAAK,EAAF/V,EAAI,CAAC,IAAImN,EAAE,CAAC,IAAI,IAAIkG,EAAElG,EAAE86E,OAAO,OAAO50E,GAAG,CAAC,GAAGy/F,GAAGz/F,GAAG,CAAC,IAAItT,EAAEsT,EAAE,MAAMlG,CAAC,CAACkG,EAAEA,EAAE40E,MAAM,CAAC,MAAMhjF,MAAM9E,EAAE,KAAM,CAAC,OAAOJ,EAAEu/E,KAAK,KAAK,EAAE,IAAIz9E,EAAE9B,EAAE4mF,UAAkB,GAAR5mF,EAAEgW,QAAWusE,GAAGzgF,EAAE,IAAI9B,EAAEgW,QAAQ,IAAgBm9F,GAAG/lG,EAAT4lG,GAAG5lG,GAAUtL,GAAG,MAAM,KAAK,EAAE,KAAK,EAAE,IAAIS,EAAEvC,EAAE4mF,UAAUyG,cAAsB4lB,GAAG7lG,EAAT4lG,GAAG5lG,GAAU7K,GAAG,MAAM,QAAQ,MAAM2C,MAAM9E,EAAE,MAAgC,CAAxB,MAAMmsD,GAAG+b,GAAEl7D,EAAEA,EAAE86E,OAAO37B,EAAE,CAACn/C,EAAE4I,QAAQ,CAAC,CAAG,KAAF/V,IAASmN,EAAE4I,QAAQ,KAAK,CAAC,SAASi+F,GAAG7mG,EAAEnN,EAAEqT,GAAG8hB,GAAEhoB,EAAE8mG,GAAG9mG,EAAEnN,EAAEqT,EAAE,CACvb,SAAS4gG,GAAG9mG,EAAEnN,EAAEqT,GAAG,IAAI,IAAItT,EAAE,KAAY,EAAPoN,EAAE+zF,MAAQ,OAAO/rE,IAAG,CAAC,IAAItzB,EAAEszB,GAAE/yB,EAAEP,EAAEwmC,MAAM,GAAG,KAAKxmC,EAAEy9E,KAAKv/E,EAAE,CAAC,IAAIuC,EAAE,OAAOT,EAAEsmF,eAAeiqB,GAAG,IAAI9vG,EAAE,CAAC,IAAI2B,EAAEpC,EAAEmmF,UAAU17B,EAAE,OAAOroD,GAAG,OAAOA,EAAEkkF,eAAel2E,GAAEhO,EAAEmuG,GAAG,IAAI7uG,EAAE0O,GAAO,GAALmgG,GAAG9vG,GAAM2P,GAAEq6C,KAAK/oD,EAAE,IAAI4xB,GAAEtzB,EAAE,OAAOszB,IAAOm3B,GAAJhqD,EAAE6yB,IAAMkT,MAAM,KAAK/lC,EAAEg9E,KAAK,OAAOh9E,EAAE6lF,cAAc+rB,GAAGryG,GAAG,OAAOyqD,GAAGA,EAAE27B,OAAO3lF,EAAE6yB,GAAEm3B,GAAG4nD,GAAGryG,GAAG,KAAK,OAAOO,GAAG+yB,GAAE/yB,EAAE6xG,GAAG7xG,EAAEpC,EAAEqT,GAAGjR,EAAEA,EAAEmmF,QAAQpzD,GAAEtzB,EAAEuwG,GAAGnuG,EAAEgO,GAAE1O,CAAC,CAAC4wG,GAAGhnG,EAAM,MAAM,KAAoB,KAAftL,EAAEivG,eAAoB,OAAO1uG,GAAGA,EAAE6lF,OAAOpmF,EAAEszB,GAAE/yB,GAAG+xG,GAAGhnG,EAAM,CAAC,CACvc,SAASgnG,GAAGhnG,GAAG,KAAK,OAAOgoB,IAAG,CAAC,IAAIn1B,EAAEm1B,GAAE,GAAG,KAAa,KAARn1B,EAAE+V,OAAY,CAAC,IAAI1C,EAAErT,EAAEgoF,UAAU,IAAI,GAAG,KAAa,KAARhoF,EAAE+V,OAAY,OAAO/V,EAAEs/E,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GAAGrtE,IAAG0gG,GAAG,EAAE3yG,GAAG,MAAM,KAAK,EAAE,IAAID,EAAEC,EAAE2mF,UAAU,GAAW,EAAR3mF,EAAE+V,QAAU9D,GAAE,GAAG,OAAOoB,EAAEtT,EAAEmmG,wBAAwB,CAAC,IAAIrkG,EAAE7B,EAAEo0B,cAAcp0B,EAAEwN,KAAK6F,EAAEiuF,cAAcK,GAAG3hG,EAAEwN,KAAK6F,EAAEiuF,eAAevhG,EAAE2vG,mBAAmB7tG,EAAEwR,EAAE80E,cAAcpoF,EAAEq0G,oCAAoC,CAAC,IAAIhyG,EAAEpC,EAAEojG,YAAY,OAAOhhG,GAAGiiG,GAAGrkG,EAAEoC,EAAErC,GAAG,MAAM,KAAK,EAAE,IAAIuC,EAAEtC,EAAEojG,YAAY,GAAG,OAAO9gG,EAAE,CAAQ,GAAP+Q,EAAE,KAAQ,OAAOrT,EAAEqoC,MAAM,OAAOroC,EAAEqoC,MAAMi3C,KAAK,KAAK,EACvf,KAAK,EAAEjsE,EAAErT,EAAEqoC,MAAMs+C,UAAU0d,GAAGrkG,EAAEsC,EAAE+Q,EAAE,CAAC,MAAM,KAAK,EAAE,IAAIpP,EAAEjE,EAAE2mF,UAAU,GAAG,OAAOtzE,GAAW,EAARrT,EAAE+V,MAAQ,CAAC1C,EAAEpP,EAAE,IAAIqoD,EAAEtsD,EAAEshG,cAAc,OAAOthG,EAAEwN,MAAM,IAAK,SAAS,IAAK,QAAQ,IAAK,SAAS,IAAK,WAAW8+C,EAAE0lD,WAAW3+F,EAAE4lF,QAAQ,MAAM,IAAK,MAAM3sC,EAAEj0B,MAAMhlB,EAAEglB,IAAIi0B,EAAEj0B,KAAK,CAAC,MAAM,KAAK,EAAQ,KAAK,EAAQ,KAAK,GAAyJ,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,MAAhM,KAAK,GAAG,GAAG,OAAOr4B,EAAEmoF,cAAc,CAAC,IAAI5kF,EAAEvD,EAAEgoF,UAAU,GAAG,OAAOzkF,EAAE,CAAC,IAAIg5B,EAAEh5B,EAAE4kF,cAAc,GAAG,OAAO5rD,EAAE,CAAC,IAAI6nE,EAAE7nE,EAAE6rD,WAAW,OAAOgc,GAAGzW,GAAGyW,EAAE,CAAC,CAAC,CAAC,MAC5c,QAAQ,MAAMn/F,MAAM9E,EAAE,MAAO8R,IAAW,IAARjS,EAAE+V,OAAW68F,GAAG5yG,EAA2B,CAAxB,MAAM2b,GAAG0sD,GAAEroE,EAAEA,EAAEioF,OAAOtsE,EAAE,CAAC,CAAC,GAAG3b,IAAImN,EAAE,CAACgoB,GAAE,KAAK,KAAK,CAAa,GAAG,QAAf9hB,EAAErT,EAAEuoF,SAAoB,CAACl1E,EAAE40E,OAAOjoF,EAAEioF,OAAO9yD,GAAE9hB,EAAE,KAAK,CAAC8hB,GAAEn1B,EAAEioF,MAAM,CAAC,CAAC,SAAS8rB,GAAG5mG,GAAG,KAAK,OAAOgoB,IAAG,CAAC,IAAIn1B,EAAEm1B,GAAE,GAAGn1B,IAAImN,EAAE,CAACgoB,GAAE,KAAK,KAAK,CAAC,IAAI9hB,EAAErT,EAAEuoF,QAAQ,GAAG,OAAOl1E,EAAE,CAACA,EAAE40E,OAAOjoF,EAAEioF,OAAO9yD,GAAE9hB,EAAE,KAAK,CAAC8hB,GAAEn1B,EAAEioF,MAAM,CAAC,CACvS,SAASisB,GAAG/mG,GAAG,KAAK,OAAOgoB,IAAG,CAAC,IAAIn1B,EAAEm1B,GAAE,IAAI,OAAOn1B,EAAEs/E,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,IAAIjsE,EAAErT,EAAEioF,OAAO,IAAI0qB,GAAG,EAAE3yG,EAAoB,CAAjB,MAAMssD,GAAG+b,GAAEroE,EAAEqT,EAAEi5C,EAAE,CAAC,MAAM,KAAK,EAAE,IAAIvsD,EAAEC,EAAE2mF,UAAU,GAAG,oBAAoB5mF,EAAEmmG,kBAAkB,CAAC,IAAIrkG,EAAE7B,EAAEioF,OAAO,IAAIloF,EAAEmmG,mBAAqC,CAAjB,MAAM55C,GAAG+b,GAAEroE,EAAE6B,EAAEyqD,EAAE,CAAC,CAAC,IAAIlqD,EAAEpC,EAAEioF,OAAO,IAAI2qB,GAAG5yG,EAAoB,CAAjB,MAAMssD,GAAG+b,GAAEroE,EAAEoC,EAAEkqD,EAAE,CAAC,MAAM,KAAK,EAAE,IAAIhqD,EAAEtC,EAAEioF,OAAO,IAAI2qB,GAAG5yG,EAAoB,CAAjB,MAAMssD,GAAG+b,GAAEroE,EAAEsC,EAAEgqD,EAAE,EAA2B,CAAxB,MAAMA,GAAG+b,GAAEroE,EAAEA,EAAEioF,OAAO37B,EAAE,CAAC,GAAGtsD,IAAImN,EAAE,CAACgoB,GAAE,KAAK,KAAK,CAAC,IAAIlxB,EAAEjE,EAAEuoF,QAAQ,GAAG,OAAOtkF,EAAE,CAACA,EAAEgkF,OAAOjoF,EAAEioF,OAAO9yD,GAAElxB,EAAE,KAAK,CAACkxB,GAAEn1B,EAAEioF,MAAM,CAAC,CAC7d,IAwBkNosB,GAxB9MC,GAAGpvG,KAAKwD,KAAK6rG,GAAG32B,EAAGoqB,uBAAuBwM,GAAG52B,EAAG0wB,kBAAkBmG,GAAG72B,EAAGgQ,wBAAwBoW,GAAE,EAAEoG,GAAE,KAAKruB,GAAE,KAAK7pE,GAAE,EAAEk9F,GAAG,EAAED,GAAGjR,GAAG,GAAG9oE,GAAE,EAAEs/E,GAAG,KAAKxgD,GAAG,EAAEygD,GAAG,EAAEC,GAAG,EAAEC,GAAG,KAAKC,GAAG,KAAKhB,GAAG,EAAE7B,GAAG3oF,IAASyrF,GAAG,KAAKtH,IAAG,EAAGC,GAAG,KAAKI,GAAG,KAAKkH,IAAG,EAAGC,GAAG,KAAKC,GAAG,EAAEC,GAAG,EAAEC,GAAG,KAAKC,IAAI,EAAEC,GAAG,EAAE,SAASpgF,KAAI,OAAO,KAAO,EAAF8uE,IAAK/a,MAAK,IAAIosB,GAAGA,GAAGA,GAAGpsB,IAAG,CAChU,SAAS6b,GAAG33F,GAAG,OAAG,KAAY,EAAPA,EAAE+zF,MAAe,EAAK,KAAO,EAAF8C,KAAM,IAAI9xF,GAASA,IAAGA,GAAK,OAAOwvF,GAAG5T,YAAkB,IAAIwnB,KAAKA,GAAGpqB,MAAMoqB,IAAU,KAAPnoG,EAAEo+E,IAAkBp+E,EAAiBA,OAAE,KAAjBA,EAAEqnB,OAAO4hE,OAAmB,GAAGhI,GAAGjhF,EAAEK,KAAc,CAAC,SAASu3F,GAAG53F,EAAEnN,EAAEqT,EAAEtT,GAAG,GAAG,GAAGo1G,GAAG,MAAMA,GAAG,EAAEC,GAAG,KAAKnwG,MAAM9E,EAAE,MAAMirF,GAAGj+E,EAAEkG,EAAEtT,GAAM,KAAO,EAAFikG,KAAM72F,IAAIi9F,KAAEj9F,IAAIi9F,KAAI,KAAO,EAAFpG,MAAO2Q,IAAIthG,GAAG,IAAI+hB,IAAGmgF,GAAGpoG,EAAE+E,KAAIsjG,GAAGroG,EAAEpN,GAAG,IAAIsT,GAAG,IAAI2wF,IAAG,KAAY,EAAPhkG,EAAEkhG,QAAU+Q,GAAGhpB,KAAI,IAAIqW,IAAIE,MAAK,CAC1Y,SAASgW,GAAGroG,EAAEnN,GAAG,IAAIqT,EAAElG,EAAEsoG,cA5MzB,SAAYtoG,EAAEnN,GAAG,IAAI,IAAIqT,EAAElG,EAAEy9E,eAAe7qF,EAAEoN,EAAE09E,YAAYhpF,EAAEsL,EAAEuoG,gBAAgBtzG,EAAE+K,EAAEw9E,aAAa,EAAEvoF,GAAG,CAAC,IAAIE,EAAE,GAAG2nF,GAAG7nF,GAAG6B,EAAE,GAAG3B,EAAEgqD,EAAEzqD,EAAES,IAAO,IAAIgqD,EAAM,KAAKroD,EAAEoP,IAAI,KAAKpP,EAAElE,KAAG8B,EAAES,GAAG0oF,GAAG/mF,EAAEjE,IAAQssD,GAAGtsD,IAAImN,EAAEwoG,cAAc1xG,GAAG7B,IAAI6B,CAAC,CAAC,CA4MnL2xG,CAAGzoG,EAAEnN,GAAG,IAAID,EAAE2qF,GAAGv9E,EAAEA,IAAIi9F,GAAEl4F,GAAE,GAAG,GAAG,IAAInS,EAAE,OAAOsT,GAAGq8B,GAAGr8B,GAAGlG,EAAEsoG,aAAa,KAAKtoG,EAAE0oG,iBAAiB,OAAO,GAAG71G,EAAED,GAAGA,EAAEoN,EAAE0oG,mBAAmB71G,EAAE,CAAgB,GAAf,MAAMqT,GAAGq8B,GAAGr8B,GAAM,IAAIrT,EAAE,IAAImN,EAAEmyE,IA7IsJ,SAAYnyE,GAAGmyF,IAAG,EAAGC,GAAGpyF,EAAE,CA6I5K2oG,CAAGC,GAAGxa,KAAK,KAAKpuF,IAAIoyF,GAAGwW,GAAGxa,KAAK,KAAKpuF,IAAIiwF,IAAG,WAAW,KAAO,EAAF4G,KAAMxE,IAAI,IAAGnsF,EAAE,SAAS,CAAC,OAAOm4E,GAAGzrF,IAAI,KAAK,EAAEsT,EAAEg2E,GAAG,MAAM,KAAK,EAAEh2E,EAAEk2E,GAAG,MAAM,KAAK,GAAwC,QAAQl2E,EAAEo2E,SAApC,KAAK,UAAUp2E,EAAEw2E,GAAsBx2E,EAAE2iG,GAAG3iG,EAAE4iG,GAAG1a,KAAK,KAAKpuF,GAAG,CAACA,EAAE0oG,iBAAiB71G,EAAEmN,EAAEsoG,aAAapiG,CAAC,CAAC,CAC7c,SAAS4iG,GAAG9oG,EAAEnN,GAAc,GAAXq1G,IAAI,EAAEC,GAAG,EAAK,KAAO,EAAFtR,IAAK,MAAM/+F,MAAM9E,EAAE,MAAM,IAAIkT,EAAElG,EAAEsoG,aAAa,GAAGS,MAAM/oG,EAAEsoG,eAAepiG,EAAE,OAAO,KAAK,IAAItT,EAAE2qF,GAAGv9E,EAAEA,IAAIi9F,GAAEl4F,GAAE,GAAG,GAAG,IAAInS,EAAE,OAAO,KAAK,GAAG,KAAO,GAAFA,IAAO,KAAKA,EAAEoN,EAAEwoG,eAAe31G,EAAEA,EAAEm2G,GAAGhpG,EAAEpN,OAAO,CAACC,EAAED,EAAE,IAAI8B,EAAEmiG,GAAEA,IAAG,EAAE,IAAI5hG,EAAEg0G,KAAgD,IAAxChM,KAAIj9F,GAAG+E,KAAIlS,IAAE+0G,GAAG,KAAK9C,GAAGhpB,KAAI,IAAIotB,GAAGlpG,EAAEnN,UAAUs2G,KAAK,MAAM,MAAMryG,GAAGsyG,GAAGppG,EAAElJ,EAAE,CAAUg+F,KAAKsS,GAAGjnG,QAAQlL,EAAE4hG,GAAEniG,EAAE,OAAOk6E,GAAE/7E,EAAE,GAAGoqG,GAAE,KAAKl4F,GAAE,EAAElS,EAAEo1B,GAAE,CAAC,GAAG,IAAIp1B,EAAE,CAAyC,GAAxC,IAAIA,IAAY,KAAR6B,EAAEopF,GAAG99E,MAAWpN,EAAE8B,EAAE7B,EAAEw2G,GAAGrpG,EAAEtL,KAAQ,IAAI7B,EAAE,MAAMqT,EAAEqhG,GAAG2B,GAAGlpG,EAAE,GAAGooG,GAAGpoG,EAAEpN,GAAGy1G,GAAGroG,EAAE87E,MAAK51E,EAAE,GAAG,IAAIrT,EAAEu1G,GAAGpoG,EAAEpN,OAChf,CAAuB,GAAtB8B,EAAEsL,EAAEG,QAAQ06E,UAAa,KAAO,GAAFjoF,KAGnC,SAAYoN,GAAG,IAAI,IAAInN,EAAEmN,IAAI,CAAC,GAAW,MAARnN,EAAE+V,MAAY,CAAC,IAAI1C,EAAErT,EAAEojG,YAAY,GAAG,OAAO/vF,GAAe,QAAXA,EAAEA,EAAEk3F,QAAiB,IAAI,IAAIxqG,EAAE,EAAEA,EAAEsT,EAAEzU,OAAOmB,IAAI,CAAC,IAAI8B,EAAEwR,EAAEtT,GAAGqC,EAAEP,EAAEooG,YAAYpoG,EAAEA,EAAEP,MAAM,IAAI,IAAIo2F,GAAGt1F,IAAIP,GAAG,OAAM,CAAoB,CAAjB,MAAMS,GAAG,OAAM,CAAE,CAAC,CAAC,CAAW,GAAV+Q,EAAErT,EAAEqoC,MAAwB,MAAfroC,EAAE8wG,cAAoB,OAAOz9F,EAAEA,EAAE40E,OAAOjoF,EAAEA,EAAEqT,MAAM,CAAC,GAAGrT,IAAImN,EAAE,MAAM,KAAK,OAAOnN,EAAEuoF,SAAS,CAAC,GAAG,OAAOvoF,EAAEioF,QAAQjoF,EAAEioF,SAAS96E,EAAE,OAAM,EAAGnN,EAAEA,EAAEioF,MAAM,CAACjoF,EAAEuoF,QAAQN,OAAOjoF,EAAEioF,OAAOjoF,EAAEA,EAAEuoF,OAAO,CAAC,CAAC,OAAM,CAAE,CAHvXkuB,CAAG50G,KAAe,KAAV7B,EAAEm2G,GAAGhpG,EAAEpN,MAAmB,KAARqC,EAAE6oF,GAAG99E,MAAWpN,EAAEqC,EAAEpC,EAAEw2G,GAAGrpG,EAAE/K,KAAK,IAAIpC,GAAG,MAAMqT,EAAEqhG,GAAG2B,GAAGlpG,EAAE,GAAGooG,GAAGpoG,EAAEpN,GAAGy1G,GAAGroG,EAAE87E,MAAK51E,EAAqC,OAAnClG,EAAEupG,aAAa70G,EAAEsL,EAAEwpG,cAAc52G,EAASC,GAAG,KAAK,EAAE,KAAK,EAAE,MAAMiF,MAAM9E,EAAE,MAAM,KAAK,EAC8B,KAAK,EAAEy2G,GAAGzpG,EAAE2nG,GAAGC,IAAI,MAD7B,KAAK,EAAU,GAARQ,GAAGpoG,EAAEpN,IAAS,UAAFA,KAAeA,GAAiB,IAAbC,EAAE8zG,GAAG,IAAI7qB,MAAU,CAAC,GAAG,IAAIyB,GAAGv9E,EAAE,GAAG,MAAyB,KAAnBtL,EAAEsL,EAAEy9E,gBAAqB7qF,KAAKA,EAAE,CAACm1B,KAAI/nB,EAAE09E,aAAa19E,EAAEy9E,eAAe/oF,EAAE,KAAK,CAACsL,EAAE0pG,cAAc7Z,GAAG4Z,GAAGrb,KAAK,KAAKpuF,EAAE2nG,GAAGC,IAAI/0G,GAAG,KAAK,CAAC42G,GAAGzpG,EAAE2nG,GAAGC,IAAI,MAAM,KAAK,EAAU,GAARQ,GAAGpoG,EAAEpN,IAAS,QAAFA,KAC9eA,EAAE,MAAqB,IAAfC,EAAEmN,EAAEk+E,WAAexpF,GAAG,EAAE,EAAE9B,GAAG,CAAC,IAAIuC,EAAE,GAAG2nF,GAAGlqF,GAAGqC,EAAE,GAAGE,GAAEA,EAAEtC,EAAEsC,IAAKT,IAAIA,EAAES,GAAGvC,IAAIqC,CAAC,CAAqG,GAApGrC,EAAE8B,EAAqG,IAA3F9B,GAAG,KAAXA,EAAEkpF,KAAIlpF,GAAW,IAAI,IAAIA,EAAE,IAAI,KAAKA,EAAE,KAAK,KAAKA,EAAE,KAAK,IAAIA,EAAE,IAAI,KAAKA,EAAE,KAAK,KAAKu0G,GAAGv0G,EAAE,OAAOA,GAAU,CAACoN,EAAE0pG,cAAc7Z,GAAG4Z,GAAGrb,KAAK,KAAKpuF,EAAE2nG,GAAGC,IAAIh1G,GAAG,KAAK,CAAC62G,GAAGzpG,EAAE2nG,GAAGC,IAAI,MAA+B,QAAQ,MAAM9vG,MAAM9E,EAAE,MAAO,CAAC,CAAW,OAAVq1G,GAAGroG,EAAE87E,MAAY97E,EAAEsoG,eAAepiG,EAAE4iG,GAAG1a,KAAK,KAAKpuF,GAAG,IAAI,CACrX,SAASqpG,GAAGrpG,EAAEnN,GAAG,IAAIqT,EAAEwhG,GAA2G,OAAxG1nG,EAAEG,QAAQ66E,cAAcgF,eAAekpB,GAAGlpG,EAAEnN,GAAG+V,OAAO,KAAe,KAAV5I,EAAEgpG,GAAGhpG,EAAEnN,MAAWA,EAAE80G,GAAGA,GAAGzhG,EAAE,OAAOrT,GAAG0xG,GAAG1xG,IAAWmN,CAAC,CAAC,SAASukG,GAAGvkG,GAAG,OAAO2nG,GAAGA,GAAG3nG,EAAE2nG,GAAG/1G,KAAKI,MAAM21G,GAAG3nG,EAAE,CAE5L,SAASooG,GAAGpoG,EAAEnN,GAAuD,IAApDA,IAAI40G,GAAG50G,IAAI20G,GAAGxnG,EAAEy9E,gBAAgB5qF,EAAEmN,EAAE09E,cAAc7qF,EAAMmN,EAAEA,EAAEuoG,gBAAgB,EAAE11G,GAAG,CAAC,IAAIqT,EAAE,GAAG42E,GAAGjqF,GAAGD,EAAE,GAAGsT,EAAElG,EAAEkG,IAAI,EAAErT,IAAID,CAAC,CAAC,CAAC,SAASg2G,GAAG5oG,GAAG,GAAG,KAAO,EAAF62F,IAAK,MAAM/+F,MAAM9E,EAAE,MAAM+1G,KAAK,IAAIl2G,EAAE0qF,GAAGv9E,EAAE,GAAG,GAAG,KAAO,EAAFnN,GAAK,OAAOw1G,GAAGroG,EAAE87E,MAAK,KAAK,IAAI51E,EAAE8iG,GAAGhpG,EAAEnN,GAAG,GAAG,IAAImN,EAAEmyE,KAAK,IAAIjsE,EAAE,CAAC,IAAItT,EAAEkrF,GAAG99E,GAAG,IAAIpN,IAAIC,EAAED,EAAEsT,EAAEmjG,GAAGrpG,EAAEpN,GAAG,CAAC,GAAG,IAAIsT,EAAE,MAAMA,EAAEqhG,GAAG2B,GAAGlpG,EAAE,GAAGooG,GAAGpoG,EAAEnN,GAAGw1G,GAAGroG,EAAE87E,MAAK51E,EAAE,GAAG,IAAIA,EAAE,MAAMpO,MAAM9E,EAAE,MAAiF,OAA3EgN,EAAEupG,aAAavpG,EAAEG,QAAQ06E,UAAU76E,EAAEwpG,cAAc32G,EAAE42G,GAAGzpG,EAAE2nG,GAAGC,IAAIS,GAAGroG,EAAE87E,MAAY,IAAI,CACvd,SAAS6tB,GAAG3pG,EAAEnN,GAAG,IAAIqT,EAAE2wF,GAAEA,IAAG,EAAE,IAAI,OAAO72F,EAAEnN,EAA2C,CAAxC,QAAY,KAAJgkG,GAAE3wF,KAAU4+F,GAAGhpB,KAAI,IAAIqW,IAAIE,KAAK,CAAC,CAAC,SAASuX,GAAG5pG,GAAG,OAAO8nG,IAAI,IAAIA,GAAG31B,KAAK,KAAO,EAAF0kB,KAAMkS,KAAK,IAAIl2G,EAAEgkG,GAAEA,IAAG,EAAE,IAAI3wF,EAAEohG,GAAG3mB,WAAW/tF,EAAEwrF,GAAE,IAAI,GAAGkpB,GAAG3mB,WAAW,KAAKvC,GAAE,EAAEp+E,EAAE,OAAOA,GAAmD,CAA/C,QAAQo+E,GAAExrF,EAAE00G,GAAG3mB,WAAWz6E,EAAM,KAAO,GAAX2wF,GAAEhkG,KAAaw/F,IAAI,CAAC,CAAC,SAAS0S,KAAK9C,GAAGD,GAAG7hG,QAAQyE,GAAEo9F,GAAG,CAChT,SAASkH,GAAGlpG,EAAEnN,GAAGmN,EAAEupG,aAAa,KAAKvpG,EAAEwpG,cAAc,EAAE,IAAItjG,EAAElG,EAAE0pG,cAAiD,IAAlC,IAAIxjG,IAAIlG,EAAE0pG,eAAe,EAAE5Z,GAAG5pF,IAAO,OAAO0oE,GAAE,IAAI1oE,EAAE0oE,GAAEkM,OAAO,OAAO50E,GAAG,CAAC,IAAItT,EAAEsT,EAAQ,OAANgtF,GAAGtgG,GAAUA,EAAEu/E,KAAK,KAAK,EAA6B,QAA3Bv/E,EAAEA,EAAEyN,KAAKqxF,yBAA4B,IAAS9+F,GAAG++F,KAAK,MAAM,KAAK,EAAEyI,KAAKx1F,GAAEusF,IAAIvsF,GAAEssF,IAAGwJ,KAAK,MAAM,KAAK,EAAEJ,GAAG1nG,GAAG,MAAM,KAAK,EAAEwnG,KAAK,MAAM,KAAK,GAAc,KAAK,GAAGx1F,GAAEsiD,IAAG,MAAM,KAAK,GAAG6tC,GAAGniG,EAAEyN,KAAKyN,UAAU,MAAM,KAAK,GAAG,KAAK,GAAGi3F,KAAK7+F,EAAEA,EAAE40E,MAAM,CAAqE,GAApEmiB,GAAEj9F,EAAE4uE,GAAE5uE,EAAEs5F,GAAGt5F,EAAEG,QAAQ,MAAM4E,GAAEk9F,GAAGpvG,EAAEo1B,GAAE,EAAEs/E,GAAG,KAAKE,GAAGD,GAAGzgD,GAAG,EAAE4gD,GAAGD,GAAG,KAAQ,OAAOhS,GAAG,CAAC,IAAI7iG,EAC1f,EAAEA,EAAE6iG,GAAGjkG,OAAOoB,IAAI,GAA2B,QAAhBD,GAARsT,EAAEwvF,GAAG7iG,IAAOgjG,aAAqB,CAAC3vF,EAAE2vF,YAAY,KAAK,IAAInhG,EAAE9B,EAAE6B,KAAKQ,EAAEiR,EAAEowF,QAAQ,GAAG,OAAOrhG,EAAE,CAAC,IAAIE,EAAEF,EAAER,KAAKQ,EAAER,KAAKC,EAAE9B,EAAE6B,KAAKU,CAAC,CAAC+Q,EAAEowF,QAAQ1jG,CAAC,CAAC8iG,GAAG,IAAI,CAAC,OAAO11F,CAAC,CAC3K,SAASopG,GAAGppG,EAAEnN,GAAG,OAAE,CAAC,IAAIqT,EAAE0oE,GAAE,IAAuB,GAAnBkmB,KAAK8F,GAAGz6F,QAAQy7F,GAAMV,GAAG,CAAC,IAAI,IAAItoG,EAAEooG,GAAEhgB,cAAc,OAAOpoF,GAAG,CAAC,IAAI8B,EAAE9B,EAAEopG,MAAM,OAAOtnG,IAAIA,EAAE4hG,QAAQ,MAAM1jG,EAAEA,EAAE6B,IAAI,CAACymG,IAAG,CAAE,CAA4C,GAA3CH,GAAG,EAAE/mG,GAAEinG,GAAED,GAAE,KAAKG,IAAG,EAAGC,GAAG,EAAEiM,GAAGlnG,QAAQ,KAAQ,OAAO+F,GAAG,OAAOA,EAAE40E,OAAO,CAAC7yD,GAAE,EAAEs/E,GAAG10G,EAAE+7E,GAAE,KAAK,KAAK,CAAC5uE,EAAE,CAAC,IAAI/K,EAAE+K,EAAE7K,EAAE+Q,EAAE40E,OAAOhkF,EAAEoP,EAAEi5C,EAAEtsD,EAAqB,GAAnBA,EAAEkS,GAAEjO,EAAE8R,OAAO,MAAS,OAAOu2C,GAAG,kBAAkBA,GAAG,oBAAoBA,EAAErqD,KAAK,CAAC,IAAIsB,EAAE+oD,EAAE/vB,EAAEt4B,EAAEmgG,EAAE7nE,EAAE+iD,IAAI,GAAG,KAAY,EAAP/iD,EAAE2kE,QAAU,IAAIkD,GAAG,KAAKA,GAAG,KAAKA,GAAG,CAAC,IAAIzoF,EAAE4gB,EAAEyrD,UAAUrsE,GAAG4gB,EAAE6mE,YAAYznF,EAAEynF,YAAY7mE,EAAE4rD,cAAcxsE,EAAEwsE,cACxe5rD,EAAEkmE,MAAM9mF,EAAE8mF,QAAQlmE,EAAE6mE,YAAY,KAAK7mE,EAAE4rD,cAAc,KAAK,CAAC,IAAI9lF,EAAE8rG,GAAG7rG,GAAG,GAAG,OAAOD,EAAE,CAACA,EAAE0T,QAAQ,IAAIq4F,GAAG/rG,EAAEC,EAAE2B,EAAE7B,EAAEpC,GAAU,EAAPqC,EAAE6+F,MAAQ8M,GAAG5rG,EAAEmB,EAAEvD,GAAOssD,EAAE/oD,EAAE,IAAIxC,GAAZf,EAAEqC,GAAc+gG,YAAY,GAAG,OAAOriG,EAAE,CAAC,IAAIF,EAAE,IAAIu7E,IAAIv7E,EAAEklC,IAAIumB,GAAGtsD,EAAEojG,YAAYviG,CAAC,MAAME,EAAEglC,IAAIumB,GAAG,MAAMn/C,CAAC,CAAM,GAAG,KAAO,EAAFnN,GAAK,CAACguG,GAAG5rG,EAAEmB,EAAEvD,GAAG0wG,KAAK,MAAMvjG,CAAC,CAACm/C,EAAErnD,MAAM9E,EAAE,KAAM,MAAM,GAAGqgG,IAAU,EAAPv8F,EAAEi9F,KAAO,CAAC,IAAIxF,EAAEyS,GAAG7rG,GAAG,GAAG,OAAOo5F,EAAE,CAAC,KAAa,MAARA,EAAE3lF,SAAe2lF,EAAE3lF,OAAO,KAAKq4F,GAAG1S,EAAEp5F,EAAE2B,EAAE7B,EAAEpC,GAAGyhG,GAAGyL,GAAG5gD,EAAEroD,IAAI,MAAMkJ,CAAC,CAAC,CAAC/K,EAAEkqD,EAAE4gD,GAAG5gD,EAAEroD,GAAG,IAAImxB,KAAIA,GAAE,GAAG,OAAOy/E,GAAGA,GAAG,CAACzyG,GAAGyyG,GAAG91G,KAAKqD,GAAGA,EAAEE,EAAE,EAAE,CAAC,OAAOF,EAAEk9E,KAAK,KAAK,EAAEl9E,EAAE2T,OAAO,MACpf/V,IAAIA,EAAEoC,EAAEqgG,OAAOziG,EAAkBkkG,GAAG9hG,EAAborG,GAAGprG,EAAEkqD,EAAEtsD,IAAW,MAAMmN,EAAE,KAAK,EAAElJ,EAAEqoD,EAAE,IAAItoD,EAAE5B,EAAEoL,KAAKoE,EAAExP,EAAEukF,UAAU,GAAG,KAAa,IAARvkF,EAAE2T,SAAa,oBAAoB/R,EAAE4pG,0BAA0B,OAAOh8F,GAAG,oBAAoBA,EAAEi8F,oBAAoB,OAAOC,KAAKA,GAAG5gE,IAAIt7B,KAAK,CAACxP,EAAE2T,OAAO,MAAM/V,IAAIA,EAAEoC,EAAEqgG,OAAOziG,EAAkBkkG,GAAG9hG,EAAburG,GAAGvrG,EAAE6B,EAAEjE,IAAW,MAAMmN,CAAC,EAAE/K,EAAEA,EAAE6lF,MAAM,OAAO,OAAO7lF,EAAE,CAAC40G,GAAG3jG,EAA0D,CAAvD,MAAM2oF,GAAIh8F,EAAEg8F,EAAGjgB,KAAI1oE,GAAG,OAAOA,IAAI0oE,GAAE1oE,EAAEA,EAAE40E,QAAQ,QAAQ,CAAC,KAAK,CAAS,CAAC,SAASmuB,KAAK,IAAIjpG,EAAEonG,GAAGjnG,QAAsB,OAAdinG,GAAGjnG,QAAQy7F,GAAU,OAAO57F,EAAE47F,GAAG57F,CAAC,CACrd,SAASujG,KAAQ,IAAIt7E,IAAG,IAAIA,IAAG,IAAIA,KAAEA,GAAE,GAAE,OAAOg1E,IAAG,KAAQ,UAAHl2C,KAAe,KAAQ,UAAHygD,KAAeY,GAAGnL,GAAEl4F,GAAE,CAAC,SAASikG,GAAGhpG,EAAEnN,GAAG,IAAIqT,EAAE2wF,GAAEA,IAAG,EAAE,IAAIjkG,EAAEq2G,KAAqC,IAA7BhM,KAAIj9F,GAAG+E,KAAIlS,IAAE+0G,GAAG,KAAKsB,GAAGlpG,EAAEnN,UAAUi3G,KAAK,MAAM,MAAMp1G,GAAG00G,GAAGppG,EAAEtL,EAAE,CAAgC,GAAtBogG,KAAK+B,GAAE3wF,EAAEkhG,GAAGjnG,QAAQvN,EAAK,OAAOg8E,GAAE,MAAM92E,MAAM9E,EAAE,MAAiB,OAAXiqG,GAAE,KAAKl4F,GAAE,EAASkjB,EAAC,CAAC,SAAS6hF,KAAK,KAAK,OAAOl7B,IAAGm7B,GAAGn7B,GAAE,CAAC,SAASu6B,KAAK,KAAK,OAAOv6B,KAAI8M,MAAMquB,GAAGn7B,GAAE,CAAC,SAASm7B,GAAG/pG,GAAG,IAAInN,EAAEq0G,GAAGlnG,EAAE66E,UAAU76E,EAAEiiG,IAAIjiG,EAAEm0F,cAAcn0F,EAAE2zF,aAAa,OAAO9gG,EAAEg3G,GAAG7pG,GAAG4uE,GAAE/7E,EAAEw0G,GAAGlnG,QAAQ,IAAI,CAC1d,SAAS0pG,GAAG7pG,GAAG,IAAInN,EAAEmN,EAAE,EAAE,CAAC,IAAIkG,EAAErT,EAAEgoF,UAAqB,GAAX76E,EAAEnN,EAAEioF,OAAU,KAAa,MAARjoF,EAAE+V,QAAc,GAAgB,QAAb1C,EAAEo+F,GAAGp+F,EAAErT,EAAEovG,KAAkB,YAAJrzB,GAAE1oE,OAAc,CAAW,GAAG,QAAbA,EAAE8+F,GAAG9+F,EAAErT,IAAmC,OAAnBqT,EAAE0C,OAAO,WAAMgmE,GAAE1oE,GAAS,GAAG,OAAOlG,EAAmE,OAAXioB,GAAE,OAAE2mD,GAAE,MAA5D5uE,EAAE4I,OAAO,MAAM5I,EAAE2jG,aAAa,EAAE3jG,EAAEyzF,UAAU,IAA4B,CAAa,GAAG,QAAf5gG,EAAEA,EAAEuoF,SAAyB,YAAJxM,GAAE/7E,GAAS+7E,GAAE/7E,EAAEmN,CAAC,OAAO,OAAOnN,GAAG,IAAIo1B,KAAIA,GAAE,EAAE,CAAC,SAASwhF,GAAGzpG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEwrF,GAAE1pF,EAAE4yG,GAAG3mB,WAAW,IAAI2mB,GAAG3mB,WAAW,KAAKvC,GAAE,EAC3Y,SAAYp+E,EAAEnN,EAAEqT,EAAEtT,GAAG,GAAGm2G,WAAW,OAAOjB,IAAI,GAAG,KAAO,EAAFjR,IAAK,MAAM/+F,MAAM9E,EAAE,MAAMkT,EAAElG,EAAEupG,aAAa,IAAI70G,EAAEsL,EAAEwpG,cAAc,GAAG,OAAOtjG,EAAE,OAAO,KAA2C,GAAtClG,EAAEupG,aAAa,KAAKvpG,EAAEwpG,cAAc,EAAKtjG,IAAIlG,EAAEG,QAAQ,MAAMrI,MAAM9E,EAAE,MAAMgN,EAAEsoG,aAAa,KAAKtoG,EAAE0oG,iBAAiB,EAAE,IAAIzzG,EAAEiR,EAAEovF,MAAMpvF,EAAEgvF,WAA8J,GA1NtT,SAAYl1F,EAAEnN,GAAG,IAAIqT,EAAElG,EAAEw9E,cAAc3qF,EAAEmN,EAAEw9E,aAAa3qF,EAAEmN,EAAEy9E,eAAe,EAAEz9E,EAAE09E,YAAY,EAAE19E,EAAEwoG,cAAc31G,EAAEmN,EAAEgqG,kBAAkBn3G,EAAEmN,EAAE29E,gBAAgB9qF,EAAEA,EAAEmN,EAAE49E,cAAc,IAAIhrF,EAAEoN,EAAEk+E,WAAW,IAAIl+E,EAAEA,EAAEuoG,gBAAgB,EAAEriG,GAAG,CAAC,IAAIxR,EAAE,GAAGooF,GAAG52E,GAAGjR,EAAE,GAAGP,EAAE7B,EAAE6B,GAAG,EAAE9B,EAAE8B,IAAI,EAAEsL,EAAEtL,IAAI,EAAEwR,IAAIjR,CAAC,CAAC,CA0N5Gg1G,CAAGjqG,EAAE/K,GAAG+K,IAAIi9F,KAAIruB,GAAEquB,GAAE,KAAKl4F,GAAE,GAAG,KAAoB,KAAfmB,EAAEy9F,eAAoB,KAAa,KAARz9F,EAAE0C,QAAai/F,KAAKA,IAAG,EAAGgB,GAAGvsB,IAAG,WAAgB,OAALysB,KAAY,IAAI,KAAI9zG,EAAE,KAAa,MAARiR,EAAE0C,OAAgB,KAAoB,MAAf1C,EAAEy9F,eAAqB1uG,EAAE,CAACA,EAAEqyG,GAAG3mB,WAAW2mB,GAAG3mB,WAAW,KAChf,IAAIxrF,EAAEipF,GAAEA,GAAE,EAAE,IAAItnF,EAAE+/F,GAAEA,IAAG,EAAEwQ,GAAGlnG,QAAQ,KA1CpC,SAAYH,EAAEnN,GAAgB,GAAb48F,GAAGzoC,GAAa+jC,GAAV/qF,EAAE6qF,MAAc,CAAC,GAAG,mBAAmB7qF,EAAE,IAAIkG,EAAE,CAACtL,MAAMoF,EAAEorF,eAAevwF,IAAImF,EAAEqrF,mBAAmBrrF,EAAE,CAA8C,IAAIpN,GAAjDsT,GAAGA,EAAElG,EAAEouB,gBAAgBloB,EAAE2xB,aAAaxQ,QAAeikE,cAAcplF,EAAEolF,eAAe,GAAG14F,GAAG,IAAIA,EAAE24F,WAAW,CAACrlF,EAAEtT,EAAE44F,WAAW,IAAI92F,EAAE9B,EAAE64F,aAAax2F,EAAErC,EAAE84F,UAAU94F,EAAEA,EAAE+4F,YAAY,IAAIzlF,EAAE4tB,SAAS7+B,EAAE6+B,QAAgC,CAAvB,MAAMjvB,GAAGqB,EAAE,KAAK,MAAMlG,CAAC,CAAC,IAAI7K,EAAE,EAAE2B,GAAG,EAAEqoD,GAAG,EAAE/oD,EAAE,EAAEg5B,EAAE,EAAE6nE,EAAEj3F,EAAEwO,EAAE,KAAK3b,EAAE,OAAO,CAAC,IAAI,IAAIqC,EAAK+hG,IAAI/wF,GAAG,IAAIxR,GAAG,IAAIuiG,EAAEnjE,WAAWh9B,EAAE3B,EAAET,GAAGuiG,IAAIhiG,GAAG,IAAIrC,GAAG,IAAIqkG,EAAEnjE,WAAWqrB,EAAEhqD,EAAEvC,GAAG,IAAIqkG,EAAEnjE,WAAW3+B,GACnf8hG,EAAE5hB,UAAU5jF,QAAW,QAAQyD,EAAE+hG,EAAEntE,aAAkBtb,EAAEyoF,EAAEA,EAAE/hG,EAAE,OAAO,CAAC,GAAG+hG,IAAIj3F,EAAE,MAAMnN,EAA8C,GAA5C2b,IAAItI,KAAK9P,IAAI1B,IAAIoC,EAAE3B,GAAGqZ,IAAIvZ,KAAKm6B,IAAIx8B,IAAIusD,EAAEhqD,GAAM,QAAQD,EAAE+hG,EAAEvlE,aAAa,MAAUljB,GAAJyoF,EAAEzoF,GAAM+f,UAAU,CAAC0oE,EAAE/hG,CAAC,CAACgR,GAAG,IAAIpP,IAAI,IAAIqoD,EAAE,KAAK,CAACvkD,MAAM9D,EAAE+D,IAAIskD,EAAE,MAAMj5C,EAAE,IAAI,CAACA,EAAEA,GAAG,CAACtL,MAAM,EAAEC,IAAI,EAAE,MAAMqL,EAAE,KAA+C,IAA1CwpF,GAAG,CAACxE,YAAYlrF,EAAEmrF,eAAejlF,GAAG8gD,IAAG,EAAOh/B,GAAEn1B,EAAE,OAAOm1B,IAAG,GAAOhoB,GAAJnN,EAAEm1B,IAAMkT,MAAM,KAAoB,KAAfroC,EAAE8wG,eAAoB,OAAO3jG,EAAEA,EAAE86E,OAAOjoF,EAAEm1B,GAAEhoB,OAAO,KAAK,OAAOgoB,IAAG,CAACn1B,EAAEm1B,GAAE,IAAI,IAAIp0B,EAAEf,EAAEgoF,UAAU,GAAG,KAAa,KAARhoF,EAAE+V,OAAY,OAAO/V,EAAEs/E,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GACvK,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,MAA3W,KAAK,EAAE,GAAG,OAAOv+E,EAAE,CAAC,IAAIF,EAAEE,EAAEugG,cAAc5F,EAAE36F,EAAEonF,cAAcpkF,EAAE/D,EAAE2mF,UAAU3iF,EAAED,EAAEgiG,wBAAwB/lG,EAAEo0B,cAAcp0B,EAAEwN,KAAK3M,EAAE8gG,GAAG3hG,EAAEwN,KAAK3M,GAAG66F,GAAG33F,EAAEqwG,oCAAoCpwG,CAAC,CAAC,MAAM,KAAK,EAAE,IAAI4N,EAAE5R,EAAE2mF,UAAUyG,cAAc,IAAIx7E,EAAEqvB,SAASrvB,EAAE21B,YAAY,GAAG,IAAI31B,EAAEqvB,UAAUrvB,EAAE5M,iBAAiB4M,EAAEglB,YAAYhlB,EAAE5M,iBAAiB,MAAyC,QAAQ,MAAMC,MAAM9E,EAAE,MAAgC,CAAxB,MAAM6R,GAAGq2D,GAAEroE,EAAEA,EAAEioF,OAAOj2E,EAAE,CAAa,GAAG,QAAf7E,EAAEnN,EAAEuoF,SAAoB,CAACp7E,EAAE86E,OAAOjoF,EAAEioF,OAAO9yD,GAAEhoB,EAAE,KAAK,CAACgoB,GAAEn1B,EAAEioF,MAAM,CAAClnF,EAAE0xG,GAAGA,IAAG,CAAW,CAwCld4E,CAAGlqG,EAAEkG,GAAGsgG,GAAGtgG,EAAElG,GAAGirF,GAAGyE,IAAI1oC,KAAKyoC,GAAGC,GAAGD,GAAG,KAAKzvF,EAAEG,QAAQ+F,EAAE2gG,GAAG3gG,EAAElG,EAAEtL,GAAGknF,KAAKib,GAAE//F,EAAEsnF,GAAEjpF,EAAEmyG,GAAG3mB,WAAW1rF,CAAC,MAAM+K,EAAEG,QAAQ+F,EAAsF,GAApF2hG,KAAKA,IAAG,EAAGC,GAAG9nG,EAAE+nG,GAAGrzG,GAAGO,EAAE+K,EAAEw9E,aAAa,IAAIvoF,IAAI0rG,GAAG,MAjOmJ,SAAY3gG,GAAG,GAAG68E,IAAI,oBAAoBA,GAAGstB,kBAAkB,IAAIttB,GAAGstB,kBAAkBvtB,GAAG58E,OAAE,EAAO,OAAuB,IAAhBA,EAAEG,QAAQyI,OAAqB,CAAT,MAAM/V,GAAG,CAAC,CAiOxRu3G,CAAGlkG,EAAEszE,WAAa6uB,GAAGroG,EAAE87E,MAAQ,OAAOjpF,EAAE,IAAID,EAAEoN,EAAEqqG,mBAAmBnkG,EAAE,EAAEA,EAAErT,EAAEpB,OAAOyU,IAAIxR,EAAE7B,EAAEqT,GAAGtT,EAAE8B,EAAEP,MAAM,CAACysG,eAAelsG,EAAE4zC,MAAM03D,OAAOtrG,EAAEsrG,SAAS,GAAGM,GAAG,MAAMA,IAAG,EAAGtgG,EAAEugG,GAAGA,GAAG,KAAKvgG,EAAE,KAAQ,EAAH+nG,KAAO,IAAI/nG,EAAEmyE,KAAK42B,KAAK9zG,EAAE+K,EAAEw9E,aAAa,KAAO,EAAFvoF,GAAK+K,IAAIioG,GAAGD,MAAMA,GAAG,EAAEC,GAAGjoG,GAAGgoG,GAAG,EAAE3V,IAAgB,CAFxFiY,CAAGtqG,EAAEnN,EAAEqT,EAAEtT,EAA8B,CAA3B,QAAQ00G,GAAG3mB,WAAWjsF,EAAE0pF,GAAExrF,CAAC,CAAC,OAAO,IAAI,CAGhc,SAASm2G,KAAK,GAAG,OAAOjB,GAAG,CAAC,IAAI9nG,EAAEq+E,GAAG0pB,IAAIl1G,EAAEy0G,GAAG3mB,WAAWz6E,EAAEk4E,GAAE,IAAmC,GAA/BkpB,GAAG3mB,WAAW,KAAKvC,GAAE,GAAGp+E,EAAE,GAAGA,EAAK,OAAO8nG,GAAG,IAAIl1G,GAAE,MAAO,CAAmB,GAAlBoN,EAAE8nG,GAAGA,GAAG,KAAKC,GAAG,EAAK,KAAO,EAAFlR,IAAK,MAAM/+F,MAAM9E,EAAE,MAAM,IAAI0B,EAAEmiG,GAAO,IAALA,IAAG,EAAM7uE,GAAEhoB,EAAEG,QAAQ,OAAO6nB,IAAG,CAAC,IAAI/yB,EAAE+yB,GAAE7yB,EAAEF,EAAEimC,MAAM,GAAG,KAAa,GAARlT,GAAEpf,OAAU,CAAC,IAAI9R,EAAE7B,EAAEw+F,UAAU,GAAG,OAAO38F,EAAE,CAAC,IAAI,IAAIqoD,EAAE,EAAEA,EAAEroD,EAAErF,OAAO0tD,IAAI,CAAC,IAAI/oD,EAAEU,EAAEqoD,GAAG,IAAIn3B,GAAE5xB,EAAE,OAAO4xB,IAAG,CAAC,IAAIoH,EAAEpH,GAAE,OAAOoH,EAAE+iD,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GAAGozB,GAAG,EAAEn2E,EAAEn6B,GAAG,IAAIgiG,EAAE7nE,EAAE8L,MAAM,GAAG,OAAO+7D,EAAEA,EAAEnc,OAAO1rD,EAAEpH,GAAEivE,OAAO,KAAK,OAAOjvE,IAAG,CAAK,IAAIxZ,GAAR4gB,EAAEpH,IAAUozD,QAAQlmF,EAAEk6B,EAAE0rD,OAAa,GAAN4qB,GAAGt2E,GAAMA,IACnfh5B,EAAE,CAAC4xB,GAAE,KAAK,KAAK,CAAC,GAAG,OAAOxZ,EAAE,CAACA,EAAEssE,OAAO5lF,EAAE8yB,GAAExZ,EAAE,KAAK,CAACwZ,GAAE9yB,CAAC,CAAC,CAAC,CAAC,IAAItB,EAAEqB,EAAE4lF,UAAU,GAAG,OAAOjnF,EAAE,CAAC,IAAIF,EAAEE,EAAEsnC,MAAM,GAAG,OAAOxnC,EAAE,CAACE,EAAEsnC,MAAM,KAAK,EAAE,CAAC,IAAIqzD,EAAE76F,EAAE0nF,QAAQ1nF,EAAE0nF,QAAQ,KAAK1nF,EAAE66F,CAAC,OAAO,OAAO76F,EAAE,CAAC,CAACs0B,GAAE/yB,CAAC,CAAC,CAAC,GAAG,KAAoB,KAAfA,EAAE0uG,eAAoB,OAAOxuG,EAAEA,EAAE2lF,OAAO7lF,EAAE+yB,GAAE7yB,OAAOtC,EAAE,KAAK,OAAOm1B,IAAG,CAAK,GAAG,KAAa,MAApB/yB,EAAE+yB,IAAYpf,OAAY,OAAO3T,EAAEk9E,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GAAGozB,GAAG,EAAEtwG,EAAEA,EAAE6lF,QAAQ,IAAIlkF,EAAE3B,EAAEmmF,QAAQ,GAAG,OAAOxkF,EAAE,CAACA,EAAEkkF,OAAO7lF,EAAE6lF,OAAO9yD,GAAEpxB,EAAE,MAAM/D,CAAC,CAACm1B,GAAE/yB,EAAE6lF,MAAM,CAAC,CAAC,IAAIjkF,EAAEmJ,EAAEG,QAAQ,IAAI6nB,GAAEnxB,EAAE,OAAOmxB,IAAG,CAAK,IAAIvjB,GAARtP,EAAE6yB,IAAUkT,MAAM,GAAG,KAAoB,KAAf/lC,EAAEwuG,eAAoB,OAClfl/F,EAAEA,EAAEq2E,OAAO3lF,EAAE6yB,GAAEvjB,OAAO5R,EAAE,IAAIsC,EAAE0B,EAAE,OAAOmxB,IAAG,CAAK,GAAG,KAAa,MAApBlxB,EAAEkxB,IAAYpf,OAAY,IAAI,OAAO9R,EAAEq7E,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,GAAGqzB,GAAG,EAAE1uG,GAA8B,CAA1B,MAAM+3F,GAAI3zB,GAAEpkE,EAAEA,EAAEgkF,OAAO+T,EAAG,CAAC,GAAG/3F,IAAI3B,EAAE,CAAC6yB,GAAE,KAAK,MAAMn1B,CAAC,CAAC,IAAIgS,EAAE/N,EAAEskF,QAAQ,GAAG,OAAOv2E,EAAE,CAACA,EAAEi2E,OAAOhkF,EAAEgkF,OAAO9yD,GAAEnjB,EAAE,MAAMhS,CAAC,CAACm1B,GAAElxB,EAAEgkF,MAAM,CAAC,CAAU,GAAT+b,GAAEniG,EAAE29F,KAAQxV,IAAI,oBAAoBA,GAAG0tB,sBAAsB,IAAI1tB,GAAG0tB,sBAAsB3tB,GAAG58E,EAAa,CAAV,MAAM6uF,GAAI,CAACj8F,GAAE,CAAE,CAAC,OAAOA,CAA6B,CAA3B,QAAQwrF,GAAEl4E,EAAEohG,GAAG3mB,WAAW9tF,CAAC,CAAC,CAAC,OAAM,CAAE,CAAC,SAAS23G,GAAGxqG,EAAEnN,EAAEqT,GAAyBlG,EAAE42F,GAAG52F,EAAjBnN,EAAEwtG,GAAGrgG,EAAfnN,EAAEktG,GAAG75F,EAAErT,GAAY,GAAY,GAAGA,EAAEk1B,KAAI,OAAO/nB,IAAIi+E,GAAGj+E,EAAE,EAAEnN,GAAGw1G,GAAGroG,EAAEnN,GAAG,CACze,SAASqoE,GAAEl7D,EAAEnN,EAAEqT,GAAG,GAAG,IAAIlG,EAAEmyE,IAAIq4B,GAAGxqG,EAAEA,EAAEkG,QAAQ,KAAK,OAAOrT,GAAG,CAAC,GAAG,IAAIA,EAAEs/E,IAAI,CAACq4B,GAAG33G,EAAEmN,EAAEkG,GAAG,KAAK,CAAM,GAAG,IAAIrT,EAAEs/E,IAAI,CAAC,IAAIv/E,EAAEC,EAAE2mF,UAAU,GAAG,oBAAoB3mF,EAAEwN,KAAKogG,0BAA0B,oBAAoB7tG,EAAE8tG,oBAAoB,OAAOC,KAAKA,GAAG5gE,IAAIntC,IAAI,CAAuBC,EAAE+jG,GAAG/jG,EAAjBmN,EAAEwgG,GAAG3tG,EAAfmN,EAAE+/F,GAAG75F,EAAElG,GAAY,GAAY,GAAGA,EAAE+nB,KAAI,OAAOl1B,IAAIorF,GAAGprF,EAAE,EAAEmN,GAAGqoG,GAAGx1G,EAAEmN,IAAI,KAAK,CAAC,CAACnN,EAAEA,EAAEioF,MAAM,CAAC,CACnV,SAASimB,GAAG/gG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEoN,EAAE8gG,UAAU,OAAOluG,GAAGA,EAAE0sF,OAAOzsF,GAAGA,EAAEk1B,KAAI/nB,EAAE09E,aAAa19E,EAAEy9E,eAAev3E,EAAE+2F,KAAIj9F,IAAI+E,GAAEmB,KAAKA,IAAI,IAAI+hB,IAAG,IAAIA,KAAM,UAAFljB,MAAeA,IAAG,IAAI+2E,KAAI6qB,GAAGuC,GAAGlpG,EAAE,GAAGynG,IAAIvhG,GAAGmiG,GAAGroG,EAAEnN,EAAE,CAAC,SAAS43G,GAAGzqG,EAAEnN,GAAG,IAAIA,IAAI,KAAY,EAAPmN,EAAE+zF,MAAQlhG,EAAE,GAAGA,EAAEwqF,GAAU,KAAQ,WAAfA,KAAK,MAAuBA,GAAG,WAAW,IAAIn3E,EAAE6hB,KAAc,QAAV/nB,EAAE81F,GAAG91F,EAAEnN,MAAcorF,GAAGj+E,EAAEnN,EAAEqT,GAAGmiG,GAAGroG,EAAEkG,GAAG,CAAC,SAASs9F,GAAGxjG,GAAG,IAAInN,EAAEmN,EAAEg7E,cAAc90E,EAAE,EAAE,OAAOrT,IAAIqT,EAAErT,EAAEghG,WAAW4W,GAAGzqG,EAAEkG,EAAE,CACjZ,SAASogG,GAAGtmG,EAAEnN,GAAG,IAAIqT,EAAE,EAAE,OAAOlG,EAAEmyE,KAAK,KAAK,GAAG,IAAIv/E,EAAEoN,EAAEw5E,UAAc9kF,EAAEsL,EAAEg7E,cAAc,OAAOtmF,IAAIwR,EAAExR,EAAEm/F,WAAW,MAAM,KAAK,GAAGjhG,EAAEoN,EAAEw5E,UAAU,MAAM,QAAQ,MAAM1hF,MAAM9E,EAAE,MAAO,OAAOJ,GAAGA,EAAE0sF,OAAOzsF,GAAG43G,GAAGzqG,EAAEkG,EAAE,CAQqK,SAAS2iG,GAAG7oG,EAAEnN,GAAG,OAAO0oF,GAAGv7E,EAAEnN,EAAE,CACjZ,SAAS63G,GAAG1qG,EAAEnN,EAAEqT,EAAEtT,GAAGS,KAAK8+E,IAAInyE,EAAE3M,KAAKhB,IAAI6T,EAAE7S,KAAK+nF,QAAQ/nF,KAAK6nC,MAAM7nC,KAAKynF,OAAOznF,KAAKmmF,UAAUnmF,KAAKgN,KAAKhN,KAAK4zB,YAAY,KAAK5zB,KAAK0F,MAAM,EAAE1F,KAAK4lG,IAAI,KAAK5lG,KAAKsgG,aAAa9gG,EAAEQ,KAAK+hG,aAAa/hG,KAAK2nF,cAAc3nF,KAAK4iG,YAAY5iG,KAAK8gG,cAAc,KAAK9gG,KAAK0gG,KAAKnhG,EAAES,KAAKswG,aAAatwG,KAAKuV,MAAM,EAAEvV,KAAKogG,UAAU,KAAKpgG,KAAK6hG,WAAW7hG,KAAKiiG,MAAM,EAAEjiG,KAAKwnF,UAAU,IAAI,CAAC,SAAS2Y,GAAGxzF,EAAEnN,EAAEqT,EAAEtT,GAAG,OAAO,IAAI83G,GAAG1qG,EAAEnN,EAAEqT,EAAEtT,EAAE,CAAC,SAAS4uG,GAAGxhG,GAAiB,UAAdA,EAAEA,EAAE7N,aAAuB6N,EAAE2qG,iBAAiB,CAEpd,SAASrR,GAAGt5F,EAAEnN,GAAG,IAAIqT,EAAElG,EAAE66E,UACuB,OADb,OAAO30E,IAAGA,EAAEstF,GAAGxzF,EAAEmyE,IAAIt/E,EAAEmN,EAAE3N,IAAI2N,EAAE+zF,OAAQ9sE,YAAYjnB,EAAEinB,YAAY/gB,EAAE7F,KAAKL,EAAEK,KAAK6F,EAAEszE,UAAUx5E,EAAEw5E,UAAUtzE,EAAE20E,UAAU76E,EAAEA,EAAE66E,UAAU30E,IAAIA,EAAEytF,aAAa9gG,EAAEqT,EAAE7F,KAAKL,EAAEK,KAAK6F,EAAE0C,MAAM,EAAE1C,EAAEy9F,aAAa,EAAEz9F,EAAEutF,UAAU,MAAMvtF,EAAE0C,MAAc,SAAR5I,EAAE4I,MAAe1C,EAAEgvF,WAAWl1F,EAAEk1F,WAAWhvF,EAAEovF,MAAMt1F,EAAEs1F,MAAMpvF,EAAEg1B,MAAMl7B,EAAEk7B,MAAMh1B,EAAEiuF,cAAcn0F,EAAEm0F,cAAcjuF,EAAE80E,cAAch7E,EAAEg7E,cAAc90E,EAAE+vF,YAAYj2F,EAAEi2F,YAAYpjG,EAAEmN,EAAEo1F,aAAalvF,EAAEkvF,aAAa,OAAOviG,EAAE,KAAK,CAACyiG,MAAMziG,EAAEyiG,MAAMD,aAAaxiG,EAAEwiG,cAC/envF,EAAEk1E,QAAQp7E,EAAEo7E,QAAQl1E,EAAEnN,MAAMiH,EAAEjH,MAAMmN,EAAE+yF,IAAIj5F,EAAEi5F,IAAW/yF,CAAC,CACxD,SAASszF,GAAGx5F,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,GAAG,IAAIE,EAAE,EAAM,GAAJvC,EAAEoN,EAAK,oBAAoBA,EAAEwhG,GAAGxhG,KAAK7K,EAAE,QAAQ,GAAG,kBAAkB6K,EAAE7K,EAAE,OAAO6K,EAAE,OAAOA,GAAG,KAAK6wE,EAAG,OAAO8oB,GAAGzzF,EAAEsuE,SAAS9/E,EAAEO,EAAEpC,GAAG,KAAKi+E,EAAG37E,EAAE,EAAET,GAAG,EAAE,MAAM,KAAKq8E,EAAG,OAAO/wE,EAAEwzF,GAAG,GAAGttF,EAAErT,EAAI,EAAF6B,IAAOuyB,YAAY8pD,EAAG/wE,EAAEs1F,MAAMrgG,EAAE+K,EAAE,KAAKmxE,EAAG,OAAOnxE,EAAEwzF,GAAG,GAAGttF,EAAErT,EAAE6B,IAAKuyB,YAAYkqD,EAAGnxE,EAAEs1F,MAAMrgG,EAAE+K,EAAE,KAAKoxE,EAAG,OAAOpxE,EAAEwzF,GAAG,GAAGttF,EAAErT,EAAE6B,IAAKuyB,YAAYmqD,EAAGpxE,EAAEs1F,MAAMrgG,EAAE+K,EAAE,KAAKuxE,EAAG,OAAO2xB,GAAGh9F,EAAExR,EAAEO,EAAEpC,GAAG,QAAQ,GAAG,kBAAkBmN,GAAG,OAAOA,EAAE,OAAOA,EAAEqyE,UAAU,KAAKrB,EAAG77E,EAAE,GAAG,MAAM6K,EAAE,KAAKixE,EAAG97E,EAAE,EAAE,MAAM6K,EAAE,KAAKkxE,EAAG/7E,EAAE,GACpf,MAAM6K,EAAE,KAAKqxE,EAAGl8E,EAAE,GAAG,MAAM6K,EAAE,KAAKsxE,EAAGn8E,EAAE,GAAGvC,EAAE,KAAK,MAAMoN,EAAE,MAAMlI,MAAM9E,EAAE,IAAI,MAAMgN,EAAEA,SAASA,EAAE,KAAuD,OAAjDnN,EAAE2gG,GAAGr+F,EAAE+Q,EAAErT,EAAE6B,IAAKuyB,YAAYjnB,EAAEnN,EAAEwN,KAAKzN,EAAEC,EAAEyiG,MAAMrgG,EAASpC,CAAC,CAAC,SAAS8mG,GAAG35F,EAAEnN,EAAEqT,EAAEtT,GAA2B,OAAxBoN,EAAEwzF,GAAG,EAAExzF,EAAEpN,EAAEC,IAAKyiG,MAAMpvF,EAASlG,CAAC,CAAC,SAASkjG,GAAGljG,EAAEnN,EAAEqT,EAAEtT,GAAuE,OAApEoN,EAAEwzF,GAAG,GAAGxzF,EAAEpN,EAAEC,IAAKo0B,YAAYsqD,EAAGvxE,EAAEs1F,MAAMpvF,EAAElG,EAAEw5E,UAAU,CAACktB,UAAS,GAAW1mG,CAAC,CAAC,SAASu5F,GAAGv5F,EAAEnN,EAAEqT,GAA8B,OAA3BlG,EAAEwzF,GAAG,EAAExzF,EAAE,KAAKnN,IAAKyiG,MAAMpvF,EAASlG,CAAC,CAC5W,SAAS05F,GAAG15F,EAAEnN,EAAEqT,GAA8J,OAA3JrT,EAAE2gG,GAAG,EAAE,OAAOxzF,EAAEw0E,SAASx0E,EAAEw0E,SAAS,GAAGx0E,EAAE3N,IAAIQ,IAAKyiG,MAAMpvF,EAAErT,EAAE2mF,UAAU,CAACyG,cAAcjgF,EAAEigF,cAAc2qB,gBAAgB,KAAKnR,eAAez5F,EAAEy5F,gBAAuB5mG,CAAC,CACtL,SAASg4G,GAAG7qG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAGrB,KAAK8+E,IAAIt/E,EAAEQ,KAAK4sF,cAAcjgF,EAAE3M,KAAKk2G,aAAal2G,KAAKytG,UAAUztG,KAAK8M,QAAQ9M,KAAKu3G,gBAAgB,KAAKv3G,KAAKq2G,eAAe,EAAEr2G,KAAKi1G,aAAaj1G,KAAKqvG,eAAervG,KAAK0D,QAAQ,KAAK1D,KAAKq1G,iBAAiB,EAAEr1G,KAAK6qF,WAAWF,GAAG,GAAG3qF,KAAKk1G,gBAAgBvqB,IAAI,GAAG3qF,KAAKsqF,eAAetqF,KAAKm2G,cAAcn2G,KAAK22G,iBAAiB32G,KAAKm1G,aAAan1G,KAAKqqF,YAAYrqF,KAAKoqF,eAAepqF,KAAKmqF,aAAa,EAAEnqF,KAAKuqF,cAAcI,GAAG,GAAG3qF,KAAKysG,iBAAiBltG,EAAES,KAAKg3G,mBAAmB31G,EAAErB,KAAKy3G,gCAC/e,IAAI,CAAC,SAASC,GAAG/qG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,EAAEE,EAAE2B,EAAEqoD,GAAgN,OAA7Mn/C,EAAE,IAAI6qG,GAAG7qG,EAAEnN,EAAEqT,EAAEpP,EAAEqoD,GAAG,IAAItsD,GAAGA,EAAE,GAAE,IAAKoC,IAAIpC,GAAG,IAAIA,EAAE,EAAEoC,EAAEu+F,GAAG,EAAE,KAAK,KAAK3gG,GAAGmN,EAAEG,QAAQlL,EAAEA,EAAEukF,UAAUx5E,EAAE/K,EAAE+lF,cAAc,CAACl0D,QAAQl0B,EAAEotF,aAAa95E,EAAE8X,MAAM,KAAK+jF,YAAY,KAAKiJ,0BAA0B,MAAMhV,GAAG/gG,GAAU+K,CAAC,CAAC,SAASirG,GAAGjrG,EAAEnN,EAAEqT,GAAG,IAAItT,EAAE,EAAEpB,UAAUC,aAAQ,IAASD,UAAU,GAAGA,UAAU,GAAG,KAAK,MAAM,CAAC6gF,SAASzB,EAAGv+E,IAAI,MAAMO,EAAE,KAAK,GAAGA,EAAE4hF,SAASx0E,EAAEigF,cAAcptF,EAAE4mG,eAAevzF,EAAE,CACpa,SAASglG,GAAGlrG,GAAG,IAAIA,EAAE,OAAOixF,GAAuBjxF,EAAE,CAAC,GAAG46E,GAA1B56E,EAAEA,EAAEy3F,mBAA8Bz3F,GAAG,IAAIA,EAAEmyE,IAAI,MAAMr6E,MAAM9E,EAAE,MAAM,IAAIH,EAAEmN,EAAE,EAAE,CAAC,OAAOnN,EAAEs/E,KAAK,KAAK,EAAEt/E,EAAEA,EAAE2mF,UAAUziF,QAAQ,MAAMiJ,EAAE,KAAK,EAAE,GAAGyxF,GAAG5+F,EAAEwN,MAAM,CAACxN,EAAEA,EAAE2mF,UAAUwY,0CAA0C,MAAMhyF,CAAC,EAAEnN,EAAEA,EAAEioF,MAAM,OAAO,OAAOjoF,GAAG,MAAMiF,MAAM9E,EAAE,KAAM,CAAC,GAAG,IAAIgN,EAAEmyE,IAAI,CAAC,IAAIjsE,EAAElG,EAAEK,KAAK,GAAGoxF,GAAGvrF,GAAG,OAAO2rF,GAAG7xF,EAAEkG,EAAErT,EAAE,CAAC,OAAOA,CAAC,CACpW,SAASs4G,GAAGnrG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,EAAEO,EAAEE,EAAE2B,EAAEqoD,GAAwK,OAArKn/C,EAAE+qG,GAAG7kG,EAAEtT,GAAE,EAAGoN,EAAEtL,EAAEO,EAAEE,EAAE2B,EAAEqoD,IAAKpoD,QAAQm0G,GAAG,MAAMhlG,EAAElG,EAAEG,SAAsBlL,EAAEuhG,GAAhB5jG,EAAEm1B,KAAIrzB,EAAEijG,GAAGzxF,KAAe24C,cAAS,IAAShsD,GAAG,OAAOA,EAAEA,EAAE,KAAK+jG,GAAG1wF,EAAEjR,EAAEP,GAAGsL,EAAEG,QAAQm1F,MAAM5gG,EAAEupF,GAAGj+E,EAAEtL,EAAE9B,GAAGy1G,GAAGroG,EAAEpN,GAAUoN,CAAC,CAAC,SAAS46B,GAAG56B,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAI8B,EAAE7B,EAAEsN,QAAQlL,EAAE8yB,KAAI5yB,EAAEwiG,GAAGjjG,GAAsL,OAAnLwR,EAAEglG,GAAGhlG,GAAG,OAAOrT,EAAEkE,QAAQlE,EAAEkE,QAAQmP,EAAErT,EAAE6vG,eAAex8F,GAAErT,EAAE2jG,GAAGvhG,EAAEE,IAAKwhG,QAAQ,CAAC7vE,QAAQ9mB,GAAuB,QAApBpN,OAAE,IAASA,EAAE,KAAKA,KAAaC,EAAEgsD,SAASjsD,GAAe,QAAZoN,EAAE42F,GAAGliG,EAAE7B,EAAEsC,MAAcyiG,GAAG53F,EAAEtL,EAAES,EAAEF,GAAG6hG,GAAG92F,EAAEtL,EAAES,IAAWA,CAAC,CAC3b,SAASi2G,GAAGprG,GAAe,OAAZA,EAAEA,EAAEG,SAAc+6B,OAAyBl7B,EAAEk7B,MAAMi3C,IAAoDnyE,EAAEk7B,MAAMs+C,WAAhF,IAA0F,CAAC,SAAS6xB,GAAGrrG,EAAEnN,GAAqB,GAAG,QAArBmN,EAAEA,EAAEg7E,gBAA2B,OAAOh7E,EAAEi7E,WAAW,CAAC,IAAI/0E,EAAElG,EAAE6zF,UAAU7zF,EAAE6zF,UAAU,IAAI3tF,GAAGA,EAAErT,EAAEqT,EAAErT,CAAC,CAAC,CAAC,SAASy4G,GAAGtrG,EAAEnN,GAAGw4G,GAAGrrG,EAAEnN,IAAImN,EAAEA,EAAE66E,YAAYwwB,GAAGrrG,EAAEnN,EAAE,CAnB7Sq0G,GAAG,SAASlnG,EAAEnN,EAAEqT,GAAG,GAAG,OAAOlG,EAAE,GAAGA,EAAEm0F,gBAAgBthG,EAAE8gG,cAAcxC,GAAGhxF,QAAQo1F,IAAG,MAAO,CAAC,GAAG,KAAKv1F,EAAEs1F,MAAMpvF,IAAI,KAAa,IAARrT,EAAE+V,OAAW,OAAO2sF,IAAG,EAzE1I,SAAYv1F,EAAEnN,EAAEqT,GAAG,OAAOrT,EAAEs/E,KAAK,KAAK,EAAEswB,GAAG5vG,GAAGwhG,KAAK,MAAM,KAAK,EAAEgG,GAAGxnG,GAAG,MAAM,KAAK,EAAE4+F,GAAG5+F,EAAEwN,OAAO0xF,GAAGl/F,GAAG,MAAM,KAAK,EAAEsnG,GAAGtnG,EAAEA,EAAE2mF,UAAUyG,eAAe,MAAM,KAAK,GAAG,IAAIrtF,EAAEC,EAAEwN,KAAKyN,SAASpZ,EAAE7B,EAAEshG,cAAchgG,MAAM68F,GAAE0D,GAAG9hG,EAAEoiG,eAAepiG,EAAEoiG,cAActgG,EAAE,MAAM,KAAK,GAAqB,GAAG,QAArB9B,EAAEC,EAAEmoF,eAA2B,OAAG,OAAOpoF,EAAEqoF,YAAkB+V,GAAE9pC,GAAY,EAAVA,GAAE/mD,SAAWtN,EAAE+V,OAAO,IAAI,MAAQ,KAAK1C,EAAErT,EAAEqoC,MAAMg6D,YAAmB+N,GAAGjjG,EAAEnN,EAAEqT,IAAG8qF,GAAE9pC,GAAY,EAAVA,GAAE/mD,SAA8B,QAAnBH,EAAEshG,GAAGthG,EAAEnN,EAAEqT,IAAmBlG,EAAEo7E,QAAQ,MAAK4V,GAAE9pC,GAAY,EAAVA,GAAE/mD,SAAW,MAAM,KAAK,GAC7d,GADgevN,EAAE,KAAKsT,EACrfrT,EAAEqiG,YAAe,KAAa,IAARl1F,EAAE4I,OAAW,CAAC,GAAGhW,EAAE,OAAOuxG,GAAGnkG,EAAEnN,EAAEqT,GAAGrT,EAAE+V,OAAO,GAAG,CAA6F,GAA1E,QAAlBlU,EAAE7B,EAAEmoF,iBAAyBtmF,EAAEqvG,UAAU,KAAKrvG,EAAEuvG,KAAK,KAAKvvG,EAAEyoG,WAAW,MAAMnM,GAAE9pC,GAAEA,GAAE/mD,SAAYvN,EAAE,MAAW,OAAO,KAAK,KAAK,GAAG,KAAK,GAAG,OAAOC,EAAEyiG,MAAM,EAAEsM,GAAG5hG,EAAEnN,EAAEqT,GAAG,OAAOo7F,GAAGthG,EAAEnN,EAAEqT,EAAE,CAwE7GqlG,CAAGvrG,EAAEnN,EAAEqT,GAAGqvF,GAAG,KAAa,OAARv1F,EAAE4I,MAAmB,MAAM2sF,IAAG,EAAGlC,IAAG,KAAa,QAARxgG,EAAE+V,QAAgBoqF,GAAGngG,EAAE4/F,GAAG5/F,EAAEkG,OAAiB,OAAVlG,EAAEyiG,MAAM,EAASziG,EAAEs/E,KAAK,KAAK,EAAE,IAAIv/E,EAAEC,EAAEwN,KAAK+hG,GAAGpiG,EAAEnN,GAAGmN,EAAEnN,EAAE8gG,aAAa,IAAIj/F,EAAE28F,GAAGx+F,EAAEq+F,GAAE/wF,SAASg1F,GAAGtiG,EAAEqT,GAAGxR,EAAE8mG,GAAG,KAAK3oG,EAAED,EAAEoN,EAAEtL,EAAEwR,GAAG,IAAIjR,EAAE4mG,KACvI,OAD4IhpG,EAAE+V,OAAO,EAAE,kBAAkBlU,GAAG,OAAOA,GAAG,oBAAoBA,EAAEu6C,aAAQ,IAASv6C,EAAE29E,UAAUx/E,EAAEs/E,IAAI,EAAEt/E,EAAEmoF,cAAc,KAAKnoF,EAAEojG,YAC1e,KAAKxE,GAAG7+F,IAAIqC,GAAE,EAAG88F,GAAGl/F,IAAIoC,GAAE,EAAGpC,EAAEmoF,cAAc,OAAOtmF,EAAE0jG,YAAO,IAAS1jG,EAAE0jG,MAAM1jG,EAAE0jG,MAAM,KAAKpC,GAAGnjG,GAAG6B,EAAE2jG,QAAQd,GAAG1kG,EAAE2mF,UAAU9kF,EAAEA,EAAE+iG,gBAAgB5kG,EAAE4lG,GAAG5lG,EAAED,EAAEoN,EAAEkG,GAAGrT,EAAE2vG,GAAG,KAAK3vG,EAAED,GAAE,EAAGqC,EAAEiR,KAAKrT,EAAEs/E,IAAI,EAAEkhB,IAAGp+F,GAAGg+F,GAAGpgG,GAAGuuG,GAAG,KAAKvuG,EAAE6B,EAAEwR,GAAGrT,EAAEA,EAAEqoC,OAAcroC,EAAE,KAAK,GAAGD,EAAEC,EAAEo0B,YAAYjnB,EAAE,CAAqF,OAApFoiG,GAAGpiG,EAAEnN,GAAGmN,EAAEnN,EAAE8gG,aAAuB/gG,GAAV8B,EAAE9B,EAAE2/E,OAAU3/E,EAAE0/E,UAAUz/E,EAAEwN,KAAKzN,EAAE8B,EAAE7B,EAAEs/E,IAQtU,SAAYnyE,GAAG,GAAG,oBAAoBA,EAAE,OAAOwhG,GAAGxhG,GAAG,EAAE,EAAE,QAAG,IAASA,GAAG,OAAOA,EAAE,CAAc,IAAbA,EAAEA,EAAEqyE,YAAgBnB,EAAG,OAAO,GAAG,GAAGlxE,IAAIqxE,EAAG,OAAO,EAAE,CAAC,OAAO,CAAC,CAR2Lm6B,CAAG54G,GAAGoN,EAAEw0F,GAAG5hG,EAAEoN,GAAUtL,GAAG,KAAK,EAAE7B,EAAE8uG,GAAG,KAAK9uG,EAAED,EAAEoN,EAAEkG,GAAG,MAAMlG,EAAE,KAAK,EAAEnN,EAAEsvG,GAAG,KAAKtvG,EAAED,EAAEoN,EAAEkG,GAAG,MAAMlG,EAAE,KAAK,GAAGnN,EAAEwuG,GAAG,KAAKxuG,EAAED,EAAEoN,EAAEkG,GAAG,MAAMlG,EAAE,KAAK,GAAGnN,EAAE0uG,GAAG,KAAK1uG,EAAED,EAAE4hG,GAAG5hG,EAAEyN,KAAKL,GAAGkG,GAAG,MAAMlG,EAAE,MAAMlI,MAAM9E,EAAE,IACvgBJ,EAAE,IAAK,CAAC,OAAOC,EAAE,KAAK,EAAE,OAAOD,EAAEC,EAAEwN,KAAK3L,EAAE7B,EAAE8gG,aAA2CgO,GAAG3hG,EAAEnN,EAAED,EAArC8B,EAAE7B,EAAEo0B,cAAcr0B,EAAE8B,EAAE8/F,GAAG5hG,EAAE8B,GAAcwR,GAAG,KAAK,EAAE,OAAOtT,EAAEC,EAAEwN,KAAK3L,EAAE7B,EAAE8gG,aAA2CwO,GAAGniG,EAAEnN,EAAED,EAArC8B,EAAE7B,EAAEo0B,cAAcr0B,EAAE8B,EAAE8/F,GAAG5hG,EAAE8B,GAAcwR,GAAG,KAAK,EAAElG,EAAE,CAAO,GAANyiG,GAAG5vG,GAAM,OAAOmN,EAAE,MAAMlI,MAAM9E,EAAE,MAAMJ,EAAEC,EAAE8gG,aAA+Bj/F,GAAlBO,EAAEpC,EAAEmoF,eAAkBl0D,QAAQyvE,GAAGv2F,EAAEnN,GAAGmkG,GAAGnkG,EAAED,EAAE,KAAKsT,GAAG,IAAI/Q,EAAEtC,EAAEmoF,cAA0B,GAAZpoF,EAAEuC,EAAE2xB,QAAW7xB,EAAE+qF,aAAY,CAAC,GAAG/qF,EAAE,CAAC6xB,QAAQl0B,EAAEotF,cAAa,EAAGhiE,MAAM7oB,EAAE6oB,MAAMgtF,0BAA0B71G,EAAE61G,0BAA0BjJ,YAAY5sG,EAAE4sG,aAAalvG,EAAEojG,YAAYC,UAChfjhG,EAAEpC,EAAEmoF,cAAc/lF,EAAU,IAARpC,EAAE+V,MAAU,CAAuB/V,EAAE8vG,GAAG3iG,EAAEnN,EAAED,EAAEsT,EAAjCxR,EAAEqrG,GAAGjoG,MAAM9E,EAAE,MAAMH,IAAmB,MAAMmN,CAAC,CAAM,GAAGpN,IAAI8B,EAAE,CAAuB7B,EAAE8vG,GAAG3iG,EAAEnN,EAAED,EAAEsT,EAAjCxR,EAAEqrG,GAAGjoG,MAAM9E,EAAE,MAAMH,IAAmB,MAAMmN,CAAC,CAAM,IAAIozF,GAAG/C,GAAGx9F,EAAE2mF,UAAUyG,cAAcn2D,YAAYqpE,GAAGtgG,EAAEwgG,IAAE,EAAGC,GAAG,KAAKptF,EAAE2zF,GAAGhnG,EAAE,KAAKD,EAAEsT,GAAGrT,EAAEqoC,MAAMh1B,EAAEA,GAAGA,EAAE0C,OAAe,EAAT1C,EAAE0C,MAAS,KAAK1C,EAAEA,EAAEk1E,OAAQ,KAAI,CAAM,GAALiZ,KAAQzhG,IAAI8B,EAAE,CAAC7B,EAAEyuG,GAAGthG,EAAEnN,EAAEqT,GAAG,MAAMlG,CAAC,CAACohG,GAAGphG,EAAEnN,EAAED,EAAEsT,EAAE,CAACrT,EAAEA,EAAEqoC,KAAK,CAAC,OAAOroC,EAAE,KAAK,EAAE,OAAOwnG,GAAGxnG,GAAG,OAAOmN,GAAGg0F,GAAGnhG,GAAGD,EAAEC,EAAEwN,KAAK3L,EAAE7B,EAAE8gG,aAAa1+F,EAAE,OAAO+K,EAAEA,EAAEm0F,cAAc,KAAKh/F,EAAET,EAAE8/E,SAASmb,GAAG/8F,EAAE8B,GAAGS,EAAE,KAAK,OAAOF,GAAG06F,GAAG/8F,EAAEqC,KAAKpC,EAAE+V,OAAO,IACnfs5F,GAAGliG,EAAEnN,GAAGuuG,GAAGphG,EAAEnN,EAAEsC,EAAE+Q,GAAGrT,EAAEqoC,MAAM,KAAK,EAAE,OAAO,OAAOl7B,GAAGg0F,GAAGnhG,GAAG,KAAK,KAAK,GAAG,OAAOowG,GAAGjjG,EAAEnN,EAAEqT,GAAG,KAAK,EAAE,OAAOi0F,GAAGtnG,EAAEA,EAAE2mF,UAAUyG,eAAertF,EAAEC,EAAE8gG,aAAa,OAAO3zF,EAAEnN,EAAEqoC,MAAM0+D,GAAG/mG,EAAE,KAAKD,EAAEsT,GAAGk7F,GAAGphG,EAAEnN,EAAED,EAAEsT,GAAGrT,EAAEqoC,MAAM,KAAK,GAAG,OAAOtoC,EAAEC,EAAEwN,KAAK3L,EAAE7B,EAAE8gG,aAA2C0N,GAAGrhG,EAAEnN,EAAED,EAArC8B,EAAE7B,EAAEo0B,cAAcr0B,EAAE8B,EAAE8/F,GAAG5hG,EAAE8B,GAAcwR,GAAG,KAAK,EAAE,OAAOk7F,GAAGphG,EAAEnN,EAAEA,EAAE8gG,aAAaztF,GAAGrT,EAAEqoC,MAAM,KAAK,EAAmD,KAAK,GAAG,OAAOkmE,GAAGphG,EAAEnN,EAAEA,EAAE8gG,aAAanf,SAAStuE,GAAGrT,EAAEqoC,MAAM,KAAK,GAAGl7B,EAAE,CACxZ,GADyZpN,EAAEC,EAAEwN,KAAKyN,SAASpZ,EAAE7B,EAAE8gG,aAAa1+F,EAAEpC,EAAEshG,cAClfh/F,EAAET,EAAEP,MAAM68F,GAAE0D,GAAG9hG,EAAEoiG,eAAepiG,EAAEoiG,cAAc7/F,EAAK,OAAOF,EAAE,GAAGs1F,GAAGt1F,EAAEd,MAAMgB,IAAI,GAAGF,EAAEu/E,WAAW9/E,EAAE8/E,WAAW2c,GAAGhxF,QAAQ,CAACtN,EAAEyuG,GAAGthG,EAAEnN,EAAEqT,GAAG,MAAMlG,CAAC,OAAO,IAAc,QAAV/K,EAAEpC,EAAEqoC,SAAiBjmC,EAAE6lF,OAAOjoF,GAAG,OAAOoC,GAAG,CAAC,IAAI6B,EAAE7B,EAAEmgG,aAAa,GAAG,OAAOt+F,EAAE,CAAC3B,EAAEF,EAAEimC,MAAM,IAAI,IAAIikB,EAAEroD,EAAEu+F,aAAa,OAAOl2C,GAAG,CAAC,GAAGA,EAAEpoD,UAAUnE,EAAE,CAAC,GAAG,IAAIqC,EAAEk9E,IAAI,EAAChzB,EAAEq3C,IAAI,EAAEtwF,GAAGA,IAAKisE,IAAI,EAAE,IAAI/7E,EAAEnB,EAAEghG,YAAY,GAAG,OAAO7/F,EAAE,CAAY,IAAIg5B,GAAfh5B,EAAEA,EAAEigG,QAAeC,QAAQ,OAAOlnE,EAAE+vB,EAAE1qD,KAAK0qD,GAAGA,EAAE1qD,KAAK26B,EAAE36B,KAAK26B,EAAE36B,KAAK0qD,GAAG/oD,EAAEkgG,QAAQn3C,CAAC,CAAC,CAAClqD,EAAEqgG,OAAOpvF,EAAgB,QAAdi5C,EAAElqD,EAAE4lF,aAAqB17B,EAAEm2C,OAAOpvF,GAAG+uF,GAAGhgG,EAAE6lF,OAClf50E,EAAErT,GAAGiE,EAAEw+F,OAAOpvF,EAAE,KAAK,CAACi5C,EAAEA,EAAE1qD,IAAI,CAAC,MAAM,GAAG,KAAKQ,EAAEk9E,IAAIh9E,EAAEF,EAAEoL,OAAOxN,EAAEwN,KAAK,KAAKpL,EAAEimC,WAAW,GAAG,KAAKjmC,EAAEk9E,IAAI,CAAY,GAAG,QAAdh9E,EAAEF,EAAE6lF,QAAmB,MAAMhjF,MAAM9E,EAAE,MAAMmC,EAAEmgG,OAAOpvF,EAAgB,QAAdpP,EAAE3B,EAAE0lF,aAAqB/jF,EAAEw+F,OAAOpvF,GAAG+uF,GAAG9/F,EAAE+Q,EAAErT,GAAGsC,EAAEF,EAAEmmF,OAAO,MAAMjmF,EAAEF,EAAEimC,MAAM,GAAG,OAAO/lC,EAAEA,EAAE2lF,OAAO7lF,OAAO,IAAIE,EAAEF,EAAE,OAAOE,GAAG,CAAC,GAAGA,IAAItC,EAAE,CAACsC,EAAE,KAAK,KAAK,CAAa,GAAG,QAAfF,EAAEE,EAAEimF,SAAoB,CAACnmF,EAAE6lF,OAAO3lF,EAAE2lF,OAAO3lF,EAAEF,EAAE,KAAK,CAACE,EAAEA,EAAE2lF,MAAM,CAAC7lF,EAAEE,CAAC,CAACisG,GAAGphG,EAAEnN,EAAE6B,EAAE8/E,SAAStuE,GAAGrT,EAAEA,EAAEqoC,KAAK,CAAC,OAAOroC,EAAE,KAAK,EAAE,OAAO6B,EAAE7B,EAAEwN,KAAKzN,EAAEC,EAAE8gG,aAAanf,SAAS2gB,GAAGtiG,EAAEqT,GAAWtT,EAAEA,EAAV8B,EAAE8gG,GAAG9gG,IAAU7B,EAAE+V,OAAO,EAAEw4F,GAAGphG,EAAEnN,EAAED,EAAEsT,GACpfrT,EAAEqoC,MAAM,KAAK,GAAG,OAAgBxmC,EAAE8/F,GAAX5hG,EAAEC,EAAEwN,KAAYxN,EAAE8gG,cAA6B4N,GAAGvhG,EAAEnN,EAAED,EAAtB8B,EAAE8/F,GAAG5hG,EAAEyN,KAAK3L,GAAcwR,GAAG,KAAK,GAAG,OAAOw7F,GAAG1hG,EAAEnN,EAAEA,EAAEwN,KAAKxN,EAAE8gG,aAAaztF,GAAG,KAAK,GAAG,OAAOtT,EAAEC,EAAEwN,KAAK3L,EAAE7B,EAAE8gG,aAAaj/F,EAAE7B,EAAEo0B,cAAcr0B,EAAE8B,EAAE8/F,GAAG5hG,EAAE8B,GAAG0tG,GAAGpiG,EAAEnN,GAAGA,EAAEs/E,IAAI,EAAEsf,GAAG7+F,IAAIoN,GAAE,EAAG+xF,GAAGl/F,IAAImN,GAAE,EAAGm1F,GAAGtiG,EAAEqT,GAAGgyF,GAAGrlG,EAAED,EAAE8B,GAAG+jG,GAAG5lG,EAAED,EAAE8B,EAAEwR,GAAGs8F,GAAG,KAAK3vG,EAAED,GAAE,EAAGoN,EAAEkG,GAAG,KAAK,GAAG,OAAOi+F,GAAGnkG,EAAEnN,EAAEqT,GAAG,KAAK,GAAG,OAAO07F,GAAG5hG,EAAEnN,EAAEqT,GAAG,MAAMpO,MAAM9E,EAAE,IAAIH,EAAEs/E,KAAM,EAYxC,IAAIs5B,GAAG,oBAAoBC,YAAYA,YAAY,SAAS1rG,GAAGs0C,QAAQja,MAAMr6B,EAAE,EAAE,SAAS2rG,GAAG3rG,GAAG3M,KAAKu4G,cAAc5rG,CAAC,CACjI,SAAS6rG,GAAG7rG,GAAG3M,KAAKu4G,cAAc5rG,CAAC,CAC5J,SAAS8rG,GAAG9rG,GAAG,SAASA,GAAG,IAAIA,EAAE8zB,UAAU,IAAI9zB,EAAE8zB,UAAU,KAAK9zB,EAAE8zB,SAAS,CAAC,SAASi4E,GAAG/rG,GAAG,SAASA,GAAG,IAAIA,EAAE8zB,UAAU,IAAI9zB,EAAE8zB,UAAU,KAAK9zB,EAAE8zB,WAAW,IAAI9zB,EAAE8zB,UAAU,iCAAiC9zB,EAAEq1E,WAAW,CAAC,SAAS22B,KAAK,CAExa,SAASC,GAAGjsG,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,IAAIO,EAAEiR,EAAE4/F,oBAAoB,GAAG7wG,EAAE,CAAC,IAAIE,EAAEF,EAAE,GAAG,oBAAoBP,EAAE,CAAC,IAAIoC,EAAEpC,EAAEA,EAAE,WAAW,IAAIsL,EAAEorG,GAAGj2G,GAAG2B,EAAExE,KAAK0N,EAAE,CAAC,CAAC46B,GAAG/nC,EAAEsC,EAAE6K,EAAEtL,EAAE,MAAMS,EADxJ,SAAY6K,EAAEnN,EAAEqT,EAAEtT,EAAE8B,GAAG,GAAGA,EAAE,CAAC,GAAG,oBAAoB9B,EAAE,CAAC,IAAIqC,EAAErC,EAAEA,EAAE,WAAW,IAAIoN,EAAEorG,GAAGj2G,GAAGF,EAAE3C,KAAK0N,EAAE,CAAC,CAAC,IAAI7K,EAAEg2G,GAAGt4G,EAAED,EAAEoN,EAAE,EAAE,MAAK,EAAG,EAAG,GAAGgsG,IAAmF,OAA/EhsG,EAAE8lG,oBAAoB3wG,EAAE6K,EAAEyuF,IAAIt5F,EAAEgL,QAAQguF,GAAG,IAAInuF,EAAE8zB,SAAS9zB,EAAEuuB,WAAWvuB,GAAG4pG,KAAYz0G,CAAC,CAAC,KAAKT,EAAEsL,EAAEo1E,WAAWp1E,EAAEypB,YAAY/0B,GAAG,GAAG,oBAAoB9B,EAAE,CAAC,IAAIkE,EAAElE,EAAEA,EAAE,WAAW,IAAIoN,EAAEorG,GAAGjsD,GAAGroD,EAAExE,KAAK0N,EAAE,CAAC,CAAC,IAAIm/C,EAAE4rD,GAAG/qG,EAAE,GAAE,EAAG,KAAK,GAAK,EAAG,EAAG,GAAGgsG,IAA0G,OAAtGhsG,EAAE8lG,oBAAoB3mD,EAAEn/C,EAAEyuF,IAAItvC,EAAEh/C,QAAQguF,GAAG,IAAInuF,EAAE8zB,SAAS9zB,EAAEuuB,WAAWvuB,GAAG4pG,IAAG,WAAWhvE,GAAG/nC,EAAEssD,EAAEj5C,EAAEtT,EAAE,IAAUusD,CAAC,CACpU+sD,CAAGhmG,EAAErT,EAAEmN,EAAEtL,EAAE9B,GAAG,OAAOw4G,GAAGj2G,EAAE,CAHpL02G,GAAG15G,UAAU88C,OAAO08D,GAAGx5G,UAAU88C,OAAO,SAASjvC,GAAG,IAAInN,EAAEQ,KAAKu4G,cAAc,GAAG,OAAO/4G,EAAE,MAAMiF,MAAM9E,EAAE,MAAM4nC,GAAG56B,EAAEnN,EAAE,KAAK,KAAK,EAAEg5G,GAAG15G,UAAUg6G,QAAQR,GAAGx5G,UAAUg6G,QAAQ,WAAW,IAAInsG,EAAE3M,KAAKu4G,cAAc,GAAG,OAAO5rG,EAAE,CAAC3M,KAAKu4G,cAAc,KAAK,IAAI/4G,EAAEmN,EAAEigF,cAAc2pB,IAAG,WAAWhvE,GAAG,KAAK56B,EAAE,KAAK,KAAK,IAAGnN,EAAE47F,IAAI,IAAI,CAAC,EACzTod,GAAG15G,UAAUi6G,2BAA2B,SAASpsG,GAAG,GAAGA,EAAE,CAAC,IAAInN,EAAE4rF,KAAKz+E,EAAE,CAAC0/E,UAAU,KAAKphD,OAAOt+B,EAAEqoD,SAASx1D,GAAG,IAAI,IAAIqT,EAAE,EAAEA,EAAEi5E,GAAG1tF,QAAQ,IAAIoB,GAAGA,EAAEssF,GAAGj5E,GAAGmiD,SAASniD,KAAKi5E,GAAGz0E,OAAOxE,EAAE,EAAElG,GAAG,IAAIkG,GAAG45E,GAAG9/E,EAAE,CAAC,EAEXs+E,GAAG,SAASt+E,GAAG,OAAOA,EAAEmyE,KAAK,KAAK,EAAE,IAAIt/E,EAAEmN,EAAEw5E,UAAU,GAAG3mF,EAAEsN,QAAQ66E,cAAcgF,aAAa,CAAC,IAAI95E,EAAEo3E,GAAGzqF,EAAE2qF,cAAc,IAAIt3E,IAAIi4E,GAAGtrF,EAAI,EAAFqT,GAAKmiG,GAAGx1G,EAAEipF,MAAK,KAAO,EAAF+a,MAAOiO,GAAGhpB,KAAI,IAAIuW,MAAM,CAAC,MAAM,KAAK,GAAGuX,IAAG,WAAW,IAAI/2G,EAAEijG,GAAG91F,EAAE,GAAG,GAAG,OAAOnN,EAAE,CAAC,IAAIqT,EAAE6hB,KAAI6vE,GAAG/kG,EAAEmN,EAAE,EAAEkG,EAAE,CAAC,IAAGolG,GAAGtrG,EAAE,GAAG,EAC/bu+E,GAAG,SAASv+E,GAAG,GAAG,KAAKA,EAAEmyE,IAAI,CAAC,IAAIt/E,EAAEijG,GAAG91F,EAAE,WAAW,GAAG,OAAOnN,EAAa+kG,GAAG/kG,EAAEmN,EAAE,UAAX+nB,MAAwBujF,GAAGtrG,EAAE,UAAU,CAAC,EAAEw+E,GAAG,SAASx+E,GAAG,GAAG,KAAKA,EAAEmyE,IAAI,CAAC,IAAIt/E,EAAE8kG,GAAG33F,GAAGkG,EAAE4vF,GAAG91F,EAAEnN,GAAG,GAAG,OAAOqT,EAAa0xF,GAAG1xF,EAAElG,EAAEnN,EAAXk1B,MAAgBujF,GAAGtrG,EAAEnN,EAAE,CAAC,EAAE4rF,GAAG,WAAW,OAAOL,EAAC,EAAEM,GAAG,SAAS1+E,EAAEnN,GAAG,IAAIqT,EAAEk4E,GAAE,IAAI,OAAOA,GAAEp+E,EAAEnN,GAAe,CAAX,QAAQurF,GAAEl4E,CAAC,CAAC,EAClSizE,GAAG,SAASn5E,EAAEnN,EAAEqT,GAAG,OAAOrT,GAAG,IAAK,QAAyB,GAAjBihF,EAAG9zE,EAAEkG,GAAGrT,EAAEqT,EAAEkG,KAAQ,UAAUlG,EAAE7F,MAAM,MAAMxN,EAAE,CAAC,IAAIqT,EAAElG,EAAEkG,EAAEqoB,YAAYroB,EAAEA,EAAEqoB,WAAsF,IAA3EroB,EAAEA,EAAEmmG,iBAAiB,cAAcC,KAAKC,UAAU,GAAG15G,GAAG,mBAAuBA,EAAE,EAAEA,EAAEqT,EAAEzU,OAAOoB,IAAI,CAAC,IAAID,EAAEsT,EAAErT,GAAG,GAAGD,IAAIoN,GAAGpN,EAAE45G,OAAOxsG,EAAEwsG,KAAK,CAAC,IAAI93G,EAAE+kF,GAAG7mF,GAAG,IAAI8B,EAAE,MAAMoD,MAAM9E,EAAE,KAAKogF,EAAGxgF,GAAGkhF,EAAGlhF,EAAE8B,EAAE,CAAC,CAAC,CAAC,MAAM,IAAK,WAAWggF,GAAG10E,EAAEkG,GAAG,MAAM,IAAK,SAAmB,OAAVrT,EAAEqT,EAAE/R,QAAe+/E,GAAGl0E,IAAIkG,EAAEu+F,SAAS5xG,GAAE,GAAI,EAAE+mF,GAAG+vB,GAAG9vB,GAAG+vB,GACpa,IAAI6C,GAAG,CAACC,uBAAsB,EAAGC,OAAO,CAACpzB,GAAGiQ,GAAG/P,GAAGC,GAAGC,GAAGgwB,KAAKiD,GAAG,CAACC,wBAAwB9sB,GAAG+sB,WAAW,EAAEp2D,QAAQ,SAASq2D,oBAAoB,aAC1IC,GAAG,CAACF,WAAWF,GAAGE,WAAWp2D,QAAQk2D,GAAGl2D,QAAQq2D,oBAAoBH,GAAGG,oBAAoBE,eAAeL,GAAGK,eAAeC,kBAAkB,KAAKC,4BAA4B,KAAKC,4BAA4B,KAAKC,cAAc,KAAKC,wBAAwB,KAAKC,wBAAwB,KAAKC,gBAAgB,KAAKC,mBAAmB,KAAKC,eAAe,KAAKC,qBAAqBl9B,EAAGoqB,uBAAuB+S,wBAAwB,SAAS5tG,GAAW,OAAO,QAAfA,EAAEm7E,GAAGn7E,IAAmB,KAAKA,EAAEw5E,SAAS,EAAEqzB,wBAAwBD,GAAGC,yBARjN,WAAc,OAAO,IAAI,EASpUgB,4BAA4B,KAAKC,gBAAgB,KAAKC,aAAa,KAAKC,kBAAkB,KAAKC,gBAAgB,KAAKC,kBAAkB,kCAAkC,GAAG,qBAAqBC,+BAA+B,CAAC,IAAIC,GAAGD,+BAA+B,IAAIC,GAAGC,YAAYD,GAAGE,cAAc,IAAI1xB,GAAGwxB,GAAGG,OAAOvB,IAAInwB,GAAGuxB,EAAY,CAAT,MAAMpuG,IAAG,CAAC,CAACvN,EAAQi+E,mDAAmD+7B,GAC9Yh6G,EAAQ+7G,aAAa,SAASxuG,EAAEnN,GAAG,IAAIqT,EAAE,EAAE1U,UAAUC,aAAQ,IAASD,UAAU,GAAGA,UAAU,GAAG,KAAK,IAAIs6G,GAAGj5G,GAAG,MAAMiF,MAAM9E,EAAE,MAAM,OAAOi4G,GAAGjrG,EAAEnN,EAAE,KAAKqT,EAAE,EAAEzT,EAAQg8G,WAAW,SAASzuG,EAAEnN,GAAG,IAAIi5G,GAAG9rG,GAAG,MAAMlI,MAAM9E,EAAE,MAAM,IAAIkT,GAAE,EAAGtT,EAAE,GAAG8B,EAAE+2G,GAA4P,OAAzP,OAAO54G,QAAG,IAASA,KAAI,IAAKA,EAAE67G,sBAAsBxoG,GAAE,QAAI,IAASrT,EAAEitG,mBAAmBltG,EAAEC,EAAEitG,uBAAkB,IAASjtG,EAAEw3G,qBAAqB31G,EAAE7B,EAAEw3G,qBAAqBx3G,EAAEk4G,GAAG/qG,EAAE,GAAE,EAAG,KAAK,EAAKkG,EAAE,EAAGtT,EAAE8B,GAAGsL,EAAEyuF,IAAI57F,EAAEsN,QAAQguF,GAAG,IAAInuF,EAAE8zB,SAAS9zB,EAAEuuB,WAAWvuB,GAAU,IAAI2rG,GAAG94G,EAAE,EACrfJ,EAAQk8G,YAAY,SAAS3uG,GAAG,GAAG,MAAMA,EAAE,OAAO,KAAK,GAAG,IAAIA,EAAE8zB,SAAS,OAAO9zB,EAAE,IAAInN,EAAEmN,EAAEy3F,gBAAgB,QAAG,IAAS5kG,EAAE,CAAC,GAAG,oBAAoBmN,EAAEivC,OAAO,MAAMn3C,MAAM9E,EAAE,MAAiC,MAA3BgN,EAAE9N,OAAO0uC,KAAK5gC,GAAGzN,KAAK,KAAWuF,MAAM9E,EAAE,IAAIgN,GAAI,CAAqC,OAA5BA,EAAE,QAAVA,EAAEm7E,GAAGtoF,IAAc,KAAKmN,EAAEw5E,SAAkB,EAAE/mF,EAAQm8G,UAAU,SAAS5uG,GAAG,OAAO4pG,GAAG5pG,EAAE,EAAEvN,EAAQo8G,QAAQ,SAAS7uG,EAAEnN,EAAEqT,GAAG,IAAI6lG,GAAGl5G,GAAG,MAAMiF,MAAM9E,EAAE,MAAM,OAAOi5G,GAAG,KAAKjsG,EAAEnN,GAAE,EAAGqT,EAAE,EAC/YzT,EAAQq8G,YAAY,SAAS9uG,EAAEnN,EAAEqT,GAAG,IAAI4lG,GAAG9rG,GAAG,MAAMlI,MAAM9E,EAAE,MAAM,IAAIJ,EAAE,MAAMsT,GAAGA,EAAE6oG,iBAAiB,KAAKr6G,GAAE,EAAGO,EAAE,GAAGE,EAAEs2G,GAAyO,GAAtO,OAAOvlG,QAAG,IAASA,KAAI,IAAKA,EAAEwoG,sBAAsBh6G,GAAE,QAAI,IAASwR,EAAE45F,mBAAmB7qG,EAAEiR,EAAE45F,uBAAkB,IAAS55F,EAAEmkG,qBAAqBl1G,EAAE+Q,EAAEmkG,qBAAqBx3G,EAAEs4G,GAAGt4G,EAAE,KAAKmN,EAAE,EAAE,MAAMkG,EAAEA,EAAE,KAAKxR,EAAE,EAAGO,EAAEE,GAAG6K,EAAEyuF,IAAI57F,EAAEsN,QAAQguF,GAAGnuF,GAAMpN,EAAE,IAAIoN,EAAE,EAAEA,EAAEpN,EAAEnB,OAAOuO,IAA2BtL,GAAhBA,GAAPwR,EAAEtT,EAAEoN,IAAOgvG,aAAgB9oG,EAAE+oG,SAAS,MAAMp8G,EAAEi4G,gCAAgCj4G,EAAEi4G,gCAAgC,CAAC5kG,EAAExR,GAAG7B,EAAEi4G,gCAAgCl5G,KAAKsU,EACvhBxR,GAAG,OAAO,IAAIm3G,GAAGh5G,EAAE,EAAEJ,EAAQw8C,OAAO,SAASjvC,EAAEnN,EAAEqT,GAAG,IAAI6lG,GAAGl5G,GAAG,MAAMiF,MAAM9E,EAAE,MAAM,OAAOi5G,GAAG,KAAKjsG,EAAEnN,GAAE,EAAGqT,EAAE,EAAEzT,EAAQy8G,uBAAuB,SAASlvG,GAAG,IAAI+rG,GAAG/rG,GAAG,MAAMlI,MAAM9E,EAAE,KAAK,QAAOgN,EAAE8lG,sBAAqB8D,IAAG,WAAWqC,GAAG,KAAK,KAAKjsG,GAAE,GAAG,WAAWA,EAAE8lG,oBAAoB,KAAK9lG,EAAEyuF,IAAI,IAAI,GAAE,KAAG,EAAM,EAAEh8F,EAAQ08G,wBAAwBxF,GAC/Ul3G,EAAQ28G,oCAAoC,SAASpvG,EAAEnN,EAAEqT,EAAEtT,GAAG,IAAIm5G,GAAG7lG,GAAG,MAAMpO,MAAM9E,EAAE,MAAM,GAAG,MAAMgN,QAAG,IAASA,EAAEy3F,gBAAgB,MAAM3/F,MAAM9E,EAAE,KAAK,OAAOi5G,GAAGjsG,EAAEnN,EAAEqT,GAAE,EAAGtT,EAAE,EAAEH,EAAQikD,QAAQ,oEChU7L,IAAItnB,EAAIknB,EAAQ,MAEd7jD,EAAQg8G,WAAar/E,EAAEq/E,WACvBh8G,EAAQq8G,YAAc1/E,EAAE0/E,gDCH1B,SAASO,IAEP,GAC4C,qBAAnClB,gCAC4C,oBAA5CA,+BAA+BkB,SAcxC,IAEElB,+BAA+BkB,SAASA,EAK1C,CAJE,MAAOC,GAGPh7D,QAAQja,MAAMi1E,EAChB,CACF,CAKED,GACA78G,EAAOC,QAAU,EAAjBD,gnCChCF,IAEa+8G,EAAU,CACrBC,KAAM,QAGKC,EAAkB,SAAA/6G,GAAA,QAAGP,MAAAA,YAAAA,IAAAA,EAAQ,MAC7Bu7G,EAAgB,kBAAMC,EAAAA,cAAAA,EAAAA,SAAAA,KAAAA,OAAAA,EAEtBC,EAAgB,CAC3BC,KAAMJ,EACNh5G,MAAO,IACPq5G,SAAU,EACVC,SAAUC,OAAOC,kBAGnB,SAASC,IAAAA,IAAAA,IAAAA,EAAAA,UAAAA,OAAcC,EAAAA,IAAAA,MAAAA,GAAAA,EAAAA,EAAAA,EAAAA,EAAAA,IAAAA,EAAAA,GAAAA,UAAAA,GAAAA,OACdA,EAASt0F,QAAO,SAAC68E,EAAOjkG,GAAAA,IACrBkrB,EAA8BlrB,EAA9BkrB,MAAOwU,EAAuB1/B,EAAvB0/B,UAAAA,OAEfukE,EAAAA,EAAAA,CAAAA,EACKA,EAAAA,CAAAA,EAAAA,EAHiCjkG,EAAAA,CAAAA,QAAAA,eAOlCkrB,IACF+4E,EAAM/4E,MAAQ+4E,EAAM/4E,MAAAA,EAAAA,CAAAA,EACV+4E,EAAM/4E,OAAS,CAAC,EAAD,GAASA,GAAS,CAAC,GACxCA,GAGFwU,IACFukE,EAAMvkE,UAAYukE,EAAMvkE,UACpBukE,EAAMvkE,UAAY,IAAMA,EACxBA,GAGkB,KAApBukE,EAAMvkE,kBACDukE,EAAMvkE,UAGRukE,CAAAA,GACN,CAAC,EAAD,KAkBQ0X,EAAiB,SAACzxD,EAAO65B,GAAAA,YAAAA,IAAAA,IAAAA,EAAO,CAAC,GACrC,SAAC63B,GAAAA,YAAAA,IAAAA,IAAAA,EAAY,CAAC,GACnB,UAAI1xD,EAAAA,CAAO0xD,IAAWx0F,QACpB,SAAC/b,EAAMrL,GAAAA,OAlBb,SAAS67G,EAAiBC,EAAWF,EAAW73B,GAAAA,MAErB,mBAAd63B,EACFC,EAAiB,CAAC,EAAGD,EAAUE,EAAW/3B,IAI/C3mF,MAAMC,QAAQu+G,GACTH,EAAAA,WAAAA,EAAAA,CAAWK,GAAAA,OAAcF,IAI3BH,EAAWK,EAAWF,EAAAA,CAZ/B,CAmByBvwG,EAAMrL,EAAAA,EAAAA,CAAAA,EAClB+jF,EAAAA,CACH63B,UAAAA,IAAAA,GAEJ,CAAC,EAAD,GAIOG,EAAc,SAAC7xD,EAAO8xD,EAASj4B,EAAWk4B,GAAAA,YAAAA,IAAXl4B,IAAAA,EAAO,CAAC,GAClD75B,EAAM9iC,QAAO,SAAC/b,EAAMrL,GAAAA,OACAA,EAAKqL,EAAM04E,EAAAA,GAU5Bi4B,EAAAA,EAEQE,EAAY,SAAChyD,EAAO5nD,EAASyhF,GAAAA,YAAAA,IAAAA,IAAAA,EAAO,CAAC,GAChD75B,EAAMj/C,SAAQ,YACMkxG,EAAK75G,EAASyhF,EAAAA,GAAAA,EAW7B,SAASq4B,EAAkBC,EAASC,EAASC,EAAYC,GAM1CH,EAAQI,WAC1B,YAAAC,OAAUA,EAAOH,aAAeA,CAAAA,IAalCD,EAAQrxG,SAAQ,YACMoxG,EAAQI,WAC1B,YAAAC,OAAUA,EAAOH,aAAerwG,CAAAA,GAAAA,GAAAA,CAY/B,SAASywG,EAAiB/Y,EAASz6C,GAAAA,MACd,mBAAZy6C,EAAyBA,EAAQz6C,GAAOy6C,CAAAA,CAGjD,SAASgZ,EAAapyD,GAAAA,IACrBg6C,EAAM0W,EAAMtQ,SAAAA,OAClBpG,EAAI94F,QAAU8+C,EAEP0wD,EAAM9Q,aAAY,kBAAM5F,EAAI94F,OAAAA,GAAS,QAIjCmxG,EACS,oBAAb15G,SAA2B+3G,EAAMzQ,gBAAkByQ,EAAM5Q,UAE3D,SAASwS,EAAuB1zD,EAAI4/C,GAAAA,IACnC+T,EAAa7B,EAAMtQ,QAAO,GAEhCiS,GAAoB,WACdE,EAAWrxG,SACb09C,IAEF2zD,EAAWrxG,SAAU,IAEpBs9F,EAAAA,CAuCE,SAASgU,EAAa7jB,EAAU8jB,EAAQl5B,GAAAA,YAAAA,IAAAA,IAAAA,EAAO,CAAC,GAC9C,SAACn4E,EAAMgwG,QAAAA,IAAAA,IAAAA,EAAY,CAAC,GAAD,IAClBsB,EAAuB,iBAATtxG,EAAoBqxG,EAAOrxG,GAAQA,EAAAA,QAAAA,IAE5CsxG,EAAAA,MACTr9D,QAAQ/Z,KAAKm3E,GACP,IAAI55G,MA1MA,sCA6ML85G,EAAWD,EAAAA,EAAAA,CAAAA,EAAW/jB,EAAAA,CAAU8jB,OAAAA,GAAWl5B,EAAAA,CAAAA,EAAS63B,GAAAA,CAAAA,CAIxD,SAASuB,EAAWD,EAAMjZ,GAAAA,OAYjC,SAA0BmZ,GAAAA,MAED,mBAAdA,IAECxoC,EAAQn3E,OAAO4/G,eAAeD,IACvB1/G,WAAak3E,EAAMl3E,UAAUw4G,iBAF3C,IACOthC,CAAAA,CAJZ,CAR0BwoC,EAHAF,IAMD,mBAAdE,GAeX,SAA2BA,GAAAA,MAEF,iBAAdA,GACuB,iBAAvBA,EAAUx/B,UACjB,CAAC,aAAc,qBAAqBjgF,SAASy/G,EAAUx/B,SAAS0/B,YAAAA,CAJpE,CAdsBF,GAPYlC,EAAAA,cAACgC,EAASjZ,GAAYiZ,EAGxD,IAA0BE,CAAAA,CC1MnB,SAASG,EAAoBh8B,EAASzoE,EAAQ+X,GAAAA,YAAAA,IAAAA,IAAAA,EAAQ,GACpD0wD,EAAQ90E,KAAI,YAAAwwG,OAOjBO,EANAP,EAAAA,EAAAA,CAAAA,EACKA,EAAAA,CACHnkG,OAAAA,EACA+X,MAAAA,KAKEosF,EAAO17B,UACT07B,EAAO17B,QAAUg8B,EAAoBN,EAAO17B,QAAS07B,EAAQpsF,EAAQ,IAEhEosF,CAAAA,GAAAA,CAIJ,SAASQ,EAAel8B,GAAAA,OACtBm8B,EAAUn8B,EAAS,WAGrB,SAASi8B,EAAqBP,GAAAA,IAE7Bz9D,EAAyBy9D,EAAzBz9D,GAAIm+D,EAAqBV,EAArBU,SAAUC,EAAWX,EAAXW,OAAAA,GAEI,iBAAbD,EAAuB,CAChCn+D,EAAKA,GAAMm+D,EAAAA,IACLE,EAAeF,EAASj7D,MAAM,KACpCi7D,EAAW,YAAAG,OA+HR,SAAetzD,EAAKpc,EAAM2vE,GAAAA,IAC1B3vE,EAAAA,OACIoc,EAAAA,IAYLgD,EAVEwwD,EAA2B,mBAAT5vE,EAAsBA,EAAOypE,KAAKC,UAAU1pE,GAE9D6vE,EACJC,EAAa/yG,IAAI6yG,IAChB,eACOC,EAiJZ,SAAuBzzD,GAAAA,OAevB,SAAS2zD,EAAYrzD,EAAKszD,GAAS,QAATA,IAAAA,IAAAA,EAAS,IAC5BhhH,MAAMC,QAAQytD,GAAAA,IAGZ,IAAIhuD,EAAI,EAAGA,EAAIguD,EAAI9tD,OAAQF,GAAK,EACnCqhH,EAAYrzD,EAAIhuD,GAAIshH,QAHtBA,EAAOjhH,KAAK2tD,GAAAA,OAMPszD,CAAAA,CART,CAbgB5zD,GAET/9C,KAAI,YAAAtO,OAAKO,OAAOP,GAAGq8B,QAAQ,IAAK,QAEhC18B,KAAK,KAEL08B,QAAQ6jF,EAAe,KACvB7jF,QAAQ8jF,EAAgB,IAExB57D,MAAM,KAXb,CAjJoCtU,GAAAA,OAC9B8vE,EAAazvD,IAAIuvD,EAAUC,GACpBA,CAAAA,CAHR,OASDzwD,EAAMywD,EAAQ72F,QAAO,SAACm3F,EAAQC,GAAAA,OAAaD,EAAOC,EAAAA,GAAWh0D,EAClD,CAAX,MAAOvqD,GAAI,CAAJA,YAAAA,IAGKutD,EAAsBA,EAAMuwD,CAAAA,CArBrC,CA/HqBD,EAAKD,EAAAA,CAAAA,CAAAA,IAG1Br+D,GAAwB,iBAAXo+D,GAAuBA,IACvCp+D,EAAKo+D,IAGFp+D,GAAMy9D,EAAO17B,QAAS,MACzB1hC,QAAQja,MAAMq3E,GACR,IAAI55G,MAAM,2DAGbm8C,EAAAA,MACHK,QAAQja,MAAMq3E,GACR,IAAI55G,MAAM,wDAGlB5F,OAAOuB,OAAOi+G,EAAQ,CACpBz9D,GAAAA,EACAm+D,SAAAA,IAGKV,CAAAA,CAGF,SAASwB,EAAexB,EAAQyB,GAAAA,IAChCA,EAAAA,MACG,IAAIr7G,MAAAA,OAEZ5F,OAAOuB,OAAOi+G,EAAAA,EAAAA,CAEZW,OAAQ3C,EACR0D,OAAQ1D,GACLE,EAAAA,CAAAA,EACAuD,EAAAA,CAAAA,EACAzB,IAGLx/G,OAAOuB,OAAOi+G,EAAQ,CACpB2B,cAAe3B,EAAOj7G,QAGjBi7G,CAAAA,CAIF,SAAS4B,EACdC,EACA3D,EACA4D,QAAAA,IAAAA,IAAAA,EAA6B,iBAAO,CAAC,CAAD,WAE9BC,EAAe,GAEjBC,EAAcH,EAEdI,EAAM,EACJC,EAAS,kBAAMD,GAAAA,EAAAA,EAAAA,WAAAA,IAIbE,EAAc,CAClBC,QAAS,IAILC,EAAgB,GAEhBC,EAAaN,EAAYlsF,MAAK,YAAA50B,OAAKA,EAAE2a,MAAAA,IAG3CmmG,EAAYh0G,SAAQ,YAAAgyG,IAIduC,EAFAC,EAAqB,UAAIH,GAAelqE,UAAU,GAIlDmqE,IAGAC,EADEvC,EAAOnkG,OACT0mG,EAAAA,CAAAA,EACKvC,EAAOnkG,OAAAA,CACV4mG,WAAYzC,EAAOnkG,OAAO0mC,GAC1BA,GAAOy9D,EAAOnkG,OAAO0mC,GAAAA,IAAM2/D,IAC3BE,QAAS,CAACpC,IACP8B,EAA2B9B,IAKpBwB,EAAAA,EAAAA,CAERiB,WAHkBzC,EAAOz9D,GAAAA,eAIzBA,GAAOy9D,EAAOz9D,GAAAA,gBAAkB2/D,IAChCQ,cAAe1C,EACfoC,QAAS,CAACpC,IACP8B,EAA2B9B,IAEhC9B,GAOFsE,GACAA,EAAmBC,aAAeF,EAAUE,WAE5CD,EAAmBJ,QAAQliH,KAAK8/G,GAEhCqC,EAAcniH,KAAKqiH,IAIvBJ,EAAYC,QAAQliH,KAAK8/G,EAAAA,IAG3B+B,EAAa7hH,KAAKiiH,GAGlBH,EAAcK,CAAAA,EA7DTL,EAAYjiH,QAAAA,IAAAA,OAgEZgiH,EAAa5pE,SAAAA,CAGtB,IAAM8oE,EAAe,IAAI1zB,IA0BlB,SAASo1B,IAAAA,IAAAA,IAAAA,EAAAA,UAAAA,OAAmBxnG,EAAAA,IAAAA,MAAAA,GAAAA,EAAAA,EAAAA,EAAAA,EAAAA,IAAAA,EAAAA,GAAAA,UAAAA,GAAAA,IAC5B,IAAItb,EAAI,EAAGA,EAAIsb,EAAKpb,OAAQF,GAAK,EAAG,QAAH,IACzBsb,EAAKtb,GAAAA,OACPsb,EAAKtb,EAAAA,CA8BX,SAASyxD,EAAWhjD,GAAAA,GACR,mBAANA,EAAAA,OACFA,CAAAA,CAIJ,SAASmyG,EAAU5yD,EAAKltD,GAAAA,IACvBiiH,EAAO,UAEG,SAAVC,EAAUh1D,GACdA,EAAI7/C,SAAQ,YACL9M,EAAEP,GAGLkiH,EAAQ3hH,EAAEP,IAFViiH,EAAK1iH,KAAKgB,EAAAA,GAAAA,CAHA,CAUR2sD,GAED+0D,CAAAA,CAGF,SAASE,EACdC,EAAAA,GAAAA,IACEC,EAAAA,EAAAA,kBAAmBC,EAAAA,EAAAA,SAAAA,EAAAA,EAAUC,cAAAA,OAAAA,IAAAA,GAAAA,EAEzBC,EAAe,UAiBrBJ,EAAK/0G,SAAQ,YAAA6yG,OAfK,SAAZuC,EAAavC,EAAKwC,QAAAA,IAAAA,IAAAA,GAAAA,GACtBxC,EAAIyC,WACDzC,EAAI0C,UAAY1C,EAAI0C,SAASP,IAAuBC,EAASpC,EAAIt+D,IAEpEs+D,EAAI2C,UAAY3C,EAAI4C,WAAa5C,EAAI4C,QAAQ1jH,OAEzCsjH,GACFF,EAAajjH,KAAK2gH,GAGhBA,EAAI4C,SAAW5C,EAAI4C,QAAQ1jH,QAAU8gH,EAAIyC,YAC3CzC,EAAI4C,QAAQz1G,SAAQ,YAAA6yG,OAAOuC,EAAUvC,EAAKqC,EAAAA,GAAAA,CAX5B,CAeYrC,EAAAA,IAEvBsC,CAAAA,CAGF,SAASO,EAAgBlnG,EAAQmnG,EAAiBC,GAAAA,OAErDtyD,EAAW90C,IACXmnG,EAAgBnnG,IAChBonG,EAAYpnG,IACZonG,EAAYnrF,IAAAA,CAIT,SAASorF,EAAuBC,EAAYrhH,EAAOu9G,GAAAA,OACjD8D,EAAaA,EAAWrhH,EAAOu9G,QAAAA,IAAiBv9G,CAAAA,CAGlD,SAASshH,IAAAA,MACR,IAAI39G,MACR,mGAIJ,IAAI49G,EAAmB,KAyBjB5C,EAAgB,MAChBC,EAAiB,MChUjB4C,EAAuB,SAAAjd,GAAAA,OAAAA,EAAAA,CAC3Bkd,KAAM,SACHld,EAAAA,EAGCmd,EAA2B,SAAAnd,GAAAA,OAAAA,EAAAA,CAC/Bkd,KAAM,YACHld,EAAAA,EAGCod,EAAwB,SAACpd,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,OAAAA,EAAAA,CACtCr/G,IAAK,UAAUq/G,EAAOz9D,GACtB8hE,QAASrE,EAAOsE,wBAChBJ,KAAM,gBACHld,EAAAA,EAGCud,EAAwB,SAACvd,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,OAAAA,EAAAA,CACtCr/G,IAAK,UAAUq/G,EAAOz9D,GACtB8hE,QAASrE,EAAOsE,yBACbtd,EAAAA,EAGCwd,EAA6B,SAACxd,EAAAA,GAAAA,OAAAA,EAAAA,CAClCrmG,IAAK,eAALA,EAD2C0G,MAE3C68G,KAAM,OACHld,EAAAA,EAGCyd,EAA6B,SAACzd,EAAAA,GAAAA,OAAAA,EAAAA,CAClCrmG,IAAK,eAALA,EAD2C0G,OAExC2/F,EAAAA,EAGC0d,EAAqB,SAAC1d,EAAAA,GAAAA,OAAAA,EAAAA,CAC1BrmG,IAAK,OAALA,EADmCkgH,IACnBt+D,GAChB2hE,KAAM,OACHld,EAAAA,EAGC2d,EAAsB,SAAC3d,EAAAA,GAAAA,IAAS4d,EAAAA,EAAAA,KAAAA,OAAAA,EAAAA,CACpCjkH,IAAK,QAAQikH,EAAK/D,IAAIt+D,GAAAA,IAAMqiE,EAAK5E,OAAOz9D,GACxC2hE,KAAM,QACHld,EAAAA,EAGU,SAAS6d,IAAAA,MACf,CACLC,WAAY,GACZC,cAAe,GACfC,mBAAoB,GACpB1gC,QAAS,GACT2gC,YAAa,GACbpD,WAAY,GACZqD,eAAgB,GAChBC,YAAa,GACbC,oBAAqB,GACrBC,wBAAyB,GACzBC,qBAAsB,GACtBC,eAAgB,GAChBC,mBAAoB,GACpBzD,aAAc,GACd0D,iBAAkB,GAClBC,4BAA6B,GAC7BC,YAAa,GACbC,WAAY,GACZC,cAAe,CAAC5B,GAChB6B,kBAAmB,CAAC3B,GACpB4B,oBAAqB,CAACvB,GACtBwB,oBAAqB,CAACvB,GACtBwB,eAAgB,CAAC7B,GACjB8B,eAAgB,CAAC3B,GACjB4B,YAAa,CAACzB,GACd0B,aAAc,CAACzB,GACf0B,iBAAkB,IChEtBxI,EAAQyI,mBAAqB,qBAC7BzI,EAAQ0I,iBAAmB,mBAC3B1I,EAAQ2I,iBAAmB,mBAC3B3I,EAAQ4I,qBAAuB,uBAExB,IAAMC,EAAsB,SAAAz5D,GACjCA,EAAM05D,qBAAuB,CAACC,GAC9B35D,EAAM45D,6BAA+B,CAACC,GAEtC75D,EAAM83D,cAAc7kH,KAAK6mH,GACzB95D,EAAMy4D,4BAA4BxlH,KAAKwlH,GACvCz4D,EAAMw4D,iBAAiBvlH,MAAK,SAAC6rG,EAAAA,GAAAA,IAAQ7P,EAAAA,EAAAA,SAAAA,MAAAA,GAAAA,OAChC6P,EAAAA,CACH7P,EAASwK,MAAMsgB,eAAAA,IAEjB/5D,EAAM04D,YAAYzlH,KAAKylH,EAAAA,EAGzBe,EAAoBpH,WAAa,sBAEjC,IAAMsH,EAA8B,SAAC5f,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,MAAa,CACzDhZ,EACA,CACEigB,SAAU,SAAAjkH,GACRg9G,EAAOkH,cAAclkH,EAAE4pC,OAAO1N,QAAAA,EAEhCjR,MAAO,CACLqzF,OAAQ,WAEVpiF,QAAS8gF,EAAOx/E,UAChB2mF,MAAO,2BAILL,EAAsC,SAAC9f,EAAAA,GAAAA,IAAS9K,EAAAA,EAAAA,SAAAA,MAAe,CACnE8K,EACA,CACEigB,SAAU,SAAAjkH,GACRk5F,EAASuqB,sBAAsBzjH,EAAE4pC,OAAO1N,QAAAA,EAE1CjR,MAAO,CACLqzF,OAAQ,WAEVpiF,SAAUg9D,EAASkrB,mBAAqBlrB,EAASwK,MAAMsgB,cAAcjnH,OACrEonH,MAAO,4BACPE,eACGnrB,EAASkrB,kBAAoBlrB,EAASwK,MAAMsgB,cAAcjnH,QAAAA,EAIjE,SAASgnH,EAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExBkJ,cAAe,IACZtgB,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQyI,mBAAoB,OAApBA,EAAAA,CAAAA,EAErB5f,EAAAA,CACHsgB,cAAe9qB,EAASqrB,aAAaP,eAAiB,QAItDrc,EAAOh8F,OAASkvG,EAAQ0I,iBAAkB,KAMtCS,QAAAA,IAJGrc,EAAOloG,MACVkoG,EAAOloG,OACNikG,EAAMsgB,cAActmH,SAASiqG,EAAO6c,WAAAA,GAAAA,OAGnC9gB,EAAMsgB,cAAe,CAAArc,EAAO6c,WAChC9gB,EAAMsgB,cAAcxqG,QAAO,YAAAtb,OAAKA,IAAMypG,EAAO6c,QAAAA,IAAAA,OAAAA,EAAAA,CAAAA,EAG5C9gB,EAAAA,CACHsgB,cAAAA,GAAAA,CAAAA,OAIArc,EAAOh8F,OAASkvG,EAAQ2I,iBAAAA,EAAAA,CAAAA,EAErB9f,EAAAA,CACHsgB,cAAetH,EAAiB/U,EAAOloG,MAAOikG,EAAMsgB,iBAIpDrc,EAAOh8F,OAASkvG,EAAQ4I,qBAAAA,EAAAA,CAAAA,EAOrB/f,EAAAA,CACHsgB,oBAAAA,IANOrc,EAAOloG,MACVkoG,EAAOloG,OACNikG,EAAMsgB,cAAcjnH,QAIEm8F,EAAS2lB,WAAWryG,KAAI,YAAAtO,OAAKA,EAAEqhD,EAAAA,IAAM,YAKtE,SAASmjE,EAA4BxpB,GAAAA,IAEjCkmB,EAEElmB,EAFFkmB,QACS4E,EACP9qB,EADFwK,MAASsgB,cAGU/I,EAAMtQ,QAAO,GAEhBl/F,QAAAA,IAsBd61G,EAA0B,EAE9BlC,EAAQp0G,SACN,YAAAy5G,OAAcnD,GAtBK,SAAfoD,EAAgB1H,EAAQ2H,GAC5B3H,EAAOx/E,UAAYmnF,IAAkBX,EAActmH,SAASs/G,EAAOz9D,IAAAA,IAE/D+hE,EAA0B,SAE1BtE,EAAOoC,SAAWpC,EAAOoC,QAAQriH,OACnCigH,EAAOoC,QAAQp0G,SACb,YAAA45G,OACGtD,GAA2BoD,EAAaE,EAAW5H,EAAOx/E,UAAAA,IAG/D8jF,EAA0BtE,EAAOx/E,UAAY,EAAI,EAGnDw/E,EAAOsE,wBAA0BA,EAE1BA,CAAAA,CAhBY,CAsBmCmD,GAAAA,EAAW,IAIrE,SAAS9B,EAAYzpB,GAAAA,IAEjB5X,EAOE4X,EAPF5X,QACAujC,EAME3rB,EANF2rB,YACA9c,EAKE7O,EALF6O,SACA8W,EAIE3lB,EAJF2lB,WACAiG,EAGE5rB,EAHF4rB,SACSd,EAEP9qB,EAFFwK,MAASsgB,cAAAA,EAEP9qB,EADF6rB,uBAAAA,OAAAA,IAAAA,GAAAA,EAGIC,EAAcrI,EAAazjB,GAE3BkrB,EAAmBvF,EAAW9hH,SAAWinH,EAAcjnH,OAEvDwmH,EAAmBtI,EAAM9Q,aAC7B,SAACqa,EAAU/kH,GAAAA,OACTsoG,EAAS,CAAEp8F,KAAMkvG,EAAQ0I,iBAAkBiB,SAAAA,EAAU/kH,MAAAA,GAAAA,GACvD,CAACsoG,IAGGyb,EAAmBvI,EAAM9Q,aAC7B,YAAA1qG,OAASsoG,EAAS,CAAEp8F,KAAMkvG,EAAQ2I,iBAAkB/jH,MAAAA,GAAAA,GACpD,CAACsoG,IAGG0b,EAAuBxI,EAAM9Q,aACjC,YAAA1qG,OAASsoG,EAAS,CAAEp8F,KAAMkvG,EAAQ4I,qBAAsBhkH,MAAAA,GAAAA,GACxD,CAACsoG,IAGG8b,EAA+BnI,EACnCoJ,IAAWjB,6BACX,CAAE3qB,SAAU8rB,MAGdH,EAAY75G,SAAQ,YAClBgyG,EAAOkH,aAAe,YACpBnc,EAAS,CACPp8F,KAAMkvG,EAAQ0I,iBACdiB,SAAUxH,EAAOz9D,GACjB9/C,MAAAA,GAAAA,EAIJu9G,EAAO2G,qBAAuBjI,EAC5BoJ,IAAWnB,qBACX,CACEzqB,SAAU8rB,IACVhI,OAAAA,GAAAA,IAAAA,IAKAiI,EAA4BtI,EAAaoI,GAE/ClI,GAAuB,WACjBoI,KACFld,EAAS,CAAEp8F,KAAMkvG,EAAQyI,oBAAAA,GAE1B,CAACvb,EAAUzmB,IAEd9jF,OAAOuB,OAAOm6F,EAAU,CACtBkrB,iBAAAA,EACAb,iBAAAA,EACAC,iBAAAA,EACAC,qBAAAA,EACAI,6BAAAA,GAAAA,CC7LJ,IAAMqB,GAAsB,CAAC,EACvBC,GAAwB,CAAC,EACzBC,GAAiB,SAAC1hB,EAAOiE,EAAQ0d,GAAAA,OAAc3hB,CAAAA,EAC/C4hB,GAAoB,SAACzH,EAAKx5G,GAAAA,OAAUw5G,EAAI4C,SAAW,IACnD8E,GAAkB,SAAC1H,EAAKx5G,EAAOwU,GAAAA,MAAAA,IAChCA,EAAS,CAACA,EAAO0mC,GAAIl7C,GAAOxG,KAAK,KAAOwG,EAAAA,EACvCmhH,GAA4B,SAAAtnH,GAAAA,OAAKA,CAAAA,EAEvC,SAASunH,GAAczhB,GAAAA,IAAAA,EASjBA,EAPFugB,aAAAA,OAAAA,IAAAA,EAAeW,GAAAA,EAAAA,EAOblhB,EANFkX,cAAAA,OAAAA,IAAAA,EAAgBiK,GAAAA,EAAAA,EAMdnhB,EALF0hB,WAAAA,OAAAA,IAAAA,EAAaJ,GAAAA,EAAAA,EAKXthB,EAJF2hB,SAAAA,OAAAA,IAAAA,EAAWJ,GAAAA,EAAAA,EAITvhB,EAHF4hB,aAAAA,OAAAA,IAAAA,EAAeR,GAAAA,EAAAA,EAGbphB,EAFFge,mBAAAA,OAAAA,IAAAA,EAAqBwD,GAAAA,EAAAA,OAAAA,EAAAA,CAAAA,EAAAA,EAEnBxhB,EAAAA,CAAAA,eAAAA,gBAAAA,aAAAA,WAAAA,eAAAA,uBAAAA,CAIFugB,aAAAA,EACArJ,cAAAA,EACAwK,WAAAA,EACAC,SAAAA,EACAC,aAAAA,EACA5D,mBAAAA,GAAAA,CAmZJ,SAAS6D,GAAsBzG,EAASv9G,QAAAA,IAAAA,IAAAA,EAAO,OACzCikH,EAAmB,EACnBC,EAAgB,EAChBC,EAAmB,EACnBC,EAAoB,SAExB7G,EAAQp0G,SAAQ,YAAAk7G,IACCC,EAAeD,EAAxB9G,QAAAA,GAEN8G,EAAOE,UAAYvkH,EAEfskH,GAAcA,EAAWppH,OAAQ,OAM/B8oH,GAAsBM,EAAYtkH,GAJpCwkH,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GAEFN,EAAOG,cAAgBA,EACvBH,EAAOI,WAAaA,EACpBJ,EAAOK,cAAgBA,EACvBL,EAAOM,eAAiBA,CAAAA,MAExBN,EAAOG,cAAgBH,EAAO9K,SAC9B8K,EAAOI,WAAajjH,KAAK0S,IACvB1S,KAAKC,IAAI4iH,EAAO9K,SAAU8K,EAAOnkH,OACjCmkH,EAAO7K,UAET6K,EAAOK,cAAgBL,EAAO7K,SAC9B6K,EAAOM,eAAiBN,EAAOO,UAAYP,EAAOI,WAAa,EAE7DJ,EAAO1oF,YACT37B,GAAQqkH,EAAOI,WACfR,GAAoBI,EAAOG,cAC3BN,GAAiBG,EAAOI,WACxBN,GAAoBE,EAAOK,cAC3BN,GAAqBC,EAAOM,eAAAA,IAIzB,CAACV,EAAkBC,EAAeC,EAAkBC,EAAAA,CAG7D,SAASS,GAAAA,GAAAA,IACP9/G,EAAAA,EAAAA,KACAm5G,EAAAA,EAAAA,KACA4G,EAAAA,EAAAA,SACAC,EAAAA,EAAAA,SACA5J,EAAAA,EAAAA,OACA2I,EAAAA,EAAAA,SACAD,EAAAA,EAAAA,WACAmB,EAAAA,EAAAA,iBACA7B,EAAAA,EAAAA,YAmFAp+G,EAAKoE,SAAQ,SAAC87G,EAAaC,GAAAA,OA9ET,SAAZC,EAAaF,EAAaC,EAAUn2F,EAAW/X,EAAQouG,QAAAA,IAAnBr2F,IAAAA,EAAQ,OAE1C2vF,EAAWuG,EAEXvnE,EAAKomE,EAASmB,EAAaC,EAAUluG,GAEvCglG,EAAM+I,EAASrnE,GAAAA,GAGds+D,EAsCMA,EAAI4C,SAIb5C,EAAIqJ,gBAAgBl8G,SAAQ,SAAC9M,EAAGrB,GAAAA,OAAMmqH,EAAU9oH,EAAGrB,EAAG+zB,EAAQ,EAAGitF,EAAAA,SAAAA,IAzCjEA,EAAM,CACJt+D,GAAAA,EACAghE,SAAAA,EACAl8G,MAAO0iH,EACPn2F,MAAAA,EACAu2F,MAAO,CAAC,CAAC,KAKPA,MAAM36G,IAAMu0G,EAChBlD,EAAIsJ,MAAM3tG,OAASunG,EACnBlD,EAAIsJ,MAAMn8G,QAAU+1G,EACpBlD,EAAIsJ,MAAM,GAAG/D,aAAerC,EAG5BlD,EAAI1mG,OAAS,CAAC,EAGd8vG,EAAW/pH,KAAK2gH,GAEhB8I,EAASzpH,KAAK2gH,GAEd+I,EAASrnE,GAAMs+D,EAGfA,EAAIqJ,gBAAkBxB,EAAWoB,EAAaC,GAG1ClJ,EAAIqJ,gBAAiB,KACjBzG,EAAU,GAChB5C,EAAIqJ,gBAAgBl8G,SAAQ,SAAC9M,EAAGrB,GAAAA,OAC9BmqH,EAAU9oH,EAAGrB,EAAG+zB,EAAQ,EAAGitF,EAAK4C,EAAAA,IAGlC5C,EAAI4C,QAAUA,CAAAA,CAUdzD,EAAOU,WACTG,EAAI1mG,OAAO6lG,EAAOz9D,IAAMy9D,EAAOU,SAC7BoJ,EACAC,EACAlJ,EACAoJ,EACArgH,IAKJi3G,EAAI1mG,OAAO6lG,EAAOz9D,IAAMu8D,EACtB+K,EACAhJ,EAAI1mG,OAAO6lG,EAAOz9D,IAClB,CACEs+D,IAAAA,EACAb,OAAAA,EACA9jB,SAAU8rB,KAAAA,CAxEE,CA+EN8B,EAAaC,EAAU,OAAG,EAAWhH,EAAAA,GAAAA,CClkBnDlF,EAAQuM,cAAgB,gBACxBvM,EAAQwM,kBAAoB,oBAC5BxM,EAAQyM,sBAAwB,4BAEnBC,GAAc,SAAAt9D,GACzBA,EAAMu9D,8BAAgC,CAACC,IACvCx9D,EAAMy9D,0BAA4B,CAACC,IACnC19D,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAM04D,YAAYzlH,KAAKylH,IACvB14D,EAAM24D,WAAW1lH,KAAK0lH,GAAAA,EAGxB2E,GAAYjL,WAAa,cAEzB,IAAMmL,GAAuC,SAACzjB,EAAAA,GAAAA,IAAS9K,EAAAA,EAAAA,SAAAA,MAAe,CACpE8K,EACA,CACEiM,QAAS,SAAAjwG,GACPk5F,EAASouB,uBAAAA,EAEXr8F,MAAO,CACLqzF,OAAQ,WAEV6F,MAAO,8BAILwD,GAAmC,SAAC3jB,EAAAA,GAAAA,IAAS6Z,EAAAA,EAAAA,IAAAA,MAAU,CAC3D7Z,EACA,CACEiM,QAAS,WACP4N,EAAIwJ,mBAAAA,EAENp8F,MAAO,CACLqzF,OAAQ,WAEV6F,MAAO,yBAKX,SAASJ,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExBmF,SAAU,CAAC,GACRvc,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQuM,cAAe,OAAfA,EAAAA,CAAAA,EAErB1jB,EAAAA,CACHuc,SAAU/mB,EAASqrB,aAAatE,UAAY,CAAC,IAAD,GAI5CtY,EAAOh8F,OAASkvG,EAAQyM,sBAAuB,KACzC7nH,EAAUkoG,EAAVloG,MACAmnH,EAAa1tB,EAAb0tB,SAEFgB,EACJpqH,OAAO0uC,KAAK06E,GAAU7pH,SAAWS,OAAO0uC,KAAKw3D,EAAMuc,UAAUljH,OAAAA,QAAAA,IAEtC0C,EAAwBA,GAASmoH,EAE3C,KACP3H,EAAW,CAAC,EAAD,OAEjBziH,OAAO0uC,KAAK06E,GAAU57G,SAAQ,YAC5Bi1G,EAAS4H,IAAAA,CAAS,SAIfnkB,EAAAA,CACHuc,SAAAA,GAAAA,CAAAA,OAAAA,EAAAA,CAAAA,EAKCvc,EAAAA,CACHuc,SAAU,CAAC,GAAD,IAIVtY,EAAOh8F,OAASkvG,EAAQwM,kBAAmB,OACrC9nE,EAA2BooD,EAA3BpoD,GAAWuoE,EAAgBngB,EAAvBloG,MACNsoH,EAASrkB,EAAMuc,SAAS1gE,GAExByoE,OAAAA,IACGF,EAA8BA,GAAeC,EAAAA,IAEjDA,GAAUC,EAAAA,OAAAA,EAAAA,CAAAA,EAERtkB,EAAAA,CACHuc,SAAU,EAAVA,CAAAA,EACKvc,EAAMuc,UAAAA,EAAAA,CAAAA,EAAAA,EACR1gE,IAAAA,EAAK,MAGL,GAAIwoE,IAAWC,EAAa,OACJtkB,EAAMuc,SAA1B1gE,OAA0B0gE,EAA1B1gE,GAAAA,EAAAA,CAAAA,EAEJmkD,EAAAA,CACHuc,SAAU,EAAVA,EAAAA,CAHO1gE,GAAAA,IAAAA,KAAAA,CAAAA,OAMFmkD,CAAAA,CAAAA,CAKb,SAASif,GAAYzpB,GAAAA,IAEjBtyF,EAWEsyF,EAXFtyF,KACAm5G,EAUE7mB,EAVF6mB,KACA6G,EASE1tB,EATF0tB,SAAAA,EASE1tB,EARF8mB,kBAAAA,OAAAA,IAAAA,EAAoB,aAAA/gH,EAQlBi6F,EAPF+uB,qBAAAA,OAAAA,IAAAA,GAAAA,EAAAA,EAOE/uB,EANFgnB,cAAAA,OAAAA,IAAAA,GAAAA,EAAAA,EAMEhnB,EALFgvB,kBAAAA,OAAAA,IAAAA,GAAAA,EACApD,EAIE5rB,EAJF4rB,SACA1I,EAGEljB,EAHFkjB,QACS6D,EAEP/mB,EAFFwK,MAASuc,SACTlY,EACE7O,EADF6O,SAGFoU,EACEC,EACA,CAAC,YAAa,aAAc,kBAAmB,mBAC/C,mBAGI+L,EAAuBxL,EAAauL,GAEtCN,EAAoBQ,QACtB5qH,OAAO0uC,KAAK06E,GAAU7pH,QAAUS,OAAO0uC,KAAK+zE,GAAUljH,QAGpD6qH,GACEpqH,OAAO0uC,KAAK06E,GAAU9zF,MAAK,YAAAysB,OAAO0gE,EAAS1gE,EAAAA,MAC7CqoE,GAAAA,GAKJ/K,GAAuB,WACjBsL,KACFpgB,EAAS,CAAEp8F,KAAMkvG,EAAQuM,eAAAA,GAE1B,CAACrf,EAAUnhG,IAAAA,IAERygH,EAAoBpM,EAAM9Q,aAC9B,SAAC5qD,EAAI9/C,GACHsoG,EAAS,CAAEp8F,KAAMkvG,EAAQwM,kBAAmB9nE,GAAAA,EAAI9/C,MAAAA,GAAAA,GAElD,CAACsoG,IAGGuf,EAAwBrM,EAAM9Q,aAClC,YAAA1qG,OAASsoG,EAAS,CAAEp8F,KAAMkvG,EAAQyM,sBAAuB7nH,MAAAA,GAAAA,GACzD,CAACsoG,IAGGoY,EAAelF,EAAMxQ,SAAQ,kBAC7Bwd,EACKnI,EAAWC,EAAM,CAAEC,kBAAAA,EAAmBC,SAAAA,EAAUC,cAAAA,IAGlDH,CAAAA,GACN,CAACkI,EAAsBlI,EAAMC,EAAmBC,EAAUC,IAEvDmI,EAAgBpN,EAAMxQ,SAAQ,kBAmCtC,SAA2BwV,GAAAA,IACrBqI,EAAW,SAEf9qH,OAAO0uC,KAAK+zE,GAAUj1G,SAAQ,YAAAu0C,IACtBgpE,EAAUhpE,EAAGkD,MAAM,KACzB6lE,EAAWjlH,KAAKC,IAAIglH,EAAUC,EAAQxrH,OAAAA,IAGjCurH,CAAAA,CART,CAnC8DrI,EAAAA,GAAW,CACrEA,IAGI+E,EAAcrI,EAAazjB,GAE3BsuB,EAAgC9L,EACpCoJ,IAAW0C,8BACX,CAAEtuB,SAAU8rB,MAGdxnH,OAAOuB,OAAOm6F,EAAU,CACtBsvB,gBAAiBzI,EACjBI,aAAAA,EACAJ,KAAMI,EACNkI,cAAAA,EACAT,kBAAAA,EACAP,kBAAAA,EACAC,sBAAAA,EACAE,8BAAAA,GAAAA,CAIJ,SAAS5E,GAAW/E,EAAAA,GAAAA,IAAmBiH,EAAAA,EAAZ5rB,SAAY4rB,SAAY5rB,EAAAA,EAAAA,SACjD2kB,EAAIwJ,kBAAoB,YAAA74D,OAAO0qC,EAASmuB,kBAAkBxJ,EAAIt+D,GAAIiP,EAAAA,EAElEqvD,EAAI6J,0BAA4BhM,EAC9BoJ,IAAW4C,0BACX,CACExuB,SAAAA,EACA2kB,IAAAA,GAAAA,CAAAA,ICtNOpoF,GAAO,SAACsqF,EAAM0I,EAAKC,GAAAA,OACvB3I,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,IACRopE,EAAW9K,EAAI1mG,OAAOooC,GAAAA,OACrB9gD,OAAOkqH,GACXnzG,cACA9X,SAASe,OAAOiqH,GAAalzG,cAAAA,GAAAA,GAAAA,EAMtCigB,GAAKqrF,WAAa,YAAAvzD,OAAQA,CAAAA,EAEnB,IAAMq7D,GAAY,SAAC7I,EAAM0I,EAAKC,GAAAA,OAC5B3I,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,IACRopE,EAAW9K,EAAI1mG,OAAOooC,GAAAA,YAAAA,IACrBopE,GACHlqH,OAAOkqH,GAAUnzG,gBAAkB/W,OAAOiqH,GAAalzG,aAAAA,GAAAA,GAAAA,EAMjEozG,GAAU9H,WAAa,YAAAvzD,OAAQA,CAAAA,EAExB,IAAMs7D,GAAgB,SAAC9I,EAAM0I,EAAKC,GAAAA,OAChC3I,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,IACRopE,EAAW9K,EAAI1mG,OAAOooC,GAAAA,YAAAA,IACrBopE,GACHlqH,OAAOkqH,KAAclqH,OAAOiqH,EAAAA,GAAAA,GAAAA,EAMtCG,GAAc/H,WAAa,YAAAvzD,OAAQA,CAAAA,EAE5B,IAAM7vD,GAAW,SAACqiH,EAAM0I,EAAKC,GAAAA,OAC3B3I,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,OACGs+D,EAAI1mG,OAAOooC,GACZ7hD,SAASgrH,EAAAA,GAAAA,GAAAA,EAK/BhrH,GAASojH,WAAa,YAAAvzD,OAAQA,IAAQA,EAAIxwD,MAAAA,EAEnC,IAAM+rH,GAAc,SAAC/I,EAAM0I,EAAKC,GAAAA,OAC9B3I,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,IACRopE,EAAW9K,EAAI1mG,OAAOooC,GAAAA,OAE1BopE,GACAA,EAAS5rH,QACT2rH,EAAYlzF,OAAM,YAAA+3B,OAAOo7D,EAASjrH,SAAS6vD,EAAAA,GAAAA,GAAAA,GAAAA,EAMnDu7D,GAAYhI,WAAa,YAAAvzD,OAAQA,IAAQA,EAAIxwD,MAAAA,EAEtC,IAAMgsH,GAAe,SAAChJ,EAAM0I,EAAKC,GAAAA,OAC/B3I,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,IACRopE,EAAW9K,EAAI1mG,OAAOooC,GAAAA,OAE1BopE,GACAA,EAAS5rH,QACT2rH,EAAY51F,MAAK,YAAAy6B,OAAOo7D,EAASjrH,SAAS6vD,EAAAA,GAAAA,GAAAA,GAAAA,EAMlDw7D,GAAajI,WAAa,YAAAvzD,OAAQA,IAAQA,EAAIxwD,MAAAA,EAEvC,IAAMisH,GAAgB,SAACjJ,EAAM0I,EAAKC,GAAAA,OAChC3I,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,IACRopE,EAAW9K,EAAI1mG,OAAOooC,GAAAA,OACrBmpE,EAAYhrH,SAASirH,EAAAA,GAAAA,GAAAA,EAKlCK,GAAclI,WAAa,YAAAvzD,OAAQA,IAAQA,EAAIxwD,MAAAA,EAExC,IAAMksH,GAAQ,SAAClJ,EAAM0I,EAAKC,GAAAA,OACxB3I,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,OACGs+D,EAAI1mG,OAAOooC,KACRmpE,CAAAA,GAAAA,GAAAA,EAK1BO,GAAMnI,WAAa,YAAAvzD,YAAAA,IAAcA,CAAAA,EAE1B,IAAM27D,GAAS,SAACnJ,EAAM0I,EAAKC,GAAAA,OACzB3I,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,OACGs+D,EAAI1mG,OAAOooC,IAETmpE,CAAAA,GAAAA,GAAAA,EAKzBQ,GAAOpI,WAAa,YAAAvzD,OAAc,MAAPA,CAAAA,EAEpB,IAAM47D,GAAU,SAACpJ,EAAM0I,EAAKC,GAAAA,IAAAA,EAChBA,GAAe,GAA3B3yG,EAAAA,EAAAA,GAAKzS,EAAAA,EAAAA,GAAAA,IAEVyS,EAAqB,iBAARA,EAAmBA,GAAAA,MAChCzS,EAAqB,iBAARA,EAAmBA,EAAMmkB,KAEvB,KACP2+C,EAAOrwD,EACbA,EAAMzS,EACNA,EAAM8iE,CAAAA,CAAAA,OAGD25C,EAAKvmG,QAAO,YAAAqkG,OACV4K,EAAI31F,MAAK,YAAAysB,IACRopE,EAAW9K,EAAI1mG,OAAOooC,GAAAA,OACrBopE,GAAY5yG,GAAO4yG,GAAYrlH,CAAAA,GAAAA,GAAAA,EAK5C6lH,GAAQrI,WAAa,YAAAvzD,OAClBA,GAA0B,iBAAXA,EAAI,IAAqC,iBAAXA,EAAI,0BAAAlvD,UAAAA,KAAAo3B,KAAAA,GAAAmzF,UAAAA,GAAAC,cAAAA,GAAAnrH,SAAAA,GAAAorH,YAAAA,GAAAC,aAAAA,GAAAC,cAAAA,GAAAC,MAAAA,GAAAC,OAAAA,GAAAC,QAAAA,KCtHpDtO,EAAQuO,aAAe,eACvBvO,EAAQwO,UAAY,YACpBxO,EAAQyO,cAAgB,oBAEXC,GAAa,SAAAt/D,GACxBA,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAM04D,YAAYzlH,KAAKylH,GAAAA,EAKzB,SAASoB,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExB0O,QAAS,IACN9lB,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQuO,aAAc,OAAdA,EAAAA,CAAAA,EAErB1lB,EAAAA,CACH8lB,QAAStwB,EAASqrB,aAAaiF,SAAW,QAI1C7hB,EAAOh8F,OAASkvG,EAAQwO,UAAW,KAC7B7E,EAA0B7c,EAA1B6c,SAAUkE,EAAgB/gB,EAAhB+gB,YACV7J,EAA6C3lB,EAA7C2lB,WAAyB8B,EAAoBznB,EAAjC0nB,YAEd5D,EAAS6B,EAAWn8G,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOilE,CAAAA,IAAAA,IAExCxH,EAAAA,MACG,IAAI55G,MAAM,iDACmCohH,GAAAA,IAI/CiF,EAAe/I,EACnB1D,EAAOxjG,OACPmnG,GAAmB,CAAC,EACpBC,IAGI8I,EAAiBhmB,EAAM8lB,QAAQ9mH,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOilE,CAAAA,IAElDmF,EAAYjN,EAChBgM,EACAgB,GAAkBA,EAAejqH,OAAAA,OAI/BohH,EAAuB4I,EAAa3I,WAAY6I,EAAW3M,GAAAA,EAAAA,CAAAA,EAExDtZ,EAAAA,CACH8lB,QAAS9lB,EAAM8lB,QAAQhwG,QAAO,YAAAtb,OAAKA,EAAEqhD,KAAOilE,CAAAA,MAAAA,EAAAA,CAAAA,EAMzC9gB,EAFHgmB,EAAAA,CAGAF,QAAS9lB,EAAM8lB,QAAQh9G,KAAI,YAAAtO,OACrBA,EAAEqhD,KAAOilE,EACJ,CAAEjlE,GAAIilE,EAAU/kH,MAAOkqH,GAEzBzrH,CAAAA,KAAAA,CAOXsrH,QAAS,GAATA,OAAa9lB,EAAM8lB,QAAS,EAAEjqE,GAAIilE,EAAU/kH,MAAOkqH,MAAAA,CAAAA,GAInDhiB,EAAOh8F,OAASkvG,EAAQyO,cAAe,KACjCE,EAAY7hB,EAAZ6hB,QACA3K,EAA6C3lB,EAA7C2lB,WAAyB8B,EAAoBznB,EAAjC0nB,YAAAA,OAAAA,EAAAA,CAAAA,EAGfld,EAAAA,CAEH8lB,QAAS9M,EAAiB8M,EAAS9lB,EAAM8lB,SAAShwG,QAAO,YAAAA,IACjDwjG,EAAS6B,EAAWn8G,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAO/lC,EAAO+lC,EAAAA,IAAAA,OAQlDshE,EAPmBH,EACnB1D,EAAOxjG,OACPmnG,GAAmB,CAAC,EACpBC,IAIoCE,WAAYtnG,EAAO/Z,MAAOu9G,EAAAA,KAAAA,CAAAA,CAUxE,SAAS2F,GAAYzpB,GAAAA,IAEjBtyF,EAYEsyF,EAZFtyF,KACAm5G,EAWE7mB,EAXF6mB,KACA4G,EAUEztB,EAVFytB,SACAC,EASE1tB,EATF0tB,SACA/H,EAQE3lB,EARF2lB,WACa8B,EAOXznB,EAPF0nB,YACAgJ,EAME1wB,EANF0wB,cAAAA,EAME1wB,EALF2wB,iBAAAA,OAAAA,IAAAA,GAAAA,EACAC,EAIE5wB,EAJF4wB,eACSN,EAGPtwB,EAHFwK,MAAS8lB,QACTzhB,EAEE7O,EAFF6O,SAAAA,EAEE7O,EADF6wB,iBAAAA,OAAAA,IAAAA,GAAAA,EAGIV,EAAYpO,EAAM9Q,aACtB,SAACqa,EAAUkE,GACT3gB,EAAS,CAAEp8F,KAAMkvG,EAAQwO,UAAW7E,SAAAA,EAAUkE,YAAAA,GAAAA,GAEhD,CAAC3gB,IAGGuhB,EAAgBrO,EAAM9Q,aAC1B,YACEpC,EAAS,CACPp8F,KAAMkvG,EAAQyO,cACdE,QAAAA,GAAAA,GAGJ,CAACzhB,IAGH8W,EAAW7zG,SAAQ,YAAAgyG,IAEfz9D,EAIEy9D,EAJFz9D,GACAm+D,EAGEV,EAHFU,SACkBsM,EAEhBhN,EAFF6M,iBACgBI,EACdjN,EADF8M,eAIF9M,EAAOkN,UAAYxM,EACfiC,GAAAA,IACEsK,QAAAA,GAAwCt9G,IACxCm9G,QAAAA,GAAkCn9G,GAGpCgzG,EAAgBqK,EAAwBH,GAAAA,GAG5C7M,EAAOqM,UAAY,YAAA97D,OAAO87D,EAAUrM,EAAOz9D,GAAIgO,EAAAA,EAAAA,IAIzC48D,EAAQX,EAAQ9mH,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOA,CAAAA,IACzCy9D,EAAO0L,YAAcyB,GAASA,EAAM1qH,KAAAA,IAAAA,IAAAA,EAOlCw7G,EAAMxQ,SAAQ,cACZmf,IAAkBJ,EAAQzsH,OAAQ,MAC7B,CAACgjH,EAAM4G,EAAUC,GAAAA,IAGpBwD,EAAmB,GACnBC,EAAmB,CAAC,EAAD,MAiElB,CA9DY,SAAbC,EAAcvK,EAAMnvF,QAAAA,IAAAA,IAAAA,EAAQ,OAC5B25F,EAAexK,EAAAA,OAEnBwK,EAAef,EAAQriG,QACrB,SAACqjG,EAAAA,GAAAA,IAAqBhG,EAAAA,EAAJjlE,GAAqBmpE,EAAAA,EAAPjpH,MAExBu9G,EAAS6B,EAAWn8G,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOilE,CAAAA,IAAAA,IAExCxH,EAAAA,OACIwN,EAGK,IAAV55F,IACFosF,EAAOyN,gBAAkBD,GAAAA,IAGrBf,EAAe/I,EACnB1D,EAAOxjG,OACPmnG,GAAmB,CAAC,EACpBC,IAAAA,OAGG6I,GASLzM,EAAOuN,aAAed,EACpBe,EACA,CAAChG,GACDkE,GAGK1L,EAAOuN,eAdZ3qE,QAAQ3b,KAAK,kEACuD+4E,EAAOz9D,GAAAA,KAEpEirE,EAAAA,GAaXzK,IAOW/0G,SAAQ,YACnBo/G,EAAiBltH,KAAK2gH,GACtBwM,EAAiBxM,EAAIt+D,IAAMs+D,EACtBA,EAAI4C,UAIT5C,EAAI4C,QACF5C,EAAI4C,SAAW5C,EAAI4C,QAAQ1jH,OAAS,EAChCutH,EAAWzM,EAAI4C,QAAS7vF,EAAQ,GAChCitF,EAAI4C,QAAAA,IAGL8J,CAAAA,CA3DU,CA8DAxK,GAAOqK,EAAkBC,EAAAA,GAC3C,CACDT,EACAJ,EACAzJ,EACA4G,EACAC,EACA/H,EACA8B,IAlFA4J,EAAAA,EAAAA,GACAH,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GAmFFpP,EAAMxQ,SAAQ,WAGeoU,EAAWrlG,QACpC,YAAAwjG,OAAWwM,EAAQ9mH,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOy9D,EAAOz9D,EAAAA,GAAAA,IAK5Bv0C,SAAQ,YACzBgyG,EAAOyN,gBAAkBF,EACzBvN,EAAOuN,aAAeA,CAAAA,GAAAA,GAEvB,CAACA,EAAcf,EAAS3K,IAAAA,IAErB6L,EAAsB/N,EAAaoN,GAEzClN,GAAuB,WACjB6N,KACF3iB,EAAS,CAAEp8F,KAAMkvG,EAAQuO,cAAAA,GAE1B,CAACrhB,EAAU6hB,EAAgB,KAAOhjH,IAErCpJ,OAAOuB,OAAOm6F,EAAU,CACtBuxB,gBAAiB1K,EACjB4K,oBAAqBhE,EACrBiE,oBAAqBhE,EACrB2D,aAAAA,EACAH,iBAAAA,EACAC,iBAAAA,EACAtK,KAAMwK,EACN5D,SAAUyD,EACVxD,SAAUyD,EACVhB,UAAAA,EACAC,cAAAA,GAAAA,CAjRJC,GAAWjN,WAAa,aCTxBzB,EAAQgQ,kBAAoB,oBAC5BhQ,EAAQiQ,gBAAkB,sBAEbC,GAAkB,SAAA9gE,GAC7BA,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAM04D,YAAYzlH,KAAKylH,GAAAA,EAKzB,SAASoB,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQgQ,kBAAmB,OAAnBA,EAAAA,CAAAA,EAErBnnB,EAAAA,CACHsnB,aAAc9xB,EAASqrB,aAAayG,mBAAgB,IAAAr+G,GAIpDg7F,EAAOh8F,OAASkvG,EAAQiQ,gBAAiB,KACnCpC,EAAgB/gB,EAAhB+gB,YACA/H,EAAoBznB,EAApBynB,gBAEF8I,EAAe/I,EACnBxnB,EAAS8xB,aACTrK,GAAmB,CAAC,EACpBC,IAGI+I,EAAYjN,EAAiBgM,EAAahlB,EAAMsnB,cAAAA,OAGlDnK,EAAuB4I,EAAa3I,WAAY6I,IACIjmB,EAA9CsnB,aAAAA,EAA8CtnB,EAAAA,CAAAA,kBAAAA,EAAAA,CAAAA,EAKnDA,EAAAA,CACHsnB,aAAcrB,GAAAA,CAAAA,CAKpB,SAAShH,GAAYzpB,GAAAA,IAEjBtyF,EAYEsyF,EAZFtyF,KACAm5G,EAWE7mB,EAXF6mB,KACA4G,EAUEztB,EAVFytB,SACAC,EASE1tB,EATF0tB,SACA/H,EAQE3lB,EARF2lB,WACa8B,EAOXznB,EAPF0nB,YACAoK,EAME9xB,EANF8xB,aACAC,EAKE/xB,EALF+xB,mBACuBC,EAIrBhyB,EAJFwK,MAASsnB,aACTjjB,EAGE7O,EAHF6O,SAAAA,EAGE7O,EAFFiyB,sBAAAA,OAAAA,IAAAA,GAAAA,EACAC,EACElyB,EADFkyB,oBAGIN,EAAkB7P,EAAM9Q,aAC5B,YACEpC,EAAS,CAAEp8F,KAAMkvG,EAAQiQ,gBAAiBpC,YAAAA,GAAAA,GAE5C,CAAC3gB,IAAAA,EAYCkT,EAAMxQ,SAAQ,cACZwgB,QAAAA,IAA6BC,EAAAA,MACxB,CAACnL,EAAM4G,EAAUC,GAAAA,IAGpBwD,EAAmB,GACnBC,EAAmB,CAAC,EAEpBZ,EAAe/I,EACnBsK,EACArK,GAAmB,CAAC,EACpBC,IAAAA,IAGG6I,EAAAA,OACH7pE,QAAQ3b,KAAK,iDACN87E,EAGTlB,EAAW7zG,SAAQ,YAAAgyG,IACYqO,EAA8BrO,EAAnDoO,oBAERpO,EAAOkN,UAAYvK,GAAAA,IACjB0L,QAAAA,GAA6C1+G,IAC7Cy+G,QAAAA,GAAuCz+G,EACvC,QAIE2+G,EAAoBzM,EAAWrlG,QAAO,YAAAhI,OAAAA,IAAKA,EAAE04G,SAAAA,IAAAA,MAuB5C,CApBY,SAAbI,EAAaC,GAAAA,OACjBA,EAAed,EACbc,EACAe,EAAkB9+G,KAAI,YAAAtO,OAAKA,EAAEqhD,EAAAA,IAC7B2rE,IAGWlgH,SAAQ,YACnBo/G,EAAiBltH,KAAK2gH,GACtBwM,EAAiBxM,EAAIt+D,IAAMs+D,EAE3BA,EAAI4C,QACF5C,EAAI4C,SAAW5C,EAAI4C,QAAQ1jH,OACvButH,EAAWzM,EAAI4C,SACf5C,EAAI4C,OAAAA,IAGL8J,CAAAA,CAjBU,CAoBAxK,GAAOqK,EAAkBC,EAAAA,GAC3C,CACDY,EACAC,EACAF,EACArK,EACA9B,EACAkB,EACA4G,EACAC,EACAwE,IAjEAG,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GAkEIC,EAA2B/O,EAAawO,GAE9CtO,GAAuB,WACjB6O,KACF3jB,EAAS,CAAEp8F,KAAMkvG,EAAQgQ,mBAAAA,GAE1B,CAAC9iB,EAAUkjB,EAAqB,KAAOrkH,IAE1CpJ,OAAOuB,OAAOm6F,EAAU,CACtByyB,sBAAuB5L,EACvB6L,0BAA2BjF,EAC3BkF,0BAA2BjF,EAC3B2E,mBAAAA,EACAC,uBAAAA,EACAC,uBAAAA,EACA1L,KAAMwL,EACN5E,SAAU6E,EACV5E,SAAU6E,EACVX,gBAAAA,EACAM,oBAAAA,GAAAA,CCjLG,SAASU,GAAI30G,EAAQ40G,GAAAA,OAGnBA,EAAiB5kG,QACtB,SAAC2kG,EAAK/rH,GAAAA,OAAS+rH,GAAuB,iBAAT/rH,EAAoBA,EAAO,KACxD,GDqBJgrH,GAAgBzO,WAAa,wCAAAj+G,UAAAA,KAAAytH,IAAAA,GAAA/1G,ICjBtB,SAAaoB,GAAAA,IACdpB,EAAMoB,EAAO,IAAM,SAEvBA,EAAOnM,SAAQ,YACQ,iBAAVvL,IACTsW,EAAM1S,KAAK0S,IAAIA,EAAKtW,GAAAA,IAIjBsW,CAAAA,EAAAA,IAGF,SAAaoB,GAAAA,IACd7T,EAAM6T,EAAO,IAAM,SAEvBA,EAAOnM,SAAQ,YACQ,iBAAVvL,IACT6D,EAAMD,KAAKC,IAAIA,EAAK7D,GAAAA,IAIjB6D,CAAAA,EAAAA,OAGF,SAAgB6T,GAAAA,IACjBpB,EAAMoB,EAAO,IAAM,EACnB7T,EAAM6T,EAAO,IAAM,SAEvBA,EAAOnM,SAAQ,YACQ,iBAAVvL,IACTsW,EAAM1S,KAAK0S,IAAIA,EAAKtW,GACpB6D,EAAMD,KAAKC,IAAIA,EAAK7D,GAAAA,IAIdsW,EAAAA,KAAQzS,CAAAA,EAAAA,QAGb,SAAiB6T,GAAAA,OACf20G,GAAI,EAAM30G,GAAUA,EAAOpa,MAAAA,EAAAA,OAG7B,SAAgBoa,GAAAA,IAChBA,EAAOpa,OAAQ,OACX,SAGHioD,EAAM3hD,KAAKi+B,MAAMnqB,EAAOpa,OAAS,GACjCivH,EAAO,UAAI70G,GAAQqvC,MAAK,SAACl7C,EAAGnN,GAAAA,OAAMmN,EAAInN,CAAAA,IAAAA,OACrCgZ,EAAOpa,OAAS,GAAM,EAAIivH,EAAKhnE,IAAQgnE,EAAKhnE,EAAM,GAAKgnE,EAAKhnE,IAAQ,GAAAinE,OAGtE,SAAgB90G,GAAAA,OACdha,MAAMoE,KAAK,IAAIg5E,IAAIpjE,GAAQA,SAAAA,EAAAA,YAG7B,SAAqBA,GAAAA,OACnB,IAAIojE,IAAIpjE,GAAQ2Q,IAAAA,EAAAA,MAGlB,SAAe3Q,GAAAA,OACbA,EAAOpa,MAAAA,ICxDVmvH,GAAa,GACbC,GAAc,CAAC,EAGrBtR,EAAQuR,aAAe,eACvBvR,EAAQwR,WAAa,aACrBxR,EAAQyR,cAAgB,oBAEXC,GAAa,SAAAtiE,GACxBA,EAAMuiE,sBAAwB,CAACC,IAC/BxiE,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAMu4D,mBAAmBtlH,MAAK,SAAC6rG,EAAAA,GAAAA,IAAQ7P,EAAAA,EAAAA,SAAAA,MAAAA,GAAAA,OAClC6P,EAAAA,CACH7P,EAASwK,MAAMgpB,SAAAA,IAEjBziE,EAAMs4D,eAAerlH,KAAKqlH,IAC1Bt4D,EAAM04D,YAAYzlH,KAAKylH,IACvB14D,EAAM24D,WAAW1lH,KAAK0lH,GAAAA,EAGxB2J,GAAWjQ,WAAa,aAExB,IAAMmQ,GAA+B,SAACzoB,EAAAA,GAAAA,IAASkiB,EAAAA,EAAAA,OAAAA,MAAa,CAC1DliB,EACA,CACEiM,QAASiW,EAAOyG,WACZ,SAAA3sH,GACEA,EAAE0tF,UACFw4B,EAAOoG,eAAAA,OAAAA,EAGbrhG,MAAO,CACLqzF,OAAQ4H,EAAOyG,WAAa,kBAE9BxI,MAAO,oBAKX,SAASJ,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExB4R,QAAS,IACNhpB,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQuR,aAAc,OAAdA,EAAAA,CAAAA,EAErB1oB,EAAAA,CACHgpB,QAASxzB,EAASqrB,aAAamI,SAAW,QAI1C/kB,EAAOh8F,OAASkvG,EAAQwR,WAAY,OAAZA,EAAAA,CAAAA,EAGrB3oB,EAAAA,CACHgpB,QAHgB/kB,EAAVloG,QAAAA,GAONkoG,EAAOh8F,OAASkvG,EAAQyR,cAAe,KACjC9H,EAAgC7c,EAAhC6c,SAAiB6H,EAAe1kB,EAAtBloG,MAEZmtH,OAAAA,IACGP,EACHA,GACC3oB,EAAMgpB,QAAQhvH,SAAS8mH,GAAAA,OAAAA,EAAAA,CAAAA,EAIvB9gB,EAFHkpB,EAAAA,CAGAF,QAAS,GAATA,OAAahpB,EAAMgpB,QAAS,CAAAlI,KAAAA,CAM9BkI,QAAShpB,EAAMgpB,QAAQlzG,QAAO,YAAAtb,OAAKA,IAAMsmH,CAAAA,KAAAA,CAAAA,CAK/C,SAASjC,GACPjhC,EAAAA,GAAAA,IAGaorC,EAAAA,EADXxzB,SACEwK,MAASgpB,QAOPG,EAAiBH,EACpBlgH,KAAI,YAAA/L,OAAK6gF,EAAQ5+E,MAAK,YAAAghF,OAAOA,EAAInkC,KAAO9+C,CAAAA,GAAAA,IACxC+Y,OAAO4uG,SAEJ0E,EAAoBxrC,EAAQ9nE,QAAO,YAAAkqE,OAAQgpC,EAAQhvH,SAASgmF,EAAInkC,GAAAA,IAAAA,OAEtE+hC,EAAAA,GAAAA,OAAcurC,EAAmBC,IAEzB9hH,SAAQ,YACdgyG,EAAO+P,UAAYL,EAAQhvH,SAASs/G,EAAOz9D,IAC3Cy9D,EAAOgQ,aAAeN,EAAQvhH,QAAQ6xG,EAAOz9D,GAAAA,IAGxC+hC,CAAAA,CAGT,IAAM2rC,GAA0B,CAAC,EAEjC,SAAStK,GAAYzpB,GAAAA,IAEjBtyF,EAgBEsyF,EAhBFtyF,KACAm5G,EAeE7mB,EAfF6mB,KACA4G,EAcEztB,EAdFytB,SACAC,EAaE1tB,EAbF0tB,SACA/H,EAYE3lB,EAZF2lB,WACAgG,EAWE3rB,EAXF2rB,YAAAA,EAWE3rB,EAVFg0B,UAAAA,OAAAA,IAAAA,EAAYC,GAAAA,EACZC,EASEl0B,EATFk0B,cAAAA,EASEl0B,EARFm0B,aAAcC,OAAAA,IAAAA,EAAmBL,GAAAA,EACjC7Q,EAOEljB,EAPFkjB,QACSsQ,EAMPxzB,EANFwK,MAASgpB,QACT3kB,EAKE7O,EALF6O,SAAAA,EAKE7O,EAJFq0B,iBAAAA,OAAAA,IAAAA,GAAAA,EACAC,EAGEt0B,EAHFs0B,eACAC,EAEEv0B,EAFFu0B,kBACA3I,EACE5rB,EADF4rB,SAGF3I,EAAkBC,EAAS,CAAC,iBAAkB,cAAe,kBAEvD4I,EAAcrI,EAAazjB,GAEjC2lB,EAAW7zG,SAAQ,YAAAgyG,IAEfU,EAGEV,EAHFU,SACgBgQ,EAEd1Q,EAFF2Q,eACgBC,EACd5Q,EADFwQ,eAGFxQ,EAAO2P,WAAajP,EAChBiC,EACE3C,EAAO2P,YAAAA,IACPiB,QAAAA,GAAwCjhH,IACxC6gH,QAAAA,GAAkC7gH,GAGpCgzG,EACE3C,EAAO2P,WACPe,EACAD,GAAAA,GAIFzQ,EAAO2P,aACT3P,EAAOsP,cAAgB,kBAAMpzB,EAASozB,cAActP,EAAOz9D,GAAAA,GAG7Dy9D,EAAO6Q,WAAa7Q,EAAO6Q,YAAc7Q,EAAO7B,IAAAA,IAAAA,IAG5CmR,EAAgBrR,EAAM9Q,aAC1B,SAACqa,EAAU/kH,GACTsoG,EAAS,CAAEp8F,KAAMkvG,EAAQyR,cAAe9H,SAAAA,EAAU/kH,MAAAA,GAAAA,GAEpD,CAACsoG,IAGGskB,EAAapR,EAAM9Q,aACvB,YACEpC,EAAS,CAAEp8F,KAAMkvG,EAAQwR,WAAY5sH,MAAAA,GAAAA,GAEvC,CAACsoG,IAGH8c,EAAY75G,SAAQ,YAClBk7G,EAAOsG,sBAAwB9Q,EAC7BoJ,IAAW0H,sBACX,CAAEtzB,SAAU8rB,IAAekB,OAAAA,GAAAA,IAAAA,IAAAA,EAY3BjL,EAAMxQ,SAAQ,cACZ2iB,IAAkBV,EAAQ3vH,OAAQ,MAC7B,CACLgjH,EACA4G,EACAC,EACAsF,GACAC,GACAxF,EACAC,GAAAA,IAKEkH,EAAkBpB,EAAQlzG,QAAO,YAAA/Y,OACrCo+G,EAAWn8G,MAAK,YAAAghF,OAAOA,EAAInkC,KAAO9+C,CAAAA,GAAAA,IAiEhCstH,EAAkB,GAChBC,EAAkB,CAAC,EACnBC,EAAsB,GACtBC,EAAsB,CAAC,EACvBC,EAAqB,GACrBC,EAAqB,CAAC,EA6DtBC,EA1DqB,SAArBC,EAAsBvO,EAAMnvF,EAAW29F,GAAAA,QAAAA,IAAX39F,IAAAA,EAAQ,GAEpCA,IAAUk9F,EAAgB/wH,OAAQ,OAC7BgjH,EAAKvzG,KAAI,SAACqxG,GAAAA,OAAAA,EAAAA,CAAAA,EAAcA,EAAAA,CAAKjtF,MAAAA,GAAAA,IAAAA,IAGhC4zF,EAAWsJ,EAAgBl9F,GAG7B49F,EAAetB,EAAUnN,EAAMyE,GAAAA,OAGLhnH,OAAOixH,QAAQD,GAAchiH,KACzD,WAA4BnI,GAAAA,IAA1BqqH,EAAAA,EAAAA,GAAYL,EAAAA,EAAAA,GACR9uE,EAAQilE,EAAAA,IAAYkK,EAIlBjO,EAAU6N,EAAmBD,EAAaz9F,EAAQ,EAHxD2uB,EAAKgvE,EAAcA,EAAAA,IAAYhvE,EAAOA,GAMhCovE,EAAW/9F,EACb6sF,EAAU4Q,EAAa,YACvBA,EAEEl3G,EA7FkB,SAACw3G,EAAUN,EAAaz9F,GAAAA,IAC9CzZ,EAAS,CAAC,EAAD,OAEf0nG,EAAW7zG,SAAQ,YAAAgyG,GAEb8Q,EAAgBpwH,SAASs/G,EAAOz9D,IAClCpoC,EAAO6lG,EAAOz9D,IAAM8uE,EAAY,GAC5BA,EAAY,GAAGl3G,OAAO6lG,EAAOz9D,IAC7B,cAKFqvE,EAC0B,mBAArB5R,EAAO6R,UACV7R,EAAO6R,UACPvB,EAAiBtQ,EAAO6R,YACxBxB,GAAarQ,EAAO6R,WAAAA,GAEtBD,EAAa,KAETE,EAAgBT,EAAY7hH,KAAI,YAAAqxG,OAAOA,EAAI1mG,OAAO6lG,EAAOz9D,GAAAA,IAGzDwvE,EAAaJ,EAASniH,KAAI,YAAAqxG,IAC1BmR,EAAcnR,EAAI1mG,OAAO6lG,EAAOz9D,IAAAA,IAE/B3uB,GAASosF,EAAOiS,eAAgB,KAC7BC,EAC6B,mBAA1BlS,EAAOiS,eACVjS,EAAOiS,eACP3B,EAAiBtQ,EAAOiS,iBACxB5B,GAAarQ,EAAOiS,gBAAAA,IAErBC,EAAAA,MACHtvE,QAAQ/Z,KAAK,CAAEm3E,OAAAA,IACT,IAAI55G,MAAM,6EAKlB4rH,EAAcE,EAAiBF,EAAanR,EAAKb,EAAAA,CAAAA,OAE5CgS,CAAAA,IAGT73G,EAAO6lG,EAAOz9D,IAAMqvE,EAAYG,EAAYD,EAAAA,KACvC,IAAI9R,EAAO6R,UAAW,MAC3BjvE,QAAQ/Z,KAAK,CAAEm3E,OAAAA,IACT,IAAI55G,MAAM,wEAIhB+T,EAAO6lG,EAAOz9D,IAAM,UAIjBpoC,CAAAA,CAzDqB,CA6Faw3G,EAAUN,EAAaz9F,GAEtDitF,EAAM,CACVt+D,GAAAA,EACAwtE,WAAW,EACXoC,UAAW3K,EACXkK,WAAAA,EACAv3G,OAAAA,EACAspG,QAAAA,EACAkO,SAAAA,EACA/9F,MAAAA,EACAvsB,MAAAA,GAAAA,OAGFo8G,EAAQz1G,SAAQ,YACd+iH,EAAgB7wH,KAAKkyH,GACrBpB,EAAgBoB,EAAO7vE,IAAM6vE,EACzBA,EAAOrC,WACTkB,EAAoB/wH,KAAKkyH,GACzBlB,EAAoBkB,EAAO7vE,IAAM6vE,IAEjCjB,EAAmBjxH,KAAKkyH,GACxBhB,EAAmBgB,EAAO7vE,IAAM6vE,EAAAA,IAI7BvR,CAAAA,GAAAA,CAnDc,CA0DYkC,GAAAA,OAEvCsO,EAAYrjH,SAAQ,YAClB+iH,EAAgB7wH,KAAKkyH,GACrBpB,EAAgBoB,EAAO7vE,IAAM6vE,EACzBA,EAAOrC,WACTkB,EAAoB/wH,KAAKkyH,GACzBlB,EAAoBkB,EAAO7vE,IAAM6vE,IAEjCjB,EAAmBjxH,KAAKkyH,GACxBhB,EAAmBgB,EAAO7vE,IAAM6vE,EAAAA,IAK7B,CACLf,EACAN,EACAC,EACAC,EACAC,EACAC,EACAC,EAAAA,GAED,CACDhB,EACAV,EACA3M,EACA4G,EACAC,EACA/H,EACAyO,EACAJ,IAzLAmB,EAAAA,EAAAA,GACAN,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GACAC,EAAAA,EAAAA,GAsLIiB,EAAsB1S,EAAa4Q,GAEzC1Q,GAAuB,WACjBwS,KACFtnB,EAAS,CAAEp8F,KAAMkvG,EAAQuR,cAAAA,GAE1B,CAACrkB,EAAUqlB,EAAgB,KAAOxmH,IAErCpJ,OAAOuB,OAAOm6F,EAAU,CACtBo2B,eAAgBvP,EAChBwP,kBAAmB5I,EACnB6I,mBAAoB5I,EACpByH,YAAAA,EACAN,gBAAAA,EACAC,gBAAAA,EACAC,oBAAAA,EACAC,oBAAAA,EACAC,mBAAAA,EACAC,mBAAAA,EACArO,KAAMsO,EACN1H,SAAUoH,EACVnH,SAAUoH,EACV1B,cAAAA,EACAD,WAAAA,GAAAA,CAIJ,SAASzJ,GAAW/E,GAClBA,EAAI4R,SAASzkH,SAAQ,YAAA42G,IAAAA,EAEnBA,EAAKmL,UAAYnL,EAAK5E,OAAO+P,WAAanL,EAAK5E,OAAOz9D,KAAOs+D,EAAIsR,UAEjEvN,EAAK8N,eAAiB9N,EAAKmL,WAAanL,EAAK5E,OAAO+P,UAEpDnL,EAAK+N,cACF/N,EAAKmL,YAAcnL,EAAK8N,gBAAAA,OAAAA,EAAiB7R,EAAI4C,cAAAA,EAAJmP,EAAa7yH,OAAAA,GAAAA,CAItD,SAASowH,GAAiBpN,EAAMyE,GAAAA,OAC9BzE,EAAK54F,QAAO,SAAC/b,EAAMyyG,EAAKhhH,GAAAA,IAGvBgzH,EAAAA,GAAYhS,EAAI1mG,OAAOqtG,GAAAA,OAC7Bp5G,EAAKykH,GAAU1yH,MAAMC,QAAQgO,EAAKykH,IAAWzkH,EAAKykH,GAAU,GAC5DzkH,EAAKykH,GAAQ3yH,KAAK2gH,GACXzyG,CAAAA,GACN,CAAC,EAAD,CCpbL,IAAM0kH,GAAsB,aAmH5B,SAASC,GAAazkH,EAAGnN,GAAAA,OAChBmN,IAAMnN,EAAI,EAAImN,EAAInN,EAAI,GAAK,EAGpC,SAAS6xH,GAAuBC,EAAMC,EAAM1L,GAAAA,MACnC,CAACyL,EAAK94G,OAAOqtG,GAAW0L,EAAK/4G,OAAOqtG,GAAAA,CAG7C,SAASjnH,GAAS+N,GAAAA,MACC,iBAANA,EACLshD,MAAMthD,IAAMA,IAAMmc,KAAYnc,KAAAA,IACzB,GAEF7M,OAAO6M,GAEC,iBAANA,EACFA,EAEF,yBAAAjN,UAAAA,KAAA8xH,aAhImB,SAACC,EAAMC,EAAM7L,GAAAA,IAAAA,EAC1BwL,GAAuBI,EAAMC,EAAM7L,GAA3Cl5G,EAAAA,EAAAA,GAAGnN,EAAAA,EAAAA,GAAAA,IAGRmN,EAAI/N,GAAS+N,GACbnN,EAAIZ,GAASY,GAIbmN,EAAIA,EAAEm3C,MAAMqtE,IAAqBt2G,OAAO4uG,SACxCjqH,EAAIA,EAAEskD,MAAMqtE,IAAqBt2G,OAAO4uG,SAGjC98G,EAAEvO,QAAUoB,EAAEpB,QAAQ,KACvBq9E,EAAK9uE,EAAE2J,QACPmqE,EAAKjhF,EAAE8W,QAELq7G,EAAK1+G,SAASwoE,EAAI,IAClBm2C,EAAK3+G,SAASwtE,EAAI,IAElBoxC,EAAQ,CAACF,EAAIC,GAAI/pE,OAAAA,GAGnBoG,MAAM4jE,EAAM,IAAK,CAAL,GACVp2C,EAAKgF,EAAAA,OACA,KAELA,EAAKhF,EAAAA,OACC,UAMRxtB,MAAM4jE,EAAM,IAAK,OACZ5jE,MAAM0jE,IAAO,EAAI,KAItBA,EAAKC,EAAAA,OACA,KAELA,EAAKD,EAAAA,OACC,UAILhlH,EAAEvO,OAASoB,EAAEpB,MAAAA,EAAAA,SAEf,SAAkBqzH,EAAMC,EAAM7L,GAAAA,IAAAA,EACtBwL,GAAuBI,EAAMC,EAAM7L,GAA3Cl5G,EAAAA,EAAAA,GAAGnN,EAAAA,EAAAA,GAAAA,OAKD4xH,GAHPzkH,EAAIA,EAAEu0C,UACN1hD,EAAIA,EAAE0hD,UAAAA,EAAAA,MAKD,SAAeuwE,EAAMC,EAAM7L,GAAAA,IAAAA,EACnBwL,GAAuBI,EAAMC,EAAM7L,GAAAA,OAEzCuL,GAAAA,EAAAA,GAAAA,EAAAA,GAAAA,EAAAA,OAGF,SAAgBK,EAAMC,EAAM7L,GAAAA,IAAAA,EACpBwL,GAAuBI,EAAMC,EAAM7L,GAA3Cl5G,EAAAA,EAAAA,GAAGnN,EAAAA,EAAAA,GAAAA,IAERmN,EAAIA,EAAEm3C,MAAM,IAAIjpC,OAAO4uG,SACvBjqH,EAAIA,EAAEskD,MAAM,IAAIjpC,OAAO4uG,SAEhB98G,EAAEvO,QAAUoB,EAAEpB,QAAQ,KACvBq9E,EAAK9uE,EAAE2J,QACPmqE,EAAKjhF,EAAE8W,QAEPw7G,EAASr2C,EAAG5kE,cACZk7G,EAAStxC,EAAG5pE,cAAAA,GAGZi7G,EAASC,EAAAA,OACJ,KAELA,EAASD,EAAAA,OACH,KAGNr2C,EAAKgF,EAAAA,OACA,KAELA,EAAKhF,EAAAA,OACC,SAKL9uE,EAAEvO,OAASoB,EAAEpB,MAAAA,EAAAA,OAGf,SAAgBqzH,EAAMC,EAAM7L,GAAAA,IAAAA,EACpBwL,GAAuBI,EAAMC,EAAM7L,GAA3Cl5G,EAAAA,EAAAA,GAAGnN,EAAAA,EAAAA,GAEFwyH,EAAoB,mBAKnBZ,GAHPzkH,EAAIgwG,OAAO78G,OAAO6M,GAAGivB,QAAQo2F,EAAmB,KAChDxyH,EAAIm9G,OAAO78G,OAAON,GAAGo8B,QAAQo2F,EAAmB,SC5FlD9V,EAAQ+V,YAAc,cACtB/V,EAAQgW,UAAY,YACpBhW,EAAQiW,aAAe,eACvBjW,EAAQkW,YAAc,cAEtB7V,EAAc8V,SAAW,eACzB9V,EAAc+V,eAAgB,MAEjBC,GAAY,SAAAjnE,GACvBA,EAAMknE,qBAAuB,CAACC,IAC9BnnE,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAM04D,YAAYzlH,KAAKylH,GAAAA,EAGzBuO,GAAU5U,WAAa,YAEvB,IAAM8U,GAA8B,SAACptB,EAAAA,GAAAA,IAAS9K,EAAAA,EAAAA,SAAU8jB,EAAAA,EAAAA,OAAAA,EACP9jB,EAAvCm4B,iBAAAA,OAAAA,IAAAA,EAAmB,SAAArxH,GAAAA,OAAKA,EAAEivF,QAAAA,EAAAA,EAAAA,MAE3B,CACL+U,EACA,CACEiM,QAAS+M,EAAOsU,QACZ,SAAAtxH,GACEA,EAAE0tF,UACFsvB,EAAO8T,kBAAa,GAEjB53B,EAASq4B,kBAAoBF,EAAiBrxH,GAAAA,OAAAA,EAIvDirB,MAAO,CACLqzF,OAAQtB,EAAOsU,QAAU,kBAE3BnN,MAAOnH,EAAOsU,QAAU,wBAAkB3kH,EAMhD,SAASo3G,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExB0W,OAAQ,IACL9tB,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQ+V,YAAa,OAAbA,EAAAA,CAAAA,EAErBltB,EAAAA,CACH8tB,OAAQt4B,EAASqrB,aAAaiN,QAAU,QAIxC7pB,EAAOh8F,OAASkvG,EAAQkW,YAAa,OAAbA,EAAAA,CAAAA,EAKrBrtB,EAAAA,CACH8tB,OALiB9tB,EAAX8tB,OACiBh4G,QAAO,YAAAtb,OAAKA,EAAEqhD,KAAOooD,EAAO6c,QAAAA,MAAAA,GAQnD7c,EAAOh8F,OAASkvG,EAAQgW,UAAW,OAAXA,EAAAA,CAAAA,EAGrBntB,EAAAA,CACH8tB,OAHiB7pB,EAAX6pB,SAAAA,GAON7pB,EAAOh8F,OAASkvG,EAAQiW,aAAc,KAyBpCW,EAxBIjN,EAA0B7c,EAA1B6c,SAAUkN,EAAgB/pB,EAAhB+pB,KAAMC,EAAUhqB,EAAVgqB,MAGtB9S,EAKE3lB,EALF2lB,WACA0S,EAIEr4B,EAJFq4B,iBACAK,EAGE14B,EAHF04B,kBACAC,EAEE34B,EAFF24B,mBAAAA,EAEE34B,EADF44B,qBAAAA,OAAAA,IAAAA,EAAuBxW,OAAOC,iBAAAA,EAGxBiW,EAAW9tB,EAAX8tB,OAIAP,EADOpS,EAAWn8G,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOilE,CAAAA,IACrCyM,cAGFc,EAAiBP,EAAO9uH,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOilE,CAAAA,IAC3CwN,EAAgBR,EAAOhV,WAAU,YAAAt+G,OAAKA,EAAEqhD,KAAOilE,CAAAA,IAC/CyN,EAAiB,MAAOP,EAE1BQ,EAAY,SAwBC,YAjBbT,GAFCF,GAAoBI,EACnBI,EACW,SAEA,MAIXC,IAAkBR,EAAOz0H,OAAS,GAAuB,IAAlBy0H,EAAOz0H,OACnC,UACJg1H,EACI,SAEA,YAOdH,GACAK,GACAN,GAASE,KACRE,GACAA,EAAeL,OACdT,IACCc,EAAeL,MAAQT,KAE3BQ,EAAa,UAGI,YAAfA,EACFS,EAAY,CACV,CACE3yE,GAAIilE,EACJkN,KAAMO,EAAiBP,EAAOT,IAGV,QAAfQ,GACTS,EAAAA,GAAAA,OACKV,EAAAA,CACH,CACEjyE,GAAIilE,EACJkN,KAAMO,EAAiBP,EAAOT,MAIxBj7G,OAAO,EAAGk8G,EAAUn1H,OAAS+0H,GACf,WAAfL,EAETS,EAAYV,EAAOhlH,KAAI,YAAAtO,OACjBA,EAAEqhD,KAAOilE,EAAAA,EAAAA,CAAAA,EAENtmH,EAAAA,CACHwzH,KAAMO,EAAiBP,GAAQK,EAAeL,OAG3CxzH,CAAAA,IAEe,WAAfuzH,IACTS,EAAYV,EAAOh4G,QAAO,YAAAtb,OAAKA,EAAEqhD,KAAOilE,CAAAA,KAAAA,EAAAA,CAAAA,EAIrC9gB,EAAAA,CACH8tB,OAAQU,GAAAA,CAAAA,CAKd,SAASvP,GAAYzpB,GAAAA,IAEjBtyF,EAeEsyF,EAfFtyF,KACAm5G,EAcE7mB,EAdF6mB,KACA4G,EAaEztB,EAbFytB,SACA9H,EAYE3lB,EAZF2lB,WAAAA,EAYE3lB,EAXFi5B,UAAAA,OAAAA,IAAAA,EAAYC,GAAAA,EACDC,EAUTn5B,EAVFo5B,UACAC,EASEr5B,EATFq5B,aACAC,EAQEt5B,EARFs5B,eACAC,EAOEv5B,EAPFu5B,cACA5N,EAME3rB,EANF2rB,YACS2M,EAKPt4B,EALFwK,MAAS8tB,OACTzpB,EAIE7O,EAJF6O,SACAqU,EAGEljB,EAHFkjB,QACA0I,EAEE5rB,EAFF4rB,SAAAA,EAEE5rB,EADFw5B,gBAAAA,OAAAA,IAAAA,GAAAA,EAGFvW,EACEC,EACA,CAAC,aAAc,kBAAmB,aAAc,mBAChD,iBAGIyU,EAAY5V,EAAM9Q,aACtB,YACEpC,EAAS,CAAEp8F,KAAMkvG,EAAQgW,UAAWW,OAAAA,GAAAA,GAEtC,CAACzpB,IAIG+oB,EAAe7V,EAAM9Q,aACzB,SAACqa,EAAUkN,EAAMC,GACf5pB,EAAS,CAAEp8F,KAAMkvG,EAAQiW,aAActM,SAAAA,EAAUkN,KAAAA,EAAMC,MAAAA,GAAAA,GAEzD,CAAC5pB,IAIGid,EAAcrI,EAAazjB,GAGjC2rB,EAAY75G,SAAQ,YAAAgyG,IAEhBU,EAIEV,EAJFU,SACSiV,EAGP3V,EAHFsU,QACesB,EAEb5V,EAFFyV,cACAlzE,EACEy9D,EADFz9D,GAGI+xE,EAAU5T,EACZiC,GAAAA,IACEiT,QAAAA,GAAuCjmH,IACvC8lH,QAAAA,GAAiC9lH,GAGnCgzG,EAAgB6S,EAAgBG,GAAAA,GAEpC3V,EAAOsU,QAAUA,EAEbtU,EAAOsU,UACTtU,EAAO8T,aAAe,SAACY,EAAMC,GAAAA,OAC3Bb,EAAa9T,EAAOz9D,GAAImyE,EAAMC,EAAAA,EAEhC3U,EAAO+T,YAAc,WACnBhpB,EAAS,CAAEp8F,KAAMkvG,EAAQkW,YAAavM,SAAUxH,EAAOz9D,IAAAA,GAI3Dy9D,EAAOmU,qBAAuBzV,EAC5BoJ,IAAWqM,qBACX,CACEj4B,SAAU8rB,IACVhI,OAAAA,IAAAA,IAIE6V,EAAarB,EAAO9uH,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOA,CAAAA,IAC7Cy9D,EAAO8V,WAAaD,EACpB7V,EAAO+V,YAAcvB,EAAOhV,WAAU,YAAAt+G,OAAKA,EAAEqhD,KAAOA,CAAAA,IACpDy9D,EAAOgW,aAAehW,EAAO8V,SAAWD,EAAWnB,UAAO,CAAA/kH,IAAAA,IAAAA,EAGvBsuG,EAAMxQ,SAAQ,cAC7C8nB,IAAiBf,EAAOz0H,OAAQ,MAC3B,CAACgjH,EAAM4G,GAAAA,IAGVsM,EAAiB,GAGjBC,EAAkB1B,EAAOh4G,QAAO,YAAAgtC,OACpCq4D,EAAWn8G,MAAK,YAAAghF,OAAOA,EAAInkC,KAAOiH,EAAKjH,EAAAA,GAAAA,IAAAA,MAoElC,CAjEU,SAAX4zE,EAAWpT,GAAAA,IAITqT,EAAajB,EACjBpS,EACAmT,EAAgB1mH,KAAI,YAAAg6C,IAEZw2D,EAAS6B,EAAWn8G,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOiH,EAAKjH,EAAAA,IAAAA,IAE7Cy9D,EAAAA,MACG,IAAI55G,MAAM,iDACmCojD,EAAKjH,GAAAA,kBAAAA,IAIlDyxE,EAAahU,EAAbgU,SASFqC,EACJ/kE,EAAW0iE,KACVqB,GAAiB,CAAC,GAAGrB,IACtBsB,GAAUtB,GAAAA,IAEPqC,EAAAA,MACG,IAAIjwH,MAAM,oDACsC4tH,EAAAA,iBAAyBxqE,EAAKjH,GAAAA,MAAAA,OAM/E,SAACj0C,EAAGnN,GAAAA,OAAMk1H,EAAW/nH,EAAGnN,EAAGqoD,EAAKjH,GAAIiH,EAAKkrE,KAAAA,CAAAA,IAGlDwB,EAAgB1mH,KAAI,YAAAg6C,IAEZw2D,EAAS6B,EAAWn8G,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOiH,EAAKjH,EAAAA,IAAAA,OAE9Cy9D,GAAUA,EAAOsW,aACZ9sE,EAAKkrE,MAGNlrE,EAAKkrE,IAAAA,KAAAA,OAKjB0B,EAAWpoH,SAAQ,YACjBioH,EAAe/1H,KAAK2gH,GACfA,EAAI4C,SAAkC,IAAvB5C,EAAI4C,QAAQ1jH,SAGhC8gH,EAAI4C,QAAU0S,EAAStV,EAAI4C,SAAAA,IAGtB2S,CAAAA,CA9DQ,CAiEArT,GAAOkT,EAAAA,GACvB,CACDV,EACAf,EACAzR,EACA4G,EACA9H,EACAsT,EACAE,IArFKkB,EAAAA,EAAAA,GAAYN,EAAAA,EAAAA,GAwFbO,EAAqB7W,EAAa+V,GAExC7V,GAAuB,WACjB2W,KACFzrB,EAAS,CAAEp8F,KAAMkvG,EAAQ+V,aAAAA,GAE1B,CAAC2B,EAAe,KAAO3rH,IAE1BpJ,OAAOuB,OAAOm6F,EAAU,CACtBu6B,cAAe1T,EACf2T,kBAAmB/M,EACnB4M,WAAAA,EACAN,eAAAA,EACAlT,KAAMwT,EACN5M,SAAUsM,EACVpC,UAAAA,EACAC,aAAAA,GAAAA,CAIG,SAASsB,GAAiBvnE,EAAK8oE,EAAOC,GAAAA,MACpC,UAAI/oE,GAAKrE,MAAK,SAAC4pE,EAAMC,GAAAA,IACrB,IAAIxzH,EAAI,EAAGA,EAAI82H,EAAM52H,OAAQF,GAAK,EAAG,KAClCg3H,EAASF,EAAM92H,GACf60H,GAAAA,IAAOkC,EAAK/2H,IAA4B,SAAZ+2H,EAAK/2H,GACjCi3H,EAAUD,EAAOzD,EAAMC,GAAAA,GACb,IAAZyD,EAAAA,OACKpC,GAAQoC,EAAUA,CAAAA,CAAAA,OAGtBF,EAAK,GAAKxD,EAAK/rH,MAAQgsH,EAAKhsH,MAAQgsH,EAAKhsH,MAAQ+rH,EAAK/rH,KAAAA,GAAAA,CCpXjEw2G,EAAQkZ,UAAY,YACpBlZ,EAAQmZ,SAAW,WACnBnZ,EAAQoZ,YAAc,kBAETC,GAAgB,SAAAjqE,GAC3BA,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAM04D,YAAYzlH,KAAKylH,GAAAA,EAKzB,SAASoB,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExBqZ,SAAU,GACVC,UAAW,GACR1wB,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQkZ,UAAW,OAAXA,EAAAA,CAAAA,EAErBrwB,EAAAA,CACH0wB,UAAWl7B,EAASqrB,aAAa6P,WAAa,OAI9CzsB,EAAOh8F,OAASkvG,EAAQmZ,SAAU,KAC5BK,EAAoBn7B,EAApBm7B,UAAWC,EAASp7B,EAATo7B,KACbC,EAAe7X,EAAiB/U,EAAOysB,UAAW1wB,EAAM0wB,WAC1DI,GAAAA,EAAc,OAEdD,EAAe7wB,EAAM0wB,UAEvBI,GACiB,IAAfH,EACIC,EAAKv3H,QAAU2mG,EAAMywB,SACrBI,EAAeF,EACZE,EAAe7wB,EAAM0wB,YAE9BI,EAAcD,GAAgB,GAG3BC,EAAAA,EAAAA,CAAAA,EAKA9wB,EAAAA,CACH0wB,UAAWG,IALJ7wB,CAAAA,CAAAA,GASPiE,EAAOh8F,OAASkvG,EAAQoZ,YAAa,KAC/BE,EAAaxsB,EAAbwsB,SACFM,EAAc/wB,EAAMywB,SAAWzwB,EAAM0wB,UAAAA,OAAAA,EAAAA,CAAAA,EAItC1wB,EAAAA,CACH0wB,UAJgB/wH,KAAKi+B,MAAMmzF,EAAcN,GAKzCA,SAAAA,GAAAA,CAAAA,CAKN,SAASxR,GAAYzpB,GAAAA,IAEjB6mB,EAmBE7mB,EAnBF6mB,KAAAA,EAmBE7mB,EAlBFw7B,cAAAA,OAAAA,IAAAA,GAAAA,EAAAA,EAkBEx7B,EAjBF8mB,kBAAAA,OAAAA,IAAAA,EAAoB,aACpB5D,EAgBEljB,EAhBFkjB,QACWuY,EAeTz7B,EAfFm7B,UAAAA,EAeEn7B,EAdF+uB,qBAAAA,OAAAA,IAAAA,GAAAA,EAAAA,EAcE/uB,EAbFgnB,cAAAA,OAAAA,IAAAA,GAAAA,EAAAA,EAaEhnB,EAZFwK,MACEywB,EAAAA,EAAAA,SACAC,EAAAA,EAAAA,UACAnU,EAAAA,EAAAA,SACA+K,EAAAA,EAAAA,aACAxB,EAAAA,EAAAA,QACAkD,EAAAA,EAAAA,QACA8E,EAAAA,EAAAA,OAEFzpB,EAGE7O,EAHF6O,SACAnhG,EAEEsyF,EAFFtyF,KACAguH,EACE17B,EADF07B,iBAGFzY,EACEC,EACA,CAAC,kBAAmB,aAAc,aAAc,YAAa,eAC7D,qBAGIyY,EAAmBlY,EAAa+X,GAEtC7X,GAAuB,WACjBgY,KACF9sB,EAAS,CAAEp8F,KAAMkvG,EAAQkZ,WAAAA,GAE1B,CACDhsB,EACA6sB,EAAmB,KAAOhuH,EAC1BokH,EACAxB,EACAkD,EACA8E,IAAAA,IAGI6C,EAAYO,EACdD,EACAtxH,KAAKwD,KAAKk5G,EAAKhjH,OAASo3H,GAEtBW,EAAc7Z,EAAMxQ,SACxB,kBACE4pB,EAAY,EACR,UAAI,IAAIl3H,MAAMk3H,IAAY75E,KAAK,MAAMhuC,KAAI,SAACtO,EAAGrB,GAAAA,OAAMA,CAAAA,IACnD,KACN,CAACw3H,IAGGC,EAAOrZ,EAAMxQ,SAAQ,eACrB6pB,EAAAA,GAEAM,EACFN,EAAOvU,MACF,KACCgV,EAAYZ,EAAWC,EACvBY,EAAUD,EAAYZ,EAE5BG,EAAOvU,EAAKp+G,MAAMozH,EAAWC,EAAAA,CAAAA,OAG3B/M,EACKqM,EAGFxU,EAAWwU,EAAM,CAAEtU,kBAAAA,EAAmBC,SAAAA,EAAUC,cAAAA,GAAAA,GACtD,CACDA,EACAD,EACAD,EACA4U,EACAR,EACAD,EACAlM,EACAlI,IAGIkV,EAAkBb,EAAY,EAC9Bc,GACW,IAAfb,EAAmBC,EAAKv3H,QAAUo3H,EAAWC,EAAYC,EAAY,EAEjEL,EAAW/Y,EAAM9Q,aACrB,YACEpC,EAAS,CAAEp8F,KAAMkvG,EAAQmZ,SAAUI,UAAAA,GAAAA,GAErC,CAACrsB,IAGGotB,EAAela,EAAM9Q,aAAY,kBAC9B6pB,GAAS,YAAA9qE,OAAOA,EAAM,OAC5B,CAAC8qE,IAEEoB,EAAWna,EAAM9Q,aAAY,kBAC1B6pB,GAAS,YAAA9qE,OAAOA,EAAM,OAC5B,CAAC8qE,IAEEC,EAAchZ,EAAM9Q,aACxB,YACEpC,EAAS,CAAEp8F,KAAMkvG,EAAQoZ,YAAaE,SAAAA,GAAAA,GAExC,CAACpsB,IAGHvqG,OAAOuB,OAAOm6F,EAAU,CACtB47B,YAAAA,EACAT,UAAAA,EACAC,KAAAA,EACAW,gBAAAA,EACAC,YAAAA,EACAlB,SAAAA,EACAmB,aAAAA,EACAC,SAAAA,EACAnB,YAAAA,GAAAA,CAhLJC,GAAc5X,WAZK,gBCDnBzB,EAAQwa,WAAa,aACrBxa,EAAQya,YAAc,kBAETC,GAA4B,SAAAtrE,GACvCA,EAAMurE,oBAAsB,CAACC,IAC7BxrE,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAMq4D,qBAAqBplH,KAAKolH,IAChCr4D,EAAM40D,WAAW3hH,KAAK2hH,IACtB50D,EAAMk4D,YAAYjlH,KAAKilH,IACvBl4D,EAAMm4D,oBAAoBllH,KAAKklH,IAC/Bn4D,EAAMo4D,wBAAwBnlH,KAAKmlH,IACnCp4D,EAAMs4D,eAAerlH,KAAKqlH,IAC1Bt4D,EAAMu4D,mBAAmBtlH,KAAKslH,IAC9Bv4D,EAAM04D,YAAYzlH,KAAKylH,IACvB14D,EAAM24D,WAAW1lH,KAAK0lH,GAAAA,EAGxB2S,GAA0BjZ,WAAa,kBAEvC,IAAMoZ,GAAsB,GAEtBD,GAA6B,SAACzxB,EAAAA,GAAAA,IAASkiB,EAAAA,EAAAA,OAAAA,MAAa,CACxDliB,EACA,CACEiM,QAASiW,EAAOyP,SACZ,SAAA31H,GACEA,EAAE0tF,UACFw4B,EAAOoP,aAAAA,OAAAA,EAGbrqG,MAAO,CACLqzF,OAAQ4H,EAAOyP,SAAW,kBAE5BxR,MAAO,kBAKX,SAASJ,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExB8a,aAAcF,IACXhyB,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQwa,WAAY,OAAZA,EAAAA,CAAAA,EAErB3xB,EAAAA,CACHkyB,aAAc18B,EAASqrB,aAAaqR,cAAgBF,KAAAA,GAIpD/tB,EAAOh8F,OAASkvG,EAAQya,YAAa,KAC/B9Q,EAA8B7c,EAA9B6c,SAAiBqR,EAAaluB,EAApBloG,MAEZq2H,OAAAA,IACGD,EACHA,GACCnyB,EAAMkyB,aAAal4H,SAAS8mH,GAAAA,OAAAA,EAAAA,CAAAA,EAI5B9gB,EAFHoyB,EAAAA,CAGAF,aAAc,GAAdA,OAAkBlyB,EAAMkyB,aAAc,CAAApR,KAAAA,CAMxCoR,aAAclyB,EAAMkyB,aAAap8G,QAAO,YAAAtb,OAAKA,IAAMsmH,CAAAA,KAAAA,CAAAA,CAKzD,SAASlC,GAAqBppB,GAC5BA,EAAS2lB,WAAW7zG,SAAQ,YAC1BgyG,EAAO+Y,cAAgB78B,EAASwK,MAAMkyB,aAAal4H,SAASs/G,EAAOz9D,GAAAA,GAAAA,CAIvE,SAASs/D,GAAWv9B,EAAAA,GAAAA,IAAW4X,EAAAA,EAAAA,SAAAA,OAC7B5X,EAAQt2E,SAAQ,YACdgyG,EAAO+Y,cAAgB78B,EAASwK,MAAMkyB,aAAal4H,SAASs/G,EAAOz9D,IACnEy9D,EAAOgZ,aAAe,IAAIz7C,GAAAA,IAErB+G,CAAAA,CAGT,SAAS6gC,GAAY1iH,EAAAA,GAAAA,IAASu9G,EAAAA,EAAAA,OAAAA,OACxBA,EAAOgZ,mBAAgB,IAAOv2H,GAChCu9G,EAAOgZ,aAAa9xF,IAAIzkC,GAEnBA,CAAAA,CAGT,SAAS2iH,GAAoB6T,EAAAA,GAAAA,IAAgB/8B,EAAAA,EAAAA,SACnC2lB,EAAsB3lB,EAAtB2lB,WAAYnb,EAAUxK,EAAVwK,MAAAA,IAEfA,EAAMkyB,aAAa74H,SAAW2mG,EAAMgpB,UAAYhpB,EAAMgpB,QAAQ3vH,OAAQ,OAClEk5H,EAAAA,IAGHL,EAAelyB,EAAMkyB,aACxBppH,KAAI,YAAA+yC,OAAMs/D,EAAWn8G,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOA,CAAAA,GAAAA,IACxC/lC,OAAO4uG,SAEJ8N,EAAgBrX,EAAWrlG,QAC/B,YAAAtb,OACGA,EAAE63H,gBACFryB,EAAMgpB,QAAQhvH,SAASQ,EAAEqhD,MACzBmkD,EAAMkyB,aAAal4H,SAASQ,EAAEqhD,GAAAA,IAyD7B42E,EAAkB3Y,EAtDE,SAApB4Y,EAAqBxlG,EAAW/X,EAAQw9G,QAAAA,IAAnBzlG,IAAAA,EAAQ,YAAWylG,IAAAA,EAAe,QACrDC,EAAcV,EAAahlG,GAAAA,OAE5B0lG,EAwBgBn5H,MAAMoE,KAAK+0H,EAAYN,cAAcxvE,OAEtCh6C,KAAI,SAAAuD,GAAAwmH,IAChBC,EAAAA,EAAAA,CAAAA,EACDF,EAAAA,CACH3Y,OACE2Y,EAAYG,aAA6C,iBAAvBH,EAAYpQ,OACvCoQ,EAAY3Y,OAAAA,KAAW4Y,EAC1BA,EACNG,cAAc,EACd79G,OAAAA,EACA+X,MAAAA,EACA2uB,GAAI1mC,EACGA,EAAO0mC,GAAAA,IAAM+2E,EAAY/2E,GAAAA,IAAMg3E,EAC/BD,EAAY/2E,GAAAA,IAAMg3E,EACzBI,WAAYJ,IAAAA,OAGdC,EAAYl1C,QAAU80C,EAAkBxlG,EAAQ,EAAG4lG,EAAAA,GAAAA,OAC9CH,EAAAA,CACH,YAAAxY,OAAOA,EAAI1mG,OAAOm/G,EAAY/2E,MAAQg3E,CAAAA,KAGjCC,CAAAA,IA9CAN,EAAc1pH,KAAI,YAAAoqH,OAAAA,EAAAA,CAAAA,EAQlBA,EAAAA,CACHjB,UAAU,EACVkB,WAAW,EACXh+G,OAAAA,EACA+X,MAAOA,EACP2uB,GAAI,IAAG1mC,EAAYA,EAAO0mC,GAAAA,IAAMq3E,EAAar3E,GAAOq3E,EAAar3E,IACjEm+D,SAAU,SAACoJ,EAAajqH,EAAGghH,GAAAA,GACrBwY,EAAa7gG,OAAM,YAAAhc,OAAUA,EAAOqkG,EAAAA,IAAAA,OAC/BA,EAAI1mG,OAAOy/G,EAAar3E,GAAAA,GAAAA,GAAAA,CApBjB,IAsDa62E,MAAAA,GAAAA,OAE5BH,EAAiBE,EAAAA,CAG9B,SAAS9T,GACPtZ,EAAAA,GAAAA,IAAAA,EAAAA,EAEE7P,SACEwK,MAASkyB,EAAAA,EAAAA,aAAclJ,EAAAA,EAAAA,QAAAA,MAAAA,GAAAA,OAIhB3jB,EAAAA,CAAM6sB,EAAclJ,GAAAA,CAGjC,SAASnK,GAAeA,EAAAA,GAAAA,IAA8B7e,EAAAA,EAAZxK,SAAYwK,MAAAA,OACpD6e,EAAiBA,EAAe/oG,QAAO,YAAAtb,OAAMA,EAAE63H,aAAAA,IAE3CryB,EAAMkyB,aAAa74H,QAAU2mG,EAAMgpB,SAAWhpB,EAAMgpB,QAAQ3vH,SAC9DwlH,EAAiBA,EAAe/oG,QAC9B,YAAAwjG,OAAUA,EAAO+P,WAAa/P,EAAO6Z,SAAAA,KAIlCtU,CAAAA,CAGT,SAASC,GAAmBzZ,EAAAA,GAAAA,IAAQ7P,EAAAA,EAAAA,SAAAA,MAAAA,GAAAA,OACvB6P,EAAAA,CAAM7P,EAASwK,MAAMkyB,aAAc18B,EAASwK,MAAMgpB,SAAAA,CAG/D,SAAS/J,GAAYzpB,GAAAA,IAEjB5X,EAYE4X,EAZF5X,QACAu9B,EAWE3lB,EAXF2lB,WACAgG,EAUE3rB,EAVF2rB,YAGAC,EAOE5rB,EAPF4rB,SACA1I,EAMEljB,EANFkjB,QACArU,EAKE7O,EALF6O,SAAAA,EAKE7O,EAJF49B,eAAAA,OAAAA,IAAAA,GAAAA,EACAC,EAGE79B,EAHF69B,YACAC,EAEE99B,EAFF89B,aACAC,EACE/9B,EADF+9B,gBAGF9a,EAAkBC,EAAS,CAAC,cAAe,uBAErC4I,EAAcrI,EAAazjB,GAEjC2lB,EAAW7zG,SAAQ,YAAAgyG,IAEfU,EAGEV,EAHFU,SACcwZ,EAEZla,EAFFma,aACcC,EACZpa,EADFga,aAGFha,EAAO2Y,SAAWjY,EACdiC,EACE3C,EAAO2Y,UAAAA,IACPyB,QAAAA,GAAsCzqH,IACtCqqH,QAAAA,GAAgCrqH,GAGlCgzG,EACE3C,EAAO2Y,SACPuB,EACAD,GAAAA,GAIFja,EAAO2Y,WACT3Y,EAAOsY,YAAc,kBAAMp8B,EAASo8B,YAAYtY,EAAOz9D,GAAAA,GAGzDy9D,EAAO6Q,WAAa7Q,EAAO6Q,YAAc7Q,EAAO7B,IAAAA,IAOlD0J,EAAY75G,SAAQ,YAClBk7G,EAAOsP,oBAAsB9Z,EAC3BoJ,IAAW0Q,oBACX,CACEt8B,SAAU8rB,IACVkB,OAAAA,GAAAA,IAAAA,IAKAmR,EAAoB1a,EAAama,GAEvCja,GAAuB,WACjBwa,KACFtvB,EAAS,CAAEp8F,KAAMkvG,EAAQwa,YAAAA,GAE1B,CAACttB,EAAUgvB,EAAc,KAAOz1C,IAEnC9jF,OAAOuB,OAAOm6F,EAAU,CACtBo8B,YAvBkB,SAAC9Q,EAAU/kH,GAC7BsoG,EAAS,CAAEp8F,KAAMkvG,EAAQya,YAAa9Q,SAAAA,EAAU/kH,MAAAA,GAAAA,GAAAA,CA0BpD,SAASmjH,GAAW/E,GAClBA,EAAI4R,SAASzkH,SAAQ,YAEnB42G,EAAKiV,UAAYjV,EAAK5E,OAAO6Z,SAAAA,GAAAA,CCtRjChc,EAAQyc,kBAAoB,oBAC5Bzc,EAAQ0c,sBAAwB,wBAChC1c,EAAQ2c,kBAAoB,oBAC5B3c,EAAQ4c,0BAA4B,gCAEvBC,GAAe,SAAAztE,GAC1BA,EAAM0tE,0BAA4B,CAACC,IACnC3tE,EAAM4tE,8BAAgC,CAACC,IACvC7tE,EAAM8tE,kCAAoC,CACxCC,IAEF/tE,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAM04D,YAAYzlH,KAAKylH,IACvB14D,EAAM24D,WAAW1lH,KAAK0lH,GAAAA,EAGxB8U,GAAapb,WAnBM,eAqBnB,IAAMsb,GAAmC,SAAC5zB,EAAAA,GAAAA,IAAS9K,EAAAA,EAAAA,SAAU2kB,EAAAA,EAAAA,IAAAA,EACX3kB,EAAxC++B,qBAAAA,OAAAA,IAAAA,EAAuB,qBASxB,CACLj0B,EACA,CACEigB,SAAU,SAAAjkH,GACR69G,EAAI2Z,kBAAkBx3H,EAAE4pC,OAAO1N,QAAAA,EAEjCjR,MAAO,CACLqzF,OAAQ,WAEVpiF,WAfA2hF,EAAI0C,WAAY1C,EAAI0C,SAAS0X,KAGrBpa,EAAIqa,WAaZ/T,MAAO,sBACPE,cAAexG,EAAIsa,gBAAAA,EAKnBL,GAAuC,SAAC9zB,EAAAA,GAAAA,IAAS9K,EAAAA,EAAAA,SAAAA,MAAe,CACpE8K,EACA,CACEigB,SAAU,SAAAjkH,GACRk5F,EAASq+B,sBAAsBv3H,EAAE4pC,OAAO1N,QAAAA,EAE1CjR,MAAO,CACLqzF,OAAQ,WAEVpiF,QAASg9D,EAASk/B,kBAClBjU,MAAO,2BACPE,cAAe+D,SACZlvB,EAASk/B,mBACR56H,OAAO0uC,KAAKgtD,EAASwK,MAAM20B,gBAAgBt7H,SAAAA,EAK7Ci7H,GAA2C,SAACh0B,EAAAA,GAAAA,IAAS9K,EAAAA,EAAAA,SAAAA,MAAe,CACxE8K,EACA,CACEigB,SAAAA,SAASjkH,GACPk5F,EAASu+B,0BAA0Bz3H,EAAE4pC,OAAO1N,QAAAA,EAE9CjR,MAAO,CACLqzF,OAAQ,WAEVpiF,QAASg9D,EAASo/B,sBAClBnU,MAAO,wCACPE,cAAe+D,SACZlvB,EAASo/B,uBACRp/B,EAASo7B,KAAKxhG,MAAK,gBAAGysB,EAAAA,EAAAA,GAAAA,OAAS25C,EAASwK,MAAM20B,eAAe94E,EAAAA,MAAAA,EAMrE,SAASwkE,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExBud,eAAgB,CAAC,GACd30B,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQyc,kBAAmB,OAAnBA,EAAAA,CAAAA,EAErB5zB,EAAAA,CACH20B,eAAgBn/B,EAASqrB,aAAa8T,gBAAkB,CAAC,IAAD,GAIxD1wB,EAAOh8F,OAASkvG,EAAQ0c,sBAAuB,KAClCgB,EAAgB5wB,EAAvBloG,MAEN24H,EAGEl/B,EAHFk/B,kBACAxR,EAEE1tB,EAFF0tB,SAAAA,EAEE1tB,EADFk1B,mBAAAA,OAAAA,IAAAA,EAAqBxH,EAAAA,EAGjB4R,OAAAA,IACGD,EAA8BA,GAAeH,EAIhDC,EAAiB76H,OAAOuB,OAAO,CAAC,EAAG2kG,EAAM20B,gBAAAA,OAE3CG,EACFh7H,OAAO0uC,KAAKkiF,GAAoBpjH,SAAQ,YACtCqtH,EAAexQ,IAAAA,CAAS,IAG1BrqH,OAAO0uC,KAAKkiF,GAAoBpjH,SAAQ,mBAC/BqtH,EAAexQ,EAAAA,IAAAA,EAAAA,CAAAA,EAKrBnkB,EAAAA,CACH20B,eAAAA,GAAAA,CAAAA,GAIA1wB,EAAOh8F,OAASkvG,EAAQ2c,kBAAmB,KACrCj4E,EAA2BooD,EAA3BpoD,GAAWg5E,EAAgB5wB,EAAvBloG,MACJmnH,EAA+C1tB,EAA/C0tB,SAAAA,EAA+C1tB,EAArCu/B,cAAAA,OAAAA,IAAAA,GAAAA,EAAsB/S,EAAexsB,EAAfwsB,WAClCwS,EAAax0B,EAAM20B,eAAe94E,GAClCyoE,OAAAA,IACGuQ,EAA8BA,GAAeL,EAAAA,GAElDA,IAAelQ,EAAAA,OACVtkB,EAAAA,IAGHg1B,EAAAA,EAAAA,CAAAA,EAAyBh1B,EAAM20B,gBAAAA,OAEf,SAAhBM,EAAgBp5E,GAAAA,IACds+D,EAAM+I,EAASrnE,GAAAA,GAEjBs+D,IACGA,EAAIkP,YACH/E,EACF0Q,EAAkBn5E,IAAAA,SAEXm5E,EAAkBn5E,IAIzBk5E,GAAiB/S,EAAW7H,IAAAA,OACvB6H,EAAW7H,GAAK7yG,SAAQ,YAAA6yG,OAAO8a,EAAc9a,EAAIt+D,GAAAA,GAAAA,CAbxC,CAkBRA,GAAAA,EAAAA,CAAAA,EAGTmkD,EAAAA,CACH20B,eAAgBK,GAAAA,CAAAA,GAIhB/wB,EAAOh8F,OAASkvG,EAAQ4c,0BAA2B,KACtCc,EAAgB5wB,EAAvBloG,MAEN60H,EAKEp7B,EALFo7B,KACA1N,EAIE1tB,EAJF0tB,SAAAA,EAIE1tB,EAHFu/B,cAAAA,OAAAA,IAAAA,GAAAA,EACAH,EAEEp/B,EAFFo/B,sBACA5S,EACExsB,EADFwsB,WAGI8S,OAAAA,IACGD,EAA8BA,GAAeD,EAEhDI,EAAAA,EAAAA,CAAAA,EAAyBh1B,EAAM20B,gBAAAA,OAkBrC/D,EAAKtpH,SAAQ,YAAA6yG,OAhBS,SAAhB8a,EAAgBp5E,GAAAA,IACds+D,EAAM+I,EAASrnE,GAAAA,GAEhBs+D,EAAIkP,YACHyL,EACFE,EAAkBn5E,IAAAA,SAEXm5E,EAAkBn5E,IAIzBk5E,GAAiB/S,EAAW7H,GAAAA,OACvB6H,EAAW7H,GAAK7yG,SAAQ,YAAA6yG,OAAO8a,EAAc9a,EAAIt+D,GAAAA,GAAAA,CAZtC,CAgBYs+D,EAAIt+D,GAAAA,IAAAA,EAAAA,CAAAA,EAGjCmkD,EAAAA,CACH20B,eAAgBK,GAAAA,CAAAA,OAGbh1B,CAAAA,CAGT,SAASif,GAAYzpB,GAAAA,IAEjBtyF,EAYEsyF,EAZFtyF,KACAm5G,EAWE7mB,EAXF6mB,KACA+E,EAUE5rB,EAVF4rB,SACA1I,EASEljB,EATFkjB,QACAwK,EAQE1tB,EARF0tB,SAAAA,EAQE1tB,EAPFk1B,mBAAAA,OAAAA,IAAAA,EAAqBxH,EAAAA,EAAAA,EAOnB1tB,EANF0/B,sBAAAA,OAAAA,IAAAA,GAAAA,EACSP,EAKPn/B,EALFwK,MAAS20B,eAAAA,EAKPn/B,EAJFu/B,cAAAA,OAAAA,IAAAA,GAAAA,EACA1wB,EAGE7O,EAHF6O,SACAusB,EAEEp7B,EAFFo7B,KACA5O,EACExsB,EADFwsB,WAGFvJ,EACEC,EACA,CAAC,aAAc,aAAc,YAAa,cAAe,iBACzD,oBAGIyc,EAAmB5d,EAAMxQ,SAAQ,eAC/BouB,EAAmB,UAEzB9Y,EAAK/0G,SAAQ,YAAA6yG,IACLqa,EAAaO,EAwFzB,SAASK,EAAiBjb,EAAKwa,EAAgB3S,GAAAA,GACzC2S,EAAexa,EAAIt+D,IAAK,OAALA,EACd,IAGHkhE,EAAUiF,EAAW7H,GAAAA,GAEvB4C,GAAWA,EAAQ1jH,OAAQ,KACzBg8H,GAAAA,EACAC,GAAAA,EAAe,OAEnBvY,EAAQz1G,SAAQ,YAEVguH,IAAiBD,IAIjBD,EAAiB1J,EAAQiJ,EAAgB3S,GAC3CsT,GAAAA,EAEAD,GAAAA,EAAsB,MAGnBA,KAA6BC,GAAe,aAG9C,CA1BT,CAvF2Bnb,EAAKwa,EAAgB3S,KACpC2S,EAAexa,EAAIt+D,IACzBs+D,EAAIqa,aAAeA,EACnBra,EAAIsa,eAAgC,OAAfD,EAEjBA,GACFW,EAAiB37H,KAAK2gH,EAAAA,IAInBgb,CAAAA,GACN,CAAC9Y,EAAM0Y,EAAeJ,EAAgB3S,IAErC0S,EAAoBhQ,QACtB5qH,OAAO0uC,KAAKkiF,GAAoBrxH,QAAUS,OAAO0uC,KAAKmsF,GAAgBt7H,QAGpEu7H,EAAwBF,EAExBA,GACE56H,OAAO0uC,KAAKkiF,GAAoBt7F,MAAK,YAAAysB,OAAO84E,EAAe94E,EAAAA,MAC7D64E,GAAAA,GAICA,GACC9D,GAAQA,EAAKv3H,QAAUu3H,EAAKxhG,MAAK,gBAAGysB,EAAAA,EAAAA,GAAAA,OAAU84E,EAAe94E,EAAAA,MAC/D+4E,GAAAA,GAAwB,IAItBW,EAA2Btc,EAAaic,GAE9C/b,GAAuB,WACjBoc,KACFlxB,EAAS,CAAEp8F,KAAMkvG,EAAQyc,mBAAAA,GAE1B,CAACvvB,EAAUnhG,IAAAA,IAER2wH,EAAwBtc,EAAM9Q,aAClC,YAAA1qG,OAASsoG,EAAS,CAAEp8F,KAAMkvG,EAAQ0c,sBAAuB93H,MAAAA,GAAAA,GACzD,CAACsoG,IAGG0vB,EAA4Bxc,EAAM9Q,aACtC,YAAA1qG,OAASsoG,EAAS,CAAEp8F,KAAMkvG,EAAQ4c,0BAA2Bh4H,MAAAA,GAAAA,GAC7D,CAACsoG,IAGGyvB,EAAoBvc,EAAM9Q,aAC9B,SAAC5qD,EAAI9/C,GAAAA,OAAUsoG,EAAS,CAAEp8F,KAAMkvG,EAAQ2c,kBAAmBj4E,GAAAA,EAAI9/C,MAAAA,GAAAA,GAC/D,CAACsoG,IAGGid,EAAcrI,EAAazjB,GAE3B2+B,EAAgCnc,EACpCoJ,IAAW+S,8BACX,CAAE3+B,SAAU8rB,MAGR+S,EAAoCrc,EACxCoJ,IAAWiT,kCACX,CAAE7+B,SAAU8rB,MAGdxnH,OAAOuB,OAAOm6F,EAAU,CACtB2/B,iBAAAA,EACAT,kBAAAA,EACAE,sBAAAA,EACAd,kBAAAA,EACAD,sBAAAA,EACAM,8BAAAA,EACAE,kCAAAA,EACAN,0BAAAA,GAAAA,CAIJ,SAAS7U,GAAW/E,EAAAA,GAAAA,IAAO3kB,EAAAA,EAAAA,SACzB2kB,EAAI2Z,kBAAoB,YAAAhpE,OAAO0qC,EAASs+B,kBAAkB3Z,EAAIt+D,GAAIiP,EAAAA,EAElEqvD,EAAI8Z,0BAA4Bjc,EAC9BxiB,EAAS4rB,WAAW6S,0BACpB,CAAEz+B,SAAUA,EAAU2kB,IAAAA,GAAAA,CCjU1B,IAAMqb,GAAiC,SAAArb,GAAAA,MAAQ,CAAC,CAAD,EACzCsb,GAAkC,SAAAvX,GAAAA,MAAS,CAAC,CAAD,EAGjD/G,EAAQue,YAAc,cACtBve,EAAQwe,aAAe,eACvBxe,EAAQye,cAAgB,oBAEXC,GAAc,SAAAtvE,GACzBA,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAM04D,YAAYzlH,KAAKylH,IACvB14D,EAAM24D,WAAW1lH,KAAK0lH,GAAAA,EAKxB,SAASmB,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,IAAAA,EAKzCA,EAHFsgC,wBAAAA,OAAAA,IAAAA,EAA0BN,GAAAA,EAAAA,EAGxBhgC,EAFFugC,yBAAAA,OAAAA,IAAAA,EAA2BN,GAAAA,EAC3BvS,EACE1tB,EADF0tB,SAAAA,GAGEjf,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExB4e,SAAU,CAAC,GACRh2B,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQye,cAAe,OAAfA,EAAAA,CAAAA,EAErB51B,EAAAA,CACHg2B,SAAUxgC,EAASqrB,aAAamV,UAAY,CAAC,IAAD,GAI5C/xB,EAAOh8F,OAASkvG,EAAQue,YAAa,OAC/BvR,EAAiBlgB,EAAjBkgB,MAAOpoH,EAAUkoG,EAAVloG,MAETk6H,OAAAA,IACGj2B,EAAMg2B,SAAS7R,GAClBnkB,EAAMg2B,SAAS7R,GACf2R,EAAwB5S,EAASiB,IAAAA,OAAAA,EAAAA,CAAAA,EAGlCnkB,EAAAA,CACHg2B,SAAU,EAAVA,CAAAA,EACKh2B,EAAMg2B,UAAAA,EAAAA,CAAAA,EAAAA,EACR7R,GAAQnL,EAAiBj9G,EAAOk6H,GAAAA,KAAAA,CAAAA,GAKnChyB,EAAOh8F,OAASkvG,EAAQwe,aAAc,OAAAj3H,EAAA5B,EAAA2B,EAAAomG,EAChCsf,EAA2BlgB,EAA3BkgB,MAAOrD,EAAoB7c,EAApB6c,SAAU/kH,EAAUkoG,EAAVloG,MAEnBk6H,OAAAA,IACGj2B,EAAMg2B,SAAS7R,GAClBnkB,EAAMg2B,SAAS7R,GACf2R,EAAwB5S,EAASiB,IAEjC+R,OAAAA,KAC0C,MAAvCD,GAAAA,OAAAA,EAAAA,EAAaE,gBAAbF,EAAAG,EAAyBtV,IAC5BmV,EAAYE,UAAUrV,GACtBiV,EAAAA,OAAAA,EACE7S,EAASiB,KAAAA,OAAAA,EAATkS,EAAiB5S,YAARU,EAATmS,EAAwBt3H,MAAK,YAAAk/G,OAAQA,EAAK5E,OAAOz9D,KAAOilE,CAAAA,KAAAA,OAAAA,EAAAA,CAAAA,EAI3D9gB,EAAAA,CACHg2B,SAAU,EAAVA,CAAAA,EACKh2B,EAAMg2B,UAAAA,EAAAA,CAAAA,EAAAA,EACR7R,GAAAA,EAAAA,CAAAA,EACI8R,EAAAA,CACHE,UAAW,EAAXA,CAAAA,EACMF,EAAYE,WAAa,CAAC,GAAD,OAC5BrV,GAAW9H,EAAiBj9G,EAAOm6H,GAAAA,MAAAA,KAAAA,CAAAA,CAQhD,SAASjX,GAAYzpB,GAAAA,IAAAA,EACkCA,EAA7C+gC,kBAAAA,OAAAA,IAAAA,GAAAA,EAA0BrzH,EAAmBsyF,EAAnBtyF,KAAMmhG,EAAa7O,EAAb6O,SAElCqxB,EAAcne,EAAM9Q,aACxB,SAAC0d,EAAOpoH,GAAAA,OACNsoG,EAAS,CACPp8F,KAAMkvG,EAAQue,YACdvR,MAAAA,EACApoH,MAAAA,GAAAA,GAEJ,CAACsoG,IAGGsxB,EAAepe,EAAM9Q,aACzB,SAAC0d,EAAOrD,EAAU/kH,GAAAA,OAChBsoG,EAAS,CACPp8F,KAAMkvG,EAAQwe,aACdxR,MAAAA,EACArD,SAAAA,EACA/kH,MAAAA,GAAAA,GAEJ,CAACsoG,IAGGmyB,EAAuBvd,EAAasd,GAE1Cpd,GAAuB,WACjBqd,KACFnyB,EAAS,CAAEp8F,KAAMkvG,EAAQye,eAAAA,GAE1B,CAAC1yH,IAEJpJ,OAAOuB,OAAOm6F,EAAU,CACtBkgC,YAAAA,EACAC,aAAAA,GAAAA,CAIJ,SAASzW,GAAW/E,EAAAA,GAAAA,IAAO3kB,EAAAA,EAAAA,SAAAA,EAKrBA,EAHFsgC,wBAAAA,OAAAA,IAAAA,EAA0BN,GAAAA,EAAAA,EAGxBhgC,EAFFugC,yBAAAA,OAAAA,IAAAA,EAA2BN,GAAAA,EAClBO,EACPxgC,EADFwK,MAASg2B,SAGP7b,IACFA,EAAIna,WAAAA,IACKg2B,EAAS7b,EAAIt+D,IAChBm6E,EAAS7b,EAAIt+D,IACbi6E,EAAwB3b,GAE9BA,EAAIsc,SAAW,YAAAx2B,OACNzK,EAASkgC,YAAYvb,EAAIt+D,GAAIokD,EAAAA,EAGtCka,EAAIsJ,MAAMn8G,SAAQ,YACX6yG,EAAIna,MAAMm2B,YACbhc,EAAIna,MAAMm2B,UAAY,CAAC,GAGzBjY,EAAKle,WAAAA,IACIma,EAAIna,MAAMm2B,UAAUjY,EAAK5E,OAAOz9D,IACnCs+D,EAAIna,MAAMm2B,UAAUjY,EAAK5E,OAAOz9D,IAChCk6E,EAAyB7X,GAE/BA,EAAKuY,SAAW,YAAAx2B,OACPzK,EAASmgC,aAAaxb,EAAIt+D,GAAIqiE,EAAK5E,OAAOz9D,GAAIokD,EAAAA,CAAAA,IAAAA,CAzI7D41B,GAAYjd,WAAa,cClBzBzB,EAAQuf,iBAAmB,mBAC3Bvf,EAAQwf,eAAiB,qBAEZC,GAAiB,SAAArwE,GAC5BA,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAMu4D,mBAAmBtlH,MAAK,SAAC6rG,EAAAA,GAAAA,IAAQ7P,EAAAA,EAAAA,SAAAA,MAAAA,GAAAA,OAC1B6P,EAAAA,CAAM7P,EAASwK,MAAM62B,aAAAA,IAElCtwE,EAAMs4D,eAAerlH,KAAKqlH,IAC1Bt4D,EAAM04D,YAAYzlH,KAAKylH,GAAAA,EAKzB,SAASoB,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,OACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAAA,EAAAA,CAExByf,YAAa,IACV72B,GAIHiE,EAAOh8F,OAASkvG,EAAQuf,iBAAAA,EAAAA,CAAAA,EAErB12B,EAAAA,CACH62B,YAAarhC,EAASqrB,aAAagW,aAAe,KAIlD5yB,EAAOh8F,OAASkvG,EAAQwf,eAAAA,EAAAA,CAAAA,EAErB32B,EAAAA,CACH62B,YAAa7d,EAAiB/U,EAAO4yB,YAAa72B,EAAM62B,oBAAAA,CAAAA,CAK9D,SAAShY,GACPjhC,EAAAA,GAAAA,IAGai5C,EAAAA,EADXrhC,SACEwK,MAAS62B,YAAAA,IAKRA,IAAgBA,EAAYx9H,OAAQ,OAChCukF,EAAAA,IAAAA,IAGHk5C,EAAAA,GAAAA,OAAsBD,GAGtBE,EAAAA,GAAAA,OAAkBn5C,GAGlBo5C,EAAiB,oBAIfC,EAAiBH,EAAgBvlH,QACjC2lH,EAAaH,EAAYje,WAAU,YAAAt+G,OAAKA,EAAEqhD,KAAOo7E,CAAAA,IACnDC,GAAc,GAChBF,EAAex9H,KAAKu9H,EAAYzkH,OAAO4kH,EAAY,GAAG,KAJnDH,EAAY19H,QAAUy9H,EAAgBz9H,QAAAA,IAAAA,MAAAA,GAAAA,OASlC29H,EAAmBD,EAAAA,CAGhC,SAAS9X,GAAYzpB,GAAAA,IACX6O,EAAa7O,EAAb6O,SAER7O,EAASmhC,eAAiBpf,EAAM9Q,aAC9B,YAAAowB,OACSxyB,EAAS,CAAEp8F,KAAMkvG,EAAQwf,eAAgBE,YAAAA,GAAAA,GAElD,CAACxyB,GAAAA,CAlELuyB,GAAehe,WAAa,iBCH5BpB,EAAcuL,WAAY,EAG1B5L,EAAQggB,oBAAsB,sBAC9BhgB,EAAQigB,eAAiB,iBACzBjgB,EAAQkgB,mBAAqB,qBAC7BlgB,EAAQmgB,YAAc,kBAETC,GAAmB,SAAAhxE,GAC9BA,EAAMixE,gBAAkB,CAACC,IACzBlxE,EAAMg5D,eAAe/lH,KAAK,CACxB+tB,MAAO,CACLpC,SAAU,cAGdohC,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAM04D,YAAYzlH,KAAKylH,IACvB14D,EAAMy4D,4BAA4BxlH,KAAKwlH,GAAAA,EAGnCyY,GAAyB,SAACn3B,EAAAA,GAAAA,IAAS9K,EAAAA,EAAAA,SAAUgtB,EAAAA,EAAAA,OACzCne,EAAa7O,EAAb6O,SAEFqzB,EAAgB,SAACp7H,EAAGkmH,GAAAA,IACpBmV,GAAAA,EAAe,GACJ,eAAXr7H,EAAE2L,KAAuB,IAEvB3L,EAAEyyF,SAAWzyF,EAAEyyF,QAAQ11F,OAAS,EAAG,OAGvCs+H,GAAAA,CAAe,KAObC,EACAC,EALEC,EA8OV,SAAwBtV,GAAAA,IAChBuV,EAAc,UACE,SAAhBC,EAAgBxV,GAChBA,EAAO5kC,SAAW4kC,EAAO5kC,QAAQvkF,QACnCmpH,EAAO5kC,QAAQ90E,IAAIkvH,GAErBD,EAAYv+H,KAAKgpH,EAAAA,CAJG,CAMRA,GACPuV,CAAAA,CATT,CA/O2CvV,GACA15G,KAAI,YAAAtO,MAAK,CAACA,EAAEqhD,GAAIrhD,EAAEooH,WAAAA,IAEnD13B,EAAUysC,EAAeh4H,KAAKqX,MAAM1a,EAAEyyF,QAAQ,GAAG7D,SAAW5uF,EAAE4uF,QAK9D+sC,EAAc,WAClBhpG,OAAOipG,qBAAqBN,GAC5BA,EAAM,KACNvzB,EAAS,CAAEp8F,KAAMkvG,EAAQkgB,oBAAAA,EAErBc,EAAe,WACnBlpG,OAAOipG,qBAAqBN,GAC5BA,EAAM,KACNvzB,EAAS,CAAEp8F,KAAMkvG,EAAQigB,eAAgBlsC,QAAS2sC,GAAAA,EAG9CO,EAA2C,SAAAC,GAC/CR,EAAoBQ,EACfT,IACHA,EAAM3oG,OAAOqpG,sBAAsBH,GAAAA,EAIjCI,EAAoB,CACxBC,MAAO,CACLC,UAAW,YACXC,YAAa,SAAAp8H,GAAAA,OAAK87H,EAAyC97H,EAAE4uF,QAAAA,EAC7DytC,QAAS,UACTC,UAAW,SAAAt8H,GACTkD,SAASuiF,oBACP,YACAw2C,EAAkBC,MAAME,aAE1Bl5H,SAASuiF,oBACP,UACAw2C,EAAkBC,MAAMI,WAE1BX,GAAAA,GAGJY,MAAO,CACLJ,UAAW,YACXC,YAAa,SAAAp8H,GAAAA,OACPA,EAAEkuF,aACJluF,EAAEwtF,iBACFxtF,EAAEssF,mBAEJwvC,EAAyC97H,EAAEyyF,QAAQ,GAAG7D,UAAAA,CAC/C,EAETytC,QAAS,WACTC,UAAW,SAAAt8H,GACTkD,SAASuiF,oBACPw2C,EAAkBM,MAAMJ,UACxBF,EAAkBM,MAAMH,aAE1Bl5H,SAASuiF,oBACPw2C,EAAkBM,MAAMF,QACxBJ,EAAkBM,MAAMH,aAE1BT,GAAAA,IAKAa,EAASnB,EACXY,EAAkBM,MAClBN,EAAkBC,MAChBO,IjBkLH,cAE2B,kBAArBzb,EAAgC,OAAOA,EAAAA,IAE9C0b,GAAAA,EAAY,QAERrwH,EAAU,sBAEZqwH,GAAAA,GAAY,CACL,GAIX/pG,OAAO6Z,iBAAiB,OAAQ,KAAMngC,GACtCsmB,OAAO8yD,oBAAoB,OAAQ,KAAMp5E,EAE7B,CADZ,MAAOuuG,GACP8hB,GAAAA,CAAY,QAEd1b,EAAmB0b,CAAAA,CAlBd,IiBjLC,CAAE9iC,SAAS,GAEf12F,SAASspC,iBACPgwF,EAAOL,UACPK,EAAOJ,YACPK,GAEFv5H,SAASspC,iBACPgwF,EAAOH,QACPG,EAAOF,UACPG,GAGF10B,EAAS,CACPp8F,KAAMkvG,EAAQggB,oBACdrW,SAAU0B,EAAO3mE,GACjBo9E,YAAazW,EAAOI,WACpBkV,eAAAA,EACA5sC,QAAAA,GAAAA,EAAAA,MAIG,CACLoV,EACA,CACE44B,YAAa,SAAA58H,GAAAA,OAAKA,EAAE0tF,WAAa0tC,EAAcp7H,EAAGkmH,EAAAA,EAClD2W,aAAc,SAAA78H,GAAAA,OAAKA,EAAE0tF,WAAa0tC,EAAcp7H,EAAGkmH,EAAAA,EACnDj7F,MAAO,CACLqzF,OAAQ,cAEVwe,WAAW,EACX5b,KAAM,eAOZ,SAAS6C,GAAQrgB,EAAOiE,GAAAA,GAClBA,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExBggB,eAAgB,CACdiC,aAAc,CAAC,IAEdr5B,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQmgB,YAAa,OAAbA,EAAAA,CAAAA,EAErBt3B,EAAAA,CACHo3B,eAAgB,CACdiC,aAAc,CAAC,KAAD,GAKhBp1B,EAAOh8F,OAASkvG,EAAQggB,oBAAqB,KACvCjsC,EAAmD+Y,EAAnD/Y,QAAS41B,EAA0C7c,EAA1C6c,SAAUmY,EAAgCh1B,EAAhCg1B,YAAanB,EAAmB7zB,EAAnB6zB,eAAAA,OAAAA,EAAAA,CAAAA,EAGnC93B,EAAAA,CACHo3B,eAAgB,EAAhBA,CAAAA,EACKp3B,EAAMo3B,eAAAA,CACT38E,OAAQywC,EACR4sC,eAAAA,EACAmB,YAAAA,EACAK,iBAAkBxY,KAAAA,CAAAA,GAKpB7c,EAAOh8F,OAASkvG,EAAQigB,eAAgB,KAClClsC,EAAY+Y,EAAZ/Y,QAAAA,EAC6C8U,EAAMo3B,eAAnD38E,EAAAA,EAAAA,OAAQw+E,EAAAA,EAAAA,YAAAA,EAAAA,EAAanB,eAGvByB,GADSruC,EAAUzwC,GACSw+E,EAE5BO,EAAkB,CAAC,EAAD,kBALsB,MAO/BlyH,SAAQ,gBAAEmyH,EAAAA,EAAAA,GAAUC,EAAAA,EAAAA,GACjCF,EAAgBC,GAAY95H,KAAKC,IAC/B85H,EAAcA,EAAcH,EAC5B,WAKCv5B,EAAAA,CACHo3B,eAAgB,EAAhBA,CAAAA,EACKp3B,EAAMo3B,eAAAA,CACTiC,aAAc,EAAdA,CAAAA,EACKr5B,EAAMo3B,eAAeiC,aAAAA,CAAAA,EACrBG,MAAAA,CAAAA,OAMPv1B,EAAOh8F,OAASkvG,EAAQkgB,mBAAAA,EAAAA,CAAAA,EAErBr3B,EAAAA,CACHo3B,eAAgB,EAAhBA,CAAAA,EACKp3B,EAAMo3B,eAAAA,CACT38E,OAAQ,KACR6+E,iBAAkB,gBAtE1B/B,GAAiB3e,WAAa,mBA4E9B,IAAMoG,GAA8B,SAAAxpB,GAAAA,IAEhC2rB,EAIE3rB,EAJF2rB,YACAwY,EAGEnkC,EAHFmkC,gBACAvY,EAEE5rB,EAFF4rB,SACSgW,EACP5hC,EADFwK,MAASo3B,eAGL9V,EAAcrI,EAAazjB,GAEjC2rB,EAAY75G,SAAQ,YAAAk7G,IACZO,EAAY9G,GAAAA,IAChBuG,EAAOmX,sBAAAA,GAAmC1wH,IAC1C0wH,QAAAA,GAAmC1wH,GAIrCu5G,EAAOO,UAAYA,EACnBP,EAAOnkH,MACL+4H,EAAeiC,aAAa7W,EAAO3mE,KACnC2mE,EAAOvH,eACPuH,EAAOnkH,MACTmkH,EAAOoX,WAAaxC,EAAekC,mBAAqB9W,EAAO3mE,GAE3DknE,IACFP,EAAOgV,gBAAkBxf,EAAeoJ,IAAWoW,gBAAiB,CAClEhiC,SAAU8rB,IACVkB,OAAAA,IAAAA,GAAAA,EAMR,SAASvD,GAAYzpB,GAAAA,IACXkjB,EAAuDljB,EAAvDkjB,QAASrU,EAA8C7O,EAA9C6O,SAAAA,EAA8C7O,EAApCqkC,gBAAAA,OAAAA,IAAAA,GAAAA,EAAwBj8C,EAAY4X,EAAZ5X,QAEnD66B,EAAkBC,EAAS,CAAC,qBAAsB,wBAE5CohB,EAAqB7gB,EAAa4gB,GACxC1gB,GAAuB,WACjB2gB,KACFz1B,EAAS,CAAEp8F,KAAMkvG,EAAQmgB,aAAAA,GAE1B,CAAC15C,IAAAA,IAEEm8C,EAAgBxiB,EAAM9Q,aAC1B,kBAAMpC,EAAS,CAAEp8F,KAAMkvG,EAAQmgB,aAAAA,GAC/B,CAACjzB,IAGHvqG,OAAOuB,OAAOm6F,EAAU,CACtBukC,cAAAA,GAAAA,CAAAA,ICzREC,GAAa,CACjB70G,SAAU,WACV/mB,IAAK,GAGM67H,GAAoB,SAAA1zE,GAC/BA,EAAM64D,kBAAkB5lH,KAAK0gI,IAC7B3zE,EAAMk5D,YAAYjmH,KAAK0gI,IACvB3zE,EAAM84D,oBAAoB7lH,KAAK0gI,IAC/B3zE,EAAM+4D,oBAAoB9lH,KAAK0gI,IAE/B3zE,EAAMg5D,eAAe/lH,MAAK,SAAC8mG,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,MAAa,CAC/ChZ,EACA,CACE/4E,MAAO,EAAPA,CAAAA,EACKyyG,GAAAA,CACH77H,KAASm7G,EAAOoJ,UAAAA,KAChBrkH,MAAUi7G,EAAOsJ,WAAAA,QAAAA,IAKvBr8D,EAAMm5D,aAAalmH,MAAK,SAAC8mG,EAAAA,GAAAA,IAAS4d,EAAAA,EAAAA,KAAAA,MAAW,CAC3C5d,EACA,CACE/4E,MAAO,EAAPA,CAAAA,EACKyyG,GAAAA,CACH77H,KAAS+/G,EAAK5E,OAAOoJ,UAAAA,KACrBrkH,MAAU6/G,EAAK5E,OAAOsJ,WAAAA,QAAAA,IAK5Br8D,EAAMi5D,eAAehmH,MAAK,SAAC8mG,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,MAAa,CAC/ChZ,EACA,CACE/4E,MAAO,EAAPA,CAAAA,EACKyyG,GAAAA,CACH77H,KAASm7G,EAAOoJ,UAAAA,KAChBrkH,MAAUi7G,EAAOsJ,WAAAA,QAAAA,GAAAA,EAMzBqX,GAAkBrhB,WAAa,oBAE/B,IAAMshB,GAAe,SAAC55B,EAAAA,GAAAA,MAAwB,CAC5CA,EACA,CACE/4E,MAAO,CACLpC,SAAU,WACV9mB,MAAO,EALkBm3F,SAKN2kC,kBAAAA,OAAAA,ECpDnBH,GAAa,CACjB9xG,QAAS,eACTkyG,UAAW,cAGPF,GAAe,SAAC55B,EAAAA,GAAAA,MAAwB,CAC5CA,EACA,CACE/4E,MAAO,CACLW,QAAS,OACT7pB,MAAO,EALkBm3F,SAKN2kC,kBAAAA,OAAAA,EAKZE,GAAiB,SAAA9zE,GAC5BA,EAAMk5D,YAAYjmH,KAAK0gI,IACvB3zE,EAAM84D,oBAAoB7lH,KAAK0gI,IAC/B3zE,EAAM+4D,oBAAoB9lH,KAAK0gI,IAE/B3zE,EAAMg5D,eAAe/lH,MAAK,SAAC8mG,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,MAAa,CAC/ChZ,EACA,CACE/4E,MAAO,EAAPA,CAAAA,EACKyyG,GAAAA,CACH37H,MAAUi7G,EAAOsJ,WAAAA,QAAAA,IAKvBr8D,EAAMm5D,aAAalmH,MAAK,SAAC8mG,EAAAA,GAAAA,IAAS4d,EAAAA,EAAAA,KAAAA,MAAW,CAC3C5d,EACA,CACE/4E,MAAO,EAAPA,CAAAA,EACKyyG,GAAAA,CACH37H,MAAU6/G,EAAK5E,OAAOsJ,WAAAA,QAAAA,IAK5Br8D,EAAMi5D,eAAehmH,MAAK,SAAC8mG,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,MAAa,CAC/ChZ,EACA,CACE/4E,MAAO,EAAPA,CAAAA,EACKyyG,GAAAA,CACH37H,MAAUi7G,EAAOsJ,WAAAA,QAAAA,GAAAA,EC7ClB,SAAS0X,GAAc/zE,GAC5BA,EAAM44D,cAAc3lH,KAAK2lH,IACzB54D,EAAMk5D,YAAYjmH,KAAK0gI,IACvB3zE,EAAM84D,oBAAoB7lH,KAAK0gI,IAC/B3zE,EAAM+4D,oBAAoB9lH,KAAK0gI,IAC/B3zE,EAAMg5D,eAAe/lH,KAAK+lH,IAC1Bh5D,EAAMm5D,aAAalmH,KAAKkmH,IACxBn5D,EAAMi5D,eAAehmH,KAAKgmH,GAAAA,CD4C5B6a,GAAezhB,WAAa,iBCzC5B0hB,GAAc1hB,WAAa,gBAE3B,IAAMuG,GAAgB,SAAC7e,EAAAA,GAAAA,MAAwB,CAC7CA,EACA,CACE/4E,MAAO,CACLmwF,SAAU,EAJgBliB,SAIJ+kC,qBAAAA,OAAAA,EAKtBL,GAAe,SAAC55B,EAAAA,GAAAA,MAAwB,CAC5CA,EACA,CACE/4E,MAAO,CACLW,QAAS,OACT21D,KAAM,WACN65B,SAAU,EANeliB,SAMH+kC,qBAAAA,OAAAA,EAKtBhb,GAAiB,SAACjf,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,MAAa,CAC5ChZ,EACA,CACE/4E,MAAO,CACL6yG,UAAW,aACXv8C,KAAMy7B,EAAOwJ,eACNxJ,EAAOwJ,eAAAA,eAAAA,EAEdpL,SAAa4B,EAAOqJ,cAAAA,KACpBtkH,MAAUi7G,EAAOsJ,WAAAA,OAAAA,EAKjBlD,GAAe,SAACpf,EAAAA,GAAAA,IAAS4d,EAAAA,EAAAA,KAAAA,MAAW,CACxC5d,EACA,CACE/4E,MAAO,CACL6yG,UAAW,aACXv8C,KAASqgC,EAAK5E,OAAOwJ,eAAAA,UACrBpL,SAAawG,EAAK5E,OAAOqJ,cAAAA,KACzBtkH,MAAU6/G,EAAK5E,OAAOsJ,WAAAA,OAAAA,EAKtBpD,GAAiB,SAAClf,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,MAAa,CAC5ChZ,EACA,CACE/4E,MAAO,CACL6yG,UAAW,aACXv8C,KAAMy7B,EAAOwJ,eACNxJ,EAAOwJ,eAAAA,eAAAA,EAEdpL,SAAa4B,EAAOqJ,cAAAA,KACpBtkH,MAAUi7G,EAAOsJ,WAAAA,OAAAA,EC3DhB,SAAS4X,GAAcj0E,GAC5BA,EAAM83D,cAAc7kH,KAAK6mH,IACzB95D,EAAM44D,cAAc3lH,KAAK2lH,IACzB54D,EAAMg5D,eAAe/lH,KAAK+lH,IAC1Bh5D,EAAMk5D,YAAYjmH,KAAKimH,GAAAA,CATzBtI,EAAQggB,oBAAsB,sBAC9BhgB,EAAQigB,eAAiB,iBACzBjgB,EAAQkgB,mBAAqB,qBAC7BlgB,EAAQmgB,YAAc,cAStBkD,GAAc5hB,WAAa,gBAE3B,IAAMuG,GAAgB,SAAC7e,EAAAA,GAAAA,IAAS9K,EAAAA,EAAAA,SAAAA,MAYvB,CACL8K,EACA,CACE/4E,MAAO,CACLW,QAAS,OACTuyG,oBAhBsBjlC,EAASqpB,eAAe/1G,KAAI,YAAAwwG,IAAAA,EAAAA,OAClD9jB,EAASwK,MAAM06B,WAAWrB,aAAa/f,EAAOz9D,IACtC25C,EAASwK,MAAM06B,WAAWrB,aAAa/f,EAAOz9D,IAAAA,MAAAA,OAAAA,EAItD25C,EAASwK,MAAMo3B,qBAAAA,EAAfuD,EAA+BrB,kBACvB9jC,EAASwK,MAAM06B,WAAWE,YAAYthB,EAAOz9D,IAAAA,KAC7B,iBAAjBy9D,EAAOj7G,MAA8Bi7G,EAAOj7G,MAAAA,KAChDi7G,EAAOj7G,KAAAA,IAO+BlE,KAAK,OAALA,EAM3ColH,GAAiB,SAACjf,EAAAA,GAAAA,IAASgZ,EAAAA,EAAAA,OAAAA,MAAa,CAC5ChZ,EACA,CACEzkD,GAAI,eAAey9D,EAAOz9D,GAC1Bt0B,MAAO,CACLpC,SAAU,SACVq5D,WAAY,QAAQ86B,EAAOsE,0BAAAA,EAK3B6B,GAAc,SAACnf,EAAAA,GAAAA,IAAS6Z,EAAAA,EAAAA,IAAAA,OACxBA,EAAIyC,WACC,CACLtc,EACA,CACE/4E,MAAO,CACLi3D,WAAY,QAAO27B,EAAIsJ,MAAMpqH,OAAS,MAKvC,CAACinG,EAAO,CAAC,EAAD,EAGjB,SAAS+f,GAAQrgB,EAAOiE,EAAQ2c,EAAeprB,GAAAA,GACzCyO,EAAOh8F,OAASkvG,EAAQC,KAAM,OAANA,EAAAA,CAExBsjB,WAAY,CACVrB,aAAc,CAAC,IAEdr5B,GAAAA,GAIHiE,EAAOh8F,OAASkvG,EAAQmgB,YAAa,OAAbA,EAAAA,CAAAA,EAErBt3B,EAAAA,CACH06B,WAAY,CACVrB,aAAc,CAAC,KAAD,GAKhBp1B,EAAOh8F,OAASkvG,EAAQggB,oBAAqB,KACvCrW,EAA6B7c,EAA7B6c,SAAUgX,EAAmB7zB,EAAnB6zB,eACZmB,EAAc4B,GAAgB/Z,GAAAA,QAAAA,IAEhCmY,EAA2B,KACvB2B,EAAcplC,EAASqpB,eAAep7F,QAC1C,SAAC4B,EAAKi0F,GAAAA,IAAAA,EAAAA,OAAAA,EAAAA,CAAAA,EACDj0F,IAAAA,EAAAA,CAAAA,GACFi0F,EAAOz9D,IAAKg/E,GAAgBvhB,EAAOz9D,IAAAA,GAAAA,GAEtC,CAAC,GAEGi/E,EAAYtlC,EAASqpB,eAAep7F,QACxC,SAAC4B,EAAKi0F,GAAAA,IAAAA,EAAAA,OAAAA,EAAAA,CAAAA,EACDj0F,IAAAA,EAAAA,CAAAA,GACFi0F,EAAOz9D,IAAKy9D,EAAO5B,SAAAA,GAAAA,GAEtB,CAAC,GAEGqjB,EAAYvlC,EAASqpB,eAAep7F,QACxC,SAAC4B,EAAKi0F,GAAAA,IAAAA,EAAAA,OAAAA,EAAAA,CAAAA,EACDj0F,IAAAA,EAAAA,CAAAA,GACFi0F,EAAOz9D,IAAKy9D,EAAO3B,SAAAA,GAAAA,GAEtB,CAAC,GAGGqjB,EAAqBlD,EAAehvH,KAAI,gBAAE2wH,EAAAA,EAAAA,GAAAA,MAAc,CAC5DA,EACAoB,GAAgBpB,GAAAA,IAAAA,OAAAA,EAAAA,CAAAA,EAIbz5B,EAAAA,CACH06B,WAAY,EAAZA,CAAAA,EACK16B,EAAM06B,WAAAA,CACTE,YAAAA,EACAE,UAAAA,EACAC,UAAAA,EACAC,mBAAAA,EACA/B,YAAAA,KAAAA,CAAAA,OAIGj5B,CAAAA,CAAAA,GAIPiE,EAAOh8F,OAASkvG,EAAQigB,eAAgB,KAClClsC,EAAY+Y,EAAZ/Y,QACAzwC,EAAWulD,EAAMo3B,eAAjB38E,OAAAA,EAMJulD,EAAM06B,WAJRzB,EAAAA,EAAAA,YACA6B,EAAAA,EAAAA,UACAC,EAAAA,EAAAA,UAAAA,EAAAA,EACAC,mBAIIzB,GADSruC,EAAUzwC,GACSw+E,EAE5BO,EAAkB,CAAC,EAAD,kBAND,MAQJlyH,SAAQ,gBAAEmyH,EAAAA,EAAAA,GAAUC,EAAAA,EAAAA,GACrCF,EAAgBC,GAAY95H,KAAK0S,IAC/B1S,KAAKC,IACHk7H,EAAUrB,GACVC,EAAcA,EAAcH,GAE9BwB,EAAUtB,GAAAA,IAAAA,EAAAA,CAAAA,EAKTz5B,EAAAA,CACH06B,WAAY,EAAZA,CAAAA,EACK16B,EAAM06B,WAAAA,CACTrB,aAAc,EAAdA,CAAAA,EACKr5B,EAAM06B,WAAWrB,aAAAA,CAAAA,EACjBG,MAAAA,CAAAA,OAMPv1B,EAAOh8F,OAASkvG,EAAQkgB,mBAAAA,EAAAA,CAAAA,EAErBr3B,EAAAA,CACH06B,WAAY,EAAZA,CAAAA,EACK16B,EAAM06B,WAAAA,CACTE,YAAa,CAAC,EACdE,UAAW,CAAC,EACZC,UAAW,CAAC,WAAD,EAMnB,SAASF,GAAgB/Z,GAAAA,IAAAA,EACjBziH,EAAAA,OAAAA,EAAQmB,SAASy7H,eAAe,eAAena,SAAAA,EAAvCoa,EAAoDp7H,YAAAA,QAAAA,IAE9DzB,EAAAA,OACKA,CAAAA,CAAAA,EAAAA,0BAAAA,GAAAA,EAAAA,QAAAA,EAAAA,EAAAA,cAAAA,EAAAA,EAAAA,iBAAAA,GAAAA,EAAAA,iBAAAA,GAAAA,EAAAA,gBAAAA,EAAAA,EAAAA,cAAAA,EAAAA,EAAAA,kBAAAA,EAAAA,EAAAA,WAAAA,EAAAA,EAAAA,iBAAAA,EAAAA,EAAAA,UAAAA,EAAAA,EAAAA,eAAAA,EAAAA,EAAAA,aAAAA,EAAAA,EAAAA,YAAAA,EAAAA,EAAAA,oBAAAA,EAAAA,EAAAA,kBAAAA,GAAAA,EAAAA,iBtBxBJ,SAA0B88H,EAAWC,QAAAA,IAAAA,IAAAA,EAAc,OAClDC,EAAc9jB,EAAMtQ,OAAO,CAAC,GAE5Bq0B,EAAeriB,EAAakiB,GAC5BI,EAAiBtiB,EAAamiB,GAAAA,OAE7B7jB,EAAM9Q,YAAY,WAAZA,IAAAA,EAAAA,EAAAA,IAAAA,MACX,mBAAAjrG,EAAAwC,EAAAzC,EAAAA,UAAA,gFAAUkZ,EAAAA,IAAAA,MAAAA,GAAAA,EAAAA,EAAAA,EAAAA,EAAAA,IAAAA,EAAAA,GAAAA,EAAAA,GAAAA,OACH4mH,EAAYtzH,QAAQyzH,UACvBH,EAAYtzH,QAAQyzH,QAAU,IAAIv/H,SAAQ,SAACD,EAASE,GAClDm/H,EAAYtzH,QAAQ/L,QAAUA,EAC9Bq/H,EAAYtzH,QAAQ7L,OAASA,CAAAA,KAI7Bm/H,EAAYtzH,QAAQmhC,SACtByuD,aAAa0jC,EAAYtzH,QAAQmhC,SAGnCmyF,EAAYtzH,QAAQmhC,QAAUZ,WAAW,EAAXA,IAAAA,MAAW,4FAChC+yF,EAAYtzH,QAAQmhC,QAAAA,EAAAA,KAAAA,EAAAA,EAAAA,GAEzBmyF,EAAYtzH,QAAAA,EAAAA,KAAAA,EAAsBuzH,IAAAA,WAAAA,EAAkB7mH,GAAAA,KAAAA,EAAAA,EAAAA,GAAAA,EAAAA,KAAAA,EAAAA,GAAhCzY,QAAAA,KAAAA,EAAAA,GAAAA,EAAAA,IAAAA,EAAAA,KAAAA,GAAAA,MAAAA,KAAAA,EAAAA,EAAAA,KAAAA,EAAAA,EAAAA,GAAAA,EAAAA,MAAAA,GAEpBq/H,EAAYtzH,QAAQ7L,OAAOI,EAAPJ,IAAAA,KAAAA,GAAAA,OAAAA,EAAAA,KAAAA,UAEbm/H,EAAYtzH,QAAQyzH,QAAAA,EAAAA,OAAAA,IAAAA,KAAAA,GAAAA,IAAAA,MAAAA,OAAAA,EAAAA,OAAAA,GAAAA,EAAAA,KAAAA,CAAAA,CAAAA,EAAAA,EAAAA,GAAAA,KAAAA,KAE5BD,KAAAA,EAAAA,OAAAA,SAEIF,EAAYtzH,QAAQyzH,SAAAA,KAAAA,EAAAA,IAAAA,MAAAA,OAAAA,EAAAA,OAAAA,GAAAA,EAAAA,KAAAA,OAAAA,WAAAA,OAAAA,EAAAA,MAAAA,KAAAA,UAAAA,CAAAA,CAxBN,GA0BvB,CAACF,EAAcC,GAAAA,EAAAA,EAAAA,eAAAA,GAAAA,EAAAA,eAAAA,GAAAA,EAAAA,YAAAA,GAAAA,EAAAA,WAAAA,GAAAA,EAAAA,cAAAA,GAAAA,EAAAA,aAAAA,EAAAA,EAAAA,gBAAAA,GAAAA,EAAAA,cAAAA,GAAAA,EAAAA,WAAAA,GAAAA,EAAAA,uBAAAA,EAAAA,EAAAA,cAAAA,GAAAA,EAAAA,iBAAAA,GAAAA,EAAAA,aAAAA,GAAAA,EAAAA,YAAAA,GAAAA,EAAAA,UAAAA,GAAAA,EAAAA,SI1IK,SAACj7B,GAAAA,IAAAA,IAAAA,EAAAA,UAAAA,OAAUoY,EAAAA,IAAAA,MAAAA,EAAAA,EAAAA,EAAAA,EAAAA,GAAAA,EAAAA,EAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAAA,UAAAA,GAEjCpY,EAAQyhB,GAAczhB,GAGtBoY,EAAAA,CAAWsH,GAAAA,OAAwBtH,GAAAA,IAM7B4I,EAAcrI,EAHF1B,EAAMtQ,OAAO,CAAC,GAGal/F,SAG7CjO,OAAOuB,OAAOimH,IAAAA,EAAAA,CAAAA,EACThhB,EAAAA,CACHoY,QAAAA,EACAnyD,MAAO43D,OAITzF,EAAQ5iG,OAAO4uG,SAASp9G,SAAQ,YAC9ByxG,EAAOuI,IAAc/6D,MAAAA,IAAAA,IAIjB66D,EAAWnI,EAAaqI,IAAc/6D,OAC5C+6D,IAAcF,SAAWA,SAClBE,IAAc/6D,MAGrBzsD,OAAOuB,OACLimH,IACAlJ,EAAYgJ,IAAWhD,WAAY2D,GAAczhB,KAAAA,IAAAA,EAY/CghB,IARFp+G,EAAAA,EAAAA,KACSu4H,EAAAA,EAAT79C,QACAijC,EAAAA,EAAAA,aACArJ,EAAAA,EAAAA,cACAwK,EAAAA,EAAAA,WACAC,EAAAA,EAAAA,SACAC,EAAAA,EAAAA,aACA5D,EAAAA,EAAAA,mBAIIod,EAAkBziB,EAAaiJ,GAG/B7B,EAAU9I,EAAM9Q,aACpB,SAACzG,EAAOiE,GAAAA,IAEDA,EAAOh8F,KAAM,MAChBi0C,QAAQ/Z,KAAK,CAAE8hE,OAAAA,IACT,IAAIvkG,MAAM,qCAIX,UACF0hH,IAAW/C,cAEV5kH,MAAMC,QAAQgiI,KACdA,IACA,CAACA,MACLj4G,QACA,SAACloB,EAAGogI,GAAAA,OAAYA,EAAQpgI,EAAG0oG,EAAQjE,EAAOshB,MAAkB/lH,CAAAA,GAC5DykG,EAAAA,GAGJ,CAACohB,EAAUsa,EAAiBpa,IAAAA,EAIG/J,EAAMvQ,WAAWqZ,OAAAA,GAAoB,kBACpEA,EAAQQ,EAAc,CAAE54G,KAAMkvG,EAAQC,MAAAA,IADjCwkB,EAAAA,EAAAA,GAAcv3B,EAAAA,EAAAA,GAKfrE,EAAQoY,EAAAA,GAAAA,OACRgJ,IAAW9C,mBAAoB,CAAAA,IACnCsd,EACA,CAAEpmC,SAAU8rB,MAGdxnH,OAAOuB,OAAOimH,IAAe,CAC3BthB,MAAAA,EACAqE,SAAAA,IAAAA,IAIIzmB,EAAU25B,EAAMxQ,SACpB,kBACE6S,EACExB,EAAYgJ,IAAWxjC,QAAS69C,EAAa,CAC3CjmC,SAAU8rB,MAAAA,GAAAA,CAIdF,EACAE,EACAma,GAAAA,OAEGrjB,EAAYgJ,IAAW7C,YAAa,GAAI,CAAE/oB,SAAU8rB,QAG3DA,IAAc1jC,QAAUA,EAAAA,IAIpBu9B,EAAa5D,EAAMxQ,SACrB,kBACEqR,EAAYgJ,IAAWjG,WAAYrB,EAAel8B,GAAU,CAC1D4X,SAAU8rB,MACTx4G,IAAI+wG,EAAAA,GAAAA,CAEPj8B,EACAwjC,EACAE,GAAAA,OAEGlJ,EAAYgJ,IAAW5C,eAAgB,GAAI,CAC5ChpB,SAAU8rB,QAIhBA,IAAcnG,WAAaA,EAAAA,IAAAA,EAGQ5D,EAAMxQ,SAAQ,mBAC3CsV,EAAO,GACP4G,EAAW,GACTC,EAAW,CAAC,EAEZ2Y,EAAAA,GAAAA,OAAsB1gB,GAErB0gB,EAAgBxiI,QAAQ,KACvBigH,EAASuiB,EAAgBtqH,QAC/ByxG,GAAoB,CAClB9/G,KAAAA,EACAm5G,KAAAA,EACA4G,SAAAA,EACAC,SAAAA,EACA5J,OAAAA,EACA2I,SAAAA,EACAD,WAAAA,EACAmB,iBAAkB/B,IAAW3C,YAC7B6C,YAAAA,GAAAA,CAAAA,MAIG,CAACjF,EAAM4G,EAAUC,EAAAA,GACvB,CAAC/H,EAAYj4G,EAAM++G,EAAUD,EAAYZ,EAAUE,IAvB/CjF,EAAAA,EAAAA,GAAM4G,EAAAA,EAAAA,GAAUC,EAAAA,EAAAA,GAyBvBppH,OAAOuB,OAAOimH,IAAe,CAC3BjF,KAAAA,EACAyf,YAAa,GAAbA,OAAiBzf,GACjB4G,SAAAA,EACAC,SAAAA,IAIF3K,EAAU6I,IAAWxC,qBAAsB0C,KAAAA,IAKvCzC,EAAiBtH,EAAMxQ,SACzB,kBACEqR,EAAYgJ,IAAWvC,eAAgB1D,EAAY,CACjD3lB,SAAU8rB,MACTx4G,KAAI,YAAAtO,OAAKsgH,EAAetgH,EAAGg9G,EAAAA,GAAAA,GAAAA,CAE9B4J,EACAjG,EACAmG,EACA9J,GAAAA,OAEGY,EAAYgJ,IAAWtC,mBAAoB,GAAI,CAChDtpB,SAAU8rB,QAMhBnG,EAAa5D,EAAMxQ,SAAQ,eACnBnpB,EAAAA,GAAAA,OAAcihC,GAAAA,OAEpB1D,EAAW7zG,SAAQ,YACZs2E,EAAQ5+E,MAAK,YAAAxE,OAAKA,EAAEqhD,KAAOy9D,EAAOz9D,EAAAA,KACrC+hC,EAAQpkF,KAAK8/G,EAAAA,IAIV17B,CAAAA,GACN,CAACu9B,EAAY0D,IAChByC,IAAcnG,WAAaA,EAAAA,IAkBrBE,EAAe9D,EAAMxQ,SACzB,kBACEqR,EACEgJ,IAAW/F,aACXH,EAAiB2D,EAAgBrH,GACjC8J,IAAAA,GAAAA,CAGFF,EACAvC,EACArH,EACA8J,GAAAA,OAEGlJ,EAAYgJ,IAAWrC,iBAAkB,GAAI,CAC9CvpB,SAAU8rB,QAIhBA,IAAcjG,aAAeA,EAAAA,IAGvBK,EAAUnE,EAAMxQ,SACpB,kBAAOsU,EAAahiH,OAASgiH,EAAa,GAAGK,QAAU,KACvD,CAACL,IAEHiG,IAAc5F,QAAUA,EAGxB4F,IAAcH,YAAc9F,EAAa53F,QACvC,SAACiiB,EAAK+1E,GAAAA,MAAAA,GAAAA,OAAoB/1E,EAAQ+1E,EAAYC,QAAAA,GAC9C,IAGFnD,EAAU6I,IAAWpC,4BAA6BsC,KAAAA,IAG5Cya,EAAoBld,EACvB/oG,QAAO,YAAAtb,OAAKA,EAAEs/B,SAAAA,IACdhxB,KAAI,YAAAtO,OAAKA,EAAEqhD,EAAAA,IACXiH,OACA3oD,KAAK,KAER0kH,EAAiBtH,EAAMxQ,SACrB,kBAAM8X,EAAe/oG,QAAO,YAAAtb,OAAKA,EAAEs/B,SAAAA,GAAAA,GAAAA,CAElC+kF,EAAgBkd,IAEnBza,IAAczC,eAAiBA,EAAAA,IAAAA,EAO3BsD,GAAsBzG,GAHxB6e,EAAAA,EAAAA,GACAJ,EAAAA,EAAAA,GACA6B,EAAAA,EAAAA,GAAAA,OAGF1a,IAAciZ,qBAAuBA,EACrCjZ,IAAc6Y,kBAAoBA,EAClC7Y,IAAc0a,qBAAuBA,EAErCzjB,EAAU6I,IAAWnC,YAAaqC,KAAAA,GAAAA,OAI7BA,IAAcH,YAAgBG,IAAcnG,YAAY7zG,SAC3D,YAEEgyG,EAAOziE,OAASwiE,EAAaiI,IAAehI,GAG5CA,EAAOiG,eAAiBvH,EAAeoJ,IAAW7B,eAAgB,CAChE/pB,SAAU8rB,IACVhI,OAAAA,IAIFA,EAAOkG,eAAiBxH,EAAeoJ,IAAW5B,eAAgB,CAChEhqB,SAAU8rB,IACVhI,OAAAA,GAAAA,IAKNgI,IAAcjG,aAAe9D,EAAMxQ,SACjC,kBACEsU,EAAavlG,QAAO,SAAC2lG,EAAatiH,GAAAA,OAEhCsiH,EAAYC,QAAUD,EAAYC,QAAQ5lG,QAAO,YAAAwjG,OAQ3CA,EAAOoC,QAPK,SAAVS,EAAUT,GAAAA,OACdA,EAAQ5lG,QAAO,YAAAwjG,OACTA,EAAOoC,QACFS,EAAQ7C,EAAOoC,SAEjBpC,EAAOx/E,SAAAA,IACbzgC,MAAAA,CANW,CAQCigH,EAAOoC,SAEjBpC,EAAOx/E,SAAAA,MAIZ2hF,EAAYC,QAAQriH,SACtBoiH,EAAY4D,oBAAsBrH,EAChCoJ,IAAW/B,oBACX,CAAE7pB,SAAU8rB,IAAe7F,YAAAA,EAAa96G,MAAOxH,IAGjDsiH,EAAY6D,oBAAsBtH,EAChCoJ,IAAW9B,oBACX,CAAE9pB,SAAU8rB,IAAe7F,YAAAA,EAAa96G,MAAOxH,KAAAA,EAG1C,MAKb,CAACkiH,EAAciG,EAAaF,IAG9BE,IAAc2a,aAAe,UAAI3a,IAAcjG,cAAc5pE,UAK7D6vE,IAAcpC,WAAa3H,EAAM9Q,aAC/B,YACE0T,EAAIsF,YAAczH,EAAeoJ,IAAW3B,YAAa,CACvDjqB,SAAU8rB,IACVnH,IAAAA,IAIFA,EAAI4R,SAAW5Q,EAAWryG,KAAI,YAAAwwG,IACtBv9G,EAAQo+G,EAAI1mG,OAAO6lG,EAAOz9D,IAE1BqiE,EAAO,CACX5E,OAAAA,EACAa,IAAAA,EACAp+G,MAAAA,GAAAA,OAIFmiH,EAAKwB,aAAe1H,EAAeoJ,IAAW1B,aAAc,CAC1DlqB,SAAU8rB,IACVpD,KAAAA,IAIFA,EAAKrnE,OAASwiE,EAAaiI,IAAehI,EAAQ,CAChDa,IAAAA,EACA+D,KAAAA,EACAniH,MAAAA,IAGKmiH,CAAAA,IAGT/D,EAAIsJ,MAAQ5E,EAAe/1G,KAAI,YAAAwwG,OAC7Ba,EAAI4R,SAAS/sH,MAAK,YAAAk/G,OAAQA,EAAK5E,OAAOz9D,KAAOy9D,EAAOz9D,EAAAA,GAAAA,IAItD08D,EAAU6I,IAAWlC,WAAY/E,EAAK,CAAE3kB,SAAU8rB,KAAAA,GAEpD,CAACF,EAAUE,EAAanG,EAAY0D,IAGtCyC,IAAcnC,cAAgBnH,EAAeoJ,IAAWjC,cAAe,CACrE3pB,SAAU8rB,MAGZA,IAAclC,kBAAoBpH,EAChCoJ,IAAWhC,kBACX,CACE5pB,SAAU8rB,MAId/I,EAAU6I,IAAWzB,iBAAkB2B,KAEhCA,GAAAA,EAAAA,OAAAA,eAAAA,EAAAA,aAAAA,CAAAA,OAAAA,GAAAA,mCmBncPlnH,EAAOC,QAAU,EAAjBD,yCCQW,IAAIyC,EAAEqhD,EAAQ,MAAS6I,EAAEzpD,OAAOg0E,IAAI,iBAAiBtzE,EAAEV,OAAOg0E,IAAI,kBAAkBt6C,EAAEl9B,OAAOC,UAAUf,eAAewC,EAAEqB,EAAEy7E,mDAAmDywB,kBAAkBnuG,EAAE,CAACX,KAAI,EAAG4mG,KAAI,EAAGq7B,QAAO,EAAGC,UAAS,GAChP,SAASt9B,EAAE/wF,EAAElG,EAAE7K,GAAG,IAAItC,EAAED,EAAE,CAAC,EAAE8B,EAAE,KAAKoC,EAAE,KAAiF,IAAIjE,UAAhF,IAASsC,IAAIT,EAAE,GAAGS,QAAG,IAAS6K,EAAE3N,MAAMqC,EAAE,GAAGsL,EAAE3N,UAAK,IAAS2N,EAAEi5F,MAAMniG,EAAEkJ,EAAEi5F,KAAcj5F,EAAEovB,EAAE98B,KAAK0N,EAAEnN,KAAKG,EAAE5B,eAAeyB,KAAKD,EAAEC,GAAGmN,EAAEnN,IAAI,GAAGqT,GAAGA,EAAEuuF,aAAa,IAAI5hG,KAAKmN,EAAEkG,EAAEuuF,kBAAe,IAAS7hG,EAAEC,KAAKD,EAAEC,GAAGmN,EAAEnN,IAAI,MAAM,CAACw/E,SAASlzB,EAAE9+C,KAAK6F,EAAE7T,IAAIqC,EAAEukG,IAAIniG,EAAE4hG,MAAM9lG,EAAEsmG,OAAOtlG,EAAEuM,QAAQ,CAAC1N,EAAQ+hI,SAASp+H,EAAE3D,EAAQgiI,IAAIx9B,EAAExkG,EAAQiiI,KAAKz9B,mCCD7V,IAAI7gG,EAAEV,OAAOg0E,IAAI,iBAAiB91E,EAAE8B,OAAOg0E,IAAI,gBAAgB12E,EAAE0C,OAAOg0E,IAAI,kBAAkButB,EAAEvhG,OAAOg0E,IAAI,qBAAqBl7D,EAAE9Y,OAAOg0E,IAAI,kBAAkBh2E,EAAEgC,OAAOg0E,IAAI,kBAAkBjlE,EAAE/O,OAAOg0E,IAAI,iBAAiB9zE,EAAEF,OAAOg0E,IAAI,qBAAqB7yE,EAAEnB,OAAOg0E,IAAI,kBAAkB9yE,EAAElB,OAAOg0E,IAAI,cAAcx0E,EAAEQ,OAAOg0E,IAAI,cAAchlE,EAAEhP,OAAOC,SACzW,IAAImmF,EAAE,CAAC0b,UAAU,WAAW,OAAM,CAAE,EAAEM,mBAAmB,WAAW,EAAED,oBAAoB,WAAW,EAAEH,gBAAgB,WAAW,GAAGtZ,EAAElsF,OAAOuB,OAAOo7E,EAAE,CAAC,EAAE,SAASjqE,EAAE5E,EAAEnN,EAAE6B,GAAGrB,KAAKqlG,MAAM14F,EAAE3M,KAAK0D,QAAQlE,EAAEQ,KAAKgkG,KAAKxoB,EAAEx7E,KAAKglG,QAAQ3jG,GAAGonF,CAAC,CACwI,SAASj3E,IAAI,CAAyB,SAASmsF,EAAEhxF,EAAEnN,EAAE6B,GAAGrB,KAAKqlG,MAAM14F,EAAE3M,KAAK0D,QAAQlE,EAAEQ,KAAKgkG,KAAKxoB,EAAEx7E,KAAKglG,QAAQ3jG,GAAGonF,CAAC,CADxPl3E,EAAEzS,UAAUw4G,iBAAiB,CAAC,EACpQ/lG,EAAEzS,UAAU08H,SAAS,SAAS7uH,EAAEnN,GAAG,GAAG,kBAAkBmN,GAAG,oBAAoBA,GAAG,MAAMA,EAAE,MAAMlI,MAAM,yHAAyHzE,KAAKglG,QAAQX,gBAAgBrkG,KAAK2M,EAAEnN,EAAE,WAAW,EAAE+R,EAAEzS,UAAUwiI,YAAY,SAAS30H,GAAG3M,KAAKglG,QAAQP,mBAAmBzkG,KAAK2M,EAAE,cAAc,EAAgB6E,EAAE1S,UAAUyS,EAAEzS,UAAsF,IAAI++F,EAAEF,EAAE7+F,UAAU,IAAI0S,EACrfqsF,EAAE59F,YAAY09F,EAAE5S,EAAE8S,EAAEtsF,EAAEzS,WAAW++F,EAAE+G,sBAAqB,EAAG,IAAI5E,EAAExhG,MAAMC,QAAQy8F,EAAEr8F,OAAOC,UAAUf,eAAeylG,EAAE,CAAC12F,QAAQ,MAAM4nB,EAAE,CAAC11B,KAAI,EAAG4mG,KAAI,EAAGq7B,QAAO,EAAGC,UAAS,GACtK,SAASrtE,EAAElnD,EAAEnN,EAAE6B,GAAG,IAAI9B,EAAEsT,EAAE,CAAC,EAAEi5C,EAAE,KAAKroD,EAAE,KAAK,GAAG,MAAMjE,EAAE,IAAID,UAAK,IAASC,EAAEomG,MAAMniG,EAAEjE,EAAEomG,UAAK,IAASpmG,EAAER,MAAM8sD,EAAE,GAAGtsD,EAAER,KAAKQ,EAAE07F,EAAEj8F,KAAKO,EAAED,KAAKm1B,EAAE32B,eAAewB,KAAKsT,EAAEtT,GAAGC,EAAED,IAAI,IAAIuC,EAAE3D,UAAUC,OAAO,EAAE,GAAG,IAAI0D,EAAE+Q,EAAEsuE,SAAS9/E,OAAO,GAAG,EAAES,EAAE,CAAC,IAAI,IAAIF,EAAEpD,MAAMsD,GAAGi6B,EAAE,EAAEA,EAAEj6B,EAAEi6B,IAAIn6B,EAAEm6B,GAAG59B,UAAU49B,EAAE,GAAGlpB,EAAEsuE,SAASv/E,CAAC,CAAC,GAAG+K,GAAGA,EAAEy0F,aAAa,IAAI7hG,KAAKuC,EAAE6K,EAAEy0F,kBAAe,IAASvuF,EAAEtT,KAAKsT,EAAEtT,GAAGuC,EAAEvC,IAAI,MAAM,CAACy/E,SAASj8E,EAAEiK,KAAKL,EAAE3N,IAAI8sD,EAAE85C,IAAIniG,EAAE4hG,MAAMxyF,EAAEgzF,OAAOrC,EAAE12F,QAAQ,CAChV,SAAS86F,EAAEj7F,GAAG,MAAM,kBAAkBA,GAAG,OAAOA,GAAGA,EAAEqyE,WAAWj8E,CAAC,CAAoG,IAAIpC,EAAE,OAAO,SAASsnG,EAAEt7F,EAAEnN,GAAG,MAAM,kBAAkBmN,GAAG,OAAOA,GAAG,MAAMA,EAAE3N,IAA7K,SAAgB2N,GAAG,IAAInN,EAAE,CAAC,IAAI,KAAK,IAAI,MAAM,MAAM,IAAImN,EAAEivB,QAAQ,SAAQ,SAASjvB,GAAG,OAAOnN,EAAEmN,EAAE,GAAE,CAA+E40H,CAAO,GAAG50H,EAAE3N,KAAKQ,EAAEZ,SAAS,GAAG,CAC/W,SAASgrG,EAAEj9F,EAAEnN,EAAE6B,EAAE9B,EAAEsT,GAAG,IAAIi5C,SAASn/C,EAAK,cAAcm/C,GAAG,YAAYA,IAAEn/C,EAAE,MAAK,IAAIlJ,GAAE,EAAG,GAAG,OAAOkJ,EAAElJ,GAAE,OAAQ,OAAOqoD,GAAG,IAAK,SAAS,IAAK,SAASroD,GAAE,EAAG,MAAM,IAAK,SAAS,OAAOkJ,EAAEqyE,UAAU,KAAKj8E,EAAE,KAAKxC,EAAEkD,GAAE,GAAI,GAAGA,EAAE,OAAWoP,EAAEA,EAANpP,EAAEkJ,GAASA,EAAE,KAAKpN,EAAE,IAAI0oG,EAAExkG,EAAE,GAAGlE,EAAEygG,EAAEntF,IAAIxR,EAAE,GAAG,MAAMsL,IAAItL,EAAEsL,EAAEivB,QAAQj7B,EAAE,OAAO,KAAKipG,EAAE/2F,EAAErT,EAAE6B,EAAE,IAAG,SAASsL,GAAG,OAAOA,CAAC,KAAI,MAAMkG,IAAI+0F,EAAE/0F,KAAKA,EADnW,SAAWlG,EAAEnN,GAAG,MAAM,CAACw/E,SAASj8E,EAAEiK,KAAKL,EAAEK,KAAKhO,IAAIQ,EAAEomG,IAAIj5F,EAAEi5F,IAAIP,MAAM14F,EAAE04F,MAAMQ,OAAOl5F,EAAEk5F,OAAO,CACyQ8B,CAAE90F,EAAExR,IAAIwR,EAAE7T,KAAKyE,GAAGA,EAAEzE,MAAM6T,EAAE7T,IAAI,IAAI,GAAG6T,EAAE7T,KAAK48B,QAAQj7B,EAAE,OAAO,KAAKgM,IAAInN,EAAEjB,KAAKsU,IAAI,EAAyB,GAAvBpP,EAAE,EAAElE,EAAE,KAAKA,EAAE,IAAIA,EAAE,IAAOygG,EAAErzF,GAAG,IAAI,IAAI7K,EAAE,EAAEA,EAAE6K,EAAEvO,OAAO0D,IAAI,CAC/e,IAAIF,EAAErC,EAAE0oG,EADwen8C,EACrfn/C,EAAE7K,GAAeA,GAAG2B,GAAGmmG,EAAE99C,EAAEtsD,EAAE6B,EAAEO,EAAEiR,EAAE,MAAM,GAAGjR,EAPsU,SAAW+K,GAAG,OAAG,OAAOA,GAAG,kBAAkBA,EAAS,KAAsC,oBAAjCA,EAAE0E,GAAG1E,EAAE0E,IAAI1E,EAAE,eAA0CA,EAAE,IAAI,CAO5b2E,CAAE3E,GAAG,oBAAoB/K,EAAE,IAAI+K,EAAE/K,EAAE3C,KAAK0N,GAAG7K,EAAE,IAAIgqD,EAAEn/C,EAAEvL,QAAQI,MAA6BiC,GAAGmmG,EAA1B99C,EAAEA,EAAEhrD,MAA0BtB,EAAE6B,EAAtBO,EAAErC,EAAE0oG,EAAEn8C,EAAEhqD,KAAkB+Q,QAAQ,GAAG,WAAWi5C,EAAE,MAAMtsD,EAAEM,OAAO6M,GAAGlI,MAAM,mDAAmD,oBAAoBjF,EAAE,qBAAqBX,OAAO0uC,KAAK5gC,GAAGzN,KAAK,MAAM,IAAIM,GAAG,6EAA6E,OAAOiE,CAAC,CACzZ,SAASutG,EAAErkG,EAAEnN,EAAE6B,GAAG,GAAG,MAAMsL,EAAE,OAAOA,EAAE,IAAIpN,EAAE,GAAGsT,EAAE,EAAmD,OAAjD+2F,EAAEj9F,EAAEpN,EAAE,GAAG,IAAG,SAASoN,GAAG,OAAOnN,EAAEP,KAAKoC,EAAEsL,EAAEkG,IAAI,IAAUtT,CAAC,CAAC,SAASq1B,EAAEjoB,GAAG,IAAI,IAAIA,EAAE60H,QAAQ,CAAC,IAAIhiI,EAAEmN,EAAE80H,SAAQjiI,EAAEA,KAAMiC,MAAK,SAASjC,GAAM,IAAImN,EAAE60H,UAAU,IAAI70H,EAAE60H,UAAQ70H,EAAE60H,QAAQ,EAAE70H,EAAE80H,QAAQjiI,EAAC,IAAE,SAASA,GAAM,IAAImN,EAAE60H,UAAU,IAAI70H,EAAE60H,UAAQ70H,EAAE60H,QAAQ,EAAE70H,EAAE80H,QAAQjiI,EAAC,KAAI,IAAImN,EAAE60H,UAAU70H,EAAE60H,QAAQ,EAAE70H,EAAE80H,QAAQjiI,EAAE,CAAC,GAAG,IAAImN,EAAE60H,QAAQ,OAAO70H,EAAE80H,QAAQpiI,QAAQ,MAAMsN,EAAE80H,OAAQ,CAC5Z,IAAIhwH,EAAE,CAAC3E,QAAQ,MAAM6nB,EAAE,CAAC24D,WAAW,MAAMzlB,EAAE,CAAC2/B,uBAAuB/1F,EAAE27E,wBAAwBz4D,EAAEm5E,kBAAkBtK,GAAGpkG,EAAQsiI,SAAS,CAAC7zH,IAAImjG,EAAE3kG,QAAQ,SAASM,EAAEnN,EAAE6B,GAAG2vG,EAAErkG,GAAE,WAAWnN,EAAEb,MAAMqB,KAAK7B,UAAU,GAAEkD,EAAE,EAAEmM,MAAM,SAASb,GAAG,IAAInN,EAAE,EAAuB,OAArBwxG,EAAErkG,GAAE,WAAWnN,GAAG,IAAUA,CAAC,EAAE4tE,QAAQ,SAASzgE,GAAG,OAAOqkG,EAAErkG,GAAE,SAASA,GAAG,OAAOA,CAAC,KAAI,EAAE,EAAEg1H,KAAK,SAASh1H,GAAG,IAAIi7F,EAAEj7F,GAAG,MAAMlI,MAAM,yEAAyE,OAAOkI,CAAC,GAAGvN,EAAQ2kG,UAAUxyF,EAAEnS,EAAQ+hI,SAASxhI,EACneP,EAAQwiI,SAASzmH,EAAE/b,EAAQyiI,cAAclkC,EAAEv+F,EAAQ0iI,WAAWl+B,EAAExkG,EAAQ2iI,SAASv+H,EAAEpE,EAAQi+E,mDAAmDxV,EAC9IzoE,EAAQ4iI,aAAa,SAASr1H,EAAEnN,EAAE6B,GAAG,GAAG,OAAOsL,QAAG,IAASA,EAAE,MAAMlI,MAAM,iFAAiFkI,EAAE,KAAK,IAAIpN,EAAEwrF,EAAE,CAAC,EAAEp+E,EAAE04F,OAAOxyF,EAAElG,EAAE3N,IAAI8sD,EAAEn/C,EAAEi5F,IAAIniG,EAAEkJ,EAAEk5F,OAAO,GAAG,MAAMrmG,EAAE,CAAoE,QAAnE,IAASA,EAAEomG,MAAM95C,EAAEtsD,EAAEomG,IAAIniG,EAAE+/F,EAAE12F,cAAS,IAAStN,EAAER,MAAM6T,EAAE,GAAGrT,EAAER,KAAQ2N,EAAEK,MAAML,EAAEK,KAAKo0F,aAAa,IAAIt/F,EAAE6K,EAAEK,KAAKo0F,aAAa,IAAIx/F,KAAKpC,EAAE07F,EAAEj8F,KAAKO,EAAEoC,KAAK8yB,EAAE32B,eAAe6D,KAAKrC,EAAEqC,QAAG,IAASpC,EAAEoC,SAAI,IAASE,EAAEA,EAAEF,GAAGpC,EAAEoC,GAAG,CAAC,IAAIA,EAAEzD,UAAUC,OAAO,EAAE,GAAG,IAAIwD,EAAErC,EAAE4hF,SAAS9/E,OAAO,GAAG,EAAEO,EAAE,CAACE,EAAEtD,MAAMoD,GACrf,IAAI,IAAIm6B,EAAE,EAAEA,EAAEn6B,EAAEm6B,IAAIj6B,EAAEi6B,GAAG59B,UAAU49B,EAAE,GAAGx8B,EAAE4hF,SAASr/E,CAAC,CAAC,MAAM,CAACk9E,SAASj8E,EAAEiK,KAAKL,EAAEK,KAAKhO,IAAI6T,EAAE+yF,IAAI95C,EAAEu5C,MAAM9lG,EAAEsmG,OAAOpiG,EAAE,EAAErE,EAAQ6iI,cAAc,SAASt1H,GAAqK,OAAlKA,EAAE,CAACqyE,SAAS5tE,EAAEuwF,cAAch1F,EAAEu1H,eAAev1H,EAAEw1H,aAAa,EAAEC,SAAS,KAAKC,SAAS,KAAKC,cAAc,KAAKC,YAAY,OAAQH,SAAS,CAACpjD,SAAS3+E,EAAEoa,SAAS9N,GAAUA,EAAE01H,SAAS11H,CAAC,EAAEvN,EAAQ22B,cAAc89B,EAAEz0D,EAAQojI,cAAc,SAAS71H,GAAG,IAAInN,EAAEq0D,EAAEknC,KAAK,KAAKpuF,GAAY,OAATnN,EAAEwN,KAAKL,EAASnN,CAAC,EAAEJ,EAAQqjI,UAAU,WAAW,MAAM,CAAC31H,QAAQ,KAAK,EAC9d1N,EAAQsjI,WAAW,SAAS/1H,GAAG,MAAM,CAACqyE,SAASz8E,EAAEq5C,OAAOjvC,EAAE,EAAEvN,EAAQujI,eAAe/6B,EAAExoG,EAAQwjI,KAAK,SAASj2H,GAAG,MAAM,CAACqyE,SAASn9E,EAAEo9E,SAAS,CAACuiD,SAAS,EAAEC,QAAQ90H,GAAGuyE,MAAMtqD,EAAE,EAAEx1B,EAAQyjI,KAAK,SAASl2H,EAAEnN,GAAG,MAAM,CAACw/E,SAASz7E,EAAEyJ,KAAKL,EAAEyhG,aAAQ,IAAS5uG,EAAE,KAAKA,EAAE,EAAEJ,EAAQ0jI,gBAAgB,SAASn2H,GAAG,IAAInN,EAAEm1B,EAAE24D,WAAW34D,EAAE24D,WAAW,CAAC,EAAE,IAAI3gF,GAA0B,CAAtB,QAAQgoB,EAAE24D,WAAW9tF,CAAC,CAAC,EAAEJ,EAAQ2jI,aAAa,WAAW,MAAMt+H,MAAM,2DAA4D,EAC1crF,EAAQosG,YAAY,SAAS7+F,EAAEnN,GAAG,OAAOiS,EAAE3E,QAAQ0+F,YAAY7+F,EAAEnN,EAAE,EAAEJ,EAAQqsG,WAAW,SAAS9+F,GAAG,OAAO8E,EAAE3E,QAAQ2+F,WAAW9+F,EAAE,EAAEvN,EAAQ8sG,cAAc,WAAW,EAAE9sG,EAAQ+sG,iBAAiB,SAASx/F,GAAG,OAAO8E,EAAE3E,QAAQq/F,iBAAiBx/F,EAAE,EAAEvN,EAAQssG,UAAU,SAAS/+F,EAAEnN,GAAG,OAAOiS,EAAE3E,QAAQ4+F,UAAU/+F,EAAEnN,EAAE,EAAEJ,EAAQmtG,MAAM,WAAW,OAAO96F,EAAE3E,QAAQy/F,OAAO,EAAEntG,EAAQusG,oBAAoB,SAASh/F,EAAEnN,EAAE6B,GAAG,OAAOoQ,EAAE3E,QAAQ6+F,oBAAoBh/F,EAAEnN,EAAE6B,EAAE,EAC7bjC,EAAQwsG,mBAAmB,SAASj/F,EAAEnN,GAAG,OAAOiS,EAAE3E,QAAQ8+F,mBAAmBj/F,EAAEnN,EAAE,EAAEJ,EAAQysG,gBAAgB,SAASl/F,EAAEnN,GAAG,OAAOiS,EAAE3E,QAAQ++F,gBAAgBl/F,EAAEnN,EAAE,EAAEJ,EAAQ0sG,QAAQ,SAASn/F,EAAEnN,GAAG,OAAOiS,EAAE3E,QAAQg/F,QAAQn/F,EAAEnN,EAAE,EAAEJ,EAAQ2sG,WAAW,SAASp/F,EAAEnN,EAAE6B,GAAG,OAAOoQ,EAAE3E,QAAQi/F,WAAWp/F,EAAEnN,EAAE6B,EAAE,EAAEjC,EAAQ4sG,OAAO,SAASr/F,GAAG,OAAO8E,EAAE3E,QAAQk/F,OAAOr/F,EAAE,EAAEvN,EAAQ6sG,SAAS,SAASt/F,GAAG,OAAO8E,EAAE3E,QAAQm/F,SAASt/F,EAAE,EAAEvN,EAAQktG,qBAAqB,SAAS3/F,EAAEnN,EAAE6B,GAAG,OAAOoQ,EAAE3E,QAAQw/F,qBAAqB3/F,EAAEnN,EAAE6B,EAAE,EAC/ejC,EAAQgtG,cAAc,WAAW,OAAO36F,EAAE3E,QAAQs/F,eAAe,EAAEhtG,EAAQikD,QAAQ,4CCtBjFlkD,EAAOC,QAAU,EAAjBD,wCCAAA,EAAOC,QAAU,EAAjBD,uCCMW,SAASyC,EAAE+K,EAAEnN,GAAG,IAAIqT,EAAElG,EAAEvO,OAAOuO,EAAEpO,KAAKiB,GAAGmN,EAAE,KAAK,EAAEkG,GAAG,CAAC,IAAItT,EAAEsT,EAAE,IAAI,EAAExR,EAAEsL,EAAEpN,GAAG,KAAG,EAAEuC,EAAET,EAAE7B,IAA0B,MAAMmN,EAA7BA,EAAEpN,GAAGC,EAAEmN,EAAEkG,GAAGxR,EAAEwR,EAAEtT,CAAc,CAAC,CAAC,SAASkE,EAAEkJ,GAAG,OAAO,IAAIA,EAAEvO,OAAO,KAAKuO,EAAE,EAAE,CAAC,SAASm/C,EAAEn/C,GAAG,GAAG,IAAIA,EAAEvO,OAAO,OAAO,KAAK,IAAIoB,EAAEmN,EAAE,GAAGkG,EAAElG,EAAElK,MAAM,GAAGoQ,IAAIrT,EAAE,CAACmN,EAAE,GAAGkG,EAAElG,EAAE,IAAI,IAAIpN,EAAE,EAAE8B,EAAEsL,EAAEvO,OAAOoF,EAAEnC,IAAI,EAAE9B,EAAEiE,GAAG,CAAC,IAAIu4B,EAAE,GAAGx8B,EAAE,GAAG,EAAEwrF,EAAEp+E,EAAEovB,GAAGx7B,EAAEw7B,EAAE,EAAEx4B,EAAEoJ,EAAEpM,GAAG,GAAG,EAAEuB,EAAEipF,EAAEl4E,GAAGtS,EAAEc,GAAG,EAAES,EAAEyB,EAAEwnF,IAAIp+E,EAAEpN,GAAGgE,EAAEoJ,EAAEpM,GAAGsS,EAAEtT,EAAEgB,IAAIoM,EAAEpN,GAAGwrF,EAAEp+E,EAAEovB,GAAGlpB,EAAEtT,EAAEw8B,OAAQ,MAAGx7B,EAAEc,GAAG,EAAES,EAAEyB,EAAEsP,IAA0B,MAAMlG,EAA7BA,EAAEpN,GAAGgE,EAAEoJ,EAAEpM,GAAGsS,EAAEtT,EAAEgB,CAAc,EAAC,CAAC,OAAOf,CAAC,CAC3c,SAASsC,EAAE6K,EAAEnN,GAAG,IAAIqT,EAAElG,EAAEq2H,UAAUxjI,EAAEwjI,UAAU,OAAO,IAAInwH,EAAEA,EAAElG,EAAEi0C,GAAGphD,EAAEohD,EAAE,CAAC,GAAG,kBAAkBqiF,aAAa,oBAAoBA,YAAYliF,IAAI,CAAC,IAAIh+C,EAAEkgI,YAAY7jI,EAAQspF,aAAa,WAAW,OAAO3lF,EAAEg+C,KAAK,CAAC,KAAK,CAAC,IAAIphD,EAAEmhD,KAAK8iD,EAAEjkG,EAAEohD,MAAM3hD,EAAQspF,aAAa,WAAW,OAAO/oF,EAAEohD,MAAM6iD,CAAC,CAAC,CAAC,IAAIzoF,EAAE,GAAG9a,EAAE,GAAG+Q,EAAE,EAAE7O,EAAE,KAAKV,EAAE,EAAEwP,GAAE,EAAGC,GAAE,EAAGm3E,GAAE,EAAGjN,EAAE,oBAAoBnuC,WAAWA,WAAW,KAAK97B,EAAE,oBAAoBmrF,aAAaA,aAAa,KAAKlrF,EAAE,qBAAqB0xH,aAAaA,aAAa,KACnT,SAASvlC,EAAEhxF,GAAG,IAAI,IAAInN,EAAEiE,EAAEpD,GAAG,OAAOb,GAAG,CAAC,GAAG,OAAOA,EAAEgsD,SAASM,EAAEzrD,OAAQ,MAAGb,EAAE2jI,WAAWx2H,GAAgD,MAA9Cm/C,EAAEzrD,GAAGb,EAAEwjI,UAAUxjI,EAAE4jI,eAAexhI,EAAEuZ,EAAE3b,EAAa,CAACA,EAAEiE,EAAEpD,EAAE,CAAC,CAAC,SAASw9F,EAAElxF,GAAa,GAAV87E,GAAE,EAAGkV,EAAEhxF,IAAO2E,EAAE,GAAG,OAAO7N,EAAE0X,GAAG7J,GAAE,EAAG0uF,EAAE9E,OAAO,CAAC,IAAI17F,EAAEiE,EAAEpD,GAAG,OAAOb,GAAGgkG,EAAE3F,EAAEr+F,EAAE2jI,UAAUx2H,EAAE,CAAC,CACra,SAASuuF,EAAEvuF,EAAEnN,GAAG8R,GAAE,EAAGm3E,IAAIA,GAAE,EAAGl3E,EAAEmjB,GAAGA,GAAG,GAAGrjB,GAAE,EAAG,IAAIwB,EAAEhR,EAAE,IAAS,IAAL87F,EAAEn+F,GAAO+C,EAAEkB,EAAE0X,GAAG,OAAO5Y,MAAMA,EAAE6gI,eAAe5jI,IAAImN,IAAIknD,MAAM,CAAC,IAAIt0D,EAAEgD,EAAEipD,SAAS,GAAG,oBAAoBjsD,EAAE,CAACgD,EAAEipD,SAAS,KAAK3pD,EAAEU,EAAE8gI,cAAc,IAAIhiI,EAAE9B,EAAEgD,EAAE6gI,gBAAgB5jI,GAAGA,EAAEJ,EAAQspF,eAAe,oBAAoBrnF,EAAEkB,EAAEipD,SAASnqD,EAAEkB,IAAIkB,EAAE0X,IAAI2wC,EAAE3wC,GAAGwiF,EAAEn+F,EAAE,MAAMssD,EAAE3wC,GAAG5Y,EAAEkB,EAAE0X,EAAE,CAAC,GAAG,OAAO5Y,EAAE,IAAIiB,GAAE,MAAO,CAAC,IAAIu4B,EAAEt4B,EAAEpD,GAAG,OAAO07B,GAAGynE,EAAE3F,EAAE9hE,EAAEonG,UAAU3jI,GAAGgE,GAAE,CAAE,CAAC,OAAOA,CAAyB,CAAvB,QAAQjB,EAAE,KAAKV,EAAEgR,EAAExB,GAAE,CAAE,CAAC,CAD1a,qBAAqB8zB,gBAAW,IAASA,UAAUm+F,iBAAY,IAASn+F,UAAUm+F,WAAWC,gBAAgBp+F,UAAUm+F,WAAWC,eAAexoC,KAAK51D,UAAUm+F,YAC2Q,IACzPtyB,EAD6PrJ,GAAE,EAAGC,EAAE,KAAKlzE,GAAG,EAAE/zB,EAAE,EAAEsnG,GAAG,EACvc,SAASp0C,IAAI,QAAOz0D,EAAQspF,eAAeuf,EAAEtnG,EAAO,CAAC,SAASipG,IAAI,GAAG,OAAOhC,EAAE,CAAC,IAAIj7F,EAAEvN,EAAQspF,eAAeuf,EAAEt7F,EAAE,IAAInN,GAAE,EAAG,IAAIA,EAAEooG,GAAE,EAAGj7F,EAA8B,CAA3B,QAAQnN,EAAEwxG,KAAKrJ,GAAE,EAAGC,EAAE,KAAK,CAAC,MAAMD,GAAE,CAAE,CAAO,GAAG,oBAAoBn2F,EAAEw/F,EAAE,WAAWx/F,EAAEo4F,EAAE,OAAO,GAAG,qBAAqB45B,eAAe,CAAC,IAAI5uG,EAAE,IAAI4uG,eAAe/xH,EAAEmjB,EAAE6uG,MAAM7uG,EAAE8uG,MAAMC,UAAU/5B,EAAEoH,EAAE,WAAWv/F,EAAEmyH,YAAY,KAAK,CAAC,MAAM5yB,EAAE,WAAWx1B,EAAEouB,EAAE,EAAE,EAAE,SAAS5J,EAAErzF,GAAGi7F,EAAEj7F,EAAEg7F,IAAIA,GAAE,EAAGqJ,IAAI,CAAC,SAASxN,EAAE72F,EAAEnN,GAAGk1B,EAAE8mD,GAAE,WAAW7uE,EAAEvN,EAAQspF,eAAe,GAAElpF,EAAE,CAC5dJ,EAAQkqF,sBAAsB,EAAElqF,EAAQ0pF,2BAA2B,EAAE1pF,EAAQgqF,qBAAqB,EAAEhqF,EAAQ8pF,wBAAwB,EAAE9pF,EAAQykI,mBAAmB,KAAKzkI,EAAQ4pF,8BAA8B,EAAE5pF,EAAQgpF,wBAAwB,SAASz7E,GAAGA,EAAE6+C,SAAS,IAAI,EAAEpsD,EAAQ0kI,2BAA2B,WAAWxyH,GAAGD,IAAIC,GAAE,EAAG0uF,EAAE9E,GAAG,EAC1U97F,EAAQ2kI,wBAAwB,SAASp3H,GAAG,EAAEA,GAAG,IAAIA,EAAEs0C,QAAQja,MAAM,mHAAmHrmC,EAAE,EAAEgM,EAAEjI,KAAKi+B,MAAM,IAAIh2B,GAAG,CAAC,EAAEvN,EAAQwpF,iCAAiC,WAAW,OAAO/mF,CAAC,EAAEzC,EAAQ4kI,8BAA8B,WAAW,OAAOvgI,EAAE0X,EAAE,EAAE/b,EAAQ6kI,cAAc,SAASt3H,GAAG,OAAO9K,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAIrC,EAAE,EAAE,MAAM,QAAQA,EAAEqC,EAAE,IAAIgR,EAAEhR,EAAEA,EAAErC,EAAE,IAAI,OAAOmN,GAAe,CAAX,QAAQ9K,EAAEgR,CAAC,CAAC,EAAEzT,EAAQ8kI,wBAAwB,WAAW,EAC9f9kI,EAAQopF,sBAAsB,WAAW,EAAEppF,EAAQ+kI,yBAAyB,SAASx3H,EAAEnN,GAAG,OAAOmN,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,QAAQA,EAAE,EAAE,IAAIkG,EAAEhR,EAAEA,EAAE8K,EAAE,IAAI,OAAOnN,GAAe,CAAX,QAAQqC,EAAEgR,CAAC,CAAC,EAChMzT,EAAQ+oF,0BAA0B,SAASx7E,EAAEnN,EAAEqT,GAAG,IAAItT,EAAEH,EAAQspF,eAA8F,OAA/E,kBAAkB71E,GAAG,OAAOA,EAAaA,EAAE,kBAAZA,EAAEA,EAAEuxH,QAA6B,EAAEvxH,EAAEtT,EAAEsT,EAAEtT,EAAGsT,EAAEtT,EAASoN,GAAG,KAAK,EAAE,IAAItL,GAAG,EAAE,MAAM,KAAK,EAAEA,EAAE,IAAI,MAAM,KAAK,EAAEA,EAAE,WAAW,MAAM,KAAK,EAAEA,EAAE,IAAI,MAAM,QAAQA,EAAE,IAAmN,OAAzMsL,EAAE,CAACi0C,GAAGxvC,IAAIo6C,SAAShsD,EAAE6jI,cAAc12H,EAAEw2H,UAAUtwH,EAAEuwH,eAAvD/hI,EAAEwR,EAAExR,EAAoE2hI,WAAW,GAAGnwH,EAAEtT,GAAGoN,EAAEq2H,UAAUnwH,EAAEjR,EAAEvB,EAAEsM,GAAG,OAAOlJ,EAAE0X,IAAIxO,IAAIlJ,EAAEpD,KAAKooF,GAAGl3E,EAAEmjB,GAAGA,GAAG,GAAG+zD,GAAE,EAAG+a,EAAE3F,EAAEhrF,EAAEtT,MAAMoN,EAAEq2H,UAAU3hI,EAAEO,EAAEuZ,EAAExO,GAAG2E,GAAGD,IAAIC,GAAE,EAAG0uF,EAAE9E,KAAYvuF,CAAC,EACnevN,EAAQkpF,qBAAqBz0B,EAAEz0D,EAAQilI,sBAAsB,SAAS13H,GAAG,IAAInN,EAAEqC,EAAE,OAAO,WAAW,IAAIgR,EAAEhR,EAAEA,EAAErC,EAAE,IAAI,OAAOmN,EAAEhO,MAAMqB,KAAK7B,UAAsB,CAAX,QAAQ0D,EAAEgR,CAAC,CAAC,CAAC,qCCf7J1T,EAAOC,QAAU,EAAjBD,4BCHF,IAAImlI,EAAU,gBACd,SAASC,IACP,aACAplI,EAAOC,QAAUmlI,EAAsB,WACrC,OAAOnlI,CACT,EAAGD,EAAOC,QAAQolI,YAAa,EAAMrlI,EAAOC,QAAiB,QAAID,EAAOC,QACxE,IAAIA,EAAU,CAAC,EACbqlI,EAAK5lI,OAAOC,UACZhB,EAAS2mI,EAAG1mI,eACZs7B,EAAiBx6B,OAAOw6B,gBAAkB,SAAUuyB,EAAK5sD,EAAK+zH,GAC5DnnE,EAAI5sD,GAAO+zH,EAAKjyH,KAClB,EACA4jI,EAAU,mBAAqBriI,OAASA,OAAS,CAAC,EAClDsiI,EAAiBD,EAAQpiI,UAAY,aACrCsiI,EAAsBF,EAAQG,eAAiB,kBAC/CC,EAAoBJ,EAAQK,aAAe,gBAC7C,SAAS5hF,EAAOyI,EAAK5sD,EAAK8B,GACxB,OAAOjC,OAAOw6B,eAAeuyB,EAAK5sD,EAAK,CACrC8B,MAAOA,EACP4+E,YAAY,EACZD,cAAc,EACdulD,UAAU,IACRp5E,EAAI5sD,EACV,CACA,IACEmkD,EAAO,CAAC,EAAG,GAKb,CAJE,MAAO84D,GACP94D,EAAS,SAAgByI,EAAK5sD,EAAK8B,GACjC,OAAO8qD,EAAI5sD,GAAO8B,CACpB,CACF,CACA,SAASmkI,EAAKC,EAASC,EAASC,EAAMC,GACpC,IAAIC,EAAiBH,GAAWA,EAAQrmI,qBAAqBymI,EAAYJ,EAAUI,EACjF3kI,EAAY/B,OAAOqB,OAAOolI,EAAexmI,WACzC4E,EAAU,IAAI09C,EAAQikF,GAAe,IACvC,OAAOhsG,EAAez4B,EAAW,UAAW,CAC1CE,MAAO0kI,EAAiBN,EAASE,EAAM1hI,KACrC9C,CACN,CACA,SAAS6kI,EAASj7E,EAAIoB,EAAKvtD,GACzB,IACE,MAAO,CACL2O,KAAM,SACN3O,IAAKmsD,EAAGvrD,KAAK2sD,EAAKvtD,GAOtB,CALE,MAAO49G,GACP,MAAO,CACLjvG,KAAM,QACN3O,IAAK49G,EAET,CACF,CACA78G,EAAQ6lI,KAAOA,EACf,IAAIS,EAAmB,CAAC,EACxB,SAASH,IAAa,CACtB,SAASI,IAAqB,CAC9B,SAASC,IAA8B,CACvC,IAAIC,EAAoB,CAAC,EACzB1iF,EAAO0iF,EAAmBlB,GAAgB,WACxC,OAAO3kI,IACT,IACA,IAAI8lI,EAAWjnI,OAAO4/G,eACpBsnB,EAA0BD,GAAYA,EAASA,EAASttH,EAAO,MACjEutH,GAA2BA,IAA4BtB,GAAM3mI,EAAOmB,KAAK8mI,EAAyBpB,KAAoBkB,EAAoBE,GAC1I,IAAIC,EAAKJ,EAA2B9mI,UAAYymI,EAAUzmI,UAAYD,OAAOqB,OAAO2lI,GACpF,SAASI,EAAsBnnI,GAC7B,CAAC,OAAQ,QAAS,UAAUuN,SAAQ,SAAU65H,GAC5C/iF,EAAOrkD,EAAWonI,GAAQ,SAAU7nI,GAClC,OAAO2B,KAAKmmI,QAAQD,EAAQ7nI,EAC9B,GACF,GACF,CACA,SAAS+nI,EAAcxlI,EAAWylI,GAChC,SAASC,EAAOJ,EAAQ7nI,EAAK0C,EAASE,GACpC,IAAIslI,EAASd,EAAS7kI,EAAUslI,GAAStlI,EAAWvC,GACpD,GAAI,UAAYkoI,EAAOv5H,KAAM,CAC3B,IAAIzL,EAASglI,EAAOloI,IAClByC,EAAQS,EAAOT,MACjB,OAAOA,GAAS,UAAYwjI,EAAQxjI,IAAUhD,EAAOmB,KAAK6B,EAAO,WAAaulI,EAAYtlI,QAAQD,EAAM0lI,SAAS/kI,MAAK,SAAUX,GAC9HwlI,EAAO,OAAQxlI,EAAOC,EAASE,EACjC,IAAG,SAAUg7G,GACXqqB,EAAO,QAASrqB,EAAKl7G,EAASE,EAChC,IAAKolI,EAAYtlI,QAAQD,GAAOW,MAAK,SAAUglI,GAC7CllI,EAAOT,MAAQ2lI,EAAW1lI,EAAQQ,EACpC,IAAG,SAAUylC,GACX,OAAOs/F,EAAO,QAASt/F,EAAOjmC,EAASE,EACzC,GACF,CACAA,EAAOslI,EAAOloI,IAChB,CACA,IAAIqoI,EACJrtG,EAAer5B,KAAM,UAAW,CAC9Bc,MAAO,SAAeolI,EAAQ7nI,GAC5B,SAASsoI,IACP,OAAO,IAAIN,GAAY,SAAUtlI,EAASE,GACxCqlI,EAAOJ,EAAQ7nI,EAAK0C,EAASE,EAC/B,GACF,CACA,OAAOylI,EAAkBA,EAAkBA,EAAgBjlI,KAAKklI,EAA4BA,GAA8BA,GAC5H,GAEJ,CACA,SAASnB,EAAiBN,EAASE,EAAM1hI,GACvC,IAAIqhG,EAAQ,iBACZ,OAAO,SAAUmhC,EAAQ7nI,GACvB,GAAI,cAAgB0mG,EAAO,MAAM,IAAItgG,MAAM,gCAC3C,GAAI,cAAgBsgG,EAAO,CACzB,GAAI,UAAYmhC,EAAQ,MAAM7nI,EAC9B,OAAOuoI,GACT,CACA,IAAKljI,EAAQwiI,OAASA,EAAQxiI,EAAQrF,IAAMA,IAAO,CACjD,IAAIwoI,EAAWnjI,EAAQmjI,SACvB,GAAIA,EAAU,CACZ,IAAIC,EAAiBC,EAAoBF,EAAUnjI,GACnD,GAAIojI,EAAgB,CAClB,GAAIA,IAAmBpB,EAAkB,SACzC,OAAOoB,CACT,CACF,CACA,GAAI,SAAWpjI,EAAQwiI,OAAQxiI,EAAQzB,KAAOyB,EAAQsjI,MAAQtjI,EAAQrF,SAAS,GAAI,UAAYqF,EAAQwiI,OAAQ,CAC7G,GAAI,mBAAqBnhC,EAAO,MAAMA,EAAQ,YAAarhG,EAAQrF,IACnEqF,EAAQujI,kBAAkBvjI,EAAQrF,IACpC,KAAO,WAAaqF,EAAQwiI,QAAUxiI,EAAQwjI,OAAO,SAAUxjI,EAAQrF,KACvE0mG,EAAQ,YACR,IAAIwhC,EAASd,EAASP,EAASE,EAAM1hI,GACrC,GAAI,WAAa6iI,EAAOv5H,KAAM,CAC5B,GAAI+3F,EAAQrhG,EAAQlC,KAAO,YAAc,iBAAkB+kI,EAAOloI,MAAQqnI,EAAkB,SAC5F,MAAO,CACL5kI,MAAOylI,EAAOloI,IACdmD,KAAMkC,EAAQlC,KAElB,CACA,UAAY+kI,EAAOv5H,OAAS+3F,EAAQ,YAAarhG,EAAQwiI,OAAS,QAASxiI,EAAQrF,IAAMkoI,EAAOloI,IAClG,CACF,CACF,CACA,SAAS0oI,EAAoBF,EAAUnjI,GACrC,IAAIyjI,EAAazjI,EAAQwiI,OACvBA,EAASW,EAASvkI,SAAS6kI,GAC7B,QAAIn5H,IAAck4H,EAAQ,OAAOxiI,EAAQmjI,SAAW,KAAM,UAAYM,GAAcN,EAASvkI,SAAiB,SAAMoB,EAAQwiI,OAAS,SAAUxiI,EAAQrF,SAAM2P,EAAW+4H,EAAoBF,EAAUnjI,GAAU,UAAYA,EAAQwiI,SAAW,WAAaiB,IAAezjI,EAAQwiI,OAAS,QAASxiI,EAAQrF,IAAM,IAAIwB,UAAU,oCAAsCsnI,EAAa,aAAczB,EAClY,IAAIa,EAASd,EAASS,EAAQW,EAASvkI,SAAUoB,EAAQrF,KACzD,GAAI,UAAYkoI,EAAOv5H,KAAM,OAAOtJ,EAAQwiI,OAAS,QAASxiI,EAAQrF,IAAMkoI,EAAOloI,IAAKqF,EAAQmjI,SAAW,KAAMnB,EACjH,IAAIx+F,EAAOq/F,EAAOloI,IAClB,OAAO6oC,EAAOA,EAAK1lC,MAAQkC,EAAQmjI,EAASO,YAAclgG,EAAKpmC,MAAO4C,EAAQtC,KAAOylI,EAASQ,QAAS,WAAa3jI,EAAQwiI,SAAWxiI,EAAQwiI,OAAS,OAAQxiI,EAAQrF,SAAM2P,GAAYtK,EAAQmjI,SAAW,KAAMnB,GAAoBx+F,GAAQxjC,EAAQwiI,OAAS,QAASxiI,EAAQrF,IAAM,IAAIwB,UAAU,oCAAqC6D,EAAQmjI,SAAW,KAAMnB,EACrW,CACA,SAAS4B,EAAaC,GACpB,IAAIhmG,EAAQ,CACVimG,OAAQD,EAAK,IAEf,KAAKA,IAAShmG,EAAMkmG,SAAWF,EAAK,IAAK,KAAKA,IAAShmG,EAAMmmG,WAAaH,EAAK,GAAIhmG,EAAMomG,SAAWJ,EAAK,IAAKvnI,KAAK4nI,WAAWrpI,KAAKgjC,EACrI,CACA,SAASsmG,EAActmG,GACrB,IAAIglG,EAAShlG,EAAMumG,YAAc,CAAC,EAClCvB,EAAOv5H,KAAO,gBAAiBu5H,EAAOloI,IAAKkjC,EAAMumG,WAAavB,CAChE,CACA,SAASnlF,EAAQikF,GACfrlI,KAAK4nI,WAAa,CAAC,CACjBJ,OAAQ,SACNnC,EAAYh5H,QAAQi7H,EAActnI,MAAOA,KAAKyxB,OAAM,EAC1D,CACA,SAASjZ,EAAOuvH,GACd,GAAIA,EAAU,CACZ,IAAIC,EAAiBD,EAASpD,GAC9B,GAAIqD,EAAgB,OAAOA,EAAe/oI,KAAK8oI,GAC/C,GAAI,mBAAqBA,EAAS3mI,KAAM,OAAO2mI,EAC/C,IAAK95E,MAAM85E,EAAS3pI,QAAS,CAC3B,IAAIF,GAAK,EACPkD,EAAO,SAASA,IACd,OAASlD,EAAI6pI,EAAS3pI,QAAS,GAAIN,EAAOmB,KAAK8oI,EAAU7pI,GAAI,OAAOkD,EAAKN,MAAQinI,EAAS7pI,GAAIkD,EAAKI,MAAO,EAAIJ,EAC9G,OAAOA,EAAKN,WAAQkN,EAAW5M,EAAKI,MAAO,EAAIJ,CACjD,EACF,OAAOA,EAAKA,KAAOA,CACrB,CACF,CACA,MAAO,CACLA,KAAMwlI,EAEV,CACA,SAASA,IACP,MAAO,CACL9lI,WAAOkN,EACPxM,MAAM,EAEV,CACA,OAAOmkI,EAAkB7mI,UAAY8mI,EAA4BvsG,EAAe2sG,EAAI,cAAe,CACjGllI,MAAO8kI,EACPnmD,cAAc,IACZpmD,EAAeusG,EAA4B,cAAe,CAC5D9kI,MAAO6kI,EACPlmD,cAAc,IACZkmD,EAAkB/mD,YAAcz7B,EAAOyiF,EAA4Bd,EAAmB,qBAAsB1lI,EAAQ6oI,oBAAsB,SAAUC,GACtJ,IAAIC,EAAO,mBAAqBD,GAAUA,EAAOjoI,YACjD,QAASkoI,IAASA,IAASxC,GAAqB,uBAAyBwC,EAAKvpD,aAAeupD,EAAKpvH,MACpG,EAAG3Z,EAAQgpI,KAAO,SAAUF,GAC1B,OAAOrpI,OAAOY,eAAiBZ,OAAOY,eAAeyoI,EAAQtC,IAA+BsC,EAAOxoI,UAAYkmI,EAA4BziF,EAAO+kF,EAAQpD,EAAmB,sBAAuBoD,EAAOppI,UAAYD,OAAOqB,OAAO8lI,GAAKkC,CAC5O,EAAG9oI,EAAQipI,MAAQ,SAAUhqI,GAC3B,MAAO,CACLmoI,QAASnoI,EAEb,EAAG4nI,EAAsBG,EAActnI,WAAYqkD,EAAOijF,EAActnI,UAAW8lI,GAAqB,WACtG,OAAO5kI,IACT,IAAIZ,EAAQgnI,cAAgBA,EAAehnI,EAAQkpI,MAAQ,SAAUpD,EAASC,EAASC,EAAMC,EAAagB,QACxG,IAAWA,IAAgBA,EAAcrlI,SACzC,IAAIunI,EAAO,IAAInC,EAAcnB,EAAKC,EAASC,EAASC,EAAMC,GAAcgB,GACxE,OAAOjnI,EAAQ6oI,oBAAoB9C,GAAWoD,EAAOA,EAAKnnI,OAAOK,MAAK,SAAUF,GAC9E,OAAOA,EAAOC,KAAOD,EAAOT,MAAQynI,EAAKnnI,MAC3C,GACF,EAAG6kI,EAAsBD,GAAK7iF,EAAO6iF,EAAIlB,EAAmB,aAAc3hF,EAAO6iF,EAAIrB,GAAgB,WACnG,OAAO3kI,IACT,IAAImjD,EAAO6iF,EAAI,YAAY,WACzB,MAAO,oBACT,IAAI5mI,EAAQmuC,KAAO,SAAUqhB,GAC3B,IAAI45E,EAAS3pI,OAAO+vD,GAClBrhB,EAAO,GACT,IAAK,IAAIvuC,KAAOwpI,EAAQj7F,EAAKhvC,KAAKS,GAClC,OAAOuuC,EAAKiJ,UAAW,SAASp1C,IAC9B,KAAOmsC,EAAKnvC,QAAS,CACnB,IAAIY,EAAMuuC,EAAK9qC,MACf,GAAIzD,KAAOwpI,EAAQ,OAAOpnI,EAAKN,MAAQ9B,EAAKoC,EAAKI,MAAO,EAAIJ,CAC9D,CACA,OAAOA,EAAKI,MAAO,EAAIJ,CACzB,CACF,EAAGhC,EAAQoZ,OAASA,EAAQ4oC,EAAQtiD,UAAY,CAC9CmB,YAAamhD,EACb3vB,MAAO,SAAeg3G,GACpB,GAAIzoI,KAAKyM,KAAO,EAAGzM,KAAKoB,KAAO,EAAGpB,KAAKiC,KAAOjC,KAAKgnI,WAAQh5H,EAAWhO,KAAKwB,MAAO,EAAIxB,KAAK6mI,SAAW,KAAM7mI,KAAKkmI,OAAS,OAAQlmI,KAAK3B,SAAM2P,EAAWhO,KAAK4nI,WAAWv7H,QAAQw7H,IAAiBY,EAAe,IAAK,IAAI1vH,KAAQ/Y,KAAM,MAAQ+Y,EAAKgoD,OAAO,IAAMjjE,EAAOmB,KAAKe,KAAM+Y,KAAUk1C,OAAOl1C,EAAK/V,MAAM,MAAQhD,KAAK+Y,QAAQ/K,EACtU,EACAsY,KAAM,WACJtmB,KAAKwB,MAAO,EACZ,IAAIknI,EAAa1oI,KAAK4nI,WAAW,GAAGE,WACpC,GAAI,UAAYY,EAAW17H,KAAM,MAAM07H,EAAWrqI,IAClD,OAAO2B,KAAK2oI,IACd,EACA1B,kBAAmB,SAA2B2B,GAC5C,GAAI5oI,KAAKwB,KAAM,MAAMonI,EACrB,IAAIllI,EAAU1D,KACd,SAAS6oI,EAAOC,EAAKC,GACnB,OAAOxC,EAAOv5H,KAAO,QAASu5H,EAAOloI,IAAMuqI,EAAWllI,EAAQtC,KAAO0nI,EAAKC,IAAWrlI,EAAQwiI,OAAS,OAAQxiI,EAAQrF,SAAM2P,KAAc+6H,CAC5I,CACA,IAAK,IAAI7qI,EAAI8B,KAAK4nI,WAAWxpI,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAIqjC,EAAQvhC,KAAK4nI,WAAW1pI,GAC1BqoI,EAAShlG,EAAMumG,WACjB,GAAI,SAAWvmG,EAAMimG,OAAQ,OAAOqB,EAAO,OAC3C,GAAItnG,EAAMimG,QAAUxnI,KAAKyM,KAAM,CAC7B,IAAIu8H,EAAWlrI,EAAOmB,KAAKsiC,EAAO,YAChC0nG,EAAanrI,EAAOmB,KAAKsiC,EAAO,cAClC,GAAIynG,GAAYC,EAAY,CAC1B,GAAIjpI,KAAKyM,KAAO80B,EAAMkmG,SAAU,OAAOoB,EAAOtnG,EAAMkmG,UAAU,GAC9D,GAAIznI,KAAKyM,KAAO80B,EAAMmmG,WAAY,OAAOmB,EAAOtnG,EAAMmmG,WACxD,MAAO,GAAIsB,GACT,GAAIhpI,KAAKyM,KAAO80B,EAAMkmG,SAAU,OAAOoB,EAAOtnG,EAAMkmG,UAAU,OACzD,CACL,IAAKwB,EAAY,MAAM,IAAIxkI,MAAM,0CACjC,GAAIzE,KAAKyM,KAAO80B,EAAMmmG,WAAY,OAAOmB,EAAOtnG,EAAMmmG,WACxD,CACF,CACF,CACF,EACAR,OAAQ,SAAgBl6H,EAAM3O,GAC5B,IAAK,IAAIH,EAAI8B,KAAK4nI,WAAWxpI,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAIqjC,EAAQvhC,KAAK4nI,WAAW1pI,GAC5B,GAAIqjC,EAAMimG,QAAUxnI,KAAKyM,MAAQ3O,EAAOmB,KAAKsiC,EAAO,eAAiBvhC,KAAKyM,KAAO80B,EAAMmmG,WAAY,CACjG,IAAIwB,EAAe3nG,EACnB,KACF,CACF,CACA2nG,IAAiB,UAAYl8H,GAAQ,aAAeA,IAASk8H,EAAa1B,QAAUnpI,GAAOA,GAAO6qI,EAAaxB,aAAewB,EAAe,MAC7I,IAAI3C,EAAS2C,EAAeA,EAAapB,WAAa,CAAC,EACvD,OAAOvB,EAAOv5H,KAAOA,EAAMu5H,EAAOloI,IAAMA,EAAK6qI,GAAgBlpI,KAAKkmI,OAAS,OAAQlmI,KAAKoB,KAAO8nI,EAAaxB,WAAYhC,GAAoB1lI,KAAKwqC,SAAS+7F,EAC5J,EACA/7F,SAAU,SAAkB+7F,EAAQoB,GAClC,GAAI,UAAYpB,EAAOv5H,KAAM,MAAMu5H,EAAOloI,IAC1C,MAAO,UAAYkoI,EAAOv5H,MAAQ,aAAeu5H,EAAOv5H,KAAOhN,KAAKoB,KAAOmlI,EAAOloI,IAAM,WAAakoI,EAAOv5H,MAAQhN,KAAK2oI,KAAO3oI,KAAK3B,IAAMkoI,EAAOloI,IAAK2B,KAAKkmI,OAAS,SAAUlmI,KAAKoB,KAAO,OAAS,WAAamlI,EAAOv5H,MAAQ26H,IAAa3nI,KAAKoB,KAAOumI,GAAWjC,CACtQ,EACAyD,OAAQ,SAAgBzB,GACtB,IAAK,IAAIxpI,EAAI8B,KAAK4nI,WAAWxpI,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAIqjC,EAAQvhC,KAAK4nI,WAAW1pI,GAC5B,GAAIqjC,EAAMmmG,aAAeA,EAAY,OAAO1nI,KAAKwqC,SAASjJ,EAAMumG,WAAYvmG,EAAMomG,UAAWE,EAActmG,GAAQmkG,CACrH,CACF,EACA,MAAS,SAAgB8B,GACvB,IAAK,IAAItpI,EAAI8B,KAAK4nI,WAAWxpI,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAIqjC,EAAQvhC,KAAK4nI,WAAW1pI,GAC5B,GAAIqjC,EAAMimG,SAAWA,EAAQ,CAC3B,IAAIjB,EAAShlG,EAAMumG,WACnB,GAAI,UAAYvB,EAAOv5H,KAAM,CAC3B,IAAIo8H,EAAS7C,EAAOloI,IACpBwpI,EAActmG,EAChB,CACA,OAAO6nG,CACT,CACF,CACA,MAAM,IAAI3kI,MAAM,wBAClB,EACA4kI,cAAe,SAAuBtB,EAAUX,EAAYC,GAC1D,OAAOrnI,KAAK6mI,SAAW,CACrBvkI,SAAUkW,EAAOuvH,GACjBX,WAAYA,EACZC,QAASA,GACR,SAAWrnI,KAAKkmI,SAAWlmI,KAAK3B,SAAM2P,GAAY03H,CACvD,GACCtmI,CACL,CACAD,EAAOC,QAAUmlI,EAAqBplI,EAAOC,QAAQolI,YAAa,EAAMrlI,EAAOC,QAAiB,QAAID,EAAOC,0BC/S3G,SAASklI,EAAQ14E,GAGf,OAAQzsD,EAAOC,QAAUklI,EAAU,mBAAqBjiI,QAAU,iBAAmBA,OAAOC,SAAW,SAAUspD,GAC/G,cAAcA,CAChB,EAAI,SAAUA,GACZ,OAAOA,GAAO,mBAAqBvpD,QAAUupD,EAAI3rD,cAAgBoC,QAAUupD,IAAQvpD,OAAOvD,UAAY,gBAAkB8sD,CAC1H,EAAGzsD,EAAOC,QAAQolI,YAAa,EAAMrlI,EAAOC,QAAiB,QAAID,EAAOC,QAAUklI,EAAQ14E,EAC5F,CACAzsD,EAAOC,QAAUklI,EAASnlI,EAAOC,QAAQolI,YAAa,EAAMrlI,EAAOC,QAAiB,QAAID,EAAOC,0CCThF,SAASkqI,EAAkBp9E,EAAK3lD,IAClC,MAAPA,GAAeA,EAAM2lD,EAAI9tD,UAAQmI,EAAM2lD,EAAI9tD,QAC/C,IAAK,IAAIF,EAAI,EAAGkkE,EAAO,IAAI5jE,MAAM+H,GAAMrI,EAAIqI,EAAKrI,IAAKkkE,EAAKlkE,GAAKguD,EAAIhuD,GACnE,OAAOkkE,CACT,oECJe,SAASmnE,EAAgBr9E,GACtC,GAAI1tD,MAAMC,QAAQytD,GAAM,OAAOA,CACjC,oECFe,SAASs9E,EAAuBpE,GAC7C,QAAa,IAATA,EACF,MAAM,IAAIqE,eAAe,6DAE3B,OAAOrE,CACT,oECLA,SAASsE,EAAmBC,EAAK5oI,EAASE,EAAQ2oI,EAAOC,EAAQ7qI,EAAKX,GACpE,IACE,IAAI6oC,EAAOyiG,EAAI3qI,GAAKX,GAChByC,EAAQomC,EAAKpmC,KAInB,CAHE,MAAOkmC,GAEP,YADA/lC,EAAO+lC,EAET,CACIE,EAAK1lC,KACPT,EAAQD,GAERE,QAAQD,QAAQD,GAAOW,KAAKmoI,EAAOC,EAEvC,CACe,SAASC,EAAkBt/E,GACxC,OAAO,WACL,IAAI46E,EAAOplI,KACTwZ,EAAOrb,UACT,OAAO,IAAI6C,SAAQ,SAAUD,EAASE,GACpC,IAAI0oI,EAAMn/E,EAAG7rD,MAAMymI,EAAM5rH,GACzB,SAASowH,EAAM9oI,GACb4oI,EAAmBC,EAAK5oI,EAASE,EAAQ2oI,EAAOC,EAAQ,OAAQ/oI,EAClE,CACA,SAAS+oI,EAAO5tB,GACdytB,EAAmBC,EAAK5oI,EAASE,EAAQ2oI,EAAOC,EAAQ,QAAS5tB,EACnE,CACA2tB,OAAM57H,EACR,GACF,CACF,oEC7Be,SAAS+7H,EAAgBxvC,EAAUyvC,GAChD,KAAMzvC,aAAoByvC,GACxB,MAAM,IAAInqI,UAAU,oCAExB,kHCHA,SAASoqI,EAAkBh/F,EAAQo6D,GACjC,IAAK,IAAInnG,EAAI,EAAGA,EAAImnG,EAAMjnG,OAAQF,IAAK,CACrC,IAAIi1B,EAAakyE,EAAMnnG,GACvBi1B,EAAWusD,WAAavsD,EAAWusD,aAAc,EACjDvsD,EAAWssD,cAAe,EACtB,UAAWtsD,IAAYA,EAAW6xG,UAAW,GACjDnmI,OAAOw6B,eAAe4R,GAAQ,OAAc9X,EAAWn0B,KAAMm0B,EAC/D,CACF,CACe,SAAS+2G,EAAaF,EAAaG,EAAYC,GAM5D,OALID,GAAYF,EAAkBD,EAAYlrI,UAAWqrI,GACrDC,GAAaH,EAAkBD,EAAaI,GAChDvrI,OAAOw6B,eAAe2wG,EAAa,YAAa,CAC9ChF,UAAU,IAELgF,CACT,kFChBe,SAASK,EAA2BtxE,EAAGuxE,GACpD,IAAIC,EAAuB,qBAAXloI,QAA0B02D,EAAE12D,OAAOC,WAAay2D,EAAE,cAClE,IAAKwxE,EAAI,CACP,GAAI/rI,MAAMC,QAAQs6D,KAAOwxE,GAAK,OAA2BxxE,KAAOuxE,GAAkBvxE,GAAyB,kBAAbA,EAAE36D,OAAqB,CAC/GmsI,IAAIxxE,EAAIwxE,GACZ,IAAIrsI,EAAI,EACJsT,EAAI,WAAc,EACtB,MAAO,CACLlR,EAAGkR,EACHjR,EAAG,WACD,OAAIrC,GAAK66D,EAAE36D,OAAe,CACxBoD,MAAM,GAED,CACLA,MAAM,EACNV,MAAOi4D,EAAE76D,KAEb,EACAmD,EAAG,SAAWg7C,GACZ,MAAMA,CACR,EACAz6C,EAAG4P,EAEP,CACA,MAAM,IAAI3R,UAAU,wIACtB,CACA,IAEEo8G,EAFEuuB,GAAmB,EACrBC,GAAS,EAEX,MAAO,CACLnqI,EAAG,WACDiqI,EAAKA,EAAGtrI,KAAK85D,EACf,EACAx4D,EAAG,WACD,IAAIY,EAAOopI,EAAGnpI,OAEd,OADAopI,EAAmBrpI,EAAKK,KACjBL,CACT,EACAE,EAAG,SAAWqpI,GACZD,GAAS,EACTxuB,EAAMyuB,CACR,EACA9oI,EAAG,WACD,IACO4oI,GAAoC,MAAhBD,EAAW,QAAWA,EAAW,QAG5D,CAFE,QACA,GAAIE,EAAQ,MAAMxuB,CACpB,CACF,EAEJ,uGChDe,SAAS0uB,EAAaC,GACnC,IAAIC,GAA4B,SAChC,OAAO,WACL,IACEtpI,EADEupI,GAAQ,OAAeF,GAE3B,GAAIC,EAA2B,CAC7B,IAAIE,GAAY,OAAe/qI,MAAMC,YACrCsB,EAASm9E,QAAQC,UAAUmsD,EAAO3sI,UAAW4sI,EAC/C,MACExpI,EAASupI,EAAMnsI,MAAMqB,KAAM7B,WAE7B,OAAO,OAA0B6B,KAAMuB,EACzC,CACF,mFCfe,SAASypI,EAAgBp/E,EAAK5sD,EAAK8B,GAYhD,OAXA9B,GAAM,OAAcA,MACT4sD,EACT/sD,OAAOw6B,eAAeuyB,EAAK5sD,EAAK,CAC9B8B,MAAOA,EACP4+E,YAAY,EACZD,cAAc,EACdulD,UAAU,IAGZp5E,EAAI5sD,GAAO8B,EAEN8qD,CACT,qCCde,SAASq/E,EAAgBlyE,GAItC,OAHAkyE,EAAkBpsI,OAAOY,eAAiBZ,OAAO4/G,eAAe1jB,OAAS,SAAyBhiC,GAChG,OAAOA,EAAEr5D,WAAab,OAAO4/G,eAAe1lD,EAC9C,EACOkyE,EAAgBlyE,EACzB,iHCJe,SAASmyE,EAAUC,EAAUC,GAC1C,GAA0B,oBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAIvrI,UAAU,sDAEtBsrI,EAASrsI,UAAYD,OAAOqB,OAAOkrI,GAAcA,EAAWtsI,UAAW,CACrEmB,YAAa,CACXa,MAAOqqI,EACPnG,UAAU,EACVvlD,cAAc,KAGlB5gF,OAAOw6B,eAAe8xG,EAAU,YAAa,CAC3CnG,UAAU,IAERoG,IAAY,OAAeD,EAAUC,EAC3C,qCChBe,SAASC,IACtB,GAAuB,qBAAZ3sD,UAA4BA,QAAQC,UAAW,OAAO,EACjE,GAAID,QAAQC,UAAU2sD,KAAM,OAAO,EACnC,GAAqB,oBAAVC,MAAsB,OAAO,EACxC,IAEE,OADA9hB,QAAQ3qH,UAAUwtD,QAAQrtD,KAAKy/E,QAAQC,UAAU8qC,QAAS,IAAI,WAAa,MACpE,CAGT,CAFE,MAAOpoH,GACP,OAAO,CACT,CACF,oECVe,SAASmqI,EAAiBjD,GACvC,GAAsB,qBAAXlmI,QAAmD,MAAzBkmI,EAAKlmI,OAAOC,WAA2C,MAAtBimI,EAAK,cAAuB,OAAO/pI,MAAMoE,KAAK2lI,EACtH,oECFe,SAASkD,IACtB,MAAM,IAAI5rI,UAAU,4IACtB,4HCAe,SAAS6rI,EAA2BtG,EAAMnmI,GACvD,GAAIA,IAA2B,YAAlB,OAAQA,IAAsC,oBAATA,GAChD,OAAOA,EACF,QAAa,IAATA,EACT,MAAM,IAAIY,UAAU,4DAEtB,OAAO,OAAsBulI,EAC/B,mFCRe,SAASb,IAEtBA,EAAsB,WACpB,OAAOnlI,CACT,EACA,IAAIA,EAAU,CAAC,EACbqlI,EAAK5lI,OAAOC,UACZhB,EAAS2mI,EAAG1mI,eACZs7B,EAAiBx6B,OAAOw6B,gBAAkB,SAAUuyB,EAAK5sD,EAAK+zH,GAC5DnnE,EAAI5sD,GAAO+zH,EAAKjyH,KAClB,EACA4jI,EAAU,mBAAqBriI,OAASA,OAAS,CAAC,EAClDsiI,EAAiBD,EAAQpiI,UAAY,aACrCsiI,EAAsBF,EAAQG,eAAiB,kBAC/CC,EAAoBJ,EAAQK,aAAe,gBAC7C,SAAS5hF,EAAOyI,EAAK5sD,EAAK8B,GACxB,OAAOjC,OAAOw6B,eAAeuyB,EAAK5sD,EAAK,CACrC8B,MAAOA,EACP4+E,YAAY,EACZD,cAAc,EACdulD,UAAU,IACRp5E,EAAI5sD,EACV,CACA,IACEmkD,EAAO,CAAC,EAAG,GAKb,CAJE,MAAO84D,GACP94D,EAAS,SAAgByI,EAAK5sD,EAAK8B,GACjC,OAAO8qD,EAAI5sD,GAAO8B,CACpB,CACF,CACA,SAASmkI,EAAKC,EAASC,EAASC,EAAMC,GACpC,IAAIC,EAAiBH,GAAWA,EAAQrmI,qBAAqBymI,EAAYJ,EAAUI,EACjF3kI,EAAY/B,OAAOqB,OAAOolI,EAAexmI,WACzC4E,EAAU,IAAI09C,EAAQikF,GAAe,IACvC,OAAOhsG,EAAez4B,EAAW,UAAW,CAC1CE,MAAO0kI,EAAiBN,EAASE,EAAM1hI,KACrC9C,CACN,CACA,SAAS6kI,EAASj7E,EAAIoB,EAAKvtD,GACzB,IACE,MAAO,CACL2O,KAAM,SACN3O,IAAKmsD,EAAGvrD,KAAK2sD,EAAKvtD,GAOtB,CALE,MAAO49G,GACP,MAAO,CACLjvG,KAAM,QACN3O,IAAK49G,EAET,CACF,CACA78G,EAAQ6lI,KAAOA,EACf,IAAIS,EAAmB,CAAC,EACxB,SAASH,IAAa,CACtB,SAASI,IAAqB,CAC9B,SAASC,IAA8B,CACvC,IAAIC,EAAoB,CAAC,EACzB1iF,EAAO0iF,EAAmBlB,GAAgB,WACxC,OAAO3kI,IACT,IACA,IAAI8lI,EAAWjnI,OAAO4/G,eACpBsnB,EAA0BD,GAAYA,EAASA,EAASttH,EAAO,MACjEutH,GAA2BA,IAA4BtB,GAAM3mI,EAAOmB,KAAK8mI,EAAyBpB,KAAoBkB,EAAoBE,GAC1I,IAAIC,EAAKJ,EAA2B9mI,UAAYymI,EAAUzmI,UAAYD,OAAOqB,OAAO2lI,GACpF,SAASI,EAAsBnnI,GAC7B,CAAC,OAAQ,QAAS,UAAUuN,SAAQ,SAAU65H,GAC5C/iF,EAAOrkD,EAAWonI,GAAQ,SAAU7nI,GAClC,OAAO2B,KAAKmmI,QAAQD,EAAQ7nI,EAC9B,GACF,GACF,CACA,SAAS+nI,EAAcxlI,EAAWylI,GAChC,SAASC,EAAOJ,EAAQ7nI,EAAK0C,EAASE,GACpC,IAAIslI,EAASd,EAAS7kI,EAAUslI,GAAStlI,EAAWvC,GACpD,GAAI,UAAYkoI,EAAOv5H,KAAM,CAC3B,IAAIzL,EAASglI,EAAOloI,IAClByC,EAAQS,EAAOT,MACjB,OAAOA,GAAS,WAAY,OAAQA,IAAUhD,EAAOmB,KAAK6B,EAAO,WAAaulI,EAAYtlI,QAAQD,EAAM0lI,SAAS/kI,MAAK,SAAUX,GAC9HwlI,EAAO,OAAQxlI,EAAOC,EAASE,EACjC,IAAG,SAAUg7G,GACXqqB,EAAO,QAASrqB,EAAKl7G,EAASE,EAChC,IAAKolI,EAAYtlI,QAAQD,GAAOW,MAAK,SAAUglI,GAC7CllI,EAAOT,MAAQ2lI,EAAW1lI,EAAQQ,EACpC,IAAG,SAAUylC,GACX,OAAOs/F,EAAO,QAASt/F,EAAOjmC,EAASE,EACzC,GACF,CACAA,EAAOslI,EAAOloI,IAChB,CACA,IAAIqoI,EACJrtG,EAAer5B,KAAM,UAAW,CAC9Bc,MAAO,SAAeolI,EAAQ7nI,GAC5B,SAASsoI,IACP,OAAO,IAAIN,GAAY,SAAUtlI,EAASE,GACxCqlI,EAAOJ,EAAQ7nI,EAAK0C,EAASE,EAC/B,GACF,CACA,OAAOylI,EAAkBA,EAAkBA,EAAgBjlI,KAAKklI,EAA4BA,GAA8BA,GAC5H,GAEJ,CACA,SAASnB,EAAiBN,EAASE,EAAM1hI,GACvC,IAAIqhG,EAAQ,iBACZ,OAAO,SAAUmhC,EAAQ7nI,GACvB,GAAI,cAAgB0mG,EAAO,MAAM,IAAItgG,MAAM,gCAC3C,GAAI,cAAgBsgG,EAAO,CACzB,GAAI,UAAYmhC,EAAQ,MAAM7nI,EAC9B,OAAOuoI,GACT,CACA,IAAKljI,EAAQwiI,OAASA,EAAQxiI,EAAQrF,IAAMA,IAAO,CACjD,IAAIwoI,EAAWnjI,EAAQmjI,SACvB,GAAIA,EAAU,CACZ,IAAIC,EAAiBC,EAAoBF,EAAUnjI,GACnD,GAAIojI,EAAgB,CAClB,GAAIA,IAAmBpB,EAAkB,SACzC,OAAOoB,CACT,CACF,CACA,GAAI,SAAWpjI,EAAQwiI,OAAQxiI,EAAQzB,KAAOyB,EAAQsjI,MAAQtjI,EAAQrF,SAAS,GAAI,UAAYqF,EAAQwiI,OAAQ,CAC7G,GAAI,mBAAqBnhC,EAAO,MAAMA,EAAQ,YAAarhG,EAAQrF,IACnEqF,EAAQujI,kBAAkBvjI,EAAQrF,IACpC,KAAO,WAAaqF,EAAQwiI,QAAUxiI,EAAQwjI,OAAO,SAAUxjI,EAAQrF,KACvE0mG,EAAQ,YACR,IAAIwhC,EAASd,EAASP,EAASE,EAAM1hI,GACrC,GAAI,WAAa6iI,EAAOv5H,KAAM,CAC5B,GAAI+3F,EAAQrhG,EAAQlC,KAAO,YAAc,iBAAkB+kI,EAAOloI,MAAQqnI,EAAkB,SAC5F,MAAO,CACL5kI,MAAOylI,EAAOloI,IACdmD,KAAMkC,EAAQlC,KAElB,CACA,UAAY+kI,EAAOv5H,OAAS+3F,EAAQ,YAAarhG,EAAQwiI,OAAS,QAASxiI,EAAQrF,IAAMkoI,EAAOloI,IAClG,CACF,CACF,CACA,SAAS0oI,EAAoBF,EAAUnjI,GACrC,IAAIyjI,EAAazjI,EAAQwiI,OACvBA,EAASW,EAASvkI,SAAS6kI,GAC7B,QAAIn5H,IAAck4H,EAAQ,OAAOxiI,EAAQmjI,SAAW,KAAM,UAAYM,GAAcN,EAASvkI,SAAiB,SAAMoB,EAAQwiI,OAAS,SAAUxiI,EAAQrF,SAAM2P,EAAW+4H,EAAoBF,EAAUnjI,GAAU,UAAYA,EAAQwiI,SAAW,WAAaiB,IAAezjI,EAAQwiI,OAAS,QAASxiI,EAAQrF,IAAM,IAAIwB,UAAU,oCAAsCsnI,EAAa,aAAczB,EAClY,IAAIa,EAASd,EAASS,EAAQW,EAASvkI,SAAUoB,EAAQrF,KACzD,GAAI,UAAYkoI,EAAOv5H,KAAM,OAAOtJ,EAAQwiI,OAAS,QAASxiI,EAAQrF,IAAMkoI,EAAOloI,IAAKqF,EAAQmjI,SAAW,KAAMnB,EACjH,IAAIx+F,EAAOq/F,EAAOloI,IAClB,OAAO6oC,EAAOA,EAAK1lC,MAAQkC,EAAQmjI,EAASO,YAAclgG,EAAKpmC,MAAO4C,EAAQtC,KAAOylI,EAASQ,QAAS,WAAa3jI,EAAQwiI,SAAWxiI,EAAQwiI,OAAS,OAAQxiI,EAAQrF,SAAM2P,GAAYtK,EAAQmjI,SAAW,KAAMnB,GAAoBx+F,GAAQxjC,EAAQwiI,OAAS,QAASxiI,EAAQrF,IAAM,IAAIwB,UAAU,oCAAqC6D,EAAQmjI,SAAW,KAAMnB,EACrW,CACA,SAAS4B,EAAaC,GACpB,IAAIhmG,EAAQ,CACVimG,OAAQD,EAAK,IAEf,KAAKA,IAAShmG,EAAMkmG,SAAWF,EAAK,IAAK,KAAKA,IAAShmG,EAAMmmG,WAAaH,EAAK,GAAIhmG,EAAMomG,SAAWJ,EAAK,IAAKvnI,KAAK4nI,WAAWrpI,KAAKgjC,EACrI,CACA,SAASsmG,EAActmG,GACrB,IAAIglG,EAAShlG,EAAMumG,YAAc,CAAC,EAClCvB,EAAOv5H,KAAO,gBAAiBu5H,EAAOloI,IAAKkjC,EAAMumG,WAAavB,CAChE,CACA,SAASnlF,EAAQikF,GACfrlI,KAAK4nI,WAAa,CAAC,CACjBJ,OAAQ,SACNnC,EAAYh5H,QAAQi7H,EAActnI,MAAOA,KAAKyxB,OAAM,EAC1D,CACA,SAASjZ,EAAOuvH,GACd,GAAIA,EAAU,CACZ,IAAIC,EAAiBD,EAASpD,GAC9B,GAAIqD,EAAgB,OAAOA,EAAe/oI,KAAK8oI,GAC/C,GAAI,mBAAqBA,EAAS3mI,KAAM,OAAO2mI,EAC/C,IAAK95E,MAAM85E,EAAS3pI,QAAS,CAC3B,IAAIF,GAAK,EACPkD,EAAO,SAASA,IACd,OAASlD,EAAI6pI,EAAS3pI,QAAS,GAAIN,EAAOmB,KAAK8oI,EAAU7pI,GAAI,OAAOkD,EAAKN,MAAQinI,EAAS7pI,GAAIkD,EAAKI,MAAO,EAAIJ,EAC9G,OAAOA,EAAKN,WAAQkN,EAAW5M,EAAKI,MAAO,EAAIJ,CACjD,EACF,OAAOA,EAAKA,KAAOA,CACrB,CACF,CACA,MAAO,CACLA,KAAMwlI,EAEV,CACA,SAASA,IACP,MAAO,CACL9lI,WAAOkN,EACPxM,MAAM,EAEV,CACA,OAAOmkI,EAAkB7mI,UAAY8mI,EAA4BvsG,EAAe2sG,EAAI,cAAe,CACjGllI,MAAO8kI,EACPnmD,cAAc,IACZpmD,EAAeusG,EAA4B,cAAe,CAC5D9kI,MAAO6kI,EACPlmD,cAAc,IACZkmD,EAAkB/mD,YAAcz7B,EAAOyiF,EAA4Bd,EAAmB,qBAAsB1lI,EAAQ6oI,oBAAsB,SAAUC,GACtJ,IAAIC,EAAO,mBAAqBD,GAAUA,EAAOjoI,YACjD,QAASkoI,IAASA,IAASxC,GAAqB,uBAAyBwC,EAAKvpD,aAAeupD,EAAKpvH,MACpG,EAAG3Z,EAAQgpI,KAAO,SAAUF,GAC1B,OAAOrpI,OAAOY,eAAiBZ,OAAOY,eAAeyoI,EAAQtC,IAA+BsC,EAAOxoI,UAAYkmI,EAA4BziF,EAAO+kF,EAAQpD,EAAmB,sBAAuBoD,EAAOppI,UAAYD,OAAOqB,OAAO8lI,GAAKkC,CAC5O,EAAG9oI,EAAQipI,MAAQ,SAAUhqI,GAC3B,MAAO,CACLmoI,QAASnoI,EAEb,EAAG4nI,EAAsBG,EAActnI,WAAYqkD,EAAOijF,EAActnI,UAAW8lI,GAAqB,WACtG,OAAO5kI,IACT,IAAIZ,EAAQgnI,cAAgBA,EAAehnI,EAAQkpI,MAAQ,SAAUpD,EAASC,EAASC,EAAMC,EAAagB,QACxG,IAAWA,IAAgBA,EAAcrlI,SACzC,IAAIunI,EAAO,IAAInC,EAAcnB,EAAKC,EAASC,EAASC,EAAMC,GAAcgB,GACxE,OAAOjnI,EAAQ6oI,oBAAoB9C,GAAWoD,EAAOA,EAAKnnI,OAAOK,MAAK,SAAUF,GAC9E,OAAOA,EAAOC,KAAOD,EAAOT,MAAQynI,EAAKnnI,MAC3C,GACF,EAAG6kI,EAAsBD,GAAK7iF,EAAO6iF,EAAIlB,EAAmB,aAAc3hF,EAAO6iF,EAAIrB,GAAgB,WACnG,OAAO3kI,IACT,IAAImjD,EAAO6iF,EAAI,YAAY,WACzB,MAAO,oBACT,IAAI5mI,EAAQmuC,KAAO,SAAUqhB,GAC3B,IAAI45E,EAAS3pI,OAAO+vD,GAClBrhB,EAAO,GACT,IAAK,IAAIvuC,KAAOwpI,EAAQj7F,EAAKhvC,KAAKS,GAClC,OAAOuuC,EAAKiJ,UAAW,SAASp1C,IAC9B,KAAOmsC,EAAKnvC,QAAS,CACnB,IAAIY,EAAMuuC,EAAK9qC,MACf,GAAIzD,KAAOwpI,EAAQ,OAAOpnI,EAAKN,MAAQ9B,EAAKoC,EAAKI,MAAO,EAAIJ,CAC9D,CACA,OAAOA,EAAKI,MAAO,EAAIJ,CACzB,CACF,EAAGhC,EAAQoZ,OAASA,EAAQ4oC,EAAQtiD,UAAY,CAC9CmB,YAAamhD,EACb3vB,MAAO,SAAeg3G,GACpB,GAAIzoI,KAAKyM,KAAO,EAAGzM,KAAKoB,KAAO,EAAGpB,KAAKiC,KAAOjC,KAAKgnI,WAAQh5H,EAAWhO,KAAKwB,MAAO,EAAIxB,KAAK6mI,SAAW,KAAM7mI,KAAKkmI,OAAS,OAAQlmI,KAAK3B,SAAM2P,EAAWhO,KAAK4nI,WAAWv7H,QAAQw7H,IAAiBY,EAAe,IAAK,IAAI1vH,KAAQ/Y,KAAM,MAAQ+Y,EAAKgoD,OAAO,IAAMjjE,EAAOmB,KAAKe,KAAM+Y,KAAUk1C,OAAOl1C,EAAK/V,MAAM,MAAQhD,KAAK+Y,QAAQ/K,EACtU,EACAsY,KAAM,WACJtmB,KAAKwB,MAAO,EACZ,IAAIknI,EAAa1oI,KAAK4nI,WAAW,GAAGE,WACpC,GAAI,UAAYY,EAAW17H,KAAM,MAAM07H,EAAWrqI,IAClD,OAAO2B,KAAK2oI,IACd,EACA1B,kBAAmB,SAA2B2B,GAC5C,GAAI5oI,KAAKwB,KAAM,MAAMonI,EACrB,IAAIllI,EAAU1D,KACd,SAAS6oI,EAAOC,EAAKC,GACnB,OAAOxC,EAAOv5H,KAAO,QAASu5H,EAAOloI,IAAMuqI,EAAWllI,EAAQtC,KAAO0nI,EAAKC,IAAWrlI,EAAQwiI,OAAS,OAAQxiI,EAAQrF,SAAM2P,KAAc+6H,CAC5I,CACA,IAAK,IAAI7qI,EAAI8B,KAAK4nI,WAAWxpI,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAIqjC,EAAQvhC,KAAK4nI,WAAW1pI,GAC1BqoI,EAAShlG,EAAMumG,WACjB,GAAI,SAAWvmG,EAAMimG,OAAQ,OAAOqB,EAAO,OAC3C,GAAItnG,EAAMimG,QAAUxnI,KAAKyM,KAAM,CAC7B,IAAIu8H,EAAWlrI,EAAOmB,KAAKsiC,EAAO,YAChC0nG,EAAanrI,EAAOmB,KAAKsiC,EAAO,cAClC,GAAIynG,GAAYC,EAAY,CAC1B,GAAIjpI,KAAKyM,KAAO80B,EAAMkmG,SAAU,OAAOoB,EAAOtnG,EAAMkmG,UAAU,GAC9D,GAAIznI,KAAKyM,KAAO80B,EAAMmmG,WAAY,OAAOmB,EAAOtnG,EAAMmmG,WACxD,MAAO,GAAIsB,GACT,GAAIhpI,KAAKyM,KAAO80B,EAAMkmG,SAAU,OAAOoB,EAAOtnG,EAAMkmG,UAAU,OACzD,CACL,IAAKwB,EAAY,MAAM,IAAIxkI,MAAM,0CACjC,GAAIzE,KAAKyM,KAAO80B,EAAMmmG,WAAY,OAAOmB,EAAOtnG,EAAMmmG,WACxD,CACF,CACF,CACF,EACAR,OAAQ,SAAgBl6H,EAAM3O,GAC5B,IAAK,IAAIH,EAAI8B,KAAK4nI,WAAWxpI,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAIqjC,EAAQvhC,KAAK4nI,WAAW1pI,GAC5B,GAAIqjC,EAAMimG,QAAUxnI,KAAKyM,MAAQ3O,EAAOmB,KAAKsiC,EAAO,eAAiBvhC,KAAKyM,KAAO80B,EAAMmmG,WAAY,CACjG,IAAIwB,EAAe3nG,EACnB,KACF,CACF,CACA2nG,IAAiB,UAAYl8H,GAAQ,aAAeA,IAASk8H,EAAa1B,QAAUnpI,GAAOA,GAAO6qI,EAAaxB,aAAewB,EAAe,MAC7I,IAAI3C,EAAS2C,EAAeA,EAAapB,WAAa,CAAC,EACvD,OAAOvB,EAAOv5H,KAAOA,EAAMu5H,EAAOloI,IAAMA,EAAK6qI,GAAgBlpI,KAAKkmI,OAAS,OAAQlmI,KAAKoB,KAAO8nI,EAAaxB,WAAYhC,GAAoB1lI,KAAKwqC,SAAS+7F,EAC5J,EACA/7F,SAAU,SAAkB+7F,EAAQoB,GAClC,GAAI,UAAYpB,EAAOv5H,KAAM,MAAMu5H,EAAOloI,IAC1C,MAAO,UAAYkoI,EAAOv5H,MAAQ,aAAeu5H,EAAOv5H,KAAOhN,KAAKoB,KAAOmlI,EAAOloI,IAAM,WAAakoI,EAAOv5H,MAAQhN,KAAK2oI,KAAO3oI,KAAK3B,IAAMkoI,EAAOloI,IAAK2B,KAAKkmI,OAAS,SAAUlmI,KAAKoB,KAAO,OAAS,WAAamlI,EAAOv5H,MAAQ26H,IAAa3nI,KAAKoB,KAAOumI,GAAWjC,CACtQ,EACAyD,OAAQ,SAAgBzB,GACtB,IAAK,IAAIxpI,EAAI8B,KAAK4nI,WAAWxpI,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAIqjC,EAAQvhC,KAAK4nI,WAAW1pI,GAC5B,GAAIqjC,EAAMmmG,aAAeA,EAAY,OAAO1nI,KAAKwqC,SAASjJ,EAAMumG,WAAYvmG,EAAMomG,UAAWE,EAActmG,GAAQmkG,CACrH,CACF,EACA,MAAS,SAAgB8B,GACvB,IAAK,IAAItpI,EAAI8B,KAAK4nI,WAAWxpI,OAAS,EAAGF,GAAK,IAAKA,EAAG,CACpD,IAAIqjC,EAAQvhC,KAAK4nI,WAAW1pI,GAC5B,GAAIqjC,EAAMimG,SAAWA,EAAQ,CAC3B,IAAIjB,EAAShlG,EAAMumG,WACnB,GAAI,UAAYvB,EAAOv5H,KAAM,CAC3B,IAAIo8H,EAAS7C,EAAOloI,IACpBwpI,EAActmG,EAChB,CACA,OAAO6nG,CACT,CACF,CACA,MAAM,IAAI3kI,MAAM,wBAClB,EACA4kI,cAAe,SAAuBtB,EAAUX,EAAYC,GAC1D,OAAOrnI,KAAK6mI,SAAW,CACrBvkI,SAAUkW,EAAOuvH,GACjBX,WAAYA,EACZC,QAASA,GACR,SAAWrnI,KAAKkmI,SAAWlmI,KAAK3B,SAAM2P,GAAY03H,CACvD,GACCtmI,CACL,qCC9Se,SAASusI,EAAgB5yE,EAAGp5D,GAKzC,OAJAgsI,EAAkB9sI,OAAOY,eAAiBZ,OAAOY,eAAes7F,OAAS,SAAyBhiC,EAAGp5D,GAEnG,OADAo5D,EAAEr5D,UAAYC,EACPo5D,CACT,EACO4yE,EAAgB5yE,EAAGp5D,EAC5B,yICFe,SAASisI,EAAe1/E,EAAKhuD,GAC1C,OAAO,EAAA2tI,EAAA,GAAe3/E,ICLT,SAA+BA,EAAKhuD,GACjD,IAAIsH,EAAK,MAAQ0mD,EAAM,KAAO,oBAAsB7pD,QAAU6pD,EAAI7pD,OAAOC,WAAa4pD,EAAI,cAC1F,GAAI,MAAQ1mD,EAAI,CACd,IAAIsmI,EACFzvF,EACA0vF,EACAC,EACAC,EAAO,GACPC,GAAK,EACL5vF,GAAK,EACP,IACE,GAAIyvF,GAAMvmI,EAAKA,EAAGvG,KAAKitD,IAAM9qD,KAAM,IAAMlD,EAAG,CAC1C,GAAIW,OAAO2G,KAAQA,EAAI,OACvB0mI,GAAK,CACP,MAAO,OAASA,GAAMJ,EAAKC,EAAG9sI,KAAKuG,IAAKhE,QAAUyqI,EAAK1tI,KAAKutI,EAAGhrI,OAAQmrI,EAAK7tI,SAAWF,GAAIguI,GAAK,GASlG,CARE,MAAOjwB,GACP3/D,GAAK,EAAID,EAAK4/D,CAChB,CAAE,QACA,IACE,IAAKiwB,GAAM,MAAQ1mI,EAAW,SAAMwmI,EAAKxmI,EAAW,SAAK3G,OAAOmtI,KAAQA,GAAK,MAG/E,CAFE,QACA,GAAI1vF,EAAI,MAAMD,CAChB,CACF,CACA,OAAO4vF,CACT,CACF,CDrBgC,CAAqB//E,EAAKhuD,KAAM,EAAAiuI,EAAA,GAA2BjgF,EAAKhuD,KAAM,EAAAkuI,EAAA,IACtG,yGEFe,SAASC,EAAmBngF,GACzC,OCJa,SAA4BA,GACzC,GAAI1tD,MAAMC,QAAQytD,GAAM,OAAO,EAAAogF,EAAA,GAAiBpgF,EAClD,CDES,CAAkBA,KAAQ,EAAAqgF,EAAA,GAAgBrgF,KAAQ,EAAAigF,EAAA,GAA2BjgF,IELvE,WACb,MAAM,IAAIrsD,UAAU,uIACtB,CFG8F,EAC9F,mFGJe,SAAS2sI,EAAenuI,GACrC,IAAIW,ECFS,SAAsBs+B,EAAOmvG,GAC1C,GAAuB,YAAnB,OAAQnvG,IAAiC,OAAVA,EAAgB,OAAOA,EAC1D,IAAIovG,EAAOpvG,EAAMj7B,OAAOsqI,aACxB,QAAa3+H,IAAT0+H,EAAoB,CACtB,IAAIvgF,EAAMugF,EAAKztI,KAAKq+B,EAAOmvG,GAAQ,WACnC,GAAqB,YAAjB,OAAQtgF,GAAmB,OAAOA,EACtC,MAAM,IAAItsD,UAAU,+CACtB,CACA,OAAiB,WAAT4sI,EAAoB3sI,OAAS68G,QAAQr/E,EAC/C,CDPY,CAAYj/B,EAAK,UAC3B,MAAwB,YAAjB,OAAQW,GAAoBA,EAAMc,OAAOd,EAClD,qCELe,SAASslI,EAAQ14E,GAG9B,OAAO04E,EAAU,mBAAqBjiI,QAAU,iBAAmBA,OAAOC,SAAW,SAAUspD,GAC7F,cAAcA,CAChB,EAAI,SAAUA,GACZ,OAAOA,GAAO,mBAAqBvpD,QAAUupD,EAAI3rD,cAAgBoC,QAAUupD,IAAQvpD,OAAOvD,UAAY,gBAAkB8sD,CAC1H,EAAG04E,EAAQ14E,EACb,gHCPe,SAASghF,EAA4B7zE,EAAG8zE,GACrD,GAAK9zE,EAAL,CACA,GAAiB,kBAANA,EAAgB,OAAO,OAAiBA,EAAG8zE,GACtD,IAAItsI,EAAI1B,OAAOC,UAAUF,SAASK,KAAK85D,GAAG/1D,MAAM,GAAI,GAEpD,MADU,WAANzC,GAAkBw4D,EAAE94D,cAAaM,EAAIw4D,EAAE94D,YAAY8Y,MAC7C,QAANxY,GAAqB,QAANA,EAAoB/B,MAAMoE,KAAKm2D,GACxC,cAANx4D,GAAqB,2CAA2C2kC,KAAK3kC,IAAW,OAAiBw4D,EAAG8zE,QAAxG,CALc,CAMhB,2w8uBCPIC,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBh/H,IAAjBi/H,EACH,OAAOA,EAAa7tI,QAGrB,IAAID,EAAS2tI,EAAyBE,GAAY,CACjDpsF,GAAIosF,EACJE,QAAQ,EACR9tI,QAAS,CAAC,GAUX,OANA+tI,EAAoBH,GAAU/tI,KAAKE,EAAOC,QAASD,EAAQA,EAAOC,QAAS2tI,GAG3E5tI,EAAO+tI,QAAS,EAGT/tI,EAAOC,OACf,CAGA2tI,EAAoBhxG,EAAIoxG,EC3BxBJ,EAAoBxsI,EAAI,SAASpB,GAChC,IAAIq1E,EAASr1E,GAAUA,EAAOqlI,WAC7B,WAAa,OAAOrlI,EAAgB,OAAG,EACvC,WAAa,OAAOA,CAAQ,EAE7B,OADA4tI,EAAoBxtI,EAAEi1E,EAAQ,CAAE7nE,EAAG6nE,IAC5BA,CACR,aCPA,IACI44D,EADAtH,EAAWjnI,OAAO4/G,eAAiB,SAAS7yD,GAAO,OAAO/sD,OAAO4/G,eAAe7yD,EAAM,EAAI,SAASA,GAAO,OAAOA,EAAIlsD,SAAW,EAQpIqtI,EAAoB1sI,EAAI,SAASS,EAAO4/F,GAEvC,GADU,EAAPA,IAAU5/F,EAAQd,KAAKc,IAChB,EAAP4/F,EAAU,OAAO5/F,EACpB,GAAoB,kBAAVA,GAAsBA,EAAO,CACtC,GAAW,EAAP4/F,GAAa5/F,EAAM0jI,WAAY,OAAO1jI,EAC1C,GAAW,GAAP4/F,GAAoC,oBAAf5/F,EAAMW,KAAqB,OAAOX,CAC5D,CACA,IAAIusI,EAAKxuI,OAAOqB,OAAO,MACvB6sI,EAAoB5xH,EAAEkyH,GACtB,IAAIluB,EAAM,CAAC,EACXiuB,EAAiBA,GAAkB,CAAC,KAAMtH,EAAS,CAAC,GAAIA,EAAS,IAAKA,EAASA,IAC/E,IAAI,IAAIh5H,EAAiB,EAAP4zF,GAAY5/F,EAAyB,iBAAXgM,KAAyBsgI,EAAe5gI,QAAQM,GAAUA,EAAUg5H,EAASh5H,GACxHjO,OAAOgtD,oBAAoB/+C,GAAST,SAAQ,SAASrN,GAAOmgH,EAAIngH,GAAO,WAAa,OAAO8B,EAAM9B,EAAM,CAAG,IAI3G,OAFAmgH,EAAa,QAAI,WAAa,OAAOr+G,CAAO,EAC5CisI,EAAoBxtI,EAAE8tI,EAAIluB,GACnBkuB,CACR,KCxBAN,EAAoBxtI,EAAI,SAASH,EAASkuI,GACzC,IAAI,IAAItuI,KAAOsuI,EACXP,EAAoBh0E,EAAEu0E,EAAYtuI,KAAS+tI,EAAoBh0E,EAAE35D,EAASJ,IAC5EH,OAAOw6B,eAAej6B,EAASJ,EAAK,CAAE0gF,YAAY,EAAMnzE,IAAK+gI,EAAWtuI,IAG3E,ECPA+tI,EAAoBnrI,EAAI,CAAC,EAGzBmrI,EAAoB1rI,EAAI,SAASksI,GAChC,OAAOvsI,QAAQypC,IAAI5rC,OAAO0uC,KAAKw/F,EAAoBnrI,GAAG4mB,QAAO,SAASglH,EAAUxuI,GAE/E,OADA+tI,EAAoBnrI,EAAE5C,GAAKuuI,EAASC,GAC7BA,CACR,GAAG,IACJ,ECPAT,EAAoB37H,EAAI,SAASm8H,GAEhC,MAAO,aAAeA,EAAU,IAAM,CAAC,IAAM,WAAW,IAAM,YAAYA,GAAW,WACtF,ECHAR,EAAoBU,SAAW,SAASF,GAGxC,ECJAR,EAAoBjrI,EAAI,WACvB,GAA0B,kBAAf4rI,WAAyB,OAAOA,WAC3C,IACC,OAAO1tI,MAAQ,IAAI4vD,SAAS,cAAb,EAGhB,CAFE,MAAOvuD,GACR,GAAsB,kBAAX2yB,OAAqB,OAAOA,MACxC,CACA,CAPuB,GCAxB+4G,EAAoBh0E,EAAI,SAASnN,EAAK+C,GAAQ,OAAO9vD,OAAOC,UAAUf,eAAekB,KAAK2sD,EAAK+C,EAAO,aCAtG,IAAIg/E,EAAa,CAAC,EACdC,EAAoB,uBAExBb,EAAoBhqI,EAAI,SAAS2nB,EAAKlpB,EAAMxC,EAAKuuI,GAChD,GAAGI,EAAWjjH,GAAQijH,EAAWjjH,GAAKnsB,KAAKiD,OAA3C,CACA,IAAIqsI,EAAQC,EACZ,QAAW9/H,IAARhP,EAEF,IADA,IAAI+uI,EAAUxpI,SAASypI,qBAAqB,UACpC9vI,EAAI,EAAGA,EAAI6vI,EAAQ3vI,OAAQF,IAAK,CACvC,IAAIoC,EAAIytI,EAAQ7vI,GAChB,GAAGoC,EAAEozB,aAAa,QAAUhJ,GAAOpqB,EAAEozB,aAAa,iBAAmBk6G,EAAoB5uI,EAAK,CAAE6uI,EAASvtI,EAAG,KAAO,CACpH,CAEGutI,IACHC,GAAa,GACbD,EAAStpI,SAASwxB,cAAc,WAEzBk4G,QAAU,QACjBJ,EAAO5/F,QAAU,IACb8+F,EAAoBmB,IACvBL,EAAOnxG,aAAa,QAASqwG,EAAoBmB,IAElDL,EAAOnxG,aAAa,eAAgBkxG,EAAoB5uI,GACxD6uI,EAAOh2G,IAAMnN,GAEdijH,EAAWjjH,GAAO,CAAClpB,GACnB,IAAI2sI,EAAmB,SAAS1hI,EAAMmpF,GAErCi4C,EAAO90G,QAAU80G,EAAO/0G,OAAS,KACjC4jE,aAAazuD,GACb,IAAImgG,EAAUT,EAAWjjH,GAIzB,UAHOijH,EAAWjjH,GAClBmjH,EAAO3yG,YAAc2yG,EAAO3yG,WAAW9E,YAAYy3G,GACnDO,GAAWA,EAAQ/hI,SAAQ,SAASm+C,GAAM,OAAOA,EAAGorC,EAAQ,IACzDnpF,EAAM,OAAOA,EAAKmpF,EACtB,EACI3nD,EAAUZ,WAAW8gG,EAAiBpzC,KAAK,UAAM/sF,EAAW,CAAEhB,KAAM,UAAWi+B,OAAQ4iG,IAAW,MACtGA,EAAO90G,QAAUo1G,EAAiBpzC,KAAK,KAAM8yC,EAAO90G,SACpD80G,EAAO/0G,OAASq1G,EAAiBpzC,KAAK,KAAM8yC,EAAO/0G,QACnDg1G,GAAcvpI,SAAS8pI,KAAKr4G,YAAY63G,EAnCkB,CAoC3D,KCvCAd,EAAoB5xH,EAAI,SAAS/b,GACX,qBAAXiD,QAA0BA,OAAO0iI,aAC1ClmI,OAAOw6B,eAAej6B,EAASiD,OAAO0iI,YAAa,CAAEjkI,MAAO,WAE7DjC,OAAOw6B,eAAej6B,EAAS,aAAc,CAAE0B,OAAO,GACvD,ECNAisI,EAAoBuB,IAAM,SAASnvI,GAGlC,OAFAA,EAAO49C,MAAQ,GACV59C,EAAOgiF,WAAUhiF,EAAOgiF,SAAW,IACjChiF,CACR,ECJA4tI,EAAoBptI,EAAI,mBCKxB,IAAI4uI,EAAkB,CACrB,IAAK,GAGNxB,EAAoBnrI,EAAE+kD,EAAI,SAAS4mF,EAASC,GAE1C,IAAIgB,EAAqBzB,EAAoBh0E,EAAEw1E,EAAiBhB,GAAWgB,EAAgBhB,QAAWv/H,EACtG,GAA0B,IAAvBwgI,EAGF,GAAGA,EACFhB,EAASjvI,KAAKiwI,EAAmB,QAC3B,CAGL,IAAIjO,EAAU,IAAIv/H,SAAQ,SAASD,EAASE,GAAUutI,EAAqBD,EAAgBhB,GAAW,CAACxsI,EAASE,EAAS,IACzHusI,EAASjvI,KAAKiwI,EAAmB,GAAKjO,GAGtC,IAAI71G,EAAMqiH,EAAoBptI,EAAIotI,EAAoB37H,EAAEm8H,GAEpDvmG,EAAQ,IAAIviC,MAgBhBsoI,EAAoBhqI,EAAE2nB,GAfH,SAASkrE,GAC3B,GAAGm3C,EAAoBh0E,EAAEw1E,EAAiBhB,KAEf,KAD1BiB,EAAqBD,EAAgBhB,MACRgB,EAAgBhB,QAAWv/H,GACrDwgI,GAAoB,CACtB,IAAIC,EAAY74C,IAAyB,SAAfA,EAAM5oF,KAAkB,UAAY4oF,EAAM5oF,MAChE0hI,EAAU94C,GAASA,EAAM3qD,QAAU2qD,EAAM3qD,OAAOpT,IACpDmP,EAAM0hB,QAAU,iBAAmB6kF,EAAU,cAAgBkB,EAAY,KAAOC,EAAU,IAC1F1nG,EAAMjuB,KAAO,iBACbiuB,EAAMh6B,KAAOyhI,EACbznG,EAAM2nG,QAAUD,EAChBF,EAAmB,GAAGxnG,EACvB,CAEF,GACyC,SAAWumG,EAASA,EAE/D,CAEH,EAaA,IAAIqB,EAAuB,SAASC,EAA4B5mI,GAC/D,IAKI+kI,EAAUO,EALVuB,EAAW7mI,EAAK,GAChB8mI,EAAc9mI,EAAK,GACnB+mI,EAAU/mI,EAAK,GAGI/J,EAAI,EAC3B,GAAG4wI,EAAS36G,MAAK,SAASysB,GAAM,OAA+B,IAAxB2tF,EAAgB3tF,EAAW,IAAI,CACrE,IAAIosF,KAAY+B,EACZhC,EAAoBh0E,EAAEg2E,EAAa/B,KACrCD,EAAoBhxG,EAAEixG,GAAY+B,EAAY/B,IAGhD,GAAGgC,EAAsBA,EAAQjC,EAClC,CAEA,IADG8B,GAA4BA,EAA2B5mI,GACrD/J,EAAI4wI,EAAS1wI,OAAQF,IACzBqvI,EAAUuB,EAAS5wI,GAChB6uI,EAAoBh0E,EAAEw1E,EAAiBhB,IAAYgB,EAAgBhB,IACrEgB,EAAgBhB,GAAS,KAE1BgB,EAAgBhB,GAAW,CAG7B,EAEI0B,EAAqB7J,KAAsC,gCAAIA,KAAsC,iCAAK,GAC9G6J,EAAmB5iI,QAAQuiI,EAAqB7zC,KAAK,KAAM,IAC3Dk0C,EAAmB1wI,KAAOqwI,EAAqB7zC,KAAK,KAAMk0C,EAAmB1wI,KAAKw8F,KAAKk0C,gGCvF1EC,EACJ,SADIA,EAEH,UAFGA,EAGW,wBAHXA,EAIS,sBAGTC,EAAkC,cAElCC,EAAiC,cAAjCA,EAAoE,qBCEjF,EATwB,SAACrqC,EAAOiE,GAC/B,OAAQA,EAAOh8F,OACTmiI,EACGl8H,SAAS+1F,EAAOqmC,YAEhBtqC,CAEV,sBCRA,SAASuqC,EAAQ9G,EAAQ+G,GACvB,IAAIhiG,EAAO1uC,OAAO0uC,KAAKi7F,GACvB,GAAI3pI,OAAO2wI,sBAAuB,CAChC,IAAI1tG,EAAUjjC,OAAO2wI,sBAAsBhH,GAC3C+G,IAAmBztG,EAAUA,EAAQjnB,QAAO,SAAU40H,GACpD,OAAO5wI,OAAO2gF,yBAAyBgpD,EAAQiH,GAAK/vD,UACtD,KAAKnyC,EAAKhvC,KAAKI,MAAM4uC,EAAMzL,EAC7B,CACA,OAAOyL,CACT,CACe,SAASmiG,EAAezkG,GACrC,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIymD,EAAS,MAAQxmD,UAAUD,GAAKC,UAAUD,GAAK,CAAC,EACpDA,EAAI,EAAIoxI,EAAQzwI,OAAO8lD,IAAS,GAAIt4C,SAAQ,SAAUrN,IACpD,EAAAq6B,EAAA,GAAe4R,EAAQjsC,EAAK2lD,EAAO3lD,GACrC,IAAKH,OAAO8wI,0BAA4B9wI,OAAO+wI,iBAAiB3kG,EAAQpsC,OAAO8wI,0BAA0BhrF,IAAW2qF,EAAQzwI,OAAO8lD,IAASt4C,SAAQ,SAAUrN,GAC5JH,OAAOw6B,eAAe4R,EAAQjsC,EAAKH,OAAO2gF,yBAAyB76B,EAAQ3lD,GAC7E,GACF,CACA,OAAOisC,CACT,CCnBO,IAAM4kG,EAAmB,CAC/BC,QAAS,GACTC,mBAAe/hI,GAgBhB,EAbuB,SAAC+2F,EAAOiE,GAC9B,OAAQA,EAAOh8F,MACd,KAAKoiI,EACJ,OAAO,OACHrqC,GAAK,IACR+qC,SAAQ,OAAK9mC,EAAO1F,WAEtB,KAAK8rC,EACJ,OAAO,OAAKrqC,GAAK,IAAEgrC,cAAe/mC,EAAO1F,UAC1C,QACC,OAAOyB,EAEV,ECjBairC,EAAgB,CAC5BC,OAAQ,KACRC,SAAU,KACVC,OAAQ,KACR96C,MAAO,KACP+6C,MAAO,KACPC,MAAO,KACPC,MAAO,KACPC,qBAAsB,KACtBC,gBAAiB,KACjBC,UAAW,KACXv7H,MAAO,GACP46H,QAAS,KACTY,UAAU,EACVC,oBAAqB,GAmBtB,EAhBoB,SAAC5rC,EAAOiE,GAC3B,OAAQA,EAAOh8F,MACd,KAAKkiI,EACJ,OAAO,OAAKlmC,EAAO1F,SAAO,IAAEotC,UAAU,IACvC,KAAKxB,EACJ,OAAOc,EACR,KAAKd,EACJ,OAAO,OAAKnqC,GAAK,IAAE4rC,oBAAqB,IACzC,KAAKzB,EACJ,OAAO,OAAKnqC,GAAUiE,EAAO1F,SAE9B,QACC,OAAOyB,EAEV,sBCjCe,SAAS6rC,EAAuBC,EAAUC,GACvD,IAAKjyI,OAAOC,UAAUf,eAAekB,KAAK4xI,EAAUC,GAClD,MAAM,IAAIjxI,UAAU,kDAEtB,OAAOgxI,CACT,CCLA,IAAIjwF,EAAK,EACM,SAASmwF,EAAsBh4H,GAC5C,MAAO,aAAe6nC,IAAO,IAAM7nC,CACrC,CCHA,IAAMi4H,EAAUC,gCAEVxwB,EAAU,IAAIywB,QACpBzwB,EAAQ0wB,OAAO,8BAA+B,KAC9C1wB,EAAQ0wB,OAAO,eAAgB,oBAAoB,ICG/CC,EDH+C,mEAE7CC,GAAQ,QACb,WAAYC,GAAa,IAAD,4BAKxBC,MAAK,yCAAG,8FAA2B,OAAlBrB,EAAQ,EAARA,SAAU56C,EAAQ,EAARA,SAAQ,oBAEd,EAAI,MAAkB07C,EAAO,aAAiB,CAChEvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAEg3B,SAAAA,EAAU56C,SAAAA,MAC/B,KAAF,EAGA,QAPKrtF,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,WAAcxpI,EAAKypI,WAC1DzpI,EAAKiN,MAAQ,EAAKy8H,WAAWzB,EAAU56C,IACvC,kBACMrtF,GAAI,OAEwB,OAFxB,yBAEXg5C,QAAQja,MAAM,QAAS,KAAG0hB,SAAS,kBAC5B,MAAI,yDAEZ,mDAfI,GAeJ,KAEDkpF,OAAS,WACR,IACC,EAAKC,aACLC,eAAeC,WAAW,OAI3B,CAHE,MAAOC,GAER,OADA/wF,QAAQja,MAAM,SAAUgrG,EAAGtpF,SACpB,IACR,CACD,EAAE,KAGFupF,qBAAoB,yCAAG,WAAM58C,GAAK,uGAEb,EAAI,MAAkB27C,EAAO,0CAAsC37C,GAAS,CAAEorB,QAAAA,EAASylB,OAAQ,SAAU,KAAF,EAAhH,KAAJj+H,EAAI,SAEGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEuC,OAFvC,yBAEXg5C,QAAQja,MAAM,uBAAwB,KAAG0hB,SAAS,kBAC3C,MAAI,yDAEZ,mDAVmB,GAUnB,KAEDwpF,sBAAqB,yCAAG,WAAOjC,EAAQ/8C,GAAI,uGAEtB,EAAI,MAAkB89C,EAAO,6BAAiC,CAChFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAE+2B,OAAAA,EAAQ/8C,KAAAA,MAC7B,KAAF,EAJS,KAAJjrF,EAAI,SAMGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEwC,OAFxC,yBAEXg5C,QAAQja,MAAM,wBAAyB,KAAG0hB,SAAS,kBAC5C,MAAI,yDAEZ,qDAdoB,GAcpB,KAEDypF,mBAAkB,yCAAG,WAAOlC,EAAQ36C,GAAQ,uGAEvB,EAAI,MAAkB07C,EAAO,0BAA8B,CAC7EvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAE+2B,OAAAA,EAAQ36C,SAAAA,MAC7B,KAAF,EAJS,KAAJrtF,EAAI,SAMGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEqC,OAFrC,yBAEXg5C,QAAQja,MAAM,qBAAsB,KAAG0hB,SAAS,kBACzC,MAAI,yDAEZ,qDAdiB,GAcjB,KAGD0pF,gBAAc,uBAAG,oHAEI,EAAI,MAAkBpB,EAAO,uBAA0B,KAAF,EAA9D,KAAJ/oI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEiC,OAFjC,yBAEXg5C,QAAQja,MAAM,iBAAkB,KAAG0hB,SAAS,kBACrC,MAAI,yDAEZ,KAED2pF,oBAAmB,yCAAG,WAAOC,EAAUC,GAAS,uGAE3B,EAAI,MAAkBvB,EAAO,2BAA+B,CAC9EvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAU,CAAEo5B,SAAAA,EAAUC,UAAAA,MAC/B,KAAF,EAJS,KAAJtqI,EAAI,SAMGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEsC,OAFtC,yBAEXg5C,QAAQja,MAAM,sBAAuB,KAAG0hB,SAAS,kBAC1C,MAAI,yDAEZ,qDAdkB,GAclB,KAED8pF,wBAAuB,yCAAG,WAAOC,EAAUF,GAAS,uGAE/B,EAAI,MAAkBvB,EAAO,gDAA4CyB,EAAQ,sBAAcF,IAAa,KAAF,EAAnH,KAAJtqI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE0C,OAF1C,yBAEXg5C,QAAQja,MAAM,0BAA2B,KAAG0hB,SAAS,kBAC9C,MAAI,yDAEZ,qDATsB,GAStB,KAEDgqF,kBAAiB,yCAAG,WAAMxtG,GAAI,uGAET,EAAI,MAAkB8rG,EAAO,yBAA6B,CAC5EvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAUh0E,KACnB,KAAF,EAJS,GAKG,QALPj9B,EAAI,SAKYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEoC,OAFpC,yBAEXg5C,QAAQja,MAAM,oBAAqB,KAAG0hB,SAAS,kBACxC,MAAI,yDAEZ,mDAbgB,GAahB,KAEDiqF,kBAAiB,yCAAG,WAAOC,EAAQN,GAAQ,uGAEtB,EAAI,MAAkBtB,EAAO,wCAAoC4B,EAAM,qBAAaN,IAAY,KAAF,EAAvG,GACG,QADPrqI,EAAI,SACYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEoC,OAFpC,yBAEXg5C,QAAQja,MAAM,oBAAqB,KAAG0hB,SAAS,kBACxC,MAAI,yDAEZ,qDATgB,GAShB,KAEDmqF,iBAAgB,yCAAG,WAAMP,GAAQ,uGAEZ,EAAI,MAAkBtB,EAAO,yCAAqCsB,GAAY,CAChG7xB,QAAAA,EACAylB,OAAQ,QACN,KAAF,EAHS,GAIG,QAJPj+H,EAAI,SAIYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEmC,OAFnC,yBAEXg5C,QAAQja,MAAM,mBAAoB,KAAG0hB,SAAS,kBACvC,MAAI,yDAEZ,mDAZe,GAYf,KAEDoqF,eAAc,yCAAG,WAAMR,GAAQ,uGAEV,EAAI,MACtBtB,EAAO,uCAAmCsB,GAC1C,CAAE7xB,QAAAA,EAASylB,OAAQ,OAAQ,EAC3B,EAAI,cAHK,GAKG,QALPj+H,EAAI,SAKYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEiC,OAFjC,yBAEXg5C,QAAQja,MAAM,iBAAkB,KAAG0hB,SAAS,kBACrC,MAAI,yDAEZ,mDAba,GAab,KAEDqqF,kBAAiB,yCAAG,WAAMT,GAAQ,uGAEb,EAAI,MACtBtB,EAAO,0CAAsCsB,GAC7C,CAAE7xB,QAAAA,EAASylB,OAAQ,OAAQ,EAC3B,EAAI,cAHK,GAKG,QALPj+H,EAAI,SAKYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEiC,OAFjC,yBAEXg5C,QAAQja,MAAM,iBAAkB,KAAG0hB,SAAS,kBACrC,MAAI,yDAEZ,mDAbgB,GAahB,KAEDsqF,gBAAe,yCAAG,WAAOC,EAAa9C,GAAM,uGAEvB,EAAI,MAAkBa,EAAO,2CAAuCiC,EAAW,mBAAW9C,IAAU,KAAF,EAA3G,GACG,QADPloI,EAAI,SACYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEkC,OAFlC,yBAEXg5C,QAAQja,MAAM,kBAAmB,KAAG0hB,SAAS,kBACtC,MAAI,yDAEZ,qDATc,GASd,KAEDwqF,iBAAe,uBAAG,2FAEiC,OAFjC,SAECjC,qDAAiC,EAAD,OAC/Bx3G,MAAM05G,mFAA4C,KAAD,EAA1D,KAAHhnF,EAAG,QACD6nD,GAAG,CAAD,gCACU7nD,EAAIinF,OAAO,KAAD,EAAnB,KACG,QADPnrI,EAAI,SACWA,EAAK7J,OAAS,GAAC,0CAAS6J,GAAI,iCAE3C,MAAI,QAEkC,OAFlC,0BAEXg5C,QAAQja,MAAM,kBAAmB,KAAG0hB,SAAS,kBACtC,MAAI,0DAEZ,KACD2qF,sBAAoB,uBAAG,oHAEF,EAAI,MAAkBrC,EAAO,6BAAgC,KAAF,EAApE,GACG,QADP/oI,EAAI,SACYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEuC,OAFvC,yBAEXg5C,QAAQja,MAAM,uBAAwB,KAAG0hB,SAAS,kBAC3C,MAAI,yDAEZ,KAED4qF,mBAAkB,yCAAG,WAAOC,EAAeC,EAAUn+C,GAAK,uGAErC,EAAI,MAAkB27C,EAAO,0BAA8B,CAC7EvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CACpBu6B,cAAeF,EACfG,SAAUF,EACVn+C,MAAAA,MAEC,KAAF,EARS,KAAJptF,EAAI,SASGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEqC,OAFrC,yBAEXg5C,QAAQja,MAAM,qBAAsB,KAAG0hB,SAAS,kBACzC,MAAI,yDAEZ,uDAjBiB,GAiBjB,KAEDirF,mBAAkB,yCAAG,WAAMC,GAAgB,uGAEtB,EAAI,MAAkB5C,EAAO,mDAA+C4C,GAAoB,CAClHnzB,QAAAA,EACAylB,OAAQ,WACN,KAAF,EAHS,KAAJj+H,EAAI,SAIGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEqC,OAFrC,yBAEXg5C,QAAQja,MAAM,qBAAsB,KAAG0hB,SAAS,kBACzC,MAAI,yDAEZ,mDAZiB,GAYjB,KAGDmrF,kBAAiB,yCAAG,WAAMvB,GAAQ,uGAEb,EAAI,MAAkBtB,EAAO,0CAAsCsB,IAAY,KAAF,EAAtF,KAAJrqI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEoC,OAFpC,yBAEXg5C,QAAQja,MAAM,oBAAqB,KAAG0hB,SAAS,kBACxC,MAAI,yDAEZ,mDATgB,GAShB,KAoBDorF,wBAAsB,uBAAG,oHAEJ,EAAI,MAAkB9C,EAAO,+BAAkC,KAAF,EAAtE,GACG,QADP/oI,EAAI,SACYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEyC,OAFzC,yBAEXg5C,QAAQja,MAAM,yBAA0B,KAAG0hB,SAAS,kBAC7C,MAAI,yDAEZ,KAGDqrF,wBAAuB,yCAAG,WAAMzB,GAAQ,uGAEnB,EAAI,MAAkBtB,EAAO,+BAAmC,CAClFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAEo5B,SAAAA,MACrB,KAAF,EAJS,KAAJrqI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE0C,OAF1C,yBAEXg5C,QAAQja,MAAM,0BAA2B,KAAG0hB,SAAS,kBAC9C,MAAI,yDAEZ,mDAbsB,GAatB,KAIDsrF,sBAAoB,uBAAG,oHAEF,EAAI,MAAkBhD,EAAO,mBAAsB,KAAF,EAA1D,GACG,QADP/oI,EAAI,SACYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAE6B,OAF7B,yBAEXg5C,QAAQja,MAAM,aAAc,KAAG0hB,SAAS,kBACjC,MAAI,yDAEZ,KAEDurF,gBAAe,yCAAG,WAAMC,GAAY,uGAEf,EAAI,MAAkBlD,EAAO,uBAA2B,CAC1EvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAUg7B,KACnB,KAAF,EAJS,KAAJjsI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEkC,OAFlC,yBAEXg5C,QAAQja,MAAM,kBAAmB,KAAG0hB,SAAS,kBACtC,MAAI,yDAEZ,mDAbc,GAad,KAEDyrF,4BAA2B,yCAAG,WAAO1B,EAAUH,EAAUrC,GAAM,uGAE1C,EAAI,MACtBe,EAAO,oDAAgDyB,EAAQ,qBAAaH,EAAQ,mBAAWrC,IAAQ,OAD9F,KAAJhoI,EAAI,SAGGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE8C,OAF9C,yBAEXg5C,QAAQja,MAAM,8BAA+B,KAAG0hB,SAAS,kBAClD,MAAI,yDAEZ,uDAX0B,GAW1B,KAED0rF,uBAAsB,yCAAG,WAAO3B,EAAUH,EAAUrC,GAAM,uGAErC,EAAI,MACtBe,EAAO,+CAA2CyB,EAAQ,qBAAaH,EAAQ,mBAAWrC,IAAQ,OADzF,KAAJhoI,EAAI,SAIGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEyC,OAFzC,yBAEXg5C,QAAQja,MAAM,yBAA0B,KAAG0hB,SAAS,kBAC7C,MAAI,yDAEZ,uDAZqB,GAYrB,KAED2rF,6BAA4B,yCAAG,WAAMC,GAAQ,uGAExB,EAAI,MAAkBtD,EAAO,oCAAwC,CACvFvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAUo7B,KACnB,KAAF,EAJS,KAAJrsI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEiC,OAFjC,yBAEXg5C,QAAQja,MAAM,iBAAkB,KAAG0hB,SAAS,kBACrC,MAAI,yDAEZ,mDAb2B,GAa3B,KAED6rF,6BAA4B,yCAAG,WAAOC,EAAWC,EAAWnC,GAAQ,uGAE/C,EAAI,MACtBtB,EAAO,sDAAkDwD,EAAS,sBAAcC,EAAS,qBAAanC,IAAU,OADvG,KAAJrqI,EAAI,SAGGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE+C,OAF/C,yBAEXg5C,QAAQja,MAAM,+BAAgC,KAAG0hB,SAAS,kBACnD,MAAI,yDAEZ,uDAX2B,GAW3B,KAEDgsF,qBAAoB,yCAAG,WAAMjC,GAAQ,uGAEhB,EAAI,MAAkBzB,EAAO,6CAAyCyB,IAAY,KAAF,EAAzF,KAAJxqI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEuC,OAFvC,yBAEXg5C,QAAQja,MAAM,uBAAwB,KAAG0hB,SAAS,kBAC3C,MAAI,yDAEZ,mDATmB,GASnB,KAEDisF,cAAa,yCAAG,WAAMC,GAAO,uGAER,EAAI,MAAkB5D,EAAO,qBAAyB,CACxEvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU07B,KACnB,KAAF,EAJS,KAAJ3sI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEgC,OAFhC,yBAEXg5C,QAAQja,MAAM,gBAAiB,KAAG0hB,SAAS,kBACpC,MAAI,yDAEZ,mDAbY,GAaZ,KAEDmsF,cAAa,yCAAG,WAAMD,GAAO,uGAER,EAAI,MAAkB5D,EAAO,qBAAyB,CACxEvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAU07B,KACnB,KAAF,EAJS,KAAJ3sI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEgC,OAFhC,yBAEXg5C,QAAQja,MAAM,gBAAiB,KAAG0hB,SAAS,kBACpC,MAAI,yDAEZ,mDAbY,GAaZ,KAEDosF,cAAa,yCAAG,WAAMC,GAAS,uGAEV,EAAI,MAAkB/D,EAAO,uCAAmC+D,GAAa,CAAEt0B,QAAAA,EAASylB,OAAQ,WAAY,KAAF,EAAnH,KAAJj+H,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEgC,OAFhC,yBAEXg5C,QAAQja,MAAM,gBAAiB,KAAG0hB,SAAS,kBACpC,MAAI,yDAEZ,mDATY,GASZ,KAEDssF,2BAA0B,yCAAG,WAAMC,GAAgB,uGAE9B,EAAI,MAAkBjE,EAAO,kCAAsC,CACrFvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAU+7B,KACnB,KAAF,EAJS,KAAJhtI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE6C,OAF7C,yBAEXg5C,QAAQja,MAAM,6BAA8B,KAAG0hB,SAAS,kBACjD,MAAI,yDAEZ,mDAbyB,GAazB,KAGDwsF,cAAa,yCAAG,WAAMhB,GAAY,uGAEb,EAAI,MAAkBlD,EAAO,2BAA+B,CAC9EvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAUg7B,KACnB,KAAF,EAJS,KAAJjsI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEgC,OAFhC,yBAEXg5C,QAAQja,MAAM,gBAAiB,KAAG0hB,SAAS,kBACpC,MAAI,yDAEZ,mDAbY,GAaZ,KAEDysF,6BAA4B,yCAAG,WAAOC,EAAS3C,GAAQ,uGAElC,EAAI,MAAkBzB,EAAO,uCAA2C,CAC1FvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAEk8B,QAAAA,EAAS3C,SAAAA,MAC9B,KAAF,EAJS,KAAJxqI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE+C,OAF/C,yBAEXg5C,QAAQja,MAAM,+BAAgC,KAAG0hB,SAAS,kBACnD,MAAI,yDAEZ,qDAb2B,GAa3B,KAED2sF,kBAAiB,yCAAG,WAAMC,GAAM,uGAEX,EAAI,MAAkBtE,EAAO,+BAAmC,CAClFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAUo8B,KACnB,KAAF,EAJS,KAAJrtI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEiC,OAFjC,yBAEXg5C,QAAQja,MAAM,iBAAkB,KAAG0hB,SAAS,kBACrC,MAAI,yDAEZ,mDAbgB,GAahB,KAED6sF,sBAAqB,yCAAG,WAAOH,EAASI,EAAWC,EAAQC,GAAM,uGAE5C,EAAI,MAAkB1E,EAAO,6BAAiC,CAChFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAEk8B,QAAAA,EAASI,UAAAA,EAAWC,OAAAA,EAAQC,OAAAA,MACjD,KAAF,EAJS,KAAJztI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEwC,OAFxC,yBAEXg5C,QAAQja,MAAM,wBAAyB,KAAG0hB,SAAS,kBAC5C,MAAI,yDAEZ,yDAboB,GAapB,KAEDitF,sBAAqB,yCAAG,WAAMP,GAAO,uGAEhB,EAAI,MAAkBpE,EAAO,6CAAyCoE,IAAW,KAAF,EAAxF,KAAJntI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEwC,OAFxC,yBAEXg5C,QAAQja,MAAM,wBAAyB,KAAG0hB,SAAS,kBAC5C,MAAI,yDAEZ,mDAToB,GASpB,KAEDktF,yBAAwB,yCAAG,WAAOR,EAASS,EAAUC,GAAuB,uGAEvD,EAAI,MAAkB9E,EAAO,gCAAoC,CACnFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAEk8B,QAAAA,EAASS,SAAAA,EAAUC,wBAAAA,MACxC,KAAF,EAJS,KAAJ7tI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE2C,OAF3C,yBAEXg5C,QAAQja,MAAM,2BAA4B,KAAG0hB,SAAS,kBAC/C,MAAI,yDAEZ,uDAbuB,GAavB,KAEDqtF,uBAAsB,yCAAG,WAAOF,EAAUvD,EAAUmC,GAAS,uGAExC,EAAI,MAAkBzD,EAAO,8BAAkC,CACjFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAE28B,SAAAA,EAAUvD,SAAAA,EAAUmC,UAAAA,MACzC,KAAF,EAJS,KAAJxsI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEyC,OAFzC,yBAEXg5C,QAAQja,MAAM,yBAA0B,KAAG0hB,SAAS,kBAC7C,MAAI,yDAEZ,uDAbqB,GAarB,KAEDstF,uBAAsB,yCAAG,WAAOH,EAAUvD,EAAUmC,GAAS,uGAExC,EAAI,MAAkBzD,EAAO,8BAAkC,CACjFvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAU,CAAE28B,SAAAA,EAAUvD,SAAAA,EAAUmC,UAAAA,MACzC,KAAF,EAJS,KAAJxsI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEyC,OAFzC,yBAEXg5C,QAAQja,MAAM,yBAA0B,KAAG0hB,SAAS,kBAC7C,MAAI,yDAEZ,uDAbqB,GAarB,KAEDutF,yBAAwB,yCAAG,WAAMrB,GAAO,uGAEnB,EAAI,MAAkB5D,EAAO,gCAAoC,CACnFvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAU,KAAK07B,MACxB,KAAF,EAJS,KAAJ3sI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE2C,OAF3C,yBAEXg5C,QAAQja,MAAM,2BAA4B,KAAG0hB,SAAS,kBAC/C,MAAI,yDAEZ,mDAbuB,GAavB,KAEDwtF,yBAAwB,yCAAG,WAAMnB,GAAS,uGAErB,EAAI,MAAkB/D,EAAO,kDAA8C+D,GAAa,CAC1Gt0B,QAAAA,EACAylB,OAAQ,WACN,KAAF,EAHS,KAAJj+H,EAAI,SAIGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE2C,OAF3C,yBAEXg5C,QAAQja,MAAM,2BAA4B,KAAG0hB,SAAS,kBAC/C,MAAI,yDAEZ,mDAZuB,GAYvB,KAEDytF,uBAAsB,yCAAG,WAAM1D,GAAQ,uGAElB,EAAI,MAAkBzB,EAAO,+CAA2CyB,IAAY,KAAF,EAA3F,KAAJxqI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEyC,OAFzC,yBAEXg5C,QAAQja,MAAM,yBAA0B,KAAG0hB,SAAS,kBAC7C,MAAI,yDAEZ,mDATqB,GASrB,KAED0tF,aAAY,yCAAG,WAAMC,GAAK,uGAEL,EAAI,MAAkBrF,EAAO,yCAAqCqF,IAAS,KAAF,EAAlF,KAAJpuI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE+B,OAF/B,yBAEXg5C,QAAQja,MAAM,eAAgB,KAAG0hB,SAAS,kBACnC,MAAI,yDAEZ,mDATW,GASX,KAED4tF,uBAAsB,yCAAG,WAAMrG,GAAM,uGAEhB,EAAI,MAAkBe,EAAO,6CAAyCf,IAAU,KAAF,EAAvF,KAAJhoI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEyC,OAFzC,yBAEXg5C,QAAQja,MAAM,yBAA0B,KAAG0hB,SAAS,kBAC7C,MAAI,yDAEZ,mDATqB,GASrB,KAED6tF,kBAAiB,yCAAG,WAAMC,GAAI,uGAET,EAAI,MAAkBxF,EAAO,yBAA6B,CAC5EvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAUs9B,KACnB,KAAF,EAJS,KAAJvuI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEoC,OAFpC,yBAEXg5C,QAAQja,MAAM,oBAAqB,KAAG0hB,SAAS,kBACxC,MAAI,yDAEZ,mDAbgB,GAahB,KAED+tF,mBAAkB,yCAAG,WAAOC,EAAapE,GAAQ,uGAE5B,EAAI,MAAkBtB,EAAO,8CAA0C0F,EAAW,qBAAapE,IAAY,KAAF,EAAlH,KAAJrqI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEqC,OAFrC,yBAEXg5C,QAAQja,MAAM,qBAAsB,KAAG0hB,SAAS,kBACzC,MAAI,yDAEZ,qDATiB,GASjB,KAEDiuF,sBAAqB,yCAAG,WAAMC,GAAO,uGAEhB,EAAI,MAAkB5F,EAAO,6BAAiC,CAChFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAE09B,QAAS3jI,SAAS2jI,GAAUC,SAAS,MAC1D,KAAF,EAJS,KAAJ5uI,EAAI,QAKD,CAAD,wCAASA,GAAI,gCACd,MAAI,OAEwC,OAFxC,yBAEXg5C,QAAQja,MAAM,wBAAyB,KAAG0hB,SAAS,kBAC5C,MAAI,yDAEZ,mDAboB,GAapB,KAEDouF,oBAAmB,yCAAG,WAAO7G,EAAQqC,GAAQ,uGAExB,EAAI,MAAkBtB,EAAO,2BAA+B,CAC9EvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAU,CAAE+2B,OAAAA,EAAQqC,SAAAA,MAC7B,KAAF,EAJS,GAKG,QALPrqI,EAAI,SAKYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEsC,OAFtC,yBAEXg5C,QAAQja,MAAM,sBAAuB,KAAG0hB,SAAS,kBAC1C,MAAI,yDAEZ,qDAbkB,GAalB,KAEDquF,uBAAsB,yCAAG,WAAO9G,EAAQqC,GAAQ,uGAE3B,EAAI,MAAkBtB,EAAO,8BAAkC,CACjFvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAU,CAAE+2B,OAAAA,EAAQqC,SAAAA,MAC7B,KAAF,EAJS,GAKG,QALPrqI,EAAI,SAKYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEyC,OAFzC,yBAEXg5C,QAAQja,MAAM,yBAA0B,KAAG0hB,SAAS,kBAC7C,MAAI,yDAEZ,qDAbqB,GAarB,KAEDsuF,wBAAuB,yCAAG,WAAMC,GAAY,uGAEvB,EAAI,MAAkBjG,EAAO,iCAAqC,CACpFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU+9B,KACnB,KAAF,EAJS,KAAJhvI,EAAI,QAKD,CAAD,wCAASA,GAAI,gCACd,MAAI,OAE0C,OAF1C,yBAEXg5C,QAAQja,MAAM,0BAA2B,KAAG0hB,SAAS,kBAC9C,MAAI,yDAEZ,mDAbsB,GAatB,KAGDwuF,+BAA6B,uBAAG,oHAEX,EAAI,MAAkBlG,EAAO,sCAAyC,KAAF,EAA7E,KAAJ/oI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEgD,OAFhD,yBAEXg5C,QAAQja,MAAM,gCAAiC,KAAG0hB,SAAS,kBACpD,MAAI,yDAEZ,KAEDyuF,iCAAgC,yCAAG,4GAQyB,OARhB1E,EAAQ,EAARA,SAAUpD,EAAU,EAAVA,WAAY+H,EAAQ,EAARA,SAAS,EAAD,EAAEC,MAAAA,OAAK,MAAG,GAAE,MAAEC,mBAAAA,OAAkB,OAAQ,WAE1GC,EAAS,IAAIC,SACnBH,EAAMhrI,SAAQ,SAACorI,EAAMv5I,GAAC,OAAKq5I,EAAOpG,OAAO,QAAD,OAASjzI,GAAKu5I,EAAK,KAGrDC,EAAW,IAAIxG,SACZC,OAAO,8BAA+B,KAC/CuG,EAASvG,OAAO,gBAAgB,SAAD,OAAWn9G,OAAO9e,QAAS,WAEvC,EAAI,MACtB87H,EAAO,yDAC4CyB,EAAQ,uBAAepD,EAAU,qBAAa+H,EAAQ,+BAAuBE,GAChI,CACC72B,QAASi3B,EACTxR,OAAQ,OACRvkI,KAAM41I,IACN,OAPQ,KAAJtvI,EAAI,SASGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,0CAASxpI,GAAI,iCACvD,MAAI,QAEmD,OAFnD,0BAEXg5C,QAAQja,MAAM,mCAAoC,KAAG0hB,SAAS,kBACvD,MAAI,0DAEZ,mDAzB+B,GAyB/B,KAGDivF,wBAAuB,yCAAG,WAAMrF,GAAQ,uGAEnB,EAAI,MAAkBtB,EAAO,gDAA4CsB,IAAY,KAAF,EAA5F,KAAJrqI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE0C,OAF1C,yBAEXg5C,QAAQja,MAAM,0BAA2B,KAAG0hB,SAAS,kBAC9C,MAAI,yDAEZ,mDATsB,GAStB,KAEDkvF,2BAA0B,yCAAG,WAAMtF,GAAQ,4EACZ,OAA9BA,EAAWr/H,SAASq/H,GAAU,oBAEV,EAAI,MAAkBtB,EAAO,kCAAsC,CACrFvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAU,CAAEo5B,SAAAA,MACrB,KAAF,EAJS,KAAJrqI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,QAE6C,OAF7C,0BAEXg5C,QAAQja,MAAM,6BAA8B,KAAG0hB,SAAS,kBACjD,MAAI,0DAEZ,mDAdyB,GAczB,KAGDmvF,mBAAkB,yCAAG,WAAMvF,GAAQ,uGAEd,EAAI,MAAkBtB,EAAO,2CAAuCsB,GAAY,CAClG7xB,QAAAA,EACAylB,OAAQ,QACN,KAAF,EAHS,GAIG,QAJPj+H,EAAI,SAIYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEqC,OAFrC,yBAEXg5C,QAAQja,MAAM,qBAAsB,KAAG0hB,SAAS,kBACzC,MAAI,yDAEZ,mDAZiB,GAYjB,KAEDovF,eAAa,uBAAG,oHAEK,EAAI,MAAkB9G,EAAO,sBAAyB,KAAF,EAA7D,GACG,QADP/oI,EAAI,SACYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEgC,OAFhC,yBAEXg5C,QAAQja,MAAM,gBAAiB,KAAG0hB,SAAS,kBACpC,MAAI,yDAEZ,KAEDqvF,iCAAgC,yCAAG,WAAMC,GAAa,uGAEjC,EAAI,MAAkBhH,EAAO,wCAA4C,CAC3FvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU8+B,KACnB,KAAF,EAJS,KAAJ/vI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEmD,OAFnD,yBAEXg5C,QAAQja,MAAM,mCAAoC,KAAG0hB,SAAS,kBACvD,MAAI,yDAEZ,mDAb+B,GAa/B,KAIDuvF,6BAA2B,uBAAG,oHAET,EAAI,MAAkBjH,EAAO,mCAAuC,CAEtFvwB,QAAAA,EACAylB,OAAQ,QACN,KAAF,EAJS,GAKG,QALPj+H,EAAI,SAKYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAE8C,OAF9C,yBAEXg5C,QAAQja,MAAM,8BAA+B,KAAG0hB,SAAS,kBAClD,MAAI,yDAEZ,KACDwvF,+BAA8B,yCAAG,WAAMC,GAAc,uGAEhC,EAAI,MAAkBnH,EAAO,6DAAyDmH,GAAkB,CAC1H13B,QAAAA,EACAylB,OAAQ,QACN,KAAF,EAHS,GAIG,QAJPj+H,EAAI,SAIYA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCAChE,MAAI,OAEiD,OAFjD,yBAEXg5C,QAAQja,MAAM,iCAAkC,KAAG0hB,SAAS,kBACrD,MAAI,yDAEZ,mDAZ6B,GAY7B,KAED0vF,6BAA4B,yCAAG,WAAOC,EAAehC,GAAK,uGAErC,EAAI,MACtBrF,EAAO,0DAAsDqH,EAAa,qBAAahC,IAAO,OADrF,KAAJpuI,EAAI,SAGGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE+C,OAF/C,yBAEXg5C,QAAQja,MAAM,+BAAgC,KAAG0hB,SAAS,kBACnD,MAAI,yDAEZ,qDAX2B,GAW3B,KAED4vF,uBAAsB,yCAAG,WAAMC,GAAU,oFAEqB,OAFrB,SAE/BJ,EAAyDI,EAAzDJ,eAAgBK,EAAyCD,EAAzCC,UAAWC,EAA8BF,EAA9BE,WAAYC,EAAkBH,EAAlBG,cAAa,WACzC,EAAI,MACtB1H,EAAO,qDACwCmH,EAAc,sBAAcK,EAAS,uBAAeC,EAAU,0BAAkBC,IAAe,OAFrI,KAAJzwI,EAAI,SAIGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,QAEyC,OAFzC,0BAEXg5C,QAAQja,MAAM,yBAA0B,KAAG0hB,SAAS,kBAC7C,MAAI,0DAEZ,mDAbqB,GAarB,KAGDiwF,oBAAmB,yCAAG,WAAMC,GAAW,uGAElB,EAAI,MAAkB5H,EAAO,2BAA+B,CAC9EvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU0/B,KACnB,KAAF,EAJS,KAAJ3wI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEsC,OAFtC,yBAEXg5C,QAAQja,MAAM,sBAAuB,KAAG0hB,SAAS,kBAC1C,MAAI,yDAEZ,mDAbkB,GAalB,KAEDmwF,yBAAwB,yCAAG,WAAMC,GAAgB,uGAE5B,EAAI,MAAkB9H,EAAO,gCAAoC,CACnFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU4/B,KACnB,KAAF,EAJS,KAAJ7wI,EAAI,SAKGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE2C,OAF3C,yBAEXg5C,QAAQja,MAAM,2BAA4B,KAAG0hB,SAAS,kBAC/C,MAAI,yDAEZ,mDAbuB,GAavB,KAEDqwF,gCAA+B,yCAAG,WAAMC,GAAmB,uGAEvC,EAAI,MAAkBhI,EAAO,wCAA4C,CAC1FvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU8/B,KACnB,KAAF,EAJQ,KAAH7sF,EAAG,SAMGA,EAAIqlF,cAAiBrlF,EAAIslF,UAAS,yCAAStlF,GAAG,gCACnD,MAAI,OAEkD,OAFlD,yBAEXlL,QAAQja,MAAM,kCAAmC,KAAG0hB,SAAS,kBACtD,MAAI,yDAEZ,mDAd8B,GAc9B,KAGDuwF,gCAA+B,yCAAG,WAAMd,GAAc,uGAElC1+G,MAAMu3G,EAAO,8DAA0DmH,GAAkB,CAC1G13B,QAAAA,EACAylB,OAAQ,QACN,KAAD,EAHO,OAAH/5E,EAAG,gBAIUA,EAAIinF,OAAO,KAAD,EAAnB,GAAJnrI,EAAI,OACLkkD,IAAuB,MAAfA,EAAI1e,QAAmBxlC,EAAK+rG,IAAG,yCAAS,MAAI,gCAClD/rG,GAAI,QAEkD,OAFlD,0BAEXg5C,QAAQja,MAAM,kCAAmC,KAAG0hB,SAAS,kBACtD,MAAI,0DAEZ,mDAb8B,GAa9B,KAGDwwF,kBAAgB,uBAAG,oHAEE,EAAI,MAAkBlI,EAAO,yBAA4B,KAAF,EAAhE,KAAJ/oI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAEmC,OAFnC,yBAEXg5C,QAAQja,MAAM,mBAAoB,KAAG0hB,SAAS,kBACvC,MAAI,yDAEZ,KAEDywF,yCAAuC,uBAAG,oHAErB,EAAI,MAAkBnI,EAAO,gDAAmD,KAAF,EAAvF,KAAJ/oI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE0D,OAF1D,yBAEXg5C,QAAQja,MAAM,0CAA2C,KAAG0hB,SAAS,kBAC9D,MAAI,yDAEZ,KACD0wF,0BAAwB,uBAAG,oHAEN,EAAI,MAAkBpI,EAAO,iCAAoC,KAAF,EAAxE,KAAJ/oI,EAAI,SACGA,EAAKupI,cAAiBvpI,EAAKwpI,UAAS,yCAASxpI,GAAI,gCACvD,MAAI,OAE2C,OAF3C,yBAEXg5C,QAAQja,MAAM,2BAA4B,KAAG0hB,SAAS,kBAC/C,MAAI,yDAEZ,KAGD2wF,iBAAgB,yCAAG,WAAMC,GAAW,uGAEhB7/G,MAAMu3G,EAAO,wBAA4B,CAC1DvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAUogC,KACnB,KAAD,EAJO,IAAHntF,EAAG,UAMmB,MAAfA,EAAI1e,QAAmB0e,EAAI6nD,IAAG,yCAAS,MAAI,uBACrC7nD,EAAIinF,OAAO,KAAD,EAAnB,OAAJnrI,EAAI,yBACHA,GAAI,QAEmC,OAFnC,0BAEXg5C,QAAQja,MAAM,mBAAoB,KAAG0hB,SAAS,kBACvC,MAAI,0DAEZ,mDAfe,GAef,KAGD6wF,uBAAsB,yCAAG,WAAMD,GAAW,uGAEtB,EAAI,MAAkBtI,EAAO,8BAAkC,CAChFvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CACpBsgC,UAAWF,EAAYG,WACvBC,SAAUJ,EAAYK,UACtBtkD,MAAOikD,EAAYjkD,MACnBukD,MAAON,EAAYM,UAElB,KAAF,EATQ,KAAHztF,EAAG,SAWGA,EAAIqlF,cAAiBrlF,EAAIslF,UAAS,yCAAStlF,GAAG,gCACnD,MAAI,OAEyC,OAFzC,yBAEXlL,QAAQja,MAAM,yBAA0B,KAAG0hB,SAAS,kBAC7C,MAAI,yDAEZ,mDAnBqB,GAmBrB,KAGDmxF,6BAA2B,uBAAG,oHAEV,EAAI,MAAkB7I,EAAO,mCAAuC,CACrFvwB,QAAAA,EACAylB,OAAQ,QACN,KAAF,EAHQ,KAAH/5E,EAAG,SAKGA,EAAIqlF,cAAiBrlF,EAAIslF,UAAS,yCAAStlF,GAAG,gCACnD,MAAI,OAE8C,OAF9C,yBAEXlL,QAAQja,MAAM,8BAA+B,KAAG0hB,SAAS,kBAClD,MAAI,yDAEZ,KAIDoxF,yBAAwB,yCAAG,WAAMC,GAAO,uGAEpB,EAAI,MAAkB/I,EAAO,gCAAoC,CAClFvwB,QAAAA,EACAylB,OAAQ,MACRvkI,KAAMs3G,KAAKC,UAAU6gC,KACnB,KAAF,EAJQ,KAAH5tF,EAAG,SAMGA,EAAIqlF,cAAiBrlF,EAAIslF,UAAS,yCAAStlF,GAAG,gCACnD,MAAI,OAE4C,OAF5C,yBAEXlL,QAAQja,MAAM,4BAA6B,KAAG0hB,SAAS,kBAChD,MAAI,yDAEZ,mDAduB,GAcvB,KAEDsxF,YAAW,yCAAG,WAAO9J,EAAU56C,EAAU2kD,GAAG,uGAExB,EAAI,MAAkBjJ,EAAO,mBAAuB,CACrEvwB,QAAAA,EACAylB,OAAQ,OACRvkI,KAAMs3G,KAAKC,UAAU,CAAEg3B,SAAAA,EAAU56C,SAAAA,EAAU2kD,IAAAA,MACzC,KAAF,EAIA,QARK9tF,EAAG,SAMGA,EAAIqlF,cAAiBrlF,EAAIslF,YACpCtlF,EAAIj3C,MAAQ,EAAKy8H,WAAWzB,EAAU56C,IACtC,kBACMnpC,GAAG,OAE+B,OAF/B,yBAEVlL,QAAQja,MAAM,cAAe,KAAG0hB,SAAS,kBAClC,MAAI,yDAEZ,uDAhBU,GAgBV,KAGDipF,WAAa,SAACuI,EAAU5kD,EAAUpgF,GAMjC,OALKA,IACJA,EAAQ8e,OAAOmmH,KAAK,GAAD,OAAID,EAAQ,YAAI5kD,KAEpCthE,OAAO9e,MAAQA,EACfurG,EAAQ5wD,IAAI,gBAAgB,SAAD,OAAW36C,IAC/BA,CACR,EAAE,KAEF28H,WAAa,WACR79G,OAAO9e,eACH8e,OAAO9e,MACdurG,EAAQ5wD,IAAI,gBAAgB,IAE9B,EAAE,OAAD,kFAGqB,WAAM1D,GAAG,wFAExBA,EAAI,CAAD,wCAAS,MAAI,UACF,MAAfA,EAAI1e,OAAc,iCACF0e,EAAIinF,OAAO,KAAD,EAAnB,OAAJnrI,EAAI,yBACHA,GAAI,QACc,MAAfkkD,EAAI1e,SACd0e,EAAIiuF,aAAe,gCACnBjuF,EAAIqlF,cAAe,GACnB,iCACM,MAAI,kCAEXvwF,QAAQja,MAAM,EAAD,IAAQ,0DAEtB,mDAjBA,KAiBA,yFAEa,WAAMmlB,GAAG,wFAEhBA,EAAI,CAAD,6CAASn+C,GAAS,uBACPm+C,EAAIkuF,OAAO,KAAD,EAAnB,OAAJA,EAAI,yBACHA,GAAI,gCAEXp5F,QAAQja,MAAM,EAAD,IAAQ,yDAEtB,mDAVA,KAUA,yFAEkB,WAAOtc,GAAG,4FAIkE,OAJhEhd,EAAO,+BAAG,CAAE+yG,QAAAA,EAASylB,OAAQ,OAASoU,EAAc,iCAAG,EAAI,eAGxFC,EAAkBltG,YAAW,kBAAM,EAAKikG,YAAW,EAAK,GAAE,KACtDt9G,OAAO9e,QAAUurG,EAAQ/zE,IAAI,kBAAkB,EAAKilG,WAAW,KAAM,KAAM39G,OAAO9e,OAAO,SAChFukB,MAAM/O,EAAKhd,GAASjM,KAAK64I,GAAgB,KAAD,qEAErDr5F,QAAQ3b,KAAK,EAAD,IAAQ,QAGG,OAHH,UAEpBo3D,aAAa69C,GACb,EAAKjJ,YAAW,GAAO,6EAExB,mDAdA,KAlmCoDtxI,KAAKsxI,WAArDA,GAAoC,oBAAfA,EAA6CA,EAC/C,WAAO,CAC/B,IAinCD,IE3nCakJ,EAAc37I,OAAO47I,OAAO,CACxCC,KAAM,CAAEC,SAAU,OAAQrjF,MAAO,mBACjCsjF,YAAa,CAAED,SAAU,SACzBE,SAAU,CAAEF,SAAU,YACtBG,WAAY,CAAEH,SAAU,SAAUrjF,MAAO,cACzCyjF,YAAa,CAAEJ,SAAU,OAAQrjF,MAAO,eACxC0jF,MAAO,CAAEL,SAAU,QAASrjF,MAAO,+CACnC2jF,SAAU,CAAEN,SAAU,YACtBO,SAAU,CAAEP,SAAU,OAAQrjF,MAAO,uBACrC6jF,kBAAmB,CAAER,SAAU,OAAQrjF,MAAO,mBAC9C8jF,kBAAmB,CAAET,SAAU,OAAQrjF,MAAO,0BAGlC+jF,EAAax8I,OAAO47I,OAAO,CACvCa,IAAK,EACLC,IAAK,EACLC,MAAO,EACPC,MAAO,EACP,EAAG,MACH,EAAG,MACH,EAAG,QACH,EAAG,UAQSC,GALc78I,OAAO47I,OAAO,CACxCkB,KAAM,OACNC,MAAO,UAGa/8I,OAAO47I,OAAO,CAClCoB,MAAO,EACPC,QAAS,EACTC,QAAS,EACTC,YAAa,EACbC,kBAAmB,EACnB,EAAG,QACH,EAAG,UACH,EAAG,UACH,EAAG,cACH,EAAG,yBAGSC,EAAgBr9I,OAAO47I,OAAO,CAC1C0B,2BAA4B,EAC5BC,cAAe,EACfC,8BAA+B,EAC/BC,iBAAkB,IAGNC,EAAiB19I,OAAO47I,OAAO,CAC3C+B,QAAS,EACTC,YAAa,EACb,EAAG,UACH,EAAG,gBAGSC,EAAe79I,OAAO47I,OAAO,CACzCkC,SAAU,EACVC,IAAK,EACLC,MAAO,EACPC,cAAe,EACfC,IAAK,EACLC,MAAO,IAGKC,EAAap+I,OAAO47I,OAAO,CACvCyC,cAAe,EACfC,OAAQ,EACRC,OAAQ,EACRC,OAAQ,EACRR,MAAO,EACPS,aAAc,EACdC,iBAAkB,EAClBC,oBAAqB,EACrBC,0BAA2B,EAC3BC,oBAAqB,GACrBC,iBAAkB,GAClBC,uBAAwB,GACxBC,gBAAiB,GACjBC,kBAAmB,GACnBC,gBAAiB,GACjBC,iBAAkB,GAClBC,gBAAiB,GACjBnB,cAAe,GACfC,IAAK,GACLmB,MAAO,GACPC,UAAW,KAGCC,EAAsBv/I,OAAO47I,OAAO,CAChD4D,OAAQ,EACRC,UAAW,EACXC,SAAU,IAGEC,EAAiB3/I,OAAO47I,OAAO,CAC3CgE,KAAM,EACNC,KAAM,IAGMC,EAA0B9/I,OAAO47I,OAAO,CACpD4D,OAAQ,EACRO,OAAQ,EACR,EAAG,SACH,EAAG,WAGSC,EAAgBhgJ,OAAO47I,OAAO,CAC1CqE,IAAK,MACLC,cAAe,kBACfC,YAAa,aACbC,UAAW,cAGCC,EAA4BrgJ,OAAO47I,OAAO,CACtD0E,YAAa,cACbC,WAAY,aACZC,eAAgB,iBAChBC,iBAAkB,qBAGNC,EAAS1gJ,OAAO47I,OAAO,CACnC+E,KAAM,6BACNC,MAAO,QACPC,mBAAoB,qBACpBC,SAAU,WACVC,aAAc,eACdC,cAAe,IACfC,OAAQ,SACRC,UAAW,aACXC,QAAS,UACTC,KAAM,OACNC,OAAQ,UACRC,eAAgB,iBAChBpD,IAAK,MACLmB,MAAO,QACPC,UAAW,WACXiC,gBAAiB,oBACjBC,wBAAyB,2BACzBC,2BAA4B,yBAC5BC,YAAa,eACbC,aAAc,iBACdC,kBAAmB,qBACnBC,yBAA0B,4BAC1BC,kBAAmB,qBACnBC,MAAO,qCACPC,aAAc,kBAGFC,EAAYjiJ,OAAO47I,OAAO,CACtC,CACC/7B,YAAa,UACbqiC,kBAAmB,UACnBngG,GAAI,EACJyM,IAAK,KACL2zF,OAAO,EACP5G,aAAa,6DAEd,CACC17B,YAAa,UACbqiC,kBAAmB,aACnBngG,GAAI,EACJyM,IAAK,KACL2zF,OAAO,EACP5G,aAAa,sEAEd,CACC17B,YAAa,SACbqiC,kBAAmB,cACnBngG,GAAI,EACJyM,IAAK,KACL2zF,OAAO,EACP5G,aAAa,gFAGd,CACC17B,YAAa,SACbqiC,kBAAmB,iCACnBngG,GAAI,EACJyM,IAAK,KACL2zF,OAAO,EACP5G,aAAa,uRAEd,CACC17B,YAAa,UACbqiC,kBAAmB,6CACnBngG,GAAI,EACJyM,IAAK,KACL2zF,OAAO,EACP5G,aAAa,ybAEd,CACC17B,YAAa,UACbqiC,kBAAmB,UACnBngG,GAAI,EACJyM,IAAK,KACL2zF,OAAO,EACP5G,aAAa,qEAIF6G,EAAgB,CAC5BC,UAAW,CAAE5pF,MAAO,KAAMtwB,MAAO,qBACjCm6G,OAAQ,CAAE7pF,MAAO,aAActwB,MAAO,oBACtCo6G,gBAAiB,CAAE9pF,MAAO,iBAAkBtwB,MAAO,oBACnDq6G,0BAA2B,CAAE/pF,MAAO,iBAAkBtwB,MAAO,oBAC7Ds6G,yBAA0B,CAAEhqF,MAAO,oBAAqBtwB,MAAO,oBAC/Du6G,WAAY,CAAEjqF,MAAO,2BAAkBtwB,MAAO,oBAC9Cw6G,sBAAuB,CAAElqF,MAAO,6BAAoBtwB,MAAO,oBAC3Dy6G,MAAO,CAAEnqF,MAAO,wBAAyBtwB,MAAO,oBAChD06G,eAAgB,CAAEpqF,MAAO,uBAAwBtwB,MAAO,oBACxD26G,aAAc,CAAErqF,MAAO,WAAYtwB,MAAO,oCAC1C46G,cAAe,CAAEtqF,MAAO,YAAatwB,MAAO,qCAC5C66G,cAAe,CAAEvqF,MAAO,YAAatwB,MAAO,qCAC5C86G,eAAgB,CAAExqF,MAAO,aAActwB,MAAO,sCAC9C+6G,eAAgB,CAAEzqF,MAAO,aAActwB,MAAO,sCAC9Cg7G,eAAgB,CAAE1qF,MAAO,aAActwB,MAAO,sCAC9Ci7G,eAAgB,CAAE3qF,MAAO,aAActwB,MAAO,sCAC9Ck7G,MAAO,CAEN5qF,MAAO,oCACPtwB,MAAO,kBAIIm7G,EAAiBtjJ,OAAO47I,OAAO,CAC3CkF,SAAS,8DDzNGyC,EAAa9lC,EAAAA,gBAyEb+lC,GAAgB,WAC5B,OAAO52C,EAAAA,EAAAA,YAAW22C,EACnB,EAEA,GA3EiB,SAAH,GAAsB,IAAhBjhE,EAAQ,EAARA,SACnB,GAAiC4qB,EAAAA,EAAAA,YAAWu2C,EAAiB,IAAG,eAAzDhxE,EAAI,KAAEixE,EAAgB,KAC7B,GAA6Bx2C,EAAAA,EAAAA,YAAWy2C,EAAaxS,GAAc,eAA5DwG,EAAI,KAAEiM,EAAY,KACzB,GAAmC12C,EAAAA,EAAAA,YAAW22C,EAAmB7S,GAAiB,eAA3EC,EAAO,KAAE6S,EAAe,KAC/B,GAAkC12C,EAAAA,EAAAA,WAAS,GAAM,eAA1C22C,EAAS,KAAEC,EAAY,KAC9B,GAA0B52C,EAAAA,EAAAA,UAAS,MAAK,eAAjCtkE,EAAK,KAAEm7G,EAAQ,KACtB,GAAwB72C,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA7B82C,EAAI,KAAEC,EAAO,KAEpB,GAA8C/2C,EAAAA,EAAAA,UAAS,CAAEg3C,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,IAAQ,eAA/FC,EAAe,KAAEC,EAAkB,KAEpCC,EAAM,IAAIhS,EAASwR,GAmBzB,aAFC,OAED,0BAVA,kHAEsBQ,EAAIrP,uBAAuB,KAAD,GAAxCsP,EAAK,SACAN,EAAQM,GAAO,gDAE1BriG,QAAQja,MAAM,uBAAuB,EAAD,IACpCg8G,EAAQ,CAAC,GAAG,0DAEb,uBAhBDt3C,EAAAA,EAAAA,YAAU,WACT,IAAM63C,EAAWzC,EAAU/8I,MAAK,SAAAy/I,GAAS,OAAIA,EAAU5iG,KAAO0wB,CAAI,IAClE,GAAKiyE,EAAL,CACA,IAAMrwE,EAAMqwE,EAASvC,MAAQ,MAAQ,MACrCz8I,SAAS5C,KAAK+6B,aAAa,MAAOw2C,EAFb,CAGtB,GAAG,CAAC5B,KAcJo6B,EAAAA,EAAAA,YAAU,YACD,OAAJ8qC,QAAI,IAAJA,OAAI,EAAJA,EAAMrG,UAAWuL,EAAMI,SAAe,OAAJtF,QAAI,IAAJA,GAAAA,EAAMiN,aAb7C,WACyB,wBAavBC,EAEF,GAAG,CAAClN,EAAKrG,SAGT,IAYMprC,EAAQ,CACbzzB,KAAAA,EACAqyE,QAASpB,EACTzS,QAAAA,EACA6S,gBAAAA,EACAnM,KAAAA,EACAiM,aAAAA,EACAY,IAAAA,EACAT,UAAAA,EACAC,aAAAA,EACAl7G,MAAAA,EACAm7G,SAAAA,EACAc,yBAxBgC,SAACl7F,GAAsD,IAA7Cw6F,EAAM,wDAAUW,EAAgB,uDAAG,IAC7EnnD,aAAa00C,GAEbgS,EAAmB,CAClBH,SAAS,EACTv6F,QAAAA,EACAw6F,OAAAA,IAGD9R,EAAmB/jG,YAAW,kBAAM+1G,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,GAAEW,EACzG,EAeCV,gBAAAA,EACAC,mBAAAA,EACAL,KAAAA,EACAC,QAAAA,GAGD,OAAO,SAACZ,EAAWhgB,SAAQ,CAACthI,MAAOikG,EAAM,SAAE5jB,GAC5C,uEE9Ee,SAAS2iE,GAAWC,EAAQvqI,EAAMwqI,GAa/C,OAXEF,IADE,EAAAG,GAAA,KACWvlE,QAAQC,UAAUoc,OAElB,SAAoBgpD,EAAQvqI,EAAMwqI,GAC7C,IAAIr3I,EAAI,CAAC,MACTA,EAAEpO,KAAKI,MAAMgO,EAAG6M,GAChB,IACI+gF,EAAW,IADG3qC,SAASmrC,KAAKp8F,MAAMolJ,EAAQp3I,IAG9C,OADIq3I,IAAO,EAAAvkJ,GAAA,GAAe86F,EAAUypD,EAAMllJ,WACnCy7F,CACT,EAEKupD,GAAWnlJ,MAAM,KAAMR,UAChC,CCZe,SAAS+lJ,GAAiBF,GACvC,IAAIx3G,EAAwB,oBAARo/C,IAAqB,IAAIA,SAAQ59E,EAuBrD,OAtBAk2I,GAAmB,SAA0BF,GAC3C,GAAc,OAAVA,ICPkCx5F,EDOEw5F,GCNsB,IAAzDp0F,SAAShxD,SAASK,KAAKurD,GAAIh+C,QAAQ,kBDMQ,OAAOw3I,ECP5C,IAA2Bx5F,EDQtC,GAAqB,oBAAVw5F,EACT,MAAM,IAAInkJ,UAAU,sDAEtB,GAAsB,qBAAX2sC,EAAwB,CACjC,GAAIA,EAAOE,IAAIs3G,GAAQ,OAAOx3G,EAAOjgC,IAAIy3I,GACzCx3G,EAAOqjB,IAAIm0F,EAAOG,EACpB,CACA,SAASA,IACP,OAAO,GAAUH,EAAO7lJ,WAAW,EAAAsgH,GAAA,GAAez+G,MAAMC,YAC1D,CASA,OARAkkJ,EAAQrlJ,UAAYD,OAAOqB,OAAO8jJ,EAAMllJ,UAAW,CACjDmB,YAAa,CACXa,MAAOqjJ,EACPzkE,YAAY,EACZslD,UAAU,EACVvlD,cAAc,MAGX,EAAAhgF,GAAA,GAAe0kJ,EAASH,EACjC,EACOE,GAAiBF,EAC1B,KEtBYI,sRAAZ,SAAYA,GAQVA,EAAAA,IAAAA,MAOAA,EAAAA,KAAAA,OAMAA,EAAAA,QAAAA,SArBF,EAAYA,KAAAA,GAsBX,KAqJD,ICxKYC,GDwKNC,GAAoB,WAuRV,YAAUxjJ,EAAY4nD,GACpC,IAAc,IAAV5nD,GAA6B,OAAVA,GAAmC,qBAAVA,EAC9C,MAAM,IAAI2D,MAAMikD,EAEnB,CA0BD,SAAS67F,GAAgBj4G,GACvB,MAAO,CACLk4G,IAAKl4G,EAASy4D,MACd/lG,IAAKstC,EAASttC,IAEjB,CAKK,SAAUylJ,GACd33I,EACAnK,EACAoiG,EACA/lG,GAcA,YAdY,IADZ+lG,IAAAA,EAAa,MAGD,IACV2/C,SAA6B,kBAAZ53I,EAAuBA,EAAUA,EAAQ43I,SAC1DnvD,OAAQ,GACRovD,KAAM,IACY,kBAAPhiJ,EAAkBiiJ,GAAUjiJ,GAAMA,EAJnC,CAKVoiG,MAAAA,EAKA/lG,IAAM2D,GAAOA,EAAgB3D,KAAQA,GAhChC0F,KAAKm2F,SAASj8F,SAAS,IAAI4vC,OAAO,EAAG,IAmC7C,CAKe,YAIAq2G,GAAA,QAHdH,SAAAA,OAAQ,IAAG,MADc,IAIXG,EAFdtvD,OAAAA,OAAM,IAAG,KAFgB,IAIXsvD,EADdF,KAAAA,OAAI,IAAG,OAMP,OAJIpvD,GAAqB,MAAXA,IACZmvD,GAAiC,MAArBnvD,EAAOx0B,OAAO,GAAaw0B,EAAS,IAAMA,GACpDovD,GAAiB,MAATA,IACVD,GAA+B,MAAnBC,EAAK5jF,OAAO,GAAa4jF,EAAO,IAAMA,GAC7CD,CACR,CAKK,SAAUE,GAAUp1G,GACxB,IAAIs1G,EAA4B,CAAC,EAEjC,GAAIt1G,EAAM,CACR,IAAIu1G,EAAYv1G,EAAKhjC,QAAQ,KACzBu4I,GAAa,IACfD,EAAWH,KAAOn1G,EAAKhB,OAAOu2G,GAC9Bv1G,EAAOA,EAAKhB,OAAO,EAAGu2G,IAGxB,IAAIC,EAAcx1G,EAAKhjC,QAAQ,KAC3Bw4I,GAAe,IACjBF,EAAWvvD,OAAS/lD,EAAKhB,OAAOw2G,GAChCx1G,EAAOA,EAAKhB,OAAO,EAAGw2G,IAGpBx1G,IACFs1G,EAAWJ,SAAWl1G,EAEzB,CAED,OAAOs1G,CACR,CAEK,SAAUG,GAAoB34G,GAIlC,IAAI0hC,EACgB,qBAAXh6C,QACoB,qBAApBA,OAAOsY,UACa,SAA3BtY,OAAOsY,SAAS44G,OACZlxH,OAAOsY,SAAS44G,OAChBlxH,OAAOsY,SAASN,KAClBA,EAA2B,kBAAbM,EAAwBA,EAAW64G,GAAW74G,GAKhE,OAJA84G,GACEp3E,EACsEhiC,sEAAAA,GAEjE,IAAIq5G,IAAIr5G,EAAMgiC,EACtB,CASD,SAASs3E,GACPC,EACAC,EACAC,EACA/3I,QAA+B,IAA/BA,IAAAA,EAA6B,CAAC,GAE9B,MAA2DA,EAA3D,IAAMsmB,OAAAA,OAAM,IAAG,EAAAzvB,SAASigC,YAApB,MAAkCkhH,SAAAA,OAAQ,IAAG,KAC7CC,EAAgB3xH,EAAO4xH,QACvB58C,EAASo7C,GAAOyB,IAChBrrD,EAA4B,KAEhC,SAASsrD,IACP98C,EAASo7C,GAAOyB,IACZrrD,GACFA,EAAS,CAAEwO,OAAAA,EAAQ18D,SAAUs5G,EAAQt5G,UAExC,CAsCD,IAAIs5G,EAAmB,CACjB58C,aACF,OAAOA,GAEL18D,eACF,OAAOi5G,EAAYvxH,EAAQ2xH,IAE7BI,OAAM,SAACv7F,GACL,GAAIgwC,EACF,MAAM,IAAI/1F,MAAM,8CAKlB,OAHAuvB,EAAO6Z,iBAAiBy2G,GAAmBwB,GAC3CtrD,EAAWhwC,EAEJ,WACLx2B,EAAO8yD,oBAAoBw9D,GAAmBwB,GAC9CtrD,EAAW,OAGfgrD,WAAU,SAAC7iJ,GACT,OAAO6iJ,EAAWxxH,EAAQrxB,IAE5BqjJ,eAAc,SAACrjJ,GAEb,IAAI+nB,EAAMu6H,GACM,kBAAPtiJ,EAAkBA,EAAKwiJ,GAAWxiJ,IAE3C,MAAO,CACL+hJ,SAAUh6H,EAAIg6H,SACdnvD,OAAQ7qE,EAAI6qE,OACZovD,KAAMj6H,EAAIi6H,OAGdpmJ,KArEF,SAAcoE,EAAQoiG,GACpBiE,EAASo7C,GAAO6B,KAChB,IAAI35G,EAAWm4G,GAAemB,EAAQt5G,SAAU3pC,EAAIoiG,GAChD0gD,GAAkBA,EAAiBn5G,EAAU3pC,GAEjD,IAAIujJ,EAAe3B,GAAgBj4G,GAC/B5hB,EAAMk7H,EAAQJ,WAAWl5G,GAG7B,IACEq5G,EAAcQ,UAAUD,EAAc,GAAIx7H,EAK3C,CAJC,MAAOsc,GAGPhT,EAAOsY,SAASlsC,OAAOsqB,EACxB,CAEGg7H,GAAYlrD,GACdA,EAAS,CAAEwO,OAAAA,EAAQ18D,SAAUs5G,EAAQt5G,UAExC,EAkDC1Q,QAhDF,SAAiBj5B,EAAQoiG,GACvBiE,EAASo7C,GAAOgC,QAChB,IAAI95G,EAAWm4G,GAAemB,EAAQt5G,SAAU3pC,EAAIoiG,GAChD0gD,GAAkBA,EAAiBn5G,EAAU3pC,GAEjD,IAAIujJ,EAAe3B,GAAgBj4G,GAC/B5hB,EAAMk7H,EAAQJ,WAAWl5G,GAC7Bq5G,EAAcU,aAAaH,EAAc,GAAIx7H,GAEzCg7H,GAAYlrD,GACdA,EAAS,CAAEwO,OAAAA,EAAQ18D,SAAUs5G,EAAQt5G,UAExC,EAqCCg6G,GAAE,SAAC/lJ,GACD,OAAOolJ,EAAcW,GAAG/lJ,EACzB,GAGH,OAAOqlJ,CACR,CC/WK,SAAUW,GAGdC,EACAC,EACAC,QAAc,IAAdA,IAAAA,EAAW,KAEX,IAGIhC,EAAWiC,IAFU,kBAAhBF,EAA2B7B,GAAU6B,GAAeA,GAEvB/B,UAAY,IAAKgC,GAEvD,GAAgB,MAAZhC,EACF,OAAO,KAGT,IAAIkC,EAAWC,GAAcL,IA4K/B,SAA2BI,GACzBA,EAAS/+F,MAAK,SAACl7C,EAAGnN,GAAJ,OACZmN,EAAEu8D,QAAU1pE,EAAE0pE,MACV1pE,EAAE0pE,MAAQv8D,EAAEu8D,MAyCpB,SAAwBv8D,EAAanN,GACnC,IAAIsnJ,EACFn6I,EAAEvO,SAAWoB,EAAEpB,QAAUuO,EAAE3J,MAAM,GAAI,GAAG6zB,OAAM,SAACt2B,EAAGrC,GAAJ,OAAUqC,IAAMf,EAAEtB,EAAvC,IAE3B,OAAO4oJ,EAKHn6I,EAAEA,EAAEvO,OAAS,GAAKoB,EAAEA,EAAEpB,OAAS,GAG/B,CACL,CArDO2oJ,CACEp6I,EAAEq6I,WAAWn5I,KAAKs3E,SAAAA,GAAD,OAAUA,EAAK8hE,aAAhC,IACAznJ,EAAEwnJ,WAAWn5I,KAAKs3E,SAAAA,GAAD,OAAUA,EAAK8hE,aAAhC,IALR,GAQD,CApLCC,CAAkBN,GAGlB,IADA,IAAI76E,EAAU,KACL7tE,EAAI,EAAc,MAAX6tE,GAAmB7tE,EAAI0oJ,EAASxoJ,SAAUF,EACxD6tE,EAAUo7E,GACRP,EAAS1oJ,GAOTkpJ,GAAgB1C,IAIpB,OAAO34E,CACR,CAmBD,SAAS86E,GAGPL,EACAI,EACAS,EACAC,QAAe,IAFfV,IAAAA,EAA2C,SAE5B,IADfS,IAAAA,EAA4C,SAC7B,IAAfC,IAAAA,EAAa,IAEb,IAAIC,EAAe,SACjBC,EACA9hJ,EACA+hJ,GAEA,IAAItiE,EAAmC,CACrCsiE,kBACmBz5I,IAAjBy5I,EAA6BD,EAAMh4G,MAAQ,GAAKi4G,EAClDC,eAAuC,IAAxBF,EAAME,cACrBT,cAAevhJ,EACf8hJ,MAAAA,GAGEriE,EAAKsiE,aAAaE,WAAW,OAC/BvC,GACEjgE,EAAKsiE,aAAaE,WAAWL,GAC7B,wBAAwBniE,EAAKsiE,aAA7B,wBACMH,EADN,4GAKFniE,EAAKsiE,aAAetiE,EAAKsiE,aAAazkJ,MAAMskJ,EAAWlpJ,SAGzD,IAAIoxC,EAAOo4G,GAAU,CAACN,EAAYniE,EAAKsiE,eACnCT,EAAaK,EAAYpkJ,OAAOkiF,GAKhCqiE,EAAMrmE,UAAYqmE,EAAMrmE,SAAS/iF,OAAS,IAC5CgnJ,IAGkB,IAAhBoC,EAAM9hJ,MACN,4FACuC8pC,EADvC,MAIFq3G,GAAcW,EAAMrmE,SAAUylE,EAAUI,EAAYx3G,KAKpC,MAAdg4G,EAAMh4G,MAAiBg4G,EAAM9hJ,QAIjCkhJ,EAASroJ,KAAK,CACZixC,KAAAA,EACA05B,MAAO2+E,GAAar4G,EAAMg4G,EAAM9hJ,OAChCshJ,WAAAA,KAcJ,OAXAR,EAAOn6I,SAAQ,SAACm7I,EAAO9hJ,GAAS,MAE9B,GAAmB,KAAf8hJ,EAAMh4G,MAAe,OAACg4G,EAAAA,EAAMh4G,OAANs4G,EAAY/oJ,SAAS,KAExC,KACL,EADK,WACgBgpJ,GAAwBP,EAAMh4G,OAAnD,QAAK,EAAL,qBAA0D,KAAjDw4G,EAAT,QACET,EAAaC,EAAO9hJ,EAAOsiJ,EAC5B,gCACF,MALCT,EAAaC,EAAO9hJ,MAQjBkhJ,CACR,CAgBD,SAASmB,GAAwBv4G,GAC/B,IAAIy4G,EAAWz4G,EAAKsU,MAAM,KAC1B,GAAwB,IAApBmkG,EAAS7pJ,OAAc,MAAO,GAElC,ICxc+B8tD,EDwc/B,GCxc+BA,EDwcR+7F,GCvchB,EAAApc,GAAA,GAAe3/E,KAAQ,EAAAqgF,GAAA,GAAgBrgF,KAAQ,EAAAigF,GAAA,GAA2BjgF,KAAQ,EAAAkgF,GAAA,MDucpF1lH,EAAD,KAAWwhI,EAAX,WAGAC,EAAazhI,EAAM0hI,SAAS,KAE5Bn6I,EAAWyY,EAAMkV,QAAQ,MAAO,IAEpC,GAAoB,IAAhBssH,EAAK9pJ,OAGP,OAAO+pJ,EAAa,CAACl6I,EAAU,IAAM,CAACA,GAGxC,IAAIo6I,EAAeN,GAAwBG,EAAKhpJ,KAAK,MAEjDqC,EAAmB,GAqBvB,OAZAA,EAAOhD,KAAP,MAAAgD,GAAM,OACD8mJ,EAAax6I,KAAKy6I,SAAAA,GAAD,MACN,KAAZA,EAAiBr6I,EAAW,CAACA,EAAUq6I,GAASppJ,KAAK,IADpD,MAMDipJ,GACF5mJ,EAAOhD,KAAP,MAAAgD,GAAM,OAAS8mJ,IAIV9mJ,EAAOsM,KAAKm6I,SAAAA,GAAD,OAChBx4G,EAAKm4G,WAAW,MAAqB,KAAbK,EAAkB,IAAMA,CAD3C,GAGR,EAzeD,SAAY3D,GACVA,EAAAA,KAAAA,OACAA,EAAAA,SAAAA,WACAA,EAAAA,SAAAA,WACAA,EAAAA,MAAAA,OAJF,EAAYA,KAAAA,GAKX,KAifD,IAAMkE,GAAU,SAMVC,GAAWloJ,SAAAA,GAAD,MAAqB,MAANA,CAA/B,EAEA,SAASunJ,GAAar4G,EAAc9pC,GAClC,IAAIuiJ,EAAWz4G,EAAKsU,MAAM,KACtB2kG,EAAeR,EAAS7pJ,OAS5B,OARI6pJ,EAAS9zH,KAAKq0H,MAChBC,IAPiB,GAUf/iJ,IACF+iJ,GAdoB,GAiBfR,EACJptI,QAAQva,SAAAA,GAAD,OAAQkoJ,GAAQloJ,EADnB,IAEJkoB,QACC,SAAC0gD,EAAO5tC,GAAR,OACE4tC,GACCq/E,GAAQrjH,KAAK5J,GAvBM,EAyBJ,KAAZA,EAvBc,EACC,GAelB,GAUHmtH,EAEL,CAiBD,SAAStB,GAIPuB,EACAhE,GAOA,IALA,IAAMsC,EAAe0B,EAAf1B,WAEF2B,EAAgB,CAAC,EACjBC,EAAkB,IAClB78E,EAA2D,GACtD7tE,EAAI,EAAGA,EAAI8oJ,EAAW5oJ,SAAUF,EAAG,CAC1C,IAAIinF,EAAO6hE,EAAW9oJ,GAClBsJ,EAAMtJ,IAAM8oJ,EAAW5oJ,OAAS,EAChCyqJ,EACkB,MAApBD,EACIlE,EACAA,EAAS1hJ,MAAM4lJ,EAAgBxqJ,SAAW,IAC5Cs9C,EAAQotG,GACV,CAAEt5G,KAAM21C,EAAKsiE,aAAcC,cAAeviE,EAAKuiE,cAAelgJ,IAAAA,GAC9DqhJ,GAGF,IAAKntG,EAAO,OAAO,KAEnB78C,OAAOuB,OAAOuoJ,EAAejtG,EAAM45F,QAEnC,IAAIkS,EAAQriE,EAAKqiE,MAEjBz7E,EAAQxtE,KAAK,CAEX+2I,OAAQqT,EACRjE,SAAUkD,GAAU,CAACgB,EAAiBltG,EAAMgpG,WAC5CqE,aAAcC,GACZpB,GAAU,CAACgB,EAAiBltG,EAAMqtG,gBAEpCvB,MAAAA,IAGyB,MAAvB9rG,EAAMqtG,eACRH,EAAkBhB,GAAU,CAACgB,EAAiBltG,EAAMqtG,eAEvD,CAED,OAAOh9E,CACR,UAOek9E,GACdC,EACA5T,QAEa,IAFbA,IAAAA,EAEI,CAAC,GAEL,IAAI9lG,EAAO05G,EAYX,OAXI15G,EAAK44G,SAAS,MAAiB,MAAT54G,IAAiBA,EAAK44G,SAAS,QACvDe,IACE,EACA,eAAe35G,EAAf,oCACMA,EAAK5T,QAAQ,MAAO,MAD1B,qIAGsC4T,EAAK5T,QAAQ,MAAO,MAH1D,MAKF4T,EAAOA,EAAK5T,QAAQ,MAAO,OAGtB4T,EACJ5T,QAAQ,YAAY,SAAC75B,EAAG/C,GAEvB,OADAomJ,GAAyB,MAAf9P,EAAOt2I,GAA2BA,aAAAA,EAA5C,WACOs2I,EAAOt2I,MAEf48B,QAAQ,aAAa,SAAC75B,EAAG/C,GAExB,OADAomJ,GAAyB,MAAf9P,EAAOt2I,GAA2BA,aAAAA,EAA5C,WACWs2I,IAAAA,EAAOt2I,EACnB,IACA48B,QAAQ,WAAW,SAAC75B,EAAGkkB,EAAQlmB,EAAIoF,GAGlC,OAAoB,MAAhBmwI,EAFS,KAKI,OAARnwI,EAAe,IAAM,GAIvB,GAAG8gB,EAASqvH,EATN,IAUd,GACJ,CAuDe,YAIdj4F,EACAqnG,GAEuB,kBAAZrnG,IACTA,EAAU,CAAE7N,KAAM6N,EAASqqG,eAAe,EAAOlgJ,KAAK,IAGxD,MAwCF,SACEgoC,EACAk4G,EACAlgJ,QAAU,IADVkgJ,IAAAA,GAAgB,QACN,IAAVlgJ,IAAAA,GAAM,GAEN2hJ,GACW,MAAT35G,IAAiBA,EAAK44G,SAAS,MAAQ54G,EAAK44G,SAAS,MACrD,eAAe54G,EAAf,oCACMA,EAAK5T,QAAQ,MAAO,MAD1B,qIAGsC4T,EAAK5T,QAAQ,MAAO,MAH1D,MAMF,IAAIwtH,EAAuB,GACvBC,EACF,IACA75G,EACG5T,QAAQ,UAAW,IACnBA,QAAQ,OAAQ,KAChBA,QAAQ,sBAAuB,QAC/BA,QAAQ,aAAa,SAAC75B,EAAWunJ,GAEhC,OADAF,EAAW7qJ,KAAK+qJ,GACT,YACR,IAED95G,EAAK44G,SAAS,MAChBgB,EAAW7qJ,KAAK,KAChB8qJ,GACW,MAAT75G,GAAyB,OAATA,EACZ,QACA,qBACGhoC,EAET6hJ,GAAgB,QACE,KAAT75G,GAAwB,MAATA,IAQxB65G,GAAgB,iBAKlB,IAAIv9E,EAAU,IAAI9b,OAAOq5F,EAAc3B,OAAgB15I,EAAY,KAEnE,MAAO,CAAC89D,EAASs9E,EAClB,CA1F6BG,CAC1BlsG,EAAQ7N,KACR6N,EAAQqqG,cACRrqG,EAAQ71C,KAHV,eAAKskE,EAAD,KAAUs9E,EAAV,KAMA1tG,EAAQgpG,EAAShpG,MAAMowB,GAC3B,IAAKpwB,EAAO,OAAO,KAEnB,IAAIktG,EAAkBltG,EAAM,GACxBqtG,EAAeH,EAAgBhtH,QAAQ,UAAW,MAClD4tH,EAAgB9tG,EAAM14C,MAAM,GAqBhC,MAAO,CACLsyI,OArBmB8T,EAAW5gI,QAC9B,SAACq6G,EAAMymB,EAAW5jJ,GAGhB,GAAkB,MAAd4jJ,EAAmB,CACrB,IAAIG,EAAaD,EAAc9jJ,IAAU,GACzCqjJ,EAAeH,EACZ5lJ,MAAM,EAAG4lJ,EAAgBxqJ,OAASqrJ,EAAWrrJ,QAC7Cw9B,QAAQ,UAAW,KACvB,CAMD,OAJAinG,EAAKymB,GAoFX,SAAkCxoJ,EAAewoJ,GAC/C,IACE,OAAOI,mBAAmB5oJ,EAU3B,CATC,MAAOkmC,GAQP,OAPAmiH,IACE,EACA,gCAAgCG,EAAhC,6CACkBxoJ,EADlB,iFAEqCkmC,EAFrC,MAKKlmC,CACR,CACF,CAjGuB6oJ,CAChBH,EAAc9jJ,IAAU,GACxB4jJ,GAEKzmB,IAET,CAAC,GAKD6hB,SAAUkE,EACVG,aAAAA,EACA1rG,QAAAA,EAEH,CAsDD,SAAS+pG,GAAgBtmJ,GACvB,IACE,OAAO8oJ,UAAU9oJ,EAUlB,CATC,MAAOkmC,GAQP,OAPAmiH,IACE,EACA,iBAAiBroJ,EAAjB,oHAEekmC,EAFf,MAKKlmC,CACR,CACF,CAoBe,SAAA6lJ,GACdjC,EACAgC,GAEA,GAAiB,MAAbA,EAAkB,OAAOhC,EAE7B,IAAKA,EAAS7tI,cAAc8wI,WAAWjB,EAAS7vI,eAC9C,OAAO,KAKT,IAAIgzI,EAAanD,EAAS0B,SAAS,KAC/B1B,EAAStoJ,OAAS,EAClBsoJ,EAAStoJ,OACT0rJ,EAAWpF,EAAS3jF,OAAO8oF,GAC/B,OAAIC,GAAyB,MAAbA,EAEP,KAGFpF,EAAS1hJ,MAAM6mJ,IAAe,GACtC,CAKe,SAAAV,GAAQY,EAAWrhG,GACjC,IAAKqhG,EAAM,CAEc,qBAAZ9oG,SAAyBA,QAAQ3b,KAAKojB,GAEjD,IAME,MAAM,IAAIjkD,MAAMikD,EAEL,CAAX,MAAOrnD,GAAI,CACd,CACF,CA2CD,SAAS2oJ,GACPnuD,EACA3kB,EACA5nC,EACAE,GAEA,MACE,qBAAqBqsD,EAArB,2CACQ3kB,EAAkB+hC,YAAAA,KAAKC,UAC7B1pE,GAFF,yCAIQF,EAJR,2HAOH,CAyBK,SAAU26G,GAEdl+E,GACA,OAAOA,EAAQlxD,QACb,SAAC6gC,EAAOh2C,GAAR,OACY,IAAVA,GAAgBg2C,EAAM8rG,MAAMh4G,MAAQkM,EAAM8rG,MAAMh4G,KAAKpxC,OAAS,CAF3D,GAIR,CAKK,SAAU8rJ,GACdC,EACAC,EACAC,EACAC,GAEA,IAAI3nJ,OAFkB,IAAtB2nJ,IAAAA,GAAiB,GAGI,kBAAVH,EACTxnJ,EAAKiiJ,GAAUuF,IAIf/E,KAFAziJ,EAAK,MAAKwnJ,IAGJzF,WAAa/hJ,EAAG+hJ,SAAS3lJ,SAAS,KACtCirJ,GAAoB,IAAK,WAAY,SAAUrnJ,IAEjDyiJ,IACGziJ,EAAG+hJ,WAAa/hJ,EAAG+hJ,SAAS3lJ,SAAS,KACtCirJ,GAAoB,IAAK,WAAY,OAAQrnJ,IAE/CyiJ,IACGziJ,EAAG4yF,SAAW5yF,EAAG4yF,OAAOx2F,SAAS,KAClCirJ,GAAoB,IAAK,SAAU,OAAQrnJ,KAI/C,IAGIC,EAHA2nJ,EAAwB,KAAVJ,GAAgC,KAAhBxnJ,EAAG+hJ,SACjC8F,EAAaD,EAAc,IAAM5nJ,EAAG+hJ,SAaxC,GAAI4F,GAAgC,MAAdE,EACpB5nJ,EAAOynJ,MACF,CACL,IAAII,EAAqBL,EAAehsJ,OAAS,EAEjD,GAAIosJ,EAAW7C,WAAW,MAAO,CAM/B,IALA,IAAI+C,EAAaF,EAAW1mG,MAAM,KAKT,OAAlB4mG,EAAW,IAChBA,EAAWp0I,QACXm0I,GAAsB,EAGxB9nJ,EAAG+hJ,SAAWgG,EAAWxrJ,KAAK,IAC/B,CAID0D,EAAO6nJ,GAAsB,EAAIL,EAAeK,GAAsB,GACvE,CAED,IAAIj7G,WAvJsB7sC,EAAQgoJ,QAAkB,IAAlBA,IAAAA,EAAe,KACjD,MAIkB,kBAAPhoJ,EAAkBiiJ,GAAUjiJ,GAAMA,EAHjC6nJ,EADR,EACF9F,SAAQ,IACRnvD,OAAAA,OAAM,IAAG,KAFP,MAGFovD,KAAAA,OAAI,IAAG,OAGLD,EAAW8F,EACXA,EAAW7C,WAAW,KACpB6C,EAWR,SAAyB/C,EAAsBkD,GAC7C,IAAI1C,EAAW0C,EAAa/uH,QAAQ,OAAQ,IAAIkoB,MAAM,KAYtD,OAXuB2jG,EAAa3jG,MAAM,KAEzBz3C,SAASivB,SAAAA,GACR,OAAZA,EAEE2sH,EAAS7pJ,OAAS,GAAG6pJ,EAASxlJ,MACb,MAAZ64B,GACT2sH,EAAS1pJ,KAAK+8B,MAIX2sH,EAAS7pJ,OAAS,EAAI6pJ,EAAS/oJ,KAAK,KAAO,GACnD,CAxBO0rJ,CAAgBJ,EAAYG,GAC9BA,EAEJ,MAAO,CACLjG,SAAAA,EACAnvD,OAAQs1D,GAAgBt1D,GACxBovD,KAAMmG,GAAcnG,GAEvB,CAqIYoG,CAAYpoJ,EAAIC,GAGvBooJ,EACFR,GAA6B,MAAfA,GAAsBA,EAAWpC,SAAS,KAEtD6C,GACDV,GAA8B,MAAfC,IAAuBH,EAAiBjC,SAAS,KAQnE,OANG54G,EAAKk1G,SAAS0D,SAAS,OACvB4C,IAA4BC,IAE7Bz7G,EAAKk1G,UAAY,KAGZl1G,CACR,KAiBYo4G,GAAa7qG,SAAAA,GAAD,OACvBA,EAAM79C,KAAK,KAAK08B,QAAQ,SAAU,IAAlC,EAKWotH,GAAqBtE,SAAAA,GAAD,OAC/BA,EAAS9oH,QAAQ,OAAQ,IAAIA,QAAQ,OAAQ,IAA7C,EAKWivH,GAAmBt1D,SAAAA,GAAD,OAC5BA,GAAqB,MAAXA,EAEPA,EAAOoyD,WAAW,KAClBpyD,EACA,IAAMA,EAHN,EAFC,EAUMu1D,GAAiBnG,SAAAA,GAAD,OAC1BA,GAAiB,MAATA,EAAoBA,EAAKgD,WAAW,KAAOhD,EAAO,IAAMA,EAAzC,EADnB,EAgCMuG,GAAP,4HAAoCzmJ,QA6KnC,IAqBM0mJ,IAAAA,EAAAA,EAAAA,IAOXlrJ,SAAAA,EACEwtC,EACA29G,EACAnjJ,EACAojJ,IAAgB,wBAAhBA,IAAAA,GAAW,GAEXrrJ,KAAKytC,OAASA,EACdztC,KAAKorJ,WAAaA,GAAc,GAChCprJ,KAAKqrJ,SAAWA,EACZpjJ,aAAgBxD,OAClBzE,KAAKiI,KAAOA,EAAKrJ,WACjBoB,KAAKgnC,MAAQ/+B,GAEbjI,KAAKiI,KAAOA,CAEf,IAOG,SAAUqjJ,GAAqBjqJ,GACnC,OAAOA,aAAa8pJ,EACrB,CE7zBD,IAAMI,GAAgD,CACpD,OACA,MACA,QACA,UAMIC,IAJuB,IAAI5vE,IAC/B2vE,IAG0B,CAC1B,OAD2C,OAExCA,KAEuB,IAAI3vE,IAAgB4vE,IAEpB,IAAI5vE,IAAI,CAAC,IAAK,IAAK,IAAK,IAAK,MACf,IAAIA,IAAI,CAAC,IAAK,MAqBpC,qBAAX5nD,QACoB,qBAApBA,OAAOzvB,UACPyvB,OAAOzvB,SAASwxB,qPCniBzB,IAAM0vD,GACiB,oBAAd5mF,OAAO4mF,GAAoB5mF,OAAO4mF,GAP3C,SAAoBliF,EAAQ1B,GAC1B,OACG0B,IAAM1B,IAAY,IAAN0B,GAAW,EAAIA,IAAM,EAAI1B,IAAQ0B,IAAMA,GAAK1B,IAAMA,CAElE,EAOOoqG,GAAwDqQ,EAAAA,SAA9C5Q,GAA8C4Q,EAAAA,UAAnCzQ,GAAmCyQ,EAAAA,gBAAlBpQ,GAAkBoQ,EAAAA,cAsHhE,SAASmvC,GAAuBC,GAC9B,IAAMC,EAAoBD,EAAKjiD,YACzBmiD,EAAYF,EAAK5qJ,MACvB,IACE,IAAM+qJ,EAAYF,IAClB,OAAQlmE,GAAGmmE,EAAWC,EAGvB,CAFC,MAAO7kH,GACP,OAAO,CACR,CACF,CClImB,qBAAXhT,QACoB,qBAApBA,OAAOzvB,UACPyvB,OAAOzvB,SAASwxB,cAOuBumF,EAAtBhQ,qBAV1B,IC6Caw/C,GACXxvC,EAAAA,cAAoD,MAK/C,IAAMyvC,GAAyBzvC,EAAAA,cAEpC,MAKK,IAAM0vC,GAAe1vC,EAAAA,cAA2C,MAsChE,IAAM2vC,GAAoB3vC,EAAAA,cAC/B,MAYK,IAAM4vC,GAAkB5vC,EAAAA,cAC7B,UAYW6vC,GAAe7vC,EAAAA,cAAwC,CAClE8vC,OAAQ,KACRrgF,QAAS,KAOJ,IAAMsgF,GAAoB/vC,EAAAA,cAAyB,MCtEnD,SAASgwC,KACd,OAA4C,MAArChwC,EAAAA,WAAiB4vC,GACzB,CAYM,SAASK,KAQd,OANED,MADF,OAOOhwC,EAAAA,WAAiB4vC,IAAiB5/G,QAC1C,CAmDM,SAASkgH,KAEZF,MADF,OAOA,MAA8BhwC,EAAAA,WAAiB2vC,IAAzCvF,EAAF,EAAEA,SAAUvhH,EAAAA,EAAAA,UACV4mC,EAAYuwC,EAAAA,WAAiB6vC,IAA7BpgF,QACUs+E,EAAqBkC,KAA/B7H,SAEF+H,EAAqBxzC,KAAKC,UAC5B+wC,GAA2Bl+E,GAASl+D,KAAK6tC,SAAAA,GAAD,OAAWA,EAAMqtG,YAAzD,KAGE2D,EAAYpwC,EAAAA,QAAa,GA+C7B,OA9CAA,EAAAA,WAAgB,WACdowC,EAAU5/I,SAAU,KAGWwvG,EAAAA,aAC/B,SAAC35G,EAAiB+K,GAOhB,QAPkD,IAAlCA,IAAAA,EAA2B,CAAC,GAOvCg/I,EAAU5/I,QAEf,GAAkB,kBAAPnK,EAAX,CAKA,IAAI6sC,EAAO06G,GACTvnJ,EACAs2G,KAAKz+F,MAAMiyI,GACXpC,EACqB,SAArB38I,EAAQi/I,UAOO,MAAbjG,IACFl3G,EAAKk1G,SACe,MAAlBl1G,EAAKk1G,SACDgC,EACAkB,GAAU,CAAClB,EAAUl3G,EAAKk1G,aAG/Bh3I,EAAQkuB,QAAUuJ,EAAUvJ,QAAUuJ,EAAU5mC,MACjDixC,EACA9hC,EAAQq3F,MACRr3F,EAvBD,MAFCy3B,EAAUmhH,GAAG3jJ,KA4BjB,CAAC+jJ,EAAUvhH,EAAWsnH,EAAoBpC,GAI7C,CAED,IAAMuC,GAAgBtwC,EAAAA,cAA6B,MAiC5C,SAASuwC,KAKd,IAAM9gF,EAAYuwC,EAAAA,WAAiB6vC,IAA7BpgF,QACF+gF,EAAa/gF,EAAQA,EAAQ3tE,OAAS,GAC1C,OAAO0uJ,EAAcA,EAAWxX,OAAiB,CAAC,CACnD,CAOM,SAASyX,GACdpqJ,EAEMqqJ,GAAA,IADJL,QACI,MAD6C,CAAC,EAC9C,GADJA,SAEI5gF,EAAYuwC,EAAAA,WAAiB6vC,IAA7BpgF,QACUs+E,EAAqBkC,KAA/B7H,SAEF+H,EAAqBxzC,KAAKC,UAC5B+wC,GAA2Bl+E,GAASl+D,KAAK6tC,SAAAA,GAAD,OAAWA,EAAMqtG,YAAzD,KAGF,OAAOzsC,EAAAA,SACL,kBACE4tC,GACEvnJ,EACAs2G,KAAKz+F,MAAMiyI,GACXpC,EACa,SAAbsC,EANC,GAQL,CAAChqJ,EAAI8pJ,EAAoBpC,EAAkBsC,GAE9C,CAkKD,SAASM,KACP,IAAIjmH,EAgVC,WAAkC,MACnCA,EAAQs1E,EAAAA,WAAiB+vC,IACzBtnD,EAAQmoD,GAAmBC,GAAoBC,eAC/CC,EAAUC,GAAkBH,GAAoBC,eAIpD,GAAIpmH,EACF,OAAOA,EAIT,OAAO,OAAP,EAAO+9D,EAAMwoD,aAAN,IAAeF,EACvB,CA7VaG,GACR9kG,EAAU4iG,GAAqBtkH,GAC5BA,EAAMyG,OAAUzG,IAAAA,EAAMokH,WACzBpkH,aAAiBviC,MACjBuiC,EAAM0hB,QACNuwD,KAAKC,UAAUlyE,GACfiO,EAAQjO,aAAiBviC,MAAQuiC,EAAMiO,MAAQ,KAC/Cw4G,EAAY,yBACZC,EAAY,CAAEj1G,QAAS,SAAUvyB,gBAAiBunI,GAClDE,EAAa,CAAEl1G,QAAS,UAAWvyB,gBAAiBunI,GACxD,OACEnxC,EAAAA,cAAAA,EAAAA,SAAAA,KACEA,EAAAA,cAAAA,KAAAA,KAAAA,2BACAA,EAAAA,cAAAA,KAAAA,CAAIhwF,MAAO,CAAEyE,UAAW,WAAa23B,GACpCzT,EAAQqnE,EAAAA,cAAAA,MAAAA,CAAKhwF,MAAOohI,GAAYz4G,GAAe,KAChDqnE,EAAAA,cAAAA,IAAAA,KAAAA,2CACAA,EAAAA,cAGE,mIAAMhwF,MAAOqhI,GAAb,gBACA,wCAAMrhI,MAAOqhI,GAAb,YAIP,KA8KIC,GAIAT,GApKQU,GAAN,4CAIL5tJ,SAAAA,EAAYolG,GAAiC,MAE3C,OAF2C,gBAC3C,cAAMA,IACDN,MAAQ,CACXz4D,SAAU+4D,EAAM/4D,SAChBtF,MAAOq+D,EAAMr+D,OAFf,CAID,CAiCA,OAjCA,yCAmCDqmE,SAAkBrmE,EAAY8mH,GAC5B7sG,QAAQja,MACN,wDACAA,EACA8mH,EAEH,uBAEDlyG,WACE,OAAO57C,KAAK+kG,MAAM/9D,MAChBs1E,EAAAA,cAAC6vC,GAAa/pB,SAAd,CAAuBthI,MAAOd,KAAKqlG,MAAM0oD,cACvC,gBAAC1B,GAAkBjqB,SAAnB,CACEthI,MAAOd,KAAK+kG,MAAM/9D,MAClBm6C,SAAUnhF,KAAKqlG,MAAMmZ,aAIzBx+G,KAAKqlG,MAAMlkB,QAEd,2CApD8B,SAACn6C,GAC9B,MAAO,CAAEA,MAAOA,EACjB,yCAE8B,SAC7Bq+D,EACAN,GAUA,OAAIA,EAAMz4D,WAAa+4D,EAAM/4D,SACpB,CACLtF,MAAOq+D,EAAMr+D,MACbsF,SAAU+4D,EAAM/4D,UAQb,CACLtF,MAAOq+D,EAAMr+D,OAAS+9D,EAAM/9D,MAC5BsF,SAAUy4D,EAAMz4D,SAEnB,OA3CI,CAAkCgwE,EAAAA,WAyEzC,SAAS0xC,GAAqEnJ,GAAA,IAArDkJ,EAAqDlJ,EAArDkJ,aAAcryG,EAAuCmpG,EAAvCnpG,MAAOylC,EAAgC0jE,EAAhC1jE,SACxC8sE,EAAoB3xC,EAAAA,WAAiBwvC,IAazC,OAREmC,GACAA,EAAkBC,QAClBD,EAAkBE,eAClBzyG,EAAM8rG,MAAM4G,eAEZH,EAAkBE,cAAcE,2BAA6B3yG,EAAM8rG,MAAM5mG,IAIzE07D,EAAAA,cAAC6vC,GAAa/pB,SAAd,CAAuBthI,MAAOitJ,GAC3B5sE,EAGN,CAEM,SAASmtE,GACdviF,EACAwiF,EACAC,GAEA,QAD2B,IAF3BD,IAAAA,EAA8B,IAGf,MAAXxiF,EAAiB,CACnB,SAAIyiF,IAAAA,EAAiBjB,OAKnB,OAAO,KAFPxhF,EAAUyiF,EAAgBziF,OAI7B,CAED,IAAI0iF,EAAkB1iF,EAGlBwhF,EAASiB,MAAAA,OAAAA,EAAAA,EAAiBjB,OAC9B,GAAc,MAAVA,EAAgB,CAClB,IAAImB,EAAaD,EAAgB5wC,WAC9B9hF,SAAAA,GAAD,OAAOA,EAAEyrH,MAAM5mG,KAAM2sG,MAAAA,OAAAA,EAAAA,EAASxxH,EAAEyrH,MAAM5mG,IADvB,IAIf8tG,GAAc,GADhB,OAIAD,EAAkBA,EAAgBzrJ,MAChC,EACA0B,KAAK0S,IAAIq3I,EAAgBrwJ,OAAQswJ,EAAa,GAEjD,CAED,OAAOD,EAAgBE,aAAY,SAACvC,EAAQ1wG,EAAOh2C,GACjD,IAAIshC,EAAQ0U,EAAM8rG,MAAM5mG,GAAZ,MAAiB2sG,OAAjB,EAAiBA,EAAS7xG,EAAM8rG,MAAM5mG,IAAM,KAEpDwtG,EAAeI,EACf9yG,EAAM8rG,MAAM4G,cAAgB9xC,EAAAA,cAAC2wC,GAAD,MAC5B,KACAlhF,EAAUwiF,EAActrJ,OAAOwrJ,EAAgBzrJ,MAAM,EAAG0C,EAAQ,IAChEkpJ,EAAc,WAAH,OACbtyC,EAAAA,cAAC0xC,GAAD,CAAetyG,MAAOA,EAAOqyG,aAAc,CAAE3B,OAAAA,EAAQrgF,QAAAA,IAClD/kC,EACGonH,OACwBpgJ,IAAxB0tC,EAAM8rG,MAAM/zH,QACZioB,EAAM8rG,MAAM/zH,QACZ24H,EANR,EAYA,OAAOoC,IAAoB9yG,EAAM8rG,MAAM4G,cAA0B,IAAV1oJ,GACrD42G,EAAAA,cAACuxC,GAAD,CACEvhH,SAAUkiH,EAAgBliH,SAC1BkyE,UAAW4vC,EACXpnH,MAAOA,EACPm6C,SAAUytE,IACVb,aAAc,CAAE3B,OAAQ,KAAMrgF,QAAAA,KAGhC6iF,MAED,KACJ,CA4BD,SAAS1B,GAAmB2B,GAC1B,IAAI9pD,EAAQuX,EAAAA,WAAiByvC,IAE7B,OADUhnD,GAAV,OACOA,CACR,CAQD,SAASuoD,GAAkBuB,GACzB,IAAIrH,EAPN,SAAyBqH,GACvB,IAAIrH,EAAQlrC,EAAAA,WAAiB6vC,IAE7B,OADU3E,GAAV,OACOA,CACR,CAGasH,GACRC,EAAYvH,EAAMz7E,QAAQy7E,EAAMz7E,QAAQ3tE,OAAS,GAKrD,OAHE2wJ,EAAUvH,MAAM5mG,IADlB,OAIOmuG,EAAUvH,MAAM5mG,EACxB,WA9CIgtG,GAAAA,EAAAA,eAAAA,gBAAAA,EAAAA,KAAAA,GAAAA,CAAAA,aAIAT,GAAAA,EAAAA,cAAAA,gBAAAA,EAAAA,cAAAA,gBAAAA,EAAAA,cAAAA,gBAAAA,EAAAA,cAAAA,gBAAAA,EAAAA,mBAAAA,qBAAAA,EAAAA,WAAAA,aAAAA,EAAAA,eAAAA,gBAAAA,EAAAA,KAAAA,GAAAA,CAAAA,IAqKL,IC1YK6B,GAlPE,SAASC,GAKQC,GAAA,IAJtBvsJ,EAIsBusJ,EAJtBvsJ,GACAi5B,EAGsBszH,EAHtBtzH,QACAmpE,EAEsBmqD,EAFtBnqD,MACA4nD,EACsBuC,EADtBvC,SAGEL,MADF,OAcA,IAAIkC,EAAkBlyC,EAAAA,WAAiByvC,IACnCoD,EAAW3C,KAYf,OAVAlwC,EAAAA,WAAgB,WAIVkyC,GAAwD,SAArCA,EAAgBY,WAAWrqD,OAGlDoqD,EAASxsJ,EAAI,CAAEi5B,QAAAA,EAASmpE,MAAAA,EAAO4nD,SAAAA,OAG1B,IACR,CAWM,SAAS0C,GAAOhqD,GACrB,ODQK,SAAmB3hG,GACxB,IAAI0oJ,EAAS9vC,EAAAA,WAAiB6vC,IAAcC,OAC5C,OAAIA,EAEA9vC,EAAAA,cAACswC,GAAcxqB,SAAf,CAAwBthI,MAAO4C,GAAU0oJ,GAGtCA,CACR,CChBQkD,CAAUjqD,EAAM3hG,QACxB,CAyCM,SAAS6rJ,GAAMC,GACpB,MAKD,CAoBM,SAASC,GAO2BC,GAAA,QANzChJ,SAAUiJ,OAAY,IAAG,MADJ,IAOoBD,EALzCvuE,SAAAA,OAAQ,IAAG,OAFU,EAGXyuE,EAI+BF,EAJzCpjH,SAAQ,EAIiCojH,EAHzCG,eAAAA,OAAc,IAAG,EAAAC,GAAAA,IAJI,EAKrB3qH,EAEyCuqH,EAFzCvqH,UALqB,EAOoBuqH,EADzCxB,OAAQ6B,OAAU,IAAG,KAGlBzD,MADH,OAQA,IAAI5F,EAAWiJ,EAAa/zH,QAAQ,OAAQ,KACxCo0H,EAAoB1zC,EAAAA,SACtB,iBAAO,CAAEoqC,SAAAA,EAAUvhH,UAAAA,EAAW+oH,OAAQ6B,EAAtC,GACA,CAACrJ,EAAUvhH,EAAW4qH,IAGI,kBAAjBH,IACTA,EAAehL,GAAUgL,IAG3B,MAMIA,EANJ,IACElL,SAAAA,OAAQ,IAAG,MADT,MAEFnvD,OAAAA,OAAM,IAAG,KAFP,MAGFovD,KAAAA,OAAI,IAAG,KAHL,MAIF5/C,MAAAA,OAAK,IAAG,OAJN,MAKF/lG,IAAAA,OAAG,IAAG,cAGJstC,EAAWgwE,EAAAA,SAAc,WAC3B,IAAI2zC,EAAmBtJ,GAAcjC,EAAUgC,GAE/C,OAAwB,MAApBuJ,EACK,KAGF,CACLvL,SAAUuL,EACV16D,OAAAA,EACAovD,KAAAA,EACA5/C,MAAAA,EACA/lG,IAAAA,EAEH,GAAE,CAAC0nJ,EAAUhC,EAAUnvD,EAAQovD,EAAM5/C,EAAO/lG,IAS7C,OAAgB,MAAZstC,EACK,KAIPgwE,EAAAA,cAAC2vC,GAAkB7pB,SAAnB,CAA4BthI,MAAOkvJ,GACjC,gBAAC9D,GAAgB9pB,SAAjB,CACEjhD,SAAUA,EACVrgF,MAAO,CAAEwrC,SAAAA,EAAUujH,eAAAA,KAI1B,CAaM,SAASK,GAG2BC,GAAA,IAFzChvE,EAEyCgvE,EAFzChvE,SACA70C,EACyC6jH,EADzC7jH,SAEI2hH,EAAoB3xC,EAAAA,WAAiBwvC,IAQzC,OD5FK,SACLtF,EACAC,GAGE6F,MADF,OAOA,IA8CIhgH,EA9CEnH,EAAcm3E,EAAAA,WAAiB2vC,IAA/B9mH,UACFirH,EAAyB9zC,EAAAA,WAAiByvC,IAC/BwC,EAAkBjyC,EAAAA,WAAiB6vC,IAA5CpgF,QACF+gF,EAAayB,EAAcA,EAAcnwJ,OAAS,GAClDiyJ,EAAevD,EAAaA,EAAWxX,OAAS,CAAC,EAEjDgb,GADiBxD,GAAaA,EAAWpI,SACpBoI,EAAaA,EAAW/D,aAAe,KAsC5DwH,GArCczD,GAAcA,EAAWtF,MAqCjB+E,MAG1B,GAAI9F,EAAa,OACX+J,EACqB,kBAAhB/J,EAA2B7B,GAAU6B,GAAeA,EAGpC,MAAvB6J,IACE,OAAAE,EAAAA,EAAkB9L,eAAlB,IAA4BiD,WAAW2I,KAF3C,OASAhkH,EAAWkkH,CACZ,MACClkH,EAAWikH,EAGb,IAAI7L,EAAWp4G,EAASo4G,UAAY,IAMhC34E,EAAUw6E,GAAYC,EAAQ,CAAE9B,SAJX,MAAvB4L,EACI5L,EACAA,EAAS1hJ,MAAMstJ,EAAmBlyJ,SAAW,MAkB/CqwJ,EAAkBH,GACpBviF,GACEA,EAAQl+D,KAAK6tC,SAAAA,GAAD,OACV78C,OAAOuB,OAAO,CAAC,EAAGs7C,EAAO,CACvB45F,OAAQz2I,OAAOuB,OAAO,CAAC,EAAGiwJ,EAAc30G,EAAM45F,QAC9CoP,SAAUkD,GAAU,CAClB0I,EAEAnrH,EAAU6gH,eACN7gH,EAAU6gH,eAAetqG,EAAMgpG,UAAUA,SACzChpG,EAAMgpG,WAEZqE,aACyB,MAAvBrtG,EAAMqtG,aACFuH,EACA1I,GAAU,CACR0I,EAEAnrH,EAAU6gH,eACN7gH,EAAU6gH,eAAetqG,EAAMqtG,cAAcrE,SAC7ChpG,EAAMqtG,gBAlBtB,IAsBFwF,EACA6B,QAA0BpiJ,GAM5B,OAAIy4I,GAAegI,EAEfnyC,EAAAA,cAAC4vC,GAAgB9pB,SAAjB,CACEthI,MAAO,CACLwrC,SAAU,IACRo4G,SAAU,IACVnvD,OAAQ,GACRovD,KAAM,GACN5/C,MAAO,KACP/lG,IAAK,WACFstC,GAELujH,eAAgBC,GAAAA,MAGjBrB,GAKAA,CACR,CC1DQgC,CAHLxC,IAAsB9sE,EACjB8sE,EAAkByC,OAAOlK,OAC1BmK,GAAyBxvE,GACN70C,EAC1B,WAiCI0iH,GAAAA,EAAAA,EAAAA,QAAAA,GAAAA,UAAAA,EAAAA,EAAAA,QAAAA,GAAAA,UAAAA,EAAAA,EAAAA,MAAAA,GAAAA,OAAAA,EAAAA,KAAAA,GAAAA,CAAAA,IAML,IAAM4B,GAAsB,IAAI5vJ,SAAQ,WAAO,IAEds7G,EAAAA,UAoH1B,SAASq0C,GACdxvE,EACAmmE,QACe,IADfA,IAAAA,EAAuB,IAEvB,IAAId,EAAwB,GAuD5B,OArDAlqC,EAAAA,SAAAA,QAAuBn7B,GAAU,SAAC1tD,EAAS/tB,GACzC,GAAK42G,EAAAA,eAAqB7oF,GAM1B,GAAIA,EAAQzmB,OAASsvG,EAAAA,SAArB,CAUE7oF,EAAQzmB,OAASuiJ,IADnB,OAQG97H,EAAQ4xE,MAAM3/F,OAAU+tB,EAAQ4xE,MAAMlkB,UADzC,OAKA,IAAI0vE,EAAW,GAAH,eAAOvJ,GAAJ,CAAgB5hJ,IAC3B8hJ,EAAqB,CACvB5mG,GAAIntB,EAAQ4xE,MAAMzkD,IAAMiwG,EAAS3xJ,KAAK,KACtCwoJ,cAAej0H,EAAQ4xE,MAAMqiD,cAC7Bj0H,QAASA,EAAQ4xE,MAAM5xE,QACvB/tB,MAAO+tB,EAAQ4xE,MAAM3/F,MACrB8pC,KAAM/b,EAAQ4xE,MAAM71D,KACpBshH,OAAQr9H,EAAQ4xE,MAAMyrD,OACtB9nD,OAAQv1E,EAAQ4xE,MAAM2D,OACtBolD,aAAc36H,EAAQ4xE,MAAM+oD,aAC5B2C,iBAAgD,MAA9Bt9H,EAAQ4xE,MAAM+oD,aAChC4C,iBAAkBv9H,EAAQ4xE,MAAM2rD,iBAChCnoB,OAAQp1G,EAAQ4xE,MAAMwjC,QAGpBp1G,EAAQ4xE,MAAMlkB,WAChBqmE,EAAMrmE,SAAWwvE,GACfl9H,EAAQ4xE,MAAMlkB,SACd0vE,IAIJrK,EAAOjoJ,KAAKipJ,EApCX,MALChB,EAAOjoJ,KAAKI,MACV6nJ,EACAmK,GAAyBl9H,EAAQ4xE,MAAMlkB,SAAUmmE,OA0ChDd,CACR,+WC3hBe,SAAAyK,GACd90C,GAEA,YAF8B,IAA9BA,IAAAA,EAA4B,IAErB,IAAI+0C,gBACO,kBAAT/0C,GACP39G,MAAMC,QAAQ09G,IACdA,aAAgB+0C,gBACZ/0C,EACAt9G,OAAO0uC,KAAK4uE,GAAM3zF,QAAO,SAACq6G,EAAM7jI,GAC9B,IAAI8B,EAAQq7G,EAAKn9G,GACjB,OAAO6jI,EAAK5/H,OACVzE,MAAMC,QAAQqC,GAASA,EAAM+M,KAAKtL,SAAAA,GAAD,MAAO,CAACvD,EAAKuD,EAAvB,IAA6B,CAAC,CAACvD,EAAK8B,OAE5D,IAEV,mLCoMK,SAAUqwJ,GAIKtM,GAAA,IVmDnBn3I,EUtDAg5I,EAGmB7B,EAHnB6B,SACAvlE,EAEmB0jE,EAFnB1jE,SACAntD,EACmB6wH,EADnB7wH,OAEIo9H,EAAa90C,EAAAA,SACS,MAAtB80C,EAAWtkJ,UACbskJ,EAAWtkJ,cVgDsB,KAAnCY,EUhD4C,CAAEsmB,OAAAA,EAAQ0xH,UAAU,MVgDhEh4I,EAAiC,CAAC,GAoB3B43I,IAlBP,SACEtxH,EACA2xH,GAEA,MAAiC3xH,EAAOsY,SACxC,OAAOm4G,GACL,GACA,CAAEC,SAHA,EAAEA,SAGQnvD,OAHV,EAAYA,OAGMovD,KAHEA,EAAAA,MAKrBgB,EAAc5gD,OAAS4gD,EAAc5gD,MAAMy/C,KAAQ,KACnDmB,EAAc5gD,OAAS4gD,EAAc5gD,MAAM/lG,KAAQ,UAEvD,IAED,SAA2Bg1B,EAAgBrxB,GACzC,MAAqB,kBAAPA,EAAkBA,EAAKwiJ,GAAWxiJ,EACjD,GAKC,KACA+K,KUrEF,IAAIk4I,EAAUwL,EAAWtkJ,QACzB,EAAwBwvG,EAAAA,SAAe,CACrCtT,OAAQ48C,EAAQ58C,OAChB18D,SAAUs5G,EAAQt5G,WAFpB,eAAKy4D,EAAD,KAAQy2B,EAAR,KAOJ,OAFAlf,EAAAA,iBAAsB,kBAAMspC,EAAQG,OAAOvqB,EAA3C,GAAsD,CAACoqB,IAGrDtpC,EAAAA,cAACmzC,GAAM,CACL/I,SAAUA,EACVvlE,SAAUA,EACV70C,SAAUy4D,EAAMz4D,SAChBujH,eAAgB9qD,EAAMiE,OACtB7jE,UAAWygH,GAGhB,CAuFM,IAAMyL,GAAO/0C,EAAAA,YAClB,SAYE1W,EAAAA,GAAG,IAVD0L,EAUCo+C,EAVDp+C,QACAq7C,EASC+C,EATD/C,SACA2E,EAQC5B,EARD4B,eACA11H,EAOC8zH,EAPD9zH,QACAmpE,EAMC2qD,EAND3qD,MACA95D,EAKCykH,EALDzkH,OACAtoC,EAIC+sJ,EAJD/sJ,GACA4uJ,EAGC7B,EAHD6B,mBACGrJ,EAEF,SAECl8G,EH3WD,SACLrpC,EAEQ6uJ,GAAA,IADN7E,QACM,MAD2C,CAAC,EAC5C,GADNA,SAGAL,MADF,OAOA,MAA8BhwC,EAAAA,WAAiB2vC,IAAzCvF,EAAF,EAAEA,SAAUvhH,EAAAA,EAAAA,UAChB,EAAiC4nH,GAAgBpqJ,EAAI,CAAEgqJ,SAAAA,IAAjDhI,EAAF,EAAEA,KAAMD,EAAR,EAAQA,SAAUnvD,EAAAA,EAAAA,OAElBk8D,EAAiB/M,EAWrB,MALiB,MAAbgC,IACF+K,EACe,MAAb/M,EAAmBgC,EAAWkB,GAAU,CAAClB,EAAUhC,KAGhDv/G,EAAUqgH,WAAW,CAAEd,SAAU+M,EAAgBl8D,OAAAA,EAAQovD,KAAAA,GACjE,CGiVc+M,CAAQ/uJ,EAAI,CAAEgqJ,SAAAA,IACrBgF,WA8UNhvJ,EAaM6uJ,GAAA,iBAAF,CAAC,EAAC,EAXJvmH,EADF,EACEA,OACS2mH,EAFX,EAEEh2H,QACAmpE,EAHF,EAGEA,MACAwsD,EAJF,EAIEA,mBACA5E,EAAAA,EAAAA,SASEwC,EAAW3C,KACXlgH,EAAWigH,KACX/8G,EAAOu9G,GAAgBpqJ,EAAI,CAAEgqJ,SAAAA,IAEjC,OAAOrwC,EAAAA,aACJ1mB,SAAAA,GACC,GDhuBU,SACdA,EACA3qD,GAEA,OACmB,IAAjB2qD,EAAMjF,UACJ1lD,GAAqB,UAAXA,KAVhB,SAAyB2qD,GACvB,SAAUA,EAAMpF,SAAWoF,EAAMrF,QAAUqF,EAAMvF,SAAWuF,EAAMtF,SACnE,CASIuhE,CAAgBj8D,EAEpB,CCutBSk8D,CAAuBl8D,EAAO3qD,GAAS,CACzC2qD,EAAM/G,iBAIN,IAAIjzD,OACc5tB,IAAhB4jJ,EACIA,EACAzM,GAAW74G,KAAc64G,GAAW31G,GAE1C2/G,EAASxsJ,EAAI,CAAEi5B,QAAAA,EAASmpE,MAAAA,EAAOwsD,mBAAAA,EAAoB5E,SAAAA,GACpD,IAEH,CACErgH,EACA6iH,EACA3/G,EACAoiH,EACA7sD,EACA95D,EACAtoC,EACA4uJ,EACA5E,GAGL,CA5XyBoF,CAAoBpvJ,EAAI,CAC5Ci5B,QAAAA,EACAmpE,MAAAA,EACA95D,OAAAA,EACAsmH,mBAAAA,EACA5E,SAAAA,IAWF,OAEErwC,EAAAA,cACM,IADN,MACM4rC,EADN,CAEEl8G,KAAMA,EACNslE,QAASggD,EAAiBhgD,EAd9B,SACE1b,GAEI0b,GAASA,EAAQ1b,GAChBA,EAAMlH,kBACTijE,EAAgB/7D,EAEnB,EAQGgQ,IAAKA,EACL36D,OAAQA,IAGb,IA+BI,IAAM+mH,GAAU11C,EAAAA,YACrB,SAWE1W,EAAAA,GAAG,QATD,gBAAgBqsD,OAAe,IAAG,SADpC,IAUG9B,EARDzI,cAAAA,OAAa,IAAG,GAFlB,IAUGyI,EAPDrvH,UAAWoxH,OAAa,IAAG,KAH7B,IAUG/B,EAND3oJ,IAAAA,OAAG,IAAG,GAJR,EAKS2qJ,EAKNhC,EALD7jI,MACA3pB,EAICwtJ,EAJDxtJ,GACAw+E,EAGCgvE,EAHDhvE,SACG+mE,EAEF,SAEC14G,EAAOu9G,GAAgBpqJ,EAAI,CAAEgqJ,SAAUzE,EAAKyE,WAC5CrgH,EAAWigH,KACX6F,EAAc91C,EAAAA,WAAiByvC,IAC7B5mH,EAAcm3E,EAAAA,WAAiB2vC,IAA/B9mH,UAEFqlH,EAAarlH,EAAU6gH,eACvB7gH,EAAU6gH,eAAex2G,GAAMk1G,SAC/Bl1G,EAAKk1G,SACL2F,EAAmB/9G,EAASo4G,SAC5B2N,EACFD,GAAeA,EAAYhD,YAAcgD,EAAYhD,WAAW9iH,SAC5D8lH,EAAYhD,WAAW9iH,SAASo4G,SAChC,KAEDgD,IACH2C,EAAmBA,EAAiBxzI,cACpCw7I,EAAuBA,EACnBA,EAAqBx7I,cACrB,KACJ2zI,EAAaA,EAAW3zI,eAG1B,IAeIiqB,EAfAs2G,EACFiT,IAAqBG,IACnBhjJ,GACA6iJ,EAAiB1C,WAAW6C,IACmB,MAA/CH,EAAiBtpF,OAAOypF,EAAWpsJ,QAEnCk0J,EACsB,MAAxBD,IACCA,IAAyB7H,IACtBhjJ,GACA6qJ,EAAqB1K,WAAW6C,IACmB,MAAnD6H,EAAqBtxF,OAAOypF,EAAWpsJ,SAEzCm0J,EAAcnb,EAAW6a,OAAkBjkJ,EAI7C8yB,EAD2B,oBAAlBoxH,EACGA,EAAc,CAAE9a,SAAAA,EAAUkb,UAAAA,IAO1B,CACVJ,EACA9a,EAAW,SAAW,KACtBkb,EAAY,UAAY,MAEvBz3I,OAAO4uG,SACPvqH,KAAK,KAGV,IAAIotB,EACmB,oBAAd6lI,EACHA,EAAU,CAAE/a,SAAAA,EAAUkb,UAAAA,IACtBH,EAEN,OACE71C,EAAAA,cAAC+0C,GAAD,MACMnJ,EADN,CAEgB,eAAAqK,EACdzxH,UAAWA,EACX8kE,IAAKA,EACLt5E,MAAOA,EACP3pB,GAAIA,IAEiB,oBAAbw+E,EACJA,EAAS,CAAEi2D,SAAAA,EAAUkb,UAAAA,IACrBnxE,EAGT,IA0EH,IAgFKysE,GAMAT,GAiFC,SAAUqF,GACdC,GAcA,IAAIC,EAAyBp2C,EAAAA,OAAa20C,GAAmBwB,IAEzDnmH,EAAWigH,KACXrY,EAAe53B,EAAAA,SACjB,kBDztBY,SACdq2C,EACAC,GAEA,IAEA,EAFI1e,EAAe+c,GAAmB0B,GAAtC,WAEgBC,EAAoBrlH,QAApC,qBAA4C,IAAnCvuC,EAAT,QACOk1I,EAAaxnG,IAAI1tC,IACpB4zJ,EAAoBC,OAAO7zJ,GAAKqN,SAASvL,SAAAA,GACvCozI,EAAa/C,OAAOnyI,EAAK8B,KAG9B,EAND,IAAK,EAAL,wBAMC,+BAED,OAAOozI,CACR,CC2sBK4e,CACExmH,EAASipD,OACTm9D,EAAuB5lJ,QAJV,GAMjB,CAACw/B,EAASipD,SAGR45D,EAAW3C,KACXuG,EAAkBz2C,EAAAA,aACpB,SAAC02C,EAAUC,GACT,IAAMC,EAAkBjC,GACF,oBAAb+B,EAA0BA,EAAS9e,GAAgB8e,GAE5D7D,EAAS,IAAM+D,EAAiBD,EACjC,GACD,CAAC9D,EAAUjb,IAGb,MAAO,CAACA,EAAc6e,EACvB,EA9HD,SAAKnF,GACHA,EAAAA,qBAAAA,uBACAA,EAAAA,cAAAA,gBACAA,EAAAA,WAAAA,YAHF,GAAKA,KAAAA,GAIJ,KAED,SAAKT,GACHA,EAAAA,YAAAA,cACAA,EAAAA,qBAAAA,sBAFF,EAAKA,KAAAA,GAGJ,KAiWD,OCjjCe,SAAS,KAYtB,OAXA,GAAWtuJ,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAC1D,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAIymD,EAASxmD,UAAUD,GACvB,IAAK,IAAIc,KAAO2lD,EACV9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAC/CisC,EAAOjsC,GAAO2lD,EAAO3lD,GAG3B,CACA,OAAOisC,CACT,EACO,GAAStsC,MAAMqB,KAAM7B,UAC9B,k1BCbIo+C,yBCUJ,GANkB,SAAH,GAAiC,IAA3B4kC,EAAQ,EAARA,SAAUrgD,EAAS,EAATA,UACxB7iC,EAAUD,KAAW,YAAa8iC,GAExC,OAAO,gBAAKA,UAAW7iC,EAAQ,SAAEkjF,GAClC,ECuCA,GAzCe,WACd,IAAQkiE,EAAQhB,KAARgB,IACR,GAA0Bp3C,EAAAA,EAAAA,eAASj+F,GAAU,eAAtCw1C,EAAK,KAAE2vG,EAAQ,KAgBtB,OAdAznD,EAAAA,EAAAA,YAAU,YACT,uBAAC,yGACqB23C,EAAIrQ,gBAAgB,EAAG,GAAG,KAAD,GAAxCrpF,EAAM,QACAwpG,EAASxpG,IAEpB1I,QAAQ3b,KAAK,uCACb6tH,EAAS,CACR,CAAEC,gBAAiB,OAAQC,QAAS9T,EAAOC,MAC3C,CAAE4T,gBAAiB,QAASC,QAAS9T,EAAOqB,UAE7C,0CATF,EAWD,GAAG,KAGF,gBAAK9/G,UAAU,SAAQ,UACtB,UAAC,GAAS,CAACA,UAAU,kBAAiB,WACrC,iBAAKA,UAAU,cAAa,WAC3B,gBAAKA,UAAU,UACf,cAAGA,UAAU,kBAGd,iBAAKA,UAAU,YAAW,WACzB,uBAAG,uDACH,gBAAKA,UAAU,mBAAkB,SAC1B,OAAL0iB,QAAK,IAALA,OAAK,EAALA,EAAO31C,KAAI,gBAAGulJ,EAAe,EAAfA,gBAAiBC,EAAO,EAAPA,QAAO,OACtC,cAAGrnH,KAAMqnH,EAASpoH,OAAO,SAASqoH,IAAI,aAAY,SAChDF,GADsDA,EAEpD,aAOX,EF5CI,GAAY,CAAC,QAAS,WAC1B,SAAS,KAAiS,OAApR,GAAWv0J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAASo1J,GAAyB5uG,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS2oH,GAAc/O,EAAMgP,GAC3B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQkuD,GAAyB1O,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTl4G,KAAM,UACN+pD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAMjpE,KAAOA,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACrPV,KAAM,UACNt8C,EAAG,yMAEP,CACA,IGzBI,GHyBAy0J,GAA0B,aAAiBJ,IGxB3C,IHyBW,IGzBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW/0J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASgpH,GAAapP,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPw7H,WAAY,+BACZ9wJ,MAAO,OACPC,OAAQ,MACR0wJ,QAAS,oBACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAmB,gBAAoB,IAAK,CACtD3pE,KAAM,UACNs4G,SAAU,UACV9zG,OAAQ,OACRkkC,YAAa,EACb6vE,cAAe,OACfC,eAAgB,QAChBhwE,iBAAkB,GAClBF,gBAAiB,GACjBC,iBAAkB,EAClB1zD,WAAY,OACZG,WAAY,OACZlD,SAAU,OACV2mI,WAAY,OACZhoI,MAAO,CACLioI,aAAc,WAEf,KAAO,GAAkB,gBAAoB,IAAK,CACnDrlI,UAAW,sEACG,gBAAoB,IAAK,CACvCA,UAAW,wCACX0xB,GAAI,kBACU,gBAAoB,IAAK,CACvC1xB,UAAW,uBACX0xB,GAAI,cACU,gBAAoB,OAAQ,CAC1C1xB,UAAW,wBACX3vB,EAAG,+SACHqhD,GAAI,mBAER,CACA,ICnDI,GDmDA,GAA0B,aAAiBqzG,IClD3C,IDmDW,ICnDC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWp1J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASupH,GAAiB3P,EAAMgP,GAC9B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,EACR0wJ,QAAS,WACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,CAC9Gt2F,UAAW,sBACG,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAClI2sB,KAAM,UACNt8C,EAAG,yRAEP,CACA,IC1BI,GD0BA,GAA0B,aAAiBi1J,ICzB3C,ID0BW,IC1BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW31J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASwpH,GAAa5P,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTl4G,KAAM,UACN+pD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,oLAEP,CACA,ICzBI,GDyBA,GAA0B,aAAiBk1J,ICxB3C,IDyBW,ICzBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW51J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASypH,GAAgB7P,EAAMgP,GAC7B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTl4G,KAAM,UACN+pD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,kTAEP,CACA,ICzBI,GDyBA,GAA0B,aAAiBm1J,ICxB3C,IDyBW,ICzBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW71J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS0pH,GAAa9P,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,oJAEP,CACA,ICxBIq1J,GDwBA,GAA0B,aAAiBD,ICvB3C,IDwBW,ICxBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW91J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS4pH,GAAYhQ,EAAMgP,GACzB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAMovC,KAAUA,GAAqB,gBAAoB,OAAQ,CAC3Er1J,EAAG,6TAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiBs1J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWh2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS6pH,GAAcjQ,EAAMgP,GAC3B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7JjmH,EAAG,wbAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiBu1J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWj2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS8pH,GAAgBlQ,EAAMgP,GAC7B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3E3pE,KAAM,UACNt8C,EAAG,4jBAEP,CACA,ICxBI,GDwBA,GAA0B,aAAiBw1J,ICvB3C,IDwBW,ICxBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWl2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS+pH,GAAanQ,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACjHjmH,EAAG,2RACY,gBAAoB,OAAQ,CAC3CA,EAAG,wWAEP,CACA,ICzBI,GDyBA,GAA0B,aAAiBy1J,ICxB3C,IDyBW,ICzBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWn2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASgqH,GAAiBpQ,EAAMgP,GAC9B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACjHjmH,EAAG,mkCAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiB01J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWp2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASiqH,GAAarQ,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,4LACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,UACNt8C,EAAG,kEAEP,CACA,IC3BI,GD2BA,GAA0B,aAAiB21J,IC1B3C,ID2BW,IC3BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWr2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASkqH,GAAatQ,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7JjmH,EAAG,mKAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiB41J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWt2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASmqH,GAAYvQ,EAAMgP,GACzB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7JjmH,EAAG,yJAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiB61J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWv2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASoqH,GAAaxQ,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACzMjmH,EAAG,mRACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFA,EAAG,6XAEP,CACA,ICzBI,GDyBA,GAA0B,aAAiB81J,ICxB3C,IDyBW,ICzBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWx2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASqqH,GAA0BzQ,EAAMgP,GACvC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACzM3pE,KAAM,UACNt8C,EAAG,8RACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,UACNt8C,EAAG,8XAEP,CACA,IC3BIg2J,GD2BA,GAA0B,aAAiBD,IC1B3C,ID2BW,IC3BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWz2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASuqH,GAAY3Q,EAAMgP,GACzB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDjkG,GAAI,UACJloB,MAAO,6BACPw7H,WAAY,+BACZ3wJ,EAAG,MACH1B,EAAG,MACHuB,MAAO,OACPC,OAAQ,OACR0wJ,QAAS,YACT0B,iBAAkB,gBAClBC,SAAU,WACV9vD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM+vC,KAAWA,GAAsB,gBAAoB,QAAS,CAC9E30G,GAAI,SACJx9C,MAAO,GACPC,OAAQ,GACRE,EAAG,EACH1B,EAAG,EACHmqC,KAAM,umBAEV,CACA,IClCI,GDkCA,GAA0B,aAAiBwpH,ICjC3C,IDkCW,IClCC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW32J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS0qH,GAAa9Q,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7JjmH,EAAG,mKAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiBo2J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW92J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS2qH,GAAY/Q,EAAMgP,GACzB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3EjmH,EAAG,8SAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiBq2J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW/2J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS4qH,GAAgBhR,EAAMgP,GAC7B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3EjmH,EAAG,2YAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiBs2J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWh3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS6qH,GAAkBjR,EAAMgP,GAC/B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,mHACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,y/BAEP,CACA,IC3BI,GD2BA,GAA0B,aAAiBu2J,IC1B3C,ID2BW,IC3BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWj3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS8qH,GAAkBlR,EAAMgP,GAC/B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,wIACa,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,CACjI2vB,UAAW,2BACI,gBAAoB,IAAK,CACxCA,UAAW,8BACI,gBAAoB,IAAK,MAAoB,gBAAoB,IAAK,CACrFA,UAAW,6BACI,gBAAoB,IAAK,MAAoB,gBAAoB,IAAK,MAAoB,gBAAoB,IAAK,CAClIA,UAAW,2BACI,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACvF2sB,KAAM,OACNt8C,EAAG,kOACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,iEACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,4EACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,yEACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,uFACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,+CACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,8DACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,+DACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,0FACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,iFACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,sEACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,sEACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,gFACa,gBAAoB,IAAK,CACzC2vB,UAAW,0BACG,gBAAoB,OAAQ,CAC1C2sB,KAAM,OACNt8C,EAAG,gCACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,yFACa,gBAAoB,IAAK,CACzC2vB,UAAW,2BACG,gBAAoB,OAAQ,CAC1C2sB,KAAM,OACNt8C,EAAG,oCACa,gBAAoB,IAAK,CACzC2vB,UAAW,yBACG,gBAAoB,OAAQ,CAC1C2sB,KAAM,OACNt8C,EAAG,wCAEP,CACA,ICzFI,GDyFA,GAA0B,aAAiBw2J,ICxF3C,IDyFW,ICzFC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWl3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS+qH,GAAoBnR,EAAMgP,GACjC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,kHACa,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACpIs8C,KAAM,OACNt8C,EAAG,05BACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,yhBACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,iTACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,+KACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,4LACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,iOAEP,CACA,IC1CI,GD0CA,GAA0B,aAAiBy2J,ICzC3C,ID0CW,IC1CC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWn3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASgrH,GAAkBpR,EAAMgP,GAC/B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,uHACa,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,MAAoB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7Ns8C,KAAM,OACNt8C,EAAG,4EACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,yCACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,wCACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,wCACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,yCACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,2CAEP,CACA,IC1CI,GD0CA,GAA0B,aAAiB02J,ICzC3C,ID0CW,IC1CC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWp3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASirH,GAAarR,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPq7H,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,scAEP,CACA,ICtBI,GDsBA,GAA0B,aAAiB22J,ICrB3C,IDsBW,ICtBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWr3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASkrH,GAAQtR,EAAMgP,GACrB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7JjmH,EAAG,+HAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiB42J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWt3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASmrH,GAAcvR,EAAMgP,GAC3B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,gKACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,oEACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,mUAEP,CACA,IC9BI82J,GAAO,GD8BP,GAA0B,aAAiBD,IC7B3C,ID8BW,IC9BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWv3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASqrH,GAAsBzR,EAAMgP,GACnC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM6wC,KAAUA,GAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAC9Hz1G,GAAI,SACU,gBAAoB,OAAQ,CAC1CrhD,EAAG,wCACE,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAClJs8C,KAAM,cACNt8C,EAAG,gSACa,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAChLs8C,KAAM,cACNt8C,EAAG,sCACa,gBAAoB,IAAK,CACzCg3J,SAAU,eACI,gBAAoB,OAAQ,CAC1C16G,KAAM,OACNt8C,EAAG,2JACe,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC1Fs8C,KAAM,UACNt8C,EAAG,oEACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,UACNt8C,EAAG,8TACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,UACNt8C,EAAG,kEAEP,CACA,IC7CI,GD6CA,GAA0B,aAAiB+2J,IC5C3C,ID6CW,IC7CC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWz3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASurH,GAAc3R,EAAMgP,GAC3B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,CAC9Gt2F,UAAW,qBACG,gBAAoB,OAAQ,CAC1C2sB,KAAM,UACNt8C,EAAG,8UAEP,CACA,IC1BI,GD0BA,GAA0B,aAAiBi3J,ICzB3C,ID0BW,IC1BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW33J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASwrH,GAAgB5R,EAAMgP,GAC7B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,iEAEP,CACA,IAAI,GAA0B,aAAiBk3J,ICxB3C,IDyBW,ICzBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW53J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASyrH,GAAY7R,EAAMgP,GACzB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDxhJ,OAAQ,QACRD,MAAO,QACPw9C,GAAI,UACJloB,MAAO,6BACPw7H,WAAY,+BACZH,QAAS,cACT2B,SAAU,WACV9vD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAmB,gBAAoB,OAAQ,CACzDl5F,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,kGACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,sDACY,gBAAoB,UAAW,CAC9C+sB,MAAO,CACLuvB,KAAM,WAER86G,OAAQ,6BACO,gBAAoB,OAAQ,CAC3CrqI,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,2GACY,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACvF+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,kNACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,+VACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,kdACa,gBAAoB,OAAQ,CAC5C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,2EAEP,CACA,IAAI,GAA0B,aAAiBm3J,IC/D3C,IDgEW,IChEC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW73J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS2rH,GAAW/R,EAAMgP,GACxB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDxhJ,OAAQ,QACRD,MAAO,QACPw9C,GAAI,UACJloB,MAAO,6BACPw7H,WAAY,+BACZH,QAAS,cACT2B,SAAU,WACV9vD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAmB,gBAAoB,OAAQ,CACzDl5F,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,kGACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,sDACY,gBAAoB,UAAW,CAC9C+sB,MAAO,CACLuvB,KAAM,WAER86G,OAAQ,6BACO,gBAAoB,OAAQ,CAC3CrqI,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,2GACY,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACvF+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,wUACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,kNACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,4SACa,gBAAoB,OAAQ,CAC5C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,2EAEP,CACA,IC/DI,GD+DA,GAA0B,aAAiBq3J,IC9D3C,ID+DW,IC/DC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW/3J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS4rH,GAAYhS,EAAMgP,GACzB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,gKACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,8TAEP,CACA,IAAI,GAA0B,aAAiBs3J,IC3B3C,ID4BW,IC5BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWh4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS6rH,GAAWjS,EAAMgP,GACxB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDjkG,GAAI,UACJloB,MAAO,6BACPw7H,WAAY,+BACZH,QAAS,cACT2B,SAAU,WACV9vD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAmB,gBAAoB,OAAQ,CACzDl5F,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,kGACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,sDACY,gBAAoB,UAAW,CAC9C+sB,MAAO,CACLuvB,KAAM,WAER86G,OAAQ,6BACO,gBAAoB,OAAQ,CAC3CrqI,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,2GACY,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACvF+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,gYACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,sVACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,4eACa,gBAAoB,OAAQ,CAC5C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,2EAEP,CACA,IAAI,GAA0B,aAAiBu3J,IC7D3C,ID8DW,IC9DC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWj4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS8rH,GAAWlS,EAAMgP,GACxB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDxhJ,OAAQ,QACRD,MAAO,QACPw9C,GAAI,UACJloB,MAAO,6BACPw7H,WAAY,+BACZH,QAAS,cACT2B,SAAU,WACV9vD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAmB,gBAAoB,OAAQ,CACzDl5F,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,kGACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,sDACY,gBAAoB,UAAW,CAC9C+sB,MAAO,CACLuvB,KAAM,WAER86G,OAAQ,6BACO,gBAAoB,OAAQ,CAC3CrqI,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,2GACY,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACvF+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,sQACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,8VACY,gBAAoB,OAAQ,CAC3C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,ifACa,gBAAoB,OAAQ,CAC5C+sB,MAAO,CACLuvB,KAAM,WAERt8C,EAAG,2EAEP,CACA,IC/DI,GD+DA,GAA0B,aAAiBw3J,IC9D3C,ID+DW,IC/DC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWl4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS+rH,GAAmBnS,EAAMgP,GAChC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,OACNt8C,EAAG,yEACa,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CACxFs8C,KAAM,OACNt8C,EAAG,sEAEP,CACA,IC3BI,GD2BA,GAA0B,aAAiBy3J,IC1B3C,ID2BW,IC3BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWn4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASgsH,GAAmBpS,EAAMgP,GAChC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,OACNt8C,EAAG,2EAEP,CACA,ICxBI,GDwBA,GAA0B,aAAiB03J,ICvB3C,IDwBW,ICxBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWp4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASisH,GAAkBrS,EAAMgP,GAC/B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,CAClE5kE,GAAI,wBACJ,YAAa,wBACb1xB,UAAW,oBACG,gBAAoB,OAAQ,CAC1C0xB,GAAI,aACJ,YAAa,aACbrhD,EAAG,kDACH2vB,UAAW,iBACX2sB,KAAM,OACNwE,OAAQ,UACR+zG,cAAe,QACfC,eAAgB,QAChB9vE,YAAa,IACE,gBAAoB,OAAQ,CAC3C3jC,GAAI,aACJ,YAAa,aACbrhD,EAAG,2BACH2vB,UAAW,iBACX2sB,KAAM,OACNwE,OAAQ,UACR+zG,cAAe,QACfC,eAAgB,QAChB9vE,YAAa,IACE,gBAAoB,OAAQ,CAC3C3jC,GAAI,aACJ,YAAa,aACbrhD,EAAG,eACH2vB,UAAW,iBACX2sB,KAAM,OACNwE,OAAQ,UACR+zG,cAAe,QACfC,eAAgB,QAChB9vE,YAAa,MAEjB,CACA,ICvDI,GAAO,GDuDP,GAA0B,aAAiB2yE,ICtD3C,IDuDW,ICvDC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWr4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASksH,GAAWtS,EAAMgP,GACxB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPw7H,WAAY,+BACZ9wJ,MAAO,OACPC,OAAQ,OACR0wJ,QAAS,oBACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAC9H5kE,GAAI,aACU,gBAAoB,OAAQ,CAC1CA,GAAI,iBACJ,YAAa,iBACbx9C,MAAO,OACPC,OAAQ,OACRw4C,KAAM,eACD,KAAO,GAAkB,gBAAoB,IAAK,CACvD+E,GAAI,aACJ,YAAa,aACb1xB,UAAW,kBACG,gBAAoB,IAAK,CACvC0xB,GAAI,aACJ,YAAa,aACb1xB,UAAW,iBACXqnI,SAAU,mBACI,gBAAoB,OAAQ,CAC1C31G,GAAI,aACJ,YAAa,aACbrhD,EAAG,6cACH2vB,UAAW,iBACX2sB,KAAM,YACS,gBAAoB,OAAQ,CAC3C+E,GAAI,aACJ,YAAa,aACbrhD,EAAG,8NACH2vB,UAAW,4BACX2sB,KAAM,eAEV,CACA,ICnDI,GDmDA,GAA0B,aAAiBs7G,IClD3C,IDmDW,ICnDC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWt4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASmsH,GAAavS,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,OACPC,OAAQ,OACR0wJ,QAAS,oBACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3E5kE,GAAI,sBACJ,YAAa,sBACbrhD,EAAG,2kBACH2vB,UAAW,6BAEf,CACA,IC1BI,GD0BA,GAA0B,aAAiBkoI,ICzB3C,ID0BW,IC1BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWv4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASosH,GAAgBxS,EAAMgP,GAC7B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,KACPC,OAAQ,KACR0wJ,QAAS,gBACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3E5kE,GAAI,wBACJ,YAAa,wBACbrhD,EAAG,2yBACH2vB,UAAW,wBAEf,CACA,IC1BI,GD0BA,GAA0B,aAAiBmoI,ICzB3C,ID0BW,IC1BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWx4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASqsH,GAAmBzS,EAAMgP,GAChC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,OACPC,OAAQ,GACR0wJ,QAAS,gBACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,CAClE5kE,GAAI,0BACJ,YAAa,0BACb1xB,UAAW,mBACG,gBAAoB,OAAQ,CAC1C0xB,GAAI,aACJ,YAAa,aACbrhD,EAAG,gDACHs8C,KAAM,OACNwE,OAAQ,OACR+zG,cAAe,QACfC,eAAgB,QAChB9vE,YAAa,IACE,gBAAoB,OAAQ,CAC3C3jC,GAAI,aACJ,YAAa,aACbrhD,EAAG,kDACHs8C,KAAM,OACNwE,OAAQ,OACR+zG,cAAe,QACfC,eAAgB,QAChB9vE,YAAa,IACE,gBAAoB,OAAQ,CAC3C3jC,GAAI,aACJ,YAAa,aACbrhD,EAAG,qBACHs8C,KAAM,OACNwE,OAAQ,OACR+zG,cAAe,QACfC,eAAgB,QAChB9vE,YAAa,MAEjB,CACA,ICpDI,GDoDA,GAA0B,aAAiB+yE,ICnD3C,IDoDW,ICpDC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWz4J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASssH,GAAe1S,EAAMgP,GAC5B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,OACPC,OAAQ,OACR0wJ,QAAS,oBACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3E5kE,GAAI,8BACJ,YAAa,8BACbrhD,EAAG,wQACH2vB,UAAW,mBACX2sB,KAAM,OACNwE,OAAQ,UACR+zG,cAAe,QACfC,eAAgB,QAChB9vE,YAAa,KAEjB,CACA,IC/BI,GD+BA,GAA0B,aAAiBgzE,IC9B3C,ID+BW,IC/BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW14J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASusH,GAAmB3S,EAAMgP,GAChC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,KACPC,OAAQ,KACR0wJ,QAAS,gBACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3E5kE,GAAI,2BACJ,YAAa,2BACbrhD,EAAG,ylBACH2vB,UAAW,iBACX2sB,KAAM,UAEV,CACA,IC3BI,GAAO,GD2BP,GAA0B,aAAiB27G,IC1B3C,ID2BW,IC3BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW34J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASwsH,GAAuB5S,EAAMgP,GACpC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPw7H,WAAY,+BACZ9wJ,MAAO,MACPC,OAAQ,OACR0wJ,QAAS,mBACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAC9H5kE,GAAI,aACU,gBAAoB,OAAQ,CAC1CA,GAAI,iBACJ,YAAa,iBACbx9C,MAAO,MACPC,OAAQ,OACRw4C,KAAM,eACD,KAAO,GAAkB,gBAAoB,IAAK,CACvD+E,GAAI,aACJ,YAAa,aACb1xB,UAAW,gCACG,gBAAoB,IAAK,CACvC0xB,GAAI,aACJ,YAAa,aACb1xB,UAAW,8BACG,gBAAoB,IAAK,CACvC0xB,GAAI,aACJ,YAAa,aACb21G,SAAU,mBACI,gBAAoB,OAAQ,CAC1C31G,GAAI,aACJ,YAAa,aACbrhD,EAAG,4bACH2vB,UAAW,uBACX2sB,KAAM,YACS,gBAAoB,OAAQ,CAC3C+E,GAAI,aACJ,YAAa,aACbrhD,EAAG,6lBACH2vB,UAAW,uBACX2sB,KAAM,cACW,gBAAoB,OAAQ,CAC7C+E,GAAI,qBACJ,YAAa,qBACbrhD,EAAG,+KACH2vB,UAAW,6BACX2sB,KAAM,WAEV,CACA,IC5DI,GD4DA,GAA0B,aAAiB47G,IC3D3C,ID4DW,IC5DC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW54J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASysH,GAAc7S,EAAMgP,GAC3B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,OACPC,OAAQ,OACR0wJ,QAAS,oBACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3E5kE,GAAI,qBACJ,YAAa,qBACbrhD,EAAG,gOACH2vB,UAAW,qBACX2sB,KAAM,kBAEV,CACA,IC3BI,GAAO87G,GAAQC,GD2Bf,GAA0B,aAAiBF,IC1B3C,ID2BW,IC3BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAW74J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS4sH,GAAmBhT,EAAMgP,GAChC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDzhJ,MAAO,QACPC,OAAQ,QACR0wJ,QAAS,YACTl4G,KAAM,cACNnjB,MAAO,6BACPktE,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3EjmH,EAAG,wRACH8gD,OAAQ,UACRkkC,YAAa,EACb6vE,cAAe,QACfC,eAAgB,WACbsD,KAAWA,GAAsB,gBAAoB,OAAQ,CAChEp4J,EAAG,sBACH8gD,OAAQ,UACRkkC,YAAa,EACb6vE,cAAe,QACfC,eAAgB,WACbuD,KAAWA,GAAsB,gBAAoB,OAAQ,CAChEr4J,EAAG,2JACH8gD,OAAQ,UACRkkC,YAAa,EACb6vE,cAAe,WAEnB,CACA,ICvCI,GDuCA,GAA0B,aAAiByD,ICtC3C,IDuCW,ICvCC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWh5J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS6sH,GAAqBjT,EAAMgP,GAClC,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7J3pE,KAAM,UACNt8C,EAAG,+VAEP,CACA,ICxBI,GDwBA,GAA0B,aAAiBu4J,ICvB3C,IDwBW,ICxBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWj5J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS8sH,GAAalT,EAAMgP,GAC1B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDnsH,MAAO,6BACPt1B,MAAO,GACPC,OAAQ,EACR0wJ,QAAS,WACTnuD,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAO,GAAkB,gBAAoB,IAAK,KAAmB,gBAAoB,IAAK,KAAmB,gBAAoB,OAAQ,CAC7JjmH,EAAG,uJAEP,CACA,ICvBI,GDuBA,GAA0B,aAAiBw4J,ICtB3C,IDuBW,ICvBC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWl5J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAAS+sH,GAAcnT,EAAMgP,GAC3B,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDzhJ,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTl4G,KAAM,OACNnjB,MAAO,6BACPktE,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3E2uC,SAAU,UACV8D,SAAU,UACV14J,EAAG,kUACHs8C,KAAM,aAEV,CACA,IC3BI,GD2BA,GAA0B,aAAiBm8G,IC1B3C,ID2BW,IC3BC,CAAC,QAAS,YAC1B,SAAS,KAAiS,OAApR,GAAWn5J,OAAOuB,OAASvB,OAAOuB,OAAO26F,OAAS,SAAU9vD,GAAU,IAAK,IAAI/sC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIymD,EAASxmD,UAAUD,GAAI,IAAK,IAAIc,KAAO2lD,EAAc9lD,OAAOC,UAAUf,eAAekB,KAAK0lD,EAAQ3lD,KAAQisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAU,CAAE,OAAOisC,CAAQ,EAAU,GAAStsC,MAAMqB,KAAM7B,UAAY,CAClV,SAAS,GAAyBwmD,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAAkE3lD,EAAKd,EAAnE+sC,EACzF,SAAuC0Z,EAAQ6uG,GAAY,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAAG,IAA2D3lD,EAAKd,EAA5D+sC,EAAS,CAAC,EAAOwoH,EAAa50J,OAAO0uC,KAAKoX,GAAqB,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IAAOc,EAAMy0J,EAAWv1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,IAAaisC,EAAOjsC,GAAO2lD,EAAO3lD,IAAQ,OAAOisC,CAAQ,CADhN,CAA8B0Z,EAAQ6uG,GAAuB,GAAI30J,OAAO2wI,sBAAuB,CAAE,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GAAS,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IAAOc,EAAM00J,EAAiBx1J,GAAQs1J,EAAShnJ,QAAQxN,IAAQ,GAAkBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KAAgBisC,EAAOjsC,GAAO2lD,EAAO3lD,GAAQ,CAAE,OAAOisC,CAAQ,CAG3e,SAASitH,GAAWrT,EAAMgP,GACxB,IAAIruC,EAAQq/B,EAAKr/B,MACfsuC,EAAUjP,EAAKiP,QACfzuD,EAAQ,GAAyBw/C,EAAM,IACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDzhJ,MAAO,GACPC,OAAQ,GACR0wJ,QAAS,YACTl4G,KAAM,OACNnjB,MAAO,6BACPktE,IAAKiuD,EACL,kBAAmBC,GAClBzuD,GAAQmgB,EAAqB,gBAAoB,QAAS,CAC3D5kE,GAAIkzG,GACHtuC,GAAS,KAAM,KAAU,GAAqB,gBAAoB,OAAQ,CAC3EjmH,EAAG,gnCACHs8C,KAAM,WAEV,CACA,IAAI,GAA0B,aAAiBq8G,ICmG/C,IDlGe,IC0BF,SAAH,GAA2D,IAArDC,EAAI,EAAJA,KAAK,EAAD,EAAEhvI,KAAAA,OAAI,MAAG,GAAE,EAAEnO,EAAK,EAALA,MAAOs2F,EAAO,EAAPA,QAAS4sB,EAAY,EAAZA,aAQ1Ck6B,EAAY,CACjBC,YAAY,SAAC,GAAU,CAACj1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACzDs9I,WAAW,SAAC,GAAS,CAACl1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvDu9I,eAAe,SAAC,GAAa,CAACn1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IAC/Dw9I,WAAW,SAAC,GAAS,CAACp1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvDy9I,cAAc,SAAC,GAAY,CAACr1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IAC7D09I,WAAW,SAAC,GAAS,CAACt1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvD29I,UAAU,SAAC,GAAQ,CAACv1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACrD49I,YAAY,SAAC,GAAU,CAACx1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACzD69I,cAAc,SAAC,GAAY,CAACz1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IAC7D89I,gBAAgB,SAAC,GAAc,CAAC11J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACjE+9I,WAAW,SAAC,GAAS,CAAC31J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvDg+I,eAAe,SAAC,GAAa,CAAC51J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IAC/Di+I,WAAW,SAAC,GAAS,CAAC71J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvDk+I,WAAW,SAAC,GAAS,CAAC91J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvDm+I,UAAU,SAAC,GAAQ,CAAC/1J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACrDo+I,WAAW,SAAC,GAAS,CAACh2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvDq+I,WAAW,SAAC,GAAe,CAACj2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IAC7Ds+I,UAAU,SAAC,GAAQ,CAACl2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACrDu+I,WAAW,SAAC,GAAS,CAACn2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvDw+I,UAAU,SAAC,GAAQ,CAACp2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACrDy+I,cAAc,SAAC,GAAY,CAACr2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IAC7D0+I,gBAAgB,SAAC,GAAc,CAACt2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACjE2+I,gBAAgB,SAAC,GAAc,CAACv2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACjE4+I,kBAAkB,SAAC,GAAgB,CAACx2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACrE6+I,gBAAgB,SAAC,GAAc,CAACz2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACjE8+I,WAAW,SAAC,GAAS,CAAC12J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvD++I,UAAU,SAAC,GAAQ,CAAC32J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACrDg/I,YAAY,SAAC,GAAU,CAAC52J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACzDi/I,oBAAoB,SAAC,GAAkB,CAAC72J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACzEk/I,YAAY,SAAC,GAAU,CAAC92J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACzDm/I,cAAc,SAAC,GAAY,CAAC/2J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IAC7Do/I,UAAU,SAAC,GAAQ,CAACh3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACrDq/I,SAAS,SAAC,GAAO,CAACj3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACnDs/I,UAAU,SAAC,GAAQ,CAACl3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACrDu/I,SAAS,SAAC,GAAO,CAACn3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACnDw/I,SAAS,SAAC,GAAO,CAACp3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACnDy/I,UAAU,SAAC,GAAO,CAACr3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACpD0/I,iBAAiB,SAAC,GAAe,CAACt3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACnE2/I,iBAAiB,SAAC,GAAe,CAACv3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACnE4/I,SAAS,SAAC,GAAO,CAACx3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACnD6/I,WAAW,SAAC,GAAS,CAACz3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACvD8/I,cAAc,SAAC,GAAY,CAAC13J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IAC7D+/I,YAAY,SAAC,GAAU,CAAC33J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACzDggJ,aAAa,SAAC,GAAW,CAAC53J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IAC3DigJ,iBAAiB,SAAC,GAAe,CAAC73J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACnEkgJ,mBAAmB,SAAC,GAAa,CAAC93J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACnEmgJ,YAAY,SAAC,GAAU,CAAC/3J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM0yB,KAAM7gC,IACzDogJ,cAAc,SAAC,GAAY,CAACh4J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAMk3B,OAAQrlC,IAC/DqgJ,UAAU,SAAC,GAAQ,CAACj4J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAMk3B,OAAQrlC,IACvDsgJ,WAAW,SAAC,GAAS,CAACl4J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAMk3B,OAAQrlC,IACzDugJ,YAAY,SAAC,GAAU,CAACn4J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAMk3B,OAAQrlC,IAC3DwgJ,SAAS,SAAC,GAAO,CAACp4J,MAAO+lB,EAAM9lB,OAAQ8lB,EAAMk3B,OAAQrlC,KAGtD,OAAIm9I,KAAQC,GAEV,iBAAMt3H,UAAU,OAAOwwE,QAhEF,SAAAjwG,GAClBiwG,GAA8B,oBAAZA,GAAwBA,EAAQjwG,EACvD,EA8DkD68H,aA7DtB,SAAA78H,GACvB68H,GAAwC,oBAAjBA,GAA6BA,EAAa78H,EACtE,EA2DoF,SAChF+2J,EAAUD,KAGP,IACR,GCnHMsD,GAAS,SAAH,EAgBX71D,GACK,IAAD,EAfH4f,EAAK,EAALA,MACAlU,EAAO,EAAPA,QAAQ,EAAD,EACPtkG,KAAAA,OAAI,MAAG,UAAS,EAChB0uJ,EAAK,EAALA,MACAC,EAAS,EAATA,UACAC,EAAO,EAAPA,QACAC,EAAe,EAAfA,gBACAC,EAAQ,EAARA,SACA96E,EAAQ,EAARA,SACA+6E,EAAI,EAAJA,KACAC,EAAS,EAATA,UACAC,EAAS,EAATA,UACAC,EAAc,EAAdA,eAIKp7H,EAAY9iC,KAAW,UAAQ,GACpC+9J,KAAAA,EACAL,MAAAA,EACAC,UAAAA,EACAC,QAAAA,IAAO,2BACK5uJ,GAASA,IAAI,SACxB,YAAcivJ,IAAS,SACvBC,EAAiBA,GAAc,IAGjC,OACC,oBAAQp7H,UAAWA,EAAWwwE,QAASA,EAAStwB,SAAUA,EAAU4kB,IAAKA,EAAI,UAC3E+1D,IAAa,SAAC,GAAI,CAACxD,KAAMwD,EAAWxyI,KAAM2yI,EAAU96E,SAAUA,EAAUhmE,MAAOghJ,KAChF,0BAAOx2C,IACNo2C,IAAW,SAAC,GAAI,CAACzD,KAAMyD,EAASzyI,KAAM0yI,EAAiB76E,SAAUA,EAAUhmE,MAAOghJ,MAGtF,EAEA,IAAet5B,EAAAA,EAAAA,YAAW+4B,IC0H1B,GAxJe,WACd,IAAMtM,EAAW3C,KACXlgH,EAAWigH,KAEjB,EAAuElK,KAA/D7L,EAAI,EAAJA,KAAMiM,EAAY,EAAZA,aAAcY,EAAG,EAAHA,IAAKD,EAAkB,EAAlBA,mBAAoBtT,EAAO,EAAPA,QAASiT,EAAI,EAAJA,KAE9D,GAAwB92C,EAAAA,EAAAA,WAAS,GAAM,eAAhCn6E,EAAI,KAAEqqI,EAAO,KACpB,GAA0BlwD,EAAAA,EAAAA,YAAU,eAA7BzoD,EAAK,KAAE2vG,EAAQ,KAEhBiJ,EAAa,WACT,OAAJ5lB,QAAI,IAAJA,GAAAA,EAAMthI,OACXinJ,GAAQ,SAAA1vJ,GAAI,OAAKA,CAAI,GACtB,EASM4vJ,EAAqB,SAAA1yG,GAEwB,IAAD,EAAjD,GAAI6sF,EAAKthI,OAASshI,EAAKrG,SAAWuL,EAAMI,WACR,OAAPhM,QAAO,IAAPA,GAAgB,QAAT,EAAPA,EAASA,eAAO,WAAT,EAAP,EAAkB37G,MACzC,SAAAmoI,GAAM,OACJA,EAAOC,eAAiB7f,EAAaG,OAASyf,EAAOC,eAAiB7f,EAAaE,MACpF0f,EAAOC,eAAiB7f,EAAaI,aAAa,KAInD,OADuB,OAANnzF,QAAM,IAANA,OAAM,EAANA,EAAQ9uC,QAAO,SAAAixB,GAAI,OAAoB,KAAhBA,EAAK0wH,MAAa,IAM5D,GAAIhmB,EAAKthI,QAAUshI,EAAKrG,SAAWuL,EAAMK,SAAWvF,EAAKrG,SAAWuL,EAAMO,mBAAoB,CAC7F,IAAMwgB,EAAsB,OAAJ1Z,QAAI,IAAJA,OAAI,EAAJA,EAAM2Z,eAC9B,IAAKD,EAAiB,OACtB,IAAME,EAA2C,OAAfF,QAAe,IAAfA,OAAe,EAAfA,EAAiB/uJ,QAAQmN,QAAO,YACjE,OADyE,EAAL/Z,QACnD01I,EAAKvG,MACvB,IACA,IAAK0sB,EAA2B,OAIhC,IAHuBA,EAA0BxoI,MAAK,SAAAmoI,GACrD,OAAOA,EAAO7pB,WAAawK,EAAWJ,KACvC,IAGC,OADuB,OAANlzF,QAAM,IAANA,OAAM,EAANA,EAAQ9uC,QAAO,SAAAixB,GAAI,OAAoB,KAAhBA,EAAK0wH,MAAa,GAG5D,CACA,OAAO7yG,CACR,GAGA+hD,EAAAA,EAAAA,YAAU,WACLp/D,GAAYA,EAASo4G,WAAanF,EAAOa,iBAAiBgD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GACzH,GAAG,CAAC52G,KAEJo/D,EAAAA,EAAAA,YAAU,WACJ8qC,EAAKthI,QACV,uBAAC,yGACmBmuI,EAAIrQ,gBAAgB,EAAGwD,EAAKrG,QAAQ,KAAD,EACtDxmF,GADIA,EAAM,QACM9B,MAAK,SAACl7C,EAAGnN,GAAC,OAAMmN,EAAE6vJ,OAASh9J,EAAEg9J,OAAS,GAAK,CAAC,IACxD7yG,GAAUnrD,MAAMC,QAAQkrD,IAC3BA,EAAS0yG,EAAmB1yG,GAC5BwpG,EAASxpG,KAET1I,QAAQ3b,KAAK,uCACb6tH,EAAS,CACR,CAAEC,gBAAiB,gBAAiBC,QAAS9T,EAAOM,eACpD,CAAEuT,gBAAiB,OAAQC,QAAS9T,EAAOC,SAE5C,0CAZF,EAcD,GAAG,CAAK,OAAJhJ,QAAI,IAAJA,OAAI,EAAJA,EAAMthI,MAAO6tI,EAAMjT,IAEvB,IAII8sB,EAAa,EAcXC,EAAcrmB,EAAKrG,SAAWuL,EAAMI,QAAO,UAAMtF,EAAKsmB,MAAK,cAAMphB,EAAMlF,EAAKrG,SAAYqG,EAAKsmB,MAE7FC,EACLvmB,GAAQA,EAAKthI,OACZ,SAAC,GAAM,CACNswG,MAAOq3C,EACPlB,UAAU,WACVG,SAAU,GACVD,gBAAiB,GACjBD,QAAQ,gBACRG,MAAI,EACJzqD,QAAS8qD,KAGV,SAAC,GAAM,CAAC52C,MAAM,QAAQo2C,QAAQ,aAAaE,SAAU,GAAIC,MAAI,EAACzqD,QAhC3C,WAChBhlE,GAAYA,EAASo4G,WAAanF,EAAOE,OAAO0P,EAAS5P,EAAOE,MACrE,IAgCA,OACC,iBAAK3+G,UAAU,SAAQ,WACtB,cAAGkL,KAAMuzG,EAAOC,KAAMv0G,OAAO,SAAQ,UACpC,gBAAKnK,UAAU,YAEhB,iBAAKA,UAAU,gBAAe,UAC5Bi8H,GACD,gBAAIj8H,UAAS,gBAAWhP,EAAO,OAAS,SAAWosG,aAnC5B,SAAA78H,GAAC,aAAKu7J,EAAc,OAADv7J,QAAC,IAADA,GAAa,QAAZ,EAADA,EAAGyyF,QAAQ,UAAE,WAAZ,EAAD,EAAe/D,OAAO,EAmCoBitE,WAjC/D,SAAA37J,GACvB,IAAK,IAAD,EACC47J,EAAY,OAAD57J,QAAC,IAADA,GAAoB,QAAnB,EAADA,EAAG2yF,eAAe,UAAE,WAAnB,EAAD,EAAsBjE,QAC/BrhD,EAAShqC,KAAKkjB,IAAIg1I,EAAaK,GACjCL,EAAaK,GAAYvuH,EA3FR,IA2FkCytH,GAAQ,GAC/DS,EAAa,CACC,CAAb,MAAO3gD,GAAM,CAChB,EA0BmH,UACzG,OAALz4D,QAAK,IAALA,OAAK,EAALA,EAAO31C,KAAI,WAAwDqvJ,GAAG,IAAxD7J,EAAO,EAAPA,QAASD,EAAe,EAAfA,gBAAiB+J,EAAe,EAAfA,gBAAiBX,EAAM,EAANA,OAAM,OAC/D,gBAAclrD,QAAS8qD,EAAW,WAC/Be,IACD,UAACnL,GAAO,CAACrvJ,GAAI0wJ,EAASpoH,OAAQkyH,EAAkB,SAAW,GAAG,UAC5D/J,EACW,KAAXoJ,GAAiBhmB,EAAK7F,oBAAsB,IAAK,iBAAM7vG,UAAU,iBAAgB,SAAE01G,EAAK7F,yBAG1FwsB,IACA,cAAGnxH,KAAMuzG,EAAOC,KAAMv0G,OAAO,SAAQ,SACnCmoH,MATK8J,EAYJ,KAGD,OAAJ1mB,QAAI,IAAJA,OAAI,EAAJA,EAAMthI,SACN,gBAAIo8F,QA1Ha,WACrBmxC,EAAa,CAAEz1I,KAAMkiI,IACrBmU,EAAIzR,SACJud,EAAS5P,EAAOE,OAChB0c,GAAQ,EACT,EAqHiCr7H,UAAU,UAAS,UAAC,UAE/C,SAAC,GAAI,CAACq3H,KAAK,aAAahvI,KAAM,GAAI2X,UAAU,0BAKhD,iBAAKA,UAAS,iBAAYhP,EAAO,OAAS,IAAMw/E,QAAS8qD,EAAW,WACnE,iBAAMt7H,UAAU,UAChB,iBAAMA,UAAU,UAChB,iBAAMA,UAAU,cAIpB,ECjKO,SAASs8H,KACf,IAAMC,EAA6B,kBAAXrpI,OAExB,SAASspI,IACR,MAAO,CACNl6J,MAAOi6J,EAAWrpI,OAAO+tB,gBAAa/zC,EACtC3K,OAAQg6J,EAAWrpI,OAAOiuB,iBAAcj0C,EAE1C,CAEA,OAAoCi+F,EAAAA,EAAAA,UAASqxD,GAAQ,eAA9Cj5H,EAAU,KAAEk5H,EAAa,KAgBhC,OAdA7xD,EAAAA,EAAAA,YAAU,WACT,IAAK2xD,EACJ,OAAO,EAGR,SAASG,IACRD,EAAcD,IACf,CAGA,OADAtpI,OAAO6Z,iBAAiB,SAAU2vH,GAC3B,kBAAMxpI,OAAO8yD,oBAAoB,SAAU02E,EAAc,CAEjE,GAAG,IAEIn5H,CACR,CAkBO,IAgDMo5H,GAAoB,SAACz+J,EAAKoJ,GACtC,OAAsC6jG,EAAAA,EAAAA,WAAS,WAC9C,IACC,IAAM9gE,EAAOnX,OAAO89G,eAAe4rB,QAAQ1+J,GAC3C,OAAOmsC,EAAO8tE,KAAKz+F,MAAM2wB,GAAQ/iC,CAIlC,CAHE,MAAO6zG,GAER,OADAh7D,QAAQja,MAAMi1E,GACP7zG,CACR,CACD,IAAE,eARKu1J,EAAW,KAAEC,EAAc,KAoBlC,MAAO,CAACD,EAVS,SAAA78J,GAChB,IACC,IAAM+8J,EAAe/8J,aAAiB8uD,SAAW9uD,EAAM68J,GAAe78J,EACtE88J,EAAeC,GACf7pI,OAAO89G,eAAegsB,QAAQ9+J,EAAKi6G,KAAKC,UAAU2kD,GAGnD,CAFE,MAAO5hD,GACRh7D,QAAQja,MAAMi1E,EACf,CACD,EAGD,EAEO,SAAS8hD,KAAiC,IAAvB31J,EAAY,wDACrC,OAAOk0G,EAAAA,YAAiB,SAAAvX,GAAK,OAAKA,CAAK,GAAE38F,EAK1C,CAEO,IC/GP,GAZuB,SAAH,GAA0B,IAApB41J,EAAY,EAAZA,aACnBxnB,GD2HW/qC,EAAAA,EAAAA,YAAW22C,GAApB5L,KC1HFlqG,EAAWigH,KAEjB,OAAIyR,GAAgBA,EAAaj/J,SAAa,OAAJy3I,QAAI,IAAJA,OAAI,EAAJA,EAAMrG,SACxC,SAACkf,GAAM,IACA,OAAJ7Y,QAAI,IAAJA,GAAAA,EAAMthI,OACT,SAAC+5I,GAAQ,CAACtsJ,GAAI48I,EAAOK,aAAc76C,MAAO,CAAEniG,KAAM0pC,GAAY1Q,SAAO,KAEtE,SAACqzH,GAAQ,CAACtsJ,GAAI48I,EAAOE,MAAO16C,MAAO,CAAEniG,KAAM0pC,GAAY1Q,SAAO,GACtE,ECGO,SAASqiI,GAAe,GAA6C,IAA3Chb,EAAO,EAAPA,QAASC,EAAM,EAANA,OAAQgb,EAAO,EAAPA,QAASC,EAAY,EAAZA,aAC1D,GAA8BlyD,EAAAA,EAAAA,UAAS,IAAG,eAAnCvjD,EAAO,KAAE01G,EAAU,KAEpBngK,EAAUD,KAAW,UAAW,CACrCuoC,SAAU28G,IAAWgb,EACrBG,KAAMnb,EACN1hJ,KAAM08J,IAeP,OAZAxyD,EAAAA,EAAAA,YAAU,WAER0yD,EADGD,IAIAjb,EACQ,0BAGD,qBACZ,GAAG,CAACA,EAAQgb,EAASC,IAEjBlb,GAEF,iBAAKniH,UAAU,iBAAgB,WAC9B,gBAAKA,UAAW7iC,KAChB,gBAAK6iC,UAAS,UAAY,SAAE4nB,OAGxB,IACR,CAEA,OA3CA,SAAiB,GAChB,OADyB,EAAPu6F,SAGhB,gBAAKniH,UAAU,UAAS,UACvB,gBAAKA,UAAU,aAAY,UAC1B,gBAAKA,UAAU,eAIZ,IACR,wBCAO,IAAMw9H,GAAiB,SAACC,EAAUC,GACxC,IAAM/5G,EAA4B,kBAAb+5G,EAAwBvlD,KAAKz+F,MAAMgkJ,GAAYA,EAEhEr5J,EAAG,UAAMtG,OAAO0uC,KAAKkX,EAAM,IAC7B52C,KAAI,SAAA/M,GAAK,iBAAQA,EAAK,QACtB5B,KAAK,KAAI,QAEPu/J,EAAah6G,EAAMj8B,QAAO,SAACrjB,EAAK/D,GAInC,OAHA+D,GAAG,UAAOtG,OAAO2Z,OAAOpX,GACtByM,KAAI,SAAA/M,GAAK,iBAAQA,EAAK,QACtB5B,KAAK,KAAI,OAEZ,GAAGiG,GAGHs5J,EAAaA,EAAWC,WAAW,OAAQ,MAC3C,IAAMrkB,EAAO,IAAIskB,KAAK,CAFV,SAEiBF,GAAa,CAAEzxJ,KAAM,4BAC5C0d,EAAM26H,IAAIuZ,gBAAgBvkB,GAC1BvuG,EAAOvnC,SAASwxB,cAAc,KACpC+V,EAAKpP,aAAa,OAAQhS,GAC1BohB,EAAKpP,aAAa,WAAW,GAAD,OAAK6hI,EAAQ,SACzCzyH,EAAK+yH,OACN,EAEaC,GAAgB,SAAAjpG,GAC5B,IAAMkpG,EAAa37G,KAAOyS,EAAM,oBAC1BmpG,EAAgBD,EAAW54I,OAAO,cAExC,MAAO,CADiB44I,EAAW54I,OAAO,SACjB64I,EAC1B,EAEO,SAASC,GAAa5uI,GAE5B,IAAM+zB,EAAQ/zB,EAAKyzB,MAAM,KACzB,OAAqB,IAAjBM,EAAMhmD,OAAgC,KAAXgmD,EAAM,GAAuB,GAAXA,EAAM,GAClC,IAAjBA,EAAMhmD,OAAgC,MAAXgmD,EAAM,GAAyB,KAAXA,EAAM,GAAuB,GAAXA,EAAM,QAA3E,CACD,CAEO,SAAS86G,GAAsBh9H,GACrC,OAAOA,EAAO6+B,OAAO,GAAGxlD,cAAgB2mB,EAAOl/B,MAAM,EACtD,CAEO,IAAMm8J,GAAwB,WAAgD,IAAD,QAA9Ch8B,EAAS,uDAAG,KAAMi8B,EAAO,uDAAG,KAAMxqB,EAAO,uCACxE7zF,EAAMqC,OAGNi8G,EAAkBj8G,KAAO,GAAD,OAAIwxF,EAAQ/+E,MAAQ,cAC5CypG,EAAgBl8G,KAAO,GAAD,OAAIwxF,EAAQ/+E,MAAQ,cACjC,OAAfwpG,QAAe,IAAfA,GAAAA,EAAiBxvG,IAAI,CACpB0Y,KAAuB,QAAnB,EAAEqsE,EAAQzR,iBAAS,aAAjB,EAAmBr/E,MAAM,KAAK,GACpCulB,OAAyB,QAAnB,EAAEurE,EAAQzR,iBAAS,aAAjB,EAAmBr/E,MAAM,KAAK,KAE1B,OAAbw7G,QAAa,IAAbA,GAAAA,EAAezvG,IAAI,CAClB0Y,KAAqB,QAAjB,EAAEqsE,EAAQwqB,eAAO,aAAf,EAAiBt7G,MAAM,KAAK,GAClCulB,OAAuB,QAAjB,EAAEurE,EAAQwqB,eAAO,aAAf,EAAiBt7G,MAAM,KAAK,KAIrC,IAAMy7G,EAAoBn8G,KAAOi8G,GAGjC,GAFAE,EAAkBh6H,IAAI,EAAG,SAEH,OAAjBg6H,QAAiB,IAAjBA,IAAAA,EAAmBtvF,cAAclvB,GACrC,MAAO,CAAEy+G,OAAO,EAAO92G,QAAS,yCAC1B,GAAI22G,EAAgBpvF,cAAcqvF,GACxC,MAAO,CAAEE,OAAO,EAAO92G,QAAS,yBAGjC,GAAIy6E,GAAai8B,EAAS,CAEzB,IAAMK,EAAsBr8G,KAAO,GAAD,OAAIwxF,EAAQ/+E,MAAQ,cAChD6pG,EAAoBt8G,KAAO,GAAD,OAAIwxF,EAAQ/+E,MAAQ,cAWpD,GAVmB,OAAnB4pG,QAAmB,IAAnBA,GAAAA,EAAqB5vG,IAAI,CACxB0Y,KAAe,OAAT46D,QAAS,IAATA,OAAS,EAATA,EAAWr/E,MAAM,KAAK,GAC5BulB,OAAiB,OAAT85D,QAAS,IAATA,OAAS,EAATA,EAAWr/E,MAAM,KAAK,KAEd,OAAjB47G,QAAiB,IAAjBA,GAAAA,EAAmB7vG,IAAI,CACtB0Y,KAAa,OAAP62F,QAAO,IAAPA,OAAO,EAAPA,EAASt7G,MAAM,KAAK,GAC1BulB,OAAe,OAAP+1F,QAAO,IAAPA,OAAO,EAAPA,EAASt7G,MAAM,KAAK,KAIzBu7G,EAAgB1vF,UAAU8vF,EAAqBC,GAClD,MAAO,CAAEF,OAAO,EAAO92G,QAAQ,GAAD,OAAKksF,EAAQzR,UAAS,gCAC9C,GAAIm8B,EAAc3vF,UAAU8vF,EAAqBC,GACvD,MAAO,CAAEF,OAAO,EAAO92G,QAAQ,GAAD,OAAKksF,EAAQwqB,QAAO,gCAC5C,GAAIC,EAAgBtvF,OAAO0vF,IAAwBJ,EAAgBtvF,OAAO2vF,GAChF,MAAO,CAAEF,OAAO,EAAO92G,QAAQ,mBAAD,OAAqBksF,EAAQzR,UAAS,gDAC9D,GAAIm8B,EAAcvvF,OAAO0vF,IAAwBH,EAAcvvF,OAAO2vF,GAC5E,MAAO,CAAEF,OAAO,EAAO92G,QAAQ,mBAAD,OAAqBksF,EAAQwqB,QAAO,gDAC5D,GACNM,EAAkB/vF,UAAU0vF,EAAiBC,IAC7CG,EAAoB9vF,UAAU0vF,EAAiBC,GAE/C,MAAO,CAAEE,OAAO,EAAO92G,QAAQ,+CAEjC,CAEA,MAAO,CAAE82G,OAAO,EAAM92G,QAAS,GAChC,EAEai3G,GAAgB,SAACC,EAAWC,GACxC,IAAMC,EAAa18G,KAAOw8G,GACpBG,EAAW38G,KAAOy8G,GAExB,OAAIC,EAAW7vF,cAAc8vF,GAAkB,CAAEP,OAAO,EAAO92G,QAAS,yCACjE,CAAE82G,OAAO,EAAM92G,QAAS,GAChC,EAgCA,IAAMs3G,GAAY,SAAAvoB,GACjB,OAAO,IAAIz2I,SAAQ,SAACD,EAASE,GAC5B,IAAMg/J,EAAS,IAAIryH,WACnBqyH,EAAOnnI,OAAS,kBAAM/3B,EAAQk/J,EAAO1+J,OAAQ,EAC7C0+J,EAAOlnI,QAAU,SAAAiO,GAAK,OAAI/lC,EAAO+lC,EAAO,EACxCi5H,EAAOnyH,cAAc2pG,EACtB,GACD,EAGO,SAAeyoB,GAAgC,GAAD,gCAqBpD,gDArBM,WAA+C7+J,GAAC,sFACtB,GAA1B8+J,GAAK,OAAO9+J,EAAE4pC,OAAOosG,OAChB,CAAD,gDAK+D,GAJnEknB,EAAW4B,EAAM,GAAGpnJ,KACpBqnJ,EAAW7B,EAASz6G,MAAM,KAAKrhD,MAAMoU,cAGtB,CAAC,MAAO,OAAQ,MAAO,MAAO,OAAQ,MAAO,OAChD9X,SAASqhK,GAAU,CAAD,eACqD,OAAxFC,MAAM,kFAAkF,2CAIpEL,GAAUG,EAAM,IAAI,KAAD,GAMZ,OANtBl6J,EAAM,OACNq6J,EAAYr6J,EAAO69C,MAAM,WAAW,IAEpCy8G,EAAU,CAAC,GACTC,SAAWF,GAAa,GAChCC,EAAQhC,SAAWA,EACnBgC,EAAQE,SAAWL,EAAS,kBACrBG,GAAO,6CACd,sBAEM,IAAMG,GAAW1sI,OAAO+tB,YAzLXkvF,MA2LpB,SAAS0vB,GAAQC,GAChB,OAAOA,EAAIhiK,SAAS,IAAIiiK,SAAS,EAAG,IACrC,CAGO,SAASC,GAAWv6J,GAC1B,IAAI2lD,EAAM,IAAInmD,YAAYQ,GAAO,IAAM,GAEvC,OADAytB,OAAO+sI,OAAOC,gBAAgB90G,GACvB1tD,MAAMoE,KAAKspD,EAAKy0G,IAASzhK,KAAK,GACtC,CC3LO,IAYHq7I,GAZS0mB,GAAc,IACdC,GAAY,GAGZC,GAAgBtiK,OAAO47I,OAAO,CAC1C2mB,MAAO,QACPC,IAAK,MACLC,KAAM,SAGMC,GAAuB,IAAIznI,KAAK0nI,kBAAaxzJ,EAAW,CAAEyzJ,qBAAsB,IAwU7F,GApUoB,SAAH,GAAuC,IAAjC5pI,EAAG,EAAHA,IAAI,EAAD,EAAE2tF,MAAAA,OAAK,MAAG,GAAE,EAAEitB,EAAQ,EAARA,SAC/B4Q,EAAQhB,KAARgB,IAER,GAA4Bp3C,EAAAA,EAAAA,WAAS,GAAK,eAAnCy1D,EAAM,KAAEC,EAAS,KACxB,EAAiC5D,IAAU,GAAM,eAA1C6D,EAAO,KAAEC,EAAa,KAC7B,EAAuC9D,IAAU,GAAM,eAAhD+D,EAAU,KAAEC,EAAgB,KACnC,EAAuChE,IAAU,GAAM,eAAhDiE,EAAU,KAAEC,EAAgB,KACnC,GAAsCh2D,EAAAA,EAAAA,UAASk1D,GAAcE,KAAI,eAA1Da,EAAW,KAAEC,EAAc,KAClC,GAA4Bl2D,EAAAA,EAAAA,UAASi1D,IAAU,eAAxCkB,EAAM,KAAEC,EAAS,KACxB,GAAsCp2D,EAAAA,EAAAA,UAAS,KAAD,OAAMs1D,GAAqBp7I,OAAO,KAAK,eAA9Em8I,EAAW,KAAEC,EAAc,KAClC,GAAkCt2D,EAAAA,EAAAA,UAAS,KAAD,OAAMs1D,GAAqBp7I,OAAO,KAAK,eAA1Eq8I,EAAS,KAAEC,EAAY,KAC9B,GAAiDx2D,EAAAA,EAAAA,WAAS,GAAK,eAAxDy2D,EAAe,KAAEC,EAAqB,KAC7C,GAAgC12D,EAAAA,EAAAA,UAAS,GAAE,eAApC22D,EAAQ,KAAEC,EAAW,KAC5B,GAAgC52D,EAAAA,EAAAA,UAAS,GAAE,eAApC62D,GAAQ,KAAEC,GAAW,KAC5B,IAAoC92D,EAAAA,EAAAA,UAAS,GAAE,iBAAxC+2D,GAAU,MAAEC,GAAa,MAChC,IAA8Ch3D,EAAAA,EAAAA,WAAS,GAAM,iBAAtDi3D,GAAe,MAAEC,GAAkB,MAC1C,IAAsDl3D,EAAAA,EAAAA,UAAS,MAAK,iBAA7Dm3D,GAAmB,MAAEC,GAAsB,MAClD,IAAoEp3D,EAAAA,EAAAA,UAAS,IAAG,iBAAzEq3D,GAA0B,MAAEC,GAA6B,MAEhE,IAAsCt3D,EAAAA,EAAAA,WAAS,GAAM,iBAA9Cu3D,GAAW,MAAEC,GAAc,MAE5BC,IAAW13D,EAAAA,EAAAA,QAAO,MAClB23D,IAAoB33D,EAAAA,EAAAA,QAAO,MAC3B43D,IAAuB53D,EAAAA,EAAAA,QAAO,MAE9B63D,GAAazG,KAGbt8H,GAAY9iC,KACjB,cACA,CAAE0jK,OAAQA,GACV,CAAEE,QAASA,GACX,CAAE,cAAeI,GACjB,CAAE,cAAeF,IAGZgC,GAAsB9lK,KAAW,CAAE+lK,mBAAmB,EAAMC,0BAA2BtB,IAGvFuB,GAAmB,WAAO,IAAD,EAGlB,GAFZtC,GAAU,SAAAl1J,GAAI,OAAKA,CAAI,IAEnBi1J,GACa,QAAhB,EAAAgC,GAAS52J,eAAO,OAAhB,EAAkBo3J,OAIH,QAAhB,EAAAR,GAAS52J,eAAO,OAAhB,EAAkBq3J,OACnB,EAYMC,GAAiB,yCAAG,mFACzBrC,GAAiB,SAAAt1J,GAAI,OAAKA,CAAI,IAAE,2CAChC,kBAFsB,mCA8BjB43J,GAAiB,SAAAh0I,GACtB,IAAM2wC,EAAUt8D,KAAKi+B,MAAMtS,EAAO,IAC5BswC,EAAUj8D,KAAKi+B,MAAMtS,EAAO,IAAM,GAClCmwC,EAAQ97D,KAAKi+B,MAAMtS,EAAO,MAChC,OAAc,IAAVmwC,EACG,GAAN,OAAUG,EAAO,YAAI4gG,GAAqBp7I,OAAO66C,IAE5C,GAAN,OAAUR,EAAK,YAAI+gG,GAAqBp7I,OAAOw6C,GAAQ,YAAI4gG,GAAqBp7I,OAAO66C,GACxF,EA2BMsjG,GAAkB,SAAAjjK,GACvB,IAAM6Y,EAAS0pJ,GAAqB92J,QAAQzI,wBAEtCkgK,EADa7/J,KAAK0S,IAAI1S,KAAKC,IAAI,EAAGtD,EAAE4uF,QAAU/1E,EAAO3W,GAAI2W,EAAO9W,OAAS8W,EAAO9W,MACrDsgK,GAAS52J,QAAQ4kB,SAClDgyI,GAAS52J,QAAQw1J,YAAciC,CAChC,EA+BMC,IAAe14D,EAAAA,EAAAA,UAAQ,WAC5B,OAAKj0E,GACyB,OAA1ByrI,SAA0B,IAA1BA,QAA0B,EAA1BA,GAA4BllK,SAAU,OAA1C,EACmB,kBAARy5B,EAAyB,GAC9B,GAAN,OAAUA,EAAIzc,UAAU,EAAGyc,EAAIz5B,OAAS,GAAE,sBAAcglK,GAAmB,QAH1D,EAIlB,GAAG,CAACvrI,EAAKurI,GAAqBE,MAE9B53D,EAAAA,EAAAA,YAAU,WACJ+mC,IACL,uBAAC,2GAC0B4Q,EAAIlN,uBAAuB1D,GAAU,KAAD,EAA7C,GAAXgyB,EAAW,OACA,CAAD,gDACVC,EAAsB5jB,EAAUjmI,QAAO,SAAA0oI,GAAQ,OAAIkhB,EAAY1lK,SAASwkJ,EAAS3iG,GAAG,IAC1F2iH,GAA8BmB,GAAqB,0CAJpD,EAMD,GAAG,CAACjyB,KAGJ/mC,EAAAA,EAAAA,YAAU,WAET,OADAnnG,SAASspC,iBAAiB,mBAAoBo0H,GACvC,kBAAM19J,SAASuiF,oBAAoB,mBAAoBm7E,EAAkB,CACjF,GAAG,KAGHv2D,EAAAA,EAAAA,YAAU,WACT,GAAKg4D,GAAS52J,QAAd,CACA,IAAM63J,EAAWjB,GAAS52J,QAAQ83J,WAAW,GACxCD,IACLA,EAASjkE,KAAO,SAChBikE,EAASjkE,KAAOwiE,GAAkB,UAAY,SAJjB,CAK9B,GAAG,CAACA,GAAiBQ,GAAU7rI,KAG/B6zE,EAAAA,EAAAA,YAAU,WACT,GAAa,OAARg4D,SAAQ,IAARA,IAAAA,GAAU52J,QAAf,CAEA,GADA42J,GAAS52J,QAAQs1J,OAASA,EACtBA,EAASnB,GAGZ,OAFAkB,EAAehB,GAAcC,YAC7BsC,GAAS52J,QAAQ+3J,OAAQ,GAI1BnB,GAAS52J,QAAQ+3J,OAAQ,EACwB1C,EAA7CC,GAAUnB,IAAemB,EAASlB,GAA0BC,GAAcE,IAC1DF,GAAcG,KAVJ,CAW/B,GAAG,CAACc,KAGJ12D,EAAAA,EAAAA,YAAU,WACLm4D,GAAWzgK,MAxLI6tI,QAyLnBoxB,EAAU,EACX,GAAG,CAACwB,GAAWzgK,SAGfsoG,EAAAA,EAAAA,YAAU,WACThP,aAAa69C,IACbooB,GAAsB,GACjBjB,IACJnnB,GAAkBltG,YAAW,kBAAMs1H,GAAsB,EAAM,GAAE,KAEnE,GAAG,CAACjB,KAEJh2D,EAAAA,EAAAA,YAAU,WACTi2D,GAAU,GACVkB,EAAY,GACZE,GAAY,GACZE,GAAc,EACf,GAAG,CAACprI,IAcJ,OAAKA,GAGJ,iBAAKiJ,UAAWA,GAAW8kE,IAAK+9D,GAAmB,oBAAmBzB,EAAY,WACjF,iBAAKphI,UAAU,2BAA0B,WACxC,gBAAKA,UAAU,qBAAqB8kE,IAAKg+D,GAAqB,UAC7D,gBACCkB,cA9IgC,SAAAzjK,GAAM,IAAD,EACzCoiK,IAAe,GACC,QAAhB,EAAAC,GAAS52J,eAAO,OAAhB,EAAkBq3J,QAClBG,GAAgBjjK,EACjB,EA2IK0jK,cAzIgC,SAAA1jK,GAC/BmiK,IACLc,GAAgBjjK,EACjB,EAuIK2jK,YArI8B,SAAA3jK,GAAM,IAAD,EACvCijK,GAAgBjjK,GAChBoiK,IAAe,GACf9B,GAAU,GACM,QAAhB,EAAA+B,GAAS52J,eAAO,OAAhB,EAAkBo3J,MACnB,EAiIKpjI,UAAU,WACVxU,MAAO,CACN,sBAAuBs2I,EACvB,sBAAuBE,IACtB,UAEF,gBAAKhiI,UAAU,yBAGjB,iBAAKA,UAAU,WAAU,WACxB,oBAAQA,UAAU,iBAAiBwwE,QAAS2yD,GAAiB,WAC5D,SAACgB,GAAI,CAAClsJ,KAAK,eACX,SAACksJ,GAAI,CAAClsJ,KAAK,mBAEZ,iBAAK+nB,UAAU,mBAAkB,WAChC,oBAAQA,UAAU,WAAWwwE,QA1Md,WAElB+wD,EADGD,GAAUnB,GACH,GAGD,EACX,EAoMuD,WACjD,SAACgE,GAAI,CAAClsJ,KAAK,sBACX,SAACksJ,GAAI,CAAClsJ,KAAK,qBACX,SAACksJ,GAAI,CAAClsJ,KAAK,0BAEZ,kBAAO+nB,UAAU,gBAAgB9zB,KAAK,QAAQoK,IAAI,IAAIzS,IAAI,IAAIxD,KAAK,OAAOL,MAAOshK,EAAQ98C,SAtMxE,SAAH,GAAoB,IAClCxkH,EAD0B,EAANmqC,OACLnqC,MACfA,EAAQmgK,KACXngK,EAAQ,GAETuhK,EAAUvhK,EACX,QAkMI,iBAAKggC,UAAU,qBAAoB,WAClC,gBAAKA,UAAU,eAAc,SAAEwhI,KAC/B,0BAAM,OACN,gBAAKxhI,UAAU,aAAY,SAAE0hI,QAEH,OAA1Bc,SAA0B,IAA1BA,QAA0B,EAA1BA,GAA4BllK,QAAS,IACrC,oBAAQ0iC,UAAS,uBAAkBoiI,GAAkB,cAAgB,IAAM5xD,QAAS,SAAAjwG,GAAC,OAAI8hK,IAAmB,SAAA12J,GAAI,OAAKA,CAAI,GAAC,EAAC,WAC1H,SAACw4J,GAAI,CAAClsJ,KAAK,kBACX,gBAAK+nB,UAAU,YAAW,SAAEwiI,GAA2Bz1J,KApDrC,SAAH,GAAiB,EAAX6wG,YAA+C,IAAlC99D,EAAE,EAAFA,GAAIyM,EAAG,EAAHA,IAAK0zF,EAAiB,EAAjBA,kBAChD,OACC,gBAECjgH,UAAS,cAASoiI,IAAmB71G,IAAQ+1G,GAAsB,SAAW,IAC9E9xD,QAAS,SAAAjwG,GAAC,OAlFW,SAACgsD,EAAKhsD,GAC7BA,EAAEssF,kBACFw1E,KAAqB91G,GAChBA,GACLg2G,GAAuBh2G,EACxB,CA6EiB63G,CAAgB73G,EAAKhsD,EAAE,EAAC,SAErC0/I,GAJIngG,EAOR,UA6CI,oBAAQ9f,UAAU,iBAAiBwwE,QA1MT,WAC7B,IAAI6zD,EAA+B,IAAfnC,GAAmB,GAAMA,GAAa,IAC1DC,GAAckC,GACdzB,GAAS52J,QAAQs4J,aAAeD,CACjC,EAsMsE,UAChEnC,GAAW,QAEb,mBAAQliI,UAAU,kBAAkBwwE,QAAS8yD,GAAkB,UAC9D,SAACa,GAAI,CAAClsJ,KAAK,uBAEZ,oBAAQ+nB,UAAU,cAAcwwE,QAASuwD,EAAc,WACtD,SAACoD,GAAI,CAAClsJ,KAAK,sBACX,SAACksJ,GAAI,CAAClsJ,KAAK,yBAEZ,oBAAQ+nB,UAAU,kBAAkBwwE,QApPd,WACiB,IAAD,EAAN,OAA/B/sG,SAAS8gK,kBACa,QAAzB,EAAA1B,GAAkB72J,eAAO,OAAzB,EAA2Bw4J,oBAE3B/gK,SAASghK,gBAEX,EA8OmE,WAC9D,SAACN,GAAI,CAAClsJ,KAAK,UACX,SAACksJ,GAAI,CAAClsJ,KAAK,oBAId,gBAAK+nB,UAAU,kBAAiB,SAAE0kF,GAAS,MAC3C,iBAAK1kF,UAAWgjI,GAAoB,WACnC,SAACmB,GAAI,CAAClsJ,KAAK,YAAYoQ,KAAK,UAC5B,SAAC87I,GAAI,CAAClsJ,KAAK,aAAaoQ,KAAK,aAE9B,kBACCiO,YAAY,YACZouI,QAAQ,OACRC,aAAa,aACb5tI,IAAKA,EACL+tE,IAAK89D,GACLgC,aAnL4B,SAAH,GAAoB,IAAdz6H,EAAM,EAANA,OAC7B06H,EAAW16H,EAAOq3H,YACtBqD,EAAWtB,GAAesB,GAAY,GAEtC,IAAMt1I,EAAOg0I,IAAqB,OAANp5H,QAAM,IAANA,OAAM,EAANA,EAAQvZ,WAAY,GAC1Ck0I,GAAgB,IAAM3G,GAAa0G,GAAa1G,GAAa5uI,IAAOsqD,QAAQ,GAClF4nF,EAAeoD,GACf9C,EAAY+C,EACb,EA4KGC,iBApNsB,SAAH,GAAoB,IAAd56H,EAAM,EAANA,OACrB5a,EAAOg0I,IAAqB,OAANp5H,QAAM,IAANA,OAAM,EAANA,EAAQvZ,WAAY,GAChD+wI,EAAapyI,EACd,EAkNGihF,QAAS2yD,GACT6B,WA3K2B,SAAH,GAAoB,IAAd76H,EAAM,EAANA,OAChC,KAAIA,EAAO63H,SAAS1kK,QAAU,GAA9B,CACA,IAAM2nK,EAAe96H,EAAO63H,SAASt7J,IAAIyjC,EAAO63H,SAAS1kK,OAAS,GAC9D4nK,EAAwB3B,GAAe0B,GAC3CC,GAA0B,IAAM/G,GAAa+G,GAA0B/G,GAAauD,IAAY7nF,QAAQ,GACxGooF,GAAYiD,EAJ2B,CAKxC,EAsKGC,QAAShC,GAAiB,SAEzBO,KAAgB,kBAAO0B,KAAK,WAAWruI,IAAK2sI,UA5E/B,IAgFlB,EAIaS,GAAO,SAAH,GAChB,OAD0B,EAAJlsJ,MAErB,IAAK,OACJ,OACC,gBAAK+nB,UAAU,OAAOizH,QAAQ,YAAW,UACxC,iBAAMl4G,KAAK,eAAet8C,EAAE,qFAG/B,IAAK,QACJ,OACC,gBAAKuhC,UAAU,QAAQizH,QAAQ,YAAW,UACzC,iBAAMl4G,KAAK,eAAet8C,EAAE,oFAG/B,IAAK,YACJ,OACC,gBAAKuhC,UAAU,YAAYizH,QAAQ,YAAW,UAC7C,iBAAMl4G,KAAK,eAAet8C,EAAE,qCAG/B,IAAK,aACJ,OACC,gBAAKuhC,UAAU,aAAaizH,QAAQ,YAAW,UAC9C,iBAAMl4G,KAAK,eAAet8C,EAAE,qCAG/B,IAAK,mBACJ,OACC,gBAAKuhC,UAAU,mBAAmBizH,QAAQ,YAAW,UACpD,iBACCl4G,KAAK,eACLt8C,EAAE,8NAKN,IAAK,kBACJ,OACC,gBAAKuhC,UAAU,kBAAkBizH,QAAQ,YAAW,UACnD,iBAAMl4G,KAAK,eAAet8C,EAAE,mGAG/B,IAAK,oBACJ,OACC,gBAAKuhC,UAAU,oBAAoBizH,QAAQ,YAAW,UACrD,iBACCl4G,KAAK,eACLt8C,EAAE,+YAIN,IAAK,eACJ,OACC,gBAAKuhC,UAAU,eAAc,UAC5B,iBACC+a,KAAK,eACLt8C,EAAE,sTAIN,IAAK,kBACJ,OACC,gBAAKuhC,UAAU,kBAAkBizH,QAAQ,YAAW,UACnD,iBACCl4G,KAAK,eACLt8C,EAAE,iHAIN,IAAK,mBACJ,OACC,gBAAKuhC,UAAU,mBAAmBizH,QAAQ,YAAW,UACpD,iBAAMl4G,KAAK,eAAet8C,EAAE,iGAG/B,IAAK,mBACJ,OACC,gBAAKuhC,UAAU,mBAAmBizH,QAAQ,YAAW,UACpD,iBAAMl4G,KAAK,eAAet8C,EAAE,gGAG/B,IAAK,mBACJ,OACC,gBAAKuhC,UAAU,mBAAmBizH,QAAQ,YAAW,UACpD,iBAAMl4G,KAAK,eAAet8C,EAAE,qFAG/B,IAAK,oBACJ,OACC,gBAAKuhC,UAAU,oBAAoBizH,QAAQ,YAAW,UACrD,iBAAMl4G,KAAK,eAAet8C,EAAE,oFAMjC,EC5PA,GAzLoB,SAAH,GAAiB,IAAXs4B,EAAG,EAAHA,IACtB,GAA4Bo0E,EAAAA,EAAAA,WAAS,GAAK,eAAnCy1D,EAAM,KAAEC,EAAS,KACxB,GAAsC11D,EAAAA,EAAAA,UAASk1D,GAAcE,KAAI,eAA1Da,EAAW,KAAEC,EAAc,KAClC,GAA4Bl2D,EAAAA,EAAAA,UAASi1D,IAAU,eAAxCkB,EAAM,KAAEC,EAAS,KACxB,GAAsCp2D,EAAAA,EAAAA,UAAS,KAAD,OAAMs1D,GAAqBp7I,OAAO,KAAK,eAA9Em8I,EAAW,KAAEC,EAAc,KAClC,GAAkCt2D,EAAAA,EAAAA,UAAS,KAAD,OAAMs1D,GAAqBp7I,OAAO,KAAK,eAA1Eq8I,EAAS,KAAEC,EAAY,KAC9B,GAAgCx2D,EAAAA,EAAAA,UAAS,GAAE,eAApC22D,EAAQ,KAAEC,EAAW,KAC5B,GAAgC52D,EAAAA,EAAAA,UAAS,GAAE,eAApC62D,EAAQ,KAAEC,EAAW,KAC5B,GAAsC92D,EAAAA,EAAAA,WAAS,GAAM,eAA9Cu3D,EAAW,KAAEC,EAAc,KAE5B0C,GAAWn6D,EAAAA,EAAAA,UACXo6D,GAAcp6D,EAAAA,EAAAA,UAEdlrE,EAAY9iC,KAAW,cAAe,CAAE0jK,OAAQA,IAEhD2E,EAAmB,SAAAhlK,GAAM,IAAD,EAGjB,GAFX,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACH8yE,GAAU,SAAAl1J,GAAI,OAAKA,CAAI,IACnBi1J,GACa,QAAhB,EAAAyE,EAASr5J,eAAO,OAAhB,EAAkBo3J,OAGH,QAAhB,EAAAiC,EAASr5J,eAAO,OAAhB,EAAkBq3J,OACnB,EAEMmC,EAAwB,SAAH,GAAoB,IAAdr7H,EAAM,EAANA,OAChC,KAAIA,EAAO63H,SAAS1kK,QAAU,GAA9B,CACA,IAAM2nK,EAAe96H,EAAO63H,SAASt7J,IAAIyjC,EAAO63H,SAAS1kK,OAAS,GAC9D4nK,EAAwB3B,EAAe0B,GAC3CC,GAA0B,IAAM/G,GAAa+G,GAA0B/G,GAAauD,IAAY7nF,QAAQ,GACxGooF,EAAYiD,EAJ2B,CAKxC,EAoBM3B,EAAiB,SAAAh0I,GACtB,IAAM2wC,EAAUt8D,KAAKi+B,MAAMtS,EAAO,IAC5BswC,EAAUj8D,KAAKi+B,MAAMtS,EAAO,IAAM,GAClCmwC,EAAQ97D,KAAKi+B,MAAMtS,EAAO,MAChC,OAAc,IAAVmwC,EACG,GAAN,OAAUG,EAAO,YAAI4gG,GAAqBp7I,OAAO66C,IAE5C,GAAN,OAAUR,EAAK,YAAI+gG,GAAqBp7I,OAAOw6C,GAAQ,YAAI4gG,GAAqBp7I,OAAO66C,GACxF,EAEMsjG,EAAkB,SAAAjjK,GACvB,IAAM6Y,EAASksJ,EAAYt5J,QAAQzI,wBAE7BkgK,EADa7/J,KAAK0S,IAAI1S,KAAKC,IAAI,EAAGtD,EAAE4uF,QAAU/1E,EAAO3W,GAAI2W,EAAO9W,OAAS8W,EAAO9W,MACrD+iK,EAASr5J,QAAQ4kB,SAClDy0I,EAASr5J,QAAQw1J,YAAciC,CAChC,EA0DA,OAnBA74D,EAAAA,EAAAA,YAAU,WACT,GAAa,OAARy6D,QAAQ,IAARA,GAAAA,EAAUr5J,QAAf,CAEA,GADAq5J,EAASr5J,QAAQs1J,OAASA,EACtBA,EAASnB,GAGZ,OAFAkB,EAAehB,GAAcC,YAC7B+E,EAASr5J,QAAQ+3J,OAAQ,GAG1BsB,EAASr5J,QAAQ+3J,OAAQ,EACwB1C,EAA7CC,GAAUnB,IAAemB,EAASlB,GAA0BC,GAAcE,IAC1DF,GAAcG,KATJ,CAU/B,GAAG,CAACc,KAEJ12D,EAAAA,EAAAA,YAAU,WACTi2D,GAAU,GACVkB,EAAY,GACZE,EAAY,EACb,GAAG,CAAClrI,KAGH,iBAAKiJ,UAAWA,EAAW,oBAAmBohI,EAAY,WACzD,iBAAKphI,UAAU,WAAU,WACxB,oBAAQA,UAAU,iBAAiBwwE,QAAS+0D,EAAiB,WAC5D,SAACpB,GAAI,CAAClsJ,KAAK,eACX,SAACksJ,GAAI,CAAClsJ,KAAK,mBAEZ,gBAAK+nB,UAAU,qBAAoB,UAClC,kBACC8kE,IAAKwgE,EACLp5J,KAAK,QACLu5J,UAAQ,EACRplK,KAAK,MACLL,MAAO8hK,EACPkC,cArEgC,SAAAzjK,GAAM,IAAD,EACzCoiK,GAAe,GACC,QAAhB,EAAA0C,EAASr5J,eAAO,OAAhB,EAAkBq3J,QAClBG,EAAgBjjK,EACjB,EAkEK0jK,cA1DgC,SAAA1jK,GAC/BmiK,GACLc,EAAgBjjK,EACjB,EAwDK2jK,YAtD8B,SAAA3jK,GAAM,IAAD,EACvCijK,EAAgBjjK,GAChBoiK,GAAe,GACf9B,GAAU,GACM,QAAhB,EAAAwE,EAASr5J,eAAO,OAAhB,EAAkBo3J,MACnB,EAkDKpjI,UAAU,WACVxU,MAAO,CACN,sBAAuBs2I,EACvB,sBAAuBE,QAK1B,iBAAKhiI,UAAU,qBAAoB,WAClC,gBAAKA,UAAU,eAAc,SAAEwhI,KAC/B,0BAAM,OACN,gBAAKxhI,UAAU,aAAY,SAAE0hI,QAE9B,iBAAK1hI,UAAU,mBAAkB,WAChC,oBAAQA,UAAU,WAAWwwE,QAzHb,SAAAjwG,GAClB,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBAEFwzE,EADGD,GAAUnB,GACH,GAGD,EACX,EAkHsD,WACjD,SAACgE,GAAI,CAAClsJ,KAAK,sBACX,SAACksJ,GAAI,CAAClsJ,KAAK,qBACX,SAACksJ,GAAI,CAAClsJ,KAAK,0BAEZ,kBACC+nB,UAAU,gBACV9zB,KAAK,QACLoK,IAAI,IACJzS,IAAI,IACJxD,KAAK,OACLL,MAAOshK,EACP98C,SA3HiB,SAAH,GAAoB,IAClCxkH,EAD0B,EAANmqC,OACLnqC,MACfA,EAAQmgK,KACXngK,EAAQ,GAETuhK,EAAUvhK,EACX,EAsHKglK,WAAYQ,EACZh6I,MAAO,CAAE,kBAAmB81I,YAI/B,kBACCx8D,IAAKugE,EACLtuI,IAAKA,EACLguI,iBApGsB,SAAH,GAAoB,IAAd56H,EAAM,EAANA,OACrB5a,EAAOg0I,GAAqB,OAANp5H,QAAM,IAANA,OAAM,EAANA,EAAQvZ,WAAY,GAChD+wI,EAAapyI,EACd,EAkGGq1I,aAnF4B,SAAH,GAAoB,IAAdz6H,EAAM,EAANA,OAC7B06H,EAAW16H,EAAOq3H,YACtBqD,EAAWtB,EAAesB,GAAY,GAEtC,IAAMt1I,EAAOg0I,GAAqB,OAANp5H,QAAM,IAANA,OAAM,EAANA,EAAQvZ,WAAY,GAC1Ck0I,GAAgB,IAAM3G,GAAa0G,GAAa1G,GAAa5uI,IAAS,GAAGsqD,QAAQ,GACvF4nF,EAAeoD,GACf9C,EAAY+C,GAAe,EAC5B,EA4EGt0D,QAAS+0D,EACTP,WAAYQ,EACZL,QAASI,MAIb,ECvLaG,GAAkB,WAAO,IAAD,EACpC,EAA2BnkB,KAAnB16G,EAAK,EAALA,MAAOmoG,EAAO,EAAPA,QACf,EAAuB0iB,KAAhBte,GAAiC,YAArB,GAEbib,EAAW3C,KAEXia,EAAWvyB,EAAa3nI,IAAI,aAC5Bm6J,EAAWxyB,EAAa3nI,IAAI,aAQlC,OAAIm6J,GAAiB,SAAC,GAAW,CAAC7uI,IAAK6uI,EAAUj0B,UAAW,IACxDg0B,GAAiB,SAAC,GAAW,CAAC5uI,IAAK4uI,EAAUh0B,UAAW,KAG3D,UAAC,GAAS,CAAC3xG,UAAU,kBAAiB,YAC9B,OAAL6G,QAAK,IAALA,OAAK,EAALA,EAAOg/H,WAAgB,OAALh/H,QAAK,IAALA,OAAK,EAALA,EAAOi/H,YAC1B,SAAC,GAAM,CAAClL,OAAK,EAACl2C,MAAM,UAAUm2C,UAAU,gBAAgBrqD,QAZ5B,WAC9B,IACC69C,GAAU,EACI,CAAb,MAAOlzC,GAAM,CAChB,EAQ4FigD,eAAe,iBAEnG,OAALv0H,QAAK,IAALA,OAAK,EAALA,EAAOi/H,WAAW,SAAC,GAAW,CAAC/uI,IAAU,OAAL8P,QAAK,IAALA,OAAK,EAALA,EAAO9P,IAAK2tF,OAAY,OAAL79E,QAAK,IAALA,OAAK,EAALA,EAAO69E,QAAS,GAAIitB,UAAiB,OAAP3C,QAAO,IAAPA,GAAsB,QAAf,EAAPA,EAASC,qBAAa,WAAf,EAAP,EAAwB0C,YAAa,KACrH,OAAL9qG,QAAK,IAALA,OAAK,EAALA,EAAOg/H,WACP,iCACC,gBAAK7lI,UAAU,yBAAwB,UAAO,OAAL6G,QAAK,IAALA,OAAK,EAALA,EAAO69E,QAAS,MACzD,SAAC,GAAW,CACX3tF,IAAU,OAAL8P,QAAK,IAALA,OAAK,EAALA,EAAO9P,WAOlB,ECfA,GAzB4B,SAAH,GAAmC,IAA7By5E,EAAO,EAAPA,QAAQ,EAAD,EAAEu1D,SAAAA,OAAQ,MAAG,EAAC,EAC7CC,GAAeh7D,EAAAA,EAAAA,UAAQ,WAC5B,IAAMi7D,EAAgBriK,KAAK0S,IAAI1S,KAAKC,IAAIkiK,EAAU,GAAI,KACtD,OAAO5zJ,SAAS8zJ,EACjB,GAAG,CAACF,IAEEG,EAAeF,GAAgB,IAAG,uBAAqBA,EAAY,sBACnEG,EAAkBH,GAAgB,IAAG,oFAE3C,OACC,gBAAKhmI,UAAU,+BAA8B,UAC5C,iBAAKA,UAAU,+BAA8B,WAC5C,gBAAKA,UAAU,sCAAqC,UACnD,SAAComI,GAAmB,CAACL,SAAUA,EAAU19I,KAAM,GAAIo7D,YAAa,EAAGvpE,MAAM,eAE1E,iBAAK8lB,UAAU,4BAA2B,WACzC,gBAAKA,UAAU,qCAAoC,SAAEkmI,KACrD,gBAAKlmI,UAAU,wCAAuC,SAAEmmI,IACtC,MAAjBH,IAAwB,SAAC,GAAM,CAACx1D,QAASA,EAASkU,MAAM,sBAAsBk2C,OAAK,EAACE,QAAQ,sBAKlG,EAIasL,GAAsB,SAAH,GAAgD,IAA1C/9I,EAAI,EAAJA,KAAM09I,EAAQ,EAARA,SAAUtiF,EAAW,EAAXA,YAAavpE,EAAK,EAALA,MAC5D+4I,EAAO,cAAU5qI,EAAI,YAAIA,GACzBg+I,GAAUh+I,EAAOo7D,GAAe,EAChC6iF,EAAgBD,EAASziK,KAAKgW,GAAK,EACnC2sJ,EAAQR,EAAWO,EAAiB,IAE1C,OACC,iBAAKtmI,UAAU,MAAM19B,MAAO+lB,EAAM9lB,OAAQ8lB,EAAM4qI,QAASA,EAAQ,WAChE,mBACCjzH,UAAU,iBACV+a,KAAK,OACLwE,OAAO,OACP33B,GAAIS,EAAO,EACXR,GAAIQ,EAAO,EACXhO,EAAGgsJ,EACH5iF,YAAW,UAAKA,EAAW,SAE5B,mBACC1oC,KAAK,OACLwE,OAAQrlC,EACR0N,GAAIS,EAAO,EACXR,GAAIQ,EAAO,EACXhO,EAAGgsJ,EACH5iF,YAAW,UAAKA,EAAW,MAC3Br1D,UAAS,qBAAgB/F,EAAO,EAAC,YAAIA,EAAO,EAAC,KAC7Cg7D,gBAAiB,CAACkjF,EAAMD,EAAgBC,GACxCjT,cAAc,QACd9nI,MAAO,CAAEghE,WAAY,eAEtB,iBAAKlqF,MAAO+lB,EAAO,EAAG9lB,OAAQ8lB,EAAO,EAAG5lB,EAAE,KAAK1B,EAAE,KAAKkyJ,QAAQ,YAAW,WACxE,2BACC,iBAAMx0J,EAAE,uCAET,iBACCs8C,KAAK,UACLt8C,EAAE,gWAEH,iBACCs8C,KAAK,UACLt8C,EAAE,qKAEH,iBACCs8C,KAAK,UACLt8C,EAAE,uLAEH,iBAAMs8C,KAAK,UAAUt8C,EAAE,oCACvB,iBAAMs8C,KAAK,UAAUt8C,EAAE,kFACvB,iBAAMs8C,KAAK,UAAUt8C,EAAE,0CAI3B,ECkIA,GA3MgB,SAAH,GAiBN,IAhBNimH,EAAK,EAALA,MACA8hD,EAAO,EAAPA,QACAC,EAAI,EAAJA,KACAh1B,EAAS,EAATA,UACAs0B,EAAQ,EAARA,SACAv0B,EAAQ,EAARA,SACAk1B,EAAS,EAATA,UACAC,EAAc,EAAdA,eACAzmF,EAAQ,EAARA,SACA0mF,EAAS,EAATA,UACAC,EAAO,EAAPA,QACAC,EAAK,EAALA,MACAC,EAAO,EAAPA,QACAC,EAAO,EAAPA,QACAC,EAAkB,EAAlBA,mBACAC,EAAW,EAAXA,YAGM7Y,EAAW3C,KACT1J,EAAaT,KAAbS,SAEFmlB,GAAaj8D,EAAAA,EAAAA,UACbk8D,GAAal8D,EAAAA,EAAAA,UACbm8D,GAAkBn8D,EAAAA,EAAAA,UAExB,GAA0CC,EAAAA,EAAAA,WAAS,GAAM,eAAlDm8D,EAAa,KAAEC,EAAgB,KACtC,GAAoDp8D,EAAAA,EAAAA,WAAS,GAAM,eAA5Dq8D,EAAkB,KAAEC,EAAqB,KAChD,ERiC8B,SAACvpK,EAAKoJ,GACpC,OAAsC6jG,EAAAA,EAAAA,WAAS,WAC9C,IACC,IAAM9gE,EAAOnX,OAAOw0I,aAAa9K,QAAQ1+J,GACzC,OAAOmsC,EAAO8tE,KAAKz+F,MAAM2wB,GAAQ/iC,CAIlC,CAHE,MAAO6zG,GAER,OADAh7D,QAAQja,MAAMi1E,GACP7zG,CACR,CACD,IAAE,eARKu1J,EAAW,KAAEC,EAAc,KAoBlC,MAAO,CAACD,EAVS,SAAA78J,GAChB,IACC,IAAM+8J,EAAe/8J,aAAiB8uD,SAAW9uD,EAAM68J,GAAe78J,EACtE88J,EAAeC,GACf7pI,OAAOw0I,aAAa1K,QAAQ9+J,EAAKi6G,KAAKC,UAAU2kD,GAGjD,CAFE,MAAO5hD,GACRh7D,QAAQja,MAAMi1E,EACf,CACD,EAGD,CQvDiDwsD,CAAgB,mBAAD,OAAoBn2B,GAAY,CAAC,GAAE,eAA3Fo2B,EAAgB,KAAEC,EAAmB,KAEtCC,EAAiB5qK,KAAW,mBAAoB,CACrD,8BAA+B6oK,GAAY,GAAKa,EAChD1mF,SAAUA,EACV6nF,UAAWT,IAENU,EAAiB9qK,KAAW,UAAW,CAC5C6qK,UAAWT,EACXW,SAAUT,IAELU,EAAsBhrK,KAAW,eAAgB,CACtD6qK,UAAWT,EACXa,QAASX,IAGJY,EAAkBlrK,KAAW,oBAAqB,CAAE,+BAAgC6oK,GAAY,IAChGsC,EAAcnrK,KAAW,oBAAqB,CAAE,+BAAgC6oK,GAAY,GAAK,CAAE7lF,SAAUumF,EAAKvsD,cAGxHtP,EAAAA,EAAAA,YAAU,WACT,IAAQ09D,EAA0CV,EAA1CU,eAAgBC,EAA0BX,EAA1BW,UAAWC,EAAeZ,EAAfY,WAEnC,GAAI/2B,IAAcm2B,EAAiBn2B,UAAnC,CAEAg3B,EAAYtB,EAAWn7J,SACvB08J,EAAkBvB,EAAWn7J,QAASw8J,GAEtC,IAAMnoF,EAAW3iF,MAAMoE,KAAKslK,EAAWp7J,QAAQq0E,UAG/C,GAAKioF,EAAL,CAQA,IAAMlM,EAAM/7E,EAAS08B,WAAU,SAAAhrG,GAAC,OAAIA,EAAE+tC,IAAMwoH,CAAc,IAC1D,IAAa,IAATlM,EAAJ,CAEA,IAAMuM,EAAgBtoF,EAAS+7E,GAAK/7E,SACpCooF,EAAYpoF,EAAS+7E,IAGrB,IAAMwM,EAAelrK,MAAMoE,KAAK6mK,GAAe5rD,WAAU,SAAAhrG,GAAC,OAAIA,EAAE+tC,IAAMyoH,CAAS,KACzD,IAAlBK,GAEJF,EAAkBC,EAAcC,GAAeJ,EATzB,CAJtB,KALA,CACC,IAAMK,EAAoBxoF,EAAS08B,WAAU,SAAAhrG,GAAC,OAAIA,EAAE+tC,IAAMyoH,CAAS,IACnE,IAA2B,IAAvBM,EAA0B,OAC9BH,EAAkBroF,EAASwoF,GAAoBL,EAEhD,CAboD,CA2BrD,GAAG,CAACZ,IAEJ,IAAMa,EAAc,SAAA1xD,GACnBA,EAAGn7E,aAAa,QAAQ,EACzB,EAEM8sI,EAAoB,SAAC3xD,EAAIyxD,GAC1BA,GAAcA,IAAejuB,EAAWE,KAC5C1jC,EAAG+xD,eAAe,CAAEC,SAAU,UAC/B,GAEAn+D,EAAAA,EAAAA,YAAU,WAAO,IAAD,IACVw8D,EAAWp7J,UAChBu7J,EAAiBH,EAAWp7J,QAAQs7J,iBAEjB,OAAfD,QAAe,IAAfA,GAAwB,QAAT,EAAfA,EAAiBr7J,eAAO,OAAxB,EAA0Bs7J,iBAAiBG,EAAqC,OAAfJ,QAAe,IAAfA,GAAwB,QAAT,EAAfA,EAAiBr7J,eAAO,WAAT,EAAf,EAA0Bs7J,iBAChG,GAAG,CAACd,EAASC,IAEb,IAAMuC,EAAuB,SAACp/I,EAAK1d,GAClC,GAAK0d,KAED68I,EAAKvsD,YAAuB,SAAThuG,GAGvB,IAAK26J,GAAWE,GAAYD,GAASE,IAA2C,oBAAvBC,EACxDA,SAID,IACC,IAAMv4H,EAAOy5G,GAAav+H,EAAK,CAC9B4nH,SAAAA,EACAC,UAAAA,IAED4c,EAAS3/G,EAGV,CAFE,MAAOxI,GACRia,QAAQ3b,KAAK,iCAAD,OAAkCitG,EAAS,YAAI/sB,GAC5D,CACD,EAEMukD,EAAoB,yCAAG,WAAMC,GAAQ,wFAGsD,GAFxFC,EAAoFD,EAApFC,QAASC,EAA2EF,EAA3EE,gBAAiBC,EAA0DH,EAA1DG,eAAgBb,EAA0CU,EAA1CV,WAAYD,EAA8BW,EAA9BX,UAAWD,EAAmBY,EAAnBZ,eAErEV,GAAkBC,EAAoB,CAAEp2B,UAAAA,EAAW62B,eAAAA,EAAgBC,UAAAA,EAAWC,WAAAA,IAE9EU,EAASV,aAAejuB,EAAWG,OAASwuB,EAASV,aAAejuB,EAAWI,MAAK,gBAOpD,OANnCqH,EAAS,CACRjrH,IAAKoyI,EACLzkD,MAAO0kD,EACPtD,QAASoD,EAASV,aAAejuB,EAAWG,MAC5CmrB,QAASqD,EAASV,aAAejuB,EAAWI,QAE7C0T,EAAS5P,EAAOkB,mBAAmB,6BAGhCupB,EAASV,aAAejuB,EAAWE,KAA8B,oBAAhBysB,EAA0B,gBACzD,OAArBA,EAAYiC,GAAS,2BAGhBn+H,EAAOvnC,SAASwxB,cAAc,MAC/BiW,KAAOi+H,EACZn+H,EAAKs+H,SAAQ,UAAMF,EAAe,YAAIC,GACtCr+H,EAAK+yH,QAAQ,4CACb,gBAvByB,sCAyBpBwL,EAAiB,SAACL,EAAU9M,GAAS,IAAD,EACjCgN,EAAkCF,EAAlCE,gBAAiBI,EAAiBN,EAAjBM,aACnBC,EAAY7B,EAAiBn2B,YAAcA,GAAam2B,EAAiBW,YAAcW,EAASX,UAChGmB,EAAkBxsK,KAAW,qBAAmB,eACpDssK,EAAeA,IAAY,oBAClBtpF,IAAQ,2BACDupF,GAAS,IAE3B,OACC,gBAAKzpI,UAAW0pI,EAAiBl5D,QAAS,kBAAMy4D,EAAqBC,EAAS,EAAYppH,GAAY,OAARopH,QAAQ,IAARA,OAAQ,EAARA,EAAUX,UAAU,SAChHa,GADmFhN,EAIvF,EAOMuN,EAAuC,SAAAppK,GACxC2/E,GAAU3/E,EAAEwtF,gBACjB,EAEA,OACC,qBAAS/tD,UAAWgoI,EAAgBx3D,QAASm5D,EAAsC7kE,IAAKqiE,EAAW,WAClG,oBAASnnI,UAAW8nI,EAAe,UAAE,yBAAMpjD,OAC3C,iBAAK1kF,UAAU,mBAAmB8kE,IAAKsiE,EAAW,WACzC,OAAPZ,QAAO,IAAPA,OAAO,EAAPA,EAASoD,cAAqB,OAAPpD,QAAO,IAAPA,OAAO,EAAPA,EAASqD,sBAChC,gBAAK7pI,UAAWooI,EAAiB53D,QAAS,kBAAMw4D,EAAqBxC,EAAQoD,WAAW,EAAC,SACvFpD,GAAWA,EAAQqD,sBAGP,OAAdlD,QAAc,IAAdA,OAAc,EAAdA,EAAgBrpK,QAAS,GACzBqpK,EAAe55J,KAAI,SAAC/L,EAAGo7J,GAEtB,OACC,qBACCp8H,UAAWkoI,EACX13D,QAASm5D,EACT7kE,IAAKuiE,EAELvnH,GAAI9+C,EAAEsnK,eAAe,WAErB,oBAAStoI,UAAW8nI,EAAe,SAAE9mK,EAAE8oK,oBA9BlBC,EA+BA/oK,EA9BpB+oK,EAAMrD,UAAU35J,KAAI,SAAA/L,GAC1B,OAAOuoK,EAAevoK,EACvB,OAwBWo7J,GA3BgB,IAAA2N,CAkCxB,KACI,OAAJtD,QAAI,IAAJA,OAAI,EAAJA,EAAMuD,WACN,gBAAKhqI,UAAWqoI,EAAa73D,QAAS,kBAAMw4D,EAAqBvC,EAAKuD,QAAS,OAAO,EAAC,SACrFvD,GAAQA,EAAKwD,kBAGN,OAATvD,QAAS,IAATA,OAAS,EAATA,EAAWppK,QAAS,GAAKopK,EAAU35J,IAAIw8J,QAI5C,ECpMI/qK,GAAgB,SAASC,EAAGC,GAI5B,OAHAF,GAAgBT,OAAOY,gBAClB,CAAEC,UAAW,cAAgBlB,OAAS,SAAUe,EAAGC,GAAKD,EAAEG,UAAYF,CAAG,GAC1E,SAAUD,EAAGC,GAAK,IAAK,IAAIG,KAAKH,EAAOX,OAAOC,UAAUf,eAAekB,KAAKO,EAAGG,KAAIJ,EAAEI,GAAKH,EAAEG,GAAI,EAC7FL,GAAcC,EAAGC,EAC5B,EAEO,SAASI,GAAUL,EAAGC,GACzB,GAAiB,oBAANA,GAA0B,OAANA,EAC3B,MAAM,IAAIK,UAAU,uBAAyBC,OAAON,GAAK,iCAE7D,SAASO,IAAOC,KAAKC,YAAcV,CAAG,CADtCD,GAAcC,EAAGC,GAEjBD,EAAET,UAAkB,OAANU,EAAaX,OAAOqB,OAAOV,IAAMO,EAAGjB,UAAYU,EAAEV,UAAW,IAAIiB,EACnF,CAEO,IAAII,GAAW,WAQlB,OAPAA,GAAWtB,OAAOuB,QAAU,SAAkBC,GAC1C,IAAK,IAAIC,EAAGpC,EAAI,EAAGqC,EAAIpC,UAAUC,OAAQF,EAAIqC,EAAGrC,IAE5C,IAAK,IAAIyB,KADTW,EAAInC,UAAUD,GACOW,OAAOC,UAAUf,eAAekB,KAAKqB,EAAGX,KAAIU,EAAEV,GAAKW,EAAEX,IAE9E,OAAOU,CACX,EACOF,GAASxB,MAAMqB,KAAM7B,UAChC,EAEO,SAAS6sK,GAAO1qK,EAAGe,GACtB,IAAIhB,EAAI,CAAC,EACT,IAAK,IAAIV,KAAKW,EAAOzB,OAAOC,UAAUf,eAAekB,KAAKqB,EAAGX,IAAM0B,EAAEmL,QAAQ7M,GAAK,IAC9EU,EAAEV,GAAKW,EAAEX,IACb,GAAS,MAALW,GAAqD,oBAAjCzB,OAAO2wI,sBACtB,KAAItxI,EAAI,EAAb,IAAgByB,EAAId,OAAO2wI,sBAAsBlvI,GAAIpC,EAAIyB,EAAEvB,OAAQF,IAC3DmD,EAAEmL,QAAQ7M,EAAEzB,IAAM,GAAKW,OAAOC,UAAU60J,qBAAqB10J,KAAKqB,EAAGX,EAAEzB,MACvEmC,EAAEV,EAAEzB,IAAMoC,EAAEX,EAAEzB,IAF4B,CAItD,OAAOmC,CACX,CAuD6BxB,OAAOqB,OAgB7B,SAAS+qK,GAASlyG,GACrB,IAAIz4D,EAAsB,oBAAX+B,QAAyBA,OAAOC,SAAUy5B,EAAIz7B,GAAKy4D,EAAEz4D,GAAIpC,EAAI,EAC5E,GAAI69B,EAAG,OAAOA,EAAE98B,KAAK85D,GACrB,GAAIA,GAAyB,kBAAbA,EAAE36D,OAAqB,MAAO,CAC1CgD,KAAM,WAEF,OADI23D,GAAK76D,GAAK66D,EAAE36D,SAAQ26D,OAAI,GACrB,CAAEj4D,MAAOi4D,GAAKA,EAAE76D,KAAMsD,MAAOu3D,EACxC,GAEJ,MAAM,IAAIl5D,UAAUS,EAAI,0BAA4B,kCACxD,CAEO,SAAS4qK,GAAOnyG,EAAGx4D,GACtB,IAAIw7B,EAAsB,oBAAX15B,QAAyB02D,EAAE12D,OAAOC,UACjD,IAAKy5B,EAAG,OAAOg9B,EACf,IAAmB59C,EAAY9Z,EAA3BnD,EAAI69B,EAAE98B,KAAK85D,GAAOj2D,EAAK,GAC3B,IACI,WAAc,IAANvC,GAAgBA,KAAM,MAAQ4a,EAAIjd,EAAEkD,QAAQI,MAAMsB,EAAGvE,KAAK4c,EAAEra,MAQxE,CANA,MAAOkmC,GAAS3lC,EAAI,CAAE2lC,MAAOA,EAAS,CAAC,QAEnC,IACQ7rB,IAAMA,EAAE3Z,OAASu6B,EAAI79B,EAAU,SAAI69B,EAAE98B,KAAKf,EAElB,CAD/B,QACS,GAAImD,EAAG,MAAMA,EAAE2lC,KAAO,CACpC,CACA,OAAOlkC,CACX,CAkBO,SAASJ,GAAcC,EAAIC,EAAMC,GACpC,GAAIA,GAA6B,IAArB1E,UAAUC,OAAc,IAAK,IAA4B0E,EAAxB5E,EAAI,EAAG6E,EAAIH,EAAKxE,OAAYF,EAAI6E,EAAG7E,KACxE4E,GAAQ5E,KAAK0E,IACRE,IAAIA,EAAKtE,MAAMM,UAAUkE,MAAM/D,KAAK2D,EAAM,EAAG1E,IAClD4E,EAAG5E,GAAK0E,EAAK1E,IAGrB,OAAOyE,EAAGM,OAAOH,GAAMtE,MAAMM,UAAUkE,MAAM/D,KAAK2D,GACtD,CAqCyB/D,OAAOqB,OClNhC,ICHIirK,GAAmB,SAAUC,GAAa,MAAQ,CAClDC,UAAW,SAAUhmE,GAAS,OAAO+lE,EAAUj3I,MAAK,SAAUpb,GAAQ,QAASssF,EAAMtsF,EAAO,GAAI,EAChG,EACAuyJ,GAAqB,CACrBC,cAAeJ,GAAiB,CAAC,SAAU,WAAY,SACvD1xE,UAAW0xE,GAAiB,CACxB,UACA,OACA,WACA,aACA,WACA,aACA,YACA,gBAEJK,KAAML,GAAiB,CAAC,SACxBM,KAAMN,GAAiB,CAAC,OAAQ,iBAChC1yE,MAAO0yE,GAAiB,CAAC,eACzBO,MAAOP,GAAiB,CAAC,aAAc,eAAgB,eACvDQ,IAAKR,GAAiB,CAAC,WAAY,QAAS,aAAc,gBAC1DS,IAAKT,GAAiB,CAClB,QACA,aACA,oBACA,aAEJU,OAAQV,GAAiB,CACrB,cACA,kBACA,qBC3BR,IAAIW,IAAc7pC,EAAAA,EAAAA,eAAc,CAAEx1E,QAAQ,ICMtCs/G,GAAeltK,OAAO0uC,KAAK+9H,IAC3BU,GAAcD,GAAa3tK,OCJ/B,IAAI6tK,IAAsBhqC,EAAAA,EAAAA,eAAc,CACpCiqC,mBAAoB,SAAUvsK,GAAK,OAAOA,CAAG,EAC7CwsK,UAAU,EACVC,cAAe,UCNfC,IAAgBpqC,EAAAA,EAAAA,eAAc,CAAC,GCGnC,IAAIqqC,IAAkBrqC,EAAAA,EAAAA,eAAc,MCLhCsqC,GAAgC,qBAAbhoK,SCGnBioK,GAA4BD,GAAY1gE,EAAAA,gBAAkBH,EAAAA,UCG1D+gE,GAAuB,CAAE3/J,QAAS,MAClC4/J,IAAc,EA2ClB,SAASC,KASL,OALCD,IA9CL,WAEI,GADAA,IAAc,EACTH,GAEL,GAAIv4I,OAAO44I,WAAY,CACnB,IAAIC,EAAqB74I,OAAO44I,WAAW,4BACvCE,EAA8B,WAC9B,OAAQL,GAAqB3/J,QAAU+/J,EAAmB9gG,OAC9D,EACA8gG,EAAmBE,YAAYD,GAC/BA,GACJ,MAEIL,GAAqB3/J,SAAU,CAEvC,CA+BoBkgK,GACP9B,IAAOj/D,EAAAA,EAAAA,UAASwgE,GAAqB3/J,SAAU,GAA4B,EAKxF,CCrDA,SAASmgK,GAAiBlpE,EAAWmpE,EAAa7nE,EAAO8nE,GACrD,IAAIC,GAAc3hE,EAAAA,EAAAA,YAAWqgE,IACzB5xJ,GLLGuxF,EAAAA,EAAAA,YAAW4gE,IAAegB,cKM7BC,GAAkB7hE,EAAAA,EAAAA,YAAW6gE,IAC7BiB,EDkDR,WACI,IAAIC,EAA0Bb,KAC1BP,GAAgB3gE,EAAAA,EAAAA,YAAWwgE,IAAqBG,cACpD,MAAsB,UAAlBA,IAGuB,WAAlBA,GAIEoB,EAEf,CC9D6BC,GACrBC,GAAmB1hE,EAAAA,EAAAA,aAAOh+F,GAIzBm/J,IACDA,EAAsBC,EAAYO,WACjCD,EAAiB5gK,SAAWqgK,IAC7BO,EAAiB5gK,QAAUqgK,EAAoBppE,EAAW,CACtDmpE,YAAaA,EACbhzJ,OAAQA,EACRmrF,MAAOA,EACPuoE,WAAgC,OAApBN,QAAgD,IAApBA,OAA6B,EAASA,EAAgB1sH,GAC9FitH,uBAAuH,KAA3E,OAApBP,QAAgD,IAApBA,OAA6B,EAASA,EAAgBlwD,SAC1GmwD,mBAAoBA,KAG5B,IAAIF,EAAgBK,EAAiB5gK,QASrC,OARA0/J,IAA0B,WACJ,OAAlBa,QAA4C,IAAlBA,GAAoCA,EAAcS,YAChF,KACApiE,EAAAA,EAAAA,YAAU,WACN,IAAItkF,EACkG,QAArGA,EAAuB,OAAlBimJ,QAA4C,IAAlBA,OAA2B,EAASA,EAAcU,sBAAmC,IAAP3mJ,GAAyBA,EAAG4mJ,gBAC9I,IACAxB,IAA0B,WAAc,OAAO,WAAc,OAAyB,OAAlBa,QAA4C,IAAlBA,OAA2B,EAASA,EAAcY,eAAiB,CAAG,GAAG,IAChKZ,CACX,CCtCA,SAASa,GAAYtoE,GACjB,MAAuB,kBAARA,GACX/mG,OAAOC,UAAUf,eAAekB,KAAK2mG,EAAK,UAClD,CCAA,SAASuoE,GAAgB5rK,GACrB,OAAO/D,MAAMC,QAAQ8D,EACzB,CAIA,SAAS6rK,GAAe7rK,GACpB,MAAoB,kBAANA,GAAkB4rK,GAAgB5rK,EACpD,CAiBA,SAAS8rK,GAAwBhpE,EAAOioC,EAAYghC,EAAQC,EAAeC,GACvE,IAAIpnJ,EAwBJ,YAvBsB,IAAlBmnJ,IAA4BA,EAAgB,CAAC,QACzB,IAApBC,IAA8BA,EAAkB,CAAC,GAI3B,oBAAflhC,IACPA,EAAaA,EAAsB,OAAXghC,QAA8B,IAAXA,EAAoBA,EAASjpE,EAAMipE,OAAQC,EAAeC,IAM/E,kBAAflhC,IACPA,EAAuC,QAAzBlmH,EAAKi+E,EAAMopE,gBAA6B,IAAPrnJ,OAAgB,EAASA,EAAGkmH,IAOrD,oBAAfA,IACPA,EAAaA,EAAsB,OAAXghC,QAA8B,IAAXA,EAAoBA,EAASjpE,EAAMipE,OAAQC,EAAeC,IAElGlhC,CACX,CACA,SAASohC,GAAerB,EAAe//B,EAAYghC,GAC/C,IAAIjpE,EAAQgoE,EAAcsB,WAC1B,OAAON,GAAwBhpE,EAAOioC,EAAuB,OAAXghC,QAA8B,IAAXA,EAAoBA,EAASjpE,EAAMipE,OA1C5G,SAAoBjB,GAChB,IAAIvgK,EAAU,CAAC,EAEf,OADAugK,EAAcuB,cAAa,SAAU9tK,EAAO9B,GAAO,OAAQ8N,EAAQ9N,GAAO8B,EAAMyL,KAAQ,IACjFO,CACX,CAsCoH+hK,CAAWxB,GAlC/H,SAAqBA,GACjB,IAAIyB,EAAW,CAAC,EAEhB,OADAzB,EAAcuB,cAAa,SAAU9tK,EAAO9B,GAAO,OAAQ8vK,EAAS9vK,GAAO8B,EAAMiuK,aAAgB,IAC1FD,CACX,CA8B+IC,CAAY1B,GAC3J,CACA,SAAS2B,GAA2B3pE,GAChC,IAAIj+E,EACJ,MAAwF,oBAA/C,QAAxBA,EAAKi+E,EAAM4pE,eAA4B,IAAP7nJ,OAAgB,EAASA,EAAG7f,QACzE6mK,GAAe/oE,EAAM+X,UACrBgxD,GAAe/oE,EAAM4pE,UACrBb,GAAe/oE,EAAM6pE,aACrBd,GAAe/oE,EAAM8pE,YACrBf,GAAe/oE,EAAM+pE,WACrBhB,GAAe/oE,EAAMgqE,aACrBjB,GAAe/oE,EAAMmmE,KAC7B,CACA,SAAS8D,GAAmBjqE,GACxB,OAAOokB,QAAQulD,GAA2B3pE,IAAUA,EAAMopE,SAC9D,CCpEA,SAASc,GAAuBlqE,GAC5B,IAAIj+E,ECHR,SAAgCi+E,EAAO3hG,GACnC,GAAIsrK,GAA2B3pE,GAAQ,CACnC,IAAI+X,EAAU/X,EAAM+X,QAAS6xD,EAAU5pE,EAAM4pE,QAC7C,MAAO,CACH7xD,SAAqB,IAAZA,GAAqBgxD,GAAehxD,GACvCA,OACApvG,EACNihK,QAASb,GAAea,GAAWA,OAAUjhK,EAErD,CACA,OAAyB,IAAlBq3F,EAAMmqE,QAAoB9rK,EAAU,CAAC,CAChD,CDRa+rK,CAAuBpqE,GAAOoG,EAAAA,EAAAA,YAAW4gE,KAAiBjvD,EAAUh2F,EAAGg2F,QAAS6xD,EAAU7nJ,EAAG6nJ,QACtG,OAAOnjE,EAAAA,EAAAA,UAAQ,WAAc,MAAQ,CAAEsR,QAASA,EAAS6xD,QAASA,EAAY,GAAG,CAACS,GAA0BtyD,GAAUsyD,GAA0BT,IACpJ,CACA,SAASS,GAA0B/gH,GAC/B,OAAOnwD,MAAMC,QAAQkwD,GAAQA,EAAKzvD,KAAK,KAAOyvD,CAClD,CEDA,SAASghH,GAAYxzD,GACjB,IAAIvW,GAAMoG,EAAAA,EAAAA,QAAO,MAIjB,OAHoB,OAAhBpG,EAAI94F,UACJ84F,EAAI94F,QAAUqvG,KAEXvW,EAAI94F,OACf,CCVA,IAAI8iK,GAAwB,CAKxBC,wBAAwB,EAKxBC,gBAAgB,GCZhBlvH,GAAK,ECDT,IAAImvH,IAAqB9tC,EAAAA,EAAAA,eAAc,CAAC,GCGpC+tC,IAA2B/tC,EAAAA,EAAAA,eAAc,CAAC,GCF9C,IAAIguC,GAAsC,SAAU/zI,GAEhD,SAAS+zI,IACL,OAAkB,OAAX/zI,GAAmBA,EAAOv9B,MAAMqB,KAAM7B,YAAc6B,IAC/D,CAiBA,OApBAJ,GAAUqwK,EAAsB/zI,GAOhC+zI,EAAqBnxK,UAAUymG,wBAA0B,WAErD,OADAvlG,KAAKkwK,cACE,IACX,EACAD,EAAqBnxK,UAAUowG,mBAAqB,WAAc,EAClE+gE,EAAqBnxK,UAAUoxK,YAAc,WACzC,IAAI9oJ,EAAKpnB,KAAKqlG,MAAOgoE,EAAgBjmJ,EAAGimJ,cAAehoE,EAAQj+E,EAAGi+E,MAC9DgoE,GACAA,EAAc8C,SAAS9qE,EAC/B,EACA4qE,EAAqBnxK,UAAU88C,OAAS,WACpC,OAAO57C,KAAKqlG,MAAMlkB,QACtB,EACO8uF,CACX,CAtB0C,CAsBxCG,EAAAA,WCAF,SAASC,GAAsBjpJ,GAC3B,IAAIkpJ,EAAoBlpJ,EAAGkpJ,kBAAmBnD,EAAsB/lJ,EAAG+lJ,oBAAqBoD,EAA4BnpJ,EAAGmpJ,0BAA2BC,EAAYppJ,EAAGopJ,UAAWC,EAAiBrpJ,EAAGqpJ,eAAgB1sE,EAAY38E,EAAG28E,UAsDnO,OArDAusE,GpBKJ,SAAsBI,GAClB,IAAK,IAAI1xK,KAAO0xK,EACU,OAAlBA,EAAS1xK,KAED,8BAARA,EACAssK,GAAmBiF,0BAA4BG,EAAS1xK,GAGxDssK,GAAmBtsK,GAAK+kG,UAAY2sE,EAAS1xK,GAGzD,CoBhByB2xK,CAAaL,IAqD3B5tC,EAAAA,EAAAA,aApDP,SAAyBr9B,EAAOurE,GAC5B,IAAIC,EAqDZ,SAAqBzpJ,GACjB,IAAI6wB,EACA44H,EAAWzpJ,EAAGypJ,SACdC,EAA0D,QAAzC74H,GAAKwzD,EAAAA,EAAAA,YAAWskE,WAAwC,IAAP93H,OAAgB,EAASA,EAAG2I,GAClG,OAAOkwH,QAA8B9iK,IAAb6iK,EAClBC,EAAgB,IAAMD,EACtBA,CACV,CA5DuBE,CAAY1rE,GAC3BA,EAAQllG,GAASA,GAAS,CAAC,EAAGklG,GAAQ,CAAEwrE,SAAUA,IAOlD,IAAI3hH,GAASu8C,EAAAA,EAAAA,YAAWwgE,IACpByE,EAAW,KACXhtK,EAAU6rK,GAAuBlqE,GAYjC2rE,EAAe9hH,EAAOi9G,cAAWn+J,EJ9ClC2hK,IAAY,WACf,GAAIC,GAAsBE,eACtB,OAAOlvH,IAEf,II8CQssH,EAAcuD,EAAeprE,EAAOn2C,EAAOi9G,UAqB/C,OApBKj9G,EAAOi9G,UAAYI,KAOpB7oK,EAAQ2pK,cAAgBJ,GAAiBlpE,EAAWmpE,EAAa/sK,GAASA,GAAS,CAAC,EAAG+uD,GAASm2C,GAAQ8nE,GC3DpH,SAAuB6D,EAAc5pJ,EAAIimJ,EAAe4D,GACpD,IAAIh5H,EACA44H,EAAWzpJ,EAAGypJ,SAAUK,EAAS9pJ,EAAG8pJ,OAAQzF,EAAOrkJ,EAAGqkJ,KAAM0F,EAAkB/pJ,EAAG+pJ,gBAAiBC,EAAehqJ,EAAGgqJ,aACpHC,GAAyB5lE,EAAAA,EAAAA,YAAWukE,IACnCiB,GACA5D,KACkB,OAAlBA,QAA4C,IAAlBA,OAA2B,EAASA,EAAciE,cAGjFjE,EAAciE,WAAa,IAAIL,EAA0BD,EAAc3D,EAAckE,kBAAmD,QAA/Bt5H,EAAKo1H,EAAcnzJ,cAA2B,IAAP+9B,OAAgB,EAASA,EAAGq5H,YAC5KjE,EAAciE,WAAWE,WAAW,CAChCX,SAAUA,EACVK,OAAQA,EACRO,oBAAqBhoD,QAAQgiD,IAAU0F,GAAmBjD,GAAYiD,GACtE9D,cAAeA,EACfqE,eAAgB,WAAc,OAAOrE,EAAcqE,gBAAkB,EAQrEC,cAAiC,kBAAXT,EAAsBA,EAAS,OACrDG,uBAAwBA,EACxBD,aAAcA,IAEtB,CDiCYQ,CAAcZ,EAAc3rE,EAAO3hG,EAAQ2pK,cAAekD,GACtDjF,GAAmBiF,2BAKvBG,ElBzDZ,SAAqBrrE,EAAOgoE,EAAeiD,GACvC,IAAII,EAAW,GAEf,IADkBjlE,EAAAA,EAAAA,YAAWqgE,KACxBuB,EACD,OAAO,KAQX,IAAK,IAAInvK,EAAI,EAAGA,EAAI8tK,GAAa9tK,IAAK,CAClC,IAAI2zK,EAAS9F,GAAa7tK,GACtBkpB,EAAKkkJ,GAAmBuG,GAASxG,EAAYjkJ,EAAGikJ,UAAWtnE,EAAY38E,EAAG28E,UAM1EsnE,EAAUhmE,IAAUtB,GACpB2sE,EAASnyK,KAAK+9G,EAAAA,cAAoBvY,EAAW5jG,GAAS,CAAEnB,IAAK6yK,GAAUxsE,EAAO,CAAEgoE,cAAeA,KAEvG,CACA,OAAOqD,CACX,CkBgCuBoB,CAAYzsE,EAAO3hG,EAAQ2pK,gBAMlC/wD,EAAAA,cAAoB2zD,GAAsB,CAAE5C,cAAe3pK,EAAQ2pK,cAAehoE,MAAOllG,GAASA,GAAS,CAAC,EAAG+uD,GAASm2C,IAC5HqrE,EACAp0D,EAAAA,cAAoB+vD,GAAcjqC,SAAU,CAAEthI,MAAO4C,GAAW8sK,EAAUzsE,EAAWsB,EAAO2rE,EEvExG,SAAsB9D,EAAaG,EAAeuD,GAC9C,OAAOplE,EAAAA,EAAAA,cAAY,SAAUjR,GACzB,IAAInzE,EACJmzE,IAA0C,QAA5BnzE,EAAK8lJ,EAAY6E,aAA0B,IAAP3qJ,GAAyBA,EAAGnoB,KAAKiuK,EAAa3yE,IAC5F8yE,IACA9yE,EACM8yE,EAAc0E,MAAMx3E,GACpB8yE,EAAcv0D,WAEpB83D,IAC2B,oBAAhBA,EACPA,EAAYr2E,GAEP2zE,GAAY0C,KACjBA,EAAY9jK,QAAUytF,GAGlC,GAMA,CAAC8yE,GACL,CF+CsH2E,CAAa9E,EAAaxpK,EAAQ2pK,cAAeuD,GAAc1D,EAAah+G,EAAOi9G,SAAUzoK,EAAQ2pK,gBACvN,GAEJ,CGjEA,SAAS4E,GAAkBC,GACvB,SAAS5D,EAAOvqE,EAAWouE,GAEvB,YADoC,IAAhCA,IAA0CA,EAA8B,CAAC,GACtE9B,GAAsB6B,EAAanuE,EAAWouE,GACzD,CACA,GAAqB,qBAAV5mC,MACP,OAAO+iC,EAMX,IAAI8D,EAAiB,IAAIxmF,IACzB,OAAO,IAAI2/C,MAAM+iC,EAAQ,CAMrB/hK,IAAK,SAAU8lK,EAASrzK,GAOpB,OAHKozK,EAAe1lI,IAAI1tC,IACpBozK,EAAeviH,IAAI7wD,EAAKsvK,EAAOtvK,IAE5BozK,EAAe7lK,IAAIvN,EAC9B,GAER,CCzCA,IAAIszK,GAAuB,CACvB,UACA,SACA,OACA,OACA,UACA,IACA,QACA,OACA,SACA,SACA,OACA,WACA,OACA,UACA,UACA,WACA,OACA,OACA,MACA,SACA,SACA,OACA,QACA,MACA,QC3BJ,SAASC,GAAexuE,GACpB,MAKqB,kBAAdA,IAIHA,EAAUhlG,SAAS,SAOvBuzK,GAAqB9lK,QAAQu3F,IAAc,GAIvC,QAAQ7+D,KAAK6+D,GAIrB,CC3BA,IAAIyuE,GAAkB,CAAC,ECIvB,IAAIC,GAAgB,CAAC,GAAI,IAAK,IAAK,KAS/BC,GAAiB,CAAC,uBAAwB,IAAK,IAAK,KASxD,SAASC,GAAmBhmK,EAAGnN,GAC3B,OAAOkzK,GAAelmK,QAAQG,GAAK+lK,GAAelmK,QAAQhN,EAC9D,CAfY,CAAC,YAAa,QAAS,SAAU,QAKvC6M,SAAQ,SAAUumK,GACpB,OAAOH,GAAcpmK,SAAQ,SAAUwmK,GACnC,OAAOH,GAAen0K,KAAKq0K,EAAeC,EAC9C,GACJ,IAUA,IAAIC,GAAmB,IAAIl3F,IAAI82F,IAC/B,SAASK,GAAgB/zK,GACrB,OAAO8zK,GAAiBpmI,IAAI1tC,EAChC,CAIA,IAAIg0K,GAAuB,IAAIp3F,IAAI,CAAC,UAAW,UAAW,YAC1D,SAASq3F,GAAsBj0K,GAC3B,OAAOg0K,GAAqBtmI,IAAI1tC,EACpC,CCnCA,SAASk0K,GAAoBl0K,EAAKooB,GAC9B,IAAI8pJ,EAAS9pJ,EAAG8pJ,OAAQL,EAAWzpJ,EAAGypJ,SACtC,OAAQkC,GAAgB/zK,IACpBi0K,GAAsBj0K,KACpBkyK,QAAuBljK,IAAb6iK,OACL2B,GAAgBxzK,IAAgB,YAARA,EACvC,CCTA,IAAIm0K,GAAgB,SAAUryK,GAC1B,OAAO2oH,QAAkB,OAAV3oH,GAAmC,kBAAVA,GAAsBA,EAAMiuK,YACxE,ECAIqE,GAAiB,CACjB7vK,EAAG,aACH1B,EAAG,aACHwP,EAAG,aACHgiK,qBAAsB,eCH1B,SAASC,GAAct0K,GACnB,OAAOA,EAAI2oJ,WAAW,KAC1B,CCFA,IAAI4rB,GAAiB,SAAUzyK,EAAOkM,GAClC,OAAOA,GAAyB,kBAAVlM,EAChBkM,EAAKkiB,UAAUpuB,GACfA,CACV,ECPM0yK,GAAQ,SAACp8J,EAAKzS,GAAG,OAAK,SAACpC,GAAC,OAAKmC,KAAKC,IAAID,KAAK0S,IAAI7U,EAAGoC,GAAMyS,EAAI,GAC5Dq8J,GAAW,SAAClxK,GAAC,OAAMA,EAAI,EAAIo6G,OAAOp6G,EAAEo4E,QAAQ,IAAMp4E,CAAC,EACnDmxK,GAAa,uBACbC,GAAa,gHACbC,GAAmB,oGACzB,SAASrlG,GAAShsE,GACd,MAAoB,kBAANA,CAClB,CCLA,IAAMsxK,GAAiB,SAACl8J,GAAI,MAAM,CAC9ButB,KAAM,SAAC3iC,GAAC,OAAKgsE,GAAShsE,IAAMA,EAAE6lJ,SAASzwI,IAAiC,IAAxBpV,EAAEuhD,MAAM,KAAK1lD,MAAY,EACzEoc,MAAO6vD,WACPn7C,UAAW,SAAC3sB,GAAC,gBAAQA,GAAC,OAAGoV,EAAI,EAChC,EACKm8J,GAAUD,GAAe,OACzBE,GAAUF,GAAe,KACzBG,GAAKH,GAAe,MACpB7tE,GAAK6tE,GAAe,MACpBI,GAAKJ,GAAe,MACpBK,GAAqBr1K,OAAOuB,OAAOvB,OAAOuB,OAAO,CAAC,EAAG2zK,IAAU,CAAEv5J,MAAO,SAACjY,GAAC,OAAKwxK,GAAQv5J,MAAMjY,GAAK,GAAG,EAAE2sB,UAAW,SAAC3sB,GAAC,OAAKwxK,GAAQ7kJ,UAAc,IAAJ3sB,EAAQ,ICVnJmV,GAAS,CACXwtB,KAAM,SAAC3iC,GAAC,MAAkB,kBAANA,CAAc,EAClCiY,MAAO6vD,WACPn7C,UAAW,SAAC3sB,GAAC,OAAKA,CAAC,GAEjBoZ,GAAQ9c,OAAOuB,OAAOvB,OAAOuB,OAAO,CAAC,EAAGsX,IAAS,CAAEwX,UAAWskJ,GAAM,EAAG,KACvEv6H,GAAQp6C,OAAOuB,OAAOvB,OAAOuB,OAAO,CAAC,EAAGsX,IAAS,CAAErY,QAAS,ICL9D2T,GAAM7S,GAASA,GAAS,CAAC,EAAGuX,IAAS,CAAEwX,UAAWxqB,KAAKqX,QCAvDo4J,GAAmB,CAEnBC,YAAaJ,GACbpnJ,eAAgBonJ,GAChBnnJ,iBAAkBmnJ,GAClBlnJ,kBAAmBknJ,GACnBjnJ,gBAAiBinJ,GACjBK,aAAcL,GACd7M,OAAQ6M,GACR/nJ,oBAAqB+nJ,GACrB9nJ,qBAAsB8nJ,GACtB7nJ,wBAAyB6nJ,GACzB5nJ,uBAAwB4nJ,GAExB5wK,MAAO4wK,GACPt3D,SAAUs3D,GACV3wK,OAAQ2wK,GACRM,UAAWN,GACX7qJ,KAAM6qJ,GACN7wK,IAAK6wK,GACLO,MAAOP,GACPQ,OAAQR,GACR9wK,KAAM8wK,GAENv7H,QAASu7H,GACTzlJ,WAAYylJ,GACZxlJ,aAAcwlJ,GACdvlJ,cAAeulJ,GACftlJ,YAAaslJ,GACbx7H,OAAQw7H,GACRhmJ,UAAWgmJ,GACX/lJ,YAAa+lJ,GACb9lJ,aAAc8lJ,GACd7lJ,WAAY6lJ,GAEZS,OAAQX,GACRY,QAASZ,GACTa,QAASb,GACTc,QAASd,GACT76H,MAAOA,GACP47H,OAAQ57H,GACR67H,OAAQ77H,GACR87H,OAAQ97H,GACR8iH,KAAM+X,GACNkB,MAAOlB,GACPmB,MAAOnB,GACP1rJ,SAAU4rJ,GACVkB,WAAYlB,GACZmB,WAAYnB,GACZoB,WAAYpB,GACZzwK,EAAGywK,GACHnyK,EAAGmyK,GACH3iK,EAAG2iK,GACHqB,YAAarB,GACbX,qBAAsBW,GACtB1jJ,QAAS3U,GACT25J,QAASpB,GACTqB,QAASrB,GACTsB,QAASxB,GAET9jJ,OAAQld,GAERgxE,YAAaroE,GACb2oE,cAAe3oE,GACf85J,WAAYziK,IC7DhB,SAAS0iK,GAAgB3wE,EAAO4wE,EAAcjoK,EAASkoK,GACnD,IAAIxuJ,EACAkF,EAAQy4E,EAAMz4E,MAAOupJ,EAAO9wE,EAAM8wE,KAAM3mJ,EAAY61E,EAAM71E,UAAW4mJ,EAAgB/wE,EAAM+wE,cAAejmJ,EAAkBk1E,EAAMl1E,gBAItIimJ,EAAc13K,OAAS,EAEvB,IAAI23K,GAAe,EACfC,GAAqB,EAErBC,GAAkB,EAOtB,IAAK,IAAIj3K,KAAO22K,EAAc,CAC1B,IAAI70K,EAAQ60K,EAAa32K,GAIzB,GAAIs0K,GAAct0K,GACd62K,EAAK72K,GAAO8B,MADhB,CAKA,IAAIo1K,EAAY/B,GAAiBn1K,GAC7Bm3K,EAAc5C,GAAezyK,EAAOo1K,GACxC,GAAInD,GAAgB/zK,GAAM,CAMtB,GAJA+2K,GAAe,EACf7mJ,EAAUlwB,GAAOm3K,EACjBL,EAAcv3K,KAAKS,IAEdi3K,EACD,SAEAn1K,KAAwC,QAA5BsmB,EAAK8uJ,EAAU72K,eAA4B,IAAP+nB,EAAgBA,EAAK,KACrE6uJ,GAAkB,EAC1B,MACShD,GAAsBj0K,IAC3B6wB,EAAgB7wB,GAAOm3K,EAEvBH,GAAqB,GAGrB1pJ,EAAMttB,GAAOm3K,CAtBjB,CAwBJ,CACIJ,EACAzpJ,EAAM4C,UR5Cd,SAAwB9H,EAAI6wB,EAAIm+H,EAAoBR,GAChD,IAAI1mJ,EAAY9H,EAAG8H,UAAW4mJ,EAAgB1uJ,EAAG0uJ,cAC7Cr6H,EAAKxD,EAAGo+H,2BAA4BA,OAAoC,IAAP56H,GAAuBA,EAAIa,EAAKrE,EAAGq+H,mBAAoBA,OAA4B,IAAPh6H,GAAuBA,EAEpKi6H,EAAkB,GAEtBT,EAAcjuH,KAAK8qH,IAMnB,IAHA,IAAI6D,GAAgB,EAEhBC,EAAmBX,EAAc13K,OAC5BF,EAAI,EAAGA,EAAIu4K,EAAkBv4K,IAAK,CACvC,IAAIc,EAAM82K,EAAc53K,GACxBq4K,GAAmB,GAAGtzK,OAAOmwK,GAAep0K,IAAQA,EAAK,KAAKiE,OAAOisB,EAAUlwB,GAAM,MACzE,MAARA,IACAw3K,GAAgB,EACxB,CAeA,OAdKA,GAAiBH,EAClBE,GAAmB,gBAGnBA,EAAkBA,EAAgBp8I,OAIlCy7I,EACAW,EAAkBX,EAAkB1mJ,EAAWknJ,EAAqB,GAAKG,GAEpED,GAAsBF,IAC3BG,EAAkB,QAEfA,CACX,CQW0BG,CAAe3xE,EAAOr3F,EAASuoK,EAAiBL,GAE7DA,EACLtpJ,EAAM4C,UAAY0mJ,EAAkB,CAAC,EAAG,KAElCD,EAAazmJ,WAAa5C,EAAM4C,YACtC5C,EAAM4C,UAAY,QAElB8mJ,IACA1pJ,EAAMuD,gBRfd,SAA8BzI,GAC1B,IAAI6wB,EAAK7wB,EAAGkuJ,QAASA,OAAiB,IAAPr9H,EAAgB,MAAQA,EAAIwD,EAAKr0B,EAAGmuJ,QAASA,OAAiB,IAAP95H,EAAgB,MAAQA,EAAIa,EAAKl1B,EAAGouJ,QAASA,OAAiB,IAAPl5H,EAAgB,EAAIA,EACjK,MAAO,GAAGr5C,OAAOqyK,EAAS,KAAKryK,OAAOsyK,EAAS,KAAKtyK,OAAOuyK,EAC/D,CQYgCmB,CAAqB9mJ,GAErD,CCrEA,IAAI+mJ,GAAwB,WAAc,MAAQ,CAC9CtqJ,MAAO,CAAC,EACR4C,UAAW,CAAC,EACZ4mJ,cAAe,GACfjmJ,gBAAiB,CAAC,EAClBgmJ,KAAM,CAAC,EACP,ECCJ,SAASgB,GAAkB5rI,EAAQ0Z,EAAQ0gD,GACvC,IAAK,IAAIrmG,KAAO2lD,EACPwuH,GAAcxuH,EAAO3lD,KAAUk0K,GAAoBl0K,EAAKqmG,KACzDp6D,EAAOjsC,GAAO2lD,EAAO3lD,GAGjC,CAUA,SAAS83K,GAASzxE,EAAO6nE,EAAaf,GAClC,IACI7/I,EAAQ,CAAC,EASb,OALAuqJ,GAAkBvqJ,EALF+4E,EAAM/4E,OAAS,CAAC,EAKI+4E,GACpCxmG,OAAOuB,OAAOksB,EAhBlB,SAAgClF,EAAI8lJ,EAAaf,GAC7C,IAAIyJ,EAAoBxuJ,EAAGwuJ,kBAC3B,OAAO9pE,EAAAA,EAAAA,UAAQ,WACX,IAAI/G,EDjBsC,CAC9Cz4E,MAAO,CAAC,EACR4C,UAAW,CAAC,EACZ4mJ,cAAe,GACfjmJ,gBAAiB,CAAC,EAClBgmJ,KAAM,CAAC,GCaHH,GAAgB3wE,EAAOmoE,EAAa,CAAEmJ,4BAA6BlK,GAAYyJ,GAC/E,IAAuBtpJ,EAAQy4E,EAAMz4E,MACrC,OAAOnsB,GAASA,GAAS,CAAC,EADf4kG,EAAM8wE,MACmBvpJ,EACxC,GAAG,CAAC4gJ,GACR,CAQyB6J,CAAuB1xE,EAAO6nE,EAAaf,IAC5D9mE,EAAM2xE,kBACN1qJ,EAAQ+4E,EAAM2xE,gBAAgB1qJ,IAE3BA,CACX,CACA,SAAS2qJ,GAAa5xE,EAAO6nE,EAAaf,GAEtC,IAAI+K,EAAY,CAAC,EACb5qJ,EAAQwqJ,GAASzxE,EAAO6nE,EAAaf,GAgBzC,OAfI1iD,QAAQpkB,EAAMomE,QAAgC,IAAvBpmE,EAAM8xE,eAE7BD,EAAU/4C,WAAY,EAEtB7xG,EAAM8qJ,WACF9qJ,EAAM+qJ,iBACF/qJ,EAAMgrJ,mBACF,OAEZhrJ,EAAMirJ,aACa,IAAflyE,EAAMomE,KACA,OACA,OAAOxoK,OAAsB,MAAfoiG,EAAMomE,KAAe,IAAM,MAEvDyL,EAAU5qJ,MAAQA,EACX4qJ,CACX,CClDA,IAAIM,GAAmB,IAAI57F,IAAI,CAC3B,UACA,UACA,OACA,QACA,WACA,aACA,oBACA,kBACA,SACA,UACA,SACA,WACA,mBACA,yBACA,4BACA,kBACA,wBACA,mBACA,sBACA,WACA,cACA,SACA,YACA,2BACA,kBACA,sBACA,OACA,eACA,eACA,kBACA,oBACA,mBACA,SACA,SACA,cACA,eACA,kBACA,iBACA,YACA,QACA,aACA,WACA,oBACA,QACA,aACA,cACA,eACA,aACA,aACA,WACA,aACA,cACA,kBACA,kBACA,WACA,iBAUJ,SAAS67F,GAAkBz4K,GACvB,OAAOw4K,GAAiB9qI,IAAI1tC,EAChC,CCxEA,IACiC04K,GAD7BC,GAAgB,SAAU34K,GAAO,OAAQy4K,GAAkBz4K,EAAM,EAsBrE,KArBiC04K,GA2BLz0H,QAAQ,0BAA0B5jD,WAvB1Ds4K,GAAgB,SAAU34K,GACtB,OAAOA,EAAI2oJ,WAAW,OAAS8vB,GAAkBz4K,GAAO04K,GAAY14K,EACxE,EAwBA,CADJ,MAAOooB,IACH,CC/BJ,SAASwwJ,GAAW1yB,EAAQvuH,EAAQxN,GAChC,MAAyB,kBAAX+7H,EACRA,EACA8uB,GAAG9kJ,UAAUyH,EAASxN,EAAO+7H,EACvC,CCJA,IAAI2yB,GAAW,CACXlhJ,OAAQ,oBACR8tB,MAAO,oBAEPqzH,GAAY,CACZnhJ,OAAQ,mBACR8tB,MAAO,mBCAX,SAASszH,GAAchzE,EAAO39E,EAAI1Z,EAASkoK,GACvC,IAAIoC,EAAQ5wJ,EAAG4wJ,MAAOC,EAAQ7wJ,EAAG6wJ,MAAO3C,EAAUluJ,EAAGkuJ,QAASC,EAAUnuJ,EAAGmuJ,QAAS2C,EAAa9wJ,EAAG8wJ,WAAYjgI,EAAK7wB,EAAG+wJ,YAAaA,OAAqB,IAAPlgI,EAAgB,EAAIA,EAAIwD,EAAKr0B,EAAGgxJ,WAAYA,OAAoB,IAAP38H,EAAgB,EAAIA,EAGhOi6H,GAAgB3wE,EADPimE,GAAO5jJ,EAAI,CAAC,QAAS,QAAS,UAAW,UAAW,aAAc,cAAe,eAC3D1Z,EAASkoK,GACxC7wE,EAAMszE,MAAQtzE,EAAMz4E,MACpBy4E,EAAMz4E,MAAQ,CAAC,EACf,IAAI+rJ,EAAQtzE,EAAMszE,MAAO/rJ,EAAQy4E,EAAMz4E,MAAOgsJ,EAAavzE,EAAMuzE,WAK7DD,EAAMnpJ,YACFopJ,IACAhsJ,EAAM4C,UAAYmpJ,EAAMnpJ,kBACrBmpJ,EAAMnpJ,WAGbopJ,SACatqK,IAAZsnK,QAAqCtnK,IAAZunK,GAAyBjpJ,EAAM4C,aACzD5C,EAAMuD,gBFjBd,SAAgCyoJ,EAAYhD,EAASC,GACjD,IAAIgD,EAAYX,GAAWtC,EAASgD,EAAW/0K,EAAG+0K,EAAWl1K,OACzDo1K,EAAYZ,GAAWrC,EAAS+C,EAAWz2K,EAAGy2K,EAAWj1K,QAC7D,MAAO,GAAGJ,OAAOs1K,EAAW,KAAKt1K,OAAOu1K,EAC5C,CEagCC,CAAuBH,OAAwBtqK,IAAZsnK,EAAwBA,EAAU,QAAiBtnK,IAAZunK,EAAwBA,EAAU,UAG1HvnK,IAAVgqK,IACAK,EAAM90K,EAAIy0K,QACAhqK,IAAViqK,IACAI,EAAMx2K,EAAIo2K,QAEKjqK,IAAfkqK,GDnBR,SAAsBG,EAAOj6K,EAAQs6K,EAAS/hJ,EAAQgiJ,QAClC,IAAZD,IAAsBA,EAAU,QACrB,IAAX/hJ,IAAqBA,EAAS,QACd,IAAhBgiJ,IAA0BA,GAAc,GAE5CN,EAAMH,WAAa,EAGnB,IAAI3qI,EAAOorI,EAAcd,GAAWC,GAEpCO,EAAM9qI,EAAK5W,QAAUq9I,GAAG9kJ,WAAWyH,GAEnC,IAAIuhJ,EAAalE,GAAG9kJ,UAAU9wB,GAC1B+5K,EAAcnE,GAAG9kJ,UAAUwpJ,GAC/BL,EAAM9qI,EAAKkX,OAAS,GAAGxhD,OAAOi1K,EAAY,KAAKj1K,OAAOk1K,EAC1D,CCKQS,CAAaP,EAAOH,EAAYC,EAAaC,GAAY,EAEjE,CCpCA,IAAIS,GAAuB,WAAc,OAAQ14K,GAASA,GAAS,CAAC,EPHlB,CAC9CmsB,MAAO,CAAC,EACR4C,UAAW,CAAC,EACZ4mJ,cAAe,GACfjmJ,gBAAiB,CAAC,EAClBgmJ,KAAM,CAAC,IOFsF,CAAEwC,MAAO,CAAC,GAAO,ECGlH,SAASS,GAAYzzE,EAAO6nE,GACxB,IAAI6L,GAAcjtE,EAAAA,EAAAA,UAAQ,WACtB,IAAI/G,EAAQ8zE,KAEZ,OADAd,GAAchzE,EAAOmoE,EAAa,CAAEmJ,4BAA4B,GAAShxE,EAAMuwE,mBACxEz1K,GAASA,GAAS,CAAC,EAAG4kG,EAAMszE,OAAQ,CAAE/rJ,MAAOnsB,GAAS,CAAC,EAAG4kG,EAAMz4E,QAC3E,GAAG,CAAC4gJ,IACJ,GAAI7nE,EAAM/4E,MAAO,CACb,IAAI0sJ,EAAY,CAAC,EACjBnC,GAAkBmC,EAAW3zE,EAAM/4E,MAAO+4E,GAC1C0zE,EAAYzsJ,MAAQnsB,GAASA,GAAS,CAAC,EAAG64K,GAAYD,EAAYzsJ,MACtE,CACA,OAAOysJ,CACX,CCXA,SAASE,GAAgBC,QACM,IAAvBA,IAAiCA,GAAqB,GAc1D,OAbgB,SAAUn1E,EAAWsB,EAAO2rE,EAAcprE,EAAKx+E,EAAI+kJ,GAC/D,IAAIwJ,EAAevuJ,EAAGuuJ,aAIlBoD,GAHiBxG,GAAexuE,GAC9B+0E,GACA7B,IAC2B5xE,EAAOswE,EAAcxJ,GAClDgN,ENoBZ,SAAqB9zE,EAAO+zE,EAAOF,GAC/B,IAAIC,EAAgB,CAAC,EACrB,IAAK,IAAIn6K,KAAOqmG,GACRsyE,GAAc34K,KACU,IAAvBk6K,GAA+BzB,GAAkBz4K,KAChDo6K,IAAU3B,GAAkBz4K,IAE7BqmG,EAAiB,WAAKrmG,EAAI2oJ,WAAW,aACtCwxB,EAAcn6K,GAAOqmG,EAAMrmG,IAGnC,OAAOm6K,CACX,CMhC4BE,CAAYh0E,EAA4B,kBAAdtB,EAAwBm1E,GAClEI,EAAen5K,GAASA,GAASA,GAAS,CAAC,EAAGg5K,GAAgBJ,GAAc,CAAEnzE,IAAKA,IAIvF,OAHIorE,IACAsI,EAAa,sBAAwBtI,IAElCj7I,EAAAA,EAAAA,eAAcguE,EAAWu1E,EACpC,CAEJ,CCvBA,IAAIC,GAAqB,kBAKrBC,GAAc,SAAUr0K,GACxB,OAAOA,EAAIy2B,QAAQ29I,GALA,SAKsC1iK,aAC7D,ECPA,SAAS4iK,GAAWhmJ,EAASrM,EAAI+qI,EAAWmf,GACxC,IAAIhlJ,EAAQlF,EAAGkF,MAAOupJ,EAAOzuJ,EAAGyuJ,KAGhC,IAAK,IAAI72K,KAFTH,OAAOuB,OAAOqzB,EAAQnH,MAAOA,EAAOglJ,GAAcA,EAAWoI,oBAAoBvnB,IAEjE0jB,EACZpiJ,EAAQnH,MAAM8e,YAAYpsC,EAAK62K,EAAK72K,GAE5C,CCJA,IAAI26K,GAAsB,IAAI/9F,IAAI,CAC9B,gBACA,kBACA,eACA,mBACA,aACA,WACA,oBACA,eACA,cACA,aACA,UACA,UACA,eACA,mBACA,mBACA,eACA,cACA,UACA,oBACA,eCnBJ,SAASg+F,GAAUnmJ,EAASomJ,EAAaC,EAAYxI,GAEjD,IAAK,IAAItyK,KADTy6K,GAAWhmJ,EAASomJ,OAAa7rK,EAAWsjK,GAC5BuI,EAAYxB,MACxB5kJ,EAAQiJ,aAAci9I,GAAoBjtI,IAAI1tC,GAA0BA,EAAnBw6K,GAAYx6K,GAAY66K,EAAYxB,MAAMr5K,GAEvG,CCNA,SAAS+6K,GAA4B10E,GACjC,IAAI/4E,EAAQ+4E,EAAM/4E,MACd0tJ,EAAY,CAAC,EACjB,IAAK,IAAIh7K,KAAOstB,GACR6mJ,GAAc7mJ,EAAMttB,KAASk0K,GAAoBl0K,EAAKqmG,MACtD20E,EAAUh7K,GAAOstB,EAAMttB,IAG/B,OAAOg7K,CACX,CCTA,SAASD,GAA4B10E,GACjC,IAAI20E,EAAYC,GAA8B50E,GAC9C,IAAK,IAAIrmG,KAAOqmG,EAAO,CACnB,GAAI8tE,GAAc9tE,EAAMrmG,IAEpBg7K,EADwB,MAARh7K,GAAuB,MAARA,EAAc,OAASA,EAAIuc,cAAgBvc,GACnDqmG,EAAMrmG,EAErC,CACA,OAAOg7K,CACX,CCZA,SAASE,GAAoB33K,GACzB,MAAoB,kBAANA,GAAqC,oBAAZA,EAAEgF,KAC7C,CCFA,IAAI4yK,GAAoB,SAAU53K,GAC9B,OAAO/D,MAAMC,QAAQ8D,EACzB,ECGI63K,GAA+B,SAAU73K,GAEzC,OAAO43K,GAAkB53K,GAAKA,EAAEA,EAAEnE,OAAS,IAAM,EAAImE,CACzD,ECAA,SAAS83K,GAAmBv5K,GACxB,IAAIw5K,EAAiBnH,GAAcryK,GAASA,EAAMyL,MAAQzL,EAC1D,ODRgB,SAAUyB,GAC1B,OAAOknH,QAAQlnH,GAAkB,kBAANA,GAAkBA,EAAEg4K,KAAOh4K,EAAEi4K,QAC5D,CCMWC,CAAcH,GACfA,EAAeE,UACfF,CACV,CCJA,SAASI,GAAUtzJ,EAAIi+E,EAAO3hG,EAAS4pK,GACnC,IAAIyM,EAA8B3yJ,EAAG2yJ,4BAA6BY,EAAoBvzJ,EAAGuzJ,kBAAmBC,EAAUxzJ,EAAGwzJ,QACrH71E,EAAQ,CACR4wE,aAAckF,GAAiBx1E,EAAO3hG,EAAS4pK,EAAiByM,GAChEF,YAAac,KAKjB,OAHIC,IACA71E,EAAMgtE,MAAQ,SAAUx3E,GAAY,OAAOqgF,EAAQv1E,EAAO9K,EAAUwK,EAAQ,GAEzEA,CACX,CACA,IAAI+1E,GAAqB,SAAU5rH,GAC/B,OAAO,SAAUm2C,EAAO8mE,GACpB,IAAIzoK,GAAU+nG,EAAAA,EAAAA,YAAW4gE,IACrBiB,GAAkB7hE,EAAAA,EAAAA,YAAW6gE,IACjC,OAAOH,EACDuO,GAAUxrH,EAAQm2C,EAAO3hG,EAAS4pK,GAClCqC,IAAY,WACV,OAAO+K,GAAUxrH,EAAQm2C,EAAO3hG,EAAS4pK,EAC7C,GACR,CACJ,EACA,SAASuN,GAAiBx1E,EAAO3hG,EAAS4pK,EAAiByN,GACvD,IAAIviK,EAAS,CAAC,EACVq1J,GAAwH,KAA3E,OAApBP,QAAgD,IAApBA,OAA6B,EAASA,EAAgBlwD,SAC3G49D,EAAeD,EAAmB11E,GACtC,IAAK,IAAIrmG,KAAOg8K,EACZxiK,EAAOxZ,GAAOq7K,GAAmBW,EAAah8K,IAElD,IAAIo+G,EAAU/X,EAAM+X,QAAS6xD,EAAU5pE,EAAM4pE,QACzCgM,EAAwBjM,GAA2B3pE,GACnD61E,EAAgB5L,GAAmBjqE,GACnC3hG,GACAw3K,IACCD,IACiB,IAAlB51E,EAAMmqE,UACM,OAAZpyD,QAAgC,IAAZA,IAAgCA,EAAU15G,EAAQ05G,SAC1D,OAAZ6xD,QAAgC,IAAZA,IAAgCA,EAAUvrK,EAAQurK,UAE1E,IAAIkM,EAA4BtN,IAAqC,IAAZzwD,EACrDg+D,EAAeD,EAA4BlM,EAAU7xD,EACrDg+D,GACwB,mBAAjBA,IACNlB,GAAoBkB,KACV58K,MAAMC,QAAQ28K,GAAgBA,EAAe,CAACA,IACpD/uK,SAAQ,SAAUihI,GACnB,IAAI+tC,EAAWhN,GAAwBhpE,EAAOioC,GAC9C,GAAK+tC,EAAL,CAEA,IAAIC,EAAgBD,EAASC,cAAeD,EAAS/tF,WAAY,IAAIriD,EAAS+/H,GAAOqQ,EAAU,CAAC,gBAAiB,eACjH,IAAK,IAAIr8K,KAAOisC,EAAQ,CACpB,IAAIswI,EAActwI,EAAOjsC,GACzB,GAAIR,MAAMC,QAAQ88K,GAQdA,EAAcA,EAHFJ,EACNI,EAAYn9K,OAAS,EACrB,GAGU,OAAhBm9K,IACA/iK,EAAOxZ,GAAOu8K,EAEtB,CACA,IAAK,IAAIv8K,KAAOs8K,EACZ9iK,EAAOxZ,GAAOs8K,EAAct8K,EAnBtB,CAoBd,IAEJ,OAAOwZ,CACX,CC1EA,ICNIgjK,GDMAC,GAAkB,CAClBhL,eAAgBqK,GAAmB,CAC/Bf,4BAA6BA,GAC7BY,kBAAmB9B,GACnB+B,QAAS,SAAUv1E,EAAO9K,EAAUnzE,GAChC,IAAIyyJ,EAAczyJ,EAAGyyJ,YAAalE,EAAevuJ,EAAGuuJ,aACpD,IACIkE,EAAYvB,WAEJ,oBADG/9E,EAASmhF,QAEVnhF,EAASmhF,UACTnhF,EAASl2F,uBAUvB,CARA,MAAOhD,GAEHw4K,EAAYvB,WAAa,CACrB/0K,EAAG,EACH1B,EAAG,EACHuB,MAAO,EACPC,OAAQ,EAEhB,CACA00K,GAAc8B,EAAalE,EAAc,CAAEU,4BAA4B,GAAShxE,EAAMuwE,mBACtFgE,GAAUr/E,EAAUs/E,EACxB,KE1BJ8B,GAAmB,CACnBlL,eAAgBqK,GAAmB,CAC/Bf,4BAA6BA,GAC7BY,kBAAmB/D,MCL3B,SAASgF,GAAY3wI,EAAQ4wI,EAAWn7C,EAAShzH,GAG7C,YAFgB,IAAZA,IAAsBA,EAAU,CAAEutF,SAAS,IAC/ChwD,EAAO4C,iBAAiBguI,EAAWn7C,EAAShzH,GACrC,WAAc,OAAOu9B,EAAO67C,oBAAoB+0F,EAAWn7C,EAAU,CAChF,CAsBA,SAASo7C,GAAYl2E,EAAKi2E,EAAWn7C,EAAShzH,IAC1Cg+F,EAAAA,EAAAA,YAAU,WACN,IAAIj4E,EAAUmyE,EAAI94F,QAClB,GAAI4zH,GAAWjtG,EACX,OAAOmoJ,GAAYnoJ,EAASooJ,EAAWn7C,EAAShzH,EAExD,GAAG,CAACk4F,EAAKi2E,EAAWn7C,EAAShzH,GACjC,CCnCA,SAASquK,GAAanmF,GAElB,MAA4B,qBAAjBomF,cAAgCpmF,aAAiBomF,eACxB,UAAtBpmF,EAAMjC,aAEbiC,aAAiBqmF,UAC5B,CACA,SAASv/C,GAAa9mC,GAElB,QADmBA,EAAM9B,OAE7B,EHTA,SAAW0nF,GACPA,EAAuB,QAAI,UAC3BA,EAAqB,MAAI,aACzBA,EAAmB,IAAI,WACvBA,EAAoB,KAAI,YACxBA,EAAqB,MAAI,aACzBA,EAAsB,OAAI,cAC1BA,EAAoB,KAAI,MAC3B,CARD,CAQGA,KAAkBA,GAAgB,CAAC,IIOtC,IAAIU,GAAmB,CAAE/rF,MAAO,EAAGC,MAAO,GAC1C,SAAS+rF,GAAe96K,EAAG+6K,QACL,IAAdA,IAAwBA,EAAY,QACxC,IACI7oI,EADelyC,EAAEyyF,QAAQ,IAAMzyF,EAAE2yF,eAAe,IACxBkoF,GAC5B,MAAO,CACH34K,EAAGgwC,EAAM6oI,EAAY,KACrBv6K,EAAG0xC,EAAM6oI,EAAY,KAE7B,CACA,SAASC,GAAe9oI,EAAO6oI,GAE3B,YADkB,IAAdA,IAAwBA,EAAY,QACjC,CACH74K,EAAGgwC,EAAM6oI,EAAY,KACrBv6K,EAAG0xC,EAAM6oI,EAAY,KAE7B,CACA,SAASE,GAAiB1mF,EAAOwmF,GAE7B,YADkB,IAAdA,IAAwBA,EAAY,QACjC,CACH7oI,MAAOmpF,GAAa9mC,GACdumF,GAAevmF,EAAOwmF,GACtBC,GAAezmF,EAAOwmF,GAEpC,CACA,IAAIG,GAAc,SAAU77C,EAAS87C,QACE,IAA/BA,IAAyCA,GAA6B,GAC1E,IArC0BC,EAqCtBjiF,EAAW,SAAU5E,GACrB,OAAO8qC,EAAQ9qC,EAAO0mF,GAAiB1mF,GAC3C,EACA,OAAO4mF,GAxCmBC,EAyCCjiF,EAxCpB,SAAU5E,GACb,IAAImmF,EAAenmF,aAAiBqmF,aACZF,GACnBA,GAAiC,IAAjBnmF,EAAMjF,SAEvB8rF,EAAa7mF,EAErB,GAkCM4E,CACV,EC7CIkiF,GAAkB,CAClBC,YAAa,YACbC,YAAa,YACbC,UAAW,UACXC,cAAe,cACfC,YAAa,YACbC,WAAY,WACZC,aAAc,aACdC,aAAc,cAEdC,GAAkB,CAClBR,YAAa,aACbC,YAAa,YACbC,UAAW,WACXC,cAAe,eAEnB,SAASM,GAAoBrkK,GACzB,OCjBOwzJ,IAAsC,OAAzBv4I,OAAOqpJ,cDkBhBtkK,ECfJwzJ,IAAqC,OAAxBv4I,OAAOspJ,aDkBhBH,GAAgBpkK,GCfpBwzJ,IAAoC,OAAvBv4I,OAAOupJ,YDkBhBb,GAAgB3jK,GAEpBA,CACX,CACA,SAASykK,GAAgBvyI,EAAQ4wI,EAAWn7C,EAAShzH,GACjD,OAAOkuK,GAAY3wI,EAAQmyI,GAAoBvB,GAAYU,GAAY77C,EAAuB,gBAAdm7C,GAA8BnuK,EAClH,CACA,SAAS+vK,GAAgB73E,EAAKi2E,EAAWn7C,EAAShzH,GAC9C,OAAOouK,GAAYl2E,EAAKw3E,GAAoBvB,GAAYn7C,GAAW67C,GAAY77C,EAAuB,gBAAdm7C,GAA8BnuK,EAC1H,CErCA,SAASgwK,GAAW3kK,GAChB,IAAI4kK,EAAO,KACX,OAAO,WAIH,OAAa,OAATA,IACAA,EAAO5kK,EAJI,WACX4kK,EAAO,IACX,EAMJ,CACJ,CACA,IAAIC,GAAuBF,GAAW,kBAClCG,GAAqBH,GAAW,gBACpC,SAASI,GAAcrS,GACnB,IAAIkS,GAAO,EACX,GAAa,MAATlS,EACAkS,EAAOE,UAEN,GAAa,MAATpS,EACLkS,EAAOC,SAEN,CACD,IAAIG,EAAmBH,KACnBI,EAAiBH,KACjBE,GAAoBC,EACpBL,EAAO,WACHI,IACAC,GACJ,GAIID,GACAA,IACAC,GACAA,IAEZ,CACA,OAAOL,CACX,CACA,SAASM,KAGL,IAAIC,EAAkBJ,IAAc,GACpC,OAAKI,IAELA,KACO,EACX,CC7CA,SAASC,GAAiB9Q,EAAej2B,EAAU5rF,GAC/C,OAAO,SAAUoqC,EAAO1uD,GACpB,IAAI9f,EACC20J,GAAanmF,KAAUqoF,OAKY,QAAvC72J,EAAKimJ,EAAcU,sBAAmC,IAAP3mJ,GAAyBA,EAAGg3J,UAAU5C,GAAc6C,MAAOjnC,GAC9F,OAAb5rF,QAAkC,IAAbA,GAA+BA,EAASoqC,EAAO1uD,GACxE,CACJ,CCTA,IAAIo3I,GAAgB,SAAhBA,EAA0BpkK,EAAQ2tB,GAClC,QAAKA,IAGI3tB,IAAW2tB,GAITy2I,EAAcpkK,EAAQ2tB,EAAM02I,eAE3C,ECfA,SAASC,GAAiBhzH,GACtB,OAAOkgD,EAAAA,EAAAA,YAAU,WAAc,OAAO,WAAc,OAAOlgD,GAAY,CAAG,GAAG,GACjF,CCJA,IAAMizH,GAAmB,SAAC9xK,EAAGnN,GAAC,OAAK,SAAC+C,GAAC,OAAK/C,EAAEmN,EAAEpK,GAAG,GAC3Cm8K,GAAO,WAAH,2BAAOC,EAAY,yBAAZA,EAAY,uBAAKA,EAAan2J,OAAOi2J,GAAiB,ECD1D,IAAI7iG,ICOjB,IAAIgjG,GAAoB,IAAI7xE,QAMxB8xE,GAAY,IAAI9xE,QAChB+xE,GAAuB,SAAUv9I,GACjC,IAAIna,EAC2C,QAA9CA,EAAKw3J,GAAkBryK,IAAIg1B,EAAM0J,eAA4B,IAAP7jB,GAAyBA,EAAGma,EACvF,EACIw9I,GAA2B,SAAUjvD,GACrCA,EAAQzjH,QAAQyyK,GACpB,EAqBA,SAASE,GAAoBvrJ,EAAS/lB,EAAS89C,GAC3C,IAAIyzH,EArBR,SAAkC73J,GAC9B,IAAI8W,EAAO9W,EAAG8W,KAAMxwB,EAAUs9J,GAAO5jJ,EAAI,CAAC,SACtC83J,EAAahhJ,GAAQ35B,SAIpBs6K,GAAUnyI,IAAIwyI,IACfL,GAAUhvH,IAAIqvH,EAAY,CAAC,GAE/B,IAAIC,EAAgBN,GAAUtyK,IAAI2yK,GAC9BlgL,EAAMi6G,KAAKC,UAAUxrG,GAQzB,OAHKyxK,EAAcngL,KACfmgL,EAAcngL,GAAO,IAAIogL,qBAAqBL,GAA0B5+K,GAAS,CAAE+9B,KAAMA,GAAQxwB,KAE9FyxK,EAAcngL,EACzB,CAEoCqgL,CAAyB3xK,GAGzD,OAFAkxK,GAAkB/uH,IAAIp8B,EAAS+3B,GAC/ByzH,EAA0BK,QAAQ7rJ,GAC3B,WACHmrJ,GAAkB3yF,OAAOx4D,GACzBwrJ,EAA0BM,UAAU9rJ,EACxC,CACJ,CC7BA,IAAI+rJ,GAAiB,CACjBrrJ,KAAM,EACNsW,IAAK,GAET,SAASg1I,GAAwBC,EAAe36E,EAAOsoE,EAAejmJ,GAClE,IAAI8W,EAAO9W,EAAG8W,KAAMyhJ,EAAav4J,EAAGoxB,OAAQP,EAAK7wB,EAAGjQ,OAAQA,OAAgB,IAAP8gC,EAAgB,OAASA,EAAI2nI,EAAOx4J,EAAGw4J,MAC5Gl0E,EAAAA,EAAAA,YAAU,WACN,GAAKg0E,EAAL,CAEA,IAAIhyK,EAAU,CACVwwB,KAAe,OAATA,QAA0B,IAATA,OAAkB,EAASA,EAAKpxB,QACvD6yK,WAAYA,EACZ7lG,UAA6B,kBAAX3iE,EAAsBA,EAASqoK,GAAeroK,IAgCpE,OAAO6nK,GAAoB3R,EAAchnD,cAAe34G,GA9B7B,SAAU6zB,GACjC,IAAIna,EACAy4J,EAAiBt+I,EAAMs+I,eAI3B,GAAI96E,EAAM+6E,WAAaD,IAEvB96E,EAAM+6E,SAAWD,GAKbD,GAASC,IAAkB96E,EAAMg7E,gBAArC,CAGSF,IACL96E,EAAMg7E,gBAAiB,GAEa,QAAvC34J,EAAKimJ,EAAcU,sBAAmC,IAAP3mJ,GAAyBA,EAAGg3J,UAAU5C,GAAcwE,OAAQH,GAK5G,IAAIx6E,EAAQgoE,EAAcsB,WACtBnjH,EAAWq0H,EACTx6E,EAAM46E,gBACN56E,EAAM66E,gBACC,OAAb10H,QAAkC,IAAbA,GAA+BA,EAASjqB,EAV7D,CAWJ,GAnCU,CAqCd,GAAG,CAACm+I,EAAexhJ,EAAMyhJ,EAAYxoK,GACzC,CAMA,SAASgpK,GAA+BT,EAAe36E,EAAOsoE,EAAejmJ,GACzE,IAAI6wB,EAAK7wB,EAAG2a,SAAUA,OAAkB,IAAPkW,GAAuBA,GACxDyzD,EAAAA,EAAAA,YAAU,WACDg0E,GAAkB39I,GAavBs7F,uBAAsB,WAClB,IAAIj2G,EACJ29E,EAAMg7E,gBAAiB,EACvB,IAAIE,EAAkB5S,EAAcsB,WAAWsR,gBAC3B,OAApBA,QAAgD,IAApBA,GAAsCA,EAAgB,MAC1C,QAAvC74J,EAAKimJ,EAAcU,sBAAmC,IAAP3mJ,GAAyBA,EAAGg3J,UAAU5C,GAAcwE,QAAQ,EAChH,GACJ,GAAG,CAACN,GACR,CChGA,IAAIU,GAA0B,SAAU7iE,GAAQ,OAAO,SAAUlY,GAE7D,OADAkY,EAAKlY,GACE,IACX,CAAG,ECGCg7E,GAAoB,CACpBxU,OAAQuU,IFDZ,SAAqBh5J,GACjB,IAAIimJ,EAAgBjmJ,EAAGimJ,cAAeiT,EAAcl5J,EAAGk5J,YAAaL,EAAkB74J,EAAG64J,gBAAiBC,EAAkB94J,EAAG84J,gBAAiBjoI,EAAK7wB,EAAGm5J,SAAUA,OAAkB,IAAPtoI,EAAgB,CAAC,EAAIA,EAC9L8sD,GAAQiH,EAAAA,EAAAA,QAAO,CACf+zE,gBAAgB,EAChBD,UAAU,IAEVJ,EAAgBj2D,QAAQ62D,GAAeL,GAAmBC,GAC1DK,EAASX,MAAQ76E,EAAMj4F,QAAQizK,iBAC/BL,GAAgB,IAC8B,qBAAzBN,qBACnBe,GACAV,IACMC,EAAe36E,EAAMj4F,QAASugK,EAAekT,EAC7D,IEXI5U,IAAKyU,ICIT,SAAuBh5J,GACnB,IAAIo5J,EAAQp5J,EAAGo5J,MAAOC,EAAar5J,EAAGq5J,WAAYC,EAAct5J,EAAGs5J,YAAatR,EAAWhoJ,EAAGgoJ,SAAU/B,EAAgBjmJ,EAAGimJ,cACvHsT,EAAoBH,GAASC,GAAcC,GAAetR,EAC1DwR,GAAa50E,EAAAA,EAAAA,SAAO,GACpB60E,GAA4B70E,EAAAA,EAAAA,QAAO,MAInC80E,EAAe,CACf7lF,UAAWwlF,GAAcD,GAASE,GAAe5b,IAErD,SAASic,IACL,IAAI35J,EACyC,QAA5CA,EAAKy5J,EAA0B/zK,eAA4B,IAAPsa,GAAyBA,EAAGnoB,KAAK4hL,GACtFA,EAA0B/zK,QAAU,IACxC,CACA,SAASk0K,IACL,IAAI55J,EAIJ,OAHA25J,IACAH,EAAW9zK,SAAU,EACmB,QAAvCsa,EAAKimJ,EAAcU,sBAAmC,IAAP3mJ,GAAyBA,EAAGg3J,UAAU5C,GAAcyF,KAAK,IACjGhD,IACZ,CACA,SAASjZ,EAAYpvE,EAAO1uD,GACnB85I,MAMJ1C,GAAcjR,EAAchnD,cAAezwB,EAAM3qD,QAElC,OAAVu1I,QAA4B,IAAVA,GAA4BA,EAAM5qF,EAAO1uD,GAD3C,OAAhBw5I,QAAwC,IAAhBA,GAAkCA,EAAY9qF,EAAO1uD,GAEvF,CACA,SAASg6I,EAAgBtrF,EAAO1uD,GACvB85I,MAEW,OAAhBN,QAAwC,IAAhBA,GAAkCA,EAAY9qF,EAAO1uD,GACjF,CACA,SAAS49H,EAAclvE,EAAO1uD,GAC1B,IAAI9f,EACJ25J,IACIH,EAAW9zK,UAEf8zK,EAAW9zK,SAAU,EACrB+zK,EAA0B/zK,QAAU4xK,GAAKlB,GAAgBxpJ,OAAQ,YAAagxI,EAAa8b,GAAetD,GAAgBxpJ,OAAQ,gBAAiBktJ,EAAiBJ,IAI5H,QAAvC15J,EAAKimJ,EAAcU,sBAAmC,IAAP3mJ,GAAyBA,EAAGg3J,UAAU5C,GAAcyF,KAAK,GAC1F,OAAfR,QAAsC,IAAfA,GAAiCA,EAAW7qF,EAAO1uD,GAC9E,CACAu2I,GAAgBpQ,EAAe,cAAesT,EAAoB7b,OAAgB92J,EAAW8yK,GAC7FtC,GAAiBuC,EACrB,IDzDItoF,MAAO2nF,IEAX,SAAyBh5J,GACrB,IAAIioJ,EAAajoJ,EAAGioJ,WAAYhC,EAAgBjmJ,EAAGimJ,cASnDyO,GAAYzO,EAAe,QAASgC,EARtB,WACV,IAAIjoJ,EACoC,QAAvCA,EAAKimJ,EAAcU,sBAAmC,IAAP3mJ,GAAyBA,EAAGg3J,UAAU5C,GAAc2F,OAAO,EAC/G,OAK2DnzK,GAC3D8tK,GAAYzO,EAAe,OAAQgC,EALtB,WACT,IAAIjoJ,EACoC,QAAvCA,EAAKimJ,EAAcU,sBAAmC,IAAP3mJ,GAAyBA,EAAGg3J,UAAU5C,GAAc2F,OAAO,EAC/G,OAEyDnzK,EAC7D,IFXI09J,MAAO0U,IROX,SAAyBh5J,GACrB,IAAIg6J,EAAeh6J,EAAGg6J,aAAcC,EAAaj6J,EAAGi6J,WAAYnS,EAAa9nJ,EAAG8nJ,WAAY7B,EAAgBjmJ,EAAGimJ,cAC/GoQ,GAAgBpQ,EAAe,eAAgB+T,GAAgBlS,EACzDiP,GAAiB9Q,GAAe,EAAM+T,QACtCpzK,EAAW,CAAEitF,SAAUmmF,IAC7B3D,GAAgBpQ,EAAe,eAAgBgU,GAAcnS,EACvDiP,GAAiB9Q,GAAe,EAAOgU,QACvCrzK,EAAW,CAAEitF,SAAUomF,GACjC,KWvBIhwJ,GAAU,EACViwJ,GAAc,WAAc,OAAOjwJ,IAAW,EAC9Ck7E,GAAQ,WAAc,OAAOojE,GAAY2R,GAAc,ECuB3D,SAASC,KACL,IAAI79K,GAAU+nG,EAAAA,EAAAA,YAAW6gE,IACzB,GAAgB,OAAZ5oK,EACA,MAAO,EAAC,EAAM,MAClB,IAAI89K,EAAY99K,EAAQ89K,UAAWC,EAAiB/9K,EAAQ+9K,eAAgBC,EAAWh+K,EAAQg+K,SAI3F9gI,EAAK2rD,MACTb,EAAAA,EAAAA,YAAU,WAAc,OAAOg2E,EAAS9gI,EAAK,GAAG,IAEhD,OAAQ4gI,GAAaC,EAAiB,EAAC,EADpB,WAAc,OAA0B,OAAnBA,QAA8C,IAAnBA,OAA4B,EAASA,EAAe7gI,EAAK,GAC9D,EAAC,EACnE,CCvCA,SAAS+gI,GAAevgL,EAAMqL,GAC1B,IAAKjO,MAAMC,QAAQgO,GACf,OAAO,EACX,IAAIm1K,EAAan1K,EAAKrO,OACtB,GAAIwjL,IAAexgL,EAAKhD,OACpB,OAAO,EACX,IAAK,IAAIF,EAAI,EAAGA,EAAI0jL,EAAY1jL,IAC5B,GAAIuO,EAAKvO,KAAOkD,EAAKlD,GACjB,OAAO,EAEf,OAAO,CACX,CCXA,IAAMs1K,GAAQ,SAACp8J,EAAKzS,EAAKpC,GAAC,OAAKmC,KAAK0S,IAAI1S,KAAKC,IAAIpC,EAAG6U,GAAMzS,EAAI,ECGxDk9K,GAAU,KAKhB,SAASC,GAAW,GAA4D,IACxEC,EACAC,EAFwE,IAA1DtwJ,SAAAA,OAAQ,IAAG,MAAG,MAAEuwJ,OAAAA,OAAM,IAAG,MAAI,MAAEnT,SAAAA,OAAQ,IAAG,IAAC,MAAEoT,KAAAA,OAAI,IAAG,IAAC,EAInEC,EAAe,EAAIF,EACvBE,EAAe3O,GAPA,IACA,EAM8B2O,GAC7CzwJ,EAAW8hJ,GAVK,IACA,GAS2B9hJ,EAAW,KAClDywJ,EAAe,GACfJ,EAAW,SAACK,GACR,IAAMC,EAAmBD,EAAeD,EAClC3rK,EAAQ6rK,EAAmB3wJ,EAC3B/kB,EAAI01K,EAAmBvT,EACvBtvK,EAAI8iL,GAAgBF,EAAcD,GAClCtvK,EAAInO,KAAK6O,KAAKiD,GACpB,OAAOqrK,GAAWl1K,EAAInN,EAAKqT,CAC/B,EACAmvK,EAAa,SAACI,GACV,IACM5rK,EADmB4rK,EAAeD,EACPzwJ,EAC3BnyB,EAAIiX,EAAQs4J,EAAWA,EACvBztK,EAAIqD,KAAK8O,IAAI2uK,EAAc,GAAKz9K,KAAK8O,IAAI4uK,EAAc,GAAK1wJ,EAC5D9vB,EAAI8C,KAAK6O,KAAKiD,GACd1U,EAAIwgL,GAAgB59K,KAAK8O,IAAI4uK,EAAc,GAAID,GAErD,QADgBJ,EAASK,GAAgBP,GAAU,GAAK,EAAI,KACzCtiL,EAAI8B,GAAKO,GAAME,CACtC,IAGAigL,EAAW,SAACK,GAGR,OAFU19K,KAAK6O,KAAK6uK,EAAe1wJ,KACxB0wJ,EAAetT,GAAYp9I,EAAW,GAC1C,IACX,EACAswJ,EAAa,SAACI,GAGV,OAFU19K,KAAK6O,KAAK6uK,EAAe1wJ,IACIA,EAAWA,GAAvCo9I,EAAWsT,GAE1B,GAEJ,IACMA,EAmBV,SAAyBL,EAAUC,EAAYO,GAE3C,IADA,IAAIhhL,EAASghL,EACJrkL,EAAI,EAAGA,EAHG,GAGiBA,IAChCqD,GAAkBwgL,EAASxgL,GAAUygL,EAAWzgL,GAEpD,OAAOA,CACX,CAzByBihL,CAAgBT,EAAUC,EAD1B,EAAItwJ,GAGzB,GADAA,GAAsB,IAClBu8B,MAAMm0H,GACN,MAAO,CACHK,UAAW,IACXC,QAAS,GACThxJ,SAAAA,GAIJ,IAAM+wJ,EAAY/9K,KAAK8O,IAAI4uK,EAAc,GAAKF,EAC9C,MAAO,CACHO,UAAAA,EACAC,QAAwB,EAAfP,EAAmBz9K,KAAK2jB,KAAK65J,EAAOO,GAC7C/wJ,SAAAA,EAGZ,CASA,SAAS4wJ,GAAgBF,EAAcD,GACnC,OAAOC,EAAe19K,KAAK2jB,KAAK,EAAI85J,EAAeA,EACvD,CCzEA,IAAMQ,GAAe,CAAC,WAAY,UAC5BC,GAAc,CAAC,YAAa,UAAW,QAC7C,SAASC,GAAan1K,EAAS6/B,GAC3B,OAAOA,EAAKpZ,MAAK,SAACn1B,GAAG,YAAsBgP,IAAjBN,EAAQ1O,EAAkB,GACxD,CAWA,SAAS8jL,GAAO17J,GACZ,IAAI,EAAqDA,EAAnDxkB,KAAAA,OAAI,IAAG,IAAG,IAAyCwkB,EAAvCzkB,GAAAA,OAAE,IAAG,IAAG,IAA+BykB,EAA7B27J,UAAAA,OAAS,IAAG,IAAC,EAAEC,EAAc57J,EAAd47J,UAAkBt1K,EAAUs9J,GAAO5jJ,EAAI,CAAC,OAAQ,KAAM,YAAa,cACxG29E,EAAQ,CAAEvjG,MAAM,EAAOV,MAAO8B,GACpC,EAbJ,SAA0B8K,GACtB,IAAIu1K,EAAgBpkL,OAAOuB,OAAO,CAAE0uK,SAAU,EAAK2T,UAAW,IAAKC,QAAS,GAAIR,KAAM,EAAKgB,wBAAwB,GAASx1K,GAC5H,IAAKm1K,GAAan1K,EAASk1K,KACvBC,GAAan1K,EAASi1K,IAAe,CACrC,IAAMQ,EAAUrB,GAAWp0K,IAC3Bu1K,EAAgBpkL,OAAOuB,OAAOvB,OAAOuB,OAAOvB,OAAOuB,OAAO,CAAC,EAAG6iL,GAAgBE,GAAU,CAAErU,SAAU,EAAKoT,KAAM,KACjGgB,wBAAyB,CAC3C,CACA,OAAOD,CACX,CAIoFG,CAAiB11K,GAA3F+0K,EAAS,EAATA,UAAWC,EAAO,EAAPA,QAASR,EAAI,EAAJA,KAAMpT,EAAQ,EAARA,SAAUp9I,EAAQ,EAARA,SAAUwxJ,EAAsB,EAAtBA,uBAChDG,EAAgBC,GAChBC,EAAkBD,GACtB,SAASE,IACL,IAAMC,EAAkB3U,GAAaA,EAAW,IAAQ,EAClD4U,EAAe/gL,EAAKC,EACpBu/K,EAAeO,GAAW,EAAIh+K,KAAK2jB,KAAKo6J,EAAYP,IACpDyB,EAAsBj/K,KAAK2jB,KAAKo6J,EAAYP,GAAQ,IAI1D,QAHkBl0K,IAAdg1K,IACAA,EAAYt+K,KAAK0S,IAAI1S,KAAKkjB,IAAIjlB,EAAKC,GAAQ,IAAK,KAEhDu/K,EAAe,EAAG,CAClB,IAAMyB,EAActB,GAAgBqB,EAAqBxB,GACzDkB,EAAgB,SAAChjL,GACb,IAAM0hL,EAAWr9K,KAAK6O,KAAK4uK,EAAewB,EAAsBtjL,GAChE,OAAQsC,EACJo/K,IACO0B,EACCtB,EAAewB,EAAsBD,GACrCE,EACAl/K,KAAKmjB,IAAI+7J,EAAcvjL,GACvBqjL,EAAeh/K,KAAKojB,IAAI87J,EAAcvjL,GACtD,EACAkjL,EAAkB,SAACljL,GACf,IAAM0hL,EAAWr9K,KAAK6O,KAAK4uK,EAAewB,EAAsBtjL,GAChE,OAAQ8hL,EACJwB,EACA5B,GACEr9K,KAAKmjB,IAAI+7J,EAAcvjL,IACpBojL,EACGtB,EACIwB,EACAD,GACRE,EACAF,EAAeh/K,KAAKojB,IAAI87J,EAAcvjL,IAC1C0hL,GACKr9K,KAAKojB,IAAI87J,EAAcvjL,IACnBojL,EACGtB,EACIwB,EACAD,GACRE,EACIF,EACAh/K,KAAKmjB,IAAI+7J,EAAcvjL,GAC3C,CACJ,MACK,GAAqB,IAAjB8hL,EACLkB,EAAgB,SAAChjL,GAAC,OAAKsC,EACnB+B,KAAK6O,KAAKowK,EAAsBtjL,IAC3BqjL,GACID,EAAkBE,EAAsBD,GACrCrjL,EAAE,MAEjB,CACD,IAAMwjL,EAAoBF,EAAsBj/K,KAAK2jB,KAAK85J,EAAeA,EAAe,GACxFkB,EAAgB,SAAChjL,GACb,IAAM0hL,EAAWr9K,KAAK6O,KAAK4uK,EAAewB,EAAsBtjL,GAC1DyjL,EAAWp/K,KAAK0S,IAAIysK,EAAoBxjL,EAAG,KACjD,OAAQsC,EACHo/K,IACK0B,EACEtB,EAAewB,EAAsBD,GACrCh/K,KAAKq/K,KAAKD,GACVD,EACIH,EACAh/K,KAAKs/K,KAAKF,IAClBD,CACZ,CACJ,CACJ,CAEA,OADAL,IACO,CACHpiL,KAAM,SAACf,GACH,IAAMyM,EAAUu2K,EAAchjL,GAC9B,GAAK6iL,EAQDn+E,EAAMvjG,KAAOnB,GAAKqxB,MARO,CACzB,IAAM88I,EAAuC,IAArB+U,EAAgBljL,GAClC4jL,EAA2Bv/K,KAAKkjB,IAAI4mJ,IAAoBuU,EACxDmB,EAA+Bx/K,KAAKkjB,IAAIjlB,EAAKmK,IAAYk2K,EAC/Dj+E,EAAMvjG,KACFyiL,GAA4BC,CACpC,CAKA,OADAn/E,EAAMjkG,MAAQikG,EAAMvjG,KAAOmB,EAAKmK,EACzBi4F,CACX,EACAo/E,WAAY,WACRrV,GAAYA,EAAS,MACR,CAACnsK,EAAIC,GAAjBA,EAAI,KAAED,EAAE,KACT6gL,GACJ,EAER,CACAV,GAAOsB,mBAAqB,SAACz3K,EAAGnN,GAAC,MAAkB,kBAANmN,GAA+B,kBAANnN,CAAc,EACpF,IAAM8jL,GAAO,SAACe,GAAE,OAAK,CAAC,ECpHhBxd,GAAW,SAACjkK,EAAMD,EAAI7B,GACxB,IAAMwjL,EAAmB3hL,EAAKC,EAC9B,OAA4B,IAArB0hL,EAAyB,GAAKxjL,EAAQ8B,GAAQ0hL,CACzD,ECHM/J,GAAM,SAAC33K,EAAMD,EAAIkkK,GAAQ,OAAMA,EAAWjkK,EAAOikK,EAAWlkK,EAAKC,CAAI,ECErE2hL,GAAgB,SAACv3K,EAAMw3K,GAAQ,OAAK,SAACjiL,GACvC,OAAOknH,QAASl7C,GAAShsE,IAAMqxK,GAAiB1uI,KAAK3iC,IAAMA,EAAEolJ,WAAW36I,IACnEw3K,GAAY3lL,OAAOC,UAAUf,eAAekB,KAAKsD,EAAGiiL,GAC7D,CAAC,EACKC,GAAa,SAACC,EAAOC,EAAOC,GAAK,OAAK,SAACriL,GAAM,MAC/C,IAAKgsE,GAAShsE,GACV,OAAOA,EACX,MAAyBA,EAAEm5C,MAAMg4H,IAAW,eAArC/mK,EAAC,KAAEnN,EAAC,KAAEqT,EAAC,KAAE8I,EAAK,KACrB,OAAO,EAAP,aACK+oK,EAAQr6G,WAAW19D,KAAE,SACrBg4K,EAAQt6G,WAAW7qE,KAAE,SACrBolL,EAAQv6G,WAAWx3D,KAAE,sBACL7E,IAAV2N,EAAsB0uD,WAAW1uD,GAAS,GAAC,CAE1D,CAAC,ECZKkpK,GAAerR,GAAM,EAAG,KACxBsR,GAAUjmL,OAAOuB,OAAOvB,OAAOuB,OAAO,CAAC,EAAGsX,IAAS,CAAEwX,UAAW,SAAC3sB,GAAC,OAAKmC,KAAKqX,MAAM8oK,GAAatiL,GAAG,IAClGma,GAAO,CACTwoB,KAAMq/I,GAAc,MAAO,OAC3B/pK,MAAOiqK,GAAW,MAAO,QAAS,QAClCv1J,UAAW,gBAAGpT,EAAG,EAAHA,IAAKD,EAAK,EAALA,MAAOD,EAAI,EAAJA,KAAI,IAAED,MAAOopK,OAAO,IAAG,IAAC,QAAO,QACrDD,GAAQ51J,UAAUpT,GAClB,KACAgpK,GAAQ51J,UAAUrT,GAClB,KACAipK,GAAQ51J,UAAUtT,GAClB,KACA63J,GAAS93J,GAAMuT,UAAU61J,IACzB,GAAG,GCcX,IAAMntK,GAAM,CACRstB,KAAMq/I,GAAc,KACpB/pK,MA9BJ,SAAkBjY,GACd,IAAI4Y,EAAI,GACJrZ,EAAI,GACJtC,EAAI,GACJmN,EAAI,GAiBR,OAhBIpK,EAAEnE,OAAS,GACX+c,EAAI5Y,EAAEisC,OAAO,EAAG,GAChB1sC,EAAIS,EAAEisC,OAAO,EAAG,GAChBhvC,EAAI+C,EAAEisC,OAAO,EAAG,GAChB7hC,EAAIpK,EAAEisC,OAAO,EAAG,KAGhBrzB,EAAI5Y,EAAEisC,OAAO,EAAG,GAChB1sC,EAAIS,EAAEisC,OAAO,EAAG,GAChBhvC,EAAI+C,EAAEisC,OAAO,EAAG,GAChB7hC,EAAIpK,EAAEisC,OAAO,EAAG,GAChBrzB,GAAKA,EACLrZ,GAAKA,EACLtC,GAAKA,EACLmN,GAAKA,GAEF,CACHmP,IAAK7I,SAASkI,EAAG,IACjBU,MAAO5I,SAASnR,EAAG,IACnB8Z,KAAM3I,SAASzT,EAAG,IAClBmc,MAAOhP,EAAIsG,SAAStG,EAAG,IAAM,IAAM,EAE3C,EAIIuiB,UAAWxS,GAAKwS,WC7BdzS,GAAO,CACTyoB,KAAMq/I,GAAc,MAAO,OAC3B/pK,MAAOiqK,GAAW,MAAO,aAAc,aACvCv1J,UAAW,YAAwD,IAArD7S,EAAG,EAAHA,IAAKE,EAAU,EAAVA,WAAYC,EAAS,EAATA,UAAS,IAAEb,MAAOopK,OAAO,IAAG,IAAC,EACxD,MAAQ,QACJrgL,KAAKqX,MAAMM,GACX,KACA03J,GAAQ7kJ,UAAUukJ,GAASl3J,IAC3B,KACAw3J,GAAQ7kJ,UAAUukJ,GAASj3J,IAC3B,KACAi3J,GAAS93J,GAAMuT,UAAU61J,IACzB,GACR,GClBJ,SAASC,GAASrlL,EAAGikG,EAAGvjG,GAKpB,OAJIA,EAAI,IACJA,GAAK,GACLA,EAAI,IACJA,GAAK,GACLA,EAAI,EAAI,EACDV,EAAc,GAATikG,EAAIjkG,GAASU,EACzBA,EAAI,GACGujG,EACPvjG,EAAI,EAAI,EACDV,GAAKikG,EAAIjkG,IAAM,EAAI,EAAIU,GAAK,EAChCV,CACX,CACA,SAASslL,GAAW,GAAuC,IAArC5oK,EAAG,EAAHA,IAAKE,EAAU,EAAVA,WAAYC,EAAS,EAATA,UAAWb,EAAK,EAALA,MAC9CU,GAAO,IAEPG,GAAa,IACb,IAAIV,EAAM,EACND,EAAQ,EACRD,EAAO,EACX,GALAW,GAAc,IAQT,CACD,IAAMqnF,EAAIpnF,EAAY,GAChBA,GAAa,EAAID,GACjBC,EAAYD,EAAaC,EAAYD,EACrC5c,EAAI,EAAI6c,EAAYonF,EAC1B9nF,EAAMkpK,GAASrlL,EAAGikG,EAAGvnF,EAAM,EAAI,GAC/BR,EAAQmpK,GAASrlL,EAAGikG,EAAGvnF,GACvBT,EAAOopK,GAASrlL,EAAGikG,EAAGvnF,EAAM,EAAI,EACpC,MAVIP,EAAMD,EAAQD,EAAOY,EAWzB,MAAO,CACHV,IAAKpX,KAAKqX,MAAY,IAAND,GAChBD,MAAOnX,KAAKqX,MAAc,IAARF,GAClBD,KAAMlX,KAAKqX,MAAa,IAAPH,GACjBD,MAAAA,EAER,CCjCA,IAAMupK,GAAiB,SAACtiL,EAAMD,EAAIJ,GAC9B,IAAM4iL,EAAWviL,EAAOA,EAClBwiL,EAASziL,EAAKA,EACpB,OAAO+B,KAAK2jB,KAAK3jB,KAAKC,IAAI,EAAGpC,GAAK6iL,EAASD,GAAYA,GAC3D,EACME,GAAa,CAACztK,GAAK8E,GAAMD,IACzB6oK,GAAe,SAAC/iL,GAAC,OAAK8iL,GAAWthL,MAAK,SAACiJ,GAAI,OAAKA,EAAKk4B,KAAK3iC,EAAE,GAAC,EAC7DgjL,GAAgB,SAACvqK,GAAK,iBAASA,EAAK,yEACpCwqK,GAAW,SAAC5iL,EAAMD,GACpB,IAAI8iL,EAAgBH,GAAa1iL,GAC7B8iL,EAAcJ,GAAa3iL,GACJ4iL,GAAc3iL,GAChB2iL,GAAc5iL,GACvC,IAAIgjL,EAAYF,EAAcjrK,MAAM5X,GAChCgjL,EAAUF,EAAYlrK,MAAM7X,GAC5B8iL,IAAkBhpK,KAClBkpK,EAAYV,GAAWU,GACvBF,EAAgB/oK,IAEhBgpK,IAAgBjpK,KAChBmpK,EAAUX,GAAWW,GACrBF,EAAchpK,IAElB,IAAMmpK,EAAUhnL,OAAOuB,OAAO,CAAC,EAAGulL,GAClC,OAAO,SAACpjL,GACJ,IAAK,IAAMvD,KAAO6mL,EACF,UAAR7mL,IACA6mL,EAAQ7mL,GAAOkmL,GAAeS,EAAU3mL,GAAM4mL,EAAQ5mL,GAAMuD,IAIpE,OADAsjL,EAAQlqK,MAAQ4+J,GAAIoL,EAAUhqK,MAAOiqK,EAAQjqK,MAAOpZ,GAC7CkjL,EAAcv2J,UAAU22J,EACnC,CACJ,ECjCM7qK,GAAQ,CACVkqB,KAAM,SAAC3iC,GAAC,OAAKma,GAAKwoB,KAAK3iC,IAAMqV,GAAIstB,KAAK3iC,IAAMka,GAAKyoB,KAAK3iC,EAAE,EACxDiY,MAAO,SAACjY,GACJ,OAAIma,GAAKwoB,KAAK3iC,GACHma,GAAKlC,MAAMjY,GAEbka,GAAKyoB,KAAK3iC,GACRka,GAAKjC,MAAMjY,GAGXqV,GAAI4C,MAAMjY,EAEzB,EACA2sB,UAAW,SAAC3sB,GACR,OAAOgsE,GAAShsE,GACVA,EACAA,EAAExE,eAAe,OACb2e,GAAKwS,UAAU3sB,GACfka,GAAKyS,UAAU3sB,EAC7B,GCpBEujL,GAAa,OACbC,GAAc,OAOpB,SAASC,GAAQzjL,GACI,kBAANA,IACPA,EAAI,GAAH,OAAMA,IACX,IAAMiW,EAAS,GACXytK,EAAY,EACVC,EAAS3jL,EAAEm5C,MAAMi4H,IACnBuS,IACAD,EAAYC,EAAO9nL,OACnBmE,EAAIA,EAAEq5B,QAAQ+3I,GAAYmS,IAC1BttK,EAAOja,KAAI,MAAXia,GAAM,OAAS0tK,EAAOr4K,IAAImN,GAAMR,UAEpC,IAAM0oB,EAAU3gC,EAAEm5C,MAAMg4H,IAKxB,OAJIxwI,IACA3gC,EAAIA,EAAEq5B,QAAQ83I,GAAYqS,IAC1BvtK,EAAOja,KAAI,MAAXia,GAAM,OAAS0qB,EAAQr1B,IAAI6J,GAAO8C,UAE/B,CAAEhC,OAAAA,EAAQytK,UAAAA,EAAWE,UAAW5jL,EAC3C,CACA,SAASiY,GAAMjY,GACX,OAAOyjL,GAAQzjL,GAAGiW,MACtB,CACA,SAAS4tK,GAAkB7jL,GACvB,MAAyCyjL,GAAQzjL,GAAzCiW,EAAM,EAANA,OAAQytK,EAAS,EAATA,UAAWE,EAAS,EAATA,UACrBE,EAAY7tK,EAAOpa,OACzB,OAAO,SAACmE,GAEJ,IADA,IAAIwuD,EAASo1H,EACJjoL,EAAI,EAAGA,EAAImoL,EAAWnoL,IAC3B6yD,EAASA,EAAOn1B,QAAQ19B,EAAI+nL,EAAYH,GAAaC,GAAa7nL,EAAI+nL,EAAYjrK,GAAMkU,UAAU3sB,EAAErE,IAAMu1K,GAASlxK,EAAErE,KAEzH,OAAO6yD,CACX,CACJ,CACA,IAAMu1H,GAAuB,SAAC/jL,GAAC,MAAkB,kBAANA,EAAiB,EAAIA,CAAC,EAMjE,IAAMgkL,GAAU,CAAErhJ,KA5ClB,SAAc3iC,GACV,IAAI6kB,EAAI6wB,EAAIwD,EAAIa,EAChB,OAAQ2R,MAAM1rD,IACVgsE,GAAShsE,KAC6E,QAApF01C,EAAoC,QAA9B7wB,EAAK7kB,EAAEm5C,MAAMg4H,WAAgC,IAAPtsJ,OAAgB,EAASA,EAAGhpB,cAA2B,IAAP65C,EAAgBA,EAAK,IAA2F,QAApFqE,EAAoC,QAA9Bb,EAAKl5C,EAAEm5C,MAAMi4H,WAAgC,IAAPl4H,OAAgB,EAASA,EAAGr9C,cAA2B,IAAPk+C,EAAgBA,EAAK,GAAK,CACxP,EAuCwB9hC,MAAAA,GAAO4rK,kBAAAA,GAAmBI,kBALlD,SAA2BjkL,GACvB,IAAMkkL,EAASjsK,GAAMjY,GAErB,OADoB6jL,GAAkB7jL,EAC/BmkL,CAAYD,EAAO54K,IAAIy4K,IAClC,GC5CMK,GAAQ,SAACpkL,GAAC,MAAkB,kBAANA,CAAc,ECE1C,SAASqkL,GAAS1hC,EAAQj6G,GACtB,OAAI07I,GAAMzhC,GACC,SAAC3iJ,GAAC,OAAKg4K,GAAIr1B,EAAQj6G,EAAQ1oC,EAAE,EAE/ByY,GAAMkqB,KAAKggH,GACTsgC,GAAStgC,EAAQj6G,GAGjB47I,GAAW3hC,EAAQj6G,EAElC,CACA,IAAM67I,GAAW,SAAClkL,EAAMD,GACpB,IAAMouD,GAAS,OAAInuD,GACbyjL,EAAYt1H,EAAO3yD,OACnB2oL,EAAankL,EAAKiL,KAAI,SAACm5K,EAAU9oL,GAAC,OAAK0oL,GAASI,EAAUrkL,EAAGzE,GAAG,IACtE,OAAO,SAACqE,GACJ,IAAK,IAAIrE,EAAI,EAAGA,EAAImoL,EAAWnoL,IAC3B6yD,EAAO7yD,GAAK6oL,EAAW7oL,GAAGqE,GAE9B,OAAOwuD,CACX,CACJ,EACMk2H,GAAY,SAAC/hC,EAAQj6G,GACvB,IAAM8lB,EAASlyD,OAAOuB,OAAOvB,OAAOuB,OAAO,CAAC,EAAG8kJ,GAASj6G,GAClD87I,EAAa,CAAC,EACpB,IAAK,IAAM/nL,KAAO+xD,OACM/iD,IAAhBk3I,EAAOlmJ,SAAsCgP,IAAhBi9B,EAAOjsC,KACpC+nL,EAAW/nL,GAAO4nL,GAAS1hC,EAAOlmJ,GAAMisC,EAAOjsC,KAGvD,OAAO,SAACuD,GACJ,IAAK,IAAMvD,KAAO+nL,EACdh2H,EAAO/xD,GAAO+nL,EAAW/nL,GAAKuD,GAElC,OAAOwuD,CACX,CACJ,EACA,SAASi1H,GAAQllL,GAMb,IALA,IAAM2lL,EAASF,GAAQ/rK,MAAM1Z,GACvBulL,EAAYI,EAAOroL,OACrB8oL,EAAa,EACbC,EAAS,EACTC,EAAS,EACJlpL,EAAI,EAAGA,EAAImoL,EAAWnoL,IACvBgpL,GAAmC,kBAAdT,EAAOvoL,GAC5BgpL,SAGsBl5K,IAAlBy4K,EAAOvoL,GAAGme,IACV+qK,IAGAD,IAIZ,MAAO,CAAEV,OAAAA,EAAQS,WAAAA,EAAYC,OAAAA,EAAQC,OAAAA,EACzC,CACA,IAAMP,GAAa,SAAC3hC,EAAQj6G,GACxB,IAAMo8I,EAAWd,GAAQH,kBAAkBn7I,GACrCq8I,EAActB,GAAQ9gC,GACtBqiC,EAAcvB,GAAQ/6I,GAI5B,OAHuBq8I,EAAYF,SAAWG,EAAYH,QACtDE,EAAYH,SAAWI,EAAYJ,QACnCG,EAAYJ,YAAcK,EAAYL,WAE/BxI,GAAKoI,GAASQ,EAAYb,OAAQc,EAAYd,QAASY,IAGhD,mBAAF,OAAqBniC,EAAM,kBAAUj6G,EAAM,4KAChD,SAACtrC,GAAC,gBAAQA,EAAI,EAAIsrC,EAASi6G,EAAM,EAEhD,ECtEMsiC,GAAY,SAAC5kL,EAAMD,GAAE,OAAK,SAAChD,GAAC,OAAK46K,GAAI33K,EAAMD,EAAIhD,EAAE,GAoBvD,SAAS8nL,GAAa12H,EAAQ22H,EAAMC,GAIhC,IAHA,IAAMC,EAAS,GACTC,EAAeF,GArBzB,SAA4BplL,GACxB,MAAiB,kBAANA,EACAilL,GAEW,kBAANjlL,EACRyY,GAAMkqB,KAAK3iC,GACJijL,GAGAqB,GAGNroL,MAAMC,QAAQ8D,GACZukL,GAEW,kBAANvkL,EACL0kL,QADN,CAGT,CAGwCa,CAAmB/2H,EAAO,IACxDg3H,EAAYh3H,EAAO3yD,OAAS,EACzBF,EAAI,EAAGA,EAAI6pL,EAAW7pL,IAAK,CAChC,IAAI8pL,EAAQH,EAAa92H,EAAO7yD,GAAI6yD,EAAO7yD,EAAI,IAC/C,GAAIwpL,EAAM,CACN,IAAMO,EAAiBzpL,MAAMC,QAAQipL,GAAQA,EAAKxpL,GAAKwpL,EACvDM,EAAQtJ,GAAKuJ,EAAgBD,EACjC,CACAJ,EAAOrpL,KAAKypL,EAChB,CACA,OAAOJ,CACX,CACA,SAASM,GAAgB,EAAD,GAAsB,mBAApBtlL,EAAI,KAAED,EAAE,KAAIqlL,GAAJ,YAAS,GACvC,OAAO,SAACzlL,GAAC,OAAKylL,EAAMnhB,GAASjkK,EAAMD,EAAIJ,GAAG,CAC9C,CACA,SAAS4lL,GAAgB7qJ,EAAOsqJ,GAC5B,IAAMQ,EAAc9qJ,EAAMl/B,OACpBiqL,EAAiBD,EAAc,EACrC,OAAO,SAAC7lL,GACJ,IAAI+lL,EAAa,EACbC,GAAkB,EAQtB,GAPIhmL,GAAK+6B,EAAM,GACXirJ,GAAkB,EAEbhmL,GAAK+6B,EAAM+qJ,KAChBC,EAAaD,EAAiB,EAC9BE,GAAkB,IAEjBA,EAAiB,CAElB,IADA,IAAIrqL,EAAI,EACDA,EAAIkqL,KACH9qJ,EAAMp/B,GAAKqE,GAAKrE,IAAMmqL,GADNnqL,KAKxBoqL,EAAapqL,EAAI,CACrB,CACA,IAAMsqL,EAAkB3hB,GAASvpI,EAAMgrJ,GAAahrJ,EAAMgrJ,EAAa,GAAI/lL,GAC3E,OAAOqlL,EAAOU,GAAYE,EAC9B,CACJ,CACA,SAASC,GAAYnrJ,EAAOyzB,GAAqD,6DAAJ,CAAC,EAAC,IAAzCyiH,MAAOkV,OAAO,IAAG,GAAI,EAAEhB,EAAI,EAAJA,KAAMM,EAAK,EAALA,MACzDI,EAAc9qJ,EAAMl/B,OACA2yD,EAAO3yD,QACtBspL,IAASlpL,MAAMC,QAAQipL,IAASA,EAAKtpL,OAC5Ck/B,EAAM,GAAKA,EAAM8qJ,EAAc,KAC/B9qJ,EAAQ,GAAGr6B,OAAOq6B,GAClByzB,EAAS,GAAG9tD,OAAO8tD,GACnBzzB,EAAMkZ,UACNua,EAAOva,WAEX,IAAMoxI,EAASH,GAAa12H,EAAQ22H,EAAMM,GACpCW,EAA+B,IAAhBP,EACfF,GAAgB5qJ,EAAOsqJ,GACvBO,GAAgB7qJ,EAAOsqJ,GAC7B,OAAOc,EACD,SAACnmL,GAAC,OAAKomL,EAAanV,GAAMl2I,EAAM,GAAIA,EAAM8qJ,EAAc,GAAI7lL,GAAG,EAC/DomL,CACV,CCzFA,IAEsBC,GAFhBC,GAAgB,SAAAC,GAAM,OAAI,SAAAnpL,GAAC,OAAI,EAAImpL,EAAO,EAAInpL,EAAE,GAChDopL,GAAe,SAAAD,GAAM,OAAI,SAAAnpL,GAAC,OAAIA,GAAK,GAAMmpL,EAAO,EAAInpL,GAAK,GAAK,EAAImpL,EAAO,GAAK,EAAInpL,KAAO,CAAC,GAE1FqpL,GAAe,SAACJ,GAAK,OAAK,SAAAjpL,GAAC,OAAIA,EAAIA,IAAMipL,EAAQ,GAAKjpL,EAAIipL,EAAM,GCGhEK,GAAS,SAAAtpL,GAAC,OAAIA,CAAC,EACfupL,IDLgBN,GCKM,EDLI,SAAAjpL,GAAC,OAAI+E,KAAK8O,IAAI7T,EAAGipL,GAAM,GCMjDO,GAAUN,GAAcK,IACxBE,GAAYL,GAAaG,IACzBG,GAAS,SAAA1pL,GAAC,OAAI,EAAI+E,KAAKmjB,IAAInjB,KAAK4kL,KAAK3pL,GAAG,EACxC4pL,GAAUV,GAAcQ,IACxBG,GAAYT,GAAaQ,IACzBE,GAAST,GAXoB,OAY7BU,GAAUb,GAAcY,IACxBE,GAAYZ,GAAaU,IACzBG,GDZmB,SAAChB,GACtB,IAAMiB,EAAab,GAAaJ,GAChC,OAAO,SAAAjpL,GAAC,OAAKA,GAAK,GAAK,EACjB,GAAMkqL,EAAWlqL,GACjB,IAAO,EAAI+E,KAAK8O,IAAI,GAAI,IAAM7T,EAAI,IAAI,CAChD,CCOmBmqL,CAdgB,OAkB7BC,GAAY,SAACpqL,GACf,GAAU,IAANA,GAAiB,IAANA,EACX,OAAOA,EACX,IAAMs8B,EAAKt8B,EAAIA,EACf,OAAOA,EArBoB,mBAsBrB,OAASs8B,EACTt8B,EAtBsB,kBAuBlB,MAAQs8B,EAAK,IAAMt8B,EAAI,IACvBA,EAvBiB,GAYpB,mBAYYs8B,EAXZ,kBAWsBt8B,EAVtB,kBAWO,KAAOA,EAAIA,EAAI,MAAQA,EAAI,KAC7C,EACMqqL,GAAWnB,GAAckB,IC7B/B,SAASE,GAAczxK,EAAQswK,GAC3B,OAAOtwK,EAAO3K,KAAI,kBAAMi7K,GAAUM,EAAS,IAAE/xK,OAAO,EAAGmB,EAAOpa,OAAS,EAC3E,CAQA,SAAS8rL,GAAU,GAAqD,QAAnDtnL,KAAAA,OAAI,IAAG,IAAC,MAAED,GAAAA,OAAE,IAAG,IAAC,EAAE+kL,EAAI,EAAJA,KAAM/wJ,EAAM,EAANA,OAAM,IAAEjF,SAAAA,OAAQ,IAAG,MAAG,EACzDqzE,EAAQ,CAAEvjG,MAAM,EAAOV,MAAO8B,GAC9B4V,EAASha,MAAMC,QAAQkE,GAAMA,EAAK,CAACC,EAAMD,GACzCwnL,EANV,SAA8BxzJ,EAAQjF,GAClC,OAAOiF,EAAO9oB,KAAI,SAACkrD,GAAC,OAAKA,EAAIrnC,CAAQ,GACzC,CAIkB04J,CAAqBzzJ,GAAUA,EAAOv4B,SAAWoa,EAAOpa,OAChEu4B,EAXV,SAAuBne,GACnB,IAAM6tK,EAAY7tK,EAAOpa,OACzB,OAAOoa,EAAO3K,KAAI,SAACiH,EAAQ5W,GAAC,OAAW,IAANA,EAAUA,GAAKmoL,EAAY,GAAK,CAAC,GACtE,CASUgE,CAAc7xK,GAASkZ,GAC7B,SAAS44J,IACL,OAAO7B,GAAY0B,EAAO3xK,EAAQ,CAC9BkvK,KAAMlpL,MAAMC,QAAQipL,GAAQA,EAAOuC,GAAczxK,EAAQkvK,IAEjE,CACA,IAAIiB,EAAe2B,IACnB,MAAO,CACHlpL,KAAM,SAACf,GAGH,OAFA0kG,EAAMjkG,MAAQ6nL,EAAatoL,GAC3B0kG,EAAMvjG,KAAOnB,GAAKqxB,EACXqzE,CACX,EACAo/E,WAAY,WACR3rK,EAAOg+B,UACPmyI,EAAe2B,GACnB,EAER,CChCA,IAAMp+K,GAAQ,CAAEg+K,UAAAA,GAAWpH,OAAAA,GAAQyH,MCJnC,SAAe,GAA6F,QAA3Fzb,SAAAA,OAAQ,IAAG,IAAC,MAAElsK,KAAAA,OAAI,IAAG,IAAC,MAAEgmL,MAAAA,OAAK,IAAG,KAAG,MAAE4B,aAAAA,OAAY,IAAG,MAAG,MAAExH,UAAAA,OAAS,IAAG,KAAG,EAAEyH,EAAY,EAAZA,aACjF1lF,EAAQ,CAAEvjG,MAAM,EAAOV,MAAO8B,GAChC8nL,EAAY9B,EAAQ9Z,EAClB6b,EAAQ/nL,EAAO8nL,EACfz/I,OAA0Bj9B,IAAjBy8K,EAA6BE,EAAQF,EAAaE,GAGjE,OAFI1/I,IAAW0/I,IACXD,EAAYz/I,EAASroC,GAClB,CACHxB,KAAM,SAACf,GACH,IAAMmW,GAASk0K,EAAYhmL,KAAK6O,KAAKlT,EAAImqL,GAGzC,OAFAzlF,EAAMvjG,OAASgV,EAAQwsK,GAAaxsK,GAASwsK,GAC7Cj+E,EAAMjkG,MAAQikG,EAAMvjG,KAAOypC,EAASA,EAASz0B,EACtCuuF,CACX,EACAo/E,WAAY,WAAQ,EAE5B,GChBA,IAAMyG,GAAmB,EAAI,GAAM,IAC7BC,GAAwC,qBAAhB5nD,YACxB,kBAAMA,YAAYliF,KAAK,EACvB,kBAAMD,KAAKC,KAAK,EAChB+pI,GAAgC,qBAAX92J,OACrB,SAACw3B,GAAQ,OAAKx3B,OAAOqpG,sBAAsB7xE,EAAS,EACpD,SAACA,GAAQ,OAAKne,YAAW,kBAAMme,EAASq/H,KAAiB,GAAED,GAAgB,ECHjF,IACIG,IAAoB,EACpBC,IAAe,EACfC,IAAe,EACbC,GAAQ,CACV10K,MAAO,EACPuyC,UAAW,GAEToiI,GAAa,CACf,OACA,SACA,YACA,SACA,cAEEC,GAAQD,GAAW3iK,QAAO,SAAC4B,EAAKprB,GAElC,OADAorB,EAAIprB,GCnBR,SAA0BgsL,GACtB,IAAIK,EAAQ,GACRC,EAAiB,GACjBC,EAAW,EACXN,GAAe,EACfO,GAAiB,EACfC,EAAc,IAAI35E,QAClB3wG,EAAO,CACTuqL,SAAU,SAAClgI,GAAmD,IACpDmgI,EAD0C,UAAH,+CACNV,EACjCzkL,EAASmlL,EAAoBN,EAAQC,EAQ3C,OAV6B,UAAH,+CAItBG,EAAYlmJ,IAAIimB,IACc,IAA9BhlD,EAAOgG,QAAQg/C,KACfhlD,EAAOjI,KAAKitD,GACRmgI,GAAqBV,IACrBM,EAAWF,EAAMjtL,SAElBotD,CACX,EACAogI,OAAQ,SAACpgI,GACL,IAAM9lD,EAAQ4lL,EAAe9+K,QAAQg/C,IACtB,IAAX9lD,GACA4lL,EAAej0K,OAAO3R,EAAO,GACjC+lL,EAAYx/F,OAAOzgC,EACvB,EACAylF,QAAS,SAAC46C,GACN,GAAIZ,EACAO,GAAiB,MADrB,CAIAP,GAAe,EAAK,MACM,CAACK,EAAgBD,GAG3C,GAHCA,EAAK,MAAEC,EAAc,MACPltL,OAAS,EACxBmtL,EAAWF,EAAMjtL,OAEb,IAAK,IAAIF,EAAI,EAAGA,EAAIqtL,EAAUrtL,IAAK,CAC/B,IAAMstD,EAAW6/H,EAAMntL,GACvBstD,EAASqgI,GACLJ,EAAY/+I,IAAI8e,KAChBrqD,EAAKuqL,SAASlgI,GACdw/H,IAER,CAEJC,GAAe,EACXO,IACAA,GAAiB,EACjBrqL,EAAK8vI,QAAQ46C,GAlBjB,CAoBJ,GAEJ,OAAO1qL,CACX,CDlCe2qL,EAAiB,kBAAOd,IAAe,CAAI,IAC/C5gK,CACX,GAAG,CAAC,GACE2hK,GAAOZ,GAAW3iK,QAAO,SAAC4B,EAAKprB,GACjC,IAAMmC,EAAOiqL,GAAMpsL,GAMnB,OALAorB,EAAIprB,GAAO,SAACiyI,GAAkD,IAAzC+6C,EAAY,UAAH,8CAAUC,EAAY,UAAH,8CAG7C,OAFKjB,IACDkB,KACG/qL,EAAKuqL,SAASz6C,EAAS+6C,EAAWC,EAC7C,EACO7hK,CACX,GAAG,CAAC,GACE+hK,GAAahB,GAAW3iK,QAAO,SAAC4B,EAAKprB,GAEvC,OADAorB,EAAIprB,GAAOosL,GAAMpsL,GAAK4sL,OACfxhK,CACX,GAAG,CAAC,GACEmxF,GAAY4vE,GAAW3iK,QAAO,SAAC4B,EAAKprB,GAEtC,OADAorB,EAAIprB,GAAO,kBAAMosL,GAAMpsL,GAAKiyI,QAAQi6C,GAAM,EACnC9gK,CACX,GAAG,CAAC,GACEgiK,GAAc,SAACC,GAAM,OAAKjB,GAAMiB,GAAQp7C,QAAQi6C,GAAM,EACtDoB,GAAe,SAAfA,EAAgBvjI,GAClBiiI,IAAe,EACfE,GAAM10K,MAAQu0K,GACRH,GACAlmL,KAAKC,IAAID,KAAK0S,IAAI2xC,EAAYmiI,GAAMniI,UAzC3B,IAyCmD,GAClEmiI,GAAMniI,UAAYA,EAClBkiI,IAAe,EACfE,GAAW9+K,QAAQ+/K,IACnBnB,IAAe,EACXD,KACAD,IAAoB,EACpBD,GAAYwB,GAEpB,EACMJ,GAAY,WACdlB,IAAe,EACfD,IAAoB,EACfE,IACDH,GAAYwB,GACpB,EACMC,GAAe,WAAH,OAASrB,EAAK,EAEhC,ME9DA,SAASsB,GAAYC,EAAS/6J,GAAqB,IAAX0yG,EAAQ,UAAH,6CAAG,EAC5C,OAAOqoD,EAAU/6J,EAAW0yG,CAChC,CCIA,IAAMsoD,GAAY,SAACC,GACf,IAAMC,EAAgB,SAAH,OAAMp2K,EAAK,EAALA,MAAK,OAAOm2K,EAAOn2K,EAAM,EAClD,MAAO,CACHjP,MAAO,kBAAMwkL,GAAAA,OAAYa,GAAe,EAAK,EAC7CtmK,KAAM,kBAAM6lK,GAAWQ,OAAOC,EAAc,EAEpD,EACA,SAAS3d,GAAQ7nJ,GACb,IAAI6wB,EAAIwD,EAGJoxI,EAGAC,EAGAC,EAREnqL,EAAwKwkB,EAAxKxkB,KAAI,EAAoKwkB,EAAlK4lK,SAAAA,OAAQ,IAAG,GAAI,IAAmJ5lK,EAAjJ6lK,OAAAA,OAAM,IAAG,EAAAP,GAAS,IAA+HtlK,EAA7HqlK,QAAAA,OAAO,IAAG,IAAC,IAAkHrlK,EAAhHoP,OAAQ02J,OAAS,IAAG,IAAC,IAA2F9lK,EAAzF+lK,WAAAA,OAAU,IAAG,SAAM,IAAsE/lK,EAApEgmK,YAAAA,OAAW,IAAG,IAAC,EAAEC,EAAmDjmK,EAAnDimK,OAAQC,EAA2ClmK,EAA3CkmK,OAAQC,EAAmCnmK,EAAnCmmK,WAAYC,EAAuBpmK,EAAvBomK,SAAUC,EAAarmK,EAAbqmK,SAAiB//K,EAAUs9J,GAAO5jJ,EAAI,CAAC,OAAQ,WAAY,SAAU,UAAW,SAAU,aAAc,cAAe,SAAU,SAAU,aAAc,WAAY,aAChUzkB,EAAO+K,EAAP/K,GAEF+qL,EAAc,EACdC,EAAmBjgL,EAAQgkB,SAE3Bk8J,GAAa,EACbC,GAAoB,EAElBC,ENnBV,SAAoC5+H,GAChC,GAAI1wD,MAAMC,QAAQywD,EAAOvsD,IACrB,OAAOunL,GAEN,GAAIh+K,GAAMgjD,EAAOliD,MAClB,OAAOd,GAAMgjD,EAAOliD,MAExB,IAAMugC,EAAO,IAAIquC,IAAI/8E,OAAO0uC,KAAK2hB,IACjC,OAAI3hB,EAAKb,IAAI,SACRa,EAAKb,IAAI,cAAgBa,EAAKb,IAAI,gBAC5Bw9I,GAEF38I,EAAKb,IAAI,iBACda,EAAKb,IAAI,cACTa,EAAKb,IAAI,SACTa,EAAKb,IAAI,YACTa,EAAKb,IAAI,cACTa,EAAKb,IAAI,aACFo2I,GAEJoH,EACX,CMFqB6D,CAA2BrgL,IACM,QAA7C+tC,GAAMxD,EAAK61I,GAAU1J,0BAAuC,IAAP3oI,OAAgB,EAASA,EAAGx8C,KAAKg5C,EAAIr1C,EAAMD,MACjGoqL,EAAwBtE,GAAY,CAAC,EAAG,KAAM,CAAC7lL,EAAMD,GAAK,CACtD6wK,OAAO,IAEX5wK,EAAO,EACPD,EAAK,KAET,IAAM82F,EAAYq0F,EAASjvL,OAAOuB,OAAOvB,OAAOuB,OAAO,CAAC,EAAGsN,GAAU,CAAE9K,KAAAA,EAAMD,GAAAA,KAC7E,SAAS6zB,IACLk3J,IACmB,YAAfP,EAEAV,EDlCZ,SAAwBA,EAAS/6J,GAA+C,IAArC0yG,EAAQ,UAAH,6CAAG,EAAGypD,IAAoB,UAAH,+CACnE,OAAOA,EACDrB,GAAY96J,GAAY+6J,EAAS/6J,EAAU0yG,GAC3C1yG,GAAY+6J,EAAU/6J,GAAY0yG,CAC5C,CC8BsB4pD,CAAevB,EAASkB,EAAkBP,EADpDS,EAAoBH,EAAc,IAAM,IAIxCjB,EAAUD,GAAYC,EAASkB,EAAkBP,GAC9B,WAAfD,GACA1zF,EAAU0qF,cAElByJ,GAAa,EACbJ,GAAYA,GAChB,CAKA,SAASb,EAAOn2K,GAIZ,GAHKq3K,IACDr3K,GAASA,GACbi2K,GAAWj2K,GACNo3K,EAAY,CACb,IAAM7oF,EAAQtL,EAAUr4F,KAAKsD,KAAKC,IAAI,EAAG8nL,IACzCK,EAAS/nF,EAAMjkG,MACXisL,IACAD,EAASC,EAAsBD,IACnCc,EAAaC,EAAoB9oF,EAAMvjG,KAAOirL,GAAW,CAC7D,CACa,OAAbgB,QAAkC,IAAbA,GAA+BA,EAASX,GACzDc,IACoB,IAAhBF,IACqB,OAArBC,QAAkD,IAArBA,IAAkDA,EAAmBlB,IAClGiB,EAAcR,ED1D9B,SAA+BT,EAAS/6J,EAAU0yG,EAAOypD,GACrD,OAAOA,EAAoBpB,GAAW/6J,EAAW0yG,EAAQqoD,IAAYroD,CACzE,CCyDgB6pD,CAAsBxB,EAASkB,EAAkBP,EAAaS,IAAsBr3J,KAnB5Fq2J,EAAevmK,OACfinK,GAAcA,KAwBlB,CAOA,OADAP,IAJe,OAAXK,QAA8B,IAAXA,GAA6BA,KAChDR,EAAiBI,EAAON,IACTplL,SAGZ,CACH+e,KAAM,WACS,OAAXgnK,QAA8B,IAAXA,GAA6BA,IAChDT,EAAevmK,MACnB,EAER,CCtFA,SAAS4nK,GAAkBpf,EAAUqf,GACjC,OAAOA,EAAgBrf,GAAY,IAAOqf,GAAiB,CAC/D,CCIA,IAAIC,GAAwB,SAAUptH,GAAW,OAAiB,IAAVA,CAAgB,ECJlEr0D,GAAI,SAACoJ,EAAIC,GAAE,OAAK,EAAM,EAAMA,EAAK,EAAMD,CAAE,EACzCvW,GAAI,SAACuW,EAAIC,GAAE,OAAK,EAAMA,EAAK,EAAMD,CAAE,EACnClD,GAAI,SAACkD,GAAE,OAAK,EAAMA,CAAE,EACpBs4K,GAAa,SAAChuL,EAAG0V,EAAIC,GAAE,QAAOrJ,GAAEoJ,EAAIC,GAAM3V,EAAIb,GAAEuW,EAAIC,IAAO3V,EAAIwS,GAAEkD,IAAO1V,CAAC,EACzEiuL,GAAW,SAACjuL,EAAG0V,EAAIC,GAAE,OAAK,EAAMrJ,GAAEoJ,EAAIC,GAAM3V,EAAIA,EAAI,EAAMb,GAAEuW,EAAIC,GAAM3V,EAAIwS,GAAEkD,EAAG,EAiCrF,IACMw4K,GAAkB,GACxB,SAASC,GAAYC,EAAKC,EAAKC,EAAKC,GAChC,GAAIH,IAAQC,GAAOC,IAAQC,EACvB,OAAO3F,GAEX,IADA,IAAM4F,EAAe,IAAIC,aALJ,IAMZ5wL,EAAI,EAAGA,EANK,KAMmBA,EACpC2wL,EAAa3wL,GAAKmwL,GAAWnwL,EAAIqwL,GAAiBE,EAAKE,GAE3D,SAASI,EAASC,GAId,IAHA,IAAIC,EAAgB,EAChBC,EAAgB,EACDC,KACZD,GAAgCL,EAAaK,IAAkBF,IAAME,EACxED,GAAiBV,KAEnBW,EACF,IAEME,EAAYH,GAFJD,EAAKH,EAAaK,KAC3BL,EAAaK,EAAgB,GAAKL,EAAaK,IACXX,GACnCc,EAAef,GAASc,EAAWX,EAAKE,GAC9C,OAAIU,GAjCW,KACvB,SAA8BL,EAAIM,EAASb,EAAKE,GAC5C,IAAK,IAAIzwL,EAAI,EAAGA,EAHK,IAGmBA,EAAG,CACvC,IAAMqxL,EAAejB,GAASgB,EAASb,EAAKE,GAC5C,GAAqB,IAAjBY,EACA,OAAOD,EAGXA,IADiBjB,GAAWiB,EAASb,EAAKE,GAAOK,GAC3BO,CAC1B,CACA,OAAOD,CACX,CAuBmBE,CAAqBR,EAAII,EAAWX,EAAKE,GAE1B,IAAjBU,EACED,EAvDnB,SAAyBJ,EAAIS,EAAIC,EAAIjB,EAAKE,GACtC,IAAIgB,EACAC,EACA1xL,EAAI,EACR,IAEIyxL,EAAWtB,GADXuB,EAAWH,GAAMC,EAAKD,GAAM,EACIhB,EAAKE,GAAOK,GAC7B,EACXU,EAAKE,EAGLH,EAAKG,QAEJlrL,KAAKkjB,IAAI+nK,GAfO,QAgBnBzxL,EAfuB,IAgB7B,OAAO0xL,CACX,CA0CmBC,CAAgBb,EAAIC,EAAeA,EAAgBV,GAAiBE,EAAKE,EAExF,CACA,OAAO,SAACtuL,GAAC,OAAW,IAANA,GAAiB,IAANA,EAAUA,EAAIguL,GAAWU,EAAS1uL,GAAIquL,EAAKE,EAAI,CAC5E,CCnEA,IAAIkB,GAAe,CACf7G,OAAQA,GACRC,OAAQA,GACRE,UAAWA,GACXD,QAASA,GACTE,OAAQA,GACRG,UAAWA,GACXD,QAASA,GACTE,OAAQA,GACRE,UAAWA,GACXD,QAASA,GACTE,WAAYA,GACZI,SAAUA,GACV+F,YZgBgB,SAACpwL,GAAC,OAAKA,EAAI,GACzB,IAAO,EAAMoqL,GAAU,EAAU,EAAJpqL,IAC7B,GAAMoqL,GAAc,EAAJpqL,EAAU,GAAO,EAAG,EYjBtCoqL,UAAWA,IAEXiG,GAA6B,SAAU1iD,GACvC,GAAI9uI,MAAMC,QAAQ6uI,GAAa,CAEjBA,EAAWlvI,OACrB,IAAIgpB,EAAK8jJ,GAAO59B,EAAY,GAC5B,OAAOkhD,GAD8BpnK,EAAG,GAASA,EAAG,GAASA,EAAG,GAASA,EAAG,GAEhF,CACK,MAA0B,kBAAfkmH,GAEsC,wBAAwBrqI,OAAOqqI,EAAY,KACtFwiD,GAAaxiD,IAEjBA,CACX,ECtBI2iD,GAAe,SAAUjxL,EAAK8B,GAE9B,MAAY,WAAR9B,MAKiB,kBAAV8B,IAAsBtC,MAAMC,QAAQqC,OAE1B,kBAAVA,IACPylL,GAAQrhJ,KAAKpkC,IACZA,EAAM6mJ,WAAW,SAK1B,ECxBIuoC,GAAoB,WAAc,MAAQ,CAC1CljL,KAAM,SACNy1K,UAAW,IACXC,QAAS,GACTK,UAAW,GACX,EACAoN,GAAyB,SAAUxtL,GAAM,MAAQ,CACjDqK,KAAM,SACNy1K,UAAW,IACXC,QAAgB,IAAP//K,EAAW,EAAI+B,KAAK2jB,KAAK,KAAO,GACzC06J,UAAW,GACX,EACAqN,GAAc,WAAc,MAAQ,CACpCpjL,KAAM,YACN06K,KAAM,SACNh2J,SAAU,GACV,EACAw4J,GAAY,SAAU1xK,GAAU,MAAQ,CACxCxL,KAAM,YACN0kB,SAAU,GACVlZ,OAAQA,EACR,EACA63K,GAAqB,CACrB9sL,EAAG2sL,GACHruL,EAAGquL,GACH7+K,EAAG6+K,GACHzb,OAAQyb,GACRxb,QAASwb,GACTvb,QAASub,GACTtb,QAASsb,GACTrb,OAAQsb,GACRrb,OAAQqb,GACRl3I,MAAOk3I,GACP7/J,QAAS8/J,GACTlqK,gBAAiBkqK,GACjBp1K,MAAOo1K,GACP/wL,QAAS8wL,ICpCPG,GAAc,IAAI10G,IAAI,CAAC,aAAc,WAAY,WAAY,YACnE,SAAS20G,GAAmBhuL,GACxB,MAAoBA,EAAES,MAAM,GAAI,GAAG8gD,MAAM,KAAI,eAAxC/qC,EAAI,KAAEjY,EAAK,KAChB,GAAa,gBAATiY,EACA,OAAOxW,EACX,MAAiBzB,EAAM46C,MAAMg4H,KAAe,GAArCh8J,GAAuC,YAAjC,GACb,IAAKA,EACD,OAAOnV,EACX,IAAMoV,EAAO7W,EAAM86B,QAAQlkB,EAAQ,IAC/B0oE,EAAekwG,GAAY5jJ,IAAI3zB,GAAQ,EAAI,EAG/C,OAFIrB,IAAW5W,IACXs/E,GAAgB,KACbrnE,EAAO,IAAMqnE,EAAezoE,EAAO,GAC9C,CACA,IAAM64K,GAAgB,oBAChB31K,GAAShc,OAAOuB,OAAOvB,OAAOuB,OAAO,CAAC,EAAGmmL,IAAU,CAAEC,kBAAmB,SAACjkL,GACvE,IAAMkuL,EAAYluL,EAAEm5C,MAAM80I,IAC1B,OAAOC,EAAYA,EAAU5iL,IAAI0iL,IAAoBrxL,KAAK,KAAOqD,CACrE,ICdAmuL,GAAoBvwL,GAASA,GAAS,CAAC,EAAGg0K,IAAmB,CAE7Dn5J,MAAOA,GAAOkL,gBAAiBlL,GAAO21K,aAAc31K,GAAO6gC,KAAM7gC,GAAOqlC,OAAQrlC,GAEhF41K,YAAa51K,GAAO4Q,eAAgB5Q,GAAO6Q,iBAAkB7Q,GAAO8Q,kBAAmB9Q,GAAO+Q,gBAAiB/Q,GAAOH,OAAQA,GAAQg2K,aAAch2K,KAIpJi2K,GAAsB,SAAU9xL,GAAO,OAAO0xL,GAAkB1xL,EAAM,ECZ1E,SAASwnL,GAAkBxnL,EAAK8B,GAC5B,IAAIsmB,EACA2pK,EAAmBD,GAAoB9xL,GAI3C,OAHI+xL,IAAqBl2K,KACrBk2K,EAAmBxK,IAE8B,QAA7Cn/J,EAAK2pK,EAAiBvK,yBAAsC,IAAPp/J,OAAgB,EAASA,EAAGnoB,KAAK8xL,EAAkBjwL,EACpH,CCVA,IAAIkwL,IACS,ECuBb,SAASC,GAAoC7pK,GACzC,IAAIsgK,EAAOtgK,EAAGsgK,KAAMyC,EAAQ/iK,EAAG+iK,MAAO+G,EAAO9pK,EAAG8pK,KAAMC,EAAO/pK,EAAG+pK,KAAMC,EAAOhqK,EAAGgqK,KAAM9jG,EAAa09E,GAAO5jJ,EAAI,CAAC,OAAQ,QAAS,OAAQ,OAAQ,SAC5I1Z,EAAUvN,GAAS,CAAC,EAAGmtF,GA+C3B,OA9CI68F,IACAz8K,EAAgB,OAAIy8K,GAIpB78F,EAAW57D,WACXhkB,EAAkB,SAAI0gL,GAAsB9gG,EAAW57D,WACvD47D,EAAW8/F,cACX1/K,EAAQ0/K,YAAcgB,GAAsB9gG,EAAW8/F,cAIvD1F,IACAh6K,EAAc,KPNF,SAAUg6K,GAC1B,OAAOlpL,MAAMC,QAAQipL,IAA4B,kBAAZA,EAAK,EAC9C,COI0B2J,CAAc3J,GAC1BA,EAAK75K,IAAImiL,IACTA,GAA2BtI,IAKb,UAApBp6F,EAAWtgF,OACXU,EAAQV,KAAO,cAIfkkL,GAAQE,GAAQD,MAEM,EAClBD,EACAxjL,EAAQy/K,WAAa,UAEhBiE,EACL1jL,EAAQy/K,WAAa,OAEhBgE,IACLzjL,EAAQy/K,WAAa,UAEzBz/K,EAAQ8oB,OAAS46J,GAAQF,GAAQC,GAAQ7jG,EAAW92D,QAOhC,WAApB82D,EAAWtgF,OACXU,EAAQV,KAAO,aACZU,CACX,CAgBA,SAAS4jL,GAA6BhkG,EAAY5/E,EAAS1O,GACvD,IAAIooB,EAWJ,OAVI5oB,MAAMC,QAAQiP,EAAQ/K,MACS,QAA9BykB,EAAKkmE,EAAW57D,gBAA6B,IAAPtK,IAAsBkmE,EAAW57D,SAAW,KAV3F,SAA0BhkB,GAClBlP,MAAMC,QAAQiP,EAAQ/K,KAAyB,OAAlB+K,EAAQ/K,GAAG,KACxC+K,EAAQ/K,GAAKD,GAAc,GAAIwoK,GAAOx9J,EAAQ/K,KAAK,GACnD+K,EAAQ/K,GAAG,GAAK+K,EAAQ9K,KAGhC,CAMI2uL,CAAiB7jL,GA/ErB,SAA6B0Z,GACzBA,EAAGoqK,KAAMpqK,EAAGg9G,MAAOh9G,EAAGqqK,cAAerqK,EAAGsqK,gBAAiBtqK,EAAGuqK,iBAAkBvqK,EAAGoP,OAAQpP,EAAG+lK,WAAY/lK,EAAGgmK,YAAahmK,EAAGxkB,KAAM,IAAI0qF,EAAa09E,GAAO5jJ,EAAI,CAAC,OAAQ,QAAS,gBAAiB,kBAAmB,mBAAoB,SAAU,aAAc,cAAe,SAC9Q,QAASvoB,OAAO0uC,KAAK+/C,GAAYlvF,MACrC,CAgFSwzL,CAAoBtkG,KACrBA,EAAantF,GAASA,GAAS,CAAC,EAAGmtF,GL3DhB,SAAUukG,EAAUlvL,GAC3C,IAAImvL,EAQJ,OANIA,EADA3X,GAAkBx3K,GACEunL,GAIhBmG,GAAmBwB,IAAaxB,GAAmBhxL,QAEpDc,GAAS,CAAEwC,GAAIA,GAAMmvL,EAAkBnvL,GAClD,CKiDwDovL,CAAqB/yL,EAAK0O,EAAQ/K,MAE/ExC,GAASA,GAAS,CAAC,EAAGuN,GAAUujL,GAAoC3jG,GAC/E,CAIA,SAAS0kG,GAAahzL,EAAK8B,EAAOmqC,EAAQqiD,EAAYigG,GAClD,IAAInmK,EACA6qK,EAAkBC,GAAmB5kG,EAAYtuF,GACjDkmJ,EAAyC,QAA/B99H,EAAK6qK,EAAgBrvL,YAAyB,IAAPwkB,EAAgBA,EAAKtmB,EAAMyL,MAC5E4lL,EAAqBlC,GAAajxL,EAAKisC,GAC5B,SAAXi6G,GAAqBitC,GAAwC,kBAAXlnJ,EAKlDi6G,EAASshC,GAAkBxnL,EAAKisC,GAE3BmnJ,GAAOltC,IAA6B,kBAAXj6G,EAC9Bi6G,EAASmtC,GAAYpnJ,IAEfzsC,MAAMC,QAAQwsC,IACpBmnJ,GAAOnnJ,IACW,kBAAXi6G,IACPj6G,EAASonJ,GAAYntC,IAEzB,IAAIotC,EAAqBrC,GAAajxL,EAAKkmJ,GAgC3C,MA/BmD,6BAA6BjiJ,OAAOjE,EAAK,WAAYiE,OAAOiiJ,EAAQ,UAAYjiJ,OAAOgoC,EAAQ,OAAQhoC,OAAOiiJ,EAAQ,+DAA+DjiJ,OAAOiiJ,EAAQ,8BAA8BjiJ,OAAOgoC,EAAQ,8BA+B5RqnJ,GACHH,IACwB,IAAzBF,EAAgBjlL,KAhCpB,WACI,IAAIU,EAAU,CACV9K,KAAMsiJ,EACNviJ,GAAIsoC,EACJ6jI,SAAUhuK,EAAMiuK,cAChBwe,WAAYA,EACZE,SAAU,SAAUlrL,GAAK,OAAOzB,EAAM+uD,IAAIttD,EAAI,GAElD,MAAgC,YAAzB0vL,EAAgBjlL,MACM,UAAzBilL,EAAgBjlL,KCtI5B,SAAiB,GAAsL,IAC/LulL,EAD+L,IAApL3vL,KAAAA,OAAI,IAAG,IAAC,MAAEksK,SAAAA,OAAQ,IAAG,IAAC,EAAE13J,EAAG,EAAHA,IAAKzS,EAAG,EAAHA,IAAG,IAAEikL,MAAAA,OAAK,IAAG,KAAG,MAAE4B,aAAAA,OAAY,IAAG,MAAG,MAAEgI,gBAAAA,OAAe,IAAG,MAAG,MAAEC,cAAAA,OAAa,IAAG,KAAE,MAAEzP,UAAAA,OAAS,IAAG,IAAC,EAAEyH,EAAY,EAAZA,aAAcwC,EAAM,EAANA,OAAQQ,EAAQ,EAARA,SAAUF,EAAU,EAAVA,WAAYD,EAAM,EAANA,OAExL,SAASoF,EAAcnwL,GACnB,YAAgByL,IAARoJ,GAAqB7U,EAAI6U,QAAiBpJ,IAARrJ,GAAqBpC,EAAIoC,CACvE,CACA,SAASguL,EAAgBpwL,GACrB,YAAYyL,IAARoJ,EACOzS,OACCqJ,IAARrJ,GAEGD,KAAKkjB,IAAIxQ,EAAM7U,GAAKmC,KAAKkjB,IAAIjjB,EAAMpC,GAD/B6U,EAC0CzS,CACzD,CACA,SAASiuL,EAAellL,GACC,OAArB6kL,QAAkD,IAArBA,GAAuCA,EAAiBjsK,OACrFisK,EAAmBtjB,GAAQpwK,OAAOuB,OAAOvB,OAAOuB,OAAO,CAAC,EAAGsN,GAAU,CAAEu/K,OAAAA,EAAQQ,SAAU,SAAClrL,GAClF,IAAI6kB,EACS,OAAbqmK,QAAkC,IAAbA,GAA+BA,EAASlrL,GACjC,QAA3B6kB,EAAK1Z,EAAQ+/K,gBAA6B,IAAPrmK,GAAyBA,EAAGnoB,KAAKyO,EAASnL,EAClF,EAAGgrL,WAAAA,EACHD,OAAAA,IACR,CACA,SAASuF,EAAYnlL,GACjBklL,EAAe/zL,OAAOuB,OAAO,CAAE4M,KAAM,SAAUy1K,UAAW+P,EAAiB9P,QAAS+P,EAAezP,UAAAA,GAAat1K,GACpH,CACA,GAAIglL,EAAc9vL,GACdiwL,EAAY,CAAEjwL,KAAAA,EAAMksK,SAAAA,EAAUnsK,GAAIgwL,EAAgB/vL,SAEjD,CACD,IAAIqoC,EAAS29I,EAAQ9Z,EAAWlsK,EACJ,qBAAjB6nL,IACPx/I,EAASw/I,EAAax/I,IAC1B,IAEIx+B,EACAK,EAHEgmL,EAAWH,EAAgB1nJ,GAC3B8nJ,EAAUD,IAAa17K,GAAO,EAAI,EAYxCw7K,EAAe,CACX5lL,KAAM,QACNpK,KAAAA,EACAksK,SAAAA,EACA0b,aAAAA,EACA5B,MAAAA,EACA5F,UAAAA,EACAyH,aAAAA,EACAgD,SAAUiF,EAAcznJ,GAjBN,SAAC1oC,GACnBkK,EAAOK,EACPA,EAAUvK,EACVusK,EAAWof,GAAkB3rL,EAAIkK,EAAM8/K,KAAe/1K,QACrC,IAAZu8K,GAAiBxwL,EAAIuwL,IACR,IAAbC,GAAkBxwL,EAAIuwL,IACvBD,EAAY,CAAEjwL,KAAML,EAAGI,GAAImwL,EAAUhkB,SAAAA,GAE7C,OASsD9gK,GAE1D,CACA,MAAO,CACHsY,KAAM,kBAA2B,OAArBisK,QAAkD,IAArBA,OAA8B,EAASA,EAAiBjsK,MAAM,EAE/G,CD6Ec0sK,CAAQ7yL,GAASA,GAAS,CAAC,EAAGuN,GAAUukL,IACxChjB,GAAQ9uK,GAASA,GAAS,CAAC,EAAGmxL,GAA6BW,EAAiBvkL,EAAS1O,IAAO,CAAEyuL,SAAU,SAAUlrL,GAC5G,IAAI6kB,EACJ1Z,EAAQ+/K,SAASlrL,GACmB,QAAnC6kB,EAAK6qK,EAAgBxE,gBAA6B,IAAPrmK,GAAyBA,EAAGnoB,KAAKgzL,EAAiB1vL,EAClG,EAAGgrL,WAAY,WACX,IAAInmK,EACJ1Z,EAAQ6/K,aAC8B,QAArCnmK,EAAK6qK,EAAgB1E,kBAA+B,IAAPnmK,GAAyBA,EAAGnoB,KAAKgzL,EACnF,IACZ,EACA,WACI,IAAI7qK,EAAI6wB,EACJg7I,EAAc7Y,GAA6BnvI,GAK/C,OAJAnqC,EAAM+uD,IAAIojI,GACV1F,IACsG,QAArGnmK,EAAyB,OAApB6qK,QAAgD,IAApBA,OAA6B,EAASA,EAAgBxE,gBAA6B,IAAPrmK,GAAyBA,EAAGnoB,KAAKgzL,EAAiBgB,GACxD,QAAvGh7I,EAAyB,OAApBg6I,QAAgD,IAApBA,OAA6B,EAASA,EAAgB1E,kBAA+B,IAAPt1I,GAAyBA,EAAGh5C,KAAKgzL,GAC1I,CAAE3rK,KAAM,WAAc,EACjC,CAMJ,CACA,SAAS8rK,GAAOtxL,GACZ,OAAkB,IAAVA,GACc,kBAAVA,GACkB,IAAtBupE,WAAWvpE,KACa,IAAxBA,EAAM0L,QAAQ,IAC1B,CACA,SAAS6lL,GAAYa,GACjB,MAAoC,kBAAtBA,EACR,EACA1M,GAAkB,GAAI0M,EAChC,CACA,SAAShB,GAAmB5kG,EAAYtuF,GACpC,OAAOsuF,EAAWtuF,IAAQsuF,EAAoB,SAAKA,CACvD,CAKA,SAASslG,GAAe5zL,EAAK8B,EAAOmqC,EAAQqiD,GAKxC,YAJmB,IAAfA,IAAyBA,EAAa,CAAC,GACvC0jG,KACA1jG,EAAa,CAAEtgF,MAAM,IAElBlM,EAAMyG,OAAM,SAAUgmL,GACzB,IAAI4F,EACAC,EACA35F,EAAYu4F,GAAahzL,EAAK8B,EAAOmqC,EAAQqiD,EAAYigG,GACzDnpD,EAlHZ,SAAgC92C,EAAYtuF,GACxC,IAAIooB,EAAI6wB,EAER,OAAiG,QAAzFA,EAAsC,QAAhC7wB,GADQ8qK,GAAmB5kG,EAAYtuF,IAAQ,CAAC,GAC3BolI,aAA0B,IAAPh9G,EAAgBA,EAAKkmE,EAAW82C,aAA0B,IAAPnsF,EAAgBA,EAAK,CAClI,CA8GoBo7I,CAAuB/lG,EAAYtuF,GAC3CuI,EAAQ,WAAc,OAAQ6rL,EAAW35F,GAAc,EAO3D,OANI2qC,EACA+uD,EAAan/J,OAAOqZ,WAAW9lC,EAAO6mL,GAAsBhqD,IAG5D78H,IAEG,WACHm1F,aAAay2F,GACA,OAAbC,QAAkC,IAAbA,GAA+BA,EAAS9sK,MACjE,CACJ,GACJ,CE1MA,IAAIgtK,GAAoB,SAAU/wL,GAAK,MAAO,iBAAiB2iC,KAAK3iC,EAAI,ECApEgxL,GAAoB,SAAUhxL,GAAK,MAAO,aAAa2iC,KAAK3iC,EAAI,ECDpE,SAASixL,GAActnI,EAAK/gB,IACD,IAAvB+gB,EAAI1/C,QAAQ2+B,IAAgB+gB,EAAI3tD,KAAK4sC,EACzC,CACA,SAAS4mG,GAAW7lF,EAAK/gB,GACrB,IAAIzlC,EAAQwmD,EAAI1/C,QAAQ2+B,GACxBzlC,GAAS,GAAKwmD,EAAI70C,OAAO3R,EAAO,EACpC,CCNA,IAAI+tL,GAAqC,WACrC,SAASA,IACLzzL,KAAK0zL,cAAgB,EACzB,CAiCA,OAhCAD,EAAoB30L,UAAUymC,IAAM,SAAUm7F,GAC1C,IAAIvkG,EAAQn8B,KAEZ,OADAwzL,GAAcxzL,KAAK0zL,cAAehzD,GAC3B,WAAc,OAAOqR,GAAW51G,EAAMu3J,cAAehzD,EAAU,CAC1E,EACA+yD,EAAoB30L,UAAU60L,OAAS,SAAUhnL,EAAGnN,EAAGqT,GACnD,IAAI+gL,EAAmB5zL,KAAK0zL,cAAct1L,OAC1C,GAAKw1L,EAEL,GAAyB,IAArBA,EAIA5zL,KAAK0zL,cAAc,GAAG/mL,EAAGnN,EAAGqT,QAG5B,IAAK,IAAI3U,EAAI,EAAGA,EAAI01L,EAAkB11L,IAAK,CAKvC,IAAIwiI,EAAU1gI,KAAK0zL,cAAcx1L,GACjCwiI,GAAWA,EAAQ/zH,EAAGnN,EAAGqT,EAC7B,CAER,EACA4gL,EAAoB30L,UAAUw+J,QAAU,WACpC,OAAOt9J,KAAK0zL,cAAct1L,MAC9B,EACAq1L,EAAoB30L,UAAU+0L,MAAQ,WAClC7zL,KAAK0zL,cAAct1L,OAAS,CAChC,EACOq1L,CACX,CArCyC,GCUrCK,GAA6B,WAS7B,SAASA,EAAY33E,GACjB,IAlBgBr7G,EAkBZq7B,EAAQn8B,KAKZA,KAAKqjD,QAAU,QAMfrjD,KAAK+zL,UAAY,EAMjB/zL,KAAKg0L,YAAc,EAMnBh0L,KAAKi0L,kBAAoB,IAAIR,GAM7BzzL,KAAKk0L,0BAA4B,IAAIT,GAMrCzzL,KAAKm0L,kBAAoB,IAAIV,GAQ7BzzL,KAAKo0L,kBAAmB,EACxBp0L,KAAKq0L,gBAAkB,SAAU9xL,EAAGq5C,QACjB,IAAXA,IAAqBA,GAAS,GAClCzf,EAAM1vB,KAAO0vB,EAAMrvB,QACnBqvB,EAAMrvB,QAAUvK,EAEhB,IAAI6kB,EAAKmlK,KAAgB/1K,EAAQ4Q,EAAG5Q,MAAOuyC,EAAY3hC,EAAG2hC,UACtD5sB,EAAM63J,cAAgBjrI,IACtB5sB,EAAM43J,UAAYv9K,EAClB2lB,EAAM63J,YAAcjrI,EACpBgjI,GAAAA,WAAgB5vJ,EAAMm4J,wBAGtBn4J,EAAM1vB,OAAS0vB,EAAMrvB,SACrBqvB,EAAM83J,kBAAkBN,OAAOx3J,EAAMrvB,SAGrCqvB,EAAM+3J,0BAA0B52B,WAChCnhI,EAAM+3J,0BAA0BP,OAAOx3J,EAAM4yI,eAG7CnzH,GACAzf,EAAMg4J,kBAAkBR,OAAOx3J,EAAMrvB,QAE7C,EASA9M,KAAKs0L,sBAAwB,WAAc,OAAOvI,GAAAA,WAAgB5vJ,EAAMo4J,cAAgB,EAUxFv0L,KAAKu0L,cAAgB,SAAUntK,GACXA,EAAG2hC,YACD5sB,EAAM63J,cACpB73J,EAAM1vB,KAAO0vB,EAAMrvB,QACnBqvB,EAAM+3J,0BAA0BP,OAAOx3J,EAAM4yI,eAErD,EACA/uK,KAAKw0L,aAAc,EACnBx0L,KAAKyM,KAAOzM,KAAK8M,QAAUqvG,EAC3Bn8G,KAAKo0L,kBAjHWtzL,EAiHgBd,KAAK8M,SAhHjCmhD,MAAMoc,WAAWvpE,IAiHzB,CA0LA,OAzIAgzL,EAAYh1L,UAAUwmH,SAAW,SAAUmvE,GACvC,OAAOz0L,KAAKi0L,kBAAkB1uJ,IAAIkvJ,EACtC,EACAX,EAAYh1L,UAAU41L,eAAiB,WACnC10L,KAAKi0L,kBAAkBJ,OAC3B,EASAC,EAAYh1L,UAAU61L,gBAAkB,SAAUF,GAG9C,OADAA,EAAaz0L,KAAKuM,OACXvM,KAAKm0L,kBAAkB5uJ,IAAIkvJ,EACtC,EAMAX,EAAYh1L,UAAU81L,OAAS,SAAUC,GACrC70L,KAAK60L,cAAgBA,CACzB,EAgBAf,EAAYh1L,UAAU+wD,IAAM,SAAUttD,EAAGq5C,QACtB,IAAXA,IAAqBA,GAAS,GAC7BA,GAAW57C,KAAK60L,cAIjB70L,KAAK60L,cAActyL,EAAGvC,KAAKq0L,iBAH3Br0L,KAAKq0L,gBAAgB9xL,EAAGq5C,EAKhC,EAQAk4I,EAAYh1L,UAAUyN,IAAM,WACxB,OAAOvM,KAAK8M,OAChB,EAIAgnL,EAAYh1L,UAAUg2L,YAAc,WAChC,OAAO90L,KAAKyM,IAChB,EAQAqnL,EAAYh1L,UAAUiwK,YAAc,WAEhC,OAAO/uK,KAAKo0L,iBAEJlG,GAAkB7jH,WAAWrqE,KAAK8M,SAC9Bu9D,WAAWrqE,KAAKyM,MAAOzM,KAAK+zL,WAClC,CACV,EAaAD,EAAYh1L,UAAUyI,MAAQ,SAAUkyF,GACpC,IAAIt9D,EAAQn8B,KAEZ,OADAA,KAAKsmB,OACE,IAAItlB,SAAQ,SAAUD,GACzBo7B,EAAMq4J,aAAc,EACpBr4J,EAAM44J,cAAgBt7F,EAAU14F,EACpC,IAAGU,MAAK,WAAc,OAAO06B,EAAM64J,gBAAkB,GACzD,EAMAlB,EAAYh1L,UAAUwnB,KAAO,WACrBtmB,KAAK+0L,eACL/0L,KAAK+0L,gBACT/0L,KAAKg1L,gBACT,EAMAlB,EAAYh1L,UAAUm2L,YAAc,WAChC,QAASj1L,KAAK+0L,aAClB,EACAjB,EAAYh1L,UAAUk2L,eAAiB,WACnCh1L,KAAK+0L,cAAgB,IACzB,EAUAjB,EAAYh1L,UAAU8jD,QAAU,WAC5B5iD,KAAKi0L,kBAAkBJ,QACvB7zL,KAAKm0L,kBAAkBN,QACvB7zL,KAAKsmB,MACT,EACOwtK,CACX,CArSiC,GAsSjC,SAASoB,GAAY/4E,GACjB,OAAO,IAAI23E,GAAY33E,EAC3B,CCjTA,IAAIg5E,GAAgB,SAAU5yL,GAAK,OAAO,SAAUyK,GAAQ,OAAOA,EAAKk4B,KAAK3iC,EAAI,CAAG,ECIhF6yL,GAAsB,CAAC19K,GAAQs8J,GAAID,GAASD,GAASG,GAAIjuE,GCJlD,CACP9gE,KAAM,SAAU3iC,GAAK,MAAa,SAANA,CAAc,EAC1CiY,MAAO,SAAUjY,GAAK,OAAOA,CAAG,IDMhC8yL,GAAyB,SAAU9yL,GACnC,OAAO6yL,GAAoBrxL,KAAKoxL,GAAc5yL,GAClD,EELI+yL,GAAa5yL,GAAcA,GAAc,GAAIwoK,GAAOkqB,KAAsB,GAAQ,CAACp6K,GAAOurK,KAAU,GAIpGgP,GAAgB,SAAUhzL,GAAK,OAAO+yL,GAAWvxL,KAAKoxL,GAAc5yL,GAAK,ECE7E,SAASizL,GAAenoB,EAAeruK,EAAK8B,GACpCusK,EAAcooB,SAASz2L,GACvBquK,EAAc1tF,SAAS3gF,GAAK6wD,IAAI/uD,GAGhCusK,EAAcqoB,SAAS12L,EAAKk2L,GAAYp0L,GAEhD,CACA,SAAS60L,GAAUtoB,EAAe//B,GAC9B,IAAI+tC,EAAW3M,GAAerB,EAAe//B,GACzClmH,EAAKi0J,EAAWhO,EAAcuoB,qBAAqBva,GAAU,GAAS,CAAC,EAAGpjI,EAAK7wB,EAAGk0J,cAAeA,OAAuB,IAAPrjI,EAAgB,CAAC,EAAIA,EAAI7wB,EAAGkmE,WAAY,IAAIriD,EAAS+/H,GAAO5jJ,EAAI,CAAC,gBAAiB,eAEvM,IAAK,IAAIpoB,KADTisC,EAAS9qC,GAASA,GAAS,CAAC,EAAG8qC,GAASqwI,GAChB,CAEpBka,GAAenoB,EAAeruK,EADlBo7K,GAA6BnvI,EAAOjsC,IAEpD,CACJ,CAoEA,SAAS62L,GAAwB72L,EAAKsuF,GAClC,GAAKA,EAGL,OADsBA,EAAWtuF,IAAQsuF,EAAoB,SAAKA,GAC3C1qF,IAC3B,CC1EA,SAASkzL,GAAezoB,EAAejzH,EAAS1sC,GAC5C,IAAI0Z,OACY,IAAZ1Z,IAAsBA,EAAU,CAAC,GACrC,IAAI2tK,EAAW3M,GAAerB,EAAejzH,EAAS1sC,EAAQ4gK,QAC1Dr2H,GAAMojI,GAAY,CAAC,GAAG/tF,WAAYA,OAAoB,IAAPr1C,EAAgBo1H,EAAc0kB,wBAA0B,CAAC,EAAI95I,EAC5GvqC,EAAQqoL,qBACRzoG,EAAa5/E,EAAQqoL,oBAMzB,IAAI/D,EAAe3W,EACb,WAAc,OAAO2a,GAAc3oB,EAAegO,EAAU3tK,EAAU,EACtE,WAAc,OAAO1M,QAAQD,SAAW,EAK1Ck1L,GAA+D,QAAxC7uK,EAAKimJ,EAAc6oB,uBAAoC,IAAP9uK,OAAgB,EAASA,EAAG+B,MACjG,SAAUgtK,QACa,IAAjBA,IAA2BA,EAAe,GAC9C,IAAI/uK,EAAKkmE,EAAWmkG,cAAeA,OAAuB,IAAPrqK,EAAgB,EAAIA,EAAIsqK,EAAkBpkG,EAAWokG,gBAAiBC,EAAmBrkG,EAAWqkG,iBACvJ,OAoDZ,SAAyBtkB,EAAejzH,EAASq3I,EAAeC,EAAiBC,EAAkBjkL,QACzE,IAAlB+jL,IAA4BA,EAAgB,QACxB,IAApBC,IAA8BA,EAAkB,QAC3B,IAArBC,IAA+BA,EAAmB,GACtD,IAAIyE,EAAa,GACbC,GAAsBhpB,EAAc6oB,gBAAgB/sK,KAAO,GAAKuoK,EAChE4E,EAA+C,IAArB3E,EACxB,SAAUzzL,GAER,YADU,IAANA,IAAgBA,EAAI,GACjBA,EAAIwzL,CACf,EACE,SAAUxzL,GAER,YADU,IAANA,IAAgBA,EAAI,GACjBm4L,EAAqBn4L,EAAIwzL,CACpC,EAMJ,OALAlzL,MAAMoE,KAAKyqK,EAAc6oB,iBACpBruI,KAAK0uI,IACLlqL,SAAQ,SAAUw7B,EAAO3pC,GAC1Bk4L,EAAW73L,KAAKu3L,GAAejuJ,EAAOuS,EAASj6C,GAASA,GAAS,CAAC,EAAGuN,GAAU,CAAE02H,MAAOqtD,EAAgB6E,EAAwBp4L,MAAOuD,MAAK,WAAc,OAAOomC,EAAM2uJ,wBAAwBp8I,EAAU,IAC7M,IACOp5C,QAAQypC,IAAI2rJ,EACvB,CAzEmBK,CAAgBppB,EAAejzH,EAASq3I,EAAgB0E,EAAczE,EAAiBC,EAAkBjkL,EACpH,EACE,WAAc,OAAO1M,QAAQD,SAAW,EAK1CywL,EAAOlkG,EAAWkkG,KACtB,GAAIA,EAAM,CACN,IAAI/1I,EAAKyvH,GAAgB,mBAATsmB,EACV,CAACQ,EAAciE,GACf,CAACA,EAAoBjE,GAAe,GAAItrK,EAAQ+0B,EAAG,GAAI90B,EAAO80B,EAAG,GACvE,OAAO/0B,IAAQjlB,KAAKklB,EACxB,CAEI,OAAO3lB,QAAQypC,IAAI,CAACunJ,IAAgBiE,EAAmBvoL,EAAQ02H,QAEvE,CAIA,SAAS4xD,GAAc3oB,EAAe//B,EAAYlmH,GAC9C,IAAI6wB,EACAwD,OAAY,IAAPr0B,EAAgB,CAAC,EAAIA,EAAIk1B,EAAKb,EAAG2oF,MAAOA,OAAe,IAAP9nF,EAAgB,EAAIA,EAAIy5I,EAAqBt6I,EAAGs6I,mBAAoB/oL,EAAOyuC,EAAGzuC,KACnIqvC,EAAKgxH,EAAcuoB,qBAAqBtoD,GAAa9wF,EAAKH,EAAGixC,WAAYA,OAAoB,IAAP9wC,EAAgB6wH,EAAc0kB,uBAAyBv1I,EAAI8+H,EAAgBj/H,EAAGi/H,cAAerwI,EAAS+/H,GAAO3uH,EAAI,CAAC,aAAc,kBACtN05I,IACAzoG,EAAayoG,GACjB,IAAIK,EAAa,GACbM,EAAqB1pL,IAAiD,QAAvCirC,EAAKo1H,EAAcU,sBAAmC,IAAP91H,OAAgB,EAASA,EAAG0+I,WAAW3pL,IACzH,IAAK,IAAIhO,KAAOisC,EAAQ,CACpB,IAAInqC,EAAQusK,EAAc1tF,SAAS3gF,GAC/Bu8K,EAActwI,EAAOjsC,GACzB,MAAK8B,QACekN,IAAhButK,GACCmb,GACGE,GAAqBF,EAAoB13L,IAHjD,CAMA,IAAIizL,EAAkB9xL,GAAS,CAAEikI,MAAOA,GAAS92C,GAI7C+/E,EAAcE,oBAAsBwF,GAAgB/zK,KACpDizL,EAAkB9xL,GAASA,GAAS,CAAC,EAAG8xL,GAAkB,CAAEjlL,MAAM,EAAOo3H,MAAO,KAEpF,IAAI3qC,EAAYm5F,GAAe5zL,EAAK8B,EAAOy6K,EAAa0W,GACxDmE,EAAW73L,KAAKk7F,EAThB,CAUJ,CACA,OAAOz4F,QAAQypC,IAAI2rJ,GAAY30L,MAAK,WAChC65K,GAAiBqa,GAAUtoB,EAAeiO,EAC9C,GACJ,CA0BA,SAASib,GAAgB5pL,EAAGnN,GACxB,OAAOmN,EAAEkqL,iBAAiBr3L,EAC9B,CAOA,SAASo3L,GAAqBxvK,EAAIpoB,GAC9B,IAAI83L,EAAgB1vK,EAAG0vK,cAAeC,EAAiB3vK,EAAG2vK,eACtDC,EAAcF,EAAc/4L,eAAeiB,KAAgC,IAAxB+3L,EAAe/3L,GAEtE,OADA+3L,EAAe/3L,IAAO,EACfg4L,CACX,CCvIA,IAAIC,GAAuB,CACvBzb,GAAc0b,QACd1b,GAAcwE,OACdxE,GAAc2F,MACd3F,GAAc6C,MACd7C,GAAcyF,IACdzF,GAAc2b,KACd3b,GAAc4b,MAEdC,GAAuB30L,GAAc,GAAIwoK,GAAO+rB,KAAuB,GAAOzgJ,UAC9E8gJ,GAAoBL,GAAqB74L,OAC7C,SAASm5L,GAAYlqB,GACjB,OAAO,SAAU+oB,GACb,OAAOp1L,QAAQypC,IAAI2rJ,EAAWvoL,KAAI,SAAUuZ,GACxC,IAAIqyE,EAAYryE,EAAGqyE,UAAW/rF,EAAU0Z,EAAG1Z,QAC3C,ODjBZ,SAA8B2/J,EAAe//B,EAAY5/H,GAGrD,IAAI+rF,EACJ,QAHgB,IAAZ/rF,IAAsBA,EAAU,CAAC,GACrC2/J,EAAcmqB,qBAAqBlqD,GAE/B9uI,MAAMC,QAAQ6uI,GAAa,CAC3B,IAAI8oD,EAAa9oD,EAAWz/H,KAAI,SAAUusC,GACtC,OAAO07I,GAAezoB,EAAejzH,EAAS1sC,EAClD,IACA+rF,EAAYz4F,QAAQypC,IAAI2rJ,EAC5B,MACK,GAA0B,kBAAf9oD,EACZ7zC,EAAYq8F,GAAezoB,EAAe//B,EAAY5/H,OAErD,CACD,IAAI+pL,EAA2C,oBAAfnqD,EAC1BohC,GAAerB,EAAe//B,EAAY5/H,EAAQ4gK,QAClDhhC,EACN7zC,EAAYu8F,GAAc3oB,EAAeoqB,EAAoB/pL,EACjE,CACA,OAAO+rF,EAAUh4F,MAAK,WAClB,OAAO4rK,EAAcmpB,wBAAwBlpD,EACjD,GACJ,CCLmBoqD,CAAqBrqB,EAAe5zE,EAAW/rF,EAC1D,IACJ,CACJ,CACA,SAASiqL,GAAqBtqB,GAC1B,IAAI4B,EAAUsoB,GAAYlqB,GACtBtoE,EA2SR,WACI,IAAI39E,EACJ,OAAOA,EAAK,CAAC,EACTA,EAAGo0J,GAAc0b,SAAWU,IAAgB,GAC5CxwK,EAAGo0J,GAAcwE,QAAU4X,KAC3BxwK,EAAGo0J,GAAc6C,OAASuZ,KAC1BxwK,EAAGo0J,GAAcyF,KAAO2W,KACxBxwK,EAAGo0J,GAAc2b,MAAQS,KACzBxwK,EAAGo0J,GAAc2F,OAASyW,KAC1BxwK,EAAGo0J,GAAc4b,MAAQQ,KACzBxwK,CACR,CAtTgBywK,GACRC,EAAkB,CAAC,EACnBC,GAAkB,EAKlBC,EAA0B,SAAU5tK,EAAKkjH,GACzC,IAAI+tC,EAAW3M,GAAerB,EAAe//B,GAC7C,GAAI+tC,EAAU,CACVA,EAAS/tF,WAAY,IAAIguF,EAAgBD,EAASC,cAAerwI,EAAS+/H,GAAOqQ,EAAU,CAAC,aAAc,kBAC1GjxJ,EAAMjqB,GAASA,GAASA,GAAS,CAAC,EAAGiqB,GAAM6gB,GAASqwI,EACxD,CACA,OAAOlxJ,CACX,EAqBA,SAAS4jJ,EAAetgK,EAASuqL,GAiM7B,IAhMA,IAAI7wK,EACAi+E,EAAQgoE,EAAcsB,WACtBjrK,EAAU2pK,EAAc6qB,mBAAkB,IAAS,CAAC,EAKpD9B,EAAa,GAKb+B,EAAc,IAAIv8G,IAMlBw8G,EAAkB,CAAC,EAKnBC,EAAsBvvK,IACtBwvK,EAAU,SAAUp6L,GACpB,IAAI8O,EAAOqqL,GAAqBn5L,GAC5Bq6L,EAAYxzF,EAAM/3F,GAClB2hD,EAA8B,QAAtBvnC,EAAKi+E,EAAMr4F,UAA0B,IAAPoa,EAAgBA,EAAK1jB,EAAQsJ,GACnEwrL,EAAgBpqB,GAAez/G,GAK/B8pI,EAAczrL,IAASirL,EAAoBM,EAAUnhD,SAAW,MAChD,IAAhBqhD,IACAJ,EAAsBn6L,GAO1B,IAAIw6L,EAAc/pI,IAASjrD,EAAQsJ,IAAS2hD,IAAS02C,EAAMr4F,IAASwrL,EAepE,GAXIE,GACAX,GACA1qB,EAAcsrB,yBACdD,GAAc,GAMlBH,EAAUzB,cAAgB32L,GAAS,CAAC,EAAGi4L,IAIrCG,EAAUnhD,UAA4B,OAAhBqhD,IAElB9pI,IAAS4pI,EAAUK,UAErB1e,GAAoBvrH,IACJ,mBAATA,EACP,MAAO,WAOX,IAAIkqI,EA6KhB,SAAgCpsL,EAAMrL,GAClC,GAAoB,kBAATA,EACP,OAAOA,IAASqL,EAEf,GAAI0hK,GAAgB/sK,GACrB,OAAQugL,GAAevgL,EAAMqL,GAEjC,OAAO,CACX,CArLmCqsL,CAAuBP,EAAUK,SAAUjqI,GAC9DoqI,EAAoBF,GAEnB7rL,IAASirL,GACNM,EAAUnhD,WACTshD,GACDF,GAEHt6L,EAAIm6L,GAAuBG,EAK5BQ,EAAiBx6L,MAAMC,QAAQkwD,GAAQA,EAAO,CAACA,GAK/CsqI,EAAiBD,EAAexwK,OAAOwvK,EAAyB,CAAC,IACjD,IAAhBS,IACAQ,EAAiB,CAAC,GAUtB,IAAIhhJ,EAAKsgJ,EAAUW,mBAAoBA,OAA4B,IAAPjhJ,EAAgB,CAAC,EAAIA,EAC7EkhJ,EAAUh5L,GAASA,GAAS,CAAC,EAAG+4L,GAAqBD,GACrDG,EAAgB,SAAUp6L,GAC1B+5L,GAAoB,EACpBZ,EAAYlsG,OAAOjtF,GACnBu5L,EAAUxB,eAAe/3L,IAAO,CACpC,EACA,IAAK,IAAIA,KAAOm6L,EAAS,CACrB,IAAI/3L,EAAO63L,EAAej6L,GACtByN,EAAOysL,EAAmBl6L,GAE1Bo5L,EAAgBr6L,eAAeiB,KAK/BoC,IAASqL,EAKL0tK,GAAkB/4K,IAAS+4K,GAAkB1tK,IACxCk1K,GAAevgL,EAAMqL,IAASosL,EAC/BO,EAAcp6L,GAOdu5L,EAAUzB,cAAc93L,IAAO,OAGrBgP,IAAT5M,EAELg4L,EAAcp6L,GAIdm5L,EAAY5yJ,IAAIvmC,QAGNgP,IAAT5M,GAAsB+2L,EAAYzrJ,IAAI1tC,GAK3Co6L,EAAcp6L,GAOdu5L,EAAUzB,cAAc93L,IAAO,EAEvC,CAKAu5L,EAAUK,SAAWjqI,EACrB4pI,EAAUW,mBAAqBD,EAI3BV,EAAUnhD,WACVghD,EAAkBj4L,GAASA,GAAS,CAAC,EAAGi4L,GAAkBa,IAE1DlB,GAAmB1qB,EAAcQ,wBACjCkrB,GAAoB,GAOpBA,IAAsBL,GACtBtC,EAAW73L,KAAKI,MAAMy3L,EAAY1zL,GAAc,GAAIwoK,GAAO8tB,EAAenrL,KAAI,SAAU4rF,GAAa,MAAQ,CACzGA,UAAWA,EACX/rF,QAASvN,GAAS,CAAE6M,KAAMA,GAAQU,GAClC,MAAK,GAEjB,EAOSxP,EAAI,EAAGA,EAAIo5L,GAAmBp5L,IACnCo6L,EAAQp6L,GAQZ,GANA45L,EAAkB33L,GAAS,CAAC,EAAGi4L,GAM3BD,EAAYhvK,KAAM,CAClB,IAAIkwK,EAAsB,CAAC,EAC3BlB,EAAY9rL,SAAQ,SAAUrN,GAC1B,IAAIs6L,EAAiBjsB,EAAcksB,cAAcv6L,QAC1BgP,IAAnBsrL,IACAD,EAAoBr6L,GAAOs6L,EAEnC,IACAlD,EAAW73L,KAAK,CAAEk7F,UAAW4/F,GACjC,CACA,IAAIG,EAAgB/vE,QAAQ2sE,EAAWh4L,QAOvC,OANI25L,IACkB,IAAlB1yF,EAAM+X,UACLiwD,EAAcsrB,yBACfa,GAAgB,GAEpBzB,GAAkB,EACXyB,EAAgBvqB,EAAQmnB,GAAcp1L,QAAQD,SACzD,CAkBA,MAAO,CACH04L,WAnQJ,SAAoBz6L,GAChB,YAAgCgP,IAAzB8pL,EAAgB94L,EAC3B,EAkQIgvK,eAAgBA,EAChBoQ,UAjBJ,SAAmBpxK,EAAMoqI,EAAU1pI,GAC/B,IAAI0Z,EAEJ,GAAI29E,EAAM/3F,GAAMoqI,WAAaA,EACzB,OAAOp2I,QAAQD,UAEsB,QAAxCqmB,EAAKimJ,EAAc6oB,uBAAoC,IAAP9uK,GAAyBA,EAAG/a,SAAQ,SAAUw7B,GAAS,IAAIzgB,EAAI,OAAuC,QAA/BA,EAAKygB,EAAMkmI,sBAAmC,IAAP3mJ,OAAgB,EAASA,EAAGg3J,UAAUpxK,EAAMoqI,EAAW,IACtNryC,EAAM/3F,GAAMoqI,SAAWA,EACvB,IAAIg/C,EAAapoB,EAAetgK,EAASV,GACzC,IAAK,IAAIhO,KAAO+lG,EACZA,EAAM/lG,GAAK83L,cAAgB,CAAC,EAEhC,OAAOV,CACX,EAKIsD,mBA/PJ,SAA4BC,GACxB1qB,EAAU0qB,EAAatsB,EAC3B,EA8PIspB,SAAU,WAAc,OAAO5xF,CAAO,EAE9C,CAUA,SAAS6yF,GAAgBxgD,GAErB,YADiB,IAAbA,IAAuBA,GAAW,GAC/B,CACHA,SAAUA,EACV0/C,cAAe,CAAC,EAChBC,eAAgB,CAAC,EACjBmC,mBAAoB,CAAC,EAE7B,CC9TA,IAAI9C,GAAa,CACb38F,UAAW2mF,IAAwB,SAAUh5J,GACzC,IAAIimJ,EAAgBjmJ,EAAGimJ,cAAe4B,EAAU7nJ,EAAG6nJ,QAMnD5B,EAAcU,iBAAmBV,EAAcU,eAAiB4pB,GAAqBtqB,IAIjF6M,GAAoBjL,KACpBvjE,EAAAA,EAAAA,YAAU,WAAc,OAAOujE,EAAQ2qB,UAAUvsB,EAAgB,GAAG,CAAC4B,GAE7E,IACAzD,KAAM4U,IAAwB,SAAU/6E,GACpC,IAAIipE,EAASjpE,EAAMipE,OAAQjB,EAAgBhoE,EAAMgoE,cAC7CjmJ,EAAK8jJ,GAAOqW,KAAe,GAAIC,EAAYp6J,EAAG,GAAIyyK,EAAezyK,EAAG,GACpEkmJ,GAAkB7hE,EAAAA,EAAAA,YAAW6gE,KACjC5gE,EAAAA,EAAAA,YAAU,WACN,IAAItkF,EAAI6wB,EACRo1H,EAAcmU,UAAYA,EAC1B,IAAI/nF,EAAoD,QAAvCryE,EAAKimJ,EAAcU,sBAAmC,IAAP3mJ,OAAgB,EAASA,EAAGg3J,UAAU5C,GAAc4b,MAAO5V,EAAW,CAAElT,OAA4G,QAAnGr2H,EAAyB,OAApBq1H,QAAgD,IAApBA,OAA6B,EAASA,EAAgBgB,cAA2B,IAAPr2H,EAAgBA,EAAKq2H,KAChRkT,IAA4B,OAAd/nF,QAAoC,IAAdA,GAAgCA,EAAUh4F,KAAKo4L,GACxF,GAAG,CAACrY,GACR,KCnCEsY,GAAU,SAACvmJ,GAAK,OAAKA,EAAMx1C,eAAe,MAAQw1C,EAAMx1C,eAAe,IAAI,ECE3Eg8L,GAAY,SAACxmJ,GAAK,OAAKumJ,GAAQvmJ,IAAUA,EAAMx1C,eAAe,IAAI,ECElEi8L,GAAa,SAACrtL,EAAGnN,GAAC,OAAKkF,KAAKkjB,IAAIjb,EAAInN,EAAE,EAC5C,SAAS4oB,GAASzb,EAAGnN,GACjB,GAAImnL,GAAMh6K,IAAMg6K,GAAMnnL,GAClB,OAAOw6L,GAAWrtL,EAAGnN,GAEpB,GAAIs6L,GAAQntL,IAAMmtL,GAAQt6L,GAAI,CAC/B,IAAMy6L,EAASD,GAAWrtL,EAAEpJ,EAAG/D,EAAE+D,GAC3B22L,EAASF,GAAWrtL,EAAE9K,EAAGrC,EAAEqC,GAC3Bs4L,EAASJ,GAAUptL,IAAMotL,GAAUv6L,GAAKw6L,GAAWrtL,EAAE0E,EAAG7R,EAAE6R,GAAK,EACrE,OAAO3M,KAAK2jB,KAAK3jB,KAAK8O,IAAIymL,EAAQ,GAAKv1L,KAAK8O,IAAI0mL,EAAQ,GAAKx1L,KAAK8O,IAAI2mL,EAAQ,GAClF,CACJ,CCJA,IAAIC,GAA4B,WAC5B,SAASA,EAAWxkG,EAAOykG,EAAUjzK,GACjC,IAAI+U,EAAQn8B,KACsBksK,QAAlB,IAAP9kJ,EAAgB,CAAC,EAAIA,GAA4B8kJ,mBA2D1D,GAvDAlsK,KAAKs6L,WAAa,KAIlBt6L,KAAKu6L,cAAgB,KAIrBv6L,KAAKw6L,kBAAoB,KAIzBx6L,KAAKq6L,SAAW,CAAC,EACjBr6L,KAAKy6L,YAAc,WACf,GAAMt+J,EAAMo+J,eAAiBp+J,EAAMq+J,kBAAnC,CAEA,IAAItzJ,EAAOwzJ,GAAWv+J,EAAMq+J,kBAAmBr+J,EAAMypH,SACjD+0C,EAAoC,OAArBx+J,EAAMm+J,WAIrBM,EAA0BxyK,GAAS8e,EAAKvQ,OAAQ,CAAEpzB,EAAG,EAAG1B,EAAG,KAAQ,EACvE,GAAK84L,GAAiBC,EAAtB,CAEA,IAAIrnJ,EAAQrM,EAAKqM,MACbwV,EAAYwjI,KAAexjI,UAC/B5sB,EAAMypH,QAAQrnJ,KAAK4B,GAASA,GAAS,CAAC,EAAGozC,GAAQ,CAAEwV,UAAWA,KAC9D,IAAI3hC,EAAK+U,EAAMk+J,SAAUQ,EAAUzzK,EAAGyzK,QAASC,EAAS1zK,EAAG0zK,OACtDH,IACDE,GAAWA,EAAQ1+J,EAAMo+J,cAAerzJ,GACxC/K,EAAMm+J,WAAan+J,EAAMo+J,eAE7BO,GAAUA,EAAO3+J,EAAMo+J,cAAerzJ,EAT5B,CARA,CAkBd,EACAlnC,KAAK+6L,kBAAoB,SAAUnlG,EAAO1uD,GACtC/K,EAAMo+J,cAAgB3kG,EACtBz5D,EAAMq+J,kBAAoBQ,GAAe9zJ,EAAM/K,EAAM+vI,oBAEjD6P,GAAanmF,IAA4B,IAAlBA,EAAMhF,QAC7Bz0D,EAAM8+J,gBAAgBrlG,EAAO1uD,GAIjC6kJ,GAAAA,OAAY5vJ,EAAMs+J,aAAa,EACnC,EACAz6L,KAAKi7L,gBAAkB,SAAUrlG,EAAO1uD,GACpC/K,EAAM30B,MACN,IAAI4f,EAAK+U,EAAMk+J,SAAUa,EAAQ9zK,EAAG8zK,MAAOC,EAAe/zK,EAAG+zK,aACzDC,EAAUV,GAAWM,GAAe9zJ,EAAM/K,EAAM+vI,oBAAqB/vI,EAAMypH,SAC3EzpH,EAAMm+J,YAAcY,GACpBA,EAAMtlG,EAAOwlG,GAEjBD,GAAgBA,EAAavlG,EAAOwlG,EACxC,IAEI1+D,GAAa9mC,IAAUA,EAAM9B,QAAQ11F,OAAS,GAAlD,CAEA4B,KAAKq6L,SAAWA,EAChBr6L,KAAKksK,mBAAqBA,EAC1B,IACImvB,EAAcL,GADP1e,GAAiB1mF,GACW51F,KAAKksK,oBACxC34H,EAAQ8nJ,EAAY9nJ,MACpBwV,EAAYwjI,KAAexjI,UAC/B/oD,KAAK4lJ,QAAU,CAACzlJ,GAASA,GAAS,CAAC,EAAGozC,GAAQ,CAAEwV,UAAWA,KAC3D,IAAIuyI,EAAiBjB,EAASiB,eAC9BA,GACIA,EAAe1lG,EAAO8kG,GAAWW,EAAar7L,KAAK4lJ,UACvD5lJ,KAAKu7L,gBAAkB7c,GAAKlB,GAAgBxpJ,OAAQ,cAAeh0B,KAAK+6L,mBAAoBvd,GAAgBxpJ,OAAQ,YAAah0B,KAAKi7L,iBAAkBzd,GAAgBxpJ,OAAQ,gBAAiBh0B,KAAKi7L,iBAX5L,CAYd,CAQA,OAPAb,EAAWt7L,UAAU08L,eAAiB,SAAUnB,GAC5Cr6L,KAAKq6L,SAAWA,CACpB,EACAD,EAAWt7L,UAAU0I,IAAM,WACvBxH,KAAKu7L,iBAAmBv7L,KAAKu7L,kBAC7BpP,GAAWQ,OAAO3sL,KAAKy6L,YAC3B,EACOL,CACX,CApFgC,GAqFhC,SAASY,GAAe9zJ,EAAMglI,GAC1B,OAAOA,EAAqB,CAAE34H,MAAO24H,EAAmBhlI,EAAKqM,QAAWrM,CAC5E,CACA,SAASu0J,GAAc9uL,EAAGnN,GACtB,MAAO,CAAE+D,EAAGoJ,EAAEpJ,EAAI/D,EAAE+D,EAAG1B,EAAG8K,EAAE9K,EAAIrC,EAAEqC,EACtC,CACA,SAAS64L,GAAWtzK,EAAIw+H,GACpB,IAAIryG,EAAQnsB,EAAGmsB,MACf,MAAO,CACHA,MAAOA,EACP/8B,MAAOilL,GAAcloJ,EAAOmoJ,GAAgB91C,IAC5CjvH,OAAQ8kK,GAAcloJ,EAAOooJ,GAAiB/1C,IAC9CkpB,SAAUC,GAAYnpB,EAAS,IAEvC,CACA,SAAS+1C,GAAiB/1C,GACtB,OAAOA,EAAQ,EACnB,CACA,SAAS81C,GAAgB91C,GACrB,OAAOA,EAAQA,EAAQxnJ,OAAS,EACpC,CACA,SAAS2wK,GAAYnpB,EAASmuC,GAC1B,GAAInuC,EAAQxnJ,OAAS,EACjB,MAAO,CAAEmF,EAAG,EAAG1B,EAAG,GAKtB,IAHA,IAAI3D,EAAI0nJ,EAAQxnJ,OAAS,EACrBw9L,EAAmB,KACnBC,EAAYH,GAAgB91C,GACzB1nJ,GAAK,IACR09L,EAAmBh2C,EAAQ1nJ,KACvB29L,EAAU9yI,UAAY6yI,EAAiB7yI,UACvCqlI,GAAsB2F,MAG1B71L,IAEJ,IAAK09L,EACD,MAAO,CAAEr4L,EAAG,EAAG1B,EAAG,GAEtB,IAAIwuB,GAAQwrK,EAAU9yI,UAAY6yI,EAAiB7yI,WAAa,IAChE,GAAa,IAAT14B,EACA,MAAO,CAAE9sB,EAAG,EAAG1B,EAAG,GAEtB,IAAI2sK,EAAkB,CAClBjrK,GAAIs4L,EAAUt4L,EAAIq4L,EAAiBr4L,GAAK8sB,EACxCxuB,GAAIg6L,EAAUh6L,EAAI+5L,EAAiB/5L,GAAKwuB,GAQ5C,OANIm+I,EAAgBjrK,IAAMulB,MACtB0lJ,EAAgBjrK,EAAI,GAEpBirK,EAAgB3sK,IAAMinB,MACtB0lJ,EAAgB3sK,EAAI,GAEjB2sK,CACX,CCpJA,SAASstB,GAAWC,GAChB,OAAOA,EAAKp3L,IAAMo3L,EAAK3kL,GAC3B,CACA,SAAS4kL,GAAOl7L,EAAOmqC,EAAQgxJ,GAG3B,YAFe,IAAXhxJ,IAAqBA,EAAS,QACd,IAAhBgxJ,IAA0BA,EAAc,KACrC7zK,GAAStnB,EAAOmqC,GAAUgxJ,CACrC,CACA,SAASC,GAAc1lL,EAAOmuC,EAAQ1Z,EAAQi6G,QAC3B,IAAXA,IAAqBA,EAAS,IAClC1uI,EAAM0uI,OAASA,EACf1uI,EAAM2lL,YAAc5hB,GAAI51H,EAAOvtC,IAAKutC,EAAOhgD,IAAK6R,EAAM0uI,QACtD1uI,EAAMyiC,MAAQ6iJ,GAAW7wJ,GAAU6wJ,GAAWn3I,IAC1Cq3I,GAAOxlL,EAAMyiC,MAAO,EAAG,OAAWgV,MAAMz3C,EAAMyiC,UAC9CziC,EAAMyiC,MAAQ,GAClBziC,EAAM2iC,UACFohI,GAAItvI,EAAO7zB,IAAK6zB,EAAOtmC,IAAK6R,EAAM0uI,QAAU1uI,EAAM2lL,aAClDH,GAAOxlL,EAAM2iC,YAAc8U,MAAMz3C,EAAM2iC,cACvC3iC,EAAM2iC,UAAY,EAC1B,CACA,SAASijJ,GAAa5lL,EAAOmuC,EAAQ1Z,EAAQi6G,GACzCg3C,GAAc1lL,EAAMjT,EAAGohD,EAAOphD,EAAG0nC,EAAO1nC,EAAc,OAAX2hJ,QAA8B,IAAXA,OAAoB,EAASA,EAAOowB,SAClG4mB,GAAc1lL,EAAM3U,EAAG8iD,EAAO9iD,EAAGopC,EAAOppC,EAAc,OAAXqjJ,QAA8B,IAAXA,OAAoB,EAASA,EAAOqwB,QACtG,CACA,SAAS8mB,GAAiBpxJ,EAAQ0hH,EAAUzyI,GACxC+wB,EAAO7zB,IAAM8C,EAAO9C,IAAMu1I,EAASv1I,IACnC6zB,EAAOtmC,IAAMsmC,EAAO7zB,IAAM0kL,GAAWnvC,EACzC,CAKA,SAAS2vC,GAAyBrxJ,EAAQimI,EAAQh3J,GAC9C+wB,EAAO7zB,IAAM85J,EAAO95J,IAAM8C,EAAO9C,IACjC6zB,EAAOtmC,IAAMsmC,EAAO7zB,IAAM0kL,GAAW5qB,EACzC,CACA,SAASqrB,GAAqBtxJ,EAAQimI,EAAQh3J,GAC1CoiL,GAAyBrxJ,EAAO1nC,EAAG2tK,EAAO3tK,EAAG2W,EAAO3W,GACpD+4L,GAAyBrxJ,EAAOppC,EAAGqvK,EAAOrvK,EAAGqY,EAAOrY,EACxD,CCfA,SAAS26L,GAA4BT,EAAM3kL,EAAKzS,GAC5C,MAAO,CACHyS,SAAapJ,IAARoJ,EAAoB2kL,EAAK3kL,IAAMA,OAAMpJ,EAC1CrJ,SAAaqJ,IAARrJ,EACCo3L,EAAKp3L,IAAMA,GAAOo3L,EAAKp3L,IAAMo3L,EAAK3kL,UAClCpJ,EAEd,CAeA,SAASyuL,GAA4BC,EAAYC,GAC7C,IAAIv1K,EACAhQ,EAAMulL,EAAgBvlL,IAAMslL,EAAWtlL,IACvCzS,EAAMg4L,EAAgBh4L,IAAM+3L,EAAW/3L,IAO3C,OAJIg4L,EAAgBh4L,IAAMg4L,EAAgBvlL,IACtCslL,EAAW/3L,IAAM+3L,EAAWtlL,MACAA,GAA5BgQ,EAAK8jJ,GAAO,CAACvmK,EAAKyS,GAAM,IAAa,GAAIzS,EAAMyiB,EAAG,IAE/C,CAAEhQ,IAAKA,EAAKzS,IAAKA,EAC5B,CAuCA,IAAIi4L,GAAiB,IAiBrB,SAASC,GAAmBC,EAAaC,EAAUC,GAC/C,MAAO,CACH5lL,IAAK6lL,GAAoBH,EAAaC,GACtCp4L,IAAKs4L,GAAoBH,EAAaE,GAE9C,CACA,SAASC,GAAoBH,EAAa96L,GACtC,IAAIolB,EACJ,MAA8B,kBAAhB01K,EACRA,EAC8B,QAA7B11K,EAAK01K,EAAY96L,UAA2B,IAAPolB,EAAgBA,EAAK,CACrE,CC9HA,SAAS81K,GAAS1xI,GACd,MAAO,CAACA,EAAS,KAAMA,EAAS,KACpC,CCGA,SAAS2xI,GAAwB/1K,GAC7B,IAAIjkB,EAAMikB,EAAGjkB,IACb,MAAO,CACHI,EAAG,CAAE6T,IAFgBgQ,EAAGlkB,KAERyB,IAFsByiB,EAAGmtJ,OAGzC1yK,EAAG,CAAEuV,IAAKjU,EAAKwB,IAH0CyiB,EAAGotJ,QAKpE,CCXA,SAAS4oB,GAAgBnkJ,GACrB,YAAiBjrC,IAAVirC,GAAiC,IAAVA,CAClC,CACA,SAASokJ,GAASj2K,GACd,IAAI6xB,EAAQ7xB,EAAG6xB,MAAO47H,EAASztJ,EAAGytJ,OAAQC,EAAS1tJ,EAAG0tJ,OACtD,OAASsoB,GAAgBnkJ,KACpBmkJ,GAAgBvoB,KAChBuoB,GAAgBtoB,EACzB,CACA,SAASiB,GAAav9J,GAClB,OAAQ6kL,GAAS7kL,IACb8kL,GAAa9kL,EAAOjV,IACpB+5L,GAAa9kL,EAAO3W,IACpB2W,EAAOnH,GACPmH,EAAOi8J,QACPj8J,EAAOk8J,SACPl8J,EAAOm8J,OACf,CACA,SAAS2oB,GAAax8L,GAClB,OAAOA,GAAmB,OAAVA,CACpB,CCbA,SAASy8L,GAAWhqJ,EAAO0F,EAAOkjJ,GAG9B,OAAOA,EADMljJ,GADY1F,EAAQ4oJ,EAGrC,CAIA,SAASqB,GAAgBjqJ,EAAO4F,EAAWF,EAAOkjJ,EAAasB,GAI3D,YAHiBzvL,IAAbyvL,IACAlqJ,EAAQgqJ,GAAWhqJ,EAAOkqJ,EAAUtB,IAEjCoB,GAAWhqJ,EAAO0F,EAAOkjJ,GAAehjJ,CACnD,CAIA,SAASukJ,GAAe3B,EAAM5iJ,EAAWF,EAAOkjJ,EAAasB,QACvC,IAAdtkJ,IAAwBA,EAAY,QAC1B,IAAVF,IAAoBA,EAAQ,GAChC8iJ,EAAK3kL,IAAMomL,GAAgBzB,EAAK3kL,IAAK+hC,EAAWF,EAAOkjJ,EAAasB,GACpE1B,EAAKp3L,IAAM64L,GAAgBzB,EAAKp3L,IAAKw0C,EAAWF,EAAOkjJ,EAAasB,EACxE,CAIA,SAASE,GAActiJ,EAAKj0B,GACxB,IAAI7jB,EAAI6jB,EAAG7jB,EAAG1B,EAAIulB,EAAGvlB,EACrB67L,GAAeriJ,EAAI93C,EAAGA,EAAE41C,UAAW51C,EAAE01C,MAAO11C,EAAE44L,aAC9CuB,GAAeriJ,EAAIx5C,EAAGA,EAAEs3C,UAAWt3C,EAAEo3C,MAAOp3C,EAAEs6L,YAClD,CAwCA,SAASyB,GAAc7B,EAAM3zK,GACzB2zK,EAAK3kL,IAAM2kL,EAAK3kL,IAAMgR,EACtB2zK,EAAKp3L,IAAMo3L,EAAKp3L,IAAMyjB,CAC1B,CAMA,SAASy1K,GAAc9B,EAAM+B,EAAY12K,GACrC,IAAI6wB,EAAKizH,GAAO9jJ,EAAI,GAAIpoB,EAAMi5C,EAAG,GAAI8lJ,EAAW9lJ,EAAG,GAAI+lJ,EAAY/lJ,EAAG,GAClEgmJ,OAAuCjwL,IAA1B8vL,EAAWE,GAA2BF,EAAWE,GAAa,GAC3E7B,EAAc5hB,GAAIwhB,EAAK3kL,IAAK2kL,EAAKp3L,IAAKs5L,GAE1CP,GAAe3B,EAAM+B,EAAW9+L,GAAM8+L,EAAWC,GAAW5B,EAAa2B,EAAW7kJ,MACxF,CAIA,IAAIilJ,GAAQ,CAAC,IAAK,SAAU,WACxBC,GAAQ,CAAC,IAAK,SAAU,WAI5B,SAASC,GAAa/iJ,EAAKnsB,GACvB2uK,GAAcxiJ,EAAI93C,EAAG2rB,EAAWgvK,IAChCL,GAAcxiJ,EAAIx5C,EAAGqtB,EAAWivK,GACpC,CCrGA,SAASE,GAAmB9jG,EAAUygG,GAClC,OAAOmC,GHiBX,SAA4B5pJ,EAAOynJ,GAC/B,IAAKA,EACD,OAAOznJ,EACX,IAAI+qJ,EAAUtD,EAAe,CAAEz3L,EAAGgwC,EAAMrwC,KAAMrB,EAAG0xC,EAAMpwC,MACnDo7L,EAAcvD,EAAe,CAAEz3L,EAAGgwC,EAAMghI,MAAO1yK,EAAG0xC,EAAMihI,SAC5D,MAAO,CACHrxK,IAAKm7L,EAAQz8L,EACbqB,KAAMo7L,EAAQ/6L,EACdixK,OAAQ+pB,EAAY18L,EACpB0yK,MAAOgqB,EAAYh7L,EAE3B,CG5BmCi7L,CAAmBjkG,EAASl2F,wBAAyB22L,GACxF,CCcA,IAAIyD,GAAsB,IAAI1xF,QAK1B2xF,GAA2C,WAC3C,SAASA,EAA0BrxB,GAI/BrtK,KAAK2+L,eAAiB,KACtB3+L,KAAK4+L,YAAa,EAClB5+L,KAAK6+L,iBAAmB,KACxB7+L,KAAKm8L,YAAc,CAAE54L,EAAG,EAAG1B,EAAG,GAI9B7B,KAAK8+L,aAAc,EACnB9+L,KAAK++L,uBAAwB,EAI7B/+L,KAAKg/L,QC9ByB,CAClCz7L,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IDgC9C3E,KAAKqtK,cAAgBA,CACzB,CAyXA,OAxXAqxB,EAA0B5/L,UAAUyI,MAAQ,SAAU03L,EAAa73K,GAC/D,IAAI+U,EAAQn8B,KACsBy7C,QAAlB,IAAPr0B,EAAgB,CAAC,EAAIA,GAAY83K,aAAcA,OAAsB,IAAPzjJ,GAAwBA,EAI/F,IAAqC,IAAjCz7C,KAAKqtK,cAAcmU,UAAvB,CAsFAxhL,KAAKm/L,WAAa,IAAI/E,GAAW6E,EAAa,CAC1C3D,eArFiB,SAAU1lG,GAG3Bz5D,EAAM44J,gBACFmK,GACA/iK,EAAM+iK,aAAa5iB,GAAiB1mF,EAAO,QAAQriD,MAE3D,EA+EIsnJ,QA9EU,SAAUjlG,EAAO1uD,GAC3B,IAAI9f,EAEA6wB,EAAK9b,EAAMwyI,WAAYlD,EAAOxzH,EAAGwzH,KAAM2zB,EAAkBnnJ,EAAGmnJ,gBAAiBC,EAAcpnJ,EAAGonJ,cAC9F5zB,GAAS2zB,IACLjjK,EAAMwiK,gBACNxiK,EAAMwiK,iBACVxiK,EAAMwiK,eAAiB7gB,GAAcrS,GAEhCtvI,EAAMwiK,mBAGfxiK,EAAMyiK,YAAa,EACnBziK,EAAM0iK,iBAAmB,KACzB1iK,EAAMmjK,qBACFnjK,EAAMkxI,cAAciE,aACpBn1I,EAAMkxI,cAAciE,WAAWiuB,oBAAqB,EACpDpjK,EAAMkxI,cAAciE,WAAWrmI,YAASj9B,GAK5CkvL,IAAS,SAAUnB,GACf,IAAI30K,EAAI6wB,EACJnrC,EAAUqvB,EAAMqjK,mBAAmBzD,GAAMxvL,OAAS,EAItD,GAAIwnK,GAAQ7uI,KAAKp4B,GAAU,CACvB,IAAI2yL,EAA+G,QAA/FxnJ,EAA+C,QAAzC7wB,EAAK+U,EAAMkxI,cAAciE,kBAA+B,IAAPlqJ,OAAgB,EAASA,EAAG8pJ,cAA2B,IAAPj5H,OAAgB,EAASA,EAAGynJ,OAAO3D,GAC9J,GAAI0D,EAEA3yL,EADegvL,GAAW2D,IACJp1H,WAAWv9D,GAAW,IAEpD,CACAqvB,EAAMggK,YAAYJ,GAAQjvL,CAC9B,IAEgB,OAAhBuyL,QAAwC,IAAhBA,GAAkCA,EAAYzpG,EAAO1uD,GAC/B,QAA7C9f,EAAK+U,EAAMkxI,cAAcU,sBAAmC,IAAP3mJ,GAAyBA,EAAGg3J,UAAU5C,GAAc2b,MAAM,GACpH,EAuCI2D,OAtCS,SAAUllG,EAAO1uD,GAE1B,IAAI9f,EAAK+U,EAAMwyI,WAAYywB,EAAkBh4K,EAAGg4K,gBAAiBO,EAAoBv4K,EAAGu4K,kBAAmBC,EAAkBx4K,EAAGw4K,gBAAiBC,EAASz4K,EAAGy4K,OAE7J,GAAKT,GAAoBjjK,EAAMwiK,eAA/B,CAEA,IAAIhoK,EAASuQ,EAAKvQ,OAElB,GAAIgpK,GAAgD,OAA3BxjK,EAAM0iK,iBAM3B,OALA1iK,EAAM0iK,iBAmUtB,SAA6BloK,EAAQmpK,QACX,IAAlBA,IAA4BA,EAAgB,IAChD,IAAI9yK,EAAY,KACZtoB,KAAKkjB,IAAI+O,EAAO90B,GAAKi+L,EACrB9yK,EAAY,IAEPtoB,KAAKkjB,IAAI+O,EAAOpzB,GAAKu8L,IAC1B9yK,EAAY,KAEhB,OAAOA,CACX,CA7UyC+yK,CAAoBppK,QAEd,OAA3BwF,EAAM0iK,mBACc,OAApBe,QAAgD,IAApBA,GAAsCA,EAAgBzjK,EAAM0iK,oBAKhG1iK,EAAM6jK,WAAW,IAAK94J,EAAKqM,MAAO5c,GAClCwF,EAAM6jK,WAAW,IAAK94J,EAAKqM,MAAO5c,GAOlCwF,EAAMkxI,cAAcS,aAKT,OAAX+xB,QAA8B,IAAXA,GAA6BA,EAAOjqG,EAAO1uD,EAzBpD,CA0Bd,EAQIi0J,aAPe,SAAUvlG,EAAO1uD,GAChC,OAAO/K,EAAM7V,KAAKsvE,EAAO1uD,EAC7B,GAMG,CAAEglI,mBAAoBlsK,KAAKqtK,cAAc4yB,yBA1FlC,CA2Fd,EACAvB,EAA0B5/L,UAAUwnB,KAAO,SAAUsvE,EAAO1uD,GACxD,IAAI03J,EAAa5+L,KAAK4+L,WAEtB,GADA5+L,KAAK4rL,SACAgT,EAAL,CAEA,IAAI9vB,EAAW5nI,EAAK4nI,SACpB9uK,KAAK4yL,eAAe9jB,GACpB,IAAIoxB,EAAYlgM,KAAK2uK,WAAWuxB,UAClB,OAAdA,QAAoC,IAAdA,GAAgCA,EAAUtqG,EAAO1uD,EAJ7D,CAKd,EACAw3J,EAA0B5/L,UAAU8sL,OAAS,WACzC,IAAIxkK,EAAI6wB,EACRj4C,KAAK4+L,YAAa,EACd5+L,KAAKqtK,cAAciE,aACnBtxK,KAAKqtK,cAAciE,WAAWiuB,oBAAqB,GAE5B,QAA1Bn4K,EAAKpnB,KAAKm/L,kBAA+B,IAAP/3K,GAAyBA,EAAG5f,MAC/DxH,KAAKm/L,gBAAanxL,GACIhO,KAAK2uK,WAAWywB,iBACdp/L,KAAK2+L,iBACzB3+L,KAAK2+L,iBACL3+L,KAAK2+L,eAAiB,MAEmB,QAA5C1mJ,EAAKj4C,KAAKqtK,cAAcU,sBAAmC,IAAP91H,GAAyBA,EAAGmmI,UAAU5C,GAAc2b,MAAM,EACnH,EACAuH,EAA0B5/L,UAAUkhM,WAAa,SAAUjE,EAAMoE,EAAQxpK,GACrE,IAAI80I,EAAOzrK,KAAK2uK,WAAWlD,KAE3B,GAAK90I,GAAWypK,GAAWrE,EAAMtwB,EAAMzrK,KAAK6+L,kBAA5C,CAEA,IAAIwB,EAAYrgM,KAAKw/L,mBAAmBzD,GACpC36L,EAAOpB,KAAKm8L,YAAYJ,GAAQplK,EAAOolK,GAEvC/7L,KAAK8+L,aAAe9+L,KAAK8+L,YAAY/C,KACrC36L,ENxKZ,SAA0BmyC,EAAOnsB,EAAI43K,GACjC,IAAI5nL,EAAMgQ,EAAGhQ,IAAKzS,EAAMyiB,EAAGziB,IAS3B,YARYqJ,IAARoJ,GAAqBm8B,EAAQn8B,EAE7Bm8B,EAAQyrJ,EAAUzkB,GAAInjK,EAAKm8B,EAAOyrJ,EAAQ5nL,KAAO1S,KAAKC,IAAI4uC,EAAOn8B,QAEpDpJ,IAARrJ,GAAqB4uC,EAAQ5uC,IAElC4uC,EAAQyrJ,EAAUzkB,GAAI51K,EAAK4uC,EAAOyrJ,EAAQr6L,KAAOD,KAAK0S,IAAIm8B,EAAO5uC,IAE9D4uC,CACX,CM6JmB+sJ,CAAiBl/L,EAAMpB,KAAK8+L,YAAY/C,GAAO/7L,KAAKg/L,QAAQjD,KAEvEsE,EAAUxwI,IAAIzuD,EAPJ,CAQd,EACAs9L,EAA0B5/L,UAAUwgM,mBAAqB,WACrD,IAAInjK,EAAQn8B,KACRonB,EAAKpnB,KAAK2uK,WAAYwC,EAAkB/pJ,EAAG+pJ,gBAAiB2rB,EAAc11K,EAAG01K,YAC7E5rB,GAAUlxK,KAAKqtK,cAAciE,YAAc,CAAC,GAAGJ,OAC/CqvB,EAAkBvgM,KAAK8+L,YACvB3tB,GAAmBjD,GAAYiD,GAC1BnxK,KAAK8+L,cACN9+L,KAAK8+L,YAAc9+L,KAAKwgM,yBAKxBxgM,KAAK8+L,eADL3tB,IAAmBD,IN1JnC,SAAiCuvB,EAAWr5K,GACxC,IAAIjkB,EAAMikB,EAAGjkB,IAAKD,EAAOkkB,EAAGlkB,KAAMsxK,EAASptJ,EAAGotJ,OAAQD,EAAQntJ,EAAGmtJ,MACjE,MAAO,CACHhxK,EAAGi5L,GAA4BiE,EAAUl9L,EAAGL,EAAMqxK,GAClD1yK,EAAG26L,GAA4BiE,EAAU5+L,EAAGsB,EAAKqxK,GAEzD,CMqJmCksB,CAAwBxvB,EAAOwuB,OAAQvuB,GAMlEnxK,KAAKg/L,QNjGb,SAA4BlC,GAQxB,YAPoB,IAAhBA,IAA0BA,EAAcF,KACxB,IAAhBE,EACAA,EAAc,GAEO,IAAhBA,IACLA,EAAcF,IAEX,CACHr5L,EAAGs5L,GAAmBC,EAAa,OAAQ,SAC3Cj7L,EAAGg7L,GAAmBC,EAAa,MAAO,UAElD,CMqFuB6D,CAAmB7D,GAK9ByD,IAAoBvgM,KAAK8+L,aACzB5tB,GACAlxK,KAAK8+L,cACJ9+L,KAAK++L,uBACN7B,IAAS,SAAUnB,GACX5/J,EAAMqjK,mBAAmBzD,KACzB5/J,EAAM2iK,YAAY/C,GN1HtC,SAA+B7qB,EAAQ4tB,GACnC,IAAI8B,EAAsB,CAAC,EAO3B,YANwB5yL,IAApB8wL,EAAY1nL,MACZwpL,EAAoBxpL,IAAM0nL,EAAY1nL,IAAM85J,EAAO95J,UAE/BpJ,IAApB8wL,EAAYn6L,MACZi8L,EAAoBj8L,IAAMm6L,EAAYn6L,IAAMusK,EAAO95J,KAEhDwpL,CACX,CMiH8CC,CAAsB3vB,EAAOwuB,OAAO3D,GAAO5/J,EAAM2iK,YAAY/C,IAE/F,GAER,EACA2C,EAA0B5/L,UAAU0hM,sBAAwB,WACxD,IAAIp5K,EAAKpnB,KAAK2uK,WAAYmwB,EAAc13K,EAAG+pJ,gBAAiB2vB,EAA2B15K,EAAG05K,yBAC1F,IAAKhC,IAAgB5wB,GAAY4wB,GAC7B,OAAO,EACX,IAAIiC,EAAqBjC,EAAYhyL,QAEjCwkK,EAAatxK,KAAKqtK,cAAciE,WAEpC,IAAKA,IAAeA,EAAWJ,OAC3B,OAAO,EACX,IAAI8vB,ED3NZ,SAAwBvtK,EAASwtK,EAAoB/0B,GACjD,IAAIg1B,EAAc7C,GAAmB5qK,EAASy4I,GAC1Ci1B,EAASF,EAAmBE,OAKhC,OAJIA,IACAvD,GAAcsD,EAAY39L,EAAG49L,EAAO59L,GACpCq6L,GAAcsD,EAAYr/L,EAAGs/L,EAAOt/L,IAEjCq/L,CACX,CCmN6BE,CAAeL,EAAoBzvB,EAAWpzI,KAAMl+B,KAAKqtK,cAAc4yB,yBACxFoB,ENnKZ,SAAiCZ,EAAWO,GACxC,MAAO,CACHz9L,EAAGk5L,GAA4BgE,EAAUl9L,EAAGy9L,EAAez9L,GAC3D1B,EAAG46L,GAA4BgE,EAAU5+L,EAAGm/L,EAAen/L,GAEnE,CM8JkCy/L,CAAwBhwB,EAAWJ,OAAOwuB,OAAQsB,GAK5E,GAAIF,EAA0B,CAC1B,IAAIS,EAAkBT,EJ5NlC,SAAiC15K,GAC7B,IAAI7jB,EAAI6jB,EAAG7jB,EAAG1B,EAAIulB,EAAGvlB,EACrB,MAAO,CAAEsB,IAAKtB,EAAEuV,IAAKm9J,MAAOhxK,EAAEoB,IAAK6vK,OAAQ3yK,EAAE8C,IAAKzB,KAAMK,EAAE6T,IAC9D,CIyN2DoqL,CAAwBH,IACvErhM,KAAK++L,wBAA0BwC,EAC3BA,IACAF,EAAsBlE,GAAwBoE,GAEtD,CACA,OAAOF,CACX,EACA3C,EAA0B5/L,UAAU8zL,eAAiB,SAAU9jB,GAC3D,IAAI3yI,EAAQn8B,KACRonB,EAAKpnB,KAAK2uK,WAAYlD,EAAOrkJ,EAAGqkJ,KAAMg2B,EAAer6K,EAAGq6K,aAAc3E,EAAc11K,EAAG01K,YAAa4E,EAAiBt6K,EAAGs6K,eAAgBC,EAAmBv6K,EAAGu6K,iBAAkBC,EAAsBx6K,EAAGw6K,oBACzM9C,EAAc9+L,KAAK8+L,aAAe,CAAC,EACnC+C,EAAqB3E,IAAS,SAAUnB,GACxC,IAAI30K,EACJ,GAAKg5K,GAAWrE,EAAMtwB,EAAMtvI,EAAM0iK,kBAAlC,CAGA,IAAIvxG,EAAoG,QAAtFlmE,EAAqB,OAAhB03K,QAAwC,IAAhBA,OAAyB,EAASA,EAAY/C,UAA0B,IAAP30K,EAAgBA,EAAK,CAAC,EAClIu6K,IACAr0G,EAAa,CAAEl2E,IAAK,EAAGzS,IAAK,IAOhC,IAAI6tL,EAAkBsK,EAAc,IAAM,IACtCrK,EAAgBqK,EAAc,GAAK,IACnC9J,EAAU7yL,GAASA,GAAS,CAAE6M,KAAM,UAAW8hK,SAAU2yB,EAAe3yB,EAASitB,GAAQ,EAAGvJ,gBAAiBA,EAAiBC,cAAeA,EAAejI,aAAc,IAAKxH,UAAW,EAAGD,UAAW,IAAM2e,GAAiBp0G,GAInO,OAAOnxD,EAAM2lK,wBAAwB/F,EAAM/I,EAhB3C,CAiBJ,IAEA,OAAOhyL,QAAQypC,IAAIo3J,GAAoBpgM,KAAKmgM,EAChD,EACAlD,EAA0B5/L,UAAUgjM,wBAA0B,SAAU/F,EAAMzuG,GAE1E,OAAOslG,GAAemJ,EADN/7L,KAAKw/L,mBAAmBzD,GACD,EAAGzuG,EAC9C,EACAoxG,EAA0B5/L,UAAUi2L,cAAgB,WAChD,IAAI54J,EAAQn8B,KACZk9L,IAAS,SAAUnB,GAAQ,OAAO5/J,EAAMqjK,mBAAmBzD,GAAMz1K,MAAQ,GAC7E,EAOAo4K,EAA0B5/L,UAAU0gM,mBAAqB,SAAUzD,GAC/D,IAAI30K,EAAI6wB,EACJ8pJ,EAAU,QAAUhG,EAAKxgL,cACzBymL,EAAsBhiM,KAAKqtK,cAAcsB,WAAWozB,GACxD,OAAOC,GAEDhiM,KAAKqtK,cAAc1tF,SAASo8G,EAA4G,QAArG9jJ,EAAsD,QAAhD7wB,EAAKpnB,KAAKqtK,cAAcsB,WAAWvxD,eAA4B,IAAPh2F,OAAgB,EAASA,EAAG20K,UAA0B,IAAP9jJ,EAAgBA,EAAK,EAC/K,EACAymJ,EAA0B5/L,UAAUogM,aAAe,SAAU3rJ,GACzD,IAAIpX,EAAQn8B,KACZk9L,IAAS,SAAUnB,GAGf,GAAKqE,GAAWrE,EAFL5/J,EAAMwyI,WAAWlD,KAEAtvI,EAAM0iK,kBAAlC,CAEA,IAAIvtB,EAAan1I,EAAMkxI,cAAciE,WACjC+uB,EAAYlkK,EAAMqjK,mBAAmBzD,GACzC,GAAIzqB,GAAcA,EAAWJ,OAAQ,CACjC,IAAI9pJ,EAAKkqJ,EAAWJ,OAAOwuB,OAAO3D,GAAO3kL,EAAMgQ,EAAGhQ,IAAKzS,EAAMyiB,EAAGziB,IAChE07L,EAAUxwI,IAAItc,EAAMwoJ,GAAQxhB,GAAInjK,EAAKzS,EAAK,IAC9C,CANU,CAOd,GACJ,EAMA+5L,EAA0B5/L,UAAUmjM,+BAAiC,WACjE,IACI76K,EADA+U,EAAQn8B,KAERi4C,EAAKj4C,KAAK2uK,WAAYlD,EAAOxzH,EAAGwzH,KAAM0F,EAAkBl5H,EAAGk5H,gBAC3DG,EAAatxK,KAAKqtK,cAAciE,WACpC,GAAKpD,GAAYiD,IAAqBG,GAAetxK,KAAK8+L,YAA1D,CAMA9+L,KAAK+0L,gBAKL,IAAImN,EAAc,CAAE3+L,EAAG,EAAG1B,EAAG,GAC7Bq7L,IAAS,SAAUnB,GACf,IAAIsE,EAAYlkK,EAAMqjK,mBAAmBzD,GACzC,GAAIsE,EAAW,CACX,IAAIvT,EAASuT,EAAU9zL,MACvB21L,EAAYnG,GNnQ5B,SAAoBp3I,EAAQ1Z,GACxB,IAAIi6G,EAAS,GACTi9C,EAAerG,GAAWn3I,GAC1BuM,EAAe4qI,GAAW7wJ,GAO9B,OANIimB,EAAeixI,EACfj9C,EAAS2hB,GAAS57H,EAAO7zB,IAAK6zB,EAAOtmC,IAAMw9L,EAAcx9I,EAAOvtC,KAE3D+qL,EAAejxI,IACpBg0F,EAAS2hB,GAASliH,EAAOvtC,IAAKutC,EAAOhgD,IAAMusD,EAAcjmB,EAAO7zB,MAE7Do8J,GAAM,EAAG,EAAGtuB,EACvB,CMwPoC0yB,CAAW,CAAExgK,IAAK01K,EAAQnoL,IAAKmoL,GAAU3wJ,EAAM2iK,YAAY/C,GACnF,CACJ,IAIA,IAAInmB,EAAoB51K,KAAKqtK,cAAcsB,WAAWiH,kBACtD51K,KAAKqtK,cAAchnD,cAAc/5F,MAAM4C,UAAY0mJ,EAC7CA,EAAkB,CAAC,EAAG,IACtB,OACqB,QAA1BxuJ,EAAKkqJ,EAAWpzI,YAAyB,IAAP9W,GAAyBA,EAAGg7K,eAC/D9wB,EAAW+wB,eACXriM,KAAKs/L,qBAKLpC,IAAS,SAAUnB,GACf,GAAKqE,GAAWrE,EAAMtwB,EAAM,MAA5B,CAKA,IAAI40B,EAAYlkK,EAAMqjK,mBAAmBzD,GACrC30K,EAAK+U,EAAM2iK,YAAY/C,GAAO3kL,EAAMgQ,EAAGhQ,IAAKzS,EAAMyiB,EAAGziB,IACzD07L,EAAUxwI,IAAI0qH,GAAInjK,EAAKzS,EAAKu9L,EAAYnG,IAN9B,CAOd,GAzCU,CA0Cd,EACA2C,EAA0B5/L,UAAUwjM,aAAe,WAC/C,IACIl7K,EADA+U,EAAQn8B,KAEZy+L,GAAoB5uI,IAAI7vD,KAAKqtK,cAAertK,MAC5C,IAIIuiM,EAAsB/kB,GAJZx9K,KAAKqtK,cAAchnD,cAIkB,eAAe,SAAUzwB,GACxE,IAAIxuE,EAAK+U,EAAMwyI,WAAYlD,EAAOrkJ,EAAGqkJ,KAAMxzH,EAAK7wB,EAAG+vJ,aACnD1L,SADuF,IAAPxzH,GAAuBA,IAC/E9b,EAAM50B,MAAMquF,EACxC,IACI4sG,EAAyB,WAErBt0B,GADkB/xI,EAAMwyI,WAAWwC,mBAEnCh1I,EAAM2iK,YAAc3iK,EAAMqkK,wBAElC,EACIlvB,EAAatxK,KAAKqtK,cAAciE,WAChCmxB,EAA4BnxB,EAAWzjI,iBAAiB,UAAW20J,GACnElxB,IAAeA,EAAWJ,SACC,QAA1B9pJ,EAAKkqJ,EAAWpzI,YAAyB,IAAP9W,GAAyBA,EAAGg7K,eAC/D9wB,EAAW+wB,gBAEfG,IAKA,IAAIE,EAAqB9mB,GAAY5nJ,OAAQ,UAAU,WACnD,OAAOmI,EAAM8lK,gCACjB,IAkBA,OAbA3wB,EAAWzjI,iBAAiB,aAAc,SAAUzmB,GAChD,IAAI5Q,EAAQ4Q,EAAG5Q,MAAOmsL,EAAmBv7K,EAAGu7K,iBACxCxmK,EAAMyiK,YAAc+D,IACpBzF,IAAS,SAAUnB,GACf,IAAI7G,EAAc/4J,EAAMqjK,mBAAmBzD,GACtC7G,IAEL/4J,EAAMggK,YAAYJ,IAASvlL,EAAMulL,GAAM5iJ,UACvC+7I,EAAYrlI,IAAIqlI,EAAY3oL,MAAQiK,EAAMulL,GAAM5iJ,WACpD,IACAhd,EAAMkxI,cAAcS,aAE5B,IACO,WACH40B,IACAH,IACAE,GACJ,CACJ,EACA/D,EAA0B5/L,UAAU6vK,SAAW,WAC3C,IAAItpE,EAAQrlG,KAAKqtK,cAAcsB,WAC3BvnJ,EAAKi+E,EAAMomE,KAAMA,OAAc,IAAPrkJ,GAAwBA,EAAI6wB,EAAKotD,EAAMs6F,kBAAmBA,OAA2B,IAAP1nJ,GAAwBA,EAAIwD,EAAK4pD,EAAM+5F,gBAAiBA,OAAyB,IAAP3jJ,GAAwBA,EAAIa,EAAK+oD,EAAM8rE,gBAAiBA,OAAyB,IAAP70H,GAAwBA,EAAID,EAAKgpD,EAAMy3F,YAAaA,OAAqB,IAAPzgJ,EAAgBugJ,GAAiBvgJ,EAAIG,EAAK6oD,EAAMo8F,aAAcA,OAAsB,IAAPjlJ,GAAuBA,EACpa,OAAOr8C,GAASA,GAAS,CAAC,EAAGklG,GAAQ,CAAEomE,KAAMA,EAAMk0B,kBAAmBA,EAAmBP,gBAAiBA,EAAiBjuB,gBAAiBA,EAAiB2rB,YAAaA,EAAa2E,aAAcA,GACzM,EACO/C,CACX,CA7Y+C,GA8Y/C,SAAS0B,GAAWpzK,EAAWy+I,EAAMozB,GACjC,QAAkB,IAATpzB,GAAiBA,IAASz+I,KACT,OAArB6xK,GAA6BA,IAAqB7xK,EAC3D,CEraA,IAAIy+I,GAAO,CACPG,IAAKwU,ICaT,SAAuBh5J,GACnB,IAAIw7K,EAAQx7K,EAAGw7K,MAAOC,EAAaz7K,EAAGy7K,WAAYC,EAAW17K,EAAG07K,SAAUC,EAAoB37K,EAAG27K,kBAAmB11B,EAAgBjmJ,EAAGimJ,cACnI21B,EAAeJ,GAASC,GAAcC,GAAYC,EAClD5D,GAAanzF,EAAAA,EAAAA,QAAO,MACpBkgE,GAAqBzgE,EAAAA,EAAAA,YAAWwgE,IAAqBC,mBACrDmuB,EAAW,CACXiB,eAAgByH,EAChBlI,QAASgI,EACT/H,OAAQ8H,EACR1H,MAAO,SAAUtlG,EAAO1uD,GACpBi4J,EAAWryL,QAAU,KACrBg2L,GAAYA,EAASltG,EAAO1uD,EAChC,IAEJwkE,EAAAA,EAAAA,YAAU,WACqB,OAAvByzF,EAAWryL,SACXqyL,EAAWryL,QAAQ0uL,eAAenB,EAE1C,IAMA5c,GAAgBpQ,EAAe,cAAe21B,GAL9C,SAAuBptG,GACnBupG,EAAWryL,QAAU,IAAIstL,GAAWxkG,EAAOykG,EAAU,CACjDnuB,mBAAoBA,GAE5B,GAEAsS,IAAiB,WAAc,OAAO2gB,EAAWryL,SAAWqyL,EAAWryL,QAAQtF,KAAO,GAC1F,IDtCIikK,KAAM2U,IEGV,SAAiB/6E,GACb,IAAI49F,EAAoB59F,EAAM69F,aAAc71B,EAAgBhoE,EAAMgoE,cAC9D61B,EAAevzB,IAAY,WAAc,OAAO,IAAI+uB,GAA0BrxB,EAAgB,KAGlG3hE,EAAAA,EAAAA,YAAU,WAAc,OAAOu3F,GAAqBA,EAAkBrJ,UAAUsJ,EAAe,GAAG,CAACA,EAAcD,KAEjHv3F,EAAAA,EAAAA,YAAU,WAAc,OAAOw3F,EAAaZ,cAAgB,GAAG,CAACY,GACpE,KCdIx/I,GAAQ,CACR,gBACA,sBACA,eACA,oBACA,SACA,SACA,oBACA,0BACA,iBACA,uBACA,gBACA,WCNJ,IAAI2pH,GAAgB,SAAUjmJ,GAC1B,IAAI6wB,EAAK7wB,EAAG+7K,SAAUA,OAAkB,IAAPlrJ,EAAgB,GAAKA,EAAImrJ,EAAQh8K,EAAGg8K,MAAO7J,EAAgBnyK,EAAGmyK,cAAe3D,EAAuBxuK,EAAGwuK,qBAAsByI,EAAqBj3K,EAAGi3K,mBAAoBgF,EAAiBj8K,EAAGw0B,OAAQ0nJ,EAAwBl8K,EAAGk8K,sBAAuBC,EAA6Bn8K,EAAGm8K,2BAA4B1M,EAAmBzvK,EAAGyvK,iBAAkB9c,EAA8B3yJ,EAAG2yJ,4BAC7Z,OAAO,SAAU3yJ,EAAI1Z,GACjB,IAAIwM,EAASkN,EAAGlN,OAAQmrF,EAAQj+E,EAAGi+E,MAAOuoE,EAAaxmJ,EAAGwmJ,WAAYC,EAAwBzmJ,EAAGymJ,sBAAuBX,EAAc9lJ,EAAG8lJ,YAAaK,EAAqBnmJ,EAAGmmJ,wBAC9J,IAAZ7/J,IAAsBA,EAAU,CAAC,GACrC,IAQI6sF,EAiCAipG,EAzCAr/F,GAAY,EACZwxE,EAAezI,EAAYyI,aAAckE,EAAc3M,EAAY2M,YAYnE4pB,EDVZ,WACI,IAAIC,EAAWhgJ,GAAM71C,KAAI,WAAc,OAAO,IAAI4lL,EAAuB,IACrEkQ,EAAoB,CAAC,EACrBF,EAAa,CACbG,kBAAmB,WAAc,OAAOF,EAASr3L,SAAQ,SAAUw3L,GAAW,OAAOA,EAAQhQ,OAAS,GAAI,EAC1GiQ,oBAAqB,SAAUz+F,GAC3B3hD,GAAMr3C,SAAQ,SAAU0M,GACpB,IAAIqO,EACA28K,EAAK,KAAOhrL,EACZirL,EAAe3+F,EAAM0+F,GAEU,QAAlC38K,EAAKu8K,EAAkB5qL,UAA0B,IAAPqO,GAAyBA,EAAGnoB,KAAK0kM,GAExEK,IACAL,EAAkB5qL,GAAQ0qL,EAAWM,GAAIC,GAEjD,GACJ,GAYJ,OAVAN,EAASr3L,SAAQ,SAAUw3L,EAAS3lM,GAChCulM,EAAW,KAAO//I,GAAMxlD,IAAM,SAAUwiI,GAAW,OAAOmjE,EAAQt+J,IAAIm7F,EAAU,EAChF+iE,EAAW,SAAW//I,GAAMxlD,IAAM,WAE9B,IADA,IAAIsb,EAAO,GACFhU,EAAK,EAAGA,EAAKrH,UAAUC,OAAQoH,IACpCgU,EAAKhU,GAAMrH,UAAUqH,GAEzB,OAAOq+L,EAAQlQ,OAAOh1L,MAAMklM,EAASnhM,GAAc,GAAIwoK,GAAO1xJ,IAAO,GACzE,CACJ,IACOiqL,CACX,CCpByBQ,GAMbzrL,EAAS,IAAIozE,IAKbs4G,EAAqB,IAAIt4G,IAMzBu4G,EAAmB,CAAC,EAKpBC,EAAajkM,GAAS,CAAC,EAAGw1K,GAW9B,SAAS/5H,IACA2+C,GAAa4J,IAElBkgG,IACAhB,EAAe9oG,EAAUs/E,EAAax0E,EAAM/4E,MAAOmH,EAAQ69I,YAC/D,CACA,SAAS+yB,IACLjB,EAAM3vK,EAASomJ,EAAalE,EAAcjoK,EAAS23F,EACvD,CACA,SAASsnF,IACL8W,EAAWa,aAAa3uB,EAC5B,CAIA,SAAS4uB,EAAkBvlM,EAAK8B,GAC5B,IAAI0jM,EAAiB1jM,EAAMwkH,UAAS,SAAUm/E,GAC1C9uB,EAAa32K,GAAOylM,EACpBp/F,EAAMooF,UAAY1B,GAAAA,OAAYY,GAAQ,GAAO,EACjD,IACI+X,EAAwB5jM,EAAM6zL,gBAAgBlhK,EAAQi+I,gBAC1DwyB,EAAmBr0I,IAAI7wD,GAAK,WACxBwlM,IACAE,GACJ,GACJ,CAWA,IAAIC,EAAsB5qB,EAA4B10E,GACtD,IAAK,IAAIrmG,KAAO2lM,EAAqB,CACjC,IAAI7jM,EAAQ6jM,EAAoB3lM,QACNgP,IAAtB2nK,EAAa32K,IAAsBm0K,GAAcryK,IACjDA,EAAM+uD,IAAI8lH,EAAa32K,IAAM,EAErC,CAIA,IAAIi8K,EAAwBjM,GAA2B3pE,GACnD61E,EAAgB5L,GAAmBjqE,GACnC5xE,EAAUtzB,GAASA,GAAS,CAAEgjM,SAAUA,EAKxCr2L,QAAS,KAITmlB,MAAO/X,EAASA,EAAO+X,MAAQ,EAAI,EAAG/X,OAAQA,EAAQinE,SAAU,IAAIvF,IAIpEgyF,WAAYA,EAAYL,mBAAoBA,EAM5C2oB,gBAAiBhb,EAAgB,IAAIt/F,SAAQ5tE,EAO7C6wB,eAAW7wB,EASX2qL,uBAAwBlvE,QAAmB,OAAXvvG,QAA8B,IAAXA,OAAoB,EAASA,EAAOiqF,aAKvF0pE,sBAAuBA,EAMvB1pE,UAAW,WAAc,OAAOslB,QAAQlvB,EAAW,EAAGw3E,MAAO,SAAU6yB,GACnEzgG,GAAY,EACZ5J,EAAW9mE,EAAQ3mB,QAAU83L,EACzBnxK,EAAQ69I,YACR79I,EAAQ69I,WAAWS,MAAM6yB,GAEzB1pB,GAAiBhhK,IAAW+gK,IAC5BuoB,EAAmC,OAAXtpL,QAA8B,IAAXA,OAAoB,EAASA,EAAO2qL,gBAAgBpxK,IAEnGjb,EAAOnM,SAAQ,SAAUvL,EAAO9B,GAAO,OAAOulM,EAAkBvlM,EAAK8B,EAAQ,IAClE,OAAXoZ,QAA8B,IAAXA,GAA6BA,EAAOinE,SAAS57C,IAAI9R,GACpEA,EAAQ08I,SAAS9qE,EACrB,EAIAyT,QAAS,WACL,IAAI1xF,EAC0B,QAA7BA,EAAKqM,EAAQ69I,kBAA+B,IAAPlqJ,GAAyBA,EAAG0xF,UAClEqzE,GAAWQ,OAAOA,GAClBR,GAAWvwI,OAAOA,GAClBsoJ,EAAmB73L,SAAQ,SAAUy4L,GAAU,OAAOA,GAAU,IACtC,OAA1BtB,QAA4D,IAA1BA,GAA4CA,IACnE,OAAXtpL,QAA8B,IAAXA,GAA6BA,EAAOinE,SAAS8K,OAAOx4D,GACvEgwK,EAAWG,oBACXrpG,OAAWvsF,EACXm2F,GAAY,CAChB,EAIA0gG,gBAAiB,SAAUh9J,GACvB,IAAIzgB,EACA29K,EAAqBtxK,EAAQuxK,wBACjC,GAAID,EAEA,OAD8C,QAA7C39K,EAAK29K,EAAmB7O,uBAAoC,IAAP9uK,GAAyBA,EAAGme,IAAIsC,GAC/E,WACH,OAAOk9J,EAAmB7O,gBAAgBjqG,OAAOpkD,EACrD,CAER,EAAGgvJ,iBAAkB,SAAUhtH,GAI3B,OAAKgtH,GAAoBsM,IAAat5H,EAAMs5H,SAErCtM,EAAiBpjK,EAAQ4yF,cAAex8C,EAAMw8C,eAD1C,CAEf,EAKA2+E,sBAAuB,WACnB,OAAO9pB,EAAgBznJ,EAAqB,OAAXvZ,QAA8B,IAAXA,OAAoB,EAASA,EAAO8qL,uBAC5F,EAIAC,YAAa,WAAc,OAAO5/F,EAAMwrE,QAAU,EAIlDxqD,YAAa,WAAc,OAAO9rB,CAAU,EAI5C2qG,eAAgB,SAAUlmM,GAAO,OAAO22K,EAAa32K,EAAM,EAAGmmM,eAAgB,SAAUnmM,EAAK8B,GAAS,OAAQ60K,EAAa32K,GAAO8B,CAAQ,EAM1IywK,gBAAiB,WAAc,OAAOoE,CAAc,EAKpDyvB,cAAe,SAAUr1K,GACjB0D,EAAQoL,YAAc9O,IAE1B0D,EAAQoL,UAAY9O,EACpB0D,EAAQi+I,iBACZ,EAQAkkB,qBAAsB,SAAU3qJ,EAAQo6J,GAEpC,YADkB,IAAdA,IAAwBA,GAAY,GACjCzP,EAAqBniK,EAASwX,EAAQo6D,EAAOggG,EACxD,EAMAhH,mBAAoB,WAChB,OAAOA,EAAmB9jG,EAAU8K,EACxC,EAKAqwF,SAAU,SAAU12L,EAAK8B,GAEjB2yB,EAAQgiK,SAASz2L,IACjBy0B,EAAQ6xK,YAAYtmM,GACxBwZ,EAAOq3C,IAAI7wD,EAAK8B,GAChB60K,EAAa32K,GAAO8B,EAAMyL,MAC1Bg4L,EAAkBvlM,EAAK8B,EAC3B,EAIAwkM,YAAa,SAAUtmM,GACnB,IAAIooB,EACJ5O,EAAOyzE,OAAOjtF,GACyB,QAAtCooB,EAAK88K,EAAmB33L,IAAIvN,UAAyB,IAAPooB,GAAyBA,IACxE88K,EAAmBj4G,OAAOjtF,UACnB22K,EAAa32K,GACpBukM,EAA2BvkM,EAAK66K,EACpC,EAIA4b,SAAU,SAAUz2L,GAAO,OAAOwZ,EAAOk0B,IAAI1tC,EAAM,EAKnD2gF,SAAU,SAAU3gF,EAAKohF,GACrB,IAAIt/E,EAAQ0X,EAAOjM,IAAIvN,GAKvB,YAJcgP,IAAVlN,QAAwCkN,IAAjBoyE,IACvBt/E,EAAQo0L,GAAY90G,GACpB3sD,EAAQiiK,SAAS12L,EAAK8B,IAEnBA,CACX,EAIA8tK,aAAc,SAAUpjH,GAAY,OAAOhzC,EAAOnM,QAAQm/C,EAAW,EAMrE+5I,UAAW,SAAUvmM,GACjB,IAAIooB,EACJ,OAAoC,QAA5BA,EAAKuuJ,EAAa32K,UAAyB,IAAPooB,EAAgBA,EAAKk8K,EAAsB/oG,EAAUv7F,EAAK0O,EAC1G,EAKA83L,cAAe,SAAUxmM,EAAK8B,GAC1BsjM,EAAWplM,GAAO8B,CACtB,EAKAy4L,cAAe,SAAUv6L,GACrB,GAAIu6L,EAAe,CACf,IAAItuJ,EAASsuJ,EAAcl0F,EAAOrmG,GAClC,QAAegP,IAAXi9B,IAAyBkoI,GAAcloI,GACvC,OAAOA,CACf,CACA,OAAOm5J,EAAWplM,EACtB,GAAKykM,GAAa,CAIlBL,MAAO,WAEH,OADAiB,IACOxqB,CACX,EAIAnI,eAAgB,WACZqa,GAAAA,OAAYnwI,GAAQ,GAAO,EAC/B,EAOAkyH,WAAYlyH,EAKZu0H,SAAU,SAAUs1B,IACZA,EAAS7vB,mBAAqBvwE,EAAMuwE,oBACpCniJ,EAAQi+I,iBAEZrsE,EAAQogG,EACRhC,EAAWK,oBAAoB2B,GAC/BtB,ECjWhB,SAAqC1wK,EAASryB,EAAMqL,GAChD,IAAI2a,EACJ,IAAK,IAAIpoB,KAAOoC,EAAM,CAClB,IAAIyqJ,EAAYzqJ,EAAKpC,GACjB4sJ,EAAYn/I,EAAKzN,GACrB,GAAIm0K,GAActnB,GAKdp4H,EAAQiiK,SAAS12L,EAAK6sJ,QASrB,GAAIsnB,GAAcvnB,GAKnBn4H,EAAQiiK,SAAS12L,EAAKk2L,GAAYrpC,SAEjC,GAAID,IAAcC,EAMnB,GAAIp4H,EAAQgiK,SAASz2L,GAAM,CACvB,IAAI0mM,EAAgBjyK,EAAQksD,SAAS3gF,IAEpC0mM,EAAclR,aAAekR,EAAc71I,IAAIg8F,EACpD,MAEIp4H,EAAQiiK,SAAS12L,EAAKk2L,GAAmD,QAAtC9tK,EAAKqM,EAAQyxK,eAAelmM,UAAyB,IAAPooB,EAAgBA,EAAKykI,GAGlH,CAEA,IAAK,IAAI7sJ,KAAOyN,OACMuB,IAAd5M,EAAKpC,IACLy0B,EAAQ6xK,YAAYtmM,GAE5B,OAAOoC,CACX,CDiTmCukM,CAA4BlyK,EAASsmJ,EAA4B10E,GAAQ8+F,EAChG,EAAGx1B,SAAU,WAAc,OAAOtpE,CAAO,EAKzCugG,WAAY,SAAU7sL,GAAQ,IAAIqO,EAAI,OAAiC,QAAzBA,EAAKi+E,EAAMopE,gBAA6B,IAAPrnJ,OAAgB,EAASA,EAAGrO,EAAO,EAIlHg5K,qBAAsB,WAAc,OAAO1sF,EAAM/X,UAAY,EAAG2yG,sBAAuB,WACnF,OAAO56F,EAAM6mE,kBACjB,EAIAgsB,kBAAmB,SAAU2N,GAEzB,QADsB,IAAlBA,IAA4BA,GAAgB,GAC5CA,EACA,OAAkB,OAAX3rL,QAA8B,IAAXA,OAAoB,EAASA,EAAOg+K,oBAClE,IAAKjd,EAAuB,CACxB,IAAI6qB,GAAwB,OAAX5rL,QAA8B,IAAXA,OAAoB,EAASA,EAAOg+K,sBAAwB,CAAC,EAIjG,YAHsBlqL,IAAlBq3F,EAAM+X,UACN0oF,EAAU1oF,QAAU/X,EAAM+X,SAEvB0oF,CACX,CAEA,IADA,IAAIpiM,EAAU,CAAC,EACNxF,EAAI,EAAGA,EAAI6nM,GAAiB7nM,IAAK,CACtC,IAAI2zK,EAASm0B,GAAa9nM,GACtBywD,EAAO02C,EAAMwsE,IACbzD,GAAez/G,KAAkB,IAATA,KACxBjrD,EAAQmuK,GAAUljH,EAE1B,CACA,OAAOjrD,CACX,IACJ,OAAO+vB,CACX,CACJ,EACIuyK,GAAetjM,GAAc,CAAC,WAAYwoK,GAAO+rB,KAAuB,GACxE8O,GAAkBC,GAAa5nM,OE3YnC,SAASk1K,GAAcxyK,GACnB,MAAwB,kBAAVA,GAAsBA,EAAM6mJ,WAAW,SACzD,CAUA,IAAIs+C,GAAmB,uDASvB,SAASC,GAAiBp5L,EAAS2mB,EAASxB,QAC1B,IAAVA,IAAoBA,EAAQ,GACH,yDAA0DhvB,OAAO6J,EAAS,wDACvG,IAAIsa,EAAK8jJ,GAXb,SAA0Bp+J,GACtB,IAAI4uC,EAAQuqJ,GAAiBnhI,KAAKh4D,GAClC,IAAK4uC,EACD,MAAO,CAAC,GACZ,IAAIt0B,EAAK8jJ,GAAOxvH,EAAO,GACvB,MAAO,CAD4Bt0B,EAAG,GAAeA,EAAG,GAE5D,CAKoB++K,CAAiBr5L,GAAU,GAAIoI,EAAQkS,EAAG,GAAI2a,EAAW3a,EAAG,GAE5E,GAAKlS,EAAL,CAGA,IAAImmK,EAAWrnJ,OAAOC,iBAAiBR,GAAS4X,iBAAiBn2B,GACjE,OAAImmK,EACOA,EAASlhJ,OAEXm5I,GAAcvxI,GAEZmkK,GAAiBnkK,EAAUtO,EAASxB,EAAQ,GAG5C8P,CAXD,CAad,CCpCA,IAuBIqkK,GAvBAC,GAAiB,IAAIzqH,IAAI,CACzB,QACA,SACA,MACA,OACA,QACA,SACA,IACA,MAEA0qH,GAAkB,SAAUtnM,GAAO,OAAOqnM,GAAe35J,IAAI1tC,EAAM,EAInEunM,GAAsB,SAAUzlM,EAAO6B,GAGvC7B,EAAM+uD,IAAIltD,GAAI,GACd7B,EAAM+uD,IAAIltD,EACd,EACI6jM,GAAgB,SAAUjkM,GAC1B,OAAOA,IAAMmV,IAAUnV,IAAMyxK,EACjC,GAEA,SAAWoyB,GACPA,EAA4B,MAAI,QAChCA,EAA6B,OAAI,SACjCA,EAA2B,KAAI,OAC/BA,EAA4B,MAAI,QAChCA,EAA0B,IAAI,MAC9BA,EAA6B,OAAI,QACpC,CAPD,CAOGA,KAAyBA,GAAuB,CAAC,IACpD,IAAIK,GAAmB,SAAUp3K,EAAQgyC,GACrC,OAAOgJ,WAAWh7C,EAAOy0B,MAAM,MAAMud,GACzC,EACIqlI,GAAyB,SAAUnlI,EAAMolI,GACzC,OAAO,SAAUC,EAAOx/K,GACpB,IAAI8H,EAAY9H,EAAG8H,UACnB,GAAkB,SAAdA,IAAyBA,EACzB,OAAO,EACX,IAAII,EAAWJ,EAAUwsB,MAAM,sBAC/B,GAAIpsB,EACA,OAAOm3K,GAAiBn3K,EAAS,GAAIq3K,GAGrC,IAAIt3K,EAASH,EAAUwsB,MAAM,oBAC7B,OAAIrsB,EACOo3K,GAAiBp3K,EAAO,GAAIkyC,GAG5B,CAGnB,CACJ,EACIu0G,GAAgB,IAAIl6F,IAAI,CAAC,IAAK,IAAK,MACnCirH,GAAgCn0B,GAAe73J,QAAO,SAAU7b,GAAO,OAAQ82K,GAAcppI,IAAI1tC,EAAM,IAe3G,IAAI8nM,GAAmB,CAEnB1jM,MAAO,SAAUgkB,EAAI6wB,GACjB,IAAI10C,EAAI6jB,EAAG7jB,EACPk4C,EAAKxD,EAAGvpB,YAAaA,OAAqB,IAAP+sB,EAAgB,IAAMA,EAAIa,EAAKrE,EAAGzpB,aAAcA,OAAsB,IAAP8tB,EAAgB,IAAMA,EAC5H,OAAO/4C,EAAEoB,IAAMpB,EAAE6T,IAAMizD,WAAW37C,GAAe27C,WAAW77C,EAChE,EACAnrB,OAAQ,SAAU+jB,EAAI6wB,GAClB,IAAIp2C,EAAIulB,EAAGvlB,EACP45C,EAAKxD,EAAG1pB,WAAYA,OAAoB,IAAPktB,EAAgB,IAAMA,EAAIa,EAAKrE,EAAGxpB,cAAeA,OAAuB,IAAP6tB,EAAgB,IAAMA,EAC5H,OAAOz6C,EAAE8C,IAAM9C,EAAEuV,IAAMizD,WAAW97C,GAAc87C,WAAW57C,EAC/D,EACAtrB,IAAK,SAAUyjM,EAAOx/K,GAClB,IAAIjkB,EAAMikB,EAAGjkB,IACb,OAAOknE,WAAWlnE,EACtB,EACAD,KAAM,SAAU0jM,EAAOx/K,GACnB,IAAIlkB,EAAOkkB,EAAGlkB,KACd,OAAOmnE,WAAWnnE,EACtB,EACAsxK,OAAQ,SAAUptJ,EAAI6wB,GAClB,IAAIp2C,EAAIulB,EAAGvlB,EACPsB,EAAM80C,EAAG90C,IACb,OAAOknE,WAAWlnE,IAAQtB,EAAE8C,IAAM9C,EAAEuV,IACxC,EACAm9J,MAAO,SAAUntJ,EAAI6wB,GACjB,IAAI10C,EAAI6jB,EAAG7jB,EACPL,EAAO+0C,EAAG/0C,KACd,OAAOmnE,WAAWnnE,IAASK,EAAEoB,IAAMpB,EAAE6T,IACzC,EAEA7T,EAAGmjM,GAAuB,EAAG,IAC7B7kM,EAAG6kM,GAAuB,EAAG,KA+B7BK,GAAmC,SAAU15B,EAAepiI,EAAQi6G,EAAQo2B,QAC7D,IAAXp2B,IAAqBA,EAAS,CAAC,QACb,IAAlBo2B,IAA4BA,EAAgB,CAAC,GACjDrwI,EAAS9qC,GAAS,CAAC,EAAG8qC,GACtBqwI,EAAgBn7K,GAAS,CAAC,EAAGm7K,GAC7B,IAAI0rB,EAAuBnoM,OAAO0uC,KAAKtC,GAAQpwB,OAAOyrL,IAGlDW,EAAyB,GACzBC,GAAsC,EACtCC,EAAuB,GA4E3B,GA3EAH,EAAqB36L,SAAQ,SAAUrN,GACnC,IAAI8B,EAAQusK,EAAc1tF,SAAS3gF,GACnC,GAAKquK,EAAcooB,SAASz2L,GAA5B,CAEA,IAGIooM,EAHAxkM,EAAOsiJ,EAAOlmJ,GACdqoM,EAAWhS,GAAuBzyL,GAClCD,EAAKsoC,EAAOjsC,GAMhB,GAAIm7K,GAAkBx3K,GAAK,CACvB,IAAI2kM,EAAe3kM,EAAGvE,OAClBmpM,EAAsB,OAAV5kM,EAAG,GAAc,EAAI,EACrCC,EAAOD,EAAG4kM,GACVF,EAAWhS,GAAuBzyL,GAClC,IAAK,IAAI1E,EAAIqpM,EAAWrpM,EAAIopM,EAAcppM,IACjCkpM,EAMS/R,GAAuB1yL,EAAGzE,KALpCkpM,EAAS/R,GAAuB1yL,EAAGzE,OACdmpM,GAChBb,GAAca,IAAab,GAAcY,EAM1D,MAEIA,EAAS/R,GAAuB1yL,GAEpC,GAAI0kM,IAAaD,EAGb,GAAIZ,GAAca,IAAab,GAAcY,GAAS,CAClD,IAAIt6L,EAAUhM,EAAMyL,MACG,kBAAZO,GACPhM,EAAM+uD,IAAIwa,WAAWv9D,IAEP,kBAAPnK,EACPsoC,EAAOjsC,GAAOqrE,WAAW1nE,GAEpBnE,MAAMC,QAAQkE,IAAOykM,IAAWpzB,KACrC/oI,EAAOjsC,GAAO2D,EAAGkL,IAAIw8D,YAE7B,MACuB,OAAbg9H,QAAkC,IAAbA,OAAsB,EAASA,EAASn4K,aACvD,OAAXk4K,QAA8B,IAAXA,OAAoB,EAASA,EAAOl4K,aAC9C,IAATtsB,GAAqB,IAAPD,GAGF,IAATC,EACA9B,EAAM+uD,IAAIu3I,EAAOl4K,UAAUtsB,IAG3BqoC,EAAOjsC,GAAOqoM,EAASn4K,UAAUvsB,IAMhCukM,IACDD,EAtJpB,SAAyC55B,GACrC,IAAIm6B,EAAoB,GAWxB,OAVAX,GAA8Bx6L,SAAQ,SAAUrN,GAC5C,IAAI8B,EAAQusK,EAAc1tF,SAAS3gF,QACrBgP,IAAVlN,IACA0mM,EAAkBjpM,KAAK,CAACS,EAAK8B,EAAMyL,QACnCzL,EAAM+uD,IAAI7wD,EAAI2oJ,WAAW,SAAW,EAAI,GAEhD,IAEI6/C,EAAkBppM,QAClBivK,EAAcS,aACX05B,CACX,CA0IwBC,CAAgCp6B,GACpC65B,GAAsC,GAE1CC,EAAqB5oM,KAAKS,GAC1Bs8K,EAAct8K,QACagP,IAAvBstK,EAAct8K,GACRs8K,EAAct8K,GACdisC,EAAOjsC,GACjBunM,GAAoBzlM,EAAO6B,GApEzB,CAuEd,IACIwkM,EAAqB/oM,OAAQ,CAC7B,IAAIspM,EAAYP,EAAqB36L,QAAQ,WAAa,EACpDwnB,OAAO2Q,YACP,KACFgjK,EAvHmB,SAAU18J,EAAQoiI,EAAeu6B,GAC5D,IAAIC,EAAax6B,EAAcgxB,qBAC3B5qK,EAAU45I,EAAchnD,cACxByhF,EAAuB7zK,iBAAiBR,GACxCxG,EAAU66K,EAAqB76K,QAC/Bi4H,EAAS,CAAC,EAGE,SAAZj4H,GACAogJ,EAAc83B,eAAe,UAAWl6J,EAAOhe,SAAW,SAK9D26K,EAAYv7L,SAAQ,SAAUrN,GAC1BkmJ,EAAOlmJ,GAAO8nM,GAAiB9nM,GAAK6oM,EAAYC,EACpD,IAEAz6B,EAAcS,aACd,IAAIi6B,EAAa16B,EAAcgxB,qBAQ/B,OAPAuJ,EAAYv7L,SAAQ,SAAUrN,GAG1B,IAAI8B,EAAQusK,EAAc1tF,SAAS3gF,GACnCunM,GAAoBzlM,EAAOokJ,EAAOlmJ,IAClCisC,EAAOjsC,GAAO8nM,GAAiB9nM,GAAK+oM,EAAYD,EACpD,IACO78J,CACX,CA2F8B+8J,CAAyB/8J,EAAQoiI,EAAe85B,GAatE,OAXIF,EAAuB7oM,QACvB6oM,EAAuB56L,SAAQ,SAAU+a,GACrC,IAAI6wB,EAAKizH,GAAO9jJ,EAAI,GAAIpoB,EAAMi5C,EAAG,GAAIn3C,EAAQm3C,EAAG,GAChDo1H,EAAc1tF,SAAS3gF,GAAK6wD,IAAI/uD,EACpC,IAGJusK,EAAcS,aAEI,OAAd45B,GACA1zK,OAAOiR,SAAS,CAAE9hC,IAAKukM,IACpB,CAAEz8J,OAAQ08J,EAAiBrsB,cAAeA,EACrD,CAEI,MAAO,CAAErwI,OAAQA,EAAQqwI,cAAeA,EAEhD,EAQA,SAAS2sB,GAAe56B,EAAepiI,EAAQi6G,EAAQo2B,GACnD,OAhPmB,SAAUrwI,GAC7B,OAAOpsC,OAAO0uC,KAAKtC,GAAQ9W,KAAKmyK,GACpC,CA8OW4B,CAAiBj9J,GAClB87J,GAAiC15B,EAAepiI,EAAQi6G,EAAQo2B,GAChE,CAAErwI,OAAQA,EAAQqwI,cAAeA,EAC3C,CC9PA,IAAI6sB,GAAkB,SAAU96B,EAAepiI,EAAQi6G,EAAQo2B,GAC3D,IAAID,EFyCR,SAA6BhO,EAAejmJ,EAAIk0J,GAC5C,IAAIrjI,EACAhN,EAAS+/H,GAAO5jJ,EAAI,IACpBqM,EAAU45I,EAAchnD,cAC5B,KAAM5yF,aAAmB20K,SACrB,MAAO,CAAEn9J,OAAQA,EAAQqwI,cAAeA,GAiB5C,IAAK,IAAIt8K,KAdLs8K,IACAA,EAAgBn7K,GAAS,CAAC,EAAGm7K,IAGjCjO,EAAcuB,cAAa,SAAU9tK,GACjC,IAAIgM,EAAUhM,EAAMyL,MACpB,GAAK+mK,GAAcxmK,GAAnB,CAEA,IAAIuuK,EAAW6qB,GAAiBp5L,EAAS2mB,GACrC4nJ,GACAv6K,EAAM+uD,IAAIwrH,EAHJ,CAId,IAGgBpwI,EAAQ,CACpB,IAAIn+B,EAAUm+B,EAAOjsC,GACrB,GAAKs0K,GAAcxmK,GAAnB,CAEA,IAAIuuK,EAAW6qB,GAAiBp5L,EAAS2mB,GACpC4nJ,IAGLpwI,EAAOjsC,GAAOq8K,EAIVC,IAC8B,QAA7BrjI,EAAKqjI,EAAct8K,UAAyB,IAAPi5C,IAAsBqjI,EAAct8K,GAAO8N,IAVzE,CAWhB,CACA,MAAO,CAAEm+B,OAAQA,EAAQqwI,cAAeA,EAC5C,CE/EmB+sB,CAAoBh7B,EAAepiI,EAAQqwI,GAG1D,OAAO2sB,GAAe56B,EAFtBpiI,EAASowI,EAASpwI,OAE2Bi6G,EAD7Co2B,EAAgBD,EAASC,cAE7B,ECGA,IAAIgtB,GAAa,CACbnF,SAAU,MACVG,sBAAuB,SAAUiF,EAAYvpM,GACzC,GAAI+zK,GAAgB/zK,GAAM,CACtB,IAAIwpM,EAAc1X,GAAoB9xL,GACtC,OAAOwpM,GAAcA,EAAYnpM,SAAe,CACpD,CAEI,IAXco0B,EAWVg1K,GAXUh1K,EAWuB80K,EAVtCv0K,OAAOC,iBAAiBR,IAWvB,OAAS6/I,GAAct0K,GACjBypM,EAAcp9J,iBAAiBrsC,GAC/BypM,EAAczpM,KAAS,CAErC,EACA63L,iBAAkB,SAAUlqL,EAAGnN,GAM3B,OAAsC,EAA/BmN,EAAE4qF,wBAAwB/3F,GAAS,GAAK,CACnD,EACA+5L,cAAe,SAAUl0F,EAAOrmG,GAC5B,IAAIooB,EACJ,OAA8B,QAAtBA,EAAKi+E,EAAM/4E,aAA0B,IAAPlF,OAAgB,EAASA,EAAGpoB,EACtE,EACAq/L,mBAAoB,SAAU5qK,EAASrM,GAEnC,OAAOi3K,GAAmB5qK,EADDrM,EAAG8kJ,mBAEhC,EAQAw8B,eAAgB,SAAUj1K,EAAS80K,EAAYljG,GAC3C,IAAIuwE,EAAoBvwE,EAAMuwE,kBAC9B2yB,EAAWj8K,MAAM4C,UAAY0mJ,EACvBA,EAAkB,CAAC,EAAG,IACtB,OAENniJ,EAAQi+I,gBACZ,EACAi3B,iBAAkB,SAAUpuG,EAAUquG,GAClCruG,EAASjuE,MAAM4C,UAAY05K,EAAat8K,MAAM4C,SAClD,EACAq0K,2BAA4B,SAAUvkM,EAAKooB,GACvC,IAAIyuJ,EAAOzuJ,EAAGyuJ,KAAMvpJ,EAAQlF,EAAGkF,aACxBupJ,EAAK72K,UACLstB,EAAMttB,EACjB,EAKA42L,qBAAsB,SAAUniK,EAASrM,EAAI6wB,EAAIksD,GAC7C,IAAI6yE,EAAkB/+H,EAAG++H,qBACP,IAAd7yE,IAAwBA,GAAY,GACxC,IAAI7W,EAAalmE,EAAGkmE,WAAYguF,EAAgBl0J,EAAGk0J,cAAerwI,EAAS+/H,GAAO5jJ,EAAI,CAAC,aAAc,kBACjG89H,E1B4BZ,SAAmBj6G,EAAQqiD,EAAY+/E,GACnC,IAAIjmJ,EAAI6wB,EACJitG,EAAS,CAAC,EACd,IAAK,IAAIlmJ,KAAOisC,EACZi6G,EAAOlmJ,GACiD,QAAnDooB,EAAKyuK,GAAwB72L,EAAKsuF,UAAgC,IAAPlmE,EAAgBA,EAA4C,QAAtC6wB,EAAKo1H,EAAc1tF,SAAS3gF,UAAyB,IAAPi5C,OAAgB,EAASA,EAAG1rC,MAEpK,OAAO24I,CACX,C0BpCqB94G,CAAUnB,EAAQqiD,GAAc,CAAC,EAAG75D,GAYjD,GARIujJ,IACIsE,IACAA,EAAgBtE,EAAgBsE,IAChCrwI,IACAA,EAAS+rI,EAAgB/rI,IACzBi6G,IACAA,EAAS8xB,EAAgB9xB,KAE7B/gD,EAAW,E1BnCvB,SAAiCkpE,EAAepiI,EAAQi6G,GACpD,IAAI99H,EAAI6wB,EAAIwD,EACRa,EACAusJ,EAAehqM,OAAO0uC,KAAKtC,GAAQpwB,QAAO,SAAU7b,GAAO,OAAQquK,EAAcooB,SAASz2L,EAAM,IAChG8pM,EAAeD,EAAazqM,OAChC,GAAK0qM,EAEL,IAAK,IAAI5qM,EAAI,EAAGA,EAAI4qM,EAAc5qM,IAAK,CACnC,IAAIc,EAAM6pM,EAAa3qM,GACnB6qM,EAAc99J,EAAOjsC,GACrB8B,EAAQ,KAKRtC,MAAMC,QAAQsqM,KACdjoM,EAAQioM,EAAY,IAOV,OAAVjoM,IACAA,EAAoG,QAA3Fm3C,EAA4B,QAAtB7wB,EAAK89H,EAAOlmJ,UAAyB,IAAPooB,EAAgBA,EAAKimJ,EAAck4B,UAAUvmM,UAAyB,IAAPi5C,EAAgBA,EAAKhN,EAAOjsC,SAM9HgP,IAAVlN,GAAiC,OAAVA,IAEN,kBAAVA,IACNwyL,GAAkBxyL,IAAUyyL,GAAkBzyL,IAE/CA,EAAQupE,WAAWvpE,IAEby0L,GAAcz0L,IAAUylL,GAAQrhJ,KAAK6jK,KAC3CjoM,EAAQ0lL,GAAkBxnL,EAAK+pM,IAEnC17B,EAAcqoB,SAAS12L,EAAKk2L,GAAYp0L,IACV,QAA7B26C,GAAMa,EAAK4oG,GAAQlmJ,UAAyB,IAAPy8C,IAAsBa,EAAGt9C,GAAO8B,GACtEusK,EAAcm4B,cAAcxmM,EAAK8B,GACrC,CACJ,C0BRYkoM,CAAwBv1K,EAASwX,EAAQi6G,GACzC,IAAIuhC,EAAS0hB,GAAgB10K,EAASwX,EAAQi6G,EAAQo2B,GACtDA,EAAgBmL,EAAOnL,cACvBrwI,EAASw7I,EAAOx7I,MACpB,CACA,OAAO9qC,GAAS,CAAEmtF,WAAYA,EAAYguF,cAAeA,GAAiBrwI,EAC9E,EACA8uI,4BAA6BA,GAC7BqpB,MAAO,SAAU3vK,EAASomJ,EAAalE,EAAcjoK,EAAS23F,QAChCr3F,IAAtBylB,EAAQoL,YACRg7I,EAAYvtJ,MAAMyD,WAAa0D,EAAQoL,UACjC,UACA,UAEV62I,GAAgBmE,EAAalE,EAAcjoK,EAAS23F,EAAMuwE,kBAC9D,EACAh6H,OAAQ69H,IAERwvB,GAAoB57B,GAAci7B,IChGlCY,GAAmB77B,GAAcltK,GAASA,GAAS,CAAC,EAAGmoM,IAAa,CAAE/O,cAAe,SAAUl0F,EAAOrmG,GAClG,OAAOqmG,EAAMrmG,EACjB,EAAGskM,sBAAuB,SAAUiF,EAAYvpM,GAC5C,IAAIooB,EACJ,OAAI2rJ,GAAgB/zK,IAC4B,QAAnCooB,EAAK0pK,GAAoB9xL,UAAyB,IAAPooB,OAAgB,EAASA,EAAG/nB,UAAY,GAEhGL,EAAO26K,GAAoBjtI,IAAI1tC,GAA0BA,EAAnBw6K,GAAYx6K,GAC3CupM,EAAW70K,aAAa10B,GACnC,EAAG+6K,4BAA6BA,GAA6BqpB,MAAO,SAAU+F,EAAUtvB,EAAalE,EAAcjoK,EAAS23F,GACxH0yE,GAAc8B,EAAalE,EAAcjoK,EAAS23F,EAAMuwE,kBAC5D,EAAGh6H,OAAQg+H,MClBXwvB,GAAyB,SAAUrlG,EAAWr2F,GAC9C,OAAO6kK,GAAexuE,GAChBmlG,GAAiBx7L,EAAS,CAAE2oK,4BAA4B,IACxD4yB,GAAkBv7L,EAAS,CAAE2oK,4BAA4B,GACnE,ECNA,SAASgzB,GAAgBC,EAAQvN,GAC7B,OAAIA,EAAKp3L,MAAQo3L,EAAK3kL,IACX,EACHkyL,GAAUvN,EAAKp3L,IAAMo3L,EAAK3kL,KAAQ,GAC9C,CAQA,IAAImyL,GAAsB,CACtBC,QAAS,SAAU1c,EAAQ3oL,GACvB,IAAKA,EAAK8mC,OACN,OAAO6hJ,EAKX,GAAsB,kBAAXA,EAAqB,CAC5B,IAAI9Y,GAAG9uI,KAAK4nJ,GAIR,OAAOA,EAHPA,EAASziH,WAAWyiH,EAK5B,CAKA,IAAIvpL,EAAI8lM,GAAgBvc,EAAQ3oL,EAAK8mC,OAAO1nC,GACxC1B,EAAIwnM,GAAgBvc,EAAQ3oL,EAAK8mC,OAAOppC,GAC5C,MAAO,GAAGoB,OAAOM,EAAG,MAAMN,OAAOpB,EAAG,IACxC,GCjCA4nM,GAAW,QACXC,GAAmB,CACnBF,QAAS,SAAU1c,EAAQ1lK,GACvB,IAAIuiL,EAAYviL,EAAGuiL,UAAWC,EAAkBxiL,EAAGwiL,gBAC/ChoF,EAAWkrE,EAIX+c,EAAuB/c,EAAO/tL,SAAS,QACvC+qM,EAAe,GACfD,IACA/c,EAASA,EAAOlxJ,QAAQqqK,IAAkB,SAAUvqJ,GAEhD,OADAouJ,EAAavrM,KAAKm9C,GACX+tJ,EACX,KAEJ,IAAI56K,EAAS03J,GAAQ/rK,MAAMsyK,GAE3B,GAAIj+J,EAAOzwB,OAAS,EAChB,OAAOwjH,EACX,IAAIylE,EAAWd,GAAQH,kBAAkB0G,GACrCn2J,EAA8B,kBAAd9H,EAAO,GAAkB,EAAI,EAE7Ck7K,EAASH,EAAgBrmM,EAAE01C,MAAQ0wJ,EAAUpmM,EAC7CymM,EAASJ,EAAgB/nM,EAAEo3C,MAAQ0wJ,EAAU9nM,EACjDgtB,EAAO,EAAI8H,IAAWozK,EACtBl7K,EAAO,EAAI8H,IAAWqzK,EAOtB,IAAIC,EAAe1vB,GAAIwvB,EAAQC,EAAQ,IAEL,kBAAvBn7K,EAAO,EAAI8H,KAClB9H,EAAO,EAAI8H,IAAWszK,GAEQ,kBAAvBp7K,EAAO,EAAI8H,KAClB9H,EAAO,EAAI8H,IAAWszK,GAC1B,IAAIl5I,EAASs2H,EAASx4J,GACtB,GAAIg7K,EAAsB,CACtB,IAAIK,EAAM,EACVn5I,EAASA,EAAOn1B,QAAQ6tK,IAAU,WAC9B,IAAIU,EAAcL,EAAaI,GAE/B,OADAA,IACOC,CACX,GACJ,CACA,OAAOp5I,CACX,GC3CAq5I,GAA0C,SAAUluK,GAEpD,SAASkuK,IACL,OAAkB,OAAXluK,GAAmBA,EAAOv9B,MAAMqB,KAAM7B,YAAc6B,IAC/D,CA8FA,OAjGAJ,GAAUwqM,EAA0BluK,GASpCkuK,EAAyBtrM,UAAU4mG,kBAAoB,WACnD,IvIrBmB2kG,EuIqBfluK,EAAQn8B,KACRonB,EAAKpnB,KAAKqlG,MAAOgoE,EAAgBjmJ,EAAGimJ,cAAei9B,EAAcljL,EAAGkjL,YAAaC,EAAoBnjL,EAAGmjL,kBAAmB15B,EAAWzpJ,EAAGypJ,SACzIS,EAAajE,EAAciE,WvIvBZ+4B,EuIwBDG,GvIvBtB3rM,OAAOuB,OAAOoyK,GAAiB63B,GuIwBvB/4B,KACoB,OAAhBg5B,QAAwC,IAAhBA,OAAyB,EAASA,EAAYz/B,QACtEy/B,EAAYz/B,MAAMtlI,IAAI+rI,IACC,OAAtBi5B,QAAoD,IAAtBA,OAA+B,EAASA,EAAkB7oB,WAAa7Q,GACtG05B,EAAkB7oB,SAASpQ,GAE/BA,EAAWpzI,KAAKusK,YAChBn5B,EAAWzjI,iBAAiB,qBAAqB,WAC7C1R,EAAM09J,cACV,IACAvoB,EAAWE,WAAWrxK,GAASA,GAAS,CAAC,EAAGmxK,EAAW5jK,SAAU,CAAE+zK,eAAgB,WAAc,OAAOtlJ,EAAM09J,cAAgB,MAElIjqB,GAAsBE,gBAAiB,CAC3C,EACAs6B,EAAyBtrM,UAAUymG,wBAA0B,SAAU2X,GACnE,IAAI/gF,EAAQn8B,KACRonB,EAAKpnB,KAAKqlG,MAAOqlG,EAAmBtjL,EAAGsjL,iBAAkBr9B,EAAgBjmJ,EAAGimJ,cAAe5B,EAAOrkJ,EAAGqkJ,KAAM+V,EAAYp6J,EAAGo6J,UAC1HlQ,EAAajE,EAAciE,WAC/B,OAAKA,GASLA,EAAWkQ,UAAYA,EACnB/V,GACAvuD,EAAUwtF,mBAAqBA,QACV18L,IAArB08L,EACAp5B,EAAWq5B,aAGX3qM,KAAK65L,eAEL38E,EAAUskE,YAAcA,IACpBA,EACAlQ,EAAWs5B,UAELt5B,EAAWu5B,YAMjB9e,GAAAA,YAAgB,WACZ,IAAI3kK,GACmC,QAAhCA,EAAKkqJ,EAAWw5B,kBAA+B,IAAP1jL,OAAgB,EAASA,EAAG2jL,QAAQ3sM,SAC/E+9B,EAAM09J,cAEd,KAGD,MAnCI,IAoCf,EACAuQ,EAAyBtrM,UAAUowG,mBAAqB,WACpD,IAAIoiE,EAAatxK,KAAKqlG,MAAMgoE,cAAciE,WACtCA,IACAA,EAAWpzI,KAAKusK,aACXn5B,EAAWihB,kBAAoBjhB,EAAW05B,UAC3ChrM,KAAK65L,eAGjB,EACAuQ,EAAyBtrM,UAAUk0G,qBAAuB,WACtD,IAAI5rF,EAAKpnB,KAAKqlG,MAAOgoE,EAAgBjmJ,EAAGimJ,cAAei9B,EAAcljL,EAAGkjL,YAAaW,EAAiB7jL,EAAGmjL,kBACrGj5B,EAAajE,EAAciE,WAC3BA,IACAA,EAAW45B,6BACS,OAAhBZ,QAAwC,IAAhBA,OAAyB,EAASA,EAAYz/B,QACtEy/B,EAAYz/B,MAAMi6B,OAAOxzB,IACN,OAAnB25B,QAA8C,IAAnBA,OAA4B,EAASA,EAAeE,aAC/EF,EAAeE,WAAW75B,GAEtC,EACA84B,EAAyBtrM,UAAU+6L,aAAe,WAC9C,IAAIA,EAAe75L,KAAKqlG,MAAMw0F,aACb,OAAjBA,QAA0C,IAAjBA,GAAmCA,GAChE,EACAuQ,EAAyBtrM,UAAU88C,OAAS,WACxC,OAAO,IACX,EACOwuJ,CACX,CAnG8C,CAmG5Ch6B,EAAAA,WAMF,IAAIo6B,GAAyB,CACzBn2B,aAAcl0K,GAASA,GAAS,CAAC,EAAGopM,IAAsB,CAAE6B,QAAS,CAC7D,sBACA,uBACA,yBACA,6BAERn/K,oBAAqBs9K,GACrBr9K,qBAAsBq9K,GACtBn9K,uBAAwBm9K,GACxBp9K,wBAAyBo9K,GACzBp3K,UAAWu3K,IC7HX2B,GAAiB,CACjB9/B,cD4GJ,SAAuBlmE,GACnB,IAAIj+E,EAAK8jJ,GAAOqW,KAAe,GAAIC,EAAYp6J,EAAG,GAAIyyK,EAAezyK,EAAG,GACpEkjL,GAAc7+F,EAAAA,EAAAA,YAAWskE,IAC7B,OAAQK,EAAAA,cAA6Bg6B,GAA0BjqM,GAAS,CAAC,EAAGklG,EAAO,CAAEilG,YAAaA,EAAaC,mBAAmB9+F,EAAAA,EAAAA,YAAWukE,IAA2BwR,UAAWA,EAAWqY,aAAcA,IAChN,GEhHA,IAAIj7I,GAAU,CAAC,UAAW,WAAY,aAAc,eAChD0sJ,GAAa1sJ,GAAQxgD,OACrBmtM,GAAW,SAAUzqM,GACrB,MAAwB,kBAAVA,EAAqBupE,WAAWvpE,GAASA,CAC3D,EACI0qM,GAAO,SAAU1qM,GACjB,MAAwB,kBAAVA,GAAsBkzK,GAAG9uI,KAAKpkC,EAChD,EA4CA,SAAS2qM,GAAUjzL,EAAQkzL,GACvB,IAAItkL,EACJ,OAAqC,QAA7BA,EAAK5O,EAAOkzL,UAAgC,IAAPtkL,EAAgBA,EAAK5O,EAAO67J,YAC7E,CAwBA,IAAIs3B,GAAkBC,GAAS,EAAG,GAAKriB,IACnCsiB,GAAmBD,GAAS,GAAK,IAAM3iB,IAC3C,SAAS2iB,GAASx0L,EAAKzS,EAAKmkL,GACxB,OAAO,SAAUnpL,GAEb,OAAIA,EAAIyX,EACG,EACPzX,EAAIgF,EACG,EACJmkL,EAAOjiB,GAASzvJ,EAAKzS,EAAKhF,GACrC,CACJ,CCvFA,SAASmsM,GAAa/P,EAAMgQ,GACxBhQ,EAAK3kL,IAAM20L,EAAW30L,IACtB2kL,EAAKp3L,IAAMonM,EAAWpnM,GAC1B,CAMA,SAASqnM,GAAY3wJ,EAAK4wJ,GACtBH,GAAazwJ,EAAI93C,EAAG0oM,EAAU1oM,GAC9BuoM,GAAazwJ,EAAIx5C,EAAGoqM,EAAUpqM,EAClC,CCTA,SAASqqM,GAAiB34J,EAAO4F,EAAWF,EAAOkjJ,EAAasB,GAM5D,OAJAlqJ,EAAQgqJ,GADRhqJ,GAAS4F,EACiB,EAAIF,EAAOkjJ,QACpBnuL,IAAbyvL,IACAlqJ,EAAQgqJ,GAAWhqJ,EAAO,EAAIkqJ,EAAUtB,IAErC5oJ,CACX,CA2BA,SAAS44J,GAAqBpQ,EAAM+B,EAAY12K,EAAI89H,EAAQknD,GACxD,IAAIn0J,EAAKizH,GAAO9jJ,EAAI,GAAIpoB,EAAMi5C,EAAG,GAAI8lJ,EAAW9lJ,EAAG,GAAI+lJ,EAAY/lJ,EAAG,IAxB1E,SAAyB8jJ,EAAM5iJ,EAAWF,EAAOisG,EAAQu4C,EAAUsO,EAAYK,GAW3E,QAVkB,IAAdjzJ,IAAwBA,EAAY,QAC1B,IAAVF,IAAoBA,EAAQ,QACjB,IAAXisG,IAAqBA,EAAS,SACf,IAAf6mD,IAAyBA,EAAahQ,QACvB,IAAfqQ,IAAyBA,EAAarQ,GACtChoB,GAAQ7uI,KAAKiU,KACbA,EAAYkxB,WAAWlxB,GAEvBA,EADuBohI,GAAI6xB,EAAWh1L,IAAKg1L,EAAWznM,IAAKw0C,EAAY,KACxCizJ,EAAWh1L,KAErB,kBAAd+hC,EAAX,CAEA,IAAIgjJ,EAAc5hB,GAAIwxB,EAAW30L,IAAK20L,EAAWpnM,IAAKugJ,GAClD62C,IAASgQ,IACT5P,GAAehjJ,GACnB4iJ,EAAK3kL,IAAM80L,GAAiBnQ,EAAK3kL,IAAK+hC,EAAWF,EAAOkjJ,EAAasB,GACrE1B,EAAKp3L,IAAMunM,GAAiBnQ,EAAKp3L,IAAKw0C,EAAWF,EAAOkjJ,EAAasB,EAL3D,CAMd,CAOI4O,CAAgBtQ,EAAM+B,EAAW9+L,GAAM8+L,EAAWC,GAAWD,EAAWE,GAAYF,EAAW7kJ,MAAOisG,EAAQknD,EAClH,CAIA,IAAIlO,GAAQ,CAAC,IAAK,SAAU,WACxBC,GAAQ,CAAC,IAAK,SAAU,WAK5B,SAASmO,GAAoBjxJ,EAAKyiJ,EAAYmO,EAAWM,GACrDJ,GAAqB9wJ,EAAI93C,EAAGu6L,EAAYI,GAAqB,OAAd+N,QAAoC,IAAdA,OAAuB,EAASA,EAAU1oM,EAAiB,OAAdgpM,QAAoC,IAAdA,OAAuB,EAASA,EAAUhpM,GAClL4oM,GAAqB9wJ,EAAIx5C,EAAGi8L,EAAYK,GAAqB,OAAd8N,QAAoC,IAAdA,OAAuB,EAASA,EAAUpqM,EAAiB,OAAd0qM,QAAoC,IAAdA,OAAuB,EAASA,EAAU1qM,EACtL,CC1DA,SAAS2qM,GAAgBh2L,GACrB,OAA2B,IAApBA,EAAM2iC,WAAmC,IAAhB3iC,EAAMyiC,KAC1C,CACA,SAASwzJ,GAAYj2L,GACjB,OAAOg2L,GAAgBh2L,EAAMjT,IAAMipM,GAAgBh2L,EAAM3U,EAC7D,CACA,SAAS6qM,GAAU//L,EAAGnN,GAClB,OAAQmN,EAAEpJ,EAAE6T,MAAQ5X,EAAE+D,EAAE6T,KACpBzK,EAAEpJ,EAAEoB,MAAQnF,EAAE+D,EAAEoB,KAChBgI,EAAE9K,EAAEuV,MAAQ5X,EAAEqC,EAAEuV,KAChBzK,EAAE9K,EAAE8C,MAAQnF,EAAEqC,EAAE8C,GACxB,CCTA,IAAIgoM,GAA2B,WAC3B,SAASA,IACL3sM,KAAK+qM,QAAU,EACnB,CAuGA,OAtGA4B,EAAU7tM,UAAUymC,IAAM,SAAUphC,GAChCqvL,GAAcxzL,KAAK+qM,QAAS5mM,GAC5BA,EAAKutK,gBACT,EACAi7B,EAAU7tM,UAAUgmM,OAAS,SAAU3gM,GAKnC,GAJA4tI,GAAW/xI,KAAK+qM,QAAS5mM,GACrBA,IAASnE,KAAK4sM,WACd5sM,KAAK4sM,cAAW5+L,GAEhB7J,IAASnE,KAAK6sM,KAAM,CACpB,IAAID,EAAW5sM,KAAK+qM,QAAQ/qM,KAAK+qM,QAAQ3sM,OAAS,GAC9CwuM,GACA5sM,KAAK4qM,QAAQgC,EAErB,CACJ,EACAD,EAAU7tM,UAAU+rM,SAAW,SAAU1mM,GACrC,IAMIyoM,EANAE,EAAc9sM,KAAK+qM,QAAQltF,WAAU,SAAUkvF,GAAU,OAAO5oM,IAAS4oM,CAAQ,IACrF,GAAoB,IAAhBD,EACA,OAAO,EAKX,IAAK,IAAI5uM,EAAI4uM,EAAa5uM,GAAK,EAAGA,IAAK,CACnC,IAAI6uM,EAAS/sM,KAAK+qM,QAAQ7sM,GAC1B,IAAyB,IAArB6uM,EAAOvrB,UAAqB,CAC5BorB,EAAWG,EACX,KACJ,CACJ,CACA,QAAIH,IACA5sM,KAAK4qM,QAAQgC,IACN,EAKf,EACAD,EAAU7tM,UAAU8rM,QAAU,SAAUzmM,EAAM6oM,GAC1C,IAAI5lL,EACAwlL,EAAW5sM,KAAK6sM,KAChB1oM,IAASyoM,IAEb5sM,KAAK4sM,SAAWA,EAChB5sM,KAAK6sM,KAAO1oM,EACZA,EAAK8oM,OACDL,IACAA,EAASryG,UAAYqyG,EAASl7B,iBAC9BvtK,EAAKutK,iBACLvtK,EAAK+oM,WAAaN,EACdI,IACA7oM,EAAK+oM,WAAWC,iBAAkB,GAElCP,EAASQ,WACTjpM,EAAKipM,SAAWR,EAASQ,SACzBjpM,EAAKipM,SAASz3B,aACVi3B,EAASS,iBAAmBT,EAASj3B,aACzCxxK,EAAKipM,SAASE,UAAW,IAEJ,QAApBlmL,EAAKjjB,EAAK+5B,YAAyB,IAAP9W,OAAgB,EAASA,EAAGmmL,cACzDppM,EAAKqpM,eAAgB,IAGP,IADFrpM,EAAKuJ,QAAQ+/L,WAEzBb,EAASc,QAerB,EACAf,EAAU7tM,UAAU6uM,sBAAwB,WACxC3tM,KAAK+qM,QAAQ1+L,SAAQ,SAAUlI,GAC3B,IAAIijB,EAAI6wB,EAAIwD,EAAIa,EAAID,EAC0B,QAA7CpE,GAAM7wB,EAAKjjB,EAAKuJ,SAAS+zK,sBAAmC,IAAPxpI,GAAyBA,EAAGh5C,KAAKmoB,GACmB,QAAzGi1B,EAAkC,QAA5BZ,EAAKt3C,EAAKypM,oBAAiC,IAAPnyJ,OAAgB,GAAUa,EAAKb,EAAG/tC,SAAS+zK,sBAAmC,IAAPplI,GAAyBA,EAAGp9C,KAAKq9C,EACvJ,GACJ,EACAqwJ,EAAU7tM,UAAU4yK,eAAiB,WACjC1xK,KAAK+qM,QAAQ1+L,SAAQ,SAAUlI,GAC3BA,EAAKo2F,UAAYp2F,EAAKutK,gBAAe,EACzC,GACJ,EAKAi7B,EAAU7tM,UAAU+uM,mBAAqB,WACjC7tM,KAAK6sM,MAAQ7sM,KAAK6sM,KAAKO,WACvBptM,KAAK6sM,KAAKO,cAAWp/L,EAE7B,EACO2+L,CACX,CA3G+B,GCD/B,SAASmB,GAAyBt3L,EAAOmzL,EAAWoE,GAOhD,IAAIC,EAAax3L,EAAMjT,EAAE41C,UAAYwwJ,EAAUpmM,EAC3C0qM,EAAaz3L,EAAM3U,EAAEs3C,UAAYwwJ,EAAU9nM,EAC3CqtB,EAAY,eAAejsB,OAAO+qM,EAAY,QAAQ/qM,OAAOgrM,EAAY,WAM7E,GADA/+K,GAAa,SAASjsB,OAAO,EAAI0mM,EAAUpmM,EAAG,MAAMN,OAAO,EAAI0mM,EAAU9nM,EAAG,MACxEksM,EAAiB,CACjB,IAAIt5B,EAASs5B,EAAgBt5B,OAAQC,EAAUq5B,EAAgBr5B,QAASC,EAAUo5B,EAAgBp5B,QAC9FF,IACAvlJ,GAAa,UAAUjsB,OAAOwxK,EAAQ,UACtCC,IACAxlJ,GAAa,WAAWjsB,OAAOyxK,EAAS,UACxCC,IACAzlJ,GAAa,WAAWjsB,OAAO0xK,EAAS,SAChD,CAKA,IAAIu5B,EAAgB13L,EAAMjT,EAAE01C,MAAQ0wJ,EAAUpmM,EAC1C4qM,EAAgB33L,EAAM3U,EAAEo3C,MAAQ0wJ,EAAU9nM,EAE9C,MAhCqB,sDA+BrBqtB,GAAa,SAASjsB,OAAOirM,EAAe,MAAMjrM,OAAOkrM,EAAe,MAC9B,OAASj/K,CACvD,CCjCA,IAAIk/K,GAAiB,SAAUzhM,EAAGnN,GAC9B,OAAOmN,EAAEslB,MAAQzyB,EAAEyyB,KACvB,ECCIo8K,GAA0B,WAC1B,SAASA,IACLruM,KAAKmhF,SAAW,GAChBnhF,KAAKsuM,SAAU,CACnB,CAcA,OAbAD,EAASvvM,UAAUymC,IAAM,SAAUsC,GAC/B2rJ,GAAcxzL,KAAKmhF,SAAUt5C,GAC7B7nC,KAAKsuM,SAAU,CACnB,EACAD,EAASvvM,UAAUgmM,OAAS,SAAUj9J,GAClCkqG,GAAW/xI,KAAKmhF,SAAUt5C,GAC1B7nC,KAAKsuM,SAAU,CACnB,EACAD,EAASvvM,UAAUuN,QAAU,SAAUm/C,GACnCxrD,KAAKsuM,SAAWtuM,KAAKmhF,SAASt5B,KAAKumJ,IACnCpuM,KAAKsuM,SAAU,EACftuM,KAAKmhF,SAAS90E,QAAQm/C,EAC1B,EACO6iJ,CACX,CAnB8B,GCyB9B,SAASE,GAAqBnnL,GAC1B,IAAIonL,EAAuBpnL,EAAGonL,qBAAsBC,EAAgBrnL,EAAGqnL,cAAeC,EAAgBtnL,EAAGsnL,cAAeC,EAAoBvnL,EAAGunL,kBAAmBjG,EAAiBthL,EAAGshL,eACtL,OAAsB,WAClB,SAASkG,EAAehuJ,EAAI+0H,EAAcz7J,GACtC,IAAIiiB,EAAQn8B,UACS,IAAjB21K,IAA2BA,EAAe,CAAC,QAChC,IAAXz7J,IAAqBA,EAA2B,OAAlBu0L,QAA4C,IAAlBA,OAA2B,EAASA,KAOhGzuM,KAAKmhF,SAAW,IAAIvF,IAKpB57E,KAAK0N,QAAU,CAAC,EAMhB1N,KAAK6uM,iBAAkB,EACvB7uM,KAAKu/L,oBAAqB,EAO1Bv/L,KAAKwtM,eAAgB,EAIrBxtM,KAAK8uM,uBAAwB,EAC7B9uM,KAAK+uM,uBAAwB,EAK7B/uM,KAAKutM,YAAa,EAIlBvtM,KAAKuuC,OAAQ,EAKbvuC,KAAKgvM,YAAa,EAIlBhvM,KAAKivM,sBAAuB,EAS5BjvM,KAAK2pM,UAAY,CAAEpmM,EAAG,EAAG1B,EAAG,GAI5B7B,KAAKkvM,cAAgB,IAAItjH,IAEzB5rF,KAAKmvM,eAAiB,IAAIvjH,IAC1B5rF,KAAKovM,kBAAoB,WACjBjzK,EAAMoxK,aACNpxK,EAAMoxK,YAAa,EACnBpxK,EAAMkzK,oBAEd,EACArvM,KAAKsvM,iBAAmB,WACpBnzK,EAAMozK,MAAMljM,QAAQmjM,IACpBrzK,EAAMozK,MAAMljM,QAAQojM,GACxB,EACAzvM,KAAK0vM,cAAe,EACpB1vM,KAAK6+B,WAAY,EACjB7+B,KAAK2vM,kBAAoB,EAKzB3vM,KAAK4vM,YAAc,IAAIhkH,IACvB5rF,KAAK4gD,GAAKA,EACV5gD,KAAK21K,aAAeA,EACpB31K,KAAKk+B,KAAOhkB,EAASA,EAAOgkB,MAAQhkB,EAASla,KAC7CA,KAAKwvC,KAAOt1B,EAASxX,GAAcA,GAAc,GAAIwoK,GAAOhxJ,EAAOs1B,OAAO,GAAQ,CAACt1B,IAAS,GAAS,GACrGla,KAAKka,OAASA,EACdla,KAAKiyB,MAAQ/X,EAASA,EAAO+X,MAAQ,EAAI,EACzC2uB,GAAM5gD,KAAKk+B,KAAK2xK,sBAAsBjvJ,EAAI5gD,MAC1C,IAAK,IAAI9B,EAAI,EAAGA,EAAI8B,KAAKwvC,KAAKpxC,OAAQF,IAClC8B,KAAKwvC,KAAKtxC,GAAG+wM,sBAAuB,EAEpCjvM,KAAKk+B,OAASl+B,OACdA,KAAKuvM,MAAQ,IAAIlB,GACzB,CAq5BA,OAp5BAO,EAAe9vM,UAAU+uC,iBAAmB,SAAU90B,EAAM2nH,GAIxD,OAHK1gI,KAAKkvM,cAAcxiK,IAAI3zB,IACxB/Y,KAAKkvM,cAAcr/I,IAAI92C,EAAM,IAAI06K,IAE9BzzL,KAAKkvM,cAAc3iM,IAAIwM,GAAMwsB,IAAIm7F,EAC5C,EACAkuE,EAAe9vM,UAAUgxM,gBAAkB,SAAU/2L,GAEjD,IADA,IAAIS,EAAO,GACFhU,EAAK,EAAGA,EAAKrH,UAAUC,OAAQoH,IACpCgU,EAAKhU,EAAK,GAAKrH,UAAUqH,GAE7B,IAAIuqM,EAAsB/vM,KAAKkvM,cAAc3iM,IAAIwM,GACzB,OAAxBg3L,QAAwD,IAAxBA,GAA0CA,EAAoBpc,OAAOh1L,MAAMoxM,EAAqBrtM,GAAc,GAAIwoK,GAAO1xJ,IAAO,GACpK,EACAo1L,EAAe9vM,UAAUkxM,aAAe,SAAUj3L,GAC9C,OAAO/Y,KAAKkvM,cAAcxiK,IAAI3zB,EAClC,EACA61L,EAAe9vM,UAAU+wM,sBAAwB,SAAUjvJ,EAAIz8C,GAC3DnE,KAAKmvM,eAAet/I,IAAIjP,EAAIz8C,EAChC,EAIAyqM,EAAe9vM,UAAUizK,MAAQ,SAAUx3E,EAAUizG,GACjD,IACIpmL,EADA+U,EAAQn8B,KAGZ,QADsB,IAAlBwtM,IAA4BA,GAAgB,IAC5CxtM,KAAKu6F,SAAT,CAEAv6F,KAAKuuC,MACDgsD,aAAoB01G,YAAmC,QAArB11G,EAASv7D,QAC/Ch/B,KAAKu6F,SAAWA,EAChB,IAAItiD,EAAKj4C,KAAK0N,QAASmjK,EAAW54H,EAAG44H,SAAUK,EAASj5H,EAAGi5H,OAAQ7D,EAAgBp1H,EAAGo1H,cAUtF,GATIA,IAAkBA,EAAchnD,eAChCgnD,EAAc0E,MAAMx3E,GAExBv6F,KAAKk+B,KAAKqxK,MAAMhqK,IAAIvlC,MACG,QAAtBonB,EAAKpnB,KAAKka,cAA2B,IAAPkN,GAAyBA,EAAG+5D,SAAS57C,IAAIvlC,MACxEA,KAAK4gD,IAAM5gD,KAAKk+B,KAAKixK,eAAeljH,OAAOjsF,KAAK4gD,IAC5C4sJ,IAAkBt8B,GAAUL,KAC5B7wK,KAAKwtM,eAAgB,GAErBgB,EAAsB,CACtB,IAAI0B,EACAC,EAAwB,WACxB,OAAQh0K,EAAM+B,KAAK6wK,uBAAwB,CAC/C,EACAP,EAAqBj0G,GAAU,WAC3Bp+D,EAAM+B,KAAK6wK,uBAAwB,EACnCryG,aAAawzG,GACbA,EAAmBl8K,OAAOqZ,WAAW8iK,EAAuB,KACxDvgC,GAAsBC,yBACtBD,GAAsBC,wBAAyB,EAC/C1zI,EAAMozK,MAAMljM,QAAQ+jM,IAE5B,GACJ,CACIv/B,GACA7wK,KAAKk+B,KAAKmyK,mBAAmBx/B,EAAU7wK,OAGd,IAAzBA,KAAK0N,QAAQuhK,SACb5B,IACCwD,GAAYK,IACblxK,KAAK6tC,iBAAiB,aAAa,SAAUzmB,GACzC,IAAI6wB,EAAIwD,EAAIa,EAAID,EAAIG,EAChBhmC,EAAQ4Q,EAAG5Q,MAAOmsL,EAAmBv7K,EAAGu7K,iBAAkB2N,EAA2BlpL,EAAGkpL,yBAA0BC,EAAYnpL,EAAG8pJ,OACrI,GAAI/0I,EAAMq0K,yBAGN,OAFAr0K,EAAM8O,YAASj9B,OACfmuB,EAAMs0K,oBAAiBziM,GAI3B,IAAI0iM,EAAoI,QAAhHj1J,EAAyC,QAAnCxD,EAAK9b,EAAMzuB,QAAQ4/E,kBAA+B,IAAPr1C,EAAgBA,EAAKo1H,EAAc0kB,8BAA2C,IAAPt2I,EAAgBA,EAAKk1J,GACjKp0J,EAAK8wH,EAAcsB,WAAYiiC,EAAyBr0J,EAAGq0J,uBAAwBC,EAA4Bt0J,EAAGs0J,0BAKlHC,GAAiB30K,EAAM40K,eACtBrE,GAAUvwK,EAAM40K,aAAcR,IAC/BD,EAMAU,GAAgCrO,GAAoB2N,EACxD,IAAiC,QAA3Bh0J,EAAKngB,EAAM+wK,kBAA+B,IAAP5wJ,OAAgB,EAASA,EAAGi+C,WACjEy2G,GACCrO,IACImO,IAAkB30K,EAAMo2J,kBAAoB,CAC7Cp2J,EAAM+wK,aACN/wK,EAAMyxK,aAAezxK,EAAM+wK,WAC3B/wK,EAAMyxK,aAAaA,kBAAe5/L,GAEtCmuB,EAAM80K,mBAAmBz6L,EAAOw6L,GAChC,IAAIE,EAAmB/wM,GAASA,GAAS,CAAC,EAAG+xL,GAAmBwe,EAAkB,WAAY,CAAErjB,OAAQujB,EAAwBrjB,WAAYsjB,IACxIxjC,EAAcE,qBACd2jC,EAAiB9sE,MAAQ,EACzB8sE,EAAiBlkM,MAAO,GAE5BmvB,EAAMy2J,eAAese,EACzB,MAOSvO,GAC2B,IAA5BxmK,EAAMwzK,mBACNxzK,EAAMi0K,kBAEVj0K,EAAM6uK,WAA4D,QAA9CxuJ,GAAMH,EAAKlgB,EAAMzuB,SAAS+zK,sBAAmC,IAAPjlI,GAAyBA,EAAGv9C,KAAKo9C,IAE/GlgB,EAAM40K,aAAeR,CACzB,GAzFM,CA2Fd,EACA3B,EAAe9vM,UAAUg6G,QAAU,WAC/B,IAAI1xF,EAAI6wB,EACRj4C,KAAK0N,QAAQmjK,UAAY7wK,KAAK2qM,aAC9B3qM,KAAKk+B,KAAKqxK,MAAMzK,OAAO9kM,MACI,QAA1BonB,EAAKpnB,KAAK8qM,kBAA+B,IAAP1jL,GAAyBA,EAAG09K,OAAO9kM,MAC/C,QAAtBi4C,EAAKj4C,KAAKka,cAA2B,IAAP+9B,GAAyBA,EAAGkpC,SAAS8K,OAAOjsF,MAC3EA,KAAKu6F,cAAWvsF,EAChBm+K,GAAWglB,UAAUnxM,KAAKsvM,iBAC9B,EAEAV,EAAe9vM,UAAUsyM,YAAc,WACnCpxM,KAAK8uM,uBAAwB,CACjC,EACAF,EAAe9vM,UAAUuyM,cAAgB,WACrCrxM,KAAK8uM,uBAAwB,CACjC,EACAF,EAAe9vM,UAAUwyM,gBAAkB,WACvC,OAAOtxM,KAAK8uM,uBAAyB9uM,KAAK+uM,qBAC9C,EACAH,EAAe9vM,UAAU0xM,uBAAyB,WAC9C,IAAIppL,EACJ,OAAQpnB,KAAKu/L,qBACe,QAAtBn4K,EAAKpnB,KAAKka,cAA2B,IAAPkN,OAAgB,EAASA,EAAGopL,4BAC5D,CACR,EAEA5B,EAAe9vM,UAAUyyM,YAAc,WACnC,IAAInqL,EACApnB,KAAKsxM,oBAETtxM,KAAKutM,YAAa,EACI,QAArBnmL,EAAKpnB,KAAKuvM,aAA0B,IAAPnoL,GAAyBA,EAAG/a,QAAQmlM,IACtE,EACA5C,EAAe9vM,UAAU6rM,WAAa,SAAU8G,GAC5C,IAAIrqL,EAAI6wB,EAAIwD,EAEZ,QAD8B,IAA1Bg2J,IAAoCA,GAAwB,GAC5DzxM,KAAKk+B,KAAKozK,kBACoC,QAA7Cr5J,GAAM7wB,EAAKpnB,KAAK0N,SAAS+zK,sBAAmC,IAAPxpI,GAAyBA,EAAGh5C,KAAKmoB,QAI3F,IADCpnB,KAAKk+B,KAAKqvK,YAAcvtM,KAAKk+B,KAAKqzK,eAC/BvxM,KAAKwtM,cAAT,CAEAxtM,KAAKwtM,eAAgB,EACrB,IAAK,IAAItvM,EAAI,EAAGA,EAAI8B,KAAKwvC,KAAKpxC,OAAQF,IAAK,CACvC,IAAIiG,EAAOnE,KAAKwvC,KAAKtxC,GACrBiG,EAAK8qM,sBAAuB,EAK5B9qM,EAAKi+L,cACT,CACA,IAAI9lJ,EAAKt8C,KAAK0N,QAASmjK,EAAWv0H,EAAGu0H,SAAUK,EAAS50H,EAAG40H,OAC3D,QAAiBljK,IAAb6iK,GAA2BK,EAA/B,CAEA,IAAI0E,EAA0D,QAArCn6H,EAAKz7C,KAAK0N,QAAQ2/J,qBAAkC,IAAP5xH,OAAgB,EAASA,EAAGkzH,WAAWiH,kBAC7G51K,KAAK0xM,2BAAmD,OAAtB97B,QAAoD,IAAtBA,OAA+B,EAASA,EAAkB51K,KAAK21K,aAAc,IAC7I31K,KAAK2xM,iBACLF,GAAyBzxM,KAAK8vM,gBAAgB,aAJpC,CAbA,CAkBd,EAEAlB,EAAe9vM,UAAU2rM,UAAY,WAKjC,GAJuBzqM,KAAKsxM,kBAQxB,OAHAtxM,KAAKqxM,gBACLrxM,KAAKqvM,yBACLrvM,KAAKuvM,MAAMljM,QAAQulM,IAGlB5xM,KAAKutM,aAEVvtM,KAAKutM,YAAa,EAOdvtM,KAAKmvM,eAAehmL,OACpBnpB,KAAKmvM,eAAe9iM,QAAQwlM,IAC5B7xM,KAAKmvM,eAAetb,SAKxB7zL,KAAKuvM,MAAMljM,QAAQylM,IAKnB9xM,KAAKuvM,MAAMljM,QAAQg2L,IAKnBriM,KAAKuvM,MAAMljM,QAAQ0lM,IACnB/xM,KAAKqvM,oBAEL9zF,GAAUoxE,SACVpxE,GAAU41F,YACV51F,GAAU3/D,SACd,EACAgzJ,EAAe9vM,UAAUuwM,kBAAoB,WACzCrvM,KAAKuvM,MAAMljM,QAAQ2lM,IACnBhyM,KAAK4vM,YAAYvjM,QAAQ4lM,GAC7B,EACArD,EAAe9vM,UAAUozM,yBAA2B,WAChDnmB,GAAAA,UAAe/rL,KAAKsvM,kBAAkB,GAAO,EACjD,EACAV,EAAe9vM,UAAUosM,0BAA4B,WACjD,IAAI/uK,EAAQn8B,KAMZ+rL,GAAAA,YAAgB,WACR5vJ,EAAMqxK,cACNrxK,EAAM+B,KAAKusK,YAGXtuK,EAAM+B,KAAKkxK,mBAEnB,GACJ,EAIAR,EAAe9vM,UAAU6yM,eAAiB,WACtC,IAAI3xM,KAAKotM,UAAaptM,KAAKu6F,SAA3B,CAEA,IAAI43G,EAAWnyM,KAAKoyM,UAChBlhC,EAASlxK,KAAKqyM,gBAAgBryM,KAAKsyM,oBAAoBH,IAC3DI,GAASrhC,GACTlxK,KAAKotM,SAAW,CACZ+E,SAAUA,EACVjhC,OAAQA,EACRyE,aAAc,CAAC,EAPT,CASd,EACAi5B,EAAe9vM,UAAUujM,aAAe,WACpC,IAAIj7K,EACJ,GAAKpnB,KAAKu6F,WAGVv6F,KAAKoiM,eACCpiM,KAAK0N,QAAQ+jK,qBAAuBzxK,KAAKgrM,UAC1ChrM,KAAKwtM,eADV,CAWA,GAAIxtM,KAAKktM,aAAeltM,KAAKktM,WAAW3yG,SACpC,IAAK,IAAIr8F,EAAI,EAAGA,EAAI8B,KAAKwvC,KAAKpxC,OAAQF,IAAK,CAC5B8B,KAAKwvC,KAAKtxC,GAChBkkM,cACT,CAEJ,IAAI+P,EAAWnyM,KAAKoyM,UACpBG,GAASJ,GACT,IAAIK,EAAaxyM,KAAKkxK,OACtBlxK,KAAKkxK,OAAS,CACVihC,SAAUA,EACVzS,OAAQ1/L,KAAKsyM,oBAAoBH,IAErCnyM,KAAKyyM,gBzB7ZqB,CAClClvM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyB+Z1C3E,KAAKwtM,eAAgB,EACrBxtM,KAAK4pM,qBAAkB57L,EACvBhO,KAAK8vM,gBAAgB,UAAW9vM,KAAKkxK,OAAOwuB,QACN,QAArCt4K,EAAKpnB,KAAK0N,QAAQ2/J,qBAAkC,IAAPjmJ,GAAyBA,EAAGsrL,oBAAoB1yM,KAAKkxK,OAAOwuB,OAAuB,OAAf8S,QAAsC,IAAfA,OAAwB,EAASA,EAAW9S,OAzBrL,CA0BJ,EACAkP,EAAe9vM,UAAUsjM,aAAe,WAChCpiM,KAAK0N,QAAQ0jK,cAAgBpxK,KAAKu6F,WAClCv6F,KAAK2yM,aAAehE,EAAkB3uM,KAAKu6F,UAC3Cv6F,KAAKmhM,OAASuN,EAAc1uM,KAAKu6F,UAEzC,EACAq0G,EAAe9vM,UAAU4pM,eAAiB,WACtC,IAAIthL,EACJ,GAAKshL,EAAL,CAEA,IAAIkK,EAAmB5yM,KAAKwtM,eAAiBxtM,KAAKivM,qBAC9C4D,EAAgB7yM,KAAK4pM,kBAAoB6C,GAAYzsM,KAAK4pM,iBAC1Dh0B,EAA0D,QAArCxuJ,EAAKpnB,KAAK0N,QAAQ2/J,qBAAkC,IAAPjmJ,OAAgB,EAASA,EAAGunJ,WAAWiH,kBACzGk9B,EAA+C,OAAtBl9B,QAAoD,IAAtBA,OAA+B,EAASA,EAAkB51K,KAAK21K,aAAc,IACpIo9B,EAA8BD,IAA2B9yM,KAAK0xM,2BAC9DkB,IACCC,GACG98B,GAAa/1K,KAAK21K,eAClBo9B,KACJrK,EAAe1oM,KAAKu6F,SAAUu4G,GAC9B9yM,KAAKivM,sBAAuB,EAC5BjvM,KAAK0xK,iBAZC,CAcd,EACAk9B,EAAe9vM,UAAUszM,QAAU,WAC/B,IAAI/kC,EAAgBrtK,KAAK0N,QAAQ2/J,cACjC,IAAKA,EACD,MzB9bsB,CAClC9pK,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyBgc1C,IAAI02C,EAAMgyH,EAAcgxB,qBAEpB8C,EAASnhM,KAAKk+B,KAAKijK,OAKvB,OAJIA,IACAvD,GAAcviJ,EAAI93C,EAAG49L,EAAO59L,GAC5Bq6L,GAAcviJ,EAAIx5C,EAAGs/L,EAAOt/L,IAEzBw5C,CACX,EACAuzJ,EAAe9vM,UAAUwzM,oBAAsB,SAAUj3J,GACrD,IAAI23J,EzBzcsB,CAClCzvM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyB2c1CqnM,GAAYgH,EAAkB33J,GAK9B,IAAK,IAAIn9C,EAAI,EAAGA,EAAI8B,KAAKwvC,KAAKpxC,OAAQF,IAAK,CACvC,IAAIiG,EAAOnE,KAAKwvC,KAAKtxC,GACjB+0M,EAAW9uM,EAAKg9L,OAAQzzL,EAAUvJ,EAAKuJ,QAASilM,EAAexuM,EAAKwuM,aACxE,GAAIxuM,IAASnE,KAAKk+B,MAAQ+0K,GAAYvlM,EAAQ0jK,aAAc,CAKxD,GAAIuhC,EAAc,CACd3G,GAAYgH,EAAkB33J,GAC9B,IAAI63J,EAAalzM,KAAKk+B,KAAKijK,OAKvB+R,IACAtV,GAAcoV,EAAiBzvM,GAAI2vM,EAAW3vM,GAC9Cq6L,GAAcoV,EAAiBnxM,GAAIqxM,EAAWrxM,GAEtD,CACA+7L,GAAcoV,EAAiBzvM,EAAG0vM,EAAS1vM,GAC3Cq6L,GAAcoV,EAAiBnxM,EAAGoxM,EAASpxM,EAC/C,CACJ,CACA,OAAOmxM,CACX,EACApE,EAAe9vM,UAAUq0M,eAAiB,SAAU93J,EAAK+3J,QAC/B,IAAlBA,IAA4BA,GAAgB,GAChD,IAAIC,EzB3esB,CAClC9vM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyB6e1CqnM,GAAYqH,EAAgBh4J,GAC5B,IAAK,IAAIn9C,EAAI,EAAGA,EAAI8B,KAAKwvC,KAAKpxC,OAAQF,IAAK,CACvC,IAAIiG,EAAOnE,KAAKwvC,KAAKtxC,IAChBk1M,GACDjvM,EAAKuJ,QAAQ0jK,cACbjtK,EAAKg9L,QACLh9L,IAASA,EAAK+5B,MACdkgK,GAAaiV,EAAgB,CACzB9vM,GAAIY,EAAKg9L,OAAO59L,EAChB1B,GAAIsC,EAAKg9L,OAAOt/L,IAGnBk0K,GAAa5xK,EAAKwxK,eAEvByoB,GAAaiV,EAAgBlvM,EAAKwxK,aACtC,CAIA,OAHII,GAAa/1K,KAAK21K,eAClByoB,GAAaiV,EAAgBrzM,KAAK21K,cAE/B09B,CACX,EACAzE,EAAe9vM,UAAUuzM,gBAAkB,SAAUh3J,GACjD,IAAIj0B,EACAksL,EzBngBsB,CAClC/vM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyBqgB1CqnM,GAAYsH,EAAqBj4J,GACjC,IAAK,IAAIn9C,EAAI,EAAGA,EAAI8B,KAAKwvC,KAAKpxC,OAAQF,IAAK,CACvC,IAAIiG,EAAOnE,KAAKwvC,KAAKtxC,GACrB,GAAKiG,EAAKo2F,UAELw7E,GAAa5xK,EAAKwxK,cAAvB,CAEA0nB,GAASl5L,EAAKwxK,eAAiBxxK,EAAKwtM,iBACpC,IAAIpF,EzB5gBkB,CAClChpM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyB+gBtCqnM,GAAYO,EADEpoM,EAAKiuM,WAEnB9F,GAAoBgH,EAAqBnvM,EAAKwxK,aAAuC,QAAxBvuJ,EAAKjjB,EAAKipM,gBAA6B,IAAPhmL,OAAgB,EAASA,EAAG8pJ,OAAQq7B,EALrH,CAMhB,CAIA,OAHIx2B,GAAa/1K,KAAK21K,eAClB22B,GAAoBgH,EAAqBtzM,KAAK21K,cAE3C29B,CACX,EAIA1E,EAAe9vM,UAAUy0M,eAAiB,SAAU/8L,GAChDxW,KAAKwzM,YAAch9L,EACnBxW,KAAKk+B,KAAKg0K,0BACd,EACAtD,EAAe9vM,UAAU0yK,WAAa,SAAU9jK,GAC5C,IAAI0Z,EACJpnB,KAAK0N,QAAUvN,GAASA,GAASA,GAAS,CAAC,EAAGH,KAAK0N,SAAUA,GAAU,CAAE+/L,UAAwC,QAA5BrmL,EAAK1Z,EAAQ+/L,iBAA8B,IAAPrmL,GAAgBA,GAC7I,EACAwnL,EAAe9vM,UAAU8yM,kBAAoB,WACzC5xM,KAAKmhM,YAASnzL,EACdhO,KAAKkxK,YAASljK,EACdhO,KAAKotM,cAAWp/L,EAChBhO,KAAK0xM,gCAA6B1jM,EAClChO,KAAKwzM,iBAAcxlM,EACnBhO,KAAKirC,YAASj9B,EACdhO,KAAKwtM,eAAgB,CACzB,EAIAoB,EAAe9vM,UAAU0wM,mBAAqB,WAC1C,IAAIpoL,EjC3hBS6jB,EAAQ0hH,EAAUzyI,EiC4hB3B+9B,EAAKj4C,KAAK0N,QAASwjK,EAASj5H,EAAGi5H,OAAQL,EAAW54H,EAAG44H,SAIpD7wK,KAAKkxK,SAAYA,GAAUL,KAQ3B7wK,KAAKwzM,aAAgBxzM,KAAKywM,iBAE3BzwM,KAAKyzM,eAAiBzzM,KAAK0zM,6BACvB1zM,KAAKyzM,gBAAkBzzM,KAAKyzM,eAAeviC,SAC3ClxK,KAAKywM,ezB/jBa,CAClCltM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyBikBlC3E,KAAK2zM,qBzBhkBa,CAClCpwM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyBkkBlC43L,GAAqBv8L,KAAK2zM,qBAAsB3zM,KAAKkxK,OAAOwuB,OAAQ1/L,KAAKyzM,eAAeviC,OAAOwuB,QAC/FsM,GAAYhsM,KAAKywM,eAAgBzwM,KAAK2zM,yBAOzC3zM,KAAKywM,gBAAmBzwM,KAAKwzM,eAK7BxzM,KAAKirC,SACNjrC,KAAKirC,OzB/kBiB,CAClC1nC,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyBilBtC3E,KAAK4zM,qBzBhlBiB,CAClCrwM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,KyBslBtC3E,KAAKywM,gBACLzwM,KAAK2zM,uBAC2B,QAA9BvsL,EAAKpnB,KAAKyzM,sBAAmC,IAAPrsL,OAAgB,EAASA,EAAG6jB,SjCpkB3DA,EiCqkBOjrC,KAAKirC,OjCrkBJ0hH,EiCqkBY3sJ,KAAKywM,ejCrkBPv2L,EiCqkBuBla,KAAKyzM,eAAexoK,OjCpkBlFoxJ,GAAiBpxJ,EAAO1nC,EAAGopJ,EAASppJ,EAAG2W,EAAO3W,GAC9C84L,GAAiBpxJ,EAAOppC,EAAG8qJ,EAAS9qJ,EAAGqY,EAAOrY,IiCwkB7B7B,KAAKwzM,aACN/pF,QAAQzpH,KAAK4tM,cAEb5tM,KAAKirC,OAASjrC,KAAKmzM,eAAenzM,KAAKkxK,OAAOwuB,QAG9CsM,GAAYhsM,KAAKirC,OAAQjrC,KAAKkxK,OAAOwuB,QAEzC/B,GAAc39L,KAAKirC,OAAQjrC,KAAKwzM,cAMhCxH,GAAYhsM,KAAKirC,OAAQjrC,KAAKkxK,OAAOwuB,QAKrC1/L,KAAK6zM,iCACL7zM,KAAK6zM,gCAAiC,EACtC7zM,KAAKyzM,eAAiBzzM,KAAK0zM,6BACvB1zM,KAAKyzM,gBACLhqF,QAAQzpH,KAAKyzM,eAAe7F,gBACxBnkF,QAAQzpH,KAAK4tM,gBAChB5tM,KAAKyzM,eAAe/lM,QAAQ0jK,cAC7BpxK,KAAKyzM,eAAexoK,SACpBjrC,KAAKywM,ezBxnBa,CAClCltM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyB0nBlC3E,KAAK2zM,qBzBznBa,CAClCpwM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyB2nBlC43L,GAAqBv8L,KAAK2zM,qBAAsB3zM,KAAKirC,OAAQjrC,KAAKyzM,eAAexoK,QACjF+gK,GAAYhsM,KAAKywM,eAAgBzwM,KAAK2zM,yBAGlD,EACA/E,EAAe9vM,UAAU40M,2BAA6B,WAClD,GAAK1zM,KAAKka,SAAU67J,GAAa/1K,KAAKka,OAAOy7J,cAE7C,OAAK31K,KAAKka,OAAOu2L,gBAAkBzwM,KAAKka,OAAOs5L,cAC3CxzM,KAAKka,OAAOg3J,OACLlxK,KAAKka,OAGLla,KAAKka,OAAOw5L,4BAE3B,EACA9E,EAAe9vM,UAAU2wM,eAAiB,WACtC,IAAIroL,EACA6wB,EAAKj4C,KAAK0N,QAASwjK,EAASj5H,EAAGi5H,OAAQL,EAAW54H,EAAG44H,SAWzD,GANA7wK,KAAK6uM,gBAAkBplF,SAAgC,QAAtBriG,EAAKpnB,KAAKka,cAA2B,IAAPkN,OAAgB,EAASA,EAAGynL,kBACvF7uM,KAAKuyL,kBACLvyL,KAAK8zM,kBACJ9zM,KAAK6uM,kBACN7uM,KAAKwzM,YAAcxzM,KAAKywM,oBAAiBziM,GAExChO,KAAKkxK,SAAYA,GAAUL,GAAhC,CAEA,IAAIg8B,EAAO7sM,KAAK+zM,UAKhB/H,GAAYhsM,KAAKyyM,gBAAiBzyM,KAAKkxK,OAAOwuB,Q5B7nB1D,SAAyBrkJ,EAAKsuJ,EAAW94C,EAAUmjD,GAC/C,IAAI5sL,EAAI6wB,OACmB,IAAvB+7J,IAAiCA,GAAqB,GAC1D,IAAIC,EAAapjD,EAASzyJ,OAC1B,GAAK61M,EAAL,CAIA,IAAI9vM,EACAqS,EAFJmzL,EAAUpmM,EAAIomM,EAAU9nM,EAAI,EAG5B,IAAK,IAAI3D,EAAI,EAAGA,EAAI+1M,EAAY/1M,IAE5BsY,GADArS,EAAO0sJ,EAAS3yJ,IACH0rM,gBACuH,cAAjD,QAA7E3xJ,EAA8B,QAAxB7wB,EAAKjjB,EAAKo2F,gBAA6B,IAAPnzE,OAAgB,EAASA,EAAGkF,aAA0B,IAAP2rB,OAAgB,EAASA,EAAGhrB,WAEnH+mL,GACA7vM,EAAKuJ,QAAQ0jK,cACbjtK,EAAKg9L,QACLh9L,IAASA,EAAK+5B,MACdkgK,GAAa/iJ,EAAK,CAAE93C,GAAIY,EAAKg9L,OAAO59L,EAAG1B,GAAIsC,EAAKg9L,OAAOt/L,IAEvD2U,IAEAmzL,EAAUpmM,GAAKiT,EAAMjT,EAAE01C,MACvB0wJ,EAAU9nM,GAAK2U,EAAM3U,EAAEo3C,MAEvB0kJ,GAActiJ,EAAK7kC,IAEnBw9L,GAAsBj+B,GAAa5xK,EAAKwxK,eACxCyoB,GAAa/iJ,EAAKl3C,EAAKwxK,cAxBrB,CA2Bd,C4BkmBYu+B,CAAgBl0M,KAAKyyM,gBAAiBzyM,KAAK2pM,UAAW3pM,KAAKwvC,KAAMi6E,QAAQzpH,KAAK4tM,eAAiB5tM,OAAS6sM,GACxG,IAAI5hK,EAAS4hK,EAAK5hK,OAClB,GAAKA,EAAL,CAEKjrC,KAAK4pM,kBACN5pM,KAAK4pM,gBzB7qBmB,CACpCrmM,EAPwC,CACxC41C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,GAIbt6L,EARwC,CACxCs3C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,IyBgrBDn8L,KAAKm0M,6BzB9qBmB,CACpC5wM,EAPwC,CACxC41C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,GAIbt6L,EARwC,CACxCs3C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,KyBkrBL,IAAIiY,EAAiBp0M,KAAK2pM,UAAUpmM,EAChC8wM,EAAiBr0M,KAAK2pM,UAAU9nM,EAChCyyM,EAA0Bt0M,KAAKu0M,oBAUnCnY,GAAap8L,KAAK4pM,gBAAiB5pM,KAAKyyM,gBAAiBxnK,EAAQjrC,KAAK21K,cACtE31K,KAAKu0M,oBAAsBzG,GAAyB9tM,KAAK4pM,gBAAiB5pM,KAAK2pM,WAC3E3pM,KAAKu0M,sBAAwBD,GAC7Bt0M,KAAK2pM,UAAUpmM,IAAM6wM,GACrBp0M,KAAK2pM,UAAU9nM,IAAMwyM,IACrBr0M,KAAK0vM,cAAe,EACpB1vM,KAAK0xK,iBACL1xK,KAAK8vM,gBAAgB,mBAAoB7kK,GAxBnC,CAdA,CAwCd,EACA2jK,EAAe9vM,UAAU4uM,KAAO,WAC5B1tM,KAAK6+B,WAAY,CAErB,EACA+vK,EAAe9vM,UAAUmuM,KAAO,WAC5BjtM,KAAK6+B,WAAY,CAErB,EACA+vK,EAAe9vM,UAAU4yK,eAAiB,SAAU8iC,GAChD,IAAIptL,EAAI6wB,EAAIwD,OACM,IAAd+4J,IAAwBA,GAAY,GACM,QAA7Cv8J,GAAM7wB,EAAKpnB,KAAK0N,SAASgkK,sBAAmC,IAAPz5H,GAAyBA,EAAGh5C,KAAKmoB,GACvFotL,IAAyC,QAA1B/4J,EAAKz7C,KAAK8qM,kBAA+B,IAAPrvJ,GAAyBA,EAAGi2H,kBACzE1xK,KAAK4tM,eAAiB5tM,KAAK4tM,aAAarzG,WACxCv6F,KAAK4tM,kBAAe5/L,EAE5B,EACA4gM,EAAe9vM,UAAUmyM,mBAAqB,SAAUz6L,EAAOw6L,GAC3D,IACI5pL,EADA+U,EAAQn8B,UAEyB,IAAjCgxM,IAA2CA,GAA+B,GAC9E,IAAI5D,EAAWptM,KAAKotM,SAChBqH,GAAqC,OAAbrH,QAAkC,IAAbA,OAAsB,EAASA,EAASz3B,eAAiB,CAAC,EACvG++B,EAAcv0M,GAAS,CAAC,EAAGH,KAAK21K,cAChC69B,EzB9tBwB,CACpCjwM,EAPwC,CACxC41C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,GAIbt6L,EARwC,CACxCs3C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,IyBiuBLn8L,KAAKywM,eAAiBzwM,KAAK2zM,0BAAuB3lM,EAClDhO,KAAK6zM,gCAAkC7C,EACvC,IAAI2D,EzB5tBsB,CAClCpxM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyB8tBtCiwM,EAAuC,OAAbxH,QAAkC,IAAbA,OAAsB,EAASA,EAASE,SACvFuH,IAA4C,QAA1BztL,EAAKpnB,KAAK8qM,kBAA+B,IAAP1jL,OAAgB,EAASA,EAAG2jL,QAAQ3sM,SAAW,IAAM,EACzG02M,EAAyBrrF,QAAQmrF,IAChCC,IAC0B,IAA3B70M,KAAK0N,QAAQ+/L,YACZztM,KAAKwvC,KAAKrb,KAAK4gL,KACpB/0M,KAAK2vM,kBAAoB,EACzB3vM,KAAKg1M,eAAiB,SAAUloB,GAC5B,IAAI1lK,EACAy/I,EAAWimB,EAAS,IACxBmoB,GAAazB,EAAYjwM,EAAGiT,EAAMjT,EAAGsjK,GACrCouC,GAAazB,EAAY3xM,EAAG2U,EAAM3U,EAAGglK,GACrC1qI,EAAMo3K,eAAeC,GACjBr3K,EAAMs0K,gBACNt0K,EAAMw3K,sBACNx3K,EAAM+0I,SAC2B,QAA/B9pJ,EAAK+U,EAAMs3K,sBAAmC,IAAPrsL,OAAgB,EAASA,EAAG8pJ,UACrEqrB,GAAqBoY,EAAgBx4K,EAAM+0I,OAAOwuB,OAAQvjK,EAAMs3K,eAAeviC,OAAOwuB,QAwZ1G,SAAgB3uI,EAAQnuD,EAAMD,EAAIhD,GAC9Bu1M,GAAQnkJ,EAAOxtD,EAAGX,EAAKW,EAAGZ,EAAGY,EAAG5D,GAChCu1M,GAAQnkJ,EAAOlvD,EAAGe,EAAKf,EAAGc,EAAGd,EAAGlC,EACpC,CA1ZoBw1M,CAAOh5K,EAAMs0K,eAAgBt0K,EAAMw3K,qBAAsBgB,EAAgB9tC,IAEzE+tC,IACAz4K,EAAMkxK,gBAAkBqH,ERlvB5C,SAAmBzpK,EAAQmqK,EAAQvI,EAAMhmC,EAAUiuC,EAAwBD,GACvE,IAAIztL,EAAI6wB,EAAIwD,EAAIa,EACZw4J,GACA7pK,EAAO3a,QAAUiqJ,GAAI,EAGG,QAAvBnzJ,EAAKylL,EAAKv8K,eAA4B,IAAPlJ,EAAgBA,EAAK,EAAGukL,GAAgB9kC,IACxE57H,EAAOoqK,YAAc96B,GAA8B,QAAzBtiI,EAAKm9J,EAAO9kL,eAA4B,IAAP2nB,EAAgBA,EAAK,EAAG,EAAG4zJ,GAAiBhlC,KAElGguC,IACL5pK,EAAO3a,QAAUiqJ,GAA8B,QAAzB9+H,EAAK25J,EAAO9kL,eAA4B,IAAPmrB,EAAgBA,EAAK,EAA2B,QAAvBa,EAAKuwJ,EAAKv8K,eAA4B,IAAPgsB,EAAgBA,EAAK,EAAGuqH,IAK3I,IAAK,IAAI3oK,EAAI,EAAGA,EAAIotM,GAAYptM,IAAK,CACjC,IAAIo3M,EAAc,SAASryM,OAAO27C,GAAQ1gD,GAAI,UAC1Cq3M,EAAe9J,GAAU2J,EAAQE,GACjCE,EAAa/J,GAAUoB,EAAMyI,QACZtnM,IAAjBunM,QAA6CvnM,IAAfwnM,IAElCD,IAAiBA,EAAe,GAChCC,IAAeA,EAAa,GACE,IAAjBD,GACM,IAAfC,GACAhK,GAAK+J,KAAkB/J,GAAKgK,IAE5BvqK,EAAOqqK,GAAe5wM,KAAKC,IAAI41K,GAAIgxB,GAASgK,GAAehK,GAASiK,GAAa3uC,GAAW,IACxFkN,GAAQ7uI,KAAKswK,IAAezhC,GAAQ7uI,KAAKqwK,MACzCtqK,EAAOqqK,IAAgB,MAI3BrqK,EAAOqqK,GAAeE,EAE9B,EAIIJ,EAAO3gC,QAAUo4B,EAAKp4B,UACtBxpI,EAAOwpI,OAAS8F,GAAI66B,EAAO3gC,QAAU,EAAGo4B,EAAKp4B,QAAU,EAAG5N,GAElE,CQysBoB4uC,CAAUf,EAAaD,EAAsBt4K,EAAMw5I,aAAc9O,EAAUiuC,EAAwBD,IAEvG14K,EAAM+B,KAAKg0K,2BACX/1K,EAAMu1I,iBACNv1I,EAAMwzK,kBAAoB9oC,CAC9B,EACA7mK,KAAKg1M,eAAe,EACxB,EACApG,EAAe9vM,UAAU8zL,eAAiB,SAAUllL,GAChD,IACI0Z,EAAI6wB,EADJ9b,EAAQn8B,KAEZA,KAAK8vM,gBAAgB,kBACY,QAAhC1oL,EAAKpnB,KAAKuyL,wBAAqC,IAAPnrK,GAAyBA,EAAGd,OACjEtmB,KAAK4tM,eACyC,QAA7C31J,EAAKj4C,KAAK4tM,aAAarb,wBAAqC,IAAPt6I,GAAyBA,EAAG3xB,QAElFtmB,KAAK8zM,mBACL3nB,GAAWQ,OAAO3sL,KAAK8zM,kBACvB9zM,KAAK8zM,sBAAmB9lM,GAO5BhO,KAAK8zM,iBAAmB/nB,GAAAA,QAAY,WAChCnc,GAAsBC,wBAAyB,EAC/C1zI,EAAMo2J,iBC1vBtB,SAAiB3vL,EAAMD,EAAI2qF,QACJ,IAAfA,IAAyBA,EAAa,CAAC,GAC3C,IAAIxsF,EAAQqyK,GAAcvwK,GAAQA,EAAOsyL,GAAYtyL,GAErD,OADAgwL,GAAe,GAAI9xL,EAAO6B,EAAI2qF,GACvB,CACHhnE,KAAM,WAAc,OAAOxlB,EAAMwlB,MAAQ,EACzC2uK,YAAa,WAAc,OAAOn0L,EAAMm0L,aAAe,EAE/D,CDkvByChmB,CAAQ,EA9vB3B,IA8vB+C9uK,GAASA,GAAS,CAAC,EAAGuN,GAAU,CAAE+/K,SAAU,SAAUX,GACnG,IAAI1lK,EACJ+U,EAAM64K,eAAeloB,GACO,QAA3B1lK,EAAK1Z,EAAQ+/K,gBAA6B,IAAPrmK,GAAyBA,EAAGnoB,KAAKyO,EAASo/K,EAClF,EAAGS,WAAY,WACX,IAAInmK,EAC0B,QAA7BA,EAAK1Z,EAAQ6/K,kBAA+B,IAAPnmK,GAAyBA,EAAGnoB,KAAKyO,GACvEyuB,EAAMu5K,mBACV,KACAv5K,EAAMyxK,eACNzxK,EAAMyxK,aAAarb,iBAAmBp2J,EAAMo2J,kBAEhDp2J,EAAM23K,sBAAmB9lM,CAC7B,GACJ,EACA4gM,EAAe9vM,UAAU42M,kBAAoB,WACzC,IAAItuL,EACApnB,KAAK4tM,eACL5tM,KAAK4tM,aAAarb,sBAAmBvkL,EACrChO,KAAK4tM,aAAaT,qBAAkBn/L,GAEb,QAA1BoZ,EAAKpnB,KAAK8qM,kBAA+B,IAAP1jL,GAAyBA,EAAGumL,wBAC/D3tM,KAAK4tM,aACD5tM,KAAKuyL,iBACDvyL,KAAKqtM,qBACDr/L,EACZhO,KAAK8vM,gBAAgB,oBACzB,EACAlB,EAAe9vM,UAAUsxM,gBAAkB,WACvC,IAAIhpL,EACApnB,KAAKuyL,mBAC0B,QAA9BnrK,EAAKpnB,KAAKg1M,sBAAmC,IAAP5tL,GAAyBA,EAAGnoB,KAAKe,KA7xBlE,KA8xBNA,KAAKuyL,iBAAiBjsK,QAE1BtmB,KAAK01M,mBACT,EACA9G,EAAe9vM,UAAU62M,wBAA0B,WAC/C,IAAIvuL,EAAKpnB,KAAK+zM,UAAWH,EAAuBxsL,EAAGwsL,qBAAsB3oK,EAAS7jB,EAAG6jB,OAAQimI,EAAS9pJ,EAAG8pJ,OAAQyE,EAAevuJ,EAAGuuJ,aAC9Hi+B,GAAyB3oK,GAAWimI,IAEzC86B,GAAY4H,EAAsB3oK,GAMlCmzJ,GAAawV,EAAsBj+B,GAOnCymB,GAAap8L,KAAKm0M,6BAA8Bn0M,KAAKyyM,gBAAiBmB,EAAsBj+B,GAChG,EACAi5B,EAAe9vM,UAAUuxM,mBAAqB,SAAUx/B,EAAU1sK,GAC9D,IAAIijB,EAAI6wB,EAAIwD,EACPz7C,KAAK4vM,YAAYljK,IAAImkI,IACtB7wK,KAAK4vM,YAAY//I,IAAIghH,EAAU,IAAI87B,IAE3B3sM,KAAK4vM,YAAYrjM,IAAIskK,GAC3BtrI,IAAIphC,GACVA,EAAKymM,QAAQ,CACTt9G,WAA2D,QAA9ClmE,EAAKjjB,EAAKuJ,QAAQ2jK,8BAA2C,IAAPjqJ,OAAgB,EAASA,EAAGkmE,WAC/F0/G,sBAAiJ,QAAzHvxJ,EAAoD,QAA9CxD,EAAK9zC,EAAKuJ,QAAQ2jK,8BAA2C,IAAPp5H,OAAgB,EAASA,EAAG29J,mCAAgD,IAAPn6J,OAAgB,EAASA,EAAGx8C,KAAKg5C,EAAI9zC,IAEtM,EACAyqM,EAAe9vM,UAAUksM,OAAS,WAC9B,IAAI/1J,EAAQj1C,KAAK8qM,WACjB,OAAO71J,GAAQA,EAAM43J,OAAS7sM,IAClC,EACA4uM,EAAe9vM,UAAUi1M,QAAU,WAC/B,IAAI3sL,EAEJ,OADepnB,KAAK0N,QAAQmjK,WACkB,QAA1BzpJ,EAAKpnB,KAAK8qM,kBAA+B,IAAP1jL,OAAgB,EAASA,EAAGylL,OAAgB7sM,IACtG,EACA4uM,EAAe9vM,UAAU+2M,YAAc,WACnC,IAAIzuL,EAEJ,OADepnB,KAAK0N,QAAQmjK,SACiB,QAA1BzpJ,EAAKpnB,KAAK8qM,kBAA+B,IAAP1jL,OAAgB,EAASA,EAAGwlL,cAAW5+L,CAChG,EACA4gM,EAAe9vM,UAAUgsM,SAAW,WAChC,IAAIj6B,EAAW7wK,KAAK0N,QAAQmjK,SAC5B,GAAIA,EACA,OAAO7wK,KAAKk+B,KAAK0xK,YAAYrjM,IAAIskK,EACzC,EACA+9B,EAAe9vM,UAAU8rM,QAAU,SAAUxjL,GACzC,IAAI6wB,OAAY,IAAP7wB,EAAgB,CAAC,EAAIA,EAAI4nL,EAAa/2J,EAAG+2J,WAAY1hH,EAAar1C,EAAGq1C,WAAY0/G,EAAwB/0J,EAAG+0J,sBACjH/3J,EAAQj1C,KAAK8qM,WACb71J,GACAA,EAAM21J,QAAQ5qM,KAAMgtM,GACpBgC,IACAhvM,KAAK4pM,qBAAkB57L,EACvBhO,KAAKgvM,YAAa,GAElB1hH,GACAttF,KAAKwxK,WAAW,CAAElkF,WAAYA,GACtC,EACAshH,EAAe9vM,UAAU+rM,SAAW,WAChC,IAAI51J,EAAQj1C,KAAK8qM,WACjB,QAAI71J,GACOA,EAAM41J,SAAS7qM,KAK9B,EACA4uM,EAAe9vM,UAAU0yM,cAAgB,WACrC,IAAInkC,EAAgBrtK,KAAK0N,QAAQ2/J,cACjC,GAAKA,EAAL,CAOA,IAJA,IAAIyoC,GAAY,EAEZC,EAAc,CAAC,EAEV73M,EAAI,EAAGA,EAAIu0K,GAAcr0K,OAAQF,IAAK,CAC3C,IACIc,EAAM,SADCyzK,GAAcv0K,GAIpBmvK,EAAc63B,eAAelmM,KAGlC82M,GAAY,EAEZC,EAAY/2M,GAAOquK,EAAc63B,eAAelmM,GAChDquK,EAAc83B,eAAenmM,EAAK,GACtC,CAEA,GAAK82M,EAAL,CAMA,IAAK,IAAI92M,KAFS,OAAlBquK,QAA4C,IAAlBA,GAAoCA,EAAcS,aAE5DioC,EACZ1oC,EAAc83B,eAAenmM,EAAK+2M,EAAY/2M,IAIlDquK,EAAcqE,gBAVJ,CArBA,CAgCd,EACAk9B,EAAe9vM,UAAU46K,oBAAsB,SAAUvnB,GACrD,IAAI/qI,EAAI6wB,EAAIwD,EAAIa,EAAID,EAAIG,OACN,IAAd21G,IAAwBA,EAAY,CAAC,GAEzC,IAAIp+H,EAAS,CAAC,EACd,IAAK/zB,KAAKu6F,UAAYv6F,KAAKuuC,MACvB,OAAOxa,EACX,IAAK/zB,KAAK6+B,UACN,MAAO,CAAE9O,WAAY,UAGrBgE,EAAOhE,WAAa,GAExB,IAAI6lJ,EAA0D,QAArCxuJ,EAAKpnB,KAAK0N,QAAQ2/J,qBAAkC,IAAPjmJ,OAAgB,EAASA,EAAGunJ,WAAWiH,kBAC7G,GAAI51K,KAAKgvM,WAQL,OAPAhvM,KAAKgvM,YAAa,EAClBj7K,EAAOzD,QAAU,GACjByD,EAAOiiL,cACH37B,GAAmBloB,EAAU6jD,gBAAkB,GACnDjiL,EAAO7E,UAAY0mJ,EACbA,EAAkB51K,KAAK21K,aAAc,IACrC,OACC5hJ,EAEX,IAAI84K,EAAO7sM,KAAK+zM,UAChB,IAAK/zM,KAAK4pM,kBAAoB5pM,KAAKkxK,SAAW27B,EAAK5hK,OAAQ,CACvD,IAAIgrK,EAAc,CAAC,EAYnB,OAXIj2M,KAAK0N,QAAQmjK,WACbolC,EAAY3lL,QAA+C,QAApC2nB,EAAKj4C,KAAK21K,aAAarlJ,eAA4B,IAAP2nB,EAAgBA,EAAK,EACxFg+J,EAAYD,cACR37B,GAAmBloB,EAAU6jD,gBAAkB,IAEnDh2M,KAAK0vM,eAAiB35B,GAAa/1K,KAAK21K,gBACxCsgC,EAAY/mL,UAAY0mJ,EAClBA,EAAkB,CAAC,EAAG,IACtB,OACN51K,KAAK0vM,cAAe,GAEjBuG,CACX,CACA,IAAIC,EAAiBrJ,EAAKQ,iBAAmBR,EAAKl3B,aAClD31K,KAAK21M,0BACL5hL,EAAO7E,UAAY4+K,GAAyB9tM,KAAKm0M,6BAA8Bn0M,KAAK2pM,UAAWuM,GAC3FtgC,IACA7hJ,EAAO7E,UAAY0mJ,EAAkBsgC,EAAgBniL,EAAO7E,YAEhE,IAAIqtB,EAAKv8C,KAAK4pM,gBAAiBrmM,EAAIg5C,EAAGh5C,EAAG1B,EAAI06C,EAAG16C,EA2BhD,IAAK,IAAI7C,KA1BT+0B,EAAOlE,gBAAkB,GAAG5sB,OAAkB,IAAXM,EAAE2hJ,OAAc,MAAMjiJ,OAAkB,IAAXpB,EAAEqjJ,OAAc,OAC5E2nD,EAAKQ,gBAKLt5K,EAAOzD,QACHu8K,IAAS7sM,KACiG,QAAnGs8C,EAAuC,QAAjCb,EAAKy6J,EAAe5lL,eAA4B,IAAPmrB,EAAgBA,EAAKz7C,KAAK21K,aAAarlJ,eAA4B,IAAPgsB,EAAgBA,EAAK,EACjIt8C,KAAKmtM,gBACDntM,KAAK21K,aAAarlJ,QAClB4lL,EAAeb,YAO7BthL,EAAOzD,QACHu8K,IAAS7sM,KAC+B,QAAjCq8C,EAAK65J,EAAe5lL,eAA4B,IAAP+rB,EAAgBA,EAAK,GACzB,QAArCG,EAAK05J,EAAeb,mBAAgC,IAAP74J,EAAgBA,EAAK,EAKjEg2H,GACZ,QAA4BxkK,IAAxBkoM,EAAel3M,GAAnB,CAEA,IAAI09C,EAAK81H,GAAgBxzK,GAAMwqM,EAAU9sJ,EAAG8sJ,QAAS4B,EAAU1uJ,EAAG0uJ,QAC9D+K,EAAY3M,EAAQ0M,EAAel3M,GAAM6tM,GAC7C,GAAIzB,EAEA,IADA,IAAIgL,EAAMhL,EAAQhtM,OACTF,EAAI,EAAGA,EAAIk4M,EAAKl4M,IACrB61B,EAAOq3K,EAAQltM,IAAMi4M,OAIzBpiL,EAAO/0B,GAAOm3M,CAVN,CAwBhB,OANIn2M,KAAK0N,QAAQmjK,WACb98I,EAAOiiL,cACHnJ,IAAS7sM,KACHq6K,GAAmBloB,EAAU6jD,gBAAkB,GAC/C,QAEPjiL,CACX,EACA66K,EAAe9vM,UAAUkzM,cAAgB,WACrChyM,KAAKktM,WAAaltM,KAAKotM,cAAWp/L,CACtC,EAEA4gM,EAAe9vM,UAAUu3M,UAAY,WACjCr2M,KAAKk+B,KAAKqxK,MAAMljM,SAAQ,SAAUlI,GAAQ,IAAIijB,EAAI,OAAwC,QAAhCA,EAAKjjB,EAAKouL,wBAAqC,IAAPnrK,OAAgB,EAASA,EAAGd,MAAQ,IACtItmB,KAAKk+B,KAAKqxK,MAAMljM,QAAQulM,IACxB5xM,KAAKk+B,KAAK0xK,YAAY/b,OAC1B,EACO+a,CACX,CAz/BO,EA0/BX,CACA,SAASvM,GAAal+L,GAClBA,EAAKk+L,cACT,CACA,SAAS0P,GAAmB5tM,GACxB,IAAIijB,EAAI6wB,EAAIwD,EAAIa,EACZ8wJ,EAA8F,QAAlFn1J,EAAgC,QAA1B7wB,EAAKjjB,EAAK+oM,kBAA+B,IAAP9lL,OAAgB,EAASA,EAAGgmL,gBAA6B,IAAPn1J,EAAgBA,EAAK9zC,EAAKipM,SACpI,GAAIjpM,EAAK6mM,UACL7mM,EAAK+sK,QACLk8B,GACAjpM,EAAK6rM,aAAa,aAAc,CAChC,IAAI3zJ,EAAKl4C,EAAK+sK,OAAQolC,EAAWj6J,EAAGqjJ,OAAQ6W,EAAiBl6J,EAAG81J,SAG7B,SAA/BhuM,EAAKuJ,QAAQikK,cACburB,IAAS,SAAUnB,GACf,IAAIya,EAAepJ,EAASE,SACtBF,EAAS+E,SAASpW,GAClBqR,EAASl8B,OAAO6qB,GAClB39L,EAAS09L,GAAW0a,GACxBA,EAAap/L,IAAMk/L,EAASva,GAAM3kL,IAClCo/L,EAAa7xM,IAAM6xM,EAAap/L,IAAMhZ,CAC1C,IAEoC,aAA/B+F,EAAKuJ,QAAQikK,eAClBurB,IAAS,SAAUnB,GACf,IAAIya,EAAepJ,EAASE,SACtBF,EAAS+E,SAASpW,GAClBqR,EAASl8B,OAAO6qB,GAClB39L,EAAS09L,GAAWwa,EAASva,IACjCya,EAAa7xM,IAAM6xM,EAAap/L,IAAMhZ,CAC1C,IAEJ,IAAIq4M,EzBnjC4B,CACpClzM,EAPwC,CACxC41C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,GAIbt6L,EARwC,CACxCs3C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,IyBsjCTC,GAAaqa,EAAaH,EAAUlJ,EAASl8B,QAC7C,IAAIwlC,EzBrjC4B,CACpCnzM,EAPwC,CACxC41C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,GAIbt6L,EARwC,CACxCs3C,UAAW,EACXF,MAAO,EACPisG,OAAQ,EACRi3C,YAAa,IyBwjCLiR,EAASE,SACTlR,GAAasa,EAAavyM,EAAKgvM,eAAeoD,GAAgB,GAAOnJ,EAAS+E,UAG9E/V,GAAasa,EAAaJ,EAAUlJ,EAASl8B,QAEjD,IAAIyxB,GAAoB8J,GAAYgK,GAChCnG,GAA2B,EAC/B,IAAKnsM,EAAK+oM,aACN/oM,EAAKsvM,eAAiBtvM,EAAKuvM,6BAKvBvvM,EAAKsvM,iBAAmBtvM,EAAKsvM,eAAevG,YAAY,CACxD,IAAI1wJ,EAAKr4C,EAAKsvM,eAAgBkD,EAAiBn6J,EAAG4wJ,SAAUwJ,EAAep6J,EAAG00H,OAC9E,GAAIylC,GAAkBC,EAAc,CAChC,IAAIC,EzBlkCc,CAClCtzM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyBokClC43L,GAAqBsa,EAAkBzJ,EAASl8B,OAAQylC,EAAezlC,QACvE,IAAIyjC,EzBpkCc,CAClCpxM,EAFmC,CAAE6T,IAAK,EAAGzS,IAAK,GAGlD9C,EAHmC,CAAEuV,IAAK,EAAGzS,IAAK,IyBskClC43L,GAAqBoY,EAAgB2B,EAAUM,EAAalX,QACvDgN,GAAUmK,EAAkBlC,KAC7BrE,GAA2B,EAEnC,CACJ,CAEJnsM,EAAK2rM,gBAAgB,YAAa,CAC9B5+B,OAAQolC,EACRlJ,SAAUA,EACV52L,MAAOkgM,EACPD,YAAaA,EACb9T,iBAAkBA,EAClB2N,yBAA0BA,GAElC,MACSnsM,EAAK6mM,WACoC,QAA7C1uJ,GAAMb,EAAKt3C,EAAKuJ,SAAS+zK,sBAAmC,IAAPnlI,GAAyBA,EAAGr9C,KAAKw8C,IAO3Ft3C,EAAKuJ,QAAQ4/E,gBAAat/E,CAC9B,CACA,SAASgkM,GAAc7tM,GACnBA,EAAK6tM,eACT,CACA,SAASJ,GAAkBztM,GACvBA,EAAKytM,mBACT,CACA,SAASE,GAAoB3tM,GACzB,IAAIkpK,EAAgBlpK,EAAKuJ,QAAQ2/J,eACX,OAAlBA,QAA4C,IAAlBA,OAA2B,EAASA,EAAcsB,WAAWmoC,wBACvFzpC,EAAc0pC,4BAElB5yM,EAAKukM,gBACT,CACA,SAAS0H,GAAgBjsM,GACrBA,EAAKisM,kBACLjsM,EAAKqvM,YAAcrvM,EAAKssM,eAAiBtsM,EAAK8mC,YAASj9B,CAC3D,CACA,SAASwhM,GAAmBrrM,GACxBA,EAAKqrM,oBACT,CACA,SAASC,GAAetrM,GACpBA,EAAKsrM,gBACT,CACA,SAAS+B,GAAcrtM,GACnBA,EAAKqtM,eACT,CACA,SAASS,GAAoBh9J,GACzBA,EAAM44J,oBACV,CACA,SAASoH,GAAalkJ,EAAQv6C,EAAO7W,GACjCoxD,EAAO5X,UAAYohI,GAAI/jK,EAAM2iC,UAAW,EAAGx5C,GAC3CoxD,EAAO9X,MAAQshI,GAAI/jK,EAAMyiC,MAAO,EAAGt5C,GACnCoxD,EAAOm0F,OAAS1uI,EAAM0uI,OACtBn0F,EAAOorI,YAAc3lL,EAAM2lL,WAC/B,CACA,SAAS+Y,GAAQnkJ,EAAQnuD,EAAMD,EAAIhD,GAC/BoxD,EAAO35C,IAAMmjK,GAAI33K,EAAKwU,IAAKzU,EAAGyU,IAAKzX,GACnCoxD,EAAOpsD,IAAM41K,GAAI33K,EAAK+B,IAAKhC,EAAGgC,IAAKhF,EACvC,CAKA,SAASo1M,GAAoB5wM,GACzB,OAAQA,EAAKkpM,sBAAwDr/L,IAArC7J,EAAKkpM,gBAAgBgI,WACzD,CACA,IAAI1E,GAA0B,CAC1Bj/K,SAAU,IACVg2J,KAAM,CAAC,GAAK,EAAG,GAAK,IAExB,SAASmqB,GAAe1tM,EAAMy8C,GAM1B,IADA,IAAIo2J,EAAa7yM,EAAK+5B,KACbhgC,EAAIiG,EAAKqrC,KAAKpxC,OAAS,EAAGF,GAAK,EAAGA,IACvC,GAAIurH,QAAQtlH,EAAKqrC,KAAKtxC,GAAGq8F,UAAW,CAChCy8G,EAAa7yM,EAAKqrC,KAAKtxC,GACvB,KACJ,CAEJ,IACIu1B,GADgBujL,GAAcA,IAAe7yM,EAAK+5B,KAAO84K,EAAWz8G,SAAWh2F,UACvD0yM,cAAc,wBAAyBh0M,OAAO29C,EAAI,OAC1EntB,GACAtvB,EAAK4tK,MAAMt+I,GAAS,EAC5B,CACA,SAASyjL,GAAUnb,GACfA,EAAK3kL,IAAM1S,KAAKqX,MAAMggL,EAAK3kL,KAC3B2kL,EAAKp3L,IAAMD,KAAKqX,MAAMggL,EAAKp3L,IAC/B,CACA,SAAS4tM,GAASl3J,GACd67J,GAAU77J,EAAI93C,GACd2zM,GAAU77J,EAAIx5C,EAClB,CEjrCA,IAAIs1M,GAAyB5I,GAAqB,CAC9CC,qBAAsB,SAAU5oG,EAAK+tF,GAAU,OAAO/X,GAAYh2E,EAAK,SAAU+tF,EAAS,EAC1F+a,cAAe,WAAc,MAAQ,CACjCnrM,EAAGgB,SAASC,gBAAgBykC,YAAc1kC,SAAS5C,KAAKsnC,WACxDpnC,EAAG0C,SAASC,gBAAgBwkC,WAAazkC,SAAS5C,KAAKqnC,UACvD,EACJ2lK,kBAAmB,WAAc,OAAO,CAAM,ICN9C1N,GAAqB,CACrBn0L,aAASkB,GAETopM,GAAqB7I,GAAqB,CAC1CG,cAAe,SAAUn0G,GAAY,MAAQ,CACzCh3F,EAAGg3F,EAAStxD,WACZpnC,EAAG04F,EAASvxD,UACZ,EACJylK,cAAe,WACX,IAAKxN,GAAmBn0L,QAAS,CAC7B,IAAIuqM,EAAe,IAAIF,GAAuB,EAAG,CAAC,GAClDE,EAAatlC,MAAM/9I,QACnBqjL,EAAa7lC,WAAW,CAAEJ,cAAc,IACxC6vB,GAAmBn0L,QAAUuqM,CACjC,CACA,OAAOpW,GAAmBn0L,OAC9B,EACA47L,eAAgB,SAAUnuG,EAAUz5F,GAChCy5F,EAASjuE,MAAM4C,UAAsB,OAAVpuB,QAA4B,IAAVA,EAAmBA,EAAQ,MAC5E,EACA6tM,kBAAmB,SAAUp0G,GACzB,OAAOkvB,QAAuD,UAA/Cz1F,OAAOC,iBAAiBsmE,GAAUrwE,SACrD,ICdAotL,GAAgBn3M,GAASA,GAASA,GAASA,GAAS,CAAC,EAAGi2L,IAAa/V,IAAoB5U,IAAO4/B,IAOhGkM,GAAuBtlC,IAAkB,SAAUluE,EAAW70C,GAC9D,OCbJ,SAA+B60C,EAAW38E,EAAIkpJ,EAAmBnD,EAAqBoD,GAClF,IAAIt4H,EAAK7wB,EAAG8xJ,mBAAoBA,OAA4B,IAAPjhI,GAAwBA,EACzE4pB,EAAa0wG,GAAexuE,GAC1B03E,GACAE,GACN,OAAOx7K,GAASA,GAAS,CAAC,EAAG0hE,GAAa,CAAEyuG,kBAAmBA,EAAmBE,UAAWyI,GAAgBC,GAAqB/L,oBAAqBA,EAAqBoD,0BAA2BA,EAA2BxsE,UAAWA,GACjP,CDOWyzG,CAAsBzzG,EAAW70C,EAAQooJ,GAAelO,GAAwBgO,GAC3F,IEdA,IAAMK,GAAS,CACdC,OAAQ,CACPn0M,EAAG,OACH1B,EAAG,SACHyuB,QAAS,GAEV2yH,QAAS,CACR3yH,QAAS,EACTzuB,EAAG,OACH0B,EAAG,OACH+pF,WAAY,CACX57D,SAAU,GACV1kB,KAAM,SACN01K,QAAS,GACTD,UAAW,MAGbjX,KAAM,CACL3pK,EAAG,QACHyuB,QAAS,IA2BX,GAvBc,SAAH,GAA+H,IAAzH6wD,EAAQ,EAARA,SAAUtiD,EAAS,EAATA,UAAWumK,EAAa,EAAbA,cAAc,EAAD,EAAEuS,eAAAA,OAAc,MAAG,UAAS,EAAEz7C,EAAc,EAAdA,eAAgB07C,EAAQ,EAARA,SAAS,EAAD,EAAEC,gBAAAA,OAAe,OAAQ,EACjI,OAAIh5K,GAEF,gBAAKiC,UAAS,gBAAWo7H,GAAkB,IAAK,UAC/C,UAACq7C,GAAOO,IAAG,CAACh3K,UAAU,iBAAiB2tI,SAAUgpC,GAAQr6F,QAAQ,SAAS6xD,QAAQ,UAAUzD,KAAK,OAAM,WACpGqsC,IACD,gBAAK/2K,UAAU,mBAAkB,UAChC,SAAC,GAAI,CAACq3H,KAAK,YAAY7mD,QAAS8zF,EAAepqL,MAAO28L,MAGvDC,GAAgC,oBAAbA,IACnB,gBAAK92K,UAAU,mBAAkB,UAChC,SAAC,GAAI,CAACq3H,KAAK,YAAY7mD,QAASsmG,EAAU58L,MAAO28L,EAAgBxuL,KAAM,OAGxEg4D,OAKE,IACR,EC5CM42H,GAAuB,CAC5B36F,QAAS,CACR9sF,QAAS,EACTzuB,EAAG,GACHo3C,MAAO,GACPq0C,WAAY,CAAE57D,SAAU,KAEzBu9I,QAAS,CACR3+I,QAAS,EACTzuB,EAAG,EACHo3C,MAAO,GAERuyH,KAAM,CACLl7I,QAAS,EACT2oB,MAAO,GACPq0C,WAAY,CAAEo6F,KAAM,UAAWh2J,SAAU,MAE1Cg6I,MAAO,CAAEzyH,MAAO,KAAMq0C,WAAY,CAAE57D,SAAU,MAyB/C,GAtBqB,SAAH,GAAkH,IAA5GyvD,EAAQ,EAARA,SAAUtiD,EAAS,EAATA,UAAWumK,EAAa,EAAbA,cAAc,EAAD,EAAEuS,eAAAA,OAAc,MAAG,UAAS,EAAEz7C,EAAc,EAAdA,eAAe,EAAD,EAAEzuH,OAAAA,OAAM,MAAG,YAAW,EAC3H,OAAI5O,GAEF,gBAAKiC,UAAS,uBAAkBo7H,GAAkB,GAAE,YAAIzuH,GAAS,UAChE,UAAC8pK,GAAOO,IAAG,CACVh3K,UAAU,wBACV2tI,SAAUspC,GACV7oC,WAAW,QACX9xD,QAAQ,UACR6xD,QAAQ,UACRzD,KAAK,OAAO,WAEZ,gBAAK1qI,UAAU,0BAAyB,UACvC,SAAC,GAAI,CAACq3H,KAAK,YAAY7mD,QAAS8zF,EAAepqL,MAAO28L,MAEtDx2H,OAKE,IACR,EC7Ce,SAAS62H,GAAgB,GAAoB,IAAlBC,EAAa,EAAbA,cACzC,OACC,eAAGn3K,UAAU,kBAAiB,WAC7B,gBAAKA,UAAU,2BACf,kBAAM,KAAC,kBAAM,2DAEb,kBAAM,KAAC,kBAAM,uFAEb,cAAGkL,KAAMisK,EAAe7tC,UAAQ,EAACtpI,UAAU,wBAAuB,SAAC,WAKtE,CCKA,IAsRA,GAtRe,WAAO,IAAD,IACpB,GAA+E2qE,EAAAA,EAAAA,YAAW22C,GAAlFtS,EAAO,EAAPA,QAAS6S,EAAe,EAAfA,gBAAiBU,EAAG,EAAHA,IAAKF,EAAe,EAAfA,gBAAiBC,EAAkB,EAAlBA,mBAExD,GAA0Cn3C,EAAAA,EAAAA,eAASj+F,GAAU,eAAtD+hI,EAAa,KAAEmoE,EAAgB,KACtC,GAA4CjsG,EAAAA,EAAAA,eAASj+F,GAAU,eAAxDmqM,EAAc,KAAEC,EAAiB,KAExC,GAAwCnsG,EAAAA,EAAAA,eAASj+F,GAAU,eAApDqqM,EAAY,KAAEC,EAAe,KACpC,EAAiDv6C,IAAU,GAAM,eAA1Dw6C,EAAe,KAAEC,EAAqB,KAE7C,GAA8BvsG,EAAAA,EAAAA,eAASj+F,GAAU,eAA1CyqM,EAAO,KAAEC,EAAU,KAC1B,EAAiD36C,IAAU,GAAM,eAA1D46C,EAAe,KAAEC,EAAqB,KAC7C,EAAqD76C,IAAU,GAAM,eAA9D86C,EAAiB,KAAEC,EAAuB,KAE3Cj1C,EAAazG,KACX9qB,EAAaua,KAAbva,SACF6c,EAAW3C,KAIXusD,GAAiBjtG,EAAAA,EAAAA,UAAQ,WAAO,IAAD,EAC9BktG,EAAoC,OAAbjpE,QAAa,IAAbA,GAA6B,QAAhB,EAAbA,EAAekpE,sBAAc,WAAhB,EAAb,EAA+Bp+L,QAAO,SAAAysJ,GAAO,OAAKA,EAAQQ,OAAO,IACxFoxC,EAA6B,OAApBF,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBniL,OAAM,SAAAywI,GAAO,OAAIA,EAAQ6xC,qBAAuB,CAAC,IACtF,OAAO1vF,QAAQyvF,EAChB,GAAG,CAACnpE,IAEEqpE,GAA4BttG,EAAAA,EAAAA,UAAQ,WACzC,OACc,OAAbikC,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaC,WAChC,OAAb5M,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaG,QAChC,OAAb9M,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaI,gBAChC,OAAb/M,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaK,MAChC,OAAbhN,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaM,KAE/C,GAAG,CAACjN,IAGEspE,GAAuCvtG,EAAAA,EAAAA,UAAQ,WACpD,QACe,OAAbikC,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaG,QAAsB,OAAb9M,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaI,iBACvF,OAAb/M,QAAa,IAAbA,OAAa,EAAbA,EAAeupE,iBAAkB,GAEnC,GAAG,CAACvpE,IAEEwpE,GAAgBztG,EAAAA,EAAAA,UAAQ,WAC7B,OAAoB,OAAbikC,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaG,QAAsB,OAAb9M,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaI,aAC3G,GAAG,CAAC/M,IAEEypE,GAAc1tG,EAAAA,EAAAA,UAAQ,WAC3B,OAAoB,OAAbikC,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaK,GACrD,GAAG,CAAChN,IAEE0pE,GAAgB3tG,EAAAA,EAAAA,UAAQ,WAC7B,OAAoB,OAAbikC,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,gBAAiB7f,EAAaM,KACrD,GAAG,CAACjN,IAEE2pE,IAAY5tG,EAAAA,EAAAA,UAAQ,WAAO,IAAD,EAC/B,OAAoB,OAAbikC,QAAa,IAAbA,GAA6B,QAAhB,EAAbA,EAAekpE,sBAAc,WAAhB,EAAb,EAA+Bl1M,MAAK,SAAA41M,GAAI,OAAIA,EAAKC,uBAAyB7pE,EAAckpE,eAAe76M,MAAM,GACrH,GAAG,CAAC2xI,KA8CJrkC,EAAAA,EAAAA,YAAU,WAAO,IAAD,EACT4wD,EAAgB,OAAPxsB,QAAO,IAAPA,GAAgB,QAAT,EAAPA,EAASA,eAAO,WAAT,EAAP,EAAkB/rI,MAAK,SAAA81M,GAAI,OAAIA,EAAKvnE,UAAYA,CAAQ,IAClEgqB,IAGHA,EAAOC,eAAiB7f,EAAaG,OACrCyf,EAAOC,eAAiB7f,EAAaI,eACrCwf,EAAOC,eAAiB7f,EAAaK,KACrCuf,EAAOC,eAAiB7f,EAAaM,OACH,QAAnCsf,EAAOw9C,yBAEPC,KAED7B,EAAiB57C,GACjB3Z,EAAgB,CAAE31I,KAAMoiI,EAAoC9rC,QAASg5D,IACtE,GAAG,CAAQ,OAAPxsB,QAAO,IAAPA,OAAO,EAAPA,EAASA,WAGbpkC,EAAAA,EAAAA,YAAU,WACT,OAAO,WACN0sG,IACAM,GACD,CACD,GAAG,IAEH,IAAMsB,GAAkB,yCAAG,gGACrB1nE,EAAS,CAAD,oDACTmmE,IAAWN,EAAc,gBACJ,OAAxBS,IAAwB,0CAIFv1D,EAAIvQ,eAAeR,GAAU,KAAD,EAArC,OAAR2nE,EAAQ,iBACS52D,EAAItQ,kBAAkBT,GAAU,KAAD,GAAxC,GAAR4nE,EAAQ,OACTD,GAAaC,EAAQ,oDAEpBj6C,EAAS,IAAIryH,YACZusK,UAAY,WAClB,IAAMC,EAAan6C,EAAO1+J,OAC1B62M,EAAkBgC,EACnB,EAEAn6C,EAAOnyH,cAAcosK,GACrBxB,EAAWuB,GACXrB,IAAwB,4CACxB,kBApBuB,mCAqClByB,GAAiB,SAAA3vL,GACjBA,IACL4tL,EAAgB5tL,GAChB8tL,IACD,EAsBMuB,GAAwB,yCAAG,mGAC1B12D,EAAItP,wBAAwBzB,GAAU,KAAD,sCAC3C,kBAF6B,mCAiBxBgoE,GAA0B,SAAH,GAAuB,IAAjB5yC,EAAS,EAATA,UAElC,QAAK33B,EAAcwsB,eAAiB7f,EAAaG,OAAS9M,EAAcwsB,eAAiB7f,EAAaI,eAAmB4qB,EAG1H,EAGA,OACC,iBAAK5mI,UAAU,SAAQ,WACtB,SAAC,GAAS,UACRivG,IACA,iCACC,SAAC,GAAM,CAAC2rB,OAAK,EAAC1uJ,KAAK,UAAU2uJ,UAAU,YAAYn2C,MAAM,qBAAqBlU,QAPpD,WAAH,OAAS69C,EAAS5P,EAAOM,cAAe,KAQ/D,gBAAK/+G,UAAU,uBAAsB,SAA2B,QAA3B,EAAe,OAAbivG,QAAa,IAAbA,OAAa,EAAbA,EAAewqE,kBAAU,QAAI,KACnExqE,EAAcwsB,eAAiB7f,EAAaG,QAC5C,gBAAK/7G,UAAU,2BAA0B,SAAC,kGAI3C,iBAAKA,UAAU,eAAc,WAC5B,gBAAKA,UAAU,kBAAiB,SACjB,OAAbivG,QAAa,IAAbA,GAA6B,QAAhB,EAAbA,EAAekpE,sBAAc,WAAhB,EAAb,EAA+BpxJ,MAAK,SAACl7C,EAAGnN,GAAC,OAAKmN,EAAEitM,qBAAuBp6M,EAAEo6M,oBAAoB,IAAE/rM,KA3KhF,SAAH,GAab,IAZN2sM,EAAe,EAAfA,gBACAC,EAAW,EAAXA,YACA9vC,EAAkB,EAAlBA,mBACAD,EAAU,EAAVA,WACAI,EAAO,EAAPA,QACAC,EAAc,EAAdA,eACAouC,EAAmB,EAAnBA,oBACAuB,EAAa,EAAbA,cACA5yC,EAAO,EAAPA,QACA6yC,EAAa,EAAbA,cACAjzC,EAAS,EAATA,UAAU,EAAD,EACTkzC,uBAAAA,OAAsB,OAAO,EAEvB55H,EAAWs5H,GAAwB,CAAE5yC,UAAAA,IAIrCmzC,EACJtB,GAAkBC,GAAgBC,GAA6CD,IAAuBoB,EAApD9yC,IAAYixC,EAEhE,OACC,SAAC,GAAO,CACPzmE,SAAUA,EAEV9sB,MAAOi1F,EACPnzC,QAAS,CAAEoD,WAAAA,EAAYC,mBAAAA,GACvBpD,KAAM,CAAEuD,QAAAA,EAASC,eAAAA,EAAgB/vD,WAAY6/F,GAC7CtoE,UAAWioE,EACX3zC,SAAUsyC,EACV3xC,UAAWmzC,EACXlzC,eAAgBizC,EAChB15H,SAAUA,EACV0mF,UAAWA,EACXC,QAAS4xC,EACT3xC,MAAO4xC,EACP3xC,QAAS4xC,EACT3xC,QAASA,EACTC,mBAAoB+wC,EACpB9wC,YAAaqyC,IAfRG,EAkBR,OAmIM,gBAAK15K,UAAU,mBAAkB,UAC9Bs4K,GAA6BC,KAC9B,iBAAKv4K,UAAU,cAAa,WAC3B,SAAC,GAAI,CAACq3H,KAAK,aAAahvI,KAAM06I,EAAWzgK,MA1N9B6tI,OA0NoD,GAAK,MACpE,SAAC,GAAmB,CACnB41B,UAAuB,OAAb92B,QAAa,IAAbA,OAAa,EAAbA,EAAeupE,iBAAkB,EAC3ChoG,QAAS0oG,GACTc,WAAyB,OAAb/qE,QAAa,IAAbA,OAAa,EAAbA,EAAewsB,6BAenC,UAAC,GAAK,CAAC19H,UAAW85K,EAAiBvT,cAAewT,EAAsB,WACvE,gBAAK93K,UAAU,uBAAuBjJ,IAAG,UAAKsgL,MAC9C,SAAC,GAAM,CAAC3yF,MAAM,eAAelU,QArFL,WAC1B,GAAKmnG,EAAL,CAEA,IAAM8B,GAA0B,OAAbxqE,QAAa,IAAbA,OAAa,EAAbA,EAAewqE,aAAc,GAC1CzuK,EAAOvnC,SAASwxB,cAAc,KACpC+V,EAAKE,KAAOq5G,IAAIuZ,gBAAgB65C,GAChC3sK,EAAKs+H,SAAQ,UAAMmwC,EAAU,gBAC7BzuK,EAAK+yH,QACLxxH,YAAW,kBAAMg4G,IAAI01D,gBAAgBjvK,EAAKE,KAAK,GAAE,IAP7B,CAQrB,EA4E6D4vH,QAAQ,eAAeF,OAAK,QAEvF,UAAC,GAAK,CAAC78H,UAAWg6K,EAAmBzT,cAAe0T,EAAwB,WAC3E,gBAAKh4K,UAAU,YAAYogD,wBAAyB,CAAEqb,OAAiB,OAATm9G,SAAS,IAATA,QAAS,EAATA,GAAWsB,oBACzE,SAAC,GAAM,CAACx1F,MAAM,iBAAiBlU,QA7GC,WAClC,GAAKooG,GACL,IACC,IAAMlqK,EAAOy5G,GAAaywD,GAAU5uC,QAAS,CAC5Cx4B,SAAUonE,GAAUpnE,SACpBC,UAAWmnE,GAAUc,kBAEtBrrD,EAAS3/G,EAGV,CAFE,MAAOxI,GACRia,QAAQ3b,KAAK,mCACd,CACD,QAoGE,SAAC,GAAK,CAACzG,UAAW05K,EAAiBnT,cAAeoT,EAAuBt8C,eAAe,YAAW,UAClG,mBAAQj0J,KAAMowM,EAAe,aAAcrrM,KAAK,kBAAkB5J,MAAM,OAAOC,OAAO,OAAM,UAC3F,SAAC20M,GAAe,CAACC,cAAeI,SAGlC,SAAC,GAAY,CACZx5K,UAAWskH,EAAgBF,QAC3Bx1G,OAAQ01G,EAAgBD,OAAS,SAAW,YAC5CkiD,cAAe,kBAAMhiD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,EAAC,UAExF,yBAAMC,EAAgBz6F,cAI1B,ECpNA,GA3EmB,SAAH,GAUT,IATNuyJ,EAAc,EAAdA,eACAC,EAAmB,EAAnBA,oBACAC,EAAa,EAAbA,cACAvB,EAAoB,EAApBA,qBAAqB,EAAD,EACpBwB,oBAAAA,OAAmB,OAAQ,MAC3BC,uBAAAA,OAAsB,OAAQ,MAC9BC,iBAAAA,OAAgB,MAAG,eAAc,MACjCC,iBAAAA,OAAgB,MAAG,mBAAkB,EACrCp6H,EAAQ,EAARA,SAIM0iF,EAAazG,KAEbo+C,GAAoB1vG,EAAAA,EAAAA,UAAQ,WACjC,OAAKuvG,GACGA,EADqD,IAAzBzB,CAErC,GAAG,CAACyB,EAAwBzB,IA+B5B,OACC,iBAAK94K,UAAU,aAAY,WAC1B,SAAC,GAAM,CACN46H,OAAK,EACL1uJ,KAAK,UACL2uJ,UAAU,aACVn2C,MAAOq+C,EAAWzgK,MA5CD6tI,MA4CuBsqE,EAAmB,GAC3DjqG,QAAS,kBAAM4pG,EAAoBD,EAAiB,EAAE,EACtDj6H,SAAUw6H,EACVt/C,eAAe,sBAGf/6E,GAAYA,GACb,SAAC,GAAM,CACNu6E,OAAK,EACL1uJ,KAAK,UACLw4G,MAAOq+C,EAAWzgK,MAtDD6tI,MAsDuBqqE,EAAmB,GAC3D1/C,QAAQ,aACRtqD,QAAS,kBAAM4pG,EAAoBD,EAAiB,EAAE,EACtDj6H,SAAU44H,IAAyBuB,GAAiBC,EACpDl/C,eAAc,0BAAqBk/C,EAAsB,uBAAyB,QAItF,EC+FA,OAlKA,WACC,MAAgCvuD,KAAxBta,EAAS,EAATA,UAAWD,EAAQ,EAARA,SACb6c,EAAW3C,KAEjB,EAAgDnK,KAAxCvS,EAAO,EAAPA,QAASuT,EAAG,EAAHA,IAAK7M,EAAI,EAAJA,KAAMmM,EAAe,EAAfA,gBAC5B,GAA4C12C,EAAAA,EAAAA,eAASj+F,GAAU,eAAxDitM,EAAc,KAAEQ,EAAiB,KACxC,GAAsCxvG,EAAAA,EAAAA,eAASj+F,GAAU,eAAlD0tM,EAAW,KAAEC,EAAc,KAClC,GAA4C1vG,EAAAA,EAAAA,YAAU,eAA/C2vG,EAAc,KAAEC,EAAiB,KACxC,GAAkC5vG,EAAAA,EAAAA,WAAS,GAAM,eAA1CptE,EAAS,KAAEi9K,EAAY,KAExBC,GAAgBjwG,EAAAA,EAAAA,UAAQ,WAAO,IAAD,EACnC,GAAY,OAAPgkC,QAAO,IAAPA,IAAAA,EAASA,QAAS,OAAO,EAC9B,IAAMC,EAAuB,OAAPD,QAAO,IAAPA,OAAO,EAAPA,EAASA,QAAQ/rI,MAAK,SAAAu4J,GAAM,OAAIA,EAAOhqB,WAAar/H,SAASq/H,EAAS,IACtF0mE,EAAoC,OAAbjpE,QAAa,IAAbA,GAA6B,QAAhB,EAAbA,EAAekpE,sBAAc,WAAhB,EAAb,EAA+Bp+L,QAAO,SAAAysJ,GAAO,OAAKA,EAAQQ,OAAO,IACxFoxC,EAA6B,OAApBF,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBniL,OAAM,SAAAywI,GAAO,OAAIA,EAAQ6xC,qBAAuB,CAAC,IACtF,OAAO1vF,QAAQyvF,EAChB,GAAG,CAACppE,IAEEksE,GAA0BlwG,EAAAA,EAAAA,UAAQ,WACvC,QAAKmvG,GACExxF,QAAsB,OAAdwxF,QAAc,IAAdA,OAAc,EAAdA,EAAgBnzC,QAChC,GAAG,CAACmzC,IAEEgB,EAAuB,SAAAr7J,GAC5B,IACC,IAAM0mH,EAAUx3B,EAAQC,cAAckpE,eAAel1M,MAAK,SAAA41M,GAAI,OAAIA,EAAKa,kBAAoB55J,CAAE,IAE7F+6J,EAAer0C,GAGX2zC,EAAe9B,qBAAuB,EACzC+C,EAAsB50C,GAChBw0C,GAAa,EACJ,CAAf,MAAO90K,GAAQ,CAClB,EAGMk1K,EAAwB,SAAAC,GAC7B,IAAMC,EAA6B,OAAhBD,QAAgB,IAAhBA,GAAAA,EAAkB3B,gBAAkB2B,EAAiB3B,gBAAkBkB,EAAYlB,gBAEhGhrK,EAAOy5G,GAAa,IAAD,OAAK1J,EAAOO,OAAM,sBAAcP,EAAOS,QAAO,eAAe,CACrF1N,SAAAA,EACAC,UAAW6pE,IAEZjtD,EAAS3/G,GACTssK,GAAa,GACb9nL,OAAOiR,SAAS,CAAE9hC,IAAK,EAAG0mK,SAAU,UACrC,EAGMwyC,EAAkB,WACvB,IAAM7sK,EAAOy5G,GAAagyD,EAAenwC,QAAS,CACjDx4B,SAAU2oE,EAAe3oE,SACzBC,UAAAA,IAED4c,EAAS3/G,GACTssK,GAAa,GACb9nL,OAAOiR,SAAS,CAAE9hC,IAAK,EAAG0mK,SAAU,UACrC,GAEAn+D,EAAAA,EAAAA,YAAU,WACT,IAAI47D,EACJ,IACC,GAAIs0C,IAAmBrpE,EAAW,OAElC,KADA+0B,EAAUx3B,EAAQC,cAAckpE,eAAel1M,MAAK,SAAA41M,GAAI,OAAIA,EAAKa,iBAAmBjoE,CAAS,KAC/E,OACdspE,EAAkBtpE,GAClBkpE,EAAkBn0C,EAGnB,CAFE,MAAOtgI,GACRia,QAAQ3b,KAAK0B,EAAM0hB,QACpB,CACD,GAAG,CAAC6pF,KAGJ7mC,EAAAA,EAAAA,YAAU,WAC2B,aAenC,OAfmC,0BAApC,6FAEwB,GADfukC,EAAWuG,EAAXvG,OACAuqE,EAAoBS,EAApBT,gBAEHvqE,GAAWuqE,EAAe,gBAC0C,OAAxEv5J,QAAQ3b,KAAK,wCAA0Ck1K,GAAiB,0CAGjDn3D,EAAIhR,oBAAoBvC,EAAQC,cAAcuC,SAAUkoE,GAAiB,KAAD,EAAjF,UACA,CAAD,mEAEYn3D,EAAIjR,iBAAiB,KAAD,IAC/B,QADTkqE,EAAW,cACF,IAAXA,OAAW,EAAXA,EAAal+M,QAAS,GACzBukJ,EAAgB,CAAE31I,KAAMoiI,EAA6B9rC,QAASg5G,IAC9D,6CACD,sBAE2C,QAA1B,OAAdrB,QAAc,IAAdA,OAAc,EAAdA,EAAgB9B,sBAlBJ,WACoB,wBAiBcoD,EACnD,GAAG,CAACtB,EAAgBnrE,IAEpB,IAAM0sE,EAAyB,WAC9B,IACC,IAAMhtK,EAAOy5G,GAAa,IAAD,OAAK1J,EAAOO,OAAM,cAAc,CACxDxN,SAAUxC,EAAQC,cAAcuC,WAEjC6c,EAAS3/G,EACO,CAAf,MAAOxI,GAAQ,CAClB,EAEA,OAAKi0K,GAAmBnrE,EAAQC,eAG/B,UAAC,GAAS,CAACjvG,UAAU,UAAS,WAC7B,wBAAKgvG,EAAQC,cAAcwqE,YAAc,MACzC,iBAAKz5K,UAAU,qBAAoB,WAClC,SAAC,GAAM,CAAC46H,OAAK,EAACl2C,MAAM,aAAam2C,UAAU,gBAAgBrqD,QAASkrG,EAAwBtgD,eAAe,iBAC3G,SAAC,GAAU,CACV09C,qBAAsBqB,EAAerB,qBACrCqB,eAAgBA,EAAeT,gBAC/BU,oBAAqBe,EACrBd,cAAerrE,EAAQC,cAAckpE,eAAe76M,QAAU,EAC9Dg9M,oBAAqBY,QAGvB,iBAAKl7K,UAAU,UAAS,WACvB,gBAAKogD,wBAAyB,CAAEqb,OAAQ0+G,EAAeD,iBAAmB,OAC1E,SAAC,GAAW,CACXnjL,IAAKojL,EAAewB,gBAAkB,GACtCj3F,OAAqB,OAAdy1F,QAAc,IAAdA,OAAc,EAAdA,EAAgBR,cAAe,GACtChoE,SAAU3C,EAAQC,cAAc0C,UAAY,QAE7C,SAAC,GAAM,CACNipB,OAAK,EACLl2C,MAAOy1F,EAAelwC,eACtBz5D,QAAS+qG,EACTr7H,SAAUg7H,IAA4BD,QAGxC,iBAAKj7K,UAAU,qBAAoB,WAClC,SAAC,GAAM,CAAC46H,OAAK,EAACl2C,MAAM,aAAam2C,UAAU,gBAAgBrqD,QAASkrG,EAAwBtgD,eAAe,iBAC3G,SAAC,GAAU,CACV09C,qBAAsBqB,EAAerB,qBACrCqB,eAAgBA,EAAeT,gBAC/BU,oBAAqBe,EACrBd,cAAerrE,EAAQC,cAAckpE,eAAe76M,QAAU,EAC9Dg9M,oBAAqBY,QAIvB,SAAC,GAAK,CAACn9K,UAAWA,EAAWg5K,iBAAe,YAC3C,iBAAK/2K,UAAU,gBAAe,WAC7B,gBAAKA,UAAU,cAAa,SAAC,mFAC7B,iBAAKA,UAAU,kBAAiB,WAC/B,SAAC,GAAM,CACN46H,OAAK,EACLl2C,MAAOy1F,EAAelwC,eACtBz5D,QAAS+qG,EACTr7H,SAAUg7H,IAA4BD,KAEvC,SAAC,GAAM,CAACrgD,OAAK,EAACl2C,MAAM,oBAAoBx4G,KAAK,UAAUskG,QAAS4qG,eAlDf,IAwDvD,ECtHA,GArDiB,SAAH,GAUP,IATNt7J,EAAE,EAAFA,GACA4kE,EAAK,EAALA,MACAk3F,EAAO,EAAPA,QACAC,EAAY,EAAZA,aACAC,EAAQ,EAARA,SACA57H,EAAQ,EAARA,SACA67H,EAAoB,EAApBA,qBAAqB,EAAD,EACpBC,kBAAAA,OAAiB,MAAG,GAAE,MACtBC,kBAAAA,OAAiB,MAAG,GAAE,EAEhBC,EAAoBh/M,KAAW,YAAW,UAAI2+M,EAAeA,IAiBnE,OACC,iBAAK77K,UAAWk8K,EAAmB,kBAAiBp8J,EAAG,WACtD,iBAAK9f,UAAU,kBAAiB,WAC/B,yBAAG,aAAW+7K,EAAqB,SACnC,gBAAK37H,wBAAyB,CAAEqb,OAAQipB,KACvCs3F,IACA,gBAAKh8K,UAAU,gCAA+B,UAC7C,gBACCjJ,IAAKilL,EACLh8K,UAAU,sBACVxU,MAAO,CAAEowF,SAAU,OAAQ43D,UAAW,QAAS2oC,UAAW,kBAI5DF,IACA,gBAAKj8K,UAAU,sBAAqB,UACnC,SAAC,GAAW,CAACjJ,IAAKklL,SAIpBL,GAAWA,EAAQ7uM,KAnCC,SAAH,GAAuD,IAAjDqvM,EAAU,EAAVA,WAAYC,EAAQ,EAARA,SAAUC,EAAU,EAAVA,WAAY7/K,EAAO,EAAPA,QAC3D,OACC,SAAC09G,GAAQ,CAERmiE,WAAYA,EACZC,kBAAmBH,EACnBP,aAAcA,EACdQ,SAAUA,EACVP,SAAUA,EACVr/K,QAASA,EACTyjD,SAAUA,GAPLk8H,EAUR,MAyBD,EAIMjiE,GAAW,SAAH,GAAgG,IAA1FmiE,EAAU,EAAVA,WAAYC,EAAiB,EAAjBA,kBAAmBV,EAAY,EAAZA,aAAcQ,EAAQ,EAARA,SAAU5/K,EAAO,EAAPA,QAASq/K,EAAQ,EAARA,SAAU57H,EAAQ,EAARA,SACvFs8H,EAAiBt/M,KAAW,yBAAwB,2CAA8B2+M,GAAiBA,IAEzG,OACC,iBAAK77K,UAAU,kBAAiB,WAC/B,kBAAOkgD,SAAUA,EAAUh0E,KAAK,QAAQ+L,KAAI,kBAAaqkM,GAAcx8J,GAAE,iBAAYu8J,GAAYr8M,MAAOq8M,EAAU5/K,QAASA,KAC3H,kBACCggL,QAAO,iBAAYJ,GACnBr8K,UAAWw8K,EACXhsG,QAAS,SAAAjwG,GACH2/E,GAAU47H,EAAS,CAAEQ,WAAAA,EAAYD,SAAAA,GACvC,EAAE,SAEDE,MAIL,ECzDA,GAhBuB,SAAH,GAAgD,IAA1CG,EAAQ,EAARA,SAAUlsG,EAAO,EAAPA,QAAQ,EAAD,EAAEw2D,QACtC21C,EACY,YAAbD,OAF8C,OAAQ,EAGxC,4CAA8C,yBAEzD,uBAGR,OACC,iBAAK18K,UAAU,iBAAgB,WAC9B,gBAAKA,UAAS,0BAAqB08K,MACnC,SAAC,GAAM,CAACh4F,MAAOi4F,EAAU7hD,QAAQ,aAAatqD,QAAS,kBAAMA,EAAQksG,EAAS,MAGjF,ECkNA,OApNA,WAAiB,IAAD,EACf,EAA0Cn7D,KAAlCgB,EAAG,EAAHA,IAAKV,EAAe,EAAfA,gBAAiB7S,EAAO,EAAPA,QAC9B,EAAgC+c,KAAxBta,EAAS,EAATA,UAAWD,EAAQ,EAARA,SACb6c,EAAW3C,KAEjB,GAAwBvgD,EAAAA,EAAAA,eAASj+F,GAAU,eAApCk3B,EAAI,KAAEw4K,EAAO,KACpB,GAAsCzxG,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA3C0xG,EAAW,KAAEC,EAAc,KAClC,GAA4C3xG,EAAAA,EAAAA,eAASj+F,GAAU,eAAxD4tM,EAAc,KAAEC,EAAiB,KACxC,GAAgC5vG,EAAAA,EAAAA,eAASj+F,GAAU,eAA5CwvM,EAAQ,KAAEK,EAAW,KAC5B,GAAoC5xG,EAAAA,EAAAA,WAAS,GAAM,eAA5C6xG,EAAU,KAAEC,EAAa,KAE1BC,EAAe,SAACC,EAAgBC,GAAuB,IAAD,EAGvDC,EAFEC,EAAa,KAAQH,GACvB/E,GAAS,EAGPmF,EAA6B,OAAdJ,QAAc,IAAdA,GAAmC,QAArB,EAAdA,EAAgBK,2BAAmB,WAArB,EAAd,EAAqCzwM,KAAI,YAA4B,SAAzB0wM,0BACtCx6M,MAAK,SAAAy6M,GAAM,OAAIA,EAAOC,eAAe,GAAC,IAGjE,GAAKJ,EAgBL,OAbAD,EAAcE,oBAAsBF,EAAcE,oBAAoBzwM,KAAI,SAAA6wM,GACzE,IAAMC,EAAqBN,EAAat6M,MAAK,SAAAy6M,GAAM,OAAIA,EAAOpB,aAAesB,EAAStB,UAAU,IAShG,OARcc,EAAkBS,EAAmBvB,cAAgBuB,EAAmBxB,SACzEuB,EAAS/B,aAAe,WAEpC+B,EAAS/B,aAAe,YACxBwB,EAAuBA,GAAwBO,EAAStB,WACxDlE,GAAS,GAGHwF,CACR,IAEO,CAAEN,cAAAA,EAAelF,OAAAA,EAAQiF,qBAAAA,EACjC,GAEAzyG,EAAAA,EAAAA,YAAU,WACT,IACC,GAAIkwG,IAAmBrpE,EAAW,OAClCwrE,GAAc,GACdlC,EAAkBtpE,IAClB,uBAAC,qHACyB8Q,EAAI7Q,wBAA+B,OAAP1C,QAAO,IAAPA,GAAsB,QAAf,EAAPA,EAASC,qBAAa,WAAf,EAAP,EAAwB0C,SAAUF,GAAW,KAAD,EAAjF,GAAVqsE,EAAU,OACA,CAAD,gDAId,OAFGA,EAAW92C,SACdzkB,EAAIxQ,iBAAiBP,GACrB,SAEyB+Q,EAAI1Q,kBAAkBisE,EAAWhsE,OAAQN,GAAU,KAAD,EAA3D,GAAXusE,EAAW,OACA,CAAD,gBACK,OAApBnB,EAAQkB,GAAY,2BAKfE,EAAaD,EAAYr2L,QAAO,SAACu2L,EAASC,GAE/C,OADAD,EAAQC,EAAK5B,YAAc4B,EAAK7B,SACzB4B,CACR,GAAG,CAAC,GAAG,EAE2Bf,EAAaY,EAAYE,GAAnDV,EAAa,EAAbA,cAAelF,EAAM,EAANA,OAEvB6E,EAAc7E,GAGdkF,EAAcE,oBAAoBjyM,SAAQ,SAAAqyM,GACzC,IAAMO,EAAgBJ,EAAY96M,MAAK,SAAA4I,GAAC,OAAIA,EAAEywM,aAAesB,EAAStB,UAAU,IAChFsB,EAASH,0BAA4BG,EAASH,0BAA0B1wM,KAAI,SAAA2wM,GAE3E,OADAA,EAAOjhL,QAAU0hL,EAAc9B,WAAaqB,EAAOrB,SAC5CqB,CACR,GACD,IAEAZ,EAAekB,GACfpB,EAAQU,GAAe,2CAlCxB,EAsCD,CAFE,MAAOp3K,GACRia,QAAQ3b,KAAK0B,EACd,CACD,GAAG,CAACurG,EAAWD,IAEf,IAAM4sE,EAAiB,yCAAG,WAAM79M,GAAC,0FAEX,GADpB,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACHkvH,GAAc,GACVl/M,OAAO0uC,KAAKowK,GAAav/M,SAAW8mC,EAAKo5K,oBAAoBlgN,OAAM,gBAEtB,OADhDy/M,EAAY,WACZ7pL,OAAOiR,SAAS,CAAE9hC,IAAK,EAAG0mK,SAAU,WAAY,0BAehD,OAfgD,EAIOm0C,EAAa94K,EAAMy4K,GAAnES,EAAa,EAAbA,cAAelF,EAAM,EAANA,OAAQiF,EAAoB,EAApBA,qBAE/BJ,EAAc7E,GAEdwE,EAAQU,GAEFe,EAAoB,CACzB7sE,SAAUr/H,SAASq/H,GACnBC,UAAWt/H,SAASs/H,GACpBu1B,QAAS5iI,EAAK4iI,QACd61C,YAAa9+M,OAAO0uC,KAAKowK,GAAa9vM,KAAI,SAAA7O,GAAG,MAAK,CAAEo+M,WAAYp+M,EAAKm+M,SAAUQ,EAAY3+M,GAAM,KAChG,EAAD,QAE0BqkJ,EAAI3Q,kBAAkBysE,GAAmB,KAAD,GAAjD,GAAZC,EAAY,QAEdlG,IAAUkG,EAAY,iBACF,OAAvBvB,EAAY,WAAW,UACGx6D,EAAIjR,iBAAiB,KAAD,GAC4D,OAA3F,QADTkqE,EAAW,cACF,IAAXA,OAAW,EAAXA,EAAal+M,QAAS,GAAGukJ,EAAgB,CAAE31I,KAAMoiI,EAA6B9rC,QAASg5G,IAAe,4BAKrG+C,EAAqBh+M,EAAE4pC,OAAOgsK,cAAc,qBAAD,OAAsBkH,EAAoB,SACnEkB,EAAmBz1C,eAAe,CAAEC,SAAU,SAAUlxJ,MAAO,WACvFklM,EAAY,aAAa,4CACzB,gBAnCsB,sCAqCjByB,EAAoB,SAAH,GAAkC,IAA5BnC,EAAQ,EAARA,SAAUC,EAAU,EAAVA,WACtCW,GAAc,GACd,IAAMwB,EAAQ,KAAQr6K,GAChBw5K,EAAWa,EAASjB,oBAAoBv6M,MAAK,SAAAy7M,GAAI,OAAIA,EAAKpC,aAAeA,CAAU,WAClFsB,EAAS/B,aAChB+B,EAASH,0BAA4BG,EAASH,0BAA0B1wM,KAAI,SAAA2wM,GAG3E,OAFIA,EAAOrB,WAAaA,EAAUqB,EAAOjhL,SAAU,EAC9CihL,EAAOjhL,SAAU,EACfihL,CACR,IAEA,IAAMM,EAAU,KAAQnB,GACxBmB,EAAW1B,GAAcD,EAEzBO,EAAQ6B,GAER3B,EAAekB,EAChB,EAsDA,OACC,SAAC,GAAS,CAACh+K,UAAU,OAAM,SACzBoE,IACA,iCACC,gBAAKpE,UAAU,cAAa,UAAM,OAAJoE,QAAI,IAAJA,OAAI,EAAJA,EAAMu6K,sBAAuB,MAC3D,SAAC,GAAM,CAAC/jD,OAAK,EAACl2C,MAAM,gBAAgBm2C,UAAU,gBAAgBrqD,QAhBnC,WAC9B,IAAK,IAAD,EAEG9hE,EAAOy5G,IADiB,OAAPnZ,QAAO,IAAPA,GAAsB,QAAf,EAAPA,EAASC,qBAAa,WAAf,EAAP,EAAwBkpE,eAAel1M,MAAK,SAAAujK,GAAO,OAAIA,EAAQkzC,kBAAoBvnM,SAASs/H,EAAU,KACpFm4B,WAAY,CACpDn4B,UAAAA,EACAD,SAAAA,IAED6c,EAAS3/G,EACK,CAAb,MAAOysE,GAAM,CAChB,EAOmGigD,eAAe,iBAC9G,kBAAMwjD,SAAUR,EAAkB,UAChCh6K,IAAY,OAAJA,QAAI,IAAJA,GAAyB,QAArB,EAAJA,EAAMo5K,2BAAmB,WAArB,EAAJ,EAA2BzwM,KAzCjB,SAAH,OACpB8xM,EAAa,EAAbA,cACAvC,EAAU,EAAVA,WACAmB,EAAyB,EAAzBA,0BACA5B,EAAY,EAAZA,aACAE,EAAoB,EAApBA,qBACAE,EAAiB,EAAjBA,kBACAD,EAAiB,EAAjBA,kBAAiB,OAEjB,SAAC,GAAQ,CACRD,qBAAsBA,EAEtBj8J,GAAIw8J,EACJ53F,MAAOm6F,EACPjD,QAAS6B,EACT5B,aAAcA,EACdC,SAAU0C,EACVt+H,SAA2B,YAAjB27H,EACVI,kBAAmBA,EACnBD,kBAAmBA,GARd6C,EASJ,MAsBE,SAAC,GAAM,CAACn6F,MAAM,cAAco2C,QAAQ,aAAa56E,SAAU88H,QAE5D,SAAC,GAAK,CAACj/K,UAAW2+K,EAAUpY,cAAe,kBAAMyY,OAAY7vM,EAAU,EAAC,UACvE,SAAC,GAAc,CAACwvM,SAAUA,EAAUlsG,QA/DN,SAAAsuG,GAAiB,IAAD,EAElD,GADA/B,OAAY7vM,GACS,YAAjB4xM,EAAJ,CACA,IAAM3E,EAAwB,OAAPnrE,QAAO,IAAPA,GAAsB,QAAf,EAAPA,EAASC,qBAAa,WAAf,EAAP,EAAwBkpE,eAAel1M,MAAK,SAAAujK,GAAO,OAAIA,EAAQkzC,kBAAoBvnM,SAASs/H,EAAU,IAE7H,IAAIrtG,EAAK4iI,SAA0B,OAAdmzC,QAAc,IAAdA,GAAAA,EAAgB4E,cAArC,CAMA,IAAMrwK,EAAOy5G,GAAagyD,EAAevwC,WAAY,CACpDp4B,SAAAA,EACAC,UAAW0oE,EAAe4E,gBAE3B1wD,EAAS3/G,EAPT,MAFC2/G,EAAS,IAAD,OAAK5P,EAAOO,OAAM,YAAIxN,GAJO,CAcvC,EA+C8Ew1B,SAAa,OAAJ5iI,QAAI,IAAJA,OAAI,EAAJA,EAAM4iI,WAAW,UAMzG,ECnKA,IAzDcplC,EAAAA,EAAAA,aACb,WAwBC98B,GACK,IAvBJk6G,EAAW,EAAXA,YACAx6F,EAAQ,EAARA,SACAy6F,EAAO,EAAPA,QACAC,EAAU,EAAVA,WAAW,EAAD,EACVhzM,KAAAA,OAAI,MAAG,OAAM,EACb2uJ,EAAS,EAATA,UACAC,EAAO,EAAPA,QACAE,EAAQ,EAARA,SACAmkD,EAAS,EAATA,UACAlnM,EAAI,EAAJA,KACA/W,EAAK,EAALA,MACAlB,EAAK,EAALA,MACAs/E,EAAY,EAAZA,aACA/iC,EAAO,EAAPA,QACA+zD,EAAQ,EAARA,SACAsmG,EAAM,EAANA,OACAwI,EAAM,EAANA,OAAO,EAAD,EACNC,aAAAA,OAAY,MAAG,MAAK,MACpBn/H,SAAAA,OAAQ,OAAQ,EAChBo/H,EAAS,EAATA,UACAC,EAAO,EAAPA,QAID,OACC,iBAAKv/K,UAAU,QAAO,UACpB9+B,IAAS,2BAAQA,KAClB,iBAAK8+B,UAAU,iBAAgB,UAC7B66H,IAAa,SAAC,GAAI,CAACxD,KAAMwD,EAAWxyI,KAAM2yI,EAAU9gJ,MAAOilM,KAC5D,kBACC/iL,YAAa4iL,EACbx6F,SAAUA,EACVy6F,QAASA,EACTC,WAAYA,EACZhzM,KAAMA,EACN+L,KAAMA,EACNjY,MAAOA,EACPs/E,aAAcA,EACd/iC,QAASA,EACT+zD,SAAUA,EACVsmG,OAAQA,EACRwI,OAAQA,EACRC,aAAcA,EACdn/H,SAAUA,EACV4kB,IAAKA,EACLw6G,UAAWA,EACXC,QAASA,IAETzkD,IAAW,SAAC,GAAI,CAACzD,KAAMyD,EAASzyI,KAAM2yI,EAAU9gJ,MAAOilM,SAI5D,ICzCD,GAhBgB,SAAH,GAAyB,IAAnBK,EAAW,EAAXA,YAClB,OAAIA,GAEF,iBAAKx/K,UAAU,UAAS,WACvB,gBAAKA,UAAU,UACf,iBAAKA,UAAU,SAAQ,UAAC,IAAEw/K,MAC1B,gBAAKx/K,UAAU,aAIjB,gBAAKA,UAAU,UAAS,UACvB,gBAAKA,UAAU,UAGlB,EC+EA,GA7F+B,SAAH,GAAyC,IAAnCy/K,EAAc,EAAdA,eAAgBC,EAAW,EAAXA,YACjD,GAAsBv0G,EAAAA,EAAAA,UAAS,IAAIztG,MAAM+hN,GAAgB1kK,KAAK,KAAI,eAA3Do+F,EAAG,KAAEwmE,EAAM,KACZC,GAAkB10G,EAAAA,EAAAA,QAAO,IAoBzB20G,EAAkB,SAAAC,GAClBA,GACLA,GAAaJ,GAAsC,oBAAhBA,GAA8BA,EAAYI,EAC9E,EAmCMC,EAAc,SAAAx/M,GACnBA,EAAEwtF,iBACF,IACMiyH,EADYz/M,EAAEswF,cAAcovH,QAAQ,QAAQ/9M,MAAM,EAAGu9M,GAC7Bz8J,MAAM,IAGhCg9J,EAAYjqL,OAAM,SAAAglE,GAAI,MAAI,KAAK32D,KAAK22D,EAAK,KAAKilH,EAAY1iN,SAAWmiN,IACxEE,EAAOK,GACPH,EAAgBG,EAAY5hN,KAAK,KAEjCwhN,EAAgB5zM,QAAQg0M,EAAY1iN,OAAS,GAAGq6F,QAElD,EAEA,OACC,gBAAK33D,UAAU,yBAAwB,SACrCm5G,EAAIpsI,KAAI,SAAC8I,EAAOjR,GAAK,OACrB,kBAEC5E,MAAO6V,EACPypM,UAAW,EACX96F,SAAU,SAAAjkH,GAAC,OA7EM,SAACP,EAAO4E,GAC5B,IAAI85G,GAAM,OAAOy6B,GACjBz6B,EAAO95G,GAAS5E,EAChB2/M,EAAOjhG,GAGP,IAAMwhG,EAAexhG,EAAOtgH,KAAK,IAC7B8hN,EAAa5iN,SAAWmiN,EAKxBz/M,GAAS4E,EAAQ66M,EAAiB,GACrCG,EAAgB5zM,QAAQpH,EAAQ,GAAG+yF,QALnCkoH,EAAgBK,EAOlB,CA8DmBC,CAAa5/M,EAAE4pC,OAAOnqC,MAAO4E,EAAM,EAClD26M,QAAS,SAAAh/M,GAAC,OAvDuB,SAACA,EAAGqE,GAE1B,UAAVrE,EAAErC,KAAmB0G,EAAQ66M,EAAiB,GACjDG,EAAgB5zM,QAAQpH,EAAQ,GAAG+yF,OAErC,CAkDkByoH,CAA6B7/M,EAAGqE,EAAM,EACpDy7M,UAAW,SAAA9/M,GAAC,OAjDuB,SAACA,EAAGqE,GAC1C,GAAc,cAAVrE,EAAErC,IAKN,GAAmB,KAAfi7I,EAAIv0I,IAAiBA,EAAQ,EAAG,CACnC,IAAM07M,GAAM,OAAOnnE,GAEb1sI,EAAY7H,EAAQ,EAC1Bg7M,EAAgB5zM,QAAQS,GAAWkrF,QAET,KAAtB2oH,EAAO7zM,KACV6zM,EAAO7zM,GAAa,GACpBkzM,EAAOW,IAER//M,EAAEwtF,gBACH,KAAO,CAEN,IAAMuyH,GAAM,OAAOnnE,GACnBmnE,EAAO17M,GAAS,GAChB+6M,EAAOW,EACR,CACD,CA0BoBC,CAA+BhgN,EAAGqE,EAAM,EACxD47M,QAAST,EACTj7G,IAAK,SAAA27G,GAAS,OAAKb,EAAgB5zM,QAAQpH,GAAS67M,CAAS,EAC7DzgL,UAAU,iCARLp7B,EASJ,KAIN,ECiDA,GAhIc,WACb,IAAMypJ,EAAW3C,KACXlgH,EAAWigH,KAEjB,EAAoClK,KAA5B7L,EAAI,EAAJA,KAAMiM,EAAY,EAAZA,aAAcY,EAAG,EAAHA,IAC5B,GAAwCp3C,EAAAA,EAAAA,UAAS,MAAK,eAA/CmuC,EAAY,KAAEonE,EAAe,KACpC,GAAgCv1G,EAAAA,EAAAA,UAAS,MAAK,eAAvCikC,EAAQ,KAAEuxE,EAAW,KAC5B,GAAgCx1G,EAAAA,EAAAA,UAAS,MAAK,eAAvC3W,EAAQ,KAAEosH,EAAW,KAC5B,GAAoCz1G,EAAAA,EAAAA,WAAS,GAAM,eAA5C01G,EAAU,KAAEC,EAAa,KAChC,GAAgC31G,EAAAA,EAAAA,UAAS,MAAK,eAAvC41G,EAAQ,KAAEC,EAAW,KAEtBC,GAAY/1G,EAAAA,EAAAA,QAAO,MACzB,EAA0ByxD,GAAkB,OAAQ,IAAG,eAA7CukD,GAAF,KAAc,MAGhBC,EAAa,yCAAG,WAAM5gN,GAAC,oFAKgE,OAJ3F,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACH2yH,EAAgB,MACVroG,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtBi3K,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WACzCjxH,OAAOixH,QAAQoyF,GAAU71M,SAAQ,+BAAErN,EAAG,KAAO,YAAOkjN,EAASljN,GAAOkjN,EAASljN,GAAKm7B,MAAM,IAAI,SACjEkpH,EAAI9R,MAAM2wE,GAAU,KAAD,EAA5B,KAAZE,EAAY,SACGA,EAAa5wE,aAAY,qBACzC4wE,EAAa1wE,SAAS,CAAD,gBACa,OAArCkwE,EAAcQ,EAAa1wE,UAAU,2BAG9B+R,EAAgB2+D,EAAhB3+D,YACRhB,EAAa,CAAEz1I,KAAMkiI,EAAqB5rC,QAAS8+G,IACnDJ,EAAaI,GACIjzD,EAAb1L,EAAsBlE,EAAOa,gBACnBb,EAAOM,eAAe,wBAE9Bn3F,GAAsB,OAAZ05J,QAAY,IAAZA,OAAY,EAAZA,EAAchoE,eAAgB,2CAC9ConE,EAAgB94J,GAAS,4CAE1B,gBArBkB,sCAwBb25J,EAAyB,yCAAG,WAAMhhN,GAAC,8EAElB,GADrB,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACH2yH,EAAgB,MAEXK,EAAS,CAAD,eAC4C,OAAxDL,EAAgB,wCAAwC,0CAG9Bn+D,EAAIrJ,YAAY9J,EAAU56C,EAAUusH,GAAU,KAAD,EAAtD,GAAZO,EAAY,OACA,CAAD,gBACwC,OAAxDZ,EAAgB,wCAAwC,2BAIjD/9D,EAAgB2+D,EAAhB3+D,YACRhB,EAAa,CAAEz1I,KAAMkiI,EAAqB5rC,QAAS8+G,IACnDJ,EAAaI,GACIjzD,EAAb1L,EAAsBlE,EAAOa,gBACnBb,EAAOE,OAAO,4CAC5B,gBAnB8B,sCAsBzB6iE,EAAiB,SAAA1B,GACjBA,GACLkB,EAAYlB,EACb,EAEM2B,GAAcz2G,EAAAA,EAAAA,UAAQ,WAC3B,OAAI61G,GAEF,iCACC,gBAAK7gL,UAAU,qBAAoB,SAAC,kCACpC,gBAAKA,UAAU,yBAAwB,SAAC,oEACxC,kBAAM4+K,SAAU2C,EAA0B,WACzC,gBAAKvhL,UAAU,qBAAoB,UAClC,SAAC,GAAsB,CAACy/K,eAAgB,EAAGC,YAAa8B,OAEzD,SAAC,GAAM,CAAC98F,MAAM,cAGd40B,IAAgB,gBAAKt5G,UAAU,gBAAe,SAAEs5G,QAKnD,iCACC,gBAAKt5G,UAAU,aAAY,SAAC,oCAC5B,kBAAM4+K,SAAUuC,EAAc,WAC7B,SAAC,GAAK,CACLtmD,UAAU,YACVmkD,YAAY,QACZ9yM,KAAMwtI,EAAYQ,MAAML,SACxB5hI,KAAK,WACLusG,SAAU,SAAAjkH,GAAC,OAAIogN,EAAYpgN,EAAE4pC,OAAOnqC,MAAM,KAE3C,SAAC,GAAK,CACL66J,UAAU,eACVmkD,YAAY,WACZ9yM,KAAK,WACL+L,KAAK,WACLusG,SAAU,SAAAjkH,GAAC,OAAIqgN,EAAYrgN,EAAE4pC,OAAOnqC,MAAM,KAE3C,SAAC,GAAM,CAAC0kH,MAAM,SAAS5f,IAAKm8G,QAE7B,iBAAKjhL,UAAU,kBAAiB,UAAC,MAEhC,iBAAMwwE,QAAS,kBAAM69C,EAAS,IAAD,OAAK5P,EAAOG,oBAAqB,EAAC,SAAC,4BAEjE,SAAC,GAAO,CAAC4gE,YAAY,QACrB,iBAAKx/K,UAAU,cAAa,UAAC,qBAE5B,cAAGkL,KAAMm2G,EAAexC,SAAS,SAAC,kBAElCvF,IAAgB,gBAAKt5G,UAAU,gBAAe,SAAEs5G,MAGpD,GAAG,CAACunE,EAAYE,EAAUznE,IAG1B,OAAQ,OAAJ5D,QAAI,IAAJA,GAAAA,EAAMthI,OAAa,OAAJshI,QAAI,IAAJA,GAAAA,EAAMiN,aAAoB,SAACwL,GAAQ,CAACtsJ,GAAI48I,EAAOa,gBAAiBr7C,MAAO,CAAEniG,KAAM0pC,GAAY1Q,SAAO,IACxG,OAAJ46G,QAAI,IAAJA,GAAAA,EAAMthI,OAAc,SAAC+5I,GAAQ,CAACtsJ,GAAI48I,EAAOM,cAAe96C,MAAO,CAAEniG,KAAM0pC,GAAY1Q,SAAO,KAGlG,gBAAKkF,UAAU,QAAO,UACrB,SAAC,GAAS,UAAEyhL,KAGf,ECpGA,GAtCc,SAAH,GAAmE,IAA7DC,EAAU,EAAVA,WAAW,EAAD,EAAEC,cAAAA,OAAa,MAAG,IAAG,MAAEC,eAAAA,OAAc,MAAG,IAAG,EACrE,GAA8Bz2G,EAAAA,EAAAA,UAASw2G,GAAc,eAA9C9hJ,EAAO,KAAEgiJ,EAAU,KAC1B,GAA8B12G,EAAAA,EAAAA,UAASy2G,GAAe,eAA/C1hJ,EAAO,KAAE4hJ,EAAU,KAEpBC,GAAc72G,EAAAA,EAAAA,UAEd82G,GAAWh3G,EAAAA,EAAAA,UAAQ,WACxB,OAAOnrC,GAAW,CACnB,GAAG,CAACA,IAsBJ,OApBA+qC,EAAAA,EAAAA,YAAU,WAKT,OAJAm3G,EAAY/1M,QAAU89B,aAAY,WACjCg4K,GAAW,SAAA5hJ,GAAO,OAAKA,EAAU,EAAIA,EAAU,EAAI,EAAE,IACrD2hJ,GAAW,SAAAhiJ,GAAO,OAAKA,EAAU,GAAiB,IAAZK,EAAgBL,EAAU,EAAIA,CAAO,GAC5E,GAAG,KACI,kBAAM51B,cAAc83K,EAAY/1M,QAAS,CACjD,GAAG,CAAC6zD,EAASK,KAEb0qC,EAAAA,EAAAA,YAAU,WACTi3G,EAAWF,GACXG,EAAWF,EACZ,GAAG,CAACD,EAAeC,KAEnBh3G,EAAAA,EAAAA,YAAU,WACO,IAAZ/qC,GAA6B,IAAZK,IACpBj2B,cAAc83K,EAAY/1M,SACJ,oBAAf01M,GAA6BA,IAEtC,GAAG,CAAC7hJ,EAASK,KAGZ,iBAAKlgC,UAAS,gBAAWgiL,EAAW,WAAa,IAAK,UACpDp+M,KAAKi+B,MAAMg+B,EAAU,IAAM,EAAC,UAAMj8D,KAAKi+B,MAAMg+B,EAAU,IAAG,KAAM,GAChEA,EAAU,GAAK,IAAMj8D,KAAKi+B,MAAMg+B,EAAU,IAAM,EAAC,WAAOA,EAAU,IAAOA,EAAU,GAAG,IAAEK,EAAU,GAAE,WAAOA,GAAYA,IAG3H,EC+QA,GA1SyB,WACxB,MAA+EqhF,KAAvEgB,EAAG,EAAHA,IAAKF,EAAe,EAAfA,gBAAiBC,EAAkB,EAAlBA,mBAAoBQ,EAAwB,EAAxBA,yBAElD,GAAwB33C,EAAAA,EAAAA,UAAS,MAAK,eAA/BuqC,EAAI,KAAEusE,EAAO,KACpB,GAA4C92G,EAAAA,EAAAA,WAAS,GAAM,eAApD+2G,EAAc,KAAEC,EAAiB,KACxC,GAAwCh3G,EAAAA,EAAAA,UAAS,MAAK,eAA/CmuC,EAAY,KAAEonE,EAAe,KAE9BryD,EAAW3C,KACX02D,GAAgBl3G,EAAAA,EAAAA,UAChBm3G,GAAiBn3G,EAAAA,EAAAA,UAKvB,GAAoCC,EAAAA,EAAAA,UAASizC,EAA0BC,aAAY,eAA5EikE,EAAU,KAAEC,EAAa,KAE1BC,GAAsBx3G,EAAAA,EAAAA,UAAQ,WACnC,OAAQs3G,GACP,KAAKlkE,EAA0BC,YAC9B,MAAO,CACNokE,WAAY,qBACZC,UAAW,wEACXC,aAAc,yBACdC,eAAgB,CACf,CACC/nD,UAAW,YACXmkD,YAAa,QACb9yM,KAAMwtI,EAAYQ,MAAML,SACxB5hI,KAAM,QACN6sF,IAAKs9G,KAKT,KAAKhkE,EAA0BE,WAC9B,MAAO,CACNmkE,WAAY,yBACZC,UAAU,2FACVC,aAAc,WACdC,eAAgB,CACf,CACC/nD,UAAW,eACXmkD,YAAa,OACb9yM,KAAMwtI,EAAYW,kBAAkBR,SACpC5hI,KAAM,OACN6sF,IAAKs9G,KAKT,KAAKhkE,EAA0BG,eAC9B,MAAO,CACNkkE,WAAY,iBACZC,UAAU,yJACVC,aAAc,QACdC,eAAgB,CACf,CACC/nD,UAAW,eACXmkD,YAAa,eACb9yM,KAAMwtI,EAAYW,kBAAkBR,SACpC5hI,KAAM,cACN6sF,IAAKs9G,GAEN,CACCvnD,UAAW,eACXmkD,YAAa,mBACb9yM,KAAMwtI,EAAYW,kBAAkBR,SACpC5hI,KAAM,kBACN6sF,IAAKu9G,KAKT,KAAKjkE,EAA0BI,iBAC9B,MAAO,CACNikE,WAAY,mBACZC,UAAW,+CACXC,aAAc,QACdC,eAAgB,IAIpB,GAAG,CAACN,IAGEO,GAAoB73G,EAAAA,EAAAA,UAAQ,WACjC,OAAOs3G,IAAelkE,EAA0BE,UACjD,GAAG,CAACgkE,IAGEnB,GAAgBz2G,EAAAA,EAAAA,cACrB,SAAAnqG,GAEC,GADC,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACExtF,EAAE4pC,OAAP,CAGAu2K,EAAgB,MAEhB,IAAMroG,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtBi3K,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WAGzC,OAFAjxH,OAAOixH,QAAQoyF,GAAU71M,SAAQ,gBAAErN,GAAF,YAAK,UAAOkjN,EAASljN,GAAOkjN,EAASljN,GAAKm7B,MAAM,IAEzEipL,GACP,KAAKlkE,EAA0BC,YAC9B,OAAOykE,EAAkB1B,GAE1B,KAAKhjE,EAA0BE,WAC9B,OAAOykE,EAAiB3B,GAEzB,KAAKhjE,EAA0BG,eAC9B,OAAOykE,EAAc5B,GAEtB,KAAKhjE,EAA0BI,iBAC9B,OAAO6P,EAAS,IAAD,OAAK5P,EAAOE,QApBR,CAuBtB,GACA,CAAC2jE,IAKIQ,EAAiB,yCAAG,8FAKF,GALWvuH,EAAK,EAALA,MAAK,UAGjCA,GAASmhD,IAAMnhD,EAAY,OAAJmhD,QAAI,IAAJA,OAAI,EAAJA,EAAMnhD,OAElCA,EAAQA,EAAMl7D,OAETqgH,EAAYQ,MAAM1jF,MAAMpyB,KAAKmwD,GAAO,CAAD,eACC,OAAxCmsH,EAAgB,wBAAwB,0CAIvBn+D,EAAIpR,qBAAqB58C,GAAO,KAAD,EAAxC,GAAHlpC,EAAG,OACA,CAAD,gBACoH,OAA3Hq1J,EAAgB,2GAA2G,8BAKxHr1J,EAAIqqF,KAAKrG,SAAWuL,EAAMI,QAAO,iBACgG,OAApI0lE,EAAgB,QAAD,OAAS9lE,EAAMvvF,EAAIqqF,KAAKrG,QAAO,uFAAsF,8BAOhIhkF,EAAI43J,QAAQ,CAAD,gBAKb,OAJFvC,EAAgB,4EAAD,QAEV,OAAHr1J,QAAG,IAAHA,GAAa,QAAV,EAAHA,EAAK63J,gBAAQ,WAAV,EAAH,EAAentM,gBAAiB,4BAA2B,6BAE3D,2BAIHksM,EAAQ52J,EAAIqqF,MACZ6sE,EAAcnkE,EAA0BE,YAAY,kDAEpDn+F,QAAQja,MAAM,EAAD,IACb48G,EACC,wGACA,GACC,0DAEH,gBA7CsB,sCAgDjBigE,EAAgB,yCAAG,4FAAa,GAAJ3wH,EAAI,EAAJA,KAAI,SAE/BsnD,EAAYW,kBAAkB7jF,MAAMpyB,KAAKguD,GAAM,CAAD,eACX,OAAvCsuH,EAAgB,uBAAuB,0CAItBn+D,EAAInR,uBAA0B,OAAJsE,QAAI,IAAJA,OAAI,EAAJA,EAAMvG,SAAU,EAAG/8C,GAAM,KAAD,EAA3D,GAAH/mC,EAAG,OAEA,CAAD,gBAIL,OAHFy3F,EACC,wGACA,GACC,8BAKEz3F,EAAI83J,QAAQ,CAAD,gBACiG,OAAhHzC,EAAgB,0GAAgG,+BAM7Gr1J,EAAI+3J,UAAU,CAAD,gBAC4C,OAA5D1C,EAAgB,4CAA4C,2BAI7D6B,EAAcnkE,EAA0BG,gBAAgB,kDAExDp+F,QAAQja,MAAM,EAAD,IACb48G,EACC,wGACA,GACC,0DAEH,gBAtCqB,sCA0ChBkgE,EAAa,yCAAG,4FAAqC,GAA5BK,EAAW,EAAXA,YAAaC,EAAe,EAAfA,gBAAe,SAE9B,IAAvBD,EAAY/lN,QAAkB,KAAK8mC,KAAKi/K,IAAgB,WAAWj/K,KAAKi/K,GAAa,gBAC8B,OAAtH3C,EAAgB,sGAAsG,6BAInH2C,EAAYhqL,SAAWiqL,EAAgBjqL,OAAM,gBACuB,OAAvEqnL,EAAgB,4DAAuD,2CAItDn+D,EAAIlR,mBAAmBqE,EAAKvG,OAAQk0E,GAAa,KAAD,GAAzD,UACA,CAAD,gBAIL,OAHFvgE,EACC,wGACA,GACC,2BAIHy/D,EAAcnkE,EAA0BI,kBAAkB,kDAE1Dr+F,QAAQja,MAAM,EAAD,IACb48G,EACC,wGACA,GACC,0DAEH,gBA7BkB,sCAsCnB,OAPAl4C,EAAAA,EAAAA,YAAU,WACLw3G,EAAcp2M,UACjBo2M,EAAcp2M,QAAQ2rF,QACtByqH,EAAcp2M,QAAQhM,MAAQ,GAEhC,GAAG,CAACwiN,KAGH,qBAASxiL,UAAU,qBAAoB,WACtC,UAAC,GAAS,YACT,gBAAKA,UAAU,aAAY,SAAEwiL,EAAoBC,cACjD,gBAAKziL,UAAU,YAAYogD,wBAAyB,CAAEqb,OAAQ+mH,EAAoBE,WAAa,OAC/F,kBAAM9D,SAAUuC,EAAc,UAC5BqB,EAAoBI,eAAe71M,KAAI,SAACyvB,EAAO53B,GAC/C,OACC,SAAC,GAAK,CAELi2J,UAAWr+H,EAAMq+H,UACjBskD,UAAU,UACVnkD,SAAS,KACTgkD,YAAaxiL,EAAMwiL,YACnB9yM,KAAMswB,EAAMtwB,KACZ+L,KAAMukB,EAAMvkB,KACZ6sF,IAAKtoE,EAAMsoE,KAPNlgG,EAUR,KACA,SAAC,GAAM,CAAC8/G,MAAO89F,EAAoBG,kBAEnCE,IACA,iBAAK7iL,UAAU,aAAY,UAAC,qBAE1BkiL,GACA,iBAAM1xG,QAASsyG,EAAkB,SAAC,iBAElC,2BAAK,0CAEJ,SAAC,GAAK,CAACpB,WAAY,kBAAMS,GAAkB,EAAK,EAAER,cAAe,EAAGC,eAAgB,WAKvFtoE,IAAgB,gBAAKt5G,UAAU,gBAAgBogD,wBAAyB,CAAEqb,OAAQ69C,SAEpF,SAAC,GAAY,CACZv7G,UAAWskH,EAAgBF,QAC3Bx1G,OAAQ01G,EAAgBD,OAAS,SAAW,YAC5CkiD,cAAe,kBAAMhiD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,EAAC,UAExF,yBAAMC,EAAgBz6F,cAI1B,EClSA,OAbA,WACC,OACC,UAAC,GAAS,CAAC5nB,UAAU,cAAa,WACjC,gBAAKA,UAAU,aAAY,SAAC,SAC5B,iBAAKA,UAAU,YAAW,UAAC,sCAE1B,kBAAM,eACK,cAAGkL,KAAMuzG,EAAOE,MAAM,SAAC,mBAItC,ECfe,SAAS,GAAyB96F,EAAQ6uG,GACvD,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAC5B,IACI3lD,EAAKd,EADL+sC,ECHS,SAAuC0Z,EAAQ6uG,GAC5D,GAAc,MAAV7uG,EAAgB,MAAO,CAAC,EAC5B,IAEI3lD,EAAKd,EAFL+sC,EAAS,CAAC,EACVwoH,EAAa50J,OAAO0uC,KAAKoX,GAE7B,IAAKzmD,EAAI,EAAGA,EAAIu1J,EAAWr1J,OAAQF,IACjCc,EAAMy0J,EAAWv1J,GACbs1J,EAAShnJ,QAAQxN,IAAQ,IAC7BisC,EAAOjsC,GAAO2lD,EAAO3lD,IAEvB,OAAOisC,CACT,CDRe,CAA6B0Z,EAAQ6uG,GAElD,GAAI30J,OAAO2wI,sBAAuB,CAChC,IAAIkkB,EAAmB70J,OAAO2wI,sBAAsB7qF,GACpD,IAAKzmD,EAAI,EAAGA,EAAIw1J,EAAiBt1J,OAAQF,IACvCc,EAAM00J,EAAiBx1J,GACnBs1J,EAAShnJ,QAAQxN,IAAQ,GACxBH,OAAOC,UAAU60J,qBAAqB10J,KAAK0lD,EAAQ3lD,KACxDisC,EAAOjsC,GAAO2lD,EAAO3lD,GAEzB,CACA,OAAOisC,CACT,qHEcA,GAvBmB,SAAH,GAA4H,IAAtH47H,EAAQ,EAARA,SAAUrhD,EAAK,EAALA,MAAO6+F,EAAS,EAATA,UAAW/xE,EAAQ,EAARA,SAAUgyE,EAAO,EAAPA,QAAShzG,EAAO,EAAPA,QAAStwB,EAAQ,EAARA,SAAUujI,EAAgB,EAAhBA,iBAAkBhoD,EAAY,EAAZA,aAAiBioD,EAAS,SAC7HC,EAAc,WACnB,OAAI59C,GAAY,GAAU,gBAAK/lI,UAAU,6CAA4C,SAAC,gBAC7E+lI,GAAY,KAAY,gBAAK/lI,UAAU,2CAA0C,SAAC,eACpF,gBAAKA,UAAU,gCAA+B,SAAEyjL,EAAgB,UAAM19C,EAAQ,eAAgB,eACtG,EAEM69C,GATSzzE,iCASeozE,GAAa,KAAKzoL,QAAQ,MAAO,KAE/D,OACC,iBAAKkF,UAAU,aAAakgD,SAAUA,EAAS,WAC9C,gBAAKlgD,UAAU,wBAAwBxU,MAAO,CAAEhC,WAAW,OAAD,OAASo6L,EAAS,4BAC5E,iBAAK5jL,UAAU,sBAAsBwwE,QAAS,kBAAOtwB,GAAYswB,EAAQ,GAAEghC,SAAAA,EAAUiyE,iBAAAA,EAAkBhoD,aAAAA,GAAiBioD,GAAY,EAAC,WACpI,SAACC,EAAW,KACZ,gBAAK3jL,UAAU,6BAA4B,SAAE0kF,KAC7C,iBAAK1kF,UAAU,4BAA2B,UAAC,QACpCwjL,EAAU,QAAU,SAAS,KAAC,SAAC,GAAI,CAACnsD,KAAK,aAAahvI,KAAK,eAKtE,ECxBA,SAASw7L,GAAQ,EAAc/+G,GAAM,IAAlBzkB,EAAQ,EAARA,SAClB,GAAwB8qB,EAAAA,EAAAA,WAAS,GAAM,eAAhCghG,EAAI,KAAE2X,EAAO,KACpB,GAAgC34G,EAAAA,EAAAA,UAAS,CAAE1oG,EAAG,EAAG1B,EAAG,IAAI,eAAjDqoB,EAAQ,KAAE26L,EAAW,KAEtBC,GAAc94G,EAAAA,EAAAA,QAAO,MAa3B,OAXAL,EAAAA,EAAAA,qBAAoB/F,GAAK,iBAAO,CAC/Bm/G,KAAM,YAA+B,IAA5BxhN,EAAC,EAADA,EAAG1B,EAAC,EAADA,EAAE,EAAD,EAAEosC,QAAAA,OAAO,MAAG,KAAI,EAC5B22K,GAAQ,GACRC,EAAY,CAAEthN,EAAAA,EAAG1B,EAAAA,IACbijN,EAAYh4M,SAAS4vF,aAAaooH,EAAYh4M,SAClDg4M,EAAYh4M,QAAUugC,YAAW,WAChCu3K,GAAQ,EACT,GAAG32K,EACJ,EACA,IAEGg/J,GAEF,gBAAKnsK,UAAU,UAAUxU,MAAO,CAAEnpB,IAAK+mB,EAASroB,EAAGqB,KAAMgnB,EAAS3mB,GAAI,SACpE49E,IAGG,IACR,CAEA,QAAeuhD,EAAAA,EAAAA,YAAWiiF,IC1B1B,SAASK,KACL,IAAI7gH,GAAY6H,EAAAA,EAAAA,SAAO,GAOvB,OANAwgE,IAA0B,WAEtB,OADAroE,EAAUr3F,SAAU,EACb,WACHq3F,EAAUr3F,SAAU,CACxB,CACJ,GAAG,IACIq3F,CACX,CCLA,IAAI8gH,GAAgB,SAAU79L,GAC1B,IAAI+5D,EAAW/5D,EAAG+5D,SAAUi8B,EAAUh2F,EAAGg2F,QAASokE,EAAYp6J,EAAGo6J,UAAWC,EAAiBr6J,EAAGq6J,eAAgBnT,EAASlnJ,EAAGknJ,OAAQ42C,EAAwB99L,EAAG89L,sBAC3JC,EAAmBx1C,GAAYy1C,IAC/BxkK,EAAK2rD,KACL7oG,GAAUooG,EAAAA,EAAAA,UAAQ,WAAc,MAAQ,CACxClrD,GAAIA,EACJw8D,QAASA,EACTokE,UAAWA,EACXlT,OAAQA,EACRmT,eAAgB,SAAU4jC,GACtB,IAAIC,EAAKl+L,EACT+9L,EAAiBt1J,IAAIw1J,GAAS,GAC9B,IACI,IAAK,IAAIptK,EAAKgzH,GAASk6C,EAAiB3sM,UAAWijC,EAAKxD,EAAG72C,QAASq6C,EAAGj6C,KAAMi6C,EAAKxD,EAAG72C,OAAQ,CAEzF,IADiBq6C,EAAG36C,MAEhB,MACR,CAQJ,CANA,MAAOykN,GAASD,EAAM,CAAEt+K,MAAOu+K,EAAS,CAAC,QAErC,IACQ9pK,IAAOA,EAAGj6C,OAAS4lB,EAAK6wB,EAAGwvC,SAASrgE,EAAGnoB,KAAKg5C,EAEhB,CADnC,QACS,GAAIqtK,EAAK,MAAMA,EAAIt+K,KAAO,CACxC,CACmB,OAAnBy6I,QAA8C,IAAnBA,GAAqCA,GACpE,EACAC,SAAU,SAAU2jC,GAEhB,OADAF,EAAiBt1J,IAAIw1J,GAAS,GACvB,WAAc,OAAOF,EAAiBl5H,OAAOo5H,EAAU,CAClE,EACA,GAMJH,OAAwBl3M,EAAY,CAACwzK,IAWrC,OAVA11E,EAAAA,EAAAA,UAAQ,WACJq5G,EAAiB94M,SAAQ,SAAUtK,EAAG/C,GAAO,OAAOmmN,EAAiBt1J,IAAI7wD,GAAK,EAAQ,GAC1F,GAAG,CAACwiL,IAKJllE,EAAAA,WAAgB,YACXklE,IAAc2jC,EAAiBh8L,OAA4B,OAAnBs4J,QAA8C,IAAnBA,GAAqCA,IAC7G,GAAG,CAACD,IACIllE,EAAAA,cAAoBgwD,GAAAA,SAA0B,CAAExrK,MAAO4C,GAAWy9E,EAC9E,EACA,SAASikI,KACL,OAAO,IAAIx5H,GACf,CCjDA,IAAI45H,GAAc,SAAU39K,GAAS,OAAOA,EAAM7oC,KAAO,EAAI,EAiD7D,IAAIymN,GAAkB,SAAUr+L,GAC5B,IAAI+5D,EAAW/5D,EAAG+5D,SAAUmtF,EAASlnJ,EAAGknJ,OAAQr2H,EAAK7wB,EAAGg2F,QAASA,OAAiB,IAAPnlE,GAAuBA,EAAIwpI,EAAiBr6J,EAAGq6J,eAAgBikC,EAAkBt+L,EAAGs+L,gBAAiBjqK,EAAKr0B,EAAG89L,sBAAuBA,OAA+B,IAAPzpK,GAAuBA,EAG1Pa,EAAK4uH,GC3Db,WACI,IAAI/mE,EAAY6gH,KACZ59L,EAAK8jJ,IAAOj/D,EAAAA,EAAAA,UAAS,GAAI,GAAI05G,EAAoBv+L,EAAG,GAAIw+L,EAAuBx+L,EAAG,GAClFy+L,GAAcr6G,EAAAA,EAAAA,cAAY,WAC1BrH,EAAUr3F,SAAW84M,EAAqBD,EAAoB,EAClE,GAAG,CAACA,IAMJ,MAAO,EADmBn6G,EAAAA,EAAAA,cAAY,WAAc,OAAOugF,GAAAA,WAAgB85B,EAAc,GAAG,CAACA,IAChEF,EACjC,CD+CoBG,GAAkB,GAAID,EAAcvpK,EAAG,GACnDypK,GAAyBt6G,EAAAA,EAAAA,YAAWskE,IAAoB81C,YACxDE,IACAF,EAAcE,GAClB,IAAI5hH,EAAY6gH,KAEZgB,EApDR,SAAsB7kI,GAClB,IAAI/vD,EAAW,GAMf,OAJAswG,EAAAA,SAAAA,QAAiBvgD,GAAU,SAAUt5C,IAC7B86F,EAAAA,EAAAA,gBAAe96F,IACfzW,EAAS7yB,KAAKspC,EACtB,IACOzW,CACX,CA4C2B60L,CAAa9kI,GAChC+kI,EAAmBF,EACnBG,EAAU,IAAIvqI,IAGdwqI,GAAkBp6G,EAAAA,EAAAA,QAAOk6G,GAEzBG,GAAcr6G,EAAAA,EAAAA,QAAO,IAAIpgB,KAAO9+E,QAGhCirL,GAAkB/rF,EAAAA,EAAAA,SAAO,GAW7B,GAVAwgE,IAA0B,WACtBurB,EAAgBjrL,SAAU,EAtElC,SAA2Bq0E,EAAUklI,GACjCllI,EAAS90E,SAAQ,SAAUw7B,GACvB,IAAI7oC,EAAMwmN,GAAY39K,GACtBw+K,EAAYx2J,IAAI7wD,EAAK6oC,EACzB,GACJ,CAkEQy+K,CAAkBN,EAAkBK,GACpCD,EAAgBt5M,QAAUo5M,CAC9B,IACA1nC,IAAiB,WACbuZ,EAAgBjrL,SAAU,EAC1Bu5M,EAAYxyB,QACZsyB,EAAQtyB,OACZ,IACIkE,EAAgBjrL,QAChB,OAAQwvG,EAAAA,cAAoBA,EAAAA,SAAgB,KAAM4pG,EAAiBr4M,KAAI,SAAUg6B,GAAS,OAAQy0E,EAAAA,cAAoB2oG,GAAe,CAAEjmN,IAAKwmN,GAAY39K,GAAQ25I,WAAW,EAAMpkE,UAASA,QAAUpvG,EAAmBk3M,sBAAuBA,GAAyBr9K,EAAS,KAGpRq+K,EAAmBxjN,GAAc,GAAIwoK,GAAOg7C,IAAmB,GAO/D,IAJA,IAAIK,EAAcH,EAAgBt5M,QAAQe,IAAI23M,IAC1CgB,EAAaR,EAAiBn4M,IAAI23M,IAElCiB,EAAaF,EAAYnoN,OACpBF,EAAI,EAAGA,EAAIuoN,EAAYvoN,IAAK,CACjC,IAAIc,EAAMunN,EAAYroN,IACW,IAA7BsoN,EAAWh6M,QAAQxN,IACnBmnN,EAAQ5gL,IAAIvmC,EAEpB,CA4CA,OAzCI0mN,GAAmBS,EAAQh9L,OAC3B+8L,EAAmB,IAIvBC,EAAQ95M,SAAQ,SAAUrN,GAEtB,IAAiC,IAA7BwnN,EAAWh6M,QAAQxN,GAAvB,CAEA,IAAI6oC,EAAQw+K,EAAY95M,IAAIvN,GAC5B,GAAK6oC,EAAL,CAEA,IAAI6+K,EAAiBH,EAAY/5M,QAAQxN,GAgBzCknN,EAAiB7uM,OAAOqvM,EAAgB,EAAGpqG,EAAAA,cAAoB2oG,GAAe,CAAEjmN,IAAKwmN,GAAY39K,GAAQ25I,WAAW,EAAOC,eAf9G,WACT4kC,EAAYp6H,OAAOjtF,GACnBmnN,EAAQl6H,OAAOjtF,GAEf,IAAI2nN,EAAcP,EAAgBt5M,QAAQ+wG,WAAU,SAAU+oG,GAAgB,OAAOA,EAAa5nN,MAAQA,CAAK,IAG/G,GAFAonN,EAAgBt5M,QAAQuK,OAAOsvM,EAAa,IAEvCR,EAAQh9L,KAAM,CAEf,GADAi9L,EAAgBt5M,QAAUk5M,GACA,IAAtB7hH,EAAUr3F,QACV,OACJ+4M,IACApkC,GAAkBA,GACtB,CACJ,EACmJnT,OAAQA,EAAQ42C,sBAAuBA,GAAyBr9K,GAjBzM,CAHA,CAqBd,IAGAq+K,EAAmBA,EAAiBr4M,KAAI,SAAUg6B,GAC9C,IAAI7oC,EAAM6oC,EAAM7oC,IAChB,OAAOmnN,EAAQz5K,IAAI1tC,GAAQ6oC,EAAUy0E,EAAAA,cAAoB2oG,GAAe,CAAEjmN,IAAKwmN,GAAY39K,GAAQ25I,WAAW,EAAM0jC,sBAAuBA,GAAyBr9K,EACxK,IAMQy0E,EAAAA,cAAoBA,EAAAA,SAAgB,KAAM6pG,EAAQh9L,KACpD+8L,EACAA,EAAiBr4M,KAAI,SAAUg6B,GAAS,OAAOm6F,EAAAA,EAAAA,cAAan6F,EAAQ,IAC9E,EEvJMg/K,IAASnkF,EAAAA,EAAAA,aACd,WAAgH98B,GAAS,IAAD,EAArHk6G,EAAW,EAAXA,YAAax6F,EAAQ,EAARA,SAAUvsG,EAAI,EAAJA,KAAM/W,EAAK,EAALA,MAAM,EAAD,EAAE0L,QAAAA,OAAO,MAAG,GAAE,EAAE0yE,EAAY,EAAZA,aAAc87E,EAAc,EAAdA,eAAe,EAAD,EAAEl7E,SAAAA,OAAQ,OAAQ,EAAE8lI,EAAO,EAAPA,QACpG,OACC,iBAAKhmL,UAAS,iBAAYo7H,GAAkC,IAAK,UAC/Dl6J,IAAS,2BAAQA,KAElB,gBAAK8+B,UAAU,kBAAiB,UAC/B,oBAAQ/nB,KAAMA,EAAMusG,SAAUA,EAAUllC,aAAcA,EAAcwlB,IAAKA,EAAK5kB,SAAUA,EAAS,UAC/F8+H,IAAe,mBAAQh/M,MAAM,GAAE,SAAEg/M,IAC1B,OAAPpyM,QAAO,IAAPA,GASE,QATK,EAAPA,EACEm6C,MAAK,SAACl7C,EAAGnN,GACV,IAAMunN,EAAkBD,GAAW,cAC7BE,EAAOr6M,EAAEo6M,GACTE,EAAOznN,EAAEunN,GACf,MAAoB,kBAATC,GAAqC,kBAATC,EAC/BD,EAAOC,EAERnnN,OAAOknN,GAAMxgK,cAAc1mD,OAAOmnN,GAC1C,WAAE,WATK,EAAP,EAUEp5M,KAAI,WAA2CqvJ,GAAG,IAA3Cp8J,EAAK,EAALA,MAAO49G,EAAW,EAAXA,YAAY,EAAD,EAAE19B,SAAAA,OAAQ,OAAQ,SAC5C,mBAAQlgF,MAAOA,EAAiBkgF,SAAUA,EAAS,SACjD09B,GADyBw+C,EAElB,WAMhB,IAED,MCgUA,GAvVwB,WACvB,MAAiC7a,KAAzBgB,EAAG,EAAHA,IAAKT,EAAS,EAATA,UAAWpM,EAAI,EAAJA,KACxB,GAA4CvqC,EAAAA,EAAAA,UAAS,IAAG,eAAjDi7G,EAAc,KAAEC,EAAiB,KACxC,GAA8Cl7G,EAAAA,EAAAA,UAAS,IAAG,eAAnDm7G,EAAe,KAAEC,EAAkB,KAC1C,GAAgDp7G,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAArDq7G,EAAgB,KAAEC,EAAmB,KAC5C,GAAsDt7G,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA3Du7G,EAAmB,KAAEC,EAAsB,KAClD,GAAoDx7G,EAAAA,EAAAA,WAAS,GAAM,eAA5Dy7G,EAAkB,KAAEC,EAAqB,KAChD,GAA8C17G,EAAAA,EAAAA,WAAS,GAAM,eAAtD27G,EAAe,KAAEC,EAAkB,KAE1C,GAAkC57G,EAAAA,EAAAA,UAAS,MAAK,eAAzC67G,EAAS,KAAEC,EAAY,KAExBC,EAAgB,CAAC,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAG7DC,EAAuBX,GAFH,CAAC,IAEwCvoN,SAASkU,SAASq0M,EAAiBxmN,UAAY,EAC5GonN,EAA0BV,GAAuBQ,EAAcjpN,SAASkU,SAASu0M,EAAoB1mN,UAAY,EAEjHqnN,GAAUn8G,EAAAA,EAAAA,UAEVo8G,GAAmBt8G,EAAAA,EAAAA,UAAQ,WAChC,OAAOs7G,GAAmBA,EAAgBhpN,QAAU,CACrD,GAAG,CAACgpN,IAGEiB,GAAkBv8G,EAAAA,EAAAA,UAAQ,WAC/B,OACCo7G,EAAer5M,KAAI,SAAAy6M,GAClB,MAAO,CACNC,WAAYD,EAAIC,WAChBC,aAAcF,EAAIG,cAAkB,GACpCC,cAAeJ,EAAII,cAAc76M,KAAI,SAAA86M,GACpC,MAAO,CACNC,cAAeD,EAAIC,cACnBC,gBAAiBF,EAAIG,iBAAqB,GAE5C,IAEF,KAAM,EAER,GAAG,CAAC5B,IAGE6B,GAAgBj9G,EAAAA,EAAAA,UAAQ,WAC7B,OACCu8G,EAAgBx6M,KAAI,SAAAy6M,GACnB,MAAO,CACNxnN,MAAOwnN,EAAIC,WACX7pG,YAAa4pG,EAAIE,aAEnB,KAAM,EAER,GAAG,CAACtB,IAGE8B,GAAmBl9G,EAAAA,EAAAA,UAAQ,WAChC,MAAKjtG,OAAO0uC,KAAK+5K,GAAkBlpN,OAAS,GAA5C,CACA,IAAM6qN,EAAqBZ,EAAgBtkN,MAAK,SAAAukN,GAAG,OAAIA,EAAIC,aAAejB,EAAiBxmN,KAAK,IAChG,OAAImoN,EACIA,EAAmBP,cAAc76M,KAAI,SAAA86M,GAC3C,IAAMO,EAAUlB,EAAcjpN,SAAS4pN,EAAIC,eACrCO,EAAkB/B,EAAgBjzL,MAAK,SAAAi1L,GAAI,OAAIT,EAAIC,gBAAkBQ,EAAK71E,aAAa,IAC7F,MAAO,CACNzyI,MAAO6nN,EAAIC,cACXlqG,YAAaiqG,EAAIE,gBACjB7nI,SAAUmoI,IAAoBD,EAEhC,IACM,EAZ8C,CAatD,GAAG,CAAChC,EAAgBI,EAAkBF,IAEhCiC,EAAiB,yCAAG,yGACKhmE,EAAInQ,kBAAkB,KAAD,GAA7Co2E,EAAe,SACEA,EAAgBlrN,OAAS,GAAG+oN,EAAkBmC,GAAiB,2CACtF,kBAHsB,oCAMvB59G,EAAAA,EAAAA,YAAU,YACT,uBAAC,yGAC+B23C,EAAIhQ,uBAAuB,KAAD,EACiC,OADpFk2E,EAAgB,SACEA,EAAiBnrN,OAAS,GAAGipN,EAAmBkC,GAAkB,SACpFF,IAAoB,KAAD,qCAH1B,EAKD,GAAG,IAGH,IAAMG,EAAoB,yCAAG,yFAC5BjC,EAAoB,CAAC,GACrBE,EAAuB,CAAC,GACxBU,IAAkB,OAAPA,QAAO,IAAPA,GAAgB,QAAT,EAAPA,EAASr7M,eAAO,OAAhB,EAAkB2kB,SAC7Bk2L,GAAsB,GAAM,2CAC5B,kBALyB,mCAQpB8B,EAAgB,yCAAG,WAAMC,GAAkB,4FACxBrmE,EAAI1P,mBAAmB+1E,GAAoB,KAAD,EAAnD,SAERC,EAAoBvC,EAAgBvsM,QAAO,SAAAytM,GAAG,OAAIA,EAAIh2E,WAAao3E,CAAkB,IAC3FrC,EAAmBsC,IACnB,2CACD,gBANqB,sCAShBC,EAAsB,SAAA1nL,GAC3B,OAAOA,EAAO9jC,OAAS,GAAK8jC,EAAO9mB,UAAU,EAAG,IAAM,MAAQ8mB,CAC/D,EAGM2nL,EAAsB,SAAAxoN,GAC3BA,EAAEwtF,iBACFg5H,GAAmB,GACnB,IAAM1uG,EAAO,IAAIq+B,SAAS2wE,EAAQr7M,SAC5Bo1M,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WACzC,GAA0B,KAAtBoyF,EAAS4H,SAAb,CAIA,IAAIC,EAAmB,KAClBlrN,OAAO0uC,KAAK+5K,GAAkBlpN,SAClC2rN,EAAmBhB,EAAchlN,MAAK,SAAAukN,GAAG,OAAIA,EAAIxnN,QAAUmS,SAASivM,EAAS4H,SAAS,IAClFjrN,OAAO0uC,KAAKw8K,GAAkB3rN,OAAS,GAAGmpN,EAAoBwC,GAJnE,MAFClC,GAAmB,EAQrB,EAGMmC,EAAkB,yCAAG,WAAM3oN,GAAC,wFAMD,GALhCA,EAAEwtF,iBACFg5H,GAAmB,GACb1uG,EAAO,IAAIq+B,SAAS2wE,EAAQr7M,SAC5Bo1M,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WACrCm6F,EAAmB,KACnBC,EAAuB,KACtBhI,EAASiI,cAAiBjI,EAASkI,UAAS,gBACvB,OAAzBvC,GAAmB,GAAM,8BAGtBP,EAAiBxmN,QAASohN,EAASiI,aAAY,iBAGJ,GAF9CF,EAAmBjB,EAAiBjlN,MAAK,SAAAukN,GAAG,OAAIA,EAAIxnN,QAAUmS,SAASivM,EAASiI,aAAa,IACzFtrN,OAAO0uC,KAAK08K,GAAkB7rN,OAAS,GAAGqpN,EAAuBwC,GACrEC,EAAuBD,EAAiBnpN,OACpCknN,EAAcjpN,SAASmrN,GAAsB,CAAD,2EACtCjC,GAAuBC,KACjCgC,EAAuBlB,GAAoBA,EAAiBA,EAAiB5qN,OAAS,GAAG0C,OACzF,QAE4B,OAF5B,UAEMupN,EAAS7zE,EAAKtG,SAAS,EAAD,QACVmT,EAAI/P,mBAAmB42E,EAAwC,QAApB,EAAEhI,EAASkI,iBAAS,QAAI,GAAIC,GAAQ,KAAD,IAA1Fl+J,EAAG,UAERk7J,GAAmB,SAAA56M,GAAI,wBAAQA,GAAI,CAAE0/C,GAAM,IAC3Cw7J,GAAsB,GACtBI,EAAa57J,EAAImmF,WACjB,mDAEDrxF,QAAQ3b,KAAK,EAAD,IAAQ,2DAErB,gBA9BuB,sCAiClBglL,GAAkCx+G,EAAAA,EAAAA,UAAQ,WAC/C,OAAIw7G,GAAoBA,EAAiB5oG,aAEvC,iBAAK59E,UAAU,+CAA8C,UAC3D8oL,EAAoBtC,EAAiB5oG,aACrC4oG,EAAiB5oG,cAAe,0BAAM,YAKxC,iCACC,SAAC,GAAM,CAAChxG,QAASq7M,EAAejJ,YAAY,sBAAsB/mM,KAAK,WAAW+tM,QAAQ,WAC1F,SAAC,GAAM,CAACthG,MAAM,SAASk2C,OAAK,EAACQ,eAAe,OAAO5qD,QAASu4G,MAIhE,GAAG,CAACvC,EAAkBW,EAAqBI,IAGrCkC,GAAqCz+G,EAAAA,EAAAA,UAAQ,WAClD,GAAIjtG,OAAO0uC,KAAK+5K,GAAkBlpN,OAAS,EAC1C,OAAI6pN,GAAuBC,GAEzB,iCACC,SAAC,GAAK,CAACnvM,KAAK,YAAY+mM,YAAW,eAAUmI,EAAsB,WAAa,eAAc,YAC9F,SAAC,GAAM,CAACziG,MAAM,SAASk2C,OAAK,EAACQ,eAAe,OAAO5qD,QAAS04G,OAGpDxC,GAAuBA,EAAoB9oG,aAEpD,iBAAK59E,UAAU,kDAAiD,UAC9D8oL,EAAoBpC,EAAoB9oG,aACxC4oG,EAAiB5oG,cAAe,0BAAM,YAKxC,iCACC,SAAC,GAAM,CAAChxG,QAASs7M,EAAkBlC,QAAQ,QAAQhH,YAAY,0BAA0B/mM,KAAK,kBAC9F,SAAC,GAAM,CAACysG,MAAM,SAASk2C,OAAK,EAACQ,eAAe,OAAO5qD,QAAS04G,MAKjE,GAAG,CAAC1C,EAAkBE,EAAqBU,EAAwBG,IAG7DmC,GAAoB,CACzBptG,QAAS,CAAE9sF,QAAS,GACpB2+I,QAAS,CACR3+I,QAAS,EACTg9D,WAAY,CACXokG,gBAAiB,GACjBF,KAAM,oBAKHi5B,GAAe,CACpBrtG,QAAS,CACR9sF,QAAS,EACT/sB,EAAG,IACH1B,EAAG,GAEJotK,QAAS,SAAAvpK,GAAK,MAAK,CAClB4qB,QAAS,EACT/sB,EAAG,EACH+pF,WAAY,CACX82C,MAAO0jF,EAAY,EAAY,IAARpiN,EACvBgsB,SAAU,IAEX,EACD85I,KAAM,CACLl7I,QAAS,EACT/sB,EAAG,IACH+pF,WAAY,CAAE57D,SAAU,MAIpBg5L,GAAmB,CACxBhT,OAAQ,CAAEpnL,QAAS,EAAGzuB,EAAG,IACzBohJ,QAAS,CAAE3yH,QAAS,EAAGzuB,EAAG,GAC1B8oN,MAAO,CACNr6L,QAAS,EACTzuB,EAAG,EACH0B,EAAG,CAAC,GAAI,GAAI,IAAK,EAAG,GAAI,EAAG,EAAG,GAC9B+pF,WAAY,CAAE57D,SAAU,MAI1B,OACC,iBAAKoP,UAAU,kBAAiB,WAC/B,gBAAKA,UAAU,yBAAwB,SAAC,oBACxC,iBAAKA,UAAU,wBAAuB,WACrC,UAAC2kL,GAAe,YACbiC,IAAuBN,EAAgBhpN,SACxC,gBAAK0iC,UAAU,+BAA8B,SAC3C8hH,EAAY,aAAe,2DAG7BwkE,GACAA,EAAgBhpN,OAAS,GACzBgpN,EAAgBv5M,KAAI,SAACu7M,EAAM1jN,GAC1B,OACC,UAAC6xM,GAAOO,IAAG,CACVrpC,SAAU+7C,GACVptG,QAAQ,UACR6xD,QAAQ,UACRzD,KAAK,OACL1qI,UAAU,aAAY,WAGtB,UAACy2K,GAAOO,IAAG,CACVrpC,SAAUg8C,GACV3pL,UAAU,iCACVwtI,OAAQ5oK,EACRklN,oBAAqB,WAChBxB,EAAK92E,WAAaw1E,GAAWC,EAAa,KAC/C,EAAE,WAEF,gBAAKjnL,UAAU,+CAA+C0kF,MAAO4jG,EAAKyB,aAAa,SACrFzB,EAAKyB,eAGNzB,EAAKyB,eAAgB,0BAAM,SAC5B,gBACC/pL,UAAU,kDACV0kF,MAAyB,KAAlB4jG,EAAK51E,SAAkB41E,EAAK0B,gBAAkB1B,EAAK51E,SAAS,SAElEo2E,EAAsC,KAAlBR,EAAK51E,SAAkB41E,EAAK0B,gBAAkB1B,EAAK51E,gBAG1E,gBAAK1yG,UAAU,qBAAqBwwE,QAAS,kBAAMm4G,EAAiBL,EAAK92E,SAAS,EAAE9sB,MAAM,oBAAmB,UAC5G,SAAC,GAAI,CAAC2yC,KAAK,aAAahvI,KAAM,SAvB1BigM,EAAK92E,SA2Bb,IACAo1E,IAAuBU,IACvB,kBAAMxiH,IAAKuiH,EAASrnL,UAAU,iCAAgC,WAC7D,SAACy2K,GAAOO,IAAG,CAEV16F,QAAQ,SACR6xD,QAAS24C,EAAkB,QAAU,UACrC9mL,UAAU,WACV2tI,SAAUi8C,GACVE,oBAAqB,WAEhBhD,GAAiBC,GAAmB,EACzC,EAAE,SAEDyC,GAVG,YAaJC,IACA,SAAChT,GAAOO,IAAG,CAEV16F,QAAQ,SACR6xD,QAAS24C,EAAkB,QAAU,UACrC9mL,UAAU,eACV2tI,SAAUi8C,GACVE,oBAAqB,WAEhBhD,GAAiBC,GAAmB,EACzC,EAAE,SAED0C,GAVG,uBAiBT,gBAAKzpL,UAAU,4BAA2B,UACzC,SAAC,GAAM,CACN0kF,MAAM,iBACNk2C,OAAK,EACLC,UAAU,UACV36E,SAAUonI,GAAoBV,EAC9Bp2G,QAASk4G,WAMf,EC9UA,GAdY,SAAH,GAA0E,IAApEuB,EAAS,EAATA,UAAW95L,EAAO,EAAPA,QAAS+5L,EAAS,EAATA,UAAWlvD,EAAQ,EAARA,SAAUxqD,EAAO,EAAPA,QAAS25G,EAAU,EAAVA,WAChE,OACC,iBAAKnqL,UAAU,MAAK,WACnB,gBAAKA,UAAU,aAAY,SAAEiqL,KAC7B,gBAAKjqL,UAAU,eAAc,SAC3B7P,IACO,OAAPA,QAAO,IAAPA,OAAO,EAAPA,EAAS7yB,UACF,OAAP6yB,QAAO,IAAPA,OAAO,EAAPA,EAASpjB,KACR,SAAAs9B,GAAI,OAAI8/K,GAAoC,oBAAfA,GAA6BA,EAAW9/K,EAAM,CAAE4/K,UAAAA,EAAW95L,QAAAA,EAAS+5L,UAAAA,EAAWlvD,SAAAA,EAAUxqD,QAAAA,GAAU,SAKtI,ECUM45G,GAAarsN,OAAO47I,OAAO,CAChC0wE,QAAS,UACTluL,SAAU,aAGLmuL,GAAuBvsN,OAAO47I,OAAO,CAC1C4wE,QAAS,EACTC,QAAS,EACTC,+BAAgC,EAChCC,+BAAgC,IA+vBjC,GA1vBqB,WACpB,MACCnpE,KADO7L,EAAI,EAAJA,KAAM6M,EAAG,EAAHA,IAAKvT,EAAO,EAAPA,QAAS6S,EAAe,EAAfA,gBAAiBF,EAAY,EAAZA,aAAcmB,EAAwB,EAAxBA,yBAA0BT,EAAe,EAAfA,gBAAiBC,EAAkB,EAAlBA,mBAEtG,EAAkCqa,GAAkB,OAAQ,IAAG,eAAxDguD,EAAS,KAAEzJ,EAAY,KACxB7yD,EAAW3C,KAEXk/D,GAAa1/G,EAAAA,EAAAA,QAAO,MAE1B,GAAgCC,EAAAA,EAAAA,eAASj+F,GAAU,eAA5CskI,EAAQ,KAAEq5E,EAAW,KAC5B,GAA0D1/G,EAAAA,EAAAA,WAAS,GAAM,eAAlE2/G,EAAqB,KAAEC,EAAwB,KACtD,GAA8B5/G,EAAAA,EAAAA,WAAS,GAAM,eAAtCqiG,EAAO,KAAEwd,EAAU,KAE1B,EAAwC/tD,IAAU,GAAM,eAAjDguD,EAAY,KAAEC,EAAe,KACpC,GAA4C//G,EAAAA,EAAAA,eAASj+F,GAAU,eAAxDi+M,EAAc,KAAEC,EAAiB,KACxC,GAA0CjgH,EAAAA,EAAAA,UAAS,IAAG,eAAhCkgH,GAAF,KAAkB,MAEtC,EAA4EpuD,IAAU,GAAM,gBAArFquD,GAA2B,MAAEC,GAAoC,MACxE,GAAsDtuD,IAAU,GAAM,iBAA/DuuD,GAAgB,MAAEC,GAAyB,MAClD,IAA4CtgH,EAAAA,EAAAA,eAASj+F,GAAU,iBAAxDmqM,GAAc,MAAEC,GAAiB,MACxC,IAA8BnsG,EAAAA,EAAAA,eAASj+F,GAAU,iBAA1CyqM,GAAO,MAAEC,GAAU,MAC1B,GAA4C36C,IAAU,GAAM,iBAArDyuD,GAAW,MAAEC,GAAoB,MAExC,IAAgCxgH,EAAAA,EAAAA,WAAS,GAAM,iBAAxCygH,GAAQ,MAAEC,GAAW,MAC5B,IAA8B1gH,EAAAA,EAAAA,UAASi/G,GAAWC,SAAQ,iBAAnDyB,GAAO,MAAEC,GAAU,MAE1B,IAAsD5gH,EAAAA,EAAAA,WAAS,GAAM,iBAA9D6gH,GAAmB,MAAEC,GAAsB,MAClD,IAAoD9gH,EAAAA,EAAAA,UAAS,IAAG,iBAAzD+gH,GAAkB,MAAEC,GAAqB,MAChD,IAAsDhhH,EAAAA,EAAAA,UAAS,IAAG,iBAA3DihH,GAAmB,MAAEC,GAAsB,MAE5ChF,IAAUn8G,EAAAA,EAAAA,UAMVswG,KAJiBxwG,EAAAA,EAAAA,UAAQ,WAC9B,OAAqB,OAAdmgH,QAAc,IAAdA,OAAc,EAAdA,EAAgBmB,8BAA+B,aACvD,GAAG,CAACnB,KAEgBngH,EAAAA,EAAAA,UAAQ,WAC3B,OAAKgkC,EACEA,EAAQA,QADM,EAEtB,GAAG,CAACA,KAGEu9E,IAAmBvhH,EAAAA,EAAAA,UAAQ,WAChC,IAAKwwG,GAAa,OAAQ,EAC1B,IAAMgR,EAAqB,OAAXhR,SAAW,IAAXA,QAAW,EAAXA,GAAav4M,MAAK,SAAAu4J,GACjC,OAAOA,CACR,IACA,OAAKgxD,EACEA,EAAQC,0BADO,CAEvB,GAAG,CAACjR,MA0DJ5wG,EAAAA,EAAAA,YAAU,WACgB,aAgCxB,OAhCwB,0BAAzB,oGACM8qC,EAAK,CAAD,gEACiB6M,EAAIjR,iBAAiB,KAAD,EAA7B,GAAXkqE,EAAW,OAEA,CAAD,eACQ,OAAvBmQ,KAAuB,0BAMxB,OAHInQ,GAAeA,EAAYl+M,OAAS,GACvCukJ,EAAgB,CAAE31I,KAAMoiI,EAA6B9rC,QAASg5G,IAE/D,UAC6Bj5D,EAAInK,mBAAmB,KAAD,GAI2E,OAJxHs0E,EAAc,SACEA,EAAepvN,OAAS,GAAG+tN,EAAiBqB,GAE5DC,GACM,OAAXnR,QAAW,IAAXA,OAAW,EAAXA,EAAav4M,MAAK,SAAAu4J,GAAM,OAAIA,EAAOixD,2BAA6BnC,GAAqBG,8BAA8B,OAAK,EAAM,EAAD,QAChGloE,EAAI/M,uBAAuBE,EAAKvG,QAAQ,KAAD,GAA/Dy9E,EAAe,OACjB7uN,OAAO0uC,KAAKkgL,GAAcrvN,OAAS,GAAKS,OAAO0uC,KAAKmgL,GAAiBtvN,OAAS,IAC3EuvN,EAAU,OACZlC,GAAS,IACZ3uD,MAAO4wD,EAAgBl0E,UACvBo0E,MAAOF,EAAgBh0E,SACvBrkD,MAAOq4H,EAAgBr4H,MACvBm7C,gBAAiBk9E,EAAgBG,cAGlCprE,EAAa,CAAEz1I,KAAMkiI,EAAkC5rC,QAASqqH,IAChE3L,EAAa2L,GACbd,GAAW,MACXx/K,YAAW,kBAAMw/K,GAAW3B,GAAWC,QAAQ,GAAE,OACjD,4CACD,yBAjCe,WACS,wBAiCzB2C,EACD,GAAG,KAGHpiH,EAAAA,EAAAA,YAAU,WACT,KAAI2hH,IAAoB,GAAxB,CACA,GAAIA,KAAqBjC,GAAqBE,QAI7C,OAFA6B,GAAuB,kDACvBtB,GAAyB,GAG1B,GACCwB,KAAqBjC,GAAqBG,gCAC1C8B,KAAqBjC,GAAqBI,+BAY1C,OATI6B,KAAqBjC,GAAqBG,gCAC7C4B,GAAuB,qCAMxBY,UACAlC,GAAyB,GAI1BA,GAAyB,GACzBsB,GAAuB,GAzBU,CA0BlC,GAAG,CAACE,KAEJ,IAAMU,GAAgC,yCAAG,mGAClC1qE,EAAIxJ,8BAA8B,KAAD,sCACvC,kBAFqC,mCAIhCm0E,GAAsB,yCAAG,gGACmD,GAD1C17E,EAAQ,EAARA,SAAUiyE,EAAgB,EAAhBA,iBAAkBhoD,EAAY,EAAZA,aAC/DxsB,EAAgBD,EAAQA,QAAQ/rI,MAAK,SAAAu4J,GAAM,OAAIA,EAAOhqB,WAAaA,CAAQ,IAC5D,CAAD,oDAEjBiyE,GACAhoD,IAAiB7f,EAAaG,OAC9B0f,IAAiB7f,EAAaI,eAC9Byf,IAAiB7f,EAAaK,KAC9Bwf,IAAiB7f,EAAaM,MAAK,gBAGO,OAD1C2F,EAAgB,CAAE31I,KAAMoiI,EAAoC9rC,QAASysC,IACrEof,EAAS,IAAD,OAAK5P,EAAOO,OAAM,YAAIxN,IAAY,0BAGvCiqB,IAAiB7f,EAAaE,MAUjC+F,EAAgB,CAAE31I,KAAMoiI,EAAoC9rC,QAAQ,KAAMysC,KAC1Em8E,EAAkB,KAAKn8E,IACvBof,EAAS,GAAD,OAAI5P,EAAOQ,UAAS,YAAIzN,KAEhC,2CACD,gBA7B2B,sCAgFtBwxE,MAX4C,OAAdmI,QAAc,IAAdA,OAAc,EAAdA,EAAgBgC,sBAAuB,IAAIryL,QAAQ,MAAO,KAW3E,yCAAG,WAAOuoL,EAAaC,GAAe,4EAC1B,GAA9B2I,IAAuB,GAAO,SAGD,KAAb,OAAX5I,QAAW,IAAXA,OAAW,EAAXA,EAAa/lN,SAAiBo8I,EAAYY,kBAAkB9jF,MAAMpyB,KAAKi/K,GAAY,gBAEzD,OAD7B8I,GAAsB,sGACtBF,IAAuB,GAAM,mBACtB,GAAK,WAGE,OAAX5I,QAAW,IAAXA,OAAW,EAAXA,EAAahqL,WAA0B,OAAfiqL,QAAe,IAAfA,OAAe,EAAfA,EAAiBjqL,QAAM,iBAErB,OAD7B8yL,GAAsB,4DACtBF,IAAuB,GAAM,mBACtB,GAAK,yBAGK1pE,EAAIlR,mBAAmBqE,EAAKvG,OAAQk0E,GAAa,KAAD,GAAzD,UACA,CAAD,gBAIL,OAHFvgE,EACC,wGACA,GACC,mBACK,GAAK,QAIyB,OAFtCA,EAAyB,0CACnB1uI,EAAQmuI,EAAI1R,WAAW6E,EAAKnhD,MAAO8uH,GACzCnC,EAAa,OAAKyJ,GAAS,IAAEv2M,MAAAA,KAAS,mBAC/B,GAAI,kCAEX+rC,QAAQja,MAAM,EAAD,IACb48G,EACC,wGACA,GACC,0DAEH,gBAnCkB,yCAsCbsqE,GAAoC,yCAAG,WAAM7sN,GAAC,sFAIC,GAHnD,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACHk+H,IAAuB,GACjB5zG,EAAO,IAAIq+B,SAAS2wE,GAAQr7M,SAC5Bo1M,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WAC3B,CAAD,gDAEb,GADAjxH,OAAOixH,QAAQoyF,GAAU71M,SAAQ,gBAAErN,GAAF,YAAK,UAAOkjN,EAASljN,GAAOkjN,EAASljN,GAAKm7B,MAAM,IAE7EyyL,KAAY1B,GAAWC,QAAO,oBAC5BlqE,EAAciB,MAAM5qF,MAAMpyB,KAAKg9K,EAAgB,OAAG,CAAD,gBAEJ,OADjD6K,IAAuB,GACvBE,GAAsBhsE,EAAciB,MAAMl7G,OAAO,8BAI7Ci6G,EAAcG,gBAAgB9pF,MAAMpyB,KAAKg9K,EAAgB,OAAG,CAAD,gBAEJ,OAD3D6K,IAAuB,GACvBE,GAAsBhsE,EAAcG,gBAAgBp6G,OAAO,+CAG1Ck7K,GAAQ,+CAAZ,GAAHljN,EAAG,WAERkjN,EAASljN,GAAK,CAAD,gBAEiC,OADlD+tN,IAAuB,GACvBE,GAAsB,4BAA4B,8BAI9ChsE,EAAcO,sBAAsBlqF,MAAMpyB,KAAKg9K,EAASljN,KAAiB,UAARA,GAA2B,UAARA,EAAe,iBAEjD,OADtD+tN,IAAuB,GACvBE,GAAsBhsE,EAAcM,WAAWv6G,OAAO,oEAKtCq8G,EAAI9J,uBAAuB2oE,GAAU,KAAD,GAA7C,KAAH/1J,EAAG,QACDgiK,YAAY,CAAD,gBAIC,OAHnBtB,GAAW3B,GAAWC,SACtBU,GAAyB,GACzBsB,GAAuB,6CACvBR,IAAY,GAAO,2BAIe,OADnCI,IAAuB,GACvBE,GAAsB9gK,EAAIzD,SAAS,2BAIE,OAA9B0lK,EAAmClM,EAAnCkM,aAAcC,EAAqBnM,EAArBmM,iBAAgB,UACVvK,GAAcsK,EAAcC,GAAkB,KAAD,GAAtD,UACA,CAAD,kDAGlB1B,IAAY,GACZE,GAAW3B,GAAWC,SAAS,4CAC/B,gBAvDyC,sCAyDpCmD,GAA4B,SAAAjtN,GAChC,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACH89H,IAAY,GACZM,GAAsB,IACtBE,GAAuB,IACvBN,IAAW,SAAApgN,GAAI,OAAKA,IAASy+M,GAAWjuL,SAAWiuL,GAAWC,QAAUD,GAAWjuL,QAAQ,GAC5F,EAEMsxL,GAA0B,SAAAltN,GAC/BA,EAAEwtF,iBACFo+H,GAAsB,IACtBE,GAAuB,IACvBR,IAAY,GACRC,KAAY1B,GAAWjuL,UAC1B4vL,GAAW3B,GAAWC,QAExB,EAEMqD,GAA0B,SAAAntN,GAC/BA,EAAEwtF,iBACF89H,IAAY,SAAAlgN,GAAI,OAAKA,CAAI,IACzBwgN,GAAsB,IACtBE,GAAuB,IACvBrB,GAAW,EACZ,EAGM9R,GAAkB,yCAAG,gGACrB1nE,EAAS,CAAD,gEAEU+Q,EAAIvQ,eAAeR,GAAU,KAAD,EAArC,OAAR2nE,EAAQ,gBACS52D,EAAItQ,kBAAkBT,GAAU,KAAD,EAAxC,GAAR4nE,EAAQ,OACTD,GAAaC,EAAQ,oDAEpBj6C,EAAS,IAAIryH,YACZusK,UAAY,WAClB,IAAMC,EAAan6C,EAAO1+J,OAC1B62M,GAAkBgC,EACnB,EAEAn6C,EAAOnyH,cAAcosK,GACrBxB,GAAWuB,GACXsS,KACIH,IAA6BC,KAAuC,4CACxE,kBAjBuB,mCAoBlBhS,GAAc,yCAAG,WAAM/9C,GAAM,+EAC7BA,EAAO,CAAD,gDAGX,OAFIA,EAAOhqB,UAAUq5E,EAAYrvD,EAAOhqB,UAExC,SACwB+Q,EAAIxL,mBAAmBykB,EAAOhqB,UAAU,KAAD,EAAhD,GAATm8E,EAAS,OACA,CAAD,mDACA,OAATA,QAAS,IAATA,GAAAA,EAAWC,sBAAsB,CAAD,gBACG,OAAvCrC,KAAuC,2BAGxCrS,GAAmB19C,EAAOhqB,UAAU,4CACpC,gBAZmB,sCA2Bdq8E,GAAwB,WAC7B7C,GAAW,GACXqB,GAAuB,IACvBF,GAAsB,IACtB,IAAM9zG,EAAO,IAAIq+B,SAAS2wE,GAAQr7M,SAC5Bo1M,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WACzC,GAAKoyF,EAAL,CACA,IAAM0M,EAAmB,CACxBn1E,WAAYjD,EAAKsmB,MACjBnjB,UAAWnD,EAAKo3E,MAChBh0E,MAAOpD,EAAKhG,gBACZn7C,MAAOmhD,EAAKnhD,OAIb,GADsBx2F,OAAO0uC,KAAK20K,GAAU/tL,MAAK,SAAAn1B,GAAG,OAAIkjN,EAASljN,KAAS4vN,EAAiB5vN,EAAI,MAC1C,KAA9BkjN,EAASmM,kBAAqD,KAA1BnM,EAASkM,cAKpE,OAAIxB,KAAY1B,GAAWjuL,UAAau9G,EAAYY,kBAAkB9jF,MAAMpyB,KAAKg9K,EAASkM,mBAA1F,GACCnB,GAAsB,sGACtBF,IAAuB,IAChB,GAPPjB,GAAW,EAVS,CAmBtB,EAGM+C,IAAuB/iH,EAAAA,EAAAA,UAAQ,WACpC,OAAOwwG,GAAYzhM,QAAO,SAAAyhJ,GAAM,OAAIrpJ,SAASqpJ,EAAOg9C,iBAAmB,GAAG,GAC3E,GAAG,CAACgD,KAGEwS,IAAyBhjH,EAAAA,EAAAA,UAAQ,WACtC,IAAK8gH,GAAS,OAAO,SAAC,GAAO,CAAC3pE,SAAO,IACrC,OAAQ2pE,IACP,KAAK1B,GAAWC,QACf,OACC,iBAAKrqL,UAAU,2BAA0B,WACxC,SAAC,GAAK,CAEL9+B,MAAM,aACN+W,KAAK,aACLqnE,aAAco2D,EAAKsmB,MACnB97E,UAAW0rI,GACXpnG,SAAUqpG,IALN,eAOL,SAAC,GAAK,CAEL3sN,MAAM,YACN+W,KAAK,YACLqnE,aAAco2D,EAAKo3E,MACnB5sI,UAAW0rI,GACXpnG,SAAUqpG,IALN,cAOL,SAAC,GAAK,CAEL3sN,MAAM,YACN+W,KAAK,QACLqnE,aAAco2D,EAAKhG,gBACnBxvD,UAAW0rI,GACXpnG,SAAUqpG,IALN,UAOL,SAAC,GAAK,CAAa3sN,MAAM,QAAQ+W,KAAK,QAAQqnE,aAAco2D,EAAKnhD,MAAOrU,UAAW0rI,GAAUpnG,SAAUqpG,IAA5F,YAGd,KAAKzD,GAAWjuL,SACf,OACC,iBAAK6D,UAAU,4BAA2B,WACzC,SAAC,GAAK,CAAoB9+B,MAAM,eAAe+W,KAAK,eAAeioE,UAAW0rI,GAAUpnG,SAAUqpG,IAAvF,iBACX,SAAC,GAAK,CAEL3sN,MAAM,mBACN+W,KAAK,mBACLioE,UAAW0rI,GACXpnG,SAAUqpG,IAJN,uBAQR,QACC,OAEH,GAAG,CAACn4E,EAAM62E,GAAkBT,GAASF,KAG/BqC,IAAsBjjH,EAAAA,EAAAA,UAAQ,WACnC,OAAI4gH,IAEF,iCACC,SAAC,GAAM,CACNhxD,OAAK,EACLl2C,MAAOonG,KAAY1B,GAAWjuL,SAAW,iBAAmB,eAC5Dq0E,QAAS48G,GACTltI,UAAWstH,KAGZ,SAAC,GAAM,CAAC5yC,OAAK,EAACl2C,MAAM,SAASlU,QAASi9G,SAKxC,iCACC,SAAC,GAAM,CAAC7yD,OAAK,EAACl2C,MAAM,eAAelU,QAASk9G,GAAyBxtI,SAAU4qI,KAC/E,SAAC,GAAM,CACNlwD,OAAK,EACLl2C,MAAM,kBACN02C,eAAe,kBACf5qD,QAASg9G,OAKb,GAAG,CAAC1B,GAASF,GAAUd,EAAuBtd,IAGxC0gB,IAAqBljH,EAAAA,EAAAA,UAAQ,WAClC,OACCuhH,KAAqBjC,GAAqBE,SACzC+B,KAAqBjC,GAAqBI,gCAAkCI,GAEtE,SAAC,GAAI,CAACzzD,KAAK,cAGfk1D,KAAqBjC,GAAqBG,gCAAuC,SAAC,GAAI,CAACpzD,KAAK,aACzF,IACR,GAAG,CAACk1D,GAAkBzB,IAEhBqD,IAAkBnjH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,EACrC,GAAY,OAAPgkC,QAAO,IAAPA,GAAAA,EAASA,QAEd,OADgC,OAAPA,QAAO,IAAPA,GAAgB,QAAT,EAAPA,EAASA,eAAO,WAAT,EAAP,EAAkBj1H,QAAO,SAAAyhJ,GAAM,OAAKA,EAAOt7E,UAA8C,eAAjCs7E,EAAO4yD,qBAAqC,GAE9H,GAAG,CAAQ,OAAPp/E,QAAO,IAAPA,OAAO,EAAPA,EAASA,UAEPq/E,GAAc7S,GAAYl+M,OAAS,IAAM,EAAI,EAAI,EAEjDgxN,GAAsBpxN,KAAW,gBAAe,sBAC/CmxN,IAAgBA,KAGvB,OACC,4BACC,gBAAKruL,UAAU,eAAc,UAC5B,UAAC,GAAS,YACT,iBAAKA,UAAU,8BAA6B,WAC3C,gBAAKA,UAAU,uCAAsC,UACpD,iBAAKA,UAAU,SAAQ,WACtB,gBAAKA,UAAU,gBAAe,SAAC,aAC/B,gBAAKA,UAAU,kBAAiB,UAC/B,kBAAM8f,GAAG,OAAOglD,IAAKuiH,GAASzI,SAAUwO,GAAqC,UAC3EhB,KACA,iBAAKpsL,UAAU,iBAAgB,UAC7BkuL,IACD,gBAAKluL,UAAU,0BAA0BogD,wBAAyB,CAAEqb,OAAQ2wH,SAG7E4B,GACAhC,IAAuBE,KACvB,gBAAKlsL,UAAU,gBAAgBogD,wBAAyB,CAAEqb,OAAQywH,OAEnE,gBAAKlsL,UAAU,sBAAqB,SAAEiuL,gBA6B1C,gBAAKjuL,UAAU,gDAA+C,UAC7D,SAAC,GAAe,UAGlB,iBAAKA,UAAU,2BAA0B,WACxC,gBAAKA,UAAU,2BAA0B,SAAC,gBAC1C,gBAAKA,UAAU,qBAAoB,SAAEmuL,GAAgBphN,KA5ZhC,SAAAyuJ,GACzB,IAAM+yD,EAAa/yD,EAAOC,eAAiB7f,EAAaC,SAExD,OACC,SAAC,GAAU,CACVrrC,QAAS08G,GACT17E,SAAUgqB,EAAOhqB,SAEjBu0B,SAAUvK,EAAOg9C,eACjB9zF,MAAO82C,EAAOi+C,WACd8J,UAAW/nD,EAAOgzD,wBAClBtuI,SAAUs7E,EAAOt7E,SACjBujI,iBAAkB8K,EAClB9yD,aAAcD,EAAOC,aACrB6wD,4BAA6B9wD,EAAO8wD,4BACpCmC,kBAAmBjzD,EAAOizD,kBAC1BtB,oBAAqB3xD,EAAO2xD,qBATvB3xD,EAAOhqB,SAYf,UA2YI,iBAAKxxG,UAAU,gCAA+B,WAC7C,gBAAKA,UAAU,uCAAsC,SAAC,qBACtD,gBAAKA,UAAU,oBAAmB,UACjC,iBAAKA,UAAU,0BAAyB,WACvC,iBAAKA,UAAU,2BAA0B,UACvC01G,EAAKsmB,MAAM,uBAAqB,KACjC,kBAAMh8H,UAAU,MAAK,UACnB,IACA+tL,GAAqBzwN,OAAO,IAAEk+M,GAAYl+M,OAAQ,OAC5C,IAAI,sBAGb,gBAAK0iC,UAAU,8BAA6B,UAC3C,gBAAKA,UAAWsuL,GAAoB,SAClC9S,GACCz0J,MAAK,SAACl7C,EAAGnN,GAAC,OAAKA,EAAE85M,eAAiB3sM,EAAE2sM,cAAc,IAClDzrM,KAAI,WAAqBqvJ,GAAS,IAA3Bo8C,EAAc,EAAdA,eAEDkW,GAAUtyD,EAAM,GAAKiyD,IAAe,EAEpCM,EAASvyD,IAAQo/C,GAAYl+M,OAAS,EACtCsxN,EAAcz8M,SAASqmM,IAAmB,IAC1Cx4K,EAAY9iC,KAAW,gBAAe,QAC3C2oB,KAAM8oM,IAAWC,GAAuB,IAARxyD,EAChCyyD,UAAW18M,SAASqmM,IAAmB,IACvCl4M,KAAM87J,IAAQ2xD,GAAqBzwN,QAClC,cAAgBoxN,IAAWC,IAE7B,OACC,+BACC,gBAAK3uL,UAAWA,EAAqBo8H,IAAKA,EAAI,UAC3CuyD,IAAU,gBAAK3uL,UAAU,YADIo8H,IAKnC,cAML,gBAAKp8H,UAAU,oBAAmB,SAChCw7K,IACAA,GAAYzuM,KAAI,SAAAyuJ,GACf,OACC,SAACszD,GAAe,CACfrV,WAAYj+C,EAAOi+C,WACnBsV,aAAcvzD,EAAOw9C,wBACrBR,eAAgBh9C,EAAOg9C,eACvBt4H,SAAUs7E,EAAOg9C,eAAiB,MAASh9C,EAAOt7E,WAAas7E,EAAOwzD,mBACtEvL,iBAAkBjoD,EAAOC,eAAiB7f,EAAaC,SACvDrrC,QAAS,kBAAM+oG,GAAe/9C,EAAO,GAGxC,eAKL,SAAC,GAAK,CAACz9H,UAAWktL,EAAc3mB,cAAe4mB,EAAiB9vD,eAAe,wBAAwB6zD,iBAAe,YACrH,4BACC,wBAAI,kDAAkD,gDAEtD,kBAAM,oDACN,mBACA,kBAAM,eACN,gBAAKjvL,UAAU,eAyBjB,SAAC,GAAK,CACLo7H,eAAe,oBACfr9H,UAAWutL,GACXhnB,cAAeinB,GAAqC,UAEpD,iBAAKvrL,UAAU,6BAA4B,WAC1C,iBAAKA,UAAU,oCAAmC,UAAC,oKAEnB,mBAC/B,kBAAS,iFAEV,iBAAKA,UAAU,cAAa,WAC3B,SAAC,GAAM,CAACo7H,eAAe,WAAW12C,MAAM,WAAWlU,QAAS,kBA1dxC,SAAAghC,GACnBA,GACL6c,EAAS,GAAD,OAAI5P,EAAOW,OAAM,YAAI5N,GAC9B,CAuduE09E,CAAiB19E,EAAS,KAC5F,SAAC,GAAM,CAAC4pB,eAAe,UAAU12C,MAAM,UAAUlU,QAAS0oG,cAI7D,UAAC,GAAK,CAACn7K,UAAWytL,GAAkBlnB,cAAemnB,GAA2BrwD,eAAe,kBAAiB,WAC7G,0BACC,gBAAKp7H,UAAU,uBAAuBjJ,IAAG,UAAKsgL,SAE/C,SAAC,GAAM,CAAC3yF,MAAM,eAAelU,QAhUL,WAC1B,GAAKmnG,GAAL,CAEA,IAAM3sK,EAAOvnC,SAASwxB,cAAc,KACpC+V,EAAKE,KAAOq5G,IAAIuZ,gBAAgB65C,IAEhC3sK,EAAKs+H,SAAQ,cACbt+H,EAAK+yH,QACLxxH,YAAW,kBAAMg4G,IAAI01D,gBAAgBjvK,EAAKE,KAAK,GAAE,IAP7B,CAQrB,EAuT6D4vH,QAAQ,eAAeF,OAAK,QAEvF,SAAC,GAAY,CACZ78H,UAAWskH,EAAgBF,QAC3Bx1G,OAAQ01G,EAAgBD,OAAS,SAAW,YAC5CkiD,cAAe,kBAAMhiD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,EAAC,UAExF,gBAAKhiE,wBAAyB,CAAEqb,OAAQ4mD,EAAgBz6F,cAEzD,SAAC,GAAO,CAACk9C,IAAK8lH,EAAW,SAAC,YAC1B,UAAC,GAAK,CAAC7sL,UAAW2tL,GAAapnB,cAAeqnB,GAAsBvwD,eAAe,eAAe27C,iBAAe,aAChH,iBAAK/2K,UAAU,sBAAqB,UAAC,+CAEpC,kBAAM,2BAEP,SAAC,GAAM,CACN0kF,MAAM,SACNlU,QAAS,WACRmxC,EAAa,CAAEz1I,KAAMkiI,IACrB8yE,EAAa,CAAC,EACf,EACAtmD,OAAK,SAKV,EAIak0D,GAAkB,SAAH,GAA2D,IAArDrV,EAAU,EAAVA,WAAYjB,EAAc,EAAdA,eAAgBt4H,EAAQ,EAARA,SAAUswB,EAAO,EAAPA,QACjE49G,GAAwBpjH,EAAAA,EAAAA,UAAQ,WACrC,OAAI74F,SAASqmM,IAAmB,GAAKrmM,SAASqmM,GAAkB,IACxD,cACGrmM,SAASqmM,IAAmB,IAC/B,iBADD,CAGR,GAAG,CAACA,IAMEmL,GAAc34G,EAAAA,EAAAA,UAAQ,WAC3B,OAAI74F,SAASqmM,IAAmB,EAAU,cACjCrmM,SAASqmM,IAAmB,IAAY,YAC1C,aACR,GAAG,CAACA,IAEJ,OACC,iBAAKx4K,UAAS,0BAAqBouL,GAAyB59G,QAAUtwB,OAAyBhzE,EAX5E,WACnBsjG,GAA8B,oBAAZA,GAA0BA,GAC7C,EAS0G,WACxG,gBAAKxwE,UAAU,2BAA0B,UACxC,gBAAKA,UAAU,0CAAyC,UACvD,gBAAKA,UAAS,wCAAmCkgD,EAAW,WAAa,WAG3E,iBAAKlgD,UAAS,kCAA6BkgD,EAAW,aAAe,IAAK,WACzE,gBAAKlgD,UAAU,iCAAgC,SAAEy5K,KACjD,gBAAKz5K,UAAS,0CAAqCouL,GAAwB,SAAEzK,IAC5EnL,GAAkBA,GAAkB,KACpC,+BACC,gBAAKx4K,UAAU,gCAA+B,UAC7C,SAAC,GAAM,CAAC46H,OAAK,EAACl2C,MAAM,mBAAmBo2C,QAAQ,mBAI9C,UAIR,EC7zBA,GAXqB,WACpB,OACC,UAAC,GAAS,CAAC96H,UAAU,eAAc,WAClC,gBAAKA,UAAU,aAAY,SAAC,kBAC5B,iBAAKA,UAAU,YAAW,UAAC,eACf,cAAGkL,KAAMuzG,EAAOE,MAAM,SAAC,mBAItC,ECVe,SAASwwE,GAAW,GAc/B,IAbHC,EAAM,EAANA,OACAC,EAAY,EAAZA,aACAC,EAAU,EAAVA,WACApuN,EAAK,EAALA,MACAquN,EAAa,EAAbA,cACAC,EAAW,EAAXA,YACAC,EAAqB,EAArBA,sBACAC,EAAmB,EAAnBA,oBACAC,EAAU,EAAVA,WACAC,EAAY,EAAZA,aAAa,EAAD,EACZC,cAAAA,OAAa,OAAQ,MACrB3jN,KAAAA,OAAI,MAAG,OAAM,MACbmZ,OAAAA,OAAM,MAAG,aAAY,EAEfyqM,EAAkB,SAAH,EAAgBlwI,GAAQ,IAAlBz1C,EAAM,EAANA,OACpB4lL,EAAU5lL,EAAOnqC,MAAQsiD,KAAOnY,EAAOnqC,OAAOqlB,OAAOA,GAAU,KACjEu6D,GAAoB,oBAAPA,GAAmBA,EAAGmwI,EACxC,EAEA,OACC,iBAAK/vL,UAAU,aAAY,UACzB9+B,IAAS,2BAAQA,KAClB,iBAAK8+B,UAAU,sBAAqB,WACnC,kBACC9zB,KAAMA,EACN+yM,QAAS,SAAA1+M,GAAC,OAAIuvN,EAAgBvvN,EAAG8uN,EAAa,EAC9Cp3M,KAAMs3M,EACNzqH,IAAK8qH,EACLtwI,aAAcmwI,EACdvvI,SAAU2vI,IAAiB,IAE3BT,IACA,iCACC,gBAAKpvL,UAAU,KAAI,SAAC,QACpB,kBACC9zB,KAAMA,EACN+yM,QAAS,SAAA1+M,GAAC,OAAIuvN,EAAgBvvN,EAAG+uN,EAAW,EAC5Cr3M,KAAMu3M,EACN1qH,IAAK6qH,EACLrwI,aAAcowI,YAOrB,CC5CA,IAiFA,GAjFoB,SAAH,GAYV,IAXNz7E,EAAS,EAATA,UACA+7E,EAAQ,EAARA,SACAC,EAAM,EAANA,OACAvrG,EAAK,EAALA,MACAioE,EAAQ,EAARA,SACAujC,EAAQ,EAARA,SACAC,EAAa,EAAbA,cACAp7J,EAAI,EAAJA,KACAq7J,EAAkB,EAAlBA,mBAAmB,EAAD,EAClBC,UAAAA,OAAS,OAAO,MAChBC,mBAAAA,OAAkB,OAAO,EAEzB,EAAmCrzD,IAAU,GAAM,eAA5C2uD,EAAQ,KAAE2E,EAAc,KAOzBC,EAAW,yCAAG,WAAMjwN,GAAC,8EACN,GAAnB,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACE4+F,GAAgC,oBAAbA,EAAuB,iDAI1B,OAHft0E,EAAO,IAAIq+B,SAASn2I,EAAE4pC,SACtBi3K,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,YAChCilB,UAAYA,EACrBmtE,EAASrsJ,KAAOA,EAAK,SACG43H,EAASy0B,GAAU,KAAD,EAA3B,QACAmP,IAAiB,4CAChC,gBATgB,sCAWjB,OAAI3E,GAEF,iBAAMhN,SAAU4R,EAAY,UAC3B,iBAAKxwL,UAAU,cAAa,WAC3B,gBAAKA,UAAU,oBAAmB,UACjC,SAACmvL,GAAU,CACVjjN,KAAK,OACLkjN,QAAM,EACNluN,MAAM,OACNquN,cAAc,YACdC,YAAY,UACZC,sBAAuBO,EACvBN,oBAAqBO,OAGvB,gBAAKjwL,UAAU,2BAA0B,SACvCswL,IACA,gBAAKtwL,UAAU,kCAAiC,UAC/C,SAAC,GAAK,CAAC9+B,MAAM,SAASo+E,aAAc8wI,EAAoBn4M,KAAK,uBAIhE,iBAAK+nB,UAAU,uBAAsB,WACpC,SAAC,GAAM,CAAC0kF,MAAM,SAASk2C,OAAK,KAC5B,SAAC,GAAI,CAACvD,KAAK,YAAY7mD,QAAS+/G,aAOpC,iBAAKvwL,UAAU,cAAa,WAC3B,iBAAKA,UAAU,oBAAmB,WACjC,SAAC,GAAI,CAACq3H,KAAK,YAAYhvI,KAAM,KAC5B2nM,EAAS,MAAIC,MAEf,iBAAKjwL,UAAU,2BAA0B,WACxC,gBAAKA,UAAU,kCAAiC,SAAE0kF,KAClD,gBAAK1kF,UAAU,sCAAqC,SAAEmwL,OAEtDE,IACA,iBAAKrwL,UAAU,uBAAsB,WACpC,SAAC,GAAI,CAACq3H,KAAK,WAAW7mD,QAAS+/G,KAC/B,SAAC,GAAI,CAACl5D,KAAK,YAAY7mD,QA3DL,WAChB0/G,GAAgC,oBAAbA,GACxBA,EAASj8E,EACV,SA6DD,ECnBA,OA/DA,SAAsB,GAAgD,IAA9Cw8E,EAAU,EAAVA,WAAYC,EAAgB,EAAhBA,iBAAkBC,EAAW,EAAXA,YAC/CC,EAAkB,IAAI5wK,KAAKywK,EAAW/pK,cAAe+pK,EAAWxqJ,WAAY,GAC5E4qJ,EAAoBD,EAAgBjyJ,SAEpCmyJ,GAAc9lH,EAAAA,EAAAA,UAAQ,WAG3B,IAFA,IAAM+lH,EAAY,GAETlzJ,EAAM,EAAGA,EAAM,GAAIA,IAAO,CACtB,IAARA,GAAmC,IAAtBgzJ,EAChBD,EAAgBI,QAAQJ,EAAgB1qJ,UAAY,GAClC,IAARrI,EACV+yJ,EAAgBI,QAAQJ,EAAgB1qJ,WAAarI,EAAMgzJ,IAE3DD,EAAgBI,QAAQJ,EAAgB1qJ,UAAY,GAGrD,IAAI+qJ,EAAmB,GACR,OAAXN,QAAW,IAAXA,OAAW,EAAXA,EAAarzN,QAAS,IACzB2zN,EAAmBN,EAAYjpM,QAAO,SAAC/b,EAAMK,GAC5C,IAAMklN,EAAoB5uK,KAAOt2C,GACjC,IAAKklN,EAAmB,OAAO,EAC/B,IAAMt3J,EAAatX,KAAOsuK,GAE1B,OADeM,EAAkBjiJ,OAAOrV,EAAY,OACpCjuD,EAAO,EAAIA,CAC5B,GAAG,IAGAslN,EAAmB,IAAGA,EAAmB,GAC7C,IAAME,EAAc,CACnBC,aAAcR,EAAgB3qJ,aAAewqJ,EAAWxqJ,WACxDlR,KAAM,IAAI/U,KAAK4wK,GACf97J,MAAO87J,EAAgB3qJ,WACvBpI,IAAK+yJ,EAAgB1qJ,UACrB8Z,SAAU4wI,EAAgBS,iBAAmBZ,EAAWY,eACxD/8J,KAAMs8J,EAAgBlqK,cACtBuqK,iBAAAA,GAEDF,EAAUtzN,KAAK0zN,EAChB,CACA,OAAOJ,CACR,GAAG,CAACN,EAAYE,IAoBhB,OAAO,gBAAK3wL,UAAU,eAAc,SAAE8wL,EAAY/jN,KAlB/B,SAAA8wD,GAClB,IAAMyzJ,GAAI,OAAO5zN,MAAMmgE,EAAIozJ,kBAAkBxkL,QAC7C,OACC,iBAECzM,UAAW,iBAAmB69B,EAAIuzJ,aAAe,YAAc,KAAOvzJ,EAAImiB,SAAW,YAAc,IACnGwwB,QAAS,kBAAMkgH,EAAiB7yJ,EAAI,EAAC,WAErC,iBAAM79B,UAAU,SAAQ,SAAE69B,EAAIA,OAC9B,gBAAK79B,UAAU,OAAM,SACnBsxL,EAAKvkN,KAAI,SAACwkN,EAAKn1D,GAAG,OAClB,iBAAMp8H,UAAU,OAAWo8H,EAAY,QAPpCv+F,EAAI9I,KAAKy8J,iBAYjB,KAGD,ECmBA,GA7EiB,SAAH,GAAsC,IAAhCC,EAAW,EAAXA,YAAad,EAAW,EAAXA,YAChC,GAAoCxlH,EAAAA,EAAAA,UAAS,IAAInrD,MAAO,eAAjDywK,EAAU,KAAEiB,EAAa,KAE1BC,GAAiB3mH,EAAAA,EAAAA,UAAQ,WAC9B,OAAK2lH,EACEA,EAAY5jN,KAAI,SAAA6kN,GAAK,OAAItvK,KAAOsvK,EAAO,oBAAoBvsM,OAAO,oBAAoB,IADpE,EAE1B,GAAG,CAACsrM,IAEE1zJ,GAAW+tC,EAAAA,EAAAA,UAAQ,iBAAM,CAAC,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAM,IAE1E7yC,GAAS6yC,EAAAA,EAAAA,UAAQ,iBAAM,CAC5B,UACA,WACA,QACA,QACA,MACA,OACA,OACA,SACA,YACA,UACA,WACA,WACA,KAEDJ,EAAAA,EAAAA,YAAU,WACT6mH,GAAsC,oBAAhBA,GAA8BA,EAAYhB,EACjE,GAAG,CAACA,IAgBJ,OACC,iBAAKzwL,UAAU,WAAU,WACxB,iBAAKA,UAAU,mBAAkB,WAChC,iBAAKA,UAAU,0BAAyB,WACvC,uBAAIm4B,EAAOs4J,EAAWxqJ,cAAgB,IAAEwqJ,EAAW/pK,kBAEpD,gBAAK1mB,UAAU,eACf,iBAAKA,UAAU,QAAO,WACrB,mBAAQA,UAAU,WAAWwwE,QAAS,kBAbpB,WACrB,IAAMqhH,EAAUpB,EAAW92J,SAAS82J,EAAWxqJ,WAAa,GAC5DyrJ,EAAc,IAAI1xK,KAAK6xK,GACxB,CAUgDC,EAAe,EAAC,UAC3D,SAAC,GAAI,CAACz6D,KAAK,gBAAgBn9I,MAAM,eAGlC,mBAAQ8lB,UAAU,kBAAkBwwE,QAAS,kBAtB/B,WACjB,IAAMqhH,EAAUpB,EAAW92J,SAAS82J,EAAWxqJ,WAAa,GAC5DyrJ,EAAc,IAAI1xK,KAAK6xK,GACxB,CAmBuDE,EAAW,EAAC,UAC9D,SAAC,GAAI,CAAC16D,KAAK,gBAAgBn9I,MAAM,qBAIpC,iBAAK8lB,UAAU,iBAAgB,WAE9B,gBAAKA,UAAU,gBAAe,SAC5Bi9B,EAASlwD,KAAI,SAAC8wD,EAAKu+F,GACnB,OACC,cAAap8H,UAAU,WAAU,SAC/B69B,GADMu+F,EAIV,OAED,SAAC,GAAY,CAACu0D,YAAagB,EAAgBlB,WAAYA,EAAYC,iBA1C7C,SAAH,GAA8B,IAAxBp8J,EAAI,EAAJA,KAAMQ,EAAK,EAALA,MAAO+I,EAAG,EAAHA,IACxC6zJ,EAAc,IAAI1xK,KAAKsU,EAAMQ,EAAO+I,GACrC,SA4CD,aCMA,OAhFA,SAAe,GAAsE,IAAD,IAAnEgkB,QAAAA,OAAO,MAAG,GAAE,MAAE16E,KAAAA,OAAI,MAAG,GAAE,MAAEujD,SAAAA,OAAQ,MAAG,WAAO,EAAC,MAAEsnK,aAAAA,OAAY,MAAG,GAAE,EAC/E,GAaIC,EAAAA,GAAAA,UACH,CACCpwI,QAAAA,EACA16E,KAAAA,EACA8tH,eAAe,EACf3K,kBAAkB,EAClBxF,aAAc,CAAE6P,UAAW,EAAGD,SAAUs9F,IAEzCvgG,GAAAA,UACAgD,GAAAA,eArBArR,EAAa,EAAbA,cACAC,EAAiB,EAAjBA,kBACA/D,EAAY,EAAZA,aACAuV,EAAI,EAAJA,KACA1R,EAAU,EAAVA,WACAyR,EAAS,EAATA,UACAY,EAAe,EAAfA,gBACAC,EAAW,EAAXA,YACAE,EAAQ,EAARA,SACAN,EAAW,EAAXA,YACAK,EAAY,EAAZA,aACSf,EAAS,EAAlB1wB,MAAS0wB,UA2BV,OACC,iCACC,wBAAWvR,KAAe,IAAEpjF,UAAU,QAAO,UAC5C,yBAAWqjF,KAAmB,cAC5B/D,EAAavyG,KAAI,SAAA2yG,GAAW,OAC5B,qBAAQA,EAAY4D,uBAAqB,aACvC5D,EAAYC,QAAQ5yG,KAAI,SAACwwG,EAAQ6+C,GAAG,OACpC,+BAAQ7+C,EAAOiG,eAAejG,EAAOmU,yBAAuB,IAAExzH,IAAKk+J,IACjE7+C,EAAOziE,OAAO,UACdyiE,EAAO8V,WAAY,iBAAMrzF,UAAU,mBAAkB,SAAEu9E,EAAOgW,aAAe,SAAM,WAChF,MAEF,IAED,OAAJsB,QAAI,IAAJA,OAAI,EAAJA,EAAM9nH,KAAI,SAACqxG,EAAKg+C,GAEhB,OADAj5C,EAAW/E,IAEV,wBACEA,EAAIsJ,MAAM36G,KAAI,SAAAo1G,GAAI,OAClB,qBAAQA,EAAKwB,gBAAc,IAAEnT,QAAS,kBAAM9lD,EAASy3D,EAAK,EAAC,SACzDA,EAAKrnE,OAAO,UACT,KAJEshH,EAQX,WAGDxnC,EAAY,IACZ,iBAAK50F,UAAU,aAAY,WAC1B,kBAAMA,UAAU,cAAa,UAAC,QACvB20F,EAAY,EAAE,OAAgB,OAAXU,QAAW,IAAXA,OAAW,EAAXA,EAAa/3H,WAEvC,SAAC,GAAM,CAACs9J,OAAK,EAACpqD,QAxCU,SAAAjwG,GAC3B,IACE,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACH2nC,GACgB,CAAf,MAAOxvF,GAAQ,CAClB,EAmCgDw+E,MAAM,IAAIxkC,UAAWs1C,EAAiBtpH,KAAK,aACvF,SAAC,GAAM,CAAC0uJ,OAAK,EAACpqD,QAhDM,SAAAjwG,GACvB,IACE,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACH4nC,GACgB,CAAf,MAAOzvF,GAAQ,CAClB,EA2C4Cw+E,MAAM,IAAIxkC,UAAWu1C,EAAavpH,KAAK,iBAKpF,ECjCA,GAlDiB,SAAH,GAYP,IAXNs4G,EAAQ,EAARA,SACA06F,EAAU,EAAVA,WACAmB,EAAS,EAATA,UACApoM,EAAI,EAAJA,KACA/W,EAAK,EAALA,MACAlB,EAAK,EAALA,MACAo8B,EAAW,EAAXA,YACAkjD,EAAY,EAAZA,aACA4yI,EAAW,EAAXA,YAAY,EAAD,EACXC,UAAAA,OAAS,MAAG,IAAG,MACfC,sBAAAA,OAAqB,OAAQ,EAE7B,GAAwBjnH,EAAAA,EAAAA,UAAS,IAAG,eAA7Bn1E,EAAI,KAAEq8L,EAAO,KACd/xG,GAAOtV,EAAAA,EAAAA,UAAQ,WAEpB,IAAMsnH,EAAQt8L,EAAKgtB,MAAM,SACzB,OAAOsvK,EAAMh1N,OAlBG,EAkBkBg1N,EAAMh1N,OAlBxB,CAmBjB,GAAG,CAAC04B,IAMJ,OACC,iBAAKgK,UAAS,WAAa,UACzB9+B,IAAS,2BAAQA,KAClB,gBAAK8+B,UAAU,oBAAmB,UACjC,qBACCwkF,SAV+B,SAAAjkH,GAClC8xN,EAAQ9xN,EAAE4pC,OAAOnqC,OACbwkH,GAAgC,oBAAbA,GAAyBA,EAASjkH,EAC1D,EAQI8/M,UAAWA,EACXnB,WAAYA,EACZjnM,KAAMA,EACNjY,MAAOA,EACPs/M,UAAW6S,EACX/1L,YAAaA,EACbkjD,aAAcA,EACdghC,KAAMA,EACNxb,IAAKotH,MAGNE,IACA,iBAAKpyL,UAAU,wBAAuB,UACpChK,EAAK14B,OAAO,IAAE60N,OAKpB,ECvCA,GAXoB,SAAH,GAAkB,IAAZz8E,EAAI,EAAJA,KACtB,OACC,gBAAK11G,UAAU,cAAa,UAC3B,iBAAKA,UAAU,oBAAmB,WACjC,iBAAKA,UAAU,mBAAkB,UAAC,cAAW,UAAI01G,EAAKsmB,OAAS,UAAS,YAAItmB,EAAKo3E,OAAS,WAAY,QACtG,iBAAK9sL,UAAU,mBAAkB,UAAC,UAAQ01G,EAAKnhD,OAAS,UAAU,QAClE,iBAAKv0D,UAAU,mBAAkB,UAAC,eAAa01G,EAAKoD,OAAS,UAAU,WAI3E,ECeMy5E,GAAkB,CACvBv2D,MAAO,GACP8wD,MAAO,GACPv4H,MAAO,GACPo9C,SAAU,GACV2C,QAAS,GACTk+E,eAAgB,GAChBC,oBAAqB,GACrB9+E,UAAW,GACX++E,aAAc,GACdC,aAAc,GACdC,eAAgB,IAuhCjB,GAphCwB,WAAO,IAAD,UAC7B,EAA2FrxE,KAAnF7L,EAAI,EAAJA,KAAM6M,EAAG,EAAHA,IAAKF,EAAe,EAAfA,gBAAiBC,EAAkB,EAAlBA,mBAAoBQ,EAAwB,EAAxBA,yBAA0Bb,EAAI,EAAJA,KAE5E0tE,GAAazkH,EAAAA,EAAAA,UACb0/G,GAAa1/G,EAAAA,EAAAA,UACbm8G,GAAUn8G,EAAAA,EAAAA,UACV2nH,GAAY3nH,EAAAA,EAAAA,UAEZmjD,EAAW3C,KAGjB,GAA0CvgD,EAAAA,EAAAA,eAASj+F,GAAU,eAAtD4lN,EAAa,KAAEC,EAAgB,KAGtC,GAAgD5nH,EAAAA,EAAAA,UAAS,IAAG,eAArD6nH,EAAgB,KAAEC,EAAmB,KAC5C,GAAwD9nH,EAAAA,EAAAA,UAAS,IAAG,eAA7D+nH,EAAoB,KAAEC,EAAuB,KACpD,GAAkFhoH,EAAAA,EAAAA,UAAS,IAAG,eAAvFioH,EAAiC,KAAEC,EAAoC,KAG9E,GAA8CloH,EAAAA,EAAAA,eAASj+F,GAAU,eAA1DomN,EAAe,KAAEC,EAAkB,KAC1C,GAAsCpoH,EAAAA,EAAAA,eAASj+F,GAAU,eAAlDk5D,EAAW,KAAEotJ,EAAc,KAGlC,GAAwDroH,EAAAA,EAAAA,WAAS,GAAM,eAAhEsoH,EAAoB,KAAEC,GAAuB,KACpD,IAAsDvoH,EAAAA,EAAAA,WAAS,GAAM,iBAA9DwoH,GAAmB,MAC1B,IADkD,MACuB12D,IAAU,IAAM,iBAAlF22D,GAAuB,MAAEC,GAAqC,MAGrE,IAAoE1oH,EAAAA,EAAAA,eAASj+F,GAAU,iBAAhF4mN,GAA0B,MAAEC,GAA6B,MAChE,IAA8E5oH,EAAAA,EAAAA,eAASj+F,GAAU,iBAA1F8mN,GAA+B,MAAEC,GAAkC,MAG1E,IAAoD9oH,EAAAA,EAAAA,UAAS,MAAK,iBAA3D+oH,GAAkB,MAAEC,GAAqB,MAChD,IAAwEhpH,EAAAA,EAAAA,UAAS,IAAG,iBAA7EipH,GAA4B,MAAEC,GAA+B,MAE9DC,IAAYtpH,EAAAA,EAAAA,UAAQ,kBAAM0qC,EAAKrG,SAAWuL,EAAMK,OAAO,GAAE,CAACvF,IAC1D6+E,IAAsBvpH,EAAAA,EAAAA,UAAQ,kBAAM0qC,EAAKrG,SAAWuL,EAAMO,iBAAiB,GAAE,CAACzF,IAC9E8+E,IAAUxpH,EAAAA,EAAAA,UAAQ,kBAAM0qC,EAAKrG,SAAWuL,EAAMG,KAAK,GAAE,CAACrF,IAI5D,IAA4CvqC,EAAAA,EAAAA,UAASonH,IAAgB,iBAA9DkC,GAAc,MAAEC,GAAiB,MAGlCC,IAAwB3pH,EAAAA,EAAAA,UAAQ,WACrC,MAAO,CACN,CACCkT,OAAQ,IACRr8B,QAAS,CACR,CAECq8B,OAAQ,IAERxC,KAAM,SAAA0C,GAAG,OAAI,8BAAGA,EAAIA,IAAIx5G,MAAQ,GAAK,GAEtC,CACCs5G,OAAQ,QACRD,SAAU,SAEX,CACCC,OAAQ,QACRD,SAAU,SAEX,CACCC,OAAQ,QACRD,SAAU,QACVvC,KAAM,SAAA0C,GAAG,OAAI,cAAGlzE,KAAI,iBAAYkzE,EAAIp+G,OAAQ,SAAEo+G,EAAIp+G,OAAU,GAG7D,CACCk+G,OAAQ,SACRD,SAAU,cAEX,CACCC,OAAQ,gBACRD,SAAU,mBACVvC,KAAM,SAAA0C,GAAG,OACR,gBAAKsG,MAAM,uBAAuBlU,QAAS,kBAAMokH,GAAoBx2G,EAAI,EAAC,SACxEA,EAAIp+G,OACA,GAGR,CACCk+G,OAAQ,kBACRD,SAAU,kBAEX,CACCC,OAAQ,WACRD,SAAU,UACVvC,KAAM,SAAA0C,GAAG,OAAI,iBAAM5N,QAAS,SAAAjwG,GAAC,OAAIs0N,GAAiBz2G,EAAIp+G,MAAOO,EAAE,EAAC,SAAE69G,EAAIp+G,OAAa,GAEpF,CACCk+G,OAAQ,QACRD,SAAU,SAEX,CACCC,OAAQ,gBACRD,SAAU,gBAEX,CACCC,OAAQ,qBACRD,SAAU,wBACVvC,KAAM,SAAA0C,GAAG,OACR,gBAAKsG,MAAM,4BAA4BlU,QAAS,kBAAMokH,GAAoBx2G,EAAI,EAAC,SAC7EA,EAAIp+G,OACA,GAGR,CACCk+G,OAAQ,UACRD,SAAU,SAAAG,GAAG,gBAAOA,EAAI02G,cAAgB,GAAE,YAAI12G,EAAI22G,cAAgB,GAAE,GAErE,CACC72G,OAAQ,oBACRD,SAAU,SAAAG,GAAG,gBAAOA,EAAI42G,iBAAmB,GAAE,YAAI52G,EAAI62G,iBAAmB,GAAE,GAE3E,CACC/2G,OAAQ,aACRD,SAAU,SAAAG,GAAG,gBAAOA,EAAIp+E,WAAa,GAAE,KAK5C,GAAG,IAEGk1L,IAAuBlqH,EAAAA,EAAAA,UAAQ,WACpC,MAAO,CACN,CACCkT,OAAQ,IACRr8B,QAAS,CACR,CACCq8B,OAAQ,cACRD,SAAU,kBAEX,CACCC,OAAQ,YACRD,SAAU,gBAEX,CACCC,OAAQ,SACRD,SAAU,SACVvC,KAAM,SAAA0C,GAAG,OACR,iBAAKp+E,UAAU,OAAO0kF,MAAM,SAAQ,WACnC,gBAAK1kF,UAAU,QAAO,SAAEo+E,EAAIp+G,QAC3Bo+G,EAAIp+G,QAAS,SAAC,GAAI,CAACq3J,KAAK,WAAW7mD,QAAS,SAAAjwG,GAAC,OAAIs0N,GAAiBz2G,EAAIp+G,MAAOO,EAAE,MAC3E,GAGR,CACC29G,OAAQ,aACRD,SAAU,sBAEX,CACCC,OAAQ,eACRD,SAAU,iBAKf,GAAG,IAGGk3G,IAAmCnqH,EAAAA,EAAAA,UAAQ,WAChD,MAAO,CACN,CACCkT,OAAQ,IACRr8B,QAAS,CACR,CACCq8B,OAAQ,IACRxC,KAAM,SAAA0C,GAAG,aAAI,gCAAE,IAAC,mBAAe,OAAHA,QAAG,IAAHA,GAAQ,QAAL,EAAHA,EAAKA,WAAG,WAAL,EAAH,EAAUx5G,OAAQ,KAAO,GAEtD,CACCs5G,OAAQ,oBACRD,SAAU,SAAAG,GAAG,OAAQ,OAAHA,QAAG,IAAHA,GAAAA,EAAKg3G,oBAAmB,UAAS,OAAHh3G,QAAG,IAAHA,OAAG,EAAHA,EAAKg3G,qBAAmB,WAAY,OAAHh3G,QAAG,IAAHA,OAAG,EAAHA,EAAKikB,UAAS,YAAO,OAAHjkB,QAAG,IAAHA,OAAG,EAAHA,EAAKrpD,KAAM,GAE/G,CACCmpD,OAAQ,SACRD,SAAU,iBAEX,CACCC,OAAQ,iBACRD,SAAU,SAAAG,GAAQ,IAAD,EAChB,OACC,gBAAKp+E,UAAU,iBAAgB,UAC9B,SAAC,GAAM,CACNpzB,QAAa,OAAJq1I,QAAI,IAAJA,GAAmB,QAAf,EAAJA,EAAMozE,qBAAa,WAAf,EAAJ,EAAqBzoN,QAC9B0yE,aAAc8+B,EAAIk3G,gBAClB9wG,SAAU,SAAAjkH,GAAC,OAAIg1N,GAA2Bh1N,EAAG69G,EAAI61B,UAAU,EAC3D/zD,UAAWk+B,EAAI61B,aAanB,GAED,CACC/1B,OAAQ,SACRD,SAAU,SAAAG,GACT,OACC,gBACCp+E,UAAU,OACV0kF,MAAM,iBACNxkC,SAAUk+B,EAAI61B,UACdzjC,QAAS,kBAAO4N,EAAI61B,WAAauhF,GAA+Bp3G,EAAI,EAAC,UAErE,SAAC,GAAI,CAACi5C,KAAK,YAAYn9I,MAAK,UAAKkkG,EAAI61B,UAAY,UAAY,OAGhE,KAKL,GAAG,CAACgO,EAAKozE,cAAenC,EAAsBgB,KAGxCuB,IAA+BzqH,EAAAA,EAAAA,UAAQ,kBAAMi3C,EAAKjT,OAAO,GAAE,CAACiT,IAE5DyzE,IAAgC1qH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IACnD,IAAKypH,GAAe9iF,SAAU,OAAOsQ,EAAK8sE,aAC1C,IAAMniN,EAAc,OAAJq1I,QAAI,IAAJA,GAAkB,QAAd,EAAJA,EAAM8sE,oBAAY,OAAS,QAAT,EAAlB,EAAoBniN,eAAO,WAAvB,EAAJ,EAA6BmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAOi1G,WAAax/H,SAASsiN,GAAe9iF,SAAS,IACnH,OAAO,OAAKsQ,EAAK8sE,cAAY,IAAEniN,QAAAA,GAChC,GAAG,CAACq1I,EAAMwyE,GAAe9iF,WAEnBgkF,IAAqC3qH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IACxD,IAAKypH,GAAe9iF,SAAU,OAAOsQ,EAAK2zE,YAC1C,IAAMhpN,EAAc,OAAJq1I,QAAI,IAAJA,GAAiB,QAAb,EAAJA,EAAM2zE,mBAAW,OAAS,QAAT,EAAjB,EAAmBhpN,eAAO,WAAtB,EAAJ,EAA4BmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAOi1G,WAAax/H,SAASsiN,GAAe9iF,SAAS,IAClH,OAAO,OAAKsQ,EAAK2zE,aAAW,IAAEhpN,QAAAA,GAC/B,GAAG,CAACq1I,EAAMwyE,GAAe9iF,WAGnBkkF,IAA6B7qH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IAC1Cp+F,EAAc,OAAJq1I,QAAI,IAAJA,GAAoB,QAAhB,EAAJA,EAAM2Z,sBAAc,OAAS,QAAT,EAApB,EAAsBhvJ,eAAO,WAAzB,EAAJ,EAA+BmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAOi1G,WAAax/H,SAASsiN,GAAe9iF,SAAS,IACrH,IAAK8iF,GAAe9iF,SAAU,CAAC,IAAD,EACvBmkF,EAAuB,OAAJ7zE,QAAI,IAAJA,GAAoB,QAAhB,EAAJA,EAAM2Z,sBAAc,WAAhB,EAAJ,EAAsBhvJ,QAAQmN,QACtD,SAAC+wC,EAAKlmD,EAAO0/H,GAAI,OAAK1/H,IAAU0/H,EAAKvnB,WAAU,SAAAhG,GAAE,OAAIA,EAAG/2G,QAAU8qD,EAAI9qD,KAAK,GAAC,IAE7E,OAAO,OAAKiiJ,EAAK2Z,gBAAc,IAAEhvJ,QAASkpN,GAC3C,CACA,OAAO,OAAK7zE,EAAK2Z,gBAAc,IAAEhvJ,QAAAA,GAClC,GAAG,CAACq1I,EAAMwyE,GAAe9iF,WAGnBokF,IAA6B/qH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IAChD,IAAKypH,GAAe9iF,SAAU,OAAOsQ,EAAK9kJ,QAE1C,IAAMyP,EAAc,OAAJq1I,QAAI,IAAJA,GAAa,QAAT,EAAJA,EAAM9kJ,eAAO,OAAS,QAAT,EAAb,EAAeyP,eAAO,WAAlB,EAAJ,EAAwBmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAOi1G,WAAax/H,SAASsiN,GAAe9iF,SAAS,IAE9G,OAAO,OAAKsQ,EAAK9kJ,SAAO,IAAEyP,QAAAA,GAC3B,GAAG,CAACq1I,EAAMwyE,GAAe9iF,WAEnBqkF,IAAiBhrH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IACpC,GAAoB,OAAfsoH,QAAe,IAAfA,IAAAA,EAAiB3hF,SAAU,OAAOsQ,EAAK2Z,eAC5C,IAAMhvJ,EAAc,OAAJq1I,QAAI,IAAJA,GAAoB,QAAhB,EAAJA,EAAM2Z,sBAAc,OAAS,QAAT,EAApB,EAAsBhvJ,eAAO,WAAzB,EAAJ,EAA+BmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAOi1G,WAAax/H,SAASmhN,EAAgB3hF,SAAS,IACtH,OAAO,OAAKsQ,EAAK2Z,gBAAc,IAAEhvJ,QAAAA,GAClC,GAAG,CAACq1I,EAAMqxE,IAGJ2C,IAAwCjrH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IAEvDp+F,EAMC,IAPDspN,EAA0B,CAAC,EAAG,GAAI,IAEtC,GAAoB,OAAf5C,QAAe,IAAfA,IAAAA,EAAiB3hF,SAAU,OAAOsQ,EAAK2zE,YACxCrB,GACH3nN,EAAc,OAAJq1I,QAAI,IAAJA,GAAiB,QAAb,EAAJA,EAAM2zE,mBAAW,OAAS,QAAT,EAAjB,EAAmBhpN,eAAO,WAAtB,EAAJ,EAA4BmN,QACrC,SAAA2iB,GAAM,OAAIA,EAAOi1G,YAA4B,OAAf2hF,QAAe,IAAfA,OAAe,EAAfA,EAAiB3hF,WAAYukF,EAAwBj4N,SAASy+B,EAAO18B,MAAM,IAG1G4M,EAAc,OAAJq1I,QAAI,IAAJA,GAAiB,QAAb,EAAJA,EAAM2zE,mBAAW,OAAS,QAAT,EAAjB,EAAmBhpN,eAAO,WAAtB,EAAJ,EAA4BmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAOi1G,YAA4B,OAAf2hF,QAAe,IAAfA,OAAe,EAAfA,EAAiB3hF,SAAU,IAEvG,OAAO,OAAKsQ,EAAK2zE,aAAW,IAAEhpN,QAAAA,GAC/B,GAAG,CAACq1I,EAAMqxE,IAGJ6C,IAAsCnrH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IAEzD,QAAoB,OAAfsoH,QAAe,IAAfA,IAAAA,EAAiBb,uBACA,OAAJxwE,QAAI,IAAJA,GAAiC,QAA7B,EAAJA,EAAMm0E,mCAA2B,OAAS,QAAT,EAAjC,EAAmCxpN,eAAO,WAAtC,EAAJ,EAA4CymB,MAAK,SAAAqJ,GAAM,OAAIA,EAAO18B,QAAUszN,EAAgBb,mBAAmB,IAElI,GAAG,CAACa,IAYE+C,IAA8BrrH,EAAAA,EAAAA,UAAQ,WAC3C,OAAOkoH,EAAqBn5M,QAC3B,SAAAu8M,GAAW,OAAIA,EAAYhB,kBAAoB75E,EAAeC,UAAY46E,EAAYhB,eAAe,IACpGh4N,MACH,GAAG,CAAC41N,KAGJtoH,EAAAA,EAAAA,YAAU,YACT,uBAAC,wGACK0oH,EAAgB,CAAD,gDACc,OAA1B3hF,EAA+B2hF,EAA/B3hF,SAAUH,EAAqB8hF,EAArB9hF,SAAUrC,EAAWmkF,EAAXnkF,OAAM,SACgBjvI,QAAQypC,IAAI,CAC7D44G,EAAIlP,4BAA4B1B,EAAUH,EAAUrC,GACpDoT,EAAIjP,uBAAuB3B,EAAUH,EAAUrC,KAC7C,KAAD,0BAHKonF,EAAkB,KAAEC,EAAa,KAIxCzC,GAA8ByC,GAC9BvC,GAAmCsC,GAAoB,2CARxD,EAUD,GAAG,CAACjD,KAGJ1oH,EAAAA,EAAAA,YAAU,YACT,uBAAC,kGACK0oH,EAAgB,CAAD,gDACe,GAA3BnkF,EAAgCmkF,EAAhCnkF,OAAQwE,EAAwB2/E,EAAxB3/E,UAAWnC,EAAa8hF,EAAb9hF,SACtBrC,GAAWqC,EAAQ,iEACD+Q,EAAI9O,6BAA6BtE,EAAQwE,EAAWnC,GAAU,KAAD,GAA9EuD,EAAQ,UAEbk+E,EAAoBl+E,EAASA,UAC7Bs+E,EAAqC,IACrCF,EAAwBp+E,EAAS0hF,oBACjC,0CATF,EAWD,GAAG,CAAC9C,GAAqBL,EAAiBG,IAE1C,IAMMmB,GAAmB,yCAAG,WAAMzyG,GAAI,8EACI,GAAnCu0G,EAAmB,OAAJv0G,QAAI,IAAJA,GAAS,QAAL,EAAJA,EAAM/D,WAAG,WAAL,EAAJ,EAAW0C,SACd,CAAD,gDAEjByyG,EAAmBmD,GACnBhD,IAAwB,GACxBpxE,EAAmB,CAClBH,SAAS,EACTv6F,QAAS,GACTw6F,QAAQ,IACN,2CACH,gBAXwB,sCAcnBmzE,GAA6B,SAAH,EAAgBoB,GAAuB,IAAjCxsL,EAAM,EAANA,OACrC,GAAKA,EAAOnqC,MAAZ,CAEA,IAAM8zI,EAA8B,OAApBo/E,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBjwN,MAAK,YAAY,SAATgxI,YAA8B0iF,CAAiB,IAC7F7iF,EAAQwhF,gBAAkBnjN,SAASg4B,EAAOnqC,OAC1C8zI,EAAQ8iF,gBAAiB,EACzB,IACMC,EAAiB,CAAE9hK,KADuE++E,EAAxF/+E,KACuBk/E,UADiEH,EAAlFG,UAC4Bk8E,cADsDr8E,EAAvEq8E,cACgCmF,gBADuCxhF,EAAxDwhF,gBACkCjzF,UADsByR,EAAvCzR,UAC4Bi8B,QADWxqB,EAA5BwqB,QAC0Bs4D,eADE9iF,EAAnB8iF,gBAM7E,GAHAzC,GAAsB0C,GAGlBzC,GAA6B92N,OAAS,EAEzC,GADwB82N,GAA6BnxN,MAAK,YAAY,SAATgxI,YAA8B0iF,CAAiB,IACvF,CACpB,IAAIG,GAAa,OAAO1C,IAGxB,OAFA0C,EAAgBA,EAAc/8M,QAAO,SAAAg9M,GAAI,OAAIA,EAAK9iF,YAAc0iF,CAAiB,SACjFtC,GAAgCyC,EAEjC,CAEDzC,IAAgC,SAAA1oN,GAAI,wBAAQA,GAAI,CAAEkrN,GAAiB,GApB1C,CAqB1B,EASMG,GAAqC,yCAAG,gGACxC5C,GAA6B,CAAD,gDAKG,OAJ5BzgF,EAAwB2/E,EAAxB3/E,UAAWnC,EAAa8hF,EAAb9hF,UACbylF,EAAgB,IACRliF,UAAQ,OAAOq/E,IAC7B6C,EAAczlF,SAAWA,EACzBylF,EAActjF,UAAYA,EAAU,SAClB4O,EAAIrN,uBAAuB+hF,EAAcliF,SAAUkiF,EAAczlF,SAAUylF,EAActjF,WAAW,KAAD,EAA5G,WACDujF,SAAS,CAAD,gBAEqB,OADpCp0E,EAAyB,uBACzBuxE,GAAgC,IAAI,2BAGrCvxE,EAAyB,0EAA0E,GAAM,4CACzG,kBAd0C,mCAmBrCq0E,GAAmB,yCAAG,WAAM52N,GAAC,kFASjC,IAAWrC,KATsB,cAEvBgP,IAAN3M,IAEF,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACHglI,OAAiB7lN,IAGZ/F,EAAI,KAAQstN,IAEbttN,EAAKlK,eAAeiB,KACvBiJ,EAAKjJ,GAAgB,QAAZ,EAAGiJ,EAAKjJ,UAAI,aAAT,EAAWm7B,OAAOyB,QAAQ,OAAQ,KACzC3zB,EAAKjJ,KAAMiJ,EAAKjJ,GAAO,OAGJ,OAA1BiJ,EAAKkoI,OAASqG,EAAKrG,OAAO,SACRkT,EAAIpP,gBAAgBhsI,GAAM,KAAD,GAArCkkD,EAAG,SACEA,EAAI/tD,OAAS,EAAGy1N,EAAiB1nK,GACvC0nK,EAAiB,IAAI,kDAE1B5yK,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,gBAtBwB,sCAwBnB4yL,GAAqB,SAACp3N,EAAO9B,GAClC,IAAMm5N,EAAS,KAAQ5C,IAEX,aAARv2N,GAAgC,OAAV8B,GACzBq3N,EAA0B,eAAI,GAC9BA,EAA+B,oBAAI,GACnCA,EAAmB,QAAI,IACL,aAARn5N,GAAgC,OAAV8B,GAChCq3N,EAAmB,QAAI,GACL,OAAd5C,SAAc,IAAdA,IAAAA,GAAgB9iF,UAAYkhF,EAAU7mN,UACzC6mN,EAAU7mN,QAAQ2wB,cAAgB,EAClC06L,EAA0B,eAAI,GAC9BA,EAA+B,oBAAI,KAElB,iBAARn5N,GAAoC,OAAV8B,IACpC2vN,EAAW3jN,QAAQhM,MAAQ,KAC3Bq3N,EAAwB,aAAI,IAG7BA,EAAUn5N,GAAO8B,EACjB00N,GAAkB2C,EACnB,EAGMC,GAAqB,yCAAG,WAAM/2N,GAAC,8EAOS,OAN5C,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBAEGsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,SACtBqpG,EAAWz1I,OAAOsjN,YAAYhpG,EAAK2W,YAChC0kB,UAAY4/E,EAAgBnkF,OACrCqE,EAAS7B,SAAW2hF,EAAgB3hF,SACpC6B,EAAShC,SAAW8hF,EAAgB9hF,SAAS,SAC3B+Q,EAAIhP,6BAA6BC,GAAU,KAAD,EAAnD,QAGR+/E,EAAmB,OACfD,GAAe,IAClBb,oBAAqBtgN,SAASqhI,EAASi/E,qBAAuBa,EAAgBb,qBAC9ED,eAAgBrgN,SAASqhI,EAASg/E,gBAAkBc,EAAgBd,mBAErE1vE,EAAyB,uBACzBq0E,MAEAr0E,EAAyB,2EAA2E,GACpG,4CACD,gBArB0B,sCAuBrBy0E,GAAoB,yCAAG,WAAMh3N,GAAC,gFAKiB,OALjB,SAEjC,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACGsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,SACtBqtL,EAAiBz5N,OAAOsjN,YAAYhpG,EAAK2W,YAChCwiB,SAAW8hF,EAAgB9hF,SAAS,SAC7B+Q,EAAIrO,2BAA2BsjF,GAAgB,KAAD,EAAvD,QAENC,EAAW,OAAQnE,GAAe,IAAE3/E,UAAWxhI,SAASqlN,EAAe7jF,aAC7E4/E,EAAmBkE,GACnB30E,EAAyB,wBACnBA,EAAyB,0EAA0E,GAAM,kDAEhH3iG,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,gBAfyB,sCAmDpBkzL,GAA6B,yCAAG,wHAGL,OAA3BrB,SAA2B,IAA3BA,QAA2B,EAA3BA,GAA6B/4N,QAAS,GAAKo4I,EAAKrG,SAAWuL,EAAMG,OAAK,gBACI,OAA7E+H,EAAyB,8CAA8C,GAAM,0BAO9E,GAJM60E,EAA0C,OAApBzE,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBn5M,QAAO,SAAA+5H,GACxD,OAAQA,EAAQG,SACjB,IAGyB,CAAD,eAC4E,OAAnG6O,EAAyB,oEAAoE,GAAM,6BAI/FwwE,EAAgB,CAAD,kDACe,GAA3B3/E,EAAgC2/E,EAAhC3/E,UAAWnC,EAAqB8hF,EAArB9hF,WAAUrC,EAAWmkF,EAAXnkF,SACdwE,EAAS,iBACoD,OAA3EmP,EAAyB,4CAA4C,GAAM,4CAG5BP,EAAItN,uBAAuB0iF,EAAqBnmF,EAAUmC,GAAW,KAAD,GAA/E,GAA+E,SAA5GikF,EAAQ,EAARA,SAAUC,EAAS,EAATA,UAAW9iF,EAAQ,EAARA,UACX,IAAd8iF,EAAmB,iBAC6E,OAAnG/0E,EAAyB,oEAAoE,GAAM,+BAIhG80E,IAAY7iF,EAAQ,oBAClB5F,GAAWwE,GAAcnC,EAAQ,oEACf+Q,EAAI9O,6BAA6BtE,EAAQwE,EAAWnC,GAAU,KAAD,GAA9EuD,EAAQ,OACdk+E,EAAoBl+E,EAASA,UAC7Bo+E,EAAwBp+E,EAAS0hF,mBACjC3zE,EAAyB,sBACzBuwE,EAAqC,IAAI,wBAEzCvwE,EAAyB,2EAA2E,GAAM,0DAG3G3iG,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,kBA1CkC,mCA4C7BszL,GAAoB,yCAAG,WAAM7jF,GAAS,8FACnBsO,EAAIvO,cAAcC,GAAW,KAAD,EAArC,QAER8jF,EAAkB/E,EAAiBj5M,QAAO,SAAA+5H,GAAO,OAAIA,EAAQG,YAAcA,CAAS,KACpF+jF,EAA4C,OAApB9E,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBn5M,QAAO,SAAA+5H,GAAO,OAAIA,EAAQG,YAAcA,CAAS,MAC5Ek/E,EAAwB6E,GACjD/E,EAAoB8E,GACpBj1E,EAAyB,yBAEzBA,EAAyB,4EAA4E,GACrG,2CACD,gBAXyB,sCAapBm1E,GAAoB,yCAAG,WAAMnkF,GAAO,yGACpCA,EAAQ,CAAD,eAC8C,OAAzDgP,EAAyB,0BAA0B,GAAM,mBAClD,GAAK,OAGS,GAHT,EAGcub,GAAsB,KAAM,KAAMvqB,GAArD4qB,EAAK,EAALA,MAAO92G,EAAO,EAAPA,QAEV82G,EAAM,CAAD,eAC+B,OAAxC5b,EAAyBl7F,GAAS,GAAM,mBACjC,GAAK,uBAGU26F,EAAIxO,cAAcD,GAAS,KAAD,EAAnC,IAARlnG,EAAQ,QAEAsqL,SAAS,CAAD,gBACoF,OAAzGp0E,EAAyB,0EAA0E,GAAM,2BAQ1G,GAHMo1E,EAAuC,OAApBhF,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBn2G,WAAU,SAAAo7G,GAAW,OAAIA,EAAYlkF,YAAcH,EAAQG,SAAS,IAC7GmkF,EAAoC,OAAhBpF,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBj2G,WAAU,SAAAo7G,GAAW,OAAIA,EAAYlkF,YAAcH,EAAQG,SAAS,KAGtF,IAAtBikF,IAAkD,IAAvBE,EAAwB,mDA2BP,OAzB5CJ,GAAqB,OAAO9E,GAC5BmF,GAAiB,OAAOrF,GAEpBj+J,EAA6D++E,EAA7D/+E,KAAMstE,EAAuDyR,EAAvDzR,UAAWi8B,EAA4CxqB,EAA5CwqB,QAAS6xD,EAAmCr8E,EAAnCq8E,cAAemF,EAAoBxhF,EAApBwhF,gBAG3CgD,EAAe,CACpBlD,oBAAoB,GAAD,OAAKrgK,EAAI,YAAIstE,GAChCk2F,oBAAoB,GAAD,OAAKxjK,EAAI,YAAIupG,GAChCj8B,UAAAA,EACAi8B,QAAAA,EACA6xD,cAAAA,GAGGmF,WACI0C,EAAsBE,GAAkBtB,eAC/C0B,EAAahD,gBAAkBA,GAGhC0C,EAAsBE,GAAiB,OAAQF,EAAsBE,IAAsBI,GAC3FD,EAAkBD,GAAkB,OAAQC,EAAkBD,IAAuBE,GAErFnF,EAAwB6E,GACxB/E,EAAoBoF,GAEpBv1E,EAAyB,uBAAuB,kBACzCl2G,EAASsqL,UAAQ,4CACxB,gBAtDyB,sCAwDpBrC,GAAmB,SAAC70N,EAAOO,GAC5B8jC,UAAUm0L,YACbn0L,UAAUm0L,UAAUC,UAAUz4N,GAC1BO,GAAGqqN,EAAW5+M,QAAQi4M,KAAK,CAAExhN,EAAGlC,EAAE8uF,QAAU,GAAItuF,EAAGR,EAAE+uF,QAAU,KAErE,EAEMopI,GAAoB,SAAAn4N,GAEzB,IAAQ6xF,EAAS7xF,EAAT6xF,KACK,UAATA,GAA6B,gBAATA,GAAwB+kI,IACjD,EAOMwB,GAAuC,yCAAG,WAAM7jI,GAAK,sEAC1DA,EAAM/G,iBACN2lI,IAAwB,GACxBG,KAAwC,2CACxC,gBAJ4C,sCAYvC+E,GAAqB,SAAC9kF,EAAS+kF,GAsBpC,OAnBI3F,GAAwBA,EAAqB51N,OAAS,EAC5C,CACZ,CAAE+kI,UAAW,KAAMi8B,QAAS,OAAM,eACX,OAApB40D,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBn5M,QAAO,YAAO,SAAJg7C,OAAoB8jK,CAAW,MAAC,OAChD,OAAhB7F,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBj5M,QAAO,gBAAGw9H,EAAa,EAAbA,cAAexiF,EAAI,EAAJA,KAAI,OAAsB,OAAfu+J,QAAe,IAAfA,OAAe,EAAfA,EAAiB3/E,aAAc4D,GAAiBxiF,IAAS8jK,CAAW,MAG9G,CAAC,CAAEx2F,UAAW,KAAMi8B,QAAS,QAGRjrI,MAAK,YAA6B,IAA1BgvG,EAAS,EAATA,UAAWi8B,EAAO,EAAPA,QAClDw6D,EAAc,OAAQhlF,GAAO,IAAE/+E,KAAM8jK,IAC3C,EAA2Bx6D,GAAsBh8B,EAAWi8B,EAASw6D,GAA7Dp6D,EAAK,EAALA,MAAO92G,EAAO,EAAPA,QACf,OAAK82G,IACJ5b,EAAyBl7F,GAAS,IAC3B,EAGT,GAED,EAGMmxK,GAA2B,yCAAG,WAAMx4N,GAAC,kFACzC,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACGsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtB2pG,EAAU/1I,OAAOsjN,YAAYhpG,EAAK2W,WAAW,EAAD,kBAEhC8kB,GAAO,8CAAX,GAAH51I,EAAG,WACR41I,EAAQ51I,GAAK,CAAD,eAC+D,OAA/E4kJ,EAAyB,kBAAoBsb,GAAsBlgK,IAAM,GAAM,iDAMf,GAD5D86N,EAAe5yJ,EAAY/gD,OAAO,eAChBuzM,GAAmB9kF,EAASklF,GAChC,CAAD,kDAEnBllF,EAAQ/+E,KAAOikK,EAEf7F,GAAwB,SAAA6E,GACvB,OAAKt6N,MAAMC,QAAQq6N,GACb,GAAN,eAAWA,GAAqB,CAAElkF,IADgB,EAEnD,IACAu/E,EAAqC,GAAD,eAAKD,GAAiC,CAAEt/E,KAAU,4CACtF,gBAvBgC,sCAyB3B0hF,GAAiC,SAAA1hF,GACtC,IAAQzR,EAA6ByR,EAA7BzR,UAAWi8B,EAAkBxqB,EAAlBwqB,QAASvpG,EAAS++E,EAAT/+E,KAE5Bo+J,GAAwB,SAAA6E,GACvB,OAAKt6N,MAAMC,QAAQq6N,GACZA,EAAsBj+M,QAC5B,SAAAk/M,GAAS,QAAM52F,IAAc42F,EAAU52F,WAAai8B,IAAY26D,EAAU36D,SAAWvpG,IAASkkK,EAAUlkK,KAAK,IAF5D,EAInD,GACD,EAgCA,OACC,iBAAK/0B,UAAU,kBAAiB,WAC/B,UAAC,GAAS,YACT,kBAAMA,UAAU,UAAU8kE,IAAKuiH,EAASzI,SAAU,SAAAr+M,GAAC,OAAIA,EAAEwtF,gBAAgB,EAAC,WACzE,gBAAK/tD,UAAU,yBAAwB,SAAC,oBACxC,iBAAKA,UAAU,+BAA8B,WAC5C,SAAC,GAAK,CACL9+B,MAAM,aACN+W,KAAK,QACLusG,SAAU,kBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,QAAQ,EACjF6lL,WAAYwZ,MAEb,SAAC,GAAK,CACLx3N,MAAM,YACN+W,KAAK,QACLusG,SAAU,kBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,QAAQ,EACjF6lL,WAAYwZ,MAEb,SAAC,GAAK,CACLx3N,MAAM,QACN+W,KAAK,QACLgnM,QAAS,kBAAG90K,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,QAAQ,EAChF6lL,WAAYwZ,MAEb,SAAC,GAAM,CACNx3N,MAAM,cACN89M,YAAY,cACZ/mM,KAAkC,OAA5Bw9M,SAA4B,IAA5BA,QAA4B,EAA5BA,GAA8Bx9M,KACpCrL,SAAqC,OAA5B6oN,SAA4B,IAA5BA,QAA4B,EAA5BA,GAA8B7oN,UAAW,GAClD43G,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,WAAW,KAE7Ew0N,IAAWD,MACZ,SAAC,GAAM,CACNrzN,MAAM,eACN89M,YAAY,eACZ/mM,KAAgC,OAA1B49M,SAA0B,IAA1BA,QAA0B,EAA1BA,GAA4B59M,KAClCrL,SAAmC,OAA1BipN,SAA0B,IAA1BA,QAA0B,EAA1BA,GAA4BjpN,UAAW,GAChD43G,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,YAAY,KAGlE,OAAdy0N,SAAc,IAAdA,QAAc,EAAdA,GAAgB9iF,YAChB,iCACC,SAAC,GAAM,CACNzwI,MAAM,iBACN89M,YAAY,iBACZ/mM,MAAmC,OAA7By9M,SAA6B,IAA7BA,QAA6B,EAA7BA,GAA+Bz9M,OAAQ,GAC7CrL,SAAsC,OAA7B8oN,SAA6B,IAA7BA,QAA6B,EAA7BA,GAA+B9oN,UAAW,GACnD43G,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,iBAAiB,EACpF8kG,IAAK+tH,KAE6B,OAAlC8C,SAAkC,IAAlCA,IAA2C,QAAT,EAAlCA,GAAoC/oN,eAAO,WAAT,EAAlC,EAA6CtP,QAAS,IACtD,SAAC,GAAM,CACN4D,MAAM,qBACN89M,YAAY,qBACZ/mM,KAAwC,OAAlC09M,SAAkC,IAAlCA,QAAkC,EAAlCA,GAAoC19M,KAC1CrL,SAA2C,OAAlC+oN,SAAkC,IAAlCA,QAAkC,EAAlCA,GAAoC/oN,UAAW,GACxD43G,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,sBAAsB,KAGhE,OAA1B+1N,SAA0B,IAA1BA,IAAmC,QAAT,EAA1BA,GAA4BnpN,eAAO,WAAT,EAA1B,EAAqCtP,QAAS,IAC9C,SAAC,GAAM,CACN4D,MAAM,aACN89M,YAAY,aACZ/mM,KAAgC,OAA1B89M,SAA0B,IAA1BA,QAA0B,EAA1BA,GAA4B99M,KAClCrL,SAAmC,OAA1BmpN,SAA0B,IAA1BA,QAA0B,EAA1BA,GAA4BnpN,UAAW,GAChD43G,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,UAAU,QAKjF,SAACmvN,GAAU,CACVC,QAAM,EACNluN,MAAM,0BACNquN,cAAc,YACdC,YAAY,UACZH,aAAc,SAAArvN,GAAK,OAAIo3N,GAAmBp3N,EAAO,eAAe,EAChEsvN,WAAY,SAAAtvN,GAAK,OAAIo3N,GAAmBp3N,EAAO,eAAe,EAC9D2vN,WAAYA,KAEb,SAAC,GAAK,CACLzuN,MAAM,4BACNgL,KAAK,SACLs4G,SAAU,kBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,iBAAiB,QAG5F,iBAAK2G,UAAU,mBAAkB,WAChC,iBAAKA,UAAU,2BAA0B,WACxC,SAAC,GAAM,CAAC0kF,MAAM,SAASo2C,QAAQ,aAAaF,OAAK,EAACpqD,QAAS2mH,MAC3D,SAAC,GAAM,CAACzyG,MAAM,QAAQk2C,OAAK,EAACQ,eAAe,aAAa5qD,QAtHrC,WAAO,IAAD,EAC9BkkH,GAAkBnC,IACX,OAAPlL,QAAO,IAAPA,GAAgB,QAAT,EAAPA,EAASr7M,eAAO,OAAhB,EAAkB2kB,OACnB,OAqHM+kH,EAAKrG,SAAWuL,EAAMG,QACtB,SAAC,GAAM,CAACr2B,MAAM,gBAAgBk2C,OAAK,EAACQ,eAAe,gBAAgB5qD,QAAS,kBAAM69C,EAAS5P,EAAOiB,aAAa,WAKpG,OAAbozE,QAAa,IAAbA,OAAa,EAAbA,EAAex1N,QAAS,IACxB,iBAAK0iC,UAAU,UAAS,WACvB,SAAC,GAAM,CAAC0kF,MAAM,QAAQk2C,OAAK,EAAC1uJ,KAAK,YAAYivJ,WAAS,EAAC3qD,QAzc/B,WAAH,OAASgtD,GAAe,0BAA2B,IAAIx9G,MAAOwxK,iBAAkBsB,EAAe,KA0cpH,SAAC,GAAK,CAACjxI,QAAS8yI,GAAuBxtN,KAAM2rN,OAGpB,KAAb,OAAbA,QAAa,IAAbA,OAAa,EAAbA,EAAex1N,UAAgB,eAAI0iC,UAAU,aAAY,SAAC,iCAG5D,UAAC,GAAK,CACLo7H,eAAe,WACfr9H,UAAW01L,IAAyBE,GACpCrvB,cAAe,kBAAMovB,IAAwB,EAAM,EAAC,WAEpD,SAAC,GAAW,CAACh+E,KAAM49E,KACnB,gBAAKtzL,UAAU,UAAS,UACvB,kBAAM4+K,SAAU0Y,GAAsB,WAErC,SAAC,GAAM,CACNh4I,aAA6B,OAAfg0I,QAAe,IAAfA,OAAe,EAAfA,EAAiBd,eAC/BtxN,MAAM,gBACN89M,YAAY,gBACZ/mM,KAAK,iBACLrL,SAAa,OAAJq1I,QAAI,IAAJA,GAAkB,QAAd,EAAJA,EAAM8sE,oBAAY,OAAS,QAAT,EAAlB,EAAoBniN,eAAO,WAAvB,EAAJ,EAA6BmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAOi1G,YAA4B,OAAf2hF,QAAe,IAAfA,OAAe,EAAfA,EAAiB3hF,SAAQ,MAAK,MAE1G,SAAC,GAAQ,CAACv1G,YAAY,iBAAiBnkB,KAAK,wBACjB,OAA1B67M,SAA0B,IAA1BA,QAA0B,EAA1BA,GAA4Bx2N,QAAS,IACrC,SAAC,GAAK,CAACukF,QAASqzI,GAAsB/tN,KAAM2sN,GAA4B9B,aAAc,KAGjD,OAArCiE,SAAqC,IAArCA,IAA8C,QAAT,EAArCA,GAAuCrpN,eAAO,WAAT,EAArC,EAAgDtP,QAAS,IACzD,iCACGg3N,KACD,iCACC,SAAC,GAAM,CACNh1I,aAA6B,OAAfg0I,QAAe,IAAfA,OAAe,EAAfA,EAAiBb,oBAC/BvxN,MAAM,qBACN89M,YAAY,qBACZ/mM,KAAK,sBACLrL,SAA8C,OAArCqpN,SAAqC,IAArCA,QAAqC,EAArCA,GAAuCrpN,UAAW,MAE5D,SAAC,GAAQ,CAACwvB,YAAY,iBAAiBnkB,KAAK,6BACZ,OAA/B+7M,SAA+B,IAA/BA,QAA+B,EAA/BA,GAAiC12N,QAAS,IAC1C,SAAC,GAAK,CAACukF,QAASqzI,GAAsB/tN,KAAM6sN,GAAiChC,aAAc,QAY9F,SAAC,GAAM,CACNp3D,OAAK,EACL16E,UAAWi2I,GACXzxG,MAAM,4BACN02C,eAAe,uBACf5qD,QAASmoH,SAIZ,SAAC,GAAM,CAACj0G,MAAM,OAAO02C,eAAe,cAAcR,OAAK,aA6C1D,UAAC,GAAK,CACL78H,UAAW61L,GACXtvB,cAjTmC,WACrCovB,IAAwB,GACxBG,KACAV,EAAwB,IACxBkB,GAAgC,GACjC,EA6SGvd,SA3nB0B,WAC5B+c,KACAQ,GAAgC,GACjC,EAynBGj5D,eAAe,wBACf27C,iBAAe,aAEf,SAAC,GAAW,CAACrhE,KAAM49E,KACnB,iBAAKtzL,UAAU,wBAAuB,WACnCs0L,KACD,kBAAMt0L,UAAU,iBAAiB4+K,SAAU2Y,GAAqB,WAC/D,SAAC,GAAM,CACNt/M,KAAM,YACN+mM,YAAY,iBACZpyM,SAAuB,OAAdopN,SAAc,IAAdA,QAAc,EAAdA,GAAgBppN,UAAW,GACpC0yE,aAA6B,OAAfg0I,QAAe,IAAfA,OAAe,EAAfA,EAAiB3/E,aAEhC,SAAC,GAAM,CAACinB,OAAK,EAACl2C,MAAM,sBAGrB4vG,KACA,kBAAOt0L,UAAU,gBAAe,8BAA8B,OAAfszL,QAAe,IAAfA,OAAe,EAAfA,EAAiBwB,eAAgB,GAAE,eAClE,OAAfxB,QAAe,IAAfA,OAAe,EAAfA,EAAiByB,eAAgB,OAGnC,iBAAK/0L,UAAU,mBAAkB,WAChC,SAAC,GAAQ,CACRyxL,YAAa,SAAA18J,GAAI,OAAIy+J,EAAelxK,KAAOyS,GAAM,EACjD47J,aAA6B,OAAhBqC,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBjmN,KAAI,SAAA+mI,GAAO,OAAIA,EAAQshF,mBAAmB,MAAK,MAE/E,iBAAKp1L,UAAU,uBAAsB,WACpC,gBAAKA,UAAU,oBAAmB,SAAkB,OAAhBgzL,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBjmN,KArQjC,SAAH,EAAwGqvJ,GAAS,IAA3Gg5D,EAAmB,EAAnBA,oBAAqBmD,EAAmB,EAAnBA,oBAAqBW,EAAgB,EAAhBA,iBAAkB9pF,EAAQ,EAARA,SAAU6E,EAAS,EAATA,UAAWk8E,EAAa,EAAbA,cACxGv2J,EAAatX,KAAO8yK,EAAqB,cAE/C,GAAKhvJ,GAAgB9jB,KAAAA,SAAgB8jB,GAArC,CAEA,IADmBA,EAAY6I,OAAOrV,EAAY,OACjC,OAAO,KACxB,MAA0CokG,GAAco3D,GAAoB,eAArE+D,EAAoB,KAAEr6D,EAAS,KACtC,EAA6Bd,GAAcu6D,GAApCa,GAAwD,YAAtC,GAEzB,OACC,SAAC,GAAW,CACXpJ,SAAUmJ,GAAwB,aAClClJ,OAAQmJ,GAAsB,WAC9B10G,MAAOw0G,EACPG,WAAYjqF,EAEZ6E,UAAWA,EACXi8E,SAAU4H,GACVnrC,SAAUsrC,GACV9H,cAAeA,EACfp7J,KAAM+pG,GAAa,aACnBsxD,mBAAoBD,GANf/zD,EAZkD,CAqB1D,OA8OM,kBAAMp8H,UAAU,oBAAoB4+K,SAAUma,GAA4B,WACzE,SAAC5J,GAAU,CAACjjN,KAAK,OAAOkjN,QAAM,EAACG,cAAc,YAAYC,YAAY,UAAUtuN,MAAM,sBACrF,SAAC,GAAQ,CACRA,MAAM,SACNk7B,YAAY,kEACZnkB,KAAK,mBAEN,SAAC,GAAM,CAACmjJ,eAAe,4BAA4B12C,MAAM,kBAAkBk2C,OAAK,cAI9D,OAApBs4D,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,QAAS,IAC/B,iBAAK0iC,UAAU,oBAAmB,WACjC,SAAC,GAAK,CAAC6hD,QAASszI,GAAkChuN,KAAM+rN,EAAsBlB,aAAc,KAC5F,SAAC,GAAM,CACNttG,MAAM,eACNk2C,OAAK,EACLpqD,QAASknH,GACTx3I,SAC8C,IAA7CkzI,EAAkC91N,QAAiBo4I,EAAKrG,SAAWuL,EAAMG,OAASs7E,GAA8B,KAGlH,SAAC,GAAM,CACN3xG,MAAM,4BACNk2C,OAAK,EACLQ,eAAe,uBACf5qD,QAASwmH,GACT92I,SAAUk0I,GAA6B92N,QAAU,cAOtD,SAAC,GAAY,CACZygC,UAAWskH,EAAgBF,QAC3Bx1G,OAAQ01G,EAAgBD,OAAS,SAAW,YAC5CkiD,cAAe,kBAAMhiD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,EAAC,UAExF,yBAAMC,EAAgBz6F,aAGvB,SAAC,GAAO,CAACk9C,IAAK8lH,EAAW,SAAC,aAG7B,ECp9BA,GA/FoB,SAAH,GAA4E,IAAD,IAArE0O,EAAQ,EAARA,SAAU90G,EAAQ,EAARA,SAAU+0G,EAAgB,EAAhBA,iBAAkBC,EAAS,EAATA,UAAWC,EAAa,EAAbA,cACvE,GAAwBtuH,EAAAA,EAAAA,UAASmuH,GAAY,IAAG,eAAzCI,EAAI,KAAEC,EAAO,KACpB,GAAwCxuH,EAAAA,EAAAA,UAASouH,GAAoB,IAAG,eAAjEK,EAAY,KAAEC,EAAe,KAEpC,GAA8C1uH,EAAAA,EAAAA,UAAS,IAAG,eAAnD2uH,EAAe,KAAEC,EAAkB,KAC1C,GAA8D5uH,EAAAA,EAAAA,UAAS,IAAG,eAAnE6uH,EAAuB,KAAEC,EAA0B,KAEpDC,EAAmB,SAAH,GAAoB,IAAd/vL,EAAM,EAANA,OACvBgwL,GAAI,OAAOT,GACfS,EAAOC,EAAuBD,EAAMhoN,SAASg4B,EAAOnqC,QACpD25N,EAAQQ,EACT,EAEME,EAAuB,SAAH,GAAoB,IAAdlwL,EAAM,EAANA,OAC3BgwL,GAAI,OAAOP,GACfO,EAAOC,EAAuBD,EAAMhoN,SAASg4B,EAAOnqC,QACpD65N,EAAgBM,EACjB,EAEMC,EAAyB,SAACD,EAAMG,GACrC,IAAMC,EAAcJ,EAAKl3N,MAAK,SAAAkE,GAAI,OAAIA,EAAK24C,KAAOw6K,CAAU,IAI5D,OAHIC,EAAY99L,QAAS89L,EAAY99L,SAAW89L,EAAY99L,QACvD89L,EAAY99L,SAAU,EAC3B09L,EAAOA,EAAKptN,KAAI,SAAA5F,GAAI,OAAKA,EAAK24C,KAAOw6K,EAAaC,EAAcpzN,CAAI,GAErE,EA2BMqzN,EAAkB,SAAH,EAAkCC,EAAkBr+D,GAAG,IAAjDx+C,EAAW,EAAXA,YAAanhF,EAAO,EAAPA,QAASqjB,EAAE,EAAFA,GAAE,OAClD,SAAC46K,GAAQ,CAAC98G,YAAaA,EAAa99D,GAAIA,EAAI0kE,SAAUi2G,EAAkBh+L,QAASA,GAAc2/H,EAAO,EAGjGu+D,EAA8B,OAAZf,QAAY,IAAZA,GACkF,QADtE,EAAZA,EACrB7/M,QAAO,gBAAG6jG,EAAW,EAAXA,YAAW,OAAkB,OAAXA,QAAW,IAAXA,OAAW,EAAXA,EAAa7nG,cAAc9X,SAAS+7N,EAAwBjkN,cAAc,WAAC,WADtE,EAAZ,EAErBhJ,KAAI,SAAC4lB,EAASypI,GAAG,OAAKo+D,EAAgB7nM,EAAS0nM,EAAsBj+D,EAAI,IAEtEw+D,EAAkB,OAAJlB,QAAI,IAAJA,GAC8E,QAD1E,EAAJA,EACjB3/M,QAAO,gBAAG6jG,EAAW,EAAXA,YAAW,OAAkB,OAAXA,QAAW,IAAXA,OAAW,EAAXA,EAAa7nG,cAAc9X,SAAS67N,EAAgB/jN,cAAc,WAAC,WAD1E,EAAJ,EAEjBhJ,KAAI,SAAC4lB,EAASypI,GAAG,OAAKo+D,EAAgB7nM,EAASunM,EAAkB99D,EAAI,IAExE,OACC,iBAAKp8H,UAAU,cAAa,WAC3B,iBAAKA,UAAU,4BAA2B,WACzC,gBAAKA,UAAU,qBAAoB,SAAEw5L,KACrC,SAAC,GAAK,CAAC3+D,UAAU,aAAaskD,UAAU,UAAU36F,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAO4vL,EAAmB5vL,EAAOnqC,MAAM,KAC5G,gBAAKggC,UAAU,qBAAoB,SAAE46L,KACrC,gBAAK56L,UAAU,8BAA6B,UAC3C,SAAC,GAAM,CAAC0kF,MAAM,gBAAgB02C,eAAe,cAAcR,OAAK,EAACE,QAAQ,aAAatqD,QA5C7D,WAC5B,IAAMqqH,GAAY,OAAOjB,GACnBkB,EAAWpB,EAAK3/M,QAAO,SAAA5S,GAE5B,OADIA,EAAKs1B,SAASo+L,EAAap9N,KAAK,OAAK0J,GAAI,IAAEs1B,SAAS,MAChDt1B,EAAKs1B,OACd,IAEAo9L,EAAgBgB,GAChBlB,EAAQmB,GACRt2G,EAASq2G,EACV,UAsCE,iBAAK76L,UAAU,6BAA4B,WAC1C,iBAAKA,UAAU,qBAAoB,UACjCy5L,EAAc,KAAC,4BAAM,KAAGF,EAAiBj8N,OAAO,YAElD,SAAC,GAAK,CAACu9J,UAAU,aAAaskD,UAAU,UAAU36F,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAO8vL,EAA2B9vL,EAAOnqC,MAAM,KACpH,gBAAKggC,UAAU,qBAAoB,SAAE26L,KACrC,gBAAK36L,UAAU,8BAA6B,UAC3C,SAAC,GAAM,CACN0kF,MAAM,oBACNk2C,OAAK,EACLC,UAAU,aACVO,eAAe,qBACf5qD,QAhD0B,WAC9B,IAAMsqH,GAAQ,OAAOpB,GACfmB,EAAejB,EAAa7/M,QAAO,SAAA5S,GAExC,OADIA,EAAKs1B,SAASq+L,EAASr9N,KAAK,OAAK0J,GAAI,IAAEs1B,SAAS,MAC5Ct1B,EAAKs1B,OACd,IAEAo9L,EAAgBgB,GAChBlB,EAAQmB,GACRt2G,EAASq2G,EACV,WA4CD,EAIaH,GAAW,SAAH,GAAiF,IAA3E98G,EAAW,EAAXA,YAAa4G,EAAQ,EAARA,SAAU1kE,EAAE,EAAFA,GAAG,EAAD,EAAErjB,QAAAA,OAAO,OAAQ,EAAExkB,EAAI,EAAJA,KAAK,EAAD,EAAE8iN,UAAAA,OAAS,OAAQ,EACvFC,GAAavvH,EAAAA,EAAAA,SAEbwvH,EAAkB,CAAEx+L,QAAAA,GAG1B,OAFIs+L,UAAkBE,EAAgBx+L,SAGrC,iBAAKuD,UAAU,WAAU,WACxB,oBAAO9zB,KAAK,WAAW4zC,GAAIk7K,EAAY/iN,KAAMA,EAAMusG,SAAUA,EAAUxkH,MAAO8/C,GAAQm7K,KACtF,kBAAOxe,QAASue,EAAW,SAAEp9G,MAGhC,EC+kBA,GA1qByB,WACxB,MAA+E2jC,KAAvEgB,EAAG,EAAHA,IAAKF,EAAe,EAAfA,gBAAiBC,EAAkB,EAAlBA,mBAAoBQ,EAAwB,EAAxBA,yBAGlD,GAA0C33C,EAAAA,EAAAA,YAAU,eAA7C2nH,EAAa,KAAEC,EAAgB,KAEtC,GAAsC5nH,EAAAA,EAAAA,eAASj+F,GAAU,eAAlDk5D,EAAW,KAAEotJ,EAAc,KAElC,GAA8CroH,EAAAA,EAAAA,eAASj+F,GAAU,eAA1DguN,EAAe,KAAEC,EAAkB,KAC1C,GAAwChwH,EAAAA,EAAAA,eAASj+F,GAAU,eAApDkuN,EAAY,KAAEC,EAAe,KAEpC,GAAwDlwH,EAAAA,EAAAA,UAAS,IAAG,eAA7D+nH,EAAoB,KAAEC,EAAuB,KAEpD,GAAwChoH,EAAAA,EAAAA,eAASj+F,GAAU,eAApDouN,EAAY,KAAEC,EAAe,KAGpC,GAAgDpwH,EAAAA,EAAAA,UAAS,IAAG,eAArD6nH,EAAgB,KAAEC,EAAmB,KAE5C,GAAkF9nH,EAAAA,EAAAA,WAAS,GAAM,eAA1FqwH,EAAiC,KAAEC,EAAoC,KAC9E,GAA8EtwH,EAAAA,EAAAA,WAAS,GAAM,eAAtFuwH,EAA+B,KAAEC,EAAkC,KAE1E,GAA4DxwH,EAAAA,EAAAA,WAAS,GAAM,eAA5CywH,GAAF,KAA2B,MAExD,GAA8CzwH,EAAAA,EAAAA,WAAS,GAAM,gBAAtD0wH,GAAe,MAAEC,GAAkB,MAG1C,GAAmD7+D,IAAU,GAAM,iBAA5D8+D,GAAgB,MAAEC,GAAsB,MAC/C,GAA2C/+D,IAAU,GAAM,iBAApDg/D,GAAY,MAAEC,GAAkB,MACvC,GAAqDj/D,IAAU,GAAM,iBAA9Dk/D,GAAiB,MAAEC,GAAuB,MAGjD,IAAwBjxH,EAAAA,EAAAA,UAAS,CAAC,GAAE,iBAA7B82C,GAAI,MAAEC,GAAO,MACpB,IAA4C/2C,EAAAA,EAAAA,UAAS,CACpDmpC,QAAS,GACT3C,SAAU,GACV0qF,cAAe,GACfC,cAAe,GACfC,YAAa,KACZ,iBANK9H,GAAc,MAAEC,GAAiB,MASlC8H,IAAsBxxH,EAAAA,EAAAA,UAAQ,WACnC,MAAO,CACN,CACCkT,OAAQ,IACRr8B,QAAS,CACR,CAECq8B,OAAQ,IAERxC,KAAM,SAAA0C,GAAG,OAAI,+BAAM,OAAHA,QAAG,IAAHA,OAAG,EAAHA,EAAKA,IAAIx5G,OAAQ,GAAK,GAEvC,CACCs5G,OAAQ,cACRD,SAAU,cAEX,CACCC,OAAQ,eACRD,SAAU,cAEVsT,SAAU,SAAC1lH,EAAGnN,GACb,OACC,IAAIshD,KAAKsC,KAAOz2C,EAAEi1G,SAAS27G,YAAa,oBAAoBp3M,OAAO,sBACnE,IAAI26B,KAAKsC,KAAO5jD,EAAEoiH,SAAS27G,YAAa,oBAAoBp3M,OAAO,qBAErE,GAED,CACC64F,OAAQ,aACRD,SAAU,aAEX,CACCC,OAAQ,SACRD,SAAU,mBAEX,CACCC,OAAQ,gBACRD,SAAU,sBAEX,CACCC,OAAQ,WACRxC,KAAM,SAAA0C,GAAG,OACR,gBAAKp+E,UAAU,OAAO0kF,MAAM,oBAAoBlU,QAAS,kBAAMksH,GAAwBt+G,EAAI,EAAC,UAC3F,SAAC,GAAI,CAACi5C,KAAK,cACN,GAGR,CACCn5C,OAAQ,WACRxC,KAAM,SAAA0C,GAAG,OACR,gBAAKp+E,UAAU,OAAO0kF,MAAM,gBAAgBlU,QAAS,kBAAMmsH,GAA6Bv+G,EAAI,EAAC,UAC5F,SAAC,GAAI,CAACi5C,KAAK,kBACN,GAGR,CACCn5C,OAAQ,aACRxC,KAAM,SAAA0C,GAAG,OACR,gBAAKp+E,UAAU,OAAO0kF,MAAM,aAAalU,QAAS,kBAAMosH,GAAsBx+G,EAAI,EAAC,UAClF,SAAC,GAAI,CAACi5C,KAAK,eACN,KAMZ,GAAG,IAGG89D,IAAmCnqH,EAAAA,EAAAA,UAAQ,WAChD,MAAO,CACN,CACCkT,OAAQ,IACRr8B,QAAS,CACR,CACCq8B,OAAQ,IACRxC,KAAM,SAAA0C,GAAG,aAAI,gCAAE,IAAC,mBAAe,OAAHA,QAAG,IAAHA,GAAQ,QAAL,EAAHA,EAAKA,WAAG,WAAL,EAAH,EAAUx5G,OAAQ,KAAO,GAEtD,CACCs5G,OAAQ,oBACRD,SAAU,SAAAG,GAAG,OAAQ,OAAHA,QAAG,IAAHA,GAAAA,EAAKg3G,oBAAmB,UAAS,OAAHh3G,QAAG,IAAHA,OAAG,EAAHA,EAAKg3G,qBAAmB,WAAY,OAAHh3G,QAAG,IAAHA,OAAG,EAAHA,EAAKikB,UAAS,YAAO,OAAHjkB,QAAG,IAAHA,OAAG,EAAHA,EAAKrpD,KAAM,GAE/G,CACCmpD,OAAQ,SACRD,SAAU,iBAEX,CACCC,OAAQ,SACRD,SAAU,SAAAG,GAAG,OACZ,gBACCp+E,UAAU,OACV0kF,MAAM,iBACNxkC,SAAUk+B,EAAI61B,UACdzjC,QAAS,kBAAOkrH,GAAmClG,GAA+Bp3G,EAAI,EAAC,UAEvF,SAAC,GAAI,CAACi5C,KAAK,eACN,KAMZ,GAAG,CAACqkE,IAGEmB,GAAW,SAAChxN,EAAGnN,GAAC,OAAMmN,EAAE+xG,YAAcl/G,EAAEk/G,YAAc,GAAK,CAAC,EAE5D63G,IAA+BzqH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,MAC9Cp+F,EAAc,OAAJq1I,SAAI,IAAJA,IAAa,QAAT,EAAJA,GAAMjT,eAAO,OAAS,QAAT,EAAb,EAAepiI,eAAO,WAAlB,EAAJ,EAAwBmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAO++H,eAAiB7f,EAAaG,KAAK,IAEjG,OADAnvI,EAAiB,QAAV,EAAGA,SAAO,aAAP,EAASm6C,KAAK81K,IACjB,OAAK56E,GAAKjT,SAAO,IAAEpiI,QAAAA,GAC3B,GAAG,CAACq1I,KACE66E,IAAuB9xH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,MACtCp+F,EAAc,OAAJq1I,SAAI,IAAJA,IAAiB,QAAb,EAAJA,GAAM86E,mBAAW,OAAS,QAAT,EAAjB,EAAmBnwN,eAAO,WAAtB,EAAJ,EAA4BmN,QAAO,SAAA2iB,GAChD,IAAK,IAAD,EAEH,OAAmC,OAA5B+4L,SAA4B,IAA5BA,IAAqC,QAAT,EAA5BA,GAA8B7oN,eAAO,WAAT,EAA5B,EAAuCymB,MAAK,SAAAomL,GAAU,OAAIA,EAAWz5M,QAAU08B,EAAOi1G,QAAQ,GAItG,CAHE,MAAOzrG,GAER,OADAia,QAAQja,MAAM,QAASA,GAChBxJ,EAAOi1G,WAAax/H,SAASsiN,GAAe9iF,SACpD,CACD,IAEA,OADA/kI,EAAiB,QAAV,EAAGA,SAAO,aAAP,EAASm6C,KAAK81K,IACjB,OAAK56E,GAAK86E,aAAW,IAAEnwN,QAAAA,GAC/B,GAAG,CAACq1I,GAAMwyE,GAAe9iF,SAAU8jF,KAC7BuH,IAAuBhyH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,MAC1C,IAAKypH,GAAe9iF,SAAU,OAAOsQ,GAAK9kJ,QAC1C,IAAIyP,EAAc,OAAJq1I,SAAI,IAAJA,IAAa,QAAT,EAAJA,GAAM9kJ,eAAO,OAAS,QAAT,EAAb,EAAeyP,eAAO,WAAlB,EAAJ,EAAwBmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAOi1G,WAAax/H,SAASsiN,GAAe9iF,SAAS,IAE5G,OADA/kI,EAAiB,QAAV,EAAGA,SAAO,aAAP,EAASm6C,KAAK81K,IACjB,OAAK56E,GAAK9kJ,SAAO,IAAEyP,QAAAA,GAC3B,GAAG,CAACq1I,GAAMwyE,GAAe9iF,WACnBsrF,IAAwBjyH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IACvCp+F,EAAc,OAAJq1I,SAAI,IAAJA,IAAoB,QAAhB,EAAJA,GAAM2Z,sBAAc,WAAhB,EAAJ,EAAsBhvJ,QAAQmN,QAAO,SAAAmjN,GAAO,OAAyB,IAArBA,EAAQvrF,QAAc,IAEpF,OADA/kI,EAAiB,QAAV,EAAGA,SAAO,aAAP,EAASm6C,KAAK81K,IACjB,OAAK56E,GAAK2Z,gBAAc,IAAEhvJ,QAAAA,GAClC,GAAG,CAACq1I,KAGEk7E,GAAO,yCAAG,yGACK56E,EAAIrP,uBAAuB,KAAD,GAAxCsP,EAAK,SACAN,GAAQM,GAAO,2CAC1B,kBAHY,oCAMb53C,EAAAA,EAAAA,YAAU,WACTuyH,IACD,GAAG,KACHvyH,EAAAA,EAAAA,YAAU,WACLuxH,IAAqBb,GACxB,uBAAC,6GACwB/4E,EAAI1N,sBAAsBymF,EAAahnF,SAAS,KAAD,EAAxD,GAAT8oF,EAAS,OACA,CAAD,gDACNC,EAA2BD,EAA3BC,UAAWC,EAAgBF,EAAhBE,YACnBrK,EAAoBqK,GAAe,IACnCnK,EAAwBkK,GAAa,IACrC1B,EAAmC0B,EAAU//N,QAAU,GAEvDs+N,GAA8C,OAApB1I,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,SAAU,GAAG,2CAR9D,IAWA21N,EAAoB,IACpBE,EAAwB,IACxBwI,GAAmC,GACnCC,GAA0B,GAE5B,GAAG,CAACO,KAIJ,IAAMO,GAAuB,yCAAG,WAAMt+G,GAAG,0FACxB,GADwB,GAChB,OAAHA,QAAG,IAAHA,GAAS,QAAN,EAAHA,EAAK+D,YAAI,WAAN,EAAH,EAAW/D,MAAO,CAAC,EAAhC0C,EAAQ,EAARA,SACM,CAAD,gDAEa,OADlBwzB,EAAsBxzB,EAAtBwzB,QAAS3C,EAAa7wB,EAAb6wB,SACjB4pF,EAAgBz6G,GAAU,SACHyhC,EAAIlO,6BAA6BC,EAAS3C,GAAU,KAAD,EAA5D,GAAR4rF,EAAQ,OACA,CAAD,gBACyF,OAArGz6E,EAAyB,sEAAsE,GAAM,2BAGhG06E,EAAgBD,EACpBxjN,QAAO,SAAA0jN,GAAE,OAAKA,EAAGC,SAAS,IAC1B3wN,KAAI,gBAAGykI,EAAQ,EAARA,SAAU/B,EAAoB,EAApBA,qBAAsBl7C,EAAK,EAALA,MAAK,MAAQ,CAAEz0C,GAAI0xF,EAAU5zB,YAAY,GAAD,OAAK6xB,EAAoB,cAAMl7C,GAAS,IACnHopI,EAAmBJ,EACvBxjN,QAAO,SAAA0jN,GAAE,OAAIA,EAAGC,SAAS,IACzB3wN,KAAI,gBAAGykI,EAAQ,EAARA,SAAU/B,EAAoB,EAApBA,qBAAsBl7C,EAAK,EAALA,MAAK,MAAQ,CAAEz0C,GAAI0xF,EAAU5zB,YAAY,GAAD,OAAK6xB,EAAoB,cAAMl7C,GAAS,IAEzHknI,EAAkE,KAAb,OAAhBkC,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBrgO,SACvDs+N,GAA8C,OAApB1I,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,SAAU,GAC1D+9N,EAAgBmC,GAChBrC,EAAmBwC,GACnBzB,KAAqB,4CACrB,gBAtB4B,sCAuBvBS,GAA4B,yCAAG,WAAMv+G,GAAG,mFACrB,OAAHA,QAAG,IAAHA,GAAS,QAAN,EAAHA,EAAK+D,YAAI,WAAN,EAAH,EAAW/D,MAAO,CAAC,EAAhC0C,EAAQ,EAARA,SACRy6G,EAAgBz6G,GAChBs7G,MACwB,OAApBlJ,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,SAAU,GACnCs+N,GAA0B,GAC1B,2CACD,gBAPiC,sCAQ5BgB,GAAqB,yCAAG,WAAMx+G,GAAG,mFACd,OAAHA,QAAG,IAAHA,GAAS,QAAN,EAAHA,EAAK+D,YAAI,WAAN,EAAH,EAAW/D,MAAO,CAAC,EAAhC0C,EAAQ,EAARA,SACRy6G,EAAgBz6G,GAChBk7G,KAAyB,2CACzB,gBAJ0B,sCAarB4B,GAA+B,WACpC5B,KACAT,GACD,EAYMpE,GAAmB,yCAAG,WAAM52N,GAAC,kFASjC,IAAWrC,KATsB,cAEvBgP,IAAN3M,IAEF,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACHglI,OAAiB7lN,IAGZ/F,EAAI,KAAQstN,IAEbttN,EAAKlK,eAAeiB,KACvBiJ,EAAKjJ,GAAgB,QAAZ,EAAGiJ,EAAKjJ,UAAI,aAAT,EAAWm7B,OAAOyB,QAAQ,QAAS,KAC1C3zB,EAAKjJ,KAAMiJ,EAAKjJ,GAAO,OAE7B,gBACiBqkJ,EAAInO,cAAcjtI,GAAM,KAAD,GAAnCkkD,EAAG,SACEA,EAAI/tD,OAAS,EAAGy1N,EAAiB1nK,GACvC0nK,EAAiB,IAAI,kDAE1B5yK,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,gBArBwB,sCAwBnB4yL,GAAqB,SAACp3N,EAAO9B,GAClC,IAAMq0N,EAAe,KAAQkC,IAC7BlC,EAAgBr0N,GAAO8B,EACvB00N,GAAkBnC,EACnB,EAGMsL,GAAwB,yCAAG,WAAMt9N,GAAC,kGACtC,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACGsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtB2zL,EAAY//N,OAAOsjN,YAAYhpG,EAAK2W,WAAW,EAAD,kBAClC8uG,GAAS,8CAAb,GAAH5/N,EAAG,WACR4/N,EAAU5/N,GAAK,CAAD,eAC8D,OAAhF4kJ,EAAyB,iDAAiD,GAAM,iDAW5D,GALlBw4E,IACKhnF,EAAYgnF,EAAZhnF,SACM,IAAGwpF,EAAUxpF,QAAUA,GAE9BypF,EAAqBD,EAArBC,SAAUluJ,EAAWiuJ,EAAXjuJ,OAAM,EACGgvF,GAAck/D,EAAUluJ,GAA3C6uF,EAAK,EAALA,MAAO92G,EAAO,EAAPA,QAEV82G,EAAM,CAAD,gBAC+B,OAAxC5b,EAAyBl7F,GAAS,GAAM,4CAGvB26F,EAAIhO,kBAAkBupF,GAAW,KAAD,GAAzC,GAEF,QAFDzyK,EAAG,cAEF,IAAHA,IAAAA,EAAK2yK,QAAO,iBAKoB,OAJ7BC,EAAcH,EAAUxpF,QAAU,uBAAyB,uBACjEspF,KACA96E,EAAyBm7E,GACjBD,EAAY3yK,EAAZ2yK,QACRjL,EAAiB,CAAC,KAAKiL,KAAY,UAC7Bb,KAAU,KAAD,2BACTr6E,EAAyB,4CAA4C,GAAM,4CAClF,gBAjC6B,sCAoCxBo7E,GAA2B,yCAAG,WAAM39N,GAAC,wFAGoB,GAF7D,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACGsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtBg0L,EAAqBpgO,OAAOsjN,YAAYhpG,EAAK2W,WAC9CksG,MAAkC,OAAfA,QAAe,IAAfA,OAAe,EAAfA,EAAiB59N,SAAU,GAAC,gBAC0B,OAA7EwlJ,EAAyB,8CAA8C,GAAM,0BAMhB,OAHtDxO,EAAuBgnF,EAAvBhnF,QAASt0G,EAAcs7L,EAAdt7L,UACTo+L,EAAsCD,EAAtCC,kBAAmBC,EAAmBF,EAAnBE,eAErB3pF,EAAYwmF,EAAgBnuN,KAAI,SAAAuxN,GAAO,OAAIA,EAAQx+K,EAAE,IAAG,UACvCyiG,EAAI9N,sBAAsBH,EAASI,EAAW0pF,EAAmBz1G,QAAQ01G,IAAiB,KAAD,GAAlG,QAEbv7E,EAAyB,uDAAD,OAAwD9iH,IAChFk8L,KACA/E,OAEAr0E,EAAyB,2EAA2E,GACpG3iG,QAAQ4oC,IAAI,4BAA6B,CAAEuyI,aAAAA,EAAc6C,mBAAAA,EAAoBzpF,UAAAA,KAC7E,4CACD,gBArBgC,sCAwB3BqkF,GAA2B,yCAAG,WAAMx4N,GAAC,sFACzC,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACGsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtB2pG,EAAU/1I,OAAOsjN,YAAYhpG,EAAK2W,WAAW,EAAD,kBAEhC8kB,GAAO,8CAAX,GAAH51I,EAAG,WACR41I,EAAQ51I,GAAK,CAAD,eAC+D,OAA/E4kJ,EAAyB,kBAAoBsb,GAAsBlgK,IAAM,GAAM,iDA8B9E,GAzBG86N,EAAe5yJ,EAAY/gD,OAAO,cAGlCk5M,EAA2BvL,EAAiBj5M,QACjD,gBAAGw9H,EAAa,EAAbA,cAAe69E,EAAmB,EAAnBA,oBAAmB,OACpC79E,IAAkB+jF,EAAakD,oBAAsBpJ,EAAoBpyK,MAAM,KAAK,KAAOg2K,CAAY,IAInGyF,EAAa,CAClB,CAAEp8F,UAAW,KAAMi8B,QAAS,OAAM,eAC/B40D,EAAqBn5M,QAAO,YAAO,SAAJg7C,OAAoBikK,CAAY,MAAC,OAChEuF,EAAyBxxN,KAAI,YAAmD,IAAhDqoN,EAAmB,EAAnBA,oBAAqBmD,EAAmB,EAAnBA,oBACvD,MAAO,CAAEl2F,UAAW+yF,EAAoBpyK,MAAM,KAAK,GAAIs7G,QAASi6D,EAAoBv1K,MAAM,KAAK,GAChG,OAGuBy7K,EAAcprM,MAAK,YAA6B,IAA1BgvG,EAAS,EAATA,UAAWi8B,EAAO,EAAPA,QAClDw6D,EAAc,OAAQhlF,GAAO,IAAE/+E,KAAMikK,IAC3C,EAA2B36D,GAAsBh8B,EAAWi8B,EAASw6D,GAA7Dp6D,EAAK,EAALA,MAAO92G,EAAO,EAAPA,QACf,OAAK82G,IACJ5b,EAAyBl7F,GAAS,IAC3B,EAGT,IACoB,CAAD,kDAEnBksF,EAAQ/+E,KAAOikK,EAEf7F,GAAwB,SAAA6E,GACvB,OAAKt6N,MAAMC,QAAQq6N,GACb,GAAN,eAAWA,GAAqB,CAAElkF,IADgB,EAEnD,IACA8nF,GAA8C,OAApB1I,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,SAAU,GAAG,4CAC7D,gBA/CgC,sCAiD3Bk4N,GAAiC,SAAA1hF,GACtC,IAAQzR,EAA6ByR,EAA7BzR,UAAWi8B,EAAkBxqB,EAAlBwqB,QAASvpG,EAAS++E,EAAT/+E,KAE5Bo+J,GAAwB,SAAA6E,GACvB,OAAKt6N,MAAMC,QAAQq6N,GACZA,EAAsBj+M,QAC5B,SAAAk/M,GAAS,QAAM52F,IAAc42F,EAAU52F,WAAai8B,IAAY26D,EAAU36D,SAAWvpG,IAASkkK,EAAUlkK,KAAK,IAF5D,EAInD,IACA6mK,GAA8C,OAApB1I,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,SAAU,EAC3D,EAEMw6N,GAAoB,yCAAG,WAAM7jF,GAAS,4FACpBsO,EAAInN,yBAAyBnB,GAAW,KAAD,EAAhD,WACD,CAAD,gBAC8C,OAAzD6O,EAAyB,gCAAgC,SACjCP,EAAI1N,sBAAsBymF,EAAahnF,SAAS,KAAD,EAAjE8oF,EAAS,OACfnK,EAAoBmK,EAAUE,aAAe,IAC7CnK,EAAwBiK,EAAUC,WAAW,wBACvCv6E,EAAyB,0BAA0B,GAAM,4CAChE,gBARyB,sCAUpBm1E,GAAoB,yCAAG,WAAMnkF,GAAO,2FACpCA,EAAQ,CAAD,eAC8C,OAAzDgP,EAAyB,0BAA0B,GAAM,mBAClD,GAAK,OAGS,GAHT,EAGcub,GAAsB,KAAM,KAAMvqB,GAArD4qB,EAAK,EAALA,MAAO92G,EAAO,EAAPA,QAEV82G,EAAM,CAAD,eAC+B,OAAxC5b,EAAyBl7F,GAAS,GAAM,mBACjC,GAAK,OAIa,OADlB0sF,EAAYgnF,EAAZhnF,QACRR,EAAQQ,QAAUA,EAAQ,UACYiO,EAAIpN,yBAAyBrB,GAAS,KAAD,GAAhD,GAAgD,SAAnEojF,EAAQ,EAARA,SAAmB,EAATW,UACH,CAAD,gBACsD,OAAnE/0E,EAAyB,oCAAoC,GAAM,mBAC5D,GAAK,YAETo0E,EAAS,CAAD,gBAC+C,OAA1Dp0E,EAAyB,iCAAiC,UAClCP,EAAI1N,sBAAsBymF,EAAahnF,SAAS,KAAD,GAE1B,OAFvC8oF,EAAS,OACfnK,EAAoBmK,EAAUE,aAAe,IAC7CnK,EAAwBiK,EAAUC,WAAW,mBACtC,GAAI,QAGqB,OADjCv6E,EAAyB,iEAAiE,GAC1F3iG,QAAQ3b,KAAK,UAAWsvG,GAAS,mBAC1B,GAAK,4CACZ,gBA9ByB,sCAgCpB4qF,GAAqB,yCAAG,mHAES,KAAb,OAApBxL,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,QAAY,gBACgC,OAArEwlJ,EAAyB,sCAAsC,GAAM,0BAIO,GAD7E84E,GAA8C,OAApB1I,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,SAAU,GACpDqhO,EAAuC,OAApBzL,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBn5M,QAAO,SAAA6kN,GAAG,OAAKA,EAAI3qF,SAAS,IACrD,CAAD,gDACN,OAAPK,EAAYgnF,EAAZhnF,QAAO,UAEuDiO,EAAIzN,yBACzER,EACAqqF,EACA9C,IACC,KAAD,GAJ0D,GAI1D,SAJOjE,EAAQ,EAARA,SAAUC,EAAS,EAATA,UAAWjwK,EAAO,EAAPA,QAASmtF,EAAQ,EAARA,SAAUuoF,EAAW,EAAXA,YAM3C1F,GAAaC,EAAS,iBACc,OAAxC/0E,EAAyBl7F,GAAS,GAAM,2BAGzCk7F,EAAyB,mCACzBqwE,EAAwBp+E,GACxBk+E,EAAoBqK,GACpB3B,EAAmCzI,EAAqB51N,QAAU,GAClEw+N,IAAmB,GAAO,kDAE1B37K,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,kBA7B0B,mCA+D3B,OACC,iBAAKxE,UAAU,mBAAkB,WAChC,UAAC,GAAS,YACT,gBAAKA,UAAU,0BAAyB,SAAC,8BACzC,SAAC,GAAM,CAAC0kF,MAAM,iBAAiBk2C,OAAK,EAACE,QAAQ,WAAWtqD,QA1RvB,WACnCwrH,KACAT,GACD,KAyRG,iBAAKv7L,UAAU,UAAS,WACvB,iBAAKA,UAAU,gCAA+B,WAC7C,SAAC,GAAM,CACNg/K,YAAY,cACZ99M,MAAM,cACN+W,KAAkC,OAA5Bw9M,SAA4B,IAA5BA,QAA4B,EAA5BA,GAA8Bx9M,KACpCrL,SAAqC,OAA5B6oN,SAA4B,IAA5BA,QAA4B,EAA5BA,GAA8B7oN,UAAW,GAClD43G,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,WAAW,KAG/E,SAAC,GAAM,CACNg/M,YAAY,aACZ99M,MAAM,aACN+W,KAA0B,OAApB+kN,SAAoB,IAApBA,QAAoB,EAApBA,GAAsB/kN,KAC5BrL,SAA6B,OAApBowN,SAAoB,IAApBA,QAAoB,EAApBA,GAAsBpwN,UAAW,GAC1C43G,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,UAAU,KAG9E,SAAC,GAAM,CACNg/M,YAAY,eACZ99M,MAAM,eACN+W,KAA0B,OAApB6kN,SAAoB,IAApBA,QAAoB,EAApBA,GAAsB7kN,KAC5BrL,SAA6B,OAApBkwN,SAAoB,IAApBA,QAAoB,EAApBA,GAAsBlwN,UAAW,GAC1C43G,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,gBAAgB,KAGpF,SAACmvN,GAAU,CACVC,QAAM,EACNluN,MAAM,kBACNquN,cAAc,YACdC,YAAY,UACZH,aAAc,SAAArvN,GAAK,OAAIo3N,GAAmBp3N,EAAO,gBAAgB,EACjEsvN,WAAY,SAAAtvN,GAAK,OAAIo3N,GAAmBp3N,EAAO,cAAc,QAG/D,SAAC,GAAM,CAAC0kH,MAAM,SAASo2C,QAAQ,aAAaF,OAAK,EAACpqD,QAAS2mH,KAC1DrE,IACA,iBAAK9yL,UAAU,UAAS,UACI,KAAb,OAAb8yL,QAAa,IAAbA,OAAa,EAAbA,EAAex1N,UAAgB,eAAI0iC,UAAU,aAAY,SAAC,8BAC7C,OAAb8yL,QAAa,IAAbA,OAAa,EAAbA,EAAex1N,QAAS,IAAK,SAAC,GAAK,CAACukF,QAAS26I,GAAqBr1N,KAAM2rN,cAM7E,UAAC,GAAK,CAAC/0L,UAAWg+L,GAAkB3gE,eAAe,aAAakpC,cAAes5B,GAA6B,WAC3G,gBAAK59L,UAAU,oBAAmB,SAAEs7L,EAAY,wBAAoBA,EAAat7L,WAAc,oBAC/F,kBAAMA,UAAU,sBAAsB4+K,SAAUif,GAAyB,WACxE,SAAC,GAAK,CAAC38N,MAAM,aAAa+W,KAAK,YAAYqnE,cAA0B,OAAZg8I,QAAY,IAAZA,OAAY,EAAZA,EAAct7L,YAAa,MACpF,SAAC,GAAM,CACN9+B,MAAM,eACN+W,KAAK,gBACLrL,SAA6B,OAApBkwN,SAAoB,IAApBA,QAAoB,EAApBA,GAAsBlwN,UAAW,GAC1C0yE,cAA0B,OAAZg8I,QAAY,IAAZA,OAAY,EAAZA,EAAce,gBAAiB,KAE9C,SAAC,GAAM,CACNn7N,MAAM,cACN+W,KAAK,WACLrL,SAAqC,OAA5B6oN,SAA4B,IAA5BA,QAA4B,EAA5BA,GAA8B7oN,UAAW,GAClD0yE,aAA0B,OAAZg8I,QAAY,IAAZA,OAAY,EAAZA,EAAc3pF,YAE7B,SAAC,GAAM,CACNzwI,MAAM,UACN+W,KAAK,qBACLrL,SAA8B,OAArBqwN,SAAqB,IAArBA,QAAqB,EAArBA,GAAuBrwN,UAAW,GAC3C0yE,aAA0B,OAAZg8I,QAAY,IAAZA,OAAY,EAAZA,EAAckD,sBAE7B,SAACrP,GAAU,CACVM,uBAAmC,OAAZ6L,QAAY,IAAZA,OAAY,EAAZA,EAAcgB,gBAAiBh6K,KAAmB,OAAZg5K,QAAY,IAAZA,OAAY,EAAZA,EAAcgB,cAAe,cAAcj3M,OAAO,cAC/GqqM,qBAAiC,OAAZ4L,QAAY,IAAZA,OAAY,EAAZA,EAAciB,cAAej6K,KAAmB,OAAZg5K,QAAY,IAAZA,OAAY,EAAZA,EAAciB,YAAa,cAAcl3M,OAAO,cACzG+pM,QAAM,EACNG,cAAc,WACdC,YAAY,SACZtuN,MAAM,oBAEP,SAAC,GAAM,CAACwjH,MAAM,OAAOo2C,QAAQ,eAAeF,OAAK,WAInD,SAAC,GAAK,CAAC78H,UAAWk+L,GAAc33B,cA5VD,WAChC43B,KACAX,GACD,EAyV2EngE,eAAe,gBAAe,UACtG,iBAAKp7H,UAAU,UAAS,WACvB,SAAC,GAAW,CACXw5L,UAAU,WACVC,cAAc,oBACdH,SAAU8B,EACV7B,iBAAkB2B,EAClB12G,SAAU22G,KAEX,kBAAMvc,SAAUsf,GAA4B,WAC3C,SAAC,GAAQ,CAACh9N,MAAM,sBAAsB+W,KAAK,oBAAoBqnE,cAA0B,OAAZg8I,QAAY,IAAZA,OAAY,EAAZA,EAAcnL,gBAAiB,MAC5G,iBAAKnwL,UAAU,gCAA+B,WAC7C,kBAAO9zB,KAAK,WAAW+L,KAAK,iBAAiB6nC,GAAG,iBAAiBogC,SAAUs7I,KAC3E,kBAAO/e,QAAQ,iBAAgB,SAAC,gCAEjC,SAAC,GAAM,CAAC/3F,MAAM,gBAAgBk2C,OAAK,EAACQ,eAAe,wCAKtD,UAAC,GAAK,CAACr9H,UAAWo+L,GAAmB73B,cApXD,WACrC83B,KACAb,GACD,EAiXqFngE,eAAe,qBAAoB,WACrH,iBAAKp7H,UAAU,mBAAkB,WAChC,SAAC,GAAQ,CACRyxL,YAAa,SAAA18J,GAAI,OAAIy+J,EAAelxK,KAAOyS,GAAM,EACjD47J,aAA6B,OAAhBqC,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBjmN,KAAI,SAAA+mI,GAAO,OAAIA,EAAQshF,mBAAmB,MAAK,MAE/E,iBAAKp1L,UAAU,uBAAsB,WACpC,gBAAKA,UAAU,oBAAmB,SAAkB,OAAhBgzL,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBjmN,KA/IhC,SAAH,EAEvBqvJ,GACK,IAFHg5D,EAAmB,EAAnBA,oBAAqBmD,EAAmB,EAAnBA,oBAAuCtkF,GAAF,EAAhBilF,iBAA2B,EAATjlF,WAAWk8E,EAAa,EAAbA,cAAe0O,EAAW,EAAXA,YAAa7+L,EAAS,EAATA,UAAW8+L,EAAW,EAAXA,YAG1GllK,EAAatX,KAAO8yK,EAAqB,cAC/C,GAAKhvJ,GAAgB9jB,KAAAA,SAAgB8jB,GAArC,CAEA,IADmBA,EAAY6I,OAAOrV,EAAY,OACjC,OAAO,KACxB,MAA0CokG,GAAco3D,GAAoB,eAArE+D,EAAoB,KAAEr6D,EAAS,KACtC,EAA6Bd,GAAcu6D,GAApCa,GAAwD,YAAtC,GAGnB10G,EAAK,UAAMo6G,EAAW,YAE5B,OACC,SAAC,GAAW,CACX9O,SAAUmJ,GAAwB,aAClClJ,OAAQmJ,GAAsB,WAC9B10G,MAAOA,EAEPuvB,UAAWA,EACXi8E,SAAU4H,GACVnrC,SAAUsrC,GACV9H,cAAa,gBAAWnwL,GAAa,GAAE,cAAMmwL,GAAiB,IAC9DC,mBAAoBD,EACpBp7J,KAAM+pG,GAAa,IACnBuxD,UAAWwO,IAAgBzjF,EAAcG,+BAAiCsjF,IAAgBzjF,EAAcC,4BAPnG+gB,EAdkD,CAwB1D,OAmHK,kBAAMp8H,UAAU,oBAAoB4+K,SAAUma,GAA4B,WACzE,SAAC5J,GAAU,CAACjjN,KAAK,OAAOkjN,QAAM,EAACG,cAAc,YAAYC,YAAY,UAAUtuN,MAAM,sBACrF,SAAC,GAAQ,CAACA,MAAM,SAAS+W,KAAK,mBAC9B,SAAC,GAAM,CACNmjJ,eAAe,4BACf12C,MAAM,kBACNk2C,OAAK,EACL16E,UAA8B,OAApBgzI,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,SAAU,cAK9C,iBAAK0iC,UAAU,oBAAmB,WACZ,OAApBkzL,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,QAAS,IAAK,SAAC,GAAK,CAACukF,QAASszI,GAAkChuN,KAAM+rN,KAC7F,iBAAKlzL,UAAU,mCAAkC,WAC3B,OAApBkzL,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB51N,QAAS,IAC/B,SAAC,GAAM,CACNonH,MAAM,gBACNk2C,OAAK,EACLpqD,QAASkuH,GACTx+I,SAAUgzI,EAAqBn9L,OAAM,SAAA6oM,GAAG,OAAIA,EAAI3qF,SAAS,OAG3D,SAACymF,GAAQ,CACR98G,YAAY,uBACZ3lG,KAAK,0BACLusG,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAO2xL,GAAmB3xL,EAAO1N,QAAQ,EAC5DA,QAASo/L,eAMb,SAAC,GAAY,CACZ99L,UAAWskH,EAAgBF,QAC3Bx1G,OAAQ01G,EAAgBD,OAAS,SAAW,YAC5CkiD,cAAe,kBAAMhiD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,EAAC,UAExF,yBAAMC,EAAgBz6F,cAI1B,ECvnBA,GAnE2B,SAAH,GAUjB,IATN1mD,EAAK,EAALA,MAAM,EAAD,EACLk7B,YAAAA,OAAW,MAAGl7B,EAAK,EACnBiG,EAAI,EAAJA,KACAq9G,EAAQ,EAARA,SACAu6G,EAAQ,EAARA,SACAve,EAAO,EAAPA,QACAwe,EAAM,EAANA,OACAC,EAAmB,EAAnBA,oBACAC,EAAgB,EAAhBA,iBAEMp/K,GAAK2rD,EAAAA,EAAAA,SACX,GAAoCN,EAAAA,EAAAA,UAAS,IAAG,eAAzCg0H,EAAU,KAAEC,EAAa,KAC1Bne,GAAY/1G,EAAAA,EAAAA,UAiBZm0H,GAAar0H,EAAAA,EAAAA,UAAQ,WAC1B,IACC,IAAKm0H,EAAY,OAEjB,OADwBh4N,EAAKlE,MAAK,YAAc,SAAX26G,cAAkCuhH,CAAU,IAC1Dr/K,EACP,CAAf,MAAO5Z,GAAQ,CACjB,OAAO,IACR,GAAG,CAAC/+B,EAAMg4N,IAQV,OACC,iBAAKn/L,UAAU,qBAAoB,WAClC,iBAAKA,UAAU,8BAA6B,WAC3C,kBACCm6L,KAAMr6K,EACN0kE,SAnCoB,SAAH,GAAoB,IAChCxkH,EADwB,EAANmqC,OAClBnqC,MACRwkH,EAASxkH,GACTo/N,EAAcp/N,EACf,EAgCIo8B,YAAaA,EACbp8B,MAAOm/N,EACPG,eA3BmB,SAAA/+N,GACtBigN,EAAQjgN,EACT,EA0BI2+M,WAfsB,SAAA3+M,GAAM,IAAD,EAEtB6xF,EAAS7xF,EAAT6xF,KACK,UAATA,GAA6B,gBAATA,GAAyC,QAAjB,EAAA6uH,EAAUj1M,eAAO,OAAjB,EAAmB+xJ,OACpE,EAYIihE,OAAQA,KAET,qBAAUl/K,GAAIA,EAAG,SACX,OAAJ34C,QAAI,IAAJA,OAAI,EAAJA,EAAM4F,KAAI,WAAsB7O,GAAG,IAAtB0/G,EAAW,EAAXA,YAAa99D,EAAE,EAAFA,GAAE,OAC5B,mBAAkB9/C,MAAO49G,EAAa,YAAW99D,GAApC5hD,EAA0C,UAIxD+gO,IAAuB,SAAC,GAAM,CAACrkE,OAAK,EAACl2C,MAAM,SAASlU,QA1ChC,YAClB6uH,GAAeH,IACpBH,EAASM,EACV,EAuCkFv6H,IAAKm8G,MAGxF,EClCA,GAlC+B,SAAH,GAAwE,IAAlEhpM,EAAI,EAAJA,KAAM00B,EAAM,EAANA,OAAQooB,EAAI,EAAJA,KAAMwqK,EAAoB,EAApBA,qBAAsBC,EAAY,EAAZA,aAAc1/K,EAAE,EAAFA,GAMnFo+G,EAAgBnpG,EAAOzS,KAAOyS,EAAM,cAAc1vC,OAAO,cAAgB,KAE/E,OACC,gBAAK2a,UAAU,yBAAwB,UACtC,iBAAKA,UAAU,kCAAiC,WAC/C,gBAAKA,UAAU,qCAAoC,SAAE/nB,GAAQ,WAC7D,gBAAK+nB,UAAU,iCAAgC,UAC9C,SAAC,GAAM,CACNs/C,aAAc3yC,IAAU,EACxB10B,KAAK,kBACLrL,QAfW,CACf,CAAEkzC,GAAI,gBAAiB89D,YAAa,SAAU59G,OAAO,GACrD,CAAE8/C,GAAI,kBAAmB89D,YAAa,WAAY59G,OAAO,KAajC,GACpBwkH,SAAU,kBAAMg7G,GAAc7yL,EAAQmT,EAAG,OAG3C,gBAAK9f,UAAU,qCAAoC,UAClD,SAACmvL,GAAU,CACVjuN,MAAO6zD,EAAO,GAAK,qBACnBw6J,cAAc,iBACdE,sBAAuBvxD,EACvBmxD,aAAc,SAAA9uN,GAAC,OAAIg/N,EAAqBh/N,EAAGu/C,EAAG,EAC9C+vK,eAAgBljL,UAMtB,EClBM8yL,GAAa1hO,OAAO47I,OAAO,CAChCqiB,MAAO,aACP8wD,MAAO,YACPh0E,MAAO,eACPvkD,MAAO,UAiyBR,GA9xB8B,WAAO,IAAD,MACnC,EAAqFgtD,KAA7EgB,EAAG,EAAHA,IAAKN,EAAI,EAAJA,KAAMI,EAAe,EAAfA,gBAAiBC,EAAkB,EAAlBA,mBAAoBQ,EAAwB,EAAxBA,yBAExD,GAAsC33C,EAAAA,EAAAA,UAAS,IAAG,eAA3Cu0H,EAAW,KAAEC,EAAc,KAClC,GAAgDx0H,EAAAA,EAAAA,UAAS,IAAG,eAArDy0H,EAAgB,KAAEC,EAAmB,KAC5C,GAAkC10H,EAAAA,EAAAA,UAAS,IAAG,eAAvC20H,EAAS,KAAEC,EAAY,KAC9B,GAAwC50H,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA7CurH,EAAY,KAAEsJ,EAAe,KACpC,GAA4C70H,EAAAA,EAAAA,UAAS,IAAG,eAAjDggH,EAAc,KAAEC,EAAiB,KACxC,GAAgDjgH,EAAAA,EAAAA,UAAS,IAAG,eAArD80H,EAAgB,KAAEC,EAAmB,KAE5C,GAAoD/0H,EAAAA,EAAAA,UAAS,IAAG,eAAzDg1H,EAAkB,KAAEC,EAAqB,KAChD,GAAwEj1H,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA7Ek1H,EAA4B,KAAEC,EAA+B,KACpE,GAAkEn1H,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAAvEo1H,GAAyB,KAAEC,GAA4B,KAC9D,IAAsEr1H,EAAAA,EAAAA,UAAS,CAAC,GAAE,iBAA3Es1H,GAA2B,MAAEC,GAA8B,MAClE,IAA8Ev1H,EAAAA,EAAAA,UAAS,IAAG,iBAAnFw1H,GAA+B,MAAEC,GAAkC,MAE1E,IAAoDz1H,EAAAA,EAAAA,UAAS,CAAEgkC,OAAQ,KAAM0xF,YAAa,KAAK,iBAAxFC,GAAkB,MAAEC,GAAqB,MAE1CC,IAA4Bh2H,EAAAA,EAAAA,UAAQ,WACzC,MAAO,CACN,CACCkT,OAAQ,IACRr8B,QAAS,CACR,CAECq8B,OAAQ,IAERxC,KAAM,SAAA0C,GAAG,OAAI,8BAAGA,EAAIA,IAAIx5G,MAAQ,GAAK,GAEtC,CACCs5G,OAAQ,QACRD,SAAU,QACVvC,KAAM,SAAA0C,GAAG,OAAI,cAAGlzE,KAAI,iBAAYkzE,EAAIp+G,OAAQ,SAAEo+G,EAAIp+G,OAAU,GAE7D,CACCk+G,OAAQ,QACRxC,KAAM,gBAAG0C,EAAG,EAAHA,IAAG,OACX,iBAAMp+E,UAAU,QAAQwwE,QAAS,kBAAMywH,GAAqC7iH,EAAI,EAAC,UAChF,SAAC,GAAI,CAACi5C,KAAK,cACL,KAMb,GAAG,IAEGuzD,IAAa1/G,EAAAA,EAAAA,UAGbg2H,IAA0Bl2H,EAAAA,EAAAA,UAAQ,WACvC,OAAK0rH,GACEA,EAAa1nF,SADM,EAE3B,GAAG,CAAC0nF,IAEE7vD,IAAU77D,EAAAA,EAAAA,UAAQ,WACvB,QAAKmgH,IACEA,EAAex5E,WAAawK,EAAWJ,OAASovE,EAAex5E,WAAawK,EAAWH,cAC/F,GAAG,CAACmvE,IAEEgW,IAAUn2H,EAAAA,EAAAA,UAAQ,WACvB,QAAKmgH,IACEA,EAAex5E,WAAawK,EAAWiB,OAAS+tE,EAAex5E,WAAawK,EAAWkB,UAC/F,GAAG,CAAC8tE,IAEErkD,IAAQ97D,EAAAA,EAAAA,UAAQ,WACrB,QAAKmgH,GACEA,EAAex5E,WAAawK,EAAWF,GAC/C,GAAG,CAACkvE,IAEEiW,IAAQp2H,EAAAA,EAAAA,UAAQ,WACrB,QAAKmgH,IAEJA,EAAex5E,WAAawK,EAAWE,QACvC8uE,EAAex5E,WAAawK,EAAWG,QACvC6uE,EAAex5E,WAAawK,EAAWI,OAEzC,GAAG,CAAC4uE,IAGEkW,IAAuBr2H,EAAAA,EAAAA,UAAQ,WACpC,IAAKmgH,EAAgB,MAAO,GAC5B,IAAQmW,EAAiBnW,EAAjBmW,aACR,IAAKz6D,KAAYC,KAAUs6D,KAAUD,GAAS,OAAOG,GAAgB,GAErE,IAAMC,GAAgB,OAAOD,GAE7B,GAAIz6D,IAAWC,IAASq6D,GAAS,CAChC,IAAMK,EAAgB,CACrB7vF,SAAUw5E,EAAex5E,SACzBiE,YAAa,cACb6rF,UAAW,yBAEZF,EAAiB9jO,KAAK+jO,EACvB,CACA,GAAIJ,GAAO,CACV,IAAMM,EAAyB,CAC9B/vF,SAAUw5E,EAAex5E,SACzBiE,YAAa,aACb6rF,UAAW,yBAEZF,EAAiB9jO,KAAKikO,EACvB,CAEA,OAAOH,CACR,GAAG,CAACpW,IAGEwW,GAAiC,SAACC,EAAQ9hL,GAAQ,IAAD,EACtD,GAAe,OAAX8hL,EAAJ,CAEA,IAAMpmB,EAA0B,OAAZkb,QAAY,IAAZA,GAAqB,QAAT,EAAZA,EAAc1nF,eAAO,WAAT,EAAZ,EAAuBjiI,KAAI,SAAAyuJ,GAC9C,IAAkBqmE,EAAsBrmE,EAAhCllB,SAAmB9E,EAAagqB,EAAbhqB,SACvBswF,EAAgBD,EAEpB,OADI/hL,IAAO0xF,IAAUswF,EAAgBF,GAC9B,OAAKpmE,GAAM,IAAEllB,SAAUwrF,EAAehiL,GAAI0xF,GAClD,IACMimF,EAAW,KAAQf,GACzBe,EAAYzoF,QAAUwsE,EACtBwkB,EAAgBvI,EAVW,CAW5B,EAGMsK,GAAyC,SAAChtK,EAAMjV,GAAQ,IAAD,EACtD07J,EAA0B,OAAZkb,QAAY,IAAZA,GAAqB,QAAT,EAAZA,EAAc1nF,eAAO,WAAT,EAAZ,EAAuBjiI,KAAI,SAAAyuJ,GAC9C,IAAwBo2D,EAAoBp2D,EAApCwmE,eAAuBxwF,EAAagqB,EAAbhqB,SAC3BywF,EAAwBrQ,EAE5B,OADI9xK,IAAO0xF,IAAUywF,EAAwBltK,GACtC,OAAKymG,GAAM,IAAEwmE,eAAgBC,EAAuBniL,GAAI0xF,GAChE,IACMimF,EAAW,KAAQf,GACzBe,EAAYzoF,QAAUwsE,EACtBwkB,EAAgBvI,EACjB,EAoBMyK,GAAsB,yCAAG,sGACP,OAAlBpB,SAAkB,IAAlBA,IAAAA,GAAoB3xF,OAAO,CAAD,eAC2B,OAAzD2T,EAAyB,0BAA0B,GAAM,0BAI4D,GAJ5D,SAInDq/E,EAA0C,OAAlBrB,SAAkB,IAAlBA,IAA+B,QAAb,EAAlBA,GAAoBD,mBAAW,OAA2B,QAA3B,EAA/B,EAAiC9mN,QAAO,SAAAhI,GAAC,OAAIA,EAAEqwN,UAAU,WAAC,WAAxC,EAAlB,EAA4Dr1N,KAAI,SAAAgF,GAAC,OAAIA,EAAEswN,cAAc,IAE9GF,GAA0BA,EAAsB7kO,OAAM,gBACwB,OAAlFwlJ,EAAyB,mDAAmD,GAAM,2CAI9DP,EAAIrM,wBAAwB,CAChD/G,OAAQ2xF,GAAmB3xF,OAC3BmzF,iBAAkBH,IAChB,KAAD,GAHU,IAAN1hO,EAAM,SAKIA,EAAO8hO,UAAS,iBACgB,OAA/Cz/E,EAAyBriJ,EAAOmnD,SAAS,GAAM,2BAK1C46K,EAAmC,OAAZ9L,QAAY,IAAZA,GAAqB,QAAT,EAAZA,EAAc1nF,eAAO,WAAT,EAAZ,EAAuBj1H,QAAO,SAAAhI,GAAC,OAAKowN,EAAsBlkO,SAAS8T,EAAEy/H,SAAS,IAC3GwuF,EAAgB,OAAKtJ,GAAY,IAAE1nF,QAASwzF,KAE5C1/E,EAAyBriJ,EAAOmnD,SAAS,kDAEzCzH,QAAQ3b,KAAK,EAAD,IAAM,0DAEnB,kBA/B2B,oCA4C5BomE,EAAAA,EAAAA,YAAU,WAAO,IAAD,EACT63H,GACkB,OAAvBvB,SAAuB,IAAvBA,IACoC,QADb,EAAvBA,GACGnnN,QAAO,SAAAhI,GAAC,OAAIA,EAAE2wN,iBAAiB,WAAE,WADb,EAAvB,EAEG31N,KAAI,SAAAgF,GACL,MAAO,CAAEswN,eAAgBtwN,EAAEy/H,SAAUG,SAAU5/H,EAAE4/H,SAAU8nE,WAAY1nM,EAAE0nM,WAAY2oB,YAAY,EAClG,MAAM,GACRrB,GAAsB,CAAE5xF,OAA0B,OAAlB2xF,SAAkB,IAAlBA,QAAkB,EAAlBA,GAAoB3xF,OAAQ0xF,YAAa4B,GAC1E,GAAG,CAACvB,MAGJt2H,EAAAA,EAAAA,YAAU,WAOe,aAMvB,OANuB,0BAAxB,kHAE2B23C,EAAIjN,aAAaoqF,GAAa,KAAD,EAAtC,IAAViD,EAAU,YACIA,EAAWrlO,OAAS,GAAC,iDACzCyiO,EAAa4C,EAAW51N,KAAI,gBAAGqiI,EAAQ,EAARA,SAAgB,MAAQ,CAAEtvF,GAAV,EAANqvF,OAA4BvxB,YAAawxB,EAAU,KAAI,0GAEjG,sBAXGswF,EAAYpiO,OAAS,IACrBoiO,EAAYpiO,OAAS,EACxByiO,EAAa,IAEb,WACuB,wBAOxB6C,GACD,GAAG,CAAClD,EAAan9E,KAGjB33C,EAAAA,EAAAA,YAAU,YACT,uBAAC,yGAC+B23C,EAAIlK,0CAA0C,KAAD,GAAtEwqF,EAAgB,SAErBzC,EAAsByC,GACtB,0CAJF,EAMD,GAAG,IAGH,IAAMC,GAAU,yCAAG,WAAMhjL,GAAE,+EACrBA,EAAG,CAAD,gDAEmD,OAD1DkgL,EAAgB,CAAC,GACjBe,GAAsB,CAAE5xF,OAAQ,KAAM0xF,YAAa,KAAO,kBAE7Bt+E,EAAI/M,uBAAuB11F,GAAI,KAAD,EAAvC,IAAbijL,EAAa,WACGA,EAAczlO,OAAS,GAAC,mDAC9C0iO,EAAgB,OAAK+C,GAAa,IAAE5zF,OAAQrvF,KAC5CsrK,EAAkB,IAAI,kDAEtBjrK,QAAQ3b,KAAK,EAAD,IAAM,0DAEnB,gBAZe,sCAeVsrL,GAAkB,SAAA9vN,GACvB2/N,EAAe3/N,EAChB,EAGMgjO,GAAkB,yCAAG,WAAMziO,GAAC,oFAEZ,GAFY,SAE/B,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACE2oI,EAAa,CAAD,gDAM+C,GAL1Dr+G,EAAO,IAAIq+B,SAAU,OAADn2I,QAAC,IAADA,OAAC,EAADA,EAAG4pC,QACvBquG,EAAcz6I,OAAOsjN,YAAYhpG,EAAK2W,WAE5C6wG,EAAoB,gBAEdoD,EAAkB,CAAC,YAAa,aAAc,YAE/C9iF,EAAciB,MAAM5qF,MAAMpyB,KAAKo0G,EAAmB,OAAG,CAAD,gBAC+B,OAAvFsK,EAAyB,GAAD,OAAItK,EAAmB,MAAC,YAAI2H,EAAciB,MAAMl7G,QAAS,GAAM,8BAGnFi6G,EAAcI,0BAA0B/pF,MAAMpyB,KAAKo0G,EAAyB,aAAG,CAAD,gBAC+B,OAAjHsK,EAAyB,GAAD,OAAItK,EAAyB,YAAC,YAAI2H,EAAcI,0BAA0Br6G,QAAS,GAAM,8BAG7Gi6G,EAAcW,cAActqF,MAAMpyB,KAAKo0G,EAAyB,aAAG,CAAD,gBAC+B,OAArGsK,EAAyB,GAAD,OAAItK,EAAyB,YAAC,YAAI2H,EAAcW,cAAc56G,QAAS,GAAM,+CAGpFsyG,GAAW,+CAAf,GAAHt6I,EAAG,YACT+kO,EAAgBhlO,SAASC,IAASiiJ,EAAcO,sBAAsBlqF,MAAMpyB,KAAKo0G,EAAYt6I,IAAK,iBACF,OAAnG4kJ,EAAyB,GAAD,OAAItK,EAAYt6I,GAAI,YAAIiiJ,EAAcO,sBAAsBx6G,QAAS,GAAM,mDAM5D,OADzCsyG,EAAYxJ,QAAU0nF,EAAa1nF,QACnCwJ,EAAYrJ,OAASunF,EAAavnF,OAAO,UAEvBoT,EAAI9M,kBAAkB+C,GAAa,KAAD,GAE7C,QAFDntF,EAAG,cAEF,IAAHA,GAAAA,EAAK6rK,UACR8I,EAAgBxnF,GAEhBsK,EAAyBz3F,EAAIzD,UAE7Bk7F,EAAyBz3F,EAAIzD,SAAS,GACtC,kDAEDzH,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,gBA7CuB,sCAwDlB0+L,IAAkBl4H,EAAAA,EAAAA,UAAQ,WAAO,IAAD,EACrC,OAAK0rH,IAC4B,OAAZA,QAAY,IAAZA,GAAqB,QAAT,EAAZA,EAAc1nF,eAAO,WAAT,EAAZ,EAAuBjiI,KAAI,YAA2C,MAAQ,CAClG/M,MAD0D,EAAR2xI,SAElD/zB,YAFsE,EAAV67F,WAG5DjoE,SAHgF,EAARA,SAIxE8E,SAJ0F,EAARA,SAKlF,MANyB,EAS3B,GAAG,CAACogF,IAGEyM,IAA0Bn4H,EAAAA,EAAAA,UAAQ,WAEvC,OADwBk4H,GAAgBnpN,QAAO,SAAAyhJ,GAAM,OAAwB,IAApBA,EAAOllB,QAAiB,GAElF,GAAG,CAAC4sF,KAEEE,GAAuB,yCAAG,WAAM7iO,GAAC,kFAGjB,GAFrBs/N,EAAoB,iBAAiB,SAEnC,OAADt/N,QAAC,IAADA,GAAAA,EAAGwtF,iBAEE2oI,EAAa,CAAD,gDAI6B,GAHxCr+G,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtBk5L,EAAetlO,OAAOsjN,YAAYhpG,EAAK2W,WACrCwiB,EAAa25E,EAAb35E,UACFoE,EAAcytF,EAAaC,eAEZ9xF,EAAQ,iBAC0B,OAAtDsR,EAAyB,uBAAuB,GAAM,8BAGnC,gBAAhBlN,EAA6B,kCACJ2M,EAAIvM,oBAAoB0gF,EAAavnF,OAAQqC,GAAU,KAAD,GAKjF,OALkB,OAElBsR,EAAyB,4BAEzBA,EAAyB,+BAA+B,GACxD,8BAIkB,eAAhBlN,EAA4B,kCACH2M,EAAItM,uBAAuBygF,EAAavnF,OAAQqC,GAAU,KAAD,GAKpF,OALkB,OAElBsR,EAAyB,4BAEzBA,EAAyB,+BAA+B,GACxD,4CAIgBP,EAAI5M,mBAAmBC,EAAapE,GAAU,KAAD,GAAtD,OAGRsR,EAAyB,WACnBA,EAAyB,mBAAmB,GAAM,kDAEzD3iG,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,gBA3C4B,sCAyEvB++L,GAAiB,SAAAhjO,GACE,aAUvB,OAVuB,0BAAxB,6FAE+E,OAF/E,SAEQijO,EAAcjjO,EAAEswF,cAAcovH,QAAQ,QAAQnlL,QAAQ,WAAWzB,OAAO,EAAD,OACpDkpH,EAAIjN,aAAakuF,GAAa,KAAD,EAAtC,IAAVC,EAAU,YACIA,EAAWnmO,OAAS,GAAC,iDACnCi3F,EAAQkvI,EAAW12N,KAAI,gBAAGqiI,EAAQ,EAARA,SAAgB,MAAQ,CAAEtvF,GAAV,EAANqvF,OAA4BvxB,YAAawxB,EAAU,IAC7F2wF,EAAaxrI,GAAO,kDAEpBp0C,QAAQ3b,KAAK,EAAD,IAAK,2DAElB,uBAX2B,WACJ,wBAWxBo+L,EACD,EAGMc,GAAoB,yCAAG,yFACQ,GAApC7D,EAAoB,gBAAgB,SAE9BI,EAAiB,CAAD,eAC8B,OAAlDn9E,EAAyB,mBAAmB,GAAM,0CAGjCP,EAAI1M,sBAAsBoqF,GAAkB,KAAD,GAAvD50K,EAAG,QACDk3K,UACPz/E,EAAyBz3F,EAAIzD,SAAS,GAChCk7F,EAAyBz3F,EAAIzD,SAAS,GAAM,kDAEnDk7F,EAAyB,UAAU,GACnC3iG,QAAQ3b,KAAK,EAAD,IAAK,0DAElB,kBAfyB,mCAiBpBm/L,GAAmB,yCAAG,WAAMpjO,GAAC,+EAC7Bm2N,KAAgBA,EAAap5N,OAAS,GAAC,oDACvC6tN,GAAmBA,EAAe35E,SAAQ,iDACzCoyF,EAAa,UAAMzzF,gCAA6B,eAAOsO,EAAOsB,aAAY,cAAM22E,EAAaniI,MAAK,cAAMmiI,EAAaliI,SAAQ,cAAoB,OAAd22H,QAAc,IAAdA,OAAc,EAAdA,EAAgB35E,SAAQ,aAC7JntG,UAAUm0L,YACbn0L,UAAUm0L,UAAUC,UAAUmL,GAC1BrjO,GAAGqqN,GAAW5+M,QAAQi4M,KAAK,CAAExhN,EAAGlC,EAAE8uF,QAAU,GAAItuF,EAAGR,EAAE+uF,QAAU,MACnE,2CACD,gBARwB,sCAWnBu0I,IAAgC74H,EAAAA,EAAAA,UAAQ,WAC7C,GACEu1H,KAA8BxiO,OAAO0uC,KAAK8zL,IAA2BjjO,QACrE+iO,IAAiCtiO,OAAO0uC,KAAK4zL,GAA8B/iO,OAE5E,MAAO,GACR,IAAIwmO,EAAa,CAChB9nE,MAAOqkE,EAA6BrkE,MACpC8wD,MAAOuT,EAA6BvT,MACpCh0E,MAAOunF,EAA6BtT,YACpCx4H,MAAO8rI,EAA6B0D,cACpC50F,OAAQkxF,EAA6BlxF,QAStC,OANwBpxI,OAAO0uC,KAAK8zL,IAA2B74M,QAAO,SAACs8M,EAAa9lO,GAInF,OAHIqiO,GAA0BriO,KAAS4lO,EAAW5lO,KACjD8lO,EAAY9lO,GAAO4lO,EAAW5lO,IAExB8lO,CACR,GAAG,CAAC,EAEL,GAAG,CAACzD,GAA2BF,IAGzBY,GAAoC,yCAAG,WAAM7iH,GAAG,gFACP,GAA9CkiH,EAAgCliH,EAAI0C,WAChC1C,EAAI0C,SAASquB,OAAO,CAAD,eACkB,OAAlC80F,EAAU7lH,EAAI0C,SAASquB,QAAU,EAAE,EAAD,OACToT,EAAI/M,uBAAuByuF,GAAS,KAAD,GAA5DnW,EAAgB,UAEfoW,EAAkB,CACvBloE,MAAO8xD,EAAiBp1E,UACxBo0E,MAAOgB,EAAiBl1E,SACxBrkD,MAAOu5H,EAAiBv5H,MACxBukD,MAAOg1E,EAAiBf,YACxB59E,OAAQ2+E,EAAiB3+E,QAE1BqxF,GAA6B0D,GAC7BxD,GAA+BwD,IAC/B,2CAEF,gBAjByC,sCAmBpCC,GAAiC,yCAAG,mGAChB5hF,EAAIvJ,yBAAyB,CACrD7J,OAAQsxF,GAA4BtxF,OACpCi1F,YAAY,IACV,KAAD,EAHc,UAIA7B,UAAU,CAAD,yCACjB,GAAI,iCAEL,GAAK,2CACZ,kBATsC,mCAYjC8B,GAA2B,yCAAG,WAAM9jO,GAAC,4EAImE,GAJnE,SAExC,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBAEoB0yI,IAA+B1iO,OAAO0uC,KAAKg0L,IAA6BnjO,QAAW,EACvF,CAAD,gEAEAilJ,EAAIvJ,yBAAyBynF,IAA6B,KAAD,EAAlE,WACD8B,UAAU,CAAD,iCACsBhgF,EAAIlK,0CAA0C,KAAD,GAMjD,OAN5BisF,EAAuB,UAE5BlE,EAAsBkE,GACtBxhF,EAAyB,wBAG1ByhF,KAAkC,2BAGnCzhF,EAAyB,gCAAgC,GAAM,kDAE/D3iG,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,gBAtBgC,sCAyB3BggM,GAAoB,yCAAG,yGACJL,KAAoC,KAAD,EAA5C,UACA,CAAD,eACkD,OAA/DrhF,EAAyB,gCAAgC,GAAM,0CAG1BP,EAAIlK,0CAA0C,KAAD,EAAtD,GAAvBisF,EAAuB,OACA,CAAD,kDAC5BlE,EAAsBkE,GACtBxhF,EAAyB,yBACzByhF,KAAkC,4CAClC,kBAXyB,mCAcpBA,GAAkC,WACvCjE,EAAgC,CAAC,GACjCM,GAAmC,IACnCF,GAA+B,CAAC,EACjC,EAqBM+D,GAAa,SAAAvmO,GAClB,OAAOuhO,GAAWvhO,EACnB,EAEA,OACC,gBAAK8hC,UAAU,wBAAuB,UACrC,UAAC,GAAS,YACT,iBAAKA,UAAU,gCAA+B,WAC7C,gBAAKA,UAAU,+CAA8C,UAC5D,SAAC,GAAK,CAAC9+B,MAAM,kBAAkB89M,YAAY,WAAWx6F,SAAU,SAAAjkH,GAAC,OAAI2/N,EAAoB3/N,EAAE4pC,OAAOnqC,MAAM,OAEzG,SAAC,GAAM,CAAC46J,OAAK,EAACl2C,MAAM,SAASlU,QAASkzH,KAChB,iBAArB9D,IACA,SAACziE,GAAc,CACd/a,OAAQC,EAAgBD,OACxBgb,SAAU/a,EAAgBD,OAC1BD,QAASE,EAAgBF,QACzBkb,aAAchb,EAAgBz6F,cAKjC,iBAAK5nB,UAAU,yCAAwC,WACtD,gBAAKA,UAAU,gDAA+C,SAAC,kCAC/D,iBAAKA,UAAU,oDAAmD,WACjE,gBAAKA,UAAU,gBAAe,SAC5BmgM,EAAmB7iO,OAAS,GAC5B,SAAC,GAAK,CAACukF,QAASm/I,GAA2B75N,KAAMg5N,EAAoBnO,aAAc,KAEnF,mBAGDqO,GACAE,IACAxiO,OAAO0uC,KAAK4zL,GAA8B/iO,OAAS,GACnDS,OAAO0uC,KAAK8zL,IAA2BjjO,OAAS,IAC/C,iBAAK0iC,UAAU,eAAc,WAC5B,iBAAKA,UAAU,yBAAwB,WACtC,gBAAKA,UAAU,gCAA+B,SAAC,kBAC9CugM,IAA6BxiO,OAAO0uC,KAAK8zL,IAA2BjjO,OAAS,IAC7E,iBAAK0iC,UAAU,kCAAiC,WAC/C,iBAAKA,UAAU,yCAAwC,UAAC,WAChD,uBAAIugM,GAA0BhsI,YAEtC,iBAAKv0D,UAAU,yCAAwC,UAAC,gBAC3C,uBAAIugM,GAA0BvkE,YAE3C,iBAAKh8H,UAAU,yCAAwC,UAAC,eAC5C,uBAAIugM,GAA0BzT,YAE1C,iBAAK9sL,UAAU,yCAAwC,UAAC,kBACzC,uBAAIugM,GAA0BznF,kBAMhD,iBAAK94G,UAAU,wBAAuB,WACrC,gBAAKA,UAAU,+BAA8B,SAAC,kBAC9C,iBAAKA,UAAU,iBAAgB,UAC7B6jM,IACA9lO,OAAO0uC,KAAKo3L,IAA+BvmO,OAAS,GACpDS,OAAO0uC,KAAKo3L,IAA+B92N,KAAI,SAAC7O,EAAKk+J,GAAG,OACvD,iBAAKp8H,UAAU,iCAAgC,WAC9C,SAAC,GAAK,CAEL/nB,KAAM/Z,EACNgD,MAAOujO,GAAWvmO,GAClBohF,aAAcukJ,GAA8B3lO,GAC5CgiF,SAAUygJ,GAAgC1iO,SAASC,IAJ9C8hK,GAAW,MAMjB,iBAAKhgI,UAAU,cAAa,UAC1B2gM,GAAgC1iO,SAASC,IACzC,SAAC,GAAI,CAACm5J,KAAK,WAAWhvI,KAAM,GAAInO,MAAM,UAEtC,SAAC,GAAI,CAACm9I,KAAK,YAAYhvI,KAAM,GAAImoF,QAAS,kBA7FtB,SAAAtyG,GAKlC,GAJAwiO,GAA+B,OAC3BD,IAA2B,cAC7BviO,EAAM2lO,GAA8B3lO,OAEjCyiO,GAAgC1iO,SAASC,GAAM,CACnD,IAAMwmO,EAAO,kBAAO/D,IAA+B,CAAEziO,IACrD0iO,GAAmC8D,EACpC,CACD,CAoF+DC,CAA2BzmO,EAAI,KAGhF,SAAC,GAAI,CAACm5J,KAAK,YAAYhvI,KAAM,GAAImoF,QAAS,kBArFtB,SAAAtyG,GACjCwiO,GAA+B,OAC3BD,IAA2B,cAC7BviO,EAAMqiO,GAA0BriO,MAElC0iO,GAAmCD,GAAgC5mN,QAAO,SAAA6qN,GAAI,OAAIA,IAAS1mO,CAAG,IAC/F,CA+E8D2mO,CAA0B3mO,EAAI,SAf3Bk+J,EAiB/C,KAER,iBAAKp8H,UAAU,gBAAe,WAC7B,SAAC,GAAM,CAAC0kF,MAAM,gBAAgBk2C,OAAK,EAACpqD,QAAS6zH,MAC7C,SAAC,GAAM,CAAC3/G,MAAM,SAASk2C,OAAK,EAACpqD,QAASg0H,MACtC,SAAC,GAAM,CAAC9/G,MAAM,SAASk2C,OAAK,EAACpqD,QAAS+zH,wBAS9C,gBAAKvkM,UAAU,gCAA+B,UAC7C,SAAC,GAAkB,CAClB9+B,MAAM,cACNiG,KAAM24N,EACNt7G,SAAUsrG,GACViP,SAAU+D,GACVtiB,QAAS+iB,QAIE,OAAZ7M,QAAY,IAAZA,OAAY,EAAZA,EAAcniI,SACd,iCACC,gBAAKv0D,UAAU,sCAAqC,UACnD,kBAAM4+K,SAAUokB,GAAmB,WAClC,SAAC,GAAK,CAAC9hO,MAAM,aAAao+E,aAAco3I,EAAah+E,WAAa,GAAIzgI,KAAK,eAC3E,SAAC,GAAK,CAAC/W,MAAM,cAAco+E,aAAco3I,EAAaoO,YAAc,GAAI7sN,KAAK,gBAC7E,SAAC,GAAK,CAAC/W,MAAM,YAAYo+E,aAAco3I,EAAa99E,UAAY,GAAI3gI,KAAK,cACzE,SAAC,GAAK,CAAC/W,MAAM,QAAQo+E,aAAco3I,EAAaniI,OAAS,GAAIt8E,KAAK,WAClE,iBAAK+nB,UAAU,gBAAe,WAC7B,SAAC,GAAK,CAAC9+B,MAAM,aAAao+E,aAAco3I,EAAaqO,kBAAoB,GAAI9sN,KAAK,mBAAmBioE,UAAQ,KAC7G,SAAC,GAAK,CAACh/E,MAAM,eAAeo+E,aAAco3I,EAAa3J,aAAe,GAAI90M,KAAK,oBAEhF,SAAC,GAAM,CACN/W,MAAM,0BACNo+E,aAAco3I,EAAasO,yBAA2B,GACtD/sN,KAAK,0BACLrL,SAAa,OAAJq1I,QAAI,IAAJA,GAA2B,QAAvB,EAAJA,EAAMgjF,6BAAqB,WAAvB,EAAJ,EAA6Br4N,UAAW,MAGzB,OAAvBs0N,SAAuB,IAAvBA,QAAuB,EAAvBA,GAAyB5jO,UAC1B,iBAAK0iC,UAAU,wDAAuD,UACpEkhM,KACA,iBAAKlhM,UAAU,6DAA4D,WAC1E,gBAAKA,UAAU,oEAAmE,SAAC,uBACnF,gBAAKA,UAAU,oEAAmE,SAAC,YACnF,gBAAKA,UAAU,oEAAmE,SAAC,uBAG7D,OAAvBkhM,SAAuB,IAAvBA,QAAuB,EAAvBA,GAAyBn0N,KAlUG,SAAH,EAAwDqvJ,GAAS,IAA3Dq9C,EAAU,EAAVA,WAAYnjE,EAAQ,EAARA,SAAU0rF,EAAc,EAAdA,eAAgBxwF,EAAQ,EAARA,SAC9E,OACC,SAAC,GAAsB,CAEtB1xF,GAAI0xF,EACJv5H,KAAMwhM,EACN9sK,OAAQ2pG,EACRvhF,KAAMitK,EACN76N,KAAM+5N,GACN1B,aAAcmC,GACdpC,qBAAsBwC,IAPjB3lE,EAUR,QAwTQ,MACD,iBAAKp8H,UAAU,OAAM,WACpB,SAAC,GAAM,CAAC46H,OAAK,EAACl2C,MAAM,SAEE,iBAArBk7G,IACA,SAACziE,GAAc,CACd/a,OAAQC,EAAgBD,OACxBgb,SAAU/a,EAAgBD,OAC1BD,QAASE,EAAgBF,QACzBkb,aAAchb,EAAgBz6F,mBAMnC,gBAAK5nB,UAAU,oCAAmC,UACjD,kBAAMA,UAAU,cAAc4+K,SAAUwkB,GAAwB,WAC/D,gBAAKpjM,UAAU,wBACf,gBAAKA,UAAU,8BAA6B,UAC3C,SAAC,GAAM,CACN9+B,MAAM,iBACN0L,QAASu2N,GACT3+G,SAnaiB,SAAH,GAAoB,IAAD,EACnC0gH,EAD4B,EAAN/6L,OACHnqC,MACpBklO,GAAW9Z,EAAkB,IAClC,IAAM+Z,EAA8B,OAAZzO,QAAY,IAAZA,GAAqB,QAAT,EAAZA,EAAc1nF,eAAO,WAAT,EAAZ,EAAuB/rI,MAAK,YAAW,SAAR0uI,WAA4Bx/H,SAAS+yN,EAAU,IACtG9Z,EAAkB+Z,EACnB,EA+ZSnmB,YAAY,qBAGd,gBAAKh/K,UAAU,oBAAmB,SACZ,OAApBqhM,SAAoB,IAApBA,QAAoB,EAApBA,GAAsBt0N,KAAI,WAA6B7O,GAAS,IAAnCujO,EAAS,EAATA,UAAW7rF,EAAW,EAAXA,YAClC91F,EAAE,UAAM81F,EAAW,YAAI6rF,GAC7B,OACC,iBAAKzhM,UAAU,QAAO,WACrB,kBAAO9zB,KAAK,QAAQ4zC,GAAIA,EAAI7nC,KAAK,eAAejY,MAAO41I,KACvD,kBAAO6mE,QAAS38J,EAAG,SAAE2hL,MAFMvjO,EAK9B,OAED,iBAAK8hC,UAAU,OAAM,WACpB,SAAC,GAAM,CAAC46H,OAAK,EAACl2C,MAAM,SACE,kBAArBk7G,IACA,SAACziE,GAAc,CACd/a,OAAQC,EAAgBD,OACxBgb,SAAU/a,EAAgBD,OAC1BD,QAASE,EAAgBF,QACzBkb,aAAchb,EAAgBz6F,WAGhC,SAAC,GAAM,CAACgzG,OAAK,EAACl2C,MAAM,mBAAmBlU,QAASmzH,aAG5C,KACa,OAAlB7C,SAAkB,IAAlBA,IAA+B,QAAb,EAAlBA,GAAoBD,mBAAW,WAAb,EAAlB,EAAiCvjO,UAClC,iBAAK0iC,UAAU,yCAAwC,WACtD,gBAAKA,UAAU,gDAA+C,SAAC,+BAC/D,gBAAKA,UAAU,gCAA+B,UAC7C,SAAC,GAAkB,CAClB9+B,MAAM,cACNiG,KAAM24N,EACNt7G,SAAUsrG,GACViP,SAhnBoB,SAAAj/K,GAC5BihL,GAAsB,OAAKD,IAAkB,IAAE3xF,OAAQ,QAElDrvF,GAKW,OAAZ42K,QAAY,IAAZA,OAAY,EAAZA,EAAcvnF,UAAWrvF,EAK7BihL,GAAsB,OAAKD,IAAkB,IAAE3xF,OAAQrvF,KAJtDgjG,EAAyB,kDAAkD,GAL3EA,EAAyB,0BAA0B,EAUrD,EAmmBS09D,QAAS+iB,GACTnnM,YAAY,0BACZ8iM,kBAAgB,OAGC,OAAlB4B,SAAkB,IAAlBA,QAAkB,EAAlBA,GAAoB3xF,UACpB,iCACC,iBAAKnvG,UAAU,gDAA+C,UAC5DkhM,KACA,iBAAKlhM,UAAU,8CAA6C,WAC3D,gBAAKA,UAAU,wDACf,gBAAKA,UAAU,qDAAoD,SAAC,yBAGnD,OAAlB8gM,SAAkB,IAAlBA,IAA+B,QAAb,EAAlBA,GAAoBD,mBAAW,WAAb,EAAlB,EAAiC9zN,KAhYd,SAAH,EAAgDqvJ,GAAS,IAAnDq9C,EAAU,EAAVA,WAAY4oB,EAAc,EAAdA,eAAgBD,EAAU,EAAVA,WAC5D,OACC,iBAAKpiM,UAAU,kBAAiB,WAC/B,gBAAKA,UAAU,4BAA2B,UACzC,kBAAO9zB,KAAK,WAAW4zC,GAAG,WAAWrjB,QAAS2lM,EAAY59G,SAAU,SAAAjkH,GAAC,OAhNpC,SAACA,EAAG8hO,GAAoB,IAAD,IACrD+C,EAAe,OAAD7kO,QAAC,IAADA,GAAS,QAAR,EAADA,EAAG4pC,cAAM,WAAR,EAAD,EAAW1N,QACzB4oM,EAAiC,OAAlBvE,SAAkB,IAAlBA,IAA+B,QAAb,EAAlBA,GAAoBD,mBAAW,WAAb,EAAlB,EAAiC9zN,KAAI,SAAAgF,GAAC,OAC1DswN,IAAmBtwN,EAAEswN,eAAc,OAAQtwN,GAAC,IAAEqwN,WAAYgD,IAAgBrzN,CAAC,IAEtEuzN,EAAmB,OAAQxE,IAAkB,IAAED,YAAawE,IAClEtE,GAAsBuE,EACvB,CAyM6EC,CAA6BhlO,EAAG8hO,EAAe,OAEzH,gBAAKriM,UAAU,wBAAuB,SAAEy5K,GAAc,YAJjBr9C,EAOxC,QAyXS,SAAC,GAAM,CAACxB,OAAK,EAACl2C,MAAM,WAAWlU,QAAS0xH,YAK3C,MACD,SAAC,GAAO,CAACp9H,IAAK8lH,GAAW,SAAC,eAG5B,SAAC,GAAY,CACZ7sL,YAAaskH,EAAgBz6F,QAC7Bjb,OAAQ01G,EAAgBD,OAAS,SAAW,YAC5CkiD,cAAe,kBAAMhiD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,EAAC,UAExF,yBAAMC,EAAgBz6F,gBAK3B,ECtyBM49K,GAAiB,SAAH,GAAuD,IAAjDlvF,EAAQ,EAARA,SAAUmvF,EAAS,EAATA,UAAW9zF,EAAQ,EAARA,SAAUpD,EAAU,EAAVA,WACxD,OAAO,kBAAOriI,KAAK,WAAW+L,KAAK,SAAS6nC,GAAI6xF,EAAU+zF,WAAYn3F,EAAY9xG,QAAS65G,EAAU9xB,SAAUihH,GAChH,EA4mBA,GA1mBiC,WAChC,MAA+ElkF,KAAvEgB,EAAG,EAAHA,IAAKF,EAAe,EAAfA,gBAAiBC,EAAkB,EAAlBA,mBAAoBQ,EAAwB,EAAxBA,yBAElD,GAAwB33C,EAAAA,EAAAA,UAAS,IAAG,eAA7B82C,EAAI,KAAEC,EAAO,KACpB,GAAkE/2C,EAAAA,EAAAA,UAAS,IAAG,eAAvEw6H,EAAyB,KAAEC,EAA4B,KAC9D,GAAwCz6H,EAAAA,EAAAA,UAAS,IAAG,eAA7C06H,EAAY,KAAEC,EAAe,KACpC,GAAkC36H,EAAAA,EAAAA,WAAS,GAAM,eAA1CptE,EAAS,KAAEi9K,EAAY,KAC9B,GAAoC7vG,EAAAA,EAAAA,UAAS,IAAG,eAAzC46H,EAAU,KAAEC,EAAa,KAChC,GAAoD76H,EAAAA,EAAAA,eAASj+F,GAAU,eAAhE+4N,EAAkB,KAAEC,EAAqB,KAChD,GAAwC/6H,EAAAA,EAAAA,UAAS,MAAK,eAA/Cg7H,EAAY,KAAEC,EAAe,KACpC,GAA0Bj7H,EAAAA,EAAAA,UAAS,IAAG,eAA/BorC,EAAK,KAAE8vF,EAAQ,KAEtB,GAAkDl7H,EAAAA,EAAAA,UAAS,IAAG,eAAvDm7H,EAAiB,KAAEC,EAAoB,KAC9C,GAAsEp7H,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA3Eq7H,EAA2B,KAAEC,EAA8B,KAClE,IAAgEt7H,EAAAA,EAAAA,UAAS,CAAC,GAAE,iBAArEu7H,GAAwB,MAAEC,GAA2B,MAE5D,IAAgDx7H,EAAAA,EAAAA,WAAS,GAAM,iBAAxDy7H,GAAgB,MAAEC,GAAmB,MAC5C,IAA4C17H,EAAAA,EAAAA,WAAS,GAAM,iBAApD27H,GAAc,MAAEC,GAAiB,MAElC1f,IAAUn8G,EAAAA,EAAAA,UACV87H,IAAmB97H,EAAAA,EAAAA,UAEnB+7H,IAAkBj8H,EAAAA,EAAAA,UAAQ,WAC/B,IAOC,OANoB+6H,EAAWr+M,QAAO,SAAC4B,EAAKwhC,GAC3C,IAAMo8K,EAAe59M,EAAIrmB,MAAK,SAAAonC,GAAI,OAAIA,EAAK+kG,WAAatkF,EAAIskF,QAAQ,IAGpE,OAFI83F,EAAcA,EAAarqB,YAAYp/M,KAAK,KAAKqtD,IAChDxhC,EAAI7rB,KAAK,CAAE2xI,SAAUtkF,EAAIskF,SAAUytE,YAAa,CAAC,KAAK/xJ,MACpDxhC,CACR,GAAG,GAEU,CAAZ,MAAO4nH,GAAK,CACf,GAAG,CAAC60F,IAEE13E,GAAW3C,KAGXy7E,IAA2Bz8H,EAAAA,EAAAA,cAChC,SAAA08H,GACC,IAAMC,EAAeJ,GAAgBhkO,MAAK,YAAW,SAARmsI,WAA4Bg4F,CAAW,IACpFlB,EAAsBmB,EACvB,GACA,CAACtB,EAAYkB,KAGRK,IAAyBt8H,EAAAA,EAAAA,UAAQ,kBAAMi3C,EAAKjT,OAAO,GAAE,CAACiT,IACtDslF,IAAsBv8H,EAAAA,EAAAA,UAAQ,WAEnC,OAAOg1C,EAAUjzI,KAAI,SAAAyjE,GACpB,MAAO,CAAExwE,MAAOwwE,EAAK1wB,GAAI89D,YAAaptC,EAAKotC,YAC5C,GACD,GAAG,CAACoiC,IAEEwnF,IAAkBx8H,EAAAA,EAAAA,UAAQ,WAC/B,MAAO,CACN,CACCkT,OAAQ,wBACRr8B,QAAS,CACR,CAECq8B,OAAQ,IACRxC,KAAM,SAAA0C,GAAG,OAAI,8BAAGA,EAAIA,IAAIx5G,MAAQ,GAAK,GAEtC,CACCs5G,OAAQ,SACRD,SAAU,cAEX,CACCC,OAAQ,WACRD,SAAU,gBAEX,CACCC,OAAQ,SACRD,SAAU,uBAKf,GAAG,IAEGwpH,IAAqBz8H,EAAAA,EAAAA,UAAQ,WAClC,MAAO,CACN,CACCkT,OAAQ,uBACRr8B,QAAS,CACR,CACCq8B,OAAQ,IACRxC,KAAM,SAAA0C,GAAG,OAAI,0BAAOA,EAAIA,IAAIx5G,MAAQ,GAAS,GAE9C,CACCs5G,OAAQ,kBACRD,SAAU,WACVvC,KAAM,gBAAG17G,EAAK,EAALA,MAAK,OAAO,gBAAKwwG,QAAS,kBAAM22H,GAAyBnnO,EAAM,EAAC,SAAEA,GAAY,KAK5F,GAAG,CAACinO,KAEES,IAAgC18H,EAAAA,EAAAA,UAAQ,WAC7C,MAAO,CACN,CACCkT,OAAQ,uBACRr8B,QAAS,CACR,CACCq8B,OAAQ,IACRxC,KAAM,SAAA0C,GAAG,OAAI,8BAAGA,EAAIA,IAAIx5G,MAAQ,GAAK,GAEtC,CACCs5G,OAAQ,kBACRD,SAAU,YAEX,CACCC,OAAQ,YACRD,SAAU,SAAAG,GAAG,gBAAU,OAAHA,QAAG,IAAHA,OAAG,EAAHA,EAAK49C,MAAK,cAAS,OAAH59C,QAAG,IAAHA,OAAG,EAAHA,EAAK0uG,MAAK,OAE/C,CACC5uG,OAAQ,WACRD,SAAU,eAEVvC,KAAM,SAAA0C,GAAG,OAAI,iBAAMh+B,wBAAyB,CAAEqb,OAAW,OAAH2iB,QAAG,IAAHA,OAAG,EAAHA,EAAKp+G,QAAgB,GAE5E,CACCk+G,OAAQ,SACRD,SAAU,eAEX,CACCC,OAAQ,QACRD,SAAU,aAEX,CACCC,OAAQ,SACRD,SAAU,cAEX,CACCC,OAAQ,OACRD,SAAU,cACVvC,KAAM,SAAA0C,GAAG,OAAI,0BAAO,IAAIp+D,MAAQ,OAAHo+D,QAAG,IAAHA,OAAG,EAAHA,EAAKp+G,QAAS,IAAIwxN,kBAAwB,KAK5E,GAAG,IAGGwE,IAAiBhrH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IACpC,GAAgC,OAA3Bw7H,QAA2B,IAA3BA,IAAAA,EAA6B70F,SAAU,OAAOsQ,EAAK2Z,eACxD,IAAMhvJ,EAAc,OAAJq1I,QAAI,IAAJA,GAAoB,QAAhB,EAAJA,EAAM2Z,sBAAc,OAAS,QAAT,EAApB,EAAsBhvJ,eAAO,WAAzB,EAAJ,EAA+BmN,QAAO,SAAA2iB,GAAM,OAAIA,EAAOi1G,WAAax/H,SAASq0N,EAA4B70F,SAAS,IAClI,OAAO,OAAKsQ,EAAK2Z,gBAAc,IAAEhvJ,QAAAA,GAClC,GAAG,CAACq1I,EAAMukF,IAEJmB,GAAY,yCAAG,oHAEaplF,EAAIvL,gBAAgB,KAAD,WAA3C4wF,EAAa,EAAbA,cACR5B,EAAc4B,GAAe,gDAE7BznL,QAAQ4oC,IAAI,QAAQ,EAAD,IAAS,yDAE7B,kBAPiB,mCASZ8+I,GAAsB,yCAAG,yGACGtlF,EAAIjK,2BAA2B,KAAD,GAAzDwvF,EAAkB,SAEvBvB,EAAqBuB,GACrB,2CACD,kBAL2B,mCAMtBC,GAAc,yCAAG,oHAGDxlF,EAAIrP,uBAAuB,KAAD,EAE9C,OAFMsP,EAAK,SACAN,EAAQM,GACnB,SACuCD,EAAInM,gCAAgC,KAAD,EAC1E4xF,GADIA,EAA0B,QAC0Bj7N,KAAI,SAAAyuJ,GAC3D,IAAMysE,EAAmBjoF,EAAUwb,EAAOjtB,WAAa,GAAG3wB,YACpD04B,EAAWklB,EAAO0sE,kBAClBv2F,EAAW6pB,EAAO7pB,SACxB,OAAO,OACH6pB,GAAM,IACT2sE,aAAcF,EACd3xF,SAAAA,EACA4xF,mBACC,SAAC1C,GAAc,CAAClvF,SAAUA,EAAUmvF,UAAWA,GAAW9zF,SAAUA,EAAUpD,WAAYitB,EAAOjtB,cAGpG,IACAq3F,EAA6BoC,GAA4B,kDAEzD7nL,QAAQja,MAAM,sBAAsB,EAAD,IAAS,0DAE7C,kBAxBmB,oCAyBpB0kE,EAAAA,EAAAA,YAAU,WACTm9H,KACAJ,KAEAE,IACD,GAAG,IAGH,IAAMpC,GAAY,SAAH,GAAoB,IAAdt7L,EAAM,EAANA,OACdwnG,EAAWx/H,SAASg4B,EAAO2V,IAC3ByuF,EAAap8H,SAASg4B,EAAOvX,aAAa,eAChDwzM,EAAgB,CAAEz0F,SAAAA,EAAUpD,WAAAA,IAC5BysE,GAAa,EACd,EAGMotB,GAAwB,yCAAG,2FASE,OARlCptB,GAAa,GAAO,UAIbx/C,EAASmqE,EAA0B1iO,MACxC,SAAAolO,GAAU,OAAIA,EAAW12F,UAAYw0F,EAAax0F,UAAY02F,EAAW95F,YAAc43F,EAAa53F,UAAU,KAExG+H,UAAYklB,EAAOllB,SAC1BklB,EAAOhlB,oBAAqB,EAAK,SAEf+L,EAAIlM,iCAAiCmlB,GAAQ,KAAD,EAArD,UACA,CAAD,gBAEwG,OAA/G1Y,EAAyB,gFAAgF,GAAM,2BAMhHA,EAAyB,4CAA4C,UAG9D0Y,EAAOhlB,mBACRxH,EAAU22F,EAA0B5rN,QAAO,SAAAsuN,GAChD,OAAIA,EAAW12F,UAAYw0F,EAAax0F,UAAY02F,EAAW95F,YAAc43F,EAAa53F,YACzFitB,EAAO0sE,mBACN,SAAC1C,GAAc,CACdlvF,SAAUklB,EAAOllB,SACjBmvF,UAAWA,GACX9zF,SAAU02F,EAAW12F,SACrBpD,WAAY85F,EAAW95F,aAGlBitB,GAED6sE,CACR,IACAzC,EAA6B52F,GAAS,kDAEtC7uF,QAAQja,MAAM,2BAA2B,EAAD,IAAS,0DAElD,kBA1C6B,mCA6CxBoiM,GAAgB,yCAAG,WAAMC,GAAE,4FAe7B,OAdHA,EAAGx6I,iBAEGsqB,EAAO,IAAIq+B,SAAS6xF,EAAGp+L,SACvBi3K,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,YAChCsnB,UAAW,EAAK,SAIlBG,EAASF,EAAMxpI,KAAI,SAAA4pI,GAAS,IAAD,EAC5B8mB,EAAW9mB,EAAK1+H,KAIpB,OAHAwlJ,EAAWA,EAASnjJ,UAAU,EAAGmjJ,EAASngK,OAAS,GACnDmgK,GAAQ,qBAAoD,QAApD,EAAkBzd,EAAUohE,EAAS7yE,WAAa,UAAE,aAAlC,EAAoChiF,IAAG,QACnD,IAAIi8K,KAAK,CAAC7xF,GAAO8mB,EAEhC,IAAG,EAAD,OAEgBlb,EAAIlM,iCAAiC,OACnD+qE,GAAQ,IACX7qE,MAAOE,KACL,KAAD,EAHO,UAIA,CAAD,gBAEyG,OAAhHqM,EAAyB,iFAAiF,GAAM,2BAc9G,GATHA,EAAyB,4DAA4D,GAGtE,QAAf,EAAAukE,GAAQr7M,eAAO,OAAf,EAAiB2kB,QACjB01M,EAAS,MAGHoC,EAAa9C,EAA0B1iO,MAAK,SAAAu4J,GACjD,OAAOA,EAAO7pB,UAAYyvE,EAASzvE,UAAY6pB,EAAOjtB,YAAc6yE,EAAS7yE,UAC9E,KAEe,CAAD,oBAETk6F,EAAWnyF,SAAS,CAAD,kDAS4B,OAPlDmyF,EAAWnyF,UAAW,EACtBmyF,EAAWP,mBACV,SAAC1C,GAAc,CAAClvF,UAAU,EAAMmvF,UAAWA,GAAW9zF,SAAU82F,EAAW92F,SAAUpD,WAAYk6F,EAAWl6F,aAEvGm6F,EAAiB/C,EAA0B5rN,QAAO,SAAAsuN,GAAU,OACjEA,EAAW12F,UAAYyvE,EAASzvE,UAAY02F,EAAW95F,YAAc6yE,EAAS7yE,WAAak6F,EAAaJ,CAAU,IAEnHzC,GAA6B,OAAI8C,IAAiB,4BAO9CC,EAAuB,KAAQvnB,IACb8mB,mBACvB,SAAC1C,GAAc,CAAClvF,SAAU8qE,EAAS9qE,SAAUmvF,UAAWA,GAAW9zF,SAAUyvE,EAASzvE,SAAUpD,WAAY6yE,EAAS7yE,aAEtHo6F,EAAwBR,aAAenoF,EAAUohE,EAAS7yE,WAAa,GAAG3wB,YAC1E+qH,EAAwBlvB,WAAmF,QAAzE,EAAGx3D,EAAKjT,QAAQpiI,QAAQ3J,MAAK,SAAAu4J,GAAM,OAAIA,EAAOx7J,OAASohN,EAASzvE,QAAQ,WAAC,aAAtE,EAAwE/zB,mBACtG+qH,EAAwBpyF,OAEzByxF,GAA0B,OAAOrC,IACZloO,KAAKkrO,GAChC/C,GAA6B,OAAIoC,IAA6B,kDAE9D7nL,QAAQja,MAAM,oBAAoB,EAAD,IAAS,0DAE3C,gBAvEqB,sCA0EhB0iM,GAAiB,yCAAG,4FAASz+L,EAAM,EAANA,OAClC27L,EAAgB,KACVrvF,GAAM,OAAOtsG,EAAOosG,QAEnBhrI,SAAQ,SAAAorI,GACd,IAAM8mB,EAAW9mB,EAAK1+H,KAIN,OAHCwlJ,EAASv7J,MAAMu7J,EAASngK,OAAS,GAAGyY,eAIpD+vN,EAAgB,kEAGlB,IAEAO,EAAS5vF,GAAQ,2CACjB,gBAhBsB,sCAmBjB0tF,GAAiC,yCAAG,2FACjB,OAAhBh1F,EAAqBq3F,EAArBr3F,OAAQqC,EAAag1F,EAAbh1F,SAAQ,SACC+Q,EAAIvJ,yBAAyB,CACrD7J,OAAAA,EACAqC,SAAAA,EACA4yF,YAAY,IACV,KAAD,EAJc,UAMA7B,UAAU,CAAD,eACuC,OAA/Dz/E,EAAyB,gCAAgC,GAAM,0BAIhEA,EAAyB,wBACzB2jF,EAA+B,IAC/BoB,KAA0B,4CAC1B,kBAhBsC,mCAmBjCgB,IAA2B79H,EAAAA,EAAAA,UAAQ,WACxC,MAAO,CACN,CACCkT,OAAQ,IACRr8B,QAAS,CACR,CAECq8B,OAAQ,IAERxC,KAAM,SAAA0C,GAAG,OAAI,8BAAGA,EAAIA,IAAIx5G,MAAQ,GAAK,GAEtC,CACCs5G,OAAQ,QACRD,SAAU,QACVvC,KAAM,SAAA0C,GAAG,OAAI,cAAGlzE,KAAI,iBAAYkzE,EAAIp+G,OAAQ,SAAEo+G,EAAIp+G,OAAU,GAG7D,CACCk+G,OAAQ,cACRD,SAAU,cAGX,CACCC,OAAQ,QACRxC,KAAM,gBAAG0C,EAAG,EAAHA,IAAG,OACX,iBAAMp+E,UAAU,QAAQwwE,QAAS,kBAAMs4H,GAAiC1qH,EAAI,EAAC,UAC5E,SAAC,GAAI,CAACi5C,KAAK,cACL,KAMb,GAAG,IAGGkgE,GAAoB,yCAAG,WAAMh3N,GAAC,kFAK6B,GAL7B,SAEjC,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACGsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,SACtBqtL,EAAiBz5N,OAAOsjN,YAAYhpG,EAAK2W,YAChCwiB,SAAWg1F,EAA4Bh1F,SACjDgmF,EAAe7jF,WAAc6jF,EAAehmF,SAAQ,gBACD,OAAvDsR,EAAyB,wBAAwB,GAAM,2CAGlCP,EAAIrO,2BAA2BsjF,GAAgB,KAAD,GAAvD,UACA,CAAD,gBACoD,OAA/D10E,EAAyB,gCAAgC,GAAM,2BAIpB,OADtC20E,EAAW,OAAQ+O,GAA2B,IAAE7yF,UAAWxhI,SAASqlN,EAAe7jF,aACzF8yF,EAA+BhP,GAAa,UACjBl1E,EAAIvJ,yBAAyBwtF,GAA6B,KAAD,GAGnF,OAHiB,OACAjE,WACjBz/E,EAAyB,gCAAgC,GACzD,UAC0BP,EAAIjK,2BAA2B,KAAD,IAAnDywF,EAAY,UAEjBxC,EAAqBwC,GACrBtC,EAA+B,CAAC,IAEjC3jF,EAAyB,uBAAuB,kDAEhD3iG,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,gBA9ByB,sCAiCpBskM,GAAgC,yCAAG,WAAM1qH,GAAG,8EAKJ,GAHzC4oH,GAAiBh7N,UACpBg7N,GAAiBh7N,QAAQhM,MAAQ,IAElCymO,EAA+BroH,EAAI0C,WAC/B1C,EAAI0C,SAASquB,OAAO,CAAD,eACkB,OAAlC80F,EAAU7lH,EAAI0C,SAASquB,QAAU,EAAE,EAAD,OACToT,EAAI/M,uBAAuByuF,GAAS,KAAD,GAA5DnW,EAAgB,SACA6Y,GAA4B7Y,GAAkB,2CAErE,gBAXqC,sCAatC,OACC,oBAAS9tL,UAAU,2BAA0B,UAC5C,UAAC,GAAS,YACT,iBAAKA,UAAU,2CAA0C,WACxD,gBAAKA,UAAU,kDAAiD,SAAC,+BACjE,iBAAKA,UAAU,sDAAqD,WACnE,gBAAKA,UAAU,gBAAe,SAC5BsmM,EAAkBhpO,OAAS,GAC3B,SAAC,GAAK,CAACukF,QAASgnJ,GAA0B1hO,KAAMm/N,EAAmBtU,aAAc,KAEjF,mBAGDwU,GAA+BzoO,OAAO0uC,KAAK+5L,GAA6BlpO,OAAS,IACjF,gBAAK0iC,UAAU,eAAc,UAC5B,iBAAKA,UAAU,wBAAuB,WACrC,gBAAKA,UAAU,+BAA8B,SAAC,mBAC9C,iBAAKA,UAAU,+BAA8B,UAAC,iBAChC,uBAAIwmM,EAA4B/sB,iBAE9C,iBAAKz5K,UAAU,+BAA8B,UAAC,WACtC,uBAAIwmM,EAA4BjyI,YAExC,iBAAKv0D,UAAU,+BAA8B,UAAC,gBACjC,uBAAIwmM,EAA4BxqE,YAE7C,iBAAKh8H,UAAU,+BAA8B,UAAC,eAClC,uBAAIwmM,EAA4B1Z,YAE5C,iBAAK9sL,UAAU,+BAA8B,UAAC,WACtC,uBAAI0mM,GAAyB3Z,iBAEpCyZ,EAA4BzZ,cAAgB2Z,GAAyB3Z,cACrE,iBAAK/sL,UAAU,+BAA8B,UAAC,0BACvB,uBAAIwmM,EAA4BzZ,kBAGxD,iBAAK/sL,UAAU,+BAA8B,UAAC,uBAC1B,uBAAIwmM,EAA4BwC,gBAAkB,MAAQ,WAE9E,iBAAKhpM,UAAU,+BAA8B,UAAC,QACvC,KACN,uBACEwmM,EAA4ByC,YAC1B,IAAIjpL,KAAKwmL,EAA4ByC,aAAe,IAAIzX,eAAe,QAAS,CAAE0X,UAAW,UAC7F,oBAGJnrO,OAAO0uC,KAAK+5L,GAA6BlpO,OAAS,GAClD,gBAAK0iC,UAAU,iBAAgB,UAC9B,kBAAMA,UAAU,uBAAuB4+K,SAAU2Y,GAAqB,WACrE,SAAC,GAAM,CACNzyH,IAAKkiI,GACL/uN,KAAM,YACN+mM,YAAY,iBACZpyM,SAAuB,OAAdopN,SAAc,IAAdA,QAAc,EAAdA,GAAgBppN,UAAW,GACpC0yE,aAAa,MAEd,SAAC,GAAM,CAACs7E,OAAK,EAACl2C,MAAM,oBAEpB,SAAC,GAAM,CAACk2C,OAAK,EAACl2C,MAAM,SAASlU,QAAS2zH,UAGrC,iBAMT,gBAAKnkM,UAAU,sCAAqC,UACnD,gBAAKA,UAAS,uDAAmD4mM,GAA6B,GAAV,SAAe,SACjGA,IACA,iCAEC,iBAAK5mM,UAAU,gBAAe,WAC7B,wBAAI,4BACJ,kBAAM4+K,SAAU0pB,GAAkBxjI,IAAKuiH,GAAQ,WAC9C,SAAC,GAAM,CAACnmN,MAAM,cAAc89M,YAAY,cAAc/mM,KAAK,WAAWrL,SAA+B,OAAtB06N,SAAsB,IAAtBA,QAAsB,EAAtBA,GAAwB16N,UAAW,MAClH,SAAC,GAAM,CAAC1L,MAAM,WAAW89M,YAAY,WAAW/mM,KAAK,aAAarL,QAAS26N,IAAuB,MAClG,mBAAOvnM,UAAW6lM,EAAe,wBAA0B,oBAAoB,UAAC,gBAE/E,SAAC,GAAK,CAACjvB,QAAM,EAAC92J,GAAG,sBAAsB5zC,KAAK,OAAOokG,UAAQ,EAACkU,SAAUokH,SAEvE,iBAAM5oM,UAAU,kBAAiB,SAAC,gEACjC6lM,IAAgB,gBAAK7lM,UAAU,YAAW,SAAE6lM,MAC1CtvF,EAAMj5I,SACR,yBACEi5I,EAAMxpI,KAAI,SAAC4pI,EAAMylB,GAAG,OACpB,gBAAKp8H,UAAU,YAAW,SACxB22G,EAAK1+H,MADyBmkJ,EAE1B,OAIT,SAAC,GAAM,CAACxB,OAAK,EAACl2C,MAAM,OAAOxkC,UAAWq2D,EAAMj5I,QAAUuoO,WAIxD,iBAAK7lM,UAAU,iBAAgB,WAC9B,wBAAI,2BACJ,SAAC,GAAK,CAAC6hD,QAAS2lJ,GAAiBrgO,KAAMw+N,QAExC,SAAC,GAAI,CAACtuE,KAAK,YAAY7mD,QAAS,kBAAMq2H,IAAoB,SAAAl7N,GAAI,OAAKA,CAAI,GAAC,QAGzE,iCACC,gBAAKq0B,UAAU,sDAAqD,SAAC,eACrE,SAAC,GAAI,CAACq3H,KAAK,WAAW7mD,QAAS,kBAAMq2H,IAAoB,SAAAl7N,GAAI,OAAKA,CAAI,GAAC,YAM3E,gBAAKq0B,UAAS,oDAAgD8mM,GAA2B,GAAV,SAAe,SAC5FA,IACA,8BACEG,IAAmBA,GAAgB3pO,OAAS,IAC5C,iCACC,iBAAK0iC,UAAU,iDAAgD,WAC9D,gBAAKA,UAAU,mDAAkD,SAAC,aAClE,SAAC,GAAI,CAACq3H,KAAK,YAAY7mD,QAAS,kBAAMu2H,IAAkB,SAAAp7N,GAAI,OAAKA,CAAI,GAAC,QAEvE,SAAC,GAAK,CAACk2E,QAAS4lJ,GAAoBtgO,KAAM8/N,MAC1C,SAAC,GAAM,CAACviH,MAAM,eAAek2C,OAAK,EAACpqD,QAASm3H,GAAcvsE,eAAe,4BACzE,SAAC,GAAK,CACLr9H,YAAakoM,EACb3hC,cAAe,kBAAM4hC,OAAsBh5N,EAAU,EACrDkuJ,eAAe,uBAAsB,UAErC,oBAASp7H,UAAU,gBAAe,SAChCimM,IACA,SAAC,GAAK,CAACpkJ,QAAS6lJ,GAA+BvgO,KAAM8+N,EAAmBppB,YAAamV,aAAc,cAQzG,iCACC,gBAAKhyL,UAAU,mDAAkD,SAAC,aAClE,SAAC,GAAI,CAACq3H,KAAK,WAAW7mD,QAAS,kBAAMu2H,IAAkB,SAAAp7N,GAAI,OAAKA,CAAI,GAAC,UAIxE,iBAAKq0B,UAAU,wCAAuC,WACrD,gBAAKA,UAAU,+CAA8C,SAAC,iBAC9D,SAAC,GAAI,CAACq3H,KAAK,WAAW7mD,QAAS,kBAAM69C,GAAS5P,EAAOgB,YAAY,QAGlE,SAAC,GAAK,CAAC1hH,UAAWA,EAAWg5K,iBAAe,YAC3C,qBAAS/2K,UAAU,gBAAe,WACjC,gBAAKA,UAAU,cAAa,SAAC,kFAC7B,iBAAKA,UAAU,kBAAiB,WAC/B,SAAC,GAAM,CAAC46H,OAAK,EAACl2C,MAAM,MAAMlU,QAAS,kBAAM43H,IAA0B,KACnE,SAAC,GAAM,CAACxtE,OAAK,EAACl2C,MAAM,KAAKx4G,KAAK,UAAUskG,QAAS,kBAAMwqG,GAAa,EAAM,aAK7E,SAAC,GAAY,CACZj9K,YAAaskH,EAAgBz6F,QAC7Bjb,OAAQ01G,EAAgBD,OAAS,SAAW,YAC5CkiD,cAAe,kBAAMhiD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,EAAC,UAExF,yBAAMC,EAAgBz6F,gBAK3B,EC9jBA,GAzDyB,SAAH,GAWf,IAVNyvF,EAAc,EAAdA,eACA8xF,EAAmB,EAAnBA,oBACAC,EAAM,EAANA,OAEAr0K,GADW,EAAXs0K,YACI,EAAJt0K,MACAu0K,EAAY,EAAZA,aAAa,EAAD,EACZ7wG,WAAAA,OAAU,OAAQ,EAClB8wG,EAAuB,EAAvBA,wBACAC,EAAmB,EAAnBA,oBACAC,EAAQ,EAARA,SAEMzpM,EAAY9iC,KAAW,mBAAoB,CAAE8iF,SAAUy4C,EAAY8hD,SAAUkvD,IAC7EC,EAAWjxG,IAAegxG,EAAW,qBAAuBA,EAAW,WAAa,aAQ1F,OACC,iBAAKzpM,UAAWA,EAAWwwE,QAPD,WAC1B6mC,GAAkBkyF,EAAwBlyF,EAC3C,EAKwD,WACtD,iBAAKr3G,UAAU,4BAA2B,WACzC,gBAAKA,UAAU,yBAAwB,UACtC,SAAC,GAAI,CAACq3H,KAAMqyE,EAAUrhN,KAAK,UAE5B,iBAAK2X,UAAU,2BAA0B,WACxC,gBAAKA,UAAU,iCAAgC,SAAEmpM,KACjD,gBAAKnpM,UAAU,mCAAkC,SAM/CspM,IAAgB,gBAAKtpM,UAAU,iCAAgC,SAAEwpM,UAGpE,gBAAKxpM,UAAU,+BAA8B,UAC5C,gBAAKA,UAAU,uCAAsC,SAAEopM,UAIzD,gBAAKppM,UAAU,yBAAwB,SACrC+0B,EAAKy8J,eAAe,QAAS,CAC7Bl9J,KAAM,UACNQ,MAAO,UACP+I,IAAK,UACL4J,KAAM,UACNc,OAAQ,UACRohK,QAAQ,QAKb,ECvBA,GAnCa,SAAH,GAA8B,IAAxBhzF,EAAI,EAAJA,KAAMizF,EAAU,EAAVA,WACfnsE,EAAe,OAAJ9mB,QAAI,IAAJA,OAAI,EAAJA,EAAM8mB,SACjB6B,EAAe,OAAJ3oB,QAAI,IAAJA,OAAI,EAAJA,EAAMgpB,SACjBD,EAAe,OAAJ/oB,QAAI,IAAJA,OAAI,EAAJA,EAAM+oB,SAEjBmqE,EAAmB,yCAAG,sFACtBnqE,EAAS,CAAD,gEAEP/mI,MAAM,oBAAD,OAAqB2mI,EAAQ,mBAAWI,IACjD/+J,MAAK,SAAA0qD,GAAG,OAAIA,EAAIkuF,MAAM,IACtB54I,MAAK,SAAA44I,GACL,IAAMuwF,EAAUvlF,IAAIuZ,gBAAgBvkB,GAC9BvuG,EAAOvnC,SAASwxB,cAAc,KACpC+V,EAAKE,KAAO4+L,EACZ9+L,EAAKs+H,SAAQ,UAAM7L,GACnBh6J,SAAS5C,KAAKq0B,YAAY8V,GAC1BA,EAAK+yH,QACLt6J,SAAS5C,KAAKy0B,YAAY0V,EAC3B,IAAG,KAAD,sCACH,kBAdwB,mCAgBzB,OACC,gBAAKhL,UAAS,eAAWs/H,GAAYA,GAAa,IAAK,UACtD,iBAAKt/H,UAAU,gBAAe,UAC5Bs/H,IAAY,SAAC,GAAI,CAACjI,KAAmB,QAAbiI,GAAmC,SAAbA,EAAsB,WAAU,UAAMA,EAAQ,QAAQj3I,KAAK,QAC1G,gBAAK2X,UAAS,aAAe,SAAEy9H,KAC/B,iBAAKz9H,UAAU,oBAAmB,WACjC,SAAC,GAAI,CAACq3H,KAAK,eAAe7mD,QAASq5H,EAAqBxhN,KAAK,KAAKnO,MAAM,YACvE0vN,IAAc,SAAC,GAAI,CAACvyE,KAAK,YAAYhvI,KAAK,KAAKnO,MAAM,UAAUs2F,QAASo5H,WAK9E,EC4IA,GAnKgB,SAAH,GAYN,IAXN9pL,EAAE,EAAFA,GACAiqL,EAAW,EAAXA,YACAC,EAAe,EAAfA,gBACAC,EAAa,EAAbA,cACAC,EAAoB,EAApBA,qBACA36M,EAAI,EAAJA,KACA46M,EAAY,EAAZA,aACA5zF,EAAK,EAALA,MACA6zF,EAAkB,EAAlBA,mBACAC,EAAe,EAAfA,gBACAC,EAAa,EAAbA,cAEA,EAAqF/oF,KAA7EgB,EAAG,EAAHA,IAAK7M,EAAI,EAAJA,KAAM2M,EAAe,EAAfA,gBAAiBC,EAAkB,EAAlBA,mBAAoBQ,EAAwB,EAAxBA,yBACxD,EAA8Dma,IAAU,GAAM,eAAvEstE,EAAuB,KAAEC,EAA0B,KAC1D,GAAoDr/H,EAAAA,EAAAA,UAAS4+H,GAAY,eAAlEU,EAAkB,KAAEC,EAAqB,KAE1CC,GAAaz/H,EAAAA,EAAAA,QAAO,MAEpBlrE,EAAY9iC,KAAW,UAAW,CACvC0tO,OAAQT,EACRp6F,UAAWo6F,IAGNU,EAAmB3tO,KAAW,qBAAsB,CACzD4tO,SAAUv0F,EAAMj5I,OAAS,EACzBytO,WAAYd,EAAce,gBAC1BV,cAAeA,GAAiBxqL,IAAOwqL,IAGlChW,GAAYtpH,EAAAA,EAAAA,UAAQ,WACzB,OAAO0qC,EAAKrG,SAAWuL,EAAMK,SAAWvF,EAAKrG,SAAWuL,EAAMO,iBAC/D,GAAG,CAACzF,IAEEu1F,EAAkB,yCAAG,8FACrBR,EAAmB,CAAD,eACmE,OAAzF3nF,EAAyB,0DAA0D,GAAM,0BAUzF,GAVyF,SAKnFooF,EAAkB,CACvBxzF,UAAW53F,EACXiqL,YAAaU,EACbO,gBAAiB,MAGgB,KAA9BP,EAAmBpxM,QAAiBoxM,EAAmBpxM,SAAW0wM,EAAY1wM,OAAM,iEAEtEkpH,EAAItK,gCAAgCizF,GAAiB,KAAD,EAA7D,IAAH7/K,EAAG,QAEAqsF,WAAcrsF,EAAI6rK,SAAQ,iBACU,OAA5Cp0E,EAAyBz3F,EAAIzD,SAAS,GAAM,2BAK7CwiL,GAAoD,oBAAvBA,GAAqCA,EAAmB/+K,GACrFq/K,EAAsBr/K,EAAI0+K,aAAa,kDAEvC5pL,QAAQja,MAAM,wBAAwB,EAAD,IACrC48G,EAAyB,yBAAyB,GAAM,QAEH,OAFG,UAExD0nF,GAA4BD,GAAyB,6EAEtD,kBA/BuB,mCAiClBY,GAAqBngI,EAAAA,EAAAA,UAAQ,WAClC,OAAIg/H,IAAoBtsF,EAAeC,KAC/B,CACN+rF,SAAU,kBACVrhN,KAAM,MAEG2hN,IAAoBtsF,EAAeE,KACtC,CACN8rF,SAAU,wBAFL,CAKR,GAAG,CAACM,IAEEoB,GAAuBpgI,EAAAA,EAAAA,UAAQ,WACpC,OAAKu/H,GAA2BJ,EACxB,CACNT,SAAU,WACVrhN,KAAM,KACNq8F,MAAO,OACPxqG,MAAO,QACP8lB,UAAW,kBACXwwE,QAAS,kBAAMg6H,GAA4BD,EAAwB,GAE1DA,EACH,CACNb,SAAU,eACVxvN,MAAO,QACPwqG,MAAO,eACPr8F,KAAM,KACN2X,UAAW,gBACXwwE,QAASy6H,QAPJ,CAUR,GAAG,CAACV,EAAyBJ,EAAcM,IAErCY,EAAiB,WAEtBnB,GAAwD,oBAAzBA,GAAuCA,EAAqBpqL,EAC5F,EAMA,OACC,iBAAK9f,UAAWA,EAAW,OAAM8f,EAAIglD,IAAK6lI,EAAW,WACpD,gBAAK3qM,UAAU,gBAAe,SAAEzQ,KAChC,iBAAKyQ,UAAW6qM,EAAiB,UAC/BZ,EAAcvyF,WAAa35I,OAAO0uC,KAAKw9L,GAAe3sO,OAAS,IAC/D,gBAAK0iC,UAAU,6BAA4B,UAC1C,SAACsrM,GAAa,CACbxrL,GAAImqL,EAAcvyF,UAClBhjG,MAAOu1L,EAAcsB,mBACrB3jL,QAASqiL,EAAcF,YACvByB,WAAYvB,EACZwB,cAfwB,WAC7BpB,GAA8C,oBAApBA,GAAkCA,EAAgBJ,EAAcvyF,UAC3F,OAiBG,iBAAK13G,UAAU,gBAAe,UAC5B+pM,IAAgBQ,IAChB,iBAAMnqJ,wBAAyB,CAAEqb,OAAQsuI,EAAYjvM,QAAQ,MAAO,YAEpEivM,GAAeQ,IACf,SAAC,GAAQ,CAACjrJ,aAAcyqJ,EAAavlH,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOugM,EAAsBvgM,EAAOnqC,MAAM,EAAEmyN,UAAU,SAE9G57E,GAASA,EAAMj5I,OAAS,GAAKi5I,EAAMxpI,KAAI,SAAC4pI,EAAMylB,GAAG,OAAK,SAAC,GAAI,CAAkCzlB,KAAMA,IAA9B,OAAJA,QAAI,IAAJA,OAAI,EAAJA,EAAM8mB,WAAY,GAAKrB,EAAmB,IAC3G7lB,GAASA,EAAMj5I,OAAS,IAAK,iBAAK0iC,UAAU,oBAAmB,UAAEu2G,EAAMj5I,OAAO,wBAR5CwiD,IAUpC,gBAAK9f,UAAU,gBAAe,UAC7B,SAAC,GAAI,CAACq3H,KAAwB,OAAlB8zE,QAAkB,IAAlBA,OAAkB,EAAlBA,EAAoBzB,SAAUxvN,MAA2B,OAApBkxN,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBlxN,MAAOmO,KAAwB,OAAlB8iN,QAAkB,IAAlBA,OAAkB,EAAlBA,EAAoB9iN,SAExGisM,GAAayV,IACb,gBACC/pM,UAA+B,OAApBorM,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBprM,UACjC0kF,MAA2B,OAApB0mH,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB1mH,MAC7BlU,QAAS,kBAA0B,OAApB46H,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB56H,SAAS,EAAC,UAE/C,SAAC,GAAI,CAAC6mD,KAA0B,OAApB+zE,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB1B,SAAUxvN,MAA2B,OAApBkxN,QAAoB,IAApBA,OAAoB,EAApBA,EAAsBlxN,MAAOmO,KAA0B,OAApB+iN,QAAoB,IAApBA,OAAoB,EAApBA,EAAsB/iN,aAI/G,iBAAM2X,UAAU,kBAAkB0kF,MAAM,SAAQ,UAC/C,SAAC,GAAI,CAAClU,SAAUovD,IAAYyrE,EAAgBjuG,aAAcwiC,IAAYyrE,EAAgBh0E,KAAK,aAAan9I,MAAM,UAAUmO,KAAM,QAE/H,SAAC,GAAY,CACZ0V,UAAWskH,EAAgBF,QAC3Bx1G,OAAQ01G,EAAgBD,OAAS,SAAW,YAC5CkiD,cAAe,kBAAMhiD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,EAAC,UAExF,yBAAMC,EAAgBz6F,cAI1B,EAIa0jL,GAAgB,SAAH,GAAyE,IAAnExrL,EAAE,EAAFA,GAAI8H,EAAO,EAAPA,QAASlT,EAAK,EAALA,MAAOg3L,EAAY,EAAZA,aAAcF,EAAU,EAAVA,WAAYC,EAAa,EAAbA,cAKvEhsE,GAAUz0D,EAAAA,EAAAA,UAAQ,WACvB,OAAKjtG,OAAO0uC,KAAK++L,GAAYluO,OACzBkuO,EAAWG,QACP,CAAEjsE,SAAU8rE,EAAW9rE,SAAUjC,SAAU+tE,EAAW/tE,SAAUkC,SAAU6rE,EAAW7rE,eAD7F,EAD4C,CAAC,CAI9C,GAAG,CAAC6rE,IAEJ,OACC,iBAAKxrM,UAAU,gBAAyBwwE,QAZb,WAC3Bi7H,GAA0C,oBAAlBA,GAAgCA,EAAc3rL,EACvE,EAUsE,WACpE,gBAAK9f,UAAU,UACf,iBAAKA,UAAU,yBAAwB,WACtC,gBAAKA,UAAU,uBAAsB,SAAE0U,KACvC,gBAAK1U,UAAU,sBAAqB,SACjC4nB,GAAWA,GAAaA,GAAWA,EAAQtqD,OAAS,IAAMsqD,EAAQttC,UAAU,EAAG,IAAM,QAEvFmlJ,IACA,gBAAKz/H,UAAU,sBAAqB,UACnC,SAAC,GAAI,CAA+B22G,KAAM8oB,QAAWvyJ,IAAnC,OAAPuyJ,QAAO,IAAPA,OAAO,EAAPA,EAAShC,WAAY,SAIlCiuE,IAAgB,SAAC,GAAI,CAACr0E,KAAK,YAAYhvI,KAAK,KAAKnO,MAAM,UAAUs2F,QAASk7H,MAbxC5rL,EAgBtC,ECtLMyyK,GAAkB,CASvB,EAkBD,GAfqB,WACpB,IAAQ78E,EAAS6L,KAAT7L,KAER,GAA4CvqC,EAAAA,EAAAA,YAAU,eAA/CksC,EAAc,KAAEu0F,EAAiB,KAExC,OAAIl2F,EAAKrG,SAAWuL,EAAMI,SAExB,iCACG3D,IAAkB,SAACw0F,GAAsB,CAACD,kBAAmBA,IAC9Dv0F,IAAkB,SAACy0F,GAAgB,CAACz0F,eAAgBA,GAAkB,KAAMu0F,kBAAmBA,QAI5F,SAACE,GAAgB,CAACz0F,eAAgBA,GAAkB,KAAMu0F,kBAAmBA,GACrF,EAGaC,GAAyB,SAAH,GAA+B,IAAzBD,EAAiB,EAAjBA,kBACxC,EAA4BrqF,KAApB7L,EAAI,EAAJA,KAAMuM,EAAI,EAAJA,KAAMM,EAAG,EAAHA,IAEZvT,EAAyDiT,EAAzDjT,QAAS7xI,EAAgD8kJ,EAAhD9kJ,QAAS4uO,EAAuC9pF,EAAvC8pF,mBAAoBnwE,EAAmB3Z,EAAnB2Z,eAE9C,GAA4CzwD,EAAAA,EAAAA,UAASonH,IAAgB,eAA9DkC,EAAc,KAAEC,EAAiB,KACxC,GAAgDvpH,EAAAA,EAAAA,UAAS,IAAG,eAArD6gI,EAAgB,KAAEC,EAAmB,KAC5C,GAAsD9gI,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA3D+gI,EAAmB,KAAEC,EAAsB,KAClD,GAAwChhI,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA7CurH,EAAY,KAAEsJ,EAAe,KAGpC,GAAsC70H,EAAAA,EAAAA,UAAS,IAAG,eAA3Cu0H,EAAW,KAAEC,EAAc,KAClC,GAAoDx0H,EAAAA,EAAAA,UAAS,WAAU,eAAhEihI,EAAkB,KAAEC,EAAqB,KAChD,GAA8BlhI,EAAAA,EAAAA,UAAS,IAAG,eAAnCvjD,EAAO,KAAE01G,EAAU,KAC1B,GAAkCnyD,EAAAA,EAAAA,UAAS,IAAG,eAAvC20H,EAAS,KAAEC,EAAY,KAG9B,EAAyE9iE,IAAU,GAAM,eAAlFqvE,GAA2B,KAAEC,GAAiC,KACrE,GAA2EtvE,IAAU,GAAM,iBAApFuvE,GAA4B,MAAEC,GAAkC,MAEjEC,IAAgBxhI,EAAAA,EAAAA,UAChByhI,IAAyBzhI,EAAAA,EAAAA,UACzB0hI,IAAe1hI,EAAAA,EAAAA,QAAO,MAEtBopH,IAAYtpH,EAAAA,EAAAA,UAAQ,WACzB,OAAO0qC,EAAKrG,SAAWuL,EAAMK,SAAWvF,EAAKrG,SAAWuL,EAAMO,iBAC/D,GAAG,CAACzF,IAEE8+E,IAAUxpH,EAAAA,EAAAA,UAAQ,WACvB,OAAO0qC,EAAKrG,SAAWuL,EAAMG,KAC9B,GAAG,CAACrF,IAEEm3F,IAA0B7hI,EAAAA,EAAAA,UAAQ,WAAO,IAAD,IACvC8hI,EAA4B,OAAP99F,QAAO,IAAPA,OAAO,EAAPA,EAASpiI,QAAQmN,QAC3C,SAAAyhJ,GAAM,OAAIA,EAAOC,eAAiB7f,EAAaG,OAASyf,EAAOC,eAAiB7f,EAAaE,GAAG,IAE3FixF,EAAgC,OAAdnxE,QAAc,IAAdA,GAAuB,QAAT,EAAdA,EAAgBhvJ,eAAO,WAAT,EAAd,EAAyBmN,QAAO,SAAAmjN,GACvD,OAAOA,EAAQl9N,QAAU01I,EAAKvG,MAC/B,IACA,OAAK49F,EAAgBzvO,OAES,OAAP0xI,QAAO,IAAPA,GAAgB,QAAT,EAAPA,EAASpiI,eAAO,WAAT,EAAP,EAAkBmN,QAAO,SAAAyhJ,GAAM,OAAmB,OAAfuxE,QAAe,IAAfA,OAAe,EAAfA,EAAiB15M,MAAK,SAAAy3B,GAAG,OAAIA,EAAI6mF,WAAa6pB,EAAOx7J,KAAK,GAAC,IAFjF8sO,CAIrC,GAAG,CAAC99F,EAAS4sB,EAAgBlmB,IAEvBs3F,IAAiBhiI,EAAAA,EAAAA,UAAQ,WAC9B,OAAO6hI,GAAwBx5M,MAAK,SAAAmoI,GAAM,OAAIA,EAAOC,eAAiB7f,EAAaG,KAAK,KAAKy4E,EAC9F,GAAG,CAACqY,GAAyBrY,KAEvByY,IAA4BjiI,EAAAA,EAAAA,UAAQ,WACzC,OAAO+gI,EAAmBn/N,QAAQG,KAAI,YACrC,MAAO,CAAE/M,MADoC,EAALA,MACxB49G,YAD0C,EAAXA,YAEhD,GACD,GAAG,CAACmuH,IAEEmB,IAAiBliI,EAAAA,EAAAA,UAAQ,WAAO,IAAD,EACpC,GAAIwpH,GAAS,OAAOr3N,EAAQyP,QAC5B,IAAMugO,EAAyB,OAAPhwO,QAAO,IAAPA,GAAgB,QAAT,EAAPA,EAASyP,eAAO,WAAT,EAAP,EAAkBmN,QAAO,SAAAhI,GAAC,OAAIA,EAAEysN,qBAAuB9oF,EAAKvG,MAAM,IAC1F,OAAKg+F,GAAwB,EAE9B,GAAG,CAAChwO,EAASq3N,GAAS9+E,IAEhB03F,IAAkBpiI,EAAAA,EAAAA,UAAQ,WAE/B,OAAOspH,IAAaoC,IAA4B,OAAZA,QAAY,IAAZA,OAAY,EAAZA,EAAcsO,2BAA4BnnF,EAAwBC,MACvG,GAAG,CAAC44E,EAAcpC,KAGZK,IAAwB3pH,EAAAA,EAAAA,UAAQ,WACrC,MAAO,CACN,CACCkT,OAAQ,IACRr8B,QAAQ,CACP,CAECq8B,OAAQ,IAERxC,KAAM,SAAA0C,GAAG,OAAI,8BAAGA,EAAIA,IAAIx5G,MAAQ,GAAK,GAEtC,CACCs5G,OAAQ,OACRD,SAAU,eAEX,CACCC,OAAQ,sBACRD,SAAU,cAEX,CACCC,OAAQ,SACRxC,KAAM,SAAA0C,GAAQ,IAAD,EACJ0C,IAAgB,OAAH1C,QAAG,IAAHA,GAAS,QAAN,EAAHA,EAAK+D,YAAI,WAAN,EAAH,EAAW/D,MAAO,CAAC,GAAhC0C,SACR,MAAM,GAAN,OAAUA,EAASusH,aAAY,YAAIvsH,EAASwsH,cAC7C,GAED,CACCpvH,OAAQ,UACRxC,KAAM,SAAA0C,GAAQ,IAAD,EAEZ,QADwB,OAAHA,QAAG,IAAHA,GAAS,QAAN,EAAHA,EAAK+D,YAAI,WAAN,EAAH,EAAW/D,MAAO,CAAC,GAAhC0C,SACQysH,OACjB,GAED,CACCrvH,OAAQ,YACRD,SAAU,cAGX,CACCC,OAAQ,gBACRD,SAAU,qBACV,eAEG+uH,GACD,CACA,CACC9uH,OAAQ,aACRD,SAAU,cAGX,IAAI,CAEP,CACCC,OAAQ,eACRD,SAAU,mBAEX,CACCC,OAAQ,kBACRxC,KAAM,SAAA0C,GAAQ,IAAD,EACJ0C,IAAgB,OAAH1C,QAAG,IAAHA,GAAS,QAAN,EAAHA,EAAK+D,YAAI,WAAN,EAAH,EAAW/D,MAAO,CAAC,GAAhC0C,SACR,OAAO,iBAAM9gF,UAAU,eAAc,SAAE8gF,EAAS+uB,qBAAuB,IACxE,GAED,CACC3xB,OAAQ,4BACRxC,KAAM,SAAA0C,GAAG,OACR,gBAAKp+E,UAAU,OAAO0kF,MAAM,oBAAoBlU,QAAS,kBAAMg9H,GAA4BpvH,EAAI,EAAC,UAC/F,SAAC,GAAI,CAACi5C,KAAK,cACN,KAEP,OAEGi9D,GACD,CACA,CACCp2G,OAAQ,sBACRxC,KAAM,SAAA0C,GAAG,OACR,gBAAKp+E,UAAU,OAAO0kF,MAAM,sBAAsBlU,QAAS,kBAAMi9H,GAA8BrvH,EAAI,EAAC,UACnG,SAAC,GAAI,CAACi5C,KAAK,cACN,IAIR,MAIP,GAAG,CAAC21E,GAAgBhB,EAAkB1X,KAahCkZ,GAA8B,SAAApvH,GAAQ,IAAD,EAClC0C,IAAgB,OAAH1C,QAAG,IAAHA,GAAS,QAAN,EAAHA,EAAK+D,YAAI,WAAN,EAAH,EAAW/D,MAAO,CAAC,GAAhC0C,SACHA,IACLqrH,EAAuBrrH,GACvB2rH,KACD,EAGMgB,GAAgC,SAAArvH,GAAQ,IAAD,EACpC0C,IAAgB,OAAH1C,QAAG,IAAHA,GAAS,QAAN,EAAHA,EAAK+D,YAAI,WAAN,EAAH,EAAW/D,MAAO,CAAC,GAAhC0C,SACHA,GACD8qH,GAAkD,oBAAtBA,GAAkCA,EAAkB9qH,EAASu2B,eAC9F,GA8BAzsC,EAAAA,EAAAA,YAAU,WAOe,aAYvB,OAZuB,0BAAxB,kHAE2B23C,EAAIjL,6BAA6B5B,EAAKvG,OAAQuwF,GAAa,KAAD,EAAnE,IAAViD,EAAU,YACIA,EAAWrlO,OAAS,GAAC,iDACzCyiO,EACC4C,EAAW51N,KAAI,gBAAGqiI,EAAQ,EAARA,SAAyC,MAAQ,CAClEtvF,GADiC,EAANqvF,OAE3BvxB,YAAawxB,EACb41F,wBAH0D,EAAvBA,wBAInC,KACA,0GAEH,sBAjBGtF,EAAYpiO,OAAS,IACrBoiO,EAAYpiO,OAAS,EACxByiO,EAAa,IAEb,WACuB,wBAaxB6C,GACD,GAAG,CAAClD,EAAan9E,IAGjB,IAQM60E,GAAqB,SAACp3N,EAAO9B,GAClCo/J,EAAW,IACX,IAAM+5D,EAAS,KAAQ5C,GACvB4C,EAAUn5N,GAAO8B,EACjB00N,EAAkB2C,EACnB,EAGMqW,GAA0B,yCAAG,WAAMntO,GAAC,gFAIS,OAJT,SAExCA,EAAEwtF,iBACIsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACxBi3K,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WAAW,EAAD,OAE/BuzB,EAAI1K,oBAAoBupE,GAAU,KAAD,GAA7C/1J,EAAG,SACEA,EAAI/tD,OAAS,EACvB2uO,EAAoB5gL,IAEpBiyG,EAAWjyG,EAAIzD,SACfqkL,EAAoB,KACpB,kDAED9rL,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,gBAhB+B,sCAmB1BmpM,GAAyB,yCAAG,WAAMptO,GAAC,oFAIiB,GAHzDA,EAAEwtF,iBACIsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtBi3K,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WACnC4+G,EAAkBhB,GAAa5gO,QAAQ6hO,YACxCzsB,EAASmsB,SAAYK,EAAgBhmL,QAAO,iDAQhD,OAPKq8K,EAAsB,OAAZvN,QAAY,IAAZA,OAAY,EAAZA,EAAc52K,GAC9BshK,EAAS0sB,SAAW7J,EACpB7iB,EAAS2oB,YAAc6D,EAAgBhmL,QACnCgmL,EAAgBj3F,OACnByqE,EAASzhD,SAAWiuE,EAAgBj3F,KAAKgpB,SACzCyhD,EAAS3jD,SAAWmwE,EAAgBj3F,KAAK8mB,SACzC2jD,EAAS1hD,SAAWkuE,EAAgBj3F,KAAK+oB,UACzC,UACiBnd,EAAIxK,yBAAyBqpE,GAAU,KAAD,GAA/C,GAAH/1J,EAAG,OACA,CAAD,kDACR8gL,EAAuB9gL,GACnBugL,GAAkD,oBAAtBA,GAAkCA,EAAkBvgL,EAAIgsF,gBACxFk1F,KAAoC,4CACpC,gBAnB8B,sCAsBzBwB,GAA8B,yCAAG,WAAMxtO,GAAC,kFAUwB,OATrEA,EAAEwtF,iBACIsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtBi3K,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,YACnCg/G,EAAmB,CAAC,GAETC,WAAa7sB,EAAS8sB,SACvCF,EAAiBG,aAAejC,EAAoBgC,SAEpDF,EAAiBT,QAAUnsB,EAASmsB,QACpCS,EAAiB32F,eAAiB60F,EAAoB70F,eAAe,UACnDkL,EAAIxK,yBAAyBi2F,GAAkB,KAAD,GAAvD,GAAH3iL,EAAG,OACA,CAAD,kDAER4gL,EAAoB,CAAC5gL,IACrBohL,KAAqC,4CACrC,gBAhBmC,sCAmB9B2B,GAAmC,SAAA7tO,GACxCy/N,EAAgB,CAAC,GACjBqM,EAAsB9rO,EAAE4pC,OAAOnqC,MAChC,EAEA,OACC,iBAAKggC,UAAU,yBAAwB,WACtC,UAAC,GAAS,YACT,iBAAM8kE,IAAK4nI,GAAe9tB,SAAU8uB,GAA2B,UAC9D,iBAAK1tM,UAAU,wBAAuB,WACrC,gBAAKA,UAAU,QAAO,SAAC,yBACvB,iBAAKA,UAAU,uBAAsB,WACpC,SAAC,GAAK,CAAC/nB,KAAK,QAAQ+mM,YAAY,QAAQx6F,SAAU,kBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,QAAQ,KACzH,SAAC,GAAK,CACLphB,KAAK,QACL+mM,YAAY,aACZx6F,SAAU,kBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,QAAQ,KAElF,SAAC,GAAK,CACLphB,KAAK,QACL+mM,YAAY,YACZx6F,SAAU,kBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,QAAQ,QAGnF,gBAAK2G,UAAU,QAAO,SAAC,8BACvB,iBAAKA,UAAU,0BAAyB,WACvC,SAAC,GAAK,CACLs/C,aAAc,GACdrnE,KAAK,UACL+mM,YAAY,UACZx6F,SAAU,kBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,UAAU,KAEpF,SAAC,GAAM,CACN2lL,YAAY,SACZ/mM,KAAK,WACLusG,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,WAAiB,EACpF4M,QAASqgO,MAEV,SAAC,GAAM,CACNjuB,YAAY,SACZ/mM,KAAK,WACLusG,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,WAAiB,EACpF4M,QAASigO,KAETG,KACA,SAAC,GAAM,CACNhuB,YAAY,QACZ/mM,KAAK,UACLusG,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,UAAgB,EACnF4M,QAASsgO,MAGX,SAAC/d,GAAU,CACVC,QAAM,EACNG,cAAc,WACdC,YAAY,SACZH,aAAc,SAAArvN,GAAK,OAAIo3N,GAAmBp3N,EAAO,WAAW,EAC5DsvN,WAAY,SAAAtvN,GAAK,OAAIo3N,GAAmBp3N,EAAO,SAAS,QAG1D,iBAAKggC,UAAU,kBAAiB,WAC/B,SAAC,GAAM,CAAC46H,OAAK,EAACl2C,MAAM,YACpB,SAAC,GAAM,CAACk2C,OAAK,EAACl2C,MAAM,QAAQlU,QA1IT,SAAAjwG,GAAM,IAAD,EAC7BA,EAAEwtF,iBACF2mI,EAAkBnC,IACL,OAAbma,SAAa,IAAbA,IAAsB,QAAT,EAAbA,GAAe1gO,eAAO,OAAtB,EAAwB2kB,QACxBs7M,EAAoB,GACrB,cAyIMzX,IAAWwX,EAAiB1uO,OAAS,GAAKsqD,KAC5C,iBAAK5nB,UAAU,kCAAiC,WAC/C,iBAAKA,UAAU,2CAA0C,UACvDgsM,EAAiB1uO,OAAS,EAAC,UAAM0uO,EAAiB1uO,OAAM,uBAAwB,GAChFsqD,GAAWA,MAGX4sK,KAAW,SAAC,GAAM,CAAC55D,OAAK,EAACl2C,MAAM,uBAAuBlU,QA7NtB,WACtC8sD,EAAW,IACXivE,IACD,OA6NIP,GAAoBA,EAAiB1uO,OAAS,IAC9C,gBAAK0iC,UAAU,yCAAwC,UACtD,SAAC,GAAK,CAAC74B,KAAM6kO,EAAkBnqJ,QAAS8yI,GAAuB3C,aAAc,WAIhF,SAAC,GAAK,CACL52D,eAAe,0BACfr9H,UAAWuuM,GACXhoC,cAAeioC,GAAkC,UAEjD,iBAAMznI,IAAK6nI,GAAwB/tB,SAAU+uB,GAA0B,UACtE,iBAAK3tM,UAAU,yCAAwC,WACtD,gBAAKA,UAAU,QAAO,SAAC,2BACvB,gBAAKA,UAAU,UAAS,SAAE01G,GAAI,UAAOA,EAAKsmB,MAAK,YAAItmB,EAAKo3E,UACxD,gBAAK9sL,UAAU,QAAO,SAAC,6BACvB,iBAAKA,UAAU,uBAAsB,UACnCgtM,KACA,iBAAKhtM,UAAU,+BAA8B,WAC5C,8BACC,kBACC9zB,KAAK,QACLlM,MAAM,UACNq/E,eAAuC,YAAvB+sJ,GAAoC,GACpDn0N,KAAK,qBACLusG,SAAU4pH,KACT,cAGH,8BACC,kBACCliO,KAAK,QACLlM,MAAM,QACNq/E,eAAuC,UAAvB+sJ,GAAkC,GAClDn0N,KAAK,qBACLusG,SAAU4pH,KACT,cAKmB,YAAvBhC,IACA,SAAC,GAAkB,CAClBlrO,MAAM,gBACNsjH,SAhRgB,SAAAxkH,GACvB2/N,EAAe3/N,EAChB,EA+QQmH,KAAM24N,EACNd,OAzP2B,SAAAz+N,GAClC,IAAMm1I,EAAOoqF,EAAU78N,MAAK,SAAAyyI,GAC3B,OAAOA,EAAK93B,cAAgBr9G,EAAE4pC,OAAOnqC,KACtC,IACAggO,EAAgBtqF,EACjB,EAqPQ8qE,QAnPe,SAAAjgN,GACE,aAcvB,OAduB,0BAAxB,6FAE+E,OAF/E,SAEQijO,EAAcjjO,EAAEswF,cAAcovH,QAAQ,QAAQnlL,QAAQ,WAAWzB,OAAO,EAAD,OACpDkpH,EAAIjL,6BAA6B5B,EAAKvG,OAAQq0F,GAAa,KAAD,EAAnE,IAAVC,EAAU,YACIA,EAAWnmO,OAAS,GAAC,iDACnCi3F,EAAQkvI,EAAW12N,KAAI,gBAAGqiI,EAAQ,EAARA,SAAyC,MAAQ,CAChFtvF,GAD+C,EAANqvF,OAEzCvxB,YAAawxB,EACb41F,wBAHwE,EAAvBA,wBAIjD,IACDjF,EAAaxrI,GAAO,kDAEpBp0C,QAAQ3b,KAAK,EAAD,IAAK,2DAElB,uBAf2B,WACJ,wBAexBo+L,EACD,EAmOQ3D,qBAAmB,IAGG,UAAvBmN,IACA,SAAC,GAAM,CACNptB,YAAY,QACZ/mM,KAAK,UACLrL,QAASsgO,GACT1oH,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,UAAgB,OAIrFs0N,IAAagY,IAA+Bc,KAC5C,gBAAKptM,UAAU,4BAA2B,SAAC,kGAI5C,gBAAKA,UAAU,QAAO,SAAC,2BACvB,gBAAKA,UAAU,0BAAyB,UACvC,SAAC,GAAK,CACLs/C,aAAc,GACdrnE,KAAK,UACL+mM,YAAY,UACZx6F,SAAU,kBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,UAAU,OAGrF,SAACg1M,GAAiB,CAACC,aAAW,EAACxpI,IAAK8nI,GAAc2B,mBAAiB,EAACnc,uBAAqB,KACzF,SAAC,GAAM,CAACx3D,OAAK,EAACl2C,MAAM,QAAQxkC,SAAUktJ,aAIzC,SAAC,GAAK,CACLhyE,eAAe,wBACfr9H,UAAWyuM,GACXloC,cAAemoC,GAAmC,UAElD,iBAAM3nI,IAAK6nI,GAAwB/tB,SAAUmvB,GAA+B,UAC3E,iBAAK/tM,UAAU,0CAAyC,WAEvD,gBAAKA,UAAU,QAAO,SAAC,0BACvB,gBAAKA,UAAU,0BAAyB,UACvC,SAAC,GAAM,CACNg/K,YAAY,SACZ/mM,KAAK,WACLusG,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,GAAmBjtL,EAAOnqC,OAAS,KAAM,WAAiB,EACpF4M,QAA2B,OAAlBm/N,QAAkB,IAAlBA,OAAkB,EAAlBA,EAAoBn/N,QAC7B0yE,aAAc4sJ,EAAoBgC,UAAY,QAKhD,gBAAKluM,UAAU,QAAO,SAAC,2BACvB,SAAC,GAAK,CACL/nB,KAAK,UACL+mM,YAAY,UACZ1/H,aAAc4sJ,EAAoBqB,SAAW,GAC7C/oH,SAAU,kBAAGr6E,EAAM,EAANA,OAAM,OAAOitL,IAA+B,QAAZ,EAAAjtL,EAAOnqC,aAAK,aAAZ,EAAcq5B,SAAU,GAAI,UAAU,KAGpF,gBAAK2G,UAAU,kBAAiB,UAC/B,SAAC,GAAM,CAAC46H,OAAK,EAACl2C,MAAM,oBAO3B,EAEaonH,GAAmB,SAAH,GAA+C,IAAzCz0F,EAAc,EAAdA,eAAgBu0F,EAAiB,EAAjBA,kBAClD,EAA4GrqF,KAApGgB,EAAG,EAAHA,IAAK7M,EAAI,EAAJA,KAAM1G,EAAO,EAAPA,QAAS2S,EAAY,EAAZA,aAAcU,EAAe,EAAfA,gBAAiBC,EAAkB,EAAlBA,mBAAoBQ,EAAwB,EAAxBA,yBAC/E,GAAkD33C,EAAAA,EAAAA,UAAS,IAAG,eAAvDqjI,EAAiB,KAAEC,EAAoB,KAC9C,GAAsDtjI,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA3D+gI,EAAmB,KAAEC,EAAsB,KAClD,GAA8ChhI,EAAAA,EAAAA,UAAS,IAAG,eAAnDujI,EAAe,KAAEC,EAAkB,KAC1C,EAAiF1xE,IAAU,GAAM,eAA1F2xE,EAA+B,KAAEC,EAAqC,KAC7E,GAA0C1jI,EAAAA,EAAAA,UAAS,IAAG,eAA/C2jI,EAAa,KAAEC,EAAgB,KACtC,GAAkD5jI,EAAAA,EAAAA,eAASj+F,GAAU,eAA9D8hO,EAAiB,KAAEC,EAAoB,KAC9C,GAA4D9jI,EAAAA,EAAAA,WAAS,GAAM,eAApE+jI,EAAsB,KAAEC,EAAyB,KACxD,GAA8ChkI,EAAAA,EAAAA,WAAS,GAAM,eAAtDikI,GAAe,KAAEC,GAAkB,KAElCprI,GADSwnD,KACTxnD,MACF2oI,IAAe1hI,EAAAA,EAAAA,QAAO,MACtBokI,IAAkBpkI,EAAAA,EAAAA,QAAO,MACzBqkI,IAA8BrkI,EAAAA,EAAAA,QAAO,MAGrC63D,GAAazG,KAGbkzE,IAAyBtkI,EAAAA,EAAAA,UAEzB4iI,IAAW9iI,EAAAA,EAAAA,UAAQ,WACxB,OAAKkhI,EACax2F,EAAKvG,SAAW+8F,EAAoB4B,SAAW5B,EAAoB4B,SAAW5B,EAAoBuD,WADnF,CAGlC,GAAG,CAACvD,EAAqBx2F,IAEnB4+E,IAAYtpH,EAAAA,EAAAA,UAAQ,WACzB,OAAO0qC,EAAKrG,SAAWuL,EAAMK,SAAWvF,EAAKrG,SAAWuL,EAAMO,iBAC/D,GAAG,CAACzF,IAEEg6F,IAAa1kI,EAAAA,EAAAA,UAAQ,WAC1B,OAAKkhI,EACcx2F,EAAKvG,SAAW+8F,EAAoBuD,WAAavD,EAAoBmB,aAAenB,EAAoBwD,WAD1F,CAGlC,GAAG,CAACxD,EAAqBx2F,IAEnB23F,IAAeriI,EAAAA,EAAAA,UAAQ,WAC5B,OAAKkhI,EACgBx2F,EAAKvG,SAAW+8F,EAAoBuD,WAAavD,EAAoBmB,aAAenB,EAAoBwD,WAD5F,CAGlC,GAAG,CAACxD,EAAqBx2F,IAGnBi6F,IAA4B3kI,EAAAA,EAAAA,UAAQ,WACzC,OAAwB,OAAjBwjI,QAAiB,IAAjBA,OAAiB,EAAjBA,EAAmBz0N,QAAO,SAAA61N,GAAY,OAC5Cd,EAAgBc,EAAatC,cAAcrvO,SAAS6wO,IAAkBc,EAAaC,YAAY5xO,SAAS6wO,GAAiBc,CAAY,GAEvI,GAAG,CAACpB,EAAmBM,KAGvBlkI,EAAAA,EAAAA,YAAU,WACL3G,IAASA,GAAM6rI,iBAElBjB,IACAM,GAA0B,GAE5B,GAAG,CAAClrI,KAEJ,IAAM+xH,IAAiBhrH,EAAAA,EAAAA,UAAQ,WAAO,IAAD,EAE9B+kI,EAAyB,OAAP/gG,QAAO,IAAPA,GAAgB,QAAT,EAAPA,EAASA,eAAO,WAAT,EAAP,EAAkBj1H,QACzC,SAAAyhJ,GAAM,OAAIA,EAAOC,eAAiB7f,EAAaC,UAAY2f,EAAOw0E,mBAAqBx0E,EAAOt7E,QAAQ,IAGjG+vJ,EAAuC,OAAfF,QAAe,IAAfA,OAAe,EAAfA,EAAiBroN,QAAO,SAAC4B,EAAKtd,GAM3D,OALoBsd,EAAI+J,MAAK,SAAAgX,GAAI,OAAIA,EAAK2lM,mBAAqBhkO,EAAQgkO,gBAAgB,KAEtF1mN,EAAI7rB,KAAKuO,GAGHsd,CACR,GAAG,IAEH,GAAI4lN,GAA0BjrI,IAASA,GAAM+rI,iBAAkB,CAC9D,IAAME,EAA+B,OAAfH,QAAe,IAAfA,OAAe,EAAfA,EAAiB9sO,MAAK,SAAAupN,GAC3C,OAAOA,EAAQwjB,oBAA0B,OAAL/rI,SAAK,IAALA,QAAK,EAALA,GAAO+rI,mBAAoBxjB,EAAQh7E,YAAkB,OAALvtC,SAAK,IAALA,QAAK,EAALA,GAAOutC,SAC5F,IACA,MAAO,CAAC,CAAExxI,MAAOkwO,EAAcF,iBAAkBpyH,YAAasyH,EAAcC,oBAC7E,CAMA,OAHuBF,EAAsBljO,KAAI,SAAAy/M,GAChD,MAAO,CAAExsN,MAAOwsN,EAAQwjB,iBAAkBpyH,YAAa4uG,EAAQ2jB,mBAChE,GAED,GAAG,CAACnhG,EAAS/qC,GAAOirI,KAWpBtkI,EAAAA,EAAAA,YAAU,YACT,uBAAC,yGACiC23C,EAAIpL,8BAA8B,KAAD,GAA5Di5F,EAAkB,SACA3B,EAAqB2B,GAAoB,0CAFlE,EAID,GAAG,KAGHxlI,EAAAA,EAAAA,YAAU,WACuC,IAA5C7sG,OAAO0uC,KAAKy/L,GAAqB5uO,QAAgB+5I,GACpDg5F,GAAoBh5F,EAEtB,GAAG,CAACm3F,IAGJ,IAAM8B,GAAkB,yCAAG,WAAMC,GAAa,yFACxCrE,EAAoB,CAAD,mDACnBqE,EAAc3oL,SAAY2oL,EAAc7wE,SAAQ,gBACN,OAA9Cv/G,QAAQja,MAAM,gCAAgC,0BAY9C,OARK0hB,EAAU,CACfyvF,eAAgB60F,EAAoB70F,eACpCy2F,SAAUA,GACV9C,gBAAiBuF,EAAcvF,iBAAmB,KAClDjB,YAAawG,EAAc3oL,QAC3B+3G,UAAuB,OAAb4wE,QAAa,IAAbA,OAAa,EAAbA,EAAe5wE,WAAY,GACrClC,UAAuB,OAAb8yE,QAAa,IAAbA,OAAa,EAAbA,EAAe9yE,WAAY,GACrCiC,UAAuB,OAAb6wE,QAAa,IAAbA,OAAa,EAAbA,EAAe7wE,WAAY,IACpC,EAAD,OAEsBnd,EAAItK,gCAAgCrwF,GAAS,KAAD,EAArD,IAAR4oL,EAAQ,QAEA94F,WAAc84F,EAAStZ,SAAQ,iBACK,OAAjDp0E,EAAyB0tF,EAAS5oL,SAAS,GAAM,2BAG5C6oL,EAAe,CAAID,GAAQ,eAAK9B,IACtCC,EAAmB8B,GACbC,GAAiB,OAAOlC,GAExBmC,EAAuBD,EAAkB3jO,KAAI,SAAA6iO,GAAY,OAC9DA,EAAav4F,kBAAsC,OAAnB60F,QAAmB,IAAnBA,OAAmB,EAAnBA,EAAqB70F,gBAAc,OAC3Du4F,GAAY,IAAEgB,UAAS,OAAKH,KACjCb,CAAY,IAGhBnB,EAAqBkC,GACrB1B,EAAqB,CAAC,GAChB4B,EAAuBF,EAAqB1tO,MAAK,SAAA8O,GAAC,OAAIA,EAAEslI,iBAAmB60F,EAAoB70F,cAAc,IACnH80F,EAAuB,KAAK0E,IAE5BtB,GAA4BvjO,QAAQm4B,SAAS,CAC5C9hC,IAAK,IACL0mK,SAAU,SACR,4CACH,gBA1CuB,sCA6ClBqhE,GAAqB,SAAA0G,GAE1B,IACMC,GADW,OAAOrC,GACe3hO,KAAI,SAAA66C,GAAO,OACjDA,EAAQ8vF,YAAco5F,EAAep5F,UAAS,OAAQ9vF,GAAO,IAAEmiL,YAAa+G,EAAe/G,cAAgBniL,CAAO,IAEnH+mL,EAAmBoC,GAGnB,IACMC,GADiB,OAAOxC,GACkBzhO,KAAI,SAAA6iO,GAAY,OAC/DA,EAAav4F,kBAAsC,OAAnB60F,QAAmB,IAAnBA,OAAmB,EAAnBA,EAAqB70F,gBAAc,OAC3Du4F,GAAY,IAAEgB,UAAS,OAAKG,KACjCnB,CAAY,IAEhBnB,EAAqBuC,EACtB,EAGMC,GAA+B,yCAAG,WAAM1wO,GAAC,kFAIW,GAHzDA,EAAEwtF,iBACIsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtBi3K,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,YACnC4+G,EAAkBhB,GAAa5gO,QAAQ6hO,aACxBjmL,SAAYw5J,EAASmsB,QAAO,iDAMhD,OALDnsB,EAAS2oB,YAAc6D,EAAgBhmL,QACnCgmL,EAAgBj3F,OACnByqE,EAASzhD,SAAWiuE,EAAgBj3F,KAAKgpB,SACzCyhD,EAAS3jD,SAAWmwE,EAAgBj3F,KAAK8mB,SACzC2jD,EAAS1hD,SAAWkuE,EAAgBj3F,KAAK+oB,UACzC,UAEiBnd,EAAIxK,yBAAyBqpE,GAAU,KAAD,GAA/C,IAAH/1J,EAAG,UAEKA,EAAIgsF,gBAAmBhsF,EAAI6rK,UAAS,iBACL,OAA5Cp0E,EAAyBz3F,EAAIzD,SAAS,GAAM,2BAI7CukL,EAAuB9gL,GACvBsjL,EAAmBtjL,EAAIulL,UACvBnC,GAAqB,SAAA9iO,GAAI,OAAK0/C,GAAG,eAAK1/C,GAAI,IAC1CkjO,IACAM,GAA0B,GAAO,4CACjC,gBAzBoC,sCA2B/BkB,GAAmB,yCAAG,WAAMh5F,GAAc,wFACtB,GAAzB43F,EAAqB,CAAC,GAClB/C,EAAoB70F,iBAAmBA,EAAc,iDAGwC,GAFjGu0F,EAAkBv0F,GAClBs3F,EAAmB,IACbuC,EAAsC,OAAjB1C,QAAiB,IAAjBA,OAAiB,EAAjBA,EAAmBvrO,MAAK,SAAAkuO,GAAG,OAAIA,EAAI95F,iBAAmBA,CAAc,IACvE,CAAD,gDAMpB,KALsC,OAAlB65F,QAAkB,IAAlBA,GAA4B,QAAV,EAAlBA,EAAoBN,gBAAQ,WAAV,EAAlB,EAA8Bv9M,MAAK,SAAAu0B,GACzD,OAAIA,EAAQoiL,kBAAoBtsF,EAAeC,MAAQ/1F,EAAQ6nL,aAAe/5F,EAAKvG,MAIpF,KACmB,CAAD,iCACsBoT,EAAIpK,gCAAgC+4F,EAAmB75F,gBAAgB,KAAD,GAAvG+5F,EAAwB,OACxBC,EAAgB,KAAQH,GAC1BE,IACGX,EAAoC,OAAlBS,QAAkB,IAAlBA,GAA4B,QAAV,EAAlBA,EAAoBN,gBAAQ,WAAV,EAAlB,EAA8B7jO,KAAI,SAAA66C,GAIzD,OAHIA,EAAQoiL,kBAAoBtsF,EAAeC,MAAQ/1F,EAAQ6nL,aAAe/5F,EAAKvG,SAClFvnF,EAAQoiL,gBAAkBtsF,EAAeE,MAEnCh2F,CACR,IACAypL,EAAiBT,SAAWH,EAC5B9uF,EAAa,CAAEz1I,KAAMkiI,KAEtB+9F,EAAuBkF,GACvB1C,EAAmB0C,EAAiBT,UAAU,wBAE9CzE,EAAuB+E,GACvBvC,EAAmBuC,EAAmBN,UAAU,QAE7C7tE,GAAWzgK,OA5NI6tI,QA4NiC,OAAfm/F,SAAe,IAAfA,IAAwB,QAAT,EAAfA,GAAiBtjO,eAAO,OAAxB,EAA0B88J,eAAe,CAAEC,SAAU,YAAY,4CACtG,gBAjCwB,sCA+CnBuoE,GAAsB,SAAAxxL,GAAO,IAAD,EACjC,GAAKA,EAAL,CACA,IAAM0wL,EAA8B,OAAnBtE,QAAmB,IAAnBA,GAA6B,QAAV,EAAnBA,EAAqB0E,gBAAQ,WAAV,EAAnB,EAA+B3tO,MAAK,SAAAsuO,GAAI,OAAIA,EAAK75F,YAAc53F,CAAE,IAC7E0wL,IACDA,EAASf,aAAe/5F,EAAKvG,OAChCqhG,EAASjF,mBAAqB8B,GAE9BmD,EAASjF,mBAAqBmE,GAE/BT,EAAqBuB,GACrB5D,GAAa5gO,QAAQwlO,aATN,CAUhB,EAGMC,GAAwB,SAAA3iH,GAAa,IAAD,EACnC4iH,EAAsC,OAAfpC,SAAe,IAAfA,IAAwB,QAAT,EAAfA,GAAiBtjO,eAAO,WAAT,EAAf,EAA0BmqM,cAAc,UAAD,OAAWrnF,EAAQ,OACnF4iH,IACHA,EAAqB5oE,eAAe,CAAEC,SAAU,SAAUlxJ,MAAO,UAAW85N,OAAQ,UACpFtC,GAAmBvgH,IAEpBviF,YAAW,WACV8iM,GAAmB,KACpB,GAAG,IACJ,EAoFA,OACC,iBAAKrvM,UAAU,mBAAmB8kE,IAAKwqI,GAAgB,WACtD,UAAC,GAAS,CAACtvM,UAAU,8BAA6B,UAChD01G,EAAKrG,SAAWuL,EAAMI,SACtB,SAAC,GAAM,CAAC4f,OAAK,EAACl2C,MAAM,mBAAmBm2C,UAAU,WAAWrqD,QA3HjC,WAC1BklC,EAAKsvF,0BAA4BnnF,EAAwBC,OAK7DgF,EACC,mHACA,GANA+rF,GAQF,KAmHI,SAAC,GAAM,CAACj0E,OAAK,EAACl2C,MAAM,OAAOm2C,UAAU,aAAarqD,QAAS,kBAAMo7H,GAAmB,KAGrF,iBAAK5rM,UAAU,4BAA2B,WACzC,iBAAKA,UAAU,0CAAyC,UACtDs0L,IAAaka,EAAkBlxO,OAAS,IACxC,SAAC,GAAK,CAAC0hN,YAAY,gCAAgCx6F,SAAU,gBAAGr6E,EAAM,EAANA,OAAM,OAAO4kM,EAAiB5kM,EAAOnqC,MAAM,IAE3GwuO,EAAkBlxO,OAAS,GAAKqyO,GAA0B5iO,KAAI,SAAA6iO,GAAY,OA9CpD,SAAH,GAA4G,IAAtGv4F,EAAc,EAAdA,eAAgBk2F,EAAO,EAAPA,QAAStE,EAAW,EAAXA,YAAawG,EAAU,EAAVA,WAAYpC,EAAY,EAAZA,aAAcqC,EAAU,EAAVA,WAAYkB,EAAQ,EAARA,SAAU1C,EAAQ,EAARA,SAC9G0D,EAAcl8F,EAAKvG,SAAWsgG,EAAapC,EAAeqC,EAM1DmC,EAAwBjB,EAASv9M,MACtC,SAAAu9M,GAAQ,OACPA,EAAS5G,kBAAoBtsF,EAAeC,MAC5CizF,EAASnB,cAAmB,OAAJ/5F,QAAI,IAAJA,OAAI,EAAJA,EAAMvG,SAC9B+8F,EAAoB70F,iBAAmBA,CAAc,IAEjDy6F,EAAiBlB,EAAS72N,QAAO,SAAAw3N,GAAI,OAA6B,IAAzBA,EAAKvH,eAAqB,IAAE1sO,OAE3E,OACC,SAAC,GAAgB,CAChB+5I,eAAgBA,EAChB+xF,OAAQwI,EAERzI,oBAAqBoE,EACrBx4K,KAAMk0K,EACNM,wBAAyB,SAAAwI,GAAe,OAAI1B,GAAoB0B,EAAgB,EAEhFzI,aAAcuI,EACdjB,SAAUA,EACVn4G,WAAYyzG,EAAoB70F,iBAAmBA,EACnDmyF,oBAAqBsI,EACrBrI,SAAUyE,IAAa5wF,EAAoBG,UATtCpG,EAYR,CAeoF26F,CAAoBpC,EAAa,QAEjH,gBAAK5vM,UAAU,2CAA0C,SACvDjiC,OAAO0uC,KAAKy/L,GAAqB5uO,OAAS,IAC1C,iBAAK0iC,UAAU,oBAAmB,WACjC,iBAAKA,UAAU,4BAA2B,WACzC,gBAAKA,UAAU,0BAAyB,UACvC,SAAC,GAAI,CAACq3H,KAAK,qBAAqBhvI,KAAK,UAEtC,iBAAK2X,UAAU,wCAAuC,WACrD,gBAAKA,UAAU,+CAA8C,SAAEksM,EAAoBqB,WACnF,gBAAKvtM,UAAU,gDAA+C,SAAE0vM,YAGlE,gBAAK1vM,UAAU,6BAA6B8kE,IAAKyqI,GAA4B,UAC5D,OAAfb,QAAe,IAAfA,OAAe,EAAfA,EAAiBpxO,QAAS,IAAoB,OAAfoxO,QAAe,IAAfA,OAAe,EAAfA,EAAiB3hO,KAAI,SAAC66C,EAASw0G,GAAG,OA9GnD,SAAH,GAab,IAAD,EAMgB,EAlBrB1kB,EAAS,EAATA,UACAqyF,EAAW,EAAXA,YACAC,EAAe,EAAfA,gBACAtqE,EAAQ,EAARA,SACA+vE,EAAU,EAAVA,WACAzE,EAAe,EAAfA,gBACAW,EAAO,EAAPA,QACAhsE,EAAQ,EAARA,SACAlC,EAAQ,EAARA,SACAwrE,EAAW,EAAXA,YACArkO,EAAK,EAALA,MACAkgG,EAAG,EAAHA,IAEMmtI,EAAqB,IAAIjyL,KAAKipL,GAAa5X,eAC3C6gB,EAAettO,EAAQ8pO,EAAgBpxO,OAAS,EAAIoxO,EAAgB9pO,EAAQ,GAAK,KAEjFutO,EADmB,IAAInyL,MAAiB,OAAZkyL,QAAY,IAAZA,OAAY,EAAZA,EAAcjJ,cAAe,IAAI5X,iBACxB4gB,EACvCG,EAAyB,CAAC,EAU9B,OATIpH,KACHoH,GAA4C,OAAnBlG,QAAmB,IAAnBA,GAA6B,QAAV,EAAnBA,EAAqB0E,gBAAQ,WAAV,EAAnB,EAA+B3tO,MAAK,SAAAsuO,GAAI,OAAIA,EAAK75F,YAAcszF,CAAe,MAAK,CAAC,GAClFyE,aAAe/5F,EAAKvG,OAC9CijG,EAAuB7G,mBAAqB8B,GAE5C+E,EAAuB7G,mBAAqBmE,KAK7C,UAAC,WAAc,YACd,SAAC,GAAO,CACP5qI,IAAKA,EACLhlD,GAAI43F,EACJqyF,YAAaA,EACbC,gBAAiBA,EACjBG,aAAcsF,IAAe/5F,EAAKvG,OAClCi7F,mBAAoBA,GACpB76M,KAAO05M,IAAoC,QAAzB,EAAI,IAAIjpL,KAAKipL,UAAY,aAArB,EAAuBzX,eAAe,GAAI,CAAE/pJ,KAAM,UAAWc,OAAQ,cAAiB,GAC5GguE,MAAOo1F,GAAW,CAAC,CAAEhsE,SAAAA,EAAUlC,SAAAA,EAAUiC,SAAAA,IACzCuqE,cAAemI,EACflI,qBAAsBoH,GACtBjH,gBAAiBoH,GACjBnH,cAAe8E,KAEf+C,IAAiB,SAACE,GAAS,CAACzqL,QAASqqL,MAflBhJ,EAAcrkO,EAkBrC,CA+D+E0tO,CAAe,OAAK1qL,GAAO,IAAEhjD,MAAOw3J,IAAM,QAElH,iBAAKp8H,UAAU,8CAA6C,UAC1DjiC,OAAO0uC,KAAKy/L,GAAqB5uO,OAAS,GAC1C4uO,EAAoBgC,WAAa5wF,EAAoBG,UACrD/H,EAAKsvF,0BAA4BnnF,EAAwBC,SACxD,SAACuwF,GAAiB,CACjBkE,gBAAiB,SAAAhC,GAAa,OAAID,GAAmBC,EAAc,EACnEvB,kBAAmBA,EACnBC,qBAAsBA,EACtBnqI,IAAK8nI,KAGPV,EAAoBgC,WAAa5wF,EAAoBG,WACrD,gBAAKz9G,UAAU,wDAAuD,SAAC,wDAQ9E,SAAC,GAAK,CACLo7H,eAAe,2BACfr9H,UAAW6wM,EACXtqC,cAAe,WACduqC,IACAM,GAA0B,EAC3B,EAAE,UAEF,iBAAMrqI,IAAK0qI,GAAwB5wB,SAAUqyB,GAAgC,UAC5E,iBAAKjxM,UAAU,8CAA6C,WAC3D,gBAAKA,UAAU,QAAO,SAAC,2BACvB,gBAAKA,UAAU,UAAS,SAAE01G,GAAI,UAAOA,EAAKsmB,MAAK,YAAItmB,EAAKo3E,UACxD,gBAAK9sL,UAAU,QAAO,SAAC,6BACvB,gBAAKA,UAAU,uBAAsB,UACpC,SAAC,GAAM,CACNg/K,YAAuC,IAA1BgX,GAAe14N,QAAgB,UAC5C2a,KAAK,WACLrL,QAASopN,QAGX,gBAAKh2L,UAAU,QAAO,SAAC,2BACvB,gBAAKA,UAAU,0BAAyB,UACvC,SAAC,GAAK,CAACs/C,aAAc,GAAIrnE,KAAK,UAAU+mM,YAAY,eAErD,SAACqvB,GAAiB,CAACC,aAAW,EAACxpI,IAAK8nI,GAAc2B,mBAAiB,EAACnc,uBAAqB,KACzF,iBAAKpyL,UAAU,WAAU,UAAC,gFACmD,kBAAS,6FAGtF,SAAC,GAAM,CAAC46H,OAAK,EAACl2C,MAAM,kBAIvB,SAAC,GAAY,CACZ3mF,UAAWskH,EAAgBF,QAC3Bx1G,OAAQ01G,EAAgBD,OAAS,SAAW,YAC5CkiD,cAAe,kBAAMhiD,EAAmB,CAAEH,SAAS,EAAOv6F,QAAS,GAAIw6F,QAAQ,GAAQ,EAAC,UAExF,yBAAMC,EAAgBz6F,cAI1B,EAEaymL,IAAoBzsG,EAAAA,EAAAA,aAChC,WAEC98B,GACK,IAFHytI,EAAe,EAAfA,gBAAiBpT,EAAU,EAAVA,WAAY6P,EAAiB,EAAjBA,kBAAmBC,EAAoB,EAApBA,qBAAsBX,EAAW,EAAXA,YAAaC,EAAiB,EAAjBA,kBAAkB,EAAD,EAAEnc,sBAAAA,OAAqB,OAAQ,EAG/H/K,GAAUn8G,EAAAA,EAAAA,UACVgnH,GAAchnH,EAAAA,EAAAA,UACdsnI,GAAetnI,EAAAA,EAAAA,UACf+1G,GAAY/1G,EAAAA,EAAAA,UAClB,GAAkCC,EAAAA,EAAAA,YAAU,eAArCsnI,EAAS,KAAEC,EAAY,MAE9B7nI,EAAAA,EAAAA,qBAAoB/F,GAAK,iBAAO,CAC/B+oI,UAAW,WACV,IAAMx1H,EAAO,IAAIq+B,SAAS2wE,EAAQr7M,SAC5Bo1M,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WAIzC,OAHIwjH,EAAaxmO,QAAQhM,QACxBohN,EAASzqE,KAAO87F,GAEVrxB,CACR,EACAowB,WAAY,WACXtf,GAAeA,EAAYlmN,QAAQ2rF,OACpC,EACA,IAED,IAAMg7I,EAAqB,yCAAG,WAAMpyO,GAAC,kFACpCA,EAAEwtF,iBACIsqB,EAAO,IAAIq+B,SAASn2I,EAAE4pC,QACtBi3K,EAAWrjN,OAAOsjN,YAAYhpG,EAAK2W,WACnCpnE,EAAUw5J,EAASx5J,SACnBgrL,EAAa,CAAC,GACT5H,gBAAkB,KACzBgE,GAAqBA,EAAkBt3F,YAC1Ck7F,EAAW5H,gBAAkBgE,EAAkBt3F,WAE5C+6F,IACHG,EAAWlzE,SAAW+yE,EAAU/yE,SAChCkzE,EAAWn1E,SAAWg1E,EAAUh1E,SAChCm1E,EAAWjzE,SAAW8yE,EAAU9yE,UAEjCizE,EAAWhrL,QAAUA,EACjB2qL,GAA8C,oBAApBA,IAC7BA,EAAgBK,GAChBvrB,EAAQr7M,QAAQ2kB,QAChB+hN,KACA,4CACD,gBArB0B,sCA8BrB9J,EAAiB,yCAAG,WAAMroO,GAAC,4EACjB,OAAfmyO,IAAe,SAEOtzE,GAAgC7+J,GAAG,KAAD,EAA3C,GAAPk/J,EAAO,OACA,CAAD,eACqB,OAAhC+yE,EAAaxmO,QAAQhM,MAAQ,GAAG,0BAGjC0yO,EAAajzE,GACbyyD,EAAYlmN,QAAQ2rF,QAAQ,2CAC5B,gBAVsB,sCAkBvB,OACC,iBAAK33D,UAAU,oBAAmB,UAChCyyM,IAAa,SAAC,GAAI,CAAC7I,WATI,SAAArpO,GACzBA,EAAEwtF,iBACF2kJ,IACAF,EAAaxmO,QAAQhM,MAAQ,GAC7BkyN,EAAYlmN,QAAQ2rF,OACrB,EAIqDg/C,KAAM87F,QAAavlO,IACrE8hO,GAAqBjxO,OAAO0uC,KAAKuiM,GAAmB1xO,OAAS,IAC7D,SAACguO,GAAa,CACb52L,MAAOs6L,EAAkBzD,mBACzB3jL,QAASonL,EAAkBjF,YAC3ByB,WAAYwD,EACZtD,aAAc,kBAAMuD,EAAqB,CAAC,EAAE,KAG9C,kBAAMnqI,IAAKuiH,EAASrnL,UAAU,wBAAwB4+K,SAAU+zB,EAAsB,WACrF,SAAC,GAAQ,CACR16N,KAAK,UACLjY,MAAOm/N,EACP9e,UAxCiB,SAAA9/M,GACN,UAAVA,EAAErC,KAAiC,GAAdqC,EAAEivF,UAAsB++I,IAChDhuO,EAAEwtF,iBACFs5H,EAAQr7M,QAAQ6mO,gBAElB,EAoCIz2M,YAAY,OACZ+1L,UAAW,KACXC,sBAAuBA,EACvBF,YAAaA,GAAeA,KAE7B,iBAAKlyL,UAAU,qCAAoC,WAClD,kBAAOA,UAAU,YAAY9zB,KAAK,OAAOs4G,SAAU,SAAAjkH,GAAC,OAAIqoO,EAAkBroO,EAAE,EAAEukG,IAAK0tI,KACjFlE,IACD,mBAAQxpI,IAAKm8G,EAAU,UACtB,SAAC,GAAI,CAAC5pD,KAAK,eAAehvI,KAAM,eAOvC,IAGYgqN,GAAY,SAAH,GAAqB,IAAfzqL,EAAO,EAAPA,QACrBkrL,EAAU,IAAI9yL,KAAK4H,GAASypK,eAC5B0hB,GAAQ,IAAI/yL,MAAOqxK,eAEzB,OACC,iBAAKrxL,UAAU,YAAW,WACzB,gBAAKA,UAAU,qBACf,gBAAKA,UAAU,kBAAiB,SAAE8yM,IAAYC,EAAQ,QAAUD,KAChE,gBAAK9yM,UAAU,sBAGlB,wBCroBA,GA7cuB,WAAO,IAAD,EAC5B,EAA0CuhH,KAAlCgB,EAAG,EAAHA,IAAKvT,EAAO,EAAPA,QAAS6S,EAAe,EAAfA,gBACtB,EAAgCkK,KAAxBta,EAAS,EAATA,UAAWD,EAAQ,EAARA,SAEb6c,EAAW3C,KAEjB,GAAwBvgD,EAAAA,EAAAA,YAAU,eAA3B/mE,EAAI,KAAEw4K,EAAO,KACpB,GAAsCzxG,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAA3C0xG,EAAW,KAAEC,EAAc,KAClC,GAAoC3xG,EAAAA,EAAAA,WAAS,GAAM,eAA5C6xG,EAAU,KAAEC,EAAa,KAChC,GAAoC9xG,EAAAA,EAAAA,WAAS,GAAM,eAA5C6nI,EAAU,KAAEC,EAAa,KAChC,GAAsD9nI,EAAAA,EAAAA,UAAS,GAAE,eAA1D+nI,EAAmB,KAAEC,EAAsB,KAClD,GAAwDhoI,EAAAA,EAAAA,UAAS,GAAE,eAA5DioI,EAAoB,KAAEC,EAAuB,KACpD,GAAgCloI,EAAAA,EAAAA,WAAS,GAAK,eAAvCmoI,EAAQ,KAAEC,EAAW,KAC5B,GAA4DpoI,EAAAA,EAAAA,UAAS,CAAC,GAAE,eAAjEqoI,EAAsB,KAAEC,EAAyB,KACxD,GAA8CtoI,EAAAA,EAAAA,WAAS,GAAM,eAAtDuoI,EAAe,KAAEC,GAAkB,KAC1C,IAA0CxoI,EAAAA,EAAAA,YAAU,iBAA7C8jC,GAAa,MAAEmoE,GAAgB,OAEtCxsG,EAAAA,EAAAA,YAAU,WAAO,IAAD,EACTgpI,EAAiB5kG,IAAkB,OAAPA,QAAO,IAAPA,GAAgB,QAAT,EAAPA,EAASA,eAAO,WAAT,EAAP,EAAkB/rI,MAAK,SAAAu4J,GAAM,OAAIA,EAAOhqB,WAAar/H,SAASq/H,EAAS,KACzG,GAAKoiG,EAEL,OADAx8B,GAAiBw8B,GACTA,EAAen4E,cACtB,KAAK7f,EAAaK,IACjBw3F,EAA0B,CAAEvzK,QAAS,GAAIL,QAAS,MAClD,MACD,KAAK+7E,EAAaG,MAClB,KAAKH,EAAaI,cACjBy3F,EAA0B,CAAEvzK,QAAS,GAAIL,QAAS,KAClD,MACD,KAAK+7E,EAAaM,MACjBu3F,EAA0B,CAAEvzK,QAAS,GAAIL,QAAS,KAClD,MACD,QACC4zK,EAA0B,CAAEvzK,QAAS,GAAIL,QAAS,KAGrD,GAAG,CAACmvE,EAASwC,IAGb,IAAMqiG,IAAiB7oI,EAAAA,EAAAA,UAAQ,WAC9B,IAAK,IAAD,EACH,OAAK5mE,GAASgvM,GACkB,OAAJhvM,QAAI,IAAJA,GAAwB,QAApB,EAAJA,EAAM0vM,0BAAkB,WAApB,EAAJ,EAA0B7wO,MAAK,YAAe,SAAZ8wO,eAAoCX,CAAoB,MAExF,CAAC,EAHY,EAI9B,CAAZ,MAAOliG,GAAK,CACf,GAAG,CAACkiG,EAAsBhvM,IAEpB4vM,IAAgBhpI,EAAAA,EAAAA,UACrB,yBAAW,OAAJ5mE,QAAI,IAAJA,GAAwB,QAApB,EAAJA,EAAM0vM,0BAAkB,OAAxB,EAA0BzgN,MAAK,YAAe,SAAZ0gN,aAAkCX,CAAoB,OAAK,CAAK,GACzG,CAAChvM,EAAMgvM,IAIF74B,IAAyBvvG,EAAAA,EAAAA,UAAQ,WAEtC,OAA6B,IAAzBooI,GAAsD,IAAxBF,CAEnC,GAAG,CAACA,EAAqBE,IAGnB94B,IAAsBtvG,EAAAA,EAAAA,UAAQ,WACnC,IAAKgpI,IAAgC,OAAdH,SAAc,IAAdA,KAAAA,GAAgBr2B,oBAAqB,OAAO,EACnE,IAAMy2B,EAAkBJ,GAAer2B,oBAAoBzwM,KAAI,YAAuB,SAApBgvM,oBAA+C,IAC3Gm4B,EAAmCtwO,KAAKC,IAAG,MAARD,MAAI,OAAQqwO,IAErD,OAAOf,IAAwBgB,CAChC,GAAG,CAACF,GAAeH,GAAgBX,IAG7BiB,IAAuBnpI,EAAAA,EAAAA,UAAQ,WACpC,IACC,OAAK5mE,EACyBA,EAAK0vM,mBAAmBpsN,QAAO,SAAC4B,EAAK8qN,GAAO,OAAK9qN,EAAM8qN,EAAQ52B,oBAAoBlgN,MAAM,GAAE,GADvG,CAKnB,CAFE,MAAO4zI,GACR,OAAO,CACR,CACD,GAAG,CAAC9sG,IAGEiwM,IAAkBrpI,EAAAA,EAAAA,UAAQ,WAC/B,OAAmB,OAAd6oI,SAAc,IAAdA,IAAAA,GAAgBr2B,oBAEd,KADUq2B,GAAer2B,oBAAoBv6M,MAAK,SAAA26M,GAAQ,OAAIA,EAAS7B,uBAAyBm3B,CAAmB,KADzE,CAAC,CAGnD,GAAG,CAACW,GAAgBX,IAUdh2B,GAAe,SAACC,EAAgBC,GACrC,IAAME,EAAa,KAAQH,GACvB/E,GAAS,EAEPmF,EAAeJ,EAAe22B,mBAAmBpsN,QAAO,SAAC4B,EAAK8qN,GAAa,IAAD,EACzEE,EAAuB,OAAPF,QAAO,IAAPA,GAA4B,QAArB,EAAPA,EAAS52B,2BAAmB,WAArB,EAAP,EAA8BzwM,KAAI,YAA4B,SAAzB0wM,0BAChCx6M,MAAK,YAAkB,SAAf06M,eAAqC,GAAC,IAEzE,MAAM,GAAN,eAAWr0L,IAAG,OAAKgrN,GACpB,GAAG,IAEH,OAAK/2B,GAELD,EAAcw2B,mBAAqBx2B,EAAcw2B,mBAAmB/mO,KAAI,SAAAqnO,GACvE,IAAMG,EAAQ,KAAQH,GAYtB,OAXAG,EAAS/2B,oBAAsB42B,EAAQ52B,oBAAoBzwM,KAAI,SAAA6wM,GAC9D,IAAMC,EAAqBN,EAAat6M,MAAK,SAAAy6M,GAAM,OAAIA,EAAOpB,aAAesB,EAAStB,UAAU,IAC1Fk4B,EAAiBp3B,EAAkBS,EAAmBvB,YAO5D,OAN4B,OAAdk4B,QAAc,IAAdA,OAAc,EAAdA,EAAgBn4B,aAA+B,OAAlBwB,QAAkB,IAAlBA,OAAkB,EAAlBA,EAAoBxB,UAClDuB,EAAS/B,aAAe,WAEpC+B,EAAS/B,aAAe,YACxBzD,GAAS,GAEHwF,CACR,IACO22B,CACR,IACO,CAAEj3B,cAAAA,EAAelF,OAAAA,IAjBE,CAAC,CAkB5B,EAGMoG,GAAoB,SAAH,GAAkC,IAA5BnC,EAAQ,EAARA,SAAUC,EAAU,EAAVA,WACtCW,GAAc,GACd,IAAMwB,EAAQ,KAAQr6K,GAChBw5K,EAAWi2B,GAAer2B,oBAAoBv6M,MAAK,SAAAy7M,GAAI,OAAIA,EAAKpC,aAAeA,CAAU,WACxFsB,EAAS/B,aAEhB+B,EAASH,0BAA4BG,EAASH,0BAA0B1wM,KAAI,SAAA2wM,GAG3E,OAFIA,EAAOrB,WAAaA,EAAUqB,EAAOjhL,SAAU,EAC9CihL,EAAOjhL,SAAU,EACfihL,CACR,IACA,IAAMM,EAAU,KAAQnB,GACxBmB,EAAW1B,GAAc,CAAED,SAAAA,EAAUo4B,UAAW72B,EAAS62B,WACzD73B,EAAQ6B,GACR3B,EAAekB,EAChB,GAGApzG,EAAAA,EAAAA,YAAU,WACT,KACC,uBAAC,qHAOuB,GANjB8pI,EAAmB,yCAAG,2GACYnyF,EAAIzL,2BAA2BtF,GAAU,KAAD,WAAvEmjG,EAAoB,EAApBA,qBACRC,EAAqBD,EACrBC,EAAqBtyL,KAAOsyL,EAAoB,uBAAuB,2CACvE,kBAJwB,qCAMjBC,EAAoB7lG,EAAQC,cAA5B4lG,iBAEY,CAAD,eAEE,OADpB5B,GAAc,GACdh2B,GAAc,GAAM,0CAII16D,EAAI7Q,wBAA+B,OAAP1C,QAAO,IAAPA,GAAsB,QAAf,EAAPA,EAASC,qBAAa,WAAf,EAAP,EAAwB0C,SAAUF,GAAW,KAAD,EAAjF,GAAVqsE,EAAU,OACA,CAAD,gBAEuD,OADrE61B,IAAmB,GACnBxzL,QAAQ3b,KAAK,wDAAwD,2BAII,OADpEswM,EAAuBxyL,KAAiB,OAAVw7J,QAAU,IAAVA,OAAU,EAAVA,EAAYi3B,YAAY1vN,OAAO,uBAC7D2vN,EAAiB1yL,KAAOwyL,EAAsB,uBAAuB,EAAD,QAE3CvyF,EAAI1L,wBAAwBrF,GAAU,KAAD,GAGD,IAH/DojG,EAAkB,UACEA,EAAqBtyL,KAAOsyL,EAAoB,0BAEzCtyL,KAAAA,SAAgBsyL,GACnB,CAAD,iCACpBF,IAAsB,KAAD,GASmE,GAN7CO,EAA9Cn3B,EAAWriD,eAAiB7f,EAAaK,IAAuB,EAC3D6hE,EAAWriD,eAAiB7f,EAAaM,MAAyB,IACpD,EAEjBg5F,EAAwBtxO,KAAKkjB,IAAIkuN,EAAexvL,KAAKovL,EAAoB,WAAa,GAAK,IAE3FO,EAAiBD,GAAyBD,GAAmBC,GAAyB,GACvFL,IAAmBM,EAAc,iBACZ,OAAzBxB,IAAmB,GAAM,8BAIP,OAAdqB,QAAc,IAAdA,GAAAA,EAAgB/lK,OAAO2lK,EAAoB,OAAO,CAAD,iCAAQF,IAAsB,KAAD,GAG7Ep2E,EAAUs2E,EAAmBrvM,QAAQd,IAAIwwM,EAAiB,SAC1DrkN,EAAW0xB,KAAAA,SAAgB1+C,KAAKkjB,IAAIkuN,EAAexvL,KAAK84G,KACxD5+F,EAAQ9uC,EAAS8uC,QACnBG,EAAUjvC,EAASivC,UACjBK,EAAUtvC,EAASsvC,UACrBR,IAAOG,GAA4B,GAARH,GAC/B+zK,EAA0B,CAAE5zK,QAAAA,EAASK,QAAAA,IAErC08I,EAAQkB,GA4BR,2CAnFD,EAuFD,CAFE,MAAO53K,GACRia,QAAQ3b,KAAK,wBAA0B0B,EACxC,CACD,GAAG,KAGH0kE,EAAAA,EAAAA,YAAU,WACTuoI,EAAuB,EACxB,GAAG,CAACC,IAGJ,IAAMgC,GAAoB,WACzBn4B,GAAc,GACd02B,IAAmB,GACnBtlF,EAAS,IAAD,OAAK5P,EAAOM,cAAa,KAClC,EAiBMs2F,GAAe,yCAAG,WAAM90O,GAAC,oFAkB7B,OAjBA,OAADA,QAAC,IAADA,GAAAA,EAAGwtF,iBACHkvH,GAAc,GAAO,EAEKC,GAAa94K,EAAMy4K,GAArCS,EAAa,EAAbA,cAERV,EAAQU,GAEFe,EAAoB,CACzB7sE,SAAUr/H,SAASq/H,GACnBC,UAAWt/H,SAASs/H,GACpBu1B,QAAS5iI,EAAK4iI,QACd61C,YAAa9+M,OAAO0uC,KAAKowK,GAAa9vM,KAAI,SAAA7O,GAAG,MAAK,CACjDo+M,WAAYp+M,EACZm+M,SAAUQ,EAAY3+M,GAAKm+M,SAC3Bo4B,UAAW53B,EAAY3+M,GAAKu2O,UAC5B,IACDa,cAAc,GACb,EAAD,OAE0B/yF,EAAI3Q,kBAAkBysE,GAAmB,KAAD,EAEjC,GAF5BC,EAAY,OAElBq1B,IAAoBr1B,GAEfA,EAAa,CAAD,kDACG,OAApBrB,GAAc,GAAM,UACM16D,EAAIjR,iBAAiB,KAAD,IAC/B,QADTkqE,EAAW,cACF,IAAXA,OAAW,EAAXA,EAAal+M,QAAS,GAAGukJ,EAAgB,CAAE31I,KAAMoiI,EAA6B9rC,QAASg5G,IAAe,4CAC1G,gBA5BoB,sCA8Bf+5B,GAAuB,yCAAG,6FAW9B,OAVKl3B,EAAoB,CACzB7sE,SAAUr/H,SAASq/H,GACnBC,UAAWt/H,SAASs/H,GACpBu1B,QAAS5iI,EAAK4iI,QACd61C,YAAa9+M,OAAO0uC,KAAKowK,GAAa9vM,KAAI,SAAA7O,GAAG,MAAK,CACjDo+M,WAAYp+M,EACZm+M,SAAUQ,EAAY3+M,GAAKm+M,SAC3Bo4B,UAAW53B,EAAY3+M,GAAKu2O,UAC5B,IACDa,cAAc,GACb,EAAD,OAC0B/yF,EAAI3Q,kBAAkBysE,GAAmB,KAAD,EACjC,GAD5BC,EAAY,OAClBq1B,IAAoBr1B,GAEfA,EAAa,CAAD,gDACG,OAApBrB,GAAc,GAAM,UACM16D,EAAIjR,iBAAiB,KAAD,IAC/B,QADTkqE,EAAW,cACF,IAAXA,OAAW,EAAXA,EAAal+M,QAAS,GAAGukJ,EAAgB,CAAE31I,KAAMoiI,EAA6B9rC,QAASg5G,IAAe,4CAC1G,kBAnB4B,mCA8FvBg6B,GAAkBt4O,KAAW,YAAa,CAAE0kO,OAAQ0R,IAE1D,OAAII,GAEF,SAAC,GAAS,CAAC1zM,UAAU,YAAW,UAC/B,SAAC,GAAK,CAACjC,UAAW21M,EAAiB38B,iBAAe,YACjD,SAAC0+B,GAAe,CACfr9B,QAAQ,EACR5nG,QAAS4kI,GACTp7B,WAAa/qE,KAA8B,OAAbA,SAAa,IAAbA,QAAa,EAAbA,GAAewsB,oBAAiBvuJ,EAC9DykI,SAAW1C,KAA8B,OAAbA,SAAa,IAAbA,QAAa,EAAbA,GAAe0C,gBAAazkI,EAAU,UAElE,SAACwoO,GAAQ,CAACC,SAAS,WAOvB,UAAC,GAAS,CAAC31M,UAAU,YAAW,UAC9BoE,IACA,iCACC,iBAAKpE,UAAU,SAAQ,WACtB,gBAAKA,UAAU,gBAAe,SAAC,gBAE7BgzM,IACD,gBAAKhzM,UAAU,gBAAe,UAC7B,SAAC,GAAK,CACL2hL,cAAe6xB,EAAuB3zK,QACtC+hJ,eAAgB4xB,EAAuBtzK,QACvCwhJ,WAAY6zB,WAKhB,gBAAKv1M,UAAS,8BAAyBszM,EAAW,SAAW,IAAM9iI,QAAS,kBAAM+iI,GAAY,SAAA5nO,GAAI,OAAKA,CAAI,GAAC,EAAC,UAC7F,OAAdkoO,SAAc,IAAdA,QAAc,EAAdA,GAAgB+B,qBAAsB,MAGxC,gBAAK51M,UAAWw1M,GAAgB,SAAEpxM,IAAY,OAAJA,QAAI,IAAJA,GAAwB,QAApB,EAAJA,EAAM0vM,0BAAkB,WAApB,EAAJ,EAA0B/mO,KA3DrD,SAAH,EAAkDqvJ,GAAS,IAArDq4E,EAAS,EAATA,UAAWV,EAAY,EAAZA,aAAc8B,EAAW,EAAXA,YAAe,EAAF/1L,GAQ3D,OACC,SAACg2L,GAAO,CAEPrB,UAAWA,EACX/vH,MAAOmxH,EACPx+E,KAZY,CACb0+E,QAAS,iBACTC,QAAS,iBACTC,UAAW,mBACXC,QAAS,kBAQIL,GACZM,UAAW/C,IAAyBW,EACpCvjI,QAAS,kBAvSc,SAAAujI,GACpBX,GAAyBW,GAC1BX,IAAyBW,GAC5BV,EAAwBU,EAE1B,CAkSkBqC,CAAkBrC,EAAa,GALzC33E,EAQR,QA0CI,iBAAKp8H,UAAU,eAAc,UAC3Bq0M,IAjHkB,SAAH,EAapBj4E,GACK,IAZJi6E,EAAc,EAAdA,eACAt6B,EAAoB,EAApBA,qBACAu6B,EAAiB,EAAjBA,kBACAz3B,EAAa,EAAbA,cACA03B,EAAmB,EAAnBA,oBACAj6B,EAAU,EAAVA,WACAmB,EAAyB,EAAzBA,0BACA5B,EAAY,EAAZA,aACAI,EAAiB,EAAjBA,kBACAD,EAAiB,EAAjBA,kBAID,OACC,gCACEu6B,IAAuB,gBAAKv2M,UAAU,4BAA4BogD,wBAAyB,CAAEqb,OAAQ86I,KACrGF,IAAkB,gBAAKr2M,UAAU,2BAA2BogD,wBAAyB,CAAEqb,OAAQ46I,KAC/FC,IAAqB,gBAAKt2M,UAAU,+BAA+BogD,wBAAyB,CAAEqb,OAAQ66I,KACtGt6B,IACA,gBAAKh8K,UAAU,gCAA+B,UAC7C,gBACCjJ,IAAKilL,EACLh8K,UAAU,sBACVxU,MAAO,CAAEowF,SAAU,OAAQ43D,UAAW,QAAS2oC,UAAW,mBAI7D,iBAAKn8K,UAAU,8BAA6B,UAC1Ci8K,IACA,+BACC,gBAAKj8K,UAAU,sBAAqB,UACnC,SAAC,GAAW,CAACjJ,IAAKklL,SAIrB,SAAC,GAAQ,CACRn8J,GAAIw8J,EACJ53F,MAAOm6F,EAEPjD,QAAS6B,EACT3B,SAAU0C,GACVzC,qBAAsBA,EACtBF,aAAcA,EACd37H,SAA2B,YAAjB27H,GALLz/C,QAUV,CA+DyBo6E,CAAgBnC,KACpC,SAAC,GAAU,CACVl6B,eAAgB+4B,GAAuB,EACvC94B,oBAtLsB,SAAAq8B,GAA2B,IAAD,EAEjDC,EAAqB,EAIzB,KALkBD,EAAyBvD,IAEzBuD,EAAyB,IAAGC,GAAsB,GAEhED,GAAuC,OAAd5C,SAAc,IAAdA,IAAmC,QAArB,EAAdA,GAAgBr2B,2BAAmB,WAArB,EAAd,EAAqClgN,UAAQo5O,EAAqB,GAC3FA,EAGH,OAFArD,GAAwB,SAAA1nO,GAAI,OAAIA,EAAO+qO,CAAkB,SACzDvD,EAAuB,GAGxBA,EAAuBsD,EACxB,EA2KMp8B,cAAe85B,IAAwB,EACvCr7B,qBAAsBo6B,EACtB54B,oBAAqBA,GACrBC,uBAAwBA,GACxBC,iBAAiB,OACjBC,iBAAiB,OAAM,SAEtBH,KACA,SAAC,GAAM,CAAC51F,MAAM,SAASk2C,OAAK,EAAC16E,UAAWo6H,GAAqB9pG,QAAS6kI,GAAiBj6E,eAAe,2BAM3G,SAAC,GAAK,CAACr9H,UAAWi/K,EAAYjG,iBAAe,YAC5C,SAAC0+B,GAAe,CACfr9B,OAAQ4E,EACRxsG,QAAS4kI,GACTp7B,WAAa/qE,KAA8B,OAAbA,SAAa,IAAbA,QAAa,EAAbA,GAAewsB,oBAAiBvuJ,EAC9DykI,SAAW1C,KAA8B,OAAbA,SAAa,IAAbA,QAAa,EAAbA,GAAe0C,gBAAazkI,EAAU,UAElE,SAACwoO,GAAQ,CAACC,SAAS,UAKxB,EAIMG,GAAU,SAAH,GAA2E,IAArErB,EAAS,EAATA,UAAW/vH,EAAK,EAALA,MAAO2yC,EAAI,EAAJA,KAAM8+E,EAAS,EAATA,UAAU,EAAD,EAAEj8N,MAAAA,OAAK,MAAG,UAAS,EAAEs2F,EAAO,EAAPA,QAClErzG,EAAUD,KAAW,UAAW,CAAEy6F,MAAOw+I,IAE/C,OACC,iBAAKn2M,UAAW7iC,EAAS2iD,GAAI20L,EAAWjkI,QAASA,EAAQ,WACxD,gBAAKxwE,UAAU,iBAAgB,SAAE0kF,IAChC2yC,IAAQ,SAAC,GAAI,CAACA,KAAMA,EAAMn9I,MAAOi8N,EAAY,UAAYj8N,EAAOmO,KAAM,OAG1E,EAEMotN,GAAkB,SAAH,GAA6D,IAAvDp1J,EAAQ,EAARA,SAAUmwB,EAAO,EAAPA,QAAS4nG,EAAM,EAANA,OAAQ4B,EAAU,EAAVA,WAC/Ch6K,GADmE,EAAR2xG,SAC/Cz0I,KAAW,kBAAmB,CAC/Ck7M,OAAQA,EACRu+B,YAAav+B,KAGRw+B,EAAkB,CACvBx0F,OAAQ,CACP19B,MAAO,eACP1uF,KAAM,4FACN6gN,QAAS,uBAEVhoB,UAAW,CACVnqG,MAAO,kBACP1uF,KAAM,mCACN6gN,QAAS,wBAILC,EAAgB,CACrB10F,OAAQ,CACP19B,MAAO,uBACP1uF,KAAK,iMACL6gN,QAAQ,oCAEThoB,UAAW,CACVnqG,MAAO,mBACP1uF,KAAM,+CACN6gN,QAAQ,qCAIJE,EAAkB,CACvB30F,OAAQ,CACP19B,MAAO,eACP1uF,KAAK,4FACL6gN,QAAS,uBAEVhoB,UAAW,CACVnqG,MAAO,kBACP1uF,KAAM,mCACN6gN,QAAS,wBAILG,GAAmBhsI,EAAAA,EAAAA,UAAQ,WAChC,OAAIgvG,IAAep+D,EAAaK,IAAY66F,EACnC98B,IAAep+D,EAAaM,MAAc66F,EACvCH,CACb,GAAG,CAAC58B,IAEJ,OACC,iBAAKh6K,UAAWA,EAAU,WACzB,gBAAKA,UAAU,yBAAwB,SAAEo4K,EAAS4+B,EAAiBnoB,UAAUnqG,MAAQsyH,EAAiB50F,OAAO19B,SAC7G,gBAAK1kF,UAAU,wBAAuB,SAAEo4K,EAAS4+B,EAAiBnoB,UAAU74L,KAAOghN,EAAiB50F,OAAOpsH,QAC3G,SAAC,GAAM,CAAC0uF,MAAO0zF,EAAS4+B,EAAiBnoB,UAAUgoB,QAAUG,EAAiB50F,OAAOy0F,QAASrmI,QAASA,IACtG4nG,GAAU/3H,IAGd,EAEMq1J,GAAW,SAAH,GAAqB,IAAfC,EAAO,EAAPA,QACnB,GAAwCxqI,EAAAA,EAAAA,WAAS,GAAM,eAAhD8rI,EAAY,KAAEC,EAAe,KAWpC,OATAtsI,EAAAA,EAAAA,YAAU,WACL+qI,IACHuB,GAAgB,GAChB3qM,YAAW,WACV2qM,GAAgB,EACjB,GAAG,KAEL,GAAG,CAACvB,IAEIsB,GACP,gBAAKj3M,UAAU,WAAU,SACvB21M,IACA,iCACC,cAAGnqN,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,YACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,cACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,eACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,gBACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,gBACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,gBACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,cACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,gBACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,YACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,eACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,cACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,eACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,gBACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,YACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,gBACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,cACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,gBACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,eACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,gBACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,aAAewU,UAAU,YAC5D,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,YACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,cACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,eACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,gBACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,YACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,gBACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,gBACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,cACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,gBACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,YACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,eACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,cACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,eACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,gBACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,YACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,gBACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,cACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,YACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,SAAWwU,UAAU,eACxD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,gBACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,eACvD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,OAASwU,UAAU,eACtD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,gBACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,UAAYwU,UAAU,eACzD,cAAGxU,MAAO,CAAE,UAAW,GAAI,OAAQ,QAAUwU,UAAU,gBA7GpC,IAkHxB,EC/pBMm3M,GACI,UADJA,GAEC,OAFDA,GAGG,SAHHA,GAIK,WAJLA,GAKW,iBAGXC,GACI,EADJA,GAEI,EAFJA,GAGG,EAIHC,GAAkB,CACvB/6H,QAAS,CAAEv7G,EAAG,GAAIyuB,QAAS,GAC3B2+I,QAAS,CAAEptK,EAAG,EAAGyuB,QAAS,GAC1Bk7I,KAAM,CAAE3pK,GAAI,GAAIyuB,QAAS,IA+V1B,GA5VmB,WAClB,MAAsB+xH,KAAdgB,EAAG,EAAHA,IAAK7M,EAAI,EAAJA,KACLlE,EAAaua,KAAbva,SACF6c,EAAW3C,KACjB,GAAwCvgD,EAAAA,EAAAA,UAAS,IAAG,eAA7CmsI,EAAY,KAAEC,EAAe,KACpC,GAAkCpsI,EAAAA,EAAAA,UAAS,IAAG,eAAvCwiH,EAAS,KAAE6pB,EAAY,KAC9B,GAAsCrsI,EAAAA,EAAAA,UAAS,IAAG,eAA3C0xG,EAAW,KAAEC,EAAc,KAClC,GAAgD3xG,EAAAA,EAAAA,UAAS,IAAG,eAArDssI,EAAgB,KAAEC,EAAmB,KACtCC,EAAmBz6O,KAAW,sBAAuB,CAC1D06O,QAASN,IAAiBH,GAC1BU,KAAMP,IAAiBH,GACvBW,OAAQR,IAAiBH,GACzBY,SAAUT,IAAiBH,GAC3Ba,eAAgBV,IAAiBH,KAElC,GAA8BhsI,EAAAA,EAAAA,UAAS,CACtC,CACCrrD,GAAI,IACJm4L,OAAQb,GACRc,MAAO,UACPxzH,MAAO,uCACP1uF,KAAM,0hBAEP,CACC8pB,GAAI,IACJm4L,OAAQb,GACRc,MAAO,OACPxzH,MAAO,GACP1uF,KAAM,IAEP,CACC8pB,GAAI,IACJm4L,OAAQb,GACRc,MAAO,WACPxzH,MAAO,aACP1uF,KAAM,+QAEP,CACC8pB,GAAI,IACJm4L,OAAQb,GACRc,MAAO,iBACPxzH,MAAO,aACP1uF,KAAK,2hBAKN,CACC8pB,GAAI,IACJm4L,OAAQb,GACRc,MAAO,UACPxzH,MAAO,8DACP1uF,KAAK,mlBAKN,CACC8pB,GAAI,IACJm4L,OAAQb,GACRc,MAAO,OACPxzH,MAAO,GACP1uF,KAAK,IAEN,CACC8pB,GAAI,IACJm4L,OAAQb,GACRc,MAAO,WACPxzH,MAAO,sBACP1uF,KAAK,sUAIN,CACC8pB,GAAI,IACJm4L,OAAQb,GACRc,MAAO,iBACPxzH,MAAO,sBACP1uF,KAAK,olBAMN,CACC8pB,GAAI,IACJm4L,OAAQb,GACRc,MAAO,UACPxzH,MAAM,sDACN1uF,KAAK,uqBAEN,CACC8pB,GAAI,KACJm4L,OAAQb,GACRc,MAAO,WACPxzH,MAAO,UACP1uF,KAAK,2VAEN,CACC8pB,GAAI,KACJm4L,OAAQb,GACRc,MAAO,iBACPxzH,MAAO,UACP1uF,KAAK,osBAKL,eA7FK7F,EAAO,KA+FRgoN,GA/FoB,MA+FXntI,EAAAA,EAAAA,UAAQ,WAEtB,OADsB,OAAT2iH,QAAS,IAATA,OAAS,EAATA,EAAWp/E,UAEzB,GAAG,CAACo/E,KAGEyqB,GAAiBptI,EAAAA,EAAAA,UAAQ,WAC9B,IAAIqtI,EAAwB,OAAPloN,QAAO,IAAPA,OAAO,EAAPA,EAASpW,QAAO,SAAAhI,GAAC,OAAIA,EAAEkmO,SAAWE,CAAM,IACzDG,EAAyB,OAAdD,QAAc,IAAdA,OAAc,EAAdA,EAAgBp1O,MAAK,SAAA8O,GAAC,OAAIA,EAAEmmO,QAAUZ,CAAY,IACjE,GAAKgB,EACL,OAAOA,CACR,GAAG,CAACnoN,EAASmnN,EAAca,IAGrB1+B,GAAazuG,EAAAA,EAAAA,UAAQ,WAC1B,IAAMutI,EAAuB,OAAT5qB,QAAS,IAATA,OAAS,EAATA,EAAWlU,WAC/B,OAAK8+B,GAAoB,EAE1B,GAAG,CAAC5qB,IAGE6qB,GAAiBxtI,EAAAA,EAAAA,UAAQ,WAAO,IAAD,EACpC,OAAgB,OAAT2iH,QAAS,IAATA,GAAqC,QAA5B,EAATA,EAAW8qB,kCAA0B,WAA5B,EAAT,EAAuC1+N,QAAO,SAAA2+N,GAAK,OAAIA,EAAMC,eAAe,GACpF,GAAG,CAAChrB,IAGEirB,GAAe5tI,EAAAA,EAAAA,UAAQ,WAAO,IAAD,EAClC,OAAgB,OAAT2iH,QAAS,IAATA,GAAqC,QAA5B,EAATA,EAAW8qB,kCAA0B,WAA5B,EAAT,EAAuC1+N,QAAO,SAAA2+N,GAAK,OAAKA,EAAMC,eAAe,GACrF,GAAG,CAAChrB,IAGEkrB,GAAsB7tI,EAAAA,EAAAA,UAAQ,WACnC,OAAQssI,GACP,KAAKH,GACJ,OAAIgB,IAAWf,GAAuB,qDAAN,OAAmD39B,GAAc,GAAE,KAC1F0+B,IAAWf,GAAsB,4CAAN,OAAgD39B,GAAc,GAAE,MAC9F,kBAAN,OAAyBA,GAAc,GAAE,iBAC1C,KAAK09B,GACL,KAAKA,GACJ,OAAIgB,IAAWf,GAAuB,sBAC7Be,IAAWf,GAAuB,UACpC,aAET,MAAO,EACR,GAAG,CAACE,EAAca,KAMlBvtI,EAAAA,EAAAA,YAAU,YACT,uBAAC,yGACsB23C,EAAIxL,mBAAmBvF,GAAU,KAAD,EACzC,QADTm8E,EAAS,cACA,IAATA,GAAAA,EAAWC,sBACd2pB,EAAgBJ,IAEhBI,EAAgBJ,IAEbxpB,GAAW6pB,EAAa7pB,GAAW,0CAPxC,EASD,GAAG,CAACn8E,EAAUkE,IAGd,IAAMinE,GAAW3xG,EAAAA,EAAAA,UAAQ,WACxB,OAAQssI,GACP,KAAKH,GACJ,OAAIgB,IAAWf,GAAuB,kFAC7Be,IAAWf,GAAsB,yFACnC,oEACR,KAAKD,GACL,KAAKA,GACJ,OAAIgB,IAAWf,GAAwB,SAC9Be,IAAWf,GAAuB,UACpC,SACR,KAAKD,GACJ,MAAO,GAET,MAAO,EACR,GAAG,CAACG,EAAca,IAGZW,EAAsB,SAAH,GAA0C,IAApCjB,EAAI,EAAJA,KAAMv7B,EAAU,EAAVA,WAAYy8B,EAAU,EAAVA,WAC1CC,EAAY,CACjB18B,WAAYA,EACZ28B,YAAapB,GAAQkB,GAEhBh7B,EAAclB,EAAY9iM,QAAO,SAAAlO,GAAC,OAAIA,EAAEywM,aAAeA,CAAU,IACvEyB,EAAYtgN,KAAKu7O,GACjBl8B,EAAeiB,GAGXi7B,EAAUC,aACbvB,GAAoB,SAAAwB,GACnB,OAAOA,EAAqBn/N,QAAO,SAAA6jM,GAAQ,OAAIA,EAAStB,aAAeA,CAAU,GAClF,GAEF,EAGM68B,EAAiB,SAACC,EAAcv8B,GACrC,IAAMw8B,EAAoB,GACtBtsL,GAAU,EAUd,OATAqsL,EAAa7tO,SAAQ,SAAAqyM,GACpB,GAAKA,EAAS07B,YAAd,CACA,IAAMC,EAAiB18B,EAAY55M,MAAK,SAAAy6M,GAAM,OAAIA,EAAOpB,aAAesB,EAAStB,UAAU,IACxE,OAAdi9B,QAAc,IAAdA,GAAAA,EAAgBN,cACpBI,EAAkB57O,KAAK,KAAKmgN,IAC5B7wJ,GAAU,EAJsB,CAMlC,IAEO,CAAEA,QAAAA,EAASssL,kBAAAA,EACnB,EAGMG,EAAmB,yCAAG,2GAEtBlC,IAAiBH,IAAoBG,IAAiBH,GAAkB,gBAGpC,GAFmD,EACnDgC,EADf7B,IAAiBH,GAAmBqB,EAAiBI,EACN/7B,GAA/D9vJ,EAAO,EAAPA,QAASssL,EAAiB,EAAjBA,kBACjB3B,EAAoB2B,GACftsL,EAAQ,CAAD,gDAGZ0sL,IAAoB,OASnB,GANIC,EAAuB,CAC5BC,oBAAgC,OAAX98B,QAAW,IAAXA,OAAW,EAAXA,EAAa9vM,KAAI,SAAA2wM,GAAM,MAAK,CAChDpB,WAAYoB,EAAOpB,WACnB28B,YAAav7B,EAAOu7B,YACpB,IACDznG,SAAUA,GAGP8lG,IAAiBH,IAA0E,IAApDuC,EAAqBC,oBAAoBr8O,OAAY,kCAC7EilJ,EAAItL,iCAAiCyiG,GAAsB,KAAD,GAAnE,QAERnC,EAAgBJ,IAChB,QAEFsC,IAAoB,kDAEpBt5L,QAAQ3b,KAAK,EAAD,IAAQ,0DAErB,kBA9BwB,mCAiCnBi1M,EAAoB,WACzB,OAAQnC,GACP,KAAKH,GAEJ,YADAI,EAAgBJ,IAEjB,KAAKA,GAEJ,YADAI,EAAgBJ,IAEjB,KAAKA,GACJ,OAIH,EAiDA,OACC,gBAAKn3M,UAAU,aAAY,UAC1B,UAAC,GAAS,YACPs3M,IAAiBH,IAAwBG,IAAiBH,MAC3D,SAAC,GAAM,CACNv8E,OAAK,EACL1uJ,KAAK,UACL2uJ,UAAU,YACVO,eAAe,SACf12C,MAAM,qBACNlU,QAAS,WA7Kb69C,EAAS5P,EAAOM,cA6K2B,KAGzC,SAAC03D,GAAOO,IAAG,OAAwBqgC,IAAe,cACjD,gBAAKr3M,UAAU,sBAAqB,UACnC,iBAAKA,UAAW23M,EAAiB,UA7DhB,WACrB,OAAQL,GACP,KAAKH,GACL,KAAKA,GACL,KAAKA,GACJ,OACC,SAACyC,GAAO,CAEPl1H,MAAOm0H,EACPX,MAAOZ,EACP79B,WAAYA,EACZzjL,KAAoB,OAAdoiN,QAAc,IAAdA,OAAc,EAAdA,EAAgBpiN,KACtB6jN,YAAU,EACVC,SAAUxC,IAAiBH,IAAwBG,IAAiBH,GACpE3mI,QAASgpI,GAPU,OAAdpB,QAAc,IAAdA,OAAc,EAAdA,EAAgBt4L,IAUxB,KAAKq3L,GACJ,OAAqB,OAAdqB,QAAc,IAAdA,OAAc,EAAdA,EAAgBzrO,KAAI,SAAC2rO,EAAOt8E,GAAG,OACrC,SAAC29E,GAAc,CAEdj6L,GAAIs8G,EAAM,EACVkgD,WAAYo8B,EAAMp8B,WAClB53F,MAAOg0H,EAAMsB,aACbx1H,SAAUs0H,EACVmB,oBAAqBxC,EAAiBpkN,MAAK,SAAA6mN,GAAe,OAAIA,EAAgB59B,aAAeo8B,EAAMp8B,UAAU,IAC7G27B,OAAQE,GANHO,EAAMp8B,WAOV,IAEJ,KAAK66B,GACJ,OAAmB,OAAZyB,QAAY,IAAZA,OAAY,EAAZA,EAAc7rO,KAAI,SAAA2rO,GAAK,OAC7B,SAACqB,GAAc,CAEdz9B,WAAYo8B,EAAMp8B,WAClB53F,MAAOg0H,EAAMsB,aACbpB,cAAY,EACZ98B,SAAUg9B,EACVmB,oBAAqBxC,EAAiBpkN,MAAK,SAAA6mN,GAAe,OAAIA,EAAgB59B,aAAeo8B,EAAMp8B,UAAU,IAC7G27B,OAAQE,GANHO,EAAMp8B,WAOV,IAEJ,QACC,OAAO,KAEV,CAkBO69B,GACA7C,IAAiBH,IAAwBG,IAAiBH,KAC1D,SAAC,GAAM,CAACzyH,MAAOi4F,EAAU7hD,QAAQ,aAAatqD,QAASgpI,WAL1ClC,OAarB,EAIMsC,GAAU,SAAH,GAAmE,IAA7D5jN,EAAI,EAAJA,KAAM8jN,EAAQ,EAARA,SAAUp1H,EAAK,EAALA,MAAa,GAAD,EAALwzH,MAAK,EAAElmO,MAAAA,OAAI,MAAG,iBAAgB,EACvE,OACC,iBAAKguB,UAAU,UAAS,WACvB,gBAAKA,UAAU,iBAAgB,SAAE0kF,KACjC,gBAAK1kF,UAAU,gBAAgBogD,wBAAyB,CAAEqb,OAAQzlE,KACjE8jN,GAAY9nO,IAAQ,gBAAKguB,UAAU,oBAGvC,EAEM+5M,GAAiB,SAAH,GAAkG,IAA5Fj6L,EAAE,EAAFA,GAAIw8J,EAAU,EAAVA,WAAY53F,EAAK,EAALA,MAAOk0H,EAAY,EAAZA,aAAcp0H,EAAQ,EAARA,SAAUs3F,EAAQ,EAARA,SAAUm+B,EAAmB,EAAnBA,oBAAqBhC,EAAM,EAANA,OACvG,GAAkC9sI,EAAAA,EAAAA,WAAS,GAAM,eAA1CivI,EAAS,KAAEC,EAAY,MAE9BzvI,EAAAA,EAAAA,YAAU,WAERyvI,IADGJ,EAKL,GAAG,CAACG,EAAWH,IAEf,IAAMK,GAAkBtvI,EAAAA,EAAAA,UAAQ,WAC/B,OAAQitI,GACP,KAAKb,GACJ,MAAO,2BACR,KAAKA,GACJ,MAAO,0BACR,KAAKA,GACJ,MAAO,8BAET,MAAO,EACR,GAAG,CAACa,IA6BJ,OACC,iBAAKj4M,UAAU,iBAAgB,UAvB3B0kF,GAASk0H,GACL,gBAAK54M,UAAU,wBAAwBogD,wBAAyB,CAAEqb,OAAQipB,MAGjF,iBAAK1kF,UAAU,wBAAuB,UACpC8f,GAAE,UAAOA,EAAE,MACX4kE,KAMEk0H,GAGJ,iCACC,SAAC,GAAQ,CAACzmB,UAAW,IAAK3tG,SAAU,SAAAjkH,GAAC,MArBnBw4O,EAqBmB,OArBnBA,EAqBqC,OAADx4O,QAAC,IAADA,GAAS,QAAR,EAADA,EAAG4pC,cAAM,WAAR,EAAD,EAAWnqC,WApBnE87M,EAAS,CAAEQ,WAAAA,EAAYy8B,WAAAA,GAoBkD,IACtEqB,IAAa,gBAAKp6M,UAAU,mBAAkB,SAAEs6M,QAJ3C,SAACC,GAAI,CAACj+B,WAAYA,EAAY93F,SAAUA,EAAUy1H,oBAAqBG,EAAWI,UAAWF,MAUhEh+B,EAKvC,EAEMi+B,GAAO,SAAH,GAA6E,IAAD,IAAtEE,MAAAA,OAAK,MAAG,EAAC,EAAEj2H,EAAQ,EAARA,SAAU83F,EAAU,EAAVA,WAAY29B,EAAmB,EAAnBA,oBAAqBO,EAAS,EAATA,UACrE,GAA4BrvI,EAAAA,EAAAA,UAAS,GAAE,eAAhCuvI,EAAM,KAAEC,EAAS,KACxB,GAA0BxvI,EAAAA,EAAAA,UAAS,GAAE,eAA9By/D,EAAK,KAAEgwE,EAAQ,KAOtB,OACC,gBAAK56M,UAAU,OAAM,UACpB,iBAAKA,UAAU,cAAa,WAC1B,OAAItiC,MAAM+8O,IAAQ1tO,KAAI,SAAC8tO,EAAMj2O,GAE7B,OADAA,GAAS,GAER,gBAECo7B,UAAWp7B,IAAUgmK,GAAS8vE,GAAU,KAAO,MAC/ClqI,QAAS,kBAbdmqI,EADoB9C,EAcajzO,QAZjC4/G,EAAS,CAAE83F,WAAAA,EAAYu7B,KAAAA,IAFH,IAAAA,CAcmB,EAClCiD,aAAc,kBAAMF,EAASh2O,EAAM,EACnCm2O,aAAc,kBAAMH,EAASF,EAAO,EAAC,UAErC,SAAC,GAAI,CAACrjF,KAAK,WAAWhvI,KAAM,MANvBzjB,EASR,IACCq1O,IAAuB,gBAAKj6M,UAAU,mBAAkB,SAAEw6M,GAAa,iCAI5E,aC9cIQ,GAAK/1O,WAAYg2O,GAAMt0O,YAAau0O,GAAMr0O,YAE1Cs0O,GAAO,IAAIH,GAAG,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAgB,EAAG,EAAoB,IAG1II,GAAO,IAAIJ,GAAG,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAiB,EAAG,IAEjIK,GAAO,IAAIL,GAAG,CAAC,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,KAE7EM,GAAO,SAAUx7J,EAAIr5E,GAErB,IADA,IAAI/H,EAAI,IAAIu8O,GAAI,IACP79O,EAAI,EAAGA,EAAI,KAAMA,EACtBsB,EAAEtB,GAAKqJ,GAAS,GAAKq5E,EAAG1iF,EAAI,GAGhC,IAAIid,EAAI,IAAI6gO,GAAIx8O,EAAE,KAClB,IAAStB,EAAI,EAAGA,EAAI,KAAMA,EACtB,IAAK,IAAIyoD,EAAInnD,EAAEtB,GAAIyoD,EAAInnD,EAAEtB,EAAI,KAAMyoD,EAC/BxrC,EAAEwrC,GAAOA,EAAInnD,EAAEtB,IAAO,EAAKA,EAGnC,MAAO,CAACsB,EAAG2b,EACf,EACIiM,GAAKg1N,GAAKH,GAAM,GAAInkI,GAAK1wF,GAAG,GAAIi1N,GAAQj1N,GAAG,GAE/C0wF,GAAG,IAAM,IAAKukI,GAAM,KAAO,GAI3B,IAHA,IAAIpkM,GAAKmkM,GAAKF,GAAM,GAAI3uJ,GAAKt1C,GAAG,GAAIqkM,GAAQrkM,GAAG,GAE3CskM,GAAM,IAAIR,GAAI,OACT79O,GAAI,EAAGA,GAAI,QAASA,GAAG,CAE5B,IAAIqF,IAAU,MAAJrF,MAAgB,GAAW,MAAJA,KAAe,EAEhDqF,IAAU,OADVA,IAAU,MAAJA,MAAgB,GAAW,MAAJA,KAAe,MACtB,GAAW,KAAJA,KAAe,EAC5Cg5O,GAAIr+O,MAAY,MAAJqF,MAAgB,GAAW,IAAJA,KAAe,KAAQ,CAC9D,CAIA,IAAIi5O,GAAQ,SAAUrtM,EAAIsyC,EAAItmE,GAO1B,IANA,IAAI7a,EAAI6uC,EAAG/wC,OAEPF,EAAI,EAEJ6E,EAAI,IAAIg5O,GAAIt6J,GAETvjF,EAAIoC,IAAKpC,IACV6E,EAAEosC,EAAGjxC,GAAK,GAEhB,IAIIu+O,EAJArnJ,EAAK,IAAI2mJ,GAAIt6J,GACjB,IAAKvjF,EAAI,EAAGA,EAAIujF,IAAMvjF,EAClBk3F,EAAGl3F,GAAMk3F,EAAGl3F,EAAI,GAAK6E,EAAE7E,EAAI,IAAO,EAGtC,GAAIid,EAAG,CAEHshO,EAAK,IAAIV,GAAI,GAAKt6J,GAElB,IAAIi7J,EAAM,GAAKj7J,EACf,IAAKvjF,EAAI,EAAGA,EAAIoC,IAAKpC,EAEjB,GAAIixC,EAAGjxC,GAQH,IANA,IAAIy+O,EAAMz+O,GAAK,EAAKixC,EAAGjxC,GAEnB0+O,EAAMn7J,EAAKtyC,EAAGjxC,GAEdqE,EAAI6yF,EAAGjmD,EAAGjxC,GAAK,MAAQ0+O,EAElB7gN,EAAIx5B,GAAM,GAAKq6O,GAAO,EAAIr6O,GAAKw5B,IAAKx5B,EAEzCk6O,EAAGF,GAAIh6O,KAAOm6O,GAAOC,CAIrC,MAGI,IADAF,EAAK,IAAIV,GAAIz7O,GACRpC,EAAI,EAAGA,EAAIoC,IAAKpC,EACjBu+O,EAAGv+O,GAAKq+O,GAAInnJ,EAAGjmD,EAAGjxC,GAAK,QAAW,GAAKixC,EAAGjxC,GAElD,OAAOu+O,CACX,EAEII,GAAM,IAAIf,GAAG,KACjB,IAAS59O,GAAI,EAAGA,GAAI,MAAOA,GACvB2+O,GAAI3+O,IAAK,EACb,IAASA,GAAI,IAAKA,GAAI,MAAOA,GACzB2+O,GAAI3+O,IAAK,EACb,IAASA,GAAI,IAAKA,GAAI,MAAOA,GACzB2+O,GAAI3+O,IAAK,EACb,IAASA,GAAI,IAAKA,GAAI,MAAOA,GACzB2+O,GAAI3+O,IAAK,EAEb,IAAI4+O,GAAM,IAAIhB,GAAG,IACjB,IAAS59O,GAAI,EAAGA,GAAI,KAAMA,GACtB4+O,GAAI5+O,IAAK,EAEb,IAAI6+O,GAAoBP,GAAKK,GAAK,EAAG,GAAIG,GAAqBR,GAAKK,GAAK,EAAG,GAEvEI,GAAoBT,GAAKM,GAAK,EAAG,GAAII,GAAqBV,GAAKM,GAAK,EAAG,GAEvEn4O,GAAM,SAAUgI,GAEhB,IADA,IAAIovB,EAAIpvB,EAAE,GACDzO,EAAI,EAAGA,EAAIyO,EAAEvO,SAAUF,EACxByO,EAAEzO,GAAK69B,IACPA,EAAIpvB,EAAEzO,IAEd,OAAO69B,CACX,EAEIohN,GAAO,SAAU59O,EAAGI,EAAGo8B,GACvB,IAAIg9B,EAAKp5D,EAAI,GAAM,EACnB,OAASJ,EAAEw5D,GAAMx5D,EAAEw5D,EAAI,IAAM,MAAa,EAAJp5D,GAAUo8B,CACpD,EAEIqhN,GAAS,SAAU79O,EAAGI,GACtB,IAAIo5D,EAAKp5D,EAAI,GAAM,EACnB,OAASJ,EAAEw5D,GAAMx5D,EAAEw5D,EAAI,IAAM,EAAMx5D,EAAEw5D,EAAI,IAAM,OAAc,EAAJp5D,EAC7D,EAEI09O,GAAO,SAAU19O,GAAK,OAASA,EAAI,GAAM,IAAU,EAAJA,GAAS,EAAI,EAG5D29O,GAAM,SAAU/6O,EAAGjC,EAAGe,IACb,MAALf,GAAaA,EAAI,KACjBA,EAAI,IACC,MAALe,GAAaA,EAAIkB,EAAEnE,UACnBiD,EAAIkB,EAAEnE,QAEV,IAAImC,EAAI,IAAKgC,aAAaw5O,GAAMA,GAAMx5O,aAAay5O,GAAMA,GAAMF,IAAIz6O,EAAIf,GAEvE,OADAC,EAAEsvD,IAAIttD,EAAEg7O,SAASj9O,EAAGe,IACbd,CACX,EAEIi9O,GAAQ,SAAUC,EAAKC,EAAKnf,GAE5B,IAAI3lH,EAAK6kI,EAAIr/O,OAETu/O,GAASD,GAAOnf,EAEhBqf,GAAQrf,GAAMA,EAAGrgO,EAChBqgO,IACDA,EAAK,CAAC,GAELmf,IACDA,EAAM,IAAI5B,GAAQ,EAALljI,IAEjB,IAAIilI,EAAO,SAAU96O,GACjB,IAAIy0G,EAAKkmI,EAAIt/O,OAEb,GAAI2E,EAAIy0G,EAAI,CAER,IAAIsmI,EAAO,IAAIhC,GAAGp3O,KAAKC,IAAS,EAAL6yG,EAAQz0G,IACnC+6O,EAAKjuL,IAAI6tL,GACTA,EAAMI,CACV,CACJ,EAEIC,EAAQxf,EAAG38N,GAAK,EAAGy/D,EAAMk9J,EAAG5+N,GAAK,EAAGq+O,EAAKzf,EAAG/+N,GAAK,EAAGy+O,EAAK1f,EAAGx7N,EAAGm7O,EAAK3f,EAAGh/N,EAAG4+O,EAAM5f,EAAGxiM,EAAGqiN,EAAM7f,EAAGh+N,EAE/F89O,EAAY,EAALzlI,EACX,EAAG,CACC,IAAKqlI,EAAI,CAEL1f,EAAG38N,EAAIm8O,EAAQZ,GAAKM,EAAKp8K,EAAK,GAE9B,IAAIr0D,EAAOmwO,GAAKM,EAAKp8K,EAAM,EAAG,GAE9B,GADAA,GAAO,GACFr0D,EAAM,CAEP,IAAuBjK,EAAI06O,GAAvBn9O,EAAI+8O,GAAKh8K,GAAO,GAAe,GAAMo8K,EAAIn9O,EAAI,IAAM,EAAID,EAAIC,EAAIyC,EACnE,GAAI1C,EAAIu4G,EAAI,CACR,GAAIglI,EACA,KAAM,iBACV,KACJ,CAEID,GACAE,EAAKG,EAAKj7O,GAEd26O,EAAI7tL,IAAI4tL,EAAIF,SAASj9O,EAAGD,GAAI29O,GAE5Bzf,EAAG/+N,EAAIw+O,GAAMj7O,EAAGw7N,EAAG5+N,EAAI0hE,EAAU,EAAJhhE,EAC7B,QACJ,CACK,GAAY,GAAR2M,EACLixO,EAAKjB,GAAMkB,EAAKhB,GAAMiB,EAAM,EAAGC,EAAM,MACpC,IAAY,GAARpxO,EAqDL,KAAM,qBAnDN,IAAIsxO,EAAOnB,GAAKM,EAAKp8K,EAAK,IAAM,IAAKk9K,EAAQpB,GAAKM,EAAKp8K,EAAM,GAAI,IAAM,EACnE+3C,EAAKklI,EAAOnB,GAAKM,EAAKp8K,EAAM,EAAG,IAAM,EACzCA,GAAO,GAKP,IAHA,IAAIm9K,EAAM,IAAI1C,GAAG1iI,GAEbqlI,EAAM,IAAI3C,GAAG,IACR59O,EAAI,EAAGA,EAAIqgP,IAASrgP,EAEzBugP,EAAItC,GAAKj+O,IAAMi/O,GAAKM,EAAKp8K,EAAU,EAAJnjE,EAAO,GAE1CmjE,GAAe,EAARk9K,EAEP,IAAIG,EAAM/5O,GAAI85O,GAAME,GAAU,GAAKD,GAAO,EAC1C,IAAKd,GAAQv8K,EAAM+3C,GAAMslI,EAAM,GAAKL,EAChC,MAEJ,IAAIO,EAAMpC,GAAKiC,EAAKC,EAAK,GACzB,IAASxgP,EAAI,EAAGA,EAAIk7G,GAAK,CACrB,IAII94G,EAJA6a,EAAIyjO,EAAIzB,GAAKM,EAAKp8K,EAAKs9K,IAM3B,GAJAt9K,GAAW,GAAJlmD,GAEH7a,EAAI6a,IAAM,GAEN,GACJqjO,EAAItgP,KAAOoC,MAEV,CAED,IAAIuS,EAAI,EAAGtS,EAAI,EAOf,IANS,IAALD,GACAC,EAAI,EAAI48O,GAAKM,EAAKp8K,EAAK,GAAIA,GAAO,EAAGxuD,EAAI2rO,EAAItgP,EAAI,IACvC,IAALoC,GACLC,EAAI,EAAI48O,GAAKM,EAAKp8K,EAAK,GAAIA,GAAO,GACxB,IAAL/gE,IACLC,EAAI,GAAK48O,GAAKM,EAAKp8K,EAAK,KAAMA,GAAO,GAClC9gE,KACHi+O,EAAItgP,KAAO2U,CACnB,CACJ,CAEA,IAAIgsO,EAAKL,EAAIjB,SAAS,EAAGe,GAAOQ,EAAKN,EAAIjB,SAASe,GAElDH,EAAMx5O,GAAIk6O,GAEVT,EAAMz5O,GAAIm6O,GACVb,EAAKzB,GAAKqC,EAAIV,EAAK,GACnBD,EAAK1B,GAAKsC,EAAIV,EAAK,EAGO,CAC9B,GAAI/8K,EAAMg9K,EACN,KAAM,gBACd,CAGIV,GACAE,EAAKG,EAAK,QAGd,IAFA,IAAIe,GAAO,GAAKZ,GAAO,EAAGa,GAAO,GAAKZ,GAAO,EACzCa,EAAMd,EAAMC,EAAM,GACfR,GAAQv8K,EAAM49K,EAAMZ,GAAM,CAE7B,IAAoC5uG,GAAhC58H,EAAIorO,EAAGb,GAAOK,EAAKp8K,GAAO09K,MAAkB,EAEhD,IADA19K,GAAW,GAAJxuD,GACGwrO,EACN,KAAM,iBACV,IAAKxrO,EACD,KAAM,yBACV,GAAI48H,EAAM,IACNiuG,EAAIM,KAAQvuG,MACX,IAAW,KAAPA,EAAY,CACjBwuG,EAAK,KACL,KACJ,CAEI,IAAI14M,EAAMkqG,EAAM,IAEhB,GAAIA,EAAM,IAAK,CAEX,IAAmBjwI,EAAIy8O,GAAnB/9O,EAAIuxI,EAAM,KACdlqG,EAAM43M,GAAKM,EAAKp8K,GAAM,GAAK7hE,GAAK,GAAKs4G,GAAG55G,GACxCmjE,GAAO7hE,CACX,CAEA,IAAID,EAAI2+O,EAAGd,GAAOK,EAAKp8K,GAAO29K,GAAME,EAAO3/O,IAAM,EACjD,IAAKA,EACD,KAAM,mBACV8hE,GAAW,GAAJ9hE,EACHu/O,EAAKvxJ,GAAG2xJ,GACZ,GAAIA,EAAO,EAAG,CACN1/O,EAAI08O,GAAKgD,GACbJ,GAAM1B,GAAOK,EAAKp8K,IAAS,GAAK7hE,GAAK,EAAI6hE,GAAO7hE,CACpD,CACA,GAAI6hE,EAAMg9K,EACN,KAAM,iBACNV,GACAE,EAAKG,EAAK,QAEd,IADA,IAAIx2O,EAAMw2O,EAAKz4M,EACRy4M,EAAKx2O,EAAKw2O,GAAM,EACnBN,EAAIM,GAAMN,EAAIM,EAAKc,GACnBpB,EAAIM,EAAK,GAAKN,EAAIM,EAAK,EAAIc,GAC3BpB,EAAIM,EAAK,GAAKN,EAAIM,EAAK,EAAIc,GAC3BpB,EAAIM,EAAK,GAAKN,EAAIM,EAAK,EAAIc,GAE/Bd,EAAKx2O,CACT,CACJ,CACA+2N,EAAGx7N,EAAIk7O,EAAI1f,EAAG5+N,EAAI0hE,EAAKk9J,EAAG/+N,EAAIw+O,EAC1BC,IACAF,EAAQ,EAAGxf,EAAGxiM,EAAIoiN,EAAK5f,EAAGh/N,EAAI2+O,EAAI3f,EAAGh+N,EAAI69O,EACjD,QAAUL,GACV,OAAOC,GAAMN,EAAIt/O,OAASs/O,EAAMJ,GAAII,EAAK,EAAGM,EAChD,EAEImB,GAAQ,SAAU5/O,EAAGI,EAAG4C,GACxBA,IAAU,EAAJ5C,EACN,IAAIo5D,EAAKp5D,EAAI,GAAM,EACnBJ,EAAEw5D,IAAMx2D,EACRhD,EAAEw5D,EAAI,IAAMx2D,IAAM,CACtB,EAEI68O,GAAU,SAAU7/O,EAAGI,EAAG4C,GAC1BA,IAAU,EAAJ5C,EACN,IAAIo5D,EAAKp5D,EAAI,GAAM,EACnBJ,EAAEw5D,IAAMx2D,EACRhD,EAAEw5D,EAAI,IAAMx2D,IAAM,EAClBhD,EAAEw5D,EAAI,IAAMx2D,IAAM,EACtB,EAEI88O,GAAQ,SAAU9/O,EAAGkiF,GAGrB,IADA,IAAIphF,EAAI,GACCnC,EAAI,EAAGA,EAAIqB,EAAEnB,SAAUF,EACxBqB,EAAErB,IACFmC,EAAE9B,KAAK,CAAE+B,EAAGpC,EAAG0D,EAAGrC,EAAErB,KAE5B,IAAIoC,EAAID,EAAEjC,OACNge,EAAK/b,EAAE2C,QACX,IAAK1C,EACD,MAAO,CAAC,IAAIw7O,GAAG,GAAI,GACvB,GAAS,GAALx7O,EAAQ,CACR,IAAIiC,EAAI,IAAIu5O,GAAGz7O,EAAE,GAAGC,EAAI,GAExB,OADAiC,EAAElC,EAAE,GAAGC,GAAK,EACL,CAACiC,EAAG,EACf,CACAlC,EAAEwnD,MAAK,SAAUl7C,EAAGnN,GAAK,OAAOmN,EAAE/K,EAAIpC,EAAEoC,CAAG,IAG3CvB,EAAE9B,KAAK,CAAE+B,GAAI,EAAGsB,EAAG,QACnB,IAAImB,EAAI1C,EAAE,GAAI8a,EAAI9a,EAAE,GAAIi/O,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAO7C,IANAn/O,EAAE,GAAK,CAAEC,GAAI,EAAGsB,EAAGmB,EAAEnB,EAAIuZ,EAAEvZ,EAAGmB,EAAGA,EAAGoY,EAAGA,GAMhCokO,GAAMj/O,EAAI,GACbyC,EAAI1C,EAAEA,EAAEi/O,GAAI19O,EAAIvB,EAAEm/O,GAAI59O,EAAI09O,IAAOE,KACjCrkO,EAAI9a,EAAEi/O,GAAMC,GAAMl/O,EAAEi/O,GAAI19O,EAAIvB,EAAEm/O,GAAI59O,EAAI09O,IAAOE,KAC7Cn/O,EAAEk/O,KAAQ,CAAEj/O,GAAI,EAAGsB,EAAGmB,EAAEnB,EAAIuZ,EAAEvZ,EAAGmB,EAAGA,EAAGoY,EAAGA,GAE9C,IAAIskO,EAASrjO,EAAG,GAAG9b,EACnB,IAASpC,EAAI,EAAGA,EAAIoC,IAAKpC,EACjBke,EAAGle,GAAGoC,EAAIm/O,IACVA,EAASrjO,EAAGle,GAAGoC,GAGvB,IAAIo/O,EAAK,IAAI3D,GAAI0D,EAAS,GAEtBE,EAAMC,GAAGv/O,EAAEk/O,EAAK,GAAIG,EAAI,GAC5B,GAAIC,EAAMl+J,EAAI,CAINvjF,EAAI,EAAR,IAAW4gP,EAAK,EAEZe,EAAMF,EAAMl+J,EAAIq+J,EAAM,GAAKD,EAE/B,IADAzjO,EAAGyrC,MAAK,SAAUl7C,EAAGnN,GAAK,OAAOkgP,EAAGlgP,EAAEc,GAAKo/O,EAAG/yO,EAAErM,IAAMqM,EAAE/K,EAAIpC,EAAEoC,CAAG,IAC1D1D,EAAIoC,IAAKpC,EAAG,CACf,IAAI6hP,EAAO3jO,EAAGle,GAAGoC,EACjB,KAAIo/O,EAAGK,GAAQt+J,GAKX,MAJAq9J,GAAMgB,GAAO,GAAMH,EAAMD,EAAGK,IAC5BL,EAAGK,GAAQt+J,CAInB,CAEA,IADAq9J,KAAQe,EACDf,EAAK,GAAG,CACX,IAAIkB,EAAO5jO,EAAGle,GAAGoC,EACbo/O,EAAGM,GAAQv+J,EACXq9J,GAAM,GAAMr9J,EAAKi+J,EAAGM,KAAU,IAE5B9hP,CACV,CACA,KAAOA,GAAK,GAAK4gP,IAAM5gP,EAAG,CACtB,IAAI+hP,EAAO7jO,EAAGle,GAAGoC,EACbo/O,EAAGO,IAASx+J,MACVi+J,EAAGO,KACHnB,EAEV,CACAa,EAAMl+J,CACV,CACA,MAAO,CAAC,IAAIq6J,GAAG4D,GAAKC,EACxB,EAEIC,GAAK,SAALA,EAAer/O,EAAGwC,EAAGxD,GACrB,OAAe,GAARgB,EAAED,EACHoE,KAAKC,IAAIi7O,EAAGr/O,EAAEwC,EAAGA,EAAGxD,EAAI,GAAIqgP,EAAGr/O,EAAE4a,EAAGpY,EAAGxD,EAAI,IAC1CwD,EAAExC,EAAED,GAAKf,CACpB,EAEIiqF,GAAK,SAAU32E,GAGf,IAFA,IAAIvS,EAAIuS,EAAEzU,OAEHkC,IAAMuS,IAAIvS,KAMjB,IAJA,IAAIo3G,EAAK,IAAIqkI,KAAMz7O,GAEf4/O,EAAM,EAAGC,EAAMttO,EAAE,GAAIutO,EAAM,EAC3B58O,EAAI,SAAUjB,GAAKm1G,EAAGwoI,KAAS39O,CAAG,EAC7BrE,EAAI,EAAGA,GAAKoC,IAAKpC,EACtB,GAAI2U,EAAE3U,IAAMiiP,GAAOjiP,GAAKoC,IAClB8/O,MACD,CACD,IAAKD,GAAOC,EAAM,EAAG,CACjB,KAAOA,EAAM,IAAKA,GAAO,IACrB58O,EAAE,OACF48O,EAAM,IACN58O,EAAE48O,EAAM,GAAOA,EAAM,IAAO,EAAK,MAAUA,EAAM,GAAM,EAAK,OAC5DA,EAAM,EAEd,MACK,GAAIA,EAAM,EAAG,CAEd,IADA58O,EAAE28O,KAAQC,EACHA,EAAM,EAAGA,GAAO,EACnB58O,EAAE,MACF48O,EAAM,IACN58O,EAAI48O,EAAM,GAAM,EAAK,MAAOA,EAAM,EAC1C,CACA,KAAOA,KACH58O,EAAE28O,GACNC,EAAM,EACND,EAAMttO,EAAE3U,EACZ,CAEJ,MAAO,CAACw5G,EAAG6lI,SAAS,EAAG2C,GAAM5/O,EACjC,EAEI+/O,GAAO,SAAUxmJ,EAAI6d,GAErB,IADA,IAAI30G,EAAI,EACC7E,EAAI,EAAGA,EAAIw5G,EAAGt5G,SAAUF,EAC7B6E,GAAK82F,EAAG37F,GAAKw5G,EAAGx5G,GACpB,OAAO6E,CACX,EAGIu9O,GAAQ,SAAU/7L,EAAK8c,EAAKo8K,GAE5B,IAAIn9O,EAAIm9O,EAAIr/O,OACR26D,EAAIskL,GAAKh8K,EAAM,GACnB9c,EAAIwU,GAAS,IAAJz4D,EACTikD,EAAIwU,EAAI,GAAKz4D,IAAM,EACnBikD,EAAIwU,EAAI,GAAc,IAATxU,EAAIwU,GACjBxU,EAAIwU,EAAI,GAAkB,IAAbxU,EAAIwU,EAAI,GACrB,IAAK,IAAI76D,EAAI,EAAGA,EAAIoC,IAAKpC,EACrBqmD,EAAIwU,EAAI76D,EAAI,GAAKu/O,EAAIv/O,GACzB,OAAqB,GAAb66D,EAAI,EAAIz4D,EACpB,EAEIigP,GAAO,SAAU9C,EAAKl5L,EAAKw5L,EAAOyC,EAAMrmJ,EAAIL,EAAIlZ,EAAI8oB,EAAI+2I,EAAIjpI,EAAI73G,GAChEw/O,GAAM56L,EAAK5kD,IAAKo+O,KACd5jJ,EAAG,KAML,IALA,IAAI/yE,EAAKi4N,GAAMllJ,EAAI,IAAKumJ,EAAMt5N,EAAG,GAAIu5N,EAAMv5N,EAAG,GAC1C6wB,EAAKonM,GAAMvlJ,EAAI,IAAK8mJ,EAAM3oM,EAAG,GAAI4oM,EAAM5oM,EAAG,GAC1CwD,EAAK+tC,GAAGk3J,GAAMI,EAAOrlM,EAAG,GAAIslM,EAAMtlM,EAAG,GACrCa,EAAKktC,GAAGo3J,GAAMI,EAAO1kM,EAAG,GAAI2kM,EAAM3kM,EAAG,GACrC4kM,EAAS,IAAInF,GAAI,IACZ79O,EAAI,EAAGA,EAAI4iP,EAAK1iP,SAAUF,EAC/BgjP,EAAiB,GAAVJ,EAAK5iP,MAChB,IAASA,EAAI,EAAGA,EAAI8iP,EAAK5iP,SAAUF,EAC/BgjP,EAAiB,GAAVF,EAAK9iP,MAGhB,IAFA,IAAIm+C,EAAKgjM,GAAM6B,EAAQ,GAAIC,EAAM9kM,EAAG,GAAI+kM,EAAO/kM,EAAG,GAC9CglM,EAAO,GACJA,EAAO,IAAMF,EAAIhF,GAAKkF,EAAO,MAAOA,GAE3C,IAKIpD,EAAI7lI,EAAI8lI,EAAItmI,EALZ0pI,EAAQ9pI,EAAK,GAAM,EACnB+pI,EAAQlB,GAAKlmJ,EAAI0iJ,IAAOwD,GAAKvmJ,EAAIgjJ,IAAOl8J,EACxC4gK,EAAQnB,GAAKlmJ,EAAIumJ,GAAOL,GAAKvmJ,EAAI8mJ,GAAOhgK,EAAK,GAAK,EAAIygK,EAAOhB,GAAKa,EAAQC,IAAQ,EAAID,EAAO,IAAM,EAAIA,EAAO,IAAM,EAAIA,EAAO,KACnI,GAAII,GAAQC,GAASD,GAAQE,EACzB,OAAOlB,GAAM/7L,EAAK5kD,EAAG89O,EAAIF,SAASkD,EAAIA,EAAKjpI,IAG/C,GADA2nI,GAAM56L,EAAK5kD,EAAG,GAAK6hP,EAAQD,IAAS5hP,GAAK,EACrC6hP,EAAQD,EAAO,CACftD,EAAKzB,GAAKkE,EAAKC,EAAK,GAAIvoI,EAAKsoI,EAAKxC,EAAK1B,GAAKoE,EAAKC,EAAK,GAAIjpI,EAAKgpI,EAC/D,IAAIa,EAAMjF,GAAK2E,EAAKC,EAAM,GAC1BjC,GAAM56L,EAAK5kD,EAAGohP,EAAM,KACpB5B,GAAM56L,EAAK5kD,EAAI,EAAGshP,EAAM,GACxB9B,GAAM56L,EAAK5kD,EAAI,GAAI0hP,EAAO,GAC1B1hP,GAAK,GACL,IAASzB,EAAI,EAAGA,EAAImjP,IAAQnjP,EACxBihP,GAAM56L,EAAK5kD,EAAI,EAAIzB,EAAGijP,EAAIhF,GAAKj+O,KACnCyB,GAAK,EAAI0hP,EAET,IADA,IAAIK,EAAO,CAACZ,EAAME,GACTz2G,EAAK,EAAGA,EAAK,IAAKA,EACvB,KAAIo3G,EAAOD,EAAKn3G,GAChB,IAASrsI,EAAI,EAAGA,EAAIyjP,EAAKvjP,SAAUF,EAAG,CAClC,IAAIqI,EAAgB,GAAVo7O,EAAKzjP,GACfihP,GAAM56L,EAAK5kD,EAAG8hP,EAAIl7O,IAAO5G,GAAKwhP,EAAI56O,GAC9BA,EAAM,KACN44O,GAAM56L,EAAK5kD,EAAIgiP,EAAKzjP,KAAO,EAAK,KAAMyB,GAAKgiP,EAAKzjP,KAAO,GAC/D,CANmB,CAQ3B,MAEI+/O,EAAKlB,GAAK3kI,EAAKykI,GAAKqB,EAAKjB,GAAKrlI,EAAKklI,GAEvC,IAAS5+O,EAAI,EAAGA,EAAIwrG,IAAMxrG,EACtB,GAAIsiP,EAAKtiP,GAAK,IAAK,CACXqI,EAAOi6O,EAAKtiP,KAAO,GAAM,GAC7BkhP,GAAQ76L,EAAK5kD,EAAGs+O,EAAG13O,EAAM,MAAO5G,GAAKy4G,EAAG7xG,EAAM,KAC1CA,EAAM,IACN44O,GAAM56L,EAAK5kD,EAAI6gP,EAAKtiP,KAAO,GAAM,IAAKyB,GAAKs8O,GAAK11O,IACpD,IAAIq7O,EAAgB,GAAVpB,EAAKtiP,GACfkhP,GAAQ76L,EAAK5kD,EAAGu+O,EAAG0D,IAAOjiP,GAAKi4G,EAAGgqI,GAC9BA,EAAM,IACNxC,GAAQ76L,EAAK5kD,EAAI6gP,EAAKtiP,KAAO,EAAK,MAAOyB,GAAKu8O,GAAK0F,GAC3D,MAEIxC,GAAQ76L,EAAK5kD,EAAGs+O,EAAGuC,EAAKtiP,KAAMyB,GAAKy4G,EAAGooI,EAAKtiP,IAInD,OADAkhP,GAAQ76L,EAAK5kD,EAAGs+O,EAAG,MACZt+O,EAAIy4G,EAAG,IAClB,EAEIypI,GAAoB,IAAI7F,GAAI,CAAC,MAAO,OAAQ,OAAQ,OAAQ,OAAQ,QAAS,QAAS,QAAS,UAE/F8F,GAAmB,IAAIhG,GAAG,GAE1BiG,GAAO,SAAUtE,EAAKuE,EAAKC,EAAMC,EAAKC,EAAMC,GAC5C,IAAI9hP,EAAIm9O,EAAIr/O,OACR26D,EAAI,IAAI+iL,GAAGoG,EAAM5hP,EAAI,GAAK,EAAIoE,KAAKi+B,MAAMriC,EAAI,MAAS6hP,GAEtD3+O,EAAIu1D,EAAEwkL,SAAS2E,EAAKnpL,EAAE36D,OAAS+jP,GAC/B9gL,EAAM,EACV,IAAK2gL,GAAO1hP,EAAI,EACZ,IAAK,IAAIpC,EAAI,EAAGA,GAAKoC,EAAGpC,GAAK,MAAO,CAEhC,IAAImD,EAAInD,EAAI,MACRmD,EAAIf,EAEJ+gE,EAAMi/K,GAAM98O,EAAG69D,EAAKo8K,EAAIF,SAASr/O,EAAGmD,KAIpCmC,EAAEtF,GAAKkkP,EACP/gL,EAAMi/K,GAAM98O,EAAG69D,EAAKo8K,EAAIF,SAASr/O,EAAGoC,IAE5C,KAEC,CAeD,IAdA,IAAI+hP,EAAMR,GAAIG,EAAM,GAChBzhP,EAAI8hP,IAAQ,GAAIxvO,EAAU,KAANwvO,EACpBC,GAAS,GAAKL,GAAQ,EAEtBx1O,EAAO,IAAIsvO,GAAI,OAAQ1tG,EAAO,IAAI0tG,GAAIuG,EAAQ,GAC9CC,EAAQ79O,KAAKwD,KAAK+5O,EAAO,GAAIO,EAAQ,EAAID,EACzCE,EAAM,SAAUvkP,GAAK,OAAQu/O,EAAIv/O,GAAMu/O,EAAIv/O,EAAI,IAAMqkP,EAAU9E,EAAIv/O,EAAI,IAAMskP,GAAUF,CAAO,EAG9F9B,EAAO,IAAIxE,GAAI,MAEf7hJ,EAAK,IAAI4hJ,GAAI,KAAMjiJ,EAAK,IAAIiiJ,GAAI,IAEhC2G,EAAO,EAAG9hK,EAAK,EAAU8oB,GAAPxrG,EAAI,EAAQ,GAAGusG,EAAK,EAAGg2I,EAAK,EAC3CviP,EAAIoC,IAAKpC,EAAG,CAEf,IAAIykP,EAAKF,EAAIvkP,GAET0kP,EAAW,MAAJ1kP,EAEP2kP,EAAQx0G,EAAKs0G,GAKjB,GAJAl2O,EAAKm2O,GAAQC,EACbx0G,EAAKs0G,GAAMC,EAGPn4I,GAAMvsG,EAAG,CAET,IAAI4kP,EAAMxiP,EAAIpC,EACd,IAAKwkP,EAAO,KAAQh5I,EAAK,QAAUo5I,EAAM,IAAK,CAC1CzhL,EAAMk/K,GAAK9C,EAAKj6O,EAAG,EAAGg9O,EAAMrmJ,EAAIL,EAAIlZ,EAAI8oB,EAAI+2I,EAAIviP,EAAIuiP,EAAIp/K,GACxDqoC,EAAKg5I,EAAO9hK,EAAK,EAAG6/J,EAAKviP,EACzB,IAAK,IAAIyoD,EAAI,EAAGA,EAAI,MAAOA,EACvBwzC,EAAGxzC,GAAK,EACZ,IAASA,EAAI,EAAGA,EAAI,KAAMA,EACtBmzC,EAAGnzC,GAAK,CAChB,CAEA,IAAI5jD,EAAI,EAAGxD,EAAI,EAAGwjP,EAAOlwO,EAAGmwO,EAAOJ,EAAOC,EAAS,MACnD,GAAIC,EAAM,GAAKH,GAAMF,EAAIvkP,EAAI8kP,GAMzB,IALA,IAAIC,EAAOv+O,KAAK0S,IAAI7W,EAAGuiP,GAAO,EAC1BI,EAAOx+O,KAAK0S,IAAI,MAAOlZ,GAGvBo6G,EAAK5zG,KAAK0S,IAAI,IAAK0rO,GAChBE,GAAOE,KAAUH,GAAQH,GAAQC,GAAO,CAC3C,GAAIpF,EAAIv/O,EAAI6E,IAAM06O,EAAIv/O,EAAI6E,EAAIigP,GAAM,CAEhC,IADA,IAAIxqI,EAAK,EACFA,EAAKF,GAAMmlI,EAAIv/O,EAAIs6G,IAAOilI,EAAIv/O,EAAIs6G,EAAKwqI,KAAQxqI,GAEtD,GAAIA,EAAKz1G,EAAG,CAGR,GAFAA,EAAIy1G,EAAIj5G,EAAIyjP,EAERxqI,EAAKyqI,EACL,MAIJ,IAAIE,EAAMz+O,KAAK0S,IAAI4rO,EAAKxqI,EAAK,GACzBzqB,EAAK,EACT,IAASpnC,EAAI,EAAGA,EAAIw8L,IAAOx8L,EAAG,CAC1B,IAAI2jD,EAAMpsG,EAAI8kP,EAAMr8L,EAAI,MAAS,MAE7BxX,EAAMm7D,EADA79F,EAAK69F,GACM,MAAS,MAC1Bn7D,EAAK4+C,IACLA,EAAK5+C,EAAI0zM,EAAQv4I,EACzB,CACJ,CACJ,CAGA04I,IADAJ,EAAOC,IAAOA,EAAQp2O,EAAKm2O,IACJ,MAAS,KACpC,CAGJ,GAAIrjP,EAAG,CAGHihP,EAAK92I,KAAQ,UAAa2yI,GAAMt5O,IAAM,GAAMu5O,GAAM/8O,GAClD,IAAI6jP,EAAiB,GAAX/G,GAAMt5O,GAASsgP,EAAiB,GAAX/G,GAAM/8O,GACrCqhF,GAAMq7J,GAAKmH,GAAOlH,GAAKmH,KACrBlpJ,EAAG,IAAMipJ,KACTtpJ,EAAGupJ,GACL54I,EAAKvsG,EAAI6E,IACP2/O,CACN,MAEIlC,EAAK92I,KAAQ+zI,EAAIv/O,KACfi8F,EAAGsjJ,EAAIv/O,GAEjB,CACJ,CACAmjE,EAAMk/K,GAAK9C,EAAKj6O,EAAG4+O,EAAK5B,EAAMrmJ,EAAIL,EAAIlZ,EAAI8oB,EAAI+2I,EAAIviP,EAAIuiP,EAAIp/K,GAErD+gL,IACD/gL,EAAMi/K,GAAM98O,EAAG69D,EAAKygL,IAC5B,CACA,OAAOxE,GAAIvkL,EAAG,EAAGmpL,EAAM7E,GAAKh8K,GAAO8gL,EACvC,EA2BImB,GAAQ,WACR,IAAI32O,EAAI,EAAGnN,EAAI,EACf,MAAO,CACHG,EAAG,SAAUJ,GAIT,IAFA,IAAIgB,EAAIoM,EAAGovB,EAAIv8B,EACXuD,EAAIxD,EAAEnB,OACDF,EAAI,EAAGA,GAAK6E,GAAI,CAErB,IADA,IAAI1B,EAAIqD,KAAK0S,IAAIlZ,EAAI,KAAM6E,GACpB7E,EAAImD,IAAKnD,EACD69B,GAAXx7B,GAAKhB,EAAErB,GACXqC,GAAK,MAAOw7B,GAAK,KACrB,CACApvB,EAAIpM,EAAGf,EAAIu8B,CACf,EACAx8B,EAAG,WAAc,OAASoN,IAAM,GAAM,IAAU,IAAJnN,IAAY,EAAKA,IAAM,GAA0B,IAAd,IAAJmN,IAAY,GAAS,EAExG,EAGI42O,GAAO,SAAU9F,EAAK4E,EAAKH,EAAKC,EAAM5jB,GACtC,OAAOwjB,GAAKtE,EAAkB,MAAb4E,EAAImB,MAAgB,EAAInB,EAAImB,MAAkB,MAAXnB,EAAIoB,IAAc/+O,KAAKwD,KAAuD,IAAlDxD,KAAKC,IAAI,EAAGD,KAAK0S,IAAI,GAAI1S,KAAKmlF,IAAI4zJ,EAAIr/O,WAAoB,GAAKikP,EAAIoB,IAAMvB,EAAKC,GAAO5jB,EACzK,EA8HImlB,GAAS,SAAUnkP,EAAGC,EAAG+C,GACzB,KAAOA,IAAK/C,EACRD,EAAEC,GAAK+C,EAAGA,KAAO,CACzB,EAkCIohP,GAAM,SAAU9wO,EAAGkmD,GACnB,IAAI6qL,EAAK7qL,EAAEyqL,MAAO1rI,EAAW,GAAN8rI,EAAU,EAAIA,EAAK,EAAI,EAAU,GAANA,EAAU,EAAI,EAChE/wO,EAAE,GAAK,IAAKA,EAAE,GAAMilG,GAAM,GAAMA,EAAM,GAAK,EAAIA,EAAM,EACzD,EAEI+rI,GAAM,SAAUtkP,GAChB,GAAmB,IAAP,GAAPA,EAAE,KAAkBA,EAAE,KAAO,EAAK,IAAOA,EAAE,IAAM,EAAIA,EAAE,IAAM,GAC9D,KAAM,oBACV,GAAW,GAAPA,EAAE,GACF,KAAM,sDACd,EA+WO,SAASukP,GAAS77O,EAAMy5C,QACd,IAATA,IAAmBA,EAAO,CAAC,GAC/B,IAAI/0C,EAAI22O,KACR32O,EAAEhN,EAAEsI,GACJ,IAAI1I,EAAIgkP,GAAKt7O,EAAMy5C,EAAM,EAAG,GAC5B,OAAOiiM,GAAIpkP,EAAGmiD,GAAOgiM,GAAOnkP,EAAGA,EAAEnB,OAAS,EAAGuO,EAAEpN,KAAMA,CACzD,CA4EO,SAASwkP,GAAW97O,EAAMs8C,GAC7B,OAAOi5L,IAAOqG,GAAI57O,GAAOA,EAAKs1O,SAAS,GAAI,IAAKh5L,EACpD,CCh0CO,IAAIy/L,GAAgB,iBAClB,oBAAuBhwN,OAC1BA,OACA,oBAAuBiwN,EAAAA,EACvBA,EAAAA,EACA,oBAAuB7+G,KACvBA,KACAplI,IAAAA,CAPqB,GCE3B,SAASkkP,KACHF,GAAa/iM,SAA+C,mBAA7B+iM,GAAa/iM,QAAQ4oC,KACtDm6J,GAAa/iM,QAAQ4oC,IAAIlrF,MAAMqlP,GAAa/iM,QAAS9iD,UAAAA,CAuBlD,IAAI8iD,GAAU,CACnB4oC,IAAKq6J,GACL5+M,KArBF,SAAqBngC,GACf6+O,GAAa/iM,UAC0B,mBAA9B+iM,GAAa/iM,QAAQ3b,KAC9B0+M,GAAa/iM,QAAQ3b,KAAK3mC,MAAMqlP,GAAa/iM,QAAS9iD,WAEtD+lP,GAAWjlP,KAAK,KAAMd,WAAAA,EAiB1B6oC,MAZF,SAAsB7hC,GAChB6+O,GAAa/iM,UAC2B,mBAA/B+iM,GAAa/iM,QAAQja,MAC9Bg9M,GAAa/iM,QAAQja,MAAMroC,MAAMqlP,GAAa/iM,QAAS9iD,WAEvD+lP,GAAW/+O,GAAAA,GCWjB,SAASilK,GAAS1/I,EAAK3R,EAAM2oC,GAAAA,IACvBlU,EAAM,IAAIlW,eACdkW,EAAI1b,KAAK,MAAOpH,GAChB8iB,EAAIjW,aAAe,OACnBiW,EAAI1U,OAAS,WACXqrN,GAAO32M,EAAIE,SAAU30B,EAAM2oC,EAAAA,EAE7BlU,EAAIzU,QAAU,WACZkoB,GAAQja,MAAM,4BAEhBwG,EAAIW,MAAAA,CAGN,SAASi2M,GAAY15N,GAAAA,IACf8iB,EAAM,IAAIlW,eAEdkW,EAAI1b,KAAK,OAAQpH,GAAAA,GAAK,IAEpB8iB,EAAIW,MACG9sC,CAAP,MAAOA,GAAAA,CAAAA,OACFmsC,EAAIC,QAAU,KAAOD,EAAIC,QAAU,IAI5C,SAASoxH,GAAM16J,GAAAA,IAEXA,EAAK4oF,cAAc,IAAIkvF,WAAW,SAoBfooE,CAnBnB,MAAOhjP,GAAAA,IACHgjP,EAAM9/O,SAAS+/O,YAAY,eAC/BD,EAAIE,eACF,YACA,EAEAvwN,OACA,EACA,EACA,EACA,GACA,OACA,GACA,GACA,EAEA,EACA,MAEF7vB,EAAK4oF,cAAcs3J,EAAAA,CAAAA,CAIvB,IClFIG,GAAMrqG,GDkFNgqG,GACFM,GAAQN,SAEW,gCAAXnwN,OAAAA,aAAAA,EAAAA,GAAAA,GAAAA,UAAuBA,SAAWywN,GACtC,aAI2B,oBAAtBC,mBACL,aAAcA,kBAAkB5lP,UAChC,SAAgBu7I,EAAMthI,EAAM2oC,GAAAA,IACtB2jG,EAAMo/F,GAAQp/F,KAAOo/F,GAAQE,UAC7Bh4O,EAAIpI,SAASwxB,cAAc,KAC/Bhd,EAAOA,GAAQshI,EAAKthI,MAAQ,WAE5BpM,EAAEy9J,SAAWrxJ,EACbpM,EAAE2mJ,IAAM,WAKY,iBAATjZ,GAET1tI,EAAEq/B,KAAOquG,EACL1tI,EAAEu4I,SAAW54G,SAAS44G,OACxBk/F,GAAYz3O,EAAEq/B,MACVo+H,GAAS/vB,EAAMthI,EAAM2oC,GACrBm9G,GAAMlyJ,EAAIA,EAAEs+B,OAAS,UAEzB4zH,GAAMlyJ,KAIRA,EAAEq/B,KAAOq5G,EAAIuZ,gBAAgBvkB,GAC7BhtG,YAAW,WACTg4G,EAAI01D,gBAAgBpuM,EAAEq/B,KAAAA,GACrB,KACHqB,YAAW,WACTwxH,GAAMlyJ,EAAAA,GACL,KAIT,qBAAsBw4B,UACpB,SAAgBk1G,EAAMthI,EAAM2oC,GAAAA,GAC1B3oC,EAAOA,GAAQshI,EAAKthI,MAAQ,WAER,iBAATshI,EAAAA,GACL+pG,GAAY/pG,GACd+vB,GAAS/vB,EAAMthI,EAAM2oC,OAChB,KACD/0C,EAAIpI,SAASwxB,cAAc,KAC/BppB,EAAEq/B,KAAOquG,EACT1tI,EAAEs+B,OAAS,SACXoC,YAAW,WACTwxH,GAAMlyJ,EAAAA,GAAAA,MAIVw4B,UAAUy/M,iBAjIpB,SAAavqG,EAAM34F,GAAAA,YAAAA,IACNA,EAAsBA,EAAO,CAAEmjM,SAAS,GAC1B,YAAhBvgH,EAAAA,GAAAA,GAAO5iF,KACdT,GAAQ3b,KAAK,sDACboc,EAAO,CAAEmjM,SAAUnjM,IAMnBA,EAAKmjM,SACL,6EAA6E3/M,KAC3Em1G,EAAKrtI,MAGA,IAAI2xJ,KAAK,CAAC7+J,OAAO8F,aAAa,OAASy0I,GAAO,CAAErtI,KAAMqtI,EAAKrtI,OAE7DqtI,CAAAA,CAjBT,CAiIyCA,EAAM34F,GAAO3oC,EAAAA,EAIhD,SAAgBshI,EAAMthI,EAAM2oC,EAAMojM,GAAAA,IAGhCA,EAAQA,GAAShzN,KAAK,GAAI,aAExBgzN,EAAMvgP,SAASihH,MAAQs/H,EAAMvgP,SAAS5C,KAAKojP,UACzC,kBAGgB,iBAAT1qG,EAAmB,OAAO+vB,GAAS/vB,EAAMthI,EAAM2oC,GAAAA,IAEtDsjM,EAAsB,6BAAd3qG,EAAKrtI,KACbi4O,EACF,eAAe//M,KAAKu/M,GAAQS,cAAgBT,GAAQU,OAClDC,EAAc,eAAelgN,KAAKC,UAAUC,WAAAA,IAG7CggN,GAAgBJ,GAASC,IACJ,gCAAfr3M,WAAAA,aAAAA,EAAAA,GAAAA,GAAAA,aACP,KAEIqyH,EAAS,IAAIryH,WACjBqyH,EAAOk6C,UAAY,eACbzvL,EAAMu1I,EAAO1+J,OACjBmpB,EAAM06N,EACF16N,EACAA,EAAIkR,QAAQ,eAAgB,yBAC5BkpN,EAAOA,EAAMx4M,SAASN,KAAOthB,EAC5B4hB,SAAW5hB,EAChBo6N,EAAQ,MAEV7kF,EAAOnyH,cAAcusG,EAAAA,KAChB,KACDgL,EAAMo/F,GAAQp/F,KAAOo/F,GAAQE,UAC7Bj6N,EAAM26H,EAAIuZ,gBAAgBvkB,GAC1ByqG,EAAOA,EAAMx4M,SAAW5hB,EACvB4hB,SAASN,KAAOthB,EACrBo6N,EAAQ,KACRz3M,YAAW,WACTg4G,EAAI01D,gBAAgBrwL,EAAAA,GACnB,QEpLb,SAAS26N,GAASC,GAAAA,IAaZC,EAZJD,EAAeA,GAAgB,QAC1BtxI,IAAK,EAGoB,KAA1BsxI,EAAavkL,OAAO,KAEtBukL,EAAeA,EAAa92M,OAAO,EAAG,IA2JxC82M,EAjJoB,CAClBE,UAAW,SACXC,aAAc,SACdC,KAAM,SACNC,WAAY,SACZC,MAAO,SACPC,MAAO,SACPC,OAAQ,SACRC,MAAO,SACPC,eAAgB,SAChBpqO,KAAM,SACNqqO,WAAY,SACZC,MAAO,SACPC,UAAW,SACXC,UAAW,SACXC,WAAY,SACZC,UAAW,SACXC,MAAO,SACPC,eAAgB,SAChBC,SAAU,SACVC,QAAS,SACTC,KAAM,SACNC,SAAU,SACVC,SAAU,SACVC,cAAe,SACfC,SAAU,SACVC,UAAW,SACXC,UAAW,SACXC,YAAa,SACbC,eAAgB,SAChBC,WAAY,SACZC,WAAY,SACZC,QAAS,SACTC,WAAY,SACZC,aAAc,SACdC,cAAe,SACfC,cAAe,SACfC,cAAe,SACfC,WAAY,SACZC,SAAU,SACVC,YAAa,SACbC,QAAS,SACTC,WAAY,SACZC,SAAU,SACVC,UAAW,SACXC,YAAa,SACbC,YAAa,SACbC,QAAS,SACTC,UAAW,SACXC,WAAY,SACZC,KAAM,SACNC,UAAW,SACXC,KAAM,SACN7sO,MAAO,SACP8sO,YAAa,SACbC,SAAU,SACVC,QAAS,SACTC,UAAW,SACXC,OAAQ,SACRC,MAAO,SACPC,MAAO,SACPC,SAAU,SACVC,cAAe,SACfC,UAAW,SACXC,aAAc,SACdC,UAAW,SACXC,WAAY,SACZC,UAAW,SACXC,qBAAsB,SACtBh8F,UAAW,SACXi8F,WAAY,SACZC,UAAW,SACXC,YAAa,SACbC,cAAe,SACfC,aAAc,SACdC,eAAgB,SAChBC,eAAgB,SAChBC,eAAgB,SAChBC,YAAa,SACbC,KAAM,SACNC,UAAW,SACXC,MAAO,SACPC,QAAS,SACTC,OAAQ,SACRC,iBAAkB,SAClBC,WAAY,SACZC,aAAc,SACdC,aAAc,SACdC,eAAgB,SAChBC,gBAAiB,SACjBC,kBAAmB,SACnBC,gBAAiB,SACjBC,gBAAiB,SACjBC,aAAc,SACdC,UAAW,SACXC,UAAW,SACXC,SAAU,SACVC,YAAa,SACbC,KAAM,SACNC,QAAS,SACTC,MAAO,SACPC,UAAW,SACXC,OAAQ,SACRC,UAAW,SACXC,OAAQ,SACRC,cAAe,SACfC,UAAW,SACXC,cAAe,SACfC,cAAe,SACfC,WAAY,SACZC,UAAW,SACXC,KAAM,SACNC,KAAM,SACNC,KAAM,SACNC,WAAY,SACZC,OAAQ,SACRzwO,IAAK,SACL0wO,UAAW,SACXC,UAAW,SACXC,YAAa,SACbC,OAAQ,SACRC,WAAY,SACZC,SAAU,SACVC,SAAU,SACVC,OAAQ,SACRC,OAAQ,SACRC,QAAS,SACTC,UAAW,SACXC,UAAW,SACXC,KAAM,SACNC,YAAa,SACbC,UAAW,SACXC,IAAK,SACLC,KAAM,SACNC,QAAS,SACTC,OAAQ,SACRC,UAAW,SACXC,OAAQ,SACRC,UAAW,SACXC,MAAO,SACPC,MAAO,SACPC,WAAY,SACZC,OAAQ,SACRC,YAAa,UArJf5I,GADAA,EAAeA,EAAa1pN,QAAQ,KAAM,KACd/kB,gBAuJkByuO,EAAAA,IAAAA,IAG1C6I,EAAa,CACf,CACEn4J,GAAI,+CACJo4J,QAAS,CAAC,oBAAqB,oBAC/Bn9G,QAAS,SAASksG,GAAAA,MACT,CAAClqO,SAASkqO,EAAK,IAAKlqO,SAASkqO,EAAK,IAAKlqO,SAASkqO,EAAK,OAGhE,CACEnnJ,GAAI,0BACJo4J,QAAS,CAAC,UAAW,UACrBn9G,QAAS,SAASksG,GAAAA,MACT,CACLlqO,SAASkqO,EAAK,GAAI,IAClBlqO,SAASkqO,EAAK,GAAI,IAClBlqO,SAASkqO,EAAK,GAAI,OAIxB,CACEnnJ,GAAI,0BACJo4J,QAAS,CAAC,OAAQ,OAClBn9G,QAAS,SAASksG,GAAAA,MACT,CACLlqO,SAASkqO,EAAK,GAAKA,EAAK,GAAI,IAC5BlqO,SAASkqO,EAAK,GAAKA,EAAK,GAAI,IAC5BlqO,SAASkqO,EAAK,GAAKA,EAAK,GAAI,QAO3Bj/O,EAAI,EAAGA,EAAIiwP,EAAW/vP,OAAQF,IAAK,KACtC83F,EAAKm4J,EAAWjwP,GAAG83F,GACnBq4J,EAAYF,EAAWjwP,GAAG+yI,QAC1BksG,EAAOnnJ,EAAGlxB,KAAKwgL,GACfnI,IACFoI,EAAW8I,EAAUlR,GAAAA,KAChBhiO,EAAIoqO,EAAS,QACbzjP,EAAIyjP,EAAS,QACb/lP,EAAI+lP,EAAS,QACbvxI,IAAK,QAKT74F,EAAInb,KAAKmb,EAAI,GAAK8yC,MAAMjuD,KAAKmb,GAAK,EAAInb,KAAKmb,EAAI,IAAM,IAAMnb,KAAKmb,EAAAA,KAChErZ,EAAI9B,KAAK8B,EAAI,GAAKmsD,MAAMjuD,KAAK8B,GAAK,EAAI9B,KAAK8B,EAAI,IAAM,IAAM9B,KAAK8B,EAAAA,KAChEtC,EAAIQ,KAAKR,EAAI,GAAKyuD,MAAMjuD,KAAKR,GAAK,EAAIQ,KAAKR,EAAI,IAAM,IAAMQ,KAAKR,EAAAA,KAGhE8uP,MAAQ,iBACJ,OAAStuP,KAAKmb,EAAI,KAAOnb,KAAK8B,EAAI,KAAO9B,KAAKR,EAAI,UAEtD+uP,MAAQ,eACPpzO,EAAInb,KAAKmb,EAAEvc,SAAS,IACpBkD,EAAI9B,KAAK8B,EAAElD,SAAS,IACpBY,EAAIQ,KAAKR,EAAEZ,SAAS,WACR,GAAZuc,EAAE/c,SAAa+c,EAAI,IAAMA,GACb,GAAZrZ,EAAE1D,SAAa0D,EAAI,IAAMA,GACb,GAAZtC,EAAEpB,SAAaoB,EAAI,IAAMA,GACtB,IAAM2b,EAAIrZ,EAAItC,CAAAA,CAAAA,CChOzB,SAASgvP,GAASjrP,EAAGuoD,GAAAA,IACfn/C,EAAIpJ,EAAE,GACR/D,EAAI+D,EAAE,GACNsP,EAAItP,EAAE,GACNhE,EAAIgE,EAAE,GAERoJ,EAAIqtF,GAAGrtF,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,GAAI,GAAI,WAC7BvsD,EAAIy6F,GAAGz6F,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,IAAK,WAC9Bj5C,EAAImnF,GAAGnnF,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,GAAI,GAAI,WAC7BtsD,EAAIw6F,GAAGx6F,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,IAAK,YAC9Bn/C,EAAIqtF,GAAGrtF,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,GAAI,GAAI,WAC7BvsD,EAAIy6F,GAAGz6F,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,GAAI,YAC7Bj5C,EAAImnF,GAAGnnF,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,GAAI,IAAK,YAC9BtsD,EAAIw6F,GAAGx6F,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,IAAK,UAC9Bn/C,EAAIqtF,GAAGrtF,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,GAAI,EAAG,YAC5BvsD,EAAIy6F,GAAGz6F,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,IAAK,YAC9Bj5C,EAAImnF,GAAGnnF,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,IAAK,IAAK,OAC/BtsD,EAAIw6F,GAAGx6F,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,IAAK,IAAK,YAC/Bn/C,EAAIqtF,GAAGrtF,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,IAAK,EAAG,YAC7BvsD,EAAIy6F,GAAGz6F,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,IAAK,IAAK,UAC/Bj5C,EAAImnF,GAAGnnF,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,IAAK,IAAK,YAG/Bn/C,EAAIo7D,GAAGp7D,EAFPnN,EAAIw6F,GAAGx6F,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,IAAK,GAAI,YAEjBj5C,EAAGtT,EAAGusD,EAAE,GAAI,GAAI,WAC7BvsD,EAAIwoE,GAAGxoE,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,GAAI,YAC7Bj5C,EAAIk1D,GAAGl1D,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,IAAK,GAAI,WAC9BtsD,EAAIuoE,GAAGvoE,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,IAAK,WAC9Bn/C,EAAIo7D,GAAGp7D,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,GAAI,GAAI,WAC7BvsD,EAAIwoE,GAAGxoE,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,IAAK,EAAG,UAC7Bj5C,EAAIk1D,GAAGl1D,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,IAAK,IAAK,WAC/BtsD,EAAIuoE,GAAGvoE,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,IAAK,WAC9Bn/C,EAAIo7D,GAAGp7D,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,GAAI,EAAG,WAC5BvsD,EAAIwoE,GAAGxoE,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,IAAK,GAAI,YAC9Bj5C,EAAIk1D,GAAGl1D,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,GAAI,IAAK,WAC9BtsD,EAAIuoE,GAAGvoE,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,GAAI,YAC7Bn/C,EAAIo7D,GAAGp7D,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,IAAK,GAAI,YAC9BvsD,EAAIwoE,GAAGxoE,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,GAAI,UAC7Bj5C,EAAIk1D,GAAGl1D,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,GAAI,GAAI,YAG7Bn/C,EAAI+mD,GAAG/mD,EAFPnN,EAAIuoE,GAAGvoE,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,IAAK,IAAK,YAElBj5C,EAAGtT,EAAGusD,EAAE,GAAI,GAAI,QAC7BvsD,EAAIm0D,GAAGn0D,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,IAAK,YAC9Bj5C,EAAI6gD,GAAG7gD,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,IAAK,GAAI,YAC9BtsD,EAAIk0D,GAAGl0D,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,IAAK,IAAK,UAC/Bn/C,EAAI+mD,GAAG/mD,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,GAAI,GAAI,YAC7BvsD,EAAIm0D,GAAGn0D,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,GAAI,YAC7Bj5C,EAAI6gD,GAAG7gD,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,GAAI,IAAK,WAC9BtsD,EAAIk0D,GAAGl0D,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,IAAK,IAAK,YAC/Bn/C,EAAI+mD,GAAG/mD,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,IAAK,EAAG,WAC7BvsD,EAAIm0D,GAAGn0D,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,IAAK,WAC9Bj5C,EAAI6gD,GAAG7gD,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,GAAI,IAAK,WAC9BtsD,EAAIk0D,GAAGl0D,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,GAAI,UAC7Bn/C,EAAI+mD,GAAG/mD,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,GAAI,GAAI,WAC7BvsD,EAAIm0D,GAAGn0D,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,IAAK,IAAK,WAC/Bj5C,EAAI6gD,GAAG7gD,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,IAAK,GAAI,WAG9Bn/C,EAAIstD,GAAGttD,EAFPnN,EAAIk0D,GAAGl0D,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,IAAK,WAEjBj5C,EAAGtT,EAAGusD,EAAE,GAAI,GAAI,WAC7BvsD,EAAI06D,GAAG16D,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,GAAI,YAC7Bj5C,EAAIonD,GAAGpnD,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,IAAK,IAAK,YAC/BtsD,EAAIy6D,GAAGz6D,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,IAAK,UAC9Bn/C,EAAIstD,GAAGttD,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,IAAK,EAAG,YAC7BvsD,EAAI06D,GAAG16D,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,GAAI,IAAK,YAC9Bj5C,EAAIonD,GAAGpnD,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,IAAK,IAAK,SAC/BtsD,EAAIy6D,GAAGz6D,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,IAAK,YAC9Bn/C,EAAIstD,GAAGttD,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,GAAI,EAAG,YAC5BvsD,EAAI06D,GAAG16D,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,IAAK,IAAK,UAC/Bj5C,EAAIonD,GAAGpnD,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,GAAI,IAAK,YAC9BtsD,EAAIy6D,GAAGz6D,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,IAAK,GAAI,YAC9Bn/C,EAAIstD,GAAGttD,EAAGnN,EAAGqT,EAAGtT,EAAGusD,EAAE,GAAI,GAAI,WAC7BvsD,EAAI06D,GAAG16D,EAAGoN,EAAGnN,EAAGqT,EAAGi5C,EAAE,IAAK,IAAK,YAC/Bj5C,EAAIonD,GAAGpnD,EAAGtT,EAAGoN,EAAGnN,EAAGssD,EAAE,GAAI,GAAI,WAC7BtsD,EAAIy6D,GAAGz6D,EAAGqT,EAAGtT,EAAGoN,EAAGm/C,EAAE,GAAI,IAAK,WAE9BvoD,EAAE,GAAKkrP,GAAM9hP,EAAGpJ,EAAE,IAClBA,EAAE,GAAKkrP,GAAMjvP,EAAG+D,EAAE,IAClBA,EAAE,GAAKkrP,GAAM57O,EAAGtP,EAAE,IAClBA,EAAE,GAAKkrP,GAAMlvP,EAAGgE,EAAE,IAGpB,SAASmrP,GAAI9qJ,EAAGj3F,EAAGnN,EAAG+D,EAAGjD,EAAGD,GAAAA,OAC1BsM,EAAI8hP,GAAMA,GAAM9hP,EAAGi3F,GAAI6qJ,GAAMlrP,EAAGlD,IACzBouP,GAAO9hP,GAAKrM,EAAMqM,IAAO,GAAKrM,EAAKd,EAAAA,CAG5C,SAASw6F,GAAGrtF,EAAGnN,EAAGqT,EAAGtT,EAAGgE,EAAGjD,EAAGD,GAAAA,OACrBquP,GAAKlvP,EAAIqT,GAAOrT,EAAID,EAAIoN,EAAGnN,EAAG+D,EAAGjD,EAAGD,EAAAA,CAG7C,SAAS0nE,GAAGp7D,EAAGnN,EAAGqT,EAAGtT,EAAGgE,EAAGjD,EAAGD,GAAAA,OACrBquP,GAAKlvP,EAAID,EAAMsT,GAAKtT,EAAIoN,EAAGnN,EAAG+D,EAAGjD,EAAGD,EAAAA,CAG7C,SAASqzD,GAAG/mD,EAAGnN,EAAGqT,EAAGtT,EAAGgE,EAAGjD,EAAGD,GAAAA,OACrBquP,GAAIlvP,EAAIqT,EAAItT,EAAGoN,EAAGnN,EAAG+D,EAAGjD,EAAGD,EAAAA,CAGpC,SAAS45D,GAAGttD,EAAGnN,EAAGqT,EAAGtT,EAAGgE,EAAGjD,EAAGD,GAAAA,OACrBquP,GAAI77O,GAAKrT,GAAKD,GAAIoN,EAAGnN,EAAG+D,EAAGjD,EAAGD,EAAAA,CAGvC,SAASsuP,GAAKruP,GAAAA,IAIVpC,EAFEqC,EAAID,EAAElC,OACR2mG,EAAQ,CAAC,YAAa,WAAY,WAAY,eAE3C7mG,EAAI,GAAIA,GAAKoC,EAAElC,OAAQF,GAAK,GAC/BswP,GAASzpJ,EAAO6pJ,GAAOtuP,EAAE8a,UAAUld,EAAI,GAAIA,KAE7CoC,EAAIA,EAAE8a,UAAUld,EAAI,QAChB0yG,EAAO,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OACpD1yG,EAAI,EAAGA,EAAIoC,EAAElC,OAAQF,IACxB0yG,EAAK1yG,GAAK,IAAMoC,EAAE+E,WAAWnH,KAAOA,EAAI,GAAK,MAC/C0yG,EAAK1yG,GAAK,IAAM,MAASA,EAAI,GAAK,GAC9BA,EAAI,GAAI,IACVswP,GAASzpJ,EAAO6L,GACX1yG,EAAI,EAAGA,EAAI,GAAIA,IAAK0yG,EAAK1yG,GAAK,SAErC0yG,EAAK,IAAU,EAAJrwG,EACXiuP,GAASzpJ,EAAO6L,GACT7L,CAAAA,CAkBT,SAAS6pJ,GAAOtuP,GAAAA,IAGZpC,EADE2wP,EAAU,OAET3wP,EAAI,EAAGA,EAAI,GAAIA,GAAK,EACvB2wP,EAAQ3wP,GAAK,GACXoC,EAAE+E,WAAWnH,IACZoC,EAAE+E,WAAWnH,EAAI,IAAM,IACvBoC,EAAE+E,WAAWnH,EAAI,IAAM,KACvBoC,EAAE+E,WAAWnH,EAAI,IAAM,WAErB2wP,CAAAA,CF1JPrK,GAAOR,GAAaQ,KAAKzpJ,KAAKipJ,IAC9B7pG,GAAO6pG,GAAa7pG,KAAKp/C,KAAKipJ,IE4JhC,IAAI8K,GAAU,mBAAmBhrM,MAAM,IAEvC,SAASirM,GAAKxuP,GAAAA,IAAAA,IACRD,EAAI,GACNqmD,EAAI,EACCA,EAAI,EAAGA,IACZrmD,GAAKwuP,GAASvuP,GAAU,EAAJomD,EAAQ,EAAM,IAAQmoM,GAASvuP,GAAU,EAAJomD,EAAU,WAC9DrmD,CAAAA,CAST,SAAS0uP,GAAmBzuP,GAAAA,OACnBT,OAAO8F,cACP,IAAJrF,IAAa,GACT,MAAJA,IAAe,GACX,SAAJA,IAAiB,IACb,WAAJA,IAAmB,IAUxB,SAAS0uP,GAAO3uP,GAAAA,OACMquP,GAAKruP,GALhBuN,IAAImhP,IAAoB9vP,KAAK,IAaxC,IAAIgwP,GAA2B,oCA9B/B,SAAa3rP,GAAAA,IACN,IAAIrF,EAAI,EAAGA,EAAIqF,EAAEnF,OAAQF,IAAKqF,EAAErF,GAAK6wP,GAAKxrP,EAAErF,IAAAA,OAC1CqF,EAAErE,KAAK,IAFhB,CA2BayvP,GAGM,UAEnB,SAASF,GAAM9hP,EAAGnN,GAAAA,GACZ0vP,GAAU,KAKRC,GAAW,MAAJxiP,IAAmB,MAAJnN,GAAAA,OACjBmN,GAAK,KAAOnN,GAAK,KAAO2vP,GAAO,KACzB,GAAa,MAANA,CAAAA,CAAAA,OAOdxiP,EAAInN,EAAK,WCrMrB,SAAS4vP,GAAIpwP,EAAKiJ,GAAAA,IACZonP,EAASC,EAdCnqP,EAAKixM,EAAAA,GAefp3M,IAAQqwP,EAAS,SACfvjM,GAhBQ3mD,EAgBGnG,EAhBEo3M,EAgB+B,GAA1B,IAAMp3M,EAAIZ,QAAW,GAftC,IAAII,MAAM43M,EAAM,GAAGl3M,KAAKiG,IAgBzB4/F,EAAQ,GACH7mG,EAAI,EAAGA,EAAI,IAAKA,IACvB6mG,EAAM7mG,GAAKA,EAAAA,IAETyoD,EAAI,MACCzoD,EAAI,EAAGA,EAAI,IAAKA,IAAK,KACxBmC,EAAI0kG,EAAM7mG,GACdyoD,GAAKA,EAAItmD,EAAIyrD,EAAEzmD,WAAWnH,IAAM,IAChC6mG,EAAM7mG,GAAK6mG,EAAMp+C,GACjBo+C,EAAMp+C,GAAKtmD,CAAAA,CAEbgvP,EAAUrwP,EACVswP,EAAYvqJ,CAAAA,MAEZA,EAAQuqJ,EAAAA,IAENlxP,EAAS6J,EAAK7J,OACduO,EAAI,EACJnN,EAAI,EACJ+kD,EAAM,OACDrmD,EAAI,EAAGA,EAAIE,EAAQF,IAG1BsB,GAAKA,GADLa,EAAI0kG,EADJp4F,GAAKA,EAAI,GAAK,OAEA,IACdo4F,EAAMp4F,GAAKo4F,EAAMvlG,GACjBulG,EAAMvlG,GAAKa,EACXyrD,EAAIi5C,GAAOA,EAAMp4F,GAAKo4F,EAAMvlG,IAAM,KAClC+kD,GAAOzkD,OAAO8F,aAAaqC,EAAK5C,WAAWnH,GAAK4tD,GAAAA,OAE3CvH,CAAAA,CCxCT,IAAIgrM,GAAoB,CACtBC,MAAO,EACPC,OAAQ,EACRC,KAAM,iBACS,IAgBjB,SAASC,GAAYC,EAAaC,EAAcC,EAAeC,GAAAA,KACxDxtP,EAAI,OACJ4Y,EAAI,MAGL60O,EAAa,IACjBJ,EAAYvjP,SAAQ,SAAS4jP,GAAAA,QAAAA,IAChBV,GAAkBU,KAAAA,MACrB,IAAIxrP,MAAM,uBAAyBwrP,GAE3CD,GAAcT,GAAkBU,EAAAA,IAAAA,KAI7Bx3M,QACH,yEAEEy3M,GAAsBL,EAAe7vP,KAAKy4C,SAASjK,OAAO,EAAG,IAC7D2hN,GAAuBL,EAAgB9vP,KAAKy4C,SAASjK,OAAO,EAAG,SAE9Do5D,EAAI5nG,KAAKowP,qBAAqBF,EAAoBC,GAAAA,KAClDxvP,IAA2B,GAAP,IAAbqvP,IAAAA,KACPK,cAAgBpB,GACnBiB,EACElwP,KAAK4nG,EACL5nG,KAAKswP,aAAatwP,KAAKW,GACvBX,KAAKuwP,WAAWR,IAClBvhN,OAAO,EAAG,QACP/8B,EAAI29O,GAAIpvP,KAAKqwP,cAAerwP,KAAKy4C,QAAAA,CC1DxC,SAAS+3M,GAAUrrP,GAAAA,GAEb,mBAAmB+/B,KAAK//B,GAAAA,MAEpB,IAAIV,MACR,4BAA8BU,EAAM,2CAGpC5D,EAAS,GACXkvP,EAAYtrP,EAAI/G,OACTF,EAAI,EAAGA,EAAIuyP,EAAWvyP,IAAK,KAC9BgmD,EAAW/+C,EAAIE,WAAWnH,GAuB5BqD,GArBA2iD,EAAW,IACE,KAAbA,GACa,KAAbA,GACa,KAAbA,GACa,KAAbA,GACa,KAAbA,GACa,KAAbA,GACa,KAAbA,GACa,KAAbA,GACa,KAAbA,GACa,MAAbA,GACa,MAAbA,GACAA,EAAW,IASD,KAFS,IADNA,EAAStlD,SAAS,KACEoE,OAAO,GAK9BmC,EAAIjH,EAAAA,CAAAA,OAGXqD,CAAAA,CC3BT,SAASmvP,GAAOhtP,GAAAA,GACS,YAAnB4gI,EAAAA,GAAAA,GAAO5gI,GAAAA,MACH,IAAIe,MACR,kEAGAksP,EAAS,CAAC,EAAD,KAER/2D,UAAY,SAASg3D,EAAOplM,EAAUo0H,GAAAA,GACzCA,EAAOA,IAAAA,EAEY,iBAAVgxE,GACa,mBAAbplM,GACS,kBAATo0H,EAAAA,MAED,IAAIn7K,MACR,+DAICksP,EAAO5yP,eAAe6yP,KACzBD,EAAOC,GAAS,CAAC,GAAD,IAGd17O,EAAQxQ,KAAKm2F,SAASj8F,SAAS,WACnC+xP,EAAOC,GAAO17O,GAAS,CAACs2C,IAAYo0H,GAE7B1qK,CAAAA,EAAAA,KAGJ27O,YAAc,SAAS37O,GAAAA,IACrB,IAAI07O,KAASD,EAAAA,GACZA,EAAOC,GAAO17O,GAAAA,cACTy7O,EAAOC,GAAO17O,GACqB,IAAtCrW,OAAO0uC,KAAKojN,EAAOC,IAAQxyP,eACtBuyP,EAAOC,IAAAA,EAET,QAGJ,OAGJE,QAAU,SAASF,GAAAA,GAClBD,EAAO5yP,eAAe6yP,GAAQ,KAC5Bp3O,EAAOhb,MAAMM,UAAUkE,MAAM/D,KAAKd,UAAW,GAC/C8W,EAAS,OAEN,IAAIC,KAASy7O,EAAOC,GAAQ,KAC3BjoC,EAAMgoC,EAAOC,GAAO17O,GAAAA,IAEtByzM,EAAI,GAAGhqN,MAAM+E,EAAS8V,EAG4Bw4H,CAFlD,MAAOA,GACHgyG,GAAa/iM,SACfA,GAAQja,MAAM,qBAAsBgrG,EAAGtpF,QAASspF,EAAAA,CAGhD22E,EAAI,IAAI1zM,EAAO1W,KAAK2W,EAAAA,CAEtBD,EAAO7W,QAAQ6W,EAAO5I,QAAQrM,KAAK6wP,YAAAA,CAAAA,EAAAA,KAItCE,UAAY,kBACRJ,CAAAA,CAAAA,CAIX,SAASK,GAAOC,GAAAA,KACRjxP,gBAAgBgxP,IAAAA,OACb,IAAIA,GAAOC,GAAAA,IAWhBlzH,EAAY,yBAAyBj6E,MAAM,SAC1C,IAAInkD,KAAKsxP,EACRA,EAAWlzP,eAAe4B,IAAMo+H,EAAUvxH,QAAQ7M,IAAM,SACrDA,GAAKsxP,EAAWtxP,IAAAA,KAOpBihD,GAAK,QAKLswM,cAAgB,EAoBvB,SAASC,GAAQC,EAAQ/hO,GAAAA,KAClB+hO,OAASA,EAAAA,KACT/hO,OAASA,EAAAA,KAETuxB,GAAK,QACLswM,cAAgB,EAGvB,SAASG,GAAerkP,EAAMskP,EAAQprE,EAAQkrE,EAAQ/hO,GAAAA,KAC9CrvB,gBAAgBqxP,IAAAA,OACb,IAAIA,GAAerkP,EAAMskP,EAAQprE,EAAQkrE,EAAQ/hO,GAAAA,KAIrDriB,KAAgB,UAATA,EAAmB,EAAI,OAC9BskP,OAASA,EAAAA,KACTprE,OAASA,EAEdirE,GAAQlyP,KAAKe,KAAMoxP,EAAQ/hO,EAAAA,CAG7B,SAASkiO,GAAcC,EAAaC,EAAOC,EAAON,EAAQ/hO,GAAAA,KAClDrvB,gBAAgBuxP,IAAAA,OACb,IAAIA,GAAcC,EAAaC,EAAOC,EAAON,EAAQ/hO,GAAAA,KAGzDmiO,YAAcA,EAAAA,KACdC,MAAQA,EAAAA,KACRC,MAAQA,EAAAA,KAERC,OAAS,QAETC,WAAa,EAElBT,GAAQlyP,KAAKe,KAAMoxP,EAAQ/hO,EAAAA,CAsC7B,SAASwiO,GAAMnkP,GAAAA,IAOTokP,EANAC,EAAsC,iBAAjB5zP,UAAU,GAAkBA,UAAU,GAAK,IAChEwZ,EAAOxZ,UAAU,GACjBgoB,EAAShoB,UAAU,GACnB6zP,EAAc7zP,UAAU,GACxB0sH,EAAU,GACVonI,EAAW,EAEXC,EAAiB,GACjBC,EAAuB,IACvBC,EAAoB,KAID,YAAnB9tH,EAAAA,GAAAA,GAFJ52H,EAAUA,GAAW,CAAC,KAGpBqkP,EAAcrkP,EAAQqkP,YACtBp6O,EAAOjK,EAAQiK,MAAQA,EACvBwO,EAASzY,EAAQyY,QAAUA,EAC3B6rO,EAActkP,EAAQk+L,UAAYl+L,EAAQskP,aAAeA,EAE/B,QAD1BI,EAAoB1kP,EAAQ2kP,YAAc,QAExCD,EAAkBvC,aAAeuC,EAAkBvC,cAAgB,GACnEuC,EAAkBtC,cAAgBsC,EAAkBtC,eAAiB,GACrEsC,EAAkBE,gBAChBF,EAAkBE,iBAAmB,IAEzCL,EAC8B,iBAArBvkP,EAAQukP,SAAwBvtP,KAAKkjB,IAAIla,EAAQukP,UAAY,WAC3DvkP,EAAQokP,YACjBA,EAAYpkP,EAAQokP,gBAAAA,IAEXpkP,EAAQwkP,iBACjBA,EAAiBxkP,EAAQwkP,gBAE3BC,EAAuBzkP,EAAQykP,sBAAwB,KAGzDtnI,EACEn9G,EAAQm9G,WAAY,IAAAmnI,EAAuB,CAAC,eAAiBnnI,GAE/DlzG,EAAOA,GAAQ,KACfo6O,GAAe,IAAMA,GAAe,MAAMl7O,cAAAA,IACtC07O,EAAmB7kP,EAAQ6kP,mBAAoB,EAC/CC,EAAY,CAAC,EAEbC,EAAM,CACRpnG,SAAU,CAAC,EACXqnG,YAAa,CAAC,GAGhBD,EAAIC,YAAYhC,OAASA,GAAAA,IAErBiC,EAAa,MACbC,EAAiBH,EAAIC,YAAYE,cAAgB,kBAC5CD,CAAAA,EAGTF,EAAIC,YAAYG,cAAgB,SAAS/xP,GACvC6xP,EAAa7xP,CAAAA,EAAAA,IAIXgyP,EAAc,CAChBC,GAAI,CAAC,QAAS,SACdh9O,GAAI,CAAC,QAAS,SACdC,GAAI,CAAC,QAAS,SACdC,GAAI,CAAC,OAAQ,SACbwZ,GAAI,CAAC,OAAQ,QACbujO,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,MAAO,QACZC,GAAI,CAAC,OAAQ,OACbC,IAAK,CAAC,KAAM,QACZC,GAAI,CAAC,QAAS,SACd/jO,GAAI,CAAC,QAAS,SACdC,GAAI,CAAC,QAAS,SACd+jO,GAAI,CAAC,QAAS,SACd7jO,GAAI,CAAC,OAAQ,SACb8jO,GAAI,CAAC,MAAO,QACZC,GAAI,CAAC,OAAQ,OACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,IAAK,CAAC,MAAO,QACbC,GAAI,CAAC,QAAS,SACdvhP,GAAI,CAAC,QAAS,SACdC,GAAI,CAAC,QAAS,SACdE,GAAI,CAAC,OAAQ,SACbqhP,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,IAAK,CAAC,MAAO,QACbz8I,GAAI,CAAC,OAAQ,QACb19D,OAAQ,CAAC,IAAK,yBACO,CAAC,IAAK,KAC3Bo6M,MAAO,CAAC,IAAK,qBACG,CAAC,IAAK,KACtBC,OAAQ,CAAC,KAAM,KACfC,QAAS,CAAC,IAAK,oBACA,CAAC,IAAK,MAGvB/B,EAAIC,YAAY+B,eAAiB,kBACxB3B,CAAAA,EAAAA,IAGL4B,EAAiBjC,EAAIC,YAAYgC,cAAgB,SAAS5zP,GAAAA,OACrDgyP,EAAYhyP,EAAAA,EAGrBqlB,EAASA,GAAU,SAEfwuO,EAAU,CACZC,OAAQ,SACRC,SAAU,YAERC,EAAUH,EAAQC,OAAAA,SAEbG,IAAAA,KAIFC,oBACLzwM,EACE,IAAI0wM,GACFC,GACA,EACA,GACCA,GACD,EACAC,KAAkBD,IAClBt2P,WAAa,YAEZw2P,YAAYp1P,KAAKq1P,cAAgBH,IAItC/C,EAAuB,IAEvB2C,EAAUH,EAAQE,QAAAA,CAAAA,SAGXS,IAAAA,KACFC,uBACLpD,EAAuB,IACvB2C,EAAUH,EAAQC,MAAAA,CAAAA,IAUhBY,EAAiC/C,EAAIC,YAAY8C,8BAAgC,SACnFzkO,EACAF,GAAAA,GAGgB,QAAbE,GAAqC,UAAdF,GACV,QAAbE,GAAqC,KAAdF,GACV,UAAbE,GAAuC,UAAdF,GACZ,QAAbE,GAAqC,UAAdF,EAAAA,MAElB,IAAIpsB,MAAM,0DAEdosB,IACFE,EACgB,KAAdF,GAAoC,WAAfA,EACH,WAAdE,EACE,SACA,SACa,KAAdF,GAAoC,SAAfA,GACR,WAAdE,GAEe,KAAdF,EAAoB,OAASA,GAAc,GAAKE,EADjD,QAGDA,CAAAA,EA6BT0hO,EAAIsC,YAAc,SAASpzP,GAAAA,IACrB8zP,EAAWX,IAAYH,EAAQC,OAAAA,OAE/Ba,GACFV,EAAY91P,KAAKe,MAGC,mBAAT2B,IAIXA,EAAK3B,MAEDy1P,GACFH,EAAUr2P,KAAKe,OANRA,IAAAA,EAqBXyyP,EAAI6C,UAAY,SAAS3zP,GAAAA,IACnB8zP,EAAWX,IAAYH,EAAQE,SAAAA,OAE/BY,GACFH,EAAUr2P,KAAKe,MAGG,mBAAT2B,IAIXA,EAAK3B,MAEDy1P,GACFV,EAAY91P,KAAKe,OANVA,IAAAA,EAiBXyyP,EAAIiD,cAAgB,kBACXZ,IAAYH,EAAQE,QAAAA,EAAAA,IAyBzBc,EAtBAC,EAAsB,SAASzuH,GAAAA,GAC7B2tH,IAAYH,EAAQE,SAAU,MAC1B,IAAIpwP,MACR0iI,EAAAA,mFAAAA,EAOF0uH,EAAoBpD,EAAIoD,iBAAmBpD,EAAIC,YAAYmD,iBAAmB,SAChFn+O,EACAo+O,GAAAA,IAEIC,EAAejE,GAAagE,EAAAA,GAC5B7nM,MAAMv2C,IAAWu2C,MAAM8nM,GAAAA,MACnB,IAAItxP,MAAM,4DAEXiT,EAAOijE,QAAQo7K,GAAcn6N,QAAQ,MAAO,KAMnD+5N,EAAMlD,EAAIkD,IAAMlD,EAAIC,YAAYiD,IADJ,iBAAnBzD,EAC6B,SAASx6O,GAAAA,GACzCu2C,MAAMv2C,GAAAA,MACF,IAAIjT,MAAM,+CAEXoxP,EAAiBn+O,EAAQw6O,EAAAA,EAEN,UAAnBA,EAC6B,SAASx6O,GAAAA,GACzCu2C,MAAMv2C,GAAAA,MACF,IAAIjT,MAAM,+CAGToxP,EAAiBn+O,EADtBA,GAAU,GAAKA,EAAS,EACM,GAEA,IAIE,SAASA,GAAAA,GACzCu2C,MAAMv2C,GAAAA,MACF,IAAIjT,MAAM,+CAEXoxP,EAAiBn+O,EAAQ,SAGhCs+O,EAAMvD,EAAIuD,GAAKvD,EAAIC,YAAYsD,GAAK,SAASt+O,GAAAA,GAC3Cu2C,MAAMv2C,GAAAA,MACF,IAAIjT,MAAM,8CAEXoxP,EAAiBn+O,EAAQ,IAG9Bu+O,EAAMxD,EAAIC,YAAYuD,GAAK,SAASv+O,GAAAA,GAClCu2C,MAAMv2C,GAAAA,MACF,IAAIjT,MAAM,8CAEXoxP,EAAiBn+O,EAAQ,IAG9BuhC,EAASw5M,EAAIx5M,MAAQw5M,EAAIC,YAAYz5M,MAAQ,SAASvhC,GAAAA,GACpDu2C,MAAMv2C,GAAAA,MACF,IAAIjT,MAAM,iDAEdqwP,IAAYH,EAAQC,OACfl9O,EAASw9O,GACPJ,IAAYH,EAAQE,SACtBn9O,OAAAA,CADF,EAKLw+O,EAAa,SAASr0P,GAAAA,OACpBizP,IAAYH,EAAQC,OACfO,KAAkBtzP,EAChBizP,IAAYH,EAAQE,SACtBhzP,OAAAA,CADF,EAKLs0P,EAAkB,SAASt0P,GAAAA,OACtBo3C,EAAMi9M,EAAWr0P,GAAAA,EAW1B4wP,EAAIC,YAAY0D,aAAe3D,EAAI2D,aAAe,SAASt1P,GACtB,iBAAxBmS,SAASnS,EAAO,MACzBgxP,EAAY7+O,SAASnS,EAAO,UA0D5Bu1P,EAtDAtG,EAAS,mCAETuG,EAAa7D,EAAIC,YAAY4D,UAAY,kBACpCvG,CAAAA,EAGLwG,EAAa9D,EAAIC,YAAY6D,UAAY,SAASz1P,GAAAA,OAElDivP,OAAAA,IADSjvP,GAAyB,oBAAoBokC,KAAKpkC,GAClDA,EAAMya,cAENw0O,EACNjsM,MAAM,IACNj2C,KAAI,iBACI,mBAAmBkzD,OAAOr8D,KAAKi+B,MAAsB,GAAhBj+B,KAAKm2F,UAAAA,IAElD37F,KAAK,IAGgB,OAAtBkzP,IACFC,GAAa,IAAI1C,GACfyC,EAAkBE,gBAClBF,EAAkBvC,aAClBuC,EAAkBtC,cAClBC,IAGGA,CAAAA,EAWT0C,EAAI8D,UAAY,SAASz1P,GAAAA,OACvBy1P,EAAUz1P,GACHd,IAAAA,EAWTyyP,EAAI6D,UAAY,kBACPA,GAAAA,EAAAA,IAKLE,EAAwB/D,EAAIC,YAAY8D,qBAAuB,SACjEC,GAAAA,IAGIC,EAAWD,EAAS5wM,oBACtB8wM,EAASD,EAAW,EAAI,IAAM,IAC9BE,EAASlyP,KAAKi+B,MAAMj+B,KAAKkjB,IAAI8uO,EAAW,KACxCG,EAAQnyP,KAAKkjB,IAAI8uO,EAAW,IAC5BI,EAAiB,CAACH,EAAQI,EAAMH,GAAS,IAAKG,EAAMF,GAAQ,KAAK33P,KAAK,UAE/D,CACP,KACAu3P,EAASjvM,cACTuvM,EAAMN,EAAS1vL,WAAa,GAC5BgwL,EAAMN,EAASzvL,WACf+vL,EAAMN,EAASO,YACfD,EAAMN,EAASQ,cACfF,EAAMN,EAASS,cACfJ,GACA53P,KAAK,KAILi4P,EAAwB1E,EAAIC,YAAYyE,qBAAuB,SACjEC,GAAAA,IAEIhiM,EAAOniD,SAASmkP,EAAY5oN,OAAO,EAAG,GAAI,IAC1ConB,EAAQ3iD,SAASmkP,EAAY5oN,OAAO,EAAG,GAAI,IAAM,EACjDqnB,EAAO5iD,SAASmkP,EAAY5oN,OAAO,EAAG,GAAI,IAC1C+5B,EAAOt1D,SAASmkP,EAAY5oN,OAAO,GAAI,GAAI,IAC3CmyB,EAAU1tD,SAASmkP,EAAY5oN,OAAO,GAAI,GAAI,IAC9CwyB,EAAU/tD,SAASmkP,EAAY5oN,OAAO,GAAI,GAAI,WAI9B,IAAIsS,KAAKsU,EAAMQ,EAAOC,EAAM0S,EAAM5H,EAASK,EAAS,IAItEq2L,EAAmB5E,EAAIC,YAAY2E,gBAAkB,SAASxhM,GAAAA,IAC5DyhM,EAAAA,QAAAA,IAEOzhM,IACTA,EAAO,IAAI/U,MAGT+U,aAAgB/U,KAClBw2M,EAAwBd,EAAqB3gM,OACxC,KAPoB,kMAOK3wB,KAAK2wB,GAAAA,MAG7B,IAAIpxD,MAAM,oDAFhB6yP,EAAwBzhM,CAAAA,CAAAA,OAI1BwgM,EAAeiB,CAAAA,EAIbC,EAAmB9E,EAAIC,YAAY6E,gBAAkB,SAASvqP,GAAAA,IAC5DzL,EAAS80P,EAAAA,MACA,WAATrpP,IACFzL,EAAS41P,EAAqBd,IAEzB90P,CAAAA,EAWTkxP,EAAI4E,gBAAkB,SAASxhM,GAAAA,OAC7BwhM,EAAgBxhM,GACT71D,IAAAA,EAWTyyP,EAAI8E,gBAAkB,SAASvqP,GAAAA,OACtBuqP,EAAgBvqP,EAAAA,EAAAA,IAmBrBwqP,EAhBAT,EAAStE,EAAIC,YAAYqE,MAAQ,SAASr/O,GAAAA,OACpC,IAAMzE,SAASyE,IAAS1U,OAAO,IAGrCy0P,EAAYhF,EAAIC,YAAY+E,SAAW,SAASC,GAAAA,OAE1C,MADRA,EAAYA,EAAU94P,aACI4vC,OAAOkpN,EAAUt5P,OAAAA,EAGzC8yP,EAAe,EACfrsM,EAAU,GACV5zB,EAAU,GACV0mO,EAAgB,EAChBC,EAAoB,GAEpBC,EAAQ,GAERC,GAAAA,EACAC,EAAoB9mO,EAEpB+mO,EAAgB,WAElB9G,EAAe,EACfyG,EAAgB,EAChB1mO,EAAU,GACV4zB,EAAU,GACV+yM,EAAoB,GAEpBK,GAAsBC,KACtBC,GAA0BD,IAAAA,EAG5BzF,EAAIC,YAAY0F,2BAA6B,SAASC,GACpDP,GAAAA,EACAC,EAAoBM,CAAAA,EAAAA,IAElBC,EAAuB,SAASD,GAC7BP,IACHC,EAAoBM,EAAAA,EAIxB5F,EAAIC,YAAY6F,6BAA+B,WAC7CT,GAAAA,EACAC,EAAoB9mO,CAAAA,EAAAA,IAGlBszB,EAAOkuM,EAAIC,YAAYnuM,IAAM,SAASriB,GAAAA,OACxCA,EAASA,EAAOtjC,WAChB+4P,GAAiBz1N,EAAO9jC,OAAS,EACjC25P,EAAkBx5P,KAAK2jC,GAEhB61N,CAAAA,EAGL9/O,EAASw6O,EAAIC,YAAYz6O,MAAQ,SAASnX,GAAAA,OACrCyjD,EACgB,IAArBpmD,UAAUC,OACN0C,EAAMlC,WACNJ,MAAMM,UAAUI,KAAKD,KAAKd,UAAW,OAIzCq6P,GAAkB/F,EAAIC,YAAY8F,eAAiB,SAASvwP,GAAAA,IAAAA,IAC1D1B,EAAM0B,EAAK7J,OACb6wC,EAAK,IAAIxoC,YAAYF,GACrBu1O,EAAK,IAAI/1O,WAAWkpC,GAEf1oC,KAAOu1O,EAAGv1O,GAAO0B,EAAK5C,WAAWkB,GAAAA,OACjC0oC,CAAAA,EAGLwpN,GAAgB,CAClB,CAAC,YAAa,YAAa,SAAU,mBACrC,CAAC,iBAAkB,YAAa,OAAQ,mBACxC,CAAC,oBAAqB,YAAa,SAAU,mBAC7C,CAAC,wBAAyB,YAAa,aAAc,mBACrD,CAAC,UAAW,UAAW,SAAU,mBACjC,CAAC,eAAgB,UAAW,OAAQ,mBACpC,CAAC,kBAAmB,UAAW,SAAU,mBACzC,CAAC,sBAAuB,UAAW,aAAc,mBACjD,CAAC,cAAe,QAAS,SAAU,mBACnC,CAAC,aAAc,QAAS,OAAQ,mBAChC,CAAC,eAAgB,QAAS,SAAU,mBACpC,CAAC,mBAAoB,QAAS,aAAc,mBAC5C,CAAC,eAAgB,eAAgB,SAAU,MAC3C,CAAC,SAAU,SAAU,SAAU,OAGjChG,EAAIC,YAAYgG,iBAAmB,kBAC1BD,EAAAA,EAAAA,IAGLE,GAAiBjrP,EAAQigB,UAAY,GAYzC8kO,EAAIC,YAAY0C,YAAc3C,EAAI2C,YAAc,SAASjsO,GAAAA,OAErDwvO,GADE7D,IAAYH,EAAQE,SACL1rO,EAAO+rO,GAEP/rO,EAEZnpB,IAAAA,EAAAA,IAkDL44P,GAtCAvD,GAAe5C,EAAIC,YAAY2C,YAAc5C,EAAI4C,YAAc,kBAC7DP,IAAYH,EAAQC,OACf+D,GAEAA,GAAiBzD,EAAAA,EAIxB2D,GAAMnrP,EAAQmrP,MAAO,EAYzBpG,EAAIC,YAAYoG,OAASrG,EAAIqG,OAAS,SAASh4P,GAAAA,OAC7C+3P,GAAM/3P,EACCd,IAAAA,EAYTyyP,EAAIC,YAAYqG,OAAStG,EAAIsG,OAAS,kBAC7BF,EAAAA,EAAAA,IAkCLG,GA7BAC,GAAexG,EAAIC,YAAYuG,YAAc,SAASl1K,GAOtD,GAGE,+BAA+B7+C,KAAK6+C,GACtC60K,GAAW70K,OACN,GAAK91B,MAAM81B,GAEX,KAAsC,IAbxB,MAAC,EAEpB,KACA,YACA,aACA,WACA,YAOwBv3E,QAAQu3E,GAAAA,MAG1B,IAAIt/E,MACR,gHACEs/E,EACA,wBALJ60K,GAAW70K,CAAAA,MAFX60K,GAAW3lP,SAAS8wE,EAAM,KAY9B0uK,EAAIC,YAAYwG,YAAc,kBACrBN,EAAAA,EAAAA,IA4BLO,GAxBAC,GAAe3G,EAAIC,YAAY0G,YAAc,SAASC,GAAAA,IAUlB,GATjB,MAAC,EAEpB,KACA,UACA,cACA,YACA,cAGiB7sP,QAAQ6sP,GAAAA,MACnB,IAAI50P,MACR,6EACE40P,EACA,wBAGNL,GAAWK,CAAAA,EAGb5G,EAAIC,YAAY4G,YAAc,kBACrBN,EAAAA,EAAAA,IAILO,GAAiB9G,EAAIC,YAAY6G,cAAgB,SAASroF,GAAAA,IAWnB,GAVlB,MAAC,EAEtB,KACA,aACA,SACA,UACA,WACA,OAGmB1kK,QAAQ0kK,GAAAA,MACrB,IAAIzsK,MACR,sEACEysK,EACA,wBAGNioF,GAAajoF,CAAAA,EAGfuhF,EAAIC,YAAY8G,cAAgB,kBACvBL,EAAAA,EA4BT1G,EAAIC,YAAY+G,eAAiBhH,EAAIgH,eAAiB,SACpD11K,EACAmtF,EACAmoF,GAAAA,OAEAJ,GAAYl1K,GACZw1K,GAAcroF,GACdkoF,GAAYC,GACLr5P,IAAAA,EAAAA,IAGL05P,GAAqB,CACvBl0I,MAAO,GACP6oH,QAAS,GACTsrB,OAAQ,GACRC,SAAU,GACVC,QAAS,IAGXpH,EAAIC,YAAYoH,oBAAsB,SAAS96P,GAAAA,IACS,IAAlDH,OAAO0uC,KAAKmsN,IAAoBltP,QAAQxN,GAAAA,MACpC,IAAIyF,MAAM,+DAEXi1P,GAAmB16P,EAAAA,EAG5ByzP,EAAIC,YAAYqH,sBAAwB,kBAC/BL,EAAAA,EAaTjH,EAAIC,YAAYsH,sBAAwBvH,EAAIwH,cAAgBxH,EAAIuH,sBAAwB,SACtFnrL,GAAAA,IAGK,IAAI3jC,KAAYwuN,GACfA,GAAmB37P,eAAemtC,IAAa2jC,EAAW3jC,KAC5DwuN,GAAmBxuN,GAAY2jC,EAAW3jC,IAAAA,OAGvClrC,IAAAA,EAGTyyP,EAAIC,YAAYwH,oBAAsB,SAASl7P,EAAK8B,GAAAA,IACI,IAAlDjC,OAAO0uC,KAAKmsN,IAAoBltP,QAAQxN,GAAAA,MACpC,IAAIyF,MAAM,gEAEVi1P,GAAmB16P,GAAO8B,CAAAA,EAAAA,IAKhCq5P,GAOAjF,GASA/kK,GACAC,GACAgqK,GApBAz0N,GAAQ,CAAC,EACT00N,GAAU,CAAC,EAEXC,GAAiB,GACjBC,GAAW,CAAC,EACZC,GAAa,CAAC,EACdC,GAAU,CAAC,EACXC,GAAa,CAAC,EACdC,GAAe,KAEfhlI,GAAO,EACPilI,GAAe,GACf/8H,GAAS,IAAI6yH,GAAO+B,GACpBoI,GAAWntP,EAAQmtP,UAAY,GAE/BC,GAAgB,CAAC,EACjBC,GAAkB,CAAC,EACnBC,GAAoB,GAsBpB/F,GAAS,SAATA,EAAkBgG,EAAIC,EAAKC,EAAKC,EAAIC,EAAIC,GAAAA,KACpCt7P,gBAAgBi1P,GAAAA,OACb,IAAIA,EAAOgG,EAAIC,EAAKC,EAAKC,EAAIC,EAAIC,GAGtCrtM,MAAMgtM,KAAKA,EAAK,GAChBhtM,MAAMitM,KAAMA,EAAM,GAClBjtM,MAAMktM,KAAMA,EAAM,GAClBltM,MAAMmtM,KAAKA,EAAK,GAChBntM,MAAMotM,KAAKA,EAAK,GAChBptM,MAAMqtM,KAAKA,EAAK,QAEfC,QAAU,CAACN,EAAIC,EAAKC,EAAKC,EAAIC,EAAIC,EAAAA,EAOxCz8P,OAAOw6B,eAAe47N,GAAOn2P,UAAW,KAAM,CAC5CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAQtBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,MAAO,CAC7CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAQtBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,MAAO,CAC7CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAQtBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,KAAM,CAC5CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAQtBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,KAAM,CAC5CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAQtBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,KAAM,CAC5CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAItBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,IAAK,CAC3CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAItBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,IAAK,CAC3CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAItBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,IAAK,CAC3CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAItBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,IAAK,CAC3CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAItBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,IAAK,CAC3CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAItBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,IAAK,CAC3CyN,IAAK,kBACIvM,KAAKu7P,QAAQ,IAEtB1rM,IAAK,SAAS/uD,GAAAA,KACPy6P,QAAQ,GAAKz6P,CAAAA,IAQtBjC,OAAOw6B,eAAe47N,GAAOn2P,UAAW,WAAY,CAClDyN,IAAK,kBACI7H,KAAK+iB,MAAMznB,KAAKm7P,IAAKn7P,KAAKi7P,GAAAA,IAQrCp8P,OAAOw6B,eAAe47N,GAAOn2P,UAAW,SAAU,CAChDyN,IAAK,kBACIvM,KAAKw7P,YAAYviN,MAAMgiN,EAAAA,IAQlCp8P,OAAOw6B,eAAe47N,GAAOn2P,UAAW,SAAU,CAChDyN,IAAK,kBACIvM,KAAKw7P,YAAYviN,MAAMmiN,EAAAA,IAQlCv8P,OAAOw6B,eAAe47N,GAAOn2P,UAAW,aAAc,CACpDyN,IAAK,kBACa,IAAZvM,KAAKi7P,IAGQ,IAAbj7P,KAAKk7P,KAGQ,IAAbl7P,KAAKm7P,KAGO,IAAZn7P,KAAKo7P,IAGO,IAAZp7P,KAAKq7P,IAGO,IAAZr7P,KAAKs7P,EAAAA,IAebrG,GAAOn2P,UAAUI,KAAO,SAAS4qC,GAAAA,MACxB,CAAC9pC,KAAKi7P,GAAIj7P,KAAKk7P,IAAKl7P,KAAKm7P,IAAKn7P,KAAKo7P,GAAIp7P,KAAKq7P,GAAIr7P,KAAKs7P,IACzDztP,IAAI8nP,GACJz2P,KAAK4qC,EAAAA,EAWVmrN,GAAOn2P,UAAU28P,SAAW,SAASpsO,GAAAA,IAC/B4rO,EAAK5rO,EAAO4rO,GAAKj7P,KAAKi7P,GAAK5rO,EAAO6rO,IAAMl7P,KAAKm7P,IAC7CD,EAAM7rO,EAAO4rO,GAAKj7P,KAAKk7P,IAAM7rO,EAAO6rO,IAAMl7P,KAAKo7P,GAC/CD,EAAM9rO,EAAO8rO,IAAMn7P,KAAKi7P,GAAK5rO,EAAO+rO,GAAKp7P,KAAKm7P,IAC9CC,EAAK/rO,EAAO8rO,IAAMn7P,KAAKk7P,IAAM7rO,EAAO+rO,GAAKp7P,KAAKo7P,GAC9CC,EAAKhsO,EAAOgsO,GAAKr7P,KAAKi7P,GAAK5rO,EAAOisO,GAAKt7P,KAAKm7P,IAAMn7P,KAAKq7P,GACvDC,EAAKjsO,EAAOgsO,GAAKr7P,KAAKk7P,IAAM7rO,EAAOisO,GAAKt7P,KAAKo7P,GAAKp7P,KAAKs7P,GAAAA,OAEpD,IAAIrG,GAAOgG,EAAIC,EAAKC,EAAKC,EAAIC,EAAIC,EAAAA,EAO1CrG,GAAOn2P,UAAU08P,UAAY,eACvB7uP,EAAI3M,KAAKi7P,GACTz7P,EAAIQ,KAAKk7P,IACTroP,EAAI7S,KAAKm7P,IACT57P,EAAIS,KAAKo7P,GACT/5P,EAAIrB,KAAKq7P,GACTz5P,EAAI5B,KAAKs7P,GAETzmF,EAASnwK,KAAK2jB,KAAK1b,EAAIA,EAAInN,EAAIA,GAI/Bk8P,GAHJ/uP,GAAKkoK,GAGWhiK,GAFhBrT,GAAKq1K,GAEmBt1K,EACxBsT,GAAKlG,EAAI+uP,EACTn8P,GAAKC,EAAIk8P,EAAAA,IAEL5mF,EAASpwK,KAAK2jB,KAAKxV,EAAIA,EAAItT,EAAIA,GAAAA,OAGnCm8P,GAAS5mF,EAELnoK,GAHJpN,GAAKu1K,GAGOt1K,GAJZqT,GAAKiiK,KAKHnoK,GAAKA,EACLnN,GAAKA,EACLk8P,GAASA,EACT7mF,GAAUA,GAGL,CACL57H,MAAO,IAAIg8M,GAAOpgF,EAAQ,EAAG,EAAGC,EAAQ,EAAG,GAC3C37H,UAAW,IAAI87M,GAAO,EAAG,EAAG,EAAG,EAAG5zP,EAAGO,GACrC6yK,OAAQ,IAAIwgF,GAAOtoP,EAAGnN,GAAIA,EAAGmN,EAAG,EAAG,GACnCovJ,KAAM,IAAIk5F,GAAO,EAAG,EAAGyG,EAAO,EAAG,EAAG,KAQxCzG,GAAOn2P,UAAUF,SAAW,SAASk3P,GAAAA,OAC5B91P,KAAKd,KAAK,MAOnB+1P,GAAOn2P,UAAU68P,SAAW,eACtBhvP,EAAI3M,KAAKi7P,GACXz7P,EAAIQ,KAAKk7P,IACTroP,EAAI7S,KAAKm7P,IACT57P,EAAIS,KAAKo7P,GACT/5P,EAAIrB,KAAKq7P,GACTz5P,EAAI5B,KAAKs7P,GAEPM,EAAO,GAAKjvP,EAAIpN,EAAIC,EAAIqT,GAExBgpP,EAAOt8P,EAAIq8P,EACXE,GAAQt8P,EAAIo8P,EACZG,GAAQlpP,EAAI+oP,EACZI,EAAOrvP,EAAIivP,EAAAA,OAIR,IAAI3G,GAAO4G,EAAMC,EAAMC,EAAMC,GAHxBH,EAAOx6P,EAAI06P,EAAOn6P,GAClBk6P,EAAOz6P,EAAI26P,EAAOp6P,EAAAA,EAShCqzP,GAAOn2P,UAAUm9P,aAAe,SAASC,GAAAA,IACnC34P,EAAI24P,EAAG34P,EAAIvD,KAAKi7P,GAAKiB,EAAGr6P,EAAI7B,KAAKm7P,IAAMn7P,KAAKq7P,GAC5Cx5P,EAAIq6P,EAAG34P,EAAIvD,KAAKk7P,IAAMgB,EAAGr6P,EAAI7B,KAAKo7P,GAAKp7P,KAAKs7P,GAAAA,OACzC,IAAIa,GAAM54P,EAAG1B,EAAAA,EAOtBozP,GAAOn2P,UAAUs9P,iBAAmB,SAASp4P,GAAAA,IACvCq4P,EAAMr8P,KAAKi8P,aAAaj4P,GACxBs4P,EAAMt8P,KAAKi8P,aAAa,IAAIE,GAAMn4P,EAAKT,EAAIS,EAAKR,EAAGQ,EAAKnC,EAAImC,EAAKP,IAAAA,OAC9D,IAAI84P,GAAUF,EAAI94P,EAAG84P,EAAIx6P,EAAGy6P,EAAI/4P,EAAI84P,EAAI94P,EAAG+4P,EAAIz6P,EAAIw6P,EAAIx6P,EAAAA,EAWhEozP,GAAOn2P,UAAUunC,MAAQ,eACnB40N,EAAKj7P,KAAKi7P,GACVC,EAAMl7P,KAAKk7P,IACXC,EAAMn7P,KAAKm7P,IACXC,EAAKp7P,KAAKo7P,GACVC,EAAKr7P,KAAKq7P,GACVC,EAAKt7P,KAAKs7P,GAAAA,OAEP,IAAIrG,GAAOgG,EAAIC,EAAKC,EAAKC,EAAIC,EAAIC,EAAAA,EAG1C7I,EAAIwC,OAASA,GAAAA,IASTuH,GAAc/J,EAAI+J,WAAa,SAASC,EAAIC,GAAAA,OACvCA,EAAGjB,SAASgB,EAAAA,EASjBE,GAAiB,IAAI1H,GAAO,EAAG,EAAG,EAAG,EAAG,EAAG,GAC/CxC,EAAImK,WAAanK,EAAIkK,eAAiBA,GAAAA,IAOlCE,GAAa,SAAS79P,EAAKq+C,GAAAA,IAEzBm9M,GAAWx7P,GAAAA,CAAAA,IAGX89P,GADSz/M,aAAmBg0M,GAAiB,KAAO,MAC7BxyP,OAAO0uC,KAAKgtN,IAAUn8P,OAAS,GAAGQ,SAAS,IACtEy+C,EAAQuD,GAAKk8M,EAEbtC,GAAWx7P,GAAO89P,EAClBvC,GAASuC,GAAcz/M,EAEvBwgF,GAAOizH,QAAQ,aAAczzM,EAAAA,CAAAA,EAmB/Bo1M,EAAIpB,eAAiBA,GAgBrBoB,EAAIlB,cAAgBA,GAWpBkB,EAAIsK,kBAAoB,SAAS/9P,EAAKq+C,GAAAA,OACpCu4M,EAAoB,uBAEpBiH,GAAW79P,EAAKq+C,GACTr9C,IAAAA,EAUTyyP,EAAIuK,mBAAqB,SAAS3/M,GAChCu4M,EAAoB,wBAEpBqH,GACE5/M,EAAQm0M,YAAY,GACpBn0M,EAAQm0M,YAAY,GACpBn0M,EAAQm0M,YAAY,GAAKn0M,EAAQm0M,YAAY,GAC7Cn0M,EAAQm0M,YAAY,GAAKn0M,EAAQm0M,YAAY,GAC7Cn0M,EAAQhuB,OAAAA,EAcZojO,EAAIyK,iBAAmB,SAASl+P,EAAKq+C,GACnCu4M,EAAoB,sBAGpBv4M,EAAQs0M,OAASkG,EAAML,GAAat4P,KAAK,MAEzC29P,GAAW79P,EAAKq+C,GAEhBwgF,GAAOizH,QAAQ,mBAAoBzzM,GAGnC29M,GAAkBv4P,MAAMm3C,SAAAA,EAAAA,IAGtBujN,GAAa1K,EAAIC,YAAYyK,UAAY,eACvCC,EAAMlF,KAAAA,OACVmF,GAAuBD,GAAAA,GAChBA,CAAAA,EAILlF,GAAqBzF,EAAIC,YAAYwF,kBAAoB,kBAC3DhH,IACArsM,EAAQqsM,GAAgB,kBACfyG,CAAAA,EAEFzG,CAAAA,EAGLmM,GAAyB,SAASD,EAAKE,GAAAA,OACzCA,EAA+B,kBAAbA,GAAyBA,EAC3Cz4M,EAAQu4M,GAAOzF,EACX2F,GACF/4M,EAAI64M,EAAM,UAELA,CAAAA,EAMLG,GAAuB9K,EAAIC,YAAY6K,oBAAsB,eAE3D3xM,EAAM,CACR4xM,MAFUtF,KAGVjnO,QAAS,WAEX2mO,EAAkBr5P,KAAKqtD,GAChBA,CAAAA,EAGLqsM,GAAsBC,KACtBC,GAA0BD,KAM1BuF,GAAqBhL,EAAIC,YAAY+K,kBAAoB,SAASziP,GAAAA,IAChE0iP,EAAe1iP,EAAM8oC,MAAM,QAEL,IAAxB45M,EAAat/P,QACQ,MAApBs/P,EAAa,IAAkC,MAApBA,EAAa,GAMjB,IAAxBA,EAAat/P,QACQ,MAApBs/P,EAAa,IAAkC,MAApBA,EAAa,KAOzCA,EAAe,EAJJ,EAAMA,EAAa,KAAO,EAAMA,EAAa,KAC3C,EAAMA,EAAa,KAAO,EAAMA,EAAa,KAC9C,EAAMA,EAAa,KAAO,EAAMA,EAAa,IAEvB,UAblC,KAEIC,EAAWtzL,WAAWqzL,EAAa,IACvCA,EAAe,CAACC,EAAUA,EAAUA,EAAU,aAY5CC,EAAa,IACR1/P,EAAI,EAAGA,EAAI,EAAGA,IACrB0/P,IACE,IAAMl5P,KAAKi+B,MAAoC,IAA9B0nC,WAAWqzL,EAAax/P,KAAWU,SAAS,KAC7DoE,OAAO,UAEJ46P,CAAAA,EAGLC,GAAqBpL,EAAIC,YAAYmL,kBAAoB,SAC3DnwP,GAAAA,IAEIsN,EAEmB,iBAAZtN,IACTA,EAAU,CACRowP,IAAKpwP,IAAAA,IAGLowP,EAAMpwP,EAAQowP,IACdC,EAAMrwP,EAAQqwP,IACdC,EAAMtwP,EAAQswP,IACdC,EAAMvwP,EAAQuwP,IACdC,EACuB,SAAzBxwP,EAAQywP,aAA0B,CAAC,IAAK,KAAM,KAAO,CAAC,IAAK,KAAM,QAEhD,iBAARL,GAAsC,MAAlBA,EAAI/8L,OAAO,GAAY,KAChDq9L,EAAW,IAAI/Y,GAASyY,GAAAA,GACxBM,EAASpqJ,GACX8pJ,EAAMM,EAAS7P,aACV,IAAK,cAAcrpN,KAAK44N,GAAAA,MACvB,IAAIr5P,MACR,kBAAoBq5P,EAAM,2CAKb,iBAARA,GAAoB,oBAAoB54N,KAAK44N,KACtDA,EAAM,IAAMA,EAAI,GAAKA,EAAI,GAAKA,EAAI,GAAKA,EAAI,GAAKA,EAAI,GAAKA,EAAI,IAG5C,iBAARA,GAAoB,oBAAoB54N,KAAK44N,GAAM,KACxDlmP,EAAM3E,SAAS6qP,EAAItvN,OAAO,GAAI,IAClCsvN,EAAOlmP,GAAO,GAAM,IACpBmmP,EAAOnmP,GAAO,EAAK,IACnBomP,EAAY,IAANpmP,CAAAA,CAAAA,QAAAA,IAICmmP,QAAAA,IACCE,GAAuBH,IAAQC,GAAOA,IAAQC,EAAAA,GAGnC,iBAARF,EACT9iP,EAAQ8iP,EAAM,IAAMI,EAAY,WAGzB,IADCxwP,EAAQokP,UAEZ92O,EAAQg7O,EAAG8H,EAAM,KAAO,IAAMI,EAAY,QAI1CljP,EAAQi7O,EAAG6H,EAAM,KAAO,IAAMI,EAAY,QAG3C,QAAI,IAAOD,GAAsC,YAAf35H,EAAAA,GAAAA,GAAO25H,GAAkB,IAE5DA,IAAQhwM,MAAMgwM,EAAItxP,IAGN,IAAVsxP,EAAItxP,EAAAA,MACE,CAAC,KAAM,KAAM,KAAMuxP,EAAY,IAAIh/P,KAAK,QAKjC,iBAAR4+P,EACT9iP,EAAQ,CAAC8iP,EAAKC,EAAKC,EAAKE,EAAY,IAAIh/P,KAAK,aAGtC,IADCwO,EAAQokP,UAEZ92O,EAAQ,CACNg7O,EAAG8H,EAAM,KACT9H,EAAG+H,EAAM,KACT/H,EAAGgI,EAAM,KACTE,EAAY,IACZh/P,KAAK,UAIP8b,EAAQ,CACNi7O,EAAG6H,EAAM,KACT7H,EAAG8H,EAAM,KACT9H,EAAG+H,EAAM,KACTE,EAAY,IACZh/P,KAAK,aAKM,iBAAR4+P,EACT9iP,EAAQ,CAAC8iP,EAAKC,EAAKC,EAAKC,EAAKC,EAAY,IAAIh/P,KAAK,aAG3C,IADCwO,EAAQokP,UAEZ92O,EAAQ,CAACg7O,EAAG8H,GAAM9H,EAAG+H,GAAM/H,EAAGgI,GAAMhI,EAAGiI,GAAMC,EAAY,IAAIh/P,KAC3D,UAKF8b,EAAQ,CAACi7O,EAAG6H,GAAM7H,EAAG8H,GAAM9H,EAAG+H,GAAM/H,EAAGgI,GAAMC,EAAY,IAAIh/P,KAC3D,YAKH8b,CAAAA,EAGLqjP,GAAc5L,EAAIC,YAAY2L,WAAa,kBACtCxzI,CAAAA,EAGLyzI,GAAa7L,EAAIC,YAAY4L,UAAY,SAAS5wP,GAAAA,IAEhDzF,GADJyF,EAAUA,GAAW,CAAC,GACHzF,MAAQ,GACvB4iH,EAAUn9G,EAAQm9G,SAAWwzI,KAC7BE,EAAwB7wP,EAAQ6wP,uBAAyB,GACzDC,EAAa9wP,EAAQ8wP,aAAc,EACnCC,EAAiBx2P,EAAK7J,OACtBsgQ,EAAWhxP,EAAQgxP,SACnBC,EAAY,SAAS12P,GAAAA,OAChBA,CAAAA,EAAAA,GAEiB,OAAtBmqP,QAAAA,IAAqCsM,EAAAA,MACjC,IAAIj6P,MACR,4DAGsB,OAAtB2tP,IACFuM,EAAYtM,GAAWsM,UAAUD,EAAU,QAGzCE,EAAgB,CAAC,GAAD,IAChB/zI,IACFA,EAAU,CAAC,oBAETg0I,EAAYnxP,EAAQoxP,qBAAuB,GAM3CC,GAJFH,OAAAA,IADS/M,GAAMY,IAAIuM,qBACHnN,GAAMY,IAAIuM,qBAAqB/2P,EAAM4iH,GAErC,CAAE5iH,KAAMA,EAAMg3P,aAAc,KAG9BA,cACbzgQ,MAAMC,QAAQ8/P,GACXA,EAAsBr/P,KAAK,KAC3Bq/P,EAAsB3/P,YAAAA,GAEM,IAA9BggQ,EAAc32P,KAAK7J,SACrBygQ,EAAUtgQ,KAAK,CACbS,IAAK,SACL8B,MAAO89P,EAAc32P,KAAK7J,UAAAA,IAExBogQ,GACFK,EAAUtgQ,KAAK,CACbS,IAAK,UACL8B,MAAO29P,KAKgB,GAAzBM,EAAe3gQ,OAAAA,GACb2gQ,EAAej7M,MAAM,KAAK1lD,OAAS,GAAM,EAC3CygQ,EAAUtgQ,KAAK,CACbS,IAAK,SACL8B,MAAOi+P,QAEJ,CACLF,EAAUtgQ,KAAK,CACbS,IAAK,SACL8B,MAAO,IAAMi+P,EAAiB,UAG3B,IAAIp4M,EAAI,EAAGA,EAAIk4M,EAAUzgQ,OAAQuoD,GAAK,EAAG,GACnB,gBAArBk4M,EAAUl4M,GAAG3nD,IAAuB,SAClCkgQ,EAAmB,GAGjBhhQ,EAAI,EACRA,EAAI0gQ,EAAcK,aAAan7M,MAAM,KAAK1lD,OAAS,EACnDF,GAAK,EAELghQ,EAAiB3gQ,KAAK,QAGxB2gQ,EAAiB3gQ,KAAKsgQ,EAAUl4M,GAAG7lD,OACnC+9P,EAAUl4M,GAAG7lD,MAAQ,IAAMo+P,EAAiBhgQ,KAAK,KAAO,KAMhEqlD,EAAI,UACC,IAAIuH,EAAI,EAAGA,EAAI+yM,EAAUzgQ,OAAQ0tD,IACpCvH,EAAI,IAAMs6M,EAAU/yM,GAAG9sD,IAAM,IAAM6/P,EAAU/yM,GAAGhrD,OAElDyjD,EAAI,MAC8B,IAA9Bq6M,EAAc32P,KAAK7J,SACrBmmD,EAAI,UACJA,EAAIo6M,EAAUC,EAAc32P,OAC5Bs8C,EAAI,eAIJ46M,GAAW1M,EAAIC,YAAYyM,QAAU,SAASxpI,GAAAA,IAC5CypI,EAAazpI,EAAKj+G,OAClBzP,EAAO0tH,EAAK1tH,KACZo3P,EAAmB1pI,EAAK6nI,MACxB8B,EAAoB3pI,EAAK4pI,cAE7BlC,GAAuBgC,GAAAA,GACvB96M,EAAI,iBACJA,EAAI,WAAaoxE,EAAKsiI,oBAAsB,QAC5C1zM,EAAI,cAAgBoxE,EAAKwiI,wBAA0B,QACnD5zM,EACE,cACE8lB,WAAWsrL,EAAIhgI,EAAK6pI,SAASC,cAC7B,IACAp1L,WAAWsrL,EAAIhgI,EAAK6pI,SAASE,cAC7B,IACA/J,EAAIhgI,EAAK6pI,SAASG,WAClB,IACAhK,EAAIhgI,EAAK6pI,SAASI,WAClB,KAEiB,OAAjBjqI,EAAKkqI,SACPt7M,EACE,aACEoxM,EAAIhgI,EAAKkqI,QAAQJ,aACjB,IACA9J,EAAIhgI,EAAKkqI,QAAQH,aACjB,IACA/J,EAAIhgI,EAAKkqI,QAAQF,WACjB,IACAhK,EAAIhgI,EAAKkqI,QAAQD,WACjB,KAIgB,OAAlBjqI,EAAKmqI,UACPv7M,EACE,cACEoxM,EAAIhgI,EAAKmqI,SAASL,aAClB,IACA9J,EAAIhgI,EAAKmqI,SAASJ,aAClB,IACA/J,EAAIhgI,EAAKmqI,SAASH,WAClB,IACAhK,EAAIhgI,EAAKmqI,SAASF,WAClB,KAIe,OAAjBjqI,EAAKoqI,SACPx7M,EACE,aACEoxM,EAAIhgI,EAAKoqI,QAAQN,aACjB,IACA9J,EAAIhgI,EAAKoqI,QAAQL,aACjB,IACA/J,EAAIhgI,EAAKoqI,QAAQJ,WACjB,IACAhK,EAAIhgI,EAAKoqI,QAAQH,WACjB,KAIc,OAAhBjqI,EAAKqqI,QACPz7M,EACE,YACEoxM,EAAIhgI,EAAKqqI,OAAOP,aAChB,IACA9J,EAAIhgI,EAAKqqI,OAAON,aAChB,IACA/J,EAAIhgI,EAAKqqI,OAAOL,WAChB,IACAhK,EAAIhgI,EAAKqqI,OAAOJ,WAChB,KAIuB,iBAAlBjqI,EAAKs8H,UAA2C,IAAlBt8H,EAAKs8H,UAC5C1tM,EAAI,aAAeoxE,EAAKs8H,UAG1Bp0H,GAAOizH,QAAQ,UAAW,CACxB0M,MAAO6B,EACPY,YAAarF,GAAawE,GAC1BA,WAAYA,EACZzpI,KAAM1tH,IAERs8C,EAAI,aAAe+6M,EAAoB,QACvC/6M,EAAI,MACJA,EAAI,cAEA27M,EAAcj4P,EAAK/I,KAAK,aAExB41P,IAAYH,EAAQE,WAEtBqL,GAAe,OAGjB7C,GAAuBiC,GAAAA,GACvBhB,GAAU,CACRr2P,KAAMi4P,EACNr1I,QAASwzI,KACTK,SAAUY,IAEZ/6M,EAAI,UACG86M,CAAAA,EAGLc,GAAY1N,EAAIC,YAAYyN,SAAW,eACrC5/P,EACFrC,EACAkiQ,EAAoB,OAEjB7/P,EAAI,EAAGA,GAAKo1H,GAAMp1H,IACrBq6P,GAAar6P,GAAGi9P,MAAQtF,KACxB0C,GAAar6P,GAAGg/P,cAAgBrH,KAAAA,IAG7B33P,EAAI,EAAGA,GAAKo1H,GAAMp1H,IACrB6/P,EAAkB7hQ,KAChB4gQ,GAAQ,CACNznP,OAAQnX,EACR0H,KAAM4vP,EAAMt3P,GACZi9P,MAAO5C,GAAar6P,GAAGi9P,MACvB+B,cAAe3E,GAAar6P,GAAGg/P,cAC/BC,SAAU5E,GAAar6P,GAAGi/P,SAC1BK,QAASjF,GAAar6P,GAAGs/P,QACzBC,SAAUlF,GAAar6P,GAAGu/P,SAC1BC,QAASnF,GAAar6P,GAAGw/P,QACzBC,OAAQpF,GAAar6P,GAAGy/P,OACxB/N,SAAU2I,GAAar6P,GAAG0xP,SAC1BgG,oBAAqBA,GACrBE,wBAAyBA,MAI/BkF,GAAuBpF,IAAAA,GACvB1zM,EAAI,sBACA87M,EAAO,cACNniQ,EAAI,EAAGA,EAAIy3H,GAAMz3H,IACpBmiQ,GAAQD,EAAkBliQ,GAAK,QAEjCqmD,EAAI87M,EAAO,KACX97M,EAAI,UAAYoxE,IAChBpxE,EAAI,MACJA,EAAI,UACJs5E,GAAOizH,QAAQ,iBAGbwP,GAAU,SAAS/lN,GACrBsjF,GAAOizH,QAAQ,UAAW,CACxBv2M,KAAMA,EACNgK,IAAKA,EACL44M,UAAWA,GACXmB,UAAWA,MAAAA,IAGT/jN,EAAKgmN,kBACPhmN,EAAK22M,aAAeiM,KACpB54M,EAAI,MACJA,EAAI,eACJA,EAAI,cAAgBisM,GAAUj2M,EAAKimN,iBACnCj8M,EAAI,mBACyB,iBAAlBhK,EAAKkmN,UACdl8M,EAAI,cAAgBhK,EAAKkmN,UAE3Bl8M,EAAI,iBACJA,EAAI,iBACJA,EAAI,MACJA,EAAI,YAIJm8M,GAAW,eACR,IAAIC,KAAWh7N,GACdA,GAAM5nC,eAAe4iQ,MAAAA,IAErBpO,IAAAA,IACCA,GAA6BC,EAAUz0P,eAAe4iQ,KAEvDL,GAAQ36N,GAAMg7N,GAAAA,EAMlBC,GAAa,SAASC,GACxBA,EAAQ3P,aAAeiM,KAAAA,IAEnBzvP,EAAU,GACdA,EAAQnP,KAAK,CAAES,IAAK,OAAQ8B,MAAO,aACnC4M,EAAQnP,KAAK,CAAES,IAAK,UAAW8B,MAAO,UACtC4M,EAAQnP,KAAK,CACXS,IAAK,OACL8B,MACE,IACA,CACE60P,EAAIkL,EAAQt9P,GACZoyP,EAAIkL,EAAQh/P,GACZ8zP,EAAIkL,EAAQt9P,EAAIs9P,EAAQz9P,OACxBuyP,EAAIkL,EAAQh/P,EAAIg/P,EAAQx9P,SACxBnE,KAAK,KACP,MAEJwO,EAAQnP,KAAK,CACXS,IAAK,SACL8B,MAAO,IAAM+/P,EAAQxxO,OAAOzwB,WAAa,UAIvC+yP,EAASkP,EAAQhJ,MAAM,GAAG34P,KAAK,MACnCo/P,GAAU,CACRr2P,KAAM0pP,EACNmN,oBAAqBpxP,EACrBgxP,SAAUmC,EAAQ3P,eAEpB3sM,EAAI,WAGFu8M,GAAc,eACX,IAAIC,KAAcjG,GACjBA,GAAc/8P,eAAegjQ,IAC/BH,GAAW9F,GAAciG,GAAAA,EAK3BC,GAAgC,SAAS96E,EAAQ+6E,GAAAA,IAE/C5gQ,EADA6gQ,EAAU,GAEVC,EAAK,GAAOF,EAAgB,OAC3B5gQ,EAAI,EAAKA,EAAI,EAAKA,GAAK8gQ,EAC1BD,EAAQ3iQ,KAAK8B,GAAAA,GAEf6gQ,EAAQ3iQ,KAAK,GAEW,GAApB2nL,EAAO,GAAGvvJ,OAAe,KACvBm9N,EAAK,CACPn9N,OAAQ,EACR3b,MAAOkrK,EAAO,GAAGlrK,OAEnBkrK,EAAO3vK,QAAQu9O,EAAAA,CAAAA,GAEuB,GAApC5tE,EAAOA,EAAO9nL,OAAS,GAAGu4B,OAAe,KACvCpkB,EAAK,CACPokB,OAAQ,EACR3b,MAAOkrK,EAAOA,EAAO9nL,OAAS,GAAG4c,OAEnCkrK,EAAO3nL,KAAKgU,EAAAA,CAAAA,IAAAA,IAEVgyC,EAAM,GACN7+C,EAAQ,EAEHxH,EAAI,EAAGA,EAAIgjQ,EAAQ9iQ,OAAQF,IAAK,KACvCmC,EAAI6gQ,EAAQhjQ,GACLmC,EAAI6lL,EAAOxgL,EAAQ,GAAGixB,QAAQjxB,IAAAA,IACjCiH,EAAIu5K,EAAOxgL,GAAOixB,OAElBp3B,GAAKc,EAAIsM,IADLu5K,EAAOxgL,EAAQ,GAAGixB,OACHhqB,GAEnBy0P,EAASl7E,EAAOxgL,GAAOsV,MACvBqmP,EAASn7E,EAAOxgL,EAAQ,GAAGsV,MAE/BupC,GACEkzM,EAAS/yP,KAAKqX,OAAO,EAAIxc,GAAK6hQ,EAAO,GAAK7hQ,EAAI8hQ,EAAO,IAAIziQ,SAAS,KAClE64P,EAAS/yP,KAAKqX,OAAO,EAAIxc,GAAK6hQ,EAAO,GAAK7hQ,EAAI8hQ,EAAO,IAAIziQ,SAAS,KAClE64P,EAAS/yP,KAAKqX,OAAO,EAAIxc,GAAK6hQ,EAAO,GAAK7hQ,EAAI8hQ,EAAO,IAAIziQ,SAAS,YAE/D2lD,EAAIpqB,MAAAA,EAGTmnO,GAAoB,SAASjkN,EAAS4jN,GASxCA,IAAkBA,EAAgB,QAC9BM,EAAmBpE,KACnBxL,EAASqP,GAA8B3jN,EAAQ6oI,OAAQ+6E,GAEvDvzP,EAAU,GACdA,EAAQnP,KAAK,CAAES,IAAK,eAAgB8B,MAAO,MAC3C4M,EAAQnP,KAAK,CAAES,IAAK,SAAU8B,MAAO,cACrC4M,EAAQnP,KAAK,CAAES,IAAK,OAAQ8B,MAAO,IAAMmgQ,EAAgB,MACzDvzP,EAAQnP,KAAK,CAAES,IAAK,gBAAiB8B,MAAO,MAC5C4M,EAAQnP,KAAK,CAAES,IAAK,QAAS8B,MAAO,8BACpC4M,EAAQnP,KAAK,CAAES,IAAK,SAAU8B,MAAO,8BAErCw9P,GAAU,CACRr2P,KAAM0pP,EACNmN,oBAAqBpxP,EACrB6wP,sBAAuB,CAAC,mBACxBG,SAAU6C,IAEZh9M,EAAI,UAEJlH,EAAQ6zM,aAAeiM,KACvB54M,EAAI,mBAAqBlH,EAAQrwC,MACjCu3C,EAAI,8BACA+sM,EACF,YACAqE,EAAItrL,WAAWhtB,EAAQi0M,OAAO,KAC9B,IACAqE,EAAItrL,WAAWhtB,EAAQi0M,OAAO,KAC9B,IACmB,IAAjBj0M,EAAQrwC,KAEVskP,GACEqE,EAAItrL,WAAWhtB,EAAQi0M,OAAO,KAC9B,IACAqE,EAAItrL,WAAWhtB,EAAQi0M,OAAO,KAGhCA,GACEqE,EAAItrL,WAAWhtB,EAAQi0M,OAAO,KAC9B,IACAqE,EAAItrL,WAAWhtB,EAAQi0M,OAAO,KAC9B,IACAqE,EAAItrL,WAAWhtB,EAAQi0M,OAAO,KAC9B,IACAqE,EAAItrL,WAAWhtB,EAAQi0M,OAAO,KAGlC/sM,EADA+sM,GAAU,KAGNj0M,EAAQhuB,QACVk1B,EAAI,YAAclH,EAAQhuB,OAAOzwB,WAAa,KAEhD2lD,EAAI,aAAeg9M,EAAmB,QACtCh9M,EAAI,uBACJA,EAAI,MACJA,EAAI,WAGFi9M,GAAmB,SAASnkN,EAASokN,GAAAA,IACnCC,EAAoBxJ,KACpByJ,EAAkBxE,KAEtBsE,EAA8BljQ,KAAK,CACjCqjQ,aAAcF,EACdG,UAAWF,IAGbtkN,EAAQ6zM,aAAeyQ,EAAAA,IACnBj0P,EAAU,GACdA,EAAQnP,KAAK,CAAES,IAAK,OAAQ8B,MAAO,aACnC4M,EAAQnP,KAAK,CAAES,IAAK,cAAe8B,MAAO,MAC1C4M,EAAQnP,KAAK,CAAES,IAAK,YAAa8B,MAAO,MACxC4M,EAAQnP,KAAK,CAAES,IAAK,aAAc8B,MAAO,MACzC4M,EAAQnP,KAAK,CACXS,IAAK,OACL8B,MAAO,IAAMu8C,EAAQm0M,YAAY3jP,IAAI8nP,GAAKz2P,KAAK,KAAO,MAExDwO,EAAQnP,KAAK,CAAES,IAAK,QAAS8B,MAAO60P,EAAIt4M,EAAQo0M,SAChD/jP,EAAQnP,KAAK,CAAES,IAAK,QAAS8B,MAAO60P,EAAIt4M,EAAQq0M,SAChDhkP,EAAQnP,KAAK,CAAES,IAAK,YAAa8B,MAAO4gQ,EAAoB,SACxDrkN,EAAQhuB,QACV3hB,EAAQnP,KAAK,CACXS,IAAK,SACL8B,MAAO,IAAMu8C,EAAQhuB,OAAOzwB,WAAa,MAI7C0/P,GAAU,CACRr2P,KAAMo1C,EAAQs0M,OACdmN,oBAAqBpxP,EACrBgxP,SAAUrhN,EAAQ6zM,eAEpB3sM,EAAI,WAGFu9M,GAAc,SAASL,GAAAA,IACrB3E,EAAAA,IACCA,KAAcvC,GACbA,GAASx8P,eAAe++P,KACtBvC,GAASuC,aAAuBzL,GAClCiQ,GAAkB/G,GAASuC,IAClBvC,GAASuC,aAAuBvL,IACzCiQ,GAAiBjH,GAASuC,GAAa2E,GAAAA,EAM3CM,GAAY,SAAS3Q,GAAAA,IAGlB,IAAIzxP,KAFTyxP,EAAOF,aAAeiM,KACtB54M,EAAI,MACU6sM,EAAAA,OACJzxP,GAAAA,IACD,UACH4kD,EAAI,OAASyxM,EAAG5E,EAAOzxP,KAAAA,MAAAA,IAEpB,iBACH4kD,EAAI,OAASyxM,EAAG5E,EAAOzxP,KAI7B4kD,EAAI,MACJA,EAAI,WAGFy9M,GAAa,eACXC,EAAAA,IACCA,KAAaxH,GACZA,GAAQ18P,eAAekkQ,IACzBF,GAAUtH,GAAQwH,GAAAA,EAKpBC,GAAiB,eAEd,IAAInB,KADTx8M,EAAI,eACmBu2M,GAEnBA,GAAc/8P,eAAegjQ,IAC7BjG,GAAciG,GAAY7P,cAAgB,GAE1C3sM,EACE,IACEw8M,EACA,IACAjG,GAAciG,GAAY7P,aAC1B,QAMRrzH,GAAOizH,QAAQ,kBACfvsM,EAAI,OAGF49M,GAAoB,WACtB9P,GAAW+K,IAAMD,KACjB54M,EAAI,MACJA,EAAI,qBACJA,EAAI,MAAQ8tM,GAAW9vP,GACvBgiD,EAAI,MAAQ8tM,GAAWl3O,GACvBopC,EAAI,OAAS8tM,GAAW+P,YAAY/P,GAAW5gP,GAAK,KACpD8yC,EAAI,OAAS8tM,GAAW+P,YAAY/P,GAAWzqJ,GAAK,KACpDrjD,EAAI,MAAQ8tM,GAAW1xP,GACvB4jD,EAAI,MACJA,EAAI,WAGF89M,GAAc,eAGX,IAAI1B,KAFTp8M,EAAI,YAEgB5e,GACdA,GAAM5nC,eAAe4iQ,MAAAA,IAErBpO,IAAAA,IACCA,GAA6BC,EAAUz0P,eAAe4iQ,KAEvDp8M,EAAI,IAAMo8M,EAAU,IAAMh7N,GAAMg7N,GAASzP,aAAe,QAI9D3sM,EAAI,OAGF+9M,GAAwB,cACtBzjQ,OAAO0uC,KAAKgtN,IAAUn8P,OAAS,EAAG,KAE/B,IAAI0+P,KADTv4M,EAAI,eACmBg2M,GAEnBA,GAASx8P,eAAe++P,IACxBvC,GAASuC,aAAuBzL,IAChCkJ,GAASuC,GAAY5L,cAAgB,GAErC3sM,EACE,IAAMu4M,EAAa,IAAMvC,GAASuC,GAAY5L,aAAe,QAKnErzH,GAAOizH,QAAQ,yBACfvsM,EAAI,QAIJg+M,GAAuB,SAASV,GAAAA,GAC9BhjQ,OAAO0uC,KAAKgtN,IAAUn8P,OAAS,EAAG,KAE/B,IAAI0+P,KADTv4M,EAAI,eACmBg2M,GAEnBA,GAASx8P,eAAe++P,IACxBvC,GAASuC,aAAuBrK,EAAIlB,eACpCgJ,GAASuC,GAAY5L,cAAgB,GACrCqJ,GAASuC,GAAY5L,aAAe2Q,GAEpCt9M,EACE,IAAMu4M,EAAa,IAAMvC,GAASuC,GAAY5L,aAAe,QAInErzH,GAAOizH,QAAQ,wBACfvsM,EAAI,QAIJi+M,GAAiB,cACf3jQ,OAAO0uC,KAAKktN,IAASr8P,OAAS,EAAG,KAC/B6jQ,EAAAA,IAECA,KADL19M,EAAI,iBACck2M,GAEdA,GAAQ18P,eAAekkQ,IACvBxH,GAAQwH,GAAW/Q,cAAgB,GAEnC3sM,EAAI,IAAM09M,EAAY,IAAMxH,GAAQwH,GAAW/Q,aAAe,QAIlErzH,GAAOizH,QAAQ,iBACfvsM,EAAI,QAIJk+M,GAAwB,SAASC,GACnCrF,GAAuBqF,EAAUd,cAAc,GAC/Cr9M,EAAI,MACJA,EAAI,iDACJ89M,KACAC,KACAC,GAAqBG,EAAUb,WAC/BW,KACAN,KACA39M,EAAI,MACJA,EAAI,WAGFo+M,GAAe,eAablB,EAAgC,GAEpCf,KACAsB,KACAlB,KACAgB,GAAYL,GAEZ5jI,GAAOizH,QAAQ,gBACf2Q,EAA8Bp1P,QAAQo2P,IACtCA,GAAsB,CACpBb,aAAczJ,GACd0J,UAAWllJ,OAAOC,mBAEpBihB,GAAOizH,QAAQ,qBAGb8R,GAAuB,WACzB/kI,GAAOizH,QAAQ,4BACV,IAAI5yP,EAAI,EAAGA,EAAI05P,EAAkBx5P,OAAQF,IAAK,KAC7C0tD,EAAMgsM,EAAkB15P,GAC5Bm/P,GAAuBzxM,EAAI4xM,OAAO,GAClCj5M,EAAIqH,EAAI36B,SACRszB,EAAI,UAENs5E,GAAOizH,QAAQ,6BAGb+R,GAA0B,SAAStoN,GACrC8/M,GAAQ9/M,EAAKuoN,UAAYzI,GAAQ9/M,EAAKuoN,WAAa,CAAC,EACpDzI,GAAQ9/M,EAAKuoN,UAAUvoN,EAAKxpB,WAAawpB,EAAKqG,EAAAA,EAG5CmiN,GAAU,SACZvC,EACAsC,EACA/xO,EACA0vO,EACAuC,GAAAA,IAEIzoN,EAAO,CACTqG,GAAI,KAAO/hD,OAAO0uC,KAAK5H,IAAOvnC,OAAS,GAAGQ,SAAS,IACnD4hQ,eAAgBA,EAChBsC,SAAUA,EACV/xO,UAAWA,EACX0vO,SAAUA,EACVuC,eAAgBA,IAAAA,EAChBC,SAAU,CAAC,GAAD,OAGZplI,GAAOizH,QAAQ,UAAW,CACxBv2M,KAAMA,EACNggD,SAAUv6F,OAGZ2lC,GAAM4U,EAAKqG,IAAMrG,EACjBsoN,GAAwBtoN,GACjBA,EAAKqG,EAAAA,EAGVsiN,GAAW,SAASC,GAAAA,IACjB,IAAIjlQ,EAAI,EAAG6E,EAAI01P,GAAcr6P,OAAQF,EAAI6E,EAAG7E,IAAK,KAChDyiQ,EAAUoC,GAAQ9jQ,KACpBe,KACAmjQ,EAAajlQ,GAAG,GAChBilQ,EAAajlQ,GAAG,GAChBilQ,EAAajlQ,GAAG,GAChBu6P,GAAcv6P,GAAG,QACjB,IAGEq0P,IACFC,EAAUmO,IAAAA,GAAW,IAGnBv8M,EAAQ++M,EAAajlQ,GAAG,GAAG4lD,MAAM,KACrC++M,GAAwB,CACtBjiN,GAAI+/M,EACJmC,SAAU1+M,EAAM,GAChBrzB,UAAWqzB,EAAM,IAAM,KAG3By5E,GAAOizH,QAAQ,WAAY,CACzBnrN,MAAOA,GACPy9N,WAAY/I,IAAAA,EAIZgJ,GAAO,SAAoB74M,GAAAA,OAC7BA,EAAG84M,IAAM,sBAEE94M,EAAG7rD,MAAMqB,KAAM7B,UAWU49B,CAVhC,MAAO16B,GAAAA,IACH4zC,EAAQ5zC,EAAE4zC,OAAS,IAClBA,EAAMzoC,QAAQ,UAASyoC,EAAQA,EAAM6O,MAAM,QAAQ,QACpD/nB,EACF,qBACAkZ,EAAM6O,MAAM,MAAM,GAAGA,MAAM,KAAK,GAChC,KACAziD,EAAEqnD,QAAAA,IACAs7L,GAAa/iM,QAAS,MAIlB,IAAIx8C,MAAMs3B,GAHhBioN,GAAa/iM,QAAQja,MAAMjL,EAAG16B,GAC1B2iP,GAAa3jF,OAAOA,MAAMtkI,EAAAA,CAAAA,EAMpCyuB,EAAG84M,IAAIC,IAAM/4M,EACNA,EAAG84M,GAAAA,EAGRE,GAAe,SAAS1sO,EAAMvhB,GAAAA,IAiD5BrX,EACF6E,EACA0gQ,EACAC,EACAC,EACAC,EACAC,EACA1gK,EACA2gK,EAAAA,GAGFL,GADAluP,EAAQA,GAAS,CAAC,GACKkuP,gBAAkB,UACzCE,EAAiBpuP,EAAMouP,gBAYpBpuP,EAAMwuP,YAAcJ,IACrBh+N,GAAMw0N,IAAe8I,UACrBt9N,GAAMw0N,IAAe8I,SAASQ,IAC9B99N,GAAMw0N,IAAe8I,SAASQ,GAAgBhD,WAE9CiD,EAAgB/9N,GAAMw0N,IAAe8I,SAASQ,GAAgBhD,UAGzDkD,GAAkBh+N,GAAMw0N,IAAesG,WAC1CkD,EAAiBh+N,GAAMw0N,IAAesG,WAInCkD,GAAkBD,EAAcM,YACnCL,EAAiBD,EAAcM,UAAU,IAGb,iBAAnBL,IACTA,EAAiBD,EAAcC,IAK7BA,GAAgB,KAClBE,GAAAA,EACAD,EAAU,GACL1lQ,EAAI,EAAG6E,EAAI+zB,EAAK14B,OAAQF,EAAI6E,EAAG7E,KAClCilG,EAAKwgK,EAAe7sO,EAAKzxB,WAAWnH,KAElC0lQ,EAAQrlQ,KAAKuB,OAAO8F,aAAau9F,IAEjCygK,EAAQrlQ,KAAKu4B,EAAK54B,IAKhB0lQ,EAAQ1lQ,GAAGmH,WAAW,IAAM,IAE9Bw+P,GAAAA,GAGJ/sO,EAAO8sO,EAAQ1kQ,KAAK,QAIxBhB,EAAI44B,EAAK14B,YAAAA,IAEFylQ,GAAiC,IAAN3lQ,GAC5B44B,EAAKzxB,WAAWnH,EAAI,IAAM,IAE5B2lQ,GAAAA,GAEF3lQ,IAAAA,IAEG2lQ,EAAAA,OACI/sO,EAAAA,IAGT8sO,EAAUruP,EAAM0uP,MAAQ,GAAK,CAAC,IAAK,KAC9B/lQ,EAAI,EAAG6E,EAAI+zB,EAAK14B,OAAQF,EAAI6E,EAAG7E,IAAK,KAEvC4lQ,GADA3gK,EAAKrsE,EAAKzxB,WAAWnH,KACT,IACD,EAAG,MAEN,IAAIuG,MACR,yBACEvG,EACA,eACA44B,EACA,qDAGN8sO,EAAQrlQ,KAAKulQ,GACbF,EAAQrlQ,KAAK4kG,GAAM2gK,GAAO,WAErBhkQ,OAAO8F,aAAajH,WAAM,EAAWilQ,EAAAA,EAG1CM,GAAazR,EAAIC,YAAYwR,UAAYzR,EAAIyR,UAAY,SAC3DptO,EACAvhB,GAAAA,OAeOiuP,GAAa1sO,EAAMvhB,GACvBqmB,QAAQ,MAAO,QACfA,QAAQ,MAAO,OACfA,QAAQ,MAAO,QAGhBuoO,GAAa1R,EAAIC,YAAYyR,UAAY,SAASh+O,GACpD0xO,IAAQliI,IAAQ,GAChBilI,GAAajlI,IAAQ,CACnB6nI,MAAO,EACP+B,cAAe,EACftN,SAAUt1I,OAAOs1I,GACjB+N,OAAQ,KACRF,SAAU,KACVD,QAAS,KACTE,QAAS,KACTP,SAAU,CACRC,YAAa,EACbC,YAAa,EACbC,UAAWhjJ,OAAOx2F,EAAO,IACzBy5O,UAAWjjJ,OAAOx2F,EAAO,MAG7Bi+O,GAASzuI,IACT2iI,EAAqBT,EAAML,GAAAA,EAGzB6M,GAAW,SAASC,EAAYC,GAAAA,IAC9BjsF,EAAYl1K,EAAOC,EAAAA,OAEvB0uP,EAAcwS,GAAmBxS,EAEP,iBAAfuS,IACThsF,EAAao8E,EAAc4P,EAAWztP,eAClCrY,MAAMC,QAAQ65K,KAChBl1K,EAAQk1K,EAAW,GACnBj1K,EAASi1K,EAAW,KAIpB95K,MAAMC,QAAQ6lQ,KAChBlhQ,EAAQkhQ,EAAW,GAAKpP,GACxB7xP,EAASihQ,EAAW,GAAKpP,IAGvBjnM,MAAM7qD,KACRA,EAAQ+iB,EAAO,GACf9iB,EAAS8iB,EAAO,KAGd/iB,EAAQ,OAASC,EAAS,SAC5B49C,GAAQ3b,KACN,0GAEFliC,EAAQsB,KAAK0S,IAAI,MAAOhU,GACxBC,EAASqB,KAAK0S,IAAI,MAAO/T,IAG3B8iB,EAAS,CAAC/iB,EAAOC,GAET0uP,EAAYvjN,OAAO,EAAG,QACvB,IACCnrC,EAASD,IACX+iB,EAAS,CAAC9iB,EAAQD,IAAAA,MAAAA,IAGjB,IACCA,EAAQC,IACV8iB,EAAS,CAAC9iB,EAAQD,IAKxB+gQ,GAAUh+O,GAGVq+O,GAAavpN,IAEbsJ,EAAIkgN,IAEc,IAAdC,IACFngN,EAAImgN,GAAY,MAEC,IAAfC,IACFpgN,EAAIogN,GAAa,MAEnB9mI,GAAOizH,QAAQ,UAAW,CACxBsO,WAAYzpI,IAAAA,EAIZivI,GAAc,SAASrkQ,GACrBA,EAAI,GAAKA,GAAKo1H,KAChBkiI,EAAMxgP,OAAO9W,EAAG,GAChBq6P,GAAavjP,OAAO9W,EAAG,GACvBo1H,KACI6hI,EAAc7hI,KAChB6hI,EAAc7hI,IAAAA,KAEXkvI,QAAQrN,GAAAA,EAIb4M,GAAW,SAAS7jQ,GAClBA,EAAI,GAAKA,GAAKo1H,KAChB6hI,EAAcj3P,EAAAA,EAIdukQ,GAAoBrS,EAAIC,YAAYoS,iBAAmBrS,EAAIqS,iBAAmB,kBACzEjN,EAAMz5P,OAAS,GAiBpB2mQ,GAAU,SAASjC,EAAU/xO,EAAWrjB,GAAAA,IAExCs3P,EADEhmQ,OAAAA,EAAMgP,OAEVN,EAAUA,GAAW,CAAC,EAEtBo1P,OAAAA,IACEA,EAAyBA,EAAWn9N,GAAMw0N,IAAe2I,SAC3D/xO,OAAAA,IACEA,EAA0BA,EAAY4U,GAAMw0N,IAAeppO,UAC7Di0O,EAAoBlC,EAASjsP,mBAAAA,IAG3BwjP,GAAQ2K,SAAAA,IACR3K,GAAQ2K,GAAmBj0O,GAE3B/xB,EAAMq7P,GAAQ2K,GAAmBj0O,QAAAA,IAEjCspO,GAAQyI,SAAAA,IACRzI,GAAQyI,GAAU/xO,GAElB/xB,EAAMq7P,GAAQyI,GAAU/xO,IAAAA,IAEpBrjB,EAAQu3P,gBACVhkN,GAAQ3b,KACN,0CACEw9N,EACA,OACA/xO,EACA,kDAKH/xB,GAAQ0O,EAAQw3P,YAER,OADXlmQ,EAAMq7P,GAAOlwE,MAAUp5J,MAErB/xB,EAAMq7P,GAAOlwE,MAAPg7E,QAGHnmQ,CAAAA,EAGLomQ,GAAW3S,EAAIC,YAAY0S,QAAU,eACnC1G,EAAWvB,KACXwB,EAAY,SAAS12P,GAAAA,OAChBA,CAAAA,EAAAA,IAOJ,IAAIjJ,KALiB,OAAtBozP,IACFuM,EAAYtM,GAAWsM,UAAUD,EAAU,IAE7Cn6M,EAAI,MACJA,EAAI,cAAgB2/M,GAAUvF,EAAU,SAAW9M,GAAMxuM,UAAY,KACrDq2M,GACVA,GAAmB37P,eAAeiB,IAAQ06P,GAAmB16P,IAC/DulD,EACE,IACEvlD,EAAIwvC,OAAO,EAAG,GAAGjzB,cACjBvc,EAAIwvC,OAAO,GACX,KACA01N,GAAUvF,EAAUjF,GAAmB16P,KACvC,KAIRulD,EAAI,kBAAoB2/M,GAAUvF,EAAUtI,IAAiB,KAC7D9xM,EAAI,MACJA,EAAI,WAGF8gN,GAAc5S,EAAIC,YAAY2S,WAAa,SAAS33P,GAAAA,IAElD43P,GADJ53P,EAAUA,GAAW,CAAC,GAEZuqP,qBAAuBA,GAAAA,OACjCkF,KACA54M,EAAI,MACJA,EAAI,kBACJA,EAAI,UAAY+gN,EAAyB,QAEpC1M,KAAUA,GAAW,aAClBA,IAAAA,IACD,YACHr0M,EAAI,4CAED,aACHA,EAAI,4CAED,WACHA,EAAI,sCAED,WACHA,EAAI,0DAGAghN,EAAM,GAAK3M,GACoB,MAA/B2M,EAAI/2N,OAAO+2N,EAAInnQ,OAAS,KAC1Bw6P,GAAW3lP,SAAS2lP,IAAY,KACV,iBAAbA,IACTr0M,EAAI,qCAAuCyxM,EAAG4C,IAAY,YAG3DO,KAAYA,GAAa,cACtBA,IAAAA,IACD,aACH50M,EAAI,oCAED,SACHA,EAAI,qCAED,UACA,UACHA,EAAI,wCAED,WACHA,EAAI,+BAGJy0M,IAQFz0M,EAAI,cAAgBy0M,IAEtBn7H,GAAOizH,QAAQ,cACfvsM,EAAI,MACJA,EAAI,WAGFihN,GAAc/S,EAAIC,YAAY8S,WAAa,WAC7CjhN,EAAI,WACJA,EAAI,MACJA,EAAI,UAAY2sM,EAAe,IAE/B3sM,EAAI,SAAW2sM,EAAe,QAC9B3sM,EAAI,UAAY2sM,EAAe,GAAK,QACV,OAAtBkB,GACF7tM,EAAI,YAAc8tM,GAAW+K,IAAM,QAErC74M,EAAI,UAAYwrM,EAAS,MAAQA,EAAS,OAC1CxrM,EAAI,OAGFkhN,GAAahT,EAAIC,YAAY+S,UAAY,WAC3ClhN,EAAI,QAAUouM,GACdpuM,EAAI,sBAGFmhN,GAAWjT,EAAIC,YAAYgT,QAAU,eACnC/lQ,EAAI,aAER4kD,EAAI,QACJA,EAAI,MAAQ2sM,EAAe,IAC3B3sM,EAAI,2BACC,IAAIrmD,EAAI,EAAGA,GAAKgzP,EAAchzP,IAEX,mBADT2mD,EAAQ3mD,GAEnBqmD,GAAK5kD,EAAIklD,EAAQ3mD,MAAM8E,OAAO,IAAM,sBAEzB6hD,EAAQ3mD,GACjBqmD,GAAK5kD,EAAIklD,EAAQ3mD,IAAI8E,OAAO,IAAM,aAElCuhD,EAAI,wBAMRohN,GAAiBlT,EAAIC,YAAYiT,cAAgB,WACnD3N,IACAM,EAAqBrnO,GAErB4sG,GAAOizH,QAAQ,iBAEf2U,KACAtF,KACAyC,KACAD,KAC0B,OAAtBvQ,GAA4B+P,KAChCiD,KACAC,KAAAA,IAEIO,EAAejO,EAAAA,OACnB+N,KACAF,KACAjhN,EAAI,aACJA,EAAI,GAAKqhN,GACTrhN,EAAI,SAEJ+zM,EAAqBT,EAAML,IAEpBvmO,EAAQ/xB,KAAK,OAGlB2mQ,GAAWpT,EAAIC,YAAYmT,QAAU,SAAS59P,GAAAA,OACzC,IAAI02J,KAAK,CAAC65F,GAAevwP,IAAQ,CACtC+E,KAAM,qBA4BN+jD,GAAU0hM,EAAI1hM,OAAS0hM,EAAIC,YAAY3hM,OAASsyM,IAAK,SACvDr2P,EACAU,GAAAA,OAIuB,iBAFvBA,EAAUA,GAAW,CAAC,GAGpBA,EAAU,CACRo4P,SAAUp4P,GAGZA,EAAQo4P,SAAWp4P,EAAQo4P,UAAY,gBAGjC94P,GAAAA,UAAAA,EACDgB,OACI23P,KAAAA,IACJ,OACHlT,EAAIh5M,KAAK/rC,EAAQo4P,UAAAA,MAAAA,IAEd,qBACItN,GAAemN,MAAAA,IACnB,cACIE,GAAQF,MAAAA,IACZ,cACA,sBAGM3hB,GAAa3+F,KACwB,mBAArC2+F,GAAa3+F,IAAIuZ,gBAAAA,OAGrBolF,GAAa3+F,KACZ2+F,GAAa3+F,IAAIuZ,gBAAgBinG,GAAQF,aAAAA,EAI7C1kN,GAAQ3b,KACN,oHAID,oBACA,oBACCygO,EAAU,GACVC,EAAcL,KAAAA,IAEhBI,EAAU5rH,GAAK6rH,EAE4BA,CAD3C,MAAO3kQ,GACP0kQ,EAAU5rH,GAAK8rH,SAASjtO,mBAAmBgtO,IAAAA,CAAAA,MAG3C,iCACAt4P,EAAQo4P,SACR,WACAC,EAAAA,IAEC,wBAEgD,oBAAjDlnQ,OAAOC,UAAUF,SAASK,KAAK+kP,IAC/B,KACIkiB,EACF,0EACEC,EACF,uIAEEz4P,EAAQw4P,eACVA,EAAex4P,EAAQw4P,aACvBC,EAAY,QAGVC,EACF,kIAEAF,EACA,IACAC,EACA,wCACAnmQ,KAAK+wD,OAAO,iBACZ,MACAkoD,KAAKC,UAAUxrG,GACf,6BACE24P,EAAKriB,GAAalyN,OAAAA,OAEX,OAAPu0O,GACFA,EAAG9hQ,SAAS0T,MAAMmuP,GAEbC,CAAAA,CAAAA,MAED,IAAI5hQ,MACR,0EAGD,oBAEgD,oBAAjD5F,OAAOC,UAAUF,SAASK,KAAK+kP,IAC/B,KAEIsiB,EACF,kJAFa54P,EAAQ64P,UAAY,mCAMjC,uBACA74P,EAAQo4P,SALR,kDAQEU,EAAiBxiB,GAAalyN,OAAAA,GAEX,OAAnB00O,EAAyB,CAC3BA,EAAejiQ,SAAS0T,MAAMquP,GAAAA,IAC1BG,EAAQzmQ,KACZwmQ,EAAejiQ,SAASC,gBAAgByyM,cACtC,cACAn+K,OAAS,WACT0tO,EAAejiQ,SAASihH,MAAQ93G,EAAQo4P,SACxCU,EAAejiQ,SAASC,gBACrByyM,cAAc,cACdt5K,cAAc+oO,qBAAqB50O,KAClC20O,EAAM11M,OAAO,oBAIdy1M,CAAAA,CAAAA,MAED,IAAI/hQ,MACR,sEAGD,sBAEgD,oBAAjD5F,OAAOC,UAAUF,SAASK,KAAK+kP,IAAAA,MAkBzB,IAAIv/O,MACR,wEAjBEkiQ,EACF,kIAIA3mQ,KAAK+wD,OAAO,gBAAiBrjD,GAJ7B,4BAOEk5P,EAAmB5iB,GAAalyN,OAAAA,GACX,OAArB80O,IACFA,EAAiBriQ,SAAS0T,MAAM0uP,GAChCC,EAAiBriQ,SAASihH,MAAQ93G,EAAQo4P,UAExCc,GAAsC,oBAAXzhB,OAC7B,OAAOyhB,EAAAA,MAAAA,IAOR,cACA,iBACK5iB,GAAaz/O,SAAS+nC,SAASN,KAAOhsC,KAAK+wD,OACjD,gBACArjD,GAAAA,QAAAA,OAGK,SASTm5P,GAAY,SAASC,GAAAA,OAAAA,IAErBtoQ,MAAMC,QAAQo8P,KAAsBA,GAASruP,QAAQs6P,IAAe,UAIhEnvP,GAAAA,IACD,KACHu9O,GAAc,YAEX,KACHA,GAAc,GAAK,eAEhB,KACHA,GAAc,GAAK,eAEhB,KACHA,GAAc,aAEX,KAEDA,GAD6B,GAA3B2R,GAAU,cACE,IAEA,GAAK,aAGlB,SAGA,KACH3R,GAAc,aAEX,KACHA,GAAc,mBAGM,iBAATv9O,EAAAA,MAGH,IAAIlT,MAAM,iBAAmBkT,GAFnCu9O,GAAcv9O,EAAAA,IAMhB06O,GAAa,KACjBgF,IACAd,IAAAA,IAEIwQ,GAAe,SAASrI,GAAAA,OACA,OAAtBtM,EACKC,GAAWsM,UAAUD,EAAU,GAEjC,SAASz2P,GAAAA,OACPA,CAAAA,CAAAA,EAOP++P,GAAevU,EAAIC,YAAYsU,YAAcvU,EAAIuU,YAAc,SACjEC,GAAAA,GAEIh5M,MAAMg5M,IAAuBA,EAAqB,GAAM,EAAG,MACvD,IAAIxiQ,MAAM,sDAGX,CACL+4P,MAFU5C,GAAaqM,GAAoBzJ,MAG3C4B,WAAY6H,EACZhH,YAAarF,GAAaqM,GAAAA,EAI1BC,GAAsBzU,EAAIC,YAAYwU,mBAAqB,SAC7D1J,GAAAA,GAEIvvM,MAAMuvM,IAAUA,EAAQ,GAAM,EAAG,MAC7B,IAAI/4P,MAAM,2DAEb,IAAI26P,KAAcxE,GAAAA,GACjBA,GAAawE,GAAY5B,QAAUA,EAAAA,MAAAA,OAIlCwJ,GAAY5H,EAAAA,EAGjB+H,GAAsB1U,EAAIC,YAAYyU,mBAAqB1U,EAAI0U,mBAAqB,iBAC/E,CACL3J,MAAO5C,GAAapD,GAAagG,MACjC4B,WAAY5H,EACZyI,YAAarF,GAAapD,GAAAA,EAgB9B/E,EAAI2U,QAAU,kBACZ/C,GAAS1lQ,MAAMqB,KAAM7B,WACd6B,IAAAA,EAmBTyyP,EAAIoS,QAAU,kBACZT,GAASzlQ,MAAMqB,KAAM7B,WACrBm6P,EAAqBr5P,KAAKe,KAAM63P,EAAML,IAC/Bx3P,IAAAA,EAYTyyP,EAAI4U,WAAa,SAASC,GAAAA,OAAAA,KACnBF,UAAAA,KACAG,SAAS/P,EAAa8P,GACpBtnQ,IAAAA,EAYTyyP,EAAI8U,SAAW,SAASC,EAAYF,GAAAA,IAC9BG,EAAUC,EAAAA,GACVF,EAAaF,EAAY,CAC3BG,EAAW5P,EAAM2P,GACjBE,EAAkB9M,GAAa4M,GAAAA,IAC1B,IAAItpQ,EAAIspQ,EAAYtpQ,EAAIopQ,EAAYppQ,IACvC25P,EAAM35P,GAAK25P,EAAM35P,EAAI,GACrB08P,GAAa18P,GAAK08P,GAAa18P,EAAI,GAErC25P,EAAMyP,GAAcG,EACpB7M,GAAa0M,GAAcI,EAAAA,KACtB7C,QAAQyC,EAAAA,MACR,GAAIE,EAAaF,EAAY,CAClCG,EAAW5P,EAAM2P,GACjBE,EAAkB9M,GAAa4M,GAAAA,IAC1B,IAAI7gN,EAAI6gN,EAAY7gN,EAAI2gN,EAAY3gN,IACvCkxM,EAAMlxM,GAAKkxM,EAAMlxM,EAAI,GACrBi0M,GAAaj0M,GAAKi0M,GAAaj0M,EAAI,GAErCkxM,EAAMyP,GAAcG,EACpB7M,GAAa0M,GAAcI,EAAAA,KACtB7C,QAAQyC,EAAAA,CAAAA,OAERtnQ,IAAAA,EAYTyyP,EAAIkV,WAAa,kBACf/C,GAAYjmQ,MAAMqB,KAAM7B,WACjB6B,IAAAA,EAuCTyyP,EAAIC,YAAY57N,KAAO27N,EAAI37N,KAAO,SAASA,EAAMvzB,EAAG1B,EAAG6L,EAASwhB,GAAAA,IAe1Do0E,EAAS3nB,EAAIphE,EAAOqtP,EAAOC,EAAWnrJ,EAAUnnG,EAAOuyP,EAkBvDC,EAnBAtB,GADJ/4P,EAAUA,GAAW,CAAC,GACF+4P,OAASzmQ,KAAAA,GASX,iBAAT82B,GACM,iBAANvzB,IACO,iBAAN1B,GAAkBrD,MAAMC,QAAQoD,IACxC,KACIwhC,EAAMxhC,EACVA,EAAI0B,EACJA,EAAIuzB,EACJA,EAAOuM,CAAAA,CAAAA,GAKLllC,UAAU,aAAc82P,IAAAA,GAE1B16O,EAAQpc,UAAU,GAClBypQ,EAAQzpQ,UAAU,GAEG,YAAjBmmI,EAAAA,GAAAA,GAJJ/uH,EAAQpX,UAAU,KAIyB,OAAVoX,IACV,iBAAVgF,IACTqtP,EAAQrtP,EACRA,EAAQ,MAEW,iBAAVhF,IACTqyP,EAAQryP,EACRA,EAAQ,MAEW,iBAAVA,IACTgF,EAAQhF,EACRA,EAAQ,MAEV7H,EAAU,CACR6H,MAAOA,EACPgF,MAAOA,EACPqtP,MAAOA,MAIXhS,EACE,yDAEFmS,EAAuB74O,GAGrB++B,MAAM1qD,IAAM0qD,MAAMpsD,IAAlBosD,MAA+Bn3B,EAAAA,MAC3B,IAAIryB,MAAM,6CAGE,IAAhBqyB,EAAK14B,OAAAA,OACAqoQ,EAAAA,IAGLuB,EAAO,GACPn2P,GAAAA,EACA4b,EACkC,iBAA7B/f,EAAQu6P,iBACXv6P,EAAQu6P,iBACRA,GACF/S,EAAcuR,EAAMp7G,SAAS6pG,YAAAA,SAExBgT,EAAI5nQ,GAAAA,OACXA,EAAIA,EAAEwjD,MAAM,MAAM5kD,KAAKV,MAAMkP,EAAQy6P,QAAU,GAAGjpQ,KAAK,MAChDglQ,GAAU5jQ,EAAGiV,EAAAA,CAAAA,SAGb6yP,EAA4BtxO,GAAAA,IAAAA,IAK/BuxO,EAHAxrL,EAAK/lD,EAAK7zB,SACV04E,EAAK,GACLp1E,EAAMs2E,EAAGz+E,OAINmI,KAEgB,iBADrB8hQ,EAAQxrL,EAAGvmE,SAETqlE,EAAGp9E,KAAK8pQ,GAGN7pQ,MAAMC,QAAQq4B,KACI,IAAjBuxO,EAAMjqQ,aAAAA,IACJiqQ,EAAM,aAAoBA,EAAM,IAEnC1sL,EAAGp9E,KAAK8pQ,EAAM,IAEd1sL,EAAGp9E,KAAK,CAAC8pQ,EAAM,GAAIA,EAAM,GAAIA,EAAM,YAIlC1sL,CAAAA,CAAAA,SAGA2sL,EAAsBxxO,EAAMyxO,GAAAA,IAC/BhnQ,EAAAA,GACgB,iBAATu1B,EACTv1B,EAASgnQ,EAAmBzxO,GAAM,QAC7B,GAAIt4B,MAAMC,QAAQq4B,GAAO,SAK1BuxO,EACAG,EAJA3rL,EAAK/lD,EAAK7zB,SACV04E,EAAK,GACLp1E,EAAMs2E,EAAGz+E,OAKNmI,KAEgB,iBADrB8hQ,EAAQxrL,EAAGvmE,SAETqlE,EAAGp9E,KAAKgqQ,EAAmBF,GAAO,IACzB7pQ,MAAMC,QAAQ4pQ,IAA8B,iBAAbA,EAAM,KAC9CG,EAAYD,EAAmBF,EAAM,GAAIA,EAAM,GAAIA,EAAM,IACzD1sL,EAAGp9E,KAAK,CAACiqQ,EAAU,GAAIA,EAAU,GAAIA,EAAU,MAGnDjnQ,EAASo6E,CAAAA,CAAAA,OAEJp6E,CAAAA,CAAAA,IAILknQ,GAAAA,EACAC,GAAAA,EAAwB,GAER,iBAAT5xO,EACT2xO,GAAAA,OACK,GAAIjqQ,MAAMC,QAAQq4B,GAAO,KAE1B+lD,EAAK/lD,EAAK7zB,SACd04E,EAAK,WAED0sL,EADA9hQ,EAAMs2E,EAAGz+E,OAINmI,MAGc,iBAFnB8hQ,EAAQxrL,EAAGvmE,UAGR9X,MAAMC,QAAQ4pQ,IAA8B,iBAAbA,EAAM,MAEtCK,GAAAA,GAGJD,EAAqBC,CAAAA,CAAAA,IAAAA,IAEnBD,EAAAA,MACI,IAAIhkQ,MACR,0CACEqyB,EACA,wBAWc,iBAATA,IAEPA,EADEA,EAAK4kB,MAAM,WACN5kB,EAAKgtB,MAAM,eAEX,CAAChtB,IAAAA,IAKRzzB,EAASs1P,GAAiB8N,EAAMp7G,SAAS6pG,YACzCyT,EAAUtlQ,GAAUoqB,EAAa,UAE7B/f,EAAQkrC,UAAAA,IACT,SACH/2C,GAAK8mQ,EAAAA,MAAAA,IAEF,MACH9mQ,GAAKwB,EAASslQ,EAAAA,MAAAA,IAEX,UACH9mQ,GAAKwB,EAAS,EAAIslQ,EAAAA,MAAAA,IAEf,SACH9mQ,GAAKwB,EAAS,EAAIslQ,EAAAA,IAUtBjsJ,EAAWhvG,EAAQgvG,UAAY,GAEhB,IACO,iBAAT5lF,EACTA,EAAO2vO,EAAMmC,gBAAgB9xO,EAAM4lF,GACe,mBAAzC79G,OAAOC,UAAUF,SAASK,KAAK63B,KACxCA,EAAOA,EAAKtO,QAAO,SAAS4B,EAAKy+O,GAAAA,OACxBz+O,EAAInnB,OAAOwjQ,EAAMmC,gBAAgBC,EAAUnsJ,GAAAA,GACjD,MAKPpZ,EAAU,CACRxsE,KAAMA,EACNvzB,EAAGA,EACH1B,EAAGA,EACH6L,QAASA,EACTo7P,MAAO,CACL5E,UAAWA,GACX/J,cAAeA,GACfx0N,MAAOA,GACPgzN,eAAgBA,KAGpB96H,GAAOizH,QAAQ,iBAAkBxtJ,GAEjCxsE,EAAOwsE,EAAQxsE,KAIfvc,GAHA7M,EAAU41F,EAAQ51F,SAGF6M,MAGdwtP,aAAgC9S,IAAAA,GAChC16O,GACiB,iBAAVA,EACP,CACAA,GAAS7V,KAAKgW,GAAK,IAEe,IAA9BhN,EAAQq7P,oBACVxuP,GAASA,GAGPu6O,IAAYH,EAAQE,WACtBt6O,GAASA,GAAAA,IAGP1H,EAAInO,KAAKojB,IAAIvN,GACbja,EAAIoE,KAAKmjB,IAAItN,GACjBwtP,EAAuB,IAAI9S,GAAOpiP,EAAGvS,GAAIA,EAAGuS,EAAG,EAAG,QACzC0H,GAASA,aAAiB06O,KACnC8S,EAAuBxtP,GAGrBu6O,IAAYH,EAAQE,UAAakT,IACnCA,EAAuBpL,SAAAA,KAKzBkL,EAAYn6P,EAAQm6P,WAAamB,MAG/BhB,GAAQrS,EAAI18M,EAAM4uN,IAAc,aAC3BoB,aAAajpQ,KAAKkpQ,gBAAkB,cAG3CpB,EAAkBp6P,EAAQo6P,mBAExBE,GAAQrS,EAAsB,IAAlBmS,GAAyB,SAK5Bp6P,EAAQ4jE,KAAAA,IAOf63L,GAAiB,EACjBC,OAAAA,IACK17P,EAAQy7P,cACXz7P,EAAQy7P,cACRz7P,EAAQ2yC,OACV4/M,EAAcwG,EAAMp7G,SAAS87G,qBAAqBlH,YAAAA,OAE9CmJ,GAAAA,KACD,SACA,IACA,OACHD,EAAgB,aAEb,SACA,IACA,SACHA,EAAgB,aAEb,MACA,iBACHA,EAAgB,aAEb,MACA,YACHA,EAAgB,aAEb,MACA,wBACHA,EAAgB,aAEb,MACA,8BACHA,EAAgB,aAEb,MACA,wCACHA,EAAgB,aAEb,MACA,uBACHA,EAAgB,MAIhBE,OAAAA,IACKpJ,EAAYoJ,kBACfpJ,EAAYoJ,mBACX,GAIgB,IAAnBF,EACFnB,GAAQmB,EAAgB,SAGQ,IAAvBE,IACTrB,GAAQ,WAGa,IAAnBmB,IACFlJ,EAAYoJ,kBAAoBF,GAIlCvB,EAAQl6P,EAAQk6P,OAAS,WAOrB0B,EANAC,EAAU5Q,GAAiBlrO,EAC3B+7O,EAAY/C,EAAMp7G,SAAS71B,SAASi0I,WACpCC,EAAa/jO,GAAMw0N,IACvB0N,EAAYn6P,EAAQm6P,WAAamB,GACjCtsJ,EAAWhvG,EAAQgvG,UAAY,EAG/BnnG,EAAQ1W,OAAOuB,OAAO,CAAE2jQ,YAAY,EAAME,OAAO,GAAQv2P,EAAQ6H,OAAAA,IAE7Do0P,EAAqB,MAEoB,mBAAzC9qQ,OAAOC,UAAUF,SAASK,KAAK63B,GAA4B,KAEzD8yO,EADJjuL,EAAKysL,EAA4BtxO,GAEnB,SAAV8wO,IACF0B,EAAa3tL,EAAG9tE,KAAI,SAAStL,GAAAA,OAExBkkQ,EAAMoD,mBAAmBtnQ,EAAG,CAC3Bg4C,KAAMmvN,EACN7B,UAAWA,EACXl6O,SAAUgrO,GACVmR,WAAW,IAEXnR,GACFzD,CAAAA,KAAAA,IAQF6U,EADAC,EAAY,KAEF,UAAVpC,EAAmB,CAGrBrkQ,GAAK+lQ,EAAW,GAChBxyO,EAAO,GACPvwB,EAAMo1E,EAAGv9E,OAAAA,IACJ,IAAIF,EAAI,EAAGA,EAAIqI,EAAKrI,IACb,IAANA,GACF6rQ,EAAOE,GAAwB1mQ,GAC/BqmQ,EAAOM,GAAsBroQ,KAE7BkoQ,EAAO9wN,EAAM+wN,EAAYV,EAAWprQ,IACpC0rQ,GAAQL,GAEVzyO,EAAKv4B,KAAK,CAACo9E,EAAGz9E,GAAI6rQ,EAAMH,IACxBI,EAAYV,EAAWprQ,EAAAA,MAEpB,GAAc,WAAV0pQ,EAAoB,CAG7BrkQ,GAAK+lQ,EAAW,GAAK,EACrBxyO,EAAO,GACPvwB,EAAMo1E,EAAGv9E,OAAAA,IACJ,IAAIuoD,EAAI,EAAGA,EAAIpgD,EAAKogD,IACb,IAANA,GACFojN,EAAOE,GAAwB1mQ,GAC/BqmQ,EAAOM,GAAsBroQ,KAE7BkoQ,EAAO9wN,GAAO+wN,EAAYV,EAAW3iN,IAAM,GAC3CijN,GAAQL,GAEVzyO,EAAKv4B,KAAK,CAACo9E,EAAGh1B,GAAIojN,EAAMH,IACxBI,EAAYV,EAAW3iN,EAAAA,MAEpB,GAAc,SAAVihN,EAAkB,CAC3B9wO,EAAO,GACPvwB,EAAMo1E,EAAGv9E,OAAAA,IACJ,IAAIqF,EAAI,EAAGA,EAAI8C,EAAK9C,IACvBqzB,EAAKv4B,KAAKo9E,EAAGl4E,GAAAA,KAEV,IAAc,YAAVmkQ,EAAAA,MAsBH,IAAInjQ,MACR,8EAtBFqyB,EAAO,GACPvwB,EAAMo1E,EAAGv9E,OACTs+G,EAAwB,IAAbA,EAAiBA,EAAW8sJ,EAAAA,IAElC,IAAIzmQ,GAAI,EAAGA,GAAIwD,EAAKxD,KACvB6mQ,EAAa,IAAN7mQ,GAAUmnQ,GAAsBroQ,IAAM0nQ,EAC7CQ,EAAa,IAANhnQ,GAAUknQ,GAAwB1mQ,GAAK,EAC1CR,GAAIwD,EAAM,EACZojQ,EAAmBprQ,KACjBo3P,EACE18M,GACGyjE,EAAW4sJ,EAAWvmQ,MAAO44E,EAAG54E,IAAG+gD,MAAM,KAAK1lD,OAAS,MAK9DurQ,EAAmBprQ,KAAK,GAE1Bu4B,EAAKv4B,KAAK,CAACo9E,EAAG54E,IAAIgnQ,EAAMH,GAAAA,CAAAA,CAAAA,IAU1BO,GAAqC,kBAAhBz8P,EAAQmrP,IAAoBnrP,EAAQmrP,IAAMA,IAAAA,IAC/DsR,KACFrzO,EAAOwxO,EAAsBxxO,GAAM,SAASA,EAAMszO,EAAMC,GAAAA,MAC/C,CACLvzO,EACGgtB,MAAM,IACNtN,UACAt3C,KAAK,IACRkrQ,EACAC,EAAAA,KAMN/mK,EAAU,CACRxsE,KAAMA,EACNvzB,EAAGA,EACH1B,EAAGA,EACH6L,QAASA,EACTo7P,MAAO,CACL5E,UAAWA,GACX/J,cAAeA,GACfx0N,MAAOA,GACPgzN,eAAgBA,KAGpB96H,GAAOizH,QAAQ,kBAAmBxtJ,GAElCxsE,EAAOwsE,EAAQxsE,KACfjlB,EAAQyxF,EAAQwlK,MAAMj3P,QAAS,MAG3By4P,GAAqB3kO,GAAMw0N,IAAesG,SAGrB,oBAAvB6J,IACuB,qBAAvBA,KAEAxzO,EAAOwxO,EAAsBxxO,GAAM,SAASA,EAAMszO,EAAMC,GAAAA,MAC/C,CAACnC,EAAIpxO,GAAOszO,EAAMC,EAAAA,KAI7B1uL,EAAKysL,EAA4BtxO,GAEjCA,EAAO,WAIHszO,GACAC,GACAp5O,GALAs5O,GAAS,EACTC,GAAQ,EACRpwN,GAAU57C,MAAMC,QAAQk9E,EAAG,IAAM6uL,GAAQD,GAIzCj0O,GAAc,GAEdm0O,GAAmB,SACrBC,EACAC,EACAC,GAAAA,IAEI1gP,EAAW,UACX0gP,aAAoC3V,IAKpC2V,EAD2B,iBAAlBl9P,EAAQ6M,MACUiiP,GACzBoO,EACA,IAAI3V,GAAO,EAAG,EAAG,EAAG,EAAGyV,EAAUC,IAGRnO,GACzB,IAAIvH,GAAO,EAAG,EAAG,EAAG,EAAGyV,EAAUC,GACjCC,GAIA9V,IAAYH,EAAQE,WACtB+V,EAA2BpO,GACzB,IAAIvH,GAAO,EAAG,EAAG,GAAI,EAAG,EAAG,GAC3B2V,IAIJ1gP,EAAW0gP,EAAyB1rQ,KAAK,KAAO,SAEhDgrB,EAAWyrO,EAAI+U,GAAY,IAAM/U,EAAIgV,GAAY,QAE5CzgP,CAAAA,EAGA2gP,GAAY,EAAGA,GAAYlvL,EAAGv9E,OAAQysQ,KAAa,QAC1Dv0O,GAAc,GAEN8jB,IAAAA,KACDowN,GACHv5O,IACGpf,EAAQ,IAAM,KAAO8pE,EAAGkvL,IAAW,IAAMh5P,EAAQ,IAAM,KAC1Du4P,GAAO//L,WAAWsR,EAAGkvL,IAAW,IAChCR,GAAOhgM,WAAWsR,EAAGkvL,IAAW,eAE7BN,GACHt5O,IAAWpf,EAAQ,IAAM,KAAO8pE,EAAGkvL,KAAch5P,EAAQ,IAAM,KAC/Du4P,GAAOH,GAAwB1mQ,GAC/B8mQ,GAAOH,GAAsBroQ,QAAAA,IAKxB8nQ,QAAAA,IACAA,EAAmBkB,MAE1Bv0O,GAAcqzO,EAAmBkB,IAAa,SAG9B,IAAdA,GACF/zO,EAAKv4B,KACH+3B,GACEm0O,GAAiBL,GAAMC,GAAMtC,GAC7B92O,IAEKmpB,KAAYmwN,GACrBzzO,EAAKv4B,KAAK+3B,GAAcrF,IACfmpB,KAAYowN,IACrB1zO,EAAKv4B,KACH+3B,GACEm0O,GAAiBL,GAAMC,GAAMtC,GAC7B92O,GAAAA,CAKR6F,EAAOsjB,KAAYmwN,GAASzzO,EAAK53B,KAAK,YAAc43B,EAAK53B,KAAK,SAC9D43B,GAAQ,YAEJv1B,GAAS,eACbA,IAAU44P,GAAgB,IAAMxB,GAAiB,QACjDp3P,IAAUo0P,EAAIgD,GAAiBlrO,GAAc,QAC7ClsB,IAAUupQ,GAAY,KACtBvpQ,IAAUymQ,EACVzmQ,IAAUu1B,EAGVytB,EAFAhjD,IAAU,MAGVixP,EAAU2H,KAAAA,EACHsM,CAAAA,EAAAA,IA6BL9sN,GAAQ84M,EAAIC,YAAY/4M,KAAO84M,EAAI94M,KAAO,SAAS9S,GAAAA,OAInD0d,EADE,YAAc1d,EACZ,KAEA,KAEC7mC,IAAAA,EAaTyyP,EAAIsY,YAAc,kBACTpxN,GAAK,YAYd84M,EAAIC,YAAYsY,YAAcvY,EAAIuY,YAAc,kBAC9CzmN,EAAI,KACGvkD,IAAAA,EAAAA,IAGLirQ,GAAgBxY,EAAIC,YAAYuY,aAAe,SAAS3+O,GAAAA,IAetD/qB,GAAAA,EAAS,OAC8B,IAflB,MAAC,EAExB,KACA,IACA,IACA,IACA,KACA,KACA,IACA,KACA,IACA,KACA,KAGqBiL,QAAQ8f,KAC7B/qB,GAAAA,GAEKA,CAAAA,EAGTkxP,EAAIC,YAAYwY,wBAA0BzY,EAAIyY,wBAA0B,SACtEC,GAAAA,OAEIF,GAAaE,KACfhZ,EAAuBgZ,GAElBnrQ,IAAAA,EAAAA,IAGLorQ,GAAY3Y,EAAIC,YAAY0Y,SAAW3Y,EAAI2Y,SAAW,SAAS9+O,GAAAA,IAE7D9pB,EAAK2vP,EAAAA,OAED7lO,GAAAA,IACD,QACA,IACH9pB,EAAK,cAEF,IACHA,EAAK,cAEF,SACA,KACHA,EAAK,cAEF,QACA,SACA,QACA,KAQHA,EAAK8pB,EAAAA,OAGF9pB,CAAAA,EAWLuvB,GAAS0gO,EAAI1gO,MAAQ,kBACvBwyB,EAAI,KACGvkD,IAAAA,EAWTyyP,EAAIpyM,OAAS,kBACXkE,EAAI,KACGvkD,IAAAA,EAaTyyP,EAAI52M,KAAO,SAASwB,GAAAA,OAClBguN,GAAwB,IAAKhuN,GACtBr9C,IAAAA,EAaTyyP,EAAI6Y,YAAc,SAASjuN,GAAAA,OACzBguN,GAAwB,KAAMhuN,GACvBr9C,IAAAA,EAaTyyP,EAAI8Y,WAAa,SAASluN,GAAAA,OACxBguN,GAAwB,IAAKhuN,GACtBr9C,IAAAA,EAaTyyP,EAAI+Y,kBAAoB,SAASnuN,GAAAA,OAC/BguN,GAAwB,KAAMhuN,GACvBr9C,IAAAA,EAAAA,IAGLqrQ,GAA0B,SAAS/+O,EAAO+wB,GACrB,YAAnBinF,EAAAA,GAAAA,GAAOjnF,GACTouN,GAAgBpuN,EAAS/wB,GAEzBi4B,EAAIj4B,EAAAA,EAIJo/O,GAAW,SAASp/O,GAEV,OAAVA,GACCwoO,IAAYH,EAAQE,eAAY,IAAAvoO,IAKnCA,EAAQ8+O,GAAS9+O,GAGjBi4B,EAAIj4B,GAAAA,EAAAA,SAGGq/O,GAAmB7O,EAAYtL,EAAaC,EAAOC,EAAOriO,GAAAA,IAC7DgX,EAAQ,IAAIkrN,GACdC,GAAexxP,KAAKwxP,YACpBC,GAASzxP,KAAKyxP,MACdC,GAAS1xP,KAAK0xP,MACd1xP,KAAKoxP,OACL/hO,GAAUrvB,KAAKqvB,QAEjBgX,EAAMsrN,OAAS3xP,KAAK2xP,OAAAA,IAChB3yP,EAAM89P,EAAa,KAAO98P,KAAK4xP,aAAe,YAClDiL,GAAW79P,EAAKqnC,GACTA,CAAAA,CAAAA,IAGLolO,GAAkB,SAASG,EAAat/O,GAAAA,IACtCu/O,EAAYrR,GAAWoR,EAAY5sQ,KACnCq+C,EAAUk9M,GAASsR,GAAAA,GAEnBxuN,aAAmBg0M,GACrB9sM,EAAI,KAEJA,EAAIunN,GAAkBx/O,IAElB+wB,EAAQ+zM,QACVqB,EAAIsZ,UAAU1uN,EAAQ+zM,QAExB7sM,EAAIqnN,EAAYv8O,OAAOzwB,WAAa,OACpC2lD,EAAI,IAAMsnN,EAAY,OACtBtnN,EAAI,UACC,GAAIlH,aAAmBk0M,GAAe,KAGvCliO,EAAS,IAAI4lO,GAAO,EAAG,EAAG,GAAI,EAAG,EAAGE,MAEpCyW,EAAYv8O,SACdA,EAASA,EAAOosO,SAASmQ,EAAYv8O,QAAUstO,IAG/CkP,EAAYF,GAAmB1sQ,KAC7Bo+C,EACAuuN,EAAY5sQ,IACZ4sQ,EAAYpa,YACZoa,EAAYna,MACZma,EAAYla,MACZriO,GACAuxB,IAGJ2D,EAAI,KACJA,EAAI,eACJA,EAAI,IAAMsnN,EAAY,QAElBxuN,EAAQ+zM,QACVqB,EAAIsZ,UAAU1uN,EAAQ+zM,QAGxB7sM,EAAIj4B,GACJi4B,EAAI,OAIJunN,GAAoB,SAASx/O,GAAAA,OACvBA,GAAAA,IACD,QACA,IAYI,IACJ,UACI,MAbA,IACJ,WACI,WACJ,IAGI,IAIJ,UACI,MAPA,IACJ,WACI,OAOA,EAcT0wB,GAAUy1M,EAAIz1M,OAAS,SAASz5C,EAAG1B,GAAAA,OACrC0iD,EAAIoxM,EAAI18M,EAAM11C,IAAM,IAAMoyP,EAAIQ,EAAgBt0P,IAAM,MAC7C7B,IAAAA,EAcLi9C,GAAUw1M,EAAIx1M,OAAS,SAAS15C,EAAG1B,GAAAA,OACrC0iD,EAAIoxM,EAAI18M,EAAM11C,IAAM,IAAMoyP,EAAIQ,EAAgBt0P,IAAM,MAC7C7B,IAAAA,EAmBLgsQ,GAAWvZ,EAAIuZ,QAAU,SAASruN,EAAIE,EAAIouN,EAAIC,EAAIC,EAAIC,GAAAA,OACxD7nN,EACE,CACEoxM,EAAI18M,EAAM0E,IACVg4M,EAAIQ,EAAgBt4M,IACpB83M,EAAI18M,EAAMgzN,IACVtW,EAAIQ,EAAgB+V,IACpBvW,EAAI18M,EAAMkzN,IACVxW,EAAIQ,EAAgBiW,IACpB,KACAltQ,KAAK,MAEFc,IAAAA,EAiBTyyP,EAAIC,YAAYjiO,KAAOgiO,EAAIhiO,KAAO,SAASktB,EAAIE,EAAIouN,EAAIC,EAAI5/O,GAAAA,GAEvD2hC,MAAMtQ,IACNsQ,MAAMpQ,IACNoQ,MAAMg+M,IACNh+M,MAAMi+M,KACLjB,GAAa3+O,GAAAA,MAER,IAAI7nB,MAAM,iDAEdqwP,IAAYH,EAAQC,OACf50P,KAAKozN,MAAM,CAAC,CAAC64C,EAAKtuN,EAAIuuN,EAAKruN,IAAMF,EAAIE,EAAI,CAAC,EAAG,GAAIvxB,GAAS,KAE1DtsB,KAAKozN,MAAM,CAAC,CAAC64C,EAAKtuN,EAAIuuN,EAAKruN,IAAMF,EAAIE,EAAI,CAAC,EAAG,IAAIwC,QAAAA,EAuC5DoyM,EAAIC,YAAYt/B,MAAQq/B,EAAIr/B,MAAQ,SAClCA,EACA7vN,EACA1B,EACAo3C,EACA3sB,EACA+/O,GAAAA,IAEIC,EAAQC,EAAQruQ,EAAG6E,EAAGypQ,EAAKP,EAAIC,EAAIC,EAAIC,EAAIK,EAAIC,EAAIrpO,EAAAA,GAOlC,iBAAV+vL,IACT/vL,EAAMxhC,EACNA,EAAI0B,EACJA,EAAI6vN,EACJA,EAAQ/vL,GAGV4V,EAAQA,GAAS,CAAC,EAAG,GACrBozN,EAASA,IAAAA,EAGPp+M,MAAM1qD,IACN0qD,MAAMpsD,KACLrD,MAAMC,QAAQ20N,KACd50N,MAAMC,QAAQw6C,KACdgyN,GAAa3+O,IACI,kBAAX+/O,EAAAA,MAED,IAAI5nQ,MAAM,+CAIlBu4C,GAAOz5C,EAAG1B,GAEVyqQ,EAASrzN,EAAM,GACfszN,EAAStzN,EAAM,GACfl2C,EAAIqwN,EAAMh1N,OAIVquQ,EAAKlpQ,EACLmpQ,EAAK7qQ,EAEA3D,EAAI,EAAGA,EAAI6E,EAAG7E,IAEE,KADnBsuQ,EAAMp5C,EAAMl1N,IACJE,QAENquQ,EAAKD,EAAI,GAAKF,EAASG,EACvBC,EAAKF,EAAI,GAAKD,EAASG,EACvBzvN,GAAOwvN,EAAIC,KAGXT,EAAKO,EAAI,GAAKF,EAASG,EACvBP,EAAKM,EAAI,GAAKD,EAASG,EACvBP,EAAKK,EAAI,GAAKF,EAASG,EACvBL,EAAKI,EAAI,GAAKD,EAASG,EACvBD,EAAKD,EAAI,GAAKF,EAASG,EACvBC,EAAKF,EAAI,GAAKD,EAASG,EACvBV,GAAQC,EAAIC,EAAIC,EAAIC,EAAIK,EAAIC,IAAAA,OAI5BL,GACFt6O,KAGF25O,GAASp/O,GACFtsB,IAAAA,EAaTyyP,EAAIjjN,KAAO,SAAS4jL,GAAAA,IACb,IAAIl1N,EAAI,EAAGA,EAAIk1N,EAAMh1N,OAAQF,IAAK,KACjCsuQ,EAAMp5C,EAAMl1N,GACZozP,EAASkb,EAAI35P,EAAAA,OACT25P,EAAIhqQ,IAAAA,IACL,IACHw6C,GAAOs0M,EAAO,GAAIA,EAAO,cAEtB,IACHr0M,GAAOq0M,EAAO,GAAIA,EAAO,cAEtB,IACH0a,GAAQrtQ,MAAMqB,KAAMsxP,GAAAA,MAAAA,IAEjB,IACHv/N,KAAAA,CAAAA,OAKC/xB,IAAAA,EAwBTyyP,EAAIC,YAAY1uP,KAAOyuP,EAAIzuP,KAAO,SAAST,EAAG1B,EAAG2B,EAAGC,EAAG6oB,GAAAA,GACjD2hC,MAAM1qD,IAAM0qD,MAAMpsD,IAAMosD,MAAMzqD,IAAMyqD,MAAMxqD,KAAOwnQ,GAAa3+O,GAAAA,MAC1D,IAAI7nB,MAAM,iDAEdqwP,IAAYH,EAAQC,SACtBnxP,GAAKA,GAGP8gD,EACE,CACEoxM,EAAI18M,EAAM11C,IACVoyP,EAAIQ,EAAgBt0P,IACpB8zP,EAAI18M,EAAMz1C,IACVmyP,EAAI18M,EAAMx1C,IACV,MACAvE,KAAK,MAGTwsQ,GAASp/O,GACFtsB,IAAAA,EA0BTyyP,EAAIC,YAAYia,SAAWla,EAAIka,SAAW,SACxChvN,EACAE,EACAouN,EACAC,EACAC,EACAC,EACA9/O,GAAAA,GAGE2hC,MAAMtQ,IACNsQ,MAAMpQ,IACNoQ,MAAMg+M,IACNh+M,MAAMi+M,IACNj+M,MAAMk+M,IACNl+M,MAAMm+M,KACLnB,GAAa3+O,GAAAA,MAER,IAAI7nB,MAAM,0DAEb2uN,MACH,CACE,CAAC64C,EAAKtuN,EAAIuuN,EAAKruN,GAAAA,CACdsuN,EAAKF,EAAIG,EAAKF,GAAAA,CACdvuN,EAAKwuN,EAAItuN,EAAKuuN,IAEjBzuN,EACAE,EAAAA,CACC,EAAG,GACJvxB,GAAAA,GAGKtsB,IAAAA,EA0BTyyP,EAAIC,YAAYka,YAAcna,EAAIma,YAAc,SAC9CrpQ,EACA1B,EACA2B,EACAC,EACAwlB,EACAC,EACAoD,GAAAA,GAGE2hC,MAAM1qD,IACN0qD,MAAMpsD,IACNosD,MAAMzqD,IACNyqD,MAAMxqD,IACNwqD,MAAMhlC,IACNglC,MAAM/kC,KACL+hP,GAAa3+O,GAAAA,MAER,IAAI7nB,MAAM,qDAEdooQ,EAAS,EAAI,GAAMnoQ,KAAKooQ,MAAQ,UAEpC7jP,EAAKvkB,KAAK0S,IAAI6R,EAAQ,GAAJzlB,GAClB0lB,EAAKxkB,KAAK0S,IAAI8R,EAAQ,GAAJzlB,GAAAA,KAEb2vN,MACH,CACE,CAAC5vN,EAAI,EAAIylB,EAAI,GACb,CAACA,EAAK4jP,EAAO,EAAG5jP,EAAIC,EAAKA,EAAK2jP,EAAO5jP,EAAIC,GACzC,CAAC,EAAGzlB,EAAI,EAAIylB,GACZ,CAAC,EAAGA,EAAK2jP,GAAS5jP,EAAK4jP,EAAQ3jP,GAAKD,EAAIC,GACxC,CAAM,EAAID,EAARzlB,EAAY,GACd,EAAGylB,EAAK4jP,EAAQ,GAAI5jP,GAAMC,EAAK2jP,GAAS5jP,GAAKC,GAC7C,CAAC,EAAQ,EAAIA,EAARzlB,GACL,CAAC,GAAKylB,EAAK2jP,EAAQ5jP,EAAK4jP,GAAQ3jP,EAAID,GAAKC,IAE3C3lB,EAAI0lB,EACJpnB,EAAAA,CACC,EAAG,GACJyqB,GAAAA,GAGKtsB,IAAAA,EAwBTyyP,EAAIC,YAAYqa,QAAUta,EAAIsa,QAAU,SAASxpQ,EAAG1B,EAAGonB,EAAIC,EAAIoD,GAAAA,GAE3D2hC,MAAM1qD,IACN0qD,MAAMpsD,IACNosD,MAAMhlC,IACNglC,MAAM/kC,KACL+hP,GAAa3+O,GAAAA,MAER,IAAI7nB,MAAM,iDAEduoQ,EAAM,EAAI,GAAMtoQ,KAAKooQ,MAAQ,GAAK7jP,EACpCgkP,EAAM,EAAI,GAAMvoQ,KAAKooQ,MAAQ,GAAK5jP,EAAAA,OAEpC8zB,GAAOz5C,EAAI0lB,EAAIpnB,GACfmqQ,GAAQzoQ,EAAI0lB,EAAIpnB,EAAIorQ,EAAI1pQ,EAAIypQ,EAAInrQ,EAAIqnB,EAAI3lB,EAAG1B,EAAIqnB,GAC/C8iP,GAAQzoQ,EAAIypQ,EAAInrQ,EAAIqnB,EAAI3lB,EAAI0lB,EAAIpnB,EAAIorQ,EAAI1pQ,EAAI0lB,EAAIpnB,GAChDmqQ,GAAQzoQ,EAAI0lB,EAAIpnB,EAAIorQ,EAAI1pQ,EAAIypQ,EAAInrQ,EAAIqnB,EAAI3lB,EAAG1B,EAAIqnB,GAC/C8iP,GAAQzoQ,EAAIypQ,EAAInrQ,EAAIqnB,EAAI3lB,EAAI0lB,EAAIpnB,EAAIorQ,EAAI1pQ,EAAI0lB,EAAIpnB,GAEhD6pQ,GAASp/O,GACFtsB,IAAAA,EAuBTyyP,EAAIC,YAAYwa,OAASza,EAAIya,OAAS,SAAS3pQ,EAAG1B,EAAGsZ,EAAGmR,GAAAA,GAClD2hC,MAAM1qD,IAAM0qD,MAAMpsD,IAAMosD,MAAM9yC,KAAO8vP,GAAa3+O,GAAAA,MAC9C,IAAI7nB,MAAM,mDAEXzE,KAAK+sQ,QAAQxpQ,EAAG1B,EAAGsZ,EAAGA,EAAGmR,EAAAA,EAgBlCmmO,EAAI0a,QAAU,SAASrK,EAAU/xO,EAAWF,GAAAA,OACtCA,IACFE,EAAYykO,EAA8BzkO,EAAWF,IAEvDspO,GAAgB4K,GAAQjC,EAAU/xO,EAAW,CAC3Ck0O,gBAAgB,IAEXjlQ,IAAAA,EAAAA,IAYLotQ,GAAgB3a,EAAIC,YAAYqS,QAAUtS,EAAIsS,QAAU,kBACnDp/N,GAAMo/N,GAAQpmQ,MAAM8zP,EAAKt0P,WAAAA,EAclCs0P,EAAIC,YAAY2a,YAAc5a,EAAI4a,YAAc,eAE5CvK,EACA/xO,EAFEkqM,EAAO,CAAC,EAAD,IAIN6nC,KAAYzI,GAAAA,GACXA,GAAQt8P,eAAe+kQ,GAAAA,IAEpB/xO,KADLkqM,EAAK6nC,GAAY,GACCzI,GAAQyI,GACpBzI,GAAQyI,GAAU/kQ,eAAegzB,IACnCkqM,EAAK6nC,GAAUvkQ,KAAKwyB,GAAAA,OAKrBkqM,CAAAA,EAiBTw3B,EAAIsQ,QAAU,SACZvC,EACAsC,EACA/xO,EACAF,EACA4vO,GAAAA,IAEI6M,EAAkB,CACpB,mBACA,mBACA,aACA,0BAEEnvQ,UAAU,KAAiD,IAA3CmvQ,EAAgB9gQ,QAAQrO,UAAU,IAEpDsiQ,EAAWtiQ,UAAU,GACZA,UAAU,KAAgD,GAA1CmvQ,EAAgB9gQ,QAAQrO,UAAU,MAC3D4yB,EAAYykO,EAA8BzkO,EAAWF,IAEvD4vO,EAAWA,GAAY,aAChBsC,GAAQ9jQ,KAAKe,KAAMwgQ,EAAgBsC,EAAU/xO,EAAW0vO,EAAAA,EAAAA,IAuE7DwH,GApEAhtN,GAAYvtC,EAAQutC,WAAa,QAUjCsyN,GAAgB9a,EAAIC,YAAY6a,aAAe9a,EAAI8a,aAAe,kBAC7DtyN,EAAAA,EAaLupN,GAAgB/R,EAAIC,YAAY8R,aAAe/R,EAAI+R,aAAe,SACpEphQ,GAAAA,OAEA63C,GAAY73C,EACZmhD,EAAIoxM,EAAI18M,EAAM71C,IAAU,MACjBpD,IAAAA,EAiBTyyP,EAAIC,YAAYvyM,YAAc0xM,GAAMY,IAAItyM,YAAc0xM,GAAMY,IAAI+a,mBAAqB,SACnFC,EACAC,GAAAA,GAEAD,EAAYA,GAAa,GACzBC,EAAYA,GAAa,EAErBz/M,MAAMy/M,KAAelvQ,MAAMC,QAAQgvQ,GAAAA,MAC/B,IAAIhpQ,MAAM,wDAGlBgpQ,EAAYA,EACT5/P,KAAI,SAAStK,GAAAA,OACLoyP,EAAI18M,EAAM11C,GAAAA,IAElBrE,KAAK,KACRwuQ,EAAY/X,EAAI18M,EAAMy0N,IAEtBnpN,EAAI,IAAMkpN,EAAY,KAAOC,EAAY,MAClC1tQ,IAAAA,EAAAA,IAKL2tQ,GAAiBlb,EAAIC,YAAYib,cAAgBlb,EAAIkb,cAAgB,kBAChEhV,GAAiBsP,EAAAA,EAG1BxV,EAAIC,YAAYib,cAAgBlb,EAAIkb,cAAgB,kBAC3ChV,GAAiBsP,EAAAA,EAAAA,IAatB2F,GAAuBnb,EAAIC,YAAYkb,oBAAsBnb,EAAImb,oBAAsB,SACzF9sQ,GAAAA,MAGqB,iBADrBA,EAAQA,GAAS,QAEfmnQ,GAAmBnnQ,GAEdd,IAAAA,EAYL6tQ,GAAuBpb,EAAIC,YAAYmb,oBAAsBpb,EAAIob,oBAAsB,kBAClF5F,EAAAA,EAGT2F,GAAoBlgQ,EAAQ+f,YAAAA,IAExBw8O,GAA2BxX,EAAIC,YAAYuX,wBAA0B,SACvEnpQ,GAAAA,OAEOm4C,EAAMn4C,EAAAA,EAGXopQ,GAAyBzX,EAAIC,YAAYwX,sBAAwB,SACnEppQ,GAAAA,OAEIg0P,IAAYH,EAAQE,SACf/zP,EAGL85P,GAAapD,GAAagI,SAASI,UACnChF,GAAapD,GAAagI,SAASE,YACjBzmN,EAAMn4C,EAAAA,EAI1BgtQ,GAAiCrb,EAAIC,YAAYob,8BAAgCrb,EAAIqb,8BAAgC,SACvHhtQ,GAAAA,OAEO60P,EAAIsU,GAAwBnpQ,GAAAA,EAGjCitQ,GAA+Btb,EAAIC,YAAYqb,4BAA8Btb,EAAIsb,4BAA8B,SACjHjtQ,GAAAA,OAEO60P,EAAIuU,GAAsBppQ,GAAAA,EAG/B2jQ,GAAc/2P,EAAQ+2P,aAAe,MAWzChS,EAAIC,YAAYsb,eAAiBvb,EAAIwb,aAAe,kBAC3CxQ,GAAkBgH,GAAAA,EAyC3BhS,EAAIC,YAAYwb,eAAiBzb,EAAI0b,aAAe,SAClDrQ,EACAC,EACAC,EACAC,GAAAA,OAWAwG,GAAc5G,GATA,CACZC,IAAKA,EACLC,IAAKA,EACLC,IAAKA,EACLC,IAAKA,EACLE,aAAc,OACdrM,UAAW,IAIbvtM,EAAIkgN,IACGzkQ,IAAAA,EAAAA,IAGLouQ,GAAY1gQ,EAAQ0gQ,WAAa,MAWrC3b,EAAIC,YAAY2b,aAAe5b,EAAI4b,aAAe,kBACzC5Q,GAAkB2Q,GAAAA,EAyC3B3b,EAAIC,YAAY4b,aAAe7b,EAAI6b,aAAe,SAChDxQ,EACAC,EACAC,EACAC,GAAAA,OAWAmQ,GAAYvQ,GATE,CACZC,IAAKA,EACLC,IAAKA,EACLC,IAAKA,EACLC,IAAKA,EACLE,aAAc,OACdrM,UAAW,IAIbvtM,EAAI6pN,IACGpuQ,IAAAA,EAAAA,IAGL8qQ,GAAYp9P,EAAQo9P,WAAa,MAUjCyD,GAAgB9b,EAAIC,YAAY6b,aAAe9b,EAAI8b,aAAe,kBAC7D9Q,GAAkBqN,GAAAA,EAwC3BrY,EAAIC,YAAY8b,aAAe/b,EAAI+b,aAAe,SAChD1Q,EACAC,EACAC,EACAC,GAAAA,OAUA6M,GAAYjN,GARE,CACZC,IAAKA,EACLC,IAAKA,EACLC,IAAKA,EACLC,IAAKA,EACLE,aAAc,OACdrM,UAAW,IAIN9xP,IAAAA,EAAAA,IAGLgpQ,GAAkBt7P,EAAQm6P,UAW1BqB,GAAgBzW,EAAIC,YAAYwW,aAAezW,EAAIyW,aAAe,kBAC7D7+L,WAAW2+L,IAAmB,IAavCvW,EAAIC,YAAYuW,aAAexW,EAAIwW,aAAe,SAASpB,GAAAA,GACrD55M,MAAM45M,GAAAA,MACF,IAAIpjQ,MAAM,wDAElBukQ,GAAkBnB,EACX7nQ,IAAAA,EAAAA,IAGL0kQ,GAAY,EAShBjS,EAAIgc,cAAgB,GACf,EACHC,KAAM,EACNC,IAAK,EACLC,MAAO,IACJ,EACH7yP,MAAO,EACP8yP,QAAS,EACT3B,OAAQ,IACL,EACH4B,WAAY,EACZC,QAAS,EACTC,OAAQ,EACRC,MAAO,GAcTxc,EAAIC,YAAYwc,WAAazc,EAAIyc,WAAa,SAAS5iP,GAAAA,IACjDs0B,EAAK6xM,EAAIgc,cAAcniP,GAAAA,QAAAA,IACvBs0B,EAAAA,MACI,IAAIn8C,MACR,sBACE6nB,EACA,sFAGNo4O,GAAY9jN,EACZ2D,EAAI3D,EAAK,MAEF5gD,IAAAA,EAAAA,IAGL2kQ,GAAa,EAYjBlS,EAAIC,YAAYyc,YAAc1c,EAAI0c,YAAc,SAAS7iP,GAAAA,IACnDs0B,EAAK6xM,EAAIgc,cAAcniP,GAAAA,QAAAA,IACvBs0B,EAAAA,MACI,IAAIn8C,MACR,uBACE6nB,EACA,sFAGNq4O,GAAa/jN,EACb2D,EAAI3D,EAAK,MAEF5gD,IAAAA,EAcTyyP,EAAIC,YAAY0c,kBAAoB3c,EAAIC,YAAY2c,cAAgB5c,EAAI2c,kBAAoB3c,EAAI4c,cAAgB,SAC9GjxQ,GAAAA,GAEAA,EAASA,GAAU,EACf6vD,MAAM7vD,GAAAA,MACF,IAAIqG,MAAM,6DAElB8/C,EAAIoxM,EAAI18M,EAAM76C,IAAW,MAElB4B,IAAAA,EAcTyyP,EAAIzB,OAASA,GAWbyB,EAAIsZ,UAAY,SAAS3a,IAErBA,EADoB,iBAAXA,EACAqJ,GAAQC,GAAWtJ,IAEnBke,GAAU,KAAMle,IAGf7mI,OAAOowI,MACjBp2M,EAAI,IAAM6sM,EAAOxwM,GAAK,OACtB+5M,GAAevJ,EAAAA,EAAAA,IASfke,GAAY,SAAStwQ,EAAKoyP,GAAAA,IAExBpyP,IAAO07P,GAAW17P,GAAAA,CAAAA,IAClBuwQ,GAAAA,EAAY,IACX,IAAIjvQ,KAAKm6P,GAAAA,GACRA,GAAQ18P,eAAeuC,IACrBm6P,GAAQn6P,GAAGiqH,OAAO6mI,GAAS,CAC7Bme,GAAAA,EAAY,SAMdA,EACFne,EAASqJ,GAAQn6P,OACZ,KACD2hQ,EAAY,MAAQpjQ,OAAO0uC,KAAKktN,IAASr8P,OAAS,GAAGQ,SAAS,IAClE67P,GAAQwH,GAAa7Q,EACrBA,EAAOxwM,GAAKqhN,CAAAA,CAAAA,OAIdjjQ,IAAQ07P,GAAW17P,GAAOoyP,EAAOxwM,IAEjCi9E,GAAOizH,QAAQ,YAAaM,GAErBA,CAAAA,CAAAA,EAcTqB,EAAI6c,UAAY,SAAStwQ,EAAKoyP,GAAAA,OAC5Bke,GAAUtwQ,EAAKoyP,GACRpxP,IAAAA,EAYTyyP,EAAIuC,kBAAoB,kBACtBzwM,EAAI,KAEJ+1M,GAAe/7P,KAAK,CAClBS,IAAKm7P,GACLhxO,KAAMwvO,GACN39O,MAAO8vP,KAEF9qQ,IAAAA,EAUTyyP,EAAI8C,qBAAuB,WACzBhxM,EAAI,SAGAirN,EAAYlV,GAAe73P,MAAAA,OAC/B03P,GAAgBqV,EAAUxwQ,IAC1B25P,GAAiB6W,EAAUrmP,KAC3B2hP,GAAY0E,EAAUx0P,MAEtB2/O,GAAe,KAER36P,IAAAA,EAYTyyP,EAAIgd,+BAAiC,SAASpgP,GAAAA,OAC5Ck1B,EAAIl1B,EAAOzwB,WAAa,OACjBoB,IAAAA,EAYTyyP,EAAIid,QAAU,SAAS54O,GAAAA,OACrBytB,EAAI,IAAMztB,GACH92B,IAAAA,EAAAA,IAMLm8P,GAAQ,SAAS54P,EAAG1B,GAAAA,IAClBkqI,EAAKxoI,GAAK,EACd1E,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZnzE,IAAK,kBACIw/H,CAAAA,EAETl8E,IAAK,SAAS/uD,GACPmtD,MAAMntD,KACTirI,EAAK1hE,WAAWvpE,GAAAA,IAAAA,IAKlB6uQ,EAAK9tQ,GAAK,EACdhD,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZnzE,IAAK,kBACIojQ,CAAAA,EAET9/M,IAAK,SAAS/uD,GACPmtD,MAAMntD,KACT6uQ,EAAKtlM,WAAWvpE,GAAAA,IAAAA,IAKlB8uQ,EAAQ,YACZ/wQ,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZnzE,IAAK,kBACIqjQ,CAAAA,EAET//M,IAAK,SAAS/uD,GACZ8uQ,EAAQ9uQ,EAAMlC,UAAAA,IAGXoB,IAAAA,EAMLu8P,GAAY,SAASh5P,EAAG1B,EAAG2B,EAAGC,GAChC04P,GAAMl9P,KAAKe,KAAMuD,EAAG1B,GAAAA,KACfmL,KAAO,WAERkrD,EAAK10D,GAAK,EACd3E,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZnzE,IAAK,kBACI2rD,CAAAA,EAETrI,IAAK,SAAS/uD,GACPmtD,MAAMntD,KACTo3D,EAAKmS,WAAWvpE,GAAAA,IAAAA,IAKlB47C,EAAKj5C,GAAK,SACd5E,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZnzE,IAAK,kBACImwC,CAAAA,EAETmT,IAAK,SAAS/uD,GACPmtD,MAAMntD,KACT47C,EAAK2tB,WAAWvpE,GAAAA,IAKfd,IAAAA,EAOL6vQ,GAAe,gBACZl6I,KAAOA,GAAAA,KACP6hI,YAAcA,EAAAA,KACdK,MAAQA,EAAM70P,MAAM,QACpB43P,aAAeA,GAAa53P,MAAM,QAClCO,EAAI4sF,GAAAA,KACJtuF,EAAIuuF,GAAAA,KACJ/gE,OAAS+qO,GAAAA,KACTh3P,MAAQ0sQ,GAAatY,GAAAA,KACrBn0P,OAAS8xP,GAAcqC,GAAAA,KACvBO,kBAAoBA,EAAAA,KAEpBn3M,GAAK,QACLswM,cAAgB,GAGvB2e,GAAa/wQ,UAAU86C,QAAU,WAC/B+7E,GAAO31H,KAAK21H,KACZ6hI,EAAcx3P,KAAKw3P,YACnBoD,GAAe56P,KAAK46P,aACpB/C,EAAQ73P,KAAK63P,MACb1nK,GAAQnwF,KAAKuD,EACb6sF,GAAQpwF,KAAK6B,EACbu4P,GAAap6P,KAAKqvB,OAClB0gP,GAAavY,EAAax3P,KAAKoD,OAC/B4sQ,GAAcxY,EAAax3P,KAAKqD,QAChC00P,EAAoB/3P,KAAK+3P,iBAAAA,EAAAA,IAGvBkF,GAAuB,SAAS15P,EAAG1B,EAAGuB,EAAOC,EAAQgsB,GAEvD2rO,GAAkBz8P,KAAK,IAAIsxQ,IAG3Bl6I,GAAO6hI,EAAc,EACrBK,EAAQ,GACR1nK,GAAQ5sF,EACR6sF,GAAQvuF,EAERu4P,GAAa/qO,EAEb80O,GAAU,CAAC/gQ,EAAOC,GAAAA,EAGhB4sQ,GAAgB,SAASjxQ,GAAAA,GAEvB+7P,GAAgB/7P,GAClBg8P,GAAkBv4P,MAAMm3C,cAAAA,CAAAA,IAKtBs2N,EAAa,IAAIL,GAEjBM,EAAY,MAAQtxQ,OAAO0uC,KAAKutN,IAAe18P,OAAS,GAAGQ,SAAS,IACxEsxQ,EAAWtvN,GAAKuvN,EAEhBpV,GAAgB/7P,GAAOmxQ,EACvBrV,GAAcqV,GAAaD,EAE3BryI,GAAOizH,QAAQ,gBAAiBof,GAGhClV,GAAkBv4P,MAAMm3C,SAAAA,CAAAA,EAAAA,IAoIrB,IAAIkkE,MAhHT20I,EAAI2d,gBAAkB,SAAS7sQ,EAAG1B,EAAGuB,EAAOC,EAAQgsB,GAAAA,OAQlD4tO,GAAqB15P,EAAG1B,EAAGuB,EAAOC,EAAQgsB,GACnCrvB,IAAAA,EAWTyyP,EAAIwd,cAAgB,SAASjxQ,GAAAA,OAC3BixQ,GAAcjxQ,GACPgB,IAAAA,EAeTyyP,EAAI4d,aAAe,SAASrxQ,EAAKqwB,GAAAA,IAC3BwxO,EAAU/F,GAAcC,GAAgB/7P,IAAAA,OAC5CulD,EAAI,KACJA,EAAIl1B,EAAOzwB,WAAa,OACxB2lD,EAAI,IAAMs8M,EAAQjgN,GAAK,OACvB2D,EAAI,KACGvkD,IAAAA,EAYTyyP,EAAI6d,cAAgB,SAAStxQ,GAAAA,IACvB6hQ,EAAU/F,GAAcC,GAAgB/7P,IAAAA,MACrC,CACLuE,EAAGs9P,EAAQt9P,EACX1B,EAAGg/P,EAAQh/P,EACXuB,MAAOy9P,EAAQz9P,MACfC,OAAQw9P,EAAQx9P,OAChBgsB,OAAQwxO,EAAQxxO,OAAAA,EAepBojO,EAAIh5M,KAAO,SAASqsN,EAAUp4P,GAAAA,OAC5Bo4P,EAAWA,GAAY,iBAEvBp4P,EAAUA,GAAW,CAAC,GACd6iQ,cAAgB7iQ,EAAQ6iQ,gBAAiB,OAE7C7iQ,EAAQ6iQ,eACVpsB,GAAO0hB,GAAQF,MAAkBG,GACJ,mBAAlB3hB,GAAOqsB,QACZxsB,GAAa32M,YACfA,WAAW82M,GAAOqsB,OAAQ,KAGvBxwQ,MAEA,IAAIgB,SAAQ,SAASD,EAASE,GAAAA,IAAAA,IAE7BM,EAAS4iP,GAAO0hB,GAAQF,MAAkBG,GACjB,mBAAlB3hB,GAAOqsB,QACZxsB,GAAa32M,YACfA,WAAW82M,GAAOqsB,OAAQ,KAG9BzvQ,EAAQQ,EAECmnD,CADT,MAAOrnD,GACPJ,EAAOI,EAAEqnD,QAAAA,CAAAA,GAAAA,EAUEmpM,GAAMY,IACnBZ,GAAMY,IAAI10P,eAAe+/G,MACZ,WAAXA,IAAuB+zI,GAAMY,IAAI50H,OAAOz/H,OAAAA,SAChCy/H,EAAQ4yI,GAAAA,IAMZC,EAAWC,EAAkBzyQ,EAAAA,IAE5BA,EAAIuyQ,EAAUryQ,OAAS,GAAU,IAAPF,EAAUA,IAMvCwyQ,EAAYD,EAAUvyQ,GAAG,GACzByyQ,EAAmBF,EAAUvyQ,GAAG,GAChC2/H,EAAO+7D,UAAUj7L,MACfk/H,EACA,CAAC6yI,GAAWztQ,OACkB,mBAArB0tQ,EACH,CAACA,GACDA,GAAAA,CAtB8BvyQ,CA0BvCy/H,GAAQg0H,GAAMY,IAAI50H,QAErB40H,EAAI30I,IAAU+zI,GAAMY,IAAI30I,KAAAA,IAK1BgyJ,GAAgBrd,EAAIqd,aAAe,SAAS1Q,GAAAA,OAG3CxE,GAFHwE,EAAaA,GAAc5H,GAECgI,SAASG,UACjC/E,GAAawE,GAAYI,SAASC,aACpCvK,EAAAA,EAIA6a,GAAgBtd,EAAIsd,aAAe,SAAS3Q,EAAYt+P,GAC1D85P,GAAawE,GAAYI,SAASG,UAChC7+P,EAAQo0P,GAAc0F,GAAawE,GAAYI,SAASC,WAAAA,EAGxDtK,GAAiB1C,EAAI0C,cAAgB,SAASiK,GAAAA,OAG7CxE,GAFHwE,EAAaA,GAAc5H,GAECgI,SAASI,UACjChF,GAAawE,GAAYI,SAASE,aACpCxK,EAAAA,EAIA8a,GAAiBvd,EAAIud,cAAgB,SAAS5Q,EAAYt+P,GAC5D85P,GAAawE,GAAYI,SAASI,UAChC9+P,EAAQo0P,GAAc0F,GAAawE,GAAYI,SAASE,WAAAA,EAAAA,OAQ5DjN,EAAIpnG,SAAW,CACb64G,UAAWA,GACXkH,SAAUA,GACVrG,QAASqI,GACT/X,YAAaA,GACb6T,aAAcA,GACdqF,aAAcA,GACdZ,cAAeA,GACfE,oBAAqBA,GACrBN,aAAcA,GACdt1P,MAAOA,EACPgyP,wBAAyBA,GACzBC,sBAAuBA,GACvB0G,oBAAqB9C,GACrBC,4BAA6BA,GAC7B8C,YAAa,CAAC,EACd1T,UAAWA,GACXI,oBAAqBA,GACrBrF,kBAAmBA,GACnBmF,uBAAwBA,GACxBgB,WAAYA,GACZC,UAAWA,GACXzgI,OAAQA,GACRq3H,YAAaA,GACb1/H,SAAU,CACRi0I,SAAU,kBACDqG,GAAatY,EAAAA,EAEtBsZ,SAAU,SAAShwQ,GACjBivQ,GAAavY,EAAa12P,EAAAA,EAE5BiwQ,UAAW,kBACF5b,GAAcqC,EAAAA,EAEvBwZ,UAAW,SAASlwQ,GAClBkvQ,GAAcxY,EAAa12P,EAAAA,GAG/BsxP,kBAAmBA,EACnBC,WAAYA,GACZ0U,aAAcA,GACdh2M,OAAQA,GACR+zM,iBAAkBA,GAClBjN,MAAOA,EACPtzM,IAAKA,EACLyxM,GAAIA,EACJC,GAAIA,EACJ+Q,YAAaA,GACbE,mBAAoBA,GACpBC,mBAAoBA,GACpB8J,cAAere,EACfuJ,MAAOA,GACPI,UAAWA,GACXtH,OAAQA,GACR4R,UAAWA,IAGbhoQ,OAAOw6B,eAAeo5N,EAAIpnG,SAAS71B,SAAU,QAAS,CACpDjpH,IAAK,kBACIujQ,GAAatY,EAAAA,EAEtB3nM,IAAK,SAAS/uD,GACZivQ,GAAavY,EAAa12P,EAAAA,EAE5B4+E,YAAY,EACZD,cAAc,IAEhB5gF,OAAOw6B,eAAeo5N,EAAIpnG,SAAS71B,SAAU,SAAU,CACrDjpH,IAAK,kBACI4oP,GAAcqC,EAAAA,EAEvB3nM,IAAK,SAAS/uD,GACZkvQ,GAAcxY,EAAa12P,EAAAA,EAE7B4+E,YAAY,EACZD,cAAc,IAOhByjL,GAASjkQ,KAAKwzP,EAAKgG,IACnB0B,GAAgB,KAChBkK,GAASl+O,EAAQ4rO,GAEjBl0H,GAAOizH,QAAQ,eACR2B,CAAAA,CF9zLT9C,GAAY7wP,UAAUwxP,aAAe,SAASroP,GAAAA,OACrCnI,OAAO8F,aACXqC,GAAQ,EAAK,IACbA,GAAQ,EAAK,IACbA,GAAQ,GAAM,IACdA,GAAQ,GAAM,MAYnB0nP,GAAY7wP,UAAUsjQ,YAAc,SAAS8O,GAAAA,OACpCA,EACJptN,MAAM,IACNj2C,KAAI,SAASsjQ,GAAAA,OACJ,KAA4B,IAArBA,EAAK9rQ,WAAW,IAAWzG,SAAS,KAAKoE,OAAO,MAEhE9D,KAAK,KAWVywP,GAAY7wP,UAAUyxP,WAAa,SAAS34O,GAAAA,IACrC,IAAIlR,EAAQ,GAAImM,EAAI,EAAGA,EAAI+E,EAAIxZ,OAAQyU,GAAK,EAC/CnM,EAAMnI,KAAKuB,OAAO8F,aAAaqN,SAAS2E,EAAI42B,OAAO37B,EAAG,GAAI,aACrDnM,EAAMxH,KAAK,KAYpBywP,GAAY7wP,UAAUsxP,qBAAuB,SAC3CF,EACAC,GAAAA,OAGOf,GADGH,GAAOkB,GAAqB3hN,OAAO,EAAG,GAChC0hN,EAAAA,EAiBlBP,GAAY7wP,UAAU6/P,UAAY,SAASD,EAAU0S,GAAAA,IAC/CpyQ,EAAMiwP,GACRjvP,KAAKqwP,cACHvwP,OAAO8F,aACM,IAAX84P,EACCA,GAAY,EAAK,IACjBA,GAAY,GAAM,IACN,IAAb0S,EACCA,GAAc,EAAK,MAExB5iO,OAAO,EAAG,WACL,SAASvmC,GAAAA,OACPmnP,GAAIpwP,EAAKiJ,EAAAA,CAAAA,EExCpB+oP,GAAOlyP,UAAUyrH,OAAS,SAAgB1gD,GAAAA,IAEpClqE,EADA0xQ,EAAS,6BAERxnM,IAASy6D,EAAAA,GAAAA,GAAOz6D,MAAAA,EAAAA,GAAAA,GAAiB7pE,MAAM,OAAO,MAC/CwN,EAAQ,MACP7N,KAAKK,KAAM,KACVqxQ,EAAO7kQ,QAAQ7M,IAAM,OACrBK,KAAKjC,eAAe4B,KAAOkqE,EAAM9rE,eAAe4B,GAAI,OAAO,KAC3DK,KAAKL,KAAOkqE,EAAMlqE,GAAI,OAAO,EACjC6N,GAAAA,CAAAA,IAEG7N,KAAKkqE,EACJA,EAAM9rE,eAAe4B,IAAM0xQ,EAAO7kQ,QAAQ7M,GAAK,GAAG6N,IAAAA,OAEvC,IAAVA,CAAAA,EA+xLTqkP,GAAMY,IAAM,CACV50H,OAAQ,IAQVg0H,GAAMxuM,QAAU,QC35LhB,IAAIiuN,GAAWzf,GAAMY,IACjByC,GAAc,EAEdgP,GAAY,SAASpjQ,GAAAA,OAChBA,EACJ86B,QAAQ,MAAO,QACfA,QAAQ,MAAO,OACfA,QAAQ,MAAO,QAEhB21O,GAAc,SAASzwQ,GAAAA,OAClBA,EACJ86B,QAAQ,QAAS,MACjBA,QAAQ,QAAS,KACjBA,QAAQ,QAAS,MAGlBo6N,GAAK,SAASt+O,GAAAA,OACTA,EAAOijE,QAAQ,IAGpB62L,GAAK,SAAS95P,GAAAA,OACTA,EAAOijE,QAAQ,IAGxB22L,GAASG,aAAe,CAAC,EACzB,IAAIjiG,GAAU,SAAS3nI,EAAO3tB,GAC5B2tB,EAAM/oC,UAAYD,OAAOqB,OAAOga,EAAOpb,WACvC+oC,EAAM/oC,UAAUmB,YAAc4nC,CAAAA,EAG5BoR,GAAQ,SAAS11C,GAAAA,OACZA,EAAI2xP,EAAAA,EAGTwc,GAAoB,SAASC,GAAAA,IAC3BC,EAAO,IAAIC,GACXxuQ,EAASyuQ,GAAmBzmH,SAAS0lH,UAAUY,IAAe,EAC9DvuQ,EAAQ0uQ,GAAmBzmH,SAASo+G,SAASkI,IAAe,SAChEC,EAAKG,KAAO,CAAC,EAAG,EAAGp1J,OAAOq5I,GAAG5yP,IAASu5G,OAAOq5I,GAAG3yP,KACzCuuQ,CAAAA,EAMLI,GAAUV,GAASG,aAAaO,OAAS,SAASt6P,EAAQu6P,GAAAA,GAC5Dv6P,EAASA,GAAU,EACnBu6P,EAAcA,GAAe,EAEzBhkN,MAAMv2C,IAAWu2C,MAAMgkN,GAAAA,MACnB,IAAIxtQ,MACR,oEAKJiT,EAFc,GAAKu6P,CAAAA,EAOjBC,GAAYZ,GAASG,aAAaS,SAAW,SAASx6P,EAAQu6P,GAAAA,GAChEv6P,EAASA,GAAU,EACnBu6P,EAAcA,GAAe,EAEzBhkN,MAAMv2C,IAAWu2C,MAAMgkN,GAAAA,MACnB,IAAIxtQ,MACR,sEAKJiT,IAFc,GAAKu6P,EAAAA,EAOjBE,GAAUb,GAASG,aAAaU,OAAS,SAASz6P,EAAQu6P,GAAAA,GACxDhkN,MAAMv2C,IAAWu2C,MAAMgkN,GAAAA,MACnB,IAAIxtQ,MACR,oEAGqC,IAAjCiT,EAAU,GAAKu6P,GAAsB,EAAI,GAM/CG,GAAgBd,GAASG,aAAaW,aAAe,SACvD16P,EACAu6P,GAAAA,GAEIhkN,MAAMv2C,IAAWu2C,MAAMgkN,GAAAA,MACnB,IAAIxtQ,MACR,0EAGG0tQ,GAAOz6P,EAAQu6P,EAAc,IAGlCI,GAAgBf,GAASG,aAAaY,aAAe,SACvD36P,EACAu6P,GAAAA,GAEIhkN,MAAMv2C,IAAWu2C,MAAMgkN,GAAAA,MACnB,IAAIxtQ,MACR,0EAGGutQ,GAAOt6P,EAAQu6P,EAAc,IAGlCK,GAAkBhB,GAASG,aAAaa,eAAiB,SAC3D56P,EACAu6P,GAAAA,GAEIhkN,MAAMv2C,IAAWu2C,MAAMgkN,GAAAA,MACnB,IAAIxtQ,MACR,4EAGGytQ,GAASx6P,EAAQu6P,EAAc,IAGpCM,GAAwBjB,GAASG,aAAac,qBAAuB,SACvE/4P,EACAitP,GAAAA,IAEIwD,EAA0BxD,EAAMp7G,SAAS4+G,wBACzCC,EAAwBzD,EAAMp7G,SAAS6+G,sBACvC3mQ,EAAIiW,EAAK,GACT3X,EAAI2X,EAAK,GACThW,EAAIgW,EAAK,GACT/V,EAAI+V,EAAK,GAETg5P,EAAc,CAAC,EAAD,OAElBA,EAAYC,YAAcxI,EAAwB1mQ,IAAM,EACxDivQ,EAAYE,YAAcxI,EAAsBroQ,EAAI4B,IAAM,EAC1D+uQ,EAAYG,aAAe1I,EAAwB1mQ,EAAIC,IAAM,EAC7DgvQ,EAAYI,aAAe1I,EAAsBroQ,IAAM,EAEhD,CACL86G,OAAOq5I,GAAGwc,EAAYC,cACtB91J,OAAOq5I,GAAGwc,EAAYE,cACtB/1J,OAAOq5I,GAAGwc,EAAYG,eACtBh2J,OAAOq5I,GAAGwc,EAAYI,eAAAA,EAItBC,GAA4B,SAASlB,GAAAA,GACnCA,EAAWmB,wBAAyB,OAC/BnB,EAAWmB,wBAAAA,GAGfnB,EAAWh9O,GAAMg9O,EAAWoB,GAAI,CAAJA,IAM7BphB,EAAS,GACT76N,EAAO66O,EAAWqB,IAAMrB,EAAWoB,GACnCE,EAAUC,GAAWvB,EAAY76O,GACjC6pO,EAAUgR,EAAWlL,MAAMp7G,SAAS05G,QACtC4M,EAAW7O,SACX6O,EAAW5gP,WACX6vB,GAGF+wM,EAAOpzP,KAAK,WACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,MACZozP,EAAOpzP,KAAKozQ,EAAWlL,MAAM/T,YAAYmL,kBAAkB8T,EAAW32P,QACtE22O,EAAOpzP,KAAK,IAAMoiQ,EAAU,IAAM3K,GAAGid,EAAQtlP,UAAY,OACzDgkO,EAAOpzP,KAAK,kBACZozP,EAAOpzP,KAAK00Q,EAAQn8O,MACpB66N,EAAOpzP,KAAK,MACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,WAERu0Q,EAA0BpB,GAAkBC,GAAAA,OAChDmB,EAAwBrM,MAAQkL,EAAWlL,MAC3CqM,EAAwBnhB,OAASA,EAAOzyP,KAAK,MACtC4zQ,CAAAA,CAAAA,EAGLI,GAAa,SAASvB,EAAY76O,GAAAA,IAChCq8O,EACsB,IAAxBxB,EAAWhkP,SAAiBgkP,EAAWwB,YAAcxB,EAAWhkP,SAC9DghE,EAAc,CAChB73D,KAAM,GACNnJ,SAAU,IASRylP,GALJt8O,EACkC,MAFlCA,EAA4B,KAArBA,EAAK0X,OAAO,EAAG,GAAY1X,EAAK0X,OAAO,GAAK1X,GAE5C0X,OAAO1X,EAAK14B,OAAS,GACtB04B,EAAK0X,OAAO,EAAG1X,EAAK14B,OAAS,GAC7B04B,GAEegtB,MAAM,KAEzBsvN,EADEzB,EAAW0B,UACDD,EAAUvlQ,KAAI,YAAAylQ,OAAQA,EAAKxvN,MAAM,SAEjCsvN,EAAUvlQ,KAAI,YAAAylQ,MAAQ,CAACA,EAAAA,IAAAA,IAGjC3lP,EAAWwlP,EAIX9vQ,EAASyuQ,GAAmBzmH,SAAS0lH,UAAUY,IAAe,EAClEtuQ,EAASA,EAAS,GAAKA,EAASA,EAAAA,IAC5BD,EAAQ0uQ,GAAmBzmH,SAASo+G,SAASkI,IAAe,EAChEvuQ,EAAQA,EAAQ,GAAKA,EAAQA,EAAAA,IAEzBmwQ,EAAqB,SAASr1Q,EAAGs1Q,EAAU7lP,GAAAA,GACzCzvB,EAAI,EAAIk1Q,EAAUh1Q,OAAQ,KACxBilC,EAAMmwO,EAAW,IAAMJ,EAAUl1Q,EAAI,GAAG,UAC5Bu1Q,GAAmBpwO,EAAKsuO,EAAYhkP,GAAUvqB,OAC7CA,EAAQ,UAGlB,EAIXuqB,IACA+lP,EAAU,KAAO/lP,EAAW,GAAG,CAC7BmJ,EAAO,GACPnJ,IAAAA,IAMI6xB,EAKAm0N,EAVAC,EAAaH,GAAmB,IAAK9B,EAAYhkP,GAAUtqB,OAC3Do8C,EAASkyN,EAAW0B,UACpBhwQ,EAASsqB,GACRtqB,EAASuwQ,GAAc,EAIxBC,EAHJp0N,GA3BgB,EA+BZq0N,EAAkB,EACpBC,EAAiB,EAEfC,EAAW,KAEXrmP,GAAY,EAAG,CAGjBmJ,EAAO,aACPA,GACE,oBACA28O,GAAmB38O,EAAM66O,EAJ3BhkP,EAAW,IAIsCvqB,MAC/C,gBACAA,EACA,WAME,IAAK,IAFPowQ,EAAW,GACXS,EAAY,EACD/1Q,EAAI,EAAGA,EAAIk1Q,EAAUh1Q,OAAQF,IAAAA,GACtCk1Q,EAAUr1Q,eAAeG,GAAAA,CAAAA,IACvBg2Q,GAAAA,EAAgB,GACQ,IAAxBd,EAAUl1Q,GAAGE,QAAgB41Q,IAAaZ,EAAUl1Q,GAAGE,OAAS,EAAG,KAElEw1Q,EAxDO,IAwDsBK,EAAY,GAxDlC,EAyDR5wQ,EAAAA,SAESqwQ,EAGXF,GAAYJ,EAAUl1Q,GAAG81Q,GACzBE,GAAAA,EACAH,EAAiB71Q,EACjBA,GAAAA,KACK,CAELs1Q,EAC0C,MAF1CA,GAAYJ,EAAUl1Q,GAAG81Q,GAAY,KAE1BxlO,OAAOglO,EAASp1Q,OAAS,GAC9Bo1Q,EAAShlO,OAAO,EAAGglO,EAASp1Q,OAAS,GACrCo1Q,EAAAA,IACFx0Q,EAAMiU,SAAS/U,GACfi2Q,EAAoBZ,EAAmBv0Q,EAAKw0Q,EAAU7lP,GACtDymP,EAAal2Q,GAAKk1Q,EAAUh1Q,OAAS,KAErC+1Q,IAAsBC,EAAY,CACpCZ,GAAY,IACZQ,EAAW,WAEN,GAAKG,GAAsBC,GAe3B,GAAIA,EACTL,EAAiB/0Q,OAAAA,GAGf2yQ,EAAW0B,YACVO,EApGK,IAoGwBK,EAAY,GApGpC,EAqGJ5wQ,EAAAA,SAGOqwQ,MAxBiC,KACvC/B,EAAW0B,UAAW,SAChBK,EAAAA,IAGNE,EArFG,IAqF0BK,EAAY,GArFtC,EAsFJ5wQ,EAAAA,SAISqwQ,EAEXK,EAAiB/0Q,CAAAA,CAAAA,CAAAA,IAAAA,IAkBnByxB,EAAO,GAEFltB,EAAIuwQ,EAAiBvwQ,GAAKwwQ,EAAgBxwQ,IAAK,KAClD8wQ,EAAWjB,EAAU7vQ,GAAAA,GACrBouQ,EAAW0B,UAAW,IACpB9vQ,IAAMwwQ,EAAgB,CACxBtjP,GAAQ4jP,EAASL,GAAY,IAC7BA,GAAYA,EAAW,GAAKK,EAASj2Q,OAAAA,QAAAA,CAAAA,GAGnCmF,IAAMuwQ,EAAiB,CACzBrjP,GAAQ4jP,EAASA,EAASj2Q,OAAS,GAAK,cAI5CqyB,GAAQ4jP,EAAS,GAAK,WAIxB5jP,EACkC,KAAhCA,EAAK+d,OAAO/d,EAAKryB,OAAS,GACtBqyB,EAAK+d,OAAO,EAAG/d,EAAKryB,OAAS,GAC7BqyB,EAENkjP,EAAaF,GAAmBhjP,EAAMkhP,EAAYhkP,GAAUvqB,MAGpDuuQ,EAAWhjP,WAAAA,IACZ,QACH6wB,EAASp8C,EAAQuwQ,EA1IP,YA4IP,SACHn0N,GAAUp8C,EAAQuwQ,GAAc,QAE7B,QAEHn0N,EAjJU,EAoJd1oB,GAAQk/N,GAAGx2M,GAAU,IAAMw2M,GAAG6d,GAAS,QACvC/8O,GAAQ,IAAMotO,GAAUzzO,GAAQ,SAEhCqG,IAASk/N,GAAGx2M,GAAU,UAGtBq0N,IAAUlmP,EA3JE,GA8JZgmP,EAAa,EACbG,EAAkBI,EAAgBH,EAAiBA,EAAiB,EACpEE,IAEAT,EAAW,gBAOjB7kL,EAAY73D,KAAOA,EACnB63D,EAAYhhE,SAAWA,EAEhBghE,CAAAA,EAUL8kL,GAAqB,SAAS38O,EAAM66O,EAAYhkP,GAAAA,IAC9C4sB,EAAOo3N,EAAWlL,MAAMp7G,SAAS05G,QACnC4M,EAAW7O,SACX6O,EAAW5gP,WAET3tB,EACFuuQ,EAAWlL,MAAMoD,mBAAmB/yO,EAAM,CACxCyjB,KAAMA,EACN5sB,SAAU08C,WAAW18C,GACrBk6O,UAAW,IACRx9L,WAAW18C,GAAAA,MASX,CAAEtqB,OAPPsuQ,EAAWlL,MAAMoD,mBAAmB,IAAK,CACvCtvN,KAAMA,EACN5sB,SAAU08C,WAAW18C,GACrBk6O,UAAW,IAEbx9L,WAAW18C,GACX,IACuBvqB,MAAOA,EAAAA,EAG9BkxQ,GAAyB,CAC3BC,OAAQ,GACRC,OAAQ,GAMRC,uBAAwB,KAMxBC,YAAY,EACZrpH,SAAU,KACVspH,eAAe,GAmCbC,GAA4B,SAASpsI,EAAQi+H,GAAAA,IAC3C/4P,EAAU,CACZV,KAAM,YACNw7H,OAAQA,QAAAA,IAMRi+H,EAAMp7G,SACH27G,YAAYx+H,EAAO7S,MACnBsqI,YAAY4U,YAAY9wQ,MANb,SAASw9B,GAAAA,OAChBA,EAAMv0B,OAASU,EAAQV,MAAQu0B,EAAMinG,SAAW96H,EAAQ86H,MAAAA,KAO/Di+H,EAAMp7G,SACH27G,YAAYx+H,EAAO7S,MACnBsqI,YAAY4U,YAAYt2Q,KAAKmP,EAAAA,EAmLhConQ,GAAqB,SAASrO,EAAOkL,GAAAA,GACvCA,EAAWlL,MAAQA,OAAAA,IAEjBA,EAAMp7G,gBAAAA,IACLo7G,EAAMp7G,SAAS0pH,iBAAAA,IACdtO,EAAMp7G,SAAS0pH,eAAeJ,eAChC,IACAK,GAAcC,SAAW,EACzBxO,EAAMp7G,SAAS0pH,eAAiB97J,KAAKz+F,MACnCy+F,KAAKC,UAAUo7J,KAEb7N,EAAMp7G,SAAS0pH,eAAeN,uBAAwB,MAClD,IAAIhwQ,MAAM,+CAElBywP,GAAcuR,EAAMp7G,SAAS6pG,YAE7BuR,EAAMp7G,SAAS0pH,eAAeN,uBAAyB,IAAIS,GAC3DzO,EAAMp7G,SAAS0pH,eAAeN,uBAAuBhO,MAAQA,EAG7DA,EAAMp7G,SAAS0pH,eAAeN,uBAAuBU,SAAW1O,EAAMp7G,SAASxtB,OAAO+7D,UACpF,oBACA,WA7K2B,IAAS6sE,KA8KPA,GA5K3Bp7G,SAASxtB,OAAOgzH,YACpB4V,EAAMp7G,SAAS0pH,eAAeN,uBAAuBU,iBAEhD1O,EAAMp7G,SAAS0pH,eAAeN,uBAAuBU,SAC5D1O,EAAMp7G,SAAS0pH,eAAeL,YAAa,CAwKVjO,IAI/BA,EAAMp7G,SAASxtB,OAAO+7D,UAAU,iBAAiB,YA7PxB,SAAS6sE,GAEpCA,EAAMp7G,SAAS0pH,eAAeN,uBAAuBjX,WAAQ,EAAAxvP,IACzDumQ,EAAS9N,EAAMp7G,SAAS0pH,eAAeN,uBAAuBW,OAAAA,IAC7D,IAAIl3Q,KAAKq2Q,EAAAA,GACRA,EAAOx2Q,eAAeG,GAAI,KACxByzQ,EAAa4C,EAAOr2Q,GAExByzQ,EAAWnU,WAAQ,EAEfmU,EAAW0D,eAGbT,GAA0BjD,EAAYlL,EAAAA,CAAAA,CAbjB,CA8PAA,EAAAA,IAMzBA,EAAMp7G,SAASxtB,OAAO+7D,UAAU,cAAc,YA/MzB,SAAS6sE,GAAAA,QAAAA,IAGvBA,EAAMp7G,SAAS0pH,eAAeN,uBAAAA,MAW/B,IAAIhwQ,MAAM,qCARhBgiQ,EAAMp7G,SAASpzI,MACb,aACEwuP,EAAMp7G,SAAS0pH,eAAeN,uBAAuBjX,MADvD,QAPmB,CAgNAiJ,EAAAA,IAIrBA,EAAMp7G,SAASxtB,OAAO+7D,UAAU,gBAAgB,SAAS07E,IA/KnC,SAASA,EAAY7O,GAAAA,IACzC8O,GAAkBD,EAAAA,IAgBjB,IAAIp3Q,KAdJo3Q,IAIH7O,EAAMp7G,SAASgyG,uBACboJ,EAAMp7G,SAAS0pH,eAAeN,uBAAuBjX,OAAAA,GAGvDiJ,EAAMp7G,SAAS0pH,eAAeN,uBAAuBnW,aAGvDgX,EACEA,GAAc7O,EAAMp7G,SAAS0pH,eAAeN,uBAAuBe,KAAAA,GAG/DF,EAAWv3Q,eAAeG,GAAI,KAC5Bu3Q,EAAcH,EAAWp3Q,GACzBw3Q,EAAe,GACfC,EAAUF,EAAYG,KAAAA,GAEtBH,EAAYG,OACdH,EAAYG,KAAOrD,GAAqBkD,EAAYG,KAAMnP,IAI5DA,EAAMp7G,SAASgyG,uBAAuBoY,EAAYjY,OAAO,GAEzDiY,EAAYI,GAAK/D,GAAmBgE,8BAClCL,GAIuB,YAAvBnxI,EAAAA,GAAAA,GAAOmxI,IACyC,mBAAzCA,EAAYM,2BAEnBL,EAAeD,EAAYM,4BAG7BN,EAAYG,KAAOD,EAGjBF,EAAYO,sBACXP,EAAY3C,wBACb,KAEImD,EAAapD,GAA0B4C,GAC3CC,EAAan3Q,KAAK,CAAES,IAAK,KAAM8B,MAAO,QAAUm1Q,EAAa,OAE7DxP,EAAMp7G,SAAS0pH,eAAeP,OAAOj2Q,KAAK03Q,EAAAA,CAAAA,GAKxCR,EAAY3C,wBAAyB,KACnCoD,EAAyB,OAExB,IAAIpqN,KAAK2pN,EAAY3C,wBAAyB,GAC7C2C,EAAY3C,wBAAwB/0Q,eAAe+tD,GAAI,KACrDhrD,EAAQ20Q,EAAY3C,wBAAwBhnN,GAAAA,GAChDoqN,GAA0B,IAAMpqN,EAAI,IACpCoqN,GAA0B,KACtBr3Q,OAAO0uC,KAAKzsC,GAAO1C,QAAU,GAAKI,MAAMC,QAAQqC,IAAAA,IAE7C,IAAI5C,KAAK4C,EAAAA,GACRA,EAAM/C,eAAeG,GAAI,KACvB0tD,EAAM9qD,EAAM5C,GACG,mBAAR0tD,IAGTA,EAAMA,EAAI3sD,KAAKwnQ,EAAOgP,IAExBS,GAA0B,IAAMh4Q,EAAI,IAAM0tD,EAAM,IAI1C66M,EAAMp7G,SAAS0pH,eAAeP,OAAOhoQ,QAAQo/C,IAAQ,GACzD66M,EAAMp7G,SAAS0pH,eAAeP,OAAOj2Q,KAAKqtD,EAAAA,MAK7B,mBADnBA,EAAM9qD,KAIJ8qD,EAAMA,EAAI3sD,KAAKwnQ,EAAOgP,IAExBS,GAA0B,IAAMh4Q,EAAI,IAAM0tD,EACpC66M,EAAMp7G,SAAS0pH,eAAeP,OAAOhoQ,QAAQo/C,IAAQ,GACzD66M,EAAMp7G,SAAS0pH,eAAeP,OAAOj2Q,KAAKqtD,GAE9CsqN,GAA0B,KAK9BR,EAAan3Q,KAAK,CAChBS,IAAK,KACL8B,MAAO,OAASo1Q,EAAyB,OAI7CzP,EAAMp7G,SAASizG,UAAU,CACvBQ,oBAAqB4W,EACrBhX,SAAU+W,EAAYjY,QAGxBiJ,EAAMp7G,SAAS9mG,IAAI,UAGnBgxN,GAK0B,SAASD,EAAY7O,GAAAA,IAC9C,IAAIvoQ,KAAKo3Q,EAAAA,GACRA,EAAWv3Q,eAAeG,GAAI,KAC5Bc,EAAMd,EACNu3Q,EAAcH,EAAWp3Q,GAE7BuoQ,EAAMp7G,SAASgyG,uBAAuBoY,EAAYjY,OAAO,GAGhC,YAAvBl5H,EAAAA,GAAAA,GAAOmxI,IAC0B,mBAA1BA,EAAYnX,WAEnBmX,EAAYnX,mBAEPgX,EAAWt2Q,EAAAA,CAAAA,CAlBpBm3Q,CAA0B1P,EAAMp7G,SAAS0pH,eAAeP,OAAQ/N,EAAAA,CAjH1C,CAgLA6O,EAAY7O,EAAAA,IAGlCA,EAAMp7G,SAAS0pH,eAAeJ,eAAgB,IAK9CyB,GAAmB9E,GAASG,aAAa2E,gBAAkB,SAC7D3xN,EACA+4M,EACAiJ,GAAAA,IAEI9H,EAAY,SAAS12P,GAAAA,OAChBA,CAAAA,EAAAA,GAELzJ,MAAMC,QAAQgmD,GAAQ,SACpBxzB,EAAU,IACL/yB,EAAI,EAAGA,EAAIumD,EAAMrmD,OAAQF,IAAAA,OACtB,IAANA,IACF+yB,GAAW,cAEEwzB,EAAMvmD,KAAAA,IACd,cACA,aACA,SACH+yB,GAAWwzB,EAAMvmD,GAAGU,WAAAA,MAAAA,IAEjB,SAC2B,MAA1B6lD,EAAMvmD,GAAGswC,OAAO,EAAG,aACVgvN,GAAyBiJ,IAClC9H,EAAY8H,EAAMp7G,SAAS07G,aAAavJ,IAC1CvsO,GAAW,IAAMizO,GAAUvF,EAAUl6M,EAAMvmD,GAAGU,aAAe,KAE7DqyB,GAAWwzB,EAAMvmD,GAAGU,WAAAA,OAK5BqyB,EAAW,UAGP,IAAIxsB,MACR,kEAoBA4xQ,GAAc,SAASn0O,EAAQs7N,EAAOiJ,GAAAA,IACpC9H,EAAY,SAAS12P,GAAAA,OAChBA,CAAAA,EAAAA,YAAAA,IAEEu1P,GAAyBiJ,IAClC9H,EAAY8H,EAAMp7G,SAAS07G,aAAavJ,KAC1Ct7N,EAASA,GAAU,IACZtjC,WACE,IAAMslQ,GAAUvF,EAAUz8N,IAAW,KAY5Co0O,GAAoB,gBACjBC,YAAS,EAAAvoQ,KACTwoQ,YAAS,EAMd33Q,OAAOw6B,eAAer5B,KAAM,QAAS,CACnCuM,IAAK,uBACQvM,KAAKu2Q,OAAwB,aAC3Bv2Q,KAAKymQ,MAAAA,OAAAA,KAGX8P,OAASv2Q,KAAKymQ,MAAMp7G,SAAS6sG,mBAAAA,CAAAA,OAE7Bl4P,KAAKu2Q,MAAAA,EAEd1mN,IAAK,SAAS/uD,GAAAA,KACPy1Q,OAASz1Q,CAAAA,IAGlBjC,OAAOw6B,eAAer5B,KAAM,QAAS,CACnCc,MAAOd,KAAKw2Q,OACZxxI,UAAU,KAOdsxI,GAAkBx3Q,UAAUF,SAAW,kBAC9BoB,KAAKw9P,MAAQ,QAGtB8Y,GAAkBx3Q,UAAUw/P,UAAY,eAClCoX,EAAe11Q,KAAK+1Q,2BAAAA,KACnBtP,MAAMp7G,SAASizG,UAAU,CAC5Br2P,KAAMjI,KAAK2xP,OACXmN,oBAAqB4W,EACrBhX,SAAU1+P,KAAKw9P,QAAAA,KAEZiJ,MAAMp7G,SAAS9mG,IAAI,WAS1B+xN,GAAkBx3Q,UAAUi3Q,yBAA2B,eACjDL,EAAe,GACfnoO,EAAO1uC,OAAOgtD,oBAAoB7rD,MAAM6a,QAAO,SAAS7b,GAAAA,MAEjD,WAAPA,GACO,2BAAPA,GACO,SAAPA,GACO,SAAPA,GACuB,KAAvBA,EAAIoc,UAAU,EAAG,UAIhB,IAAIld,KAAKqvC,EAAAA,IAAAA,IACR1uC,OAAO2gF,yBAAyBx/E,KAAMutC,EAAKrvC,IAAIuhF,aAAwB,KACrEzgF,EAAMuuC,EAAKrvC,GACX4C,EAAQd,KAAKhB,GAEb8B,IACEtC,MAAMC,QAAQqC,GAChB40Q,EAAan3Q,KAAK,CAChBS,IAAKA,EACL8B,MAAOs1Q,GAAgBt1Q,EAAOd,KAAKw9P,MAAOx9P,KAAKymQ,SAExC3lQ,aAAiBw1Q,IAG1Bx1Q,EAAM2lQ,MAAQzmQ,KAAKymQ,MACnBiP,EAAan3Q,KAAK,CAAES,IAAKA,EAAK8B,MAAOA,EAAM08P,MAAQ,UACzB,mBAAV18P,GAChB40Q,EAAan3Q,KAAK,CAAES,IAAKA,EAAK8B,MAAOA,IAAAA,CAAAA,OAKtC40Q,CAAAA,EAGT,IAAI7D,GAAkB,WACpByE,GAAkBr3Q,KAAKe,MAEvBnB,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClCc,MAAO,WACP2+E,cAAc,EACdulD,UAAU,IAGZnmI,OAAOw6B,eAAer5B,KAAM,UAAW,CACrCc,MAAO,QACP2+E,cAAc,EACdulD,UAAU,IAGZnmI,OAAOw6B,eAAer5B,KAAM,WAAY,CACtCc,MAAO,EACP2+E,cAAc,EACdulD,UAAU,QAoBRyxI,EAjBAC,EAAQ,GACZ73Q,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClCy/E,cAAc,EACdlzE,IAAK,kBACImqQ,CAAAA,EAET7mN,IAAK,SAAS/uD,GACZ41Q,EAAQ51Q,CAAAA,IAIZjC,OAAOw6B,eAAer5B,KAAM,YAAa,CACvCc,MAAO,QACP2+E,cAAc,EACdulD,UAAU,IAIZnmI,OAAOw6B,eAAer5B,KAAM,SAAU,CACpC0/E,YAAY,EACZD,cAAc,EACd5vB,IAAK,SAAS/uD,GACZ21Q,EAAU31Q,EAAMq5B,MAAAA,EAElB5tB,IAAK,kBACCkqQ,GAGK,SAMfjnG,GAAQqiG,GAAiByE,IAEzB,IAAIpB,GAAqB,WACvBoB,GAAkBr3Q,KAAKe,MAAAA,IAwBnB22Q,EAtBAC,EAAQ,GAEZ/3Q,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACCqqQ,EAAMx4Q,OAAS,EACVw4Q,OAAAA,CAAAA,IAMb/3Q,OAAOw6B,eAAer5B,KAAM,SAAU,CACpC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIqqQ,CAAAA,IAMX/3Q,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,cACEoqQ,EAAAA,CAAAA,IAGDhY,EAAY,SAAS12P,GAAAA,OAChBA,CAAAA,EAAAA,OAELjI,KAAKymQ,QAAO9H,EAAY3+P,KAAKymQ,MAAMp7G,SAAS07G,aAAa/mQ,KAAKw9P,QAC3D,IAAM0G,GAAUvF,EAAUgY,IAAQ,MAE3C9mN,IAAK,SAAS/uD,GACZ61Q,EAAM71Q,CAAAA,GAAAA,EAKZ0uK,GAAQ0lG,GAAoBoB,IAQ5B,IAAItB,GAAgB,SAAhBA,IACFsB,GAAkBr3Q,KAAKe,MAAAA,IAGnB62Q,EAAK,EACTh4Q,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIsqQ,CAAAA,EAEThnN,IAAK,SAAS/uD,GAAAA,GACPmtD,MAAMntD,GAAAA,MAGH,IAAI2D,MACR,kBAAoB3D,EAAQ,+BAH9B+1Q,EAAK/1Q,CAAAA,IAiBXjC,OAAOw6B,eAAer5B,KAAM,kBAAmB,CAC7C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAayE,EAAI,KAElChnN,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL0Q,EAAI6gQ,GAAawE,EAAI,QAErBrlQ,EAAI8gQ,GAAeuE,EAAI,UAK9BC,EAAM,EACVj4Q,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIuqQ,CAAAA,EAETjnN,IAAK,SAAS/uD,GAAAA,GACPmtD,MAAMntD,GAAAA,MAGH,IAAI2D,MACR,kBAAoB3D,EAAQ,gCAH9Bg2Q,EAAMh2Q,CAAAA,IAAAA,IASRi2Q,EAAQ,GACZl4Q,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,cACkB,IAAjBwqQ,EAAM34Q,OAAAA,OAGH24Q,CAAAA,EAETlnN,IAAK,SAAS/uD,GAEVi2Q,OAAAA,IADSj2Q,EACDA,EAEA,MAYdjC,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACEwqQ,GAAS9oN,MAAM8oN,EAAM,IACjB,EAEFA,EAAM,IAEflnN,IAAK,SAAS/uD,GACZi2Q,EAAM,GAAKj2Q,CAAAA,IAWfjC,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACEwqQ,GAAS9oN,MAAM8oN,EAAM,IACjB,EAEFA,EAAM,IAEflnN,IAAK,SAAS/uD,GACZi2Q,EAAM,GAAKj2Q,CAAAA,IAWfjC,OAAOw6B,eAAer5B,KAAM,QAAS,CACnC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACEwqQ,GAAS9oN,MAAM8oN,EAAM,IACjB,EAEFA,EAAM,IAEflnN,IAAK,SAAS/uD,GACZi2Q,EAAM,GAAKj2Q,CAAAA,IAWfjC,OAAOw6B,eAAer5B,KAAM,SAAU,CACpC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACEwqQ,GAAS9oN,MAAM8oN,EAAM,IACjB,EAEFA,EAAM,IAEflnN,IAAK,SAAS/uD,GACZi2Q,EAAM,GAAKj2Q,CAAAA,IAAAA,IAIXk2Q,EAAM,GACVn4Q,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIyqQ,CAAAA,EAETnnN,IAAK,SAAS/uD,GAAAA,OACJA,GAAAA,IACD,WACA,UACA,UACA,OACHk2Q,EAAMl2Q,EAAAA,MAAAA,QAAAA,MAGA,IAAI2D,MACR,kBAAoB3D,EAAQ,wCAMlCm2Q,EAAK,KAETp4Q,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,eACE0qQ,GAAMA,EAAG74Q,OAAS,EAAG,IAEpB4B,gBAAgBk3Q,GAAAA,OAGpBD,EAAK,cAAgBjC,EAAcC,UAAAA,CAAAA,IAEjCtW,EAAY,SAAS12P,GAAAA,OAChBA,CAAAA,EAAAA,OAELjI,KAAKymQ,QAAO9H,EAAY3+P,KAAKymQ,MAAMp7G,SAAS07G,aAAa/mQ,KAAKw9P,QAC3D,IAAM0G,GAAUvF,EAAUsY,IAAO,KAE1CpnN,IAAK,SAAS/uD,GACZm2Q,EAAKn2Q,EAAMlC,UAAAA,IAWfC,OAAOw6B,eAAer5B,KAAM,YAAa,CACvCy/E,cAAc,EACdC,YAAY,EACZnzE,IAAK,kBACI0qQ,CAAAA,EAETpnN,IAAK,SAAS/uD,GACZm2Q,EAAKn2Q,CAAAA,IAAAA,IAILq2Q,EAAY,YAQhBt4Q,OAAOw6B,eAAer5B,KAAM,WAAY,CACtC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACI4qQ,CAAAA,EAETtnN,IAAK,SAAS/uD,GACZq2Q,EAAYr2Q,CAAAA,IAAAA,IAIZs2Q,EAAa,SAQjBv4Q,OAAOw6B,eAAer5B,KAAM,YAAa,CACvC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACI6qQ,CAAAA,EAETvnN,IAAK,SAAS/uD,GACZs2Q,EAAat2Q,CAAAA,IAAAA,IAIbu2Q,EAAY,EAQhBx4Q,OAAOw6B,eAAer5B,KAAM,WAAY,CACtC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACI8qQ,CAAAA,EAETxnN,IAAK,SAAS/uD,GACZu2Q,EAAYv2Q,CAAAA,IAAAA,IAIZw2Q,OAAAA,EAQJz4Q,OAAOw6B,eAAer5B,KAAM,cAAe,CACzC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,2BACC+qQ,EAGK,GAAKpiB,GAELoiB,CAAAA,EAGXznN,IAAK,SAAS/uD,GACZw2Q,EAAex2Q,CAAAA,IAAAA,IAIfy2Q,EAAS,QAQb14Q,OAAOw6B,eAAer5B,KAAM,QAAS,CACnC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIgrQ,CAAAA,EAET1nN,IAAK,SAAS/uD,GACZy2Q,EAASz2Q,CAAAA,IAAAA,IAIT61Q,EAAM,eAEV93Q,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,iBAEAoqQ,GACD32Q,gBAAgBk3Q,IAChBl3Q,gBAAgBw3Q,IAAAA,OAIXnB,GAAYM,EAAK32Q,KAAKw9P,MAAOx9P,KAAKymQ,MAAAA,EAE3C52M,IAAK,SAAS/uD,GACZA,EAAQA,EAAMlC,WACd+3Q,EAAM71Q,CAAAA,IAAAA,IAIN22Q,EAAM,KACV54Q,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,cACEkrQ,EAAAA,OAGDz3Q,gBAAgB03Q,IAAAA,EACXrB,GAAYoB,EAAKz3Q,KAAKw9P,MAAOx9P,KAAKymQ,OAEpCgR,CAAAA,EAET5nN,IAAK,SAAS/uD,GACZA,EAAQA,EAAMlC,WAGV64Q,EAFAz3Q,gBAAgB03Q,IAAAA,EACS,MAAvB52Q,EAAM0tC,OAAO,EAAG,GACZ+iO,GAAYzwQ,EAAM0tC,OAAO,EAAG1tC,EAAM1C,OAAS,IAE3CmzQ,GAAYzwQ,GAGdA,CAAAA,IAYZjC,OAAOw6B,eAAer5B,KAAM,eAAgB,CAC1C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACCvM,gBAAgB03Q,IAAAA,EACXnG,GAAYkG,EAAIjpO,OAAO,EAAGipO,EAAIr5Q,OAAS,IAEvCq5Q,CAAAA,EAGX5nN,IAAK,SAAS/uD,GACZA,EAAQA,EAAMlC,WAEZ64Q,EADEz3Q,gBAAgB03Q,IAAAA,EACZ,IAAM52Q,EAENA,CAAAA,IAAAA,IAKRkyQ,EAAK,KACTn0Q,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,cACEymQ,EAAAA,OAGEA,CAAAA,EAETnjN,IAAK,SAAS/uD,GAAAA,KACP6zB,EAAI7zB,CAAAA,IAGbjC,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,cACEymQ,EAAAA,OAGDhzQ,gBAAgB03Q,IAAAA,EACXrB,GAAYrD,EAAIhzQ,KAAKw9P,MAAOx9P,KAAKymQ,OAEnCuM,CAAAA,EAETnjN,IAAK,SAAS/uD,GACZA,EAAQA,EAAMlC,WAGVo0Q,EAFAhzQ,gBAAgB03Q,IAAAA,EACS,MAAvB52Q,EAAM0tC,OAAO,EAAG,GACb+iO,GAAYzwQ,EAAM0tC,OAAO,EAAG1tC,EAAM1C,OAAS,IAE3CmzQ,GAAYzwQ,GAGdA,CAAAA,IAYXjC,OAAOw6B,eAAer5B,KAAM,QAAS,CACnC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACCvM,gBAAgB03Q,IAAAA,EACXnG,GAAYyB,EAAGxkO,OAAO,EAAGwkO,EAAG50Q,OAAS,IAErC40Q,CAAAA,EAGXnjN,IAAK,SAAS/uD,GACZA,EAAQA,EAAMlC,WAEZo0Q,EADEhzQ,gBAAgB03Q,IAAAA,EACb,IAAM52Q,EAENA,CAAAA,IAYXjC,OAAOw6B,eAAer5B,KAAM,gBAAiB,CAC3C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIvM,KAAK41Q,IAAAA,IAIhB/2Q,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIvM,KAAKq1Q,cAAgB,SAAW,QAI3Cx2Q,OAAOw6B,eAAer5B,KAAM,UAAW,CACrC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIvM,KAAKq1Q,cAAgB,UAAY,YA8BxCsC,EA1BAC,GAAAA,EAQJ/4Q,OAAOw6B,eAAer5B,KAAM,sBAAuB,CACjD0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIqrQ,CAAAA,EAET/nN,IAAK,SAAS/uD,GACZA,EAAQ2oH,QAAQ3oH,GAChB82Q,EAAuB92Q,CAAAA,IAW3BjC,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,cACEorQ,EAAAA,OAGEA,CAAAA,EAET9nN,IAAK,SAAS/uD,GACZ62Q,EAAQ72Q,CAAAA,IAWZjC,OAAOw6B,eAAer5B,KAAM,WAAY,CACtC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,KAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,QAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,MAYxC39F,OAAOw6B,eAAer5B,KAAM,WAAY,CACtC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,KAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,QAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,MAYxC39F,OAAOw6B,eAAer5B,KAAM,WAAY,CACtC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,KAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,QAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,UAKpCq7K,EAAK,KACTh5Q,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,cACQ,OAAPsrQ,EAAAA,OAGGA,CAAAA,EAEThoN,IAAK,SAAS/uD,GAAAA,IACsB,IAA9B,CAAC,EAAG,EAAG,GAAG0L,QAAQ1L,GAAAA,MAGd,IAAI2D,MACR,kBAAoB3D,EAAQ,+BAH9B+2Q,EAAK/2Q,CAAAA,IAiBXjC,OAAOw6B,eAAer5B,KAAM,YAAa,CACvCuM,IAAK,eACChL,EAAAA,OACIs2Q,GAAAA,KACD,UAEHt2Q,EAAS,kBAEN,EACHA,EAAS,oBAEN,EACHA,EAAS,eAGNA,CAAAA,EAETk+E,cAAc,EACdC,YAAY,EACZ7vB,IAAK,SAAS/uD,GAAAA,OACJA,GAAAA,IACD,aACA,EACH+2Q,EAAK,YAEF,cACA,EACHA,EAAK,QAGF,QAEHA,EAAK,OAMfroG,GAAQwlG,GAAesB,IAAAA,IAMnBwB,GAAsB,WACxB9C,GAAc/1Q,KAAKe,MAAAA,KAEd+3Q,GAAK,WAELpjP,EAAI,UAEJmuO,SAAW,mBAEZkV,EAAM,EAEVn5Q,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIyrQ,CAAAA,EAETnoN,IAAK,SAAS/uD,GACZk3Q,EAAMl3Q,CAAAA,IAWVjC,OAAOw6B,eAAer5B,KAAM,WAAY,CACtC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIyrQ,CAAAA,EAETnoN,IAAK,SAAS/uD,GACZk3Q,EAAMl3Q,CAAAA,IAAAA,IAINm3Q,EAAO,GACXp5Q,OAAOw6B,eAAer5B,KAAM,MAAO,CACjC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACI6pQ,GAAgB6B,EAAMj4Q,KAAKw9P,MAAOx9P,KAAKymQ,MAAAA,EAEhD52M,IAAK,SAAS/uD,GA97BU,IAAS2jD,EAC/BljD,EAAAA,EAAS,GACQ,iBAFckjD,EA+7BF3jD,KA57B/BS,EAZJ,SAAoB2gC,EAAQo1B,EAAO5xD,GACjCA,IAAUA,EAAQ,WAEdg2C,EADAqwB,EAAU,GAENrwB,EAAQ4b,EAAMwN,KAAK5iC,IACzB6pC,EAAQxtE,KAAKm9C,EAAMh2C,IAAAA,OAEdqmE,CAAAA,CAPT,CAYwBtnB,EAAO,eA47BzBwzN,EA17BG12Q,CAAAA,IAAAA,KAq8BF22Q,WAAa,kBACTD,CAAAA,EAAAA,KAUJzmG,WAAa,SAAS1wK,GACzBm3Q,EAAOn3Q,EACHd,KAAK6nD,MACPowN,EAAKpwN,MAAAA,EAAAA,KAWJswN,UAAY,SAASr3Q,GAExBA,GADAA,EAAQA,GAAS,IACHlC,WACdq5Q,EAAK15Q,KAAKuC,GACNd,KAAK6nD,MACPowN,EAAKpwN,MAAAA,EAAAA,KAYJuwN,aAAe,SAASt3Q,EAAOu3Q,GAAAA,IAClCA,EAAaA,IAAAA,EAEbv3Q,GADAA,EAAQA,GAAS,IACHlC,YAEkB,IAAzBq5Q,EAAKzrQ,QAAQ1L,KAClBm3Q,EAAK5gQ,OAAO4gQ,EAAKzrQ,QAAQ1L,GAAQ,QAC7Bu3Q,KAAAA,EAaRx5Q,OAAOw6B,eAAer5B,KAAM,QAAS,CACnC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAYxC39F,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IAERd,KAAK6xH,SAAAA,IACHpI,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,QAa1C39F,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,IAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,IAChCy7K,EAAKpwN,QAAAA,KAEA20C,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAYxC39F,OAAOw6B,eAAer5B,KAAM,cAAe,CACzC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAYxC39F,OAAOw6B,eAAer5B,KAAM,kBAAmB,CAC7C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAaxC39F,OAAOw6B,eAAer5B,KAAM,oBAAqB,CAC/C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,YAKnCw5K,qBAAsB,GAE7BxmG,GAAQsoG,GAAqB9C,IAAAA,IAOzBsD,GAAkB,WACpBR,GAAoB74Q,KAAKe,MAAAA,KACpB8iQ,SAAW,iBAGXjxI,OAAQ,GAEf29C,GAAQ8oG,GAAiBR,IAAAA,IAQrBS,GAAmB,WACrBD,GAAgBr5Q,KAAKe,MAAAA,KAChB6xH,OAAQ,GAEf29C,GAAQ+oG,GAAkBD,IAAAA,IAStBE,GAAkB,WACpBD,GAAiBt5Q,KAAKe,MAAAA,KACjBy4Q,MAAO,GAEdjpG,GAAQgpG,GAAiBD,IAAAA,IAMrBb,GAAiB,WACnB1C,GAAc/1Q,KAAKe,MAAAA,KACd+3Q,GAAK,OAQVl5Q,OAAOw6B,eAAer5B,KAAM,gBAAiB,CAC3C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAWxC39F,OAAOw6B,eAAer5B,KAAM,QAAS,CACnC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAWxC39F,OAAOw6B,eAAer5B,KAAM,aAAc,CACxC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAWxC39F,OAAOw6B,eAAer5B,KAAM,gBAAiB,CAC3C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,WAyDpCk8K,EApDAC,EAAM,CAAC,EACX95Q,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,eACCoyP,EAAY,SAAS12P,GAAAA,OAChBA,CAAAA,EAAAA,GAELjI,KAAKymQ,QAAO9H,EAAY3+P,KAAKymQ,MAAMp7G,SAAS07G,aAAa/mQ,KAAKw9P,QAClC,IAA5B3+P,OAAO0uC,KAAKorO,GAAKv6Q,OAAc,KAG7BY,EAFAuC,EAAS,OAGRvC,KAFLuC,EAAOhD,KAAK,MAEAo6Q,EACVp3Q,EAAOhD,KAAK,IAAMS,EAAM,KAAOklQ,GAAUvF,EAAUga,EAAI35Q,KAAS,YAElEuC,EAAOhD,KAAK,MACLgD,EAAOrC,KAAK,QAIvB2wD,IAAK,SAAS/uD,GACS,YAAjBwjI,EAAAA,GAAAA,GAAOxjI,KACT63Q,EAAM73Q,EAAAA,IAgBZjC,OAAOw6B,eAAer5B,KAAM,UAAW,CACrC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIosQ,EAAIC,IAAM,IAEnB/oN,IAAK,SAAS/uD,GACS,iBAAVA,IACT63Q,EAAIC,GAAK93Q,EAAAA,IAMfjC,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACImsQ,CAAAA,EAET7oN,IAAK,SAAS/uD,GACZ43Q,EAAM53Q,CAAAA,IAUVjC,OAAOw6B,eAAer5B,KAAM,kBAAmB,CAC7C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACImsQ,EAAIlqO,OAAO,EAAGkqO,EAAIt6Q,OAAS,IAEpCyxD,IAAK,SAAS/uD,GACZ43Q,EAAM,IAAM53Q,CAAAA,GAAAA,EAIlB0uK,GAAQkoG,GAAgB1C,IAAAA,IAOpB6D,GAAqB,WACvBnB,GAAez4Q,KAAKe,MAAAA,KACf84Q,YAAa,GAEpBtpG,GAAQqpG,GAAoBnB,IAAAA,IAOxBqB,GAAsB,WACxBrB,GAAez4Q,KAAKe,MAAAA,KACfg5Q,OAAQ,OACRF,YAAa,MAEdlC,EAAQ,GACZ/3Q,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIqqQ,CAAAA,EAET/mN,IAAK,SAAS/uD,GAEV81Q,OAAAA,IADS91Q,EACDA,EAEA,OAKhB0uK,GAAQupG,GAAqBrB,IAS7B,IAAIR,GAAqB,eAGnB+B,EAYAC,EAdJlE,GAAc/1Q,KAAKe,MAGnBnB,OAAOw6B,eAAer5B,KAAM,SAAU,CACpC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACI0sQ,CAAAA,EAETppN,IAAK,SAAS/uD,GACZm4Q,EAAUn4Q,CAAAA,IAKdjC,OAAOw6B,eAAer5B,KAAM,aAAc,CACxC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACI2sQ,CAAAA,EAETrpN,IAAK,SAAS/uD,GACZo4Q,EAAcp4Q,CAAAA,IAAAA,IAqDd43Q,EAjDAC,EAAM,CAAC,EACX95Q,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,eACCoyP,EAAY,SAAS12P,GAAAA,OAChBA,CAAAA,EAELjI,KAAKymQ,QAAO9H,EAAY3+P,KAAKymQ,MAAMp7G,SAAS07G,aAAa/mQ,KAAKw9P,QAAAA,IAG9Dx+P,EAFAuC,EAAS,OAGRvC,KAFLuC,EAAOhD,KAAK,MAEAo6Q,EACVp3Q,EAAOhD,KAAK,IAAMS,EAAM,KAAOklQ,GAAUvF,EAAUga,EAAI35Q,KAAS,YAElEuC,EAAOhD,KAAK,MACLgD,EAAOrC,KAAK,OAErB2wD,IAAK,SAAS/uD,GACS,YAAjBwjI,EAAAA,GAAAA,GAAOxjI,KACT63Q,EAAM73Q,EAAAA,IAgBZjC,OAAOw6B,eAAer5B,KAAM,UAAW,CACrC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIosQ,EAAIC,IAAM,IAEnB/oN,IAAK,SAAS/uD,GACS,iBAAVA,IACT63Q,EAAIC,GAAK93Q,EAAAA,IAMfjC,OAAOw6B,eAAer5B,KAAM,KAAM,CAChC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACImsQ,CAAAA,EAET7oN,IAAK,SAAS/uD,GACZ43Q,EAAM53Q,CAAAA,IAUVjC,OAAOw6B,eAAer5B,KAAM,kBAAmB,CAC7C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACImsQ,EAAIlqO,OAAO,EAAGkqO,EAAIt6Q,OAAS,IAEpCyxD,IAAK,SAAS/uD,GACZ43Q,EAAM,IAAM53Q,CAAAA,IAAAA,KAGXq4Q,QAAU,SACVC,gBAAkB,WAGlBC,gBAAkBvH,GAAmBl3H,YAAY0+H,OAAAA,KAEjDxG,wBAA0B9yQ,KAAKq5Q,gBAAgBE,uBAClDv5Q,KAAKw5Q,WAAAA,EAGThqG,GAAQ0nG,GAAoBlC,IAE5B+D,GAAoBj6Q,UAAU26Q,cAAgB,SAASxD,GAAAA,KAC/C,2BAA4BA,MAAc,UAAWA,GAAAA,MACnD,IAAIxxQ,MACR,0EAGC,IAAI+4P,KAASx9P,KAAKw1Q,KAAM,GACvBx1Q,KAAKw1Q,KAAKz3Q,eAAey/P,GAAQ,KAC/B31N,EAAQ7nC,KAAKw1Q,KAAKhY,GACtB31N,EAAMirO,wBAA0BmD,EAAWsD,uBACzC1xO,EAAM2xO,YAER3xO,EAAMsxO,QAAUlD,EAAWyD,OAAAA,CAAAA,EAKjCX,GAAoBj6Q,UAAU66Q,aAAe,SAAS5gQ,GAAAA,IAEhD8uB,EAAQ,IAAIqvO,GAAAA,OAChBrvO,EAAMk8G,OAAS/jJ,KACf6nC,EAAM2xO,WAAazgQ,EAAAA,KAEdy8P,KAAKj3Q,KAAKspC,GAEf+xO,GAAS36Q,KAAKe,KAAKymQ,MAAO5+N,GAEnBA,CAAAA,EAAAA,IAQLgyO,GAAmB,WACrBnC,GAAez4Q,KAAKe,MAAAA,KAEf8iQ,SAAW,oBACXqW,QAAU,SACVC,gBAAkB,UAClBt4Q,MAAQ,UACR6tB,UAAY,cACZmkP,wBAA0BhB,GAAmB72H,SAASs+H,wBAAAA,EAE7D/pG,GAAQqqG,GAAkBnC,IAAAA,IAMtBF,GAAoB,WACtBxC,GAAc/1Q,KAAKe,MAAAA,KACd+3Q,GAAK,MAQVl5Q,OAAOw6B,eAAer5B,KAAM,YAAa,CACvC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAWxC39F,OAAOw6B,eAAer5B,KAAM,aAAc,CACxC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAWxC39F,OAAOw6B,eAAer5B,KAAM,kBAAmB,CAC7C0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAWxC39F,OAAOw6B,eAAer5B,KAAM,cAAe,CACzC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAWxC39F,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,OAWxC39F,OAAOw6B,eAAer5B,KAAM,WAAY,CACtC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,WAKpCs9K,EAAU,KACdj7Q,OAAOw6B,eAAer5B,KAAM,SAAU,CACpC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIutQ,CAAAA,EAETjqN,IAAK,SAAS/uD,GACZg5Q,EAAUh5Q,CAAAA,IAUdjC,OAAOw6B,eAAer5B,KAAM,YAAa,CACvC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIutQ,CAAAA,EAETjqN,IAAK,SAAS/uD,GACR67G,OAAOo9J,UAAUj5Q,KACnBg5Q,EAAUh5Q,EAAAA,IAKhBjC,OAAOw6B,eAAer5B,KAAM,sBAAuB,CACjD0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIvM,KAAK20B,GAAK30B,KAAK+yQ,EAAAA,GAAAA,EAI5BvjG,GAAQgoG,GAAmBxC,IAAAA,IAOvBgF,GAAwB,WAC1BxC,GAAkBv4Q,KAAKe,MASvBnB,OAAOw6B,eAAer5B,KAAM,WAAY,CACtC0/E,YAAY,EACZD,cAAc,EACdlzE,IAAK,kBACIk9G,QAAQ2oJ,GAAapyQ,KAAKw8F,GAAI,MAEvC3sC,IAAK,SAAS/uD,IAAAA,IACR2oH,QAAQ3oH,GAAAA,KACL07F,GAAK61K,GAAaryQ,KAAKw8F,GAAI,SAE3BA,GAAK81K,GAAetyQ,KAAKw8F,GAAI,YAInClH,UAAW,GAElBk6E,GAAQwqG,GAAuBxC,IAAAA,IAG3B1F,GAAqB,CACvB72H,SAAU,CACRs+H,uBAAwB,iBACL,CACf5xK,EAAG,CACDsyK,GAAInI,GAAmB72H,SAASi/H,WAElC1+L,EAAG,CACDy+L,GAAInI,GAAmB72H,SAASk/H,YAChCC,IAAKtI,GAAmB72H,SAASo/H,aAAAA,EAWvCF,YAAa,SAASxI,GAAAA,IAChBC,EAAOF,GAAkBC,GAC7BC,EAAKnL,MAAQkL,EAAWlL,MAAAA,IACpB9U,EAAS,GACTgP,EAAUgR,EAAWlL,MAAMp7G,SAAS05G,QACtC4M,EAAW7O,SACX6O,EAAW5gP,WACX6vB,GACE05N,EAAe3I,EAAWlL,MAAM/T,YAAYmL,kBAC9C8T,EAAW32P,OAETi4P,EAAUC,GAAWvB,EAAYA,EAAWwH,SAAAA,OAChDxnB,EAAOpzP,KAAK,cACZozP,EAAOpzP,KACL,OACEy3P,GAAG8b,GAAmBzmH,SAASo+G,SAASkI,IACxC,IACA3b,GAAG8b,GAAmBzmH,SAAS0lH,UAAUY,IACzC,OAEJhgB,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,OACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,YACZozP,EAAOpzP,KACL,IAAMoiQ,EAAU,IAAM3K,GAAGid,EAAQtlP,UAAY,OAAS2sP,GAExD3oB,EAAOpzP,KAAK,MACZozP,EAAOpzP,KAAK00Q,EAAQn8O,MACpB66N,EAAOpzP,KAAK,MACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,OACZqzQ,EAAKjgB,OAASA,EAAOzyP,KAAK,MACnB0yQ,CAAAA,EAGTsI,UAAW,SAASvI,GAAAA,IACdC,EAAOF,GAAkBC,GAC7BC,EAAKnL,MAAQkL,EAAWlL,MAAAA,IACpB9F,EAAUgR,EAAWlL,MAAMp7G,SAAS05G,QACtC4M,EAAW7O,SACX6O,EAAW5gP,WACX6vB,GACE05N,EAAe3I,EAAWlL,MAAM/T,YAAYmL,kBAC9C8T,EAAW32P,OAET22O,EAAS,GACTtuP,EAASyuQ,GAAmBzmH,SAAS0lH,UAAUY,GAC/CvuQ,EAAQ0uQ,GAAmBzmH,SAASo+G,SAASkI,GAC7CsB,EAAUC,GAAWvB,EAAYA,EAAWwH,SAAAA,OAChDxnB,EAAOpzP,KAAK,OACZozP,EAAOpzP,KAAK,OAASy3P,GAAG5yP,GAAS,IAAM4yP,GAAG3yP,GAAU,OACpDsuP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,YACZozP,EAAOpzP,KAAK,OAASy3P,GAAG5yP,EAAQ,GAAK,IAAM4yP,GAAG3yP,EAAS,GAAK,OAC5DsuP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,OACZozP,EAAOpzP,KAAK,MACZozP,EAAOpzP,KACL,IAAMoiQ,EAAU,IAAM3K,GAAGid,EAAQtlP,UAAY,OAAS2sP,GAExD3oB,EAAOpzP,KAAK00Q,EAAQn8O,MACpB66N,EAAOpzP,KAAK,MACZozP,EAAOpzP,KAAK,KACZqzQ,EAAKjgB,OAASA,EAAOzyP,KAAK,MACnB0yQ,CAAAA,EAQTyI,YAAa,SAAS1I,GAAAA,IAChBC,EAAOF,GAAkBC,GAC7BC,EAAKnL,MAAQkL,EAAWlL,MAAAA,IACpB9U,EAAS,UACbA,EAAOpzP,KAAK,cACZozP,EAAOpzP,KACL,OACEy3P,GAAG8b,GAAmBzmH,SAASo+G,SAASkI,IACxC,IACA3b,GAAG8b,GAAmBzmH,SAAS0lH,UAAUY,IACzC,OAEJhgB,EAAOpzP,KAAK,KACZqzQ,EAAKjgB,OAASA,EAAOzyP,KAAK,MACnB0yQ,CAAAA,GAIXh3H,YAAa,CACX0+H,OAAQ,CACNC,uBAAwB,SAASxgQ,GAAAA,IAC3B+5P,EAA0B,CAC5Bt3L,EAAG,CACD4+L,IAAKtI,GAAmBl3H,YAAY0+H,OAAOe,aAE7C1yK,EAAG,CAAC,GAAD,OAELmrK,EAAwBnrK,EAAE5uF,GACxB+4P,GAAmBl3H,YAAY0+H,OAAOY,UACxCpH,EAAwBt3L,EAAEziE,GACxB+4P,GAAmBl3H,YAAY0+H,OAAOa,YACjCrH,CAAAA,EAET4G,MAAO,iBACE,KAGTQ,UAAW,SAASvI,GAAAA,IACdC,EAAOF,GAAkBC,GAC7BC,EAAKnL,MAAQkL,EAAWlL,MAAAA,IACpB9U,EAAS,GAET4oB,EACFzI,GAAmBzmH,SAASo+G,SAASkI,IACrCG,GAAmBzmH,SAAS0lH,UAAUY,GAClCG,GAAmBzmH,SAASo+G,SAASkI,GAAc,EACnDG,GAAmBzmH,SAAS0lH,UAAUY,GAAc,EAE1D4I,EAAY59J,QAAoB,GAAZ49J,GAAiB5/L,QAAQ,QACzC9nE,EAAIi/P,GAAmBzmH,SAASmvH,SAChCC,EAAkB99J,QAAQ49J,EAAY1nQ,GAAG8nE,QAAQ,WAIrDg3K,EAAOpzP,KAAK,KACZozP,EAAOpzP,KACL,WACEizQ,GAAGM,GAAmBzmH,SAASo+G,SAASkI,GAAc,GACtD,IACAH,GAAGM,GAAmBzmH,SAAS0lH,UAAUY,GAAc,GACvD,OAEJhgB,EAAOpzP,KAAKg8Q,EAAY,QACxB5oB,EAAOpzP,KACLg8Q,EACE,IACAE,EACA,IACAA,EACA,IACAF,EACA,MACAA,EACA,MAEJ5oB,EAAOpzP,KACL,IACEk8Q,EACA,IACAF,EACA,KACAA,EACA,IACAE,EACA,KACAF,EACA,QAEJ5oB,EAAOpzP,KACL,IACEg8Q,EACA,KACAE,EACA,KACAA,EACA,KACAF,EACA,OACAA,EACA,MAEJ5oB,EAAOpzP,KACLk8Q,EACE,KACAF,EACA,IACAA,EACA,KACAE,EACA,IACAF,EACA,QAEJ5oB,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZqzQ,EAAKjgB,OAASA,EAAOzyP,KAAK,MACnB0yQ,CAAAA,EAETuI,YAAa,SAASxI,GAAAA,IAChBC,EAAOF,GAAkBC,GAC7BC,EAAKnL,MAAQkL,EAAWlL,MAAAA,IACpB9U,EAAS,GACT4oB,EACFzI,GAAmBzmH,SAASo+G,SAASkI,IACrCG,GAAmBzmH,SAAS0lH,UAAUY,GAClCG,GAAmBzmH,SAASo+G,SAASkI,GAAc,EACnDG,GAAmBzmH,SAAS0lH,UAAUY,GAAc,EAE1D4I,EAAY59J,QAAoB,GAAZ49J,GAAiB5/L,QAAQ,QAGzC7uB,EAAI6wD,QAAoB,EAAZ49J,GAAe5/L,QAAQ,IACnC4O,EAAKozB,QAAQ7wD,EAAIgmN,GAAmBzmH,SAASmvH,UAAU7/L,QAAQ,IAC/D4N,EAAKo0B,QACN49J,EAAYzI,GAAmBzmH,SAASmvH,UAAU7/L,QAAQ,WAG7Dg3K,EAAOpzP,KAAK,cACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KACL,WACEizQ,GAAGM,GAAmBzmH,SAASo+G,SAASkI,GAAc,GACtD,IACAH,GAAGM,GAAmBzmH,SAAS0lH,UAAUY,GAAc,GACvD,OAEJhgB,EAAOpzP,KAAKutD,EAAI,QAChB6lM,EAAOpzP,KAAKutD,EAAI,IAAMy9B,EAAK,IAAMA,EAAK,IAAMz9B,EAAI,MAAQA,EAAI,MAC5D6lM,EAAOpzP,KACL,IAAMgrF,EAAK,IAAMz9B,EAAI,KAAOA,EAAI,IAAMy9B,EAAK,KAAOz9B,EAAI,QAExD6lM,EAAOpzP,KACL,IAAMutD,EAAI,KAAOy9B,EAAK,KAAOA,EAAK,KAAOz9B,EAAI,OAASA,EAAI,MAE5D6lM,EAAOpzP,KAAKgrF,EAAK,KAAOz9B,EAAI,IAAMA,EAAI,KAAOy9B,EAAK,IAAMz9B,EAAI,QAC5D6lM,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,OACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KACL,WACEizQ,GAAGM,GAAmBzmH,SAASo+G,SAASkI,GAAc,GACtD,IACAH,GAAGM,GAAmBzmH,SAAS0lH,UAAUY,GAAc,GACvD,OAEJhgB,EAAOpzP,KAAKg8Q,EAAY,QACxB5oB,EAAOpzP,KAEHg8Q,EACA,IACAhyL,EACA,IACAA,EACA,IACAgyL,EACA,MACAA,EACA,MAEJ5oB,EAAOpzP,KACL,IACEgqF,EACA,IACAgyL,EACA,KACAA,EACA,IACAhyL,EACA,KACAgyL,EACA,QAEJ5oB,EAAOpzP,KACL,IACEg8Q,EACA,KACAhyL,EACA,KACAA,EACA,KACAgyL,EACA,OACAA,EACA,MAEJ5oB,EAAOpzP,KACLgqF,EACE,KACAgyL,EACA,IACAA,EACA,KACAhyL,EACA,IACAgyL,EACA,QAEJ5oB,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZqzQ,EAAKjgB,OAASA,EAAOzyP,KAAK,MACnB0yQ,CAAAA,EAETyI,YAAa,SAAS1I,GAAAA,IAChBC,EAAOF,GAAkBC,GAC7BC,EAAKnL,MAAQkL,EAAWlL,MAAAA,IACpB9U,EAAS,GACT4oB,EACFzI,GAAmBzmH,SAASo+G,SAASkI,IACrCG,GAAmBzmH,SAAS0lH,UAAUY,GAClCG,GAAmBzmH,SAASo+G,SAASkI,GAAc,EACnDG,GAAmBzmH,SAAS0lH,UAAUY,GAAc,EAE1D4I,EAAY59J,QAAoB,GAAZ49J,GAAiB5/L,QAAQ,QAGzC7uB,EAAI6wD,QAAoB,EAAZ49J,GAAe5/L,QAAQ,IACnC4O,EAAKozB,QAAQ7wD,EAAIgmN,GAAmBzmH,SAASmvH,UAAU7/L,QAAQ,WAEnEg3K,EAAOpzP,KAAK,cACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KACL,WACEizQ,GAAGM,GAAmBzmH,SAASo+G,SAASkI,GAAc,GACtD,IACAH,GAAGM,GAAmBzmH,SAAS0lH,UAAUY,GAAc,GACvD,OAEJhgB,EAAOpzP,KAAKutD,EAAI,QAChB6lM,EAAOpzP,KAAKutD,EAAI,IAAMy9B,EAAK,IAAMA,EAAK,IAAMz9B,EAAI,MAAQA,EAAI,MAC5D6lM,EAAOpzP,KACL,IAAMgrF,EAAK,IAAMz9B,EAAI,KAAOA,EAAI,IAAMy9B,EAAK,KAAOz9B,EAAI,QAExD6lM,EAAOpzP,KACL,IAAMutD,EAAI,KAAOy9B,EAAK,KAAOA,EAAK,KAAOz9B,EAAI,OAASA,EAAI,MAE5D6lM,EAAOpzP,KAAKgrF,EAAK,KAAOz9B,EAAI,IAAMA,EAAI,KAAOy9B,EAAK,IAAMz9B,EAAI,QAC5D6lM,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZqzQ,EAAKjgB,OAASA,EAAOzyP,KAAK,MACnB0yQ,CAAAA,GAIX8I,MAAO,CAQLnB,uBAAwB,SAASxgQ,GAAAA,IAC3B+5P,EAA0B,CAC5Bt3L,EAAG,CACD4+L,IAAKtI,GAAmBl3H,YAAY8/H,MAAML,aAE5C1yK,EAAG,CAAC,GAAD,OAELmrK,EAAwBnrK,EAAE5uF,GACxB+4P,GAAmBl3H,YAAY8/H,MAAMR,UACvCpH,EAAwBt3L,EAAEziE,GACxB+4P,GAAmBl3H,YAAY8/H,MAAMP,YAChCrH,CAAAA,EAET4G,MAAO,iBACE,KAGTQ,UAAW,SAASvI,GAAAA,IACdC,EAAOF,GAAkBC,GAC7BC,EAAKnL,MAAQkL,EAAWlL,MAAAA,IACpB9U,EAAS,GACTgpB,EAAQ7I,GAAmBzmH,SAASuvH,eAAejJ,GAAAA,OACvDhgB,EAAOpzP,KAAK,KACZozP,EAAOpzP,KACL,OACEy3P,GAAG8b,GAAmBzmH,SAASo+G,SAASkI,GAAc,GACtD,IACA3b,GAAG8b,GAAmBzmH,SAAS0lH,UAAUY,GAAc,GACvD,OAEJhgB,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAKy3P,GAAG2kB,EAAMh9N,GAAGp6C,GAAK,IAAMyyP,GAAG2kB,EAAMh9N,GAAG97C,GAAK,MACpD8vP,EAAOpzP,KAAKy3P,GAAG2kB,EAAM1O,GAAG1oQ,GAAK,IAAMyyP,GAAG2kB,EAAM1O,GAAGpqQ,GAAK,MACpD8vP,EAAOpzP,KAAKy3P,GAAG2kB,EAAMlO,GAAGlpQ,GAAK,IAAMyyP,GAAG2kB,EAAMlO,GAAG5qQ,GAAK,MACpD8vP,EAAOpzP,KAAKy3P,GAAG2kB,EAAMxO,GAAG5oQ,GAAK,IAAMyyP,GAAG2kB,EAAMxO,GAAGtqQ,GAAK,MACpD8vP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZqzQ,EAAKjgB,OAASA,EAAOzyP,KAAK,MACnB0yQ,CAAAA,EAETuI,YAAa,SAASxI,GAAAA,IAChBC,EAAOF,GAAkBC,GAC7BC,EAAKnL,MAAQkL,EAAWlL,MAAAA,IACpBkU,EAAQ7I,GAAmBzmH,SAASuvH,eAAejJ,GACnDhgB,EAAS,UACbA,EAAOpzP,KAAK,cACZozP,EAAOpzP,KACL,OACEy3P,GAAG8b,GAAmBzmH,SAASo+G,SAASkI,IACxC,IACA3b,GAAG8b,GAAmBzmH,SAAS0lH,UAAUY,IACzC,OAEJhgB,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KACL,OACEy3P,GAAG8b,GAAmBzmH,SAASo+G,SAASkI,GAAc,GACtD,IACA3b,GAAG8b,GAAmBzmH,SAAS0lH,UAAUY,GAAc,GACvD,OAEJhgB,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAKy3P,GAAG2kB,EAAMh9N,GAAGp6C,GAAK,IAAMyyP,GAAG2kB,EAAMh9N,GAAG97C,GAAK,MACpD8vP,EAAOpzP,KAAKy3P,GAAG2kB,EAAM1O,GAAG1oQ,GAAK,IAAMyyP,GAAG2kB,EAAM1O,GAAGpqQ,GAAK,MACpD8vP,EAAOpzP,KAAKy3P,GAAG2kB,EAAMlO,GAAGlpQ,GAAK,IAAMyyP,GAAG2kB,EAAMlO,GAAG5qQ,GAAK,MACpD8vP,EAAOpzP,KAAKy3P,GAAG2kB,EAAMxO,GAAG5oQ,GAAK,IAAMyyP,GAAG2kB,EAAMxO,GAAGtqQ,GAAK,MACpD8vP,EAAOpzP,KAAK,KACZozP,EAAOpzP,KAAK,KACZqzQ,EAAKjgB,OAASA,EAAOzyP,KAAK,MACnB0yQ,CAAAA,EAETyI,YAAa,SAAS1I,GAAAA,IAChBC,EAAOF,GAAkBC,GAC7BC,EAAKnL,MAAQkL,EAAWlL,MAAAA,IACpB9U,EAAS,UACbA,EAAOpzP,KAAK,cACZozP,EAAOpzP,KACL,OACEy3P,GAAG8b,GAAmBzmH,SAASo+G,SAASkI,IACxC,IACA3b,GAAG8b,GAAmBzmH,SAAS0lH,UAAUY,IACzC,OAEJhgB,EAAOpzP,KAAK,KACZqzQ,EAAKjgB,OAASA,EAAOzyP,KAAK,MACnB0yQ,CAAAA,IAUbkE,8BAA+B,SAASnE,GAAAA,IAGlChR,EAAUgR,EAAWlL,MAAMp7G,SAAS05G,QACtC4M,EAAW7O,SACX6O,EAAW5gP,WACX6vB,GACE05N,EAAe3I,EAAWlL,MAAM/T,YAAYmL,kBAC9C8T,EAAW32P,OAAAA,MAGA,IAAM2lP,EAAU,IADdgR,EAAWhkP,SACoB,OAAS2sP,CAAAA,GAK3DxI,GAAmBzmH,SAAW,CAC5BmvH,SAAU,cAEVI,eAAgB,SAASjJ,GAAAA,IACnBvuQ,EAAQ0uQ,GAAmBzmH,SAASo+G,SAASkI,GAC7CtuQ,EAASyuQ,GAAmBzmH,SAAS0lH,UAAUY,GAC/ChlQ,EAAIjI,KAAK0S,IAAIhU,EAAOC,GAAAA,MAEZ,CACVs6C,GAAI,CAEFp6C,GAAIH,EAAQuJ,GAAK,EACjB9K,GAAIwB,EAASsJ,GAAK,EAAIA,GAExBs/P,GAAI,CAEF1oQ,GAAIH,EAAQuJ,GAAK,EAAIA,EACrB9K,GAAIwB,EAASsJ,GAAK,GAEpBw/P,GAAI,CAEF5oQ,GAAIH,EAAQuJ,GAAK,EACjB9K,GAAIwB,EAASsJ,GAAK,GAEpB8/P,GAAI,CAEFlpQ,GAAIH,EAAQuJ,GAAK,EAAIA,EACrB9K,GAAIwB,EAASsJ,GAAK,EAAIA,GAAAA,GAO9BmlQ,GAAmBzmH,SAASo+G,SAAW,SAASkI,GAAAA,IAC1CpwQ,EAAS,QACa,YAAtB+iI,EAAAA,GAAAA,GAAOqtI,KACTpwQ,EAAS03C,GAAM04N,EAAWiE,KAAK,KAE1Br0Q,CAAAA,EAETuwQ,GAAmBzmH,SAAS0lH,UAAY,SAASY,GAAAA,IAC3CpwQ,EAAS,QACa,YAAtB+iI,EAAAA,GAAAA,GAAOqtI,KACTpwQ,EAAS03C,GAAM04N,EAAWiE,KAAK,KAE1Br0Q,CAAAA,EAcT,IAAIq4Q,GAAYtI,GAASsI,SAAW,SAASnE,GAAAA,GAC3CX,GAAmB90Q,KAAMy1Q,KAErBA,aAAuBT,IAAAA,MAGnB,IAAIvwQ,MAAM,8CAvlFN,IAASktQ,EAAAA,OAAAA,EAqlFX8D,GAplFKhP,MAAMp7G,SAAS0pH,eAAeL,aAC3C/C,EAAWlL,MAAMp7G,SAAS0pH,eAAeL,YAAa,EACtD/C,EAAWlL,MAAMp7G,SAAS0pH,eAAeN,uBAAyB,MAEpE9C,EAAWlL,MAAMp7G,SAAS0pH,eAAeN,uBAAuBW,OAAO72Q,KACrEozQ,GAmlFF8D,EAAY9/I,KAAO8/I,EAAYhP,MAAMp7G,SAAS87G,qBAAqB/H,WAC5Dp/P,IAAAA,EAGTsxQ,GAASwG,oBAAsBA,GAC/BxG,GAASgH,gBAAkBA,GAC3BhH,GAASiH,iBAAmBA,GAC5BjH,GAASkH,gBAAkBA,GAC3BlH,GAASoG,eAAiBA,GAC1BpG,GAASuH,mBAAqBA,GAC9BvH,GAASyH,oBAAsBA,GAC/BzH,GAASuI,iBAAmBA,GAC5BvI,GAASkG,kBAAoBA,GAC7BlG,GAAS0I,sBAAwBA,GACjC1I,GAASQ,mBAAqBA,GAE9BR,GAASuJ,SAAW,CAClBC,YAAahD,GACbiD,QAASzC,GACT0C,SAAUzC,GACV0C,QAASzC,GACT/8G,OAAQi8G,GACRwD,WAAYrC,GACZj+H,YAAam+H,GACb99H,SAAU4+H,GACVsB,UAAW3D,GACX4D,cAAepB,GACfqB,WAAYvJ,IAGdjgB,GAAMgpB,SAAW,CACfC,YAAahD,GACbiD,QAASzC,GACT0C,SAAUzC,GACV0C,QAASzC,GACT/8G,OAAQi8G,GACRwD,WAAYrC,GACZj+H,YAAam+H,GACb99H,SAAU4+H,GACVsB,UAAW3D,GACX4D,cAAepB,GACfqB,WAAYvJ,IAGCjgB,GAAMgpB,SCzlGrB,SAASS,GAASpvN,GAAAA,OACTA,EAAI1jC,QAAO,SAAS1iB,EAAQiT,EAAMrT,GAAAA,OACvCI,EAAOiT,GAAQrT,EAERI,CAAAA,GACN,CAAC,EAAD,ECgCL,SAAUwrQ,GAIRA,EAASiK,aAAe,CAAC,EAAD,IAEpBC,EAAU,UAOVC,EAAuB,CACzBC,IAAK,CAAC,CAAC,IAAM,GAAM,GAAM,KACzBC,KAAM,CACJ,CAAC,GAAM,GAAM,EAAM,KAClB,GAAM,GAAM,GAAM,IAErBC,KAAM,CACJ,CACE,IACA,IACA,IACA,gBACA5tQ,EAEA,GACA,GACA,GACA,GACA,IAGA,IACA,IACA,IACA,gBACAA,EAEA,GACA,IACA,IACA,IACA,EACA,IAED,IAAM,IAAM,IAAM,MAClB,IAAM,IAAM,IAAM,MAErB6tQ,SAAU,CAAC,CAAC,EAAM,EAAM,EAAM,GAAM,IAAM,GAAM,GAAM,KACtDC,OAAQ,CAAC,CAAC,GAAM,GAAM,GAAM,GAAM,GAAM,KACxCC,OAAQ,CAAC,CAAC,GAAM,GAAM,GAAM,GAAM,GAAM,KACxCC,KAAM,CACJ,CACE,GACA,GACA,GACA,eACAhuQ,OACAA,OACAA,EAEA,GACA,GACA,GACA,KAGJiuQ,IAAK,CACH,CAAC,GAAM,KACN,GAAM,KACN,GAAM,KACN,GAAM,KACN,GAAM,KACN,GAAM,MAiBPC,EAA+B5K,EAASiK,aAAaW,4BAA8B,SACrFC,EACAC,GAAAA,IAGIl+Q,EACAyoD,EAEA01N,EACAC,EACAl8G,EAHA7+J,EAASi6Q,EAAAA,GAMQ,UATrBY,EAAiBA,GAAkBZ,SAAAA,IAUhCW,EAAUl0Q,MACTk0Q,EAAUl0Q,gBAAgBs0Q,mBAC1B,WAAYJ,GACZ,UAAWA,EAAAA,MAEN,UAGLK,EAAkBL,GAAAA,IACf/7G,KAAYq7G,EAAAA,IACfY,EAAiBZ,EAAqBr7G,GACjCliK,EAAI,EAAGA,EAAIm+Q,EAAej+Q,OAAQF,GAAK,EAAG,KAC7Co+Q,GAAAA,EACK31N,EAAI,EAAGA,EAAI01N,EAAen+Q,GAAGE,OAAQuoD,GAAK,EAAG,QAAH,IACzC01N,EAAen+Q,GAAGyoD,IAGlB01N,EAAen+Q,GAAGyoD,KAAOw1N,EAAUx1N,GAAI,CACzC21N,GAAAA,EAAgB,cAIhBA,EAAwB,CAC1B/6Q,EAAS6+J,EAAAA,KAAAA,CAAAA,MAAAA,IAMVA,KAAYq7G,EAAAA,IACfY,EAAiBZ,EAAqBr7G,GACjCliK,EAAI,EAAGA,EAAIm+Q,EAAej+Q,OAAQF,GAAK,EAAG,KAC7Co+Q,GAAAA,EACK31N,EAAI,EAAGA,EAAI01N,EAAen+Q,GAAGE,OAAQuoD,GAAK,EAAG,QAAH,IACzC01N,EAAen+Q,GAAGyoD,IAGlB01N,EAAen+Q,GAAGyoD,KAAOw1N,EAAU92Q,WAAWshD,GAAI,CACpD21N,GAAAA,EAAgB,cAIhBA,EAAwB,CAC1B/6Q,EAAS6+J,EAAAA,KAAAA,CAAAA,CAAAA,OAOb7+J,IAAWi6Q,GAAWY,IAAmBZ,IAC3Cj6Q,EAAS66Q,GAEJ76Q,CAAAA,EAILk7Q,EAAW,SAAXA,EAAoBjyP,GAAAA,IAAAA,IAClB+5B,EAAMvkD,KAAKqrJ,SAASpzI,MACpBqmP,EAAYt+P,KAAKqrJ,SAASizG,UAG1BzjP,GAAAA,EAFa7a,KAAKqrJ,SAASgzG,eAGW,IAAnCxjP,EAAOrO,QAAQ,gBACpBqO,EAAOxD,OAAOwD,EAAOrO,QAAQ,eAAgB,GAG/Cge,EAAMk0O,SAAW1+P,KAAKqrJ,SAAS8xG,YAAAA,IAE3B2B,EAAsB,MAC1BA,EAAoBvgQ,KAAK,CAAES,IAAK,OAAQ8B,MAAO,aAC/Cg+P,EAAoBvgQ,KAAK,CAAES,IAAK,UAAW8B,MAAO,WAClDg+P,EAAoBvgQ,KAAK,CAAES,IAAK,QAAS8B,MAAO0pB,EAAMpnB,QACtD07P,EAAoBvgQ,KAAK,CAAES,IAAK,SAAU8B,MAAO0pB,EAAMnnB,SAEnDmnB,EAAMkyP,aAAeC,EAAaC,QACpC9d,EAAoBvgQ,KAAK,CACvBS,IAAK,aACL8B,MACE,yBAEC0pB,EAAMqyP,QAAQz+Q,OAAS,EAAI,GAC5B,KACC,UAAWosB,QAAAA,IAAgBA,EAAMsyP,MAC9BtyP,EAAMk0O,SAAW,EACjBl0O,EAAMk0O,SAAW,GACrB,WAGJI,EAAoBvgQ,KAAK,CACvBS,IAAK,aACL8B,MAAO,IAAM0pB,EAAMkyP,aAEjBlyP,EAAMkyP,aAAeC,EAAaI,aACpCje,EAAoBvgQ,KAAK,CAAES,IAAK,SAAU8B,MAAO,uBAGrDg+P,EAAoBvgQ,KAAK,CACvBS,IAAK,mBACL8B,MAAO0pB,EAAMwyP,mBAGb,qBAAsBxyP,QAAAA,IACfA,EAAMyyP,kBAEbne,EAAoBvgQ,KAAK,CACvBS,IAAK,cACL8B,MAAO,KAAO0pB,EAAMyyP,iBAAmB,OAGvC,iBAAkBzyP,GAAShsB,MAAMC,QAAQ+rB,EAAM0yP,cAAe,SAC5DA,EAAe,GACjBh/Q,EAAI,EACJqI,EAAMikB,EAAM0yP,aAAa9+Q,OACpBF,EAAIqI,EAAKrI,IACdg/Q,GACE1yP,EAAM0yP,aAAah/Q,GAAK,IAAMssB,EAAM0yP,aAAah/Q,GAAK,IAE1D4gQ,EAAoBvgQ,KAAK,CACvBS,IAAK,OACL8B,MAAO,IAAMo8Q,EAAe,eAGrB1yP,EAAMsyP,OACfhe,EAAoBvgQ,KAAK,CACvBS,IAAK,QACL8B,MAAO0pB,EAAMk0O,SAAW,EAAI,aAI5BH,OAAAA,IACK/zO,EAAM3P,OAAyB,CAAC,IAAM2P,EAAM3P,aAAU,EAAA7M,GAE/DswP,EAAU,CACRr2P,KAAMuiB,EAAMviB,KACZ62P,oBAAqBA,EACrBP,sBAAuBA,EACvBG,SAAUl0O,EAAMk0O,WAGlBn6M,EAAI,UAGA,UAAW/5B,QAAAA,IAAgBA,EAAMsyP,MAAuB,KACtDG,EACF,cACAzyP,EAAM2yP,UACN,gCACA3yP,EAAMwyP,iBACN,aACAxyP,EAAMpnB,MACJ05Q,EAAQ,CACV15Q,MAAOonB,EAAMpnB,MACbC,OAAQmnB,EAAMnnB,OACdq5Q,WAAY,aACZM,iBAAkBxyP,EAAMwyP,iBACxBC,iBAAkBA,EAClBh1Q,KAAMuiB,EAAMsyP,OAEV,WAAYtyP,IACdsyP,EAAMjiQ,OAAS2P,EAAM3P,QAEvB4hQ,EAASx9Q,KAAKe,KAAM88Q,EAAAA,CAAAA,GAIlBtyP,EAAMkyP,aAAeC,EAAaC,QAAS,KACzCpf,EAAQx9P,KAAKqrJ,SAAS8xG,YAG1BmB,EAAU,CACRr2P,KAAMm1Q,EAA0B,IAAIr3Q,WAAWykB,EAAMqyP,UACrDne,SAAUlB,IAEZj5M,EAAI,YAGJ84N,EAAuB,eACrB3yO,EAAS1qC,KAAKqrJ,SAASwlH,YAAdyM,gBAAA,IACR,IAAIp/Q,KAAKwsC,EACZ+xO,EAASx9Q,KAAKe,KAAM0qC,EAAOxsC,GAAAA,EAG3Bq/Q,EAA0B,eAG1B/yP,EAFEkgB,EAAS1qC,KAAKqrJ,SAASwlH,YAAdyM,gBACX/4N,EAAMvkD,KAAKqrJ,SAASpzI,MAAAA,IAEjB,IAAI/Z,KAAKwsC,EAEZ6Z,EAAI,MADJ/5B,EAAQkgB,EAAOxsC,IACEwH,MAAO8kB,EAAMk0O,SAAU,IAAK,MAS7C8e,EAAa,WACVx9Q,KAAKqrJ,SAASwlH,YAAdyM,kBAAAA,KACEjyH,SAASwlH,YAAdyM,gBAAkD,CAAC,EAAD,KAC7CjyH,SAASxtB,OAAO+7D,UAAU,eAAgByjF,GAAAA,KAC1ChyH,SAASxtB,OAAO+7D,UAAU,iBAAkB2jF,GAAAA,EAIjDE,EAAY,eACV/yO,EAAS1qC,KAAKqrJ,SAASwlH,YAAdyM,gBAAA,OACbE,EAAWv+Q,KAAKe,MACT0qC,CAAAA,EAELgzO,EAAgB,kBACX7+Q,OAAO0uC,KAAKvtC,KAAKqrJ,SAASwlH,YAAdyM,iBAAiDl/Q,MAAAA,EAelEu/Q,EAAuB,SAAS3wQ,GAAAA,MACyB,mBAA7CskQ,EAAS,UAAYtkQ,EAAKuO,cAAAA,EAGtCqiQ,EAAe,SAASp1I,GAAAA,MACD,YAAlBlE,EAAAA,GAAAA,GAAOkE,IAA2C,IAApBA,EAAO/nG,QAAAA,EAG1Co9O,EAA0B,SAASpqP,EAAStN,GAAAA,GAErB,QAArBsN,EAAQiS,UAAsBjS,EAAQsU,aAAa,OAAQ,KACzDlQ,EAAM,GAAKpE,EAAQC,aAAa,UAGD,IAA/BmE,EAAIrrB,QAAQ,sBACPg4O,GACLyhB,SAASpuO,GACNisB,MAAM,WACNrhD,OAAAA,IAKHq7Q,EAAexM,EAASyM,SAASlmP,GAAAA,GAAK,YACtCimP,EAAAA,OACKA,CAAAA,CAAAA,GAIc,WAArBrqP,EAAQiS,SAAuB,IACX,IAAlBjS,EAAQrwB,OAAkC,IAAnBqwB,EAAQpwB,OAAAA,MAC3B,IAAIoB,MACR,8CACEgvB,EAAQrwB,MACR,aACAqwB,EAAQpwB,QAAAA,IAGV26Q,EAAAA,OACI73P,GAAAA,IACD,MACH63P,EAAW,sBAER,OACHA,EAAW,mBAGR,QAEHA,EAAW,oBAGRx5B,GACL/wN,EACGsE,UAAUimP,EAAU,GACpBl6N,MAAM,WACNrhD,MAAAA,CAAAA,EAKLw7Q,EAAsB,SAAS71N,GAAAA,IAC7B1d,EAAS1qC,KAAKqrJ,SAASwlH,YAAdyM,gBAAA,GACT5yO,EAAAA,IACG,IAAIrpC,KAAKqpC,EAAAA,GACR0d,IAAU1d,EAAOrpC,GAAG+mD,MAAO,OACtB1d,EAAOrpC,EAAAA,EAMlB68Q,EAA0B,SAAS96Q,EAAOC,EAAQmnB,GAAAA,OAC/CpnB,GAAUC,IACbD,GAAS,GACTC,GAAU,IAERD,EAAQ,IACVA,GAAU,EAAIonB,EAAMpnB,MAAQ,GAAMA,EAAQpD,KAAKqrJ,SAAS6pG,aAEtD7xP,EAAS,IACXA,GAAW,EAAImnB,EAAMnnB,OAAS,GAAMA,EAASrD,KAAKqrJ,SAAS6pG,aAE/C,IAAV9xP,IACFA,EAASC,EAASmnB,EAAMpnB,MAASonB,EAAMnnB,QAE1B,IAAXA,IACFA,EAAUD,EAAQonB,EAAMnnB,OAAUmnB,EAAMpnB,OAGnC,CAACA,EAAOC,EAAAA,EAGb86Q,EAAkB,SAAS56Q,EAAG1B,EAAGuB,EAAOC,EAAQmnB,EAAO4zP,GAAAA,IACrDC,EAAOH,EAAwBj/Q,KAAKe,KAAMoD,EAAOC,EAAQmnB,GAC3D8zP,EAAQt+Q,KAAKqrJ,SAASulH,oBACtB2N,EAASv+Q,KAAKqrJ,SAAS0iH,4BAErBrjO,EAAS+yO,EAAUx+Q,KAAKe,MAAAA,GAE5BoD,EAAQi7Q,EAAK,GACbh7Q,EAASg7Q,EAAK,GACd3zO,EAAOlgB,EAAM9kB,OAAS8kB,EAElB4zP,EAAU,CACZA,GAAY15Q,KAAKgW,GAAK,QAClB7H,EAAInO,KAAKojB,IAAIs2P,GACb99Q,EAAIoE,KAAKmjB,IAAIu2P,GAEbI,EAAK,SAAS9mQ,GAAAA,OACTA,EAAOijE,QAAQ,IAEpB8jM,EAA+B,CACjCD,EAAG3rQ,GACH2rQ,EAAGl+Q,GACHk+Q,GAAQ,EAALl+Q,GACHk+Q,EAAG3rQ,GACH,EACA,EACA,WAGCw4I,SAASpzI,MAAM,KAChBmmQ,GAAAA,KACG/yH,SAASpzI,MACZ,CAAC,EAAG,IAAK,IAAK,EAAGqmQ,EAAM/6Q,GAAIg7Q,EAAO18Q,EAAIwB,GAAS,MAAMnE,KAAK,WAEvDmsJ,SAASpzI,MAAMwmQ,EAA6Bv/Q,KAAK,WACjDmsJ,SAASpzI,MACZ,CAACqmQ,EAAMl7Q,GAAQ,IAAK,IAAKk7Q,EAAMj7Q,GAAS,IAAK,IAAK,MAAMnE,KAAK,YAG1DmsJ,SAASpzI,MACZ,CACEqmQ,EAAMl7Q,GACN,IACA,IACAk7Q,EAAMj7Q,GACNi7Q,EAAM/6Q,GACNg7Q,EAAO18Q,EAAIwB,GACX,MACAnE,KAAK,MAIPc,KAAK01P,iBAAAA,KAEFrqG,SAASpzI,MAAM,CAAC,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,MAAM/Y,KAAK,WAGhDmsJ,SAASpzI,MAAM,KAAOuS,EAAM9kB,MAAQ,YACpC2lJ,SAASpzI,MAAM,MAMlB0kQ,EAAgBrL,EAASqL,aAAe,CAC1C+B,WAAY,YACZC,YAAa,aACb5B,YAAa,aACb6B,SAAU,UACVC,QAAS,SACTC,IAAK,MACLC,UAAW,WACXnC,QAAS,UACToC,QAAS,UACTC,WAAY,aACZC,SAAU,WAMZ5N,EAAStrQ,OAAS,CAChBm5Q,WAAY,YACZC,aAAc,cACdC,WAAY,YACZC,WAAY,YACZC,aAAc,cACdC,eAAgB,gBAChBC,iBAAkB,iBAClBC,kBAAmB,kBACnBC,iBAAkB,sBAMhBC,EAAqBtO,EAASsO,kBAAoB,CACpDC,KAAM,OACNC,KAAM,OACNC,OAAQ,SACRC,KAAM,QASJC,EAAa3O,EAASiK,aAAa0E,UAAY,SAASh4Q,GAAAA,IAExD/J,EACAqI,EAFEo+I,EAAO,KAIS,iBAAT18I,EAAAA,IACT1B,EAAM0B,EAAK7J,OACNF,EAAI,EAAGA,EAAIqI,EAAKrI,IACnBymJ,GAAQA,GAAQ,GAAKA,EAAO18I,EAAK5C,WAAWnH,GAC5CymJ,GAAQ,OAEL,GAAI63H,EAAkBv0Q,GAAAA,IAC3B1B,EAAM0B,EAAKi4Q,WAAa,EACnBhiR,EAAI,EAAGA,EAAIqI,EAAKrI,IACnBymJ,GAAQA,GAAQ,GAAKA,EAAO18I,EAAK/J,GACjCymJ,GAAQ,SAGLA,CAAAA,EAaLw7H,EAA0B7O,EAASiK,aAAa4E,uBAAyB,SAC3EC,IAEAA,EAAuBA,GAAwB,IAC1BxhR,WAAWu7B,OAAAA,IAE5B54B,GAAAA,EAAS,OAEuB,IAAhC6+Q,EAAqBhiR,SACvBmD,GAAAA,GAGE6+Q,EAAqBhiR,OAAS,GAAM,IACtCmD,GAAAA,IAAS,IAIT,mBAAmB2jC,KACjBk7O,EAAqB5xO,OAAO,EAAG4xO,EAAqBhiR,OAAS,MAG/DmD,GAAAA,IAAS,IAIT,gDAAgD2jC,KAC9Ck7O,EAAqB5xO,QAAQ,MAG/BjtC,GAAAA,GAEKA,CAAAA,EAeL8+Q,EAA2B/O,EAASiK,aAAa8E,wBAA0B,SAC7EC,GAAAA,IAGIC,GADJD,EAAUA,GAAW,IACMx8N,MAAM,WAC7BviD,EAAS,QAEe,IAAxBg/Q,EAAaniR,OAAc,KACzBoiR,EAAgB,sDAAsD17M,KACxEy7M,EAAa,IAEX/hR,MAAMC,QAAQ+hR,KAChBj/Q,EAAS,CACPy8Q,SAAUwC,EAAc,GACxBvyI,QAASuyI,EAAc,GACvBv4Q,KAAMs4Q,EAAa,YAIlBh/Q,CAAAA,EAULk/Q,EAAuBnP,EAASiK,aAAakF,oBAAsB,iBAE5C,oBAAhBh6Q,aAAqD,oBAAfV,UAAAA,EAajDurQ,EAASiK,aAAamF,cAAgB,SAASl4I,GAAAA,OACtCi4I,KAAyBj4I,aAAkB/hI,WAAAA,EAAAA,IAWhD+1Q,EAAqBlL,EAASiK,aAAaiB,kBAAoB,SACjEh0I,GAAAA,OAGEi4I,KACuB,oBAAhB94Q,cACN6gI,aAAkBm4I,WACjBn4I,aAAkBziI,YACY,oBAAtBw2Q,mBACN/zI,aAAkB+zI,mBACpB/zI,aAAkBo4I,YAClBp4I,aAAkB/gI,aAClB+gI,aAAkBq4I,YAClBr4I,aAAkB7gI,aAClB6gI,aAAkBsmD,cAClBtmD,aAAkBs4I,aAAAA,EAapBC,EAA4BzP,EAASiK,aAAawF,yBAA2B,SAC/EC,GAAAA,IAAAA,IAEIz6Q,EAAMy6Q,EAAc5iR,OACpBsI,EAAQ,IAAIX,WAAWQ,GAClBrI,EAAI,EAAGA,EAAIqI,EAAKrI,IACvBwI,EAAMxI,GAAK8iR,EAAc37Q,WAAWnH,GAAAA,OAE/BwI,CAAAA,EAaL02Q,EAA6B9L,EAASiK,aAAa6B,0BAA4B,SACjF52Q,GAAAA,IAAAA,IAEI+9C,EAAM,GAGNm5L,EAAM8+B,EAAkBh2Q,GAAUA,EAAS,IAAIT,WAAWS,GACrDtI,EAAI,EAAGA,EAAIw/O,EAAIt/O,OAAQF,GAzsBV,KA6sBpBqmD,GAAOzkD,OAAO8F,aAAajH,MACzB,KACA++O,EAAIH,SAASr/O,EAAGA,EA/sBE,cAktBfqmD,CAAAA,EA8BT+sN,EAAS1mP,SAAW,eACduxP,EAAWh2P,EAAQ5iB,EAAG1B,EAAG2B,EAAGC,EAAG2kD,EAAO64N,EAAa7C,EAAAA,GAG3B,iBAAjBjgR,UAAU,IACnBgoB,EAASq1P,EACTj4Q,EAAIpF,UAAU,GACd0D,EAAI1D,UAAU,GACdqF,EAAIrF,UAAU,GACdsF,EAAItF,UAAU,GACdiqD,EAAQjqD,UAAU,GAClB8iR,EAAc9iR,UAAU,GACxBigR,EAAWjgR,UAAU,KAErBgoB,EAAShoB,UAAU,GACnBoF,EAAIpF,UAAU,GACd0D,EAAI1D,UAAU,GACdqF,EAAIrF,UAAU,GACdsF,EAAItF,UAAU,GACdiqD,EAAQjqD,UAAU,GAClB8iR,EAAc9iR,UAAU,GACxBigR,EAAWjgR,UAAU,IAIA,YAArBmmI,EAAAA,GAAAA,GAtBF63I,EAAYh+Q,UAAU,MAuBnBy/Q,EAAazB,IACd,cAAeA,EACf,KACIzuQ,EAAUyuQ,EAEdA,EAAYzuQ,EAAQyuQ,UACpBh2P,EAASzY,EAAQyY,QAAUA,GAAUq1P,EACrCj4Q,EAAImK,EAAQnK,GAAKA,GAAK,EACtB1B,EAAI6L,EAAQ7L,GAAKA,GAAK,EACtB2B,EAAIkK,EAAQlK,GAAKkK,EAAQtK,OAASI,EAClCC,EAAIiK,EAAQjK,GAAKiK,EAAQrK,QAAUI,EACnC2kD,EAAQ16C,EAAQ06C,OAASA,EACzB64N,EAAcvzQ,EAAQuzQ,aAAeA,EACrC7C,EAAW1wQ,EAAQ0wQ,UAAY1wQ,EAAQ6M,OAAS6jQ,CAAAA,CAAAA,IAI9CvjQ,EAAS7a,KAAKqrJ,SAASgzG,aAAAA,QAAAA,IACvB4iB,IAAgE,IAAnCpmQ,EAAOrO,QAAQ,iBAC9Cy0Q,EAAc,QAGZhzN,MAAM1qD,IAAM0qD,MAAMpsD,GAAAA,MACd,IAAI4C,MAAM,gDAGlB+4Q,EAAWv+Q,KAAKe,MAAAA,IAEZwqB,EAAQ02P,EAAiBjiR,KAC3Be,KACAm8Q,EACAh2P,EACAiiC,EACA64N,GAAAA,OAGF9C,EAAgBl/Q,KAAKe,KAAMuD,EAAG1B,EAAG2B,EAAGC,EAAG+mB,EAAO4zP,GAEvCp+Q,IAAAA,EAAAA,IAGLkhR,EAAmB,SAAS/E,EAAWh2P,EAAQiiC,EAAO64N,GAAAA,IACpD1/Q,EAAQ4/Q,EA/fYrgR,EAAAA,GAkgBD,iBAAdq7Q,GACPD,EAA4BC,KAAeX,EAC3C,CACAW,EAAYlW,SAASkW,GAAAA,IACjB2B,EAAesD,EAA4BjF,GAAAA,IAE1B,KAAjB2B,QAAAA,KAGFA,EAAexM,EAASyM,SAAS5B,GAAAA,OAFjCA,EAAY2B,EAAAA,CAAAA,GASZF,EAAazB,KACfA,EAAY0B,EAAwB1B,EAAWh2P,IAGjDA,EAAS+1P,EAA4BC,EAAWh2P,IAC3Cw3P,EAAqBx3P,GAAAA,MAClB,IAAI1hB,MACR,4CACE0hB,EACA,uCACAA,EACA,2BA5hBC,OADiBrlB,EAmiBTsnD,IAliB2D,IAAjBtnD,EAAM1C,UAmiB7DgqD,EAjiB6B,SAAS+zN,GAAAA,MACf,iBAAdA,GAA0BK,EAAkBL,GAC9C8D,EAAU9D,GACRK,EAAkBL,EAAUl0Q,MAC9Bg4Q,EAAU9D,EAAUl0Q,MAGtB,KAPwB,CAiiBMk0Q,KAErC56Q,EAAS08Q,EAAoBh/Q,KAAKe,KAAMooD,MAGlCq4N,MAEItE,aAAqBp2Q,YAA0B,SAAXogB,IACxCg7P,EAAqBhF,EACrBA,EAAY4E,EAAyB5E,KAIzC56Q,EAASvB,KAAK,UAAYmmB,EAAO5K,eAC/B4gQ,EACAuB,EAAcz+Q,KAAKe,MACnBooD,EAzkBmB,SAAStnD,GAAAA,OAC5BA,GAA0B,iBAAVA,IAAoBA,EAAQA,EAAMya,eAC/Cza,KAASwwQ,EAASsO,kBAAoB9+Q,EAAQ8+Q,EAAkBC,IAAAA,CAFhD,CA0kBAoB,GACnBE,KAIC5/Q,EAAAA,MACG,IAAIkD,MAAM,iEAEXlD,CAAAA,EASL6/Q,EAA+B9P,EAASiK,aAAa6F,4BAA8B,SACrFC,EACAC,GAAAA,IAGIC,EADJD,EAAmC,kBAAfA,GAA2BA,EAAAA,IAG3CE,EADArF,EAAY,MAGU,iBAAfkF,EAAyB,CAElCG,EAAyB,QADzBD,EAAalB,EAAwBgB,IACLE,EAAWt5Q,KAAOo5Q,EAAAA,IAGhDlF,EAAY33B,GAAKg9B,EAKX,CAJN,MAAOngR,GAAAA,GACHigR,EAAAA,MACGnB,EAAuBqB,GAKpB,IAAI/8Q,MACR,mDAAqDpD,EAAEqnD,SALnD,IAAIjkD,MACR,yFAUH03Q,CAAAA,EAST7K,EAASmQ,mBAAqB,SAAStF,GAAAA,IACjC3xP,EAEArE,EADA23P,EAAe,MAGfF,EAAazB,KACfA,EAAY0B,EAAwB1B,IAIf,iBAAdA,GACPD,EAA4BC,KAAeX,IAItB,MAFrBsC,EAAesD,EAA4BjF,GAAAA,MAGzC2B,EAAexM,EAASyM,SAAS5B,IAAc,IAEjDA,EAAY2B,GAGd33P,EAAS+1P,EAA4BC,IAChCwB,EAAqBx3P,GAAAA,MAClB,IAAI1hB,MACR,4CACE0hB,EACA,uCACAA,EACA,2BAIFs6P,KAA2BtE,aAAqBp2Q,aAClDo2Q,EAAY4E,EAAyB5E,MAGvC3xP,EAAQxqB,KAAK,UAAYmmB,EAAO5K,eAAe4gQ,IAAAA,MAGvC,IAAI13Q,MAAM,gEAGlB+lB,EAAM41I,SAAWj6I,EAEVqE,CAAAA,CAAAA,CAx9BX,CA09BGqnO,GAAMY,KCt8BT,SAAU6e,GAAAA,IAGJoQ,EAAW,SAAS91N,GAAAA,QAAAA,IACXA,GACE,IAAPA,EAAAA,OAAAA,CACK,EAKbimM,GAAMY,IAAI50H,OAAOt/H,KAAK,CACpB,UACA,SAASojR,GACQ3hR,KAAKqrJ,SAAS27G,YAAY2a,EAAYviB,YAC5Ca,YAAY4U,YAAc,MAIvCvD,EAASzzI,OAAOt/H,KAAK,CACnB,UACA,SAASqjR,GAAAA,IAAAA,IAOHC,EAAM79Q,EAAMysB,EANZq9O,EAAgC9tQ,KAAKqrJ,SAASulH,oBAC9C7C,EAA8B/tQ,KAAKqrJ,SACpC0iH,4BACC+T,EAAW9hR,KAAKqrJ,SAAS67G,mBAAmB0a,EAAYpkB,OACxDukB,EAAYH,EAAY3hB,YAAY4U,YAGpCrpJ,GAAAA,EACK7+G,EAAI,EAAGA,EAAIo1Q,EAAU3jR,SAAWotH,EAAO7+G,IAAAA,QAC9Ck1Q,EAAOE,EAAUp1Q,IACJK,MAAAA,IACN,QAED00Q,EAASG,EAAKn0Q,QAAQgd,MACtBg3P,EAASG,EAAKn0Q,QAAQ0xP,eAEtB5zI,GAAAA,GAAQ,UAGP,gBACA,WACA,WACHA,GAAAA,EAAQ,GAID,GAATA,EAAAA,CAAAA,KAIC6/B,SAASpzI,MAAM,iBACf,IAAI/Z,EAAI,EAAGA,EAAI6jR,EAAU3jR,OAAQF,IAAK,CACzC2jR,EAAOE,EAAU7jR,GAAAA,IACbqjI,EAASvhI,KAAKqrJ,SAAS64G,UACvBvF,EAAY3+P,KAAKqrJ,SAAS07G,aAAa6a,EAAYpkB,OAAAA,OAE/CqkB,EAAK70Q,MAAAA,IACN,iBAEEq+I,SAASpzI,MAAM,IAAM4pQ,EAAKr5I,OAAOg1H,MAAQ,mBAE3C,WAECwkB,EAAUhiR,KAAKqrJ,SAASkyG,sBACxB0kB,EAAWjiR,KAAKqrJ,SAASkyG,sBACzB2kB,EAAgBliR,KAAKqrJ,SAAS07G,aAAaib,EAAQxkB,OAEnDh4I,EAAQq8J,EAAKr8J,OAAS,OAY1B/0F,EACE,kCAZFzsB,EACE,UACA8pQ,EAA8B+T,EAAKztP,OAAO7wB,GAC1C,IACAwqQ,EAA4B8T,EAAKztP,OAAOvyB,EAAIggR,EAAKztP,OAAO3wB,GACxD,IACAqqQ,EAA8B+T,EAAKztP,OAAO7wB,EAAIs+Q,EAAKztP,OAAO5wB,GAC1D,IACAuqQ,EAA4B8T,EAAKztP,OAAOvyB,GACxC,MAOA,cACA0/H,EAAO2gJ,EAAcL,EAAKM,WAC1B,IACF1xP,GAAQ,WAAawxP,EAASzkB,MAAQ,OACtC/sO,GAAQ,OAASqxP,EAAStkB,MAAQ,OAClC/sO,GAAQ,QAAU8wG,EAAO2gJ,EAAc18J,IAAU,OACjDw8J,EAAQ/wP,QAAUR,EAAAA,IAEdvW,EAAS8nQ,EAAQxkB,MAAQ,OAc7B/sO,EACE,mCAbFzsB,EACE,UACA8pQ,EAA8B+T,EAAKztP,OAAO7wB,EAH/B,IAIX,IACAwqQ,EAA4B8T,EAAKztP,OAAOvyB,EAAIggR,EAAKztP,OAAO3wB,GACxD,IACAqqQ,EACE+T,EAAKztP,OAAO7wB,EAAIs+Q,EAAKztP,OAAO5wB,EARnB,IAUX,IACAuqQ,EAA4B8T,EAAKztP,OAAOvyB,GACxC,MAMA,YACAqY,EACE2nQ,EAAK/vP,OACPrB,GAAQ,eAEVA,GAAQ,MACRwxP,EAAShxP,QAAUR,EAAAA,KAEd46H,SAASpzI,MAAM+pQ,EAAQxkB,MAAO,MAAOykB,EAASzkB,MAAO,iBAGvD,WACHx5P,EACE,UACA8pQ,EAA8B+T,EAAKztP,OAAO7wB,GAC1C,IACAwqQ,EAA4B8T,EAAKztP,OAAOvyB,GACxC,IACAisQ,EAA8B+T,EAAKztP,OAAO7wB,EAAIs+Q,EAAKztP,OAAO5wB,GAC1D,IACAuqQ,EAA4B8T,EAAKztP,OAAOvyB,EAAIggR,EAAKztP,OAAO3wB,GACxD,SACEuX,EAAQ6mQ,EAAK7mQ,OAAS,UAC1ByV,EACE,qCAGAzsB,EACA,cACAu9H,EAAOo9H,EAAUkjB,EAAKM,WACtB,IACF1xP,GACE,mEACAzV,EACA,IACFyV,GAAQ,mBACRA,GAAQ,WACH46H,SAASpzI,MAAMwY,GAAAA,MAAAA,IAEjB,UACCoxP,EAAKn0Q,QAAQqL,KAAM,KACjB+vH,EAAM9oI,KAAK60Q,YAAYuN,SAASP,EAAKn0Q,QAAQqL,MACjD8oQ,EAAKn0Q,QAAQ0xP,WAAat2H,EAAInT,KAC9BksJ,EAAKn0Q,QAAQvK,IAAM2lI,EAAIjnI,CAAAA,MAElBggR,EAAKn0Q,QAAQvK,MAChB0+Q,EAAKn0Q,QAAQvK,IAAM,MAIvBa,EACE,UACA69Q,EAAKQ,YAAY9+Q,EACjB,IACAs+Q,EAAKQ,YAAYxgR,EACjB,IACAggR,EAAKQ,YAAY7+Q,EACjB,IACAq+Q,EAAKQ,YAAY5+Q,EACjB,KAEFgtB,EAAO,GACHoxP,EAAKn0Q,QAAQgd,IACf+F,EACE,iCACAzsB,EACA,sCACAu9H,EAAOo9H,EAAUkjB,EAAKn0Q,QAAQgd,MAC9B,YACG,GAAIm3P,EAAKn0Q,QAAQ0xP,WAAY,OAGlC3uO,EACE,iCACAzsB,EACA,0BAJShE,KAAKqrJ,SAAS27G,YAAY6a,EAAKn0Q,QAAQ0xP,YAK3C5B,MACL,OACFqkB,EAAKn0Q,QAAQ40Q,UAAYT,EAAKn0Q,QAAQ40Q,WAAa,MAC3CT,EAAKn0Q,QAAQ40Q,WAAAA,IACd,MACH7xP,GAAQ,mBAEL,OACHA,GAAQ,UAAYoxP,EAAKn0Q,QAAQvK,IAAM,cAEpC,OACH0+Q,EAAKn0Q,QAAQxK,KAAO2+Q,EAAKn0Q,QAAQxK,MAAQ,EACzCutB,GAAQ,UAAYoxP,EAAKn0Q,QAAQxK,KAAO,UAErC,YAECC,EAAM4qQ,EAA4B8T,EAAKn0Q,QAAQvK,KACnD0+Q,EAAKn0Q,QAAQxK,KAAO2+Q,EAAKn0Q,QAAQxK,MAAQ,WAE9B2+Q,EAAKn0Q,QAAQq2E,OACtB89L,EAAKn0Q,QAAQq2E,KAAO,GAEtBtzD,GACE,SACAoxP,EAAKn0Q,QAAQxK,KACb,IACAC,EACA,IACA0+Q,EAAKn0Q,QAAQq2E,KACb,IAKI,IAARtzD,IACFA,GAAQ,WACH46H,SAASpzI,MAAMwY,IAAAA,CAAAA,KAKvB46H,SAASpzI,MAAM,SASxBq5P,EAASiR,iBAAmB,SAAS70Q,GAAAA,IAC/Bo0Q,EAAW9hR,KAAKqrJ,SAAS87G,qBAAAA,OACrBz5P,EAAQV,MAAAA,IACT,YACE8+B,KACHp+B,EAAQ0mB,OAAO7wB,EACfmK,EAAQ0mB,OAAOvyB,EACf6L,EAAQ0mB,OAAO5wB,EACfkK,EAAQ0mB,OAAO3wB,EACfiK,GAAAA,MAAAA,IAGC,WACA,WACHo0Q,EAAS7hB,YAAY4U,YAAYt2Q,KAAKmP,GAAAA,EAmB5C4jQ,EAASxlO,KAAO,SAASvoC,EAAG1B,EAAG2B,EAAGC,EAAGiK,GAAAA,IAC/Bo0Q,EAAW9hR,KAAKqrJ,SAAS87G,qBACzB2G,EAAgC9tQ,KAAKqrJ,SAASulH,oBAC9C7C,EAA8B/tQ,KAAKqrJ,SAAS0iH,4BAEhD+T,EAAS7hB,YAAY4U,YAAYt2Q,KAAK,CACpC8jR,YAAa,CACX9+Q,EAAGuqQ,EAA8BvqQ,GACjC1B,EAAGksQ,EAA4BlsQ,GAC/B2B,EAAGsqQ,EAA8BvqQ,EAAIC,GACrCC,EAAGsqQ,EAA4BlsQ,EAAI4B,IAErCiK,QAASA,EACTV,KAAM,UAgBVskQ,EAASkR,aAAe,SAAS1rP,EAAMvzB,EAAG1B,EAAG6L,GAAAA,IAGvC+0Q,EAAYC,EAFZC,EAAiB3iR,KAAK4iR,aAAa9rP,GACnCrJ,EAAaztB,KAAKqrJ,SAASsiH,gBAAkB3tQ,KAAKqrJ,SAAS6pG,YAAAA,QAAAA,IAI3DxnP,EAAQgvG,SAAwB,CAElCgmK,EADmBh1Q,EAAbgvG,SAAAA,IAEFmmK,EAAa7iR,KAAK4oQ,gBAAgB9xO,EAAM4rP,GAAWtkR,OACvDqkR,EAAa/9Q,KAAKwD,KAAKulB,EAAao1P,EAAAA,MAEpCH,EAAYC,EACZF,EAAah1P,EAAAA,OAAAA,KAGVqJ,KAAKA,EAAMvzB,EAAG1B,EAAG6L,GAItB7L,GAAkB,GAAb4rB,EAEiB,WAAlB/f,EAAQk6P,QACVrkQ,GAAQo/Q,EAAiB,GAEL,UAAlBj1Q,EAAQk6P,QACVrkQ,GAAQo/Q,GAAAA,KAEL72O,KAAKvoC,EAAG1B,EAAI4rB,EAAYi1P,EAAWD,EAAY/0Q,GAC7Ci1Q,CAAAA,EAUTrR,EAASsR,aAAe,SAAS9rP,GAAAA,IAC3BnJ,EAAW3tB,KAAKqrJ,SAASgqG,cAAAA,OAE1Br1P,KAAK6pQ,mBAAmB/yO,GAAQnJ,EAAY3tB,KAAKqrJ,SAAS6pG,WAAAA,CAAAA,CAvVjE,CA4VGrD,GAAMY,KCrYT,SAAU6e,GAAAA,IAOJwR,EAAoB,MACd,CAAC,YACD,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,MAAQ,MAAQ,MAAO,YACxB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,YACD,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,YACT,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,MAAQ,MAAQ,YACzB,CAAC,MAAQ,YACT,CAAC,MAAQ,QASfC,EAAY,OACN,OACE,YACA,YACA,YACA,aAEF,OACE,YACA,YACA,YACA,aAEF,OAAU,OAAU,OAAU,cAC9B,MACE,WACA,WACA,WACA,WACA,QAIRC,EAAoB,MAChB,WACA,WACA,WACA,WACA,OAGJC,EAAY,CAAC,KAAM,KAAM,KAAM,MAQnC3R,EAAS4R,iBAAmB,CAAC,EAAD,IAGxBC,EAA2B7R,EAAS4R,iBAAiBC,wBAA0B,SACjFjpO,GAAAA,YAAAA,IAEc4oO,EAAkB5oO,EAAO70C,WAAW,KAGhD+9Q,EAAkB9R,EAAS4R,iBAAiBE,eAAiB,SAC/DlpO,GAAAA,MAGoB,iBAAXA,GACP,yEAAyEhV,KACvEgV,EAAAA,EAKFmpO,EAAqB/R,EAAS4R,iBAAiBG,kBAAoB,SACrEnpO,GAAAA,OAGEkpO,EAAelpO,IACfipO,EAAwBjpO,IACxB4oO,EAAkB5oO,EAAO70C,WAAW,IAAIjH,QAAU,GAIlDklR,EAAqBhS,EAAS4R,iBAAiBI,kBAAoB,SACrEppO,GAAAA,OAGEkpO,EAAelpO,IAAW+oO,EAAUz2Q,QAAQ0tC,EAAO70C,WAAW,KAAO,GAIzEisQ,EAAS4R,iBAAiBK,4BAA8B,SAASrpO,GAAAA,OAE7DkpO,EAAelpO,IACfipO,EAAwBjpO,IACxB4oO,EAAkB5oO,EAAO70C,WAAW,IAAIjH,QAAU,OAIlDolR,EAA4BlS,EAAS4R,iBAAiBM,yBAA2B,SACnFtpO,GAAAA,OAGEkpO,EAAelpO,IACfipO,EAAwBjpO,IACxB4oO,EAAkB5oO,EAAO70C,WAAW,IAAIjH,QAAU,GAItDkzQ,EAAS4R,iBAAiBO,2BAA6B,SAASvpO,GAAAA,OAE5DkpO,EAAelpO,IACfipO,EAAwBjpO,IACxB4oO,EAAkB5oO,EAAO70C,WAAW,IAAIjH,QAAU,OAIlDslR,EAA6BpS,EAAS4R,iBAAiBQ,0BAA4B,SACrFxpO,GAAAA,OAGEkpO,EAAelpO,IACfipO,EAAwBjpO,IAC0B,GAAlD4oO,EAAkB5oO,EAAO70C,WAAW,IAAIjH,MAAAA,EAIxCulR,EAAoBrS,EAAS4R,iBAAiBS,iBAAmB,SACnEC,GAAAA,IAEI1lR,EAAI,EACJ2lR,EAAed,EACfxhR,EAAS,GACTuiR,EAAkB,MAEjB5lR,EAAI,EAAGA,EAAI0lR,EAAQxlR,OAAQF,GAAK,OAAG,IAC3B2lR,EAAaD,EAAQv+Q,WAAWnH,KACzC4lR,IAG4B,iBAF5BD,EAAeA,EAAaD,EAAQv+Q,WAAWnH,OAG7CqD,GAAUzB,OAAO8F,aAAai+Q,GAC9BA,EAAed,EACfe,EAAkB,GAEhB5lR,IAAM0lR,EAAQxlR,OAAS,IACzBylR,EAAed,EACfxhR,GAAUqiR,EAAQ7iN,OAAO7iE,GAAK4lR,EAAkB,IAChD5lR,GAAS4lR,EAAkB,EAC3BA,EAAkB,KAGpBD,EAAed,EACfxhR,GAAUqiR,EAAQ7iN,OAAO7iE,EAAI4lR,GAC7B5lR,GAAQ4lR,EACRA,EAAkB,UAIfviR,CAAAA,EAGT+vQ,EAAS4R,iBAAiBa,kBAAoB,SAAS7pO,GAAAA,YAAAA,IAEnDA,QAAAA,IACA8oO,EAAkB9oO,EAAO70C,WAAW,SAIpC2+Q,EAAkB1S,EAAS4R,iBAAiBc,eAAiB,SAC/DC,EACAC,EACAp6H,GAAAA,OAEKs5H,EAAea,IAAAA,IAIhBd,EAAwBc,IAnIT,GAuIhBT,EAAyBS,KACxBb,EAAec,KAAgBd,EAAet5H,KAC9Cs5H,EAAet5H,IAAau5H,EAAkBa,IAC/Cb,EAAkBY,KAAiBb,EAAec,IAClDb,EAAkBY,IAAgBX,EAAkBY,IACpDb,EAAkBY,IAAgBZ,EAAkBa,GA3ItC,EAiJfR,EAA0BO,IAC1Bb,EAAec,KACdb,EAAkBa,IACnBd,EAAet5H,IACf05H,EAAyB15H,GAlJZ,EAuJXu5H,EAAkBY,KAAiBb,EAAet5H,GAzJxC,EACE,GA6HN,GAuCRq6H,EAAc,SAASrtP,GAAAA,IAIrB54B,EAAI,EACJyoD,EAAI,EACJz8B,EAAW,EACXk6P,EAAgB,GAChBC,EAAa,GACbC,EAAa,GAEb5oP,GAVJ5E,EAAOA,GAAQ,IAUEgtB,MAAM,QACnBygO,EAAW,OACVrmR,EAAI,EAAGA,EAAIw9B,EAAMt9B,OAAQF,GAAK,EAAG,KACpCqmR,EAAShmR,KAAK,IACTooD,EAAI,EAAGA,EAAIjrB,EAAMx9B,GAAGE,OAAQuoD,GAAK,EACpCy9N,EAAgB1oP,EAAMx9B,GAAGyoD,GACzB09N,EAAa3oP,EAAMx9B,GAAGyoD,EAAI,GAC1B29N,EAAa5oP,EAAMx9B,GAAGyoD,EAAI,GACtBy8N,EAAegB,IACjBl6P,EAAW85P,EAAeI,EAAeC,EAAYC,GAEnDC,EAASrmR,KADO,IAAdgsB,EACapqB,OAAO8F,aACpBk9Q,EAAkBsB,EAAc/+Q,WAAW,IAAI6kB,IAGlCk6P,GAGjBG,EAASrmR,IAAMkmR,EAInBG,EAASrmR,GAAKylR,EAAiBY,EAASrmR,GAAAA,CAAAA,OAEjCqmR,EAASrlR,KAAK,MAKrBslR,EAAiBlT,EAAS4R,iBAAiBsB,cAAgBlT,EAASkT,cAAgB,eAIlFjjR,EAHAu1B,EACsB,iBAAjB34B,UAAU,GAAkBA,UAAU,GAAKA,UAAU,GAAG24B,KAC7D2tP,EAAU,MAGVjmR,MAAMC,QAAQq4B,GAAO,KACnB54B,EAAI,MACRumR,EAAU,GACLvmR,EAAI,EAAGA,EAAI44B,EAAK14B,OAAQF,GAAK,EAC5BM,MAAMC,QAAQq4B,EAAK54B,IACrBumR,EAAQlmR,KAAK,CAAC4lR,EAAYrtP,EAAK54B,GAAG,IAAK44B,EAAK54B,GAAG,GAAI44B,EAAK54B,GAAG,KAE3DumR,EAAQlmR,KAAK,CAAC4lR,EAAYrtP,EAAK54B,MAGnCqD,EAASkjR,CAAAA,MAETljR,EAAS4iR,EAAYrtP,GAAAA,MAEK,iBAAjB34B,UAAU,GACZoD,GAEPpD,UAAU,GAAG24B,KAAOv1B,EACbpD,UAAU,KAIrBmzQ,EAASzzI,OAAOt/H,KAAK,CAAC,iBAAkBimR,GAAAA,CAxW1C,CAyWG3yB,GAAMY,KC9TNZ,GAAMY,IA9BEiyB,UAAY,SAASh3Q,GAAAA,IAExBi3Q,EAAAA,GAKG,iBAJPj3Q,EAAUA,GAAW,CAAC,GACd0sC,QAAU1sC,EAAQ0sC,SAAW,cAE7B1sC,EAAQ0sC,SACT,KAEEwqO,MAAM,mBAER,KAEEv5H,SAASxtB,OAAO+7D,UAAU,oBAAoB,WACjD+qF,EAAkB3kR,KAAKqrJ,SAAS8xG,YAAAA,KAC3B9xG,SAAS9mG,IAAI,WACb8mG,SAAS9mG,IAAI,kBACb8mG,SAAS9mG,IAAI,sBACb8mG,SAAS9mG,IAAI,kBACb8mG,SAAS9mG,IAAI,WACb8mG,SAAS9mG,IAAI,kBAGf8mG,SAASxtB,OAAO+7D,UAAU,cAAc,gBACtCvuC,SAAS9mG,IAAI,eAAiBogO,EAAkB,kBAIpD3kR,IAAAA,ECvCX,SAAUsxQ,GAAAA,IAOJuT,EAAS,eACPC,OAAAA,EACJjmR,OAAOw6B,eAAer5B,KAAM,MAAO,CACjCuM,IAAK,kBACIu4Q,CAAAA,EAETj1N,IAAK,SAAS/uD,GACZgkR,EAAgBhkR,CAAAA,IAAAA,IAIhBikR,EAAS,IAOblmR,OAAOw6B,eAAer5B,KAAM,QAAS,CACnCuM,IAAK,kBACIw4Q,CAAAA,EAETl1N,IAAK,SAAS/uD,GAEVikR,EADE92N,MAAMntD,KAAAA,IAAU67G,OAAOo9J,UAAUj5Q,IAAoBA,EAAQ,EACtD,IAEAA,EAEPd,KAAK43B,WAAW,MAAMotP,mBAAAA,KACnBptP,WAAW,MAAMqtP,UAAYF,EAAS,UAK7CG,EAAU,IAOdrmR,OAAOw6B,eAAer5B,KAAM,SAAU,CACpCuM,IAAK,kBACI24Q,CAAAA,EAETr1N,IAAK,SAAS/uD,GAEVokR,EADEj3N,MAAMntD,KAAAA,IAAU67G,OAAOo9J,UAAUj5Q,IAAoBA,EAAQ,EACrD,IAEAA,EAERd,KAAK43B,WAAW,MAAMutP,mBAAAA,KACnBvtP,WAAW,MAAMwtP,UAAYF,EAAU,UAK9CG,EAAc,GAClBxmR,OAAOw6B,eAAer5B,KAAM,aAAc,CACxCuM,IAAK,kBACI84Q,CAAAA,EAETx1N,IAAK,SAAS/uD,GACZukR,EAAcvkR,CAAAA,IAAAA,IAIdwkR,EAAS,CAAC,EACdzmR,OAAOw6B,eAAer5B,KAAM,QAAS,CACnCuM,IAAK,kBACI+4Q,CAAAA,EAETz1N,IAAK,SAAS/uD,GACZwkR,EAASxkR,CAAAA,IAIbjC,OAAOw6B,eAAer5B,KAAM,aAAc,CAAC,EAAD,EAW5C6kR,EAAO/lR,UAAU84B,WAAa,SAASktE,EAAaygL,GAAAA,IAE9CvmR,EAAAA,GAEgB,QAHpB8lG,EAAcA,GAAe,aAIpB,SAEJ9lG,KAAOumR,EACNvlR,KAAKwlR,IAAIC,UAAU1nR,eAAeiB,KAAAA,KAC/BwmR,IAAIC,UAAUzmR,GAAOumR,EAAkBvmR,IAAAA,OAAAA,KAG3CwmR,IAAIC,UAAUC,QAAU1lR,KACtBA,KAAKwlR,IAAIC,SAAAA,EASlBZ,EAAO/lR,UAAUi5B,UAAY,iBACrB,IAAItzB,MAAM,kCAGlB6sQ,EAASzzI,OAAOt/H,KAAK,CACnB,cACA,gBACOm5B,OAAS,IAAImtP,EAAAA,KACbntP,OAAO8tP,IAAMxlR,IAAAA,GAAAA,CA7HxB,CAkIG6xP,GAAMY,KC/GT,SAAU6e,GAAAA,IAGJqU,EAAa,CAAEziR,KAAM,EAAGC,IAAK,EAAGqxK,OAAQ,EAAGD,MAAO,GAGlDqxG,GAAAA,EAEAC,EAAc,oBACL7lR,KAAKqrJ,SAASy6H,WAAAA,KAClBz6H,SAASy6H,SAAW,CAAC,EAAD,KACpBz6H,SAASy6H,SAASrtO,QAAU,OAC5B4yG,SAASy6H,SAASC,oBAAiB,EAAA/3Q,KACnCq9I,SAASy6H,SAASE,QAAUnnR,OAAOuB,OAAO,CAAC,EAAGulR,GAAAA,KAC9Ct6H,SAASy6H,SAASE,QAAQ5iR,MAAQpD,KAAK8vQ,eAC5CmW,EAAOhnR,KAAKe,MAAAA,EAIZimR,EAAS,gBACN56H,SAASy6H,SAASI,SAAW,IAAI1pK,EAAAA,KACjC6uC,SAASy6H,SAASjuB,MAAQ,GAG7Br7I,EAAO,eACLuvB,EAAK5tI,UAAU,GACnBU,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZnzE,IAAK,kBACIw/H,CAAAA,EAETl8E,IAAK,SAAS/uD,GACZirI,EAAKjrI,CAAAA,IAAAA,IAGL6uQ,EAAKxxQ,UAAU,GACnBU,OAAOw6B,eAAer5B,KAAM,IAAK,CAC/B0/E,YAAY,EACZnzE,IAAK,kBACIojQ,CAAAA,EAET9/M,IAAK,SAAS/uD,GACZ6uQ,EAAK7uQ,CAAAA,IAAAA,IAGLikR,EAAS5mR,UAAU,GACvBU,OAAOw6B,eAAer5B,KAAM,QAAS,CACnC0/E,YAAY,EACZnzE,IAAK,kBACIw4Q,CAAAA,EAETl1N,IAAK,SAAS/uD,GACZikR,EAASjkR,CAAAA,IAAAA,IAGTokR,EAAU/mR,UAAU,GACxBU,OAAOw6B,eAAer5B,KAAM,SAAU,CACpC0/E,YAAY,EACZnzE,IAAK,kBACI24Q,CAAAA,EAETr1N,IAAK,SAAS/uD,GACZokR,EAAUpkR,CAAAA,IAAAA,IAGVqlR,EAAQhoR,UAAU,GACtBU,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClC0/E,YAAY,EACZnzE,IAAK,kBACI45Q,CAAAA,EAETt2N,IAAK,SAAS/uD,GACZqlR,EAAQrlR,CAAAA,IAAAA,IAGRslR,EAAcjoR,UAAU,GAC5BU,OAAOw6B,eAAer5B,KAAM,aAAc,CACxC0/E,YAAY,EACZnzE,IAAK,kBACI65Q,CAAAA,EAETv2N,IAAK,SAAS/uD,GACZslR,EAActlR,CAAAA,IAAAA,IAGdulR,EAASloR,UAAU,UACvBU,OAAOw6B,eAAer5B,KAAM,QAAS,CACnC0/E,YAAY,EACZnzE,IAAK,kBACI85Q,CAAAA,EAETx2N,IAAK,SAAS/uD,GACZulR,EAASvlR,CAAAA,IAINd,IAAAA,EAGTw8G,EAAK19G,UAAUunC,MAAQ,kBACd,IAAIm2E,EACTx8G,KAAKuD,EACLvD,KAAK6B,EACL7B,KAAKoD,MACLpD,KAAKqD,OACLrD,KAAK82B,KACL92B,KAAKsmR,WACLtmR,KAAK4nQ,MAAAA,EAITprJ,EAAK19G,UAAUsuE,QAAU,iBAChB,CACLptE,KAAKuD,EACLvD,KAAK6B,EACL7B,KAAKoD,MACLpD,KAAKqD,OACLrD,KAAK82B,KACL92B,KAAKsmR,WACLtmR,KAAK4nQ,MAAAA,EAST0J,EAASiV,kBAAoB,SAAS10N,GAAAA,OACpCg0N,EAAY5mR,KAAKe,MAAAA,KACZqrJ,SAASy6H,SAASC,eACL,mBAATl0N,EAAsBA,OAAAA,EACxB7xD,IAAAA,EASTsxQ,EAASkV,kBAAoB,SAAS1vP,EAAMppB,GAC1Cm4Q,EAAY5mR,KAAKe,MAAAA,IAEb2tB,GADJjgB,EAAUA,GAAW,CAAC,GACCigB,UAAY3tB,KAAKq1P,cACpC96M,EAAO7sC,EAAQ6sC,MAAQv6C,KAAK+kQ,UAC5B7P,EAAcxnP,EAAQwnP,aAAel1P,KAAKqrJ,SAAS6pG,YACnD9xP,EAAQ,EACRqjR,EAAgB,EAEhBC,EAAY,EACZjgB,EAAQzmQ,KAAAA,IAEPxB,MAAMC,QAAQq4B,IAAyB,iBAATA,EAAmB,IAChC,iBAATA,EAAAA,MAGH,IAAIryB,MACR,wGAHFqyB,EAAOh3B,OAAOg3B,EAAAA,CAAAA,IAQZ4lF,EAAWhvG,EAAQgvG,SACrBA,EAAW,EACO,iBAAT5lF,EACTA,EAAO92B,KAAK4oQ,gBAAgB9xO,EAAM4lF,GACgB,mBAAzC79G,OAAOC,UAAUF,SAASK,KAAK63B,KACxCA,EAAOA,EAAKtO,QAAO,SAAS4B,EAAKy+O,GAAAA,OACxBz+O,EAAInnB,OAAOwjQ,EAAMmC,gBAAgBC,EAAUnsJ,GAAAA,GACjD,KAIL5lF,EAAOt4B,MAAMC,QAAQq4B,GAAQA,EAAO,CAACA,GAAAA,IAGlC,IAAI54B,EAAI,EAAGA,EAAI44B,EAAK14B,OAAQF,IAE3BkF,GADJsjR,EAAY1mR,KAAK6pQ,mBAAmB/yO,EAAK54B,GAAI,CAAEq8C,KAAMA,IAAU5sB,KAE7DvqB,EAAQsjR,GAAAA,OAIE,IAAVtjR,IACFqjR,EAAgB3vP,EAAK14B,QAUhB,CAAEoF,EAPTJ,GAAgB8xP,EAOGzxP,EANViB,KAAKC,KACX8hR,EAAgB94P,EAAW3tB,KAAK6tQ,sBAC/BlgP,GAAY3tB,KAAK6tQ,sBAAwB,IACzC3Y,EACF,KASJoc,EAASqV,YAAc,WACrBd,EAAY5mR,KAAKe,MAAAA,KAEZonQ,UAAAA,IAED4e,EAAUhmR,KAAKqrJ,SAASy6H,SAASE,SAAWL,EAAAA,OAAAA,KAC3Ct6H,SAASy6H,SAASI,SAAW,IAAI1pK,EACpCwpK,EAAQ9iR,KACR8iR,EAAQ7iR,SAAAA,OACR6K,GACAA,KAEGq9I,SAASy6H,SAASjuB,OAAS,EAEzB73P,IAAAA,EAAAA,IAeLijH,EAAQquJ,EAASruJ,KAAO,eACtB2jK,EAGFA,EADEzoR,UAAU,aAAcq+G,EACZr+G,UAAU,GAEV,IAAIq+G,EAChBr+G,UAAU,GACVA,UAAU,GACVA,UAAU,GACVA,UAAU,GACVA,UAAU,GACVA,UAAU,IAGd0nR,EAAY5mR,KAAKe,MAAAA,IACbkmR,EAAWlmR,KAAKqrJ,SAASy6H,SAASI,SAClCztO,EAAUz4C,KAAKqrJ,SAASy6H,SAASrtO,QACjCutO,EAAUhmR,KAAKqrJ,SAASy6H,SAASE,SAAWL,EAC5CkB,EAAiB7mR,KAAKqrJ,SAASy6H,SAASe,eACxCC,EAAe9mR,KAAKqrJ,SAASy6H,SAASgB,aAAAA,YAAAA,IAE/BZ,EAASI,aACdJ,EAASI,aAAeM,EAAYN,YAEtCM,EAAYrjR,GAAK2iR,EAAS3iR,GAAK,IAAM2iR,EAAS9iR,OAAS,GACvDwjR,EAAY/kR,EAAIqkR,EAASrkR,GAAK,GAI5BqkR,EAASrkR,EAAIqkR,EAAS7iR,OAASujR,EAAYvjR,OAAS2iR,EAAQxxG,OAC5Dx0K,KAAKm1P,iBAAAA,KAEAwxB,cACLC,EAAY/kR,EAAImkR,EAAQ7iR,IACpB2jR,GAAgBD,IAAAA,KACbE,eAAeH,EAAYN,YAAY,GAC5CM,EAAY/kR,GAAKglR,EAAe,GAAGxjR,SAGrCujR,EAAY/kR,EAAIqkR,EAASrkR,EAAIqkR,EAAS7iR,QAAUujR,EAAY/kR,QAAAA,IAKvD+kR,EAAY9vP,KAAK,UACrB9yB,KACH4iR,EAAYrjR,EACZqjR,EAAY/kR,EACZ+kR,EAAYxjR,MACZwjR,EAAYvjR,QAAAA,IACZuiR,EAA6B,UAAO,GAEZ,UAAtBgB,EAAYhf,MAAAA,KACT9wO,KACH8vP,EAAY9vP,KACZ8vP,EAAYrjR,EAAIqjR,EAAYxjR,MAAQq1C,EACpCmuO,EAAY/kR,EAAI42C,EAChB,CAAEmvN,MAAO,QAAShvN,SAAU,QAEC,WAAtBguO,EAAYhf,MAAAA,KAChB9wO,KACH8vP,EAAY9vP,KACZ8vP,EAAYrjR,EAAIqjR,EAAYxjR,MAAQ,EACpCwjR,EAAY/kR,EAAI42C,EAChB,CACEmvN,MAAO,SACPhvN,SAAU,MACV8jE,SAAUkqK,EAAYxjR,MAAQq1C,EAAUA,IAAAA,KAIvC3hB,KACH8vP,EAAY9vP,KACZ8vP,EAAYrjR,EAAIk1C,EAChBmuO,EAAY/kR,EAAI42C,EAChB,CACEmvN,MAAO,OACPhvN,SAAU,MACV8jE,SAAUkqK,EAAYxjR,MAAQq1C,EAAUA,KAAAA,KAK3C4yG,SAASy6H,SAASI,SAAWU,EAC3B5mR,IAAAA,EAwBTsxQ,EAAS0V,MAAQ,SAASzjR,EAAG1B,EAAGoG,EAAMw4G,EAASvxD,GAAAA,GAC7C22N,EAAY5mR,KAAKe,OACZiI,EAAAA,MACG,IAAIxD,MAAM,8BAQhBvG,EAGAmgH,EAEA13D,EA4DIsgO,EApEFC,EAAc,GAChBC,EAAe,GACfC,EAAe,GAEfC,EAAe,CAAC,EAChBjpJ,EAAe,CAAC,EAEhBkpJ,EAAkB,GAElBC,EAAqB,GAErBC,GAbFt4N,EAASA,GAAU,CAAC,GAaAs4N,WAAY,EAC9BV,GAAAA,IAAe53N,EAAO43N,aACtBn5P,EACEuhC,EAAOtoB,UAAO,IAAOsoB,EAAOtoB,IAAI,aACF,GAA1BsoB,EAAOtoB,IAAI,aACXsoB,EAAOvhC,UAAY,GACzBq4P,EACE92N,EAAO82N,SACPnnR,OAAOuB,OAAO,CAAEgD,MAAOpD,KAAK8vQ,gBAAkB6V,GAChDltO,EAAoC,iBAAnByW,EAAOzW,QAAuByW,EAAOzW,QAAU,EAChEgvO,EAAwBv4N,EAAOu4N,uBAAyB,UACxDC,EAAkBx4N,EAAOw4N,iBAAmB,UAE9CzB,EAAOhnR,KAAKe,MAAAA,KAEPqrJ,SAASy6H,SAASgB,aAAeA,EAAAA,KACjCz7H,SAASy6H,SAASE,QAAUA,EAAAA,KAC5B36H,SAASy6H,SAAS6B,gBAAkBh6P,EAAAA,KACpC09H,SAASy6H,SAASrtO,QAAUA,EAAAA,KAC5B4yG,SAASy6H,SAAS2B,sBAAwBA,EAAAA,KAC1Cp8H,SAASy6H,SAAS4B,gBAAkBA,EAAAA,KACpCtyB,YAAYznO,GAGb8yF,MAAAA,EAGF0mK,EADAD,EAAcroR,OAAO0uC,KAAKtlC,EAAK,IAE/Bm/Q,EAAeF,EAAYr5Q,KAAI,iBACtB,eAEJ,GAAIrP,MAAMC,QAAQgiH,IAAkC,YAAtB6jB,EAAAA,GAAAA,GAAO7jB,EAAQ,QAClDymK,EAAczmK,EAAQ5yG,KAAI,SAAS05G,GAAAA,OAC1BA,EAAOxuG,IAAAA,IAEhBouQ,EAAe1mK,EAAQ5yG,KAAI,SAAS05G,GAAAA,OAC3BA,EAAOqgK,QAAUrgK,EAAOxuG,MAAQ,MAEzCquQ,EAAe3mK,EAAQ5yG,KAAI,SAAS05G,GAAAA,OAC3BA,EAAOqgJ,OAAS,UAGpB1pQ,EAAI,EAAGA,EAAIuiH,EAAQriH,OAAQF,GAAK,EACnCkgI,EAAa3d,EAAQviH,GAAG6a,MAAQ0nG,EAAQviH,GAAGkF,OA7YpC,UAAiB,WA+YjB5E,MAAMC,QAAQgiH,IAAkC,iBAAfA,EAAQ,KAElD0mK,EADAD,EAAczmK,EAEd2mK,EAAeF,EAAYr5Q,KAAI,iBACtB,cAKT25Q,GACChpR,MAAMC,QAAQgiH,IAAkC,iBAAfA,EAAQ,OAGrCviH,EAAI,EAAGA,EAAIgpR,EAAY9oR,OAAQF,GAAK,EAAG,KAK1CmpR,EAJAJ,EAAaC,EAAYhpR,IAIE+J,EAAK4F,KAAI,SAASg6Q,GAAAA,OACpCA,EAAIZ,EAAAA,IAAAA,KAIR9Z,aAAQ,EAAW,QACxBma,EAAgB/oR,KACdyB,KAAKwmR,kBAAkBW,EAAajpR,GAAI,CACtCyvB,SAAU3tB,KAAKqrJ,SAASy6H,SAAS6B,gBACjCzyB,YAAal1P,KAAKqrJ,SAAS6pG,cAC1B1xP,GAEL66G,EAASgpK,EAAaJ,GAAAA,KAGjB9Z,aAAQ,EAAW,UACnBxmN,EAAI,EAAGA,EAAI03D,EAAOjgH,OAAQuoD,GAAK,EAClC2gO,EAAgB/oR,KACdyB,KAAKwmR,kBAAkBnoK,EAAO13D,GAAI,CAChCh5B,SAAU3tB,KAAKqrJ,SAASy6H,SAAS6B,gBACjCzyB,YAAal1P,KAAKqrJ,SAAS6pG,cAC1B1xP,GAKP46H,EAAa6oJ,GACXviR,KAAKC,IAAIhG,MAAM,KAAM2oR,GAAmB7uO,EAAUA,EAGpD6uO,EAAkB,MAMlBR,EAAc,KACZ5nK,EAAM,CAAC,EAAD,IACLhhH,EAAI,EAAGA,EAAIgpR,EAAY9oR,OAAQF,GAAK,EACvCghH,EAAIgoK,EAAYhpR,IAAM,CAAC,EACvBghH,EAAIgoK,EAAYhpR,IAAI44B,KAAOqwP,EAAajpR,GACxCghH,EAAIgoK,EAAYhpR,IAAI0pQ,MAAQwf,EAAalpR,GAAAA,IAGvC4pR,EAAYC,EAAoB9oR,KAAKe,KAAMk/G,EAAKkf,GAGpDmpJ,EAAqBL,EAAYr5Q,KAAI,SAAS/M,GAAAA,OACrC,IAAI07G,EACTj5G,EACA1B,EACAu8H,EAAat9H,GACbgnR,EACA5oK,EAAIp+G,GAAOg2B,UAAAA,EAEXooF,EAAIp+G,GAAO8mQ,MAAAA,IAAAA,KAKVogB,kBAAkBT,GAAAA,KAGlBR,eAAe,GAAG,OAKrBnf,EAAQnnJ,EAAQj4F,QAAO,SAASy/P,EAAIC,GAAAA,OACtCD,EAAGC,EAAGnvQ,MAAQmvQ,EAAGtgB,MACVqgB,CAAAA,GACN,CAAC,GAAD,IACE/pR,EAAI,EAAGA,EAAI+J,EAAK7J,OAAQF,GAAK,EAAG,CAC/B,aAAcgxD,GAAUA,EAAOi5N,oBAAoBv4N,UACrDV,EAAOi5N,SACL,CACEjpK,IAAKhhH,EACL+J,KAAMA,EAAK/J,IAEb8B,MAAAA,IAGAytB,EAAas6P,EAAoB9oR,KAAKe,KAAMiI,EAAK/J,GAAIkgI,GAAAA,IAEpDz3E,EAAI,EAAGA,EAAIugO,EAAY9oR,OAAQuoD,GAAK,EAAG,KACtCyhO,EAAWngR,EAAK/J,GAAGgpR,EAAYvgO,IAC/B,cAAeuI,GAAUA,EAAOm5N,qBAAqBz4N,UACvDV,EAAOm5N,UACL,CACEnpK,IAAKhhH,EACL6mF,IAAKp+B,EACL1+C,KAAMmgR,GAERpoR,MAGJijH,EAAKhkH,KACHe,KACA,IAAIw8G,EACFj5G,EACA1B,EACAu8H,EAAa8oJ,EAAYvgO,IACzBl5B,EACA26P,EACAlqR,EAAI,EACJ0pQ,EAAMsf,EAAYvgO,KAAAA,CAAAA,CAAAA,OAAAA,KAKrB0kG,SAASy6H,SAASwC,QAAU/kR,EAAAA,KAC5B8nJ,SAASy6H,SAASyC,QAAU1mR,EAC1B7B,IAAAA,EAAAA,IAaL+nR,EAAsB,SAA6B97M,EAAOmyD,GAAAA,IACxD3lF,EAAUz4C,KAAKqrJ,SAASy6H,SAASrtO,QACjC9qB,EAAW3tB,KAAKqrJ,SAASy6H,SAAS6B,gBAClCzyB,EAAcl1P,KAAKqrJ,SAAS6pG,YAAAA,OAEzBr2P,OAAO0uC,KAAK0+B,GAChBp+D,KAAI,SAAS7O,GAAAA,IACR8B,EAAQmrE,EAAMjtE,GAAAA,OACXgB,KAAK4oQ,gBACV9nQ,EAAM/C,eAAe,QAAU+C,EAAMg2B,KAAOh2B,EAC5Cs9H,EAAap/H,GAAOy5C,EAAUA,EAAAA,GAE/Bz4C,MACF6N,KAAI,SAAS/M,GAAAA,OAETd,KAAK6tQ,sBAAwB/sQ,EAAM1C,OAASuvB,EAAYunO,EACzDz8M,EACAA,CAAAA,GAEDz4C,MACFwoB,QAAO,SAASy/P,EAAIC,GAAAA,OACZxjR,KAAKC,IAAIsjR,EAAIC,EAAAA,GACnB,IAYP5W,EAAS0W,kBAAoB,SAAS94N,GACpC22N,EAAY5mR,KAAKe,MAAAA,KACZqrJ,SAASy6H,SAASe,eAAiB33N,CAAAA,EAW1CoiN,EAASyV,eAAiB,SAAST,EAAYkC,GAAAA,GAC7C3C,EAAY5mR,KAAKe,OACZA,KAAKqrJ,SAASy6H,SAASe,eAAgB,MACpC,IAAIpiR,MAAM,+CAGdgkR,EAAAA,GAEJ7C,GAAAA,EACqD,mBAA1C5lR,KAAKqrJ,SAASy6H,SAASC,eAA+B,KAC3D77P,EAAWlqB,KAAKqrJ,SAASy6H,SAASC,eACpC/lR,KACAA,KAAKqrJ,SAASy6H,SAASjuB,OAAAA,KAEpBxsG,SAASy6H,SAASI,SAAW,IAAI1pK,EACpCtyF,EAAS,GACTA,EAAS,GACTA,EAAS,GACTA,EAAS,WAER,QAGAijP,aAAQ,EAAW,gBAEpBub,EAAiB,GACZxqR,EAAI,EAAGA,EAAI8B,KAAKqrJ,SAASy6H,SAASe,eAAezoR,OAAQF,GAAK,EAAG,CACxEuqR,EAAkBzoR,KAAKqrJ,SAASy6H,SAASe,eAAe3oR,GAAGmoC,QACvDmiP,IACFC,EAAgB5mR,EAAI7B,KAAKqrJ,SAASy6H,SAASE,QAAQ7iR,KAAO,EAC1DulR,EAAenqR,KAAKkqR,IAEtBA,EAAgBnC,WAAaA,EAAAA,IACzBqC,EAAmB3oR,KAAKuuQ,eAAAA,KACvBC,aAAaxuQ,KAAKqrJ,SAASy6H,SAAS4B,iBAAAA,KACpCpZ,aAAatuQ,KAAKqrJ,SAASy6H,SAAS2B,uBACzCxkK,EAAKhkH,KAAKe,KAAMyoR,GAAAA,KACXja,aAAama,EAAAA,CAEhBD,EAAetqR,OAAS,QACrB4pR,kBAAkBU,GAAAA,KAEpBvb,aAAQ,EAAW,UACxByY,GAAAA,CAAoB,EA7nBxB,CA+nBG/zB,GAAMY,KN5pBT,IAAIm2B,GAAiB,CACnBC,OAAQ,CAAC,SAAU,UAAW,UAC9BC,QAAS,CAAC,UAAW,SAAU,UAC/B3jB,OAAQ,CAAC,SAAU,UAAW,WAG5B4jB,GAAmB,CACrB,kBACA,kBACA,YACA,iBACA,SACA,gBACA,WACA,iBACA,kBAKEC,GAAoB1N,GAASyN,IAE7BE,GAAc,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACvDC,GAAoB5N,GAAS2N,IAsC1B,SAASE,GAAkBC,GAAAA,IAC5BC,EAASD,EAASC,OAAOztP,QAAQ,OAAQ,IAAI/kB,cAE7CyV,EAjCN,SAA4BA,GAAAA,OAGnBs8P,GAFPt8P,EAAQA,GAAS,UAEcA,EAAQ,SAHzC,CAiCiC88P,EAAS98P,OACpCg9P,EA5BN,SAA6BA,GAAAA,OACtBA,EAIiB,iBAAXA,EAEFA,GAAU,KAAOA,GAAU,KAAOA,EAAS,KAAQ,EAAIA,EAAS,IAGrE,SAASpkP,KAAKokP,GACTr2Q,SAASq2Q,GAIX,SADCA,EAEG,IAIA,IAlBF,GAkBE,CApBb,CA4BmCF,EAASE,QACtCC,EAzCN,SAA8BA,GAAAA,MAGiB,iBAA/BP,GAFdO,EAAUA,GAAW,UAEmCA,EAAU,SAHpE,CAyCqCH,EAASG,SAAAA,MAErC,CACLF,OAAQA,EACR/8P,MAAOA,EACPg9P,OAAQA,EACRC,QAASA,EACT1xP,IAAKuxP,EAASvxP,KAAO,GAIrB+tE,IAAKwjL,EAASxjL,KAAO,CACnB7sF,KAAMswQ,EACN/8P,MAAO,CAACi9P,EAASj9P,EAAOg9P,GAAQpqR,KAAK,OA0C3C,SAASsqR,GAAgBC,EAAar5P,EAAOs5P,EAAOx2M,GAAAA,IAC9Ch1E,EAAAA,IAECA,EAAIwrR,EAAOxrR,GAAK,GAAKA,EAAIkyB,EAAMhyB,OAAQF,GAAKg1E,EAAAA,GAC3Cu2M,EAAYr5P,EAAMlyB,IAAK,OAClBurR,EAAYr5P,EAAMlyB,IAAAA,IAIxBA,EAAIwrR,EAAOxrR,GAAK,GAAKA,EAAIkyB,EAAMhyB,OAAQF,GAAKg1E,EAAAA,GAC3Cu2M,EAAYr5P,EAAMlyB,IAAK,OAClBurR,EAAYr5P,EAAMlyB,GAAAA,CA6E/B,IAAIyrR,GAA6B,cACjB,YACdC,MAAO,UACPC,UAAW,UACXC,SAAU,UACVC,QAAS,QACTC,QAAS,QACTC,MAAO,SAGLC,GAAc,CAChB/Q,QAAS,QACThhH,KAAM,QACNgyH,KAAM,sBACS,wBACE,qBACH,SAGhB,SAASC,GAAavjP,GAAAA,MACb,CAACA,EAAK0iP,QAAS1iP,EAAKva,MAAOua,EAAKyiP,OAAQziP,EAAKwiP,QAAQnqR,KAAK,KAoEnE,SAASmrR,GAAc/sP,GAAAA,OACdA,EAAMgtP,UAAAA,CAGf,SAASC,GAAsBjtP,EAAOpL,GAAAA,IAAAA,IAChCxsB,EAAQ,EAELA,EAAQ43B,EAAMl/B,QAAQ,IACbk/B,EAAMyjC,OAAOr7D,KAEXwsB,EAAAA,MACP,CAACoL,EAAMliB,UAAU,EAAG1V,GAAQ43B,EAAMliB,UAAU1V,EAAQ,IAG7DA,GAAS,SAIJ,KAGT,SAAS8kR,GAAyBltP,GAAAA,IAS5Boe,EAAQpe,EAAMoe,MAAM,wCAGV,OAAVA,EACK,KAGF,CAACA,EAAM,GAAIpe,EAAMliB,UAAUsgC,EAAM,GAAGt9C,QAAAA,CAG7C,IOrTMqsR,GAAYC,GAAS5zP,GCrBjBw6O,GR0UNqZ,GAAc,CAAC,US/TnB,SAAUrZ,GAAAA,IAsCJtb,EACF8X,EACAC,EACA9D,EACAC,EACA/N,EACAI,EACAtH,EACA21B,EA5CEC,EAAe,SAASlzP,GAAAA,OAC1BA,EAAMA,GAAO,CAAC,EAAD,KACRmzP,oBAAsBnzP,EAAImzP,sBAAuB,OACjDxmM,cAAgB3sD,EAAI2sD,eAAiB,OACrCtpC,YAAcrjB,EAAIqjB,aAAe,eACjC9iB,UAAYP,EAAIO,WAAa,eAC7B6yP,kBAAoBpzP,EAAIozP,oBAAqB,OAC7C/mM,YAAcrsD,EAAIqsD,aAAe,OACjCzpC,KAAO5iB,EAAI4iB,MAAQ,uBACnBnB,aAAezhB,EAAIyhB,cAAgB,kBACnCzqB,UAAYgJ,EAAIhJ,WAAa,YAC7BssB,UAAYtjB,EAAIsjB,WAAa,OAC7BC,SAAWvjB,EAAIujB,UAAY,aAC3BkF,QAAUzoB,EAAIyoB,SAAW,YACzB5Q,KAAO7X,EAAI6X,MAAQ,QACnBtgB,eAAAA,IACIyI,EAAIzI,UACPyI,EAAIzI,UAAUmX,QACd,IAAI4uN,EAAAA,KACL+1B,yBAA2BrzP,EAAIqzP,0BAA4B,cAC3DtxO,YAAc/hB,EAAI+hB,aAAe,OACjCuxO,UAAYtzP,EAAIszP,WAAa,QAC7BC,aAAevzP,EAAIuzP,cAAgB,IAAI/uB,EAAAA,KACvCgvB,WAAaxzP,EAAIwzP,YAAc,QAC/BtvF,UAAYlkK,EAAIkkK,WAAa,IAAIsgE,EAAAA,KACjCivB,eAAiBzzP,EAAIyzP,gBAAkB,OACvCC,SAAW1zP,EAAI0zP,UAAY,QAC3B7yO,OAAS7gB,EAAI6gB,QAAU,CAAC,EAAG,EAAG,EAAG,QACjC8yO,uBAAyB3zP,EAAI2zP,wBAA0B,OAEvDC,gBAC4B,kBAAxB5zP,EAAI4zP,iBAAgC5zP,EAAI4zP,gBAC1CvrR,IAAAA,EAaTsxQ,EAASzzI,OAAOt/H,KAAK,CACnB,cACA,gBACOknR,UAAY,IAAI+F,EAAUxrR,MAE/Bg2P,EAAKh2P,KAAKqrJ,SAAS2qG,GACnB8X,EAAgC9tQ,KAAKqrJ,SAASulH,oBAC9C7C,EAA8B/tQ,KAAKqrJ,SAAS0iH,4BAC5C9D,EAA0BjqQ,KAAKqrJ,SAAS4+G,wBACxCC,EAAwBlqQ,KAAKqrJ,SAAS6+G,sBACtC/N,EAAQn8P,KAAKqrJ,SAAS8wG,MACtBI,EAAYv8P,KAAKqrJ,SAASkxG,UAC1BtH,EAASj1P,KAAKqrJ,SAAS4pG,OACvB21B,EAAO,IAAIC,CAAAA,IAAAA,IAIXW,EAAY,SAAShG,GACvB3mR,OAAOw6B,eAAer5B,KAAM,SAAU,CACpCuM,IAAK,iBACI,CAAE2uB,YAAY,EAAO5O,OAAO,UAInCm/P,EAAOjG,EACX3mR,OAAOw6B,eAAer5B,KAAM,MAAO,CACjCuM,IAAK,kBACIk/Q,CAAAA,IAAAA,IAIPC,GAAAA,EAMJ7sR,OAAOw6B,eAAer5B,KAAM,mBAAoB,CAC9CuM,IAAK,kBACIm/Q,CAAAA,EAET77N,IAAK,SAAS/uD,GACZ4qR,EAAoBjiK,QAAQ3oH,EAAAA,IAAAA,IAI5B6qR,GAAAA,EAMJ9sR,OAAOw6B,eAAer5B,KAAM,mBAAoB,CAC9CuM,IAAK,kBACIo/Q,CAAAA,EAET97N,IAAK,SAAS/uD,GACZ6qR,EAAoBliK,QAAQ3oH,EAAAA,IAAAA,IAI5B8qR,EAAQ,EAMZ/sR,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClCuM,IAAK,kBACIq/Q,CAAAA,EAET/7N,IAAK,SAAS/uD,GACPmtD,MAAMntD,KACT8qR,EAAQ9qR,EAAAA,IAAAA,IAKV+qR,EAAQ,EAMZhtR,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClCuM,IAAK,kBACIs/Q,CAAAA,EAETh8N,IAAK,SAAS/uD,GACPmtD,MAAMntD,KACT+qR,EAAQ/qR,EAAAA,IAWdjC,OAAOw6B,eAAer5B,KAAM,SAAU,CACpCuM,IAAK,kBACIq+Q,EAAKpyO,MAAAA,EAEdqX,IAAK,SAAS/uD,GAAAA,IACR03C,EACiB,iBAAV13C,EACT03C,EAAS,CAAC13C,EAAOA,EAAOA,EAAOA,KAE/B03C,EAAS,IAAIh6C,MAAM,IACZ,GAAKsC,EAAM,GAClB03C,EAAO,GAAK13C,EAAM1C,QAAU,EAAI0C,EAAM,GAAK03C,EAAO,GAClDA,EAAO,GAAK13C,EAAM1C,QAAU,EAAI0C,EAAM,GAAK03C,EAAO,GAClDA,EAAO,GAAK13C,EAAM1C,QAAU,EAAI0C,EAAM,GAAK03C,EAAO,IAEpDoyO,EAAKpyO,OAASA,CAAAA,IAAAA,IAIdszO,GAAAA,EAwBJjtR,OAAOw6B,eAAer5B,KAAM,aAAc,CACxCuM,IAAK,kBACIu/Q,CAAAA,EAETj8N,IAAK,SAAS/uD,GACZgrR,EAAchrR,CAAAA,IAAAA,IAIdirR,EAAY,EAMhBltR,OAAOw6B,eAAer5B,KAAM,YAAa,CACvCuM,IAAK,kBACIw/Q,CAAAA,EAETl8N,IAAK,SAAS/uD,GACZirR,EAAYjrR,CAAAA,IAAAA,IAIZkrR,EAAa,GAOjBntR,OAAOw6B,eAAer5B,KAAM,aAAc,CACxCuM,IAAK,kBACIy/Q,CAAAA,EAETn8N,IAAK,SAAS/uD,GACZkrR,EAAalrR,CAAAA,IASjBjC,OAAOw6B,eAAer5B,KAAM,MAAO,CACjCuM,IAAK,kBACIq+Q,CAAAA,EAET/6N,IAAK,SAAS/uD,GACRA,aAAiB+pR,IACnBD,EAAO9pR,EAAAA,IAUbjC,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClCuM,IAAK,kBACIq+Q,EAAKp7O,IAAAA,EAEdqgB,IAAK,SAAS/uD,GACZ8pR,EAAKp7O,KAAO1uC,CAAAA,IAAAA,IASZmrR,EAAY,GAChBptR,OAAOw6B,eAAer5B,KAAM,WAAY,CACtCuM,IAAK,kBACI0/Q,CAAAA,EAETp8N,IAAK,SAAS/uD,GACZmrR,EAAYnrR,CAAAA,IAahBjC,OAAOw6B,eAAer5B,KAAM,YAAa,CACvCuM,IAAK,kBACIvM,KAAK23B,IAAIO,SAAAA,EAElB23B,IAAK,SAAS/uD,GAAAA,IACR4b,EACJA,EAAOwvQ,EAAQprR,GAAAA,KAEV62B,IAAIO,UAAYxb,EAAK4P,MAAAA,KACrBqL,IAAIozP,kBAA+B,IAAXruQ,EAAK/P,EAAAA,KAC7BgrB,IAAIqsD,YAActnE,EAAK/P,EAAAA,KAEvB64Q,IAAIlX,aAAa5xP,EAAKvB,EAAGuB,EAAK5a,EAAG4a,EAAKld,EAAG,CAAEmN,EAAG+P,EAAK/P,IAAAA,KACnD64Q,IAAIhX,aAAa9xP,EAAKvB,EAAGuB,EAAK5a,EAAG4a,EAAKld,EAAG,CAAEmN,EAAG+P,EAAK/P,GAAAA,IAa5D9N,OAAOw6B,eAAer5B,KAAM,cAAe,CACzCuM,IAAK,kBACIvM,KAAK23B,IAAIqjB,WAAAA,EAElB6U,IAAK,SAAS/uD,GAAAA,IACR4b,EAAOwvQ,EAAQprR,GAAAA,KAEd62B,IAAIqjB,YAAct+B,EAAK4P,MAAAA,KACvBqL,IAAImzP,oBAAiC,IAAXpuQ,EAAK/P,EAAAA,KAC/BgrB,IAAI2sD,cAAgB5nE,EAAK/P,EAEf,IAAX+P,EAAK/P,EAAAA,KACF64Q,IAAIrX,aAAa,IAAK,IAAK,MACvBzxP,EAAK/P,EAAAA,KACT64Q,IAAIrX,aAAazxP,EAAKvB,EAAGuB,EAAK5a,EAAG4a,EAAKld,GAAAA,IAgBjDX,OAAOw6B,eAAer5B,KAAM,UAAW,CACrCuM,IAAK,kBACIvM,KAAK23B,IAAIyoB,OAAAA,EAElByP,IAAK,SAAS/uD,IACwC,IAAhD,CAAC,OAAQ,QAAS,UAAU0L,QAAQ1L,KAAAA,KACjC62B,IAAIyoB,QAAUt/C,EAAAA,KACd0kR,IAAItW,WAAWpuQ,GAAAA,IAY1BjC,OAAOw6B,eAAer5B,KAAM,YAAa,CACvCuM,IAAK,kBACIvM,KAAK23B,IAAIsjB,SAAAA,EAElB4U,IAAK,SAAS/uD,GACPmtD,MAAMntD,KAAAA,KACJ62B,IAAIsjB,UAAYn6C,EAAAA,KAChB0kR,IAAIhhB,aAAa1jQ,GAAAA,IAQ5BjC,OAAOw6B,eAAer5B,KAAM,WAAY,CACtCuM,IAAK,kBACIvM,KAAK23B,IAAIujB,QAAAA,EAElB2U,IAAK,SAAS/uD,IACwC,IAAhD,CAAC,QAAS,QAAS,SAAS0L,QAAQ1L,KAAAA,KACjC62B,IAAIujB,SAAWp6C,EAAAA,KACf0kR,IAAIrW,YAAYruQ,GAAAA,IAW3BjC,OAAOw6B,eAAer5B,KAAM,aAAc,CACxCuM,IAAK,kBACIvM,KAAK23B,IAAIwzP,UAAAA,EAElBt7N,IAAK,SAAS/uD,GACPmtD,MAAMntD,KAAAA,KACJ62B,IAAIwzP,WAAarqR,EAAAA,KACjB0kR,IAAInW,cAAcvuQ,GAAAA,IAK7BjC,OAAOw6B,eAAer5B,KAAM,eAAgB,CAC1CuM,IAAK,kBACIvM,KAAK23B,IAAIyhB,YAAAA,EAElByW,IAAK,SAAS/uD,GAAAA,KACP62B,IAAIyhB,aAAet4C,CAAAA,IAI5BjC,OAAOw6B,eAAer5B,KAAM,YAAa,CACvCuM,IAAK,kBACIvM,KAAK23B,IAAIhJ,SAAAA,EAElBkhC,IAAK,SAAS/uD,IACwD,IAAhE,CAAC,QAAS,MAAO,SAAU,OAAQ,SAAS0L,QAAQ1L,KAAAA,KACjD62B,IAAIhJ,UAAY7tB,EAAAA,IAAAA,IAKvBqrR,EAAe,cAEVC,EAAe5G,EAAK6G,GAAAA,GACN,OAAjBF,EAAuB,KAGrBG,EAAAA,SAQoBC,GAAAA,IACtBF,EAAY,UAEhBxtR,OAAO0uC,KAAKg/O,GAASlgR,SAAQ,SAASg9Q,GACvBkD,EAAQlD,GAEdh9Q,SAAQ,SAASigB,GAAAA,IAClB88P,EAAW,YAEP98P,GAAAA,IACD,OACH88P,EAAW,CACTC,OAAQA,EACRC,OAAQ,kBAIP,SACHF,EAAW,CACTC,OAAQA,EACR/8P,MAAO,oBAIN,aACH88P,EAAW,CACTC,OAAQA,EACRC,OAAQ,OACRh9P,MAAO,oBAIN,OACA,SACH88P,EAAW,CACTC,OAAQA,GAOG,OAAbD,IACFA,EAASxjL,IAAM,CACb7sF,KAAMswQ,EACN/8P,MAAOA,GAGT+/P,EAAU9tR,KAAK6qR,GAAAA,GAAAA,IAKdiD,CAAAA,CA7DDC,CAFU9G,EAAInY,eAIlB8e,ET1WD,SAA0BE,GAAAA,IAAAA,IAC3Bx+Q,EAAM,CAAC,EAEF3P,EAAI,EAAGA,EAAImuR,EAAUjuR,SAAUF,EAAG,KACrC8pD,EAAamhO,GAAkBkD,EAAUnuR,IAEzC6a,EAAOivC,EAAWqhO,OAClBE,EAAUvhO,EAAWuhO,QACrBj9P,EAAQ07B,EAAW17B,MACnBg9P,EAASthO,EAAWshO,OAExBz7Q,EAAIkL,GAAQlL,EAAIkL,IAAS,CAAC,EAE1BlL,EAAIkL,GAAMwwQ,GAAW17Q,EAAIkL,GAAMwwQ,IAAY,CAAC,EAC5C17Q,EAAIkL,GAAMwwQ,GAASj9P,GAASze,EAAIkL,GAAMwwQ,GAASj9P,IAAU,CAAC,EAC1Dze,EAAIkL,GAAMwwQ,GAASj9P,GAAOg9P,GAAUthO,CAAAA,CAAAA,OAG/Bn6C,CAAAA,CAlBF,CS0WiCy+Q,EAAmBrpR,OAAOopR,GAAAA,CAAAA,OAGrDF,CAAAA,CAAAA,IA2DLK,EAAa,KAQjB3tR,OAAOw6B,eAAer5B,KAAM,YAAa,CACvCuM,IAAK,kBACIigR,CAAAA,EAET38N,IAAK,SAAS/uD,GACZqrR,EAAe,KACfK,EAAa1rR,CAAAA,IAIjBjC,OAAOw6B,eAAer5B,KAAM,OAAQ,CAClCuM,IAAK,kBACIvM,KAAK23B,IAAI4iB,IAAAA,EAElBsV,IAAK,SAAS/uD,GAAAA,IAEJirE,EAAAA,GAAAA,KADHp0C,IAAI4iB,KAAOz5C,EAOA,QADhBirE,EADK,oVACQjH,KAAKhkE,IAAAA,CAAAA,IAEZiwB,EAAYg7C,EAAQ,GAEpBl7C,GADck7C,EAAQ,GACTA,EAAQ,IACrBp+C,EAAWo+C,EAAQ,GAEnBr7C,GADaq7C,EAAQ,GACRA,EAAQ,IAKvB0gN,EADa,yCACa3nN,KAAKn3C,GAAU,GAG3CA,EADE,OAAS8+P,EACA/nR,KAAKi+B,MACd0nC,WAAW18C,GAAY3tB,KAAKwlR,IAAIn6H,SAAS6pG,aAElC,OAASu3B,EACP/nR,KAAKi+B,MAAM0nC,WAAW18C,GAAY3tB,KAAKwlR,IAAInwB,eAE3C3wP,KAAKi+B,MACd0nC,WAAW18C,GAAY3tB,KAAKwlR,IAAIn6H,SAAS6pG,aAAAA,KAIxCswB,IAAIpwB,YAAYznO,GAAAA,IACjBy2B,ETtOL,SAAyB9mB,GAAAA,IAE1B6lE,EAAIsjF,EADJllL,EAAS,GAETmrR,EAAYpvP,EAAMnD,OAAAA,GAEJ,KAAduyP,EAAAA,OACK/B,GAAAA,GAGL+B,KAAaxC,GAAAA,MACR,CAACA,GAAYwC,IAAAA,KAGD,KAAdA,GAAkB,QACvBjmG,EAAS,KAETtjF,GADAupL,EAAYrC,GAAcqC,IACX3rN,OAAO,QAGf,QACA,IACH0lH,EAAS8jG,GAAsBmC,EAAUtxQ,UAAU,GAAI+nF,GAAAA,MAAAA,QAIvDsjF,EAAS+jG,GAAyBkC,GAAAA,GAIvB,OAAXjmG,EAAAA,OACKkkG,GAAAA,GAGTppR,EAAOhD,KAAKkoL,EAAO,IAKD,MAHlBimG,EAAYrC,GAAc5jG,EAAO,MAGe,MAAxBimG,EAAU3rN,OAAO,UAChC4pN,GAGT+B,EAAYA,EAAU9wP,QAAQ,KAAM,WAG/Br6B,CAAAA,CA7CF,CSsO6BmvB,GAAAA,GAExB1wB,KAAKqsR,UAAW,CAAXA,IAYH9xO,ET/VP,SAAyBoyO,EAAaC,EAAOlrO,GAAAA,IAAAA,IAG9CmrO,GAFJnrO,EAAOA,GAAQ,CAAC,GAEamrO,mBAAqB,QAC9CC,EAAsBjuR,OAAOuB,OAC/B,CAAC,EACDupR,GACAjoO,EAAKorO,qBAAuB,CAAC,GAG3BjmP,EAAO,KACPklC,EAAU,KAEL7tE,EAAI,EAAGA,EAAI0uR,EAAMxuR,SAAUF,EAAAA,GAG9B4uR,GAFJjmP,EAAOsiP,GAAkByD,EAAM1uR,KAEFmrR,UAC3BxiP,EAAKwiP,OAASyD,EAAoBjmP,EAAKwiP,SAGrCsD,EAAY5uR,eAAe8oC,EAAKwiP,QAAS,CAC3Ct9M,EAAU4gN,EAAY9lP,EAAKwiP,QAAAA,KAAAA,CAAAA,KAO/Bt9M,EAAUA,GAAW4gN,EAAYE,IAAAA,MAKzB,IAAIpoR,MACR,8CACE2lR,GAAavjP,GACb,yBACAgmP,EACA,SAIN9gN,EAzIF,SAA4Bw9M,EAASE,GAAAA,GAC/BA,EAAYF,GAAAA,OACPE,EAAYF,GAAAA,IAGjBG,EAAQV,GAAkBO,GAI1Br2M,EAAMw2M,GAASV,GAAiB7jB,QAAc,EAAI,EAClDzpN,EAAQ8tO,GAAgBC,EAAaV,GAAkBW,EAAOx2M,GAAAA,IAE7Dx3B,EAAAA,MAGG,IAAIj3C,MACR,oDAAsD8kR,GAAAA,OAInD7tO,CAAAA,CApBT,CAyI+B7U,EAAK0iP,QAASx9M,GAC3CA,EAnHF,SAA0Bh7C,EAAW04P,GAAAA,GAC/BA,EAAY14P,GAAAA,OACP04P,EAAY14P,GAAAA,IAAAA,IAGjBk5C,EAAW2+M,GAAe73P,GAErB7yB,EAAI,EAAGA,EAAI+rE,EAAS7rE,SAAUF,EAAAA,GACjCurR,EAAYx/M,EAAS/rE,IAAAA,OAChBurR,EAAYx/M,EAAS/rE,IAAAA,MAM1B,IAAIuG,MAAM,4CAA8CssB,EAAAA,CAfhE,CAmH6B8V,EAAKva,MAAOy/C,KACvCA,EAlGF,SAA2Bu9M,EAAQG,GAAAA,GAC7BA,EAAYH,GAAAA,OACPG,EAAYH,GAAAA,GAGN,MAAXA,GAAkBG,EAAY,KAAM,OAC/BA,EAAY,QAGN,MAAXH,GAAkBG,EAAY,KAAM,OAC/BA,EAAY,SAGjBC,EAAQR,GAAkBI,GAK1B5tO,EAAQ8tO,GAAgBC,EAAaR,GAAaS,EAD5CJ,EAAS,KAAO,EAAI,OAGzB5tO,EAAAA,MAGG,IAAIj3C,MACR,mDAAqD6kR,GAAAA,OAIlD5tO,CAAAA,CA5BT,CAkG8B7U,EAAKyiP,OAAQv9M,IAAAA,MAIjC,IAAItnE,MACR,0CAA4C2lR,GAAavjP,GAAQ,aAI9DklC,CAAAA,CS0SYghN,CAXOX,EAAepsR,KAAKwlR,IAAKxlR,KAAKqsR,WAEpCjoO,EAAMv2C,KAAI,SAASmsF,GAAAA,MACtB,CACLqvL,OAAQrvL,EACRuvL,QAAS,SACTD,OAAQz4P,EACRvE,MAAOyE,EAAAA,KAAAA,KAKNy0P,IAAIrY,QAAQ5yN,EAAKqrD,IAAI7sF,KAAMwhC,EAAKqrD,IAAIt5E,MAAAA,KAAAA,CAAAA,IAIvCA,EAAQ,IAEK,SAAfuE,GACA5d,SAAS4d,EAAY,KAAO,KACd,SAAdE,KAEAzE,EAAQ,QAGQ,WAAdyE,IACFzE,GAAS,UAGU,IAAjBA,EAAMluB,SACRkuB,EAAQ,kBAEN0gQ,EAAgB,GAEhBC,EAAgB,CAClBC,MAAO,YACPC,MAAO,YACPC,QAAS,YACTC,QAAS,YACTC,UAAW,YACXC,UAAW,yBACG,YACd3D,MAAO,UACPC,UAAW,UACXC,SAAU,UACVC,QAAS,QACTC,QAAS,QACTC,MAAO,SAGA/rR,EAAI,EAAGA,EAAIkmD,EAAMhmD,OAAQF,IAAK,aAEnC8B,KAAKwlR,IAAIn6H,SAAS05G,QAAQ3gN,EAAMlmD,GAAIouB,EAAO,CACzC44O,YAAY,EACZD,gBAAgB,IAElB,CACA+nB,EAAgB5oO,EAAMlmD,GAAAA,KAAAA,CAEjB,GACK,eAAVouB,QAAAA,IACAtsB,KAAKwlR,IAAIn6H,SAAS05G,QAAQ3gN,EAAMlmD,GAAI,OAAQ,CAC1CgnQ,YAAY,EACZD,gBAAgB,IAGlB+nB,EAAgB5oO,EAAMlmD,GACtBouB,EAAQ,YACH,QAAI,IACTtsB,KAAKwlR,IAAIn6H,SAAS05G,QAAQ3gN,EAAMlmD,GAAI,SAAU,CAC5CgnQ,YAAY,EACZD,gBAAgB,IAElB,CACA+nB,EAAgB5oO,EAAMlmD,GACtBouB,EAAQ,mBAIU,KAAlB0gQ,EAAAA,IACG,IAAIrmO,EAAI,EAAGA,EAAIvC,EAAMhmD,OAAQuoD,IAAAA,GAC5BsmO,EAAc7oO,EAAMuC,IAAK,CAC3BqmO,EAAgBC,EAAc7oO,EAAMuC,IAAAA,KAAAA,CAK1CqmO,EAAkC,KAAlBA,EAAuB,QAAUA,EAAAA,KAC5CxH,IAAIrY,QAAQ6f,EAAe1gQ,EAAAA,CAAAA,CAAAA,IAIpCztB,OAAOw6B,eAAer5B,KAAM,2BAA4B,CACtDuM,IAAK,kBACIvM,KAAK23B,IAAIqzP,wBAAAA,EAElBn7N,IAAK,SAAS/uD,GAAAA,KACP62B,IAAIqzP,yBAA2BlqR,CAAAA,IAIxCjC,OAAOw6B,eAAer5B,KAAM,cAAe,CACzCuM,IAAK,kBACIvM,KAAK23B,IAAI+hB,WAAAA,EAElBmW,IAAK,SAAS/uD,GAAAA,KACP62B,IAAI+hB,YAAc54C,CAAAA,IAU3BjC,OAAOw6B,eAAer5B,KAAM,iBAAkB,CAC5CuM,IAAK,kBACIvM,KAAK23B,IAAIyzP,cAAAA,EAElBv7N,IAAK,SAAS/uD,GAAAA,KACP62B,IAAIyzP,eAAiBtqR,EAC1Bq/C,EAAYlhD,KAAKe,KAAAA,IAKrBnB,OAAOw6B,eAAer5B,KAAM,WAAY,CACtCuM,IAAK,kBACIvM,KAAK23B,IAAI0zP,QAAAA,EAElBx7N,IAAK,SAAS/uD,GAAAA,KACP62B,IAAI0zP,SAAWvqR,EACpBq/C,EAAYlhD,KAAKe,KAAAA,IAKrBnB,OAAOw6B,eAAer5B,KAAM,kBAAmB,CAC7CuM,IAAK,kBACIvM,KAAK23B,IAAI4zP,eAAAA,EAElB17N,IAAK,SAAS/uD,GAAAA,KACP62B,IAAI4zP,gBAAkB9hK,QAAQ3oH,EAAAA,GAAAA,EAWzC0qR,EAAU1sR,UAAUqhD,YAAc,SAASstN,GAAAA,KACpC4d,SAAW5d,CAAAA,EASlB+d,EAAU1sR,UAAU0uR,YAAc,kBAC5BxtR,KAAKqrR,SAASjtR,OAAS,EAElB4B,KAAKqrR,SAASpoR,OAAOjD,KAAKqrR,UAG1BrrR,KAAKqrR,SAASroR,OAAAA,EAIzBwoR,EAAU1sR,UAAU+8C,KAAO,WACzB4xO,EAAexuR,KAAKe,KAAM,QAAQ,IAUpCwrR,EAAU1sR,UAAUuhD,OAAS,WAC3BotO,EAAexuR,KAAKe,KAAM,UAAU,IAUtCwrR,EAAU1sR,UAAUg9C,UAAY,gBACzBtM,KAAO,CACV,CACExiC,KAAM,WAaZw+Q,EAAU1sR,UAAUk+C,OAAS,SAASz5C,EAAG1B,GAAAA,GACnCosD,MAAM1qD,IAAM0qD,MAAMpsD,GAAAA,MACpBo/C,GAAQja,MAAM,4CAA6C7oC,WACrD,IAAIsG,MAAM,0DAGdy3P,EAAKl8P,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAM54P,EAAG1B,IAAAA,KAEjD2tC,KAAKjxC,KAAK,CACbyO,KAAM,KACNzJ,EAAG24P,EAAG34P,EACN1B,EAAGq6P,EAAGr6P,IAAAA,KAEH81B,IAAIkkK,UAAY,IAAIsgE,EAAM54P,EAAG1B,EAAAA,EAUpC2pR,EAAU1sR,UAAUq+C,UAAY,eAC1BuwO,EAAY,IAAIvxB,EAAM,EAAG,GACzBj+P,EAAI,MACHA,EAAI8B,KAAKwvC,KAAKpxC,OAAS,GAAU,IAAPF,EAAUA,IAAAA,GACb,UAAtB8B,KAAKwvC,KAAKtxC,GAAG8O,MAEe,YAA5Bs3H,EAAAA,GAAAA,GAAOtkI,KAAKwvC,KAAKtxC,EAAI,KACS,iBAAvB8B,KAAKwvC,KAAKtxC,EAAI,GAAGqF,EACxB,CACAmqR,EAAY,IAAIvxB,EAAMn8P,KAAKwvC,KAAKtxC,EAAI,GAAGqF,EAAGvD,KAAKwvC,KAAKtxC,EAAI,GAAG2D,GAAAA,KAAAA,CAAAA,KAK5D2tC,KAAKjxC,KAAK,CACbyO,KAAM,eAEH2qB,IAAIkkK,UAAY,IAAIsgE,EAAMuxB,EAAUnqR,EAAGmqR,EAAU7rR,EAAAA,EAYxD2pR,EAAU1sR,UAAUm+C,OAAS,SAAS15C,EAAG1B,GAAAA,GACnCosD,MAAM1qD,IAAM0qD,MAAMpsD,GAAAA,MACpBo/C,GAAQja,MAAM,4CAA6C7oC,WACrD,IAAIsG,MAAM,0DAGdy3P,EAAKl8P,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAM54P,EAAG1B,IAAAA,KAEjD2tC,KAAKjxC,KAAK,CACbyO,KAAM,KACNzJ,EAAG24P,EAAG34P,EACN1B,EAAGq6P,EAAGr6P,IAAAA,KAEH81B,IAAIkkK,UAAY,IAAIsgE,EAAMD,EAAG34P,EAAG24P,EAAGr6P,EAAAA,EAU1C2pR,EAAU1sR,UAAU66C,KAAO,gBACpBhiB,IAAIszP,UAAYhyK,KAAKz+F,MAAMy+F,KAAKC,UAAUl5G,KAAKwvC,OACpDi+O,EAAexuR,KAAKe,KAAM,MAAM,IAclCwrR,EAAU1sR,UAAU6uR,iBAAmB,SAASC,EAAKC,EAAKtqR,EAAG1B,GAAAA,GACvDosD,MAAM1qD,IAAM0qD,MAAMpsD,IAAMosD,MAAM2/N,IAAQ3/N,MAAM4/N,GAAAA,MAC9C5sO,GAAQja,MACN,sDACA7oC,WAEI,IAAIsG,MACR,oEAIAqpR,EAAM9tR,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAM54P,EAAG1B,IACnDw6P,EAAMr8P,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAMyxB,EAAKC,IAAAA,KAEpDr+O,KAAKjxC,KAAK,CACbyO,KAAM,MACN2wC,GAAI0+M,EAAI94P,EACRs6C,GAAIw+M,EAAIx6P,EACR0B,EAAGuqR,EAAIvqR,EACP1B,EAAGisR,EAAIjsR,IAAAA,KAEJ81B,IAAIkkK,UAAY,IAAIsgE,EAAM2xB,EAAIvqR,EAAGuqR,EAAIjsR,EAAAA,EAgB5C2pR,EAAU1sR,UAAUs+C,cAAgB,SAAS2wO,EAAMC,EAAMC,EAAMC,EAAM3qR,EAAG1B,GAAAA,GAEpEosD,MAAM1qD,IACN0qD,MAAMpsD,IACNosD,MAAM8/N,IACN9/N,MAAM+/N,IACN//N,MAAMggO,IACNhgO,MAAMigO,GAAAA,MAENjtO,GAAQja,MACN,mDACA7oC,WAEI,IAAIsG,MACR,iEAGAqpR,EAAM9tR,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAM54P,EAAG1B,IACnDw6P,EAAMr8P,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAM4xB,EAAMC,IACtD1xB,EAAMt8P,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAM8xB,EAAMC,IAAAA,KAErD1+O,KAAKjxC,KAAK,CACbyO,KAAM,MACN2wC,GAAI0+M,EAAI94P,EACRs6C,GAAIw+M,EAAIx6P,EACRoqQ,GAAI3P,EAAI/4P,EACR2oQ,GAAI5P,EAAIz6P,EACR0B,EAAGuqR,EAAIvqR,EACP1B,EAAGisR,EAAIjsR,IAAAA,KAEJ81B,IAAIkkK,UAAY,IAAIsgE,EAAM2xB,EAAIvqR,EAAGuqR,EAAIjsR,EAAAA,EAgB5C2pR,EAAU1sR,UAAUi9C,IAAM,SACxBx4C,EACA1B,EACAslK,EACAgnH,EACAC,EACAC,GAAAA,GAGEpgO,MAAM1qD,IACN0qD,MAAMpsD,IACNosD,MAAMk5G,IACNl5G,MAAMkgO,IACNlgO,MAAMmgO,GAAAA,MAENntO,GAAQja,MAAM,yCAA0C7oC,WAClD,IAAIsG,MAAM,sDAElB4pR,EAAmB5kK,QAAQ4kK,IAEtBruR,KAAK23B,IAAIzI,UAAUo/P,WAAY,KAC9BC,EAAMvuR,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAM54P,EAAG1B,IACvD0B,EAAIgrR,EAAIhrR,EACR1B,EAAI0sR,EAAI1sR,EAAAA,IAEJ2sR,EAAUxuR,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAM,EAAGh1F,IACvDsnH,EAAWzuR,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAM,EAAG,IAC5Dh1F,EAASziK,KAAK2jB,KACZ3jB,KAAK8O,IAAIg7Q,EAAQjrR,EAAIkrR,EAASlrR,EAAG,GAC/BmB,KAAK8O,IAAIg7Q,EAAQ3sR,EAAI4sR,EAAS5sR,EAAG,IAGnC6C,KAAKkjB,IAAIwmQ,EAAWD,IAAe,EAAIzpR,KAAKgW,KAC9CyzQ,EAAa,EACbC,EAAW,EAAI1pR,KAAKgW,IAAAA,KAGjB80B,KAAKjxC,KAAK,CACbyO,KAAM,MACNzJ,EAAGA,EACH1B,EAAGA,EACHslK,OAAQA,EACRgnH,WAAYA,EACZC,SAAUA,EACVC,iBAAkBA,GAAAA,EAkBtB7C,EAAU1sR,UAAU4vR,MAAQ,SAAS/wO,EAAIE,EAAIouN,EAAIC,EAAI/kG,GAAAA,MAC7C,IAAI1iK,MAAM,2BAclB+mR,EAAU1sR,UAAUkF,KAAO,SAAST,EAAG1B,EAAG2B,EAAGC,GAAAA,GACvCwqD,MAAM1qD,IAAM0qD,MAAMpsD,IAAMosD,MAAMzqD,IAAMyqD,MAAMxqD,GAAAA,MAC5Cw9C,GAAQja,MAAM,0CAA2C7oC,WACnD,IAAIsG,MAAM,yDAEbu4C,OAAOz5C,EAAG1B,GAAAA,KACVo7C,OAAO15C,EAAIC,EAAG3B,GAAAA,KACdo7C,OAAO15C,EAAIC,EAAG3B,EAAI4B,GAAAA,KAClBw5C,OAAO15C,EAAG1B,EAAI4B,GAAAA,KACdw5C,OAAO15C,EAAG1B,GAAAA,KACVo7C,OAAO15C,EAAIC,EAAG3B,GAAAA,KACdo7C,OAAO15C,EAAG1B,EAAAA,EAcjB2pR,EAAU1sR,UAAUq5B,SAAW,SAAS50B,EAAG1B,EAAG2B,EAAGC,GAAAA,GAC3CwqD,MAAM1qD,IAAM0qD,MAAMpsD,IAAMosD,MAAMzqD,IAAMyqD,MAAMxqD,GAAAA,MAC5Cw9C,GAAQja,MAAM,8CAA+C7oC,WACvD,IAAIsG,MAAM,4DAEdsmR,EAAkB9rR,KAAKe,MAAO,CAAPA,IAGvBqjC,EAAM,CAAC,EACU,SAAjBrjC,KAAKogD,UACP/c,EAAI+c,QAAUpgD,KAAKogD,QAAAA,KACdA,QAAU,QAEK,UAAlBpgD,KAAKk7C,WACP7X,EAAI6X,SAAWl7C,KAAKk7C,SAAAA,KACfA,SAAW,cAGbY,YAAAA,KACA93C,KAAKT,EAAG1B,EAAG2B,EAAGC,GAAAA,KACdo4C,OAEDxY,EAAItlC,eAAe,kBAChBqiD,QAAU/c,EAAI+c,SAEjB/c,EAAItlC,eAAe,mBAChBm9C,SAAW7X,EAAI6X,SAAAA,CAAAA,EAexBswO,EAAU1sR,UAAU6vR,WAAa,SAAoBprR,EAAG1B,EAAG2B,EAAGC,GAAAA,GACxDwqD,MAAM1qD,IAAM0qD,MAAMpsD,IAAMosD,MAAMzqD,IAAMyqD,MAAMxqD,GAAAA,MAC5Cw9C,GAAQja,MAAM,gDAAiD7oC,WACzD,IAAIsG,MAAM,0DAEdqmR,EAAoB7rR,KAAKe,QAAAA,KAGxB87C,YAAAA,KACA93C,KAAKT,EAAG1B,EAAG2B,EAAGC,GAAAA,KACd48C,SAAAA,EAkBPmrO,EAAU1sR,UAAU8vR,UAAY,SAASrrR,EAAG1B,EAAG2B,EAAGC,GAAAA,GAC5CwqD,MAAM1qD,IAAM0qD,MAAMpsD,IAAMosD,MAAMzqD,IAAMyqD,MAAMxqD,GAAAA,MAC5Cw9C,GAAQja,MAAM,+CAAgD7oC,WACxD,IAAIsG,MAAM,yDAEdzE,KAAKurR,kBAAAA,KAIJrzP,UAAY,eACZC,SAAS50B,EAAG1B,EAAG2B,EAAGC,GAAAA,EASzB+nR,EAAU1sR,UAAU26C,KAAO,SAASo1O,GAClCA,EAAqC,kBAAhBA,GAA4BA,EAAAA,IAAAA,IAC7CC,EAAgB9uR,KAAKwlR,IAAIn6H,SAAS87G,qBAAqB/H,WAClDlhQ,EAAI,EAAGA,EAAI8B,KAAKwlR,IAAIn6H,SAASy5G,mBAAoB5mQ,IAAAA,KACnDsnR,IAAI3gB,QAAQ3mQ,EAAI,QAChBsnR,IAAIn6H,SAAS9mG,IAAI,aAEnBihO,IAAI3gB,QAAQiqB,GAEbD,EAAa,MACVl3P,IAAIhK,SAAW3tB,KAAKwlR,IAAIn6H,SAASgqG,cAAAA,IAClC19N,EAAM,IAAIkzP,EAAa7qR,KAAK23B,KAAAA,KAC3Bo3P,SAASxwR,KAAKyB,KAAK23B,KAAAA,KACnBA,IAAMA,CAAAA,CAAAA,EAUf6zP,EAAU1sR,UAAU86C,QAAU,SAASo1O,GACrCA,EAAmC,kBAAfA,GAA2BA,EAAAA,IAAAA,IAC3CF,EAAgB9uR,KAAKwlR,IAAIn6H,SAAS87G,qBAAqB/H,WAClDlhQ,EAAI,EAAGA,EAAI8B,KAAKwlR,IAAIn6H,SAASy5G,mBAAoB5mQ,IAAAA,KACnDsnR,IAAI3gB,QAAQ3mQ,EAAI,QAChBsnR,IAAIn6H,SAAS9mG,IAAI,UAEnBihO,IAAI3gB,QAAQiqB,GAEbE,GAAuC,IAAzBhvR,KAAK+uR,SAAS3wR,SAAAA,KACzBu5B,IAAM33B,KAAK+uR,SAAStsR,MAAAA,KACpBy1B,UAAYl4B,KAAK23B,IAAIO,UAAAA,KACrB8iB,YAAch7C,KAAK23B,IAAIqjB,YAAAA,KACvBT,KAAOv6C,KAAK23B,IAAI4iB,KAAAA,KAChB6F,QAAUpgD,KAAK23B,IAAIyoB,QAAAA,KACnBnF,UAAYj7C,KAAK23B,IAAIsjB,UAAAA,KACrBC,SAAWl7C,KAAK23B,IAAIujB,SAAAA,KACpBmwO,SAAWrrR,KAAK23B,IAAI0zP,SAAAA,KACpBD,eAAiBprR,KAAK23B,IAAIyzP,eAAAA,EAQnCI,EAAU1sR,UAAUi5B,UAAY,iBACxB,IAAItzB,MAAM,mCAadynR,EAAU,SAAS5/P,GAAAA,IAKjBnR,EAAGrZ,EAAGtC,EAAGmN,EAAAA,IAAAA,IAET2f,EAAM2iQ,mBACR3iQ,EAAQA,EAAM4iQ,aAGX5iQ,EAAAA,MACI,CAAEnR,EAAG,EAAGrZ,EAAG,EAAGtC,EAAG,EAAGmN,EAAG,EAAG2f,MAAOA,GAAAA,GATtB,sEAYF4Y,KAAK5Y,GACrBnR,EAAI,EACJrZ,EAAI,EACJtC,EAAI,EACJmN,EAAI,MACC,KACDo/D,EApBM,gDAoBUjH,KAAKx4C,GAAAA,GACT,OAAZy/C,EACF5wD,EAAIlI,SAAS84D,EAAQ,IACrBjqE,EAAImR,SAAS84D,EAAQ,IACrBvsE,EAAIyT,SAAS84D,EAAQ,IACrBp/D,EAAI,UAGY,QADhBo/D,EA1BS,gEA0BQjH,KAAKx4C,IAEpBnR,EAAIlI,SAAS84D,EAAQ,IACrBjqE,EAAImR,SAAS84D,EAAQ,IACrBvsE,EAAIyT,SAAS84D,EAAQ,IACrBp/D,EAAI09D,WAAW0B,EAAQ,QAClB,IACLp/D,EAAI,EAEiB,iBAAV2f,GAA0C,MAApBA,EAAMy0C,OAAO,GAAY,KACpDq9L,EAAW,IAAI/Y,GAAS/4N,GAE1BA,EADE8xO,EAASpqJ,GACHoqJ,EAAS7P,QAET,UAIS,IAAjBjiO,EAAMluB,QACR+c,EAAImR,EAAMlR,UAAU,EAAG,GACvBD,GAAKA,EACLrZ,EAAIwqB,EAAMlR,UAAU,EAAG,GACvBtZ,GAAKA,EACLtC,EAAI8sB,EAAMlR,UAAU,EAAG,GACvB5b,GAAKA,IAEL2b,EAAImR,EAAMlR,UAAU,EAAG,GACvBtZ,EAAIwqB,EAAMlR,UAAU,EAAG,GACvB5b,EAAI8sB,EAAMlR,UAAU,EAAG,IAEzBD,EAAIlI,SAASkI,EAAG,IAChBrZ,EAAImR,SAASnR,EAAG,IAChBtC,EAAIyT,SAASzT,EAAG,WAIf,CAAE2b,EAAGA,EAAGrZ,EAAGA,EAAGtC,EAAGA,EAAGmN,EAAGA,EAAG2f,MAAOA,EAAAA,EAUtCy+P,EAAoB,kBACf/qR,KAAK23B,IAAIozP,mBAAyC,GAApB/qR,KAAK05C,WAAAA,EAUxCoxO,EAAsB,kBACjBrhK,QAAQzpH,KAAK23B,IAAImzP,qBAA2C,GAApB9qR,KAAK05C,YAAAA,EActD8xO,EAAU1sR,UAAUm7C,SAAW,SAASnjB,EAAMvzB,EAAG1B,EAAG66G,GAAAA,GAC9CzuD,MAAM1qD,IAAM0qD,MAAMpsD,IAAsB,iBAATi1B,EAAAA,MACjCmqB,GAAQja,MAAM,8CAA+C7oC,WACvD,IAAIsG,MAAM,2DAElBi4G,EAAWzuD,MAAMyuD,QAAAA,EAAwBA,GACrCquK,EAAkB9rR,KAAKe,MAAO,CAAPA,IAIvBmvR,EAAOC,EAAQpvR,KAAK23B,IAAIzI,UAAUkvP,UAGlCnlO,EAAQj5C,KAAK23B,IAAIzI,UAAU2lJ,OAE/Bw6G,EAAQpwR,KAAKe,KAAM,CACjB82B,KAAMA,EACNvzB,EAAGA,EACH1B,EAAGA,EACHo3C,MAAOA,EACP1+B,MAAO40Q,EACPvnB,MAAO5nQ,KAAK2uB,UACZ+tF,SAAUA,GAAAA,CAAAA,EAed8uK,EAAU1sR,UAAUs8C,WAAa,SAAStkB,EAAMvzB,EAAG1B,EAAG66G,GAAAA,GAChDzuD,MAAM1qD,IAAM0qD,MAAMpsD,IAAsB,iBAATi1B,EAAAA,MACjCmqB,GAAQja,MAAM,gDAAiD7oC,WACzD,IAAIsG,MAAM,8DAEdqmR,EAAoB7rR,KAAKe,MAAO,CAIpC08G,EAAWzuD,MAAMyuD,QAAAA,EAAwBA,EAAAA,IAErCyyK,EAAOC,EAAQpvR,KAAK23B,IAAIzI,UAAUkvP,UAClCnlO,EAAQj5C,KAAK23B,IAAIzI,UAAU2lJ,OAE/Bw6G,EAAQpwR,KAAKe,KAAM,CACjB82B,KAAMA,EACNvzB,EAAGA,EACH1B,EAAGA,EACHo3C,MAAOA,EACPkwN,cAAe,SACf5uP,MAAO40Q,EACPvnB,MAAO5nQ,KAAK2uB,UACZ+tF,SAAUA,GAAAA,CAAAA,EAad8uK,EAAU1sR,UAAUq7C,YAAc,SAASrjB,GAAAA,GACrB,iBAATA,EAAAA,MACTmqB,GAAQja,MACN,iDACA7oC,WAEI,IAAIsG,MACR,+DAGA+gR,EAAMxlR,KAAKwlR,IACX15N,EAAI9rD,KAAKwlR,IAAIn6H,SAAS6pG,YAEtBvnO,EAAW63P,EAAIn6H,SAASgqG,cACxBi6B,EACD9J,EAAI3b,mBAAmB/yO,GAAQnJ,EAAY63P,EAAIn6H,SAAS6pG,YAGvDq6B,EAAc,SAAS7hR,GAAAA,IAErBq3Q,GADJr3Q,EAAUA,GAAW,CAAC,GACDtK,OAAS,SAC9BvE,OAAOw6B,eAAer5B,KAAM,QAAS,CACnCuM,IAAK,kBACIw4Q,CAAAA,IAGJ/kR,IAAAA,EAAAA,OAEF,IAAIuvR,EAAY,CAAEnsR,MAZzBksR,GAAY5qR,KAAKqX,MAAY,GAAJ+vC,EAAU,GAAM,KAAS,OA0BpD0/N,EAAU1sR,UAAUm6C,MAAQ,SAASu2O,EAAYC,GAAAA,GAC3CxhO,MAAMuhO,IAAevhO,MAAMwhO,GAAAA,MAC7BxuO,GAAQja,MAAM,2CAA4C7oC,WACpD,IAAIsG,MAAM,yDAEd4qB,EAAS,IAAI4lO,EAAOu6B,EAAY,EAAK,EAAKC,EAAa,EAAK,QAC3D93P,IAAIzI,UAAYlvB,KAAK23B,IAAIzI,UAAUusO,SAASpsO,EAAAA,EAYnDm8P,EAAU1sR,UAAU21K,OAAS,SAASl6J,GAAAA,GAChC0zC,MAAM1zC,GAAAA,MACR0mC,GAAQja,MAAM,4CAA6C7oC,WACrD,IAAIsG,MAAM,0DAEd4qB,EAAS,IAAI4lO,EACfvwP,KAAKojB,IAAIvN,GACT7V,KAAKmjB,IAAItN,IACR7V,KAAKmjB,IAAItN,GACV7V,KAAKojB,IAAIvN,GACT,EACA,QAEGod,IAAIzI,UAAYlvB,KAAK23B,IAAIzI,UAAUusO,SAASpsO,EAAAA,EAYnDm8P,EAAU1sR,UAAUq6C,UAAY,SAAS51C,EAAG1B,GAAAA,GACtCosD,MAAM1qD,IAAM0qD,MAAMpsD,GAAAA,MACpBo/C,GAAQja,MAAM,+CAAgD7oC,WACxD,IAAIsG,MAAM,6DAEd4qB,EAAS,IAAI4lO,EAAO,EAAK,EAAK,EAAK,EAAK1xP,EAAG1B,GAAAA,KAC1C81B,IAAIzI,UAAYlvB,KAAK23B,IAAIzI,UAAUusO,SAASpsO,EAAAA,EAgBnDm8P,EAAU1sR,UAAUowB,UAAY,SAASviB,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GAAAA,GAClDqsD,MAAMthD,IAAMshD,MAAMzuD,IAAMyuD,MAAMp7C,IAAMo7C,MAAM1uD,IAAM0uD,MAAM5sD,IAAM4sD,MAAMrsD,GAAAA,MACpEq/C,GAAQja,MAAM,+CAAgD7oC,WACxD,IAAIsG,MAAM,6DAEd4qB,EAAS,IAAI4lO,EAAOtoP,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GAAAA,KAClC+1B,IAAIzI,UAAYlvB,KAAK23B,IAAIzI,UAAUusO,SAASpsO,EAAAA,EAgBnDm8P,EAAU1sR,UAAU4wR,aAAe,SAAS/iR,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GACzD+K,EAAIshD,MAAMthD,GAAK,EAAIA,EACnBnN,EAAIyuD,MAAMzuD,GAAK,EAAIA,EACnBqT,EAAIo7C,MAAMp7C,GAAK,EAAIA,EACnBtT,EAAI0uD,MAAM1uD,GAAK,EAAIA,EACnB8B,EAAI4sD,MAAM5sD,GAAK,EAAIA,EACnBO,EAAIqsD,MAAMrsD,GAAK,EAAIA,EAAAA,KACd+1B,IAAIzI,UAAY,IAAI+lO,EAAOtoP,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAAA,EAAAA,IAyC7C+tR,EAAa,kBAEb3vR,KAAKw4C,OAAO,GAAK,GACjBx4C,KAAKw4C,OAAO,GAAK,GACjBx4C,KAAKw4C,OAAO,GAAK,GACjBx4C,KAAKw4C,OAAO,GAAK,GAkBrBgzO,EAAU1sR,UAAUg5B,UAAY,SAC9BL,EACAwjO,EACAG,EACAw0B,EACAC,EACAtsR,EACA1B,EACAuB,EACAC,GAAAA,IAEIysR,EAAkB9vR,KAAKwlR,IAAI/D,mBAAmBhqP,GAC9Cs4P,EAAU,EACVC,EAAU,EAGVC,EAAc,EACdC,EAAc,WAEPN,QAAAA,IAAiCxsR,IAE1C6sR,EAAc7sR,EAAQwsR,EACtBM,EAAc7sR,EAASwsR,EACvBE,EAAYD,EAAgB1sR,MAAQwsR,EAAUxsR,EAASwsR,EACvDI,EAAYF,EAAgBzsR,OAASwsR,EAAWxsR,EAAUwsR,QAAAA,IAIjDtsR,IACTA,EAAI03P,EACJp5P,EAAIu5P,EACJH,EAAK,EACLG,EAAK,YAGIw0B,QAAAA,IAAiCxsR,IAC1CA,EAAQwsR,EACRvsR,EAASwsR,QAAAA,IAEAD,QAAAA,IAAiCxsR,IAC1CA,EAAQ0sR,EAAgB1sR,MACxBC,EAASysR,EAAgBzsR,QAAAA,IAAAA,IA2BvBkzJ,EAxBA45H,EAAiCnwR,KAAK23B,IAAIzI,UAAUssO,YACpDjhP,EAAQ60Q,EAAQe,EAA+B17G,OAAO0mF,KACtD9rO,EAAS,IAAI4lO,EAIbm7B,GADJ/gQ,GADAA,GADAA,EAASA,EAAOosO,SAAS00B,EAA+Bh3O,YACxCsiN,SAAS00B,EAA+Bp0H,OACxC0/F,SAAS00B,EAA+Bl3O,QACrCmjN,iBACjB,IAAIG,EACFh5P,EAAI03P,EAAKg1B,EACTpuR,EAAIu5P,EAAK80B,EACTN,EAASG,EACTF,EAAUG,IAGVK,EAAYC,EAAerxR,KAAKe,KAAMowR,GACtCv4B,EAAQ,GACH59L,EAAK,EAAGA,EAAKo2N,EAAUjyR,OAAQ67D,GAAM,GACN,IAAlC49L,EAAMrrP,QAAQ6jR,EAAUp2N,KAC1B49L,EAAMt5P,KAAK8xR,EAAUp2N,IAAAA,GAIzBs2N,EAAU14B,GAGN73P,KAAKwwR,WAAY,IAAZA,IACHp5Q,EAAMygP,EAAM,GACZlzP,EAAMkzP,EAAMA,EAAMz5P,OAAS,GACtBF,EAAIkZ,EAAKlZ,EAAIyG,EAAM,EAAGzG,IAAK,MAC7BsnR,IAAI3gB,QAAQ3mQ,GAAAA,IAEbuyR,EACFzwR,KAAKwlR,IAAIn6H,SAAS71B,SAASpyH,MAAQpD,KAAKw4C,OAAO,GAAKx4C,KAAKw4C,OAAO,GAC9Dk4O,EAAkB,IAANxyR,EAAU8B,KAAKqqQ,KAAOrqQ,KAAKw4C,OAAO,GAAKx4C,KAAKw4C,OAAO,GAC/Dm4O,EACF3wR,KAAKwlR,IAAIn6H,SAAS71B,SAASnyH,OAC3BrD,KAAKqqQ,KACLrqQ,KAAKw4C,OAAO,GACZx4C,KAAKw4C,OAAO,GACVo4O,EACF5wR,KAAKwlR,IAAIn6H,SAAS71B,SAASnyH,OAASrD,KAAKw4C,OAAO,GAAKx4C,KAAKw4C,OAAO,GAC/Dq4O,EACI,IAAN3yR,EAAU,EAAIyyR,GAAmBzyR,EAAI,GAAK0yR,EAAAA,GAEV,IAA9B5wR,KAAK23B,IAAIszP,UAAU7sR,OAAc,KAC/B0yR,EAAW9wR,KAAKwvC,KACpB+mH,EAAWt9C,KAAKz+F,MAAMy+F,KAAKC,UAAUl5G,KAAK23B,IAAIszP,YAAAA,KACzCz7O,KAAOuhP,EACVx6H,EACAv2J,KAAKoqQ,KAAOpqQ,KAAKw4C,OAAO,IACvBq4O,EAAwBH,EAAY1wR,KAAK23B,IAAI2zP,wBAEhD0F,EAAU/xR,KAAKe,KAAM,QAAQ,QACxBwvC,KAAOshP,CAAAA,CAAAA,IAEVG,EAAUh4K,KAAKz+F,MAAMy+F,KAAKC,UAAUk3K,IACxCa,EAAUF,EACR,CAACE,GACDjxR,KAAKoqQ,KAAOpqQ,KAAKw4C,OAAO,IACvBq4O,EAAwBH,EAAY1wR,KAAK23B,IAAI2zP,wBAC9C,OAEI4F,GAAiBhzR,EAAIkZ,GAAOlZ,EAAIyG,IAAQgrR,EAAW1wR,KAAKe,MAE1DkxR,IAAAA,KACG1L,IAAIxwB,oBAAAA,KACJwwB,IACFxhR,KACChE,KAAKw4C,OAAO,GACZx4C,KAAKw4C,OAAO,GACZi4O,EACAG,EACA,MAEDj3O,OACAqxN,eAAAA,KAEAwa,IAAI56P,SACP6M,EACA,OACAw5P,EAAQ1tR,EACR0tR,EAAQpvR,EACRovR,EAAQztR,EACRytR,EAAQxtR,EACR,KACA,KACA8W,GAEE22Q,GAAAA,KACG1L,IAAIjwB,sBAAAA,MAAAA,KAIRiwB,IAAI56P,SACP6M,EACA,OACA24P,EAAM7sR,EACN6sR,EAAMvuR,EACNuuR,EAAM5sR,EACN4sR,EAAM3sR,EACN,KACA,KACA8W,EAAAA,EAAAA,IAKF+1Q,EAAiB,SAAS9gP,EAAMy1O,EAAWG,GAAAA,IACzC7jR,EAAS,GACb0jR,EAAYA,GAAajlR,KAAKwlR,IAAIn6H,SAAS71B,SAASpyH,MACpDgiR,EACEA,GACAplR,KAAKwlR,IAAIn6H,SAAS71B,SAASnyH,OAASrD,KAAKw4C,OAAO,GAAKx4C,KAAKw4C,OAAO,OAC/D24O,EAAUnxR,KAAKqqQ,KAAOrqQ,KAAK23B,IAAI2zP,uBAAAA,OAE3B97O,EAAKxiC,MAAAA,QAAAA,IAEN,SACA,KACHzL,EAAOhD,KAAKmG,KAAKi+B,OAAO6M,EAAK3tC,EAAIsvR,GAAW/L,GAAa,aAEtD,MACH7jR,EAAOhD,KACLmG,KAAKi+B,OAAO6M,EAAK3tC,EAAIsvR,EAAU3hP,EAAK23H,QAAUi+G,GAAa,GAE7D7jR,EAAOhD,KACLmG,KAAKi+B,OAAO6M,EAAK3tC,EAAIsvR,EAAU3hP,EAAK23H,QAAUi+G,GAAa,aAG1D,UACCgM,EAAuBC,EACzBrxR,KAAK23B,IAAIkkK,UAAUt4L,EACnBvD,KAAK23B,IAAIkkK,UAAUh6L,EACnB2tC,EAAKmO,GACLnO,EAAKqO,GACLrO,EAAKjsC,EACLisC,EAAK3tC,GAEPN,EAAOhD,KACLmG,KAAKi+B,OAAOyuP,EAAqBvvR,EAAIsvR,GAAW/L,GAAa,GAE/D7jR,EAAOhD,KACLmG,KAAKi+B,OACFyuP,EAAqBvvR,EAAIuvR,EAAqB3tR,EAAI0tR,GACjD/L,GACA,aAGH,UACCkM,EAAoBC,EACtBvxR,KAAK23B,IAAIkkK,UAAUt4L,EACnBvD,KAAK23B,IAAIkkK,UAAUh6L,EACnB2tC,EAAKmO,GACLnO,EAAKqO,GACLrO,EAAKy8N,GACLz8N,EAAK08N,GACL18N,EAAKjsC,EACLisC,EAAK3tC,GAEPN,EAAOhD,KACLmG,KAAKi+B,OAAO2uP,EAAkBzvR,EAAIsvR,GAAW/L,GAAa,GAE5D7jR,EAAOhD,KACLmG,KAAKi+B,OACF2uP,EAAkBzvR,EAAIyvR,EAAkB7tR,EAAI0tR,GAAW/L,GACtD,aAGH,OACH7jR,EAAOhD,KAAKmG,KAAKi+B,OAAO6M,EAAK3tC,EAAIsvR,GAAW/L,GAAa,GACzD7jR,EAAOhD,KAAKmG,KAAKi+B,OAAO6M,EAAK3tC,EAAI2tC,EAAK/rC,EAAI0tR,GAAW/L,GAAa,OAGjE,IAAIlnR,EAAI,EAAGA,EAAIqD,EAAOnD,OAAQF,GAAK,EAAG,KAClC8B,KAAKwlR,IAAIn6H,SAASy5G,mBAAqBvjQ,EAAOrD,IACnDkpQ,EAAQnoQ,KAAKe,MAAAA,OAGVuB,CAAAA,EAGL6lQ,EAAU,eACRlvO,EAAYl4B,KAAKk4B,UACjB8iB,EAAch7C,KAAKg7C,YACnBT,EAAOv6C,KAAKu6C,KACZ6F,EAAUpgD,KAAKogD,QACfnF,EAAYj7C,KAAKi7C,UACjBC,EAAWl7C,KAAKk7C,SAAAA,KACfsqO,IAAIpe,UAAAA,KACJlvO,UAAYA,EAAAA,KACZ8iB,YAAcA,EAAAA,KACdT,KAAOA,EAAAA,KACP6F,QAAUA,EAAAA,KACVnF,UAAYA,EAAAA,KACZC,SAAWA,CAAAA,EAGd61O,EAAmB,SAASh0O,EAAOx5C,EAAG1B,GAAAA,IACnC,IAAI3D,EAAI,EAAGA,EAAI6+C,EAAM3+C,OAAQF,IAAAA,OACxB6+C,EAAM7+C,GAAG8O,MAAAA,IACV,MACH+vC,EAAM7+C,GAAG+tQ,IAAM1oQ,EACfw5C,EAAM7+C,GAAGguQ,IAAMrqQ,EAAAA,IACZ,MACHk7C,EAAM7+C,GAAGy/C,IAAMp6C,EACfw5C,EAAM7+C,GAAG2/C,IAAMh8C,EAGZ,QAEHk7C,EAAM7+C,GAAGqF,GAAKA,EACdw5C,EAAM7+C,GAAG2D,GAAKA,EAAAA,OAGbk7C,CAAAA,EAGLwzO,EAAY,SAAS14B,GAAAA,OAChBA,EAAMhwM,MAAK,SAASl7C,EAAGnN,GAAAA,OACrBmN,EAAInN,CAAAA,GAAAA,EAIXiuR,EAAiB,SAAS5mP,EAAM2qP,GAAAA,IAAAA,IAU9Bj7H,EACAk7H,EAVAv5P,EAAYl4B,KAAKk4B,UACjB8iB,EAAch7C,KAAKg7C,YACnBoF,EAAUpgD,KAAKogD,QACfsxO,EAAe1xR,KAAKi7C,UACpBA,EAAYv2C,KAAKkjB,IAAI8pQ,EAAe1xR,KAAK23B,IAAIzI,UAAU2lJ,QACvD35H,EAAWl7C,KAAKk7C,SAEhBy2O,EAAW14K,KAAKz+F,MAAMy+F,KAAKC,UAAUl5G,KAAKwvC,OAC1CoiP,EAAQ34K,KAAKz+F,MAAMy+F,KAAKC,UAAUl5G,KAAKwvC,OAGvCqoN,EAAQ,GAEH35P,EAAI,EAAGA,EAAI0zR,EAAMxzR,OAAQF,IAAAA,QAAAA,IACrB0zR,EAAM1zR,GAAGqF,EAAAA,IAAAA,IACdoyH,EAAO26J,EAAerxR,KAAKe,KAAM4xR,EAAM1zR,IAElC+7D,EAAK,EAAGA,EAAK07D,EAAKv3H,OAAQ67D,GAAM,GACN,IAA7B49L,EAAMrrP,QAAQmpH,EAAK17D,KACrB49L,EAAMt5P,KAAKo3H,EAAK17D,IAAAA,IAMnB,IAAItT,EAAI,EAAGA,EAAIkxM,EAAMz5P,OAAQuoD,IAAAA,KACzB3mD,KAAKwlR,IAAIn6H,SAASy5G,mBAAqBjN,EAAMlxM,IAClDygN,EAAQnoQ,KAAKe,MAAAA,GAGjBuwR,EAAU14B,GAEN73P,KAAKwwR,WAAY,IAAZA,IACHp5Q,EAAMygP,EAAM,GACZlzP,EAAMkzP,EAAMA,EAAMz5P,OAAS,GACtB0tD,EAAI10C,EAAK00C,EAAInnD,EAAM,EAAGmnD,IAAK,MAC7B05N,IAAI3gB,QAAQ/4M,GAAAA,KAEZ5zB,UAAYA,EAAAA,KACZ8iB,YAAcA,EAAAA,KACdoF,QAAUA,EAAAA,KACVnF,UAAYA,EAAAA,KACZC,SAAWA,EAAAA,IAEZu1O,EACFzwR,KAAKwlR,IAAIn6H,SAAS71B,SAASpyH,MAAQpD,KAAKw4C,OAAO,GAAKx4C,KAAKw4C,OAAO,GAC9Dk4O,EAAkB,IAAN5kO,EAAU9rD,KAAKqqQ,KAAOrqQ,KAAKw4C,OAAO,GAAKx4C,KAAKw4C,OAAO,GAC/Dm4O,EACF3wR,KAAKwlR,IAAIn6H,SAAS71B,SAASnyH,OAC3BrD,KAAKqqQ,KACLrqQ,KAAKw4C,OAAO,GACZx4C,KAAKw4C,OAAO,GACVo4O,EACF5wR,KAAKwlR,IAAIn6H,SAAS71B,SAASnyH,OAASrD,KAAKw4C,OAAO,GAAKx4C,KAAKw4C,OAAO,GAC/Dq4O,EACI,IAAN/kO,EAAU,EAAI6kO,GAAmB7kO,EAAI,GAAK8kO,EAAAA,GAEV,IAA9B5wR,KAAK23B,IAAIszP,UAAU7sR,OAAc,KAC/B0yR,EAAW9wR,KAAKwvC,KACpB+mH,EAAWt9C,KAAKz+F,MAAMy+F,KAAKC,UAAUl5G,KAAK23B,IAAIszP,YAAAA,KACzCz7O,KAAOuhP,EACVx6H,EACAv2J,KAAKoqQ,KAAOpqQ,KAAKw4C,OAAO,IACvBq4O,EAAwBH,EAAY1wR,KAAK23B,IAAI2zP,wBAEhD0F,EAAU/xR,KAAKe,KAAM6mC,GAAAA,GAAM,KACtB2I,KAAOshP,CAAAA,CAAAA,GAEdW,EAAUx4K,KAAKz+F,MAAMy+F,KAAKC,UAAUy4K,IAAAA,KAC/BniP,KAAOuhP,EACVU,EACAzxR,KAAKoqQ,KAAOpqQ,KAAKw4C,OAAO,IACvBq4O,EAAwBH,EAAY1wR,KAAK23B,IAAI2zP,yBAAAA,IAE5CkG,GAA0B,IAAN1lO,EAAS,KACzBolO,GAAiBplO,EAAI10C,GAAO00C,EAAInnD,IAAQgrR,EAAW1wR,KAAKe,MAC1DkxR,IAAAA,KACG1L,IAAIxwB,oBAAAA,KACJwwB,IACFxhR,KACChE,KAAKw4C,OAAO,GACZx4C,KAAKw4C,OAAO,GACZi4O,EACAG,EACA,MAEDj3O,OACAqxN,eAELgmB,EAAU/xR,KAAKe,KAAM6mC,EAAM2qP,GACvBN,GAAAA,KACG1L,IAAIjwB,sBAAAA,CAAAA,KAGRt6M,UAAYy2O,CAAAA,MAAAA,KAGdz2O,UAAYA,EACjB+1O,EAAU/xR,KAAKe,KAAM6mC,EAAM2qP,GAAAA,KACtBv2O,UAAYy2O,EAAAA,KAEdliP,KAAOmiP,CAAAA,EAYVX,EAAY,SAASnqP,EAAM2qP,GAAAA,IAChB,WAAT3qP,GAAsB2qP,IAAU1G,EAAoB7rR,KAAKe,SAIhD,WAAT6mC,GAAsB2qP,IAAUzG,EAAkB9rR,KAAKe,OAAAA,CAAAA,IAAAA,IAOvDwW,EAwFA8V,EA3FAulQ,EAAQ,GAIRD,EAAQ5xR,KAAKwvC,KACRtxC,EAAI,EAAGA,EAAI0zR,EAAMxzR,OAAQF,IAAK,KACjCg+P,EAAK01B,EAAM1zR,GAAAA,OAEPg+P,EAAGlvP,MAAAA,IACJ,QACH6kR,EAAMtzR,KAAK,CACTuzR,OAAO,cAIN,QACHD,EAAMtzR,KAAK,CACTwzB,OAAO,cAIN,KACH8/P,EAAMtzR,KAAK,CACTgJ,MAAO20P,EACP61B,OAAQ,GACRnqQ,IAAK,eAIJ,SACCoqQ,EAAMH,EAAMzzR,OAAAA,GACZwzR,EAAM1zR,EAAI,KAAO+vD,MAAM2jO,EAAM1zR,EAAI,GAAGqF,KACtCiT,EAAQ,CAAC0lP,EAAG34P,EAAIquR,EAAM1zR,EAAI,GAAGqF,EAAG24P,EAAGr6P,EAAI+vR,EAAM1zR,EAAI,GAAG2D,GAChDmwR,EAAM,QACEA,GAAO,EAAGA,IAAAA,IAAAA,IAEhBH,EAAMG,EAAM,GAAGjgQ,QAAAA,IACf8/P,EAAMG,EAAM,GAAGF,MACf,CACAD,EAAMG,EAAM,GAAGD,OAAOxzR,KAAKiY,GAC3Bq7Q,EAAMG,EAAM,GAAGpqQ,IAAIrpB,KAAK29P,GAAAA,KAAAA,CAAAA,MAAAA,IAQ7B,MACH1lP,EAAQ,CACN0lP,EAAGv+M,GAAKi0O,EAAM1zR,EAAI,GAAGqF,EACrB24P,EAAGr+M,GAAK+zO,EAAM1zR,EAAI,GAAG2D,EACrBq6P,EAAG+P,GAAK2lB,EAAM1zR,EAAI,GAAGqF,EACrB24P,EAAGgQ,GAAK0lB,EAAM1zR,EAAI,GAAG2D,EACrBq6P,EAAG34P,EAAIquR,EAAM1zR,EAAI,GAAGqF,EACpB24P,EAAGr6P,EAAI+vR,EAAM1zR,EAAI,GAAG2D,GAEtBgwR,EAAMA,EAAMzzR,OAAS,GAAG2zR,OAAOxzR,KAAKiY,GAAAA,MAAAA,IAGjC,UACCmnC,EAAKi0O,EAAM1zR,EAAI,GAAGqF,EAAK,EAAM,GAAQ24P,EAAGv+M,GAAKi0O,EAAM1zR,EAAI,GAAGqF,GAC1Ds6C,EAAK+zO,EAAM1zR,EAAI,GAAG2D,EAAK,EAAM,GAAQq6P,EAAGr+M,GAAK+zO,EAAM1zR,EAAI,GAAG2D,GAC1DoqQ,EAAK/P,EAAG34P,EAAK,EAAM,GAAQ24P,EAAGv+M,GAAKu+M,EAAG34P,GACtC2oQ,EAAKhQ,EAAGr6P,EAAK,EAAM,GAAQq6P,EAAGr+M,GAAKq+M,EAAGr6P,GACtCsqQ,EAAKjQ,EAAG34P,EACR6oQ,EAAKlQ,EAAGr6P,EACZ2U,EAAQ,CACNmnC,EAAKi0O,EAAM1zR,EAAI,GAAGqF,EAClBs6C,EAAK+zO,EAAM1zR,EAAI,GAAG2D,EAClBoqQ,EAAK2lB,EAAM1zR,EAAI,GAAGqF,EAClB2oQ,EAAK0lB,EAAM1zR,EAAI,GAAG2D,EAClBsqQ,EAAKylB,EAAM1zR,EAAI,GAAGqF,EAClB6oQ,EAAKwlB,EAAM1zR,EAAI,GAAG2D,GAEpBgwR,EAAMA,EAAMzzR,OAAS,GAAG2zR,OAAOxzR,KAAKiY,GAAAA,MAAAA,IAGjC,MACHq7Q,EAAMtzR,KAAK,CACTwzR,OAAQ,GACRnqQ,IAAK,GACLm0B,KAAK,IAGHv9C,MAAMC,QAAQozR,EAAMA,EAAMzzR,OAAS,GAAGwpB,MACxCiqQ,EAAMA,EAAMzzR,OAAS,GAAGwpB,IAAIrpB,KAAK29P,GAAAA,CAavC5vO,EAPGklQ,EAOK,KANK,WAAT3qP,EACM,SAEA,eAMRorP,GAAAA,EACKnmO,EAAI,EAAGA,EAAI+lO,EAAMzzR,OAAQ0tD,IAAAA,GAC5B+lO,EAAM/lO,GAAG/P,IAAK,IAALA,IACPm2O,EAAOL,EAAM/lO,GAAGlkC,IAEXqyC,EAAK,EAAGA,EAAKi4N,EAAK9zR,OAAQ67D,IAAM,KACnCle,EAAMm2O,EAAKj4N,GAEE,QAAble,EAAI/uC,KACNmlR,EAAQlzR,KACNe,KACA+7C,EAAIx4C,EACJw4C,EAAIl6C,EACJk6C,EAAIorH,OACJprH,EAAIoyO,WACJpyO,EAAIqyO,SACJryO,EAAIsyO,sBAAAA,EAEJmD,GACCS,GAGHG,EAASnzR,KAAKe,KAAM+7C,EAAIx4C,EAAGw4C,EAAIl6C,GAEjCowR,GAAAA,CAAQ,MAEL,IAAI,IAAAJ,EAAM/lO,GAAG/5B,MAAAA,KACbyzP,IAAIn6H,SAAS9mG,IAAI,KACtB0tO,GAAAA,OACK,IAAI,IAAAJ,EAAM/lO,GAAGgmO,MAAgB,KAC9BvuR,EAAIsuR,EAAM/lO,GAAGvkD,MAAMhE,EACnB1B,EAAIgwR,EAAM/lO,GAAGvkD,MAAM1F,EACvBwwR,EAAUpzR,KAAKe,KAAM6xR,EAAM/lO,GAAGimO,OAAQxuR,EAAG1B,GACzCowR,GAAAA,CAAQ,CAIR3lQ,GACFo/O,EAASzsQ,KAAKe,KAAMssB,GAElBklQ,GACFc,EAAOrzR,KAAKe,KAAAA,CAAAA,EAIZuyR,EAAc,SAAS1wR,GAAAA,IACrBwB,EACFrD,KAAKwlR,IAAIn6H,SAASgqG,cAAgBr1P,KAAKwlR,IAAIn6H,SAAS6pG,YAClDyT,EAAUtlQ,GAAUrD,KAAKwlR,IAAIn6H,SAASwiH,sBAAwB,UAC1D7tQ,KAAK23B,IAAIyhB,cAAAA,IACV,gBACIv3C,EAAI8mQ,EAAAA,IACR,aACI9mQ,EAAIwB,EAASslQ,EAAAA,IACjB,iBACI9mQ,EAAIwB,EAAS,EAAIslQ,EAAAA,IACrB,gBACI9mQ,EAAIwB,EAAS,EAAIslQ,EAIrB,eAEI9mQ,EAAAA,EAIT2wR,EAAgB,SAASC,GAAAA,OAIpBA,EAFLzyR,KAAKwlR,IAAIn6H,SAASgqG,cAAgBr1P,KAAKwlR,IAAIn6H,SAAS6pG,aAC9Bl1P,KAAKwlR,IAAIn6H,SAASwiH,sBAAwB,IAIpE2d,EAAU1sR,UAAUi/C,qBAAuB,eACrC20O,EAAiB,oBAErBA,EAAeC,WAAa,GAC5BD,EAAe10O,aAAe,SAASrnB,EAAQ3b,GAAAA,KACxC23Q,WAAWp0R,KAAK,CAACo4B,EAAQ3b,GAAAA,EAGhC03Q,EAAexD,SAAW,kBACO,IAA3BlvR,KAAK2yR,WAAWv0R,OACX,UAGF4B,KAAK2yR,WAAW,GAAG,IAG5BD,EAAezD,kBAAmB,EAC3ByD,CAAAA,EAETlH,EAAU1sR,UAAUy+C,cAAgB,kBAC3Bv9C,KAAK+9C,sBAAAA,EAEdytO,EAAU1sR,UAAUq/C,qBAAuB,kBAClCn+C,KAAK+9C,sBAAAA,EAAAA,IAcVo0O,EAAU,SACZ5uR,EACA1B,EACAsZ,EACApF,EACAC,EACAq4Q,EACA/hQ,EACAklQ,EACAoB,GAAAA,IAAAA,IAGIhgP,EAASigP,EAAU5zR,KAAKe,KAAMmb,EAAGpF,EAAIC,EAAIq4Q,GAEpCnwR,EAAI,EAAGA,EAAI00C,EAAOx0C,OAAQF,IAAK,KAClC40R,EAAQlgP,EAAO10C,GACT,IAANA,IACE00R,EACFG,EAAO9zR,KAAKe,KAAM8yR,EAAMn1O,GAAKp6C,EAAGuvR,EAAMj1O,GAAKh8C,GAE3CuwR,EAASnzR,KAAKe,KAAM8yR,EAAMn1O,GAAKp6C,EAAGuvR,EAAMj1O,GAAKh8C,IAGjDmxR,EAAU/zR,KACRe,KACAuD,EACA1B,EACAixR,EAAM7mB,GACN6mB,EAAM5mB,GACN4mB,EAAM3mB,GACN2mB,EAAM1mB,GACN0mB,EAAMrmB,GACNqmB,EAAMpmB,GAAAA,CAIL8kB,EAGHc,EAAOrzR,KAAKe,MAFZ0rQ,EAASzsQ,KAAKe,KAAMssB,EAAAA,EAMpBo/O,EAAW,SAASp/O,GAAAA,OACdA,GAAAA,IACD,cACEk5P,IAAIn6H,SAAS9mG,IAAI,eAEnB,YACEihO,IAAIn6H,SAAS9mG,IAAI,OAKxB+tO,EAAS,gBACN9M,IAAI7rO,OAAAA,KACJ6rO,IAAIxa,aAAAA,EAGP+nB,EAAS,SAASxvR,EAAG1B,GAAAA,KAClB2jR,IAAIn6H,SAAS9mG,IAChBupN,EAA8BvqQ,GAC5B,IACAwqQ,EAA4BlsQ,GAC5B,OAIFwtR,EAAU,SAAS3hR,GAAAA,IACjBihB,EAAAA,OACIjhB,EAAQk6P,OAAAA,IACT,YACA,MACHj5O,EAAY,kBAET,SACHA,EAAY,eAGT,QAEHA,EAAY,WAIZskQ,EAAiBjzR,KAAKwlR,IAAIgB,kBAAkB94Q,EAAQopB,MACpD27P,EAAYF,EAAYtzR,KAAKe,KAAM0N,EAAQ7L,GAE3CqxR,EADUV,EAAcvzR,KAAKe,KAAMyyR,GAClBQ,EAAexvR,EAEhCy4P,EAAKl8P,KAAK23B,IAAIzI,UAAU+sO,aAAa,IAAIE,EAAMzuP,EAAQnK,EAAGkvR,IAC1DtC,EAAiCnwR,KAAK23B,IAAIzI,UAAUssO,YACpDnsO,EAAS,IAAI4lO,EAGjB5lO,GADAA,GADAA,EAASA,EAAOosO,SAAS00B,EAA+Bh3O,YACxCsiN,SAAS00B,EAA+Bp0H,OACxC0/F,SAAS00B,EAA+Bl3O,OAAAA,IAAAA,IAkBpDs9G,EAAU48H,EAASzB,EAhBnB0B,EAAepzR,KAAK23B,IAAIzI,UAAUktO,iBACpC,IAAIG,EAAU7uP,EAAQnK,EAAGkvR,EAAWQ,EAAezvR,EAAGyvR,EAAexvR,IAEnEy2B,EAAa7K,EAAO+sO,iBACtB,IAAIG,EAAU7uP,EAAQnK,EAAG2vR,EAAMD,EAAezvR,EAAGyvR,EAAexvR,IAE9D4sR,EAAYC,EAAerxR,KAAKe,KAAMk6B,GACtC29N,EAAQ,GACH59L,EAAK,EAAGA,EAAKo2N,EAAUjyR,OAAQ67D,GAAM,GACN,IAAlC49L,EAAMrrP,QAAQ6jR,EAAUp2N,KAC1B49L,EAAMt5P,KAAK8xR,EAAUp2N,IAAAA,GAIzBs2N,EAAU14B,GAGN73P,KAAKwwR,WAAY,IAAZA,IACHp5Q,EAAMygP,EAAM,GACZlzP,EAAMkzP,EAAMA,EAAMz5P,OAAS,GACtBF,EAAIkZ,EAAKlZ,EAAIyG,EAAM,EAAGzG,IAAK,MAC7BsnR,IAAI3gB,QAAQ3mQ,GAAAA,IAEbwyR,EAAkB,IAANxyR,EAAU8B,KAAKqqQ,KAAOrqQ,KAAKw4C,OAAO,GAAKx4C,KAAKw4C,OAAO,GAC/Dm4O,EACF3wR,KAAKwlR,IAAIn6H,SAAS71B,SAASnyH,OAC3BrD,KAAKqqQ,KACLrqQ,KAAKw4C,OAAO,GACZx4C,KAAKw4C,OAAO,GACV66O,EACFrzR,KAAKwlR,IAAIn6H,SAAS71B,SAASnyH,OAASrD,KAAKw4C,OAAO,GAC9Co4O,EACFyC,EAA8BrzR,KAAKw4C,OAAO,GACxC86O,EACFtzR,KAAKwlR,IAAIn6H,SAAS71B,SAASpyH,MAAQpD,KAAKw4C,OAAO,GAC7Ci4O,EAAwB6C,EAA4BtzR,KAAKw4C,OAAO,GAChEq4O,EACI,IAAN3yR,EAAU,EAAIyyR,GAAmBzyR,EAAI,GAAK0yR,EAAAA,GAEV,IAA9B5wR,KAAK23B,IAAIszP,UAAU7sR,OAAc,KAC/B0yR,EAAW9wR,KAAKwvC,KACpB+mH,EAAWt9C,KAAKz+F,MAAMy+F,KAAKC,UAAUl5G,KAAK23B,IAAIszP,YAAAA,KACzCz7O,KAAOuhP,EACVx6H,EACAv2J,KAAKoqQ,KAAOpqQ,KAAKw4C,OAAO,IACvB,EAAIq4O,EAAwBH,GAE/BM,EAAU/xR,KAAKe,KAAM,QAAQ,QACxBwvC,KAAOshP,CAAAA,CAAAA,IAEVyC,EAAmBxC,EACrB,CAAC93K,KAAKz+F,MAAMy+F,KAAKC,UAAUh/E,KAC3Bl6B,KAAKoqQ,KAAOpqQ,KAAKw4C,OAAO,IACvBq4O,EAAwBH,EAAY1wR,KAAK23B,IAAI2zP,wBAC9C,GAEE59Q,EAAQurC,OAAS,MACnBk6O,EAAUnzR,KAAKwlR,IAAIn6H,SAASgqG,cAAAA,KACvBmwB,IAAIpwB,YAAY+9B,EAAUzlR,EAAQurC,OACvCy4O,EAAe1xR,KAAKi7C,UAAAA,KACfA,UAAYy2O,EAAehkR,EAAQurC,OAAAA,IAGtCu6O,EAA8B,SAApBxzR,KAAKwwR,WAAAA,GAGjBgD,GACAD,EAAiB1xR,EAAI0xR,EAAiB9vR,GAAK4vR,GAAAA,GAGzCG,GACCD,EAAiB1xR,GAAK6uR,GACrB6C,EAAiBhwR,GAAK+vR,EACxB,KACIG,EAAcD,EACd9lR,EAAQopB,KACR92B,KAAKwlR,IAAI5c,gBACPl7P,EAAQopB,KACRppB,EAAQgvG,UACN42K,EAA4BC,EAAiBhwR,GAC/C,GACFmwR,EAAqB3C,EACvB,CAAC93K,KAAKz+F,MAAMy+F,KAAKC,UAAUk6K,KAC3BpzR,KAAKoqQ,KAAOpqQ,KAAKw4C,OAAO,IACvBq4O,EACCH,EACA1wR,KAAK23B,IAAI2zP,wBACX,GAEI4F,EACJsC,IAAYt1R,EAAIkZ,GAAOlZ,EAAIyG,IAAQgrR,EAAW1wR,KAAKe,MAEjDkxR,IAAAA,KACG1L,IAAIxwB,oBAAAA,KACJwwB,IACFxhR,KACChE,KAAKw4C,OAAO,GACZx4C,KAAKw4C,OAAO,GACZi4O,EACAG,EACA,MAEDj3O,OACAqxN,eAAAA,KAGAwa,IAAI1uP,KACP28P,EACAC,EAAmBnwR,EACnBmwR,EAAmB7xR,EACnB,CACE0Y,MAAO7M,EAAQ6M,MACfqtP,MAAOj5O,EACPw6O,cAAez7P,EAAQy7P,gBAIvB+nB,GAAAA,KACG1L,IAAIjwB,sBAAAA,OAOTg+B,EAAiB1xR,EAAIwxR,IAAAA,KAElB17P,IAAI2zP,wBACP+H,EAA8BE,EAAiB1xR,GAIjD6L,EAAQurC,OAAS,WACdusO,IAAIpwB,YAAY+9B,GAAAA,KAChBl4O,UAAYy2O,EAAAA,MAIjBhkR,EAAQurC,OAAS,MACnBk6O,EAAUnzR,KAAKwlR,IAAIn6H,SAASgqG,cAAAA,KACvBmwB,IAAIpwB,YAAY+9B,EAAUzlR,EAAQurC,OACvCy4O,EAAe1xR,KAAKi7C,UAAAA,KACfA,UAAYy2O,EAAehkR,EAAQurC,OAAAA,KAErCusO,IAAI1uP,KAAKppB,EAAQopB,KAAMolO,EAAG34P,EAAIvD,KAAKoqQ,KAAMlO,EAAGr6P,EAAI7B,KAAKqqQ,KAAM,CAC9D9vP,MAAO7M,EAAQ6M,MACfqtP,MAAOj5O,EACPw6O,cAAez7P,EAAQy7P,cACvBzsJ,SAAUhvG,EAAQgvG,WAGhBhvG,EAAQurC,OAAS,WACdusO,IAAIpwB,YAAY+9B,GAAAA,KAChBl4O,UAAYy2O,EAAAA,EAKnBU,EAAW,SAAS7uR,EAAG1B,EAAG8xR,EAAOC,GACnCD,EAAQA,GAAS,EACjBC,EAAQA,GAAS,OAEZpO,IAAIn6H,SAAS9mG,IAChBupN,EAA8BvqQ,EAAIowR,GAChC,IACA5lB,EAA4BlsQ,EAAI+xR,GAChC,OAIFvB,EAAY,SAASj/D,EAAO7vN,EAAG1B,GAAAA,OAC1B7B,KAAKwlR,IAAIpyD,MAAMA,EAAO7vN,EAAG1B,EAAG,KAAM,OAGvCmxR,EAAY,SAASzvR,EAAG1B,EAAG87C,EAAIE,EAAIouN,EAAIC,EAAIC,EAAIC,GAAAA,KAC5CoZ,IAAIn6H,SAAS9mG,IAChB,CACEyxM,EAAGiU,EAAwBtsN,EAAKp6C,IAChCyyP,EAAGkU,EAAsBrsN,EAAKh8C,IAC9Bm0P,EAAGiU,EAAwBgC,EAAK1oQ,IAChCyyP,EAAGkU,EAAsBgC,EAAKrqQ,IAC9Bm0P,EAAGiU,EAAwBkC,EAAK5oQ,IAChCyyP,EAAGkU,EAAsBkC,EAAKvqQ,IAC9B,KACA3C,KAAK,OAUP2zR,EAAY,SAAS1rH,EAAQgnH,EAAYC,EAAUyF,GAAAA,IAAAA,IAEjDC,EAAkB,EAAVpvR,KAAKgW,GACbq5Q,EAASrvR,KAAKgW,GAAK,EAEhByzQ,EAAaC,GAClBD,GAA0B2F,EAAAA,IAExBE,EAAatvR,KAAKkjB,IAAIwmQ,EAAWD,GACjC6F,EAAaF,GACXD,IACFG,EAAaF,EAAQE,GAAAA,IAAAA,IAKrBphP,EAAS,GAGTqhP,EAAMJ,GAAiB,EAAI,EAE3B99Q,EAAKo4Q,EACF6F,EArBO,MAqBiB,KAEzBh+Q,EAAKD,EADIk+Q,EAAMvvR,KAAK0S,IAAI48Q,EAAYD,GAExCnhP,EAAOr0C,KAAK21R,EAAej1R,KAAKe,KAAMmnK,EAAQpxJ,EAAIC,IAClDg+Q,GAActvR,KAAKkjB,IAAI5R,EAAKD,GAC5BA,EAAKC,CAAAA,CAAAA,OAGA48B,CAAAA,EAULshP,EAAiB,SAAS/4Q,EAAGpF,EAAIC,GAAAA,IAC/BrJ,GAAKqJ,EAAKD,GAAM,EAEhB02P,EAAKtxP,EAAIzW,KAAKojB,IAAInb,GAClB+/P,EAAKvxP,EAAIzW,KAAKmjB,IAAIlb,GAClBgxC,EAAK8uN,EACL5uN,GAAM6uN,EAENynB,EAAKx2O,EAAKA,EAAKE,EAAKA,EACpBu2O,EAAKD,EAAKx2O,EAAK8uN,EAAK5uN,EAAK6uN,EACzB2nB,EAAO,EAAI,GAAM3vR,KAAK2jB,KAAK,EAAI8rQ,EAAKC,GAAMA,IAAQz2O,EAAK+uN,EAAK7uN,EAAK4uN,GAEjER,EAAKtuN,EAAK02O,EAAKx2O,EACfquN,EAAKruN,EAAKw2O,EAAK12O,EACfwuN,EAAKF,EACLG,GAAMF,EAENppQ,EAAK6J,EAAIoJ,EACTu+Q,EAAS5vR,KAAKojB,IAAIhlB,GAClByxR,EAAS7vR,KAAKmjB,IAAI/kB,GAAAA,MAEf,CACL66C,GAAIxiC,EAAIzW,KAAKojB,IAAI/R,GACjB8nC,GAAI1iC,EAAIzW,KAAKmjB,IAAI9R,GACjBk2P,GAAIA,EAAKqoB,EAASpoB,EAAKqoB,EACvBroB,GAAID,EAAKsoB,EAASroB,EAAKooB,EACvBnoB,GAAIA,EAAKmoB,EAASloB,EAAKmoB,EACvBnoB,GAAID,EAAKooB,EAASnoB,EAAKkoB,EACvB7nB,GAAItxP,EAAIzW,KAAKojB,IAAI9R,GACjB02P,GAAIvxP,EAAIzW,KAAKmjB,IAAI7R,GAAAA,EAIjBo5Q,EAAU,SAAStuR,GAAAA,OACL,IAARA,EAAe4D,KAAKgW,EAAAA,EAG1B22Q,EAA4B,SAASp2B,EAAIG,EAAIwyB,EAAKC,EAAK77I,EAAIwiJ,GAAAA,IACzDC,EAAQx5B,EAAkB,IAAZ2yB,EAAM3yB,GACpBy5B,EAAQt5B,EAAkB,IAAZyyB,EAAMzyB,GACpBu5B,EAAQ3iJ,EAAkB,IAAZ47I,EAAM57I,GACpB4iJ,EAAQJ,EAAkB,IAAZ3G,EAAM2G,GACpBK,EAAWnwR,KAAK0S,IAAI6jP,EAAIjpH,EAAIyiJ,EAAOE,GACnCG,EAAWpwR,KAAKC,IAAIs2P,EAAIjpH,EAAIyiJ,EAAOE,GACnCI,EAAWrwR,KAAK0S,IAAIgkP,EAAIo5B,EAAIE,EAAOE,GACnCI,EAAWtwR,KAAKC,IAAIy2P,EAAIo5B,EAAIE,EAAOE,GAAAA,OAChC,IAAIr4B,EACTs4B,EACAE,EACAD,EAAWD,EACXG,EAAWD,EAAAA,EAKXxD,EAAyB,SAAS0D,EAAIC,EAAIC,EAAIC,EAAI1sQ,EAAIC,EAAI0sQ,EAAIC,GAAAA,IAQ5D/1R,EACFrB,EACA81K,EACAuhH,EACAC,EACAC,EAKAx6B,EACAG,EACA73P,EACA1B,EACA6zR,EACAC,EACAC,EACAC,EAxBEC,EAAOX,EAAKF,EACZc,EAAOX,EAAKF,EACZc,EAAOttQ,EAAKysQ,EACZc,EAAOttQ,EAAKysQ,EACZc,EAAOb,EAAK3sQ,EACZytQ,EAAOb,EAAK3sQ,EAAAA,IA0BXzqB,EAAI,EAAGA,EAAI4zP,GAAe5zP,IAoB7BqF,GAPA03P,GAXAjnF,EAAKihH,GADL11R,EAAIrB,EA1BU,IA2BA43R,GAWJv2R,IATVi2R,EAAKL,EAAK51R,EAAIy2R,GAIFhiH,IAYHz0K,GALJi2R,EAAKj2R,GATLmpB,EAAKnpB,EAAI22R,EAIFV,GAOAv6B,GAIZp5P,GAPAu5P,GAXAm6B,EAAKL,EAAK31R,EAAIw2R,GAWJx2R,IATVk2R,EAAKL,EAAK71R,EAAI02R,GAIFV,IAYHh2R,GALJk2R,EAAKl2R,GATLopB,EAAKppB,EAAI42R,EAIFV,GAOAr6B,GAIH,GAALl9P,GACFw3R,EAAOnyR,EACPoyR,EAAO9zR,EACP+zR,EAAOryR,EACPsyR,EAAOh0R,IAEP6zR,EAAOhxR,KAAK0S,IAAIs+Q,EAAMnyR,GACtBoyR,EAAOjxR,KAAK0S,IAAIu+Q,EAAM9zR,GACtB+zR,EAAOlxR,KAAKC,IAAIixR,EAAMryR,GACtBsyR,EAAOnxR,KAAKC,IAAIkxR,EAAMh0R,IAAAA,OAGnB,IAAI06P,EACT73P,KAAKqX,MAAM25Q,GACXhxR,KAAKqX,MAAM45Q,GACXjxR,KAAKqX,MAAM65Q,EAAOF,GAClBhxR,KAAKqX,MAAM85Q,EAAOF,GAAAA,EAWlBx1O,EAAc,cAGbngD,KAAKo2R,cACLp2R,KAAK23B,IAAI0zP,SAASjtR,QAClB4B,KAAK23B,IAAIyzP,eAAAA,CAAAA,IAZsBC,EAAUD,EAkBtCiL,GAlB4BhL,EAmBhCrrR,KAAK23B,IAAI0zP,SAnBiCD,EAoB1CprR,KAAK23B,IAAIyzP,eAnBJnyK,KAAKC,UAAU,CACpBmyK,SAAUA,EACVD,eAAgBA,KAmBdprR,KAAKo2R,eAAiBC,IAAAA,KACnB7Q,IAAIrlO,YAAYngD,KAAK23B,IAAI0zP,SAAUrrR,KAAK23B,IAAIyzP,gBAAAA,KAC5CgL,aAAeC,EAAAA,CAAAA,CAAAA,CA5lF1B,CA+lFGxkC,GAAMY,KC7mFT,SAAU6e,GAAAA,IAGJglB,EAAgB,SAAS3pR,GAAAA,IACvBnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,EAAG2B,EAAGvF,EAAGyoD,EAAGmF,EAAAA,IAG5B,eAAe5mB,KAAKv4B,GAGnBkG,EAAI,GACJtT,EAAI,EACJ8B,GAHAsL,GADAnN,EAAI,WAAmBwD,MAAM2J,EAAEvO,OAAS,GAAK,IAIvCA,OACRiD,EAAI9B,EACJA,GAAK,EAOH,KALDqC,GACE+K,EAAEtH,WAAW9F,IAAM,KACnBoN,EAAEtH,WAAW9F,EAAI,IAAM,KACvBoN,EAAEtH,WAAW9F,EAAI,IAAM,GACxBoN,EAAEtH,WAAW9F,EAAI,KAUZuC,GADAF,IAFAA,IAFAA,IAFAA,GAAKA,GADJkqD,EAAIlqD,EAAI,KACK,KACd+kD,EAAI/kD,EAAI,KACM,KACd1D,EAAI0D,EAAI,KACM,KACd6B,EAAI7B,EAAI,KACM,IACN,GACTiR,EAAEtU,KAAKuD,EAAI,GAAI2B,EAAI,GAAIvF,EAAI,GAAIyoD,EAAI,GAAImF,EAAI,KAC3Cj5C,EAAEtU,KAAK,YAEZ,SAASoO,EAAGnN,GAAAA,IACN,IAAIqT,EAAIrT,EAAGqT,EAAI,EAAGA,IAAKlG,EAAElK,KAAAA,CAD/B,CAEEoQ,EAAGrT,EAAEpB,QACR0B,OAAO8F,aAAajH,MAAMmB,OAAQ+S,GAAK,MAIvC0jR,EAAgB,SAAS5pR,GAAAA,IACvBkG,EACFtT,EACA8B,EACAO,EACAE,EACA2B,EAAI3D,OACJiD,EAAI,SACJS,EAAI,IACJD,EAAI,aACJ1B,EAAI,QACJwP,EAAI,cAEK1E,EAAE9K,IAAI,GACb8K,EAAIA,EAAE9K,GAAG,GAAI,GACVwP,GAAG,MAAO,IACVA,GAAG,IAAK,SAGXhQ,EAAI,GACJO,EAAI,EACJE,GAHA6K,GADAkG,EAAI,QAAQhR,GAAG8K,EAAE5J,GAAK,GAAK,IAIrBA,GACRjB,EAAIF,EACJA,GAAK,EAEJrC,EACC,UAAYoN,EAAEpJ,GAAG3B,GAAK,IACtB,QAAU+K,EAAEpJ,GAAG3B,EAAI,GAAK,IACxB,MAAQ+K,EAAEpJ,GAAG3B,EAAI,GAAK,IACtB,IAAM+K,EAAEpJ,GAAG3B,EAAI,GAAK,KACnB+K,EAAEpJ,GAAG3B,EAAI,GAAK,IACfP,EAAE9C,KAAKiF,EAAKjE,GAAK,GAAKiE,EAAKjE,GAAK,GAAKiE,EAAKjE,GAAK,EAAIiE,EAAIjE,GAAAA,OAExD,SAASoN,EAAGnN,GAAAA,IACN,IAAIqT,EAAIrT,EAAGqT,EAAI,EAAGA,IAAKlG,EAAElK,KAAAA,CAD/B,CAEEpB,EAAGwR,EAAE9P,IACRU,EAAEmC,aAAajH,MAAM8E,EAAGpC,EAAAA,EAexBm1R,EAAiB,SAAS11R,GAAAA,IACxB21R,EAAkB,IAAIzmO,OAAO,2BAEL,KAD5BlvD,EAAQA,EAAM86B,QAAQ,MAAO,KACnBpvB,QAAQ,OAChB1L,EAAQA,EAAM0tC,OAAO,EAAG1tC,EAAM0L,QAAQ,OAEpC1L,EAAM1C,OAAS,IACjB0C,GAAS,UAEP21R,EAAgBvxP,KAAKpkC,GAAAA,MAChB,WAELS,EAAS,GACJrD,EAAI,EAAGA,EAAI4C,EAAM1C,OAAQF,GAAK,EACrCqD,GAAUzB,OAAO8F,aAAa,MAAQ9E,EAAM5C,GAAK4C,EAAM5C,EAAI,YAEtDqD,CAAAA,EAeLm1R,EAAc,SAASzuR,GAAAA,IAAAA,IACrBikD,EAAM,IAAInmD,WAAWkC,EAAK7J,QAC1BF,EAAI+J,EAAK7J,OACNF,KACLguD,EAAIhuD,GAAK+J,EAAK5C,WAAWnH,GAAAA,OAE3BguD,EAAM43L,GAAS53L,IACJ1jC,QAAO,SAASvgB,EAAMkpQ,GAAAA,OACxBlpQ,EAAOnI,OAAO8F,aAAaurQ,EAAAA,GACjC,KAILG,EAAStS,qBAAuB,SAAS23B,EAAUC,GAAAA,IAE7C14R,EAAI,EACJ+J,EAAO0uR,GAAY,GACnB13B,EAAe,OAGQ,iBAF3B23B,EAAcA,GAAe,MAG3BA,EAAc,CAACA,IAGZ14R,EAAI,EAAGA,EAAI04R,EAAYx4R,OAAQF,GAAK,EAAG,OAClC04R,EAAY14R,IAAAA,IACb,oBACA,iBACH+J,EAAOsuR,EAActuR,GACrBg3P,EAAa1gQ,KAAK,4BAEf,oBACA,iBACH0J,EAAOquR,EAAcruR,GACrBg3P,EAAa1gQ,KAAK,4BAEf,qBACA,kBACH0J,EAAOuuR,EAAevuR,GACtBg3P,EAAa1gQ,KAAK,6BAEf,qBACA,kBACH0J,EAAsBA,EAlFvB67C,MAAM,IACNj2C,KAAI,SAAS/M,GAAAA,OACJ,IAAMA,EAAMuE,aAAazG,SAAS,KAAKoE,OAAO,MAEvD9D,KAAK,IAAM,IA+EV+/P,EAAa1gQ,KAAK,6BAEf,kBACA,eACH0J,EAAOyuR,EAAYzuR,GACnBg3P,EAAa1gQ,KAAK,oCAGZ,IAAIkG,MACR,gBAAkBmyR,EAAY14R,GAAK,8BAKpC,CAAE+J,KAAMA,EAAMg3P,aAAcA,EAAazoN,UAAUt3C,KAAK,OArLnE,CAuLG2yP,GAAMY,MFpLC6e,GAoGPzf,GAAMY,KAzFEsrB,SAAW,SAASrzP,EAAKqhK,EAAMvgI,GAAAA,OAAAA,SAchB9gC,EAAKqhK,EAAMvgI,GACjCugI,GAAAA,IAAOA,EACPvgI,EAA+B,mBAAbA,EAA0BA,EAAW,iBACnDjqD,OAAAA,EAASyM,IAsCXzM,EApCQ,SAASmpB,EAAKqhK,EAAMvgI,GAAAA,IACxBmjF,EAAU,IAAIr3G,eACdp5B,EAAI,EAEJ24R,EAAkB,SAAS5uR,GAAAA,IACzB6uR,EAAa7uR,EAAK7J,OAClB24R,EAAY,GACZC,EAAqBl3R,OAAO8F,aAAAA,IAG3B1H,EAAI,EAAGA,EAAI44R,EAAY54R,GAAK,EAC/B64R,EAAUx4R,KAAKy4R,EAAwC,IAArB/uR,EAAK5C,WAAWnH,KAAAA,OAE7C64R,EAAU73R,KAAK,QAGxByvI,EAAQ78G,KAAK,MAAOpH,GAAMqhK,GAE1Bp9C,EAAQsoJ,iBAAiB,2CAErBlrG,IACFp9C,EAAQ71G,OAAS,WACQ,MAAnB61G,EAAQlhG,OACV+d,EAASqrO,EAAgB72R,KAAKk3R,eAE9B1rO,OAAAA,EAASx9C,GAIf2gI,EAAQxgG,KAAK,MAET49I,GAA2B,MAAnBp9C,EAAQlhG,OAAAA,OACXopP,EAAgBloJ,EAAQuoJ,aAAAA,CAhCzB,CAoCKxsQ,EAAKqhK,EAAMvgI,EAEjBnqD,CAAP,MAAOA,GAAAA,CAAAA,OACFE,CAAAA,CA1D+BiqD,CAChB9gC,EAAKqhK,EAAMvgI,EAAAA,EAWnC8lN,GAAS6lB,cAAgB7lB,GAASyM,SGnBpC,SAAUzM,GAAAA,SAGC8lB,IAAAA,OAEDpzC,GAAYziM,YACPvgD,QAAQD,QAAQijP,GAAYziM,aAG9B81O,QAAAA,UAAAA,KAAAA,EAAAA,EAAAA,KAAAA,EAAAA,KAAAA,MAGN5+P,OAAM,SAASp3B,GAAAA,OACPL,QAAQC,OAAO,IAAIwD,MAAM,+BAAiCpD,GAAAA,IAElEI,MAAK,SAAS8/C,GAAAA,OACNA,EAAYliD,QAAUkiD,EAAYliD,QAAUkiD,CAAAA,GAAAA,CAAAA,SAIhD+1O,IAAAA,OAEDtzC,GAAYuzC,UACPv2R,QAAQD,QAAQijP,GAAYuzC,WAG9BF,EAAAA,EAAAA,KAAAA,KAAAA,EAAAA,EAAAA,KAAAA,EAAAA,KAAAA,MAGN5+P,OAAM,SAASp3B,GAAAA,OACPL,QAAQC,OAAO,IAAIwD,MAAM,6BAA+BpD,GAAAA,IAEhEI,MAAK,SAAS+1R,GAAAA,OACNA,EAAUn4R,QAAUm4R,EAAUn4R,QAAUm4R,CAAAA,GAAAA,CAAAA,IAUjDC,EAAU,SAAS7rO,GAAAA,IACjB5+C,GAAAA,EAAAA,GAAAA,GAAc4+C,GAAAA,MACL,cAAT5+C,EAA6B,YACf,WAATA,GAAqB4+C,aAAe9rD,OAAe,SAC1C,WAATkN,GAAqB4+C,aAAe+wD,OAAe,SAC1C,aAAT3vG,GAAuB4+C,aAAegE,SAAiB,WACrDhE,GAAOA,EAAI3rD,cAAgBzB,MAAc,QAC3CotD,GAAwB,IAAjBA,EAAInrB,SAAuB,UACzB,WAATzzB,EAA0B,SACvB,WASV+oB,EAAgB,SAASiJ,EAASqjN,GAAAA,IAChCxqI,EAAKtzG,SAASwxB,cAAciJ,GAAAA,IAK3B,IAAIhgC,KAJLqjP,EAAIvhN,YAAW+2E,EAAG/2E,UAAYuhN,EAAIvhN,WAClCuhN,EAAI9rN,WAAa8rN,EAAIm1C,YACvB3/K,EAAGthF,UAAY8rN,EAAIm1C,UAAU/jH,SAAS4uE,EAAI9rN,YAE5B8rN,EAAI/1N,MAClBurF,EAAGvrF,MAAMttB,GAAOqjP,EAAI/1N,MAAMttB,GAAAA,OAErB64G,CAAAA,EAoDL6/K,EAAS,SAASA,EAAOr1C,GAAAA,IAEvBnkN,EAAOr/B,OAAOuB,OAChBs3R,EAAOC,QAAQ32R,QAAQD,WACvBk4G,KAAKz+F,MAAMy+F,KAAKC,UAAUw+K,EAAOrwG,YAE/BjiD,EAAOsyJ,EAAOC,QAAQ32R,QAAQD,UAAWm9B,GAAAA,OAG7CknG,EAAOA,EAAKwyJ,YAAY,EAAGF,EAAQ,EAAG,CAACA,KAC3B7nO,IAAIwyL,EAAAA,GAKlBq1C,EAAO54R,UAAYD,OAAOqB,OAAOc,QAAQlC,YACxBmB,YAAcy3R,EAG/BA,EAAOC,QAAU,SAAiBp3J,EAASivC,GAAAA,OAEzCjvC,EAAQ7gI,UAAY8vK,GAAWkoH,EAAO54R,UAC/ByhI,CAAAA,EAGTm3J,EAAOrwG,SAAW,CAChB14H,KAAM,CACJ92B,IAAK,KACL8G,UAAW,KACXk5P,QAAS,KACTngQ,OAAQ,KACRD,IAAK,KACL+tP,IAAK,KACLhwJ,SAAU,KACVhqE,SAAU,cAEZq7G,SAAU,CACRj4G,IAAK,EACLm2C,MAAO,KACPxkG,EAAG,EACH00C,MAAO,IAETotM,IAAK,CACHyjB,SAAU,WACVttN,OAAQ,CAAC,EAAG,EAAG,EAAG,GAClBs/O,aAAa,EACbv0R,EAAG,EACH1B,EAAG,EACH0/C,YAAa,CAAC,EACdswM,MAAO,CAAC,EACR3rO,gBAAiB,gBAMrBwxQ,EAAO54R,UAAU8D,KAAO,SAAci1B,EAAK7qB,GAAAA,OAYlChN,KAAKyB,MAAK,kBACfuL,EAAOA,GAAAA,SAZQ6qB,GAAAA,OACP4/P,EAAQ5/P,IAAAA,IACT,eACI,aACJ,gBACmC,WAA/BA,EAAI6N,SAAS7uB,cAA6B,SAAW,wBAErD,WAKJ7J,CAAgB6qB,IAAAA,IAEhB,gBACI73B,KAAKyB,KAAK61R,GAAe71R,MAAK,SAAS+1R,GAAAA,OACrCx3R,KAAK6vD,IAAI,CACdh4B,IAAK9B,EAAc,MAAO,CACxBQ,UAAWsB,EACX2/P,UAAWA,KAAAA,IAAAA,IAId,iBACIx3R,KAAK6vD,IAAI,CAAEh4B,IAAKA,IAAAA,IACpB,gBACI73B,KAAK6vD,IAAI,CAAEn4B,OAAQG,IAAAA,IACvB,aACI73B,KAAK6vD,IAAI,CAAEp4B,IAAKI,IAAAA,QAAAA,OAEhB73B,KAAKgnC,MAAM,6BAK1B0wP,EAAO54R,UAAU6D,GAAK,SAAYsoC,GAAAA,OAExBA,GAAAA,IACD,mBACIjrC,KAAK+3R,cAAAA,IACT,gBACI/3R,KAAKg4R,WAAAA,IACT,aACIh4R,KAAKi4R,QAAAA,IACT,aACIj4R,KAAKk4R,QAAAA,QAAAA,OAELl4R,KAAKgnC,MAAM,qBAIxB0wP,EAAO54R,UAAUi5R,YAAc,kBAYtB/3R,KAAKm4R,SAVE,CACZ,kBAEIn4R,KAAK2uD,KAAK92B,KAAO73B,KAAKgnC,MAAM,uCAGhC,kBACShnC,KAAK2uD,KAAK6mE,UAAYx1H,KAAKs1H,aAAAA,IAGR7zH,MAAK,eAW7B22R,EAAe,CACjBluQ,SAAU,WACV+C,QAAS,eACT7pB,OAC6B,iBAAnBpD,KAAKqiP,IAAIj/O,OAChB6qD,MAAMjuD,KAAKqiP,IAAIj/O,QACgB,iBAAzBpD,KAAKqiP,IAAIvgM,aACfmM,MAAMjuD,KAAKqiP,IAAIvgM,aAEZp9C,KAAKC,IACH3E,KAAK2uD,KAAK92B,IAAI/yB,YACd9E,KAAK2uD,KAAK92B,IAAIjzB,YACd5E,KAAK2uD,KAAK92B,IAAIhzB,aAJhB7E,KAAKqiP,IAAIvgM,aAKJ,KACX5+C,KAAM,EACNqxK,MAAO,EACPpxK,IAAK,EACLq1C,OAAQ,OACRtyB,gBAAiBlmB,KAAKqiP,IAAIn8N,iBAGxBy+B,EAnMQ,SAAZ1pB,EAAqB92B,EAAMk0R,GAAAA,IAAAA,IAEzBhyP,EACgB,IAAlBliC,EAAKs8B,SACDl8B,SAAS4jC,eAAehkC,EAAK69E,WAC7B79E,EAAK82B,WAAU,GACZ4M,EAAQ1jC,EAAKsyB,WAAYoR,EAAOA,EAAQA,EAAMxJ,aAAa,IAEhEg6P,GACmB,IAAnBxwP,EAAMpH,UACa,WAAnBoH,EAAMnC,UAENW,EAAMrQ,YAAYiF,EAAU4M,EAAOwwP,IAAAA,OAIjB,IAAlBl0R,EAAKs8B,WAEe,WAAlBt8B,EAAKuhC,UACPW,EAAMjjC,MAAQe,EAAKf,MACnBijC,EAAMhjC,OAASc,EAAKd,OACpBgjC,EAAMzO,WAAW,MAAME,UAAU3zB,EAAM,EAAG,IACf,aAAlBA,EAAKuhC,UAA6C,WAAlBvhC,EAAKuhC,WAC9CW,EAAMvlC,MAAQqD,EAAKrD,OAIrBulC,EAAMwH,iBACJ,QACA,WACExH,EAAM2C,UAAY7kC,EAAK6kC,UACvB3C,EAAM4C,WAAa9kC,EAAK8kC,UAAAA,IAAAA,IAOvB5C,CAAAA,CAtCO,CAoMVrmC,KAAK2uD,KAAK92B,IACV73B,KAAKqiP,IAAI9gM,YAAY82O,mBAGA,SAAnB1zO,EAAO3lB,UACTo5P,EAAa/0R,OACXqB,KAAKC,IACHJ,SAAS5C,KAAKoD,aACdR,SAAS5C,KAAKqD,aACdT,SAASC,gBAAgBS,aACzBV,SAASC,gBAAgBO,aACzBR,SAASC,gBAAgBQ,cACvB,WAGH2pD,KAAKkpO,QAAU9hQ,EAAc,MAAO,CACvC+K,UAAW,oBACXxU,MAhDe,CACfpC,SAAU,QACVkE,SAAU,SACV8B,OAAQ,IACRhtB,KAAM,YACNqxK,MAAO,EACPC,OAAQ,EACRrxK,IAAK,UA2CFwrD,KAAKhwB,UAAY5I,EAAc,MAAO,CACzC+K,UAAW,sBACXxU,MAAO8rQ,IAAAA,KAEJzpO,KAAKhwB,UAAU3I,YAAY2uB,GAAAA,KAC3BgK,KAAKhwB,UAAUlI,WAAWT,YAC7BD,EAAc,MAAO,CACnBzJ,MAAO,CACLunK,MAAO,OACPxpJ,OAAQ,qBACRmO,OAAQ,EACRC,QAAS,EACTp1C,OAAQ,WAITsrD,KAAKhwB,UAAUrS,MAAMc,MAAQ,YAC7BuhC,KAAKkpO,QAAQ7hQ,YAAYh2B,KAAK2uD,KAAKhwB,WACxCp6B,SAAS5C,KAAKq0B,YAAYh2B,KAAK2uD,KAAKkpO,SAAAA,KAC/BlpO,KAAKhwB,UAAUlI,WAAWnK,MAAMpC,SAAW,gBAC3CykC,KAAKhwB,UAAUt7B,OAClBqB,KAAKC,IACH3E,KAAK2uD,KAAKhwB,UAAUlI,WAAWxxB,aAC/BjF,KAAK2uD,KAAKhwB,UAAUlI,WAAW1xB,aAC/B/E,KAAK2uD,KAAKhwB,UAAUlI,WAAWzxB,cAC7B,SAIV0yR,EAAO54R,UAAUk5R,SAAW,eAEtBM,EAAU,CACZ,kBAEI/zR,SAAS5C,KAAKqvB,SAAShxB,KAAK2uD,KAAKhwB,YAAc3+B,KAAK+3R,aAAAA,GAAAA,OAMnD/3R,KAAKm4R,SAASG,GAClB72R,KAAK21R,GACL31R,MAAK,SAAuB8/C,GAAAA,IAEvB7zC,EAAU7O,OAAOuB,OAAO,CAAC,EAAGJ,KAAKqiP,IAAI9gM,aAAAA,cAClC7zC,EAAQ6qR,WAERh3O,EAAYvhD,KAAK2uD,KAAKhwB,UAAWjxB,EAAAA,IAEzCjM,MAAK,SAAuBi2B,IAEV13B,KAAKqiP,IAAI9gM,YAAYg3O,YAAc,cACzC7gQ,GAAAA,KAENi3B,KAAKj3B,OAASA,EACnBnzB,SAAS5C,KAAKy0B,YAAYp2B,KAAK2uD,KAAKkpO,QAAAA,GAAAA,EAI1CH,EAAO54R,UAAU05R,YAAc,eAEzBF,EAAU,CACZ,kBAEI/zR,SAAS5C,KAAKqvB,SAAShxB,KAAK2uD,KAAKhwB,YAAc3+B,KAAK+3R,aAAAA,GAAAA,OAMnD/3R,KAAKm4R,SAASG,GAClB72R,KAAK21R,GACL31R,MAAK,SAA0B8/C,GAAAA,IAG1BikO,EAAMxlR,KAAKqiP,IAAIwP,MACfw6B,EAAYrsR,KAAKqiP,IAAIgqC,UAErBpzO,EACwB,iBAAnBj5C,KAAKqiP,IAAIj/O,OACf6qD,MAAMjuD,KAAKqiP,IAAIj/O,QACgB,iBAAzBpD,KAAKqiP,IAAIvgM,aACfmM,MAAMjuD,KAAKqiP,IAAIvgM,aAEZ,EADA9hD,KAAKqiP,IAAIj/O,MAAQpD,KAAKqiP,IAAIvgM,YAG5Bp0C,EAAU7O,OAAOuB,OACnB,CACEkoI,OAAO,EACPjhG,YAAY,EACZ4R,MAAOA,EACP1U,QAASvkC,KAAKqiP,IAAI99M,SAAW,EAC7BG,QAAS1kC,KAAKqiP,IAAI39M,SAAW,EAC7Bxe,gBAAiB,UACjBonB,aAAc,KACdgU,SAAS,EACTpU,MAAO,KACPyV,iBAAiB,EACjBT,wBAAwB,EACxBnV,SAAS,GAEX/sC,KAAKqiP,IAAI9gM,aAAAA,UAEJ7zC,EAAQ6qR,WAEf/S,EAAIC,UAAU+K,gBAAAA,IACLxwR,KAAKqiP,IAAImuC,YAEZxwR,KAAKqiP,IAAImuC,WACfhL,EAAIC,UAAUrb,KAAOpqQ,KAAKqiP,IAAI9+O,EAC9BiiR,EAAIC,UAAUpb,KAAOrqQ,KAAKqiP,IAAIxgP,EAC9B2jR,EAAIC,UAAUjtO,OAASx4C,KAAKqiP,IAAI7pM,OAChCgtO,EAAIC,UAAU4G,UAAYA,EAEtBA,EAAAA,IACG,IAAInuR,EAAI,EAAGA,EAAImuR,EAAUjuR,SAAUF,EAAG,KACrCq8C,EAAO8xO,EAAUnuR,GACjB25B,EAAM0iB,EAAK1iB,IAAI9zB,MAAK,SAAS8zB,GAAAA,MACT,aAAfA,EAAI1R,MAAAA,IAGT0R,GACF2tP,EAAIziB,QAAQlrO,EAAInN,IAAK6vB,EAAKqrD,IAAI7sF,KAAMwhC,EAAKqrD,IAAIt5E,MAAAA,CAAAA,OAKnD5e,EAAQs0C,aAAet0C,EAAQs0C,cAAgB,EAC/Ct0C,EAAQs0C,aACkB,GAAxBt0C,EAAQs0C,aACJt9C,KAAKC,IACH3E,KAAK2uD,KAAKhwB,UAAU15B,aACpBjF,KAAK2uD,KAAKhwB,UAAU55B,aACpB/E,KAAK2uD,KAAKhwB,UAAU35B,cAEtB0I,EAAQs0C,aAEdwjO,EAAIC,UAAUhsO,MAAK,GACZ8H,EAAYvhD,KAAK2uD,KAAKhwB,UAAWjxB,EAAAA,IAEzCjM,MAAK,SAA0Bi2B,GAAAA,KACzB2qN,IAAIwP,MAAM4zB,UAAU7rO,SAAQ,IAGhB55C,KAAKqiP,IAAI9gM,YAAYg3O,YAAc,cACzC7gQ,GAAAA,KAENi3B,KAAKj3B,OAASA,EACnBnzB,SAAS5C,KAAKy0B,YAAYp2B,KAAK2uD,KAAKkpO,QAAAA,GAAAA,EAI1CH,EAAO54R,UAAUm5R,MAAQ,kBAShBj4R,KAAKm4R,SAPE,CACZ,kBACSn4R,KAAK2uD,KAAKj3B,QAAU13B,KAAKg4R,UAAAA,IAKNv2R,MAAK,eAC7Bg3R,EAAUz4R,KAAK2uD,KAAKj3B,OAAOK,UAC7B,SAAW/3B,KAAKqiP,IAAI73N,MAAMxd,KAC1BhN,KAAKqiP,IAAI73N,MAAMkuQ,SAAAA,KAEZ/pO,KAAKl3B,IAAMlzB,SAASwxB,cAAc,YAClC44B,KAAKl3B,IAAII,IAAM4gQ,CAAAA,GAAAA,EAIxBf,EAAO54R,UAAUo5R,MAAQ,kBAUhBl4R,KAAKm4R,SARE,CACZ,kBACSn4R,KAAKw4R,aAAAA,IAMc/2R,MAAK,gBAE5BktD,KAAK62N,IAAMxlR,KAAK2uD,KAAK62N,KAAOxlR,KAAKqiP,IAAIwP,KAAAA,GAAAA,EAM9C6lC,EAAO54R,UAAUiyD,OAAS,SAAgB/jD,EAAMU,EAASmqB,GAAAA,MAG7B,SAD1BA,EAAMA,GAAO,OACLhhB,eAAiD,UAAtBghB,EAAIhhB,cAC9B7W,KAAK24R,UAAU3rR,EAAMU,GAErB1N,KAAK44R,UAAU5rR,EAAMU,EAAAA,EAIhCgqR,EAAO54R,UAAU85R,UAAY,SAAmB5rR,EAAMU,GAAAA,OAS7C1N,KAAKm4R,SAPE,CACZ,kBACSn4R,KAAK2uD,KAAK62N,KAAOxlR,KAAKk4R,OAAAA,IAKHz2R,MAAK,kBAM1BzB,KAAK2uD,KAAK62N,IAAIz0N,OAAO/jD,EAAMU,EAAAA,GAAAA,EAItCgqR,EAAO54R,UAAU65R,UAAY,SAAmB3rR,GAAAA,OASvChN,KAAKm4R,SAPE,CACZ,kBACSn4R,KAAK2uD,KAAKl3B,KAAOz3B,KAAKi4R,OAAAA,IAKHx2R,MAAK,kBACzBuL,GAAAA,UAAAA,EACDgB,IACA,aACIhO,KAAK2uD,KAAKl3B,IAAAA,IACd,oBACA,uBACIz3B,KAAK2uD,KAAKl3B,IAAII,IAAAA,IAClB,cACA,iBACKtzB,SAAS+nC,SAASN,KAAOhsC,KAAK2uD,KAAKl3B,IAAII,IAAAA,QAAAA,KAEzC,sBAAwB7qB,EAAO,2BAK7C0qR,EAAO54R,UAAU26C,KAAO,SAAcqsN,GAAAA,OAS7B9lQ,KAAKm4R,SAPE,CACZ,kBACSn4R,KAAK2uD,KAAK62N,KAAOxlR,KAAKk4R,OAAAA,IAM9BroO,IAAIi2M,EAAW,CAAEA,SAAUA,GAAa,MACxCrkQ,MAAK,gBACCktD,KAAK62N,IAAI/rO,KAAKz5C,KAAKqiP,IAAIyjB,SAAAA,GAAAA,EAIlC4xB,EAAO54R,UAAU+5R,WAAa,kBASrB74R,KAAKm4R,SAPE,CACZ,kBACSn4R,KAAK2uD,KAAK62N,KAAOxlR,KAAKk4R,OAAAA,IAKHz2R,MAAK,gBAC5BktD,KAAKnD,SAASxrD,KAAK2uD,KAAK62N,IAAAA,GAAAA,EAMjCkS,EAAO54R,UAAU+wD,IAAM,SAAawyL,GAAAA,GAIb,WAAjBo1C,EAAQp1C,GAAAA,OACHriP,KAAAA,IAIL84R,EAAMj6R,OAAO0uC,KAAK80M,GAAO,CAAC,GAAGx0O,KAAI,SAAS7O,GAAAA,GACxCA,KAAO04R,EAAOrwG,SAAS14H,KAAM,OAExB,gBACAA,KAAK3vD,GAAOqjP,EAAIrjP,EAAAA,EAAAA,OAGfA,GAAAA,IACD,gBACIgB,KAAK+4R,UAAUh+L,KAAK/6F,KAAMqiP,EAAI7pM,QAAAA,IAClC,eACI,uBACA6pM,IAAIwP,MAAQxP,EAAIwP,MACd7xP,KAAKs1H,aAAAA,EAAAA,IAEX,kBACIt1H,KAAKs1H,YAAYv6B,KAAK/6F,KAAMqiP,EAAI7sH,UAAAA,QAAAA,OAGhC,gBACA6sH,IAAIrjP,GAAOqjP,EAAIrjP,EAAAA,EAAAA,GAI3BgB,MAAAA,OAGIA,KAAKyB,MAAK,kBACRzB,KAAKm4R,SAASW,EAAAA,GAAAA,EAIzBpB,EAAO54R,UAAUyN,IAAM,SAAavN,EAAKg6R,GAAAA,OAChCh5R,KAAKyB,MAAK,eAEXmtD,EAAM5vD,KAAO04R,EAAOrwG,SAAS14H,KAAO3uD,KAAK2uD,KAAK3vD,GAAOgB,KAAKqiP,IAAIrjP,GAAAA,OAC3Dg6R,EAAMA,EAAIpqO,GAAOA,CAAAA,GAAAA,EAI5B8oO,EAAO54R,UAAUi6R,UAAY,SAAmBvgP,GAAAA,OACvCx4C,KAAKyB,MAAK,kBAEPg2R,EAAQj/O,IAAAA,IACT,SACHA,EAAS,CAACA,EAAQA,EAAQA,EAAQA,GAAAA,IAE/B,WACmB,IAAlBA,EAAOp6C,SACTo6C,EAAS,CAACA,EAAO,GAAIA,EAAO,GAAIA,EAAO,GAAIA,EAAO,KAE9B,IAAlBA,EAAOp6C,OAAAA,MAAAA,QAAAA,OAKJ4B,KAAKgnC,MAAM,8BAIjBq7M,IAAI7pM,OAASA,CAAAA,IACjB/2C,KAAKzB,KAAKs1H,YAAAA,EAGfoiK,EAAO54R,UAAUw2H,YAAc,SAAqBE,GAAAA,SACzCyjK,EAAKrqO,EAAK9C,GAAAA,OACVpnD,KAAKi+B,MAAQisB,EAAM9C,EAAK,GAAM,WAGhC9rD,KAAKyB,MAAK,YAEf+zH,EAAWA,GAAYq8H,GAAMqnC,YAAYl5R,KAAKqiP,IAAIwP,QAGpC9zP,eAAe,WAC3By3H,EAAS92H,MAAQ,CACf0E,MAAOoyH,EAASpyH,MAAQpD,KAAKqiP,IAAI7pM,OAAO,GAAKx4C,KAAKqiP,IAAI7pM,OAAO,GAC7Dn1C,OAAQmyH,EAASnyH,OAASrD,KAAKqiP,IAAI7pM,OAAO,GAAKx4C,KAAKqiP,IAAI7pM,OAAO,IAEjEg9E,EAAS92H,MAAMs1K,GAAK,CAClB5wK,MAAO61R,EAAKzjK,EAAS92H,MAAM0E,MAAOoyH,EAAS1pE,GAC3CzoD,OAAQ41R,EAAKzjK,EAAS92H,MAAM2E,OAAQmyH,EAAS1pE,IAE/C0pE,EAAS92H,MAAMy6R,MAAQ3jK,EAAS92H,MAAM2E,OAASmyH,EAAS92H,MAAM0E,OAAAA,KAI3DurD,KAAK6mE,SAAWA,CAAAA,GAAAA,EAIzBkiK,EAAO54R,UAAU84R,YAAc,SAAqBhpO,EAAKm2C,EAAOxkG,EAAG00C,GAAAA,OAEtD,MAAP2Z,IAAa5uD,KAAK6mK,SAASj4G,IAAMA,GACxB,MAATm2C,IAAe/kG,KAAK6mK,SAAS9hE,MAAQA,GAChC,MAALxkG,IAAWP,KAAK6mK,SAAStmK,EAAIA,GACpB,MAAT00C,IAAej1C,KAAK6mK,SAAS5xH,MAAQA,GAAAA,KACpC4xH,SAASsyH,MAAQn5R,KAAK6mK,SAASj4G,IAAM5uD,KAAK6mK,SAAS9hE,MAGjD/kG,IAAAA,EAGT03R,EAAO54R,UAAUs6R,eAAiB,SAChCxqO,EACAm2C,EACAxkG,EACA00C,GAAAA,OAGOj1C,KAAK43R,YACVhpO,EAAM5uD,KAAK6mK,SAASj4G,IAAMA,EAAM,KAChCm2C,GAAgB,KAChBxkG,EAAIP,KAAK6mK,SAAStmK,EAAIA,EAAI,KAC1B00C,EAAQj1C,KAAK6mK,SAAS5xH,MAAMhyC,OAAOgyC,GAAS,OAMhDyiP,EAAO54R,UAAU2C,KAAO,SAAc43R,EAAaC,GAAAA,IAE7Cl0J,EAAOplI,KAAAA,OAEJA,KAAKu5R,SAASF,EAAaC,GAAY,SAC5CD,EACAC,GAAAA,OAGAl0J,EAAKg0J,eAAe,KAAM,KAAM,EAAG,CAACC,IAC7Br4R,QAAQlC,UAAU2C,KACtBxC,KAAKe,MAAM,SAAkB4uD,GAAAA,OAC5Bw2E,EAAKg0J,eAAe,KAAMC,GACnBzqO,CAAAA,IAERntD,KAAK43R,EAAaC,GAClB73R,MAAK,SAAmBmtD,GAAAA,OACvBw2E,EAAKg0J,eAAe,GACbxqO,CAAAA,GAAAA,GAAAA,EAKf8oO,EAAO54R,UAAUy6R,SAAW,SAC1BF,EACAC,EACAE,GAGAA,EAAWA,GAAYx4R,QAAQlC,UAAU2C,KAIrC43R,IACFA,EAAcA,EAAYt+L,KAFjB/6F,OAIPs5R,IACFA,EAAaA,EAAWv+L,KALf/6F,OAAAA,IAYPy5R,GAF+C,IAAjDz4R,QAAQpC,WAAW4N,QAAQ,kBACV,YAAjBxL,QAAQ+X,KAXC/Y,KAcP03R,EAAOC,QAAQ94R,OAAOuB,OAAO,CAAC,EAdvBJ,MAciCgB,QAAQlC,WAGhD46R,EAAYF,EAASv6R,KAAKw6R,EAAaJ,EAAaC,GAAAA,OACjD5B,EAAOC,QAAQ+B,EAlBX15R,KAkB2BN,UAAAA,EAGxCg4R,EAAO54R,UAAU66R,aAAe,SAC9BN,EACAC,GAAAA,OAGOt4R,QAAQlC,UAAU2C,KAAKxC,KAAKe,KAAMq5R,EAAaC,EAAAA,EAGxD5B,EAAO54R,UAAUq5R,SAAW,SAAkBW,GAAAA,IAExC1zJ,EAAOplI,KAAAA,OACX84R,EAAIzsR,SAAQ,SAA0Bm+C,GACpC46E,EAAOA,EAAKm0J,SAAS/uO,EAAAA,IAEhB46E,CAAAA,EAGTsyJ,EAAO54R,UAAP25B,MAA4B,SAAS6gQ,GAE/BA,IACFA,EAAaA,EAAWv+L,KAAK/6F,OAAAA,IAE3B05R,EAAY14R,QAAQlC,UAAR25B,MAA2Bx5B,KAAKe,KAAMs5R,GAAAA,OAC/C5B,EAAOC,QAAQ+B,EAAW15R,KAAAA,EAGnC03R,EAAO54R,UAAU86R,cAAgB,SAAuBN,GAAAA,OAE/Ct4R,QAAQlC,UAAR25B,MAA2Bx5B,KAAKe,KAAMs5R,EAAAA,EAG/C5B,EAAO54R,UAAUkoC,MAAQ,SAAemoB,GAAAA,OAE/BnvD,KAAKyB,MAAK,iBACT,IAAIgD,MAAM0qD,EAAAA,GAAAA,EAMpBuoO,EAAO54R,UAAU+6R,MAAQnC,EAAO54R,UAAU+wD,IAC1C6nO,EAAO54R,UAAUqlP,OAASuzC,EAAO54R,UAAU26C,KAC3Ci+O,EAAO54R,UAAUg7R,OAASpC,EAAO54R,UAAUiyD,OAC3C2mO,EAAO54R,UAAUi7R,IAAMrC,EAAO54R,UAAU2C,KAGxCowP,GAAMqnC,YAAc,SAASnnC,EAAap6O,EAAMwO,GAAAA,GAEnB,YAAvBm+G,EAAAA,GAAAA,GAAOytH,GAA0B,KAC/BrkP,EAAUqkP,EACdA,EAAcrkP,EAAQqkP,YACtBp6O,EAAOjK,EAAQiK,MAAQA,EACvBwO,EAASzY,EAAQyY,QAAUA,CAAAA,CAI7BxO,EAAOA,GAAQ,KACfwO,EAASA,GAAU,KACnB4rO,GAAe,IAAMA,GAAe,MAAMl7O,cAAAA,IAgDtCi1C,EA/CAkuO,GAAoB,GAAK7zQ,GAAQtP,cAGjCi8O,EAAc,CAChBC,GAAI,CAAC,QAAS,SACdh9O,GAAI,CAAC,QAAS,SACdC,GAAI,CAAC,QAAS,SACdC,GAAI,CAAC,OAAQ,SACbwZ,GAAI,CAAC,OAAQ,QACbujO,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,MAAO,QACZC,GAAI,CAAC,OAAQ,OACbC,IAAK,CAAC,KAAM,QACZC,GAAI,CAAC,QAAS,SACd/jO,GAAI,CAAC,QAAS,SACdC,GAAI,CAAC,QAAS,SACd+jO,GAAI,CAAC,QAAS,SACd7jO,GAAI,CAAC,OAAQ,SACb8jO,GAAI,CAAC,MAAO,QACZC,GAAI,CAAC,OAAQ,OACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,IAAK,CAAC,MAAO,QACbC,GAAI,CAAC,QAAS,SACdvhP,GAAI,CAAC,QAAS,SACdC,GAAI,CAAC,QAAS,SACdE,GAAI,CAAC,OAAQ,SACbqhP,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,GAAI,CAAC,OAAQ,QACbC,IAAK,CAAC,MAAO,QACbz8I,GAAI,CAAC,OAAQ,QACb19D,OAAQ,CAAC,IAAK,yBACO,CAAC,IAAK,KAC3Bo6M,MAAO,CAAC,IAAK,qBACG,CAAC,IAAK,KACtBC,OAAQ,CAAC,KAAM,KACfC,QAAS,CAAC,IAAK,oBACA,CAAC,IAAK,aAKf78O,GAAAA,IACD,KACHm0C,EAAI,YAED,KACHA,EAAI,GAAK,eAEN,KACHA,EAAI,GAAK,eAEN,KACHA,EAAI,aAED,KACHA,EAAI,cAED,SAGA,KACHA,EAAI,aAED,KACHA,EAAI,qBAGE,iBAAmBn0C,EAAAA,IAkBzB0rB,EAhBA42P,EAAa,EACbzwB,EAAY,KAGZ1W,EAAY/0P,eAAei8R,GAC7BC,EAAannC,EAAYknC,GAAkB,GAAKluO,EAChD09M,EAAY1W,EAAYknC,GAAkB,GAAKluO,OAAAA,IAG7CmuO,EAAa9zQ,EAAO,GACpBqjP,EAAYrjP,EAAO,EAEkBA,CADrC,MAAO81F,IAAAA,MACD,IAAIx3G,MAAM,mBAAqB0hB,EAAAA,CAAAA,GAMrB,MAAhB4rO,GAAuC,aAAhBA,EACzBA,EAAc,IACVyX,EAAYywB,IACd52P,EAAMmmO,EACNA,EAAYywB,EACZA,EAAa52P,OAEV,IAAoB,MAAhB0uN,GAAuC,cAAhBA,EAAAA,KAQ1B,wBAA0BA,EAPhCA,EAAc,IACVkoC,EAAazwB,IACfnmO,EAAMmmO,EACNA,EAAYywB,EACZA,EAAa52P,EAAAA,CAAAA,MAON,CACTjgC,MAAOomQ,EACPnmQ,OAAQ42R,EACRtiR,KAAMA,EACNm0C,EAAGA,EACHimM,YAAaA,EAAAA,EA0EjBuf,EAAS4oB,KAAO,SAASriQ,EAAKnqB,IAG5BA,EAAUA,GAAW,CAAC,GACd89C,SAAW99C,EAAQ89C,UAAY,aACvC99C,EAAQ6zC,YAAc7zC,EAAQ6zC,aAAe,CAAC,EAC9C7zC,EAAQ6zC,YAAY7pB,OAAShqB,EAAQ6zC,YAAY7pB,QAAU13B,KAAK03B,OAChEhqB,EAAQmkP,MAAQnkP,EAAQmkP,OAAS7xP,KACjC0N,EAAQ2+Q,UAAY3+Q,EAAQ2+Q,UACxB3+Q,EAAQ2+Q,UAAUx+Q,IAAIs7Q,IACtB,SAGAgR,EAAS,IAAIzC,EAAOhqR,GAAAA,OAEnBA,EAAQysR,OAKJA,EAHAA,EAAOv3R,KAAKi1B,GAAKghQ,YAAAA,CAAAA,CA7/B9B,CAmgCGhnC,GAAMY,KJp9BNZ,GAAMY,IAvBEmyB,MAAQ,SAASwV,GAAAA,OACxBtjQ,GAAOsjQ,EAAAA,KACF/uI,SAASxtB,OAAO+7D,UAAU,oBAAoB,WACjD6wF,GAAazqR,KAAKqrJ,SAAS8xG,YAAAA,KACtB9xG,SAAS9mG,IAAI,WACb8mG,SAAS9mG,IAAI,yBAA2BkmO,GAAa,GAAK,cAC1Dp/H,SAAS9mG,IAAI,WACb8mG,SAAS9mG,IAAI,UAElBmmO,GAAU1qR,KAAKqrJ,SAAS8xG,YAAAA,KACnB9xG,SAAS9mG,IAAI,WACb8mG,SAAS9mG,IAAI,uBACb8mG,SAAS9mG,IAAI,QAAUztB,GAAO,UAC9Bu0H,SAAS9mG,IAAI,WACb8mG,SAAS9mG,IAAI,kBAEf8mG,SAASxtB,OAAO+7D,UAAU,cAAc,oBACvC6wF,SAAAA,IAA4BC,IAAAA,KACzBr/H,SAAS9mG,IAAI,wBAA0BkmO,GAAa,aAGtDzqR,IAAAA,EK/CX,SAAUsxQ,GAAAA,IAGJ+oB,EAGJ/oB,EAASzzI,OAAOt/H,KAAK,CACnB,mBACA,eACMinR,EAAMxlR,KACNipB,EAAK,mBAgBLjpB,KAAKs6R,QAAQp8P,KAAKijD,SAAS/iF,OAAS,EAAG,IAAH,IAClCg1N,EAAQoyD,EAAI8U,QAAQ1+O,SAASkI,MAAM,QAC9B5lD,EAAI,EAAGA,EAAIk1N,EAAMh1N,OAAQF,IAAK,KACjCuyB,EAAO2iM,EAAMl1N,GACb69B,EAAI9S,EAAG67C,KAAKr0C,GAAAA,GACP,MAALsL,EAAW,KACTqhO,EAAMrhO,EAAE,GACZypP,EAAIn6H,SAASgyG,uBAAuBD,GAAAA,EAAK,CAE3CooB,EAAIn6H,SAASpzI,MAAMwY,EAAAA,CAAAA,GAMnBzwB,KAAKs6R,QAAQC,wBAAyB,KACpCC,EAAax6R,KAAKqrJ,SAASwsG,MAAMz5P,OAIjCq8R,EAAQ,OACHv8R,EAAI,EAAGA,EAAIs8R,EAAYt8R,IAAK,KAC/B0iD,EAAK4kO,EAAIn6H,SAAS8xG,YACtBs9B,EAAMl8R,KAAKqiD,GAAAA,IACP1Z,EAAOs+O,EAAIn6H,SAAS27G,YAAY9oQ,EAAI,GACxCsnR,EAAIn6H,SAASpzI,MACX,SAAWivB,EAAKs2N,MAAQ,0CAKxBk9B,EAAYlV,EAAIn6H,SAAS8xG,YACV,IAAnBqoB,EAAIn6H,SAASpzI,MAAM,gBACV/Z,EAAI,EAAGA,EAAIu8R,EAAMr8R,OAAQF,IAChCsnR,EAAIn6H,SAASpzI,MAAM,UAAY/Z,EAAI,GAAK,IAAMu8R,EAAMv8R,GAAK,QAE3DsnR,EAAIn6H,SAASpzI,MAAM,QAAS,UAM5BoiR,EAAW7U,EAAIn6H,SAAS8xG,YACxBqoB,EAAIn6H,SAASpzI,MAAM,aAAeyiR,EAAY,QAC9ClV,EAAIn6H,SAASpzI,MAAM,KAAM,cAK/Bq5P,EAASzzI,OAAOt/H,KAAK,CACnB,aACA,WACYyB,KACFs6R,QAAQp8P,KAAKijD,SAAS/iF,OAAS,IAD7B4B,KAEJqrJ,SAASpzI,MACX,YACAjY,KAAKs6R,QAAQK,QAAQ36R,KAAKs6R,QAAQp8P,OAEhCl+B,KAAKs6R,QAAQC,yBANTv6R,KAOFqrJ,SAASpzI,MAAM,UAAYoiR,EAAW,YAQlD/oB,EAASzzI,OAAOt/H,KAAK,CACnB,cACA,eACMinR,EAAMxlR,KAEVwlR,EAAI8U,QAAU,CACZC,yBAAyB,EACzBr8P,KAAM,CACJijD,SAAU,KAOdqkM,EAAI8U,QAAQ/0P,IAAM,SAASrrB,EAAQsrG,EAAO93G,GAAAA,IACpCy9B,EAAO,CACTq6E,MAAOA,EACP93G,QAASA,EACTyzE,SAAU,WAEE,MAAVjnE,IACFA,EAASla,KAAKk+B,MAEhBhkB,EAAOinE,SAAS5iF,KAAK4sC,GACdA,CAAAA,EAGTq6O,EAAI8U,QAAQ1+O,OAAS,uBACdjkB,IAAM,CAAC,EAAD,KACNA,IAAIi3B,IAAM,QACVj3B,IAAI6tP,IAAMA,EAAAA,KAEVoV,SAAS56R,KAAKk+B,MAAAA,KACd28P,WAAW76R,KAAKk+B,MAAAA,KAChB48P,YAAY96R,KAAKk+B,MAEfl+B,KAAK23B,IAAIi3B,GAAAA,EAGlB42N,EAAI8U,QAAQM,SAAW,SAASz2R,GAC9BA,EAAKy8C,GAAK4kO,EAAIn6H,SAAS6sG,oBAAAA,IAClB,IAAIh6P,EAAI,EAAGA,EAAIiG,EAAKg9E,SAAS/iF,OAAQF,IAAAA,KACnC08R,SAASz2R,EAAKg9E,SAASjjF,GAAAA,EAIhCsnR,EAAI8U,QAAQO,WAAa,SAAS12R,GAAAA,KAC3B42R,SAAS52R,GAAAA,KACTssB,KAAK,mBACNtsB,EAAKg9E,SAAS/iF,OAAS,SACpBqyB,KAAK,UAAYzwB,KAAK26R,QAAQx2R,EAAKg9E,SAAS,UAC5C1wD,KACH,SAAWzwB,KAAK26R,QAAQx2R,EAAKg9E,SAASh9E,EAAKg9E,SAAS/iF,OAAS,WAG5DqyB,KACH,UACEzwB,KAAKg7R,QACH,CACExtR,MAAO,GAETrJ,IAAAA,KAGD82R,QAAAA,EAGPzV,EAAI8U,QAAQQ,YAAc,SAAS32R,GAAAA,IAAAA,IAC7B4pQ,EAA8B/tQ,KAAK23B,IAAI6tP,IAAIn6H,SAC5C0iH,4BACM7vQ,EAAI,EAAGA,EAAIiG,EAAKg9E,SAAS/iF,OAAQF,IAAK,KACzCitC,EAAOhnC,EAAKg9E,SAASjjF,GAAAA,KACpB68R,SAAS5vP,GAAAA,KAET1a,KAAK,UAAYzwB,KAAKk7R,WAAW/vP,EAAKq6E,QAAAA,KAEtC/0F,KAAK,WAAazwB,KAAK26R,QAAQx2R,IAChCjG,EAAI,QACDuyB,KAAK,SAAWzwB,KAAK26R,QAAQx2R,EAAKg9E,SAASjjF,EAAI,KAElDA,EAAIiG,EAAKg9E,SAAS/iF,OAAS,QACxBqyB,KAAK,SAAWzwB,KAAK26R,QAAQx2R,EAAKg9E,SAASjjF,EAAI,KAElDitC,EAAKg2C,SAAS/iF,OAAS,SACpBqyB,KAAK,UAAYzwB,KAAK26R,QAAQxvP,EAAKg2C,SAAS,UAC5C1wD,KACH,SAAWzwB,KAAK26R,QAAQxvP,EAAKg2C,SAASh2C,EAAKg2C,SAAS/iF,OAAS,UAI7DoP,EAASxN,KAAKwN,MAAQxN,KAAKg7R,QAC7B,CACExtR,MAAO,GAET29B,GAAAA,GAEE39B,EAAQ,QACLijB,KAAK,UAAYjjB,GAGpB29B,EAAKz9B,SACHy9B,EAAKz9B,QAAQ0xP,WAAY,KAGvBl4N,EAAOs+O,EAAIn6H,SAAS27G,YAAY77N,EAAKz9B,QAAQ0xP,YAAAA,KAC5C3uO,KACH,UAEEyW,EAAKs2N,MACL,eACAuQ,EAA4B,GAC5B,YAcHktB,QAAAA,CAAAA,IAEF,IAAI5pR,EAAI,EAAGA,EAAIlN,EAAKg9E,SAAS/iF,OAAQiT,IAAAA,KACnCypR,YAAY32R,EAAKg9E,SAAS9vE,GAAAA,EAInCm0Q,EAAI8U,QAAQ7pQ,KAAO,SAASqG,GAAAA,KACrBa,IAAIi3B,KAAO93B,EAAO,QAGzB0uP,EAAI8U,QAAQK,QAAU,SAASx2R,GAAAA,OACtBA,EAAKy8C,GAAK,QAGnB4kO,EAAI8U,QAAQY,WAAa,SAAStsO,GAAAA,MACzB,IAAM42N,EAAIn6H,SAAS64G,UAAUt1M,GAAO,KAG7C42N,EAAI8U,QAAQS,SAAW,SAAS52R,GAAAA,KACzBwzB,IAAIi3B,KAAO,OAASzqD,EAAKy8C,GAAd,oBAGlB4kO,EAAI8U,QAAQW,OAAS,gBACdtjQ,IAAIi3B,KAAO,qBAGlB42N,EAAI8U,QAAQU,QAAU,SAASrjQ,EAAKxzB,GAAAA,IAC7B,IAAIjG,EAAI,EAAGA,EAAIiG,EAAKg9E,SAAS/iF,OAAQF,IACxCy5B,EAAInqB,QAAAA,KACCwtR,QAAQrjQ,EAAKxzB,EAAKg9E,SAASjjF,IAAAA,OAE3By5B,EAAInqB,KAAAA,CAAAA,GAAAA,CA3PnB,CAiQGqkP,GAAMY,KCnQT,SAAU6e,GAAAA,IAaJ6pB,EAAU,CAAC,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,KA6BzD7pB,EAAS8pB,YAAc,SACrBnzR,EACAvC,EACA0iD,EACA64N,EACAE,EACAzE,GAAAA,IAIE2B,EAFExjQ,EAAS7a,KAAKgG,OAAOm5Q,WAGvB59Q,EAAS,QAGO,iBAAT0G,GACPjI,KAAKu7Q,aAAamF,cAAcz4Q,IAChCjI,KAAKu7Q,aAAaiB,kBAAkBv0Q,GACpC,QAEAA,EAAOk5Q,GAAsBl5Q,EAC7BA,EAAOjI,KAAKu7Q,aAAamF,cAAcz4Q,GACnC,IAAIlC,WAAWkC,GACfA,GAKJo2Q,EAnDc,SAASoa,GAAAA,IAAAA,IACdp1R,EACPg4R,EAAsC,IAAxB5C,EAAQpzR,WAAW,GAAWozR,EAAQpzR,WAAW,GAC/DkB,EAAMkyR,EAAQr6R,OACdmD,EAAS,CAAE6B,MAAO,EAAGC,OAAQ,EAAGi4R,cAAe,GAC1Cp9R,EAAI,EAAGA,EAAIqI,EAAKrI,GAAK,EAAG,IAC/BA,GAAKm9R,GAC+C,IAAhDF,EAAQ3uR,QAAQisR,EAAQpzR,WAAWnH,EAAI,IAAY,CACrDmF,EAAqC,IAA5Bo1R,EAAQpzR,WAAWnH,EAAI,GAAWu6R,EAAQpzR,WAAWnH,EAAI,GAGlEqD,EAAS,CAAE6B,MAFyB,IAA5Bq1R,EAAQpzR,WAAWnH,EAAI,GAAWu6R,EAAQpzR,WAAWnH,EAAI,GAExCmF,OAAQA,EAAQi4R,cADzB7C,EAAQpzR,WAAWnH,EAAI,UAIvCm9R,EAC8B,IAA5B5C,EAAQpzR,WAAWnH,EAAI,GAAWu6R,EAAQpzR,WAAWnH,EAAI,UAGxDqD,CAAAA,CAlBS,CA+Cd0G,EAAOjI,KAAKu7Q,aAAaiB,kBAAkBv0Q,GACvCjI,KAAKu7Q,aAAa6B,0BAA0Bn1Q,GAC5CA,IAGSqzR,eAAAA,KACN,EACH5e,EAAa18Q,KAAK28Q,aAAagC,YAAAA,MAAAA,KAE5B,EACHjC,EAAa18Q,KAAK28Q,aAAaI,YAAAA,MAAAA,KAE5B,EACHL,EAAa18Q,KAAK28Q,aAAa+B,WAInCn9Q,EAAS,CACP0G,KAAMA,EACN7E,MAAOi7Q,EAAKj7Q,MACZC,OAAQg7Q,EAAKh7Q,OACbq5Q,WAAYA,EACZM,iBApCI,EAqCJniQ,OAAQA,EACRnV,MAAOA,EACP0iD,MAAOA,EAAAA,CAAAA,OAGJ7mD,CAAAA,CAAAA,CA7FX,CA+FGswP,GAAMY,KCnFT,ICOUA,GAYJ8oC,GAyEA1xB,GA4BA2xB,GAmCAC,GD3JF/f,GAAO,eAMPggB,EACAC,EACAC,EAAAA,SAYOlgB,EAAIzzQ,GAAAA,IACP4zR,EACF31G,EACA41G,EACAC,EACAC,EACA9wG,EAEAxlL,EACA1G,EACAk2O,EACA+mD,EACAnlQ,EACAtxB,EACAi3C,EACAooG,EAAAA,IAAAA,KACG58I,KAAOA,EAAAA,KACPo5D,IAAM,OACNw7M,QAAU,QACV4b,QAAU,QACVvb,aAAe,CAAC,EAAD,KACfzjL,UAAY,UACZ3iE,KAAO,CAAC,EACbo0J,EAAQ,OACK,QACX2wG,EAAY77R,KAAKk8R,aACjBhnD,EAAU,eACJ1vO,EAAI22R,EAAAA,IACRA,EAAW,GACF32R,EAAK,EAAGA,EAAK,IAASA,EAC7B22R,EAAS59R,KAAKuB,OAAO8F,aAAa5F,KAAKiI,KAAKjI,KAAKqhE,SAAAA,OAE5C86N,CAAAA,EAENl9R,KAAKe,MACLd,KAAK,SAED,YACEkE,MAAQpD,KAAKk8R,aAAAA,KACb74R,OAASrD,KAAKk8R,aAAAA,KACd/+C,KAAOn9O,KAAKiI,KAAKjI,KAAKqhE,OAAAA,KACtBh7C,UAAYrmB,KAAKiI,KAAKjI,KAAKqhE,OAAAA,KAC3B+6N,kBAAoBp8R,KAAKiI,KAAKjI,KAAKqhE,OAAAA,KACnCypD,aAAe9qH,KAAKiI,KAAKjI,KAAKqhE,OAAAA,KAC9Bg7N,gBAAkBr8R,KAAKiI,KAAKjI,KAAKqhE,OAAAA,MAAAA,IAEnC,YACEo4B,UAAY,CACf6iM,UAAWt8R,KAAKk8R,aAChBK,SAAUv8R,KAAKk8R,cAAgBpzQ,IAC/B0zQ,OAAQ,cAGP,YACE3f,QAAU78Q,KAAKkY,KAAK2jR,GAAAA,MAAAA,IAEtB,OACC3wG,GAAAA,KACGzxF,UAAU+iM,OAAOj+R,KAAK2sL,GAAAA,KAExB7pH,KAAO,EACZ6pH,EAAQ,CACN9nL,MAAOpD,KAAKk8R,aACZ74R,OAAQrD,KAAKk8R,aACbO,QAASz8R,KAAKk8R,aACd/K,QAASnxR,KAAKk8R,cAEhBF,EAAWh8R,KAAK08R,aAChBX,EAAW/7R,KAAK08R,cAAgB,IAChCxxG,EAAM9mD,MAAS,IAAO43J,EAAYD,EAClC7wG,EAAMyxG,UAAY38R,KAAKiI,KAAKjI,KAAKqhE,OACjC6pH,EAAM0xG,QAAU58R,KAAKiI,KAAKjI,KAAKqhE,OAC/B6pH,EAAMjjL,KAAO,aAEV,WACA,WACa,SAAZitO,IAAAA,KACG7zK,KAAO,EACZw6N,GAAa,GAEf5zR,GAAiB,MAATijL,EAAgBA,EAAMjjL,UAAO,IAAWjI,KAAKy4R,QAE/CjzR,EAAK,EACT,GAAKq2R,EAAYr2R,EAAKq2R,EAAYr2R,EAAKq2R,EACnC,GAAKA,IAAcr2R,IAAOA,EAE9ByC,EAAK1J,KAAKyB,KAAKiI,KAAKjI,KAAKqhE,QAAAA,MAAAA,IAGxB,mBACE67M,aAAe,CAAC,EACbl9Q,KAAKqmB,WAAAA,KACN,KACHy1Q,EAAS97R,KAAK68Q,QAAQz+Q,OAAS,OAC1B8+Q,aAAa2f,QAAU78R,KAAKkY,KAAK2jR,GAClC77R,KAAKk9Q,aAAa2f,QAAQz+R,OAAS09R,EACrC,MAAM,IAAIr3R,MAAM,iDAKlBw3R,EAAWH,EAAS97R,KAAKk9Q,aAAa2f,QAAQz+R,QAC/B,EAAG,IAEVq+C,EAAK,EACT,GAAKw/O,EAAWx/O,EAAKw/O,EAAWx/O,EAAKw/O,EACjC,GAAKA,IAAax/O,IAAOA,EAAAA,KAExBygO,aAAa2f,QAAQt+R,KAAK,gBAIhC,OACE2+Q,aAAa4f,UAAY98R,KAAKkY,KAAK2jR,GAAW,cAEhD,OACE3e,aAAajhQ,IAAMjc,KAAKkY,KAAK2jR,GAAAA,MAAAA,IAGnC,OAEHn2R,GADAoxB,EAAO92B,KAAKkY,KAAK2jR,IACJrvR,QAAQ,GACrBxN,EAAMc,OAAO8F,aAAajH,MAAMmB,OAAQg3B,EAAK9zB,MAAM,EAAG0C,IAAAA,KACjDoxB,KAAK93B,GAAOc,OAAO8F,aAAajH,MACnCmB,OACAg3B,EAAK9zB,MAAM0C,EAAQ,cAGlB,cACCwlL,GAAAA,KACGzxF,UAAU+iM,OAAOj+R,KAAK2sL,GAAAA,KAExBhF,OAAS,kBACJlmL,KAAKqmB,WAAAA,KACN,OACA,OACA,SACI,OACJ,OACA,SACI,IAEXpnB,KAAKe,MAAAA,KACF+8R,gBAA8C,KAA3Bl4I,EAAO7kJ,KAAKqmB,YAA6B,IAATw+H,EACxDqhC,EAASlmL,KAAKkmL,QAAUlmL,KAAK+8R,gBAAkB,EAAI,QAC9CC,eAAiBh9R,KAAKm9O,KAAOj3D,EAAAA,KAC7Bw2F,WAAa,kBACR18Q,KAAKkmL,QAAAA,KACN,QACI,kBACJ,QACI,cAEXjnL,KAAKe,WAAAA,KACFy4R,QAAU,IAAI1yR,WAAW/F,KAAKy4R,UAAAA,QAAAA,KAG9Bp3N,KAAOw6N,EAAAA,GAAAA,KAEXx6N,KAAO,EACRrhE,KAAKqhE,IAAMrhE,KAAKiI,KAAK7J,OAAQ,MACzB,IAAIqG,MAAM,mCAKtBi3Q,EAAI58Q,UAAUoZ,KAAO,SAASxR,GAAAA,IACrBlB,EAAI22R,EAAAA,IACXA,EAAW,GAEL32R,EAAK,EACT,GAAKkB,EAAQlB,EAAKkB,EAAQlB,EAAKkB,EAC3B,GAAKA,IAAUlB,IAAOA,EAE1B22R,EAAS59R,KAAKyB,KAAKiI,KAAKjI,KAAKqhE,QAAAA,OAExB86N,CAAAA,EAGTzgB,EAAI58Q,UAAUo9R,WAAa,kBAEpBl8R,KAAKiI,KAAKjI,KAAKqhE,QAAU,GACzBrhE,KAAKiI,KAAKjI,KAAKqhE,QAAU,GACzBrhE,KAAKiI,KAAKjI,KAAKqhE,QAAU,EACzBrhE,KAAKiI,KAAKjI,KAAKqhE,MAAAA,EAItBq6M,EAAI58Q,UAAU49R,WAAa,kBAEpB18R,KAAKiI,KAAKjI,KAAKqhE,QAAU,EACzBrhE,KAAKiI,KAAKjI,KAAKqhE,MAAAA,EAItBq6M,EAAI58Q,UAAUm+R,aAAe,SAASh1R,GAAAA,IAChCi1R,EAAal9R,KAAKg9R,eAAiB,EACnCG,EAAa,IAAIp3R,WAAW/F,KAAKoD,MAAQpD,KAAKqD,OAAS65R,GACvD77N,EAAM,EACNllC,EAAQn8B,KAAAA,GAEA,MAARiI,IACFA,EAAOjI,KAAKy4R,SAEM,IAAhBxwR,EAAK7J,OAAAA,OACA,IAAI2H,WAAW,YAIfq3R,EAAK1/O,EAAIE,EAAIy3O,EAAIC,GAAAA,IACpB+H,EACFxqR,EACAkyE,EACA7mF,EACAgF,EACA9E,EACAuB,EACAo9E,EACAugN,EACAr7M,EACA0H,EACA2/G,EACApqF,EACAq+K,EACAC,EACAC,EACAj4R,EACAi3C,EACAG,EACAD,EACAG,EACEt5C,EAAIkB,KAAKwD,MAAMi0B,EAAM/4B,MAAQs6C,GAAM23O,GACrC5xR,EAAIiB,KAAKwD,MAAMi0B,EAAM94B,OAASu6C,GAAM03O,GAClCoI,EAASvhQ,EAAM/4B,OAASI,GAAK24B,EAAM94B,QAAUI,EAAAA,IACjD85R,EAAiBL,EAAa15R,EAC9B8lM,EAASo0F,EAASP,EAAa,IAAIp3R,WAAWw3R,EAAiB95R,GAC/DrF,EAAS6J,EAAK7J,OACd8gH,EAAM,EACNrsG,EAAI,EACGqsG,EAAMz7G,GAAK49D,EAAMjjE,GAAQ,QACtB6J,EAAKo5D,MAAAA,KACN,MACEnjE,EAAIsH,EAAK,EAAGA,EAAK+3R,EAAgBr/R,EAAIsH,GAAM,EAC9C8jM,EAAOz2L,KAAO5K,EAAKo5D,KAAAA,MAAAA,KAGlB,MACEnjE,EAAIu+C,EAAK,EAAGA,EAAK8gP,EAAgBr/R,EAAIu+C,GAAM,EAC9C4gP,EAAQp1R,EAAKo5D,KACbn+D,EAAOhF,EAAIg/R,EAAa,EAAI5zF,EAAOz2L,EAAIqqR,GACvC5zF,EAAOz2L,MAAQwqR,EAAQn6R,GAAQ,eAG9B,MACEhF,EAAI0+C,EAAK,EAAGA,EAAK2gP,EAAgBr/R,EAAI0+C,GAAM,EAC9CygP,EAAQp1R,EAAKo5D,KACb0jB,GAAO7mF,EAAKA,EAAIg/R,GAAeA,EAC/BM,EACEt+K,GACAoqF,GACGpqF,EAAM,GAAKq+K,EACVx4M,EAAMm4M,EACLh/R,EAAIg/R,GAEX5zF,EAAOz2L,MAAQ2qR,EAAQH,GAAS,eAG/B,MACEn/R,EAAIy+C,EAAK,EAAGA,EAAK4gP,EAAgBr/R,EAAIy+C,GAAM,EAC9C0gP,EAAQp1R,EAAKo5D,KACb0jB,GAAO7mF,EAAKA,EAAIg/R,GAAeA,EAC/Bh6R,EAAOhF,EAAIg/R,EAAa,EAAI5zF,EAAOz2L,EAAIqqR,GACvCM,EACEt+K,GACAoqF,GACGpqF,EAAM,GAAKq+K,EACVx4M,EAAMm4M,EACLh/R,EAAIg/R,GAEX5zF,EAAOz2L,MAAQwqR,EAAQ34R,KAAKi+B,OAAOz/B,EAAOs6R,GAAS,IAAM,eAGxD,MACEt/R,EAAI4+C,EAAK,EAAGA,EAAKygP,EAAgBr/R,EAAI4+C,GAAM,EAC9CugP,EAAQp1R,EAAKo5D,KACb0jB,GAAO7mF,EAAKA,EAAIg/R,GAAeA,EAC/Bh6R,EAAOhF,EAAIg/R,EAAa,EAAI5zF,EAAOz2L,EAAIqqR,GAC3B,IAARh+K,EACFs+K,EAAQC,EAAY,GAEpBD,EACEl0F,GACGpqF,EAAM,GAAKq+K,EACVx4M,EAAMm4M,EACLh/R,EAAIg/R,GAEXO,EACE14M,GACAukH,GACGpqF,EAAM,GAAKq+K,GACTx4M,EAAM,GAAKm4M,EACXh/R,EAAIg/R,IAGbv9R,EAAIuD,EAAOs6R,EAAQC,EACnB1gN,EAAKr4E,KAAKkjB,IAAIjoB,EAAIuD,GAClB++E,EAAKv9E,KAAKkjB,IAAIjoB,EAAI69R,GAClB7zM,EAAKjlF,KAAKkjB,IAAIjoB,EAAI89R,GAEhBH,EADEvgN,GAAMkF,GAAMlF,GAAM4M,EACZzmF,EACC++E,GAAM0H,EACP6zM,EAEAC,EAEVn0F,EAAOz2L,MAAQwqR,EAAQC,GAAS,wBAI5B,IAAI74R,MAAM,6BAA+BwD,EAAKo5D,EAAM,QAEzDq8N,EAAQ,KACPC,IAAY//O,EAAKshE,EAAMo2K,GAAMn5P,EAAM/4B,MAAQs6C,GAAMw/O,EACjDU,EAAU1+K,EAAMq+K,EAAAA,IACfr/R,EAAI,EAAGA,EAAIsF,EAAGtF,GAAK,EAAG,KACpB,IAAIyoD,EAAI,EAAGA,EAAIu2O,EAAYv2O,GAAK,EACnCw2O,EAAWQ,KAAar0F,EAAOs0F,KACjCD,IAAYtI,EAAK,GAAK6H,CAAAA,CAAAA,CAG1Bh+K,GAAAA,CAAAA,CAAAA,OA1HJj3G,EAAO87O,GAAW97O,GA6HW,GAAzBk0B,EAAMkgQ,iBAWRe,EAAK,EAAG,EAAG,EAAG,GAMdA,EAAK,EAAG,EAAG,EAAG,GACdA,EAAK,EAAG,EAAG,EAAG,GAEdA,EAAK,EAAG,EAAG,EAAG,GACdA,EAAK,EAAG,EAAG,EAAG,GAEdA,EAAK,EAAG,EAAG,EAAG,GACdA,EAAK,EAAG,EAAG,EAAG,IAEdA,EAAK,EAAG,EAAG,EAAG,GAETD,CAAAA,EAGTzhB,EAAI58Q,UAAU++R,cAAgB,eACxBhrR,EAAG3U,EAAW2+Q,EAASx7M,EAAKqM,EAAKwvM,EAAc13Q,EAAIq/I,EAAMi5I,EAAAA,IAC7DjhB,EAAU78Q,KAAK68Q,QACfK,EAAel9Q,KAAKk9Q,aAAa2f,SAAW,GAC5CnvN,EAAM,IAAI3nE,YAAYm3Q,EAAa9+Q,QAAU,GAAKy+Q,EAAQz+Q,QAC1DijE,EAAM,EAENxuD,EAAI,EACC3U,EAAIsH,EAAK,EAAGq/I,EAFRg4H,EAAQz+Q,OAEeoH,EAAKq/I,EAAM3mJ,EAAIsH,GAAM,EACnDkoE,EAAIrM,KAASw7M,EAAQ3+Q,GACrBwvE,EAAIrM,KAASw7M,EAAQ3+Q,EAAI,GACzBwvE,EAAIrM,KAASw7M,EAAQ3+Q,EAAI,GACzBwvE,EAAIrM,KAAwC,OAA9By8N,EAAQ5gB,EAAarqQ,MAAgBirR,EAAQ,WAEtDpwN,CAAAA,EAGTguM,EAAI58Q,UAAUi/R,gBAAkB,SAAS5hB,EAAW7yE,GAAAA,IAC9C3tL,EAAOuqK,EAAQj+K,EAAM/J,EAAGo/B,EAAOqpB,EAAGmF,EAAG1tD,EAAQy+Q,EAASt6Q,EAAGsiJ,EAAAA,GAC7DqhC,EAASlmL,KAAKkmL,OACd22F,EAAU,KACVlhQ,EAAQ3b,KAAK+8R,gBACT/8R,KAAK68Q,QAAQz+Q,SACfy+Q,EACmC,OAAhCh4H,EAAO7kJ,KAAKg+R,iBACTn5I,EACC7kJ,KAAKg+R,gBAAkBh+R,KAAK69R,gBACnC33G,EAAS,EACTvqK,GAAAA,GAGFvd,GADA6J,EAAOk0Q,EAAUl0Q,MAAQk0Q,GACX/9Q,OACdk/B,EAAQu/O,GAAWvzE,EACnBprM,EAAIyoD,EAAI,EACO,IAAXu/H,EAAAA,KACKhoL,EAAIE,GACT0tD,EAAI+wN,EAA0B,EAAhBvzE,EAAOprM,EAAI,GAASyoD,EAClCpkD,EAAI+6B,EAAMwuB,KACV7jD,EAAK/J,KAAOqE,EACZ0F,EAAK/J,KAAOqE,EACZ0F,EAAK/J,KAAOqE,EACZ0F,EAAK/J,KAAOyd,EAAQ2hB,EAAMwuB,KAAO,IACjCnF,EAAImF,OAAAA,KAGC5tD,EAAIE,GACT0tD,EAAI+wN,EAA0B,EAAhBvzE,EAAOprM,EAAI,GAASyoD,EAClC1+C,EAAK/J,KAAOo/B,EAAMwuB,KAClB7jD,EAAK/J,KAAOo/B,EAAMwuB,KAClB7jD,EAAK/J,KAAOo/B,EAAMwuB,KAClB7jD,EAAK/J,KAAOyd,EAAQ2hB,EAAMwuB,KAAO,IACjCnF,EAAImF,CAAAA,EAKV4vN,EAAI58Q,UAAUkH,OAAS,eACjB0nE,EAAAA,OACJA,EAAM,IAAI3nE,WAAW/F,KAAKoD,MAAQpD,KAAKqD,OAAS,QAC3C06R,gBAAgBrwN,EAAK1tE,KAAKi9R,gBACxBvvN,CAAAA,EAAAA,IAGLuwN,EAAmB,cACgC,oBAAjDp/R,OAAOC,UAAUF,SAASK,KAAK+kP,IAAqC,KAEpE23C,EAAgB33C,GAAaz/O,SAASwxB,cAAc,UACpD6lQ,EAAaD,EAAc/jQ,WAAW,KAE/B,CADP,MAAOv2B,GAAAA,OAAAA,CACA,SAEF,SAEF,SAGT48R,IAEAvC,EAAY,SAASvf,GAAAA,IAEb1kP,EAAAA,IAAAA,IADFwmQ,IAAAA,OAEFrC,EAAWx4R,MAAQ+4Q,EAAU/4Q,MAC7Bw4R,EAAWv4R,OAAS84Q,EAAU94Q,OAC9Bu4R,EAAWhN,UAAU,EAAG,EAAGzS,EAAU/4Q,MAAO+4Q,EAAU94Q,QACtDu4R,EAAWt0P,aAAa60O,EAAW,EAAG,IACtC1kP,EAAM,IAAIN,OACNU,IAAM8jQ,EAAc5jQ,YACjBN,EAAAA,MAEH,IAAIhzB,MAAM,2DAGlBi3Q,EAAI58Q,UAAUo/R,aAAe,SAASvmQ,GAAAA,IAChCuzJ,EAAOhtL,EAAGi+Q,EAAW7yE,EAAQ9jM,EAAI24R,EAAMt5I,EAAMs3I,EAAAA,GAC5Cn8R,KAAKy5F,UAAW,CAAXA,IAIV0iM,EAAW,GACNj+R,EAAIsH,EAAK,EAAG24R,GAFjBt5I,EAAO7kJ,KAAKy5F,UAAU+iM,QAEOp+R,OAAQoH,EAAK24R,EAAMjgS,IAAMsH,EACpD0lL,EAAQrmC,EAAK3mJ,GACbi+Q,EAAYxkP,EAAIymQ,gBAAgBlzG,EAAM9nL,MAAO8nL,EAAM7nL,QACnDimM,EAAStpM,KAAKi9R,aAAa,IAAIl3R,WAAWmlL,EAAMjjL,OAAAA,KAC3C81R,gBAAgB5hB,EAAW7yE,GAChCpe,EAAMixF,UAAYA,EAClBggB,EAAS59R,KAAM2sL,EAAM1gK,MAAQkxQ,EAAUvf,IAAAA,OAElCggB,CAAAA,CAAAA,EAGTzgB,EAAI58Q,UAAUu/R,YAAc,SAAS1mQ,EAAKjgB,GAAAA,IACpCwzK,EAAOsxG,EAAQ/vR,EAAAA,OAEnBy+K,GADAsxG,EAASx8R,KAAKy5F,UAAU+iM,QACT9kR,GACfjL,EAAO+vR,EAAO9kR,EAAS,GACR,IAAXA,GACFigB,EAAIi3P,UAAU,EAAG,EAAG5uR,KAAKoD,MAAOpD,KAAKqD,QAxeZ,KA2ehB,MAARoJ,EAAeA,EAAKkwR,eAAY,GAEjChlQ,EAAIi3P,UAAUniR,EAAKgwR,QAAShwR,EAAK0kR,QAAS1kR,EAAKrJ,MAAOqJ,EAAKpJ,QA3epC,KA6ed,MAARoJ,EAAeA,EAAKkwR,eAAY,IAEjChlQ,EAAI2P,aAAa76B,EAAK0vQ,UAAW1vQ,EAAKgwR,QAAShwR,EAAK0kR,SA7ejC,IA+ejBjmG,EAAM0xG,SACRjlQ,EAAIi3P,UAAU1jG,EAAMuxG,QAASvxG,EAAMimG,QAASjmG,EAAM9nL,MAAO8nL,EAAM7nL,QAE1Ds0B,EAAIG,UAAUozJ,EAAM1gK,MAAO0gK,EAAMuxG,QAASvxG,EAAMimG,QAAAA,EAGzDzV,EAAI58Q,UAAUmwK,QAAU,SAASt3I,GAAAA,IAC3B2mQ,EACFC,EACA/B,EACAF,EACAC,EACA13I,EACA1oH,EAAQn8B,KAAAA,OACVu+R,EAAc,EACb15I,EAAO7kJ,KAAKy5F,UACV6iM,EAAYz3I,EAAKy3I,UACjBE,EAAS33I,EAAK23I,OACdD,EAAW13I,EAAK03I,UACX+B,EAAU,eACZ18R,EAAGspL,EAAAA,GACPtpL,EAAI28R,IAAgBjC,EACpBpxG,EAAQsxG,EAAO56R,GACfu6B,EAAMkiQ,YAAY1mQ,EAAK/1B,GACnB06R,EAAY,GAAKiC,EAAcjC,EAAYC,EAAAA,OACrCpgQ,EAAMs9D,UAAU+kM,SAAWnxP,WAAWixP,EAASpzG,EAAM9mD,MAAAA,IAAAA,EAKnEs3I,EAAI58Q,UAAUi2L,cAAgB,eACxBlwC,EAAAA,OACGnoD,aACsB,OAA1BmoD,EAAO7kJ,KAAKy5F,WAAqBorD,EAAK25I,cAAW,IAItD9iB,EAAI58Q,UAAU88C,OAAS,SAASlkB,GAAAA,IAC1BC,EAAK1vB,EAAAA,OACLyvB,EAAO+mQ,MACT/mQ,EAAO+mQ,KAAK1pG,gBAEdr9J,EAAO+mQ,KAAOz+R,KACd03B,EAAOt0B,MAAQpD,KAAKoD,MACpBs0B,EAAOr0B,OAASrD,KAAKqD,OACrBs0B,EAAMD,EAAOE,WAAW,MACpB53B,KAAKy5F,WAAAA,KACFykM,aAAavmQ,GACX33B,KAAKivK,QAAQt3I,KAEpB1vB,EAAO0vB,EAAIymQ,gBAAgBp+R,KAAKoD,MAAOpD,KAAKqD,QAAAA,KACvC06R,gBAAgB91R,EAAMjI,KAAKi9R,gBACzBtlQ,EAAI2P,aAAar/B,EAAM,EAAG,KAI9ByzQ,CAAAA,CAvjBE,GEwYX,SAASgjB,GAAUhhD,GAAAA,IACb/9O,EAAI,KAIO,KAAb+9O,EAAI/9O,MACS,KAAb+9O,EAAI/9O,MACS,KAAb+9O,EAAI/9O,MACS,KAAb+9O,EAAI/9O,MACwB,KAA1B+9O,EAAI/9O,KAAO,EAAK,MACL,KAAb+9O,EAAI/9O,KAAAA,MAEE,IAAI8E,MAAM,mCAIdrB,EAAQs6O,EAAI/9O,KAAQ+9O,EAAI/9O,MAAQ,EAChC0D,EAASq6O,EAAI/9O,KAAQ+9O,EAAI/9O,MAAQ,EACjCg/R,EAAMjhD,EAAI/9O,KACVi/R,EAAsBD,GAAO,EAE7BE,EAAoB,GAA+B,GADpB,EAANF,GAEZjhD,EAAI/9O,KACrB+9O,EAAI/9O,KAAAA,IAEAm/R,EAAwB,KACxBC,EAAsB,KAEtBH,IACFE,EAAwBn/R,EACxBo/R,EAAsBF,EACtBl/R,GAAyB,EAApBk/R,GAAAA,IAGHG,GAAAA,EAEAxC,EAAS,GAETp4J,EAAQ,EACR66J,EAAoB,KACpBC,EAAW,EACXC,EAAa,cAEZ/7R,MAAQA,EAAAA,KACRC,OAASA,EAEP27R,GAAUr/R,EAAI+9O,EAAIt/O,QAAAA,OACfs/O,EAAI/9O,MAAAA,KACL,UACK+9O,EAAI/9O,MAAAA,KACL,OAGU,KAAX+9O,EAAI/9O,IAEW,IAAd+9O,EAAI/9O,EAAI,IACO,IAAd+9O,EAAI/9O,EAAI,IACM,IAAd+9O,EAAI/9O,EAAI,IACM,IAAd+9O,EAAI/9O,EAAI,IACM,IAAd+9O,EAAI/9O,EAAI,IACM,IAAd+9O,EAAI/9O,EAAI,IACM,IAAd+9O,EAAI/9O,EAAI,IACM,IAAd+9O,EAAI/9O,EAAI,IACM,IAAd+9O,EAAI/9O,EAAI,IACO,IAAf+9O,EAAI/9O,EAAI,KACO,IAAf+9O,EAAI/9O,EAAI,KAEO,GAAf+9O,EAAI/9O,EAAI,KACO,GAAf+9O,EAAI/9O,EAAI,KACO,GAAf+9O,EAAI/9O,EAAI,IAEVA,GAAK,GACLw/R,EAAazhD,EAAI/9O,KAAQ+9O,EAAI/9O,MAAQ,EACrCA,SAAAA,IAGAA,GAAK,KACQ,OAEPy/R,EAAa1hD,EAAI/9O,OAED,GAAI,MAAM8E,MAAM,yBACjB,IAAf26R,EAAkB,MACtBz/R,GAAKy/R,CAAAA,CAAAA,MAAAA,KAKN,OACc,IAAb1hD,EAAI/9O,MAA+B,IAAf+9O,EAAI/9O,EAAI,GAC9B,MAAM,IAAI8E,MAAM,yCACd46R,EAAM3hD,EAAI/9O,KACdykI,EAAQs5G,EAAI/9O,KAAQ+9O,EAAI/9O,MAAQ,EAChCs/R,EAAoBvhD,EAAI/9O,KACN,IAAP,EAAN0/R,KAAgBJ,EAAoB,MACzCC,EAAYG,GAAO,EAAK,EACxB1/R,IAAAA,MAAAA,KAGG,WACU,OAEPy/R,EAAa1hD,EAAI/9O,OAED,GAAI,MAAM8E,MAAM,yBACjB,IAAf26R,EAAkB,MAEtBz/R,GAAKy/R,CAAAA,CAAAA,MAAAA,QAAAA,MAKD,IAAI36R,MACR,oCAAsCi5O,EAAI/9O,EAAI,GAAGf,SAAS,gBAK7D,OACC2E,EAAIm6O,EAAI/9O,KAAQ+9O,EAAI/9O,MAAQ,EAC5BkC,EAAI67O,EAAI/9O,KAAQ+9O,EAAI/9O,MAAQ,EAC5B6D,EAAIk6O,EAAI/9O,KAAQ+9O,EAAI/9O,MAAQ,EAC5B8D,EAAIi6O,EAAI/9O,KAAQ+9O,EAAI/9O,MAAQ,EAC5B2/R,EAAM5hD,EAAI/9O,KAEV4/R,EAAkBD,GAAO,EAAK,EAE9BE,EAAmB,GAA8B,GADnB,EAANF,GAExBG,EAAiBX,EACjBY,EAAeX,EACfY,GAAAA,EANqBL,GAAO,IAQ1BK,GAAAA,EACJF,EAAiB9/R,EACjB+/R,EAAeF,EACf7/R,GAAwB,EAAnB6/R,GAAAA,IAGHI,EAAcjgS,EAAAA,IAElBA,MACa,KACPy/R,EAAAA,MAAAA,EAAa1hD,EAAI/9O,OAED,GAAI,MAAM8E,MAAM,yBACjB,IAAf26R,EAAkB,MACtBz/R,GAAKy/R,CAAAA,CAGP5C,EAAOj+R,KAAK,CACVgF,EAAGA,EACH1B,EAAGA,EACHuB,MAAOI,EACPH,OAAQI,EACRk8R,kBAAmBA,EACnBF,eAAgBA,EAChBC,aAAcA,EACdE,YAAaA,EACbC,YAAalgS,EAAIigS,EACjBX,kBAAmBA,EACnBa,aAAcP,EACdn7J,MAAOA,EACP86J,SAAUA,IAAAA,MAAAA,KAIT,GACHF,GAAAA,EAAS,oBAIH,IAAIv6R,MAAM,wBAA0Bi5O,EAAI/9O,EAAI,GAAGf,SAAS,UAK/D09R,UAAY,kBACRE,EAAOp+R,MAAAA,EAAAA,KAGX2hS,UAAY,kBACRZ,CAAAA,EAAAA,KAGJa,UAAY,SAASC,GAAAA,GACpBA,EAAY,GAAKA,GAAazD,EAAOp+R,OACvC,MAAM,IAAIqG,MAAM,oCACX+3R,EAAOyD,EAAAA,EAAAA,KAGXC,uBAAyB,SAASD,EAAW32F,GAAAA,IAC5Cpe,EAAQlrL,KAAKggS,UAAUC,GACvBE,EAAaj1G,EAAM9nL,MAAQ8nL,EAAM7nL,OACjC+8R,EAAe,IAAIr6R,WAAWo6R,GAClCE,GACE3iD,EACAxyD,EAAM00G,YACNQ,EACAD,GAAAA,IAEEV,EAAiBv0G,EAAMu0G,eAKvBa,EAAQp1G,EAAM+zG,kBACJ,OAAVqB,IAAgBA,EAAQ,SAKxBC,EAAar1G,EAAM9nL,MACnBo9R,EAAcp9R,EAAQm9R,EACtBE,EAAQF,EAGRG,EAAsC,GAA7Bx1G,EAAMrpL,EAAIuB,EAAQ8nL,EAAM3nL,GACjCo9R,EAAuD,IAA7Cz1G,EAAMrpL,EAAIqpL,EAAM7nL,QAAUD,EAAQ8nL,EAAM3nL,GAClDf,EAAKk+R,EAELE,EAA2B,EAAdJ,GAAAA,IAIbt1G,EAAM40G,aACRc,GAAsB,EAARx9R,EAAY,WAGxBy9R,EAAgB,EAEX3iS,EAAI,EAAG85G,EAAKooL,EAAahiS,OAAQF,EAAI85G,IAAM95G,EAAG,KACjDwH,EAAQ06R,EAAaliS,GAAAA,GAEX,IAAVuiS,IAGFA,EAAQF,GADR/9R,GAAMo+R,IAEID,IAERC,EAA2B,EAAdJ,EAA0B,EAARp9R,GAAay9R,EAAgB,GAE5Dr+R,EAAKk+R,GAASH,EAAaC,IAAgBK,GAAiB,GAC5DA,IAAkB,IAIlBn7R,IAAU46R,EACZ99R,GAAM,MACD,KACD2Y,EAAIuiO,EAAI+hD,EAAyB,EAAR/5R,GACzB5D,EAAI47O,EAAI+hD,EAAyB,EAAR/5R,EAAY,GACrClG,EAAIk+O,EAAI+hD,EAAyB,EAAR/5R,EAAY,GACzC4jM,EAAO9mM,KAAQhD,EACf8pM,EAAO9mM,KAAQV,EACfwnM,EAAO9mM,KAAQ2Y,EACfmuL,EAAO9mM,KAAQ,MAEfi+R,CAAAA,CAAAA,EAAAA,KAKDK,uBAAyB,SAASb,EAAW32F,GAAAA,IAC5Cpe,EAAQlrL,KAAKggS,UAAUC,GACvBE,EAAaj1G,EAAM9nL,MAAQ8nL,EAAM7nL,OACjC+8R,EAAe,IAAIr6R,WAAWo6R,GAClCE,GACE3iD,EACAxyD,EAAM00G,YACNQ,EACAD,GAAAA,IAEEV,EAAiBv0G,EAAMu0G,eAKvBa,EAAQp1G,EAAM+zG,kBACJ,OAAVqB,IAAgBA,EAAQ,SAKxBC,EAAar1G,EAAM9nL,MACnBo9R,EAAcp9R,EAAQm9R,EACtBE,EAAQF,EAGRG,EAAsC,GAA7Bx1G,EAAMrpL,EAAIuB,EAAQ8nL,EAAM3nL,GACjCo9R,EAAuD,IAA7Cz1G,EAAMrpL,EAAIqpL,EAAM7nL,QAAUD,EAAQ8nL,EAAM3nL,GAClDf,EAAKk+R,EAELE,EAA2B,EAAdJ,GAAAA,IAIbt1G,EAAM40G,aACRc,GAAsB,EAARx9R,EAAY,WAGxBy9R,EAAgB,EAEX3iS,EAAI,EAAG85G,EAAKooL,EAAahiS,OAAQF,EAAI85G,IAAM95G,EAAG,KACjDwH,EAAQ06R,EAAaliS,GAAAA,GAEX,IAAVuiS,IAGFA,EAAQF,GADR/9R,GAAMo+R,IAEID,IAERC,EAA2B,EAAdJ,EAA0B,EAARp9R,GAAay9R,EAAgB,GAE5Dr+R,EAAKk+R,GAASH,EAAaC,IAAgBK,GAAiB,GAC5DA,IAAkB,IAIlBn7R,IAAU46R,EACZ99R,GAAM,MACD,KACD2Y,EAAIuiO,EAAI+hD,EAAyB,EAAR/5R,GACzB5D,EAAI47O,EAAI+hD,EAAyB,EAAR/5R,EAAY,GACrClG,EAAIk+O,EAAI+hD,EAAyB,EAAR/5R,EAAY,GACzC4jM,EAAO9mM,KAAQ2Y,EACfmuL,EAAO9mM,KAAQV,EACfwnM,EAAO9mM,KAAQhD,EACf8pM,EAAO9mM,KAAQ,MAEfi+R,CAAAA,CAAAA,CAAAA,CAKR,SAASJ,GAA8BU,EAAaphS,EAAGoxD,EAAQiwO,GAAAA,IAAAA,IACzDC,EAAgBF,EAAYphS,KAE5BuhS,EAAa,GAAKD,EAClBE,EAAWD,EAAa,EACxBE,EAAYD,EAAW,EAEvBE,EAAgBJ,EAAgB,EAGhCK,GAAa,GAAKD,GAAiB,EACnCE,EAAY,EACZC,EAAM,EAENh/R,EAAK,EAELi/R,EAAgBV,EAAYphS,KAK5B+hS,EAAa,IAAI7gB,WAAW,MAE5B8gB,EAAY,OAEH,MAEJJ,EAAY,IACK,IAAlBE,GAEJD,GAAOT,EAAYphS,MAAQ4hS,EAC3BA,GAAa,EAES,IAAlBE,EAEFA,EAAgBV,EAAYphS,OAE1B8hS,EAAAA,GAMFF,EAAYF,EAAe,UAE3BnuM,EAAOsuM,EAAMF,EAAAA,GACjBE,IAAQH,EACRE,GAAaF,EAKTnuM,IAASguM,EAAAA,CAYN,GAAIhuM,IAASiuM,EAAAA,MAAAA,IAAAA,IAuBhBS,EAAa1uM,EAAOkuM,EAAYluM,EAAOyuM,EAGvCE,EAAe,EACfC,EAAQF,EACLE,EAAQZ,GACbY,EAAQJ,EAAWI,IAAU,IAC3BD,EAAAA,IAGA/1O,EAAIg2O,EAAAA,GAEKt/R,EAAKq/R,GAAgBD,IAAe1uM,EAAO,EAAI,GAC/C8tM,EAAAA,YACX//O,GAAQ4oC,IAAI,6CAKd94B,EAAOvuD,KAAQspD,EAAAA,IAGXtsD,EADJgD,GAAMq/R,EAAAA,IAGFD,IAAe1uM,IAEjBniC,EAAOvuD,KAAQspD,GAEjBg2O,EAAQF,EACDC,KACLC,EAAQJ,EAAWI,GACnB/wO,IAASvxD,GAAa,IAARsiS,EACdA,IAAU,EAGM,OAAdH,GAAsBP,EAAY,OACpCM,EAAWN,KAAgBO,GAAa,EAAK71O,EAMzCs1O,GAAaE,EAAY,GAAKD,EAAgB,OAC9CA,EACFC,EAAaA,GAAa,EAAK,IAInCK,EAAYzuM,CAAAA,MA9EVkuM,EAAYD,EAAW,EAEvBG,GAAa,IADbD,EAAgBJ,EAAgB,IACG,EAGnCU,EAAY,YA4EZn/R,IAAOw+R,GACT//O,GAAQ4oC,IAAI,8CAGP94B,CAAAA,CCz1BT,SAASgxO,GAAYrJ,GAAAA,IAMfsJ,EACAC,EACAC,EACAC,EAeAC,EAvBAC,EAAS39R,KAAKi+B,MACd2/P,EAAS,IAAI9jS,MAAM,IACnB+jS,EAAU,IAAI/jS,MAAM,IACpBgkS,EAAU,IAAIhkS,MAAM,IACpBikS,EAAW,IAAIjkS,MAAM,IAMrBkkS,EAAU,IAAIlkS,MAAM,OACpBsrN,EAAW,IAAItrN,MAAM,OACrBmkS,EAAkB,IAAInkS,MAAM,IAC5BokS,EAAK,IAAIpkS,MAAM,IACfqkS,EAAU,GACVC,EAAU,EACVC,EAAU,EAEVC,EAAM,IAAIxkS,MAAM,IAChBykS,EAAM,IAAIzkS,MAAM,IAChB0kS,EAAM,IAAI1kS,MAAM,IAChBigP,EAAM,IAAIjgP,MAAM,KAChB2kS,EAAgB,IAAI3kS,MAAM,MAG1B4kS,EAAS,CACX,EACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAGEC,EAA2B,CAC7B,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAEEC,EAA0B,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,IAC7DC,EAA2B,CAC7B,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,KAEEC,EAA0B,CAC5B,EACA,EACA,EACA,EACA,EACA,GACA,EACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,EACA,GACA,IACA,GACA,GACA,IACA,IACA,IACA,EACA,GACA,GACA,IACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,IACA,IACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAGEC,EAA6B,CAC/B,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAEEC,EAA4B,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,IAC/DC,EAA6B,CAC/B,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,KAEEC,EAA4B,CAC9B,EACA,EACA,EACA,EACA,GACA,EACA,EACA,GACA,GACA,EACA,GACA,GACA,GACA,EACA,GACA,IACA,GACA,GACA,GACA,IACA,EACA,GACA,GACA,IACA,IACA,IACA,IACA,EACA,GACA,GACA,GACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,GACA,IACA,GACA,IACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,cAuKOC,EAAkBC,EAASC,GAAAA,IAAAA,IAC9BC,EAAY,E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A,CAAAA,OA5CQ,IA8CN+pS,GACF9D,EAAUU,GAELH,CAAAA,CAAAA,SA8HA4D,EAAW5P,GAClBA,EAAUh0R,KAAK0S,IAAI1S,KAAKC,IAAI+zR,EAAS,GAAI,KAErC0J,GAAkB1J,IAAAA,SA1qBC59L,GAAAA,IAAAA,IACnBytM,EAAM,CACR,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IAGOrqS,EAAI,EAAGA,EAAI,GAAIA,IAAK,KACvBmC,EAAIgiS,GAAQkG,EAAIrqS,GAAK48F,EAAK,IAAM,KACpCz6F,EAAIqE,KAAK0S,IAAI1S,KAAKC,IAAItE,EAAG,GAAI,KAC7BiiS,EAAOc,EAAOllS,IAAMmC,CAAAA,CAAAA,IAAAA,IAElBmoS,EAAO,CACT,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAEO7hP,EAAI,EAAGA,EAAI,GAAIA,IAAK,KACvBv1C,EAAIixR,GAAQmG,EAAK7hP,GAAKm0C,EAAK,IAAM,KACrC1pF,EAAI1M,KAAK0S,IAAI1S,KAAKC,IAAIyM,EAAG,GAAI,KAC7BmxR,EAAQa,EAAOz8O,IAAMv1C,CAAAA,CAAAA,IAAAA,IAEnBq3R,EAAO,CACT,EACA,YACA,YACA,YACA,EACA,WACA,SACA,YAEE38O,EAAI,EACCozD,EAAM,EAAGA,EAAM,EAAGA,IAAAA,IACpB,IAAIn6B,EAAM,EAAGA,EAAM,EAAGA,IACzBy9M,EAAQ12O,GAAK,GAAOw2O,EAAOc,EAAOt3O,IAAM28O,EAAKvpL,GAAOupL,EAAK1jN,GAAO,GAChE09M,EAAS32O,GAAK,GAAOy2O,EAAQa,EAAOt3O,IAAM28O,EAAKvpL,GAAOupL,EAAK1jN,GAAO,GAClEj5B,GAAAA,CA2gBkB4sO,CAGpBA,EAAU,GAAKh0R,KAAKi+B,MAAM,IAAO+1P,GAAWh0R,KAAKi+B,MAAM,IAAgB,EAAV+1P,IAG/D0J,EAAiB1J,EAAAA,CAAAA,KA5HdgQ,OAAS,SACZl+Q,EACAkuQ,GAEIA,GAAS4P,EAAW5P,GAGxBmK,EAAU,IAAIrkS,MACdskS,EAAU,EACVC,EAAU,EAGVuB,EAAU,OAhLVA,EAAU,OACVA,EAAU,IACVD,EAAU,IACVA,EAAU,IACVA,EAAU,IACVA,EAAU,IACVA,EAAU,GACVA,EAAU,GACVA,EAAU,GACVA,EAAU,GACVC,EAAU,GACVA,EAAU,GACVD,EAAU,GACVA,EAAU,cAsBVC,EAAU,OACVA,EAAU,KACVD,EAAU,OACL,IAAInmS,EAAI,EAAGA,EAAI,GAAIA,IACtBmmS,EAAU/B,EAAOpkS,IAEnBmmS,EAAU,OACL,IAAI19O,EAAI,EAAGA,EAAI,GAAIA,IACtB09O,EAAU9B,EAAQ57O,GAAAA,CA9BV,GAqKVgiP,SAlKiBvlS,EAAOC,GACxBihS,EAAU,OACVA,EAAU,IACVD,EAAU,GACVC,EAAUjhS,GACVihS,EAAUlhS,GACVihS,EAAU,GACVA,EAAU,GACVA,EAAU,IACVA,EAAU,GACVA,EAAU,GACVA,EAAU,IACVA,EAAU,GACVA,EAAU,GACVA,EAAU,IACVA,EAAU,GAmJVsE,CACUn+Q,EAAMpnB,MAAOonB,EAAMnnB,QAAAA,WAnI7BihS,EAAU,OACVA,EAAU,KAEVD,EAAU,OACL,IAAInmS,EAAI,EAAGA,EAAI,GAAIA,IACtBmmS,EAAUhB,EAAyBnlS,EAAI,QAEpC,IAAIyoD,EAAI,EAAGA,GAAK,GAAIA,IACvB09O,EAAUf,EAAwB38O,IAGpC09O,EAAU,QACL,IAAIv4O,EAAI,EAAGA,EAAI,GAAIA,IACtBu4O,EAAUd,EAAyBz3O,EAAI,QAEpC,IAAI/oD,EAAI,EAAGA,GAAK,IAAKA,IACxBshS,EAAUb,EAAwBzgS,IAGpCshS,EAAU,OACL,IAAItoQ,EAAI,EAAGA,EAAI,GAAIA,IACtBsoQ,EAAUZ,EAA2B1nQ,EAAI,QAEtC,IAAIx7B,EAAI,EAAGA,GAAK,GAAIA,IACvB8jS,EAAUX,EAA0BnjS,IAGtC8jS,EAAU,QACL,IAAItrO,EAAI,EAAGA,EAAI,GAAIA,IACtBsrO,EAAUV,EAA2B5qO,EAAI,QAEtC,IAAIp5D,EAAI,EAAGA,GAAK,IAAKA,IACxB0kS,EAAUT,EAA0BjkS,GAAAA,CAmGT0D,GA9F7BihS,EAAU,OACVA,EAAU,IACVD,EAAU,GACVA,EAAU,GACVA,EAAU,GACVA,EAAU,GACVA,EAAU,IACVA,EAAU,GACVA,EAAU,IACVA,EAAU,GACVA,EAAU,IACVA,EAAU,OAwFNuE,EAAM,EACNC,EAAM,EACNC,EAAM,EAEVhG,EAAU,EACVC,EAAU,OAEL2F,OAAO9pN,YAAc,mBAQtBr7E,EAEA4X,EAAGrZ,EAAGtC,EACN+H,EAAO5H,EAAGolF,EAAKm6B,EAAK79C,EATpB86M,EAAY3xP,EAAMviB,KAClB7E,EAAQonB,EAAMpnB,MACdC,EAASmnB,EAAMnnB,OAEf0lS,EAAoB,EAAR3lS,EAGdvB,EAAI,EAGCA,EAAIwB,GAAQ,KACjBE,EAAI,EACGA,EAAIwlS,GAAW,KACpBxhS,EAAQwhS,EAAYlnS,EAAI0B,EACxBwhF,GAAO,EACPm6B,EAAM,EAED79C,EAAM,EAAGA,EAAM,GAAIA,IAGtB1hE,EAAI4H,GAFJ23G,EAAM79C,GAAO,GAEK0nO,GADlBhkN,EAAkB,GAAL,EAAN1jB,IAGHx/D,EAAIq9G,GAAO77G,IAEb1D,GAAKopS,GAAalnS,EAAI,EAAIq9G,EAAM77G,IAG9BE,EAAIwhF,GAAOgkN,IAEbppS,GAAK4D,EAAIwhF,EAAMgkN,EAAY,GAG7B5tR,EAAIghQ,EAAUx8Q,KACdmC,EAAIq6Q,EAAUx8Q,KACdH,EAAI28Q,EAAUx8Q,KASdqjS,EAAI3hO,IACA8hO,EAAchoR,GACdgoR,EAAerhS,EAAI,KAAQ,GAC3BqhS,EAAe3jS,EAAI,KAAQ,IAC3B,IACF,IACFyjS,EAAI5hO,IACA8hO,EAAehoR,EAAI,KAAQ,GAC3BgoR,EAAerhS,EAAI,MAAS,GAC5BqhS,EAAe3jS,EAAI,MAAS,IAC5B,IACF,IACF0jS,EAAI7hO,IACA8hO,EAAehoR,EAAI,MAAS,GAC5BgoR,EAAerhS,EAAI,MAAS,GAC5BqhS,EAAe3jS,EAAI,MAAS,IAC5B,IACF,IAGJopS,EAAMrE,EAAUvB,EAAKR,EAASoG,EAAK5G,EAAQE,GAC3C2G,EAAMtE,EAAUtB,EAAKR,EAAUoG,EAAK5G,EAASE,GAC7C2G,EAAMvE,EAAUrB,EAAKT,EAAUqG,EAAK7G,EAASE,GAC7C5+R,GAAK,GAEP1B,GAAK,KAMHkhS,GAAW,EAAG,KACZiG,EAAW,GACfA,EAAS,GAAKjG,EAAU,EACxBiG,EAAS,IAAM,GAAMjG,EAAU,GAAM,EACrCoB,EAAU6E,EAAAA,CAAAA,OAGZ1E,EAAU,OAEH,IAAIv+R,WAAW88R,EAAAA,EAiBtBnK,EAAUA,GAAW,sBAxIjBuQ,EAAOnpS,OAAO8F,aACT1H,EAAI,EAAGA,EAAI,IAAKA,IAEvBugP,EAAIvgP,GAAK+qS,EAAK/qS,EAAAA,CAqIK,GA/frB8jS,EAAS6B,EACPR,EACAC,GAEFrB,EAAU4B,EACRJ,EACAC,GAEFxB,EAAS2B,EACPN,EACAC,GAEFrB,EAAU0B,EACRF,EACAC,GAAAA,WAAAA,IAAAA,IAKEsF,EAAU,EACVC,EAAU,EACL7gF,EAAM,EAAGA,GAAO,GAAIA,IAAO,KAE7B,IAAI8gF,EAAKF,EAASE,EAAKD,EAASC,IACnCt/E,EAAS,MAAQs/E,GAAM9gF,EACvBo6E,EAAQ,MAAQ0G,GAAM,GACtB1G,EAAQ,MAAQ0G,GAAI,GAAK9gF,EACzBo6E,EAAQ,MAAQ0G,GAAI,GAAKA,EAAAA,IAGtB,IAAIC,IAAUF,EAAU,GAAIE,IAAUH,EAASG,IAClDv/E,EAAS,MAAQu/E,GAAS/gF,EAC1Bo6E,EAAQ,MAAQ2G,GAAS,GACzB3G,EAAQ,MAAQ2G,GAAO,GAAK/gF,EAC5Bo6E,EAAQ,MAAQ2G,GAAO,GAAKF,EAAU,EAAIE,EAE5CH,IAAY,EACZC,IAAY,GAvBZvF,GAqfF0F,WAAAA,IAzdK,IAAIprS,EAAI,EAAGA,EAAI,IAAKA,IACvBilS,EAAcjlS,GAAK,MAAQA,EAC3BilS,EAAejlS,EAAI,KAAQ,GAAK,MAAQA,EACxCilS,EAAejlS,EAAI,KAAQ,GAAK,KAAOA,EAAI,MAC3CilS,EAAejlS,EAAI,KAAQ,IAAM,MAAQA,EACzCilS,EAAejlS,EAAI,MAAS,IAAM,MAAQA,EAC1CilS,EAAejlS,EAAI,MAAS,GAAK,MAAQA,EAAI,QAC7CilS,EAAejlS,EAAI,MAAS,IAAM,MAAQA,EAC1CilS,EAAejlS,EAAI,MAAS,IAAM,KAAOA,CAAAA,CAid3CorS,GAGAhB,EAAW5P,EAAAA,CC9sCf,SAAS6Q,GAAW/iS,EAAQgjS,GAAAA,GAAAA,KACrBnoO,IAAM,OACN76D,OAASA,EAAAA,KACTijS,MAAQ,IAAIC,SAASljS,EAAOA,QAAAA,KAC5BgjS,gBAAkBA,EAAAA,KAClBG,WAAY,OACZC,KACH9pS,OAAO8F,aAAa5F,KAAKwG,OAAO,IAAM1G,OAAO8F,aAAa5F,KAAKwG,OAAO,SACnE66D,KAAO,GACqD,IAA7D,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,MAAM70D,QAAQxM,KAAK4pS,MACpD,MAAM,IAAInlS,MAAM,yBACbolS,cAAAA,KACAC,UAAAA,CCrBP,SAASC,GAAY5tB,GAAAA,SAsCV54Q,EAAEiO,GAAAA,IACJA,EAAG,MAAM/M,MAAM,sBAEbq3E,EAAGtqE,EAAGkjB,EAAGwmE,GAAAA,IACX,IAAI2C,EAAI,EAAG,EAAIA,EAAGA,IAAAA,GAASrsF,EAAEkjB,EAAImpE,IAAM3C,EAAE71F,WAAWw4F,GAAI,OAAO,UAC7D,UAEAmC,EAAExuF,EAAGkjB,EAAGwmE,EAAG2C,EAAGnsF,GAAAA,IAChB,IAAIk2F,EAAI,EAAGA,EAAIl2F,EAAGk2F,IAAKp2F,EAAEkjB,EAAIkzE,GAAK1M,EAAE2C,EAAI+J,EAAAA,CAAAA,SAEtC/zC,EAAEriD,EAAGkjB,EAAGwmE,EAAG2C,GAAAA,IACb,IAAInsF,EAAI,EAAGA,EAAImsF,EAAGnsF,IAAKF,EAAEkjB,EAAIhjB,GAAKwpF,CAAAA,CAAAA,SAEhCvmE,EAAEnjB,GAAAA,OACF,IAAIqvQ,WAAWrvQ,EAAAA,CAAAA,SAEf+rE,EAAG/rE,EAAGkjB,GAAAA,IACR,IAAIwmE,EAAI,GAAI2C,EAAI,EAAGA,EAAIrsF,EAAGqsF,IAAK3C,EAAE38F,KAAK,IAAIm2B,GAAAA,OACxCwmE,CAAAA,CAAAA,SAcA8uM,EAAGx4R,EAAGkjB,GAAAA,IAQTmpE,EAAI,mBAPC3C,EAAE2C,EAAG+J,EAAGp2F,GAAAA,IACV,IAAIE,EAAIF,EAAEo2F,GAAIxrB,EAAK,EAAGA,EAAK1qE,IAC9BmsF,EAAEt/F,KAAKiT,EAAEpT,OAASwpG,EAAI,EAAI,GAAK,IAAIlzE,KAC/BljB,EAAEpT,OAASwpG,EAAI,IAFcxrB,IAGjC8e,EAAE2C,EAAEzhB,GAAKwrB,EAAI,EAAGp2F,EAAAA,CAGZ,CACNqsF,EAAG,EAAGrsF,GACDqsF,CAAAA,CAAAA,IAELosM,EAAe,eACb7kK,EAAOplI,KAAAA,SAIF00B,EAAE/nB,EAAGnN,GAAAA,IACP,IAAIqT,EAAK,GAAMrT,EAAI,IAAQ,EAAGmN,EAAIkG,GAAKA,KAAO,SAC5CA,GAAKlG,EAAKkG,EAAI,GAAMA,EAAIlG,CAAAA,CAAAA,SAExBuuF,EAAEvuF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACrBkC,IAAIhE,EAAIsT,IAAAA,GACMlG,EAAEnN,GAAZD,GAAKsT,IAAgBxR,QAClB,EAAI9B,EAAAA,CAAAA,SA+EJmS,EAAE/E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,GACrBkC,EAAE,MAAQlC,GACN,KAAOA,EAAG,IAAIO,EAAI+yB,EAAE,UACnB,GAAiB,OAAX/yB,EAAI+yB,EAAEtzB,IAAiB,OAAO,kBAhFhCsL,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GAAAA,IAGtBkqD,EACA/oD,EAHEjB,EAAItC,EACNiE,EAAI,GAAKoP,EAGTkpB,EAAIpH,EAAE,IACNp0B,EAAIo0B,EAAE,QACRpxB,EAAE,GAAKlC,GACPkC,EAAE,MAAQhE,GACVgE,EAAE,MAAQoJ,GACVpJ,EAAE,EAAIsP,GACD9P,EAAI,EAAGA,EAAI1B,IAAK0B,EAAG,IAClB,GAAKxD,EAAEwD,GAAI,OAAO,IACpBg5B,EAAEx8B,EAAEwD,GAAAA,CAAAA,GAEJg5B,EAAE,IAAM16B,EAAG,OAAO,MACtBd,EAAE,GAAK,EACFurD,EAAI,EAAG,GAAKA,IAAKA,EAAG,IACnB/vB,EAAE+vB,GAAK,GAAKA,EAAG,OAAO,EAC1BvrD,EAAEurD,EAAI,GAAKvrD,EAAEurD,GAAK/vB,EAAE+vB,EAAAA,CAAAA,IAEjB/oD,EAAI,EAAGA,EAAI1B,IAAK0B,EAAI+oD,EAAIvsD,EAAEwD,GAAK,EAAIxD,EAAEwD,KAAOnB,EAAErB,EAAEurD,MAAQ/oD,GAAAA,GACzD,GAAKxC,EAAE,IACT,OAAQhB,EAAI,IAAIqoG,GAAS9lG,EAAI,EAAKvC,EAAEuB,MAAQc,EAAE,GAAKs5F,EAAEvuF,EAAG7K,EAAG,EAAG2B,EAAGlE,GAAIkE,EAAAA,IAMrE2N,EALE+J,GAAK,EACPyoF,EAAIngG,EAAI,EACRpD,EAAI,EACJkC,EAAI,EACJ5C,EAAI,EAEJ6D,EAAI,GAAKqP,EAAAA,IACX9P,EAAI,EACJ+oD,EAAI,EACCzqD,EAAI,EAAGyqD,GAAKj5C,IAAKi5C,EAAGzqD,IAAM,EAAG,IAEhCkB,GADA5C,IAAM,EAGF,GADJA,GAAKo8B,EAAE+vB,IACI,OAAO,OACX,EAAI/vB,EAAE+vB,KAAM/vB,EAAE+vB,IAClBvsD,EAAI,IAAIqoG,GACJ9lG,EAAIgqD,EACNvsD,EAAEuB,MAAQc,EAAEmB,KACbm4F,EAAEvuF,EAAG7K,EAAIzB,EAAGgB,EAAGmC,EAAGjE,GACjBc,EAAIq0B,EAAEr0B,EAAGyrD,EAAAA,CAAAA,IAEhBA,EAAIj5C,EAAI,EACHxR,EAAI,EAAG,IAAMyqD,IAAKA,EAAGzqD,IAAM,EAAG,IAEjCkB,GADA5C,IAAM,EAGF,GADJA,GAAKo8B,EAAE+vB,IACI,OAAO,OACX,EAAI/vB,EAAE+vB,KAAM/vB,EAAE+vB,GAAI,IACvBvsD,EAAI,IAAIqoG,GACHvnG,EAAIujG,IAAMzoF,EAAG,KAChBrZ,GAAK0B,EAEA4N,EAAI,IADT+J,EAAI2wC,GACej5C,EAAI,GAAKsI,KAEtB,IADJ/J,GAAK2qB,EAAE5gB,QAELA,EACF/J,IAAM,EAIR3N,GADAD,EAAI,IADJ4N,EAAI+J,EAAItI,GAIRlG,EAAEnN,GADF2b,EAAI9a,EAAIujG,IACC9hG,EAAIsP,EAAIyB,EACjBlG,EAAEnN,EAAI2b,GAAGra,MAAQgB,EAAItC,EAAI2b,CAAAA,CAE3B5b,EAAEuC,EAAIgqD,EAAIj5C,EACVtT,EAAEuB,MAAQc,EAAEmB,KACZm4F,EAAEvuF,EAAG7K,GAAKzB,GAAKwS,GAAIxR,EAAGmC,EAAGjE,GACzBc,EAAIq0B,EAAEr0B,EAAGyrD,EAAAA,CAAAA,CAAAA,OAGNvpD,GAAK,EAAIhC,EAAE,IAAM,EAAI,EAAIkD,CAAAA,CAKS,CAChCkJ,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAAA,CAAAA,SAEjBgmG,IAAAA,KACF9mG,MAAQd,KAAK8B,EAAI,WAEfuvF,IAAAA,KACFvwF,MAAQd,KAAK8B,EAAI,WAEfw4F,IAAAA,KACFqD,EAAIpgB,EAAG,EAAGqqB,GAAAA,KACV/J,EAAIlpE,EAAE,QACN00D,GAAKrpF,KAAKmnF,GAAKnnF,KAAKwkF,GAAKxkF,KAAKguF,GAAK,OACnCG,GAAK5Q,EAAGoI,GAAI0L,EAAAA,CAAAA,SAEVjV,EAAGzvE,EAAGnN,EAAGqT,EAAGtT,GACnBgE,EAAE,MAAQoJ,GACVpJ,EAAE,MAAQ/D,GACV+D,EAAE,WAAahE,GACfoN,EAAEixE,GAAK,IACPjxE,EAAEqzF,EAAI,EACNrzF,EAAEnN,GAAK,EACPmN,EAAEyxE,GAAK,EACPzxE,EAAEswE,GAAKz9E,EACPmN,EAAEowE,GAAKlqE,EACPlG,EAAEilF,GAAKpyF,EACPmN,EAAEmgF,GAAKj6E,EAAItT,EACXoN,EAAEqgF,GAAK,GAAKztF,EAAIsT,EAAItT,EAAI,EAAI,EAAIsT,EAChCksE,EAAGpyE,EAAAA,CAAAA,SAEI6uF,EAAG7uF,EAAGnN,GAAAA,IACR,IAAIqT,EAAI,EAAG,EAAIrT,KAAOqT,GAAK2wF,EAAE72F,EAAG,MAAQnN,EAAAA,OACtCqT,CAAAA,CAAAA,SAEA6oE,EAAG/uE,EAAGnN,GAAAA,IACTqT,EAAI2oF,EAAG7uF,EAAGnN,GAAAA,OACPm+F,EAAEhxF,IAAMkG,EAAIA,CAAAA,CAAAA,SAEZ6tE,EAAG/zE,EAAGnN,EAAGqT,EAAGtT,GAAAA,IACf8B,EACFO,EAAI,MACN2B,EAAE,MAAQoJ,GACVpJ,EAAE,MAAQ/D,GACV+D,EAAE,WAAahE,GACfoN,EAAE06E,GAAK9nF,EACPoN,EAAEwyE,GAAK,EACPxyE,EAAEyE,EAAI,EACNzE,EAAElJ,EAAI,IACFlE,IAAMA,EAAI,GACT8B,EAAI,EAAGA,EAAI9B,IAAK8B,EAAGO,GAAKpC,EAAEqT,EAAIxR,IAAO,EAAIA,EAC9CsL,EAAEwyE,GAAKv9E,EACP+K,EAAE8zE,GAAKlhF,EACPoN,EAAEswE,GAAKz9E,EACPmN,EAAEowE,GAAKlqE,CAAAA,CAAAA,SAEA00E,EAAG56E,GAAAA,KACH,GAAKA,EAAEyE,GAAKzE,EAAE8zE,GAAK9zE,EAAE06E,IACzB16E,EAAEwyE,MAAQ,EACRxyE,EAAEwyE,IAAOxyE,EAAEswE,GAAGtwE,EAAEowE,GAAKpwE,EAAE8zE,KAAQqB,GAAK,IAAQ,IAC3Cn1E,EAAE8zE,GACH9zE,EAAEyE,GAAK,EACZuvE,EAAGh0E,KAAQA,EAAElJ,EAAI,EAAKkJ,EAAEyE,EAAI,YAErBoqE,EAAE7uE,EAAGnN,GAAAA,GACZ+D,EAAE,GAAK/D,IACFmN,EAAElJ,GAAKjE,GAAK0qS,GAAI,KACfr3R,EAAIovE,EAAGt1E,GAAK2kF,GAAG9xF,GAAAA,OACnBmN,EAAEyE,GAAK5R,EACP+nF,EAAG56E,GACIkG,CAAAA,CAAAA,OAETlG,EAAElJ,EAAI,EACEkJ,EAAEyE,EAAI,WAEPs2E,IAAAA,KACFloF,EAAIQ,KAAK49E,GAAK59E,KAAKggG,EAAI,OACvB/iB,GAAK,QACLF,GAAK,OACL6U,GAAK,QACL9E,GAAK,OACLE,GAAK,QACL5O,GAAK,WAEHe,IAAAA,KACFA,GAAK,OACLlC,GAAK,QACLx5E,EAAIzD,KAAKoR,EAAIpR,KAAKygF,GAAKzgF,KAAKqnF,GAAKrnF,KAAK+8E,GAAK,WAEzCkF,EAAGt1E,GAAAA,OACFA,EAAEwyE,MAAQxyE,EAAEyE,EAAK0wE,GAAK,KAAS,WAEhCnB,EAAGh0E,GAAAA,OACVpJ,EAAEoJ,EAAE8zE,IAAM9zE,EAAE06E,IACL16E,EAAElJ,GAAMkJ,EAAE8zE,IAAM9zE,EAAE06E,IAAM16E,EAAEyE,EAAI0wE,EAAAA,CAAAA,SAE9B0C,EAAG73E,EAAGnN,GACbmN,EAAEyE,EAAI5R,EACNmN,EAAElJ,EAAIk9E,EAAGh0E,EAAAA,CAAAA,SAEFyyE,EAAGzyE,GACVA,EAAEyE,GAAKy2E,KAAOtkF,EAAEoJ,EAAEyE,GAAKy2E,IAAKN,EAAG56E,GAAAA,CAAAA,SAExBoyE,EAAGpyE,GACVpJ,EAAE,MAAQoJ,GAAK,MAAQA,EAAEswE,IACzBtwE,EAAEowE,GAAKpwE,EAAEqgF,IACHrgF,EAAEqzF,GAAKrzF,EAAEswE,GAAGtwE,EAAEowE,MAASpwE,EAAEqzF,GAAK,KAAQ,EAAKrzF,EAAEnN,GAAK,IACnD+D,EAAE,MAAQoJ,GAAK,MAAQA,EAAEswE,IAC1BtwE,EAAEowE,GAAKpwE,EAAEmgF,IACHngF,EAAEnN,GAAK,EAAKmN,EAAEqzF,EAAIrzF,EAAEswE,GAAGtwE,EAAEowE,MAASpwE,EAAEqzF,GAAK,GAC3CrzF,EAAEyxE,GACDzxE,EAAEnN,EAAI,GACLmN,EAAEqzF,IAAM,EAAKrzF,EAAEnN,GAAK,EAAKmN,EAAEyxE,GAAK,aAEnCuf,EAAEhxF,GAAAA,OACF6uF,EAAG7uF,EAAG,YAEN62F,EAAE72F,EAAGnN,GAAAA,IACRqT,EAAIlG,EAAEixE,GAAAA,EACNjxE,EAAEnN,GAAKu/E,EAAGpyE,GAAAA,IACVpN,EAAIoN,EAAEnN,EACR6B,EAAKwR,EAAIrT,IAAO,EAChBoC,GAAK+K,EAAEqzF,IAAMzgG,EAAI8B,GAAK,MACxBO,GAAMiR,GAAKxR,EAAKsL,EAAEqzF,GAAO3+F,EAAI,GAAM9B,IAAO,GAAOsT,EAAIxR,EAAI,EACzD9B,EAAIsT,EACCxR,EAAI,EAAG,KAAO9B,GAAM8B,GAAK,EAAK9B,IAAM,SACzCA,EAAI,EAAK8B,EAAIqwF,GAAGnyF,GAChBoN,EAAEnN,GAAKD,EACPoN,EAAEixE,IAAM/qE,GAAKtT,GAAK,EACXqC,CAAAA,CAAAA,SAEAg7E,EAAGjwE,EAAGnN,EAAGqT,GAChBlG,EAAEnN,EAAI,GAAMqT,GAAK,GAAM,IACvBlG,EAAEnN,EAAI,GAAMqT,GAAK,GAAM,IACvBlG,EAAEnN,EAAI,GAAMqT,GAAK,EAAK,IACtBlG,EAAEnN,EAAI,GAAMqT,GAAK,EAAK,aAEfwsE,EAAG1yE,EAAGnN,GAAAA,OACLmN,EAAEnN,EAAI,IAAM,EAAMmN,EAAEnN,EAAI,IAAM,WAE/BwoF,EAAGr7E,EAAGnN,GAAAA,OACN6/E,EAAG1yE,EAAGnN,GAAMmN,EAAEnN,EAAI,IAAM,YAExBy+E,EAAGtxE,EAAGnN,GAAAA,OACN6/E,EAAG1yE,EAAGnN,GAAM6/E,EAAG1yE,EAAGnN,EAAI,IAAM,YAE5BsoF,EAAGn7E,EAAGnN,GAAAA,IACTqT,EAAI,GAAKrT,EAAAA,OACb+D,EAAE,MAAQoJ,GACVpJ,EAAE,EAAI/D,GACNmN,EAAEgmG,EAAIh+E,EAAE9hB,GACJ,MAAQlG,EAAEgmG,EAAU,GACxBhmG,EAAEk6E,GAAK,GAAKrnF,EACZmN,EAAEqzE,GAAKxgF,EACA,YAEAyoF,EAAGt7E,EAAGnN,GACb+D,EAAE,MAAQoJ,GACVpJ,EAAE,MAAQ/D,GACV+D,EAAEoJ,EAAEqzE,IAAMxgF,EAAEwgF,IACZggB,EAAExgG,EAAEmzG,EAAG,EAAGhmG,EAAEgmG,EAAG,EAAG,GAAKnzG,EAAEwgF,GAAAA,CAAAA,SAElBkI,IAAAA,KACFyqB,EAAI,QACJ3yB,GAAKhgF,KAAK6mF,GAAK,WAEb33C,EAAGviC,EAAGnN,EAAGqT,EAAGtT,GACnBgE,EAAE,MAAQsP,GACVtP,EAAE,MAAQhE,GAAAA,IACN8B,EAAIwR,EAAE,GACRjR,EAAIrC,EAAE,aACH8B,IAAMA,GAAKsL,EAAI/K,EAAIpC,EAAI,GAAKA,GAAAA,GAC5BoC,IAAMA,GAAKpC,EAAI6B,EAAIsL,EAAI,GAAKA,GAC7B,GAAKtL,GAAK,GAAKO,EAAU,GAC7BiR,EAAE,GAAKxR,EACP9B,EAAE,GAAKqC,EACA,YAEA65F,EAAG9uF,EAAGnN,GAAAA,OACLmN,GAAK,GAAKnN,GAAK,IAAOA,CAAAA,CAAAA,SAEvBsmF,EAAGn5E,EAAGnN,GAAAA,QAEF,WAAJmN,IAAuB,WAAJnN,KAAqB,EAAK,cACxC,SAAJmN,IAAqB,SAAJnN,KAAmB,EAAK,YAC/C,WAGKmzG,EAAEhmG,EAAGnN,GACZ4lI,EAAK5lI,GAAK,SAASA,EAAGD,EAAG8B,EAAGO,EAAGE,EAAG2B,EAAGqoD,GAAAA,IAC/Bj5C,EAAAA,IACCA,EAAI,EAAGA,EAAI/Q,IAAK+Q,EAAG,KAClBkpB,EAAIqpG,EAAKz4H,GAAGlJ,EAAEqoD,EAAIj5C,EAAI,GAAIxR,EAAGO,EAAIiR,GACrCpP,EAAEqoD,EAAIj5C,GAAKizE,EAAGtmF,EAAED,EAAIsT,GAAIkpB,EAAAA,CAAAA,CAAAA,CAAAA,SAIrB61D,IAAAA,KACFjC,GAAK3vF,KAAKytF,GAAKztF,KAAK4tF,GAAK,WAEvBnS,EAAG9uE,EAAGnN,GAAAA,QACO,YAATmN,EAAInN,MAAqB,IAAMmN,EAAInN,KAAQ,WAE/Cq9E,EAAGlwE,GAAAA,OACN,GAAKA,GAAK,IAAMA,EAAUA,EAC1B,EAAIA,EAAU,EACd,IAAMA,EAAU,oBAEbi0E,EAAGj0E,EAAGnN,GAAAA,OACNq9E,EAAGlwE,GAAMA,EAAInN,EAAI,IAAQ,aAEzB0+E,EAAGvxE,EAAGnN,EAAGqT,GAAAA,OACTnO,KAAKkjB,IAAIpoB,EAAIqT,GAAKnO,KAAKkjB,IAAIjb,EAAIkG,EAAAA,CAAAA,SAE/Bw1E,EAAG17E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,GAAAA,IAC5BvC,EAAIqC,EAAEE,EAAI,GACL+Q,EAAI,EAAGA,EAAIxR,IAAKwR,EAAGjR,EAAEE,EAAI+Q,GAAKtT,EAAIumF,EAAGn5E,EAAEnN,EAAIqT,GAAItT,EAAAA,CAAAA,SAE7C4qS,EAAGx9R,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IAClBO,EAAAA,IACCA,EAAI,EAAGA,EAAIiR,IAAKjR,EAAG,KAClBE,EAAI6K,EAAEnN,EAAIoC,GACZ6B,EAAK3B,GAAK,EAAK,IAGfgqD,EAAQ,UADRA,GADAA,EAAQ,SAAJhqD,KACM2B,GAAK,IAAMA,IAEvBlE,EAAE8B,EAAIO,IAAW,WAAJE,GAAkBgqD,IAAO,YAGjCy8B,EAAG57E,EAAGnN,GACbA,EAAEouF,GAAMjhF,GAAK,EAAK,IAClBnN,EAAEiuF,GAAM9gF,GAAK,EAAK,IAClBnN,EAAEmwF,GAAMhjF,GAAK,GAAM,aAEZklF,EAAGllF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GAAAA,IACrBE,EAAAA,IACCA,EAAI,EAAGA,EAAIvC,IAAKuC,EAAG,KAClB2B,EAAIjE,EAAEqT,EAAI/Q,GACZgqD,EAAIroD,IAAM,EAEVs4B,EAAIt4B,EAEJV,EAAQ,KADRA,GAFAA,EAAIU,IAAM,MAEEkJ,EAAEihF,IAAM,IAAO,KAAQ9hC,GAAK,IAAO,MAAS,IAIxD/vB,EAAQ,KADRA,GADAA,IAAYpvB,EAAE8gF,IAAM,IAAO,KAAQ3hC,GAAK,IAAO,MAAS,KAC5Cn/C,EAAEgjF,IAAM,IAAO,KAAQ5sF,GAAK,IAAO,MAAS,IAE1D1B,EAAEO,EAAIE,IAAU,WAAJ2B,IAAmBV,GAAK,IAAMg5B,CAAAA,CAAAA,CAAAA,SAGrC4sD,EAAGh8E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACtB+jI,EAAK5lI,GAAK,SAASmN,EAAGnN,EAAGqT,EAAGi5C,EAAG/oD,EAAGg5B,EAAGx7B,EAAG4a,EAAGyoF,GAAAA,IACpC93C,EAAIvrD,EAAGurD,EAAI3wC,IAAK2wC,EAAAA,IACdvrD,EAAI,EAAGA,EAAIqjG,IAAKrjG,EAAGwC,EAAEg5B,KAAO16B,EAAEwR,EAAEtT,EAAEoN,EAAEnN,OAAAA,EAE7C4lI,EAAKz4H,GAAK,SAASA,EAAGnN,EAAGiE,EAAGqoD,EAAG/oD,EAAGg5B,EAAGx7B,GAAAA,IAC/BqB,EAAI,GAAK+K,EAAEnN,EACbsC,EAAI6K,EAAEmxE,GACNz9E,EAAIsM,EAAE62F,EAAE,GACRjhG,EAAIoK,EAAEnJ,EAAAA,GACJ,EAAI5B,EACN,IAAK+K,GAAK,GAAKA,EAAEnN,GAAK,EAAG+C,GAAK,GAAKX,GAAK,EAAGpC,EAAIiE,IAAKjE,EAAG,KAEnD4R,EADEzR,EAAI,MAEHyR,EAAI,EAAGA,EAAItP,IAAKsP,EACnBA,EAAIzE,IAAMhN,EAAIJ,EAAEusD,EAAE/oD,OAASg5B,EAAEx7B,KAAOc,EAAEhB,EAAEV,EAAI4C,IAAO5C,IAAMiC,CAAAA,MAE1DwjI,EAAK,eAAiBvyH,GAAGi5C,EAAG/oD,EAAG1C,EAAGkC,EAAGw5B,EAAGx7B,EAAGf,EAAGiE,EAAG3B,EAAAA,CAAAA,CAAAA,SAGjDgwF,EAAGnlF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IACjBwR,EAAIrT,EAAIqT,EAAGrT,EAAIqT,GAAK,KACnBjR,EAAI+K,EAAEnN,KACVD,EAAE8B,KAAQO,GAAK,GAAM,IACrBrC,EAAE8B,KAAQO,GAAK,EAAK,IACpBrC,EAAE8B,KAAQO,GAAK,EAAK,cAGf+wF,EAAGhmF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IACjBwR,EAAIrT,EAAIqT,EAAGrT,EAAIqT,GAAK,KACnBjR,EAAI+K,EAAEnN,KACVD,EAAE8B,KAAQO,GAAK,GAAM,IACrBrC,EAAE8B,KAAQO,GAAK,EAAK,IACpBrC,EAAE8B,KAAQO,GAAK,EAAK,IACpBrC,EAAE8B,KAAQO,GAAK,GAAM,cAGhBgxF,EAAGjmF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IACjBwR,EAAIrT,EAAIqT,EAAGrT,EAAIqT,GAAK,KAErB/Q,GADEF,EAAI+K,EAAEnN,OACG,GAAM,IAASoC,GAAK,GAAM,GACrCA,EAAMA,GAAK,EAAK,IAASA,GAAK,GAAM,GACtCrC,EAAE8B,KAAOS,EACTvC,EAAE8B,KAAOO,CAAAA,CAAAA,CAAAA,SAGJoxF,EAAGrmF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IACjBwR,EAAIrT,EAAIqT,EAAGrT,EAAIqT,GAAK,KAErB/Q,GADEF,EAAI+K,EAAEnN,OACG,GAAM,IAASoC,GAAK,GAAM,EACrCA,EAAMA,GAAK,EAAK,IAASA,GAAK,EAAK,GACrCrC,EAAE8B,KAAOS,EACTvC,EAAE8B,KAAOO,CAAAA,CAAAA,CAAAA,SAGJqxF,GAAGtmF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IACjBwR,EAAIrT,EAAIqT,EAAGrT,EAAIqT,GAAK,KACnBjR,EAAI+K,EAAEnN,KACVD,EAAE8B,KAAQO,GAAK,EAAK,IACpBrC,EAAE8B,KAAQO,GAAK,EAAK,IACpBrC,EAAE8B,KAAQO,GAAK,GAAM,cAGhBi/E,GAAGl0E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GAAAA,GACrB,GAAKA,EACP,IAAKiR,EAAIrT,EAAIqT,EAAGrT,EAAIqT,GAEhB+pE,EACEr9E,IAFHqC,EAAI+K,EAAEnN,MAGC,IAAM,GACNoC,EAAE,IAAM,EAAK,MACbA,EAAE,IAAM,EAAK,SACdA,EAAE,IAAM,MACT,GAEHP,GAAK,QACP2+F,EAAEzgG,EAAG8B,EAAGsL,EAAGnN,EAAGqT,EAAAA,CAAAA,SAEZouE,GAAGt0E,EAAGnN,GACb4lI,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,GAAK4lI,EAAKz4H,EAAI,KACtBy4H,EAAK5lI,GAAG,IAAM4lI,EAAKz4H,EAAI,MACvBy4H,EAAK5lI,GAAG,IAAM4lI,EAAKz4H,EAAI,MACvBy4H,EAAK5lI,GAAG,IAAM4lI,EAAKz4H,EAAI,MACvBy4H,EAAK5lI,GAAG,IAAM4lI,EAAKz4H,EAAI,MACvBy4H,EAAK5lI,GAAG,IAAM4lI,EAAKz4H,EAAI,KACvBy4H,EAAK5lI,GAAG,IAAM4lI,EAAKz4H,EAAI,cAEhBy0E,GAAGz0E,GAAAA,OACHA,GAAKo5E,IAAMp5E,GAAKq5E,IAAMr5E,GAAKwxE,IAAMxxE,GAAKs5E,EAAAA,CAAAA,SAEtCmN,KAAAA,KACFxS,GAAK,QACLz3D,KAAOnpB,KAAKsR,EAAItR,KAAK6gF,GAAK,WAExBupN,KAAAA,KACFvoS,EAAI,QACJD,EAAI,QACJi6E,GAAK,QACLrqE,EAAI,QACJ26E,GAAKnsF,KAAKgqS,GAAKhqS,KAAKqqS,GAAKrqS,KAAKqxF,GAAKrxF,KAAKwhF,GAAKxhF,KAAKomF,GAAKpmF,KAAKgmF,GAAKhmF,KAAK87E,GAAK97E,KAAKk7F,EAAIl7F,KAAK6nE,EAAI7nE,KAAK2nG,EAAI3nG,KAAK4nG,EAAI,WAE7G1hB,KAAAA,KACFkN,GAAKpzF,KAAKqD,OAASrD,KAAKoD,MAAQpD,KAAKgxG,EAAI,OACzCpvG,EAAI,CAAC,EAAD,KACJA,EAAE0oS,KAAO,IAAIl3M,GAAAA,KACbxxF,EAAE2/E,GAAK,IAAI6oN,GAAAA,KACXh7M,GAAK,cAEHiE,KAAAA,KACFjwF,MAAQ,CAAC,QACTC,OAAS,CAAC,QACV2vF,GAAK,CAAC,QACNC,GAAK,CAAC,QACN9sE,OAAS,CAAC,YAERokR,KAAAA,KACF74M,GAAK1xF,KAAKutF,GAAKvtF,KAAK8xF,GAAK9xF,KAAKohF,GAAKphF,KAAKqhF,GAAKrhF,KAAK27E,GAAK37E,KAAKmtF,GAAKntF,KAAKmvC,GAAKnvC,KAAK2mD,EAAI3mD,KAAKuC,EAAIvC,KAAK69E,GAAK79E,KAAKoqS,GAAKpqS,KAAK8hF,GAAK,WAEzH+R,GAAGlnF,GAAAA,OACV0zJ,MAAM,gCACC1zJ,EAAEioB,CAAAA,CAAAA,SAEF41Q,GAAG79R,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEioB,EACRr1B,EAAIC,EAAEm8F,GAAG/5F,EAAE0oS,KACXjpS,EAAI9B,EAAEqhF,GACNh/E,EAAIrC,EAAEshF,GAAKl0E,EAAEuvE,GAAK38E,EAAE+R,EACpBxP,EAAInB,GAAEnB,EAAEm8F,GAAGqV,GACXvtG,EAAIkJ,EAAE9K,EACNiqD,EAAIn/C,EAAEi7F,EACN7kG,EAAI4J,EAAE/K,EACNm6B,EAAIpvB,EAAEg7F,EACNpnG,EAAIoM,EAAEkvE,GACN1gE,EAAIxO,EAAEk7D,EACN+7B,EAAIpkG,EAAE6oF,GACNhoF,EAAIb,EAAE+oF,GACNhmF,EAAI/C,EAAEisF,GACN9rF,EAAIH,EAAEksF,GACNt6E,EAAIzE,EAAEuvE,GACN14E,EAAImJ,EAAEuvE,GAAKvvE,EAAEioB,EACb/yB,EAAI8K,EAAE8E,EACNH,EAAKzP,EAAI,GAAM,SACZuP,EACDtP,EAAE2B,EAAGqoD,EAAG,KAAM,KAAM/oD,EAAGg5B,EAAGx7B,EAAG4a,EAAGpY,EAAGg5B,EAAGx7B,EAAG4a,EAAG9Z,EAAGO,EAAG,KAAM,KAAMC,IAC7DC,EAAEtC,EAAEmpF,GAAInpF,EAAEqpF,GAAIplF,EAAGqoD,EAAG83C,EAAGvjG,EAAGkC,EAAG5C,EAAGoD,EAAGg5B,EAAGx7B,EAAG4a,EAAG9Z,EAAGO,EAAIrC,EAAE+R,EAAGjQ,EAAGO,EAAGC,KAC7DgR,GACCzB,EAAI,EAAI5N,EAAG4N,GAAK,EACpBwyF,EAAI7gG,EACF1C,EAAI07B,EACJx5B,EAAIhC,EACJZ,EAAIwb,EACJ4gB,GAAKpvB,EAAEo/E,GACP5wE,GAAKxO,EAAEo/E,GACPnqF,GAAK,EAAIrC,EAAE+R,EAEZxP,EAAE2B,GADDqoD,GAAK,EAAIn/C,EAAEmvE,IACHnvE,EAAEmvE,GAAIr4E,EAAGqoD,EAAG83C,EAAGvjG,EAAGkC,EAAG5C,EAAGoD,EAAGg5B,EAAGx7B,EAAG4a,EAAG9Z,EAAGO,EAAIrC,EAAE+R,EAAGjQ,EAAGO,EAAGC,GAAAA,OACnEiqD,GAAKn/C,EAAEmvE,GACPnvE,EAAEg6C,EAAInjD,EAAImJ,EAAEosD,GACPinC,EAAExgG,EAAEmpF,GAAInpF,EAAEqpF,GAAIplF,EAAGqoD,EAAGjqD,GACrBm+F,EAAExgG,EAAE6oF,GAAI7oF,EAAE+oF,GAAIxlF,EAAGg5B,EAAGzqB,GACpB0uF,EAAExgG,EAAEisF,GAAIjsF,EAAEksF,GAAInrF,EAAG4a,EAAG7J,GACpBuB,KACI,EAAJrP,GACA1B,EACE2B,EACAqoD,EACA,KACA,KACA/oD,EACAg5B,EACAx7B,EACA4a,EACApY,EACAg5B,EACAx7B,EACA4a,EACA9Z,EACAO,EAAIrC,EAAE+R,EACN,KACA,KACAzP,GAECgR,CAAAA,CAAAA,SAEAohF,GAAGtnF,EAAGnN,EAAGqT,GAAAA,IACZtT,EAAIoN,EAAE6E,EACRnQ,EAAI,CAACsL,EAAEuuF,GAAAA,GACL,MAAQ37F,EAAG,KACTqC,EAAI+K,EAAE8E,EACR3P,EAAItC,EAAEm8F,GAAGqV,EACTvtG,EAAI3B,GAAK07E,IAAM17E,GAAKq8E,GACtB3+E,EAAIA,EAAEm8F,GAAG/5F,EAAE0oS,KAAAA,IACPx+O,EAAI,CAAC,GACP/oD,EAAI4J,EAAEuvE,GACRpwB,EAAE,GAAKn/C,EAAEioB,EACTjoB,EAAEg6E,KACC,GAAK5jF,IAAM+oD,EAAE,MAAQ/oD,EAAI1B,EAAE,IAAMsL,EAAEvJ,OACpCuJ,EAAEg6C,EAAIh6C,EAAEuvE,GAAKvvE,EAAEioB,GAAKjoB,EAAEosD,IAAMjN,EAAE,GAAKn/C,EAAEosD,EAAIpsD,EAAEg6C,EAAI5jD,IAAAA,IAC7Cg5B,EAAIv8B,EAAEohF,GACR79E,EAAIvD,EAAEqhF,GAAK99E,EAAIvD,EAAE8R,EACnB3E,EAAIk8E,GAAGtpF,EAAG8B,EAAE,GAAIsL,EAAEvJ,MAAOxB,EAAGkqD,EAAG/vB,EAAGh5B,GAAKU,EAAI,EAAI,GAAIjE,EAAE8R,GACrD/N,EAAEsP,GAAKi5C,GACPn/C,GAAKy0E,GAAGt/E,IAAM27E,GAAG1hD,EAAGh5B,EAAGU,EAAG7B,EAAGkqD,EAAGtsD,EAAE8R,EAAAA,CAAAA,OAE7B,WAEAy3E,GAAGp8E,GAAAA,IACNnN,EAAImN,EAAEyvE,GACRvpE,EAAIrT,EAAEm8F,GAAGqV,EACTzxG,EAAI,GAAKsT,EACTxR,EAAIwR,GAAKitE,IAAMjtE,GAAKysE,IAAMzsE,GAAK2qE,IAAM3qE,GAAKuzE,IAAM,IAAMvzE,GAAKuuE,GAAGvuE,GAAAA,GAChErT,EAAEirS,OAAS,KACXjrS,EAAEinF,GAAK,KACPjnF,EAAEknF,GAAK,KACPlnF,EAAEmzF,GAAK,MACF1J,GAAGzpF,EAAEg/E,GAAI7xE,EAAGtL,EAAI,GAAK,IAAK,OAAO,KACtCA,GAAK+/E,GAAGvuE,IAAMs2E,KACVx8E,EAAEgvE,GAAI0kF,MAAM,wBACX,IACC9gK,GAAAA,GACIC,EAAEinF,GAAKoN,GAAKlnF,EAAEg6E,GAAK,IACvB9zE,EAAKlG,EAAE8E,EAAI,GAAM,EACjBjS,EAAEirS,OAAS91Q,EAAEhoB,EAAE8E,EAAI,EAAIoB,GACnB,MAAQrT,EAAEirS,OAAQ,OAAO,EAC7BjrS,EAAEmpF,GAAKnpF,EAAEirS,OACTjrS,EAAEqpF,GAAK,EACPrpF,EAAE6oF,GAAK7oF,EAAEmpF,GACTnpF,EAAE+oF,GAAK/oF,EAAEqpF,GAAKl8E,EAAE8E,EAChBjS,EAAEisF,GAAKjsF,EAAE6oF,GACT7oF,EAAEksF,GAAKlsF,EAAE+oF,GAAK11E,EACdrT,EAAEinF,GAAK+jN,GACPrhN,IAAAA,OAEGk3E,MAAM,gBACbh/J,IAAO7B,EAAEknF,GAAKuN,GAAK10F,GAAKm+E,KAAAA,CAAAA,GAEtBn+E,IAAM8pF,GAAI,KACP18E,EAAI,EAAG,IAAMA,IAAKA,EACpBunF,GAAGvnF,GAAM,OAASA,EAAI,KAAOgxE,IAAOoC,GAClCyU,GAAG7nF,IAAM,OAASA,EAAI,KAAOgxE,GAC7B8W,GAAG9nF,IAAM,OAASA,EAAI,KACtB+nF,GAAG/nF,GAAM,QAAUA,EAAI,KAAOgxE,IAAOoC,GAAAA,IACrCpzE,EAAImwE,GAAInwE,EAAI05E,KAAM15E,EACpBnN,EAAK,OAASmN,EAAI,IAAMgxE,IAAOoC,GAC7B4U,GAAGhoF,EAAImwE,IAAM4tN,GAAGlrS,EAAG,KACnBq1F,GAAGloF,EAAImwE,IAAM4tN,GAAIlrS,EAAI,GAAM,EAAG,IACnC6pF,GAAK,SAEA,WAEAE,GAAG58E,GAAAA,IACNnN,EAAImN,EAAEyvE,GACRvpE,EAAIlG,EAAE8E,EACNlS,EAAIoN,EAAEioB,EAAAA,OACRrxB,IAAW,EAAPoJ,EAAEuvE,KACF,GAAKrpE,GAAK,GAAKtT,EAAU,GAC7BsT,EAAIrT,EAAEinF,GAAG95E,EAAGnN,GAAAA,MACJA,EAAEknF,IAAMlnF,EAAEknF,GAAG/5E,EAAGnN,EAAGqT,GAC3BrT,EAAEwrF,IAAMn4E,EACD,YAEA22E,GAAG78E,GACVA,EAAEyvE,GAAGquN,OAAS,cAEP1zL,GAAGpqG,EAAGnN,EAAGqT,EAAGtT,GAAAA,OACf,IAAMi8E,EAAE7uE,EAAG,GAAW,GAC1BnN,EAAE,GAAKg8E,EAAE7uE,EAAG,IAAM,EAClBkG,EAAE,GAAK2oE,EAAE7uE,EAAG,IAAM,EAClBpN,EAAE,GAAKi8E,EAAE7uE,EAAG,GACL,GAAK6uE,EAAE7uE,EAAG,GAAK,GAAKA,EAAElJ,EAAAA,CAAAA,SAEtB49E,GAAG10E,EAAGnN,GAAAA,GACT,EAAImN,EAAG,OAAOA,EAAI,MAClBkG,EAAKlG,EAAI,GAAM,SACV,GAAS,EAAJA,IAAWkG,GAAK2oE,EAAEh8E,EAAGqT,GAAK,WAEjCq7H,GAAGvhI,EAAGnN,GAAAA,OACT,IAAMA,EAAUA,EAAI,IAGjB,IADLqT,IADEA,EAAIiiF,GAAGt1F,EAAI,KACH,GAAKmN,GAAK,GAAS,GAAJkG,KACXA,EAAI,MADlBA,CAAAA,CAAAA,SAGKuqE,GAAGzwE,EAAGnN,EAAGqT,GAAAA,IACZtT,EAAI0iF,EAAGpvE,GAEPxR,EAAIsL,EADRnN,GAAS,IAAJD,GACQuC,EAAI,WACbT,IACDmjF,EAAG3xE,EAAGA,EAAEzB,EAAI,GACZ7R,EAAI0iF,EAAGpvE,GACPrT,GAAKmN,EAAEnN,GAAGsB,MACVtB,GAAKD,GAAM,GAAK8B,GAAK,GACxBmjF,EAAG3xE,EAAGA,EAAEzB,EAAIzE,EAAEnN,GAAGsC,GACV6K,EAAEnN,GAAGsB,KAAAA,CAAAA,SAELykF,GAAG54E,EAAGnN,EAAGqT,GAAAA,OAChBA,EAAE/Q,GAAK6K,EAAE7K,EACT+Q,EAAE/R,OAAU6L,EAAE7L,OAAStB,IAAO,EAC9B+D,EAAE,GAAKsP,EAAE/Q,GACF6K,EAAE7K,CAAAA,CAAAA,SAEFi6E,GAAGpvE,EAAGnN,EAAGqT,GAAAA,IACZtT,EAAIoN,EAAE89E,GAAAA,OAEVlnF,GADA/D,EAAI,GAAKD,EAAI,EAAIoN,EAAE69E,GAAG79E,EAAEohF,IAAMl7E,GAAKtT,IAAMC,GAAKD,KACxCoN,EAAE+6E,IACD/6E,EAAEuzE,GAAG1gF,EAAAA,CAAAA,SAELiqF,GAAG98E,EAAGnN,EAAGqT,EAAGtT,GAAAA,IACf8B,EAAIsL,EAAEsiC,GACRrtC,EAAI+K,EAAEkG,EAAIrT,EACVsC,EAAI6K,EAAEo+E,EACRvrF,EAAIsC,EAAItC,EAAAA,IACJiE,EAAIoP,EACNi5C,EAAIvsD,EAAAA,IACNA,EAAIoN,EAAE0yE,GACDxsE,EAAIlG,EAAEmzE,GAAI,EAAIz+E,KAAO,KACpB0B,EAAI4J,EAAEo8E,GAAG1nF,GACX06B,EAAIj6B,EACJvB,EAAIf,EACJ2b,EAAI1X,EACJmgG,EAAI93C,EAGJzrD,GAFAyrD,EAAIvsD,EACJkE,EAAIoP,EACA9P,EAAE+6E,IAAAA,OACRv6E,EAAEw4B,EAAIx7B,GACNgD,EAAEhD,GAAKwC,EAAEmrI,IACDnrI,EAAEkmF,IAAAA,KACH,EACHU,GAAGxuE,EAAGyoF,GAAIrjG,EAAIw7B,GAAK17B,EAAGyrD,EAAGroD,GAAAA,MAAAA,KAEtB,MAED9D,EAAIo8B,EACJ3qB,EAAI7Q,EACJiD,EAAIsoD,EACJjqD,EAAI4B,EACJ6N,GALE/O,EAAIQ,GAKA+6E,GAAAA,GACHn+E,IACFo1F,GAAG55E,EAAGyoF,EAAG,KAAM,KAAM,EAAGpgG,EAAG3B,GAC5BwmF,EAAGltE,EAAGyoF,EAAI,EAAG,EAAG,EAAGtyF,EAAI,EAAG9N,EAAG3B,EAAI,GAChC+hG,GAAKtyF,EACLzP,GAAKyP,IACJ3R,GAAAA,IAEF,IAAI4R,EAAI,GAAKhP,EAAE/C,EACbipF,EAAIl3E,EAAI,EACRw5E,EAAI0Q,EAAGnqF,EAAG/O,EAAE/C,GACZmoG,EAAIplG,EAAEihG,EACNjhG,EAAIA,EAAEiB,GAAK7D,GAAK4C,EAAE/C,GAAKurF,EACzBprF,EAAIyR,GAEJ,KACIC,EAAIs2F,EACNM,EAAI1lG,EACJyuG,EAAI,MACDhc,GAAG75E,EAAGyoF,EAAGpgG,EAAG3B,EAAIyP,EAAG,EAAG9N,EAAG3B,GAAImvG,EAAI1/F,GAAK,KAEvCkqE,GAAKw1B,GAAKvoB,GAAKl3E,EACjBiqE,EAAIlqE,IAAMkqE,EAAIlqE,IAAAA,EAFNs4E,GAAIv4E,EAAE42F,MAAQ,EAAK,KAGzB9sF,EAAGyoF,IAAKoN,EAAGxtG,EAAG3B,EAAImvG,EAAI1/F,EAAGkqE,EAAIw1B,EAAGxtG,EAAG3B,EAAImvG,GACzCA,EAAIx1B,CAAAA,CAENooB,GAAKtyF,EACLzP,GAAKyP,IACH3R,EACE8oF,IAAMlmF,GAAKwoF,EAAAA,CAEjBxqF,GAAKwC,EAAEmrI,IAAMluC,EAAEl0C,EAAGroD,EAAIpD,EAAGyrD,EAAGroD,GAAKlD,EAAIw7B,EAAI,GAAK17B,EAAGA,GAAAA,MAAAA,KAE9C,MACHA,EAAI8a,EACJ/J,EAAIwyF,EAKJtyF,GAJA6J,EAAIpY,EAAE+6E,KAGNj8E,EAAIsZ,IADJ3X,GADAogG,EAAI,GAAK7gG,EAAEvD,GACH,IAGRG,EAAI87F,EAAGtgF,EAAGpY,EAAEvD,GACZ+R,EAAIxO,EAAEygG,EACDzgG,EAAIA,EAAES,GAAKu4B,GAAKh5B,EAAEvD,GAAKG,EAAGo8B,EAAIx7B,GAAK,KACtCkoF,EAAIl3E,EACJw5E,EAAIhoF,EACJ4kG,EAAI,IAAI/V,EACRrvF,EAAI6O,EAAIvP,EACHwP,EAAID,EAAI+J,EAAG/J,EAAI7O,GAClBgmF,EAAGE,EAAEsC,KAAM4c,GAAIrhB,GAAGqhB,EAAGtnG,EAAG+Q,EAAGwyF,EAAG93C,EAAGroD,GAAK2N,GAAKwyF,EAAKngG,GAAKmgG,EACvDxyF,EAAIC,IACDk3E,EAAGE,EAAEsC,KAAM4c,GAAIrhB,GAAGqhB,EAAGtnG,EAAG+Q,EAAGE,EAAGw6C,EAAGroD,GAAK2N,GAAKE,EAAK7N,GAAK6N,KACtDyqB,EACEv4B,IAAMT,GAAKpD,EAAAA,CAAAA,MAAAA,KAGd,KACCwb,GAAK2wC,GAAK83C,GAAKngG,GAAK,EAAIV,EAAEvD,EAAG,KAG/B4R,EAAI06C,EACJ3wC,EAFA9a,EAAIoD,GAAKlD,EAAIw7B,GAAK17B,GADlBwB,GAAKtB,EAAIw7B,GAAK0/D,EAAG14F,EAAE+6E,GAAI/6E,EAAEvD,IAIzBokG,EAAI93C,EACJtoD,EAAIC,EAEJ9D,EAAI,GACCkC,GAFLyP,EAAIzP,GAES,EAAG,GAAKA,IAAKA,EAAGlC,EAAEkC,GAAK+hG,EAAEpgG,EAAI3B,GAAAA,IACrCA,EAAIyP,EAAI,EAAG,GAAKzP,IAAKA,EAAGuP,EAAE+J,EAAItZ,GAAKlC,EAAEkC,GAC1CkoF,GAAGhnF,EAAGg5B,EAAGx7B,EAAGurD,EAAGzrD,EAAGyrD,EAAGroD,EAAAA,MAChBsmF,GAAGhnF,EAAGg5B,EAAGx7B,EAAG4a,EAAGyoF,EAAG93C,EAAGroD,GAEhCA,EAAIlE,EACJusD,EAAIj5C,CAAAA,CAENi5C,GAAKj5C,GAAKmtF,EAAEzgG,EAAGsT,EAAGpP,EAAGqoD,EAAGlqD,EAAAA,CAAAA,SAEjBqzF,GAAGtoF,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEgoB,EACRp1B,EAAIoN,EAAEgxE,GAAKhxE,EAAEkG,EAAIlG,EAAEo+E,EACnB1pF,EAAI7B,EAAImN,EAAEo+E,EAAAA,GACZxnF,EAAE/D,GAAKmN,EAAE5J,EAAEg2D,GACXx1D,EAAE,IAAMlC,GACJ,EAAIA,EAAG,KACLO,EAAI+K,EAAE5J,EACRjB,EAAI6K,EAAE0yE,GACN57E,EAAIkJ,EAAEmzE,GACNh0B,EAAIlqD,EAAEwB,MAAAA,GACRqmF,GAAG98E,EAAGtL,EAAGwR,EAAGtT,GAIZ8B,EAHAoC,EAAI,CAACA,GAILF,GAHAsP,EAAIlG,EAAEo+E,IACNxrF,EAAIC,IAGJ+D,EAAE3B,EAAEW,EAAIX,EAAE07E,IACV/9E,EAAIqC,EAAEm3D,IAAMx5D,EAAIqC,EAAEm3D,GACdlmD,EAAIjR,EAAE+kD,EAAG,KACP5jD,EAAInB,EAAE+kD,EAAI9zC,EACZA,EAAIjR,EAAE+kD,EACRtlD,EAAE,IAAM0B,EAAI+oD,CAAAA,CAAAA,GAEdj5C,GAAKtT,EACAsT,EAAI,GACHxR,EAAE,IAAM,EAAIO,EAAEW,EACfX,EAAEs6E,GAAKrpE,EAAIjR,EAAE+kD,EACb/kD,EAAE6P,EAAI7P,EAAE07E,GAAK17E,EAAEW,EACfX,EAAEgzB,EAAIr1B,EAAIsT,EACVA,EAAI,GACLA,EAAG,IACLpP,EAAIA,EAAE,GAEF,IADJoP,EAAIlG,EAAE+uE,IACKs1B,EAAG,CAEV,IAAIj1E,EAAIlpB,EAAEjR,EAAE0oS,KAKV/pS,GAJAhB,EAAIsT,EAAEm+F,EACN3vG,EAAIO,EAAE6P,EACN7P,EAAIA,EAAEgzB,EACN7xB,EAAIg5B,EAAE6kD,GACF7kD,EAAEzqB,GACN6J,EAAIvZ,EAAAA,IACJm6B,EAAIA,EAAE8kD,GAAKl0E,EAAE2xE,GAAKviD,EAAEzqB,EACtB,EAAI6J,KAEJ,KACIyoF,EAAI9hG,EACNzB,EAAIoD,EACJlB,EAAIlB,EACJ1B,EAAIoD,EACJqO,EAAI2qB,EAAAA,OACEx8B,GAAAA,KACDq+E,GACHoM,GAAG4Z,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,GAAAA,MAAAA,KAEZ0uE,GACHyG,GAAGqd,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,GAAAA,MAAAA,KAEZ20E,GACHQ,GAAGqd,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,GACfqsE,GAAG99E,EAAGyR,EAAG,EAAG7O,EAAG,EAAG,cAEf0nF,GACHC,GAAG0Z,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,GAAAA,MAAAA,KAEZkuE,GACHuB,GAAG+iB,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,EAAG,cAEf40E,GACHnF,GAAG+iB,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,EAAG,GAClBqsE,GAAG99E,EAAGyR,EAAG,EAAG7O,EAAG,EAAG,cAEfi7E,GACHqD,GAAG+iB,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,EAAG,cAEf+sE,GACH0C,GAAG+iB,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,EAAG,GAClBqsE,GAAG99E,EAAGyR,EAAG,EAAG7O,EAAG,EAAG,cAEf6jF,GACHI,GAAGod,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,GAAAA,MAAAA,KAEZ60E,GACHO,GAAGod,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,GACfo5E,GAAG7qF,EAAGyR,EAAG7O,EAAG,EAAG,cAEZ6yG,GACH3qB,GAAGmZ,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,GAAAA,MAAAA,QAGf7N,EAAE,GAENE,GAAKqoD,EACL/vB,GAAKx7B,CAAAA,CAEPoM,EAAE2xE,IAAM18E,CAAAA,MACHy+J,MAAM,6BACb98J,EAAEoJ,EAAE2xE,IAAMzrE,EAAExP,OAAAA,CAAAA,CAGhBsJ,EAAEo+E,EAAIvrF,EACN+D,EAAEoJ,EAAEo+E,GAAKp+E,EAAEzO,EAAAA,CAAAA,SAEJwsF,GAAG/9E,GAAAA,IACNnN,EAAAA,GACA,EAAImN,EAAEywE,GAAI,OAAO,MAChB59E,EAAI,EAAGA,EAAImN,EAAE+6E,KAAMloF,EAAG,KACrBqT,EAAIlG,EAAEuzE,GAAG1gF,GAAGm+F,EACdp+F,EAAIoN,EAAEuzE,GAAG1gF,GAAGq+F,EAAAA,GAEZ,EAAIhrF,EAAE,GAAGtT,EAAE,GAAK,GAAGuC,GACnB,EAAI+Q,EAAE,GAAGtT,EAAE,GAAK,GAAGuC,GACnB,EAAI+Q,EAAE,GAAGtT,EAAE,GAAK,GAAGuC,EAEnB,OAAO,SAEJ,WAEA6oF,GAAGh+E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GAAAA,GACrB,GAAK+K,EAAE+E,EAAG,KACR5P,EAAI6K,EAAEyhF,GACR3qF,EAAIkJ,EAAE0hF,GAAAA,IACH9qF,EAAE,MAAQy4E,GAAGrvE,EAAE+E,IAAKlS,EAAIqT,IAAKrT,EAChCw8E,GAAGrvE,EAAE+E,GAAG5P,EAAG2B,EAAGlE,EAAG8B,EAAG9B,EAAG8B,EAAGO,GAAKE,EAAIvC,EAAKkE,EAAIpC,EAAKA,GAAKO,EACxD+K,EAAEyhF,GAAKtsF,EACP6K,EAAE0hF,GAAK5qF,CAAAA,CAAAA,CAAAA,SAGFgjF,GAAG95E,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAE5J,EAAEq5E,GACV78E,EAAI,GAAKsT,EAAEnB,GAAK,GAAKmB,EAAEnB,EAAI/E,EAAE5J,EAAE4jD,EAAIh6C,EAAEo+E,EACjBA,GAApBxrF,EAAIoN,EAAEo+E,EAAIxrF,EAAIA,EAAIoN,EAAEo+E,EACtBxnF,EAAE/D,GAAKmN,EAAE5J,EAAEg2D,GACPv5D,EAAID,EAAG,KACL8B,EAAIsL,EAAE5J,EAAEK,MACVxB,EAAIiR,EAAE6oE,GACN55E,EAAI+Q,EAAE8xE,GAAKtjF,EAAI9B,EACfkE,EAAIkJ,EAAEgoB,EACNm3B,EAAIn/C,EAAEgxE,GAAKhxE,EAAEkG,EAAItT,EACjBwD,EAAI4J,EAAEo8E,GACRxlF,EAAE,GAAKoJ,EAAEsiC,IACT1rC,EAAE,GAAKR,EAAE,GAAGkmF,IACZiM,GAAGnyF,EAAE,GAAIxD,EAAGC,EAAGiE,EAAGqoD,EAAGlqD,EAAGE,GACxB6oF,GAAG93E,EAAGtT,EAAGC,EAAGoC,EAAGE,EAAGT,EAAAA,CAEpBsL,EAAEo+E,EAAIp+E,EAAE2xE,GAAK9+E,CAAAA,CAAAA,SAENknF,GAAG/5E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,GAAAA,IACxB2B,EAAIkJ,EAAEg+R,EAAIprS,EACZusD,EAAIn/C,EAAEg+R,EAAIprS,EACVwD,EAAI4J,EAAEovB,EACNA,EAAIpvB,EAAErM,EACNC,EAAIsS,EAAIlG,EAAEg+R,EACVxvR,EAAI5a,EACNc,EAAIwR,EAAItT,EAAI8B,EAAAA,IACRuiG,EAAI/wF,EAAItT,EAAIqC,EACdvB,EAAI,IAAM07B,EAAEqhD,GACZ76E,EAAIoK,EAAEu6E,GAAKzjF,EAAI,SACf9D,EAAI,EAAIo8B,EAAEqhD,GAAKrhD,EAAEgkD,GAAK,KACtB3uE,EAAI2qB,EAAEq5E,GACN5xG,EAAIjD,EAAIqjG,EAAI7nB,GAAGhgD,EAAG+vB,EAAGroD,GAAK,KAC5BF,EAAEoJ,EAAEo+E,EAAInpF,GACR2B,EAAEqgG,GAAKviG,GAAAA,IACHQ,GAAAA,EACJ8K,EAAG,OAAS,MACH9K,GAAKtB,EAAIqjG,GAAK,KACftyF,EAAI,KACJ7N,GAAKlB,EAAG,KAERgP,EAAIhR,EAAIsS,EACVtP,GAFIhB,EAAIoK,GAEJu6E,IACJ3kF,EAAE0sF,GAAK1sF,EAAEw5B,EACTx5B,EAAE2sF,GAAK39E,EAAAA,EACHhP,EAAEjC,EAAE88E,IAAM6K,EAAG1lF,EAAEjC,EAAEy/E,GAAIx9E,EAAEjC,EAAEklF,IAC7BjjF,EAAIkB,EAAI0xF,EAAAA,CAAAA,GAEVrpC,EAAI16C,IAAM5N,EAAIu4E,GAAGhgD,EAAG+vB,EAAGroD,IACvBF,EAAE,MAAQC,GACVA,EAAE2jF,KAAQ3nF,EAAEe,GAAKiD,EAAEghF,GAAM3iF,GAAAA,IACpBA,EACH,GAAKu9E,EAAGr8E,GAAIS,EAAE6lF,GAAK,CACb/3E,EAAIvO,EACNwO,EAAI/R,EAAAA,IACJipF,EAAIloF,EACJwqF,EAAIvnF,EAAE2qF,GAAGlM,EAAG3wE,GAAMq0E,GAAK,GACzBpiF,EAAEC,EAAE6lF,IAAAA,IACE0B,EAAEjpF,GACH0iF,EAAGlzE,EAAGA,EAAEF,EAAI25E,EAAEjpF,GAAKyP,EAAEk3E,GAAKsC,EAAEjqF,MAASwQ,EAAI,IACzCkzE,EAAGlzE,EAAGA,EAAEF,EAAI25E,EAAEjpF,EAAI,KAAMyB,EAAE,KAAOwnF,EAAEjqF,OAASwQ,EAAIy5E,EAAEjqF,OAAAA,GAClDwQ,IAAMzP,GAAAA,EAAI,MACVyP,EAAI8rE,GAAG55E,EAAEm6F,EAAE,GAAIn6F,EAAEq6F,EAAE,GAAI96F,GAAAA,GAC5BA,EAAEU,EAAG,SACL5B,GAAK,IAAMyP,EAAG,KACXzP,EACH,GAAI2B,EAAEwqF,GAAIxuF,EAAEe,IAAMiD,EAAEghF,GAAMlzE,GAAK,KAAQ,MAClC,IACH8tE,EAAGr8E,GACHlB,EAAIu7E,GAAG55E,EAAEm6F,EAAE,GAAIn6F,EAAEq6F,EAAE,GAAI96F,GACvBq8E,EAAGr8E,GACHwO,EAAI6rE,GAAG55E,EAAEm6F,EAAE,GAAIn6F,EAAEq6F,EAAE,GAAI96F,GACvB0lF,EAAIrL,GAAG55E,EAAEm6F,EAAE,GAAIn6F,EAAEq6F,EAAE,GAAI96F,GACnBA,EAAEU,EAAG,MACTjE,EAAEe,IAAOkoF,GAAK,GAAO5mF,GAAK,GAAOyP,GAAK,EAAKC,KAAO,KAEtD1P,GAAAA,IACEtB,IACAurD,GAEKvsD,IACHusD,EAAI,IACJroD,EACF,MAAQ3B,GAAK2B,GAAK7B,KAAO6B,EAAI,KAAO3B,EAAE6K,EAAGlJ,GACzC,MAAQ9D,GAER,KAAOwb,EAAI5a,GACR+Q,EAAI9R,EAAE2b,KACJxb,EAAEgzG,GAAI,UAAYrhG,EAAK,cAAgB3R,EAAEknF,IAAMv1E,CAAAA,MACjD,GAAI,IAAMA,EAAG,IAClBA,EAAI+vE,GAAG/vE,EAAI,IAAKvO,GAChBwO,EAAI6rE,GAAG55E,EAAEm6F,EAAE,GAAIn6F,EAAEq6F,EAAE,GAAI96F,GACvBq8E,EAAGr8E,GAEHwO,EAAI28H,GAAG3uI,EADPgS,EAAI8vE,GAAG9vE,EAAGxO,IAENA,EAAEU,EAAG,SACLlD,EAAIsS,EAAItB,GAAKlQ,EAAId,EAAI+Q,EAAG,MAAM3E,EAC7B,IAAK87E,EAAI,EAAGA,EAAIn3E,IAAKm3E,EAAGjpF,EAAEe,EAAIkoF,GAAKjpF,EAAEe,EAAIkoF,EAAIl3E,GAAAA,IAClDhR,GAAK+Q,EACAw6C,GAAKx6C,EAAGw6C,GAAKvsD,GACfusD,GAAKvsD,IAAMkE,EAAG,MAAQ3B,GAAK2B,GAAK7B,KAAO6B,EAAI,KAAO3B,EAAE6K,EAAGlJ,GAAAA,GAC1DF,EAAEhD,GAAKc,GACPyqD,EAAI16C,IAAM5N,EAAIu4E,GAAGhgD,EAAG+vB,EAAGroD,IACnB,MAAQ9D,EACV,KAAOwb,EAAI5a,GACR+Q,EAAI9R,EAAE2b,KACJxb,EAAEgzG,GAAI,UAAYrhG,EAAK,cAAgB3R,EAAEknF,IAAMv1E,CAAAA,KACjD,MAAIA,EAAIjR,GASR,MAAMsM,EAAAA,IARX9K,EAAIyP,EAAI,IACH/N,EAAE,MAAQ5D,GAAIwb,EAAI5a,GACpB+Q,EAAI9R,EAAE2b,KAAQxb,EAAEgzG,GAAI,UAAYrhG,EAAK,cAAgB3R,EAAEknF,IAAMv1E,EAChEA,EAAI/Q,EAEJgD,IAAI1B,KADJ0P,EAAI5R,GACQqgF,KACZxgF,EAAE8R,GAAKC,EAAEohG,EAAE9wG,GACXA,GAAAA,CAAI,CAENA,GAAK0B,EAAER,EAAEU,GAAKk9E,EAAG59E,GAAAA,CAAAA,GAEf4J,EAAEu6E,IAAMnkF,EAAEU,GAAKlD,EAAIc,EACrBkC,EAAEoJ,EAAEovB,EAAEt4B,GACHkJ,EAAEA,EAAI,EACNA,EAAEovB,EAAIpvB,EAAEsiF,GACRtiF,EAAEg+R,EAAIh+R,EAAEuiF,GACT,EAAIviF,EAAErM,EAAE88E,IAAM6K,EAAGt7E,EAAErM,EAAEklF,GAAI74E,EAAErM,EAAEy/E,QAC5B,IAAIh9E,EAAEU,EAAG,MAAMkJ,EACf,MAAQ7K,GAAKA,EAAE6K,EAAGlJ,EAAI7B,EAAIA,EAAI6B,GAAKkJ,EAAEA,EAAI,EAAKA,EAAEg+R,EAAIpqS,EAAIsS,CAAAA,CAAAA,OACtD,SAETlG,EAAEA,EAAI,EACC,WAEAi+E,GAAGj+E,GACVpJ,EAAE,MAAQoJ,GACVA,EAAE69E,GAAK,KACP79E,EAAE+9E,GAAK,KACP/9E,EAAEuzE,GAAK,SACH1gF,EAAImN,EAAEozE,GAAAA,MACFvgF,IAAMA,EAAEmzG,EAAI,MACpBhmG,EAAE64E,GAAK,KACPjiF,EAAE,MAAQoJ,EAAAA,CAAAA,SAEHiqG,KAAAA,IACHjqG,EAAI,IAAIivF,GAAAA,OACR,MAAQjvF,EAAU,MACtBA,EAAEA,EAAI,EACNA,EAAEg5E,GAAKmF,GACP7J,GAAG,YAAa,kBAChBA,GAAG,YAAa,oBAChBA,GAAG,eAAgB,qBACnBA,GAAG,eAAgB,uBACnB0I,GAAKwgN,EACL7jN,GAAKuL,EACL7H,GAAK8H,EACLvL,GAAKoM,EACLnM,GAAKoM,EACLnI,GAAKuI,EACL9I,GAAK+I,GACLmyC,EAAKwlK,gBAAkB9uM,GACvBspC,EAAKylK,eAAiBz1M,GACfzoF,EAAAA,CAAAA,SAEA83E,GAAG93E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IAClBO,EAAI,EACNE,EAAI,CAAC6K,GACLlJ,EAAI,CAACjE,GACLssD,EAAIvsD,EAAEw8B,EACNh5B,EAAIxD,EAAEe,EACNy7B,EAAI,KACJx7B,EAAI,EACNoM,EAAG,OAAS,IACNkG,EACF,KAAOjR,GAAK45E,EAAE1vB,EAAG,IAAM,KACjB3wC,EAAIrZ,EACN8hG,EAAIngG,EACJpD,EAAId,EACJgD,EAAI,EACJ5C,EAAIU,EAAE07B,EACN3qB,EAAI/Q,EAAE0oF,GAAG1oF,EAAE4uC,IACXzrC,EAAIg4E,EAAE77E,EAAG,MACPU,EAAEsrF,GAAM,GAAKnoF,EAAI5B,EAAI,MACpB,QACHvB,EAAEsrF,IAAM,GAAKnoF,EACb4N,EAAE63E,GAAKzlF,EACP4N,EAAE0sE,GAAK3iE,EAAE,GACT/J,EAAE88H,GAAKtqC,EAAE,GACTxyF,EAAEoyF,EAAI,CAAC,QACLnjG,EAAE4uC,GACJ1rC,EAAE,GAAKlD,EAAE4uC,IACDzrC,GAAAA,KACD,OACA,EACH4N,EAAE5R,EAAIg8E,EAAE77E,EAAG,GAAK,EAChB4C,EAAIkiF,GAAGgX,EAAGrqF,EAAE0sE,GAAI1sE,EAAE5R,GAAIi8F,EAAGrqF,EAAE88H,GAAI98H,EAAE5R,GAAI,EAAGa,EAAG+Q,EAAEoyF,GAC7CpyF,EAAEoyF,EAAIpyF,EAAEoyF,EAAE,cAEP,MAMDjyF,EALE1P,EAAI25E,EAAE77E,EAAG,GAAK,EAChB2R,EAAI,GAAKzP,EAAI,EAAI,EAAIA,EAAI,EAAI,EAAIA,EAAI,EAAI,KAC3CsZ,EAAE,GAAKsgF,EAAGrqF,EAAE0sE,GAAIxsE,GAChBF,EAAE5R,EAAI8R,EAGDC,EAFDhP,EAAIkiF,GAAG5iF,EAAG,EAAG,EAAGxB,EAAG+Q,EAAEoyF,GAEZ,KACP/a,EACFsC,EAAIlpF,EACJ8lG,EAAIv2F,EACJC,EAAI,IAAM,GAAKs2F,EAAEnoG,GACjByoG,EAAItzE,EAAEtjB,GAAAA,GACJ,MAAQ42F,EAAG12F,EAAI,MACd,KACCy/F,EAAIrJ,EAAEnE,EAAE,GACVA,EAAImE,EAAEnkG,EAAAA,IACRykG,EAAE,GAAKN,EAAEnE,EAAE,GAAG,GACT/a,EAAI,EAAGA,EAAI,EAAIsC,IAAKtC,EAAGwf,EAAExf,GAAK3C,EAAGkrB,EAAExN,EAAI/a,GAAIwf,EAAExf,EAAI,SAC/CA,EAAI,EAAIp3E,IAAKo3E,EAAGwf,EAAExf,GAAK,EAC9Bkf,EAAEnE,EAAE,GAAK,KACTmE,EAAEnE,EAAE,GAAKyE,EACT12F,EAAI,GAGRhP,EAAIgP,EAAAA,MAAAA,KAED,gBAGHhO,EAAE,GAEN3B,EAAIW,CAAAA,CAAAA,CAAAA,GAGVT,EAAIA,EAAE,GACN2B,EAAIA,EAAE,GACF7B,GAAK45E,EAAE1vB,EAAG,MAAuBlqD,EAAI,IAAnBrB,EAAIi7E,EAAE1vB,EAAG,KAAoB,IAAMvrD,GAAS,CAChEhB,EAAEoN,EAAI,QACAA,CAAAA,CAAAA,IAEJkxF,EAAAA,GACCA,EAAIj8F,EACPpC,EAAG,KAMCq+E,EACA8d,EAIAlqF,EAVED,EAAIjS,EACNo+F,EAAI77F,EACJ4yB,EAAIjxB,EACJy3F,EAAI36F,EACJq0B,EAAI/hB,EAGJ8/F,EAAInhG,EAAEuqB,EACN6tE,EAAIp4F,EAAElR,EACNK,GAAI,CAAC,MAELknE,GAAI,EACJ4T,GAAK,EACL+f,GAAK/F,GAAGyF,GACVroF,EAAG,OAAS,IACN+hB,GAAK4mD,EAAEm3B,EAAG,GAAI,KACZj3B,GAAKF,EAAEm3B,EAAG,GAAK,EACjB+3L,GAAKjvM,EAAGkC,EAAGjiB,IACXQ,GAAKuf,EAAG/mE,EAAGgnD,IACXsB,GAAK0tN,GAAKxuN,GAAAA,IACPuI,GAAGimN,GAAIxuN,GAAI,EAAG1qE,EAAG7Q,IAAI,MAAMkS,EAAAA,IAChClS,GAAIA,GAAE,GACNipG,EAAEnf,GAAK/O,GACFmC,EAAK,EAAGA,EAAKb,KAAMa,EAAI,KACtB7B,GAAMr7E,GAAEk9E,IAAO,EAAK,MACxBl9E,GAAEk9E,GAAM7B,GACRA,IAAMnU,KAAMA,GAAImU,GAAK,OAGrB22B,EAAElvG,EAAG,MAAMoP,EAAAA,IACV8oF,EAAK,EAAG,EAAIA,IAAMA,EAAI,KACrBpgB,GAAIyP,GAAG2Q,IACVA,GAAM,EAAIT,IAAM3f,IAAK,GAAK2f,GAC3Bzf,GAAKF,KAAME,GAAKF,GAAAA,CAAAA,IAEda,GAAKmB,EAAG1V,GAAI2zB,GAAIoM,GAChBxqB,GAAKvV,GACPyV,GAAKC,EAAGH,GAAIkd,GAAAA,GACV,MAAQhd,GAAI,IAAInB,GAAK,UACpB54E,EAAE,OAAS65E,IAAMjB,GAAKmB,GAAAA,IACvBvB,GAAKpnD,EAAE8mD,IAAAA,GACP,MAAQU,IAAM,MAAQJ,IAAM,MAAQK,GAAI,CAC1C5qE,EAAE7E,EAAI,QACAkG,CAAAA,CAAAA,IAEJkqE,GAAKX,GAAAA,IACJyB,EAAKpsE,EAAI,EAAGosE,EAAKhW,KAAKgW,EAAI,KACzB5B,GAAKE,GAAG0B,GACVlC,GAAKM,GAAG0hB,EACR9hB,GAAKI,GAAG4hB,EACR9f,GAAK,EACLnB,GAAK,EACLqB,GAAK,MACF0d,EAAK,EAAG,EAAIA,IAAMA,EAAI,CACzBpgB,GAAIyP,GAAG2Q,GACPhgB,GAAGggB,GAAM5e,GACTlB,GAAG8f,GAAMlqF,GACRkqF,GAAM,EAAIT,IAAM3f,IAAK,GAAK2f,GAC3B37F,EAAG,KACGs9E,GACFY,GAAKlC,GACLuB,GAAKtrE,EACLyrE,GAAKlB,GACL4E,GAAK5D,GACL6D,GAAKnvE,EACLysE,GAAK,EACLE,GAAKtB,GAAG/gD,EACR8kD,GAAKrF,EAAE4C,GAAI,MACbvqB,EAAEopB,GAAI,EAAG,EAAGQ,IACRoD,GAAI,KACFI,GAAKzF,EAAE4C,GAAI,GAAK,EAClBgD,GAAK5F,EAAE4C,GAAI,GACXD,GAAK3C,EAAE4C,GAAI,GAAKgD,GAAK,EAAI,GAC3BnE,GAAGkB,IAAM,KACJ8C,KAAyBhE,GAAjBkB,GAAK3C,EAAE4C,GAAI,IAAe,OACnCZ,GAAK,MACJ,KACDsC,GAAKnrD,EAAE,IACT2qD,GAAK9D,EAAE4C,GAAI,GAAK,KACd,GAAKkB,GAAI,CACXxC,GAAGnwE,EAAI,MACH+wE,GAAK,QACHn+E,CAAAA,CAAAA,IAEHs9E,GAAK,EAAGA,GAAKyC,KAAMzC,GAAIiD,GAAG4V,GAAG7Y,KAAOrB,EAAE4C,GAAI,OAC3CT,QAAAA,EACF+G,QAAAA,EACA3E,GAAKjD,GACLuE,GAAKvB,GACLlC,GAAKH,GACLuC,GAAK/C,GACLuB,GAAK,EACLH,GAAK0B,GAAGhkD,EACRmkD,GAAK,EACLK,GAAKhD,EAAG,IAAKqqB,GACfvmG,EAAG,KACIqQ,EAAE6uE,GAAI,EAAG,EAAGc,GAAI,KADX,IAEN7F,EAAE6C,GAAI,GAAI,KACRkD,GAAK,EAAI,EAAI/F,EAAE6C,GAAI,OACrBV,GAAK,EAAInC,EAAE6C,GAAIkD,KACR3D,GAAI,MAAMv8E,CAAAA,MACds8E,GAAKC,GAAAA,IACP8G,GAAK,EAAGA,GAAK9G,IAAMD,MAAQ,CAC9ByB,EAAGf,IAAAA,IACCqd,GAAKnb,GAAG,GAAc,IAAT0B,EAAG5D,MACpBmG,EAAGnG,GAAIA,GAAGjtE,EAAIsqF,GAAG55F,GAAAA,IACbw/E,GAAKoa,GAAG56F,MAAAA,GACR,GAAKwgF,GAAKtB,GAAG0E,MAAQpD,GAAK,GAAKA,KAAOpB,GAAKoB,QAC1C,KACCE,GAAK,IAAMF,GACbryC,GAAKqyC,GAAK,GACVG,GAAKkU,GAAG1mD,IACRwxC,GAAKjF,EAAE6C,GAAIyX,GAAG7mD,KAAOwyC,GAAAA,GACnBiD,GAAKjE,GAAK7C,GAAI,MAAMv8E,EAEtB,IAAK,IAAIqgF,GAAKF,GAAKtB,GAAK,EAAG,EAAIO,MAC7BT,GAAG0E,MAAQhD,EAAAA,CAAAA,CAGnBlD,GAAK,QACCn9E,CAAAA,CAERm9E,KAAOuB,GAAGpzE,EAAI,GACd6wE,GAAKgB,EAAAA,EAENhB,GAAKA,KAAOY,GAAG36E,KAAOy6E,GAAKxsE,EAAEivE,GAAIC,GAAI,EAAG3D,GAAIQ,KAC7CD,IAAM,GAAKU,GAAMR,GAAKQ,IAAQpB,GAAGnwE,EAAI,EAAK+wE,GAAK,MAE7C,GAAKA,GAAI,MAAM7qE,EAAAA,GACnB+pE,IAAM,GAAKmZ,GAAG4F,KAAQ/e,GAAK,GAAKG,GAAGtrE,GAAG3P,GACtCi8E,IAAMhB,GAAGtrE,GAAG3P,EACZ2P,GAAKisE,GACD,GAAKie,EAAI,KAEThX,GADE9F,GAAK9C,GAAG,OAEP4I,GAAK,EAAGA,GAAKpJ,KAAKoJ,GAAI5I,GAAG4I,IAAM9F,KAAOA,GAAK9C,GAAG4I,KACnD1G,IAAMY,EAAAA,CAAAA,CAAAA,GAGV5C,GAAG+R,GAAKpR,GACRX,GAAGkL,GAAK,EACRvK,KACIX,GAAGuI,IACD7I,GAAG,GAAGE,GAAG,GAAK,GAAG/6E,OAAS,GACzB66E,GAAG,GAAGE,GAAG,GAAK,GAAG/6E,OAAS,GAC3B66E,GAAG,GAAGE,GAAG,GAAK,GAAG/6E,SACnB,EACF,GAAKi9E,IACH,IAAMpC,GAAG,GAAGE,GAAG,GAAK,GAAG/6E,QACrBm7E,GAAGkL,GAAK,EAAKlL,GAAGuI,IAAM7I,GAAG,GAAGE,GAAG,GAAK,GAAG/6E,OAAS,IACtDm7E,GAAGoN,IAAMpN,GAAGkL,IAAM,EAAIlJ,GAClBhC,GAAGoN,GAAI,KACLrL,GACFF,GAAK7B,GAAAA,IACF+B,GAAK,EAAGA,GAAK2H,KAAM3H,GAAI,KACtBM,GAAKN,GACPO,GAAKT,GAAGqQ,GAAG7P,IACXkH,GAAK1H,GAAG6f,EAAE,GAAG7f,GAAG+f,EAAE,GAAKvf,IAAAA,KAClBkH,GAAG1kF,OACJy9E,GAAGz8E,EAAI0jF,GAAG1jF,EAAI,IAAOy8E,GAAGz9E,MAAQ0kF,GAAG1kF,QACnCy9E,GAAGz8E,EAAI,EACRy8E,GAAGz9E,MAAQ,EACXw9E,KAAOiH,GAAGC,GAAI,EAAGjH,IACjBD,KAAOiH,GAAGzH,GAAG6f,EAAE,GAAG7f,GAAG+f,EAAE,GAAKvf,IAAK,GAAIC,IACrCD,KAAOiH,GAAGzH,GAAG6f,EAAE,GAAG7f,GAAG+f,EAAE,GAAKvf,IAAK,EAAGC,IACrCgH,GAAGzH,GAAG6f,EAAE,GAAG7f,GAAG+f,EAAE,GAAKvf,IAAK,GAAIC,IAAAA,CAAAA,CAAAA,CAIxCqrB,EAAEpf,GAAK7pF,GACPipG,EAAEliB,GAAK7f,GACP+hC,EAAE1pB,GAAK/D,GACPytB,EAAElf,GAAKtO,GACPyhB,EAAI,QACEr+F,CAAAA,CAERq+F,EAAI,OAERj8F,EAAIi8F,GACI,CACNt+F,EAAEoN,EAAI,QACAA,CAAAA,CAAAA,GAEJ,EAAIpM,GAAAA,GACAwC,EAAEq6E,GAAK,GAAK78E,GAAKunF,EAAG/kF,EAAEg9E,GAAIx/E,GAAK,CACnChB,EAAEoN,EAAI,EACN/K,EAAI,QACE+K,CAAAA,OAEH5J,EAAEq6E,GAAK,MACV2B,GAAKx/E,EACPmhF,GAAK5+E,EACLggF,GAAKr+E,EACL07E,GAAKJ,GAAGz+E,EACR++E,GAAKF,GAAGsL,GAAAA,GACV1L,GAAGlsE,EAAI6tE,GACP3B,GAAG7gF,EAAI4jF,GACP3C,GAAG4O,GAAK0N,EAAG/a,GAAIrB,IACfF,GAAGi2B,GAAK,GAAK/1B,IAAM,GAAK,GAAKA,IAAM,EAC/BxsE,EAAG,CACLtT,EAAEomF,GAAKqQ,GAAAA,MACDrpF,CAAAA,CAAAA,GAGJ,OADJovB,EAAIpH,EAAE7yB,EAAI2B,IACK,CACblE,EAAEoN,EAAI,EACN/K,EAAI,QACE+K,CAAAA,CAER/K,GAAKA,EAAI8kF,GAAGnnF,EAAGw8B,EAAG,EAAGj6B,EAAG2B,EAAGA,EAAG,SAAWqoD,EAAEroD,EAAAA,MACrCkJ,CAAAA,CAAAA,OAER/K,GACK,MAAQP,EAAKA,EAAE,GAAK06B,GAAMx4B,EAAE,MAAQw4B,GAAIx4B,EAAEsP,IAAMtT,EAAEorS,EAAI,EAAI93R,GAAK+3E,GAAG7nF,IACnE6nF,GAAG7nF,GACAnB,CAAAA,CAAAA,SAEAqpF,GAAGt+E,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEkG,EAAIlG,EAAEzO,EACdqB,EAAIsT,EAAIrT,EAAI,GAAKA,EAAAA,OACnB+D,EAAEoJ,EAAEkG,GAAKrT,GACTmN,EAAEgoB,EAAIA,EAAEp1B,GACJ,MAAQoN,EAAEgoB,GAAWhoB,EAAE0yE,GAAK,KAAQ1yE,EAAEmzE,GAAK,EAAKnzE,EAAEA,EAAI,EAAI,IAC9DA,EAAE0yE,GAAK1yE,EAAEgoB,EACThoB,EAAEmzE,GAAKnzE,EAAEgxE,GAAK9qE,EAAIrT,EACX,YAEAy2F,GAAGtpF,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEo+E,EACRxrF,EAAIC,EAAIqT,EACRxR,EAAIsL,EAAEgoB,EACN/yB,EAAI+K,EAAEgxE,GAAKhxE,EAAEkG,EAAIA,EAAAA,IACdtP,EAAE/D,GAAKmN,EAAE5J,EAAEg2D,GAAI,EAAIx5D,GAAK,KACvBuC,EAAI,GAAKvC,EAAI,GAAKA,EACpBkE,EAAIkJ,EAAE5J,EAAEq5E,GACRtwB,EAAIn/C,EAAE5J,EAAEK,MACRL,EAAI+oD,EAAIhqD,EACRi6B,EAAIt4B,EAAEi4E,GACNn7E,EAAIkD,EAAEkhF,GAAK74B,EAAIj5C,EACfsI,EAAIxO,EAAE0yE,GACNukB,EAAIj3F,EAAEmzE,GACR2J,GAAG98E,EAAG7K,EAAGT,EAAGO,GACZspF,GAAG/vE,EAAGyoF,EAAG7nE,EAAGx7B,EAAGwC,GACf4nF,GAAGlnF,EAAGoP,EAAGA,EAAI/Q,EAAGi6B,EAAGx7B,EAAGurD,GACtBvsD,GAAKuC,EACLT,GAAKS,EAAI6K,EAAEkG,EACXA,GAAK/Q,CAAAA,CAEPyB,EAAEsP,GAAKrT,GACPmN,EAAEo+E,EAAIp+E,EAAE2xE,GAAK9+E,CAAAA,CAAAA,SAyBN22F,KAAAA,KACF5Q,GAAKvlF,KAAKmvF,GAAKnvF,KAAK0vF,GAAK1vF,KAAKonF,GAAK,WAEjCgP,KAAAA,KACF+zM,GAAKnqS,KAAK6xF,GAAK7xF,KAAKuqS,GAAKvqS,KAAKqzF,GAAKrzF,KAAK9B,EAAI8B,KAAK6S,EAAI,WAEnDwjF,KAAAA,KACF/P,GAAKtmF,KAAKimF,GAAKjmF,KAAKkmF,GAAK,OACzB4B,GAAKnzD,EAAE,QACPiyD,GAAKjyD,EAAE,YAELw2D,KAAAA,KACFnD,GAAK,WAALA,IAz5CHtzD,EAAI,mBAPCljB,EAAE0pF,EAAG2C,EAAGnsF,GAAAA,IACV,IAAIk2F,EAAIl2F,EAAEmsF,GAAInpE,EAAI,EAAGA,EAAIkzE,IAC5B1M,EAAE38F,KAAKmT,EAAEtT,OAASy/F,EAAI,EAAI,GAAK,KAC3BnsF,EAAEtT,OAASy/F,EAAI,IAFYnpE,IAG/BljB,EAAE0pF,EAAExmE,GAAImpE,EAAI,EAAGnsF,EAAAA,CAGX,CACNgjB,EAAG,EAAG,CAAC,EAAG,KACLA,CAAAA,CAu5CK,EAAAgxD,CAAAA,SAEH4Q,KAAAA,KACFhV,GAAK3sD,EAAE,QACP+3D,GAAKs9M,EAAG,CAAC,EAAG,GAAI7+M,IAAAA,KAChB0B,GAAKm9M,EAAG,CAAC,EAAG,IAAK7+M,GAAAA,CAAAA,SAEfoL,KAAAA,KACF1K,GAAK7rF,KAAK0lF,GAAK1lF,KAAKsnF,GAAKtnF,KAAK0wF,GAAK,OACnCb,GAAK,IAAIl7D,EAAE,QACXs5D,GAAK,IAAIt5D,EAAE,YAETqrD,KAAAA,KACF8N,GAAK9tF,KAAKq+E,GAAKr+E,KAAK2zD,GAAK3zD,KAAKiqF,GAAK,WAEjCmB,KAAAA,KACF7M,GAAKv+E,KAAKm8E,GAAK,WAEbqa,KAAAA,KACFxK,GAAK,CAAC,EAAG,QACT3F,GAAK,CAAC,EAAG,QACTyF,GAAK,CAAC,EAAG,QACT9P,GAAKh8E,KAAKwpF,GAAK,WAEb7C,KAAAA,KACFuG,GAAKv4D,EAAE,UACP4rD,GAAK,OACL0G,GAAKtyD,EAAE,SACPszD,GAAKjoF,KAAK8vF,GAAK9vF,KAAKg8E,GAAKh8E,KAAKmrF,GAAKnrF,KAAKorF,GAAKprF,KAAKmxF,GAAK,WAErDuF,KAAAA,KACFxM,GAAKlqF,KAAK6zD,EAAI7zD,KAAK+mF,GAAK,OACxBxJ,GAAK/+E,MAAM,IAAIwhF,IAAAA,KACfzE,EAAI,OACJiC,GAAKh/E,MAAM,IAAImoF,IAAAA,KACflL,GAAK,OACL14E,EAAI,IAAIy7E,EAAAA,CAAAA,SAEN6M,KAAAA,KACFxpF,EAAI8yB,EAAE,SACN/yB,EAAI+yB,EAAE,QACNknD,GAAKlnD,EAAE,YAELiiE,KAAAA,KACFlW,GAAK1gF,KAAK2M,EAAI,OACdq9E,GAAK,QACLjuD,EAAI,IAAI2rD,EAAAA,KACRkL,GAAK,IAAIuD,GAAAA,KACT5K,GAAK,IAAI6K,GAAAA,KACT/I,GAAK,IAAIkJ,GAAAA,KACTxX,GAAK,IAAIsX,GAAAA,KACThL,GAAKrrF,KAAKitF,GAAKjtF,KAAK09E,GAAK,OACzBlC,EAAI,IAAIkb,GAAAA,KACR7O,GAAK7nF,KAAKs/E,GAAKt/E,KAAKwmF,GAAKxmF,KAAK+lF,GAAK/lF,KAAK8lF,GAAK9lF,KAAKs6F,GAAKt6F,KAAKy9E,GAAK,OACjE6N,GAAK/N,EAAG,EAAGmK,GAAAA,KACX1L,GAAK,OAELiG,GAAK1E,EAAG,EAAGiZ,IAAAA,KACX3X,GAAK,IAAIyX,GAAAA,KACTpF,GAAKlxF,KAAKupF,GAAK,OACfqB,GAAK,QACLgsB,GAAK,OACLjsB,GAAK,CAAC,EAAG,EAAG,EAAG,QACfu/M,GAAK1rS,MAAM,IAAI6sF,IAAAA,KACfiG,GAAK,OACL7M,GAAKjmF,MAAM,IAAI4sF,IAAAA,KACf1G,GAAK,OACLnH,GAAK/+E,MAAM,IAAIwhF,IAAAA,KACfzE,EAAI,OACJkO,GAAK,QACLE,GAAK,OACL9M,GAAK,QACLC,GAAK,OACLE,GAAK,QACLJ,GAAK,OACLqB,GAAK,QACLwK,EAAIzoF,KAAK4pG,EAAI5pG,KAAKk+E,GAAK,OACvB+M,GAAK,QACLp3B,EAAI7zD,KAAKi8E,GAAKj8E,KAAKunF,GAAKvnF,KAAKkrF,GAAK,OAClC1N,GAAKh/E,MAAM,IAAImoF,IAAAA,KACfjyD,EAAI10B,KAAKy7E,GAAK,OACd+R,GAAKw8M,EAAG,CAAC,EAAG,GAAIhqN,IAAAA,KAChB0qN,GAAK,UACL3sN,GAAK,QACL+M,GAAK9qF,KAAK4pF,GAAK5pF,KAAKW,EAAI,OACxB4lF,GAAK,QACLmH,GAAK,OACLjM,GAAK,QACLC,GAAK,OACLqI,GAAK,QACL/L,GAAKh+E,KAAKysF,GAAK,WAEbi+M,GAAG/9R,EAAGnN,GAAAA,OACN,EAAImN,EAAI,EAAIA,EAAInN,EAAIA,EAAImN,CAAAA,CAAAA,SAExB6xE,KAAAA,KACF5pD,EAAI50B,KAAKyR,EAAIzR,KAAKk8E,GAAKl8E,KAAKqD,OAASrD,KAAKoD,MAAQ,OAClDvB,EAAI,QACJD,EAAI,QACJi6E,GAAK,QACLkQ,GAAK/rF,KAAK87E,GAAK97E,KAAK6nE,EAAI7nE,KAAK2nG,EAAI3nG,KAAK4nG,EAAI,OAC1CxrB,GAAK,YACL0uN,IAAM,oBACN5iN,GAAK,sBACLh5C,GAAK,yBACL6sC,GAAK/7E,KAAK2mF,GAAK,OACf1+E,KAAO,QACPm5E,GAAKphF,KAAKqhF,GAAKrhF,KAAK27E,GAAK37E,KAAK+4D,EAAI/4D,KAAK2mD,EAAI3mD,KAAKs9E,GAAKt9E,KAAKuC,EAAIvC,KAAK69E,GAAK79E,KAAK8hF,GAAK9hF,KAAKwD,EAAI,OAC3FgO,EAAI,QACJ0pF,EAAI,WAEFrE,KAAAA,IACHlqF,EAAI,IAAIiqF,GAAAA,OAAAA,MACJjqF,IACJA,EAAEA,EAAI,EAAKA,EAAEq9E,GAAK,KAAQr9E,EAAE+zE,GAAK,EAAK/zE,EAAEk7E,GAAK,EAAI5K,KAAOA,GAAK8Z,KAC1DpqF,CAAAA,CAAAA,SAEAioB,GAAEjoB,EAAGnN,EAAGqT,GAAAA,OAAAA,GACVlG,EAAEA,IAAOA,EAAEA,EAAInN,EAAKmN,EAAEq9E,GAAKn3E,EAAKlG,EAAE+zE,GAAK,GACrC,WAEA4K,GAAG3+E,EAAGnN,EAAGqT,GAAAA,OACT,GAAKA,GAAK,KAAOlG,EAAEnN,EAAI,IAAM,GAAKmN,EAAEnN,EAAI,IAAM,IAAMmN,EAAEnN,EAAI,YAE1D+rF,GAAG5+E,EAAGnN,GAAAA,GACT,MAAQmN,EAAG,OAAO,KACtBA,EAAEA,EAAI,EACNA,EAAEq9E,GAAK,KACH,MAAQxqF,EAAG,OAAOo1B,GAAEjoB,EAAG,EAAG,4CAC1BkG,EAAIrT,EAAEyI,KACN1I,EAAIC,EAAEgE,EACNnC,EAAI7B,EAAEu8E,GAAAA,GACN,EAAI16E,EAAG,OAAOuzB,GAAEjoB,EAAG,EAAG,yBACtB/K,EAAIiR,EAAEtT,EAAI,GAAMsT,EAAEtT,EAAI,IAAM,EAAMsT,EAAEtT,EAAI,IAAM,GAC9CuC,EAAI6K,EAAEimF,GAAAA,GACV9wF,EAAEslF,KAAW,EAAJxlF,GACTE,EAAE4tF,GAAM9tF,GAAK,EAAK,EAClBE,EAAEqtF,GAAMvtF,GAAK,EAAK,EAClBE,EAAEyjF,GAAK3jF,GAAK,EACR,EAAIE,EAAE4tF,GAAI,OAAO96D,GAAEjoB,EAAG,EAAG,sCACxB7K,EAAEqtF,GAAI,OAAOv6D,GAAEjoB,EAAG,EAAG,0BAC1BpN,GAAK,EACL8B,GAAK,MACDoC,EAAIkJ,EAAE4+E,GAAAA,GACNzpF,EAAEslF,GAAI,IACJ,EAAI/lF,EAAG,OAAOuzB,GAAEjoB,EAAG,EAAG,mCACrB2+E,GAAGz4E,EAAGtT,EAAG8B,GAAI,OAAOuzB,GAAEjoB,EAAG,EAAG,iBACjClJ,EAAEoP,EAAmC,OAA7BA,EAAEtT,EAAI,IAAM,EAAKsT,EAAEtT,EAAI,IAC/BkE,EAAE4vF,GAAKxgF,EAAEtT,EAAI,IAAM,EACnBkE,EAAEvF,EAAmC,OAA7B2U,EAAEtT,EAAI,IAAM,EAAKsT,EAAEtT,EAAI,IAC/BkE,EAAE8mS,GAAK13R,EAAEtT,EAAI,IAAM,EACnBA,GAAK,EACL8B,GAAK,EACLsL,EAAE8wE,GAAMh6E,EAAEoP,EAAI,IAAO,EACrBlG,EAAE2tF,GAAM72F,EAAEvF,EAAI,IAAO,EACrBsB,EAAE4D,MAAQK,EAAEoP,EACZrT,EAAE6D,OAASI,EAAEvF,EACbsB,EAAEq+E,GAAK,EACPr+E,EAAEmnD,EAAI,EACNnnD,EAAE+C,EAAI,EACN/C,EAAE89E,GAAK99E,EAAE4D,MACT5D,EAAEu5D,EAAIv5D,EAAE6D,OACR7D,EAAEm8E,GAAK,EACPn8E,EAAE6hF,GAAK7hF,EAAE4D,MACT5D,EAAE4hF,GAAK5hF,EAAE6D,OACT7D,EAAEiS,EAAIjS,EAAE4D,MACR5D,EAAEo1B,EAAIp1B,EAAE6D,OAERwwD,GADAjyD,EAAI+K,EAAEkyE,IACFyC,GAAI,EAAG,IAAK1/E,EAAE0/E,GAAGljF,QAErBmF,EAAE,OADF3B,EAAI+K,EAAEoyE,KAENn9E,EAAEskF,GAAK,EACPtkF,EAAEqkF,GAAK,EACPrkF,EAAE0kF,GAAK,EACPzyB,EAAEjyD,EAAEkmF,GAAI,EAAG,EAAGlmF,EAAEkmF,GAAG1pF,QACnBy1D,EAAEjyD,EAAEglF,GAAI,EAAG,EAAGhlF,EAAEglF,GAAAA,CAAAA,GAEd9kF,EAAEyjF,GAAKlkF,EAAG,OAAOuzB,GAAEjoB,EAAG,EAAG,wBAE7ByvE,EADAx6E,EAAI+K,EAAEovB,EACAlpB,EAAGtT,EAAGuC,EAAEyjF,IACdhmF,GAAKuC,EAAEyjF,GACPlkF,GAAKS,EAAEyjF,GACPzjF,EAAEslF,KAAQ3jF,EAAEouF,GAAK8L,EAAE/7F,GAAM6B,EAAE0mS,GAAKxsM,EAAE/7F,IAClC6B,EAAIkJ,EAAEoyE,GAAAA,IAEJh8E,EADE+oD,EAAIn/C,EAAEkyE,GAAAA,GAEVt7E,EAAE,MAAQ3B,GACV2B,EAAE,MAAQE,GACVA,EAAEyiF,GAAKyX,EAAE/7F,GACL6B,EAAEyiF,GAAI,IACRziF,EAAEwiF,GAAK0X,EAAE/7F,GACL+7F,EAAE/7F,GAAI,KACR6B,EAAE6iF,GAAKqX,EAAE/7F,GACJmB,EAAI,EAAG,EAAIA,IAAKA,EAAGU,EAAEqkF,GAAG/kF,GAAK46F,EAAE/7F,GAAK85E,EAAG95E,EAAG,GAAK,MAC/CmB,EAAI,EAAG,EAAIA,IAAKA,EAAGU,EAAEmjF,GAAG7jF,GAAK46F,EAAE/7F,GAAK85E,EAAG95E,EAAG,GAAK,KAElD6B,EAAEwiF,GAAI,IAAKljF,EAAI,EAAG,EAAIA,IAAKA,EAAG+oD,EAAEw1B,GAAGv+E,GAAK46F,EAAE/7F,GAAK45F,EAAG55F,EAAG,GAAK,SACzD6B,EAAEwiF,GAAK,KACVrkF,EAAEw8E,GAAI,OAAOxpD,GAAEjoB,EAAG,EAAG,mCACzBlJ,EAAIkJ,EAAE0gF,IACJqD,GAAKiN,EAAE/7F,GACT6B,EAAE6jF,GAAKkU,EAAG55F,EAAG,GACb6B,EAAEiiF,GAAK8V,EAAG55F,EAAG,GACb6B,EAAEooF,GAAK8R,EAAE/7F,GACL6B,EAAEooF,IAAM8R,EAAE/7F,GAAI,KACXkqD,EAAI,EAAG,EAAIA,IAAKA,EAAG6xC,EAAE/7F,KAAO6B,EAAEosF,GAAG/jC,GAAK4vB,EAAG95E,EAAG,QAC5CkqD,EAAI,EAAG,EAAIA,IAAKA,EAAG6xC,EAAE/7F,KAAO6B,EAAEwqF,GAAGniC,GAAK4vB,EAAG95E,EAAG,OAEnD+K,EAAE+nB,EAAI,GAAKjxB,EAAE6jF,GAAK,EAAI7jF,EAAEitF,GAAK,EAAI,EAC7B9uF,EAAEw8E,GAAI,OAAOxpD,GAAEjoB,EAAG,EAAG,kCAErBovB,EAAI16B,EAAAA,GACRA,EAFA0B,EAAIxD,EAGJA,EAAIwD,EAAIg5B,EACRt4B,EAAIs4B,EACJpvB,EAAEk7E,IAAM,GAAK2T,EAAG7uF,EAAEovB,EAAG,IAAM,EAEvBA,EAAI,GADR+vB,EAAIn/C,EAAEk7E,IACSh1E,EAAI,MACd,KACH9P,GAAK,EAAI+oD,EACTroD,GAAK,EAAIqoD,EACJ/vB,EAAI,EAAGA,EAAI+vB,IAAK/vB,EAAG,KAClBx7B,EAAIsS,EAAExR,EAAI,GAAMwR,EAAExR,EAAI,IAAM,EAAMwR,EAAExR,EAAI,IAAM,GAClDd,EAAIkD,IAAMlD,EAAIkD,GACd24E,EAAGzvE,EAAE2+E,IAAIvvD,GAAIlpB,EAAG9P,EAAGxC,GACnBwC,GAAKxC,EACLkD,GAAKlD,EACLc,GAAK,EAEP+6E,EAAGzvE,EAAE2+E,IAAIx/B,GAAIj5C,EAAG9P,EAAGU,GACnBoP,EAAI9P,EAAIxD,EAAI,EAAI,KAEd,GAAKsT,EAAG,OAAO+hB,GAAEjoB,EAAGkG,EAAG,+BAE3BA,EAAI2oF,EADJz4F,EAAI4J,EAAEovB,EACI,GACV16B,EAAIs8F,EAAE56F,GAAK24E,EAAG34E,EAAG,GAAK,EACtBxD,EAAIo+F,EAAE56F,GAAK24E,EAAG34E,EAAG,GAAK,EACtBU,EAAIk6F,EAAE56F,GAAK24E,EAAG34E,EAAG,GAAK,EACtB+oD,EAAI6xC,EAAE56F,GAAK24E,EAAG34E,EAAG,GAAK,EACtBA,EAAI46F,EAAE56F,GAAK24E,EAAG34E,EAAG,GAAK,EACtBg5B,EAAIpvB,EAAEoyE,GACDx+E,EAAI,EAAG,EAAIA,IAAKA,EAAG,IAClBw7B,EAAEmqD,GAAI,KACJ/qE,EAAI4gB,EAAE+rD,GAAGvnF,GACbw7B,EAAEuqD,KAAOnrE,GAAKtI,EAAAA,KACT,IAAI,EAAItS,EAAG,CAChBoM,EAAEs1E,GAAG1hF,GAAKoM,EAAEs1E,GAAG,YAEV9mE,EAAItI,CAAAA,CAAAA,IACP+wF,EAAIj3F,EAAEs1E,GAAG1hF,GACbqjG,EAAE5X,GAAG,GAAKpF,GAAG8jN,GAAGvvR,EAAI9Z,EAAG,MACvBuiG,EAAE5X,GAAG,GAAKnF,GAAG6jN,GAAGvvR,EAAI,EAAG,MACvByoF,EAAEvd,GAAG,GAAK,EAAIO,GAAG8jN,GAAGvvR,EAAI5b,EAAG,MAC3BqkG,EAAEvd,GAAG,GAAM,OAASQ,GAAG6jN,GAAGvvR,EAAI1X,EAAG,OAAU,KACvCmgG,EAAEvd,GAAG,KAAOud,EAAEvd,GAAG,GAAK,GAC1Bud,EAAE9X,GAAG,GAAKlF,GAAG8jN,GAAGvvR,EAAI2wC,EAAG,MACvB83C,EAAE9X,GAAG,GAAKjF,GAAG6jN,GAAGvvR,EAAIpY,EAAG,MACvB6gG,EAAEpa,GAAKruE,EAAIpY,CAAAA,CAAAA,IAERjB,EAAEslF,GAAI,OAAOxyD,GAAEjoB,EAAG,EAAG,wBAC1BgxF,EAAE/7F,GACFE,EAAI6K,EAAEkyE,GACDhsE,EAAI,EAAG,EAAIA,IAAKA,EAAG,KACjBxR,EAAI,EAAG,EAAIA,IAAKA,EAAAA,IACd9B,EAAI,EAAG,EAAIA,IAAKA,EAAAA,IACdkE,EAAI,EAAG,GAAKA,IAAKA,EACnBqoD,EAAI03C,EAAE5hG,EAAGo1F,GAAGnkF,GAAGxR,GAAG9B,GAAGkE,IAAM+3F,EAAG55F,EAAG,GAAKq1F,GAAGpkF,GAAGxR,GAAG9B,GAAGkE,GAChD3B,EAAE4qF,GAAG75E,GAAGxR,GAAG2mF,GAAGzoF,GAAGkE,GAAKqoD,EAAAA,IAC1BzqD,EAAI,EAAG,GAAKA,IAAKA,EAAGS,EAAE+qF,GAAGh6E,GAAGxR,GAAKS,EAAE4qF,GAAG75E,GAAGk4R,GAAG1pS,GAAAA,CAAAA,OAEnDsL,EAAE48E,GAAKoU,EAAE/7F,GACT+K,EAAE48E,KAAO58E,EAAEukF,GAAKsK,EAAG55F,EAAG,IACd+K,EAAE+zE,GAAK,WAERqW,GAAGpqF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,GAAAA,IACxB2B,EAAIjE,EAAE6B,GAAG2mF,GAAGn1E,GAAAA,IACXA,EAAI,EAAG,GAAKxR,IAAKA,EAAG,KAClBmiG,EAAE72F,EAAGlJ,EAAEoP,EAAI,IAAK,OAAOxR,EAAAA,MACpBmiG,EAAE72F,EAAGlJ,EAAEoP,EAAI,QACXpP,EAAIjE,IAAI6B,GAAG2mF,GAAG,GAAMn1E,EAAI,EAAI,IAAMxR,EAAI,OAAO,OACjDyqD,EAAItsD,EAAE6B,EAAI,GAAG2mF,GAAAA,GACbwb,EAAE72F,EAAGlJ,EAAEoP,EAAI,IAAK,KACd9P,EAAI4J,EAGJwO,EAAI,KACJqoF,EAAEzgG,GAHJg5B,EAAIt4B,IACJlD,EAAIsS,GAES,OACT2wF,EAAEzgG,EAAGg5B,EAAEx7B,EAAI,IAAK,KAClBkD,EAAI,EAGJlD,EAAI,GAFJ4a,EAAIqoF,EAAEzgG,EAAGg5B,EAAEx7B,EAAI,MACfw7B,EAAIynE,EAAEzgG,EAAGg5B,EAAEx7B,EAAI,EAAI4a,KAEnBA,EAAI,EACC4gB,EAAIm7D,GAAG32F,GAAIw7B,EAAEt4B,KAAMA,EAAG0X,GAAKA,EAAIqoF,EAAEzgG,EAAGg5B,EAAEt4B,IAC3C0X,GAAK,GAAK,GAAK5a,EAAAA,MAEfijG,EAAEzgG,EAAGg5B,EAAEx7B,EAAI,KACL4a,EAAI,EAAI,EAAIqoF,EAAEzgG,EAAG,KAAQoY,GAAKqoF,EAAEzgG,EAAG,MACpCoY,EAAI,EAAIqoF,EAAEzgG,EAAG,UACCoY,EAAlBqoF,EAAEzgG,EAAGg5B,EAAEx7B,EAAI,IAAW,EAAIijG,EAAEzgG,EAAGg5B,EAAEx7B,EAAI,IAAY,EACtDkD,EAAIqoD,EAAE,QACA3wC,EAAI,EAAK1X,EAAIqoD,EAAE,GACvBA,EAAIhqD,EAAIq1F,GAAG91F,GAAAA,GACX0B,EAAI4J,GACEnN,GAAKu/E,EAAGh8E,GAAAA,IAEZxC,EADEw7B,EAAIh5B,EAAEvD,EAERokG,GADArjG,EAAIwC,EAAE66E,IAAM,IACF76E,EAAEi9F,GAAKjkE,IAAO,KACxBh5B,EAAEvD,EACJuD,EAAE66E,IAAMgmB,EACR7gG,EAAE66E,IAAM,EACR76E,EAAEi9F,IAAOz/F,EAAI,EAAKqjG,IAAM7nE,EACxBn6B,EAAEkqD,KAAO3wC,EAAIyoF,GAAKA,GAAKrkG,GAAG,EAAI8B,GAAK,UAE9B,YAEAmqF,GAAG7+E,GAAAA,IACNnN,EAAImN,EAAE83E,GAAG93E,EAAE+3E,GAAK,GACpBllF,EAAE28E,GAAK,EACP38E,EAAE++E,GAAK,EACP1qB,EAAElnD,EAAEg+E,GAAI,EAAG,EAAGh+E,EAAEg+E,GAAGvsF,QACnBuO,EAAEsvE,GAAK,WAoQAub,GAAG7qF,EAAGnN,GAAAA,GACT,MAAQmN,EAAG,OAAO,KAClB,MAAQnN,EAAG,OAAOo1B,GAAEjoB,EAAG,EAAG,4CACzBA,EAAE+zE,KAAO6K,GAAG5+E,EAAGnN,GAAI,OAAO,KAC/B+D,EAAEoJ,EAAE+zE,IACA,MAAQlhF,EAAE0oF,IAAM1oF,EAAE0oF,GAAG1oF,GAAI,CAC3BA,EAAEsiF,KAAOn1E,EAAE+nB,EAAI,OACX7hB,EAAIqtE,GAAGvzE,EAAE+nB,GAAAA,GAAAA,GACR/nB,EAAE+nB,GACD/nB,EAAEm5E,GAAK,EAAKn5E,EAAEo5E,GAAK,IACnBp5E,EAAEm5E,GAAMtmF,EAAE+C,EAAIsQ,GAAM,EACrBlG,EAAEo5E,GAAMvmF,EAAEmnD,EAAI9zC,GAAM,EACrB,EAAIlG,EAAEm5E,KAAOn5E,EAAEm5E,GAAK,GACpB,EAAIn5E,EAAEo5E,KAAOp5E,EAAEo5E,GAAK,IACxBp5E,EAAE2yE,GAAM9/E,EAAEu5D,EAAI,GAAKlmD,GAAM,EACzBlG,EAAE65E,GAAMhnF,EAAE89E,GAAK,GAAKzqE,GAAM,EAC1BlG,EAAE65E,GAAK75E,EAAE8wE,KAAO9wE,EAAE65E,GAAK75E,EAAE8wE,IACzB9wE,EAAE2yE,GAAK3yE,EAAE2tF,KAAO3tF,EAAE2yE,GAAK3yE,EAAE2tF,IACrB,EAAI3tF,EAAE+nB,EAAG,KACPn1B,EAAIoN,EAAE0gF,GAAAA,IACLx6E,EAAI,EAAG,EAAIA,IAAKA,EAAG,KAClBxR,EAAAA,GACAsL,EAAEoyE,GAAGmH,GAAI,KACPtkF,EAAI+K,EAAEoyE,GAAG6H,GAAG/zE,GAChBlG,EAAEoyE,GAAGuH,KAAO1kF,GAAKrC,EAAE+nF,GAAAA,MACd1lF,EAAIrC,EAAE+nF,GAAAA,IACRjmF,EAAI,EAAG,GAAKA,IAAKA,EAAG,KACnBS,EAAI6K,EAAE6gF,GAAG36E,GAAGxR,GACdoC,EAAI7B,EAAAA,GACNrC,EAAEssF,KAAQpoF,GAAKlE,EAAEswF,GAAG,GAAKxuF,IAAMoC,GAAKlE,EAAE0uF,GAAG,KAErC,GADJxqF,EAAI,EAAIA,EAAI,EAAI,GAAKA,EAAI,GAAKA,GACnB,KACLqoD,EAAIroD,EAAAA,EACJlE,EAAEmmF,KACF55B,EAAI,EAAIvsD,EAAEmmF,GAAK55B,GAAK,EAAIA,GAAK,GAC3B,EAAIvsD,EAAEmmF,KAAO55B,EAAI,EAAIvsD,EAAEmmF,IAAAA,EACzB55B,IAAMA,EAAI,GACdhqD,EAAE6xD,GAAK7H,EACPhqD,EAAEmoF,GAAK,EAAIxmF,EAAIqoD,EACfhqD,EAAEgsF,GAAK,IAAMrqF,EAAI,EAAI,IAAMA,EAAI,EAAI,OAC9B3B,EAAEmoF,GAAK,EACdnoF,EAAEu8E,GAAKh9E,CAAAA,CAAAA,CAAAA,CAIbwR,EAAI,OACC+hB,GAAEjoB,EAAG,EAAG,sBAAwBkG,EAAIlG,EAAEA,EAAAA,GACxCkG,EAAI,GAAKA,EAAI,IACZA,EAAG,CACLlG,EAAEsgF,GAAK,IACHtgF,EAAE+wE,KAAO/wE,EAAE0+E,GAAKqM,IACpBl4F,EAAG,CACDqT,EAAIlG,EAAE0+E,GAEJ9rF,EAAI,GADFusD,EAAIn/C,EAAE8wE,IAAAA,IAER16E,EAAI,GAAK+oD,EACT/vB,EAAI+vB,EAAI,EACRvrD,EAAI,EAAIoM,EAAE+nB,EAAIo3B,GAAK,EAAIn/C,EAAE+wE,GAAK,EAAI,GAAK,EACvCviE,GAAK,GAAKxO,EAAE+wE,GAAK,EAAI,GAAK5xB,EAAAA,IAG5BhqD,EAAIvC,EAAI,KAFR8B,EAAM,GAAK,GAAKwR,EAAIqtE,GAAGvzE,EAAE+nB,IAAO,EAAK3xB,IACrCnB,EAAI,MAAQ+K,EAAEoxE,IAAM,EAAIpxE,EAAEoxE,GAAG3/E,OAASuO,EAAE4+E,GAAG14E,EAAIlG,EAAE4+E,GAAGrtF,EAAI,KAE/C4D,EAAG+Q,EAAI,MACX,IACC/Q,EAAI6K,EAAE46E,GAAI,IACZ56E,EAAE46E,GAAK,EACP56E,EAAEs+E,GAAKt2D,EAAE7yB,GACT6K,EAAEu+E,GAAK,EACH,MAAQv+E,EAAEs+E,GAAI,CAChBp4E,EAAI+hB,GAAEjoB,EAAG,EAAG,gDACNnN,CAAAA,CAERmN,EAAE46E,GAAKzlF,CAAAA,CAETA,EAAI6K,EAAEs+E,GACNxnF,EAAIkJ,EAAEu+E,GACNv+E,EAAEi+E,GAAK9oF,EACP6K,EAAEiqG,GAAKnzG,EACPA,GAAKlE,EACLoN,EAAEu9R,GAAK3sN,EAAGx6E,EAAGsoF,IACb1+E,EAAE2kF,GAAK,EACP3kF,EAAE83E,GAAKlH,EAAGxhD,EAAI,EAAGqvD,IACjBz+E,EAAE+3E,GAAK,EACP/3E,EAAE4wE,GAAKh9E,EAAIg9E,EAAGh9E,EAAGy/E,IAAM,KACvBrzE,EAAE4uE,EAAI,EACN5uE,EAAE6uE,EAAEuL,GAAK,EACTp6E,EAAE6uE,EAAE+B,GAAK5wE,EAAE4wE,GACX5wE,EAAE6uE,EAAED,EAAI5uE,EAAE4uE,EAAAA,EACN5uE,EAAE+wE,KAAO/wE,EAAE6uE,EAAED,GAAKzvB,GACtBvoD,GAAAA,GACAoJ,EAAE88E,GAAK3nF,EACP6K,EAAEg9E,GAAKlmF,EACPA,GAAK,IACLkJ,EAAE6wE,GAAKD,EAAGpiE,EAAGwrE,IACbh6E,EAAE8uE,GAAK,EACP9uE,EAAE6uE,EAAEgC,GAAK7wE,EAAE6wE,GACX7wE,EAAE6uE,EAAEC,GAAK9uE,EAAE8uE,GAAAA,GACN9uE,EAAE+wE,KAAO/wE,EAAE6uE,EAAEC,IAAM3vB,GACxBn/C,EAAEi9F,EAAI,GAAK99C,EACXn/C,EAAE87E,EAAI,EAAI38B,EAEVA,GADA/oD,EAAIm9E,GAAGvzE,EAAE+nB,IACD/nB,EAAEi9F,EACV7mG,EAAKA,EAAI,EAAK4J,EAAE87E,EAChB97E,EAAEkwE,GAAK/6E,EACP6K,EAAEmwE,GAAKr5E,EAAIqoD,EACXn/C,EAAEqwE,GAAKrwE,EAAEkwE,GACTlwE,EAAEiwE,GAAKjwE,EAAEmwE,GAAK,GAAKjqE,EAAIlG,EAAEi9F,EAAI7mG,EAC7B4J,EAAEsxE,GAAKtxE,EAAEqwE,GACTrwE,EAAEuxE,GAAKvxE,EAAEiwE,GAAK,EAAI/pE,EAAIlG,EAAE87E,EAAI1lF,EAC5B4J,EAAEsgF,GAAK,EACPxpF,GAAKpC,EACLsL,EAAE80E,GAAK7/E,EAAIE,EAAI,KACf6K,EAAE+0E,GAAK9/E,EAAI6B,EAAI,KACfF,EAAEE,EAAI7B,GAAK+K,EAAEu+E,GAAKv+E,EAAE46E,IACpBiE,GAAG7+E,GACHknD,EAAElnD,EAAEi+E,GAAIj+E,EAAEiqG,GAAI,EAAGr3G,GACjBsT,EAAI,MAGJA,EAAG,IACLrT,EAAE08E,GAAK,EACP18E,EAAEqC,EAAI8K,EAAEkwE,GACRr9E,EAAEooG,EAAIj7F,EAAEmwE,GACRt9E,EAAEoC,EAAI+K,EAAEqwE,GACRx9E,EAAEmoG,EAAIh7F,EAAEiwE,GACRp9E,EAAEq8E,GAAKlvE,EAAEsxE,GACTz+E,EAAEq0F,GAAKlnF,EAAEuxE,GACT1+E,EAAEs8E,GAAKnvE,EAAEi9F,EACTpqG,EAAEusF,GAAKp/E,EAAE87E,EACTjpF,EAAEgS,EAAI,KACNhS,EAAE07F,EAAI,GACDhO,GAAI,KACFr6E,GAAK,IAAK,KAAOA,IAAKA,EAAGs6E,GAAG,IAAMt6E,GAAK,EAAIA,GAAKA,EAAIA,EAAAA,IACpDA,GAAK,KAAM,MAAQA,IAAKA,EAC3Bs8B,GAAG,KAAOt8B,IAAM,IAAMA,GAAK,IAAM,IAAMA,EAAI,IAAMA,EAAAA,IAC9CA,GAAK,IAAK,KAAOA,IAAKA,EACzB8gD,GAAG,IAAM9gD,IAAM,GAAKA,GAAK,GAAK,GAAKA,EAAI,GAAKA,EAAAA,IACzCA,GAAK,IAAK,KAAOA,IAAKA,EACzBw6E,GAAG,IAAMx6E,GAAK,EAAIA,EAAI,EAAI,IAAMA,EAAI,IAAMA,EAC5Cq6E,GAAK,EAEPxB,GAAKkM,GACLrX,GAAKmY,GACL3R,GAAK4R,GACL5b,GAAK6b,GACL3R,GAAK4R,GACLtL,GAAKuL,GACLjM,GAAKkM,GACL5M,GAAK6M,GACLlM,GAAKmM,GACLvL,GAAK4L,GACLtM,GAAKuM,GACL9M,GAAK+M,GACLvM,GAAKyM,GACLhN,GAAKiN,GACL5N,GAAKyB,GACL3B,GAAK4B,GACLzB,GAAK4N,GACL9N,GAAK+N,GACLhyB,GAAE,GAAKiyB,GACPjyB,GAAE,GAAKkyB,GACPlyB,GAAE,GAAKmyB,GACPnyB,GAAE,GAAKoyB,GACPpyB,GAAE,GAAKqyB,GACPryB,GAAE,GAAKmjO,GACPnjO,GAAE,GAAKojO,GACPpjO,GAAE,GAAKsyB,GACPtyB,GAAE,GAAKuyB,GACPvyB,GAAE,GAAKwyB,GACP9e,GAAE,GAAKkf,GACPlf,GAAE,GAAKmf,GACPnf,GAAE,GAAKof,GACPpf,GAAE,GAAKqf,GACPrf,GAAE,GAAKuf,GACPvf,GAAE,GAAK4f,GACP5f,GAAE,GAAK6f,GACPlf,GAAG,GAAKof,GACRpf,GAAG,GAAKqf,GACRrf,GAAG,GAAK6f,GACR7f,GAAG,GAAK8f,GACR9f,GAAG,GAAK+f,GACR/f,GAAG,GAAKggB,GACRhgB,GAAG,GAAKigB,GACRtpF,EAAI,OACCA,EAAI,EAEbA,IAAMA,EAAAA,SA5bElG,EAAGnN,GAAAA,IACRmN,EAAEknD,EAAI,EAAGlnD,EAAEknD,EAAIlnD,EAAE2yE,KAAM3yE,EAAEknD,EAAG,KAI7BjyD,EAHEiR,EAAIlG,EAAE2+E,GAAG3+E,EAAEknD,EAAIlnD,EAAEk7E,IACnBtoF,EAAIoN,EAAEovB,EACN16B,EAAIsL,EAAAA,IAED/K,EAAI,EAAGA,EAAIP,EAAEo8E,KAAM77E,EAAG,KACrBE,EAAIvC,EACJkE,EAAIpC,EACJyqD,EAAIroD,EAAEmnF,GACR7nF,EAAIU,EAAEmzG,GAAK,EAAIh1G,EACfm6B,EAAIt4B,EAAEknF,GACNpqF,EAAIkD,EAAE+5E,GAAG/5E,EAAEg4E,GAAK75E,GAAAA,GAClB6B,EAAEs7E,GAAGkH,GACA1lF,EAAE0nF,GAAKub,EAAE1hG,EAAG2B,EAAEo7E,GAAGyC,GAAG,IACjB,EAAIkiB,EAAE1hG,EAAG2B,EAAEo7E,GAAGyC,GAAG,IACjBkiB,EAAE1hG,EAAG2B,EAAEo7E,GAAGyC,GAAG,IAChB/gF,EAAE0nF,GAAK,EACZxkF,EAAE8lF,KAAOhpF,EAAEuvF,GAAK0T,EAAE1hG,EAAG2B,EAAEytF,KACvB3wF,EAAEggF,IAAMijB,EAAE1hG,EAAG,KAAO,EAChBvB,EAAEggF,GAAI,KACJplE,EAAI5a,EAAE0mF,GACR2c,EAAI,MACDngG,EAAI,EAAG,EAAIA,IAAKA,EAAG,KAElBlB,EADAlC,EAAI07B,EAAE,EAAIt4B,GAAAA,IAETlB,EAAI,EAAG,EAAIA,IAAKA,EAAG,CACtBlC,EAAIg3F,GAAGvrC,EAAE/oD,EAAIR,IAAIlC,GAAAA,IACZ,IAAIV,EAAI8rF,GAAG+X,EAAE1hG,EAAGzB,EAAE,KAAM,EAAIV,GAC/BA,EAAI8rF,GAAG,EAAI9rF,EAAI6jG,EAAE1hG,EAAGzB,EAAEV,KACxBU,GAAKV,EACLmsD,EAAE/oD,EAAIR,GAAKlC,CAAAA,CAEb2/F,EAAE7kF,EAAGyoF,EAAG93C,EAAG/oD,EAAG,GACd6gG,GAAK,EACL7nE,EAAE,EAAIt4B,GAAKpD,CAAAA,CAAAA,MAGZA,EAAImjG,EAAE1hG,EAAG,KAAQ0hG,EAAE1hG,EAAG,KAAO,EAAI,EAAK0hG,EAAE1hG,EAAG,KAAO,EAAI,EACpDvB,EAAE0mF,GAAG,GAAK5mF,EACXwzD,EAAE/H,EAAG/oD,EAAG1C,EAAG,GACXwzD,EAAE93B,EAAG,EAAG17B,EAAG,GACfE,EAAE4wF,GAAKqS,EAAE1hG,EAAG,KAAQ0hG,EAAE1hG,EAAG,KAAQ0hG,EAAE1hG,EAAG,KAAO,EAAI,EAAK,EAAK,KAEzDT,EAAE06B,EAAEqiD,GAAI,OAAOxpD,GAAEjoB,EAAG,EAAG,iDACpBA,EAAEsvE,GAAKtvE,EAAE8wE,KAAM9wE,EAAEsvE,GAAI,IAE1B56E,EAAIwR,EACJ/Q,GAFAvC,EAAIoN,GAEE83E,GAAGllF,EAAEmlF,GAAK,GAChB54B,EAAIvsD,EAAEklF,GAAGllF,EAAEmlF,GAAKnlF,EAAE08E,IAClBr6E,EAAIrC,EAAEi+E,GAAGj+E,EAAEk8E,GAAKl8E,EAAE08E,IACbl5E,EAAIxD,EAAEgqF,GAAK3nF,EAAEkuF,GAAK,EACpBhuF,EAAEq6E,GAAKrwB,EAAEqwB,GAAK,EACbv6E,EAAE2+E,KAAOz+E,EAAEy8E,GAAKzyB,EAAEyyB,GAAK,GACtB38E,EAAEwpF,GAAK,EACPxpF,EAAEupF,GAAK,EACPvpF,EAAEo6E,GAAK,MACP,KACC5qE,EACF5N,EAKWykF,GAJXnmF,EAAIgqD,EACJA,EAAIzqD,EACJ0B,EAAIxD,EAAEs/E,GAAGgO,GACT9wD,EAAIx8B,EAAEi+E,GAAGj+E,EAAEk8E,GAAKl8E,EAAE08E,IAClB17E,EAAIhB,EAAE0iF,GAAGlmD,EAAEksD,IACbxkF,EAAIs4B,EAAEmxD,GACN/xE,EAAI,EACJyoF,EAAIrkG,EAAEklF,GAAGllF,EAAEmlF,GAAK,GAChBrkF,EAAIkC,EAAI,EACRsxD,EAAEpwD,EAAG0X,EAAG,EAAG,KACP4gB,EAAEwkD,GAAI,IACJ1+E,EAAI,EACJyP,EAAIvO,EAAE,OACL,CACLpD,EAAIg1B,EAAE,QACFpjB,EAAIzP,EAAEy8E,GAAKqlB,EAAErlB,GAAAA,GACjBhtE,EAAI0rE,GAAGnxB,EAAG/oD,EAAE,GAAIwO,EAAGhR,EAAE8lF,GAAI,EAAG1mF,EAAG,GAC/BmC,EAAEy8E,GAAKqlB,EAAErlB,IAAM,EAAIhtE,GAAK,EACpB,EAAIA,EAAGm6E,GAAG/rF,EAAG,EAAG8D,EAAG0X,OAClB,KACCstE,EAAK9oF,EAAE,GAAK,GAAM,MACjBA,EAAI,EAAG,IAAMA,EAAGA,GAAK,GAAI8D,EAAE0X,EAAIxb,GAAK8oF,CAAAA,CAE3C5mF,EAAI,EACJyP,EAAIvO,EAAE,OAEJgoF,EAAW,GAAPjpF,EAAEq6E,GACNwrB,EAAW,GAAP/D,EAAEznB,GAAAA,IACLx8E,EAAI,EAAG,EAAIA,IAAKA,EAAG,KAClB0R,EAAQ,EAAJs2F,EAAAA,IACHlf,EAAIjlF,EAAI,EAAG,EAAIilF,IAAKA,EAIpBsC,EAAKA,GAAK,GADV15E,GADAE,EAAI0rE,GAAGnxB,EAAGx6C,EADZC,EAAIF,GAAS,EAAJ05E,GACSxqF,EAAEyrF,GAAInqF,EAAG4B,EAAG0X,IACpBtZ,IACa,EACrB2B,EAAKA,GAAK,GAAM,EAAI+N,EAAI,EAAI,EAAIA,EAAI,EAAI,GAAK9N,EAAE0X,EAAI,IACnDA,GAAK,GACV4vE,IAAM,EACN4c,EAAKA,GAAK,EAAMt2F,GAAK,EACrB9O,GAAMA,GAAK,EAAKiB,KAAO,MAEzB8N,EAAIy5E,EACJlpF,EAAI8lG,GAAK,EACJv2F,EAAI,EAAG,EAAIA,EAAGA,GAAK,EAAG,KACzB5N,EAAI,EACJunF,EAAIjpF,EAAEq6E,IAAO,EAAI/qE,EACjBu2F,EAAI/D,EAAEznB,IAAO,EAAI/qE,EACZzR,EAAI,EAAG,EAAIA,IAAKA,EAAG,KACtB0R,EAAQ,EAAJs2F,EACClf,EAAI,EAAG,EAAIA,IAAKA,EAClBl3E,EAAIF,GAAS,EAAJ05E,GAGPA,EAAKA,GAAK,GADV15E,EAAI,GADJE,EAAI0rE,GAAGnxB,EAAG/oD,EAAE,GAAIwO,EAAGhR,EAAEurF,GAAI,EAAGroF,EAAG0X,MAEV,EACrB3X,EAAKA,GAAK,GAAM,EAAI+N,EAAI,EAAI,EAAIA,EAAI,EAAI,GAAK9N,EAAE0X,EAAI,IACnDA,GAAK,GACV4vE,IAAM,EACN4c,EAAKA,GAAK,EAAMt2F,GAAK,EAEvBhR,GAAKmD,GAAM,EAAI4N,EACfE,GAAMy5E,GAAK,GAAM35E,EACjBvP,IAAU,IAAJ8lG,IAAYv2F,CAAAA,CAEpBtP,EAAEq6E,GAAK7qE,EACPsyF,EAAEznB,GAAKt6E,EACPk6B,EAAEqvD,GAAK7oF,EACPw5B,EAAEovD,GAAK9qF,EACP07B,EAAEigD,GAAS,MAAJ37E,EAAY,EAAIE,EAAEy7E,GACzBj5E,IAAMR,EAAIlC,EAAAA,CAAAA,GAAAA,EAERd,EAAEm1B,IACFn1B,EAAEg+E,GAAGh+E,EAAEg8E,EAAIh8E,EAAE08E,IAAM18E,EAAEiuF,GAAG5rF,EAAEqmF,IAAIrmF,EAAE2+E,IACjChhF,EAAEg+E,GAAGh+E,EAAEg8E,EAAIh8E,EAAE08E,IAAIoC,KAAOt7E,GACvB1B,EAAE+8E,GAAI,OAAOxpD,GAAEjoB,EAAG,EAAG,yCAE3B6+E,GAAG7+E,GAEHpN,EAAIC,EACJ6B,EAAI,EACJO,GAHAiR,EAAIlG,GAGE6uE,EACN15E,EAAI,EAAI+Q,EAAE6hB,GAAK7hB,EAAEghD,GAAKhhD,EAAEkzE,IAAMlzE,EAAEghD,GAAKhhD,EAAEysE,GACnC,GAAKzsE,EAAE6qE,GACT/wE,EAAG,IACA/K,EAAEiyD,EAAIhhD,EAAEghD,EAAKjyD,EAAEsoF,GAAKpoF,EAAI6pF,GAAG94E,EAAGjR,GAAKP,EAAI,EAExCO,GADA4B,EAAIqP,EAAE2oE,GACAuL,GAENjlF,GADAzB,EAAI6/E,GAAGrtE,EAAE6hB,IACD7hB,EAAE+2F,EACV99C,EAAKzrD,EAAI,EAAKwS,EAAE41E,EAChB9oF,EAAI,GAAKiC,EAAIiR,EAAE+2F,EACfnhB,EAAI,EAAI7mF,EAAIiR,EAAE41E,EACd1lF,EAAI8P,EAAEgqE,GACN9gD,EAAIlpB,EAAEiqE,GAAKh7E,EAAInC,EACfY,EAAIsS,EAAEmqE,GACNv5E,EAAIoP,EAAE+pE,GAAK9wB,EAAI28B,EACfttE,EAAItI,EAAEorE,GACN2lB,EAAI/wF,EAAEqrE,GAAKpyB,EAAI28B,EAEfkf,EAAI,IADJ5c,EAAIvnF,EAAEqwD,GAENtxD,EAAIwoF,GAAKl4E,EAAEysE,GAAK,KACXzsE,EAAE6qE,IAAMiO,GAAG94E,EAAGrP,GACfA,EAAE0mF,GACJ,IAAY74E,GAAPE,EAAIsB,GAAS2oE,EAAE3nB,EAAGtwD,EAAEgO,EAAEiqE,EAAE0O,IAAK1mF,EAAI+N,EAAEu0E,GAAItiF,EAAI+N,EAAEi1E,KAAMhjF,EAAG,CAEzD3B,EAAI2B,EACJ8N,EAAID,EAAAA,IAEFmqE,GADEw1B,GAHA/I,EAAI12F,GAGEiqE,GACFuL,GACR31E,EAAI62F,EAAE2B,EAAAA,IACFoH,EAAIA,EAAEzzB,GAAGyzB,EAAEz1B,EAAI15E,GACjB2P,EAAIy2F,EAAEprB,GACNghB,EAAIoK,EAAEnrB,GAAK,GAAKtB,EAAIpqE,EAAI,GAAKvP,EAC7Bq5F,EAAI8V,EAAEr9C,GACNgqC,EAAIqT,EAAE/mB,GAAAA,GACJ,GAAK0T,EACP,GAAKp6F,EAAE,GAAKo6F,GAAI,GAAKsK,EAAEvzE,EACrB,EAAI7yB,GAAKgqF,GAAGr6E,EAAGqsF,EAAGzsF,EAAGusF,EAAI,GACvBqT,EAAE3yB,IAAMyN,GAAGt6E,EAAGqsF,EAAGzsF,EAAGusF,GACpB,EAAIrsF,GAAKy6E,GAAGv6E,EAAGqsF,EAAGzsF,EAAGusF,EAAI,GACzBqT,EAAE3yB,IAAM2N,GAAGx6E,EAAGqsF,EAAGzsF,EAAGusF,OACnB,KACCjpE,EAAIuzE,EAAExf,EACRmf,EAAIK,EAAEjrB,GACNr8E,EAAIsnG,EAAErrB,GAAK,EAAIpB,EAAI9mD,EAAI,EAAI7yB,EAC3B+nG,EAAI3B,EAAEhqB,GACNgqB,EAAIA,EAAE/pB,GAAK,EAAI1C,EAAI9mD,EAAI,EAAI7yB,EAC3B25E,EAAIw1B,EAAEljB,GAAAA,EACJjsF,IACDsqF,GAAG36E,EAAGqsF,EAAGzsF,EAAGusF,EAAI,EAAGzC,EAAG1f,GACvBkS,GAAGka,EAAGjnG,EAAGipG,EAAG3B,EAAGvzE,EAAGipE,EAAI,EAAGzC,EAAG1f,IAC9Bw1B,EAAE3yB,KAAOoO,GAAGj7E,EAAGqsF,EAAGzsF,EAAGusF,EAAGzC,EAAG1f,GAAIkR,GAAGkb,EAAGjnG,EAAGipG,EAAG3B,EAAGvzE,EAAGipE,EAAGzC,EAAG1f,IAAAA,EACnDlqE,IACDu7E,GAAGr7E,EAAGqsF,EAAGzsF,EAAGusF,EAAI,EAAGzC,EAAG1f,GACvBsR,GAAG8a,EAAGjnG,EAAGipG,EAAG3B,EAAGvzE,EAAGipE,EAAI,EAAGzC,EAAG1f,IAC9Bw1B,EAAE3yB,KAAO2O,GAAGx7E,EAAGqsF,EAAGzsF,EAAGusF,EAAGzC,EAAG1f,GAAIyR,GAAG2a,EAAGjnG,EAAGipG,EAAG3B,EAAGvzE,EAAGipE,EAAGzC,EAAG1f,GAAAA,CAAAA,CAAAA,GAG/D3oE,EAAEmpE,IAAMqkF,MAAM,kBACV,MAAQ9gK,EAAEurS,IAAK,IACjBtnS,EAAI,GAAKunF,EACTA,EAAI,IAAMA,EAAI,GACd4c,GACMpoG,EAAEsC,EAAIgR,EAAEgqE,GACTt9E,EAAEqoG,EAAI/0F,EAAEiqE,GAAKn9E,EACbJ,EAAEqC,EAAIiR,EAAEmqE,GACRz9E,EAAEooG,EAAI90F,EAAE+pE,GAAK6L,EACblpF,EAAEs8E,GAAKhpE,EAAEorE,GACT1+E,EAAEsoE,EAAIh1D,EAAEqrE,GAAKuK,IACZjlF,GAAKnD,EACNd,EAAEsC,EAAIkB,EACNxD,EAAEqoG,EAAI7rE,EACNx8B,EAAEqC,EAAIrB,EACNhB,EAAEooG,EAAIlkG,EACNlE,EAAEs8E,GAAK1gE,EACP5b,EAAEsoE,EAAI+7B,GACXrhG,IAAMwoF,GAAK1qF,GACX0qF,EAAIxrF,EAAEw5D,IAAMgyB,EAAIxrF,EAAEw5D,GAClBx5D,EAAEiS,EAAI,KACNjS,EAAE27F,EAAI,KAEJ,MAAQroF,EAAEkrE,IACV,EAAIlrE,EAAEkrE,GAAG3/E,QACToF,EAAIunF,IACFxrF,EAAE27F,EAAI5D,GAAGzkF,EAAGtT,EAAGiE,EAAGunF,EAAIvnF,GACvBjE,EAAEiS,EAAIqB,EAAE4uE,GACT,MAAQliF,EAAEiS,GAAK,GAAKjS,EAAEiS,EAAEpT,QACxB,CACAiD,EAAIuzB,GAAE/hB,EAAG,EAAG,sCACNlG,CAAAA,CAERnJ,EAAIjE,EAAEonD,IACFtmD,EAAId,EAAEonD,EAAInjD,EACXA,EAAIjE,EAAEonD,EACPpjD,IAAQ,EAAJlD,IACHd,EAAEqoG,GAAK/0F,EAAE+2F,EAAIvpG,EACbd,EAAEooG,GAAK90F,EAAE41E,GAAKpoF,GAAK,GACnBd,EAAEsoE,GAAKh1D,EAAE41E,GAAKpoF,GAAK,GACpB,MAAQd,EAAEiS,IAAMjS,EAAE27F,GAAK37F,EAAE6D,MAAQ/C,IACnCmD,EAAIunF,IACAxrF,EAAEqoG,GAAKroG,EAAEgD,EACVhD,EAAEooG,GAAKpoG,EAAEgD,GAAK,EACdhD,EAAEsoE,GAAKtoE,EAAEgD,GAAK,EACf,MAAQhD,EAAEiS,IAAMjS,EAAE27F,GAAK37F,EAAEgD,GACxBhD,EAAE28E,GAAK14E,EAAIjE,EAAEonD,EACbpnD,EAAEkS,EAAIlS,EAAE+9E,GAAK/9E,EAAEgD,EACfhD,EAAEq1B,EAAIm2D,EAAIvnF,EACVnC,EAAI9B,EAAEurS,IAAIvrS,GAAAA,CAEfqC,EAAI,GAAKiR,EAAEw4E,IACT9oF,IACCy9F,EAAEntF,EAAEgqE,GAAIhqE,EAAEiqE,GAAKh7E,EAAGiB,EAAGg5B,EAAI,GAAKlpB,EAAE+2F,EAAG9nG,GACpCk+F,EAAEntF,EAAEmqE,GAAInqE,EAAE+pE,GAAK9wB,EAAGvrD,EAAGkD,EAAI,EAAIoP,EAAE41E,EAAG38B,GAClCk0C,EAAEntF,EAAEorE,GAAIprE,EAAEqrE,GAAKpyB,EAAG3wC,EAAGyoF,EAAI,EAAI/wF,EAAE41E,EAAG38B,GAAAA,CAAAA,IAEnCzqD,EAAG,OAAOuzB,GAAEjoB,EAAG,EAAG,0BAElB,EA4LCkG,CAAOlG,EAAGnN,IAAAA,MACRA,EAAE0vC,IAAM1vC,EAAE0vC,GAAG1vC,GACrBqT,GAAK,SAEFA,GACLlG,EAAE+zE,GAAK,EACA7tE,GAFQ,WAIRmqE,GAAGrwE,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACtBA,EAAIsL,EAAEnN,EAAIqT,EAAI,GAAKtT,IAAM8B,GAAK,GAC9BsL,EAAEnN,EAAIqT,EAAI,GAAKtT,IAAU,IAAL8B,EAAY,EAAIA,EAAI,EAAI,IAAOA,CAAAA,CAAAA,SAE5CkgF,GAAG50E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GACzBo7E,GAAGrwE,EAAGnN,EAAG,EAAGqT,EAAGtT,EAAI8B,GACnB27E,GAAGrwE,EAAGnN,EAAG,EAAGqT,EAAGtT,EAAIqC,GACnBo7E,GAAGrwE,EAAGnN,EAAG,EAAGqT,EAAGtT,EAAIqC,GACnBo7E,GAAGrwE,EAAGnN,EAAG,EAAGqT,EAAGtT,EAAI8B,EAAAA,CAAAA,SAEZs6E,GAAGhvE,GAAAA,OACD,MAAQA,GAAM,IAAMA,CAAAA,CAAAA,SAEtBi0C,GAAGj0C,EAAGnN,EAAGqT,EAAGtT,GAAAA,IAEjBqC,EADEP,EAAI,EAEJS,EAAI6yB,EAAE,QACL/yB,EAAI,EAAG,EAAIA,IAAKA,EAAG,KAClB6B,EAAIkJ,EAAEnN,EAAI,GAAKmN,EAAEnN,EAAI,GACrBssD,EAAIn/C,EAAEnN,EAAI,GAAKmN,EAAEnN,EAAI,GACrBuD,GAAM,MAAQ4J,EAAEnN,EAAI,IAAO,IAAMm8E,GAAGhvE,EAAEnN,EAAI,KAC1Cu8B,EAAI4/C,GAAGhvE,EAAEnN,EAAI,KAAQ,MAAQmN,EAAEnN,EAAI,KAAQ,IAC/CsC,EAAET,EAAI,GAAKoC,EAAIs4B,EACfj6B,EAAET,EAAI,GAAKyqD,EAAI/oD,EACfjB,EAAET,EAAI,GAAKyqD,EAAI/oD,EACfjB,EAAET,EAAI,GAAKoC,EAAIs4B,EACf16B,GAAK,EACL7B,GAAAA,CAAAA,IAEGoC,EAAIP,EAAI,EAAG,EAAIO,IAAKA,EAEpB6B,GADFkJ,EAAI7K,EAAET,EAAI,GAAK,GACLS,EAAET,EAAI,GACdyqD,EAAIn/C,EAAI7K,EAAET,EAAI,GACd0B,GAAM,MAAQjB,EAAET,EAAI,IAAO,IAAMs6E,GAAG75E,EAAET,EAAI,KAE3C27E,GAAGnqE,EAAGtT,EAAG,EAAG,EAAGkE,GADds4B,EAAI4/C,GAAG75E,EAAET,EAAI,KAAQ,MAAQS,EAAET,EAAI,KAAQ,MAE5C27E,GAAGnqE,EAAGtT,EAAG,EAAG,EAAGusD,EAAI/oD,GACnBi6E,GAAGnqE,EAAGtT,EAAG,EAAG,EAAGusD,EAAI/oD,GACnBi6E,GAAGnqE,EAAGtT,EAAG,EAAG,EAAGkE,EAAIs4B,GACnB16B,IACC9B,GAAK,YAEHu5F,GAAGnsF,EAAGnN,EAAGqT,EAAGtT,GAAAA,IACf8B,EAAIsL,EAAEnN,EAAI,GAAK,EACjBoC,EAAK,MAAQ+K,EAAEnN,EAAI,IAAO,GAC1BsC,EAAI65E,GAAGhvE,EAAEnN,EAAI,IACbiE,EAAK,MAAQkJ,EAAEnN,EAAI,IAAO,GAE5B+hF,GAAG1uE,EAAGtT,EAAG,EAAG8B,EAAIS,EADhB6K,EAAIgvE,GAAGhvE,EAAEnN,EAAI,IACSiE,GACtB89E,GAAG1uE,EAAGtT,EAAG,EAAG8B,EAAIO,EAAG+K,EAAGlJ,GACtB89E,GAAG1uE,EAAGtT,EAAG,EAAG8B,EAAIO,EAAG+K,EAAGlJ,GACtB89E,GAAG1uE,EAAGtT,EAAG,EAAG8B,EAAIS,EAAG6K,EAAGlJ,EAAAA,CAAAA,SAEfi1F,GAAG/rF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACtBu/C,GAAGj0C,EAAGnN,EAAGqT,EAAGtT,GACZ8B,GAAKu/C,GAAGj0C,EAAGnN,EAAI,GAAIqT,EAAGtT,EAAI,YAEnBo5F,GAAGhsF,EAAGnN,EAAGqT,EAAGtT,GACnBghF,GAAG5zE,EAAGnN,EAAI,EAAGqT,EAAGtT,EAAG,GACnBghF,GAAG5zE,EAAGnN,EAAI,GAAIqT,EAAGtT,EAAI,IAAK,YAEnBq5F,GAAGjsF,EAAGnN,EAAGqT,EAAGtT,GAAAA,IAEf8B,EAAAA,IADJsL,EAAIA,EAAEnN,EAAI,GAAK,EAEV6B,EAAI,EAAG,EAAIA,IAAKA,EAAAA,IAAQ7B,EAAI,EAAG,EAAIA,IAAKA,EAAGw9E,GAAGnqE,EAAGtT,EAAGC,EAAG6B,EAAGsL,EAAAA,CAAAA,SAExDksF,GAAGlsF,EAAGnN,EAAGqT,EAAGtT,GACnBoN,EAAEnN,EAAI,IAAMu9E,GAAGpwE,EAAGnN,EAAI,EAAGqT,EAAGtT,GAC5BoN,EAAEnN,EAAI,KAAOu9E,GAAGpwE,EAAGnN,EAAI,GAAIqT,EAAGtT,EAAI,GAClCoN,EAAEnN,EAAI,KAAOu9E,GAAGpwE,EAAGnN,EAAI,GAAIqT,EAAGtT,EAAI,KAClCoN,EAAEnN,EAAI,KAAOu9E,GAAGpwE,EAAGnN,EAAI,GAAIqT,EAAGtT,EAAI,IAAM,YAEjCq4F,GAAGjrF,EAAGnN,EAAGqT,EAAGtT,GAAAA,IAEjBqC,EADEP,EAAIszB,EAAE,QAEL/yB,EAAI,EAAG,EAAIA,IAAKA,EAAG,KAClBE,EAAI6K,EAAEnN,EAAI,EAAIoC,GAAK+K,EAAEnN,EAAI,GAAKoC,GAC9B6B,EAAIkJ,EAAEnN,EAAI,EAAIoC,GAAK+K,EAAEnN,EAAI,EAAIoC,GAC7BkqD,EAAIn/C,EAAEnN,EAAI,EAAIoC,GAAK+K,EAAEnN,EAAI,EAAIoC,GAC7BmB,EAAI4J,EAAEnN,EAAI,EAAIoC,GAAK+K,EAAEnN,EAAI,GAAKoC,GAClCP,EAAE,EAAIO,GAAKE,EAAI2B,EACfpC,EAAE,EAAIO,GAAKE,EAAI2B,EACfpC,EAAE,EAAIO,GAAKmB,EAAI+oD,EACfzqD,EAAE,GAAKO,GAAKmB,EAAI+oD,CAAAA,CAAAA,IAEblqD,EAAI,EAAG,EAAIA,IAAKA,EAEhBE,GADF6K,EAAItL,EAAE,EAAI,EAAIO,GAAK,GACTP,EAAE,EAAI,EAAIO,GAClB6B,EAAIpC,EAAE,EAAI,EAAIO,GAAKP,EAAE,EAAI,EAAIO,GAC7BkqD,EAAIzqD,EAAE,EAAI,EAAIO,GAAKP,EAAE,EAAI,EAAIO,GAC7BmB,EAAI4J,EAAItL,EAAE,EAAI,EAAIO,GAClBiR,EAAEtT,EAAI,GAAMuC,EAAI2B,GAAM,EACtBoP,EAAEtT,EAAI,IAAOwD,EAAI+oD,GAAM,EACvBj5C,EAAEtT,EAAI,IAAOuC,EAAI2B,GAAM,EACvBoP,EAAEtT,EAAI,IAAOwD,EAAI+oD,GAAM,EACvBvsD,GAAK,YAEH2nF,GAAGv6E,EAAGnN,EAAGqT,GAAAA,IAId/Q,EAHEvC,EAAIC,EAAI,GACV6B,EAAIuoG,GACJhoG,EAAI,IAAM+K,EAAEpN,EAAI,OAEbuC,EAAI,EAAGA,EAAI+Q,IAAK/Q,EAAG,KAGpBiB,EAFEU,EAAIpC,EACNyqD,EAAIlqD,EAAI+K,EAAEnN,EAAI,OAEXuD,EAAI,EAAGA,EAAI8P,IAAK9P,EAAG4J,EAAEnN,EAAIuD,GAAKU,EAAEqoD,EAAIn/C,EAAEpN,EAAIwD,IAC/CvD,GAAK,aAGAu6F,GAAGptF,EAAGnN,GACb0nF,GAAGv6E,EAAGnN,EAAG,YAEF+7F,GAAG5uF,EAAGnN,GACb0nF,GAAGv6E,EAAGnN,EAAG,YAEFk7F,GAAG/tF,EAAGnN,GACb0nF,GAAGv6E,EAAGnN,EAAG,aAEFm7F,GAAGhuF,EAAGnN,GAAAA,IACTqT,EAAAA,IACCA,EAAI,EAAG,GAAKA,IAAKA,EAAGmtF,EAAErzF,EAAGnN,EAAI,GAAKqT,EAAGlG,EAAGnN,EAAI,GAAI,aAE9Co7F,GAAGjuF,EAAGnN,GAAAA,IACTqT,EAAAA,IACCA,EAAI,GAAI,EAAIA,IAAKA,EAAGghD,EAAElnD,EAAGnN,EAAGmN,EAAEnN,EAAI,GAAI,IAAMA,GAAK,YAE/Ck8F,GAAG/uF,EAAGnN,EAAGqT,GAAAA,IACZtT,EAAAA,IACCA,EAAI,EAAG,GAAKA,IAAKA,EAAGs0D,EAAEr0D,EAAGqT,EAAI,GAAKtT,EAAGoN,EAAG,aAEtC8tF,GAAG9tF,EAAGnN,GAAAA,IAEXD,EADEsT,EAAI,OAEHtT,EAAI,EAAG,GAAKA,IAAKA,EAAGsT,GAAKlG,EAAEnN,EAAI,EAAI,GAAKD,GAAKoN,EAAEnN,EAAID,EAAI,IAC5Dm8F,GAAG7oF,GAAK,EAAGlG,EAAGnN,EAAAA,CAAAA,SAEPs7F,GAAGnuF,EAAGnN,GAAAA,IAEXD,EADEsT,EAAI,MAEHtT,EAAI,EAAG,GAAKA,IAAKA,EAAGsT,GAAKlG,EAAEnN,EAAI,EAAI,GAAKD,GAC7Cm8F,GAAG7oF,GAAK,EAAGlG,EAAGnN,EAAAA,CAAAA,SAEP27F,GAAGxuF,EAAGnN,GAAAA,IAEXD,EADEsT,EAAI,MAEHtT,EAAI,EAAG,GAAKA,IAAKA,EAAGsT,GAAKlG,EAAEnN,EAAID,EAAI,IACxCm8F,GAAG7oF,GAAK,EAAGlG,EAAGnN,EAAAA,CAAAA,SAEP47F,GAAGzuF,EAAGnN,GACbk8F,GAAG,IAAK/uF,EAAGnN,EAAAA,CAAAA,SAEJ6R,GAAE1E,EAAGnN,EAAGqT,GAAAA,OACPlG,EAAI,EAAInN,EAAIqT,EAAI,GAAM,WAEvBmnF,GAAGrtF,EAAGnN,GAAAA,IAQXD,EAPEsT,EAAIrT,EAAI,GAKoB,IAJ9BqT,EAAI,IAAI9M,WAAW,CACjBsL,GAAE1E,EAAEkG,EAAI,GAAIlG,EAAEkG,EAAI,GAAIlG,EAAEkG,EAAI,IAC5BxB,GAAE1E,EAAEkG,EAAI,GAAIlG,EAAEkG,EAAI,GAAIlG,EAAEkG,EAAI,IAC5BxB,GAAE1E,EAAEkG,EAAI,GAAIlG,EAAEkG,EAAI,GAAIlG,EAAEkG,EAAI,IAC5BxB,GAAE1E,EAAEkG,EAAI,GAAIlG,EAAEkG,EAAI,GAAIlG,EAAEkG,EAAI,MAG3BtT,EAAI,EAAG,EAAIA,IAAKA,EAAGygG,EAAErzF,EAAGnN,EAAI,GAAKD,EAAGsT,EAAG,EAAGA,EAAEzU,OAAAA,CAAAA,SAE1C67F,GAAGttF,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEnN,EAAI,GACZD,EAAIoN,EAAEnN,EAAI,EAAI,IACd6B,EAAIsL,EAAEnN,EAAI,EAAI,IACdoC,EAAI+K,EAAEnN,EAAI,EAAI,IAChBo9E,EAAGjwE,EAAGnN,EAAI,EAAG,SAAW6R,GAAE1E,EAAEnN,EAAI,EAAI,IAAKqT,EAAGtT,IAC5Cq9E,EAAGjwE,EAAGnN,EAAI,GAAI,SAAW6R,GAAEwB,EAAGtT,EAAG8B,IACjCu7E,EAAGjwE,EAAGnN,EAAI,GAAI,SAAW6R,GAAE9R,EAAG8B,EAAGO,IACjCg7E,EAAGjwE,EAAGnN,EAAI,GAAI,SAAW6R,GAAEhQ,EAAGO,EAAGA,GAAAA,CAAAA,SAE1Bk4F,GAAGntF,EAAGnN,GAAAA,IAEXD,EADEsT,EAAI,MAEHtT,EAAI,EAAG,EAAIA,IAAKA,EAAGsT,GAAKlG,EAAEnN,EAAID,EAAI,IAAMoN,EAAEnN,EAAI,EAAI,GAAKD,GAAAA,IAC5DsT,IAAM,EACDtT,EAAI,EAAG,EAAIA,IAAKA,EAAGs0D,EAAElnD,EAAGnN,EAAI,GAAKD,EAAGsT,EAAG,YAErCqnF,GAAGvtF,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEnN,EAAI,EAAI,GAChBD,EAAIoN,EAAEnN,EAAI,EAAI,IACd6B,EAAIsL,EAAEnN,EAAI,EAAI,IACdoC,EAAI+K,EAAEnN,EAAI,EAAI,IACdsC,EAAI6K,EAAEnN,EAAI,EAAI,IACdiE,EAAIkJ,EAAEnN,EAAI,EAAI,IACdssD,EAAIn/C,EAAEnN,EAAI,EAAI,IACduD,EAAI4J,EAAEnN,EAAI,EAAI,IAChBmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAE9R,EAAG8B,EAAGsL,EAAEnN,EAAI,EAAI,KAClCmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEwB,EAAGtT,EAAG8B,GACxCsL,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEzP,EAAGiR,EAAGtT,GACxDoN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,GAAK6R,GAAEvP,EAAGF,EAAGiR,GACvElG,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,GAAK6R,GAAE5N,EAAG3B,EAAGF,GACvD+K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,GAAK6R,GAAEy6C,EAAGroD,EAAG3B,GACvC6K,EAAEnN,EAAI,EAAI,GAAK6R,GAAEtO,EAAG+oD,EAAGroD,EAAAA,CAAAA,SAEhBwnS,GAAGt+R,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEnN,EAAI,EAAI,IAChBD,EAAIoN,EAAEnN,EAAI,EAAI,IACd6B,EAAIsL,EAAEnN,EAAI,EAAI,IACdoC,EAAI+K,EAAEnN,EAAI,EAAI,IACdsC,EAAI6K,EAAEnN,EAAI,EAAI,IACdiE,EAAIkJ,EAAEnN,EAAI,EAAI,IACdssD,EAAIn/C,EAAEnN,EAAI,EAAI,IAChBmN,EAAEnN,EAAI,EAAI,GAAK6R,GAAE1E,EAAEnN,EAAI,EAAI,IAAKqT,EAAGtT,GACnCoN,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEwB,EAAGtT,EAAG8B,GACvCsL,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAE9R,EAAG8B,EAAGO,GACvD+K,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEhQ,EAAGO,EAAGE,GACvE6K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEzP,EAAGE,EAAG2B,GACxDkJ,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEvP,EAAG2B,EAAGqoD,GACxCn/C,EAAEnN,EAAI,EAAI,IAAM6R,GAAE5N,EAAGqoD,EAAGA,EAAAA,CAAAA,SAEjBk/O,GAAGr+R,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEnN,EAAI,EAAI,GAChBD,EAAIoN,EAAEnN,EAAI,EAAI,IACd6B,EAAIsL,EAAEnN,EAAI,EAAI,IACdoC,EAAI+K,EAAEnN,EAAI,EAAI,IACdsC,EAAI6K,EAAEnN,EAAI,EAAI,IACdiE,EAAIkJ,EAAEnN,EAAI,EAAI,IACdssD,EAAIn/C,EAAEnN,EAAI,EAAI,IACduD,EAAI4J,EAAEnN,EAAI,EAAI,IAChBmN,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAOoC,EAAIE,EAAI,GAAM,EAC9C6K,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAOsC,EAAI2B,EAAI,GAAM,EAC9CkJ,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAOiE,EAAIqoD,EAAI,GAAM,EAC9Cn/C,EAAEnN,EAAI,EAAI,GAAMssD,EAAI/oD,EAAI,GAAM,EAC9B4J,EAAEnN,EAAI,EAAI,IAAM6R,GAAEhQ,EAAG9B,EAAGsT,GACxBlG,EAAEnN,EAAI,EAAI,IAAM6R,GAAE9R,EAAGsT,EAAGjR,GACxB+K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEwB,EAAGjR,EAAGE,GACxC6K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEzP,EAAGE,EAAG2B,GACxCkJ,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEvP,EAAG2B,EAAGqoD,GACxCn/C,EAAEnN,EAAI,EAAI,IAAM6R,GAAE5N,EAAGqoD,EAAG/oD,EAAAA,CAAAA,SAEjBo3F,GAAGxtF,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEnN,EAAI,EAAI,IAChBD,EAAIoN,EAAEnN,EAAI,EAAI,IACd6B,EAAIsL,EAAEnN,EAAI,EAAI,IACdoC,EAAI+K,EAAEnN,EAAI,EAAI,IACdsC,EAAI6K,EAAEnN,EAAI,EAAI,IACdiE,EAAIkJ,EAAEnN,EAAI,EAAI,IACdssD,EAAIn/C,EAAEnN,EAAI,EAAI,IACduD,EAAI4J,EAAEnN,EAAI,EAAI,IAChBmN,EAAEnN,EAAI,EAAI,GAAMqT,EAAItT,EAAI,GAAM,EAC9BoN,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAOD,EAAI8B,EAAI,GAAM,EAC9CsL,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAO6B,EAAIO,EAAI,GAAM,EAC9C+K,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAOoC,EAAIE,EAAI,GAAM,EAC9C6K,EAAEnN,EAAI,EAAI,IAAM6R,GAAEwB,EAAGtT,EAAG8B,GACxBsL,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAE9R,EAAG8B,EAAGO,GACxC+K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEhQ,EAAGO,EAAGE,GACxC6K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEzP,EAAGE,EAAG2B,GACxCkJ,EAAEnN,EAAI,EAAI,IAAM6R,GAAEvP,EAAG2B,EAAGqoD,GACxBn/C,EAAEnN,EAAI,EAAI,IAAM6R,GAAE5N,EAAGqoD,EAAG/oD,EAAAA,CAAAA,SAEjBs3F,GAAG1tF,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEnN,EAAI,EAAI,GAChBD,EAAIoN,EAAEnN,EAAI,EAAI,IACd6B,EAAIsL,EAAEnN,EAAI,EAAI,IACdoC,EAAI+K,EAAEnN,EAAI,EAAI,IAChBmN,EAAEnN,EAAI,EAAI,GAAMqT,EAAItT,EAAI,GAAM,EAC9BoN,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAOD,EAAI8B,EAAI,GAAM,EAC9CsL,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAO6B,EAAIO,EAAI,GAAM,EAC/C+K,EAAEnN,EAAI,EAAI,GAAK6R,GAAEwB,EAAGtT,EAAG8B,GACvBsL,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAE9R,EAAG8B,EAAGO,GACvC+K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEhQ,EAAGO,EAAGA,GACxC+K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAMmN,EAC9DnN,EAAI,EAAI,IACNmN,EAAEnN,EAAI,EAAI,IAAMoC,CAAAA,CAAAA,SAEbw4F,GAAGztF,EAAGnN,GAAAA,IACTqT,EAAIlG,EAAEnN,EAAI,EAAI,GAChBD,EAAIoN,EAAEnN,EAAI,EAAI,IACd6B,EAAIsL,EAAEnN,EAAI,EAAI,IACdoC,EAAI+K,EAAEnN,EAAI,EAAI,IACdsC,EAAI6K,EAAEnN,EAAI,EAAI,IACdiE,EAAIkJ,EAAEnN,EAAI,EAAI,IACdssD,EAAIn/C,EAAEnN,EAAI,EAAI,IACduD,EAAI4J,EAAEnN,EAAI,EAAI,IAChBmN,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAOqT,EAAI/Q,EAAI,GAAM,EAC9C6K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAOD,EAAIsT,EAAI,GAAM,EAC/ClG,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAO6B,EAAI9B,EAAI,GAAM,EAC/CoN,EAAEnN,EAAI,EAAI,IAAOoC,EAAIP,EAAI,GAAM,EAC/BsL,EAAEnN,EAAI,EAAI,GAAK6R,GAAE5N,EAAGqoD,EAAG/oD,GACvB4J,EAAEnN,EAAI,EAAI,GAAK6R,GAAEvP,EAAG2B,EAAGqoD,GACvBn/C,EAAEnN,EAAI,EAAI,GAAKmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEwB,EAAG/Q,EAAG2B,GACvCkJ,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAE9R,EAAGsT,EAAG/Q,GACxC6K,EAAEnN,EAAI,EAAI,IAAMmN,EAAEnN,EAAI,EAAI,IAAM6R,GAAEhQ,EAAG9B,EAAGsT,GACxClG,EAAEnN,EAAI,EAAI,IAAM6R,GAAEzP,EAAGP,EAAG9B,EAAAA,CAAAA,SAEjBw8F,GAAGpvF,EAAGnN,GAAAA,IACTqT,EAAAA,IACCA,EAAI,EAAG,EAAIA,IAAKA,EAAGmtF,EAAErzF,EAAGnN,EAAI,GAAKqT,EAAGlG,EAAGnN,EAAI,GAAI,YAE7Cw8F,GAAGrvF,EAAGnN,GAAAA,IACTqT,EAAAA,IACCA,EAAI,EAAG,EAAIA,IAAKA,EAAGghD,EAAElnD,EAAGnN,EAAGmN,EAAEnN,EAAI,GAAI,GAAKA,GAAK,YAE7CgiF,GAAG70E,EAAGnN,EAAGqT,GAAAA,IACZtT,EAAAA,IACCA,EAAI,EAAG,EAAIA,IAAKA,EAAGs0D,EAAEr0D,EAAGqT,EAAI,GAAKtT,EAAGoN,EAAG,YAErC2uF,GAAG3uF,EAAGnN,GAAAA,IAEXD,EADEsT,EAAI,MAEHtT,EAAI,EAAG,EAAIA,IAAKA,EAAGsT,GAAKlG,EAAEnN,EAAID,EAAI,IAAMoN,EAAEnN,EAAI,EAAI,GAAKD,GAC5DiiF,GAAG3uE,GAAK,EAAGlG,EAAGnN,EAAAA,CAAAA,SAEP08F,GAAGvvF,EAAGnN,GAAAA,IAEXD,EADEsT,EAAI,MAEHtT,EAAI,EAAG,EAAIA,IAAKA,EAAGsT,GAAKlG,EAAEnN,EAAID,EAAI,IACvCiiF,GAAG3uE,GAAK,EAAGlG,EAAGnN,EAAAA,CAAAA,SAEPy8F,GAAGtvF,EAAGnN,GAAAA,IAEXD,EADEsT,EAAI,MAEHtT,EAAI,EAAG,EAAIA,IAAKA,EAAGsT,GAAKlG,EAAEnN,EAAI,EAAI,GAAKD,GAC5CiiF,GAAG3uE,GAAK,EAAGlG,EAAGnN,EAAAA,CAAAA,SAEP28F,GAAGxvF,EAAGnN,GACbgiF,GAAG,IAAK70E,EAAGnN,EAAAA,CAAAA,SAEJyvC,GAAGtiC,EAAGnN,EAAGqT,GAAAA,IACZtT,EAAIoN,EAAEnN,EAAIqT,GACZxR,EAAIsL,EAAEnN,EAAI,GACVoC,EAAI,GAAKP,EAAI9B,GAAK4nF,GAAG,KAAOx6E,EAAEnN,EAAI,EAAIqT,GAAKlG,EAAEnN,EAAIqT,IACjD/Q,EAAI2/E,GAAG,KAAQ7/E,EAAI,GAAM,IAC3B+K,EAAEnN,EAAIqT,GAAK+2F,GAAE,IAAMrqG,EAAIkiF,GAAG,KAAQ7/E,EAAI,GAAM,KAC5C+K,EAAEnN,EAAI,GAAKoqG,GAAE,IAAMvoG,EAAIS,EAAAA,CAAAA,SAEhB8rF,GAAGjhF,EAAGnN,EAAGqT,EAAGtT,GAAAA,IACf8B,EAAIsL,EAAEnN,EAAI,GACZoC,EAAI+K,EAAEnN,EAAIqT,GAAAA,OACLpB,GAAE,IAAM9E,EAAEnN,EAAI,EAAIqT,GAAKlG,EAAEnN,EAAIqT,IAAMtT,GAAKkS,GAAE,IAAM7P,EAAIP,GAAK9B,CAAAA,CAAAA,SAEzDsuF,GAAGlhF,EAAGnN,EAAGqT,EAAGtT,GAAAA,OAEjB,EAAIkS,GAAE,IAAM9E,EAAEnN,EAAIqT,GAAKlG,EAAEnN,EAAI,IAAMiS,GAAE,IAAM9E,EAAEnN,EAAI,EAAIqT,GAAKlG,EAAEnN,EAAIqT,KAAOtT,CAAAA,CAAAA,SAGlEuuF,GAAGnhF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IAClBO,EAAI+K,EAAEnN,EAAI,EAAIqT,GAChB/Q,EAAI6K,EAAEnN,EAAI,EAAIqT,GACdpP,EAAIkJ,EAAEnN,EAAIqT,GACVi5C,EAAIn/C,EAAEnN,EAAI,GACVuD,EAAI4J,EAAEnN,EAAIqT,GACVkpB,EAAIpvB,EAAEnN,EAAI,EAAIqT,GACdtS,EAAIoM,EAAEnN,EAAI,EAAIqT,GAAAA,OACT,EAAIpB,GAAE,IAAMhO,EAAIqoD,GAAKr6C,GAAE,IAAM3P,EAAIiB,GAAKxD,EACzC,EACAkS,GAAE,IAAM9E,EAAEnN,EAAI,EAAIqT,GAAKjR,IAAMP,GAC3BoQ,GAAE,IAAM7P,EAAIE,IAAMT,GAClBoQ,GAAE,IAAM3P,EAAI2B,IAAMpC,GAClBoQ,GAAE,IAAMlR,EAAIw7B,IAAM16B,GAClBoQ,GAAE,IAAMsqB,EAAIh5B,IAAM1B,GAClBoQ,GAAE,IAAM1O,EAAI+oD,IAAMzqD,CAAAA,CAAAA,SAEjBmsF,GAAG7gF,EAAGnN,EAAGqT,EAAGtT,GAAAA,IACf8B,EAAI,EAAI9B,EAAI,MACXA,EAAI,EAAG,GAAKA,IAAKA,EAAGsuF,GAAGlhF,EAAGnN,EAAID,EAAGsT,EAAGxR,IAAM4tC,GAAGtiC,EAAGnN,EAAID,EAAGsT,EAAAA,CAAAA,SAErD46E,GAAG9gF,EAAGnN,EAAGqT,EAAGtT,GAAAA,IACf8B,EAAI,EAAI9B,EAAI,MACXA,EAAI,EAAG,GAAKA,IAAKA,EAAGsuF,GAAGlhF,EAAGnN,EAAID,EAAIsT,EAAG,EAAGxR,IAAM4tC,GAAGtiC,EAAGnN,EAAID,EAAIsT,EAAG,YAE7D+mF,GAAGjtF,EAAGnN,EAAGqT,EAAGtT,GAAAA,IACf8B,EAAAA,IACCA,EAAI,EAAG,EAAIA,IAAKA,EAAiBmsF,GAAG7gF,EAAhBnN,GAAK,EAAIqT,EAAaA,EAAGtT,EAAAA,CAAAA,SAE3Cs6F,GAAGltF,EAAGnN,EAAGqT,EAAGtT,GAAAA,IACf8B,EAAAA,IACCA,EAAI,EAAG,EAAIA,IAAKA,EAAaosF,GAAG9gF,EAAZnN,GAAK,EAAaqT,EAAGtT,EAAAA,CAAAA,SAEvCs8E,GAAGlvE,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,EAAG2B,GAAAA,IAC1B7B,EAAI,EAAIA,EAAI,EAAG,EAAIP,KAAO,IACzBysF,GAAGnhF,EAAGnN,EAAGqT,EAAGjR,EAAGE,GACjB,GAAI8rF,GAAGjhF,EAAGnN,EAAGqT,EAAGpP,GAAIwrC,GAAGtiC,EAAGnN,EAAGqT,OACxB,KACCi5C,EAAIn/C,EACN5J,EAAIvD,EACJu8B,EAAIlpB,EACJtS,EAAIurD,EAAE/oD,EAAI,EAAIg5B,GACd5gB,EAAI2wC,EAAE/oD,EAAIg5B,GACV6nE,EAAI93C,EAAE/oD,EAAI,GACV1C,EAAIyrD,EAAE/oD,EAAIg5B,GACVx5B,EAAIupD,EAAE/oD,EAAI,EAAIg5B,GAEd3qB,EAAK,IADLzR,EAAIwnF,GAAG,KAAO,GAAKyc,EAAIzoF,GAAKgsE,GAAG,KAAO5mF,EAAIF,KAC5B,IAAO,EACrBmD,EAAK,GAAK7D,EAAI,IAAO,EACrBA,EAAK,EAAIA,EAAI,IAAO,EACtBmsD,EAAE/oD,EAAI,EAAIg5B,GAAK6tE,GAAE,IAAM99C,EAAE/oD,EAAI,EAAIg5B,GAAKp8B,GACtCmsD,EAAE/oD,EAAI,EAAIg5B,GAAK6tE,GAAE,IAAMrpG,EAAIiD,GAC3BsoD,EAAE/oD,EAAIg5B,GAAK6tE,GAAE,IAAMzuF,EAAI/J,GACvB06C,EAAE/oD,EAAI,GAAK6mG,GAAE,IAAMhG,EAAIxyF,GACvB06C,EAAE/oD,EAAIg5B,GAAK6tE,GAAE,IAAMvpG,EAAImD,GACvBsoD,EAAE/oD,EAAI,EAAIg5B,GAAK6tE,GAAE,IAAMrnG,EAAI5C,EAAAA,CAE/BH,GAAKD,CAAAA,CAAAA,CAAAA,SAGAw+E,GAAGpxE,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,EAAG2B,GAAAA,IAC1B7B,EAAI,EAAIA,EAAI,EAAG,EAAIP,KAAO,IACzBysF,GAAGnhF,EAAGnN,EAAGqT,EAAGjR,EAAGE,GACjB,GAAI8rF,GAAGjhF,EAAGnN,EAAGqT,EAAGpP,GAAIwrC,GAAGtiC,EAAGnN,EAAGqT,OACxB,KACCi5C,EAAIn/C,EACN5J,EAAIvD,EACJu8B,EAAIlpB,EACJtS,EAAIurD,EAAE/oD,EAAIg5B,GACV5gB,EAAI2wC,EAAE/oD,EAAI,GACV6gG,EAAI93C,EAAE/oD,EAAIg5B,GAEVx5B,EAAIk/E,GAAG,KAAY,GADnBphF,EAAI,GAAK8a,EAAI5a,KACY,IACzBF,EAAIohF,GAAG,KAAQphF,EAAI,GAAM,IACzBV,EAAK4C,EAAI,GAAM,EACjBupD,EAAE/oD,EAAI,EAAIg5B,GAAK6tE,GAAE,IAAM99C,EAAE/oD,EAAI,EAAIg5B,GAAKp8B,GACtCmsD,EAAE/oD,EAAIg5B,GAAK6tE,GAAE,IAAMrpG,EAAIF,GACvByrD,EAAE/oD,EAAI,GAAK6mG,GAAE,IAAMzuF,EAAI5Y,GACvBupD,EAAE/oD,EAAIg5B,GAAK6tE,GAAE,IAAMhG,EAAIjkG,EAAAA,CAE3BH,GAAKD,CAAAA,CAAAA,CAAAA,SAGAw5F,GAAGpsF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GACzBi6E,GAAGlvE,EAAGnN,EAAGqT,EAAG,EAAG,GAAItT,EAAG8B,EAAGO,EAAAA,CAAAA,SAElBo3F,GAAGrsF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GACzBi6E,GAAGlvE,EAAGnN,EAAG,EAAGqT,EAAG,GAAItT,EAAG8B,EAAGO,EAAAA,CAAAA,SAElB23F,GAAG5sF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GAAAA,IACrBE,EAAAA,IACCA,EAAI,EAAG,EAAIA,IAAKA,EAAiBi8E,GAAGpxE,EAAhBnN,GAAK,EAAIqT,EAAaA,EAAG,EAAG,GAAItT,EAAG8B,EAAGO,EAAAA,CAAAA,SAExD43F,GAAG7sF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GAAAA,IACrBE,EAAAA,IACCA,EAAI,EAAG,EAAIA,IAAKA,EAAai8E,GAAGpxE,EAAZnN,GAAK,EAAa,EAAGqT,EAAG,GAAItT,EAAG8B,EAAGO,EAAAA,CAAAA,SAEpDq3F,GAAGtsF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,EAAG2B,GAC/Bo4E,GAAGlvE,EAAGnN,EAAG6B,EAAG,EAAG,EAAGO,EAAGE,EAAG2B,GACxBo4E,GAAGhpE,EAAGtT,EAAG8B,EAAG,EAAG,EAAGO,EAAGE,EAAG2B,EAAAA,CAAAA,SAEjB61F,GAAG3sF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,EAAG2B,GAC/Bo4E,GAAGlvE,EAAGnN,EAAG,EAAG6B,EAAG,EAAGO,EAAGE,EAAG2B,GACxBo4E,GAAGhpE,EAAGtT,EAAG,EAAG8B,EAAG,EAAGO,EAAGE,EAAG2B,EAAAA,CAAAA,SAEjBi2F,GAAG/sF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,EAAG2B,GAC/Bs6E,GAAGpxE,EAAGnN,EAAI,EAAI6B,EAAGA,EAAG,EAAG,EAAGO,EAAGE,EAAG2B,GAChCs6E,GAAGlrE,EAAGtT,EAAI,EAAI8B,EAAGA,EAAG,EAAG,EAAGO,EAAGE,EAAG2B,EAAAA,CAAAA,SAEzBk2F,GAAGhtF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,EAAG2B,GAC/Bs6E,GAAGpxE,EAAGnN,EAAI,EAAG,EAAG6B,EAAG,EAAGO,EAAGE,EAAG2B,GAC5Bs6E,GAAGlrE,EAAGtT,EAAI,EAAG,EAAG8B,EAAG,EAAGO,EAAGE,EAAG2B,EAAAA,CAAAA,SAErB24F,KAAAA,KACFT,GAAK,IAAIzV,GAAAA,KACTyC,GAAK,QACLN,GAAK,QACLoD,GAAK,QACLT,GAAKhrF,KAAK0rF,GAAK1rF,KAAKuoF,GAAKvoF,KAAK6oF,GAAK,OACnCrK,GAAK,IAAI+rN,GAAAA,KACTE,OAAS,OACThkN,GAAK,kBACLC,GAAK,uBACLiM,GAAK,yBAEH5E,KAAAA,KACF9lF,KAAO,QACP0uB,OAAS32B,KAAK6tF,GAAK7tF,KAAK+7E,GAAK/7E,KAAKwD,EAAI,OACtCg4F,GAAK,QACLC,GAAKz7F,KAAKihF,GAAKjhF,KAAKm+E,GAAKn+E,KAAKo/E,GAAKp/E,KAAKW,EAAI,WAE1C07F,KAAAA,KACF6xC,GAAKluI,KAAK89E,GAAK99E,KAAKR,EAAIQ,KAAKipF,GAAK,OAClCua,EAAI,QACJhgG,EAAI,WAEF84F,KAAAA,KACFlf,GAAK,OACL2C,GAAK,IAAImI,EAAAA,KACT1C,GAAK,IAAI0C,EAAAA,KACT6F,GAAK/tF,KAAKyqF,GAAKzqF,KAAKo1G,GAAK,OACzB5qB,GAAK,QACL9C,GAAK,OACLxH,GAAK,IAAIoa,EAAAA,KACT5P,GAAK,IAAIkd,CAAAA,CAAAA,SAEPhM,KAAAA,KACFjW,GAAK3lF,KAAK2M,EAAI,OACd5J,EAAI,IAAIy7E,GAAAA,KACR9C,GAAK,IAAIwK,GAAAA,KACTvxD,EAAI,QACJgpD,GAAK,OACL0B,GAAK,QACLS,GAAK,OACL/jD,EAAI,IAAIojD,EAAAA,KACR+H,GAAK,OACL+H,GAAK,IAAI9P,EAAAA,KACTb,GAAKt+E,KAAK2qS,EAAI3qS,KAAK+qF,EAAI/qF,KAAK9B,EAAI8B,KAAK6S,EAAI7S,KAAKkvF,GAAK,OACnD5uF,EAAI,IAAIg8F,GAAAA,KACRrtD,GAAK,OACL85C,GAAKxL,EAAG,EAAG8e,IAAAA,KACX1Q,GAAK,WAEH6Q,KAAAA,KACFhR,GAAKxrF,KAAK0R,EAAI1R,KAAK07F,GAAK17F,KAAK9B,EAAI8B,KAAK6S,EAAI,OAC1C9P,EAAI,IAAIy7E,GAAAA,KACR2K,GAAK,OACLzN,GAAK,QACLiJ,GAAK,OACLyJ,GAAK,UACLC,GAAK,WAEHjH,GAAGz6E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,GAAAA,IAC5B6K,EAAI,MAAQA,EAAI,EAAIA,EAAEnN,EAAI,GACrBA,EAAI,EAAGA,EAAIsC,IAAKtC,EAAI6B,EAAEO,EAAIpC,GAAMmN,EAAIkG,EAAEtT,EAAIC,GAAM,IAAOmN,EAAItL,EAAEO,EAAIpC,EAAAA,CAAAA,SAE/Di9F,GAAG9vF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,GAAAA,IAGtB2B,EAAAA,GAFF,MAAQkJ,EAAGy6E,GAAG,KAAM,KAAMv0E,EAAGtT,EAAG8B,EAAGO,EAAGE,QAAAA,IAGnC2B,EAAI,EAAGA,EAAI3B,IAAK2B,EAAGpC,EAAEO,EAAI6B,GAAMkJ,EAAEnN,EAAIiE,GAAKoP,EAAEtT,EAAIkE,GAAM,aAGtDk5F,GAAGhwF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,GAAAA,GACxB,MAAQ6K,EAAGy6E,GAAG,KAAM,KAAMv0E,EAAGtT,EAAG8B,EAAGO,EAAGE,OACrC,KAIDi6B,EAHEt4B,EAAIkJ,EAAEnN,EAAI,GACZssD,EAAIroD,EACJV,EAAIU,EAAAA,IAEDs4B,EAAI,EAAGA,EAAIj6B,IAAKi6B,EAEhB+vB,EAAI/oD,GADNU,EAAIkJ,EAAEnN,EAAIu8B,IACI+vB,EACZ/oD,EAAK8P,EAAEtT,EAAIw8B,KAAW,IAAL+vB,EAAY,EAAIA,EAAI,EAAI,IAAOA,GAAM,IACtDA,EAAIroD,EACJpC,EAAEO,EAAIm6B,GAAKh5B,CAAAA,CAAAA,CAAAA,SAGXu0F,GAAG3qF,EAAGnN,EAAGqT,EAAGtT,GAAAA,IACf8B,EAAI7B,EAAE4D,MACRxB,EAAIpC,EAAEu5D,EAAAA,GACRx1D,EAAE,MAAQoJ,GAAK,MAAQnN,GACnB,EAAIqT,GAAK,GAAKtT,GAAKsT,EAAItT,EAAIqC,EAAG,OAAO,SACpC+K,EAAEm+E,GAAI,IACL,MAAQn+E,EAAE+9R,GAAI,KAEZ5oS,EAAAA,GADJ6K,EAAE+9R,GAAK,IAAIluM,IAEV16F,EAAI,MAAQ6K,EAAE+9R,MACX5oS,EAAItC,EAAE4D,MAAQ5D,EAAEu5D,EAClBx1D,EAAE,GAAKoJ,EAAE45E,GAAGnoF,QACXuO,EAAE45E,GAAK5xD,EAAE7yB,GACT6K,EAAE+gF,GAAK,EACR,MAAQ/gF,EAAE45E,GACLzkF,EAAI,GACH6K,EAAE80E,GAAK90E,EAAE45E,GAAM55E,EAAE+0E,GAAK/0E,EAAE+gF,GAAM/gF,EAAEo9E,GAAK,KAAQjoF,EAAI,GACtDA,GAAKA,IACHA,EAAG,CACNA,EAAI6K,EAAE+9R,GAAAA,IACFjnS,EAAIkJ,EAAEoxE,GACRjyB,EAAIn/C,EAAEhM,EACNoC,EAAI4J,EAAEi9E,GACN7tD,EAAIpvB,EAAE80E,GACNlhF,EAAIoM,EAAE+0E,GACNvmE,EAAI2wC,EAAI,EACR83C,EAAI7gG,EAAI,EACR1C,EAAIyB,EAAEiB,EAAAA,GACRQ,EAAE,MAAQE,GAAK,MAAQs4B,GAAK,MAAQv8B,GACpCw8E,GAAG,GAAK,KACRA,GAAG,GAAKoL,GACRpL,GAAG,GAAKygB,GACRzgB,GAAG,GAAK2gB,GACR76F,EAAE45E,GAAK3/C,EACPj6B,EAAE6iF,GAAKpkF,EACPuB,EAAE+Q,EAAIrT,EAAE4D,MACRtB,EAAE5D,EAAIsB,EAAE6D,OACRE,EAAE,EAAIzB,EAAE+Q,GAAK,EAAI/Q,EAAE5D,GACf,GAAK6E,EAAGvD,EAAI,OACX,GACDsC,EAAE45F,GAAMj4F,EAAEqoD,EAAI,IAAM,EAAK,EAC1BhqD,EAAE4P,EAAKjO,EAAEqoD,EAAI,IAAM,EAAK,EACxBhqD,EAAE0pF,GAAM/nF,EAAEqoD,EAAI,IAAM,EAAK,EACzBA,EAAKroD,EAAEqoD,EAAI,IAAM,EAAK,EACvB,EAAIhqD,EAAE45F,IAAM,EAAI55F,EAAE45F,IAAM,GAAK55F,EAAE4P,GAAK,EAAI5P,EAAE0pF,IAAM1/B,EAEhDtsD,EAAI,OACD,GACDa,EAAEyqS,IAAMvhN,GACTlpF,EAAE6nF,GAAKa,GACP1oF,EAAE6uC,GAAKs6C,GACPnpF,EAAE+7E,GAAKt6E,EACPzB,EAAE+C,MAAQ5D,EAAE4D,MACZ/C,EAAEgD,OAAS7D,EAAE6D,OACbhD,EAAEw9E,GAAKr+E,EAAEq+E,GACTx9E,EAAEkC,EAAI/C,EAAE+C,EACRlC,EAAEi9E,GAAK99E,EAAE89E,GACTj9E,EAAEsmD,EAAInnD,EAAEmnD,EACRtmD,EAAE04D,EAAIv5D,EAAEu5D,EACTj3D,EAAE45F,GAEFl8F,EAAG,CACD+D,EAAE,GAAKzB,EAAE45F,IAAMl8F,EAAIo3G,KACnB/jG,EAAG,OAAS,IACN,MAAQrT,EAAG,CACbA,EAAI,QACEA,CAAAA,CAAAA,GAER+D,EAAE,MAAQzB,GACVA,EAAEi1G,GAAKv3G,EACPA,EAAEqT,EAAI/Q,EAAE+Q,EACRrT,EAAEtB,EAAI4D,EAAE5D,EACRsB,EAAEuD,EAAIjB,EAAEiB,EACRvD,EAAEuD,EAAEq5E,GAAKt6E,EACTtC,EAAEuD,EAAEK,MAAQtB,EAAE+Q,EACdrT,EAAEuD,EAAEM,OAASvB,EAAE5D,EACfsB,EAAEmN,EAAI,EACN+zE,EAAGlhF,EAAEu8B,EAAGt4B,EAAG0X,EAAGyoF,IACTnf,GAAG3iF,EAAE+Q,EAAG/Q,EAAE5D,EAAG,EAAGsB,EAAG,MAAO,MAAMqT,EAAAA,GAAAA,GAChCrT,EAAEyvC,IAAM,GAAKzvC,EAAEupF,GAAG,GAAGE,IAAMyB,GAAGlrF,EAAEc,IAC/BwB,EAAEqnF,GAAK,EACR1lF,EAAIjE,EAAEqT,EAAIrT,EAAEtB,EACZsB,EAAE6/E,GAAK,KACP7/E,EAAEsgF,GAAK,EACPtgF,EAAEm1B,EAAIA,EAAElxB,GACRjE,EAAEm+E,GAAK,EACR,MAAQn+E,EAAEm1B,GAAMn1B,EAAEmN,EAAI,EAAKnN,EAAI,GAAOA,EAAI,IACxCsC,EAAEqnF,GAAK,EAAK3pF,EAAIyrF,GAAGzrF,EAAGsC,EAAE+Q,KACzBrT,EAAG,MAAMqT,EACdrT,EAAI,QACEA,CAAAA,CAERsC,EAAEi1G,GAAK,KACPv3G,EAAI,OAEHA,EAAIokG,GAAK9hG,EAAE+Q,EAAI/Q,EAAE5D,EACtB4D,GAAKtC,CAAAA,CAAAA,GAEHsC,EAAG,OAAO,QACT6K,EAAE+9R,GAAGl/M,GAAM7+E,EAAEqxE,GAAK,EAAMz+E,EAAIqC,EAAIiR,CAAAA,CAEvCtP,EAAE,MAAQoJ,EAAE+9R,IACZnnS,EAAEsP,EAAItT,GAAKqC,GACX+K,EAAG,IAEDnN,GADAiE,EAAIkJ,EAAE+9R,IACA73R,EACNjR,EAAI6B,EAAEV,EAAEg2D,EACJ,GAAKt1D,EAAEi4F,GAAI,IACbvgF,EAAIxO,EAAEo9E,GACN6Z,EAAIj3F,EAAE8/E,GACNpsF,EAAIsM,EAAEoxE,GACNjyB,EAAIn/C,EAAEhM,EAAI,EAAIkS,EAAIrT,EAClBuD,EAAI4J,EAAE80E,GACN1lD,EAAIpvB,EAAE+0E,GAAK7uE,EAAIrT,EACf+D,EAAEuoD,GAAKn/C,EAAEhM,EAAIgM,EAAEi9E,IACX,GAAKnmF,EAAEiO,EACT,IAAKnO,EAAE,MAAQy4E,GAAGv4E,EAAEiO,IAAK5P,EAAI,EAAGA,EAAIvC,IAAKuC,EACvCk6E,GAAGv4E,EAAEiO,GAAGyJ,EAAGyoF,EAAGvjG,EAAGyrD,EAAG/oD,EAAGg5B,EAAGv8B,GACvB2b,EAAIpY,EACJ6gG,EAAI7nE,EACJA,GAAKv8B,EACLssD,GAAKtsD,OAEV,IAAKsC,EAAI,EAAGA,EAAIvC,IAAKuC,EACnBk+F,EAAEj9F,EAAGg5B,EAAG17B,EAAGyrD,EAAGtsD,GAAK2b,EAAIpY,EAAK6gG,EAAI7nE,EAAKA,GAAKv8B,EAAKssD,GAAKtsD,EACxDmN,EAAEo9E,GAAK5uE,EACPxO,EAAE8/E,GAAKmX,CAAAA,KACF,IACLrgG,EAAE,MAAQE,EAAEszG,IACZv3G,EAAIqT,EAAItT,EAERgE,EAAE,OADFzB,EAAI2B,EAAEszG,KAENxzG,EAAE/D,GAAKsC,EAAE5D,GACL4D,EAAEipF,GAAKvrF,EAAGA,EAAI,OACb,GAAKiE,EAAE0lF,IAAMzL,KAAMj6E,EAAE0lF,GAAK,CACzB1lF,EAAI3B,EAAE6yB,EACRxZ,EAAIrZ,EAAE67E,GACNimB,EAAI9hG,EAAE+Q,EAAAA,IACNtQ,EAAIT,EAAE5D,EAMNyB,GALAU,EAAI,EACJyrD,EAAIhqD,EAAE6oS,EAAI/mM,EACV7gG,EAAIjB,EAAE6oS,EAAI/mM,EACV7nE,EAAIj6B,EAAEi6B,EACNx7B,EAAIuB,EAAExB,EACFwB,EAAE6oS,GACNv5R,EAAIwyF,EAAIrhG,EACRiB,EAAIogG,EAAIpkG,EACRqC,EAAItB,EAAE60G,GACN9jG,EAAI3R,EAAI6D,EAAIu4E,GAAGx7E,EAAGwC,EAAG+oD,GAAK,KAC5BvoD,EAAE5D,GAAKyR,GACP7N,EAAE/D,GAAK+C,GACPgB,EAAEmnF,GAAGnqF,IACLsS,EAAG,OAAS,OACFkpB,EAAEt4B,GAAK9D,EAAI6D,GAAK,IACtBT,EAAIlB,IAAMyP,EAAIyqE,GAAGx7E,EAAGwC,EAAG+oD,IACvBvoD,EAAE,MAAQ+N,GACV8tE,EAAGrjD,GAEC,KADJx5B,EAAI66E,GAAG9rE,EAAEqsF,EAAE,GAAIrsF,EAAEusF,EAAE,GAAI9hE,IAEpBt4B,EAAE0X,EAAIxb,GAAK4C,IACR5C,IACAoD,GACG6gG,IAAO7gG,EAAI,IAAM+oD,GAAQtsD,KAAOssD,EAAI,KAAO26B,GAAG3kF,EAAGgqD,QACrD,MAAI,IAAMvpD,GAiBR,CACLlC,EAAI,QACEwS,CAAAA,CAlBFtQ,EAAI8+E,GAAG9+E,EAAI,IAAKw5B,GAAAA,IAMd0sD,EALFl3E,EAAI6rE,GAAG9rE,EAAEqsF,EAAE,GAAIrsF,EAAEusF,EAAE,GAAI9hE,GAAAA,GAC3BqjD,EAAGrjD,KAGCp8B,IADJ4R,EAAI28H,GAAGtqC,EADPryF,EAAI8vE,GAAG9vE,EAAGwqB,MAEI3qB,EAAIzR,GAAK4C,GAGhB,CACLlC,EAAI,QACEwS,CAAAA,CAAAA,IAHD41E,EAAI,EAAGA,EAAIlmF,IAAKkmF,EAAGhlF,EAAE0X,EAAIxb,EAAI8oF,GAAKhlF,EAAE0X,EAAIxb,EAAI8oF,EAAIl3E,GAAAA,IAKvD5R,GAAK4C,EACAQ,GAAKR,EAAGQ,GAAK6gG,GACf7gG,GAAK6gG,IAAM93C,GAAQtsD,KAAOssD,EAAI,KAAO26B,GAAG3kF,EAAGgqD,GAC9CnsD,EAAI6D,GAAKT,EAAIlB,IAAMyP,EAAIyqE,GAAGx7E,EAAGwC,EAAG+oD,GAAAA,CAKlCvoD,EAAEw4B,EAAEt4B,GAAKk9E,EAAG5kD,GAAAA,CAEd0qD,GAAG3kF,EAAGgqD,EAAItsD,EAAIA,EAAIssD,GAAAA,MACZj5C,CAAAA,EAEPxS,GAAM07B,EAAEt4B,GAAK9D,EAAIyR,GAAO/Q,EAAI,EAAKyB,EAAE6K,EAAIovB,EAAEt4B,EAAI,EAAI,GAAO3B,EAAE6oS,EAAIhrS,EAC/DH,EAAIa,CAAAA,MACCb,EAAIknF,GAAG5kF,EAAGA,EAAE6yB,EAAG7yB,EAAE67E,GAAI77E,EAAE+Q,EAAG/Q,EAAE5D,EAAGsB,EAAGy2F,IAAAA,IACpCz2F,EAAG,CACND,EAAI,QACEoN,CAAAA,CAAAA,CAGVkG,EAAItT,GAAKqC,IAAM+K,EAAEm+E,GAAK,GACtBvrF,EAAI,MAEDA,EAAG,OAAO,QAEboN,EAAEm+E,KACW,OAAXvrF,EAAIoN,EAAE+9R,MAAmBnrS,EAAEw3G,GAAK,MAAQpqG,EAAE+9R,GAAK,KAAO,EAAI/9R,EAAEqxE,IAE9D,OAAOqiF,MAAM,6BAA8B,YAExC1zJ,EAAE+0E,GAAK7uE,EAAIxR,CAAAA,CAAAA,SAEXy7F,GAAGnwF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,GAAAA,KAClB,EAAIP,KAAO,KAKd06B,EAJEj6B,EAAI6K,EACNlJ,EAAIjE,GAAKqT,EAAI,EAAI,GACjBi5C,EAAIn/C,EACJ5J,EAAIvD,GAAKqT,EAAI,EAAI,OAEdkpB,EAAI,EAAGA,EAAIx8B,IAAKw8B,EAAG,KAClBx7B,EAAIurD,EAAE/oD,EAAI,EAAIg5B,GAAAA,KACXx7B,IACHA,GAAK,MACNuB,EAAE2B,EAAI,EAAIs4B,EAAI,GAAMj6B,EAAE2B,EAAI,EAAIs4B,EAAI,GAAKx7B,GAAM,GAC7CuB,EAAE2B,EAAI,EAAIs4B,EAAI,GAAMj6B,EAAE2B,EAAI,EAAIs4B,EAAI,GAAKx7B,GAAM,GAC7CuB,EAAE2B,EAAI,EAAIs4B,EAAI,GAAMj6B,EAAE2B,EAAI,EAAIs4B,EAAI,GAAKx7B,GAAM,IAElDf,GAAKoC,CAAAA,CAAAA,CAAAA,SAGAg7F,GAAGjwF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,KACf,EAAI9B,KAAO,KACZqC,EAAAA,IACCA,EAAI,EAAGA,EAAIiR,IAAKjR,EAAG,KAClBE,EAAI6K,EAAEnN,EAAI,EAAIoC,EAAI,GAEpBkqD,EAAQ,IADRroD,EAAIkJ,EAAEnN,EAAI,EAAIoC,EAAI,IAElBmB,EAAI,KAAO+oD,EACXroD,GAAW,IAAJA,EAAYA,GAAK,GAAMV,GAAM,GACtC4J,EAAEnN,EAAI,EAAIoC,EAAI,IACH,IAAJE,EAAYA,GAAK,GAAMiB,GAAM,GAAM,KAC9B,GAAJjB,EAAWA,GAAK,GAAMiB,GAAM,IAAO,EAAK,GAChD4J,EAAEnN,EAAI,EAAIoC,EAAI,GAAU,IAAJ6B,EAAWqoD,CAAAA,CAEjCtsD,GAAK6B,CAAAA,CAAAA,CAAAA,SAGA07F,GAAGpwF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,EAAG2B,GAAAA,IAE7BV,EACAg5B,EAFE+vB,EAAI,QAGH/vB,EAAI,EAAGA,EAAI16B,IAAK06B,EAAG,KACjBh5B,EAAI,EAAGA,EAAIxD,IAAKwD,EAAG,KAClBxC,EAAIoM,EAAEnN,EAAIuD,GACdnB,EAAEE,EAAI,EAAIiB,GAAKxC,EACfurD,GAAKvrD,CAAAA,CAEPf,GAAKqT,EACL/Q,GAAK2B,CAAAA,CAAAA,OAEA,KAAOqoD,CAAAA,CAAAA,SAEPkxC,GAAGrwF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IAClBO,EAAAA,IACCA,EAAI,EAAGA,EAAIP,IAAKO,EAAGiR,EAAEtT,EAAIqC,GAAK+K,EAAEnN,EAAIoC,IAAM,WAExC87E,KACPD,GAAKqf,GACLtS,GAAKoS,GACL/T,GAAKkU,GACL7R,GAAK8R,EAAAA,CAAAA,SAEE1f,GAAG3wE,EAAGnN,EAAGqT,GAChBuyH,EAAKz4H,GAAK,SAASA,EAAGtL,EAAGO,EAAGE,EAAG2B,EAAGqoD,EAAG/oD,EAAGg5B,EAAGx7B,EAAG4a,EAAGyoF,EAAGvjG,EAAGkC,EAAG5C,EAAGyR,EAAG5N,EAAG3B,GAAAA,IAC7DtC,EACFgS,EAAK1P,EAAI,GAAM,EACb4mF,EAAIhlF,EAAEqoD,EAAI,GAAM/oD,EAAEg5B,EAAI,IAAM,GAC5BgvD,EAAIxqF,EAAE4a,EAAI,GAAMyoF,EAAEvjG,EAAI,IAAM,GAChCkD,EAAE,MAAQoJ,GAAAA,IACN0E,EAAK,EAAIo3E,EAAIsC,EAAI,QAAW,MAChCvrF,EAAEmN,EAAEtL,EAAI,GAAQ,IAAJgQ,EAASA,GAAK,GAAI9O,EAAG5C,GAAAA,MACzBiC,IACJyP,EAAK,EAAI05E,EAAItC,EAAI,QAAW,EAC9BjpF,EAAEoC,EAAEE,EAAI,GAAQ,IAAJuP,EAASA,GAAK,GAAID,EAAG5N,IAC9BjE,EAAI,EAAGA,GAAKgS,IAAKhS,EAAG,KACnBi8E,EAAI/3E,EAAEqoD,EAAIvsD,GAAMwD,EAAEg5B,EAAIx8B,IAAM,GAC5Bo+F,EAAIp9F,EAAE4a,EAAI5b,GAAMqkG,EAAEvjG,EAAId,IAAM,GAC5BiS,EAAIi3E,EAAIjN,EAAIuP,EAAI4S,EAAI,OACpBE,EAAKrsF,EAAI,GAAKgqE,EAAIuP,IAAO,EAE7B15E,EAAKwsF,EAAIpV,GAAM,EACfA,GAFAj3E,EAAKA,EAAI,GAAKi3E,EAAIkV,IAAO,GAEhBniB,GAAM,EACfh8E,EAAEmN,EAAEtL,EAAI,EAAI9B,EAAI,GAAQ,IAAJ8R,EAASA,GAAK,GAAI9O,EAAG5C,GAAK,EAAIJ,EAAI,GAAKsT,GAC3DrT,EAAEmN,EAAEtL,EAAI,EAAI9B,EAAI,GAAQ,IAAJkpF,EAASA,GAAK,GAAIlmF,EAAG5C,GAAK,EAAIJ,EAAI,GAAKsT,GAAAA,MACnDjR,IACJyP,EAAKG,EAAIu5E,GAAM,EAChBtC,EAAKoV,EAAIF,GAAM,EAChBn+F,EAAEoC,EAAEE,EAAI,EAAIvC,EAAI,GAAQ,IAAJ8R,EAASA,GAAK,GAAID,EAAG5N,GAAK,EAAIjE,EAAI,GAAKsT,GAC3DrT,EAAEoC,EAAEE,EAAI,EAAIvC,EAAI,GAAQ,IAAJkpF,EAASA,GAAK,GAAIr3E,EAAG5N,GAAK,EAAIjE,EAAI,GAAKsT,IAC7D41E,EAAIjN,EACJuP,EAAI4S,CAAAA,CAEF,EAAJ97F,IACIwP,EAAK,EAAIo3E,EAAIsC,EAAI,QAAW,EAC9BvrF,EAAEmN,EAAEtL,EAAIQ,EAAI,GAAQ,IAAJwP,EAASA,GAAK,GAAI9O,EAAG5C,GAAKkC,EAAI,GAAKgR,GACnD,MAAQjR,IACJyP,EAAK,EAAI05E,EAAItC,EAAI,QAAW,EAC9BjpF,EAAEoC,EAAEE,EAAID,EAAI,GAAQ,IAAJwP,EAASA,GAAK,GAAID,EAAG5N,GAAK3B,EAAI,GAAKgR,IAAAA,CAAAA,CAAAA,SAGlDs2E,KACPxoF,GAAEi9E,IAAMqf,GACRt8F,GAAEm/E,IAAMkO,GACRrtF,GAAEspF,IAAMkT,GACRx8F,GAAE2+E,IAAM2O,GACRttF,GAAE68E,IAAM2Q,GACRxtF,GAAEylF,IAAMgI,GACRztF,GAAEy0G,IAAMhY,GACRz8F,GAAEolF,IAAMiI,GACRrtF,GAAEqlF,IAAMiI,GACRttF,GAAEw9E,IAAMgQ,GACRxtF,GAAEslF,IAAMmI,EAAAA,CAAAA,SAED/G,GAAG16E,GAAAA,OACHA,GAAK0wF,GAAM,EAAI1wF,EAAI,EAAI,IAAOA,GAAK0hF,EAAAA,CAAAA,SAEnC5N,GAAG9zE,EAAGnN,GAAAA,OACN6nF,IAAK,MAAQ16E,GAAM,IAAO,MAAQnN,GAAM,GAAK,gBAE7CkiF,GAAG/0E,EAAGnN,EAAGqT,GAAAA,OACTw0E,IACH,MAAQ16E,GAAM,IAAO,KAAOnN,GAAM,IAAO,MAAQqT,GAAM,GAAK,eAGzDgsE,GAAGlyE,EAAGnN,GAAAA,OACN6nF,IAAK,MAAQ16E,GAAM,IAAO,MAAQnN,GAAM,GAAK,gBAE7Cw+E,GAAGrxE,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACtB9B,EAAE8B,EAAI,GAAKo/E,GAAG9zE,EAAGkG,GACjBtT,EAAE8B,EAAI,GAAKqgF,GAAG/0E,EAAGnN,EAAGqT,GACpBtT,EAAE8B,EAAI,GAAKw9E,GAAGlyE,EAAGnN,EAAAA,CAAAA,SAEV8nF,GAAG36E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACtB9B,EAAE8B,EAAI,GAAKw9E,GAAGlyE,EAAGnN,GACjBD,EAAE8B,EAAI,GAAKqgF,GAAG/0E,EAAGnN,EAAGqT,GACpBtT,EAAE8B,EAAI,GAAKo/E,GAAG9zE,EAAGkG,EAAAA,CAAAA,SAEVu8E,GAAGziF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IAClBO,EAAI8/E,GAAG/0E,EAAGnN,EAAGqT,GACjBrT,EAAMoC,GAAK,EAAK,IAAQi9E,GAAGlyE,EAAGnN,IAAM,EACpCD,EAAE8B,EAAI,GAAiB,IAAXo/E,GAAG9zE,EAAGkG,GAAajR,GAAK,EACpCrC,EAAE8B,EAAI,GAAK7B,CAAAA,CAAAA,SAEJkwF,GAAG/iF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IAClBO,EAAgB,IAAXi9E,GAAGlyE,EAAGnN,GAAY,GAC3BD,EAAE8B,EAAI,GAAiB,IAAXo/E,GAAG9zE,EAAGkG,GAAa6uE,GAAG/0E,EAAGnN,EAAGqT,IAAM,EAC9CtT,EAAE8B,EAAI,GAAKO,CAAAA,CAAAA,SAEJ+tF,GAAGhjF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACtB9B,EAAE8B,EAAI,GAAK,IACX28E,GAAGrxE,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAI,YAEZwuF,GAAGljF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACtBimF,GAAG36E,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACf9B,EAAE8B,EAAI,GAAK,aAEJ4tF,GAAGtiF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACtB28E,GAAGrxE,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GACf9B,EAAE8B,EAAI,GAAK,aAEJqpS,GAAG/9R,EAAGnN,GAAAA,OACN,EAAImN,EAAI,EAAIA,EAAInN,EAAIA,EAAImN,CAAAA,CAAAA,SAExBwvE,GAAGxvE,EAAGnN,EAAGqT,GAChBuyH,EAAKz4H,GAAK,SAASA,EAAGtL,EAAGO,EAAGE,EAAG2B,EAAGqoD,EAAG/oD,EAAGg5B,EAAGx7B,GAAAA,IACpC,IAAIhB,EAAIw8B,IAAU,EAALx7B,GAAUsS,EAAGkpB,GAAKx8B,GAClCC,EAAEmN,EAAEtL,EAAI,GAAIO,EAAEE,EAAI,GAAI2B,EAAEqoD,EAAI,GAAI/oD,EAAGg5B,GACjCv8B,EAAEmN,EAAEtL,EAAI,GAAIO,EAAEE,EAAI,GAAI2B,EAAEqoD,EAAI,GAAI/oD,EAAGg5B,EAAIlpB,GACtCxR,GAAK,IACJS,IACAgqD,EACD/vB,GAAK,EAAIlpB,EACV,EAAJtS,GAASf,EAAEmN,EAAEtL,EAAI,GAAIO,EAAEE,EAAI,GAAI2B,EAAEqoD,EAAI,GAAI/oD,EAAGg5B,EAAAA,CAAAA,CAAAA,SAGvCmzD,GAAGviF,EAAGnN,EAAGqT,GAAAA,OACT,GAAKA,EAAK,GAAKlG,EAAK,GAAKnN,EAAI,EAAI,EAAK,GAAKA,EAAI,EAAI,EAAKqT,CAAAA,CAAAA,SAExDs8E,GAAGxiF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,OACdsL,IAAM,SACP,EACH4zE,GAAG/gF,EAAGqT,EAAGtT,EAAG8B,EAAG,cAEZ,EACHksF,GAAG/tF,EAAGqT,EAAGtT,EAAG8B,GAAAA,MAAAA,KAET,EACH07E,GAAGv9E,EAAGqT,EAAGtT,EAAG8B,GAAAA,CAAAA,SAGTsqF,GAAGh/E,EAAGnN,GAAAA,IACTqT,EACFtT,EACA8B,EAAI7B,EAAEq0D,EACNjyD,EAAIpC,EAAEunF,GACNjlF,EAAI6K,EAAE88E,GACNhmF,EAAIkJ,EAAEg9E,GAAK,GACX79B,EAAIn/C,EAAE88E,GACN1mF,EAAI4J,EAAEg9E,GAAK,IACX5tD,EAAIpvB,EAAE88E,GACNlpF,EAAIoM,EAAEg9E,GAAK,QACR92E,EAAI,EAAG,GAAKA,IAAKA,EAAG/Q,EAAE2B,EAAI,GAAKoP,EAAI,GAAK,QACxCA,EAAI,EAAG,EAAIA,IAAKA,EAClBi5C,EAAE/oD,EAAI,GAAK8P,EAAI,GAAK,IAAOkpB,EAAEx7B,EAAI,GAAKsS,EAAI,GAAK,UAC9CxR,EACCS,EAAE2B,EAAI,EAAI,IAAMqoD,EAAE/oD,EAAI,EAAI,IAAMg5B,EAAEx7B,EAAI,EAAI,IAAM,KAChDszD,EAAE/xD,EAAG2B,EAAI,GAAK,EAAG,IAAK,IACvBowD,EAAE/H,EAAG/oD,EAAI,GAAK,EAAG,IAAK,GACtB8wD,EAAE93B,EAAGx7B,EAAI,GAAK,EAAG,IAAK,IACrBhB,EAAI,EAAGA,EAAIoN,EAAE8wE,KAAMl+E,EAAG,KACrB4b,EAAI3b,EAAEg+E,GAAGh+E,EAAEi8E,GAAKl8E,GAAAA,GAChB,EAAIA,EAAG,KACJsT,GAAK,EAAG,GAAKA,IAAKA,EAAGmtF,EAAEl+F,EAAG2B,EAAI,GAAKoP,EAAI,EAAG/Q,EAAG2B,EAAI,GAAKoP,EAAI,GAAI,OAC9DA,GAAK,EAAG,EAAIA,IAAKA,EACpBmtF,EAAEl0C,EAAG/oD,EAAI,GAAK8P,EAAI,EAAGi5C,EAAG/oD,EAAI,GAAK8P,EAAI,EAAG,GACtCmtF,EAAEjkE,EAAGx7B,EAAI,GAAKsS,EAAI,EAAGkpB,EAAGx7B,EAAI,GAAKsS,EAAI,EAAG,OAE1C+wF,EAAIj3F,EAAEu9R,GACR7pS,EAAIsM,EAAE2kF,GAAK/xF,EACXgD,EAAI4Y,EAAE+xE,GACNvtF,EAAIwb,EAAEiwE,GAAAA,GAAAA,EACJ/pF,IACD2+F,EAAEl+F,EAAG2B,EAAI,GAAImgG,EAAEvjG,GAAGwB,EAAG,EAAG,IACzBm+F,EAAEl0C,EAAG/oD,EAAI,GAAI6gG,EAAEvjG,GAAGuB,EAAG,EAAG,GACxBo+F,EAAEjkE,EAAGx7B,EAAI,GAAIqjG,EAAEvjG,GAAGw7E,GAAI,EAAG,IACvB1gE,EAAEolE,GAAI,KACJnvE,EAAItP,EACJ0B,EAAIC,EAAI,GAAK,SACbpC,IACD9B,GAAKoN,EAAE8wE,GAAK,EACT5pB,EAAEziD,EAAG5N,EAAGogG,EAAEvjG,GAAGwB,EAAE,IAAK,GACpBm+F,EAAE5uF,EAAG5N,EAAGogG,EAAEvjG,EAAI,GAAGwB,EAAG,EAAG,IACxBgR,EAAI,EAAG,EAAIA,EAAGA,IACjBzB,EAAE5N,EAAI,IAAMqP,GAAKzB,EAAE5N,EAAI,IAAMqP,GAAKzB,EAAE5N,EAAI,IAAMqP,GAAKzB,EAAE5N,EAAI,EAAIqP,GAAAA,IAC1DA,EAAI,EAAG,GAAKA,IAAKA,EAAGlT,IAAM,EAC5ByR,EAAItP,EAAK0B,EAAIC,EAAIitF,GAAG79E,GAAKg1D,GAAE1sD,EAAE8rE,GAAGp0E,IAAIzB,EAAG5N,GAAI2rF,GAAGxvF,EAAG4C,EAAG,IAAMsQ,EAAGzB,EAAG5N,EAAAA,MAC9D,GAAM4N,EAAI89E,GAAG3vF,EAAG8B,EAAG8Z,EAAE8rE,GAAG,IAAM1L,GAAEnqE,GAAGtP,EAAG2B,GAAI,GAAK9D,EACpD,IAAKkT,EAAI,EAAG,GAAKA,IAAKA,EAAGlT,IAAM,EAAGwvF,GAAGxvF,EAAG4C,EAAG,IAAMsQ,EAAG/Q,EAAG2B,EAAIitF,GAAG79E,IAAAA,IAChEA,EAAIsI,EAAEgwE,GACN/5E,EAAI89E,GAAG3vF,EAAG8B,EAAG8Z,EAAEg2E,IACfjV,GAAG9qE,GAAG06C,EAAG/oD,GACTm5E,GAAG9qE,GAAG2qB,EAAGx7B,GAETZ,EAAI4C,EACJ6O,EAAI06C,EACJtoD,EAAIT,EACA,KAJJoY,EAAItI,GAAK,KAIO,IAAJsI,EAAU4rE,GAAGpnF,EAAG,IAAKyR,EAAG5N,GAAKyjF,GAAGtnF,EAAG,IAAKyR,EAAG5N,IAEvD2X,EAAI4gB,EACJp8B,EAAIY,EACA,KAHJsS,IAAM,KAGU,IAAJA,EAAUk0E,GAAGxkF,EAAG,IAAK4Y,EAAGxb,GAAKsnF,GAAG1kF,EAAG,IAAK4Y,EAAGxb,IACvD0B,EAAIsL,EAAE2tF,GAAK,IACR0F,EAAE4D,EAAEvjG,GAAGwB,EAAG,EAAGC,EAAG2B,EAAI,IAAK,IAC1Bu8F,EAAE4D,EAAEvjG,GAAGuB,EAAG,EAAGkqD,EAAG/oD,EAAI,IAAK,GACzBi9F,EAAE4D,EAAEvjG,GAAGw7E,GAAI,EAAG9/C,EAAGx7B,EAAI,IAAK,IAC5BsS,EAAI,EAAIjR,EAAI+K,EAAE87E,EACdmb,EAAIj3F,EAAEkwE,GACNx8E,EAAIsM,EAAEmwE,GAAK,GAAKv9E,EAAI,GAAKqC,EAAI+K,EAAEi9F,EAC/BrnG,EAAIoK,EAAEqwE,GACN7hE,EAAIxO,EAAEiwE,GAAK,EAAIr9E,EAAIsT,EACnBlT,EAAIgN,EAAEsxE,GACN7sE,EAAIzE,EAAEuxE,GAAK,EAAI3+E,EAAIsT,EACdA,EAAI,EAAG,GAAKA,IAAKA,EAAGmtF,EAAE4D,EAAGvjG,EAAIwS,EAAIlG,EAAEi9F,EAAG9nG,EAAG2B,EAAI,GAAKoP,EAAG,QACrDA,EAAI,EAAG,EAAIA,IAAKA,EACnBmtF,EAAEz9F,EAAG4Y,EAAItI,EAAIlG,EAAE87E,EAAG38B,EAAG/oD,EAAI,GAAK8P,EAAG,GAC/BmtF,EAAErgG,EAAGyR,EAAIyB,EAAIlG,EAAE87E,EAAG1sD,EAAGx7B,EAAI,GAAKsS,EAAG,aAGhCi9E,GAAGnjF,EAAGnN,EAAGqT,EAAGtT,EAAG8B,EAAGO,EAAGE,EAAG2B,EAAGqoD,GAAAA,IAC9B/oD,EAAI,CAAC,GACPg5B,EAAI,CAAC,GACLx7B,EAAI,EACJ4a,EAAI,MAAQ2wC,EAAIA,EAAE+hC,GAAK,EACvB+V,EAAI,MAAQ93C,EAAIA,EAAI,IAAIiiC,GAAAA,GACtB,MAAQphF,GAAK,GAAKkG,EAAG,OAAO,EAChC+wF,EAAE37F,KAAO0E,EACTi3F,EAAEpgG,EAAIhE,EACNokG,EAAE7nB,GAAKlpE,EACPrT,EAAI,CAACA,GACLqT,EAAI,CAACA,GACL+wF,EAAE3iB,GAAK,CAAC2iB,EAAE3iB,IACVt0E,EAAG,KACGtM,EAAIb,EACJ+C,EAAIsQ,EACJlT,EAAIikG,EAAE3iB,GAAAA,GACV19E,EAAE,MAAQoJ,GACVpJ,EAAE,MAAQhB,GACVgB,EAAE,MAAQ5D,GACVA,EAAE,GAAK,EACH,IAAM4C,EAAE,KAAOu5E,EAAGnvE,EAAGtM,EAAE,GAAI,QAAS,IAClCy7E,EAAGnvE,EAAGtM,EAAE,GAAK,EAAG,QAAS,CAC3BV,EAAI,QACEgN,CAAAA,CAAAA,IAEJyE,EAAI6sE,EAAGtxE,EAAGtM,EAAE,GAAK,MACjB,GAAK+Q,GAAK,WAAaA,EAAG,CAC5BzR,EAAI,QACEgN,CAAAA,CAAAA,GAEJwO,GAAK/J,EAAI7O,EAAE,GAAK,EAAG,CACrB5C,EAAI,QACEgN,CAAAA,CAERhN,EAAE,GAAKyR,EACP/Q,EAAE,IAAM,GACRkC,EAAE,IAAM,GAEV5C,EAAI,KAEF,GAAKA,EAAG,OAAOA,EAAAA,IACnByR,EAAI,EAAIwyF,EAAE3iB,GAAG,GACRpuE,EAAIA,EAAE,KAAQ,CAGjBlG,EAAG,KACGnJ,EAAImJ,EACRpK,EAAI/C,EACJG,EAAIkT,EAAAA,IAEFvB,EAAIvO,EACJsO,EAAI0qB,EACJ0sD,EATJpoF,EAAI,CAAC,OAMCwB,EALNtB,EAAI,CAACA,IASD,GAAK,EACH,EAAIZ,EAAE,GAAIA,EAAI,MACb,KACEm8E,EAAGt4E,EAAGjB,EAAE,GAAI,QAAS,IACpB,IAAM07E,EAAGz6E,EAAGjB,EAAE,GAAK,GAAI,CACzB5C,EAAI,QACEgN,CAAAA,CAAAA,GAEJ,GAAKhN,EAAE,GAAI,CACbA,EAAI,QACEgN,CAAAA,CAAAA,IAEJo+E,EAAI9M,EAAGz6E,EAAGjB,EAAE,GAAK,GACjBi5E,EAAI,EAAIwM,EAAGxkF,EAAGjB,EAAE,GAAK,OAErB,YAAci5E,GADlBh4E,EAAI,EAAIwkF,EAAGxkF,EAAGjB,EAAE,GAAK,KACI,CACvB5C,EAAI,QACEgN,CAAAA,CAAAA,MAEA87E,IAAMA,EAAE,GAAKsC,GAAAA,MACbz5E,IAAMA,EAAE,GAAKkqE,GAAAA,MACbnqE,IAAMA,EAAE,GAAK7N,GACrBjB,EAAE,IAAM,GACR5C,EAAE,IAAM,GACRkC,EAAE,GAAK,EAETlC,EAAI,MAGRY,EAAIA,EAAE,GACNF,EAAIA,EAAE,GACF,GAAKV,EAAG,OAAOA,EAAAA,GACnB4C,KAAW,EAAJlC,IACF+Q,GAAK7Q,EAAG,OAAO,WACZqB,IAAMA,EAAE,MAAY,GAAJvB,IAAAA,MAChByB,IAAMA,EAAE,GAAKS,GAAAA,MACbkB,IAAMA,EAAE,GAAK,GACrB3B,EAAIiB,EAAE,GACN1C,EAAI07B,EAAE,GACFx7B,GAAKgC,GAAK,MAAQupD,EAAG,CACvBnsD,EAAI,WAGF,EAAIkT,EAAG,CACTlT,EAAI,WAGDyR,GAAK7Q,IAAQ6Q,IAAM7Q,IAAMu7E,EAAGnvE,EAAGnN,EAAE,GAAI,QAAU,CAClDqT,EAAI,CAACA,GACL+wF,EAAEpI,GAAK,CAACoI,EAAEpI,IACVoI,EAAEjjG,EAAI,CAACijG,EAAEjjG,GACTijG,EAAExkB,GAAK,CAACwkB,EAAExkB,IACVzyE,EAAG,CACDo+E,EAAIp+E,EACJhN,EAAIH,EACJ4R,EAAIyB,EAAAA,IACAhR,EAAI+hG,EAAE3iB,GACR3vE,EAAIsyF,EAAEpI,GACNnqF,EAAIuyF,EAAEjjG,EACN8nF,EAAImb,EAAExkB,GACR5D,EAAI,GACJj4E,EAAE,MAAQwnF,GACVxnF,EAAE,MAAQ6N,GACV5N,EAAI7D,EAAE,OACF6R,EAAIJ,EAAE,OACV7N,EAAE,MAAQ+N,GACV/N,EAAE,MAAQklF,GACVn3E,EAAE,GAAK,KACPD,EAAE,GAAK,KACFo3E,EAAE,GAAK,IAAO,IACjB9oF,EAAE,GAAK6D,EACP4N,EAAE,GAAKI,EACH,EAAIA,EAAG,CACT7R,EAAI,QACEgN,CAAAA,CAAAA,IAEJgxF,EAAI1f,EAAG8M,EAAGvnF,EAAI,MACd,WAAam6F,EAAG,CAClBh+F,EAAI,QACEgN,CAAAA,CAAAA,IAEJkxF,EAAK,EAAIF,EAAI,GAAM,KACvBniB,GAAKqiB,EACD,EAAIh8F,GAAK25E,EAAI35E,EAAG,CAClBlC,EAAI,QACEgN,CAAAA,CAAAA,IAEHmvE,EAAGiP,EAAGvnF,EAAG,UAAYs4E,EAAGiP,EAAGvnF,EAAG,QAAS,CAC1C7D,EAAI,QACEgN,CAAAA,CAAAA,GAEJ6E,EAAE,GAAKqsF,EAAG,CACZl+F,EAAI,QACEgN,CAAAA,CAERmvE,EAAGiP,EAAGvnF,EAAG,UAAa8N,EAAE,GAAKy5E,EAAK15E,EAAE,GAAK7N,EAAI,EAAKilF,EAAE,GAAKkV,GACzDn6F,GAAKq6F,EACLrsF,GAAKqsF,CAAAA,CAAAA,CAAAA,GAGThrF,EAAIA,EAAE,GACN+wF,EAAEpI,GAAKoI,EAAEpI,GAAG,GACZoI,EAAEjjG,EAAIijG,EAAEjjG,EAAE,GACVijG,EAAExkB,GAAKwkB,EAAExkB,GAAG,GACR,GAAKz/E,EAAG,MAEdkT,EAAI,CAACA,GACL+wF,EAAEzlB,GAAK,CAACylB,EAAEzlB,IACVylB,EAAEnI,GAAK,CAACmI,EAAEnI,IACV9uF,EAAG,GACC9K,EAAI8K,EACLhN,EAAIH,EACJ4R,EAAIyB,EACJvB,EAAIsyF,EAAE3iB,GAAG,GACT5vE,EAAIuyF,EAAEzlB,GACNsK,EAAImb,EAAEnI,GACN1Q,EAAIprF,EAAE,GACN6D,GAAKs4E,EAAGj6E,EAAGkpF,EAAG,QACdvP,GAAKM,EAAGj6E,EAAGkpF,EAAG,QACfxnF,EAAE,MAAQ1B,GACV0B,EAAE,MAAQ6N,GACV7N,EAAE,MAAQ8N,GACV9N,EAAE,MAAQklF,GACV,EAAIr3E,EAAE,GAENzR,EAAI,MACD,IACC6D,GAAKg4E,EAAG,IACV35E,EAAIo8E,EAAGp8E,EAAGkpF,EAAI,GACV,IAAMz5E,GAAKzP,EAAIyP,EAAI,GAAI,CACzB3R,EAAI,QACEgN,CAAAA,CAAAA,GAEJwO,GAAKtZ,EAAIuP,EAAE,GAAK,EAAG,CACrBzR,EAAI,QACEgN,CAAAA,CAER0E,EAAE,GAAKxP,EACPlC,EAAE,IAAM,EACRyR,EAAE,IAAM,EACRq3E,EAAE,GAAKjN,CAAAA,MAENiN,EAAE,GAAK,GAAKr3E,EAAE,IAAM,IAAMvP,EAAEkpF,EAAI,MAAQlpF,EAAEkpF,EAAI,IAAM,GAClD15E,EAAE,GAAKD,EAAE,GACdzR,EAAI,KAENkT,EAAIA,EAAE,GACN+wF,EAAEzlB,GAAKylB,EAAEzlB,GAAG,GACZylB,EAAEnI,GAAKmI,EAAEnI,GAAG,GACZj8F,EAAIA,EAAE,GACF,GAAKG,EAAG,SACR,WAAaikG,EAAEzlB,GAAI,OAAO,WACtB16E,GAAKlB,IAAMkB,EAAE,GAAKmgG,EAAEnI,GAAK,EAAI,GACrC35F,EAAI,CAACA,GACLzB,EAAI,CAACA,GACDujG,EAAEnI,GAAI,IACJ,EAAI5oF,EAAG,CACTlT,EAAI,QAGN8D,EAAI3B,EACJqZ,EAAI9a,EACJkC,EAAIX,EAAAA,MACI+K,GAAK,EAAIkG,EACZlG,EAAI,EACL,GAAKkG,GAAK,IAAMlG,EAAEnN,EAAI,MAAQmN,EAAEnN,EAAI,IAAM,IACxC4R,EAAI,CAAC,GACNvP,EAAI,CAAC,GACLyP,EAAI,CAAC,GAENovE,EADCrvE,EAAI,IAAI8tE,EACHxyE,EAAGnN,EAAGqT,GACZkkG,GAAG1lG,EAAGD,EAAGvP,EAAGyP,IACP,MAAQ7N,IAAMA,EAAE,GAAK2N,EAAE,IACxB,MAAQ+J,IAAMA,EAAE,GAAKtZ,EAAE,IACvB,MAAQU,IAAMA,EAAE,GAAK+O,EAAE,IACtB3E,EAAI,GACJA,EAAI,GACRA,EAAI,MACJ,IACD,GAAKkG,EAAG,CACVlT,EAAI,QAGN8D,EAAIpD,EAAAA,MACIsM,GAAK,GAAKkG,IAAMy4E,GAAG3+E,EAAGnN,EAAI,EAAGqT,EAAI,GACpClG,EAAI,GACHwO,EAAIxO,EAAEnN,EAAI,GAAMmN,EAAEnN,EAAI,IAAM,EAAMmN,EAAEnN,EAAI,IAAM,GAC/C+C,EAAmC,OAA7BoK,EAAEnN,EAAI,IAAM,EAAKmN,EAAEnN,EAAI,IAC7BmN,EAAmC,OAA7BA,EAAEnN,EAAI,IAAM,EAAKmN,EAAEnN,EAAI,IAC1B,EAAJ2b,GACA,GAAMA,GAAK,EAAK,MACbA,GAAK,EAAK,IACbA,GAAK,GAAKyoF,EAAEzlB,KACX57E,IACAoK,EACIA,EAAI,GACJ7K,IAAMA,EAAE,GAAKS,GAAIkB,IAAMA,EAAE,GAAKkJ,GAAKA,EAAI,QAE7CA,EAAG,OAAO,KACf7K,EAAIA,EAAE,GACNzB,EAAIA,EAAE,GACFE,IAAMwC,EAAE,IAAMjB,GAAKi6B,EAAE,IAAM17B,GAAI,OAAO,QAClCyrD,IACJA,EAAE,GAAK83C,EACR93C,EAAEn1B,OAASn3B,EAAIssD,EAAEtoD,EAClBD,EAAE,WAAa/D,EAAIssD,EAAEtoD,GACrBD,EAAEuoD,EAAEn1B,QAAUm1B,EAAEiwB,GAAKlpE,IAAAA,KAAAA,CAAAA,OAGlB,GAAKlT,GAAM,GAAKA,GAAKY,GAAK,MAAQurD,GACpC,MAAQlqD,IAAMA,EAAE,IAAM,MAAQgiG,EAAEpI,IAAM,EAAIoI,EAAEpI,GAAGp9F,QAChD,MAAQmB,IAAMA,EAAE,GAAKuC,GACrB,MAAQT,IAAMA,EAAE,GAAKhB,GACrB,GACAV,CAAAA,CAAAA,SAEGspF,GAAGt8E,EAAGnN,EAAGqT,GAAAA,IACZtT,EAAIC,EAAE4D,MACR/B,EAAI7B,EAAE6D,OACNzB,EAAI,EACJE,EAAI,EACJ2B,EAAIlE,EACJusD,EAAIzqD,EAAAA,GACN7B,EAAEq+E,GAAK,MAAQlxE,GAAK,EAAIA,EAAEkxE,GAExBr+E,EAAEq+E,KACAp6E,EAAIkJ,EAAEwiC,GACP2c,EAAIn/C,EAAEwgF,GACNvrF,EAAI+K,EAAEpK,EACNT,EAAI6K,EAAEg6C,EACP,GAAK9zC,IAAOjR,IAAM,EAAKE,IAAM,GAC7B,EAAIF,GAAK,EAAIE,GAAK,GAAK2B,GAAK,GAAKqoD,GAAKlqD,EAAI6B,EAAIlE,GAAKuC,EAAIgqD,EAAIzqD,GAE3D,OAAO,KACT7B,EAAE+C,EAAIX,EACNpC,EAAEmnD,EAAI7kD,EACNtC,EAAE89E,GAAK17E,EAAI6B,EACXjE,EAAEu5D,EAAIj3D,EAAIgqD,EACVtsD,EAAEiS,EAAIhO,EACNjE,EAAEo1B,EAAIk3B,EACNtsD,EAAEm8E,GAAK,MAAQhvE,GAAK,EAAIA,EAAEgvE,GACtBn8E,EAAEm8E,GAAI,KAGHzsC,EAAGzrC,EAAGqoD,EAFXj5C,EAAI,CAAClG,EAAE00E,IACPz/E,EAAI,CAAC+K,EAAEy0E,KACc,OAAO,EAC5B5hF,EAAE6hF,GAAKxuE,EAAE,GACTrT,EAAE4hF,GAAKx/E,EAAE,UAEXpC,EAAEsiF,GAAK,MAAQn1E,GAAKA,EAAEm1E,GACtBtiF,EAAEmnF,GAAK,MAAQh6E,IAAMA,EAAEy9R,GACvB5qS,EAAEm8E,KAAQn8E,EAAEsiF,GAAKtiF,EAAE6hF,GAAM,EAAI9hF,EAAK,GAAKC,EAAE4hF,GAAM,EAAI//E,EAAK,EAAK7B,EAAEmnF,GAAK,GAC7D,WAEAuK,GAAGvkF,GAAAA,GACN,MAAQA,EAAG,OAAO,KAClB,GAAKA,EAAEqkG,EAAG,KACRxxG,EAAImN,EAAE/K,EAAE0oS,KACZ9qS,EAAEqhF,KAAOl0E,EAAEtJ,OAAS,GAAK7D,EAAE8R,EAC3B9R,EAAE8R,GAAK9R,EAAE8R,CAAAA,MAER9R,EAAImN,EAAE/K,EAAE2/E,GACN50E,EAAIA,EAAEtJ,OACN7D,EAAEooG,IAAMj7F,EAAI,GAAKnN,EAAEs8E,GACnBt8E,EAAEs8E,IAAMt8E,EAAEs8E,GACVt8E,EAAEmoG,IAAOh7F,EAAI,GAAM,GAAKnN,EAAEwmF,GAC1BxmF,EAAEwmF,IAAMxmF,EAAEwmF,GACVxmF,EAAEqoE,IAAOl7D,EAAI,GAAM,GAAKnN,EAAE4mF,GAC1B5mF,EAAE4mF,IAAM5mF,EAAE4mF,GACX,MAAQ5mF,EAAEgS,IAAOhS,EAAE07F,IAAMvuF,EAAI,GAAKnN,EAAEgiF,GAAMhiF,EAAEgiF,IAAMhiF,EAAEgiF,IAAAA,OACjD,WAEA6oN,GAAG19R,EAAGnN,EAAGqT,EAAGtT,GAAAA,GACf,MAAQA,GAAK,GAAKoN,GAAK,GAAKnN,EAAG,OAAO,KACtC,MAAQqT,EAAG,IACTA,EAAEgrE,GAAI,KACJx8E,EAAIwR,EAAEs8B,GACRvtC,EAAIiR,EAAEs6E,GACNrrF,GAAW,EAAP+Q,EAAEtQ,EACNkB,GAAW,EAAPoP,EAAE8zC,EAAAA,GACJ,EAAI7kD,GAAK,EAAI2B,GAAK,GAAKpC,GAAK,GAAKO,GAAKE,EAAIT,EAAIsL,GAAKlJ,EAAI7B,EAAIpC,EAC7D,OAAO,EACTmN,EAAItL,EACJ7B,EAAIoC,CAAAA,CAAAA,GAEFiR,EAAE8oE,GAAI,KAGHzsC,EAAGviC,EAAGnN,EAFX6B,EAAI,CAACwR,EAAEwuE,IACPz/E,EAAI,CAACiR,EAAEuuE,KACc,OAAO,EAC5Bz0E,EAAItL,EAAE,GACN7B,EAAIoC,EAAE,IAGVrC,EAAE6D,MAAQuJ,EACVpN,EAAE8D,OAAS7D,EACXmN,EAAG,KACGm/C,EAAIvsD,EAAE6D,MACNL,EAAIxD,EAAE8D,OAAAA,GACVsJ,EAAIpN,EAAEyxG,EACF,GAAKllD,GAAK,GAAK/oD,KAAO4J,GAAKixE,IAAM,GAAKjxE,GAAIA,EAAI,MAC7C,IACC,GAAKpN,EAAE6zF,IAAM,MAAQ7zF,EAAE6vF,GAAI,CACzBttF,EAAKF,EAAIP,EAAI7B,EAAI,MAEnBu8B,GADAt4B,EAAIqoD,EAAIqlC,GAAGxkF,IACH5J,EAAAA,GAAAA,GACL4J,IAEF/K,GAAMmB,EAAI,GAAK,GADdvD,GAAKssD,EAAI,GAAK,GAEhB,IAAMn/C,IAAgB7K,GAATT,EAAIyqD,GAAa/oD,IAE5B,OADJA,EAAI4xB,EAAEoH,EAAI,EAAIn6B,EAAIE,IACH,CACb6K,EAAI,QACEA,CAAAA,CAERpN,EAAE6vF,GAAKrsF,EAAAA,GACF4J,IACCm/C,EAAIvsD,EAAEqC,EAAE0oS,MACP1pN,GAAK79E,EACP+oD,EAAE+0B,GAAK,EACP/0B,EAAEx6C,EAAI7N,EACNqoD,EAAE3iC,KAAO4S,KACR+vB,EAAIvsD,EAAEqC,EAAE2/E,IACP1/E,EAAIkB,EACN+oD,EAAE87C,EAAI,EACN97C,EAAEgwB,GAAKr4E,EACPqoD,EAAEulC,GAAKt1D,EACP+vB,EAAElqD,EAAImB,EACN+oD,EAAE67C,EAAI,EAAI5rE,EACV+vB,EAAEk6B,GAAKxmF,EACPssD,EAAEu+O,GAAKzoS,EACPkqD,EAAE+vB,GAAK94E,EACP+oD,EAAE+b,EAAI,EAAI9rC,EAAIn6B,EACdkqD,EAAEs6B,GAAK5mF,EACPssD,EAAEk+O,GAAKpoS,EACR,IAAM+K,IAAOm/C,EAAEt6C,EAAIzO,EAAK+oD,EAAEovC,EAAI,EAAIn/D,EAAI,EAAIn6B,GACzCkqD,EAAEqgC,GAAKrqF,EACPgqD,EAAE01B,GAAKngF,EAAAA,CAAAA,GAEd7B,EAAI,EACJ6B,EAAI9B,EAAEyxG,EACNpvG,EAAIrC,EAAE6D,MACNtB,EAAIvC,EAAE8D,OACFhC,GAAKu8E,IAAM,GAAKv8E,EAAAA,GACd,GAAKA,EACNsL,EAAIpN,EAAEqC,EAAE0oS,KAEN9qS,IADAiE,EAAIiB,KAAKkjB,IAAIjb,EAAE2E,KACLxP,EAAI,GAAKF,GAAK+K,EAAEwc,KAC1B3pB,GAAKiE,GAAK7B,EAAIuvF,GAAG9vF,GACjB7B,GAAK,MAAQmN,EAAEi0E,OACf,CACHj0E,EAAIpN,EAAEqC,EAAE2/E,GACR99E,GAAK7B,EAAI,GAAK,EACdm6B,GAAKj6B,EAAI,GAAK,EACdgqD,EAAIpnD,KAAKkjB,IAAIjb,EAAEmvE,IACX/4E,EAAI2B,KAAKkjB,IAAIjb,EAAEq5E,IAAAA,IACjBzlF,EAAImE,KAAKkjB,IAAIjb,EAAEy5E,IACfjrE,EAAIzW,KAAKkjB,IAAIjb,EAAE60E,IACfoiB,EAAIzoF,GAAKrZ,EAAI,GAAKF,EACpBpC,GAAKssD,GAAKhqD,EAAI,GAAKF,GAAK+K,EAAE0kF,GAC1B7xF,GAAKuD,GAAKg5B,EAAI,GAAKt4B,GAAKkJ,EAAE09R,GAE1B7qS,GADAA,GAAKe,GAAKw7B,EAAI,GAAKt4B,GAAKkJ,EAAEq9R,IACjBl+O,GAAKlqD,EAAMmB,GAAKU,EAAMlD,GAAKkD,EACpCjE,GAAK,MAAQmN,EAAE9K,EACfrC,GAAK,MAAQmN,EAAE/K,EACfpC,GAAK,MAAQmN,EAAEkvE,GAAAA,IACTx6E,IAAO7B,GAAK2b,GAAKvZ,EAAKpC,GAAKokG,GAAKj3F,EAAEw/E,GAAM3sF,GAAK,MAAQmN,EAAE6E,EAAAA,MAE5DhS,EAAI,EACTmN,EAAInN,EAAI,EAAI,UAGZ,GAAKmN,GAAAA,MACDkG,GAAKA,EAAE06E,KAAO5gF,EAAIukF,GAAG3xF,IADVoN,CAAAA,CAAAA,IAIjBg5E,GAAK,GACP2L,GAAK,CACH,EACA,EACA,EACA,EACA,GACA,GACA,GACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,QACA,QACA,QACA,QACA,UAEF44M,GAAK,GACLpoN,GAAK,GACL+F,GAAK,EACL6J,GAAK,CACH,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAEJihB,EAAE,aAAc,iBAChByyB,EAAK8lK,WAAa,kBACT,YAET9lK,EAAK+lK,WAAa,SAASx+R,GAAAA,OAClBA,CAAAA,EAETy4H,EAAKgmK,WAAa,SAASz+R,EAAGnN,EAAGqT,GAAAA,OACxBrT,EAAEqT,EAAI,IAEfuyH,EAAKimK,WAAa,SAAS1+R,EAAGnN,EAAGqT,GAAAA,OACxBrT,EAAEqT,EAAI,IAEfuyH,EAAKkmK,WAAa,SAAS3+R,EAAGnN,EAAGqT,GAAAA,OACxBrT,EAAEqT,EAAI,IAEfuyH,EAAKmmK,WAAa,SAAS5+R,EAAGnN,EAAGqT,GAAAA,OACxB4oE,EAAGA,EAAG9uE,EAAGnN,EAAEqT,EAAI,IAAKrT,EAAEqT,EAAI,KAEnCuyH,EAAKomK,WAAa,SAAS7+R,EAAGnN,EAAGqT,GAAAA,OACxB4oE,EAAG9uE,EAAGnN,EAAEqT,EAAI,KAErBuyH,EAAKqmK,WAAa,SAAS9+R,EAAGnN,EAAGqT,GAAAA,OACxB4oE,EA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K9tB,GACLi2C,GAAIvc,GACJ57E,GAAI07E,GACJvP,GAAK,EACLkC,GAAK,EACLmK,GAAK,EACL3K,GAAK,EACL9B,GAAK,EACL4I,GAAK,EACLgvB,GAAK,EACLrvB,GAAK,EACLC,GAAK,EACL7H,GAAK,EACL8H,GAAK,GACL6P,GAAK,CAAC,EAAG,EAAG,GACZH,GAAK,CAAC,EAAG,EAAG,IACZ3K,GAAK,CAAC,IAAK,IAAK,IAAK,IAAK,IAC1B+K,GAAK,CAAC,EAAG,EAAG,EAAG,EAAG,GAClBL,GAAK,CAAC,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,IACpEZ,GAAK,CACH,GACA,EACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,EACA,IACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,GACA,GACA,IACA,EACA,IACA,IACA,GACA,GACA,GACA,GACA,IACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,IACA,GACA,GACA,EACA,IACA,IACA,GACA,GACA,GACA,GACA,GACA,IACA,GACA,IACA,IACA,GACA,GACA,GACA,IACA,IACA,GACA,IACA,GACA,IACA,IACA,GACA,KAEFW,GAAK,CACH,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MAEFN,GAAK,EACLvO,GAAK,CACH,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAEFC,GAAK,CACH,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA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IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,OAGvD,CACE,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,OAGvD,CACE,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,OAGvD,CACE,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,QAIzD+zM,GAAK,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAEtDxvN,GAAI,GACJ1T,GAAI,GACJqU,GAAK,GAkBL8Z,GAAK,EACLlL,GAAK,EACL9O,GAAK,GAKLr7E,GAAI,GACN28E,GAAG,sBAAuBU,GAAI,GAC9BV,GAAG,sBAAuBgK,GAAI,GAC9BhK,GAAG,uBAAwB2R,GAAI,GAC/B3R,GAAG,uBAAwBuS,GAAI,GAC/BvS,GAAG,uBAAwBqS,GAAI,GAC/BrS,GAAG,2BAA4BoS,GAAI,GACnCpS,GAAG,yBAA0B8R,GAAI,OAC7B6N,GAAKmoC,EAAKunK,oBACZxvM,GAAKioC,EAAKwnK,oBACV5+M,GAAKo3C,EAAKynK,qBACV5+M,GAAKm3C,EAAK0nK,qBACV3+M,GAAKi3C,EAAK2nK,qBACV3+M,GAAKg3C,EAAK4nK,yBACV5vM,GAAKgoC,EAAK6nK,uBACVltN,GAAK,GACLpC,GAAK,GAAMoC,GAAK,EAChBjD,IAAM,IACNuJ,GAAK,IACLgI,GAAK,EACLgP,IAAM,KAAOhP,IAAM,EACnBhF,GAAK,EACL6K,GAAKv/D,EAAE,KACP+/D,GAAK//D,EAAE,KACP8/D,GAAK9/D,EAAE,KACP6/D,GAAK7/D,EAAE,KACPggE,GAAKhgE,EAAE0xD,GAAKvJ,IACZ+X,GAAKlgE,EAAE0xD,GAAKvJ,IACdX,GAAG,cAAe6B,GAAI,GACtB7B,GAAG,cAAemL,GAAI,GACtBnL,GAAG,eAAgB8S,GAAI,GACvB9S,GAAG,eAAgB0T,GAAI,GACvB1T,GAAG,eAAgBwT,GAAI,GACvBxT,GAAG,mBAAoBuT,GAAI,GAC3BvT,GAAG,iBAAkBiT,GAAI,OACrBsB,GAAK,CACL,EACA,EACA,EACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAEFxQ,GAAK,CAAC,EAAG,EAAG,GACZod,GAAK,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACvC5F,GAAK,OACFw1M,eAAiB,SAASvgS,EAAGnN,EAAGqT,EAAGtT,EAAG8B,GAAAA,IACrCO,EAAIk+E,GACJh+E,EAAI,IAAIs6F,GACV34F,EAAI,IAAIyiF,GACVpkF,EAAE65F,GAAKl4F,EACPA,EAAEutG,EAAIpvG,EACN6B,EAAEL,MAAQ,CAACK,EAAEL,OACbK,EAAEJ,OAAS,CAACI,EAAEJ,QAAAA,IACVyoD,EAAIroD,EAAEL,MACNL,EAAIU,EAAEJ,OACR04B,EAAI,IAAIs3D,GAAAA,GACN,MAAQt3D,GAAK,MAAQpvB,EAAG,IAAIpM,EAAI,OAElCgD,EAAE,MAAQw4B,GACPx7B,EAAIuvF,GAAGnjF,EAAGnN,EAAGqT,EAAGkpB,EAAE34B,MAAO24B,EAAE14B,OAAQ04B,EAAEi3D,GAAIj3D,EAAEk3D,GAAIl3D,EAAE5V,OAAQ,YACzD5lB,EACAurD,EAAI,GACJ,MAAQA,IAAMA,EAAE,GAAK/vB,EAAE34B,MAAM,IAC9B,MAAQL,IAAMA,EAAE,GAAKg5B,EAAE14B,OAAO,IAC7ByoD,EAAI,GACLA,EAAG,CACLroD,EAAEL,MAAQK,EAAEL,MAAM,GAClBK,EAAEJ,OAASI,EAAEJ,OAAO,SACZ9D,IAAMA,EAAE,GAAKkE,EAAEL,OAAAA,MACf/B,IAAMA,EAAE,GAAKoC,EAAEJ,QACvB7D,EAAG,IACDD,EAAI,IAAIi/E,IACRn9E,EAAI,IAAI0sF,IACN9lF,KAAO0E,EACTtL,EAAEmC,EAAIhE,EACN6B,EAAE06E,GAAKlpE,EACPxR,EAAEwsF,GAAK,EACPruF,EAAI,CAAC,GACL+D,EAAE,MAAQlC,IAET,IADDsL,EAAImjF,GAAGzuF,EAAE4G,KAAM5G,EAAEmC,EAAGnC,EAAE06E,GAAI,KAAM,KAAM,KAAMv8E,EAAG,KAAM6B,KAC1C,GAAKsL,IAAMnN,EAAE,KAAOmN,EAAI,GAE/B,IADJnN,EAAImN,GACQ,IACVpJ,EAAE,MAAQzB,GACVvC,EAAE0I,KAAO5G,EAAE4G,KACX1I,EAAEiE,EAAInC,EAAEmC,EAAInC,EAAEs1B,OACdp3B,EAAEw8E,GAAK16E,EAAE06E,GAAK16E,EAAEs1B,OAChBp3B,EAAEurS,IAAMvhN,GACRhqF,EAAE2oF,GAAKa,GACPxpF,EAAE2vC,GAAKs6C,GACPjqF,EAAE68E,GAAKt6E,EACHT,EAAEo6F,GAAI,IAEJ,OADJ9uF,EAAIiqG,MACW,CACb90G,EAAI,QACEtC,CAAAA,CAAAA,GAAAA,SA3mHNmN,EAAGnN,GAAAA,IACTqT,EAAI,CAAC,GACPtT,EAAI,CAAC,GACL8B,EAAI,CAAC,GACPsL,EAAG,OAAS,IACN,MAAQA,EAAG,OAAO,KAClB,MAAQnN,EAAG,OAAQmN,EAAEA,EAAI,EAAI,KACjCA,EAAE5J,EAAIvD,EACNmN,EAAEA,EAAI,EACN+zE,EAAG/zE,EAAEovB,EAAGv8B,EAAEyI,KAAMzI,EAAEgE,EAAGhE,EAAEu8E,KAClBg7B,GAAGpqG,EAAEovB,EAAGlpB,EAAGtT,EAAG8B,GAAI,CACrBsL,EAAEA,EAAI,QACAA,CAAAA,CAAAA,GAERA,EAAEg5E,GAAKmF,GACPtrF,EAAE4D,MAAQyP,EAAE,GACZrT,EAAE6D,OAAS9D,EAAE,IACRklF,GAAG5xE,EAAE,GAAItT,EAAE,GAAI,EAAGoN,EAAG,MAAO,MAAMA,EAAAA,OAChC,SAETpJ,EAAE,GAAKoJ,EAAEA,GACF,EAslHSnN,CAEDmN,EAAGpN,GAAI,IAEPA,EAAI,IADTC,EAAI6qS,GAAG9qS,EAAE6D,MAAO7D,EAAE8D,OAAQvB,EAAE08E,GAAI18E,EAAE65F,KAChB,CAChB9oF,EAAG,CACDtT,EAAIoN,EACJpN,EAAG,OAAS,IACN,MAAQA,EAAG,CACbA,EAAI,QACEsT,CAAAA,CAAAA,GAERtP,EAAE,MAAQhE,EAAEe,EAAEoqF,IACdnnF,EAAE,MAAQhE,EAAEe,EAAE4/E,IACd38E,EAAE,EAAIhE,EAAEe,EAAEonF,IAEVnkF,EAAE,OADFsP,EAAItT,EAAEwD,IAGNQ,EAAE,OADFlC,EAAIwR,EAAEupE,KAEF,GAAK78E,EAAEomF,GAAI,IACbpmF,EAAEm8E,GAAKr6E,EAAEs6F,GACTp8F,EAAEolF,GAAKtjF,EAAEsjF,GACTphF,EAAE,MAAQhE,EAAEm8E,KACPuN,GAAG5nF,EAAEm9E,GAAI3rE,EAAGysE,IAAK,CACpB//E,EAAEoN,EAAI,QACApN,CAAAA,CAAAA,IAEH0rF,GAAG1rF,EAAGsT,EAAEzP,OAAQ,MAAM7D,EAAAA,GACvBsT,EAAE8oE,GAAI,MAAMp8E,EAAAA,IACfsT,EAAE8oE,IAAMyF,GAAG7hF,EAAEm8E,GAAGs1B,KAAOtzB,KAAAA,GACnBn+E,EAAEm8E,GAAGs1B,IACPqvD,MAAM,iCACP,MAAQ9gK,EAAEm8E,GAAG95E,EAAE2/E,GAAG/vE,GAAKksE,MAEvBn+E,EAAE2nF,IACF,EAAI3nF,EAAEe,EAAE88E,IACR,MAAQ79E,EAAEe,EAAEklF,GAAGmtB,IACd7qB,EAAGvoF,EAAEe,EAAEklF,GAAIjmF,EAAEe,EAAEy/E,GAAGC,IACnB,CACAzgF,EAAEoN,EAAI,QACApN,CAAAA,CAERA,EAAEomF,GAAK,MAEJe,GAAGnnF,EAAGA,EAAEo1B,EAAGp1B,EAAEo+E,GAAIp+E,EAAEsT,EAAGtT,EAAErB,EAAG2U,EAAEkmD,EAAGk8B,IAAK,MAAM11F,EAChD8B,EAAE2pF,GAAKzrF,EAAE++E,GACT/+E,EAAI,QACEsT,CAAAA,CAERtP,EAAE,GAAKhE,EAAEoN,GACTpN,EAAI,EAENA,GAAKA,CAAAA,CAEPA,IAAMC,EAAImN,EAAEA,EAAAA,MACPnN,EAAImN,EAAEA,CAAAA,KACR,IAED,OADJA,EAAI,IAAIkqF,IACO,CACb/0F,EAAI,QACEtC,CAAAA,CAAAA,GAERmN,EAAEoxE,GAAK18E,EAAEm6F,GACT7uF,EAAEhM,EAAIU,EAAEV,EACRgM,EAAEi9E,GAAKvoF,EAAE+9E,GACLmM,GAAG5+E,EAAGpN,IAAAA,GACsC,IAAxCC,EAAI6qS,GAAG9qS,EAAE6D,MAAO7D,EAAE8D,OAAQvB,EAAE08E,GAAI18E,EAAE65F,KAAe,IACrDhvF,EAAE+wE,GAAK,EACP7qE,EAAI/Q,EAAE08E,GAENj7E,EAAE,OADFlC,EAAIsL,IAEA,MAAQkG,EAAG,IAGT,GADJi5C,EAAI,GADJA,EAAIj5C,EAAEi/E,IACM,EAAI,IAAMhmC,EAAI,IAAO,IAAMA,EAAK,KACjC,KACJ/oD,EAAIg5B,EAAI,EAAG,EAAIh5B,IAAKA,EAErB,IADDxC,EAAIc,EAAE4gF,GAAGl/E,IACDymF,KACJjpF,EAAEy7E,GAAMlwB,EAAIwxC,GAAG,EAAI/8F,EAAEipF,GAAK,EAAIjpF,EAAEipF,KAAQ,GAC1CztD,GAAKx7B,EAAEy7E,GACZjgD,IAAMskI,MAAM,sBAAwBh/J,EAAE26E,GAAK,GAE7C36E,EAAE28E,GAAKnrE,EAAE6+E,GAAAA,IACHrwF,EAAE28E,GAAM38E,EAAE28E,GAAK,IAAO,EAAI38E,EAAE28E,KAAO38E,EAAE28E,GAAK,GAElDwZ,GAAG7qF,EAAGpN,KAAOC,EAAImN,EAAEA,EAAAA,OAEhBnN,EAAImN,EAAEA,CAAAA,CAAAA,GAEVnN,GAAK,MAAQsC,EAAE08E,IAAM18E,EAAE08E,GAAG+O,KAAO/tF,EAAI0xF,GAAGpvF,EAAE65F,IAAAA,CAEjD75F,EAAItC,CAAAA,CAENoC,EAAI,GAAKE,EAAI,KAAO,GAAKF,EAAI6B,EAAE7B,EAAE0oS,KAAK1pN,GAAKn9E,EAAE7B,EAAE2/E,GAAG1/E,CAAAA,MAC7CD,EAAI,YACJA,CAAAA,EAAAA,IAELuvF,GAAK,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,aAuBvCg8M,EAAOllS,EAAMmlS,GAAAA,IAAAA,IAChBjoS,EAAM,GACDjH,EAAI,EAAGA,EAAI,EAAGA,IAAKiH,GAAOrF,OAAO8F,aAAaqC,EAAKmlS,MAAAA,OACrDjoS,CAAAA,CAAAA,SAOAkoS,EAAQplS,EAAMmlS,GAAAA,OAEjBnlS,EAAKmlS,EAAW,IAAM,EACrBnlS,EAAKmlS,EAAW,IAAM,EACtBnlS,EAAKmlS,EAAW,IAAM,MACzB,WAIKE,EAAQrlS,EAAMmlS,GAAAA,OAEjBnlS,EAAKmlS,EAAW,IAAM,EACrBnlS,EAAKmlS,EAAW,IAAM,EACtBnlS,EAAKmlS,EAAW,IAAM,GACtBnlS,EAAKmlS,EAAW,IAAM,MACzB,MA9CAnD,EAAAA,IAgJA5mS,EAAS,CAAC,GACVD,EAAQ,CAAC,GACTkmM,EAAS,GACTikG,EAAc,IAAItD,EAElBv8P,EAAWyuO,EACXqxB,EAAAA,SApGoB31Q,EAAK41Q,GAAAA,IACvBD,EAAa,CAAC,EACdtvS,EAAI,EACJwvS,GAAAA,EACAC,EAAa,EACbC,EAAe,KACnBJ,EAAUhR,OAAa,aAzCTv0R,EAAMmlS,EAAUjoS,EAAKgkB,GAAAA,IAC9B,IAAIjrB,EAAI,EAAGA,EAyCiB,EAzCPA,IAAAA,GACpB+J,EAAKmlS,EAAWlvS,IAwCG,OAxCOmH,WAAWnH,GAAI,OAAO,UAC/C,EAuCI25B,EAAK41Q,GAAqB,CAAJ,IA9BlBxlS,EAAMmlS,EA+BV,IACKE,EAAQz1Q,EADxB41Q,GAAW,GAEXA,GAAW,EAEJA,EAAU51Q,EAAIz5B,QAAQ,KACvByvS,EAASV,EAAOt1Q,EAAK41Q,GAGrBK,EAAeR,EAAQz1Q,EAF3B41Q,GAAW,GAGXA,GAAW,MACPM,EAAsBD,GAA+B,EAAfA,GAAAA,OAElCD,GAAAA,IACD,WACA,gBACQL,EAAUhR,OAAWt+R,KAC9BsvS,EAAUhR,OAAWt+R,GAAK,CAAC,IACzB0tD,EAAM4hP,EAAUhR,OAAWt+R,IAG5BuvS,QAAcC,EAAcE,EAAeH,EAAU,EACxD7hP,EAAGoiP,SAAeL,EAAaG,EAAe,EAG9C5vS,IACIwvS,IACFA,GAAAA,EACAC,EAAa,EACbC,EAAe,aAGd,QACChiP,EAAO4hP,EAAUjmL,OAAa,CAAC,GACX0mL,cAAoBp2Q,EAAI41Q,GAAAA,IAC5CS,EAAWT,EAAU,EACL7hP,EAAGuiP,aAAmB,EAAId,EAAQx1Q,EAAKq2Q,GAC3DA,GAAY,EACStiP,EAAGwiP,cACtB,EAAIf,EAAQx1Q,EAAKq2Q,GACnBA,GAAY,YAET,OACHR,GAAAA,EACAC,EAAaI,EAAsB,EACnCH,EAAeH,EAAU,YAGtB,QACC7hP,EAAM4hP,EAAUjmL,QACF8mL,QAAcf,EAAQz1Q,EAAK41Q,GAC7CS,EAAWT,EAAU,EAEH7hP,EAAGuzO,YAnFZl3R,EAmFqC4vB,IAnF/Bu1Q,EAmFoCc,GAlFjC,IAAM,EAAMjmS,EAAKmlS,EAAW,IAAM,EAmFpDc,GAAY,YAET,WAQDzmO,EACE7b,GAAAA,EAAO4hP,EAAUhR,OAAWt+R,GAAK,CAAC,GACnCowS,SAA0B,EAAIjB,EAAQx1Q,EAAK41Q,GAC9CA,GAAW,EACX7hP,EAAG2iP,SAA0B,EAAIlB,EAAQx1Q,EAAK41Q,GAC9CA,GAAW,EACX7hP,EAAGxoD,MAAoB,EAAIiqS,EAAQx1Q,EAAK41Q,GACxCA,GAAW,EACX7hP,EAAGvoD,OAAsB,EAAIgqS,EAAQx1Q,EAAK41Q,GAC1CA,GAAW,EACX7hP,EAAGl6B,SAA0B27Q,EAAQx1Q,EAAK41Q,GAC1CA,GAAW,EACXhmO,EAAO5vC,EAAI41Q,KACX7hP,EAAG4iP,QAA+B,EAAP/mO,EAC3B7b,EAAG6iP,MAAqBhnO,GAAQ,EAAK,EAI3B,QAAVomO,IAAkBJ,GAAWM,EAAAA,CAAAA,OAE5BP,CAAAA,CAAAA,CASLA,CAA4B9/P,EAAU,GAC1C8/P,EAAU9/P,SAAeA,EACzB8/P,EAAUkB,YAAAA,EACVlB,EAAUmB,SAAAA,EAAc,IAEpBpnL,EAASimL,EAAUjmL,OAAaimL,EAAUjmL,OAAa,KACvDi1K,EAASgR,EAAUhR,OAAagR,EAAUhR,OAAa,QAEvDj1K,EAAQ,CACVA,EAAMqnL,aAAmBrnL,EAAM43K,WAC/B97R,EAAS,CAACkkH,EAAM6mL,eAChBhrS,EAAQ,CAACmkH,EAAM4mL,cAAA,IAGV,IAAIvsS,EAAI,EAAGA,EAAI46R,EAAOp+R,QACC,GAAtBo+R,EAAO56R,GAAP6sS,MAD6B7sS,KAAAA,CAAAA,IAOjCspL,EAAQsxG,EAAO,GACf9/Q,EAAO6wR,EAAYL,eACrBx/P,EACAw9I,EAAKuiH,QACLviH,EAAK8iH,SACL5qS,EACAC,GAEF6nL,EAAKxuK,KAAWA,EAChBwuK,EAAK2jH,SAAezrS,EAAM,GAC1B8nL,EAAK4jH,UAAgBzrS,EAAO,OAEvB,IAAInF,EAAI,EAAGA,EAAIkF,EAAM,GAAKC,EAAO,GAAK,EAAGnF,IAC5CorM,EAAOprM,GAAKwe,EAAKxe,GAAAA,OAAAA,KAGdkF,MAAQA,EAAAA,KACRC,OAASA,EAAAA,KACT4E,KAAOqhM,EACLtpM,IAAAA,ECjyKT,SAAUsxQ,GAAAA,IAgDJy9B,EAAgB,SAASroS,EAAO+f,EAAYuoR,EAAgB/tB,GAAAA,IAC1Dz9B,EAAQ,EACRyrD,EAAgBC,EAAAA,OAEZjuB,GAAAA,KACD3P,EAASsO,kBAAkBE,KAC9Bt8B,EAAQ,EACRyrD,EAAgBE,EAAAA,MAAAA,KAGb79B,EAASsO,kBAAkBG,OAC9Bv8B,EAAQ,EACRyrD,EAAgBG,EAAAA,MAAAA,KAGb99B,EAASsO,kBAAkBI,KAC9Bx8B,EAAQ,EACRyrD,EAAgBI,EAQlBJ,IAEExxD,EAAMqG,GANVp9O,EAAQ4oS,EACN5oS,EACA+f,EACAuoR,EACAC,GAEwB,CAAEzrD,MAAOA,IAAAA,OAC5B8tB,EAASiK,aAAa6B,0BAA0B3/B,EAAAA,EAGrD6xD,EAAuB,SACzB5oS,EACA+f,EACAuoR,EACAC,GAAAA,IAAAA,IAKEx+Q,EACA8+Q,EACA54Q,EALEy8L,EAAQ1sN,EAAMtI,OAASqoB,EACzBllB,EAAS,IAAIwE,WAAWW,EAAMtI,OAASg1N,GACvCo8E,EAAiBC,IAKVvxS,EAAI,EAAGA,EAAIk1N,EAAOl1N,GAAK,EAAG,IACjCy4B,EAASz4B,EAAIuoB,EACbgK,EAAO/pB,EAAM62O,SAAS5mN,EAAQA,EAASlQ,GAEnCwoR,EACF1tS,EAAOsuD,IAAIo/O,EAAcx+Q,EAAMu+Q,EAAgBO,GAAW54Q,EAASz4B,OAC9D,SAIIyoD,EAHLpgD,EAAMipS,EAAepxS,OACvBwyB,EAAU,GAEA+1B,EAAIpgD,EAAKogD,GAAK,EACxB/1B,EAAQ+1B,GAAK6oP,EAAe7oP,GAAGl2B,EAAMu+Q,EAAgBO,GAAAA,IAGnDG,EAAMC,EAAsB/+Q,EAAQ3tB,UAExC1B,EAAOsuD,IAAIj/B,EAAQ8+Q,GAAM/4Q,EAASz4B,EAAAA,CAGpCqxS,EAAW9+Q,CAAAA,CAAAA,OAGNlvB,CAAAA,EAGLquS,EAAa,SAASn/Q,GAAAA,IAKpBlvB,EAAS/C,MAAMG,MAAM,GAAI8xB,GAAAA,OAC7BlvB,EAAOgV,QAAQ,GAERhV,CAAAA,EAGL4tS,EAAY,SAAS1+Q,EAAMu+Q,GAAAA,IAG3B9rS,EAFE3B,EAAS,GACXgF,EAAMkqB,EAAKryB,OAGbmD,EAAO,GAAK,MAEP,IAAIrD,EAAI,EAAGA,EAAIqI,EAAKrI,GAAK,EAC5BgF,EAAOutB,EAAKvyB,EAAI8wS,IAAmB,EACnCztS,EAAOrD,EAAI,GAAMuyB,EAAKvyB,GAAKgF,EAAO,IAAU,WAGvC3B,CAAAA,EAGL2tS,EAAW,SAASz+Q,EAAMu+Q,EAAgBO,GAAAA,IAG1CM,EAFEtuS,EAAS,GACXgF,EAAMkqB,EAAKryB,OAGbmD,EAAO,GAAK,MAEP,IAAIrD,EAAI,EAAGA,EAAIqI,EAAKrI,GAAK,EAC5B2xS,EAAMN,GAAYA,EAASrxS,IAAO,EAClCqD,EAAOrD,EAAI,GAAMuyB,EAAKvyB,GAAK2xS,EAAK,IAAU,WAGrCtuS,CAAAA,EAGL6tS,EAAgB,SAAS3+Q,EAAMu+Q,EAAgBO,GAAAA,IAG/CrsS,EACA2sS,EAHEtuS,EAAS,GACXgF,EAAMkqB,EAAKryB,OAIbmD,EAAO,GAAK,MAEP,IAAIrD,EAAI,EAAGA,EAAIqI,EAAKrI,GAAK,EAC5BgF,EAAOutB,EAAKvyB,EAAI8wS,IAAmB,EACnCa,EAAMN,GAAYA,EAASrxS,IAAO,EAClCqD,EAAOrD,EAAI,GAAMuyB,EAAKvyB,GAAK,KAAWgF,EAAO2sS,IAAQ,GAAM,WAGtDtuS,CAAAA,EAGL8tS,EAAc,SAAS5+Q,EAAMu+Q,EAAgBO,GAAAA,IAG7CrsS,EACA2sS,EACAC,EACAxS,EALE/7R,EAAS,GACXgF,EAAMkqB,EAAKryB,OAMbmD,EAAO,GAAK,MAEP,IAAIrD,EAAI,EAAGA,EAAIqI,EAAKrI,GAAK,EAC5BgF,EAAOutB,EAAKvyB,EAAI8wS,IAAmB,EACnCa,EAAMN,GAAYA,EAASrxS,IAAO,EAClC4xS,EAAUP,GAAYA,EAASrxS,EAAI8wS,IAAoB,EACvD1R,EAAQyS,EAAe7sS,EAAM2sS,EAAIC,GACjCvuS,EAAOrD,EAAI,GAAMuyB,EAAKvyB,GAAKo/R,EAAQ,IAAU,WAGxC/7R,CAAAA,EAGLwuS,EAAiB,SAAS7sS,EAAM2sS,EAAIC,GAAAA,GAClC5sS,IAAS2sS,GAAMA,IAAOC,EAAAA,OACjB5sS,EAAAA,IAEL8sS,EAAQtrS,KAAKkjB,IAAIioR,EAAKC,GACxBG,EAAMvrS,KAAKkjB,IAAI1kB,EAAO4sS,GACtBI,EAAUxrS,KAAKkjB,IAAI1kB,EAAO2sS,EAAKC,EAASA,GAAAA,OACnCE,GAASC,GAAOD,GAASE,EAC5BhtS,EACA+sS,GAAOC,EACPL,EACAC,CAAAA,EAGFL,EAAmB,iBACd,CAACG,EAAYT,EAAWD,EAAUE,EAAeC,EAAAA,EAGtDM,EAAwB,SAASQ,GAAAA,IAC/BhjL,EAAMgjL,EAAOtiS,KAAI,SAAS/M,GAAAA,OACrBA,EAAM0nB,QAAO,SAASy/P,EAAIC,GAAAA,OACxBD,EAAKvjR,KAAKkjB,IAAIsgQ,EAAAA,GACpB,aAEE/6J,EAAI3gH,QAAQ9H,KAAK0S,IAAIzY,MAAM,KAAMwuH,GAAAA,EA8B1CmkJ,EAAS8+B,WAAa,SAASj0B,EAAWz2Q,EAAO0iD,EAAO64N,GAAAA,IAGlDvE,EAEFM,EACAxyP,EAEA6lR,EACAnqH,EACAoqH,EACAC,EACAjnG,EACA/iM,EACAiqS,EACA/X,EACAgY,EACAC,EACAxyS,EACAqC,EAfAsa,EAAS7a,KAAKgG,OAAOo5Q,aAGrBnC,EAAmB,MAcjBj9Q,KAAKu7Q,aAAamF,cAAcvE,KAClCA,EAAY,IAAIp2Q,WAAWo2Q,IAEzBn8Q,KAAKu7Q,aAAaiB,kBAAkBL,GAAY,IAElDA,GADA3xP,EAAQ,IAAIkxP,GAAIS,IACEsc,QAClBzb,EAAmBxyP,EAAM2yN,KACzBu/B,EAAalyP,EAAMkyP,WACnBx2F,EAAS17J,EAAM07J,QAS0B,IAArC,CAAC,EAAG,GAAG15K,QAAQge,EAAMnE,WAAmB,IAIvB,IAAfmE,EAAM2yN,KAAY,CAOpB52O,GANA+iM,EAC0B,IAAxB9+K,EAAMwyQ,eACF,IAAIr1R,YAAY6iB,EAAMyyQ,eAAez2R,QACb,IAAxBgkB,EAAMwyQ,eACN,IAAIv1R,YAAY+iB,EAAMyyQ,eAAez2R,QACrC,IAAIT,WAAWykB,EAAMyyQ,eAAez2R,SAC7BpI,OACbq6R,EAAU,IAAI1yR,WAAWQ,EAAMikB,EAAM07J,QACrCsqH,EAAY,IAAIzqS,WAAWQ,GAAAA,IAIvBoqS,EAHAC,EAAQpmR,EAAMwyQ,eAAiBxyQ,EAAM2yN,KAAAA,IACzCj/O,EAAI,EACJqC,EAAI,EAGGrC,EAAIqI,EAAKrI,IAAK,KACnBwyS,EAAQpnG,EAAOprM,GACfyyS,EAAM,EAECA,EAAMC,GACXnY,EAAQl4R,KAAQmwS,IAAUC,EAAO,IACjCA,GAAYnmR,EAAM2yN,KAGpBqzD,EAAUtyS,GAAMwyS,IAAUC,EAAO,QAOlB,KAAfnmR,EAAM2yN,KAAa,CAErB52O,GADA+iM,EAAS,IAAI3hM,YAAY6iB,EAAMyyQ,eAAez2R,SACjCpI,OACbq6R,EAAU,IAAI1yR,WACZQ,GAAO,GAAKikB,EAAMwyQ,gBAAkBxyQ,EAAM07J,QAE5CsqH,EAAY,IAAIzqS,WAAWQ,GAAO,GAAKikB,EAAMwyQ,iBAC7CyT,EAAYjmR,EAAM07J,OAAS,EAC3BhoL,EAAI,EACJqC,EAAI,UACAoM,EAAI,EAEDzO,EAAIqI,GACTmqS,EAAQpnG,EAAOprM,KAEfu6R,EAAQl4R,KAAQmwS,IAAU,EAAK,IAE3BD,IACFhY,EAAQl4R,KAAQmwS,IAAU,GAAM,IAEhCA,EAAQpnG,EAAOprM,KACfu6R,EAAQl4R,KAAQmwS,IAAU,EAAK,KAGjCF,EAAU7jS,KAAQ+jS,IAAU,GAAM,IAEpC1zB,EAAmB,EAGLiE,IAtTH3P,EAASsO,kBAAkBC,MAuTtC1D,EAAY4yB,EACVtW,EACAjuQ,EAAMpnB,MAAQonB,EAAM07J,OACpB17J,EAAM07J,OACN+6F,GAEFsvB,EAAQxB,EAAcyB,EAAWhmR,EAAMpnB,MAAO,EAAG69Q,KAEjD9E,EAAYsc,EACZ8X,EAAQC,EACR31R,OAAAA,EAAS7M,CAAAA,GAOW,IAApBwc,EAAMnE,YACRq2P,EAAa18Q,KAAK28Q,aAAaC,QAC/B0zB,EAAM9lR,EAAMqyP,QAERryP,EAAM0yP,aAAa2f,SAAS,KAC1ByD,EAAQ91Q,EAAM0yP,aAAa2f,QAC3BniN,EAAQ,MACZx8E,EAAI,EACJqI,EAAM+5R,EAAMliS,OAELF,EAAIqI,IAAOrI,EAChBw8E,GAAS4lN,EAAMpiS,GAAAA,IAGjBw8E,GAAgB,OAMFn0E,EAAM,IAA2B,IAAtB+5R,EAAM9zR,QAAQ,GACrC6jS,EAAO,CAAC/P,EAAM9zR,QAAQ,SAMjB,GAAIkuE,IAAUn0E,EAAK,KACxB+iM,EAAS9+K,EAAMyyQ,eACfuT,EAAY,IAAIzqS,WAAWujM,EAAOlrM,QAClCF,EAAI,EACJqI,EAAM+iM,EAAOlrM,OAENF,EAAIqI,EAAKrI,IACdsyS,EAAUtyS,GAAKoiS,EAAMh3F,EAAOprM,IAG9BqyS,EAAQxB,EAAcyB,EAAWhmR,EAAMpnB,MAAO,QAKhD+5Q,EA7L0B,SAAS8D,GAAAA,IACrC9D,EAAAA,OACI8D,GAAAA,KACD3P,EAASsO,kBAAkBE,KAC9B3C,EAAY,cAGT7L,EAASsO,kBAAkBG,OAC9B5C,EAAY,cAGT7L,EAASsO,kBAAkBI,KAC9B7C,EAAY,iBAIZA,EAAY,UAGTA,CAAAA,CAnByB,CA6Lc8D,GAAAA,OAExCpmQ,IAAW7a,KAAKgG,OAAOo5Q,eACzBnC,EAAmB,cAAgBE,EAAY,KAEjDF,GACE,WACA/2F,EACA,sBACA82F,EACA,aACAxyP,EAAMpnB,OAGNpD,KAAKu7Q,aAAamF,cAAcvE,IAChCn8Q,KAAKu7Q,aAAaiB,kBAAkBL,MAEpCA,EAAYn8Q,KAAKu7Q,aAAa6B,0BAA0BjB,KAIvDo0B,GAASvwS,KAAKu7Q,aAAamF,cAAc6vB,IAC1CvwS,KAAKu7Q,aAAaiB,kBAAkB+zB,MAEpCA,EAAQvwS,KAAKu7Q,aAAa6B,0BAA0BmzB,IAG/C,CACLnoP,MAAOA,EACPngD,KAAMk0Q,EACNz2Q,MAAOA,EACPmV,OAAQA,EACRoiQ,iBAAkBA,EAClBC,aAAcmzB,EACdxzB,QAASyzB,EACTxzB,MAAOyzB,EACPpzB,UAAWA,EACX/5Q,MAAOonB,EAAMpnB,MACbC,OAAQmnB,EAAMnnB,OACd25Q,iBAAkBA,EAClBN,WAAYA,EAAAA,CAAAA,CAAAA,CApcpB,CAwcG7qB,GAAMY,KCzdT,SAAU6e,GAGRA,EAASu/B,cAAgB,SAAS10B,EAAWz2Q,EAAO0iD,EAAO64N,GAAAA,IACrDhhH,EAAS,IAAIy+H,GAAUviB,GACvB/4Q,EAAQ68J,EAAO78J,MACjBC,EAAS48J,EAAO58J,OAEdimM,EAAS,GAEbrpC,EAAO6gI,uBAAuB,EAAGx3F,GAAAA,IAC7BwnG,EAAe,CACjB7oS,KAAMqhM,EACNlmM,MAAOA,EACPC,OAAQA,GAIN4E,EADU,IAAI85R,GAVT,KAWU2G,OAAOoI,EAXjB,YAYFx/B,EAAS8pB,YAAYn8R,KAAKe,KAAMiI,EAAMvC,EAAO0iD,EAAO64N,EAAAA,EAG7D3P,EAASy/B,cAAgBz/B,EAASu/B,aAAAA,CAtBpC,CAuBGh/C,GAAMY,KHjBT82C,GAAWzqS,UAAU+qS,YAAc,mBAC5BmH,SAAWhxS,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QAC1CA,KAAO,OACP6vO,SAAWlxS,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QAC1CA,KAAO,OACP1qC,OAAS32B,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QACxCA,KAAO,OACP8vO,WAAanxS,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QAC5CA,KAAO,OACPj+D,MAAQpD,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QACvCA,KAAO,OACPh+D,OAASrD,KAAKypS,MAAM2H,SAASpxS,KAAKqhE,KAAK,QACvCA,KAAO,OACPgwO,OAASrxS,KAAKypS,MAAM6H,UAAUtxS,KAAKqhE,KAAK,QACxCA,KAAO,OACPkwO,MAAQvxS,KAAKypS,MAAM6H,UAAUtxS,KAAKqhE,KAAK,QACvCA,KAAO,OACPuqI,SAAW5rM,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QAC1CA,KAAO,OACPmwO,QAAUxxS,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QACzCA,KAAO,OACP4jB,GAAKjlF,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QACpCA,KAAO,OACPowO,GAAKzxS,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QACpCA,KAAO,OACP6kH,OAASlmL,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QACxCA,KAAO,OACPqwO,gBAAkB1xS,KAAKypS,MAAMwH,UAAUjxS,KAAKqhE,KAAK,QACjDA,KAAO,EAEO,KAAfrhE,KAAKuxS,OAAgBvxS,KAAKwpS,gBAAAA,KACvB+H,MAAQ,IAEXvxS,KAAKuxS,MAAQ,GAAI,KACfhrS,EAAsB,IAAhBvG,KAAKkmL,OAAe,GAAKlmL,KAAKuxS,MAAQvxS,KAAKkmL,OAAAA,KAChD22F,QAAU,IAAIr+Q,MAAM+H,GAAAA,IACpB,IAAIrI,EAAI,EAAGA,EAAIqI,EAAKrI,IAAK,KACxB0d,EAAO5b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACvCxlD,EAAQ7b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACxCvlD,EAAM9b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACtCuwO,EAAO5xS,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,QACtCw7M,QAAQ3+Q,GAAK,CAChB4d,IAAKA,EACLD,MAAOA,EACPD,KAAMA,EACNg2R,KAAMA,EAAAA,CAAAA,CAIR5xS,KAAKqD,OAAS,SACXA,SAAW,OACXsmS,WAAY,IAIrBJ,GAAWzqS,UAAUgrS,SAAW,gBACzBzoO,IAAMrhE,KAAK22B,OAAAA,IAAAA,IAEVk7Q,EAAO,MAAQ7xS,KAAKuxS,MACpBhrS,EAAMvG,KAAKoD,MAAQpD,KAAKqD,OAAS,OAChC4E,KAAO,IAAIlC,WAAWQ,GAAAA,KAEtBsrS,IAE6BxwS,CADlC,MAAOA,GACP4/C,GAAQ4oC,IAAI,oBAAsBxoF,EAAAA,CAAAA,EAItCkoS,GAAWzqS,UAAUgzS,KAAO,eAGtBjwS,EAFAkwS,EAAOrtS,KAAKwD,KAAKlI,KAAKoD,MAAQ,GAC9Bs9F,EAAOqxM,EAAO,MAEblwS,EAAI7B,KAAKqD,OAAS,EAAGxB,GAAK,EAAGA,IAAK,SACjC4uB,EAAOzwB,KAAK2pS,UAAY9nS,EAAI7B,KAAKqD,OAAS,EAAIxB,EACzC0B,EAAI,EAAGA,EAAIwuS,EAAMxuS,IAAAA,IAAAA,IACpB/D,EAAIQ,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACpC/0B,EAAW7b,EAAOzwB,KAAKoD,MAAQ,EAAQ,EAAJG,EAAQ,EACtCrF,EAAI,EAAGA,EAAI,GACV,EAAJqF,EAAQrF,EAAI8B,KAAKoD,MADAlF,IAAK,KAEpB+d,EAAMjc,KAAK68Q,QAASr9Q,GAAM,EAAItB,EAAM,QACnC+J,KAAKqkC,EAAe,EAAJpuC,GAAS+d,EAAIL,KAAAA,KAC7B3T,KAAKqkC,EAAe,EAAJpuC,EAAQ,GAAK+d,EAAIJ,MAAAA,KACjC5T,KAAKqkC,EAAe,EAAJpuC,EAAQ,GAAK+d,EAAIH,IAAAA,KACjC7T,KAAKqkC,EAAe,EAAJpuC,EAAQ,GAAK,IAO3B,IAATwiG,IAAAA,KACGr/B,KAAO,EAAIq/B,EAAAA,CAAAA,EAKtB6oM,GAAWzqS,UAAUkzS,KAAO,mBACtBD,EAAOrtS,KAAKwD,KAAKlI,KAAKoD,MAAQ,GAC9Bs9F,EAAOqxM,EAAO,EACTlwS,EAAI7B,KAAKqD,OAAS,EAAGxB,GAAK,EAAGA,IAAK,SACrC4uB,EAAOzwB,KAAK2pS,UAAY9nS,EAAI7B,KAAKqD,OAAS,EAAIxB,EACzC0B,EAAI,EAAGA,EAAIwuS,EAAMxuS,IAAK,KACzB/D,EAAIQ,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACpC/0B,EAAW7b,EAAOzwB,KAAKoD,MAAQ,EAAQ,EAAJG,EAAQ,EAE3C+J,EAAS9N,GAAK,EACdspC,EAAY,GAAJtpC,EAERyc,EAAMjc,KAAK68Q,QAAQvvQ,GAAAA,GAAAA,KAClBrF,KAAKqkC,GAAYrwB,EAAIL,KAAAA,KACrB3T,KAAKqkC,EAAW,GAAKrwB,EAAIJ,MAAAA,KACzB5T,KAAKqkC,EAAW,GAAKrwB,EAAIH,IAAAA,KACzB7T,KAAKqkC,EAAW,GAAK,IAElB,EAAJ/oC,EAAQ,GAAKvD,KAAKoD,MAAO,MAE7B6Y,EAAMjc,KAAK68Q,QAAQ/zO,GAAAA,KACd7gC,KAAKqkC,EAAW,GAAKrwB,EAAIL,KAAAA,KACzB3T,KAAKqkC,EAAW,EAAI,GAAKrwB,EAAIJ,MAAAA,KAC7B5T,KAAKqkC,EAAW,EAAI,GAAKrwB,EAAIH,IAAAA,KAC7B7T,KAAKqkC,EAAW,EAAI,GAAK,IAGnB,IAATo0D,IAAAA,KACGr/B,KAAO,EAAIq/B,EAAAA,CAAAA,EAKtB6oM,GAAWzqS,UAAUmzS,KAAO,mBACtBvxM,EAAO1gG,KAAKoD,MAAQ,EACfvB,EAAI7B,KAAKqD,OAAS,EAAGxB,GAAK,EAAGA,IAAK,SACrC4uB,EAAOzwB,KAAK2pS,UAAY9nS,EAAI7B,KAAKqD,OAAS,EAAIxB,EACzC0B,EAAI,EAAGA,EAAIvD,KAAKoD,MAAOG,IAAK,KAC/B/D,EAAIQ,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACpC/0B,EAAW7b,EAAOzwB,KAAKoD,MAAQ,EAAQ,EAAJG,EAAAA,GACnC/D,EAAIQ,KAAK68Q,QAAQz+Q,OAAQ,KACvB6d,EAAMjc,KAAK68Q,QAAQr9Q,GAAAA,KAClByI,KAAKqkC,GAAYrwB,EAAIH,IAAAA,KACrB7T,KAAKqkC,EAAW,GAAKrwB,EAAIJ,MAAAA,KACzB5T,KAAKqkC,EAAW,GAAKrwB,EAAIL,KAAAA,KACzB3T,KAAKqkC,EAAW,GAAK,cAErBrkC,KAAKqkC,GAAY,SACjBrkC,KAAKqkC,EAAW,GAAK,SACrBrkC,KAAKqkC,EAAW,GAAK,SACrBrkC,KAAKqkC,EAAW,GAAK,IAGjB,IAATo0D,IAAAA,KACGr/B,KAAO,EAAIq/B,EAAAA,CAAAA,EAKtB6oM,GAAWzqS,UAAUozS,MAAQ,mBACvBC,EAAQnyS,KAAKoD,MAAQ,EAEvBgvS,EADWn/R,SAAS,QAAS,GAEtBpR,EAAI7B,KAAKqD,OAAS,EAAGxB,GAAK,EAAGA,IAAK,SACrC4uB,EAAOzwB,KAAK2pS,UAAY9nS,EAAI7B,KAAKqD,OAAS,EAAIxB,EACzC0B,EAAI,EAAGA,EAAIvD,KAAKoD,MAAOG,IAAK,KAC/BklF,EAAIzoF,KAAKypS,MAAM6H,UAAUtxS,KAAKqhE,KAAK,QAClCA,KAAO,MACRzlD,GAAU6sE,EAAI2pN,GAAQA,EAAQ,IAAO,EACrCv2R,GAAY4sE,GAAK,EAAK2pN,GAAQA,EAAQ,IAAO,EAC7Ct2R,GAAU2sE,GAAK,GAAM2pN,GAAQA,EAAQ,IAAO,EAC5Cz2R,EAAQ8sE,GAAK,GAAK,IAAO,EAEzBn8C,EAAW7b,EAAOzwB,KAAKoD,MAAQ,EAAQ,EAAJG,EAAAA,KAClC0E,KAAKqkC,GAAYxwB,EAAAA,KACjB7T,KAAKqkC,EAAW,GAAKzwB,EAAAA,KACrB5T,KAAKqkC,EAAW,GAAK1wB,EAAAA,KACrB3T,KAAKqkC,EAAW,GAAK3wB,CAAAA,CAAAA,KAGvB0lD,KAAO8wO,CAAAA,CAAAA,EAIhB5I,GAAWzqS,UAAUuzS,MAAQ,mBACvBF,EAAQnyS,KAAKoD,MAAQ,EAEvBgvS,EADWn/R,SAAS,QAAS,GAG7Bq/R,EADYr/R,SAAS,SAAU,GAExBpR,EAAI7B,KAAKqD,OAAS,EAAGxB,GAAK,EAAGA,IAAK,SACrC4uB,EAAOzwB,KAAK2pS,UAAY9nS,EAAI7B,KAAKqD,OAAS,EAAIxB,EACzC0B,EAAI,EAAGA,EAAIvD,KAAKoD,MAAOG,IAAK,KAC/BklF,EAAIzoF,KAAKypS,MAAM6H,UAAUtxS,KAAKqhE,KAAK,QAClCA,KAAO,MAERzlD,GAAU6sE,EAAI2pN,GAAQA,EAAQ,IAAO,EACrCv2R,GAAY4sE,GAAK,EAAK6pN,GAAQA,EAAQ,IAAO,EAC7Cx2R,GAAS2sE,GAAK,IAAM2pN,EAAQ,IAAO,EAEnC9lQ,EAAW7b,EAAOzwB,KAAKoD,MAAQ,EAAQ,EAAJG,EAAAA,KAClC0E,KAAKqkC,GAAYxwB,EAAAA,KACjB7T,KAAKqkC,EAAW,GAAKzwB,EAAAA,KACrB5T,KAAKqkC,EAAW,GAAK1wB,EAAAA,KACrB3T,KAAKqkC,EAAW,GATT,SAYT+0B,KAAO8wO,CAAAA,CAAAA,EAIhB5I,GAAWzqS,UAAUyzS,MAAQ,eAEtB,IAAI1wS,EAAI7B,KAAKqD,OAAS,EAAGxB,GAAK,EAAGA,IAAK,SACrC4uB,EAAOzwB,KAAK2pS,UAAY9nS,EAAI7B,KAAKqD,OAAS,EAAIxB,EACzC0B,EAAI,EAAGA,EAAIvD,KAAKoD,MAAOG,IAAK,KAC/BqY,EAAO5b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACvCxlD,EAAQ7b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACxCvlD,EAAM9b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACtC/0B,EAAW7b,EAAOzwB,KAAKoD,MAAQ,EAAQ,EAAJG,EAAAA,KAClC0E,KAAKqkC,GAAYxwB,EAAAA,KACjB7T,KAAKqkC,EAAW,GAAKzwB,EAAAA,KACrB5T,KAAKqkC,EAAW,GAAK1wB,EAAAA,KACrB3T,KAAKqkC,EAAW,GAAK,SAGvB+0B,KAAOrhE,KAAKoD,MAAQ,IAQ7BmmS,GAAWzqS,UAAU0zS,MAAQ,eAEtB,IAAI3wS,EAAI7B,KAAKqD,OAAS,EAAGxB,GAAK,EAAGA,IAAAA,IAAAA,IAChC4uB,EAAOzwB,KAAK2pS,UAAY9nS,EAAI7B,KAAKqD,OAAS,EAAIxB,EACzC0B,EAAI,EAAGA,EAAIvD,KAAKoD,MAAOG,IAAK,KAC/BqY,EAAO5b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACvCxlD,EAAQ7b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACxCvlD,EAAM9b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACtC1lD,EAAQ3b,KAAKypS,MAAMkI,SAAS3xS,KAAKqhE,OAAO,GACxC/0B,EAAW7b,EAAOzwB,KAAKoD,MAAQ,EAAQ,EAAJG,EAAAA,KAClC0E,KAAKqkC,GAAYxwB,EAAAA,KACjB7T,KAAKqkC,EAAW,GAAKzwB,EAAAA,KACrB5T,KAAKqkC,EAAW,GAAK1wB,EAAAA,KACrB3T,KAAKqkC,EAAW,GAAK3wB,CAAAA,CAAAA,EAOhC4tR,GAAWzqS,UAAUiiN,QAAU,kBACtB/gN,KAAKiI,IAAAA,EIlQd,SAAUqpQ,GAGRA,EAASmhC,WAAa,SAASt2B,EAAWz2Q,EAAO0iD,EAAO64N,GAAAA,IAClDhhH,EAAS,IAAIspI,GAAWptB,GAAAA,GACxB/4Q,EAAQ68J,EAAO78J,MACjBC,EAAS48J,EAAO58J,OAIdytS,EAAe,CACjB7oS,KAHWg4J,EAAO8gD,UAIlB39M,MAAOA,EACPC,OAAQA,GAIN4E,EADU,IAAI85R,GATT,KAUU2G,OAAOoI,EAVjB,YAWFx/B,EAAS8pB,YAAYn8R,KAAKe,KAAMiI,EAAMvC,EAAO0iD,EAAO64N,EAAAA,CAAAA,CAlB/D,CAoBGpvB,GAAMY,KHkyKTs3C,GAAYjrS,UAAUiiN,QAAU,kBACvB/gN,KAAKiI,IAAAA,EItzKd,SAAUqpQ,GAGRA,EAASohC,YAAc,SAASv2B,EAAWz2Q,EAAO0iD,EAAO64N,GAAAA,IACnDhhH,EAAS,IAAI8pI,GAAY5tB,GAAAA,GACzB/4Q,EAAQ68J,EAAO78J,MACjBC,EAAS48J,EAAO58J,OAIdytS,EAAe,CACjB7oS,KAHWg4J,EAAO8gD,UAIlB39M,MAAOA,EACPC,OAAQA,GAIN4E,EADU,IAAI85R,GATT,KAUU2G,OAAOoI,EAVjB,YAWFx/B,EAAS8pB,YAAYn8R,KAAKe,KAAMiI,EAAMvC,EAAO0iD,EAAO64N,EAAAA,CAAAA,CAlB/D,CAoBGpvB,GAAMY,KC0CNZ,GAAMY,IApCEkgD,YAAc,SAASx2B,EAAWz2Q,EAAO0iD,GAAAA,IAAAA,IAG5CwqP,EAAcz2B,EAAUl0Q,KACxB7J,EAASw0S,EAAYx0S,OAErBy0S,EAAS,IAAI9sS,WAAY3H,EAAS,EAAK,GACvC00S,EAAW,IAAI/sS,WAAW3H,EAAS,GACnC20S,EAAW,EACXC,EAAa,EAER90S,EAAI,EAAGA,EAAIE,EAAQF,GAAK,EAAG,KAC9Bid,EAAIy3R,EAAY10S,GAChB4D,EAAI8wS,EAAY10S,EAAI,GACpBsB,EAAIozS,EAAY10S,EAAI,GACpByd,EAAQi3R,EAAY10S,EAAI,GAC5B20S,EAAOE,KAAc53R,EACrB03R,EAAOE,KAAcjxS,EACrB+wS,EAAOE,KAAcvzS,EACrBszS,EAASE,KAAgBr3R,CAAAA,CAAAA,IAGvBs3R,EAAUjzS,KAAKu7Q,aAAa6B,0BAA0By1B,GAAAA,MAGnD,CACLl3R,MAHc3b,KAAKu7Q,aAAa6B,0BAA0B01B,GAI1D7qS,KAAMgrS,EACNvtS,MAAOA,EACP0iD,MAAOA,EACPs0N,WAAY,YACZM,iBAAkB,EAClB55Q,MAAO+4Q,EAAU/4Q,MACjBC,OAAQ84Q,EAAU94Q,OAAAA,EC6KrBwuP,GAAMY,IA5NEygD,YAAc,SAASC,GAAAA,YAAAA,IA0M1BnzS,KAAKqrJ,SAAS+nJ,mBAAAA,KACX/nJ,SAAS+nJ,iBAAmB,CAAC,EAAD,KAC5B/nJ,SAAS+nJ,iBAAiBC,cAAe,YAzMhC,CACd15M,GAAI,YACJ25M,GAAI,WACJxwS,GAAI,4BACK,2BACA,2BACA,yBACA,wBACA,0BACA,0BACA,2BACA,yBACA,2BACA,wBACA,yBACA,gCACA,yBACA,2BACA,0BACA,iBACT6uH,GAAI,YACJ4hL,GAAI,WACJ/6N,GAAI,WACJg7N,IAAK,WACLC,GAAI,cACJC,GAAI,SACJ/+M,GAAI,aACJi9B,GAAI,UACJ6uH,GAAI,UACJ37J,GAAI,SACJ0Z,GAAI,YACJm1M,GAAI,UACJj4N,GAAI,UACJynB,GAAI,WACJtO,GAAI,UACJwR,GAAI,kBACK,8BACA,wBACA,8BACA,mBACT6hL,GAAI,UACJzrC,GAAI,WACJm3D,GAAI,OACJ3uN,GAAI,WACJ4uN,GAAI,QACJl4N,GAAI,SACJ68B,GAAI,2BACK,kBACTs7L,GAAI,kBACK,8BACA,2BACA,2BACA,4BACA,4BACA,gCACA,gCACA,iCACA,sCACA,mCACA,kCACA,qBACTC,GAAI,YACJjyD,GAAI,WACJkyD,GAAI,WACJrlM,GAAI,SACJ7F,GAAI,UACJmrM,GAAI,4BACK,2BACA,0BACA,0BACA,8BACA,0BACA,uBACTC,GAAI,UACJC,IAAK,WACL3mN,GAAI,yBACK,iBACTjmD,GAAI,WACJ20C,GAAI,WACJ4Y,GAAI,4BACK,2BACA,2BACA,iCACA,8BACA,uBACT+iB,GAAI,QACJu8L,GAAI,WACJC,GAAI,UACJn/M,GAAI,SACJoU,GAAI,QACJgrM,GAAI,YACJ7uN,GAAI,YACJ7kC,GAAI,aACJ2zP,GAAI,YACJ7J,GAAI,QACJngK,GAAI,6BACK,wBACTtuD,GAAI,WACJu4N,GAAI,UACJC,GAAI,WACJ/gM,GAAI,SACJghM,GAAI,QACJC,GAAI,UACJllQ,IAAK,UACLmlQ,GAAI,iBACK,+BACA,uBACTz4N,GAAI,QACJynK,GAAI,UACJ/E,GAAI,aACJr9J,GAAI,gBACJsyB,GAAI,kBACJn4C,GAAI,QACJ28C,GAAI,YACJu8L,GAAI,UACJlrM,GAAI,QACJmrM,GAAI,UACJC,GAAI,YACJC,GAAI,SACJ51M,GAAI,SACJ1J,GAAI,SACJu/M,GAAI,YACJvzN,GAAI,qBACJwzN,GAAI,sBACJzrN,GAAI,UACJ0rN,GAAI,QACJC,GAAI,QACJt5N,GAAI,kBACK,eACT48B,GAAI,SACJwjJ,GAAI,qBACK,sBACTn/K,GAAI,kBACK,0BACA,qBACTs4N,GAAI,UACJC,GAAI,iBACJC,GAAI,mBACK,sBACTC,GAAI,kBACK,qBACTC,GAAI,iBACJh2M,GAAI,QACJ5iB,GAAI,WACJmN,GAAI,YACJoF,GAAI,SACJib,GAAI,aACJqrM,GAAI,UACJthM,GAAI,SACJwE,GAAI,YACJ+8L,GAAI,SACJjxN,GAAI,UACJkxN,GAAI,kBACK,8BACA,4BACA,0BACA,6BACA,+BACA,uCACA,4BACA,gCACA,8BACA,6BACA,2BACA,8BACA,2BACA,6BACA,yBACA,gCACA,0BACA,4BACA,sBACT36C,GAAI,OACJ46C,GAAI,UACJl5D,GAAI,kBACK,4BACA,mBACT7/J,GAAI,QACJg5N,GAAI,QACJ5/M,GAAI,SACJ/b,GAAI,OACJ47N,IAAK,QACLC,GAAI,SACJC,GAAI,SACJv2D,GAAI,UACJrrI,GAAI,UACJC,GAAI,YACJ4hM,IAAK,gBACLC,GAAI,OACJ//M,GAAI,QACJoU,GAAI,aACJ4rM,GAAI,UACJ74N,GAAI,UACJ50D,GAAI,QACJu9E,GAAI,QACJqD,GAAI,UACJ8sM,GAAI,QAQQlD,KAAAA,KACP9nJ,SAAS+nJ,iBAAiBkD,aAAenD,GAAAA,IAC1CnzS,KAAKqrJ,SAAS+nJ,iBAAiBC,eAAAA,KAC5BhoJ,SAASxtB,OAAO+7D,UAAU,cAAc,gBACtCvuC,SAASpzI,MACZ,UAAYjY,KAAKqrJ,SAAS+nJ,iBAAiBkD,aAAe,aAGzDjrJ,SAAS+nJ,iBAAiBC,cAAe,IAG3CrzS,IAAAA,EVtNDyyP,GAwWPZ,GAAMY,IA5VH8oC,GAAsB9oC,GAAI8oC,mBAAqB,SAASzkQ,EAAMppB,GAAAA,IAkB5DxP,EAEAq4S,EAjBA7sC,GAFJh8P,EAAUA,GAAW,CAAC,GAEG6sC,MAAQv6C,KAAKqrJ,SAAS05G,UAC3Cp3O,EAAWjgB,EAAQigB,UAAY3tB,KAAKqrJ,SAASgqG,cAC7CwS,EAAYn6P,EAAQm6P,WAAa7nQ,KAAKqrJ,SAAS69G,eAE/CstC,EAAS9oS,EAAQ8oS,OACjB9oS,EAAQ8oS,OACR9sC,EAAWzG,SAASwzC,QAAQD,OAC5BE,EAAmBF,EAAOG,IAAMH,EAAOG,IAAM,EAC7CC,EAAUlpS,EAAQkpS,QAClBlpS,EAAQkpS,QACRltC,EAAWzG,SAASwzC,QAAQG,QAC5BC,EAAoBD,EAAQD,IAAMC,EAAQD,IAAM,EAChD7sC,GAAAA,IAAYp8P,EAAQo8P,UACpBgtC,EAAe,EAGf14S,EAAS04B,EAAK14B,OAEd24S,EAAkB,EAClBC,EAAqBR,EAAO,IAAME,EAClC3lP,EAAS,OAER7yD,EAAI,EAAGA,EAAIE,EAAQF,IACtBq4S,EAAYz/Q,EAAKzxB,WAAWnH,GAEqB,mBAAtCwrQ,EAAWzG,SAASg0C,cAC7BlmP,EAAOxyD,MACJmrQ,EAAWzG,SAASi0C,aACnBxtC,EAAWzG,SAASk0C,iBAAiBZ,IAErC1uC,GAAa,IAAOl6O,IAAa,GAAK,MAQxCmpR,EAJAhtC,GAC8B,YAA9BxlI,EAAAA,GAAAA,GAAOsyK,EAAQL,MACdtoP,MAAMh7C,SAAS2jS,EAAQL,GAAWQ,GAAkB,KAGnDH,EAAQL,GAAWQ,GAAmBF,EAEzB,EAEjB9lP,EAAOxyD,MACJi4S,EAAOD,IAAcS,GAAsBN,EAC1CI,IAGNC,EAAkBR,EAAAA,OAGbxlP,CAAAA,EAmBL84M,GAAsBpX,GAAIoX,mBAAqB,SAAS/yO,EAAMppB,GAAAA,IAG5DigB,GAFJjgB,EAAUA,GAAW,CAAC,GAECigB,UAAY3tB,KAAKqrJ,SAASgqG,cAC7C96M,EAAO7sC,EAAQ6sC,MAAQv6C,KAAKqrJ,SAAS05G,UACrC8C,EAAYn6P,EAAQm6P,WAAa7nQ,KAAKqrJ,SAAS69G,eAAAA,OAG/CzW,GAAI+xB,gBACN1tP,EAAO27N,GAAI+xB,cAAc1tP,IAGgB,mBAAhCyjB,EAAK0oN,SAASg0C,cAErB18P,EAAK0oN,SAASg0C,cAAcngR,EAAMnJ,EAAUk6O,GAAal6O,EAElD4tQ,GACN58R,MAAMqB,KAAM7B,WACZqqB,QAAO,SAASy/P,EAAIC,GAAAA,OACZD,EAAKC,CAAAA,GACX,IAQLsT,GAAgB,SAASloB,EAAM8jC,EAAcC,EAAiBC,GAAAA,IAAAA,IAC5D94F,EAAS,GAGTtgN,EAAI,EACN6E,EAAIuwQ,EAAKl1Q,OACTm5S,EAAa,EACRr5S,IAAM6E,GAAKw0S,EAAaH,EAAal5S,GAAKm5S,GAC/CE,GAAcH,EAAal5S,GAC3BA,IAGFsgN,EAAOjgN,KAAK+0Q,EAAKtwQ,MAAM,EAAG9E,IAAAA,IAGtBs5S,EAAct5S,EAAAA,IAClBq5S,EAAa,EACNr5S,IAAM6E,GACPw0S,EAAaH,EAAal5S,GAAKo5S,IACjC94F,EAAOjgN,KAAK+0Q,EAAKtwQ,MAAMw0S,EAAat5S,IACpCq5S,EAAa,EACbC,EAAct5S,GAEhBq5S,GAAcH,EAAal5S,GAC3BA,IAAAA,OAEEs5S,IAAgBt5S,GAClBsgN,EAAOjgN,KAAK+0Q,EAAKtwQ,MAAMw0S,EAAat5S,IAG/BsgN,CAAAA,EAKLi9E,GAA0B,SAAS3kQ,EAAM2gR,EAAQ/pS,GAI9CA,IACHA,EAAU,CAAC,GAAD,IAQV4lQ,EACA8jC,EAGAl5S,EACA6E,EACAsgC,EACAq0Q,EAkFEC,EA9FAlnR,EAAO,GACT2iM,EAAQ,CAAC3iM,GACTmnR,EAAclqS,EAAQmqS,YAAc,EACpCC,EAAmB,EACnBC,EAAsB,EAGtBr8Q,EAAQ5E,EAAKgtB,MAAM,KACnBk0P,EAAiBzc,GAAmB58R,MAAMqB,KAAM,CAAC,IAAK0N,IAAU,MAOhEgqS,GAD0B,IAAxBhqS,EAAQgqS,WACGh8Q,EAAM,GAAGt9B,OAAS,EAElBsP,EAAQgqS,YAAc,EAErB,KACVO,EAAMz5S,MAAMk5S,GAAYx4S,KAAK,KAC/Bg5S,EAAO,GACTx8Q,EAAM7tB,KAAI,SAASsqS,IACjBA,EAAMA,EAAIr0P,MAAM,UACR1lD,OAAS,EACf85S,EAAOA,EAAKj1S,OACVk1S,EAAItqS,KAAI,SAASsqS,EAAKj7I,GAAAA,OACZA,GAAOi7I,EAAI/5S,OAAS,KAAO,IAAM+5S,CAAAA,KAI7CD,EAAK35S,KAAK45S,EAAI,OAGlBz8Q,EAAQw8Q,EACRR,EAAa7tC,GAAmBlrQ,MAAMqB,KAAM,CAACi4S,EAAKvqS,GAAAA,CAAAA,IAG/CxP,EAAI,EAAG6E,EAAI24B,EAAMt9B,OAAQF,EAAI6E,EAAG7E,IAAK,KACpC8mP,EAAQ,KAEZsuB,EAAO53O,EAAMx9B,GACTw5S,GAAyB,MAAXpkC,EAAK,KACrBA,EAAOA,EAAK9kO,OAAO,GACnBw2M,EAAQ,GAQR4yD,EAAcE,GALhBC,GADAX,EAAe7b,GAAmB58R,MAAMqB,KAAM,CAACszQ,EAAM5lQ,KAClB8a,QAAO,SAASy/P,EAAIC,GAAAA,OAC9CD,EAAKC,CAAAA,GACX,IAGsDuvB,GACvDzyD,EACA,IACI+yD,EAAsBN,EAAQ,KAGhCp0Q,EAAMm4P,GAAc78R,MAAMqB,KAAM,CAC9BszQ,EACA8jC,EACAK,GAAUG,EAAcE,GACxBL,IAGFhnR,EAAKlyB,KAAK8kC,EAAI/sB,SAEdma,EAAO,CAAC4S,EAAI5gC,OAEL4gC,EAAIjlC,QACTg1N,EAAM70N,KAAK,CAAC8kC,EAAI/sB,UAElByhS,EAAsBX,EACnBp0S,MAAMswQ,EAAKl1Q,QAAUqyB,EAAK,GAAKA,EAAK,GAAGryB,OAAS,IAChDoqB,QAAO,SAASy/P,EAAIC,GAAAA,OACZD,EAAKC,CAAAA,GACX,QAGLz3P,EAAO,CAAC6iP,GAIVlgD,EAAM70N,KAAKkyB,GACXmnR,EAAcG,EAAsBL,EACpCI,EAAmBE,CAAAA,MAEnBvnR,EAAKlyB,KAAK+0Q,GAEVskC,GAAeE,EAAmBC,EAClCD,EAAmBE,CAAAA,CAAAA,OAMrBL,EADED,EACY,SAAS93D,EAAI1iF,GAAAA,OACjBA,EAAM+6I,EAAM,IAAMr4D,EAAG1gP,KAAK,MAGtB,SAAS0gP,GAAAA,OACdA,EAAG1gP,KAAK,MAIZk0N,EAAMvlN,IAAI8pS,EAAAA,EAoBnBllD,GAAImW,gBAAkB,SAAS9xO,EAAM2gR,EAAQ/pS,GAAAA,IAwCvC0qS,EAnCAC,GAFJ3qS,EAAUA,GAAW,CAAC,GAEFigB,UAAY3tB,KAAKqrJ,SAASgqG,cAC5CijD,EAAa,SAAS5qS,GAAAA,GAMfA,EAAQ8oS,QAAW9oS,EAAQkpS,QAAS,MAoBhC,CACLJ,OAAQ9oS,EAAQ8oS,OAChBI,QAASlpS,EAAQkpS,SAAAA,IArBfh1S,EAAI5B,KAAKqrJ,SAAS05G,QAAQr3P,EAAQo1P,SAAUp1P,EAAQqjB,WAAAA,OAMpDnvB,EAAEqhQ,SAAFwzC,QACK,CACLD,OAAQ50S,EAAEqhQ,SAAFwzC,QAAqBD,QAdtB,GACN,GAcDI,QAASh1S,EAAEqhQ,SAAFwzC,QAAqBG,SAZxB,CAAC,GAeF,CACLr8P,KAAM34C,EAAEqhQ,SACRt1O,SAAU3tB,KAAKqrJ,SAASgqG,cACxBwS,UAAW7nQ,KAAKqrJ,SAAS69G,eAAAA,EAS/BjqQ,KAAKe,KAAM0N,GAKb0qS,EADE55S,MAAMC,QAAQq4B,GACHA,EAEAh3B,OAAOg3B,GAAMgtB,MAAM,aAM9By0P,EAAmB,EAAMv4S,KAAKqrJ,SAAS6pG,YAAcuiD,EAAUY,EASnEC,EAAWT,WAAanqS,EAAQmqS,WACN,EAArBnqS,EAAQmqS,WAAmB73S,KAAKqrJ,SAAS6pG,YAAemjD,EACzD,EACJC,EAAWZ,WAAahqS,EAAQgqS,WAAAA,IAE5Bx5S,EACF6E,EACAguD,EAAS,OACN7yD,EAAI,EAAG6E,EAAIq1S,EAAWh6S,OAAQF,EAAI6E,EAAG7E,IACxC6yD,EAASA,EAAO9tD,OACdw4R,GAAwB98R,MAAMqB,KAAM,CAClCo4S,EAAWl6S,GACXq6S,EACAD,KAAAA,OAKCvnP,CAAAA,EWzVX,SAAU0hM,GAERA,EAAI+lD,gBAAkB/lD,EAAI+lD,iBAAmB,CAAC,EAAD,QAG3CC,EAAU,mBACVC,EAAoB,CAAC,EACrBC,EAAkB,CAAC,EAEZz6S,EAAI,EAAGA,EAAIu6S,EAAQr6S,OAAQF,IAClCw6S,EAAkBD,EAAQv6S,IANd,mBAM4BA,GACxCy6S,EAPY,mBAOYz6S,IAAMu6S,EAAQv6S,GAAAA,IAGpC0Z,EAAM,SAAS9W,GAAAA,MACV,KAAOmS,SAASnS,EAAO,IAAIlC,SAAS,KAGzCgtM,EAAY6mD,EAAI+lD,gBAAgB5sG,SAAW,SAAS3jM,GAAAA,IAElDnH,EAAO83S,EAAWC,EAAaC,EAD/BC,EAAO,CAAC,SAGP,IAAI/5S,KAAOiJ,EAAM,IACpBnH,EAAQmH,EAAKjJ,GAERivD,MAAMh7C,SAASjU,EAAK,KAMvB45S,EAAY,IAAM55S,EAAM,KALxBA,EAAMiU,SAASjU,EAAK,IAEpB45S,GADAA,EAAYhhS,EAAI5Y,GAAKgE,MAAM,IAEfA,MAAM,GAAI,GAAK21S,EAAgBC,EAAU51S,OAAO,KAK1C,iBAATlC,EACLA,EAAQ,GACV+3S,EAAcjhS,EAAI9W,GAAOkC,MAAM,GAC/B81S,EAAe,MAEfD,EAAcjhS,EAAI9W,GAAOkC,MAAM,GAC/B81S,EAAe,IAEjBD,EACEC,EACAD,EAAY71S,MAAM,GAAI,GACtB21S,EAAgBE,EAAY71S,OAAO,QAChC,IACgB,YAAjBshI,EAAAA,GAAAA,GAAOxjI,GAAAA,MAGH,IAAI2D,MACR,0CAA2C,QAAO3D,GAAQ,KAH5D+3S,EAAcjtG,EAAS9qM,EAAAA,CAO3Bi4S,EAAKx6S,KAAKq6S,EAAYC,EAAAA,CAAAA,OAExBE,EAAKx6S,KAAK,KACHw6S,EAAK75S,KAAK,KAWf85S,EAAcvmD,EAAI+lD,gBAAgBQ,WAAa,SAAS/wS,GAAAA,GACtC,iBAATA,EAAAA,MACH,IAAIxD,MAAM,kDAKhBw0S,EAGAC,EAGAl6S,EAEAmkG,EAVEpyC,EAAS,CAAC,EACZj+C,EAAO,EAEPqmS,EAAepoP,EACfqoP,EAAc,GAEdC,EAAW,GACXC,EAAa,GAEbC,EAAUtxS,EAAK7J,OAAS,EAGjBF,EAAI,EAAGA,EAAIq7S,EAASr7S,GAAK,EAKtB,MAFVilG,EAAKl7F,EAAK/J,IAGJ+6S,GAEFj6S,EAAMi6S,EAAY/5S,KAAK,IACvB+5S,OAAAA,GAGAA,EAAc,GAEPA,EACTA,EAAY16S,KAAK4kG,GACF,KAANA,GAETi2M,EAAY76S,KAAK,CAAC46S,EAAcn6S,IAChCm6S,EAAe,CAAC,EAChBn6S,OAAAA,GACe,KAANmkG,IAET+1M,EAAkBE,EAAY32S,OACd,GAAGy2S,EAAgB,IAAMC,EACzCn6S,OAAAA,EACAm6S,EAAeD,EAAgB,IAChB,KAAN/1M,EACTrwF,GAAQ,WAGJ9T,EACE05S,EAAkB36S,eAAeolG,IACnCk2M,GAAYX,EAAkBv1M,GAC9BnkG,EAAMiU,SAASomS,EAAU,IAAMvmS,EAC/BA,EAAO,EACPumS,EAAW,IAEXA,GAAYl2M,EAGVu1M,EAAkB36S,eAAeolG,IACnCm2M,GAAcZ,EAAkBv1M,GAChCg2M,EAAan6S,GAAOiU,SAASqmS,EAAY,IAAMxmS,EAC/CA,EAAO,EACP9T,OAAAA,EACAs6S,EAAa,IAEbA,GAAcn2M,EAAAA,OAKfpyC,CAAAA,EAgBL2yM,EAAgB,CAClBM,UAAW,CAAC,mBACZw1C,gBAAiBR,EACf,+JAGAS,EAAY,CACdhD,QAAS,CACPiD,QAASh2C,EAAAA,eACOA,EAAAA,sBACOA,EAAAA,kBACJA,EACnB6pB,UAAW7pB,EAAAA,iBACOA,EAAAA,wBACOA,EAAAA,oBACJA,EAAAA,cACNA,EAAAA,aACDA,EAAAA,mBACMA,EAAAA,eACJA,IAMhBxqN,EAAc,CAChBu9P,QAAS,mBASYuC,EACjB,gEAEkBA,EAClB,myDAEgBA,EAChB,gnDAEFU,QAASV,EAAW,mEACGA,EACrB,0DAEYA,EACZ,yzDAEF32S,OAAQ22S,EACN,sNAEFzrB,UAAWyrB,EACT,wsDAEuBA,EACvB,gnDAEFW,aAAcX,EAAW,gEACTA,EAAW,4DACXA,EACd,msDAEaA,EACb,83DAEmBA,EACnB,krDAgBNvmD,EAAI50H,OAAOt/H,KAAK,CACd,UACA,SAAS0J,GAAAA,IACHsyC,EAAOtyC,EAAKsyC,KAEZq/P,EAAU1gQ,EAAWu9P,QAAYl8P,EAAKimN,gBACtCo5C,IACFr/P,EAAK0oN,SAALwzC,QAA2B,CAAC,EAC5Bl8P,EAAK0oN,SAALwzC,QAAyBD,OAASoD,EAAQpD,OAC1Cj8P,EAAK0oN,SAALwzC,QAAyBG,QAAUgD,EAAQhD,SAAAA,IAGzClzC,EAAgB+1C,EAAShD,QAAYl8P,EAAKimN,gBAC1CkD,IACFnpN,EAAK0oN,SAALwzC,QAAyBh2C,SAAWiD,EACpCnpN,EAAKkmN,SAAWiD,EAAcM,UAAU,OA/PhD,CAmQGnS,GAAMY,KCrST,SAAUZ,GAAAA,IAGJkvB,EAA2B,SAASC,GAAAA,IAAAA,IAClCz6Q,EAAMy6Q,EAAc5iR,OACpBsI,EAAQ,IAAIX,WAAWQ,GAClBrI,EAAI,EAAGA,EAAIqI,EAAKrI,IACvBwI,EAAMxI,GAAK8iR,EAAc37Q,WAAWnH,GAAAA,OAE/BwI,CAAAA,EAmBTmrP,EAAMY,IAAI50H,OAAOt/H,KAAK,CACpB,UACA,SAAS0J,GAAAA,IACHwvI,OAAAA,EACAl9F,EAAOtyC,EAAKsyC,KACZggD,EAAWtyF,EAAKsyF,SAAAA,IAChBhgD,EAAKyoN,eAAgB,CAAhBA,QAAAA,IAGEzoK,EAAAA,MAeH,IAAI91F,MACR,+EACE81C,EAAKimN,eACL,UAZgB,iBAJlB/oH,GAAAA,IADEl9C,EAASs/M,gBAAgBt/P,EAAKimN,gBACzBjmK,EAASwjL,SAASxjO,EAAKimN,gBAEvBjmK,EAASu/M,eAAev/P,EAAKimN,iBAAAA,MAG9B,IAAI/7P,MACR,6FACE81C,EAAKimN,eACL,QAnCE,SAASjmN,EAAMk9F,GAGzBA,EADE,oBAAoBvyG,KAAKuyG,GACpBspI,EAAyBtpI,GAEzBspI,EAAyBv8B,GAAK/sG,IAEvCl9F,EAAK0oN,SAAWpR,EAAMY,IAAIsnD,QAAQjoR,KAAK2lH,GACvCl9F,EAAK0oN,SAASwzC,QAAUl8P,EAAK0oN,SAASwzC,SAAW,CAC/Ch2C,SAAU,CAAC,EACXm2C,QAAS,CAAC,EACVJ,OAAQ,IAEVj8P,EAAK0oN,SAAS+2C,WAAa,CAAC,GAbhB,CAsCAz/P,EAAMk9F,EAAAA,CAAAA,GAAAA,CAlDtB,CA4DGo6G,ICvCH,SAAUyf,GAAAA,SAGC2oC,IAAAA,OAEDj2D,GAAYk2D,MACPl5S,QAAQD,QAAQijP,GAAYk2D,OAG9B7iB,EAAAA,EAAAA,KAAAA,KAAAA,EAAAA,KAAAA,EAAAA,QAGN5+P,OAAM,SAASp3B,GAAAA,OACPL,QAAQC,OAAO,IAAIwD,MAAM,yBAA2BpD,GAAAA,IAE5DI,MAAK,SAASy4S,GAAAA,OACNA,EAAM76S,QAAU66S,EAAM76S,QAAU66S,CAAAA,GAAAA,CAkF5CroD,GAAMY,IA3DE0nD,cAAgB,SACvB9hR,EACA90B,EACA1B,EACA2B,EACAC,EACA2kD,EACA64N,EACA7C,GAAAA,GAEInwN,MAAM1qD,IAAM0qD,MAAMpsD,GAAAA,MACpBo/C,GAAQja,MAAM,2CAA4C7oC,WACpD,IAAIsG,MAAM,wDAGdwpD,MAAMzqD,IAAMyqD,MAAMxqD,GAAAA,MACpBw9C,GAAQja,MAAM,4CAA6C7oC,WACrD,IAAIsG,MACR,gFAIAizB,EAASnzB,SAASwxB,cAAc,UACpC2B,EAAOt0B,MAAQI,EACfk0B,EAAOr0B,OAASI,EAAAA,IACZk0B,EAAMD,EAAOE,WAAW,MAC5BD,EAAIO,UAAY,OAChBP,EAAIQ,SAAS,EAAG,EAAGT,EAAOt0B,MAAOs0B,EAAOr0B,QAAAA,IAEpCqK,EAAU,CACZ0sS,aAAa,EACbC,iBAAiB,EACjBC,kBAAkB,GAEhBC,EAAMv6S,KAAAA,OACHi6S,IACJx4S,MACC,SAASy4S,GAAAA,OACAA,EAAMM,WAAW7iR,EAAKU,EAAK3qB,EAAAA,IAEpC,kBACS1M,QAAQC,OAAO,IAAIwD,MAAM,6BAGnChD,MAAK,SAAS84F,GAAAA,OACNA,EAAS3+C,OAAOluC,EAAAA,IAExBjM,MAAK,WACJ84S,EAAI3vR,SACF8M,EAAOK,UAAU,aAAc,GAC/Bx0B,EACA1B,EACA2B,EACAC,EACAw9Q,EACA7C,EAAAA,GAAAA,CAAAA,CA9FV,GCsCGvsB,GAAMY,IA9BEgoD,cAAgB,SAASC,GAAAA,IAG5BC,EACAC,EAAqB,EACrB3nS,SAASjT,KAAKqrJ,SAAS05G,UAAUnkN,GAAGpS,OAAO,GAAI,IAAM,IACvDmsQ,EAAoB,IAAI3qP,OAAO0qP,EAAgB,KAC/CE,EAAqB56S,KAAKqrJ,SAASy5G,qBAEnC61C,EAAoB,IAAI3qP,OACtBhwD,KAAK66S,YAAYH,EAAgB16S,KAAKqrJ,SAAS05G,WAC/C,KAEF61C,EAAqB56S,KAAK66S,YACxB76S,KAAKqrJ,SAASy5G,mBAAqB,GACnC9kQ,KAAKqrJ,SAAS05G,YAAAA,IAIb,IAAIxkQ,EAAI,EAAGA,GAAKP,KAAKqrJ,SAASy5G,mBAAoBvkQ,IAAK,IACrD,IAAIrC,EAAI,EAAGA,EAAI8B,KAAKqrJ,SAASwsG,MAAMt3P,GAAGnC,OAAQF,IAAK,KACjDmtJ,SAASwsG,MAAMt3P,GAAGrC,GAAK8B,KAAKqrJ,SAASwsG,MAAMt3P,GAAGrC,GAAG09B,QACpD++Q,EACAC,GAAAA,OAKC56S,IAAAA,EC8SR6xP,GAAMY,IAxQEqoD,kBAAoB,SAASptS,EAASqtS,GAAAA,IAIzCC,EAHJttS,EAAUA,GAAW,CAAC,EACtBqtS,EAAUA,IAAAA,EAAW,IAyJjBltP,EAEAq4E,EACAplI,EAzJAm6S,EAAwB,CAC1BC,YAAa,CACX96N,cAAc,EACdt/E,OAAO,EACPkM,KAAM,UACNmuS,aAAa,EACbC,SAAU,EAAC,MACXzoD,WAAY,KAEd0oD,YAAa,CACXj7N,cAAc,EACdt/E,OAAO,EACPkM,KAAM,UACNmuS,aAAa,EACbC,SAAU,EAAC,MACXzoD,WAAY,KAEd2oD,aAAc,CACZl7N,cAAc,EACdt/E,OAAO,EACPkM,KAAM,UACNmuS,aAAa,EACbC,SAAU,EAAC,MACXzoD,WAAY,KAEd4oD,UAAW,CACTn7N,cAAc,EACdt/E,OAAO,EACPkM,KAAM,UACNmuS,aAAa,EACbC,SAAU,EAAC,MACXzoD,WAAY,KAEd6oD,aAAc,CACZp7N,cAAc,EACdt/E,OAAO,EACPkM,KAAM,UACNmuS,aAAa,EACbC,SAAU,EAAC,MACXzoD,WAAY,KAEd8oD,gBAAiB,CACfr7N,cAAc,EACdt/E,OAAO,EACPkM,KAAM,UACNmuS,aAAa,EACbC,SAAU,EAAC,MACXzoD,WAAY,KAEd+oD,sBAAuB,CACrBt7N,aAAc,UACdt/E,MAAO,UACPkM,KAAM,OACNmuS,aAAa,EACbC,SAAU,CAAC,UAAW,cAAe,YAAa,SAClDzoD,WAAY,KAEdgpD,UAAW,CACTv7N,aAAc,MACdt/E,MAAO,MACPkM,KAAM,OACNmuS,aAAa,EACbC,SAAU,CAAC,MAAO,OAClBzoD,WAAY,KAEdipD,SAAU,CACRx7N,aAAc,UACdt/E,MAAO,UACPkM,KAAM,OACNmuS,aAAa,EACbC,SAAU,CAAC,WAAY,UAAW,UAAW,WAAY,UACzDzoD,WAAY,KAEdkpD,SAAU,CACRz7N,aAAc,UACdt/E,MAAO,UACPkM,KAAM,OACNmuS,aAAa,EACbC,SAAU,CAAC,WAAY,UAAW,UAAW,WAAY,UACzDzoD,WAAY,KAEdmpD,UAAW,CACT17N,aAAc,UACdt/E,MAAO,UACPkM,KAAM,OACNmuS,aAAa,EACbC,SAAU,CAAC,WAAY,UAAW,UAAW,WAAY,UACzDzoD,WAAY,KAEdopD,UAAW,CACT37N,aAAc,UACdt/E,MAAO,UACPkM,KAAM,OACNmuS,aAAa,EACbC,SAAU,CAAC,WAAY,UAAW,UAAW,WAAY,UACzDzoD,WAAY,KAEdqpD,aAAc,CACZ57N,aAAc,aACdt/E,MAAO,aACPkM,KAAM,OACNmuS,aAAa,EACbC,SAAU,CAAC,aAAc,QACzBzoD,WAAY,KAEdspD,OAAQ,CACN77N,aAAc,GACdt/E,MAAO,OACPkM,KAAM,OACNmuS,aAAa,EACbC,SAAU,CACR,UACA,sBACA,qBACA,QAEFzoD,WAAY,KAEdupD,kBAAmB,CACjB97N,cAAc,EACdt/E,OAAO,EACPkM,KAAM,UACNmuS,aAAa,EACbC,SAAU,EAAC,MACXzoD,WAAY,KAEdwpD,eAAgB,CACd/7N,aAAc,GACdt/E,MAAO,GACPkM,KAAM,QACNmuS,aAAa,EACbC,SAAU,KACVzoD,WAAY,KAEdypD,UAAW,CACTh8N,aAAc,EACdt/E,MAAO,EACPkM,KAAM,UACNmuS,aAAa,EACbC,SAAU,KACVzoD,WAAY,MAIZ0pD,EAAoBx9S,OAAO0uC,KAAK0tQ,GAEhCqB,EAAa,GACbp+S,EAAI,EACJyoD,EAAI,EACJmF,EAAI,WAMCywP,EAAqB93P,EAAOhxB,GAAAA,IAC/BnxB,EACAf,GAAAA,EAAS,IAERe,EAAW,EAAGA,EAAWmiD,EAAMrmD,OAAQkE,GAAY,EAClDmiD,EAAMniD,KAAcmxB,IACtBlyB,GAAAA,GAAS,OAGNA,CAAAA,CAAAA,QAAAA,IAGLvB,KAAKqrJ,SAASmxJ,oBAAAA,KACXnxJ,SAASmxJ,kBAAoB,CAAC,EAAD,KAC7BnxJ,SAASmxJ,kBAAkBxB,cAAgB/hM,KAAKz+F,MACnDy+F,KAAKC,UAAU+hM,IAAAA,KAEZ5vJ,SAASmxJ,kBAAkBnJ,cAAe,GAEjD2H,EAAgBh7S,KAAKqrJ,SAASmxJ,kBAAkBxB,cAEhC,UAAZttS,IAAAA,IAAuBqtS,EAAkB,KACvCx0S,EAAM81S,EAAkBj+S,OAAAA,IAEvB0tD,EAAI,EAAGA,EAAIvlD,EAAKulD,GAAK,EACxBkvP,EAAcqB,EAAkBvwP,IAAIhrD,MAClCk6S,EAAcqB,EAAkBvwP,IAAIs0B,aACtC46N,EAAcqB,EAAkBvwP,IAAIqvP,aAAc,KAI/B,YAAnB72K,EAAAA,GAAAA,GAAO52H,GAAAA,IACJw4H,KAAUx4H,EAAAA,GACb5M,EAAQ4M,EAAQw4H,GAEdq2K,EAAqBF,EAAmBn2K,SAAAA,IACxCplI,EACA,IAEiC,YAA/Bk6S,EAAc90K,GAAQl5H,MACL,kBAAVlM,EAEPk6S,EAAc90K,GAAQplI,MAAQA,OACzB,GAC0B,SAA/Bk6S,EAAc90K,GAAQl5H,MACtBuvS,EAAqBvB,EAAc90K,GAAQk1K,SAAUt6S,GAErDk6S,EAAc90K,GAAQplI,MAAQA,OACzB,GAC0B,YAA/Bk6S,EAAc90K,GAAQl5H,MACtB2vG,OAAOo9J,UAAUj5Q,GAEjBk6S,EAAc90K,GAAQplI,MAAQA,OACzB,GAAmC,UAA/Bk6S,EAAc90K,GAAQl5H,KAAkB,KAC5C9O,EAAI,EAAGA,EAAI4C,EAAM1C,OAAQF,GAAK,EAAG,GACpC2vD,GAAAA,EACwB,IAApB/sD,EAAM5C,GAAGE,QAAuC,iBAAhB0C,EAAM5C,GAAG,GAC3Co+S,EAAW/9S,KAAKuB,OAAOgB,EAAM5C,GAAK,SAC7B,GAAI4C,EAAM5C,GAAGE,OAAS,EAAG,KACzBuoD,EAAI,EAAGA,EAAI7lD,EAAM5C,GAAGE,OAAQuoD,GAAK,EACT,iBAAhB7lD,EAAM5C,GAAGyoD,KAClBkH,GAAAA,IAAU,IAGVA,GACFyuP,EAAW/9S,KAAK,CAACuC,EAAM5C,GAAG,GAAK,EAAG4C,EAAM5C,GAAG,GAAK,GAAGgB,KAAK,MAI9D87S,EAAc90K,GAAQplI,MAAQ,IAAMw7S,EAAWp9S,KAAK,KAAO,SAE3D87S,EAAc90K,GAAQplI,MAAQk6S,EAAc90K,GAAQ9lD,aAGtD46N,EAAc90K,GAAQi1K,aAAc,aAKtCn7S,KAAKqrJ,SAASmxJ,kBAAkBnJ,eAAAA,KAC7BhoJ,SAASxtB,OAAO+7D,UAAU,cAAc,eAEvC6iH,EADAC,EAAU,OAETD,KAASzB,GAAAA,IACRA,EAAcyB,GAAOtB,cACW,SAA9BH,EAAcyB,GAAOzvS,KACvB0vS,EAAQn+S,KAAK,IAAMk+S,EAAQ,KAAOzB,EAAcyB,GAAO37S,OAEvD47S,EAAQn+S,KAAK,IAAMk+S,EAAQ,IAAMzB,EAAcyB,GAAO37S,QAIrC,IAAnB47S,EAAQt+S,QAAAA,KACLitJ,SAASpzI,MACZ,2BAA6BykS,EAAQx9S,KAAK,MAAQ,gBAInDmsJ,SAASmxJ,kBAAkBnJ,cAAe,QAG5ChoJ,SAASmxJ,kBAAkBxB,cAAgBA,EACzCh7S,IAAAA,EClVX,SAAUsxQ,GAAAA,IAGJqrC,EAAmB,eAEjBC,EACF,+GACA58S,KAAKqrJ,SAASwxJ,aAAaC,aAC3B,qBAGEC,EAAyB92C,SAC3BjtO,mBARsB,yCAUpBgkR,EAAqB/2C,SAASjtO,mBAAmB4jR,IACjDK,EAAgBh3C,SAClBjtO,mBAAmBh5B,KAAKqrJ,SAASwxJ,aAAa55C,WAE5Ci6C,EAAkBj3C,SAASjtO,mBATd,kDAUbmkR,EAAsBl3C,SAASjtO,mBATd,iBAWjBokR,EACFJ,EAAmB5+S,OACnB6+S,EAAc7+S,OACd8+S,EAAgB9+S,OAChB2+S,EAAuB3+S,OACvB++S,EAAoB/+S,OAAAA,KAEjBitJ,SAASwxJ,aAAaQ,uBAAyBr9S,KAAKqrJ,SAAS8xG,YAAAA,KAC7D9xG,SAASpzI,MACZ,4CAA8CmlS,EAAY,YAEvD/xJ,SAASpzI,MAAM,eACfozI,SAASpzI,MACZ8kS,EACEC,EACAC,EACAC,EACAC,GAAAA,KAEC9xJ,SAASpzI,MAAM,kBACfozI,SAASpzI,MAAM,WAGlBotP,EAAa,WACXrlQ,KAAKqrJ,SAASwxJ,aAAaQ,wBAAAA,KACxBhyJ,SAASpzI,MACZ,aACEjY,KAAKqrJ,SAASwxJ,aAAaQ,uBAC3B,SAcR/rC,EAASgsC,YAAc,SAASr6C,EAAU65C,GAAAA,YAAAA,IAC7B98S,KAAKqrJ,SAASwxJ,eAAAA,KAClBxxJ,SAASwxJ,aAAe,CAC3B55C,SAAUA,EACV65C,aAAcA,GAAgB,2CAE3BzxJ,SAASxtB,OAAO+7D,UAAU,aAAcyrE,GAAAA,KAExCh6G,SAASxtB,OAAO+7D,UAAU,mBAAoB+iH,IAE9C38S,IAAAA,CAAAA,CAzEX,CA2EG6xP,GAAMY,KCpGT,SAAUZ,GAAAA,IAEJyf,EAAWzf,EAAMY,IAOjBooD,EAAevpC,EAASupC,YAAc,SAAS/jR,EAAMyjB,GAAAA,IAAAA,IAItBl6C,EAH7Bm2S,EAASj8P,EAAK0oN,SAASwzC,QAAQD,OAC/B+G,EAAO,CAAC,GAAI,IAAK,KAAM,MAAO,QAC9Bz6S,EAAK,CAAC,IACD5E,EAAI,EAAG6E,EAAI+zB,EAAK14B,OAAWF,EAAI6E,IAAK7E,EAAG,IAC9CmC,EAAIk6C,EAAK0oN,SAASk0C,iBAAiBrgR,EAAKzxB,WAAWnH,IACnDq8C,EAAK0oN,SAAS+2C,WAAWz7S,KAAK8B,GAC9Bk6C,EAAK0oN,SAASu6C,UAAUn9S,GAAKy2B,EAAKzxB,WAAWnH,IACnB,GAAtBs4S,EAAOhqS,QAAQnM,KACjBm2S,EAAOj4S,KAAK8B,GACZm2S,EAAOj4S,KAAK,CAAC0U,SAASsnC,EAAK0oN,SAASi0C,aAAa72S,GAAI,OAE9C,KAALA,EAAAA,OAEKyC,EAAG5D,KAAK,IAEfmB,EAAIA,EAAEzB,SAAS,IACfkE,EAAGvE,KAAKg/S,EAAK,EAAIl9S,EAAEjC,QAASiC,EAAAA,CAAAA,OAGzByC,EAAG5D,KAAK,KAGbu+S,EAAgB,SAAS5vS,GAAAA,IACvBqlF,EAAMwqN,EAAO7nR,EAAO8nR,EAASC,EAAYp4S,EAAI24R,EAAAA,IACjDyf,EACE,iQAKF/nR,EAAQ,GACHrwB,EAAK,EAAG24R,GALbuf,EAAQ7+S,OAAO0uC,KAAK1/B,GAAKg6C,MAAK,SAASl7C,EAAGnN,GAAAA,OACjCmN,EAAInN,CAAAA,KAIapB,OAAQoH,EAAK24R,EAAM34R,IAC3C0tF,EAAOwqN,EAAMl4S,GACTqwB,EAAMz3B,QAAU,MAClBw/S,GACE,KACA/nR,EAAMz3B,OACN,iBACAy3B,EAAM32B,KAAK,MACX,cACF22B,EAAQ,aAIRhoB,EAAIqlF,IACU,OAAdrlF,EAAIqlF,IAC0B,mBAAvBrlF,EAAIqlF,GAAMt0F,WAEjB++S,GAAW,OAAS9vS,EAAIqlF,GAAMt0F,SAAS,KAAKoE,OAAO,GACnDkwF,GAAQ,SAAWA,GAAMt0F,SAAS,KAAKoE,OAAO,GAC9C6yB,EAAMt3B,KAAK,IAAM20F,EAAO,KAAOyqN,EAAU,aAIzC9nR,EAAMz3B,SACRw/S,GACE,KACA/nR,EAAMz3B,OACN,iBACAy3B,EAAM32B,KAAK,MACX,iBAEJ0+S,EACE,oEA+EJtsC,EAASzzI,OAAOt/H,KAAK,CACnB,UACA,SAASib,IA7Ea,SAAS9L,GAAAA,IAC3B6sC,EAAO7sC,EAAQ6sC,KACfgK,EAAM72C,EAAQ62C,IACd44M,EAAYzvP,EAAQyvP,UACpBmB,EAAY5wP,EAAQ4wP,UAAAA,GAGtB/jN,EAAK0oN,oBAAoBpR,EAAMY,IAAIsnD,SACjB,eAAlBx/P,EAAKkmN,SACL,SAEI+1C,EAASj8P,EAAK0oN,SAASwzC,QAAQD,OAE/BqH,EADOtjQ,EAAK0oN,SAAS66C,OAAOpV,OAAOnuP,EAAK0oN,SAAS+2C,WAAY,GAE7D+D,EAAa,GACR7/S,EAAI,EAAGA,EAAI2/S,EAAUz/S,OAAQF,IACpC6/S,GAAcj+S,OAAO8F,aAAai4S,EAAU3/S,IAAAA,IAE1C8/S,EAAY7gD,IAChBmB,EAAU,CAAEr2P,KAAM81S,EAAYv/C,YAAY,EAAME,SAAUs/C,IAC1Dz5P,EAAI,cAEA05P,EAAO9gD,IAEXmB,EAAU,CAAEr2P,KADGw1S,EAAcljQ,EAAK0oN,SAASu6C,WACfh/C,YAAY,EAAME,SAAUu/C,IACxD15P,EAAI,cAEA25P,EAAiB/gD,IACrB54M,EAAI,MACJA,EAAI,yBACJA,EAAI,cAAgBisM,GAAUj2M,EAAKuoN,WACnCv+M,EAAI,cAAgBy5P,EAAY,QAChCz5P,EAAI,aAAestM,EAAMY,IAAI0rD,UAAUxmB,QAAQp9O,EAAK0oN,SAASm7C,OAC7D75P,EAAI,UAAYhK,EAAK0oN,SAAS1tP,OAC9BgvC,EAAI,UAAYhK,EAAK0oN,SAASo7C,OAC9B95P,EAAI,gBAAkBhK,EAAK0oN,SAASq7C,aACpC/5P,EAAI,WAAahK,EAAK0oN,SAASs7C,UAC/Bh6P,EAAI,YAAchK,EAAK0oN,SAASu7C,UAChCj6P,EAAI,cAAgBhK,EAAK0oN,SAASw7C,WAClCl6P,EAAI,MACJA,EAAI,cAEAm6P,EAAiBvhD,IACrB54M,EAAI,MACJA,EAAI,eACJA,EAAI,cAAgBisM,GAAUj2M,EAAKuoN,WACnCv+M,EAAI,mBAAqB25P,EAAiB,QAC1C35P,EAAI,MAAQstM,EAAMY,IAAI0rD,UAAUxmB,QAAQ6e,IACxCjyP,EAAI,0BACJA,EAAI,YACJA,EAAI,0BACJA,EAAI,kBACJA,EAAI,MACJA,EAAI,iBACJA,EAAI,qBACJA,EAAI,cAAgBhK,EAAKkmN,SAAW,KACpCl8M,EAAI,MACJA,EAAI,MACJA,EAAI,UAEJhK,EAAK22M,aAAeiM,IACpB54M,EAAI,MACJA,EAAI,eACJA,EAAI,mBACJA,EAAI,cAAgB05P,EAAO,QAC3B15P,EAAI,cAAgBisM,GAAUj2M,EAAKuoN,WACnCv+M,EAAI,cAAgBhK,EAAKkmN,UACzBl8M,EAAI,qBAAuBm6P,EAAiB,SAC5Cn6P,EAAI,MACJA,EAAI,UAEJhK,EAAKgmN,iBAAkB,GAvEH,CA8EF/mP,EAAAA,IAqEtB83P,EAASzzI,OAAOt/H,KAAK,CACnB,UACA,SAASib,IAnEmB,SAAS9L,GAAAA,IACjC6sC,EAAO7sC,EAAQ6sC,KACfgK,EAAM72C,EAAQ62C,IACd44M,EAAYzvP,EAAQyvP,UACpBmB,EAAY5wP,EAAQ4wP,UAAAA,GAGtB/jN,EAAK0oN,oBAAoBpR,EAAMY,IAAIsnD,SACjB,oBAAlBx/P,EAAKkmN,SACL,SAGIo9C,EADOtjQ,EAAK0oN,SAASue,QAErBu8B,EAAa,GACR7/S,EAAI,EAAGA,EAAI2/S,EAAUz/S,OAAQF,IACpC6/S,GAAcj+S,OAAO8F,aAAai4S,EAAU3/S,IAAAA,IAE1C8/S,EAAY7gD,IAChBmB,EAAU,CAAEr2P,KAAM81S,EAAYv/C,YAAY,EAAME,SAAUs/C,IAC1Dz5P,EAAI,cAEA05P,EAAO9gD,IAEXmB,EAAU,CAAEr2P,KADGw1S,EAAcljQ,EAAK0oN,SAASu6C,WACfh/C,YAAY,EAAME,SAAUu/C,IACxD15P,EAAI,cAEA25P,EAAiB/gD,IACrB54M,EAAI,MACJA,EAAI,YAAchK,EAAK0oN,SAASu7C,UAChCj6P,EAAI,cAAgBhK,EAAK0oN,SAASw7C,WAClCl6P,EAAI,UAAYhK,EAAK0oN,SAASo7C,OAC9B95P,EAAI,yBACJA,EAAI,cAAgBy5P,EAAY,QAChCz5P,EAAI,aACJA,EAAI,aAAestM,EAAMY,IAAI0rD,UAAUxmB,QAAQp9O,EAAK0oN,SAASm7C,OAC7D75P,EAAI,cAAgBisM,GAAUj2M,EAAKuoN,WACnCv+M,EAAI,gBAAkBhK,EAAK0oN,SAASq7C,aACpC/5P,EAAI,WAAahK,EAAK0oN,SAASs7C,UAC/Bh6P,EAAI,MACJA,EAAI,UACJhK,EAAK22M,aAAeiM,IAAAA,IACf,IAAIx2M,EAAI,EAAGA,EAAIpM,EAAK0oN,SAAS07C,KAAKnI,OAAOp4S,OAAQuoD,IACpDpM,EAAK0oN,SAAS07C,KAAKnI,OAAO7vP,GAAK1zC,SAC7BsnC,EAAK0oN,SAAS07C,KAAKnI,OAAO7vP,IAAM,IAAOpM,EAAK0oN,SAAS50H,KAAKuwK,aAG9Dr6P,EACE,2CACE05P,EACA,iBACAztD,GAAUj2M,EAAKuoN,UACf,mBACAo7C,EALF,iBAQE3jQ,EAAKkmN,SACL,wCACA5O,EAAMY,IAAI0rD,UAAUxmB,QAAQp9O,EAAK0oN,SAAS07C,KAAKnI,QAC/C,MAEJjyP,EAAI,UACJhK,EAAKgmN,iBAAkB,GA7DG,CAoEF/mP,EAAAA,IAAAA,IAIxBqlS,EAAmB,SAASrlS,GAAAA,IAc5BslS,EAbEhoR,EAAOtd,EAAKsd,MAAQ,GACpBvzB,EAAIiW,EAAKjW,EACT1B,EAAI2X,EAAK3X,EACT6L,EAAU8L,EAAK9L,SAAW,CAAC,EAC3Bo7P,EAAQtvP,EAAKsvP,OAAS,CAAC,EAEvB5E,EAAY4E,EAAM5E,UAClB/J,EAAgB2O,EAAM3O,cACtBx0N,EAAQmjO,EAAMnjO,MACd3mC,EAAMm7P,EAENh1P,EAAM,GACR7E,EAAI,EAEFy+S,EAAU,GACVt+C,EAAW96N,EAAM3mC,GAAKyhQ,SAAAA,GAEE,eAAxB96N,EAAM3mC,GAAKyhQ,SAAAA,MACN,CACL3pO,KAAMA,EACNvzB,EAAGA,EACH1B,EAAGA,EACH6L,QAASA,EACTo7P,MAAOA,GAAAA,IAGXi2C,EAAUjoR,EAEV93B,EAAMm7P,EACF37P,MAAMC,QAAQq4B,KAChBioR,EAAUjoR,EAAK,IAEZx2B,EAAI,EAAGA,EAAIy+S,EAAQ3gT,OAAQkC,GAAK,EAC/BqlC,EAAM3mC,GAAKikQ,SAASllQ,eAAe,UACrC+gT,EACEn5Q,EAAM3mC,GAAKikQ,SAASg7C,KAAKN,QAAQqB,QAAQD,EAAQz+S,GAAG+E,WAAW,KAgB9Dy5S,GAEDC,EAAQz+S,GAAG+E,WAAW,GAAK,KAC3BsgC,EAAM3mC,GAAKikQ,SAASllQ,eAAe,WAOrCoH,GAAO45S,EAAQz+S,GAHb6E,GAAO,OAMT5D,EAAS,UACT0R,SAASjU,EAAIgE,MAAM,IAAM,IAAmB,oBAAby9P,EAEjCl/P,EAAS2iQ,EAAU/+P,EAAKnG,GACrB8kD,MAAM,IACNj2C,KAAI,SAASq6Q,GAAAA,OACLA,EAAG7iR,WAAW,GAAGzG,SAAS,OAElCM,KAAK,IACc,eAAbuhQ,IACTl/P,EAASs5S,EAAY11S,EAAKwgC,EAAM3mC,KAElC8pQ,EAAMj3P,OAAQ,EAEP,CACLilB,KAAMv1B,EACNgC,EAAGA,EACH1B,EAAGA,EACH6L,QAASA,EACTo7P,MAAOA,EAAAA,EAiDXwI,EAASzzI,OAAOt/H,KAAK,CAAC,kBA7CG,SAAS0gT,GAAAA,IAC5BnoR,EAAOmoR,EAAMnoR,MAAQ,GAKrB2tP,EAAU,GACVjrQ,EAAO,CACTsd,KAAMA,EACNvzB,EAPI07S,EAAM17S,EAQV1B,EAPIo9S,EAAMp9S,EAQV6L,QAPUuxS,EAAMvxS,QAQhBo7P,MAPQm2C,EAAMn2C,OAAAA,GAUZtqQ,MAAMC,QAAQq4B,GAAO,KACnB54B,EAAI,MACHA,EAAI,EAAGA,EAAI44B,EAAK14B,OAAQF,GAAK,EAC5BM,MAAMC,QAAQq4B,EAAK54B,KACE,IAAnB44B,EAAK54B,GAAGE,OACVqmR,EAAQlmR,KAAK,CACXsgT,EAAiBhgT,OAAOuB,OAAO,CAAC,EAAGoZ,EAAM,CAAEsd,KAAMA,EAAK54B,GAAG,MACtD44B,KACHA,EAAK54B,GAAG,GACR44B,EAAK54B,GAAG,KAQZumR,EAAQlmR,KACNsgT,EAAiBhgT,OAAOuB,OAAO,CAAC,EAAGoZ,EAAM,CAAEsd,KAAMA,EAAK54B,MAAO44B,MAInEmoR,EAAMnoR,KAAO2tP,CAAAA,MAEbw6B,EAAMnoR,KAAO+nR,EACXhgT,OAAOuB,OAAO,CAAC,EAAGoZ,EAAM,CAAEsd,KAAMA,KAChCA,IAAAA,GAAAA,CAxWR,CA6WG+6N,ICpWH,SAAUyf,GAAAA,IAGJ4tC,EAAiB,2BACRl/S,KAAKqrJ,SAAS8zJ,MAAAA,KAClB9zJ,SAAS8zJ,IAAM,CAAC,IAAD,CAEf,EAaT7tC,EAASuoC,gBAAkB,SAAS/zC,GAAAA,OAClCo5C,EAAejgT,KAAKe,WAAAA,IACNA,KAAKqrJ,SAAS8zJ,IAAIr5C,EAAAA,EAclCwL,EAAS8tC,aAAe,SAASt5C,EAAUu5C,GAAAA,OACzCH,EAAejgT,KAAKe,MAAAA,KACfqrJ,SAAS8zJ,IAAIr5C,GAAYu5C,EACvBr/S,IAAAA,EAaTsxQ,EAASwoC,eAAiB,SAASh0C,GAAAA,OACjCo5C,EAAejgT,KAAKe,WAAAA,IAETA,KAAKqrJ,SAAS8zJ,IAAIr5C,GACpB9lQ,KAAKqrJ,SAAS8zJ,IAAIr5C,GAEpB,MA1DX,CA4DGjU,GAAMY,KCpET,SAAUZ,GAojERA,EAAMytD,eAAiBztD,EAAM/yP,UAAUwgT,eAAiB,SAAS5xS,GAAAA,IAsF7D6xS,EACAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EA7FEC,EAAiBC,EAEjBC,EAAmB,CACrB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACnB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACnB,CAAC,EAAG,EAAG,EAAG,GAAM,EAAG,EAAG,GACtB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACnB,CAAC,EAAG,EAAG,GAAM,GAAM,EAAG,EAAG,GACzB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAGjBC,EAAmB,CACrB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACnB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACnB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACnB,CAAC,EAAG,EAAG,EAAG,GAAM,EAAG,EAAG,IAGpBC,EAAkB,CAAExrR,EAAG,EAAGk1E,EAAG,EAAGu2M,GAAI,EAAGC,GAAI,EAAGz4M,EAAG,EAAGlf,EAAG,EAAGuoB,EAAG,GAE7DqvM,EAAsB,GACrB,IACA,IACA,IACA,KACG,MACA,MACA,MACA,GAGJC,EAAc,CAChB,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,OACA,OACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,UAGEC,EAAuB,IAAIvwP,OAC7B,qGAGEwwP,GAAAA,EAWFC,EAPU,OASPnB,eAAiB,CAAC,EAAD,IAkBlBoB,EAAe,SAASv9M,GAAAA,IACtBj/C,EAAWi/C,EAAG99F,aAChBwwB,EAAQquB,GAAY,EACpBy8P,EAAWN,EAAoBxqR,GAAAA,YAAAA,IAE7B8qR,EACKb,EAA0B,IAAXa,GAA6B,IAAXz8P,IACrB,MAAVruB,GAA4B,MAAVA,EACpB,KACE0qR,EAAqBr7Q,KAAKrP,GAE5B,IACY,IAAVA,EAEF,IAEF,KAGL+qR,EAAsB,SAAS9pR,GAAAA,IAC5B,IAAW+pR,EAAP3iT,EAAI,EAAaA,EAAI44B,EAAK14B,OAAQF,IAAK,IAE7B,OADjB2iT,EAAWH,EAAa5pR,EAAKiqC,OAAO7iE,KAAAA,OAAAA,EAG7B,GAAiB,MAAb2iT,EAAAA,OAAAA,CACF,SAGJ,EAKLC,EAAmB,SAASj7S,EAAOqG,EAAO60S,EAAer7S,GAAAA,IAEzDs7S,EACAC,EACA/iT,EACAqI,EAJE26S,EAAQh1S,EAAMxG,GAAAA,OAKVw7S,GAAAA,IACD,QACA,IAoGK,IAGL,UACA,UACA,UACA,UACA,MACHV,GAAAA,EAAc,MA3GA,IAEX,QACA,eAGA,KACCA,IACFU,EAAQ,gBAIP,KACHV,GAAAA,EAEAU,EAAQ,cAGL,KAyFW,IAEX,KACHA,EAAQ,UA3FA,IAGL,KAEDx7S,EAAQ,GACRA,EAAQ,GAAKwG,EAAM9N,QACqB,QAAtC4iT,EAAQD,EAAcr7S,EAAQ,KAA0B,OAAVs7S,GAChB,QAA9BC,EAAQ/0S,EAAMxG,EAAQ,KAA0B,OAAVu7S,EAExCC,EAAQ,IACCV,IACTS,EAAQ,MAEVC,EAAQD,IAAUD,EAAQC,EAAQ,cAG/B,KAEHC,EACY,QAFZF,EAAQt7S,EAAQ,EAAIq7S,EAAcr7S,EAAQ,GAAK,MAG7CA,EAAQ,EAAIwG,EAAM9N,QACG,OAArB8N,EAAMxG,EAAQ,GACV,KACA,cAGH,QACCA,EAAQ,GAAkC,OAA7Bq7S,EAAcr7S,EAAQ,GAAa,CAClDw7S,EAAQ,WAEH,GAAIV,EAAa,CACtBU,EAAQ,cAGVhjT,EAAIwH,EAAQ,EACZa,EAAM2F,EAAM9N,OACLF,EAAIqI,GAAoB,OAAb2F,EAAMhO,IACtBA,IAGAgjT,EADEhjT,EAAIqI,GAAoB,OAAb2F,EAAMhO,GACX,KAEA,cAIP,SACCuhT,IAAgBC,EAAU,KAE5Bn5S,EAAM2F,EAAM9N,OACZF,EAAIwH,EAAQ,EACLxH,EAAIqI,GAAoB,QAAb2F,EAAMhO,IACtBA,IAAAA,GAEEA,EAAIqI,EAAK,KACPsM,EAAIhN,EAAMH,GACVy7S,EAAgBtuS,GAAK,MAAUA,GAAK,MAAiB,QAANA,EAAAA,GACnDmuS,EAAQ90S,EAAMhO,GACVijT,IAA2B,MAAVH,GAA2B,OAAVA,GAAiB,CACrDE,EAAQ,YAMZA,EADEx7S,EAAQ,GAAoC,OAA9Bs7S,EAAQ90S,EAAMxG,EAAQ,IAC9B,IAEAq7S,EAAcr7S,EAAQ,aAI7B,IACH86S,GAAAA,EACAjB,GAAAA,EACA2B,EAAQT,EAAAA,MAAAA,IAGL,IACHjB,GAAAA,EACA0B,EAAQ,IAWA,OAGLA,CAAAA,EAkBLE,EAAgB,SAAStqR,EAAMuqR,EAAmBC,GAAAA,IAChDvqB,EAAYjgQ,EAAKgtB,MAAM,WACvBw9P,GACFC,EAAexqB,EAAWuqB,EAAQ,CAAEE,QAASf,IAE/C1pB,EAAUvgP,UACV6qQ,GAAqBA,EAAkB7qQ,UAChCugP,EAAU73R,KAAK,KAKpBqiT,EAAiB,SAAS17S,EAAOy7S,EAAQhsK,GAAAA,IACvCtsC,EAEF9qG,EACAwH,EACA+7S,EACA/6L,EACAg7L,GAAW,EACXn7S,EAAMV,EAAMzH,OACZujT,EAAW,EACXZ,EAAgB,GAChBa,EAAanB,EAAOR,EAAmBD,EACvC9zS,EAAQ,OAEVs0S,GAAAA,EAEAjB,GAAAA,EACAC,GAAAA,EACKthT,EAAI,EAAGA,EAAIqI,EAAKrI,IACnBgO,EAAMhO,GAAKwiT,EAAa76S,EAAM3H,IAAAA,IAE3BwH,EAAQ,EAAGA,EAAQa,EAAKb,IAAS,IACpCghH,EAAYi7L,EACZZ,EAAcr7S,GAASo7S,EACrBj7S,EACAqG,EACA60S,EACAr7S,GAGFsjG,EAAoB,KADpB24M,EAAWC,EAAWl7L,GAAWw5L,EAAgBa,EAAcr7S,MAE/Di8S,GAAY,GACZL,EAAO57S,GAAS+7S,EAAWG,EAAWD,GAAU,GAC5C34M,EAAS,EAAG,GACC,KAAXA,EAAiB,KACd9qG,EAAIwjT,EAASxjT,EAAIwH,EAAOxH,IAC3BojT,EAAOpjT,GAAK,EAEdwjT,GAAW,OAEXA,GAAW,KAGHE,EAAWD,GAAU,IAEd,IAAbD,IACFA,EAAUh8S,QAAAA,GAGRg8S,GAAW,EAAG,KACXxjT,EAAIwjT,EAASxjT,EAAIwH,EAAOxH,IAC3BojT,EAAOpjT,GAAKujT,EAEdC,GAAW,EAGM,MAAjBx1S,EAAMxG,KACR47S,EAAO57S,GAAS,GAElB4vI,EAAOksK,SAAWC,CAAAA,CAEhBjC,GAxFa,SAAStzS,EAAOo1S,EAAQljT,GAAAA,IACpC,IAAIF,EAAI,EAAGA,EAAIE,EAAQF,IAAAA,GACT,MAAbgO,EAAMhO,GAAY,CACpBojT,EAAOpjT,GAAKuiT,EAAAA,IACP,IAAI95P,EAAIzoD,EAAI,EAAGyoD,GAAK,GACN,OAAbz6C,EAAMy6C,GADgBA,IAExB26P,EAAO36P,GAAK85P,CAAAA,CAAAA,CANH,CAyFFv0S,EAAOo1S,EAAQ/6S,EAAAA,EAM5Bs7S,EAAiB,SACnBr+D,EACAuzC,EACAsqB,EACAC,EACAhsK,GAAAA,KAEIA,EAAOksK,QAAUh+D,GAAAA,CAAAA,GAGP,IAAVA,GAjSM,IAiSSi9D,IAAqBlB,EAAAA,OACtCxoB,EAAUvgP,eACV6qQ,GAAqBA,EAAkB7qQ,WAAAA,IAAAA,IAGrC2sD,EACF/8C,EACA5+C,EACA2+C,EACA5/C,EAAMwwR,EAAU34R,OAChBmJ,EAAQ,EAEHA,EAAQhB,GAAK,IACd+6S,EAAO/5S,IAAUi8O,EAAO,KAC1Bh8O,EAAMD,EAAQ,EACPC,EAAMjB,GAAO+6S,EAAO95S,IAAQg8O,GACjCh8O,IAAAA,IAEG2+C,EAAM5+C,EAAO6+C,EAAO5+C,EAAM,EAAG2+C,EAAMC,EAAMD,IAAOC,IACnD+8C,EAAK4zL,EAAU5wO,GACf4wO,EAAU5wO,GAAO4wO,EAAU3wO,GAC3B2wO,EAAU3wO,GAAQ+8C,EACdk+M,IACFl+M,EAAKk+M,EAAkBl7P,GACvBk7P,EAAkBl7P,GAAOk7P,EAAkBj7P,GAC3Ci7P,EAAkBj7P,GAAQ+8C,GAG9B57F,EAAQC,CAAAA,CAEVD,GAAAA,CAAAA,CAAAA,EAmBAu6S,EAAW,SAAShrR,EAAMuqR,EAAmBC,GAAAA,IAC3CvqB,EAAYjgQ,EAAKgtB,MAAM,IACzBwxF,EAAS,CAAEksK,QAASf,GAAAA,OAEjBa,IACHA,EAAS,IAEXC,EAAexqB,EAAWuqB,EAAQhsK,GApBf,SAASyhJ,EAAWuqB,EAAQhsK,GAAAA,GACxB,IAAnBA,EAAOksK,SAAiB3B,EAAAA,IACrB,IAAWn6S,EAAPxH,EAAI,EAAUA,EAAI64R,EAAU34R,OAAQF,IACzB,IAAdojT,EAAOpjT,KACTwH,EAAQ46S,EAAY9zS,QAAQuqR,EAAU74R,MACzB,IACX64R,EAAU74R,GAAKoiT,EAAY56S,EAAQ,IANxB,CAqBJqxR,EAAWuqB,EAAQhsK,GAClCusK,EAAeE,EAAahrB,EAAWsqB,EAAmBC,EAAQhsK,GAClEusK,EA5VU,EA4Vc9qB,EAAWsqB,EAAmBC,EAAQhsK,GACvDyhJ,EAAU73R,KAAK,iBAYnBogT,eAAe0C,cAAgB,SAClClrR,EACAuqR,EACAC,GAAAA,GAlWU,SAASxqR,EAAMuqR,GAAAA,GACrBA,EAAAA,IACG,IAAInjT,EAAI,EAAGA,EAAI44B,EAAK14B,OAAQF,IAC/BmjT,EAAkBnjT,GAAKA,OAAAA,IAGvBwhT,IACFA,EAAWkB,EAAoB9pR,SAAAA,IAE7B8oR,IACFA,EAAYgB,EAAoB9pR,GAAAA,CAVxB,CAoWJA,EAAMuqR,GACP5B,IAAeE,GAAiBC,EAI9B,GAAIH,GAAeE,GAAgBD,EAAWE,EAEnDa,EAAOf,EArXC,EADA,EAuXR5oR,EAAOsqR,EAActqR,EAAMuqR,EAAmBC,QACzC,IAAK7B,GAAeE,GAAgBC,EAEzCa,EAAOf,EAzXC,EADA,EA2XR5oR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,GACzCxqR,EAAOsqR,EAActqR,EAAMuqR,QACtB,IAAI5B,GAAgBC,GAAaC,GAAiBC,GAIlD,GAAIH,IAAgBE,GAAgBD,EAAWE,EAEpD9oR,EAAOsqR,EAActqR,EAAMuqR,GACvB3B,GAEFe,EAtYM,EAuYN3pR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,KAGzCb,EAzYM,EA0YN3pR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,GACzCxqR,EAAOsqR,EAActqR,EAAMuqR,SAExB,GAAI5B,GAAeC,IAAaC,GAAgBC,EAErDa,EA/YQ,EAgZR3pR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,GACzCxqR,EAAOsqR,EAActqR,EAAMuqR,QACtB,IAAK5B,IAAgBE,GAAgBD,EAAWE,EAAW,KAE5DqC,EAA0BpC,EAC1BH,GAEFe,EAvZM,EAwZN3pR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,GACzCb,EA1ZM,EA2ZNZ,GAAAA,EACA/oR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,GACzCzB,EAAuBoC,IAGvBxB,EAhaM,EAiaN3pR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,GACzCxqR,EAAOsqR,EAActqR,EAAMuqR,GAC3BZ,EAlaM,EAmaNZ,GAAAA,EACA/oR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,GACzCzB,EAAuBoC,EACvBnrR,EAAOsqR,EAActqR,EAAMuqR,GAAAA,OAxC7BZ,EA/XQ,EAgYR3pR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,QAdzCb,EAAOf,EAjXC,EADA,EAmXR5oR,EAAOgrR,EAAShrR,EAAMuqR,EAAmBC,GAAAA,OAuDpCxqR,CAAAA,EAAAA,KAcJwoR,eAAe9tI,WAAa,SAAS9jK,GACpCA,IACF+xS,EAAc/xS,EAAQw0S,cACtBvC,EAAejyS,EAAQy0S,eACvBzC,EAAWhyS,EAAQ00S,WACnBxC,EAAYlyS,EAAQ20S,YACpBxC,EAAuBnyS,EAAQ40S,oBAAAA,EAAAA,KAI9BhD,eAAe9tI,WAAW9jK,GACxB1N,KAAKs/S,cAAAA,EAAAA,IAGVS,EA5jFmB,CACrB,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,MACA,IACA,MACA,MACA,IACA,MACA,MACA,IACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,KACA,MACA,MACA,IACA,MACA,MACA,MACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,MACA,MACA,MACA,MACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,MACA,MACA,MACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,KACA,IACA,IACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,KACA,IACA,IACA,IACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,IACA,IACA,IACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,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","sources":["../node_modules/classnames/index.js","../node_modules/html2canvas/node_modules/tslib/tslib.es6.js","../node_modules/html2canvas/node_modules/src/Util.ts","../node_modules/src/css/layout/bounds.ts","../node_modules/html2canvas/node_modules/css-line-break/node_modules/src/Util.ts","../node_modules/html2canvas/node_modules/css-line-break/node_modules/utrie/node_modules/src/index.ts","../node_modules/html2canvas/node_modules/css-line-break/node_modules/src/Trie.ts","../node_modules/html2canvas/node_modules/src/linebreak-trie.ts","../node_modules/html2canvas/node_modules/src/LineBreak.ts","../node_modules/src/css/syntax/tokenizer.ts","../node_modules/src/css/syntax/parser.ts","../node_modules/src/css/types/length.ts","../node_modules/src/css/types/length-percentage.ts","../node_modules/src/css/types/angle.ts","../node_modules/src/css/types/color.ts","../node_modules/src/css/property-descriptors/background-clip.ts","../node_modules/src/css/property-descriptors/background-color.ts","../node_modules/src/css/types/functions/gradient.ts","../node_modules/src/css/types/functions/-prefix-linear-gradient.ts","../node_modules/src/css/types/functions/radial-gradient.ts","../node_modules/src/css/types/functions/-prefix-radial-gradient.ts","../node_modules/src/css/types/image.ts","../node_modules/src/css/property-descriptors/background-size.ts","../node_modules/src/css/types/functions/linear-gradient.ts","../node_modules/src/css/types/functions/-webkit-gradient.ts","../node_modules/src/css/property-descriptors/background-image.ts","../node_modules/src/css/property-descriptors/background-origin.ts","../node_modules/src/css/property-descriptors/background-position.ts","../node_modules/src/css/property-descriptors/background-repeat.ts","../node_modules/src/css/property-descriptors/line-break.ts","../node_modules/src/css/property-descriptors/border-color.ts","../node_modules/src/css/property-descriptors/border-radius.ts","../node_modules/src/css/property-descriptors/border-style.ts","../node_modules/src/css/property-descriptors/border-width.ts","../node_modules/src/css/property-descriptors/color.ts","../node_modules/src/css/property-descriptors/direction.ts","../node_modules/src/css/property-descriptors/display.ts","../node_modules/src/css/property-descriptors/float.ts","../node_modules/src/css/property-descriptors/letter-spacing.ts","../node_modules/src/css/property-descriptors/word-break.ts","../node_modules/src/css/property-descriptors/line-height.ts","../node_modules/src/css/property-descriptors/list-style-image.ts","../node_modules/src/css/property-descriptors/list-style-position.ts","../node_modules/src/css/property-descriptors/list-style-type.ts","../node_modules/src/css/property-descriptors/margin.ts","../node_modules/src/css/property-descriptors/overflow.ts","../node_modules/src/css/property-descriptors/overflow-wrap.ts","../node_modules/src/css/property-descriptors/padding.ts","../node_modules/src/css/property-descriptors/text-align.ts","../node_modules/src/css/property-descriptors/position.ts","../node_modules/src/css/property-descriptors/text-shadow.ts","../node_modules/src/css/property-descriptors/text-transform.ts","../node_modules/src/css/property-descriptors/transform.ts","../node_modules/src/css/property-descriptors/transform-origin.ts","../node_modules/src/css/property-descriptors/visibility.ts","../node_modules/html2canvas/node_modules/text-segmentation/node_modules/src/Util.ts","../node_modules/src/css/property-descriptors/z-index.ts","../node_modules/src/css/types/time.ts","../node_modules/src/css/property-descriptors/opacity.ts","../node_modules/src/css/property-descriptors/text-decoration-color.ts","../node_modules/src/css/property-descriptors/text-decoration-line.ts","../node_modules/src/css/property-descriptors/font-family.ts","../node_modules/src/css/property-descriptors/font-size.ts","../node_modules/src/css/property-descriptors/font-weight.ts","../node_modules/src/css/property-descriptors/font-variant.ts","../node_modules/src/css/property-descriptors/font-style.ts","../node_modules/src/core/bitwise.ts","../node_modules/src/css/property-descriptors/content.ts","../node_modules/src/css/property-descriptors/counter-increment.ts","../node_modules/src/css/property-descriptors/counter-reset.ts","../node_modules/src/css/property-descriptors/duration.ts","../node_modules/src/css/property-descriptors/quotes.ts","../node_modules/src/css/property-descriptors/box-shadow.ts","../node_modules/src/css/property-descriptors/paint-order.ts","../node_modules/src/css/property-descriptors/webkit-text-stroke-color.ts","../node_modules/src/css/property-descriptors/webkit-text-stroke-width.ts","../node_modules/src/css/index.ts","../node_modules/src/core/debugger.ts","../node_modules/src/dom/element-container.ts","../node_modules/html2canvas/node_modules/src/grapheme-break-trie.ts","../node_modules/html2canvas/node_modules/text-segmentation/node_modules/utrie/node_modules/src/index.ts","../node_modules/html2canvas/node_modules/text-segmentation/node_modules/src/Trie.ts","../node_modules/html2canvas/node_modules/src/GraphemeBreak.ts","../node_modules/src/dom/document-cloner.ts","../node_modules/src/core/features.ts","../node_modules/src/css/layout/text.ts","../node_modules/src/dom/text-container.ts","../node_modules/src/dom/replaced-elements/image-element-container.ts","../node_modules/src/dom/replaced-elements/canvas-element-container.ts","../node_modules/src/dom/replaced-elements/svg-element-container.ts","../node_modules/src/dom/elements/li-element-container.ts","../node_modules/src/dom/elements/ol-element-container.ts","../node_modules/src/dom/replaced-elements/input-element-container.ts","../node_modules/src/dom/elements/select-element-container.ts","../node_modules/src/dom/elements/textarea-element-container.ts","../node_modules/src/dom/replaced-elements/iframe-element-container.ts","../node_modules/src/dom/node-parser.ts","../node_modules/src/css/types/functions/counter.ts","../node_modules/src/render/bound-curves.ts","../node_modules/src/core/cache-storage.ts","../node_modules/src/render/vector.ts","../node_modules/src/render/bezier-curve.ts","../node_modules/src/render/effects.ts","../node_modules/src/render/path.ts","../node_modules/src/render/stacking-context.ts","../node_modules/src/render/border.ts","../node_modules/src/render/box-sizing.ts","../node_modules/src/render/background.ts","../node_modules/src/core/util.ts","../node_modules/src/render/font-metrics.ts","../node_modules/src/render/renderer.ts","../node_modules/src/render/canvas/canvas-renderer.ts","../node_modules/src/render/canvas/foreignobject-renderer.ts","../node_modules/src/core/logger.ts","../node_modules/src/core/context.ts","../node_modules/src/index.ts","../node_modules/moment-timezone/index.js","../node_modules/moment-timezone/moment-timezone.js","../node_modules/moment-timezone/node_modules/moment/moment.js","../node_modules/moment/moment.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/client.js","../node_modules/react-dom/index.js","../node_modules/react-table/src/publicUtils.js","../node_modules/react-table/src/utils.js","../node_modules/react-table/src/makeDefaultPluginHooks.js","../node_modules/react-table/src/hooks/useColumnVisibility.js","../node_modules/react-table/src/hooks/useTable.js","../node_modules/react-table/src/plugin-hooks/useExpanded.js","../node_modules/react-table/src/filterTypes.js","../node_modules/react-table/src/plugin-hooks/useFilters.js","../node_modules/react-table/src/plugin-hooks/useGlobalFilter.js","../node_modules/react-table/src/aggregations.js","../node_modules/react-table/src/plugin-hooks/useGroupBy.js","../node_modules/react-table/src/sortTypes.js","../node_modules/react-table/src/plugin-hooks/useSortBy.js","../node_modules/react-table/src/plugin-hooks/usePagination.js","../node_modules/react-table/src/plugin-hooks/_UNSTABLE_usePivotColumns.js","../node_modules/react-table/src/plugin-hooks/useRowSelect.js","../node_modules/react-table/src/plugin-hooks/useRowState.js","../node_modules/react-table/src/plugin-hooks/useColumnOrder.js","../node_modules/react-table/src/plugin-hooks/useResizeColumns.js","../node_modules/react-table/src/plugin-hooks/useAbsoluteLayout.js","../node_modules/react-table/src/plugin-hooks/useBlockLayout.js","../node_modules/react-table/src/plugin-hooks/useFlexLayout.js","../node_modules/react-table/src/plugin-hooks/useGridLayout.js","../node_modules/react-table/index.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","../node_modules/@babel/runtime/helpers/esm/createSuper.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../webpack/bootstrap","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/global","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/node module decorator","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","services/reducers/actionTypes.js","services/reducers/langaugeReducer.js","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","services/reducers/coursesReducer.js","services/reducers/userReducer.js","../node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js","../node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js","services/api/index.js","services/context/index.js","constants/index.js","../node_modules/@babel/runtime/helpers/esm/construct.js","../node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","../node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","../node_modules/@remix-run/router/history.ts","../node_modules/@remix-run/router/utils.ts","../node_modules/@babel/runtime/helpers/esm/toArray.js","../node_modules/@remix-run/router/router.ts","../node_modules/react-router/lib/use-sync-external-store-shim/useSyncExternalStoreShimClient.ts","../node_modules/react-router/lib/use-sync-external-store-shim/index.ts","../node_modules/react-router/lib/context.ts","../node_modules/react-router/lib/hooks.tsx","../node_modules/react-router/lib/components.tsx","../node_modules/react-router-dom/dom.ts","../node_modules/react-router-dom/index.tsx","../node_modules/@babel/runtime/helpers/esm/extends.js","assets/right-arrow.svg","components/Container/index.js","components/Footer/index.jsx","assets/leftArrow.svg","assets/dropdown-arrow.svg","assets/email-icon.svg","assets/password-icon.svg","assets/close-icon.svg","assets/user-icon.svg","assets/search-icon.svg","assets/download-icon.svg","assets/house-icon.svg","assets/clipboard-icon.svg","assets/clock-icon.svg","assets/trash-icon.svg","assets/edit-icon.svg","assets/edit-icon2.svg","assets/checkmark-circle-outline.svg","assets/copy-icon.svg","assets/video-icon.svg","assets/plus-icon.svg","assets/calendar-icon.svg","assets/reading_tab_icon.svg","assets/writing_tab_icon.svg","assets/listening_tab_icon.svg","assets/grammer_tab_icon.svg","assets/timer_icon.svg","assets/star.svg","assets/avatar-icon.svg","assets/selected-avatar-icon.svg","assets/attach_icon.svg","assets/chat_send_icon.svg","assets/word-icon.svg","assets/pdf-icon.svg","assets/lock-Icon.svg","assets/png-icon.svg","assets/jpg-icon.svg","assets/seen-message-icon.svg","assets/sent-message-icon.svg","assets/download-icon-v2.svg","assets/eye-icon.svg","assets/phone-icon.svg","assets/whatsApp-Icon.svg","assets/leave-review-icon.svg","assets/contact-icon.svg","assets/certificate-icon.svg","assets/copy-to-clipboard-icon.svg","assets/replay-icon.svg","assets/chat-approve-icon.svg","assets/changes_spiner_done.svg","assets/minus-icon.svg","assets/remove-icon.svg","assets/add-icon.svg","components/Icon/index.js","components/Button/index.js","containers/Header/index.jsx","services/hooks/index.js","components/ProtectedRoute/index.js","components/Spinner/index.js","services/utils/index.js","components/VideoPlayer/index.jsx","components/AudioPlayer/index.js","pages/MediaPlayerPage/index.js","pages/Course/CertificateProgress/index.js","pages/Course/Details/index.js","../node_modules/tslib/tslib.es6.js","../node_modules/framer-motion/dist/es/utils/process.mjs","../node_modules/framer-motion/dist/es/motion/features/definitions.mjs","../node_modules/framer-motion/dist/es/context/LazyContext.mjs","../node_modules/framer-motion/dist/es/motion/features/use-features.mjs","../node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs","../node_modules/framer-motion/dist/es/context/MotionContext/index.mjs","../node_modules/framer-motion/dist/es/context/PresenceContext.mjs","../node_modules/framer-motion/dist/es/utils/is-browser.mjs","../node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs","../node_modules/framer-motion/dist/es/utils/use-reduced-motion.mjs","../node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs","../node_modules/framer-motion/dist/es/utils/is-ref-object.mjs","../node_modules/framer-motion/dist/es/render/utils/variants.mjs","../node_modules/framer-motion/dist/es/context/MotionContext/create.mjs","../node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs","../node_modules/framer-motion/dist/es/utils/use-constant.mjs","../node_modules/framer-motion/dist/es/projection/node/state.mjs","../node_modules/framer-motion/dist/es/projection/node/id.mjs","../node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs","../node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs","../node_modules/framer-motion/dist/es/motion/utils/VisualElementHandler.mjs","../node_modules/framer-motion/dist/es/motion/index.mjs","../node_modules/framer-motion/dist/es/motion/features/use-projection.mjs","../node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs","../node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs","../node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs","../node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs","../node_modules/framer-motion/dist/es/render/html/utils/transform.mjs","../node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs","../node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs","../node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs","../node_modules/style-value-types/dist/es/utils.mjs","../node_modules/style-value-types/dist/es/numbers/units.mjs","../node_modules/style-value-types/dist/es/numbers/index.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs","../node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs","../node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs","../node_modules/framer-motion/dist/es/render/html/use-props.mjs","../node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/path.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs","../node_modules/framer-motion/dist/es/render/svg/use-props.mjs","../node_modules/framer-motion/dist/es/render/dom/use-render.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs","../node_modules/framer-motion/dist/es/render/html/utils/render.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/render.mjs","../node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs","../node_modules/framer-motion/dist/es/utils/resolve-value.mjs","../node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs","../node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs","../node_modules/framer-motion/dist/es/render/svg/config-motion.mjs","../node_modules/framer-motion/dist/es/render/utils/types.mjs","../node_modules/framer-motion/dist/es/render/html/config-motion.mjs","../node_modules/framer-motion/dist/es/events/use-dom-event.mjs","../node_modules/framer-motion/dist/es/gestures/utils/event-type.mjs","../node_modules/framer-motion/dist/es/events/event-info.mjs","../node_modules/framer-motion/dist/es/events/use-pointer-event.mjs","../node_modules/framer-motion/dist/es/events/utils.mjs","../node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs","../node_modules/framer-motion/dist/es/gestures/use-hover-gesture.mjs","../node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs","../node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs","../node_modules/popmotion/dist/es/utils/pipe.mjs","../node_modules/framer-motion/dist/es/utils/warn-once.mjs","../node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs","../node_modules/framer-motion/dist/es/motion/features/viewport/use-viewport.mjs","../node_modules/framer-motion/dist/es/motion/utils/make-renderless-component.mjs","../node_modules/framer-motion/dist/es/motion/features/gestures.mjs","../node_modules/framer-motion/dist/es/gestures/use-tap-gesture.mjs","../node_modules/framer-motion/dist/es/gestures/use-focus-gesture.mjs","../node_modules/framer-motion/dist/es/utils/use-id.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs","../node_modules/framer-motion/dist/es/utils/shallow-compare.mjs","../node_modules/popmotion/dist/es/utils/clamp.mjs","../node_modules/popmotion/dist/es/animations/utils/find-spring.mjs","../node_modules/popmotion/dist/es/animations/generators/spring.mjs","../node_modules/popmotion/dist/es/utils/progress.mjs","../node_modules/popmotion/dist/es/utils/mix.mjs","../node_modules/style-value-types/dist/es/color/utils.mjs","../node_modules/style-value-types/dist/es/color/rgba.mjs","../node_modules/style-value-types/dist/es/color/hex.mjs","../node_modules/style-value-types/dist/es/color/hsla.mjs","../node_modules/popmotion/dist/es/utils/hsla-to-rgba.mjs","../node_modules/popmotion/dist/es/utils/mix-color.mjs","../node_modules/style-value-types/dist/es/color/index.mjs","../node_modules/style-value-types/dist/es/complex/index.mjs","../node_modules/popmotion/dist/es/utils/inc.mjs","../node_modules/popmotion/dist/es/utils/mix-complex.mjs","../node_modules/popmotion/dist/es/utils/interpolate.mjs","../node_modules/popmotion/dist/es/easing/utils.mjs","../node_modules/popmotion/dist/es/easing/index.mjs","../node_modules/popmotion/dist/es/animations/generators/keyframes.mjs","../node_modules/popmotion/dist/es/animations/utils/detect-animation-from-options.mjs","../node_modules/popmotion/dist/es/animations/generators/decay.mjs","../node_modules/framesync/dist/es/on-next-frame.mjs","../node_modules/framesync/dist/es/index.mjs","../node_modules/framesync/dist/es/create-render-step.mjs","../node_modules/popmotion/dist/es/animations/utils/elapsed.mjs","../node_modules/popmotion/dist/es/animations/index.mjs","../node_modules/popmotion/dist/es/utils/velocity-per-second.mjs","../node_modules/framer-motion/dist/es/utils/time-conversion.mjs","../node_modules/popmotion/dist/es/easing/cubic-bezier.mjs","../node_modules/framer-motion/dist/es/animation/utils/easing.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs","../node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs","../node_modules/style-value-types/dist/es/complex/filter.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs","../node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs","../node_modules/framer-motion/dist/es/animation/utils/transitions.mjs","../node_modules/popmotion/dist/es/animations/inertia.mjs","../node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs","../node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs","../node_modules/framer-motion/dist/es/utils/array.mjs","../node_modules/framer-motion/dist/es/utils/subscription-manager.mjs","../node_modules/framer-motion/dist/es/value/index.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs","../node_modules/framer-motion/dist/es/render/utils/setters.mjs","../node_modules/framer-motion/dist/es/render/utils/animation.mjs","../node_modules/framer-motion/dist/es/render/utils/animation-state.mjs","../node_modules/framer-motion/dist/es/motion/features/animations.mjs","../node_modules/popmotion/dist/es/utils/is-point.mjs","../node_modules/popmotion/dist/es/utils/is-point-3d.mjs","../node_modules/popmotion/dist/es/utils/distance.mjs","../node_modules/framer-motion/dist/es/gestures/PanSession.mjs","../node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs","../node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs","../node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs","../node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs","../node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs","../node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs","../node_modules/framer-motion/dist/es/projection/utils/measure.mjs","../node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs","../node_modules/framer-motion/dist/es/projection/geometry/models.mjs","../node_modules/framer-motion/dist/es/motion/features/drag.mjs","../node_modules/framer-motion/dist/es/gestures/use-pan-gesture.mjs","../node_modules/framer-motion/dist/es/gestures/drag/use-drag.mjs","../node_modules/framer-motion/dist/es/render/utils/lifecycles.mjs","../node_modules/framer-motion/dist/es/render/index.mjs","../node_modules/framer-motion/dist/es/render/utils/motion-values.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/parse-dom-variant.mjs","../node_modules/framer-motion/dist/es/render/html/visual-element.mjs","../node_modules/framer-motion/dist/es/render/svg/visual-element.mjs","../node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs","../node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs","../node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs","../node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs","../node_modules/framer-motion/dist/es/motion/features/layout/index.mjs","../node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs","../node_modules/framer-motion/dist/es/projection/geometry/copy.mjs","../node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs","../node_modules/framer-motion/dist/es/projection/geometry/utils.mjs","../node_modules/framer-motion/dist/es/projection/shared/stack.mjs","../node_modules/framer-motion/dist/es/projection/styles/transform.mjs","../node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs","../node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs","../node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs","../node_modules/framer-motion/dist/es/animation/animate.mjs","../node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs","../node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs","../node_modules/framer-motion/dist/es/render/dom/motion.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs","components/Modal/index.js","components/Modal/Notification/index.js","components/UnsupportedFile/index.js","pages/Course/index.js","components/Pagination/index.js","pages/Chapter/index.js","pages/Quiz/Question/index.jsx","pages/Quiz/AnswerFeedback/index.jsx","pages/Quiz/index.jsx","components/Input/index.js","components/Divider/index.js","components/Input/OtpInputWithValidation/index.js","pages/Login/index.jsx","components/Timer/index.js","pages/ForgotMyPassword/index.jsx","pages/MissingPage/index.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","pages/PersonalArea/CourseCard/index.js","components/Tooltip/index.js","../node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs","../node_modules/framer-motion/dist/es/utils/use-force-update.mjs","components/Input/Select/index.jsx","pages/PersonalArea/UserPreferences/index.js","components/Box/index.js","pages/PersonalArea/index.js","pages/Unauthorized/index.js","components/Input/DatePicker/index.jsx","components/Calendar/Appointment/index.js","components/Calendar/CalendarDays/index.js","components/Calendar/index.js","pages/ManagementPanel/Table/index.jsx","components/Input/TextArea/index.js","pages/ManagementPanel/UserDetails/index.jsx","pages/ManagementPanel/index.jsx","components/Input/MultiSelect/index.js","pages/ClassesManagment/index.js","components/Input/AutoCompleteSelect/index.js","pages/AdvancedUserManagment/CustomerProductDetails/index.js","pages/AdvancedUserManagment/index.js","pages/AdvancedCoursesManagment/index.js","pages/Conversation/ConversationCard/index.js","pages/Conversation/File/index.js","pages/Conversation/Message/index.js","pages/Conversation/index.js","pages/IELTSFinalExam/index.js","pages/ReviewPage/index.js","../node_modules/fflate/esm/browser.js","../node_modules/jspdf/src/libs/globalObject.js","../node_modules/jspdf/src/libs/console.js","../node_modules/jspdf/src/libs/FileSaver.js","../node_modules/jspdf/src/libs/AtobBtoa.js","../node_modules/jspdf/src/libs/rgbcolor.js","../node_modules/jspdf/src/libs/md5.js","../node_modules/jspdf/src/libs/rc4.js","../node_modules/jspdf/src/libs/pdfsecurity.js","../node_modules/jspdf/src/libs/pdfname.js","../node_modules/jspdf/src/jspdf.js","../node_modules/jspdf/src/modules/acroform.js","../node_modules/jspdf/src/libs/fontFace.js","../node_modules/jspdf/src/modules/addimage.js","../node_modules/jspdf/src/modules/annotations.js","../node_modules/jspdf/src/modules/arabic.js","../node_modules/jspdf/src/modules/autoprint.js","../node_modules/jspdf/src/modules/canvas.js","../node_modules/jspdf/src/modules/cell.js","../node_modules/jspdf/src/modules/javascript.js","../node_modules/jspdf/src/modules/fileloading.js","../node_modules/jspdf/src/modules/context2d.js","../node_modules/jspdf/src/modules/filters.js","../node_modules/jspdf/src/modules/html.js","../node_modules/jspdf/src/modules/outline.js","../node_modules/jspdf/src/modules/jpeg_support.js","../node_modules/jspdf/src/libs/png.js","../node_modules/jspdf/src/modules/split_text_to_size.js","../node_modules/jspdf/src/libs/omggif.js","../node_modules/jspdf/src/libs/JPEGEncoder.js","../node_modules/jspdf/src/libs/BMPDecoder.js","../node_modules/jspdf/src/libs/WebPDecoder.js","../node_modules/jspdf/src/modules/png_support.js","../node_modules/jspdf/src/modules/gif_support.js","../node_modules/jspdf/src/modules/bmp_support.js","../node_modules/jspdf/src/modules/webp_support.js","../node_modules/jspdf/src/modules/rgba_support.js","../node_modules/jspdf/src/modules/setlanguage.js","../node_modules/jspdf/src/modules/standard_fonts_metrics.js","../node_modules/jspdf/src/modules/ttfsupport.js","../node_modules/jspdf/src/modules/svg.js","../node_modules/jspdf/src/modules/total_pages.js","../node_modules/jspdf/src/modules/viewerpreferences.js","../node_modules/jspdf/src/modules/xmp_metadata.js","../node_modules/jspdf/src/modules/utf8.js","../node_modules/jspdf/src/modules/vfs.js","../node_modules/jspdf/src/libs/bidiEngine.js","../node_modules/jspdf/src/libs/ttffont.js","pages/MyCourse/index.js","pages/SilentLogin/index.js","pages/HtmlEditor/HtmlElement/index.js","pages/HtmlEditor/HtmlPreview/index.js","pages/HtmlEditor/index.js","containers/App/index.js","index.js"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","export const toCodePoints = (str: string): number[] => {\n const codePoints = [];\n let i = 0;\n const length = str.length;\n while (i < length) {\n const value = str.charCodeAt(i++);\n if (value >= 0xd800 && value <= 0xdbff && i < length) {\n const extra = str.charCodeAt(i++);\n if ((extra & 0xfc00) === 0xdc00) {\n codePoints.push(((value & 0x3ff) << 10) + (extra & 0x3ff) + 0x10000);\n } else {\n codePoints.push(value);\n i--;\n }\n } else {\n codePoints.push(value);\n }\n }\n return codePoints;\n};\n\nexport const fromCodePoint = (...codePoints: number[]): string => {\n if (String.fromCodePoint) {\n return String.fromCodePoint(...codePoints);\n }\n\n const length = codePoints.length;\n if (!length) {\n return '';\n }\n\n const codeUnits = [];\n\n let index = -1;\n let result = '';\n while (++index < length) {\n let codePoint = codePoints[index];\n if (codePoint <= 0xffff) {\n codeUnits.push(codePoint);\n } else {\n codePoint -= 0x10000;\n codeUnits.push((codePoint >> 10) + 0xd800, (codePoint % 0x400) + 0xdc00);\n }\n if (index + 1 === length || codeUnits.length > 0x4000) {\n result += String.fromCharCode(...codeUnits);\n codeUnits.length = 0;\n }\n }\n return result;\n};\n\nconst chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const decode = (base64: string): ArrayBuffer | number[] => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const buffer =\n typeof ArrayBuffer !== 'undefined' &&\n typeof Uint8Array !== 'undefined' &&\n typeof Uint8Array.prototype.slice !== 'undefined'\n ? new ArrayBuffer(bufferLength)\n : new Array(bufferLength);\n const bytes = Array.isArray(buffer) ? buffer : new Uint8Array(buffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return buffer;\n};\n\nexport const polyUint16Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 2) {\n bytes.push((buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n\nexport const polyUint32Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 4) {\n bytes.push((buffer[i + 3] << 24) | (buffer[i + 2] << 16) | (buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n","import {Context} from '../../core/context';\n\nexport class Bounds {\n constructor(readonly left: number, readonly top: number, readonly width: number, readonly height: number) {}\n\n add(x: number, y: number, w: number, h: number): Bounds {\n return new Bounds(this.left + x, this.top + y, this.width + w, this.height + h);\n }\n\n static fromClientRect(context: Context, clientRect: ClientRect): Bounds {\n return new Bounds(\n clientRect.left + context.windowBounds.left,\n clientRect.top + context.windowBounds.top,\n clientRect.width,\n clientRect.height\n );\n }\n\n static fromDOMRectList(context: Context, domRectList: DOMRectList): Bounds {\n const domRect = Array.from(domRectList).find((rect) => rect.width !== 0);\n return domRect\n ? new Bounds(\n domRect.left + context.windowBounds.left,\n domRect.top + context.windowBounds.top,\n domRect.width,\n domRect.height\n )\n : Bounds.EMPTY;\n }\n\n static EMPTY = new Bounds(0, 0, 0, 0);\n}\n\nexport const parseBounds = (context: Context, node: Element): Bounds => {\n return Bounds.fromClientRect(context, node.getBoundingClientRect());\n};\n\nexport const parseDocumentSize = (document: Document): Bounds => {\n const body = document.body;\n const documentElement = document.documentElement;\n\n if (!body || !documentElement) {\n throw new Error(`Unable to get document size`);\n }\n const width = Math.max(\n Math.max(body.scrollWidth, documentElement.scrollWidth),\n Math.max(body.offsetWidth, documentElement.offsetWidth),\n Math.max(body.clientWidth, documentElement.clientWidth)\n );\n\n const height = Math.max(\n Math.max(body.scrollHeight, documentElement.scrollHeight),\n Math.max(body.offsetHeight, documentElement.offsetHeight),\n Math.max(body.clientHeight, documentElement.clientHeight)\n );\n\n return new Bounds(0, 0, width, height);\n};\n","const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const decode = (base64: string): ArrayBuffer | number[] => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const buffer =\n typeof ArrayBuffer !== 'undefined' &&\n typeof Uint8Array !== 'undefined' &&\n typeof Uint8Array.prototype.slice !== 'undefined'\n ? new ArrayBuffer(bufferLength)\n : new Array(bufferLength);\n const bytes = Array.isArray(buffer) ? buffer : new Uint8Array(buffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return buffer;\n};\n\nexport const polyUint16Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 2) {\n bytes.push((buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n\nexport const polyUint32Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 4) {\n bytes.push((buffer[i + 3] << 24) | (buffer[i + 2] << 16) | (buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n","const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const encode = (arraybuffer: ArrayBuffer): string => {\n let bytes = new Uint8Array(arraybuffer),\n i,\n len = bytes.length,\n base64 = '';\n\n for (i = 0; i < len; i += 3) {\n base64 += chars[bytes[i] >> 2];\n base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];\n base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];\n base64 += chars[bytes[i + 2] & 63];\n }\n\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + '=';\n } else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + '==';\n }\n\n return base64;\n};\n\nexport const decode = (base64: string): ArrayBuffer => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const arraybuffer = new ArrayBuffer(bufferLength),\n bytes = new Uint8Array(arraybuffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return arraybuffer;\n};\n","import {decode, polyUint16Array, polyUint32Array} from './Util';\n\nexport type int = number;\n\n/** Shift size for getting the index-2 table offset. */\nexport const UTRIE2_SHIFT_2 = 5;\n\n/** Shift size for getting the index-1 table offset. */\nexport const UTRIE2_SHIFT_1 = 6 + 5;\n\n/**\n * Shift size for shifting left the index array values.\n * Increases possible data size with 16-bit index values at the cost\n * of compactability.\n * This requires data blocks to be aligned by UTRIE2_DATA_GRANULARITY.\n */\nexport const UTRIE2_INDEX_SHIFT = 2;\n\n/**\n * Difference between the two shift sizes,\n * for getting an index-1 offset from an index-2 offset. 6=11-5\n */\nexport const UTRIE2_SHIFT_1_2 = UTRIE2_SHIFT_1 - UTRIE2_SHIFT_2;\n\n/**\n * The part of the index-2 table for U+D800..U+DBFF stores values for\n * lead surrogate code _units_ not code _points_.\n * Values for lead surrogate code _points_ are indexed with this portion of the table.\n * Length=32=0x20=0x400>>UTRIE2_SHIFT_2. (There are 1024=0x400 lead surrogates.)\n */\nexport const UTRIE2_LSCP_INDEX_2_OFFSET = 0x10000 >> UTRIE2_SHIFT_2;\n\n/** Number of entries in a data block. 32=0x20 */\nexport const UTRIE2_DATA_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_2;\n/** Mask for getting the lower bits for the in-data-block offset. */\nexport const UTRIE2_DATA_MASK = UTRIE2_DATA_BLOCK_LENGTH - 1;\n\nexport const UTRIE2_LSCP_INDEX_2_LENGTH = 0x400 >> UTRIE2_SHIFT_2;\n/** Count the lengths of both BMP pieces. 2080=0x820 */\nexport const UTRIE2_INDEX_2_BMP_LENGTH = UTRIE2_LSCP_INDEX_2_OFFSET + UTRIE2_LSCP_INDEX_2_LENGTH;\n/**\n * The 2-byte UTF-8 version of the index-2 table follows at offset 2080=0x820.\n * Length 32=0x20 for lead bytes C0..DF, regardless of UTRIE2_SHIFT_2.\n */\nexport const UTRIE2_UTF8_2B_INDEX_2_OFFSET = UTRIE2_INDEX_2_BMP_LENGTH;\nexport const UTRIE2_UTF8_2B_INDEX_2_LENGTH = 0x800 >> 6; /* U+0800 is the first code point after 2-byte UTF-8 */\n/**\n * The index-1 table, only used for supplementary code points, at offset 2112=0x840.\n * Variable length, for code points up to highStart, where the last single-value range starts.\n * Maximum length 512=0x200=0x100000>>UTRIE2_SHIFT_1.\n * (For 0x100000 supplementary code points U+10000..U+10ffff.)\n *\n * The part of the index-2 table for supplementary code points starts\n * after this index-1 table.\n *\n * Both the index-1 table and the following part of the index-2 table\n * are omitted completely if there is only BMP data.\n */\nexport const UTRIE2_INDEX_1_OFFSET = UTRIE2_UTF8_2B_INDEX_2_OFFSET + UTRIE2_UTF8_2B_INDEX_2_LENGTH;\n\n/**\n * Number of index-1 entries for the BMP. 32=0x20\n * This part of the index-1 table is omitted from the serialized form.\n */\nexport const UTRIE2_OMITTED_BMP_INDEX_1_LENGTH = 0x10000 >> UTRIE2_SHIFT_1;\n\n/** Number of entries in an index-2 block. 64=0x40 */\nexport const UTRIE2_INDEX_2_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_1_2;\n/** Mask for getting the lower bits for the in-index-2-block offset. */\nexport const UTRIE2_INDEX_2_MASK = UTRIE2_INDEX_2_BLOCK_LENGTH - 1;\n\nconst slice16 = (view: number[] | Uint16Array, start: number, end?: number) => {\n if (view.slice) {\n return view.slice(start, end);\n }\n\n return new Uint16Array(Array.prototype.slice.call(view, start, end));\n};\n\nconst slice32 = (view: number[] | Uint32Array, start: number, end?: number) => {\n if (view.slice) {\n return view.slice(start, end);\n }\n\n return new Uint32Array(Array.prototype.slice.call(view, start, end));\n};\n\nexport const createTrieFromBase64 = (base64: string, _byteLength: number): Trie => {\n const buffer = decode(base64);\n const view32 = Array.isArray(buffer) ? polyUint32Array(buffer) : new Uint32Array(buffer);\n const view16 = Array.isArray(buffer) ? polyUint16Array(buffer) : new Uint16Array(buffer);\n const headerLength = 24;\n\n const index = slice16(view16, headerLength / 2, view32[4] / 2);\n const data =\n view32[5] === 2\n ? slice16(view16, (headerLength + view32[4]) / 2)\n : slice32(view32, Math.ceil((headerLength + view32[4]) / 4));\n\n return new Trie(view32[0], view32[1], view32[2], view32[3], index, data);\n};\n\nexport class Trie {\n initialValue: int;\n errorValue: int;\n highStart: int;\n highValueIndex: int;\n index: Uint16Array | number[];\n data: Uint32Array | Uint16Array | number[];\n\n constructor(\n initialValue: int,\n errorValue: int,\n highStart: int,\n highValueIndex: int,\n index: Uint16Array | number[],\n data: Uint32Array | Uint16Array | number[]\n ) {\n this.initialValue = initialValue;\n this.errorValue = errorValue;\n this.highStart = highStart;\n this.highValueIndex = highValueIndex;\n this.index = index;\n this.data = data;\n }\n\n /**\n * Get the value for a code point as stored in the Trie.\n *\n * @param codePoint the code point\n * @return the value\n */\n get(codePoint: number): number {\n let ix;\n if (codePoint >= 0) {\n if (codePoint < 0x0d800 || (codePoint > 0x0dbff && codePoint <= 0x0ffff)) {\n // Ordinary BMP code point, excluding leading surrogates.\n // BMP uses a single level lookup. BMP index starts at offset 0 in the Trie2 index.\n // 16 bit data is stored in the index array itself.\n ix = this.index[codePoint >> UTRIE2_SHIFT_2];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n\n if (codePoint <= 0xffff) {\n // Lead Surrogate Code Point. A Separate index section is stored for\n // lead surrogate code units and code points.\n // The main index has the code unit data.\n // For this function, we need the code point data.\n // Note: this expression could be refactored for slightly improved efficiency, but\n // surrogate code points will be so rare in practice that it's not worth it.\n ix = this.index[UTRIE2_LSCP_INDEX_2_OFFSET + ((codePoint - 0xd800) >> UTRIE2_SHIFT_2)];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n\n if (codePoint < this.highStart) {\n // Supplemental code point, use two-level lookup.\n ix = UTRIE2_INDEX_1_OFFSET - UTRIE2_OMITTED_BMP_INDEX_1_LENGTH + (codePoint >> UTRIE2_SHIFT_1);\n ix = this.index[ix];\n ix += (codePoint >> UTRIE2_SHIFT_2) & UTRIE2_INDEX_2_MASK;\n ix = this.index[ix];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n if (codePoint <= 0x10ffff) {\n return this.data[this.highValueIndex];\n }\n }\n\n // Fall through. The code point is outside of the legal range of 0..0x10ffff.\n return this.errorValue;\n }\n}\n","export const base64 =\n 'KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA==';\nexport const byteLength = 39664;\n","'use strict';\n\nimport {createTrieFromBase64} from 'utrie';\nimport {base64, byteLength} from './linebreak-trie';\nimport {fromCodePoint, toCodePoints} from './Util';\n\nexport const LETTER_NUMBER_MODIFIER = 50;\n\n// Non-tailorable Line Breaking Classes\nconst BK = 1; // Cause a line break (after)\nconst CR = 2; // Cause a line break (after), except between CR and LF\nconst LF = 3; // Cause a line break (after)\nconst CM = 4; // Prohibit a line break between the character and the preceding character\nconst NL = 5; // Cause a line break (after)\nconst SG = 6; // Do not occur in well-formed text\nconst WJ = 7; // Prohibit line breaks before and after\nconst ZW = 8; // Provide a break opportunity\nconst GL = 9; // Prohibit line breaks before and after\nconst SP = 10; // Enable indirect line breaks\nconst ZWJ = 11; // Prohibit line breaks within joiner sequences\n// Break Opportunities\nconst B2 = 12; // Provide a line break opportunity before and after the character\nconst BA = 13; // Generally provide a line break opportunity after the character\nconst BB = 14; // Generally provide a line break opportunity before the character\nconst HY = 15; // Provide a line break opportunity after the character, except in numeric context\nconst CB = 16; // Provide a line break opportunity contingent on additional information\n// Characters Prohibiting Certain Breaks\nconst CL = 17; // Prohibit line breaks before\nconst CP = 18; // Prohibit line breaks before\nconst EX = 19; // Prohibit line breaks before\nconst IN = 20; // Allow only indirect line breaks between pairs\nconst NS = 21; // Allow only indirect line breaks before\nconst OP = 22; // Prohibit line breaks after\nconst QU = 23; // Act like they are both opening and closing\n// Numeric Context\nconst IS = 24; // Prevent breaks after any and before numeric\nconst NU = 25; // Form numeric expressions for line breaking purposes\nconst PO = 26; // Do not break following a numeric expression\nconst PR = 27; // Do not break in front of a numeric expression\nconst SY = 28; // Prevent a break before; and allow a break after\n// Other Characters\nconst AI = 29; // Act like AL when the resolvedEAW is N; otherwise; act as ID\nconst AL = 30; // Are alphabetic characters or symbols that are used with alphabetic characters\nconst CJ = 31; // Treat as NS or ID for strict or normal breaking.\nconst EB = 32; // Do not break from following Emoji Modifier\nconst EM = 33; // Do not break from preceding Emoji Base\nconst H2 = 34; // Form Korean syllable blocks\nconst H3 = 35; // Form Korean syllable blocks\nconst HL = 36; // Do not break around a following hyphen; otherwise act as Alphabetic\nconst ID = 37; // Break before or after; except in some numeric context\nconst JL = 38; // Form Korean syllable blocks\nconst JV = 39; // Form Korean syllable blocks\nconst JT = 40; // Form Korean syllable blocks\nconst RI = 41; // Keep pairs together. For pairs; break before and after other classes\nconst SA = 42; // Provide a line break opportunity contingent on additional, language-specific context analysis\nconst XX = 43; // Have as yet unknown line breaking behavior or unassigned code positions\n\nconst ea_OP = [0x2329, 0xff08];\n\nexport const classes: {[key: string]: number} = {\n BK,\n CR,\n LF,\n CM,\n NL,\n SG,\n WJ,\n ZW,\n GL,\n SP,\n ZWJ,\n B2,\n BA,\n BB,\n HY,\n CB,\n CL,\n CP,\n EX,\n IN,\n NS,\n OP,\n QU,\n IS,\n NU,\n PO,\n PR,\n SY,\n AI,\n AL,\n CJ,\n EB,\n EM,\n H2,\n H3,\n HL,\n ID,\n JL,\n JV,\n JT,\n RI,\n SA,\n XX,\n};\n\nexport const BREAK_MANDATORY = '!';\nexport const BREAK_NOT_ALLOWED = '×';\nexport const BREAK_ALLOWED = '÷';\nexport const UnicodeTrie = createTrieFromBase64(base64, byteLength);\n\nconst ALPHABETICS = [AL, HL];\nconst HARD_LINE_BREAKS = [BK, CR, LF, NL];\nconst SPACE = [SP, ZW];\nconst PREFIX_POSTFIX = [PR, PO];\nconst LINE_BREAKS = HARD_LINE_BREAKS.concat(SPACE);\nconst KOREAN_SYLLABLE_BLOCK = [JL, JV, JT, H2, H3];\nconst HYPHEN = [HY, BA];\n\nexport const codePointsToCharacterClasses = (\n codePoints: number[],\n lineBreak: string = 'strict'\n): [number[], number[], boolean[]] => {\n const types: number[] = [];\n const indices: number[] = [];\n const categories: boolean[] = [];\n codePoints.forEach((codePoint, index) => {\n let classType = UnicodeTrie.get(codePoint);\n if (classType > LETTER_NUMBER_MODIFIER) {\n categories.push(true);\n classType -= LETTER_NUMBER_MODIFIER;\n } else {\n categories.push(false);\n }\n\n if (['normal', 'auto', 'loose'].indexOf(lineBreak) !== -1) {\n // U+2010, – U+2013, 〜 U+301C, ゠ U+30A0\n if ([0x2010, 0x2013, 0x301c, 0x30a0].indexOf(codePoint) !== -1) {\n indices.push(index);\n return types.push(CB);\n }\n }\n\n if (classType === CM || classType === ZWJ) {\n // LB10 Treat any remaining combining mark or ZWJ as AL.\n if (index === 0) {\n indices.push(index);\n return types.push(AL);\n }\n\n // LB9 Do not break a combining character sequence; treat it as if it has the line breaking class of\n // the base character in all of the following rules. Treat ZWJ as if it were CM.\n const prev = types[index - 1];\n if (LINE_BREAKS.indexOf(prev) === -1) {\n indices.push(indices[index - 1]);\n return types.push(prev);\n }\n indices.push(index);\n return types.push(AL);\n }\n\n indices.push(index);\n\n if (classType === CJ) {\n return types.push(lineBreak === 'strict' ? NS : ID);\n }\n\n if (classType === SA) {\n return types.push(AL);\n }\n\n if (classType === AI) {\n return types.push(AL);\n }\n\n // For supplementary characters, a useful default is to treat characters in the range 10000..1FFFD as AL\n // and characters in the ranges 20000..2FFFD and 30000..3FFFD as ID, until the implementation can be revised\n // to take into account the actual line breaking properties for these characters.\n if (classType === XX) {\n if ((codePoint >= 0x20000 && codePoint <= 0x2fffd) || (codePoint >= 0x30000 && codePoint <= 0x3fffd)) {\n return types.push(ID);\n } else {\n return types.push(AL);\n }\n }\n\n types.push(classType);\n });\n\n return [indices, types, categories];\n};\n\nconst isAdjacentWithSpaceIgnored = (\n a: number[] | number,\n b: number,\n currentIndex: number,\n classTypes: number[]\n): boolean => {\n const current = classTypes[currentIndex];\n if (Array.isArray(a) ? a.indexOf(current) !== -1 : a === current) {\n let i = currentIndex;\n while (i <= classTypes.length) {\n i++;\n let next = classTypes[i];\n\n if (next === b) {\n return true;\n }\n\n if (next !== SP) {\n break;\n }\n }\n }\n\n if (current === SP) {\n let i = currentIndex;\n\n while (i > 0) {\n i--;\n const prev = classTypes[i];\n\n if (Array.isArray(a) ? a.indexOf(prev) !== -1 : a === prev) {\n let n = currentIndex;\n while (n <= classTypes.length) {\n n++;\n let next = classTypes[n];\n\n if (next === b) {\n return true;\n }\n\n if (next !== SP) {\n break;\n }\n }\n }\n\n if (prev !== SP) {\n break;\n }\n }\n }\n return false;\n};\n\nconst previousNonSpaceClassType = (currentIndex: number, classTypes: number[]): number => {\n let i = currentIndex;\n while (i >= 0) {\n let type = classTypes[i];\n if (type === SP) {\n i--;\n } else {\n return type;\n }\n }\n return 0;\n};\n\nexport type BREAK_OPPORTUNITIES = typeof BREAK_NOT_ALLOWED | typeof BREAK_ALLOWED | typeof BREAK_MANDATORY;\n\nconst _lineBreakAtIndex = (\n codePoints: number[],\n classTypes: number[],\n indicies: number[],\n index: number,\n forbiddenBreaks?: boolean[]\n): BREAK_OPPORTUNITIES => {\n if (indicies[index] === 0) {\n return BREAK_NOT_ALLOWED;\n }\n\n let currentIndex = index - 1;\n if (Array.isArray(forbiddenBreaks) && forbiddenBreaks[currentIndex] === true) {\n return BREAK_NOT_ALLOWED;\n }\n\n let beforeIndex = currentIndex - 1;\n let afterIndex = currentIndex + 1;\n let current = classTypes[currentIndex];\n\n // LB4 Always break after hard line breaks.\n // LB5 Treat CR followed by LF, as well as CR, LF, and NL as hard line breaks.\n let before = beforeIndex >= 0 ? classTypes[beforeIndex] : 0;\n let next = classTypes[afterIndex];\n\n if (current === CR && next === LF) {\n return BREAK_NOT_ALLOWED;\n }\n\n if (HARD_LINE_BREAKS.indexOf(current) !== -1) {\n return BREAK_MANDATORY;\n }\n\n // LB6 Do not break before hard line breaks.\n if (HARD_LINE_BREAKS.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB7 Do not break before spaces or zero width space.\n if (SPACE.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB8 Break before any character following a zero-width space, even if one or more spaces intervene.\n if (previousNonSpaceClassType(currentIndex, classTypes) === ZW) {\n return BREAK_ALLOWED;\n }\n\n // LB8a Do not break after a zero width joiner.\n if (UnicodeTrie.get(codePoints[currentIndex]) === ZWJ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // zwj emojis\n if ((current === EB || current === EM) && UnicodeTrie.get(codePoints[afterIndex]) === ZWJ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB11 Do not break before or after Word joiner and related characters.\n if (current === WJ || next === WJ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB12 Do not break after NBSP and related characters.\n if (current === GL) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB12a Do not break before NBSP and related characters, except after spaces and hyphens.\n if ([SP, BA, HY].indexOf(current) === -1 && next === GL) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB13 Do not break before ‘]’ or ‘!’ or ‘;’ or ‘/’, even after spaces.\n if ([CL, CP, EX, IS, SY].indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB14 Do not break after ‘[’, even after spaces.\n if (previousNonSpaceClassType(currentIndex, classTypes) === OP) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB15 Do not break within ‘”[’, even with intervening spaces.\n if (isAdjacentWithSpaceIgnored(QU, OP, currentIndex, classTypes)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB16 Do not break between closing punctuation and a nonstarter (lb=NS), even with intervening spaces.\n if (isAdjacentWithSpaceIgnored([CL, CP], NS, currentIndex, classTypes)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB17 Do not break within ‘——’, even with intervening spaces.\n if (isAdjacentWithSpaceIgnored(B2, B2, currentIndex, classTypes)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB18 Break after spaces.\n if (current === SP) {\n return BREAK_ALLOWED;\n }\n\n // LB19 Do not break before or after quotation marks, such as ‘ ” ’.\n if (current === QU || next === QU) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB20 Break before and after unresolved CB.\n if (next === CB || current === CB) {\n return BREAK_ALLOWED;\n }\n\n // LB21 Do not break before hyphen-minus, other hyphens, fixed-width spaces, small kana, and other non-starters, or after acute accents.\n if ([BA, HY, NS].indexOf(next) !== -1 || current === BB) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB21a Don't break after Hebrew + Hyphen.\n if (before === HL && HYPHEN.indexOf(current) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB21b Don’t break between Solidus and Hebrew letters.\n if (current === SY && next === HL) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB22 Do not break before ellipsis.\n if (next === IN) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB23 Do not break between digits and letters.\n if ((ALPHABETICS.indexOf(next) !== -1 && current === NU) || (ALPHABETICS.indexOf(current) !== -1 && next === NU)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB23a Do not break between numeric prefixes and ideographs, or between ideographs and numeric postfixes.\n if (\n (current === PR && [ID, EB, EM].indexOf(next) !== -1) ||\n ([ID, EB, EM].indexOf(current) !== -1 && next === PO)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB24 Do not break between numeric prefix/postfix and letters, or between letters and prefix/postfix.\n if (\n (ALPHABETICS.indexOf(current) !== -1 && PREFIX_POSTFIX.indexOf(next) !== -1) ||\n (PREFIX_POSTFIX.indexOf(current) !== -1 && ALPHABETICS.indexOf(next) !== -1)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB25 Do not break between the following pairs of classes relevant to numbers:\n if (\n // (PR | PO) × ( OP | HY )? NU\n ([PR, PO].indexOf(current) !== -1 &&\n (next === NU || ([OP, HY].indexOf(next) !== -1 && classTypes[afterIndex + 1] === NU))) ||\n // ( OP | HY ) × NU\n ([OP, HY].indexOf(current) !== -1 && next === NU) ||\n // NU ×\t(NU | SY | IS)\n (current === NU && [NU, SY, IS].indexOf(next) !== -1)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // NU (NU | SY | IS)* × (NU | SY | IS | CL | CP)\n if ([NU, SY, IS, CL, CP].indexOf(next) !== -1) {\n let prevIndex = currentIndex;\n while (prevIndex >= 0) {\n let type = classTypes[prevIndex];\n if (type === NU) {\n return BREAK_NOT_ALLOWED;\n } else if ([SY, IS].indexOf(type) !== -1) {\n prevIndex--;\n } else {\n break;\n }\n }\n }\n\n // NU (NU | SY | IS)* (CL | CP)? × (PO | PR))\n if ([PR, PO].indexOf(next) !== -1) {\n let prevIndex = [CL, CP].indexOf(current) !== -1 ? beforeIndex : currentIndex;\n while (prevIndex >= 0) {\n let type = classTypes[prevIndex];\n if (type === NU) {\n return BREAK_NOT_ALLOWED;\n } else if ([SY, IS].indexOf(type) !== -1) {\n prevIndex--;\n } else {\n break;\n }\n }\n }\n\n // LB26 Do not break a Korean syllable.\n if (\n (JL === current && [JL, JV, H2, H3].indexOf(next) !== -1) ||\n ([JV, H2].indexOf(current) !== -1 && [JV, JT].indexOf(next) !== -1) ||\n ([JT, H3].indexOf(current) !== -1 && next === JT)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB27 Treat a Korean Syllable Block the same as ID.\n if (\n (KOREAN_SYLLABLE_BLOCK.indexOf(current) !== -1 && [IN, PO].indexOf(next) !== -1) ||\n (KOREAN_SYLLABLE_BLOCK.indexOf(next) !== -1 && current === PR)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB28 Do not break between alphabetics (“at”).\n if (ALPHABETICS.indexOf(current) !== -1 && ALPHABETICS.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB29 Do not break between numeric punctuation and alphabetics (“e.g.”).\n if (current === IS && ALPHABETICS.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB30 Do not break between letters, numbers, or ordinary symbols and opening or closing parentheses.\n if (\n (ALPHABETICS.concat(NU).indexOf(current) !== -1 &&\n next === OP &&\n ea_OP.indexOf(codePoints[afterIndex]) === -1) ||\n (ALPHABETICS.concat(NU).indexOf(next) !== -1 && current === CP)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB30a Break between two regional indicator symbols if and only if there are an even number of regional\n // indicators preceding the position of the break.\n if (current === RI && next === RI) {\n let i = indicies[currentIndex];\n let count = 1;\n while (i > 0) {\n i--;\n if (classTypes[i] === RI) {\n count++;\n } else {\n break;\n }\n }\n if (count % 2 !== 0) {\n return BREAK_NOT_ALLOWED;\n }\n }\n\n // LB30b Do not break between an emoji base and an emoji modifier.\n if (current === EB && next === EM) {\n return BREAK_NOT_ALLOWED;\n }\n\n return BREAK_ALLOWED;\n};\n\nexport const lineBreakAtIndex = (codePoints: number[], index: number): BREAK_OPPORTUNITIES => {\n // LB2 Never break at the start of text.\n if (index === 0) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB3 Always break at the end of text.\n if (index >= codePoints.length) {\n return BREAK_MANDATORY;\n }\n\n const [indices, classTypes] = codePointsToCharacterClasses(codePoints);\n\n return _lineBreakAtIndex(codePoints, classTypes, indices, index);\n};\n\nexport type LINE_BREAK = 'auto' | 'normal' | 'strict';\nexport type WORD_BREAK = 'normal' | 'break-all' | 'break-word' | 'keep-all';\n\ninterface IOptions {\n lineBreak?: LINE_BREAK;\n wordBreak?: WORD_BREAK;\n}\n\nconst cssFormattedClasses = (codePoints: number[], options?: IOptions): [number[], number[], boolean[] | undefined] => {\n if (!options) {\n options = {lineBreak: 'normal', wordBreak: 'normal'};\n }\n let [indicies, classTypes, isLetterNumber] = codePointsToCharacterClasses(codePoints, options.lineBreak);\n\n if (options.wordBreak === 'break-all' || options.wordBreak === 'break-word') {\n classTypes = classTypes.map((type) => ([NU, AL, SA].indexOf(type) !== -1 ? ID : type));\n }\n\n const forbiddenBreakpoints =\n options.wordBreak === 'keep-all'\n ? isLetterNumber.map((letterNumber, i) => {\n return letterNumber && codePoints[i] >= 0x4e00 && codePoints[i] <= 0x9fff;\n })\n : undefined;\n\n return [indicies, classTypes, forbiddenBreakpoints];\n};\n\nexport const inlineBreakOpportunities = (str: string, options?: IOptions): string => {\n const codePoints = toCodePoints(str);\n let output = BREAK_NOT_ALLOWED;\n const [indicies, classTypes, forbiddenBreakpoints] = cssFormattedClasses(codePoints, options);\n\n codePoints.forEach((codePoint, i) => {\n output +=\n fromCodePoint(codePoint) +\n (i >= codePoints.length - 1\n ? BREAK_MANDATORY\n : _lineBreakAtIndex(codePoints, classTypes, indicies, i + 1, forbiddenBreakpoints));\n });\n\n return output;\n};\n\nclass Break {\n private readonly codePoints: number[];\n readonly required: boolean;\n readonly start: number;\n readonly end: number;\n\n constructor(codePoints: number[], lineBreak: string, start: number, end: number) {\n this.codePoints = codePoints;\n this.required = lineBreak === BREAK_MANDATORY;\n this.start = start;\n this.end = end;\n }\n\n slice(): string {\n return fromCodePoint(...this.codePoints.slice(this.start, this.end));\n }\n}\n\nexport type LineBreak =\n | {\n done: true;\n value: null;\n }\n | {\n done: false;\n value: Break;\n };\n\ninterface ILineBreakIterator {\n next: () => LineBreak;\n}\n\nexport const LineBreaker = (str: string, options?: IOptions): ILineBreakIterator => {\n const codePoints = toCodePoints(str);\n const [indicies, classTypes, forbiddenBreakpoints] = cssFormattedClasses(codePoints, options);\n const length = codePoints.length;\n let lastEnd = 0;\n let nextIndex = 0;\n\n return {\n next: () => {\n if (nextIndex >= length) {\n return {done: true, value: null};\n }\n let lineBreak = BREAK_NOT_ALLOWED;\n while (\n nextIndex < length &&\n (lineBreak = _lineBreakAtIndex(codePoints, classTypes, indicies, ++nextIndex, forbiddenBreakpoints)) ===\n BREAK_NOT_ALLOWED\n ) {}\n\n if (lineBreak !== BREAK_NOT_ALLOWED || nextIndex === length) {\n const value = new Break(codePoints, lineBreak, lastEnd, nextIndex);\n lastEnd = nextIndex;\n return {value, done: false};\n }\n\n return {done: true, value: null};\n },\n };\n};\n","// https://www.w3.org/TR/css-syntax-3\n\nimport {fromCodePoint, toCodePoints} from 'css-line-break';\n\nexport const enum TokenType {\n STRING_TOKEN,\n BAD_STRING_TOKEN,\n LEFT_PARENTHESIS_TOKEN,\n RIGHT_PARENTHESIS_TOKEN,\n COMMA_TOKEN,\n HASH_TOKEN,\n DELIM_TOKEN,\n AT_KEYWORD_TOKEN,\n PREFIX_MATCH_TOKEN,\n DASH_MATCH_TOKEN,\n INCLUDE_MATCH_TOKEN,\n LEFT_CURLY_BRACKET_TOKEN,\n RIGHT_CURLY_BRACKET_TOKEN,\n SUFFIX_MATCH_TOKEN,\n SUBSTRING_MATCH_TOKEN,\n DIMENSION_TOKEN,\n PERCENTAGE_TOKEN,\n NUMBER_TOKEN,\n FUNCTION,\n FUNCTION_TOKEN,\n IDENT_TOKEN,\n COLUMN_TOKEN,\n URL_TOKEN,\n BAD_URL_TOKEN,\n CDC_TOKEN,\n CDO_TOKEN,\n COLON_TOKEN,\n SEMICOLON_TOKEN,\n LEFT_SQUARE_BRACKET_TOKEN,\n RIGHT_SQUARE_BRACKET_TOKEN,\n UNICODE_RANGE_TOKEN,\n WHITESPACE_TOKEN,\n EOF_TOKEN\n}\n\ninterface IToken {\n type: TokenType;\n}\n\nexport interface Token extends IToken {\n type:\n | TokenType.BAD_URL_TOKEN\n | TokenType.BAD_STRING_TOKEN\n | TokenType.LEFT_PARENTHESIS_TOKEN\n | TokenType.RIGHT_PARENTHESIS_TOKEN\n | TokenType.COMMA_TOKEN\n | TokenType.SUBSTRING_MATCH_TOKEN\n | TokenType.PREFIX_MATCH_TOKEN\n | TokenType.SUFFIX_MATCH_TOKEN\n | TokenType.COLON_TOKEN\n | TokenType.SEMICOLON_TOKEN\n | TokenType.LEFT_SQUARE_BRACKET_TOKEN\n | TokenType.RIGHT_SQUARE_BRACKET_TOKEN\n | TokenType.LEFT_CURLY_BRACKET_TOKEN\n | TokenType.RIGHT_CURLY_BRACKET_TOKEN\n | TokenType.DASH_MATCH_TOKEN\n | TokenType.INCLUDE_MATCH_TOKEN\n | TokenType.COLUMN_TOKEN\n | TokenType.WHITESPACE_TOKEN\n | TokenType.CDC_TOKEN\n | TokenType.CDO_TOKEN\n | TokenType.EOF_TOKEN;\n}\n\nexport interface StringValueToken extends IToken {\n type:\n | TokenType.STRING_TOKEN\n | TokenType.DELIM_TOKEN\n | TokenType.FUNCTION_TOKEN\n | TokenType.IDENT_TOKEN\n | TokenType.URL_TOKEN\n | TokenType.AT_KEYWORD_TOKEN;\n value: string;\n}\n\nexport interface HashToken extends IToken {\n type: TokenType.HASH_TOKEN;\n flags: number;\n value: string;\n}\n\nexport interface NumberValueToken extends IToken {\n type: TokenType.PERCENTAGE_TOKEN | TokenType.NUMBER_TOKEN;\n flags: number;\n number: number;\n}\n\nexport interface DimensionToken extends IToken {\n type: TokenType.DIMENSION_TOKEN;\n flags: number;\n unit: string;\n number: number;\n}\n\nexport interface UnicodeRangeToken extends IToken {\n type: TokenType.UNICODE_RANGE_TOKEN;\n start: number;\n end: number;\n}\n\nexport type CSSToken = Token | StringValueToken | NumberValueToken | DimensionToken | UnicodeRangeToken | HashToken;\n\nexport const FLAG_UNRESTRICTED = 1 << 0;\nexport const FLAG_ID = 1 << 1;\nexport const FLAG_INTEGER = 1 << 2;\nexport const FLAG_NUMBER = 1 << 3;\n\nconst LINE_FEED = 0x000a;\nconst SOLIDUS = 0x002f;\nconst REVERSE_SOLIDUS = 0x005c;\nconst CHARACTER_TABULATION = 0x0009;\nconst SPACE = 0x0020;\nconst QUOTATION_MARK = 0x0022;\nconst EQUALS_SIGN = 0x003d;\nconst NUMBER_SIGN = 0x0023;\nconst DOLLAR_SIGN = 0x0024;\nconst PERCENTAGE_SIGN = 0x0025;\nconst APOSTROPHE = 0x0027;\nconst LEFT_PARENTHESIS = 0x0028;\nconst RIGHT_PARENTHESIS = 0x0029;\nconst LOW_LINE = 0x005f;\nconst HYPHEN_MINUS = 0x002d;\nconst EXCLAMATION_MARK = 0x0021;\nconst LESS_THAN_SIGN = 0x003c;\nconst GREATER_THAN_SIGN = 0x003e;\nconst COMMERCIAL_AT = 0x0040;\nconst LEFT_SQUARE_BRACKET = 0x005b;\nconst RIGHT_SQUARE_BRACKET = 0x005d;\nconst CIRCUMFLEX_ACCENT = 0x003d;\nconst LEFT_CURLY_BRACKET = 0x007b;\nconst QUESTION_MARK = 0x003f;\nconst RIGHT_CURLY_BRACKET = 0x007d;\nconst VERTICAL_LINE = 0x007c;\nconst TILDE = 0x007e;\nconst CONTROL = 0x0080;\nconst REPLACEMENT_CHARACTER = 0xfffd;\nconst ASTERISK = 0x002a;\nconst PLUS_SIGN = 0x002b;\nconst COMMA = 0x002c;\nconst COLON = 0x003a;\nconst SEMICOLON = 0x003b;\nconst FULL_STOP = 0x002e;\nconst NULL = 0x0000;\nconst BACKSPACE = 0x0008;\nconst LINE_TABULATION = 0x000b;\nconst SHIFT_OUT = 0x000e;\nconst INFORMATION_SEPARATOR_ONE = 0x001f;\nconst DELETE = 0x007f;\nconst EOF = -1;\nconst ZERO = 0x0030;\nconst a = 0x0061;\nconst e = 0x0065;\nconst f = 0x0066;\nconst u = 0x0075;\nconst z = 0x007a;\nconst A = 0x0041;\nconst E = 0x0045;\nconst F = 0x0046;\nconst U = 0x0055;\nconst Z = 0x005a;\n\nconst isDigit = (codePoint: number) => codePoint >= ZERO && codePoint <= 0x0039;\nconst isSurrogateCodePoint = (codePoint: number) => codePoint >= 0xd800 && codePoint <= 0xdfff;\nconst isHex = (codePoint: number) =>\n isDigit(codePoint) || (codePoint >= A && codePoint <= F) || (codePoint >= a && codePoint <= f);\nconst isLowerCaseLetter = (codePoint: number) => codePoint >= a && codePoint <= z;\nconst isUpperCaseLetter = (codePoint: number) => codePoint >= A && codePoint <= Z;\nconst isLetter = (codePoint: number) => isLowerCaseLetter(codePoint) || isUpperCaseLetter(codePoint);\nconst isNonASCIICodePoint = (codePoint: number) => codePoint >= CONTROL;\nconst isWhiteSpace = (codePoint: number): boolean =>\n codePoint === LINE_FEED || codePoint === CHARACTER_TABULATION || codePoint === SPACE;\nconst isNameStartCodePoint = (codePoint: number): boolean =>\n isLetter(codePoint) || isNonASCIICodePoint(codePoint) || codePoint === LOW_LINE;\nconst isNameCodePoint = (codePoint: number): boolean =>\n isNameStartCodePoint(codePoint) || isDigit(codePoint) || codePoint === HYPHEN_MINUS;\nconst isNonPrintableCodePoint = (codePoint: number): boolean => {\n return (\n (codePoint >= NULL && codePoint <= BACKSPACE) ||\n codePoint === LINE_TABULATION ||\n (codePoint >= SHIFT_OUT && codePoint <= INFORMATION_SEPARATOR_ONE) ||\n codePoint === DELETE\n );\n};\nconst isValidEscape = (c1: number, c2: number): boolean => {\n if (c1 !== REVERSE_SOLIDUS) {\n return false;\n }\n\n return c2 !== LINE_FEED;\n};\nconst isIdentifierStart = (c1: number, c2: number, c3: number): boolean => {\n if (c1 === HYPHEN_MINUS) {\n return isNameStartCodePoint(c2) || isValidEscape(c2, c3);\n } else if (isNameStartCodePoint(c1)) {\n return true;\n } else if (c1 === REVERSE_SOLIDUS && isValidEscape(c1, c2)) {\n return true;\n }\n return false;\n};\n\nconst isNumberStart = (c1: number, c2: number, c3: number): boolean => {\n if (c1 === PLUS_SIGN || c1 === HYPHEN_MINUS) {\n if (isDigit(c2)) {\n return true;\n }\n\n return c2 === FULL_STOP && isDigit(c3);\n }\n\n if (c1 === FULL_STOP) {\n return isDigit(c2);\n }\n\n return isDigit(c1);\n};\n\nconst stringToNumber = (codePoints: number[]): number => {\n let c = 0;\n let sign = 1;\n if (codePoints[c] === PLUS_SIGN || codePoints[c] === HYPHEN_MINUS) {\n if (codePoints[c] === HYPHEN_MINUS) {\n sign = -1;\n }\n c++;\n }\n\n const integers = [];\n\n while (isDigit(codePoints[c])) {\n integers.push(codePoints[c++]);\n }\n\n const int = integers.length ? parseInt(fromCodePoint(...integers), 10) : 0;\n\n if (codePoints[c] === FULL_STOP) {\n c++;\n }\n\n const fraction = [];\n while (isDigit(codePoints[c])) {\n fraction.push(codePoints[c++]);\n }\n\n const fracd = fraction.length;\n const frac = fracd ? parseInt(fromCodePoint(...fraction), 10) : 0;\n\n if (codePoints[c] === E || codePoints[c] === e) {\n c++;\n }\n\n let expsign = 1;\n\n if (codePoints[c] === PLUS_SIGN || codePoints[c] === HYPHEN_MINUS) {\n if (codePoints[c] === HYPHEN_MINUS) {\n expsign = -1;\n }\n c++;\n }\n\n const exponent = [];\n\n while (isDigit(codePoints[c])) {\n exponent.push(codePoints[c++]);\n }\n\n const exp = exponent.length ? parseInt(fromCodePoint(...exponent), 10) : 0;\n\n return sign * (int + frac * Math.pow(10, -fracd)) * Math.pow(10, expsign * exp);\n};\n\nconst LEFT_PARENTHESIS_TOKEN: Token = {\n type: TokenType.LEFT_PARENTHESIS_TOKEN\n};\nconst RIGHT_PARENTHESIS_TOKEN: Token = {\n type: TokenType.RIGHT_PARENTHESIS_TOKEN\n};\nconst COMMA_TOKEN: Token = {type: TokenType.COMMA_TOKEN};\nconst SUFFIX_MATCH_TOKEN: Token = {type: TokenType.SUFFIX_MATCH_TOKEN};\nconst PREFIX_MATCH_TOKEN: Token = {type: TokenType.PREFIX_MATCH_TOKEN};\nconst COLUMN_TOKEN: Token = {type: TokenType.COLUMN_TOKEN};\nconst DASH_MATCH_TOKEN: Token = {type: TokenType.DASH_MATCH_TOKEN};\nconst INCLUDE_MATCH_TOKEN: Token = {type: TokenType.INCLUDE_MATCH_TOKEN};\nconst LEFT_CURLY_BRACKET_TOKEN: Token = {\n type: TokenType.LEFT_CURLY_BRACKET_TOKEN\n};\nconst RIGHT_CURLY_BRACKET_TOKEN: Token = {\n type: TokenType.RIGHT_CURLY_BRACKET_TOKEN\n};\nconst SUBSTRING_MATCH_TOKEN: Token = {type: TokenType.SUBSTRING_MATCH_TOKEN};\nconst BAD_URL_TOKEN: Token = {type: TokenType.BAD_URL_TOKEN};\nconst BAD_STRING_TOKEN: Token = {type: TokenType.BAD_STRING_TOKEN};\nconst CDO_TOKEN: Token = {type: TokenType.CDO_TOKEN};\nconst CDC_TOKEN: Token = {type: TokenType.CDC_TOKEN};\nconst COLON_TOKEN: Token = {type: TokenType.COLON_TOKEN};\nconst SEMICOLON_TOKEN: Token = {type: TokenType.SEMICOLON_TOKEN};\nconst LEFT_SQUARE_BRACKET_TOKEN: Token = {\n type: TokenType.LEFT_SQUARE_BRACKET_TOKEN\n};\nconst RIGHT_SQUARE_BRACKET_TOKEN: Token = {\n type: TokenType.RIGHT_SQUARE_BRACKET_TOKEN\n};\nconst WHITESPACE_TOKEN: Token = {type: TokenType.WHITESPACE_TOKEN};\nexport const EOF_TOKEN: Token = {type: TokenType.EOF_TOKEN};\n\nexport class Tokenizer {\n private _value: number[];\n\n constructor() {\n this._value = [];\n }\n\n write(chunk: string): void {\n this._value = this._value.concat(toCodePoints(chunk));\n }\n\n read(): CSSToken[] {\n const tokens = [];\n let token = this.consumeToken();\n while (token !== EOF_TOKEN) {\n tokens.push(token);\n token = this.consumeToken();\n }\n return tokens;\n }\n\n private consumeToken(): CSSToken {\n const codePoint = this.consumeCodePoint();\n\n switch (codePoint) {\n case QUOTATION_MARK:\n return this.consumeStringToken(QUOTATION_MARK);\n case NUMBER_SIGN:\n const c1 = this.peekCodePoint(0);\n const c2 = this.peekCodePoint(1);\n const c3 = this.peekCodePoint(2);\n if (isNameCodePoint(c1) || isValidEscape(c2, c3)) {\n const flags = isIdentifierStart(c1, c2, c3) ? FLAG_ID : FLAG_UNRESTRICTED;\n const value = this.consumeName();\n\n return {type: TokenType.HASH_TOKEN, value, flags};\n }\n break;\n case DOLLAR_SIGN:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return SUFFIX_MATCH_TOKEN;\n }\n break;\n case APOSTROPHE:\n return this.consumeStringToken(APOSTROPHE);\n case LEFT_PARENTHESIS:\n return LEFT_PARENTHESIS_TOKEN;\n case RIGHT_PARENTHESIS:\n return RIGHT_PARENTHESIS_TOKEN;\n case ASTERISK:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return SUBSTRING_MATCH_TOKEN;\n }\n break;\n case PLUS_SIGN:\n if (isNumberStart(codePoint, this.peekCodePoint(0), this.peekCodePoint(1))) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n break;\n case COMMA:\n return COMMA_TOKEN;\n case HYPHEN_MINUS:\n const e1 = codePoint;\n const e2 = this.peekCodePoint(0);\n const e3 = this.peekCodePoint(1);\n\n if (isNumberStart(e1, e2, e3)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n\n if (isIdentifierStart(e1, e2, e3)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n }\n\n if (e2 === HYPHEN_MINUS && e3 === GREATER_THAN_SIGN) {\n this.consumeCodePoint();\n this.consumeCodePoint();\n return CDC_TOKEN;\n }\n break;\n\n case FULL_STOP:\n if (isNumberStart(codePoint, this.peekCodePoint(0), this.peekCodePoint(1))) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n break;\n case SOLIDUS:\n if (this.peekCodePoint(0) === ASTERISK) {\n this.consumeCodePoint();\n while (true) {\n let c = this.consumeCodePoint();\n if (c === ASTERISK) {\n c = this.consumeCodePoint();\n if (c === SOLIDUS) {\n return this.consumeToken();\n }\n }\n if (c === EOF) {\n return this.consumeToken();\n }\n }\n }\n break;\n case COLON:\n return COLON_TOKEN;\n case SEMICOLON:\n return SEMICOLON_TOKEN;\n case LESS_THAN_SIGN:\n if (\n this.peekCodePoint(0) === EXCLAMATION_MARK &&\n this.peekCodePoint(1) === HYPHEN_MINUS &&\n this.peekCodePoint(2) === HYPHEN_MINUS\n ) {\n this.consumeCodePoint();\n this.consumeCodePoint();\n return CDO_TOKEN;\n }\n break;\n case COMMERCIAL_AT:\n const a1 = this.peekCodePoint(0);\n const a2 = this.peekCodePoint(1);\n const a3 = this.peekCodePoint(2);\n if (isIdentifierStart(a1, a2, a3)) {\n const value = this.consumeName();\n return {type: TokenType.AT_KEYWORD_TOKEN, value};\n }\n break;\n case LEFT_SQUARE_BRACKET:\n return LEFT_SQUARE_BRACKET_TOKEN;\n case REVERSE_SOLIDUS:\n if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n }\n break;\n case RIGHT_SQUARE_BRACKET:\n return RIGHT_SQUARE_BRACKET_TOKEN;\n case CIRCUMFLEX_ACCENT:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return PREFIX_MATCH_TOKEN;\n }\n break;\n case LEFT_CURLY_BRACKET:\n return LEFT_CURLY_BRACKET_TOKEN;\n case RIGHT_CURLY_BRACKET:\n return RIGHT_CURLY_BRACKET_TOKEN;\n case u:\n case U:\n const u1 = this.peekCodePoint(0);\n const u2 = this.peekCodePoint(1);\n if (u1 === PLUS_SIGN && (isHex(u2) || u2 === QUESTION_MARK)) {\n this.consumeCodePoint();\n this.consumeUnicodeRangeToken();\n }\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n case VERTICAL_LINE:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return DASH_MATCH_TOKEN;\n }\n if (this.peekCodePoint(0) === VERTICAL_LINE) {\n this.consumeCodePoint();\n return COLUMN_TOKEN;\n }\n break;\n case TILDE:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return INCLUDE_MATCH_TOKEN;\n }\n break;\n case EOF:\n return EOF_TOKEN;\n }\n\n if (isWhiteSpace(codePoint)) {\n this.consumeWhiteSpace();\n return WHITESPACE_TOKEN;\n }\n\n if (isDigit(codePoint)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n\n if (isNameStartCodePoint(codePoint)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n }\n\n return {type: TokenType.DELIM_TOKEN, value: fromCodePoint(codePoint)};\n }\n\n private consumeCodePoint(): number {\n const value = this._value.shift();\n\n return typeof value === 'undefined' ? -1 : value;\n }\n\n private reconsumeCodePoint(codePoint: number) {\n this._value.unshift(codePoint);\n }\n\n private peekCodePoint(delta: number): number {\n if (delta >= this._value.length) {\n return -1;\n }\n\n return this._value[delta];\n }\n\n private consumeUnicodeRangeToken(): UnicodeRangeToken {\n const digits = [];\n let codePoint = this.consumeCodePoint();\n while (isHex(codePoint) && digits.length < 6) {\n digits.push(codePoint);\n codePoint = this.consumeCodePoint();\n }\n let questionMarks = false;\n while (codePoint === QUESTION_MARK && digits.length < 6) {\n digits.push(codePoint);\n codePoint = this.consumeCodePoint();\n questionMarks = true;\n }\n\n if (questionMarks) {\n const start = parseInt(\n fromCodePoint(...digits.map((digit) => (digit === QUESTION_MARK ? ZERO : digit))),\n 16\n );\n const end = parseInt(fromCodePoint(...digits.map((digit) => (digit === QUESTION_MARK ? F : digit))), 16);\n return {type: TokenType.UNICODE_RANGE_TOKEN, start, end};\n }\n\n const start = parseInt(fromCodePoint(...digits), 16);\n if (this.peekCodePoint(0) === HYPHEN_MINUS && isHex(this.peekCodePoint(1))) {\n this.consumeCodePoint();\n codePoint = this.consumeCodePoint();\n const endDigits = [];\n while (isHex(codePoint) && endDigits.length < 6) {\n endDigits.push(codePoint);\n codePoint = this.consumeCodePoint();\n }\n const end = parseInt(fromCodePoint(...endDigits), 16);\n\n return {type: TokenType.UNICODE_RANGE_TOKEN, start, end};\n } else {\n return {type: TokenType.UNICODE_RANGE_TOKEN, start, end: start};\n }\n }\n\n private consumeIdentLikeToken(): StringValueToken | Token {\n const value = this.consumeName();\n if (value.toLowerCase() === 'url' && this.peekCodePoint(0) === LEFT_PARENTHESIS) {\n this.consumeCodePoint();\n return this.consumeUrlToken();\n } else if (this.peekCodePoint(0) === LEFT_PARENTHESIS) {\n this.consumeCodePoint();\n return {type: TokenType.FUNCTION_TOKEN, value};\n }\n\n return {type: TokenType.IDENT_TOKEN, value};\n }\n\n private consumeUrlToken(): StringValueToken | Token {\n const value = [];\n this.consumeWhiteSpace();\n\n if (this.peekCodePoint(0) === EOF) {\n return {type: TokenType.URL_TOKEN, value: ''};\n }\n\n const next = this.peekCodePoint(0);\n if (next === APOSTROPHE || next === QUOTATION_MARK) {\n const stringToken = this.consumeStringToken(this.consumeCodePoint());\n if (stringToken.type === TokenType.STRING_TOKEN) {\n this.consumeWhiteSpace();\n\n if (this.peekCodePoint(0) === EOF || this.peekCodePoint(0) === RIGHT_PARENTHESIS) {\n this.consumeCodePoint();\n return {type: TokenType.URL_TOKEN, value: stringToken.value};\n }\n }\n\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n }\n\n while (true) {\n const codePoint = this.consumeCodePoint();\n if (codePoint === EOF || codePoint === RIGHT_PARENTHESIS) {\n return {type: TokenType.URL_TOKEN, value: fromCodePoint(...value)};\n } else if (isWhiteSpace(codePoint)) {\n this.consumeWhiteSpace();\n if (this.peekCodePoint(0) === EOF || this.peekCodePoint(0) === RIGHT_PARENTHESIS) {\n this.consumeCodePoint();\n return {type: TokenType.URL_TOKEN, value: fromCodePoint(...value)};\n }\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n } else if (\n codePoint === QUOTATION_MARK ||\n codePoint === APOSTROPHE ||\n codePoint === LEFT_PARENTHESIS ||\n isNonPrintableCodePoint(codePoint)\n ) {\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n } else if (codePoint === REVERSE_SOLIDUS) {\n if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n value.push(this.consumeEscapedCodePoint());\n } else {\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n }\n } else {\n value.push(codePoint);\n }\n }\n }\n\n private consumeWhiteSpace(): void {\n while (isWhiteSpace(this.peekCodePoint(0))) {\n this.consumeCodePoint();\n }\n }\n\n private consumeBadUrlRemnants(): void {\n while (true) {\n const codePoint = this.consumeCodePoint();\n if (codePoint === RIGHT_PARENTHESIS || codePoint === EOF) {\n return;\n }\n\n if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n this.consumeEscapedCodePoint();\n }\n }\n }\n\n private consumeStringSlice(count: number): string {\n const SLICE_STACK_SIZE = 50000;\n let value = '';\n while (count > 0) {\n const amount = Math.min(SLICE_STACK_SIZE, count);\n value += fromCodePoint(...this._value.splice(0, amount));\n count -= amount;\n }\n this._value.shift();\n\n return value;\n }\n\n private consumeStringToken(endingCodePoint: number): StringValueToken | Token {\n let value = '';\n let i = 0;\n\n do {\n const codePoint = this._value[i];\n if (codePoint === EOF || codePoint === undefined || codePoint === endingCodePoint) {\n value += this.consumeStringSlice(i);\n return {type: TokenType.STRING_TOKEN, value};\n }\n\n if (codePoint === LINE_FEED) {\n this._value.splice(0, i);\n return BAD_STRING_TOKEN;\n }\n\n if (codePoint === REVERSE_SOLIDUS) {\n const next = this._value[i + 1];\n if (next !== EOF && next !== undefined) {\n if (next === LINE_FEED) {\n value += this.consumeStringSlice(i);\n i = -1;\n this._value.shift();\n } else if (isValidEscape(codePoint, next)) {\n value += this.consumeStringSlice(i);\n value += fromCodePoint(this.consumeEscapedCodePoint());\n i = -1;\n }\n }\n }\n\n i++;\n } while (true);\n }\n\n private consumeNumber() {\n const repr = [];\n let type = FLAG_INTEGER;\n let c1 = this.peekCodePoint(0);\n if (c1 === PLUS_SIGN || c1 === HYPHEN_MINUS) {\n repr.push(this.consumeCodePoint());\n }\n\n while (isDigit(this.peekCodePoint(0))) {\n repr.push(this.consumeCodePoint());\n }\n c1 = this.peekCodePoint(0);\n let c2 = this.peekCodePoint(1);\n if (c1 === FULL_STOP && isDigit(c2)) {\n repr.push(this.consumeCodePoint(), this.consumeCodePoint());\n type = FLAG_NUMBER;\n while (isDigit(this.peekCodePoint(0))) {\n repr.push(this.consumeCodePoint());\n }\n }\n\n c1 = this.peekCodePoint(0);\n c2 = this.peekCodePoint(1);\n const c3 = this.peekCodePoint(2);\n if ((c1 === E || c1 === e) && (((c2 === PLUS_SIGN || c2 === HYPHEN_MINUS) && isDigit(c3)) || isDigit(c2))) {\n repr.push(this.consumeCodePoint(), this.consumeCodePoint());\n type = FLAG_NUMBER;\n while (isDigit(this.peekCodePoint(0))) {\n repr.push(this.consumeCodePoint());\n }\n }\n\n return [stringToNumber(repr), type];\n }\n\n private consumeNumericToken(): NumberValueToken | DimensionToken {\n const [number, flags] = this.consumeNumber();\n const c1 = this.peekCodePoint(0);\n const c2 = this.peekCodePoint(1);\n const c3 = this.peekCodePoint(2);\n\n if (isIdentifierStart(c1, c2, c3)) {\n const unit = this.consumeName();\n return {type: TokenType.DIMENSION_TOKEN, number, flags, unit};\n }\n\n if (c1 === PERCENTAGE_SIGN) {\n this.consumeCodePoint();\n return {type: TokenType.PERCENTAGE_TOKEN, number, flags};\n }\n\n return {type: TokenType.NUMBER_TOKEN, number, flags};\n }\n\n private consumeEscapedCodePoint(): number {\n const codePoint = this.consumeCodePoint();\n\n if (isHex(codePoint)) {\n let hex = fromCodePoint(codePoint);\n while (isHex(this.peekCodePoint(0)) && hex.length < 6) {\n hex += fromCodePoint(this.consumeCodePoint());\n }\n\n if (isWhiteSpace(this.peekCodePoint(0))) {\n this.consumeCodePoint();\n }\n\n const hexCodePoint = parseInt(hex, 16);\n\n if (hexCodePoint === 0 || isSurrogateCodePoint(hexCodePoint) || hexCodePoint > 0x10ffff) {\n return REPLACEMENT_CHARACTER;\n }\n\n return hexCodePoint;\n }\n\n if (codePoint === EOF) {\n return REPLACEMENT_CHARACTER;\n }\n\n return codePoint;\n }\n\n private consumeName(): string {\n let result = '';\n while (true) {\n const codePoint = this.consumeCodePoint();\n if (isNameCodePoint(codePoint)) {\n result += fromCodePoint(codePoint);\n } else if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n result += fromCodePoint(this.consumeEscapedCodePoint());\n } else {\n this.reconsumeCodePoint(codePoint);\n return result;\n }\n }\n }\n}\n","import {\n CSSToken,\n DimensionToken,\n EOF_TOKEN,\n NumberValueToken,\n StringValueToken,\n Tokenizer,\n TokenType\n} from './tokenizer';\n\nexport type CSSBlockType =\n | TokenType.LEFT_PARENTHESIS_TOKEN\n | TokenType.LEFT_SQUARE_BRACKET_TOKEN\n | TokenType.LEFT_CURLY_BRACKET_TOKEN;\n\nexport interface CSSBlock {\n type: CSSBlockType;\n values: CSSValue[];\n}\n\nexport interface CSSFunction {\n type: TokenType.FUNCTION;\n name: string;\n values: CSSValue[];\n}\n\nexport type CSSValue = CSSFunction | CSSToken | CSSBlock;\n\nexport class Parser {\n private _tokens: CSSToken[];\n\n constructor(tokens: CSSToken[]) {\n this._tokens = tokens;\n }\n\n static create(value: string): Parser {\n const tokenizer = new Tokenizer();\n tokenizer.write(value);\n return new Parser(tokenizer.read());\n }\n\n static parseValue(value: string): CSSValue {\n return Parser.create(value).parseComponentValue();\n }\n\n static parseValues(value: string): CSSValue[] {\n return Parser.create(value).parseComponentValues();\n }\n\n parseComponentValue(): CSSValue {\n let token = this.consumeToken();\n while (token.type === TokenType.WHITESPACE_TOKEN) {\n token = this.consumeToken();\n }\n\n if (token.type === TokenType.EOF_TOKEN) {\n throw new SyntaxError(`Error parsing CSS component value, unexpected EOF`);\n }\n\n this.reconsumeToken(token);\n const value = this.consumeComponentValue();\n\n do {\n token = this.consumeToken();\n } while (token.type === TokenType.WHITESPACE_TOKEN);\n\n if (token.type === TokenType.EOF_TOKEN) {\n return value;\n }\n\n throw new SyntaxError(`Error parsing CSS component value, multiple values found when expecting only one`);\n }\n\n parseComponentValues(): CSSValue[] {\n const values = [];\n while (true) {\n const value = this.consumeComponentValue();\n if (value.type === TokenType.EOF_TOKEN) {\n return values;\n }\n values.push(value);\n values.push();\n }\n }\n\n private consumeComponentValue(): CSSValue {\n const token = this.consumeToken();\n\n switch (token.type) {\n case TokenType.LEFT_CURLY_BRACKET_TOKEN:\n case TokenType.LEFT_SQUARE_BRACKET_TOKEN:\n case TokenType.LEFT_PARENTHESIS_TOKEN:\n return this.consumeSimpleBlock(token.type);\n case TokenType.FUNCTION_TOKEN:\n return this.consumeFunction(token);\n }\n\n return token;\n }\n\n private consumeSimpleBlock(type: CSSBlockType): CSSBlock {\n const block: CSSBlock = {type, values: []};\n\n let token = this.consumeToken();\n while (true) {\n if (token.type === TokenType.EOF_TOKEN || isEndingTokenFor(token, type)) {\n return block;\n }\n\n this.reconsumeToken(token);\n block.values.push(this.consumeComponentValue());\n token = this.consumeToken();\n }\n }\n\n private consumeFunction(functionToken: StringValueToken): CSSFunction {\n const cssFunction: CSSFunction = {\n name: functionToken.value,\n values: [],\n type: TokenType.FUNCTION\n };\n\n while (true) {\n const token = this.consumeToken();\n if (token.type === TokenType.EOF_TOKEN || token.type === TokenType.RIGHT_PARENTHESIS_TOKEN) {\n return cssFunction;\n }\n\n this.reconsumeToken(token);\n cssFunction.values.push(this.consumeComponentValue());\n }\n }\n\n private consumeToken(): CSSToken {\n const token = this._tokens.shift();\n return typeof token === 'undefined' ? EOF_TOKEN : token;\n }\n\n private reconsumeToken(token: CSSToken): void {\n this._tokens.unshift(token);\n }\n}\n\nexport const isDimensionToken = (token: CSSValue): token is DimensionToken => token.type === TokenType.DIMENSION_TOKEN;\nexport const isNumberToken = (token: CSSValue): token is NumberValueToken => token.type === TokenType.NUMBER_TOKEN;\nexport const isIdentToken = (token: CSSValue): token is StringValueToken => token.type === TokenType.IDENT_TOKEN;\nexport const isStringToken = (token: CSSValue): token is StringValueToken => token.type === TokenType.STRING_TOKEN;\nexport const isIdentWithValue = (token: CSSValue, value: string): boolean =>\n isIdentToken(token) && token.value === value;\n\nexport const nonWhiteSpace = (token: CSSValue): boolean => token.type !== TokenType.WHITESPACE_TOKEN;\nexport const nonFunctionArgSeparator = (token: CSSValue): boolean =>\n token.type !== TokenType.WHITESPACE_TOKEN && token.type !== TokenType.COMMA_TOKEN;\n\nexport const parseFunctionArgs = (tokens: CSSValue[]): CSSValue[][] => {\n const args: CSSValue[][] = [];\n let arg: CSSValue[] = [];\n tokens.forEach((token) => {\n if (token.type === TokenType.COMMA_TOKEN) {\n if (arg.length === 0) {\n throw new Error(`Error parsing function args, zero tokens for arg`);\n }\n args.push(arg);\n arg = [];\n return;\n }\n\n if (token.type !== TokenType.WHITESPACE_TOKEN) {\n arg.push(token);\n }\n });\n if (arg.length) {\n args.push(arg);\n }\n\n return args;\n};\n\nconst isEndingTokenFor = (token: CSSToken, type: CSSBlockType): boolean => {\n if (type === TokenType.LEFT_CURLY_BRACKET_TOKEN && token.type === TokenType.RIGHT_CURLY_BRACKET_TOKEN) {\n return true;\n }\n if (type === TokenType.LEFT_SQUARE_BRACKET_TOKEN && token.type === TokenType.RIGHT_SQUARE_BRACKET_TOKEN) {\n return true;\n }\n\n return type === TokenType.LEFT_PARENTHESIS_TOKEN && token.type === TokenType.RIGHT_PARENTHESIS_TOKEN;\n};\n","import {CSSValue} from '../syntax/parser';\nimport {DimensionToken, NumberValueToken, TokenType} from '../syntax/tokenizer';\n\nexport type Length = DimensionToken | NumberValueToken;\n\nexport const isLength = (token: CSSValue): token is Length =>\n token.type === TokenType.NUMBER_TOKEN || token.type === TokenType.DIMENSION_TOKEN;\n","import {DimensionToken, FLAG_INTEGER, NumberValueToken, TokenType} from '../syntax/tokenizer';\nimport {CSSValue, isDimensionToken} from '../syntax/parser';\nimport {isLength} from './length';\nexport type LengthPercentage = DimensionToken | NumberValueToken;\nexport type LengthPercentageTuple = [LengthPercentage] | [LengthPercentage, LengthPercentage];\n\nexport const isLengthPercentage = (token: CSSValue): token is LengthPercentage =>\n token.type === TokenType.PERCENTAGE_TOKEN || isLength(token);\nexport const parseLengthPercentageTuple = (tokens: LengthPercentage[]): LengthPercentageTuple =>\n tokens.length > 1 ? [tokens[0], tokens[1]] : [tokens[0]];\nexport const ZERO_LENGTH: NumberValueToken = {\n type: TokenType.NUMBER_TOKEN,\n number: 0,\n flags: FLAG_INTEGER\n};\n\nexport const FIFTY_PERCENT: NumberValueToken = {\n type: TokenType.PERCENTAGE_TOKEN,\n number: 50,\n flags: FLAG_INTEGER\n};\n\nexport const HUNDRED_PERCENT: NumberValueToken = {\n type: TokenType.PERCENTAGE_TOKEN,\n number: 100,\n flags: FLAG_INTEGER\n};\n\nexport const getAbsoluteValueForTuple = (\n tuple: LengthPercentageTuple,\n width: number,\n height: number\n): [number, number] => {\n const [x, y] = tuple;\n return [getAbsoluteValue(x, width), getAbsoluteValue(typeof y !== 'undefined' ? y : x, height)];\n};\nexport const getAbsoluteValue = (token: LengthPercentage, parent: number): number => {\n if (token.type === TokenType.PERCENTAGE_TOKEN) {\n return (token.number / 100) * parent;\n }\n\n if (isDimensionToken(token)) {\n switch (token.unit) {\n case 'rem':\n case 'em':\n return 16 * token.number; // TODO use correct font-size\n case 'px':\n default:\n return token.number;\n }\n }\n\n return token.number;\n};\n","import {CSSValue, isIdentToken} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {ITypeDescriptor} from '../ITypeDescriptor';\nimport {HUNDRED_PERCENT, ZERO_LENGTH} from './length-percentage';\nimport {GradientCorner} from './image';\nimport {Context} from '../../core/context';\n\nconst DEG = 'deg';\nconst GRAD = 'grad';\nconst RAD = 'rad';\nconst TURN = 'turn';\n\nexport const angle: ITypeDescriptor = {\n name: 'angle',\n parse: (_context: Context, value: CSSValue): number => {\n if (value.type === TokenType.DIMENSION_TOKEN) {\n switch (value.unit) {\n case DEG:\n return (Math.PI * value.number) / 180;\n case GRAD:\n return (Math.PI / 200) * value.number;\n case RAD:\n return value.number;\n case TURN:\n return Math.PI * 2 * value.number;\n }\n }\n\n throw new Error(`Unsupported angle type`);\n }\n};\n\nexport const isAngle = (value: CSSValue): boolean => {\n if (value.type === TokenType.DIMENSION_TOKEN) {\n if (value.unit === DEG || value.unit === GRAD || value.unit === RAD || value.unit === TURN) {\n return true;\n }\n }\n return false;\n};\n\nexport const parseNamedSide = (tokens: CSSValue[]): number | GradientCorner => {\n const sideOrCorner = tokens\n .filter(isIdentToken)\n .map((ident) => ident.value)\n .join(' ');\n\n switch (sideOrCorner) {\n case 'to bottom right':\n case 'to right bottom':\n case 'left top':\n case 'top left':\n return [ZERO_LENGTH, ZERO_LENGTH];\n case 'to top':\n case 'bottom':\n return deg(0);\n case 'to bottom left':\n case 'to left bottom':\n case 'right top':\n case 'top right':\n return [ZERO_LENGTH, HUNDRED_PERCENT];\n case 'to right':\n case 'left':\n return deg(90);\n case 'to top left':\n case 'to left top':\n case 'right bottom':\n case 'bottom right':\n return [HUNDRED_PERCENT, HUNDRED_PERCENT];\n case 'to bottom':\n case 'top':\n return deg(180);\n case 'to top right':\n case 'to right top':\n case 'left bottom':\n case 'bottom left':\n return [HUNDRED_PERCENT, ZERO_LENGTH];\n case 'to left':\n case 'right':\n return deg(270);\n }\n\n return 0;\n};\n\nexport const deg = (deg: number): number => (Math.PI * deg) / 180;\n","import {CSSValue, nonFunctionArgSeparator, Parser} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {ITypeDescriptor} from '../ITypeDescriptor';\nimport {angle, deg} from './angle';\nimport {getAbsoluteValue, isLengthPercentage} from './length-percentage';\nimport {Context} from '../../core/context';\nexport type Color = number;\n\nexport const color: ITypeDescriptor = {\n name: 'color',\n parse: (context: Context, value: CSSValue): Color => {\n if (value.type === TokenType.FUNCTION) {\n const colorFunction = SUPPORTED_COLOR_FUNCTIONS[value.name];\n if (typeof colorFunction === 'undefined') {\n throw new Error(`Attempting to parse an unsupported color function \"${value.name}\"`);\n }\n return colorFunction(context, value.values);\n }\n\n if (value.type === TokenType.HASH_TOKEN) {\n if (value.value.length === 3) {\n const r = value.value.substring(0, 1);\n const g = value.value.substring(1, 2);\n const b = value.value.substring(2, 3);\n return pack(parseInt(r + r, 16), parseInt(g + g, 16), parseInt(b + b, 16), 1);\n }\n\n if (value.value.length === 4) {\n const r = value.value.substring(0, 1);\n const g = value.value.substring(1, 2);\n const b = value.value.substring(2, 3);\n const a = value.value.substring(3, 4);\n return pack(parseInt(r + r, 16), parseInt(g + g, 16), parseInt(b + b, 16), parseInt(a + a, 16) / 255);\n }\n\n if (value.value.length === 6) {\n const r = value.value.substring(0, 2);\n const g = value.value.substring(2, 4);\n const b = value.value.substring(4, 6);\n return pack(parseInt(r, 16), parseInt(g, 16), parseInt(b, 16), 1);\n }\n\n if (value.value.length === 8) {\n const r = value.value.substring(0, 2);\n const g = value.value.substring(2, 4);\n const b = value.value.substring(4, 6);\n const a = value.value.substring(6, 8);\n return pack(parseInt(r, 16), parseInt(g, 16), parseInt(b, 16), parseInt(a, 16) / 255);\n }\n }\n\n if (value.type === TokenType.IDENT_TOKEN) {\n const namedColor = COLORS[value.value.toUpperCase()];\n if (typeof namedColor !== 'undefined') {\n return namedColor;\n }\n }\n\n return COLORS.TRANSPARENT;\n }\n};\n\nexport const isTransparent = (color: Color): boolean => (0xff & color) === 0;\n\nexport const asString = (color: Color): string => {\n const alpha = 0xff & color;\n const blue = 0xff & (color >> 8);\n const green = 0xff & (color >> 16);\n const red = 0xff & (color >> 24);\n return alpha < 255 ? `rgba(${red},${green},${blue},${alpha / 255})` : `rgb(${red},${green},${blue})`;\n};\n\nexport const pack = (r: number, g: number, b: number, a: number): Color =>\n ((r << 24) | (g << 16) | (b << 8) | (Math.round(a * 255) << 0)) >>> 0;\n\nconst getTokenColorValue = (token: CSSValue, i: number): number => {\n if (token.type === TokenType.NUMBER_TOKEN) {\n return token.number;\n }\n\n if (token.type === TokenType.PERCENTAGE_TOKEN) {\n const max = i === 3 ? 1 : 255;\n return i === 3 ? (token.number / 100) * max : Math.round((token.number / 100) * max);\n }\n\n return 0;\n};\n\nconst rgb = (_context: Context, args: CSSValue[]): number => {\n const tokens = args.filter(nonFunctionArgSeparator);\n\n if (tokens.length === 3) {\n const [r, g, b] = tokens.map(getTokenColorValue);\n return pack(r, g, b, 1);\n }\n\n if (tokens.length === 4) {\n const [r, g, b, a] = tokens.map(getTokenColorValue);\n return pack(r, g, b, a);\n }\n\n return 0;\n};\n\nfunction hue2rgb(t1: number, t2: number, hue: number): number {\n if (hue < 0) {\n hue += 1;\n }\n if (hue >= 1) {\n hue -= 1;\n }\n\n if (hue < 1 / 6) {\n return (t2 - t1) * hue * 6 + t1;\n } else if (hue < 1 / 2) {\n return t2;\n } else if (hue < 2 / 3) {\n return (t2 - t1) * 6 * (2 / 3 - hue) + t1;\n } else {\n return t1;\n }\n}\n\nconst hsl = (context: Context, args: CSSValue[]): number => {\n const tokens = args.filter(nonFunctionArgSeparator);\n const [hue, saturation, lightness, alpha] = tokens;\n\n const h = (hue.type === TokenType.NUMBER_TOKEN ? deg(hue.number) : angle.parse(context, hue)) / (Math.PI * 2);\n const s = isLengthPercentage(saturation) ? saturation.number / 100 : 0;\n const l = isLengthPercentage(lightness) ? lightness.number / 100 : 0;\n const a = typeof alpha !== 'undefined' && isLengthPercentage(alpha) ? getAbsoluteValue(alpha, 1) : 1;\n\n if (s === 0) {\n return pack(l * 255, l * 255, l * 255, 1);\n }\n\n const t2 = l <= 0.5 ? l * (s + 1) : l + s - l * s;\n\n const t1 = l * 2 - t2;\n const r = hue2rgb(t1, t2, h + 1 / 3);\n const g = hue2rgb(t1, t2, h);\n const b = hue2rgb(t1, t2, h - 1 / 3);\n return pack(r * 255, g * 255, b * 255, a);\n};\n\nconst SUPPORTED_COLOR_FUNCTIONS: {\n [key: string]: (context: Context, args: CSSValue[]) => number;\n} = {\n hsl: hsl,\n hsla: hsl,\n rgb: rgb,\n rgba: rgb\n};\n\nexport const parseColor = (context: Context, value: string): Color =>\n color.parse(context, Parser.create(value).parseComponentValue());\n\nexport const COLORS: {[key: string]: Color} = {\n ALICEBLUE: 0xf0f8ffff,\n ANTIQUEWHITE: 0xfaebd7ff,\n AQUA: 0x00ffffff,\n AQUAMARINE: 0x7fffd4ff,\n AZURE: 0xf0ffffff,\n BEIGE: 0xf5f5dcff,\n BISQUE: 0xffe4c4ff,\n BLACK: 0x000000ff,\n BLANCHEDALMOND: 0xffebcdff,\n BLUE: 0x0000ffff,\n BLUEVIOLET: 0x8a2be2ff,\n BROWN: 0xa52a2aff,\n BURLYWOOD: 0xdeb887ff,\n CADETBLUE: 0x5f9ea0ff,\n CHARTREUSE: 0x7fff00ff,\n CHOCOLATE: 0xd2691eff,\n CORAL: 0xff7f50ff,\n CORNFLOWERBLUE: 0x6495edff,\n CORNSILK: 0xfff8dcff,\n CRIMSON: 0xdc143cff,\n CYAN: 0x00ffffff,\n DARKBLUE: 0x00008bff,\n DARKCYAN: 0x008b8bff,\n DARKGOLDENROD: 0xb886bbff,\n DARKGRAY: 0xa9a9a9ff,\n DARKGREEN: 0x006400ff,\n DARKGREY: 0xa9a9a9ff,\n DARKKHAKI: 0xbdb76bff,\n DARKMAGENTA: 0x8b008bff,\n DARKOLIVEGREEN: 0x556b2fff,\n DARKORANGE: 0xff8c00ff,\n DARKORCHID: 0x9932ccff,\n DARKRED: 0x8b0000ff,\n DARKSALMON: 0xe9967aff,\n DARKSEAGREEN: 0x8fbc8fff,\n DARKSLATEBLUE: 0x483d8bff,\n DARKSLATEGRAY: 0x2f4f4fff,\n DARKSLATEGREY: 0x2f4f4fff,\n DARKTURQUOISE: 0x00ced1ff,\n DARKVIOLET: 0x9400d3ff,\n DEEPPINK: 0xff1493ff,\n DEEPSKYBLUE: 0x00bfffff,\n DIMGRAY: 0x696969ff,\n DIMGREY: 0x696969ff,\n DODGERBLUE: 0x1e90ffff,\n FIREBRICK: 0xb22222ff,\n FLORALWHITE: 0xfffaf0ff,\n FORESTGREEN: 0x228b22ff,\n FUCHSIA: 0xff00ffff,\n GAINSBORO: 0xdcdcdcff,\n GHOSTWHITE: 0xf8f8ffff,\n GOLD: 0xffd700ff,\n GOLDENROD: 0xdaa520ff,\n GRAY: 0x808080ff,\n GREEN: 0x008000ff,\n GREENYELLOW: 0xadff2fff,\n GREY: 0x808080ff,\n HONEYDEW: 0xf0fff0ff,\n HOTPINK: 0xff69b4ff,\n INDIANRED: 0xcd5c5cff,\n INDIGO: 0x4b0082ff,\n IVORY: 0xfffff0ff,\n KHAKI: 0xf0e68cff,\n LAVENDER: 0xe6e6faff,\n LAVENDERBLUSH: 0xfff0f5ff,\n LAWNGREEN: 0x7cfc00ff,\n LEMONCHIFFON: 0xfffacdff,\n LIGHTBLUE: 0xadd8e6ff,\n LIGHTCORAL: 0xf08080ff,\n LIGHTCYAN: 0xe0ffffff,\n LIGHTGOLDENRODYELLOW: 0xfafad2ff,\n LIGHTGRAY: 0xd3d3d3ff,\n LIGHTGREEN: 0x90ee90ff,\n LIGHTGREY: 0xd3d3d3ff,\n LIGHTPINK: 0xffb6c1ff,\n LIGHTSALMON: 0xffa07aff,\n LIGHTSEAGREEN: 0x20b2aaff,\n LIGHTSKYBLUE: 0x87cefaff,\n LIGHTSLATEGRAY: 0x778899ff,\n LIGHTSLATEGREY: 0x778899ff,\n LIGHTSTEELBLUE: 0xb0c4deff,\n LIGHTYELLOW: 0xffffe0ff,\n LIME: 0x00ff00ff,\n LIMEGREEN: 0x32cd32ff,\n LINEN: 0xfaf0e6ff,\n MAGENTA: 0xff00ffff,\n MAROON: 0x800000ff,\n MEDIUMAQUAMARINE: 0x66cdaaff,\n MEDIUMBLUE: 0x0000cdff,\n MEDIUMORCHID: 0xba55d3ff,\n MEDIUMPURPLE: 0x9370dbff,\n MEDIUMSEAGREEN: 0x3cb371ff,\n MEDIUMSLATEBLUE: 0x7b68eeff,\n MEDIUMSPRINGGREEN: 0x00fa9aff,\n MEDIUMTURQUOISE: 0x48d1ccff,\n MEDIUMVIOLETRED: 0xc71585ff,\n MIDNIGHTBLUE: 0x191970ff,\n MINTCREAM: 0xf5fffaff,\n MISTYROSE: 0xffe4e1ff,\n MOCCASIN: 0xffe4b5ff,\n NAVAJOWHITE: 0xffdeadff,\n NAVY: 0x000080ff,\n OLDLACE: 0xfdf5e6ff,\n OLIVE: 0x808000ff,\n OLIVEDRAB: 0x6b8e23ff,\n ORANGE: 0xffa500ff,\n ORANGERED: 0xff4500ff,\n ORCHID: 0xda70d6ff,\n PALEGOLDENROD: 0xeee8aaff,\n PALEGREEN: 0x98fb98ff,\n PALETURQUOISE: 0xafeeeeff,\n PALEVIOLETRED: 0xdb7093ff,\n PAPAYAWHIP: 0xffefd5ff,\n PEACHPUFF: 0xffdab9ff,\n PERU: 0xcd853fff,\n PINK: 0xffc0cbff,\n PLUM: 0xdda0ddff,\n POWDERBLUE: 0xb0e0e6ff,\n PURPLE: 0x800080ff,\n REBECCAPURPLE: 0x663399ff,\n RED: 0xff0000ff,\n ROSYBROWN: 0xbc8f8fff,\n ROYALBLUE: 0x4169e1ff,\n SADDLEBROWN: 0x8b4513ff,\n SALMON: 0xfa8072ff,\n SANDYBROWN: 0xf4a460ff,\n SEAGREEN: 0x2e8b57ff,\n SEASHELL: 0xfff5eeff,\n SIENNA: 0xa0522dff,\n SILVER: 0xc0c0c0ff,\n SKYBLUE: 0x87ceebff,\n SLATEBLUE: 0x6a5acdff,\n SLATEGRAY: 0x708090ff,\n SLATEGREY: 0x708090ff,\n SNOW: 0xfffafaff,\n SPRINGGREEN: 0x00ff7fff,\n STEELBLUE: 0x4682b4ff,\n TAN: 0xd2b48cff,\n TEAL: 0x008080ff,\n THISTLE: 0xd8bfd8ff,\n TOMATO: 0xff6347ff,\n TRANSPARENT: 0x00000000,\n TURQUOISE: 0x40e0d0ff,\n VIOLET: 0xee82eeff,\n WHEAT: 0xf5deb3ff,\n WHITE: 0xffffffff,\n WHITESMOKE: 0xf5f5f5ff,\n YELLOW: 0xffff00ff,\n YELLOWGREEN: 0x9acd32ff\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const enum BACKGROUND_CLIP {\n BORDER_BOX = 0,\n PADDING_BOX = 1,\n CONTENT_BOX = 2\n}\n\nexport type BackgroundClip = BACKGROUND_CLIP[];\n\nexport const backgroundClip: IPropertyListDescriptor = {\n name: 'background-clip',\n initialValue: 'border-box',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundClip => {\n return tokens.map((token) => {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'padding-box':\n return BACKGROUND_CLIP.PADDING_BOX;\n case 'content-box':\n return BACKGROUND_CLIP.CONTENT_BOX;\n }\n }\n return BACKGROUND_CLIP.BORDER_BOX;\n });\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nexport const backgroundColor: IPropertyTypeValueDescriptor = {\n name: `background-color`,\n initialValue: 'transparent',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n};\n","import {CSSValue} from '../../syntax/parser';\nimport {\n CSSRadialExtent,\n CSSRadialGradientImage,\n CSSRadialShape,\n GradientColorStop,\n GradientCorner,\n UnprocessedGradientColorStop\n} from '../image';\nimport {color as colorType} from '../color';\nimport {getAbsoluteValue, HUNDRED_PERCENT, isLengthPercentage, ZERO_LENGTH} from '../length-percentage';\nimport {Context} from '../../../core/context';\n\nexport const parseColorStop = (context: Context, args: CSSValue[]): UnprocessedGradientColorStop => {\n const color = colorType.parse(context, args[0]);\n const stop = args[1];\n return stop && isLengthPercentage(stop) ? {color, stop} : {color, stop: null};\n};\n\nexport const processColorStops = (stops: UnprocessedGradientColorStop[], lineLength: number): GradientColorStop[] => {\n const first = stops[0];\n const last = stops[stops.length - 1];\n if (first.stop === null) {\n first.stop = ZERO_LENGTH;\n }\n\n if (last.stop === null) {\n last.stop = HUNDRED_PERCENT;\n }\n\n const processStops: (number | null)[] = [];\n let previous = 0;\n for (let i = 0; i < stops.length; i++) {\n const stop = stops[i].stop;\n if (stop !== null) {\n const absoluteValue = getAbsoluteValue(stop, lineLength);\n if (absoluteValue > previous) {\n processStops.push(absoluteValue);\n } else {\n processStops.push(previous);\n }\n previous = absoluteValue;\n } else {\n processStops.push(null);\n }\n }\n\n let gapBegin = null;\n for (let i = 0; i < processStops.length; i++) {\n const stop = processStops[i];\n if (stop === null) {\n if (gapBegin === null) {\n gapBegin = i;\n }\n } else if (gapBegin !== null) {\n const gapLength = i - gapBegin;\n const beforeGap = processStops[gapBegin - 1] as number;\n const gapValue = (stop - beforeGap) / (gapLength + 1);\n for (let g = 1; g <= gapLength; g++) {\n processStops[gapBegin + g - 1] = gapValue * g;\n }\n gapBegin = null;\n }\n }\n\n return stops.map(({color}, i) => {\n return {color, stop: Math.max(Math.min(1, (processStops[i] as number) / lineLength), 0)};\n });\n};\n\nconst getAngleFromCorner = (corner: GradientCorner, width: number, height: number): number => {\n const centerX = width / 2;\n const centerY = height / 2;\n const x = getAbsoluteValue(corner[0], width) - centerX;\n const y = centerY - getAbsoluteValue(corner[1], height);\n\n return (Math.atan2(y, x) + Math.PI * 2) % (Math.PI * 2);\n};\n\nexport const calculateGradientDirection = (\n angle: number | GradientCorner,\n width: number,\n height: number\n): [number, number, number, number, number] => {\n const radian = typeof angle === 'number' ? angle : getAngleFromCorner(angle, width, height);\n\n const lineLength = Math.abs(width * Math.sin(radian)) + Math.abs(height * Math.cos(radian));\n\n const halfWidth = width / 2;\n const halfHeight = height / 2;\n const halfLineLength = lineLength / 2;\n\n const yDiff = Math.sin(radian - Math.PI / 2) * halfLineLength;\n const xDiff = Math.cos(radian - Math.PI / 2) * halfLineLength;\n\n return [lineLength, halfWidth - xDiff, halfWidth + xDiff, halfHeight - yDiff, halfHeight + yDiff];\n};\n\nconst distance = (a: number, b: number): number => Math.sqrt(a * a + b * b);\n\nconst findCorner = (width: number, height: number, x: number, y: number, closest: boolean): [number, number] => {\n const corners = [\n [0, 0],\n [0, height],\n [width, 0],\n [width, height]\n ];\n\n return corners.reduce(\n (stat, corner) => {\n const [cx, cy] = corner;\n const d = distance(x - cx, y - cy);\n if (closest ? d < stat.optimumDistance : d > stat.optimumDistance) {\n return {\n optimumCorner: corner,\n optimumDistance: d\n };\n }\n\n return stat;\n },\n {\n optimumDistance: closest ? Infinity : -Infinity,\n optimumCorner: null\n }\n ).optimumCorner as [number, number];\n};\n\nexport const calculateRadius = (\n gradient: CSSRadialGradientImage,\n x: number,\n y: number,\n width: number,\n height: number\n): [number, number] => {\n let rx = 0;\n let ry = 0;\n\n switch (gradient.size) {\n case CSSRadialExtent.CLOSEST_SIDE:\n // The ending shape is sized so that that it exactly meets the side of the gradient box closest to the gradient’s center.\n // If the shape is an ellipse, it exactly meets the closest side in each dimension.\n if (gradient.shape === CSSRadialShape.CIRCLE) {\n rx = ry = Math.min(Math.abs(x), Math.abs(x - width), Math.abs(y), Math.abs(y - height));\n } else if (gradient.shape === CSSRadialShape.ELLIPSE) {\n rx = Math.min(Math.abs(x), Math.abs(x - width));\n ry = Math.min(Math.abs(y), Math.abs(y - height));\n }\n break;\n\n case CSSRadialExtent.CLOSEST_CORNER:\n // The ending shape is sized so that that it passes through the corner of the gradient box closest to the gradient’s center.\n // If the shape is an ellipse, the ending shape is given the same aspect-ratio it would have if closest-side were specified.\n if (gradient.shape === CSSRadialShape.CIRCLE) {\n rx = ry = Math.min(\n distance(x, y),\n distance(x, y - height),\n distance(x - width, y),\n distance(x - width, y - height)\n );\n } else if (gradient.shape === CSSRadialShape.ELLIPSE) {\n // Compute the ratio ry/rx (which is to be the same as for \"closest-side\")\n const c = Math.min(Math.abs(y), Math.abs(y - height)) / Math.min(Math.abs(x), Math.abs(x - width));\n const [cx, cy] = findCorner(width, height, x, y, true);\n rx = distance(cx - x, (cy - y) / c);\n ry = c * rx;\n }\n break;\n\n case CSSRadialExtent.FARTHEST_SIDE:\n // Same as closest-side, except the ending shape is sized based on the farthest side(s)\n if (gradient.shape === CSSRadialShape.CIRCLE) {\n rx = ry = Math.max(Math.abs(x), Math.abs(x - width), Math.abs(y), Math.abs(y - height));\n } else if (gradient.shape === CSSRadialShape.ELLIPSE) {\n rx = Math.max(Math.abs(x), Math.abs(x - width));\n ry = Math.max(Math.abs(y), Math.abs(y - height));\n }\n break;\n\n case CSSRadialExtent.FARTHEST_CORNER:\n // Same as closest-corner, except the ending shape is sized based on the farthest corner.\n // If the shape is an ellipse, the ending shape is given the same aspect ratio it would have if farthest-side were specified.\n if (gradient.shape === CSSRadialShape.CIRCLE) {\n rx = ry = Math.max(\n distance(x, y),\n distance(x, y - height),\n distance(x - width, y),\n distance(x - width, y - height)\n );\n } else if (gradient.shape === CSSRadialShape.ELLIPSE) {\n // Compute the ratio ry/rx (which is to be the same as for \"farthest-side\")\n const c = Math.max(Math.abs(y), Math.abs(y - height)) / Math.max(Math.abs(x), Math.abs(x - width));\n const [cx, cy] = findCorner(width, height, x, y, false);\n rx = distance(cx - x, (cy - y) / c);\n ry = c * rx;\n }\n break;\n }\n\n if (Array.isArray(gradient.size)) {\n rx = getAbsoluteValue(gradient.size[0], width);\n ry = gradient.size.length === 2 ? getAbsoluteValue(gradient.size[1], height) : rx;\n }\n\n return [rx, ry];\n};\n","import {CSSValue, parseFunctionArgs} from '../../syntax/parser';\nimport {CSSImageType, CSSLinearGradientImage, GradientCorner, UnprocessedGradientColorStop} from '../image';\nimport {TokenType} from '../../syntax/tokenizer';\nimport {isAngle, angle as angleType, parseNamedSide, deg} from '../angle';\nimport {parseColorStop} from './gradient';\nimport {Context} from '../../../core/context';\n\nexport const prefixLinearGradient = (context: Context, tokens: CSSValue[]): CSSLinearGradientImage => {\n let angle: number | GradientCorner = deg(180);\n const stops: UnprocessedGradientColorStop[] = [];\n\n parseFunctionArgs(tokens).forEach((arg, i) => {\n if (i === 0) {\n const firstToken = arg[0];\n if (\n firstToken.type === TokenType.IDENT_TOKEN &&\n ['top', 'left', 'right', 'bottom'].indexOf(firstToken.value) !== -1\n ) {\n angle = parseNamedSide(arg);\n return;\n } else if (isAngle(firstToken)) {\n angle = (angleType.parse(context, firstToken) + deg(270)) % deg(360);\n return;\n }\n }\n const colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n });\n\n return {\n angle,\n stops,\n type: CSSImageType.LINEAR_GRADIENT\n };\n};\n","import {CSSValue, isIdentToken, parseFunctionArgs} from '../../syntax/parser';\nimport {\n CSSImageType,\n CSSRadialExtent,\n CSSRadialGradientImage,\n CSSRadialShape,\n CSSRadialSize,\n UnprocessedGradientColorStop\n} from '../image';\nimport {parseColorStop} from './gradient';\nimport {FIFTY_PERCENT, HUNDRED_PERCENT, isLengthPercentage, LengthPercentage, ZERO_LENGTH} from '../length-percentage';\nimport {isLength} from '../length';\nimport {Context} from '../../../core/context';\nexport const CLOSEST_SIDE = 'closest-side';\nexport const FARTHEST_SIDE = 'farthest-side';\nexport const CLOSEST_CORNER = 'closest-corner';\nexport const FARTHEST_CORNER = 'farthest-corner';\nexport const CIRCLE = 'circle';\nexport const ELLIPSE = 'ellipse';\nexport const COVER = 'cover';\nexport const CONTAIN = 'contain';\n\nexport const radialGradient = (context: Context, tokens: CSSValue[]): CSSRadialGradientImage => {\n let shape: CSSRadialShape = CSSRadialShape.CIRCLE;\n let size: CSSRadialSize = CSSRadialExtent.FARTHEST_CORNER;\n const stops: UnprocessedGradientColorStop[] = [];\n const position: LengthPercentage[] = [];\n parseFunctionArgs(tokens).forEach((arg, i) => {\n let isColorStop = true;\n if (i === 0) {\n let isAtPosition = false;\n isColorStop = arg.reduce((acc, token) => {\n if (isAtPosition) {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'center':\n position.push(FIFTY_PERCENT);\n return acc;\n case 'top':\n case 'left':\n position.push(ZERO_LENGTH);\n return acc;\n case 'right':\n case 'bottom':\n position.push(HUNDRED_PERCENT);\n return acc;\n }\n } else if (isLengthPercentage(token) || isLength(token)) {\n position.push(token);\n }\n } else if (isIdentToken(token)) {\n switch (token.value) {\n case CIRCLE:\n shape = CSSRadialShape.CIRCLE;\n return false;\n case ELLIPSE:\n shape = CSSRadialShape.ELLIPSE;\n return false;\n case 'at':\n isAtPosition = true;\n return false;\n case CLOSEST_SIDE:\n size = CSSRadialExtent.CLOSEST_SIDE;\n return false;\n case COVER:\n case FARTHEST_SIDE:\n size = CSSRadialExtent.FARTHEST_SIDE;\n return false;\n case CONTAIN:\n case CLOSEST_CORNER:\n size = CSSRadialExtent.CLOSEST_CORNER;\n return false;\n case FARTHEST_CORNER:\n size = CSSRadialExtent.FARTHEST_CORNER;\n return false;\n }\n } else if (isLength(token) || isLengthPercentage(token)) {\n if (!Array.isArray(size)) {\n size = [];\n }\n size.push(token);\n return false;\n }\n return acc;\n }, isColorStop);\n }\n\n if (isColorStop) {\n const colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n }\n });\n\n return {size, shape, stops, position, type: CSSImageType.RADIAL_GRADIENT};\n};\n","import {CSSValue, isIdentToken, parseFunctionArgs} from '../../syntax/parser';\nimport {\n CSSImageType,\n CSSRadialExtent,\n CSSRadialGradientImage,\n CSSRadialShape,\n CSSRadialSize,\n UnprocessedGradientColorStop\n} from '../image';\nimport {parseColorStop} from './gradient';\nimport {FIFTY_PERCENT, HUNDRED_PERCENT, isLengthPercentage, LengthPercentage, ZERO_LENGTH} from '../length-percentage';\nimport {isLength} from '../length';\nimport {\n CIRCLE,\n CLOSEST_CORNER,\n CLOSEST_SIDE,\n CONTAIN,\n COVER,\n ELLIPSE,\n FARTHEST_CORNER,\n FARTHEST_SIDE\n} from './radial-gradient';\nimport {Context} from '../../../core/context';\n\nexport const prefixRadialGradient = (context: Context, tokens: CSSValue[]): CSSRadialGradientImage => {\n let shape: CSSRadialShape = CSSRadialShape.CIRCLE;\n let size: CSSRadialSize = CSSRadialExtent.FARTHEST_CORNER;\n const stops: UnprocessedGradientColorStop[] = [];\n const position: LengthPercentage[] = [];\n\n parseFunctionArgs(tokens).forEach((arg, i) => {\n let isColorStop = true;\n if (i === 0) {\n isColorStop = arg.reduce((acc, token) => {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'center':\n position.push(FIFTY_PERCENT);\n return false;\n case 'top':\n case 'left':\n position.push(ZERO_LENGTH);\n return false;\n case 'right':\n case 'bottom':\n position.push(HUNDRED_PERCENT);\n return false;\n }\n } else if (isLengthPercentage(token) || isLength(token)) {\n position.push(token);\n return false;\n }\n\n return acc;\n }, isColorStop);\n } else if (i === 1) {\n isColorStop = arg.reduce((acc, token) => {\n if (isIdentToken(token)) {\n switch (token.value) {\n case CIRCLE:\n shape = CSSRadialShape.CIRCLE;\n return false;\n case ELLIPSE:\n shape = CSSRadialShape.ELLIPSE;\n return false;\n case CONTAIN:\n case CLOSEST_SIDE:\n size = CSSRadialExtent.CLOSEST_SIDE;\n return false;\n case FARTHEST_SIDE:\n size = CSSRadialExtent.FARTHEST_SIDE;\n return false;\n case CLOSEST_CORNER:\n size = CSSRadialExtent.CLOSEST_CORNER;\n return false;\n case COVER:\n case FARTHEST_CORNER:\n size = CSSRadialExtent.FARTHEST_CORNER;\n return false;\n }\n } else if (isLength(token) || isLengthPercentage(token)) {\n if (!Array.isArray(size)) {\n size = [];\n }\n size.push(token);\n return false;\n }\n\n return acc;\n }, isColorStop);\n }\n\n if (isColorStop) {\n const colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n }\n });\n\n return {size, shape, stops, position, type: CSSImageType.RADIAL_GRADIENT};\n};\n","import {CSSValue} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Color} from './color';\nimport {linearGradient} from './functions/linear-gradient';\nimport {prefixLinearGradient} from './functions/-prefix-linear-gradient';\nimport {ITypeDescriptor} from '../ITypeDescriptor';\nimport {LengthPercentage} from './length-percentage';\nimport {webkitGradient} from './functions/-webkit-gradient';\nimport {radialGradient} from './functions/radial-gradient';\nimport {prefixRadialGradient} from './functions/-prefix-radial-gradient';\nimport {Context} from '../../core/context';\n\nexport const enum CSSImageType {\n URL,\n LINEAR_GRADIENT,\n RADIAL_GRADIENT\n}\n\nexport const isLinearGradient = (background: ICSSImage): background is CSSLinearGradientImage => {\n return background.type === CSSImageType.LINEAR_GRADIENT;\n};\n\nexport const isRadialGradient = (background: ICSSImage): background is CSSRadialGradientImage => {\n return background.type === CSSImageType.RADIAL_GRADIENT;\n};\n\nexport interface UnprocessedGradientColorStop {\n color: Color;\n stop: LengthPercentage | null;\n}\n\nexport interface GradientColorStop {\n color: Color;\n stop: number;\n}\n\nexport interface ICSSImage {\n type: CSSImageType;\n}\n\nexport interface CSSURLImage extends ICSSImage {\n url: string;\n type: CSSImageType.URL;\n}\n\n// interface ICSSGeneratedImage extends ICSSImage {}\n\nexport type GradientCorner = [LengthPercentage, LengthPercentage];\n\ninterface ICSSGradientImage extends ICSSImage {\n stops: UnprocessedGradientColorStop[];\n}\n\nexport interface CSSLinearGradientImage extends ICSSGradientImage {\n angle: number | GradientCorner;\n type: CSSImageType.LINEAR_GRADIENT;\n}\n\nexport const enum CSSRadialShape {\n CIRCLE,\n ELLIPSE\n}\n\nexport const enum CSSRadialExtent {\n CLOSEST_SIDE,\n FARTHEST_SIDE,\n CLOSEST_CORNER,\n FARTHEST_CORNER\n}\n\nexport type CSSRadialSize = CSSRadialExtent | LengthPercentage[];\n\nexport interface CSSRadialGradientImage extends ICSSGradientImage {\n type: CSSImageType.RADIAL_GRADIENT;\n shape: CSSRadialShape;\n size: CSSRadialSize;\n position: LengthPercentage[];\n}\n\nexport const image: ITypeDescriptor = {\n name: 'image',\n parse: (context: Context, value: CSSValue): ICSSImage => {\n if (value.type === TokenType.URL_TOKEN) {\n const image: CSSURLImage = {url: value.value, type: CSSImageType.URL};\n context.cache.addImage(value.value);\n return image;\n }\n\n if (value.type === TokenType.FUNCTION) {\n const imageFunction = SUPPORTED_IMAGE_FUNCTIONS[value.name];\n if (typeof imageFunction === 'undefined') {\n throw new Error(`Attempting to parse an unsupported image function \"${value.name}\"`);\n }\n return imageFunction(context, value.values);\n }\n\n throw new Error(`Unsupported image type ${value.type}`);\n }\n};\n\nexport function isSupportedImage(value: CSSValue): boolean {\n return (\n !(value.type === TokenType.IDENT_TOKEN && value.value === 'none') &&\n (value.type !== TokenType.FUNCTION || !!SUPPORTED_IMAGE_FUNCTIONS[value.name])\n );\n}\n\nconst SUPPORTED_IMAGE_FUNCTIONS: Record ICSSImage> = {\n 'linear-gradient': linearGradient,\n '-moz-linear-gradient': prefixLinearGradient,\n '-ms-linear-gradient': prefixLinearGradient,\n '-o-linear-gradient': prefixLinearGradient,\n '-webkit-linear-gradient': prefixLinearGradient,\n 'radial-gradient': radialGradient,\n '-moz-radial-gradient': prefixRadialGradient,\n '-ms-radial-gradient': prefixRadialGradient,\n '-o-radial-gradient': prefixRadialGradient,\n '-webkit-radial-gradient': prefixRadialGradient,\n '-webkit-gradient': webkitGradient\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken, parseFunctionArgs} from '../syntax/parser';\nimport {isLengthPercentage, LengthPercentage} from '../types/length-percentage';\nimport {StringValueToken} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\nexport enum BACKGROUND_SIZE {\n AUTO = 'auto',\n CONTAIN = 'contain',\n COVER = 'cover'\n}\n\nexport type BackgroundSizeInfo = LengthPercentage | StringValueToken;\nexport type BackgroundSize = BackgroundSizeInfo[][];\n\nexport const backgroundSize: IPropertyListDescriptor = {\n name: 'background-size',\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundSize => {\n return parseFunctionArgs(tokens).map((values) => values.filter(isBackgroundSizeInfoToken));\n }\n};\n\nconst isBackgroundSizeInfoToken = (value: CSSValue): value is BackgroundSizeInfo =>\n isIdentToken(value) || isLengthPercentage(value);\n","import {CSSValue, parseFunctionArgs} from '../../syntax/parser';\nimport {TokenType} from '../../syntax/tokenizer';\nimport {isAngle, angle as angleType, parseNamedSide, deg} from '../angle';\nimport {CSSImageType, CSSLinearGradientImage, GradientCorner, UnprocessedGradientColorStop} from '../image';\nimport {parseColorStop} from './gradient';\nimport {Context} from '../../../core/context';\n\nexport const linearGradient = (context: Context, tokens: CSSValue[]): CSSLinearGradientImage => {\n let angle: number | GradientCorner = deg(180);\n const stops: UnprocessedGradientColorStop[] = [];\n\n parseFunctionArgs(tokens).forEach((arg, i) => {\n if (i === 0) {\n const firstToken = arg[0];\n if (firstToken.type === TokenType.IDENT_TOKEN && firstToken.value === 'to') {\n angle = parseNamedSide(arg);\n return;\n } else if (isAngle(firstToken)) {\n angle = angleType.parse(context, firstToken);\n return;\n }\n }\n const colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n });\n\n return {angle, stops, type: CSSImageType.LINEAR_GRADIENT};\n};\n","import {CSSValue, isIdentToken, isNumberToken, nonFunctionArgSeparator, parseFunctionArgs} from '../../syntax/parser';\nimport {\n CSSImageType,\n CSSLinearGradientImage,\n CSSRadialExtent,\n CSSRadialGradientImage,\n CSSRadialShape,\n CSSRadialSize,\n UnprocessedGradientColorStop\n} from '../image';\nimport {deg} from '../angle';\nimport {TokenType} from '../../syntax/tokenizer';\nimport {color as colorType} from '../color';\nimport {HUNDRED_PERCENT, LengthPercentage, ZERO_LENGTH} from '../length-percentage';\nimport {Context} from '../../../core/context';\n\nexport const webkitGradient = (\n context: Context,\n tokens: CSSValue[]\n): CSSLinearGradientImage | CSSRadialGradientImage => {\n const angle = deg(180);\n const stops: UnprocessedGradientColorStop[] = [];\n let type = CSSImageType.LINEAR_GRADIENT;\n const shape: CSSRadialShape = CSSRadialShape.CIRCLE;\n const size: CSSRadialSize = CSSRadialExtent.FARTHEST_CORNER;\n const position: LengthPercentage[] = [];\n parseFunctionArgs(tokens).forEach((arg, i) => {\n const firstToken = arg[0];\n if (i === 0) {\n if (isIdentToken(firstToken) && firstToken.value === 'linear') {\n type = CSSImageType.LINEAR_GRADIENT;\n return;\n } else if (isIdentToken(firstToken) && firstToken.value === 'radial') {\n type = CSSImageType.RADIAL_GRADIENT;\n return;\n }\n }\n\n if (firstToken.type === TokenType.FUNCTION) {\n if (firstToken.name === 'from') {\n const color = colorType.parse(context, firstToken.values[0]);\n stops.push({stop: ZERO_LENGTH, color});\n } else if (firstToken.name === 'to') {\n const color = colorType.parse(context, firstToken.values[0]);\n stops.push({stop: HUNDRED_PERCENT, color});\n } else if (firstToken.name === 'color-stop') {\n const values = firstToken.values.filter(nonFunctionArgSeparator);\n if (values.length === 2) {\n const color = colorType.parse(context, values[1]);\n const stop = values[0];\n if (isNumberToken(stop)) {\n stops.push({\n stop: {type: TokenType.PERCENTAGE_TOKEN, number: stop.number * 100, flags: stop.flags},\n color\n });\n }\n }\n }\n }\n });\n\n return type === CSSImageType.LINEAR_GRADIENT\n ? {\n angle: (angle + deg(180)) % deg(360),\n stops,\n type\n }\n : {size, shape, stops, position, type};\n};\n","import {TokenType} from '../syntax/tokenizer';\nimport {ICSSImage, image, isSupportedImage} from '../types/image';\nimport {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, nonFunctionArgSeparator} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport const backgroundImage: IPropertyListDescriptor = {\n name: 'background-image',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return [];\n }\n\n const first = tokens[0];\n\n if (first.type === TokenType.IDENT_TOKEN && first.value === 'none') {\n return [];\n }\n\n return tokens\n .filter((value) => nonFunctionArgSeparator(value) && isSupportedImage(value))\n .map((value) => image.parse(context, value));\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport const enum BACKGROUND_ORIGIN {\n BORDER_BOX = 0,\n PADDING_BOX = 1,\n CONTENT_BOX = 2\n}\n\nexport type BackgroundOrigin = BACKGROUND_ORIGIN[];\n\nexport const backgroundOrigin: IPropertyListDescriptor = {\n name: 'background-origin',\n initialValue: 'border-box',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundOrigin => {\n return tokens.map((token) => {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'padding-box':\n return BACKGROUND_ORIGIN.PADDING_BOX;\n case 'content-box':\n return BACKGROUND_ORIGIN.CONTENT_BOX;\n }\n }\n return BACKGROUND_ORIGIN.BORDER_BOX;\n });\n }\n};\n","import {PropertyDescriptorParsingType, IPropertyListDescriptor} from '../IPropertyDescriptor';\nimport {CSSValue, parseFunctionArgs} from '../syntax/parser';\nimport {isLengthPercentage, LengthPercentageTuple, parseLengthPercentageTuple} from '../types/length-percentage';\nimport {Context} from '../../core/context';\nexport type BackgroundPosition = BackgroundImagePosition[];\n\nexport type BackgroundImagePosition = LengthPercentageTuple;\n\nexport const backgroundPosition: IPropertyListDescriptor = {\n name: 'background-position',\n initialValue: '0% 0%',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundPosition => {\n return parseFunctionArgs(tokens)\n .map((values: CSSValue[]) => values.filter(isLengthPercentage))\n .map(parseLengthPercentageTuple);\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken, parseFunctionArgs} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport type BackgroundRepeat = BACKGROUND_REPEAT[];\n\nexport const enum BACKGROUND_REPEAT {\n REPEAT = 0,\n NO_REPEAT = 1,\n REPEAT_X = 2,\n REPEAT_Y = 3\n}\n\nexport const backgroundRepeat: IPropertyListDescriptor = {\n name: 'background-repeat',\n initialValue: 'repeat',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundRepeat => {\n return parseFunctionArgs(tokens)\n .map((values) =>\n values\n .filter(isIdentToken)\n .map((token) => token.value)\n .join(' ')\n )\n .map(parseBackgroundRepeat);\n }\n};\n\nconst parseBackgroundRepeat = (value: string): BACKGROUND_REPEAT => {\n switch (value) {\n case 'no-repeat':\n return BACKGROUND_REPEAT.NO_REPEAT;\n case 'repeat-x':\n case 'repeat no-repeat':\n return BACKGROUND_REPEAT.REPEAT_X;\n case 'repeat-y':\n case 'no-repeat repeat':\n return BACKGROUND_REPEAT.REPEAT_Y;\n case 'repeat':\n default:\n return BACKGROUND_REPEAT.REPEAT;\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport enum LINE_BREAK {\n NORMAL = 'normal',\n STRICT = 'strict'\n}\n\nexport const lineBreak: IPropertyIdentValueDescriptor = {\n name: 'line-break',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, lineBreak: string): LINE_BREAK => {\n switch (lineBreak) {\n case 'strict':\n return LINE_BREAK.STRICT;\n case 'normal':\n default:\n return LINE_BREAK.NORMAL;\n }\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nconst borderColorForSide = (side: string): IPropertyTypeValueDescriptor => ({\n name: `border-${side}-color`,\n initialValue: 'transparent',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n});\n\nexport const borderTopColor: IPropertyTypeValueDescriptor = borderColorForSide('top');\nexport const borderRightColor: IPropertyTypeValueDescriptor = borderColorForSide('right');\nexport const borderBottomColor: IPropertyTypeValueDescriptor = borderColorForSide('bottom');\nexport const borderLeftColor: IPropertyTypeValueDescriptor = borderColorForSide('left');\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {isLengthPercentage, LengthPercentageTuple, parseLengthPercentageTuple} from '../types/length-percentage';\nimport {Context} from '../../core/context';\nexport type BorderRadius = LengthPercentageTuple;\n\nconst borderRadiusForSide = (side: string): IPropertyListDescriptor => ({\n name: `border-radius-${side}`,\n initialValue: '0 0',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BorderRadius =>\n parseLengthPercentageTuple(tokens.filter(isLengthPercentage))\n});\n\nexport const borderTopLeftRadius: IPropertyListDescriptor = borderRadiusForSide('top-left');\nexport const borderTopRightRadius: IPropertyListDescriptor = borderRadiusForSide('top-right');\nexport const borderBottomRightRadius: IPropertyListDescriptor = borderRadiusForSide('bottom-right');\nexport const borderBottomLeftRadius: IPropertyListDescriptor = borderRadiusForSide('bottom-left');\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum BORDER_STYLE {\n NONE = 0,\n SOLID = 1,\n DASHED = 2,\n DOTTED = 3,\n DOUBLE = 4\n}\n\nconst borderStyleForSide = (side: string): IPropertyIdentValueDescriptor => ({\n name: `border-${side}-style`,\n initialValue: 'solid',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, style: string): BORDER_STYLE => {\n switch (style) {\n case 'none':\n return BORDER_STYLE.NONE;\n case 'dashed':\n return BORDER_STYLE.DASHED;\n case 'dotted':\n return BORDER_STYLE.DOTTED;\n case 'double':\n return BORDER_STYLE.DOUBLE;\n }\n return BORDER_STYLE.SOLID;\n }\n});\n\nexport const borderTopStyle: IPropertyIdentValueDescriptor = borderStyleForSide('top');\nexport const borderRightStyle: IPropertyIdentValueDescriptor = borderStyleForSide('right');\nexport const borderBottomStyle: IPropertyIdentValueDescriptor = borderStyleForSide('bottom');\nexport const borderLeftStyle: IPropertyIdentValueDescriptor = borderStyleForSide('left');\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isDimensionToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nconst borderWidthForSide = (side: string): IPropertyValueDescriptor => ({\n name: `border-${side}-width`,\n initialValue: '0',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (_context: Context, token: CSSValue): number => {\n if (isDimensionToken(token)) {\n return token.number;\n }\n return 0;\n }\n});\n\nexport const borderTopWidth: IPropertyValueDescriptor = borderWidthForSide('top');\nexport const borderRightWidth: IPropertyValueDescriptor = borderWidthForSide('right');\nexport const borderBottomWidth: IPropertyValueDescriptor = borderWidthForSide('bottom');\nexport const borderLeftWidth: IPropertyValueDescriptor = borderWidthForSide('left');\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nexport const color: IPropertyTypeValueDescriptor = {\n name: `color`,\n initialValue: 'transparent',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\n\nexport const enum DIRECTION {\n LTR = 0,\n RTL = 1\n}\n\nexport const direction: IPropertyIdentValueDescriptor = {\n name: 'direction',\n initialValue: 'ltr',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, direction: string) => {\n switch (direction) {\n case 'rtl':\n return DIRECTION.RTL;\n case 'ltr':\n default:\n return DIRECTION.LTR;\n }\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const enum DISPLAY {\n NONE = 0,\n BLOCK = 1 << 1,\n INLINE = 1 << 2,\n RUN_IN = 1 << 3,\n FLOW = 1 << 4,\n FLOW_ROOT = 1 << 5,\n TABLE = 1 << 6,\n FLEX = 1 << 7,\n GRID = 1 << 8,\n RUBY = 1 << 9,\n SUBGRID = 1 << 10,\n LIST_ITEM = 1 << 11,\n TABLE_ROW_GROUP = 1 << 12,\n TABLE_HEADER_GROUP = 1 << 13,\n TABLE_FOOTER_GROUP = 1 << 14,\n TABLE_ROW = 1 << 15,\n TABLE_CELL = 1 << 16,\n TABLE_COLUMN_GROUP = 1 << 17,\n TABLE_COLUMN = 1 << 18,\n TABLE_CAPTION = 1 << 19,\n RUBY_BASE = 1 << 20,\n RUBY_TEXT = 1 << 21,\n RUBY_BASE_CONTAINER = 1 << 22,\n RUBY_TEXT_CONTAINER = 1 << 23,\n CONTENTS = 1 << 24,\n INLINE_BLOCK = 1 << 25,\n INLINE_LIST_ITEM = 1 << 26,\n INLINE_TABLE = 1 << 27,\n INLINE_FLEX = 1 << 28,\n INLINE_GRID = 1 << 29\n}\n\nexport type Display = number;\n\nexport const display: IPropertyListDescriptor = {\n name: 'display',\n initialValue: 'inline-block',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): Display => {\n return tokens.filter(isIdentToken).reduce((bit, token) => {\n return bit | parseDisplayValue(token.value);\n }, DISPLAY.NONE);\n }\n};\n\nconst parseDisplayValue = (display: string): Display => {\n switch (display) {\n case 'block':\n case '-webkit-box':\n return DISPLAY.BLOCK;\n case 'inline':\n return DISPLAY.INLINE;\n case 'run-in':\n return DISPLAY.RUN_IN;\n case 'flow':\n return DISPLAY.FLOW;\n case 'flow-root':\n return DISPLAY.FLOW_ROOT;\n case 'table':\n return DISPLAY.TABLE;\n case 'flex':\n case '-webkit-flex':\n return DISPLAY.FLEX;\n case 'grid':\n case '-ms-grid':\n return DISPLAY.GRID;\n case 'ruby':\n return DISPLAY.RUBY;\n case 'subgrid':\n return DISPLAY.SUBGRID;\n case 'list-item':\n return DISPLAY.LIST_ITEM;\n case 'table-row-group':\n return DISPLAY.TABLE_ROW_GROUP;\n case 'table-header-group':\n return DISPLAY.TABLE_HEADER_GROUP;\n case 'table-footer-group':\n return DISPLAY.TABLE_FOOTER_GROUP;\n case 'table-row':\n return DISPLAY.TABLE_ROW;\n case 'table-cell':\n return DISPLAY.TABLE_CELL;\n case 'table-column-group':\n return DISPLAY.TABLE_COLUMN_GROUP;\n case 'table-column':\n return DISPLAY.TABLE_COLUMN;\n case 'table-caption':\n return DISPLAY.TABLE_CAPTION;\n case 'ruby-base':\n return DISPLAY.RUBY_BASE;\n case 'ruby-text':\n return DISPLAY.RUBY_TEXT;\n case 'ruby-base-container':\n return DISPLAY.RUBY_BASE_CONTAINER;\n case 'ruby-text-container':\n return DISPLAY.RUBY_TEXT_CONTAINER;\n case 'contents':\n return DISPLAY.CONTENTS;\n case 'inline-block':\n return DISPLAY.INLINE_BLOCK;\n case 'inline-list-item':\n return DISPLAY.INLINE_LIST_ITEM;\n case 'inline-table':\n return DISPLAY.INLINE_TABLE;\n case 'inline-flex':\n return DISPLAY.INLINE_FLEX;\n case 'inline-grid':\n return DISPLAY.INLINE_GRID;\n }\n\n return DISPLAY.NONE;\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum FLOAT {\n NONE = 0,\n LEFT = 1,\n RIGHT = 2,\n INLINE_START = 3,\n INLINE_END = 4\n}\n\nexport const float: IPropertyIdentValueDescriptor = {\n name: 'float',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, float: string) => {\n switch (float) {\n case 'left':\n return FLOAT.LEFT;\n case 'right':\n return FLOAT.RIGHT;\n case 'inline-start':\n return FLOAT.INLINE_START;\n case 'inline-end':\n return FLOAT.INLINE_END;\n }\n return FLOAT.NONE;\n }\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\nexport const letterSpacing: IPropertyValueDescriptor = {\n name: 'letter-spacing',\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.VALUE,\n parse: (_context: Context, token: CSSValue) => {\n if (token.type === TokenType.IDENT_TOKEN && token.value === 'normal') {\n return 0;\n }\n\n if (token.type === TokenType.NUMBER_TOKEN) {\n return token.number;\n }\n\n if (token.type === TokenType.DIMENSION_TOKEN) {\n return token.number;\n }\n\n return 0;\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport enum WORD_BREAK {\n NORMAL = 'normal',\n BREAK_ALL = 'break-all',\n KEEP_ALL = 'keep-all'\n}\n\nexport const wordBreak: IPropertyIdentValueDescriptor = {\n name: 'word-break',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, wordBreak: string): WORD_BREAK => {\n switch (wordBreak) {\n case 'break-all':\n return WORD_BREAK.BREAK_ALL;\n case 'keep-all':\n return WORD_BREAK.KEEP_ALL;\n case 'normal':\n default:\n return WORD_BREAK.NORMAL;\n }\n }\n};\n","import {IPropertyTokenValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {getAbsoluteValue, isLengthPercentage} from '../types/length-percentage';\nexport const lineHeight: IPropertyTokenValueDescriptor = {\n name: 'line-height',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.TOKEN_VALUE\n};\n\nexport const computeLineHeight = (token: CSSValue, fontSize: number): number => {\n if (isIdentToken(token) && token.value === 'normal') {\n return 1.2 * fontSize;\n } else if (token.type === TokenType.NUMBER_TOKEN) {\n return fontSize * token.number;\n } else if (isLengthPercentage(token)) {\n return getAbsoluteValue(token, fontSize);\n }\n\n return fontSize;\n};\n","import {TokenType} from '../syntax/tokenizer';\nimport {ICSSImage, image} from '../types/image';\nimport {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport const listStyleImage: IPropertyValueDescriptor = {\n name: 'list-style-image',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (context: Context, token: CSSValue) => {\n if (token.type === TokenType.IDENT_TOKEN && token.value === 'none') {\n return null;\n }\n\n return image.parse(context, token);\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum LIST_STYLE_POSITION {\n INSIDE = 0,\n OUTSIDE = 1\n}\n\nexport const listStylePosition: IPropertyIdentValueDescriptor = {\n name: 'list-style-position',\n initialValue: 'outside',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, position: string) => {\n switch (position) {\n case 'inside':\n return LIST_STYLE_POSITION.INSIDE;\n case 'outside':\n default:\n return LIST_STYLE_POSITION.OUTSIDE;\n }\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum LIST_STYLE_TYPE {\n NONE = -1,\n DISC = 0,\n CIRCLE = 1,\n SQUARE = 2,\n DECIMAL = 3,\n CJK_DECIMAL = 4,\n DECIMAL_LEADING_ZERO = 5,\n LOWER_ROMAN = 6,\n UPPER_ROMAN = 7,\n LOWER_GREEK = 8,\n LOWER_ALPHA = 9,\n UPPER_ALPHA = 10,\n ARABIC_INDIC = 11,\n ARMENIAN = 12,\n BENGALI = 13,\n CAMBODIAN = 14,\n CJK_EARTHLY_BRANCH = 15,\n CJK_HEAVENLY_STEM = 16,\n CJK_IDEOGRAPHIC = 17,\n DEVANAGARI = 18,\n ETHIOPIC_NUMERIC = 19,\n GEORGIAN = 20,\n GUJARATI = 21,\n GURMUKHI = 22,\n HEBREW = 22,\n HIRAGANA = 23,\n HIRAGANA_IROHA = 24,\n JAPANESE_FORMAL = 25,\n JAPANESE_INFORMAL = 26,\n KANNADA = 27,\n KATAKANA = 28,\n KATAKANA_IROHA = 29,\n KHMER = 30,\n KOREAN_HANGUL_FORMAL = 31,\n KOREAN_HANJA_FORMAL = 32,\n KOREAN_HANJA_INFORMAL = 33,\n LAO = 34,\n LOWER_ARMENIAN = 35,\n MALAYALAM = 36,\n MONGOLIAN = 37,\n MYANMAR = 38,\n ORIYA = 39,\n PERSIAN = 40,\n SIMP_CHINESE_FORMAL = 41,\n SIMP_CHINESE_INFORMAL = 42,\n TAMIL = 43,\n TELUGU = 44,\n THAI = 45,\n TIBETAN = 46,\n TRAD_CHINESE_FORMAL = 47,\n TRAD_CHINESE_INFORMAL = 48,\n UPPER_ARMENIAN = 49,\n DISCLOSURE_OPEN = 50,\n DISCLOSURE_CLOSED = 51\n}\n\nexport const listStyleType: IPropertyIdentValueDescriptor = {\n name: 'list-style-type',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, type: string) => {\n switch (type) {\n case 'disc':\n return LIST_STYLE_TYPE.DISC;\n case 'circle':\n return LIST_STYLE_TYPE.CIRCLE;\n case 'square':\n return LIST_STYLE_TYPE.SQUARE;\n case 'decimal':\n return LIST_STYLE_TYPE.DECIMAL;\n case 'cjk-decimal':\n return LIST_STYLE_TYPE.CJK_DECIMAL;\n case 'decimal-leading-zero':\n return LIST_STYLE_TYPE.DECIMAL_LEADING_ZERO;\n case 'lower-roman':\n return LIST_STYLE_TYPE.LOWER_ROMAN;\n case 'upper-roman':\n return LIST_STYLE_TYPE.UPPER_ROMAN;\n case 'lower-greek':\n return LIST_STYLE_TYPE.LOWER_GREEK;\n case 'lower-alpha':\n return LIST_STYLE_TYPE.LOWER_ALPHA;\n case 'upper-alpha':\n return LIST_STYLE_TYPE.UPPER_ALPHA;\n case 'arabic-indic':\n return LIST_STYLE_TYPE.ARABIC_INDIC;\n case 'armenian':\n return LIST_STYLE_TYPE.ARMENIAN;\n case 'bengali':\n return LIST_STYLE_TYPE.BENGALI;\n case 'cambodian':\n return LIST_STYLE_TYPE.CAMBODIAN;\n case 'cjk-earthly-branch':\n return LIST_STYLE_TYPE.CJK_EARTHLY_BRANCH;\n case 'cjk-heavenly-stem':\n return LIST_STYLE_TYPE.CJK_HEAVENLY_STEM;\n case 'cjk-ideographic':\n return LIST_STYLE_TYPE.CJK_IDEOGRAPHIC;\n case 'devanagari':\n return LIST_STYLE_TYPE.DEVANAGARI;\n case 'ethiopic-numeric':\n return LIST_STYLE_TYPE.ETHIOPIC_NUMERIC;\n case 'georgian':\n return LIST_STYLE_TYPE.GEORGIAN;\n case 'gujarati':\n return LIST_STYLE_TYPE.GUJARATI;\n case 'gurmukhi':\n return LIST_STYLE_TYPE.GURMUKHI;\n case 'hebrew':\n return LIST_STYLE_TYPE.HEBREW;\n case 'hiragana':\n return LIST_STYLE_TYPE.HIRAGANA;\n case 'hiragana-iroha':\n return LIST_STYLE_TYPE.HIRAGANA_IROHA;\n case 'japanese-formal':\n return LIST_STYLE_TYPE.JAPANESE_FORMAL;\n case 'japanese-informal':\n return LIST_STYLE_TYPE.JAPANESE_INFORMAL;\n case 'kannada':\n return LIST_STYLE_TYPE.KANNADA;\n case 'katakana':\n return LIST_STYLE_TYPE.KATAKANA;\n case 'katakana-iroha':\n return LIST_STYLE_TYPE.KATAKANA_IROHA;\n case 'khmer':\n return LIST_STYLE_TYPE.KHMER;\n case 'korean-hangul-formal':\n return LIST_STYLE_TYPE.KOREAN_HANGUL_FORMAL;\n case 'korean-hanja-formal':\n return LIST_STYLE_TYPE.KOREAN_HANJA_FORMAL;\n case 'korean-hanja-informal':\n return LIST_STYLE_TYPE.KOREAN_HANJA_INFORMAL;\n case 'lao':\n return LIST_STYLE_TYPE.LAO;\n case 'lower-armenian':\n return LIST_STYLE_TYPE.LOWER_ARMENIAN;\n case 'malayalam':\n return LIST_STYLE_TYPE.MALAYALAM;\n case 'mongolian':\n return LIST_STYLE_TYPE.MONGOLIAN;\n case 'myanmar':\n return LIST_STYLE_TYPE.MYANMAR;\n case 'oriya':\n return LIST_STYLE_TYPE.ORIYA;\n case 'persian':\n return LIST_STYLE_TYPE.PERSIAN;\n case 'simp-chinese-formal':\n return LIST_STYLE_TYPE.SIMP_CHINESE_FORMAL;\n case 'simp-chinese-informal':\n return LIST_STYLE_TYPE.SIMP_CHINESE_INFORMAL;\n case 'tamil':\n return LIST_STYLE_TYPE.TAMIL;\n case 'telugu':\n return LIST_STYLE_TYPE.TELUGU;\n case 'thai':\n return LIST_STYLE_TYPE.THAI;\n case 'tibetan':\n return LIST_STYLE_TYPE.TIBETAN;\n case 'trad-chinese-formal':\n return LIST_STYLE_TYPE.TRAD_CHINESE_FORMAL;\n case 'trad-chinese-informal':\n return LIST_STYLE_TYPE.TRAD_CHINESE_INFORMAL;\n case 'upper-armenian':\n return LIST_STYLE_TYPE.UPPER_ARMENIAN;\n case 'disclosure-open':\n return LIST_STYLE_TYPE.DISCLOSURE_OPEN;\n case 'disclosure-closed':\n return LIST_STYLE_TYPE.DISCLOSURE_CLOSED;\n case 'none':\n default:\n return LIST_STYLE_TYPE.NONE;\n }\n }\n};\n","import {IPropertyTokenValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nconst marginForSide = (side: string): IPropertyTokenValueDescriptor => ({\n name: `margin-${side}`,\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.TOKEN_VALUE\n});\n\nexport const marginTop: IPropertyTokenValueDescriptor = marginForSide('top');\nexport const marginRight: IPropertyTokenValueDescriptor = marginForSide('right');\nexport const marginBottom: IPropertyTokenValueDescriptor = marginForSide('bottom');\nexport const marginLeft: IPropertyTokenValueDescriptor = marginForSide('left');\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const enum OVERFLOW {\n VISIBLE = 0,\n HIDDEN = 1,\n SCROLL = 2,\n CLIP = 3,\n AUTO = 4\n}\n\nexport const overflow: IPropertyListDescriptor = {\n name: 'overflow',\n initialValue: 'visible',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): OVERFLOW[] => {\n return tokens.filter(isIdentToken).map((overflow) => {\n switch (overflow.value) {\n case 'hidden':\n return OVERFLOW.HIDDEN;\n case 'scroll':\n return OVERFLOW.SCROLL;\n case 'clip':\n return OVERFLOW.CLIP;\n case 'auto':\n return OVERFLOW.AUTO;\n case 'visible':\n default:\n return OVERFLOW.VISIBLE;\n }\n });\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum OVERFLOW_WRAP {\n NORMAL = 'normal',\n BREAK_WORD = 'break-word'\n}\n\nexport const overflowWrap: IPropertyIdentValueDescriptor = {\n name: 'overflow-wrap',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, overflow: string) => {\n switch (overflow) {\n case 'break-word':\n return OVERFLOW_WRAP.BREAK_WORD;\n case 'normal':\n default:\n return OVERFLOW_WRAP.NORMAL;\n }\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nconst paddingForSide = (side: string): IPropertyTypeValueDescriptor => ({\n name: `padding-${side}`,\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'length-percentage'\n});\n\nexport const paddingTop: IPropertyTypeValueDescriptor = paddingForSide('top');\nexport const paddingRight: IPropertyTypeValueDescriptor = paddingForSide('right');\nexport const paddingBottom: IPropertyTypeValueDescriptor = paddingForSide('bottom');\nexport const paddingLeft: IPropertyTypeValueDescriptor = paddingForSide('left');\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum TEXT_ALIGN {\n LEFT = 0,\n CENTER = 1,\n RIGHT = 2\n}\n\nexport const textAlign: IPropertyIdentValueDescriptor = {\n name: 'text-align',\n initialValue: 'left',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, textAlign: string) => {\n switch (textAlign) {\n case 'right':\n return TEXT_ALIGN.RIGHT;\n case 'center':\n case 'justify':\n return TEXT_ALIGN.CENTER;\n case 'left':\n default:\n return TEXT_ALIGN.LEFT;\n }\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum POSITION {\n STATIC = 0,\n RELATIVE = 1,\n ABSOLUTE = 2,\n FIXED = 3,\n STICKY = 4\n}\n\nexport const position: IPropertyIdentValueDescriptor = {\n name: 'position',\n initialValue: 'static',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, position: string) => {\n switch (position) {\n case 'relative':\n return POSITION.RELATIVE;\n case 'absolute':\n return POSITION.ABSOLUTE;\n case 'fixed':\n return POSITION.FIXED;\n case 'sticky':\n return POSITION.STICKY;\n }\n\n return POSITION.STATIC;\n }\n};\n","import {PropertyDescriptorParsingType, IPropertyListDescriptor} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentWithValue, parseFunctionArgs} from '../syntax/parser';\nimport {ZERO_LENGTH} from '../types/length-percentage';\nimport {color, Color, COLORS} from '../types/color';\nimport {isLength, Length} from '../types/length';\nimport {Context} from '../../core/context';\n\nexport type TextShadow = TextShadowItem[];\ninterface TextShadowItem {\n color: Color;\n offsetX: Length;\n offsetY: Length;\n blur: Length;\n}\n\nexport const textShadow: IPropertyListDescriptor = {\n name: 'text-shadow',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (context: Context, tokens: CSSValue[]): TextShadow => {\n if (tokens.length === 1 && isIdentWithValue(tokens[0], 'none')) {\n return [];\n }\n\n return parseFunctionArgs(tokens).map((values: CSSValue[]) => {\n const shadow: TextShadowItem = {\n color: COLORS.TRANSPARENT,\n offsetX: ZERO_LENGTH,\n offsetY: ZERO_LENGTH,\n blur: ZERO_LENGTH\n };\n let c = 0;\n for (let i = 0; i < values.length; i++) {\n const token = values[i];\n if (isLength(token)) {\n if (c === 0) {\n shadow.offsetX = token;\n } else if (c === 1) {\n shadow.offsetY = token;\n } else {\n shadow.blur = token;\n }\n c++;\n } else {\n shadow.color = color.parse(context, token);\n }\n }\n return shadow;\n });\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum TEXT_TRANSFORM {\n NONE = 0,\n LOWERCASE = 1,\n UPPERCASE = 2,\n CAPITALIZE = 3\n}\n\nexport const textTransform: IPropertyIdentValueDescriptor = {\n name: 'text-transform',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, textTransform: string) => {\n switch (textTransform) {\n case 'uppercase':\n return TEXT_TRANSFORM.UPPERCASE;\n case 'lowercase':\n return TEXT_TRANSFORM.LOWERCASE;\n case 'capitalize':\n return TEXT_TRANSFORM.CAPITALIZE;\n }\n\n return TEXT_TRANSFORM.NONE;\n }\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {NumberValueToken, TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\nexport type Matrix = [number, number, number, number, number, number];\nexport type Transform = Matrix | null;\n\nexport const transform: IPropertyValueDescriptor = {\n name: 'transform',\n initialValue: 'none',\n prefix: true,\n type: PropertyDescriptorParsingType.VALUE,\n parse: (_context: Context, token: CSSValue) => {\n if (token.type === TokenType.IDENT_TOKEN && token.value === 'none') {\n return null;\n }\n\n if (token.type === TokenType.FUNCTION) {\n const transformFunction = SUPPORTED_TRANSFORM_FUNCTIONS[token.name];\n if (typeof transformFunction === 'undefined') {\n throw new Error(`Attempting to parse an unsupported transform function \"${token.name}\"`);\n }\n return transformFunction(token.values);\n }\n\n return null;\n }\n};\n\nconst matrix = (args: CSSValue[]): Transform => {\n const values = args.filter((arg) => arg.type === TokenType.NUMBER_TOKEN).map((arg: NumberValueToken) => arg.number);\n\n return values.length === 6 ? (values as Matrix) : null;\n};\n\n// doesn't support 3D transforms at the moment\nconst matrix3d = (args: CSSValue[]): Transform => {\n const values = args.filter((arg) => arg.type === TokenType.NUMBER_TOKEN).map((arg: NumberValueToken) => arg.number);\n\n const [a1, b1, {}, {}, a2, b2, {}, {}, {}, {}, {}, {}, a4, b4, {}, {}] = values;\n\n return values.length === 16 ? [a1, b1, a2, b2, a4, b4] : null;\n};\n\nconst SUPPORTED_TRANSFORM_FUNCTIONS: {\n [key: string]: (args: CSSValue[]) => Transform;\n} = {\n matrix: matrix,\n matrix3d: matrix3d\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {isLengthPercentage, LengthPercentage} from '../types/length-percentage';\nimport {FLAG_INTEGER, TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\nexport type TransformOrigin = [LengthPercentage, LengthPercentage];\n\nconst DEFAULT_VALUE: LengthPercentage = {\n type: TokenType.PERCENTAGE_TOKEN,\n number: 50,\n flags: FLAG_INTEGER\n};\nconst DEFAULT: TransformOrigin = [DEFAULT_VALUE, DEFAULT_VALUE];\n\nexport const transformOrigin: IPropertyListDescriptor = {\n name: 'transform-origin',\n initialValue: '50% 50%',\n prefix: true,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n const origins: LengthPercentage[] = tokens.filter(isLengthPercentage);\n\n if (origins.length !== 2) {\n return DEFAULT;\n }\n\n return [origins[0], origins[1]];\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum VISIBILITY {\n VISIBLE = 0,\n HIDDEN = 1,\n COLLAPSE = 2\n}\n\nexport const visibility: IPropertyIdentValueDescriptor = {\n name: 'visible',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, visibility: string) => {\n switch (visibility) {\n case 'hidden':\n return VISIBILITY.HIDDEN;\n case 'collapse':\n return VISIBILITY.COLLAPSE;\n case 'visible':\n default:\n return VISIBILITY.VISIBLE;\n }\n }\n};\n","const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const decode = (base64: string): ArrayBuffer | number[] => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const buffer =\n typeof ArrayBuffer !== 'undefined' &&\n typeof Uint8Array !== 'undefined' &&\n typeof Uint8Array.prototype.slice !== 'undefined'\n ? new ArrayBuffer(bufferLength)\n : new Array(bufferLength);\n const bytes = Array.isArray(buffer) ? buffer : new Uint8Array(buffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return buffer;\n};\n\nexport const polyUint16Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 2) {\n bytes.push((buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n\nexport const polyUint32Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 4) {\n bytes.push((buffer[i + 3] << 24) | (buffer[i + 2] << 16) | (buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isNumberToken} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\ninterface zIndex {\n order: number;\n auto: boolean;\n}\n\nexport const zIndex: IPropertyValueDescriptor = {\n name: 'z-index',\n initialValue: 'auto',\n prefix: false,\n type: PropertyDescriptorParsingType.VALUE,\n parse: (_context: Context, token: CSSValue): zIndex => {\n if (token.type === TokenType.IDENT_TOKEN) {\n return {auto: true, order: 0};\n }\n\n if (isNumberToken(token)) {\n return {auto: false, order: token.number};\n }\n\n throw new Error(`Invalid z-index number parsed`);\n }\n};\n","import {CSSValue} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {ITypeDescriptor} from '../ITypeDescriptor';\nimport {Context} from '../../core/context';\n\nexport const time: ITypeDescriptor = {\n name: 'time',\n parse: (_context: Context, value: CSSValue): number => {\n if (value.type === TokenType.DIMENSION_TOKEN) {\n switch (value.unit.toLowerCase()) {\n case 's':\n return 1000 * value.number;\n case 'ms':\n return value.number;\n }\n }\n\n throw new Error(`Unsupported time type`);\n }\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isNumberToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const opacity: IPropertyValueDescriptor = {\n name: 'opacity',\n initialValue: '1',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (_context: Context, token: CSSValue): number => {\n if (isNumberToken(token)) {\n return token.number;\n }\n return 1;\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nexport const textDecorationColor: IPropertyTypeValueDescriptor = {\n name: `text-decoration-color`,\n initialValue: 'transparent',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport const enum TEXT_DECORATION_LINE {\n NONE = 0,\n UNDERLINE = 1,\n OVERLINE = 2,\n LINE_THROUGH = 3,\n BLINK = 4\n}\n\nexport type TextDecorationLine = TEXT_DECORATION_LINE[];\n\nexport const textDecorationLine: IPropertyListDescriptor = {\n name: 'text-decoration-line',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): TextDecorationLine => {\n return tokens\n .filter(isIdentToken)\n .map((token) => {\n switch (token.value) {\n case 'underline':\n return TEXT_DECORATION_LINE.UNDERLINE;\n case 'overline':\n return TEXT_DECORATION_LINE.OVERLINE;\n case 'line-through':\n return TEXT_DECORATION_LINE.LINE_THROUGH;\n case 'none':\n return TEXT_DECORATION_LINE.BLINK;\n }\n return TEXT_DECORATION_LINE.NONE;\n })\n .filter((line) => line !== TEXT_DECORATION_LINE.NONE);\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\nexport type FONT_FAMILY = string;\n\nexport type FontFamily = FONT_FAMILY[];\n\nexport const fontFamily: IPropertyListDescriptor = {\n name: `font-family`,\n initialValue: '',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n const accumulator: string[] = [];\n const results: string[] = [];\n tokens.forEach((token) => {\n switch (token.type) {\n case TokenType.IDENT_TOKEN:\n case TokenType.STRING_TOKEN:\n accumulator.push(token.value);\n break;\n case TokenType.NUMBER_TOKEN:\n accumulator.push(token.number.toString());\n break;\n case TokenType.COMMA_TOKEN:\n results.push(accumulator.join(' '));\n accumulator.length = 0;\n break;\n }\n });\n if (accumulator.length) {\n results.push(accumulator.join(' '));\n }\n return results.map((result) => (result.indexOf(' ') === -1 ? result : `'${result}'`));\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nexport const fontSize: IPropertyTypeValueDescriptor = {\n name: `font-size`,\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'length'\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken, isNumberToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const fontWeight: IPropertyValueDescriptor = {\n name: 'font-weight',\n initialValue: 'normal',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (_context: Context, token: CSSValue): number => {\n if (isNumberToken(token)) {\n return token.number;\n }\n\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'bold':\n return 700;\n case 'normal':\n default:\n return 400;\n }\n }\n\n return 400;\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const fontVariant: IPropertyListDescriptor = {\n name: 'font-variant',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (_context: Context, tokens: CSSValue[]): string[] => {\n return tokens.filter(isIdentToken).map((token) => token.value);\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum FONT_STYLE {\n NORMAL = 'normal',\n ITALIC = 'italic',\n OBLIQUE = 'oblique'\n}\n\nexport const fontStyle: IPropertyIdentValueDescriptor = {\n name: 'font-style',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, overflow: string) => {\n switch (overflow) {\n case 'oblique':\n return FONT_STYLE.OBLIQUE;\n case 'italic':\n return FONT_STYLE.ITALIC;\n case 'normal':\n default:\n return FONT_STYLE.NORMAL;\n }\n }\n};\n","export const contains = (bit: number, value: number): boolean => (bit & value) !== 0;\n","import {TokenType} from '../syntax/tokenizer';\nimport {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport type Content = CSSValue[];\n\nexport const content: IPropertyListDescriptor = {\n name: 'content',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (_context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return [];\n }\n\n const first = tokens[0];\n\n if (first.type === TokenType.IDENT_TOKEN && first.value === 'none') {\n return [];\n }\n\n return tokens;\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isNumberToken, nonWhiteSpace} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\nexport interface COUNTER_INCREMENT {\n counter: string;\n increment: number;\n}\n\nexport type CounterIncrement = COUNTER_INCREMENT[] | null;\n\nexport const counterIncrement: IPropertyListDescriptor = {\n name: 'counter-increment',\n initialValue: 'none',\n prefix: true,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return null;\n }\n\n const first = tokens[0];\n\n if (first.type === TokenType.IDENT_TOKEN && first.value === 'none') {\n return null;\n }\n\n const increments = [];\n const filtered = tokens.filter(nonWhiteSpace);\n\n for (let i = 0; i < filtered.length; i++) {\n const counter = filtered[i];\n const next = filtered[i + 1];\n if (counter.type === TokenType.IDENT_TOKEN) {\n const increment = next && isNumberToken(next) ? next.number : 1;\n increments.push({counter: counter.value, increment});\n }\n }\n\n return increments;\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken, isNumberToken, nonWhiteSpace} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport interface COUNTER_RESET {\n counter: string;\n reset: number;\n}\n\nexport type CounterReset = COUNTER_RESET[];\n\nexport const counterReset: IPropertyListDescriptor = {\n name: 'counter-reset',\n initialValue: 'none',\n prefix: true,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return [];\n }\n\n const resets = [];\n const filtered = tokens.filter(nonWhiteSpace);\n\n for (let i = 0; i < filtered.length; i++) {\n const counter = filtered[i];\n const next = filtered[i + 1];\n if (isIdentToken(counter) && counter.value !== 'none') {\n const reset = next && isNumberToken(next) ? next.number : 0;\n resets.push({counter: counter.value, reset});\n }\n }\n\n return resets;\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nimport {CSSValue, isDimensionToken} from '../syntax/parser';\nimport {time} from '../types/time';\n\nexport const duration: IPropertyListDescriptor = {\n name: 'duration',\n initialValue: '0s',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (context: Context, tokens: CSSValue[]) => {\n return tokens.filter(isDimensionToken).map((token) => time.parse(context, token));\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isStringToken} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\nexport interface QUOTE {\n open: string;\n close: string;\n}\n\nexport type Quotes = QUOTE[] | null;\n\nexport const quotes: IPropertyListDescriptor = {\n name: 'quotes',\n initialValue: 'none',\n prefix: true,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return null;\n }\n\n const first = tokens[0];\n\n if (first.type === TokenType.IDENT_TOKEN && first.value === 'none') {\n return null;\n }\n\n const quotes = [];\n const filtered = tokens.filter(isStringToken);\n\n if (filtered.length % 2 !== 0) {\n return null;\n }\n\n for (let i = 0; i < filtered.length; i += 2) {\n const open = filtered[i].value;\n const close = filtered[i + 1].value;\n quotes.push({open, close});\n }\n\n return quotes;\n }\n};\n\nexport const getQuote = (quotes: Quotes, depth: number, open: boolean): string => {\n if (!quotes) {\n return '';\n }\n\n const quote = quotes[Math.min(depth, quotes.length - 1)];\n if (!quote) {\n return '';\n }\n\n return open ? quote.open : quote.close;\n};\n","import {PropertyDescriptorParsingType, IPropertyListDescriptor} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentWithValue, parseFunctionArgs} from '../syntax/parser';\nimport {ZERO_LENGTH} from '../types/length-percentage';\nimport {color, Color} from '../types/color';\nimport {isLength, Length} from '../types/length';\nimport {Context} from '../../core/context';\n\nexport type BoxShadow = BoxShadowItem[];\ninterface BoxShadowItem {\n inset: boolean;\n color: Color;\n offsetX: Length;\n offsetY: Length;\n blur: Length;\n spread: Length;\n}\n\nexport const boxShadow: IPropertyListDescriptor = {\n name: 'box-shadow',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (context: Context, tokens: CSSValue[]): BoxShadow => {\n if (tokens.length === 1 && isIdentWithValue(tokens[0], 'none')) {\n return [];\n }\n\n return parseFunctionArgs(tokens).map((values: CSSValue[]) => {\n const shadow: BoxShadowItem = {\n color: 0x000000ff,\n offsetX: ZERO_LENGTH,\n offsetY: ZERO_LENGTH,\n blur: ZERO_LENGTH,\n spread: ZERO_LENGTH,\n inset: false\n };\n let c = 0;\n for (let i = 0; i < values.length; i++) {\n const token = values[i];\n if (isIdentWithValue(token, 'inset')) {\n shadow.inset = true;\n } else if (isLength(token)) {\n if (c === 0) {\n shadow.offsetX = token;\n } else if (c === 1) {\n shadow.offsetY = token;\n } else if (c === 2) {\n shadow.blur = token;\n } else {\n shadow.spread = token;\n }\n c++;\n } else {\n shadow.color = color.parse(context, token);\n }\n }\n return shadow;\n });\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const enum PAINT_ORDER_LAYER {\n FILL,\n STROKE,\n MARKERS\n}\n\nexport type PaintOrder = PAINT_ORDER_LAYER[];\n\nexport const paintOrder: IPropertyListDescriptor = {\n name: 'paint-order',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): PaintOrder => {\n const DEFAULT_VALUE = [PAINT_ORDER_LAYER.FILL, PAINT_ORDER_LAYER.STROKE, PAINT_ORDER_LAYER.MARKERS];\n const layers: PaintOrder = [];\n\n tokens.filter(isIdentToken).forEach((token) => {\n switch (token.value) {\n case 'stroke':\n layers.push(PAINT_ORDER_LAYER.STROKE);\n break;\n case 'fill':\n layers.push(PAINT_ORDER_LAYER.FILL);\n break;\n case 'markers':\n layers.push(PAINT_ORDER_LAYER.MARKERS);\n break;\n }\n });\n DEFAULT_VALUE.forEach((value) => {\n if (layers.indexOf(value) === -1) {\n layers.push(value);\n }\n });\n\n return layers;\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nexport const webkitTextStrokeColor: IPropertyTypeValueDescriptor = {\n name: `-webkit-text-stroke-color`,\n initialValue: 'currentcolor',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n};\n","import {CSSValue, isDimensionToken} from '../syntax/parser';\nimport {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const webkitTextStrokeWidth: IPropertyValueDescriptor = {\n name: `-webkit-text-stroke-width`,\n initialValue: '0',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (_context: Context, token: CSSValue): number => {\n if (isDimensionToken(token)) {\n return token.number;\n }\n return 0;\n }\n};\n","import {CSSPropertyDescriptor, PropertyDescriptorParsingType} from './IPropertyDescriptor';\nimport {backgroundClip} from './property-descriptors/background-clip';\nimport {backgroundColor} from './property-descriptors/background-color';\nimport {backgroundImage} from './property-descriptors/background-image';\nimport {backgroundOrigin} from './property-descriptors/background-origin';\nimport {backgroundPosition} from './property-descriptors/background-position';\nimport {backgroundRepeat} from './property-descriptors/background-repeat';\nimport {backgroundSize} from './property-descriptors/background-size';\nimport {\n borderBottomColor,\n borderLeftColor,\n borderRightColor,\n borderTopColor\n} from './property-descriptors/border-color';\nimport {\n borderBottomLeftRadius,\n borderBottomRightRadius,\n borderTopLeftRadius,\n borderTopRightRadius\n} from './property-descriptors/border-radius';\nimport {\n borderBottomStyle,\n borderLeftStyle,\n borderRightStyle,\n borderTopStyle\n} from './property-descriptors/border-style';\nimport {\n borderBottomWidth,\n borderLeftWidth,\n borderRightWidth,\n borderTopWidth\n} from './property-descriptors/border-width';\nimport {color} from './property-descriptors/color';\nimport {direction} from './property-descriptors/direction';\nimport {display, DISPLAY} from './property-descriptors/display';\nimport {float, FLOAT} from './property-descriptors/float';\nimport {letterSpacing} from './property-descriptors/letter-spacing';\nimport {lineBreak} from './property-descriptors/line-break';\nimport {lineHeight} from './property-descriptors/line-height';\nimport {listStyleImage} from './property-descriptors/list-style-image';\nimport {listStylePosition} from './property-descriptors/list-style-position';\nimport {listStyleType} from './property-descriptors/list-style-type';\nimport {marginBottom, marginLeft, marginRight, marginTop} from './property-descriptors/margin';\nimport {overflow, OVERFLOW} from './property-descriptors/overflow';\nimport {overflowWrap} from './property-descriptors/overflow-wrap';\nimport {paddingBottom, paddingLeft, paddingRight, paddingTop} from './property-descriptors/padding';\nimport {textAlign} from './property-descriptors/text-align';\nimport {position, POSITION} from './property-descriptors/position';\nimport {textShadow} from './property-descriptors/text-shadow';\nimport {textTransform} from './property-descriptors/text-transform';\nimport {transform} from './property-descriptors/transform';\nimport {transformOrigin} from './property-descriptors/transform-origin';\nimport {visibility, VISIBILITY} from './property-descriptors/visibility';\nimport {wordBreak} from './property-descriptors/word-break';\nimport {zIndex} from './property-descriptors/z-index';\nimport {CSSValue, isIdentToken, Parser} from './syntax/parser';\nimport {Tokenizer} from './syntax/tokenizer';\nimport {Color, color as colorType, isTransparent} from './types/color';\nimport {angle} from './types/angle';\nimport {image} from './types/image';\nimport {time} from './types/time';\nimport {opacity} from './property-descriptors/opacity';\nimport {textDecorationColor} from './property-descriptors/text-decoration-color';\nimport {textDecorationLine} from './property-descriptors/text-decoration-line';\nimport {isLengthPercentage, LengthPercentage, ZERO_LENGTH} from './types/length-percentage';\nimport {fontFamily} from './property-descriptors/font-family';\nimport {fontSize} from './property-descriptors/font-size';\nimport {isLength} from './types/length';\nimport {fontWeight} from './property-descriptors/font-weight';\nimport {fontVariant} from './property-descriptors/font-variant';\nimport {fontStyle} from './property-descriptors/font-style';\nimport {contains} from '../core/bitwise';\nimport {content} from './property-descriptors/content';\nimport {counterIncrement} from './property-descriptors/counter-increment';\nimport {counterReset} from './property-descriptors/counter-reset';\nimport {duration} from './property-descriptors/duration';\nimport {quotes} from './property-descriptors/quotes';\nimport {boxShadow} from './property-descriptors/box-shadow';\nimport {paintOrder} from './property-descriptors/paint-order';\nimport {webkitTextStrokeColor} from './property-descriptors/webkit-text-stroke-color';\nimport {webkitTextStrokeWidth} from './property-descriptors/webkit-text-stroke-width';\nimport {Context} from '../core/context';\n\nexport class CSSParsedDeclaration {\n animationDuration: ReturnType;\n backgroundClip: ReturnType;\n backgroundColor: Color;\n backgroundImage: ReturnType;\n backgroundOrigin: ReturnType;\n backgroundPosition: ReturnType;\n backgroundRepeat: ReturnType;\n backgroundSize: ReturnType;\n borderTopColor: Color;\n borderRightColor: Color;\n borderBottomColor: Color;\n borderLeftColor: Color;\n borderTopLeftRadius: ReturnType;\n borderTopRightRadius: ReturnType;\n borderBottomRightRadius: ReturnType;\n borderBottomLeftRadius: ReturnType;\n borderTopStyle: ReturnType;\n borderRightStyle: ReturnType;\n borderBottomStyle: ReturnType;\n borderLeftStyle: ReturnType;\n borderTopWidth: ReturnType;\n borderRightWidth: ReturnType;\n borderBottomWidth: ReturnType;\n borderLeftWidth: ReturnType;\n boxShadow: ReturnType;\n color: Color;\n direction: ReturnType;\n display: ReturnType;\n float: ReturnType;\n fontFamily: ReturnType;\n fontSize: LengthPercentage;\n fontStyle: ReturnType;\n fontVariant: ReturnType;\n fontWeight: ReturnType;\n letterSpacing: ReturnType;\n lineBreak: ReturnType;\n lineHeight: CSSValue;\n listStyleImage: ReturnType;\n listStylePosition: ReturnType;\n listStyleType: ReturnType;\n marginTop: CSSValue;\n marginRight: CSSValue;\n marginBottom: CSSValue;\n marginLeft: CSSValue;\n opacity: ReturnType;\n overflowX: OVERFLOW;\n overflowY: OVERFLOW;\n overflowWrap: ReturnType;\n paddingTop: LengthPercentage;\n paddingRight: LengthPercentage;\n paddingBottom: LengthPercentage;\n paddingLeft: LengthPercentage;\n paintOrder: ReturnType;\n position: ReturnType;\n textAlign: ReturnType;\n textDecorationColor: Color;\n textDecorationLine: ReturnType;\n textShadow: ReturnType;\n textTransform: ReturnType;\n transform: ReturnType;\n transformOrigin: ReturnType;\n visibility: ReturnType;\n webkitTextStrokeColor: Color;\n webkitTextStrokeWidth: ReturnType;\n wordBreak: ReturnType;\n zIndex: ReturnType;\n\n constructor(context: Context, declaration: CSSStyleDeclaration) {\n this.animationDuration = parse(context, duration, declaration.animationDuration);\n this.backgroundClip = parse(context, backgroundClip, declaration.backgroundClip);\n this.backgroundColor = parse(context, backgroundColor, declaration.backgroundColor);\n this.backgroundImage = parse(context, backgroundImage, declaration.backgroundImage);\n this.backgroundOrigin = parse(context, backgroundOrigin, declaration.backgroundOrigin);\n this.backgroundPosition = parse(context, backgroundPosition, declaration.backgroundPosition);\n this.backgroundRepeat = parse(context, backgroundRepeat, declaration.backgroundRepeat);\n this.backgroundSize = parse(context, backgroundSize, declaration.backgroundSize);\n this.borderTopColor = parse(context, borderTopColor, declaration.borderTopColor);\n this.borderRightColor = parse(context, borderRightColor, declaration.borderRightColor);\n this.borderBottomColor = parse(context, borderBottomColor, declaration.borderBottomColor);\n this.borderLeftColor = parse(context, borderLeftColor, declaration.borderLeftColor);\n this.borderTopLeftRadius = parse(context, borderTopLeftRadius, declaration.borderTopLeftRadius);\n this.borderTopRightRadius = parse(context, borderTopRightRadius, declaration.borderTopRightRadius);\n this.borderBottomRightRadius = parse(context, borderBottomRightRadius, declaration.borderBottomRightRadius);\n this.borderBottomLeftRadius = parse(context, borderBottomLeftRadius, declaration.borderBottomLeftRadius);\n this.borderTopStyle = parse(context, borderTopStyle, declaration.borderTopStyle);\n this.borderRightStyle = parse(context, borderRightStyle, declaration.borderRightStyle);\n this.borderBottomStyle = parse(context, borderBottomStyle, declaration.borderBottomStyle);\n this.borderLeftStyle = parse(context, borderLeftStyle, declaration.borderLeftStyle);\n this.borderTopWidth = parse(context, borderTopWidth, declaration.borderTopWidth);\n this.borderRightWidth = parse(context, borderRightWidth, declaration.borderRightWidth);\n this.borderBottomWidth = parse(context, borderBottomWidth, declaration.borderBottomWidth);\n this.borderLeftWidth = parse(context, borderLeftWidth, declaration.borderLeftWidth);\n this.boxShadow = parse(context, boxShadow, declaration.boxShadow);\n this.color = parse(context, color, declaration.color);\n this.direction = parse(context, direction, declaration.direction);\n this.display = parse(context, display, declaration.display);\n this.float = parse(context, float, declaration.cssFloat);\n this.fontFamily = parse(context, fontFamily, declaration.fontFamily);\n this.fontSize = parse(context, fontSize, declaration.fontSize);\n this.fontStyle = parse(context, fontStyle, declaration.fontStyle);\n this.fontVariant = parse(context, fontVariant, declaration.fontVariant);\n this.fontWeight = parse(context, fontWeight, declaration.fontWeight);\n this.letterSpacing = parse(context, letterSpacing, declaration.letterSpacing);\n this.lineBreak = parse(context, lineBreak, declaration.lineBreak);\n this.lineHeight = parse(context, lineHeight, declaration.lineHeight);\n this.listStyleImage = parse(context, listStyleImage, declaration.listStyleImage);\n this.listStylePosition = parse(context, listStylePosition, declaration.listStylePosition);\n this.listStyleType = parse(context, listStyleType, declaration.listStyleType);\n this.marginTop = parse(context, marginTop, declaration.marginTop);\n this.marginRight = parse(context, marginRight, declaration.marginRight);\n this.marginBottom = parse(context, marginBottom, declaration.marginBottom);\n this.marginLeft = parse(context, marginLeft, declaration.marginLeft);\n this.opacity = parse(context, opacity, declaration.opacity);\n const overflowTuple = parse(context, overflow, declaration.overflow);\n this.overflowX = overflowTuple[0];\n this.overflowY = overflowTuple[overflowTuple.length > 1 ? 1 : 0];\n this.overflowWrap = parse(context, overflowWrap, declaration.overflowWrap);\n this.paddingTop = parse(context, paddingTop, declaration.paddingTop);\n this.paddingRight = parse(context, paddingRight, declaration.paddingRight);\n this.paddingBottom = parse(context, paddingBottom, declaration.paddingBottom);\n this.paddingLeft = parse(context, paddingLeft, declaration.paddingLeft);\n this.paintOrder = parse(context, paintOrder, declaration.paintOrder);\n this.position = parse(context, position, declaration.position);\n this.textAlign = parse(context, textAlign, declaration.textAlign);\n this.textDecorationColor = parse(\n context,\n textDecorationColor,\n declaration.textDecorationColor ?? declaration.color\n );\n this.textDecorationLine = parse(\n context,\n textDecorationLine,\n declaration.textDecorationLine ?? declaration.textDecoration\n );\n this.textShadow = parse(context, textShadow, declaration.textShadow);\n this.textTransform = parse(context, textTransform, declaration.textTransform);\n this.transform = parse(context, transform, declaration.transform);\n this.transformOrigin = parse(context, transformOrigin, declaration.transformOrigin);\n this.visibility = parse(context, visibility, declaration.visibility);\n this.webkitTextStrokeColor = parse(context, webkitTextStrokeColor, declaration.webkitTextStrokeColor);\n this.webkitTextStrokeWidth = parse(context, webkitTextStrokeWidth, declaration.webkitTextStrokeWidth);\n this.wordBreak = parse(context, wordBreak, declaration.wordBreak);\n this.zIndex = parse(context, zIndex, declaration.zIndex);\n }\n\n isVisible(): boolean {\n return this.display > 0 && this.opacity > 0 && this.visibility === VISIBILITY.VISIBLE;\n }\n\n isTransparent(): boolean {\n return isTransparent(this.backgroundColor);\n }\n\n isTransformed(): boolean {\n return this.transform !== null;\n }\n\n isPositioned(): boolean {\n return this.position !== POSITION.STATIC;\n }\n\n isPositionedWithZIndex(): boolean {\n return this.isPositioned() && !this.zIndex.auto;\n }\n\n isFloating(): boolean {\n return this.float !== FLOAT.NONE;\n }\n\n isInlineLevel(): boolean {\n return (\n contains(this.display, DISPLAY.INLINE) ||\n contains(this.display, DISPLAY.INLINE_BLOCK) ||\n contains(this.display, DISPLAY.INLINE_FLEX) ||\n contains(this.display, DISPLAY.INLINE_GRID) ||\n contains(this.display, DISPLAY.INLINE_LIST_ITEM) ||\n contains(this.display, DISPLAY.INLINE_TABLE)\n );\n }\n}\n\nexport class CSSParsedPseudoDeclaration {\n content: ReturnType;\n quotes: ReturnType;\n\n constructor(context: Context, declaration: CSSStyleDeclaration) {\n this.content = parse(context, content, declaration.content);\n this.quotes = parse(context, quotes, declaration.quotes);\n }\n}\n\nexport class CSSParsedCounterDeclaration {\n counterIncrement: ReturnType;\n counterReset: ReturnType;\n\n constructor(context: Context, declaration: CSSStyleDeclaration) {\n this.counterIncrement = parse(context, counterIncrement, declaration.counterIncrement);\n this.counterReset = parse(context, counterReset, declaration.counterReset);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst parse = (context: Context, descriptor: CSSPropertyDescriptor, style?: string | null) => {\n const tokenizer = new Tokenizer();\n const value = style !== null && typeof style !== 'undefined' ? style.toString() : descriptor.initialValue;\n tokenizer.write(value);\n const parser = new Parser(tokenizer.read());\n switch (descriptor.type) {\n case PropertyDescriptorParsingType.IDENT_VALUE:\n const token = parser.parseComponentValue();\n return descriptor.parse(context, isIdentToken(token) ? token.value : descriptor.initialValue);\n case PropertyDescriptorParsingType.VALUE:\n return descriptor.parse(context, parser.parseComponentValue());\n case PropertyDescriptorParsingType.LIST:\n return descriptor.parse(context, parser.parseComponentValues());\n case PropertyDescriptorParsingType.TOKEN_VALUE:\n return parser.parseComponentValue();\n case PropertyDescriptorParsingType.TYPE_VALUE:\n switch (descriptor.format) {\n case 'angle':\n return angle.parse(context, parser.parseComponentValue());\n case 'color':\n return colorType.parse(context, parser.parseComponentValue());\n case 'image':\n return image.parse(context, parser.parseComponentValue());\n case 'length':\n const length = parser.parseComponentValue();\n return isLength(length) ? length : ZERO_LENGTH;\n case 'length-percentage':\n const value = parser.parseComponentValue();\n return isLengthPercentage(value) ? value : ZERO_LENGTH;\n case 'time':\n return time.parse(context, parser.parseComponentValue());\n }\n break;\n }\n};\n","const elementDebuggerAttribute = 'data-html2canvas-debug';\nexport const enum DebuggerType {\n NONE,\n ALL,\n CLONE,\n PARSE,\n RENDER\n}\n\nconst getElementDebugType = (element: Element): DebuggerType => {\n const attribute = element.getAttribute(elementDebuggerAttribute);\n switch (attribute) {\n case 'all':\n return DebuggerType.ALL;\n case 'clone':\n return DebuggerType.CLONE;\n case 'parse':\n return DebuggerType.PARSE;\n case 'render':\n return DebuggerType.RENDER;\n default:\n return DebuggerType.NONE;\n }\n};\n\nexport const isDebugging = (element: Element, type: Omit): boolean => {\n const elementType = getElementDebugType(element);\n return elementType === DebuggerType.ALL || type === elementType;\n};\n","import {CSSParsedDeclaration} from '../css/index';\nimport {TextContainer} from './text-container';\nimport {Bounds, parseBounds} from '../css/layout/bounds';\nimport {isHTMLElementNode} from './node-parser';\nimport {Context} from '../core/context';\nimport {DebuggerType, isDebugging} from '../core/debugger';\n\nexport const enum FLAGS {\n CREATES_STACKING_CONTEXT = 1 << 1,\n CREATES_REAL_STACKING_CONTEXT = 1 << 2,\n IS_LIST_OWNER = 1 << 3,\n DEBUG_RENDER = 1 << 4\n}\n\nexport class ElementContainer {\n readonly styles: CSSParsedDeclaration;\n readonly textNodes: TextContainer[] = [];\n readonly elements: ElementContainer[] = [];\n bounds: Bounds;\n flags = 0;\n\n constructor(protected readonly context: Context, element: Element) {\n if (isDebugging(element, DebuggerType.PARSE)) {\n debugger;\n }\n\n this.styles = new CSSParsedDeclaration(context, window.getComputedStyle(element, null));\n\n if (isHTMLElementNode(element)) {\n if (this.styles.animationDuration.some((duration) => duration > 0)) {\n element.style.animationDuration = '0s';\n }\n\n if (this.styles.transform !== null) {\n // getBoundingClientRect takes transforms into account\n element.style.transform = 'none';\n }\n }\n\n this.bounds = parseBounds(this.context, element);\n\n if (isDebugging(element, DebuggerType.RENDER)) {\n this.flags |= FLAGS.DEBUG_RENDER;\n }\n }\n}\n","export const base64 =\n 'AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=';\nexport const byteLength = 19616;\n","const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const encode = (arraybuffer: ArrayBuffer): string => {\n let bytes = new Uint8Array(arraybuffer),\n i,\n len = bytes.length,\n base64 = '';\n\n for (i = 0; i < len; i += 3) {\n base64 += chars[bytes[i] >> 2];\n base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];\n base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];\n base64 += chars[bytes[i + 2] & 63];\n }\n\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + '=';\n } else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + '==';\n }\n\n return base64;\n};\n\nexport const decode = (base64: string): ArrayBuffer => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const arraybuffer = new ArrayBuffer(bufferLength),\n bytes = new Uint8Array(arraybuffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return arraybuffer;\n};\n","import {decode, polyUint16Array, polyUint32Array} from './Util';\n\nexport type int = number;\n\n/** Shift size for getting the index-2 table offset. */\nexport const UTRIE2_SHIFT_2 = 5;\n\n/** Shift size for getting the index-1 table offset. */\nexport const UTRIE2_SHIFT_1 = 6 + 5;\n\n/**\n * Shift size for shifting left the index array values.\n * Increases possible data size with 16-bit index values at the cost\n * of compactability.\n * This requires data blocks to be aligned by UTRIE2_DATA_GRANULARITY.\n */\nexport const UTRIE2_INDEX_SHIFT = 2;\n\n/**\n * Difference between the two shift sizes,\n * for getting an index-1 offset from an index-2 offset. 6=11-5\n */\nexport const UTRIE2_SHIFT_1_2 = UTRIE2_SHIFT_1 - UTRIE2_SHIFT_2;\n\n/**\n * The part of the index-2 table for U+D800..U+DBFF stores values for\n * lead surrogate code _units_ not code _points_.\n * Values for lead surrogate code _points_ are indexed with this portion of the table.\n * Length=32=0x20=0x400>>UTRIE2_SHIFT_2. (There are 1024=0x400 lead surrogates.)\n */\nexport const UTRIE2_LSCP_INDEX_2_OFFSET = 0x10000 >> UTRIE2_SHIFT_2;\n\n/** Number of entries in a data block. 32=0x20 */\nexport const UTRIE2_DATA_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_2;\n/** Mask for getting the lower bits for the in-data-block offset. */\nexport const UTRIE2_DATA_MASK = UTRIE2_DATA_BLOCK_LENGTH - 1;\n\nexport const UTRIE2_LSCP_INDEX_2_LENGTH = 0x400 >> UTRIE2_SHIFT_2;\n/** Count the lengths of both BMP pieces. 2080=0x820 */\nexport const UTRIE2_INDEX_2_BMP_LENGTH = UTRIE2_LSCP_INDEX_2_OFFSET + UTRIE2_LSCP_INDEX_2_LENGTH;\n/**\n * The 2-byte UTF-8 version of the index-2 table follows at offset 2080=0x820.\n * Length 32=0x20 for lead bytes C0..DF, regardless of UTRIE2_SHIFT_2.\n */\nexport const UTRIE2_UTF8_2B_INDEX_2_OFFSET = UTRIE2_INDEX_2_BMP_LENGTH;\nexport const UTRIE2_UTF8_2B_INDEX_2_LENGTH = 0x800 >> 6; /* U+0800 is the first code point after 2-byte UTF-8 */\n/**\n * The index-1 table, only used for supplementary code points, at offset 2112=0x840.\n * Variable length, for code points up to highStart, where the last single-value range starts.\n * Maximum length 512=0x200=0x100000>>UTRIE2_SHIFT_1.\n * (For 0x100000 supplementary code points U+10000..U+10ffff.)\n *\n * The part of the index-2 table for supplementary code points starts\n * after this index-1 table.\n *\n * Both the index-1 table and the following part of the index-2 table\n * are omitted completely if there is only BMP data.\n */\nexport const UTRIE2_INDEX_1_OFFSET = UTRIE2_UTF8_2B_INDEX_2_OFFSET + UTRIE2_UTF8_2B_INDEX_2_LENGTH;\n\n/**\n * Number of index-1 entries for the BMP. 32=0x20\n * This part of the index-1 table is omitted from the serialized form.\n */\nexport const UTRIE2_OMITTED_BMP_INDEX_1_LENGTH = 0x10000 >> UTRIE2_SHIFT_1;\n\n/** Number of entries in an index-2 block. 64=0x40 */\nexport const UTRIE2_INDEX_2_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_1_2;\n/** Mask for getting the lower bits for the in-index-2-block offset. */\nexport const UTRIE2_INDEX_2_MASK = UTRIE2_INDEX_2_BLOCK_LENGTH - 1;\n\nconst slice16 = (view: number[] | Uint16Array, start: number, end?: number) => {\n if (view.slice) {\n return view.slice(start, end);\n }\n\n return new Uint16Array(Array.prototype.slice.call(view, start, end));\n};\n\nconst slice32 = (view: number[] | Uint32Array, start: number, end?: number) => {\n if (view.slice) {\n return view.slice(start, end);\n }\n\n return new Uint32Array(Array.prototype.slice.call(view, start, end));\n};\n\nexport const createTrieFromBase64 = (base64: string, _byteLength: number): Trie => {\n const buffer = decode(base64);\n const view32 = Array.isArray(buffer) ? polyUint32Array(buffer) : new Uint32Array(buffer);\n const view16 = Array.isArray(buffer) ? polyUint16Array(buffer) : new Uint16Array(buffer);\n const headerLength = 24;\n\n const index = slice16(view16, headerLength / 2, view32[4] / 2);\n const data =\n view32[5] === 2\n ? slice16(view16, (headerLength + view32[4]) / 2)\n : slice32(view32, Math.ceil((headerLength + view32[4]) / 4));\n\n return new Trie(view32[0], view32[1], view32[2], view32[3], index, data);\n};\n\nexport class Trie {\n initialValue: int;\n errorValue: int;\n highStart: int;\n highValueIndex: int;\n index: Uint16Array | number[];\n data: Uint32Array | Uint16Array | number[];\n\n constructor(\n initialValue: int,\n errorValue: int,\n highStart: int,\n highValueIndex: int,\n index: Uint16Array | number[],\n data: Uint32Array | Uint16Array | number[]\n ) {\n this.initialValue = initialValue;\n this.errorValue = errorValue;\n this.highStart = highStart;\n this.highValueIndex = highValueIndex;\n this.index = index;\n this.data = data;\n }\n\n /**\n * Get the value for a code point as stored in the Trie.\n *\n * @param codePoint the code point\n * @return the value\n */\n get(codePoint: number): number {\n let ix;\n if (codePoint >= 0) {\n if (codePoint < 0x0d800 || (codePoint > 0x0dbff && codePoint <= 0x0ffff)) {\n // Ordinary BMP code point, excluding leading surrogates.\n // BMP uses a single level lookup. BMP index starts at offset 0 in the Trie2 index.\n // 16 bit data is stored in the index array itself.\n ix = this.index[codePoint >> UTRIE2_SHIFT_2];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n\n if (codePoint <= 0xffff) {\n // Lead Surrogate Code Point. A Separate index section is stored for\n // lead surrogate code units and code points.\n // The main index has the code unit data.\n // For this function, we need the code point data.\n // Note: this expression could be refactored for slightly improved efficiency, but\n // surrogate code points will be so rare in practice that it's not worth it.\n ix = this.index[UTRIE2_LSCP_INDEX_2_OFFSET + ((codePoint - 0xd800) >> UTRIE2_SHIFT_2)];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n\n if (codePoint < this.highStart) {\n // Supplemental code point, use two-level lookup.\n ix = UTRIE2_INDEX_1_OFFSET - UTRIE2_OMITTED_BMP_INDEX_1_LENGTH + (codePoint >> UTRIE2_SHIFT_1);\n ix = this.index[ix];\n ix += (codePoint >> UTRIE2_SHIFT_2) & UTRIE2_INDEX_2_MASK;\n ix = this.index[ix];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n if (codePoint <= 0x10ffff) {\n return this.data[this.highValueIndex];\n }\n }\n\n // Fall through. The code point is outside of the legal range of 0..0x10ffff.\n return this.errorValue;\n }\n}\n","import {base64, byteLength} from './grapheme-break-trie';\nimport {createTrieFromBase64} from 'utrie';\n\nconst Other = 0;\nconst Prepend = 1;\nconst CR = 2;\nconst LF = 3;\nconst Control = 4;\nconst Extend = 5;\nconst Regional_Indicator = 6;\nconst SpacingMark = 7;\nconst L = 8;\nconst V = 9;\nconst T = 10;\nconst LV = 11;\nconst LVT = 12;\nconst ZWJ = 13;\nconst Extended_Pictographic = 14;\nconst RI = 15;\n\nexport const classes: {[key: string]: number} = {\n Other,\n Prepend,\n CR,\n LF,\n Control,\n Extend,\n Regional_Indicator,\n SpacingMark,\n L,\n V,\n T,\n LV,\n LVT,\n ZWJ,\n Extended_Pictographic,\n RI,\n};\n\nexport const toCodePoints = (str: string): number[] => {\n const codePoints = [];\n let i = 0;\n const length = str.length;\n while (i < length) {\n const value = str.charCodeAt(i++);\n if (value >= 0xd800 && value <= 0xdbff && i < length) {\n const extra = str.charCodeAt(i++);\n if ((extra & 0xfc00) === 0xdc00) {\n codePoints.push(((value & 0x3ff) << 10) + (extra & 0x3ff) + 0x10000);\n } else {\n codePoints.push(value);\n i--;\n }\n } else {\n codePoints.push(value);\n }\n }\n return codePoints;\n};\n\nexport const fromCodePoint = (...codePoints: number[]): string => {\n if (String.fromCodePoint) {\n return String.fromCodePoint(...codePoints);\n }\n\n const length = codePoints.length;\n if (!length) {\n return '';\n }\n\n const codeUnits = [];\n\n let index = -1;\n let result = '';\n while (++index < length) {\n let codePoint = codePoints[index];\n if (codePoint <= 0xffff) {\n codeUnits.push(codePoint);\n } else {\n codePoint -= 0x10000;\n codeUnits.push((codePoint >> 10) + 0xd800, (codePoint % 0x400) + 0xdc00);\n }\n if (index + 1 === length || codeUnits.length > 0x4000) {\n result += String.fromCharCode(...codeUnits);\n codeUnits.length = 0;\n }\n }\n return result;\n};\n\nexport const UnicodeTrie = createTrieFromBase64(base64, byteLength);\n\nexport const BREAK_NOT_ALLOWED = '×';\nexport const BREAK_ALLOWED = '÷';\n\nexport type BREAK_OPPORTUNITIES = typeof BREAK_NOT_ALLOWED | typeof BREAK_ALLOWED;\n\nexport const codePointToClass = (codePoint: number): number => UnicodeTrie.get(codePoint);\n\nconst _graphemeBreakAtIndex = (_codePoints: number[], classTypes: number[], index: number): BREAK_OPPORTUNITIES => {\n let prevIndex = index - 2;\n let prev = classTypes[prevIndex];\n const current = classTypes[index - 1];\n const next = classTypes[index];\n // GB3 Do not break between a CR and LF\n if (current === CR && next === LF) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB4 Otherwise, break before and after controls.\n if (current === CR || current === LF || current === Control) {\n return BREAK_ALLOWED;\n }\n\n // GB5\n if (next === CR || next === LF || next === Control) {\n return BREAK_ALLOWED;\n }\n\n // Do not break Hangul syllable sequences.\n // GB6\n if (current === L && [L, V, LV, LVT].indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB7\n if ((current === LV || current === V) && (next === V || next === T)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB8\n if ((current === LVT || current === T) && next === T) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB9 Do not break before extending characters or ZWJ.\n if (next === ZWJ || next === Extend) {\n return BREAK_NOT_ALLOWED;\n }\n // Do not break before SpacingMarks, or after Prepend characters.\n // GB9a\n if (next === SpacingMark) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB9a\n if (current === Prepend) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB11 Do not break within emoji modifier sequences or emoji zwj sequences.\n if (current === ZWJ && next === Extended_Pictographic) {\n while (prev === Extend) {\n prev = classTypes[--prevIndex];\n }\n if (prev === Extended_Pictographic) {\n return BREAK_NOT_ALLOWED;\n }\n }\n\n // GB12 Do not break within emoji flag sequences.\n // That is, do not break between regional indicator (RI) symbols\n // if there is an odd number of RI characters before the break point.\n if (current === RI && next === RI) {\n let countRI = 0;\n while (prev === RI) {\n countRI++;\n prev = classTypes[--prevIndex];\n }\n if (countRI % 2 === 0) {\n return BREAK_NOT_ALLOWED;\n }\n }\n\n return BREAK_ALLOWED;\n};\n\nexport const graphemeBreakAtIndex = (codePoints: number[], index: number): BREAK_OPPORTUNITIES => {\n // GB1 Break at the start and end of text, unless the text is empty.\n if (index === 0) {\n return BREAK_ALLOWED;\n }\n\n // GB2\n if (index >= codePoints.length) {\n return BREAK_ALLOWED;\n }\n\n const classTypes = codePoints.map(codePointToClass);\n return _graphemeBreakAtIndex(codePoints, classTypes, index);\n};\n\nexport const GraphemeBreaker = (str: string) => {\n const codePoints = toCodePoints(str);\n const length = codePoints.length;\n let index = 0;\n let lastEnd = 0;\n const classTypes = codePoints.map(codePointToClass);\n\n return {\n next: () => {\n if (index >= length) {\n return {done: true, value: null};\n }\n\n let graphemeBreak = BREAK_NOT_ALLOWED;\n while (\n index < length &&\n (graphemeBreak = _graphemeBreakAtIndex(codePoints, classTypes, ++index)) === BREAK_NOT_ALLOWED\n ) {}\n\n if (graphemeBreak !== BREAK_NOT_ALLOWED || index === length) {\n const value = fromCodePoint.apply(null, codePoints.slice(lastEnd, index));\n lastEnd = index;\n return {value, done: false};\n }\n\n return {done: true, value: null};\n while (index < length) {}\n\n return {done: true, value: null};\n },\n };\n};\n\nexport const splitGraphemes = (str: string): string[] => {\n const breaker = GraphemeBreaker(str);\n\n const graphemes = [];\n let bk;\n\n while (!(bk = breaker.next()).done) {\n if (bk.value) {\n graphemes.push(bk.value.slice());\n }\n }\n\n return graphemes;\n};\n","import {Bounds} from '../css/layout/bounds';\nimport {\n isBodyElement,\n isCanvasElement,\n isCustomElement,\n isElementNode,\n isHTMLElementNode,\n isIFrameElement,\n isImageElement,\n isScriptElement,\n isSelectElement,\n isSlotElement,\n isStyleElement,\n isSVGElementNode,\n isTextareaElement,\n isTextNode,\n isVideoElement\n} from './node-parser';\nimport {isIdentToken, nonFunctionArgSeparator} from '../css/syntax/parser';\nimport {TokenType} from '../css/syntax/tokenizer';\nimport {CounterState, createCounterText} from '../css/types/functions/counter';\nimport {LIST_STYLE_TYPE, listStyleType} from '../css/property-descriptors/list-style-type';\nimport {CSSParsedCounterDeclaration, CSSParsedPseudoDeclaration} from '../css/index';\nimport {getQuote} from '../css/property-descriptors/quotes';\nimport {Context} from '../core/context';\nimport {DebuggerType, isDebugging} from '../core/debugger';\n\nexport interface CloneOptions {\n ignoreElements?: (element: Element) => boolean;\n onclone?: (document: Document, element: HTMLElement) => void;\n allowTaint?: boolean;\n}\n\nexport interface WindowOptions {\n scrollX: number;\n scrollY: number;\n windowWidth: number;\n windowHeight: number;\n}\n\nexport type CloneConfigurations = CloneOptions & {\n inlineImages: boolean;\n copyStyles: boolean;\n};\n\nconst IGNORE_ATTRIBUTE = 'data-html2canvas-ignore';\n\nexport class DocumentCloner {\n private readonly scrolledElements: [Element, number, number][];\n private readonly referenceElement: HTMLElement;\n clonedReferenceElement?: HTMLElement;\n private readonly documentElement: HTMLElement;\n private readonly counters: CounterState;\n private quoteDepth: number;\n\n constructor(\n private readonly context: Context,\n element: HTMLElement,\n private readonly options: CloneConfigurations\n ) {\n this.scrolledElements = [];\n this.referenceElement = element;\n this.counters = new CounterState();\n this.quoteDepth = 0;\n if (!element.ownerDocument) {\n throw new Error('Cloned element does not have an owner document');\n }\n\n this.documentElement = this.cloneNode(element.ownerDocument.documentElement, false) as HTMLElement;\n }\n\n toIFrame(ownerDocument: Document, windowSize: Bounds): Promise {\n const iframe: HTMLIFrameElement = createIFrameContainer(ownerDocument, windowSize);\n\n if (!iframe.contentWindow) {\n return Promise.reject(`Unable to find iframe window`);\n }\n\n const scrollX = (ownerDocument.defaultView as Window).pageXOffset;\n const scrollY = (ownerDocument.defaultView as Window).pageYOffset;\n\n const cloneWindow = iframe.contentWindow;\n const documentClone: Document = cloneWindow.document;\n\n /* Chrome doesn't detect relative background-images assigned in inline \";\r\n var nW = globalObject.open();\r\n\r\n if (nW !== null) {\r\n nW.document.write(htmlForNewWindow);\r\n }\r\n return nW;\r\n } else {\r\n throw new Error(\r\n \"The option pdfobjectnewwindow just works in a browser-environment.\"\r\n );\r\n }\r\n case \"pdfjsnewwindow\":\r\n if (\r\n Object.prototype.toString.call(globalObject) === \"[object Window]\"\r\n ) {\r\n var pdfJsUrl = options.pdfJsUrl || \"examples/PDF.js/web/viewer.html\";\r\n var htmlForPDFjsNewWindow =\r\n \"\" +\r\n \"\" +\r\n '' +\r\n \"\";\r\n var dataURLNewWindow = globalObject.open();\r\n if (dataURLNewWindow !== null) {\r\n dataURLNewWindow.document.write(htmlForDataURLNewWindow);\r\n dataURLNewWindow.document.title = options.filename;\r\n }\r\n if (dataURLNewWindow || typeof safari === \"undefined\")\r\n return dataURLNewWindow;\r\n } else {\r\n throw new Error(\r\n \"The option dataurlnewwindow just works in a browser-environment.\"\r\n );\r\n }\r\n break;\r\n case \"datauri\":\r\n case \"dataurl\":\r\n return (globalObject.document.location.href = this.output(\r\n \"datauristring\",\r\n options\r\n ));\r\n default:\r\n return null;\r\n }\r\n }));\r\n\r\n /**\r\n * Used to see if a supplied hotfix was requested when the pdf instance was created.\r\n * @param {string} hotfixName - The name of the hotfix to check.\r\n * @returns {boolean}\r\n */\r\n var hasHotfix = function(hotfixName) {\r\n return (\r\n Array.isArray(hotfixes) === true && hotfixes.indexOf(hotfixName) > -1\r\n );\r\n };\r\n\r\n switch (unit) {\r\n case \"pt\":\r\n scaleFactor = 1;\r\n break;\r\n case \"mm\":\r\n scaleFactor = 72 / 25.4;\r\n break;\r\n case \"cm\":\r\n scaleFactor = 72 / 2.54;\r\n break;\r\n case \"in\":\r\n scaleFactor = 72;\r\n break;\r\n case \"px\":\r\n if (hasHotfix(\"px_scaling\") == true) {\r\n scaleFactor = 72 / 96;\r\n } else {\r\n scaleFactor = 96 / 72;\r\n }\r\n break;\r\n case \"pc\":\r\n scaleFactor = 12;\r\n break;\r\n case \"em\":\r\n scaleFactor = 12;\r\n break;\r\n case \"ex\":\r\n scaleFactor = 6;\r\n break;\r\n default:\r\n if (typeof unit === \"number\") {\r\n scaleFactor = unit;\r\n } else {\r\n throw new Error(\"Invalid unit: \" + unit);\r\n }\r\n }\r\n\r\n var encryption = null;\r\n setCreationDate();\r\n setFileId();\r\n\r\n var getEncryptor = function(objectId) {\r\n if (encryptionOptions !== null) {\r\n return encryption.encryptor(objectId, 0);\r\n }\r\n return function(data) {\r\n return data;\r\n };\r\n };\r\n\r\n //---------------------------------------\r\n // Public API\r\n\r\n var getPageInfo = (API.__private__.getPageInfo = API.getPageInfo = function(\r\n pageNumberOneBased\r\n ) {\r\n if (isNaN(pageNumberOneBased) || pageNumberOneBased % 1 !== 0) {\r\n throw new Error(\"Invalid argument passed to jsPDF.getPageInfo\");\r\n }\r\n var objId = pagesContext[pageNumberOneBased].objId;\r\n return {\r\n objId: objId,\r\n pageNumber: pageNumberOneBased,\r\n pageContext: pagesContext[pageNumberOneBased]\r\n };\r\n });\r\n\r\n var getPageInfoByObjId = (API.__private__.getPageInfoByObjId = function(\r\n objId\r\n ) {\r\n if (isNaN(objId) || objId % 1 !== 0) {\r\n throw new Error(\"Invalid argument passed to jsPDF.getPageInfoByObjId\");\r\n }\r\n for (var pageNumber in pagesContext) {\r\n if (pagesContext[pageNumber].objId === objId) {\r\n break;\r\n }\r\n }\r\n return getPageInfo(pageNumber);\r\n });\r\n\r\n var getCurrentPageInfo = (API.__private__.getCurrentPageInfo = API.getCurrentPageInfo = function() {\r\n return {\r\n objId: pagesContext[currentPage].objId,\r\n pageNumber: currentPage,\r\n pageContext: pagesContext[currentPage]\r\n };\r\n });\r\n\r\n /**\r\n * Adds (and transfers the focus to) new page to the PDF document.\r\n * @param format {String/Array} The format of the new page. Can be:
  • a0 - a10
  • b0 - b10
  • c0 - c10
  • dl
  • letter
  • government-letter
  • legal
  • junior-legal
  • ledger
  • tabloid
  • credit-card

\r\n * Default is \"a4\". If you want to use your own format just pass instead of one of the above predefined formats the size as an number-array, e.g. [595.28, 841.89]\r\n * @param orientation {string} Orientation of the new page. Possible values are \"portrait\" or \"landscape\" (or shortcuts \"p\" (Default), \"l\").\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n *\r\n * @memberof jsPDF#\r\n * @name addPage\r\n */\r\n API.addPage = function() {\r\n _addPage.apply(this, arguments);\r\n return this;\r\n };\r\n /**\r\n * Adds (and transfers the focus to) new page to the PDF document.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n *\r\n * @memberof jsPDF#\r\n * @name setPage\r\n * @param {number} page Switch the active page to the page number specified (indexed starting at 1).\r\n * @example\r\n * doc = jsPDF()\r\n * doc.addPage()\r\n * doc.addPage()\r\n * doc.text('I am on page 3', 10, 10)\r\n * doc.setPage(1)\r\n * doc.text('I am on page 1', 10, 10)\r\n */\r\n API.setPage = function() {\r\n _setPage.apply(this, arguments);\r\n setOutputDestination.call(this, pages[currentPage]);\r\n return this;\r\n };\r\n\r\n /**\r\n * @name insertPage\r\n * @memberof jsPDF#\r\n *\r\n * @function\r\n * @instance\r\n * @param {Object} beforePage\r\n * @returns {jsPDF}\r\n */\r\n API.insertPage = function(beforePage) {\r\n this.addPage();\r\n this.movePage(currentPage, beforePage);\r\n return this;\r\n };\r\n\r\n /**\r\n * @name movePage\r\n * @memberof jsPDF#\r\n * @function\r\n * @instance\r\n * @param {number} targetPage\r\n * @param {number} beforePage\r\n * @returns {jsPDF}\r\n */\r\n API.movePage = function(targetPage, beforePage) {\r\n var tmpPages, tmpPagesContext;\r\n if (targetPage > beforePage) {\r\n tmpPages = pages[targetPage];\r\n tmpPagesContext = pagesContext[targetPage];\r\n for (var i = targetPage; i > beforePage; i--) {\r\n pages[i] = pages[i - 1];\r\n pagesContext[i] = pagesContext[i - 1];\r\n }\r\n pages[beforePage] = tmpPages;\r\n pagesContext[beforePage] = tmpPagesContext;\r\n this.setPage(beforePage);\r\n } else if (targetPage < beforePage) {\r\n tmpPages = pages[targetPage];\r\n tmpPagesContext = pagesContext[targetPage];\r\n for (var j = targetPage; j < beforePage; j++) {\r\n pages[j] = pages[j + 1];\r\n pagesContext[j] = pagesContext[j + 1];\r\n }\r\n pages[beforePage] = tmpPages;\r\n pagesContext[beforePage] = tmpPagesContext;\r\n this.setPage(beforePage);\r\n }\r\n return this;\r\n };\r\n\r\n /**\r\n * Deletes a page from the PDF.\r\n * @name deletePage\r\n * @memberof jsPDF#\r\n * @function\r\n * @param {number} targetPage\r\n * @instance\r\n * @returns {jsPDF}\r\n */\r\n API.deletePage = function() {\r\n _deletePage.apply(this, arguments);\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds text to page. Supports adding multiline text when 'text' argument is an Array of Strings.\r\n *\r\n * @function\r\n * @instance\r\n * @param {String|Array} text String or array of strings to be added to the page. Each line is shifted one line down per font, spacing settings declared before this call.\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page.\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page.\r\n * @param {Object} [options] - Collection of settings signaling how the text must be encoded.\r\n * @param {string} [options.align=left] - The alignment of the text, possible values: left, center, right, justify.\r\n * @param {string} [options.baseline=alphabetic] - Sets text baseline used when drawing the text, possible values: alphabetic, ideographic, bottom, top, middle, hanging\r\n * @param {number|Matrix} [options.angle=0] - Rotate the text clockwise or counterclockwise. Expects the angle in degree.\r\n * @param {number} [options.rotationDirection=1] - Direction of the rotation. 0 = clockwise, 1 = counterclockwise.\r\n * @param {number} [options.charSpace=0] - The space between each letter.\r\n * @param {number} [options.horizontalScale=1] - Horizontal scale of the text as a factor of the regular size.\r\n * @param {number} [options.lineHeightFactor=1.15] - The lineheight of each line.\r\n * @param {Object} [options.flags] - Flags for to8bitStream.\r\n * @param {boolean} [options.flags.noBOM=true] - Don't add BOM to Unicode-text.\r\n * @param {boolean} [options.flags.autoencode=true] - Autoencode the Text.\r\n * @param {number} [options.maxWidth=0] - Split the text by given width, 0 = no split.\r\n * @param {string} [options.renderingMode=fill] - Set how the text should be rendered, possible values: fill, stroke, fillThenStroke, invisible, fillAndAddForClipping, strokeAndAddPathForClipping, fillThenStrokeAndAddToPathForClipping, addToPathForClipping.\r\n * @param {boolean} [options.isInputVisual] - Option for the BidiEngine\r\n * @param {boolean} [options.isOutputVisual] - Option for the BidiEngine\r\n * @param {boolean} [options.isInputRtl] - Option for the BidiEngine\r\n * @param {boolean} [options.isOutputRtl] - Option for the BidiEngine\r\n * @param {boolean} [options.isSymmetricSwapping] - Option for the BidiEngine\r\n * @param {number|Matrix} transform If transform is a number the text will be rotated by this value around the anchor set by x and y.\r\n *\r\n * If it is a Matrix, this matrix gets directly applied to the text, which allows shearing\r\n * effects etc.; the x and y offsets are then applied AFTER the coordinate system has been established by this\r\n * matrix. This means passing a rotation matrix that is equivalent to some rotation angle will in general yield a\r\n * DIFFERENT result. A matrix is only allowed in \"advanced\" API mode.\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name text\r\n */\r\n API.__private__.text = API.text = function(text, x, y, options, transform) {\r\n /*\r\n * Inserts something like this into PDF\r\n * BT\r\n * /F1 16 Tf % Font name + size\r\n * 16 TL % How many units down for next line in multiline text\r\n * 0 g % color\r\n * 28.35 813.54 Td % position\r\n * (line one) Tj\r\n * T* (line two) Tj\r\n * T* (line three) Tj\r\n * ET\r\n */\r\n options = options || {};\r\n var scope = options.scope || this;\r\n var payload, da, angle, align, charSpace, maxWidth, flags, horizontalScale;\r\n\r\n // Pre-August-2012 the order of arguments was function(x, y, text, flags)\r\n // in effort to make all calls have similar signature like\r\n // function(data, coordinates... , miscellaneous)\r\n // this method had its args flipped.\r\n // code below allows backward compatibility with old arg order.\r\n if (\r\n typeof text === \"number\" &&\r\n typeof x === \"number\" &&\r\n (typeof y === \"string\" || Array.isArray(y))\r\n ) {\r\n var tmp = y;\r\n y = x;\r\n x = text;\r\n text = tmp;\r\n }\r\n\r\n var transformationMatrix;\r\n\r\n if (arguments[3] instanceof Matrix === false) {\r\n flags = arguments[3];\r\n angle = arguments[4];\r\n align = arguments[5];\r\n\r\n if (typeof flags !== \"object\" || flags === null) {\r\n if (typeof angle === \"string\") {\r\n align = angle;\r\n angle = null;\r\n }\r\n if (typeof flags === \"string\") {\r\n align = flags;\r\n flags = null;\r\n }\r\n if (typeof flags === \"number\") {\r\n angle = flags;\r\n flags = null;\r\n }\r\n options = {\r\n flags: flags,\r\n angle: angle,\r\n align: align\r\n };\r\n }\r\n } else {\r\n advancedApiModeTrap(\r\n \"The transform parameter of text() with a Matrix value\"\r\n );\r\n transformationMatrix = transform;\r\n }\r\n\r\n if (isNaN(x) || isNaN(y) || typeof text === \"undefined\" || text === null) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.text\");\r\n }\r\n\r\n if (text.length === 0) {\r\n return scope;\r\n }\r\n\r\n var xtra = \"\";\r\n var isHex = false;\r\n var lineHeight =\r\n typeof options.lineHeightFactor === \"number\"\r\n ? options.lineHeightFactor\r\n : lineHeightFactor;\r\n var scaleFactor = scope.internal.scaleFactor;\r\n\r\n function ESC(s) {\r\n s = s.split(\"\\t\").join(Array(options.TabLen || 9).join(\" \"));\r\n return pdfEscape(s, flags);\r\n }\r\n\r\n function transformTextToSpecialArray(text) {\r\n //we don't want to destroy original text array, so cloning it\r\n var sa = text.concat();\r\n var da = [];\r\n var len = sa.length;\r\n var curDa;\r\n //we do array.join('text that must not be PDFescaped\")\r\n //thus, pdfEscape each component separately\r\n while (len--) {\r\n curDa = sa.shift();\r\n if (typeof curDa === \"string\") {\r\n da.push(curDa);\r\n } else {\r\n if (\r\n Array.isArray(text) &&\r\n (curDa.length === 1 ||\r\n (curDa[1] === undefined && curDa[2] === undefined))\r\n ) {\r\n da.push(curDa[0]);\r\n } else {\r\n da.push([curDa[0], curDa[1], curDa[2]]);\r\n }\r\n }\r\n }\r\n return da;\r\n }\r\n\r\n function processTextByFunction(text, processingFunction) {\r\n var result;\r\n if (typeof text === \"string\") {\r\n result = processingFunction(text)[0];\r\n } else if (Array.isArray(text)) {\r\n //we don't want to destroy original text array, so cloning it\r\n var sa = text.concat();\r\n var da = [];\r\n var len = sa.length;\r\n var curDa;\r\n var tmpResult;\r\n //we do array.join('text that must not be PDFescaped\")\r\n //thus, pdfEscape each component separately\r\n while (len--) {\r\n curDa = sa.shift();\r\n if (typeof curDa === \"string\") {\r\n da.push(processingFunction(curDa)[0]);\r\n } else if (Array.isArray(curDa) && typeof curDa[0] === \"string\") {\r\n tmpResult = processingFunction(curDa[0], curDa[1], curDa[2]);\r\n da.push([tmpResult[0], tmpResult[1], tmpResult[2]]);\r\n }\r\n }\r\n result = da;\r\n }\r\n return result;\r\n }\r\n\r\n //Check if text is of type String\r\n var textIsOfTypeString = false;\r\n var tmpTextIsOfTypeString = true;\r\n\r\n if (typeof text === \"string\") {\r\n textIsOfTypeString = true;\r\n } else if (Array.isArray(text)) {\r\n //we don't want to destroy original text array, so cloning it\r\n var sa = text.concat();\r\n da = [];\r\n var len = sa.length;\r\n var curDa;\r\n //we do array.join('text that must not be PDFescaped\")\r\n //thus, pdfEscape each component separately\r\n while (len--) {\r\n curDa = sa.shift();\r\n if (\r\n typeof curDa !== \"string\" ||\r\n (Array.isArray(curDa) && typeof curDa[0] !== \"string\")\r\n ) {\r\n tmpTextIsOfTypeString = false;\r\n }\r\n }\r\n textIsOfTypeString = tmpTextIsOfTypeString;\r\n }\r\n if (textIsOfTypeString === false) {\r\n throw new Error(\r\n 'Type of text must be string or Array. \"' +\r\n text +\r\n '\" is not recognized.'\r\n );\r\n }\r\n\r\n //If there are any newlines in text, we assume\r\n //the user wanted to print multiple lines, so break the\r\n //text up into an array. If the text is already an array,\r\n //we assume the user knows what they are doing.\r\n //Convert text into an array anyway to simplify\r\n //later code.\r\n\r\n if (typeof text === \"string\") {\r\n if (text.match(/[\\r?\\n]/)) {\r\n text = text.split(/\\r\\n|\\r|\\n/g);\r\n } else {\r\n text = [text];\r\n }\r\n }\r\n\r\n //baseline\r\n var height = activeFontSize / scope.internal.scaleFactor;\r\n var descent = height * (lineHeight - 1);\r\n\r\n switch (options.baseline) {\r\n case \"bottom\":\r\n y -= descent;\r\n break;\r\n case \"top\":\r\n y += height - descent;\r\n break;\r\n case \"hanging\":\r\n y += height - 2 * descent;\r\n break;\r\n case \"middle\":\r\n y += height / 2 - descent;\r\n break;\r\n case \"ideographic\":\r\n case \"alphabetic\":\r\n default:\r\n // do nothing, everything is fine\r\n break;\r\n }\r\n\r\n //multiline\r\n maxWidth = options.maxWidth || 0;\r\n\r\n if (maxWidth > 0) {\r\n if (typeof text === \"string\") {\r\n text = scope.splitTextToSize(text, maxWidth);\r\n } else if (Object.prototype.toString.call(text) === \"[object Array]\") {\r\n text = text.reduce(function(acc, textLine) {\r\n return acc.concat(scope.splitTextToSize(textLine, maxWidth));\r\n }, []);\r\n }\r\n }\r\n\r\n //creating Payload-Object to make text byRef\r\n payload = {\r\n text: text,\r\n x: x,\r\n y: y,\r\n options: options,\r\n mutex: {\r\n pdfEscape: pdfEscape,\r\n activeFontKey: activeFontKey,\r\n fonts: fonts,\r\n activeFontSize: activeFontSize\r\n }\r\n };\r\n events.publish(\"preProcessText\", payload);\r\n\r\n text = payload.text;\r\n options = payload.options;\r\n\r\n //angle\r\n angle = options.angle;\r\n\r\n if (\r\n transformationMatrix instanceof Matrix === false &&\r\n angle &&\r\n typeof angle === \"number\"\r\n ) {\r\n angle *= Math.PI / 180;\r\n\r\n if (options.rotationDirection === 0) {\r\n angle = -angle;\r\n }\r\n\r\n if (apiMode === ApiMode.ADVANCED) {\r\n angle = -angle;\r\n }\r\n\r\n var c = Math.cos(angle);\r\n var s = Math.sin(angle);\r\n transformationMatrix = new Matrix(c, s, -s, c, 0, 0);\r\n } else if (angle && angle instanceof Matrix) {\r\n transformationMatrix = angle;\r\n }\r\n\r\n if (apiMode === ApiMode.ADVANCED && !transformationMatrix) {\r\n transformationMatrix = identityMatrix;\r\n }\r\n\r\n //charSpace\r\n\r\n charSpace = options.charSpace || activeCharSpace;\r\n\r\n if (typeof charSpace !== \"undefined\") {\r\n xtra += hpf(scale(charSpace)) + \" Tc\\n\";\r\n this.setCharSpace(this.getCharSpace() || 0);\r\n }\r\n\r\n horizontalScale = options.horizontalScale;\r\n if (typeof horizontalScale !== \"undefined\") {\r\n xtra += hpf(horizontalScale * 100) + \" Tz\\n\";\r\n }\r\n\r\n //lang\r\n\r\n var lang = options.lang;\r\n\r\n if (lang) {\r\n // xtra += \"/Lang (\" + lang +\")\\n\";\r\n }\r\n\r\n //renderingMode\r\n var renderingMode = -1;\r\n var parmRenderingMode =\r\n typeof options.renderingMode !== \"undefined\"\r\n ? options.renderingMode\r\n : options.stroke;\r\n var pageContext = scope.internal.getCurrentPageInfo().pageContext;\r\n\r\n switch (parmRenderingMode) {\r\n case 0:\r\n case false:\r\n case \"fill\":\r\n renderingMode = 0;\r\n break;\r\n case 1:\r\n case true:\r\n case \"stroke\":\r\n renderingMode = 1;\r\n break;\r\n case 2:\r\n case \"fillThenStroke\":\r\n renderingMode = 2;\r\n break;\r\n case 3:\r\n case \"invisible\":\r\n renderingMode = 3;\r\n break;\r\n case 4:\r\n case \"fillAndAddForClipping\":\r\n renderingMode = 4;\r\n break;\r\n case 5:\r\n case \"strokeAndAddPathForClipping\":\r\n renderingMode = 5;\r\n break;\r\n case 6:\r\n case \"fillThenStrokeAndAddToPathForClipping\":\r\n renderingMode = 6;\r\n break;\r\n case 7:\r\n case \"addToPathForClipping\":\r\n renderingMode = 7;\r\n break;\r\n }\r\n\r\n var usedRenderingMode =\r\n typeof pageContext.usedRenderingMode !== \"undefined\"\r\n ? pageContext.usedRenderingMode\r\n : -1;\r\n\r\n //if the coder wrote it explicitly to use a specific\r\n //renderingMode, then use it\r\n if (renderingMode !== -1) {\r\n xtra += renderingMode + \" Tr\\n\";\r\n //otherwise check if we used the rendering Mode already\r\n //if so then set the rendering Mode...\r\n } else if (usedRenderingMode !== -1) {\r\n xtra += \"0 Tr\\n\";\r\n }\r\n\r\n if (renderingMode !== -1) {\r\n pageContext.usedRenderingMode = renderingMode;\r\n }\r\n\r\n //align\r\n align = options.align || \"left\";\r\n var leading = activeFontSize * lineHeight;\r\n var pageWidth = scope.internal.pageSize.getWidth();\r\n var activeFont = fonts[activeFontKey];\r\n charSpace = options.charSpace || activeCharSpace;\r\n maxWidth = options.maxWidth || 0;\r\n\r\n var lineWidths;\r\n flags = Object.assign({ autoencode: true, noBOM: true }, options.flags);\r\n\r\n var wordSpacingPerLine = [];\r\n\r\n if (Object.prototype.toString.call(text) === \"[object Array]\") {\r\n da = transformTextToSpecialArray(text);\r\n var newY;\r\n if (align !== \"left\") {\r\n lineWidths = da.map(function(v) {\r\n return (\r\n (scope.getStringUnitWidth(v, {\r\n font: activeFont,\r\n charSpace: charSpace,\r\n fontSize: activeFontSize,\r\n doKerning: false\r\n }) *\r\n activeFontSize) /\r\n scaleFactor\r\n );\r\n });\r\n }\r\n //The first line uses the \"main\" Td setting,\r\n //and the subsequent lines are offset by the\r\n //previous line's x coordinate.\r\n var prevWidth = 0;\r\n var newX;\r\n if (align === \"right\") {\r\n //The passed in x coordinate defines the\r\n //rightmost point of the text.\r\n x -= lineWidths[0];\r\n text = [];\r\n len = da.length;\r\n for (var i = 0; i < len; i++) {\r\n if (i === 0) {\r\n newX = getHorizontalCoordinate(x);\r\n newY = getVerticalCoordinate(y);\r\n } else {\r\n newX = scale(prevWidth - lineWidths[i]);\r\n newY = -leading;\r\n }\r\n text.push([da[i], newX, newY]);\r\n prevWidth = lineWidths[i];\r\n }\r\n } else if (align === \"center\") {\r\n //The passed in x coordinate defines\r\n //the center point.\r\n x -= lineWidths[0] / 2;\r\n text = [];\r\n len = da.length;\r\n for (var j = 0; j < len; j++) {\r\n if (j === 0) {\r\n newX = getHorizontalCoordinate(x);\r\n newY = getVerticalCoordinate(y);\r\n } else {\r\n newX = scale((prevWidth - lineWidths[j]) / 2);\r\n newY = -leading;\r\n }\r\n text.push([da[j], newX, newY]);\r\n prevWidth = lineWidths[j];\r\n }\r\n } else if (align === \"left\") {\r\n text = [];\r\n len = da.length;\r\n for (var h = 0; h < len; h++) {\r\n text.push(da[h]);\r\n }\r\n } else if (align === \"justify\") {\r\n text = [];\r\n len = da.length;\r\n maxWidth = maxWidth !== 0 ? maxWidth : pageWidth;\r\n\r\n for (var l = 0; l < len; l++) {\r\n newY = l === 0 ? getVerticalCoordinate(y) : -leading;\r\n newX = l === 0 ? getHorizontalCoordinate(x) : 0;\r\n if (l < len - 1) {\r\n wordSpacingPerLine.push(\r\n hpf(\r\n scale(\r\n (maxWidth - lineWidths[l]) / (da[l].split(\" \").length - 1)\r\n )\r\n )\r\n );\r\n } else {\r\n wordSpacingPerLine.push(0);\r\n }\r\n text.push([da[l], newX, newY]);\r\n }\r\n } else {\r\n throw new Error(\r\n 'Unrecognized alignment option, use \"left\", \"center\", \"right\" or \"justify\".'\r\n );\r\n }\r\n }\r\n\r\n //R2L\r\n var doReversing = typeof options.R2L === \"boolean\" ? options.R2L : R2L;\r\n if (doReversing === true) {\r\n text = processTextByFunction(text, function(text, posX, posY) {\r\n return [\r\n text\r\n .split(\"\")\r\n .reverse()\r\n .join(\"\"),\r\n posX,\r\n posY\r\n ];\r\n });\r\n }\r\n\r\n //creating Payload-Object to make text byRef\r\n payload = {\r\n text: text,\r\n x: x,\r\n y: y,\r\n options: options,\r\n mutex: {\r\n pdfEscape: pdfEscape,\r\n activeFontKey: activeFontKey,\r\n fonts: fonts,\r\n activeFontSize: activeFontSize\r\n }\r\n };\r\n events.publish(\"postProcessText\", payload);\r\n\r\n text = payload.text;\r\n isHex = payload.mutex.isHex || false;\r\n\r\n //Escaping\r\n var activeFontEncoding = fonts[activeFontKey].encoding;\r\n\r\n if (\r\n activeFontEncoding === \"WinAnsiEncoding\" ||\r\n activeFontEncoding === \"StandardEncoding\"\r\n ) {\r\n text = processTextByFunction(text, function(text, posX, posY) {\r\n return [ESC(text), posX, posY];\r\n });\r\n }\r\n\r\n da = transformTextToSpecialArray(text);\r\n\r\n text = [];\r\n var STRING = 0;\r\n var ARRAY = 1;\r\n var variant = Array.isArray(da[0]) ? ARRAY : STRING;\r\n var posX;\r\n var posY;\r\n var content;\r\n var wordSpacing = \"\";\r\n\r\n var generatePosition = function(\r\n parmPosX,\r\n parmPosY,\r\n parmTransformationMatrix\r\n ) {\r\n var position = \"\";\r\n if (parmTransformationMatrix instanceof Matrix) {\r\n // It is kind of more intuitive to apply a plain rotation around the text anchor set by x and y\r\n // but when the user supplies an arbitrary transformation matrix, the x and y offsets should be applied\r\n // in the coordinate system established by this matrix\r\n if (typeof options.angle === \"number\") {\r\n parmTransformationMatrix = matrixMult(\r\n parmTransformationMatrix,\r\n new Matrix(1, 0, 0, 1, parmPosX, parmPosY)\r\n );\r\n } else {\r\n parmTransformationMatrix = matrixMult(\r\n new Matrix(1, 0, 0, 1, parmPosX, parmPosY),\r\n parmTransformationMatrix\r\n );\r\n }\r\n\r\n if (apiMode === ApiMode.ADVANCED) {\r\n parmTransformationMatrix = matrixMult(\r\n new Matrix(1, 0, 0, -1, 0, 0),\r\n parmTransformationMatrix\r\n );\r\n }\r\n\r\n position = parmTransformationMatrix.join(\" \") + \" Tm\\n\";\r\n } else {\r\n position = hpf(parmPosX) + \" \" + hpf(parmPosY) + \" Td\\n\";\r\n }\r\n return position;\r\n };\r\n\r\n for (var lineIndex = 0; lineIndex < da.length; lineIndex++) {\r\n wordSpacing = \"\";\r\n\r\n switch (variant) {\r\n case ARRAY:\r\n content =\r\n (isHex ? \"<\" : \"(\") + da[lineIndex][0] + (isHex ? \">\" : \")\");\r\n posX = parseFloat(da[lineIndex][1]);\r\n posY = parseFloat(da[lineIndex][2]);\r\n break;\r\n case STRING:\r\n content = (isHex ? \"<\" : \"(\") + da[lineIndex] + (isHex ? \">\" : \")\");\r\n posX = getHorizontalCoordinate(x);\r\n posY = getVerticalCoordinate(y);\r\n break;\r\n }\r\n\r\n if (\r\n typeof wordSpacingPerLine !== \"undefined\" &&\r\n typeof wordSpacingPerLine[lineIndex] !== \"undefined\"\r\n ) {\r\n wordSpacing = wordSpacingPerLine[lineIndex] + \" Tw\\n\";\r\n }\r\n\r\n if (lineIndex === 0) {\r\n text.push(\r\n wordSpacing +\r\n generatePosition(posX, posY, transformationMatrix) +\r\n content\r\n );\r\n } else if (variant === STRING) {\r\n text.push(wordSpacing + content);\r\n } else if (variant === ARRAY) {\r\n text.push(\r\n wordSpacing +\r\n generatePosition(posX, posY, transformationMatrix) +\r\n content\r\n );\r\n }\r\n }\r\n\r\n text = variant === STRING ? text.join(\" Tj\\nT* \") : text.join(\" Tj\\n\");\r\n text += \" Tj\\n\";\r\n\r\n var result = \"BT\\n/\";\r\n result += activeFontKey + \" \" + activeFontSize + \" Tf\\n\"; // font face, style, size\r\n result += hpf(activeFontSize * lineHeight) + \" TL\\n\"; // line spacing\r\n result += textColor + \"\\n\";\r\n result += xtra;\r\n result += text;\r\n result += \"ET\";\r\n\r\n out(result);\r\n usedFonts[activeFontKey] = true;\r\n return scope;\r\n };\r\n\r\n // PDF supports these path painting and clip path operators:\r\n //\r\n // S - stroke\r\n // s - close/stroke\r\n // f (F) - fill non-zero\r\n // f* - fill evenodd\r\n // B - fill stroke nonzero\r\n // B* - fill stroke evenodd\r\n // b - close fill stroke nonzero\r\n // b* - close fill stroke evenodd\r\n // n - nothing (consume path)\r\n // W - clip nonzero\r\n // W* - clip evenodd\r\n //\r\n // In order to keep the API small, we omit the close-and-fill/stroke operators and provide a separate close()\r\n // method.\r\n /**\r\n *\r\n * @name clip\r\n * @function\r\n * @instance\r\n * @param {string} rule Only possible value is 'evenodd'\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @description All .clip() after calling drawing ops with a style argument of null.\r\n */\r\n var clip = (API.__private__.clip = API.clip = function(rule) {\r\n // Call .clip() after calling drawing ops with a style argument of null\r\n // W is the PDF clipping op\r\n if (\"evenodd\" === rule) {\r\n out(\"W*\");\r\n } else {\r\n out(\"W\");\r\n }\r\n return this;\r\n });\r\n\r\n /**\r\n * @name clipEvenOdd\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @description Modify the current clip path by intersecting it with the current path using the even-odd rule. Note\r\n * that this will NOT consume the current path. In order to only use this path for clipping call\r\n * {@link API.discardPath} afterwards.\r\n */\r\n API.clipEvenOdd = function() {\r\n return clip(\"evenodd\");\r\n };\r\n\r\n /**\r\n * Consumes the current path without any effect. Mainly used in combination with {@link clip} or\r\n * {@link clipEvenOdd}. The PDF \"n\" operator.\r\n * @name discardPath\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.__private__.discardPath = API.discardPath = function() {\r\n out(\"n\");\r\n return this;\r\n };\r\n\r\n var isValidStyle = (API.__private__.isValidStyle = function(style) {\r\n var validStyleVariants = [\r\n undefined,\r\n null,\r\n \"S\",\r\n \"D\",\r\n \"F\",\r\n \"DF\",\r\n \"FD\",\r\n \"f\",\r\n \"f*\",\r\n \"B\",\r\n \"B*\",\r\n \"n\"\r\n ];\r\n var result = false;\r\n if (validStyleVariants.indexOf(style) !== -1) {\r\n result = true;\r\n }\r\n return result;\r\n });\r\n\r\n API.__private__.setDefaultPathOperation = API.setDefaultPathOperation = function(\r\n operator\r\n ) {\r\n if (isValidStyle(operator)) {\r\n defaultPathOperation = operator;\r\n }\r\n return this;\r\n };\r\n\r\n var getStyle = (API.__private__.getStyle = API.getStyle = function(style) {\r\n // see path-painting operators in PDF spec\r\n var op = defaultPathOperation; // stroke\r\n\r\n switch (style) {\r\n case \"D\":\r\n case \"S\":\r\n op = \"S\"; // stroke\r\n break;\r\n case \"F\":\r\n op = \"f\"; // fill\r\n break;\r\n case \"FD\":\r\n case \"DF\":\r\n op = \"B\";\r\n break;\r\n case \"f\":\r\n case \"f*\":\r\n case \"B\":\r\n case \"B*\":\r\n /*\r\n Allow direct use of these PDF path-painting operators:\r\n - f fill using nonzero winding number rule\r\n - f* fill using even-odd rule\r\n - B fill then stroke with fill using non-zero winding number rule\r\n - B* fill then stroke with fill using even-odd rule\r\n */\r\n op = style;\r\n break;\r\n }\r\n return op;\r\n });\r\n\r\n /**\r\n * Close the current path. The PDF \"h\" operator.\r\n * @name close\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n var close = (API.close = function() {\r\n out(\"h\");\r\n return this;\r\n });\r\n\r\n /**\r\n * Stroke the path. The PDF \"S\" operator.\r\n * @name stroke\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.stroke = function() {\r\n out(\"S\");\r\n return this;\r\n };\r\n\r\n /**\r\n * Fill the current path using the nonzero winding number rule. If a pattern is provided, the path will be filled\r\n * with this pattern, otherwise with the current fill color. Equivalent to the PDF \"f\" operator.\r\n * @name fill\r\n * @function\r\n * @instance\r\n * @param {PatternData=} pattern If provided the path will be filled with this pattern\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.fill = function(pattern) {\r\n fillWithOptionalPattern(\"f\", pattern);\r\n return this;\r\n };\r\n\r\n /**\r\n * Fill the current path using the even-odd rule. The PDF f* operator.\r\n * @see API.fill\r\n * @name fillEvenOdd\r\n * @function\r\n * @instance\r\n * @param {PatternData=} pattern If provided the path will be filled with this pattern\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.fillEvenOdd = function(pattern) {\r\n fillWithOptionalPattern(\"f*\", pattern);\r\n return this;\r\n };\r\n\r\n /**\r\n * Fill using the nonzero winding number rule and then stroke the current Path. The PDF \"B\" operator.\r\n * @see API.fill\r\n * @name fillStroke\r\n * @function\r\n * @instance\r\n * @param {PatternData=} pattern If provided the path will be stroked with this pattern\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.fillStroke = function(pattern) {\r\n fillWithOptionalPattern(\"B\", pattern);\r\n return this;\r\n };\r\n\r\n /**\r\n * Fill using the even-odd rule and then stroke the current Path. The PDF \"B\" operator.\r\n * @see API.fill\r\n * @name fillStrokeEvenOdd\r\n * @function\r\n * @instance\r\n * @param {PatternData=} pattern If provided the path will be fill-stroked with this pattern\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.fillStrokeEvenOdd = function(pattern) {\r\n fillWithOptionalPattern(\"B*\", pattern);\r\n return this;\r\n };\r\n\r\n var fillWithOptionalPattern = function(style, pattern) {\r\n if (typeof pattern === \"object\") {\r\n fillWithPattern(pattern, style);\r\n } else {\r\n out(style);\r\n }\r\n };\r\n\r\n var putStyle = function(style) {\r\n if (\r\n style === null ||\r\n (apiMode === ApiMode.ADVANCED && style === undefined)\r\n ) {\r\n return;\r\n }\r\n\r\n style = getStyle(style);\r\n\r\n // stroking / filling / both the path\r\n out(style);\r\n };\r\n\r\n function cloneTilingPattern(patternKey, boundingBox, xStep, yStep, matrix) {\r\n var clone = new TilingPattern(\r\n boundingBox || this.boundingBox,\r\n xStep || this.xStep,\r\n yStep || this.yStep,\r\n this.gState,\r\n matrix || this.matrix\r\n );\r\n clone.stream = this.stream;\r\n var key = patternKey + \"$$\" + this.cloneIndex++ + \"$$\";\r\n addPattern(key, clone);\r\n return clone;\r\n }\r\n\r\n var fillWithPattern = function(patternData, style) {\r\n var patternId = patternMap[patternData.key];\r\n var pattern = patterns[patternId];\r\n\r\n if (pattern instanceof ShadingPattern) {\r\n out(\"q\");\r\n\r\n out(clipRuleFromStyle(style));\r\n\r\n if (pattern.gState) {\r\n API.setGState(pattern.gState);\r\n }\r\n out(patternData.matrix.toString() + \" cm\");\r\n out(\"/\" + patternId + \" sh\");\r\n out(\"Q\");\r\n } else if (pattern instanceof TilingPattern) {\r\n // pdf draws patterns starting at the bottom left corner and they are not affected by the global transformation,\r\n // so we must flip them\r\n var matrix = new Matrix(1, 0, 0, -1, 0, getPageHeight());\r\n\r\n if (patternData.matrix) {\r\n matrix = matrix.multiply(patternData.matrix || identityMatrix);\r\n // we cannot apply a matrix to the pattern on use so we must abuse the pattern matrix and create new instances\r\n // for each use\r\n patternId = cloneTilingPattern.call(\r\n pattern,\r\n patternData.key,\r\n patternData.boundingBox,\r\n patternData.xStep,\r\n patternData.yStep,\r\n matrix\r\n ).id;\r\n }\r\n\r\n out(\"q\");\r\n out(\"/Pattern cs\");\r\n out(\"/\" + patternId + \" scn\");\r\n\r\n if (pattern.gState) {\r\n API.setGState(pattern.gState);\r\n }\r\n\r\n out(style);\r\n out(\"Q\");\r\n }\r\n };\r\n\r\n var clipRuleFromStyle = function(style) {\r\n switch (style) {\r\n case \"f\":\r\n case \"F\":\r\n return \"W n\";\r\n case \"f*\":\r\n return \"W* n\";\r\n case \"B\":\r\n return \"W S\";\r\n case \"B*\":\r\n return \"W* S\";\r\n\r\n // these two are for compatibility reasons (in the past, calling any primitive method with a shading pattern\r\n // and \"n\"/\"S\" as style would still fill/fill and stroke the path)\r\n case \"S\":\r\n return \"W S\";\r\n case \"n\":\r\n return \"W n\";\r\n }\r\n };\r\n\r\n /**\r\n * Begin a new subpath by moving the current point to coordinates (x, y). The PDF \"m\" operator.\r\n * @param {number} x\r\n * @param {number} y\r\n * @name moveTo\r\n * @function\r\n * @instance\r\n * @memberof jsPDF#\r\n * @returns {jsPDF}\r\n */\r\n var moveTo = (API.moveTo = function(x, y) {\r\n out(hpf(scale(x)) + \" \" + hpf(transformScaleY(y)) + \" m\");\r\n return this;\r\n });\r\n\r\n /**\r\n * Append a straight line segment from the current point to the point (x, y). The PDF \"l\" operator.\r\n * @param {number} x\r\n * @param {number} y\r\n * @memberof jsPDF#\r\n * @name lineTo\r\n * @function\r\n * @instance\r\n * @memberof jsPDF#\r\n * @returns {jsPDF}\r\n */\r\n var lineTo = (API.lineTo = function(x, y) {\r\n out(hpf(scale(x)) + \" \" + hpf(transformScaleY(y)) + \" l\");\r\n return this;\r\n });\r\n\r\n /**\r\n * Append a cubic Bézier curve to the current path. The curve shall extend from the current point to the point\r\n * (x3, y3), using (x1, y1) and (x2, y2) as Bézier control points. The new current point shall be (x3, x3).\r\n * @param {number} x1\r\n * @param {number} y1\r\n * @param {number} x2\r\n * @param {number} y2\r\n * @param {number} x3\r\n * @param {number} y3\r\n * @memberof jsPDF#\r\n * @name curveTo\r\n * @function\r\n * @instance\r\n * @memberof jsPDF#\r\n * @returns {jsPDF}\r\n */\r\n var curveTo = (API.curveTo = function(x1, y1, x2, y2, x3, y3) {\r\n out(\r\n [\r\n hpf(scale(x1)),\r\n hpf(transformScaleY(y1)),\r\n hpf(scale(x2)),\r\n hpf(transformScaleY(y2)),\r\n hpf(scale(x3)),\r\n hpf(transformScaleY(y3)),\r\n \"c\"\r\n ].join(\" \")\r\n );\r\n return this;\r\n });\r\n\r\n /**\r\n * Draw a line on the current page.\r\n *\r\n * @name line\r\n * @function\r\n * @instance\r\n * @param {number} x1\r\n * @param {number} y1\r\n * @param {number} x2\r\n * @param {number} y2\r\n * @param {string} style A string specifying the painting style or null. Valid styles include: 'S' [default] - stroke, 'F' - fill, and 'DF' (or 'FD') - fill then stroke. A null value postpones setting the style so that a shape may be composed using multiple method calls. The last drawing method call used to define the shape should not have a null style argument. default: 'S'\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.__private__.line = API.line = function(x1, y1, x2, y2, style) {\r\n if (\r\n isNaN(x1) ||\r\n isNaN(y1) ||\r\n isNaN(x2) ||\r\n isNaN(y2) ||\r\n !isValidStyle(style)\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.line\");\r\n }\r\n if (apiMode === ApiMode.COMPAT) {\r\n return this.lines([[x2 - x1, y2 - y1]], x1, y1, [1, 1], style || \"S\");\r\n } else {\r\n return this.lines([[x2 - x1, y2 - y1]], x1, y1, [1, 1]).stroke();\r\n }\r\n };\r\n\r\n /**\r\n * @typedef {Object} PatternData\r\n * {Matrix|undefined} matrix\r\n * {Number|undefined} xStep\r\n * {Number|undefined} yStep\r\n * {Array.|undefined} boundingBox\r\n */\r\n\r\n /**\r\n * Adds series of curves (straight lines or cubic bezier curves) to canvas, starting at `x`, `y` coordinates.\r\n * All data points in `lines` are relative to last line origin.\r\n * `x`, `y` become x1,y1 for first line / curve in the set.\r\n * For lines you only need to specify [x2, y2] - (ending point) vector against x1, y1 starting point.\r\n * For bezier curves you need to specify [x2,y2,x3,y3,x4,y4] - vectors to control points 1, 2, ending point. All vectors are against the start of the curve - x1,y1.\r\n *\r\n * @example .lines([[2,2],[-2,2],[1,1,2,2,3,3],[2,1]], 212,110, [1,1], 'F', false) // line, line, bezier curve, line\r\n * @param {Array} lines Array of *vector* shifts as pairs (lines) or sextets (cubic bezier curves).\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} scale (Defaults to [1.0,1.0]) x,y Scaling factor for all vectors. Elements can be any floating number Sub-one makes drawing smaller. Over-one grows the drawing. Negative flips the direction.\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @param {Boolean=} closed If true, the path is closed with a straight line from the end of the last curve to the starting point.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name lines\r\n */\r\n API.__private__.lines = API.lines = function(\r\n lines,\r\n x,\r\n y,\r\n scale,\r\n style,\r\n closed\r\n ) {\r\n var scalex, scaley, i, l, leg, x2, y2, x3, y3, x4, y4, tmp;\r\n\r\n // Pre-August-2012 the order of arguments was function(x, y, lines, scale, style)\r\n // in effort to make all calls have similar signature like\r\n // function(content, coordinateX, coordinateY , miscellaneous)\r\n // this method had its args flipped.\r\n // code below allows backward compatibility with old arg order.\r\n if (typeof lines === \"number\") {\r\n tmp = y;\r\n y = x;\r\n x = lines;\r\n lines = tmp;\r\n }\r\n\r\n scale = scale || [1, 1];\r\n closed = closed || false;\r\n\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n !Array.isArray(lines) ||\r\n !Array.isArray(scale) ||\r\n !isValidStyle(style) ||\r\n typeof closed !== \"boolean\"\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.lines\");\r\n }\r\n\r\n // starting point\r\n moveTo(x, y);\r\n\r\n scalex = scale[0];\r\n scaley = scale[1];\r\n l = lines.length;\r\n //, x2, y2 // bezier only. In page default measurement \"units\", *after* scaling\r\n //, x3, y3 // bezier only. In page default measurement \"units\", *after* scaling\r\n // ending point for all, lines and bezier. . In page default measurement \"units\", *after* scaling\r\n x4 = x; // last / ending point = starting point for first item.\r\n y4 = y; // last / ending point = starting point for first item.\r\n\r\n for (i = 0; i < l; i++) {\r\n leg = lines[i];\r\n if (leg.length === 2) {\r\n // simple line\r\n x4 = leg[0] * scalex + x4; // here last x4 was prior ending point\r\n y4 = leg[1] * scaley + y4; // here last y4 was prior ending point\r\n lineTo(x4, y4);\r\n } else {\r\n // bezier curve\r\n x2 = leg[0] * scalex + x4; // here last x4 is prior ending point\r\n y2 = leg[1] * scaley + y4; // here last y4 is prior ending point\r\n x3 = leg[2] * scalex + x4; // here last x4 is prior ending point\r\n y3 = leg[3] * scaley + y4; // here last y4 is prior ending point\r\n x4 = leg[4] * scalex + x4; // here last x4 was prior ending point\r\n y4 = leg[5] * scaley + y4; // here last y4 was prior ending point\r\n curveTo(x2, y2, x3, y3, x4, y4);\r\n }\r\n }\r\n\r\n if (closed) {\r\n close();\r\n }\r\n\r\n putStyle(style);\r\n return this;\r\n };\r\n\r\n /**\r\n * Similar to {@link API.lines} but all coordinates are interpreted as absolute coordinates instead of relative.\r\n * @param {Array} lines An array of {op: operator, c: coordinates} object, where op is one of \"m\" (move to), \"l\" (line to)\r\n * \"c\" (cubic bezier curve) and \"h\" (close (sub)path)). c is an array of coordinates. \"m\" and \"l\" expect two, \"c\"\r\n * six and \"h\" an empty array (or undefined).\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name path\r\n */\r\n API.path = function(lines) {\r\n for (var i = 0; i < lines.length; i++) {\r\n var leg = lines[i];\r\n var coords = leg.c;\r\n switch (leg.op) {\r\n case \"m\":\r\n moveTo(coords[0], coords[1]);\r\n break;\r\n case \"l\":\r\n lineTo(coords[0], coords[1]);\r\n break;\r\n case \"c\":\r\n curveTo.apply(this, coords);\r\n break;\r\n case \"h\":\r\n close();\r\n break;\r\n }\r\n }\r\n\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds a rectangle to PDF.\r\n *\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} w Width (in units declared at inception of PDF document)\r\n * @param {number} h Height (in units declared at inception of PDF document)\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name rect\r\n */\r\n API.__private__.rect = API.rect = function(x, y, w, h, style) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h) || !isValidStyle(style)) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.rect\");\r\n }\r\n if (apiMode === ApiMode.COMPAT) {\r\n h = -h;\r\n }\r\n\r\n out(\r\n [\r\n hpf(scale(x)),\r\n hpf(transformScaleY(y)),\r\n hpf(scale(w)),\r\n hpf(scale(h)),\r\n \"re\"\r\n ].join(\" \")\r\n );\r\n\r\n putStyle(style);\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds a triangle to PDF.\r\n *\r\n * @param {number} x1 Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y1 Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} x2 Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y2 Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} x3 Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y3 Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name triangle\r\n */\r\n API.__private__.triangle = API.triangle = function(\r\n x1,\r\n y1,\r\n x2,\r\n y2,\r\n x3,\r\n y3,\r\n style\r\n ) {\r\n if (\r\n isNaN(x1) ||\r\n isNaN(y1) ||\r\n isNaN(x2) ||\r\n isNaN(y2) ||\r\n isNaN(x3) ||\r\n isNaN(y3) ||\r\n !isValidStyle(style)\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.triangle\");\r\n }\r\n this.lines(\r\n [\r\n [x2 - x1, y2 - y1], // vector to point 2\r\n [x3 - x2, y3 - y2], // vector to point 3\r\n [x1 - x3, y1 - y3] // closing vector back to point 1\r\n ],\r\n x1,\r\n y1, // start of path\r\n [1, 1],\r\n style,\r\n true\r\n );\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds a rectangle with rounded corners to PDF.\r\n *\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} w Width (in units declared at inception of PDF document)\r\n * @param {number} h Height (in units declared at inception of PDF document)\r\n * @param {number} rx Radius along x axis (in units declared at inception of PDF document)\r\n * @param {number} ry Radius along y axis (in units declared at inception of PDF document)\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name roundedRect\r\n */\r\n API.__private__.roundedRect = API.roundedRect = function(\r\n x,\r\n y,\r\n w,\r\n h,\r\n rx,\r\n ry,\r\n style\r\n ) {\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n isNaN(w) ||\r\n isNaN(h) ||\r\n isNaN(rx) ||\r\n isNaN(ry) ||\r\n !isValidStyle(style)\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.roundedRect\");\r\n }\r\n var MyArc = (4 / 3) * (Math.SQRT2 - 1);\r\n\r\n rx = Math.min(rx, w * 0.5);\r\n ry = Math.min(ry, h * 0.5);\r\n\r\n this.lines(\r\n [\r\n [w - 2 * rx, 0],\r\n [rx * MyArc, 0, rx, ry - ry * MyArc, rx, ry],\r\n [0, h - 2 * ry],\r\n [0, ry * MyArc, -(rx * MyArc), ry, -rx, ry],\r\n [-w + 2 * rx, 0],\r\n [-(rx * MyArc), 0, -rx, -(ry * MyArc), -rx, -ry],\r\n [0, -h + 2 * ry],\r\n [0, -(ry * MyArc), rx * MyArc, -ry, rx, -ry]\r\n ],\r\n x + rx,\r\n y, // start of path\r\n [1, 1],\r\n style,\r\n true\r\n );\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds an ellipse to PDF.\r\n *\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} rx Radius along x axis (in units declared at inception of PDF document)\r\n * @param {number} ry Radius along y axis (in units declared at inception of PDF document)\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name ellipse\r\n */\r\n API.__private__.ellipse = API.ellipse = function(x, y, rx, ry, style) {\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n isNaN(rx) ||\r\n isNaN(ry) ||\r\n !isValidStyle(style)\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.ellipse\");\r\n }\r\n var lx = (4 / 3) * (Math.SQRT2 - 1) * rx,\r\n ly = (4 / 3) * (Math.SQRT2 - 1) * ry;\r\n\r\n moveTo(x + rx, y);\r\n curveTo(x + rx, y - ly, x + lx, y - ry, x, y - ry);\r\n curveTo(x - lx, y - ry, x - rx, y - ly, x - rx, y);\r\n curveTo(x - rx, y + ly, x - lx, y + ry, x, y + ry);\r\n curveTo(x + lx, y + ry, x + rx, y + ly, x + rx, y);\r\n\r\n putStyle(style);\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds an circle to PDF.\r\n *\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} r Radius (in units declared at inception of PDF document)\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name circle\r\n */\r\n API.__private__.circle = API.circle = function(x, y, r, style) {\r\n if (isNaN(x) || isNaN(y) || isNaN(r) || !isValidStyle(style)) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.circle\");\r\n }\r\n return this.ellipse(x, y, r, r, style);\r\n };\r\n\r\n /**\r\n * Sets text font face, variant for upcoming text elements.\r\n * See output of jsPDF.getFontList() for possible font names, styles.\r\n *\r\n * @param {string} fontName Font name or family. Example: \"times\".\r\n * @param {string} fontStyle Font style or variant. Example: \"italic\".\r\n * @param {number | string} fontWeight Weight of the Font. Example: \"normal\" | 400\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setFont\r\n */\r\n API.setFont = function(fontName, fontStyle, fontWeight) {\r\n if (fontWeight) {\r\n fontStyle = combineFontStyleAndFontWeight(fontStyle, fontWeight);\r\n }\r\n activeFontKey = getFont(fontName, fontStyle, {\r\n disableWarning: false\r\n });\r\n return this;\r\n };\r\n\r\n /**\r\n * Gets text font face, variant for upcoming text elements.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {Object}\r\n * @memberof jsPDF#\r\n * @name getFont\r\n */\r\n var getFontEntry = (API.__private__.getFont = API.getFont = function() {\r\n return fonts[getFont.apply(API, arguments)];\r\n });\r\n\r\n /**\r\n * Returns an object - a tree of fontName to fontStyle relationships available to\r\n * active PDF document.\r\n *\r\n * @public\r\n * @function\r\n * @instance\r\n * @returns {Object} Like {'times':['normal', 'italic', ... ], 'arial':['normal', 'bold', ... ], ... }\r\n * @memberof jsPDF#\r\n * @name getFontList\r\n */\r\n API.__private__.getFontList = API.getFontList = function() {\r\n var list = {},\r\n fontName,\r\n fontStyle;\r\n\r\n for (fontName in fontmap) {\r\n if (fontmap.hasOwnProperty(fontName)) {\r\n list[fontName] = [];\r\n for (fontStyle in fontmap[fontName]) {\r\n if (fontmap[fontName].hasOwnProperty(fontStyle)) {\r\n list[fontName].push(fontStyle);\r\n }\r\n }\r\n }\r\n }\r\n return list;\r\n };\r\n\r\n /**\r\n * Add a custom font to the current instance.\r\n *\r\n * @param {string} postScriptName PDF specification full name for the font.\r\n * @param {string} id PDF-document-instance-specific label assinged to the font.\r\n * @param {string} fontStyle Style of the Font.\r\n * @param {number | string} fontWeight Weight of the Font.\r\n * @param {Object} encoding Encoding_name-to-Font_metrics_object mapping.\r\n * @function\r\n * @instance\r\n * @memberof jsPDF#\r\n * @name addFont\r\n * @returns {string} fontId\r\n */\r\n API.addFont = function(\r\n postScriptName,\r\n fontName,\r\n fontStyle,\r\n fontWeight,\r\n encoding\r\n ) {\r\n var encodingOptions = [\r\n \"StandardEncoding\",\r\n \"MacRomanEncoding\",\r\n \"Identity-H\",\r\n \"WinAnsiEncoding\"\r\n ];\r\n if (arguments[3] && encodingOptions.indexOf(arguments[3]) !== -1) {\r\n //IE 11 fix\r\n encoding = arguments[3];\r\n } else if (arguments[3] && encodingOptions.indexOf(arguments[3]) == -1) {\r\n fontStyle = combineFontStyleAndFontWeight(fontStyle, fontWeight);\r\n }\r\n encoding = encoding || \"Identity-H\";\r\n return addFont.call(this, postScriptName, fontName, fontStyle, encoding);\r\n };\r\n\r\n var lineWidth = options.lineWidth || 0.200025; // 2mm\r\n /**\r\n * Gets the line width, default: 0.200025.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {number} lineWidth\r\n * @memberof jsPDF#\r\n * @name getLineWidth\r\n */\r\n var getLineWidth = (API.__private__.getLineWidth = API.getLineWidth = function() {\r\n return lineWidth;\r\n });\r\n\r\n /**\r\n * Sets line width for upcoming lines.\r\n *\r\n * @param {number} width Line width (in units declared at inception of PDF document).\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineWidth\r\n */\r\n var setLineWidth = (API.__private__.setLineWidth = API.setLineWidth = function(\r\n width\r\n ) {\r\n lineWidth = width;\r\n out(hpf(scale(width)) + \" w\");\r\n return this;\r\n });\r\n\r\n /**\r\n * Sets the dash pattern for upcoming lines.\r\n *\r\n * To reset the settings simply call the method without any parameters.\r\n * @param {Array} dashArray An array containing 0-2 numbers. The first number sets the length of the\r\n * dashes, the second number the length of the gaps. If the second number is missing, the gaps are considered\r\n * to be as long as the dashes. An empty array means solid, unbroken lines.\r\n * @param {number} dashPhase The phase lines start with.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineDashPattern\r\n */\r\n API.__private__.setLineDash = jsPDF.API.setLineDash = jsPDF.API.setLineDashPattern = function(\r\n dashArray,\r\n dashPhase\r\n ) {\r\n dashArray = dashArray || [];\r\n dashPhase = dashPhase || 0;\r\n\r\n if (isNaN(dashPhase) || !Array.isArray(dashArray)) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.setLineDash\");\r\n }\r\n\r\n dashArray = dashArray\r\n .map(function(x) {\r\n return hpf(scale(x));\r\n })\r\n .join(\" \");\r\n dashPhase = hpf(scale(dashPhase));\r\n\r\n out(\"[\" + dashArray + \"] \" + dashPhase + \" d\");\r\n return this;\r\n };\r\n\r\n var lineHeightFactor;\r\n\r\n var getLineHeight = (API.__private__.getLineHeight = API.getLineHeight = function() {\r\n return activeFontSize * lineHeightFactor;\r\n });\r\n\r\n API.__private__.getLineHeight = API.getLineHeight = function() {\r\n return activeFontSize * lineHeightFactor;\r\n };\r\n\r\n /**\r\n * Sets the LineHeightFactor of proportion.\r\n *\r\n * @param {number} value LineHeightFactor value. Default: 1.15.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineHeightFactor\r\n */\r\n var setLineHeightFactor = (API.__private__.setLineHeightFactor = API.setLineHeightFactor = function(\r\n value\r\n ) {\r\n value = value || 1.15;\r\n if (typeof value === \"number\") {\r\n lineHeightFactor = value;\r\n }\r\n return this;\r\n });\r\n\r\n /**\r\n * Gets the LineHeightFactor, default: 1.15.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {number} lineHeightFactor\r\n * @memberof jsPDF#\r\n * @name getLineHeightFactor\r\n */\r\n var getLineHeightFactor = (API.__private__.getLineHeightFactor = API.getLineHeightFactor = function() {\r\n return lineHeightFactor;\r\n });\r\n\r\n setLineHeightFactor(options.lineHeight);\r\n\r\n var getHorizontalCoordinate = (API.__private__.getHorizontalCoordinate = function(\r\n value\r\n ) {\r\n return scale(value);\r\n });\r\n\r\n var getVerticalCoordinate = (API.__private__.getVerticalCoordinate = function(\r\n value\r\n ) {\r\n if (apiMode === ApiMode.ADVANCED) {\r\n return value;\r\n } else {\r\n var pageHeight =\r\n pagesContext[currentPage].mediaBox.topRightY -\r\n pagesContext[currentPage].mediaBox.bottomLeftY;\r\n return pageHeight - scale(value);\r\n }\r\n });\r\n\r\n var getHorizontalCoordinateString = (API.__private__.getHorizontalCoordinateString = API.getHorizontalCoordinateString = function(\r\n value\r\n ) {\r\n return hpf(getHorizontalCoordinate(value));\r\n });\r\n\r\n var getVerticalCoordinateString = (API.__private__.getVerticalCoordinateString = API.getVerticalCoordinateString = function(\r\n value\r\n ) {\r\n return hpf(getVerticalCoordinate(value));\r\n });\r\n\r\n var strokeColor = options.strokeColor || \"0 G\";\r\n\r\n /**\r\n * Gets the stroke color for upcoming elements.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {string} colorAsHex\r\n * @memberof jsPDF#\r\n * @name getDrawColor\r\n */\r\n API.__private__.getStrokeColor = API.getDrawColor = function() {\r\n return decodeColorString(strokeColor);\r\n };\r\n\r\n /**\r\n * Sets the stroke color for upcoming elements.\r\n *\r\n * Depending on the number of arguments given, Gray, RGB, or CMYK\r\n * color space is implied.\r\n *\r\n * When only ch1 is given, \"Gray\" color space is implied and it\r\n * must be a value in the range from 0.00 (solid black) to to 1.00 (white)\r\n * if values are communicated as String types, or in range from 0 (black)\r\n * to 255 (white) if communicated as Number type.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When only ch1,ch2,ch3 are given, \"RGB\" color space is implied and each\r\n * value must be in the range from 0.00 (minimum intensity) to to 1.00\r\n * (max intensity) if values are communicated as String types, or\r\n * from 0 (min intensity) to to 255 (max intensity) if values are communicated\r\n * as Number types.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When ch1,ch2,ch3,ch4 are given, \"CMYK\" color space is implied and each\r\n * value must be a in the range from 0.00 (0% concentration) to to\r\n * 1.00 (100% concentration)\r\n *\r\n * Because JavaScript treats fixed point numbers badly (rounds to\r\n * floating point nearest to binary representation) it is highly advised to\r\n * communicate the fractional numbers as String types, not JavaScript Number type.\r\n *\r\n * @param {Number|String} ch1 Color channel value or {string} ch1 color value in hexadecimal, example: '#FFFFFF'.\r\n * @param {Number} ch2 Color channel value.\r\n * @param {Number} ch3 Color channel value.\r\n * @param {Number} ch4 Color channel value.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setDrawColor\r\n */\r\n API.__private__.setStrokeColor = API.setDrawColor = function(\r\n ch1,\r\n ch2,\r\n ch3,\r\n ch4\r\n ) {\r\n var options = {\r\n ch1: ch1,\r\n ch2: ch2,\r\n ch3: ch3,\r\n ch4: ch4,\r\n pdfColorType: \"draw\",\r\n precision: 2\r\n };\r\n\r\n strokeColor = encodeColorString(options);\r\n out(strokeColor);\r\n return this;\r\n };\r\n\r\n var fillColor = options.fillColor || \"0 g\";\r\n\r\n /**\r\n * Gets the fill color for upcoming elements.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {string} colorAsHex\r\n * @memberof jsPDF#\r\n * @name getFillColor\r\n */\r\n API.__private__.getFillColor = API.getFillColor = function() {\r\n return decodeColorString(fillColor);\r\n };\r\n\r\n /**\r\n * Sets the fill color for upcoming elements.\r\n *\r\n * Depending on the number of arguments given, Gray, RGB, or CMYK\r\n * color space is implied.\r\n *\r\n * When only ch1 is given, \"Gray\" color space is implied and it\r\n * must be a value in the range from 0.00 (solid black) to to 1.00 (white)\r\n * if values are communicated as String types, or in range from 0 (black)\r\n * to 255 (white) if communicated as Number type.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When only ch1,ch2,ch3 are given, \"RGB\" color space is implied and each\r\n * value must be in the range from 0.00 (minimum intensity) to to 1.00\r\n * (max intensity) if values are communicated as String types, or\r\n * from 0 (min intensity) to to 255 (max intensity) if values are communicated\r\n * as Number types.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When ch1,ch2,ch3,ch4 are given, \"CMYK\" color space is implied and each\r\n * value must be a in the range from 0.00 (0% concentration) to to\r\n * 1.00 (100% concentration)\r\n *\r\n * Because JavaScript treats fixed point numbers badly (rounds to\r\n * floating point nearest to binary representation) it is highly advised to\r\n * communicate the fractional numbers as String types, not JavaScript Number type.\r\n *\r\n * @param {Number|String} ch1 Color channel value or {string} ch1 color value in hexadecimal, example: '#FFFFFF'.\r\n * @param {Number} ch2 Color channel value.\r\n * @param {Number} ch3 Color channel value.\r\n * @param {Number} ch4 Color channel value.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setFillColor\r\n */\r\n API.__private__.setFillColor = API.setFillColor = function(\r\n ch1,\r\n ch2,\r\n ch3,\r\n ch4\r\n ) {\r\n var options = {\r\n ch1: ch1,\r\n ch2: ch2,\r\n ch3: ch3,\r\n ch4: ch4,\r\n pdfColorType: \"fill\",\r\n precision: 2\r\n };\r\n\r\n fillColor = encodeColorString(options);\r\n out(fillColor);\r\n return this;\r\n };\r\n\r\n var textColor = options.textColor || \"0 g\";\r\n /**\r\n * Gets the text color for upcoming elements.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {string} colorAsHex\r\n * @memberof jsPDF#\r\n * @name getTextColor\r\n */\r\n var getTextColor = (API.__private__.getTextColor = API.getTextColor = function() {\r\n return decodeColorString(textColor);\r\n });\r\n /**\r\n * Sets the text color for upcoming elements.\r\n *\r\n * Depending on the number of arguments given, Gray, RGB, or CMYK\r\n * color space is implied.\r\n *\r\n * When only ch1 is given, \"Gray\" color space is implied and it\r\n * must be a value in the range from 0.00 (solid black) to to 1.00 (white)\r\n * if values are communicated as String types, or in range from 0 (black)\r\n * to 255 (white) if communicated as Number type.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When only ch1,ch2,ch3 are given, \"RGB\" color space is implied and each\r\n * value must be in the range from 0.00 (minimum intensity) to to 1.00\r\n * (max intensity) if values are communicated as String types, or\r\n * from 0 (min intensity) to to 255 (max intensity) if values are communicated\r\n * as Number types.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When ch1,ch2,ch3,ch4 are given, \"CMYK\" color space is implied and each\r\n * value must be a in the range from 0.00 (0% concentration) to to\r\n * 1.00 (100% concentration)\r\n *\r\n * Because JavaScript treats fixed point numbers badly (rounds to\r\n * floating point nearest to binary representation) it is highly advised to\r\n * communicate the fractional numbers as String types, not JavaScript Number type.\r\n *\r\n * @param {Number|String} ch1 Color channel value or {string} ch1 color value in hexadecimal, example: '#FFFFFF'.\r\n * @param {Number} ch2 Color channel value.\r\n * @param {Number} ch3 Color channel value.\r\n * @param {Number} ch4 Color channel value.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setTextColor\r\n */\r\n API.__private__.setTextColor = API.setTextColor = function(\r\n ch1,\r\n ch2,\r\n ch3,\r\n ch4\r\n ) {\r\n var options = {\r\n ch1: ch1,\r\n ch2: ch2,\r\n ch3: ch3,\r\n ch4: ch4,\r\n pdfColorType: \"text\",\r\n precision: 3\r\n };\r\n textColor = encodeColorString(options);\r\n\r\n return this;\r\n };\r\n\r\n var activeCharSpace = options.charSpace;\r\n\r\n /**\r\n * Get global value of CharSpace.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {number} charSpace\r\n * @memberof jsPDF#\r\n * @name getCharSpace\r\n */\r\n var getCharSpace = (API.__private__.getCharSpace = API.getCharSpace = function() {\r\n return parseFloat(activeCharSpace || 0);\r\n });\r\n\r\n /**\r\n * Set global value of CharSpace.\r\n *\r\n * @param {number} charSpace\r\n * @function\r\n * @instance\r\n * @returns {jsPDF} jsPDF-instance\r\n * @memberof jsPDF#\r\n * @name setCharSpace\r\n */\r\n API.__private__.setCharSpace = API.setCharSpace = function(charSpace) {\r\n if (isNaN(charSpace)) {\r\n throw new Error(\"Invalid argument passed to jsPDF.setCharSpace\");\r\n }\r\n activeCharSpace = charSpace;\r\n return this;\r\n };\r\n\r\n var lineCapID = 0;\r\n /**\r\n * Is an Object providing a mapping from human-readable to\r\n * integer flag values designating the varieties of line cap\r\n * and join styles.\r\n *\r\n * @memberof jsPDF#\r\n * @name CapJoinStyles\r\n */\r\n API.CapJoinStyles = {\r\n 0: 0,\r\n butt: 0,\r\n but: 0,\r\n miter: 0,\r\n 1: 1,\r\n round: 1,\r\n rounded: 1,\r\n circle: 1,\r\n 2: 2,\r\n projecting: 2,\r\n project: 2,\r\n square: 2,\r\n bevel: 2\r\n };\r\n\r\n /**\r\n * Sets the line cap styles.\r\n * See {jsPDF.CapJoinStyles} for variants.\r\n *\r\n * @param {String|Number} style A string or number identifying the type of line cap.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineCap\r\n */\r\n API.__private__.setLineCap = API.setLineCap = function(style) {\r\n var id = API.CapJoinStyles[style];\r\n if (id === undefined) {\r\n throw new Error(\r\n \"Line cap style of '\" +\r\n style +\r\n \"' is not recognized. See or extend .CapJoinStyles property for valid styles\"\r\n );\r\n }\r\n lineCapID = id;\r\n out(id + \" J\");\r\n\r\n return this;\r\n };\r\n\r\n var lineJoinID = 0;\r\n /**\r\n * Sets the line join styles.\r\n * See {jsPDF.CapJoinStyles} for variants.\r\n *\r\n * @param {String|Number} style A string or number identifying the type of line join.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineJoin\r\n */\r\n API.__private__.setLineJoin = API.setLineJoin = function(style) {\r\n var id = API.CapJoinStyles[style];\r\n if (id === undefined) {\r\n throw new Error(\r\n \"Line join style of '\" +\r\n style +\r\n \"' is not recognized. See or extend .CapJoinStyles property for valid styles\"\r\n );\r\n }\r\n lineJoinID = id;\r\n out(id + \" j\");\r\n\r\n return this;\r\n };\r\n\r\n var miterLimit;\r\n /**\r\n * Sets the miterLimit property, which effects the maximum miter length.\r\n *\r\n * @param {number} length The length of the miter\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineMiterLimit\r\n */\r\n API.__private__.setLineMiterLimit = API.__private__.setMiterLimit = API.setLineMiterLimit = API.setMiterLimit = function(\r\n length\r\n ) {\r\n length = length || 0;\r\n if (isNaN(length)) {\r\n throw new Error(\"Invalid argument passed to jsPDF.setLineMiterLimit\");\r\n }\r\n out(hpf(scale(length)) + \" M\");\r\n\r\n return this;\r\n };\r\n\r\n /**\r\n * An object representing a pdf graphics state.\r\n * @class GState\r\n */\r\n\r\n /**\r\n *\r\n * @param parameters A parameter object that contains all properties this graphics state wants to set.\r\n * Supported are: opacity, stroke-opacity\r\n * @constructor\r\n */\r\n API.GState = GState;\r\n\r\n /**\r\n * Sets a either previously added {@link GState} (via {@link addGState}) or a new {@link GState}.\r\n * @param {String|GState} gState If type is string, a previously added GState is used, if type is GState\r\n * it will be added before use.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setGState\r\n */\r\n API.setGState = function(gState) {\r\n if (typeof gState === \"string\") {\r\n gState = gStates[gStatesMap[gState]];\r\n } else {\r\n gState = addGState(null, gState);\r\n }\r\n\r\n if (!gState.equals(activeGState)) {\r\n out(\"/\" + gState.id + \" gs\");\r\n activeGState = gState;\r\n }\r\n };\r\n\r\n /**\r\n * Adds a new Graphics State. Duplicates are automatically eliminated.\r\n * @param {String} key Might also be null, if no later reference to this gState is needed\r\n * @param {Object} gState The gState object\r\n */\r\n var addGState = function(key, gState) {\r\n // only add it if it is not already present (the keys provided by the user must be unique!)\r\n if (key && gStatesMap[key]) return;\r\n var duplicate = false;\r\n for (var s in gStates) {\r\n if (gStates.hasOwnProperty(s)) {\r\n if (gStates[s].equals(gState)) {\r\n duplicate = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n if (duplicate) {\r\n gState = gStates[s];\r\n } else {\r\n var gStateKey = \"GS\" + (Object.keys(gStates).length + 1).toString(10);\r\n gStates[gStateKey] = gState;\r\n gState.id = gStateKey;\r\n }\r\n\r\n // several user keys may point to the same GState object\r\n key && (gStatesMap[key] = gState.id);\r\n\r\n events.publish(\"addGState\", gState);\r\n\r\n return gState;\r\n };\r\n\r\n /**\r\n * Adds a new {@link GState} for later use. See {@link setGState}.\r\n * @param {String} key\r\n * @param {GState} gState\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n *\r\n * @memberof jsPDF#\r\n * @name addGState\r\n */\r\n API.addGState = function(key, gState) {\r\n addGState(key, gState);\r\n return this;\r\n };\r\n\r\n /**\r\n * Saves the current graphics state (\"pushes it on the stack\"). It can be restored by {@link restoreGraphicsState}\r\n * later. Here, the general pdf graphics state is meant, also including the current transformation matrix,\r\n * fill and stroke colors etc.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name saveGraphicsState\r\n */\r\n API.saveGraphicsState = function() {\r\n out(\"q\");\r\n // as we cannot set font key and size independently we must keep track of both\r\n fontStateStack.push({\r\n key: activeFontKey,\r\n size: activeFontSize,\r\n color: textColor\r\n });\r\n return this;\r\n };\r\n\r\n /**\r\n * Restores a previously saved graphics state saved by {@link saveGraphicsState} (\"pops the stack\").\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name restoreGraphicsState\r\n */\r\n API.restoreGraphicsState = function() {\r\n out(\"Q\");\r\n\r\n // restore previous font state\r\n var fontState = fontStateStack.pop();\r\n activeFontKey = fontState.key;\r\n activeFontSize = fontState.size;\r\n textColor = fontState.color;\r\n\r\n activeGState = null;\r\n\r\n return this;\r\n };\r\n\r\n /**\r\n * Appends this matrix to the left of all previously applied matrices.\r\n *\r\n * @param {Matrix} matrix\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setCurrentTransformationMatrix\r\n */\r\n API.setCurrentTransformationMatrix = function(matrix) {\r\n out(matrix.toString() + \" cm\");\r\n return this;\r\n };\r\n\r\n /**\r\n * Inserts a debug comment into the generated pdf.\r\n * @function\r\n * @instance\r\n * @param {String} text\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name comment\r\n */\r\n API.comment = function(text) {\r\n out(\"#\" + text);\r\n return this;\r\n };\r\n\r\n /**\r\n * Point\r\n */\r\n var Point = function(x, y) {\r\n var _x = x || 0;\r\n Object.defineProperty(this, \"x\", {\r\n enumerable: true,\r\n get: function() {\r\n return _x;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _x = parseFloat(value);\r\n }\r\n }\r\n });\r\n\r\n var _y = y || 0;\r\n Object.defineProperty(this, \"y\", {\r\n enumerable: true,\r\n get: function() {\r\n return _y;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _y = parseFloat(value);\r\n }\r\n }\r\n });\r\n\r\n var _type = \"pt\";\r\n Object.defineProperty(this, \"type\", {\r\n enumerable: true,\r\n get: function() {\r\n return _type;\r\n },\r\n set: function(value) {\r\n _type = value.toString();\r\n }\r\n });\r\n return this;\r\n };\r\n\r\n /**\r\n * Rectangle\r\n */\r\n var Rectangle = function(x, y, w, h) {\r\n Point.call(this, x, y);\r\n this.type = \"rect\";\r\n\r\n var _w = w || 0;\r\n Object.defineProperty(this, \"w\", {\r\n enumerable: true,\r\n get: function() {\r\n return _w;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _w = parseFloat(value);\r\n }\r\n }\r\n });\r\n\r\n var _h = h || 0;\r\n Object.defineProperty(this, \"h\", {\r\n enumerable: true,\r\n get: function() {\r\n return _h;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _h = parseFloat(value);\r\n }\r\n }\r\n });\r\n\r\n return this;\r\n };\r\n\r\n /**\r\n * FormObject/RenderTarget\r\n */\r\n\r\n var RenderTarget = function() {\r\n this.page = page;\r\n this.currentPage = currentPage;\r\n this.pages = pages.slice(0);\r\n this.pagesContext = pagesContext.slice(0);\r\n this.x = pageX;\r\n this.y = pageY;\r\n this.matrix = pageMatrix;\r\n this.width = getPageWidth(currentPage);\r\n this.height = getPageHeight(currentPage);\r\n this.outputDestination = outputDestination;\r\n\r\n this.id = \"\"; // set by endFormObject()\r\n this.objectNumber = -1; // will be set by putXObject()\r\n };\r\n\r\n RenderTarget.prototype.restore = function() {\r\n page = this.page;\r\n currentPage = this.currentPage;\r\n pagesContext = this.pagesContext;\r\n pages = this.pages;\r\n pageX = this.x;\r\n pageY = this.y;\r\n pageMatrix = this.matrix;\r\n setPageWidth(currentPage, this.width);\r\n setPageHeight(currentPage, this.height);\r\n outputDestination = this.outputDestination;\r\n };\r\n\r\n var beginNewRenderTarget = function(x, y, width, height, matrix) {\r\n // save current state\r\n renderTargetStack.push(new RenderTarget());\r\n\r\n // clear pages\r\n page = currentPage = 0;\r\n pages = [];\r\n pageX = x;\r\n pageY = y;\r\n\r\n pageMatrix = matrix;\r\n\r\n beginPage([width, height]);\r\n };\r\n\r\n var endFormObject = function(key) {\r\n // only add it if it is not already present (the keys provided by the user must be unique!)\r\n if (renderTargetMap[key]) {\r\n renderTargetStack.pop().restore();\r\n return;\r\n }\r\n\r\n // save the created xObject\r\n var newXObject = new RenderTarget();\r\n\r\n var xObjectId = \"Xo\" + (Object.keys(renderTargets).length + 1).toString(10);\r\n newXObject.id = xObjectId;\r\n\r\n renderTargetMap[key] = xObjectId;\r\n renderTargets[xObjectId] = newXObject;\r\n\r\n events.publish(\"addFormObject\", newXObject);\r\n\r\n // restore state from stack\r\n renderTargetStack.pop().restore();\r\n };\r\n\r\n /**\r\n * Starts a new pdf form object, which means that all consequent draw calls target a new independent object\r\n * until {@link endFormObject} is called. The created object can be referenced and drawn later using\r\n * {@link doFormObject}. Nested form objects are possible.\r\n * x, y, width, height set the bounding box that is used to clip the content.\r\n *\r\n * @param {number} x\r\n * @param {number} y\r\n * @param {number} width\r\n * @param {number} height\r\n * @param {Matrix} matrix The matrix that will be applied to convert the form objects coordinate system to\r\n * the parent's.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name beginFormObject\r\n */\r\n API.beginFormObject = function(x, y, width, height, matrix) {\r\n // The user can set the output target to a new form object. Nested form objects are possible.\r\n // Currently, they use the resource dictionary of the surrounding stream. This should be changed, as\r\n // the PDF-Spec states:\r\n // \"In PDF 1.2 and later versions, form XObjects may be independent of the content streams in which\r\n // they appear, and this is strongly recommended although not requiredIn PDF 1.2 and later versions,\r\n // form XObjects may be independent of the content streams in which they appear, and this is strongly\r\n // recommended although not required\"\r\n beginNewRenderTarget(x, y, width, height, matrix);\r\n return this;\r\n };\r\n\r\n /**\r\n * Completes and saves the form object.\r\n * @param {String} key The key by which this form object can be referenced.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name endFormObject\r\n */\r\n API.endFormObject = function(key) {\r\n endFormObject(key);\r\n return this;\r\n };\r\n\r\n /**\r\n * Draws the specified form object by referencing to the respective pdf XObject created with\r\n * {@link API.beginFormObject} and {@link endFormObject}.\r\n * The location is determined by matrix.\r\n *\r\n * @param {String} key The key to the form object.\r\n * @param {Matrix} matrix The matrix applied before drawing the form object.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name doFormObject\r\n */\r\n API.doFormObject = function(key, matrix) {\r\n var xObject = renderTargets[renderTargetMap[key]];\r\n out(\"q\");\r\n out(matrix.toString() + \" cm\");\r\n out(\"/\" + xObject.id + \" Do\");\r\n out(\"Q\");\r\n return this;\r\n };\r\n\r\n /**\r\n * Returns the form object specified by key.\r\n * @param key {String}\r\n * @returns {{x: number, y: number, width: number, height: number, matrix: Matrix}}\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name getFormObject\r\n */\r\n API.getFormObject = function(key) {\r\n var xObject = renderTargets[renderTargetMap[key]];\r\n return {\r\n x: xObject.x,\r\n y: xObject.y,\r\n width: xObject.width,\r\n height: xObject.height,\r\n matrix: xObject.matrix\r\n };\r\n };\r\n\r\n /**\r\n * Saves as PDF document. An alias of jsPDF.output('save', 'filename.pdf').\r\n * Uses FileSaver.js-method saveAs.\r\n *\r\n * @memberof jsPDF#\r\n * @name save\r\n * @function\r\n * @instance\r\n * @param {string} filename The filename including extension.\r\n * @param {Object} options An Object with additional options, possible options: 'returnPromise'.\r\n * @returns {jsPDF|Promise} jsPDF-instance */\r\n API.save = function(filename, options) {\r\n filename = filename || \"generated.pdf\";\r\n\r\n options = options || {};\r\n options.returnPromise = options.returnPromise || false;\r\n\r\n if (options.returnPromise === false) {\r\n saveAs(getBlob(buildDocument()), filename);\r\n if (typeof saveAs.unload === \"function\") {\r\n if (globalObject.setTimeout) {\r\n setTimeout(saveAs.unload, 911);\r\n }\r\n }\r\n return this;\r\n } else {\r\n return new Promise(function(resolve, reject) {\r\n try {\r\n var result = saveAs(getBlob(buildDocument()), filename);\r\n if (typeof saveAs.unload === \"function\") {\r\n if (globalObject.setTimeout) {\r\n setTimeout(saveAs.unload, 911);\r\n }\r\n }\r\n resolve(result);\r\n } catch (e) {\r\n reject(e.message);\r\n }\r\n });\r\n }\r\n\r\n };\r\n\r\n // applying plugins (more methods) ON TOP of built-in API.\r\n // this is intentional as we allow plugins to override\r\n // built-ins\r\n for (var plugin in jsPDF.API) {\r\n if (jsPDF.API.hasOwnProperty(plugin)) {\r\n if (plugin === \"events\" && jsPDF.API.events.length) {\r\n (function(events, newEvents) {\r\n // jsPDF.API.events is a JS Array of Arrays\r\n // where each Array is a pair of event name, handler\r\n // Events were added by plugins to the jsPDF instantiator.\r\n // These are always added to the new instance and some ran\r\n // during instantiation.\r\n var eventname, handler_and_args, i;\r\n\r\n for (i = newEvents.length - 1; i !== -1; i--) {\r\n // subscribe takes 3 args: 'topic', function, runonce_flag\r\n // if undefined, runonce is false.\r\n // users can attach callback directly,\r\n // or they can attach an array with [callback, runonce_flag]\r\n // that's what the \"apply\" magic is for below.\r\n eventname = newEvents[i][0];\r\n handler_and_args = newEvents[i][1];\r\n events.subscribe.apply(\r\n events,\r\n [eventname].concat(\r\n typeof handler_and_args === \"function\"\r\n ? [handler_and_args]\r\n : handler_and_args\r\n )\r\n );\r\n }\r\n })(events, jsPDF.API.events);\r\n } else {\r\n API[plugin] = jsPDF.API[plugin];\r\n }\r\n }\r\n }\r\n\r\n var getPageWidth = (API.getPageWidth = function(pageNumber) {\r\n pageNumber = pageNumber || currentPage;\r\n return (\r\n (pagesContext[pageNumber].mediaBox.topRightX -\r\n pagesContext[pageNumber].mediaBox.bottomLeftX) /\r\n scaleFactor\r\n );\r\n });\r\n\r\n var setPageWidth = (API.setPageWidth = function(pageNumber, value) {\r\n pagesContext[pageNumber].mediaBox.topRightX =\r\n value * scaleFactor + pagesContext[pageNumber].mediaBox.bottomLeftX;\r\n });\r\n\r\n var getPageHeight = (API.getPageHeight = function(pageNumber) {\r\n pageNumber = pageNumber || currentPage;\r\n return (\r\n (pagesContext[pageNumber].mediaBox.topRightY -\r\n pagesContext[pageNumber].mediaBox.bottomLeftY) /\r\n scaleFactor\r\n );\r\n });\r\n\r\n var setPageHeight = (API.setPageHeight = function(pageNumber, value) {\r\n pagesContext[pageNumber].mediaBox.topRightY =\r\n value * scaleFactor + pagesContext[pageNumber].mediaBox.bottomLeftY;\r\n });\r\n\r\n /**\r\n * Object exposing internal API to plugins\r\n * @public\r\n * @ignore\r\n */\r\n API.internal = {\r\n pdfEscape: pdfEscape,\r\n getStyle: getStyle,\r\n getFont: getFontEntry,\r\n getFontSize: getFontSize,\r\n getCharSpace: getCharSpace,\r\n getTextColor: getTextColor,\r\n getLineHeight: getLineHeight,\r\n getLineHeightFactor: getLineHeightFactor,\r\n getLineWidth: getLineWidth,\r\n write: write,\r\n getHorizontalCoordinate: getHorizontalCoordinate,\r\n getVerticalCoordinate: getVerticalCoordinate,\r\n getCoordinateString: getHorizontalCoordinateString,\r\n getVerticalCoordinateString: getVerticalCoordinateString,\r\n collections: {},\r\n newObject: newObject,\r\n newAdditionalObject: newAdditionalObject,\r\n newObjectDeferred: newObjectDeferred,\r\n newObjectDeferredBegin: newObjectDeferredBegin,\r\n getFilters: getFilters,\r\n putStream: putStream,\r\n events: events,\r\n scaleFactor: scaleFactor,\r\n pageSize: {\r\n getWidth: function() {\r\n return getPageWidth(currentPage);\r\n },\r\n setWidth: function(value) {\r\n setPageWidth(currentPage, value);\r\n },\r\n getHeight: function() {\r\n return getPageHeight(currentPage);\r\n },\r\n setHeight: function(value) {\r\n setPageHeight(currentPage, value);\r\n }\r\n },\r\n encryptionOptions: encryptionOptions,\r\n encryption: encryption,\r\n getEncryptor: getEncryptor,\r\n output: output,\r\n getNumberOfPages: getNumberOfPages,\r\n pages: pages,\r\n out: out,\r\n f2: f2,\r\n f3: f3,\r\n getPageInfo: getPageInfo,\r\n getPageInfoByObjId: getPageInfoByObjId,\r\n getCurrentPageInfo: getCurrentPageInfo,\r\n getPDFVersion: getPdfVersion,\r\n Point: Point,\r\n Rectangle: Rectangle,\r\n Matrix: Matrix,\r\n hasHotfix: hasHotfix //Expose the hasHotfix check so plugins can also check them.\r\n };\r\n\r\n Object.defineProperty(API.internal.pageSize, \"width\", {\r\n get: function() {\r\n return getPageWidth(currentPage);\r\n },\r\n set: function(value) {\r\n setPageWidth(currentPage, value);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(API.internal.pageSize, \"height\", {\r\n get: function() {\r\n return getPageHeight(currentPage);\r\n },\r\n set: function(value) {\r\n setPageHeight(currentPage, value);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n\r\n //////////////////////////////////////////////////////\r\n // continuing initialization of jsPDF Document object\r\n //////////////////////////////////////////////////////\r\n // Add the first page automatically\r\n addFonts.call(API, standardFonts);\r\n activeFontKey = \"F1\";\r\n _addPage(format, orientation);\r\n\r\n events.publish(\"initialized\");\r\n return API;\r\n}\r\n\r\n/**\r\n * jsPDF.API is a STATIC property of jsPDF class.\r\n * jsPDF.API is an object you can add methods and properties to.\r\n * The methods / properties you add will show up in new jsPDF objects.\r\n *\r\n * One property is prepopulated. It is the 'events' Object. Plugin authors can add topics,\r\n * callbacks to this object. These will be reassigned to all new instances of jsPDF.\r\n *\r\n * @static\r\n * @public\r\n * @memberof jsPDF#\r\n * @name API\r\n *\r\n * @example\r\n * jsPDF.API.mymethod = function(){\r\n * // 'this' will be ref to internal API object. see jsPDF source\r\n * // , so you can refer to built-in methods like so:\r\n * // this.line(....)\r\n * // this.text(....)\r\n * }\r\n * var pdfdoc = new jsPDF()\r\n * pdfdoc.mymethod() // <- !!!!!!\r\n */\r\njsPDF.API = {\r\n events: []\r\n};\r\n/**\r\n * The version of jsPDF.\r\n * @name version\r\n * @type {string}\r\n * @memberof jsPDF#\r\n */\r\njsPDF.version = \"0.0.0\";\r\n\r\nexport { jsPDF, ShadingPattern, TilingPattern, GState };\r\nexport default jsPDF;\r\n","/* global jsPDF */\n/**\n * @license\n * Copyright (c) 2016 Alexander Weidt,\n * https://github.com/BiggA94\n *\n * Licensed under the MIT License. http://opensource.org/licenses/mit-license\n */\n\n/**\n * jsPDF AcroForm Plugin\n * @module AcroForm\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\nvar jsPDFAPI = jsPDF.API;\nvar scaleFactor = 1;\n\nvar pdfEscape = function(value) {\n return value\n .replace(/\\\\/g, \"\\\\\\\\\")\n .replace(/\\(/g, \"\\\\(\")\n .replace(/\\)/g, \"\\\\)\");\n};\nvar pdfUnescape = function(value) {\n return value\n .replace(/\\\\\\\\/g, \"\\\\\")\n .replace(/\\\\\\(/g, \"(\")\n .replace(/\\\\\\)/g, \")\");\n};\n\nvar f2 = function(number) {\n return number.toFixed(2); // Ie, %.2f\n};\n\nvar f5 = function(number) {\n return number.toFixed(5); // Ie, %.2f\n};\n\njsPDFAPI.__acroform__ = {};\nvar inherit = function(child, parent) {\n child.prototype = Object.create(parent.prototype);\n child.prototype.constructor = child;\n};\n\nvar scale = function(x) {\n return x * scaleFactor;\n};\n\nvar createFormXObject = function(formObject) {\n var xobj = new AcroFormXObject();\n var height = AcroFormAppearance.internal.getHeight(formObject) || 0;\n var width = AcroFormAppearance.internal.getWidth(formObject) || 0;\n xobj.BBox = [0, 0, Number(f2(width)), Number(f2(height))];\n return xobj;\n};\n\n/**\n * Bit-Operations\n */\nvar setBit = (jsPDFAPI.__acroform__.setBit = function(number, bitPosition) {\n number = number || 0;\n bitPosition = bitPosition || 0;\n\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.setBit\"\n );\n }\n var bitMask = 1 << bitPosition;\n\n number |= bitMask;\n\n return number;\n});\n\nvar clearBit = (jsPDFAPI.__acroform__.clearBit = function(number, bitPosition) {\n number = number || 0;\n bitPosition = bitPosition || 0;\n\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.clearBit\"\n );\n }\n var bitMask = 1 << bitPosition;\n\n number &= ~bitMask;\n\n return number;\n});\n\nvar getBit = (jsPDFAPI.__acroform__.getBit = function(number, bitPosition) {\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.getBit\"\n );\n }\n return (number & (1 << bitPosition)) === 0 ? 0 : 1;\n});\n\n/*\n * Ff starts counting the bit position at 1 and not like javascript at 0\n */\nvar getBitForPdf = (jsPDFAPI.__acroform__.getBitForPdf = function(\n number,\n bitPosition\n) {\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.getBitForPdf\"\n );\n }\n return getBit(number, bitPosition - 1);\n});\n\nvar setBitForPdf = (jsPDFAPI.__acroform__.setBitForPdf = function(\n number,\n bitPosition\n) {\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.setBitForPdf\"\n );\n }\n return setBit(number, bitPosition - 1);\n});\n\nvar clearBitForPdf = (jsPDFAPI.__acroform__.clearBitForPdf = function(\n number,\n bitPosition\n) {\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.clearBitForPdf\"\n );\n }\n return clearBit(number, bitPosition - 1);\n});\n\nvar calculateCoordinates = (jsPDFAPI.__acroform__.calculateCoordinates = function(\n args,\n scope\n) {\n var getHorizontalCoordinate = scope.internal.getHorizontalCoordinate;\n var getVerticalCoordinate = scope.internal.getVerticalCoordinate;\n var x = args[0];\n var y = args[1];\n var w = args[2];\n var h = args[3];\n\n var coordinates = {};\n\n coordinates.lowerLeft_X = getHorizontalCoordinate(x) || 0;\n coordinates.lowerLeft_Y = getVerticalCoordinate(y + h) || 0;\n coordinates.upperRight_X = getHorizontalCoordinate(x + w) || 0;\n coordinates.upperRight_Y = getVerticalCoordinate(y) || 0;\n\n return [\n Number(f2(coordinates.lowerLeft_X)),\n Number(f2(coordinates.lowerLeft_Y)),\n Number(f2(coordinates.upperRight_X)),\n Number(f2(coordinates.upperRight_Y))\n ];\n});\n\nvar calculateAppearanceStream = function(formObject) {\n if (formObject.appearanceStreamContent) {\n return formObject.appearanceStreamContent;\n }\n\n if (!formObject.V && !formObject.DV) {\n return;\n }\n\n // else calculate it\n\n var stream = [];\n var text = formObject._V || formObject.DV;\n var calcRes = calculateX(formObject, text);\n var fontKey = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n ).id;\n\n //PDF 32000-1:2008, page 444\n stream.push(\"/Tx BMC\");\n stream.push(\"q\");\n stream.push(\"BT\"); // Begin Text\n stream.push(formObject.scope.__private__.encodeColorString(formObject.color));\n stream.push(\"/\" + fontKey + \" \" + f2(calcRes.fontSize) + \" Tf\");\n stream.push(\"1 0 0 1 0 0 Tm\"); // Transformation Matrix\n stream.push(calcRes.text);\n stream.push(\"ET\"); // End Text\n stream.push(\"Q\");\n stream.push(\"EMC\");\n\n var appearanceStreamContent = createFormXObject(formObject);\n appearanceStreamContent.scope = formObject.scope;\n appearanceStreamContent.stream = stream.join(\"\\n\");\n return appearanceStreamContent;\n};\n\nvar calculateX = function(formObject, text) {\n var maxFontSize =\n formObject.fontSize === 0 ? formObject.maxFontSize : formObject.fontSize;\n var returnValue = {\n text: \"\",\n fontSize: \"\"\n };\n // Remove Brackets\n text = text.substr(0, 1) == \"(\" ? text.substr(1) : text;\n text =\n text.substr(text.length - 1) == \")\"\n ? text.substr(0, text.length - 1)\n : text;\n // split into array of words\n var textSplit = text.split(\" \");\n if (formObject.multiline) {\n textSplit = textSplit.map(word => word.split(\"\\n\"));\n } else {\n textSplit = textSplit.map(word => [word]);\n }\n\n var fontSize = maxFontSize; // The Starting fontSize (The Maximum)\n var lineSpacing = 2;\n var borderPadding = 2;\n\n var height = AcroFormAppearance.internal.getHeight(formObject) || 0;\n height = height < 0 ? -height : height;\n var width = AcroFormAppearance.internal.getWidth(formObject) || 0;\n width = width < 0 ? -width : width;\n\n var isSmallerThanWidth = function(i, lastLine, fontSize) {\n if (i + 1 < textSplit.length) {\n var tmp = lastLine + \" \" + textSplit[i + 1][0];\n var TextWidth = calculateFontSpace(tmp, formObject, fontSize).width;\n var FieldWidth = width - 2 * borderPadding;\n return TextWidth <= FieldWidth;\n } else {\n return false;\n }\n };\n\n fontSize++;\n FontSize: while (fontSize > 0) {\n text = \"\";\n fontSize--;\n var textHeight = calculateFontSpace(\"3\", formObject, fontSize).height;\n var startY = formObject.multiline\n ? height - fontSize\n : (height - textHeight) / 2;\n startY += lineSpacing;\n var startX;\n\n var lastY = startY;\n var firstWordInLine = 0,\n lastWordInLine = 0;\n var lastLength;\n var currWord = 0;\n\n if (fontSize <= 0) {\n // In case, the Text doesn't fit at all\n fontSize = 12;\n text = \"(...) Tj\\n\";\n text +=\n \"% Width of Text: \" +\n calculateFontSpace(text, formObject, fontSize).width +\n \", FieldWidth:\" +\n width +\n \"\\n\";\n break;\n }\n\n var lastLine = \"\";\n var lineCount = 0;\n Line: for (var i = 0; i < textSplit.length; i++) {\n if (textSplit.hasOwnProperty(i)) {\n let isWithNewLine = false;\n if (textSplit[i].length !== 1 && currWord !== textSplit[i].length - 1) {\n if (\n (textHeight + lineSpacing) * (lineCount + 2) + lineSpacing >\n height\n ) {\n continue FontSize;\n }\n\n lastLine += textSplit[i][currWord];\n isWithNewLine = true;\n lastWordInLine = i;\n i--;\n } else {\n lastLine += textSplit[i][currWord] + \" \";\n lastLine =\n lastLine.substr(lastLine.length - 1) == \" \"\n ? lastLine.substr(0, lastLine.length - 1)\n : lastLine;\n var key = parseInt(i);\n var nextLineIsSmaller = isSmallerThanWidth(key, lastLine, fontSize);\n var isLastWord = i >= textSplit.length - 1;\n\n if (nextLineIsSmaller && !isLastWord) {\n lastLine += \" \";\n currWord = 0;\n continue; // Line\n } else if (!nextLineIsSmaller && !isLastWord) {\n if (!formObject.multiline) {\n continue FontSize;\n } else {\n if (\n (textHeight + lineSpacing) * (lineCount + 2) + lineSpacing >\n height\n ) {\n // If the Text is higher than the\n // FieldObject\n continue FontSize;\n }\n lastWordInLine = key;\n // go on\n }\n } else if (isLastWord) {\n lastWordInLine = key;\n } else {\n if (\n formObject.multiline &&\n (textHeight + lineSpacing) * (lineCount + 2) + lineSpacing >\n height\n ) {\n // If the Text is higher than the FieldObject\n continue FontSize;\n }\n }\n }\n // Remove last blank\n\n var line = \"\";\n\n for (var x = firstWordInLine; x <= lastWordInLine; x++) {\n var currLine = textSplit[x];\n if (formObject.multiline) {\n if (x === lastWordInLine) {\n line += currLine[currWord] + \" \";\n currWord = (currWord + 1) % currLine.length;\n continue;\n }\n if (x === firstWordInLine) {\n line += currLine[currLine.length - 1] + \" \";\n continue;\n }\n }\n line += currLine[0] + \" \";\n }\n\n // Remove last blank\n line =\n line.substr(line.length - 1) == \" \"\n ? line.substr(0, line.length - 1)\n : line;\n // lastLength -= blankSpace.width;\n lastLength = calculateFontSpace(line, formObject, fontSize).width;\n\n // Calculate startX\n switch (formObject.textAlign) {\n case \"right\":\n startX = width - lastLength - borderPadding;\n break;\n case \"center\":\n startX = (width - lastLength) / 2;\n break;\n case \"left\":\n default:\n startX = borderPadding;\n break;\n }\n text += f2(startX) + \" \" + f2(lastY) + \" Td\\n\";\n text += \"(\" + pdfEscape(line) + \") Tj\\n\";\n // reset X in PDF\n text += -f2(startX) + \" 0 Td\\n\";\n\n // After a Line, adjust y position\n lastY = -(fontSize + lineSpacing);\n\n // Reset for next iteration step\n lastLength = 0;\n firstWordInLine = isWithNewLine ? lastWordInLine : lastWordInLine + 1;\n lineCount++;\n\n lastLine = \"\";\n continue Line;\n }\n }\n break;\n }\n\n returnValue.text = text;\n returnValue.fontSize = fontSize;\n\n return returnValue;\n};\n\n/**\n * Small workaround for calculating the TextMetric approximately.\n *\n * @param text\n * @param fontsize\n * @returns {TextMetrics} (Has Height and Width)\n */\nvar calculateFontSpace = function(text, formObject, fontSize) {\n var font = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n );\n var width =\n formObject.scope.getStringUnitWidth(text, {\n font: font,\n fontSize: parseFloat(fontSize),\n charSpace: 0\n }) * parseFloat(fontSize);\n var height =\n formObject.scope.getStringUnitWidth(\"3\", {\n font: font,\n fontSize: parseFloat(fontSize),\n charSpace: 0\n }) *\n parseFloat(fontSize) *\n 1.5;\n return { height: height, width: width };\n};\n\nvar acroformPluginTemplate = {\n fields: [],\n xForms: [],\n /**\n * acroFormDictionaryRoot contains information about the AcroForm\n * Dictionary 0: The Event-Token, the AcroFormDictionaryCallback has\n * 1: The Object ID of the Root\n */\n acroFormDictionaryRoot: null,\n /**\n * After the PDF gets evaluated, the reference to the root has to be\n * reset, this indicates, whether the root has already been printed\n * out\n */\n printedOut: false,\n internal: null,\n isInitialized: false\n};\n\nvar annotReferenceCallback = function(scope) {\n //set objId to undefined and force it to get a new objId on buildDocument\n scope.internal.acroformPlugin.acroFormDictionaryRoot.objId = undefined;\n var fields = scope.internal.acroformPlugin.acroFormDictionaryRoot.Fields;\n for (var i in fields) {\n if (fields.hasOwnProperty(i)) {\n var formObject = fields[i];\n //set objId to undefined and force it to get a new objId on buildDocument\n formObject.objId = undefined;\n // add Annot Reference!\n if (formObject.hasAnnotation) {\n // If theres an Annotation Widget in the Form Object, put the\n // Reference in the /Annot array\n createAnnotationReference(formObject, scope);\n }\n }\n }\n};\n\nvar putForm = function(formObject) {\n if (formObject.scope.internal.acroformPlugin.printedOut) {\n formObject.scope.internal.acroformPlugin.printedOut = false;\n formObject.scope.internal.acroformPlugin.acroFormDictionaryRoot = null;\n }\n formObject.scope.internal.acroformPlugin.acroFormDictionaryRoot.Fields.push(\n formObject\n );\n};\n/**\n * Create the Reference to the widgetAnnotation, so that it gets referenced\n * in the Annot[] int the+ (Requires the Annotation Plugin)\n */\nvar createAnnotationReference = function(object, scope) {\n var options = {\n type: \"reference\",\n object: object\n };\n var findEntry = function(entry) {\n return entry.type === options.type && entry.object === options.object;\n };\n if (\n scope.internal\n .getPageInfo(object.page)\n .pageContext.annotations.find(findEntry) === undefined\n ) {\n scope.internal\n .getPageInfo(object.page)\n .pageContext.annotations.push(options);\n }\n};\n\n// Callbacks\n\nvar putCatalogCallback = function(scope) {\n // Put reference to AcroForm to DocumentCatalog\n if (\n typeof scope.internal.acroformPlugin.acroFormDictionaryRoot !== \"undefined\"\n ) {\n // for safety, shouldn't normally be the case\n scope.internal.write(\n \"/AcroForm \" +\n scope.internal.acroformPlugin.acroFormDictionaryRoot.objId +\n \" \" +\n 0 +\n \" R\"\n );\n } else {\n throw new Error(\"putCatalogCallback: Root missing.\");\n }\n};\n\n/**\n * Adds /Acroform X 0 R to Document Catalog, and creates the AcroForm\n * Dictionary\n */\nvar AcroFormDictionaryCallback = function(scope) {\n // Remove event\n scope.internal.events.unsubscribe(\n scope.internal.acroformPlugin.acroFormDictionaryRoot._eventID\n );\n delete scope.internal.acroformPlugin.acroFormDictionaryRoot._eventID;\n scope.internal.acroformPlugin.printedOut = true;\n};\n\n/**\n * Creates the single Fields and writes them into the Document\n *\n * If fieldArray is set, use the fields that are inside it instead of the\n * fields from the AcroRoot (for the FormXObjects...)\n */\nvar createFieldCallback = function(fieldArray, scope) {\n var standardFields = !fieldArray;\n\n if (!fieldArray) {\n // in case there is no fieldArray specified, we want to print out\n // the Fields of the AcroForm\n // Print out Root\n scope.internal.newObjectDeferredBegin(\n scope.internal.acroformPlugin.acroFormDictionaryRoot.objId,\n true\n );\n scope.internal.acroformPlugin.acroFormDictionaryRoot.putStream();\n }\n\n fieldArray =\n fieldArray || scope.internal.acroformPlugin.acroFormDictionaryRoot.Kids;\n\n for (var i in fieldArray) {\n if (fieldArray.hasOwnProperty(i)) {\n var fieldObject = fieldArray[i];\n var keyValueList = [];\n var oldRect = fieldObject.Rect;\n\n if (fieldObject.Rect) {\n fieldObject.Rect = calculateCoordinates(fieldObject.Rect, scope);\n }\n\n // Start Writing the Object\n scope.internal.newObjectDeferredBegin(fieldObject.objId, true);\n\n fieldObject.DA = AcroFormAppearance.createDefaultAppearanceStream(\n fieldObject\n );\n\n if (\n typeof fieldObject === \"object\" &&\n typeof fieldObject.getKeyValueListForStream === \"function\"\n ) {\n keyValueList = fieldObject.getKeyValueListForStream();\n }\n\n fieldObject.Rect = oldRect;\n\n if (\n fieldObject.hasAppearanceStream &&\n !fieldObject.appearanceStreamContent\n ) {\n // Calculate Appearance\n var appearance = calculateAppearanceStream(fieldObject);\n keyValueList.push({ key: \"AP\", value: \"<>\" });\n\n scope.internal.acroformPlugin.xForms.push(appearance);\n }\n\n // Assume AppearanceStreamContent is a Array with N,R,D (at least\n // one of them!)\n if (fieldObject.appearanceStreamContent) {\n var appearanceStreamString = \"\";\n // Iterate over N,R and D\n for (var k in fieldObject.appearanceStreamContent) {\n if (fieldObject.appearanceStreamContent.hasOwnProperty(k)) {\n var value = fieldObject.appearanceStreamContent[k];\n appearanceStreamString += \"/\" + k + \" \";\n appearanceStreamString += \"<<\";\n if (Object.keys(value).length >= 1 || Array.isArray(value)) {\n // appearanceStream is an Array or Object!\n for (var i in value) {\n if (value.hasOwnProperty(i)) {\n var obj = value[i];\n if (typeof obj === \"function\") {\n // if Function is referenced, call it in order\n // to get the FormXObject\n obj = obj.call(scope, fieldObject);\n }\n appearanceStreamString += \"/\" + i + \" \" + obj + \" \";\n\n // In case the XForm is already used, e.g. OffState\n // of CheckBoxes, don't add it\n if (!(scope.internal.acroformPlugin.xForms.indexOf(obj) >= 0))\n scope.internal.acroformPlugin.xForms.push(obj);\n }\n }\n } else {\n obj = value;\n if (typeof obj === \"function\") {\n // if Function is referenced, call it in order to\n // get the FormXObject\n obj = obj.call(scope, fieldObject);\n }\n appearanceStreamString += \"/\" + i + \" \" + obj;\n if (!(scope.internal.acroformPlugin.xForms.indexOf(obj) >= 0))\n scope.internal.acroformPlugin.xForms.push(obj);\n }\n appearanceStreamString += \">>\";\n }\n }\n\n // appearance stream is a normal Object..\n keyValueList.push({\n key: \"AP\",\n value: \"<<\\n\" + appearanceStreamString + \">>\"\n });\n }\n\n scope.internal.putStream({\n additionalKeyValues: keyValueList,\n objectId: fieldObject.objId\n });\n\n scope.internal.out(\"endobj\");\n }\n }\n if (standardFields) {\n createXFormObjectCallback(scope.internal.acroformPlugin.xForms, scope);\n }\n};\n\nvar createXFormObjectCallback = function(fieldArray, scope) {\n for (var i in fieldArray) {\n if (fieldArray.hasOwnProperty(i)) {\n var key = i;\n var fieldObject = fieldArray[i];\n // Start Writing the Object\n scope.internal.newObjectDeferredBegin(fieldObject.objId, true);\n\n if (\n typeof fieldObject === \"object\" &&\n typeof fieldObject.putStream === \"function\"\n ) {\n fieldObject.putStream();\n }\n delete fieldArray[key];\n }\n }\n};\n\nvar initializeAcroForm = function(scope, formObject) {\n formObject.scope = scope;\n if (\n scope.internal !== undefined &&\n (scope.internal.acroformPlugin === undefined ||\n scope.internal.acroformPlugin.isInitialized === false)\n ) {\n AcroFormField.FieldNum = 0;\n scope.internal.acroformPlugin = JSON.parse(\n JSON.stringify(acroformPluginTemplate)\n );\n if (scope.internal.acroformPlugin.acroFormDictionaryRoot) {\n throw new Error(\"Exception while creating AcroformDictionary\");\n }\n scaleFactor = scope.internal.scaleFactor;\n // The Object Number of the AcroForm Dictionary\n scope.internal.acroformPlugin.acroFormDictionaryRoot = new AcroFormDictionary();\n scope.internal.acroformPlugin.acroFormDictionaryRoot.scope = scope;\n\n // add Callback for creating the AcroForm Dictionary\n scope.internal.acroformPlugin.acroFormDictionaryRoot._eventID = scope.internal.events.subscribe(\n \"postPutResources\",\n function() {\n AcroFormDictionaryCallback(scope);\n }\n );\n\n scope.internal.events.subscribe(\"buildDocument\", function() {\n annotReferenceCallback(scope);\n }); // buildDocument\n\n // Register event, that is triggered when the DocumentCatalog is\n // written, in order to add /AcroForm\n\n scope.internal.events.subscribe(\"putCatalog\", function() {\n putCatalogCallback(scope);\n });\n\n // Register event, that creates all Fields\n scope.internal.events.subscribe(\"postPutPages\", function(fieldArray) {\n createFieldCallback(fieldArray, scope);\n });\n\n scope.internal.acroformPlugin.isInitialized = true;\n }\n};\n\n//PDF 32000-1:2008, page 26, 7.3.6\nvar arrayToPdfArray = (jsPDFAPI.__acroform__.arrayToPdfArray = function(\n array,\n objId,\n scope\n) {\n var encryptor = function(data) {\n return data;\n };\n if (Array.isArray(array)) {\n var content = \"[\";\n for (var i = 0; i < array.length; i++) {\n if (i !== 0) {\n content += \" \";\n }\n switch (typeof array[i]) {\n case \"boolean\":\n case \"number\":\n case \"object\":\n content += array[i].toString();\n break;\n case \"string\":\n if (array[i].substr(0, 1) !== \"/\") {\n if (typeof objId !== \"undefined\" && scope)\n encryptor = scope.internal.getEncryptor(objId);\n content += \"(\" + pdfEscape(encryptor(array[i].toString())) + \")\";\n } else {\n content += array[i].toString();\n }\n break;\n }\n }\n content += \"]\";\n return content;\n }\n throw new Error(\n \"Invalid argument passed to jsPDF.__acroform__.arrayToPdfArray\"\n );\n});\nfunction getMatches(string, regex, index) {\n index || (index = 1); // default to the first capturing group\n var matches = [];\n var match;\n while ((match = regex.exec(string))) {\n matches.push(match[index]);\n }\n return matches;\n}\nvar pdfArrayToStringArray = function(array) {\n var result = [];\n if (typeof array === \"string\") {\n result = getMatches(array, /\\((.*?)\\)/g);\n }\n return result;\n};\n\nvar toPdfString = function(string, objId, scope) {\n var encryptor = function(data) {\n return data;\n };\n if (typeof objId !== \"undefined\" && scope)\n encryptor = scope.internal.getEncryptor(objId);\n string = string || \"\";\n string.toString();\n string = \"(\" + pdfEscape(encryptor(string)) + \")\";\n return string;\n};\n\n// ##########################\n// Classes\n// ##########################\n\n/**\n * @class AcroFormPDFObject\n * @classdesc A AcroFormPDFObject\n */\nvar AcroFormPDFObject = function() {\n this._objId = undefined;\n this._scope = undefined;\n\n /**\n * @name AcroFormPDFObject#objId\n * @type {any}\n */\n Object.defineProperty(this, \"objId\", {\n get: function() {\n if (typeof this._objId === \"undefined\") {\n if (typeof this.scope === \"undefined\") {\n return undefined;\n }\n this._objId = this.scope.internal.newObjectDeferred();\n }\n return this._objId;\n },\n set: function(value) {\n this._objId = value;\n }\n });\n Object.defineProperty(this, \"scope\", {\n value: this._scope,\n writable: true\n });\n};\n\n/**\n * @function AcroFormPDFObject.toString\n */\nAcroFormPDFObject.prototype.toString = function() {\n return this.objId + \" 0 R\";\n};\n\nAcroFormPDFObject.prototype.putStream = function() {\n var keyValueList = this.getKeyValueListForStream();\n this.scope.internal.putStream({\n data: this.stream,\n additionalKeyValues: keyValueList,\n objectId: this.objId\n });\n this.scope.internal.out(\"endobj\");\n};\n\n/**\n * Returns an key-value-List of all non-configurable Variables from the Object\n *\n * @name getKeyValueListForStream\n * @returns {string}\n */\nAcroFormPDFObject.prototype.getKeyValueListForStream = function() {\n var keyValueList = [];\n var keys = Object.getOwnPropertyNames(this).filter(function(key) {\n return (\n key != \"content\" &&\n key != \"appearanceStreamContent\" &&\n key != \"scope\" &&\n key != \"objId\" &&\n key.substring(0, 1) != \"_\"\n );\n });\n\n for (var i in keys) {\n if (Object.getOwnPropertyDescriptor(this, keys[i]).configurable === false) {\n var key = keys[i];\n var value = this[key];\n\n if (value) {\n if (Array.isArray(value)) {\n keyValueList.push({\n key: key,\n value: arrayToPdfArray(value, this.objId, this.scope)\n });\n } else if (value instanceof AcroFormPDFObject) {\n // In case it is a reference to another PDFObject,\n // take the reference number\n value.scope = this.scope;\n keyValueList.push({ key: key, value: value.objId + \" 0 R\" });\n } else if (typeof value !== \"function\") {\n keyValueList.push({ key: key, value: value });\n }\n }\n }\n }\n return keyValueList;\n};\n\nvar AcroFormXObject = function() {\n AcroFormPDFObject.call(this);\n\n Object.defineProperty(this, \"Type\", {\n value: \"/XObject\",\n configurable: false,\n writable: true\n });\n\n Object.defineProperty(this, \"Subtype\", {\n value: \"/Form\",\n configurable: false,\n writable: true\n });\n\n Object.defineProperty(this, \"FormType\", {\n value: 1,\n configurable: false,\n writable: true\n });\n\n var _BBox = [];\n Object.defineProperty(this, \"BBox\", {\n configurable: false,\n get: function() {\n return _BBox;\n },\n set: function(value) {\n _BBox = value;\n }\n });\n\n Object.defineProperty(this, \"Resources\", {\n value: \"2 0 R\",\n configurable: false,\n writable: true\n });\n\n var _stream;\n Object.defineProperty(this, \"stream\", {\n enumerable: false,\n configurable: true,\n set: function(value) {\n _stream = value.trim();\n },\n get: function() {\n if (_stream) {\n return _stream;\n } else {\n return null;\n }\n }\n });\n};\n\ninherit(AcroFormXObject, AcroFormPDFObject);\n\nvar AcroFormDictionary = function() {\n AcroFormPDFObject.call(this);\n\n var _Kids = [];\n\n Object.defineProperty(this, \"Kids\", {\n enumerable: false,\n configurable: true,\n get: function() {\n if (_Kids.length > 0) {\n return _Kids;\n } else {\n return undefined;\n }\n }\n });\n Object.defineProperty(this, \"Fields\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _Kids;\n }\n });\n\n // Default Appearance\n var _DA;\n Object.defineProperty(this, \"DA\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (!_DA) {\n return undefined;\n }\n var encryptor = function(data) {\n return data;\n };\n if (this.scope) encryptor = this.scope.internal.getEncryptor(this.objId);\n return \"(\" + pdfEscape(encryptor(_DA)) + \")\";\n },\n set: function(value) {\n _DA = value;\n }\n });\n};\n\ninherit(AcroFormDictionary, AcroFormPDFObject);\n\n/**\n * The Field Object contains the Variables, that every Field needs\n *\n * @class AcroFormField\n * @classdesc An AcroForm FieldObject\n */\nvar AcroFormField = function() {\n AcroFormPDFObject.call(this);\n\n //Annotation-Flag See Table 165\n var _F = 4;\n Object.defineProperty(this, \"F\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _F;\n },\n set: function(value) {\n if (!isNaN(value)) {\n _F = value;\n } else {\n throw new Error(\n 'Invalid value \"' + value + '\" for attribute F supplied.'\n );\n }\n }\n });\n\n /**\n * (PDF 1.2) If set, print the annotation when the page is printed. If clear, never print the annotation, regardless of wether is is displayed on the screen.\n * NOTE 2 This can be useful for annotations representing interactive pushbuttons, which would serve no meaningful purpose on the printed page.\n *\n * @name AcroFormField#showWhenPrinted\n * @default true\n * @type {boolean}\n */\n Object.defineProperty(this, \"showWhenPrinted\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(_F, 3));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.F = setBitForPdf(_F, 3);\n } else {\n this.F = clearBitForPdf(_F, 3);\n }\n }\n });\n\n var _Ff = 0;\n Object.defineProperty(this, \"Ff\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _Ff;\n },\n set: function(value) {\n if (!isNaN(value)) {\n _Ff = value;\n } else {\n throw new Error(\n 'Invalid value \"' + value + '\" for attribute Ff supplied.'\n );\n }\n }\n });\n\n var _Rect = [];\n Object.defineProperty(this, \"Rect\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (_Rect.length === 0) {\n return undefined;\n }\n return _Rect;\n },\n set: function(value) {\n if (typeof value !== \"undefined\") {\n _Rect = value;\n } else {\n _Rect = [];\n }\n }\n });\n\n /**\n * The x-position of the field.\n *\n * @name AcroFormField#x\n * @default null\n * @type {number}\n */\n Object.defineProperty(this, \"x\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_Rect || isNaN(_Rect[0])) {\n return 0;\n }\n return _Rect[0];\n },\n set: function(value) {\n _Rect[0] = value;\n }\n });\n\n /**\n * The y-position of the field.\n *\n * @name AcroFormField#y\n * @default null\n * @type {number}\n */\n Object.defineProperty(this, \"y\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_Rect || isNaN(_Rect[1])) {\n return 0;\n }\n return _Rect[1];\n },\n set: function(value) {\n _Rect[1] = value;\n }\n });\n\n /**\n * The width of the field.\n *\n * @name AcroFormField#width\n * @default null\n * @type {number}\n */\n Object.defineProperty(this, \"width\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_Rect || isNaN(_Rect[2])) {\n return 0;\n }\n return _Rect[2];\n },\n set: function(value) {\n _Rect[2] = value;\n }\n });\n\n /**\n * The height of the field.\n *\n * @name AcroFormField#height\n * @default null\n * @type {number}\n */\n Object.defineProperty(this, \"height\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_Rect || isNaN(_Rect[3])) {\n return 0;\n }\n return _Rect[3];\n },\n set: function(value) {\n _Rect[3] = value;\n }\n });\n\n var _FT = \"\";\n Object.defineProperty(this, \"FT\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return _FT;\n },\n set: function(value) {\n switch (value) {\n case \"/Btn\":\n case \"/Tx\":\n case \"/Ch\":\n case \"/Sig\":\n _FT = value;\n break;\n default:\n throw new Error(\n 'Invalid value \"' + value + '\" for attribute FT supplied.'\n );\n }\n }\n });\n\n var _T = null;\n\n Object.defineProperty(this, \"T\", {\n enumerable: true,\n configurable: false,\n get: function() {\n if (!_T || _T.length < 1) {\n // In case of a Child from a Radio´Group, you don't need a FieldName\n if (this instanceof AcroFormChildClass) {\n return undefined;\n }\n _T = \"FieldObject\" + AcroFormField.FieldNum++;\n }\n var encryptor = function(data) {\n return data;\n };\n if (this.scope) encryptor = this.scope.internal.getEncryptor(this.objId);\n return \"(\" + pdfEscape(encryptor(_T)) + \")\";\n },\n set: function(value) {\n _T = value.toString();\n }\n });\n\n /**\n * (Optional) The partial field name (see 12.7.3.2, “Field Names”).\n *\n * @name AcroFormField#fieldName\n * @default null\n * @type {string}\n */\n Object.defineProperty(this, \"fieldName\", {\n configurable: true,\n enumerable: true,\n get: function() {\n return _T;\n },\n set: function(value) {\n _T = value;\n }\n });\n\n var _fontName = \"helvetica\";\n /**\n * The fontName of the font to be used.\n *\n * @name AcroFormField#fontName\n * @default 'helvetica'\n * @type {string}\n */\n Object.defineProperty(this, \"fontName\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _fontName;\n },\n set: function(value) {\n _fontName = value;\n }\n });\n\n var _fontStyle = \"normal\";\n /**\n * The fontStyle of the font to be used.\n *\n * @name AcroFormField#fontStyle\n * @default 'normal'\n * @type {string}\n */\n Object.defineProperty(this, \"fontStyle\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _fontStyle;\n },\n set: function(value) {\n _fontStyle = value;\n }\n });\n\n var _fontSize = 0;\n /**\n * The fontSize of the font to be used.\n *\n * @name AcroFormField#fontSize\n * @default 0 (for auto)\n * @type {number}\n */\n Object.defineProperty(this, \"fontSize\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _fontSize;\n },\n set: function(value) {\n _fontSize = value;\n }\n });\n\n var _maxFontSize = undefined;\n /**\n * The maximum fontSize of the font to be used.\n *\n * @name AcroFormField#maxFontSize\n * @default 0 (for auto)\n * @type {number}\n */\n Object.defineProperty(this, \"maxFontSize\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (_maxFontSize === undefined) {\n // use the old default value here - the value is some kind of random as it depends on the scaleFactor (user unit)\n // (\"50\" is transformed to the \"user space\" but then used in \"pdf space\")\n return 50 / scaleFactor;\n } else {\n return _maxFontSize;\n }\n },\n set: function(value) {\n _maxFontSize = value;\n }\n });\n\n var _color = \"black\";\n /**\n * The color of the text\n *\n * @name AcroFormField#color\n * @default 'black'\n * @type {string|rgba}\n */\n Object.defineProperty(this, \"color\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _color;\n },\n set: function(value) {\n _color = value;\n }\n });\n\n var _DA = \"/F1 0 Tf 0 g\";\n // Defines the default appearance (Needed for variable Text)\n Object.defineProperty(this, \"DA\", {\n enumerable: true,\n configurable: false,\n get: function() {\n if (\n !_DA ||\n this instanceof AcroFormChildClass ||\n this instanceof AcroFormTextField\n ) {\n return undefined;\n }\n return toPdfString(_DA, this.objId, this.scope);\n },\n set: function(value) {\n value = value.toString();\n _DA = value;\n }\n });\n\n var _DV = null;\n Object.defineProperty(this, \"DV\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (!_DV) {\n return undefined;\n }\n if (this instanceof AcroFormButton === false) {\n return toPdfString(_DV, this.objId, this.scope);\n }\n return _DV;\n },\n set: function(value) {\n value = value.toString();\n if (this instanceof AcroFormButton === false) {\n if (value.substr(0, 1) === \"(\") {\n _DV = pdfUnescape(value.substr(1, value.length - 2));\n } else {\n _DV = pdfUnescape(value);\n }\n } else {\n _DV = value;\n }\n }\n });\n\n /**\n * (Optional; inheritable) The default value to which the field reverts when a reset-form action is executed (see 12.7.5.3, “Reset-Form Action”). The format of this value is the same as that of value.\n *\n * @name AcroFormField#defaultValue\n * @default null\n * @type {any}\n */\n Object.defineProperty(this, \"defaultValue\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (this instanceof AcroFormButton === true) {\n return pdfUnescape(_DV.substr(1, _DV.length - 1));\n } else {\n return _DV;\n }\n },\n set: function(value) {\n value = value.toString();\n if (this instanceof AcroFormButton === true) {\n _DV = \"/\" + value;\n } else {\n _DV = value;\n }\n }\n });\n\n var _V = null;\n Object.defineProperty(this, \"_V\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (!_V) {\n return undefined;\n }\n return _V;\n },\n set: function(value) {\n this.V = value;\n }\n });\n Object.defineProperty(this, \"V\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (!_V) {\n return undefined;\n }\n if (this instanceof AcroFormButton === false) {\n return toPdfString(_V, this.objId, this.scope);\n }\n return _V;\n },\n set: function(value) {\n value = value.toString();\n if (this instanceof AcroFormButton === false) {\n if (value.substr(0, 1) === \"(\") {\n _V = pdfUnescape(value.substr(1, value.length - 2));\n } else {\n _V = pdfUnescape(value);\n }\n } else {\n _V = value;\n }\n }\n });\n\n /**\n * (Optional; inheritable) The field’s value, whose format varies depending on the field type. See the descriptions of individual field types for further information.\n *\n * @name AcroFormField#value\n * @default null\n * @type {any}\n */\n Object.defineProperty(this, \"value\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (this instanceof AcroFormButton === true) {\n return pdfUnescape(_V.substr(1, _V.length - 1));\n } else {\n return _V;\n }\n },\n set: function(value) {\n value = value.toString();\n if (this instanceof AcroFormButton === true) {\n _V = \"/\" + value;\n } else {\n _V = value;\n }\n }\n });\n\n /**\n * Check if field has annotations\n *\n * @name AcroFormField#hasAnnotation\n * @readonly\n * @type {boolean}\n */\n Object.defineProperty(this, \"hasAnnotation\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return this.Rect;\n }\n });\n\n Object.defineProperty(this, \"Type\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return this.hasAnnotation ? \"/Annot\" : null;\n }\n });\n\n Object.defineProperty(this, \"Subtype\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return this.hasAnnotation ? \"/Widget\" : null;\n }\n });\n\n var _hasAppearanceStream = false;\n /**\n * true if field has an appearanceStream\n *\n * @name AcroFormField#hasAppearanceStream\n * @readonly\n * @type {boolean}\n */\n Object.defineProperty(this, \"hasAppearanceStream\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _hasAppearanceStream;\n },\n set: function(value) {\n value = Boolean(value);\n _hasAppearanceStream = value;\n }\n });\n\n /**\n * The page on which the AcroFormField is placed\n *\n * @name AcroFormField#page\n * @type {number}\n */\n var _page;\n Object.defineProperty(this, \"page\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_page) {\n return undefined;\n }\n return _page;\n },\n set: function(value) {\n _page = value;\n }\n });\n\n /**\n * If set, the user may not change the value of the field. Any associated widget annotations will not interact with the user; that is, they will not respond to mouse clicks or change their appearance in response to mouse motions. This flag is useful for fields whose values are computed or imported from a database.\n *\n * @name AcroFormField#readOnly\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"readOnly\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 1));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 1);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 1);\n }\n }\n });\n\n /**\n * If set, the field shall have a value at the time it is exported by a submitform action (see 12.7.5.2, “Submit-Form Action”).\n *\n * @name AcroFormField#required\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"required\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 2));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 2);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 2);\n }\n }\n });\n\n /**\n * If set, the field shall not be exported by a submit-form action (see 12.7.5.2, “Submit-Form Action”)\n *\n * @name AcroFormField#noExport\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"noExport\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 3));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 3);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 3);\n }\n }\n });\n\n var _Q = null;\n Object.defineProperty(this, \"Q\", {\n enumerable: true,\n configurable: false,\n get: function() {\n if (_Q === null) {\n return undefined;\n }\n return _Q;\n },\n set: function(value) {\n if ([0, 1, 2].indexOf(value) !== -1) {\n _Q = value;\n } else {\n throw new Error(\n 'Invalid value \"' + value + '\" for attribute Q supplied.'\n );\n }\n }\n });\n\n /**\n * (Optional; inheritable) A code specifying the form of quadding (justification) that shall be used in displaying the text:\n * 'left', 'center', 'right'\n *\n * @name AcroFormField#textAlign\n * @default 'left'\n * @type {string}\n */\n Object.defineProperty(this, \"textAlign\", {\n get: function() {\n var result;\n switch (_Q) {\n case 0:\n default:\n result = \"left\";\n break;\n case 1:\n result = \"center\";\n break;\n case 2:\n result = \"right\";\n break;\n }\n return result;\n },\n configurable: true,\n enumerable: true,\n set: function(value) {\n switch (value) {\n case \"right\":\n case 2:\n _Q = 2;\n break;\n case \"center\":\n case 1:\n _Q = 1;\n break;\n case \"left\":\n case 0:\n default:\n _Q = 0;\n }\n }\n });\n};\n\ninherit(AcroFormField, AcroFormPDFObject);\n\n/**\n * @class AcroFormChoiceField\n * @extends AcroFormField\n */\nvar AcroFormChoiceField = function() {\n AcroFormField.call(this);\n // Field Type = Choice Field\n this.FT = \"/Ch\";\n // options\n this.V = \"()\";\n\n this.fontName = \"zapfdingbats\";\n // Top Index\n var _TI = 0;\n\n Object.defineProperty(this, \"TI\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return _TI;\n },\n set: function(value) {\n _TI = value;\n }\n });\n\n /**\n * (Optional) For scrollable list boxes, the top index (the index in the Opt array of the first option visible in the list). Default value: 0.\n *\n * @name AcroFormChoiceField#topIndex\n * @default 0\n * @type {number}\n */\n Object.defineProperty(this, \"topIndex\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _TI;\n },\n set: function(value) {\n _TI = value;\n }\n });\n\n var _Opt = [];\n Object.defineProperty(this, \"Opt\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return arrayToPdfArray(_Opt, this.objId, this.scope);\n },\n set: function(value) {\n _Opt = pdfArrayToStringArray(value);\n }\n });\n\n /**\n * @memberof AcroFormChoiceField\n * @name getOptions\n * @function\n * @instance\n * @returns {array} array of Options\n */\n this.getOptions = function() {\n return _Opt;\n };\n\n /**\n * @memberof AcroFormChoiceField\n * @name setOptions\n * @function\n * @instance\n * @param {array} value\n */\n this.setOptions = function(value) {\n _Opt = value;\n if (this.sort) {\n _Opt.sort();\n }\n };\n\n /**\n * @memberof AcroFormChoiceField\n * @name addOption\n * @function\n * @instance\n * @param {string} value\n */\n this.addOption = function(value) {\n value = value || \"\";\n value = value.toString();\n _Opt.push(value);\n if (this.sort) {\n _Opt.sort();\n }\n };\n\n /**\n * @memberof AcroFormChoiceField\n * @name removeOption\n * @function\n * @instance\n * @param {string} value\n * @param {boolean} allEntries (default: false)\n */\n this.removeOption = function(value, allEntries) {\n allEntries = allEntries || false;\n value = value || \"\";\n value = value.toString();\n\n while (_Opt.indexOf(value) !== -1) {\n _Opt.splice(_Opt.indexOf(value), 1);\n if (allEntries === false) {\n break;\n }\n }\n };\n\n /**\n * If set, the field is a combo box; if clear, the field is a list box.\n *\n * @name AcroFormChoiceField#combo\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"combo\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 18));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 18);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 18);\n }\n }\n });\n\n /**\n * If set, the combo box shall include an editable text box as well as a drop-down list; if clear, it shall include only a drop-down list. This flag shall be used only if the Combo flag is set.\n *\n * @name AcroFormChoiceField#edit\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"edit\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 19));\n },\n set: function(value) {\n //PDF 32000-1:2008, page 444\n if (this.combo === true) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 19);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 19);\n }\n }\n }\n });\n\n /**\n * If set, the field’s option items shall be sorted alphabetically. This flag is intended for use by writers, not by readers. Conforming readers shall display the options in the order in which they occur in the Opt array (see Table 231).\n *\n * @name AcroFormChoiceField#sort\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"sort\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 20));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 20);\n _Opt.sort();\n } else {\n this.Ff = clearBitForPdf(this.Ff, 20);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, more than one of the field’s option items may be selected simultaneously; if clear, at most one item shall be selected\n *\n * @name AcroFormChoiceField#multiSelect\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"multiSelect\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 22));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 22);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 22);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, text entered in the field shall not be spellchecked. This flag shall not be used unless the Combo and Edit flags are both set.\n *\n * @name AcroFormChoiceField#doNotSpellCheck\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"doNotSpellCheck\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 23));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 23);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 23);\n }\n }\n });\n\n /**\n * (PDF 1.5) If set, the new value shall be committed as soon as a selection is made (commonly with the pointing device). In this case, supplying a value for a field involves three actions: selecting the field for fill-in, selecting a choice for the fill-in value, and leaving that field, which finalizes or “commits” the data choice and triggers any actions associated with the entry or changing of this data. If this flag is on, then processing does not wait for leaving the field action to occur, but immediately proceeds to the third step.\n * This option enables applications to perform an action once a selection is made, without requiring the user to exit the field. If clear, the new value is not committed until the user exits the field.\n *\n * @name AcroFormChoiceField#commitOnSelChange\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"commitOnSelChange\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 27));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 27);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 27);\n }\n }\n });\n\n this.hasAppearanceStream = false;\n};\ninherit(AcroFormChoiceField, AcroFormField);\n\n/**\n * @class AcroFormListBox\n * @extends AcroFormChoiceField\n * @extends AcroFormField\n */\nvar AcroFormListBox = function() {\n AcroFormChoiceField.call(this);\n this.fontName = \"helvetica\";\n\n //PDF 32000-1:2008, page 444\n this.combo = false;\n};\ninherit(AcroFormListBox, AcroFormChoiceField);\n\n/**\n * @class AcroFormComboBox\n * @extends AcroFormListBox\n * @extends AcroFormChoiceField\n * @extends AcroFormField\n */\nvar AcroFormComboBox = function() {\n AcroFormListBox.call(this);\n this.combo = true;\n};\ninherit(AcroFormComboBox, AcroFormListBox);\n\n/**\n * @class AcroFormEditBox\n * @extends AcroFormComboBox\n * @extends AcroFormListBox\n * @extends AcroFormChoiceField\n * @extends AcroFormField\n */\nvar AcroFormEditBox = function() {\n AcroFormComboBox.call(this);\n this.edit = true;\n};\ninherit(AcroFormEditBox, AcroFormComboBox);\n\n/**\n * @class AcroFormButton\n * @extends AcroFormField\n */\nvar AcroFormButton = function() {\n AcroFormField.call(this);\n this.FT = \"/Btn\";\n\n /**\n * (Radio buttons only) If set, exactly one radio button shall be selected at all times; selecting the currently selected button has no effect. If clear, clicking the selected button deselects it, leaving no button selected.\n *\n * @name AcroFormButton#noToggleToOff\n * @type {boolean}\n */\n Object.defineProperty(this, \"noToggleToOff\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 15));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 15);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 15);\n }\n }\n });\n\n /**\n * If set, the field is a set of radio buttons; if clear, the field is a checkbox. This flag may be set only if the Pushbutton flag is clear.\n *\n * @name AcroFormButton#radio\n * @type {boolean}\n */\n Object.defineProperty(this, \"radio\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 16));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 16);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 16);\n }\n }\n });\n\n /**\n * If set, the field is a pushbutton that does not retain a permanent value.\n *\n * @name AcroFormButton#pushButton\n * @type {boolean}\n */\n Object.defineProperty(this, \"pushButton\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 17));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 17);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 17);\n }\n }\n });\n\n /**\n * (PDF 1.5) If set, a group of radio buttons within a radio button field that use the same value for the on state will turn on and off in unison; that is if one is checked, they are all checked. If clear, the buttons are mutually exclusive (the same behavior as HTML radio buttons).\n *\n * @name AcroFormButton#radioIsUnison\n * @type {boolean}\n */\n Object.defineProperty(this, \"radioIsUnison\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 26));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 26);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 26);\n }\n }\n });\n\n var _MK = {};\n Object.defineProperty(this, \"MK\", {\n enumerable: false,\n configurable: false,\n get: function() {\n var encryptor = function(data) {\n return data;\n };\n if (this.scope) encryptor = this.scope.internal.getEncryptor(this.objId);\n if (Object.keys(_MK).length !== 0) {\n var result = [];\n result.push(\"<<\");\n var key;\n for (key in _MK) {\n result.push(\"/\" + key + \" (\" + pdfEscape(encryptor(_MK[key])) + \")\");\n }\n result.push(\">>\");\n return result.join(\"\\n\");\n }\n return undefined;\n },\n set: function(value) {\n if (typeof value === \"object\") {\n _MK = value;\n }\n }\n });\n\n /**\n * From the PDF reference:\n * (Optional, button fields only) The widget annotation's normal caption which shall be displayed when it is not interacting with the user.\n * Unlike the remaining entries listed in this Table which apply only to widget annotations associated with pushbutton fields (see Pushbuttons in 12.7.4.2, \"Button Fields\"), the CA entry may be used with any type of button field, including check boxes (see Check Boxes in 12.7.4.2, \"Button Fields\") and radio buttons (Radio Buttons in 12.7.4.2, \"Button Fields\").\n *\n * - '8' = Cross,\n * - 'l' = Circle,\n * - '' = nothing\n * @name AcroFormButton#caption\n * @type {string}\n */\n Object.defineProperty(this, \"caption\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _MK.CA || \"\";\n },\n set: function(value) {\n if (typeof value === \"string\") {\n _MK.CA = value;\n }\n }\n });\n\n var _AS;\n Object.defineProperty(this, \"AS\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _AS;\n },\n set: function(value) {\n _AS = value;\n }\n });\n\n /**\n * (Required if the appearance dictionary AP contains one or more subdictionaries; PDF 1.2) The annotation's appearance state, which selects the applicable appearance stream from an appearance subdictionary (see Section 12.5.5, \"Appearance Streams\")\n *\n * @name AcroFormButton#appearanceState\n * @type {any}\n */\n Object.defineProperty(this, \"appearanceState\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _AS.substr(1, _AS.length - 1);\n },\n set: function(value) {\n _AS = \"/\" + value;\n }\n });\n};\ninherit(AcroFormButton, AcroFormField);\n\n/**\n * @class AcroFormPushButton\n * @extends AcroFormButton\n * @extends AcroFormField\n */\nvar AcroFormPushButton = function() {\n AcroFormButton.call(this);\n this.pushButton = true;\n};\ninherit(AcroFormPushButton, AcroFormButton);\n\n/**\n * @class AcroFormRadioButton\n * @extends AcroFormButton\n * @extends AcroFormField\n */\nvar AcroFormRadioButton = function() {\n AcroFormButton.call(this);\n this.radio = true;\n this.pushButton = false;\n\n var _Kids = [];\n Object.defineProperty(this, \"Kids\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return _Kids;\n },\n set: function(value) {\n if (typeof value !== \"undefined\") {\n _Kids = value;\n } else {\n _Kids = [];\n }\n }\n });\n};\ninherit(AcroFormRadioButton, AcroFormButton);\n\n/**\n * The Child class of a RadioButton (the radioGroup) -> The single Buttons\n *\n * @class AcroFormChildClass\n * @extends AcroFormField\n * @ignore\n */\nvar AcroFormChildClass = function() {\n AcroFormField.call(this);\n\n var _parent;\n Object.defineProperty(this, \"Parent\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _parent;\n },\n set: function(value) {\n _parent = value;\n }\n });\n\n var _optionName;\n Object.defineProperty(this, \"optionName\", {\n enumerable: false,\n configurable: true,\n get: function() {\n return _optionName;\n },\n set: function(value) {\n _optionName = value;\n }\n });\n\n var _MK = {};\n Object.defineProperty(this, \"MK\", {\n enumerable: false,\n configurable: false,\n get: function() {\n var encryptor = function(data) {\n return data;\n };\n if (this.scope) encryptor = this.scope.internal.getEncryptor(this.objId);\n var result = [];\n result.push(\"<<\");\n var key;\n for (key in _MK) {\n result.push(\"/\" + key + \" (\" + pdfEscape(encryptor(_MK[key])) + \")\");\n }\n result.push(\">>\");\n return result.join(\"\\n\");\n },\n set: function(value) {\n if (typeof value === \"object\") {\n _MK = value;\n }\n }\n });\n\n /**\n * From the PDF reference:\n * (Optional, button fields only) The widget annotation's normal caption which shall be displayed when it is not interacting with the user.\n * Unlike the remaining entries listed in this Table which apply only to widget annotations associated with pushbutton fields (see Pushbuttons in 12.7.4.2, \"Button Fields\"), the CA entry may be used with any type of button field, including check boxes (see Check Boxes in 12.7.4.2, \"Button Fields\") and radio buttons (Radio Buttons in 12.7.4.2, \"Button Fields\").\n *\n * - '8' = Cross,\n * - 'l' = Circle,\n * - '' = nothing\n * @name AcroFormButton#caption\n * @type {string}\n */\n Object.defineProperty(this, \"caption\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _MK.CA || \"\";\n },\n set: function(value) {\n if (typeof value === \"string\") {\n _MK.CA = value;\n }\n }\n });\n\n var _AS;\n Object.defineProperty(this, \"AS\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _AS;\n },\n set: function(value) {\n _AS = value;\n }\n });\n\n /**\n * (Required if the appearance dictionary AP contains one or more subdictionaries; PDF 1.2) The annotation's appearance state, which selects the applicable appearance stream from an appearance subdictionary (see Section 12.5.5, \"Appearance Streams\")\n *\n * @name AcroFormButton#appearanceState\n * @type {any}\n */\n Object.defineProperty(this, \"appearanceState\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _AS.substr(1, _AS.length - 1);\n },\n set: function(value) {\n _AS = \"/\" + value;\n }\n });\n this.caption = \"l\";\n this.appearanceState = \"Off\";\n // todo: set AppearanceType as variable that can be set from the\n // outside...\n this._AppearanceType = AcroFormAppearance.RadioButton.Circle;\n // The Default appearanceType is the Circle\n this.appearanceStreamContent = this._AppearanceType.createAppearanceStream(\n this.optionName\n );\n};\ninherit(AcroFormChildClass, AcroFormField);\n\nAcroFormRadioButton.prototype.setAppearance = function(appearance) {\n if (!(\"createAppearanceStream\" in appearance && \"getCA\" in appearance)) {\n throw new Error(\n \"Couldn't assign Appearance to RadioButton. Appearance was Invalid!\"\n );\n }\n for (var objId in this.Kids) {\n if (this.Kids.hasOwnProperty(objId)) {\n var child = this.Kids[objId];\n child.appearanceStreamContent = appearance.createAppearanceStream(\n child.optionName\n );\n child.caption = appearance.getCA();\n }\n }\n};\n\nAcroFormRadioButton.prototype.createOption = function(name) {\n // Create new Child for RadioGroup\n var child = new AcroFormChildClass();\n child.Parent = this;\n child.optionName = name;\n // Add to Parent\n this.Kids.push(child);\n\n addField.call(this.scope, child);\n\n return child;\n};\n\n/**\n * @class AcroFormCheckBox\n * @extends AcroFormButton\n * @extends AcroFormField\n */\nvar AcroFormCheckBox = function() {\n AcroFormButton.call(this);\n\n this.fontName = \"zapfdingbats\";\n this.caption = \"3\";\n this.appearanceState = \"On\";\n this.value = \"On\";\n this.textAlign = \"center\";\n this.appearanceStreamContent = AcroFormAppearance.CheckBox.createAppearanceStream();\n};\ninherit(AcroFormCheckBox, AcroFormButton);\n\n/**\n * @class AcroFormTextField\n * @extends AcroFormField\n */\nvar AcroFormTextField = function() {\n AcroFormField.call(this);\n this.FT = \"/Tx\";\n\n /**\n * If set, the field may contain multiple lines of text; if clear, the field’s text shall be restricted to a single line.\n *\n * @name AcroFormTextField#multiline\n * @type {boolean}\n */\n Object.defineProperty(this, \"multiline\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 13));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 13);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 13);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, the text entered in the field represents the pathname of a file whose contents shall be submitted as the value of the field.\n *\n * @name AcroFormTextField#fileSelect\n * @type {boolean}\n */\n Object.defineProperty(this, \"fileSelect\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 21));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 21);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 21);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, text entered in the field shall not be spell-checked.\n *\n * @name AcroFormTextField#doNotSpellCheck\n * @type {boolean}\n */\n Object.defineProperty(this, \"doNotSpellCheck\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 23));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 23);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 23);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, the field shall not scroll (horizontally for single-line fields, vertically for multiple-line fields) to accommodate more text than fits within its annotation rectangle. Once the field is full, no further text shall be accepted for interactive form filling; for noninteractive form filling, the filler should take care not to add more character than will visibly fit in the defined area.\n *\n * @name AcroFormTextField#doNotScroll\n * @type {boolean}\n */\n Object.defineProperty(this, \"doNotScroll\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 24));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 24);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 24);\n }\n }\n });\n\n /**\n * (PDF 1.5) May be set only if the MaxLen entry is present in the text field dictionary (see Table 229) and if the Multiline, Password, and FileSelect flags are clear. If set, the field shall be automatically divided into as many equally spaced positions, or combs, as the value of MaxLen, and the text is laid out into those combs.\n *\n * @name AcroFormTextField#comb\n * @type {boolean}\n */\n Object.defineProperty(this, \"comb\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 25));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 25);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 25);\n }\n }\n });\n\n /**\n * (PDF 1.5) If set, the value of this field shall be a rich text string (see 12.7.3.4, “Rich Text Strings”). If the field has a value, the RV entry of the field dictionary (Table 222) shall specify the rich text string.\n *\n * @name AcroFormTextField#richText\n * @type {boolean}\n */\n Object.defineProperty(this, \"richText\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 26));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 26);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 26);\n }\n }\n });\n\n var _MaxLen = null;\n Object.defineProperty(this, \"MaxLen\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return _MaxLen;\n },\n set: function(value) {\n _MaxLen = value;\n }\n });\n\n /**\n * (Optional; inheritable) The maximum length of the field’s text, in characters.\n *\n * @name AcroFormTextField#maxLength\n * @type {number}\n */\n Object.defineProperty(this, \"maxLength\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _MaxLen;\n },\n set: function(value) {\n if (Number.isInteger(value)) {\n _MaxLen = value;\n }\n }\n });\n\n Object.defineProperty(this, \"hasAppearanceStream\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return this.V || this.DV;\n }\n });\n};\ninherit(AcroFormTextField, AcroFormField);\n\n/**\n * @class AcroFormPasswordField\n * @extends AcroFormTextField\n * @extends AcroFormField\n */\nvar AcroFormPasswordField = function() {\n AcroFormTextField.call(this);\n\n /**\n * If set, the field is intended for entering a secure password that should not be echoed visibly to the screen. Characters typed from the keyboard shall instead be echoed in some unreadable form, such as asterisks or bullet characters.\n * NOTE To protect password confidentiality, readers should never store the value of the text field in the PDF file if this flag is set.\n *\n * @name AcroFormTextField#password\n * @type {boolean}\n */\n Object.defineProperty(this, \"password\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 14));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 14);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 14);\n }\n }\n });\n this.password = true;\n};\ninherit(AcroFormPasswordField, AcroFormTextField);\n\n// Contains Methods for creating standard appearances\nvar AcroFormAppearance = {\n CheckBox: {\n createAppearanceStream: function() {\n var appearance = {\n N: {\n On: AcroFormAppearance.CheckBox.YesNormal\n },\n D: {\n On: AcroFormAppearance.CheckBox.YesPushDown,\n Off: AcroFormAppearance.CheckBox.OffPushDown\n }\n };\n\n return appearance;\n },\n /**\n * Returns the standard On Appearance for a CheckBox\n *\n * @returns {AcroFormXObject}\n */\n YesPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n var fontKey = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n ).id;\n var encodedColor = formObject.scope.__private__.encodeColorString(\n formObject.color\n );\n var calcRes = calculateX(formObject, formObject.caption);\n stream.push(\"0.749023 g\");\n stream.push(\n \"0 0 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject)) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject)) +\n \" re\"\n );\n stream.push(\"f\");\n stream.push(\"BMC\");\n stream.push(\"q\");\n stream.push(\"0 0 1 rg\");\n stream.push(\n \"/\" + fontKey + \" \" + f2(calcRes.fontSize) + \" Tf \" + encodedColor\n );\n stream.push(\"BT\");\n stream.push(calcRes.text);\n stream.push(\"ET\");\n stream.push(\"Q\");\n stream.push(\"EMC\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n\n YesNormal: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var fontKey = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n ).id;\n var encodedColor = formObject.scope.__private__.encodeColorString(\n formObject.color\n );\n var stream = [];\n var height = AcroFormAppearance.internal.getHeight(formObject);\n var width = AcroFormAppearance.internal.getWidth(formObject);\n var calcRes = calculateX(formObject, formObject.caption);\n stream.push(\"1 g\");\n stream.push(\"0 0 \" + f2(width) + \" \" + f2(height) + \" re\");\n stream.push(\"f\");\n stream.push(\"q\");\n stream.push(\"0 0 1 rg\");\n stream.push(\"0 0 \" + f2(width - 1) + \" \" + f2(height - 1) + \" re\");\n stream.push(\"W\");\n stream.push(\"n\");\n stream.push(\"0 g\");\n stream.push(\"BT\");\n stream.push(\n \"/\" + fontKey + \" \" + f2(calcRes.fontSize) + \" Tf \" + encodedColor\n );\n stream.push(calcRes.text);\n stream.push(\"ET\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n\n /**\n * Returns the standard Off Appearance for a CheckBox\n *\n * @returns {AcroFormXObject}\n */\n OffPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n stream.push(\"0.749023 g\");\n stream.push(\n \"0 0 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject)) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject)) +\n \" re\"\n );\n stream.push(\"f\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n }\n },\n\n RadioButton: {\n Circle: {\n createAppearanceStream: function(name) {\n var appearanceStreamContent = {\n D: {\n Off: AcroFormAppearance.RadioButton.Circle.OffPushDown\n },\n N: {}\n };\n appearanceStreamContent.N[name] =\n AcroFormAppearance.RadioButton.Circle.YesNormal;\n appearanceStreamContent.D[name] =\n AcroFormAppearance.RadioButton.Circle.YesPushDown;\n return appearanceStreamContent;\n },\n getCA: function() {\n return \"l\";\n },\n\n YesNormal: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n // Make the Radius of the Circle relative to min(height, width) of formObject\n var DotRadius =\n AcroFormAppearance.internal.getWidth(formObject) <=\n AcroFormAppearance.internal.getHeight(formObject)\n ? AcroFormAppearance.internal.getWidth(formObject) / 4\n : AcroFormAppearance.internal.getHeight(formObject) / 4;\n // The Borderpadding...\n DotRadius = Number((DotRadius * 0.9).toFixed(5));\n var c = AcroFormAppearance.internal.Bezier_C;\n var DotRadiusBezier = Number((DotRadius * c).toFixed(5));\n /*\n * The Following is a Circle created with Bezier-Curves.\n */\n stream.push(\"q\");\n stream.push(\n \"1 0 0 1 \" +\n f5(AcroFormAppearance.internal.getWidth(formObject) / 2) +\n \" \" +\n f5(AcroFormAppearance.internal.getHeight(formObject) / 2) +\n \" cm\"\n );\n stream.push(DotRadius + \" 0 m\");\n stream.push(\n DotRadius +\n \" \" +\n DotRadiusBezier +\n \" \" +\n DotRadiusBezier +\n \" \" +\n DotRadius +\n \" 0 \" +\n DotRadius +\n \" c\"\n );\n stream.push(\n \"-\" +\n DotRadiusBezier +\n \" \" +\n DotRadius +\n \" -\" +\n DotRadius +\n \" \" +\n DotRadiusBezier +\n \" -\" +\n DotRadius +\n \" 0 c\"\n );\n stream.push(\n \"-\" +\n DotRadius +\n \" -\" +\n DotRadiusBezier +\n \" -\" +\n DotRadiusBezier +\n \" -\" +\n DotRadius +\n \" 0 -\" +\n DotRadius +\n \" c\"\n );\n stream.push(\n DotRadiusBezier +\n \" -\" +\n DotRadius +\n \" \" +\n DotRadius +\n \" -\" +\n DotRadiusBezier +\n \" \" +\n DotRadius +\n \" 0 c\"\n );\n stream.push(\"f\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n YesPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n var DotRadius =\n AcroFormAppearance.internal.getWidth(formObject) <=\n AcroFormAppearance.internal.getHeight(formObject)\n ? AcroFormAppearance.internal.getWidth(formObject) / 4\n : AcroFormAppearance.internal.getHeight(formObject) / 4;\n // The Borderpadding...\n DotRadius = Number((DotRadius * 0.9).toFixed(5));\n // Save results for later use; no need to waste\n // processor ticks on doing math\n var k = Number((DotRadius * 2).toFixed(5));\n var kc = Number((k * AcroFormAppearance.internal.Bezier_C).toFixed(5));\n var dc = Number(\n (DotRadius * AcroFormAppearance.internal.Bezier_C).toFixed(5)\n );\n\n stream.push(\"0.749023 g\");\n stream.push(\"q\");\n stream.push(\n \"1 0 0 1 \" +\n f5(AcroFormAppearance.internal.getWidth(formObject) / 2) +\n \" \" +\n f5(AcroFormAppearance.internal.getHeight(formObject) / 2) +\n \" cm\"\n );\n stream.push(k + \" 0 m\");\n stream.push(k + \" \" + kc + \" \" + kc + \" \" + k + \" 0 \" + k + \" c\");\n stream.push(\n \"-\" + kc + \" \" + k + \" -\" + k + \" \" + kc + \" -\" + k + \" 0 c\"\n );\n stream.push(\n \"-\" + k + \" -\" + kc + \" -\" + kc + \" -\" + k + \" 0 -\" + k + \" c\"\n );\n stream.push(kc + \" -\" + k + \" \" + k + \" -\" + kc + \" \" + k + \" 0 c\");\n stream.push(\"f\");\n stream.push(\"Q\");\n stream.push(\"0 g\");\n stream.push(\"q\");\n stream.push(\n \"1 0 0 1 \" +\n f5(AcroFormAppearance.internal.getWidth(formObject) / 2) +\n \" \" +\n f5(AcroFormAppearance.internal.getHeight(formObject) / 2) +\n \" cm\"\n );\n stream.push(DotRadius + \" 0 m\");\n stream.push(\n \"\" +\n DotRadius +\n \" \" +\n dc +\n \" \" +\n dc +\n \" \" +\n DotRadius +\n \" 0 \" +\n DotRadius +\n \" c\"\n );\n stream.push(\n \"-\" +\n dc +\n \" \" +\n DotRadius +\n \" -\" +\n DotRadius +\n \" \" +\n dc +\n \" -\" +\n DotRadius +\n \" 0 c\"\n );\n stream.push(\n \"-\" +\n DotRadius +\n \" -\" +\n dc +\n \" -\" +\n dc +\n \" -\" +\n DotRadius +\n \" 0 -\" +\n DotRadius +\n \" c\"\n );\n stream.push(\n dc +\n \" -\" +\n DotRadius +\n \" \" +\n DotRadius +\n \" -\" +\n dc +\n \" \" +\n DotRadius +\n \" 0 c\"\n );\n stream.push(\"f\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n OffPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n var DotRadius =\n AcroFormAppearance.internal.getWidth(formObject) <=\n AcroFormAppearance.internal.getHeight(formObject)\n ? AcroFormAppearance.internal.getWidth(formObject) / 4\n : AcroFormAppearance.internal.getHeight(formObject) / 4;\n // The Borderpadding...\n DotRadius = Number((DotRadius * 0.9).toFixed(5));\n // Save results for later use; no need to waste\n // processor ticks on doing math\n var k = Number((DotRadius * 2).toFixed(5));\n var kc = Number((k * AcroFormAppearance.internal.Bezier_C).toFixed(5));\n\n stream.push(\"0.749023 g\");\n stream.push(\"q\");\n stream.push(\n \"1 0 0 1 \" +\n f5(AcroFormAppearance.internal.getWidth(formObject) / 2) +\n \" \" +\n f5(AcroFormAppearance.internal.getHeight(formObject) / 2) +\n \" cm\"\n );\n stream.push(k + \" 0 m\");\n stream.push(k + \" \" + kc + \" \" + kc + \" \" + k + \" 0 \" + k + \" c\");\n stream.push(\n \"-\" + kc + \" \" + k + \" -\" + k + \" \" + kc + \" -\" + k + \" 0 c\"\n );\n stream.push(\n \"-\" + k + \" -\" + kc + \" -\" + kc + \" -\" + k + \" 0 -\" + k + \" c\"\n );\n stream.push(kc + \" -\" + k + \" \" + k + \" -\" + kc + \" \" + k + \" 0 c\");\n stream.push(\"f\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n }\n },\n\n Cross: {\n /**\n * Creates the Actual AppearanceDictionary-References\n *\n * @param {string} name\n * @returns {Object}\n * @ignore\n */\n createAppearanceStream: function(name) {\n var appearanceStreamContent = {\n D: {\n Off: AcroFormAppearance.RadioButton.Cross.OffPushDown\n },\n N: {}\n };\n appearanceStreamContent.N[name] =\n AcroFormAppearance.RadioButton.Cross.YesNormal;\n appearanceStreamContent.D[name] =\n AcroFormAppearance.RadioButton.Cross.YesPushDown;\n return appearanceStreamContent;\n },\n getCA: function() {\n return \"8\";\n },\n\n YesNormal: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n var cross = AcroFormAppearance.internal.calculateCross(formObject);\n stream.push(\"q\");\n stream.push(\n \"1 1 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject) - 2) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject) - 2) +\n \" re\"\n );\n stream.push(\"W\");\n stream.push(\"n\");\n stream.push(f2(cross.x1.x) + \" \" + f2(cross.x1.y) + \" m\");\n stream.push(f2(cross.x2.x) + \" \" + f2(cross.x2.y) + \" l\");\n stream.push(f2(cross.x4.x) + \" \" + f2(cross.x4.y) + \" m\");\n stream.push(f2(cross.x3.x) + \" \" + f2(cross.x3.y) + \" l\");\n stream.push(\"s\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n YesPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var cross = AcroFormAppearance.internal.calculateCross(formObject);\n var stream = [];\n stream.push(\"0.749023 g\");\n stream.push(\n \"0 0 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject)) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject)) +\n \" re\"\n );\n stream.push(\"f\");\n stream.push(\"q\");\n stream.push(\n \"1 1 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject) - 2) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject) - 2) +\n \" re\"\n );\n stream.push(\"W\");\n stream.push(\"n\");\n stream.push(f2(cross.x1.x) + \" \" + f2(cross.x1.y) + \" m\");\n stream.push(f2(cross.x2.x) + \" \" + f2(cross.x2.y) + \" l\");\n stream.push(f2(cross.x4.x) + \" \" + f2(cross.x4.y) + \" m\");\n stream.push(f2(cross.x3.x) + \" \" + f2(cross.x3.y) + \" l\");\n stream.push(\"s\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n OffPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n stream.push(\"0.749023 g\");\n stream.push(\n \"0 0 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject)) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject)) +\n \" re\"\n );\n stream.push(\"f\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n }\n }\n },\n\n /**\n * Returns the standard Appearance\n *\n * @returns {AcroFormXObject}\n */\n createDefaultAppearanceStream: function(formObject) {\n // Set Helvetica to Standard Font (size: auto)\n // Color: Black\n var fontKey = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n ).id;\n var encodedColor = formObject.scope.__private__.encodeColorString(\n formObject.color\n );\n var fontSize = formObject.fontSize;\n var result = \"/\" + fontKey + \" \" + fontSize + \" Tf \" + encodedColor;\n return result;\n }\n};\n\nAcroFormAppearance.internal = {\n Bezier_C: 0.551915024494,\n\n calculateCross: function(formObject) {\n var width = AcroFormAppearance.internal.getWidth(formObject);\n var height = AcroFormAppearance.internal.getHeight(formObject);\n var a = Math.min(width, height);\n\n var cross = {\n x1: {\n // upperLeft\n x: (width - a) / 2,\n y: (height - a) / 2 + a // height - borderPadding\n },\n x2: {\n // lowerRight\n x: (width - a) / 2 + a,\n y: (height - a) / 2 // borderPadding\n },\n x3: {\n // lowerLeft\n x: (width - a) / 2,\n y: (height - a) / 2 // borderPadding\n },\n x4: {\n // upperRight\n x: (width - a) / 2 + a,\n y: (height - a) / 2 + a // height - borderPadding\n }\n };\n\n return cross;\n }\n};\nAcroFormAppearance.internal.getWidth = function(formObject) {\n var result = 0;\n if (typeof formObject === \"object\") {\n result = scale(formObject.Rect[2]);\n }\n return result;\n};\nAcroFormAppearance.internal.getHeight = function(formObject) {\n var result = 0;\n if (typeof formObject === \"object\") {\n result = scale(formObject.Rect[3]);\n }\n return result;\n};\n\n// Public:\n\n/**\n * Add an AcroForm-Field to the jsPDF-instance\n *\n * @name addField\n * @function\n * @instance\n * @param {Object} fieldObject\n * @returns {jsPDF}\n */\nvar addField = (jsPDFAPI.addField = function(fieldObject) {\n initializeAcroForm(this, fieldObject);\n\n if (fieldObject instanceof AcroFormField) {\n putForm(fieldObject);\n } else {\n throw new Error(\"Invalid argument passed to jsPDF.addField.\");\n }\n fieldObject.page = fieldObject.scope.internal.getCurrentPageInfo().pageNumber;\n return this;\n});\n\njsPDFAPI.AcroFormChoiceField = AcroFormChoiceField;\njsPDFAPI.AcroFormListBox = AcroFormListBox;\njsPDFAPI.AcroFormComboBox = AcroFormComboBox;\njsPDFAPI.AcroFormEditBox = AcroFormEditBox;\njsPDFAPI.AcroFormButton = AcroFormButton;\njsPDFAPI.AcroFormPushButton = AcroFormPushButton;\njsPDFAPI.AcroFormRadioButton = AcroFormRadioButton;\njsPDFAPI.AcroFormCheckBox = AcroFormCheckBox;\njsPDFAPI.AcroFormTextField = AcroFormTextField;\njsPDFAPI.AcroFormPasswordField = AcroFormPasswordField;\njsPDFAPI.AcroFormAppearance = AcroFormAppearance;\n\njsPDFAPI.AcroForm = {\n ChoiceField: AcroFormChoiceField,\n ListBox: AcroFormListBox,\n ComboBox: AcroFormComboBox,\n EditBox: AcroFormEditBox,\n Button: AcroFormButton,\n PushButton: AcroFormPushButton,\n RadioButton: AcroFormRadioButton,\n CheckBox: AcroFormCheckBox,\n TextField: AcroFormTextField,\n PasswordField: AcroFormPasswordField,\n Appearance: AcroFormAppearance\n};\n\njsPDF.AcroForm = {\n ChoiceField: AcroFormChoiceField,\n ListBox: AcroFormListBox,\n ComboBox: AcroFormComboBox,\n EditBox: AcroFormEditBox,\n Button: AcroFormButton,\n PushButton: AcroFormPushButton,\n RadioButton: AcroFormRadioButton,\n CheckBox: AcroFormCheckBox,\n TextField: AcroFormTextField,\n PasswordField: AcroFormPasswordField,\n Appearance: AcroFormAppearance\n};\n\nvar AcroForm = jsPDF.AcroForm;\n\nexport {\n AcroForm,\n AcroFormChoiceField,\n AcroFormListBox,\n AcroFormComboBox,\n AcroFormEditBox,\n AcroFormButton,\n AcroFormPushButton,\n AcroFormRadioButton,\n AcroFormCheckBox,\n AcroFormTextField,\n AcroFormPasswordField,\n AcroFormAppearance\n};\n","function toLookup(arr) {\n return arr.reduce(function(lookup, name, index) {\n lookup[name] = index;\n\n return lookup;\n }, {});\n}\n\nvar fontStyleOrder = {\n italic: [\"italic\", \"oblique\", \"normal\"],\n oblique: [\"oblique\", \"italic\", \"normal\"],\n normal: [\"normal\", \"oblique\", \"italic\"]\n};\n\nvar fontStretchOrder = [\n \"ultra-condensed\",\n \"extra-condensed\",\n \"condensed\",\n \"semi-condensed\",\n \"normal\",\n \"semi-expanded\",\n \"expanded\",\n \"extra-expanded\",\n \"ultra-expanded\"\n];\n\n// For a given font-stretch value, we need to know where to start our search\n// from in the fontStretchOrder list.\nvar fontStretchLookup = toLookup(fontStretchOrder);\n\nvar fontWeights = [100, 200, 300, 400, 500, 600, 700, 800, 900];\nvar fontWeightsLookup = toLookup(fontWeights);\n\nfunction normalizeFontStretch(stretch) {\n stretch = stretch || \"normal\";\n\n return typeof fontStretchLookup[stretch] === \"number\" ? stretch : \"normal\";\n}\n\nfunction normalizeFontStyle(style) {\n style = style || \"normal\";\n\n return fontStyleOrder[style] ? style : \"normal\";\n}\n\nfunction normalizeFontWeight(weight) {\n if (!weight) {\n return 400;\n }\n\n if (typeof weight === \"number\") {\n // Ignore values which aren't valid font-weights.\n return weight >= 100 && weight <= 900 && weight % 100 === 0 ? weight : 400;\n }\n\n if (/^\\d00$/.test(weight)) {\n return parseInt(weight);\n }\n\n switch (weight) {\n case \"bold\":\n return 700;\n\n case \"normal\":\n default:\n return 400;\n }\n}\n\nexport function normalizeFontFace(fontFace) {\n var family = fontFace.family.replace(/\"|'/g, \"\").toLowerCase();\n\n var style = normalizeFontStyle(fontFace.style);\n var weight = normalizeFontWeight(fontFace.weight);\n var stretch = normalizeFontStretch(fontFace.stretch);\n\n return {\n family: family,\n style: style,\n weight: weight,\n stretch: stretch,\n src: fontFace.src || [],\n\n // The ref property maps this font-face to the font\n // added by the .addFont() method.\n ref: fontFace.ref || {\n name: family,\n style: [stretch, style, weight].join(\" \")\n }\n };\n}\n\n/**\n * Turns a list of font-faces into a map, for easier lookup when resolving\n * fonts.\n * @private\n */\nexport function buildFontFaceMap(fontFaces) {\n var map = {};\n\n for (var i = 0; i < fontFaces.length; ++i) {\n var normalized = normalizeFontFace(fontFaces[i]);\n\n var name = normalized.family;\n var stretch = normalized.stretch;\n var style = normalized.style;\n var weight = normalized.weight;\n\n map[name] = map[name] || {};\n\n map[name][stretch] = map[name][stretch] || {};\n map[name][stretch][style] = map[name][stretch][style] || {};\n map[name][stretch][style][weight] = normalized;\n }\n\n return map;\n}\n\n/**\n * Searches a map of stretches, weights, etc. in the given direction and\n * then, if no match has been found, in the opposite directions.\n *\n * @param {Object.} matchingSet A map of the various font variations.\n * @param {any[]} order The order of the different variations\n * @param {number} pivot The starting point of the search in the order list.\n * @param {number} dir The initial direction of the search (desc = -1, asc = 1)\n * @private\n */\n\nfunction searchFromPivot(matchingSet, order, pivot, dir) {\n var i;\n\n for (i = pivot; i >= 0 && i < order.length; i += dir) {\n if (matchingSet[order[i]]) {\n return matchingSet[order[i]];\n }\n }\n\n for (i = pivot; i >= 0 && i < order.length; i -= dir) {\n if (matchingSet[order[i]]) {\n return matchingSet[order[i]];\n }\n }\n}\n\nfunction resolveFontStretch(stretch, matchingSet) {\n if (matchingSet[stretch]) {\n return matchingSet[stretch];\n }\n\n var pivot = fontStretchLookup[stretch];\n\n // If the font-stretch value is normal or more condensed, we want to\n // start with a descending search, otherwise we should do ascending.\n var dir = pivot <= fontStretchLookup[\"normal\"] ? -1 : 1;\n var match = searchFromPivot(matchingSet, fontStretchOrder, pivot, dir);\n\n if (!match) {\n // Since a font-family cannot exist without having at least one stretch value\n // we should never reach this point.\n throw new Error(\n \"Could not find a matching font-stretch value for \" + stretch\n );\n }\n\n return match;\n}\n\nfunction resolveFontStyle(fontStyle, matchingSet) {\n if (matchingSet[fontStyle]) {\n return matchingSet[fontStyle];\n }\n\n var ordering = fontStyleOrder[fontStyle];\n\n for (var i = 0; i < ordering.length; ++i) {\n if (matchingSet[ordering[i]]) {\n return matchingSet[ordering[i]];\n }\n }\n\n // Since a font-family cannot exist without having at least one style value\n // we should never reach this point.\n throw new Error(\"Could not find a matching font-style for \" + fontStyle);\n}\n\nfunction resolveFontWeight(weight, matchingSet) {\n if (matchingSet[weight]) {\n return matchingSet[weight];\n }\n\n if (weight === 400 && matchingSet[500]) {\n return matchingSet[500];\n }\n\n if (weight === 500 && matchingSet[400]) {\n return matchingSet[400];\n }\n\n var pivot = fontWeightsLookup[weight];\n\n // If the font-stretch value is normal or more condensed, we want to\n // start with a descending search, otherwise we should do ascending.\n var dir = weight < 400 ? -1 : 1;\n var match = searchFromPivot(matchingSet, fontWeights, pivot, dir);\n\n if (!match) {\n // Since a font-family cannot exist without having at least one stretch value\n // we should never reach this point.\n throw new Error(\n \"Could not find a matching font-weight for value \" + weight\n );\n }\n\n return match;\n}\n\nvar defaultGenericFontFamilies = {\n \"sans-serif\": \"helvetica\",\n fixed: \"courier\",\n monospace: \"courier\",\n terminal: \"courier\",\n cursive: \"times\",\n fantasy: \"times\",\n serif: \"times\"\n};\n\nvar systemFonts = {\n caption: \"times\",\n icon: \"times\",\n menu: \"times\",\n \"message-box\": \"times\",\n \"small-caption\": \"times\",\n \"status-bar\": \"times\"\n};\n\nfunction ruleToString(rule) {\n return [rule.stretch, rule.style, rule.weight, rule.family].join(\" \");\n}\n\nexport function resolveFontFace(fontFaceMap, rules, opts) {\n opts = opts || {};\n\n var defaultFontFamily = opts.defaultFontFamily || \"times\";\n var genericFontFamilies = Object.assign(\n {},\n defaultGenericFontFamilies,\n opts.genericFontFamilies || {}\n );\n\n var rule = null;\n var matches = null;\n\n for (var i = 0; i < rules.length; ++i) {\n rule = normalizeFontFace(rules[i]);\n\n if (genericFontFamilies[rule.family]) {\n rule.family = genericFontFamilies[rule.family];\n }\n\n if (fontFaceMap.hasOwnProperty(rule.family)) {\n matches = fontFaceMap[rule.family];\n\n break;\n }\n }\n\n // Always fallback to a known font family.\n matches = matches || fontFaceMap[defaultFontFamily];\n\n if (!matches) {\n // At this point we should definitiely have a font family, but if we\n // don't there is something wrong with our configuration\n throw new Error(\n \"Could not find a font-family for the rule '\" +\n ruleToString(rule) +\n \"' and default family '\" +\n defaultFontFamily +\n \"'.\"\n );\n }\n\n matches = resolveFontStretch(rule.stretch, matches);\n matches = resolveFontStyle(rule.style, matches);\n matches = resolveFontWeight(rule.weight, matches);\n\n if (!matches) {\n // We should've fount\n throw new Error(\n \"Failed to resolve a font for the rule '\" + ruleToString(rule) + \"'.\"\n );\n }\n\n return matches;\n}\n\n/**\n * Builds a style id for use with the addFont() method.\n * @param {FontFace} font\n * @private\n */\nexport function toStyleName(font) {\n return [font.weight, font.style, font.stretch].join(\" \");\n}\n\nfunction eatWhiteSpace(input) {\n return input.trimLeft();\n}\n\nfunction parseQuotedFontFamily(input, quote) {\n var index = 0;\n\n while (index < input.length) {\n var current = input.charAt(index);\n\n if (current === quote) {\n return [input.substring(0, index), input.substring(index + 1)];\n }\n\n index += 1;\n }\n\n // Unexpected end of input\n return null;\n}\n\nfunction parseNonQuotedFontFamily(input) {\n // It implements part of the identifier parser here: https://www.w3.org/TR/CSS21/syndata.html#value-def-identifier\n //\n // NOTE: This parser pretty much ignores escaped identifiers and that there is a thing called unicode.\n //\n // Breakdown of regexp:\n // -[a-z_] - when identifier starts with a hyphen, you're not allowed to have another hyphen or a digit\n // [a-z_] - allow a-z and underscore at beginning of input\n // [a-z0-9_-]* - after that, anything goes\n var match = input.match(/^(-[a-z_]|[a-z_])[a-z0-9_-]*/i);\n\n // non quoted value contains illegal characters\n if (match === null) {\n return null;\n }\n\n return [match[0], input.substring(match[0].length)];\n}\n\nvar defaultFont = [\"times\"];\n\nexport function parseFontFamily(input) {\n var result = [];\n var ch, parsed;\n var remaining = input.trim();\n\n if (remaining === \"\") {\n return defaultFont;\n }\n\n if (remaining in systemFonts) {\n return [systemFonts[remaining]];\n }\n\n while (remaining !== \"\") {\n parsed = null;\n remaining = eatWhiteSpace(remaining);\n ch = remaining.charAt(0);\n\n switch (ch) {\n case '\"':\n case \"'\":\n parsed = parseQuotedFontFamily(remaining.substring(1), ch);\n break;\n\n default:\n parsed = parseNonQuotedFontFamily(remaining);\n break;\n }\n\n if (parsed === null) {\n return defaultFont;\n }\n\n result.push(parsed[0]);\n\n remaining = eatWhiteSpace(parsed[1]);\n\n // We expect end of input or a comma separator here\n if (remaining !== \"\" && remaining.charAt(0) !== \",\") {\n return defaultFont;\n }\n\n remaining = remaining.replace(/^,/, \"\");\n }\n\n return result;\n}\n","/** @license\n * jsPDF addImage plugin\n * Copyright (c) 2012 Jason Siefken, https://github.com/siefkenj/\n * 2013 Chris Dowling, https://github.com/gingerchris\n * 2013 Trinh Ho, https://github.com/ineedfat\n * 2013 Edwin Alejandro Perez, https://github.com/eaparango\n * 2013 Norah Smith, https://github.com/burnburnrocket\n * 2014 Diego Casorran, https://github.com/diegocr\n * 2014 James Robb, https://github.com/jamesbrobb\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n/**\n * @name addImage\n * @module\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { atob, btoa } from \"../libs/AtobBtoa.js\";\n\n(function(jsPDFAPI) {\n \"use strict\";\n\n var namespace = \"addImage_\";\n jsPDFAPI.__addimage__ = {};\n\n var UNKNOWN = \"UNKNOWN\";\n\n // Heuristic selection of a good batch for large array .apply. Not limiting make the call overflow.\n // With too small batch iteration will be slow as more calls are made,\n // higher values cause larger and slower garbage collection.\n var ARRAY_APPLY_BATCH = 8192;\n\n var imageFileTypeHeaders = {\n PNG: [[0x89, 0x50, 0x4e, 0x47]],\n TIFF: [\n [0x4d, 0x4d, 0x00, 0x2a], //Motorola\n [0x49, 0x49, 0x2a, 0x00] //Intel\n ],\n JPEG: [\n [\n 0xff,\n 0xd8,\n 0xff,\n 0xe0,\n undefined,\n undefined,\n 0x4a,\n 0x46,\n 0x49,\n 0x46,\n 0x00\n ], //JFIF\n [\n 0xff,\n 0xd8,\n 0xff,\n 0xe1,\n undefined,\n undefined,\n 0x45,\n 0x78,\n 0x69,\n 0x66,\n 0x00,\n 0x00\n ], //Exif\n [0xff, 0xd8, 0xff, 0xdb], //JPEG RAW\n [0xff, 0xd8, 0xff, 0xee] //EXIF RAW\n ],\n JPEG2000: [[0x00, 0x00, 0x00, 0x0c, 0x6a, 0x50, 0x20, 0x20]],\n GIF87a: [[0x47, 0x49, 0x46, 0x38, 0x37, 0x61]],\n GIF89a: [[0x47, 0x49, 0x46, 0x38, 0x39, 0x61]],\n WEBP: [\n [\n 0x52,\n 0x49,\n 0x46,\n 0x46,\n undefined,\n undefined,\n undefined,\n undefined,\n 0x57,\n 0x45,\n 0x42,\n 0x50\n ]\n ],\n BMP: [\n [0x42, 0x4d], //BM - Windows 3.1x, 95, NT, ... etc.\n [0x42, 0x41], //BA - OS/2 struct bitmap array\n [0x43, 0x49], //CI - OS/2 struct color icon\n [0x43, 0x50], //CP - OS/2 const color pointer\n [0x49, 0x43], //IC - OS/2 struct icon\n [0x50, 0x54] //PT - OS/2 pointer\n ]\n };\n\n /**\n * Recognize filetype of Image by magic-bytes\n *\n * https://en.wikipedia.org/wiki/List_of_file_signatures\n *\n * @name getImageFileTypeByImageData\n * @public\n * @function\n * @param {string|arraybuffer} imageData imageData as binary String or arraybuffer\n * @param {string} format format of file if filetype-recognition fails, e.g. 'JPEG'\n *\n * @returns {string} filetype of Image\n */\n var getImageFileTypeByImageData = (jsPDFAPI.__addimage__.getImageFileTypeByImageData = function(\n imageData,\n fallbackFormat\n ) {\n fallbackFormat = fallbackFormat || UNKNOWN;\n var i;\n var j;\n var result = UNKNOWN;\n var headerSchemata;\n var compareResult;\n var fileType;\n\n if (\n fallbackFormat === \"RGBA\" ||\n (imageData.data !== undefined &&\n imageData.data instanceof Uint8ClampedArray &&\n \"height\" in imageData &&\n \"width\" in imageData)\n ) {\n return \"RGBA\";\n }\n\n if (isArrayBufferView(imageData)) {\n for (fileType in imageFileTypeHeaders) {\n headerSchemata = imageFileTypeHeaders[fileType];\n for (i = 0; i < headerSchemata.length; i += 1) {\n compareResult = true;\n for (j = 0; j < headerSchemata[i].length; j += 1) {\n if (headerSchemata[i][j] === undefined) {\n continue;\n }\n if (headerSchemata[i][j] !== imageData[j]) {\n compareResult = false;\n break;\n }\n }\n if (compareResult === true) {\n result = fileType;\n break;\n }\n }\n }\n } else {\n for (fileType in imageFileTypeHeaders) {\n headerSchemata = imageFileTypeHeaders[fileType];\n for (i = 0; i < headerSchemata.length; i += 1) {\n compareResult = true;\n for (j = 0; j < headerSchemata[i].length; j += 1) {\n if (headerSchemata[i][j] === undefined) {\n continue;\n }\n if (headerSchemata[i][j] !== imageData.charCodeAt(j)) {\n compareResult = false;\n break;\n }\n }\n if (compareResult === true) {\n result = fileType;\n break;\n }\n }\n }\n }\n\n if (result === UNKNOWN && fallbackFormat !== UNKNOWN) {\n result = fallbackFormat;\n }\n return result;\n });\n\n // Image functionality ported from pdf.js\n var putImage = function(image) {\n var out = this.internal.write;\n var putStream = this.internal.putStream;\n var getFilters = this.internal.getFilters;\n\n var filter = getFilters();\n while (filter.indexOf(\"FlateEncode\") !== -1) {\n filter.splice(filter.indexOf(\"FlateEncode\"), 1);\n }\n\n image.objectId = this.internal.newObject();\n\n var additionalKeyValues = [];\n additionalKeyValues.push({ key: \"Type\", value: \"/XObject\" });\n additionalKeyValues.push({ key: \"Subtype\", value: \"/Image\" });\n additionalKeyValues.push({ key: \"Width\", value: image.width });\n additionalKeyValues.push({ key: \"Height\", value: image.height });\n\n if (image.colorSpace === color_spaces.INDEXED) {\n additionalKeyValues.push({\n key: \"ColorSpace\",\n value:\n \"[/Indexed /DeviceRGB \" +\n // if an indexed png defines more than one colour with transparency, we've created a sMask\n (image.palette.length / 3 - 1) +\n \" \" +\n (\"sMask\" in image && typeof image.sMask !== \"undefined\"\n ? image.objectId + 2\n : image.objectId + 1) +\n \" 0 R]\"\n });\n } else {\n additionalKeyValues.push({\n key: \"ColorSpace\",\n value: \"/\" + image.colorSpace\n });\n if (image.colorSpace === color_spaces.DEVICE_CMYK) {\n additionalKeyValues.push({ key: \"Decode\", value: \"[1 0 1 0 1 0 1 0]\" });\n }\n }\n additionalKeyValues.push({\n key: \"BitsPerComponent\",\n value: image.bitsPerComponent\n });\n if (\n \"decodeParameters\" in image &&\n typeof image.decodeParameters !== \"undefined\"\n ) {\n additionalKeyValues.push({\n key: \"DecodeParms\",\n value: \"<<\" + image.decodeParameters + \">>\"\n });\n }\n if (\"transparency\" in image && Array.isArray(image.transparency)) {\n var transparency = \"\",\n i = 0,\n len = image.transparency.length;\n for (; i < len; i++)\n transparency +=\n image.transparency[i] + \" \" + image.transparency[i] + \" \";\n\n additionalKeyValues.push({\n key: \"Mask\",\n value: \"[\" + transparency + \"]\"\n });\n }\n if (typeof image.sMask !== \"undefined\") {\n additionalKeyValues.push({\n key: \"SMask\",\n value: image.objectId + 1 + \" 0 R\"\n });\n }\n\n var alreadyAppliedFilters =\n typeof image.filter !== \"undefined\" ? [\"/\" + image.filter] : undefined;\n\n putStream({\n data: image.data,\n additionalKeyValues: additionalKeyValues,\n alreadyAppliedFilters: alreadyAppliedFilters,\n objectId: image.objectId\n });\n\n out(\"endobj\");\n\n // Soft mask\n if (\"sMask\" in image && typeof image.sMask !== \"undefined\") {\n var decodeParameters =\n \"/Predictor \" +\n image.predictor +\n \" /Colors 1 /BitsPerComponent \" +\n image.bitsPerComponent +\n \" /Columns \" +\n image.width;\n var sMask = {\n width: image.width,\n height: image.height,\n colorSpace: \"DeviceGray\",\n bitsPerComponent: image.bitsPerComponent,\n decodeParameters: decodeParameters,\n data: image.sMask\n };\n if (\"filter\" in image) {\n sMask.filter = image.filter;\n }\n putImage.call(this, sMask);\n }\n\n //Palette\n if (image.colorSpace === color_spaces.INDEXED) {\n var objId = this.internal.newObject();\n //out('<< /Filter / ' + img['f'] +' /Length ' + img['pal'].length + '>>');\n //putStream(zlib.compress(img['pal']));\n putStream({\n data: arrayBufferToBinaryString(new Uint8Array(image.palette)),\n objectId: objId\n });\n out(\"endobj\");\n }\n };\n var putResourcesCallback = function() {\n var images = this.internal.collections[namespace + \"images\"];\n for (var i in images) {\n putImage.call(this, images[i]);\n }\n };\n var putXObjectsDictCallback = function() {\n var images = this.internal.collections[namespace + \"images\"],\n out = this.internal.write,\n image;\n for (var i in images) {\n image = images[i];\n out(\"/I\" + image.index, image.objectId, \"0\", \"R\");\n }\n };\n\n var checkCompressValue = function(value) {\n if (value && typeof value === \"string\") value = value.toUpperCase();\n return value in jsPDFAPI.image_compression ? value : image_compression.NONE;\n };\n\n var initialize = function() {\n if (!this.internal.collections[namespace + \"images\"]) {\n this.internal.collections[namespace + \"images\"] = {};\n this.internal.events.subscribe(\"putResources\", putResourcesCallback);\n this.internal.events.subscribe(\"putXobjectDict\", putXObjectsDictCallback);\n }\n };\n\n var getImages = function() {\n var images = this.internal.collections[namespace + \"images\"];\n initialize.call(this);\n return images;\n };\n var getImageIndex = function() {\n return Object.keys(this.internal.collections[namespace + \"images\"]).length;\n };\n var notDefined = function(value) {\n return typeof value === \"undefined\" || value === null || value.length === 0;\n };\n var generateAliasFromImageData = function(imageData) {\n if (typeof imageData === \"string\" || isArrayBufferView(imageData)) {\n return sHashCode(imageData);\n } else if (isArrayBufferView(imageData.data)) {\n return sHashCode(imageData.data);\n }\n\n return null;\n };\n\n var isImageTypeSupported = function(type) {\n return typeof jsPDFAPI[\"process\" + type.toUpperCase()] === \"function\";\n };\n\n var isDOMElement = function(object) {\n return typeof object === \"object\" && object.nodeType === 1;\n };\n\n var getImageDataFromElement = function(element, format) {\n //if element is an image which uses data url definition, just return the dataurl\n if (element.nodeName === \"IMG\" && element.hasAttribute(\"src\")) {\n var src = \"\" + element.getAttribute(\"src\");\n\n //is base64 encoded dataUrl, directly process it\n if (src.indexOf(\"data:image/\") === 0) {\n return atob(\n unescape(src)\n .split(\"base64,\")\n .pop()\n );\n }\n\n //it is probably an url, try to load it\n var tmpImageData = jsPDFAPI.loadFile(src, true);\n if (tmpImageData !== undefined) {\n return tmpImageData;\n }\n }\n\n if (element.nodeName === \"CANVAS\") {\n if (element.width === 0 || element.height === 0) {\n throw new Error(\n \"Given canvas must have data. Canvas width: \" +\n element.width +\n \", height: \" +\n element.height\n );\n }\n var mimeType;\n switch (format) {\n case \"PNG\":\n mimeType = \"image/png\";\n break;\n case \"WEBP\":\n mimeType = \"image/webp\";\n break;\n case \"JPEG\":\n case \"JPG\":\n default:\n mimeType = \"image/jpeg\";\n break;\n }\n return atob(\n element\n .toDataURL(mimeType, 1.0)\n .split(\"base64,\")\n .pop()\n );\n }\n };\n\n var checkImagesForAlias = function(alias) {\n var images = this.internal.collections[namespace + \"images\"];\n if (images) {\n for (var e in images) {\n if (alias === images[e].alias) {\n return images[e];\n }\n }\n }\n };\n\n var determineWidthAndHeight = function(width, height, image) {\n if (!width && !height) {\n width = -96;\n height = -96;\n }\n if (width < 0) {\n width = (-1 * image.width * 72) / width / this.internal.scaleFactor;\n }\n if (height < 0) {\n height = (-1 * image.height * 72) / height / this.internal.scaleFactor;\n }\n if (width === 0) {\n width = (height * image.width) / image.height;\n }\n if (height === 0) {\n height = (width * image.height) / image.width;\n }\n\n return [width, height];\n };\n\n var writeImageToPDF = function(x, y, width, height, image, rotation) {\n var dims = determineWidthAndHeight.call(this, width, height, image),\n coord = this.internal.getCoordinateString,\n vcoord = this.internal.getVerticalCoordinateString;\n\n var images = getImages.call(this);\n\n width = dims[0];\n height = dims[1];\n images[image.index] = image;\n\n if (rotation) {\n rotation *= Math.PI / 180;\n var c = Math.cos(rotation);\n var s = Math.sin(rotation);\n //like in pdf Reference do it 4 digits instead of 2\n var f4 = function(number) {\n return number.toFixed(4);\n };\n var rotationTransformationMatrix = [\n f4(c),\n f4(s),\n f4(s * -1),\n f4(c),\n 0,\n 0,\n \"cm\"\n ];\n }\n this.internal.write(\"q\"); //Save graphics state\n if (rotation) {\n this.internal.write(\n [1, \"0\", \"0\", 1, coord(x), vcoord(y + height), \"cm\"].join(\" \")\n ); //Translate\n this.internal.write(rotationTransformationMatrix.join(\" \")); //Rotate\n this.internal.write(\n [coord(width), \"0\", \"0\", coord(height), \"0\", \"0\", \"cm\"].join(\" \")\n ); //Scale\n } else {\n this.internal.write(\n [\n coord(width),\n \"0\",\n \"0\",\n coord(height),\n coord(x),\n vcoord(y + height),\n \"cm\"\n ].join(\" \")\n ); //Translate and Scale\n }\n\n if (this.isAdvancedAPI()) {\n // draw image bottom up when in \"advanced\" API mode\n this.internal.write([1, 0, 0, -1, 0, 0, \"cm\"].join(\" \"));\n }\n\n this.internal.write(\"/I\" + image.index + \" Do\"); //Paint Image\n this.internal.write(\"Q\"); //Restore graphics state\n };\n\n /**\n * COLOR SPACES\n */\n var color_spaces = (jsPDFAPI.color_spaces = {\n DEVICE_RGB: \"DeviceRGB\",\n DEVICE_GRAY: \"DeviceGray\",\n DEVICE_CMYK: \"DeviceCMYK\",\n CAL_GREY: \"CalGray\",\n CAL_RGB: \"CalRGB\",\n LAB: \"Lab\",\n ICC_BASED: \"ICCBased\",\n INDEXED: \"Indexed\",\n PATTERN: \"Pattern\",\n SEPARATION: \"Separation\",\n DEVICE_N: \"DeviceN\"\n });\n\n /**\n * DECODE METHODS\n */\n jsPDFAPI.decode = {\n DCT_DECODE: \"DCTDecode\",\n FLATE_DECODE: \"FlateDecode\",\n LZW_DECODE: \"LZWDecode\",\n JPX_DECODE: \"JPXDecode\",\n JBIG2_DECODE: \"JBIG2Decode\",\n ASCII85_DECODE: \"ASCII85Decode\",\n ASCII_HEX_DECODE: \"ASCIIHexDecode\",\n RUN_LENGTH_DECODE: \"RunLengthDecode\",\n CCITT_FAX_DECODE: \"CCITTFaxDecode\"\n };\n\n /**\n * IMAGE COMPRESSION TYPES\n */\n var image_compression = (jsPDFAPI.image_compression = {\n NONE: \"NONE\",\n FAST: \"FAST\",\n MEDIUM: \"MEDIUM\",\n SLOW: \"SLOW\"\n });\n\n /**\n * @name sHashCode\n * @function\n * @param {string} data\n * @returns {string}\n */\n var sHashCode = (jsPDFAPI.__addimage__.sHashCode = function(data) {\n var hash = 0,\n i,\n len;\n\n if (typeof data === \"string\") {\n len = data.length;\n for (i = 0; i < len; i++) {\n hash = (hash << 5) - hash + data.charCodeAt(i);\n hash |= 0; // Convert to 32bit integer\n }\n } else if (isArrayBufferView(data)) {\n len = data.byteLength / 2;\n for (i = 0; i < len; i++) {\n hash = (hash << 5) - hash + data[i];\n hash |= 0; // Convert to 32bit integer\n }\n }\n return hash;\n });\n\n /**\n * Validates if given String is a valid Base64-String\n *\n * @name validateStringAsBase64\n * @public\n * @function\n * @param {String} possible Base64-String\n *\n * @returns {boolean}\n */\n var validateStringAsBase64 = (jsPDFAPI.__addimage__.validateStringAsBase64 = function(\n possibleBase64String\n ) {\n possibleBase64String = possibleBase64String || \"\";\n possibleBase64String.toString().trim();\n\n var result = true;\n\n if (possibleBase64String.length === 0) {\n result = false;\n }\n\n if (possibleBase64String.length % 4 !== 0) {\n result = false;\n }\n\n if (\n /^[A-Za-z0-9+/]+$/.test(\n possibleBase64String.substr(0, possibleBase64String.length - 2)\n ) === false\n ) {\n result = false;\n }\n\n if (\n /^[A-Za-z0-9/][A-Za-z0-9+/]|[A-Za-z0-9+/]=|==$/.test(\n possibleBase64String.substr(-2)\n ) === false\n ) {\n result = false;\n }\n return result;\n });\n\n /**\n * Strips out and returns info from a valid base64 data URI\n *\n * @name extractImageFromDataUrl\n * @function\n * @param {string} dataUrl a valid data URI of format 'data:[][;base64],'\n * @returns {Array}an Array containing the following\n * [0] the complete data URI\n * [1] \n * [2] format - the second part of the mime-type i.e 'png' in 'image/png'\n * [4] \n */\n var extractImageFromDataUrl = (jsPDFAPI.__addimage__.extractImageFromDataUrl = function(\n dataUrl\n ) {\n dataUrl = dataUrl || \"\";\n var dataUrlParts = dataUrl.split(\"base64,\");\n var result = null;\n\n if (dataUrlParts.length === 2) {\n var extractedInfo = /^data:(\\w*\\/\\w*);*(charset=(?!charset=)[\\w=-]*)*;*$/.exec(\n dataUrlParts[0]\n );\n if (Array.isArray(extractedInfo)) {\n result = {\n mimeType: extractedInfo[1],\n charset: extractedInfo[2],\n data: dataUrlParts[1]\n };\n }\n }\n return result;\n });\n\n /**\n * Check to see if ArrayBuffer is supported\n *\n * @name supportsArrayBuffer\n * @function\n * @returns {boolean}\n */\n var supportsArrayBuffer = (jsPDFAPI.__addimage__.supportsArrayBuffer = function() {\n return (\n typeof ArrayBuffer !== \"undefined\" && typeof Uint8Array !== \"undefined\"\n );\n });\n\n /**\n * Tests supplied object to determine if ArrayBuffer\n *\n * @name isArrayBuffer\n * @function\n * @param {Object} object an Object\n *\n * @returns {boolean}\n */\n jsPDFAPI.__addimage__.isArrayBuffer = function(object) {\n return supportsArrayBuffer() && object instanceof ArrayBuffer;\n };\n\n /**\n * Tests supplied object to determine if it implements the ArrayBufferView (TypedArray) interface\n *\n * @name isArrayBufferView\n * @function\n * @param {Object} object an Object\n * @returns {boolean}\n */\n var isArrayBufferView = (jsPDFAPI.__addimage__.isArrayBufferView = function(\n object\n ) {\n return (\n supportsArrayBuffer() &&\n typeof Uint32Array !== \"undefined\" &&\n (object instanceof Int8Array ||\n object instanceof Uint8Array ||\n (typeof Uint8ClampedArray !== \"undefined\" &&\n object instanceof Uint8ClampedArray) ||\n object instanceof Int16Array ||\n object instanceof Uint16Array ||\n object instanceof Int32Array ||\n object instanceof Uint32Array ||\n object instanceof Float32Array ||\n object instanceof Float64Array)\n );\n });\n\n /**\n * Convert Binary String to ArrayBuffer\n *\n * @name binaryStringToUint8Array\n * @public\n * @function\n * @param {string} BinaryString with ImageData\n * @returns {Uint8Array}\n */\n var binaryStringToUint8Array = (jsPDFAPI.__addimage__.binaryStringToUint8Array = function(\n binary_string\n ) {\n var len = binary_string.length;\n var bytes = new Uint8Array(len);\n for (var i = 0; i < len; i++) {\n bytes[i] = binary_string.charCodeAt(i);\n }\n return bytes;\n });\n\n /**\n * Convert the Buffer to a Binary String\n *\n * @name arrayBufferToBinaryString\n * @public\n * @function\n * @param {ArrayBuffer|ArrayBufferView} ArrayBuffer buffer or bufferView with ImageData\n *\n * @returns {String}\n */\n var arrayBufferToBinaryString = (jsPDFAPI.__addimage__.arrayBufferToBinaryString = function(\n buffer\n ) {\n var out = \"\";\n // There are calls with both ArrayBuffer and already converted Uint8Array or other BufferView.\n // Do not copy the array if input is already an array.\n var buf = isArrayBufferView(buffer) ? buffer : new Uint8Array(buffer);\n for (var i = 0; i < buf.length; i += ARRAY_APPLY_BATCH) {\n // Limit the amount of characters being parsed to prevent overflow.\n // Note that while TextDecoder would be faster, it does not have the same\n // functionality as fromCharCode with any provided encodings as of 3/2021.\n out += String.fromCharCode.apply(\n null,\n buf.subarray(i, i + ARRAY_APPLY_BATCH)\n );\n }\n return out;\n });\n\n /**\n * Possible parameter for addImage, an RGBA buffer with size.\n *\n * @typedef {Object} RGBAData\n * @property {Uint8ClampedArray} data - Single dimensional array of RGBA values. For example from canvas getImageData.\n * @property {number} width - Image width as the data does not carry this information in itself.\n * @property {number} height - Image height as the data does not carry this information in itself.\n */\n\n /**\n * Adds an Image to the PDF.\n *\n * @name addImage\n * @public\n * @function\n * @param {string|HTMLImageElement|HTMLCanvasElement|Uint8Array|RGBAData} imageData imageData as base64 encoded DataUrl or Image-HTMLElement or Canvas-HTMLElement or object containing RGBA array (like output from canvas.getImageData).\n * @param {string} format format of file if filetype-recognition fails or in case of a Canvas-Element needs to be specified (default for Canvas is JPEG), e.g. 'JPEG', 'PNG', 'WEBP'\n * @param {number} x x Coordinate (in units declared at inception of PDF document) against left edge of the page\n * @param {number} y y Coordinate (in units declared at inception of PDF document) against upper edge of the page\n * @param {number} width width of the image (in units declared at inception of PDF document)\n * @param {number} height height of the Image (in units declared at inception of PDF document)\n * @param {string} alias alias of the image (if used multiple times)\n * @param {string} compression compression of the generated JPEG, can have the values 'NONE', 'FAST', 'MEDIUM' and 'SLOW'\n * @param {number} rotation rotation of the image in degrees (0-359)\n *\n * @returns jsPDF\n */\n jsPDFAPI.addImage = function() {\n var imageData, format, x, y, w, h, alias, compression, rotation;\n\n imageData = arguments[0];\n if (typeof arguments[1] === \"number\") {\n format = UNKNOWN;\n x = arguments[1];\n y = arguments[2];\n w = arguments[3];\n h = arguments[4];\n alias = arguments[5];\n compression = arguments[6];\n rotation = arguments[7];\n } else {\n format = arguments[1];\n x = arguments[2];\n y = arguments[3];\n w = arguments[4];\n h = arguments[5];\n alias = arguments[6];\n compression = arguments[7];\n rotation = arguments[8];\n }\n\n if (\n typeof imageData === \"object\" &&\n !isDOMElement(imageData) &&\n \"imageData\" in imageData\n ) {\n var options = imageData;\n\n imageData = options.imageData;\n format = options.format || format || UNKNOWN;\n x = options.x || x || 0;\n y = options.y || y || 0;\n w = options.w || options.width || w;\n h = options.h || options.height || h;\n alias = options.alias || alias;\n compression = options.compression || compression;\n rotation = options.rotation || options.angle || rotation;\n }\n\n //If compression is not explicitly set, determine if we should use compression\n var filter = this.internal.getFilters();\n if (compression === undefined && filter.indexOf(\"FlateEncode\") !== -1) {\n compression = \"SLOW\";\n }\n\n if (isNaN(x) || isNaN(y)) {\n throw new Error(\"Invalid coordinates passed to jsPDF.addImage\");\n }\n\n initialize.call(this);\n\n var image = processImageData.call(\n this,\n imageData,\n format,\n alias,\n compression\n );\n\n writeImageToPDF.call(this, x, y, w, h, image, rotation);\n\n return this;\n };\n\n var processImageData = function(imageData, format, alias, compression) {\n var result, dataAsBinaryString;\n\n if (\n typeof imageData === \"string\" &&\n getImageFileTypeByImageData(imageData) === UNKNOWN\n ) {\n imageData = unescape(imageData);\n var tmpImageData = convertBase64ToBinaryString(imageData, false);\n\n if (tmpImageData !== \"\") {\n imageData = tmpImageData;\n } else {\n tmpImageData = jsPDFAPI.loadFile(imageData, true);\n if (tmpImageData !== undefined) {\n imageData = tmpImageData;\n }\n }\n }\n\n if (isDOMElement(imageData)) {\n imageData = getImageDataFromElement(imageData, format);\n }\n\n format = getImageFileTypeByImageData(imageData, format);\n if (!isImageTypeSupported(format)) {\n throw new Error(\n \"addImage does not support files of type '\" +\n format +\n \"', please ensure that a plugin for '\" +\n format +\n \"' support is added.\"\n );\n }\n\n // now do the heavy lifting\n\n if (notDefined(alias)) {\n alias = generateAliasFromImageData(imageData);\n }\n result = checkImagesForAlias.call(this, alias);\n\n if (!result) {\n if (supportsArrayBuffer()) {\n // no need to convert if imageData is already uint8array\n if (!(imageData instanceof Uint8Array) && format !== \"RGBA\") {\n dataAsBinaryString = imageData;\n imageData = binaryStringToUint8Array(imageData);\n }\n }\n\n result = this[\"process\" + format.toUpperCase()](\n imageData,\n getImageIndex.call(this),\n alias,\n checkCompressValue(compression),\n dataAsBinaryString\n );\n }\n\n if (!result) {\n throw new Error(\"An unknown error occurred whilst processing the image.\");\n }\n return result;\n };\n\n /**\n * @name convertBase64ToBinaryString\n * @function\n * @param {string} stringData\n * @returns {string} binary string\n */\n var convertBase64ToBinaryString = (jsPDFAPI.__addimage__.convertBase64ToBinaryString = function(\n stringData,\n throwError\n ) {\n throwError = typeof throwError === \"boolean\" ? throwError : true;\n var base64Info;\n var imageData = \"\";\n var rawData;\n\n if (typeof stringData === \"string\") {\n base64Info = extractImageFromDataUrl(stringData);\n rawData = base64Info !== null ? base64Info.data : stringData;\n\n try {\n imageData = atob(rawData);\n } catch (e) {\n if (throwError) {\n if (!validateStringAsBase64(rawData)) {\n throw new Error(\n \"Supplied Data is not a valid base64-String jsPDF.convertBase64ToBinaryString \"\n );\n } else {\n throw new Error(\n \"atob-Error in jsPDF.convertBase64ToBinaryString \" + e.message\n );\n }\n }\n }\n }\n return imageData;\n });\n\n /**\n * @name getImageProperties\n * @function\n * @param {Object} imageData\n * @returns {Object}\n */\n jsPDFAPI.getImageProperties = function(imageData) {\n var image;\n var tmpImageData = \"\";\n var format;\n\n if (isDOMElement(imageData)) {\n imageData = getImageDataFromElement(imageData);\n }\n\n if (\n typeof imageData === \"string\" &&\n getImageFileTypeByImageData(imageData) === UNKNOWN\n ) {\n tmpImageData = convertBase64ToBinaryString(imageData, false);\n\n if (tmpImageData === \"\") {\n tmpImageData = jsPDFAPI.loadFile(imageData) || \"\";\n }\n imageData = tmpImageData;\n }\n\n format = getImageFileTypeByImageData(imageData);\n if (!isImageTypeSupported(format)) {\n throw new Error(\n \"addImage does not support files of type '\" +\n format +\n \"', please ensure that a plugin for '\" +\n format +\n \"' support is added.\"\n );\n }\n\n if (supportsArrayBuffer() && !(imageData instanceof Uint8Array)) {\n imageData = binaryStringToUint8Array(imageData);\n }\n\n image = this[\"process\" + format.toUpperCase()](imageData);\n\n if (!image) {\n throw new Error(\"An unknown error occurred whilst processing the image\");\n }\n\n image.fileType = format;\n\n return image;\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\n/**\n * jsPDF Annotations PlugIn\n *\n * There are many types of annotations in a PDF document. Annotations are placed\n * on a page at a particular location. They are not 'attached' to an object.\n *
\n * This plugin current supports
\n *
  • Goto Page (set pageNumber and top in options)\n *
  • Goto Name (set name and top in options)\n *
  • Goto URL (set url in options)\n *

    \n * \tThe destination magnification factor can also be specified when goto is a page number or a named destination. (see documentation below)\n * (set magFactor in options). XYZ is the default.\n *

    \n *

    \n * Links, Text, Popup, and FreeText are supported.\n *

    \n *

    \n * Options In PDF spec Not Implemented Yet\n *

  • link border\n *
  • named target\n *
  • page coordinates\n *
  • destination page scaling and layout\n *
  • actions other than URL and GotoPage\n *
  • background / hover actions\n *

    \n * @name annotations\n * @module\n */\n\n/*\n Destination Magnification Factors\n See PDF 1.3 Page 386 for meanings and options\n\n [supported]\n\tXYZ (options; left top zoom)\n\tFit (no options)\n\tFitH (options: top)\n\tFitV (options: left)\n\n\t[not supported]\n\tFitR\n\tFitB\n\tFitBH\n\tFitBV\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n(function(jsPDFAPI) {\n \"use strict\";\n\n var notEmpty = function(obj) {\n if (typeof obj != \"undefined\") {\n if (obj != \"\") {\n return true;\n }\n }\n };\n\n jsPDF.API.events.push([\n \"addPage\",\n function(addPageData) {\n var pageInfo = this.internal.getPageInfo(addPageData.pageNumber);\n pageInfo.pageContext.annotations = [];\n }\n ]);\n\n jsPDFAPI.events.push([\n \"putPage\",\n function(putPageData) {\n var getHorizontalCoordinateString = this.internal.getCoordinateString;\n var getVerticalCoordinateString = this.internal\n .getVerticalCoordinateString;\n var pageInfo = this.internal.getPageInfoByObjId(putPageData.objId);\n var pageAnnos = putPageData.pageContext.annotations;\n\n var anno, rect, line;\n var found = false;\n for (var a = 0; a < pageAnnos.length && !found; a++) {\n anno = pageAnnos[a];\n switch (anno.type) {\n case \"link\":\n if (\n notEmpty(anno.options.url) ||\n notEmpty(anno.options.pageNumber)\n ) {\n found = true;\n }\n break;\n case \"reference\":\n case \"text\":\n case \"freetext\":\n found = true;\n break;\n }\n }\n if (found == false) {\n return;\n }\n\n this.internal.write(\"/Annots [\");\n for (var i = 0; i < pageAnnos.length; i++) {\n anno = pageAnnos[i];\n var escape = this.internal.pdfEscape;\n var encryptor = this.internal.getEncryptor(putPageData.objId);\n\n switch (anno.type) {\n case \"reference\":\n // References to Widget Annotations (for AcroForm Fields)\n this.internal.write(\" \" + anno.object.objId + \" 0 R \");\n break;\n case \"text\":\n // Create a an object for both the text and the popup\n var objText = this.internal.newAdditionalObject();\n var objPopup = this.internal.newAdditionalObject();\n var encryptorText = this.internal.getEncryptor(objText.objId);\n\n var title = anno.title || \"Note\";\n rect =\n \"/Rect [\" +\n getHorizontalCoordinateString(anno.bounds.x) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y + anno.bounds.h) +\n \" \" +\n getHorizontalCoordinateString(anno.bounds.x + anno.bounds.w) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y) +\n \"] \";\n\n line =\n \"<>\";\n objText.content = line;\n\n var parent = objText.objId + \" 0 R\";\n var popoff = 30;\n rect =\n \"/Rect [\" +\n getHorizontalCoordinateString(anno.bounds.x + popoff) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y + anno.bounds.h) +\n \" \" +\n getHorizontalCoordinateString(\n anno.bounds.x + anno.bounds.w + popoff\n ) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y) +\n \"] \";\n line =\n \"<>\";\n objPopup.content = line;\n\n this.internal.write(objText.objId, \"0 R\", objPopup.objId, \"0 R\");\n\n break;\n case \"freetext\":\n rect =\n \"/Rect [\" +\n getHorizontalCoordinateString(anno.bounds.x) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y) +\n \" \" +\n getHorizontalCoordinateString(anno.bounds.x + anno.bounds.w) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y + anno.bounds.h) +\n \"] \";\n var color = anno.color || \"#000000\";\n line =\n \"<>\";\n this.internal.write(line);\n break;\n case \"link\":\n if (anno.options.name) {\n var loc = this.annotations._nameMap[anno.options.name];\n anno.options.pageNumber = loc.page;\n anno.options.top = loc.y;\n } else {\n if (!anno.options.top) {\n anno.options.top = 0;\n }\n }\n\n rect =\n \"/Rect [\" +\n anno.finalBounds.x +\n \" \" +\n anno.finalBounds.y +\n \" \" +\n anno.finalBounds.w +\n \" \" +\n anno.finalBounds.h +\n \"] \";\n\n line = \"\";\n if (anno.options.url) {\n line =\n \"<>\";\n } else if (anno.options.pageNumber) {\n // first page is 0\n var info = this.internal.getPageInfo(anno.options.pageNumber);\n line =\n \"<>\";\n this.internal.write(line);\n }\n break;\n }\n }\n this.internal.write(\"]\");\n }\n ]);\n\n /**\n * @name createAnnotation\n * @function\n * @param {Object} options\n */\n jsPDFAPI.createAnnotation = function(options) {\n var pageInfo = this.internal.getCurrentPageInfo();\n switch (options.type) {\n case \"link\":\n this.link(\n options.bounds.x,\n options.bounds.y,\n options.bounds.w,\n options.bounds.h,\n options\n );\n break;\n case \"text\":\n case \"freetext\":\n pageInfo.pageContext.annotations.push(options);\n break;\n }\n };\n\n /**\n * Create a link\n *\n * valid options\n *
  • pageNumber or url [required]\n *

    If pageNumber is specified, top and zoom may also be specified

    \n * @name link\n * @function\n * @param {number} x\n * @param {number} y\n * @param {number} w\n * @param {number} h\n * @param {Object} options\n */\n jsPDFAPI.link = function(x, y, w, h, options) {\n var pageInfo = this.internal.getCurrentPageInfo();\n var getHorizontalCoordinateString = this.internal.getCoordinateString;\n var getVerticalCoordinateString = this.internal.getVerticalCoordinateString;\n\n pageInfo.pageContext.annotations.push({\n finalBounds: {\n x: getHorizontalCoordinateString(x),\n y: getVerticalCoordinateString(y),\n w: getHorizontalCoordinateString(x + w),\n h: getVerticalCoordinateString(y + h)\n },\n options: options,\n type: \"link\"\n });\n };\n\n /**\n * Currently only supports single line text.\n * Returns the width of the text/link\n *\n * @name textWithLink\n * @function\n * @param {string} text\n * @param {number} x\n * @param {number} y\n * @param {Object} options\n * @returns {number} width the width of the text/link\n */\n jsPDFAPI.textWithLink = function(text, x, y, options) {\n var totalLineWidth = this.getTextWidth(text);\n var lineHeight = this.internal.getLineHeight() / this.internal.scaleFactor;\n var linkHeight, linkWidth;\n\n // Checking if maxWidth option is passed to determine lineWidth and number of lines for each line\n if (options.maxWidth !== undefined) {\n var { maxWidth } = options;\n linkWidth = maxWidth;\n var numOfLines = this.splitTextToSize(text, linkWidth).length;\n linkHeight = Math.ceil(lineHeight * numOfLines);\n } else {\n linkWidth = totalLineWidth;\n linkHeight = lineHeight;\n }\n\n this.text(text, x, y, options);\n\n //TODO We really need the text baseline height to do this correctly.\n // Or ability to draw text on top, bottom, center, or baseline.\n y += lineHeight * 0.2;\n //handle x position based on the align option\n if (options.align === \"center\") {\n x = x - totalLineWidth / 2; //since starting from center move the x position by half of text width\n }\n if (options.align === \"right\") {\n x = x - totalLineWidth;\n }\n this.link(x, y - lineHeight, linkWidth, linkHeight, options);\n return totalLineWidth;\n };\n\n //TODO move into external library\n /**\n * @name getTextWidth\n * @function\n * @param {string} text\n * @returns {number} txtWidth\n */\n jsPDFAPI.getTextWidth = function(text) {\n var fontSize = this.internal.getFontSize();\n var txtWidth =\n (this.getStringUnitWidth(text) * fontSize) / this.internal.scaleFactor;\n return txtWidth;\n };\n\n return this;\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2017 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF arabic parser PlugIn\n *\n * @name arabic\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * Arabic shape substitutions: char code => (isolated, final, initial, medial).\n * Arabic Substition A\n */\n var arabicSubstitionA = {\n 0x0621: [0xfe80], // ARABIC LETTER HAMZA\n 0x0622: [0xfe81, 0xfe82], // ARABIC LETTER ALEF WITH MADDA ABOVE\n 0x0623: [0xfe83, 0xfe84], // ARABIC LETTER ALEF WITH HAMZA ABOVE\n 0x0624: [0xfe85, 0xfe86], // ARABIC LETTER WAW WITH HAMZA ABOVE\n 0x0625: [0xfe87, 0xfe88], // ARABIC LETTER ALEF WITH HAMZA BELOW\n 0x0626: [0xfe89, 0xfe8a, 0xfe8b, 0xfe8c], // ARABIC LETTER YEH WITH HAMZA ABOVE\n 0x0627: [0xfe8d, 0xfe8e], // ARABIC LETTER ALEF\n 0x0628: [0xfe8f, 0xfe90, 0xfe91, 0xfe92], // ARABIC LETTER BEH\n 0x0629: [0xfe93, 0xfe94], // ARABIC LETTER TEH MARBUTA\n 0x062a: [0xfe95, 0xfe96, 0xfe97, 0xfe98], // ARABIC LETTER TEH\n 0x062b: [0xfe99, 0xfe9a, 0xfe9b, 0xfe9c], // ARABIC LETTER THEH\n 0x062c: [0xfe9d, 0xfe9e, 0xfe9f, 0xfea0], // ARABIC LETTER JEEM\n 0x062d: [0xfea1, 0xfea2, 0xfea3, 0xfea4], // ARABIC LETTER HAH\n 0x062e: [0xfea5, 0xfea6, 0xfea7, 0xfea8], // ARABIC LETTER KHAH\n 0x062f: [0xfea9, 0xfeaa], // ARABIC LETTER DAL\n 0x0630: [0xfeab, 0xfeac], // ARABIC LETTER THAL\n 0x0631: [0xfead, 0xfeae], // ARABIC LETTER REH\n 0x0632: [0xfeaf, 0xfeb0], // ARABIC LETTER ZAIN\n 0x0633: [0xfeb1, 0xfeb2, 0xfeb3, 0xfeb4], // ARABIC LETTER SEEN\n 0x0634: [0xfeb5, 0xfeb6, 0xfeb7, 0xfeb8], // ARABIC LETTER SHEEN\n 0x0635: [0xfeb9, 0xfeba, 0xfebb, 0xfebc], // ARABIC LETTER SAD\n 0x0636: [0xfebd, 0xfebe, 0xfebf, 0xfec0], // ARABIC LETTER DAD\n 0x0637: [0xfec1, 0xfec2, 0xfec3, 0xfec4], // ARABIC LETTER TAH\n 0x0638: [0xfec5, 0xfec6, 0xfec7, 0xfec8], // ARABIC LETTER ZAH\n 0x0639: [0xfec9, 0xfeca, 0xfecb, 0xfecc], // ARABIC LETTER AIN\n 0x063a: [0xfecd, 0xfece, 0xfecf, 0xfed0], // ARABIC LETTER GHAIN\n 0x0641: [0xfed1, 0xfed2, 0xfed3, 0xfed4], // ARABIC LETTER FEH\n 0x0642: [0xfed5, 0xfed6, 0xfed7, 0xfed8], // ARABIC LETTER QAF\n 0x0643: [0xfed9, 0xfeda, 0xfedb, 0xfedc], // ARABIC LETTER KAF\n 0x0644: [0xfedd, 0xfede, 0xfedf, 0xfee0], // ARABIC LETTER LAM\n 0x0645: [0xfee1, 0xfee2, 0xfee3, 0xfee4], // ARABIC LETTER MEEM\n 0x0646: [0xfee5, 0xfee6, 0xfee7, 0xfee8], // ARABIC LETTER NOON\n 0x0647: [0xfee9, 0xfeea, 0xfeeb, 0xfeec], // ARABIC LETTER HEH\n 0x0648: [0xfeed, 0xfeee], // ARABIC LETTER WAW\n 0x0649: [0xfeef, 0xfef0, 64488, 64489], // ARABIC LETTER ALEF MAKSURA\n 0x064a: [0xfef1, 0xfef2, 0xfef3, 0xfef4], // ARABIC LETTER YEH\n 0x0671: [0xfb50, 0xfb51], // ARABIC LETTER ALEF WASLA\n 0x0677: [0xfbdd], // ARABIC LETTER U WITH HAMZA ABOVE\n 0x0679: [0xfb66, 0xfb67, 0xfb68, 0xfb69], // ARABIC LETTER TTEH\n 0x067a: [0xfb5e, 0xfb5f, 0xfb60, 0xfb61], // ARABIC LETTER TTEHEH\n 0x067b: [0xfb52, 0xfb53, 0xfb54, 0xfb55], // ARABIC LETTER BEEH\n 0x067e: [0xfb56, 0xfb57, 0xfb58, 0xfb59], // ARABIC LETTER PEH\n 0x067f: [0xfb62, 0xfb63, 0xfb64, 0xfb65], // ARABIC LETTER TEHEH\n 0x0680: [0xfb5a, 0xfb5b, 0xfb5c, 0xfb5d], // ARABIC LETTER BEHEH\n 0x0683: [0xfb76, 0xfb77, 0xfb78, 0xfb79], // ARABIC LETTER NYEH\n 0x0684: [0xfb72, 0xfb73, 0xfb74, 0xfb75], // ARABIC LETTER DYEH\n 0x0686: [0xfb7a, 0xfb7b, 0xfb7c, 0xfb7d], // ARABIC LETTER TCHEH\n 0x0687: [0xfb7e, 0xfb7f, 0xfb80, 0xfb81], // ARABIC LETTER TCHEHEH\n 0x0688: [0xfb88, 0xfb89], // ARABIC LETTER DDAL\n 0x068c: [0xfb84, 0xfb85], // ARABIC LETTER DAHAL\n 0x068d: [0xfb82, 0xfb83], // ARABIC LETTER DDAHAL\n 0x068e: [0xfb86, 0xfb87], // ARABIC LETTER DUL\n 0x0691: [0xfb8c, 0xfb8d], // ARABIC LETTER RREH\n 0x0698: [0xfb8a, 0xfb8b], // ARABIC LETTER JEH\n 0x06a4: [0xfb6a, 0xfb6b, 0xfb6c, 0xfb6d], // ARABIC LETTER VEH\n 0x06a6: [0xfb6e, 0xfb6f, 0xfb70, 0xfb71], // ARABIC LETTER PEHEH\n 0x06a9: [0xfb8e, 0xfb8f, 0xfb90, 0xfb91], // ARABIC LETTER KEHEH\n 0x06ad: [0xfbd3, 0xfbd4, 0xfbd5, 0xfbd6], // ARABIC LETTER NG\n 0x06af: [0xfb92, 0xfb93, 0xfb94, 0xfb95], // ARABIC LETTER GAF\n 0x06b1: [0xfb9a, 0xfb9b, 0xfb9c, 0xfb9d], // ARABIC LETTER NGOEH\n 0x06b3: [0xfb96, 0xfb97, 0xfb98, 0xfb99], // ARABIC LETTER GUEH\n 0x06ba: [0xfb9e, 0xfb9f], // ARABIC LETTER NOON GHUNNA\n 0x06bb: [0xfba0, 0xfba1, 0xfba2, 0xfba3], // ARABIC LETTER RNOON\n 0x06be: [0xfbaa, 0xfbab, 0xfbac, 0xfbad], // ARABIC LETTER HEH DOACHASHMEE\n 0x06c0: [0xfba4, 0xfba5], // ARABIC LETTER HEH WITH YEH ABOVE\n 0x06c1: [0xfba6, 0xfba7, 0xfba8, 0xfba9], // ARABIC LETTER HEH GOAL\n 0x06c5: [0xfbe0, 0xfbe1], // ARABIC LETTER KIRGHIZ OE\n 0x06c6: [0xfbd9, 0xfbda], // ARABIC LETTER OE\n 0x06c7: [0xfbd7, 0xfbd8], // ARABIC LETTER U\n 0x06c8: [0xfbdb, 0xfbdc], // ARABIC LETTER YU\n 0x06c9: [0xfbe2, 0xfbe3], // ARABIC LETTER KIRGHIZ YU\n 0x06cb: [0xfbde, 0xfbdf], // ARABIC LETTER VE\n 0x06cc: [0xfbfc, 0xfbfd, 0xfbfe, 0xfbff], // ARABIC LETTER FARSI YEH\n 0x06d0: [0xfbe4, 0xfbe5, 0xfbe6, 0xfbe7], //ARABIC LETTER E\n 0x06d2: [0xfbae, 0xfbaf], // ARABIC LETTER YEH BARREE\n 0x06d3: [0xfbb0, 0xfbb1] // ARABIC LETTER YEH BARREE WITH HAMZA ABOVE\n };\n\n /*\n var ligaturesSubstitutionA = {\n 0xFBEA: []// ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF ISOLATED FORM\n };\n */\n\n var ligatures = {\n 0xfedf: {\n 0xfe82: 0xfef5, // ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM\n 0xfe84: 0xfef7, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM\n 0xfe88: 0xfef9, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM\n 0xfe8e: 0xfefb // ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM\n },\n 0xfee0: {\n 0xfe82: 0xfef6, // ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM\n 0xfe84: 0xfef8, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM\n 0xfe88: 0xfefa, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW FINAL FORM\n 0xfe8e: 0xfefc // ARABIC LIGATURE LAM WITH ALEF FINAL FORM\n },\n 0xfe8d: { 0xfedf: { 0xfee0: { 0xfeea: 0xfdf2 } } }, // ALLAH\n 0x0651: {\n 0x064c: 0xfc5e, // Shadda + Dammatan\n 0x064d: 0xfc5f, // Shadda + Kasratan\n 0x064e: 0xfc60, // Shadda + Fatha\n 0x064f: 0xfc61, // Shadda + Damma\n 0x0650: 0xfc62 // Shadda + Kasra\n }\n };\n\n var arabic_diacritics = {\n 1612: 64606, // Shadda + Dammatan\n 1613: 64607, // Shadda + Kasratan\n 1614: 64608, // Shadda + Fatha\n 1615: 64609, // Shadda + Damma\n 1616: 64610 // Shadda + Kasra\n };\n\n var alfletter = [1570, 1571, 1573, 1575];\n\n var noChangeInForm = -1;\n var isolatedForm = 0;\n var finalForm = 1;\n var initialForm = 2;\n var medialForm = 3;\n\n jsPDFAPI.__arabicParser__ = {};\n\n //private\n var isInArabicSubstitutionA = (jsPDFAPI.__arabicParser__.isInArabicSubstitutionA = function(\n letter\n ) {\n return typeof arabicSubstitionA[letter.charCodeAt(0)] !== \"undefined\";\n });\n\n var isArabicLetter = (jsPDFAPI.__arabicParser__.isArabicLetter = function(\n letter\n ) {\n return (\n typeof letter === \"string\" &&\n /^[\\u0600-\\u06FF\\u0750-\\u077F\\u08A0-\\u08FF\\uFB50-\\uFDFF\\uFE70-\\uFEFF]+$/.test(\n letter\n )\n );\n });\n\n var isArabicEndLetter = (jsPDFAPI.__arabicParser__.isArabicEndLetter = function(\n letter\n ) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length <= 2\n );\n });\n\n var isArabicAlfLetter = (jsPDFAPI.__arabicParser__.isArabicAlfLetter = function(\n letter\n ) {\n return (\n isArabicLetter(letter) && alfletter.indexOf(letter.charCodeAt(0)) >= 0\n );\n });\n\n jsPDFAPI.__arabicParser__.arabicLetterHasIsolatedForm = function(letter) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length >= 1\n );\n };\n\n var arabicLetterHasFinalForm = (jsPDFAPI.__arabicParser__.arabicLetterHasFinalForm = function(\n letter\n ) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length >= 2\n );\n });\n\n jsPDFAPI.__arabicParser__.arabicLetterHasInitialForm = function(letter) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length >= 3\n );\n };\n\n var arabicLetterHasMedialForm = (jsPDFAPI.__arabicParser__.arabicLetterHasMedialForm = function(\n letter\n ) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length == 4\n );\n });\n\n var resolveLigatures = (jsPDFAPI.__arabicParser__.resolveLigatures = function(\n letters\n ) {\n var i = 0;\n var tmpLigatures = ligatures;\n var result = \"\";\n var effectedLetters = 0;\n\n for (i = 0; i < letters.length; i += 1) {\n if (typeof tmpLigatures[letters.charCodeAt(i)] !== \"undefined\") {\n effectedLetters++;\n tmpLigatures = tmpLigatures[letters.charCodeAt(i)];\n\n if (typeof tmpLigatures === \"number\") {\n result += String.fromCharCode(tmpLigatures);\n tmpLigatures = ligatures;\n effectedLetters = 0;\n }\n if (i === letters.length - 1) {\n tmpLigatures = ligatures;\n result += letters.charAt(i - (effectedLetters - 1));\n i = i - (effectedLetters - 1);\n effectedLetters = 0;\n }\n } else {\n tmpLigatures = ligatures;\n result += letters.charAt(i - effectedLetters);\n i = i - effectedLetters;\n effectedLetters = 0;\n }\n }\n\n return result;\n });\n\n jsPDFAPI.__arabicParser__.isArabicDiacritic = function(letter) {\n return (\n letter !== undefined &&\n arabic_diacritics[letter.charCodeAt(0)] !== undefined\n );\n };\n\n var getCorrectForm = (jsPDFAPI.__arabicParser__.getCorrectForm = function(\n currentChar,\n beforeChar,\n nextChar\n ) {\n if (!isArabicLetter(currentChar)) {\n return -1;\n }\n\n if (isInArabicSubstitutionA(currentChar) === false) {\n return noChangeInForm;\n }\n if (\n !arabicLetterHasFinalForm(currentChar) ||\n (!isArabicLetter(beforeChar) && !isArabicLetter(nextChar)) ||\n (!isArabicLetter(nextChar) && isArabicEndLetter(beforeChar)) ||\n (isArabicEndLetter(currentChar) && !isArabicLetter(beforeChar)) ||\n (isArabicEndLetter(currentChar) && isArabicAlfLetter(beforeChar)) ||\n (isArabicEndLetter(currentChar) && isArabicEndLetter(beforeChar))\n ) {\n return isolatedForm;\n }\n\n if (\n arabicLetterHasMedialForm(currentChar) &&\n isArabicLetter(beforeChar) &&\n !isArabicEndLetter(beforeChar) &&\n isArabicLetter(nextChar) &&\n arabicLetterHasFinalForm(nextChar)\n ) {\n return medialForm;\n }\n\n if (isArabicEndLetter(currentChar) || !isArabicLetter(nextChar)) {\n return finalForm;\n }\n return initialForm;\n });\n\n /**\n * @name processArabic\n * @function\n * @param {string} text\n * @returns {string}\n */\n var parseArabic = function(text) {\n text = text || \"\";\n\n var result = \"\";\n var i = 0;\n var j = 0;\n var position = 0;\n var currentLetter = \"\";\n var prevLetter = \"\";\n var nextLetter = \"\";\n\n var words = text.split(\"\\\\s+\");\n var newWords = [];\n for (i = 0; i < words.length; i += 1) {\n newWords.push(\"\");\n for (j = 0; j < words[i].length; j += 1) {\n currentLetter = words[i][j];\n prevLetter = words[i][j - 1];\n nextLetter = words[i][j + 1];\n if (isArabicLetter(currentLetter)) {\n position = getCorrectForm(currentLetter, prevLetter, nextLetter);\n if (position !== -1) {\n newWords[i] += String.fromCharCode(\n arabicSubstitionA[currentLetter.charCodeAt(0)][position]\n );\n } else {\n newWords[i] += currentLetter;\n }\n } else {\n newWords[i] += currentLetter;\n }\n }\n\n newWords[i] = resolveLigatures(newWords[i]);\n }\n result = newWords.join(\" \");\n\n return result;\n };\n\n var processArabic = (jsPDFAPI.__arabicParser__.processArabic = jsPDFAPI.processArabic = function() {\n var text =\n typeof arguments[0] === \"string\" ? arguments[0] : arguments[0].text;\n var tmpText = [];\n var result;\n\n if (Array.isArray(text)) {\n var i = 0;\n tmpText = [];\n for (i = 0; i < text.length; i += 1) {\n if (Array.isArray(text[i])) {\n tmpText.push([parseArabic(text[i][0]), text[i][1], text[i][2]]);\n } else {\n tmpText.push([parseArabic(text[i])]);\n }\n }\n result = tmpText;\n } else {\n result = parseArabic(text);\n }\n if (typeof arguments[0] === \"string\") {\n return result;\n } else {\n arguments[0].text = result;\n return arguments[0];\n }\n });\n\n jsPDFAPI.events.push([\"preProcessText\", processArabic]);\n})(jsPDF.API);\n","/** @license\n * jsPDF Autoprint Plugin\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @name autoprint\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * Makes the PDF automatically open the print-Dialog when opened in a PDF-viewer.\n *\n * @name autoPrint\n * @function\n * @param {Object} options (optional) Set the attribute variant to 'non-conform' (default) or 'javascript' to activate different methods of automatic printing when opening in a PDF-viewer .\n * @returns {jsPDF}\n * @example\n * var doc = new jsPDF();\n * doc.text(10, 10, 'This is a test');\n * doc.autoPrint({variant: 'non-conform'});\n * doc.save('autoprint.pdf');\n */\n jsPDFAPI.autoPrint = function(options) {\n \"use strict\";\n var refAutoPrintTag;\n options = options || {};\n options.variant = options.variant || \"non-conform\";\n\n switch (options.variant) {\n case \"javascript\":\n //https://github.com/Rob--W/pdf.js/commit/c676ecb5a0f54677b9f3340c3ef2cf42225453bb\n this.addJS(\"print({});\");\n break;\n case \"non-conform\":\n default:\n this.internal.events.subscribe(\"postPutResources\", function() {\n refAutoPrintTag = this.internal.newObject();\n this.internal.out(\"<<\");\n this.internal.out(\"/S /Named\");\n this.internal.out(\"/Type /Action\");\n this.internal.out(\"/N /Print\");\n this.internal.out(\">>\");\n this.internal.out(\"endobj\");\n });\n\n this.internal.events.subscribe(\"putCatalog\", function() {\n this.internal.out(\"/OpenAction \" + refAutoPrintTag + \" 0 R\");\n });\n break;\n }\n return this;\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF Canvas PlugIn\n * This plugin mimics the HTML5 Canvas\n *\n * The goal is to provide a way for current canvas users to print directly to a PDF.\n * @name canvas\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * @class Canvas\n * @classdesc A Canvas Wrapper for jsPDF\n */\n var Canvas = function() {\n var jsPdfInstance = undefined;\n Object.defineProperty(this, \"pdf\", {\n get: function() {\n return jsPdfInstance;\n },\n set: function(value) {\n jsPdfInstance = value;\n }\n });\n\n var _width = 150;\n /**\n * The height property is a positive integer reflecting the height HTML attribute of the element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of 150 is used.\n * This is one of the two properties, the other being width, that controls the size of the canvas.\n *\n * @name width\n */\n Object.defineProperty(this, \"width\", {\n get: function() {\n return _width;\n },\n set: function(value) {\n if (isNaN(value) || Number.isInteger(value) === false || value < 0) {\n _width = 150;\n } else {\n _width = value;\n }\n if (this.getContext(\"2d\").pageWrapXEnabled) {\n this.getContext(\"2d\").pageWrapX = _width + 1;\n }\n }\n });\n\n var _height = 300;\n /**\n * The width property is a positive integer reflecting the width HTML attribute of the element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of 300 is used.\n * This is one of the two properties, the other being height, that controls the size of the canvas.\n *\n * @name height\n */\n Object.defineProperty(this, \"height\", {\n get: function() {\n return _height;\n },\n set: function(value) {\n if (isNaN(value) || Number.isInteger(value) === false || value < 0) {\n _height = 300;\n } else {\n _height = value;\n }\n if (this.getContext(\"2d\").pageWrapYEnabled) {\n this.getContext(\"2d\").pageWrapY = _height + 1;\n }\n }\n });\n\n var _childNodes = [];\n Object.defineProperty(this, \"childNodes\", {\n get: function() {\n return _childNodes;\n },\n set: function(value) {\n _childNodes = value;\n }\n });\n\n var _style = {};\n Object.defineProperty(this, \"style\", {\n get: function() {\n return _style;\n },\n set: function(value) {\n _style = value;\n }\n });\n\n Object.defineProperty(this, \"parentNode\", {});\n };\n\n /**\n * The getContext() method returns a drawing context on the canvas, or null if the context identifier is not supported.\n *\n * @name getContext\n * @function\n * @param {string} contextType Is a String containing the context identifier defining the drawing context associated to the canvas. Possible value is \"2d\", leading to the creation of a Context2D object representing a two-dimensional rendering context.\n * @param {object} contextAttributes\n */\n Canvas.prototype.getContext = function(contextType, contextAttributes) {\n contextType = contextType || \"2d\";\n var key;\n\n if (contextType !== \"2d\") {\n return null;\n }\n for (key in contextAttributes) {\n if (this.pdf.context2d.hasOwnProperty(key)) {\n this.pdf.context2d[key] = contextAttributes[key];\n }\n }\n this.pdf.context2d._canvas = this;\n return this.pdf.context2d;\n };\n\n /**\n * The toDataURL() method is just a stub to throw an error if accidently called.\n *\n * @name toDataURL\n * @function\n */\n Canvas.prototype.toDataURL = function() {\n throw new Error(\"toDataURL is not implemented.\");\n };\n\n jsPDFAPI.events.push([\n \"initialized\",\n function() {\n this.canvas = new Canvas();\n this.canvas.pdf = this;\n }\n ]);\n\n return this;\n})(jsPDF.API);\n","/**\n * @license\n * ====================================================================\n * Copyright (c) 2013 Youssef Beddad, youssef.beddad@gmail.com\n * 2013 Eduardo Menezes de Morais, eduardo.morais@usp.br\n * 2013 Lee Driscoll, https://github.com/lsdriscoll\n * 2014 Juan Pablo Gaviria, https://github.com/juanpgaviria\n * 2014 James Hall, james@parall.ax\n * 2014 Diego Casorran, https://github.com/diegocr\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @name cell\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n var NO_MARGINS = { left: 0, top: 0, bottom: 0, right: 0 };\n\n var px2pt = (0.264583 * 72) / 25.4;\n var printingHeaderRow = false;\n\n var _initialize = function() {\n if (typeof this.internal.__cell__ === \"undefined\") {\n this.internal.__cell__ = {};\n this.internal.__cell__.padding = 3;\n this.internal.__cell__.headerFunction = undefined;\n this.internal.__cell__.margins = Object.assign({}, NO_MARGINS);\n this.internal.__cell__.margins.width = this.getPageWidth();\n _reset.call(this);\n }\n };\n\n var _reset = function() {\n this.internal.__cell__.lastCell = new Cell();\n this.internal.__cell__.pages = 1;\n };\n\n var Cell = function() {\n var _x = arguments[0];\n Object.defineProperty(this, \"x\", {\n enumerable: true,\n get: function() {\n return _x;\n },\n set: function(value) {\n _x = value;\n }\n });\n var _y = arguments[1];\n Object.defineProperty(this, \"y\", {\n enumerable: true,\n get: function() {\n return _y;\n },\n set: function(value) {\n _y = value;\n }\n });\n var _width = arguments[2];\n Object.defineProperty(this, \"width\", {\n enumerable: true,\n get: function() {\n return _width;\n },\n set: function(value) {\n _width = value;\n }\n });\n var _height = arguments[3];\n Object.defineProperty(this, \"height\", {\n enumerable: true,\n get: function() {\n return _height;\n },\n set: function(value) {\n _height = value;\n }\n });\n var _text = arguments[4];\n Object.defineProperty(this, \"text\", {\n enumerable: true,\n get: function() {\n return _text;\n },\n set: function(value) {\n _text = value;\n }\n });\n var _lineNumber = arguments[5];\n Object.defineProperty(this, \"lineNumber\", {\n enumerable: true,\n get: function() {\n return _lineNumber;\n },\n set: function(value) {\n _lineNumber = value;\n }\n });\n var _align = arguments[6];\n Object.defineProperty(this, \"align\", {\n enumerable: true,\n get: function() {\n return _align;\n },\n set: function(value) {\n _align = value;\n }\n });\n\n return this;\n };\n\n Cell.prototype.clone = function() {\n return new Cell(\n this.x,\n this.y,\n this.width,\n this.height,\n this.text,\n this.lineNumber,\n this.align\n );\n };\n\n Cell.prototype.toArray = function() {\n return [\n this.x,\n this.y,\n this.width,\n this.height,\n this.text,\n this.lineNumber,\n this.align\n ];\n };\n\n /**\n * @name setHeaderFunction\n * @function\n * @param {function} func\n */\n jsPDFAPI.setHeaderFunction = function(func) {\n _initialize.call(this);\n this.internal.__cell__.headerFunction =\n typeof func === \"function\" ? func : undefined;\n return this;\n };\n\n /**\n * @name getTextDimensions\n * @function\n * @param {string} txt\n * @returns {Object} dimensions\n */\n jsPDFAPI.getTextDimensions = function(text, options) {\n _initialize.call(this);\n options = options || {};\n var fontSize = options.fontSize || this.getFontSize();\n var font = options.font || this.getFont();\n var scaleFactor = options.scaleFactor || this.internal.scaleFactor;\n var width = 0;\n var amountOfLines = 0;\n var height = 0;\n var tempWidth = 0;\n var scope = this;\n\n if (!Array.isArray(text) && typeof text !== \"string\") {\n if (typeof text === \"number\") {\n text = String(text);\n } else {\n throw new Error(\n \"getTextDimensions expects text-parameter to be of type String or type Number or an Array of Strings.\"\n );\n }\n }\n\n const maxWidth = options.maxWidth;\n if (maxWidth > 0) {\n if (typeof text === \"string\") {\n text = this.splitTextToSize(text, maxWidth);\n } else if (Object.prototype.toString.call(text) === \"[object Array]\") {\n text = text.reduce(function(acc, textLine) {\n return acc.concat(scope.splitTextToSize(textLine, maxWidth));\n }, []);\n }\n } else {\n // Without the else clause, it will not work if you do not pass along maxWidth\n text = Array.isArray(text) ? text : [text];\n }\n\n for (var i = 0; i < text.length; i++) {\n tempWidth = this.getStringUnitWidth(text[i], { font: font }) * fontSize;\n if (width < tempWidth) {\n width = tempWidth;\n }\n }\n\n if (width !== 0) {\n amountOfLines = text.length;\n }\n\n width = width / scaleFactor;\n height = Math.max(\n (amountOfLines * fontSize * this.getLineHeightFactor() -\n fontSize * (this.getLineHeightFactor() - 1)) /\n scaleFactor,\n 0\n );\n return { w: width, h: height };\n };\n\n /**\n * @name cellAddPage\n * @function\n */\n jsPDFAPI.cellAddPage = function() {\n _initialize.call(this);\n\n this.addPage();\n\n var margins = this.internal.__cell__.margins || NO_MARGINS;\n this.internal.__cell__.lastCell = new Cell(\n margins.left,\n margins.top,\n undefined,\n undefined\n );\n this.internal.__cell__.pages += 1;\n\n return this;\n };\n\n /**\n * @name cell\n * @function\n * @param {number} x\n * @param {number} y\n * @param {number} width\n * @param {number} height\n * @param {string} text\n * @param {number} lineNumber lineNumber\n * @param {string} align\n * @return {jsPDF} jsPDF-instance\n */\n var cell = (jsPDFAPI.cell = function() {\n var currentCell;\n\n if (arguments[0] instanceof Cell) {\n currentCell = arguments[0];\n } else {\n currentCell = new Cell(\n arguments[0],\n arguments[1],\n arguments[2],\n arguments[3],\n arguments[4],\n arguments[5]\n );\n }\n _initialize.call(this);\n var lastCell = this.internal.__cell__.lastCell;\n var padding = this.internal.__cell__.padding;\n var margins = this.internal.__cell__.margins || NO_MARGINS;\n var tableHeaderRow = this.internal.__cell__.tableHeaderRow;\n var printHeaders = this.internal.__cell__.printHeaders;\n // If this is not the first cell, we must change its position\n if (typeof lastCell.lineNumber !== \"undefined\") {\n if (lastCell.lineNumber === currentCell.lineNumber) {\n //Same line\n currentCell.x = (lastCell.x || 0) + (lastCell.width || 0);\n currentCell.y = lastCell.y || 0;\n } else {\n //New line\n if (\n lastCell.y + lastCell.height + currentCell.height + margins.bottom >\n this.getPageHeight()\n ) {\n this.cellAddPage();\n currentCell.y = margins.top;\n if (printHeaders && tableHeaderRow) {\n this.printHeaderRow(currentCell.lineNumber, true);\n currentCell.y += tableHeaderRow[0].height;\n }\n } else {\n currentCell.y = lastCell.y + lastCell.height || currentCell.y;\n }\n }\n }\n\n if (typeof currentCell.text[0] !== \"undefined\") {\n this.rect(\n currentCell.x,\n currentCell.y,\n currentCell.width,\n currentCell.height,\n printingHeaderRow === true ? \"FD\" : undefined\n );\n if (currentCell.align === \"right\") {\n this.text(\n currentCell.text,\n currentCell.x + currentCell.width - padding,\n currentCell.y + padding,\n { align: \"right\", baseline: \"top\" }\n );\n } else if (currentCell.align === \"center\") {\n this.text(\n currentCell.text,\n currentCell.x + currentCell.width / 2,\n currentCell.y + padding,\n {\n align: \"center\",\n baseline: \"top\",\n maxWidth: currentCell.width - padding - padding\n }\n );\n } else {\n this.text(\n currentCell.text,\n currentCell.x + padding,\n currentCell.y + padding,\n {\n align: \"left\",\n baseline: \"top\",\n maxWidth: currentCell.width - padding - padding\n }\n );\n }\n }\n this.internal.__cell__.lastCell = currentCell;\n return this;\n });\n\n /**\n * Create a table from a set of data.\n * @name table\n * @function\n * @param {Integer} [x] : left-position for top-left corner of table\n * @param {Integer} [y] top-position for top-left corner of table\n * @param {Object[]} [data] An array of objects containing key-value pairs corresponding to a row of data.\n * @param {String[]} [headers] Omit or null to auto-generate headers at a performance cost\n\n * @param {Object} [config.printHeaders] True to print column headers at the top of every page\n * @param {Object} [config.autoSize] True to dynamically set the column widths to match the widest cell value\n * @param {Object} [config.margins] margin values for left, top, bottom, and width\n * @param {Object} [config.fontSize] Integer fontSize to use (optional)\n * @param {Object} [config.padding] cell-padding in pt to use (optional)\n * @param {Object} [config.headerBackgroundColor] default is #c8c8c8 (optional)\n * @param {Object} [config.headerTextColor] default is #000 (optional)\n * @param {Object} [config.rowStart] callback to handle before print each row (optional)\n * @param {Object} [config.cellStart] callback to handle before print each cell (optional)\n * @returns {jsPDF} jsPDF-instance\n */\n\n jsPDFAPI.table = function(x, y, data, headers, config) {\n _initialize.call(this);\n if (!data) {\n throw new Error(\"No data for PDF table.\");\n }\n\n config = config || {};\n\n var headerNames = [],\n headerLabels = [],\n headerAligns = [],\n i,\n columnMatrix = {},\n columnWidths = {},\n column,\n columnMinWidths = [],\n j,\n tableHeaderConfigs = [],\n //set up defaults. If a value is provided in config, defaults will be overwritten:\n autoSize = config.autoSize || false,\n printHeaders = config.printHeaders === false ? false : true,\n fontSize =\n config.css && typeof config.css[\"font-size\"] !== \"undefined\"\n ? config.css[\"font-size\"] * 16\n : config.fontSize || 12,\n margins =\n config.margins ||\n Object.assign({ width: this.getPageWidth() }, NO_MARGINS),\n padding = typeof config.padding === \"number\" ? config.padding : 3,\n headerBackgroundColor = config.headerBackgroundColor || \"#c8c8c8\",\n headerTextColor = config.headerTextColor || \"#000\";\n\n _reset.call(this);\n\n this.internal.__cell__.printHeaders = printHeaders;\n this.internal.__cell__.margins = margins;\n this.internal.__cell__.table_font_size = fontSize;\n this.internal.__cell__.padding = padding;\n this.internal.__cell__.headerBackgroundColor = headerBackgroundColor;\n this.internal.__cell__.headerTextColor = headerTextColor;\n this.setFontSize(fontSize);\n\n // Set header values\n if (headers === undefined || headers === null) {\n // No headers defined so we derive from data\n headerNames = Object.keys(data[0]);\n headerLabels = headerNames;\n headerAligns = headerNames.map(function() {\n return \"left\";\n });\n } else if (Array.isArray(headers) && typeof headers[0] === \"object\") {\n headerNames = headers.map(function(header) {\n return header.name;\n });\n headerLabels = headers.map(function(header) {\n return header.prompt || header.name || \"\";\n });\n headerAligns = headers.map(function(header) {\n return header.align || \"left\";\n });\n // Split header configs into names and prompts\n for (i = 0; i < headers.length; i += 1) {\n columnWidths[headers[i].name] = headers[i].width * px2pt;\n }\n } else if (Array.isArray(headers) && typeof headers[0] === \"string\") {\n headerNames = headers;\n headerLabels = headerNames;\n headerAligns = headerNames.map(function() {\n return \"left\";\n });\n }\n\n if (\n autoSize ||\n (Array.isArray(headers) && typeof headers[0] === \"string\")\n ) {\n var headerName;\n for (i = 0; i < headerNames.length; i += 1) {\n headerName = headerNames[i];\n\n // Create a matrix of columns e.g., {column_title: [row1_Record, row2_Record]}\n\n columnMatrix[headerName] = data.map(function(rec) {\n return rec[headerName];\n });\n\n // get header width\n this.setFont(undefined, \"bold\");\n columnMinWidths.push(\n this.getTextDimensions(headerLabels[i], {\n fontSize: this.internal.__cell__.table_font_size,\n scaleFactor: this.internal.scaleFactor\n }).w\n );\n column = columnMatrix[headerName];\n\n // get cell widths\n this.setFont(undefined, \"normal\");\n for (j = 0; j < column.length; j += 1) {\n columnMinWidths.push(\n this.getTextDimensions(column[j], {\n fontSize: this.internal.__cell__.table_font_size,\n scaleFactor: this.internal.scaleFactor\n }).w\n );\n }\n\n // get final column width\n columnWidths[headerName] =\n Math.max.apply(null, columnMinWidths) + padding + padding;\n\n //have to reset\n columnMinWidths = [];\n }\n }\n\n // -- Construct the table\n\n if (printHeaders) {\n var row = {};\n for (i = 0; i < headerNames.length; i += 1) {\n row[headerNames[i]] = {};\n row[headerNames[i]].text = headerLabels[i];\n row[headerNames[i]].align = headerAligns[i];\n }\n\n var rowHeight = calculateLineHeight.call(this, row, columnWidths);\n\n // Construct the header row\n tableHeaderConfigs = headerNames.map(function(value) {\n return new Cell(\n x,\n y,\n columnWidths[value],\n rowHeight,\n row[value].text,\n undefined,\n row[value].align\n );\n });\n\n // Store the table header config\n this.setTableHeaderRow(tableHeaderConfigs);\n\n // Print the header for the start of the table\n this.printHeaderRow(1, false);\n }\n\n // Construct the data rows\n\n var align = headers.reduce(function(pv, cv) {\n pv[cv.name] = cv.align;\n return pv;\n }, {});\n for (i = 0; i < data.length; i += 1) {\n if (\"rowStart\" in config && config.rowStart instanceof Function) {\n config.rowStart(\n {\n row: i,\n data: data[i]\n },\n this\n );\n }\n var lineHeight = calculateLineHeight.call(this, data[i], columnWidths);\n\n for (j = 0; j < headerNames.length; j += 1) {\n var cellData = data[i][headerNames[j]];\n if (\"cellStart\" in config && config.cellStart instanceof Function) {\n config.cellStart(\n {\n row: i,\n col: j,\n data: cellData\n },\n this\n );\n }\n cell.call(\n this,\n new Cell(\n x,\n y,\n columnWidths[headerNames[j]],\n lineHeight,\n cellData,\n i + 2,\n align[headerNames[j]]\n )\n );\n }\n }\n this.internal.__cell__.table_x = x;\n this.internal.__cell__.table_y = y;\n return this;\n };\n\n /**\n * Calculate the height for containing the highest column\n *\n * @name calculateLineHeight\n * @function\n * @param {Object[]} model is the line of data we want to calculate the height of\n * @param {Integer[]} columnWidths is size of each column\n * @returns {number} lineHeight\n * @private\n */\n var calculateLineHeight = function calculateLineHeight(model, columnWidths) {\n var padding = this.internal.__cell__.padding;\n var fontSize = this.internal.__cell__.table_font_size;\n var scaleFactor = this.internal.scaleFactor;\n\n return Object.keys(model)\n .map(function(key) {\n var value = model[key];\n return this.splitTextToSize(\n value.hasOwnProperty(\"text\") ? value.text : value,\n columnWidths[key] - padding - padding\n );\n }, this)\n .map(function(value) {\n return (\n (this.getLineHeightFactor() * value.length * fontSize) / scaleFactor +\n padding +\n padding\n );\n }, this)\n .reduce(function(pv, cv) {\n return Math.max(pv, cv);\n }, 0);\n };\n\n /**\n * Store the config for outputting a table header\n *\n * @name setTableHeaderRow\n * @function\n * @param {Object[]} config\n * An array of cell configs that would define a header row: Each config matches the config used by jsPDFAPI.cell\n * except the lineNumber parameter is excluded\n */\n jsPDFAPI.setTableHeaderRow = function(config) {\n _initialize.call(this);\n this.internal.__cell__.tableHeaderRow = config;\n };\n\n /**\n * Output the store header row\n *\n * @name printHeaderRow\n * @function\n * @param {number} lineNumber The line number to output the header at\n * @param {boolean} new_page\n */\n jsPDFAPI.printHeaderRow = function(lineNumber, new_page) {\n _initialize.call(this);\n if (!this.internal.__cell__.tableHeaderRow) {\n throw new Error(\"Property tableHeaderRow does not exist.\");\n }\n\n var tableHeaderCell;\n\n printingHeaderRow = true;\n if (typeof this.internal.__cell__.headerFunction === \"function\") {\n var position = this.internal.__cell__.headerFunction(\n this,\n this.internal.__cell__.pages\n );\n this.internal.__cell__.lastCell = new Cell(\n position[0],\n position[1],\n position[2],\n position[3],\n undefined,\n -1\n );\n }\n this.setFont(undefined, \"bold\");\n\n var tempHeaderConf = [];\n for (var i = 0; i < this.internal.__cell__.tableHeaderRow.length; i += 1) {\n tableHeaderCell = this.internal.__cell__.tableHeaderRow[i].clone();\n if (new_page) {\n tableHeaderCell.y = this.internal.__cell__.margins.top || 0;\n tempHeaderConf.push(tableHeaderCell);\n }\n tableHeaderCell.lineNumber = lineNumber;\n var currentTextColor = this.getTextColor();\n this.setTextColor(this.internal.__cell__.headerTextColor);\n this.setFillColor(this.internal.__cell__.headerBackgroundColor);\n cell.call(this, tableHeaderCell);\n this.setTextColor(currentTextColor);\n }\n if (tempHeaderConf.length > 0) {\n this.setTableHeaderRow(tempHeaderConf);\n }\n this.setFont(undefined, \"normal\");\n printingHeaderRow = false;\n };\n})(jsPDF.API);\n","/**\n * @license\n * ====================================================================\n * Copyright (c) 2013 Youssef Beddad, youssef.beddad@gmail.com\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF JavaScript plugin\n *\n * @name javascript\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n var jsNamesObj, jsJsObj, text;\n /**\n * @name addJS\n * @function\n * @param {string} javascript The javascript to be embedded into the PDF-file.\n * @returns {jsPDF}\n */\n jsPDFAPI.addJS = function(javascript) {\n text = javascript;\n this.internal.events.subscribe(\"postPutResources\", function() {\n jsNamesObj = this.internal.newObject();\n this.internal.out(\"<<\");\n this.internal.out(\"/Names [(EmbeddedJS) \" + (jsNamesObj + 1) + \" 0 R]\");\n this.internal.out(\">>\");\n this.internal.out(\"endobj\");\n\n jsJsObj = this.internal.newObject();\n this.internal.out(\"<<\");\n this.internal.out(\"/S /JavaScript\");\n this.internal.out(\"/JS (\" + text + \")\");\n this.internal.out(\">>\");\n this.internal.out(\"endobj\");\n });\n this.internal.events.subscribe(\"putCatalog\", function() {\n if (jsNamesObj !== undefined && jsJsObj !== undefined) {\n this.internal.out(\"/Names <>\");\n }\n });\n return this;\n };\n})(jsPDF.API);\n","/**\n * @license\n * jsPDF fileloading PlugIn\n * Copyright (c) 2018 Aras Abbasi (aras.abbasi@gmail.com)\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @name fileloading\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * @name loadFile\n * @function\n * @param {string} url\n * @param {boolean} sync\n * @param {function} callback\n * @returns {string|undefined} result\n */\n jsPDFAPI.loadFile = function(url, sync, callback) {\n return browserRequest(url, sync, callback);\n\n };\n\n /**\n * @name loadImageFile\n * @function\n * @param {string} path\n * @param {boolean} sync\n * @param {function} callback\n */\n jsPDFAPI.loadImageFile = jsPDFAPI.loadFile;\n\n function browserRequest(url, sync, callback) {\n sync = sync === false ? false : true;\n callback = typeof callback === \"function\" ? callback : function() {};\n var result = undefined;\n\n var xhr = function(url, sync, callback) {\n var request = new XMLHttpRequest();\n var i = 0;\n\n var sanitizeUnicode = function(data) {\n var dataLength = data.length;\n var charArray = [];\n var StringFromCharCode = String.fromCharCode;\n\n //Transform Unicode to ASCII\n for (i = 0; i < dataLength; i += 1) {\n charArray.push(StringFromCharCode(data.charCodeAt(i) & 0xff));\n }\n return charArray.join(\"\");\n };\n\n request.open(\"GET\", url, !sync);\n // XHR binary charset opt by Marcus Granado 2006 [http://mgran.blogspot.com]\n request.overrideMimeType(\"text/plain; charset=x-user-defined\");\n\n if (sync === false) {\n request.onload = function() {\n if (request.status === 200) {\n callback(sanitizeUnicode(this.responseText));\n } else {\n callback(undefined);\n }\n };\n }\n request.send(null);\n\n if (sync && request.status === 200) {\n return sanitizeUnicode(request.responseText);\n }\n };\n try {\n result = xhr(url, sync, callback);\n // eslint-disable-next-line no-empty\n } catch (e) {}\n return result;\n }\n\n function nodeReadFile(url, sync, callback) {\n sync = sync === false ? false : true;\n var result = undefined;\n\n var fs = require(\"fs\");\n var path = require(\"path\");\n\n url = path.resolve(url);\n if (sync) {\n try {\n result = fs.readFileSync(url, { encoding: \"latin1\" });\n } catch (e) {\n return undefined;\n }\n } else {\n fs.readFile(url, { encoding: \"latin1\" }, function(err, data) {\n if (!callback) {\n return;\n }\n if (err) {\n callback(undefined);\n }\n callback(data);\n });\n }\n\n return result;\n }\n})(jsPDF.API);\n","/* eslint-disable no-fallthrough */\r\n/* eslint-disable no-console */\r\n/**\r\n * @license\r\n * jsPDF Context2D PlugIn Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv\r\n *\r\n * Licensed under the MIT License. http://opensource.org/licenses/mit-license\r\n */\r\n\r\nimport { jsPDF } from \"../jspdf.js\";\r\nimport { RGBColor } from \"../libs/rgbcolor.js\";\r\nimport { console } from \"../libs/console.js\";\r\nimport {\r\n buildFontFaceMap,\r\n parseFontFamily,\r\n resolveFontFace\r\n} from \"../libs/fontFace.js\";\r\n\r\n/**\r\n * This plugin mimics the HTML5 CanvasRenderingContext2D.\r\n *\r\n * The goal is to provide a way for current canvas implementations to print directly to a PDF.\r\n *\r\n * @name context2d\r\n * @module\r\n */\r\n(function(jsPDFAPI) {\r\n \"use strict\";\r\n var ContextLayer = function(ctx) {\r\n ctx = ctx || {};\r\n this.isStrokeTransparent = ctx.isStrokeTransparent || false;\r\n this.strokeOpacity = ctx.strokeOpacity || 1;\r\n this.strokeStyle = ctx.strokeStyle || \"#000000\";\r\n this.fillStyle = ctx.fillStyle || \"#000000\";\r\n this.isFillTransparent = ctx.isFillTransparent || false;\r\n this.fillOpacity = ctx.fillOpacity || 1;\r\n this.font = ctx.font || \"10px sans-serif\";\r\n this.textBaseline = ctx.textBaseline || \"alphabetic\";\r\n this.textAlign = ctx.textAlign || \"left\";\r\n this.lineWidth = ctx.lineWidth || 1;\r\n this.lineJoin = ctx.lineJoin || \"miter\";\r\n this.lineCap = ctx.lineCap || \"butt\";\r\n this.path = ctx.path || [];\r\n this.transform =\r\n typeof ctx.transform !== \"undefined\"\r\n ? ctx.transform.clone()\r\n : new Matrix();\r\n this.globalCompositeOperation = ctx.globalCompositeOperation || \"normal\";\r\n this.globalAlpha = ctx.globalAlpha || 1.0;\r\n this.clip_path = ctx.clip_path || [];\r\n this.currentPoint = ctx.currentPoint || new Point();\r\n this.miterLimit = ctx.miterLimit || 10.0;\r\n this.lastPoint = ctx.lastPoint || new Point();\r\n this.lineDashOffset = ctx.lineDashOffset || 0.0;\r\n this.lineDash = ctx.lineDash || [];\r\n this.margin = ctx.margin || [0, 0, 0, 0];\r\n this.prevPageLastElemOffset = ctx.prevPageLastElemOffset || 0;\r\n\r\n this.ignoreClearRect =\r\n typeof ctx.ignoreClearRect === \"boolean\" ? ctx.ignoreClearRect : true;\r\n return this;\r\n };\r\n\r\n //stub\r\n var f2,\r\n getHorizontalCoordinateString,\r\n getVerticalCoordinateString,\r\n getHorizontalCoordinate,\r\n getVerticalCoordinate,\r\n Point,\r\n Rectangle,\r\n Matrix,\r\n _ctx;\r\n jsPDFAPI.events.push([\r\n \"initialized\",\r\n function() {\r\n this.context2d = new Context2D(this);\r\n\r\n f2 = this.internal.f2;\r\n getHorizontalCoordinateString = this.internal.getCoordinateString;\r\n getVerticalCoordinateString = this.internal.getVerticalCoordinateString;\r\n getHorizontalCoordinate = this.internal.getHorizontalCoordinate;\r\n getVerticalCoordinate = this.internal.getVerticalCoordinate;\r\n Point = this.internal.Point;\r\n Rectangle = this.internal.Rectangle;\r\n Matrix = this.internal.Matrix;\r\n _ctx = new ContextLayer();\r\n }\r\n ]);\r\n\r\n var Context2D = function(pdf) {\r\n Object.defineProperty(this, \"canvas\", {\r\n get: function() {\r\n return { parentNode: false, style: false };\r\n }\r\n });\r\n\r\n var _pdf = pdf;\r\n Object.defineProperty(this, \"pdf\", {\r\n get: function() {\r\n return _pdf;\r\n }\r\n });\r\n\r\n var _pageWrapXEnabled = false;\r\n /**\r\n * @name pageWrapXEnabled\r\n * @type {boolean}\r\n * @default false\r\n */\r\n Object.defineProperty(this, \"pageWrapXEnabled\", {\r\n get: function() {\r\n return _pageWrapXEnabled;\r\n },\r\n set: function(value) {\r\n _pageWrapXEnabled = Boolean(value);\r\n }\r\n });\r\n\r\n var _pageWrapYEnabled = false;\r\n /**\r\n * @name pageWrapYEnabled\r\n * @type {boolean}\r\n * @default true\r\n */\r\n Object.defineProperty(this, \"pageWrapYEnabled\", {\r\n get: function() {\r\n return _pageWrapYEnabled;\r\n },\r\n set: function(value) {\r\n _pageWrapYEnabled = Boolean(value);\r\n }\r\n });\r\n\r\n var _posX = 0;\r\n /**\r\n * @name posX\r\n * @type {number}\r\n * @default 0\r\n */\r\n Object.defineProperty(this, \"posX\", {\r\n get: function() {\r\n return _posX;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _posX = value;\r\n }\r\n }\r\n });\r\n\r\n var _posY = 0;\r\n /**\r\n * @name posY\r\n * @type {number}\r\n * @default 0\r\n */\r\n Object.defineProperty(this, \"posY\", {\r\n get: function() {\r\n return _posY;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _posY = value;\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * Gets or sets the page margin when using auto paging. Has no effect when {@link autoPaging} is off.\r\n * @name margin\r\n * @type {number|number[]}\r\n * @default [0, 0, 0, 0]\r\n */\r\n Object.defineProperty(this, \"margin\", {\r\n get: function() {\r\n return _ctx.margin;\r\n },\r\n set: function(value) {\r\n var margin;\r\n if (typeof value === \"number\") {\r\n margin = [value, value, value, value];\r\n } else {\r\n margin = new Array(4);\r\n margin[0] = value[0];\r\n margin[1] = value.length >= 2 ? value[1] : margin[0];\r\n margin[2] = value.length >= 3 ? value[2] : margin[0];\r\n margin[3] = value.length >= 4 ? value[3] : margin[1];\r\n }\r\n _ctx.margin = margin;\r\n }\r\n });\r\n\r\n var _autoPaging = false;\r\n /**\r\n * Gets or sets the auto paging mode. When auto paging is enabled, the context2d will automatically draw on the\r\n * next page if a shape or text chunk doesn't fit entirely on the current page. The context2d will create new\r\n * pages if required.\r\n *\r\n * Context2d supports different modes:\r\n *
      \r\n *
    • \r\n * false: Auto paging is disabled.\r\n *
    • \r\n *
    • \r\n * true or 'slice': Will cut shapes or text chunks across page breaks. Will possibly\r\n * slice text in half, making it difficult to read.\r\n *
    • \r\n *
    • \r\n * 'text': Trys not to cut text in half across page breaks. Works best for documents consisting\r\n * mostly of a single column of text.\r\n *
    • \r\n *
    \r\n * @name Context2D#autoPaging\r\n * @type {boolean|\"slice\"|\"text\"}\r\n * @default false\r\n */\r\n Object.defineProperty(this, \"autoPaging\", {\r\n get: function() {\r\n return _autoPaging;\r\n },\r\n set: function(value) {\r\n _autoPaging = value;\r\n }\r\n });\r\n\r\n var lastBreak = 0;\r\n /**\r\n * @name lastBreak\r\n * @type {number}\r\n * @default 0\r\n */\r\n Object.defineProperty(this, \"lastBreak\", {\r\n get: function() {\r\n return lastBreak;\r\n },\r\n set: function(value) {\r\n lastBreak = value;\r\n }\r\n });\r\n\r\n var pageBreaks = [];\r\n /**\r\n * Y Position of page breaks.\r\n * @name pageBreaks\r\n * @type {number}\r\n * @default 0\r\n */\r\n Object.defineProperty(this, \"pageBreaks\", {\r\n get: function() {\r\n return pageBreaks;\r\n },\r\n set: function(value) {\r\n pageBreaks = value;\r\n }\r\n });\r\n\r\n /**\r\n * @name ctx\r\n * @type {object}\r\n * @default {}\r\n */\r\n Object.defineProperty(this, \"ctx\", {\r\n get: function() {\r\n return _ctx;\r\n },\r\n set: function(value) {\r\n if (value instanceof ContextLayer) {\r\n _ctx = value;\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * @name path\r\n * @type {array}\r\n * @default []\r\n */\r\n Object.defineProperty(this, \"path\", {\r\n get: function() {\r\n return _ctx.path;\r\n },\r\n set: function(value) {\r\n _ctx.path = value;\r\n }\r\n });\r\n\r\n /**\r\n * @name ctxStack\r\n * @type {array}\r\n * @default []\r\n */\r\n var _ctxStack = [];\r\n Object.defineProperty(this, \"ctxStack\", {\r\n get: function() {\r\n return _ctxStack;\r\n },\r\n set: function(value) {\r\n _ctxStack = value;\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the color, gradient, or pattern used to fill the drawing\r\n *\r\n * @name fillStyle\r\n * @default #000000\r\n * @property {(color|gradient|pattern)} value The color of the drawing. Default value is #000000
    \r\n * A gradient object (linear or radial) used to fill the drawing (not supported by context2d)
    \r\n * A pattern object to use to fill the drawing (not supported by context2d)\r\n */\r\n Object.defineProperty(this, \"fillStyle\", {\r\n get: function() {\r\n return this.ctx.fillStyle;\r\n },\r\n set: function(value) {\r\n var rgba;\r\n rgba = getRGBA(value);\r\n\r\n this.ctx.fillStyle = rgba.style;\r\n this.ctx.isFillTransparent = rgba.a === 0;\r\n this.ctx.fillOpacity = rgba.a;\r\n\r\n this.pdf.setFillColor(rgba.r, rgba.g, rgba.b, { a: rgba.a });\r\n this.pdf.setTextColor(rgba.r, rgba.g, rgba.b, { a: rgba.a });\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the color, gradient, or pattern used for strokes\r\n *\r\n * @name strokeStyle\r\n * @default #000000\r\n * @property {color} color A CSS color value that indicates the stroke color of the drawing. Default value is #000000 (not supported by context2d)\r\n * @property {gradient} gradient A gradient object (linear or radial) used to create a gradient stroke (not supported by context2d)\r\n * @property {pattern} pattern A pattern object used to create a pattern stroke (not supported by context2d)\r\n */\r\n Object.defineProperty(this, \"strokeStyle\", {\r\n get: function() {\r\n return this.ctx.strokeStyle;\r\n },\r\n set: function(value) {\r\n var rgba = getRGBA(value);\r\n\r\n this.ctx.strokeStyle = rgba.style;\r\n this.ctx.isStrokeTransparent = rgba.a === 0;\r\n this.ctx.strokeOpacity = rgba.a;\r\n\r\n if (rgba.a === 0) {\r\n this.pdf.setDrawColor(255, 255, 255);\r\n } else if (rgba.a === 1) {\r\n this.pdf.setDrawColor(rgba.r, rgba.g, rgba.b);\r\n } else {\r\n this.pdf.setDrawColor(rgba.r, rgba.g, rgba.b);\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the style of the end caps for a line\r\n *\r\n * @name lineCap\r\n * @default butt\r\n * @property {(butt|round|square)} lineCap butt A flat edge is added to each end of the line
    \r\n * round A rounded end cap is added to each end of the line
    \r\n * square A square end cap is added to each end of the line
    \r\n */\r\n Object.defineProperty(this, \"lineCap\", {\r\n get: function() {\r\n return this.ctx.lineCap;\r\n },\r\n set: function(value) {\r\n if ([\"butt\", \"round\", \"square\"].indexOf(value) !== -1) {\r\n this.ctx.lineCap = value;\r\n this.pdf.setLineCap(value);\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the current line width\r\n *\r\n * @name lineWidth\r\n * @default 1\r\n * @property {number} lineWidth The current line width, in pixels\r\n */\r\n Object.defineProperty(this, \"lineWidth\", {\r\n get: function() {\r\n return this.ctx.lineWidth;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n this.ctx.lineWidth = value;\r\n this.pdf.setLineWidth(value);\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the type of corner created, when two lines meet\r\n */\r\n Object.defineProperty(this, \"lineJoin\", {\r\n get: function() {\r\n return this.ctx.lineJoin;\r\n },\r\n set: function(value) {\r\n if ([\"bevel\", \"round\", \"miter\"].indexOf(value) !== -1) {\r\n this.ctx.lineJoin = value;\r\n this.pdf.setLineJoin(value);\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * A number specifying the miter limit ratio in coordinate space units. Zero, negative, Infinity, and NaN values are ignored. The default value is 10.0.\r\n *\r\n * @name miterLimit\r\n * @default 10\r\n */\r\n Object.defineProperty(this, \"miterLimit\", {\r\n get: function() {\r\n return this.ctx.miterLimit;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n this.ctx.miterLimit = value;\r\n this.pdf.setMiterLimit(value);\r\n }\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"textBaseline\", {\r\n get: function() {\r\n return this.ctx.textBaseline;\r\n },\r\n set: function(value) {\r\n this.ctx.textBaseline = value;\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"textAlign\", {\r\n get: function() {\r\n return this.ctx.textAlign;\r\n },\r\n set: function(value) {\r\n if ([\"right\", \"end\", \"center\", \"left\", \"start\"].indexOf(value) !== -1) {\r\n this.ctx.textAlign = value;\r\n }\r\n }\r\n });\r\n\r\n var _fontFaceMap = null;\r\n\r\n function getFontFaceMap(pdf, fontFaces) {\r\n if (_fontFaceMap === null) {\r\n var fontMap = pdf.getFontList();\r\n\r\n var convertedFontFaces = convertToFontFaces(fontMap);\r\n\r\n _fontFaceMap = buildFontFaceMap(convertedFontFaces.concat(fontFaces));\r\n }\r\n\r\n return _fontFaceMap;\r\n }\r\n\r\n function convertToFontFaces(fontMap) {\r\n var fontFaces = [];\r\n\r\n Object.keys(fontMap).forEach(function(family) {\r\n var styles = fontMap[family];\r\n\r\n styles.forEach(function(style) {\r\n var fontFace = null;\r\n\r\n switch (style) {\r\n case \"bold\":\r\n fontFace = {\r\n family: family,\r\n weight: \"bold\"\r\n };\r\n break;\r\n\r\n case \"italic\":\r\n fontFace = {\r\n family: family,\r\n style: \"italic\"\r\n };\r\n break;\r\n\r\n case \"bolditalic\":\r\n fontFace = {\r\n family: family,\r\n weight: \"bold\",\r\n style: \"italic\"\r\n };\r\n break;\r\n\r\n case \"\":\r\n case \"normal\":\r\n fontFace = {\r\n family: family\r\n };\r\n break;\r\n }\r\n\r\n // If font-face is still null here, it is a font with some styling we don't recognize and\r\n // cannot map or it is a font added via the fontFaces option of .html().\r\n if (fontFace !== null) {\r\n fontFace.ref = {\r\n name: family,\r\n style: style\r\n };\r\n\r\n fontFaces.push(fontFace);\r\n }\r\n });\r\n });\r\n\r\n return fontFaces;\r\n }\r\n\r\n var _fontFaces = null;\r\n /**\r\n * A map of available font-faces, as passed in the options of\r\n * .html(). If set a limited implementation of the font style matching\r\n * algorithm defined by https://www.w3.org/TR/css-fonts-3/#font-matching-algorithm\r\n * will be used. If not set it will fallback to previous behavior.\r\n */\r\n\r\n Object.defineProperty(this, \"fontFaces\", {\r\n get: function() {\r\n return _fontFaces;\r\n },\r\n set: function(value) {\r\n _fontFaceMap = null;\r\n _fontFaces = value;\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"font\", {\r\n get: function() {\r\n return this.ctx.font;\r\n },\r\n set: function(value) {\r\n this.ctx.font = value;\r\n var rx, matches;\r\n\r\n //source: https://stackoverflow.com/a/10136041\r\n // eslint-disable-next-line no-useless-escape\r\n rx = /^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))(?:\\s*\\/\\s*(normal|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])))?\\s*([-_,\\\"\\'\\sa-z]+?)\\s*$/i;\r\n matches = rx.exec(value);\r\n if (matches !== null) {\r\n var fontStyle = matches[1];\r\n var fontVariant = matches[2];\r\n var fontWeight = matches[3];\r\n var fontSize = matches[4];\r\n var lineHeight = matches[5];\r\n var fontFamily = matches[6];\r\n } else {\r\n return;\r\n }\r\n var rxFontSize = /^([.\\d]+)((?:%|in|[cem]m|ex|p[ctx]))$/i;\r\n var fontSizeUnit = rxFontSize.exec(fontSize)[2];\r\n\r\n if (\"px\" === fontSizeUnit) {\r\n fontSize = Math.floor(\r\n parseFloat(fontSize) * this.pdf.internal.scaleFactor\r\n );\r\n } else if (\"em\" === fontSizeUnit) {\r\n fontSize = Math.floor(parseFloat(fontSize) * this.pdf.getFontSize());\r\n } else {\r\n fontSize = Math.floor(\r\n parseFloat(fontSize) * this.pdf.internal.scaleFactor\r\n );\r\n }\r\n\r\n this.pdf.setFontSize(fontSize);\r\n var parts = parseFontFamily(fontFamily);\r\n\r\n if (this.fontFaces) {\r\n var fontFaceMap = getFontFaceMap(this.pdf, this.fontFaces);\r\n\r\n var rules = parts.map(function(ff) {\r\n return {\r\n family: ff,\r\n stretch: \"normal\", // TODO: Extract font-stretch from font rule (perhaps write proper parser for it?)\r\n weight: fontWeight,\r\n style: fontStyle\r\n };\r\n });\r\n\r\n var font = resolveFontFace(fontFaceMap, rules);\r\n this.pdf.setFont(font.ref.name, font.ref.style);\r\n return;\r\n }\r\n\r\n var style = \"\";\r\n if (\r\n fontWeight === \"bold\" ||\r\n parseInt(fontWeight, 10) >= 700 ||\r\n fontStyle === \"bold\"\r\n ) {\r\n style = \"bold\";\r\n }\r\n\r\n if (fontStyle === \"italic\") {\r\n style += \"italic\";\r\n }\r\n\r\n if (style.length === 0) {\r\n style = \"normal\";\r\n }\r\n var jsPdfFontName = \"\";\r\n\r\n var fallbackFonts = {\r\n arial: \"Helvetica\",\r\n Arial: \"Helvetica\",\r\n verdana: \"Helvetica\",\r\n Verdana: \"Helvetica\",\r\n helvetica: \"Helvetica\",\r\n Helvetica: \"Helvetica\",\r\n \"sans-serif\": \"Helvetica\",\r\n fixed: \"Courier\",\r\n monospace: \"Courier\",\r\n terminal: \"Courier\",\r\n cursive: \"Times\",\r\n fantasy: \"Times\",\r\n serif: \"Times\"\r\n };\r\n\r\n for (var i = 0; i < parts.length; i++) {\r\n if (\r\n this.pdf.internal.getFont(parts[i], style, {\r\n noFallback: true,\r\n disableWarning: true\r\n }) !== undefined\r\n ) {\r\n jsPdfFontName = parts[i];\r\n break;\r\n } else if (\r\n style === \"bolditalic\" &&\r\n this.pdf.internal.getFont(parts[i], \"bold\", {\r\n noFallback: true,\r\n disableWarning: true\r\n }) !== undefined\r\n ) {\r\n jsPdfFontName = parts[i];\r\n style = \"bold\";\r\n } else if (\r\n this.pdf.internal.getFont(parts[i], \"normal\", {\r\n noFallback: true,\r\n disableWarning: true\r\n }) !== undefined\r\n ) {\r\n jsPdfFontName = parts[i];\r\n style = \"normal\";\r\n break;\r\n }\r\n }\r\n if (jsPdfFontName === \"\") {\r\n for (var j = 0; j < parts.length; j++) {\r\n if (fallbackFonts[parts[j]]) {\r\n jsPdfFontName = fallbackFonts[parts[j]];\r\n break;\r\n }\r\n }\r\n }\r\n jsPdfFontName = jsPdfFontName === \"\" ? \"Times\" : jsPdfFontName;\r\n this.pdf.setFont(jsPdfFontName, style);\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"globalCompositeOperation\", {\r\n get: function() {\r\n return this.ctx.globalCompositeOperation;\r\n },\r\n set: function(value) {\r\n this.ctx.globalCompositeOperation = value;\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"globalAlpha\", {\r\n get: function() {\r\n return this.ctx.globalAlpha;\r\n },\r\n set: function(value) {\r\n this.ctx.globalAlpha = value;\r\n }\r\n });\r\n\r\n /**\r\n * A float specifying the amount of the line dash offset. The default value is 0.0.\r\n *\r\n * @name lineDashOffset\r\n * @default 0.0\r\n */\r\n Object.defineProperty(this, \"lineDashOffset\", {\r\n get: function() {\r\n return this.ctx.lineDashOffset;\r\n },\r\n set: function(value) {\r\n this.ctx.lineDashOffset = value;\r\n setLineDash.call(this);\r\n }\r\n });\r\n\r\n // Not HTML API\r\n Object.defineProperty(this, \"lineDash\", {\r\n get: function() {\r\n return this.ctx.lineDash;\r\n },\r\n set: function(value) {\r\n this.ctx.lineDash = value;\r\n setLineDash.call(this);\r\n }\r\n });\r\n\r\n // Not HTML API\r\n Object.defineProperty(this, \"ignoreClearRect\", {\r\n get: function() {\r\n return this.ctx.ignoreClearRect;\r\n },\r\n set: function(value) {\r\n this.ctx.ignoreClearRect = Boolean(value);\r\n }\r\n });\r\n };\r\n\r\n /**\r\n * Sets the line dash pattern used when stroking lines.\r\n * @name setLineDash\r\n * @function\r\n * @description It uses an array of values that specify alternating lengths of lines and gaps which describe the pattern.\r\n */\r\n Context2D.prototype.setLineDash = function(dashArray) {\r\n this.lineDash = dashArray;\r\n };\r\n\r\n /**\r\n * gets the current line dash pattern.\r\n * @name getLineDash\r\n * @function\r\n * @returns {Array} An Array of numbers that specify distances to alternately draw a line and a gap (in coordinate space units). If the number, when setting the elements, is odd, the elements of the array get copied and concatenated. For example, setting the line dash to [5, 15, 25] will result in getting back [5, 15, 25, 5, 15, 25].\r\n */\r\n Context2D.prototype.getLineDash = function() {\r\n if (this.lineDash.length % 2) {\r\n // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/getLineDash#return_value\r\n return this.lineDash.concat(this.lineDash);\r\n } else {\r\n // The copied value is returned to prevent contamination from outside.\r\n return this.lineDash.slice();\r\n }\r\n };\r\n\r\n Context2D.prototype.fill = function() {\r\n pathPreProcess.call(this, \"fill\", false);\r\n };\r\n\r\n /**\r\n * Actually draws the path you have defined\r\n *\r\n * @name stroke\r\n * @function\r\n * @description The stroke() method actually draws the path you have defined with all those moveTo() and lineTo() methods. The default color is black.\r\n */\r\n Context2D.prototype.stroke = function() {\r\n pathPreProcess.call(this, \"stroke\", false);\r\n };\r\n\r\n /**\r\n * Begins a path, or resets the current\r\n *\r\n * @name beginPath\r\n * @function\r\n * @description The beginPath() method begins a path, or resets the current path.\r\n */\r\n Context2D.prototype.beginPath = function() {\r\n this.path = [\r\n {\r\n type: \"begin\"\r\n }\r\n ];\r\n };\r\n\r\n /**\r\n * Moves the path to the specified point in the canvas, without creating a line\r\n *\r\n * @name moveTo\r\n * @function\r\n * @param x {Number} The x-coordinate of where to move the path to\r\n * @param y {Number} The y-coordinate of where to move the path to\r\n */\r\n Context2D.prototype.moveTo = function(x, y) {\r\n if (isNaN(x) || isNaN(y)) {\r\n console.error(\"jsPDF.context2d.moveTo: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.moveTo\");\r\n }\r\n\r\n var pt = this.ctx.transform.applyToPoint(new Point(x, y));\r\n\r\n this.path.push({\r\n type: \"mt\",\r\n x: pt.x,\r\n y: pt.y\r\n });\r\n this.ctx.lastPoint = new Point(x, y);\r\n };\r\n\r\n /**\r\n * Creates a path from the current point back to the starting point\r\n *\r\n * @name closePath\r\n * @function\r\n * @description The closePath() method creates a path from the current point back to the starting point.\r\n */\r\n Context2D.prototype.closePath = function() {\r\n var pathBegin = new Point(0, 0);\r\n var i = 0;\r\n for (i = this.path.length - 1; i !== -1; i--) {\r\n if (this.path[i].type === \"begin\") {\r\n if (\r\n typeof this.path[i + 1] === \"object\" &&\r\n typeof this.path[i + 1].x === \"number\"\r\n ) {\r\n pathBegin = new Point(this.path[i + 1].x, this.path[i + 1].y);\r\n break;\r\n }\r\n }\r\n }\r\n this.path.push({\r\n type: \"close\"\r\n });\r\n this.ctx.lastPoint = new Point(pathBegin.x, pathBegin.y);\r\n };\r\n\r\n /**\r\n * Adds a new point and creates a line to that point from the last specified point in the canvas\r\n *\r\n * @name lineTo\r\n * @function\r\n * @param x The x-coordinate of where to create the line to\r\n * @param y The y-coordinate of where to create the line to\r\n * @description The lineTo() method adds a new point and creates a line TO that point FROM the last specified point in the canvas (this method does not draw the line).\r\n */\r\n Context2D.prototype.lineTo = function(x, y) {\r\n if (isNaN(x) || isNaN(y)) {\r\n console.error(\"jsPDF.context2d.lineTo: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.lineTo\");\r\n }\r\n\r\n var pt = this.ctx.transform.applyToPoint(new Point(x, y));\r\n\r\n this.path.push({\r\n type: \"lt\",\r\n x: pt.x,\r\n y: pt.y\r\n });\r\n this.ctx.lastPoint = new Point(pt.x, pt.y);\r\n };\r\n\r\n /**\r\n * Clips a region of any shape and size from the original canvas\r\n *\r\n * @name clip\r\n * @function\r\n * @description The clip() method clips a region of any shape and size from the original canvas.\r\n */\r\n Context2D.prototype.clip = function() {\r\n this.ctx.clip_path = JSON.parse(JSON.stringify(this.path));\r\n pathPreProcess.call(this, null, true);\r\n };\r\n\r\n /**\r\n * Creates a cubic Bézier curve\r\n *\r\n * @name quadraticCurveTo\r\n * @function\r\n * @param cpx {Number} The x-coordinate of the Bézier control point\r\n * @param cpy {Number} The y-coordinate of the Bézier control point\r\n * @param x {Number} The x-coordinate of the ending point\r\n * @param y {Number} The y-coordinate of the ending point\r\n * @description The quadraticCurveTo() method adds a point to the current path by using the specified control points that represent a quadratic Bézier curve.

    A quadratic Bézier curve requires two points. The first point is a control point that is used in the quadratic Bézier calculation and the second point is the ending point for the curve. The starting point for the curve is the last point in the current path. If a path does not exist, use the beginPath() and moveTo() methods to define a starting point.\r\n */\r\n Context2D.prototype.quadraticCurveTo = function(cpx, cpy, x, y) {\r\n if (isNaN(x) || isNaN(y) || isNaN(cpx) || isNaN(cpy)) {\r\n console.error(\r\n \"jsPDF.context2d.quadraticCurveTo: Invalid arguments\",\r\n arguments\r\n );\r\n throw new Error(\r\n \"Invalid arguments passed to jsPDF.context2d.quadraticCurveTo\"\r\n );\r\n }\r\n\r\n var pt0 = this.ctx.transform.applyToPoint(new Point(x, y));\r\n var pt1 = this.ctx.transform.applyToPoint(new Point(cpx, cpy));\r\n\r\n this.path.push({\r\n type: \"qct\",\r\n x1: pt1.x,\r\n y1: pt1.y,\r\n x: pt0.x,\r\n y: pt0.y\r\n });\r\n this.ctx.lastPoint = new Point(pt0.x, pt0.y);\r\n };\r\n\r\n /**\r\n * Creates a cubic Bézier curve\r\n *\r\n * @name bezierCurveTo\r\n * @function\r\n * @param cp1x {Number} The x-coordinate of the first Bézier control point\r\n * @param cp1y {Number} The y-coordinate of the first Bézier control point\r\n * @param cp2x {Number} The x-coordinate of the second Bézier control point\r\n * @param cp2y {Number} The y-coordinate of the second Bézier control point\r\n * @param x {Number} The x-coordinate of the ending point\r\n * @param y {Number} The y-coordinate of the ending point\r\n * @description The bezierCurveTo() method adds a point to the current path by using the specified control points that represent a cubic Bézier curve.

    A cubic bezier curve requires three points. The first two points are control points that are used in the cubic Bézier calculation and the last point is the ending point for the curve. The starting point for the curve is the last point in the current path. If a path does not exist, use the beginPath() and moveTo() methods to define a starting point.\r\n */\r\n Context2D.prototype.bezierCurveTo = function(cp1x, cp1y, cp2x, cp2y, x, y) {\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n isNaN(cp1x) ||\r\n isNaN(cp1y) ||\r\n isNaN(cp2x) ||\r\n isNaN(cp2y)\r\n ) {\r\n console.error(\r\n \"jsPDF.context2d.bezierCurveTo: Invalid arguments\",\r\n arguments\r\n );\r\n throw new Error(\r\n \"Invalid arguments passed to jsPDF.context2d.bezierCurveTo\"\r\n );\r\n }\r\n var pt0 = this.ctx.transform.applyToPoint(new Point(x, y));\r\n var pt1 = this.ctx.transform.applyToPoint(new Point(cp1x, cp1y));\r\n var pt2 = this.ctx.transform.applyToPoint(new Point(cp2x, cp2y));\r\n\r\n this.path.push({\r\n type: \"bct\",\r\n x1: pt1.x,\r\n y1: pt1.y,\r\n x2: pt2.x,\r\n y2: pt2.y,\r\n x: pt0.x,\r\n y: pt0.y\r\n });\r\n this.ctx.lastPoint = new Point(pt0.x, pt0.y);\r\n };\r\n\r\n /**\r\n * Creates an arc/curve (used to create circles, or parts of circles)\r\n *\r\n * @name arc\r\n * @function\r\n * @param x {Number} The x-coordinate of the center of the circle\r\n * @param y {Number} The y-coordinate of the center of the circle\r\n * @param radius {Number} The radius of the circle\r\n * @param startAngle {Number} The starting angle, in radians (0 is at the 3 o'clock position of the arc's circle)\r\n * @param endAngle {Number} The ending angle, in radians\r\n * @param counterclockwise {Boolean} Optional. Specifies whether the drawing should be counterclockwise or clockwise. False is default, and indicates clockwise, while true indicates counter-clockwise.\r\n * @description The arc() method creates an arc/curve (used to create circles, or parts of circles).\r\n */\r\n Context2D.prototype.arc = function(\r\n x,\r\n y,\r\n radius,\r\n startAngle,\r\n endAngle,\r\n counterclockwise\r\n ) {\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n isNaN(radius) ||\r\n isNaN(startAngle) ||\r\n isNaN(endAngle)\r\n ) {\r\n console.error(\"jsPDF.context2d.arc: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.arc\");\r\n }\r\n counterclockwise = Boolean(counterclockwise);\r\n\r\n if (!this.ctx.transform.isIdentity) {\r\n var xpt = this.ctx.transform.applyToPoint(new Point(x, y));\r\n x = xpt.x;\r\n y = xpt.y;\r\n\r\n var x_radPt = this.ctx.transform.applyToPoint(new Point(0, radius));\r\n var x_radPt0 = this.ctx.transform.applyToPoint(new Point(0, 0));\r\n radius = Math.sqrt(\r\n Math.pow(x_radPt.x - x_radPt0.x, 2) +\r\n Math.pow(x_radPt.y - x_radPt0.y, 2)\r\n );\r\n }\r\n if (Math.abs(endAngle - startAngle) >= 2 * Math.PI) {\r\n startAngle = 0;\r\n endAngle = 2 * Math.PI;\r\n }\r\n\r\n this.path.push({\r\n type: \"arc\",\r\n x: x,\r\n y: y,\r\n radius: radius,\r\n startAngle: startAngle,\r\n endAngle: endAngle,\r\n counterclockwise: counterclockwise\r\n });\r\n // this.ctx.lastPoint(new Point(pt.x,pt.y));\r\n };\r\n\r\n /**\r\n * Creates an arc/curve between two tangents\r\n *\r\n * @name arcTo\r\n * @function\r\n * @param x1 {Number} The x-coordinate of the first tangent\r\n * @param y1 {Number} The y-coordinate of the first tangent\r\n * @param x2 {Number} The x-coordinate of the second tangent\r\n * @param y2 {Number} The y-coordinate of the second tangent\r\n * @param radius The radius of the arc\r\n * @description The arcTo() method creates an arc/curve between two tangents on the canvas.\r\n */\r\n // eslint-disable-next-line no-unused-vars\r\n Context2D.prototype.arcTo = function(x1, y1, x2, y2, radius) {\r\n throw new Error(\"arcTo not implemented.\");\r\n };\r\n\r\n /**\r\n * Creates a rectangle\r\n *\r\n * @name rect\r\n * @function\r\n * @param x {Number} The x-coordinate of the upper-left corner of the rectangle\r\n * @param y {Number} The y-coordinate of the upper-left corner of the rectangle\r\n * @param w {Number} The width of the rectangle, in pixels\r\n * @param h {Number} The height of the rectangle, in pixels\r\n * @description The rect() method creates a rectangle.\r\n */\r\n Context2D.prototype.rect = function(x, y, w, h) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h)) {\r\n console.error(\"jsPDF.context2d.rect: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.rect\");\r\n }\r\n this.moveTo(x, y);\r\n this.lineTo(x + w, y);\r\n this.lineTo(x + w, y + h);\r\n this.lineTo(x, y + h);\r\n this.lineTo(x, y);\r\n this.lineTo(x + w, y);\r\n this.lineTo(x, y);\r\n };\r\n\r\n /**\r\n * Draws a \"filled\" rectangle\r\n *\r\n * @name fillRect\r\n * @function\r\n * @param x {Number} The x-coordinate of the upper-left corner of the rectangle\r\n * @param y {Number} The y-coordinate of the upper-left corner of the rectangle\r\n * @param w {Number} The width of the rectangle, in pixels\r\n * @param h {Number} The height of the rectangle, in pixels\r\n * @description The fillRect() method draws a \"filled\" rectangle. The default color of the fill is black.\r\n */\r\n Context2D.prototype.fillRect = function(x, y, w, h) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h)) {\r\n console.error(\"jsPDF.context2d.fillRect: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.fillRect\");\r\n }\r\n if (isFillTransparent.call(this)) {\r\n return;\r\n }\r\n var tmp = {};\r\n if (this.lineCap !== \"butt\") {\r\n tmp.lineCap = this.lineCap;\r\n this.lineCap = \"butt\";\r\n }\r\n if (this.lineJoin !== \"miter\") {\r\n tmp.lineJoin = this.lineJoin;\r\n this.lineJoin = \"miter\";\r\n }\r\n\r\n this.beginPath();\r\n this.rect(x, y, w, h);\r\n this.fill();\r\n\r\n if (tmp.hasOwnProperty(\"lineCap\")) {\r\n this.lineCap = tmp.lineCap;\r\n }\r\n if (tmp.hasOwnProperty(\"lineJoin\")) {\r\n this.lineJoin = tmp.lineJoin;\r\n }\r\n };\r\n\r\n /**\r\n * Draws a rectangle (no fill)\r\n *\r\n * @name strokeRect\r\n * @function\r\n * @param x {Number} The x-coordinate of the upper-left corner of the rectangle\r\n * @param y {Number} The y-coordinate of the upper-left corner of the rectangle\r\n * @param w {Number} The width of the rectangle, in pixels\r\n * @param h {Number} The height of the rectangle, in pixels\r\n * @description The strokeRect() method draws a rectangle (no fill). The default color of the stroke is black.\r\n */\r\n Context2D.prototype.strokeRect = function strokeRect(x, y, w, h) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h)) {\r\n console.error(\"jsPDF.context2d.strokeRect: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.strokeRect\");\r\n }\r\n if (isStrokeTransparent.call(this)) {\r\n return;\r\n }\r\n this.beginPath();\r\n this.rect(x, y, w, h);\r\n this.stroke();\r\n };\r\n\r\n /**\r\n * Clears the specified pixels within a given rectangle\r\n *\r\n * @name clearRect\r\n * @function\r\n * @param x {Number} The x-coordinate of the upper-left corner of the rectangle\r\n * @param y {Number} The y-coordinate of the upper-left corner of the rectangle\r\n * @param w {Number} The width of the rectangle to clear, in pixels\r\n * @param h {Number} The height of the rectangle to clear, in pixels\r\n * @description We cannot clear PDF commands that were already written to PDF, so we use white instead.
    \r\n * As a special case, read a special flag (ignoreClearRect) and do nothing if it is set.\r\n * This results in all calls to clearRect() to do nothing, and keep the canvas transparent.\r\n * This flag is stored in the save/restore context and is managed the same way as other drawing states.\r\n *\r\n */\r\n Context2D.prototype.clearRect = function(x, y, w, h) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h)) {\r\n console.error(\"jsPDF.context2d.clearRect: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.clearRect\");\r\n }\r\n if (this.ignoreClearRect) {\r\n return;\r\n }\r\n\r\n this.fillStyle = \"#ffffff\";\r\n this.fillRect(x, y, w, h);\r\n };\r\n\r\n /**\r\n * Saves the state of the current context\r\n *\r\n * @name save\r\n * @function\r\n */\r\n Context2D.prototype.save = function(doStackPush) {\r\n doStackPush = typeof doStackPush === \"boolean\" ? doStackPush : true;\r\n var tmpPageNumber = this.pdf.internal.getCurrentPageInfo().pageNumber;\r\n for (var i = 0; i < this.pdf.internal.getNumberOfPages(); i++) {\r\n this.pdf.setPage(i + 1);\r\n this.pdf.internal.out(\"q\");\r\n }\r\n this.pdf.setPage(tmpPageNumber);\r\n\r\n if (doStackPush) {\r\n this.ctx.fontSize = this.pdf.internal.getFontSize();\r\n var ctx = new ContextLayer(this.ctx);\r\n this.ctxStack.push(this.ctx);\r\n this.ctx = ctx;\r\n }\r\n };\r\n\r\n /**\r\n * Returns previously saved path state and attributes\r\n *\r\n * @name restore\r\n * @function\r\n */\r\n Context2D.prototype.restore = function(doStackPop) {\r\n doStackPop = typeof doStackPop === \"boolean\" ? doStackPop : true;\r\n var tmpPageNumber = this.pdf.internal.getCurrentPageInfo().pageNumber;\r\n for (var i = 0; i < this.pdf.internal.getNumberOfPages(); i++) {\r\n this.pdf.setPage(i + 1);\r\n this.pdf.internal.out(\"Q\");\r\n }\r\n this.pdf.setPage(tmpPageNumber);\r\n\r\n if (doStackPop && this.ctxStack.length !== 0) {\r\n this.ctx = this.ctxStack.pop();\r\n this.fillStyle = this.ctx.fillStyle;\r\n this.strokeStyle = this.ctx.strokeStyle;\r\n this.font = this.ctx.font;\r\n this.lineCap = this.ctx.lineCap;\r\n this.lineWidth = this.ctx.lineWidth;\r\n this.lineJoin = this.ctx.lineJoin;\r\n this.lineDash = this.ctx.lineDash;\r\n this.lineDashOffset = this.ctx.lineDashOffset;\r\n }\r\n };\r\n\r\n /**\r\n * @name toDataURL\r\n * @function\r\n */\r\n Context2D.prototype.toDataURL = function() {\r\n throw new Error(\"toDataUrl not implemented.\");\r\n };\r\n\r\n //helper functions\r\n\r\n /**\r\n * Get the decimal values of r, g, b and a\r\n *\r\n * @name getRGBA\r\n * @function\r\n * @private\r\n * @ignore\r\n */\r\n var getRGBA = function(style) {\r\n var rxRgb = /rgb\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*\\)/;\r\n var rxRgba = /rgba\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*([\\d.]+)\\s*\\)/;\r\n var rxTransparent = /transparent|rgba\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*0+\\s*\\)/;\r\n\r\n var r, g, b, a;\r\n\r\n if (style.isCanvasGradient === true) {\r\n style = style.getColor();\r\n }\r\n\r\n if (!style) {\r\n return { r: 0, g: 0, b: 0, a: 0, style: style };\r\n }\r\n\r\n if (rxTransparent.test(style)) {\r\n r = 0;\r\n g = 0;\r\n b = 0;\r\n a = 0;\r\n } else {\r\n var matches = rxRgb.exec(style);\r\n if (matches !== null) {\r\n r = parseInt(matches[1]);\r\n g = parseInt(matches[2]);\r\n b = parseInt(matches[3]);\r\n a = 1;\r\n } else {\r\n matches = rxRgba.exec(style);\r\n if (matches !== null) {\r\n r = parseInt(matches[1]);\r\n g = parseInt(matches[2]);\r\n b = parseInt(matches[3]);\r\n a = parseFloat(matches[4]);\r\n } else {\r\n a = 1;\r\n\r\n if (typeof style === \"string\" && style.charAt(0) !== \"#\") {\r\n var rgbColor = new RGBColor(style);\r\n if (rgbColor.ok) {\r\n style = rgbColor.toHex();\r\n } else {\r\n style = \"#000000\";\r\n }\r\n }\r\n\r\n if (style.length === 4) {\r\n r = style.substring(1, 2);\r\n r += r;\r\n g = style.substring(2, 3);\r\n g += g;\r\n b = style.substring(3, 4);\r\n b += b;\r\n } else {\r\n r = style.substring(1, 3);\r\n g = style.substring(3, 5);\r\n b = style.substring(5, 7);\r\n }\r\n r = parseInt(r, 16);\r\n g = parseInt(g, 16);\r\n b = parseInt(b, 16);\r\n }\r\n }\r\n }\r\n return { r: r, g: g, b: b, a: a, style: style };\r\n };\r\n\r\n /**\r\n * @name isFillTransparent\r\n * @function\r\n * @private\r\n * @ignore\r\n * @returns {Boolean}\r\n */\r\n var isFillTransparent = function() {\r\n return this.ctx.isFillTransparent || this.globalAlpha == 0;\r\n };\r\n\r\n /**\r\n * @name isStrokeTransparent\r\n * @function\r\n * @private\r\n * @ignore\r\n * @returns {Boolean}\r\n */\r\n var isStrokeTransparent = function() {\r\n return Boolean(this.ctx.isStrokeTransparent || this.globalAlpha == 0);\r\n };\r\n\r\n /**\r\n * Draws \"filled\" text on the canvas\r\n *\r\n * @name fillText\r\n * @function\r\n * @param text {String} Specifies the text that will be written on the canvas\r\n * @param x {Number} The x coordinate where to start painting the text (relative to the canvas)\r\n * @param y {Number} The y coordinate where to start painting the text (relative to the canvas)\r\n * @param maxWidth {Number} Optional. The maximum allowed width of the text, in pixels\r\n * @description The fillText() method draws filled text on the canvas. The default color of the text is black.\r\n */\r\n Context2D.prototype.fillText = function(text, x, y, maxWidth) {\r\n if (isNaN(x) || isNaN(y) || typeof text !== \"string\") {\r\n console.error(\"jsPDF.context2d.fillText: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.fillText\");\r\n }\r\n maxWidth = isNaN(maxWidth) ? undefined : maxWidth;\r\n if (isFillTransparent.call(this)) {\r\n return;\r\n }\r\n\r\n var degs = rad2deg(this.ctx.transform.rotation);\r\n\r\n // We only use X axis as scale hint\r\n var scale = this.ctx.transform.scaleX;\r\n\r\n putText.call(this, {\r\n text: text,\r\n x: x,\r\n y: y,\r\n scale: scale,\r\n angle: degs,\r\n align: this.textAlign,\r\n maxWidth: maxWidth\r\n });\r\n };\r\n\r\n /**\r\n * Draws text on the canvas (no fill)\r\n *\r\n * @name strokeText\r\n * @function\r\n * @param text {String} Specifies the text that will be written on the canvas\r\n * @param x {Number} The x coordinate where to start painting the text (relative to the canvas)\r\n * @param y {Number} The y coordinate where to start painting the text (relative to the canvas)\r\n * @param maxWidth {Number} Optional. The maximum allowed width of the text, in pixels\r\n * @description The strokeText() method draws text (with no fill) on the canvas. The default color of the text is black.\r\n */\r\n Context2D.prototype.strokeText = function(text, x, y, maxWidth) {\r\n if (isNaN(x) || isNaN(y) || typeof text !== \"string\") {\r\n console.error(\"jsPDF.context2d.strokeText: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.strokeText\");\r\n }\r\n if (isStrokeTransparent.call(this)) {\r\n return;\r\n }\r\n\r\n maxWidth = isNaN(maxWidth) ? undefined : maxWidth;\r\n\r\n var degs = rad2deg(this.ctx.transform.rotation);\r\n var scale = this.ctx.transform.scaleX;\r\n\r\n putText.call(this, {\r\n text: text,\r\n x: x,\r\n y: y,\r\n scale: scale,\r\n renderingMode: \"stroke\",\r\n angle: degs,\r\n align: this.textAlign,\r\n maxWidth: maxWidth\r\n });\r\n };\r\n\r\n /**\r\n * Returns an object that contains the width of the specified text\r\n *\r\n * @name measureText\r\n * @function\r\n * @param text {String} The text to be measured\r\n * @description The measureText() method returns an object that contains the width of the specified text, in pixels.\r\n * @returns {Number}\r\n */\r\n Context2D.prototype.measureText = function(text) {\r\n if (typeof text !== \"string\") {\r\n console.error(\r\n \"jsPDF.context2d.measureText: Invalid arguments\",\r\n arguments\r\n );\r\n throw new Error(\r\n \"Invalid arguments passed to jsPDF.context2d.measureText\"\r\n );\r\n }\r\n var pdf = this.pdf;\r\n var k = this.pdf.internal.scaleFactor;\r\n\r\n var fontSize = pdf.internal.getFontSize();\r\n var txtWidth =\r\n (pdf.getStringUnitWidth(text) * fontSize) / pdf.internal.scaleFactor;\r\n txtWidth *= Math.round(((k * 96) / 72) * 10000) / 10000;\r\n\r\n var TextMetrics = function(options) {\r\n options = options || {};\r\n var _width = options.width || 0;\r\n Object.defineProperty(this, \"width\", {\r\n get: function() {\r\n return _width;\r\n }\r\n });\r\n return this;\r\n };\r\n return new TextMetrics({ width: txtWidth });\r\n };\r\n\r\n //Transformations\r\n\r\n /**\r\n * Scales the current drawing bigger or smaller\r\n *\r\n * @name scale\r\n * @function\r\n * @param scalewidth {Number} Scales the width of the current drawing (1=100%, 0.5=50%, 2=200%, etc.)\r\n * @param scaleheight {Number} Scales the height of the current drawing (1=100%, 0.5=50%, 2=200%, etc.)\r\n * @description The scale() method scales the current drawing, bigger or smaller.\r\n */\r\n Context2D.prototype.scale = function(scalewidth, scaleheight) {\r\n if (isNaN(scalewidth) || isNaN(scaleheight)) {\r\n console.error(\"jsPDF.context2d.scale: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.scale\");\r\n }\r\n var matrix = new Matrix(scalewidth, 0.0, 0.0, scaleheight, 0.0, 0.0);\r\n this.ctx.transform = this.ctx.transform.multiply(matrix);\r\n };\r\n\r\n /**\r\n * Rotates the current drawing\r\n *\r\n * @name rotate\r\n * @function\r\n * @param angle {Number} The rotation angle, in radians.\r\n * @description To calculate from degrees to radians: degrees*Math.PI/180.
    \r\n * Example: to rotate 5 degrees, specify the following: 5*Math.PI/180\r\n */\r\n Context2D.prototype.rotate = function(angle) {\r\n if (isNaN(angle)) {\r\n console.error(\"jsPDF.context2d.rotate: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.rotate\");\r\n }\r\n var matrix = new Matrix(\r\n Math.cos(angle),\r\n Math.sin(angle),\r\n -Math.sin(angle),\r\n Math.cos(angle),\r\n 0.0,\r\n 0.0\r\n );\r\n this.ctx.transform = this.ctx.transform.multiply(matrix);\r\n };\r\n\r\n /**\r\n * Remaps the (0,0) position on the canvas\r\n *\r\n * @name translate\r\n * @function\r\n * @param x {Number} The value to add to horizontal (x) coordinates\r\n * @param y {Number} The value to add to vertical (y) coordinates\r\n * @description The translate() method remaps the (0,0) position on the canvas.\r\n */\r\n Context2D.prototype.translate = function(x, y) {\r\n if (isNaN(x) || isNaN(y)) {\r\n console.error(\"jsPDF.context2d.translate: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.translate\");\r\n }\r\n var matrix = new Matrix(1.0, 0.0, 0.0, 1.0, x, y);\r\n this.ctx.transform = this.ctx.transform.multiply(matrix);\r\n };\r\n\r\n /**\r\n * Replaces the current transformation matrix for the drawing\r\n *\r\n * @name transform\r\n * @function\r\n * @param a {Number} Horizontal scaling\r\n * @param b {Number} Horizontal skewing\r\n * @param c {Number} Vertical skewing\r\n * @param d {Number} Vertical scaling\r\n * @param e {Number} Horizontal moving\r\n * @param f {Number} Vertical moving\r\n * @description Each object on the canvas has a current transformation matrix.

    The transform() method replaces the current transformation matrix. It multiplies the current transformation matrix with the matrix described by:



    a c e

    b d f

    0 0 1

    In other words, the transform() method lets you scale, rotate, move, and skew the current context.\r\n */\r\n Context2D.prototype.transform = function(a, b, c, d, e, f) {\r\n if (isNaN(a) || isNaN(b) || isNaN(c) || isNaN(d) || isNaN(e) || isNaN(f)) {\r\n console.error(\"jsPDF.context2d.transform: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.transform\");\r\n }\r\n var matrix = new Matrix(a, b, c, d, e, f);\r\n this.ctx.transform = this.ctx.transform.multiply(matrix);\r\n };\r\n\r\n /**\r\n * Resets the current transform to the identity matrix. Then runs transform()\r\n *\r\n * @name setTransform\r\n * @function\r\n * @param a {Number} Horizontal scaling\r\n * @param b {Number} Horizontal skewing\r\n * @param c {Number} Vertical skewing\r\n * @param d {Number} Vertical scaling\r\n * @param e {Number} Horizontal moving\r\n * @param f {Number} Vertical moving\r\n * @description Each object on the canvas has a current transformation matrix.

    The setTransform() method resets the current transform to the identity matrix, and then runs transform() with the same arguments.

    In other words, the setTransform() method lets you scale, rotate, move, and skew the current context.\r\n */\r\n Context2D.prototype.setTransform = function(a, b, c, d, e, f) {\r\n a = isNaN(a) ? 1 : a;\r\n b = isNaN(b) ? 0 : b;\r\n c = isNaN(c) ? 0 : c;\r\n d = isNaN(d) ? 1 : d;\r\n e = isNaN(e) ? 0 : e;\r\n f = isNaN(f) ? 0 : f;\r\n this.ctx.transform = new Matrix(a, b, c, d, e, f);\r\n };\r\n\r\n /**\r\n * Should only be used if pageWrapYEnabled is true\r\n *\r\n * @name setPageByYPosition\r\n * @function\r\n * @private\r\n * @ignore\r\n * @returns One-based Page Number\r\n */\r\n var setPageByYPosition = function(y) {\r\n if (this.pageWrapYEnabled) {\r\n this.lastBreak = 0;\r\n var manualBreaks = 0;\r\n var autoBreaks = 0;\r\n for (var i = 0; i < this.pageBreaks.length; i++) {\r\n if (y >= this.pageBreaks[i]) {\r\n manualBreaks++;\r\n if (this.lastBreak === 0) {\r\n autoBreaks++;\r\n }\r\n var spaceBetweenLastBreak = this.pageBreaks[i] - this.lastBreak;\r\n this.lastBreak = this.pageBreaks[i];\r\n var pagesSinceLastBreak = Math.floor(\r\n spaceBetweenLastBreak / this.pageWrapY\r\n );\r\n autoBreaks += pagesSinceLastBreak;\r\n }\r\n }\r\n if (this.lastBreak === 0) {\r\n var pagesSinceLastBreak = Math.floor(y / this.pageWrapY) + 1;\r\n autoBreaks += pagesSinceLastBreak;\r\n }\r\n return autoBreaks + manualBreaks;\r\n } else {\r\n return this.pdf.internal.getCurrentPageInfo().pageNumber;\r\n }\r\n };\r\n\r\n var hasMargins = function() {\r\n return (\r\n this.margin[0] > 0 ||\r\n this.margin[1] > 0 ||\r\n this.margin[2] > 0 ||\r\n this.margin[3] > 0\r\n );\r\n };\r\n\r\n /**\r\n * Draws an image, canvas, or video onto the canvas\r\n *\r\n * @function\r\n * @param img {} Specifies the image, canvas, or video element to use\r\n * @param sx {Number} Optional. The x coordinate where to start clipping\r\n * @param sy {Number} Optional. The y coordinate where to start clipping\r\n * @param swidth {Number} Optional. The width of the clipped image\r\n * @param sheight {Number} Optional. The height of the clipped image\r\n * @param x {Number} The x coordinate where to place the image on the canvas\r\n * @param y {Number} The y coordinate where to place the image on the canvas\r\n * @param width {Number} Optional. The width of the image to use (stretch or reduce the image)\r\n * @param height {Number} Optional. The height of the image to use (stretch or reduce the image)\r\n */\r\n Context2D.prototype.drawImage = function(\r\n img,\r\n sx,\r\n sy,\r\n swidth,\r\n sheight,\r\n x,\r\n y,\r\n width,\r\n height\r\n ) {\r\n var imageProperties = this.pdf.getImageProperties(img);\r\n var factorX = 1;\r\n var factorY = 1;\r\n var isClip;\r\n\r\n var clipFactorX = 1;\r\n var clipFactorY = 1;\r\n\r\n if (typeof swidth !== \"undefined\" && typeof width !== \"undefined\") {\r\n isClip = true;\r\n clipFactorX = width / swidth;\r\n clipFactorY = height / sheight;\r\n factorX = ((imageProperties.width / swidth) * width) / swidth;\r\n factorY = ((imageProperties.height / sheight) * height) / sheight;\r\n }\r\n\r\n //is sx and sy are set and x and y not, set x and y with values of sx and sy\r\n if (typeof x === \"undefined\") {\r\n x = sx;\r\n y = sy;\r\n sx = 0;\r\n sy = 0;\r\n }\r\n\r\n if (typeof swidth !== \"undefined\" && typeof width === \"undefined\") {\r\n width = swidth;\r\n height = sheight;\r\n }\r\n if (typeof swidth === \"undefined\" && typeof width === \"undefined\") {\r\n width = imageProperties.width;\r\n height = imageProperties.height;\r\n }\r\n\r\n var decomposedTransformationMatrix = this.ctx.transform.decompose();\r\n var angle = rad2deg(decomposedTransformationMatrix.rotate.shx);\r\n var matrix = new Matrix();\r\n matrix = matrix.multiply(decomposedTransformationMatrix.translate);\r\n matrix = matrix.multiply(decomposedTransformationMatrix.skew);\r\n matrix = matrix.multiply(decomposedTransformationMatrix.scale);\r\n var xRect = matrix.applyToRectangle(\r\n new Rectangle(\r\n x - sx * clipFactorX,\r\n y - sy * clipFactorY,\r\n swidth * factorX,\r\n sheight * factorY\r\n )\r\n );\r\n var pageArray = getPagesByPath.call(this, xRect);\r\n var pages = [];\r\n for (var ii = 0; ii < pageArray.length; ii += 1) {\r\n if (pages.indexOf(pageArray[ii]) === -1) {\r\n pages.push(pageArray[ii]);\r\n }\r\n }\r\n\r\n sortPages(pages);\r\n\r\n var clipPath;\r\n if (this.autoPaging) {\r\n var min = pages[0];\r\n var max = pages[pages.length - 1];\r\n for (var i = min; i < max + 1; i++) {\r\n this.pdf.setPage(i);\r\n\r\n var pageWidthMinusMargins =\r\n this.pdf.internal.pageSize.width - this.margin[3] - this.margin[1];\r\n var topMargin = i === 1 ? this.posY + this.margin[0] : this.margin[0];\r\n var firstPageHeight =\r\n this.pdf.internal.pageSize.height -\r\n this.posY -\r\n this.margin[0] -\r\n this.margin[2];\r\n var pageHeightMinusMargins =\r\n this.pdf.internal.pageSize.height - this.margin[0] - this.margin[2];\r\n var previousPageHeightSum =\r\n i === 1 ? 0 : firstPageHeight + (i - 2) * pageHeightMinusMargins;\r\n\r\n if (this.ctx.clip_path.length !== 0) {\r\n var tmpPaths = this.path;\r\n clipPath = JSON.parse(JSON.stringify(this.ctx.clip_path));\r\n this.path = pathPositionRedo(\r\n clipPath,\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n );\r\n drawPaths.call(this, \"fill\", true);\r\n this.path = tmpPaths;\r\n }\r\n var tmpRect = JSON.parse(JSON.stringify(xRect));\r\n tmpRect = pathPositionRedo(\r\n [tmpRect],\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n )[0];\r\n\r\n const needsClipping = (i > min || i < max) && hasMargins.call(this);\r\n\r\n if (needsClipping) {\r\n this.pdf.saveGraphicsState();\r\n this.pdf\r\n .rect(\r\n this.margin[3],\r\n this.margin[0],\r\n pageWidthMinusMargins,\r\n pageHeightMinusMargins,\r\n null\r\n )\r\n .clip()\r\n .discardPath();\r\n }\r\n this.pdf.addImage(\r\n img,\r\n \"JPEG\",\r\n tmpRect.x,\r\n tmpRect.y,\r\n tmpRect.w,\r\n tmpRect.h,\r\n null,\r\n null,\r\n angle\r\n );\r\n if (needsClipping) {\r\n this.pdf.restoreGraphicsState();\r\n }\r\n }\r\n } else {\r\n this.pdf.addImage(\r\n img,\r\n \"JPEG\",\r\n xRect.x,\r\n xRect.y,\r\n xRect.w,\r\n xRect.h,\r\n null,\r\n null,\r\n angle\r\n );\r\n }\r\n };\r\n\r\n var getPagesByPath = function(path, pageWrapX, pageWrapY) {\r\n var result = [];\r\n pageWrapX = pageWrapX || this.pdf.internal.pageSize.width;\r\n pageWrapY =\r\n pageWrapY ||\r\n this.pdf.internal.pageSize.height - this.margin[0] - this.margin[2];\r\n var yOffset = this.posY + this.ctx.prevPageLastElemOffset;\r\n\r\n switch (path.type) {\r\n default:\r\n case \"mt\":\r\n case \"lt\":\r\n result.push(Math.floor((path.y + yOffset) / pageWrapY) + 1);\r\n break;\r\n case \"arc\":\r\n result.push(\r\n Math.floor((path.y + yOffset - path.radius) / pageWrapY) + 1\r\n );\r\n result.push(\r\n Math.floor((path.y + yOffset + path.radius) / pageWrapY) + 1\r\n );\r\n break;\r\n case \"qct\":\r\n var rectOfQuadraticCurve = getQuadraticCurveBoundary(\r\n this.ctx.lastPoint.x,\r\n this.ctx.lastPoint.y,\r\n path.x1,\r\n path.y1,\r\n path.x,\r\n path.y\r\n );\r\n result.push(\r\n Math.floor((rectOfQuadraticCurve.y + yOffset) / pageWrapY) + 1\r\n );\r\n result.push(\r\n Math.floor(\r\n (rectOfQuadraticCurve.y + rectOfQuadraticCurve.h + yOffset) /\r\n pageWrapY\r\n ) + 1\r\n );\r\n break;\r\n case \"bct\":\r\n var rectOfBezierCurve = getBezierCurveBoundary(\r\n this.ctx.lastPoint.x,\r\n this.ctx.lastPoint.y,\r\n path.x1,\r\n path.y1,\r\n path.x2,\r\n path.y2,\r\n path.x,\r\n path.y\r\n );\r\n result.push(\r\n Math.floor((rectOfBezierCurve.y + yOffset) / pageWrapY) + 1\r\n );\r\n result.push(\r\n Math.floor(\r\n (rectOfBezierCurve.y + rectOfBezierCurve.h + yOffset) / pageWrapY\r\n ) + 1\r\n );\r\n break;\r\n case \"rect\":\r\n result.push(Math.floor((path.y + yOffset) / pageWrapY) + 1);\r\n result.push(Math.floor((path.y + path.h + yOffset) / pageWrapY) + 1);\r\n }\r\n\r\n for (var i = 0; i < result.length; i += 1) {\r\n while (this.pdf.internal.getNumberOfPages() < result[i]) {\r\n addPage.call(this);\r\n }\r\n }\r\n return result;\r\n };\r\n\r\n var addPage = function() {\r\n var fillStyle = this.fillStyle;\r\n var strokeStyle = this.strokeStyle;\r\n var font = this.font;\r\n var lineCap = this.lineCap;\r\n var lineWidth = this.lineWidth;\r\n var lineJoin = this.lineJoin;\r\n this.pdf.addPage();\r\n this.fillStyle = fillStyle;\r\n this.strokeStyle = strokeStyle;\r\n this.font = font;\r\n this.lineCap = lineCap;\r\n this.lineWidth = lineWidth;\r\n this.lineJoin = lineJoin;\r\n };\r\n\r\n var pathPositionRedo = function(paths, x, y) {\r\n for (var i = 0; i < paths.length; i++) {\r\n switch (paths[i].type) {\r\n case \"bct\":\r\n paths[i].x2 += x;\r\n paths[i].y2 += y;\r\n case \"qct\":\r\n paths[i].x1 += x;\r\n paths[i].y1 += y;\r\n case \"mt\":\r\n case \"lt\":\r\n case \"arc\":\r\n default:\r\n paths[i].x += x;\r\n paths[i].y += y;\r\n }\r\n }\r\n return paths;\r\n };\r\n\r\n var sortPages = function(pages) {\r\n return pages.sort(function(a, b) {\r\n return a - b;\r\n });\r\n };\r\n\r\n var pathPreProcess = function(rule, isClip) {\r\n var fillStyle = this.fillStyle;\r\n var strokeStyle = this.strokeStyle;\r\n var lineCap = this.lineCap;\r\n var oldLineWidth = this.lineWidth;\r\n var lineWidth = Math.abs(oldLineWidth * this.ctx.transform.scaleX);\r\n var lineJoin = this.lineJoin;\r\n\r\n var origPath = JSON.parse(JSON.stringify(this.path));\r\n var xPath = JSON.parse(JSON.stringify(this.path));\r\n var clipPath;\r\n var tmpPath;\r\n var pages = [];\r\n\r\n for (var i = 0; i < xPath.length; i++) {\r\n if (typeof xPath[i].x !== \"undefined\") {\r\n var page = getPagesByPath.call(this, xPath[i]);\r\n\r\n for (var ii = 0; ii < page.length; ii += 1) {\r\n if (pages.indexOf(page[ii]) === -1) {\r\n pages.push(page[ii]);\r\n }\r\n }\r\n }\r\n }\r\n\r\n for (var j = 0; j < pages.length; j++) {\r\n while (this.pdf.internal.getNumberOfPages() < pages[j]) {\r\n addPage.call(this);\r\n }\r\n }\r\n sortPages(pages);\r\n\r\n if (this.autoPaging) {\r\n var min = pages[0];\r\n var max = pages[pages.length - 1];\r\n for (var k = min; k < max + 1; k++) {\r\n this.pdf.setPage(k);\r\n\r\n this.fillStyle = fillStyle;\r\n this.strokeStyle = strokeStyle;\r\n this.lineCap = lineCap;\r\n this.lineWidth = lineWidth;\r\n this.lineJoin = lineJoin;\r\n\r\n var pageWidthMinusMargins =\r\n this.pdf.internal.pageSize.width - this.margin[3] - this.margin[1];\r\n var topMargin = k === 1 ? this.posY + this.margin[0] : this.margin[0];\r\n var firstPageHeight =\r\n this.pdf.internal.pageSize.height -\r\n this.posY -\r\n this.margin[0] -\r\n this.margin[2];\r\n var pageHeightMinusMargins =\r\n this.pdf.internal.pageSize.height - this.margin[0] - this.margin[2];\r\n var previousPageHeightSum =\r\n k === 1 ? 0 : firstPageHeight + (k - 2) * pageHeightMinusMargins;\r\n\r\n if (this.ctx.clip_path.length !== 0) {\r\n var tmpPaths = this.path;\r\n clipPath = JSON.parse(JSON.stringify(this.ctx.clip_path));\r\n this.path = pathPositionRedo(\r\n clipPath,\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n );\r\n drawPaths.call(this, rule, true);\r\n this.path = tmpPaths;\r\n }\r\n tmpPath = JSON.parse(JSON.stringify(origPath));\r\n this.path = pathPositionRedo(\r\n tmpPath,\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n );\r\n if (isClip === false || k === 0) {\r\n const needsClipping = (k > min || k < max) && hasMargins.call(this);\r\n if (needsClipping) {\r\n this.pdf.saveGraphicsState();\r\n this.pdf\r\n .rect(\r\n this.margin[3],\r\n this.margin[0],\r\n pageWidthMinusMargins,\r\n pageHeightMinusMargins,\r\n null\r\n )\r\n .clip()\r\n .discardPath();\r\n }\r\n drawPaths.call(this, rule, isClip);\r\n if (needsClipping) {\r\n this.pdf.restoreGraphicsState();\r\n }\r\n }\r\n this.lineWidth = oldLineWidth;\r\n }\r\n } else {\r\n this.lineWidth = lineWidth;\r\n drawPaths.call(this, rule, isClip);\r\n this.lineWidth = oldLineWidth;\r\n }\r\n this.path = origPath;\r\n };\r\n\r\n /**\r\n * Processes the paths\r\n *\r\n * @function\r\n * @param rule {String}\r\n * @param isClip {Boolean}\r\n * @private\r\n * @ignore\r\n */\r\n var drawPaths = function(rule, isClip) {\r\n if (rule === \"stroke\" && !isClip && isStrokeTransparent.call(this)) {\r\n return;\r\n }\r\n\r\n if (rule !== \"stroke\" && !isClip && isFillTransparent.call(this)) {\r\n return;\r\n }\r\n\r\n var moves = [];\r\n\r\n //var alpha = (this.ctx.fillOpacity < 1) ? this.ctx.fillOpacity : this.ctx.globalAlpha;\r\n var delta;\r\n var xPath = this.path;\r\n for (var i = 0; i < xPath.length; i++) {\r\n var pt = xPath[i];\r\n\r\n switch (pt.type) {\r\n case \"begin\":\r\n moves.push({\r\n begin: true\r\n });\r\n break;\r\n\r\n case \"close\":\r\n moves.push({\r\n close: true\r\n });\r\n break;\r\n\r\n case \"mt\":\r\n moves.push({\r\n start: pt,\r\n deltas: [],\r\n abs: []\r\n });\r\n break;\r\n\r\n case \"lt\":\r\n var iii = moves.length;\r\n if (xPath[i - 1] && !isNaN(xPath[i - 1].x)) {\r\n delta = [pt.x - xPath[i - 1].x, pt.y - xPath[i - 1].y];\r\n if (iii > 0) {\r\n for (iii; iii >= 0; iii--) {\r\n if (\r\n moves[iii - 1].close !== true &&\r\n moves[iii - 1].begin !== true\r\n ) {\r\n moves[iii - 1].deltas.push(delta);\r\n moves[iii - 1].abs.push(pt);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n break;\r\n\r\n case \"bct\":\r\n delta = [\r\n pt.x1 - xPath[i - 1].x,\r\n pt.y1 - xPath[i - 1].y,\r\n pt.x2 - xPath[i - 1].x,\r\n pt.y2 - xPath[i - 1].y,\r\n pt.x - xPath[i - 1].x,\r\n pt.y - xPath[i - 1].y\r\n ];\r\n moves[moves.length - 1].deltas.push(delta);\r\n break;\r\n\r\n case \"qct\":\r\n var x1 = xPath[i - 1].x + (2.0 / 3.0) * (pt.x1 - xPath[i - 1].x);\r\n var y1 = xPath[i - 1].y + (2.0 / 3.0) * (pt.y1 - xPath[i - 1].y);\r\n var x2 = pt.x + (2.0 / 3.0) * (pt.x1 - pt.x);\r\n var y2 = pt.y + (2.0 / 3.0) * (pt.y1 - pt.y);\r\n var x3 = pt.x;\r\n var y3 = pt.y;\r\n delta = [\r\n x1 - xPath[i - 1].x,\r\n y1 - xPath[i - 1].y,\r\n x2 - xPath[i - 1].x,\r\n y2 - xPath[i - 1].y,\r\n x3 - xPath[i - 1].x,\r\n y3 - xPath[i - 1].y\r\n ];\r\n moves[moves.length - 1].deltas.push(delta);\r\n break;\r\n\r\n case \"arc\":\r\n moves.push({\r\n deltas: [],\r\n abs: [],\r\n arc: true\r\n });\r\n\r\n if (Array.isArray(moves[moves.length - 1].abs)) {\r\n moves[moves.length - 1].abs.push(pt);\r\n }\r\n break;\r\n }\r\n }\r\n var style;\r\n if (!isClip) {\r\n if (rule === \"stroke\") {\r\n style = \"stroke\";\r\n } else {\r\n style = \"fill\";\r\n }\r\n } else {\r\n style = null;\r\n }\r\n\r\n var began = false;\r\n for (var k = 0; k < moves.length; k++) {\r\n if (moves[k].arc) {\r\n var arcs = moves[k].abs;\r\n\r\n for (var ii = 0; ii < arcs.length; ii++) {\r\n var arc = arcs[ii];\r\n\r\n if (arc.type === \"arc\") {\r\n drawArc.call(\r\n this,\r\n arc.x,\r\n arc.y,\r\n arc.radius,\r\n arc.startAngle,\r\n arc.endAngle,\r\n arc.counterclockwise,\r\n undefined,\r\n isClip,\r\n !began\r\n );\r\n } else {\r\n drawLine.call(this, arc.x, arc.y);\r\n }\r\n began = true;\r\n }\r\n } else if (moves[k].close === true) {\r\n this.pdf.internal.out(\"h\");\r\n began = false;\r\n } else if (moves[k].begin !== true) {\r\n var x = moves[k].start.x;\r\n var y = moves[k].start.y;\r\n drawLines.call(this, moves[k].deltas, x, y);\r\n began = true;\r\n }\r\n }\r\n\r\n if (style) {\r\n putStyle.call(this, style);\r\n }\r\n if (isClip) {\r\n doClip.call(this);\r\n }\r\n };\r\n\r\n var getBaseline = function(y) {\r\n var height =\r\n this.pdf.internal.getFontSize() / this.pdf.internal.scaleFactor;\r\n var descent = height * (this.pdf.internal.getLineHeightFactor() - 1);\r\n switch (this.ctx.textBaseline) {\r\n case \"bottom\":\r\n return y - descent;\r\n case \"top\":\r\n return y + height - descent;\r\n case \"hanging\":\r\n return y + height - 2 * descent;\r\n case \"middle\":\r\n return y + height / 2 - descent;\r\n case \"ideographic\":\r\n // TODO not implemented\r\n return y;\r\n case \"alphabetic\":\r\n default:\r\n return y;\r\n }\r\n };\r\n\r\n var getTextBottom = function(yBaseLine) {\r\n var height =\r\n this.pdf.internal.getFontSize() / this.pdf.internal.scaleFactor;\r\n var descent = height * (this.pdf.internal.getLineHeightFactor() - 1);\r\n return yBaseLine + descent;\r\n };\r\n\r\n Context2D.prototype.createLinearGradient = function createLinearGradient() {\r\n var canvasGradient = function canvasGradient() {};\r\n\r\n canvasGradient.colorStops = [];\r\n canvasGradient.addColorStop = function(offset, color) {\r\n this.colorStops.push([offset, color]);\r\n };\r\n\r\n canvasGradient.getColor = function() {\r\n if (this.colorStops.length === 0) {\r\n return \"#000000\";\r\n }\r\n\r\n return this.colorStops[0][1];\r\n };\r\n\r\n canvasGradient.isCanvasGradient = true;\r\n return canvasGradient;\r\n };\r\n Context2D.prototype.createPattern = function createPattern() {\r\n return this.createLinearGradient();\r\n };\r\n Context2D.prototype.createRadialGradient = function createRadialGradient() {\r\n return this.createLinearGradient();\r\n };\r\n\r\n /**\r\n *\r\n * @param x Edge point X\r\n * @param y Edge point Y\r\n * @param r Radius\r\n * @param a1 start angle\r\n * @param a2 end angle\r\n * @param counterclockwise\r\n * @param style\r\n * @param isClip\r\n */\r\n var drawArc = function(\r\n x,\r\n y,\r\n r,\r\n a1,\r\n a2,\r\n counterclockwise,\r\n style,\r\n isClip,\r\n includeMove\r\n ) {\r\n // http://hansmuller-flex.blogspot.com/2011/10/more-about-approximating-circular-arcs.html\r\n var curves = createArc.call(this, r, a1, a2, counterclockwise);\r\n\r\n for (var i = 0; i < curves.length; i++) {\r\n var curve = curves[i];\r\n if (i === 0) {\r\n if (includeMove) {\r\n doMove.call(this, curve.x1 + x, curve.y1 + y);\r\n } else {\r\n drawLine.call(this, curve.x1 + x, curve.y1 + y);\r\n }\r\n }\r\n drawCurve.call(\r\n this,\r\n x,\r\n y,\r\n curve.x2,\r\n curve.y2,\r\n curve.x3,\r\n curve.y3,\r\n curve.x4,\r\n curve.y4\r\n );\r\n }\r\n\r\n if (!isClip) {\r\n putStyle.call(this, style);\r\n } else {\r\n doClip.call(this);\r\n }\r\n };\r\n\r\n var putStyle = function(style) {\r\n switch (style) {\r\n case \"stroke\":\r\n this.pdf.internal.out(\"S\");\r\n break;\r\n case \"fill\":\r\n this.pdf.internal.out(\"f\");\r\n break;\r\n }\r\n };\r\n\r\n var doClip = function() {\r\n this.pdf.clip();\r\n this.pdf.discardPath();\r\n };\r\n\r\n var doMove = function(x, y) {\r\n this.pdf.internal.out(\r\n getHorizontalCoordinateString(x) +\r\n \" \" +\r\n getVerticalCoordinateString(y) +\r\n \" m\"\r\n );\r\n };\r\n\r\n var putText = function(options) {\r\n var textAlign;\r\n switch (options.align) {\r\n case \"right\":\r\n case \"end\":\r\n textAlign = \"right\";\r\n break;\r\n case \"center\":\r\n textAlign = \"center\";\r\n break;\r\n case \"left\":\r\n case \"start\":\r\n default:\r\n textAlign = \"left\";\r\n break;\r\n }\r\n\r\n var textDimensions = this.pdf.getTextDimensions(options.text);\r\n var yBaseLine = getBaseline.call(this, options.y);\r\n var yBottom = getTextBottom.call(this, yBaseLine);\r\n var yTop = yBottom - textDimensions.h;\r\n\r\n var pt = this.ctx.transform.applyToPoint(new Point(options.x, yBaseLine));\r\n var decomposedTransformationMatrix = this.ctx.transform.decompose();\r\n var matrix = new Matrix();\r\n matrix = matrix.multiply(decomposedTransformationMatrix.translate);\r\n matrix = matrix.multiply(decomposedTransformationMatrix.skew);\r\n matrix = matrix.multiply(decomposedTransformationMatrix.scale);\r\n\r\n var baselineRect = this.ctx.transform.applyToRectangle(\r\n new Rectangle(options.x, yBaseLine, textDimensions.w, textDimensions.h)\r\n );\r\n var textBounds = matrix.applyToRectangle(\r\n new Rectangle(options.x, yTop, textDimensions.w, textDimensions.h)\r\n );\r\n var pageArray = getPagesByPath.call(this, textBounds);\r\n var pages = [];\r\n for (var ii = 0; ii < pageArray.length; ii += 1) {\r\n if (pages.indexOf(pageArray[ii]) === -1) {\r\n pages.push(pageArray[ii]);\r\n }\r\n }\r\n\r\n sortPages(pages);\r\n\r\n var clipPath, oldSize, oldLineWidth;\r\n if (this.autoPaging) {\r\n var min = pages[0];\r\n var max = pages[pages.length - 1];\r\n for (var i = min; i < max + 1; i++) {\r\n this.pdf.setPage(i);\r\n\r\n var topMargin = i === 1 ? this.posY + this.margin[0] : this.margin[0];\r\n var firstPageHeight =\r\n this.pdf.internal.pageSize.height -\r\n this.posY -\r\n this.margin[0] -\r\n this.margin[2];\r\n var pageHeightMinusBottomMargin =\r\n this.pdf.internal.pageSize.height - this.margin[2];\r\n var pageHeightMinusMargins =\r\n pageHeightMinusBottomMargin - this.margin[0];\r\n var pageWidthMinusRightMargin =\r\n this.pdf.internal.pageSize.width - this.margin[1];\r\n var pageWidthMinusMargins = pageWidthMinusRightMargin - this.margin[3];\r\n var previousPageHeightSum =\r\n i === 1 ? 0 : firstPageHeight + (i - 2) * pageHeightMinusMargins;\r\n\r\n if (this.ctx.clip_path.length !== 0) {\r\n var tmpPaths = this.path;\r\n clipPath = JSON.parse(JSON.stringify(this.ctx.clip_path));\r\n this.path = pathPositionRedo(\r\n clipPath,\r\n this.posX + this.margin[3],\r\n -1 * previousPageHeightSum + topMargin\r\n );\r\n drawPaths.call(this, \"fill\", true);\r\n this.path = tmpPaths;\r\n }\r\n var textBoundsOnPage = pathPositionRedo(\r\n [JSON.parse(JSON.stringify(textBounds))],\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n )[0];\r\n\r\n if (options.scale >= 0.01) {\r\n oldSize = this.pdf.internal.getFontSize();\r\n this.pdf.setFontSize(oldSize * options.scale);\r\n oldLineWidth = this.lineWidth;\r\n this.lineWidth = oldLineWidth * options.scale;\r\n }\r\n\r\n var doSlice = this.autoPaging !== \"text\";\r\n\r\n if (\r\n doSlice ||\r\n textBoundsOnPage.y + textBoundsOnPage.h <= pageHeightMinusBottomMargin\r\n ) {\r\n if (\r\n doSlice ||\r\n (textBoundsOnPage.y >= topMargin &&\r\n textBoundsOnPage.x <= pageWidthMinusRightMargin)\r\n ) {\r\n var croppedText = doSlice\r\n ? options.text\r\n : this.pdf.splitTextToSize(\r\n options.text,\r\n options.maxWidth ||\r\n pageWidthMinusRightMargin - textBoundsOnPage.x\r\n )[0];\r\n var baseLineRectOnPage = pathPositionRedo(\r\n [JSON.parse(JSON.stringify(baselineRect))],\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum +\r\n topMargin +\r\n this.ctx.prevPageLastElemOffset\r\n )[0];\r\n\r\n const needsClipping =\r\n doSlice && (i > min || i < max) && hasMargins.call(this);\r\n\r\n if (needsClipping) {\r\n this.pdf.saveGraphicsState();\r\n this.pdf\r\n .rect(\r\n this.margin[3],\r\n this.margin[0],\r\n pageWidthMinusMargins,\r\n pageHeightMinusMargins,\r\n null\r\n )\r\n .clip()\r\n .discardPath();\r\n }\r\n\r\n this.pdf.text(\r\n croppedText,\r\n baseLineRectOnPage.x,\r\n baseLineRectOnPage.y,\r\n {\r\n angle: options.angle,\r\n align: textAlign,\r\n renderingMode: options.renderingMode\r\n }\r\n );\r\n\r\n if (needsClipping) {\r\n this.pdf.restoreGraphicsState();\r\n }\r\n }\r\n } else {\r\n // This text is the last element of the page, but it got cut off due to the margin\r\n // so we render it in the next page\r\n\r\n if (textBoundsOnPage.y < pageHeightMinusBottomMargin) {\r\n // As a result, all other elements have their y offset increased\r\n this.ctx.prevPageLastElemOffset +=\r\n pageHeightMinusBottomMargin - textBoundsOnPage.y;\r\n }\r\n }\r\n\r\n if (options.scale >= 0.01) {\r\n this.pdf.setFontSize(oldSize);\r\n this.lineWidth = oldLineWidth;\r\n }\r\n }\r\n } else {\r\n if (options.scale >= 0.01) {\r\n oldSize = this.pdf.internal.getFontSize();\r\n this.pdf.setFontSize(oldSize * options.scale);\r\n oldLineWidth = this.lineWidth;\r\n this.lineWidth = oldLineWidth * options.scale;\r\n }\r\n this.pdf.text(options.text, pt.x + this.posX, pt.y + this.posY, {\r\n angle: options.angle,\r\n align: textAlign,\r\n renderingMode: options.renderingMode,\r\n maxWidth: options.maxWidth\r\n });\r\n\r\n if (options.scale >= 0.01) {\r\n this.pdf.setFontSize(oldSize);\r\n this.lineWidth = oldLineWidth;\r\n }\r\n }\r\n };\r\n\r\n var drawLine = function(x, y, prevX, prevY) {\r\n prevX = prevX || 0;\r\n prevY = prevY || 0;\r\n\r\n this.pdf.internal.out(\r\n getHorizontalCoordinateString(x + prevX) +\r\n \" \" +\r\n getVerticalCoordinateString(y + prevY) +\r\n \" l\"\r\n );\r\n };\r\n\r\n var drawLines = function(lines, x, y) {\r\n return this.pdf.lines(lines, x, y, null, null);\r\n };\r\n\r\n var drawCurve = function(x, y, x1, y1, x2, y2, x3, y3) {\r\n this.pdf.internal.out(\r\n [\r\n f2(getHorizontalCoordinate(x1 + x)),\r\n f2(getVerticalCoordinate(y1 + y)),\r\n f2(getHorizontalCoordinate(x2 + x)),\r\n f2(getVerticalCoordinate(y2 + y)),\r\n f2(getHorizontalCoordinate(x3 + x)),\r\n f2(getVerticalCoordinate(y3 + y)),\r\n \"c\"\r\n ].join(\" \")\r\n );\r\n };\r\n\r\n /**\r\n * Return a array of objects that represent bezier curves which approximate the circular arc centered at the origin, from startAngle to endAngle (radians) with the specified radius.\r\n *\r\n * Each bezier curve is an object with four points, where x1,y1 and x4,y4 are the arc's end points and x2,y2 and x3,y3 are the cubic bezier's control points.\r\n * @function createArc\r\n */\r\n var createArc = function(radius, startAngle, endAngle, anticlockwise) {\r\n var EPSILON = 0.00001; // Roughly 1/1000th of a degree, see below\r\n var twoPi = Math.PI * 2;\r\n var halfPi = Math.PI / 2.0;\r\n\r\n while (startAngle > endAngle) {\r\n startAngle = startAngle - twoPi;\r\n }\r\n var totalAngle = Math.abs(endAngle - startAngle);\r\n if (totalAngle < twoPi) {\r\n if (anticlockwise) {\r\n totalAngle = twoPi - totalAngle;\r\n }\r\n }\r\n\r\n // Compute the sequence of arc curves, up to PI/2 at a time.\r\n var curves = [];\r\n\r\n // clockwise or counterclockwise\r\n var sgn = anticlockwise ? -1 : +1;\r\n\r\n var a1 = startAngle;\r\n for (; totalAngle > EPSILON; ) {\r\n var remain = sgn * Math.min(totalAngle, halfPi);\r\n var a2 = a1 + remain;\r\n curves.push(createSmallArc.call(this, radius, a1, a2));\r\n totalAngle -= Math.abs(a2 - a1);\r\n a1 = a2;\r\n }\r\n\r\n return curves;\r\n };\r\n\r\n /**\r\n * Cubic bezier approximation of a circular arc centered at the origin, from (radians) a1 to a2, where a2-a1 < pi/2. The arc's radius is r.\r\n *\r\n * Returns an object with four points, where x1,y1 and x4,y4 are the arc's end points and x2,y2 and x3,y3 are the cubic bezier's control points.\r\n *\r\n * This algorithm is based on the approach described in: A. Riškus, \"Approximation of a Cubic Bezier Curve by Circular Arcs and Vice Versa,\" Information Technology and Control, 35(4), 2006 pp. 371-378.\r\n */\r\n var createSmallArc = function(r, a1, a2) {\r\n var a = (a2 - a1) / 2.0;\r\n\r\n var x4 = r * Math.cos(a);\r\n var y4 = r * Math.sin(a);\r\n var x1 = x4;\r\n var y1 = -y4;\r\n\r\n var q1 = x1 * x1 + y1 * y1;\r\n var q2 = q1 + x1 * x4 + y1 * y4;\r\n var k2 = ((4 / 3) * (Math.sqrt(2 * q1 * q2) - q2)) / (x1 * y4 - y1 * x4);\r\n\r\n var x2 = x1 - k2 * y1;\r\n var y2 = y1 + k2 * x1;\r\n var x3 = x2;\r\n var y3 = -y2;\r\n\r\n var ar = a + a1;\r\n var cos_ar = Math.cos(ar);\r\n var sin_ar = Math.sin(ar);\r\n\r\n return {\r\n x1: r * Math.cos(a1),\r\n y1: r * Math.sin(a1),\r\n x2: x2 * cos_ar - y2 * sin_ar,\r\n y2: x2 * sin_ar + y2 * cos_ar,\r\n x3: x3 * cos_ar - y3 * sin_ar,\r\n y3: x3 * sin_ar + y3 * cos_ar,\r\n x4: r * Math.cos(a2),\r\n y4: r * Math.sin(a2)\r\n };\r\n };\r\n\r\n var rad2deg = function(value) {\r\n return (value * 180) / Math.PI;\r\n };\r\n\r\n var getQuadraticCurveBoundary = function(sx, sy, cpx, cpy, ex, ey) {\r\n var midX1 = sx + (cpx - sx) * 0.5;\r\n var midY1 = sy + (cpy - sy) * 0.5;\r\n var midX2 = ex + (cpx - ex) * 0.5;\r\n var midY2 = ey + (cpy - ey) * 0.5;\r\n var resultX1 = Math.min(sx, ex, midX1, midX2);\r\n var resultX2 = Math.max(sx, ex, midX1, midX2);\r\n var resultY1 = Math.min(sy, ey, midY1, midY2);\r\n var resultY2 = Math.max(sy, ey, midY1, midY2);\r\n return new Rectangle(\r\n resultX1,\r\n resultY1,\r\n resultX2 - resultX1,\r\n resultY2 - resultY1\r\n );\r\n };\r\n\r\n //De Casteljau algorithm\r\n var getBezierCurveBoundary = function(ax, ay, bx, by, cx, cy, dx, dy) {\r\n var tobx = bx - ax;\r\n var toby = by - ay;\r\n var tocx = cx - bx;\r\n var tocy = cy - by;\r\n var todx = dx - cx;\r\n var tody = dy - cy;\r\n var precision = 40;\r\n var d,\r\n i,\r\n px,\r\n py,\r\n qx,\r\n qy,\r\n rx,\r\n ry,\r\n tx,\r\n ty,\r\n sx,\r\n sy,\r\n x,\r\n y,\r\n minx,\r\n miny,\r\n maxx,\r\n maxy,\r\n toqx,\r\n toqy,\r\n torx,\r\n tory,\r\n totx,\r\n toty;\r\n for (i = 0; i < precision + 1; i++) {\r\n d = i / precision;\r\n px = ax + d * tobx;\r\n py = ay + d * toby;\r\n qx = bx + d * tocx;\r\n qy = by + d * tocy;\r\n rx = cx + d * todx;\r\n ry = cy + d * tody;\r\n toqx = qx - px;\r\n toqy = qy - py;\r\n torx = rx - qx;\r\n tory = ry - qy;\r\n\r\n sx = px + d * toqx;\r\n sy = py + d * toqy;\r\n tx = qx + d * torx;\r\n ty = qy + d * tory;\r\n totx = tx - sx;\r\n toty = ty - sy;\r\n\r\n x = sx + d * totx;\r\n y = sy + d * toty;\r\n if (i == 0) {\r\n minx = x;\r\n miny = y;\r\n maxx = x;\r\n maxy = y;\r\n } else {\r\n minx = Math.min(minx, x);\r\n miny = Math.min(miny, y);\r\n maxx = Math.max(maxx, x);\r\n maxy = Math.max(maxy, y);\r\n }\r\n }\r\n return new Rectangle(\r\n Math.round(minx),\r\n Math.round(miny),\r\n Math.round(maxx - minx),\r\n Math.round(maxy - miny)\r\n );\r\n };\r\n\r\n var getPrevLineDashValue = function(lineDash, lineDashOffset) {\r\n return JSON.stringify({\r\n lineDash: lineDash,\r\n lineDashOffset: lineDashOffset\r\n });\r\n };\r\n\r\n var setLineDash = function() {\r\n // Avoid unnecessary line dash declarations.\r\n if (\r\n !this.prevLineDash &&\r\n !this.ctx.lineDash.length &&\r\n !this.ctx.lineDashOffset\r\n ) {\r\n return;\r\n }\r\n\r\n // Avoid unnecessary line dash declarations.\r\n const nextLineDash = getPrevLineDashValue(\r\n this.ctx.lineDash,\r\n this.ctx.lineDashOffset\r\n );\r\n if (this.prevLineDash !== nextLineDash) {\r\n this.pdf.setLineDash(this.ctx.lineDash, this.ctx.lineDashOffset);\r\n this.prevLineDash = nextLineDash;\r\n }\r\n };\r\n})(jsPDF.API);\r\n","/**\n * @license\n * jsPDF filters PlugIn\n * Copyright (c) 2014 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { zlibSync } from \"../libs/fflate.js\";\n\n(function(jsPDFAPI) {\n \"use strict\";\n\n var ASCII85Encode = function(a) {\n var b, c, d, e, f, g, h, i, j, k;\n // eslint-disable-next-line no-control-regex\n for (\n !/[^\\x00-\\xFF]/.test(a),\n b = \"\\x00\\x00\\x00\\x00\".slice(a.length % 4 || 4),\n a += b,\n c = [],\n d = 0,\n e = a.length;\n e > d;\n d += 4\n )\n (f =\n (a.charCodeAt(d) << 24) +\n (a.charCodeAt(d + 1) << 16) +\n (a.charCodeAt(d + 2) << 8) +\n a.charCodeAt(d + 3)),\n 0 !== f\n ? ((k = f % 85),\n (f = (f - k) / 85),\n (j = f % 85),\n (f = (f - j) / 85),\n (i = f % 85),\n (f = (f - i) / 85),\n (h = f % 85),\n (f = (f - h) / 85),\n (g = f % 85),\n c.push(g + 33, h + 33, i + 33, j + 33, k + 33))\n : c.push(122);\n return (\n (function(a, b) {\n for (var c = b; c > 0; c--) a.pop();\n })(c, b.length),\n String.fromCharCode.apply(String, c) + \"~>\"\n );\n };\n\n var ASCII85Decode = function(a) {\n var c,\n d,\n e,\n f,\n g,\n h = String,\n l = \"length\",\n w = 255,\n x = \"charCodeAt\",\n y = \"slice\",\n z = \"replace\";\n for (\n \"~>\" === a[y](-2),\n a = a[y](0, -2)\n [z](/\\s/g, \"\")\n [z](\"z\", \"!!!!!\"),\n c = \"uuuuu\"[y](a[l] % 5 || 5),\n a += c,\n e = [],\n f = 0,\n g = a[l];\n g > f;\n f += 5\n )\n (d =\n 52200625 * (a[x](f) - 33) +\n 614125 * (a[x](f + 1) - 33) +\n 7225 * (a[x](f + 2) - 33) +\n 85 * (a[x](f + 3) - 33) +\n (a[x](f + 4) - 33)),\n e.push(w & (d >> 24), w & (d >> 16), w & (d >> 8), w & d);\n return (\n (function(a, b) {\n for (var c = b; c > 0; c--) a.pop();\n })(e, c[l]),\n h.fromCharCode.apply(h, e)\n );\n };\n\n var ASCIIHexEncode = function(value) {\n return (\n value\n .split(\"\")\n .map(function(value) {\n return (\"0\" + value.charCodeAt().toString(16)).slice(-2);\n })\n .join(\"\") + \">\"\n );\n };\n\n var ASCIIHexDecode = function(value) {\n var regexCheckIfHex = new RegExp(/^([0-9A-Fa-f]{2})+$/);\n value = value.replace(/\\s/g, \"\");\n if (value.indexOf(\">\") !== -1) {\n value = value.substr(0, value.indexOf(\">\"));\n }\n if (value.length % 2) {\n value += \"0\";\n }\n if (regexCheckIfHex.test(value) === false) {\n return \"\";\n }\n var result = \"\";\n for (var i = 0; i < value.length; i += 2) {\n result += String.fromCharCode(\"0x\" + (value[i] + value[i + 1]));\n }\n return result;\n };\n /*\n var FlatePredictors = {\n None: 1,\n TIFF: 2,\n PNG_None: 10,\n PNG_Sub: 11,\n PNG_Up: 12,\n PNG_Average: 13,\n PNG_Paeth: 14,\n PNG_Optimum: 15\n };\n */\n\n var FlateEncode = function(data) {\n var arr = new Uint8Array(data.length);\n var i = data.length;\n while (i--) {\n arr[i] = data.charCodeAt(i);\n }\n arr = zlibSync(arr);\n data = arr.reduce(function(data, byte) {\n return data + String.fromCharCode(byte);\n }, \"\");\n return data;\n };\n\n jsPDFAPI.processDataByFilters = function(origData, filterChain) {\n \"use strict\";\n var i = 0;\n var data = origData || \"\";\n var reverseChain = [];\n filterChain = filterChain || [];\n\n if (typeof filterChain === \"string\") {\n filterChain = [filterChain];\n }\n\n for (i = 0; i < filterChain.length; i += 1) {\n switch (filterChain[i]) {\n case \"ASCII85Decode\":\n case \"/ASCII85Decode\":\n data = ASCII85Decode(data);\n reverseChain.push(\"/ASCII85Encode\");\n break;\n case \"ASCII85Encode\":\n case \"/ASCII85Encode\":\n data = ASCII85Encode(data);\n reverseChain.push(\"/ASCII85Decode\");\n break;\n case \"ASCIIHexDecode\":\n case \"/ASCIIHexDecode\":\n data = ASCIIHexDecode(data);\n reverseChain.push(\"/ASCIIHexEncode\");\n break;\n case \"ASCIIHexEncode\":\n case \"/ASCIIHexEncode\":\n data = ASCIIHexEncode(data);\n reverseChain.push(\"/ASCIIHexDecode\");\n break;\n case \"FlateEncode\":\n case \"/FlateEncode\":\n data = FlateEncode(data);\n reverseChain.push(\"/FlateDecode\");\n break;\n default:\n throw new Error(\n 'The filter: \"' + filterChain[i] + '\" is not implemented'\n );\n }\n }\n\n return { data: data, reverseChain: reverseChain.reverse().join(\" \") };\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2018 Erik Koopmans\n * Released under the MIT License.\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { normalizeFontFace } from \"../libs/fontFace.js\";\nimport { globalObject } from \"../libs/globalObject.js\";\n\n/**\n * jsPDF html PlugIn\n *\n * @name html\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n function loadHtml2Canvas() {\n return (function() {\n if (globalObject[\"html2canvas\"]) {\n return Promise.resolve(globalObject[\"html2canvas\"]);\n }\n\n return import(\"html2canvas\");\n\n })()\n .catch(function(e) {\n return Promise.reject(new Error(\"Could not load html2canvas: \" + e));\n })\n .then(function(html2canvas) {\n return html2canvas.default ? html2canvas.default : html2canvas;\n });\n }\n\n function loadDomPurify() {\n return (function() {\n if (globalObject[\"DOMPurify\"]) {\n return Promise.resolve(globalObject[\"DOMPurify\"]);\n }\n\n return import(\"dompurify\");\n\n })()\n .catch(function(e) {\n return Promise.reject(new Error(\"Could not load dompurify: \" + e));\n })\n .then(function(dompurify) {\n return dompurify.default ? dompurify.default : dompurify;\n });\n }\n\n /**\n * Determine the type of a variable/object.\n *\n * @private\n * @ignore\n */\n var objType = function(obj) {\n var type = typeof obj;\n if (type === \"undefined\") return \"undefined\";\n else if (type === \"string\" || obj instanceof String) return \"string\";\n else if (type === \"number\" || obj instanceof Number) return \"number\";\n else if (type === \"function\" || obj instanceof Function) return \"function\";\n else if (!!obj && obj.constructor === Array) return \"array\";\n else if (obj && obj.nodeType === 1) return \"element\";\n else if (type === \"object\") return \"object\";\n else return \"unknown\";\n };\n\n /**\n * Create an HTML element with optional className, innerHTML, and style.\n *\n * @private\n * @ignore\n */\n var createElement = function(tagName, opt) {\n var el = document.createElement(tagName);\n if (opt.className) el.className = opt.className;\n if (opt.innerHTML && opt.dompurify) {\n el.innerHTML = opt.dompurify.sanitize(opt.innerHTML);\n }\n for (var key in opt.style) {\n el.style[key] = opt.style[key];\n }\n return el;\n };\n\n /**\n * Deep-clone a node and preserve contents/properties.\n *\n * @private\n * @ignore\n */\n var cloneNode = function(node, javascriptEnabled) {\n // Recursively clone the node.\n var clone =\n node.nodeType === 3\n ? document.createTextNode(node.nodeValue)\n : node.cloneNode(false);\n for (var child = node.firstChild; child; child = child.nextSibling) {\n if (\n javascriptEnabled === true ||\n child.nodeType !== 1 ||\n child.nodeName !== \"SCRIPT\"\n ) {\n clone.appendChild(cloneNode(child, javascriptEnabled));\n }\n }\n\n if (node.nodeType === 1) {\n // Preserve contents/properties of special nodes.\n if (node.nodeName === \"CANVAS\") {\n clone.width = node.width;\n clone.height = node.height;\n clone.getContext(\"2d\").drawImage(node, 0, 0);\n } else if (node.nodeName === \"TEXTAREA\" || node.nodeName === \"SELECT\") {\n clone.value = node.value;\n }\n\n // Preserve the node's scroll position when it loads.\n clone.addEventListener(\n \"load\",\n function() {\n clone.scrollTop = node.scrollTop;\n clone.scrollLeft = node.scrollLeft;\n },\n true\n );\n }\n\n // Return the cloned node.\n return clone;\n };\n\n /* ----- CONSTRUCTOR ----- */\n\n var Worker = function Worker(opt) {\n // Create the root parent for the proto chain, and the starting Worker.\n var root = Object.assign(\n Worker.convert(Promise.resolve()),\n JSON.parse(JSON.stringify(Worker.template))\n );\n var self = Worker.convert(Promise.resolve(), root);\n\n // Set progress, optional settings, and return.\n self = self.setProgress(1, Worker, 1, [Worker]);\n self = self.set(opt);\n return self;\n };\n\n // Boilerplate for subclassing Promise.\n Worker.prototype = Object.create(Promise.prototype);\n Worker.prototype.constructor = Worker;\n\n // Converts/casts promises into Workers.\n Worker.convert = function convert(promise, inherit) {\n // Uses prototypal inheritance to receive changes made to ancestors' properties.\n promise.__proto__ = inherit || Worker.prototype;\n return promise;\n };\n\n Worker.template = {\n prop: {\n src: null,\n container: null,\n overlay: null,\n canvas: null,\n img: null,\n pdf: null,\n pageSize: null,\n callback: function() {}\n },\n progress: {\n val: 0,\n state: null,\n n: 0,\n stack: []\n },\n opt: {\n filename: \"file.pdf\",\n margin: [0, 0, 0, 0],\n enableLinks: true,\n x: 0,\n y: 0,\n html2canvas: {},\n jsPDF: {},\n backgroundColor: \"transparent\"\n }\n };\n\n /* ----- FROM / TO ----- */\n\n Worker.prototype.from = function from(src, type) {\n function getType(src) {\n switch (objType(src)) {\n case \"string\":\n return \"string\";\n case \"element\":\n return src.nodeName.toLowerCase() === \"canvas\" ? \"canvas\" : \"element\";\n default:\n return \"unknown\";\n }\n }\n\n return this.then(function from_main() {\n type = type || getType(src);\n switch (type) {\n case \"string\":\n return this.then(loadDomPurify).then(function(dompurify) {\n return this.set({\n src: createElement(\"div\", {\n innerHTML: src,\n dompurify: dompurify\n })\n });\n });\n case \"element\":\n return this.set({ src: src });\n case \"canvas\":\n return this.set({ canvas: src });\n case \"img\":\n return this.set({ img: src });\n default:\n return this.error(\"Unknown source type.\");\n }\n });\n };\n\n Worker.prototype.to = function to(target) {\n // Route the 'to' request to the appropriate method.\n switch (target) {\n case \"container\":\n return this.toContainer();\n case \"canvas\":\n return this.toCanvas();\n case \"img\":\n return this.toImg();\n case \"pdf\":\n return this.toPdf();\n default:\n return this.error(\"Invalid target.\");\n }\n };\n\n Worker.prototype.toContainer = function toContainer() {\n // Set up function prerequisites.\n var prereqs = [\n function checkSrc() {\n return (\n this.prop.src || this.error(\"Cannot duplicate - no source HTML.\")\n );\n },\n function checkPageSize() {\n return this.prop.pageSize || this.setPageSize();\n }\n ];\n return this.thenList(prereqs).then(function toContainer_main() {\n // Define the CSS styles for the container and its overlay parent.\n var overlayCSS = {\n position: \"fixed\",\n overflow: \"hidden\",\n zIndex: 1000,\n left: \"-100000px\",\n right: 0,\n bottom: 0,\n top: 0\n };\n var containerCSS = {\n position: \"relative\",\n display: \"inline-block\",\n width:\n (typeof this.opt.width === \"number\" &&\n !isNaN(this.opt.width) &&\n typeof this.opt.windowWidth === \"number\" &&\n !isNaN(this.opt.windowWidth)\n ? this.opt.windowWidth\n : Math.max(\n this.prop.src.clientWidth,\n this.prop.src.scrollWidth,\n this.prop.src.offsetWidth\n )) + \"px\",\n left: 0,\n right: 0,\n top: 0,\n margin: \"auto\",\n backgroundColor: this.opt.backgroundColor\n }; // Set the overlay to hidden (could be changed in the future to provide a print preview).\n\n var source = cloneNode(\n this.prop.src,\n this.opt.html2canvas.javascriptEnabled\n );\n\n if (source.tagName === \"BODY\") {\n containerCSS.height =\n Math.max(\n document.body.scrollHeight,\n document.body.offsetHeight,\n document.documentElement.clientHeight,\n document.documentElement.scrollHeight,\n document.documentElement.offsetHeight\n ) + \"px\";\n }\n\n this.prop.overlay = createElement(\"div\", {\n className: \"html2pdf__overlay\",\n style: overlayCSS\n });\n this.prop.container = createElement(\"div\", {\n className: \"html2pdf__container\",\n style: containerCSS\n });\n this.prop.container.appendChild(source);\n this.prop.container.firstChild.appendChild(\n createElement(\"div\", {\n style: {\n clear: \"both\",\n border: \"0 none transparent\",\n margin: 0,\n padding: 0,\n height: 0\n }\n })\n );\n this.prop.container.style.float = \"none\";\n this.prop.overlay.appendChild(this.prop.container);\n document.body.appendChild(this.prop.overlay);\n this.prop.container.firstChild.style.position = \"relative\";\n this.prop.container.height =\n Math.max(\n this.prop.container.firstChild.clientHeight,\n this.prop.container.firstChild.scrollHeight,\n this.prop.container.firstChild.offsetHeight\n ) + \"px\";\n });\n };\n\n Worker.prototype.toCanvas = function toCanvas() {\n // Set up function prerequisites.\n var prereqs = [\n function checkContainer() {\n return (\n document.body.contains(this.prop.container) || this.toContainer()\n );\n }\n ];\n\n // Fulfill prereqs then create the canvas.\n return this.thenList(prereqs)\n .then(loadHtml2Canvas)\n .then(function toCanvas_main(html2canvas) {\n // Handle old-fashioned 'onrendered' argument.\n var options = Object.assign({}, this.opt.html2canvas);\n delete options.onrendered;\n\n return html2canvas(this.prop.container, options);\n })\n .then(function toCanvas_post(canvas) {\n // Handle old-fashioned 'onrendered' argument.\n var onRendered = this.opt.html2canvas.onrendered || function() {};\n onRendered(canvas);\n\n this.prop.canvas = canvas;\n document.body.removeChild(this.prop.overlay);\n });\n };\n\n Worker.prototype.toContext2d = function toContext2d() {\n // Set up function prerequisites.\n var prereqs = [\n function checkContainer() {\n return (\n document.body.contains(this.prop.container) || this.toContainer()\n );\n }\n ];\n\n // Fulfill prereqs then create the canvas.\n return this.thenList(prereqs)\n .then(loadHtml2Canvas)\n .then(function toContext2d_main(html2canvas) {\n // Handle old-fashioned 'onrendered' argument.\n\n var pdf = this.opt.jsPDF;\n var fontFaces = this.opt.fontFaces;\n\n var scale =\n typeof this.opt.width === \"number\" &&\n !isNaN(this.opt.width) &&\n typeof this.opt.windowWidth === \"number\" &&\n !isNaN(this.opt.windowWidth)\n ? this.opt.width / this.opt.windowWidth\n : 1;\n\n var options = Object.assign(\n {\n async: true,\n allowTaint: true,\n scale: scale,\n scrollX: this.opt.scrollX || 0,\n scrollY: this.opt.scrollY || 0,\n backgroundColor: \"#ffffff\",\n imageTimeout: 15000,\n logging: true,\n proxy: null,\n removeContainer: true,\n foreignObjectRendering: false,\n useCORS: false\n },\n this.opt.html2canvas\n );\n delete options.onrendered;\n\n pdf.context2d.autoPaging =\n typeof this.opt.autoPaging === \"undefined\"\n ? true\n : this.opt.autoPaging;\n pdf.context2d.posX = this.opt.x;\n pdf.context2d.posY = this.opt.y;\n pdf.context2d.margin = this.opt.margin;\n pdf.context2d.fontFaces = fontFaces;\n\n if (fontFaces) {\n for (var i = 0; i < fontFaces.length; ++i) {\n var font = fontFaces[i];\n var src = font.src.find(function(src) {\n return src.format === \"truetype\";\n });\n\n if (src) {\n pdf.addFont(src.url, font.ref.name, font.ref.style);\n }\n }\n }\n\n options.windowHeight = options.windowHeight || 0;\n options.windowHeight =\n options.windowHeight == 0\n ? Math.max(\n this.prop.container.clientHeight,\n this.prop.container.scrollHeight,\n this.prop.container.offsetHeight\n )\n : options.windowHeight;\n\n pdf.context2d.save(true);\n return html2canvas(this.prop.container, options);\n })\n .then(function toContext2d_post(canvas) {\n this.opt.jsPDF.context2d.restore(true);\n\n // Handle old-fashioned 'onrendered' argument.\n var onRendered = this.opt.html2canvas.onrendered || function() {};\n onRendered(canvas);\n\n this.prop.canvas = canvas;\n document.body.removeChild(this.prop.overlay);\n });\n };\n\n Worker.prototype.toImg = function toImg() {\n // Set up function prerequisites.\n var prereqs = [\n function checkCanvas() {\n return this.prop.canvas || this.toCanvas();\n }\n ];\n\n // Fulfill prereqs then create the image.\n return this.thenList(prereqs).then(function toImg_main() {\n var imgData = this.prop.canvas.toDataURL(\n \"image/\" + this.opt.image.type,\n this.opt.image.quality\n );\n this.prop.img = document.createElement(\"img\");\n this.prop.img.src = imgData;\n });\n };\n\n Worker.prototype.toPdf = function toPdf() {\n // Set up function prerequisites.\n var prereqs = [\n function checkContext2d() {\n return this.toContext2d();\n }\n //function checkCanvas() { return this.prop.canvas || this.toCanvas(); }\n ];\n\n // Fulfill prereqs then create the image.\n return this.thenList(prereqs).then(function toPdf_main() {\n // Create local copies of frequently used properties.\n this.prop.pdf = this.prop.pdf || this.opt.jsPDF;\n });\n };\n\n /* ----- OUTPUT / SAVE ----- */\n\n Worker.prototype.output = function output(type, options, src) {\n // Redirect requests to the correct function (outputPdf / outputImg).\n src = src || \"pdf\";\n if (src.toLowerCase() === \"img\" || src.toLowerCase() === \"image\") {\n return this.outputImg(type, options);\n } else {\n return this.outputPdf(type, options);\n }\n };\n\n Worker.prototype.outputPdf = function outputPdf(type, options) {\n // Set up function prerequisites.\n var prereqs = [\n function checkPdf() {\n return this.prop.pdf || this.toPdf();\n }\n ];\n\n // Fulfill prereqs then perform the appropriate output.\n return this.thenList(prereqs).then(function outputPdf_main() {\n /* Currently implemented output types:\n * https://rawgit.com/MrRio/jsPDF/master/docs/jspdf.js.html#line992\n * save(options), arraybuffer, blob, bloburi/bloburl,\n * datauristring/dataurlstring, dataurlnewwindow, datauri/dataurl\n */\n return this.prop.pdf.output(type, options);\n });\n };\n\n Worker.prototype.outputImg = function outputImg(type) {\n // Set up function prerequisites.\n var prereqs = [\n function checkImg() {\n return this.prop.img || this.toImg();\n }\n ];\n\n // Fulfill prereqs then perform the appropriate output.\n return this.thenList(prereqs).then(function outputImg_main() {\n switch (type) {\n case undefined:\n case \"img\":\n return this.prop.img;\n case \"datauristring\":\n case \"dataurlstring\":\n return this.prop.img.src;\n case \"datauri\":\n case \"dataurl\":\n return (document.location.href = this.prop.img.src);\n default:\n throw 'Image output type \"' + type + '\" is not supported.';\n }\n });\n };\n\n Worker.prototype.save = function save(filename) {\n // Set up function prerequisites.\n var prereqs = [\n function checkPdf() {\n return this.prop.pdf || this.toPdf();\n }\n ];\n\n // Fulfill prereqs, update the filename (if provided), and save the PDF.\n return this.thenList(prereqs)\n .set(filename ? { filename: filename } : null)\n .then(function save_main() {\n this.prop.pdf.save(this.opt.filename);\n });\n };\n\n Worker.prototype.doCallback = function doCallback() {\n // Set up function prerequisites.\n var prereqs = [\n function checkPdf() {\n return this.prop.pdf || this.toPdf();\n }\n ];\n\n // Fulfill prereqs, update the filename (if provided), and save the PDF.\n return this.thenList(prereqs).then(function doCallback_main() {\n this.prop.callback(this.prop.pdf);\n });\n };\n\n /* ----- SET / GET ----- */\n\n Worker.prototype.set = function set(opt) {\n // TODO: Implement ordered pairs?\n\n // Silently ignore invalid or empty input.\n if (objType(opt) !== \"object\") {\n return this;\n }\n\n // Build an array of setter functions to queue.\n var fns = Object.keys(opt || {}).map(function(key) {\n if (key in Worker.template.prop) {\n // Set pre-defined properties.\n return function set_prop() {\n this.prop[key] = opt[key];\n };\n } else {\n switch (key) {\n case \"margin\":\n return this.setMargin.bind(this, opt.margin);\n case \"jsPDF\":\n return function set_jsPDF() {\n this.opt.jsPDF = opt.jsPDF;\n return this.setPageSize();\n };\n case \"pageSize\":\n return this.setPageSize.bind(this, opt.pageSize);\n default:\n // Set any other properties in opt.\n return function set_opt() {\n this.opt[key] = opt[key];\n };\n }\n }\n }, this);\n\n // Set properties within the promise chain.\n return this.then(function set_main() {\n return this.thenList(fns);\n });\n };\n\n Worker.prototype.get = function get(key, cbk) {\n return this.then(function get_main() {\n // Fetch the requested property, either as a predefined prop or in opt.\n var val = key in Worker.template.prop ? this.prop[key] : this.opt[key];\n return cbk ? cbk(val) : val;\n });\n };\n\n Worker.prototype.setMargin = function setMargin(margin) {\n return this.then(function setMargin_main() {\n // Parse the margin property.\n switch (objType(margin)) {\n case \"number\":\n margin = [margin, margin, margin, margin];\n // eslint-disable-next-line no-fallthrough\n case \"array\":\n if (margin.length === 2) {\n margin = [margin[0], margin[1], margin[0], margin[1]];\n }\n if (margin.length === 4) {\n break;\n }\n // eslint-disable-next-line no-fallthrough\n default:\n return this.error(\"Invalid margin array.\");\n }\n\n // Set the margin property, then update pageSize.\n this.opt.margin = margin;\n }).then(this.setPageSize);\n };\n\n Worker.prototype.setPageSize = function setPageSize(pageSize) {\n function toPx(val, k) {\n return Math.floor(((val * k) / 72) * 96);\n }\n\n return this.then(function setPageSize_main() {\n // Retrieve page-size based on jsPDF settings, if not explicitly provided.\n pageSize = pageSize || jsPDF.getPageSize(this.opt.jsPDF);\n\n // Add 'inner' field if not present.\n if (!pageSize.hasOwnProperty(\"inner\")) {\n pageSize.inner = {\n width: pageSize.width - this.opt.margin[1] - this.opt.margin[3],\n height: pageSize.height - this.opt.margin[0] - this.opt.margin[2]\n };\n pageSize.inner.px = {\n width: toPx(pageSize.inner.width, pageSize.k),\n height: toPx(pageSize.inner.height, pageSize.k)\n };\n pageSize.inner.ratio = pageSize.inner.height / pageSize.inner.width;\n }\n\n // Attach pageSize to this.\n this.prop.pageSize = pageSize;\n });\n };\n\n Worker.prototype.setProgress = function setProgress(val, state, n, stack) {\n // Immediately update all progress values.\n if (val != null) this.progress.val = val;\n if (state != null) this.progress.state = state;\n if (n != null) this.progress.n = n;\n if (stack != null) this.progress.stack = stack;\n this.progress.ratio = this.progress.val / this.progress.state;\n\n // Return this for command chaining.\n return this;\n };\n\n Worker.prototype.updateProgress = function updateProgress(\n val,\n state,\n n,\n stack\n ) {\n // Immediately update all progress values, using setProgress.\n return this.setProgress(\n val ? this.progress.val + val : null,\n state ? state : null,\n n ? this.progress.n + n : null,\n stack ? this.progress.stack.concat(stack) : null\n );\n };\n\n /* ----- PROMISE MAPPING ----- */\n\n Worker.prototype.then = function then(onFulfilled, onRejected) {\n // Wrap `this` for encapsulation.\n var self = this;\n\n return this.thenCore(onFulfilled, onRejected, function then_main(\n onFulfilled,\n onRejected\n ) {\n // Update progress while queuing, calling, and resolving `then`.\n self.updateProgress(null, null, 1, [onFulfilled]);\n return Promise.prototype.then\n .call(this, function then_pre(val) {\n self.updateProgress(null, onFulfilled);\n return val;\n })\n .then(onFulfilled, onRejected)\n .then(function then_post(val) {\n self.updateProgress(1);\n return val;\n });\n });\n };\n\n Worker.prototype.thenCore = function thenCore(\n onFulfilled,\n onRejected,\n thenBase\n ) {\n // Handle optional thenBase parameter.\n thenBase = thenBase || Promise.prototype.then;\n\n // Wrap `this` for encapsulation and bind it to the promise handlers.\n var self = this;\n if (onFulfilled) {\n onFulfilled = onFulfilled.bind(self);\n }\n if (onRejected) {\n onRejected = onRejected.bind(self);\n }\n\n // Cast self into a Promise to avoid polyfills recursively defining `then`.\n var isNative =\n Promise.toString().indexOf(\"[native code]\") !== -1 &&\n Promise.name === \"Promise\";\n var selfPromise = isNative\n ? self\n : Worker.convert(Object.assign({}, self), Promise.prototype);\n\n // Return the promise, after casting it into a Worker and preserving props.\n var returnVal = thenBase.call(selfPromise, onFulfilled, onRejected);\n return Worker.convert(returnVal, self.__proto__);\n };\n\n Worker.prototype.thenExternal = function thenExternal(\n onFulfilled,\n onRejected\n ) {\n // Call `then` and return a standard promise (exits the Worker chain).\n return Promise.prototype.then.call(this, onFulfilled, onRejected);\n };\n\n Worker.prototype.thenList = function thenList(fns) {\n // Queue a series of promise 'factories' into the promise chain.\n var self = this;\n fns.forEach(function thenList_forEach(fn) {\n self = self.thenCore(fn);\n });\n return self;\n };\n\n Worker.prototype[\"catch\"] = function(onRejected) {\n // Bind `this` to the promise handler, call `catch`, and return a Worker.\n if (onRejected) {\n onRejected = onRejected.bind(this);\n }\n var returnVal = Promise.prototype[\"catch\"].call(this, onRejected);\n return Worker.convert(returnVal, this);\n };\n\n Worker.prototype.catchExternal = function catchExternal(onRejected) {\n // Call `catch` and return a standard promise (exits the Worker chain).\n return Promise.prototype[\"catch\"].call(this, onRejected);\n };\n\n Worker.prototype.error = function error(msg) {\n // Throw the error in the Promise chain.\n return this.then(function error_main() {\n throw new Error(msg);\n });\n };\n\n /* ----- ALIASES ----- */\n\n Worker.prototype.using = Worker.prototype.set;\n Worker.prototype.saveAs = Worker.prototype.save;\n Worker.prototype.export = Worker.prototype.output;\n Worker.prototype.run = Worker.prototype.then;\n\n // Get dimensions of a PDF page, as determined by jsPDF.\n jsPDF.getPageSize = function(orientation, unit, format) {\n // Decode options object\n if (typeof orientation === \"object\") {\n var options = orientation;\n orientation = options.orientation;\n unit = options.unit || unit;\n format = options.format || format;\n }\n\n // Default options\n unit = unit || \"mm\";\n format = format || \"a4\";\n orientation = (\"\" + (orientation || \"P\")).toLowerCase();\n var format_as_string = (\"\" + format).toLowerCase();\n\n // Size in pt of various paper formats\n var pageFormats = {\n a0: [2383.94, 3370.39],\n a1: [1683.78, 2383.94],\n a2: [1190.55, 1683.78],\n a3: [841.89, 1190.55],\n a4: [595.28, 841.89],\n a5: [419.53, 595.28],\n a6: [297.64, 419.53],\n a7: [209.76, 297.64],\n a8: [147.4, 209.76],\n a9: [104.88, 147.4],\n a10: [73.7, 104.88],\n b0: [2834.65, 4008.19],\n b1: [2004.09, 2834.65],\n b2: [1417.32, 2004.09],\n b3: [1000.63, 1417.32],\n b4: [708.66, 1000.63],\n b5: [498.9, 708.66],\n b6: [354.33, 498.9],\n b7: [249.45, 354.33],\n b8: [175.75, 249.45],\n b9: [124.72, 175.75],\n b10: [87.87, 124.72],\n c0: [2599.37, 3676.54],\n c1: [1836.85, 2599.37],\n c2: [1298.27, 1836.85],\n c3: [918.43, 1298.27],\n c4: [649.13, 918.43],\n c5: [459.21, 649.13],\n c6: [323.15, 459.21],\n c7: [229.61, 323.15],\n c8: [161.57, 229.61],\n c9: [113.39, 161.57],\n c10: [79.37, 113.39],\n dl: [311.81, 623.62],\n letter: [612, 792],\n \"government-letter\": [576, 756],\n legal: [612, 1008],\n \"junior-legal\": [576, 360],\n ledger: [1224, 792],\n tabloid: [792, 1224],\n \"credit-card\": [153, 243]\n };\n\n var k;\n // Unit conversion\n switch (unit) {\n case \"pt\":\n k = 1;\n break;\n case \"mm\":\n k = 72 / 25.4;\n break;\n case \"cm\":\n k = 72 / 2.54;\n break;\n case \"in\":\n k = 72;\n break;\n case \"px\":\n k = 72 / 96;\n break;\n case \"pc\":\n k = 12;\n break;\n case \"em\":\n k = 12;\n break;\n case \"ex\":\n k = 6;\n break;\n default:\n throw \"Invalid unit: \" + unit;\n }\n var pageHeight = 0;\n var pageWidth = 0;\n\n // Dimensions are stored as user units and converted to points on output\n if (pageFormats.hasOwnProperty(format_as_string)) {\n pageHeight = pageFormats[format_as_string][1] / k;\n pageWidth = pageFormats[format_as_string][0] / k;\n } else {\n try {\n pageHeight = format[1];\n pageWidth = format[0];\n } catch (err) {\n throw new Error(\"Invalid format: \" + format);\n }\n }\n\n var tmp;\n // Handle page orientation\n if (orientation === \"p\" || orientation === \"portrait\") {\n orientation = \"p\";\n if (pageWidth > pageHeight) {\n tmp = pageWidth;\n pageWidth = pageHeight;\n pageHeight = tmp;\n }\n } else if (orientation === \"l\" || orientation === \"landscape\") {\n orientation = \"l\";\n if (pageHeight > pageWidth) {\n tmp = pageWidth;\n pageWidth = pageHeight;\n pageHeight = tmp;\n }\n } else {\n throw \"Invalid orientation: \" + orientation;\n }\n\n // Return information (k is the unit conversion ratio from pts)\n var info = {\n width: pageWidth,\n height: pageHeight,\n unit: unit,\n k: k,\n orientation: orientation\n };\n return info;\n };\n\n /**\n * @typedef FontFace\n *\n * The font-face type implements an interface similar to that of the font-face CSS rule,\n * and is used by jsPDF to match fonts when the font property of CanvasRenderingContext2D\n * is updated.\n *\n * All properties expect values similar to those in the font-face CSS rule. A difference\n * is the font-family, which do not need to be enclosed in double-quotes when containing\n * spaces like in CSS.\n *\n * @property {string} family The name of the font-family.\n * @property {string|undefined} style The style that this font-face defines, e.g. 'italic'.\n * @property {string|number|undefined} weight The weight of the font, either as a string or a number (400, 500, 600, e.g.)\n * @property {string|undefined} stretch The stretch of the font, e.g. condensed, normal, expanded.\n * @property {Object[]} src A list of URLs from where fonts of various formats can be fetched.\n * @property {string} [src] url A URL to a font of a specific format.\n * @property {string} [src] format Format of the font referenced by the URL.\n */\n\n /**\n * Generate a PDF from an HTML element or string using.\n *\n * @name html\n * @function\n * @param {HTMLElement|string} source The source HTMLElement or a string containing HTML.\n * @param {Object} [options] Collection of settings\n * @param {function} [options.callback] The mandatory callback-function gets as first parameter the current jsPDF instance\n * @param {(number|number[])=} [options.margin] Page margins [top, right, bottom, left]. Default is 0.\n * @param {(boolean|'slice'|'text')=} [options.autoPaging] The auto paging mode.\n *
      \n *
    • \n * false: Auto paging is disabled.\n *
    • \n *
    • \n * true or 'slice': Will cut shapes or text chunks across page breaks. Will possibly\n * slice text in half, making it difficult to read.\n *
    • \n *
    • \n * 'text': Trys not to cut text in half across page breaks. Works best for documents consisting\n * mostly of a single column of text.\n *
    • \n *
    \n * Default is true.\n * @param {string} [options.filename] name of the file\n * @param {HTMLOptionImage} [options.image] image settings when converting HTML to image\n * @param {Html2CanvasOptions} [options.html2canvas] html2canvas options\n * @param {FontFace[]} [options.fontFaces] A list of font-faces to match when resolving fonts. Fonts will be added to the PDF based on the specified URL. If omitted, the font match algorithm falls back to old algorithm.\n * @param {jsPDF} [options.jsPDF] jsPDF instance\n * @param {number=} [options.x] x position on the PDF document in jsPDF units.\n * @param {number=} [options.y] y position on the PDF document in jsPDF units.\n * @param {number=} [options.width] The target width in the PDF document in jsPDF units. The rendered element will be\n * scaled such that it fits into the specified width. Has no effect if either the html2canvas.scale is\n * specified or the windowWidth option is NOT specified.\n * @param {number=} [options.windowWidth] The window width in CSS pixels. In contrast to the\n * html2canvas.windowWidth option, this option affects the actual container size while rendering and\n * does NOT affect CSS media queries. This option only has an effect, if the width option is also specified.\n *\n * @example\n * var doc = new jsPDF();\n *\n * doc.html(document.body, {\n * callback: function (doc) {\n * doc.save();\n * },\n * x: 10,\n * y: 10\n * });\n */\n jsPDFAPI.html = function(src, options) {\n \"use strict\";\n\n options = options || {};\n options.callback = options.callback || function() {};\n options.html2canvas = options.html2canvas || {};\n options.html2canvas.canvas = options.html2canvas.canvas || this.canvas;\n options.jsPDF = options.jsPDF || this;\n options.fontFaces = options.fontFaces\n ? options.fontFaces.map(normalizeFontFace)\n : null;\n\n // Create a new worker with the given options.\n var worker = new Worker(options);\n\n if (!options.worker) {\n // If worker is not set to true, perform the traditional 'simple' operation.\n return worker.from(src).doCallback();\n } else {\n // Otherwise, return the worker for new Promise-based operation.\n return worker;\n }\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF Outline PlugIn\n *\n * Generates a PDF Outline\n * @name outline\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n var namesOid;\n //var destsGoto = [];\n\n jsPDFAPI.events.push([\n \"postPutResources\",\n function() {\n var pdf = this;\n var rx = /^(\\d+) 0 obj$/;\n\n // Write action goto objects for each page\n // this.outline.destsGoto = [];\n // for (var i = 0; i < totalPages; i++) {\n // var id = pdf.internal.newObject();\n // this.outline.destsGoto.push(id);\n // pdf.internal.write(\"<> endobj\");\n // }\n //\n // for (var i = 0; i < dests.length; i++) {\n // pdf.internal.write(\"(page_\" + (i + 1) + \")\" + dests[i] + \" 0\n // R\");\n // }\n //\n if (this.outline.root.children.length > 0) {\n var lines = pdf.outline.render().split(/\\r\\n/);\n for (var i = 0; i < lines.length; i++) {\n var line = lines[i];\n var m = rx.exec(line);\n if (m != null) {\n var oid = m[1];\n pdf.internal.newObjectDeferredBegin(oid, false);\n }\n pdf.internal.write(line);\n }\n }\n\n // This code will write named destination for each page reference\n // (page_1, etc)\n if (this.outline.createNamedDestinations) {\n var totalPages = this.internal.pages.length;\n // WARNING: this assumes jsPDF starts on page 3 and pageIDs\n // follow 5, 7, 9, etc\n // Write destination objects for each page\n var dests = [];\n for (var i = 0; i < totalPages; i++) {\n var id = pdf.internal.newObject();\n dests.push(id);\n var info = pdf.internal.getPageInfo(i + 1);\n pdf.internal.write(\n \"<< /D[\" + info.objId + \" 0 R /XYZ null null null]>> endobj\"\n );\n }\n\n // assign a name for each destination\n var names2Oid = pdf.internal.newObject();\n pdf.internal.write(\"<< /Names [ \");\n for (var i = 0; i < dests.length; i++) {\n pdf.internal.write(\"(page_\" + (i + 1) + \")\" + dests[i] + \" 0 R\");\n }\n pdf.internal.write(\" ] >>\", \"endobj\");\n\n // var kids = pdf.internal.newObject();\n // pdf.internal.write('<< /Kids [ ' + names2Oid + ' 0 R');\n // pdf.internal.write(' ] >>', 'endobj');\n\n namesOid = pdf.internal.newObject();\n pdf.internal.write(\"<< /Dests \" + names2Oid + \" 0 R\");\n pdf.internal.write(\">>\", \"endobj\");\n }\n }\n ]);\n\n jsPDFAPI.events.push([\n \"putCatalog\",\n function() {\n var pdf = this;\n if (pdf.outline.root.children.length > 0) {\n pdf.internal.write(\n \"/Outlines\",\n this.outline.makeRef(this.outline.root)\n );\n if (this.outline.createNamedDestinations) {\n pdf.internal.write(\"/Names \" + namesOid + \" 0 R\");\n }\n // Open with Bookmarks showing\n // pdf.internal.write(\"/PageMode /UseOutlines\");\n }\n }\n ]);\n\n jsPDFAPI.events.push([\n \"initialized\",\n function() {\n var pdf = this;\n\n pdf.outline = {\n createNamedDestinations: false,\n root: {\n children: []\n }\n };\n\n /**\n * Options: pageNumber\n */\n pdf.outline.add = function(parent, title, options) {\n var item = {\n title: title,\n options: options,\n children: []\n };\n if (parent == null) {\n parent = this.root;\n }\n parent.children.push(item);\n return item;\n };\n\n pdf.outline.render = function() {\n this.ctx = {};\n this.ctx.val = \"\";\n this.ctx.pdf = pdf;\n\n this.genIds_r(this.root);\n this.renderRoot(this.root);\n this.renderItems(this.root);\n\n return this.ctx.val;\n };\n\n pdf.outline.genIds_r = function(node) {\n node.id = pdf.internal.newObjectDeferred();\n for (var i = 0; i < node.children.length; i++) {\n this.genIds_r(node.children[i]);\n }\n };\n\n pdf.outline.renderRoot = function(node) {\n this.objStart(node);\n this.line(\"/Type /Outlines\");\n if (node.children.length > 0) {\n this.line(\"/First \" + this.makeRef(node.children[0]));\n this.line(\n \"/Last \" + this.makeRef(node.children[node.children.length - 1])\n );\n }\n this.line(\n \"/Count \" +\n this.count_r(\n {\n count: 0\n },\n node\n )\n );\n this.objEnd();\n };\n\n pdf.outline.renderItems = function(node) {\n var getVerticalCoordinateString = this.ctx.pdf.internal\n .getVerticalCoordinateString;\n for (var i = 0; i < node.children.length; i++) {\n var item = node.children[i];\n this.objStart(item);\n\n this.line(\"/Title \" + this.makeString(item.title));\n\n this.line(\"/Parent \" + this.makeRef(node));\n if (i > 0) {\n this.line(\"/Prev \" + this.makeRef(node.children[i - 1]));\n }\n if (i < node.children.length - 1) {\n this.line(\"/Next \" + this.makeRef(node.children[i + 1]));\n }\n if (item.children.length > 0) {\n this.line(\"/First \" + this.makeRef(item.children[0]));\n this.line(\n \"/Last \" + this.makeRef(item.children[item.children.length - 1])\n );\n }\n\n var count = (this.count = this.count_r(\n {\n count: 0\n },\n item\n ));\n if (count > 0) {\n this.line(\"/Count \" + count);\n }\n\n if (item.options) {\n if (item.options.pageNumber) {\n // Explicit Destination\n //WARNING this assumes page ids are 3,5,7, etc.\n var info = pdf.internal.getPageInfo(item.options.pageNumber);\n this.line(\n \"/Dest \" +\n \"[\" +\n info.objId +\n \" 0 R /XYZ 0 \" +\n getVerticalCoordinateString(0) +\n \" 0]\"\n );\n // this line does not work on all clients (pageNumber instead of page ref)\n //this.line('/Dest ' + '[' + (item.options.pageNumber - 1) + ' /XYZ 0 ' + this.ctx.pdf.internal.pageSize.getHeight() + ' 0]');\n\n // Named Destination\n // this.line('/Dest (page_' + (item.options.pageNumber) + ')');\n\n // Action Destination\n // var id = pdf.internal.newObject();\n // pdf.internal.write('<> endobj');\n // this.line('/A ' + id + ' 0 R' );\n }\n }\n this.objEnd();\n }\n for (var z = 0; z < node.children.length; z++) {\n this.renderItems(node.children[z]);\n }\n };\n\n pdf.outline.line = function(text) {\n this.ctx.val += text + \"\\r\\n\";\n };\n\n pdf.outline.makeRef = function(node) {\n return node.id + \" 0 R\";\n };\n\n pdf.outline.makeString = function(val) {\n return \"(\" + pdf.internal.pdfEscape(val) + \")\";\n };\n\n pdf.outline.objStart = function(node) {\n this.ctx.val += \"\\r\\n\" + node.id + \" 0 obj\" + \"\\r\\n<<\\r\\n\";\n };\n\n pdf.outline.objEnd = function() {\n this.ctx.val += \">> \\r\\n\" + \"endobj\" + \"\\r\\n\";\n };\n\n pdf.outline.count_r = function(ctx, node) {\n for (var i = 0; i < node.children.length; i++) {\n ctx.count++;\n this.count_r(ctx, node.children[i]);\n }\n return ctx.count;\n };\n }\n ]);\n\n return this;\n})(jsPDF.API);\n","/**\n * @license\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF jpeg Support PlugIn\n *\n * @name jpeg_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * 0xc0 (SOF) Huffman - Baseline DCT\n * 0xc1 (SOF) Huffman - Extended sequential DCT\n * 0xc2 Progressive DCT (SOF2)\n * 0xc3 Spatial (sequential) lossless (SOF3)\n * 0xc4 Differential sequential DCT (SOF5)\n * 0xc5 Differential progressive DCT (SOF6)\n * 0xc6 Differential spatial (SOF7)\n * 0xc7\n */\n var markers = [0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7];\n\n //takes a string imgData containing the raw bytes of\n //a jpeg image and returns [width, height]\n //Algorithm from: http://www.64lines.com/jpeg-width-height\n var getJpegInfo = function(imgData) {\n var width, height, numcomponents;\n var blockLength = imgData.charCodeAt(4) * 256 + imgData.charCodeAt(5);\n var len = imgData.length;\n var result = { width: 0, height: 0, numcomponents: 1 };\n for (var i = 4; i < len; i += 2) {\n i += blockLength;\n if (markers.indexOf(imgData.charCodeAt(i + 1)) !== -1) {\n height = imgData.charCodeAt(i + 5) * 256 + imgData.charCodeAt(i + 6);\n width = imgData.charCodeAt(i + 7) * 256 + imgData.charCodeAt(i + 8);\n numcomponents = imgData.charCodeAt(i + 9);\n result = { width: width, height: height, numcomponents: numcomponents };\n break;\n } else {\n blockLength =\n imgData.charCodeAt(i + 2) * 256 + imgData.charCodeAt(i + 3);\n }\n }\n return result;\n };\n\n /**\n * @ignore\n */\n jsPDFAPI.processJPEG = function(\n data,\n index,\n alias,\n compression,\n dataAsBinaryString,\n colorSpace\n ) {\n var filter = this.decode.DCT_DECODE,\n bpc = 8,\n dims,\n result = null;\n\n if (\n typeof data === \"string\" ||\n this.__addimage__.isArrayBuffer(data) ||\n this.__addimage__.isArrayBufferView(data)\n ) {\n // if we already have a stored binary string rep use that\n data = dataAsBinaryString || data;\n data = this.__addimage__.isArrayBuffer(data)\n ? new Uint8Array(data)\n : data;\n data = this.__addimage__.isArrayBufferView(data)\n ? this.__addimage__.arrayBufferToBinaryString(data)\n : data;\n\n dims = getJpegInfo(data);\n switch (dims.numcomponents) {\n case 1:\n colorSpace = this.color_spaces.DEVICE_GRAY;\n break;\n case 4:\n colorSpace = this.color_spaces.DEVICE_CMYK;\n break;\n case 3:\n colorSpace = this.color_spaces.DEVICE_RGB;\n break;\n }\n\n result = {\n data: data,\n width: dims.width,\n height: dims.height,\n colorSpace: colorSpace,\n bitsPerComponent: bpc,\n filter: filter,\n index: index,\n alias: alias\n };\n }\n return result;\n };\n})(jsPDF.API);\n","// Generated by CoffeeScript 1.4.0\n\n/**\n * @license\n * PNG.js\n * Copyright (c) 2011 Devon Govett\n * MIT LICENSE\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of this\n * software and associated documentation files (the \"Software\"), to deal in the Software\n * without restriction, including without limitation the rights to use, copy, modify, merge,\n * publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons\n * to whom the Software is furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all copies or\n * substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING\n * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\nimport { unzlibSync } from \"./fflate.js\";\nimport { globalObject } from \"./globalObject.js\";\n\nvar PNG = (function() {\n var APNG_BLEND_OP_OVER,\n APNG_BLEND_OP_SOURCE,\n APNG_DISPOSE_OP_BACKGROUND,\n APNG_DISPOSE_OP_NONE,\n APNG_DISPOSE_OP_PREVIOUS,\n makeImage,\n scratchCanvas,\n scratchCtx;\n\n APNG_DISPOSE_OP_NONE = 0;\n\n APNG_DISPOSE_OP_BACKGROUND = 1;\n\n APNG_DISPOSE_OP_PREVIOUS = 2;\n\n APNG_BLEND_OP_SOURCE = 0;\n\n APNG_BLEND_OP_OVER = 1;\n\n function PNG(data) {\n var chunkSize,\n colors,\n palLen,\n delayDen,\n delayNum,\n frame,\n i,\n index,\n key,\n section,\n palShort,\n text,\n _i,\n _j,\n _ref;\n this.data = data;\n this.pos = 8;\n this.palette = [];\n this.imgData = [];\n this.transparency = {};\n this.animation = null;\n this.text = {};\n frame = null;\n while (true) {\n chunkSize = this.readUInt32();\n section = function() {\n var _i, _results;\n _results = [];\n for (i = _i = 0; _i < 4; i = ++_i) {\n _results.push(String.fromCharCode(this.data[this.pos++]));\n }\n return _results;\n }\n .call(this)\n .join(\"\");\n switch (section) {\n case \"IHDR\":\n this.width = this.readUInt32();\n this.height = this.readUInt32();\n this.bits = this.data[this.pos++];\n this.colorType = this.data[this.pos++];\n this.compressionMethod = this.data[this.pos++];\n this.filterMethod = this.data[this.pos++];\n this.interlaceMethod = this.data[this.pos++];\n break;\n case \"acTL\":\n this.animation = {\n numFrames: this.readUInt32(),\n numPlays: this.readUInt32() || Infinity,\n frames: []\n };\n break;\n case \"PLTE\":\n this.palette = this.read(chunkSize);\n break;\n case \"fcTL\":\n if (frame) {\n this.animation.frames.push(frame);\n }\n this.pos += 4;\n frame = {\n width: this.readUInt32(),\n height: this.readUInt32(),\n xOffset: this.readUInt32(),\n yOffset: this.readUInt32()\n };\n delayNum = this.readUInt16();\n delayDen = this.readUInt16() || 100;\n frame.delay = (1000 * delayNum) / delayDen;\n frame.disposeOp = this.data[this.pos++];\n frame.blendOp = this.data[this.pos++];\n frame.data = [];\n break;\n case \"IDAT\":\n case \"fdAT\":\n if (section === \"fdAT\") {\n this.pos += 4;\n chunkSize -= 4;\n }\n data = (frame != null ? frame.data : void 0) || this.imgData;\n for (\n i = _i = 0;\n 0 <= chunkSize ? _i < chunkSize : _i > chunkSize;\n i = 0 <= chunkSize ? ++_i : --_i\n ) {\n data.push(this.data[this.pos++]);\n }\n break;\n case \"tRNS\":\n this.transparency = {};\n switch (this.colorType) {\n case 3:\n palLen = this.palette.length / 3;\n this.transparency.indexed = this.read(chunkSize);\n if (this.transparency.indexed.length > palLen)\n throw new Error(\"More transparent colors than palette size\");\n /*\n * According to the PNG spec trns should be increased to the same size as palette if shorter\n */\n //palShort = 255 - this.transparency.indexed.length;\n palShort = palLen - this.transparency.indexed.length;\n if (palShort > 0) {\n for (\n i = _j = 0;\n 0 <= palShort ? _j < palShort : _j > palShort;\n i = 0 <= palShort ? ++_j : --_j\n ) {\n this.transparency.indexed.push(255);\n }\n }\n break;\n case 0:\n this.transparency.grayscale = this.read(chunkSize)[0];\n break;\n case 2:\n this.transparency.rgb = this.read(chunkSize);\n }\n break;\n case \"tEXt\":\n text = this.read(chunkSize);\n index = text.indexOf(0);\n key = String.fromCharCode.apply(String, text.slice(0, index));\n this.text[key] = String.fromCharCode.apply(\n String,\n text.slice(index + 1)\n );\n break;\n case \"IEND\":\n if (frame) {\n this.animation.frames.push(frame);\n }\n this.colors = function() {\n switch (this.colorType) {\n case 0:\n case 3:\n case 4:\n return 1;\n case 2:\n case 6:\n return 3;\n }\n }.call(this);\n this.hasAlphaChannel = (_ref = this.colorType) === 4 || _ref === 6;\n colors = this.colors + (this.hasAlphaChannel ? 1 : 0);\n this.pixelBitlength = this.bits * colors;\n this.colorSpace = function() {\n switch (this.colors) {\n case 1:\n return \"DeviceGray\";\n case 3:\n return \"DeviceRGB\";\n }\n }.call(this);\n this.imgData = new Uint8Array(this.imgData);\n return;\n default:\n this.pos += chunkSize;\n }\n this.pos += 4;\n if (this.pos > this.data.length) {\n throw new Error(\"Incomplete or corrupt PNG file\");\n }\n }\n }\n\n PNG.prototype.read = function(bytes) {\n var i, _i, _results;\n _results = [];\n for (\n i = _i = 0;\n 0 <= bytes ? _i < bytes : _i > bytes;\n i = 0 <= bytes ? ++_i : --_i\n ) {\n _results.push(this.data[this.pos++]);\n }\n return _results;\n };\n\n PNG.prototype.readUInt32 = function() {\n var b1, b2, b3, b4;\n b1 = this.data[this.pos++] << 24;\n b2 = this.data[this.pos++] << 16;\n b3 = this.data[this.pos++] << 8;\n b4 = this.data[this.pos++];\n return b1 | b2 | b3 | b4;\n };\n\n PNG.prototype.readUInt16 = function() {\n var b1, b2;\n b1 = this.data[this.pos++] << 8;\n b2 = this.data[this.pos++];\n return b1 | b2;\n };\n\n PNG.prototype.decodePixels = function(data) {\n var pixelBytes = this.pixelBitlength / 8;\n var fullPixels = new Uint8Array(this.width * this.height * pixelBytes);\n var pos = 0;\n var _this = this;\n\n if (data == null) {\n data = this.imgData;\n }\n if (data.length === 0) {\n return new Uint8Array(0);\n }\n\n data = unzlibSync(data);\n function pass(x0, y0, dx, dy) {\n var abyte,\n c,\n col,\n i,\n left,\n length,\n p,\n pa,\n paeth,\n pb,\n pc,\n pixels,\n row,\n scanlineLength,\n upper,\n upperLeft,\n _i,\n _j,\n _k,\n _l,\n _m;\n var w = Math.ceil((_this.width - x0) / dx),\n h = Math.ceil((_this.height - y0) / dy);\n var isFull = _this.width == w && _this.height == h;\n scanlineLength = pixelBytes * w;\n pixels = isFull ? fullPixels : new Uint8Array(scanlineLength * h);\n length = data.length;\n row = 0;\n c = 0;\n while (row < h && pos < length) {\n switch (data[pos++]) {\n case 0:\n for (i = _i = 0; _i < scanlineLength; i = _i += 1) {\n pixels[c++] = data[pos++];\n }\n break;\n case 1:\n for (i = _j = 0; _j < scanlineLength; i = _j += 1) {\n abyte = data[pos++];\n left = i < pixelBytes ? 0 : pixels[c - pixelBytes];\n pixels[c++] = (abyte + left) % 256;\n }\n break;\n case 2:\n for (i = _k = 0; _k < scanlineLength; i = _k += 1) {\n abyte = data[pos++];\n col = (i - (i % pixelBytes)) / pixelBytes;\n upper =\n row &&\n pixels[\n (row - 1) * scanlineLength +\n col * pixelBytes +\n (i % pixelBytes)\n ];\n pixels[c++] = (upper + abyte) % 256;\n }\n break;\n case 3:\n for (i = _l = 0; _l < scanlineLength; i = _l += 1) {\n abyte = data[pos++];\n col = (i - (i % pixelBytes)) / pixelBytes;\n left = i < pixelBytes ? 0 : pixels[c - pixelBytes];\n upper =\n row &&\n pixels[\n (row - 1) * scanlineLength +\n col * pixelBytes +\n (i % pixelBytes)\n ];\n pixels[c++] = (abyte + Math.floor((left + upper) / 2)) % 256;\n }\n break;\n case 4:\n for (i = _m = 0; _m < scanlineLength; i = _m += 1) {\n abyte = data[pos++];\n col = (i - (i % pixelBytes)) / pixelBytes;\n left = i < pixelBytes ? 0 : pixels[c - pixelBytes];\n if (row === 0) {\n upper = upperLeft = 0;\n } else {\n upper =\n pixels[\n (row - 1) * scanlineLength +\n col * pixelBytes +\n (i % pixelBytes)\n ];\n upperLeft =\n col &&\n pixels[\n (row - 1) * scanlineLength +\n (col - 1) * pixelBytes +\n (i % pixelBytes)\n ];\n }\n p = left + upper - upperLeft;\n pa = Math.abs(p - left);\n pb = Math.abs(p - upper);\n pc = Math.abs(p - upperLeft);\n if (pa <= pb && pa <= pc) {\n paeth = left;\n } else if (pb <= pc) {\n paeth = upper;\n } else {\n paeth = upperLeft;\n }\n pixels[c++] = (abyte + paeth) % 256;\n }\n break;\n default:\n throw new Error(\"Invalid filter algorithm: \" + data[pos - 1]);\n }\n if (!isFull) {\n var fullPos = ((y0 + row * dy) * _this.width + x0) * pixelBytes;\n var partPos = row * scanlineLength;\n for (i = 0; i < w; i += 1) {\n for (var j = 0; j < pixelBytes; j += 1)\n fullPixels[fullPos++] = pixels[partPos++];\n fullPos += (dx - 1) * pixelBytes;\n }\n }\n row++;\n }\n }\n if (_this.interlaceMethod == 1) {\n /*\n 1 6 4 6 2 6 4 6\n 7 7 7 7 7 7 7 7\n 5 6 5 6 5 6 5 6\n 7 7 7 7 7 7 7 7\n 3 6 4 6 3 6 4 6\n 7 7 7 7 7 7 7 7\n 5 6 5 6 5 6 5 6\n 7 7 7 7 7 7 7 7\n */\n pass(0, 0, 8, 8); // 1\n /* NOTE these seem to follow the pattern:\n * pass(x, 0, 2*x, 2*x);\n * pass(0, x, x, 2*x);\n * with x being 4, 2, 1.\n */\n pass(4, 0, 8, 8); // 2\n pass(0, 4, 4, 8); // 3\n\n pass(2, 0, 4, 4); // 4\n pass(0, 2, 2, 4); // 5\n\n pass(1, 0, 2, 2); // 6\n pass(0, 1, 1, 2); // 7\n } else {\n pass(0, 0, 1, 1);\n }\n return fullPixels;\n };\n\n PNG.prototype.decodePalette = function() {\n var c, i, length, palette, pos, ret, transparency, _i, _ref, _ref1;\n palette = this.palette;\n transparency = this.transparency.indexed || [];\n ret = new Uint8Array((transparency.length || 0) + palette.length);\n pos = 0;\n length = palette.length;\n c = 0;\n for (i = _i = 0, _ref = length; _i < _ref; i = _i += 3) {\n ret[pos++] = palette[i];\n ret[pos++] = palette[i + 1];\n ret[pos++] = palette[i + 2];\n ret[pos++] = (_ref1 = transparency[c++]) != null ? _ref1 : 255;\n }\n return ret;\n };\n\n PNG.prototype.copyToImageData = function(imageData, pixels) {\n var alpha, colors, data, i, input, j, k, length, palette, v, _ref;\n colors = this.colors;\n palette = null;\n alpha = this.hasAlphaChannel;\n if (this.palette.length) {\n palette =\n (_ref = this._decodedPalette) != null\n ? _ref\n : (this._decodedPalette = this.decodePalette());\n colors = 4;\n alpha = true;\n }\n data = imageData.data || imageData;\n length = data.length;\n input = palette || pixels;\n i = j = 0;\n if (colors === 1) {\n while (i < length) {\n k = palette ? pixels[i / 4] * 4 : j;\n v = input[k++];\n data[i++] = v;\n data[i++] = v;\n data[i++] = v;\n data[i++] = alpha ? input[k++] : 255;\n j = k;\n }\n } else {\n while (i < length) {\n k = palette ? pixels[i / 4] * 4 : j;\n data[i++] = input[k++];\n data[i++] = input[k++];\n data[i++] = input[k++];\n data[i++] = alpha ? input[k++] : 255;\n j = k;\n }\n }\n };\n\n PNG.prototype.decode = function() {\n var ret;\n ret = new Uint8Array(this.width * this.height * 4);\n this.copyToImageData(ret, this.decodePixels());\n return ret;\n };\n\n var hasBrowserCanvas = function() {\n if (Object.prototype.toString.call(globalObject) === \"[object Window]\") {\n try {\n scratchCanvas = globalObject.document.createElement(\"canvas\");\n scratchCtx = scratchCanvas.getContext(\"2d\");\n } catch (e) {\n return false;\n }\n return true;\n }\n return false;\n };\n\n hasBrowserCanvas();\n\n makeImage = function(imageData) {\n if (hasBrowserCanvas() === true) {\n var img;\n scratchCtx.width = imageData.width;\n scratchCtx.height = imageData.height;\n scratchCtx.clearRect(0, 0, imageData.width, imageData.height);\n scratchCtx.putImageData(imageData, 0, 0);\n img = new Image();\n img.src = scratchCanvas.toDataURL();\n return img;\n }\n throw new Error(\"This method requires a Browser with Canvas-capability.\");\n };\n\n PNG.prototype.decodeFrames = function(ctx) {\n var frame, i, imageData, pixels, _i, _len, _ref, _results;\n if (!this.animation) {\n return;\n }\n _ref = this.animation.frames;\n _results = [];\n for (i = _i = 0, _len = _ref.length; _i < _len; i = ++_i) {\n frame = _ref[i];\n imageData = ctx.createImageData(frame.width, frame.height);\n pixels = this.decodePixels(new Uint8Array(frame.data));\n this.copyToImageData(imageData, pixels);\n frame.imageData = imageData;\n _results.push((frame.image = makeImage(imageData)));\n }\n return _results;\n };\n\n PNG.prototype.renderFrame = function(ctx, number) {\n var frame, frames, prev;\n frames = this.animation.frames;\n frame = frames[number];\n prev = frames[number - 1];\n if (number === 0) {\n ctx.clearRect(0, 0, this.width, this.height);\n }\n if (\n (prev != null ? prev.disposeOp : void 0) === APNG_DISPOSE_OP_BACKGROUND\n ) {\n ctx.clearRect(prev.xOffset, prev.yOffset, prev.width, prev.height);\n } else if (\n (prev != null ? prev.disposeOp : void 0) === APNG_DISPOSE_OP_PREVIOUS\n ) {\n ctx.putImageData(prev.imageData, prev.xOffset, prev.yOffset);\n }\n if (frame.blendOp === APNG_BLEND_OP_SOURCE) {\n ctx.clearRect(frame.xOffset, frame.yOffset, frame.width, frame.height);\n }\n return ctx.drawImage(frame.image, frame.xOffset, frame.yOffset);\n };\n\n PNG.prototype.animate = function(ctx) {\n var doFrame,\n frameNumber,\n frames,\n numFrames,\n numPlays,\n _ref,\n _this = this;\n frameNumber = 0;\n (_ref = this.animation),\n (numFrames = _ref.numFrames),\n (frames = _ref.frames),\n (numPlays = _ref.numPlays);\n return (doFrame = function() {\n var f, frame;\n f = frameNumber++ % numFrames;\n frame = frames[f];\n _this.renderFrame(ctx, f);\n if (numFrames > 1 && frameNumber / numFrames < numPlays) {\n return (_this.animation._timeout = setTimeout(doFrame, frame.delay));\n }\n })();\n };\n\n PNG.prototype.stopAnimation = function() {\n var _ref;\n return clearTimeout(\n (_ref = this.animation) != null ? _ref._timeout : void 0\n );\n };\n\n PNG.prototype.render = function(canvas) {\n var ctx, data;\n if (canvas._png) {\n canvas._png.stopAnimation();\n }\n canvas._png = this;\n canvas.width = this.width;\n canvas.height = this.height;\n ctx = canvas.getContext(\"2d\");\n if (this.animation) {\n this.decodeFrames(ctx);\n return this.animate(ctx);\n } else {\n data = ctx.createImageData(this.width, this.height);\n this.copyToImageData(data, this.decodePixels());\n return ctx.putImageData(data, 0, 0);\n }\n };\n\n return PNG;\n})();\n\nexport { PNG };\n","/** @license\n * MIT license.\n * Copyright (c) 2012 Willow Systems Corporation, https://github.com/willowsystems\n * 2014 Diego Casorran, https://github.com/diegocr\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF split_text_to_size plugin\n *\n * @name split_text_to_size\n * @module\n */\n(function(API) {\n \"use strict\";\n /**\n * Returns an array of length matching length of the 'word' string, with each\n * cell occupied by the width of the char in that position.\n *\n * @name getCharWidthsArray\n * @function\n * @param {string} text\n * @param {Object} options\n * @returns {Array}\n */\n var getCharWidthsArray = (API.getCharWidthsArray = function(text, options) {\n options = options || {};\n\n var activeFont = options.font || this.internal.getFont();\n var fontSize = options.fontSize || this.internal.getFontSize();\n var charSpace = options.charSpace || this.internal.getCharSpace();\n\n var widths = options.widths\n ? options.widths\n : activeFont.metadata.Unicode.widths;\n var widthsFractionOf = widths.fof ? widths.fof : 1;\n var kerning = options.kerning\n ? options.kerning\n : activeFont.metadata.Unicode.kerning;\n var kerningFractionOf = kerning.fof ? kerning.fof : 1;\n var doKerning = options.doKerning === false ? false : true;\n var kerningValue = 0;\n\n var i;\n var length = text.length;\n var char_code;\n var prior_char_code = 0; //for kerning\n var default_char_width = widths[0] || widthsFractionOf;\n var output = [];\n\n for (i = 0; i < length; i++) {\n char_code = text.charCodeAt(i);\n\n if (typeof activeFont.metadata.widthOfString === \"function\") {\n output.push(\n (activeFont.metadata.widthOfGlyph(\n activeFont.metadata.characterToGlyph(char_code)\n ) +\n charSpace * (1000 / fontSize) || 0) / 1000\n );\n } else {\n if (\n doKerning &&\n typeof kerning[char_code] === \"object\" &&\n !isNaN(parseInt(kerning[char_code][prior_char_code], 10))\n ) {\n kerningValue =\n kerning[char_code][prior_char_code] / kerningFractionOf;\n } else {\n kerningValue = 0;\n }\n output.push(\n (widths[char_code] || default_char_width) / widthsFractionOf +\n kerningValue\n );\n }\n prior_char_code = char_code;\n }\n\n return output;\n });\n\n /**\n * Returns a widths of string in a given font, if the font size is set as 1 point.\n *\n * In other words, this is \"proportional\" value. For 1 unit of font size, the length\n * of the string will be that much.\n *\n * Multiply by font size to get actual width in *points*\n * Then divide by 72 to get inches or divide by (72/25.6) to get 'mm' etc.\n *\n * @name getStringUnitWidth\n * @public\n * @function\n * @param {string} text\n * @param {string} options\n * @returns {number} result\n */\n var getStringUnitWidth = (API.getStringUnitWidth = function(text, options) {\n options = options || {};\n\n var fontSize = options.fontSize || this.internal.getFontSize();\n var font = options.font || this.internal.getFont();\n var charSpace = options.charSpace || this.internal.getCharSpace();\n var result = 0;\n\n if (API.processArabic) {\n text = API.processArabic(text);\n }\n\n if (typeof font.metadata.widthOfString === \"function\") {\n result =\n font.metadata.widthOfString(text, fontSize, charSpace) / fontSize;\n } else {\n result = getCharWidthsArray\n .apply(this, arguments)\n .reduce(function(pv, cv) {\n return pv + cv;\n }, 0);\n }\n return result;\n });\n\n /**\n returns array of lines\n */\n var splitLongWord = function(word, widths_array, firstLineMaxLen, maxLen) {\n var answer = [];\n\n // 1st, chop off the piece that can fit on the hanging line.\n var i = 0,\n l = word.length,\n workingLen = 0;\n while (i !== l && workingLen + widths_array[i] < firstLineMaxLen) {\n workingLen += widths_array[i];\n i++;\n }\n // this is first line.\n answer.push(word.slice(0, i));\n\n // 2nd. Split the rest into maxLen pieces.\n var startOfLine = i;\n workingLen = 0;\n while (i !== l) {\n if (workingLen + widths_array[i] > maxLen) {\n answer.push(word.slice(startOfLine, i));\n workingLen = 0;\n startOfLine = i;\n }\n workingLen += widths_array[i];\n i++;\n }\n if (startOfLine !== i) {\n answer.push(word.slice(startOfLine, i));\n }\n\n return answer;\n };\n\n // Note, all sizing inputs for this function must be in \"font measurement units\"\n // By default, for PDF, it's \"point\".\n var splitParagraphIntoLines = function(text, maxlen, options) {\n // at this time works only on Western scripts, ones with space char\n // separating the words. Feel free to expand.\n\n if (!options) {\n options = {};\n }\n\n var line = [],\n lines = [line],\n line_length = options.textIndent || 0,\n separator_length = 0,\n current_word_length = 0,\n word,\n widths_array,\n words = text.split(\" \"),\n spaceCharWidth = getCharWidthsArray.apply(this, [\" \", options])[0],\n i,\n l,\n tmp,\n lineIndent;\n\n if (options.lineIndent === -1) {\n lineIndent = words[0].length + 2;\n } else {\n lineIndent = options.lineIndent || 0;\n }\n if (lineIndent) {\n var pad = Array(lineIndent).join(\" \"),\n wrds = [];\n words.map(function(wrd) {\n wrd = wrd.split(/\\s*\\n/);\n if (wrd.length > 1) {\n wrds = wrds.concat(\n wrd.map(function(wrd, idx) {\n return (idx && wrd.length ? \"\\n\" : \"\") + wrd;\n })\n );\n } else {\n wrds.push(wrd[0]);\n }\n });\n words = wrds;\n lineIndent = getStringUnitWidth.apply(this, [pad, options]);\n }\n\n for (i = 0, l = words.length; i < l; i++) {\n var force = 0;\n\n word = words[i];\n if (lineIndent && word[0] == \"\\n\") {\n word = word.substr(1);\n force = 1;\n }\n widths_array = getCharWidthsArray.apply(this, [word, options]);\n current_word_length = widths_array.reduce(function(pv, cv) {\n return pv + cv;\n }, 0);\n\n if (\n line_length + separator_length + current_word_length > maxlen ||\n force\n ) {\n if (current_word_length > maxlen) {\n // this happens when you have space-less long URLs for example.\n // we just chop these to size. We do NOT insert hiphens\n tmp = splitLongWord.apply(this, [\n word,\n widths_array,\n maxlen - (line_length + separator_length),\n maxlen\n ]);\n // first line we add to existing line object\n line.push(tmp.shift()); // it's ok to have extra space indicator there\n // last line we make into new line object\n line = [tmp.pop()];\n // lines in the middle we apped to lines object as whole lines\n while (tmp.length) {\n lines.push([tmp.shift()]); // single fragment occupies whole line\n }\n current_word_length = widths_array\n .slice(word.length - (line[0] ? line[0].length : 0))\n .reduce(function(pv, cv) {\n return pv + cv;\n }, 0);\n } else {\n // just put it on a new line\n line = [word];\n }\n\n // now we attach new line to lines\n lines.push(line);\n line_length = current_word_length + lineIndent;\n separator_length = spaceCharWidth;\n } else {\n line.push(word);\n\n line_length += separator_length + current_word_length;\n separator_length = spaceCharWidth;\n }\n }\n\n var postProcess;\n if (lineIndent) {\n postProcess = function(ln, idx) {\n return (idx ? pad : \"\") + ln.join(\" \");\n };\n } else {\n postProcess = function(ln) {\n return ln.join(\" \");\n };\n }\n\n return lines.map(postProcess);\n };\n\n /**\n * Splits a given string into an array of strings. Uses 'size' value\n * (in measurement units declared as default for the jsPDF instance)\n * and the font's \"widths\" and \"Kerning\" tables, where available, to\n * determine display length of a given string for a given font.\n *\n * We use character's 100% of unit size (height) as width when Width\n * table or other default width is not available.\n *\n * @name splitTextToSize\n * @public\n * @function\n * @param {string} text Unencoded, regular JavaScript (Unicode, UTF-16 / UCS-2) string.\n * @param {number} size Nominal number, measured in units default to this instance of jsPDF.\n * @param {Object} options Optional flags needed for chopper to do the right thing.\n * @returns {Array} array Array with strings chopped to size.\n */\n API.splitTextToSize = function(text, maxlen, options) {\n \"use strict\";\n\n options = options || {};\n\n var fsize = options.fontSize || this.internal.getFontSize(),\n newOptions = function(options) {\n var widths = {\n 0: 1\n },\n kerning = {};\n\n if (!options.widths || !options.kerning) {\n var f = this.internal.getFont(options.fontName, options.fontStyle),\n encoding = \"Unicode\";\n // NOT UTF8, NOT UTF16BE/LE, NOT UCS2BE/LE\n // Actual JavaScript-native String's 16bit char codes used.\n // no multi-byte logic here\n\n if (f.metadata[encoding]) {\n return {\n widths: f.metadata[encoding].widths || widths,\n kerning: f.metadata[encoding].kerning || kerning\n };\n } else {\n return {\n font: f.metadata,\n fontSize: this.internal.getFontSize(),\n charSpace: this.internal.getCharSpace()\n };\n }\n } else {\n return {\n widths: options.widths,\n kerning: options.kerning\n };\n }\n }.call(this, options);\n\n // first we split on end-of-line chars\n var paragraphs;\n if (Array.isArray(text)) {\n paragraphs = text;\n } else {\n paragraphs = String(text).split(/\\r?\\n/);\n }\n\n // now we convert size (max length of line) into \"font size units\"\n // at present time, the \"font size unit\" is always 'point'\n // 'proportional' means, \"in proportion to font size\"\n var fontUnit_maxLen = (1.0 * this.internal.scaleFactor * maxlen) / fsize;\n // at this time, fsize is always in \"points\" regardless of the default measurement unit of the doc.\n // this may change in the future?\n // until then, proportional_maxlen is likely to be in 'points'\n\n // If first line is to be indented (shorter or longer) than maxLen\n // we indicate that by using CSS-style \"text-indent\" option.\n // here it's in font units too (which is likely 'points')\n // it can be negative (which makes the first line longer than maxLen)\n newOptions.textIndent = options.textIndent\n ? (options.textIndent * 1.0 * this.internal.scaleFactor) / fsize\n : 0;\n newOptions.lineIndent = options.lineIndent;\n\n var i,\n l,\n output = [];\n for (i = 0, l = paragraphs.length; i < l; i++) {\n output = output.concat(\n splitParagraphIntoLines.apply(this, [\n paragraphs[i],\n fontUnit_maxLen,\n newOptions\n ])\n );\n }\n\n return output;\n };\n})(jsPDF.API);\n","/**\n * @license\n * (c) Dean McNamee , 2013.\n *\n * https://github.com/deanm/omggif\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n * IN THE SOFTWARE.\n *\n * omggif is a JavaScript implementation of a GIF 89a encoder and decoder,\n * including animation and compression. It does not rely on any specific\n * underlying system, so should run in the browser, Node, or Plask.\n */\n\n\"use strict\";\n\nimport { console } from \"./console.js\";\n\nfunction GifWriter(buf, width, height, gopts) {\n var p = 0;\n\n var gopts = gopts === undefined ? {} : gopts;\n var loop_count = gopts.loop === undefined ? null : gopts.loop;\n var global_palette = gopts.palette === undefined ? null : gopts.palette;\n\n if (width <= 0 || height <= 0 || width > 65535 || height > 65535)\n throw new Error(\"Width/Height invalid.\");\n\n function check_palette_and_num_colors(palette) {\n var num_colors = palette.length;\n if (num_colors < 2 || num_colors > 256 || num_colors & (num_colors - 1)) {\n throw new Error(\n \"Invalid code/color length, must be power of 2 and 2 .. 256.\"\n );\n }\n return num_colors;\n }\n\n // - Header.\n buf[p++] = 0x47;\n buf[p++] = 0x49;\n buf[p++] = 0x46; // GIF\n buf[p++] = 0x38;\n buf[p++] = 0x39;\n buf[p++] = 0x61; // 89a\n\n // Handling of Global Color Table (palette) and background index.\n var gp_num_colors_pow2 = 0;\n var background = 0;\n if (global_palette !== null) {\n var gp_num_colors = check_palette_and_num_colors(global_palette);\n while ((gp_num_colors >>= 1)) ++gp_num_colors_pow2;\n gp_num_colors = 1 << gp_num_colors_pow2;\n --gp_num_colors_pow2;\n if (gopts.background !== undefined) {\n background = gopts.background;\n if (background >= gp_num_colors)\n throw new Error(\"Background index out of range.\");\n // The GIF spec states that a background index of 0 should be ignored, so\n // this is probably a mistake and you really want to set it to another\n // slot in the palette. But actually in the end most browsers, etc end\n // up ignoring this almost completely (including for dispose background).\n if (background === 0)\n throw new Error(\"Background index explicitly passed as 0.\");\n }\n }\n\n // - Logical Screen Descriptor.\n // NOTE(deanm): w/h apparently ignored by implementations, but set anyway.\n buf[p++] = width & 0xff;\n buf[p++] = (width >> 8) & 0xff;\n buf[p++] = height & 0xff;\n buf[p++] = (height >> 8) & 0xff;\n // NOTE: Indicates 0-bpp original color resolution (unused?).\n buf[p++] = (global_palette !== null ? 0x80 : 0) | gp_num_colors_pow2; // Global Color Table Flag. // NOTE: No sort flag (unused?).\n buf[p++] = background; // Background Color Index.\n buf[p++] = 0; // Pixel aspect ratio (unused?).\n\n // - Global Color Table\n if (global_palette !== null) {\n for (var i = 0, il = global_palette.length; i < il; ++i) {\n var rgb = global_palette[i];\n buf[p++] = (rgb >> 16) & 0xff;\n buf[p++] = (rgb >> 8) & 0xff;\n buf[p++] = rgb & 0xff;\n }\n }\n\n if (loop_count !== null) {\n // Netscape block for looping.\n if (loop_count < 0 || loop_count > 65535)\n throw new Error(\"Loop count invalid.\");\n // Extension code, label, and length.\n buf[p++] = 0x21;\n buf[p++] = 0xff;\n buf[p++] = 0x0b;\n // NETSCAPE2.0\n buf[p++] = 0x4e;\n buf[p++] = 0x45;\n buf[p++] = 0x54;\n buf[p++] = 0x53;\n buf[p++] = 0x43;\n buf[p++] = 0x41;\n buf[p++] = 0x50;\n buf[p++] = 0x45;\n buf[p++] = 0x32;\n buf[p++] = 0x2e;\n buf[p++] = 0x30;\n // Sub-block\n buf[p++] = 0x03;\n buf[p++] = 0x01;\n buf[p++] = loop_count & 0xff;\n buf[p++] = (loop_count >> 8) & 0xff;\n buf[p++] = 0x00; // Terminator.\n }\n\n var ended = false;\n\n this.addFrame = function(x, y, w, h, indexed_pixels, opts) {\n if (ended === true) {\n --p;\n ended = false;\n } // Un-end.\n\n opts = opts === undefined ? {} : opts;\n\n // TODO(deanm): Bounds check x, y. Do they need to be within the virtual\n // canvas width/height, I imagine?\n if (x < 0 || y < 0 || x > 65535 || y > 65535)\n throw new Error(\"x/y invalid.\");\n\n if (w <= 0 || h <= 0 || w > 65535 || h > 65535)\n throw new Error(\"Width/Height invalid.\");\n\n if (indexed_pixels.length < w * h)\n throw new Error(\"Not enough pixels for the frame size.\");\n\n var using_local_palette = true;\n var palette = opts.palette;\n if (palette === undefined || palette === null) {\n using_local_palette = false;\n palette = global_palette;\n }\n\n if (palette === undefined || palette === null)\n throw new Error(\"Must supply either a local or global palette.\");\n\n var num_colors = check_palette_and_num_colors(palette);\n\n // Compute the min_code_size (power of 2), destroying num_colors.\n var min_code_size = 0;\n while ((num_colors >>= 1)) ++min_code_size;\n num_colors = 1 << min_code_size; // Now we can easily get it back.\n\n var delay = opts.delay === undefined ? 0 : opts.delay;\n\n // From the spec:\n // 0 - No disposal specified. The decoder is\n // not required to take any action.\n // 1 - Do not dispose. The graphic is to be left\n // in place.\n // 2 - Restore to background color. The area used by the\n // graphic must be restored to the background color.\n // 3 - Restore to previous. The decoder is required to\n // restore the area overwritten by the graphic with\n // what was there prior to rendering the graphic.\n // 4-7 - To be defined.\n // NOTE(deanm): Dispose background doesn't really work, apparently most\n // browsers ignore the background palette index and clear to transparency.\n var disposal = opts.disposal === undefined ? 0 : opts.disposal;\n if (disposal < 0 || disposal > 3)\n // 4-7 is reserved.\n throw new Error(\"Disposal out of range.\");\n\n var use_transparency = false;\n var transparent_index = 0;\n if (opts.transparent !== undefined && opts.transparent !== null) {\n use_transparency = true;\n transparent_index = opts.transparent;\n if (transparent_index < 0 || transparent_index >= num_colors)\n throw new Error(\"Transparent color index.\");\n }\n\n if (disposal !== 0 || use_transparency || delay !== 0) {\n // - Graphics Control Extension\n buf[p++] = 0x21;\n buf[p++] = 0xf9; // Extension / Label.\n buf[p++] = 4; // Byte size.\n\n buf[p++] = (disposal << 2) | (use_transparency === true ? 1 : 0);\n buf[p++] = delay & 0xff;\n buf[p++] = (delay >> 8) & 0xff;\n buf[p++] = transparent_index; // Transparent color index.\n buf[p++] = 0; // Block Terminator.\n }\n\n // - Image Descriptor\n buf[p++] = 0x2c; // Image Seperator.\n buf[p++] = x & 0xff;\n buf[p++] = (x >> 8) & 0xff; // Left.\n buf[p++] = y & 0xff;\n buf[p++] = (y >> 8) & 0xff; // Top.\n buf[p++] = w & 0xff;\n buf[p++] = (w >> 8) & 0xff;\n buf[p++] = h & 0xff;\n buf[p++] = (h >> 8) & 0xff;\n // NOTE: No sort flag (unused?).\n // TODO(deanm): Support interlace.\n buf[p++] = using_local_palette === true ? 0x80 | (min_code_size - 1) : 0;\n\n // - Local Color Table\n if (using_local_palette === true) {\n for (var i = 0, il = palette.length; i < il; ++i) {\n var rgb = palette[i];\n buf[p++] = (rgb >> 16) & 0xff;\n buf[p++] = (rgb >> 8) & 0xff;\n buf[p++] = rgb & 0xff;\n }\n }\n\n p = GifWriterOutputLZWCodeStream(\n buf,\n p,\n min_code_size < 2 ? 2 : min_code_size,\n indexed_pixels\n );\n\n return p;\n };\n\n this.end = function() {\n if (ended === false) {\n buf[p++] = 0x3b; // Trailer.\n ended = true;\n }\n return p;\n };\n\n this.getOutputBuffer = function() {\n return buf;\n };\n this.setOutputBuffer = function(v) {\n buf = v;\n };\n this.getOutputBufferPosition = function() {\n return p;\n };\n this.setOutputBufferPosition = function(v) {\n p = v;\n };\n}\n\n// Main compression routine, palette indexes -> LZW code stream.\n// |index_stream| must have at least one entry.\nfunction GifWriterOutputLZWCodeStream(buf, p, min_code_size, index_stream) {\n buf[p++] = min_code_size;\n var cur_subblock = p++; // Pointing at the length field.\n\n var clear_code = 1 << min_code_size;\n var code_mask = clear_code - 1;\n var eoi_code = clear_code + 1;\n var next_code = eoi_code + 1;\n\n var cur_code_size = min_code_size + 1; // Number of bits per code.\n var cur_shift = 0;\n // We have at most 12-bit codes, so we should have to hold a max of 19\n // bits here (and then we would write out).\n var cur = 0;\n\n function emit_bytes_to_buffer(bit_block_size) {\n while (cur_shift >= bit_block_size) {\n buf[p++] = cur & 0xff;\n cur >>= 8;\n cur_shift -= 8;\n if (p === cur_subblock + 256) {\n // Finished a subblock.\n buf[cur_subblock] = 255;\n cur_subblock = p++;\n }\n }\n }\n\n function emit_code(c) {\n cur |= c << cur_shift;\n cur_shift += cur_code_size;\n emit_bytes_to_buffer(8);\n }\n\n // I am not an expert on the topic, and I don't want to write a thesis.\n // However, it is good to outline here the basic algorithm and the few data\n // structures and optimizations here that make this implementation fast.\n // The basic idea behind LZW is to build a table of previously seen runs\n // addressed by a short id (herein called output code). All data is\n // referenced by a code, which represents one or more values from the\n // original input stream. All input bytes can be referenced as the same\n // value as an output code. So if you didn't want any compression, you\n // could more or less just output the original bytes as codes (there are\n // some details to this, but it is the idea). In order to achieve\n // compression, values greater then the input range (codes can be up to\n // 12-bit while input only 8-bit) represent a sequence of previously seen\n // inputs. The decompressor is able to build the same mapping while\n // decoding, so there is always a shared common knowledge between the\n // encoding and decoder, which is also important for \"timing\" aspects like\n // how to handle variable bit width code encoding.\n //\n // One obvious but very important consequence of the table system is there\n // is always a unique id (at most 12-bits) to map the runs. 'A' might be\n // 4, then 'AA' might be 10, 'AAA' 11, 'AAAA' 12, etc. This relationship\n // can be used for an effecient lookup strategy for the code mapping. We\n // need to know if a run has been seen before, and be able to map that run\n // to the output code. Since we start with known unique ids (input bytes),\n // and then from those build more unique ids (table entries), we can\n // continue this chain (almost like a linked list) to always have small\n // integer values that represent the current byte chains in the encoder.\n // This means instead of tracking the input bytes (AAAABCD) to know our\n // current state, we can track the table entry for AAAABC (it is guaranteed\n // to exist by the nature of the algorithm) and the next character D.\n // Therefor the tuple of (table_entry, byte) is guaranteed to also be\n // unique. This allows us to create a simple lookup key for mapping input\n // sequences to codes (table indices) without having to store or search\n // any of the code sequences. So if 'AAAA' has a table entry of 12, the\n // tuple of ('AAAA', K) for any input byte K will be unique, and can be our\n // key. This leads to a integer value at most 20-bits, which can always\n // fit in an SMI value and be used as a fast sparse array / object key.\n\n // Output code for the current contents of the index buffer.\n var ib_code = index_stream[0] & code_mask; // Load first input index.\n var code_table = {}; // Key'd on our 20-bit \"tuple\".\n\n emit_code(clear_code); // Spec says first code should be a clear code.\n\n // First index already loaded, process the rest of the stream.\n for (var i = 1, il = index_stream.length; i < il; ++i) {\n var k = index_stream[i] & code_mask;\n var cur_key = (ib_code << 8) | k; // (prev, k) unique tuple.\n var cur_code = code_table[cur_key]; // buffer + k.\n\n // Check if we have to create a new code table entry.\n if (cur_code === undefined) {\n // We don't have buffer + k.\n // Emit index buffer (without k).\n // This is an inline version of emit_code, because this is the core\n // writing routine of the compressor (and V8 cannot inline emit_code\n // because it is a closure here in a different context). Additionally\n // we can call emit_byte_to_buffer less often, because we can have\n // 30-bits (from our 31-bit signed SMI), and we know our codes will only\n // be 12-bits, so can safely have 18-bits there without overflow.\n // emit_code(ib_code);\n cur |= ib_code << cur_shift;\n cur_shift += cur_code_size;\n while (cur_shift >= 8) {\n buf[p++] = cur & 0xff;\n cur >>= 8;\n cur_shift -= 8;\n if (p === cur_subblock + 256) {\n // Finished a subblock.\n buf[cur_subblock] = 255;\n cur_subblock = p++;\n }\n }\n\n if (next_code === 4096) {\n // Table full, need a clear.\n emit_code(clear_code);\n next_code = eoi_code + 1;\n cur_code_size = min_code_size + 1;\n code_table = {};\n } else {\n // Table not full, insert a new entry.\n // Increase our variable bit code sizes if necessary. This is a bit\n // tricky as it is based on \"timing\" between the encoding and\n // decoder. From the encoders perspective this should happen after\n // we've already emitted the index buffer and are about to create the\n // first table entry that would overflow our current code bit size.\n if (next_code >= 1 << cur_code_size) ++cur_code_size;\n code_table[cur_key] = next_code++; // Insert into code table.\n }\n\n ib_code = k; // Index buffer to single input k.\n } else {\n ib_code = cur_code; // Index buffer to sequence in code table.\n }\n }\n\n emit_code(ib_code); // There will still be something in the index buffer.\n emit_code(eoi_code); // End Of Information.\n\n // Flush / finalize the sub-blocks stream to the buffer.\n emit_bytes_to_buffer(1);\n\n // Finish the sub-blocks, writing out any unfinished lengths and\n // terminating with a sub-block of length 0. If we have already started\n // but not yet used a sub-block it can just become the terminator.\n if (cur_subblock + 1 === p) {\n // Started but unused.\n buf[cur_subblock] = 0;\n } else {\n // Started and used, write length and additional terminator block.\n buf[cur_subblock] = p - cur_subblock - 1;\n buf[p++] = 0;\n }\n return p;\n}\n\nfunction GifReader(buf) {\n var p = 0;\n\n // - Header (GIF87a or GIF89a).\n if (\n buf[p++] !== 0x47 ||\n buf[p++] !== 0x49 ||\n buf[p++] !== 0x46 ||\n buf[p++] !== 0x38 ||\n ((buf[p++] + 1) & 0xfd) !== 0x38 ||\n buf[p++] !== 0x61\n ) {\n throw new Error(\"Invalid GIF 87a/89a header.\");\n }\n\n // - Logical Screen Descriptor.\n var width = buf[p++] | (buf[p++] << 8);\n var height = buf[p++] | (buf[p++] << 8);\n var pf0 = buf[p++]; // .\n var global_palette_flag = pf0 >> 7;\n var num_global_colors_pow2 = pf0 & 0x7;\n var num_global_colors = 1 << (num_global_colors_pow2 + 1);\n var background = buf[p++];\n buf[p++]; // Pixel aspect ratio (unused?).\n\n var global_palette_offset = null;\n var global_palette_size = null;\n\n if (global_palette_flag) {\n global_palette_offset = p;\n global_palette_size = num_global_colors;\n p += num_global_colors * 3; // Seek past palette.\n }\n\n var no_eof = true;\n\n var frames = [];\n\n var delay = 0;\n var transparent_index = null;\n var disposal = 0; // 0 - No disposal specified.\n var loop_count = null;\n\n this.width = width;\n this.height = height;\n\n while (no_eof && p < buf.length) {\n switch (buf[p++]) {\n case 0x21: // Graphics Control Extension Block\n switch (buf[p++]) {\n case 0xff: // Application specific block\n // Try if it's a Netscape block (with animation loop counter).\n if (\n buf[p] !== 0x0b || // 21 FF already read, check block size.\n // NETSCAPE2.0\n (buf[p + 1] == 0x4e &&\n buf[p + 2] == 0x45 &&\n buf[p + 3] == 0x54 &&\n buf[p + 4] == 0x53 &&\n buf[p + 5] == 0x43 &&\n buf[p + 6] == 0x41 &&\n buf[p + 7] == 0x50 &&\n buf[p + 8] == 0x45 &&\n buf[p + 9] == 0x32 &&\n buf[p + 10] == 0x2e &&\n buf[p + 11] == 0x30 &&\n // Sub-block\n buf[p + 12] == 0x03 &&\n buf[p + 13] == 0x01 &&\n buf[p + 16] == 0)\n ) {\n p += 14;\n loop_count = buf[p++] | (buf[p++] << 8);\n p++; // Skip terminator.\n } else {\n // We don't know what it is, just try to get past it.\n p += 12;\n while (true) {\n // Seek through subblocks.\n var block_size = buf[p++];\n // Bad block size (ex: undefined from an out of bounds read).\n if (!(block_size >= 0)) throw Error(\"Invalid block size\");\n if (block_size === 0) break; // 0 size is terminator\n p += block_size;\n }\n }\n break;\n\n case 0xf9: // Graphics Control Extension\n if (buf[p++] !== 0x4 || buf[p + 4] !== 0)\n throw new Error(\"Invalid graphics extension block.\");\n var pf1 = buf[p++];\n delay = buf[p++] | (buf[p++] << 8);\n transparent_index = buf[p++];\n if ((pf1 & 1) === 0) transparent_index = null;\n disposal = (pf1 >> 2) & 0x7;\n p++; // Skip terminator.\n break;\n\n case 0xfe: // Comment Extension.\n while (true) {\n // Seek through subblocks.\n var block_size = buf[p++];\n // Bad block size (ex: undefined from an out of bounds read).\n if (!(block_size >= 0)) throw Error(\"Invalid block size\");\n if (block_size === 0) break; // 0 size is terminator\n // console.log(buf.slice(p, p+block_size).toString('ascii'));\n p += block_size;\n }\n break;\n\n default:\n throw new Error(\n \"Unknown graphic control label: 0x\" + buf[p - 1].toString(16)\n );\n }\n break;\n\n case 0x2c: // Image Descriptor.\n var x = buf[p++] | (buf[p++] << 8);\n var y = buf[p++] | (buf[p++] << 8);\n var w = buf[p++] | (buf[p++] << 8);\n var h = buf[p++] | (buf[p++] << 8);\n var pf2 = buf[p++];\n var local_palette_flag = pf2 >> 7;\n var interlace_flag = (pf2 >> 6) & 1;\n var num_local_colors_pow2 = pf2 & 0x7;\n var num_local_colors = 1 << (num_local_colors_pow2 + 1);\n var palette_offset = global_palette_offset;\n var palette_size = global_palette_size;\n var has_local_palette = false;\n if (local_palette_flag) {\n var has_local_palette = true;\n palette_offset = p; // Override with local palette.\n palette_size = num_local_colors;\n p += num_local_colors * 3; // Seek past palette.\n }\n\n var data_offset = p;\n\n p++; // codesize\n while (true) {\n var block_size = buf[p++];\n // Bad block size (ex: undefined from an out of bounds read).\n if (!(block_size >= 0)) throw Error(\"Invalid block size\");\n if (block_size === 0) break; // 0 size is terminator\n p += block_size;\n }\n\n frames.push({\n x: x,\n y: y,\n width: w,\n height: h,\n has_local_palette: has_local_palette,\n palette_offset: palette_offset,\n palette_size: palette_size,\n data_offset: data_offset,\n data_length: p - data_offset,\n transparent_index: transparent_index,\n interlaced: !!interlace_flag,\n delay: delay,\n disposal: disposal\n });\n break;\n\n case 0x3b: // Trailer Marker (end of file).\n no_eof = false;\n break;\n\n default:\n throw new Error(\"Unknown gif block: 0x\" + buf[p - 1].toString(16));\n break;\n }\n }\n\n this.numFrames = function() {\n return frames.length;\n };\n\n this.loopCount = function() {\n return loop_count;\n };\n\n this.frameInfo = function(frame_num) {\n if (frame_num < 0 || frame_num >= frames.length)\n throw new Error(\"Frame index out of range.\");\n return frames[frame_num];\n };\n\n this.decodeAndBlitFrameBGRA = function(frame_num, pixels) {\n var frame = this.frameInfo(frame_num);\n var num_pixels = frame.width * frame.height;\n var index_stream = new Uint8Array(num_pixels); // At most 8-bit indices.\n GifReaderLZWOutputIndexStream(\n buf,\n frame.data_offset,\n index_stream,\n num_pixels\n );\n var palette_offset = frame.palette_offset;\n\n // NOTE(deanm): It seems to be much faster to compare index to 256 than\n // to === null. Not sure why, but CompareStub_EQ_STRICT shows up high in\n // the profile, not sure if it's related to using a Uint8Array.\n var trans = frame.transparent_index;\n if (trans === null) trans = 256;\n\n // We are possibly just blitting to a portion of the entire frame.\n // That is a subrect within the framerect, so the additional pixels\n // must be skipped over after we finished a scanline.\n var framewidth = frame.width;\n var framestride = width - framewidth;\n var xleft = framewidth; // Number of subrect pixels left in scanline.\n\n // Output indices of the top left and bottom right corners of the subrect.\n var opbeg = (frame.y * width + frame.x) * 4;\n var opend = ((frame.y + frame.height) * width + frame.x) * 4;\n var op = opbeg;\n\n var scanstride = framestride * 4;\n\n // Use scanstride to skip past the rows when interlacing. This is skipping\n // 7 rows for the first two passes, then 3 then 1.\n if (frame.interlaced === true) {\n scanstride += width * 4 * 7; // Pass 1.\n }\n\n var interlaceskip = 8; // Tracking the row interval in the current pass.\n\n for (var i = 0, il = index_stream.length; i < il; ++i) {\n var index = index_stream[i];\n\n if (xleft === 0) {\n // Beginning of new scan line\n op += scanstride;\n xleft = framewidth;\n if (op >= opend) {\n // Catch the wrap to switch passes when interlacing.\n scanstride = framestride * 4 + width * 4 * (interlaceskip - 1);\n // interlaceskip / 2 * 4 is interlaceskip << 1.\n op = opbeg + (framewidth + framestride) * (interlaceskip << 1);\n interlaceskip >>= 1;\n }\n }\n\n if (index === trans) {\n op += 4;\n } else {\n var r = buf[palette_offset + index * 3];\n var g = buf[palette_offset + index * 3 + 1];\n var b = buf[palette_offset + index * 3 + 2];\n pixels[op++] = b;\n pixels[op++] = g;\n pixels[op++] = r;\n pixels[op++] = 255;\n }\n --xleft;\n }\n };\n\n // I will go to copy and paste hell one day...\n this.decodeAndBlitFrameRGBA = function(frame_num, pixels) {\n var frame = this.frameInfo(frame_num);\n var num_pixels = frame.width * frame.height;\n var index_stream = new Uint8Array(num_pixels); // At most 8-bit indices.\n GifReaderLZWOutputIndexStream(\n buf,\n frame.data_offset,\n index_stream,\n num_pixels\n );\n var palette_offset = frame.palette_offset;\n\n // NOTE(deanm): It seems to be much faster to compare index to 256 than\n // to === null. Not sure why, but CompareStub_EQ_STRICT shows up high in\n // the profile, not sure if it's related to using a Uint8Array.\n var trans = frame.transparent_index;\n if (trans === null) trans = 256;\n\n // We are possibly just blitting to a portion of the entire frame.\n // That is a subrect within the framerect, so the additional pixels\n // must be skipped over after we finished a scanline.\n var framewidth = frame.width;\n var framestride = width - framewidth;\n var xleft = framewidth; // Number of subrect pixels left in scanline.\n\n // Output indices of the top left and bottom right corners of the subrect.\n var opbeg = (frame.y * width + frame.x) * 4;\n var opend = ((frame.y + frame.height) * width + frame.x) * 4;\n var op = opbeg;\n\n var scanstride = framestride * 4;\n\n // Use scanstride to skip past the rows when interlacing. This is skipping\n // 7 rows for the first two passes, then 3 then 1.\n if (frame.interlaced === true) {\n scanstride += width * 4 * 7; // Pass 1.\n }\n\n var interlaceskip = 8; // Tracking the row interval in the current pass.\n\n for (var i = 0, il = index_stream.length; i < il; ++i) {\n var index = index_stream[i];\n\n if (xleft === 0) {\n // Beginning of new scan line\n op += scanstride;\n xleft = framewidth;\n if (op >= opend) {\n // Catch the wrap to switch passes when interlacing.\n scanstride = framestride * 4 + width * 4 * (interlaceskip - 1);\n // interlaceskip / 2 * 4 is interlaceskip << 1.\n op = opbeg + (framewidth + framestride) * (interlaceskip << 1);\n interlaceskip >>= 1;\n }\n }\n\n if (index === trans) {\n op += 4;\n } else {\n var r = buf[palette_offset + index * 3];\n var g = buf[palette_offset + index * 3 + 1];\n var b = buf[palette_offset + index * 3 + 2];\n pixels[op++] = r;\n pixels[op++] = g;\n pixels[op++] = b;\n pixels[op++] = 255;\n }\n --xleft;\n }\n };\n}\n\nfunction GifReaderLZWOutputIndexStream(code_stream, p, output, output_length) {\n var min_code_size = code_stream[p++];\n\n var clear_code = 1 << min_code_size;\n var eoi_code = clear_code + 1;\n var next_code = eoi_code + 1;\n\n var cur_code_size = min_code_size + 1; // Number of bits per code.\n // NOTE: This shares the same name as the encoder, but has a different\n // meaning here. Here this masks each code coming from the code stream.\n var code_mask = (1 << cur_code_size) - 1;\n var cur_shift = 0;\n var cur = 0;\n\n var op = 0; // Output pointer.\n\n var subblock_size = code_stream[p++];\n\n // TODO(deanm): Would using a TypedArray be any faster? At least it would\n // solve the fast mode / backing store uncertainty.\n // var code_table = Array(4096);\n var code_table = new Int32Array(4096); // Can be signed, we only use 20 bits.\n\n var prev_code = null; // Track code-1.\n\n while (true) {\n // Read up to two bytes, making sure we always 12-bits for max sized code.\n while (cur_shift < 16) {\n if (subblock_size === 0) break; // No more data to be read.\n\n cur |= code_stream[p++] << cur_shift;\n cur_shift += 8;\n\n if (subblock_size === 1) {\n // Never let it get to 0 to hold logic above.\n subblock_size = code_stream[p++]; // Next subblock.\n } else {\n --subblock_size;\n }\n }\n\n // TODO(deanm): We should never really get here, we should have received\n // and EOI.\n if (cur_shift < cur_code_size) break;\n\n var code = cur & code_mask;\n cur >>= cur_code_size;\n cur_shift -= cur_code_size;\n\n // TODO(deanm): Maybe should check that the first code was a clear code,\n // at least this is what you're supposed to do. But actually our encoder\n // now doesn't emit a clear code first anyway.\n if (code === clear_code) {\n // We don't actually have to clear the table. This could be a good idea\n // for greater error checking, but we don't really do any anyway. We\n // will just track it with next_code and overwrite old entries.\n\n next_code = eoi_code + 1;\n cur_code_size = min_code_size + 1;\n code_mask = (1 << cur_code_size) - 1;\n\n // Don't update prev_code ?\n prev_code = null;\n continue;\n } else if (code === eoi_code) {\n break;\n }\n\n // We have a similar situation as the decoder, where we want to store\n // variable length entries (code table entries), but we want to do in a\n // faster manner than an array of arrays. The code below stores sort of a\n // linked list within the code table, and then \"chases\" through it to\n // construct the dictionary entries. When a new entry is created, just the\n // last byte is stored, and the rest (prefix) of the entry is only\n // referenced by its table entry. Then the code chases through the\n // prefixes until it reaches a single byte code. We have to chase twice,\n // first to compute the length, and then to actually copy the data to the\n // output (backwards, since we know the length). The alternative would be\n // storing something in an intermediate stack, but that doesn't make any\n // more sense. I implemented an approach where it also stored the length\n // in the code table, although it's a bit tricky because you run out of\n // bits (12 + 12 + 8), but I didn't measure much improvements (the table\n // entries are generally not the long). Even when I created benchmarks for\n // very long table entries the complexity did not seem worth it.\n // The code table stores the prefix entry in 12 bits and then the suffix\n // byte in 8 bits, so each entry is 20 bits.\n\n var chase_code = code < next_code ? code : prev_code;\n\n // Chase what we will output, either {CODE} or {CODE-1}.\n var chase_length = 0;\n var chase = chase_code;\n while (chase > clear_code) {\n chase = code_table[chase] >> 8;\n ++chase_length;\n }\n\n var k = chase;\n\n var op_end = op + chase_length + (chase_code !== code ? 1 : 0);\n if (op_end > output_length) {\n console.log(\"Warning, gif stream longer than expected.\");\n return;\n }\n\n // Already have the first byte from the chase, might as well write it fast.\n output[op++] = k;\n\n op += chase_length;\n var b = op; // Track pointer, writing backwards.\n\n if (chase_code !== code)\n // The case of emitting {CODE-1} + k.\n output[op++] = k;\n\n chase = chase_code;\n while (chase_length--) {\n chase = code_table[chase];\n output[--b] = chase & 0xff; // Write backwards.\n chase >>= 8; // Pull down to the prefix code.\n }\n\n if (prev_code !== null && next_code < 4096) {\n code_table[next_code++] = (prev_code << 8) | k;\n // TODO(deanm): Figure out this clearing vs code growth logic better. I\n // have an feeling that it should just happen somewhere else, for now it\n // is awkward between when we grow past the max and then hit a clear code.\n // For now just check if we hit the max 12-bits (then a clear code should\n // follow, also of course encoded in 12-bits).\n if (next_code >= code_mask + 1 && cur_code_size < 12) {\n ++cur_code_size;\n code_mask = (code_mask << 1) | 1;\n }\n }\n\n prev_code = code;\n }\n\n if (op !== output_length) {\n console.log(\"Warning, gif stream shorter than expected.\");\n }\n\n return output;\n}\n\nexport { GifReader, GifWriter };\n","/**\n * @license\n Copyright (c) 2008, Adobe Systems Incorporated\n All rights reserved.\n\n Redistribution and use in source and binary forms, with or without \n modification, are permitted provided that the following conditions are\n met:\n\n * Redistributions of source code must retain the above copyright notice, \n this list of conditions and the following disclaimer.\n \n * Redistributions in binary form must reproduce the above copyright\n notice, this list of conditions and the following disclaimer in the \n documentation and/or other materials provided with the distribution.\n \n * Neither the name of Adobe Systems Incorporated nor the names of its \n contributors may be used to endorse or promote products derived from \n this software without specific prior written permission.\n\n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\n IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\n THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR \n CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF\n LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n*/\n/*\nJPEG encoder ported to JavaScript and optimized by Andreas Ritter, www.bytestrom.eu, 11/2009\n\nBasic GUI blocking jpeg encoder\n*/\n\nfunction JPEGEncoder(quality) {\n var ffloor = Math.floor;\n var YTable = new Array(64);\n var UVTable = new Array(64);\n var fdtbl_Y = new Array(64);\n var fdtbl_UV = new Array(64);\n var YDC_HT;\n var UVDC_HT;\n var YAC_HT;\n var UVAC_HT;\n\n var bitcode = new Array(65535);\n var category = new Array(65535);\n var outputfDCTQuant = new Array(64);\n var DU = new Array(64);\n var byteout = [];\n var bytenew = 0;\n var bytepos = 7;\n\n var YDU = new Array(64);\n var UDU = new Array(64);\n var VDU = new Array(64);\n var clt = new Array(256);\n var RGB_YUV_TABLE = new Array(2048);\n var currentQuality;\n\n var ZigZag = [\n 0,\n 1,\n 5,\n 6,\n 14,\n 15,\n 27,\n 28,\n 2,\n 4,\n 7,\n 13,\n 16,\n 26,\n 29,\n 42,\n 3,\n 8,\n 12,\n 17,\n 25,\n 30,\n 41,\n 43,\n 9,\n 11,\n 18,\n 24,\n 31,\n 40,\n 44,\n 53,\n 10,\n 19,\n 23,\n 32,\n 39,\n 45,\n 52,\n 54,\n 20,\n 22,\n 33,\n 38,\n 46,\n 51,\n 55,\n 60,\n 21,\n 34,\n 37,\n 47,\n 50,\n 56,\n 59,\n 61,\n 35,\n 36,\n 48,\n 49,\n 57,\n 58,\n 62,\n 63\n ];\n\n var std_dc_luminance_nrcodes = [\n 0,\n 0,\n 1,\n 5,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0\n ];\n var std_dc_luminance_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];\n var std_ac_luminance_nrcodes = [\n 0,\n 0,\n 2,\n 1,\n 3,\n 3,\n 2,\n 4,\n 3,\n 5,\n 5,\n 4,\n 4,\n 0,\n 0,\n 1,\n 0x7d\n ];\n var std_ac_luminance_values = [\n 0x01,\n 0x02,\n 0x03,\n 0x00,\n 0x04,\n 0x11,\n 0x05,\n 0x12,\n 0x21,\n 0x31,\n 0x41,\n 0x06,\n 0x13,\n 0x51,\n 0x61,\n 0x07,\n 0x22,\n 0x71,\n 0x14,\n 0x32,\n 0x81,\n 0x91,\n 0xa1,\n 0x08,\n 0x23,\n 0x42,\n 0xb1,\n 0xc1,\n 0x15,\n 0x52,\n 0xd1,\n 0xf0,\n 0x24,\n 0x33,\n 0x62,\n 0x72,\n 0x82,\n 0x09,\n 0x0a,\n 0x16,\n 0x17,\n 0x18,\n 0x19,\n 0x1a,\n 0x25,\n 0x26,\n 0x27,\n 0x28,\n 0x29,\n 0x2a,\n 0x34,\n 0x35,\n 0x36,\n 0x37,\n 0x38,\n 0x39,\n 0x3a,\n 0x43,\n 0x44,\n 0x45,\n 0x46,\n 0x47,\n 0x48,\n 0x49,\n 0x4a,\n 0x53,\n 0x54,\n 0x55,\n 0x56,\n 0x57,\n 0x58,\n 0x59,\n 0x5a,\n 0x63,\n 0x64,\n 0x65,\n 0x66,\n 0x67,\n 0x68,\n 0x69,\n 0x6a,\n 0x73,\n 0x74,\n 0x75,\n 0x76,\n 0x77,\n 0x78,\n 0x79,\n 0x7a,\n 0x83,\n 0x84,\n 0x85,\n 0x86,\n 0x87,\n 0x88,\n 0x89,\n 0x8a,\n 0x92,\n 0x93,\n 0x94,\n 0x95,\n 0x96,\n 0x97,\n 0x98,\n 0x99,\n 0x9a,\n 0xa2,\n 0xa3,\n 0xa4,\n 0xa5,\n 0xa6,\n 0xa7,\n 0xa8,\n 0xa9,\n 0xaa,\n 0xb2,\n 0xb3,\n 0xb4,\n 0xb5,\n 0xb6,\n 0xb7,\n 0xb8,\n 0xb9,\n 0xba,\n 0xc2,\n 0xc3,\n 0xc4,\n 0xc5,\n 0xc6,\n 0xc7,\n 0xc8,\n 0xc9,\n 0xca,\n 0xd2,\n 0xd3,\n 0xd4,\n 0xd5,\n 0xd6,\n 0xd7,\n 0xd8,\n 0xd9,\n 0xda,\n 0xe1,\n 0xe2,\n 0xe3,\n 0xe4,\n 0xe5,\n 0xe6,\n 0xe7,\n 0xe8,\n 0xe9,\n 0xea,\n 0xf1,\n 0xf2,\n 0xf3,\n 0xf4,\n 0xf5,\n 0xf6,\n 0xf7,\n 0xf8,\n 0xf9,\n 0xfa\n ];\n\n var std_dc_chrominance_nrcodes = [\n 0,\n 0,\n 3,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 0,\n 0,\n 0,\n 0,\n 0\n ];\n var std_dc_chrominance_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];\n var std_ac_chrominance_nrcodes = [\n 0,\n 0,\n 2,\n 1,\n 2,\n 4,\n 4,\n 3,\n 4,\n 7,\n 5,\n 4,\n 4,\n 0,\n 1,\n 2,\n 0x77\n ];\n var std_ac_chrominance_values = [\n 0x00,\n 0x01,\n 0x02,\n 0x03,\n 0x11,\n 0x04,\n 0x05,\n 0x21,\n 0x31,\n 0x06,\n 0x12,\n 0x41,\n 0x51,\n 0x07,\n 0x61,\n 0x71,\n 0x13,\n 0x22,\n 0x32,\n 0x81,\n 0x08,\n 0x14,\n 0x42,\n 0x91,\n 0xa1,\n 0xb1,\n 0xc1,\n 0x09,\n 0x23,\n 0x33,\n 0x52,\n 0xf0,\n 0x15,\n 0x62,\n 0x72,\n 0xd1,\n 0x0a,\n 0x16,\n 0x24,\n 0x34,\n 0xe1,\n 0x25,\n 0xf1,\n 0x17,\n 0x18,\n 0x19,\n 0x1a,\n 0x26,\n 0x27,\n 0x28,\n 0x29,\n 0x2a,\n 0x35,\n 0x36,\n 0x37,\n 0x38,\n 0x39,\n 0x3a,\n 0x43,\n 0x44,\n 0x45,\n 0x46,\n 0x47,\n 0x48,\n 0x49,\n 0x4a,\n 0x53,\n 0x54,\n 0x55,\n 0x56,\n 0x57,\n 0x58,\n 0x59,\n 0x5a,\n 0x63,\n 0x64,\n 0x65,\n 0x66,\n 0x67,\n 0x68,\n 0x69,\n 0x6a,\n 0x73,\n 0x74,\n 0x75,\n 0x76,\n 0x77,\n 0x78,\n 0x79,\n 0x7a,\n 0x82,\n 0x83,\n 0x84,\n 0x85,\n 0x86,\n 0x87,\n 0x88,\n 0x89,\n 0x8a,\n 0x92,\n 0x93,\n 0x94,\n 0x95,\n 0x96,\n 0x97,\n 0x98,\n 0x99,\n 0x9a,\n 0xa2,\n 0xa3,\n 0xa4,\n 0xa5,\n 0xa6,\n 0xa7,\n 0xa8,\n 0xa9,\n 0xaa,\n 0xb2,\n 0xb3,\n 0xb4,\n 0xb5,\n 0xb6,\n 0xb7,\n 0xb8,\n 0xb9,\n 0xba,\n 0xc2,\n 0xc3,\n 0xc4,\n 0xc5,\n 0xc6,\n 0xc7,\n 0xc8,\n 0xc9,\n 0xca,\n 0xd2,\n 0xd3,\n 0xd4,\n 0xd5,\n 0xd6,\n 0xd7,\n 0xd8,\n 0xd9,\n 0xda,\n 0xe2,\n 0xe3,\n 0xe4,\n 0xe5,\n 0xe6,\n 0xe7,\n 0xe8,\n 0xe9,\n 0xea,\n 0xf2,\n 0xf3,\n 0xf4,\n 0xf5,\n 0xf6,\n 0xf7,\n 0xf8,\n 0xf9,\n 0xfa\n ];\n\n function initQuantTables(sf) {\n var YQT = [\n 16,\n 11,\n 10,\n 16,\n 24,\n 40,\n 51,\n 61,\n 12,\n 12,\n 14,\n 19,\n 26,\n 58,\n 60,\n 55,\n 14,\n 13,\n 16,\n 24,\n 40,\n 57,\n 69,\n 56,\n 14,\n 17,\n 22,\n 29,\n 51,\n 87,\n 80,\n 62,\n 18,\n 22,\n 37,\n 56,\n 68,\n 109,\n 103,\n 77,\n 24,\n 35,\n 55,\n 64,\n 81,\n 104,\n 113,\n 92,\n 49,\n 64,\n 78,\n 87,\n 103,\n 121,\n 120,\n 101,\n 72,\n 92,\n 95,\n 98,\n 112,\n 100,\n 103,\n 99\n ];\n\n for (var i = 0; i < 64; i++) {\n var t = ffloor((YQT[i] * sf + 50) / 100);\n t = Math.min(Math.max(t, 1), 255);\n YTable[ZigZag[i]] = t;\n }\n var UVQT = [\n 17,\n 18,\n 24,\n 47,\n 99,\n 99,\n 99,\n 99,\n 18,\n 21,\n 26,\n 66,\n 99,\n 99,\n 99,\n 99,\n 24,\n 26,\n 56,\n 99,\n 99,\n 99,\n 99,\n 99,\n 47,\n 66,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99\n ];\n for (var j = 0; j < 64; j++) {\n var u = ffloor((UVQT[j] * sf + 50) / 100);\n u = Math.min(Math.max(u, 1), 255);\n UVTable[ZigZag[j]] = u;\n }\n var aasf = [\n 1.0,\n 1.387039845,\n 1.306562965,\n 1.175875602,\n 1.0,\n 0.785694958,\n 0.5411961,\n 0.275899379\n ];\n var k = 0;\n for (var row = 0; row < 8; row++) {\n for (var col = 0; col < 8; col++) {\n fdtbl_Y[k] = 1.0 / (YTable[ZigZag[k]] * aasf[row] * aasf[col] * 8.0);\n fdtbl_UV[k] = 1.0 / (UVTable[ZigZag[k]] * aasf[row] * aasf[col] * 8.0);\n k++;\n }\n }\n }\n\n function computeHuffmanTbl(nrcodes, std_table) {\n var codevalue = 0;\n var pos_in_table = 0;\n var HT = new Array();\n for (var k = 1; k <= 16; k++) {\n for (var j = 1; j <= nrcodes[k]; j++) {\n HT[std_table[pos_in_table]] = [];\n HT[std_table[pos_in_table]][0] = codevalue;\n HT[std_table[pos_in_table]][1] = k;\n pos_in_table++;\n codevalue++;\n }\n codevalue *= 2;\n }\n return HT;\n }\n\n function initHuffmanTbl() {\n YDC_HT = computeHuffmanTbl(\n std_dc_luminance_nrcodes,\n std_dc_luminance_values\n );\n UVDC_HT = computeHuffmanTbl(\n std_dc_chrominance_nrcodes,\n std_dc_chrominance_values\n );\n YAC_HT = computeHuffmanTbl(\n std_ac_luminance_nrcodes,\n std_ac_luminance_values\n );\n UVAC_HT = computeHuffmanTbl(\n std_ac_chrominance_nrcodes,\n std_ac_chrominance_values\n );\n }\n\n function initCategoryNumber() {\n var nrlower = 1;\n var nrupper = 2;\n for (var cat = 1; cat <= 15; cat++) {\n //Positive numbers\n for (var nr = nrlower; nr < nrupper; nr++) {\n category[32767 + nr] = cat;\n bitcode[32767 + nr] = [];\n bitcode[32767 + nr][1] = cat;\n bitcode[32767 + nr][0] = nr;\n }\n //Negative numbers\n for (var nrneg = -(nrupper - 1); nrneg <= -nrlower; nrneg++) {\n category[32767 + nrneg] = cat;\n bitcode[32767 + nrneg] = [];\n bitcode[32767 + nrneg][1] = cat;\n bitcode[32767 + nrneg][0] = nrupper - 1 + nrneg;\n }\n nrlower <<= 1;\n nrupper <<= 1;\n }\n }\n\n function initRGBYUVTable() {\n for (var i = 0; i < 256; i++) {\n RGB_YUV_TABLE[i] = 19595 * i;\n RGB_YUV_TABLE[(i + 256) >> 0] = 38470 * i;\n RGB_YUV_TABLE[(i + 512) >> 0] = 7471 * i + 0x8000;\n RGB_YUV_TABLE[(i + 768) >> 0] = -11059 * i;\n RGB_YUV_TABLE[(i + 1024) >> 0] = -21709 * i;\n RGB_YUV_TABLE[(i + 1280) >> 0] = 32768 * i + 0x807fff;\n RGB_YUV_TABLE[(i + 1536) >> 0] = -27439 * i;\n RGB_YUV_TABLE[(i + 1792) >> 0] = -5329 * i;\n }\n }\n\n // IO functions\n function writeBits(bs) {\n var value = bs[0];\n var posval = bs[1] - 1;\n while (posval >= 0) {\n if (value & (1 << posval)) {\n bytenew |= 1 << bytepos;\n }\n posval--;\n bytepos--;\n if (bytepos < 0) {\n if (bytenew == 0xff) {\n writeByte(0xff);\n writeByte(0);\n } else {\n writeByte(bytenew);\n }\n bytepos = 7;\n bytenew = 0;\n }\n }\n }\n\n function writeByte(value) {\n //byteout.push(clt[value]); // write char directly instead of converting later\n byteout.push(value);\n }\n\n function writeWord(value) {\n writeByte((value >> 8) & 0xff);\n writeByte(value & 0xff);\n }\n\n // DCT & quantization core\n function fDCTQuant(data, fdtbl) {\n var d0, d1, d2, d3, d4, d5, d6, d7;\n /* Pass 1: process rows. */\n var dataOff = 0;\n var i;\n var I8 = 8;\n var I64 = 64;\n for (i = 0; i < I8; ++i) {\n d0 = data[dataOff];\n d1 = data[dataOff + 1];\n d2 = data[dataOff + 2];\n d3 = data[dataOff + 3];\n d4 = data[dataOff + 4];\n d5 = data[dataOff + 5];\n d6 = data[dataOff + 6];\n d7 = data[dataOff + 7];\n\n var tmp0 = d0 + d7;\n var tmp7 = d0 - d7;\n var tmp1 = d1 + d6;\n var tmp6 = d1 - d6;\n var tmp2 = d2 + d5;\n var tmp5 = d2 - d5;\n var tmp3 = d3 + d4;\n var tmp4 = d3 - d4;\n\n /* Even part */\n var tmp10 = tmp0 + tmp3; /* phase 2 */\n var tmp13 = tmp0 - tmp3;\n var tmp11 = tmp1 + tmp2;\n var tmp12 = tmp1 - tmp2;\n\n data[dataOff] = tmp10 + tmp11; /* phase 3 */\n data[dataOff + 4] = tmp10 - tmp11;\n\n var z1 = (tmp12 + tmp13) * 0.707106781; /* c4 */\n data[dataOff + 2] = tmp13 + z1; /* phase 5 */\n data[dataOff + 6] = tmp13 - z1;\n\n /* Odd part */\n tmp10 = tmp4 + tmp5; /* phase 2 */\n tmp11 = tmp5 + tmp6;\n tmp12 = tmp6 + tmp7;\n\n /* The rotator is modified from fig 4-8 to avoid extra negations. */\n var z5 = (tmp10 - tmp12) * 0.382683433; /* c6 */\n var z2 = 0.5411961 * tmp10 + z5; /* c2-c6 */\n var z4 = 1.306562965 * tmp12 + z5; /* c2+c6 */\n var z3 = tmp11 * 0.707106781; /* c4 */\n\n var z11 = tmp7 + z3; /* phase 5 */\n var z13 = tmp7 - z3;\n\n data[dataOff + 5] = z13 + z2; /* phase 6 */\n data[dataOff + 3] = z13 - z2;\n data[dataOff + 1] = z11 + z4;\n data[dataOff + 7] = z11 - z4;\n\n dataOff += 8; /* advance pointer to next row */\n }\n\n /* Pass 2: process columns. */\n dataOff = 0;\n for (i = 0; i < I8; ++i) {\n d0 = data[dataOff];\n d1 = data[dataOff + 8];\n d2 = data[dataOff + 16];\n d3 = data[dataOff + 24];\n d4 = data[dataOff + 32];\n d5 = data[dataOff + 40];\n d6 = data[dataOff + 48];\n d7 = data[dataOff + 56];\n\n var tmp0p2 = d0 + d7;\n var tmp7p2 = d0 - d7;\n var tmp1p2 = d1 + d6;\n var tmp6p2 = d1 - d6;\n var tmp2p2 = d2 + d5;\n var tmp5p2 = d2 - d5;\n var tmp3p2 = d3 + d4;\n var tmp4p2 = d3 - d4;\n\n /* Even part */\n var tmp10p2 = tmp0p2 + tmp3p2; /* phase 2 */\n var tmp13p2 = tmp0p2 - tmp3p2;\n var tmp11p2 = tmp1p2 + tmp2p2;\n var tmp12p2 = tmp1p2 - tmp2p2;\n\n data[dataOff] = tmp10p2 + tmp11p2; /* phase 3 */\n data[dataOff + 32] = tmp10p2 - tmp11p2;\n\n var z1p2 = (tmp12p2 + tmp13p2) * 0.707106781; /* c4 */\n data[dataOff + 16] = tmp13p2 + z1p2; /* phase 5 */\n data[dataOff + 48] = tmp13p2 - z1p2;\n\n /* Odd part */\n tmp10p2 = tmp4p2 + tmp5p2; /* phase 2 */\n tmp11p2 = tmp5p2 + tmp6p2;\n tmp12p2 = tmp6p2 + tmp7p2;\n\n /* The rotator is modified from fig 4-8 to avoid extra negations. */\n var z5p2 = (tmp10p2 - tmp12p2) * 0.382683433; /* c6 */\n var z2p2 = 0.5411961 * tmp10p2 + z5p2; /* c2-c6 */\n var z4p2 = 1.306562965 * tmp12p2 + z5p2; /* c2+c6 */\n var z3p2 = tmp11p2 * 0.707106781; /* c4 */\n\n var z11p2 = tmp7p2 + z3p2; /* phase 5 */\n var z13p2 = tmp7p2 - z3p2;\n\n data[dataOff + 40] = z13p2 + z2p2; /* phase 6 */\n data[dataOff + 24] = z13p2 - z2p2;\n data[dataOff + 8] = z11p2 + z4p2;\n data[dataOff + 56] = z11p2 - z4p2;\n\n dataOff++; /* advance pointer to next column */\n }\n\n // Quantize/descale the coefficients\n var fDCTQuant;\n for (i = 0; i < I64; ++i) {\n // Apply the quantization and scaling factor & Round to nearest integer\n fDCTQuant = data[i] * fdtbl[i];\n outputfDCTQuant[i] =\n fDCTQuant > 0.0 ? (fDCTQuant + 0.5) | 0 : (fDCTQuant - 0.5) | 0;\n //outputfDCTQuant[i] = fround(fDCTQuant);\n }\n return outputfDCTQuant;\n }\n\n function writeAPP0() {\n writeWord(0xffe0); // marker\n writeWord(16); // length\n writeByte(0x4a); // J\n writeByte(0x46); // F\n writeByte(0x49); // I\n writeByte(0x46); // F\n writeByte(0); // = \"JFIF\",'\\0'\n writeByte(1); // versionhi\n writeByte(1); // versionlo\n writeByte(0); // xyunits\n writeWord(1); // xdensity\n writeWord(1); // ydensity\n writeByte(0); // thumbnwidth\n writeByte(0); // thumbnheight\n }\n\n function writeSOF0(width, height) {\n writeWord(0xffc0); // marker\n writeWord(17); // length, truecolor YUV JPG\n writeByte(8); // precision\n writeWord(height);\n writeWord(width);\n writeByte(3); // nrofcomponents\n writeByte(1); // IdY\n writeByte(0x11); // HVY\n writeByte(0); // QTY\n writeByte(2); // IdU\n writeByte(0x11); // HVU\n writeByte(1); // QTU\n writeByte(3); // IdV\n writeByte(0x11); // HVV\n writeByte(1); // QTV\n }\n\n function writeDQT() {\n writeWord(0xffdb); // marker\n writeWord(132); // length\n writeByte(0);\n for (var i = 0; i < 64; i++) {\n writeByte(YTable[i]);\n }\n writeByte(1);\n for (var j = 0; j < 64; j++) {\n writeByte(UVTable[j]);\n }\n }\n\n function writeDHT() {\n writeWord(0xffc4); // marker\n writeWord(0x01a2); // length\n\n writeByte(0); // HTYDCinfo\n for (var i = 0; i < 16; i++) {\n writeByte(std_dc_luminance_nrcodes[i + 1]);\n }\n for (var j = 0; j <= 11; j++) {\n writeByte(std_dc_luminance_values[j]);\n }\n\n writeByte(0x10); // HTYACinfo\n for (var k = 0; k < 16; k++) {\n writeByte(std_ac_luminance_nrcodes[k + 1]);\n }\n for (var l = 0; l <= 161; l++) {\n writeByte(std_ac_luminance_values[l]);\n }\n\n writeByte(1); // HTUDCinfo\n for (var m = 0; m < 16; m++) {\n writeByte(std_dc_chrominance_nrcodes[m + 1]);\n }\n for (var n = 0; n <= 11; n++) {\n writeByte(std_dc_chrominance_values[n]);\n }\n\n writeByte(0x11); // HTUACinfo\n for (var o = 0; o < 16; o++) {\n writeByte(std_ac_chrominance_nrcodes[o + 1]);\n }\n for (var p = 0; p <= 161; p++) {\n writeByte(std_ac_chrominance_values[p]);\n }\n }\n\n function writeSOS() {\n writeWord(0xffda); // marker\n writeWord(12); // length\n writeByte(3); // nrofcomponents\n writeByte(1); // IdY\n writeByte(0); // HTY\n writeByte(2); // IdU\n writeByte(0x11); // HTU\n writeByte(3); // IdV\n writeByte(0x11); // HTV\n writeByte(0); // Ss\n writeByte(0x3f); // Se\n writeByte(0); // Bf\n }\n\n function processDU(CDU, fdtbl, DC, HTDC, HTAC) {\n var EOB = HTAC[0x00];\n var M16zeroes = HTAC[0xf0];\n var pos;\n var I16 = 16;\n var I63 = 63;\n var I64 = 64;\n var DU_DCT = fDCTQuant(CDU, fdtbl);\n //ZigZag reorder\n for (var j = 0; j < I64; ++j) {\n DU[ZigZag[j]] = DU_DCT[j];\n }\n var Diff = DU[0] - DC;\n DC = DU[0];\n //Encode DC\n if (Diff == 0) {\n writeBits(HTDC[0]); // Diff might be 0\n } else {\n pos = 32767 + Diff;\n writeBits(HTDC[category[pos]]);\n writeBits(bitcode[pos]);\n }\n //Encode ACs\n var end0pos = 63; // was const... which is crazy\n while (end0pos > 0 && DU[end0pos] == 0) {\n end0pos--;\n }\n //end0pos = first element in reverse order !=0\n if (end0pos == 0) {\n writeBits(EOB);\n return DC;\n }\n var i = 1;\n var lng;\n while (i <= end0pos) {\n var startpos = i;\n while (DU[i] == 0 && i <= end0pos) {\n ++i;\n }\n var nrzeroes = i - startpos;\n if (nrzeroes >= I16) {\n lng = nrzeroes >> 4;\n for (var nrmarker = 1; nrmarker <= lng; ++nrmarker)\n writeBits(M16zeroes);\n nrzeroes = nrzeroes & 0xf;\n }\n pos = 32767 + DU[i];\n writeBits(HTAC[(nrzeroes << 4) + category[pos]]);\n writeBits(bitcode[pos]);\n i++;\n }\n if (end0pos != I63) {\n writeBits(EOB);\n }\n return DC;\n }\n\n function initCharLookupTable() {\n var sfcc = String.fromCharCode;\n for (var i = 0; i < 256; i++) {\n ///// ACHTUNG // 255\n clt[i] = sfcc(i);\n }\n }\n\n this.encode = function(\n image,\n quality // image data object\n ) {\n if (quality) setQuality(quality);\n\n // Initialize bit writer\n byteout = new Array();\n bytenew = 0;\n bytepos = 7;\n\n // Add JPEG headers\n writeWord(0xffd8); // SOI\n writeAPP0();\n writeDQT();\n writeSOF0(image.width, image.height);\n writeDHT();\n writeSOS();\n\n // Encode 8x8 macroblocks\n var DCY = 0;\n var DCU = 0;\n var DCV = 0;\n\n bytenew = 0;\n bytepos = 7;\n\n this.encode.displayName = \"_encode_\";\n\n var imageData = image.data;\n var width = image.width;\n var height = image.height;\n\n var quadWidth = width * 4;\n\n var x,\n y = 0;\n var r, g, b;\n var start, p, col, row, pos;\n while (y < height) {\n x = 0;\n while (x < quadWidth) {\n start = quadWidth * y + x;\n col = -1;\n row = 0;\n\n for (pos = 0; pos < 64; pos++) {\n row = pos >> 3; // /8\n col = (pos & 7) * 4; // %8\n p = start + row * quadWidth + col;\n\n if (y + row >= height) {\n // padding bottom\n p -= quadWidth * (y + 1 + row - height);\n }\n\n if (x + col >= quadWidth) {\n // padding right\n p -= x + col - quadWidth + 4;\n }\n\n r = imageData[p++];\n g = imageData[p++];\n b = imageData[p++];\n\n /* // calculate YUV values dynamically\n\t\t\t\t\tYDU[pos]=((( 0.29900)*r+( 0.58700)*g+( 0.11400)*b))-128; //-0x80\n\t\t\t\t\tUDU[pos]=(((-0.16874)*r+(-0.33126)*g+( 0.50000)*b));\n\t\t\t\t\tVDU[pos]=((( 0.50000)*r+(-0.41869)*g+(-0.08131)*b));\n\t\t\t\t\t*/\n\n // use lookup table (slightly faster)\n YDU[pos] =\n ((RGB_YUV_TABLE[r] +\n RGB_YUV_TABLE[(g + 256) >> 0] +\n RGB_YUV_TABLE[(b + 512) >> 0]) >>\n 16) -\n 128;\n UDU[pos] =\n ((RGB_YUV_TABLE[(r + 768) >> 0] +\n RGB_YUV_TABLE[(g + 1024) >> 0] +\n RGB_YUV_TABLE[(b + 1280) >> 0]) >>\n 16) -\n 128;\n VDU[pos] =\n ((RGB_YUV_TABLE[(r + 1280) >> 0] +\n RGB_YUV_TABLE[(g + 1536) >> 0] +\n RGB_YUV_TABLE[(b + 1792) >> 0]) >>\n 16) -\n 128;\n }\n\n DCY = processDU(YDU, fdtbl_Y, DCY, YDC_HT, YAC_HT);\n DCU = processDU(UDU, fdtbl_UV, DCU, UVDC_HT, UVAC_HT);\n DCV = processDU(VDU, fdtbl_UV, DCV, UVDC_HT, UVAC_HT);\n x += 32;\n }\n y += 8;\n }\n\n ////////////////////////////////////////////////////////////////\n\n // Do the bit alignment of the EOI marker\n if (bytepos >= 0) {\n var fillbits = [];\n fillbits[1] = bytepos + 1;\n fillbits[0] = (1 << (bytepos + 1)) - 1;\n writeBits(fillbits);\n }\n\n writeWord(0xffd9); //EOI\n\n return new Uint8Array(byteout);\n };\n\n function setQuality(quality) {\n quality = Math.min(Math.max(quality, 1), 100);\n\n if (currentQuality == quality) return; // don't recalc if unchanged\n\n var sf =\n quality < 50 ? Math.floor(5000 / quality) : Math.floor(200 - quality * 2);\n\n initQuantTables(sf);\n currentQuality = quality;\n //console.log('Quality set to: '+quality +'%');\n }\n\n function init() {\n quality = quality || 50;\n // Create tables\n initCharLookupTable();\n initHuffmanTbl();\n initCategoryNumber();\n initRGBYUVTable();\n\n setQuality(quality);\n }\n init();\n}\n\nexport { JPEGEncoder };\n","/**\n * @author shaozilee\n *\n * Bmp format decoder,support 1bit 4bit 8bit 24bit bmp\n *\n */\n\nimport { console } from \"./console.js\";\n\nfunction BmpDecoder(buffer, is_with_alpha) {\n this.pos = 0;\n this.buffer = buffer;\n this.datav = new DataView(buffer.buffer);\n this.is_with_alpha = !!is_with_alpha;\n this.bottom_up = true;\n this.flag =\n String.fromCharCode(this.buffer[0]) + String.fromCharCode(this.buffer[1]);\n this.pos += 2;\n if ([\"BM\", \"BA\", \"CI\", \"CP\", \"IC\", \"PT\"].indexOf(this.flag) === -1)\n throw new Error(\"Invalid BMP File\");\n this.parseHeader();\n this.parseBGR();\n}\n\nBmpDecoder.prototype.parseHeader = function() {\n this.fileSize = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.reserved = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.offset = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.headerSize = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.width = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.height = this.datav.getInt32(this.pos, true);\n this.pos += 4;\n this.planes = this.datav.getUint16(this.pos, true);\n this.pos += 2;\n this.bitPP = this.datav.getUint16(this.pos, true);\n this.pos += 2;\n this.compress = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.rawSize = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.hr = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.vr = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.colors = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.importantColors = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n\n if (this.bitPP === 16 && this.is_with_alpha) {\n this.bitPP = 15;\n }\n if (this.bitPP < 15) {\n var len = this.colors === 0 ? 1 << this.bitPP : this.colors;\n this.palette = new Array(len);\n for (var i = 0; i < len; i++) {\n var blue = this.datav.getUint8(this.pos++, true);\n var green = this.datav.getUint8(this.pos++, true);\n var red = this.datav.getUint8(this.pos++, true);\n var quad = this.datav.getUint8(this.pos++, true);\n this.palette[i] = {\n red: red,\n green: green,\n blue: blue,\n quad: quad\n };\n }\n }\n if (this.height < 0) {\n this.height *= -1;\n this.bottom_up = false;\n }\n};\n\nBmpDecoder.prototype.parseBGR = function() {\n this.pos = this.offset;\n try {\n var bitn = \"bit\" + this.bitPP;\n var len = this.width * this.height * 4;\n this.data = new Uint8Array(len);\n\n this[bitn]();\n } catch (e) {\n console.log(\"bit decode error:\" + e);\n }\n};\n\nBmpDecoder.prototype.bit1 = function() {\n var xlen = Math.ceil(this.width / 8);\n var mode = xlen % 4;\n var y;\n for (y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < xlen; x++) {\n var b = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 8 * 4;\n for (var i = 0; i < 8; i++) {\n if (x * 8 + i < this.width) {\n var rgb = this.palette[(b >> (7 - i)) & 0x1];\n this.data[location + i * 4] = rgb.blue;\n this.data[location + i * 4 + 1] = rgb.green;\n this.data[location + i * 4 + 2] = rgb.red;\n this.data[location + i * 4 + 3] = 0xff;\n } else {\n break;\n }\n }\n }\n\n if (mode !== 0) {\n this.pos += 4 - mode;\n }\n }\n};\n\nBmpDecoder.prototype.bit4 = function() {\n var xlen = Math.ceil(this.width / 2);\n var mode = xlen % 4;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < xlen; x++) {\n var b = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 2 * 4;\n\n var before = b >> 4;\n var after = b & 0x0f;\n\n var rgb = this.palette[before];\n this.data[location] = rgb.blue;\n this.data[location + 1] = rgb.green;\n this.data[location + 2] = rgb.red;\n this.data[location + 3] = 0xff;\n\n if (x * 2 + 1 >= this.width) break;\n\n rgb = this.palette[after];\n this.data[location + 4] = rgb.blue;\n this.data[location + 4 + 1] = rgb.green;\n this.data[location + 4 + 2] = rgb.red;\n this.data[location + 4 + 3] = 0xff;\n }\n\n if (mode !== 0) {\n this.pos += 4 - mode;\n }\n }\n};\n\nBmpDecoder.prototype.bit8 = function() {\n var mode = this.width % 4;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var b = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 4;\n if (b < this.palette.length) {\n var rgb = this.palette[b];\n this.data[location] = rgb.red;\n this.data[location + 1] = rgb.green;\n this.data[location + 2] = rgb.blue;\n this.data[location + 3] = 0xff;\n } else {\n this.data[location] = 0xff;\n this.data[location + 1] = 0xff;\n this.data[location + 2] = 0xff;\n this.data[location + 3] = 0xff;\n }\n }\n if (mode !== 0) {\n this.pos += 4 - mode;\n }\n }\n};\n\nBmpDecoder.prototype.bit15 = function() {\n var dif_w = this.width % 3;\n var _11111 = parseInt(\"11111\", 2),\n _1_5 = _11111;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var B = this.datav.getUint16(this.pos, true);\n this.pos += 2;\n var blue = (((B & _1_5) / _1_5) * 255) | 0;\n var green = ((((B >> 5) & _1_5) / _1_5) * 255) | 0;\n var red = ((((B >> 10) & _1_5) / _1_5) * 255) | 0;\n var alpha = B >> 15 ? 0xff : 0x00;\n\n var location = line * this.width * 4 + x * 4;\n this.data[location] = red;\n this.data[location + 1] = green;\n this.data[location + 2] = blue;\n this.data[location + 3] = alpha;\n }\n //skip extra bytes\n this.pos += dif_w;\n }\n};\n\nBmpDecoder.prototype.bit16 = function() {\n var dif_w = this.width % 3;\n var _11111 = parseInt(\"11111\", 2),\n _1_5 = _11111;\n var _111111 = parseInt(\"111111\", 2),\n _1_6 = _111111;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var B = this.datav.getUint16(this.pos, true);\n this.pos += 2;\n var alpha = 0xff;\n var blue = (((B & _1_5) / _1_5) * 255) | 0;\n var green = ((((B >> 5) & _1_6) / _1_6) * 255) | 0;\n var red = (((B >> 11) / _1_5) * 255) | 0;\n\n var location = line * this.width * 4 + x * 4;\n this.data[location] = red;\n this.data[location + 1] = green;\n this.data[location + 2] = blue;\n this.data[location + 3] = alpha;\n }\n //skip extra bytes\n this.pos += dif_w;\n }\n};\n\nBmpDecoder.prototype.bit24 = function() {\n //when height > 0\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var blue = this.datav.getUint8(this.pos++, true);\n var green = this.datav.getUint8(this.pos++, true);\n var red = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 4;\n this.data[location] = red;\n this.data[location + 1] = green;\n this.data[location + 2] = blue;\n this.data[location + 3] = 0xff;\n }\n //skip extra bytes\n this.pos += this.width % 4;\n }\n};\n\n/**\n * add 32bit decode func\n * @author soubok\n */\nBmpDecoder.prototype.bit32 = function() {\n //when height > 0\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var blue = this.datav.getUint8(this.pos++, true);\n var green = this.datav.getUint8(this.pos++, true);\n var red = this.datav.getUint8(this.pos++, true);\n var alpha = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 4;\n this.data[location] = red;\n this.data[location + 1] = green;\n this.data[location + 2] = blue;\n this.data[location + 3] = alpha;\n }\n //skip extra bytes\n //this.pos += (this.width % 4);\n }\n};\n\nBmpDecoder.prototype.getData = function() {\n return this.data;\n};\n\nexport { BmpDecoder };\n","function WebPDecoder(imageData) {\n /** @license\n * Copyright 2011 Google Inc.\n *\n * This code is licensed under the same terms as WebM:\n * Software License Agreement: http://www.webmproject.org/license/software/\n * Additional IP Rights Grant: http://www.webmproject.org/license/additional/\n * -----------------------------------------------------------------------------\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.\n * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * -----------------------------------------------------------------------------\n *\n * Copyright 2011-2017 Dominik Homberger\n * Libwebp Javascript / libwebpjs - the libwebp implementation in javascript (v0.6.0)\n *\n * Author: Dominik Homberger (dominik.homberger@gmail.com)\n */\n\n var self = this;\n var UpsampleRgbLinePair,\n UpsampleBgrLinePair,\n UpsampleRgbaLinePair,\n UpsampleBgraLinePair,\n UpsampleArgbLinePair,\n UpsampleArgbLinePair,\n UpsampleRgba4444LinePair,\n UpsampleRgb565LinePair;\n\n function x(F) {\n if (!F) throw Error(\"assert :P\");\n }\n function fa(F, L, J) {\n for (var H = 0; 4 > H; H++) if (F[L + H] != J.charCodeAt(H)) return !0;\n return !1;\n }\n function I(F, L, J, H, Z) {\n for (var O = 0; O < Z; O++) F[L + O] = J[H + O];\n }\n function M(F, L, J, H) {\n for (var Z = 0; Z < H; Z++) F[L + Z] = J;\n }\n function V(F) {\n return new Int32Array(F);\n }\n function wa(F, L) {\n for (var J = [], H = 0; H < F; H++) J.push(new L());\n return J;\n }\n function wb() {\n function F(J, H, Z) {\n for (var O = Z[H], L = 0; L < O; L++) {\n J.push(Z.length > H + 1 ? [] : 0);\n if (Z.length < H + 1) break;\n F(J[L], H + 1, Z);\n }\n }\n var L = [];\n F(L, 0, [3, 11]);\n return L;\n }\n function Ed(F, L) {\n function J(H, O, F) {\n for (var Z = F[O], ma = 0; ma < Z; ma++) {\n H.push(F.length > O + 1 ? [] : new L());\n if (F.length < O + 1) break;\n J(H[ma], O + 1, F);\n }\n }\n var H = [];\n J(H, 0, F);\n return H;\n }\n var _WebPDecoder = function() {\n var self = this;\n function F() {\n V(55);\n }\n function L(a, b) {\n for (var c = (1 << (b - 1)) >>> 0; a & c; ) c >>>= 1;\n return c ? (a & (c - 1)) + c : a;\n }\n function J(a, b, c, d, e) {\n x(!(d % c));\n do (d -= c), (a[b + d] = e);\n while (0 < d);\n }\n function H(a, b, c, d, e, f) {\n var g = b,\n h = 1 << c,\n k,\n l,\n m = V(16),\n n = V(16);\n x(0 != e);\n x(null != d);\n x(null != a);\n x(0 < c);\n for (l = 0; l < e; ++l) {\n if (15 < d[l]) return 0;\n ++m[d[l]];\n }\n if (m[0] == e) return 0;\n n[1] = 0;\n for (k = 1; 15 > k; ++k) {\n if (m[k] > 1 << k) return 0;\n n[k + 1] = n[k] + m[k];\n }\n for (l = 0; l < e; ++l) (k = d[l]), 0 < d[l] && (f[n[k]++] = l);\n if (1 == n[15])\n return (d = new O()), (d.g = 0), (d.value = f[0]), J(a, g, 1, h, d), h;\n var r = -1,\n q = h - 1,\n t = 0,\n v = 1,\n p = 1,\n u,\n w = 1 << c;\n l = 0;\n k = 1;\n for (e = 2; k <= c; ++k, e <<= 1) {\n p <<= 1;\n v += p;\n p -= m[k];\n if (0 > p) return 0;\n for (; 0 < m[k]; --m[k])\n (d = new O()),\n (d.g = k),\n (d.value = f[l++]),\n J(a, g + t, e, w, d),\n (t = L(t, k));\n }\n k = c + 1;\n for (e = 2; 15 >= k; ++k, e <<= 1) {\n p <<= 1;\n v += p;\n p -= m[k];\n if (0 > p) return 0;\n for (; 0 < m[k]; --m[k]) {\n d = new O();\n if ((t & q) != r) {\n g += w;\n r = k;\n for (u = 1 << (r - c); 15 > r; ) {\n u -= m[r];\n if (0 >= u) break;\n ++r;\n u <<= 1;\n }\n u = r - c;\n w = 1 << u;\n h += w;\n r = t & q;\n a[b + r].g = u + c;\n a[b + r].value = g - b - r;\n }\n d.g = k - c;\n d.value = f[l++];\n J(a, g + (t >> c), e, w, d);\n t = L(t, k);\n }\n }\n return v != 2 * n[15] - 1 ? 0 : h;\n }\n function Z(a, b, c, d, e) {\n x(2328 >= e);\n if (512 >= e) var f = V(512);\n else if (((f = V(e)), null == f)) return 0;\n return H(a, b, c, d, e, f);\n }\n function O() {\n this.value = this.g = 0;\n }\n function Fd() {\n this.value = this.g = 0;\n }\n function Ub() {\n this.G = wa(5, O);\n this.H = V(5);\n this.jc = this.Qb = this.qb = this.nd = 0;\n this.pd = wa(xb, Fd);\n }\n function ma(a, b, c, d) {\n x(null != a);\n x(null != b);\n x(2147483648 > d);\n a.Ca = 254;\n a.I = 0;\n a.b = -8;\n a.Ka = 0;\n a.oa = b;\n a.pa = c;\n a.Jd = b;\n a.Yc = c + d;\n a.Zc = 4 <= d ? c + d - 4 + 1 : c;\n Qa(a);\n }\n function na(a, b) {\n for (var c = 0; 0 < b--; ) c |= K(a, 128) << b;\n return c;\n }\n function ca(a, b) {\n var c = na(a, b);\n return G(a) ? -c : c;\n }\n function cb(a, b, c, d) {\n var e,\n f = 0;\n x(null != a);\n x(null != b);\n x(4294967288 > d);\n a.Sb = d;\n a.Ra = 0;\n a.u = 0;\n a.h = 0;\n 4 < d && (d = 4);\n for (e = 0; e < d; ++e) f += b[c + e] << (8 * e);\n a.Ra = f;\n a.bb = d;\n a.oa = b;\n a.pa = c;\n }\n function Vb(a) {\n for (; 8 <= a.u && a.bb < a.Sb; )\n (a.Ra >>>= 8),\n (a.Ra += (a.oa[a.pa + a.bb] << (ob - 8)) >>> 0),\n ++a.bb,\n (a.u -= 8);\n db(a) && ((a.h = 1), (a.u = 0));\n }\n function D(a, b) {\n x(0 <= b);\n if (!a.h && b <= Gd) {\n var c = pb(a) & Hd[b];\n a.u += b;\n Vb(a);\n return c;\n }\n a.h = 1;\n return (a.u = 0);\n }\n function Wb() {\n this.b = this.Ca = this.I = 0;\n this.oa = [];\n this.pa = 0;\n this.Jd = [];\n this.Yc = 0;\n this.Zc = [];\n this.Ka = 0;\n }\n function Ra() {\n this.Ra = 0;\n this.oa = [];\n this.h = this.u = this.bb = this.Sb = this.pa = 0;\n }\n function pb(a) {\n return (a.Ra >>> (a.u & (ob - 1))) >>> 0;\n }\n function db(a) {\n x(a.bb <= a.Sb);\n return a.h || (a.bb == a.Sb && a.u > ob);\n }\n function qb(a, b) {\n a.u = b;\n a.h = db(a);\n }\n function Sa(a) {\n a.u >= Xb && (x(a.u >= Xb), Vb(a));\n }\n function Qa(a) {\n x(null != a && null != a.oa);\n a.pa < a.Zc\n ? ((a.I = (a.oa[a.pa++] | (a.I << 8)) >>> 0), (a.b += 8))\n : (x(null != a && null != a.oa),\n a.pa < a.Yc\n ? ((a.b += 8), (a.I = a.oa[a.pa++] | (a.I << 8)))\n : a.Ka\n ? (a.b = 0)\n : ((a.I <<= 8), (a.b += 8), (a.Ka = 1)));\n }\n function G(a) {\n return na(a, 1);\n }\n function K(a, b) {\n var c = a.Ca;\n 0 > a.b && Qa(a);\n var d = a.b,\n e = (c * b) >>> 8,\n f = (a.I >>> d > e) + 0;\n f ? ((c -= e), (a.I -= ((e + 1) << d) >>> 0)) : (c = e + 1);\n d = c;\n for (e = 0; 256 <= d; ) (e += 8), (d >>= 8);\n d = 7 ^ (e + Id[d]);\n a.b -= d;\n a.Ca = (c << d) - 1;\n return f;\n }\n function ra(a, b, c) {\n a[b + 0] = (c >> 24) & 255;\n a[b + 1] = (c >> 16) & 255;\n a[b + 2] = (c >> 8) & 255;\n a[b + 3] = (c >> 0) & 255;\n }\n function Ta(a, b) {\n return (a[b + 0] << 0) | (a[b + 1] << 8);\n }\n function Yb(a, b) {\n return Ta(a, b) | (a[b + 2] << 16);\n }\n function Ha(a, b) {\n return Ta(a, b) | (Ta(a, b + 2) << 16);\n }\n function Zb(a, b) {\n var c = 1 << b;\n x(null != a);\n x(0 < b);\n a.X = V(c);\n if (null == a.X) return 0;\n a.Mb = 32 - b;\n a.Xa = b;\n return 1;\n }\n function $b(a, b) {\n x(null != a);\n x(null != b);\n x(a.Xa == b.Xa);\n I(b.X, 0, a.X, 0, 1 << b.Xa);\n }\n function ac() {\n this.X = [];\n this.Xa = this.Mb = 0;\n }\n function bc(a, b, c, d) {\n x(null != c);\n x(null != d);\n var e = c[0],\n f = d[0];\n 0 == e && (e = (a * f + b / 2) / b);\n 0 == f && (f = (b * e + a / 2) / a);\n if (0 >= e || 0 >= f) return 0;\n c[0] = e;\n d[0] = f;\n return 1;\n }\n function xa(a, b) {\n return (a + (1 << b) - 1) >>> b;\n }\n function yb(a, b) {\n return (\n (((((a & 4278255360) + (b & 4278255360)) >>> 0) & 4278255360) +\n ((((a & 16711935) + (b & 16711935)) >>> 0) & 16711935)) >>>\n 0\n );\n }\n function X(a, b) {\n self[b] = function(b, d, e, f, g, h, k) {\n var c;\n for (c = 0; c < g; ++c) {\n var m = self[a](h[k + c - 1], e, f + c);\n h[k + c] = yb(b[d + c], m);\n }\n };\n }\n function Jd() {\n this.ud = this.hd = this.jd = 0;\n }\n function aa(a, b) {\n return ((((a ^ b) & 4278124286) >>> 1) + (a & b)) >>> 0;\n }\n function sa(a) {\n if (0 <= a && 256 > a) return a;\n if (0 > a) return 0;\n if (255 < a) return 255;\n }\n function eb(a, b) {\n return sa(a + ((a - b + 0.5) >> 1));\n }\n function Ia(a, b, c) {\n return Math.abs(b - c) - Math.abs(a - c);\n }\n function cc(a, b, c, d, e, f, g) {\n d = f[g - 1];\n for (c = 0; c < e; ++c) f[g + c] = d = yb(a[b + c], d);\n }\n function Kd(a, b, c, d, e) {\n var f;\n for (f = 0; f < c; ++f) {\n var g = a[b + f],\n h = (g >> 8) & 255,\n k = g & 16711935,\n k = k + ((h << 16) + h),\n k = k & 16711935;\n d[e + f] = ((g & 4278255360) + k) >>> 0;\n }\n }\n function dc(a, b) {\n b.jd = (a >> 0) & 255;\n b.hd = (a >> 8) & 255;\n b.ud = (a >> 16) & 255;\n }\n function Ld(a, b, c, d, e, f) {\n var g;\n for (g = 0; g < d; ++g) {\n var h = b[c + g],\n k = h >>> 8,\n l = h >>> 16,\n m = h,\n l = l + ((((a.jd << 24) >> 24) * ((k << 24) >> 24)) >>> 5),\n l = l & 255,\n m = m + ((((a.hd << 24) >> 24) * ((k << 24) >> 24)) >>> 5),\n m = m + ((((a.ud << 24) >> 24) * ((l << 24) >> 24)) >>> 5),\n m = m & 255;\n e[f + g] = (h & 4278255360) + (l << 16) + m;\n }\n }\n function ec(a, b, c, d, e) {\n self[b] = function(a, b, c, k, l, m, n, r, q) {\n for (k = n; k < r; ++k)\n for (n = 0; n < q; ++n) l[m++] = e(c[d(a[b++])]);\n };\n self[a] = function(a, b, h, k, l, m, n) {\n var f = 8 >> a.b,\n g = a.Ea,\n t = a.K[0],\n v = a.w;\n if (8 > f)\n for (a = (1 << a.b) - 1, v = (1 << f) - 1; b < h; ++b) {\n var p = 0,\n u;\n for (u = 0; u < g; ++u)\n u & a || (p = d(k[l++])), (m[n++] = e(t[p & v])), (p >>= f);\n }\n else self[\"VP8LMapColor\" + c](k, l, t, v, m, n, b, h, g);\n };\n }\n function Md(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++];\n d[e++] = (f >> 16) & 255;\n d[e++] = (f >> 8) & 255;\n d[e++] = (f >> 0) & 255;\n }\n }\n function Nd(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++];\n d[e++] = (f >> 16) & 255;\n d[e++] = (f >> 8) & 255;\n d[e++] = (f >> 0) & 255;\n d[e++] = (f >> 24) & 255;\n }\n }\n function Od(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++],\n g = ((f >> 16) & 240) | ((f >> 12) & 15),\n f = ((f >> 0) & 240) | ((f >> 28) & 15);\n d[e++] = g;\n d[e++] = f;\n }\n }\n function Pd(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++],\n g = ((f >> 16) & 248) | ((f >> 13) & 7),\n f = ((f >> 5) & 224) | ((f >> 3) & 31);\n d[e++] = g;\n d[e++] = f;\n }\n }\n function Qd(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++];\n d[e++] = (f >> 0) & 255;\n d[e++] = (f >> 8) & 255;\n d[e++] = (f >> 16) & 255;\n }\n }\n function fb(a, b, c, d, e, f) {\n if (0 == f)\n for (c = b + c; b < c; )\n (f = a[b++]),\n ra(\n d,\n ((f[0] >> 24) |\n ((f[1] >> 8) & 65280) |\n ((f[2] << 8) & 16711680) |\n (f[3] << 24)) >>>\n 0\n ),\n (e += 32);\n else I(d, e, a, b, c);\n }\n function gb(a, b) {\n self[b][0] = self[a + \"0\"];\n self[b][1] = self[a + \"1\"];\n self[b][2] = self[a + \"2\"];\n self[b][3] = self[a + \"3\"];\n self[b][4] = self[a + \"4\"];\n self[b][5] = self[a + \"5\"];\n self[b][6] = self[a + \"6\"];\n self[b][7] = self[a + \"7\"];\n self[b][8] = self[a + \"8\"];\n self[b][9] = self[a + \"9\"];\n self[b][10] = self[a + \"10\"];\n self[b][11] = self[a + \"11\"];\n self[b][12] = self[a + \"12\"];\n self[b][13] = self[a + \"13\"];\n self[b][14] = self[a + \"0\"];\n self[b][15] = self[a + \"0\"];\n }\n function hb(a) {\n return a == zb || a == Ab || a == Ja || a == Bb;\n }\n function Rd() {\n this.eb = [];\n this.size = this.A = this.fb = 0;\n }\n function Sd() {\n this.y = [];\n this.f = [];\n this.ea = [];\n this.F = [];\n this.Tc = this.Ed = this.Cd = this.Fd = this.lb = this.Db = this.Ab = this.fa = this.J = this.W = this.N = this.O = 0;\n }\n function Cb() {\n this.Rd = this.height = this.width = this.S = 0;\n this.f = {};\n this.f.RGBA = new Rd();\n this.f.kb = new Sd();\n this.sd = null;\n }\n function Td() {\n this.width = [0];\n this.height = [0];\n this.Pd = [0];\n this.Qd = [0];\n this.format = [0];\n }\n function Ud() {\n this.Id = this.fd = this.Md = this.hb = this.ib = this.da = this.bd = this.cd = this.j = this.v = this.Da = this.Sd = this.ob = 0;\n }\n function Vd(a) {\n alert(\"todo:WebPSamplerProcessPlane\");\n return a.T;\n }\n function Wd(a, b) {\n var c = a.T,\n d = b.ba.f.RGBA,\n e = d.eb,\n f = d.fb + a.ka * d.A,\n g = P[b.ba.S],\n h = a.y,\n k = a.O,\n l = a.f,\n m = a.N,\n n = a.ea,\n r = a.W,\n q = b.cc,\n t = b.dc,\n v = b.Mc,\n p = b.Nc,\n u = a.ka,\n w = a.ka + a.T,\n y = a.U,\n A = (y + 1) >> 1;\n 0 == u\n ? g(h, k, null, null, l, m, n, r, l, m, n, r, e, f, null, null, y)\n : (g(b.ec, b.fc, h, k, q, t, v, p, l, m, n, r, e, f - d.A, e, f, y),\n ++c);\n for (; u + 2 < w; u += 2)\n (q = l),\n (t = m),\n (v = n),\n (p = r),\n (m += a.Rc),\n (r += a.Rc),\n (f += 2 * d.A),\n (k += 2 * a.fa),\n g(h, k - a.fa, h, k, q, t, v, p, l, m, n, r, e, f - d.A, e, f, y);\n k += a.fa;\n a.j + w < a.o\n ? (I(b.ec, b.fc, h, k, y),\n I(b.cc, b.dc, l, m, A),\n I(b.Mc, b.Nc, n, r, A),\n c--)\n : w & 1 ||\n g(\n h,\n k,\n null,\n null,\n l,\n m,\n n,\n r,\n l,\n m,\n n,\n r,\n e,\n f + d.A,\n null,\n null,\n y\n );\n return c;\n }\n function Xd(a, b, c) {\n var d = a.F,\n e = [a.J];\n if (null != d) {\n var f = a.U,\n g = b.ba.S,\n h = g == ya || g == Ja;\n b = b.ba.f.RGBA;\n var k = [0],\n l = a.ka;\n k[0] = a.T;\n a.Kb &&\n (0 == l ? --k[0] : (--l, (e[0] -= a.width)),\n a.j + a.ka + a.T == a.o && (k[0] = a.o - a.j - l));\n var m = b.eb,\n l = b.fb + l * b.A;\n a = fc(d, e[0], a.width, f, k, m, l + (h ? 0 : 3), b.A);\n x(c == k);\n a && hb(g) && za(m, l, h, f, k, b.A);\n }\n return 0;\n }\n function gc(a) {\n var b = a.ma,\n c = b.ba.S,\n d = 11 > c,\n e = c == Ua || c == Va || c == ya || c == Db || 12 == c || hb(c);\n b.memory = null;\n b.Ib = null;\n b.Jb = null;\n b.Nd = null;\n if (!hc(b.Oa, a, e ? 11 : 12)) return 0;\n e && hb(c) && ic();\n if (a.da) alert(\"todo:use_scaling\");\n else {\n if (d) {\n if (((b.Ib = Vd), a.Kb)) {\n c = (a.U + 1) >> 1;\n b.memory = V(a.U + 2 * c);\n if (null == b.memory) return 0;\n b.ec = b.memory;\n b.fc = 0;\n b.cc = b.ec;\n b.dc = b.fc + a.U;\n b.Mc = b.cc;\n b.Nc = b.dc + c;\n b.Ib = Wd;\n ic();\n }\n } else alert(\"todo:EmitYUV\");\n e && ((b.Jb = Xd), d && Aa());\n }\n if (d && !jc) {\n for (a = 0; 256 > a; ++a)\n (Yd[a] = (89858 * (a - 128) + Ba) >> Wa),\n (Zd[a] = -22014 * (a - 128) + Ba),\n ($d[a] = -45773 * (a - 128)),\n (ae[a] = (113618 * (a - 128) + Ba) >> Wa);\n for (a = ta; a < Eb; ++a)\n (b = (76283 * (a - 16) + Ba) >> Wa),\n (be[a - ta] = ga(b, 255)),\n (ce[a - ta] = ga((b + 8) >> 4, 15));\n jc = 1;\n }\n return 1;\n }\n function kc(a) {\n var b = a.ma,\n c = a.U,\n d = a.T;\n x(!(a.ka & 1));\n if (0 >= c || 0 >= d) return 0;\n c = b.Ib(a, b);\n null != b.Jb && b.Jb(a, b, c);\n b.Dc += c;\n return 1;\n }\n function lc(a) {\n a.ma.memory = null;\n }\n function mc(a, b, c, d) {\n if (47 != D(a, 8)) return 0;\n b[0] = D(a, 14) + 1;\n c[0] = D(a, 14) + 1;\n d[0] = D(a, 1);\n return 0 != D(a, 3) ? 0 : !a.h;\n }\n function ib(a, b) {\n if (4 > a) return a + 1;\n var c = (a - 2) >> 1;\n return ((2 + (a & 1)) << c) + D(b, c) + 1;\n }\n function nc(a, b) {\n if (120 < b) return b - 120;\n var c = de[b - 1],\n c = (c >> 4) * a + (8 - (c & 15));\n return 1 <= c ? c : 1;\n }\n function ua(a, b, c) {\n var d = pb(c);\n b += d & 255;\n var e = a[b].g - 8;\n 0 < e &&\n (qb(c, c.u + 8),\n (d = pb(c)),\n (b += a[b].value),\n (b += d & ((1 << e) - 1)));\n qb(c, c.u + a[b].g);\n return a[b].value;\n }\n function ub(a, b, c) {\n c.g += a.g;\n c.value += (a.value << b) >>> 0;\n x(8 >= c.g);\n return a.g;\n }\n function ha(a, b, c) {\n var d = a.xc;\n b = 0 == d ? 0 : a.vc[a.md * (c >> d) + (b >> d)];\n x(b < a.Wb);\n return a.Ya[b];\n }\n function oc(a, b, c, d) {\n var e = a.ab,\n f = a.c * b,\n g = a.C;\n b = g + b;\n var h = c,\n k = d;\n d = a.Ta;\n for (c = a.Ua; 0 < e--; ) {\n var l = a.gc[e],\n m = g,\n n = b,\n r = h,\n q = k,\n k = d,\n h = c,\n t = l.Ea;\n x(m < n);\n x(n <= l.nc);\n switch (l.hc) {\n case 2:\n pc(r, q, (n - m) * t, k, h);\n break;\n case 0:\n var v = l,\n p = m,\n u = n,\n w = k,\n y = h,\n A = v.Ea;\n 0 == p &&\n (ee(r, q, null, null, 1, w, y),\n cc(r, q + 1, 0, 0, A - 1, w, y + 1),\n (q += A),\n (y += A),\n ++p);\n for (\n var E = 1 << v.b,\n B = E - 1,\n C = xa(A, v.b),\n N = v.K,\n v = v.w + (p >> v.b) * C;\n p < u;\n\n ) {\n var z = N,\n Q = v,\n S = 1;\n for (fe(r, q, w, y - A, 1, w, y); S < A; ) {\n var K = qc[(z[Q++] >> 8) & 15],\n D = (S & ~B) + E;\n D > A && (D = A);\n K(r, q + +S, w, y + S - A, D - S, w, y + S);\n S = D;\n }\n q += A;\n y += A;\n ++p;\n p & B || (v += C);\n }\n n != l.nc && I(k, h - t, k, h + (n - m - 1) * t, t);\n break;\n case 1:\n t = r;\n u = q;\n r = l.Ea;\n q = 1 << l.b;\n w = q - 1;\n y = r & ~w;\n A = r - y;\n p = xa(r, l.b);\n E = l.K;\n for (l = l.w + (m >> l.b) * p; m < n; ) {\n B = E;\n C = l;\n N = new Jd();\n v = u + y;\n for (z = u + r; u < v; )\n dc(B[C++], N), Fb(N, t, u, q, k, h), (u += q), (h += q);\n u < z &&\n (dc(B[C++], N), Fb(N, t, u, A, k, h), (u += A), (h += A));\n ++m;\n m & w || (l += p);\n }\n break;\n case 3:\n if (r == k && q == h && 0 < l.b) {\n y = (n - m) * xa(l.Ea, l.b);\n t = h + (n - m) * t - y;\n u = k;\n r = t;\n q = k;\n w = h;\n A = y;\n p = [];\n for (y = A - 1; 0 <= y; --y) p[y] = q[w + y];\n for (y = A - 1; 0 <= y; --y) u[r + y] = p[y];\n rc(l, m, n, k, t, k, h);\n } else rc(l, m, n, r, q, k, h);\n }\n h = d;\n k = c;\n }\n k != c && I(d, c, h, k, f);\n }\n function ge(a, b) {\n var c = a.V,\n d = a.Ba + a.c * a.C,\n e = b - a.C;\n x(b <= a.l.o);\n x(16 >= e);\n if (0 < e) {\n var f = a.l,\n g = a.Ta,\n h = a.Ua,\n k = f.width;\n oc(a, e, c, d);\n h = [h];\n c = a.C;\n d = b;\n e = h;\n x(c < d);\n x(f.v < f.va);\n d > f.o && (d = f.o);\n if (c < f.j) {\n var l = f.j - c,\n c = f.j;\n e[0] += l * k;\n }\n c >= d\n ? (c = 0)\n : ((e[0] += 4 * f.v),\n (f.ka = c - f.j),\n (f.U = f.va - f.v),\n (f.T = d - c),\n (c = 1));\n if (c) {\n h = h[0];\n c = a.ca;\n if (11 > c.S) {\n for (\n var m = c.f.RGBA,\n d = c.S,\n e = f.U,\n f = f.T,\n l = m.eb,\n n = m.A,\n r = f,\n m = m.fb + a.Ma * m.A;\n 0 < r--;\n\n ) {\n var q = g,\n t = h,\n v = e,\n p = l,\n u = m;\n switch (d) {\n case Ca:\n sc(q, t, v, p, u);\n break;\n case Ua:\n Gb(q, t, v, p, u);\n break;\n case zb:\n Gb(q, t, v, p, u);\n za(p, u, 0, v, 1, 0);\n break;\n case tc:\n uc(q, t, v, p, u);\n break;\n case Va:\n fb(q, t, v, p, u, 1);\n break;\n case Ab:\n fb(q, t, v, p, u, 1);\n za(p, u, 0, v, 1, 0);\n break;\n case ya:\n fb(q, t, v, p, u, 0);\n break;\n case Ja:\n fb(q, t, v, p, u, 0);\n za(p, u, 1, v, 1, 0);\n break;\n case Db:\n Hb(q, t, v, p, u);\n break;\n case Bb:\n Hb(q, t, v, p, u);\n vc(p, u, v, 1, 0);\n break;\n case wc:\n xc(q, t, v, p, u);\n break;\n default:\n x(0);\n }\n h += k;\n m += n;\n }\n a.Ma += f;\n } else alert(\"todo:EmitRescaledRowsYUVA\");\n x(a.Ma <= c.height);\n }\n }\n a.C = b;\n x(a.C <= a.i);\n }\n function yc(a) {\n var b;\n if (0 < a.ua) return 0;\n for (b = 0; b < a.Wb; ++b) {\n var c = a.Ya[b].G,\n d = a.Ya[b].H;\n if (\n 0 < c[1][d[1] + 0].g ||\n 0 < c[2][d[2] + 0].g ||\n 0 < c[3][d[3] + 0].g\n )\n return 0;\n }\n return 1;\n }\n function zc(a, b, c, d, e, f) {\n if (0 != a.Z) {\n var g = a.qd,\n h = a.rd;\n for (x(null != ia[a.Z]); b < c; ++b)\n ia[a.Z](g, h, d, e, d, e, f), (g = d), (h = e), (e += f);\n a.qd = g;\n a.rd = h;\n }\n }\n function Ib(a, b) {\n var c = a.l.ma,\n d = 0 == c.Z || 1 == c.Z ? a.l.j : a.C,\n d = a.C < d ? d : a.C;\n x(b <= a.l.o);\n if (b > d) {\n var e = a.l.width,\n f = c.ca,\n g = c.tb + e * d,\n h = a.V,\n k = a.Ba + a.c * d,\n l = a.gc;\n x(1 == a.ab);\n x(3 == l[0].hc);\n he(l[0], d, b, h, k, f, g);\n zc(c, d, b, f, g, e);\n }\n a.C = a.Ma = b;\n }\n function Jb(a, b, c, d, e, f, g) {\n var h = a.$ / d,\n k = a.$ % d,\n l = a.m,\n m = a.s,\n n = c + a.$,\n r = n;\n e = c + d * e;\n var q = c + d * f,\n t = 280 + m.ua,\n v = a.Pb ? h : 16777216,\n p = 0 < m.ua ? m.Wa : null,\n u = m.wc,\n w = n < q ? ha(m, k, h) : null;\n x(a.C < f);\n x(q <= e);\n var y = !1;\n a: for (;;) {\n for (; y || n < q; ) {\n var A = 0;\n if (h >= v) {\n var v = a,\n E = n - c;\n x(v.Pb);\n v.wd = v.m;\n v.xd = E;\n 0 < v.s.ua && $b(v.s.Wa, v.s.vb);\n v = h + ie;\n }\n k & u || (w = ha(m, k, h));\n x(null != w);\n w.Qb && ((b[n] = w.qb), (y = !0));\n if (!y)\n if ((Sa(l), w.jc)) {\n var A = l,\n E = b,\n B = n,\n C = w.pd[pb(A) & (xb - 1)];\n x(w.jc);\n 256 > C.g\n ? (qb(A, A.u + C.g), (E[B] = C.value), (A = 0))\n : (qb(A, A.u + C.g - 256), x(256 <= C.value), (A = C.value));\n 0 == A && (y = !0);\n } else A = ua(w.G[0], w.H[0], l);\n if (l.h) break;\n if (y || 256 > A) {\n if (!y)\n if (w.nd) b[n] = (w.qb | (A << 8)) >>> 0;\n else {\n Sa(l);\n y = ua(w.G[1], w.H[1], l);\n Sa(l);\n E = ua(w.G[2], w.H[2], l);\n B = ua(w.G[3], w.H[3], l);\n if (l.h) break;\n b[n] = ((B << 24) | (y << 16) | (A << 8) | E) >>> 0;\n }\n y = !1;\n ++n;\n ++k;\n if (\n k >= d &&\n ((k = 0),\n ++h,\n null != g && h <= f && !(h % 16) && g(a, h),\n null != p)\n )\n for (; r < n; )\n (A = b[r++]),\n (p.X[((506832829 * A) & 4294967295) >>> p.Mb] = A);\n } else if (280 > A) {\n A = ib(A - 256, l);\n E = ua(w.G[4], w.H[4], l);\n Sa(l);\n E = ib(E, l);\n E = nc(d, E);\n if (l.h) break;\n if (n - c < E || e - n < A) break a;\n else for (B = 0; B < A; ++B) b[n + B] = b[n + B - E];\n n += A;\n for (k += A; k >= d; )\n (k -= d), ++h, null != g && h <= f && !(h % 16) && g(a, h);\n x(n <= e);\n k & u && (w = ha(m, k, h));\n if (null != p)\n for (; r < n; )\n (A = b[r++]),\n (p.X[((506832829 * A) & 4294967295) >>> p.Mb] = A);\n } else if (A < t) {\n y = A - 280;\n for (x(null != p); r < n; )\n (A = b[r++]), (p.X[((506832829 * A) & 4294967295) >>> p.Mb] = A);\n A = n;\n E = p;\n x(!(y >>> E.Xa));\n b[A] = E.X[y];\n y = !0;\n } else break a;\n y || x(l.h == db(l));\n }\n if (a.Pb && l.h && n < e)\n x(a.m.h),\n (a.a = 5),\n (a.m = a.wd),\n (a.$ = a.xd),\n 0 < a.s.ua && $b(a.s.vb, a.s.Wa);\n else if (l.h) break a;\n else null != g && g(a, h > f ? f : h), (a.a = 0), (a.$ = n - c);\n return 1;\n }\n a.a = 3;\n return 0;\n }\n function Ac(a) {\n x(null != a);\n a.vc = null;\n a.yc = null;\n a.Ya = null;\n var b = a.Wa;\n null != b && (b.X = null);\n a.vb = null;\n x(null != a);\n }\n function Bc() {\n var a = new je();\n if (null == a) return null;\n a.a = 0;\n a.xb = Cc;\n gb(\"Predictor\", \"VP8LPredictors\");\n gb(\"Predictor\", \"VP8LPredictors_C\");\n gb(\"PredictorAdd\", \"VP8LPredictorsAdd\");\n gb(\"PredictorAdd\", \"VP8LPredictorsAdd_C\");\n pc = Kd;\n Fb = Ld;\n sc = Md;\n Gb = Nd;\n Hb = Od;\n xc = Pd;\n uc = Qd;\n self.VP8LMapColor32b = ke;\n self.VP8LMapColor8b = le;\n return a;\n }\n function rb(a, b, c, d, e) {\n var f = 1,\n g = [a],\n h = [b],\n k = d.m,\n l = d.s,\n m = null,\n n = 0;\n a: for (;;) {\n if (c)\n for (; f && D(k, 1); ) {\n var r = g,\n q = h,\n t = d,\n v = 1,\n p = t.m,\n u = t.gc[t.ab],\n w = D(p, 2);\n if (t.Oc & (1 << w)) f = 0;\n else {\n t.Oc |= 1 << w;\n u.hc = w;\n u.Ea = r[0];\n u.nc = q[0];\n u.K = [null];\n ++t.ab;\n x(4 >= t.ab);\n switch (w) {\n case 0:\n case 1:\n u.b = D(p, 3) + 2;\n v = rb(xa(u.Ea, u.b), xa(u.nc, u.b), 0, t, u.K);\n u.K = u.K[0];\n break;\n case 3:\n var y = D(p, 8) + 1,\n A = 16 < y ? 0 : 4 < y ? 1 : 2 < y ? 2 : 3;\n r[0] = xa(u.Ea, A);\n u.b = A;\n var v = rb(y, 1, 0, t, u.K),\n E;\n if ((E = v)) {\n var B,\n C = y,\n N = u,\n z = 1 << (8 >> N.b),\n Q = V(z);\n if (null == Q) E = 0;\n else {\n var S = N.K[0],\n K = N.w;\n Q[0] = N.K[0][0];\n for (B = 1; B < 1 * C; ++B) Q[B] = yb(S[K + B], Q[B - 1]);\n for (; B < 4 * z; ++B) Q[B] = 0;\n N.K[0] = null;\n N.K[0] = Q;\n E = 1;\n }\n }\n v = E;\n break;\n case 2:\n break;\n default:\n x(0);\n }\n f = v;\n }\n }\n g = g[0];\n h = h[0];\n if (f && D(k, 1) && ((n = D(k, 4)), (f = 1 <= n && 11 >= n), !f)) {\n d.a = 3;\n break a;\n }\n var H;\n if ((H = f))\n b: {\n var F = d,\n G = g,\n L = h,\n J = n,\n T = c,\n Da,\n ba,\n X = F.m,\n R = F.s,\n P = [null],\n U,\n W = 1,\n aa = 0,\n na = me[J];\n c: for (;;) {\n if (T && D(X, 1)) {\n var ca = D(X, 3) + 2,\n ga = xa(G, ca),\n ka = xa(L, ca),\n qa = ga * ka;\n if (!rb(ga, ka, 0, F, P)) break c;\n P = P[0];\n R.xc = ca;\n for (Da = 0; Da < qa; ++Da) {\n var ia = (P[Da] >> 8) & 65535;\n P[Da] = ia;\n ia >= W && (W = ia + 1);\n }\n }\n if (X.h) break c;\n for (ba = 0; 5 > ba; ++ba) {\n var Y = Dc[ba];\n !ba && 0 < J && (Y += 1 << J);\n aa < Y && (aa = Y);\n }\n var ma = wa(W * na, O);\n var ua = W,\n va = wa(ua, Ub);\n if (null == va) var la = null;\n else x(65536 >= ua), (la = va);\n var ha = V(aa);\n if (null == la || null == ha || null == ma) {\n F.a = 1;\n break c;\n }\n var pa = ma;\n for (Da = U = 0; Da < W; ++Da) {\n var ja = la[Da],\n da = ja.G,\n ea = ja.H,\n Fa = 0,\n ra = 1,\n Ha = 0;\n for (ba = 0; 5 > ba; ++ba) {\n Y = Dc[ba];\n da[ba] = pa;\n ea[ba] = U;\n !ba && 0 < J && (Y += 1 << J);\n d: {\n var sa,\n za = Y,\n ta = F,\n oa = ha,\n db = pa,\n eb = U,\n Ia = 0,\n Ka = ta.m,\n fb = D(Ka, 1);\n M(oa, 0, 0, za);\n if (fb) {\n var gb = D(Ka, 1) + 1,\n hb = D(Ka, 1),\n Ja = D(Ka, 0 == hb ? 1 : 8);\n oa[Ja] = 1;\n 2 == gb && ((Ja = D(Ka, 8)), (oa[Ja] = 1));\n var ya = 1;\n } else {\n var Ua = V(19),\n Va = D(Ka, 4) + 4;\n if (19 < Va) {\n ta.a = 3;\n var Aa = 0;\n break d;\n }\n for (sa = 0; sa < Va; ++sa) Ua[ne[sa]] = D(Ka, 3);\n var Ba = void 0,\n sb = void 0,\n Wa = ta,\n ib = Ua,\n Ca = za,\n Xa = oa,\n Oa = 0,\n La = Wa.m,\n Ya = 8,\n Za = wa(128, O);\n e: for (;;) {\n if (!Z(Za, 0, 7, ib, 19)) break e;\n if (D(La, 1)) {\n var kb = 2 + 2 * D(La, 3),\n Ba = 2 + D(La, kb);\n if (Ba > Ca) break e;\n } else Ba = Ca;\n for (sb = 0; sb < Ca && Ba--; ) {\n Sa(La);\n var $a = Za[0 + (pb(La) & 127)];\n qb(La, La.u + $a.g);\n var jb = $a.value;\n if (16 > jb) (Xa[sb++] = jb), 0 != jb && (Ya = jb);\n else {\n var lb = 16 == jb,\n ab = jb - 16,\n mb = oe[ab],\n bb = D(La, pe[ab]) + mb;\n if (sb + bb > Ca) break e;\n else\n for (var nb = lb ? Ya : 0; 0 < bb--; )\n Xa[sb++] = nb;\n }\n }\n Oa = 1;\n break e;\n }\n Oa || (Wa.a = 3);\n ya = Oa;\n }\n (ya = ya && !Ka.h) && (Ia = Z(db, eb, 8, oa, za));\n ya && 0 != Ia ? (Aa = Ia) : ((ta.a = 3), (Aa = 0));\n }\n if (0 == Aa) break c;\n ra && 1 == qe[ba] && (ra = 0 == pa[U].g);\n Fa += pa[U].g;\n U += Aa;\n if (3 >= ba) {\n var Pa = ha[0],\n tb;\n for (tb = 1; tb < Y; ++tb) ha[tb] > Pa && (Pa = ha[tb]);\n Ha += Pa;\n }\n }\n ja.nd = ra;\n ja.Qb = 0;\n ra &&\n ((ja.qb =\n ((da[3][ea[3] + 0].value << 24) |\n (da[1][ea[1] + 0].value << 16) |\n da[2][ea[2] + 0].value) >>>\n 0),\n 0 == Fa &&\n 256 > da[0][ea[0] + 0].value &&\n ((ja.Qb = 1), (ja.qb += da[0][ea[0] + 0].value << 8)));\n ja.jc = !ja.Qb && 6 > Ha;\n if (ja.jc) {\n var Ga,\n Ea = ja;\n for (Ga = 0; Ga < xb; ++Ga) {\n var Ma = Ga,\n Na = Ea.pd[Ma],\n vb = Ea.G[0][Ea.H[0] + Ma];\n 256 <= vb.value\n ? ((Na.g = vb.g + 256), (Na.value = vb.value))\n : ((Na.g = 0),\n (Na.value = 0),\n (Ma >>= ub(vb, 8, Na)),\n (Ma >>= ub(Ea.G[1][Ea.H[1] + Ma], 16, Na)),\n (Ma >>= ub(Ea.G[2][Ea.H[2] + Ma], 0, Na)),\n ub(Ea.G[3][Ea.H[3] + Ma], 24, Na));\n }\n }\n }\n R.vc = P;\n R.Wb = W;\n R.Ya = la;\n R.yc = ma;\n H = 1;\n break b;\n }\n H = 0;\n }\n f = H;\n if (!f) {\n d.a = 3;\n break a;\n }\n if (0 < n) {\n if (((l.ua = 1 << n), !Zb(l.Wa, n))) {\n d.a = 1;\n f = 0;\n break a;\n }\n } else l.ua = 0;\n var Qa = d,\n cb = g,\n ob = h,\n Ra = Qa.s,\n Ta = Ra.xc;\n Qa.c = cb;\n Qa.i = ob;\n Ra.md = xa(cb, Ta);\n Ra.wc = 0 == Ta ? -1 : (1 << Ta) - 1;\n if (c) {\n d.xb = re;\n break a;\n }\n m = V(g * h);\n if (null == m) {\n d.a = 1;\n f = 0;\n break a;\n }\n f = (f = Jb(d, m, 0, g, h, h, null)) && !k.h;\n break a;\n }\n f\n ? (null != e ? (e[0] = m) : (x(null == m), x(c)), (d.$ = 0), c || Ac(l))\n : Ac(l);\n return f;\n }\n function Ec(a, b) {\n var c = a.c * a.i,\n d = c + b + 16 * b;\n x(a.c <= b);\n a.V = V(d);\n if (null == a.V) return (a.Ta = null), (a.Ua = 0), (a.a = 1), 0;\n a.Ta = a.V;\n a.Ua = a.Ba + c + b;\n return 1;\n }\n function se(a, b) {\n var c = a.C,\n d = b - c,\n e = a.V,\n f = a.Ba + a.c * c;\n for (x(b <= a.l.o); 0 < d; ) {\n var g = 16 < d ? 16 : d,\n h = a.l.ma,\n k = a.l.width,\n l = k * g,\n m = h.ca,\n n = h.tb + k * c,\n r = a.Ta,\n q = a.Ua;\n oc(a, g, e, f);\n Fc(r, q, m, n, l);\n zc(h, c, c + g, m, n, k);\n d -= g;\n e += g * a.c;\n c += g;\n }\n x(c == b);\n a.C = a.Ma = b;\n }\n function te(a, b) {\n var c = [0],\n d = [0],\n e = [0];\n a: for (;;) {\n if (null == a) return 0;\n if (null == b) return (a.a = 2), 0;\n a.l = b;\n a.a = 0;\n cb(a.m, b.data, b.w, b.ha);\n if (!mc(a.m, c, d, e)) {\n a.a = 3;\n break a;\n }\n a.xb = Cc;\n b.width = c[0];\n b.height = d[0];\n if (!rb(c[0], d[0], 1, a, null)) break a;\n return 1;\n }\n x(0 != a.a);\n return 0;\n }\n function ue() {\n this.ub = this.yd = this.td = this.Rb = 0;\n }\n function ve() {\n this.Kd = this.Ld = this.Ud = this.Td = this.i = this.c = 0;\n }\n function we() {\n this.Fb = this.Bb = this.Cb = 0;\n this.Zb = V(4);\n this.Lb = V(4);\n }\n function Gc() {\n this.Yb = wb();\n }\n function xe() {\n this.jb = V(3);\n this.Wc = Ed([4, 8], Gc);\n this.Xc = Ed([4, 17], Gc);\n }\n function ye() {\n this.Pc = this.wb = this.Tb = this.zd = 0;\n this.vd = new V(4);\n this.od = new V(4);\n }\n function Xa() {\n this.ld = this.La = this.dd = this.tc = 0;\n }\n function Hc() {\n this.Na = this.la = 0;\n }\n function ze() {\n this.Sc = [0, 0];\n this.Eb = [0, 0];\n this.Qc = [0, 0];\n this.ia = this.lc = 0;\n }\n function Kb() {\n this.ad = V(384);\n this.Za = 0;\n this.Ob = V(16);\n this.$b = this.Ad = this.ia = this.Gc = this.Hc = this.Dd = 0;\n }\n function Ae() {\n this.uc = this.M = this.Nb = 0;\n this.wa = Array(new Xa());\n this.Y = 0;\n this.ya = Array(new Kb());\n this.aa = 0;\n this.l = new Oa();\n }\n function Ic() {\n this.y = V(16);\n this.f = V(8);\n this.ea = V(8);\n }\n function Be() {\n this.cb = this.a = 0;\n this.sc = \"\";\n this.m = new Wb();\n this.Od = new ue();\n this.Kc = new ve();\n this.ed = new ye();\n this.Qa = new we();\n this.Ic = this.$c = this.Aa = 0;\n this.D = new Ae();\n this.Xb = this.Va = this.Hb = this.zb = this.yb = this.Ub = this.za = 0;\n this.Jc = wa(8, Wb);\n this.ia = 0;\n new F();\n this.pb = wa(4, ze);\n this.Pa = new xe();\n this.Bd = this.kc = 0;\n this.Ac = [];\n this.Bc = 0;\n this.zc = [0, 0, 0, 0];\n this.Gd = Array(new Ic());\n this.Hd = 0;\n this.rb = Array(new Hc());\n this.sb = 0;\n this.wa = Array(new Xa());\n this.Y = 0;\n this.oc = [];\n this.pc = 0;\n this.sa = [];\n this.ta = 0;\n this.qa = [];\n this.ra = 0;\n this.Ha = [];\n this.B = this.R = this.Ia = 0;\n this.Ec = [];\n this.M = this.ja = this.Vb = this.Fc = 0;\n this.ya = Array(new Kb());\n this.L = this.aa = 0;\n this.gd = Ed([4, 2], Xa);\n this.ga = null;\n this.Fa = [];\n this.Cc = this.qc = this.P = 0;\n this.Gb = [];\n this.Uc = 0;\n this.mb = [];\n this.nb = 0;\n this.rc = [];\n this.Ga = this.Vc = 0;\n }\n function ga(a, b) {\n return 0 > a ? 0 : a > b ? b : a;\n }\n function Oa() {\n this.T = this.U = this.ka = this.height = this.width = 0;\n this.y = [];\n this.f = [];\n this.ea = [];\n this.Rc = this.fa = this.W = this.N = this.O = 0;\n this.ma = \"void\";\n this.put = \"VP8IoPutHook\";\n this.ac = \"VP8IoSetupHook\";\n this.bc = \"VP8IoTeardownHook\";\n this.ha = this.Kb = 0;\n this.data = [];\n this.hb = this.ib = this.da = this.o = this.j = this.va = this.v = this.Da = this.ob = this.w = 0;\n this.F = [];\n this.J = 0;\n }\n function Ce() {\n var a = new Be();\n null != a &&\n ((a.a = 0), (a.sc = \"OK\"), (a.cb = 0), (a.Xb = 0), oa || (oa = De));\n return a;\n }\n function T(a, b, c) {\n 0 == a.a && ((a.a = b), (a.sc = c), (a.cb = 0));\n return 0;\n }\n function Jc(a, b, c) {\n return 3 <= c && 157 == a[b + 0] && 1 == a[b + 1] && 42 == a[b + 2];\n }\n function Kc(a, b) {\n if (null == a) return 0;\n a.a = 0;\n a.sc = \"OK\";\n if (null == b) return T(a, 2, \"null VP8Io passed to VP8GetHeaders()\");\n var c = b.data;\n var d = b.w;\n var e = b.ha;\n if (4 > e) return T(a, 7, \"Truncated header.\");\n var f = c[d + 0] | (c[d + 1] << 8) | (c[d + 2] << 16);\n var g = a.Od;\n g.Rb = !(f & 1);\n g.td = (f >> 1) & 7;\n g.yd = (f >> 4) & 1;\n g.ub = f >> 5;\n if (3 < g.td) return T(a, 3, \"Incorrect keyframe parameters.\");\n if (!g.yd) return T(a, 4, \"Frame not displayable.\");\n d += 3;\n e -= 3;\n var h = a.Kc;\n if (g.Rb) {\n if (7 > e) return T(a, 7, \"cannot parse picture header\");\n if (!Jc(c, d, e)) return T(a, 3, \"Bad code word\");\n h.c = ((c[d + 4] << 8) | c[d + 3]) & 16383;\n h.Td = c[d + 4] >> 6;\n h.i = ((c[d + 6] << 8) | c[d + 5]) & 16383;\n h.Ud = c[d + 6] >> 6;\n d += 7;\n e -= 7;\n a.za = (h.c + 15) >> 4;\n a.Ub = (h.i + 15) >> 4;\n b.width = h.c;\n b.height = h.i;\n b.Da = 0;\n b.j = 0;\n b.v = 0;\n b.va = b.width;\n b.o = b.height;\n b.da = 0;\n b.ib = b.width;\n b.hb = b.height;\n b.U = b.width;\n b.T = b.height;\n f = a.Pa;\n M(f.jb, 0, 255, f.jb.length);\n f = a.Qa;\n x(null != f);\n f.Cb = 0;\n f.Bb = 0;\n f.Fb = 1;\n M(f.Zb, 0, 0, f.Zb.length);\n M(f.Lb, 0, 0, f.Lb);\n }\n if (g.ub > e) return T(a, 7, \"bad partition length\");\n f = a.m;\n ma(f, c, d, g.ub);\n d += g.ub;\n e -= g.ub;\n g.Rb && ((h.Ld = G(f)), (h.Kd = G(f)));\n h = a.Qa;\n var k = a.Pa,\n l;\n x(null != f);\n x(null != h);\n h.Cb = G(f);\n if (h.Cb) {\n h.Bb = G(f);\n if (G(f)) {\n h.Fb = G(f);\n for (l = 0; 4 > l; ++l) h.Zb[l] = G(f) ? ca(f, 7) : 0;\n for (l = 0; 4 > l; ++l) h.Lb[l] = G(f) ? ca(f, 6) : 0;\n }\n if (h.Bb) for (l = 0; 3 > l; ++l) k.jb[l] = G(f) ? na(f, 8) : 255;\n } else h.Bb = 0;\n if (f.Ka) return T(a, 3, \"cannot parse segment header\");\n h = a.ed;\n h.zd = G(f);\n h.Tb = na(f, 6);\n h.wb = na(f, 3);\n h.Pc = G(f);\n if (h.Pc && G(f)) {\n for (k = 0; 4 > k; ++k) G(f) && (h.vd[k] = ca(f, 6));\n for (k = 0; 4 > k; ++k) G(f) && (h.od[k] = ca(f, 6));\n }\n a.L = 0 == h.Tb ? 0 : h.zd ? 1 : 2;\n if (f.Ka) return T(a, 3, \"cannot parse filter header\");\n l = d;\n var m = e;\n e = l;\n d = l + m;\n h = m;\n a.Xb = (1 << na(a.m, 2)) - 1;\n k = a.Xb;\n if (m < 3 * k) c = 7;\n else {\n l += 3 * k;\n h -= 3 * k;\n for (m = 0; m < k; ++m) {\n var n = c[e + 0] | (c[e + 1] << 8) | (c[e + 2] << 16);\n n > h && (n = h);\n ma(a.Jc[+m], c, l, n);\n l += n;\n h -= n;\n e += 3;\n }\n ma(a.Jc[+k], c, l, h);\n c = l < d ? 0 : 5;\n }\n if (0 != c) return T(a, c, \"cannot parse partitions\");\n l = a.m;\n c = na(l, 7);\n e = G(l) ? ca(l, 4) : 0;\n d = G(l) ? ca(l, 4) : 0;\n h = G(l) ? ca(l, 4) : 0;\n k = G(l) ? ca(l, 4) : 0;\n l = G(l) ? ca(l, 4) : 0;\n m = a.Qa;\n for (n = 0; 4 > n; ++n) {\n if (m.Cb) {\n var r = m.Zb[n];\n m.Fb || (r += c);\n } else if (0 < n) {\n a.pb[n] = a.pb[0];\n continue;\n } else r = c;\n var q = a.pb[n];\n q.Sc[0] = Lb[ga(r + e, 127)];\n q.Sc[1] = Mb[ga(r + 0, 127)];\n q.Eb[0] = 2 * Lb[ga(r + d, 127)];\n q.Eb[1] = (101581 * Mb[ga(r + h, 127)]) >> 16;\n 8 > q.Eb[1] && (q.Eb[1] = 8);\n q.Qc[0] = Lb[ga(r + k, 117)];\n q.Qc[1] = Mb[ga(r + l, 127)];\n q.lc = r + l;\n }\n if (!g.Rb) return T(a, 4, \"Not a key frame.\");\n G(f);\n g = a.Pa;\n for (c = 0; 4 > c; ++c) {\n for (e = 0; 8 > e; ++e)\n for (d = 0; 3 > d; ++d)\n for (h = 0; 11 > h; ++h)\n (k = K(f, Ee[c][e][d][h]) ? na(f, 8) : Fe[c][e][d][h]),\n (g.Wc[c][e].Yb[d][h] = k);\n for (e = 0; 17 > e; ++e) g.Xc[c][e] = g.Wc[c][Ge[e]];\n }\n a.kc = G(f);\n a.kc && (a.Bd = na(f, 8));\n return (a.cb = 1);\n }\n function De(a, b, c, d, e, f, g) {\n var h = b[e].Yb[c];\n for (c = 0; 16 > e; ++e) {\n if (!K(a, h[c + 0])) return e;\n for (; !K(a, h[c + 1]); )\n if (((h = b[++e].Yb[0]), (c = 0), 16 == e)) return 16;\n var k = b[e + 1].Yb;\n if (K(a, h[c + 2])) {\n var l = a,\n m = h,\n n = c;\n var r = 0;\n if (K(l, m[n + 3]))\n if (K(l, m[n + 6])) {\n h = 0;\n r = K(l, m[n + 8]);\n m = K(l, m[n + 9 + r]);\n n = 2 * r + m;\n r = 0;\n for (m = He[n]; m[h]; ++h) r += r + K(l, m[h]);\n r += 3 + (8 << n);\n } else\n K(l, m[n + 7])\n ? ((r = 7 + 2 * K(l, 165)), (r += K(l, 145)))\n : (r = 5 + K(l, 159));\n else K(l, m[n + 4]) ? (r = 3 + K(l, m[n + 5])) : (r = 2);\n h = k[2];\n } else (r = 1), (h = k[1]);\n k = g + Ie[e];\n l = a;\n 0 > l.b && Qa(l);\n var m = l.b,\n n = l.Ca >> 1,\n q = (n - (l.I >> m)) >> 31;\n --l.b;\n l.Ca += q;\n l.Ca |= 1;\n l.I -= ((n + 1) & q) << m;\n f[k] = ((r ^ q) - q) * d[(0 < e) + 0];\n }\n return 16;\n }\n function Lc(a) {\n var b = a.rb[a.sb - 1];\n b.la = 0;\n b.Na = 0;\n M(a.zc, 0, 0, a.zc.length);\n a.ja = 0;\n }\n function Je(a, b) {\n for (a.M = 0; a.M < a.Va; ++a.M) {\n var c = a.Jc[a.M & a.Xb],\n d = a.m,\n e = a,\n f;\n for (f = 0; f < e.za; ++f) {\n var g = d;\n var h = e;\n var k = h.Ac,\n l = h.Bc + 4 * f,\n m = h.zc,\n n = h.ya[h.aa + f];\n h.Qa.Bb\n ? (n.$b = K(g, h.Pa.jb[0])\n ? 2 + K(g, h.Pa.jb[2])\n : K(g, h.Pa.jb[1]))\n : (n.$b = 0);\n h.kc && (n.Ad = K(g, h.Bd));\n n.Za = !K(g, 145) + 0;\n if (n.Za) {\n var r = n.Ob,\n q = 0;\n for (h = 0; 4 > h; ++h) {\n var t = m[0 + h];\n var v;\n for (v = 0; 4 > v; ++v) {\n t = Ke[k[l + v]][t];\n for (var p = Mc[K(g, t[0])]; 0 < p; )\n p = Mc[2 * p + K(g, t[p])];\n t = -p;\n k[l + v] = t;\n }\n I(r, q, k, l, 4);\n q += 4;\n m[0 + h] = t;\n }\n } else\n (t = K(g, 156) ? (K(g, 128) ? 1 : 3) : K(g, 163) ? 2 : 0),\n (n.Ob[0] = t),\n M(k, l, t, 4),\n M(m, 0, t, 4);\n n.Dd = K(g, 142) ? (K(g, 114) ? (K(g, 183) ? 1 : 3) : 2) : 0;\n }\n if (e.m.Ka) return T(a, 7, \"Premature end-of-partition0 encountered.\");\n for (; a.ja < a.za; ++a.ja) {\n d = a;\n e = c;\n g = d.rb[d.sb - 1];\n k = d.rb[d.sb + d.ja];\n f = d.ya[d.aa + d.ja];\n if ((l = d.kc ? f.Ad : 0))\n (g.la = k.la = 0),\n f.Za || (g.Na = k.Na = 0),\n (f.Hc = 0),\n (f.Gc = 0),\n (f.ia = 0);\n else {\n var u,\n w,\n g = k,\n k = e,\n l = d.Pa.Xc,\n m = d.ya[d.aa + d.ja],\n n = d.pb[m.$b];\n h = m.ad;\n r = 0;\n q = d.rb[d.sb - 1];\n t = v = 0;\n M(h, r, 0, 384);\n if (m.Za) {\n var y = 0;\n var A = l[3];\n } else {\n p = V(16);\n var E = g.Na + q.Na;\n E = oa(k, l[1], E, n.Eb, 0, p, 0);\n g.Na = q.Na = (0 < E) + 0;\n if (1 < E) Nc(p, 0, h, r);\n else {\n var B = (p[0] + 3) >> 3;\n for (p = 0; 256 > p; p += 16) h[r + p] = B;\n }\n y = 1;\n A = l[0];\n }\n var C = g.la & 15;\n var N = q.la & 15;\n for (p = 0; 4 > p; ++p) {\n var z = N & 1;\n for (B = w = 0; 4 > B; ++B)\n (E = z + (C & 1)),\n (E = oa(k, A, E, n.Sc, y, h, r)),\n (z = E > y),\n (C = (C >> 1) | (z << 7)),\n (w = (w << 2) | (3 < E ? 3 : 1 < E ? 2 : 0 != h[r + 0])),\n (r += 16);\n C >>= 4;\n N = (N >> 1) | (z << 7);\n v = ((v << 8) | w) >>> 0;\n }\n A = C;\n y = N >> 4;\n for (u = 0; 4 > u; u += 2) {\n w = 0;\n C = g.la >> (4 + u);\n N = q.la >> (4 + u);\n for (p = 0; 2 > p; ++p) {\n z = N & 1;\n for (B = 0; 2 > B; ++B)\n (E = z + (C & 1)),\n (E = oa(k, l[2], E, n.Qc, 0, h, r)),\n (z = 0 < E),\n (C = (C >> 1) | (z << 3)),\n (w = (w << 2) | (3 < E ? 3 : 1 < E ? 2 : 0 != h[r + 0])),\n (r += 16);\n C >>= 2;\n N = (N >> 1) | (z << 5);\n }\n t |= w << (4 * u);\n A |= (C << 4) << u;\n y |= (N & 240) << u;\n }\n g.la = A;\n q.la = y;\n m.Hc = v;\n m.Gc = t;\n m.ia = t & 43690 ? 0 : n.ia;\n l = !(v | t);\n }\n 0 < d.L &&\n ((d.wa[d.Y + d.ja] = d.gd[f.$b][f.Za]),\n (d.wa[d.Y + d.ja].La |= !l));\n if (e.Ka) return T(a, 7, \"Premature end-of-file encountered.\");\n }\n Lc(a);\n c = a;\n d = b;\n e = 1;\n f = c.D;\n g = 0 < c.L && c.M >= c.zb && c.M <= c.Va;\n if (0 == c.Aa)\n a: {\n (f.M = c.M), (f.uc = g), Oc(c, f), (e = 1);\n w = c.D;\n f = w.Nb;\n t = Ya[c.L];\n g = t * c.R;\n k = (t / 2) * c.B;\n p = 16 * f * c.R;\n B = 8 * f * c.B;\n l = c.sa;\n m = c.ta - g + p;\n n = c.qa;\n h = c.ra - k + B;\n r = c.Ha;\n q = c.Ia - k + B;\n C = w.M;\n N = 0 == C;\n v = C >= c.Va - 1;\n 2 == c.Aa && Oc(c, w);\n if (w.uc)\n for (E = c, z = E.D.M, x(E.D.uc), w = E.yb; w < E.Hb; ++w) {\n var Q = E;\n y = w;\n A = z;\n var S = Q.D,\n D = S.Nb;\n u = Q.R;\n var S = S.wa[S.Y + y],\n F = Q.sa,\n H = Q.ta + 16 * D * u + 16 * y,\n J = S.dd,\n G = S.tc;\n if (0 != G)\n if ((x(3 <= G), 1 == Q.L))\n 0 < y && Pc(F, H, u, G + 4),\n S.La && Qc(F, H, u, G),\n 0 < A && Rc(F, H, u, G + 4),\n S.La && Sc(F, H, u, G);\n else {\n var L = Q.B,\n O = Q.qa,\n P = Q.ra + 8 * D * L + 8 * y,\n R = Q.Ha,\n Q = Q.Ia + 8 * D * L + 8 * y,\n D = S.ld;\n 0 < y &&\n (Tc(F, H, u, G + 4, J, D),\n Uc(O, P, R, Q, L, G + 4, J, D));\n S.La && (Vc(F, H, u, G, J, D), Wc(O, P, R, Q, L, G, J, D));\n 0 < A &&\n (Xc(F, H, u, G + 4, J, D),\n Yc(O, P, R, Q, L, G + 4, J, D));\n S.La && (Zc(F, H, u, G, J, D), $c(O, P, R, Q, L, G, J, D));\n }\n }\n c.ia && alert(\"todo:DitherRow\");\n if (null != d.put) {\n w = 16 * C;\n C = 16 * (C + 1);\n N\n ? ((d.y = c.sa),\n (d.O = c.ta + p),\n (d.f = c.qa),\n (d.N = c.ra + B),\n (d.ea = c.Ha),\n (d.W = c.Ia + B))\n : ((w -= t),\n (d.y = l),\n (d.O = m),\n (d.f = n),\n (d.N = h),\n (d.ea = r),\n (d.W = q));\n v || (C -= t);\n C > d.o && (C = d.o);\n d.F = null;\n d.J = null;\n if (\n null != c.Fa &&\n 0 < c.Fa.length &&\n w < C &&\n ((d.J = Le(c, d, w, C - w)),\n (d.F = c.mb),\n null == d.F && 0 == d.F.length)\n ) {\n e = T(c, 3, \"Could not decode alpha data.\");\n break a;\n }\n w < d.j &&\n ((t = d.j - w),\n (w = d.j),\n x(!(t & 1)),\n (d.O += c.R * t),\n (d.N += c.B * (t >> 1)),\n (d.W += c.B * (t >> 1)),\n null != d.F && (d.J += d.width * t));\n w < C &&\n ((d.O += d.v),\n (d.N += d.v >> 1),\n (d.W += d.v >> 1),\n null != d.F && (d.J += d.v),\n (d.ka = w - d.j),\n (d.U = d.va - d.v),\n (d.T = C - w),\n (e = d.put(d)));\n }\n f + 1 != c.Ic ||\n v ||\n (I(c.sa, c.ta - g, l, m + 16 * c.R, g),\n I(c.qa, c.ra - k, n, h + 8 * c.B, k),\n I(c.Ha, c.Ia - k, r, q + 8 * c.B, k));\n }\n if (!e) return T(a, 6, \"Output aborted.\");\n }\n return 1;\n }\n function Me(a, b) {\n if (null == a) return 0;\n if (null == b) return T(a, 2, \"NULL VP8Io parameter in VP8Decode().\");\n if (!a.cb && !Kc(a, b)) return 0;\n x(a.cb);\n if (null == b.ac || b.ac(b)) {\n b.ob && (a.L = 0);\n var c = Ya[a.L];\n 2 == a.L\n ? ((a.yb = 0), (a.zb = 0))\n : ((a.yb = (b.v - c) >> 4),\n (a.zb = (b.j - c) >> 4),\n 0 > a.yb && (a.yb = 0),\n 0 > a.zb && (a.zb = 0));\n a.Va = (b.o + 15 + c) >> 4;\n a.Hb = (b.va + 15 + c) >> 4;\n a.Hb > a.za && (a.Hb = a.za);\n a.Va > a.Ub && (a.Va = a.Ub);\n if (0 < a.L) {\n var d = a.ed;\n for (c = 0; 4 > c; ++c) {\n var e;\n if (a.Qa.Cb) {\n var f = a.Qa.Lb[c];\n a.Qa.Fb || (f += d.Tb);\n } else f = d.Tb;\n for (e = 0; 1 >= e; ++e) {\n var g = a.gd[c][e],\n h = f;\n d.Pc && ((h += d.vd[0]), e && (h += d.od[0]));\n h = 0 > h ? 0 : 63 < h ? 63 : h;\n if (0 < h) {\n var k = h;\n 0 < d.wb &&\n ((k = 4 < d.wb ? k >> 2 : k >> 1),\n k > 9 - d.wb && (k = 9 - d.wb));\n 1 > k && (k = 1);\n g.dd = k;\n g.tc = 2 * h + k;\n g.ld = 40 <= h ? 2 : 15 <= h ? 1 : 0;\n } else g.tc = 0;\n g.La = e;\n }\n }\n }\n c = 0;\n } else T(a, 6, \"Frame setup failed\"), (c = a.a);\n if ((c = 0 == c)) {\n if (c) {\n a.$c = 0;\n 0 < a.Aa || (a.Ic = Ne);\n b: {\n c = a.Ic;\n var k = a.za,\n d = 4 * k,\n l = 32 * k,\n m = k + 1,\n n = 0 < a.L ? k * (0 < a.Aa ? 2 : 1) : 0,\n r = (2 == a.Aa ? 2 : 1) * k;\n e = ((3 * (16 * c + Ya[a.L])) / 2) * l;\n f = null != a.Fa && 0 < a.Fa.length ? a.Kc.c * a.Kc.i : 0;\n g = d + 832 + e + f;\n if (g != g) c = 0;\n else {\n if (g > a.Vb) {\n a.Vb = 0;\n a.Ec = V(g);\n a.Fc = 0;\n if (null == a.Ec) {\n c = T(a, 1, \"no memory during frame initialization.\");\n break b;\n }\n a.Vb = g;\n }\n g = a.Ec;\n h = a.Fc;\n a.Ac = g;\n a.Bc = h;\n h += d;\n a.Gd = wa(l, Ic);\n a.Hd = 0;\n a.rb = wa(m + 1, Hc);\n a.sb = 1;\n a.wa = n ? wa(n, Xa) : null;\n a.Y = 0;\n a.D.Nb = 0;\n a.D.wa = a.wa;\n a.D.Y = a.Y;\n 0 < a.Aa && (a.D.Y += k);\n x(!0);\n a.oc = g;\n a.pc = h;\n h += 832;\n a.ya = wa(r, Kb);\n a.aa = 0;\n a.D.ya = a.ya;\n a.D.aa = a.aa;\n 2 == a.Aa && (a.D.aa += k);\n a.R = 16 * k;\n a.B = 8 * k;\n l = Ya[a.L];\n k = l * a.R;\n l = (l / 2) * a.B;\n a.sa = g;\n a.ta = h + k;\n a.qa = a.sa;\n a.ra = a.ta + 16 * c * a.R + l;\n a.Ha = a.qa;\n a.Ia = a.ra + 8 * c * a.B + l;\n a.$c = 0;\n h += e;\n a.mb = f ? g : null;\n a.nb = f ? h : null;\n x(h + f <= a.Fc + a.Vb);\n Lc(a);\n M(a.Ac, a.Bc, 0, d);\n c = 1;\n }\n }\n if (c) {\n b.ka = 0;\n b.y = a.sa;\n b.O = a.ta;\n b.f = a.qa;\n b.N = a.ra;\n b.ea = a.Ha;\n b.Vd = a.Ia;\n b.fa = a.R;\n b.Rc = a.B;\n b.F = null;\n b.J = 0;\n if (!ad) {\n for (c = -255; 255 >= c; ++c) bd[255 + c] = 0 > c ? -c : c;\n for (c = -1020; 1020 >= c; ++c)\n cd[1020 + c] = -128 > c ? -128 : 127 < c ? 127 : c;\n for (c = -112; 112 >= c; ++c)\n dd[112 + c] = -16 > c ? -16 : 15 < c ? 15 : c;\n for (c = -255; 510 >= c; ++c)\n ed[255 + c] = 0 > c ? 0 : 255 < c ? 255 : c;\n ad = 1;\n }\n Nc = Oe;\n Za = Pe;\n Nb = Qe;\n pa = Re;\n Ob = Se;\n fd = Te;\n Xc = Ue;\n Tc = Ve;\n Yc = We;\n Uc = Xe;\n Zc = Ye;\n Vc = Ze;\n $c = $e;\n Wc = af;\n Rc = gd;\n Pc = hd;\n Sc = bf;\n Qc = cf;\n W[0] = df;\n W[1] = ef;\n W[2] = ff;\n W[3] = gf;\n W[4] = hf;\n W[5] = jf;\n W[6] = kf;\n W[7] = lf;\n W[8] = mf;\n W[9] = nf;\n Y[0] = of;\n Y[1] = pf;\n Y[2] = qf;\n Y[3] = rf;\n Y[4] = sf;\n Y[5] = tf;\n Y[6] = uf;\n ka[0] = vf;\n ka[1] = wf;\n ka[2] = xf;\n ka[3] = yf;\n ka[4] = zf;\n ka[5] = Af;\n ka[6] = Bf;\n c = 1;\n } else c = 0;\n }\n c && (c = Je(a, b));\n null != b.bc && b.bc(b);\n c &= 1;\n }\n if (!c) return 0;\n a.cb = 0;\n return c;\n }\n function qa(a, b, c, d, e) {\n e = a[b + c + 32 * d] + (e >> 3);\n a[b + c + 32 * d] = e & -256 ? (0 > e ? 0 : 255) : e;\n }\n function kb(a, b, c, d, e, f) {\n qa(a, b, 0, c, d + e);\n qa(a, b, 1, c, d + f);\n qa(a, b, 2, c, d - f);\n qa(a, b, 3, c, d - e);\n }\n function da(a) {\n return ((20091 * a) >> 16) + a;\n }\n function id(a, b, c, d) {\n var e = 0,\n f;\n var g = V(16);\n for (f = 0; 4 > f; ++f) {\n var h = a[b + 0] + a[b + 8];\n var k = a[b + 0] - a[b + 8];\n var l = ((35468 * a[b + 4]) >> 16) - da(a[b + 12]);\n var m = da(a[b + 4]) + ((35468 * a[b + 12]) >> 16);\n g[e + 0] = h + m;\n g[e + 1] = k + l;\n g[e + 2] = k - l;\n g[e + 3] = h - m;\n e += 4;\n b++;\n }\n for (f = e = 0; 4 > f; ++f)\n (a = g[e + 0] + 4),\n (h = a + g[e + 8]),\n (k = a - g[e + 8]),\n (l = ((35468 * g[e + 4]) >> 16) - da(g[e + 12])),\n (m = da(g[e + 4]) + ((35468 * g[e + 12]) >> 16)),\n qa(c, d, 0, 0, h + m),\n qa(c, d, 1, 0, k + l),\n qa(c, d, 2, 0, k - l),\n qa(c, d, 3, 0, h - m),\n e++,\n (d += 32);\n }\n function Te(a, b, c, d) {\n var e = a[b + 0] + 4,\n f = (35468 * a[b + 4]) >> 16,\n g = da(a[b + 4]),\n h = (35468 * a[b + 1]) >> 16;\n a = da(a[b + 1]);\n kb(c, d, 0, e + g, a, h);\n kb(c, d, 1, e + f, a, h);\n kb(c, d, 2, e - f, a, h);\n kb(c, d, 3, e - g, a, h);\n }\n function Pe(a, b, c, d, e) {\n id(a, b, c, d);\n e && id(a, b + 16, c, d + 4);\n }\n function Qe(a, b, c, d) {\n Za(a, b + 0, c, d, 1);\n Za(a, b + 32, c, d + 128, 1);\n }\n function Re(a, b, c, d) {\n a = a[b + 0] + 4;\n var e;\n for (e = 0; 4 > e; ++e) for (b = 0; 4 > b; ++b) qa(c, d, b, e, a);\n }\n function Se(a, b, c, d) {\n a[b + 0] && pa(a, b + 0, c, d);\n a[b + 16] && pa(a, b + 16, c, d + 4);\n a[b + 32] && pa(a, b + 32, c, d + 128);\n a[b + 48] && pa(a, b + 48, c, d + 128 + 4);\n }\n function Oe(a, b, c, d) {\n var e = V(16),\n f;\n for (f = 0; 4 > f; ++f) {\n var g = a[b + 0 + f] + a[b + 12 + f];\n var h = a[b + 4 + f] + a[b + 8 + f];\n var k = a[b + 4 + f] - a[b + 8 + f];\n var l = a[b + 0 + f] - a[b + 12 + f];\n e[0 + f] = g + h;\n e[8 + f] = g - h;\n e[4 + f] = l + k;\n e[12 + f] = l - k;\n }\n for (f = 0; 4 > f; ++f)\n (a = e[0 + 4 * f] + 3),\n (g = a + e[3 + 4 * f]),\n (h = e[1 + 4 * f] + e[2 + 4 * f]),\n (k = e[1 + 4 * f] - e[2 + 4 * f]),\n (l = a - e[3 + 4 * f]),\n (c[d + 0] = (g + h) >> 3),\n (c[d + 16] = (l + k) >> 3),\n (c[d + 32] = (g - h) >> 3),\n (c[d + 48] = (l - k) >> 3),\n (d += 64);\n }\n function Pb(a, b, c) {\n var d = b - 32,\n e = R,\n f = 255 - a[d - 1],\n g;\n for (g = 0; g < c; ++g) {\n var h = e,\n k = f + a[b - 1],\n l;\n for (l = 0; l < c; ++l) a[b + l] = h[k + a[d + l]];\n b += 32;\n }\n }\n function ef(a, b) {\n Pb(a, b, 4);\n }\n function wf(a, b) {\n Pb(a, b, 8);\n }\n function pf(a, b) {\n Pb(a, b, 16);\n }\n function qf(a, b) {\n var c;\n for (c = 0; 16 > c; ++c) I(a, b + 32 * c, a, b - 32, 16);\n }\n function rf(a, b) {\n var c;\n for (c = 16; 0 < c; --c) M(a, b, a[b - 1], 16), (b += 32);\n }\n function $a(a, b, c) {\n var d;\n for (d = 0; 16 > d; ++d) M(b, c + 32 * d, a, 16);\n }\n function of(a, b) {\n var c = 16,\n d;\n for (d = 0; 16 > d; ++d) c += a[b - 1 + 32 * d] + a[b + d - 32];\n $a(c >> 5, a, b);\n }\n function sf(a, b) {\n var c = 8,\n d;\n for (d = 0; 16 > d; ++d) c += a[b - 1 + 32 * d];\n $a(c >> 4, a, b);\n }\n function tf(a, b) {\n var c = 8,\n d;\n for (d = 0; 16 > d; ++d) c += a[b + d - 32];\n $a(c >> 4, a, b);\n }\n function uf(a, b) {\n $a(128, a, b);\n }\n function z(a, b, c) {\n return (a + 2 * b + c + 2) >> 2;\n }\n function ff(a, b) {\n var c = b - 32,\n c = new Uint8Array([\n z(a[c - 1], a[c + 0], a[c + 1]),\n z(a[c + 0], a[c + 1], a[c + 2]),\n z(a[c + 1], a[c + 2], a[c + 3]),\n z(a[c + 2], a[c + 3], a[c + 4])\n ]),\n d;\n for (d = 0; 4 > d; ++d) I(a, b + 32 * d, c, 0, c.length);\n }\n function gf(a, b) {\n var c = a[b - 1],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 + 96];\n ra(a, b + 0, 16843009 * z(a[b - 1 - 32], c, d));\n ra(a, b + 32, 16843009 * z(c, d, e));\n ra(a, b + 64, 16843009 * z(d, e, f));\n ra(a, b + 96, 16843009 * z(e, f, f));\n }\n function df(a, b) {\n var c = 4,\n d;\n for (d = 0; 4 > d; ++d) c += a[b + d - 32] + a[b - 1 + 32 * d];\n c >>= 3;\n for (d = 0; 4 > d; ++d) M(a, b + 32 * d, c, 4);\n }\n function hf(a, b) {\n var c = a[b - 1 + 0],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 - 32],\n g = a[b + 0 - 32],\n h = a[b + 1 - 32],\n k = a[b + 2 - 32],\n l = a[b + 3 - 32];\n a[b + 0 + 96] = z(d, e, a[b - 1 + 96]);\n a[b + 1 + 96] = a[b + 0 + 64] = z(c, d, e);\n a[b + 2 + 96] = a[b + 1 + 64] = a[b + 0 + 32] = z(f, c, d);\n a[b + 3 + 96] = a[b + 2 + 64] = a[b + 1 + 32] = a[b + 0 + 0] = z(g, f, c);\n a[b + 3 + 64] = a[b + 2 + 32] = a[b + 1 + 0] = z(h, g, f);\n a[b + 3 + 32] = a[b + 2 + 0] = z(k, h, g);\n a[b + 3 + 0] = z(l, k, h);\n }\n function kf(a, b) {\n var c = a[b + 1 - 32],\n d = a[b + 2 - 32],\n e = a[b + 3 - 32],\n f = a[b + 4 - 32],\n g = a[b + 5 - 32],\n h = a[b + 6 - 32],\n k = a[b + 7 - 32];\n a[b + 0 + 0] = z(a[b + 0 - 32], c, d);\n a[b + 1 + 0] = a[b + 0 + 32] = z(c, d, e);\n a[b + 2 + 0] = a[b + 1 + 32] = a[b + 0 + 64] = z(d, e, f);\n a[b + 3 + 0] = a[b + 2 + 32] = a[b + 1 + 64] = a[b + 0 + 96] = z(e, f, g);\n a[b + 3 + 32] = a[b + 2 + 64] = a[b + 1 + 96] = z(f, g, h);\n a[b + 3 + 64] = a[b + 2 + 96] = z(g, h, k);\n a[b + 3 + 96] = z(h, k, k);\n }\n function jf(a, b) {\n var c = a[b - 1 + 0],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 - 32],\n g = a[b + 0 - 32],\n h = a[b + 1 - 32],\n k = a[b + 2 - 32],\n l = a[b + 3 - 32];\n a[b + 0 + 0] = a[b + 1 + 64] = (f + g + 1) >> 1;\n a[b + 1 + 0] = a[b + 2 + 64] = (g + h + 1) >> 1;\n a[b + 2 + 0] = a[b + 3 + 64] = (h + k + 1) >> 1;\n a[b + 3 + 0] = (k + l + 1) >> 1;\n a[b + 0 + 96] = z(e, d, c);\n a[b + 0 + 64] = z(d, c, f);\n a[b + 0 + 32] = a[b + 1 + 96] = z(c, f, g);\n a[b + 1 + 32] = a[b + 2 + 96] = z(f, g, h);\n a[b + 2 + 32] = a[b + 3 + 96] = z(g, h, k);\n a[b + 3 + 32] = z(h, k, l);\n }\n function lf(a, b) {\n var c = a[b + 0 - 32],\n d = a[b + 1 - 32],\n e = a[b + 2 - 32],\n f = a[b + 3 - 32],\n g = a[b + 4 - 32],\n h = a[b + 5 - 32],\n k = a[b + 6 - 32],\n l = a[b + 7 - 32];\n a[b + 0 + 0] = (c + d + 1) >> 1;\n a[b + 1 + 0] = a[b + 0 + 64] = (d + e + 1) >> 1;\n a[b + 2 + 0] = a[b + 1 + 64] = (e + f + 1) >> 1;\n a[b + 3 + 0] = a[b + 2 + 64] = (f + g + 1) >> 1;\n a[b + 0 + 32] = z(c, d, e);\n a[b + 1 + 32] = a[b + 0 + 96] = z(d, e, f);\n a[b + 2 + 32] = a[b + 1 + 96] = z(e, f, g);\n a[b + 3 + 32] = a[b + 2 + 96] = z(f, g, h);\n a[b + 3 + 64] = z(g, h, k);\n a[b + 3 + 96] = z(h, k, l);\n }\n function nf(a, b) {\n var c = a[b - 1 + 0],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 + 96];\n a[b + 0 + 0] = (c + d + 1) >> 1;\n a[b + 2 + 0] = a[b + 0 + 32] = (d + e + 1) >> 1;\n a[b + 2 + 32] = a[b + 0 + 64] = (e + f + 1) >> 1;\n a[b + 1 + 0] = z(c, d, e);\n a[b + 3 + 0] = a[b + 1 + 32] = z(d, e, f);\n a[b + 3 + 32] = a[b + 1 + 64] = z(e, f, f);\n a[b + 3 + 64] = a[b + 2 + 64] = a[b + 0 + 96] = a[b + 1 + 96] = a[\n b + 2 + 96\n ] = a[b + 3 + 96] = f;\n }\n function mf(a, b) {\n var c = a[b - 1 + 0],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 + 96],\n g = a[b - 1 - 32],\n h = a[b + 0 - 32],\n k = a[b + 1 - 32],\n l = a[b + 2 - 32];\n a[b + 0 + 0] = a[b + 2 + 32] = (c + g + 1) >> 1;\n a[b + 0 + 32] = a[b + 2 + 64] = (d + c + 1) >> 1;\n a[b + 0 + 64] = a[b + 2 + 96] = (e + d + 1) >> 1;\n a[b + 0 + 96] = (f + e + 1) >> 1;\n a[b + 3 + 0] = z(h, k, l);\n a[b + 2 + 0] = z(g, h, k);\n a[b + 1 + 0] = a[b + 3 + 32] = z(c, g, h);\n a[b + 1 + 32] = a[b + 3 + 64] = z(d, c, g);\n a[b + 1 + 64] = a[b + 3 + 96] = z(e, d, c);\n a[b + 1 + 96] = z(f, e, d);\n }\n function xf(a, b) {\n var c;\n for (c = 0; 8 > c; ++c) I(a, b + 32 * c, a, b - 32, 8);\n }\n function yf(a, b) {\n var c;\n for (c = 0; 8 > c; ++c) M(a, b, a[b - 1], 8), (b += 32);\n }\n function lb(a, b, c) {\n var d;\n for (d = 0; 8 > d; ++d) M(b, c + 32 * d, a, 8);\n }\n function vf(a, b) {\n var c = 8,\n d;\n for (d = 0; 8 > d; ++d) c += a[b + d - 32] + a[b - 1 + 32 * d];\n lb(c >> 4, a, b);\n }\n function Af(a, b) {\n var c = 4,\n d;\n for (d = 0; 8 > d; ++d) c += a[b + d - 32];\n lb(c >> 3, a, b);\n }\n function zf(a, b) {\n var c = 4,\n d;\n for (d = 0; 8 > d; ++d) c += a[b - 1 + 32 * d];\n lb(c >> 3, a, b);\n }\n function Bf(a, b) {\n lb(128, a, b);\n }\n function ab(a, b, c) {\n var d = a[b - c],\n e = a[b + 0],\n f = 3 * (e - d) + Qb[1020 + a[b - 2 * c] - a[b + c]],\n g = mb[112 + ((f + 4) >> 3)];\n a[b - c] = R[255 + d + mb[112 + ((f + 3) >> 3)]];\n a[b + 0] = R[255 + e - g];\n }\n function jd(a, b, c, d) {\n var e = a[b + 0],\n f = a[b + c];\n return U[255 + a[b - 2 * c] - a[b - c]] > d || U[255 + f - e] > d;\n }\n function kd(a, b, c, d) {\n return (\n 4 * U[255 + a[b - c] - a[b + 0]] + U[255 + a[b - 2 * c] - a[b + c]] <= d\n );\n }\n function ld(a, b, c, d, e) {\n var f = a[b - 3 * c],\n g = a[b - 2 * c],\n h = a[b - c],\n k = a[b + 0],\n l = a[b + c],\n m = a[b + 2 * c],\n n = a[b + 3 * c];\n return 4 * U[255 + h - k] + U[255 + g - l] > d\n ? 0\n : U[255 + a[b - 4 * c] - f] <= e &&\n U[255 + f - g] <= e &&\n U[255 + g - h] <= e &&\n U[255 + n - m] <= e &&\n U[255 + m - l] <= e &&\n U[255 + l - k] <= e;\n }\n function gd(a, b, c, d) {\n var e = 2 * d + 1;\n for (d = 0; 16 > d; ++d) kd(a, b + d, c, e) && ab(a, b + d, c);\n }\n function hd(a, b, c, d) {\n var e = 2 * d + 1;\n for (d = 0; 16 > d; ++d) kd(a, b + d * c, 1, e) && ab(a, b + d * c, 1);\n }\n function bf(a, b, c, d) {\n var e;\n for (e = 3; 0 < e; --e) (b += 4 * c), gd(a, b, c, d);\n }\n function cf(a, b, c, d) {\n var e;\n for (e = 3; 0 < e; --e) (b += 4), hd(a, b, c, d);\n }\n function ea(a, b, c, d, e, f, g, h) {\n for (f = 2 * f + 1; 0 < e--; ) {\n if (ld(a, b, c, f, g))\n if (jd(a, b, c, h)) ab(a, b, c);\n else {\n var k = a,\n l = b,\n m = c,\n n = k[l - 2 * m],\n r = k[l - m],\n q = k[l + 0],\n t = k[l + m],\n v = k[l + 2 * m],\n p = Qb[1020 + 3 * (q - r) + Qb[1020 + n - t]],\n u = (27 * p + 63) >> 7,\n w = (18 * p + 63) >> 7,\n p = (9 * p + 63) >> 7;\n k[l - 3 * m] = R[255 + k[l - 3 * m] + p];\n k[l - 2 * m] = R[255 + n + w];\n k[l - m] = R[255 + r + u];\n k[l + 0] = R[255 + q - u];\n k[l + m] = R[255 + t - w];\n k[l + 2 * m] = R[255 + v - p];\n }\n b += d;\n }\n }\n function Fa(a, b, c, d, e, f, g, h) {\n for (f = 2 * f + 1; 0 < e--; ) {\n if (ld(a, b, c, f, g))\n if (jd(a, b, c, h)) ab(a, b, c);\n else {\n var k = a,\n l = b,\n m = c,\n n = k[l - m],\n r = k[l + 0],\n q = k[l + m],\n t = 3 * (r - n),\n v = mb[112 + ((t + 4) >> 3)],\n t = mb[112 + ((t + 3) >> 3)],\n p = (v + 1) >> 1;\n k[l - 2 * m] = R[255 + k[l - 2 * m] + p];\n k[l - m] = R[255 + n + t];\n k[l + 0] = R[255 + r - v];\n k[l + m] = R[255 + q - p];\n }\n b += d;\n }\n }\n function Ue(a, b, c, d, e, f) {\n ea(a, b, c, 1, 16, d, e, f);\n }\n function Ve(a, b, c, d, e, f) {\n ea(a, b, 1, c, 16, d, e, f);\n }\n function Ye(a, b, c, d, e, f) {\n var g;\n for (g = 3; 0 < g; --g) (b += 4 * c), Fa(a, b, c, 1, 16, d, e, f);\n }\n function Ze(a, b, c, d, e, f) {\n var g;\n for (g = 3; 0 < g; --g) (b += 4), Fa(a, b, 1, c, 16, d, e, f);\n }\n function We(a, b, c, d, e, f, g, h) {\n ea(a, b, e, 1, 8, f, g, h);\n ea(c, d, e, 1, 8, f, g, h);\n }\n function Xe(a, b, c, d, e, f, g, h) {\n ea(a, b, 1, e, 8, f, g, h);\n ea(c, d, 1, e, 8, f, g, h);\n }\n function $e(a, b, c, d, e, f, g, h) {\n Fa(a, b + 4 * e, e, 1, 8, f, g, h);\n Fa(c, d + 4 * e, e, 1, 8, f, g, h);\n }\n function af(a, b, c, d, e, f, g, h) {\n Fa(a, b + 4, 1, e, 8, f, g, h);\n Fa(c, d + 4, 1, e, 8, f, g, h);\n }\n function Cf() {\n this.ba = new Cb();\n this.ec = [];\n this.cc = [];\n this.Mc = [];\n this.Dc = this.Nc = this.dc = this.fc = 0;\n this.Oa = new Ud();\n this.memory = 0;\n this.Ib = \"OutputFunc\";\n this.Jb = \"OutputAlphaFunc\";\n this.Nd = \"OutputRowFunc\";\n }\n function md() {\n this.data = [];\n this.offset = this.kd = this.ha = this.w = 0;\n this.na = [];\n this.xa = this.gb = this.Ja = this.Sa = this.P = 0;\n }\n function Df() {\n this.nc = this.Ea = this.b = this.hc = 0;\n this.K = [];\n this.w = 0;\n }\n function Ef() {\n this.ua = 0;\n this.Wa = new ac();\n this.vb = new ac();\n this.md = this.xc = this.wc = 0;\n this.vc = [];\n this.Wb = 0;\n this.Ya = new Ub();\n this.yc = new O();\n }\n function je() {\n this.xb = this.a = 0;\n this.l = new Oa();\n this.ca = new Cb();\n this.V = [];\n this.Ba = 0;\n this.Ta = [];\n this.Ua = 0;\n this.m = new Ra();\n this.Pb = 0;\n this.wd = new Ra();\n this.Ma = this.$ = this.C = this.i = this.c = this.xd = 0;\n this.s = new Ef();\n this.ab = 0;\n this.gc = wa(4, Df);\n this.Oc = 0;\n }\n function Ff() {\n this.Lc = this.Z = this.$a = this.i = this.c = 0;\n this.l = new Oa();\n this.ic = 0;\n this.ca = [];\n this.tb = 0;\n this.qd = null;\n this.rd = 0;\n }\n function Rb(a, b, c, d, e, f, g) {\n a = null == a ? 0 : a[b + 0];\n for (b = 0; b < g; ++b) (e[f + b] = (a + c[d + b]) & 255), (a = e[f + b]);\n }\n function Gf(a, b, c, d, e, f, g) {\n if (null == a) Rb(null, null, c, d, e, f, g);\n else {\n var h;\n for (h = 0; h < g; ++h) e[f + h] = (a[b + h] + c[d + h]) & 255;\n }\n }\n function Hf(a, b, c, d, e, f, g) {\n if (null == a) Rb(null, null, c, d, e, f, g);\n else {\n var h = a[b + 0],\n k = h,\n l = h,\n m;\n for (m = 0; m < g; ++m)\n (h = a[b + m]),\n (k = l + h - k),\n (l = (c[d + m] + (k & -256 ? (0 > k ? 0 : 255) : k)) & 255),\n (k = h),\n (e[f + m] = l);\n }\n }\n function Le(a, b, c, d) {\n var e = b.width,\n f = b.o;\n x(null != a && null != b);\n if (0 > c || 0 >= d || c + d > f) return null;\n if (!a.Cc) {\n if (null == a.ga) {\n a.ga = new Ff();\n var g;\n (g = null == a.ga) ||\n ((g = b.width * b.o),\n x(0 == a.Gb.length),\n (a.Gb = V(g)),\n (a.Uc = 0),\n null == a.Gb\n ? (g = 0)\n : ((a.mb = a.Gb), (a.nb = a.Uc), (a.rc = null), (g = 1)),\n (g = !g));\n if (!g) {\n g = a.ga;\n var h = a.Fa,\n k = a.P,\n l = a.qc,\n m = a.mb,\n n = a.nb,\n r = k + 1,\n q = l - 1,\n t = g.l;\n x(null != h && null != m && null != b);\n ia[0] = null;\n ia[1] = Rb;\n ia[2] = Gf;\n ia[3] = Hf;\n g.ca = m;\n g.tb = n;\n g.c = b.width;\n g.i = b.height;\n x(0 < g.c && 0 < g.i);\n if (1 >= l) b = 0;\n else if (\n ((g.$a = (h[k + 0] >> 0) & 3),\n (g.Z = (h[k + 0] >> 2) & 3),\n (g.Lc = (h[k + 0] >> 4) & 3),\n (k = (h[k + 0] >> 6) & 3),\n 0 > g.$a || 1 < g.$a || 4 <= g.Z || 1 < g.Lc || k)\n )\n b = 0;\n else if (\n ((t.put = kc),\n (t.ac = gc),\n (t.bc = lc),\n (t.ma = g),\n (t.width = b.width),\n (t.height = b.height),\n (t.Da = b.Da),\n (t.v = b.v),\n (t.va = b.va),\n (t.j = b.j),\n (t.o = b.o),\n g.$a)\n )\n b: {\n x(1 == g.$a), (b = Bc());\n c: for (;;) {\n if (null == b) {\n b = 0;\n break b;\n }\n x(null != g);\n g.mc = b;\n b.c = g.c;\n b.i = g.i;\n b.l = g.l;\n b.l.ma = g;\n b.l.width = g.c;\n b.l.height = g.i;\n b.a = 0;\n cb(b.m, h, r, q);\n if (!rb(g.c, g.i, 1, b, null)) break c;\n 1 == b.ab && 3 == b.gc[0].hc && yc(b.s)\n ? ((g.ic = 1),\n (h = b.c * b.i),\n (b.Ta = null),\n (b.Ua = 0),\n (b.V = V(h)),\n (b.Ba = 0),\n null == b.V ? ((b.a = 1), (b = 0)) : (b = 1))\n : ((g.ic = 0), (b = Ec(b, g.c)));\n if (!b) break c;\n b = 1;\n break b;\n }\n g.mc = null;\n b = 0;\n }\n else b = q >= g.c * g.i;\n g = !b;\n }\n if (g) return null;\n 1 != a.ga.Lc ? (a.Ga = 0) : (d = f - c);\n }\n x(null != a.ga);\n x(c + d <= f);\n a: {\n h = a.ga;\n b = h.c;\n f = h.l.o;\n if (0 == h.$a) {\n r = a.rc;\n q = a.Vc;\n t = a.Fa;\n k = a.P + 1 + c * b;\n l = a.mb;\n m = a.nb + c * b;\n x(k <= a.P + a.qc);\n if (0 != h.Z)\n for (x(null != ia[h.Z]), g = 0; g < d; ++g)\n ia[h.Z](r, q, t, k, l, m, b),\n (r = l),\n (q = m),\n (m += b),\n (k += b);\n else\n for (g = 0; g < d; ++g)\n I(l, m, t, k, b), (r = l), (q = m), (m += b), (k += b);\n a.rc = r;\n a.Vc = q;\n } else {\n x(null != h.mc);\n b = c + d;\n g = h.mc;\n x(null != g);\n x(b <= g.i);\n if (g.C >= b) b = 1;\n else if ((h.ic || Aa(), h.ic)) {\n var h = g.V,\n r = g.Ba,\n q = g.c,\n v = g.i,\n t = 1,\n k = g.$ / q,\n l = g.$ % q,\n m = g.m,\n n = g.s,\n p = g.$,\n u = q * v,\n w = q * b,\n y = n.wc,\n A = p < w ? ha(n, l, k) : null;\n x(p <= u);\n x(b <= v);\n x(yc(n));\n c: for (;;) {\n for (; !m.h && p < w; ) {\n l & y || (A = ha(n, l, k));\n x(null != A);\n Sa(m);\n v = ua(A.G[0], A.H[0], m);\n if (256 > v)\n (h[r + p] = v),\n ++p,\n ++l,\n l >= q && ((l = 0), ++k, k <= b && !(k % 16) && Ib(g, k));\n else if (280 > v) {\n var v = ib(v - 256, m);\n var E = ua(A.G[4], A.H[4], m);\n Sa(m);\n E = ib(E, m);\n E = nc(q, E);\n if (p >= E && u - p >= v) {\n var B;\n for (B = 0; B < v; ++B) h[r + p + B] = h[r + p + B - E];\n } else {\n t = 0;\n break c;\n }\n p += v;\n for (l += v; l >= q; )\n (l -= q), ++k, k <= b && !(k % 16) && Ib(g, k);\n p < w && l & y && (A = ha(n, l, k));\n } else {\n t = 0;\n break c;\n }\n x(m.h == db(m));\n }\n Ib(g, k > b ? b : k);\n break c;\n }\n !t || (m.h && p < u) ? ((t = 0), (g.a = m.h ? 5 : 3)) : (g.$ = p);\n b = t;\n } else b = Jb(g, g.V, g.Ba, g.c, g.i, b, se);\n if (!b) {\n d = 0;\n break a;\n }\n }\n c + d >= f && (a.Cc = 1);\n d = 1;\n }\n if (!d) return null;\n if (\n a.Cc &&\n ((d = a.ga), null != d && (d.mc = null), (a.ga = null), 0 < a.Ga)\n )\n return alert(\"todo:WebPDequantizeLevels\"), null;\n }\n return a.nb + c * e;\n }\n function If(a, b, c, d, e, f) {\n for (; 0 < e--; ) {\n var g = a,\n h = b + (c ? 1 : 0),\n k = a,\n l = b + (c ? 0 : 3),\n m;\n for (m = 0; m < d; ++m) {\n var n = k[l + 4 * m];\n 255 != n &&\n ((n *= 32897),\n (g[h + 4 * m + 0] = (g[h + 4 * m + 0] * n) >> 23),\n (g[h + 4 * m + 1] = (g[h + 4 * m + 1] * n) >> 23),\n (g[h + 4 * m + 2] = (g[h + 4 * m + 2] * n) >> 23));\n }\n b += f;\n }\n }\n function Jf(a, b, c, d, e) {\n for (; 0 < d--; ) {\n var f;\n for (f = 0; f < c; ++f) {\n var g = a[b + 2 * f + 0],\n h = a[b + 2 * f + 1],\n k = h & 15,\n l = 4369 * k,\n h = (((h & 240) | (h >> 4)) * l) >> 16;\n a[b + 2 * f + 0] =\n (((((g & 240) | (g >> 4)) * l) >> 16) & 240) |\n ((((((g & 15) | (g << 4)) * l) >> 16) >> 4) & 15);\n a[b + 2 * f + 1] = (h & 240) | k;\n }\n b += e;\n }\n }\n function Kf(a, b, c, d, e, f, g, h) {\n var k = 255,\n l,\n m;\n for (m = 0; m < e; ++m) {\n for (l = 0; l < d; ++l) {\n var n = a[b + l];\n f[g + 4 * l] = n;\n k &= n;\n }\n b += c;\n g += h;\n }\n return 255 != k;\n }\n function Lf(a, b, c, d, e) {\n var f;\n for (f = 0; f < e; ++f) c[d + f] = a[b + f] >> 8;\n }\n function Aa() {\n za = If;\n vc = Jf;\n fc = Kf;\n Fc = Lf;\n }\n function va(a, b, c) {\n self[a] = function(a, e, f, g, h, k, l, m, n, r, q, t, v, p, u, w, y) {\n var d,\n E = (y - 1) >> 1;\n var B = h[k + 0] | (l[m + 0] << 16);\n var C = n[r + 0] | (q[t + 0] << 16);\n x(null != a);\n var z = (3 * B + C + 131074) >> 2;\n b(a[e + 0], z & 255, z >> 16, v, p);\n null != f &&\n ((z = (3 * C + B + 131074) >> 2),\n b(f[g + 0], z & 255, z >> 16, u, w));\n for (d = 1; d <= E; ++d) {\n var D = h[k + d] | (l[m + d] << 16);\n var G = n[r + d] | (q[t + d] << 16);\n var F = B + D + C + G + 524296;\n var H = (F + 2 * (D + C)) >> 3;\n F = (F + 2 * (B + G)) >> 3;\n z = (H + B) >> 1;\n B = (F + D) >> 1;\n b(a[e + 2 * d - 1], z & 255, z >> 16, v, p + (2 * d - 1) * c);\n b(a[e + 2 * d - 0], B & 255, B >> 16, v, p + (2 * d - 0) * c);\n null != f &&\n ((z = (F + C) >> 1),\n (B = (H + G) >> 1),\n b(f[g + 2 * d - 1], z & 255, z >> 16, u, w + (2 * d - 1) * c),\n b(f[g + 2 * d + 0], B & 255, B >> 16, u, w + (2 * d + 0) * c));\n B = D;\n C = G;\n }\n y & 1 ||\n ((z = (3 * B + C + 131074) >> 2),\n b(a[e + y - 1], z & 255, z >> 16, v, p + (y - 1) * c),\n null != f &&\n ((z = (3 * C + B + 131074) >> 2),\n b(f[g + y - 1], z & 255, z >> 16, u, w + (y - 1) * c)));\n };\n }\n function ic() {\n P[Ca] = Mf;\n P[Ua] = nd;\n P[tc] = Nf;\n P[Va] = od;\n P[ya] = pd;\n P[Db] = qd;\n P[wc] = Of;\n P[zb] = nd;\n P[Ab] = od;\n P[Ja] = pd;\n P[Bb] = qd;\n }\n function Sb(a) {\n return a & ~Pf ? (0 > a ? 0 : 255) : a >> rd;\n }\n function bb(a, b) {\n return Sb(((19077 * a) >> 8) + ((26149 * b) >> 8) - 14234);\n }\n function nb(a, b, c) {\n return Sb(\n ((19077 * a) >> 8) - ((6419 * b) >> 8) - ((13320 * c) >> 8) + 8708\n );\n }\n function Pa(a, b) {\n return Sb(((19077 * a) >> 8) + ((33050 * b) >> 8) - 17685);\n }\n function Ga(a, b, c, d, e) {\n d[e + 0] = bb(a, c);\n d[e + 1] = nb(a, b, c);\n d[e + 2] = Pa(a, b);\n }\n function Tb(a, b, c, d, e) {\n d[e + 0] = Pa(a, b);\n d[e + 1] = nb(a, b, c);\n d[e + 2] = bb(a, c);\n }\n function sd(a, b, c, d, e) {\n var f = nb(a, b, c);\n b = ((f << 3) & 224) | (Pa(a, b) >> 3);\n d[e + 0] = (bb(a, c) & 248) | (f >> 5);\n d[e + 1] = b;\n }\n function td(a, b, c, d, e) {\n var f = (Pa(a, b) & 240) | 15;\n d[e + 0] = (bb(a, c) & 240) | (nb(a, b, c) >> 4);\n d[e + 1] = f;\n }\n function ud(a, b, c, d, e) {\n d[e + 0] = 255;\n Ga(a, b, c, d, e + 1);\n }\n function vd(a, b, c, d, e) {\n Tb(a, b, c, d, e);\n d[e + 3] = 255;\n }\n function wd(a, b, c, d, e) {\n Ga(a, b, c, d, e);\n d[e + 3] = 255;\n }\n function ga(a, b) {\n return 0 > a ? 0 : a > b ? b : a;\n }\n function la(a, b, c) {\n self[a] = function(a, e, f, g, h, k, l, m, n) {\n for (var d = m + (n & -2) * c; m != d; )\n b(a[e + 0], f[g + 0], h[k + 0], l, m),\n b(a[e + 1], f[g + 0], h[k + 0], l, m + c),\n (e += 2),\n ++g,\n ++k,\n (m += 2 * c);\n n & 1 && b(a[e + 0], f[g + 0], h[k + 0], l, m);\n };\n }\n function xd(a, b, c) {\n return 0 == c ? (0 == a ? (0 == b ? 6 : 5) : 0 == b ? 4 : 0) : c;\n }\n function yd(a, b, c, d, e) {\n switch (a >>> 30) {\n case 3:\n Za(b, c, d, e, 0);\n break;\n case 2:\n fd(b, c, d, e);\n break;\n case 1:\n pa(b, c, d, e);\n }\n }\n function Oc(a, b) {\n var c,\n d,\n e = b.M,\n f = b.Nb,\n g = a.oc,\n h = a.pc + 40,\n k = a.oc,\n l = a.pc + 584,\n m = a.oc,\n n = a.pc + 600;\n for (c = 0; 16 > c; ++c) g[h + 32 * c - 1] = 129;\n for (c = 0; 8 > c; ++c)\n (k[l + 32 * c - 1] = 129), (m[n + 32 * c - 1] = 129);\n 0 < e\n ? (g[h - 1 - 32] = k[l - 1 - 32] = m[n - 1 - 32] = 129)\n : (M(g, h - 32 - 1, 127, 21),\n M(k, l - 32 - 1, 127, 9),\n M(m, n - 32 - 1, 127, 9));\n for (d = 0; d < a.za; ++d) {\n var r = b.ya[b.aa + d];\n if (0 < d) {\n for (c = -1; 16 > c; ++c) I(g, h + 32 * c - 4, g, h + 32 * c + 12, 4);\n for (c = -1; 8 > c; ++c)\n I(k, l + 32 * c - 4, k, l + 32 * c + 4, 4),\n I(m, n + 32 * c - 4, m, n + 32 * c + 4, 4);\n }\n var q = a.Gd,\n t = a.Hd + d,\n v = r.ad,\n p = r.Hc;\n 0 < e &&\n (I(g, h - 32, q[t].y, 0, 16),\n I(k, l - 32, q[t].f, 0, 8),\n I(m, n - 32, q[t].ea, 0, 8));\n if (r.Za) {\n var u = g;\n var w = h - 32 + 16;\n 0 < e &&\n (d >= a.za - 1\n ? M(u, w, q[t].y[15], 4)\n : I(u, w, q[t + 1].y, 0, 4));\n for (c = 0; 4 > c; c++)\n u[w + 128 + c] = u[w + 256 + c] = u[w + 384 + c] = u[w + 0 + c];\n for (c = 0; 16 > c; ++c, p <<= 2)\n (u = g), (w = h + zd[c]), W[r.Ob[c]](u, w), yd(p, v, 16 * +c, u, w);\n } else if (((u = xd(d, e, r.Ob[0])), Y[u](g, h), 0 != p))\n for (c = 0; 16 > c; ++c, p <<= 2) yd(p, v, 16 * +c, g, h + zd[c]);\n c = r.Gc;\n u = xd(d, e, r.Dd);\n ka[u](k, l);\n ka[u](m, n);\n r = c >> 0;\n p = v;\n u = k;\n w = l;\n r & 255 && (r & 170 ? Nb(p, 256, u, w) : Ob(p, 256, u, w));\n c >>= 8;\n r = m;\n p = n;\n c & 255 && (c & 170 ? Nb(v, 320, r, p) : Ob(v, 320, r, p));\n e < a.Ub - 1 &&\n (I(q[t].y, 0, g, h + 480, 16),\n I(q[t].f, 0, k, l + 224, 8),\n I(q[t].ea, 0, m, n + 224, 8));\n c = 8 * f * a.B;\n q = a.sa;\n t = a.ta + 16 * d + 16 * f * a.R;\n v = a.qa;\n r = a.ra + 8 * d + c;\n p = a.Ha;\n u = a.Ia + 8 * d + c;\n for (c = 0; 16 > c; ++c) I(q, t + c * a.R, g, h + 32 * c, 16);\n for (c = 0; 8 > c; ++c)\n I(v, r + c * a.B, k, l + 32 * c, 8),\n I(p, u + c * a.B, m, n + 32 * c, 8);\n }\n }\n function Ad(a, b, c, d, e, f, g, h, k) {\n var l = [0],\n m = [0],\n n = 0,\n r = null != k ? k.kd : 0,\n q = null != k ? k : new md();\n if (null == a || 12 > c) return 7;\n q.data = a;\n q.w = b;\n q.ha = c;\n b = [b];\n c = [c];\n q.gb = [q.gb];\n a: {\n var t = b;\n var v = c;\n var p = q.gb;\n x(null != a);\n x(null != v);\n x(null != p);\n p[0] = 0;\n if (12 <= v[0] && !fa(a, t[0], \"RIFF\")) {\n if (fa(a, t[0] + 8, \"WEBP\")) {\n p = 3;\n break a;\n }\n var u = Ha(a, t[0] + 4);\n if (12 > u || 4294967286 < u) {\n p = 3;\n break a;\n }\n if (r && u > v[0] - 8) {\n p = 7;\n break a;\n }\n p[0] = u;\n t[0] += 12;\n v[0] -= 12;\n }\n p = 0;\n }\n if (0 != p) return p;\n u = 0 < q.gb[0];\n for (c = c[0]; ; ) {\n t = [0];\n n = [n];\n a: {\n var w = a;\n v = b;\n p = c;\n var y = n,\n A = l,\n z = m,\n B = t;\n y[0] = 0;\n if (8 > p[0]) p = 7;\n else {\n if (!fa(w, v[0], \"VP8X\")) {\n if (10 != Ha(w, v[0] + 4)) {\n p = 3;\n break a;\n }\n if (18 > p[0]) {\n p = 7;\n break a;\n }\n var C = Ha(w, v[0] + 8);\n var D = 1 + Yb(w, v[0] + 12);\n w = 1 + Yb(w, v[0] + 15);\n if (2147483648 <= D * w) {\n p = 3;\n break a;\n }\n null != B && (B[0] = C);\n null != A && (A[0] = D);\n null != z && (z[0] = w);\n v[0] += 18;\n p[0] -= 18;\n y[0] = 1;\n }\n p = 0;\n }\n }\n n = n[0];\n t = t[0];\n if (0 != p) return p;\n v = !!(t & 2);\n if (!u && n) return 3;\n null != f && (f[0] = !!(t & 16));\n null != g && (g[0] = v);\n null != h && (h[0] = 0);\n g = l[0];\n t = m[0];\n if (n && v && null == k) {\n p = 0;\n break;\n }\n if (4 > c) {\n p = 7;\n break;\n }\n if ((u && n) || (!u && !n && !fa(a, b[0], \"ALPH\"))) {\n c = [c];\n q.na = [q.na];\n q.P = [q.P];\n q.Sa = [q.Sa];\n a: {\n C = a;\n p = b;\n u = c;\n var y = q.gb,\n A = q.na,\n z = q.P,\n B = q.Sa;\n D = 22;\n x(null != C);\n x(null != u);\n w = p[0];\n var F = u[0];\n x(null != A);\n x(null != B);\n A[0] = null;\n z[0] = null;\n for (B[0] = 0; ; ) {\n p[0] = w;\n u[0] = F;\n if (8 > F) {\n p = 7;\n break a;\n }\n var G = Ha(C, w + 4);\n if (4294967286 < G) {\n p = 3;\n break a;\n }\n var H = (8 + G + 1) & -2;\n D += H;\n if (0 < y && D > y) {\n p = 3;\n break a;\n }\n if (!fa(C, w, \"VP8 \") || !fa(C, w, \"VP8L\")) {\n p = 0;\n break a;\n }\n if (F[0] < H) {\n p = 7;\n break a;\n }\n fa(C, w, \"ALPH\") || ((A[0] = C), (z[0] = w + 8), (B[0] = G));\n w += H;\n F -= H;\n }\n }\n c = c[0];\n q.na = q.na[0];\n q.P = q.P[0];\n q.Sa = q.Sa[0];\n if (0 != p) break;\n }\n c = [c];\n q.Ja = [q.Ja];\n q.xa = [q.xa];\n a: if (\n ((y = a),\n (p = b),\n (u = c),\n (A = q.gb[0]),\n (z = q.Ja),\n (B = q.xa),\n (C = p[0]),\n (w = !fa(y, C, \"VP8 \")),\n (D = !fa(y, C, \"VP8L\")),\n x(null != y),\n x(null != u),\n x(null != z),\n x(null != B),\n 8 > u[0])\n )\n p = 7;\n else {\n if (w || D) {\n y = Ha(y, C + 4);\n if (12 <= A && y > A - 12) {\n p = 3;\n break a;\n }\n if (r && y > u[0] - 8) {\n p = 7;\n break a;\n }\n z[0] = y;\n p[0] += 8;\n u[0] -= 8;\n B[0] = D;\n } else\n (B[0] = 5 <= u[0] && 47 == y[C + 0] && !(y[C + 4] >> 5)),\n (z[0] = u[0]);\n p = 0;\n }\n c = c[0];\n q.Ja = q.Ja[0];\n q.xa = q.xa[0];\n b = b[0];\n if (0 != p) break;\n if (4294967286 < q.Ja) return 3;\n null == h || v || (h[0] = q.xa ? 2 : 1);\n g = [g];\n t = [t];\n if (q.xa) {\n if (5 > c) {\n p = 7;\n break;\n }\n h = g;\n r = t;\n v = f;\n null == a || 5 > c\n ? (a = 0)\n : 5 <= c && 47 == a[b + 0] && !(a[b + 4] >> 5)\n ? ((u = [0]),\n (y = [0]),\n (A = [0]),\n (z = new Ra()),\n cb(z, a, b, c),\n mc(z, u, y, A)\n ? (null != h && (h[0] = u[0]),\n null != r && (r[0] = y[0]),\n null != v && (v[0] = A[0]),\n (a = 1))\n : (a = 0))\n : (a = 0);\n } else {\n if (10 > c) {\n p = 7;\n break;\n }\n h = t;\n null == a || 10 > c || !Jc(a, b + 3, c - 3)\n ? (a = 0)\n : ((r = a[b + 0] | (a[b + 1] << 8) | (a[b + 2] << 16)),\n (v = ((a[b + 7] << 8) | a[b + 6]) & 16383),\n (a = ((a[b + 9] << 8) | a[b + 8]) & 16383),\n r & 1 ||\n 3 < ((r >> 1) & 7) ||\n !((r >> 4) & 1) ||\n r >> 5 >= q.Ja ||\n !v ||\n !a\n ? (a = 0)\n : (g && (g[0] = v), h && (h[0] = a), (a = 1)));\n }\n if (!a) return 3;\n g = g[0];\n t = t[0];\n if (n && (l[0] != g || m[0] != t)) return 3;\n null != k &&\n ((k[0] = q),\n (k.offset = b - k.w),\n x(4294967286 > b - k.w),\n x(k.offset == k.ha - c));\n break;\n }\n return 0 == p || (7 == p && n && null == k)\n ? (null != f && (f[0] |= null != q.na && 0 < q.na.length),\n null != d && (d[0] = g),\n null != e && (e[0] = t),\n 0)\n : p;\n }\n function hc(a, b, c) {\n var d = b.width,\n e = b.height,\n f = 0,\n g = 0,\n h = d,\n k = e;\n b.Da = null != a && 0 < a.Da;\n if (\n b.Da &&\n ((h = a.cd),\n (k = a.bd),\n (f = a.v),\n (g = a.j),\n 11 > c || ((f &= -2), (g &= -2)),\n 0 > f || 0 > g || 0 >= h || 0 >= k || f + h > d || g + k > e)\n )\n return 0;\n b.v = f;\n b.j = g;\n b.va = f + h;\n b.o = g + k;\n b.U = h;\n b.T = k;\n b.da = null != a && 0 < a.da;\n if (b.da) {\n c = [a.ib];\n f = [a.hb];\n if (!bc(h, k, c, f)) return 0;\n b.ib = c[0];\n b.hb = f[0];\n }\n b.ob = null != a && a.ob;\n b.Kb = null == a || !a.Sd;\n b.da && ((b.ob = b.ib < (3 * d) / 4 && b.hb < (3 * e) / 4), (b.Kb = 0));\n return 1;\n }\n function Bd(a) {\n if (null == a) return 2;\n if (11 > a.S) {\n var b = a.f.RGBA;\n b.fb += (a.height - 1) * b.A;\n b.A = -b.A;\n } else\n (b = a.f.kb),\n (a = a.height),\n (b.O += (a - 1) * b.fa),\n (b.fa = -b.fa),\n (b.N += ((a - 1) >> 1) * b.Ab),\n (b.Ab = -b.Ab),\n (b.W += ((a - 1) >> 1) * b.Db),\n (b.Db = -b.Db),\n null != b.F && ((b.J += (a - 1) * b.lb), (b.lb = -b.lb));\n return 0;\n }\n function Cd(a, b, c, d) {\n if (null == d || 0 >= a || 0 >= b) return 2;\n if (null != c) {\n if (c.Da) {\n var e = c.cd,\n f = c.bd,\n g = c.v & -2,\n h = c.j & -2;\n if (0 > g || 0 > h || 0 >= e || 0 >= f || g + e > a || h + f > b)\n return 2;\n a = e;\n b = f;\n }\n if (c.da) {\n e = [c.ib];\n f = [c.hb];\n if (!bc(a, b, e, f)) return 2;\n a = e[0];\n b = f[0];\n }\n }\n d.width = a;\n d.height = b;\n a: {\n var k = d.width;\n var l = d.height;\n a = d.S;\n if (0 >= k || 0 >= l || !(a >= Ca && 13 > a)) a = 2;\n else {\n if (0 >= d.Rd && null == d.sd) {\n var g = (f = e = b = 0),\n h = k * Dd[a],\n m = h * l;\n 11 > a ||\n ((b = (k + 1) / 2),\n (f = ((l + 1) / 2) * b),\n 12 == a && ((e = k), (g = e * l)));\n l = V(m + 2 * f + g);\n if (null == l) {\n a = 1;\n break a;\n }\n d.sd = l;\n 11 > a\n ? ((k = d.f.RGBA),\n (k.eb = l),\n (k.fb = 0),\n (k.A = h),\n (k.size = m))\n : ((k = d.f.kb),\n (k.y = l),\n (k.O = 0),\n (k.fa = h),\n (k.Fd = m),\n (k.f = l),\n (k.N = 0 + m),\n (k.Ab = b),\n (k.Cd = f),\n (k.ea = l),\n (k.W = 0 + m + f),\n (k.Db = b),\n (k.Ed = f),\n 12 == a && ((k.F = l), (k.J = 0 + m + 2 * f)),\n (k.Tc = g),\n (k.lb = e));\n }\n b = 1;\n e = d.S;\n f = d.width;\n g = d.height;\n if (e >= Ca && 13 > e)\n if (11 > e)\n (a = d.f.RGBA),\n (h = Math.abs(a.A)),\n (b &= h * (g - 1) + f <= a.size),\n (b &= h >= f * Dd[e]),\n (b &= null != a.eb);\n else {\n a = d.f.kb;\n h = (f + 1) / 2;\n m = (g + 1) / 2;\n k = Math.abs(a.fa);\n var l = Math.abs(a.Ab),\n n = Math.abs(a.Db),\n r = Math.abs(a.lb),\n q = r * (g - 1) + f;\n b &= k * (g - 1) + f <= a.Fd;\n b &= l * (m - 1) + h <= a.Cd;\n b &= n * (m - 1) + h <= a.Ed;\n b = b & (k >= f) & (l >= h) & (n >= h);\n b &= null != a.y;\n b &= null != a.f;\n b &= null != a.ea;\n 12 == e && ((b &= r >= f), (b &= q <= a.Tc), (b &= null != a.F));\n }\n else b = 0;\n a = b ? 0 : 2;\n }\n }\n if (0 != a) return a;\n null != c && c.fd && (a = Bd(d));\n return a;\n }\n var xb = 64,\n Hd = [\n 0,\n 1,\n 3,\n 7,\n 15,\n 31,\n 63,\n 127,\n 255,\n 511,\n 1023,\n 2047,\n 4095,\n 8191,\n 16383,\n 32767,\n 65535,\n 131071,\n 262143,\n 524287,\n 1048575,\n 2097151,\n 4194303,\n 8388607,\n 16777215\n ],\n Gd = 24,\n ob = 32,\n Xb = 8,\n Id = [\n 0,\n 0,\n 1,\n 1,\n 2,\n 2,\n 2,\n 2,\n 3,\n 3,\n 3,\n 3,\n 3,\n 3,\n 3,\n 3,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7\n ];\n X(\"Predictor0\", \"PredictorAdd0\");\n self.Predictor0 = function() {\n return 4278190080;\n };\n self.Predictor1 = function(a) {\n return a;\n };\n self.Predictor2 = function(a, b, c) {\n return b[c + 0];\n };\n self.Predictor3 = function(a, b, c) {\n return b[c + 1];\n };\n self.Predictor4 = function(a, b, c) {\n return b[c - 1];\n };\n self.Predictor5 = function(a, b, c) {\n return aa(aa(a, b[c + 1]), b[c + 0]);\n };\n self.Predictor6 = function(a, b, c) {\n return aa(a, b[c - 1]);\n };\n self.Predictor7 = function(a, b, c) {\n return aa(a, b[c + 0]);\n };\n self.Predictor8 = function(a, b, c) {\n return aa(b[c - 1], b[c + 0]);\n };\n self.Predictor9 = function(a, b, c) {\n return aa(b[c + 0], b[c + 1]);\n };\n self.Predictor10 = function(a, b, c) {\n return aa(aa(a, b[c - 1]), aa(b[c + 0], b[c + 1]));\n };\n self.Predictor11 = function(a, b, c) {\n var d = b[c + 0];\n b = b[c - 1];\n return 0 >=\n Ia((d >> 24) & 255, (a >> 24) & 255, (b >> 24) & 255) +\n Ia((d >> 16) & 255, (a >> 16) & 255, (b >> 16) & 255) +\n Ia((d >> 8) & 255, (a >> 8) & 255, (b >> 8) & 255) +\n Ia(d & 255, a & 255, b & 255)\n ? d\n : a;\n };\n self.Predictor12 = function(a, b, c) {\n var d = b[c + 0];\n b = b[c - 1];\n return (\n ((sa(((a >> 24) & 255) + ((d >> 24) & 255) - ((b >> 24) & 255)) << 24) |\n (sa(((a >> 16) & 255) + ((d >> 16) & 255) - ((b >> 16) & 255)) <<\n 16) |\n (sa(((a >> 8) & 255) + ((d >> 8) & 255) - ((b >> 8) & 255)) << 8) |\n sa((a & 255) + (d & 255) - (b & 255))) >>>\n 0\n );\n };\n self.Predictor13 = function(a, b, c) {\n var d = b[c - 1];\n a = aa(a, b[c + 0]);\n return (\n ((eb((a >> 24) & 255, (d >> 24) & 255) << 24) |\n (eb((a >> 16) & 255, (d >> 16) & 255) << 16) |\n (eb((a >> 8) & 255, (d >> 8) & 255) << 8) |\n eb((a >> 0) & 255, (d >> 0) & 255)) >>>\n 0\n );\n };\n var ee = self.PredictorAdd0;\n self.PredictorAdd1 = cc;\n X(\"Predictor2\", \"PredictorAdd2\");\n X(\"Predictor3\", \"PredictorAdd3\");\n X(\"Predictor4\", \"PredictorAdd4\");\n X(\"Predictor5\", \"PredictorAdd5\");\n X(\"Predictor6\", \"PredictorAdd6\");\n X(\"Predictor7\", \"PredictorAdd7\");\n X(\"Predictor8\", \"PredictorAdd8\");\n X(\"Predictor9\", \"PredictorAdd9\");\n X(\"Predictor10\", \"PredictorAdd10\");\n X(\"Predictor11\", \"PredictorAdd11\");\n X(\"Predictor12\", \"PredictorAdd12\");\n X(\"Predictor13\", \"PredictorAdd13\");\n var fe = self.PredictorAdd2;\n ec(\n \"ColorIndexInverseTransform\",\n \"MapARGB\",\n \"32b\",\n function(a) {\n return (a >> 8) & 255;\n },\n function(a) {\n return a;\n }\n );\n ec(\n \"VP8LColorIndexInverseTransformAlpha\",\n \"MapAlpha\",\n \"8b\",\n function(a) {\n return a;\n },\n function(a) {\n return (a >> 8) & 255;\n }\n );\n var rc = self.ColorIndexInverseTransform,\n ke = self.MapARGB,\n he = self.VP8LColorIndexInverseTransformAlpha,\n le = self.MapAlpha,\n pc,\n qc = (self.VP8LPredictorsAdd = []);\n qc.length = 16;\n (self.VP8LPredictors = []).length = 16;\n (self.VP8LPredictorsAdd_C = []).length = 16;\n (self.VP8LPredictors_C = []).length = 16;\n var Fb,\n sc,\n Gb,\n Hb,\n xc,\n uc,\n bd = V(511),\n cd = V(2041),\n dd = V(225),\n ed = V(767),\n ad = 0,\n Qb = cd,\n mb = dd,\n R = ed,\n U = bd,\n Ca = 0,\n Ua = 1,\n tc = 2,\n Va = 3,\n ya = 4,\n Db = 5,\n wc = 6,\n zb = 7,\n Ab = 8,\n Ja = 9,\n Bb = 10,\n pe = [2, 3, 7],\n oe = [3, 3, 11],\n Dc = [280, 256, 256, 256, 40],\n qe = [0, 1, 1, 1, 0],\n ne = [17, 18, 0, 1, 2, 3, 4, 5, 16, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],\n de = [\n 24,\n 7,\n 23,\n 25,\n 40,\n 6,\n 39,\n 41,\n 22,\n 26,\n 38,\n 42,\n 56,\n 5,\n 55,\n 57,\n 21,\n 27,\n 54,\n 58,\n 37,\n 43,\n 72,\n 4,\n 71,\n 73,\n 20,\n 28,\n 53,\n 59,\n 70,\n 74,\n 36,\n 44,\n 88,\n 69,\n 75,\n 52,\n 60,\n 3,\n 87,\n 89,\n 19,\n 29,\n 86,\n 90,\n 35,\n 45,\n 68,\n 76,\n 85,\n 91,\n 51,\n 61,\n 104,\n 2,\n 103,\n 105,\n 18,\n 30,\n 102,\n 106,\n 34,\n 46,\n 84,\n 92,\n 67,\n 77,\n 101,\n 107,\n 50,\n 62,\n 120,\n 1,\n 119,\n 121,\n 83,\n 93,\n 17,\n 31,\n 100,\n 108,\n 66,\n 78,\n 118,\n 122,\n 33,\n 47,\n 117,\n 123,\n 49,\n 63,\n 99,\n 109,\n 82,\n 94,\n 0,\n 116,\n 124,\n 65,\n 79,\n 16,\n 32,\n 98,\n 110,\n 48,\n 115,\n 125,\n 81,\n 95,\n 64,\n 114,\n 126,\n 97,\n 111,\n 80,\n 113,\n 127,\n 96,\n 112\n ],\n me = [\n 2954,\n 2956,\n 2958,\n 2962,\n 2970,\n 2986,\n 3018,\n 3082,\n 3212,\n 3468,\n 3980,\n 5004\n ],\n ie = 8,\n Lb = [\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 10,\n 11,\n 12,\n 13,\n 14,\n 15,\n 16,\n 17,\n 17,\n 18,\n 19,\n 20,\n 20,\n 21,\n 21,\n 22,\n 22,\n 23,\n 23,\n 24,\n 25,\n 25,\n 26,\n 27,\n 28,\n 29,\n 30,\n 31,\n 32,\n 33,\n 34,\n 35,\n 36,\n 37,\n 37,\n 38,\n 39,\n 40,\n 41,\n 42,\n 43,\n 44,\n 45,\n 46,\n 46,\n 47,\n 48,\n 49,\n 50,\n 51,\n 52,\n 53,\n 54,\n 55,\n 56,\n 57,\n 58,\n 59,\n 60,\n 61,\n 62,\n 63,\n 64,\n 65,\n 66,\n 67,\n 68,\n 69,\n 70,\n 71,\n 72,\n 73,\n 74,\n 75,\n 76,\n 76,\n 77,\n 78,\n 79,\n 80,\n 81,\n 82,\n 83,\n 84,\n 85,\n 86,\n 87,\n 88,\n 89,\n 91,\n 93,\n 95,\n 96,\n 98,\n 100,\n 101,\n 102,\n 104,\n 106,\n 108,\n 110,\n 112,\n 114,\n 116,\n 118,\n 122,\n 124,\n 126,\n 128,\n 130,\n 132,\n 134,\n 136,\n 138,\n 140,\n 143,\n 145,\n 148,\n 151,\n 154,\n 157\n ],\n Mb = [\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n 12,\n 13,\n 14,\n 15,\n 16,\n 17,\n 18,\n 19,\n 20,\n 21,\n 22,\n 23,\n 24,\n 25,\n 26,\n 27,\n 28,\n 29,\n 30,\n 31,\n 32,\n 33,\n 34,\n 35,\n 36,\n 37,\n 38,\n 39,\n 40,\n 41,\n 42,\n 43,\n 44,\n 45,\n 46,\n 47,\n 48,\n 49,\n 50,\n 51,\n 52,\n 53,\n 54,\n 55,\n 56,\n 57,\n 58,\n 60,\n 62,\n 64,\n 66,\n 68,\n 70,\n 72,\n 74,\n 76,\n 78,\n 80,\n 82,\n 84,\n 86,\n 88,\n 90,\n 92,\n 94,\n 96,\n 98,\n 100,\n 102,\n 104,\n 106,\n 108,\n 110,\n 112,\n 114,\n 116,\n 119,\n 122,\n 125,\n 128,\n 131,\n 134,\n 137,\n 140,\n 143,\n 146,\n 149,\n 152,\n 155,\n 158,\n 161,\n 164,\n 167,\n 170,\n 173,\n 177,\n 181,\n 185,\n 189,\n 193,\n 197,\n 201,\n 205,\n 209,\n 213,\n 217,\n 221,\n 225,\n 229,\n 234,\n 239,\n 245,\n 249,\n 254,\n 259,\n 264,\n 269,\n 274,\n 279,\n 284\n ],\n oa = null,\n He = [\n [173, 148, 140, 0],\n [176, 155, 140, 135, 0],\n [180, 157, 141, 134, 130, 0],\n [254, 254, 243, 230, 196, 177, 153, 140, 133, 130, 129, 0]\n ],\n Ie = [0, 1, 4, 8, 5, 2, 3, 6, 9, 12, 13, 10, 7, 11, 14, 15],\n Mc = [-0, 1, -1, 2, -2, 3, 4, 6, -3, 5, -4, -5, -6, 7, -7, 8, -8, -9],\n Fe = [\n [\n [\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128]\n ],\n [\n [253, 136, 254, 255, 228, 219, 128, 128, 128, 128, 128],\n [189, 129, 242, 255, 227, 213, 255, 219, 128, 128, 128],\n [106, 126, 227, 252, 214, 209, 255, 255, 128, 128, 128]\n ],\n [\n [1, 98, 248, 255, 236, 226, 255, 255, 128, 128, 128],\n [181, 133, 238, 254, 221, 234, 255, 154, 128, 128, 128],\n [78, 134, 202, 247, 198, 180, 255, 219, 128, 128, 128]\n ],\n [\n [1, 185, 249, 255, 243, 255, 128, 128, 128, 128, 128],\n [184, 150, 247, 255, 236, 224, 128, 128, 128, 128, 128],\n [77, 110, 216, 255, 236, 230, 128, 128, 128, 128, 128]\n ],\n [\n [1, 101, 251, 255, 241, 255, 128, 128, 128, 128, 128],\n [170, 139, 241, 252, 236, 209, 255, 255, 128, 128, 128],\n [37, 116, 196, 243, 228, 255, 255, 255, 128, 128, 128]\n ],\n [\n [1, 204, 254, 255, 245, 255, 128, 128, 128, 128, 128],\n [207, 160, 250, 255, 238, 128, 128, 128, 128, 128, 128],\n [102, 103, 231, 255, 211, 171, 128, 128, 128, 128, 128]\n ],\n [\n [1, 152, 252, 255, 240, 255, 128, 128, 128, 128, 128],\n [177, 135, 243, 255, 234, 225, 128, 128, 128, 128, 128],\n [80, 129, 211, 255, 194, 224, 128, 128, 128, 128, 128]\n ],\n [\n [1, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [246, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [255, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128]\n ]\n ],\n [\n [\n [198, 35, 237, 223, 193, 187, 162, 160, 145, 155, 62],\n [131, 45, 198, 221, 172, 176, 220, 157, 252, 221, 1],\n [68, 47, 146, 208, 149, 167, 221, 162, 255, 223, 128]\n ],\n [\n [1, 149, 241, 255, 221, 224, 255, 255, 128, 128, 128],\n [184, 141, 234, 253, 222, 220, 255, 199, 128, 128, 128],\n [81, 99, 181, 242, 176, 190, 249, 202, 255, 255, 128]\n ],\n [\n [1, 129, 232, 253, 214, 197, 242, 196, 255, 255, 128],\n [99, 121, 210, 250, 201, 198, 255, 202, 128, 128, 128],\n [23, 91, 163, 242, 170, 187, 247, 210, 255, 255, 128]\n ],\n [\n [1, 200, 246, 255, 234, 255, 128, 128, 128, 128, 128],\n [109, 178, 241, 255, 231, 245, 255, 255, 128, 128, 128],\n [44, 130, 201, 253, 205, 192, 255, 255, 128, 128, 128]\n ],\n [\n [1, 132, 239, 251, 219, 209, 255, 165, 128, 128, 128],\n [94, 136, 225, 251, 218, 190, 255, 255, 128, 128, 128],\n [22, 100, 174, 245, 186, 161, 255, 199, 128, 128, 128]\n ],\n [\n [1, 182, 249, 255, 232, 235, 128, 128, 128, 128, 128],\n [124, 143, 241, 255, 227, 234, 128, 128, 128, 128, 128],\n [35, 77, 181, 251, 193, 211, 255, 205, 128, 128, 128]\n ],\n [\n [1, 157, 247, 255, 236, 231, 255, 255, 128, 128, 128],\n [121, 141, 235, 255, 225, 227, 255, 255, 128, 128, 128],\n [45, 99, 188, 251, 195, 217, 255, 224, 128, 128, 128]\n ],\n [\n [1, 1, 251, 255, 213, 255, 128, 128, 128, 128, 128],\n [203, 1, 248, 255, 255, 128, 128, 128, 128, 128, 128],\n [137, 1, 177, 255, 224, 255, 128, 128, 128, 128, 128]\n ]\n ],\n [\n [\n [253, 9, 248, 251, 207, 208, 255, 192, 128, 128, 128],\n [175, 13, 224, 243, 193, 185, 249, 198, 255, 255, 128],\n [73, 17, 171, 221, 161, 179, 236, 167, 255, 234, 128]\n ],\n [\n [1, 95, 247, 253, 212, 183, 255, 255, 128, 128, 128],\n [239, 90, 244, 250, 211, 209, 255, 255, 128, 128, 128],\n [155, 77, 195, 248, 188, 195, 255, 255, 128, 128, 128]\n ],\n [\n [1, 24, 239, 251, 218, 219, 255, 205, 128, 128, 128],\n [201, 51, 219, 255, 196, 186, 128, 128, 128, 128, 128],\n [69, 46, 190, 239, 201, 218, 255, 228, 128, 128, 128]\n ],\n [\n [1, 191, 251, 255, 255, 128, 128, 128, 128, 128, 128],\n [223, 165, 249, 255, 213, 255, 128, 128, 128, 128, 128],\n [141, 124, 248, 255, 255, 128, 128, 128, 128, 128, 128]\n ],\n [\n [1, 16, 248, 255, 255, 128, 128, 128, 128, 128, 128],\n [190, 36, 230, 255, 236, 255, 128, 128, 128, 128, 128],\n [149, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128]\n ],\n [\n [1, 226, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [247, 192, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [240, 128, 255, 128, 128, 128, 128, 128, 128, 128, 128]\n ],\n [\n [1, 134, 252, 255, 255, 128, 128, 128, 128, 128, 128],\n [213, 62, 250, 255, 255, 128, 128, 128, 128, 128, 128],\n [55, 93, 255, 128, 128, 128, 128, 128, 128, 128, 128]\n ],\n [\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128]\n ]\n ],\n [\n [\n [202, 24, 213, 235, 186, 191, 220, 160, 240, 175, 255],\n [126, 38, 182, 232, 169, 184, 228, 174, 255, 187, 128],\n [61, 46, 138, 219, 151, 178, 240, 170, 255, 216, 128]\n ],\n [\n [1, 112, 230, 250, 199, 191, 247, 159, 255, 255, 128],\n [166, 109, 228, 252, 211, 215, 255, 174, 128, 128, 128],\n [39, 77, 162, 232, 172, 180, 245, 178, 255, 255, 128]\n ],\n [\n [1, 52, 220, 246, 198, 199, 249, 220, 255, 255, 128],\n [124, 74, 191, 243, 183, 193, 250, 221, 255, 255, 128],\n [24, 71, 130, 219, 154, 170, 243, 182, 255, 255, 128]\n ],\n [\n [1, 182, 225, 249, 219, 240, 255, 224, 128, 128, 128],\n [149, 150, 226, 252, 216, 205, 255, 171, 128, 128, 128],\n [28, 108, 170, 242, 183, 194, 254, 223, 255, 255, 128]\n ],\n [\n [1, 81, 230, 252, 204, 203, 255, 192, 128, 128, 128],\n [123, 102, 209, 247, 188, 196, 255, 233, 128, 128, 128],\n [20, 95, 153, 243, 164, 173, 255, 203, 128, 128, 128]\n ],\n [\n [1, 222, 248, 255, 216, 213, 128, 128, 128, 128, 128],\n [168, 175, 246, 252, 235, 205, 255, 255, 128, 128, 128],\n [47, 116, 215, 255, 211, 212, 255, 255, 128, 128, 128]\n ],\n [\n [1, 121, 236, 253, 212, 214, 255, 255, 128, 128, 128],\n [141, 84, 213, 252, 201, 202, 255, 219, 128, 128, 128],\n [42, 80, 160, 240, 162, 185, 255, 205, 128, 128, 128]\n ],\n [\n [1, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [244, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [238, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128]\n ]\n ]\n ],\n Ke = [\n [\n [231, 120, 48, 89, 115, 113, 120, 152, 112],\n [152, 179, 64, 126, 170, 118, 46, 70, 95],\n [175, 69, 143, 80, 85, 82, 72, 155, 103],\n [56, 58, 10, 171, 218, 189, 17, 13, 152],\n [114, 26, 17, 163, 44, 195, 21, 10, 173],\n [121, 24, 80, 195, 26, 62, 44, 64, 85],\n [144, 71, 10, 38, 171, 213, 144, 34, 26],\n [170, 46, 55, 19, 136, 160, 33, 206, 71],\n [63, 20, 8, 114, 114, 208, 12, 9, 226],\n [81, 40, 11, 96, 182, 84, 29, 16, 36]\n ],\n [\n [134, 183, 89, 137, 98, 101, 106, 165, 148],\n [72, 187, 100, 130, 157, 111, 32, 75, 80],\n [66, 102, 167, 99, 74, 62, 40, 234, 128],\n [41, 53, 9, 178, 241, 141, 26, 8, 107],\n [74, 43, 26, 146, 73, 166, 49, 23, 157],\n [65, 38, 105, 160, 51, 52, 31, 115, 128],\n [104, 79, 12, 27, 217, 255, 87, 17, 7],\n [87, 68, 71, 44, 114, 51, 15, 186, 23],\n [47, 41, 14, 110, 182, 183, 21, 17, 194],\n [66, 45, 25, 102, 197, 189, 23, 18, 22]\n ],\n [\n [88, 88, 147, 150, 42, 46, 45, 196, 205],\n [43, 97, 183, 117, 85, 38, 35, 179, 61],\n [39, 53, 200, 87, 26, 21, 43, 232, 171],\n [56, 34, 51, 104, 114, 102, 29, 93, 77],\n [39, 28, 85, 171, 58, 165, 90, 98, 64],\n [34, 22, 116, 206, 23, 34, 43, 166, 73],\n [107, 54, 32, 26, 51, 1, 81, 43, 31],\n [68, 25, 106, 22, 64, 171, 36, 225, 114],\n [34, 19, 21, 102, 132, 188, 16, 76, 124],\n [62, 18, 78, 95, 85, 57, 50, 48, 51]\n ],\n [\n [193, 101, 35, 159, 215, 111, 89, 46, 111],\n [60, 148, 31, 172, 219, 228, 21, 18, 111],\n [112, 113, 77, 85, 179, 255, 38, 120, 114],\n [40, 42, 1, 196, 245, 209, 10, 25, 109],\n [88, 43, 29, 140, 166, 213, 37, 43, 154],\n [61, 63, 30, 155, 67, 45, 68, 1, 209],\n [100, 80, 8, 43, 154, 1, 51, 26, 71],\n [142, 78, 78, 16, 255, 128, 34, 197, 171],\n [41, 40, 5, 102, 211, 183, 4, 1, 221],\n [51, 50, 17, 168, 209, 192, 23, 25, 82]\n ],\n [\n [138, 31, 36, 171, 27, 166, 38, 44, 229],\n [67, 87, 58, 169, 82, 115, 26, 59, 179],\n [63, 59, 90, 180, 59, 166, 93, 73, 154],\n [40, 40, 21, 116, 143, 209, 34, 39, 175],\n [47, 15, 16, 183, 34, 223, 49, 45, 183],\n [46, 17, 33, 183, 6, 98, 15, 32, 183],\n [57, 46, 22, 24, 128, 1, 54, 17, 37],\n [65, 32, 73, 115, 28, 128, 23, 128, 205],\n [40, 3, 9, 115, 51, 192, 18, 6, 223],\n [87, 37, 9, 115, 59, 77, 64, 21, 47]\n ],\n [\n [104, 55, 44, 218, 9, 54, 53, 130, 226],\n [64, 90, 70, 205, 40, 41, 23, 26, 57],\n [54, 57, 112, 184, 5, 41, 38, 166, 213],\n [30, 34, 26, 133, 152, 116, 10, 32, 134],\n [39, 19, 53, 221, 26, 114, 32, 73, 255],\n [31, 9, 65, 234, 2, 15, 1, 118, 73],\n [75, 32, 12, 51, 192, 255, 160, 43, 51],\n [88, 31, 35, 67, 102, 85, 55, 186, 85],\n [56, 21, 23, 111, 59, 205, 45, 37, 192],\n [55, 38, 70, 124, 73, 102, 1, 34, 98]\n ],\n [\n [125, 98, 42, 88, 104, 85, 117, 175, 82],\n [95, 84, 53, 89, 128, 100, 113, 101, 45],\n [75, 79, 123, 47, 51, 128, 81, 171, 1],\n [57, 17, 5, 71, 102, 57, 53, 41, 49],\n [38, 33, 13, 121, 57, 73, 26, 1, 85],\n [41, 10, 67, 138, 77, 110, 90, 47, 114],\n [115, 21, 2, 10, 102, 255, 166, 23, 6],\n [101, 29, 16, 10, 85, 128, 101, 196, 26],\n [57, 18, 10, 102, 102, 213, 34, 20, 43],\n [117, 20, 15, 36, 163, 128, 68, 1, 26]\n ],\n [\n [102, 61, 71, 37, 34, 53, 31, 243, 192],\n [69, 60, 71, 38, 73, 119, 28, 222, 37],\n [68, 45, 128, 34, 1, 47, 11, 245, 171],\n [62, 17, 19, 70, 146, 85, 55, 62, 70],\n [37, 43, 37, 154, 100, 163, 85, 160, 1],\n [63, 9, 92, 136, 28, 64, 32, 201, 85],\n [75, 15, 9, 9, 64, 255, 184, 119, 16],\n [86, 6, 28, 5, 64, 255, 25, 248, 1],\n [56, 8, 17, 132, 137, 255, 55, 116, 128],\n [58, 15, 20, 82, 135, 57, 26, 121, 40]\n ],\n [\n [164, 50, 31, 137, 154, 133, 25, 35, 218],\n [51, 103, 44, 131, 131, 123, 31, 6, 158],\n [86, 40, 64, 135, 148, 224, 45, 183, 128],\n [22, 26, 17, 131, 240, 154, 14, 1, 209],\n [45, 16, 21, 91, 64, 222, 7, 1, 197],\n [56, 21, 39, 155, 60, 138, 23, 102, 213],\n [83, 12, 13, 54, 192, 255, 68, 47, 28],\n [85, 26, 85, 85, 128, 128, 32, 146, 171],\n [18, 11, 7, 63, 144, 171, 4, 4, 246],\n [35, 27, 10, 146, 174, 171, 12, 26, 128]\n ],\n [\n [190, 80, 35, 99, 180, 80, 126, 54, 45],\n [85, 126, 47, 87, 176, 51, 41, 20, 32],\n [101, 75, 128, 139, 118, 146, 116, 128, 85],\n [56, 41, 15, 176, 236, 85, 37, 9, 62],\n [71, 30, 17, 119, 118, 255, 17, 18, 138],\n [101, 38, 60, 138, 55, 70, 43, 26, 142],\n [146, 36, 19, 30, 171, 255, 97, 27, 20],\n [138, 45, 61, 62, 219, 1, 81, 188, 64],\n [32, 41, 20, 117, 151, 142, 20, 21, 163],\n [112, 19, 12, 61, 195, 128, 48, 4, 24]\n ]\n ],\n Ee = [\n [\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [176, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [223, 241, 252, 255, 255, 255, 255, 255, 255, 255, 255],\n [249, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 244, 252, 255, 255, 255, 255, 255, 255, 255, 255],\n [234, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 246, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [239, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [251, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [251, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 253, 255, 254, 255, 255, 255, 255, 255, 255],\n [250, 255, 254, 255, 254, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ]\n ],\n [\n [\n [217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [225, 252, 241, 253, 255, 255, 254, 255, 255, 255, 255],\n [234, 250, 241, 250, 253, 255, 253, 254, 255, 255, 255]\n ],\n [\n [255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [223, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [238, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [249, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [247, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ]\n ],\n [\n [\n [186, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255],\n [234, 251, 244, 254, 255, 255, 255, 255, 255, 255, 255],\n [251, 251, 243, 253, 254, 255, 254, 255, 255, 255, 255]\n ],\n [\n [255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [236, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [251, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ]\n ],\n [\n [\n [248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [250, 254, 252, 254, 255, 255, 255, 255, 255, 255, 255],\n [248, 254, 249, 253, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [246, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [252, 254, 251, 254, 254, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 252, 255, 255, 255, 255, 255, 255, 255, 255],\n [248, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [253, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [245, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 251, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [249, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ]\n ]\n ],\n Ge = [0, 1, 2, 3, 6, 4, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 0],\n Nc,\n Y = [],\n W = [],\n ka = [],\n Za,\n fd,\n Nb,\n pa,\n Ob,\n Xc,\n Tc,\n Yc,\n Uc,\n Zc,\n Vc,\n $c,\n Wc,\n Rc,\n Pc,\n Sc,\n Qc,\n re = 1,\n Cc = 2,\n ia = [],\n za,\n vc,\n fc,\n Fc,\n P = [];\n va(\"UpsampleRgbLinePair\", Ga, 3);\n va(\"UpsampleBgrLinePair\", Tb, 3);\n va(\"UpsampleRgbaLinePair\", wd, 4);\n va(\"UpsampleBgraLinePair\", vd, 4);\n va(\"UpsampleArgbLinePair\", ud, 4);\n va(\"UpsampleRgba4444LinePair\", td, 2);\n va(\"UpsampleRgb565LinePair\", sd, 2);\n var Mf = self.UpsampleRgbLinePair,\n Nf = self.UpsampleBgrLinePair,\n nd = self.UpsampleRgbaLinePair,\n od = self.UpsampleBgraLinePair,\n pd = self.UpsampleArgbLinePair,\n qd = self.UpsampleRgba4444LinePair,\n Of = self.UpsampleRgb565LinePair,\n Wa = 16,\n Ba = 1 << (Wa - 1),\n ta = -227,\n Eb = 482,\n rd = 6,\n Pf = (256 << rd) - 1,\n jc = 0,\n Yd = V(256),\n ae = V(256),\n $d = V(256),\n Zd = V(256),\n be = V(Eb - ta),\n ce = V(Eb - ta);\n la(\"YuvToRgbRow\", Ga, 3);\n la(\"YuvToBgrRow\", Tb, 3);\n la(\"YuvToRgbaRow\", wd, 4);\n la(\"YuvToBgraRow\", vd, 4);\n la(\"YuvToArgbRow\", ud, 4);\n la(\"YuvToRgba4444Row\", td, 2);\n la(\"YuvToRgb565Row\", sd, 2);\n var zd = [\n 0,\n 4,\n 8,\n 12,\n 128,\n 132,\n 136,\n 140,\n 256,\n 260,\n 264,\n 268,\n 384,\n 388,\n 392,\n 396\n ],\n Ya = [0, 2, 8],\n Qf = [8, 7, 6, 4, 4, 2, 2, 2, 1, 1, 1, 1],\n Ne = 1;\n this.WebPDecodeRGBA = function(a, b, c, d, e) {\n var f = Ua;\n var g = new Cf(),\n h = new Cb();\n g.ba = h;\n h.S = f;\n h.width = [h.width];\n h.height = [h.height];\n var k = h.width;\n var l = h.height,\n m = new Td();\n if (null == m || null == a) var n = 2;\n else\n x(null != m),\n (n = Ad(a, b, c, m.width, m.height, m.Pd, m.Qd, m.format, null));\n 0 != n\n ? (k = 0)\n : (null != k && (k[0] = m.width[0]),\n null != l && (l[0] = m.height[0]),\n (k = 1));\n if (k) {\n h.width = h.width[0];\n h.height = h.height[0];\n null != d && (d[0] = h.width);\n null != e && (e[0] = h.height);\n b: {\n d = new Oa();\n e = new md();\n e.data = a;\n e.w = b;\n e.ha = c;\n e.kd = 1;\n b = [0];\n x(null != e);\n a = Ad(e.data, e.w, e.ha, null, null, null, b, null, e);\n (0 == a || 7 == a) && b[0] && (a = 4);\n b = a;\n if (0 == b) {\n x(null != g);\n d.data = e.data;\n d.w = e.w + e.offset;\n d.ha = e.ha - e.offset;\n d.put = kc;\n d.ac = gc;\n d.bc = lc;\n d.ma = g;\n if (e.xa) {\n a = Bc();\n if (null == a) {\n g = 1;\n break b;\n }\n if (te(a, d)) {\n b = Cd(d.width, d.height, g.Oa, g.ba);\n if ((d = 0 == b)) {\n c: {\n d = a;\n d: for (;;) {\n if (null == d) {\n d = 0;\n break c;\n }\n x(null != d.s.yc);\n x(null != d.s.Ya);\n x(0 < d.s.Wb);\n c = d.l;\n x(null != c);\n e = c.ma;\n x(null != e);\n if (0 != d.xb) {\n d.ca = e.ba;\n d.tb = e.tb;\n x(null != d.ca);\n if (!hc(e.Oa, c, Va)) {\n d.a = 2;\n break d;\n }\n if (!Ec(d, c.width)) break d;\n if (c.da) break d;\n (c.da || hb(d.ca.S)) && Aa();\n 11 > d.ca.S ||\n (alert(\"todo:WebPInitConvertARGBToYUV\"),\n null != d.ca.f.kb.F && Aa());\n if (\n d.Pb &&\n 0 < d.s.ua &&\n null == d.s.vb.X &&\n !Zb(d.s.vb, d.s.Wa.Xa)\n ) {\n d.a = 1;\n break d;\n }\n d.xb = 0;\n }\n if (!Jb(d, d.V, d.Ba, d.c, d.i, c.o, ge)) break d;\n e.Dc = d.Ma;\n d = 1;\n break c;\n }\n x(0 != d.a);\n d = 0;\n }\n d = !d;\n }\n d && (b = a.a);\n } else b = a.a;\n } else {\n a = new Ce();\n if (null == a) {\n g = 1;\n break b;\n }\n a.Fa = e.na;\n a.P = e.P;\n a.qc = e.Sa;\n if (Kc(a, d)) {\n if (((b = Cd(d.width, d.height, g.Oa, g.ba)), 0 == b)) {\n a.Aa = 0;\n c = g.Oa;\n e = a;\n x(null != e);\n if (null != c) {\n k = c.Md;\n k = 0 > k ? 0 : 100 < k ? 255 : (255 * k) / 100;\n if (0 < k) {\n for (l = m = 0; 4 > l; ++l)\n (n = e.pb[l]),\n 12 > n.lc &&\n (n.ia = (k * Qf[0 > n.lc ? 0 : n.lc]) >> 3),\n (m |= n.ia);\n m && (alert(\"todo:VP8InitRandom\"), (e.ia = 1));\n }\n e.Ga = c.Id;\n 100 < e.Ga ? (e.Ga = 100) : 0 > e.Ga && (e.Ga = 0);\n }\n Me(a, d) || (b = a.a);\n }\n } else b = a.a;\n }\n 0 == b && null != g.Oa && g.Oa.fd && (b = Bd(g.ba));\n }\n g = b;\n }\n f = 0 != g ? null : 11 > f ? h.f.RGBA.eb : h.f.kb.y;\n } else f = null;\n return f;\n };\n var Dd = [3, 4, 3, 4, 4, 2, 2, 4, 4, 4, 2, 1, 1];\n };\n new _WebPDecoder();\n\n /** @license\n * Copyright (c) 2017 Dominik Homberger\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nhttps://webpjs.appspot.com\nWebPRiffParser dominikhlbg@gmail.com\n*/\n\n function memcmp(data, data_off, str, size) {\n for (var i = 0; i < size; i++)\n if (data[data_off + i] != str.charCodeAt(i)) return true;\n return false;\n }\n\n function GetTag(data, data_off) {\n var str = \"\";\n for (var i = 0; i < 4; i++) str += String.fromCharCode(data[data_off++]);\n return str;\n }\n\n function GetLE16(data, data_off) {\n return (data[data_off + 0] << 0) | (data[data_off + 1] << 8);\n }\n\n function GetLE24(data, data_off) {\n return (\n ((data[data_off + 0] << 0) |\n (data[data_off + 1] << 8) |\n (data[data_off + 2] << 16)) >>>\n 0\n );\n }\n\n function GetLE32(data, data_off) {\n return (\n ((data[data_off + 0] << 0) |\n (data[data_off + 1] << 8) |\n (data[data_off + 2] << 16) |\n (data[data_off + 3] << 24)) >>>\n 0\n );\n }\n\n function WebPRiffParser(src, src_off) {\n var imagearray = {};\n var i = 0;\n var alpha_chunk = false;\n var alpha_size = 0;\n var alpha_offset = 0;\n imagearray[\"frames\"] = [];\n if (memcmp(src, src_off, \"RIFF\", 4)) return;\n src_off += 4;\n var riff_size = GetLE32(src, src_off) + 8;\n src_off += 8;\n\n while (src_off < src.length) {\n var fourcc = GetTag(src, src_off);\n src_off += 4;\n\n var payload_size = GetLE32(src, src_off);\n src_off += 4;\n var payload_size_padded = payload_size + (payload_size & 1);\n\n switch (fourcc) {\n case \"VP8 \":\n case \"VP8L\":\n if (typeof imagearray[\"frames\"][i] === \"undefined\")\n imagearray[\"frames\"][i] = {};\n var obj = imagearray[\"frames\"][i];\n var height = [0];\n var width = [0];\n obj[\"src_off\"] = alpha_chunk ? alpha_offset : src_off - 8;\n obj[\"src_size\"] = alpha_size + payload_size + 8;\n //var rgba = webpdecoder.WebPDecodeRGBA(src,(alpha_chunk?alpha_offset:src_off-8),alpha_size+payload_size+8,width,height);\n //imagearray[i]={'rgba':rgba,'width':width[0],'height':height[0]};\n i++;\n if (alpha_chunk) {\n alpha_chunk = false;\n alpha_size = 0;\n alpha_offset = 0;\n }\n break;\n case \"VP8X\":\n var obj = (imagearray[\"header\"] = {});\n var feature_flags = (obj[\"feature_flags\"] = src[src_off]);\n var src_off_ = src_off + 4;\n var canvas_width = (obj[\"canvas_width\"] = 1 + GetLE24(src, src_off_));\n src_off_ += 3;\n var canvas_height = (obj[\"canvas_height\"] =\n 1 + GetLE24(src, src_off_));\n src_off_ += 3;\n break;\n case \"ALPH\":\n alpha_chunk = true;\n alpha_size = payload_size_padded + 8;\n alpha_offset = src_off - 8;\n break;\n\n case \"ANIM\":\n var obj = imagearray[\"header\"];\n var bgcolor = (obj[\"bgcolor\"] = GetLE32(src, src_off));\n src_off_ = src_off + 4;\n\n var loop_count = (obj[\"loop_count\"] = GetLE16(src, src_off_));\n src_off_ += 2;\n break;\n case \"ANMF\":\n var offset_x = 0,\n offset_y = 0,\n width = 0,\n height = 0,\n duration = 0,\n blend = 0,\n dispose = 0,\n temp = 0;\n var obj = (imagearray[\"frames\"][i] = {});\n obj[\"offset_x\"] = offset_x = 2 * GetLE24(src, src_off);\n src_off += 3;\n obj[\"offset_y\"] = offset_y = 2 * GetLE24(src, src_off);\n src_off += 3;\n obj[\"width\"] = width = 1 + GetLE24(src, src_off);\n src_off += 3;\n obj[\"height\"] = height = 1 + GetLE24(src, src_off);\n src_off += 3;\n obj[\"duration\"] = duration = GetLE24(src, src_off);\n src_off += 3;\n temp = src[src_off++];\n obj[\"dispose\"] = dispose = temp & 1;\n obj[\"blend\"] = blend = (temp >> 1) & 1;\n break;\n default:\n }\n if (fourcc != \"ANMF\") src_off += payload_size_padded;\n }\n return imagearray;\n }\n\n var height = [0];\n var width = [0];\n var pixels = [];\n var webpdecoder = new _WebPDecoder();\n\n var response = imageData;\n var imagearray = WebPRiffParser(response, 0);\n imagearray[\"response\"] = response;\n imagearray[\"rgbaoutput\"] = true;\n imagearray[\"dataurl\"] = false;\n\n var header = imagearray[\"header\"] ? imagearray[\"header\"] : null;\n var frames = imagearray[\"frames\"] ? imagearray[\"frames\"] : null;\n\n if (header) {\n header[\"loop_counter\"] = header[\"loop_count\"];\n height = [header[\"canvas_height\"]];\n width = [header[\"canvas_width\"]];\n\n var blend = false;\n for (var f = 0; f < frames.length; f++)\n if (frames[f][\"blend\"] == 0) {\n blend = true;\n break;\n }\n }\n\n var frame = frames[0];\n var rgba = webpdecoder.WebPDecodeRGBA(\n response,\n frame[\"src_off\"],\n frame[\"src_size\"],\n width,\n height\n );\n frame[\"rgba\"] = rgba;\n frame[\"imgwidth\"] = width[0];\n frame[\"imgheight\"] = height[0];\n\n for (var i = 0; i < width[0] * height[0] * 4; i++) {\n pixels[i] = rgba[i];\n }\n\n this.width = width;\n this.height = height;\n this.data = pixels;\n return this;\n}\n\nWebPDecoder.prototype.getData = function() {\n return this.data;\n};\n\nexport { WebPDecoder };\n","/**\n * @license\n *\n * Copyright (c) 2014 James Robb, https://github.com/jamesbrobb\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { zlibSync } from \"../libs/fflate.js\";\nimport { PNG } from \"../libs/png.js\";\n\n/**\n * jsPDF PNG PlugIn\n * @name png_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /*\n * @see http://www.w3.org/TR/PNG-Chunks.html\n *\n Color Allowed Interpretation\n Type Bit Depths\n\n 0 1,2,4,8,16 Each pixel is a grayscale sample.\n\n 2 8,16 Each pixel is an R,G,B triple.\n\n 3 1,2,4,8 Each pixel is a palette index;\n a PLTE chunk must appear.\n\n 4 8,16 Each pixel is a grayscale sample,\n followed by an alpha sample.\n\n 6 8,16 Each pixel is an R,G,B triple,\n followed by an alpha sample.\n */\n\n /*\n * PNG filter method types\n *\n * @see http://www.w3.org/TR/PNG-Filters.html\n * @see http://www.libpng.org/pub/png/book/chapter09.html\n *\n * This is what the value 'Predictor' in decode params relates to\n *\n * 15 is \"optimal prediction\", which means the prediction algorithm can change from line to line.\n * In that case, you actually have to read the first byte off each line for the prediction algorthim (which should be 0-4, corresponding to PDF 10-14) and select the appropriate unprediction algorithm based on that byte.\n *\n 0 None\n 1 Sub\n 2 Up\n 3 Average\n 4 Paeth\n */\n\n var canCompress = function(value) {\n return value !== jsPDFAPI.image_compression.NONE && hasCompressionJS();\n };\n\n var hasCompressionJS = function() {\n return typeof zlibSync === \"function\";\n };\n var compressBytes = function(bytes, lineLength, colorsPerPixel, compression) {\n var level = 4;\n var filter_method = filterUp;\n\n switch (compression) {\n case jsPDFAPI.image_compression.FAST:\n level = 1;\n filter_method = filterSub;\n break;\n\n case jsPDFAPI.image_compression.MEDIUM:\n level = 6;\n filter_method = filterAverage;\n break;\n\n case jsPDFAPI.image_compression.SLOW:\n level = 9;\n filter_method = filterPaeth;\n break;\n }\n\n bytes = applyPngFilterMethod(\n bytes,\n lineLength,\n colorsPerPixel,\n filter_method\n );\n var dat = zlibSync(bytes, { level: level });\n return jsPDFAPI.__addimage__.arrayBufferToBinaryString(dat);\n };\n\n var applyPngFilterMethod = function(\n bytes,\n lineLength,\n colorsPerPixel,\n filter_method\n ) {\n var lines = bytes.length / lineLength,\n result = new Uint8Array(bytes.length + lines),\n filter_methods = getFilterMethods(),\n line,\n prevLine,\n offset;\n\n for (var i = 0; i < lines; i += 1) {\n offset = i * lineLength;\n line = bytes.subarray(offset, offset + lineLength);\n\n if (filter_method) {\n result.set(filter_method(line, colorsPerPixel, prevLine), offset + i);\n } else {\n var len = filter_methods.length,\n results = [];\n\n for (var j; j < len; j += 1) {\n results[j] = filter_methods[j](line, colorsPerPixel, prevLine);\n }\n\n var ind = getIndexOfSmallestSum(results.concat());\n\n result.set(results[ind], offset + i);\n }\n\n prevLine = line;\n }\n\n return result;\n };\n\n var filterNone = function(line) {\n /*var result = new Uint8Array(line.length + 1);\n result[0] = 0;\n result.set(line, 1);*/\n\n var result = Array.apply([], line);\n result.unshift(0);\n\n return result;\n };\n\n var filterSub = function(line, colorsPerPixel) {\n var result = [],\n len = line.length,\n left;\n\n result[0] = 1;\n\n for (var i = 0; i < len; i += 1) {\n left = line[i - colorsPerPixel] || 0;\n result[i + 1] = (line[i] - left + 0x0100) & 0xff;\n }\n\n return result;\n };\n\n var filterUp = function(line, colorsPerPixel, prevLine) {\n var result = [],\n len = line.length,\n up;\n\n result[0] = 2;\n\n for (var i = 0; i < len; i += 1) {\n up = (prevLine && prevLine[i]) || 0;\n result[i + 1] = (line[i] - up + 0x0100) & 0xff;\n }\n\n return result;\n };\n\n var filterAverage = function(line, colorsPerPixel, prevLine) {\n var result = [],\n len = line.length,\n left,\n up;\n\n result[0] = 3;\n\n for (var i = 0; i < len; i += 1) {\n left = line[i - colorsPerPixel] || 0;\n up = (prevLine && prevLine[i]) || 0;\n result[i + 1] = (line[i] + 0x0100 - ((left + up) >>> 1)) & 0xff;\n }\n\n return result;\n };\n\n var filterPaeth = function(line, colorsPerPixel, prevLine) {\n var result = [],\n len = line.length,\n left,\n up,\n upLeft,\n paeth;\n\n result[0] = 4;\n\n for (var i = 0; i < len; i += 1) {\n left = line[i - colorsPerPixel] || 0;\n up = (prevLine && prevLine[i]) || 0;\n upLeft = (prevLine && prevLine[i - colorsPerPixel]) || 0;\n paeth = paethPredictor(left, up, upLeft);\n result[i + 1] = (line[i] - paeth + 0x0100) & 0xff;\n }\n\n return result;\n };\n\n var paethPredictor = function(left, up, upLeft) {\n if (left === up && up === upLeft) {\n return left;\n }\n var pLeft = Math.abs(up - upLeft),\n pUp = Math.abs(left - upLeft),\n pUpLeft = Math.abs(left + up - upLeft - upLeft);\n return pLeft <= pUp && pLeft <= pUpLeft\n ? left\n : pUp <= pUpLeft\n ? up\n : upLeft;\n };\n\n var getFilterMethods = function() {\n return [filterNone, filterSub, filterUp, filterAverage, filterPaeth];\n };\n\n var getIndexOfSmallestSum = function(arrays) {\n var sum = arrays.map(function(value) {\n return value.reduce(function(pv, cv) {\n return pv + Math.abs(cv);\n }, 0);\n });\n return sum.indexOf(Math.min.apply(null, sum));\n };\n\n var getPredictorFromCompression = function(compression) {\n var predictor;\n switch (compression) {\n case jsPDFAPI.image_compression.FAST:\n predictor = 11;\n break;\n\n case jsPDFAPI.image_compression.MEDIUM:\n predictor = 13;\n break;\n\n case jsPDFAPI.image_compression.SLOW:\n predictor = 14;\n break;\n\n default:\n predictor = 12;\n break;\n }\n return predictor;\n };\n\n /**\n * @name processPNG\n * @function\n * @ignore\n */\n jsPDFAPI.processPNG = function(imageData, index, alias, compression) {\n \"use strict\";\n\n var colorSpace,\n filter = this.decode.FLATE_DECODE,\n bitsPerComponent,\n image,\n decodeParameters = \"\",\n trns,\n colors,\n pal,\n smask,\n pixels,\n len,\n alphaData,\n imgData,\n hasColors,\n pixel,\n i,\n n;\n\n if (this.__addimage__.isArrayBuffer(imageData))\n imageData = new Uint8Array(imageData);\n\n if (this.__addimage__.isArrayBufferView(imageData)) {\n image = new PNG(imageData);\n imageData = image.imgData;\n bitsPerComponent = image.bits;\n colorSpace = image.colorSpace;\n colors = image.colors;\n\n /*\n * colorType 6 - Each pixel is an R,G,B triple, followed by an alpha sample.\n *\n * colorType 4 - Each pixel is a grayscale sample, followed by an alpha sample.\n *\n * Extract alpha to create two separate images, using the alpha as a sMask\n */\n if ([4, 6].indexOf(image.colorType) !== -1) {\n /*\n * processes 8 bit RGBA and grayscale + alpha images\n */\n if (image.bits === 8) {\n pixels =\n image.pixelBitlength == 32\n ? new Uint32Array(image.decodePixels().buffer)\n : image.pixelBitlength == 16\n ? new Uint16Array(image.decodePixels().buffer)\n : new Uint8Array(image.decodePixels().buffer);\n len = pixels.length;\n imgData = new Uint8Array(len * image.colors);\n alphaData = new Uint8Array(len);\n var pDiff = image.pixelBitlength - image.bits;\n i = 0;\n n = 0;\n var pbl;\n\n for (; i < len; i++) {\n pixel = pixels[i];\n pbl = 0;\n\n while (pbl < pDiff) {\n imgData[n++] = (pixel >>> pbl) & 0xff;\n pbl = pbl + image.bits;\n }\n\n alphaData[i] = (pixel >>> pbl) & 0xff;\n }\n }\n\n /*\n * processes 16 bit RGBA and grayscale + alpha images\n */\n if (image.bits === 16) {\n pixels = new Uint32Array(image.decodePixels().buffer);\n len = pixels.length;\n imgData = new Uint8Array(\n len * (32 / image.pixelBitlength) * image.colors\n );\n alphaData = new Uint8Array(len * (32 / image.pixelBitlength));\n hasColors = image.colors > 1;\n i = 0;\n n = 0;\n var a = 0;\n\n while (i < len) {\n pixel = pixels[i++];\n\n imgData[n++] = (pixel >>> 0) & 0xff;\n\n if (hasColors) {\n imgData[n++] = (pixel >>> 16) & 0xff;\n\n pixel = pixels[i++];\n imgData[n++] = (pixel >>> 0) & 0xff;\n }\n\n alphaData[a++] = (pixel >>> 16) & 0xff;\n }\n bitsPerComponent = 8;\n }\n\n if (canCompress(compression)) {\n imageData = compressBytes(\n imgData,\n image.width * image.colors,\n image.colors,\n compression\n );\n smask = compressBytes(alphaData, image.width, 1, compression);\n } else {\n imageData = imgData;\n smask = alphaData;\n filter = undefined;\n }\n }\n\n /*\n * Indexed png. Each pixel is a palette index.\n */\n if (image.colorType === 3) {\n colorSpace = this.color_spaces.INDEXED;\n pal = image.palette;\n\n if (image.transparency.indexed) {\n var trans = image.transparency.indexed;\n var total = 0;\n i = 0;\n len = trans.length;\n\n for (; i < len; ++i) {\n total += trans[i];\n }\n\n total = total / 255;\n\n /*\n * a single color is specified as 100% transparent (0),\n * so we set trns to use a /Mask with that index\n */\n if (total === len - 1 && trans.indexOf(0) !== -1) {\n trns = [trans.indexOf(0)];\n\n /*\n * there's more than one colour within the palette that specifies\n * a transparency value less than 255, so we unroll the pixels to create an image sMask\n */\n } else if (total !== len) {\n pixels = image.decodePixels();\n alphaData = new Uint8Array(pixels.length);\n i = 0;\n len = pixels.length;\n\n for (; i < len; i++) {\n alphaData[i] = trans[pixels[i]];\n }\n\n smask = compressBytes(alphaData, image.width, 1);\n }\n }\n }\n\n var predictor = getPredictorFromCompression(compression);\n\n if (filter === this.decode.FLATE_DECODE) {\n decodeParameters = \"/Predictor \" + predictor + \" \";\n }\n decodeParameters +=\n \"/Colors \" +\n colors +\n \" /BitsPerComponent \" +\n bitsPerComponent +\n \" /Columns \" +\n image.width;\n\n if (\n this.__addimage__.isArrayBuffer(imageData) ||\n this.__addimage__.isArrayBufferView(imageData)\n ) {\n imageData = this.__addimage__.arrayBufferToBinaryString(imageData);\n }\n\n if (\n (smask && this.__addimage__.isArrayBuffer(smask)) ||\n this.__addimage__.isArrayBufferView(smask)\n ) {\n smask = this.__addimage__.arrayBufferToBinaryString(smask);\n }\n\n return {\n alias: alias,\n data: imageData,\n index: index,\n filter: filter,\n decodeParameters: decodeParameters,\n transparency: trns,\n palette: pal,\n sMask: smask,\n predictor: predictor,\n width: image.width,\n height: image.height,\n bitsPerComponent: bitsPerComponent,\n colorSpace: colorSpace\n };\n }\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2017 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { GifReader } from \"../libs/omggif.js\";\nimport { JPEGEncoder } from \"../libs/JPEGEncoder.js\";\n\n/**\n * jsPDF Gif Support PlugIn\n *\n * @name gif_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n jsPDFAPI.processGIF89A = function(imageData, index, alias, compression) {\n var reader = new GifReader(imageData);\n var width = reader.width,\n height = reader.height;\n var qu = 100;\n var pixels = [];\n\n reader.decodeAndBlitFrameRGBA(0, pixels);\n var rawImageData = {\n data: pixels,\n width: width,\n height: height\n };\n\n var encoder = new JPEGEncoder(qu);\n var data = encoder.encode(rawImageData, qu);\n return jsPDFAPI.processJPEG.call(this, data, index, alias, compression);\n };\n\n jsPDFAPI.processGIF87A = jsPDFAPI.processGIF89A;\n})(jsPDF.API);\n","import { JPEGEncoder } from \"../libs/JPEGEncoder.js\";\nimport { BmpDecoder } from \"../libs/BMPDecoder.js\";\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @license\n * Copyright (c) 2018 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\n/**\n * jsPDF bmp Support PlugIn\n * @name bmp_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n jsPDFAPI.processBMP = function(imageData, index, alias, compression) {\n var reader = new BmpDecoder(imageData, false);\n var width = reader.width,\n height = reader.height;\n var qu = 100;\n var pixels = reader.getData();\n\n var rawImageData = {\n data: pixels,\n width: width,\n height: height\n };\n\n var encoder = new JPEGEncoder(qu);\n var data = encoder.encode(rawImageData, qu);\n return jsPDFAPI.processJPEG.call(this, data, index, alias, compression);\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2019 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { JPEGEncoder } from \"../libs/JPEGEncoder.js\";\nimport { WebPDecoder } from \"../libs/WebPDecoder.js\";\n\n/**\n * jsPDF webp Support PlugIn\n *\n * @name webp_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n jsPDFAPI.processWEBP = function(imageData, index, alias, compression) {\n var reader = new WebPDecoder(imageData, false);\n var width = reader.width,\n height = reader.height;\n var qu = 100;\n var pixels = reader.getData();\n\n var rawImageData = {\n data: pixels,\n width: width,\n height: height\n };\n\n var encoder = new JPEGEncoder(qu);\n var data = encoder.encode(rawImageData, qu);\n return jsPDFAPI.processJPEG.call(this, data, index, alias, compression);\n };\n})(jsPDF.API);\n","/**\n * @license\n *\n * Copyright (c) 2021 Antti Palola, https://github.com/Pantura\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF RGBA array PlugIn\n * @name rgba_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * @name processRGBA\n * @function\n *\n * Process RGBA Array. This is a one-dimension array with pixel data [red, green, blue, alpha, red, green, ...].\n * RGBA array data can be obtained from DOM canvas getImageData.\n * @ignore\n */\n jsPDFAPI.processRGBA = function(imageData, index, alias) {\n \"use strict\";\n\n var imagePixels = imageData.data;\n var length = imagePixels.length;\n // jsPDF takes alpha data separately so extract that.\n var rgbOut = new Uint8Array((length / 4) * 3);\n var alphaOut = new Uint8Array(length / 4);\n var outIndex = 0;\n var alphaIndex = 0;\n\n for (var i = 0; i < length; i += 4) {\n var r = imagePixels[i];\n var g = imagePixels[i + 1];\n var b = imagePixels[i + 2];\n var alpha = imagePixels[i + 3];\n rgbOut[outIndex++] = r;\n rgbOut[outIndex++] = g;\n rgbOut[outIndex++] = b;\n alphaOut[alphaIndex++] = alpha;\n }\n\n var rgbData = this.__addimage__.arrayBufferToBinaryString(rgbOut);\n var alphaData = this.__addimage__.arrayBufferToBinaryString(alphaOut);\n\n return {\n alpha: alphaData,\n data: rgbData,\n index: index,\n alias: alias,\n colorSpace: \"DeviceRGB\",\n bitsPerComponent: 8,\n width: imageData.width,\n height: imageData.height\n };\n };\n})(jsPDF.API);\n","/**\n * @license\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF setLanguage Plugin\n *\n * @name setLanguage\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * Add Language Tag to the generated PDF\n *\n * @name setLanguage\n * @function\n * @param {string} langCode The Language code as ISO-639-1 (e.g. 'en') or as country language code (e.g. 'en-GB').\n * @returns {jsPDF}\n * @example\n * var doc = new jsPDF()\n * doc.text(10, 10, 'This is a test')\n * doc.setLanguage(\"en-US\")\n * doc.save('english.pdf')\n */\n jsPDFAPI.setLanguage = function(langCode) {\n \"use strict\";\n\n var langCodes = {\n af: \"Afrikaans\",\n sq: \"Albanian\",\n ar: \"Arabic (Standard)\",\n \"ar-DZ\": \"Arabic (Algeria)\",\n \"ar-BH\": \"Arabic (Bahrain)\",\n \"ar-EG\": \"Arabic (Egypt)\",\n \"ar-IQ\": \"Arabic (Iraq)\",\n \"ar-JO\": \"Arabic (Jordan)\",\n \"ar-KW\": \"Arabic (Kuwait)\",\n \"ar-LB\": \"Arabic (Lebanon)\",\n \"ar-LY\": \"Arabic (Libya)\",\n \"ar-MA\": \"Arabic (Morocco)\",\n \"ar-OM\": \"Arabic (Oman)\",\n \"ar-QA\": \"Arabic (Qatar)\",\n \"ar-SA\": \"Arabic (Saudi Arabia)\",\n \"ar-SY\": \"Arabic (Syria)\",\n \"ar-TN\": \"Arabic (Tunisia)\",\n \"ar-AE\": \"Arabic (U.A.E.)\",\n \"ar-YE\": \"Arabic (Yemen)\",\n an: \"Aragonese\",\n hy: \"Armenian\",\n as: \"Assamese\",\n ast: \"Asturian\",\n az: \"Azerbaijani\",\n eu: \"Basque\",\n be: \"Belarusian\",\n bn: \"Bengali\",\n bs: \"Bosnian\",\n br: \"Breton\",\n bg: \"Bulgarian\",\n my: \"Burmese\",\n ca: \"Catalan\",\n ch: \"Chamorro\",\n ce: \"Chechen\",\n zh: \"Chinese\",\n \"zh-HK\": \"Chinese (Hong Kong)\",\n \"zh-CN\": \"Chinese (PRC)\",\n \"zh-SG\": \"Chinese (Singapore)\",\n \"zh-TW\": \"Chinese (Taiwan)\",\n cv: \"Chuvash\",\n co: \"Corsican\",\n cr: \"Cree\",\n hr: \"Croatian\",\n cs: \"Czech\",\n da: \"Danish\",\n nl: \"Dutch (Standard)\",\n \"nl-BE\": \"Dutch (Belgian)\",\n en: \"English\",\n \"en-AU\": \"English (Australia)\",\n \"en-BZ\": \"English (Belize)\",\n \"en-CA\": \"English (Canada)\",\n \"en-IE\": \"English (Ireland)\",\n \"en-JM\": \"English (Jamaica)\",\n \"en-NZ\": \"English (New Zealand)\",\n \"en-PH\": \"English (Philippines)\",\n \"en-ZA\": \"English (South Africa)\",\n \"en-TT\": \"English (Trinidad & Tobago)\",\n \"en-GB\": \"English (United Kingdom)\",\n \"en-US\": \"English (United States)\",\n \"en-ZW\": \"English (Zimbabwe)\",\n eo: \"Esperanto\",\n et: \"Estonian\",\n fo: \"Faeroese\",\n fj: \"Fijian\",\n fi: \"Finnish\",\n fr: \"French (Standard)\",\n \"fr-BE\": \"French (Belgium)\",\n \"fr-CA\": \"French (Canada)\",\n \"fr-FR\": \"French (France)\",\n \"fr-LU\": \"French (Luxembourg)\",\n \"fr-MC\": \"French (Monaco)\",\n \"fr-CH\": \"French (Switzerland)\",\n fy: \"Frisian\",\n fur: \"Friulian\",\n gd: \"Gaelic (Scots)\",\n \"gd-IE\": \"Gaelic (Irish)\",\n gl: \"Galacian\",\n ka: \"Georgian\",\n de: \"German (Standard)\",\n \"de-AT\": \"German (Austria)\",\n \"de-DE\": \"German (Germany)\",\n \"de-LI\": \"German (Liechtenstein)\",\n \"de-LU\": \"German (Luxembourg)\",\n \"de-CH\": \"German (Switzerland)\",\n el: \"Greek\",\n gu: \"Gujurati\",\n ht: \"Haitian\",\n he: \"Hebrew\",\n hi: \"Hindi\",\n hu: \"Hungarian\",\n is: \"Icelandic\",\n id: \"Indonesian\",\n iu: \"Inuktitut\",\n ga: \"Irish\",\n it: \"Italian (Standard)\",\n \"it-CH\": \"Italian (Switzerland)\",\n ja: \"Japanese\",\n kn: \"Kannada\",\n ks: \"Kashmiri\",\n kk: \"Kazakh\",\n km: \"Khmer\",\n ky: \"Kirghiz\",\n tlh: \"Klingon\",\n ko: \"Korean\",\n \"ko-KP\": \"Korean (North Korea)\",\n \"ko-KR\": \"Korean (South Korea)\",\n la: \"Latin\",\n lv: \"Latvian\",\n lt: \"Lithuanian\",\n lb: \"Luxembourgish\",\n mk: \"North Macedonia\",\n ms: \"Malay\",\n ml: \"Malayalam\",\n mt: \"Maltese\",\n mi: \"Maori\",\n mr: \"Marathi\",\n mo: \"Moldavian\",\n nv: \"Navajo\",\n ng: \"Ndonga\",\n ne: \"Nepali\",\n no: \"Norwegian\",\n nb: \"Norwegian (Bokmal)\",\n nn: \"Norwegian (Nynorsk)\",\n oc: \"Occitan\",\n or: \"Oriya\",\n om: \"Oromo\",\n fa: \"Persian\",\n \"fa-IR\": \"Persian/Iran\",\n pl: \"Polish\",\n pt: \"Portuguese\",\n \"pt-BR\": \"Portuguese (Brazil)\",\n pa: \"Punjabi\",\n \"pa-IN\": \"Punjabi (India)\",\n \"pa-PK\": \"Punjabi (Pakistan)\",\n qu: \"Quechua\",\n rm: \"Rhaeto-Romanic\",\n ro: \"Romanian\",\n \"ro-MO\": \"Romanian (Moldavia)\",\n ru: \"Russian\",\n \"ru-MO\": \"Russian (Moldavia)\",\n sz: \"Sami (Lappish)\",\n sg: \"Sango\",\n sa: \"Sanskrit\",\n sc: \"Sardinian\",\n sd: \"Sindhi\",\n si: \"Singhalese\",\n sr: \"Serbian\",\n sk: \"Slovak\",\n sl: \"Slovenian\",\n so: \"Somani\",\n sb: \"Sorbian\",\n es: \"Spanish\",\n \"es-AR\": \"Spanish (Argentina)\",\n \"es-BO\": \"Spanish (Bolivia)\",\n \"es-CL\": \"Spanish (Chile)\",\n \"es-CO\": \"Spanish (Colombia)\",\n \"es-CR\": \"Spanish (Costa Rica)\",\n \"es-DO\": \"Spanish (Dominican Republic)\",\n \"es-EC\": \"Spanish (Ecuador)\",\n \"es-SV\": \"Spanish (El Salvador)\",\n \"es-GT\": \"Spanish (Guatemala)\",\n \"es-HN\": \"Spanish (Honduras)\",\n \"es-MX\": \"Spanish (Mexico)\",\n \"es-NI\": \"Spanish (Nicaragua)\",\n \"es-PA\": \"Spanish (Panama)\",\n \"es-PY\": \"Spanish (Paraguay)\",\n \"es-PE\": \"Spanish (Peru)\",\n \"es-PR\": \"Spanish (Puerto Rico)\",\n \"es-ES\": \"Spanish (Spain)\",\n \"es-UY\": \"Spanish (Uruguay)\",\n \"es-VE\": \"Spanish (Venezuela)\",\n sx: \"Sutu\",\n sw: \"Swahili\",\n sv: \"Swedish\",\n \"sv-FI\": \"Swedish (Finland)\",\n \"sv-SV\": \"Swedish (Sweden)\",\n ta: \"Tamil\",\n tt: \"Tatar\",\n te: \"Teluga\",\n th: \"Thai\",\n tig: \"Tigre\",\n ts: \"Tsonga\",\n tn: \"Tswana\",\n tr: \"Turkish\",\n tk: \"Turkmen\",\n uk: \"Ukrainian\",\n hsb: \"Upper Sorbian\",\n ur: \"Urdu\",\n ve: \"Venda\",\n vi: \"Vietnamese\",\n vo: \"Volapuk\",\n wa: \"Walloon\",\n cy: \"Welsh\",\n xh: \"Xhosa\",\n ji: \"Yiddish\",\n zu: \"Zulu\"\n };\n\n if (this.internal.languageSettings === undefined) {\n this.internal.languageSettings = {};\n this.internal.languageSettings.isSubscribed = false;\n }\n\n if (langCodes[langCode] !== undefined) {\n this.internal.languageSettings.languageCode = langCode;\n if (this.internal.languageSettings.isSubscribed === false) {\n this.internal.events.subscribe(\"putCatalog\", function() {\n this.internal.write(\n \"/Lang (\" + this.internal.languageSettings.languageCode + \")\"\n );\n });\n this.internal.languageSettings.isSubscribed = true;\n }\n }\n return this;\n };\n})(jsPDF.API);\n","/** @license\n jsPDF standard_fonts_metrics plugin\n * Copyright (c) 2012 Willow Systems Corporation, https://github.com/willowsystems\n * MIT license.\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n * \n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * This file adds the standard font metrics to jsPDF.\n *\n * Font metrics data is reprocessed derivative of contents of\n * \"Font Metrics for PDF Core 14 Fonts\" package, which exhibits the following copyright and license:\n *\n * Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.\n *\n * This file and the 14 PostScript(R) AFM files it accompanies may be used,\n * copied, and distributed for any purpose and without charge, with or without\n * modification, provided that all copyright notices are retained; that the AFM\n * files are not distributed without this file; that all modifications to this\n * file or any of the AFM files are prominently noted in the modified file(s);\n * and that this paragraph is not modified. Adobe Systems has no responsibility\n * or obligation to support the use of the AFM files.\n *\n * @name standard_fonts_metrics\n * @module\n */\n\n(function(API) {\n \"use strict\";\n API.__fontmetrics__ = API.__fontmetrics__ || {};\n\n var decoded = \"0123456789abcdef\",\n encoded = \"klmnopqrstuvwxyz\",\n mappingUncompress = {},\n mappingCompress = {};\n\n for (var i = 0; i < encoded.length; i++) {\n mappingUncompress[encoded[i]] = decoded[i];\n mappingCompress[decoded[i]] = encoded[i];\n }\n\n var hex = function(value) {\n return \"0x\" + parseInt(value, 10).toString(16);\n };\n\n var compress = (API.__fontmetrics__.compress = function(data) {\n var vals = [\"{\"];\n var value, keystring, valuestring, numberprefix;\n\n for (var key in data) {\n value = data[key];\n\n if (!isNaN(parseInt(key, 10))) {\n key = parseInt(key, 10);\n keystring = hex(key).slice(2);\n keystring =\n keystring.slice(0, -1) + mappingCompress[keystring.slice(-1)];\n } else {\n keystring = \"'\" + key + \"'\";\n }\n\n if (typeof value == \"number\") {\n if (value < 0) {\n valuestring = hex(value).slice(3);\n numberprefix = \"-\";\n } else {\n valuestring = hex(value).slice(2);\n numberprefix = \"\";\n }\n valuestring =\n numberprefix +\n valuestring.slice(0, -1) +\n mappingCompress[valuestring.slice(-1)];\n } else {\n if (typeof value === \"object\") {\n valuestring = compress(value);\n } else {\n throw new Error(\n \"Don't know what to do with value type \" + typeof value + \".\"\n );\n }\n }\n vals.push(keystring + valuestring);\n }\n vals.push(\"}\");\n return vals.join(\"\");\n });\n\n /**\n * Uncompresses data compressed into custom, base16-like format.\n *\n * @public\n * @function\n * @param\n * @returns {Type}\n */\n var uncompress = (API.__fontmetrics__.uncompress = function(data) {\n if (typeof data !== \"string\") {\n throw new Error(\"Invalid argument passed to uncompress.\");\n }\n\n var output = {},\n sign = 1,\n stringparts, // undef. will be [] in string mode\n activeobject = output,\n parentchain = [],\n parent_key_pair,\n keyparts = \"\",\n valueparts = \"\",\n key, // undef. will be Truthy when Key is resolved.\n datalen = data.length - 1, // stripping ending }\n ch;\n\n for (var i = 1; i < datalen; i += 1) {\n // - { } ' are special.\n\n ch = data[i];\n\n if (ch == \"'\") {\n if (stringparts) {\n // end of string mode\n key = stringparts.join(\"\");\n stringparts = undefined;\n } else {\n // start of string mode\n stringparts = [];\n }\n } else if (stringparts) {\n stringparts.push(ch);\n } else if (ch == \"{\") {\n // start of object\n parentchain.push([activeobject, key]);\n activeobject = {};\n key = undefined;\n } else if (ch == \"}\") {\n // end of object\n parent_key_pair = parentchain.pop();\n parent_key_pair[0][parent_key_pair[1]] = activeobject;\n key = undefined;\n activeobject = parent_key_pair[0];\n } else if (ch == \"-\") {\n sign = -1;\n } else {\n // must be number\n if (key === undefined) {\n if (mappingUncompress.hasOwnProperty(ch)) {\n keyparts += mappingUncompress[ch];\n key = parseInt(keyparts, 16) * sign;\n sign = +1;\n keyparts = \"\";\n } else {\n keyparts += ch;\n }\n } else {\n if (mappingUncompress.hasOwnProperty(ch)) {\n valueparts += mappingUncompress[ch];\n activeobject[key] = parseInt(valueparts, 16) * sign;\n sign = +1;\n key = undefined;\n valueparts = \"\";\n } else {\n valueparts += ch;\n }\n }\n }\n }\n return output;\n });\n\n // encoding = 'Unicode'\n // NOT UTF8, NOT UTF16BE/LE, NOT UCS2BE/LE. NO clever BOM behavior\n // Actual 16bit char codes used.\n // no multi-byte logic here\n\n // Unicode characters to WinAnsiEncoding:\n // {402: 131, 8211: 150, 8212: 151, 8216: 145, 8217: 146, 8218: 130, 8220: 147, 8221: 148, 8222: 132, 8224: 134, 8225: 135, 8226: 149, 8230: 133, 8364: 128, 8240:137, 8249: 139, 8250: 155, 710: 136, 8482: 153, 338: 140, 339: 156, 732: 152, 352: 138, 353: 154, 376: 159, 381: 142, 382: 158}\n // as you can see, all Unicode chars are outside of 0-255 range. No char code conflicts.\n // this means that you can give Win cp1252 encoded strings to jsPDF for rendering directly\n // as well as give strings with some (supported by these fonts) Unicode characters and\n // these will be mapped to win cp1252\n // for example, you can send char code (cp1252) 0x80 or (unicode) 0x20AC, getting \"Euro\" glyph displayed in both cases.\n\n var encodingBlock = {\n codePages: [\"WinAnsiEncoding\"],\n WinAnsiEncoding: uncompress(\n \"{19m8n201n9q201o9r201s9l201t9m201u8m201w9n201x9o201y8o202k8q202l8r202m9p202q8p20aw8k203k8t203t8v203u9v2cq8s212m9t15m8w15n9w2dw9s16k8u16l9u17s9z17x8y17y9y}\"\n )\n };\n var encodings = {\n Unicode: {\n Courier: encodingBlock,\n \"Courier-Bold\": encodingBlock,\n \"Courier-BoldOblique\": encodingBlock,\n \"Courier-Oblique\": encodingBlock,\n Helvetica: encodingBlock,\n \"Helvetica-Bold\": encodingBlock,\n \"Helvetica-BoldOblique\": encodingBlock,\n \"Helvetica-Oblique\": encodingBlock,\n \"Times-Roman\": encodingBlock,\n \"Times-Bold\": encodingBlock,\n \"Times-BoldItalic\": encodingBlock,\n \"Times-Italic\": encodingBlock\n //\t, 'Symbol'\n //\t, 'ZapfDingbats'\n }\n };\n\n var fontMetrics = {\n Unicode: {\n // all sizing numbers are n/fontMetricsFractionOf = one font size unit\n // this means that if fontMetricsFractionOf = 1000, and letter A's width is 476, it's\n // width is 476/1000 or 47.6% of its height (regardless of font size)\n // At this time this value applies to \"widths\" and \"kerning\" numbers.\n\n // char code 0 represents \"default\" (average) width - use it for chars missing in this table.\n // key 'fof' represents the \"fontMetricsFractionOf\" value\n\n \"Courier-Oblique\": uncompress(\n \"{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}\"\n ),\n \"Times-BoldItalic\": uncompress(\n \"{'widths'{k3o2q4ycx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2r202m2n2n3m2o3m2p5n202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5n4l4m4m4m4n4m4o4s4p4m4q4m4r4s4s4y4t2r4u3m4v4m4w3x4x5t4y4s4z4s5k3x5l4s5m4m5n3r5o3x5p4s5q4m5r5t5s4m5t3x5u3x5v2l5w1w5x2l5y3t5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q2l6r3m6s3r6t1w6u1w6v3m6w1w6x4y6y3r6z3m7k3m7l3m7m2r7n2r7o1w7p3r7q2w7r4m7s3m7t2w7u2r7v2n7w1q7x2n7y3t202l3mcl4mal2ram3man3mao3map3mar3mas2lat4uau1uav3maw3way4uaz2lbk2sbl3t'fof'6obo2lbp3tbq3mbr1tbs2lbu1ybv3mbz3mck4m202k3mcm4mcn4mco4mcp4mcq5ycr4mcs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz2w203k6o212m6o2dw2l2cq2l3t3m3u2l17s3x19m3m}'kerning'{cl{4qu5kt5qt5rs17ss5ts}201s{201ss}201t{cks4lscmscnscoscpscls2wu2yu201ts}201x{2wu2yu}2k{201ts}2w{4qx5kx5ou5qx5rs17su5tu}2x{17su5tu5ou}2y{4qx5kx5ou5qx5rs17ss5ts}'fof'-6ofn{17sw5tw5ou5qw5rs}7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qs}3v{17su5tu5os5qs}7p{17su5tu}ck{4qu5kt5qt5rs17ss5ts}4l{4qu5kt5qt5rs17ss5ts}cm{4qu5kt5qt5rs17ss5ts}cn{4qu5kt5qt5rs17ss5ts}co{4qu5kt5qt5rs17ss5ts}cp{4qu5kt5qt5rs17ss5ts}6l{4qu5ou5qw5rt17su5tu}5q{ckuclucmucnucoucpu4lu}5r{ckuclucmucnucoucpu4lu}7q{cksclscmscnscoscps4ls}6p{4qu5ou5qw5rt17sw5tw}ek{4qu5ou5qw5rt17su5tu}el{4qu5ou5qw5rt17su5tu}em{4qu5ou5qw5rt17su5tu}en{4qu5ou5qw5rt17su5tu}eo{4qu5ou5qw5rt17su5tu}ep{4qu5ou5qw5rt17su5tu}es{17ss5ts5qs4qu}et{4qu5ou5qw5rt17sw5tw}eu{4qu5ou5qw5rt17ss5ts}ev{17ss5ts5qs4qu}6z{17sw5tw5ou5qw5rs}fm{17sw5tw5ou5qw5rs}7n{201ts}fo{17sw5tw5ou5qw5rs}fp{17sw5tw5ou5qw5rs}fq{17sw5tw5ou5qw5rs}7r{cksclscmscnscoscps4ls}fs{17sw5tw5ou5qw5rs}ft{17su5tu}fu{17su5tu}fv{17su5tu}fw{17su5tu}fz{cksclscmscnscoscps4ls}}}\"\n ),\n \"Helvetica-Bold\": uncompress(\n \"{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}\"\n ),\n Courier: uncompress(\"{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}\"),\n \"Courier-BoldOblique\": uncompress(\n \"{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}\"\n ),\n \"Times-Bold\": uncompress(\n \"{'widths'{k3q2q5ncx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2l202m2n2n3m2o3m2p6o202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5x4l4s4m4m4n4s4o4s4p4m4q3x4r4y4s4y4t2r4u3m4v4y4w4m4x5y4y4s4z4y5k3x5l4y5m4s5n3r5o4m5p4s5q4s5r6o5s4s5t4s5u4m5v2l5w1w5x2l5y3u5z3m6k2l6l3m6m3r6n2w6o3r6p2w6q2l6r3m6s3r6t1w6u2l6v3r6w1w6x5n6y3r6z3m7k3r7l3r7m2w7n2r7o2l7p3r7q3m7r4s7s3m7t3m7u2w7v2r7w1q7x2r7y3o202l3mcl4sal2lam3man3mao3map3mar3mas2lat4uau1yav3maw3tay4uaz2lbk2sbl3t'fof'6obo2lbp3rbr1tbs2lbu2lbv3mbz3mck4s202k3mcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3rek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3m3u2l17s4s19m3m}'kerning'{cl{4qt5ks5ot5qy5rw17sv5tv}201t{cks4lscmscnscoscpscls4wv}2k{201ts}2w{4qu5ku7mu5os5qx5ru17su5tu}2x{17su5tu5ou5qs}2y{4qv5kv7mu5ot5qz5ru17su5tu}'fof'-6o7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qu}3v{17su5tu5os5qu}fu{17su5tu5ou5qu}7p{17su5tu5ou5qu}ck{4qt5ks5ot5qy5rw17sv5tv}4l{4qt5ks5ot5qy5rw17sv5tv}cm{4qt5ks5ot5qy5rw17sv5tv}cn{4qt5ks5ot5qy5rw17sv5tv}co{4qt5ks5ot5qy5rw17sv5tv}cp{4qt5ks5ot5qy5rw17sv5tv}6l{17st5tt5ou5qu}17s{ckuclucmucnucoucpu4lu4wu}5o{ckuclucmucnucoucpu4lu4wu}5q{ckzclzcmzcnzcozcpz4lz4wu}5r{ckxclxcmxcnxcoxcpx4lx4wu}5t{ckuclucmucnucoucpu4lu4wu}7q{ckuclucmucnucoucpu4lu}6p{17sw5tw5ou5qu}ek{17st5tt5qu}el{17st5tt5ou5qu}em{17st5tt5qu}en{17st5tt5qu}eo{17st5tt5qu}ep{17st5tt5ou5qu}es{17ss5ts5qu}et{17sw5tw5ou5qu}eu{17sw5tw5ou5qu}ev{17ss5ts5qu}6z{17sw5tw5ou5qu5rs}fm{17sw5tw5ou5qu5rs}fn{17sw5tw5ou5qu5rs}fo{17sw5tw5ou5qu5rs}fp{17sw5tw5ou5qu5rs}fq{17sw5tw5ou5qu5rs}7r{cktcltcmtcntcotcpt4lt5os}fs{17sw5tw5ou5qu5rs}ft{17su5tu5ou5qu}7m{5os}fv{17su5tu5ou5qu}fw{17su5tu5ou5qu}fz{cksclscmscnscoscps4ls}}}\"\n ),\n Symbol: uncompress(\n \"{'widths'{k3uaw4r19m3m2k1t2l2l202m2y2n3m2p5n202q6o3k3m2s2l2t2l2v3r2w1t3m3m2y1t2z1wbk2sbl3r'fof'6o3n3m3o3m3p3m3q3m3r3m3s3m3t3m3u1w3v1w3w3r3x3r3y3r3z2wbp3t3l3m5v2l5x2l5z3m2q4yfr3r7v3k7w1o7x3k}'kerning'{'fof'-6o}}\"\n ),\n Helvetica: uncompress(\n \"{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}\"\n ),\n \"Helvetica-BoldOblique\": uncompress(\n \"{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}\"\n ),\n ZapfDingbats: uncompress(\"{'widths'{k4u2k1w'fof'6o}'kerning'{'fof'-6o}}\"),\n \"Courier-Bold\": uncompress(\"{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}\"),\n \"Times-Italic\": uncompress(\n \"{'widths'{k3n2q4ycx2l201n3m201o5t201s2l201t2l201u2l201w3r201x3r201y3r2k1t2l2l202m2n2n3m2o3m2p5n202q5t2r1p2s2l2t2l2u3m2v4n2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w4n3x4n3y4n3z3m4k5w4l3x4m3x4n4m4o4s4p3x4q3x4r4s4s4s4t2l4u2w4v4m4w3r4x5n4y4m4z4s5k3x5l4s5m3x5n3m5o3r5p4s5q3x5r5n5s3x5t3r5u3r5v2r5w1w5x2r5y2u5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q1w6r3m6s3m6t1w6u1w6v2w6w1w6x4s6y3m6z3m7k3m7l3m7m2r7n2r7o1w7p3m7q2w7r4m7s2w7t2w7u2r7v2s7w1v7x2s7y3q202l3mcl3xal2ram3man3mao3map3mar3mas2lat4wau1vav3maw4nay4waz2lbk2sbl4n'fof'6obo2lbp3mbq3obr1tbs2lbu1zbv3mbz3mck3x202k3mcm3xcn3xco3xcp3xcq5tcr4mcs3xct3xcu3xcv3xcw2l2m2ucy2lcz2ldl4mdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr4nfs3mft3mfu3mfv3mfw3mfz2w203k6o212m6m2dw2l2cq2l3t3m3u2l17s3r19m3m}'kerning'{cl{5kt4qw}201s{201sw}201t{201tw2wy2yy6q-t}201x{2wy2yy}2k{201tw}2w{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}2x{17ss5ts5os}2y{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}'fof'-6o6t{17ss5ts5qs}7t{5os}3v{5qs}7p{17su5tu5qs}ck{5kt4qw}4l{5kt4qw}cm{5kt4qw}cn{5kt4qw}co{5kt4qw}cp{5kt4qw}6l{4qs5ks5ou5qw5ru17su5tu}17s{2ks}5q{ckvclvcmvcnvcovcpv4lv}5r{ckuclucmucnucoucpu4lu}5t{2ks}6p{4qs5ks5ou5qw5ru17su5tu}ek{4qs5ks5ou5qw5ru17su5tu}el{4qs5ks5ou5qw5ru17su5tu}em{4qs5ks5ou5qw5ru17su5tu}en{4qs5ks5ou5qw5ru17su5tu}eo{4qs5ks5ou5qw5ru17su5tu}ep{4qs5ks5ou5qw5ru17su5tu}es{5ks5qs4qs}et{4qs5ks5ou5qw5ru17su5tu}eu{4qs5ks5qw5ru17su5tu}ev{5ks5qs4qs}ex{17ss5ts5qs}6z{4qv5ks5ou5qw5ru17su5tu}fm{4qv5ks5ou5qw5ru17su5tu}fn{4qv5ks5ou5qw5ru17su5tu}fo{4qv5ks5ou5qw5ru17su5tu}fp{4qv5ks5ou5qw5ru17su5tu}fq{4qv5ks5ou5qw5ru17su5tu}7r{5os}fs{4qv5ks5ou5qw5ru17su5tu}ft{17su5tu5qs}fu{17su5tu5qs}fv{17su5tu5qs}fw{17su5tu5qs}}}\"\n ),\n \"Times-Roman\": uncompress(\n \"{'widths'{k3n2q4ycx2l201n3m201o6o201s2l201t2l201u2l201w2w201x2w201y2w2k1t2l2l202m2n2n3m2o3m2p5n202q6o2r1m2s2l2t2l2u3m2v3s2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v1w3w3s3x3s3y3s3z2w4k5w4l4s4m4m4n4m4o4s4p3x4q3r4r4s4s4s4t2l4u2r4v4s4w3x4x5t4y4s4z4s5k3r5l4s5m4m5n3r5o3x5p4s5q4s5r5y5s4s5t4s5u3x5v2l5w1w5x2l5y2z5z3m6k2l6l2w6m3m6n2w6o3m6p2w6q2l6r3m6s3m6t1w6u1w6v3m6w1w6x4y6y3m6z3m7k3m7l3m7m2l7n2r7o1w7p3m7q3m7r4s7s3m7t3m7u2w7v3k7w1o7x3k7y3q202l3mcl4sal2lam3man3mao3map3mar3mas2lat4wau1vav3maw3say4waz2lbk2sbl3s'fof'6obo2lbp3mbq2xbr1tbs2lbu1zbv3mbz2wck4s202k3mcm4scn4sco4scp4scq5tcr4mcs3xct3xcu3xcv3xcw2l2m2tcy2lcz2ldl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek2wel2wem2wen2weo2wep2weq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr3sfs3mft3mfu3mfv3mfw3mfz3m203k6o212m6m2dw2l2cq2l3t3m3u1w17s4s19m3m}'kerning'{cl{4qs5ku17sw5ou5qy5rw201ss5tw201ws}201s{201ss}201t{ckw4lwcmwcnwcowcpwclw4wu201ts}2k{201ts}2w{4qs5kw5os5qx5ru17sx5tx}2x{17sw5tw5ou5qu}2y{4qs5kw5os5qx5ru17sx5tx}'fof'-6o7t{ckuclucmucnucoucpu4lu5os5rs}3u{17su5tu5qs}3v{17su5tu5qs}7p{17sw5tw5qs}ck{4qs5ku17sw5ou5qy5rw201ss5tw201ws}4l{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cm{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cn{4qs5ku17sw5ou5qy5rw201ss5tw201ws}co{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cp{4qs5ku17sw5ou5qy5rw201ss5tw201ws}6l{17su5tu5os5qw5rs}17s{2ktclvcmvcnvcovcpv4lv4wuckv}5o{ckwclwcmwcnwcowcpw4lw4wu}5q{ckyclycmycnycoycpy4ly4wu5ms}5r{cktcltcmtcntcotcpt4lt4ws}5t{2ktclvcmvcnvcovcpv4lv4wuckv}7q{cksclscmscnscoscps4ls}6p{17su5tu5qw5rs}ek{5qs5rs}el{17su5tu5os5qw5rs}em{17su5tu5os5qs5rs}en{17su5qs5rs}eo{5qs5rs}ep{17su5tu5os5qw5rs}es{5qs}et{17su5tu5qw5rs}eu{17su5tu5qs5rs}ev{5qs}6z{17sv5tv5os5qx5rs}fm{5os5qt5rs}fn{17sv5tv5os5qx5rs}fo{17sv5tv5os5qx5rs}fp{5os5qt5rs}fq{5os5qt5rs}7r{ckuclucmucnucoucpu4lu5os}fs{17sv5tv5os5qx5rs}ft{17ss5ts5qs}fu{17sw5tw5qs}fv{17sw5tw5qs}fw{17ss5ts5qs}fz{ckuclucmucnucoucpu4lu5os5rs}}}\"\n ),\n \"Helvetica-Oblique\": uncompress(\n \"{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}\"\n )\n }\n };\n\n /*\n\tThis event handler is fired when a new jsPDF object is initialized\n\tThis event handler appends metrics data to standard fonts within\n\tthat jsPDF instance. The metrics are mapped over Unicode character\n\tcodes, NOT CIDs or other codes matching the StandardEncoding table of the\n\tstandard PDF fonts.\n\tFuture:\n\tAlso included is the encoding maping table, converting Unicode (UCS-2, UTF-16)\n\tchar codes to StandardEncoding character codes. The encoding table is to be used\n\tsomewhere around \"pdfEscape\" call.\n\t*/\n API.events.push([\n \"addFont\",\n function(data) {\n var font = data.font;\n\n var metrics = fontMetrics[\"Unicode\"][font.postScriptName];\n if (metrics) {\n font.metadata[\"Unicode\"] = {};\n font.metadata[\"Unicode\"].widths = metrics.widths;\n font.metadata[\"Unicode\"].kerning = metrics.kerning;\n }\n\n var encodingBlock = encodings[\"Unicode\"][font.postScriptName];\n if (encodingBlock) {\n font.metadata[\"Unicode\"].encoding = encodingBlock;\n font.encoding = encodingBlock.codePages[0];\n }\n }\n ]); // end of adding event handler\n})(jsPDF.API);\n","/**\n * @license\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { atob } from \"../libs/AtobBtoa.js\";\n\n/**\n * @name ttfsupport\n * @module\n */\n(function(jsPDF) {\n \"use strict\";\n\n var binaryStringToUint8Array = function(binary_string) {\n var len = binary_string.length;\n var bytes = new Uint8Array(len);\n for (var i = 0; i < len; i++) {\n bytes[i] = binary_string.charCodeAt(i);\n }\n return bytes;\n };\n\n var addFont = function(font, file) {\n // eslint-disable-next-line no-control-regex\n if (/^\\x00\\x01\\x00\\x00/.test(file)) {\n file = binaryStringToUint8Array(file);\n } else {\n file = binaryStringToUint8Array(atob(file));\n }\n font.metadata = jsPDF.API.TTFFont.open(file);\n font.metadata.Unicode = font.metadata.Unicode || {\n encoding: {},\n kerning: {},\n widths: []\n };\n font.metadata.glyIdsUsed = [0];\n };\n\n jsPDF.API.events.push([\n \"addFont\",\n function(data) {\n var file = undefined;\n var font = data.font;\n var instance = data.instance;\n if (font.isStandardFont) {\n return;\n }\n if (typeof instance !== \"undefined\") {\n if (instance.existsFileInVFS(font.postScriptName) === false) {\n file = instance.loadFile(font.postScriptName);\n } else {\n file = instance.getFileFromVFS(font.postScriptName);\n }\n if (typeof file !== \"string\") {\n throw new Error(\n \"Font is not stored as string-data in vFS, import fonts or remove declaration doc.addFont('\" +\n font.postScriptName +\n \"').\"\n );\n }\n addFont(font, file);\n } else {\n throw new Error(\n \"Font does not exist in vFS, import fonts or remove declaration doc.addFont('\" +\n font.postScriptName +\n \"').\"\n );\n }\n }\n ]); // end of adding event handler\n})(jsPDF);\n","/** @license\n * Copyright (c) 2012 Willow Systems Corporation, https://github.com/willowsystems\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { console } from \"../libs/console.js\";\nimport { globalObject } from \"../libs/globalObject.js\";\n\n/**\n * jsPDF SVG plugin\n *\n * @name svg\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n function loadCanvg() {\n return (function() {\n if (globalObject[\"canvg\"]) {\n return Promise.resolve(globalObject[\"canvg\"]);\n }\n\n return import(\"canvg\");\n\n })()\n .catch(function(e) {\n return Promise.reject(new Error(\"Could not load canvg: \" + e));\n })\n .then(function(canvg) {\n return canvg.default ? canvg.default : canvg;\n });\n }\n\n /**\n * Parses SVG XML and saves it as image into the PDF.\n *\n * Depends on canvas-element and canvg\n *\n * @name addSvgAsImage\n * @public\n * @function\n * @param {string} SVG-Data as Text\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\n * @param {number} width of SVG-Image (in units declared at inception of PDF document)\n * @param {number} height of SVG-Image (in units declared at inception of PDF document)\n * @param {string} alias of SVG-Image (if used multiple times)\n * @param {string} compression of the generated JPEG, can have the values 'NONE', 'FAST', 'MEDIUM' and 'SLOW'\n * @param {number} rotation of the image in degrees (0-359)\n *\n * @returns jsPDF jsPDF-instance\n */\n jsPDFAPI.addSvgAsImage = function(\n svg,\n x,\n y,\n w,\n h,\n alias,\n compression,\n rotation\n ) {\n if (isNaN(x) || isNaN(y)) {\n console.error(\"jsPDF.addSvgAsImage: Invalid coordinates\", arguments);\n throw new Error(\"Invalid coordinates passed to jsPDF.addSvgAsImage\");\n }\n\n if (isNaN(w) || isNaN(h)) {\n console.error(\"jsPDF.addSvgAsImage: Invalid measurements\", arguments);\n throw new Error(\n \"Invalid measurements (width and/or height) passed to jsPDF.addSvgAsImage\"\n );\n }\n\n var canvas = document.createElement(\"canvas\");\n canvas.width = w;\n canvas.height = h;\n var ctx = canvas.getContext(\"2d\");\n ctx.fillStyle = \"#fff\"; /// set white fill style\n ctx.fillRect(0, 0, canvas.width, canvas.height);\n\n var options = {\n ignoreMouse: true,\n ignoreAnimation: true,\n ignoreDimensions: true\n };\n var doc = this;\n return loadCanvg()\n .then(\n function(canvg) {\n return canvg.fromString(ctx, svg, options);\n },\n function() {\n return Promise.reject(new Error(\"Could not load canvg.\"));\n }\n )\n .then(function(instance) {\n return instance.render(options);\n })\n .then(function() {\n doc.addImage(\n canvas.toDataURL(\"image/jpeg\", 1.0),\n x,\n y,\n w,\n h,\n compression,\n rotation\n );\n });\n };\n})(jsPDF.API);\n","/**\n * @license\n * ====================================================================\n * Copyright (c) 2013 Eduardo Menezes de Morais, eduardo.morais@usp.br\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF total_pages plugin\n * @name total_pages\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n /**\n * @name putTotalPages\n * @function\n * @param {string} pageExpression Regular Expression\n * @returns {jsPDF} jsPDF-instance\n */\n\n jsPDFAPI.putTotalPages = function(pageExpression) {\n \"use strict\";\n\n var replaceExpression;\n var totalNumberOfPages = 0;\n if (parseInt(this.internal.getFont().id.substr(1), 10) < 15) {\n replaceExpression = new RegExp(pageExpression, \"g\");\n totalNumberOfPages = this.internal.getNumberOfPages();\n } else {\n replaceExpression = new RegExp(\n this.pdfEscape16(pageExpression, this.internal.getFont()),\n \"g\"\n );\n totalNumberOfPages = this.pdfEscape16(\n this.internal.getNumberOfPages() + \"\",\n this.internal.getFont()\n );\n }\n\n for (var n = 1; n <= this.internal.getNumberOfPages(); n++) {\n for (var i = 0; i < this.internal.pages[n].length; i++) {\n this.internal.pages[n][i] = this.internal.pages[n][i].replace(\n replaceExpression,\n totalNumberOfPages\n );\n }\n }\n\n return this;\n };\n})(jsPDF.API);\n","/**\n * @license\n * jsPDF viewerPreferences Plugin\n * @author Aras Abbasi (github.com/arasabbasi)\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * Adds the ability to set ViewerPreferences and by thus\n * controlling the way the document is to be presented on the\n * screen or in print.\n * @name viewerpreferences\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n /**\n * Set the ViewerPreferences of the generated PDF\n *\n * @name viewerPreferences\n * @function\n * @public\n * @param {Object} options Array with the ViewerPreferences
    \n * Example: doc.viewerPreferences({\"FitWindow\":true});
    \n *
    \n * You can set following preferences:
    \n *
    \n * HideToolbar (boolean)
    \n * Default value: false
    \n *
    \n * HideMenubar (boolean)
    \n * Default value: false.
    \n *
    \n * HideWindowUI (boolean)
    \n * Default value: false.
    \n *
    \n * FitWindow (boolean)
    \n * Default value: false.
    \n *
    \n * CenterWindow (boolean)
    \n * Default value: false
    \n *
    \n * DisplayDocTitle (boolean)
    \n * Default value: false.
    \n *
    \n * NonFullScreenPageMode (string)
    \n * Possible values: UseNone, UseOutlines, UseThumbs, UseOC
    \n * Default value: UseNone
    \n *
    \n * Direction (string)
    \n * Possible values: L2R, R2L
    \n * Default value: L2R.
    \n *
    \n * ViewArea (string)
    \n * Possible values: MediaBox, CropBox, TrimBox, BleedBox, ArtBox
    \n * Default value: CropBox.
    \n *
    \n * ViewClip (string)
    \n * Possible values: MediaBox, CropBox, TrimBox, BleedBox, ArtBox
    \n * Default value: CropBox
    \n *
    \n * PrintArea (string)
    \n * Possible values: MediaBox, CropBox, TrimBox, BleedBox, ArtBox
    \n * Default value: CropBox
    \n *
    \n * PrintClip (string)
    \n * Possible values: MediaBox, CropBox, TrimBox, BleedBox, ArtBox
    \n * Default value: CropBox.
    \n *
    \n * PrintScaling (string)
    \n * Possible values: AppDefault, None
    \n * Default value: AppDefault.
    \n *
    \n * Duplex (string)
    \n * Possible values: Simplex, DuplexFlipLongEdge, DuplexFlipShortEdge\n * Default value: none
    \n *
    \n * PickTrayByPDFSize (boolean)
    \n * Default value: false
    \n *
    \n * PrintPageRange (Array)
    \n * Example: [[1,5], [7,9]]
    \n * Default value: as defined by PDF viewer application
    \n *
    \n * NumCopies (Number)
    \n * Possible values: 1, 2, 3, 4, 5
    \n * Default value: 1
    \n *
    \n * For more information see the PDF Reference, sixth edition on Page 577\n * @param {boolean} doReset True to reset the settings\n * @function\n * @returns jsPDF jsPDF-instance\n * @example\n * var doc = new jsPDF()\n * doc.text('This is a test', 10, 10)\n * doc.viewerPreferences({'FitWindow': true}, true)\n * doc.save(\"viewerPreferences.pdf\")\n *\n * // Example printing 10 copies, using cropbox, and hiding UI.\n * doc.viewerPreferences({\n * 'HideWindowUI': true,\n * 'PrintArea': 'CropBox',\n * 'NumCopies': 10\n * })\n */\n jsPDFAPI.viewerPreferences = function(options, doReset) {\n options = options || {};\n doReset = doReset || false;\n\n var configuration;\n var configurationTemplate = {\n HideToolbar: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n HideMenubar: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n HideWindowUI: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n FitWindow: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n CenterWindow: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n DisplayDocTitle: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.4\n },\n NonFullScreenPageMode: {\n defaultValue: \"UseNone\",\n value: \"UseNone\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"UseNone\", \"UseOutlines\", \"UseThumbs\", \"UseOC\"],\n pdfVersion: 1.3\n },\n Direction: {\n defaultValue: \"L2R\",\n value: \"L2R\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"L2R\", \"R2L\"],\n pdfVersion: 1.3\n },\n ViewArea: {\n defaultValue: \"CropBox\",\n value: \"CropBox\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"MediaBox\", \"CropBox\", \"TrimBox\", \"BleedBox\", \"ArtBox\"],\n pdfVersion: 1.4\n },\n ViewClip: {\n defaultValue: \"CropBox\",\n value: \"CropBox\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"MediaBox\", \"CropBox\", \"TrimBox\", \"BleedBox\", \"ArtBox\"],\n pdfVersion: 1.4\n },\n PrintArea: {\n defaultValue: \"CropBox\",\n value: \"CropBox\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"MediaBox\", \"CropBox\", \"TrimBox\", \"BleedBox\", \"ArtBox\"],\n pdfVersion: 1.4\n },\n PrintClip: {\n defaultValue: \"CropBox\",\n value: \"CropBox\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"MediaBox\", \"CropBox\", \"TrimBox\", \"BleedBox\", \"ArtBox\"],\n pdfVersion: 1.4\n },\n PrintScaling: {\n defaultValue: \"AppDefault\",\n value: \"AppDefault\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"AppDefault\", \"None\"],\n pdfVersion: 1.6\n },\n Duplex: {\n defaultValue: \"\",\n value: \"none\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\n \"Simplex\",\n \"DuplexFlipShortEdge\",\n \"DuplexFlipLongEdge\",\n \"none\"\n ],\n pdfVersion: 1.7\n },\n PickTrayByPDFSize: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.7\n },\n PrintPageRange: {\n defaultValue: \"\",\n value: \"\",\n type: \"array\",\n explicitSet: false,\n valueSet: null,\n pdfVersion: 1.7\n },\n NumCopies: {\n defaultValue: 1,\n value: 1,\n type: \"integer\",\n explicitSet: false,\n valueSet: null,\n pdfVersion: 1.7\n }\n };\n\n var configurationKeys = Object.keys(configurationTemplate);\n\n var rangeArray = [];\n var i = 0;\n var j = 0;\n var k = 0;\n var isValid;\n\n var method;\n var value;\n\n function arrayContainsElement(array, element) {\n var iterator;\n var result = false;\n\n for (iterator = 0; iterator < array.length; iterator += 1) {\n if (array[iterator] === element) {\n result = true;\n }\n }\n return result;\n }\n\n if (this.internal.viewerpreferences === undefined) {\n this.internal.viewerpreferences = {};\n this.internal.viewerpreferences.configuration = JSON.parse(\n JSON.stringify(configurationTemplate)\n );\n this.internal.viewerpreferences.isSubscribed = false;\n }\n configuration = this.internal.viewerpreferences.configuration;\n\n if (options === \"reset\" || doReset === true) {\n var len = configurationKeys.length;\n\n for (k = 0; k < len; k += 1) {\n configuration[configurationKeys[k]].value =\n configuration[configurationKeys[k]].defaultValue;\n configuration[configurationKeys[k]].explicitSet = false;\n }\n }\n\n if (typeof options === \"object\") {\n for (method in options) {\n value = options[method];\n if (\n arrayContainsElement(configurationKeys, method) &&\n value !== undefined\n ) {\n if (\n configuration[method].type === \"boolean\" &&\n typeof value === \"boolean\"\n ) {\n configuration[method].value = value;\n } else if (\n configuration[method].type === \"name\" &&\n arrayContainsElement(configuration[method].valueSet, value)\n ) {\n configuration[method].value = value;\n } else if (\n configuration[method].type === \"integer\" &&\n Number.isInteger(value)\n ) {\n configuration[method].value = value;\n } else if (configuration[method].type === \"array\") {\n for (i = 0; i < value.length; i += 1) {\n isValid = true;\n if (value[i].length === 1 && typeof value[i][0] === \"number\") {\n rangeArray.push(String(value[i] - 1));\n } else if (value[i].length > 1) {\n for (j = 0; j < value[i].length; j += 1) {\n if (typeof value[i][j] !== \"number\") {\n isValid = false;\n }\n }\n if (isValid === true) {\n rangeArray.push([value[i][0] - 1, value[i][1] - 1].join(\" \"));\n }\n }\n }\n configuration[method].value = \"[\" + rangeArray.join(\" \") + \"]\";\n } else {\n configuration[method].value = configuration[method].defaultValue;\n }\n\n configuration[method].explicitSet = true;\n }\n }\n }\n\n if (this.internal.viewerpreferences.isSubscribed === false) {\n this.internal.events.subscribe(\"putCatalog\", function() {\n var pdfDict = [];\n var vPref;\n for (vPref in configuration) {\n if (configuration[vPref].explicitSet === true) {\n if (configuration[vPref].type === \"name\") {\n pdfDict.push(\"/\" + vPref + \" /\" + configuration[vPref].value);\n } else {\n pdfDict.push(\"/\" + vPref + \" \" + configuration[vPref].value);\n }\n }\n }\n if (pdfDict.length !== 0) {\n this.internal.write(\n \"/ViewerPreferences\\n<<\\n\" + pdfDict.join(\"\\n\") + \"\\n>>\"\n );\n }\n });\n this.internal.viewerpreferences.isSubscribed = true;\n }\n\n this.internal.viewerpreferences.configuration = configuration;\n return this;\n };\n})(jsPDF.API);\n","/** ====================================================================\n * @license\n * jsPDF XMP metadata plugin\n * Copyright (c) 2016 Jussi Utunen, u-jussi@suomi24.fi\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @name xmp_metadata\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n var postPutResources = function() {\n var xmpmeta_beginning = '';\n var rdf_beginning =\n '';\n var rdf_ending = \"\";\n var xmpmeta_ending = \"\";\n var utf8_xmpmeta_beginning = unescape(\n encodeURIComponent(xmpmeta_beginning)\n );\n var utf8_rdf_beginning = unescape(encodeURIComponent(rdf_beginning));\n var utf8_metadata = unescape(\n encodeURIComponent(this.internal.__metadata__.metadata)\n );\n var utf8_rdf_ending = unescape(encodeURIComponent(rdf_ending));\n var utf8_xmpmeta_ending = unescape(encodeURIComponent(xmpmeta_ending));\n\n var total_len =\n utf8_rdf_beginning.length +\n utf8_metadata.length +\n utf8_rdf_ending.length +\n utf8_xmpmeta_beginning.length +\n utf8_xmpmeta_ending.length;\n\n this.internal.__metadata__.metadata_object_number = this.internal.newObject();\n this.internal.write(\n \"<< /Type /Metadata /Subtype /XML /Length \" + total_len + \" >>\"\n );\n this.internal.write(\"stream\");\n this.internal.write(\n utf8_xmpmeta_beginning +\n utf8_rdf_beginning +\n utf8_metadata +\n utf8_rdf_ending +\n utf8_xmpmeta_ending\n );\n this.internal.write(\"endstream\");\n this.internal.write(\"endobj\");\n };\n\n var putCatalog = function() {\n if (this.internal.__metadata__.metadata_object_number) {\n this.internal.write(\n \"/Metadata \" +\n this.internal.__metadata__.metadata_object_number +\n \" 0 R\"\n );\n }\n };\n\n /**\n * Adds XMP formatted metadata to PDF\n *\n * @name addMetadata\n * @function\n * @param {String} metadata The actual metadata to be added. The metadata shall be stored as XMP simple value. Note that if the metadata string contains XML markup characters \"<\", \">\" or \"&\", those characters should be written using XML entities.\n * @param {String} namespaceuri Sets the namespace URI for the metadata. Last character should be slash or hash.\n * @returns {jsPDF} jsPDF-instance\n */\n jsPDFAPI.addMetadata = function(metadata, namespaceuri) {\n if (typeof this.internal.__metadata__ === \"undefined\") {\n this.internal.__metadata__ = {\n metadata: metadata,\n namespaceuri: namespaceuri || \"http://jspdf.default.namespaceuri/\"\n };\n this.internal.events.subscribe(\"putCatalog\", putCatalog);\n\n this.internal.events.subscribe(\"postPutResources\", postPutResources);\n }\n return this;\n };\n})(jsPDF.API);\n","import { jsPDF } from \"../jspdf.js\";\nimport { toPDFName } from \"../libs/pdfname.js\";\n\n/**\n * @name utf8\n * @module\n */\n(function(jsPDF) {\n \"use strict\";\n var jsPDFAPI = jsPDF.API;\n\n /***************************************************************************************************/\n /* function : pdfEscape16 */\n /* comment : The character id of a 2-byte string is converted to a hexadecimal number by obtaining */\n /* the corresponding glyph id and width, and then adding padding to the string. */\n /***************************************************************************************************/\n var pdfEscape16 = (jsPDFAPI.pdfEscape16 = function(text, font) {\n var widths = font.metadata.Unicode.widths;\n var padz = [\"\", \"0\", \"00\", \"000\", \"0000\"];\n var ar = [\"\"];\n for (var i = 0, l = text.length, t; i < l; ++i) {\n t = font.metadata.characterToGlyph(text.charCodeAt(i));\n font.metadata.glyIdsUsed.push(t);\n font.metadata.toUnicode[t] = text.charCodeAt(i);\n if (widths.indexOf(t) == -1) {\n widths.push(t);\n widths.push([parseInt(font.metadata.widthOfGlyph(t), 10)]);\n }\n if (t == \"0\") {\n //Spaces are not allowed in cmap.\n return ar.join(\"\");\n } else {\n t = t.toString(16);\n ar.push(padz[4 - t.length], t);\n }\n }\n return ar.join(\"\");\n });\n\n var toUnicodeCmap = function(map) {\n var code, codes, range, unicode, unicodeMap, _i, _len;\n unicodeMap =\n \"/CIDInit /ProcSet findresource begin\\n12 dict begin\\nbegincmap\\n/CIDSystemInfo <<\\n /Registry (Adobe)\\n /Ordering (UCS)\\n /Supplement 0\\n>> def\\n/CMapName /Adobe-Identity-UCS def\\n/CMapType 2 def\\n1 begincodespacerange\\n<0000>\\nendcodespacerange\";\n codes = Object.keys(map).sort(function(a, b) {\n return a - b;\n });\n\n range = [];\n for (_i = 0, _len = codes.length; _i < _len; _i++) {\n code = codes[_i];\n if (range.length >= 100) {\n unicodeMap +=\n \"\\n\" +\n range.length +\n \" beginbfchar\\n\" +\n range.join(\"\\n\") +\n \"\\nendbfchar\";\n range = [];\n }\n\n if (\n map[code] !== undefined &&\n map[code] !== null &&\n typeof map[code].toString === \"function\"\n ) {\n unicode = (\"0000\" + map[code].toString(16)).slice(-4);\n code = (\"0000\" + (+code).toString(16)).slice(-4);\n range.push(\"<\" + code + \"><\" + unicode + \">\");\n }\n }\n\n if (range.length) {\n unicodeMap +=\n \"\\n\" +\n range.length +\n \" beginbfchar\\n\" +\n range.join(\"\\n\") +\n \"\\nendbfchar\\n\";\n }\n unicodeMap +=\n \"endcmap\\nCMapName currentdict /CMap defineresource pop\\nend\\nend\";\n return unicodeMap;\n };\n\n var identityHFunction = function(options) {\n var font = options.font;\n var out = options.out;\n var newObject = options.newObject;\n var putStream = options.putStream;\n\n if (\n font.metadata instanceof jsPDF.API.TTFFont &&\n font.encoding === \"Identity-H\"\n ) {\n //Tag with Identity-H\n var widths = font.metadata.Unicode.widths;\n var data = font.metadata.subset.encode(font.metadata.glyIdsUsed, 1);\n var pdfOutput = data;\n var pdfOutput2 = \"\";\n for (var i = 0; i < pdfOutput.length; i++) {\n pdfOutput2 += String.fromCharCode(pdfOutput[i]);\n }\n var fontTable = newObject();\n putStream({ data: pdfOutput2, addLength1: true, objectId: fontTable });\n out(\"endobj\");\n\n var cmap = newObject();\n var cmapData = toUnicodeCmap(font.metadata.toUnicode);\n putStream({ data: cmapData, addLength1: true, objectId: cmap });\n out(\"endobj\");\n\n var fontDescriptor = newObject();\n out(\"<<\");\n out(\"/Type /FontDescriptor\");\n out(\"/FontName /\" + toPDFName(font.fontName));\n out(\"/FontFile2 \" + fontTable + \" 0 R\");\n out(\"/FontBBox \" + jsPDF.API.PDFObject.convert(font.metadata.bbox));\n out(\"/Flags \" + font.metadata.flags);\n out(\"/StemV \" + font.metadata.stemV);\n out(\"/ItalicAngle \" + font.metadata.italicAngle);\n out(\"/Ascent \" + font.metadata.ascender);\n out(\"/Descent \" + font.metadata.decender);\n out(\"/CapHeight \" + font.metadata.capHeight);\n out(\">>\");\n out(\"endobj\");\n\n var DescendantFont = newObject();\n out(\"<<\");\n out(\"/Type /Font\");\n out(\"/BaseFont /\" + toPDFName(font.fontName));\n out(\"/FontDescriptor \" + fontDescriptor + \" 0 R\");\n out(\"/W \" + jsPDF.API.PDFObject.convert(widths));\n out(\"/CIDToGIDMap /Identity\");\n out(\"/DW 1000\");\n out(\"/Subtype /CIDFontType2\");\n out(\"/CIDSystemInfo\");\n out(\"<<\");\n out(\"/Supplement 0\");\n out(\"/Registry (Adobe)\");\n out(\"/Ordering (\" + font.encoding + \")\");\n out(\">>\");\n out(\">>\");\n out(\"endobj\");\n\n font.objectNumber = newObject();\n out(\"<<\");\n out(\"/Type /Font\");\n out(\"/Subtype /Type0\");\n out(\"/ToUnicode \" + cmap + \" 0 R\");\n out(\"/BaseFont /\" + toPDFName(font.fontName));\n out(\"/Encoding /\" + font.encoding);\n out(\"/DescendantFonts [\" + DescendantFont + \" 0 R]\");\n out(\">>\");\n out(\"endobj\");\n\n font.isAlreadyPutted = true;\n }\n };\n\n jsPDFAPI.events.push([\n \"putFont\",\n function(args) {\n identityHFunction(args);\n }\n ]);\n\n var winAnsiEncodingFunction = function(options) {\n var font = options.font;\n var out = options.out;\n var newObject = options.newObject;\n var putStream = options.putStream;\n\n if (\n font.metadata instanceof jsPDF.API.TTFFont &&\n font.encoding === \"WinAnsiEncoding\"\n ) {\n //Tag with WinAnsi encoding\n var data = font.metadata.rawData;\n var pdfOutput = data;\n var pdfOutput2 = \"\";\n for (var i = 0; i < pdfOutput.length; i++) {\n pdfOutput2 += String.fromCharCode(pdfOutput[i]);\n }\n var fontTable = newObject();\n putStream({ data: pdfOutput2, addLength1: true, objectId: fontTable });\n out(\"endobj\");\n\n var cmap = newObject();\n var cmapData = toUnicodeCmap(font.metadata.toUnicode);\n putStream({ data: cmapData, addLength1: true, objectId: cmap });\n out(\"endobj\");\n\n var fontDescriptor = newObject();\n out(\"<<\");\n out(\"/Descent \" + font.metadata.decender);\n out(\"/CapHeight \" + font.metadata.capHeight);\n out(\"/StemV \" + font.metadata.stemV);\n out(\"/Type /FontDescriptor\");\n out(\"/FontFile2 \" + fontTable + \" 0 R\");\n out(\"/Flags 96\");\n out(\"/FontBBox \" + jsPDF.API.PDFObject.convert(font.metadata.bbox));\n out(\"/FontName /\" + toPDFName(font.fontName));\n out(\"/ItalicAngle \" + font.metadata.italicAngle);\n out(\"/Ascent \" + font.metadata.ascender);\n out(\">>\");\n out(\"endobj\");\n font.objectNumber = newObject();\n for (var j = 0; j < font.metadata.hmtx.widths.length; j++) {\n font.metadata.hmtx.widths[j] = parseInt(\n font.metadata.hmtx.widths[j] * (1000 / font.metadata.head.unitsPerEm)\n ); //Change the width of Em units to Point units.\n }\n out(\n \"<>\"\n );\n out(\"endobj\");\n font.isAlreadyPutted = true;\n }\n };\n\n jsPDFAPI.events.push([\n \"putFont\",\n function(args) {\n winAnsiEncodingFunction(args);\n }\n ]);\n\n var utf8TextFunction = function(args) {\n var text = args.text || \"\";\n var x = args.x;\n var y = args.y;\n var options = args.options || {};\n var mutex = args.mutex || {};\n\n var pdfEscape = mutex.pdfEscape;\n var activeFontKey = mutex.activeFontKey;\n var fonts = mutex.fonts;\n var key = activeFontKey;\n\n var str = \"\",\n s = 0,\n cmapConfirm;\n var strText = \"\";\n var encoding = fonts[key].encoding;\n\n if (fonts[key].encoding !== \"Identity-H\") {\n return {\n text: text,\n x: x,\n y: y,\n options: options,\n mutex: mutex\n };\n }\n strText = text;\n\n key = activeFontKey;\n if (Array.isArray(text)) {\n strText = text[0];\n }\n for (s = 0; s < strText.length; s += 1) {\n if (fonts[key].metadata.hasOwnProperty(\"cmap\")) {\n cmapConfirm =\n fonts[key].metadata.cmap.unicode.codeMap[strText[s].charCodeAt(0)];\n /*\n if (Object.prototype.toString.call(text) === '[object Array]') {\n var i = 0;\n // for (i = 0; i < text.length; i += 1) {\n if (Object.prototype.toString.call(text[s]) === '[object Array]') {\n cmapConfirm = fonts[key].metadata.cmap.unicode.codeMap[strText[s][0].charCodeAt(0)]; //Make sure the cmap has the corresponding glyph id\n } else {\n\n }\n //}\n\n } else {\n cmapConfirm = fonts[key].metadata.cmap.unicode.codeMap[strText[s].charCodeAt(0)]; //Make sure the cmap has the corresponding glyph id\n }*/\n }\n if (!cmapConfirm) {\n if (\n strText[s].charCodeAt(0) < 256 &&\n fonts[key].metadata.hasOwnProperty(\"Unicode\")\n ) {\n str += strText[s];\n } else {\n str += \"\";\n }\n } else {\n str += strText[s];\n }\n }\n var result = \"\";\n if (parseInt(key.slice(1)) < 14 || encoding === \"WinAnsiEncoding\") {\n //For the default 13 font\n result = pdfEscape(str, key)\n .split(\"\")\n .map(function(cv) {\n return cv.charCodeAt(0).toString(16);\n })\n .join(\"\");\n } else if (encoding === \"Identity-H\") {\n result = pdfEscape16(str, fonts[key]);\n }\n mutex.isHex = true;\n\n return {\n text: result,\n x: x,\n y: y,\n options: options,\n mutex: mutex\n };\n };\n\n var utf8EscapeFunction = function(parms) {\n var text = parms.text || \"\",\n x = parms.x,\n y = parms.y,\n options = parms.options,\n mutex = parms.mutex;\n var tmpText = [];\n var args = {\n text: text,\n x: x,\n y: y,\n options: options,\n mutex: mutex\n };\n\n if (Array.isArray(text)) {\n var i = 0;\n for (i = 0; i < text.length; i += 1) {\n if (Array.isArray(text[i])) {\n if (text[i].length === 3) {\n tmpText.push([\n utf8TextFunction(Object.assign({}, args, { text: text[i][0] }))\n .text,\n text[i][1],\n text[i][2]\n ]);\n } else {\n tmpText.push(\n utf8TextFunction(Object.assign({}, args, { text: text[i] })).text\n );\n }\n } else {\n tmpText.push(\n utf8TextFunction(Object.assign({}, args, { text: text[i] })).text\n );\n }\n }\n parms.text = tmpText;\n } else {\n parms.text = utf8TextFunction(\n Object.assign({}, args, { text: text })\n ).text;\n }\n };\n\n jsPDFAPI.events.push([\"postProcessText\", utf8EscapeFunction]);\n})(jsPDF);\n","/**\n * @license\n * jsPDF virtual FileSystem functionality\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * Use the vFS to handle files\n *\n * @name vFS\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n var _initializeVFS = function() {\n if (typeof this.internal.vFS === \"undefined\") {\n this.internal.vFS = {};\n }\n return true;\n };\n\n /**\n * Check if the file exists in the vFS\n *\n * @name existsFileInVFS\n * @function\n * @param {string} Possible filename in the vFS.\n * @returns {boolean}\n * @example\n * doc.existsFileInVFS(\"someFile.txt\");\n */\n jsPDFAPI.existsFileInVFS = function(filename) {\n _initializeVFS.call(this);\n return typeof this.internal.vFS[filename] !== \"undefined\";\n };\n\n /**\n * Add a file to the vFS\n *\n * @name addFileToVFS\n * @function\n * @param {string} filename The name of the file which should be added.\n * @param {string} filecontent The content of the file.\n * @returns {jsPDF}\n * @example\n * doc.addFileToVFS(\"someFile.txt\", \"BADFACE1\");\n */\n jsPDFAPI.addFileToVFS = function(filename, filecontent) {\n _initializeVFS.call(this);\n this.internal.vFS[filename] = filecontent;\n return this;\n };\n\n /**\n * Get the file from the vFS\n *\n * @name getFileFromVFS\n * @function\n * @param {string} The name of the file which gets requested.\n * @returns {string}\n * @example\n * doc.getFileFromVFS(\"someFile.txt\");\n */\n jsPDFAPI.getFileFromVFS = function(filename) {\n _initializeVFS.call(this);\n\n if (typeof this.internal.vFS[filename] !== \"undefined\") {\n return this.internal.vFS[filename];\n }\n return null;\n };\n})(jsPDF.API);\n","/**\n * @license\n * Unicode Bidi Engine based on the work of Alex Shensis (@asthensis)\n * MIT License\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n(function(jsPDF) {\n \"use strict\";\n /**\n * Table of Unicode types.\n *\n * Generated by:\n *\n * var bidi = require(\"./bidi/index\");\n * var bidi_accumulate = bidi.slice(0, 256).concat(bidi.slice(0x0500, 0x0500 + 256 * 3)).\n * concat(bidi.slice(0x2000, 0x2000 + 256)).concat(bidi.slice(0xFB00, 0xFB00 + 256)).\n * concat(bidi.slice(0xFE00, 0xFE00 + 2 * 256));\n *\n * for( var i = 0; i < bidi_accumulate.length; i++) {\n * \tif(bidi_accumulate[i] === undefined || bidi_accumulate[i] === 'ON')\n * \t\tbidi_accumulate[i] = 'N'; //mark as neutral to conserve space and substitute undefined\n * }\n * var bidiAccumulateStr = 'return [ \"' + bidi_accumulate.toString().replace(/,/g, '\", \"') + '\" ];';\n * require(\"fs\").writeFile('unicode-types.js', bidiAccumulateStr);\n *\n * Based on:\n * https://github.com/mathiasbynens/unicode-8.0.0\n */\n var bidiUnicodeTypes = [\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"S\",\n \"B\",\n \"S\",\n \"WS\",\n \"B\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"B\",\n \"B\",\n \"B\",\n \"S\",\n \"WS\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ES\",\n \"CS\",\n \"ES\",\n \"CS\",\n \"CS\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"CS\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"B\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"CS\",\n \"N\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"N\",\n \"N\",\n \"BN\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"EN\",\n \"EN\",\n \"N\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"EN\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"R\",\n \"NSM\",\n \"R\",\n \"NSM\",\n \"NSM\",\n \"R\",\n \"NSM\",\n \"NSM\",\n \"R\",\n \"NSM\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"N\",\n \"N\",\n \"AL\",\n \"ET\",\n \"ET\",\n \"AL\",\n \"CS\",\n \"AL\",\n \"N\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"ET\",\n \"AN\",\n \"AN\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AN\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"N\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AL\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"R\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"L\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"WS\",\n \"B\",\n \"LRE\",\n \"RLE\",\n \"PDF\",\n \"LRO\",\n \"RLO\",\n \"CS\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"CS\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"WS\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"N\",\n \"LRI\",\n \"RLI\",\n \"FSI\",\n \"PDI\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"EN\",\n \"L\",\n \"N\",\n \"N\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"ES\",\n \"ES\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"ES\",\n \"ES\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"NSM\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"ES\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"N\",\n \"R\",\n \"N\",\n \"R\",\n \"R\",\n \"N\",\n \"R\",\n \"R\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"CS\",\n \"N\",\n \"CS\",\n \"N\",\n \"N\",\n \"CS\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"N\",\n \"N\",\n \"ES\",\n \"ES\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"N\",\n \"N\",\n \"BN\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ES\",\n \"CS\",\n \"ES\",\n \"CS\",\n \"CS\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"CS\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\"\n ];\n\n /**\n * Unicode Bidi algorithm compliant Bidi engine.\n * For reference see http://unicode.org/reports/tr9/\n */\n\n /**\n * constructor ( options )\n *\n * Initializes Bidi engine\n *\n * @param {Object} See 'setOptions' below for detailed description.\n * options are cashed between invocation of 'doBidiReorder' method\n *\n * sample usage pattern of BidiEngine:\n * var opt = {\n * \tisInputVisual: true,\n * \tisInputRtl: false,\n * \tisOutputVisual: false,\n * \tisOutputRtl: false,\n * \tisSymmetricSwapping: true\n * }\n * var sourceToTarget = [], levels = [];\n * var bidiEng = Globalize.bidiEngine(opt);\n * var src = \"text string to be reordered\";\n * var ret = bidiEng.doBidiReorder(src, sourceToTarget, levels);\n */\n\n jsPDF.__bidiEngine__ = jsPDF.prototype.__bidiEngine__ = function(options) {\n var _UNICODE_TYPES = _bidiUnicodeTypes;\n\n var _STATE_TABLE_LTR = [\n [0, 3, 0, 1, 0, 0, 0],\n [0, 3, 0, 1, 2, 2, 0],\n [0, 3, 0, 0x11, 2, 0, 1],\n [0, 3, 5, 5, 4, 1, 0],\n [0, 3, 0x15, 0x15, 4, 0, 1],\n [0, 3, 5, 5, 4, 2, 0]\n ];\n\n var _STATE_TABLE_RTL = [\n [2, 0, 1, 1, 0, 1, 0],\n [2, 0, 1, 1, 0, 2, 0],\n [2, 0, 2, 1, 3, 2, 0],\n [2, 0, 2, 0x21, 3, 1, 1]\n ];\n\n var _TYPE_NAMES_MAP = { L: 0, R: 1, EN: 2, AN: 3, N: 4, B: 5, S: 6 };\n\n var _UNICODE_RANGES_MAP = {\n 0: 0,\n 5: 1,\n 6: 2,\n 7: 3,\n 0x20: 4,\n 0xfb: 5,\n 0xfe: 6,\n 0xff: 7\n };\n\n var _SWAP_TABLE = [\n \"\\u0028\",\n \"\\u0029\",\n \"\\u0028\",\n \"\\u003C\",\n \"\\u003E\",\n \"\\u003C\",\n \"\\u005B\",\n \"\\u005D\",\n \"\\u005B\",\n \"\\u007B\",\n \"\\u007D\",\n \"\\u007B\",\n \"\\u00AB\",\n \"\\u00BB\",\n \"\\u00AB\",\n \"\\u2039\",\n \"\\u203A\",\n \"\\u2039\",\n \"\\u2045\",\n \"\\u2046\",\n \"\\u2045\",\n \"\\u207D\",\n \"\\u207E\",\n \"\\u207D\",\n \"\\u208D\",\n \"\\u208E\",\n \"\\u208D\",\n \"\\u2264\",\n \"\\u2265\",\n \"\\u2264\",\n \"\\u2329\",\n \"\\u232A\",\n \"\\u2329\",\n \"\\uFE59\",\n \"\\uFE5A\",\n \"\\uFE59\",\n \"\\uFE5B\",\n \"\\uFE5C\",\n \"\\uFE5B\",\n \"\\uFE5D\",\n \"\\uFE5E\",\n \"\\uFE5D\",\n \"\\uFE64\",\n \"\\uFE65\",\n \"\\uFE64\"\n ];\n\n var _LTR_RANGES_REG_EXPR = new RegExp(\n /^([1-4|9]|1[0-9]|2[0-9]|3[0168]|4[04589]|5[012]|7[78]|159|16[0-9]|17[0-2]|21[569]|22[03489]|250)$/\n );\n\n var _lastArabic = false,\n _hasUbatAl,\n _hasUbatB,\n _hasUbatS,\n DIR_LTR = 0,\n DIR_RTL = 1,\n _isInVisual,\n _isInRtl,\n _isOutVisual,\n _isOutRtl,\n _isSymmetricSwapping,\n _dir = DIR_LTR;\n\n this.__bidiEngine__ = {};\n\n var _init = function(text, sourceToTargetMap) {\n if (sourceToTargetMap) {\n for (var i = 0; i < text.length; i++) {\n sourceToTargetMap[i] = i;\n }\n }\n if (_isInRtl === undefined) {\n _isInRtl = _isContextualDirRtl(text);\n }\n if (_isOutRtl === undefined) {\n _isOutRtl = _isContextualDirRtl(text);\n }\n };\n\n // for reference see 3.2 in http://unicode.org/reports/tr9/\n //\n var _getCharType = function(ch) {\n var charCode = ch.charCodeAt(),\n range = charCode >> 8,\n rangeIdx = _UNICODE_RANGES_MAP[range];\n\n if (rangeIdx !== undefined) {\n return _UNICODE_TYPES[rangeIdx * 256 + (charCode & 0xff)];\n } else if (range === 0xfc || range === 0xfd) {\n return \"AL\";\n } else if (_LTR_RANGES_REG_EXPR.test(range)) {\n //unlikely case\n return \"L\";\n } else if (range === 8) {\n // even less likely\n return \"R\";\n }\n return \"N\"; //undefined type, mark as neutral\n };\n\n var _isContextualDirRtl = function(text) {\n for (var i = 0, charType; i < text.length; i++) {\n charType = _getCharType(text.charAt(i));\n if (charType === \"L\") {\n return false;\n } else if (charType === \"R\") {\n return true;\n }\n }\n return false;\n };\n\n // for reference see 3.3.4 & 3.3.5 in http://unicode.org/reports/tr9/\n //\n var _resolveCharType = function(chars, types, resolvedTypes, index) {\n var cType = types[index],\n wType,\n nType,\n i,\n len;\n switch (cType) {\n case \"L\":\n case \"R\":\n _lastArabic = false;\n break;\n case \"N\":\n case \"AN\":\n break;\n\n case \"EN\":\n if (_lastArabic) {\n cType = \"AN\";\n }\n break;\n\n case \"AL\":\n _lastArabic = true;\n _hasUbatAl = true;\n cType = \"R\";\n break;\n\n case \"WS\":\n cType = \"N\";\n break;\n\n case \"CS\":\n if (\n index < 1 ||\n index + 1 >= types.length ||\n ((wType = resolvedTypes[index - 1]) !== \"EN\" && wType !== \"AN\") ||\n ((nType = types[index + 1]) !== \"EN\" && nType !== \"AN\")\n ) {\n cType = \"N\";\n } else if (_lastArabic) {\n nType = \"AN\";\n }\n cType = nType === wType ? nType : \"N\";\n break;\n\n case \"ES\":\n wType = index > 0 ? resolvedTypes[index - 1] : \"B\";\n cType =\n wType === \"EN\" &&\n index + 1 < types.length &&\n types[index + 1] === \"EN\"\n ? \"EN\"\n : \"N\";\n break;\n\n case \"ET\":\n if (index > 0 && resolvedTypes[index - 1] === \"EN\") {\n cType = \"EN\";\n break;\n } else if (_lastArabic) {\n cType = \"N\";\n break;\n }\n i = index + 1;\n len = types.length;\n while (i < len && types[i] === \"ET\") {\n i++;\n }\n if (i < len && types[i] === \"EN\") {\n cType = \"EN\";\n } else {\n cType = \"N\";\n }\n break;\n\n case \"NSM\":\n if (_isInVisual && !_isInRtl) {\n //V->L\n len = types.length;\n i = index + 1;\n while (i < len && types[i] === \"NSM\") {\n i++;\n }\n if (i < len) {\n var c = chars[index];\n var rtlCandidate = (c >= 0x0591 && c <= 0x08ff) || c === 0xfb1e;\n wType = types[i];\n if (rtlCandidate && (wType === \"R\" || wType === \"AL\")) {\n cType = \"R\";\n break;\n }\n }\n }\n if (index < 1 || (wType = types[index - 1]) === \"B\") {\n cType = \"N\";\n } else {\n cType = resolvedTypes[index - 1];\n }\n break;\n\n case \"B\":\n _lastArabic = false;\n _hasUbatB = true;\n cType = _dir;\n break;\n\n case \"S\":\n _hasUbatS = true;\n cType = \"N\";\n break;\n\n case \"LRE\":\n case \"RLE\":\n case \"LRO\":\n case \"RLO\":\n case \"PDF\":\n _lastArabic = false;\n break;\n case \"BN\":\n cType = \"N\";\n break;\n }\n return cType;\n };\n\n var _handleUbatS = function(types, levels, length) {\n for (var i = 0; i < length; i++) {\n if (types[i] === \"S\") {\n levels[i] = _dir;\n for (var j = i - 1; j >= 0; j--) {\n if (types[j] === \"WS\") {\n levels[j] = _dir;\n } else {\n break;\n }\n }\n }\n }\n };\n\n var _invertString = function(text, sourceToTargetMap, levels) {\n var charArray = text.split(\"\");\n if (levels) {\n _computeLevels(charArray, levels, { hiLevel: _dir });\n }\n charArray.reverse();\n sourceToTargetMap && sourceToTargetMap.reverse();\n return charArray.join(\"\");\n };\n\n // For reference see 3.3 in http://unicode.org/reports/tr9/\n //\n var _computeLevels = function(chars, levels, params) {\n var action,\n condition,\n i,\n index,\n newLevel,\n prevState,\n condPos = -1,\n len = chars.length,\n newState = 0,\n resolvedTypes = [],\n stateTable = _dir ? _STATE_TABLE_RTL : _STATE_TABLE_LTR,\n types = [];\n\n _lastArabic = false;\n _hasUbatAl = false;\n _hasUbatB = false;\n _hasUbatS = false;\n for (i = 0; i < len; i++) {\n types[i] = _getCharType(chars[i]);\n }\n for (index = 0; index < len; index++) {\n prevState = newState;\n resolvedTypes[index] = _resolveCharType(\n chars,\n types,\n resolvedTypes,\n index\n );\n newState = stateTable[prevState][_TYPE_NAMES_MAP[resolvedTypes[index]]];\n action = newState & 0xf0;\n newState &= 0x0f;\n levels[index] = newLevel = stateTable[newState][5];\n if (action > 0) {\n if (action === 0x10) {\n for (i = condPos; i < index; i++) {\n levels[i] = 1;\n }\n condPos = -1;\n } else {\n condPos = -1;\n }\n }\n condition = stateTable[newState][6];\n if (condition) {\n if (condPos === -1) {\n condPos = index;\n }\n } else {\n if (condPos > -1) {\n for (i = condPos; i < index; i++) {\n levels[i] = newLevel;\n }\n condPos = -1;\n }\n }\n if (types[index] === \"B\") {\n levels[index] = 0;\n }\n params.hiLevel |= newLevel;\n }\n if (_hasUbatS) {\n _handleUbatS(types, levels, len);\n }\n };\n\n // for reference see 3.4 in http://unicode.org/reports/tr9/\n //\n var _invertByLevel = function(\n level,\n charArray,\n sourceToTargetMap,\n levels,\n params\n ) {\n if (params.hiLevel < level) {\n return;\n }\n if (level === 1 && _dir === DIR_RTL && !_hasUbatB) {\n charArray.reverse();\n sourceToTargetMap && sourceToTargetMap.reverse();\n return;\n }\n var ch,\n high,\n end,\n low,\n len = charArray.length,\n start = 0;\n\n while (start < len) {\n if (levels[start] >= level) {\n end = start + 1;\n while (end < len && levels[end] >= level) {\n end++;\n }\n for (low = start, high = end - 1; low < high; low++, high--) {\n ch = charArray[low];\n charArray[low] = charArray[high];\n charArray[high] = ch;\n if (sourceToTargetMap) {\n ch = sourceToTargetMap[low];\n sourceToTargetMap[low] = sourceToTargetMap[high];\n sourceToTargetMap[high] = ch;\n }\n }\n start = end;\n }\n start++;\n }\n };\n\n // for reference see 7 & BD16 in http://unicode.org/reports/tr9/\n //\n var _symmetricSwap = function(charArray, levels, params) {\n if (params.hiLevel !== 0 && _isSymmetricSwapping) {\n for (var i = 0, index; i < charArray.length; i++) {\n if (levels[i] === 1) {\n index = _SWAP_TABLE.indexOf(charArray[i]);\n if (index >= 0) {\n charArray[i] = _SWAP_TABLE[index + 1];\n }\n }\n }\n }\n };\n\n var _reorder = function(text, sourceToTargetMap, levels) {\n var charArray = text.split(\"\"),\n params = { hiLevel: _dir };\n\n if (!levels) {\n levels = [];\n }\n _computeLevels(charArray, levels, params);\n _symmetricSwap(charArray, levels, params);\n _invertByLevel(DIR_RTL + 1, charArray, sourceToTargetMap, levels, params);\n _invertByLevel(DIR_RTL, charArray, sourceToTargetMap, levels, params);\n return charArray.join(\"\");\n };\n\n // doBidiReorder( text, sourceToTargetMap, levels )\n // Performs Bidi reordering by implementing Unicode Bidi algorithm.\n // Returns reordered string\n // @text [String]:\n // - input string to be reordered, this is input parameter\n // $sourceToTargetMap [Array] (optional)\n // - resultant mapping between input and output strings, this is output parameter\n // $levels [Array] (optional)\n // - array of calculated Bidi levels, , this is output parameter\n this.__bidiEngine__.doBidiReorder = function(\n text,\n sourceToTargetMap,\n levels\n ) {\n _init(text, sourceToTargetMap);\n if (!_isInVisual && _isOutVisual && !_isOutRtl) {\n // LLTR->VLTR, LRTL->VLTR\n _dir = _isInRtl ? DIR_RTL : DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n } else if (_isInVisual && _isOutVisual && _isInRtl ^ _isOutRtl) {\n // VRTL->VLTR, VLTR->VRTL\n _dir = _isInRtl ? DIR_RTL : DIR_LTR;\n text = _invertString(text, sourceToTargetMap, levels);\n } else if (!_isInVisual && _isOutVisual && _isOutRtl) {\n // LLTR->VRTL, LRTL->VRTL\n _dir = _isInRtl ? DIR_RTL : DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n text = _invertString(text, sourceToTargetMap);\n } else if (_isInVisual && !_isInRtl && !_isOutVisual && !_isOutRtl) {\n // VLTR->LLTR\n _dir = DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n } else if (_isInVisual && !_isOutVisual && _isInRtl ^ _isOutRtl) {\n // VLTR->LRTL, VRTL->LLTR\n text = _invertString(text, sourceToTargetMap);\n if (_isInRtl) {\n //LLTR -> VLTR\n _dir = DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n } else {\n //LRTL -> VRTL\n _dir = DIR_RTL;\n text = _reorder(text, sourceToTargetMap, levels);\n text = _invertString(text, sourceToTargetMap);\n }\n } else if (_isInVisual && _isInRtl && !_isOutVisual && _isOutRtl) {\n // VRTL->LRTL\n _dir = DIR_RTL;\n text = _reorder(text, sourceToTargetMap, levels);\n text = _invertString(text, sourceToTargetMap);\n } else if (!_isInVisual && !_isOutVisual && _isInRtl ^ _isOutRtl) {\n // LRTL->LLTR, LLTR->LRTL\n var isSymmetricSwappingOrig = _isSymmetricSwapping;\n if (_isInRtl) {\n //LRTL->LLTR\n _dir = DIR_RTL;\n text = _reorder(text, sourceToTargetMap, levels);\n _dir = DIR_LTR;\n _isSymmetricSwapping = false;\n text = _reorder(text, sourceToTargetMap, levels);\n _isSymmetricSwapping = isSymmetricSwappingOrig;\n } else {\n //LLTR->LRTL\n _dir = DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n text = _invertString(text, sourceToTargetMap);\n _dir = DIR_RTL;\n _isSymmetricSwapping = false;\n text = _reorder(text, sourceToTargetMap, levels);\n _isSymmetricSwapping = isSymmetricSwappingOrig;\n text = _invertString(text, sourceToTargetMap);\n }\n }\n return text;\n };\n\n /**\n * @name setOptions( options )\n * @function\n * Sets options for Bidi conversion\n * @param {Object}:\n * - isInputVisual {boolean} (defaults to false): allowed values: true(Visual mode), false(Logical mode)\n * - isInputRtl {boolean}: allowed values true(Right-to-left direction), false (Left-to-right directiion), undefined(Contectual direction, i.e.direction defined by first strong character of input string)\n * - isOutputVisual {boolean} (defaults to false): allowed values: true(Visual mode), false(Logical mode)\n * - isOutputRtl {boolean}: allowed values true(Right-to-left direction), false (Left-to-right directiion), undefined(Contectual direction, i.e.direction defined by first strong characterof input string)\n * - isSymmetricSwapping {boolean} (defaults to false): allowed values true(needs symmetric swapping), false (no need in symmetric swapping),\n */\n this.__bidiEngine__.setOptions = function(options) {\n if (options) {\n _isInVisual = options.isInputVisual;\n _isOutVisual = options.isOutputVisual;\n _isInRtl = options.isInputRtl;\n _isOutRtl = options.isOutputRtl;\n _isSymmetricSwapping = options.isSymmetricSwapping;\n }\n };\n\n this.__bidiEngine__.setOptions(options);\n return this.__bidiEngine__;\n };\n\n var _bidiUnicodeTypes = bidiUnicodeTypes;\n\n var bidiEngine = new jsPDF.__bidiEngine__({ isInputVisual: true });\n\n var bidiEngineFunction = function(args) {\n var text = args.text;\n var x = args.x;\n var y = args.y;\n var options = args.options || {};\n var mutex = args.mutex || {};\n var lang = options.lang;\n var tmpText = [];\n\n options.isInputVisual =\n typeof options.isInputVisual === \"boolean\" ? options.isInputVisual : true;\n bidiEngine.setOptions(options);\n\n if (Object.prototype.toString.call(text) === \"[object Array]\") {\n var i = 0;\n tmpText = [];\n for (i = 0; i < text.length; i += 1) {\n if (Object.prototype.toString.call(text[i]) === \"[object Array]\") {\n tmpText.push([\n bidiEngine.doBidiReorder(text[i][0]),\n text[i][1],\n text[i][2]\n ]);\n } else {\n tmpText.push([bidiEngine.doBidiReorder(text[i])]);\n }\n }\n args.text = tmpText;\n } else {\n args.text = bidiEngine.doBidiReorder(text);\n }\n bidiEngine.setOptions({ isInputVisual: true });\n };\n\n jsPDF.API.events.push([\"postProcessText\", bidiEngineFunction]);\n})(jsPDF);\n","/* eslint-disable no-control-regex */\n/************************************************\n * Title : custom font *\n * Start Data : 2017. 01. 22. *\n * Comment : TEXT API *\n ************************************************/\n\n/******************************\n * jsPDF extension API Design *\n * ****************************/\n\nimport { jsPDF } from \"../jspdf.js\";\n\njsPDF.API.TTFFont = (function() {\n /************************************************************************/\n /* function : open */\n /* comment : Decode the encoded ttf content and create a TTFFont object. */\n /************************************************************************/\n TTFFont.open = function(file) {\n return new TTFFont(file);\n };\n /***************************************************************/\n /* function : TTFFont gernerator */\n /* comment : Decode TTF contents are parsed, Data, */\n /* Subset object is created, and registerTTF function is called.*/\n /***************************************************************/\n function TTFFont(rawData) {\n var data;\n this.rawData = rawData;\n data = this.contents = new Data(rawData);\n this.contents.pos = 4;\n if (data.readString(4) === \"ttcf\") {\n throw new Error(\"TTCF not supported.\");\n } else {\n data.pos = 0;\n this.parse();\n this.subset = new Subset(this);\n this.registerTTF();\n }\n }\n /********************************************************/\n /* function : parse */\n /* comment : TTF Parses the file contents by each table.*/\n /********************************************************/\n TTFFont.prototype.parse = function() {\n this.directory = new Directory(this.contents);\n this.head = new HeadTable(this);\n this.name = new NameTable(this);\n this.cmap = new CmapTable(this);\n this.toUnicode = {};\n this.hhea = new HheaTable(this);\n this.maxp = new MaxpTable(this);\n this.hmtx = new HmtxTable(this);\n this.post = new PostTable(this);\n this.os2 = new OS2Table(this);\n this.loca = new LocaTable(this);\n this.glyf = new GlyfTable(this);\n this.ascender =\n (this.os2.exists && this.os2.ascender) || this.hhea.ascender;\n this.decender =\n (this.os2.exists && this.os2.decender) || this.hhea.decender;\n this.lineGap = (this.os2.exists && this.os2.lineGap) || this.hhea.lineGap;\n return (this.bbox = [\n this.head.xMin,\n this.head.yMin,\n this.head.xMax,\n this.head.yMax\n ]);\n };\n /***************************************************************/\n /* function : registerTTF */\n /* comment : Get the value to assign pdf font descriptors. */\n /***************************************************************/\n TTFFont.prototype.registerTTF = function() {\n var e, hi, low, raw, _ref;\n this.scaleFactor = 1000.0 / this.head.unitsPerEm;\n this.bbox = function() {\n var _i, _len, _ref, _results;\n _ref = this.bbox;\n _results = [];\n for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n e = _ref[_i];\n _results.push(Math.round(e * this.scaleFactor));\n }\n return _results;\n }.call(this);\n this.stemV = 0;\n if (this.post.exists) {\n raw = this.post.italic_angle;\n hi = raw >> 16;\n low = raw & 0xff;\n if ((hi & 0x8000) !== 0) {\n hi = -((hi ^ 0xffff) + 1);\n }\n this.italicAngle = +(\"\" + hi + \".\" + low);\n } else {\n this.italicAngle = 0;\n }\n this.ascender = Math.round(this.ascender * this.scaleFactor);\n this.decender = Math.round(this.decender * this.scaleFactor);\n this.lineGap = Math.round(this.lineGap * this.scaleFactor);\n this.capHeight = (this.os2.exists && this.os2.capHeight) || this.ascender;\n this.xHeight = (this.os2.exists && this.os2.xHeight) || 0;\n this.familyClass = ((this.os2.exists && this.os2.familyClass) || 0) >> 8;\n this.isSerif =\n (_ref = this.familyClass) === 1 ||\n _ref === 2 ||\n _ref === 3 ||\n _ref === 4 ||\n _ref === 5 ||\n _ref === 7;\n this.isScript = this.familyClass === 10;\n this.flags = 0;\n if (this.post.isFixedPitch) {\n this.flags |= 1 << 0;\n }\n if (this.isSerif) {\n this.flags |= 1 << 1;\n }\n if (this.isScript) {\n this.flags |= 1 << 3;\n }\n if (this.italicAngle !== 0) {\n this.flags |= 1 << 6;\n }\n this.flags |= 1 << 5;\n if (!this.cmap.unicode) {\n throw new Error(\"No unicode cmap for font\");\n }\n };\n TTFFont.prototype.characterToGlyph = function(character) {\n var _ref;\n return (\n ((_ref = this.cmap.unicode) != null ? _ref.codeMap[character] : void 0) ||\n 0\n );\n };\n TTFFont.prototype.widthOfGlyph = function(glyph) {\n var scale;\n scale = 1000.0 / this.head.unitsPerEm;\n return this.hmtx.forGlyph(glyph).advance * scale;\n };\n TTFFont.prototype.widthOfString = function(string, size, charSpace) {\n var charCode, i, scale, width, _ref;\n string = \"\" + string;\n width = 0;\n for (\n i = 0, _ref = string.length;\n 0 <= _ref ? i < _ref : i > _ref;\n i = 0 <= _ref ? ++i : --i\n ) {\n charCode = string.charCodeAt(i);\n width +=\n this.widthOfGlyph(this.characterToGlyph(charCode)) +\n charSpace * (1000 / size) || 0;\n }\n scale = size / 1000;\n return width * scale;\n };\n TTFFont.prototype.lineHeight = function(size, includeGap) {\n var gap;\n if (includeGap == null) {\n includeGap = false;\n }\n gap = includeGap ? this.lineGap : 0;\n return ((this.ascender + gap - this.decender) / 1000) * size;\n };\n return TTFFont;\n})();\n\n/************************************************************************************************/\n/* function : Data */\n/* comment : The ttf data decoded and stored in an array is read and written to the Data object.*/\n/************************************************************************************************/\nvar Data = (function() {\n function Data(data) {\n this.data = data != null ? data : [];\n this.pos = 0;\n this.length = this.data.length;\n }\n Data.prototype.readByte = function() {\n return this.data[this.pos++];\n };\n Data.prototype.writeByte = function(byte) {\n return (this.data[this.pos++] = byte);\n };\n Data.prototype.readUInt32 = function() {\n var b1, b2, b3, b4;\n b1 = this.readByte() * 0x1000000;\n b2 = this.readByte() << 16;\n b3 = this.readByte() << 8;\n b4 = this.readByte();\n return b1 + b2 + b3 + b4;\n };\n Data.prototype.writeUInt32 = function(val) {\n this.writeByte((val >>> 24) & 0xff);\n this.writeByte((val >> 16) & 0xff);\n this.writeByte((val >> 8) & 0xff);\n return this.writeByte(val & 0xff);\n };\n Data.prototype.readInt32 = function() {\n var int;\n int = this.readUInt32();\n if (int >= 0x80000000) {\n return int - 0x100000000;\n } else {\n return int;\n }\n };\n Data.prototype.writeInt32 = function(val) {\n if (val < 0) {\n val += 0x100000000;\n }\n return this.writeUInt32(val);\n };\n Data.prototype.readUInt16 = function() {\n var b1, b2;\n b1 = this.readByte() << 8;\n b2 = this.readByte();\n return b1 | b2;\n };\n Data.prototype.writeUInt16 = function(val) {\n this.writeByte((val >> 8) & 0xff);\n return this.writeByte(val & 0xff);\n };\n Data.prototype.readInt16 = function() {\n var int;\n int = this.readUInt16();\n if (int >= 0x8000) {\n return int - 0x10000;\n } else {\n return int;\n }\n };\n Data.prototype.writeInt16 = function(val) {\n if (val < 0) {\n val += 0x10000;\n }\n return this.writeUInt16(val);\n };\n Data.prototype.readString = function(length) {\n var i, ret;\n ret = [];\n for (\n i = 0;\n 0 <= length ? i < length : i > length;\n i = 0 <= length ? ++i : --i\n ) {\n ret[i] = String.fromCharCode(this.readByte());\n }\n return ret.join(\"\");\n };\n Data.prototype.writeString = function(val) {\n var i, _ref, _results;\n _results = [];\n for (\n i = 0, _ref = val.length;\n 0 <= _ref ? i < _ref : i > _ref;\n i = 0 <= _ref ? ++i : --i\n ) {\n _results.push(this.writeByte(val.charCodeAt(i)));\n }\n return _results;\n };\n /*Data.prototype.stringAt = function (pos, length) {\n this.pos = pos;\n return this.readString(length);\n };*/\n Data.prototype.readShort = function() {\n return this.readInt16();\n };\n Data.prototype.writeShort = function(val) {\n return this.writeInt16(val);\n };\n Data.prototype.readLongLong = function() {\n var b1, b2, b3, b4, b5, b6, b7, b8;\n b1 = this.readByte();\n b2 = this.readByte();\n b3 = this.readByte();\n b4 = this.readByte();\n b5 = this.readByte();\n b6 = this.readByte();\n b7 = this.readByte();\n b8 = this.readByte();\n if (b1 & 0x80) {\n return (\n ((b1 ^ 0xff) * 0x100000000000000 +\n (b2 ^ 0xff) * 0x1000000000000 +\n (b3 ^ 0xff) * 0x10000000000 +\n (b4 ^ 0xff) * 0x100000000 +\n (b5 ^ 0xff) * 0x1000000 +\n (b6 ^ 0xff) * 0x10000 +\n (b7 ^ 0xff) * 0x100 +\n (b8 ^ 0xff) +\n 1) *\n -1\n );\n }\n return (\n b1 * 0x100000000000000 +\n b2 * 0x1000000000000 +\n b3 * 0x10000000000 +\n b4 * 0x100000000 +\n b5 * 0x1000000 +\n b6 * 0x10000 +\n b7 * 0x100 +\n b8\n );\n };\n Data.prototype.writeLongLong = function(val) {\n var high, low;\n high = Math.floor(val / 0x100000000);\n low = val & 0xffffffff;\n this.writeByte((high >> 24) & 0xff);\n this.writeByte((high >> 16) & 0xff);\n this.writeByte((high >> 8) & 0xff);\n this.writeByte(high & 0xff);\n this.writeByte((low >> 24) & 0xff);\n this.writeByte((low >> 16) & 0xff);\n this.writeByte((low >> 8) & 0xff);\n return this.writeByte(low & 0xff);\n };\n Data.prototype.readInt = function() {\n return this.readInt32();\n };\n Data.prototype.writeInt = function(val) {\n return this.writeInt32(val);\n };\n /*Data.prototype.slice = function (start, end) {\n return this.data.slice(start, end);\n };*/\n Data.prototype.read = function(bytes) {\n var buf, i;\n buf = [];\n for (\n i = 0;\n 0 <= bytes ? i < bytes : i > bytes;\n i = 0 <= bytes ? ++i : --i\n ) {\n buf.push(this.readByte());\n }\n return buf;\n };\n Data.prototype.write = function(bytes) {\n var byte, i, _len, _results;\n _results = [];\n for (i = 0, _len = bytes.length; i < _len; i++) {\n byte = bytes[i];\n _results.push(this.writeByte(byte));\n }\n return _results;\n };\n return Data;\n})();\n\nvar Directory = (function() {\n var checksum;\n\n /*****************************************************************************************************/\n /* function : Directory generator */\n /* comment : Initialize the offset, tag, length, and checksum for each table for the font to be used.*/\n /*****************************************************************************************************/\n function Directory(data) {\n var entry, i, _ref;\n this.scalarType = data.readInt();\n this.tableCount = data.readShort();\n this.searchRange = data.readShort();\n this.entrySelector = data.readShort();\n this.rangeShift = data.readShort();\n this.tables = {};\n for (\n i = 0, _ref = this.tableCount;\n 0 <= _ref ? i < _ref : i > _ref;\n i = 0 <= _ref ? ++i : --i\n ) {\n entry = {\n tag: data.readString(4),\n checksum: data.readInt(),\n offset: data.readInt(),\n length: data.readInt()\n };\n this.tables[entry.tag] = entry;\n }\n }\n /********************************************************************************************************/\n /* function : encode */\n /* comment : It encodes and stores the font table object and information used for the directory object. */\n /********************************************************************************************************/\n Directory.prototype.encode = function(tables) {\n var adjustment,\n directory,\n directoryLength,\n entrySelector,\n headOffset,\n log2,\n offset,\n rangeShift,\n searchRange,\n sum,\n table,\n tableCount,\n tableData,\n tag;\n tableCount = Object.keys(tables).length;\n log2 = Math.log(2);\n searchRange = Math.floor(Math.log(tableCount) / log2) * 16;\n entrySelector = Math.floor(searchRange / log2);\n rangeShift = tableCount * 16 - searchRange;\n directory = new Data();\n directory.writeInt(this.scalarType);\n directory.writeShort(tableCount);\n directory.writeShort(searchRange);\n directory.writeShort(entrySelector);\n directory.writeShort(rangeShift);\n directoryLength = tableCount * 16;\n offset = directory.pos + directoryLength;\n headOffset = null;\n tableData = [];\n for (tag in tables) {\n table = tables[tag];\n directory.writeString(tag);\n directory.writeInt(checksum(table));\n directory.writeInt(offset);\n directory.writeInt(table.length);\n tableData = tableData.concat(table);\n if (tag === \"head\") {\n headOffset = offset;\n }\n offset += table.length;\n while (offset % 4) {\n tableData.push(0);\n offset++;\n }\n }\n directory.write(tableData);\n sum = checksum(directory.data);\n adjustment = 0xb1b0afba - sum;\n directory.pos = headOffset + 8;\n directory.writeUInt32(adjustment);\n return directory.data;\n };\n /***************************************************************/\n /* function : checksum */\n /* comment : Duplicate the table for the tag. */\n /***************************************************************/\n checksum = function(data) {\n var i, sum, tmp, _ref;\n data = __slice.call(data);\n while (data.length % 4) {\n data.push(0);\n }\n tmp = new Data(data);\n sum = 0;\n for (i = 0, _ref = data.length; i < _ref; i = i += 4) {\n sum += tmp.readUInt32();\n }\n return sum & 0xffffffff;\n };\n return Directory;\n})();\n\nvar Table,\n __hasProp = {}.hasOwnProperty,\n __extends = function(child, parent) {\n for (var key in parent) {\n if (__hasProp.call(parent, key)) child[key] = parent[key];\n }\n\n function ctor() {\n this.constructor = child;\n }\n ctor.prototype = parent.prototype;\n child.prototype = new ctor();\n child.__super__ = parent.prototype;\n return child;\n };\n\n/***************************************************************/\n/* function : Table */\n/* comment : Save info for each table, and parse the table. */\n/***************************************************************/\nTable = (function() {\n function Table(file) {\n var info;\n this.file = file;\n info = this.file.directory.tables[this.tag];\n this.exists = !!info;\n if (info) {\n (this.offset = info.offset), (this.length = info.length);\n this.parse(this.file.contents);\n }\n }\n Table.prototype.parse = function() {};\n Table.prototype.encode = function() {};\n Table.prototype.raw = function() {\n if (!this.exists) {\n return null;\n }\n this.file.contents.pos = this.offset;\n return this.file.contents.read(this.length);\n };\n return Table;\n})();\n\nvar HeadTable = (function(_super) {\n __extends(HeadTable, _super);\n\n function HeadTable() {\n return HeadTable.__super__.constructor.apply(this, arguments);\n }\n HeadTable.prototype.tag = \"head\";\n HeadTable.prototype.parse = function(data) {\n data.pos = this.offset;\n this.version = data.readInt();\n this.revision = data.readInt();\n this.checkSumAdjustment = data.readInt();\n this.magicNumber = data.readInt();\n this.flags = data.readShort();\n this.unitsPerEm = data.readShort();\n this.created = data.readLongLong();\n this.modified = data.readLongLong();\n this.xMin = data.readShort();\n this.yMin = data.readShort();\n this.xMax = data.readShort();\n this.yMax = data.readShort();\n this.macStyle = data.readShort();\n this.lowestRecPPEM = data.readShort();\n this.fontDirectionHint = data.readShort();\n this.indexToLocFormat = data.readShort();\n return (this.glyphDataFormat = data.readShort());\n };\n HeadTable.prototype.encode = function(indexToLocFormat) {\n var table;\n table = new Data();\n table.writeInt(this.version);\n table.writeInt(this.revision);\n table.writeInt(this.checkSumAdjustment);\n table.writeInt(this.magicNumber);\n table.writeShort(this.flags);\n table.writeShort(this.unitsPerEm);\n table.writeLongLong(this.created);\n table.writeLongLong(this.modified);\n table.writeShort(this.xMin);\n table.writeShort(this.yMin);\n table.writeShort(this.xMax);\n table.writeShort(this.yMax);\n table.writeShort(this.macStyle);\n table.writeShort(this.lowestRecPPEM);\n table.writeShort(this.fontDirectionHint);\n table.writeShort(indexToLocFormat);\n table.writeShort(this.glyphDataFormat);\n return table.data;\n };\n return HeadTable;\n})(Table);\n\n/************************************************************************************/\n/* function : CmapEntry */\n/* comment : Cmap Initializes and encodes object information (required by pdf spec).*/\n/************************************************************************************/\nvar CmapEntry = (function() {\n function CmapEntry(data, offset) {\n var code,\n count,\n endCode,\n glyphId,\n glyphIds,\n i,\n idDelta,\n idRangeOffset,\n index,\n saveOffset,\n segCount,\n segCountX2,\n start,\n startCode,\n tail,\n _j,\n _k,\n _len;\n this.platformID = data.readUInt16();\n this.encodingID = data.readShort();\n this.offset = offset + data.readInt();\n saveOffset = data.pos;\n data.pos = this.offset;\n this.format = data.readUInt16();\n this.length = data.readUInt16();\n this.language = data.readUInt16();\n this.isUnicode =\n (this.platformID === 3 && this.encodingID === 1 && this.format === 4) ||\n (this.platformID === 0 && this.format === 4);\n this.codeMap = {};\n switch (this.format) {\n case 0:\n for (i = 0; i < 256; ++i) {\n this.codeMap[i] = data.readByte();\n }\n break;\n case 4:\n segCountX2 = data.readUInt16();\n segCount = segCountX2 / 2;\n data.pos += 6;\n endCode = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= segCount ? _j < segCount : _j > segCount;\n i = 0 <= segCount ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n data.pos += 2;\n startCode = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= segCount ? _j < segCount : _j > segCount;\n i = 0 <= segCount ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n idDelta = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= segCount ? _j < segCount : _j > segCount;\n i = 0 <= segCount ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n idRangeOffset = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= segCount ? _j < segCount : _j > segCount;\n i = 0 <= segCount ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n count = (this.length - data.pos + this.offset) / 2;\n glyphIds = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= count ? _j < count : _j > count;\n i = 0 <= count ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n for (i = _j = 0, _len = endCode.length; _j < _len; i = ++_j) {\n tail = endCode[i];\n start = startCode[i];\n for (\n code = _k = start;\n start <= tail ? _k <= tail : _k >= tail;\n code = start <= tail ? ++_k : --_k\n ) {\n if (idRangeOffset[i] === 0) {\n glyphId = code + idDelta[i];\n } else {\n index = idRangeOffset[i] / 2 + (code - start) - (segCount - i);\n glyphId = glyphIds[index] || 0;\n if (glyphId !== 0) {\n glyphId += idDelta[i];\n }\n }\n this.codeMap[code] = glyphId & 0xffff;\n }\n }\n }\n data.pos = saveOffset;\n }\n CmapEntry.encode = function(charmap, encoding) {\n var charMap,\n code,\n codeMap,\n codes,\n delta,\n deltas,\n diff,\n endCode,\n endCodes,\n entrySelector,\n glyphIDs,\n i,\n id,\n indexes,\n last,\n map,\n nextID,\n offset,\n old,\n rangeOffsets,\n rangeShift,\n searchRange,\n segCount,\n segCountX2,\n startCode,\n startCodes,\n startGlyph,\n subtable,\n _i,\n _j,\n _k,\n _l,\n _len,\n _len1,\n _len2,\n _len3,\n _len4,\n _len5,\n _len6,\n _len7,\n _m,\n _n,\n _name,\n _o,\n _p,\n _q;\n subtable = new Data();\n codes = Object.keys(charmap).sort(function(a, b) {\n return a - b;\n });\n switch (encoding) {\n case \"macroman\":\n id = 0;\n indexes = (function() {\n var _results = [];\n for (i = 0; i < 256; ++i) {\n _results.push(0);\n }\n return _results;\n })();\n map = {\n 0: 0\n };\n codeMap = {};\n for (_i = 0, _len = codes.length; _i < _len; _i++) {\n code = codes[_i];\n if (map[(_name = charmap[code])] == null) {\n map[_name] = ++id;\n }\n codeMap[code] = {\n old: charmap[code],\n new: map[charmap[code]]\n };\n indexes[code] = map[charmap[code]];\n }\n subtable.writeUInt16(1);\n subtable.writeUInt16(0);\n subtable.writeUInt32(12);\n subtable.writeUInt16(0);\n subtable.writeUInt16(262);\n subtable.writeUInt16(0);\n subtable.write(indexes);\n return {\n charMap: codeMap,\n subtable: subtable.data,\n maxGlyphID: id + 1\n };\n case \"unicode\":\n startCodes = [];\n endCodes = [];\n nextID = 0;\n map = {};\n charMap = {};\n last = diff = null;\n for (_j = 0, _len1 = codes.length; _j < _len1; _j++) {\n code = codes[_j];\n old = charmap[code];\n if (map[old] == null) {\n map[old] = ++nextID;\n }\n charMap[code] = {\n old: old,\n new: map[old]\n };\n delta = map[old] - code;\n if (last == null || delta !== diff) {\n if (last) {\n endCodes.push(last);\n }\n startCodes.push(code);\n diff = delta;\n }\n last = code;\n }\n if (last) {\n endCodes.push(last);\n }\n endCodes.push(0xffff);\n startCodes.push(0xffff);\n segCount = startCodes.length;\n segCountX2 = segCount * 2;\n searchRange = 2 * Math.pow(Math.log(segCount) / Math.LN2, 2);\n entrySelector = Math.log(searchRange / 2) / Math.LN2;\n rangeShift = 2 * segCount - searchRange;\n deltas = [];\n rangeOffsets = [];\n glyphIDs = [];\n for (i = _k = 0, _len2 = startCodes.length; _k < _len2; i = ++_k) {\n startCode = startCodes[i];\n endCode = endCodes[i];\n if (startCode === 0xffff) {\n deltas.push(0);\n rangeOffsets.push(0);\n break;\n }\n startGlyph = charMap[startCode][\"new\"];\n if (startCode - startGlyph >= 0x8000) {\n deltas.push(0);\n rangeOffsets.push(2 * (glyphIDs.length + segCount - i));\n for (\n code = _l = startCode;\n startCode <= endCode ? _l <= endCode : _l >= endCode;\n code = startCode <= endCode ? ++_l : --_l\n ) {\n glyphIDs.push(charMap[code][\"new\"]);\n }\n } else {\n deltas.push(startGlyph - startCode);\n rangeOffsets.push(0);\n }\n }\n subtable.writeUInt16(3);\n subtable.writeUInt16(1);\n subtable.writeUInt32(12);\n subtable.writeUInt16(4);\n subtable.writeUInt16(16 + segCount * 8 + glyphIDs.length * 2);\n subtable.writeUInt16(0);\n subtable.writeUInt16(segCountX2);\n subtable.writeUInt16(searchRange);\n subtable.writeUInt16(entrySelector);\n subtable.writeUInt16(rangeShift);\n for (_m = 0, _len3 = endCodes.length; _m < _len3; _m++) {\n code = endCodes[_m];\n subtable.writeUInt16(code);\n }\n subtable.writeUInt16(0);\n for (_n = 0, _len4 = startCodes.length; _n < _len4; _n++) {\n code = startCodes[_n];\n subtable.writeUInt16(code);\n }\n for (_o = 0, _len5 = deltas.length; _o < _len5; _o++) {\n delta = deltas[_o];\n subtable.writeUInt16(delta);\n }\n for (_p = 0, _len6 = rangeOffsets.length; _p < _len6; _p++) {\n offset = rangeOffsets[_p];\n subtable.writeUInt16(offset);\n }\n for (_q = 0, _len7 = glyphIDs.length; _q < _len7; _q++) {\n id = glyphIDs[_q];\n subtable.writeUInt16(id);\n }\n return {\n charMap: charMap,\n subtable: subtable.data,\n maxGlyphID: nextID + 1\n };\n }\n };\n return CmapEntry;\n})();\n\nvar CmapTable = (function(_super) {\n __extends(CmapTable, _super);\n\n function CmapTable() {\n return CmapTable.__super__.constructor.apply(this, arguments);\n }\n CmapTable.prototype.tag = \"cmap\";\n CmapTable.prototype.parse = function(data) {\n var entry, i, tableCount;\n data.pos = this.offset;\n this.version = data.readUInt16();\n tableCount = data.readUInt16();\n this.tables = [];\n this.unicode = null;\n for (\n i = 0;\n 0 <= tableCount ? i < tableCount : i > tableCount;\n i = 0 <= tableCount ? ++i : --i\n ) {\n entry = new CmapEntry(data, this.offset);\n this.tables.push(entry);\n if (entry.isUnicode) {\n if (this.unicode == null) {\n this.unicode = entry;\n }\n }\n }\n return true;\n };\n /*************************************************************************/\n /* function : encode */\n /* comment : Encode the cmap table corresponding to the input character. */\n /*************************************************************************/\n CmapTable.encode = function(charmap, encoding) {\n var result, table;\n if (encoding == null) {\n encoding = \"macroman\";\n }\n result = CmapEntry.encode(charmap, encoding);\n table = new Data();\n table.writeUInt16(0);\n table.writeUInt16(1);\n result.table = table.data.concat(result.subtable);\n return result;\n };\n return CmapTable;\n})(Table);\n\nvar HheaTable = (function(_super) {\n __extends(HheaTable, _super);\n\n function HheaTable() {\n return HheaTable.__super__.constructor.apply(this, arguments);\n }\n HheaTable.prototype.tag = \"hhea\";\n HheaTable.prototype.parse = function(data) {\n data.pos = this.offset;\n this.version = data.readInt();\n this.ascender = data.readShort();\n this.decender = data.readShort();\n this.lineGap = data.readShort();\n this.advanceWidthMax = data.readShort();\n this.minLeftSideBearing = data.readShort();\n this.minRightSideBearing = data.readShort();\n this.xMaxExtent = data.readShort();\n this.caretSlopeRise = data.readShort();\n this.caretSlopeRun = data.readShort();\n this.caretOffset = data.readShort();\n data.pos += 4 * 2;\n this.metricDataFormat = data.readShort();\n return (this.numberOfMetrics = data.readUInt16());\n };\n /*HheaTable.prototype.encode = function (ids) {\n var i, table, _i, _ref;\n table = new Data;\n table.writeInt(this.version);\n table.writeShort(this.ascender);\n table.writeShort(this.decender);\n table.writeShort(this.lineGap);\n table.writeShort(this.advanceWidthMax);\n table.writeShort(this.minLeftSideBearing);\n table.writeShort(this.minRightSideBearing);\n table.writeShort(this.xMaxExtent);\n table.writeShort(this.caretSlopeRise);\n table.writeShort(this.caretSlopeRun);\n table.writeShort(this.caretOffset);\n for (i = _i = 0, _ref = 4 * 2; 0 <= _ref ? _i < _ref : _i > _ref; i = 0 <= _ref ? ++_i : --_i) {\n table.writeByte(0);\n }\n table.writeShort(this.metricDataFormat);\n table.writeUInt16(ids.length);\n return table.data;\n };*/\n return HheaTable;\n})(Table);\n\nvar OS2Table = (function(_super) {\n __extends(OS2Table, _super);\n\n function OS2Table() {\n return OS2Table.__super__.constructor.apply(this, arguments);\n }\n OS2Table.prototype.tag = \"OS/2\";\n OS2Table.prototype.parse = function(data) {\n data.pos = this.offset;\n this.version = data.readUInt16();\n this.averageCharWidth = data.readShort();\n this.weightClass = data.readUInt16();\n this.widthClass = data.readUInt16();\n this.type = data.readShort();\n this.ySubscriptXSize = data.readShort();\n this.ySubscriptYSize = data.readShort();\n this.ySubscriptXOffset = data.readShort();\n this.ySubscriptYOffset = data.readShort();\n this.ySuperscriptXSize = data.readShort();\n this.ySuperscriptYSize = data.readShort();\n this.ySuperscriptXOffset = data.readShort();\n this.ySuperscriptYOffset = data.readShort();\n this.yStrikeoutSize = data.readShort();\n this.yStrikeoutPosition = data.readShort();\n this.familyClass = data.readShort();\n this.panose = (function() {\n var i, _results;\n _results = [];\n for (i = 0; i < 10; ++i) {\n _results.push(data.readByte());\n }\n return _results;\n })();\n this.charRange = (function() {\n var i, _results;\n _results = [];\n for (i = 0; i < 4; ++i) {\n _results.push(data.readInt());\n }\n return _results;\n })();\n this.vendorID = data.readString(4);\n this.selection = data.readShort();\n this.firstCharIndex = data.readShort();\n this.lastCharIndex = data.readShort();\n if (this.version > 0) {\n this.ascent = data.readShort();\n this.descent = data.readShort();\n this.lineGap = data.readShort();\n this.winAscent = data.readShort();\n this.winDescent = data.readShort();\n this.codePageRange = (function() {\n var i, _results;\n _results = [];\n for (i = 0; i < 2; i = ++i) {\n _results.push(data.readInt());\n }\n return _results;\n })();\n if (this.version > 1) {\n this.xHeight = data.readShort();\n this.capHeight = data.readShort();\n this.defaultChar = data.readShort();\n this.breakChar = data.readShort();\n return (this.maxContext = data.readShort());\n }\n }\n };\n /*OS2Table.prototype.encode = function () {\n return this.raw();\n };*/\n return OS2Table;\n})(Table);\n\nvar PostTable = (function(_super) {\n var POSTSCRIPT_GLYPHS;\n __extends(PostTable, _super);\n\n function PostTable() {\n return PostTable.__super__.constructor.apply(this, arguments);\n }\n PostTable.prototype.tag = \"post\";\n PostTable.prototype.parse = function(data) {\n var length, numberOfGlyphs, _results;\n data.pos = this.offset;\n this.format = data.readInt();\n this.italicAngle = data.readInt();\n this.underlinePosition = data.readShort();\n this.underlineThickness = data.readShort();\n this.isFixedPitch = data.readInt();\n this.minMemType42 = data.readInt();\n this.maxMemType42 = data.readInt();\n this.minMemType1 = data.readInt();\n this.maxMemType1 = data.readInt();\n switch (this.format) {\n case 0x00010000:\n break;\n case 0x00020000:\n numberOfGlyphs = data.readUInt16();\n this.glyphNameIndex = [];\n var i;\n for (\n i = 0;\n 0 <= numberOfGlyphs ? i < numberOfGlyphs : i > numberOfGlyphs;\n i = 0 <= numberOfGlyphs ? ++i : --i\n ) {\n this.glyphNameIndex.push(data.readUInt16());\n }\n this.names = [];\n _results = [];\n while (data.pos < this.offset + this.length) {\n length = data.readByte();\n _results.push(this.names.push(data.readString(length)));\n }\n return _results;\n case 0x00025000:\n numberOfGlyphs = data.readUInt16();\n return (this.offsets = data.read(numberOfGlyphs));\n case 0x00030000:\n break;\n case 0x00040000:\n return (this.map = function() {\n var _j, _ref, _results1;\n _results1 = [];\n for (\n i = _j = 0, _ref = this.file.maxp.numGlyphs;\n 0 <= _ref ? _j < _ref : _j > _ref;\n i = 0 <= _ref ? ++_j : --_j\n ) {\n _results1.push(data.readUInt32());\n }\n return _results1;\n }.call(this));\n }\n };\n /*PostTable.prototype.glyphFor = function (code) {\n var index;\n switch (this.format) {\n case 0x00010000:\n return POSTSCRIPT_GLYPHS[code] || '.notdef';\n case 0x00020000:\n index = this.glyphNameIndex[code];\n if (index <= 257) {\n return POSTSCRIPT_GLYPHS[index];\n }\n else {\n return this.names[index - 258] || '.notdef';\n }\n break;\n case 0x00025000:\n return POSTSCRIPT_GLYPHS[code + this.offsets[code]] || '.notdef';\n case 0x00030000:\n return '.notdef';\n case 0x00040000:\n return this.map[code] || 0xFFFF;\n }\n };*/\n /*PostTable.prototype.encode = function (mapping) {\n var id, index, indexes, position, post, raw, string, strings, table, _i, _j, _k, _len, _len1, _len2;\n if (!this.exists) {\n return null;\n }\n raw = this.raw();\n if (this.format === 0x00030000) {\n return raw;\n }\n table = new Data(raw.slice(0, 32));\n table.writeUInt32(0x00020000);\n table.pos = 32;\n indexes = [];\n strings = [];\n for (_i = 0, _len = mapping.length; _i < _len; _i++) {\n id = mapping[_i];\n post = this.glyphFor(id);\n position = POSTSCRIPT_GLYPHS.indexOf(post);\n if (position !== -1) {\n indexes.push(position);\n }\n else {\n indexes.push(257 + strings.length);\n strings.push(post);\n }\n }\n table.writeUInt16(Object.keys(mapping).length);\n for (_j = 0, _len1 = indexes.length; _j < _len1; _j++) {\n index = indexes[_j];\n table.writeUInt16(index);\n }\n for (_k = 0, _len2 = strings.length; _k < _len2; _k++) {\n string = strings[_k];\n table.writeByte(string.length);\n table.writeString(string);\n }\n return table.data;\n };*/\n POSTSCRIPT_GLYPHS = \".notdef .null nonmarkingreturn space exclam quotedbl numbersign dollar percent\\nampersand quotesingle parenleft parenright asterisk plus comma hyphen period slash\\nzero one two three four five six seven eight nine colon semicolon less equal greater\\nquestion at A B C D E F G H I J K L M N O P Q R S T U V W X Y Z\\nbracketleft backslash bracketright asciicircum underscore grave\\na b c d e f g h i j k l m n o p q r s t u v w x y z\\nbraceleft bar braceright asciitilde Adieresis Aring Ccedilla Eacute Ntilde Odieresis\\nUdieresis aacute agrave acircumflex adieresis atilde aring ccedilla eacute egrave\\necircumflex edieresis iacute igrave icircumflex idieresis ntilde oacute ograve\\nocircumflex odieresis otilde uacute ugrave ucircumflex udieresis dagger degree cent\\nsterling section bullet paragraph germandbls registered copyright trademark acute\\ndieresis notequal AE Oslash infinity plusminus lessequal greaterequal yen mu\\npartialdiff summation product pi integral ordfeminine ordmasculine Omega ae oslash\\nquestiondown exclamdown logicalnot radical florin approxequal Delta guillemotleft\\nguillemotright ellipsis nonbreakingspace Agrave Atilde Otilde OE oe endash emdash\\nquotedblleft quotedblright quoteleft quoteright divide lozenge ydieresis Ydieresis\\nfraction currency guilsinglleft guilsinglright fi fl daggerdbl periodcentered\\nquotesinglbase quotedblbase perthousand Acircumflex Ecircumflex Aacute Edieresis\\nEgrave Iacute Icircumflex Idieresis Igrave Oacute Ocircumflex apple Ograve Uacute\\nUcircumflex Ugrave dotlessi circumflex tilde macron breve dotaccent ring cedilla\\nhungarumlaut ogonek caron Lslash lslash Scaron scaron Zcaron zcaron brokenbar Eth\\neth Yacute yacute Thorn thorn minus multiply onesuperior twosuperior threesuperior\\nonehalf onequarter threequarters franc Gbreve gbreve Idotaccent Scedilla scedilla\\nCacute cacute Ccaron ccaron dcroat\".split(\n /\\s+/g\n );\n return PostTable;\n})(Table);\n\n/*********************************************************************************************************/\n/* function : NameEntry */\n/* comment : Store copyright information, platformID, encodingID, and languageID in the NameEntry object.*/\n/*********************************************************************************************************/\nvar NameEntry = (function() {\n function NameEntry(raw, entry) {\n this.raw = raw;\n this.length = raw.length;\n this.platformID = entry.platformID;\n this.encodingID = entry.encodingID;\n this.languageID = entry.languageID;\n }\n return NameEntry;\n})();\n\nvar NameTable = (function(_super) {\n var subsetTag;\n __extends(NameTable, _super);\n\n function NameTable() {\n return NameTable.__super__.constructor.apply(this, arguments);\n }\n NameTable.prototype.tag = \"name\";\n NameTable.prototype.parse = function(data) {\n var count,\n entries,\n entry,\n i,\n name,\n stringOffset,\n strings,\n text,\n _j,\n _len,\n _name;\n data.pos = this.offset;\n data.readShort(); //format\n count = data.readShort();\n stringOffset = data.readShort();\n entries = [];\n for (\n i = 0;\n 0 <= count ? i < count : i > count;\n i = 0 <= count ? ++i : --i\n ) {\n entries.push({\n platformID: data.readShort(),\n encodingID: data.readShort(),\n languageID: data.readShort(),\n nameID: data.readShort(),\n length: data.readShort(),\n offset: this.offset + stringOffset + data.readShort()\n });\n }\n strings = {};\n for (i = _j = 0, _len = entries.length; _j < _len; i = ++_j) {\n entry = entries[i];\n data.pos = entry.offset;\n text = data.readString(entry.length);\n name = new NameEntry(text, entry);\n if (strings[(_name = entry.nameID)] == null) {\n strings[_name] = [];\n }\n strings[entry.nameID].push(name);\n }\n this.strings = strings;\n this.copyright = strings[0];\n this.fontFamily = strings[1];\n this.fontSubfamily = strings[2];\n this.uniqueSubfamily = strings[3];\n this.fontName = strings[4];\n this.version = strings[5];\n try {\n this.postscriptName = strings[6][0].raw.replace(\n /[\\x00-\\x19\\x80-\\xff]/g,\n \"\"\n );\n } catch (e) {\n this.postscriptName = strings[4][0].raw.replace(\n /[\\x00-\\x19\\x80-\\xff]/g,\n \"\"\n );\n }\n this.trademark = strings[7];\n this.manufacturer = strings[8];\n this.designer = strings[9];\n this.description = strings[10];\n this.vendorUrl = strings[11];\n this.designerUrl = strings[12];\n this.license = strings[13];\n this.licenseUrl = strings[14];\n this.preferredFamily = strings[15];\n this.preferredSubfamily = strings[17];\n this.compatibleFull = strings[18];\n return (this.sampleText = strings[19]);\n };\n subsetTag = \"AAAAAA\";\n /*NameTable.prototype.encode = function () {\n var id, list, nameID, nameTable, postscriptName, strCount, strTable, string, strings, table, val, _i, _len, _ref;\n strings = {};\n _ref = this.strings;\n for (id in _ref) {\n val = _ref[id];\n strings[id] = val;\n }\n postscriptName = new NameEntry(\"\" + subsetTag + \"+\" + this.postscriptName, {\n platformID: 1\n , encodingID: 0\n , languageID: 0\n });\n strings[6] = [postscriptName];\n subsetTag = successorOf(subsetTag);\n strCount = 0;\n for (id in strings) {\n list = strings[id];\n if (list != null) {\n strCount += list.length;\n }\n }\n table = new Data;\n strTable = new Data;\n table.writeShort(0);\n table.writeShort(strCount);\n table.writeShort(6 + 12 * strCount);\n for (nameID in strings) {\n list = strings[nameID];\n if (list != null) {\n for (_i = 0, _len = list.length; _i < _len; _i++) {\n string = list[_i];\n table.writeShort(string.platformID);\n table.writeShort(string.encodingID);\n table.writeShort(string.languageID);\n table.writeShort(nameID);\n table.writeShort(string.length);\n table.writeShort(strTable.pos);\n strTable.writeString(string.raw);\n }\n }\n }\n return nameTable = {\n postscriptName: postscriptName.raw\n , table: table.data.concat(strTable.data)\n };\n };*/\n return NameTable;\n})(Table);\n\nvar MaxpTable = (function(_super) {\n __extends(MaxpTable, _super);\n\n function MaxpTable() {\n return MaxpTable.__super__.constructor.apply(this, arguments);\n }\n MaxpTable.prototype.tag = \"maxp\";\n MaxpTable.prototype.parse = function(data) {\n data.pos = this.offset;\n this.version = data.readInt();\n this.numGlyphs = data.readUInt16();\n this.maxPoints = data.readUInt16();\n this.maxContours = data.readUInt16();\n this.maxCompositePoints = data.readUInt16();\n this.maxComponentContours = data.readUInt16();\n this.maxZones = data.readUInt16();\n this.maxTwilightPoints = data.readUInt16();\n this.maxStorage = data.readUInt16();\n this.maxFunctionDefs = data.readUInt16();\n this.maxInstructionDefs = data.readUInt16();\n this.maxStackElements = data.readUInt16();\n this.maxSizeOfInstructions = data.readUInt16();\n this.maxComponentElements = data.readUInt16();\n return (this.maxComponentDepth = data.readUInt16());\n };\n /*MaxpTable.prototype.encode = function (ids) {\n var table;\n table = new Data;\n table.writeInt(this.version);\n table.writeUInt16(ids.length);\n table.writeUInt16(this.maxPoints);\n table.writeUInt16(this.maxContours);\n table.writeUInt16(this.maxCompositePoints);\n table.writeUInt16(this.maxComponentContours);\n table.writeUInt16(this.maxZones);\n table.writeUInt16(this.maxTwilightPoints);\n table.writeUInt16(this.maxStorage);\n table.writeUInt16(this.maxFunctionDefs);\n table.writeUInt16(this.maxInstructionDefs);\n table.writeUInt16(this.maxStackElements);\n table.writeUInt16(this.maxSizeOfInstructions);\n table.writeUInt16(this.maxComponentElements);\n table.writeUInt16(this.maxComponentDepth);\n return table.data;\n };*/\n return MaxpTable;\n})(Table);\n\nvar HmtxTable = (function(_super) {\n __extends(HmtxTable, _super);\n\n function HmtxTable() {\n return HmtxTable.__super__.constructor.apply(this, arguments);\n }\n HmtxTable.prototype.tag = \"hmtx\";\n HmtxTable.prototype.parse = function(data) {\n var i, last, lsbCount, m, _j, _ref, _results;\n data.pos = this.offset;\n this.metrics = [];\n for (\n i = 0, _ref = this.file.hhea.numberOfMetrics;\n 0 <= _ref ? i < _ref : i > _ref;\n i = 0 <= _ref ? ++i : --i\n ) {\n this.metrics.push({\n advance: data.readUInt16(),\n lsb: data.readInt16()\n });\n }\n lsbCount = this.file.maxp.numGlyphs - this.file.hhea.numberOfMetrics;\n this.leftSideBearings = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= lsbCount ? _j < lsbCount : _j > lsbCount;\n i = 0 <= lsbCount ? ++_j : --_j\n ) {\n _results.push(data.readInt16());\n }\n return _results;\n })();\n this.widths = function() {\n var _j, _len, _ref1, _results;\n _ref1 = this.metrics;\n _results = [];\n for (_j = 0, _len = _ref1.length; _j < _len; _j++) {\n m = _ref1[_j];\n _results.push(m.advance);\n }\n return _results;\n }.call(this);\n last = this.widths[this.widths.length - 1];\n _results = [];\n for (\n i = _j = 0;\n 0 <= lsbCount ? _j < lsbCount : _j > lsbCount;\n i = 0 <= lsbCount ? ++_j : --_j\n ) {\n _results.push(this.widths.push(last));\n }\n return _results;\n };\n /***************************************************************/\n /* function : forGlyph */\n /* comment : Returns the advance width and lsb for this glyph. */\n /***************************************************************/\n HmtxTable.prototype.forGlyph = function(id) {\n if (id in this.metrics) {\n return this.metrics[id];\n }\n return {\n advance: this.metrics[this.metrics.length - 1].advance,\n lsb: this.leftSideBearings[id - this.metrics.length]\n };\n };\n /*HmtxTable.prototype.encode = function (mapping) {\n var id, metric, table, _i, _len;\n table = new Data;\n for (_i = 0, _len = mapping.length; _i < _len; _i++) {\n id = mapping[_i];\n metric = this.forGlyph(id);\n table.writeUInt16(metric.advance);\n table.writeUInt16(metric.lsb);\n }\n return table.data;\n };*/\n return HmtxTable;\n})(Table);\n\nvar __slice = [].slice;\n\nvar GlyfTable = (function(_super) {\n __extends(GlyfTable, _super);\n\n function GlyfTable() {\n return GlyfTable.__super__.constructor.apply(this, arguments);\n }\n GlyfTable.prototype.tag = \"glyf\";\n GlyfTable.prototype.parse = function() {\n return (this.cache = {});\n };\n GlyfTable.prototype.glyphFor = function(id) {\n var data,\n index,\n length,\n loca,\n numberOfContours,\n raw,\n xMax,\n xMin,\n yMax,\n yMin;\n if (id in this.cache) {\n return this.cache[id];\n }\n loca = this.file.loca;\n data = this.file.contents;\n index = loca.indexOf(id);\n length = loca.lengthOf(id);\n if (length === 0) {\n return (this.cache[id] = null);\n }\n data.pos = this.offset + index;\n raw = new Data(data.read(length));\n numberOfContours = raw.readShort();\n xMin = raw.readShort();\n yMin = raw.readShort();\n xMax = raw.readShort();\n yMax = raw.readShort();\n if (numberOfContours === -1) {\n this.cache[id] = new CompoundGlyph(raw, xMin, yMin, xMax, yMax);\n } else {\n this.cache[id] = new SimpleGlyph(\n raw,\n numberOfContours,\n xMin,\n yMin,\n xMax,\n yMax\n );\n }\n return this.cache[id];\n };\n GlyfTable.prototype.encode = function(glyphs, mapping, old2new) {\n var glyph, id, offsets, table, _i, _len;\n table = [];\n offsets = [];\n for (_i = 0, _len = mapping.length; _i < _len; _i++) {\n id = mapping[_i];\n glyph = glyphs[id];\n offsets.push(table.length);\n if (glyph) {\n table = table.concat(glyph.encode(old2new));\n }\n }\n offsets.push(table.length);\n return {\n table: table,\n offsets: offsets\n };\n };\n return GlyfTable;\n})(Table);\n\nvar SimpleGlyph = (function() {\n /**************************************************************************/\n /* function : SimpleGlyph */\n /* comment : Stores raw, xMin, yMin, xMax, and yMax values for this glyph.*/\n /**************************************************************************/\n function SimpleGlyph(raw, numberOfContours, xMin, yMin, xMax, yMax) {\n this.raw = raw;\n this.numberOfContours = numberOfContours;\n this.xMin = xMin;\n this.yMin = yMin;\n this.xMax = xMax;\n this.yMax = yMax;\n this.compound = false;\n }\n SimpleGlyph.prototype.encode = function() {\n return this.raw.data;\n };\n return SimpleGlyph;\n})();\n\nvar CompoundGlyph = (function() {\n var ARG_1_AND_2_ARE_WORDS,\n MORE_COMPONENTS,\n WE_HAVE_AN_X_AND_Y_SCALE,\n WE_HAVE_A_SCALE,\n WE_HAVE_A_TWO_BY_TWO,\n WE_HAVE_INSTRUCTIONS;\n ARG_1_AND_2_ARE_WORDS = 0x0001;\n WE_HAVE_A_SCALE = 0x0008;\n MORE_COMPONENTS = 0x0020;\n WE_HAVE_AN_X_AND_Y_SCALE = 0x0040;\n WE_HAVE_A_TWO_BY_TWO = 0x0080;\n WE_HAVE_INSTRUCTIONS = 0x0100;\n\n /********************************************************************************************************************/\n /* function : CompoundGlypg generator */\n /* comment : It stores raw, xMin, yMin, xMax, yMax, glyph id, and glyph offset for the corresponding compound glyph.*/\n /********************************************************************************************************************/\n function CompoundGlyph(raw, xMin, yMin, xMax, yMax) {\n var data, flags;\n this.raw = raw;\n this.xMin = xMin;\n this.yMin = yMin;\n this.xMax = xMax;\n this.yMax = yMax;\n this.compound = true;\n this.glyphIDs = [];\n this.glyphOffsets = [];\n data = this.raw;\n while (true) {\n flags = data.readShort();\n this.glyphOffsets.push(data.pos);\n this.glyphIDs.push(data.readUInt16());\n if (!(flags & MORE_COMPONENTS)) {\n break;\n }\n if (flags & ARG_1_AND_2_ARE_WORDS) {\n data.pos += 4;\n } else {\n data.pos += 2;\n }\n if (flags & WE_HAVE_A_TWO_BY_TWO) {\n data.pos += 8;\n } else if (flags & WE_HAVE_AN_X_AND_Y_SCALE) {\n data.pos += 4;\n } else if (flags & WE_HAVE_A_SCALE) {\n data.pos += 2;\n }\n }\n }\n /****************************************************************************************************************/\n /* function : CompoundGlypg encode */\n /* comment : After creating a table for the characters you typed, you call directory.encode to encode the table.*/\n /****************************************************************************************************************/\n CompoundGlyph.prototype.encode = function() {\n var i, result, _len, _ref;\n result = new Data(__slice.call(this.raw.data));\n _ref = this.glyphIDs;\n for (i = 0, _len = _ref.length; i < _len; ++i) {\n result.pos = this.glyphOffsets[i];\n }\n return result.data;\n };\n return CompoundGlyph;\n})();\n\nvar LocaTable = (function(_super) {\n __extends(LocaTable, _super);\n\n function LocaTable() {\n return LocaTable.__super__.constructor.apply(this, arguments);\n }\n LocaTable.prototype.tag = \"loca\";\n LocaTable.prototype.parse = function(data) {\n var format, i;\n data.pos = this.offset;\n format = this.file.head.indexToLocFormat;\n if (format === 0) {\n return (this.offsets = function() {\n var _ref, _results;\n _results = [];\n for (i = 0, _ref = this.length; i < _ref; i += 2) {\n _results.push(data.readUInt16() * 2);\n }\n return _results;\n }.call(this));\n } else {\n return (this.offsets = function() {\n var _ref, _results;\n _results = [];\n for (i = 0, _ref = this.length; i < _ref; i += 4) {\n _results.push(data.readUInt32());\n }\n return _results;\n }.call(this));\n }\n };\n LocaTable.prototype.indexOf = function(id) {\n return this.offsets[id];\n };\n LocaTable.prototype.lengthOf = function(id) {\n return this.offsets[id + 1] - this.offsets[id];\n };\n LocaTable.prototype.encode = function(offsets, activeGlyphs) {\n var LocaTable = new Uint32Array(this.offsets.length);\n var glyfPtr = 0;\n var listGlyf = 0;\n for (var k = 0; k < LocaTable.length; ++k) {\n LocaTable[k] = glyfPtr;\n if (listGlyf < activeGlyphs.length && activeGlyphs[listGlyf] == k) {\n ++listGlyf;\n LocaTable[k] = glyfPtr;\n var start = this.offsets[k];\n var len = this.offsets[k + 1] - start;\n if (len > 0) {\n glyfPtr += len;\n }\n }\n }\n var newLocaTable = new Array(LocaTable.length * 4);\n for (var j = 0; j < LocaTable.length; ++j) {\n newLocaTable[4 * j + 3] = LocaTable[j] & 0x000000ff;\n newLocaTable[4 * j + 2] = (LocaTable[j] & 0x0000ff00) >> 8;\n newLocaTable[4 * j + 1] = (LocaTable[j] & 0x00ff0000) >> 16;\n newLocaTable[4 * j] = (LocaTable[j] & 0xff000000) >> 24;\n }\n return newLocaTable;\n };\n return LocaTable;\n})(Table);\n\n/************************************************************************************/\n/* function : invert */\n/* comment : Change the object's (key: value) to create an object with (value: key).*/\n/************************************************************************************/\nvar invert = function(object) {\n var key, ret, val;\n ret = {};\n for (key in object) {\n val = object[key];\n ret[val] = key;\n }\n return ret;\n};\n\n/*var successorOf = function (input) {\n var added, alphabet, carry, i, index, isUpperCase, last, length, next, result;\n alphabet = 'abcdefghijklmnopqrstuvwxyz';\n length = alphabet.length;\n result = input;\n i = input.length;\n while (i >= 0) {\n last = input.charAt(--i);\n if (isNaN(last)) {\n index = alphabet.indexOf(last.toLowerCase());\n if (index === -1) {\n next = last;\n carry = true;\n }\n else {\n next = alphabet.charAt((index + 1) % length);\n isUpperCase = last === last.toUpperCase();\n if (isUpperCase) {\n next = next.toUpperCase();\n }\n carry = index + 1 >= length;\n if (carry && i === 0) {\n added = isUpperCase ? 'A' : 'a';\n result = added + next + result.slice(1);\n break;\n }\n }\n }\n else {\n next = +last + 1;\n carry = next > 9;\n if (carry) {\n next = 0;\n }\n if (carry && i === 0) {\n result = '1' + next + result.slice(1);\n break;\n }\n }\n result = result.slice(0, i) + next + result.slice(i + 1);\n if (!carry) {\n break;\n }\n }\n return result;\n };*/\n\nvar Subset = (function() {\n function Subset(font) {\n this.font = font;\n this.subset = {};\n this.unicodes = {};\n this.next = 33;\n }\n /*Subset.prototype.use = function (character) {\n var i, _i, _ref;\n if (typeof character === 'string') {\n for (i = _i = 0, _ref = character.length; 0 <= _ref ? _i < _ref : _i > _ref; i = 0 <= _ref ? ++_i : --_i) {\n this.use(character.charCodeAt(i));\n }\n return;\n }\n if (!this.unicodes[character]) {\n this.subset[this.next] = character;\n return this.unicodes[character] = this.next++;\n }\n };*/\n /*Subset.prototype.encodeText = function (text) {\n var char, i, string, _i, _ref;\n string = '';\n for (i = _i = 0, _ref = text.length; 0 <= _ref ? _i < _ref : _i > _ref; i = 0 <= _ref ? ++_i : --_i) {\n char = this.unicodes[text.charCodeAt(i)];\n string += String.fromCharCode(char);\n }\n return string;\n };*/\n /***************************************************************/\n /* function : generateCmap */\n /* comment : Returns the unicode cmap for this font. */\n /***************************************************************/\n Subset.prototype.generateCmap = function() {\n var mapping, roman, unicode, unicodeCmap, _ref;\n unicodeCmap = this.font.cmap.tables[0].codeMap;\n mapping = {};\n _ref = this.subset;\n for (roman in _ref) {\n unicode = _ref[roman];\n mapping[roman] = unicodeCmap[unicode];\n }\n return mapping;\n };\n /*Subset.prototype.glyphIDs = function () {\n var ret, roman, unicode, unicodeCmap, val, _ref;\n unicodeCmap = this.font.cmap.tables[0].codeMap;\n ret = [0];\n _ref = this.subset;\n for (roman in _ref) {\n unicode = _ref[roman];\n val = unicodeCmap[unicode];\n if ((val != null) && __indexOf.call(ret, val) < 0) {\n ret.push(val);\n }\n }\n return ret.sort();\n };*/\n /******************************************************************/\n /* function : glyphsFor */\n /* comment : Returns simple glyph objects for the input character.*/\n /******************************************************************/\n Subset.prototype.glyphsFor = function(glyphIDs) {\n var additionalIDs, glyph, glyphs, id, _i, _len, _ref;\n glyphs = {};\n for (_i = 0, _len = glyphIDs.length; _i < _len; _i++) {\n id = glyphIDs[_i];\n glyphs[id] = this.font.glyf.glyphFor(id);\n }\n additionalIDs = [];\n for (id in glyphs) {\n glyph = glyphs[id];\n if (glyph != null ? glyph.compound : void 0) {\n additionalIDs.push.apply(additionalIDs, glyph.glyphIDs);\n }\n }\n if (additionalIDs.length > 0) {\n _ref = this.glyphsFor(additionalIDs);\n for (id in _ref) {\n glyph = _ref[id];\n glyphs[id] = glyph;\n }\n }\n return glyphs;\n };\n /***************************************************************/\n /* function : encode */\n /* comment : Encode various tables for the characters you use. */\n /***************************************************************/\n Subset.prototype.encode = function(glyID, indexToLocFormat) {\n var cmap,\n code,\n glyf,\n glyphs,\n id,\n ids,\n loca,\n new2old,\n newIDs,\n nextGlyphID,\n old2new,\n oldID,\n oldIDs,\n tables,\n _ref;\n cmap = CmapTable.encode(this.generateCmap(), \"unicode\");\n glyphs = this.glyphsFor(glyID);\n old2new = {\n 0: 0\n };\n _ref = cmap.charMap;\n for (code in _ref) {\n ids = _ref[code];\n old2new[ids.old] = ids[\"new\"];\n }\n nextGlyphID = cmap.maxGlyphID;\n for (oldID in glyphs) {\n if (!(oldID in old2new)) {\n old2new[oldID] = nextGlyphID++;\n }\n }\n new2old = invert(old2new);\n newIDs = Object.keys(new2old).sort(function(a, b) {\n return a - b;\n });\n oldIDs = (function() {\n var _i, _len, _results;\n _results = [];\n for (_i = 0, _len = newIDs.length; _i < _len; _i++) {\n id = newIDs[_i];\n _results.push(new2old[id]);\n }\n return _results;\n })();\n glyf = this.font.glyf.encode(glyphs, oldIDs, old2new);\n loca = this.font.loca.encode(glyf.offsets, oldIDs);\n tables = {\n cmap: this.font.cmap.raw(),\n glyf: glyf.table,\n loca: loca,\n hmtx: this.font.hmtx.raw(),\n hhea: this.font.hhea.raw(),\n maxp: this.font.maxp.raw(),\n post: this.font.post.raw(),\n name: this.font.name.raw(),\n head: this.font.head.encode(indexToLocFormat)\n };\n if (this.font.os2.exists) {\n tables[\"OS/2\"] = this.font.os2.raw();\n }\n return this.font.directory.encode(tables);\n };\n return Subset;\n})();\n\njsPDF.API.PDFObject = (function() {\n var pad;\n\n function PDFObject() {}\n pad = function(str, length) {\n return (Array(length + 1).join(\"0\") + str).slice(-length);\n };\n /*****************************************************************************/\n /* function : convert */\n /* comment :Converts pdf tag's / FontBBox and array values in / W to strings */\n /*****************************************************************************/\n PDFObject.convert = function(object) {\n var e, items, key, out, val;\n if (Array.isArray(object)) {\n items = (function() {\n var _i, _len, _results;\n _results = [];\n for (_i = 0, _len = object.length; _i < _len; _i++) {\n e = object[_i];\n _results.push(PDFObject.convert(e));\n }\n return _results;\n })().join(\" \");\n return \"[\" + items + \"]\";\n } else if (typeof object === \"string\") {\n return \"/\" + object;\n } else if (object != null ? object.isString : void 0) {\n return \"(\" + object + \")\";\n } else if (object instanceof Date) {\n return (\n \"(D:\" +\n pad(object.getUTCFullYear(), 4) +\n pad(object.getUTCMonth(), 2) +\n pad(object.getUTCDate(), 2) +\n pad(object.getUTCHours(), 2) +\n pad(object.getUTCMinutes(), 2) +\n pad(object.getUTCSeconds(), 2) +\n \"Z)\"\n );\n } else if ({}.toString.call(object) === \"[object Object]\") {\n out = [\"<<\"];\n for (key in object) {\n val = object[key];\n out.push(\"/\" + key + \" \" + PDFObject.convert(val));\n }\n out.push(\">>\");\n return out.join(\"\\n\");\n } else {\n return \"\" + object;\n }\n };\n return PDFObject;\n})();\n","import { useEffect, useMemo, useRef, useState } from 'react';\r\nimport { useNavigate, useParams } from 'react-router-dom';\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { useAppContext } from 'services/context';\r\nimport { useScreenSize, useToggle } from 'services/hooks';\r\nimport { COURSES_ACTIONS } from 'services/reducers/actionTypes';\r\nimport { COURSE_STATUS, ROUTES, MEETING_STATUS, VALIDATATIONS } from 'constants/index.js';\r\nimport { saveArrayAsCSV } from 'services/utils';\r\nimport Button from 'components/Button';\r\nimport Container from 'components/Container';\r\nimport Icon from 'components/Icon';\r\nimport Input from 'components/Input';\r\nimport Modal from 'components/Modal';\r\nimport Spinner from 'components/Spinner';\r\nimport Tooltip from 'components/Tooltip';\r\nimport UnsupportedFile from 'components/UnsupportedFile';\r\n\r\nimport Box from 'components/Box';\r\nimport './style.css';\r\n\r\nconst MOBILE_SIZE = process.env.REACT_APP_MOBILE_SIZE;\r\nconst API_URL = process.env.REACT_APP_API_URL;\r\n\r\nconst MyCourse = () => {\r\n\tconst { Api, courses, user, dispatchCourses, isLoading } = useAppContext();\r\n\tconst navigate = useNavigate();\r\n\r\n\tconst [pdfBlob, setPdfBlob] = useState(undefined);\r\n\tconst [certificatePdf, setCertificatePdf] = useState(undefined);\r\n\tconst [pdfToDisplay, setPdfToDisplay] = useState(undefined);\r\n\r\n\tconst [studentDetails, setStudentDetails] = useState(user);\r\n\r\n\tconst [studentMeetings, setStudentMeetings] = useState(undefined);\r\n\tconst [dynamicParams, setDynamicParams] = useState([]);\r\n\r\n\tconst [userDetailsFormModal, setUserDetailsFormModalToggle] = useToggle(false);\r\n\tconst [popupBeforeCertificateModal, setPopupBeforeCertificateModalToggle] = useToggle(false);\r\n\tconst [certificateModal, setCertificateModalToggle] = useToggle(false);\r\n\tconst [pdfModal, PdfModalToggle] = useToggle(false);\r\n\tconst [showAccessCode, setShowAccessCode] = useState(false);\r\n\tconst [reviewExist, setReviewExist] = useState(false);\r\n\tconst [formValidationError, setFormValidationError] = useState(false);\r\n\r\n\tconst toolTipRef = useRef();\r\n\tconst studentScheduleContainer = useRef();\r\n\tconst { recordId } = useParams();\r\n\tconst screenSize = useScreenSize();\r\n\r\n\tconst currentCourse = useMemo(() => {\r\n\t\tconst _currentCourse = courses.currentCourse;\r\n\t\treturn _currentCourse;\r\n\t}, [courses]);\r\n\r\n\t//returns class as string for dynamic class css\r\n\tconst classesByRateOfProgress = useMemo(() => {\r\n\t\tconst rateOfProgress = parseInt(currentCourse?.rateOfProgress) || 0;\r\n\t\tconst formSent = currentCourse.isSentMyCourseForm;\r\n\t\tconst _hasMeetings = currentCourse.hasMeetings;\r\n\r\n\t\tif (!_hasMeetings && formSent) {\r\n\t\t\treturn COURSE_STATUS.NEW_FORM_SENT;\r\n\t\t}\r\n\t\tif (_hasMeetings && rateOfProgress >= 25 && rateOfProgress < 100) {\r\n\t\t\treturn COURSE_STATUS.IN_PROGRESS;\r\n\t\t}\r\n\t\tif (rateOfProgress >= 100) {\r\n\t\t\treturn COURSE_STATUS.COMPLETED;\r\n\t\t}\r\n\t\treturn COURSE_STATUS.NEW;\r\n\t}, [currentCourse]);\r\n\r\n\t//navigate to course review page - for btn on completed screen\r\n\tconst redirectToReview = recordId => {\r\n\t\tif (!recordId) return;\r\n\t\tnavigate(`${ROUTES.REVIEW}/${recordId}`);\r\n\t};\r\n\r\n\t//navigate on new tab to whatsapp\r\n\tconst redirectToWhatsApp = (e, number) => {\r\n\t\twindow.open(`https://wa.me/${number.content}`, '_blank');\r\n\t};\r\n\r\n\t//export student schedule to excel\r\n\tconst _handleExportToExcel = () => {\r\n\t\tconst meeting = [...studentMeetings];\r\n\t\tconst courseName = currentCourse.courseName;\r\n\t\tconst meetingsForExcel = meeting.map((meet, index) => {\r\n\t\t\treturn {\r\n\t\t\t\tSession: `Session ${index + 1}`,\r\n\t\t\t\tDate: meet.date,\r\n\t\t\t\tStart_Time: meet.startTime,\r\n\t\t\t\tEnd_Time: meet.endTime,\r\n\t\t\t\tTeacher: meet.teacherName,\r\n\t\t\t\tZoom_Link: meet.meetingRemark,\r\n\t\t\t};\r\n\t\t});\r\n\r\n\t\tsaveArrayAsCSV(`Galway_${courseName}_schedule_` + new Date().toLocaleDateString('en-GB'), meetingsForExcel);\r\n\t};\r\n\r\n\tconst generatePDF = () => {\r\n\t\tif (studentScheduleContainer) {\r\n\t\t\t// Use html2canvas to capture the element as an image\r\n\t\t\thtml2canvas(studentScheduleContainer.current).then(canvas => {\r\n\t\t\t\tconst imgData = canvas.toDataURL('image/png');\r\n\t\t\t\tconst pdf = new jsPDF({ orientation: 'landscape' });\r\n\r\n\t\t\t\t// Calculate the dimensions of the PDF page and the captured element\r\n\t\t\t\tconst pdfWidth = pdf.internal.pageSize.width;\r\n\t\t\t\tconst pdfHeight = pdf.internal.pageSize.height;\r\n\t\t\t\tconst elementWidth = pdfWidth - 20; // Subtracting 20 to create a margin\r\n\t\t\t\tconst elementHeight = (elementWidth / canvas.width) * canvas.height;\r\n\r\n\t\t\t\t// Calculate the positions to center the captured element\r\n\t\t\t\tconst xPosition = (pdfWidth - elementWidth) / 2;\r\n\t\t\t\tconst yPosition = (pdfHeight - elementHeight) / 2;\r\n\t\t\t\tpdf.addImage(imgData, 'PNG', xPosition, yPosition, elementWidth, elementHeight);\r\n\r\n\t\t\t\t// example with adjust\r\n\t\t\t\t// pdf.addImage(imgData, 'PNG', 10, 10, 190, 0); // You can adjust the position and size\r\n\r\n\t\t\t\tconst pdfName = `${user.fname}-${user.lname}_${currentCourse.courseName}_Schedule`;\r\n\t\t\t\tpdf.save(pdfName);\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tconsole.error('Element not found');\r\n\t\t}\r\n\t};\r\n\r\n\t//handles revel/generate activationCode\r\n\tconst _handleRevealActivationCode = async (e, item) => {\r\n\t\te?.preventDefault();\r\n\t\tif (showAccessCode) return;\r\n\t\tlet _currentCourse = courses.courses.find(course => course.recordId === parseInt(recordId));\r\n\t\tconst _studentCourseActivationCode = _currentCourse?.studentCourseActivationCode || '';\r\n\t\tconst isDebug = API_URL.includes('.test') || API_URL.includes('localhost');\r\n\r\n\t\tif (isDebug) {\r\n\t\t\tcurrentCourse.studentCourseActivationCode = 'TEST-TEST-TEST-TEST-TEST-TEST';\r\n\t\t\tsetShowAccessCode(true);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (!_studentCourseActivationCode) {\r\n\t\t\t_currentCourse = await Api.GetActivationCode(recordId);\r\n\t\t\tconst userCourses = await Api.GetUserCourses();\r\n\t\t\tif (userCourses?.length > 0) {\r\n\t\t\t\tdispatchCourses({ type: COURSES_ACTIONS.SET_COURSES, payload: userCourses });\r\n\t\t\t\tconst releventCourse = userCourses.find(course => course.recordId === parseInt(recordId));\r\n\t\t\t\tdispatchCourses({ type: COURSES_ACTIONS.SET_CURRENT_COURSE, payload: releventCourse });\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tsetShowAccessCode(true);\r\n\t};\r\n\r\n\t//handles student details form trigger when user didnt sent the form already\r\n\tconst _handleOpenUserDetailsModal = () => {\r\n\t\tif (!currentCourse.isSentMyCourseForm) {\r\n\t\t\tsetUserDetailsFormModalToggle();\r\n\t\t\treturn;\r\n\t\t}\r\n\t};\r\n\r\n\t//handle open certificate popup\r\n\tconst _handleGetCertificateBtn = e => {\r\n\t\te?.preventDefault();\r\n\t\tif (reviewExist) {\r\n\t\t\t_handleCertificate();\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tsetPopupBeforeCertificateModalToggle();\r\n\t};\r\n\r\n\t//handles redirect to Conversation\r\n\tconst _handleContactYourTeacher = () => {\r\n\t\tnavigate(ROUTES.CONVERSATION, {\r\n\t\t\tstate: { contactTeacher: true, studentTeacherId: currentCourse.studentTeacherId, recordId: currentCourse.recordId },\r\n\t\t});\r\n\t};\r\n\r\n\t//copy to clipboard\r\n\tconst _copyToClipboard = (value, e) => {\r\n\t\tif (navigator.clipboard) {\r\n\t\t\tnavigator.clipboard.writeText(value);\r\n\t\t\tif (e) toolTipRef.current.Show({ x: e.pageX || -10, y: e.pageY || -10 });\r\n\t\t}\r\n\t};\r\n\r\n\t//contains all courseMaterials left box\r\n\tconst courseMaterials = useMemo(() => {\r\n\t\treturn [\r\n\t\t\t{\r\n\t\t\t\tid: 1,\r\n\t\t\t\tgroup: 'courseMaterials',\r\n\t\t\t\tname: 'ActivationCode',\r\n\t\t\t\ttitle: '',\r\n\t\t\t\ticonName: 'eyeIcon',\r\n\t\t\t\tcopyToClipboard: showAccessCode && (\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\te?.preventDefault();\r\n\t\t\t\t\t\t\t_copyToClipboard(currentCourse?.studentCourseActivationCode, e);\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t/>\r\n\t\t\t\t),\r\n\t\t\t\tonClick: _handleRevealActivationCode,\r\n\t\t\t\trenderAccessCode: showAccessCode ? (\r\n\t\t\t\t\t<>\r\n\t\t\t\t\t\t
    {currentCourse?.studentCourseActivationCode}
    \r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t'Show access code'\r\n\t\t\t\t),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tid: 2,\r\n\t\t\t\tgroup: 'courseMaterials',\r\n\t\t\t\tname: 'educationPlatform',\r\n\t\t\t\ttitle: 'Continue to education platform',\r\n\t\t\t\ticonName: 'rightArrow',\r\n\t\t\t\tonClick: e => {\r\n\t\t\t\t\te?.preventDefault();\r\n\t\t\t\t\tif (!currentCourse) return;\r\n\t\t\t\t\twindow.open(currentCourse.courseExternalURL, '_blank');\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tid: 3,\r\n\t\t\t\tgroup: 'courseMaterials',\r\n\t\t\t\tname: 'onlineMaterials',\r\n\t\t\t\ttitle: 'How to access your online materials',\r\n\t\t\t\ticonName: 'downloadIconV2',\r\n\t\t\t\tpdfUrl: currentCourse?.guideFileUrl || '',\r\n\t\t\t\ticonColor: '#d41028',\r\n\t\t\t\tonClick: (e, pdf) => {\r\n\t\t\t\t\t_handleViewPdf(pdf.pdfUrl);\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tid: 4,\r\n\t\t\t\tgroup: 'courseMaterials',\r\n\t\t\t\tname: 'courseGuide',\r\n\t\t\t\ttitle: 'Galway Academy ESL course guide',\r\n\t\t\t\ticonName: 'downloadIconV2',\r\n\r\n\t\t\t\tpdfUrl: currentCourse?.introductionFileURL || '',\r\n\r\n\t\t\t\tonClick: (e, pdf) => {\r\n\t\t\t\t\t_handleViewPdf(`${API_URL}/${pdf.pdfUrl}`);\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t];\r\n\t}, [currentCourse, showAccessCode]);\r\n\r\n\t//contains all administationContact right box\r\n\tconst administationContact = [\r\n\t\t{\r\n\t\t\tid: 1,\r\n\t\t\tgroup: 'administationContact',\r\n\t\t\tname: 'whatsApp',\r\n\t\t\ttitle: 'Contact us by WhatsApp',\r\n\t\t\ticonName: 'whatsAppIcon',\r\n\t\t\ticonColor: '#45c153',\r\n\t\t\tcontent: '447723528081',\r\n\t\t\tonClick: redirectToWhatsApp,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 2,\r\n\t\t\tgroup: 'administationContact',\r\n\t\t\tname: 'email',\r\n\t\t\ttitle: 'Send us an Email',\r\n\t\t\ticonColor: '#d41028',\r\n\t\t\ticonName: 'emailIcon',\r\n\t\t\tonClick: e => {\r\n\t\t\t\te?.preventDefault();\r\n\t\t\t\tconst supportEmail = dynamicParams.find(param => param.paramName === 'CsrEmail');\r\n\t\t\t\tif (!supportEmail) return;\r\n\r\n\t\t\t\twindow.location = `mailto:${supportEmail.paramValue}`;\r\n\t\t\t},\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 3,\r\n\t\t\tgroup: 'administationContact',\r\n\t\t\tname: 'phone',\r\n\t\t\ticonColor: '#2583ff',\r\n\t\t\tnumber: '35315692414',\r\n\t\t\ttitle: `Call us to +353-1569-24-14`,\r\n\t\t\ticonName: 'phoneIcon',\r\n\t\t\tonClick: e => {\r\n\t\t\t\te?.preventDefault();\r\n\t\t\t\tconst SitePhone = dynamicParams.find(param => param.paramName === 'SitePhone');\r\n\t\t\t\tif (!SitePhone) return;\r\n\r\n\t\t\t\twindow.location = `tel:${SitePhone.paramValue}`;\r\n\t\t\t},\r\n\t\t},\r\n\t];\r\n\r\n\t//clear certificate states\r\n\tuseEffect(() => {\r\n\t\treturn () => {\r\n\t\t\tsetCertificatePdf();\r\n\t\t\tsetPdfBlob();\r\n\t\t};\r\n\t}, []);\r\n\r\n\t//generate certificate\r\n\tconst _handleCertificate = async () => {\r\n\t\tif (!recordId) return;\r\n\t\tif (pdfBlob && certificatePdf) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst _pdfBlob = await Api.GetCertificate(recordId);\r\n\t\tconst _pngBlob = await Api.GetCertificatePng(recordId);\r\n\t\tif (!_pdfBlob || !_pngBlob) return;\r\n\r\n\t\tconst reader = new FileReader();\r\n\t\treader.onloadend = function () {\r\n\t\t\tconst base64data = reader.result;\r\n\t\t\tsetCertificatePdf(base64data);\r\n\t\t};\r\n\r\n\t\treader.readAsDataURL(_pngBlob);\r\n\t\tsetPdfBlob(_pdfBlob);\r\n\t\tsetCertificateModalToggle();\r\n\t\tif (popupBeforeCertificateModal) setPopupBeforeCertificateModalToggle();\r\n\t};\r\n\r\n\t//handle show pdf on pop up\r\n\tconst _handleViewPdf = url => {\r\n\t\tif (!url) return;\r\n\t\tsetPdfToDisplay(url);\r\n\t\tPdfModalToggle();\r\n\t};\r\n\r\n\t//handle pdf download on certificate popup\r\n\tconst _handleDownLoadPdf = () => {\r\n\t\tif (!pdfBlob) return;\r\n\r\n\t\tconst courseName = currentCourse?.courseName || '';\r\n\t\tconst link = document.createElement('a');\r\n\t\tlink.href = URL.createObjectURL(pdfBlob); //create a blobURI pointing to our Blob\r\n\t\tlink.download = `${courseName} Certificate`; // some browser needs the anchor to be in the doc\r\n\t\tlink.click();\r\n\t\tsetTimeout(() => URL.revokeObjectURL(link.href), 1000); // in case the Blob uses a lot of memory\r\n\t};\r\n\r\n\t//handles changing inputs\r\n\tconst _handleChangeInput = (value, key) => {\r\n\t\tconst _userDetails = { ...studentDetails };\r\n\t\t_userDetails[key] = value;\r\n\t\tsetStudentDetails(_userDetails);\r\n\t};\r\n\r\n\t//handles onClick send user details form\r\n\tconst _handleUserDetailsFormSend = async e => {\r\n\t\te?.preventDefault();\r\n\t\tsetFormValidationError(false);\r\n\t\tconst form = new FormData(e.target);\r\n\t\tlet formData = Object.fromEntries(form.entries());\r\n\t\tformData.recordId = currentCourse.recordId;\r\n\t\tfor (const key in formData) {\r\n\t\t\tif (!formData[key]) {\r\n\t\t\t\tsetFormValidationError(true);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t\tformData.firstName = user.fname;\r\n\t\tformData.lastName = user.lname;\r\n\t\tformData.email = user.email;\r\n\t\tformData.whatsApp = Boolean(parseInt(formData.whatsApp));\r\n\r\n\t\tconst res = await Api.SaveMyCourseForm(formData);\r\n\t\tif (!res) return;\r\n\t\tconst userCourses = await Api.GetUserCourses();\r\n\t\tif (!userCourses) return;\r\n\t\tconst releventCourse = userCourses.find(course => course.recordId === parseInt(recordId));\r\n\t\tdispatchCourses({ type: COURSES_ACTIONS.SET_CURRENT_COURSE, payload: releventCourse });\r\n\t\tdispatchCourses({ type: COURSES_ACTIONS.SET_COURSES, payload: userCourses });\r\n\t\tsetUserDetailsFormModalToggle();\r\n\t};\r\n\r\n\t//return relevent JSX element on inProgress status - 1-with meetings, 2-without meetings\r\n\tconst RenderInProgress = () => {\r\n\t\tif (!studentMeetings) return null;\r\n\t\tif (studentMeetings?.length > 0) {\r\n\t\t\treturn (\r\n\t\t\t\t<>\r\n\t\t\t\t\t
    Hi {user.fname}, you can check your schedule here.
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tOr you can download your schedule here \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{screenSize.width >= MOBILE_SIZE && }\r\n\t\t\t\t\t\t{screenSize.width < MOBILE_SIZE && }\r\n\t\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t}\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t
    Thank you for choosing the {currentCourse.courseName} course!
    \r\n\t\t\t\t
    \r\n\t\t\t\t\tPlease contact us in order to set up your 1st ESL lesson!

    Meanwhile, feel free to browse the course materials below.\r\n\t\t\t\t
    \r\n\t\t\t\r\n\t\t);\r\n\t};\r\n\r\n\t//returns JSX by user rate of progress (NEW/NEW_FORM_SENT/INPROGRESS/COMPLETED)\r\n\tconst renderByStatus = useMemo(() => {\r\n\t\t//New after user sends user details form\r\n\t\tif (classesByRateOfProgress === COURSE_STATUS.NEW_FORM_SENT) {\r\n\t\t\treturn (\r\n\t\t\t\t<>\r\n\t\t\t\t\t
    Thank you for choosing the {currentCourse.courseName} course!
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tWe will contact you shortly to coordinate your live sessions with your teacher.

    \r\n\t\t\t\t\t\t

    Meanwhile, feel free to browse the course materials below.\r\n\t\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t}\r\n\r\n\t\t//In Progress\r\n\t\tif (classesByRateOfProgress === COURSE_STATUS.IN_PROGRESS) {\r\n\t\t\treturn (\r\n\t\t\t\t<>\r\n\t\t\t\t\t\r\n\t\t\t\t\t{studentMeetings?.length <= 0 && }\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t}\r\n\r\n\t\t//Completed\r\n\t\tif (classesByRateOfProgress === COURSE_STATUS.COMPLETED) {\r\n\t\t\treturn (\r\n\t\t\t\t<>\r\n\t\t\t\t\t
    Congratulations on successfully completing the {currentCourse.courseName}!
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tYou can click on the button below to view your Galway Academy Certificate of Completion which can also be printed.

    \r\n\t\t\t\t\t\t

    We hope that you enjoyed this online course!

    Please feel free to browse our other course offerings{' '}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\there\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t.\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t}\r\n\r\n\t\t//New\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t
    \r\n\t\t\t\t\tHi {user.fname}, Welcome to your {currentCourse.courseName} course!\r\n\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\tYou have no lessons scheduled yet.

    \r\n\t\t\t\t\tTo start your lessons, please click below:\r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t\t\t{/* */}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\r\n\t\t\tcase ElementType.PARAGRAPH:\r\n\t\t\tcase ElementType.MAIN_TITLE:\r\n\t\t\tcase ElementType.NORMAL_TITLE:\r\n\t\t\tcase ElementType.SUB_TITLE:\r\n\t\t\t\treturn (\r\n\t\t\t\t\t<>\r\n\t\t\t\t\t\t