{"version":3,"file":"application.js","mappings":";0DACgEA,EAAOC,QAG7D,WAAc,aAEvB,IAAIC,EAAuC,oBAAfC,WAA6BA,WAA+B,oBAAXC,OAAyBA,YAA2B,IAAX,EAAAC,EAAyB,EAAAA,EAAyB,oBAATC,KAAuBA,KAAO,CAAC,EAE9L,SAASC,EAAyBC,GACjC,OAAOA,GAAKA,EAAEC,YAAcC,OAAOC,UAAUC,eAAeC,KAAKL,EAAG,WAAaA,EAAW,QAAIA,CACjG,CAEA,SAASM,EAAsBC,GAC7B,IAAIC,EAAID,EAAEE,QACX,GAAgB,mBAALD,EAAiB,CAC3B,IAAIE,EAAI,WACP,OAAOF,EAAEG,MAAMC,KAAMC,UACtB,EACAH,EAAEP,UAAYK,EAAEL,SAChB,MAAOO,EAAI,CAAC,EAWb,OAVCR,OAAOY,eAAeJ,EAAG,aAAc,CAACK,OAAO,IAChDb,OAAOc,KAAKT,GAAGU,SAAQ,SAAUC,GAChC,IAAIC,EAAIjB,OAAOkB,yBAAyBb,EAAGW,GAC3ChB,OAAOY,eAAeJ,EAAGQ,EAAGC,EAAEE,IAAMF,EAAI,CACvCG,YAAY,EACZD,IAAK,WACJ,OAAOd,EAAEW,EACV,GAEF,IACOR,CACR,CAEA,IAAIa,EAAY,CAAC,EAEbC,EAAM,CAAC,EAEPC,EAAS,CAAC,EAEVC,EAAS,CAAC,EAEVC,EAAmB,YAMvB,SAASC,EAAMC,GAEb,OADYA,EAAYC,MAAM,MACjBC,QAAO,SAAUC,EAAOC,GACnC,IAAIC,EAAcC,EAAYF,IAASG,EAAWH,IAASI,EAAWJ,IAASK,EAAUL,IAASM,EAASN,GAM3G,OAJIC,GACFF,EAAMQ,KAAKN,GAGNF,CACT,GAAG,GACL,CACA,IAAIS,EAAW,4IACXC,EAAe,gCAEnB,SAASP,EAAYF,GACnB,IAAIU,EAAQF,EAASG,KAAKX,GAE1B,IAAKU,EACH,OAAO,KAGT,IAAIE,EAAWF,EAAM,IAAqC,IAA/BA,EAAM,GAAGG,QAAQ,UAExCC,EAASJ,EAAM,IAAmC,IAA7BA,EAAM,GAAGG,QAAQ,QAEtCE,EAAWN,EAAaE,KAAKD,EAAM,IAWvC,OATII,GAAsB,MAAZC,IAEZL,EAAM,GAAKK,EAAS,GAEpBL,EAAM,GAAKK,EAAS,GAEpBL,EAAM,GAAKK,EAAS,IAGf,CACLC,KAAOJ,EAAsB,KAAXF,EAAM,GACxBO,WAAYP,EAAM,IAAMhB,EACxBd,UAAWgC,EAAW,CAACF,EAAM,IAAM,GACnCQ,WAAYR,EAAM,IAAMA,EAAM,GAAK,KACnCS,OAAQT,EAAM,IAAMA,EAAM,GAAK,KAEnC,CAEA,IAAIU,EAAU,gHAEd,SAASjB,EAAWH,GAClB,IAAIU,EAAQU,EAAQT,KAAKX,GAEzB,OAAKU,EAIE,CACLM,KAAMN,EAAM,GACZO,WAAYP,EAAM,IAAMhB,EACxBd,UAAW,GACXsC,YAAaR,EAAM,GACnBS,OAAQT,EAAM,IAAMA,EAAM,GAAK,MARxB,IAUX,CAEA,IAAIW,EAAU,kIACVC,EAAc,gDAElB,SAASlB,EAAWJ,GAClB,IAAIU,EAAQW,EAAQV,KAAKX,GAEzB,IAAKU,EACH,OAAO,KAGT,IAAII,EAASJ,EAAM,IAAMA,EAAM,GAAGG,QAAQ,YAAc,EACpDE,EAAWO,EAAYX,KAAKD,EAAM,IAStC,OAPII,GAAsB,MAAZC,IAEZL,EAAM,GAAKK,EAAS,GACpBL,EAAM,GAAKK,EAAS,GACpBL,EAAM,GAAK,MAGN,CACLM,KAAMN,EAAM,GACZO,WAAYP,EAAM,IAAMhB,EACxBd,UAAW8B,EAAM,GAAKA,EAAM,GAAGb,MAAM,KAAO,GAC5CqB,WAAYR,EAAM,IAAMA,EAAM,GAAK,KACnCS,OAAQT,EAAM,IAAMA,EAAM,GAAK,KAEnC,CAEA,IAAIa,EAAmB,+DAEvB,SAASjB,EAASN,GAChB,IAAIU,EAAQa,EAAiBZ,KAAKX,GAElC,OAAKU,EAIE,CACLM,KAAMN,EAAM,GACZO,WAAYP,EAAM,IAAMhB,EACxBd,UAAW,GACXsC,YAAaR,EAAM,GACnBS,OAAQT,EAAM,IAAMA,EAAM,GAAK,MARxB,IAUX,CAEA,IAAIc,EAAS,gGAEb,SAASnB,EAAUL,GACjB,IAAIU,EAAQc,EAAOb,KAAKX,GAExB,OAAKU,EAIE,CACLM,KAAMN,EAAM,GACZO,WAAYP,EAAM,IAAMhB,EACxBd,UAAW,GACXsC,YAAaR,EAAM,GACnBS,OAAQT,EAAM,IAAMA,EAAM,GAAK,MARxB,IAUX,CAEA,IAKIe,EAA0BpD,EALUJ,OAAOyD,OAAO,CACrDC,UAAW,KACXhC,YAKD,SAAWnC,GACV,IAAIoE,EAAmBnE,GAAkBA,EAAemE,kBAAqB3D,OAAO4D,OAAU,SAASC,EAAGC,EAAG9C,EAAG+C,QACjG,IAAPA,IAAkBA,EAAK/C,GAC3B,IAAIgD,EAAOhE,OAAOkB,yBAAyB4C,EAAG9C,GACzCgD,KAAS,QAASA,GAAQF,EAAE/D,WAAaiE,EAAKC,UAAYD,EAAKE,gBAClEF,EAAO,CAAE5C,YAAY,EAAMD,IAAK,WAAa,OAAO2C,EAAE9C,EAAI,IAE5DhB,OAAOY,eAAeiD,EAAGE,EAAIC,EACjC,EAAM,SAASH,EAAGC,EAAG9C,EAAG+C,QACT,IAAPA,IAAkBA,EAAK/C,GAC3B6C,EAAEE,GAAMD,EAAE9C,EACd,GACImD,EAAsB3E,GAAkBA,EAAe2E,qBAAwBnE,OAAO4D,OAAU,SAASC,EAAGO,GAC5GpE,OAAOY,eAAeiD,EAAG,UAAW,CAAEzC,YAAY,EAAMP,MAAOuD,GACnE,EAAK,SAASP,EAAGO,GACbP,EAAW,QAAIO,CACnB,GACIC,EAAgB7E,GAAkBA,EAAe6E,cAAiB,SAAUC,GAC5E,GAAIA,GAAOA,EAAIvE,WAAY,OAAOuE,EAClC,IAAIC,EAAS,CAAC,EACd,GAAW,MAAPD,EAAa,QAAStD,KAAKsD,EAAe,YAANtD,GAAmBhB,OAAOC,UAAUC,eAAeC,KAAKmE,EAAKtD,IAAI2C,EAAgBY,EAAQD,EAAKtD,GAEtI,OADAmD,EAAmBI,EAAQD,GACpBC,CACX,EACIC,EAAahF,GAAkBA,EAAegF,WAAc,SAAUC,EAASC,EAAYC,EAAGC,GAC9F,SAASC,EAAMhE,GAAS,OAAOA,aAAiB8D,EAAI9D,EAAQ,IAAI8D,GAAE,SAAUG,GAAWA,EAAQjE,EAAQ,GAAI,CAC3G,OAAO,IAAK8D,IAAMA,EAAII,WAAU,SAAUD,EAASE,GAC/C,SAASC,EAAUpE,GAAS,IAAMqE,EAAKN,EAAUO,KAAKtE,GAAS,CAAE,MAAOuE,GAAKJ,EAAOI,EAAI,CAAE,CAC1F,SAASC,EAASxE,GAAS,IAAMqE,EAAKN,EAAiB,MAAE/D,GAAS,CAAE,MAAOuE,GAAKJ,EAAOI,EAAI,CAAE,CAC7F,SAASF,EAAKX,GAAUA,EAAOe,KAAOR,EAAQP,EAAO1D,OAASgE,EAAMN,EAAO1D,OAAO0E,KAAKN,EAAWI,EAAW,CAC7GH,GAAMN,EAAYA,EAAUnE,MAAMgE,EAASC,GAAc,KAAKS,OAClE,GACJ,EACIK,EAAehG,GAAkBA,EAAegG,aAAgB,SAAUf,EAASgB,GACnF,IAAsGnF,EAAGoF,EAAGC,EAAGhG,EAA3GiG,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAa,GAAW,EAAPH,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,EAAI,EAAGI,KAAM,GAAIC,IAAK,IAChG,OAAOrG,EAAI,CAAEwF,KAAMc,EAAK,GAAI,MAASA,EAAK,GAAI,OAAUA,EAAK,IAAwB,mBAAXC,SAA0BvG,EAAEuG,OAAOC,UAAY,WAAa,OAAOzF,IAAM,GAAIf,EACvJ,SAASsG,EAAK5F,GAAK,OAAO,SAAU+D,GAAK,OAAOc,EAAK,CAAC7E,EAAG+D,GAAK,CAAG,CACjE,SAASc,EAAKkB,GACV,GAAI9F,EAAG,MAAM,IAAI+F,UAAU,mCAC3B,KAAOT,OACH,GAAItF,EAAI,EAAGoF,IAAMC,EAAY,EAARS,EAAG,GAASV,EAAU,OAAIU,EAAG,GAAKV,EAAS,SAAOC,EAAID,EAAU,SAAMC,EAAExF,KAAKuF,GAAI,GAAKA,EAAEP,SAAWQ,EAAIA,EAAExF,KAAKuF,EAAGU,EAAG,KAAKd,KAAM,OAAOK,EAE3J,OADID,EAAI,EAAGC,IAAGS,EAAK,CAAS,EAARA,EAAG,GAAQT,EAAE9E,QACzBuF,EAAG,IACP,KAAK,EAAG,KAAK,EAAGT,EAAIS,EAAI,MACxB,KAAK,EAAc,OAAXR,EAAEC,QAAgB,CAAEhF,MAAOuF,EAAG,GAAId,MAAM,GAChD,KAAK,EAAGM,EAAEC,QAASH,EAAIU,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKR,EAAEI,IAAIM,MAAOV,EAAEG,KAAKO,MAAO,SACxC,QACI,MAAkBX,GAAZA,EAAIC,EAAEG,MAAYQ,OAAS,GAAKZ,EAAEA,EAAEY,OAAS,KAAkB,IAAVH,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAER,EAAI,EAAG,QAAU,CAC3G,GAAc,IAAVQ,EAAG,MAAcT,GAAMS,EAAG,GAAKT,EAAE,IAAMS,EAAG,GAAKT,EAAE,IAAM,CAAEC,EAAEC,MAAQO,EAAG,GAAI,KAAO,CACrF,GAAc,IAAVA,EAAG,IAAYR,EAAEC,MAAQF,EAAE,GAAI,CAAEC,EAAEC,MAAQF,EAAE,GAAIA,EAAIS,EAAI,KAAO,CACpE,GAAIT,GAAKC,EAAEC,MAAQF,EAAE,GAAI,CAAEC,EAAEC,MAAQF,EAAE,GAAIC,EAAEI,IAAI1D,KAAK8D,GAAK,KAAO,CAC9DT,EAAE,IAAIC,EAAEI,IAAIM,MAChBV,EAAEG,KAAKO,MAAO,SAEtBF,EAAKX,EAAKtF,KAAKsE,EAASmB,EAC5B,CAAE,MAAOR,GAAKgB,EAAK,CAAC,EAAGhB,GAAIM,EAAI,CAAG,CAAE,QAAUpF,EAAIqF,EAAI,CAAG,CACzD,GAAY,EAARS,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAEvF,MAAOuF,EAAG,GAAKA,EAAG,QAAK,EAAQd,MAAM,EAC9E,CACJ,EACAtF,OAAOY,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQiH,gBAAkBjH,EAAQkH,MAAQlH,EAAQmH,cAAgBnH,EAAQoH,UAAYpH,EAAQqH,OAASrH,EAAQsH,mBAAqBtH,EAAQuH,SAAWvH,EAAQwH,WAAaxH,EAAQyH,cAAgBzH,EAAQ0H,WAAa1H,EAAQ2H,OAAS3H,EAAQ4H,SAAW5H,EAAQ6H,aAAe7H,EAAQ8H,uBAAyB9H,EAAQ+H,wBAA0B/H,EAAQgI,sBAAwBhI,EAAQiI,UAAYjI,EAAQkI,wBAA0BlI,EAAQmI,wBAA0BnI,EAAQoI,cAAgBpI,EAAQqI,mBAAqBrI,EAAQsI,cAAgBtI,EAAQuI,YAAcvI,EAAQwI,WAAQ,EAClkB,IAAIC,EAAmB3D,EAAab,GACpC,SAASuE,EAAME,EAAMC,GACjB,IAAI3D,EAAS,CAAC,EACd,QAASvD,KAAKiH,EACV1D,EAAOvD,GAAKiH,EAAKjH,GAErB,QAASA,KAAKkH,EACV3D,EAAOvD,GAAKkH,EAAKlH,GAErB,OAAOuD,CACX,CAEA,SAASuD,EAAYK,EAASC,GAC1B,IAAI7D,EAASwD,EAAMI,EAASC,GAI5B,OAHID,EAAQE,SAAWD,EAAQC,UAC3B9D,EAAO8D,QAAUN,EAAMI,EAAQE,QAASD,EAAQC,UAE7C9D,CACX,CAEA,SAASsD,EAAcS,GACnB,QAAStH,KAAKsH,EACV,GAAItI,OAAOC,UAAUC,eAAeC,KAAKmI,EAAKtH,GAC1C,OAAO,EAGf,OAAO,CACX,CAEA,SAAS4G,EAAmBU,GACxB,MAAmC,mBAAxBtI,OAAOuI,cAGXvI,OAAOuI,aAAaD,EAC/B,CAEA,SAASX,EAAc7F,EAAO0G,EAAoBtB,GAG9C,QAF2B,IAAvBsB,IAAiCA,GAAqB,QAC3C,IAAXtB,IAAqBA,EAASuB,UAC7B3G,EACD,MAAO,GAEX,IACI,IAAI4G,EAAYV,EACXtG,MAAMI,GACN6G,KAAI,SAAU5G,GACf,MAAO,CACHgB,KAAMhB,EAAKgB,KACX6F,OAAQ7G,EAAKiB,WACb6F,OAAQ9G,EAAKkB,WACbC,OAAQnB,EAAKmB,OAErB,IAIA,OAHIsF,GACAE,EAAUI,OAAO,EAAGrB,EAAwBiB,IAEzCA,CACX,OACOK,GAEH,OADA7B,EAAO8B,MAAMD,GACN,EACX,CACJ,CAEA,SAASE,EAAwBC,GAC7B,IAAIC,GAAY,EACZC,GAAc,EAOlB,OANIF,EAAMnG,OACNoG,EAAYD,EAAMnG,KAAKsG,cAAczG,QAAQ,oBAAsB,GAEnEsG,EAAMN,SACNQ,EAAcF,EAAMN,OAAOS,cAAczG,QAAQ,oBAAsB,GAEpEuG,GAAaC,CACxB,CAmBA,SAAS3B,EAAwBiB,GAE7B,IADA,IAAIY,EAAQ,EACHC,EAAI,EAAGA,EAAIb,EAAUnC,OAAQgD,IAAK,CACvC,IAAIL,EAAQR,EAAUa,GACtB,IAAIN,EAAwBC,GAA5B,CAIA,IAAKA,EAAMnG,MAAuB,gBAAfmG,EAAMnG,KAAwB,CAC7C,IAAIyG,EAAYd,EAAUa,EAAI,GAC9B,GAAIC,GAAaP,EAAwBO,GAAY,CACjDF,IACA,QACJ,CACJ,CACA,KARA,CAFIA,GAWR,CACA,OAAOA,GAAS/J,EAAQmI,uBAC5B,CAEA,SAASF,EAAUiC,EAAQvC,GACvB,GAAIuC,EAAOC,MAAO,CAId,IAHA,IAAIC,EAAS,GACTD,EAAQD,EAELE,EAAOpD,OAAS,IAAMmD,EAAQA,EAAMA,QACvCC,EAAOrH,KAAK,CACRsH,MAAOF,EAAMG,KACbC,QAASJ,EAAMI,QACfpB,UAAiC,iBAAfgB,EAAM5H,MAAoB6F,EAAc+B,EAAM5H,OAAO,EAAOoF,GAAU,OAGhG,OAAOyC,CACX,CACA,MAAO,EACX,CAEA,SAASpC,EAAsBmB,EAAWqB,GACtC,OAAOvF,EAAU9D,UAAM,OAAQ,GAAQ,WACnC,IAAI6D,EAAQyF,EAAOC,EAAOC,EAC1B,OAAO1E,EAAY9E,MAAM,SAAUyJ,GAC/B,OAAQA,EAAGtE,OACP,KAAK,EAED,GADAtB,EAAS,IACJwF,IAAyBrB,IAAcA,EAAUnC,OAClD,MAAO,CAAC,EAAchC,GAE1ByF,EAAQ,EACRG,EAAGtE,MAAQ,EACf,KAAK,EACD,OAAK6C,EAAUnC,QACf0D,EAAQvB,EAAUI,OAAO,GAAGkB,GACrB,CAAC,EAAaD,EAAqBE,EAAMlH,QAFlB,CAAC,EAAa,GAGhD,KAAK,EAID,OAHAmH,EAAcC,EAAGrE,OACjBvB,EAAOyF,GAASI,EAAqBF,EAAaD,EAAMpB,QACxDmB,IACO,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,EAAczF,GAEtC,GACJ,GACJ,CAEA,SAAS+C,EAAwBmC,EAAQY,GAGrC,IAFA,IAAIC,EAAU,GACV/F,GAAS,EACJgF,EAAI,EAAGgB,EAAMF,EAAS9D,OAAQgD,EAAIgB,EAAKhB,IAAK,CACjD,IACIiB,GAAgBC,EADNJ,EAASd,IACKE,IACN,IAAlBe,IACAjG,GAAS,GAEb+F,EAAQhI,KAAKkI,EACjB,CACA,MAAO,CACHF,UACA/F,SAER,CAEA,SAAS8C,EAAuBoC,EAAQY,EAAUK,GAC1CjB,GAAUA,EAAOkB,aACjBlB,EAAOkB,YAAYD,EAAOjB,GAE9B,QAASF,EAAI,EAAGgB,EAAMF,EAAS9D,OAAQgD,EAAIgB,EAAKhB,IAC5Cc,EAASd,GAAGmB,EAAOjB,GAEvB,OAAO,CACX,CAGA,SAASrC,EAAakB,GAClB,GAAqB,iBAATA,GAA6B,OAARA,EAC7B,MAAO,CAAC,EAEZ,IAAI/D,EAAS,CAAC,EACd,QAASvD,KAAKsH,EACV/D,EAAOvD,GAAKsH,EAAItH,GAEpB,OAAOuD,CACX,CAEA,SAAS4C,EAASmB,EAAKsC,QACF,IAAbA,IAAuBA,EAAW,GACtC,IAAIC,EAAc,GAClB,SAASC,EAAKxC,GACV,IAAKA,GAAwB,iBAATA,EAChB,OAAO,EAEX,QAASiB,EAAI,EAAGA,EAAIsB,EAAYtE,OAAQgD,IAEpC,GADYsB,EAAYtB,KACVjB,EACV,OAAO,EAIf,OADAuC,EAAYvI,KAAKgG,IACV,CACX,CACA,SAASyC,EAAazC,GAClB,IAAI0C,SAAmB1C,EAEvB,MAAI,WAAW2C,KAAKD,GAEI,WAAb1C,EAAIuB,MAGX,SAASoB,KAAKD,IAGN,OAAR1C,IAIe,iBAARA,QAAkD,IAAvBA,EAAIpI,eAI9C,CACA,SAASgL,EAAU5C,EAAK6C,GAEpB,QADc,IAAVA,IAAoBA,EAAQ,GAC5BA,GAASP,EACT,MAAO,UAGX,IAAKG,EAAazC,GACd,OAAOtI,OAAOC,UAAUmL,SAASjL,KAAKmI,GAG1C,GAAIwC,EAAKxC,GACL,MAAO,cAGX,GAAI+C,MAAMC,QAAQhD,GACd,OAAOA,EAAIK,KAAI,SAAU9E,GAAK,OAAO0H,EAAc1H,EAAGsH,EAAQ,EAAI,IAGtE,GAAqB,iBAAT7C,EAAmB,CAC3B,IAAIkD,EAAM,CAAC,EACX,QAASxK,KAAKsH,EAAK,CACf,IAAIlE,EAAIkE,EAAItH,GACRhB,OAAOC,UAAUC,eAAeC,KAAKmI,EAAKtH,IAAY,MAALA,GAAoB,MAALoD,IAChEoH,EAAIxK,GAAKuK,EAAcnH,EAAG+G,EAAQ,GAE1C,CACA,OAAOK,CACX,CAEA,OAAOlD,CACX,CACA,SAASiD,EAAcjD,EAAK6C,QACV,IAAVA,IAAoBA,EAAQ,GAChC,IACI,OAAOD,EAAU5C,EAAK6C,EAC1B,OACO/F,GACH,MAAO,WAAWqG,OAAOrG,EAC7B,CACJ,CACA,OAAOmG,EAAcjD,EACzB,CAEA,SAASpB,EAAO3F,GACZ,IAAImK,EAAM,SAAU9C,GAChB,OAAO,WAGH,IAFA,IAAIuB,EACAwB,EAAO,GACFC,EAAK,EAAGA,EAAKjL,UAAU4F,OAAQqF,IACpCD,EAAKC,GAAMjL,UAAUiL,GAEzB,GAAe,UAAXhD,EAAoB,CACpB,IAAKrH,EAAOsK,OAAO7C,MACf,OAIJJ,EAAS,KACb,CACA+C,EAAKG,QAAQ,kBACZ3B,EAAK5I,EAAOsK,OAAO3E,QAAQ0B,GAAQnI,MAAM0J,EAAIwB,EAClD,CACJ,EACA,MAAO,CACHD,IAAKA,EAAI,OACTK,KAAML,EAAI,QACV1C,MAAO0C,EAAI,SACXM,KAAMN,EAAI,QACVhB,MAAOgB,EAAI,SAEnB,CAMA,SAASzE,EAAWgF,GAChB,IAAIxC,EACJ,GAAKwC,EAEL,GACSjF,EAAciF,GAAQ,CAC3B,IAAI7G,EAAI6G,EACRxC,EAAS1B,EAAMkE,EAAO,CAAEpC,KAAMzE,EAAEyE,KAAMC,QAAS1E,EAAE0E,QAAShI,MAAOsD,EAAEtD,MAAO4H,MAAOtE,EAAEsE,OACvF,MAEID,EADsB,iBAAVwC,EACH7E,EAAa6E,GAIb,CAAEnC,QADHoC,OAAOD,SAVfxC,EAAS,CAAC,EAad,OAAOA,CACX,CAEA,SAASzC,EAAciF,GACnB,OAAOA,aAAiBE,OACyB,mBAA1CnM,OAAOC,UAAUmL,SAASjL,KAAK8L,EAC1C,CASA,SAASlF,EAAWqF,EAAQvC,EAAMwC,GAC9B,GAAKD,GAAWvC,GAASwC,GAAiBxC,KAAQuC,EAGlD,IAEI,IADA,IAAIE,EAAWF,EAAOvC,GACfyC,GAAYA,EAASC,eACxBD,EAAWA,EAASC,cAExBH,EAAOvC,GAAQwC,EAAYC,GAC3BF,EAAOvC,GAAM0C,cAAgBD,CACjC,OACOE,GAMP,CACJ,CAEA,SAAS1F,EAAS2F,EAAMC,GACpB,IAAI5F,EAAW2F,EAAKE,OAAOC,QAAQ,MAAO,IAE1C,OADAF,EAAOA,EAAKC,OAAOC,QAAQ,aAAc,IAClC,GAAGnB,OAAO3E,EAAU,KAAK2E,OAAOiB,EAC3C,CAEA,SAAS7F,IACL,IACI,MAAM,IAAIsF,MAAM,GACpB,OACO/G,GACH,GAAIA,EAAEtD,MACF,OAAOsD,EAAEtD,KAEjB,CAIA,IAHA,IAAI+K,EAAe,GACf/K,EAAQ,GACRgL,EAAOnM,UAAUoM,OACdD,GAAQhL,EAAMyE,OAASsG,GAAc,CACpC,gCAAgC5B,KAAK6B,EAAK1B,YAC1CtJ,EAAMQ,KAAK0K,OAAOC,IAAM,eAGxBnL,EAAMQ,KAAK,eAEf,IACIwK,EAAOA,EAAKI,MAChB,OACO9H,GACH,KACJ,CACJ,CACA,OAAOtD,EAAMqL,KAAK,KACtB,CAEA,SAASvG,EAAO0B,EAAK8E,GACjB,GAAKC,EAAG,SAAU/E,GAAlB,CAGK+E,EAAG,QAASD,KACbA,EAAU,IAEd,IAAItC,EAAO,GA+BX,OAAOlE,EAAO0B,EAnCd,CAKA,SAAS1B,EAAO0B,GACZ,IAAItH,EAAGsM,EACP,GAAID,EAAG,SAAU/E,IAAQ+E,EAAG,QAAS/E,GAAM,CACvC,IAA2B,IAAvBwC,EAAKlI,QAAQ0F,GACb,MAAO,4BAEXwC,EAAKxI,KAAKgG,EACd,CACA,GAAI+E,EAAG,SAAU/E,GAAM,CAEnB,IAAKtH,KADLsM,EAAS,CAAC,EACAhF,EACFiF,EAAYvM,EAAGoM,GACfE,EAAOtM,GAAK,aAGZsM,EAAOtM,GAAK4F,EAAO0B,EAAItH,IAG/B,OAAOsM,CACX,CACA,OAAID,EAAG,QAAS/E,GACLA,EAAIK,KAAI,SAAUvE,GACrB,OAAOwC,EAAOxC,EAClB,IAEAiJ,EAAG,WAAY/E,GACR,SAEJA,CACX,CAEJ,CAEA,SAASiF,EAAYC,EAAKJ,GACtB,QAAS7D,EAAI,EAAGA,EAAI6D,EAAQ7G,OAAQgD,IAChC,IAA6D,IAAzDiE,EAAInE,cAAczG,QAAQwK,EAAQ7D,GAAGF,eACrC,OAAO,EAGf,OAAO,CACX,CACA,SAASgE,EAAGI,EAAMnF,GACd,IAAIoF,EAAQ1N,OAAOC,UAAUmL,SAASjL,KAAKmI,GAAKqF,MAAM,GAAI,GAC1D,OAAOrF,SAAqCoF,IAAUD,CAC1D,CACA,SAAS9G,EAAUiH,EAAKR,GACpB,IAAKA,EACD,OAAOQ,EAEX,GAAmB,iBAARA,EACP,OAAOA,EAEX,IAAIC,EAAQD,EAAIhM,MAAM,KAAM,GAAG,GAC/B,IAAKiM,EACD,OAAOD,EAEX,IAAIrJ,EAASqJ,EAOb,OANAC,EAAMjM,MAAM,UAAUb,SAAQ,SAAU+M,GACpC,IAAI3D,EAAK2D,EAAKlM,MAAM,IAAK,GAAI4L,EAAMrD,EAAG,GAAItJ,EAAQsJ,EAAG,GACjDoD,EAAYC,EAAKJ,KACjB7I,EAASA,EAAOqI,QAAQ,GAAGnB,OAAO+B,EAAK,KAAK/B,OAAO5K,GAAQ,GAAG4K,OAAO+B,EAAK,gBAElF,IACOjJ,CACX,CAEA,SAASmC,EAAcqH,EAAMC,QACV,IAAXA,IAAqBA,EAAS,IAClC,IAAIC,EAAgB,CAAC,EAKrB,OAJAjO,OAAOc,KAAKiN,GAAMhN,SAAQ,SAAUyM,GAChC,IAAIU,EAAeF,EAASR,EAAIZ,QAAQ,MAAO,KAAKuB,cACpDF,EAAcC,GAAgBH,EAAKP,EACvC,IACOS,CACX,CAEA,SAASxH,EAAM6B,GACX,OAAO8F,KAAK1M,MAAM0M,KAAKC,UAAU/F,GACrC,CAEA,SAAS8B,EAAqBkE,EAAUrL,EAAYsL,GAEhD,QADqB,IAAjBA,IAA2BA,EAAe,IACzCD,EACD,OAAO,KAEX,IAAIE,EAAQF,EAAS1M,MAAM,MAE3B4M,EAAM1C,QAAQ,IAId,IAHA,IACI2C,EAAMxL,EAAasL,EACnBhK,EAAS,CAAC,EACLgF,EAHGtG,EAAasL,EAGLhF,GAAKkF,EAAKlF,IAAK,CAC/B,IAAIxH,EAAOyM,EAAMjF,GACG,iBAATxH,IACPwC,EAAOgF,GAAKxH,EAEpB,CACA,OAAOwC,CACX,CACA,SAASiC,EAAgBqF,GACrB,YAAwB,IAAjBA,EAAO6C,KAClB,CA7eAnP,EAAQwI,MAAQA,EAQhBxI,EAAQuI,YAAcA,EAStBvI,EAAQsI,cAAgBA,EAOxBtI,EAAQqI,mBAAqBA,EA4B7BrI,EAAQoI,cAAgBA,EAYxBpI,EAAQmI,wBAA0B,EAqClCnI,EAAQkI,wBAA0BA,EAiBlClI,EAAQiI,UAAYA,EA2BpBjI,EAAQgI,sBAAwBA,EAiBhChI,EAAQ+H,wBAA0BA,EAUlC/H,EAAQ8H,uBAAyBA,EAYjC9H,EAAQ6H,aAAeA,EA+EvB7H,EAAQ4H,SAAWA,EA6BnB5H,EAAQ2H,OAASA,EAuBjB3H,EAAQ0H,WAAaA,EAKrB1H,EAAQyH,cAAgBA,EA4BxBzH,EAAQwH,WAAaA,EAMrBxH,EAAQuH,SAAWA,EA6BnBvH,EAAQsH,mBAAqBA,EAyC7BtH,EAAQqH,OAASA,EAiCjBrH,EAAQoH,UAAYA,EAUpBpH,EAAQmH,cAAgBA,EAIxBnH,EAAQkH,MAAQA,EAuBhBlH,EAAQiH,gBAAkBA,CAE1B,CAzjBD,CAyjBGhF,GAEH,IAAImN,EAAQ,CAAC,EAEb3O,OAAOY,eAAe+N,EAAO,aAAc,CAAE9N,OAAO,IACpD8N,EAAMC,iBAAc,EACpB,IAAIC,EAAWrN,EACXoN,EAA6B,WAC7B,SAASA,EAAYE,EAAUC,GAC3BrO,KAAKoO,SAAWA,EAChBpO,KAAKqO,iBAAmBA,CAC5B,CA2BA,OA1BAH,EAAYhL,OAAS,SAAUkL,EAAUC,GACrC,OAAO,IAAIH,EAAYE,EAAUC,EACrC,EACAH,EAAY3O,UAAU+O,UAAY,WAC9B,OAAO,CACX,EACAJ,EAAY3O,UAAUgP,YAAc,SAAUzB,GAC1C,IAAI3M,EAAQ2M,EAAM9M,KAAKoO,SAAStB,GAAO9M,KAAKoO,SAC5C,OAAOV,KAAK1M,MAAM0M,KAAKC,UAAUxN,GACrC,EACA+N,EAAY3O,UAAUiP,WAAa,SAAU7G,GACzC3H,KAAKoO,SAASzG,SAAU,EAAIwG,EAAS9G,OAAOrH,KAAKoO,SAASzG,QAASA,GAAW,CAAC,EACnF,EACAuG,EAAY3O,UAAUkP,cAAgB,SAAUC,GACxC1O,KAAKoO,SAASO,YAAY9I,QAAU7F,KAAKqO,kBACzCrO,KAAKoO,SAASO,YAAY/F,QAE9B5I,KAAKoO,SAASO,YAAY/M,KAAK8M,EACnC,EACAR,EAAY3O,UAAUqP,MAAQ,WAC1B5O,KAAKoO,SAASzG,QAAU,CAAC,EACzB3H,KAAKoO,SAASO,YAAc,EAChC,EACAT,EAAY3O,UAAUsP,IAAM,SAAUC,GAClC,OAAOA,GACX,EACOZ,CACX,CAhCkB,GAiClBD,EAAMC,YAAcA,EAEpB,IAAIa,EAAYjQ,GAAkBA,EAAeiQ,UAAa,WAS1D,OARAA,EAAWzP,OAAO0P,QAAU,SAAS/J,GACjC,QAASgK,EAAGpG,EAAI,EAAGlJ,EAAIM,UAAU4F,OAAQgD,EAAIlJ,EAAGkJ,IAE5C,QAASqG,KADTD,EAAIhP,UAAU4I,GACOvJ,OAAOC,UAAUC,eAAeC,KAAKwP,EAAGC,KACzDjK,EAAEiK,GAAKD,EAAEC,IAEjB,OAAOjK,CACX,EACO8J,EAAShP,MAAMC,KAAMC,UAChC,EACIkP,EAAerQ,GAAkBA,EAAegF,WAAc,SAAUC,EAASC,EAAYC,EAAGC,GAChG,SAASC,EAAMhE,GAAS,OAAOA,aAAiB8D,EAAI9D,EAAQ,IAAI8D,GAAE,SAAUG,GAAWA,EAAQjE,EAAQ,GAAI,CAC3G,OAAO,IAAK8D,IAAMA,EAAII,WAAU,SAAUD,EAASE,GAC/C,SAASC,EAAUpE,GAAS,IAAMqE,EAAKN,EAAUO,KAAKtE,GAAS,CAAE,MAAOuE,GAAKJ,EAAOI,EAAI,CAAE,CAC1F,SAASC,EAASxE,GAAS,IAAMqE,EAAKN,EAAiB,MAAE/D,GAAS,CAAE,MAAOuE,GAAKJ,EAAOI,EAAI,CAAE,CAC7F,SAASF,EAAKX,GAAUA,EAAOe,KAAOR,EAAQP,EAAO1D,OAASgE,EAAMN,EAAO1D,OAAO0E,KAAKN,EAAWI,EAAW,CAC7GH,GAAMN,EAAYA,EAAUnE,MAAMgE,EAASC,GAAc,KAAKS,OAClE,GACJ,EACI2K,EAAiBtQ,GAAkBA,EAAegG,aAAgB,SAAUf,EAASgB,GACrF,IAAsGnF,EAAGoF,EAAGC,EAAGhG,EAA3GiG,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAa,GAAW,EAAPH,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,EAAI,EAAGI,KAAM,GAAIC,IAAK,IAChG,OAAOrG,EAAI,CAAEwF,KAAMc,EAAK,GAAI,MAASA,EAAK,GAAI,OAAUA,EAAK,IAAwB,mBAAXC,SAA0BvG,EAAEuG,OAAOC,UAAY,WAAa,OAAOzF,IAAM,GAAIf,EACvJ,SAASsG,EAAK5F,GAAK,OAAO,SAAU+D,GAAK,OAAOc,EAAK,CAAC7E,EAAG+D,GAAK,CAAG,CACjE,SAASc,EAAKkB,GACV,GAAI9F,EAAG,MAAM,IAAI+F,UAAU,mCAC3B,KAAOT,OACH,GAAItF,EAAI,EAAGoF,IAAMC,EAAY,EAARS,EAAG,GAASV,EAAU,OAAIU,EAAG,GAAKV,EAAS,SAAOC,EAAID,EAAU,SAAMC,EAAExF,KAAKuF,GAAI,GAAKA,EAAEP,SAAWQ,EAAIA,EAAExF,KAAKuF,EAAGU,EAAG,KAAKd,KAAM,OAAOK,EAE3J,OADID,EAAI,EAAGC,IAAGS,EAAK,CAAS,EAARA,EAAG,GAAQT,EAAE9E,QACzBuF,EAAG,IACP,KAAK,EAAG,KAAK,EAAGT,EAAIS,EAAI,MACxB,KAAK,EAAc,OAAXR,EAAEC,QAAgB,CAAEhF,MAAOuF,EAAG,GAAId,MAAM,GAChD,KAAK,EAAGM,EAAEC,QAASH,EAAIU,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKR,EAAEI,IAAIM,MAAOV,EAAEG,KAAKO,MAAO,SACxC,QACI,MAAkBX,GAAZA,EAAIC,EAAEG,MAAYQ,OAAS,GAAKZ,EAAEA,EAAEY,OAAS,KAAkB,IAAVH,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAER,EAAI,EAAG,QAAU,CAC3G,GAAc,IAAVQ,EAAG,MAAcT,GAAMS,EAAG,GAAKT,EAAE,IAAMS,EAAG,GAAKT,EAAE,IAAM,CAAEC,EAAEC,MAAQO,EAAG,GAAI,KAAO,CACrF,GAAc,IAAVA,EAAG,IAAYR,EAAEC,MAAQF,EAAE,GAAI,CAAEC,EAAEC,MAAQF,EAAE,GAAIA,EAAIS,EAAI,KAAO,CACpE,GAAIT,GAAKC,EAAEC,MAAQF,EAAE,GAAI,CAAEC,EAAEC,MAAQF,EAAE,GAAIC,EAAEI,IAAI1D,KAAK8D,GAAK,KAAO,CAC9DT,EAAE,IAAIC,EAAEI,IAAIM,MAChBV,EAAEG,KAAKO,MAAO,SAEtBF,EAAKX,EAAKtF,KAAKsE,EAASmB,EAC5B,CAAE,MAAOR,GAAKgB,EAAK,CAAC,EAAGhB,GAAIM,EAAI,CAAG,CAAE,QAAUpF,EAAIqF,EAAI,CAAG,CACzD,GAAY,EAARS,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAEvF,MAAOuF,EAAG,GAAKA,EAAG,QAAK,EAAQd,MAAM,EAC9E,CACJ,EACAtF,OAAOY,eAAeW,EAAQ,aAAc,CAAEV,OAAO,IACrDU,EAAOwO,YAAS,EAChB,IAAIC,EAAWxO,EACXyO,EAAUtB,EAEVuB,EAAgB,QAEhBC,EAAY,KACZJ,EAAwB,WACxB,SAASA,EAAOK,EAAMC,QACL,IAATD,IAAmBA,EAAO,CAAC,GAC/B1P,KAAK4P,iBAAkB,EACvB5P,KAAK6P,QAAU,KACf7P,KAAK8P,uBAAyB,GAC9B9P,KAAK+P,sBAAwB,GAC7B/P,KAAKgQ,WAAa,CACd7G,KAAM,uBACN+D,IAAK,6EACL+C,QAAS,SAEbjQ,KAAKmL,OAAS4D,EAAS,CAAEmB,OAAQ,KAAM9J,SAAU,6BAA8B+J,YAAa,KAAMC,SAAU,KAAMC,YAAa,KAAMC,UAAW,KAAMC,OAAQ,KAAMC,SAAU,KAAMC,WAAY,KAAMC,oBAAoB,EAAMC,eAAgB,GAAIC,eAAgB,EAAGpK,OAAQuB,QAAS8I,wBAAyB,CAAC,MAAO,cAAe,QAASvI,OAAO,EAAOwI,KAAM,KAAMC,gBAAgB,EAAMC,0BAA0B,EAAMC,cAAe,WAAc,OAAO,CAAM,EAAGvE,QAAS,CAAC,aAAc,YAAawE,UAAW,IAAMxB,GACpgB1P,KAAKmR,cACLnR,KAAKoR,YAAczB,EACnB3P,KAAKwG,QAAS,EAAI8I,EAAS9I,QAAQxG,KACvC,CAyVA,OAxVAqP,EAAO9P,UAAU8R,WAAa,WAC1B,OAAOrR,KAAKgQ,WAAWC,OAC3B,EACAZ,EAAO9P,UAAU+R,YAAc,WAC3B,OAAOtR,KAAKgQ,UAChB,EAQAX,EAAO9P,UAAUgS,YAAc,SAAUC,GACrCxR,KAAKgQ,WAAawB,CACtB,EACAnC,EAAO9P,UAAUkS,UAAY,SAAU/B,GAEnC,QAASpP,UADI,IAAToP,IAAmBA,EAAO,CAAC,GACjBA,EACV1P,KAAKmL,OAAO7K,GAAKoP,EAAKpP,GAG1B,OADAN,KAAK0R,cACE1R,IACX,EACAqP,EAAO9P,UAAUmS,YAAc,WAC3B,IAAIC,EAAQ3R,MACQA,KAAK4P,gBACnB5P,KAAKmL,OAAO+F,UAAUhL,QAAO,SAAU0L,GAAU,OAAOA,EAAOC,uBAAyB,IACxF7R,KAAKmL,OAAO+F,WACJ7Q,SAAQ,SAAUuR,GAAU,OAAOA,EAAOE,KAAKH,EAAQ,IACrE3R,KAAK4P,iBAAkB,CAC3B,EACAP,EAAO9P,UAAU4R,YAAc,WAC3BnR,KAAK6P,QAAU,IAAIN,EAAQrB,YAAY,CAAEvG,QAAS,CAAC,EAAGgH,YAAa,IAAM3O,KAAKmL,OAAOwF,eACzF,EACAtB,EAAO9P,UAAUwS,aAAe,SAAUhI,GAEtC,OADA/J,KAAK8P,uBAAuBlO,KAAKmI,GAC1B/J,IACX,EACAqP,EAAO9P,UAAU0K,YAAc,SAAUF,GAErC,OADA/J,KAAK+P,sBAAsBnO,KAAKmI,GACzB/J,IACX,EACAqP,EAAO9P,UAAUiP,WAAa,SAAU7G,GAIpC,MAHuB,iBAAZA,GAAmC,MAAXA,GAC/B3H,KAAK6P,QAAQrB,WAAW7G,GAErB3H,IACX,EACAqP,EAAO9P,UAAUyS,aAAe,SAAUrK,GAMtC,OALA3H,KAAKwG,OAAO8E,KAAK,oHACjBtL,KAAK6P,QAAQjB,QACU,iBAAZjH,GAAoC,OAAZA,GAC/B3H,KAAK6P,QAAQrB,WAAW7G,GAErB3H,IACX,EACAqP,EAAO9P,UAAUqP,MAAQ,WAErB,OADA5O,KAAK6P,QAAQjB,QACN5O,IACX,EACAqP,EAAO9P,UAAU0S,OAAS,SAAUC,EAAY/I,EAAMgJ,GAClD,IAAIR,EAAQ3R,UACC,IAATmJ,IAAmBA,OAAO,QAChB,IAAVgJ,IAAoBA,OAAQ,GAChC,IAAIpJ,EAAS/I,KAAKuG,WAAW2L,EAAY/I,EAAMgJ,GAG3CC,EAAiBrJ,GAAUA,EAAOf,UAAYe,EAAOf,UAAUC,KAAI,SAAUsB,GAAS,SAAW+F,EAAS5I,cAAc6C,EAAQ,IAAK,KACrI8I,EAAsBrS,KAAKsS,mBAAmBvJ,GAClD,OAAIsJ,aAA+B5G,QAC/B,EAAI6D,EAAS3I,wBAAwBoC,EAAQ/I,KAAK+P,sBAAuBsC,IAClE,GAEPA,aAA+BhO,SAC/BgO,EAAoBxN,MAAK,SAAUhB,GAC/B,OAAIA,aAAkB4H,QAClB,EAAI6D,EAAS3I,wBAAwBoC,EAAQ4I,EAAM5B,sBAAuBlM,IACnE,GAEJ8N,EAAMY,OAAOxJ,EAAQqJ,EAChC,KACO,IAEXpS,KAAKuS,OAAOxJ,EAAQqJ,GAAgBI,OAAM,SAAUC,GAAQ,KACrD,EACX,EAOApD,EAAO9P,UAAUmT,YAAc,SAAUR,EAAY/I,EAAMgJ,GACvD,IAAIR,EAAQ3R,KAGZ,YAFa,IAATmJ,IAAmBA,OAAO,QAChB,IAAVgJ,IAAoBA,OAAQ,GACzB,IAAI9N,SAAQ,SAAUD,EAASE,GACX,IAAUqO,EACzBC,EADyBD,EAY7BT,EAAWjI,YACQiI,EAEd/I,GAAQA,EAAKc,YACCd,EAEdgJ,GAASA,EAAMlI,YACDkI,EAEdhJ,GAAwB,iBAATA,EACDA,EAEdgJ,IAIchJ,EAAO,CAAC,GA3BvByJ,EAAsBD,EAAc1I,YACxC0I,EAAc1I,YAAc,SAAU5B,GAElC,GADAuK,SAA0EA,EAAoBnT,KAAKkS,EAAOtJ,GACtGA,EACA,OAAO/D,EAAO+D,GAElBjE,GACJ,EAuBJuN,EAAMM,OAAOC,EAAY/I,EAAMgJ,EACnC,GACJ,EACA9C,EAAO9P,UAAUgH,WAAa,SAAU2L,EAAY/I,EAAMgJ,QACzC,IAAThJ,IAAmBA,OAAO,QAChB,IAAVgJ,IAAoBA,OAAQ,GAChC,IAAIpJ,GAAS,EAAIuG,EAAS/I,YAAY2L,GAWtC,GAVI/I,GAA0B,iBAATA,IAEjBA,EAAO,CAAEA,KADDqC,OAAOrC,KAGfA,IACAJ,GAAA,EAAauG,EAASlI,aAAa2B,EAAQI,IAE1B,iBAAVgJ,GAAgC,OAAVA,IAC7BpJ,GAAA,EAAauG,EAASlI,aAAa2B,EAAQoJ,KAE/C,EAAQ7C,EAASnI,eAAe4B,GAC5B,OAAO,KAEX,IAAIpB,EAAU3H,KAAK6P,QAAQtB,YAAY,WACnCsE,EAAa7S,KAAK8S,gBAAgB/J,EAAO+H,MACzCiC,EAAc/S,KAAK8S,gBAAgBnL,EAAc,MACjDqL,EAAahT,KAAK8S,gBAAgB9S,KAAKmL,OAAO2F,MAE9CA,EAAO+B,EAAW9H,OAAOgI,GAAahI,OAAOiI,GAC7CC,EAAanC,EAAK5K,QAAO,SAAUgN,EAAM5J,GAAS,OAAOwH,EAAK5O,QAAQgR,KAAU5J,CAAO,IAsB3F,OArBAP,GAAA,EAAauG,EAASjI,OAAO0B,EAAQ,CACjCI,KAAMJ,EAAOI,MAAQ,QACrBxB,SAAS,EAAI2H,EAASjI,OAAOM,EAASoB,EAAOpB,SAC7C0I,YAAatH,EAAOsH,aAAerQ,KAAKmL,OAAOkF,YAC/CF,YAAapH,EAAOoH,aAAenQ,KAAKmL,OAAOgF,YAC/CG,UAAWvH,EAAOuH,WAAatQ,KAAKmL,OAAOmF,UAC3CC,OAAQxH,EAAOwH,QAAUvQ,KAAKmL,OAAOoF,OACrCC,SAAUzH,EAAOyH,UAAYxQ,KAAKmL,OAAOqF,SACzCM,KAAMmC,IAILtI,MAAMC,QAAQ7B,EAAOf,YAAee,EAAOf,UAAUnC,SAC1B,iBAAjBkD,EAAO3H,OAAuB2H,EAAO3H,MAAM6K,OAKlDlD,EAAOf,WAAY,EAAIsH,EAASrI,eAAe8B,EAAO3H,OAAO,EAAOpB,KAAKwG,SAJzEuC,EAAO3H,OAAQ,EAAIkO,EAASnJ,sBAC5B4C,EAAOf,WAAY,EAAIsH,EAASrI,eAAe8B,EAAO3H,OAAO,EAAMpB,KAAKwG,UAMzEuC,CACX,EACAsG,EAAO9P,UAAUkP,cAAgB,SAAUrF,EAASsG,GAChD,GAAK1P,KAAKmL,OAAOuF,mBAAjB,CAGAhB,EAAOA,GAAQ,CAAC,EAChB,IAAIyD,GAAW,EAAI7D,EAAS5I,cAAcgJ,EAAKyD,UAC3CC,EAAW1D,EAAK0D,UAAY,SAC5BC,GAAY,IAAIC,MAAOC,cAO3B,OANAvT,KAAK6P,QAAQpB,cAAc,CACvB2E,WACAhK,UACA+J,WACAE,cAEGrT,IAXP,CAYJ,EACAqP,EAAO9P,UAAUiU,iBAAmB,WAChC,OAAOxT,KAAK6P,QAAQtB,YAAY,eAAetB,OACnD,EACAoC,EAAO9P,UAAUkU,aAAe,WAC5B,OAAOzT,KAAK6P,QAAQtB,YAAY,UACpC,EACAc,EAAO9P,UAAUmU,kBAAoB,WACjC,OAA+B,IAA3B1T,KAAKmL,OAAOsF,YAGRzQ,KAAKmL,OAAOgF,aAAenQ,KAAKmL,OAAO0F,wBAAwB8C,SAAS3T,KAAKmL,OAAOgF,YAChG,EACAd,EAAO9P,UAAUqU,eAAiB,SAAU7K,GACxC,IAAI8K,GAAU,EAAIvE,EAASpJ,QAAQ6C,EAAO8K,QAAS7T,KAAKmL,OAAOuB,UAAY,CAAC,EACxEoH,GAAU,EAAIxE,EAASpJ,QAAQ6I,EAASA,EAAS,CAAC,EAAGhG,EAAO+K,UAAU,EAAIxE,EAAStJ,eAAe6N,EAAS,UAAW7T,KAAKmL,OAAOuB,SACtI,MAAO,CACH8E,SAAUxR,KAAKgQ,WACfrB,YAAa,CACToF,UAAW/T,KAAKmL,OAAOuF,mBACvBsD,MAAOjL,EAAOkL,eAAiB,IAEnCjK,MAAO,CACHd,MAAOH,EAAOI,KACdC,QAASL,EAAOK,QAChBpB,UAAWe,EAAOf,UAClBkM,YAAanL,EAAOmL,YACpBpD,KAAM/H,EAAO+H,KACb7H,QAAQ,EAAIqG,EAASxI,WAAWiC,EAAQ/I,KAAKwG,SAEjD2N,QAAS,CACLjH,KAAK,EAAIoC,EAASrJ,WAAW8C,EAAOmE,IAAKlN,KAAKmL,OAAOuB,SACrD4D,UAAWvH,EAAOuH,UAClBC,OAAQxH,EAAOwH,OACf5I,QAASoB,EAAOpB,QAChByM,SAAUN,EACVO,QAAQ,EAAI/E,EAASpJ,QAAQ6C,EAAOsL,OAAQrU,KAAKmL,OAAOuB,UAAY,CAAC,EACrE4H,SAAS,EAAIhF,EAASpJ,QAAQ6C,EAAOuL,QAAStU,KAAKmL,OAAOuB,UAAY,CAAC,GAE3E6H,OAAQ,CACJC,aAAczL,EAAOsH,YACrBoE,iBAAkB1L,EAAOoH,YACzBK,SAAUzH,EAAOyH,SACjBJ,SAAUpQ,KAAKmL,OAAOiF,SACtBsE,MAAM,IAAIpB,MAAOqB,eAErBC,QAAS7L,EAAO6L,SAAW,CAAC,EAEpC,EACAvF,EAAO9P,UAAUuT,gBAAkB,SAAUhC,GACzC,OAAKA,EAGEA,EAAKpG,WAAWxJ,MAAMsO,GAAetJ,QAAO,SAAU2O,GAAO,OAAOpF,EAAUlF,KAAKsK,EAAM,IAFrF,EAGf,EACAxF,EAAO9P,UAAU+S,mBAAqB,SAAUvJ,GAC5C,IAAI4I,EAAQ3R,KACR8U,EAAoB,KACnB/L,IACD/I,KAAKwG,OAAO8B,MAAM,gCAClBwM,EAAoB,IAAIrJ,MAAM,kCAEH,IAA3BzL,KAAKmL,OAAOsF,aACZzQ,KAAKwG,OAAO8B,MAAM,oDAAqDS,GACvE+L,EAAoB,IAAIrJ,MAAM,+BAE9BzL,KAAK0T,sBACL1T,KAAKwG,OAAOwE,IAAI,gGAAiGjC,GACjH+L,EAAoB,IAAIrJ,MAAM,0CAE7BzL,KAAKmL,OAAO+E,SACblQ,KAAKwG,OAAO8E,KAAK,8DAA+DvC,GAChF+L,EAAoB,IAAIrJ,MAAM,oBAElC,IAAIsJ,GAAqB,EAAIzF,EAAS1I,yBAAyBmC,EAAQ/I,KAAK8P,wBAK5E,OAJKgF,GAAsBC,EAAmBlR,SAC1C7D,KAAKwG,OAAO8B,MAAM,0EAA2ES,GAC7F+L,EAAoB,IAAIrJ,MAAM,yCAE9BsJ,EAAmBnL,QAAQ/D,QAAUkP,EAAmBnL,QAAQoL,MAAK,SAAUnR,GAAU,OAAOA,aAAkBQ,OAAS,IACpHA,QAAQ4Q,WAAWF,EAAmBnL,SACxC/E,MAAK,SAAU+E,GAKhB,IAJKkL,GAAsBlL,EAAQoL,MAAK,SAAUnR,GAAU,MAAyB,aAAlBA,EAAOqR,SAA0C,IAAjBrR,EAAO1D,KAAiB,MACvHwR,EAAMnL,OAAO8B,MAAM,0EAA2ES,GAC9F+L,EAAoB,IAAIrJ,MAAM,iDAE9BqJ,EACA,OAAOA,CAEf,IAEGA,CACX,EACAzF,EAAO9P,UAAUgT,OAAS,SAAUxJ,EAAQoM,GACxC,IAAIxD,EAAQ3R,KAeZ,OAdIA,KAAKmL,OAAOuF,oBACZ1Q,KAAKyO,cAAc,qBAAsB,CACrC2E,SAAU,SACVD,SAAU,CACN/J,QAASL,EAAOK,QAChBD,KAAMJ,EAAOI,KACb/H,MAAO2H,EAAO3H,SAGtB2H,EAAOkL,cAAgBjU,KAAK6P,QAAQtB,YAAY,gBAGhDxF,EAAOkL,cAAgB,IAE3B,EAAW3E,EAASzI,uBAAuBsO,EAAmBnV,KAAKoV,wBAC9DvQ,MAAK,SAAUwQ,GAAkB,OAAOlG,EAAYwC,OAAO,OAAQ,GAAQ,WAC5E,IAAI2D,EACJ,OAAOlG,EAAcpP,MAAM,SAAUyJ,GAKjC,OAJA4L,EAAehV,SAAQ,SAAUkV,EAAQjM,GACrCP,EAAOf,UAAUsB,GAAOiM,OAASA,CACrC,IACAD,EAAUtV,KAAK4T,eAAe7K,GACvB,CAAC,EAAc/I,KAAKoR,YAClBoE,KAAK,CACN3B,QAAS,CACL,YAAa7T,KAAKmL,OAAO+E,OACzB,eAAgB,mBAChB,OAAU,+BAEdhI,OAAQ,OACR9B,UAAU,EAAIkJ,EAASlJ,UAAUpG,KAAKmL,OAAO/E,SAAU,kBACvDwK,eAAgB5Q,KAAKmL,OAAOyF,eAC5BpK,OAAQxG,KAAKwG,QACd8O,GACX,GACJ,GAAI,IACCzQ,MAAK,SAAU4Q,GAChB,GAAuB,MAAnBA,EAAIC,WAGJ,OAFA,EAAIpG,EAAS3I,wBAAwBoC,EAAQ4I,EAAM5B,sBAAuB,IAAItE,MAAM,sBAAsBV,OAAO0K,EAAIC,cACrH/D,EAAMnL,OAAO8E,KAAK,2DAA2DP,OAAO0K,EAAIC,cACjF,EAEX,IAAIC,EAAOjI,KAAK1M,MAAMyU,EAAI1Q,MAAM6Q,GAKhC,OAJA,EAAItG,EAAS3I,yBAAwB,EAAI2I,EAASjI,OAAO0B,EAAQ,CAC7D6M,GAAID,IACJhE,EAAM5B,uBACV4B,EAAMnL,OAAO6E,KAAK,yDAA8DN,OAAO4K,KAChF,CACX,IACKnD,OAAM,SAAUnK,GAGjB,OAFAsJ,EAAMnL,OAAOwD,MAAM,kDAAmD,WAAWe,OAAO1C,EAAIe,WAC5F,EAAIkG,EAAS3I,wBAAwBoC,EAAQ4I,EAAM5B,sBAAuB1H,IACnE,CACX,GACJ,EACOgH,CACX,CA1Wa,GA2WbxO,EAAOwO,OAASA,EAEhB,IAAIwG,EAAQ,CAAC,EAEbvW,OAAOY,eAAe2V,EAAO,aAAc,CAAE1V,OAAO,IAEpD,SAAWtB,GACV,IAAIoE,EAAmBnE,GAAkBA,EAAemE,kBAAqB3D,OAAO4D,OAAU,SAASC,EAAGC,EAAG9C,EAAG+C,QACjG,IAAPA,IAAkBA,EAAK/C,GAC3B,IAAIgD,EAAOhE,OAAOkB,yBAAyB4C,EAAG9C,GACzCgD,KAAS,QAASA,GAAQF,EAAE/D,WAAaiE,EAAKC,UAAYD,EAAKE,gBAClEF,EAAO,CAAE5C,YAAY,EAAMD,IAAK,WAAa,OAAO2C,EAAE9C,EAAI,IAE5DhB,OAAOY,eAAeiD,EAAGE,EAAIC,EACjC,EAAM,SAASH,EAAGC,EAAG9C,EAAG+C,QACT,IAAPA,IAAkBA,EAAK/C,GAC3B6C,EAAEE,GAAMD,EAAE9C,EACd,GACImD,EAAsB3E,GAAkBA,EAAe2E,qBAAwBnE,OAAO4D,OAAU,SAASC,EAAGO,GAC5GpE,OAAOY,eAAeiD,EAAG,UAAW,CAAEzC,YAAY,EAAMP,MAAOuD,GACnE,EAAK,SAASP,EAAGO,GACbP,EAAW,QAAIO,CACnB,GACIoS,EAAgBhX,GAAkBA,EAAegX,cAAiB,SAAS1S,EAAGvE,GAC9E,QAASqQ,KAAK9L,EAAa,YAAN8L,GAAoB5P,OAAOC,UAAUC,eAAeC,KAAKZ,EAASqQ,IAAIjM,EAAgBpE,EAASuE,EAAG8L,EAC3H,EACIvL,EAAgB7E,GAAkBA,EAAe6E,cAAiB,SAAUC,GAC5E,GAAIA,GAAOA,EAAIvE,WAAY,OAAOuE,EAClC,IAAIC,EAAS,CAAC,EACd,GAAW,MAAPD,EAAa,QAAStD,KAAKsD,EAAe,YAANtD,GAAmBhB,OAAOC,UAAUC,eAAeC,KAAKmE,EAAKtD,IAAI2C,EAAgBY,EAAQD,EAAKtD,GAEtI,OADAmD,EAAmBI,EAAQD,GACpBC,CACX,EACAvE,OAAOY,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQkX,KAAOlX,EAAQmX,MAAQnX,EAAQwQ,YAAS,EAChD,IAAI4G,EAAWpV,EACfvB,OAAOY,eAAerB,EAAS,SAAU,CAAE6B,YAAY,EAAMD,IAAK,WAAc,OAAOwV,EAAS5G,MAAQ,IACxGyG,EAAa7H,EAAOpP,GACpBA,EAAQmX,MAAQrS,EAAakS,GAC7BhX,EAAQkX,KAAOpS,EAAa7C,EAE5B,CAnCD,CAmCGF,GAEH,IAAIsV,EAAO,CAAC,EASZ,SAASC,EAAoBC,GACzB,IAAKA,IAAYA,EAAQC,QACrB,MAAO,GAEX,IAAIlN,EAAOiN,EAAQC,QAAQ1N,cAE3B,GAAa,SAATQ,EACA,MAAO,GAEPiN,EAAQR,KACRzM,GAAQ,IAAI4B,OAAOqL,EAAQR,KAE/B,IAAIU,EAAmBF,EAAQG,aAAa,SACxCD,GACAA,EAAiBpV,MAAM,OAAOb,SAAQ,SAAUmW,GAC5CrN,GAAQ,IAAI4B,OAAOyL,EACvB,IAEJ,CAAC,MAAO,OAAQ,QAAS,QAAQnW,SAAQ,SAAUoW,GAC/C,IAAIC,EAAON,EAAQG,aAAaE,GAC5BC,IACAvN,GAAQ,IAAI4B,OAAO0L,EAAU,MAAO1L,OAAO2L,EAAM,MAEzD,IACA,IAAIC,EAAWC,EAAYR,GAI3B,OAHIO,EAAS9Q,OAAS,IAClBsD,GAAQ,cAAc4B,OAAOJ,MAAMpL,UAAU2C,QAAQzC,KAAKkX,EAAUP,GAAW,EAAG,MAE/EjN,CACX,CAEA,SAAS0N,EAAwBT,GAC7B,IAAIjN,EAAOgN,EAAoBC,GAC/B,GAAIA,EAAQU,YAAcV,EAAQU,WAAWT,QAAS,CAClD,IAAIU,EAAaF,EAAwBT,EAAQU,YACjD,GAAIC,EAAWlR,OAAS,EACpB,MAAO,GAAGkF,OAAOgM,EAAY,OAAOhM,OAAO5B,EAEnD,CACA,OAAOA,CACX,CAEA,SAAS6N,EAAoBZ,GACzB,IAAIa,EAAOb,EAAQc,aAAed,EAAQe,WAAa,GAIvD,OAHKF,GAA0B,WAAjBb,EAAQrJ,MAAsC,WAAjBqJ,EAAQrJ,OAC/CkK,EAAOb,EAAQjW,OAEZiX,EAASH,EAAKhL,OAAQ,IACjC,CAEA,SAASoL,IACL,IAAIC,EAASC,IACb,IAAKD,EAAOE,MACR,OAAO,EAEX,GAAIvV,EAASqV,EAAOE,OAChB,OAAO,EAEX,GAAwB,oBAAbC,SACP,OAAO,EAIX,IACI,IAAIC,EAAUD,SAASE,cAAc,UACrCD,EAAQE,MAAMC,QAAU,OACxBJ,SAASK,KAAKC,YAAYL,GAC1B,IAAI7T,EAAS6T,EAAQM,cAAcR,OAASvV,EAASyV,EAAQM,cAAcR,OAE3E,OADAC,SAASK,KAAKG,YAAYP,GACnB7T,CACX,OACOwE,GACCN,SAAWA,QAAQuD,MACnBvD,QAAQuD,KAAK,6CAA+CjD,EAEpE,CACA,OAAO,CACX,CAEA,SAASpG,EAASiW,GACd,OAA8C,IAAvCA,EAAKxN,WAAWxI,QAAQ,SACnC,CACA,SAASiW,EAASjL,GAEd,IAAIkL,EAAQlL,EAAIkL,MAAM,iEAAmE,CAAC,EAC1F,MAAO,CACHC,SAAUD,EAAM,GAChBE,KAAMF,EAAM,GACZG,SAAUH,EAAM,GAExB,CAEA,SAASI,EAAiBtL,GACtB,IAAIuL,EAASN,EAASjL,GAClBwL,EAAeP,EAASV,SAASkB,KAErC,OAAKF,EAAOH,MAASG,EAAOJ,SAIxBI,EAAOJ,WAAaK,EAAaL,UAAYI,EAAOH,OAASI,EAAaJ,KACnEG,EAAOF,SAGX,GAAGxN,OAAO0N,EAAOJ,SAAU,OAAOtN,OAAO0N,EAAOH,MAAMvN,OAAO0N,EAAOF,UAPhEE,EAAOF,QAQtB,CAEA,SAASK,EAAaC,GAClB,IAAIhV,EAAS,CAAC,EAKd,OAJAgV,EAAO3X,MAAM,WAAWb,SAAQ,SAAU+M,GACtC,IAAI3D,EAAK2D,EAAKlM,MAAM,IAAK,GAAI4L,EAAMrD,EAAG,GAAItJ,EAAQsJ,EAAG,GACrD5F,EAAOiJ,GAAO3M,CAClB,IACO0D,CACX,CAEA,SAASiV,EAAapN,GAClB,GAAsB,iBAAXA,EAAX,CAGA,IAAIqN,EAAU,GACd,QAASzY,KAAKoL,EACVqN,EAAQnX,KAAKtB,EAAI,IAAMoL,EAAOpL,IAElC,OAAOyY,EAAQtM,KAAK,IALpB,CAMJ,CAGA,SAASmK,EAAYR,GACjB,IACI,IAAI4C,EAAQ5C,EAAQU,WAAWmC,WAC3BC,EAAa,GAMjB,OALAvO,MAAMpL,UAAUc,QAAQZ,KAAKuZ,GAAO,SAAUG,GACtCA,EAAK9C,SAAW8C,EAAK9C,UAAYD,EAAQC,SACzC6C,EAAWtX,KAAKuX,EAExB,IACOD,CACX,OACOxU,GACH,MAAO,EACX,CACJ,CACA,SAAS0S,EAASyB,EAAQhT,GAItB,OAHIgT,EAAOhT,OAASA,IAChBgT,EAASA,EAAOO,OAAO,EAAGvT,GAAU,OAEjCgT,CACX,CA6BA,SAAStB,IACL,MAA0B,oBAAfxY,WACAA,WAES,oBAATG,KACAA,KAEJF,MACX,CAhMAM,OAAOY,eAAegW,EAAM,aAAc,CAAE/V,OAAO,IACnD+V,EAAKqB,mBAAqBrB,EAAKmD,YAAcnD,EAAK4C,aAAe5C,EAAK0C,aAAe1C,EAAKsC,iBAAmBtC,EAAKiC,SAAWjC,EAAKmB,YAAcnB,EAAKc,oBAAsBd,EAAKW,wBAA0BX,EAAKC,yBAAsB,EAoCrOD,EAAKC,oBAAsBA,EAW3BD,EAAKW,wBAA0BA,EAQ/BX,EAAKc,oBAAsBA,EA6B3Bd,EAAKmB,YAAcA,EAanBnB,EAAKiC,SAAWA,EAehBjC,EAAKsC,iBAAmBA,EASxBtC,EAAK0C,aAAeA,EAWpB1C,EAAK4C,aAAeA,EA0BpB5C,EAAKmD,YAAe,WAChB,IAAIA,GAAc,EAElB,GAAsB,oBAAXra,OACP,OAAOqa,EAOX,GALKra,OAAOsa,OACRD,GAAc,GAIdra,OAAOua,WACP,IAC8C,IAArC,IAAIva,OAAOua,WAAW,IAAKC,QAC5BH,GAAc,EAGtB,OACOvN,GAAM,CAEjB,OAAOuN,CACX,CArBoB,GAkCpBnD,EAAKqB,mBAAqBA,EAE1B,IAAIkC,EAAU,CAAC,EAEfna,OAAOY,eAAeuZ,EAAS,aAAc,CAAEtZ,OAAO,IACtDsZ,EAAQC,QAAUD,EAAQE,uBAAoB,EAE9C,IAIIC,EAJAC,EAAWjZ,EACXkZ,EAAW5D,EACX6D,EAAeF,EAAS9D,KAAK1P,WAAYE,EAAasT,EAAS9D,KAAKxP,WACpEyT,GAAgB,EAEpB,SAASL,KACLK,IAAiB,EACjBC,aAAaL,GACbA,EAAiBM,YAAW,WACxBF,GAAgB,CACpB,GACJ,CAGA,SAASN,GAAQS,GAEb,YADgB,IAAZA,IAAsBA,GAAA,EAAcL,EAASvC,uBAC1C,CACHzF,KAAM,SAAUjR,GACZkZ,EAAaI,EAAS,WAAW,SAAUvO,GACvC,IAAI6N,EAAU,SAAUW,EAAKlN,EAAK7L,EAAMgZ,EAAKhS,GAEzC,GADAxH,EAAO2F,OAAO8B,MAAM,kCAAmCrI,WACnD+Z,GAAgB,EAGhB,OAFAnZ,EAAO2F,OAAO8B,MAAM,0DAA2DrI,gBAC/E+Z,IAAiB,GAIrB,GAAa,IAAT3Y,GAAc,kBAAkBkJ,KAAK6P,GACjCvZ,EAAOsK,OAAO4F,gBAEdlQ,EAAO2F,OAAO8E,KAAK,iFAAkFrL,eAH7G,CAOA,IAAI8I,EAASxC,EAAW8B,GACnBU,EAAOI,OACRJ,EAAOI,KAAO,kBAEbJ,EAAOK,UACRL,EAAOK,QAAUgR,GAEhBrR,EAAO3H,QAER2H,EAAO3H,MAAQ,CAAC2H,EAAOK,QAAS,eAAgB8D,GAAO,UAAW,IAAK7L,GAAQ,EAAG,IAAKgZ,GAAO,EAAG,KAAK5N,KAAK,KAE/G5L,EAAO4N,cAA+B,mBAAhB1F,EAAOI,MAA8BJ,EAAOI,KAA2B,mBAAmB4B,OAAOhC,EAAOI,MAApD,iBAA2D,CACjIiK,SAAU,QACVD,SAAU,CACNhK,KAAMJ,EAAOI,KACbC,QAASL,EAAOK,QAChBhI,MAAO2H,EAAO3H,SAGlBP,EAAOsK,OAAO4F,gBACdlQ,EAAOoR,OAAOlJ,EArBlB,CAuBJ,EACA,OAAO,SAAUqR,EAAKlN,EAAK7L,EAAMgZ,EAAKhS,GAElC,OADAoR,EAAQW,EAAKlN,EAAK7L,EAAMgZ,EAAKhS,GACL,mBAAbuD,GACAA,EAAS7L,MAAMoa,EAASla,UAGvC,CACJ,GACJ,EAER,CAvDAwZ,EAAQE,kBAAoBA,GAwD5BF,EAAQC,QAAUA,GAElB,IAAIY,GAAuB,CAAC,EAE5Bhb,OAAOY,eAAeoa,GAAsB,aAAc,CAAEna,OAAO,IAEnE,IACIoa,GAAWrE,EACXsE,GAFW5Z,EAEamV,KAAK1P,WAEjC,SAASoU,GAAYN,GAEjB,YADgB,IAAZA,IAAsBA,GAAA,EAAcI,GAAShD,uBAC1C,CACHzF,KAAM,SAAUjR,GACPA,EAAOsK,OAAO6F,0BAGnBwJ,GAAaL,EAAS,wBAAwB,SAAUvO,GAEpD,SAAS0O,EAAqBI,GAC1B,IAAIjR,EAEJ,GADA5I,EAAO2F,OAAO8B,MAAM,+CAAgDrI,WAC/DY,EAAOsK,OAAO6F,yBAAnB,CAGA,IAAI2J,EAASD,EAAsBC,OACnC,GAAIA,aAAkBlP,MAAO,CAIzB,IAAImP,EAAW,UACXrY,EAAa,EACbsY,EAAgB,GAAG9P,OAAO4P,EAAOvR,QAAS,gBAAgB2B,OAAO6P,EAAU,KAAK7P,OAAOxI,EAAY,KACnGnB,EAAQuZ,EAAOvZ,OAASyZ,EACxBxS,EAAM,CACNc,KAAMwR,EAAOxR,KACbC,QAAS,qCAAqC2B,OAAO4P,GACrDvZ,SAOJ,OALAP,EAAO4N,cAAc,gCAAgC1D,OAAO1C,EAAIc,MAAO,CACnEiK,SAAU,QACVD,SAAU9K,SAEdxH,EAAOoR,OAAO5J,EAElB,CACA,IAAIe,EAA4B,iBAAXuR,EAAsBA,EAA4C,QAAjClR,EAAKiE,KAAKC,UAAUgN,UAA4B,IAAPlR,EAAgBA,EAAK,qBACpH5I,EAAOoR,OAAO,CACV9I,KAAM,8BACNC,QAAS,qCAAqC2B,OAAO3B,IAzBzD,CA2BJ,CACA,OAAO,SAAUsR,GACbJ,EAAqBI,GACG,mBAAb9O,GACPA,EAAS7L,MAAMC,KAAMC,UAE7B,CACJ,GACJ,EAER,CACAqa,GAAqBza,QAAU4a,GAE/B,IAAI9L,GAAc,CAAC,EAEnBrP,OAAOY,eAAeyO,GAAa,aAAc,CAAExO,OAAO,IAE1D,IAAI2a,GAAWla,EACXma,GAAW7E,EACX8E,GAAaF,GAAS/E,KAAKtP,SAAUwU,GAAeH,GAAS/E,KAAK1P,WACtE,SAAS6U,GAAYf,GAEjB,YADgB,IAAZA,IAAsBA,GAAA,EAAcY,GAASxD,uBAC1C,CACHzF,KAAM,SAAUjR,GACZ,SAAS6P,EAAmB3D,GACxB,OAAyC,IAArClM,EAAOsK,OAAOuF,qBAGd3D,GACkD,IAA3ClM,EAAOsK,OAAOuF,mBAAmB3D,IAEA,IAArClM,EAAOsK,OAAOuF,mBACzB,EAEA,WAII,SAASyK,EAAavT,GAClB,OAAK+C,MAAMC,QAAQhD,GAGZA,EAAIK,KAAI,SAAU9H,GACrB,IACI,OAAOqL,OAAOrL,EAClB,OACOuE,GACH,MAAO,WACX,CACJ,IAAG+H,KAAK,KATG,EAUf,CAfKiE,EAAmB,YAgBxB,CAAC,QAAS,OAAQ,OAAQ,QAAS,OAAOrQ,SAAQ,SAAU+a,GACxDH,GAAad,EAAQpS,QAASqT,GAAO,SAAUxP,GAC3C,OAAO,WACH,IAAIX,EAAON,MAAMpL,UAAU0N,MAAMxN,KAAKQ,WAClCmJ,EAAU+R,EAAalQ,GACvByE,EAAO,CACP0D,SAAU,MACVD,SAAU,CACNiI,QACAnb,UAAW+a,GAAW/P,EAAM,KAGpCpK,EAAO4N,cAAcrF,EAASsG,GACN,mBAAb9D,GACPyP,SAAS9b,UAAUQ,MAAMN,KAAKmM,EAAUuO,EAAQpS,QAAS9H,UAEjE,CACJ,GACJ,GACH,CApCD,GAuCSyQ,EAAmB,QAGgB,mBAA7ByJ,EAAQmB,kBAGnBnB,EAAQmB,iBAAiB,SAAS,SAAUC,GACxC,IAAInS,EAASoS,EAAUvE,EACvB,IACI7N,GAAA,EAAc2R,GAAS5E,qBAAqBoF,EAAME,QAClDD,GAAA,EAAeT,GAASlE,yBAAyB0E,EAAME,QACvDxE,GAAA,EAAW8D,GAAS/D,qBAAqBuE,EAAME,OACnD,OACO/W,GACH0E,EAAU,WACVoS,EAAW,YACXvE,EAAO,WACX,CAEuB,IAAnB7N,EAAQvD,QAGZhF,EAAO4N,cAAcrF,EAAS,CAC1BgK,SAAU,WACVD,SAAU,CACNqI,WACAvE,OACAsE,UAGZ,KAAGpB,EAAQuB,UAINhL,EAAmB,YAIM,oBAAnBiL,iBAIXV,GAAaU,eAAepc,UAAW,QAAQ,SAAUqM,GACrD,OAAO,WAEH,IAAIgQ,EAAM5b,KACN6b,EAAS5b,UAAU,GAEnBiN,EAAwB,iBAAX2O,EAAsBA,EAASrQ,OAAOqQ,GACnD3T,EAAiC,iBAAjBjI,UAAU,GAAkBA,UAAU,GAAGwN,cAAgBxN,UAAU,GACnFmJ,EAAU,GAAG2B,OAAO7C,EAAQ,KAAK6C,QAAO,EAAIgQ,GAASvC,kBAAkBtL,IAC3ElN,KAAK8b,SAAW,CACZ/O,KAAM,MACN7E,SACAgF,MACA9D,WAEoB,mBAAbwC,GACPA,EAAS7L,MAAM6b,EAAK3b,UAE5B,CACJ,IAEAgb,GAAaU,eAAepc,UAAW,QAAQ,SAAUqM,GACrD,OAAO,WAEH,IAAIgQ,EAAM5b,KACV,SAAS+b,IACL,GAAuB,IAAnBH,EAAII,WAAkB,CACtB,IAAI5S,OAAU,EACVwS,EAAIE,WACJF,EAAIE,SAASG,YAAcL,EAAI1G,OAC/B9L,EAAUwS,EAAIE,SAAS1S,eAChBwS,EAAIE,SAAS1S,SAExBvI,EAAO4N,cAAcrF,GAAW,iBAAkB,CAC9CgK,SAAU,UACVD,SAAUyI,EAAIE,UAEtB,CACJ,CACI,uBAAwBF,GAAyC,mBAA3BA,EAAIM,mBAC1CjB,GAAaW,EAAK,sBAAsB,SAAUhQ,GAC9C,OAAO,WACHmQ,IACwB,mBAAbnQ,GAEPA,EAAS7L,MAAMC,KAAMC,UAE7B,CACJ,IAGA2b,EAAIM,mBAAqBH,EAEL,mBAAbnQ,GAEPA,EAAS7L,MAAM6b,EAAK3b,UAE5B,CACJ,KAIKyQ,EAAmB,aAGnB,EAAIqK,GAAS1D,gBAIlB4D,GAAad,EAAS,SAAS,SAAUvO,GACrC,OAAO,WAEH,IAEIsB,EAFAiP,EAAQlc,UAAU,GAClBiI,EAAS,MAEQ,iBAAViU,EACPjP,EAAMiP,EAED,YAAahC,GAAWgC,aAAiBC,SAC9ClP,EAAMiP,EAAMjP,IACRiP,EAAMjU,SACNA,EAASiU,EAAMjU,SAInBgF,EAAM1B,OAAO2Q,GAEblc,UAAU,IAAMA,UAAU,GAAGiI,SAC7BA,EAASjI,UAAU,GAAGiI,QAEJ,iBAAXA,IACPA,EAASA,EAAOuF,eAGpB,IAAIrE,EAAU,GAAG2B,OAAO7C,EAAQ,KAAK6C,OAA2B,oBAAb0M,SAA2BvK,GAAM,EAAI6N,GAASvC,kBAAkBtL,IAC/GiG,EAAW,CACXpG,KAAM,QACN7E,SACAgF,OAEJ,OAAOtB,EACF7L,MAAMC,KAAMC,WACZ4E,MAAK,SAAUwX,GAMhB,OALAlJ,EAAsB,YAAIkJ,EAASnH,OACnCrU,EAAO4N,cAAcrF,EAAS,CAC1BgK,SAAU,UACVD,aAEGkJ,CACX,IACK7J,OAAM,SAAUxI,GAKjB,MAJAnJ,EAAO4N,cAAc,cAAe,CAChC2E,SAAU,QACVD,aAEEnJ,CACV,GACJ,CACJ,IAGJ,WACI,GAAK0G,EAAmB,eAGA,MAApByJ,EAAQuB,SAAZ,CAKA,IAAIY,EAAWnC,EAAQuB,SAASa,KAWA,mBAArBjB,kBACPA,iBAAiB,YAAY,SAAUkB,GACnCC,EAAgBH,EAAUnC,EAAQuB,SAASa,KAC/C,SAE2B,IAApBpC,EAAQuC,UAcnBzB,GAAad,EAAQuC,QAAS,YAAaC,GAC3C1B,GAAad,EAAQuC,QAAS,eAAgBC,GAjC9C,CAGA,SAASF,EAAgBG,EAAMC,GAC3BP,EAAWO,EACXhc,EAAO4N,cAAc,eAAgB,CACjC2E,SAAU,aACVD,SAAU,CACNyJ,OACAC,OAGZ,CAWA,SAASF,EAAe/Q,GACpB,OAAO,WACH,IAAIsB,EAAMjN,UAAU4F,OAAS,EAAI5F,UAAU,QAAK,EAIhD,OAHIiN,GACAuP,EAAgBH,EAAU9Q,OAAO0B,IAE9BtB,EAAS7L,MAAMC,KAAMC,UAChC,CACJ,CAGH,CAzCD,EA0CJ,EAER,CACA0O,GAAY9O,QAAUqb,GAEtB,IAAI4B,GAAS,CAAC,EAEdxd,OAAOY,eAAe4c,GAAQ,aAAc,CAAE3c,OAAO,IAErD,IACI4c,GAAW7G,EACX8G,GAFWpc,EAEamV,KAAK1P,WACjC,SAAS4W,GAAY9C,GAEjB,YADgB,IAAZA,IAAsBA,GAAA,EAAc4C,GAASxF,uBAC1C,CACHzF,KAAM,SAAUjR,IAEZ,WACI,SAASqc,EAAgBC,GACrB,OAAO,SAAUvR,GAEb,OAAO,SAAUsM,EAAMkF,GACnB,GAAoB,mBAATlF,EAAqB,CAC5B,IAAImF,EAAS1S,MAAMpL,UAAU0N,MAAMxN,KAAKQ,UAAW,GAEnD,OADAiY,EAAOrX,EAAOyc,OAAOpF,EAAMiF,GACpBvR,GAAS,WACZsM,EAAKnY,WAAM,EAAQsd,EACvB,GAAGD,EACP,CAEI,OAAOxR,EAASsM,EAAMkF,EAE9B,CACJ,CACJ,CACAJ,GAAa7C,EAAS,aAAc+C,EAAgB,CAAE5M,UAAW,gBACjE0M,GAAa7C,EAAS,cAAe+C,EAAgB,CAAE5M,UAAW,gBACrE,CApBD,EAqBJ,EAER,CACAwM,GAAOjd,QAAUod,GAEjB,IAAIM,GAAkB,CAAC,EAEvBje,OAAOY,eAAeqd,GAAiB,aAAc,CAAEpd,OAAO,IAC9D,IACIqd,GAAWtH,EACX7P,GAFWzF,EAEWmV,KAAK1P,WAC/B,SAASoX,GAAUtD,GAEf,YADgB,IAAZA,IAAsBA,GAAA,EAAcqD,GAASjG,uBAC1C,CACHzF,KAAM,SAAUjR,GAIE,CAAC,cAAe,SAAU,OAAQ,mBAAoB,iBAAkB,oBAAqB,kBAAmB,cAAe,aAAc,qBAAsB,cAAe,aAAc,iBAAkB,eAAgB,kBAAmB,cAAe,cAAe,eAAgB,qBAAsB,SAAU,YAAa,eAAgB,gBAAiB,YAAa,kBAAmB,SAAU,iBAAkB,4BAA6B,wBAChdR,SAAQ,SAAUqd,GACtB,IAAIne,EAAY4a,EAAQuD,IAASvD,EAAQuD,GAAMne,UAC3CA,GAAaD,OAAOC,UAAUC,eAAeC,KAAKF,EAAW,sBAC7D8G,GAAW9G,EAAW,oBAAoB,SAAUqM,GAChD,IAAIuR,EAAW,CAAE7M,UAAW,GAAGvF,OAAO2S,EAAM,gCAE5C,OAAO,SAAU3Q,EAAM4Q,EAAUC,EAAYC,GACzC,IACQF,GAAoC,MAAxBA,EAASG,cACrBH,EAASG,YAAcjd,EAAOyc,OAAOK,EAASG,YAAaX,GAEnE,OACOzY,GAEH7D,EAAO2F,OAAOwD,MAAMtF,EACxB,CACA,OAAOkH,EAASnM,KAAKO,KAAM+M,EAAMlM,EAAOyc,OAAOK,EAAUR,GAAWS,EAAYC,EACpF,CACJ,IACAxX,GAAW9G,EAAW,uBAAuB,SAAUqM,GACnD,OAAO,SAAUmB,EAAM4Q,EAAUC,EAAYC,GAEzC,OADAjS,EAASnM,KAAKO,KAAM+M,EAAM4Q,EAAUC,EAAYC,GACzCjS,EAASnM,KAAKO,KAAM+M,EAAMlM,EAAOyc,OAAOK,GAAWC,EAAYC,EAC1E,CACJ,IAER,GACJ,EAER,CACAN,GAAgB1d,QAAU4d,GAE1B,IAAI9N,GAAY,CAAC,EAEb7L,GAAahF,GAAkBA,EAAegF,WAAc,SAAUC,EAASC,EAAYC,EAAGC,GAC9F,SAASC,EAAMhE,GAAS,OAAOA,aAAiB8D,EAAI9D,EAAQ,IAAI8D,GAAE,SAAUG,GAAWA,EAAQjE,EAAQ,GAAI,CAC3G,OAAO,IAAK8D,IAAMA,EAAII,WAAU,SAAUD,EAASE,GAC/C,SAASC,EAAUpE,GAAS,IAAMqE,EAAKN,EAAUO,KAAKtE,GAAS,CAAE,MAAOuE,GAAKJ,EAAOI,EAAI,CAAE,CAC1F,SAASC,EAASxE,GAAS,IAAMqE,EAAKN,EAAiB,MAAE/D,GAAS,CAAE,MAAOuE,GAAKJ,EAAOI,EAAI,CAAE,CAC7F,SAASF,EAAKX,GAAUA,EAAOe,KAAOR,EAAQP,EAAO1D,OAASgE,EAAMN,EAAO1D,OAAO0E,KAAKN,EAAWI,EAAW,CAC7GH,GAAMN,EAAYA,EAAUnE,MAAMgE,EAASC,GAAc,KAAKS,OAClE,GACJ,EACIK,GAAehG,GAAkBA,EAAegG,aAAgB,SAAUf,EAASgB,GACnF,IAAsGnF,EAAGoF,EAAGC,EAAGhG,EAA3GiG,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAa,GAAW,EAAPH,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,EAAI,EAAGI,KAAM,GAAIC,IAAK,IAChG,OAAOrG,EAAI,CAAEwF,KAAMc,EAAK,GAAI,MAASA,EAAK,GAAI,OAAUA,EAAK,IAAwB,mBAAXC,SAA0BvG,EAAEuG,OAAOC,UAAY,WAAa,OAAOzF,IAAM,GAAIf,EACvJ,SAASsG,EAAK5F,GAAK,OAAO,SAAU+D,GAAK,OAAOc,EAAK,CAAC7E,EAAG+D,GAAK,CAAG,CACjE,SAASc,EAAKkB,GACV,GAAI9F,EAAG,MAAM,IAAI+F,UAAU,mCAC3B,KAAOT,OACH,GAAItF,EAAI,EAAGoF,IAAMC,EAAY,EAARS,EAAG,GAASV,EAAU,OAAIU,EAAG,GAAKV,EAAS,SAAOC,EAAID,EAAU,SAAMC,EAAExF,KAAKuF,GAAI,GAAKA,EAAEP,SAAWQ,EAAIA,EAAExF,KAAKuF,EAAGU,EAAG,KAAKd,KAAM,OAAOK,EAE3J,OADID,EAAI,EAAGC,IAAGS,EAAK,CAAS,EAARA,EAAG,GAAQT,EAAE9E,QACzBuF,EAAG,IACP,KAAK,EAAG,KAAK,EAAGT,EAAIS,EAAI,MACxB,KAAK,EAAc,OAAXR,EAAEC,QAAgB,CAAEhF,MAAOuF,EAAG,GAAId,MAAM,GAChD,KAAK,EAAGM,EAAEC,QAASH,EAAIU,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKR,EAAEI,IAAIM,MAAOV,EAAEG,KAAKO,MAAO,SACxC,QACI,MAAkBX,GAAZA,EAAIC,EAAEG,MAAYQ,OAAS,GAAKZ,EAAEA,EAAEY,OAAS,KAAkB,IAAVH,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAER,EAAI,EAAG,QAAU,CAC3G,GAAc,IAAVQ,EAAG,MAAcT,GAAMS,EAAG,GAAKT,EAAE,IAAMS,EAAG,GAAKT,EAAE,IAAM,CAAEC,EAAEC,MAAQO,EAAG,GAAI,KAAO,CACrF,GAAc,IAAVA,EAAG,IAAYR,EAAEC,MAAQF,EAAE,GAAI,CAAEC,EAAEC,MAAQF,EAAE,GAAIA,EAAIS,EAAI,KAAO,CACpE,GAAIT,GAAKC,EAAEC,MAAQF,EAAE,GAAI,CAAEC,EAAEC,MAAQF,EAAE,GAAIC,EAAEI,IAAI1D,KAAK8D,GAAK,KAAO,CAC9DT,EAAE,IAAIC,EAAEI,IAAIM,MAChBV,EAAEG,KAAKO,MAAO,SAEtBF,EAAKX,EAAKtF,KAAKsE,EAASmB,EAC5B,CAAE,MAAOR,GAAKgB,EAAK,CAAC,EAAGhB,GAAIM,EAAI,CAAG,CAAE,QAAUpF,EAAIqF,EAAI,CAAG,CACzD,GAAY,EAARS,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAEvF,MAAOuF,EAAG,GAAKA,EAAG,QAAK,EAAQd,MAAM,EAC9E,CACJ,EACAtF,OAAOY,eAAeyP,GAAW,aAAc,CAAExP,OAAO,IACxDwP,GAAUoO,sBAAmB,EAC7B,IACIC,GAAS9H,EACTzP,GAFS7F,EAESmV,KAAKtP,SAK3B,SAASwX,GAAcrW,GACnB,OAAOtI,OAAO4e,QAAQtW,EAC1B,CACA,IAAImW,GAAkC,WAClC,SAASA,IACT,CAkCA,OAjCAA,EAAiBxe,UAAUiW,KAAO,SAAU2I,EAAS7I,GACjD,OAAOxR,GAAU9D,UAAM,OAAQ,GAAQ,WACnC,IAAIoe,EAAavK,EAASwK,EAAahC,EAAUtX,EACjD,OAAOD,GAAY9E,MAAM,SAAUyJ,GAC/B,OAAQA,EAAGtE,OACP,KAAK,EAiBD,OAhBAiZ,EAAcD,EAAQtK,QAAUoK,GAAcE,EAAQtK,SAAW,GACjEA,EAAU,CAAC,EACXuK,EAAY/d,SAAQ,SAAUoJ,GAC1B,IAAIqD,EAAMrD,EAAG,GAAItJ,EAAQsJ,EAAG,GACjB,MAAPqD,GAAwB,MAAT3M,IACf0T,EAAQrI,OAAOsB,IAAQtB,OAAOrL,GAEtC,IACAke,EAAc,CACVnW,OAAQiW,EAAQjW,OAChB2L,WAGmB,SAAnBsK,EAAQjW,SACRmW,EAAYtZ,KAAOuQ,EAAU5H,KAAKC,UAAUlH,GAAS6O,EAAS6I,EAAQvN,sBAAmB,GAEtF,CAAC,KAAiBoN,GAAOzG,sBAAsBC,MAAM2G,EAAQ/X,SAAUiY,IAClF,KAAK,EAED,MAAO,CAAC,GADRhC,EAAW5S,EAAGrE,QACgB6R,QAClC,KAAK,EAED,OADAlS,EAAO0E,EAAGrE,OACH,CAAC,EAAcf,QAAQD,QAAQ,CAAEsR,WAAY2G,EAASnH,OAAQnQ,UAEjF,GACJ,GACJ,EACOgZ,CACX,CArCuB,GAiWvB,OA3TApO,GAAUoO,iBAAmBA,GAE7B,SAAWlf,GACV,IACQyf,EADJC,EAAazf,GAAkBA,EAAeyf,YAC1CD,EAAgB,SAAU/d,EAAGie,GAI7B,OAHAF,EAAgBhf,OAAOmf,gBAClB,CAAEzb,UAAW,cAAgB2H,OAAS,SAAUpK,EAAGie,GAAKje,EAAEyC,UAAYwb,CAAG,GAC1E,SAAUje,EAAGie,GAAK,QAAStP,KAAKsP,EAAOlf,OAAOC,UAAUC,eAAeC,KAAK+e,EAAGtP,KAAI3O,EAAE2O,GAAKsP,EAAEtP,GAAI,GAC/E3O,EAAGie,EAC5B,EACO,SAAUje,EAAGie,GAChB,GAAiB,mBAANA,GAA0B,OAANA,EAC3B,MAAM,IAAI7Y,UAAU,uBAAyB6F,OAAOgT,GAAK,iCAE7D,SAASE,IAAO1e,KAAK2e,YAAcpe,CAAG,CADtC+d,EAAc/d,EAAGie,GAEjBje,EAAEhB,UAAkB,OAANif,EAAalf,OAAO4D,OAAOsb,IAAME,EAAGnf,UAAYif,EAAEjf,UAAW,IAAImf,EACnF,GAEA3P,EAAYjQ,GAAkBA,EAAeiQ,UAAa,WAS1D,OARAA,EAAWzP,OAAO0P,QAAU,SAAS/J,GACjC,QAASgK,EAAGpG,EAAI,EAAGlJ,EAAIM,UAAU4F,OAAQgD,EAAIlJ,EAAGkJ,IAE5C,QAASqG,KADTD,EAAIhP,UAAU4I,GACOvJ,OAAOC,UAAUC,eAAeC,KAAKwP,EAAGC,KACzDjK,EAAEiK,GAAKD,EAAEC,IAEjB,OAAOjK,CACX,EACO8J,EAAShP,MAAMC,KAAMC,UAChC,EACI6D,EAAahF,GAAkBA,EAAegF,WAAc,SAAUC,EAASC,EAAYC,EAAGC,GAC9F,SAASC,EAAMhE,GAAS,OAAOA,aAAiB8D,EAAI9D,EAAQ,IAAI8D,GAAE,SAAUG,GAAWA,EAAQjE,EAAQ,GAAI,CAC3G,OAAO,IAAK8D,IAAMA,EAAII,WAAU,SAAUD,EAASE,GAC/C,SAASC,EAAUpE,GAAS,IAAMqE,EAAKN,EAAUO,KAAKtE,GAAS,CAAE,MAAOuE,GAAKJ,EAAOI,EAAI,CAAE,CAC1F,SAASC,EAASxE,GAAS,IAAMqE,EAAKN,EAAiB,MAAE/D,GAAS,CAAE,MAAOuE,GAAKJ,EAAOI,EAAI,CAAE,CAC7F,SAASF,EAAKX,GAAUA,EAAOe,KAAOR,EAAQP,EAAO1D,OAASgE,EAAMN,EAAO1D,OAAO0E,KAAKN,EAAWI,EAAW,CAC7GH,GAAMN,EAAYA,EAAUnE,MAAMgE,EAASC,GAAc,KAAKS,OAClE,GACJ,EACIK,EAAehG,GAAkBA,EAAegG,aAAgB,SAAUf,EAASgB,GACnF,IAAsGnF,EAAGoF,EAAGC,EAAGhG,EAA3GiG,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAa,GAAW,EAAPH,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,EAAI,EAAGI,KAAM,GAAIC,IAAK,IAChG,OAAOrG,EAAI,CAAEwF,KAAMc,EAAK,GAAI,MAASA,EAAK,GAAI,OAAUA,EAAK,IAAwB,mBAAXC,SAA0BvG,EAAEuG,OAAOC,UAAY,WAAa,OAAOzF,IAAM,GAAIf,EACvJ,SAASsG,EAAK5F,GAAK,OAAO,SAAU+D,GAAK,OAAOc,EAAK,CAAC7E,EAAG+D,GAAK,CAAG,CACjE,SAASc,EAAKkB,GACV,GAAI9F,EAAG,MAAM,IAAI+F,UAAU,mCAC3B,KAAOT,OACH,GAAItF,EAAI,EAAGoF,IAAMC,EAAY,EAARS,EAAG,GAASV,EAAU,OAAIU,EAAG,GAAKV,EAAS,SAAOC,EAAID,EAAU,SAAMC,EAAExF,KAAKuF,GAAI,GAAKA,EAAEP,SAAWQ,EAAIA,EAAExF,KAAKuF,EAAGU,EAAG,KAAKd,KAAM,OAAOK,EAE3J,OADID,EAAI,EAAGC,IAAGS,EAAK,CAAS,EAARA,EAAG,GAAQT,EAAE9E,QACzBuF,EAAG,IACP,KAAK,EAAG,KAAK,EAAGT,EAAIS,EAAI,MACxB,KAAK,EAAc,OAAXR,EAAEC,QAAgB,CAAEhF,MAAOuF,EAAG,GAAId,MAAM,GAChD,KAAK,EAAGM,EAAEC,QAASH,EAAIU,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKR,EAAEI,IAAIM,MAAOV,EAAEG,KAAKO,MAAO,SACxC,QACI,MAAkBX,GAAZA,EAAIC,EAAEG,MAAYQ,OAAS,GAAKZ,EAAEA,EAAEY,OAAS,KAAkB,IAAVH,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAER,EAAI,EAAG,QAAU,CAC3G,GAAc,IAAVQ,EAAG,MAAcT,GAAMS,EAAG,GAAKT,EAAE,IAAMS,EAAG,GAAKT,EAAE,IAAM,CAAEC,EAAEC,MAAQO,EAAG,GAAI,KAAO,CACrF,GAAc,IAAVA,EAAG,IAAYR,EAAEC,MAAQF,EAAE,GAAI,CAAEC,EAAEC,MAAQF,EAAE,GAAIA,EAAIS,EAAI,KAAO,CACpE,GAAIT,GAAKC,EAAEC,MAAQF,EAAE,GAAI,CAAEC,EAAEC,MAAQF,EAAE,GAAIC,EAAEI,IAAI1D,KAAK8D,GAAK,KAAO,CAC9DT,EAAE,IAAIC,EAAEI,IAAIM,MAChBV,EAAEG,KAAKO,MAAO,SAEtBF,EAAKX,EAAKtF,KAAKsE,EAASmB,EAC5B,CAAE,MAAOR,GAAKgB,EAAK,CAAC,EAAGhB,GAAIM,EAAI,CAAG,CAAE,QAAUpF,EAAIqF,EAAI,CAAG,CACzD,GAAY,EAARS,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAEvF,MAAOuF,EAAG,GAAKA,EAAG,QAAK,EAAQd,MAAM,EAC9E,CACJ,EACIga,EAAmB9f,GAAkBA,EAAe8f,iBAAoB,SAAUhb,GAClF,OAAQA,GAAOA,EAAIvE,WAAcuE,EAAM,CAAE,QAAWA,EACxD,EACAtE,OAAOY,eAAerB,EAAS,aAAc,CAAEsB,OAAO,IACtDtB,EAAQmX,MAAQnX,EAAQggB,8BAA2B,EACnD,IAAIC,EAASle,EACTod,EAAS9H,EACT6I,EAAYtF,EACZuF,EAAyBJ,EAAgBtE,IACzC2E,EAAgBL,EAAgBjQ,IAChCuQ,EAAWN,EAAgB9B,IAC3BqC,EAAoBP,EAAgBrB,IACpC6B,EAAczP,GACdtI,EAAQyX,EAAO/I,KAAK1O,MAAOnB,EAAS4Y,EAAO/I,KAAK7P,OAAQgB,EAAqB4X,EAAO/I,KAAK7O,mBACzFmY,EAAiB,WACjB,IAAI/H,GAAAA,EAAa0G,EAAOzG,sBACpBlH,EAAc,GAKlB,OAHuB,MAAnBiH,EAAOoE,WACPrL,EAAciH,EAAOoE,SAASrD,SAAW,KAAOf,EAAOoE,SAASpD,MAE7DjI,CACX,EACIwO,EAA2B,SAAU5O,GACrC,IAAIqP,EAAoBrP,EAAQ/O,MAAM,KAAK+L,MAAM,EAAG,GAAGR,KAAK,KAC5D,MAAO,8BAA8B1B,OAAOuU,EAAmB,gCACnE,EACAzgB,EAAQggB,yBAA2BA,EACnC,IAAIU,EAA6B,SAAUC,GAEvC,SAASD,EAAY7P,QACJ,IAATA,IAAmBA,EAAO,CAAC,GAC/B,IAAIiC,EAAQ6N,EAAO/f,KAAKO,KAAM+O,EAAS,CAAE0Q,qBAAsB,yCAA0CzR,OAAO,EAAM0R,UAAW,KAAMrP,YAAagP,KAAoB3P,GAAO,IAAI0P,EAAYrB,mBAAuB/d,KA4BtN,OA1BA2R,EAAMgO,aAAe,EAErBhO,EAAMiO,mBAAgB,EAEtBjO,EAAMkO,oBAAiB,EAEvBlO,EAAM7B,uBAAyB,CAC3B,SAAU/G,GACN,OAAI4I,EAAMmO,sBACNnO,EAAMnL,OAAO8B,MAAM,uCAAwCS,IACpD,IAEPA,IAAWA,EAAOmE,KAA2B,oBAAbuK,WAChC1O,EAAOmE,IAAMuK,SAASkB,KAE1BhH,EAAMoO,0BACC,EACX,GAEJpO,EAAM5B,sBAAwB,CAC1B,SAAUiQ,EAAQjX,GACVA,IACA4I,EAAMkO,eAAiB9W,EAAO6M,GAEtC,GAEGjE,CACX,CAoKA,OApMA4M,EAAUgB,EAAaC,GAiCvBD,EAAYhgB,UAAUkS,UAAY,SAAU/B,GAExC,YADa,IAATA,IAAmBA,EAAO,CAAC,GACxB8P,EAAOjgB,UAAUkS,UAAUhS,KAAKO,KAAM0P,EACjD,EACA6P,EAAYhgB,UAAU0gB,eAAiB,WACnC,OAAQjgB,KAAK2f,aAAe,CAChC,EACAJ,EAAYhgB,UAAU2gB,QAAU,SAAUxQ,GAEtC,IAAI3J,EAAQ,IAAIwZ,EAAY7P,GAE5B,OADA3J,EAAMwL,YAAYvR,KAAKsR,eAChBvL,CACX,EACAwZ,EAAYhgB,UAAU4gB,QAAU,SAAUC,GACtC,MAAM,IAAI3U,MAAM,wDACpB,EACA8T,EAAYhgB,UAAU8gB,qBAAuB,SAAUlC,GAEnD,YADgB,IAAZA,IAAsBA,EAAU,CAAC,GAC9Bra,EAAU9D,UAAM,OAAQ,GAAQ,WACnC,IAAIsX,EACJ,OAAOxS,EAAY9E,MAAM,SAAUyJ,GAC/B,OAAKzJ,KAAKmL,QAAWnL,KAAKmL,OAAO+E,OAI5BlQ,KAAK6f,oBAKqB,KAD/BvI,GAAAA,EAAa0G,EAAOzG,uBACFE,UACdzX,KAAKwG,OAAO8B,MAAM,sDACX,CAAC,IAERtI,KAAKsgB,yCACLtgB,KAAKwG,OAAO8B,MAAM,yCACX,CAAC,KAEZgP,EAAuC,+BAAIvI,EAASA,EAAS,CAAC,EAAGoP,GAAU,CAAEjO,OAAQlQ,KAAKmL,OAAO+E,OAAQ9J,SAAUpG,KAAKmL,OAAOsU,qBAAsBc,SAAUvgB,KAAK6f,iBACpK7f,KAAKwgB,4BAA4BlJ,EAAQ6G,GAClC,CAAC,KAdJne,KAAKwG,OAAO8B,MAAM,mEACX,CAAC,KALRtI,KAAKwG,OAAO8B,MAAM,0BACX,CAAC,GAkBhB,GACJ,GACJ,EACAiX,EAAYhgB,UAAUihB,4BAA8B,SAAUxhB,EAAQmf,QAClD,IAAZA,IAAsBA,EAAU,CAAC,GACrC,IAAIsC,EAASzhB,EAAOyY,SAASE,cAAc,UAC3C8I,EAAOC,aAAa,MAAO1gB,KAAK2gB,4BAChCF,EAAOC,aAAa,QAAS,QACzBvC,EAAQyC,SACRH,EAAOI,OAAS1C,EAAQyC,SAE3B9hB,EAAe2Y,SAASK,MAAQhZ,EAAe2Y,SAAS1S,MAAMgT,YAAY0I,EAC/E,EACAlB,EAAYhgB,UAAU+gB,sCAAwC,WAG1D,IAFA,IAAIhJ,GAAAA,EAAa0G,EAAOzG,sBACpBuJ,EAAoB9gB,KAAK2gB,2BACpB9X,EAAI,EAAGA,EAAIyO,EAAOG,SAASsJ,QAAQlb,OAAQgD,IAEhD,GADayO,EAAOG,SAASsJ,QAAQlY,GAC1BjI,MAAQkgB,EACf,OAAO,EAGf,OAAO,CACX,EACAvB,EAAYhgB,UAAUohB,yBAA2B,WAC7C,SAAW9hB,EAAQggB,0BAA0B7e,KAAKqR,aACtD,EAEAkO,EAAYhgB,UAAUqU,eAAiB,SAAU7K,GAC7C,IAWIiY,EAXAlN,EAAU,CACVmN,qBAAiB,EACjBC,kBAAc,EACdC,iBAAa,GAEQ,oBAAdC,WAA6BA,UAAUC,YAC9CvN,EAAQmN,gBAAkBG,UAAUC,WAEhB,oBAAb5J,UAA4BA,SAAS6J,SAASlJ,MAAM,QAC3DtE,EAAQoN,aAAezJ,SAAS6J,WAIhCN,EAD0B,iBAAnBjY,EAAOgQ,SACd,EAAoBiF,EAAOpF,cAAc7P,EAAOgQ,SAGhChQ,EAAOgQ,WAGvBjF,EAAQqN,aAAc,EAAInD,EAAOlF,cAAc5S,EAAO8a,EAAehhB,KAAKmL,OAAOuB,WAErF,IAAI4I,EAAUkK,EAAOjgB,UAAUqU,eAAenU,KAAKO,KAAM+I,GAEzD,OADAuM,EAAQnB,QAAQC,SAAW/M,EAAMyM,EAASwB,EAAQnB,QAAQC,UACnDkB,CACX,EAMAiK,EAAYhgB,UAAU+d,OAAS,SAAU1d,EAAG8P,QAC3B,IAATA,IAAmBA,EAAO,CAAC,GAC/B,IAAIwI,EAAOtY,EACN8P,IACDA,EAAO,CAAC,GAEZ,IACI,GAAoB,mBAATwI,EACP,OAAOA,EAEX,IAAKhR,EAAmBgR,GACpB,OAAOA,EAEX,IAAKA,EAAKqJ,MAAO,CAEb,IAAItL,EAAWjW,KACfkY,EAAKqJ,MAAQ,WACT,IAAIvD,EAAO3E,YA2BP,OAAOnB,EAAKnY,MAAMC,KAAMC,WA1BxB,IAEI,OAAOiY,EAAKnY,MAAMC,KAAMC,UAC5B,OACOoI,GACH,GAAI4N,EAAS2J,gBAAkBvX,EAC3B,MAAOA,EAeX,MAbA4N,EAAS2J,cAAgBvX,GACzB,EAAI0W,EAAUpF,qBACd1D,EAASxH,cAAciB,EAAKY,UAAY,GAAGvF,OAAO2E,EAAKY,UAAW,MAAMvF,OAAO1C,EAAIc,MAAQd,EAAIc,KAAM,CACjGiK,SAAU,QACVD,SAAU,CACN/J,QAASf,EAAIe,QACbD,KAAMd,EAAIc,KACV/H,MAAOiH,EAAIjH,SAGf6U,EAAS9K,OAAO4F,gBAChBkF,EAAShE,OAAO5J,GAEbA,CACX,CAMR,CACJ,CAEA,OADA6P,EAAKqJ,MAAMA,MAAQrJ,EAAKqJ,MACjBrJ,EAAKqJ,KAChB,OACOzV,GACH,OAAOoM,CACX,CACJ,EAEAqH,EAAYhgB,UAAUwgB,uBAAyB,WAC3C,OAAO/f,KAAK2f,cAChB,EAEAJ,EAAYhgB,UAAUugB,mBAAqB,WACvC,OAAO9f,KAAKmL,OAAOuU,WAAa1f,KAAK2f,cAAgB3f,KAAKmL,OAAOuU,SACrE,EACOH,CACX,CAtMkB,CAsMhBT,EAAOzP,QACLmS,EAAY,IAAIjC,EAAY,CAC5BrO,UAAW,IACH6N,EAAUrF,YAAS,EACnBsF,EAAuBnf,YAAS,EAChCqf,EAASrf,YAAS,EAClBsf,EAAkBtf,YAAS,EAC3Bof,EAAcpf,cAGtB4hB,EAAW,CACXtY,KAAM,qBACN+D,IAAK,2EACL+C,QAAS,SAEbuR,EAAUjQ,YAAYkQ,GACtB,IAAIC,EAAS9gB,EACbtB,OAAOY,eAAerB,EAAS,QAAS,CAAE6B,YAAY,EAAMD,IAAK,WAAc,OAAOihB,EAAO1L,KAAO,IACpGnX,EAAQgB,QAAU2hB,CAElB,CArTD,CAqTG7gB,GAEwBxB,EAAwBwB,EAIpD,CA3yEiFuf,mFCDjF,OACE1Z,OAAQtH,KAAK6I,QACb4Z,UAAWziB,KAAKyiB,WCYlB,GACE,GAAA3W,IAAO4W,GACD5hB,KAAK+T,UACP6N,EAAShgB,KAAK0R,KAAKuO,OACnBC,EAAStb,OAAOwE,IAAI,mBAAoB4W,GAE5C,GCfF,MAAMC,EAAM,KAAM,IAAIvO,MAAOyO,UAEvBC,EAAetN,IAASmN,IAAQnN,GAAQ,IAE9C,MAAMuN,EACJ,WAAAtD,CAAYuD,GACVliB,KAAKmiB,oBAAsBniB,KAAKmiB,oBAAoBC,KAAKpiB,MACzDA,KAAKkiB,WAAaA,EAClBliB,KAAKqiB,kBAAoB,CAC3B,CAEA,KAAAC,GACOtiB,KAAKuiB,cACRviB,KAAKwiB,UAAYX,WACV7hB,KAAKyiB,UACZziB,KAAK0iB,eACLpH,iBAAiB,mBAAoBtb,KAAKmiB,qBAC1C3b,EAAOwE,IAAI,gDAAgDhL,KAAK2e,YAAYgE,oBAEhF,CAEA,IAAAC,GACM5iB,KAAKuiB,cACPviB,KAAKyiB,UAAYZ,IACjB7hB,KAAK6iB,cACLC,oBAAoB,mBAAoB9iB,KAAKmiB,qBAC7C3b,EAAOwE,IAAI,6BAEf,CAEA,SAAAuX,GACE,OAAOviB,KAAKwiB,YAAcxiB,KAAKyiB,SACjC,CAEA,UAAAM,GACE/iB,KAAKgjB,SAAWnB,GAClB,CAEA,aAAAoB,GACEjjB,KAAKqiB,kBAAoB,EACzBriB,KAAK+iB,oBACE/iB,KAAKkjB,eACZ1c,EAAOwE,IAAI,qCACb,CAEA,gBAAAmY,GACEnjB,KAAKkjB,eAAiBrB,IACtBrb,EAAOwE,IAAI,wCACb,CAIA,YAAA0X,GACE1iB,KAAK6iB,cACL7iB,KAAKojB,MACP,CAEA,WAAAP,GACE5I,aAAaja,KAAKqjB,YACpB,CAEA,IAAAD,GACEpjB,KAAKqjB,YAAcnJ,YAAW,KAC5Bla,KAAKsjB,mBACLtjB,KAAKojB,MAAM,GAEXpjB,KAAKujB,kBACT,CAEA,eAAAA,GACE,MAAM,eAAEZ,EAAc,wBAAEa,GAA4BxjB,KAAK2e,YAIzD,OAAwB,IAAjBgE,EAHSc,KAAKC,IAAI,EAAIF,EAAyBC,KAAKE,IAAI3jB,KAAKqiB,kBAAmB,MAG7C,GAFG,IAA3BriB,KAAKqiB,kBAA0B,EAAMmB,GAC5BC,KAAKG,SAElC,CAEA,gBAAAN,GACMtjB,KAAK6jB,sBACPrd,EAAOwE,IAAI,oEAAoEhL,KAAKqiB,mCAAmCL,EAAahiB,KAAK8jB,qCAAqC9jB,KAAK2e,YAAYgE,oBAC/L3iB,KAAKqiB,oBACDriB,KAAK+jB,uBACPvd,EAAOwE,IAAI,+EAA+EgX,EAAahiB,KAAKkjB,sBAE5G1c,EAAOwE,IAAI,+BACXhL,KAAKkiB,WAAW8B,UAGtB,CAEA,eAAIF,GACF,OAAO9jB,KAAKgjB,SAAWhjB,KAAKgjB,SAAWhjB,KAAKwiB,SAC9C,CAEA,iBAAAqB,GACE,OAAO7B,EAAahiB,KAAK8jB,aAAe9jB,KAAK2e,YAAYgE,cAC3D,CAEA,oBAAAoB,GACE,OAAO/jB,KAAKkjB,gBAAmBlB,EAAahiB,KAAKkjB,gBAAkBljB,KAAK2e,YAAYgE,cACtF,CAEA,mBAAAR,GACmC,YAA7B1K,SAASwM,iBACX/J,YAAW,MACLla,KAAK6jB,qBAAwB7jB,KAAKkiB,WAAWgC,WAC/C1d,EAAOwE,IAAI,uFAAuFyM,SAASwM,mBAC3GjkB,KAAKkiB,WAAW8B,SAClB,GAEA,IAEN,EAIF/B,EAAkBU,eAAiB,EACnCV,EAAkBuB,wBAA0B,IAE5C,QC5HA,GACE,cAAiB,CACf,QAAW,UACX,WAAc,aACd,KAAQ,OACR,aAAgB,uBAChB,UAAa,uBAEf,mBAAsB,CACpB,aAAgB,eAChB,gBAAmB,kBACnB,eAAkB,kBAEpB,mBAAsB,SACtB,UAAa,CACX,sBACA,4BCTJ,MAAM,cAACW,EAAa,UAAEC,GAAa,EAC7BC,EAAqBD,EAAUnX,MAAM,EAAGmX,EAAUve,OAAS,GAE3D3D,EAAU,GAAGA,QAEnB,MAAMoiB,EACJ,WAAA3F,CAAY4F,GACVvkB,KAAKwkB,KAAOxkB,KAAKwkB,KAAKpC,KAAKpiB,MAC3BA,KAAKukB,SAAWA,EAChBvkB,KAAKykB,cAAgBzkB,KAAKukB,SAASE,cACnCzkB,KAAK0kB,QAAU,IAAI,EAAkB1kB,MACrCA,KAAK2kB,cAAe,CACtB,CAEA,IAAAnP,CAAKoP,GACH,QAAI5kB,KAAKkkB,WACPlkB,KAAK6kB,UAAUrP,KAAK9H,KAAKC,UAAUiX,KAC5B,EAIX,CAEA,IAAAJ,GACE,OAAIxkB,KAAK8kB,YACPte,EAAOwE,IAAI,uDAAuDhL,KAAK+kB,eAChE,IAEPve,EAAOwE,IAAI,uCAAuChL,KAAK+kB,6BAA6BX,KAChFpkB,KAAK6kB,WAAa7kB,KAAKglB,yBAC3BhlB,KAAK6kB,UAAY,IAAI/C,EAASH,UAAU3hB,KAAKukB,SAASrX,IAAKkX,GAC3DpkB,KAAKilB,uBACLjlB,KAAK0kB,QAAQpC,SACN,EAEX,CAEA,KAAA4C,EAAM,eAACC,GAAkB,CAACA,gBAAgB,IAGxC,GAFKA,GAAkBnlB,KAAK0kB,QAAQ9B,OAEhC5iB,KAAKkkB,SACP,OAAOlkB,KAAK6kB,UAAUK,OAE1B,CAEA,MAAAlB,GAEE,GADAxd,EAAOwE,IAAI,yCAAyChL,KAAK+kB,eACrD/kB,KAAK8kB,WAWP,OAAO9kB,KAAKwkB,OAVZ,IACE,OAAOxkB,KAAKklB,OACd,CAAE,MAAOlb,GACPxD,EAAOwE,IAAI,6BAA8BhB,EAC3C,SAEExD,EAAOwE,IAAI,0BAA0BhL,KAAK2e,YAAYyG,iBACtDlL,WAAWla,KAAKwkB,KAAMxkB,KAAK2e,YAAYyG,YACzC,CAIJ,CAEA,WAAAC,GACE,GAAIrlB,KAAK6kB,UACP,OAAO7kB,KAAK6kB,UAAUxM,QAE1B,CAEA,MAAA6L,GACE,OAAOlkB,KAAKslB,QAAQ,OACtB,CAEA,QAAAR,GACE,OAAO9kB,KAAKslB,QAAQ,OAAQ,aAC9B,CAIA,mBAAAC,GACE,OAAOrjB,EAAQzC,KAAK4kB,EAAoBrkB,KAAKqlB,gBAAkB,CACjE,CAEA,OAAAC,IAAWE,GACT,OAAOtjB,EAAQzC,KAAK+lB,EAAQxlB,KAAK+kB,aAAe,CAClD,CAEA,QAAAA,GACE,GAAI/kB,KAAK6kB,UACP,QAASY,KAAS3D,EAASH,UACzB,GAAIG,EAASH,UAAU8D,KAAWzlB,KAAK6kB,UAAU7I,WAC/C,OAAOyJ,EAAM9c,cAInB,OAAO,IACT,CAEA,oBAAAsc,GACE,QAASS,KAAa1lB,KAAK2lB,OAAQ,CACjC,MAAM5b,EAAU/J,KAAK2lB,OAAOD,GAAWtD,KAAKpiB,MAC5CA,KAAK6kB,UAAU,KAAKa,KAAe3b,CACrC,CACF,CAEA,sBAAAib,GACE,QAASU,KAAa1lB,KAAK2lB,OACzB3lB,KAAK6kB,UAAU,KAAKa,KAAe,WAAY,CAEnD,EAIFpB,EAAWc,YAAc,IAEzBd,EAAW/kB,UAAUomB,OAAS,CAC5B,OAAAvc,CAAQmS,GACN,IAAKvb,KAAKulB,sBAAyB,OACnC,MAAM,WAACK,EAAU,QAAExc,EAAO,OAAEuR,EAAM,UAAEkL,EAAS,KAAE9Y,GAAQW,KAAK1M,MAAMua,EAAMqJ,MACxE,OAAQ7X,GACN,KAAKoX,EAAc2B,QAEjB,OADA9lB,KAAK0kB,QAAQzB,gBACNjjB,KAAKykB,cAAcsB,SAC5B,KAAK5B,EAAc6B,WAEjB,OADAxf,EAAOwE,IAAI,0BAA0B2P,KAC9B3a,KAAKklB,MAAM,CAACC,eAAgBU,IACrC,KAAK1B,EAAc8B,KACjB,OAAOjmB,KAAK0kB,QAAQ3B,aACtB,KAAKoB,EAAc+B,aAEjB,OADAlmB,KAAKykB,cAAc0B,oBAAoBP,GAChC5lB,KAAKykB,cAAcxS,OAAO2T,EAAY,aAC/C,KAAKzB,EAAciC,UACjB,OAAOpmB,KAAKykB,cAAcngB,OAAOshB,GACnC,QACE,OAAO5lB,KAAKykB,cAAcxS,OAAO2T,EAAY,WAAYxc,GAE/D,EAEA,IAAAob,GAGE,GAFAhe,EAAOwE,IAAI,kCAAkChL,KAAKqlB,8BAClDrlB,KAAK2kB,cAAe,GACf3kB,KAAKulB,sBAER,OADA/e,EAAOwE,IAAI,gEACJhL,KAAKklB,MAAM,CAACC,gBAAgB,GAEvC,EAEA,KAAAD,CAAM3J,GAEJ,GADA/U,EAAOwE,IAAI,4BACPhL,KAAK2kB,aAGT,OAFA3kB,KAAK2kB,cAAe,EACpB3kB,KAAK0kB,QAAQvB,mBACNnjB,KAAKykB,cAAc4B,UAAU,eAAgB,CAACC,qBAAsBtmB,KAAK0kB,QAAQnC,aAC1F,EAEA,KAAAvY,GACExD,EAAOwE,IAAI,0BACb,GAGF,QClGe,MAAMub,EACnB,WAAA5H,CAAY4F,EAAUlQ,EAAS,CAAC,EAAGmS,GACjCxmB,KAAKukB,SAAWA,EAChBvkB,KAAK4lB,WAAalY,KAAKC,UAAU0G,GAbtB,SAAS3I,EAAQ+a,GAC9B,GAAkB,MAAdA,EACF,QAAS3Z,KAAO2Z,EAAY,CAC1B,MAAMtmB,EAAQsmB,EAAW3Z,GACzBpB,EAAOoB,GAAO3M,CAChB,CAGJ,CAMIumB,CAAO1mB,KAAMwmB,EACf,CAGA,OAAAG,CAAQpW,EAAQqU,EAAO,CAAC,GAEtB,OADAA,EAAKrU,OAASA,EACPvQ,KAAKwV,KAAKoP,EACnB,CAEA,IAAApP,CAAKoP,GACH,OAAO5kB,KAAKukB,SAAS/O,KAAK,CAACoR,QAAS,UAAWhB,WAAY5lB,KAAK4lB,WAAYhB,KAAMlX,KAAKC,UAAUiX,IACnG,CAEA,WAAAiC,GACE,OAAO7mB,KAAKukB,SAASE,cAAcqC,OAAO9mB,KAC5C,ECtCF,MA5CA,MACE,WAAA2e,CAAY8F,GACVzkB,KAAKykB,cAAgBA,EACrBzkB,KAAK+mB,qBAAuB,EAC9B,CAEA,SAAAC,CAAUC,IAC+C,GAApDjnB,KAAK+mB,qBAAqB7kB,QAAQ+kB,IACnCzgB,EAAOwE,IAAI,sCAAsCic,EAAarB,cAC9D5lB,KAAK+mB,qBAAqBnlB,KAAKqlB,IAG/BzgB,EAAOwE,IAAI,8CAA8Cic,EAAarB,cAExE5lB,KAAKknB,mBACP,CAEA,MAAAC,CAAOF,GACLzgB,EAAOwE,IAAI,oCAAoCic,EAAarB,cAC5D5lB,KAAK+mB,qBAAwB/mB,KAAK+mB,qBAAqB7gB,QAAQ+I,GAAMA,IAAMgY,GAC7E,CAEA,iBAAAC,GACElnB,KAAKonB,mBACLpnB,KAAKqnB,kBACP,CAEA,gBAAAD,GACEnN,aAAaja,KAAKsnB,aACpB,CAEA,gBAAAD,GACErnB,KAAKsnB,aAAepN,YAAW,KACzBla,KAAKykB,eAA0D,mBAAlCzkB,KAAKykB,cAAc8C,WAClDvnB,KAAK+mB,qBAAqB9e,KAAKgf,IAC7BzgB,EAAOwE,IAAI,uCAAuCic,EAAarB,cAC/D5lB,KAAKykB,cAAc8C,UAAUN,EAAa,GAE9C,GAEA,IACJ,GChCa,MAAMO,EACnB,WAAA7I,CAAY4F,GACVvkB,KAAKukB,SAAWA,EAChBvkB,KAAKynB,UAAY,IAAI,EAAsBznB,MAC3CA,KAAKykB,cAAgB,EACvB,CAEA,MAAAvhB,CAAOwkB,EAAalB,GAClB,MACMnS,EAA4B,iBADlBqT,IACuC,CAACC,QADxCD,GAEVT,EAAe,IAAIV,EAAavmB,KAAKukB,SAAUlQ,EAAQmS,GAC7D,OAAOxmB,KAAK4nB,IAAIX,EAClB,CAIA,GAAAW,CAAIX,GAKF,OAJAjnB,KAAKykB,cAAc7iB,KAAKqlB,GACxBjnB,KAAKukB,SAASsD,yBACd7nB,KAAKiS,OAAOgV,EAAc,eAC1BjnB,KAAKunB,UAAUN,GACRA,CACT,CAEA,MAAAH,CAAOG,GAKL,OAJAjnB,KAAKmnB,OAAOF,GACPjnB,KAAK8nB,QAAQb,EAAarB,YAAY/f,QACzC7F,KAAK+nB,YAAYd,EAAc,eAE1BA,CACT,CAEA,MAAA3iB,CAAOshB,GACL,OAAO5lB,KAAK8nB,QAAQlC,GAAY3d,KAAKgf,IACnCjnB,KAAKmnB,OAAOF,GACZjnB,KAAKiS,OAAOgV,EAAc,YACnBA,IAEX,CAEA,MAAAE,CAAOF,GAGL,OAFAjnB,KAAKynB,UAAUN,OAAOF,GACtBjnB,KAAKykB,cAAiBzkB,KAAKykB,cAAcve,QAAQ+I,GAAMA,IAAMgY,IACtDA,CACT,CAEA,OAAAa,CAAQlC,GACN,OAAO5lB,KAAKykB,cAAcve,QAAQ+I,GAAMA,EAAE2W,aAAeA,GAC3D,CAEA,MAAAG,GACE,OAAO/lB,KAAKykB,cAAcxc,KAAKgf,GAC7BjnB,KAAKunB,UAAUN,IACnB,CAEA,SAAAZ,CAAU2B,KAAiB/c,GACzB,OAAOjL,KAAKykB,cAAcxc,KAAKgf,GAC7BjnB,KAAKiS,OAAOgV,EAAce,KAAiB/c,IAC/C,CAEA,MAAAgH,CAAOgV,EAAce,KAAiB/c,GACpC,IAAIwZ,EAOJ,OALEA,EAD0B,iBAAjBwC,EACOjnB,KAAK8nB,QAAQb,GAEb,CAACA,GAGZxC,EAAcxc,KAAKgf,GACe,mBAA/BA,EAAae,GAA+Bf,EAAae,MAAiB/c,QAAQ,GAC9F,CAEA,SAAAsc,CAAUN,GACJjnB,KAAK+nB,YAAYd,EAAc,cACjCjnB,KAAKynB,UAAUT,UAAUC,EAE7B,CAEA,mBAAAd,CAAoBP,GAClBpf,EAAOwE,IAAI,0BAA0B4a,KACrC5lB,KAAK8nB,QAAQlC,GAAY3d,KAAKgf,GAC5BjnB,KAAKynB,UAAUN,OAAOF,IAC1B,CAEA,WAAAc,CAAYd,EAAcL,GACxB,MAAM,WAAChB,GAAcqB,EACrB,OAAOjnB,KAAKukB,SAAS/O,KAAK,CAACoR,UAAShB,cACtC,ECxEa,MAAMqC,EACnB,WAAAtJ,CAAYzR,GACVlN,KAAKkoB,KAAOhb,EACZlN,KAAKykB,cAAgB,IAAI+C,EAAcxnB,MACvCA,KAAKkiB,WAAa,IAAI,EAAWliB,KACnC,CAEA,OAAIkN,GACF,OAsBG,SAA4BA,GACd,mBAARA,IACTA,EAAMA,KAGR,GAAIA,IAAQ,UAAU3C,KAAK2C,GAAM,CAC/B,MAAMpN,EAAI2X,SAASE,cAAc,KAKjC,OAJA7X,EAAEyc,KAAOrP,EAETpN,EAAEyc,KAAOzc,EAAEyc,KACXzc,EAAEuY,SAAWvY,EAAEuY,SAASnM,QAAQ,OAAQ,MACjCpM,EAAEyc,IACX,CACE,OAAOrP,CAEX,CArCWib,CAAmBnoB,KAAKkoB,KACjC,CAEA,IAAA1S,CAAKoP,GACH,OAAO5kB,KAAKkiB,WAAW1M,KAAKoP,EAC9B,CAEA,OAAAwD,GACE,OAAOpoB,KAAKkiB,WAAWsC,MACzB,CAEA,UAAAwB,GACE,OAAOhmB,KAAKkiB,WAAWgD,MAAM,CAACC,gBAAgB,GAChD,CAEA,sBAAA0C,GACE,IAAK7nB,KAAKkiB,WAAW4C,WACnB,OAAO9kB,KAAKkiB,WAAWsC,MAE3B,ECjCK,SAAS6D,EAAenb,EAIxB,SAAmB/D,GACxB,MAAMiN,EAAUqB,SAASK,KAAKwQ,cAAc,2BAA2Bnf,OACvE,GAAIiN,EACF,OAAOA,EAAQG,aAAa,UAEhC,CATqCgS,CAAU,QAAU,EAASC,oBAChE,OAAO,IAAIP,EAAS/a,EACtB,mBCzBA,IAAIub,EAAW,CACb5pB,QAAS,CAAC,GAyZT4pB,EAnZU5pB,QAEP,SAAS6pB,GACX,IAAIC,EAAU,CAAE,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAC3F,SAASC,EAASxpB,EAAGkB,GACnB,IAAIR,EAAIV,EAAE,GAAIof,EAAIpf,EAAE,GAAIypB,EAAIzpB,EAAE,GAAImB,EAAInB,EAAE,GAQxCof,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIqK,GAAKrK,EAAIje,GAAKD,EAAE,GAAK,UAAY,IACjC,EAAIR,IAAM,IAAM0e,EAAI,GACpBA,GAAK1e,EAAI+oB,GAAKvoB,EAAE,GAAK,UAAY,IACjC,GAAKC,IAAM,IAAMT,EAAI,GACrBA,GAAKS,EAAIie,GAAKle,EAAE,GAAK,UAAY,IACjC,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBA,GAAKsoB,EAAI/oB,GAAKQ,EAAE,GAAK,WAAa,IAClC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIqK,GAAKrK,EAAIje,GAAKD,EAAE,GAAK,UAAY,IACjC,EAAIR,IAAM,IAAM0e,EAAI,GACpBA,GAAK1e,EAAI+oB,GAAKvoB,EAAE,GAAK,WAAa,IAClC,GAAKC,IAAM,IAAMT,EAAI,GACrBA,GAAKS,EAAIie,GAAKle,EAAE,GAAK,WAAa,IAClC,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBA,GAAKsoB,EAAI/oB,GAAKQ,EAAE,GAAK,SAAW,IAChC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIqK,GAAKrK,EAAIje,GAAKD,EAAE,GAAK,WAAa,IAClC,EAAIR,IAAM,IAAM0e,EAAI,GACpBA,GAAK1e,EAAI+oB,GAAKvoB,EAAE,GAAK,WAAa,IAClC,GAAKC,IAAM,IAAMT,EAAI,GACrBA,GAAKS,EAAIie,GAAKle,EAAE,IAAM,MAAQ,IAC9B,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBA,GAAKsoB,EAAI/oB,GAAKQ,EAAE,IAAM,WAAa,IACnC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIqK,GAAKrK,EAAIje,GAAKD,EAAE,IAAM,WAAa,IACnC,EAAIR,IAAM,IAAM0e,EAAI,GACpBA,GAAK1e,EAAI+oB,GAAKvoB,EAAE,IAAM,SAAW,IACjC,GAAKC,IAAM,IAAMT,EAAI,GACrBA,GAAKS,EAAIie,GAAKle,EAAE,IAAM,WAAa,IACnC,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBA,GAAKsoB,EAAI/oB,GAAKQ,EAAE,IAAM,WAAa,IACnC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIje,EAAIsoB,GAAKtoB,GAAKD,EAAE,GAAK,UAAY,IACjC,EAAIR,IAAM,IAAM0e,EAAI,GACpBqK,EAAIrK,GAAKqK,GAAKvoB,EAAE,GAAK,WAAa,IAClC,EAAIC,IAAM,IAAMT,EAAI,GACpB0e,EAAI1e,GAAK0e,GAAKle,EAAE,IAAM,UAAY,IAClC,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBT,EAAIS,GAAKT,GAAKQ,EAAE,GAAK,UAAY,IACjC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIje,EAAIsoB,GAAKtoB,GAAKD,EAAE,GAAK,UAAY,IACjC,EAAIR,IAAM,IAAM0e,EAAI,GACpBqK,EAAIrK,GAAKqK,GAAKvoB,EAAE,IAAM,SAAW,IACjC,EAAIC,IAAM,IAAMT,EAAI,GACpB0e,EAAI1e,GAAK0e,GAAKle,EAAE,IAAM,UAAY,IAClC,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBT,EAAIS,GAAKT,GAAKQ,EAAE,GAAK,UAAY,IACjC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIje,EAAIsoB,GAAKtoB,GAAKD,EAAE,GAAK,UAAY,IACjC,EAAIR,IAAM,IAAM0e,EAAI,GACpBqK,EAAIrK,GAAKqK,GAAKvoB,EAAE,IAAM,WAAa,IACnC,EAAIC,IAAM,IAAMT,EAAI,GACpB0e,EAAI1e,GAAK0e,GAAKle,EAAE,GAAK,UAAY,IACjC,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBT,EAAIS,GAAKT,GAAKQ,EAAE,GAAK,WAAa,IAClC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIje,EAAIsoB,GAAKtoB,GAAKD,EAAE,IAAM,WAAa,IACnC,EAAIR,IAAM,IAAM0e,EAAI,GACpBqK,EAAIrK,GAAKqK,GAAKvoB,EAAE,GAAK,SAAW,IAChC,EAAIC,IAAM,IAAMT,EAAI,GACpB0e,EAAI1e,GAAK0e,GAAKle,EAAE,GAAK,WAAa,IAClC,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBT,EAAIS,GAAKT,GAAKQ,EAAE,IAAM,WAAa,IACnC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIqK,EAAItoB,GAAKD,EAAE,GAAK,OAAS,IACzB,EAAIR,IAAM,IAAM0e,EAAI,GACpBA,EAAIqK,GAAKvoB,EAAE,GAAK,WAAa,IAC7B,GAAKC,IAAM,IAAMT,EAAI,GACrBA,EAAI0e,GAAKle,EAAE,IAAM,WAAa,IAC9B,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBA,EAAIT,GAAKQ,EAAE,IAAM,SAAW,IAC5B,GAAKke,IAAM,GAAKqK,EAAI,EAQ9BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIqK,EAAItoB,GAAKD,EAAE,GAAK,WAAa,IAC7B,EAAIR,IAAM,IAAM0e,EAAI,GACpBA,EAAIqK,GAAKvoB,EAAE,GAAK,WAAa,IAC7B,GAAKC,IAAM,IAAMT,EAAI,GACrBA,EAAI0e,GAAKle,EAAE,GAAK,UAAY,IAC5B,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBA,EAAIT,GAAKQ,EAAE,IAAM,WAAa,IAC9B,GAAKke,IAAM,GAAKqK,EAAI,EAQ9BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIqK,EAAItoB,GAAKD,EAAE,IAAM,UAAY,IAC7B,EAAIR,IAAM,IAAM0e,EAAI,GACpBA,EAAIqK,GAAKvoB,EAAE,GAAK,UAAY,IAC5B,GAAKC,IAAM,IAAMT,EAAI,GACrBA,EAAI0e,GAAKle,EAAE,GAAK,UAAY,IAC5B,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBA,EAAIT,GAAKQ,EAAE,GAAK,SAAW,IAC3B,GAAKke,IAAM,GAAKqK,EAAI,EAQ9BrK,IADAA,KADAqK,IADAA,KADAtoB,IADAA,KADAT,IADAA,IAAM0e,EAAIqK,EAAItoB,GAAKD,EAAE,GAAK,UAAY,IAC5B,EAAIR,IAAM,IAAM0e,EAAI,GACpBA,EAAIqK,GAAKvoB,EAAE,IAAM,UAAY,IAC7B,GAAKC,IAAM,IAAMT,EAAI,GACrBA,EAAI0e,GAAKle,EAAE,IAAM,UAAY,IAC7B,GAAKuoB,IAAM,IAAMtoB,EAAI,GACrBA,EAAIT,GAAKQ,EAAE,GAAK,UAAY,IAC5B,GAAKke,IAAM,GAAKqK,EAAI,EAQ9BrK,IADAA,KAHAje,IADAA,IAAMie,IADN1e,IADAA,IAAM+oB,GAAKrK,GAAKje,IAAMD,EAAE,GAAK,UAAY,IAC/B,EAAIR,IAAM,IAAM0e,EAAI,IACdqK,IAAMvoB,EAAE,GAAK,WAAa,IAChC,GAAKC,IAAM,IAAMT,EAAI,KAE/B+oB,IADAA,IAAM/oB,GAAKS,GAAKie,IAAMle,EAAE,IAAM,WAAa,IACjC,GAAKuoB,IAAM,IAAMtoB,EAAI,IACfT,IAAMQ,EAAE,GAAK,SAAW,IAC9B,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KAHAje,IADAA,IAAMie,IADN1e,IADAA,IAAM+oB,GAAKrK,GAAKje,IAAMD,EAAE,IAAM,WAAa,IACjC,EAAIR,IAAM,IAAM0e,EAAI,IACdqK,IAAMvoB,EAAE,GAAK,WAAa,IAChC,GAAKC,IAAM,IAAMT,EAAI,KAE/B+oB,IADAA,IAAM/oB,GAAKS,GAAKie,IAAMle,EAAE,IAAM,QAAU,IAC9B,GAAKuoB,IAAM,IAAMtoB,EAAI,IACfT,IAAMQ,EAAE,GAAK,WAAa,IAChC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KAHAje,IADAA,IAAMie,IADN1e,IADAA,IAAM+oB,GAAKrK,GAAKje,IAAMD,EAAE,GAAK,WAAa,IAChC,EAAIR,IAAM,IAAM0e,EAAI,IACdqK,IAAMvoB,EAAE,IAAM,SAAW,IAC/B,GAAKC,IAAM,IAAMT,EAAI,KAE/B+oB,IADAA,IAAM/oB,GAAKS,GAAKie,IAAMle,EAAE,GAAK,WAAa,IAChC,GAAKuoB,IAAM,IAAMtoB,EAAI,IACfT,IAAMQ,EAAE,IAAM,WAAa,IACjC,GAAKke,IAAM,IAAMqK,EAAI,EAQ/BrK,IADAA,KAHAje,IADAA,IAAMie,IADN1e,IADAA,IAAM+oB,GAAKrK,GAAKje,IAAMD,EAAE,GAAK,UAAY,IAC/B,EAAIR,IAAM,IAAM0e,EAAI,IACdqK,IAAMvoB,EAAE,IAAM,WAAa,IACjC,GAAKC,IAAM,IAAMT,EAAI,KAE/B+oB,IADAA,IAAM/oB,GAAKS,GAAKie,IAAMle,EAAE,GAAK,UAAY,IAC/B,GAAKuoB,IAAM,IAAMtoB,EAAI,IACfT,IAAMQ,EAAE,GAAK,UAAY,IAC/B,GAAKke,IAAM,IAAMqK,EAAI,EAC/BzpB,EAAE,GAAKU,EAAIV,EAAE,GAAK,EAClBA,EAAE,GAAKof,EAAIpf,EAAE,GAAK,EAClBA,EAAE,GAAKypB,EAAIzpB,EAAE,GAAK,EAClBA,EAAE,GAAKmB,EAAInB,EAAE,GAAK,CACpB,CACA,SAAS0pB,EAAO7Z,GACd,IAAkBpG,EAAdkgB,EAAU,GACd,IAAKlgB,EAAI,EAAGA,EAAI,GAAIA,GAAK,EACvBkgB,EAAQlgB,GAAK,GAAKoG,EAAE+Z,WAAWngB,IAAMoG,EAAE+Z,WAAWngB,EAAI,IAAM,IAAMoG,EAAE+Z,WAAWngB,EAAI,IAAM,KAAOoG,EAAE+Z,WAAWngB,EAAI,IAAM,IAEzH,OAAOkgB,CACT,CACA,SAASE,EAAanpB,GACpB,IAAkB+I,EAAdkgB,EAAU,GACd,IAAKlgB,EAAI,EAAGA,EAAI,GAAIA,GAAK,EACvBkgB,EAAQlgB,GAAK,GAAK/I,EAAE+I,IAAM/I,EAAE+I,EAAI,IAAM,IAAM/I,EAAE+I,EAAI,IAAM,KAAO/I,EAAE+I,EAAI,IAAM,IAE7E,OAAOkgB,CACT,CACA,SAASG,EAAKja,GACZ,IAA8EpG,EAAGhD,EAAQsjB,EAAMC,EAAKC,EAAIC,EAApG3pB,EAAIsP,EAAEpJ,OAAQ4f,EAAQ,CAAE,YAAa,WAAY,WAAY,WACjE,IAAK5c,EAAI,GAAIA,GAAKlJ,EAAGkJ,GAAK,GACxB+f,EAASnD,EAAOqD,EAAO7Z,EAAEsa,UAAU1gB,EAAI,GAAIA,KAK7C,IAFAhD,GADAoJ,EAAIA,EAAEsa,UAAU1gB,EAAI,KACThD,OACXsjB,EAAO,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACjDtgB,EAAI,EAAGA,EAAIhD,EAAQgD,GAAK,EAC3BsgB,EAAKtgB,GAAK,IAAMoG,EAAE+Z,WAAWngB,KAAOA,EAAI,GAAK,GAG/C,GADAsgB,EAAKtgB,GAAK,IAAM,MAAQA,EAAI,GAAK,GAC7BA,EAAI,GAEN,IADA+f,EAASnD,EAAO0D,GACXtgB,EAAI,EAAGA,EAAI,GAAIA,GAAK,EACvBsgB,EAAKtgB,GAAK,EAUd,OANAugB,GADAA,EAAU,EAAJzpB,GACI+K,SAAS,IAAI0N,MAAM,kBAC7BiR,EAAKG,SAASJ,EAAI,GAAI,IACtBE,EAAKE,SAASJ,EAAI,GAAI,KAAO,EAC7BD,EAAK,IAAME,EACXF,EAAK,IAAMG,EACXV,EAASnD,EAAO0D,GACT1D,CACT,CACA,SAASgE,EAAW3pB,GAClB,IAA8E+I,EAAGhD,EAAQsjB,EAAMC,EAAKC,EAAIC,EAApG3pB,EAAIG,EAAE+F,OAAQ4f,EAAQ,CAAE,YAAa,WAAY,WAAY,WACjE,IAAK5c,EAAI,GAAIA,GAAKlJ,EAAGkJ,GAAK,GACxB+f,EAASnD,EAAOwD,EAAanpB,EAAE4pB,SAAS7gB,EAAI,GAAIA,KAKlD,IAFAhD,GADA/F,EAAI+I,EAAI,GAAKlJ,EAAIG,EAAE4pB,SAAS7gB,EAAI,IAAM,IAAI8gB,WAAW,IAC1C9jB,OACXsjB,EAAO,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACjDtgB,EAAI,EAAGA,EAAIhD,EAAQgD,GAAK,EAC3BsgB,EAAKtgB,GAAK,IAAM/I,EAAE+I,KAAOA,EAAI,GAAK,GAGpC,GADAsgB,EAAKtgB,GAAK,IAAM,MAAQA,EAAI,GAAK,GAC7BA,EAAI,GAEN,IADA+f,EAASnD,EAAO0D,GACXtgB,EAAI,EAAGA,EAAI,GAAIA,GAAK,EACvBsgB,EAAKtgB,GAAK,EAUd,OANAugB,GADAA,EAAU,EAAJzpB,GACI+K,SAAS,IAAI0N,MAAM,kBAC7BiR,EAAKG,SAASJ,EAAI,GAAI,IACtBE,EAAKE,SAASJ,EAAI,GAAI,KAAO,EAC7BD,EAAK,IAAME,EACXF,EAAK,IAAMG,EACXV,EAASnD,EAAO0D,GACT1D,CACT,CACA,SAASmE,EAAKjqB,GACZ,IAAYkqB,EAAR5a,EAAI,GACR,IAAK4a,EAAI,EAAGA,EAAI,EAAGA,GAAK,EACtB5a,GAAK0Z,EAAQhpB,GAAS,EAAJkqB,EAAQ,EAAI,IAAMlB,EAAQhpB,GAAS,EAAJkqB,EAAQ,IAE3D,OAAO5a,CACT,CACA,SAAS6a,EAAI1qB,GACX,IAAIyJ,EACJ,IAAKA,EAAI,EAAGA,EAAIzJ,EAAEyG,OAAQgD,GAAK,EAC7BzJ,EAAEyJ,GAAK+gB,EAAKxqB,EAAEyJ,IAEhB,OAAOzJ,EAAEqN,KAAK,GAChB,CA4BA,SAASsd,EAAOC,GAId,MAHI,kBAAkBzf,KAAKyf,KACzBA,EAAMC,SAASC,mBAAmBF,KAE7BA,CACT,CACA,SAASG,EAAoBH,EAAKI,GAChC,IAAqFvhB,EAAjFhD,EAASmkB,EAAInkB,OAAQwkB,EAAO,IAAIC,YAAYzkB,GAAS0kB,EAAM,IAAIZ,WAAWU,GAC9E,IAAKxhB,EAAI,EAAGA,EAAIhD,EAAQgD,GAAK,EAC3B0hB,EAAI1hB,GAAKmhB,EAAIhB,WAAWngB,GAE1B,OAAOuhB,EAAmBG,EAAMF,CAClC,CACA,SAASG,EAAoBH,GAC3B,OAAO7e,OAAOif,aAAa1qB,MAAM,KAAM,IAAI4pB,WAAWU,GACxD,CACA,SAASK,EAAwBC,EAAOC,EAAQR,GAC9C,IAAIvmB,EAAS,IAAI8lB,WAAWgB,EAAME,WAAaD,EAAOC,YAGtD,OAFAhnB,EAAOinB,IAAI,IAAInB,WAAWgB,IAC1B9mB,EAAOinB,IAAI,IAAInB,WAAWiB,GAASD,EAAME,YAClCT,EAAmBvmB,EAASA,EAAOknB,MAC5C,CACA,SAASC,EAAkBlB,GACzB,IAAqC1qB,EAAjC6rB,EAAQ,GAAIplB,EAASikB,EAAIjkB,OAC7B,IAAKzG,EAAI,EAAGA,EAAIyG,EAAS,EAAGzG,GAAK,EAC/B6rB,EAAMrpB,KAAK4nB,SAASM,EAAI1Q,OAAOha,EAAG,GAAI,KAExC,OAAOoM,OAAOif,aAAa1qB,MAAMyL,OAAQyf,EAC3C,CACA,SAASC,IACPlrB,KAAKmrB,OACP,CA0HA,OApLIrB,EAAIZ,EAAK,UACc,oBAAhBoB,aAAgCA,YAAY/qB,UAAU0N,OAC/D,WACE,SAASme,EAAMC,EAAKxlB,GAElB,OADAwlB,EAAY,EAANA,GAAW,GACP,EACD5H,KAAK6H,IAAID,EAAMxlB,EAAQ,GAEzB4d,KAAKE,IAAI0H,EAAKxlB,EACvB,CACAykB,YAAY/qB,UAAU0N,MAAQ,SAAS2P,EAAMC,GAC3C,IAAyE0O,EAAK9P,EAAQ+P,EAAaC,EAA/F5lB,EAAS7F,KAAK6qB,WAAYa,EAAQN,EAAMxO,EAAM/W,GAASkI,EAAMlI,EAIjE,OAHIgX,IAAO6L,IACT3a,EAAMqd,EAAMvO,EAAIhX,IAEd6lB,EAAQ3d,EACH,IAAIuc,YAAY,IAEzBiB,EAAMxd,EAAM2d,EACZjQ,EAAS,IAAI6O,YAAYiB,GACzBC,EAAc,IAAI7B,WAAWlO,GAC7BgQ,EAAc,IAAI9B,WAAW3pB,KAAM0rB,EAAOH,GAC1CC,EAAYV,IAAIW,GACThQ,EACT,CACD,CAvBD,GAyDFyP,EAAS3rB,UAAUosB,OAAS,SAAS3B,GAEnC,OADAhqB,KAAK4rB,aAAa7B,EAAOC,IAClBhqB,IACT,EACAkrB,EAAS3rB,UAAUqsB,aAAe,SAASxd,GACzCpO,KAAK6rB,OAASzd,EACdpO,KAAK8rB,SAAW1d,EAASvI,OACzB,IAAgCgD,EAA5BhD,EAAS7F,KAAK6rB,MAAMhmB,OACxB,IAAKgD,EAAI,GAAIA,GAAKhD,EAAQgD,GAAK,GAC7B+f,EAAS5oB,KAAK+rB,MAAOjD,EAAO9oB,KAAK6rB,MAAMtC,UAAU1gB,EAAI,GAAIA,KAG3D,OADA7I,KAAK6rB,MAAQ7rB,KAAK6rB,MAAMtC,UAAU1gB,EAAI,IAC/B7I,IACT,EACAkrB,EAAS3rB,UAAUwO,IAAM,SAASie,GAChC,IAA6CnjB,EAA8DiC,EAAvGuf,EAAOrqB,KAAK6rB,MAAOhmB,EAASwkB,EAAKxkB,OAAWsjB,EAAO,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACtG,IAAKtgB,EAAI,EAAGA,EAAIhD,EAAQgD,GAAK,EAC3BsgB,EAAKtgB,GAAK,IAAMwhB,EAAKrB,WAAWngB,KAAOA,EAAI,GAAK,GAQlD,OANA7I,KAAKisB,QAAQ9C,EAAMtjB,GACnBiF,EAAMgf,EAAI9pB,KAAK+rB,OACXC,IACFlhB,EAAMkgB,EAAkBlgB,IAE1B9K,KAAKmrB,QACErgB,CACT,EACAogB,EAAS3rB,UAAU4rB,MAAQ,WAIzB,OAHAnrB,KAAK6rB,MAAQ,GACb7rB,KAAK8rB,QAAU,EACf9rB,KAAK+rB,MAAQ,CAAE,YAAa,WAAY,WAAY,WAC7C/rB,IACT,EACAkrB,EAAS3rB,UAAUwlB,SAAW,WAC5B,MAAO,CACLsF,KAAMrqB,KAAK6rB,MACXhmB,OAAQ7F,KAAK8rB,QACbI,KAAMlsB,KAAK+rB,MAAM9e,QAErB,EACAie,EAAS3rB,UAAU4sB,SAAW,SAAS1G,GAIrC,OAHAzlB,KAAK6rB,MAAQpG,EAAM4E,KACnBrqB,KAAK8rB,QAAUrG,EAAM5f,OACrB7F,KAAK+rB,MAAQtG,EAAMyG,KACZlsB,IACT,EACAkrB,EAAS3rB,UAAU6sB,QAAU,kBACpBpsB,KAAK+rB,aACL/rB,KAAK6rB,aACL7rB,KAAK8rB,OACd,EACAZ,EAAS3rB,UAAU0sB,QAAU,SAAS9C,EAAMtjB,GAC1C,IAAgBujB,EAAKC,EAAIC,EAArBzgB,EAAIhD,EAER,GADAsjB,EAAKtgB,GAAK,IAAM,MAAQA,EAAI,GAAK,GAC7BA,EAAI,GAEN,IADA+f,EAAS5oB,KAAK+rB,MAAO5C,GAChBtgB,EAAI,EAAGA,EAAI,GAAIA,GAAK,EACvBsgB,EAAKtgB,GAAK,EAIdugB,GADAA,EAAqB,EAAfppB,KAAK8rB,SACDphB,SAAS,IAAI0N,MAAM,kBAC7BiR,EAAKG,SAASJ,EAAI,GAAI,IACtBE,EAAKE,SAASJ,EAAI,GAAI,KAAO,EAC7BD,EAAK,IAAME,EACXF,EAAK,IAAMG,EACXV,EAAS5oB,KAAK+rB,MAAO5C,EACvB,EACA+B,EAASgB,KAAO,SAASlC,EAAKgC,GAC5B,OAAOd,EAASmB,WAAWtC,EAAOC,GAAMgC,EAC1C,EACAd,EAASmB,WAAa,SAASC,EAASN,GACtC,IAA0BlhB,EAAMgf,EAArBZ,EAAKoD,IAChB,OAAON,EAAMhB,EAAkBlgB,GAAOA,CACxC,EACAogB,EAASZ,YAAc,WACrBtqB,KAAKmrB,OACP,EACAD,EAASZ,YAAY/qB,UAAUosB,OAAS,SAASpB,GAC/C,IAAwF1hB,EAApFwhB,EAAOK,EAAwB1qB,KAAK6rB,MAAMd,OAAQR,GAAK,GAAO1kB,EAASwkB,EAAKxkB,OAEhF,IADA7F,KAAK8rB,SAAWvB,EAAIM,WACfhiB,EAAI,GAAIA,GAAKhD,EAAQgD,GAAK,GAC7B+f,EAAS5oB,KAAK+rB,MAAO9C,EAAaoB,EAAKX,SAAS7gB,EAAI,GAAIA,KAG1D,OADA7I,KAAK6rB,MAAQhjB,EAAI,GAAKhD,EAAS,IAAI8jB,WAAWU,EAAKU,OAAO9d,MAAMpE,EAAI,KAAO,IAAI8gB,WAAW,GACnF3pB,IACT,EACAkrB,EAASZ,YAAY/qB,UAAUwO,IAAM,SAASie,GAC5C,IAAwGnjB,EAAGiC,EAAvGuf,EAAOrqB,KAAK6rB,MAAOhmB,EAASwkB,EAAKxkB,OAAQsjB,EAAO,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACnG,IAAKtgB,EAAI,EAAGA,EAAIhD,EAAQgD,GAAK,EAC3BsgB,EAAKtgB,GAAK,IAAMwhB,EAAKxhB,KAAOA,EAAI,GAAK,GAQvC,OANA7I,KAAKisB,QAAQ9C,EAAMtjB,GACnBiF,EAAMgf,EAAI9pB,KAAK+rB,OACXC,IACFlhB,EAAMkgB,EAAkBlgB,IAE1B9K,KAAKmrB,QACErgB,CACT,EACAogB,EAASZ,YAAY/qB,UAAU4rB,MAAQ,WAIrC,OAHAnrB,KAAK6rB,MAAQ,IAAIlC,WAAW,GAC5B3pB,KAAK8rB,QAAU,EACf9rB,KAAK+rB,MAAQ,CAAE,YAAa,WAAY,WAAY,WAC7C/rB,IACT,EACAkrB,EAASZ,YAAY/qB,UAAUwlB,SAAW,WACxC,IAAIU,EAAQyF,EAAS3rB,UAAUwlB,SAAStlB,KAAKO,MAE7C,OADAylB,EAAM4E,KAAOG,EAAoB/E,EAAM4E,MAChC5E,CACT,EACAyF,EAASZ,YAAY/qB,UAAU4sB,SAAW,SAAS1G,GAEjD,OADAA,EAAM4E,KAAOF,EAAoB1E,EAAM4E,MAAM,GACtCa,EAAS3rB,UAAU4sB,SAAS1sB,KAAKO,KAAMylB,EAChD,EACAyF,EAASZ,YAAY/qB,UAAU6sB,QAAUlB,EAAS3rB,UAAU6sB,QAC5DlB,EAASZ,YAAY/qB,UAAU0sB,QAAUf,EAAS3rB,UAAU0sB,QAC5Df,EAASZ,YAAY4B,KAAO,SAAS3B,EAAKyB,GACxC,IAA4ClhB,EAAMgf,EAAvCL,EAAW,IAAIE,WAAWY,KACrC,OAAOyB,EAAMhB,EAAkBlgB,GAAOA,CACxC,EACOogB,CACT,CAlZqBhL,GAqZvB,IAAIgL,EAAWzC,EAAS5pB,QAExB,MAAM0tB,EAAYC,KAAKjtB,UAAU0N,OAASuf,KAAKjtB,UAAUktB,UAAYD,KAAKjtB,UAAUmtB,YAEpF,MAAMC,EACJ,aAAOzpB,CAAOb,EAAMyM,GACD,IAAI6d,EAAatqB,GACzBa,OAAO4L,EAClB,CACA,WAAA6P,CAAYtc,GACVrC,KAAKqC,KAAOA,EACZrC,KAAK4sB,UAAY,QACjB5sB,KAAK6sB,WAAapJ,KAAKqJ,KAAK9sB,KAAKqC,KAAK0qB,KAAO/sB,KAAK4sB,WAClD5sB,KAAKgtB,WAAa,CACpB,CACA,MAAA9pB,CAAO4L,GACL9O,KAAK8O,SAAWA,EAChB9O,KAAKitB,UAAY,IAAI/B,EAASZ,YAC9BtqB,KAAKktB,WAAa,IAAIC,WACtBntB,KAAKktB,WAAW5R,iBAAiB,QAASC,GAASvb,KAAKotB,kBAAkB7R,KAC1Evb,KAAKktB,WAAW5R,iBAAiB,SAAUC,GAASvb,KAAKqtB,mBAAmB9R,KAC5Evb,KAAKstB,eACP,CACA,iBAAAF,CAAkB7R,GAEhB,GADAvb,KAAKitB,UAAUtB,OAAOpQ,EAAME,OAAO5X,SAC9B7D,KAAKstB,gBAAiB,CACzB,MAAMC,EAAevtB,KAAKitB,UAAUlf,KAAI,GAClCyf,EAAeC,KAAKF,GAC1BvtB,KAAK8O,SAAS,KAAM0e,EACtB,CACF,CACA,kBAAAH,CAAmB9R,GACjBvb,KAAK8O,SAAS,iBAAiB9O,KAAKqC,KAAK8G,OAC3C,CACA,aAAAmkB,GACE,GAAIttB,KAAKgtB,WAAahtB,KAAK6sB,YAAiC,GAAnB7sB,KAAKgtB,YAAsC,GAAnBhtB,KAAK6sB,WAAiB,CACrF,MAAMvK,EAAQtiB,KAAKgtB,WAAahtB,KAAK4sB,UAC/B7e,EAAM0V,KAAKE,IAAIrB,EAAQtiB,KAAK4sB,UAAW5sB,KAAKqC,KAAK0qB,MACjD9B,EAAQsB,EAAU9sB,KAAKO,KAAKqC,KAAMigB,EAAOvU,GAG/C,OAFA/N,KAAKktB,WAAWQ,kBAAkBzC,GAClCjrB,KAAKgtB,cACE,CACT,CACE,OAAO,CAEX,EAmBF,SAASW,EAAYC,EAAMpS,GAKzB,MAJmB,iBAARoS,IACTpS,EAAWoS,EACXA,EAAOnW,UAEFmW,EAAKtF,cAAc9M,EAC5B,CAEA,SAASqS,EAAczX,EAASrJ,EAAM+gB,EAAY,CAAC,GACjD,MAAM,SAACC,GAAsB3X,GACvB,QAAC4X,EAAO,WAAWC,EAAU,OAAcC,GAAkBJ,EAC7DvS,EAAQ9D,SAAS0W,YAAY,SACnC5S,EAAM6S,UAAUrhB,EAAMihB,IAAW,EAAMC,IAAc,GACrD1S,EAAM2S,OAASA,GAAU,CAAC,EAC1B,IACE9X,EAAQ2X,UAAW,EACnB3X,EAAQyX,cAActS,EACxB,CAAE,QACAnF,EAAQ2X,SAAWA,CACrB,CACA,OAAOxS,CACT,CAEA,SAAS8S,EAAQluB,GACf,OAAIwK,MAAMC,QAAQzK,GACTA,EACEwK,MAAMiS,KACRjS,MAAMiS,KAAKzc,GAEX,GAAG8M,MAAMxN,KAAKU,EAEzB,CAEA,MAAMmuB,EACJ,WAAA3P,CAAYtc,EAAMksB,EAAUrhB,EAAKshB,EAAgB,CAAC,GAChDxuB,KAAKqC,KAAOA,EACZrC,KAAKyuB,WAAa,CAChBC,SAAUrsB,EAAK8G,KACfwlB,aAActsB,EAAK0K,MAAQ,2BAC3B6hB,UAAWvsB,EAAK0qB,KAChBwB,YAEFvuB,KAAK4b,IAAM,IAAID,eACf3b,KAAK4b,IAAI4I,KAAK,OAAQtX,GAAK,GAC3BlN,KAAK4b,IAAIiT,aAAe,OACxB7uB,KAAK4b,IAAIkT,iBAAiB,eAAgB,oBAC1C9uB,KAAK4b,IAAIkT,iBAAiB,SAAU,oBACpC9uB,KAAK4b,IAAIkT,iBAAiB,mBAAoB,kBAC9CxvB,OAAOc,KAAKouB,GAAenuB,SAAS0uB,IAClC/uB,KAAK4b,IAAIkT,iBAAiBC,EAAWP,EAAcO,GAAW,IAEhE,MAAMC,EAnEV,SAAsB7lB,GACpB,MAAMiN,EAAUuX,EAAYlW,SAASK,KAAM,cAAc3O,OACzD,GAAIiN,EACF,OAAOA,EAAQG,aAAa,UAEhC,CA8DsB0Y,CAAa,cACd,MAAbD,GACFhvB,KAAK4b,IAAIkT,iBAAiB,eAAgBE,GAE5ChvB,KAAK4b,IAAIN,iBAAiB,QAASC,GAASvb,KAAKkvB,eAAe3T,KAChEvb,KAAK4b,IAAIN,iBAAiB,SAAUC,GAASvb,KAAKmvB,gBAAgB5T,IACpE,CACA,UAAIrG,GACF,OAAOlV,KAAK4b,IAAI1G,MAClB,CACA,YAAImH,GACF,MAAM,aAACwS,EAAY,SAAgBxS,GAAsBrc,KAAK4b,IAC9D,MAAoB,QAAhBiT,EACKxS,EAEA3O,KAAK1M,MAAMqb,EAEtB,CACA,MAAAnZ,CAAO4L,GACL9O,KAAK8O,SAAWA,EAChB9O,KAAK4b,IAAIpG,KAAK9H,KAAKC,UAAU,CAC3ByhB,KAAMpvB,KAAKyuB,aAEf,CACA,cAAAS,CAAe3T,GACb,GAAIvb,KAAKkV,QAAU,KAAOlV,KAAKkV,OAAS,IAAK,CAC3C,MAAM,SAACmH,GAAsBrc,MACvB,cAACqvB,GAAgChT,SAChCA,EAASgT,cAChBrvB,KAAKyuB,WAAapS,EAClBrc,KAAKsvB,iBAAmBD,EACxBrvB,KAAK8O,SAAS,KAAM9O,KAAKuvB,SAC3B,MACEvvB,KAAKmvB,gBAAgB5T,EAEzB,CACA,eAAA4T,CAAgB5T,GACdvb,KAAK8O,SAAS,4BAA4B9O,KAAKqC,KAAK8G,kBAAkBnJ,KAAKkV,SAC7E,CACA,MAAAqa,GACE,MAAM1rB,EAAS,CAAC,EAChB,UAAWiJ,KAAO9M,KAAKyuB,WACrB5qB,EAAOiJ,GAAO9M,KAAKyuB,WAAW3hB,GAEhC,OAAOjJ,CACT,EAGF,MAAM2rB,EACJ,WAAA7Q,CAAYyQ,GACVpvB,KAAKovB,KAAOA,EACZpvB,KAAKqC,KAAO+sB,EAAK/sB,KACjB,MAAM,IAAC6K,EAAG,QAAO2G,GAAoBub,EAAKE,iBAC1CtvB,KAAK4b,IAAM,IAAID,eACf3b,KAAK4b,IAAI4I,KAAK,MAAOtX,GAAK,GAC1BlN,KAAK4b,IAAIiT,aAAe,OACxB,UAAW/hB,KAAO+G,EAChB7T,KAAK4b,IAAIkT,iBAAiBhiB,EAAK+G,EAAQ/G,IAEzC9M,KAAK4b,IAAIN,iBAAiB,QAASC,GAASvb,KAAKkvB,eAAe3T,KAChEvb,KAAK4b,IAAIN,iBAAiB,SAAUC,GAASvb,KAAKmvB,gBAAgB5T,IACpE,CACA,MAAArY,CAAO4L,GACL9O,KAAK8O,SAAWA,EAChB9O,KAAK4b,IAAIpG,KAAKxV,KAAKqC,KAAK4K,QAC1B,CACA,cAAAiiB,CAAe3T,GACb,MAAM,OAACrG,EAAM,SAAUmH,GAAsBrc,KAAK4b,IAC9C1G,GAAU,KAAOA,EAAS,IAC5BlV,KAAK8O,SAAS,KAAMuN,GAEpBrc,KAAKmvB,gBAAgB5T,EAEzB,CACA,eAAA4T,CAAgB5T,GACdvb,KAAK8O,SAAS,kBAAkB9O,KAAKqC,KAAK8G,kBAAkBnJ,KAAK4b,IAAI1G,SACvE,EAGF,IAAIU,EAAK,EAET,MAAM6Z,EACJ,WAAA9Q,CAAYtc,EAAM6K,EAAKwiB,EAAUlB,EAAgB,CAAC,GAChDxuB,KAAK4V,KAAOA,EACZ5V,KAAKqC,KAAOA,EACZrC,KAAKkN,IAAMA,EACXlN,KAAK0vB,SAAWA,EAChB1vB,KAAKwuB,cAAgBA,CACvB,CACA,MAAAtrB,CAAO4L,GACL6d,EAAazpB,OAAOlD,KAAKqC,MAAO,CAAC2H,EAAOukB,KACtC,GAAIvkB,EAEF,YADA8E,EAAS9E,GAGX,MAAMolB,EAAO,IAAId,EAAWtuB,KAAKqC,KAAMksB,EAAUvuB,KAAKkN,IAAKlN,KAAKwuB,eAChEvc,EAAOjS,KAAK0vB,SAAU,oCAAqCN,EAAKxT,KAChEwT,EAAKlsB,QAAQ8G,IACX,GAAIA,EACF8E,EAAS9E,OACJ,CACL,MAAM2lB,EAAS,IAAIH,EAAWJ,GAC9Bnd,EAAOjS,KAAK0vB,SAAU,mCAAoCC,EAAO/T,KACjE+T,EAAOzsB,QAAQ8G,IACTA,EACF8E,EAAS9E,GAET8E,EAAS,KAAMsgB,EAAKG,SACtB,GAEJ,IACC,GAEP,EAGF,SAAStd,EAAOvG,EAAQpJ,KAAesf,GACrC,GAAIlW,GAAuC,mBAAtBA,EAAOpJ,GAC1B,OAAOoJ,EAAOpJ,MAAesf,EAEjC,CAEA,MAAMgO,EACJ,WAAAjR,CAAYxC,EAAO9Z,GACjBrC,KAAKmc,MAAQA,EACbnc,KAAKqC,KAAOA,EACZrC,KAAK6vB,aAAe,IAAIJ,EAAazvB,KAAKqC,KAAMrC,KAAKkN,IAAKlN,MAC1DA,KAAK8vB,SAAS,aAChB,CACA,KAAAxN,CAAMxT,GACJ,MAAMihB,EAActY,SAASE,cAAc,SAC3CoY,EAAYhjB,KAAO,SACnBgjB,EAAY5mB,KAAOnJ,KAAKmc,MAAMhT,KAC9BnJ,KAAKmc,MAAM6T,sBAAsB,cAAeD,GAChD/vB,KAAK8vB,SAAS,SACd9vB,KAAK6vB,aAAa3sB,QAAQ,CAAC8G,EAAOykB,KAC5BzkB,GACF+lB,EAAYjZ,WAAWmB,YAAY8X,GACnC/vB,KAAKiwB,cAAcjmB,IAEnB+lB,EAAY5vB,MAAQsuB,EAAWyB,UAEjClwB,KAAK8vB,SAAS,OACdhhB,EAAS9E,EAAM,GAEnB,CACA,wBAAAmmB,CAAyB5U,GACvB,MAAM6U,EAAW7U,EAAM8U,OAAS9U,EAAM+U,MAAQ,IAC1CF,GACFpwB,KAAK8vB,SAAS,WAAY,CACxBM,YAGN,CACA,OAAIljB,GACF,OAAOlN,KAAKmc,MAAM5F,aAAa,yBACjC,CACA,QAAAuZ,CAAS3mB,EAAM+kB,EAAS,CAAC,GAGvB,OAFAA,EAAO7rB,KAAOrC,KAAKqC,KACnB6rB,EAAOtY,GAAK5V,KAAK6vB,aAAaja,GACvBiY,EAAc7tB,KAAKmc,MAAO,iBAAiBhT,IAAQ,CACxD+kB,UAEJ,CACA,aAAA+B,CAAcjmB,GACEhK,KAAK8vB,SAAS,QAAS,CACnC9lB,UAESumB,kBACTC,MAAMxmB,EAEV,CACA,iCAAAymB,CAAkC7U,GAChC5b,KAAK8vB,SAAS,sBAAuB,CACnClU,OAEJ,CACA,gCAAA8U,CAAiC9U,GAC/B5b,KAAK8vB,SAAS,yBAA0B,CACtClU,QAEFA,EAAI+T,OAAOrU,iBAAiB,YAAaC,GAASvb,KAAKmwB,yBAAyB5U,IAClF,EAKF,MAAMoV,EACJ,WAAAhS,CAAYiS,GAxPd,IAAsBhD,EAAMpS,EAyPxBxb,KAAK4wB,KAAOA,EACZ5wB,KAAK6wB,QA1PajD,EA0PSgD,EA1PHpV,EAqPN,2DApPD,iBAARoS,IACTpS,EAAWoS,EACXA,EAAOnW,UAGF4W,EADUT,EAAKkD,iBAAiBtV,KAqPWtV,QAAQiW,GAASA,EAAM4U,MAAMlrB,QAC/E,CACA,KAAAyc,CAAMxT,GACJ,MAAMkiB,EAAchxB,KAAKixB,gCACnBC,EAAsB,KAC1B,MAAMC,EAAaH,EAAYpoB,QAC3BuoB,EACFA,EAAW7O,OAAOtY,IACZA,GACF8E,EAAS9E,GACThK,KAAK8vB,SAAS,QAEdoB,GACF,KAGFpiB,IACA9O,KAAK8vB,SAAS,OAChB,EAEF9vB,KAAK8vB,SAAS,SACdoB,GACF,CACA,6BAAAD,GACE,MAAMD,EAAc,GAOpB,OANAhxB,KAAK6wB,OAAOxwB,SAAS8b,IACnBkS,EAAQlS,EAAM4U,OAAO1wB,SAASgC,IAC5B,MAAM8uB,EAAa,IAAIvB,EAAuBzT,EAAO9Z,GACrD2uB,EAAYpvB,KAAKuvB,EAAW,GAC3B,IAEEH,CACT,CACA,QAAAlB,CAAS3mB,EAAM+kB,EAAS,CAAC,GACvB,OAAOL,EAAc7tB,KAAK4wB,KAAM,kBAAkBznB,IAAQ,CACxD+kB,UAEJ,EAGF,MAAMkD,EAAsB,iCAEtBC,EAAsB,IAAIC,QAEhC,IAAIC,GAAU,EAWd,SAASC,EAASjW,GAChB,MAAMkW,EAASlW,EAAME,OAAOiW,QAAQ,iBAChCD,GAA0B,WAAhBA,EAAO1kB,MAAqB0kB,EAAOb,MAC/CS,EAAoBvG,IAAI2G,EAAOb,KAAMa,EAEzC,CAEA,SAASE,EAAcpW,GACrBqW,EAA0BrW,EAC5B,CAEA,SAASsW,EAAuBtW,GACF,QAAxBA,EAAME,OAAOpF,SACfub,EAA0BrW,EAE9B,CAEA,SAASqW,EAA0BrW,GACjC,MAAMqV,EAAOrV,EAAME,OACnB,GAAImV,EAAKkB,aAAaV,GAEpB,YADA7V,EAAMwW,iBAGR,MAAMZ,EAAa,IAAIR,EAAwBC,IACzC,OAACC,GAAkBM,EACrBN,EAAOhrB,SACT0V,EAAMwW,iBACNnB,EAAKlQ,aAAa0Q,EAAqB,IACvCP,EAAOxwB,QAAQ2xB,GACfb,EAAW7O,OAAOtY,IAChB4mB,EAAKqB,gBAAgBb,GACjBpnB,EACF6mB,EAAOxwB,QAAQ6xB,GAQvB,SAAoBtB,GAClB,IAAIa,EAASJ,EAAoB5wB,IAAImwB,IAASjD,EAAYiD,EAAM,2CAChE,GAAIa,EAAQ,CACV,MAAM,SAAC1D,GAAsB0D,EAC7BA,EAAO1D,UAAW,EAClB0D,EAAOU,QACPV,EAAOW,QACPX,EAAO1D,SAAWA,CACpB,MACE0D,EAASha,SAASE,cAAc,SAChC8Z,EAAO1kB,KAAO,SACd0kB,EAAO7Z,MAAMC,QAAU,OACvB+Y,EAAK7Y,YAAY0Z,GACjBA,EAAOW,QACPxB,EAAK3Y,YAAYwZ,GAEnBJ,EAAoBgB,OAAOzB,EAC7B,CAvBQ0B,CAAW1B,EACb,IAGN,CAqBA,SAASoB,EAAQ7V,GACfA,EAAM4R,UAAW,CACnB,CAEA,SAASmE,EAAO/V,GACdA,EAAM4R,UAAW,CACnB,CAQA7T,YANA,WACMlb,OAAOuzB,gBA5ENhB,IACHA,GAAU,EACV9Z,SAAS6D,iBAAiB,QAASkW,GAAU,GAC7C/Z,SAAS6D,iBAAiB,SAAUqW,GAAe,GACnDla,SAAS6D,iBAAiB,cAAeuW,IA2E7C,GAEsB,GAEtB,MAAMW,EACJ,WAAA7T,CAAY8T,EAAYrc,GACtBpW,KAAKyyB,WAAaA,EAClBzyB,KAAKoW,QAAUA,EACfpW,KAAK6vB,aAAe,IAAIJ,EAAagD,EAAWpwB,KAAMrC,KAAK0yB,gBAAiB1yB,KAC9E,CACA,KAAAsiB,GACEtiB,KAAK6vB,aAAa3sB,OAAOlD,KAAK2yB,wBAAwBvQ,KAAKpiB,MAC7D,CACA,gCAAA0wB,CAAiC9U,GAC/BA,EAAI+T,OAAOrU,iBAAiB,YAAaC,IACvC,MAAM6U,EAAW7U,EAAM8U,OAAS9U,EAAM+U,MAAQ,IAC9CtwB,KAAKyyB,WAAWG,kBAAkBxC,EAAS,GAE/C,CACA,uBAAAuC,CAAwB3oB,EAAOykB,GAC7B,GAAIzkB,EACF,MAAM,IAAIyB,MAAM,yBAAyBzB,KAE3ChK,KAAKyyB,WAAWI,cAAc,CAC5BC,KAAMrE,EAAWsE,gBACjB7lB,IAAKlN,KAAKgzB,cAAcvE,EAAWyB,UAAWzB,EAAWC,WAE7D,CACA,aAAAsE,CAAcC,EAAUvE,GACtB,OAAO1uB,KAAKkzB,gBAAgBhnB,QAAQ,aAAc+mB,GAAU/mB,QAAQ,YAAage,mBAAmBwE,GACtG,CACA,mBAAIgE,GACF,OAAO1yB,KAAKoW,QAAQ+c,QAAQT,eAC9B,CACA,mBAAIQ,GACF,OAAOlzB,KAAKoW,QAAQ+c,QAAQD,eAC9B,EAGF5X,iBAAiB,uBAAwBC,IACvC,MAAM,WAACkX,EAAU,OAAchX,GAAkBF,EACjD,GAAIkX,EAAWpwB,KAAM,CACJ,IAAImwB,EAAiBC,EAAYhX,GACzC6G,OACT,2BCn3BO,SAAUzjB,EAASu0B,GAAS,aAInC,SAASC,EAAQ3nB,EAAQ4nB,GACvB,IAAIlzB,EAAOd,OAAOc,KAAKsL,GAEvB,GAAIpM,OAAOi0B,sBAAuB,CAChC,IAAIC,EAAUl0B,OAAOi0B,sBAAsB7nB,GAEvC4nB,IACFE,EAAUA,EAAQttB,QAAO,SAAUutB,GACjC,OAAOn0B,OAAOkB,yBAAyBkL,EAAQ+nB,GAAK/yB,UACtD,KAGFN,EAAKwB,KAAK7B,MAAMK,EAAMozB,EACxB,CAEA,OAAOpzB,CACT,CAEA,SAASszB,EAAejY,GACtB,QAAS5S,EAAI,EAAGA,EAAI5I,UAAU4F,OAAQgD,IAAK,CACzC,IAAI0M,EAAyB,MAAhBtV,UAAU4I,GAAa5I,UAAU4I,GAAK,CAAC,EAEhDA,EAAI,EACNwqB,EAAQ/zB,OAAOiW,IAAS,GAAMlV,SAAQ,SAAUyM,GAC9C6mB,EAAgBlY,EAAQ3O,EAAKyI,EAAOzI,GACtC,IACSxN,OAAOs0B,0BAChBt0B,OAAOu0B,iBAAiBpY,EAAQnc,OAAOs0B,0BAA0Bre,IAEjE8d,EAAQ/zB,OAAOiW,IAASlV,SAAQ,SAAUyM,GACxCxN,OAAOY,eAAeub,EAAQ3O,EAAKxN,OAAOkB,yBAAyB+U,EAAQzI,GAC7E,GAEJ,CAEA,OAAO2O,CACT,CAEA,SAASqY,EAAQlsB,GAaf,OATEksB,EADoB,mBAAXtuB,QAAoD,iBAApBA,OAAOC,SACtC,SAAUmC,GAClB,cAAcA,CAChB,EAEU,SAAUA,GAClB,OAAOA,GAAyB,mBAAXpC,QAAyBoC,EAAI+W,cAAgBnZ,QAAUoC,IAAQpC,OAAOjG,UAAY,gBAAkBqI,CAC3H,GAGaA,EACjB,CAEA,SAAS+rB,EAAgB/rB,EAAKkF,EAAK3M,GAYjC,OAXI2M,KAAOlF,EACTtI,OAAOY,eAAe0H,EAAKkF,EAAK,CAC9B3M,QACAO,YAAY,EACZ8C,cAAc,EACdD,UAAU,IAGZqE,EAAIkF,GAAO3M,EAGNyH,CACT,CAEA,SAASmsB,EAAexJ,EAAK1hB,GAC3B,OAAOmrB,EAAgBzJ,IAAQ0J,EAAsB1J,EAAK1hB,IAAMqrB,EAA4B3J,EAAK1hB,IAAMsrB,GACzG,CAEA,SAASH,EAAgBzJ,GACvB,GAAI5f,MAAMC,QAAQ2f,GAAM,OAAOA,CACjC,CAEA,SAAS0J,EAAsB1J,EAAK1hB,GAClC,IAAIqC,EAAKqf,IAA0B,oBAAX/kB,QAA0B+kB,EAAI/kB,OAAOC,WAAa8kB,EAAI,eAE9E,GAAU,MAANrf,EAAJ,CACA,IAIIkpB,EAAItoB,EAJJuoB,EAAO,GACPC,GAAK,EACLC,GAAK,EAIT,IACE,IAAKrpB,EAAKA,EAAGzL,KAAK8qB,KAAQ+J,GAAMF,EAAKlpB,EAAGzG,QAAQG,QAC9CyvB,EAAKzyB,KAAKwyB,EAAGj0B,QAET0I,GAAKwrB,EAAKxuB,SAAWgD,GAH4ByrB,GAAK,GAK9D,CAAE,MAAOjsB,GACPksB,GAAK,EACLzoB,EAAKzD,CACP,CAAE,QACA,IACOisB,GAAsB,MAAhBppB,EAAW,QAAWA,EAAW,QAC9C,CAAE,QACA,GAAIqpB,EAAI,MAAMzoB,CAChB,CACF,CAEA,OAAOuoB,CAxBS,CAyBlB,CAEA,SAASH,EAA4B/wB,EAAGqxB,GACtC,GAAKrxB,EAAL,CACA,GAAiB,iBAANA,EAAgB,OAAOsxB,EAAkBtxB,EAAGqxB,GACvD,IAAI70B,EAAIL,OAAOC,UAAUmL,SAASjL,KAAK0D,GAAG8J,MAAM,GAAI,GAEpD,MADU,WAANtN,GAAkBwD,EAAEwb,cAAahf,EAAIwD,EAAEwb,YAAYxV,MAC7C,QAANxJ,GAAqB,QAANA,EAAoBgL,MAAMiS,KAAKzZ,GACxC,cAANxD,GAAqB,2CAA2C4K,KAAK5K,GAAW80B,EAAkBtxB,EAAGqxB,QAAzG,CALQ,CAMV,CAEA,SAASC,EAAkBlK,EAAK1gB,IACnB,MAAPA,GAAeA,EAAM0gB,EAAI1kB,UAAQgE,EAAM0gB,EAAI1kB,QAE/C,QAASgD,EAAI,EAAG6rB,EAAO,IAAI/pB,MAAMd,GAAMhB,EAAIgB,EAAKhB,IAAK6rB,EAAK7rB,GAAK0hB,EAAI1hB,GAEnE,OAAO6rB,CACT,CAEA,SAASP,IACP,MAAM,IAAIxuB,UAAU,4IACtB,CAEA,SAASgvB,EAAqBC,EAAIh2B,GACjC,OAAiCg2B,EAA1Bh2B,EAAS,CAAEC,QAAS,CAAC,GAAgBD,EAAOC,SAAUD,EAAOC,OACrE,CApIAu0B,EAAQA,GAAS9zB,OAAOC,UAAUC,eAAeC,KAAK2zB,EAAO,WAAaA,EAAe,QAAIA,EA6I7F,IACIyB,EADuB,+CAG3B,SAASC,IAAiB,CAE1B,SAASC,IAA0B,CAEnCA,EAAuBC,kBAAoBF,EAE3C,IAAIG,EAA2B,WAC7B,SAASC,EAAKC,EAAOC,EAAUC,EAAe3Z,EAAU4Z,EAAcC,GACpE,GAAIA,IAAWV,EAAf,CAKA,IAAIxsB,EAAM,IAAIoD,MAAM,mLAEpB,MADApD,EAAIc,KAAO,sBACLd,CAJN,CAKF,CAGA,SAASmtB,IACP,OAAON,CACT,CAJAA,EAAKO,WAAaP,EAOlB,IAAIQ,EAAiB,CACnBC,MAAOT,EACPU,KAAMV,EACNhd,KAAMgd,EACN/sB,OAAQ+sB,EACRxpB,OAAQwpB,EACRrc,OAAQqc,EACRW,OAAQX,EACRY,IAAKZ,EACLa,QAASP,EACTpf,QAAS8e,EACTc,YAAad,EACbe,WAAYT,EACZrc,KAAM+b,EACNgB,SAAUV,EACVW,MAAOX,EACPY,UAAWZ,EACXa,MAAOb,EACPc,MAAOd,EACPe,eAAgBxB,EAChBC,kBAAmBF,GAGrB,OADAY,EAAec,UAAYd,EACpBA,CACT,EAEIe,EAAY9B,GAAqB,SAAU/1B,GAU7CA,EAAOC,QAAUo2B,GAEnB,IAEIyB,EAAc,SAAqBv2B,GACrC,IAAIw2B,EAAMvD,EAAMwD,OAAOz2B,GAIvB,OAHAizB,EAAMyD,WAAU,WACdF,EAAIG,QAAU32B,CAChB,GAAG,CAACA,IACGw2B,EAAIG,OACb,EAEIC,EAAkB,SAAyB/K,GAC7C,OAAe,OAARA,GAAiC,WAAjB8H,EAAQ9H,EACjC,EACIgL,EAAY,SAAmBhL,GACjC,OAAO+K,EAAgB/K,IAA4B,mBAAbA,EAAInnB,IAC5C,EAIIoyB,EAAW,SAAkBjL,GAC/B,OAAO+K,EAAgB/K,IAAgC,mBAAjBA,EAAIkL,UAAsD,mBAApBlL,EAAImL,aAAiE,mBAA5BnL,EAAIoL,qBAAwE,mBAA3BpL,EAAIqL,kBAC5K,EAEIC,EAAmB,kBACnBC,EAAU,SAASA,EAAQC,EAAMC,GACnC,IAAKV,EAAgBS,KAAUT,EAAgBU,GAC7C,OAAOD,IAASC,EAGlB,IAAIC,EAAY/sB,MAAMC,QAAQ4sB,GAE9B,GAAIE,IADa/sB,MAAMC,QAAQ6sB,GACD,OAAO,EACrC,IAAIE,EAAkBr4B,OAAOC,UAAUmL,SAASjL,KAAK+3B,KAAUF,EAE/D,GAAIK,KADmBr4B,OAAOC,UAAUmL,SAASjL,KAAKg4B,KAAWH,GACvB,OAAO,EAGjD,IAAKK,IAAoBD,EAAW,OAAOF,IAASC,EACpD,IAAIG,EAAWt4B,OAAOc,KAAKo3B,GACvBK,EAAYv4B,OAAOc,KAAKq3B,GAC5B,GAAIG,EAAS/xB,SAAWgyB,EAAUhyB,OAAQ,OAAO,EAGjD,IAFA,IAAIiyB,EAAS,CAAC,EAELjvB,EAAI,EAAGA,EAAI+uB,EAAS/xB,OAAQgD,GAAK,EACxCivB,EAAOF,EAAS/uB,KAAM,EAGxB,QAASqC,EAAK,EAAGA,EAAK2sB,EAAUhyB,OAAQqF,GAAM,EAC5C4sB,EAAOD,EAAU3sB,KAAO,EAG1B,IAAI6sB,EAAUz4B,OAAOc,KAAK03B,GAE1B,GAAIC,EAAQlyB,SAAW+xB,EAAS/xB,OAC9B,OAAO,EAGT,IAAImyB,EAAIR,EACJS,EAAIR,EAEJS,EAAO,SAAcprB,GACvB,OAAOyqB,EAAQS,EAAElrB,GAAMmrB,EAAEnrB,GAC3B,EAEA,OAAOirB,EAAQI,MAAMD,EACvB,EAEIE,EAA+B,SAAsCja,EAASka,EAAaC,GAC7F,OAAKvB,EAAgB5Y,GAId7e,OAAOc,KAAK+d,GAAShd,QAAO,SAAUo3B,EAAYzrB,GACvD,IAAI0rB,GAAazB,EAAgBsB,KAAiBd,EAAQpZ,EAAQrR,GAAMurB,EAAYvrB,IAEpF,OAAIwrB,EAAc3kB,SAAS7G,IACrB0rB,GACFzwB,QAAQuD,KAAK,oCAAoCP,OAAO+B,EAAK,gCAGxDyrB,GAGJC,EAIE9E,EAAeA,EAAe,CAAC,EAAG6E,GAAc,CAAC,GAAI,CAAC,EAAG5E,EAAgB,CAAC,EAAG7mB,EAAKqR,EAAQrR,KAHxFyrB,CAIX,GAAG,MAnBM,IAoBX,EAEIE,EAAuB,qMAIvBC,EAAiB,SAAwBC,GAC3C,GAAoB,OAAhBA,GAAwB1B,EAAS0B,GACnC,OAAOA,EAGT,MAAM,IAAIltB,MAAMgtB,EAClB,EAEIG,EAAkB,SAAyB5M,GAC7C,GAAIgL,EAAUhL,GACZ,MAAO,CACLnX,IAAK,QACLgkB,cAAex0B,QAAQD,QAAQ4nB,GAAKnnB,KAAK6zB,IAI7C,IAAII,EAASJ,EAAe1M,GAE5B,OAAe,OAAX8M,EACK,CACLjkB,IAAK,SAIF,CACLA,IAAK,OACLikB,SAEJ,EAEIC,EAA+B3F,EAAM4F,cAAc,MACvDD,EAAgBE,YAAc,kBAC9B,IAAIC,EAAuB,SAA8BC,EAAKC,GAC5D,IAAKD,EACH,MAAM,IAAI1tB,MAAM,+EAA+EV,OAAOquB,EAAS,gCAGjH,OAAOD,CACT,EACIE,EAAkCjG,EAAM4F,cAAc,MAC1DK,EAAmBJ,YAAc,qBACjC,IAAIK,EAA0B,SAAiCH,EAAKC,GAClE,IAAKD,EACH,MAAM,IAAI1tB,MAAM,+EAA+EV,OAAOquB,EAAS,gCAGjH,OAAOD,CACT,EAYII,EAAW,SAAkBC,GAC/B,IAAIC,EAAgBD,EAAKV,OACrB3a,EAAUqb,EAAKrb,QACfub,EAAWF,EAAKE,SAChBjhB,EAAS2a,EAAMuG,SAAQ,WACzB,OAAOf,EAAgBa,EACzB,GAAG,CAACA,IAGAG,EAAmB7F,EADDX,EAAMyG,SAAS,MACkB,GACnDC,EAAOF,EAAiB,GACxBG,EAAUH,EAAiB,GAG3BI,EAAmBjG,EADAX,EAAMyG,SAAS,MACkB,GACpDI,EAAYD,EAAiB,GAC7BE,EAAeF,EAAiB,GAShCG,EAAmBpG,EANAX,EAAMyG,UAAS,WACpC,MAAO,CACLf,OAAuB,SAAfrgB,EAAO5D,IAAiB4D,EAAOqgB,OAAS,KAChD5B,SAAyB,SAAfze,EAAO5D,IAAiB4D,EAAOqgB,OAAO5B,SAAS/Y,GAAW,KAExE,IACwD,GACpDgb,EAAMgB,EAAiB,GACvB3rB,EAAa2rB,EAAiB,GAElC/G,EAAMyD,WAAU,WACd,IAAIuD,GAAY,EAEZC,EAAiB,SAAwBvB,GAC3CtqB,GAAW,SAAU2qB,GAEnB,OAAIA,EAAIL,OAAeK,EAChB,CACLL,SACA5B,SAAU4B,EAAO5B,SAAS/Y,GAE9B,GACF,EAiBA,MAdmB,UAAf1F,EAAO5D,KAAoBskB,EAAIL,OAST,SAAfrgB,EAAO5D,KAAmBskB,EAAIL,QAEvCuB,EAAe5hB,EAAOqgB,QAVtBrgB,EAAOogB,cAAch0B,MAAK,SAAUi0B,GAC9BA,GAAUsB,GAIZC,EAAevB,EAEnB,IAMK,WACLsB,GAAY,CACd,CACF,GAAG,CAAC3hB,EAAQ0gB,EAAKhb,IAEjB,IAAImc,EAAa5D,EAAY+C,GAC7BrG,EAAMyD,WAAU,WACK,OAAfyD,GAAuBA,IAAeb,GACxC1xB,QAAQuD,KAAK,6FAEjB,GAAG,CAACgvB,EAAYb,IAEhB,IAAIpB,EAAc3B,EAAYvY,GA+B9B,OA9BAiV,EAAMyD,WAAU,WACd,GAAKsC,EAAIjC,SAAT,CAIA,IAAIqD,EAAUnC,EAA6Bja,EAASka,EAAa,CAAC,eAAgB,UAE9EkC,GACFpB,EAAIjC,SAASsD,OAAOD,EALtB,CAOF,GAAG,CAACpc,EAASka,EAAac,EAAIjC,WAE9B9D,EAAMyD,WAAU,WACd,IAAI4D,EAAYtB,EAAIL,OAEf2B,GAAcA,EAAUC,kBAAqBD,EAAUE,kBAI5DF,EAAUC,iBAAiB,CACzBvxB,KAAM,kBACN8G,QAAS,WAGXwqB,EAAUE,gBAAgB,CACxBxxB,KAAM,kBACN8G,QAAS,SACT/C,IAAK,4CAET,GAAG,CAACisB,EAAIL,SACY1F,EAAMzb,cAAcohB,EAAgB6B,SAAU,CAChEz6B,MAAOg5B,GACO/F,EAAMzb,cAAc0hB,EAAmBuB,SAAU,CAC/Dz6B,MAAO,CACL25B,OACAC,UACAE,YACAC,iBAEDR,GACL,EACAH,EAAS9C,UAAY,CACnBqC,OAAQrC,EAAUX,IAClB3X,QAASsY,EAAU/qB,QAErB,IAAImvB,EAAgC,SAAuCC,GACzE,IAAI3B,EAAM/F,EAAM2H,WAAWhC,GAC3B,OAAOG,EAAqBC,EAAK2B,EACnC,EACIE,EAAmC,SAA0CF,GAC/E,IAAI3B,EAAM/F,EAAM2H,WAAW1B,GAC3B,OAAOC,EAAwBH,EAAK2B,EACtC,EAKIG,EAAc,WAIhB,OAH4BJ,EAA8B,uBACrB3D,QAGvC,EAKIgE,EAAY,WAId,OAH6BL,EAA8B,qBACvB/B,MAGtC,EAKIqC,EAAiB,WAInB,OAH4BH,EAAiC,0BAC5BlB,IAGnC,EAKIsB,EAAsB,WAIxB,OAH6BJ,EAAiC,+BACvBf,SAGzC,EAKIoB,EAAmB,SAA0BC,GAI/C,OAAO5B,EAHQ4B,EAAM5B,UACXmB,EAA8B,6BAG1C,EACAQ,EAAiB5E,UAAY,CAC3BiD,SAAUjD,EAAUve,KAAKud,YAG3B,IAAI8F,EAAiB,SAAwBnlB,EAASmF,EAAOigB,GAC3D,IAAIC,IAAcD,EACdE,EAAQtI,EAAMwD,OAAO4E,GAGzBpI,EAAMyD,WAAU,WACd6E,EAAM5E,QAAU0E,CAClB,GAAG,CAACA,IACJpI,EAAMyD,WAAU,WACd,IAAK4E,IAAcrlB,EACjB,OAAO,WAAa,EAGtB,IAAIulB,EAAc,WACZD,EAAM5E,SACR4E,EAAM5E,QAAQ/2B,MAAM27B,EAAOz7B,UAE/B,EAGA,OADAmW,EAAQwlB,GAAGrgB,EAAOogB,GACX,WACLvlB,EAAQylB,IAAItgB,EAAOogB,EACrB,CACF,GAAG,CAACF,EAAWlgB,EAAOnF,EAASslB,GACjC,EAEII,EAAc,SAAqB9R,GACrC,OAAOA,EAAI+R,OAAO,GAAGtuB,cAAgBuc,EAAI/c,MAAM,EACjD,EAEI+uB,EAAyB,SAAgCjvB,EAAMkvB,GACjE,IAAIhD,EAAc,GAAGluB,OAAO+wB,EAAY/uB,GAAO,WA4I3CmvB,EAAUD,EAZM,SAAuB9G,GAEzC0F,EAA8B,WAAW9vB,OAAOkuB,EAAa,MAC7D+B,EAAiC,WAAWjwB,OAAOkuB,EAAa,MAChE,IAAIrjB,EAAKuf,EAAMvf,GACXY,EAAY2e,EAAM3e,UACtB,OAAoB4c,EAAMzb,cAAc,MAAO,CAC7C/B,KACAY,aAEJ,EAxIoB,SAAuBgjB,GACzC,IAkDI2C,EAlDAvmB,EAAK4jB,EAAK5jB,GACVY,EAAYgjB,EAAKhjB,UACjB4lB,EAAe5C,EAAKrb,QACpBA,OAA2B,IAAjBie,EAA0B,CAAC,EAAIA,EACzCC,EAAS7C,EAAK6C,OACdC,EAAU9C,EAAK8C,QACfC,EAAU/C,EAAK+C,QACfC,EAAWhD,EAAKgD,SAChBC,EAAWjD,EAAKiD,SAChBC,EAAUlD,EAAKkD,QACfC,EAAcnD,EAAKmD,YACnBC,EAAgBpD,EAAKoD,cACrBC,EAAmBrD,EAAKqD,iBACxBC,EAAatD,EAAKsD,WAClBC,EAAkBvD,EAAKuD,gBACvBC,EAAYxD,EAAKwD,UACjBC,EAAWzD,EAAKyD,SAChBC,EAA0B1D,EAAK0D,wBAC/BC,EAAuB3D,EAAK2D,qBAG5BjG,EADwB2D,EAA8B,WAAW9vB,OAAOkuB,EAAa,MACpD/B,SAGjC0C,EAAmB7F,EADDX,EAAMyG,SAAS,MACkB,GACnDzjB,EAAUwjB,EAAiB,GAC3BwD,EAAaxD,EAAiB,GAE9ByD,EAAajK,EAAMwD,OAAO,MAC1B0G,EAAUlK,EAAMwD,OAAO,MAEvB2G,EAAwBvC,EAAiC,WAAWjwB,OAAOkuB,EAAa,MACxFc,EAAUwD,EAAsBxD,QAChCG,EAAeqD,EAAsBrD,aAKzCqB,EAAenlB,EAAS,OAAQimB,GAChCd,EAAenlB,EAAS,QAASkmB,GACjCf,EAAenlB,EAAS,SAAUqmB,GAClClB,EAAenlB,EAAS,QAASsmB,GACjCnB,EAAenlB,EAAS,YAAaumB,GACrCpB,EAAenlB,EAAS,cAAewmB,GACvCrB,EAAenlB,EAAS,iBAAkBymB,GAC1CtB,EAAenlB,EAAS,gBAAiB2mB,GACzCxB,EAAenlB,EAAS,UAAW4mB,GACnCzB,EAAenlB,EAAS,SAAU6mB,GAClC1B,EAAenlB,EAAS,wBAAyB8mB,GACjD3B,EAAenlB,EAAS,qBAAsB+mB,GAGjC,SAATpwB,EACFovB,EAAgB,SAAuB5gB,GACrC2e,EAAa3e,GACbghB,GAAWA,EAAQhhB,EACrB,EACSghB,IAGPJ,EAFW,cAATpvB,EAEcwvB,EAGA,WACdA,EAAQnmB,EACV,GAIJmlB,EAAenlB,EAAS,QAAS+lB,GAKjCZ,EAAenlB,EAAS,SAJM,SAATrJ,EAAkB,SAAUwO,GAC/C2e,EAAa3e,GACbihB,GAAYA,EAASjhB,EACvB,EAAIihB,GAMJjB,EAAenlB,EAAS,WAJQ,SAATrJ,EAAkB,SAAUwO,GACjD2e,EAAa3e,GACbuhB,GAAcA,EAAWvhB,EAC3B,EAAIuhB,GAEJ1J,EAAMoK,iBAAgB,WACpB,GAA2B,OAAvBH,EAAWvG,SAAoBI,GAAgC,OAApBoG,EAAQxG,QAAkB,CACvE,IAAI2G,EAAavG,EAASh0B,OAAO6J,EAAMoR,GAE1B,SAATpR,GAAmBgtB,GAGrBA,EAAQ0D,GAIVJ,EAAWvG,QAAU2G,EAErBL,EAAWK,GACXA,EAAWC,MAAMJ,EAAQxG,QAC3B,CACF,GAAG,CAACI,EAAU/Y,EAAS4b,IACvB,IAAI1B,EAAc3B,EAAYvY,GAoB9B,OAnBAiV,EAAMyD,WAAU,WACd,GAAKwG,EAAWvG,QAAhB,CAIA,IAAIyD,EAAUnC,EAA6Bja,EAASka,EAAa,CAAC,mBAE9DkC,GACF8C,EAAWvG,QAAQ0D,OAAOD,EAL5B,CAOF,GAAG,CAACpc,EAASka,IACbjF,EAAMoK,iBAAgB,WACpB,OAAO,WACDH,EAAWvG,UACbuG,EAAWvG,QAAQ1K,UACnBiR,EAAWvG,QAAU,KAEzB,CACF,GAAG,IACiB1D,EAAMzb,cAAc,MAAO,CAC7C/B,KACAY,YACAmgB,IAAK2G,GAET,EAsCA,OAtBApB,EAAQzF,UAAY,CAClB7gB,GAAI6gB,EAAU5d,OACdrC,UAAWigB,EAAU5d,OACrB2jB,SAAU/F,EAAUve,KACpBmkB,OAAQ5F,EAAUve,KAClBokB,QAAS7F,EAAUve,KACnBqkB,QAAS9F,EAAUve,KACnBukB,SAAUhG,EAAUve,KACpBwkB,QAASjG,EAAUve,KACnBykB,YAAalG,EAAUve,KACvB0kB,cAAenG,EAAUve,KACzB2kB,iBAAkBpG,EAAUve,KAC5B4kB,WAAYrG,EAAUve,KACtB6kB,gBAAiBtG,EAAUve,KAC3B8kB,UAAWvG,EAAUve,KACrB+kB,SAAUxG,EAAUve,KACpBglB,wBAAyBzG,EAAUve,KACnCilB,qBAAsB1G,EAAUve,KAChCiG,QAASsY,EAAU/qB,QAErBwwB,EAAQjD,YAAcA,EACtBiD,EAAQyB,cAAgB5wB,EACjBmvB,CACT,EAEID,EAA6B,oBAAXj9B,OAQlB4+B,EAAuB5B,EAAuB,gBAAiBC,GAK/D4B,EAAc7B,EAAuB,OAAQC,GAK7C6B,EAAoB9B,EAAuB,aAAcC,GAKzD8B,EAAoB/B,EAAuB,aAAcC,GAKzD+B,EAAiBhC,EAAuB,UAAWC,GAKnDgC,EAAiBjC,EAAuB,UAAWC,GAKnDiC,EAAclC,EAAuB,OAAQC,GAK7CkC,EAAmBnC,EAAuB,YAAaC,GAKvDmC,EAAiBpC,EAAuB,UAAWC,GAKnDoC,EAAiBrC,EAAuB,UAAWC,GACnDqC,GAAiBtC,EAAuB,UAAWC,GAQnDsC,GAAmBvC,EAAuB,YAAaC,GAKvDuC,GAA8BxC,EAAuB,uBAAwBC,GAQ7EwC,GAA4BzC,EAAuB,qBAAsBC,GAKzEyC,GAAiB1C,EAAuB,UAAWC,GAQnD0C,GAAyB3C,EAAuB,kBAAmBC,GAQnE2C,GAAc5C,EAAuB,OAAQC,GAK7C4C,GAAgC7C,EAAuB,yBAA0BC,GAKjF6C,GAAuB9C,EAAuB,gBAAiBC,GAK/D8C,GAAiC/C,EAAuB,0BAA2BC,GAEvFp9B,EAAQ6/B,eAAiBA,GACzB7/B,EAAQigC,qBAAuBA,GAC/BjgC,EAAQkgC,+BAAiCA,GACzClgC,EAAQ++B,qBAAuBA,EAC/B/+B,EAAQm/B,eAAiBA,EACzBn/B,EAAQg/B,YAAcA,EACtBh/B,EAAQk/B,kBAAoBA,EAC5Bl/B,EAAQi/B,kBAAoBA,EAC5Bj/B,EAAQ+/B,YAAcA,GACtB//B,EAAQ06B,SAAWA,EACnB16B,EAAQw8B,iBAAmBA,EAC3Bx8B,EAAQw/B,eAAiBA,EACzBx/B,EAAQo/B,eAAiBA,EACzBp/B,EAAQq/B,YAAcA,EACtBr/B,EAAQs/B,iBAAmBA,EAC3Bt/B,EAAQ4/B,0BAA4BA,GACpC5/B,EAAQu/B,eAAiBA,EACzBv/B,EAAQ0/B,iBAAmBA,GAC3B1/B,EAAQy/B,eAAiBA,GACzBz/B,EAAQggC,8BAAgCA,GACxChgC,EAAQ2/B,4BAA8BA,GACtC3/B,EAAQ8/B,uBAAyBA,GACjC9/B,EAAQs8B,eAAiBA,EACzBt8B,EAAQu8B,oBAAsBA,EAC9Bv8B,EAAQo8B,YAAcA,EACtBp8B,EAAQq8B,UAAYA,EAEpB57B,OAAOY,eAAerB,EAAS,aAAc,CAAEsB,OAAO,GAExD,CAl3BiE+f,CAAQrhB,EAAS,EAAQ,0CCC1F,IAAImgC,EAAQ,EAAQ,MAyFpB,SAASC,IACL,IAAIC,EAAc,CAAC,EACfnS,EAAc,EACdoS,EAAc,EACdC,EAAc,EAqClB,MAAO,CACHxX,IApCJ,SAAaxM,EAAOwZ,GACZA,IACAA,EAAKxZ,EACLA,EAAQ,GAGTA,EAAQ+jB,EACPA,EAAW/jB,EACLA,EAAQgkB,IACdA,EAAchkB,GAGd8jB,EAAM9jB,KACN8jB,EAAM9jB,GAAS,IAGnB8jB,EAAM9jB,GAAOxZ,KAAKgzB,GAClB7H,GACJ,EAmBIsS,QAjBJ,WACI,QAAQjkB,EAAQgkB,EAAahkB,GAAS+jB,EAAU/jB,IAG5C,IAFA,IAAIkkB,EAAMJ,EAAM9jB,GAERvS,EAAI,EAAGA,EAAIy2B,EAAIz5B,OAAQgD,IAAK,EAEhC+rB,EADS0K,EAAIz2B,KAEjB,CAER,EASIkkB,KAPJ,WACI,OAAOA,CACX,EAOJ,CArIAnuB,EAAOC,QAAU,SAA6Bsf,GAE1C,IAAIohB,GADJphB,EAAsBA,GAAW,CAAC,GACJohB,SAC1BC,EAAkBR,EAAMS,UAAUthB,EAAS,SAAS,GACpDuhB,EAAkBV,EAAMS,UAAUthB,EAAS,QAAQ,GAEpDuhB,IAAgBF,IACfD,GAAYA,EAASj0B,KAAK,0FAC1Bk0B,GAAe,GAGnB,IACIG,EADAT,EAAQD,IAERW,GAAe,EAYnB,SAASC,IAIL,IADAD,GAAe,EACRV,EAAMnS,QAAQ,CACjB,IAAI+S,EAAkBZ,EACtBA,EAAQD,IACRa,EAAgBT,SACpB,CACAO,GAAe,CACnB,CAuBA,SAASG,IAiBT,IAEuBnL,IAlBciL,EAAjCF,EAkBgCzlB,WAAW0a,EAAI,EAjBnD,CAqBA,MAAO,CACHhN,IAnEJ,SAAqBxM,EAAOwZ,IACpBgL,GAAgBF,GAAeF,GAAiC,IAAjBN,EAAMnS,QAGrDgT,IAGJb,EAAMtX,IAAIxM,EAAOwZ,EACrB,EA4DIoL,MA9CJ,SAA2BC,GACnBL,SAIqB,IAAtBK,IACCA,EAAoBT,GAGrBG,IAyBU1lB,aAxBG0lB,GACZA,EAAoB,MAGrBM,EACCF,IAEAF,IAER,EA6BJ,kCCvFYjhC,EAAOC,QAAU,CAAC,GAExB4gC,UAEN,SAAmBthB,EAAShV,EAAM+2B,GAC9B,IAAI//B,EAAQge,EAAQhV,GAEpB,SAAIhJ,QAA2D,IAAjB+/B,EAC1C,OAAOA,EAGX,OAAO//B,CACX,sBCdA,kBAQC,aAEA,IAAIggC,EAAS,CAAC,EAAE3gC,eAGhB,SAAS4gC,IAGR,IAFA,IAAIC,EAAU,GAELx3B,EAAI,EAAGA,EAAI5I,UAAU4F,OAAQgD,IAAK,CAC1C,IAAIy3B,EAAMrgC,UAAU4I,GACpB,GAAKy3B,EAAL,CAEA,IAAIC,SAAiBD,EAErB,GAAgB,WAAZC,GAAoC,WAAZA,EAC3BF,EAAQz+B,KAAK0+B,QACP,GAAI31B,MAAMC,QAAQ01B,IACxB,GAAIA,EAAIz6B,OAAQ,CACf,IAAI26B,EAAQJ,EAAWrgC,MAAM,KAAMugC,GAC/BE,GACHH,EAAQz+B,KAAK4+B,EAEf,OACM,GAAgB,WAAZD,EAAsB,CAChC,GAAID,EAAI51B,WAAapL,OAAOC,UAAUmL,WAAa41B,EAAI51B,SAASA,WAAWiJ,SAAS,iBAAkB,CACrG0sB,EAAQz+B,KAAK0+B,EAAI51B,YACjB,QACD,CAEA,QAASoC,KAAOwzB,EACXH,EAAO1gC,KAAK6gC,EAAKxzB,IAAQwzB,EAAIxzB,IAChCuzB,EAAQz+B,KAAKkL,EAGhB,CAxBU,CAyBX,CAEA,OAAOuzB,EAAQ5zB,KAAK,IACrB,CAEqC7N,EAAOC,SAC3CuhC,EAAWvgC,QAAUugC,EACrBxhC,EAAOC,QAAUuhC,QAKhB,KAFwB,EAAF,WACtB,OAAOA,CACP,UAFoB,OAEpB,YAIF,CA3DD,kCCEA,IAAIK,EAAW7hC,EAAOC,QAAU,CAAC,EAEjC4hC,EAASC,KAAO,SAASzwB,GAMrB,QAHsC,KAD9B0wB,EAAQvf,UAAUC,UAAU1Y,eACnBzG,QAAQ,UAAgD,IAA9By+B,EAAMz+B,QAAQ,aAAkD,IAA7By+B,EAAMz+B,QAAQ,cAOxF+N,GAmBGA,IAdU,WACb,IACIvM,EAAI,EACJk9B,EAAMnpB,SAASE,cAAc,OAC7BkpB,EAAMD,EAAIE,qBAAqB,KAEnC,GACIF,EAAIG,UAAY,uBAAsBr9B,EAAK,iCAExCm9B,EAAI,IAEX,OAAOn9B,EAAI,EAAIA,EAVXs9B,SAWR,CAZiB,IAdjB,IACQL,CA4BZ,EAEAF,EAASQ,cAAgB,WACrB,QAASjiC,OAAOkiC,KACpB,kCCpCYtiC,EAAOC,QAAU,CAAC,GASxBwB,QAAU,SAAS8gC,EAAYryB,GACjC,QAAQjG,EAAI,EAAGA,EAAIs4B,EAAWt7B,OAAQgD,IAAK,CACvC,IAAIhF,EAASiL,EAASqyB,EAAWt4B,IACjC,GAAGhF,EACC,OAAOA,CAEf,CACJ,qCCXA,IAAIu9B,EAAkB,EAAQ,MAE9BxiC,EAAOC,QAAU,SAASsf,GAEtB,IAAIohB,GADJphB,EAAsBA,GAAW,CAAC,GACJohB,SAC1B8B,EAAkBljB,EAAQkjB,eAC1Btc,EAAkB5G,EAAQmjB,aAAavc,SAE3C,IAAIwa,EACA,MAAM,IAAI9zB,MAAM,0CAqMpB,SAAS81B,EAAUnrB,GACf,OAAO2O,EAAS3O,GAAS1K,MAC7B,CA0BA,MAAO,CACH81B,eAtLJ,SAAwBrjB,EAAS/H,EAAStH,GACjCA,IACDA,EAAWsH,EACXA,EAAU+H,EACVA,EAAU,OAGdA,EAAUA,GAAW,CAAC,GACF7V,MAiIjB84B,EAAgBV,KAAK,GAIpB5xB,EAASsH,GAnIb,SAAsBA,EAAStH,GAC3B,IAxBoB2yB,EACpBC,EAuBIC,GAxBgBF,EAwBkB,CAAC,iBAAkB,qBAAsB,SAAU,UAAW,cAAe,eAAgB,eAAgB,aAAc,YAAa,aAAc,iBAAkB,wBAvB9MC,EAAYvjB,EAAQyjB,UAAY,gBAAkB,MAE9CH,EAAMh1B,KAAKi1B,GAAaA,GAAWz1B,QA0BnC41B,GAAyB,EAIzBjqB,EAAQ5Y,OAAO8iC,iBAAiB1rB,GAChC2rB,EAAQ3rB,EAAQ4rB,YAChBC,EAAS7rB,EAAQ8rB,aAOrB,SAASC,IACL,SAASC,IACL,GAAsB,WAAnBxqB,EAAMyqB,SAAuB,CAC5BjsB,EAAQwB,MAAM0qB,YAAY,WAAY,WAAYnkB,EAAQyjB,UAAY,YAAc,IAEpF,IAAIW,EAAuB,SAAShD,EAAUnpB,EAASwB,EAAO4qB,GAK1D,IAAIriC,EAAQyX,EAAM4qB,GAEL,SAAVriC,GAAiD,MAAXA,EALxB+L,QAAQ,YAAa,MAMlCqzB,EAASj0B,KAAK,kDAAoDk3B,EAAW,IAAMriC,EAAQ,kHAAoHqiC,EAAW,+BAAgCpsB,GAC1PA,EAAQwB,MAAM0qB,YAAYE,EAAU,IAAKrkB,EAAQyjB,UAAY,YAAc,IAEnF,EAIAW,EAAqBhD,EAAUnpB,EAASwB,EAAO,OAC/C2qB,EAAqBhD,EAAUnpB,EAASwB,EAAO,SAC/C2qB,EAAqBhD,EAAUnpB,EAASwB,EAAO,UAC/C2qB,EAAqBhD,EAAUnpB,EAASwB,EAAO,OACnD,CACJ,CA2CuB,KAAnBA,EAAMyqB,WACND,IACAP,GAAyB,GAI7B,IAAIn2B,EAAS+L,SAASE,cAAc,UACpCjM,EAAOkM,MAAM6qB,QAAUd,EACvBj2B,EAAOg3B,UAAY,EACnBh3B,EAAOqB,KAAO,YACdrB,EAAOgV,aAAa,cAAe,QACnChV,EAAOmV,OApDP,WAESghB,GACDO,IAKJ,SAASO,EAAYvsB,EAAStH,GAI1B,IAAIsH,EAAQwsB,gBAAiB,CACzB,IAAInd,EAAQV,EAAS3O,GASrB,OARIqP,EAAMod,iCACN7jC,OAAOib,aAAawL,EAAMod,sCAE9Bpd,EAAMod,gCAAkC3oB,YAAW,WAC/CuL,EAAMod,gCAAkC,EACxCF,EAAYvsB,EAAStH,EACzB,GAAG,KAGP,CAEAA,EAASsH,EAAQwsB,gBACrB,CAOAD,CAHoB3iC,MAGO,SAA+B8iC,GAEtDh0B,EAASsH,EACb,GACJ,EAmBIgrB,EAAgBV,SAChBh1B,EAAOkZ,KAAO,eAGbG,EAAS3O,KAKdA,EAAQ2B,YAAYrM,GACpBqZ,EAAS3O,GAAS1K,OAASA,EAGxB01B,EAAgBV,SACfh1B,EAAOkZ,KAAO,eAEtB,CAxGAG,EAAS3O,GAAS2sB,UAAY,CAC1BhB,QACAE,UAwGDZ,EACCA,EAAezZ,IAAIua,GAEnBA,GAER,CAQIa,CAAa5sB,EAAStH,EAE9B,EAsCIm0B,YA1NJ,SAAqB7sB,EAASuH,GAC1B,SAASulB,IACLvlB,EAASvH,EACb,CAEA,GAAGgrB,EAAgBV,KAAK,GAEpB3b,EAAS3O,GAAS1K,OAAS,CACvBy3B,MAAOD,GAEX9sB,EAAQgtB,YAAY,WAAYF,OAC7B,CACH,IAAIx3B,EAAS61B,EAAUnrB,GAEvB,IAAI1K,EACA,MAAM,IAAID,MAAM,+CAGpBC,EAAOk3B,gBAAgBS,YAAY/nB,iBAAiB,SAAU4nB,EAClE,CACJ,EAuMII,UA3BJ,SAAmBltB,GACf,GAAK2O,EAAS3O,GAAd,CAIA,IAAI1K,EAAS61B,EAAUnrB,GAElB1K,IAID01B,EAAgBV,KAAK,GACrBtqB,EAAQmtB,YAAY,WAAY73B,EAAOy3B,OAEvC/sB,EAAQ6B,YAAYvM,GAGpBqZ,EAAS3O,GAASysB,iCAClB7jC,OAAOib,aAAa8K,EAAS3O,GAASysB,wCAGnC9d,EAAS3O,GAAS1K,OAlBzB,CAmBJ,EAOJ,qCC/OA,IAAIrL,EAAU,gBAEdzB,EAAOC,QAAU,SAASsf,GAEtB,IAAIohB,GADJphB,EAAsBA,GAAW,CAAC,GACJohB,SAC1B8B,EAAkBljB,EAAQkjB,eAC1Btc,EAAkB5G,EAAQmjB,aAAavc,SAEvCye,GADkBrlB,EAAQmjB,aAAamC,SACrBtlB,EAAQqlB,WAE9B,IAAKnC,EACD,MAAM,IAAI51B,MAAM,+CAGpB,IAAK8zB,EACD,MAAM,IAAI9zB,MAAM,0CAIpB,IAAIi4B,EAmBJ,WACI,IAAI3B,EAAQ,IACRE,EAAS,IAET0B,EAAQlsB,SAASE,cAAc,OACnCgsB,EAAM/rB,MAAM6qB,QAAUmB,EAAmB,CAAC,qBAAsB,gBAA4B,iBAA8B,qBAAsB,YAAa,eAE7J,IAAIC,EAAYpsB,SAASE,cAAc,OACvCksB,EAAUjsB,MAAM6qB,QAAUmB,EAAmB,CAAC,qBAAsB,eAA0B,gBAA4B,mBAAoB,mBAAoB,eAA2B,gBAA6B,qBAAsB,YAAa,eAE7PC,EAAU9rB,YAAY4rB,GAEtBlsB,SAAS1S,KAAK++B,aAAaD,EAAWpsB,SAAS1S,KAAKg/B,YAEpD,IAAIC,EAAYjC,EAAQ8B,EAAUI,YAC9BC,EAAajC,EAAS4B,EAAUM,aAIpC,OAFA1sB,SAAS1S,KAAKkT,YAAY4rB,GAEnB,CACH9B,MAAOiC,EACP/B,OAAQiC,EAEhB,CA1CqBE,GAGjBC,EAA0B,iCAE9B,SAASC,EAAaC,IAuCtB,SAA2BA,EAAgBC,EAASC,GAChD,SAASC,EAAY9sB,EAAO1P,GACxBA,EAASA,GAAU,SAAUkO,GACzBmuB,EAAezsB,KAAKC,YAAY3B,EACpC,EAEA,IAAIuuB,EAAeJ,EAAe5sB,cAAc,SAIhD,OAHAgtB,EAAa5D,UAAYnpB,EACzB+sB,EAAa/uB,GAAK4uB,EAClBt8B,EAAOy8B,GACAA,CACX,CAEA,IAAKJ,EAAeK,eAAeJ,GAAU,CACzC,IAAIK,EAA0BJ,EAAiB,aAC3CK,EAAgCL,EAAiB,oBACjD7sB,EAAQ,0DACZA,GAAS,IAAM6sB,EAAiB,+BAAiCb,EAAmB,CAAC,kBAAoB,SACzGhsB,GAAS,IAAMktB,EAAgC,MAAQlB,EAAmB,CAAC,mCAAoC,2BAA4B,2BAA6BiB,EAAyB,mBAAqBA,IAA4B,OAClPjtB,GAAS,sBAAwBitB,EAA2B,qEAE5DH,EADA9sB,GAAS,cAAgBitB,EAAmC,mEAEhE,CACJ,CA3DIE,CAAkBR,EANR,uCAMiCF,EAC/C,CAIA,SAAST,EAAmBnC,GACxB,IAAIC,EAAYvjB,EAAQyjB,UAAY,gBAAkB,KAEtD,OAAQH,EAAMh1B,KAAKi1B,GAAaA,GAAWz1B,MAC/C,CAwDA,SAAS+4B,EAASC,EAAI97B,EAAMqyB,GACxB,GAAIyJ,EAAG3pB,iBACH2pB,EAAG3pB,iBAAiBnS,EAAMqyB,OACvB,KAAGyJ,EAAG7B,YAGT,OAAO7D,EAASv1B,MAAM,mDAFtBi7B,EAAG7B,YAAY,KAAOj6B,EAAMqyB,EAGhC,CACJ,CAEA,SAAS0J,EAAYD,EAAI97B,EAAMqyB,GAC3B,GAAIyJ,EAAGniB,oBACHmiB,EAAGniB,oBAAoB3Z,EAAMqyB,OAC1B,KAAGyJ,EAAG1B,YAGT,OAAOhE,EAASv1B,MAAM,sDAFtBi7B,EAAG1B,YAAY,KAAOp6B,EAAMqyB,EAGhC,CACJ,CAEA,SAAS2J,EAAiB/uB,GACtB,OAAO2O,EAAS3O,GAASytB,UAAU5qB,WAAW,GAAGA,WAAW,GAAGA,WAAW,EAC9E,CAEA,SAASmsB,EAAiBhvB,GACtB,OAAO2O,EAAS3O,GAASytB,UAAU5qB,WAAW,GAAGA,WAAW,GAAGA,WAAW,EAC9E,CA4hBA,OApnBAqrB,EAAatlC,OAAOyY,UAonBb,CACH+pB,eApgBJ,SAAwBrjB,EAAS/H,EAAStH,GAStC,SAASxG,IACL,GAAI6V,EAAQ7V,MAAO,CACf,IAAI2C,EAAON,MAAMpL,UAAU0N,MAAMxN,KAAKQ,WAEtC,GADAgL,EAAKG,QAAQo4B,EAAU/iC,IAAI2V,GAAU,YACjCmpB,EAASv0B,IAAIjL,MACbw/B,EAASv0B,IAAIjL,MAAM,KAAMkL,QAEzB,QAASpC,EAAI,EAAGA,EAAIoC,EAAKpF,OAAQgD,IAC7B02B,EAASv0B,IAAIC,EAAKpC,GAG9B,CACJ,CAoBA,SAASw8B,EAAajvB,GAElB,IAAIytB,EAAY9e,EAAS3O,GAASytB,UAAU5qB,WAAW,GACnDrB,EAAQ5Y,OAAO8iC,iBAAiB+B,GACpC,OAAQjsB,EAAMmqB,QAAwC,IAA/BnqB,EAAMmqB,MAAM7/B,QAAQ,KAC/C,CAEA,SAASojC,IAGL,IAAIC,EAA0BvmC,OAAO8iC,iBAAiB1rB,GAClDwB,EAA0B,CAAC,EAU/B,OATAA,EAAMyqB,SAAwBkD,EAAalD,SAC3CzqB,EAAMmqB,MAAwB3rB,EAAQ4rB,YACtCpqB,EAAMqqB,OAAwB7rB,EAAQ8rB,aACtCtqB,EAAM4tB,IAAwBD,EAAaC,IAC3C5tB,EAAM6f,MAAwB8N,EAAa9N,MAC3C7f,EAAM6tB,OAAwBF,EAAaE,OAC3C7tB,EAAM4f,KAAwB+N,EAAa/N,KAC3C5f,EAAM8tB,SAAwBH,EAAaxD,MAC3CnqB,EAAM+tB,UAAwBJ,EAAatD,OACpCrqB,CACX,CAeA,SAASguB,IAEL,GADAt9B,EAAM,uBACDyc,EAAS3O,GAAd,CAKA,IAAIwB,EAAQ0tB,IACZvgB,EAAS3O,GAASwB,MAAQA,CAH1B,MAFItP,EAAM,gDAMd,CAEA,SAASu9B,EAAiBzvB,EAAS2rB,EAAOE,GACtCld,EAAS3O,GAAS0vB,UAAY/D,EAC9Bhd,EAAS3O,GAAS2vB,WAAc9D,CACpC,CAMA,SAAS+D,IACL,OAAO,EAAItC,EAAe3B,MAAQ,CACtC,CAEA,SAASkE,IACL,OAAO,EAAIvC,EAAezB,OAAS,CACvC,CAEA,SAASiE,EAAenE,GACpB,OAAOA,EAAQ,GAAKiE,GACxB,CAEA,SAASG,EAAgBlE,GACrB,OAAOA,EAAS,GAAKgE,GACzB,CAUA,SAASG,EAAmBhwB,EAAS2rB,EAAOE,GACxC,IAAIoE,EAAkBlB,EAAiB/uB,GACnCkwB,EAAkBlB,EAAiBhvB,GACnCmwB,EAAkBL,EAAenE,GACjCyE,EAAkBL,EAAgBlE,GAClCwE,EAbR,SAAwB1E,GACpB,OAAe,EAARA,EAAYiE,GACvB,CAW0BU,CAAe3E,GACjC4E,EAVR,SAAyB1E,GACrB,OAAgB,EAATA,EAAagE,GACxB,CAQ0BW,CAAgB3E,GACtCoE,EAAOQ,WAAeN,EACtBF,EAAOS,UAAeN,EACtBF,EAAOO,WAAeJ,EACtBH,EAAOQ,UAAeH,CAC1B,CAEA,SAASI,IACL,IAAIlD,EAAY9e,EAAS3O,GAASytB,UAElC,IAAKA,EAAW,EACZA,EAA8BpsB,SAASE,cAAc,QAC3CnB,UAAoB6tB,EAC9BR,EAAUjsB,MAAM6qB,QAAcmB,EAAmB,CAAC,qBAAsB,kBAAmB,aAAc,cAAe,cAAe,mBAAoB,YAAa,eACxK7e,EAAS3O,GAASytB,UAAYA,EArM1C,SAA2BztB,GACvBA,EAAQI,WAAa,IAAM6tB,EAA0B,mBACzD,CAoMY2C,CAAkBnD,GAClBztB,EAAQ2B,YAAY8rB,GAEpB,IAAIoD,EAAmB,WACnBliB,EAAS3O,GAAS8wB,YAAcniB,EAAS3O,GAAS8wB,YACtD,EAEAlC,EAASnB,EAAW,iBAAkBoD,GAItCliB,EAAS3O,GAAS6wB,iBAAmBA,CACzC,CAEA,OAAOpD,CACX,CAEA,SAASsD,IAwCL,GAFA7+B,EAAM,sBAEDyc,EAAS3O,GAAd,EAvCA,WACI,IAAIwB,EAAQmN,EAAS3O,GAASwB,MAE9B,GAAsB,WAAnBA,EAAMyqB,SAAuB,CAC5BjsB,EAAQwB,MAAM0qB,YAAY,WAAY,WAAWnkB,EAAQyjB,UAAY,YAAc,IAEnF,IAAIW,EAAuB,SAAShD,EAAUnpB,EAASwB,EAAO4qB,GAK1D,IAAIriC,EAAQyX,EAAM4qB,GAEL,SAAVriC,GAAiD,MAAXA,EALxB+L,QAAQ,YAAa,MAMlCqzB,EAASj0B,KAAK,kDAAoDk3B,EAAW,IAAMriC,EAAQ,kHAAoHqiC,EAAW,+BAAgCpsB,GAC1PA,EAAQwB,MAAM4qB,GAAY,EAElC,EAIAD,EAAqBhD,EAAUnpB,EAASwB,EAAO,OAC/C2qB,EAAqBhD,EAAUnpB,EAASwB,EAAO,SAC/C2qB,EAAqBhD,EAAUnpB,EAASwB,EAAO,UAC/C2qB,EAAqBhD,EAAUnpB,EAASwB,EAAO,OACnD,CACJ,CAkBAwqB,GAEA,IAAIgF,EAAgBriB,EAAS3O,GAASytB,UAEjCuD,IACDA,EAAgBL,KAWpB,IAhCsCvP,EAAMgO,EAAKC,EAAQhO,EAgCrD4P,EAA0B3D,EAAe3B,MACzCuF,EAA0B5D,EAAezB,OACzCsF,EAA0B3D,EAAmB,CAAC,qBAAsB,aAAc,mBAAoB,cAAe,qBAAsB,cAAe,eAAgB,YAAa,aACvL4D,EAA0B5D,EAAmB,CAAC,qBAAsB,aAAc,mBAAoB,cAAe,sBAAsB74B,OA7BpI,CAAC,UALRysB,GADkCA,IAmC+I,EAAI6P,IAlC9J7P,EAAO,KAAd,KAKS,SAJzBgO,GAFwCA,IAmCgK,EAAI8B,IAjCvL9B,EAAM,KAAb,KAI0B,WAFxC/N,GAJqDA,GAmC4L4P,GA/BxN5P,EAAQ,KAAf,KAEyC,YAH3DgO,GAH6CA,GAmCkL6B,GAhCpM7B,EAAS,KAAhB,QAiCpBgC,EAA0B7D,EAAmB,CAAC,qBAAsB,aAAc,mBAAoB,cAAe,qBAAsB,cAAe,iBAC1J8D,EAA0B9D,EAAmB,CAAC,qBAAsB,aAAc,mBAAoB,cAAe,qBAAsB,cAAe,iBAC1J+D,EAA0B/D,EAAmB,CAAC,qBAAsB,UAAW,WAC/EgE,EAA0BhE,EAAmB,CAAC,qBAAsB,cAAe,iBAEnFiE,EAA0BpwB,SAASE,cAAc,OACjDksB,EAA0BpsB,SAASE,cAAc,OACjD0uB,EAA0B5uB,SAASE,cAAc,OACjDmwB,EAA0BrwB,SAASE,cAAc,OACjD2uB,EAA0B7uB,SAASE,cAAc,OACjDowB,EAA0BtwB,SAASE,cAAc,OAIrDkwB,EAAmBG,IAAmB,MAEtCH,EAAmBjwB,MAAM6qB,QAAa8E,EACtCM,EAAmBrxB,UAAmB6tB,EACtCR,EAAUrtB,UAA4B6tB,EACtCR,EAAUjsB,MAAM6qB,QAAsB+E,EACtCnB,EAAOzuB,MAAM6qB,QAAyBgF,EACtCK,EAAYlwB,MAAM6qB,QAAoBkF,EACtCrB,EAAO1uB,MAAM6qB,QAAyBiF,EACtCK,EAAYnwB,MAAM6qB,QAAoBmF,EAEtCvB,EAAOtuB,YAAY+vB,GACnBxB,EAAOvuB,YAAYgwB,GACnBlE,EAAU9rB,YAAYsuB,GACtBxC,EAAU9rB,YAAYuuB,GACtBuB,EAAmB9vB,YAAY8rB,GAC/BuD,EAAcrvB,YAAY8vB,GAoB1B7C,EAASqB,EAAQ,SAAU4B,GAC3BjD,EAASsB,EAAQ,SAAU4B,GAI3BnjB,EAAS3O,GAAS6xB,eAAiBA,EACnCljB,EAAS3O,GAAS8xB,eAAiBA,CA9EnC,MAFI5/B,EAAM,iDAwDV,SAAS2/B,IACL,IAAIxiB,EAAQV,EAAS3O,GACjBqP,GAASA,EAAM0iB,SACf1iB,EAAM0iB,WAEN7/B,EAAM,+DAEd,CAEA,SAAS4/B,IACL,IAAIziB,EAAQV,EAAS3O,GACjBqP,GAASA,EAAM2iB,SACf3iB,EAAM2iB,WAEN9/B,EAAM,+DAEd,CASJ,CAEA,SAAS+/B,IACL,SAASC,EAAiBlyB,EAAS2rB,EAAOE,GACtC,IAAI6F,EAhMZ,SAA+B1xB,GAC3B,OAAO+uB,EAAiB/uB,GAAS6C,WAAW,EAChD,CA8LsCsvB,CAAsBnyB,GAChDmwB,EAA0BL,EAAenE,GACzCyE,EAA0BL,EAAgBlE,GAC9C6F,EAAYlwB,MAAM0qB,YAAY,QAASiE,EAAc,KAAMpoB,EAAQyjB,UAAY,YAAc,IAC7FkG,EAAYlwB,MAAM0qB,YAAY,SAAUkE,EAAe,KAAMroB,EAAQyjB,UAAY,YAAc,GACnG,CAEA,SAAS4G,EAAuB5jC,GAC5B,IAAIm9B,EAAkB3rB,EAAQ4rB,YAC1BC,EAAkB7rB,EAAQ8rB,aAG1BuG,EAAc1G,IAAUhd,EAAS3O,GAAS0vB,WAAa7D,IAAWld,EAAS3O,GAAS2vB,WAExFz9B,EAAM,uBAAwBy5B,EAAOE,GAIrC4D,EAAiBzvB,EAAS2rB,EAAOE,GAKjCZ,EAAezZ,IAAI,GAAG,WAClB,GAAK6gB,EAIL,GAAK1jB,EAAS3O,GAKd,GAAKsyB,IAAL,CAKA,GAAIvqB,EAAQ7V,MAAO,CACf,IAAIqgC,EAAIvyB,EAAQ4rB,YACZ4G,EAAIxyB,EAAQ8rB,aAEZyG,IAAM5G,GAAS6G,IAAM3G,GACrB1C,EAASj0B,KAAKk4B,EAAU/iC,IAAI2V,GAAU,0DAE9C,CAEAkyB,EAAiBlyB,EAAS2rB,EAAOE,EAXjC,MAFI35B,EAAM,oEALNA,EAAM,gDAmBd,IAEA+4B,EAAezZ,IAAI,GAAG,WAIb7C,EAAS3O,GAKTsyB,IAKLtC,EAAmBhwB,EAAS2rB,EAAOE,GAJ/B35B,EAAM,+DALNA,EAAM,gDAUd,IAEImgC,GAAe7jC,GACfy8B,EAAezZ,IAAI,GAAG,WACb7C,EAAS3O,GAKTsyB,IAKL9jC,IAJE0D,EAAM,+DALJA,EAAM,gDAUd,GAER,CAEA,SAASogC,IACL,QAAS3jB,EAAS3O,GAASytB,SAC/B,CAEA,SAASgF,IAKLvgC,EAAM,mCAEN,IAAImd,EAAQV,EAAS3O,GAGrB,YARmD,IAAxC2O,EAAS3O,GAAS0yB,mBAQNrjB,EAAMqgB,YAAcrgB,EAAMsd,UAAUhB,OAAStc,EAAMsgB,aAAetgB,EAAMsd,UAAUd,OAC9F35B,EAAM,8FAIbmd,EAAMqgB,YAAcrgB,EAAMqjB,mBAAqBrjB,EAAMsgB,aAAetgB,EAAMsjB,mBACnEzgC,EAAM,yCAIjBA,EAAM,2CACNmd,EAAMqjB,kBAAoBrjB,EAAMqgB,UAChCrgB,EAAMsjB,mBAAqBtjB,EAAMsgB,gBACjC1lC,EAAQ0kB,EAAS3O,GAAS4yB,WAAW,SAAUrrB,GAC3CA,EAASvH,EACb,IACJ,CAmBA,SAAS6yB,IACL3gC,EAAM,oBAEF+8B,EAAajvB,GAEb9N,EAAM,oDAIVkgC,EAAuBK,EAC3B,CAIA,GAFAvgC,EAAM,iDAEDyc,EAAS3O,GAAd,CAKA2O,EAAS3O,GAAS8wB,WApClB,WAGI,GAFA5+B,EAAM,6BAEF+8B,EAAajvB,GACb9N,EAAM,qDADV,CAKAA,EAAM,qBACN,IAAI+9B,EAASlB,EAAiB/uB,GAC1BkwB,EAASlB,EAAiBhvB,GACJ,IAAtBiwB,EAAOQ,YAAyC,IAArBR,EAAOS,WAAyC,IAAtBR,EAAOO,YAAyC,IAArBP,EAAOQ,YACvFx+B,EAAM,yDACNkgC,EAAuBK,GAP3B,CASJ,EAsBA9jB,EAAS3O,GAAS+xB,SAAWc,EAC7BlkB,EAAS3O,GAASgyB,SAAWa,EAE7B,IAAIrxB,EAAQmN,EAAS3O,GAASwB,MAC9B0wB,EAAiBlyB,EAASwB,EAAMmqB,MAAOnqB,EAAMqqB,OAP7C,MAFI35B,EAAM,gDAUd,CAEA,SAAS4gC,IAGL,GAFA5gC,EAAM,gCAEDyc,EAAS3O,GAAd,CAKA,IAAIwB,EAAQmN,EAAS3O,GAASwB,MAC9BiuB,EAAiBzvB,EAASwB,EAAMmqB,MAAOnqB,EAAMqqB,QAC7CmE,EAAmBhwB,EAASwB,EAAMmqB,MAAOnqB,EAAMqqB,OAJ/C,MAFI35B,EAAM,gDAOd,CAEA,SAAS6gC,IACLr6B,EAASsH,EACb,CAEA,SAASgzB,IA9YT,IACQxxB,EA8YJtP,EAAM,iBArYNyc,EAAS3O,GAAS4yB,UAAY,GAT1BpxB,EAAQ0tB,IACZvgB,EAAS3O,GAAS2sB,UAAY,CAC1BhB,MAAOnqB,EAAMmqB,MACbE,OAAQrqB,EAAMqqB,QAElB35B,EAAM,qBAAsByc,EAAS3O,GAAS2sB,WA6Y9C1B,EAAezZ,IAAI,EAAGge,GACtBvE,EAAezZ,IAAI,EAAGuf,GACtB9F,EAAezZ,IAAI,EAAGygB,GACtBhH,EAAezZ,IAAI,EAAGshB,GACtB7H,EAAezZ,IAAI,EAAGuhB,EAC1B,CAlcA,IAAoB/yB,EACMA,EACdizB,EAxBPv6B,IACDA,EAAWsH,EACXA,EAAU+H,EACVA,EAAU,MAGdA,EAAUA,GAAW,CAAC,EAodtB7V,EAAM,wBAlcM+gC,GADcjzB,EADNA,EAscLA,GApcsBkzB,aAAelzB,EAAQkzB,cAAcC,SAASnzB,GACpEA,IAAYA,EAAQozB,cAAczkC,OAAQqR,EAAQozB,cAAczkC,KAAKwkC,SAASnzB,KAAYizB,GAQ5D,OAArCrqC,OAAO8iC,iBAAiB1rB,IA4b5B9N,EAAM,uBAENy+B,IAEAz+B,EAAM,wCAENyc,EAAS3O,GAAS8wB,WAAa,WAC3B5+B,EAAM,2BACN8gC,GACJ,GAEAA,GAER,EA0BInG,YAthBJ,SAAqB7sB,EAASuH,GAG1B,IAFgBoH,EAAS3O,GAAS4yB,UAEnBpnC,KACX,MAAM,IAAI6J,MAAM,6DAGpBsZ,EAAS3O,GAAS4yB,UAAUpnC,KAAK+b,EACrC,EA+gBI2lB,UAzBJ,SAAmBltB,GACf,IAAIqP,EAAQV,EAAS3O,GAEhBqP,IAYLA,EAAMwiB,gBAAkB/C,EAAYC,EAAiB/uB,GAAU,SAAUqP,EAAMwiB,gBAC/ExiB,EAAMyiB,gBAAkBhD,EAAYE,EAAiBhvB,GAAU,SAAUqP,EAAMyiB,gBAC/EziB,EAAMwhB,kBAAoB/B,EAAYzf,EAAMoe,UAAW,iBAAkBpe,EAAMwhB,kBAE/ExhB,EAAMoe,WAAaztB,EAAQ6B,YAAYwN,EAAMoe,WACjD,EAMIS,eAER,qCC7pBA,IAAIjkC,EAA0B,gBAC1BopC,EAA0B,EAAQ,MAClCC,EAA0B,EAAQ,MAClCC,EAA0B,EAAQ,MAClCC,EAA0B,EAAQ,MAClCC,EAA0B,EAAQ,MAClCzI,EAA0B,EAAQ,MAClC0I,EAA0B,EAAQ,MAClCxI,EAA0B,EAAQ,MAGlCyI,EAA0B,EAAQ,MAClCC,EAA0B,EAAQ,MAEtC,SAASC,EAAariC,GAClB,OAAO+C,MAAMC,QAAQhD,SAAuB,IAAfA,EAAI/B,MACrC,CAEA,SAASwoB,EAAQ8S,GACb,GAAKx2B,MAAMC,QAAQu2B,GAOf,OAAOA,EANP,IAAIxL,EAAQ,GAIZ,OAHAt1B,EAAQ8gC,GAAY,SAAUv5B,GAC1B+tB,EAAM/zB,KAAKgG,EACf,IACO+tB,CAIf,CAEA,SAASuU,EAAUtiC,GACf,OAAOA,GAAwB,IAAjBA,EAAIuiC,QACtB,CA6RA,SAAS1K,EAAUthB,EAAShV,EAAM+2B,GAC9B,IAAI//B,EAAQge,EAAQhV,GAEpB,aAAIhJ,QAA2D,IAAjB+/B,EACnCA,EAGJ//B,CACX,CAzQAvB,EAAOC,QAAU,SAASsf,GAItB,IAAIqlB,EAEJ,IALArlB,EAAUA,GAAW,CAAC,GAKVqlB,UAGRA,EAAY,CACR/iC,IAAK,SAAU2V,GAAW,OAAO+H,EAAQqlB,UAAU/iC,IAAI2V,GAAS,EAAO,EACvE0U,IAAK3M,EAAQqlB,UAAU1Y,SAExB,CACH,IAAIsf,EAAcT,IACdU,EAAmBT,EAAe,CAClCQ,cACA9I,iBAEJkC,EAAY6G,CAChB,CAGA,IAAI9K,EAAWphB,EAAQohB,SAEnBA,IAGAA,EAAWsK,GADc,IAAbtK,IAKhB,IAAI8B,EAAiB5B,EAAUthB,EAAS,iBAAkB2rB,EAAoB,CAAEvK,cAG5E+K,EAAgB,CAAC,EACrBA,EAAcC,YAAkB9K,EAAUthB,EAAS,aAAa,GAChEmsB,EAAchiC,QAAkBm3B,EAAUthB,EAAS,SAAS,GAE5D,IAMIqsB,EANAC,EAA0Bf,EAAqBlG,GAC/CkH,EAA0BjB,EAAkB,CAC5CnI,iBAKAqJ,EAAkBlL,EAAUthB,EAAS,WAAY,UACjDysB,EAAoBnL,EAAUthB,EAAS,aAAa,GACpD0sB,EAAkB,CAClBtL,WACA8B,iBACAC,eACAkC,YACA5B,UAAWgJ,GAaf,GAVuB,WAApBD,IACKvJ,EAAgBH,iBAChB1B,EAASj0B,KAAK,kFACdq/B,EAAkB,UACXvJ,EAAgBV,KAAK,KAC5BnB,EAASj0B,KAAK,yEACdq/B,EAAkB,WAIH,WAApBA,EACCH,EAAoBR,EAAoBa,OACrC,IAAuB,WAApBF,EAGN,MAAM,IAAIl/B,MAAM,0BAA4Bk/B,GAF5CH,EAAoBT,EAAoBc,EAG5C,CAOA,IAAIC,EAAmB,CAAC,EAyKxB,MAAO,CACHC,SAjKJ,SAAkB5sB,EAAS+Y,EAAUvZ,GACjC,SAASqtB,EAAiB50B,GACtB,IAAI4yB,EAAYyB,EAAqBhqC,IAAI2V,GACzC/V,EAAQ2oC,GAAW,SAA2BrrB,GAC1CA,EAASvH,EACb,GACJ,CAEA,SAAS6sB,EAAYsH,EAAWn0B,EAASuH,GACrC8sB,EAAqB7iB,IAAIxR,EAASuH,GAE/B4sB,GACC5sB,EAASvH,EAEjB,CASA,GANIuH,IACAA,EAAWuZ,EACXA,EAAW/Y,EACXA,EAAU,CAAC,IAGX+Y,EACA,MAAM,IAAIzrB,MAAM,kCAGpB,IAAIkS,EACA,MAAM,IAAIlS,MAAM,sBAGpB,GAAIy+B,EAAUhT,GAEVA,EAAW,CAACA,OACT,KAAI+S,EAAa/S,GAKpB,OAAOqI,EAASv1B,MAAM,6EAFtBktB,EAAW7I,EAAQ6I,EAGvB,CAEA,IAAI+T,EAAgB,EAEhBV,EAAY9K,EAAUthB,EAAS,YAAamsB,EAAcC,WAC1DW,EAAkBzL,EAAUthB,EAAS,WAAW,WAAiB,IACjE7V,EAAQm3B,EAAUthB,EAAS,QAASmsB,EAAchiC,OAEtDjI,EAAQ62B,GAAU,SAAiC9gB,GAC1CkrB,EAAavc,SAAS3O,KACvBkrB,EAAa6J,UAAU/0B,GACvBotB,EAAU1Y,IAAI1U,IAGlB,IAAIR,EAAK4tB,EAAU/iC,IAAI2V,GAIvB,GAFA9N,GAASi3B,EAASv0B,IAAI,gCAAiC4K,EAAIQ,IAEvDs0B,EAAaU,aAAah1B,GAE1B,OADA9N,GAASi3B,EAASv0B,IAAI4K,EAAI,mBACvB80B,EAAaW,OAAOj1B,IACnB9N,GAASi3B,EAASv0B,IAAI4K,EAAI,oCAI1BqtB,EAAYsH,EAAWn0B,EAASuH,GAChCmtB,EAAiBl1B,GAAMk1B,EAAiBl1B,IAAO,QAC/Ck1B,EAAiBl1B,GAAIhU,MAAK,aACtBqpC,IAEqB/T,EAASrxB,QAC1BqlC,GAER,MAIJ5iC,GAASi3B,EAASv0B,IAAI4K,EAAI,wBAE1B80B,EAAaY,SAASl1B,GAAS,GACxBo0B,EAAkBhJ,eAAe,CAAEl5B,QAAcs5B,UAAWgJ,GAAqBx0B,GAAS,SAA6BA,GAG1H,GAFA9N,GAASi3B,EAASv0B,IAAI4K,EAAI,uBAEtB0rB,EAAavc,SAAS3O,GAAU,CAChCs0B,EAAaa,iBAAiBn1B,GAC9Bs0B,EAAaY,SAASl1B,GAAS,GAC/Bo0B,EAAkBvH,YAAY7sB,EAAS40B,GACvC/H,EAAYsH,EAAWn0B,EAASuH,GAMhC,IAAI8H,EAAQ6b,EAAavc,SAAS3O,GAClC,GAAIqP,GAASA,EAAMsd,UAAW,CAC1B,IAAIhB,EAAQ3rB,EAAQ4rB,YAChBC,EAAS7rB,EAAQ8rB,aACjBzc,EAAMsd,UAAUhB,QAAUA,GAAStc,EAAMsd,UAAUd,SAAWA,GAC9D+I,EAAiB50B,EAEzB,CAEG00B,EAAiBl1B,IAChBvV,EAAQyqC,EAAiBl1B,IAAK,SAAS9G,GACnCA,GACJ,GAER,MAEIxG,GAASi3B,EAASv0B,IAAI4K,EAAI,uDAGvBk1B,EAAiBl1B,KAExBq1B,IACqB/T,EAASrxB,QAC1BqlC,GAER,KAGJ5iC,GAASi3B,EAASv0B,IAAI4K,EAAI,uCAG1BqtB,EAAYsH,EAAWn0B,EAASuH,GAChCstB,GACJ,IAEGA,IAAkB/T,EAASrxB,QAC1BqlC,GAER,EA+BIM,eAAgBf,EAAqBe,eACrCC,mBAAoBhB,EAAqBgB,mBACzCnI,UA/BJ,SAAmBpM,GACf,IAAIA,EACA,OAAOqI,EAASv1B,MAAM,qCAG1B,GAAIkgC,EAAUhT,GAEVA,EAAW,CAACA,OACT,KAAI+S,EAAa/S,GAKpB,OAAOqI,EAASv1B,MAAM,6EAFtBktB,EAAW7I,EAAQ6I,EAGvB,CAEA72B,EAAQ62B,GAAU,SAAU9gB,GACxBq0B,EAAqBgB,mBAAmBr1B,GACxCo0B,EAAkBlH,UAAUltB,GAC5BkrB,EAAaoK,WAAWt1B,EAC5B,GACJ,EAWIkuB,aATJ,SAAsBC,GAClBiG,EAAkBlG,cAAgBkG,EAAkBlG,aAAaC,EACrE,EASJ,iCC3TA3lC,EAAOC,QAAU,SAASsf,GACtB,IAAI4G,EAAW5G,EAAQmjB,aAAavc,SA0CpC,MAAO,CACHqmB,aAnCJ,SAAsBh1B,GAClB,IAAIqP,EAAQV,EAAS3O,GACrB,OAAOqP,KAAWA,EAAM2lB,YAC5B,EAiCIG,iBA1BJ,SAA0Bn1B,GACtB2O,EAAS3O,GAASg1B,cAAe,CACrC,EAyBIC,OAjBJ,SAAgBj1B,GACZ,QAAS2O,EAAS3O,GAASu1B,IAC/B,EAgBIL,SARJ,SAAkBl1B,EAASu1B,GACvB5mB,EAAS3O,GAASu1B,OAASA,CAC/B,EAQJ,iCCjDA/sC,EAAOC,QAAU,WACb,IAAI+sC,EAAU,EAWd,MAAO,CACHC,SALJ,WACI,OAAOD,GACX,EAKJ,iCCfAhtC,EAAOC,QAAU,SAASsf,GACtB,IAAIisB,EAAkBjsB,EAAQisB,YAC1BrlB,EAAkB5G,EAAQmjB,aAAavc,SAsC3C,MAAO,CACHtkB,IA/BJ,SAAe2V,GACX,IAAIqP,EAAQV,EAAS3O,GAErB,OAAIqP,QAAsB,IAAbA,EAAM7P,GACR6P,EAAM7P,GAGV,IACX,EAwBIkV,IAhBJ,SAAe1U,GACX,IAAIqP,EAAQV,EAAS3O,GAErB,IAAKqP,EACD,MAAM,IAAIha,MAAM,gEAGpB,IAAImK,EAAKw0B,EAAYyB,WAIrB,OAFApmB,EAAM7P,GAAKA,EAEJA,CACX,EAMJ,iCC5CAhX,EAAOC,QAAU,SAAS2kC,GACtB,IAAIsI,EAAiB,CAAC,EAQtB,SAASC,EAAa31B,GAClB,IAAIR,EAAK4tB,EAAU/iC,IAAI2V,GAEvB,YAAW,IAAPR,EACO,GAGJk2B,EAAel2B,IAAO,EACjC,CAkCA,MAAO,CACHnV,IAAKsrC,EACLnkB,IA5BJ,SAAqBxR,EAASuH,GAC1B,IAAI/H,EAAK4tB,EAAU/iC,IAAI2V,GAEnB01B,EAAel2B,KACfk2B,EAAel2B,GAAM,IAGzBk2B,EAAel2B,GAAIhU,KAAK+b,EAC5B,EAqBI6tB,eAnBJ,SAAwBp1B,EAASuH,GAE7B,IADA,IAAIqrB,EAAY+C,EAAa31B,GACpBvN,EAAI,EAAGgB,EAAMm/B,EAAUnjC,OAAQgD,EAAIgB,IAAOhB,EAC/C,GAAImgC,EAAUngC,KAAO8U,EAAU,CAC7BqrB,EAAU5gC,OAAOS,EAAG,GACpB,KACF,CAER,EAYI4iC,mBAVJ,SAA4Br1B,GAC1B,IAAI4yB,EAAY+C,EAAa31B,GACxB4yB,IACLA,EAAUnjC,OAAS,EACrB,EAQJ,iCClDAjH,EAAOC,QAAU,SAASmtC,GACtB,SAASC,IAET,CAEA,IAAI1M,EAAW,CACXv0B,IAAKihC,EACL3gC,KAAM2gC,EACNjiC,MAAOiiC,GAGX,IAAID,GAAShtC,OAAO+I,QAAS,CACzB,IAAImkC,EAAiB,SAAS3M,EAAUp2B,GAGpCo2B,EAASp2B,GAAQ,WACb,IAAIvJ,EAAImI,QAAQoB,GAChB,GAAIvJ,EAAEG,MACFH,EAAEG,MAAMgI,QAAS9H,gBAEjB,QAAS4I,EAAI,EAAGA,EAAI5I,UAAU4F,OAAQgD,IAClCjJ,EAAEK,UAAU4I,GAGxB,CACJ,EAEAqjC,EAAe3M,EAAU,OACzB2M,EAAe3M,EAAU,QACzB2M,EAAe3M,EAAU,QAC7B,CAEA,OAAOA,CACX,iCCxCA,IAAI7hB,EAAO,OAOX,SAASqH,EAAS3O,GACd,OAAOA,EAAQsH,EACnB,CAMA9e,EAAOC,QAAU,CACbssC,UAdJ,SAAmB/0B,GAEf,OADAA,EAAQsH,GAAQ,CAAC,EACVqH,EAAS3O,EACpB,EAYI2O,WACA2mB,WAPJ,SAAoBt1B,UACTA,EAAQsH,EACnB,iCCd6B,mBAAlBpe,OAAO0P,SACd1P,OAAO0P,OAAS,SAAUyM,GAEtB,IADA,IAAIxQ,EAAO,GACFC,EAAK,EAAGA,EAAKjL,UAAU4F,OAAQqF,IACpCD,EAAKC,EAAK,GAAKjL,UAAUiL,GAE7B,IAAKuQ,EACD,MAAM9V,UAAU,8CAOpB,IALA,IAAIwmC,EAAU,SAAU52B,GAChBA,GACAjW,OAAOc,KAAKmV,GAAQlV,SAAQ,SAAUyM,GAAO,OAAQ2O,EAAO3O,GAAOyI,EAAOzI,EAAO,GAEzF,EACSrD,EAAK,EAAG4T,EAASpS,EAAMxB,EAAK4T,EAAOxX,OAAQ4D,IAAM,CAEtD0iC,EADa9uB,EAAO5T,GAExB,CACA,OAAOgS,CACX,uBChBK,SAAU5c,GAAW,aAE5B,IAAIutC,EAAU,CACVC,SAAU,CACNC,UAAW,CAAC,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OACtDC,SAAU,CACN,SACA,SACA,UACA,YACA,WACA,SACA,aAGRC,OAAQ,CACJF,UAAW,CACP,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,SAAU,CACN,UACA,WACA,QACA,QACA,MACA,OACA,OACA,SACA,YACA,UACA,WACA,aAGRE,YAAa,CAAC,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAC1DC,eAAgB,EAChBC,QAAS,SAAUC,GACf,IAAI39B,EAAI29B,EAAM,IACd,GAAI39B,EAAI,GAAKA,EAAI,GACb,MAAO,KACX,OAAQA,EAAI,IACR,KAAK,EACD,MAAO,KACX,KAAK,EACD,MAAO,KACX,KAAK,EACD,MAAO,KACX,QACI,MAAO,KAEnB,EACA49B,eAAgB,OAChBC,iBAAkB,KAClBC,YAAa,sBACbC,YAAa,kBACbC,KAAM,CAAC,KAAM,MACbC,cAAe,OACfC,eAAgB,QAChBC,cAAe,OACfC,gBAAiB,SACjBC,WAAW,GAGfzuC,EAAQgB,QAAUusC,EAClBvtC,EAAQutC,QAAUA,EAElB9sC,OAAOY,eAAerB,EAAS,aAAc,CAAEsB,OAAO,GAExD,CAlFiE+f,CAAQrhB,wBCGhE,SAAUA,GAAW,aAE5B,IAAI0uC,EAAuB,oBAAXvuC,aAA+C,IAArBA,OAAOwuC,UAC3CxuC,OAAOwuC,UACP,CACEC,MAAO,CAAC,GAEZC,EAAa,CACbrB,SAAU,CACNC,UAAW,CAAC,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OACtDC,SAAU,CACN,UACA,gBACA,cACA,eACA,eACA,cACA,WAGRC,OAAQ,CACJF,UAAW,CACP,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,SAAU,CACN,UACA,YACA,QACA,QACA,OACA,QACA,QACA,SACA,WACA,UACA,WACA,aAGRM,eAAgB,QAChBS,WAAW,GAEfC,EAAGE,MAAME,GAAKD,EACd,IAAIC,EAAKJ,EAAGE,MAEZ5uC,EAAQ6uC,WAAaA,EACrB7uC,EAAQgB,QAAU8tC,EAElBruC,OAAOY,eAAerB,EAAS,aAAc,CAAEsB,OAAO,GAExD,CAhEiE+f,CAAQrhB,qBCAND,EAAOC,QAGjE,WAAc,aAiBnB,IAAIkQ,EAAW,WAQX,OAPAA,EAAWzP,OAAO0P,QAAU,SAAkB/J,GAC1C,QAASgK,EAAGpG,EAAI,EAAGlJ,EAAIM,UAAU4F,OAAQgD,EAAIlJ,EAAGkJ,IAE5C,QAASqG,KADTD,EAAIhP,UAAU4I,GACOvJ,OAAOC,UAAUC,eAAeC,KAAKwP,EAAGC,KAAIjK,EAAEiK,GAAKD,EAAEC,IAE9E,OAAOjK,CACX,EACO8J,EAAShP,MAAMC,KAAMC,UAChC,EAEI2tC,EAAa,SAAUC,EAAavB,EAAWwB,GAAU,OAAOA,EAAOtB,OAAOF,EAAY,YAAc,YAAYuB,EAAc,EAEtI,SAASE,EAAU50B,GACf,KAAOA,EAAK4qB,YACR5qB,EAAKlB,YAAYkB,EAAK4qB,WAC9B,CACA,SAASiK,EAAezyB,GACpB,IACI,MAAkC,mBAAvBA,EAAM0yB,aACF1yB,EAAM0yB,eACL,GAET1yB,EAAME,MACjB,OACOzR,GACH,OAAOuR,EAAME,MACjB,CACJ,CAEA,IAAIyyB,EAAgB,CAChB5B,WAAW,EACX6B,WAAY,MACZC,UAAW,MACXC,MAAO,SAEX,SAASC,EAAkBC,GACvB,IAAIpjC,EAAS4D,EAASA,EAAS,CAAC,EAAGm/B,GAAgBK,GACnD,OAAO,SAAUhB,GACbA,EAAGpiC,OAAOgjC,WAAahjC,EAAOgjC,WAC9BZ,EAAGpiC,OAAOijC,UAAYjjC,EAAOijC,UAC7B,IAAIlvC,EAAO,CAAEsvC,gBAAiB,MAC9B,SAASC,IACL,GAAKlB,EAAGmB,WAAR,CAEAX,EAAUR,EAAGmB,YACb,QAASplC,EAAQ,EAAGA,EAAQikC,EAAGoB,cAAc9oC,OAAQyD,IAAS,CAC1D,IAAI8M,EAAUm3B,EAAGoB,cAAcrlC,GAC1B8M,EAAQU,YAEbV,EAAQU,WAAWmB,YAAY7B,EACnC,CAPI,CAQR,CACA,SAASw4B,IACArB,EAAGmB,aAERxvC,EAAKsvC,gBAAkBjB,EAAGsB,eAAe,MAAO,gCAChD3vC,EAAKsvC,gBAAgB9L,UAAY,EACjCoM,IACAvB,EAAGmB,WAAW32B,YAAY7Y,EAAKsvC,iBAC/BjB,EAAGwB,kBAAkBC,UAAUpnB,IAAI,+BAAiCzc,EAAOkjC,OAC/E,CACA,SAASS,IACL,GAAK5vC,EAAKsvC,gBAAV,CAEAT,EAAU7uC,EAAKsvC,iBAEf,IADA,IAAIS,EAAOx3B,SAASy3B,yBACXrmC,EAAI,EAAGA,EAAI,GAAIA,IAAK,CACzB,IAAIsmC,EAAQ5B,EAAG6B,UAAU,8BAA+B,IAAI97B,KAAKi6B,EAAG8B,YAAaxmC,GAAI,EAAGA,GACpFsmC,EAAMG,QAAQC,cAAe,IAAIj8B,MAAOi8B,YACxCJ,EAAMG,QAAQE,iBAAkB,IAAIl8B,MAAOk8B,eAC3CL,EAAMH,UAAUpnB,IAAI,SACxBunB,EAAMj4B,YAAc02B,EAAW/kC,EAAGsC,EAAOmhC,UAAWiB,EAAGkC,MACvDN,EAAM7zB,iBAAiB,QAASo0B,GAChCT,EAAKl3B,YAAYo3B,EACrB,CACAjwC,EAAKsvC,gBAAgBz2B,YAAYk3B,GAC7B1B,EAAGpiC,OAAOwkC,SACVpC,EAAG8B,cAAgB9B,EAAGpiC,OAAOwkC,QAAQH,cACrCjC,EAAGqC,aAAaZ,UAAUpnB,IAAI,sBAE9B2lB,EAAGqC,aAAaZ,UAAUloB,OAAO,sBACjCymB,EAAGpiC,OAAO0kC,SACVtC,EAAG8B,cAAgB9B,EAAGpiC,OAAO0kC,QAAQL,cACrCjC,EAAGuC,aAAad,UAAUpnB,IAAI,sBAE9B2lB,EAAGuC,aAAad,UAAUloB,OAAO,qBAtBjC,CAuBR,CACA,SAASipB,IACLxC,EAAGyC,MAAMzC,EAAGqC,aAAc,SAAS,SAAUlrC,GACzCA,EAAEqtB,iBACFrtB,EAAEurC,kBACF1C,EAAG2C,WAAW3C,EAAG8B,YAAc,GAC/Bc,IACArB,GACJ,IACAvB,EAAGyC,MAAMzC,EAAGuC,aAAc,SAAS,SAAUprC,GACzCA,EAAEqtB,iBACFrtB,EAAEurC,kBACF1C,EAAG2C,WAAW3C,EAAG8B,YAAc,GAC/Bc,IACArB,GACJ,IACAvB,EAAGyC,MAAM9wC,EAAKsvC,gBAAiB,aAAa,SAAU9pC,GAC3B,UAAnB6oC,EAAGpiC,OAAOilC,MACV7C,EAAG8C,YAAYrC,EAAetpC,GAAI,8BAC1C,GACJ,CACA,SAAS4rC,IACL,GAAK/C,EAAGmB,YAEHnB,EAAGgD,cAAc1qC,OAAtB,CAGA,IADA,IAAI2qC,EAAoBjD,EAAGmB,WAAW5d,iBAAiB,yCAC9CxnB,EAAQ,EAAGA,EAAQknC,EAAkB3qC,OAAQyD,IAClDknC,EAAkBlnC,GAAO0lC,UAAUloB,OAAO,YAE9C,IAAI2pB,EAAclD,EAAGgD,cAAc,GAAGhB,WAClCJ,EAAQ5B,EAAGmB,WAAWpmB,cAAc,2CAA6CmoB,EAAc,GAAK,KACpGtB,GACAA,EAAMH,UAAUpnB,IAAI,WARpB,CAUR,CACA,SAASuoB,IACL,IAAIO,EAAenD,EAAGgD,cAAc,GAChCG,KACAA,EAAe,IAAIp9B,KAAKo9B,IACXC,YAAYpD,EAAG8B,aACxB9B,EAAGpiC,OAAOwkC,SAAWe,EAAenD,EAAGpiC,OAAOwkC,UAC9Ce,EAAenD,EAAGpiC,OAAOwkC,SAEzBpC,EAAGpiC,OAAO0kC,SAAWa,EAAenD,EAAGpiC,OAAO0kC,UAC9Ca,EAAenD,EAAGpiC,OAAO0kC,SAE7BtC,EAAG8B,YAAcqB,EAAalB,eAElCjC,EAAGqD,mBAAmBzwC,MAAQqL,OAAO+hC,EAAG8B,aACpC9B,EAAGmB,YACUnB,EAAGmB,WAAW5d,iBAAiB,gCACrCzwB,SAAQ,SAAU8uC,GACrBA,EAAMG,QAAQqB,YAAYpD,EAAG8B,aACxB9B,EAAGpiC,OAAOwkC,SAAWR,EAAMG,QAAU/B,EAAGpiC,OAAOwkC,SAC/CpC,EAAGpiC,OAAO0kC,SAAWV,EAAMG,QAAU/B,EAAGpiC,OAAO0kC,QAChDV,EAAMH,UAAUpnB,IAAI,sBAGpBunB,EAAMH,UAAUloB,OAAO,qBAE/B,IAEJwpB,GACJ,CACA,SAASZ,EAAYhrC,GACjBA,EAAEqtB,iBACFrtB,EAAEurC,kBACF,IAAIY,EAAc7C,EAAetpC,GACjC,GAAMmsC,aAAuB3U,UAEzB2U,EAAY7B,UAAUzF,SAAS,wBAE/BsH,EAAY7B,UAAUzF,SAAS,gBAEnCuH,EAASD,EAAYvB,SACjB/B,EAAGpiC,OAAO4lC,eAAe,CACzB,IAAIC,EAA4B,WAAnBzD,EAAGpiC,OAAOilC,KACnBa,EAA2B,UAAnB1D,EAAGpiC,OAAOilC,MAAgD,IAA5B7C,EAAGgD,cAAc1qC,QACvDmrC,GAAUC,IACV1D,EAAGroB,OACX,CACJ,CACA,SAAS4rB,EAASI,GACd,IAAIR,EAAe,IAAIp9B,KAAKi6B,EAAG8B,YAAa6B,EAAK3B,WAAY2B,EAAKC,WAC9DZ,EAAgB,GACpB,OAAQhD,EAAGpiC,OAAOilC,MACd,IAAK,SACDG,EAAgB,CAACG,GACjB,MACJ,IAAK,WACDH,EAAc3uC,KAAK8uC,GACnB,MACJ,IAAK,QAC+B,IAA5BnD,EAAGgD,cAAc1qC,OACjB0qC,EAAgB,CAACG,IAGjBH,EAAgBhD,EAAGgD,cAAcxlC,OAAO,CAAC2lC,KAC3BU,MAAK,SAAUtxC,EAAG0e,GAAK,OAAO1e,EAAEiiB,UAAYvD,EAAEuD,SAAW,IAInFwrB,EAAG8D,QAAQd,GAAe,GAC1BD,GACJ,CACA,IAAIgB,EAAS,CACT,IAAK,EACL,GAAI,EACJ,GAAI,EACJ,IAAK,GAET,SAASC,EAAUrsC,EAAGwZ,EAAI8yB,EAAK9sC,GAC3B,IAAI+sC,OAAmC,IAAtBH,EAAO5sC,EAAEgtC,SAC1B,IAAKD,GAA4B,KAAd/sC,EAAEgtC,UAGhBnE,EAAGmB,YAAexvC,EAAKsvC,gBAA5B,CAEA,IAAIgC,EAAoBjD,EAAGmB,WAAWpmB,cAAc,yCAChDhf,EAAQqB,MAAMpL,UAAU2C,QAAQzC,KAAKP,EAAKsvC,gBAAgB9U,SAAUjiB,SAASk6B,eACjF,IAAe,IAAXroC,EAAc,CACd,IAAImS,EAAS+0B,GAAqBtxC,EAAKsvC,gBAAgBoD,kBACvDn2B,EAAO0W,QACP7oB,EAAQmS,EAAOo2B,EACnB,CACIJ,EACAvyC,EAAKsvC,gBAAgB9U,UAAU,GAAKpwB,EAAQgoC,EAAO5sC,EAAEgtC,UAAY,IAAIvf,QAElD,KAAdztB,EAAEgtC,SACPxyC,EAAKsvC,gBAAgBjF,SAAS9xB,SAASk6B,gBACvCb,EAASr5B,SAASk6B,cAAcrC,QAbhC,CAeR,CACA,SAASwC,IACL,IAAIroC,EACoE,WAA9C,QAApBA,EAAK8jC,EAAGpiC,cAA2B,IAAP1B,OAAgB,EAASA,EAAG2mC,OAAiD,IAA5B7C,EAAGgD,cAAc1qC,QAChG0nC,EAAG3+B,OAAM,GACR2+B,EAAGgD,cAAc1qC,QAClBipC,GACR,CAEA,SAASiD,IACL5mC,EAAO6mC,qBAAuBzE,EAAG0E,aAAa1C,WAC9ChC,EAAG0E,aAAanB,SAAS3lC,EAAO6mC,sBAChCzE,EAAG2E,aAAe/mC,EAAO6mC,oBAC7B,CACA,SAASG,IACAhnC,EAAO6mC,uBAEZzE,EAAG0E,aAAanB,SAAS3lC,EAAO6mC,sBAChCzE,EAAG2E,aAAe/mC,EAAO6mC,4BAClB7mC,EAAO6mC,qBAClB,CACA,SAASI,IACL,GAA6B,OAAzBlzC,EAAKsvC,gBAEL,IADA,IAAIhC,EAASttC,EAAKsvC,gBAAgB1d,iBAAiB,gCAC1CxnB,EAAQ,EAAGA,EAAQkjC,EAAO3mC,OAAQyD,IACvCkjC,EAAOljC,GAAOwZ,oBAAoB,QAAS4sB,EAGvD,CACA,MAAO,CACH2C,cAAe,WACX9E,EAAGpiC,OAAOmnC,YAAa,CAC3B,EACAC,cAAejC,EACfiB,YACAhV,QAAS,CACLwV,EACAtD,EACAG,EACAmB,EACAO,EACA,WACI/C,EAAGpiC,OAAOqnC,QAAQ5wC,KAAKkwC,GACvBvE,EAAGkF,cAAc7wC,KAAK,cAC1B,GAEJ8wC,UAAW,CACPP,EACAC,EACA,WACI7E,EAAGpiC,OAAOqnC,QAAUjF,EAAGpiC,OAAOqnC,QAAQtsC,QAAO,SAAUysC,GAAQ,OAAOA,IAASb,CAAW,GAC9F,GAGZ,CACJ,CAEA,OAAOxD,CAEX,CA3SoFpuB,8BCD1E3gB,GAuBR,SAASqzC,EAAMC,EAAkBzpC,EAASD,GACxC,MAAM,IAAI0pC,EAAiB,2DAA6DzpC,EAAU,IAAKD,EACzG,CAxBsC,mBAA3B5J,EAAUuzC,gBAErBvzC,EAAUuzC,cAAgB,SAASC,GAC7BA,IAaN,SAA2BA,EAAWniB,GACpCmiB,aAAqBC,aAAeJ,EAAMjtC,UAAW,4CACnC,UAAlBotC,EAAUhmC,MAAoB6lC,EAAMjtC,UAAW,gDAC/CotC,EAAUniB,MAAQA,GAAQgiB,EAAMK,aAAc,0DAA2D,gBAC3G,CAhBIC,CAAkBH,EAAW/yC,MAC7B+yC,EAAU3gB,WAEV2gB,EAAYt7B,SAASE,cAAc,UACzB5K,KAAO,SACjBgmC,EAAUI,QAAS,EACnBnzC,KAAK+X,YAAYg7B,GACjBA,EAAU3gB,QACVpyB,KAAKiY,YAAY86B,GAErB,EAWD,EAAEK,gBAAgB7zC,0CCsBnBX,EAAOC,QA5BS,SAASw0C,EAAWC,EAAQxzC,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GAOzD,IAAKyzC,EAAW,CACd,IAAIrpC,EACJ,QAAe,IAAXspC,EACFtpC,EAAQ,IAAIyB,MACV,qIAGG,CACL,IAAIR,EAAO,CAACnL,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GACvB2zC,EAAW,GACfvpC,EAAQ,IAAIyB,MACV6nC,EAAOpnC,QAAQ,OAAO,WAAa,OAAOjB,EAAKsoC,IAAa,MAExDpqC,KAAO,qBACf,CAGA,MADAa,EAAMwpC,YAAc,EACdxpC,CACR,CACF,01BCxB2C4jB,KAAM1N,QAAN0N,KASxC7uB,WAT8CmhB,QASlC,IACf,MACU,aACA,IAAIuzB,oBAAuB,CAC9B,CAEA,CAACC,EAAyB70C,KArCjC,MAyCAS,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ80C,eAAiB90C,EAAQkX,KAAOlX,EAAQ+0C,sBAAwB/0C,EAAQg1C,4BAA8Bh1C,EAAQi1C,kBAAoBj1C,EAAQk1C,oBAAsBl1C,EAAQm1C,kBAAoBn1C,EAAQo1C,eAAiBp1C,EAAQq1C,kBAAoBr1C,EAAQs1C,kBAAoBt1C,EAAQu1C,oBAAsBv1C,EAAQw1C,IAAMx1C,EAAQy1C,oBAAsBz1C,EAAQ01C,wBAA0B11C,EAAQ21C,YAAc31C,EAAQ41C,oBAAsB51C,EAAQ61C,oBAAsB71C,EAAQ81C,UAAY91C,EAAQ+1C,gBAAkB/1C,EAAQg2C,YAAch2C,EAAQi2C,YAAcj2C,EAAQk2C,qBAAuBl2C,EAAQm2C,wBAA0Bn2C,EAAQo2C,oBAAsBp2C,EAAQq2C,cAAgBr2C,EAAQs2C,gBAAkBt2C,EAAQu2C,eAAiBv2C,EAAQw2C,oBAAsBx2C,EAAQy2C,iBAAmBz2C,EAAQ02C,eAAiB12C,EAAQ22C,eAAiB32C,EAAQ42C,oBAAsB52C,EAAQ62C,qBAAuB72C,EAAQ82C,uBAAyB92C,EAAQ+2C,2BAA6B/2C,EAAQg3C,0BAA4Bh3C,EAAQi3C,0BAA4Bj3C,EAAQk3C,oBAAiB,EACtiCl3C,EAAQm3C,OAqVR,SAAgBC,EAAM77B,GACf67B,GACHC,EAAY97B,EAEhB,EAxVAvb,EAAQs3C,cAAgBA,EACxBt3C,EAAQu3C,uBAoWR,SAAgClpC,EAAKmpC,EAAU,KAAMl4B,EAAU,MAC7D,IAAKjR,EACH,OAAO,KAET,IACE,GAAIiR,GAA0B,iBAARjR,EAAkB,CACtC,GAAIiR,EAAQm4B,oBAAsBppC,EAAIqpC,WAAW,QAAS,CACxD,MAAMC,EAAOtpC,EAAIkL,MAAM,OACnBo+B,GAAM3wC,QAAU,IAClBqH,EAAM,UAAUA,IAEpB,CACA,GAAIiR,EAAQs4B,mBACV,IACEvpC,EAAMwpC,EAAmBxpC,EAC3B,CAAE,MAAO,CAEb,CACA,MAAMypC,EAAcN,EAAU,IAAI19B,IAAIzL,EAAKmpC,GAAW,IAAI19B,IAAIzL,GAC9D,GA/BJ,SAA0BA,GACxB,OAAQA,GAAKmL,UACX,IAAK,QACL,IAAK,SACL,IAAK,OACL,IAAK,UACL,IAAK,OACH,OAAO,EACT,QACE,OAAO,EAEb,CAoBQu+B,CAAiBD,GACnB,OAAOA,CAEX,CAAE,MAAO,CACT,OAAO,IACT,EA3XA93C,EAAQg4C,oBA0uBR,SAA6B3F,EAAO,IAAI59B,MAEtC,MADe,CAAC49B,EAAK4F,iBAAiBpsC,YAAawmC,EAAK6F,cAAgB,GAAGrsC,WAAWssC,SAAS,EAAG,KAAM9F,EAAK+F,aAAavsC,WAAWssC,SAAS,EAAG,KAAM9F,EAAKgG,cAAcxsC,WAAWssC,SAAS,EAAG,KAAM9F,EAAKiG,gBAAgBzsC,WAAWssC,SAAS,EAAG,KAAM9F,EAAKkG,gBAAgB1sC,WAAWssC,SAAS,EAAG,MACvRvqC,KAAK,GACrB,EA5uBA5N,EAAQw4C,QA2wBR,WACE,GAAsB,oBAAXC,QAAwD,mBAAvBA,QAAQC,WAClD,OAAOD,OAAOC,aAEhB,MAAMC,EAAM,IAAI7tB,WAAW,IAC3B,GAAsB,oBAAX2tB,QAA6D,mBAA5BA,QAAQG,gBAClDH,OAAOG,gBAAgBD,QAEvB,QAAS3uC,EAAI,EAAGA,EAAI,GAAIA,IACtB2uC,EAAI3uC,GAAK4a,KAAKi0B,MAAsB,IAAhBj0B,KAAKG,UAG7B,OAAOuyB,EAAcqB,EACvB,EAvxBA34C,EAAQ84C,kBAgUR,WACE,OAAOC,CACT,EAjUA/4C,EAAQwM,KAkUR,SAAc+O,GACRw9B,GAAajE,EAAekE,OAC9B9vC,QAAQiD,IAAI,SAASoP,IAEzB,EArUAvb,EAAQi5C,cAwtBR,SAAuBp0C,GACrB,MAAoB,iBAANA,QAAoC,IAAlBA,GAAGmnB,UACrC,EAztBAhsB,EAAQk5C,aA0tBR,SAAsBC,EAAMtjB,GAC1B,GAAIsjB,EAAKnyC,SAAW6uB,EAAK7uB,OACvB,OAAO,EAET,QAASgD,EAAI,EAAGovC,EAAKD,EAAKnyC,OAAQgD,EAAIovC,EAAIpvC,IACxC,GAAImvC,EAAKnvC,KAAO6rB,EAAK7rB,GACnB,OAAO,EAGX,OAAO,CACT,EAnuBAhK,EAAQq5C,cAAW,EACnBr5C,EAAQs5C,iBA4vBR,SAA0BnuB,GAKxB,OAJKouB,IACHA,EAAiB,2UACjBC,EAAmB,IAAIC,IAAI,CAAC,CAAC,IAAK,SAE7BtuB,EAAIuuB,WAAWH,GAAgB,CAAClzC,EAAGszC,EAAIC,IACrCD,EAAKA,EAAGE,UAAU,QAAUL,EAAiB53C,IAAIg4C,IAE5D,EAnwBA55C,EAAQ85C,cAydR,SAAuB1wC,GACrB,MAAML,EAAMtI,OAAO4D,OAAO,MAC1B,UAAY4J,EAAK3M,KAAU8H,EACzBL,EAAIkF,GAAO3M,EAEb,OAAOyH,CACT,EA9dA/I,EAAQ+5C,WAqdR,SAAoBhxC,GAClB,OAAOtI,OAAOc,KAAKwH,GAAK/B,MAC1B,EAtdAhH,EAAQg6C,kBAmTR,SAA2Bz9B,GACrB09B,OAAOC,UAAU39B,KACnBw8B,EAAYx8B,EAEhB,EAtTAvc,EAAQm6C,OAASA,EACjBn6C,EAAQo6C,SA+cR,SAAkB94C,GAChB,OAAOqL,OAAOif,aAAatqB,GAAS,GAAK,IAAMA,GAAS,GAAK,IAAMA,GAAS,EAAI,IAAc,IAARA,EACxF,EAhdAtB,EAAQq6C,cAAgBA,EACxBr6C,EAAQs6C,kBA2qBR,SAA2BnvB,GACzB,GAAIA,EAAI,IAAM,IAAQ,CACpB,IAAIovB,EAQJ,GAPe,MAAXpvB,EAAI,IAA4B,MAAXA,EAAI,GAC3BovB,EAAW,WACS,MAAXpvB,EAAI,IAA4B,MAAXA,EAAI,GAClCovB,EAAW,WACS,MAAXpvB,EAAI,IAA4B,MAAXA,EAAI,IAA4B,MAAXA,EAAI,KACvDovB,EAAW,SAETA,EACF,IACE,MAAMC,EAAU,IAAIC,YAAYF,EAAU,CACxCG,OAAO,IAEHxuB,EAASmuB,EAAclvB,GAC7B,OAAOqvB,EAAQG,OAAOzuB,EACxB,CAAE,MAAO0uB,GACPnuC,EAAK,uBAAuBmuC,MAC9B,CAEJ,CACA,MAAMC,EAAS,GACf,QAAS7wC,EAAI,EAAGovC,EAAKjuB,EAAInkB,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC5C,MAAM8wC,EAAOC,EAAwB5vB,EAAIhB,WAAWngB,IACpD6wC,EAAO93C,KAAK+3C,EAAOnuC,OAAOif,aAAakvB,GAAQ3vB,EAAI+R,OAAOlzB,GAC5D,CACA,OAAO6wC,EAAOjtC,KAAK,GACrB,EAtsBA5N,EAAQ63C,mBAAqBA,EAC7B73C,EAAQq3C,YAAcA,EACtBr3C,EAAQg7C,mBAwsBR,SAA4B7vB,GAC1B,OAAOC,SAASC,mBAAmBF,GACrC,EAzsBAnrB,EAAQyM,KAAOA,EACf,MAAM4sC,IAA8B,iBAAZ7Y,SAAwBA,QAAU,IAAO,oBAAuBA,QAAQya,SAASC,IAAQ1a,QAAQya,SAASE,UAAY3a,QAAQtyB,MAAyB,YAAjBsyB,QAAQtyB,MACtKlO,EAAQq5C,SAAWA,EAEnBr5C,EAAQ+1C,gBADgB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,GAGxC/1C,EAAQk2C,qBADqB,CAAC,KAAO,EAAG,EAAG,KAAO,EAAG,GAGrDl2C,EAAQ01C,wBADwB,IAGhC11C,EAAQ21C,YADY,KAGpB31C,EAAQ41C,oBADoB,IAG5B51C,EAAQs2C,gBADgBV,mBAYxB51C,EAAQk1C,oBAVoB,CAC1BkG,IAAK,EACLC,QAAS,EACTC,MAAO,EACPC,KAAM,EACNC,kBAAmB,GACnBC,oBAAqB,GACrBC,oBAAqB,GACrBC,OAAQ,KASV37C,EAAQ02C,eANe,CACrBkF,QAAS,EACTC,OAAQ,EACRC,aAAc,EACdC,eAAgB,GAIlB/7C,EAAQ82C,uBADuB,yBAS/B92C,EAAQ62C,qBAPqB,CAC3B+E,SAAU,EACVI,KAAM,EACNC,SAAU,EACVC,MAAO,GACPC,IAAK,IAaPn8C,EAAQ+2C,2BAV2B,CACjCqF,OAAQ,EACRC,OAAQ,EACRC,cAAe,GACfC,eAAgB,GAChBC,iBAAkB,GAClBC,UAAW,GACXC,cAAe,GACfC,YAAa,IAaf38C,EAAQo1C,eAVe,CACrBkG,MAAO,EACPsB,gBAAiB,EACjBC,KAAM,GACNC,mBAAoB,GACpBC,uBAAwB,IACxBC,uBAAwB,IACxBC,SAAU,KACVC,mBAAoB,MAetBl9C,EAAQi1C,kBAZkB,CACxBkI,KAAM,EACNC,OAAQ,EACRC,YAAa,EACbC,UAAW,EACXC,iBAAkB,EAClBC,mBAAoB,EACpBC,wBAAyB,EACzBC,YAAa,EACbC,iBAAkB,EAClBC,iBAAkB,GAQpB59C,EAAQ81C,UALU,CAChB+H,eAAgB,EAChBC,UAAW,EACXC,WAAY,GA+Bd/9C,EAAQu2C,eA5Be,CACrByH,KAAM,EACNC,KAAM,EACNhC,SAAU,EACViC,KAAM,EACNC,OAAQ,EACRC,OAAQ,EACRC,QAAS,EACTC,SAAU,EACVC,UAAW,EACXC,UAAW,GACXC,SAAU,GACVC,UAAW,GACXxC,MAAO,GACPyC,MAAO,GACPxC,IAAK,GACLyC,MAAO,GACPC,eAAgB,GAChBC,MAAO,GACPC,MAAO,GACPC,OAAQ,GACRC,OAAQ,GACRC,YAAa,GACbC,QAAS,GACTC,UAAW,GACXC,OAAQ,GACRC,OAAQ,IAOVt/C,EAAQw2C,oBAJoB,CAC1B+I,MAAO,QACPC,MAAO,KAeTx/C,EAAQ22C,eAZe,CACrB2G,UAAW,EACXmC,OAAQ,EACRnE,MAAO,EACPoE,OAAQ,EACRC,SAAU,GACVC,OAAQ,GACRC,SAAU,GACVC,OAAQ,IACRC,aAAc,IACdC,eAAgB,KAwBlBhgD,EAAQ42C,oBArBoB,CAC1BiJ,SAAU,EACVI,SAAU,EACVC,SAAU,EACVC,UAAW,KACXC,SAAU,KACVC,cAAe,MACfC,MAAO,MACPC,WAAY,MACZC,MAAO,OACPC,KAAM,OACNC,KAAM,OACNC,WAAY,QACZC,YAAa,QACbC,gBAAiB,QACjBC,YAAa,QACbC,KAAM,SACNC,SAAU,SACVC,eAAgB,SAChBC,kBAAmB,UAUrBlhD,EAAQg3C,0BAP0B,CAChCmK,MAAO,EACPC,OAAQ,EACRC,QAAS,EACTC,MAAO,EACP9C,UAAW,GAmBbx+C,EAAQi3C,0BAhB0B,CAChCsK,EAAG,cACHC,EAAG,aACHC,EAAG,aACHC,EAAG,WACHC,GAAI,QACJC,GAAI,OACJC,GAAI,WACJC,GAAI,YACJC,GAAI,cACJC,GAAI,gBACJC,EAAG,YACHC,EAAG,SACHC,EAAG,WACHC,EAAG,aAULpiD,EAAQm2C,wBAPwB,CAC9BkM,GAAI,YACJC,GAAI,WACJC,GAAI,UACJC,GAAI,YACJC,GAAI,YAONziD,EAAQu1C,oBAJoB,CAC1BmN,EAAG,WACHN,EAAG,aAGL,MAAMtN,EAAiB,CACrB6N,OAAQ,EACRC,SAAU,EACV5J,MAAO,GAETh5C,EAAQ80C,eAAiBA,EAKzB90C,EAAQo2C,oBAJoB,CAC1B4F,KAAM,EACN6G,OAAQ,GA6FV7iD,EAAQw1C,IA1FI,CACVsN,WAAY,EACZC,aAAc,EACdC,WAAY,EACZC,YAAa,EACbC,cAAe,EACfC,QAAS,EACTC,mBAAoB,EACpBC,YAAa,EACbC,UAAW,EACXC,KAAM,GACNC,QAAS,GACTC,UAAW,GACXC,OAAQ,GACRC,OAAQ,GACRC,QAAS,GACTC,SAAU,GACVC,SAAU,GACVC,UAAW,GACXC,UAAW,GACXC,OAAQ,GACRC,YAAa,GACbC,KAAM,GACNC,OAAQ,GACRC,WAAY,GACZC,aAAc,GACdC,gBAAiB,GACjBC,kBAAmB,GACnBC,QAAS,GACTC,KAAM,GACNC,OAAQ,GACRC,UAAW,GACXC,QAAS,GACTC,eAAgB,GAChBC,eAAgB,GAChBC,UAAW,GACXC,WAAY,GACZC,QAAS,GACTC,qBAAsB,GACtBC,YAAa,GACbC,SAAU,GACVC,mBAAoB,GACpBC,cAAe,GACfC,SAAU,GACVC,SAAU,GACVC,eAAgB,GAChBC,iBAAkB,GAClBC,2BAA4B,GAC5BC,aAAc,GACdC,sBAAuB,GACvBC,oBAAqB,GACrBC,kBAAmB,GACnBC,eAAgB,GAChBC,gBAAiB,GACjBC,aAAc,GACdC,cAAe,GACfC,cAAe,GACfC,YAAa,GACbC,kBAAmB,GACnBC,gBAAiB,GACjBC,mBAAoB,GACpBC,iBAAkB,GAClBC,YAAa,GACbC,iBAAkB,GAClBC,eAAgB,GAChBC,eAAgB,GAChBC,aAAc,GACdC,UAAW,GACXC,eAAgB,GAChBC,mBAAoB,GACpBC,wBAAyB,GACzBC,iBAAkB,GAClBC,YAAa,GACbC,UAAW,GACXC,sBAAuB,GACvBC,oBAAqB,GACrBC,WAAY,GACZC,SAAU,GACVC,gBAAiB,GACjBC,cAAe,GACfC,sBAAuB,GACvBC,2BAA4B,GAC5BC,kBAAmB,GACnBC,wBAAyB,GACzBC,6BAA8B,GAC9BC,wBAAyB,GACzBC,4BAA6B,GAC7BC,yBAA0B,GAC1BC,cAAe,IAOjBroD,EAAQq1C,kBAJkB,CACxBiT,cAAe,EACfC,mBAAoB,GAGtB,IAAIxP,EAAYjE,EAAe8N,SAc/B,SAASn2C,EAAK8O,GACRw9B,GAAajE,EAAe8N,UAC9B15C,QAAQiD,IAAI,YAAYoP,IAE5B,CACA,SAAS87B,EAAY97B,GACnB,MAAM,IAAI3O,MAAM2O,EAClB,CA2CA,SAAS4+B,EAAOpxC,EAAK8V,EAAMvd,EAAOknD,GAAkB,GAOlD,OANA/nD,OAAOY,eAAe0H,EAAK8V,EAAM,CAC/Bvd,QACAO,YAAa2mD,EACb7jD,cAAc,EACdD,UAAU,IAELpD,CACT,CACA,MAAM+0C,EAAgB,WACpB,SAASA,EAAc9rC,EAASD,GAC1BnJ,KAAK2e,cAAgBu2B,GACvBgB,EAAY,oCAEdl2C,KAAKoJ,QAAUA,EACfpJ,KAAKmJ,KAAOA,CACd,CAGA,OAFA+rC,EAAc31C,UAAY,IAAIkM,MAC9BypC,EAAcv2B,YAAcu2B,EACrBA,CACT,CAXsB,GA0DtB,SAASiB,EAAclrB,GACA,iBAAVA,QAAwC,IAAlBA,GAAOplB,QACtCqwC,EAAY,sCAEd,MAAMrwC,EAASolB,EAAMplB,OACfyhD,EAAqB,KAC3B,GAAIzhD,EAASyhD,EACX,OAAO97C,OAAOif,aAAa1qB,MAAM,KAAMkrB,GAEzC,MAAMyuB,EAAS,GACf,QAAS7wC,EAAI,EAAGA,EAAIhD,EAAQgD,GAAKy+C,EAAoB,CACnD,MAAMC,EAAW9jC,KAAKE,IAAI9a,EAAIy+C,EAAoBzhD,GAC5C2hD,EAAQv8B,EAAMvB,SAAS7gB,EAAG0+C,GAChC7N,EAAO93C,KAAK4J,OAAOif,aAAa1qB,MAAM,KAAMynD,GAC9C,CACA,OAAO9N,EAAOjtC,KAAK,GACrB,CACA,SAASysC,EAAclvB,GACF,iBAARA,GACTksB,EAAY,sCAEd,MAAMrwC,EAASmkB,EAAInkB,OACbolB,EAAQ,IAAItB,WAAW9jB,GAC7B,QAASgD,EAAI,EAAGA,EAAIhD,IAAUgD,EAC5BoiB,EAAMpiB,GAAyB,IAApBmhB,EAAIhB,WAAWngB,GAE5B,OAAOoiB,CACT,CAzEApsB,EAAQq2C,cAAgBA,EAOxBr2C,EAAQs1C,kBANR,cAAgCe,EAC9B,WAAAv2B,CAAYvE,EAAKu/B,GACf8N,MAAMrtC,EAAK,qBACXpa,KAAK25C,KAAOA,CACd,GASF96C,EAAQ+0C,sBANR,cAAoCsB,EAClC,WAAAv2B,CAAYvE,EAAKxF,GACf6yC,MAAMrtC,EAAK,yBACXpa,KAAK4U,QAAUA,CACjB,GAQF/V,EAAQ61C,oBALR,cAAkCQ,EAChC,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,sBACb,GAQFvb,EAAQy1C,oBALR,cAAkCY,EAChC,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,sBACb,GASFvb,EAAQg1C,4BANR,cAA0CqB,EACxC,WAAAv2B,CAAYvE,EAAKlF,GACfuyC,MAAMrtC,EAAK,+BACXpa,KAAKkV,OAASA,CAChB,GAQFrW,EAAQg2C,YALR,cAA0BK,EACxB,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,cACb,GAQFvb,EAAQk3C,eALR,cAA6Bb,EAC3B,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,iBACb,GAoFFvb,EAAQi2C,YA1BR,MACE,yBAAW4S,GACT,OAAO1O,EAAOh5C,KAAM,iBAhBxB,WACE,MAAM2nD,EAAU,IAAIh+B,WAAW,GAG/B,OAFAg+B,EAAQ,GAAK,EAEQ,IADN,IAAIC,YAAYD,EAAQ58B,OAAQ,EAAG,GACpC,EAChB,CAW0C28B,GACxC,CACA,0BAAWG,GACT,OAAO7O,EAAOh5C,KAAM,kBAbxB,WACE,IAEE,OADA,IAAIqb,SAAS,KACN,CACT,CAAE,MACA,OAAO,CACT,CACF,CAM2CwsC,GACzC,CACA,qCAAWC,GACT,OAAO9O,EAAOh5C,KAAM,6BAAyD,oBAApB+nD,gBAC3D,CACA,mBAAWC,GACT,MAAyB,oBAAd5mC,UACF43B,EAAOh5C,KAAM,WAAY,CAC9BioD,OAAO,EACPC,OAAO,IAGJlP,EAAOh5C,KAAM,WAAY,CAC9BioD,MAAO7mC,UAAU4mC,SAASr0C,SAAS,OACnCu0C,MAAO9mC,UAAU4mC,SAASr0C,SAAS,QAEvC,CACA,8BAAWw0C,GACT,OAAOnP,EAAOh5C,KAAM,sBAAuBjB,WAAWqpD,KAAKC,WAAW,4BACxE,GAGF,MAAMC,EAAa,IAAI39C,MAAM,KAAKvK,QAAQ6H,KAAItI,GAAKA,EAAE+K,SAAS,IAAIssC,SAAS,EAAG,OAsK9En4C,EAAQkX,KArKR,MACE,mBAAOwyC,CAAatwB,EAAGh5B,EAAGuf,GACxB,MAAO,IAAI8pC,EAAWrwB,KAAKqwB,EAAWrpD,KAAKqpD,EAAW9pC,IACxD,CACA,kBAAOgqC,CAAYlG,EAAWmG,GAC5B,IAAIC,EACApG,EAAU,IACRA,EAAU,GAAK,IACjBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,GAEdD,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,GACnBA,EAAU,GAAK,IACjBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,GAEdD,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,KAEvBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,EACZA,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,EACRpG,EAAU,GAAK,IACjBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,GAEdD,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,GACnBA,EAAU,GAAK,IACjBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,GAEdD,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,IAEzBmG,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,EACzB,CACA,gBAAOA,CAAUqG,EAAIC,GACnB,MAAO,CAACD,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAID,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAID,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAID,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAID,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAIA,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAChN,CACA,qBAAOE,CAAe35C,EAAG9L,GAGvB,MAAO,CAFI8L,EAAE,GAAK9L,EAAE,GAAK8L,EAAE,GAAK9L,EAAE,GAAKA,EAAE,GAC9B8L,EAAE,GAAK9L,EAAE,GAAK8L,EAAE,GAAK9L,EAAE,GAAKA,EAAE,GAE3C,CACA,4BAAO0lD,CAAsB55C,EAAG9L,GAC9B,MAAM7C,EAAI6C,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAGjC,MAAO,EAFK8L,EAAE,GAAK9L,EAAE,GAAK8L,EAAE,GAAK9L,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAM7C,IACxD2O,EAAE,GAAK9L,EAAE,GAAK8L,EAAE,GAAK9L,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAM7C,EAExE,CACA,iCAAOwoD,CAA2B9wB,EAAG70B,GACnC,MAAMo1C,EAAKx4C,KAAK6oD,eAAe5wB,EAAG70B,GAC5Bq1C,EAAKz4C,KAAK6oD,eAAe5wB,EAAEhrB,MAAM,EAAG,GAAI7J,GACxC4lD,EAAKhpD,KAAK6oD,eAAe,CAAC5wB,EAAE,GAAIA,EAAE,IAAK70B,GACvC6lD,EAAKjpD,KAAK6oD,eAAe,CAAC5wB,EAAE,GAAIA,EAAE,IAAK70B,GAC7C,MAAO,CAACqgB,KAAKE,IAAI60B,EAAG,GAAIC,EAAG,GAAIuQ,EAAG,GAAIC,EAAG,IAAKxlC,KAAKE,IAAI60B,EAAG,GAAIC,EAAG,GAAIuQ,EAAG,GAAIC,EAAG,IAAKxlC,KAAK6H,IAAIktB,EAAG,GAAIC,EAAG,GAAIuQ,EAAG,GAAIC,EAAG,IAAKxlC,KAAK6H,IAAIktB,EAAG,GAAIC,EAAG,GAAIuQ,EAAG,GAAIC,EAAG,IAC7J,CACA,uBAAOC,CAAiB9lD,GACtB,MAAM7C,EAAI6C,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GACjC,MAAO,CAACA,EAAE,GAAK7C,GAAI6C,EAAE,GAAK7C,GAAI6C,EAAE,GAAK7C,EAAG6C,EAAE,GAAK7C,GAAI6C,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAM7C,GAAI6C,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAM7C,EACnH,CACA,oCAAO4oD,CAA8B/lD,GACnC,MAAMgmD,EAAY,CAAChmD,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACjCtD,EAAIsD,EAAE,GAAKgmD,EAAU,GAAKhmD,EAAE,GAAKgmD,EAAU,GAC3C5qC,EAAIpb,EAAE,GAAKgmD,EAAU,GAAKhmD,EAAE,GAAKgmD,EAAU,GAC3CvgC,EAAIzlB,EAAE,GAAKgmD,EAAU,GAAKhmD,EAAE,GAAKgmD,EAAU,GAC3C7oD,EAAI6C,EAAE,GAAKgmD,EAAU,GAAKhmD,EAAE,GAAKgmD,EAAU,GAC3Cz+B,GAAS7qB,EAAIS,GAAK,EAClBqqB,EAASnH,KAAK4lC,MAAMvpD,EAAIS,IAAM,EAAI,GAAKT,EAAIS,EAAIsoB,EAAIrK,IAAM,EACzD8qC,EAAK3+B,EAAQC,GAAU,EACvB2+B,EAAK5+B,EAAQC,GAAU,EAC7B,MAAO,CAACnH,KAAK4lC,KAAKC,GAAK7lC,KAAK4lC,KAAKE,GACnC,CACA,oBAAOC,CAAcC,GACnB,MAAMxxB,EAAIwxB,EAAKx8C,MAAM,GASrB,OARIw8C,EAAK,GAAKA,EAAK,KACjBxxB,EAAE,GAAKwxB,EAAK,GACZxxB,EAAE,GAAKwxB,EAAK,IAEVA,EAAK,GAAKA,EAAK,KACjBxxB,EAAE,GAAKwxB,EAAK,GACZxxB,EAAE,GAAKwxB,EAAK,IAEPxxB,CACT,CACA,gBAAOyxB,CAAUC,EAAOC,GACtB,MAAMC,EAAOpmC,KAAK6H,IAAI7H,KAAKE,IAAIgmC,EAAM,GAAIA,EAAM,IAAKlmC,KAAKE,IAAIimC,EAAM,GAAIA,EAAM,KACvEE,EAAQrmC,KAAKE,IAAIF,KAAK6H,IAAIq+B,EAAM,GAAIA,EAAM,IAAKlmC,KAAK6H,IAAIs+B,EAAM,GAAIA,EAAM,KAC9E,GAAIC,EAAOC,EACT,OAAO,KAET,MAAMC,EAAOtmC,KAAK6H,IAAI7H,KAAKE,IAAIgmC,EAAM,GAAIA,EAAM,IAAKlmC,KAAKE,IAAIimC,EAAM,GAAIA,EAAM,KACvEI,EAAQvmC,KAAKE,IAAIF,KAAK6H,IAAIq+B,EAAM,GAAIA,EAAM,IAAKlmC,KAAK6H,IAAIs+B,EAAM,GAAIA,EAAM,KAC9E,OAAIG,EAAOC,EACF,KAEF,CAACH,EAAME,EAAMD,EAAOE,EAC7B,CACA,wBAAOC,CAAkBC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,GACnD,MAAMC,EAAU,GACdC,EAAS,CAAC,GAAI,IAChB,IAAI7qD,EAAG0e,EAAGqK,EAAG5jB,EAAG2lD,EAAIC,EAAIC,EAAMC,EAC9B,QAASliD,EAAI,EAAGA,EAAI,IAAKA,EAUvB,GATU,IAANA,GACF2V,EAAI,EAAI0rC,EAAK,GAAKE,EAAK,EAAIE,EAC3BxqD,GAAK,EAAIoqD,EAAK,EAAIE,EAAK,EAAIE,EAAK,EAAIE,EACpC3hC,EAAI,EAAIuhC,EAAK,EAAIF,IAEjB1rC,EAAI,EAAI2rC,EAAK,GAAKE,EAAK,EAAIE,EAC3BzqD,GAAK,EAAIqqD,EAAK,EAAIE,EAAK,EAAIE,EAAK,EAAIE,EACpC5hC,EAAI,EAAIwhC,EAAK,EAAIF,GAEf1mC,KAAKunC,IAAIlrD,GAAK,MAAlB,CACE,GAAI2jB,KAAKunC,IAAIxsC,GAAK,MAChB,SAEFvZ,GAAK4jB,EAAIrK,EACL,EAAIvZ,GAAKA,EAAI,GACfylD,EAAQ9oD,KAAKqD,EAGjB,MACA6lD,EAAOtsC,EAAIA,EAAI,EAAIqK,EAAI/oB,EACvBirD,EAAWtnC,KAAK4lC,KAAKyB,GACjBA,EAAO,IAGXF,IAAOpsC,EAAIusC,IAAa,EAAIjrD,GACxB,EAAI8qD,GAAMA,EAAK,GACjBF,EAAQ9oD,KAAKgpD,GAEfC,IAAOrsC,EAAIusC,IAAa,EAAIjrD,GACxB,EAAI+qD,GAAMA,EAAK,GACjBH,EAAQ9oD,KAAKipD,IAGjB,IACEI,EADEphC,EAAI6gC,EAAQ7kD,OAEhB,MAAMqlD,EAAOrhC,EACb,KAAOA,KACL5kB,EAAIylD,EAAQ7gC,GACZohC,EAAK,EAAIhmD,EACT0lD,EAAO,GAAG9gC,GAAKohC,EAAKA,EAAKA,EAAKf,EAAK,EAAIe,EAAKA,EAAKhmD,EAAImlD,EAAK,EAAIa,EAAKhmD,EAAIA,EAAIqlD,EAAKrlD,EAAIA,EAAIA,EAAIulD,EAC5FG,EAAO,GAAG9gC,GAAKohC,EAAKA,EAAKA,EAAKd,EAAK,EAAIc,EAAKA,EAAKhmD,EAAIolD,EAAK,EAAIY,EAAKhmD,EAAIA,EAAIslD,EAAKtlD,EAAIA,EAAIA,EAAIwlD,EAO9F,OALAE,EAAO,GAAGO,GAAQhB,EAClBS,EAAO,GAAGO,GAAQf,EAClBQ,EAAO,GAAGO,EAAO,GAAKV,EACtBG,EAAO,GAAGO,EAAO,GAAKT,EACtBE,EAAO,GAAG9kD,OAAS8kD,EAAO,GAAG9kD,OAASqlD,EAAO,EACtC,CAACznC,KAAKE,OAAOgnC,EAAO,IAAKlnC,KAAKE,OAAOgnC,EAAO,IAAKlnC,KAAK6H,OAAOq/B,EAAO,IAAKlnC,KAAK6H,OAAOq/B,EAAO,IACrG,GAGF,MAAM/Q,EAA0B,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,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,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,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,IAAO,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,MAAQ,MAAQ,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,EAAG,MA8BjrB,SAASlD,EAAmB1sB,GAC1B,OAAOmhC,mBAAmBC,OAAOphC,GACnC,CAuBE,cAiBFnrB,EAAQm1C,kBAlBR,MAEE,WAAAr1B,GADA,qBAAW,GAET3e,KAAKqrD,QAAU,IAAIhnD,SAAQ,CAACD,EAASE,KACnCtE,KAAKoE,QAAUwgB,IACb,aAAA5kB,KAAK,GAAW,GAChBoE,EAAQwgB,EAAK,EAEf5kB,KAAKsE,OAASqW,IACZ,aAAA3a,KAAK,GAAW,GAChBsE,EAAOqW,EAAO,CACf,GAEL,CACA,WAAI2wC,GACF,OAAO,aAAAtrD,KAAK,EACd,GAGF,IAAIo4C,EAAiB,KACjBC,EAAmB,KAyBvBx5C,EAAQy2C,iBADiB,oBACkB,EAIpC,CAAC5B,wBAAyB70C,QAAS0sD,uBA/0B1C,8TAm1BAjsD,OAAOY,eAAerB,QAAS,aAAe,CAC5CsB,OAAO,IAETtB,QAAQ2sD,WAAa3sD,QAAQ4sD,cAAgB5sD,QAAQ6sD,UAAY7sD,QAAQ8sD,aAAe9sD,QAAQ+sD,iBAAmB/sD,QAAQgtD,uBAAyBhtD,QAAQitD,sBAAwBjtD,QAAQktD,aAAeltD,QAAQmtD,+BAAiCntD,QAAQotD,qBAAuBptD,QAAQqtD,qBAAuBrtD,QAAQstD,8BAA2B,EACrV7sD,OAAOY,eAAerB,QAAS,cAAgB,CAC7C6B,YAAY,EACZD,IAAK,WACH,OAAO2rD,YAAYC,WACrB,IAEFxtD,QAAQ+vC,WAAQ,EAChB/vC,QAAQ8jC,YAAcA,YACtB9jC,QAAQoR,aAAU,EAClB,IAAIq8C,MAAQf,oBAAoB,GAC5BgB,oBAAsBhB,oBAAoB,GAC1CiB,eAAiBjB,oBAAoB,GACrCkB,aAAelB,oBAAoB,GACnCmB,mBAAqBnB,oBAAoB,IACzCoB,QAAUpB,oBAAoB,IAC9BqB,gBAAkBrB,oBAAoB,IACtCsB,iBAAmBtB,oBAAoB,IACvCuB,UAAYvB,oBAAoB,IAChCwB,yBAA2BxB,oBAAoB,IAC/CyB,kBAAoBzB,oBAAoB,IACxC0B,qBAAuB1B,oBAAoB,IAC3C2B,gBAAkB3B,oBAAoB,IACtC4B,oBAAsB5B,oBAAoB,IAC1Ca,YAAcb,oBAAoB,IAClC6B,UAAY7B,oBAAoB,IACpC,MAAM8B,yBAA2B,MAC3BC,4BAA8B,IAC9BC,wBAA0B,IAC1BrB,qBAAuBI,MAAMpU,SAAWwU,mBAAmBc,kBAAoBhB,eAAeiB,iBACpG5uD,QAAQqtD,qBAAuBA,qBAC/B,MAAMC,yBAA2BG,MAAMpU,SAAWwU,mBAAmBgB,sBAAwBlB,eAAemB,qBAC5G9uD,QAAQstD,yBAA2BA,yBACnC,MAAMF,qBAAuBK,MAAMpU,SAAWwU,mBAAmBkB,kBAAoBpB,eAAeqB,iBACpGhvD,QAAQotD,qBAAuBA,qBAC/B,MAAMD,+BAAiCM,MAAMpU,SAAWwU,mBAAmBoB,4BAA8BtB,eAAeuB,2BAExH,SAASprB,YAAY/hC,GAUnB,GATmB,iBAARA,GAAoBA,aAAe+X,IAC5C/X,EAAM,CACJsM,IAAKtM,IAEE,EAAI0rD,MAAMxU,eAAel3C,KAClCA,EAAM,CACJgkB,KAAMhkB,IAGS,iBAARA,EACT,MAAM,IAAI6K,MAAM,4DAElB,IAAK7K,EAAIsM,MAAQtM,EAAIgkB,OAAShkB,EAAIqwC,MAChC,MAAM,IAAIxlC,MAAM,+DAElB,MAAMuiD,EAAO,IAAInC,wBACX,MACJoC,GACED,EACE9gD,EAAMtM,EAAIsM,IAAMghD,WAAWttD,EAAIsM,KAAO,KACtC0X,EAAOhkB,EAAIgkB,KAAOupC,YAAYvtD,EAAIgkB,MAAQ,KAC1CwpC,EAAcxtD,EAAIwtD,aAAe,KACjCC,GAA0C,IAAxBztD,EAAIytD,gBACtBC,EAAW1tD,EAAI0tD,UAAY,KAC3BC,EAAiB3tD,EAAIqwC,iBAAiB6a,sBAAwBlrD,EAAIqwC,MAAQ,KAC1Eud,EAAiB1V,OAAOC,UAAUn4C,EAAI4tD,iBAAmB5tD,EAAI4tD,eAAiB,EAAI5tD,EAAI4tD,eAAiBnB,yBAC7G,IAAIoB,EAAS7tD,EAAI6tD,kBAAkB/C,UAAY9qD,EAAI6tD,OAAS,KAC5D,MAAM7W,EAAYh3C,EAAIg3C,UAChB8W,EAAuC,iBAAnB9tD,EAAI8tD,aAA4B,EAAIlC,eAAemC,cAAc/tD,EAAI8tD,YAA+B,KAAjB9tD,EAAI8tD,WAC3GE,EAAiC,iBAAhBhuD,EAAIguD,QAAuBhuD,EAAIguD,QAAU,KAC1DC,GAAgC,IAAnBjuD,EAAIiuD,WACjBC,EAAoBluD,EAAIkuD,mBAAqB3C,yBAC7C4C,EAAyD,iBAA5BnuD,EAAImuD,oBAAmCnuD,EAAImuD,oBAAsB,KAC9FC,EAA0BpuD,EAAIouD,yBAA2BhD,+BACzDiD,GAAoC,IAArBruD,EAAIsuD,aACnBC,EAAerW,OAAOC,UAAUn4C,EAAIuuD,eAAiBvuD,EAAIuuD,cAAgB,EAAIvuD,EAAIuuD,cAAgB,EACjGtH,GAA0C,IAAxBjnD,EAAIinD,gBACtBC,EAAuE,kBAAnClnD,EAAIknD,2BAA2ClnD,EAAIknD,4BAA8BwE,MAAMpU,SAC3HkX,EAAuBtW,OAAOC,UAAUn4C,EAAIwuD,sBAAwBxuD,EAAIwuD,sBAAwB,EAChGC,EAAiD,kBAAxBzuD,EAAIyuD,gBAAgCzuD,EAAIyuD,gBAAkB/C,MAAMpU,SACzFoX,GAAkD,IAA5B1uD,EAAI0uD,oBAC1BC,GAA8B,IAAlB3uD,EAAI2uD,UAChB/lB,EAAgB5oC,EAAI4oC,eAAiBzqC,WAAW0Y,SAChD+3C,GAAoC,IAArB5uD,EAAI4uD,aACnBC,GAAsC,IAAtB7uD,EAAI6uD,cACpBC,GAA4C,IAAzB9uD,EAAI8uD,iBACvBC,GAAwB,IAAf/uD,EAAI+uD,OACb9pD,EAAS0oD,EAAiBA,EAAe1oD,OAASjF,EAAIiF,QAAU+pD,IAChEC,EAA+C,kBAAvBjvD,EAAIivD,eAA+BjvD,EAAIivD,gBAAkBvD,MAAMpU,WAAamX,EACpGS,EAA+C,kBAAvBlvD,EAAIkvD,eAA+BlvD,EAAIkvD,eAAiBhB,IAAsBtC,eAAemB,sBAAwBqB,IAA4BxC,eAAeuB,4BAA8Ba,GAAWG,IAAuB,EAAIvC,eAAeuD,iBAAiBnB,EAASn3C,SAASu4C,WAAY,EAAIxD,eAAeuD,iBAAiBhB,EAAqBt3C,SAASu4C,SAC5XC,EAAgBrvD,EAAIqvD,eAAiB,IAAI/D,qBAAqB,CAClE1iB,kBAEI0mB,EAAgBtvD,EAAIsvD,eAAiB,IAAIjE,qBAAqB,CAClEgC,QACAzkB,mBAGF,EAAI8iB,MAAMzT,mBAAmBjB,GAC7B,MAAMuY,EAAmB,CACvBF,gBACAC,iBAWF,GATKJ,IACHK,EAAiBC,kBAAoB,IAAItB,EAAkB,CACzDzY,QAASuY,EACTyB,aAAcxB,IAEhBsB,EAAiBG,wBAA0B,IAAItB,EAAwB,CACrE3Y,QAAS0Y,MAGRN,EAAQ,CACX,MAAM8B,EAAe,CACnB3Y,YACA4Y,KAAM5D,gBAAgB6D,oBAAoBC,YAE5CjC,EAAS8B,EAAaC,KAAO9E,UAAUiF,SAASJ,GAAgB,IAAI7E,UAAU6E,GAC9EvC,EAAK4C,QAAUnC,CACjB,CACA,MAAMoC,EAAiB,CACrB5C,QACA6C,WAAY,WACZlsC,OACA0pC,WACAoB,mBACAlB,iBACA3oD,SACA6oD,aACAa,YACAwB,iBAAkB,CAChB5B,eACAE,kBACAJ,eACApH,kBACAC,6BACAsH,uBACAE,sBACAO,iBACAjB,QAASkB,EAAiBlB,EAAU,KACpCG,oBAAqBe,EAAiBf,EAAsB,OAG1DiC,EAAkB,CACtB/B,eACApH,kBACAwH,kBACAC,sBACAC,YACA/lB,gBACAkmB,mBACAC,SACAhrB,aAvDmB,MAsGrB,OA7CA8pB,EAAOpD,QAAQxmD,MAAK,WAClB,GAAImpD,EAAKiD,UACP,MAAM,IAAIxlD,MAAM,mBAElB,MAAMylD,EAAkBC,eAAe1C,EAAQoC,GACzCO,EAAuB,IAAI/sD,SAAQ,SAAUD,GACjD,IAAIitD,EAW6B,IAAAh9C,EAV7Bk6C,EACF8C,EAAgB,IAAIrE,kBAAkBsE,uBAAuB,CAC3DzrD,SACA0rD,YAAahD,EAAegD,YAC5BC,gBAAiBjD,EAAeiD,gBAChCC,2BAA4BlD,EAAekD,2BAC3CjC,eACAC,iBACClB,GACO3pC,IACqBvQ,EAMQ,CACrCnH,MACArH,SACAuoD,cACAC,kBACAG,iBACAgB,eACAC,iBAPF4B,EALM/E,MAAMpU,SACD,IAAIiV,oBAAoBuE,cAAcr9C,IAE/C,EAAWm4C,eAAeuD,iBAAiB17C,EAAOnH,KAAO,IAAI+/C,qBAAqB0E,eAAet9C,GAAU,IAAI64C,gBAAgB0E,iBAAiBv9C,IAYpJjQ,EAAQitD,EACV,IACA,OAAOhtD,QAAQw8B,IAAI,CAACqwB,EAAiBE,IAAuBvsD,MAAK,UAAWgtD,EAAUR,IACpF,GAAIrD,EAAKiD,UACP,MAAM,IAAIxlD,MAAM,mBAElB,MAAMqmD,EAAiB,IAAIjF,iBAAiBkF,eAAe9D,EAAO4D,EAAUpD,EAAO+B,MAC7E7gD,EAAY,IAAIqiD,gBAAgBF,EAAgB9D,EAAMqD,EAAeL,EAAiBb,GAC5FnC,EAAKiE,WAAatiD,EAClBmiD,EAAet8C,KAAK,QAAS,KAC/B,GACF,IAAGhD,MAAMw7C,EAAKkE,YAAY5tD,QACnB0pD,CACT,CACAhgD,eAAemjD,eAAe1C,EAAQl5C,GACpC,GAAIk5C,EAAOwC,UACT,MAAM,IAAIxlD,MAAM,wBAElB,MAAMomD,QAAiBpD,EAAOqD,eAAeK,gBAAgB,gBAAiB58C,EAAQA,EAAOqP,KAAO,CAACrP,EAAOqP,KAAKmG,QAAU,MAC3H,GAAI0jC,EAAOwC,UACT,MAAM,IAAIxlD,MAAM,wBAElB,OAAOomD,CACT,CACA,SAAS3D,WAAW7iC,GAClB,GAAIA,aAAe1S,IACjB,OAAO0S,EAAI9O,KAEb,IACE,OAAO,IAAI5D,IAAI0S,EAAKrsB,OAAO0c,UAAUa,IACvC,CAAE,MACA,GAAI+vC,MAAMpU,UAA2B,iBAAR7sB,EAC3B,OAAOA,CAEX,CACA,MAAM,IAAI5f,MAAM,qFAClB,CACA,SAAS0iD,YAAY9iC,GACnB,GAAIihC,MAAMpU,UAA8B,oBAAXka,QAA0B/mC,aAAe+mC,OACpE,MAAM,IAAI3mD,MAAM,qEAElB,GAAI4f,aAAe1B,YAAc0B,EAAIR,aAAeQ,EAAIN,OAAOF,WAC7D,OAAOQ,EAET,GAAmB,iBAARA,EACT,SAAWihC,MAAMpT,eAAe7tB,GAElC,GAAmB,iBAARA,IAAqBgnC,MAAMhnC,GAAKxlB,UAAW,EAAIymD,MAAMxU,eAAezsB,GAC7E,OAAO,IAAI1B,WAAW0B,GAExB,MAAM,IAAI5f,MAAM,6GAClB,CAxMA5M,QAAQmtD,+BAAiCA,+BAyMzC,MAAM,wBAAN,MAAM,EAEJ,WAAArtC,GACE3e,KAAKkyD,YAAc,IAAI5F,MAAMtY,kBAC7Bh0C,KAAKiyD,WAAa,KAClBjyD,KAAK4wD,QAAU,KACf5wD,KAAKiuD,MAAQ,IAAI,mBAAuB,QAAvB,IACjBjuD,KAAKixD,WAAY,EACjBjxD,KAAKsyD,WAAa,KAClBtyD,KAAKuyD,WAAa,IACpB,CACA,WAAIlH,GACF,OAAOrrD,KAAKkyD,YAAY7G,OAC1B,CACA,aAAMj/B,GACJpsB,KAAKixD,WAAY,EACjB,IACMjxD,KAAK4wD,SAASJ,OAChBxwD,KAAK4wD,QAAQ4B,iBAAkB,SAE3BxyD,KAAKiyD,YAAY7lC,UACzB,CAAE,MAAOqtB,GAIP,MAHIz5C,KAAK4wD,SAASJ,aACTxwD,KAAK4wD,QAAQ4B,gBAEhB/Y,CACR,CACAz5C,KAAKiyD,WAAa,KACdjyD,KAAK4wD,UACP5wD,KAAK4wD,QAAQxkC,UACbpsB,KAAK4wD,QAAU,KAEnB,GA/BO,mBAAP,aADI,wBACG,OAAS,GADlB,IAAM/E,uBAAN,wBAkCAhtD,QAAQgtD,uBAAyBA,uBACjC,MAAMC,sBACJ,WAAAntC,CAAY9Y,EAAQ0rD,EAAaC,GAAkB,EAAOC,EAA6B,MACrFzxD,KAAK6F,OAASA,EACd7F,KAAKuxD,YAAcA,EACnBvxD,KAAKwxD,gBAAkBA,EACvBxxD,KAAKyxD,2BAA6BA,EAClCzxD,KAAKyyD,gBAAkB,GACvBzyD,KAAK0yD,mBAAqB,GAC1B1yD,KAAK2yD,0BAA4B,GACjC3yD,KAAK4yD,0BAA4B,GACjC5yD,KAAK6yD,iBAAmB,IAAIvG,MAAMtY,iBACpC,CACA,gBAAA8e,CAAiBn1C,GACf3d,KAAKyyD,gBAAgB7wD,KAAK+b,EAC5B,CACA,mBAAAo1C,CAAoBp1C,GAClB3d,KAAK0yD,mBAAmB9wD,KAAK+b,EAC/B,CACA,0BAAAq1C,CAA2Br1C,GACzB3d,KAAK2yD,0BAA0B/wD,KAAK+b,EACtC,CACA,0BAAAs1C,CAA2Bt1C,GACzB3d,KAAK4yD,0BAA0BhxD,KAAK+b,EACtC,CACA,WAAAu1C,CAAYxnC,EAAO87B,GACjB,UAAW7pC,KAAY3d,KAAKyyD,gBAC1B90C,EAAS+N,EAAO87B,EAEpB,CACA,cAAA2L,CAAe9iC,EAAQC,GACrBtwB,KAAK6yD,iBAAiBxH,QAAQxmD,MAAK,KACjC,UAAW8Y,KAAY3d,KAAK0yD,mBAC1B/0C,EAAS0S,EAAQC,EACnB,GAEJ,CACA,qBAAA8iC,CAAsB5L,GACpBxnD,KAAK6yD,iBAAiBxH,QAAQxmD,MAAK,KACjC,UAAW8Y,KAAY3d,KAAK2yD,0BAC1Bh1C,EAAS6pC,EACX,GAEJ,CACA,qBAAA6L,GACErzD,KAAK6yD,iBAAiBxH,QAAQxmD,MAAK,KACjC,UAAW8Y,KAAY3d,KAAK4yD,0BAC1Bj1C,GACF,GAEJ,CACA,cAAA21C,GACEtzD,KAAK6yD,iBAAiBzuD,SACxB,CACA,gBAAAmvD,CAAiB7nC,EAAO3d,IACtB,EAAIu+C,MAAMpW,aAAa,yDACzB,CACA,KAAAsd,GAAS,EAEX30D,QAAQitD,sBAAwBA,sBAChC,MAAMF,iBACJ,WAAAjtC,CAAY80C,EAAS9jD,GACnB3P,KAAK0zD,SAAWD,EAChBzzD,KAAKiyD,WAAatiD,EAClBrQ,OAAOY,eAAeF,KAAM,gBAAiB,CAC3CG,MAAO,MACL,EAAIqsD,eAAemH,YAAY,yFACxB3zD,KAAK4zD,eAAe/uD,MAAKgvD,IAC9B,IAAKA,EACH,OAAOA,EAET,MAAMC,EAAQ,GACd,UAAW3qD,KAAQ0qD,EACjBC,EAAMlyD,QAAQiyD,EAAG1qD,IAEnB,OAAO2qD,CAAK,MAIpB,CACA,qBAAIC,GACF,OAAO/zD,KAAKiyD,WAAW8B,iBACzB,CACA,iBAAI7D,GACF,OAAOlwD,KAAKiyD,WAAW/B,aACzB,CACA,YAAI8D,GACF,OAAOh0D,KAAK0zD,SAASM,QACvB,CACA,gBAAIC,GACF,OAAOj0D,KAAK0zD,SAASO,YACvB,CACA,aAAIC,GACF,SAAW5H,MAAMtT,QAAQh5C,KAAM,cAAeA,KAAKiyD,WAAWkC,YAChE,CACA,cAAIC,GACF,OAAOp0D,KAAKiyD,WAAWkC,WACzB,CACA,OAAAE,CAAQC,GACN,OAAOt0D,KAAKiyD,WAAWoC,QAAQC,EACjC,CACA,YAAAC,CAAa59B,GACX,OAAO32B,KAAKiyD,WAAWsC,aAAa59B,EACtC,CACA,eAAA69B,GACE,OAAOx0D,KAAKiyD,WAAWuC,iBACzB,CACA,cAAAC,CAAe7+C,GACb,OAAO5V,KAAKiyD,WAAWwC,eAAe7+C,EACxC,CACA,aAAA8+C,GACE,OAAO10D,KAAKiyD,WAAWyC,eACzB,CACA,aAAAC,GACE,OAAO30D,KAAKiyD,WAAW0C,eACzB,CACA,WAAAC,GACE,OAAO50D,KAAKiyD,WAAW2C,aACzB,CACA,oBAAAC,GACE,OAAO70D,KAAKiyD,WAAW4C,sBACzB,CACA,aAAAC,GACE,OAAO90D,KAAKiyD,WAAW6C,eACzB,CACA,cAAAC,GACE,OAAO/0D,KAAKiyD,WAAW8C,gBACzB,CACA,YAAAnB,GACE,OAAO5zD,KAAKiyD,WAAW+C,iBACzB,CACA,UAAAC,GACE,OAAOj1D,KAAKiyD,WAAWgD,YACzB,CACA,wBAAAC,GACE,OAAOl1D,KAAKiyD,WAAWiD,0BACzB,CACA,cAAAC,GACE,OAAOn1D,KAAKiyD,WAAWkD,gBACzB,CACA,WAAAC,GACE,OAAOp1D,KAAKiyD,WAAWmD,aACzB,CACA,WAAAC,GACE,OAAOr1D,KAAKiyD,WAAWoD,aACzB,CACA,OAAAC,GACE,OAAOt1D,KAAKiyD,WAAWqD,SACzB,CACA,YAAAC,GACE,OAAOv1D,KAAKiyD,WAAWsD,cACzB,CACA,eAAAC,GACE,OAAOx1D,KAAKiyD,WAAWwD,uBAAuBpK,OAChD,CACA,OAAAqK,CAAQC,GAAkB,GACxB,OAAO31D,KAAKiyD,WAAW2D,aAAaD,GAAmB31D,KAAKk0D,UAC9D,CACA,OAAA9nC,GACE,OAAOpsB,KAAK61D,YAAYzpC,SAC1B,CACA,iBAAI0pC,GACF,OAAO91D,KAAKiyD,WAAW6D,aACzB,CACA,eAAID,GACF,OAAO71D,KAAKiyD,WAAW4D,WACzB,CACA,eAAAE,GACE,OAAO/1D,KAAKiyD,WAAW8D,iBACzB,CACA,YAAAC,GACE,OAAOh2D,KAAKiyD,WAAW+D,cACzB,CACA,sBAAAC,GACE,OAAOj2D,KAAKiyD,WAAWgE,wBACzB,EAEFp3D,QAAQ+sD,iBAAmBA,iBAC3B,MAAMD,aAGJ,WAAAhtC,CAAYu3C,EAAWC,EAAUxmD,EAAWggD,GAAS,GA2QrD,+BAyBA,wCAtSA,yCAAyB,MACzB,mCAAkB,GAEhB3vD,KAAKo2D,WAAaF,EAClBl2D,KAAKq2D,UAAYF,EACjBn2D,KAAKiyD,WAAatiD,EAClB3P,KAAKs2D,OAAS3G,EAAS,IAAInD,eAAe+J,UAAc,KACxDv2D,KAAKw2D,QAAU7G,EACf3vD,KAAKy2D,WAAa9mD,EAAU8mD,WAC5Bz2D,KAAK02D,KAAO,IAAIC,WAChB32D,KAAK42D,0BAA2B,EAChC52D,KAAK62D,cAAgB,IAAIve,IACzBt4C,KAAKixD,WAAY,CACnB,CACA,cAAIqD,GACF,OAAOt0D,KAAKo2D,WAAa,CAC3B,CACA,UAAIU,GACF,OAAO92D,KAAKq2D,UAAUS,MACxB,CACA,OAAIngC,GACF,OAAO32B,KAAKq2D,UAAU1/B,GACxB,CACA,YAAIogC,GACF,OAAO/2D,KAAKq2D,UAAUU,QACxB,CACA,QAAIC,GACF,OAAOh3D,KAAKq2D,UAAUW,IACxB,CACA,WAAAC,EAAY,MACVC,EAAK,SACLC,EAAWn3D,KAAK82D,OAAM,QACtBM,EAAU,EAAC,QACXC,EAAU,EAAC,SACXC,GAAW,GACT,CAAC,GACH,OAAO,IAAI9K,eAAe+K,aAAa,CACrCC,QAASx3D,KAAKg3D,KACdE,QACAC,WACAC,UACAC,UACAC,YAEJ,CACA,cAAAG,EAAe,OACbC,EAAS,WACP,CAAC,GACH,MAAMC,EAAa33D,KAAKiyD,WAAW2F,mBAAmBF,GACtD,OAAO13D,KAAKiyD,WAAWwF,eAAez3D,KAAKo2D,WAAYuB,EAAWE,gBACpE,CACA,YAAAjE,GACE,OAAO5zD,KAAKiyD,WAAW6F,iBAAiB93D,KAAKo2D,WAC/C,CACA,iBAAIlG,GACF,OAAOlwD,KAAKiyD,WAAW/B,aACzB,CACA,aAAIgE,GACF,SAAW5H,MAAMtT,QAAQh5C,KAAM,cAAeA,KAAKiyD,WAAWkC,YAChE,CACA,YAAM4D,GACJ,OAAO/3D,KAAKiyD,WAAWkC,aAAaz6B,SAAS15B,KAAKo2D,aAAe,IACnE,CACA,MAAA4B,EAAO,cACLC,EAAa,SACbC,EAAQ,OACRR,EAAS,UAAS,eAClBS,EAAiB7L,MAAM/W,eAAemF,OAAM,UAC5C4H,EAAY,KAAI,WAChB8V,EAAa,KAAI,6BACjBC,EAA+B,KAAI,oBACnCC,EAAsB,KAAI,WAC1BC,EAAa,KAAI,uBACjBC,EAAyB,OAEzBx4D,KAAKs2D,QAAQ5hD,KAAK,WAClB,MAAMijD,EAAa33D,KAAKiyD,WAAW2F,mBAAmBF,EAAQS,EAAgBK,GAC9E,aAAAx4D,KAAK,iBAAkB,GACvB,gBAAAA,KAAK,6CAAL,KAAAA,MACKq4D,IACHA,EAA+Br4D,KAAKiyD,WAAWiD,4BAEjD,IAAIuD,EAAcz4D,KAAK62D,cAAcp2D,IAAIk3D,EAAWe,UAC/CD,IACHA,EAAcn5D,OAAO4D,OAAO,MAC5BlD,KAAK62D,cAAc/rC,IAAI6sC,EAAWe,SAAUD,IAE1CA,EAAYE,4BACd1+C,aAAaw+C,EAAYE,2BACzBF,EAAYE,0BAA4B,MAE1C,MAAMC,KAAiBjB,EAAWE,gBAAkBvL,MAAMvY,oBAAoBoG,OACzEse,EAAYI,yBACfJ,EAAYI,uBAAyB,IAAIvM,MAAMtY,kBAC/CykB,EAAYK,aAAe,CACzBC,QAAS,GACTC,UAAW,GACXC,WAAW,EACXC,eAAgB,MAElBl5D,KAAKs2D,QAAQ5hD,KAAK,gBAClB1U,KAAKm5D,kBAAkBxB,IAEzB,MAAMyB,EAAWpvD,IACfyuD,EAAYY,YAAYhnC,OAAOinC,IAC3Bt5D,KAAK42D,0BAA4BgC,IACnC,aAAA54D,KAAK,iBAAkB,GAEzB,gBAAAA,KAAK,2BAAL,KAAAA,MAAkB44D,GACd5uD,GACFsvD,EAAmBC,WAAWj1D,OAAO0F,GACrChK,KAAKw5D,mBAAmB,CACtBf,cACA99C,OAAQ3Q,aAAiByB,MAAQzB,EAAQ,IAAIyB,MAAMzB,MAGrDsvD,EAAmBC,WAAWn1D,UAEhCpE,KAAKs2D,QAAQmD,QAAQ,aACrBz5D,KAAKs2D,QAAQmD,QAAQ,UAAU,EAE3BH,EAAqB,IAAII,mBAAmB,CAChD5qD,SAAUsqD,EACV/kD,OAAQ,CACN4jD,gBACAC,WACA5V,YACA8V,cAEF1B,KAAM12D,KAAK02D,KACXD,WAAYz2D,KAAKy2D,WACjB6B,sBACAQ,aAAcL,EAAYK,aAC1B5C,UAAWl2D,KAAKo2D,WAChBnG,cAAejwD,KAAKiyD,WAAWhC,cAC/BC,cAAelwD,KAAKiyD,WAAW/B,cAC/ByJ,0BAA2Bf,EAC3BjJ,OAAQ3vD,KAAKw2D,QACb+B,gBAEDE,EAAYY,cAAgB,IAAIO,KAAOhyC,IAAI0xC,GAC5C,MAAMO,EAAaP,EAAmBtL,KAatC,OAZA3pD,QAAQw8B,IAAI,CAAC43B,EAAYI,uBAAuBxN,QAASgN,IAA+BxzD,MAAK,EAAEi1D,EAAcC,MACvG/5D,KAAKixD,UACPmI,KAGFp5D,KAAKs2D,QAAQ5hD,KAAK,aAClB4kD,EAAmBU,mBAAmB,CACpCF,eACAC,0BAEFT,EAAmBW,sBAAqB,IACvCznD,MAAM4mD,GACFS,CACT,CACA,eAAAK,EAAgB,OACdxC,EAAS,UAAS,eAClBS,EAAiB7L,MAAM/W,eAAemF,OAAM,uBAC5C8d,EAAyB,MACvB,CAAC,GAOH,MAAMb,EAAa33D,KAAKiyD,WAAW2F,mBAAmBF,EAAQS,EAAgBK,GAAwB,GACtG,IAKI2B,EALA1B,EAAcz4D,KAAK62D,cAAcp2D,IAAIk3D,EAAWe,UAoBpD,OAnBKD,IACHA,EAAcn5D,OAAO4D,OAAO,MAC5BlD,KAAK62D,cAAc/rC,IAAI6sC,EAAWe,SAAUD,IAGzCA,EAAY2B,uBACfD,EAAa76D,OAAO4D,OAAO,MAC3Bi3D,EAAWF,oBAfb,WACMxB,EAAYK,aAAaG,YAC3BR,EAAY2B,qBAAqBh2D,QAAQq0D,EAAYK,cACrDL,EAAYY,YAAYhnC,OAAO8nC,GAEnC,EAWE1B,EAAY2B,qBAAuB,IAAI9N,MAAMtY,mBAC5CykB,EAAYY,cAAgB,IAAIO,KAAOhyC,IAAIuyC,GAC5C1B,EAAYK,aAAe,CACzBC,QAAS,GACTC,UAAW,GACXC,WAAW,EACXC,eAAgB,MAElBl5D,KAAKs2D,QAAQ5hD,KAAK,gBAClB1U,KAAKm5D,kBAAkBxB,IAElBc,EAAY2B,qBAAqB/O,OAC1C,CACA,iBAAAgP,EAAkB,qBAChBC,GAAuB,EAAK,qBAC5BC,GAAuB,GACrB,CAAC,GAEH,OAAOv6D,KAAKiyD,WAAWH,eAAe0I,eAAe,iBAAkB,CACrEtE,UAAWl2D,KAAKo2D,WAChBkE,sBAA+C,IAAzBA,EACtBC,sBAA+C,IAAzBA,GACrB,CACDE,cAN8B,IAO9B,IAAA1tC,CAAK7V,GACH,OAAOA,EAAYwjD,MAAM70D,MAC3B,GAEJ,CACA,cAAA80D,CAAetmD,EAAS,CAAC,GACvB,GAAIrU,KAAKiyD,WAAWkC,YAClB,OAAOn0D,KAAK+3D,SAASlzD,MAAK+1D,GACjBxN,UAAUyN,QAAQ3jD,YAAY0jD,KAGzC,MAAME,EAAiB96D,KAAKq6D,kBAAkBhmD,GAC9C,OAAO,IAAIhQ,SAAQ,SAAUD,EAASE,GAepC,MAAMy2D,EAASD,EAAeE,YACxB9jD,EAAc,CAClBwjD,MAAO,GACPO,OAAQ37D,OAAO4D,OAAO,QAjBxB,SAASg4D,IACPH,EAAOI,OAAOt2D,MAAK,UAAU,MAC3B1E,EAAK,KACLyE,IAEIA,EACFR,EAAQ8S,IAGV5X,OAAO0P,OAAOkI,EAAY+jD,OAAQ96D,EAAM86D,QACxC/jD,EAAYwjD,MAAM94D,QAAQzB,EAAMu6D,OAChCQ,IACF,GAAG52D,EACL,CAMA42D,EACF,GACF,CACA,aAAAE,GACE,OAAOp7D,KAAKiyD,WAAWmJ,cAAcp7D,KAAKo2D,WAC5C,CACA,QAAAiF,GACEr7D,KAAKixD,WAAY,EACjB,MAAMqK,EAAS,GACf,UAAW7C,KAAez4D,KAAK62D,cAAc0E,SAM3C,GALAv7D,KAAKw5D,mBAAmB,CACtBf,cACA99C,OAAQ,IAAIlP,MAAM,uBAClBu0B,OAAO,KAELy4B,EAAY2B,qBAGhB,UAAWd,KAAsBb,EAAYY,YAC3CiC,EAAO15D,KAAK03D,EAAmBkC,WAC/BlC,EAAmBmC,SAMvB,OAHAz7D,KAAK02D,KAAK9nD,QACV,aAAA5O,KAAK,iBAAkB,GACvB,gBAAAA,KAAK,6CAAL,KAAAA,MACOqE,QAAQw8B,IAAIy6B,EACrB,CACA,OAAA5F,CAAQgG,GAAa,GACnB,aAAA17D,KAAK,iBAAkB,GACvB,MAAM27D,EAAU,gBAAA37D,KAAK,2BAAL,KAAAA,MAAiB,GAIjC,OAHI07D,GAAcC,IAChB37D,KAAKs2D,SAAW,IAAI9J,eAAe+J,WAE9BoF,CACT,CAgCA,gBAAAC,CAAiB9B,EAAcpB,GAC7B,MAAMD,EAAcz4D,KAAK62D,cAAcp2D,IAAIi4D,GACtCD,IAGLz4D,KAAKs2D,QAAQmD,QAAQ,gBACrBhB,EAAYI,wBAAwBz0D,QAAQ01D,GAC9C,CACA,gBAAA+B,CAAiBC,EAAmBrD,GAClC,QAAS5vD,EAAI,EAAGovC,EAAK6jB,EAAkBj2D,OAAQgD,EAAIovC,EAAIpvC,IACrD4vD,EAAYK,aAAaC,QAAQn3D,KAAKk6D,EAAkB/C,QAAQlwD,IAChE4vD,EAAYK,aAAaE,UAAUp3D,KAAKk6D,EAAkB9C,UAAUnwD,IAEtE4vD,EAAYK,aAAaG,UAAY6C,EAAkB7C,UACvDR,EAAYK,aAAaI,eAAiB4C,EAAkB5C,eAC5D,UAAWI,KAAsBb,EAAYY,YAC3CC,EAAmBW,sBAEjB6B,EAAkB7C,WACpB,gBAAAj5D,KAAK,2BAAL,KAAAA,MAAiB,EAErB,CACA,iBAAAm5D,EAAkB,gBAChBtB,EAAe,SACfa,EAAQ,8BACRqD,IAEA,MAAM,IACJ9zD,EAAG,UACH+zD,GACED,EAOEhB,EANiB/6D,KAAKiyD,WAAWH,eAAe0I,eAAe,kBAAmB,CACtFtE,UAAWl2D,KAAKo2D,WAChBsB,OAAQG,EACRa,WACA3E,kBAAmB9rD,GAClB+zD,GAC2BhB,YACxBvC,EAAcz4D,KAAK62D,cAAcp2D,IAAIi4D,GAC3CD,EAAYwD,aAAelB,EAC3B,MAAMG,EAAO,KACXH,EAAOI,OAAOt2D,MAAK,EACjB1E,QACAyE,WAEIA,EACF6zD,EAAYwD,aAAe,KAGzBj8D,KAAKiyD,WAAWhB,YAGpBjxD,KAAK67D,iBAAiB17D,EAAOs4D,GAC7ByC,IAAM,IACLvgD,IAED,GADA89C,EAAYwD,aAAe,MACvBj8D,KAAKiyD,WAAWhB,UAApB,CAGA,GAAIwH,EAAYK,aAAc,CAC5BL,EAAYK,aAAaG,WAAY,EACrC,UAAWK,KAAsBb,EAAYY,YAC3CC,EAAmBW,sBAErB,gBAAAj6D,KAAK,2BAAL,KAAAA,MAAiB,EACnB,CACA,GAAIy4D,EAAYI,uBACdJ,EAAYI,uBAAuBv0D,OAAOqW,OACrC,KAAI89C,EAAY2B,qBAGrB,MAAMz/C,EAFN89C,EAAY2B,qBAAqB91D,OAAOqW,EAG1C,CAdA,CAcA,GACA,EAEJugD,GACF,CACA,kBAAA1B,EAAmB,YACjBf,EAAW,OACX99C,EAAM,MACNqlB,GAAQ,IAER,GAAKy4B,EAAYwD,aAAjB,CAOA,GAJIxD,EAAYE,4BACd1+C,aAAaw+C,EAAYE,2BACzBF,EAAYE,0BAA4B,OAErC34B,EAAO,CACV,GAAIy4B,EAAYY,YAAYtsC,KAAO,EACjC,OAEF,GAAIpS,aAAkB6xC,eAAe0P,4BAA6B,CAChE,IAAI9+C,EAAQkwC,4BAYZ,OAXI3yC,EAAOwhD,WAAa,GAAKxhD,EAAOwhD,WAAa,MAC/C/+C,GAASzC,EAAOwhD,iBAElB1D,EAAYE,0BAA4Bz+C,YAAW,KACjDu+C,EAAYE,0BAA4B,KACxC34D,KAAKw5D,mBAAmB,CACtBf,cACA99C,SACAqlB,OAAO,GACP,GACD5iB,GAEL,CACF,CAGA,GAFAq7C,EAAYwD,aAAaR,OAAO,IAAInP,MAAMvW,eAAep7B,EAAOvR,UAAUoJ,OAAM,SAChFimD,EAAYwD,aAAe,MACvBj8D,KAAKiyD,WAAWhB,UAApB,CAGA,UAAYmL,EAAaC,KAAmBr8D,KAAK62D,cAC/C,GAAIwF,IAAmB5D,EAAa,CAClCz4D,KAAK62D,cAAcxkC,OAAO+pC,GAC1B,KACF,CAEFp8D,KAAK01D,SAPL,CA7BA,CAqCF,CACA,SAAI4G,GACF,OAAOt8D,KAAKs2D,MACd,EAxaA,mCACA,4BA4QA,sCAAW,SAACiG,GAAU,GAEpB,GADA,gBAAAv8D,KAAK,6CAAL,KAAAA,OACK,aAAAA,KAAK,kBAAmBA,KAAKixD,UAChC,OAAO,EAET,GAAIsL,EAKF,OAJA,aAAAv8D,KAAK,uBAAyBka,YAAW,KACvC,aAAAla,KAAK,uBAAyB,MAC9B,gBAAAA,KAAK,2BAAL,KAAAA,MAAiB,EAAM,GACtButD,2BACI,EAET,UAAW,YACT8L,EAAW,aACXP,KACG94D,KAAK62D,cAAc0E,SACtB,GAAIlC,EAAYtsC,KAAO,IAAM+rC,EAAaG,UACxC,OAAO,EAMX,OAHAj5D,KAAK62D,cAAcjoD,QACnB5O,KAAK02D,KAAK9nD,QACV,aAAA5O,KAAK,iBAAkB,IAChB,CACT,EACA,wDAAoB,WACd,aAAAA,KAAK,0BACPia,aAAa,aAAAja,KAAK,yBAClB,aAAAA,KAAK,uBAAyB,MAElC,EA+HFnB,QAAQ8sD,aAAeA,aACvB,MAAMI,aAAN,cACE,6BAAa,IAAI6N,KACjB,4BAAYv1D,QAAQD,UAAQ,CAC5B,WAAAo4D,CAAY50D,EAAK60D,GACf,MAAMlhD,EAAQ,CACZqJ,KAAM83C,gBAAgB90D,EAAK60D,EAAW,CACpCA,YACE,OAEN,aAAAz8D,KAAK,WAAU6E,MAAK,KAClB,UAAW8Y,KAAY,aAAA3d,KAAK,YAC1B2d,EAASle,KAAKO,KAAMub,EACtB,GAEJ,CACA,gBAAAD,CAAiBnS,EAAMwU,GACrB,aAAA3d,KAAK,YAAW4nB,IAAIjK,EACtB,CACA,mBAAAmF,CAAoB3Z,EAAMwU,GACxB,aAAA3d,KAAK,YAAWqyB,OAAO1U,EACzB,CACA,SAAAg/C,GACE,aAAA38D,KAAK,YAAW4O,OAClB,EAtBA,uBACA,sBAuBF/P,QAAQktD,aAAeA,aACvB,MAAMN,cAAgB,CACpBmR,kBAAkB,EAClBC,kBAAmB,KACnBC,aAAc,GAId,GAFFj+D,QAAQ4sD,cAAgBA,cAElBa,MAAMpU,SACRuT,cAAcmR,kBAAmB,EACjCnR,cAAcoR,kBAAoB,uBAC7B,GAAwB,iBAAbplD,SAAuB,CACvC,MAAMslD,EAAgBtlD,UAAUulD,eAAep8D,IAC3Cm8D,IACFtR,cAAcoR,kBAAoBE,EAAc7wD,QAAQ,4BAA6B,eAEzF,CACAu/C,cAAcwR,aAAe,SAAU5mB,EAAS6mB,GAC9C,IAAInxD,EACJ,IAEE,GADAA,EAAO,IAAI4M,IAAI09B,IACVtqC,EAAKoxD,QAA0B,SAAhBpxD,EAAKoxD,OACvB,OAAO,CAEX,CAAE,MACA,OAAO,CACT,CACA,MAAMC,EAAQ,IAAIzkD,IAAIukD,EAAUnxD,GAChC,OAAOA,EAAKoxD,SAAWC,EAAMD,MAC/B,EACA1R,cAAc4R,iBAAmB,SAAUnwD,GACzC,MAAMowD,EAAU,kBAAkBpwD,OAClC,OAAOyL,IAAI4kD,gBAAgB,IAAIC,KAAK,CAACF,IACvC,EAEF,MAAM,WAAN,MAAM,WAEJ,WAAA3+C,EAAY,KACVxV,EAAO,KAAI,KACXqnD,EAAO,KAAI,UACX5Y,GAAY,EAAI0U,MAAM3U,sBACpB,CAAC,GAQH,GAPA33C,KAAKmJ,KAAOA,EACZnJ,KAAKixD,WAAY,EACjBjxD,KAAK43C,UAAYA,EACjB53C,KAAK6yD,iBAAmB,IAAIvG,MAAMtY,kBAClCh0C,KAAKy9D,MAAQ,KACbz9D,KAAK09D,WAAa,KAClB19D,KAAK29D,gBAAkB,KACnBnN,EAAM,CACR,GAAI,wBAAU,eAAcoN,IAAIpN,GAC9B,MAAM,IAAI/kD,MAAM,gDAIlB,OAFC,wBAAU,eAAV,wBAAU,aAAiB,IAAI6lB,UAAWxG,IAAI0lC,EAAMxwD,WACrDA,KAAK69D,oBAAoBrN,EAE3B,CACAxwD,KAAK89D,aACP,CACA,WAAIzS,GACF,OAAOrrD,KAAK6yD,iBAAiBxH,OAC/B,CACA,QAAImF,GACF,OAAOxwD,KAAKy9D,KACd,CACA,kBAAI3L,GACF,OAAO9xD,KAAK29D,eACd,CACA,mBAAAE,CAAoBrN,GAClBxwD,KAAKy9D,MAAQjN,EACbxwD,KAAK29D,gBAAkB,IAAI9Q,iBAAiBkF,eAAe,OAAQ,SAAUvB,GAC7ExwD,KAAK29D,gBAAgB/hC,GAAG,SAAS,WAAa,IAC9C57B,KAAK6yD,iBAAiBzuD,UACtBpE,KAAK29D,gBAAgBnoD,KAAK,YAAa,CACrCoiC,UAAW53C,KAAK43C,WAEpB,CACA,WAAAkmB,GACE,IAAKrS,cAAcmR,mBAAqB,WAAUmB,gCAAiC,CACjF,IAAI,UACFC,GACE,WACJ,IACOvS,cAAcwR,aAAaj+D,OAAO0c,SAASa,KAAMyhD,KACpDA,EAAYvS,cAAc4R,iBAAiB,IAAI1kD,IAAIqlD,EAAWh/D,OAAO0c,UAAUa,OAEjF,MAAMkyC,EAAS,IAAIwP,OAAOD,GACpBlM,EAAiB,IAAIjF,iBAAiBkF,eAAe,OAAQ,SAAUtD,GACvEyP,EAAiB,KACrBzP,EAAO3rC,oBAAoB,QAASq7C,GACpCrM,EAAe1lC,UACfqiC,EAAOkO,YACH38D,KAAKixD,UACPjxD,KAAK6yD,iBAAiBvuD,OAAO,IAAImH,MAAM,yBAEvCzL,KAAKo+D,kBACP,EAEID,EAAgB,KACfn+D,KAAK09D,YACRQ,GACF,EAEFzP,EAAOnzC,iBAAiB,QAAS6iD,GACjCrM,EAAel2B,GAAG,QAAQhX,IACxB6pC,EAAO3rC,oBAAoB,QAASq7C,GAChCn+D,KAAKixD,UACPiN,IAGEt5C,GACF5kB,KAAK29D,gBAAkB7L,EACvB9xD,KAAKy9D,MAAQhP,EACbzuD,KAAK09D,WAAajP,EAClBzuD,KAAK6yD,iBAAiBzuD,UACtB0tD,EAAet8C,KAAK,YAAa,CAC/BoiC,UAAW53C,KAAK43C,cAGlB53C,KAAKo+D,mBACLtM,EAAe1lC,UACfqiC,EAAOkO,YACT,IAEF7K,EAAel2B,GAAG,SAAShX,IAEzB,GADA6pC,EAAO3rC,oBAAoB,QAASq7C,GAChCn+D,KAAKixD,UACPiN,SAGF,IACEG,GACF,CAAE,MACAr+D,KAAKo+D,kBACP,KAEF,MAAMC,EAAW,KACf,MAAMC,EAAU,IAAI30C,WACpBmoC,EAAet8C,KAAK,OAAQ8oD,EAAS,CAACA,EAAQvzC,QAAQ,EAGxD,YADAszC,GAEF,CAAE,OACA,EAAI/R,MAAMjhD,MAAM,gCAClB,CACF,CACArL,KAAKo+D,kBACP,CACA,gBAAAA,GACO3S,cAAcmR,oBACjB,EAAItQ,MAAMhhD,MAAM,2BAChBmgD,cAAcmR,kBAAmB,GAEnC,WAAU2B,uBAAuB15D,MAAK25D,IACpC,GAAIx+D,KAAKixD,UAEP,YADAjxD,KAAK6yD,iBAAiBvuD,OAAO,IAAImH,MAAM,yBAGzC,MAAM+kD,EAAO,IAAIzE,aACjB/rD,KAAKy9D,MAAQjN,EACb,MAAM56C,EAAK,OAAO61C,cAAcqR,eAC1B2B,EAAgB,IAAI5R,iBAAiBkF,eAAen8C,EAAK,UAAWA,EAAI46C,GAC9EgO,EAAqBE,MAAMD,EAAejO,GAC1C,MAAMsB,EAAiB,IAAIjF,iBAAiBkF,eAAen8C,EAAIA,EAAK,UAAW46C,GAC/ExwD,KAAK29D,gBAAkB7L,EACvB9xD,KAAK6yD,iBAAiBzuD,UACtB0tD,EAAet8C,KAAK,YAAa,CAC/BoiC,UAAW53C,KAAK43C,WAChB,IACDplC,OAAMmI,IACP3a,KAAK6yD,iBAAiBvuD,OAAO,IAAImH,MAAM,mCAAmCkP,EAAOvR,aAAa,GAElG,CACA,OAAAgjB,GACEpsB,KAAKixD,WAAY,EACbjxD,KAAK09D,aACP19D,KAAK09D,WAAWf,YAChB38D,KAAK09D,WAAa,MAEpB,wBAAU,eAAcrrC,OAAOryB,KAAKy9D,OACpCz9D,KAAKy9D,MAAQ,KACTz9D,KAAK29D,kBACP39D,KAAK29D,gBAAgBvxC,UACrBpsB,KAAK29D,gBAAkB,KAE3B,CACA,eAAOhN,CAASt8C,GACd,IAAKA,GAAQm8C,KACX,MAAM,IAAI/kD,MAAM,kDAElB,MAAMkzD,EAAa,aAAA3+D,KAAK,eAAcS,IAAI4T,EAAOm8C,MACjD,GAAImO,EAAY,CACd,GAAIA,EAAWnM,gBACb,MAAM,IAAI/mD,MAAM,2HAElB,OAAOkzD,CACT,CACA,OAAO,IAAI,WAAUtqD,EACvB,CACA,oBAAW2pD,GACT,GAAIpR,gBAAgB6D,oBAAoBuN,UACtC,OAAOpR,gBAAgB6D,oBAAoBuN,UAE7C,GAAwC,OAApCvS,cAAcoR,kBAIhB,OAHKvQ,MAAMpU,WACT,EAAIsU,eAAemH,YAAY,iDAE1BlI,cAAcoR,kBAEvB,MAAM,IAAIpxD,MAAM,gDAClB,CACA,0CAAWsyD,GACT,IACE,OAAOh/D,WAAW6/D,aAAaJ,sBAAwB,IACzD,CAAE,MACA,OAAO,IACT,CACF,CACA,iCAAWD,GACT,MAAMM,OAAS7wD,UACb,MAAM8wD,yBAA2B9+D,KAAK+9D,gCACtC,GAAIe,yBACF,OAAOA,yBAET,GAAIxS,MAAMpU,SAA2C,CACnD,MAAMuW,OAASsQ,KAAK,UAALA,CAAgB/+D,KAAKg+D,WACpC,OAAOvP,OAAO+P,oBAChB,CAEA,aADA,EAAUhS,eAAewS,YAAYh/D,KAAKg+D,WACnCh/D,OAAO4/D,YAAYJ,oBAAoB,EAEhD,SAAWlS,MAAMtT,QAAQh5C,KAAM,yBAA0B6+D,SAC3D,GApMO,yBAAP,aADI,WACG,kBAAP,GADF,IAAMnT,UAAN,WAuMA7sD,QAAQ6sD,UAAYA,UACpB,MAAMsG,gBAKJ,WAAArzC,CAAYmzC,EAAgB+D,EAAaxE,EAAeh9C,EAAQ6L,GAqBhE,sCAzBA,kCAAkB,IAAIo4B,KACtB,6BAAa,IAAIA,KACjB,gCAAgB,IAAIA,KACpB,sCAAsB,MAEpBt4C,KAAK8xD,eAAiBA,EACtB9xD,KAAK61D,YAAcA,EACnB71D,KAAKy2D,WAAa,IAAIE,WACtB32D,KAAKi/D,WAAa,IAAIxS,aAAayS,WAAW,CAC5C11B,cAAen1B,EAAOm1B,cACtB7E,aAActwB,EAAOswB,eAEvB3kC,KAAKm/D,QAAU9qD,EACfrU,KAAKiwD,cAAgB/vC,EAAQ+vC,cAC7BjwD,KAAKkwD,cAAgBhwC,EAAQgwC,cAC7BlwD,KAAKowD,kBAAoBlwC,EAAQkwC,kBACjCpwD,KAAKswD,wBAA0BpwC,EAAQowC,wBACvCtwD,KAAKixD,WAAY,EACjBjxD,KAAKo/D,kBAAoB,KACzBp/D,KAAKq/D,eAAiBhO,EACtBrxD,KAAKs/D,YAAc,KACnBt/D,KAAKu/D,cAAgB,KACrBv/D,KAAKy1D,uBAAyB,IAAInJ,MAAMtY,kBACxCh0C,KAAKw/D,qBACP,CAUA,qBAAIzL,GACF,SAAWzH,MAAMtT,QAAQh5C,KAAM,oBAAqB,IAAIusD,oBAAoBkT,kBAC9E,CACA,kBAAA7H,CAAmBF,EAAQS,EAAiB7L,MAAM/W,eAAemF,OAAQ8d,EAAyB,KAAMkH,GAAW,GACjH,IAAI7H,EAAkBvL,MAAMvY,oBAAoBmG,QAC5C6hB,EAAgCxP,oBAAoBoT,kBACxD,OAAQjI,GACN,IAAK,MACHG,EAAkBvL,MAAMvY,oBAAoBkG,IAC5C,MACF,IAAK,UACH,MACF,IAAK,QACH4d,EAAkBvL,MAAMvY,oBAAoBoG,MAC5C,MACF,SACE,EAAImS,MAAMhhD,MAAM,wCAAwCosD,KAE5D,OAAQS,GACN,KAAK7L,MAAM/W,eAAekF,QACxBod,GAAmBvL,MAAMvY,oBAAoBwG,oBAC7C,MACF,KAAK+R,MAAM/W,eAAemF,OACxB,MACF,KAAK4R,MAAM/W,eAAeoF,aACxBkd,GAAmBvL,MAAMvY,oBAAoBsG,kBAC7C,MACF,KAAKiS,MAAM/W,eAAeqF,eACxBid,GAAmBvL,MAAMvY,oBAAoBuG,oBAE7CyhB,GAD0BlE,EAAkBvL,MAAMvY,oBAAoBoG,OAASqe,aAAkCjM,oBAAoBqT,uBAAyBpH,EAAyBx4D,KAAK+zD,mBAC1I8L,aAClD,MACF,SACE,EAAIvT,MAAMhhD,MAAM,gDAAgD6sD,KAKpE,OAHIuH,IACF7H,GAAmBvL,MAAMvY,oBAAoByG,QAExC,CACLqd,kBACAa,SAAU,GAAGb,KAAmBkE,EAA8B7vC,OAC9D6vC,gCAEJ,CACA,OAAA3vC,GACE,GAAIpsB,KAAKo/D,kBACP,OAAOp/D,KAAKo/D,kBAAkB/T,QAEhCrrD,KAAKixD,WAAY,EACjBjxD,KAAKo/D,kBAAoB,IAAI9S,MAAMtY,kBACnC,aAAAh0C,KAAK,sBAAqBsE,OAAO,IAAImH,MAAM,oDAC3C,MAAM6vD,EAAS,GACf,UAAWwE,KAAQ,aAAA9/D,KAAK,YAAWu7D,SACjCD,EAAO15D,KAAKk+D,EAAKzE,YAEnB,aAAAr7D,KAAK,YAAW4O,QAChB,aAAA5O,KAAK,eAAc4O,QACf5O,KAAKR,eAAe,sBACtBQ,KAAK+zD,kBAAkBgM,gBAEzB,MAAMC,EAAahgE,KAAK8xD,eAAeK,gBAAgB,YAAa,MAcpE,OAbAmJ,EAAO15D,KAAKo+D,GACZ37D,QAAQw8B,IAAIy6B,GAAQz2D,MAAK,KACvB7E,KAAKy2D,WAAW7nD,QAChB5O,KAAKi/D,WAAWrwD,QAChB,aAAA5O,KAAK,iBAAgB4O,QACrB5O,KAAKkwD,cAAc9jC,UACnBpsB,KAAKq/D,gBAAgBY,kBAAkB,IAAI3T,MAAMvW,eAAe,2BAC5D/1C,KAAK8xD,iBACP9xD,KAAK8xD,eAAe1lC,UACpBpsB,KAAK8xD,eAAiB,MAExB9xD,KAAKo/D,kBAAkBh7D,SAAS,GAC/BpE,KAAKo/D,kBAAkB96D,QACnBtE,KAAKo/D,kBAAkB/T,OAChC,CACA,mBAAAmU,GACE,MAAM,eACJ1N,EAAc,YACd+D,GACE71D,KACJ8xD,EAAel2B,GAAG,aAAa,CAAChX,EAAMs7C,MACpC,EAAI5T,MAAMtW,QAAQh2C,KAAKq/D,eAAgB,mDACvCr/D,KAAKs/D,YAAct/D,KAAKq/D,eAAec,gBACvCngE,KAAKs/D,YAAY/M,WAAa6N,IAC5BpgE,KAAKu/D,cAAgB,CACnBlvC,OAAQ+vC,EAAI/vC,OACZC,MAAO8vC,EAAI9vC,MACZ,EAEH4vC,EAAKG,OAAS,KACZrgE,KAAKs/D,YAAYnE,OAAOt2D,MAAK,UAAU,MACrC1E,EAAK,KACLyE,IAEIA,EACFs7D,EAAKh7C,UAGP,EAAIonC,MAAMtW,QAAQ71C,aAAiBmqB,YAAa,wCAChD41C,EAAKI,QAAQ,IAAI32C,WAAWxpB,GAAQ,EAAG,CAACA,IAC1C,IAAGqS,OAAMmI,IACPulD,EAAKl2D,MAAM2Q,EAAO,GAClB,EAEJulD,EAAKjjC,SAAWtiB,IACd3a,KAAKs/D,YAAY7D,OAAO9gD,GACxBulD,EAAK/2B,MAAM32B,OAAM+tD,IACf,IAAIvgE,KAAKixD,UAGT,MAAMsP,CAAW,GACjB,CACH,IAEHzO,EAAel2B,GAAG,sBAAsBhX,IACtC,MAAM47C,EAAoB,IAAIlU,MAAMtY,kBAC9BysB,EAAazgE,KAAKs/D,YAmBxB,OAlBAmB,EAAWC,aAAa77D,MAAK,KACtB47D,EAAWE,sBAAyBF,EAAWG,mBAC9C5gE,KAAKu/D,eACP1J,EAAYtD,aAAavyD,KAAKu/D,eAEhCkB,EAAWlO,WAAa6N,IACtBvK,EAAYtD,aAAa,CACvBliC,OAAQ+vC,EAAI/vC,OACZC,MAAO8vC,EAAI9vC,OACX,GAGNkwC,EAAkBp8D,QAAQ,CACxBu8D,qBAAsBF,EAAWE,qBACjCC,iBAAkBH,EAAWG,iBAC7BC,cAAeJ,EAAWI,eAC1B,GACDL,EAAkBl8D,QACdk8D,EAAkBnV,OAAO,IAElCyG,EAAel2B,GAAG,kBAAkB,CAAChX,EAAMs7C,MACzC,EAAI5T,MAAMtW,QAAQh2C,KAAKq/D,eAAgB,wDACvC,MAAMyB,EAAc9gE,KAAKq/D,eAAe0B,eAAen8C,EAAK8G,MAAO9G,EAAK7W,KACnE+yD,GAILZ,EAAKG,OAAS,KACZS,EAAY3F,OAAOt2D,MAAK,UAAU,MAChC1E,EAAK,KACLyE,IAEIA,EACFs7D,EAAKh7C,UAGP,EAAIonC,MAAMtW,QAAQ71C,aAAiBmqB,YAAa,6CAChD41C,EAAKI,QAAQ,IAAI32C,WAAWxpB,GAAQ,EAAG,CAACA,IAC1C,IAAGqS,OAAMmI,IACPulD,EAAKl2D,MAAM2Q,EAAO,GAClB,EAEJulD,EAAKjjC,SAAWtiB,IACdmmD,EAAYrF,OAAO9gD,GACnBulD,EAAK/2B,MAAM32B,OAAM+tD,IACf,IAAIvgE,KAAKixD,UAGT,MAAMsP,CAAW,GACjB,GAzBFL,EAAKh7C,OA0BN,IAEH4sC,EAAel2B,GAAG,UAAU,EAC1B63B,cAEAzzD,KAAKghE,UAAYvN,EAAQO,SACzBh0D,KAAKm0D,YAAcV,EAAQwN,kBACpBxN,EAAQwN,WACfpL,EAAY3D,YAAY9tD,QAAQ,IAAIwnD,iBAAiB6H,EAASzzD,MAAM,IAEtE8xD,EAAel2B,GAAG,gBAAgB,SAAU6d,GAC1C,IAAI9+B,EACJ,OAAQ8+B,EAAGtwC,MACT,IAAK,oBACHwR,EAAS,IAAI2xC,MAAMnY,kBAAkBsF,EAAGrwC,QAASqwC,EAAGE,MACpD,MACF,IAAK,sBACHh/B,EAAS,IAAI2xC,MAAM5X,oBAAoB+E,EAAGrwC,SAC1C,MACF,IAAK,sBACHuR,EAAS,IAAI2xC,MAAMhY,oBAAoBmF,EAAGrwC,SAC1C,MACF,IAAK,8BACHuR,EAAS,IAAI2xC,MAAMzY,4BAA4B4F,EAAGrwC,QAASqwC,EAAGvkC,QAC9D,MACF,IAAK,wBACHyF,EAAS,IAAI2xC,MAAM1Y,sBAAsB6F,EAAGrwC,QAASqwC,EAAG7kC,SACxD,MACF,SACE,EAAI03C,MAAMpW,aAAa,0CAE3B2f,EAAY3D,YAAY5tD,OAAOqW,EACjC,IACAm3C,EAAel2B,GAAG,mBAAmBslC,IAEnC,GADA,aAAAlhE,KAAK,oBAAsB,IAAIssD,MAAMtY,mBACjC6hB,EAAYvD,WAAY,CAC1B,MAAM6O,EAAiB7S,IACjBA,aAAoB7iD,MACtB,aAAAzL,KAAK,qBAAoBsE,OAAOgqD,GAEhC,aAAAtuD,KAAK,qBAAoBoE,QAAQ,CAC/BkqD,YAEJ,EAEF,IACEuH,EAAYvD,WAAW6O,EAAgBD,EAAUvnB,KACnD,CAAE,MAAOF,GACP,aAAAz5C,KAAK,qBAAoBsE,OAAOm1C,EAClC,CACF,MACE,aAAAz5C,KAAK,qBAAoBsE,OAAO,IAAIgoD,MAAMnY,kBAAkB+sB,EAAU93D,QAAS83D,EAAUvnB,OAE3F,OAAO,aAAA35C,KAAK,qBAAoBqrD,OAAO,IAEzCyG,EAAel2B,GAAG,cAAchX,IAC9BixC,EAAYtD,aAAa,CACvBliC,OAAQzL,EAAK/e,OACbyqB,MAAO1L,EAAK/e,SAEd7F,KAAKy1D,uBAAuBrxD,QAAQwgB,EAAK,IAE3CktC,EAAel2B,GAAG,mBAAmBhX,IAC/B5kB,KAAKixD,WAGI,aAAAjxD,KAAK,YAAWS,IAAImkB,EAAKsxC,WACjC0F,iBAAiBh3C,EAAKk1C,aAAcl1C,EAAK8zC,SAAS,IAEzD5G,EAAel2B,GAAG,aAAa,EAAEhmB,EAAI7I,EAAMq0D,MACzC,IAAIphE,KAAKixD,YAGLjxD,KAAKy2D,WAAWmH,IAAIhoD,GAGxB,OAAQ7I,GACN,IAAK,OACH,MAAMsH,EAASrU,KAAKm/D,QACpB,GAAI,UAAWiC,EAAc,CAC3B,MAAMC,EAAgBD,EAAap3D,OACnC,EAAIsiD,MAAMhhD,MAAM,8BAA8B+1D,KAC9CrhE,KAAKy2D,WAAWryD,QAAQwR,EAAIyrD,GAC5B,KACF,CACA,MAAMC,EAAcjtD,EAAOs7C,QAAU5wD,WAAWwiE,eAAextD,QAAU,CAACytD,EAAMt0D,IAAQnO,WAAWwiE,cAAcE,UAAUD,EAAMt0D,GAAO,KAClIs0D,EAAO,IAAI/U,aAAaiV,eAAeN,EAAc,CACzDvZ,gBAAiBxzC,EAAOwzC,gBACxBwH,gBAAiBh7C,EAAOg7C,gBACxBJ,aAAc56C,EAAO46C,aACrBqS,gBAEFthE,KAAKi/D,WAAW78C,KAAKo/C,GAAMhvD,OAAMmI,GACxBm3C,EAAeK,gBAAgB,eAAgB,CACpDv8C,SAED+rD,SAAQ,MACJttD,EAAOi7C,qBAAuBkS,EAAK58C,OACtC48C,EAAK58C,KAAO,MAEd5kB,KAAKy2D,WAAWryD,QAAQwR,EAAI4rD,EAAK,IAEnC,MACF,IAAK,WACL,IAAK,QACL,IAAK,UACHxhE,KAAKy2D,WAAWryD,QAAQwR,EAAIwrD,GAC5B,MACF,QACE,MAAM,IAAI31D,MAAM,kCAAkCsB,KACtD,IAEF+kD,EAAel2B,GAAG,OAAO,EAAEhmB,EAAIsgD,EAAWnpD,EAAM60D,MAC9C,GAAI5hE,KAAKixD,UACP,OAEF,MAAM4Q,EAAY,aAAA7hE,KAAK,YAAWS,IAAIy1D,GACtC,IAAI2L,EAAUnL,KAAKkH,IAAIhoD,GAGvB,OAAQ7I,GACN,IAAK,QAEH,GADA80D,EAAUnL,KAAKtyD,QAAQwR,EAAIgsD,GACvBA,EAAW,CACb,IAAI/7D,EACJ,GAAI+7D,EAAUE,OAAQ,CACpB,MAAM,MACJ//B,EAAK,OACLE,GACE2/B,EACJ/7D,EAASk8B,EAAQE,EAAS,CAC5B,MACEp8B,EAAS+7D,EAAUh9C,MAAM/e,QAAU,EAEjCA,EAASymD,MAAM/X,0BACjBstB,EAAUjL,0BAA2B,EAEzC,CACA,MACF,IAAK,UACHiL,EAAUnL,KAAKtyD,QAAQwR,EAAIgsD,GAC3B,MACF,QACE,MAAM,IAAIn2D,MAAM,2BAA2BsB,KAC/C,IAEF+kD,EAAel2B,GAAG,eAAehX,IAC3B5kB,KAAKixD,WAGT4E,EAAYtD,aAAa,CACvBliC,OAAQzL,EAAKyL,OACbC,MAAO1L,EAAK0L,OACZ,IAEJwhC,EAAel2B,GAAG,oBAAoBhX,GAChC5kB,KAAKixD,UACA5sD,QAAQC,OAAO,IAAImH,MAAM,0BAE7BzL,KAAKowD,kBAGHpwD,KAAKowD,kBAAkB54C,MAAMoN,GAF3BvgB,QAAQC,OAAO,IAAImH,MAAM,6EAIpCqmD,EAAel2B,GAAG,yBAAyBhX,GACrC5kB,KAAKixD,UACA5sD,QAAQC,OAAO,IAAImH,MAAM,0BAE7BzL,KAAKswD,wBAGHtwD,KAAKswD,wBAAwB94C,MAAMoN,GAFjCvgB,QAAQC,OAAO,IAAImH,MAAM,kFAItC,CACA,OAAA6pD,GACE,OAAOt1D,KAAK8xD,eAAeK,gBAAgB,UAAW,KACxD,CACA,YAAAoD,GACMv1D,KAAK+zD,kBAAkBhnC,MAAQ,IACjC,EAAIu/B,MAAMhhD,MAAM,kGAElB,MAAM,IACJrD,EAAG,UACH+zD,GACEh8D,KAAK+zD,kBAAkB8L,aAC3B,OAAO7/D,KAAK8xD,eAAeK,gBAAgB,eAAgB,CACzD+B,YAAal0D,KAAKm0D,YAClBH,SAAUh0D,KAAKghE,UACfjN,kBAAmB9rD,EACnBymB,SAAU1uB,KAAKs/D,aAAa5wC,UAAY,MACvCstC,GAAW2F,SAAQ,KACpB3hE,KAAK+zD,kBAAkBgM,eAAe,GAE1C,CACA,OAAA1L,CAAQC,GACN,IAAKxb,OAAOC,UAAUub,IAAeA,GAAc,GAAKA,EAAat0D,KAAKghE,UACxE,OAAO38D,QAAQC,OAAO,IAAImH,MAAM,0BAElC,MAAMyqD,EAAY5B,EAAa,EAC7ByN,EAAgB,aAAA/hE,KAAK,eAAcS,IAAIy1D,GACzC,GAAI6L,EACF,OAAOA,EAET,MAAM1W,EAAUrrD,KAAK8xD,eAAeK,gBAAgB,UAAW,CAC7D+D,cACCrxD,MAAKsxD,IACN,GAAIn2D,KAAKixD,UACP,MAAM,IAAIxlD,MAAM,uBAElB,MAAMq0D,EAAO,IAAInU,aAAauK,EAAWC,EAAUn2D,KAAMA,KAAKm/D,QAAQxP,QAEtE,OADA,aAAA3vD,KAAK,YAAW8qB,IAAIorC,EAAW4J,GACxBA,CAAI,IAGb,OADA,aAAA9/D,KAAK,eAAc8qB,IAAIorC,EAAW7K,GAC3BA,CACT,CACA,YAAAkJ,CAAa59B,GACX,MAAmB,iBAARA,GAA4B,OAARA,IAAiBmiB,OAAOC,UAAUpiB,EAAIpL,MAAQoL,EAAIpL,IAAM,IAAMutB,OAAOC,UAAUpiB,EAAIqrC,MAAQrrC,EAAIqrC,IAAM,EAC3H39D,QAAQC,OAAO,IAAImH,MAAM,+BAE3BzL,KAAK8xD,eAAeK,gBAAgB,eAAgB,CACzD5mC,IAAKoL,EAAIpL,IACTy2C,IAAKrrC,EAAIqrC,KAEb,CACA,cAAAvK,CAAevB,EAAWwB,GACxB,OAAO13D,KAAK8xD,eAAeK,gBAAgB,iBAAkB,CAC3D+D,YACAwB,UAEJ,CACA,eAAA3B,GACE,OAAO,gBAAA/1D,KAAK,yCAAL,KAAAA,KAAwB,kBACjC,CACA,YAAAg2D,GACE,OAAO,gBAAAh2D,KAAK,yCAAL,KAAAA,KAAwB,eACjC,CACA,sBAAAi2D,GACE,OAAOj2D,KAAK8xD,eAAeK,gBAAgB,yBAA0B,KACvE,CACA,eAAAqC,GACE,OAAOx0D,KAAK8xD,eAAeK,gBAAgB,kBAAmB,KAChE,CACA,cAAAsC,CAAe7+C,GACb,MAAkB,iBAAPA,EACFvR,QAAQC,OAAO,IAAImH,MAAM,iCAE3BzL,KAAK8xD,eAAeK,gBAAgB,iBAAkB,CAC3Dv8C,MAEJ,CACA,aAAA8+C,GACE,OAAO10D,KAAK8xD,eAAeK,gBAAgB,gBAAiB,KAC9D,CACA,aAAAwC,GACE,OAAO30D,KAAK8xD,eAAeK,gBAAgB,gBAAiB,KAC9D,CACA,WAAAyC,GACE,OAAO50D,KAAK8xD,eAAeK,gBAAgB,cAAe,KAC5D,CACA,oBAAA0C,GACE,OAAO70D,KAAK8xD,eAAeK,gBAAgB,uBAAwB,KACrE,CACA,aAAA2C,GACE,OAAO90D,KAAK8xD,eAAeK,gBAAgB,gBAAiB,KAC9D,CACA,cAAA4C,GACE,OAAO/0D,KAAK8xD,eAAeK,gBAAgB,iBAAkB,KAC/D,CACA,eAAA6C,GACE,OAAO,gBAAAh1D,KAAK,yCAAL,KAAAA,KAAwB,kBACjC,CACA,gBAAA83D,CAAiB5B,GACf,OAAOl2D,KAAK8xD,eAAeK,gBAAgB,mBAAoB,CAC7D+D,aAEJ,CACA,aAAAkF,CAAclF,GACZ,OAAOl2D,KAAK8xD,eAAeK,gBAAgB,gBAAiB,CAC1D+D,aAEJ,CACA,UAAAjB,GACE,OAAOj1D,KAAK8xD,eAAeK,gBAAgB,aAAc,KAC3D,CACA,wBAAA+C,GACE,OAAOl1D,KAAK8xD,eAAeK,gBAAgB,2BAA4B,MAAMttD,MAAK+E,GACzE,IAAImjD,yBAAyBkV,sBAAsBr4D,IAE9D,CACA,cAAAurD,GACE,OAAOn1D,KAAK8xD,eAAeK,gBAAgB,iBAAkB,KAC/D,CACA,WAAAiD,GACE,MAAMjsD,EAAO,cACX44D,EAAgB,aAAA/hE,KAAK,iBAAgBS,IAAI0I,GAC3C,GAAI44D,EACF,OAAOA,EAET,MAAM1W,EAAUrrD,KAAK8xD,eAAeK,gBAAgBhpD,EAAM,MAAMtE,MAAK+E,IAC5D,CACLyB,KAAMzB,EAAQ,GACduJ,SAAUvJ,EAAQ,GAAK,IAAIkjD,UAAUoV,SAASt4D,EAAQ,IAAM,KAC5D6nD,2BAA4BzxD,KAAKs/D,aAAa5wC,UAAY,KAC1DmyC,cAAe7gE,KAAKs/D,aAAauB,eAAiB,SAItD,OADA,aAAA7gE,KAAK,iBAAgB8qB,IAAI3hB,EAAMkiD,GACxBA,CACT,CACA,WAAAgK,GACE,OAAOr1D,KAAK8xD,eAAeK,gBAAgB,cAAe,KAC5D,CACA,kBAAMyD,CAAaD,GAAkB,GACnC,IAAI31D,KAAKixD,UAAT,OAGMjxD,KAAK8xD,eAAeK,gBAAgB,UAAW,MACrD,UAAW2N,KAAQ,aAAA9/D,KAAK,YAAWu7D,SAEjC,IAD0BuE,EAAKpK,UAE7B,MAAM,IAAIjqD,MAAM,sBAAsBq0D,EAAKxL,sCAG/Ct0D,KAAKy2D,WAAW7nD,QACX+mD,GACH31D,KAAKi/D,WAAWrwD,QAElB,aAAA5O,KAAK,iBAAgB4O,QACrB5O,KAAKkwD,cAAc9jC,SAAQ,EAb3B,CAcF,CACA,iBAAI0pC,GACF,MAAM,iBACJpG,EAAgB,UAChBH,GACEvvD,KAAKm/D,QACT,SAAW7S,MAAMtT,QAAQh5C,KAAM,gBAAiB,CAC9C0vD,mBACAH,aAEJ,EA9hBA,4BACA,uBACA,0BACA,gCAsBA,oDAAkB,SAACpmD,EAAMyb,EAAO,MAC9B,MAAMm9C,EAAgB,aAAA/hE,KAAK,iBAAgBS,IAAI0I,GAC/C,GAAI44D,EACF,OAAOA,EAET,MAAM1W,EAAUrrD,KAAK8xD,eAAeK,gBAAgBhpD,EAAMyb,GAE1D,OADA,aAAA5kB,KAAK,iBAAgB8qB,IAAI3hB,EAAMkiD,GACxBA,CACT,EA+fF,MAAMsL,WAAN,cAEE,8BADA,wBAAQr3D,OAAO4D,OAAO,MAAI,CAO1B,GAAAzC,CAAI0hE,EAAOrzD,EAAW,MACpB,GAAIA,EAAU,CACZ,MAAMlH,EAAM,gBAAA5H,KAAK,yBAAL,KAAAA,KAAgBmiE,GAE5B,OADAv6D,EAAI2xD,WAAWlO,QAAQxmD,MAAK,IAAMiK,EAASlH,EAAIgd,QACxC,IACT,CACA,MAAMhd,EAAM,aAAA5H,KAAK,OAAMmiE,GACvB,IAAKv6D,GAAK2xD,WAAWjO,QACnB,MAAM,IAAI7/C,MAAM,6CAA6C02D,MAE/D,OAAOv6D,EAAIgd,IACb,CACA,GAAAg5C,CAAIuE,GACF,MAAMv6D,EAAM,aAAA5H,KAAK,OAAMmiE,GACvB,OAAOv6D,GAAK2xD,WAAWjO,UAAW,CACpC,CACA,OAAAlnD,CAAQ+9D,EAAOv9C,EAAO,MACpB,MAAMhd,EAAM,gBAAA5H,KAAK,yBAAL,KAAAA,KAAgBmiE,GAC5Bv6D,EAAIgd,KAAOA,EACXhd,EAAI2xD,WAAWn1D,SACjB,CACA,KAAAwK,GACE,UAAWuzD,KAAS,aAAAniE,KAAK,OAAO,CAC9B,MAAM,KACJ4kB,GACE,aAAA5kB,KAAK,OAAMmiE,GACfv9C,GAAMk9C,QAAQ58C,OAChB,CACA,aAAAllB,KAAK,MAAQV,OAAO4D,OAAO,MAC7B,EApCA,kBACA,oCAAU,SAACi/D,GACT,OAAO,aAAAniE,KAAK,OAAMmiE,KAAW,CAC3B5I,WAAY,IAAIjN,MAAMtY,kBACtBpvB,KAAM,KAEV,EAgCF,MAAM4mC,WAEJ,WAAA7sC,CAAY26C,GADZ,sCAAsB,MAEpB,aAAAt5D,KAAK,oBAAsBs5D,GAC3Bt5D,KAAKoiE,WAAa,IACpB,CACA,WAAI/W,GACF,OAAO,aAAArrD,KAAK,qBAAoBu5D,WAAWlO,OAC7C,CACA,MAAAoQ,CAAOU,EAAa,GAClB,aAAAn8D,KAAK,qBAAoBy7D,OAAO,KAAMU,EACxC,CACA,kBAAIjD,GACF,MAAM,eACJA,GACE,aAAAl5D,KAAK,qBAAoB84D,aAC7B,IAAKI,EACH,OAAO,EAET,MAAM,oBACJZ,GACE,aAAAt4D,KAAK,qBACT,OAAOk5D,EAAetoC,MAAQsoC,EAAemJ,QAAU/J,GAAqBvrC,KAAO,CACrF,EAtBA,gCAwBFluB,QAAQ2sD,WAAaA,WACrB,MAAM,oBAAN,MAAM,EAEJ,WAAA7sC,EAAY,SACV7P,EAAQ,OACRuF,EAAM,KACNqiD,EAAI,WACJD,EAAU,oBACV6B,EAAmB,aACnBQ,EAAY,UACZ5C,EAAS,cACTjG,EAAa,cACbC,EAAa,yBACbyJ,GAA2B,EAAK,OAChChK,GAAS,EAAK,WACd4I,EAAa,OAEbv4D,KAAK8O,SAAWA,EAChB9O,KAAKqU,OAASA,EACdrU,KAAK02D,KAAOA,EACZ12D,KAAKy2D,WAAaA,EAClBz2D,KAAKs4D,oBAAsBA,EAC3Bt4D,KAAKsiE,gBAAkB,KACvBtiE,KAAK84D,aAAeA,EACpB94D,KAAKo2D,WAAaF,EAClBl2D,KAAKiwD,cAAgBA,EACrBjwD,KAAKkwD,cAAgBA,EACrBlwD,KAAKw2D,QAAU7G,EACf3vD,KAAKu4D,WAAaA,EAClBv4D,KAAKuiE,SAAU,EACfviE,KAAKwiE,sBAAwB,KAC7BxiE,KAAKyiE,eAAgB,EACrBziE,KAAK0iE,2BAAyD,IAA7B/I,GAAuD,oBAAX36D,OAC7EgB,KAAK2iE,WAAY,EACjB3iE,KAAKu5D,WAAa,IAAIjN,MAAMtY,kBAC5Bh0C,KAAKguD,KAAO,IAAIxC,WAAWxrD,MAC3BA,KAAK4iE,aAAe5iE,KAAKy7D,OAAOr5C,KAAKpiB,MACrCA,KAAK6iE,eAAiB7iE,KAAK8iE,UAAU1gD,KAAKpiB,MAC1CA,KAAK+iE,mBAAqB/iE,KAAKgjE,cAAc5gD,KAAKpiB,MAClDA,KAAKijE,WAAajjE,KAAKkjE,MAAM9gD,KAAKpiB,MAClCA,KAAK2sD,QAAUt4C,EAAO4jD,cAAcoK,MACtC,CACA,aAAI7G,GACF,OAAOx7D,KAAKu5D,WAAWlO,QAAQ74C,OAAM,WAAa,GACpD,CACA,kBAAAwnD,EAAmB,aACjBF,GAAe,EAAK,sBACpBC,IAEA,GAAI/5D,KAAK2iE,UACP,OAEF,GAAI3iE,KAAK2sD,QAAS,CAChB,GAAI,eAAmB,cAAaiR,IAAI59D,KAAK2sD,SAC3C,MAAM,IAAIlhD,MAAM,mJAElB,eAAmB,cAAamc,IAAI5nB,KAAK2sD,QAC3C,CACI3sD,KAAKw2D,SAAWz3D,WAAWokE,gBAAgBpvD,UAC7C/T,KAAKojE,QAAUrkE,WAAWokE,eAAejgE,OAAOlD,KAAKo2D,YACrDp2D,KAAKojE,QAAQC,KAAKrjE,KAAK84D,cACvB94D,KAAKojE,QAAQE,eAAiBtjE,KAAKojE,QAAQG,qBAE7C,MAAM,cACJtL,EAAa,SACbC,EAAQ,UACR5V,EAAS,WACT8V,GACEp4D,KAAKqU,OACTrU,KAAKwjE,IAAM,IAAI7W,QAAQ8W,eAAexL,EAAej4D,KAAKy2D,WAAYz2D,KAAK02D,KAAM12D,KAAKiwD,cAAejwD,KAAKkwD,cAAe,CACvH6J,yBACC/5D,KAAKs4D,oBAAqBt4D,KAAKu4D,YAClCv4D,KAAKwjE,IAAIE,aAAa,CACpBphB,YACA4V,WACA4B,eACA1B,eAEFp4D,KAAKsiE,gBAAkB,EACvBtiE,KAAKyiE,eAAgB,EACrBziE,KAAKwiE,yBACP,CACA,MAAA/G,CAAOzxD,EAAQ,KAAMmyD,EAAa,GAChCn8D,KAAKuiE,SAAU,EACfviE,KAAK2iE,WAAY,EACjB3iE,KAAKwjE,KAAKG,aACV,eAAmB,cAAatxC,OAAOryB,KAAK2sD,SAC5C3sD,KAAK8O,SAAS9E,GAAS,IAAIwiD,eAAe0P,4BAA4B,6BAA6Bl8D,KAAKo2D,WAAa,IAAK+F,GAC5H,CACA,mBAAAlC,GACOj6D,KAAKyiE,eAIVziE,KAAKojE,SAASQ,mBAAmB5jE,KAAK84D,cAClC94D,KAAKuiE,SAGTviE,KAAK8iE,aAPH9iE,KAAKwiE,wBAA0BxiE,KAAK6iE,cAQxC,CACA,SAAAC,GACE9iE,KAAKuiE,SAAU,EACXviE,KAAK2iE,YAGL3iE,KAAKguD,KAAKoU,WACZpiE,KAAKguD,KAAKoU,WAAWpiE,KAAK+iE,oBAE1B/iE,KAAKgjE,gBAET,CACA,aAAAA,GACMhjE,KAAK0iE,0BACP1jE,OAAO6kE,uBAAsB,KAC3B7jE,KAAKijE,aAAazwD,MAAMxS,KAAK4iE,aAAa,IAG5Cv+D,QAAQD,UAAUS,KAAK7E,KAAKijE,YAAYzwD,MAAMxS,KAAK4iE,aAEvD,CACA,WAAMM,GACAljE,KAAK2iE,YAGT3iE,KAAKsiE,gBAAkBtiE,KAAKwjE,IAAIM,oBAAoB9jE,KAAK84D,aAAc94D,KAAKsiE,gBAAiBtiE,KAAK6iE,eAAgB7iE,KAAKojE,SACnHpjE,KAAKsiE,kBAAoBtiE,KAAK84D,aAAaE,UAAUnzD,SACvD7F,KAAKuiE,SAAU,EACXviE,KAAK84D,aAAaG,YACpBj5D,KAAKwjE,IAAIG,aACT,eAAmB,cAAatxC,OAAOryB,KAAK2sD,SAC5C3sD,KAAK8O,aAGX,GAnIO,yBAAP,aADI,oBACG,aAAe,IAAIi1D,SAD5B,IAAMrK,mBAAN,oBAsIA,MAAMzpD,QAAU,WAChBpR,QAAQoR,QAAUA,QAClB,MAAM2+B,MAAQ,YACd/vC,QAAQ+vC,MAAQA,KAAK,EAId,CAAC8E,EAAyB70C,EAAS0sD,KAtrF1C,cA0rFAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ8gE,kBAAoB9gE,EAAQ+gE,uBAAyB/gE,EAAQ4gE,uBAAoB,EACzF,IAAInT,EAAQf,EAAoB,GAC5ByY,EAAUzY,EAAoB,GAC9B0Y,EAAc1Y,EAAoB,GACtC,MAAMoU,EAAoBrgE,OAAOyD,OAAO,CACtCkF,IAAK,KACLikB,KAAM,GACN8vC,eAAW,IAEbn9D,EAAQ8gE,kBAAoBA,EAC5B,MAAMF,EAGJ,WAAA9gD,GAgEA,qBAlEA,qBAAY,GACZ,oBAAW,IAAI25B,KAEbt4C,KAAKkkE,cAAgB,KACrBlkE,KAAKmkE,gBAAkB,KACvBnkE,KAAKokE,mBAAqB,IAC5B,CACA,QAAAC,CAASv3D,EAAKozB,GACZ,MAAM//B,EAAQ,aAAAH,KAAK,GAASS,IAAIqM,GAChC,YAAc,IAAV3M,EACK+/B,EAEF5gC,OAAO0P,OAAOkxB,EAAc//B,EACrC,CACA,WAAAmkE,CAAYx3D,GACV,OAAO,aAAA9M,KAAK,GAASS,IAAIqM,EAC3B,CACA,MAAAga,CAAOha,GAKL,GAJA,aAAA9M,KAAK,GAASqyB,OAAOvlB,GACM,IAAvB,aAAA9M,KAAK,GAAS+sB,MAChB/sB,KAAK+/D,gBAEgC,mBAA5B//D,KAAKokE,mBAAmC,CACjD,UAAWjkE,KAAS,aAAAH,KAAK,GAASu7D,SAChC,GAAIp7D,aAAiB6jE,EAAQO,iBAC3B,OAGJvkE,KAAKokE,mBAAmB,KAC1B,CACF,CACA,QAAAI,CAAS13D,EAAK3M,GACZ,MAAMyH,EAAM,aAAA5H,KAAK,GAASS,IAAIqM,GAC9B,IAAI23D,GAAW,EACf,QAAY,IAAR78D,EACF,UAAY88D,EAAOr5C,KAAQ/rB,OAAO4e,QAAQ/d,GACpCyH,EAAI88D,KAAWr5C,IACjBo5C,GAAW,EACX78D,EAAI88D,GAASr5C,QAIjBo5C,GAAW,EACX,aAAAzkE,KAAK,GAAS8qB,IAAIhe,EAAK3M,GAErBskE,GACF,gBAAAzkE,KAAK,KAAL,KAAAA,MAEEG,aAAiB6jE,EAAQO,kBAAuD,mBAA5BvkE,KAAKokE,oBAC3DpkE,KAAKokE,mBAAmBjkE,EAAMwe,YAAYgmD,MAE9C,CACA,GAAA/G,CAAI9wD,GACF,OAAO,aAAA9M,KAAK,GAAS49D,IAAI9wD,EAC3B,CACA,MAAA83D,GACE,OAAO,aAAA5kE,KAAK,GAAS+sB,KAAO,GAAI,EAAIu/B,EAAM3T,eAAe,aAAA34C,KAAK,IAAY,IAC5E,CACA,MAAA6kE,CAAOj9D,GACL,UAAYkF,EAAKue,KAAQ/rB,OAAO4e,QAAQtW,GACtC5H,KAAKwkE,SAAS13D,EAAKue,EAEvB,CACA,QAAI0B,GACF,OAAO,aAAA/sB,KAAK,GAAS+sB,IACvB,CASA,aAAAgzC,GACM,aAAA//D,KAAK,KACP,aAAAA,KAAK,GAAY,GACmB,mBAAzBA,KAAKmkE,iBACdnkE,KAAKmkE,kBAGX,CACA,SAAIW,GACF,OAAO,IAAIlF,EAAuB5/D,KACpC,CACA,gBAAI6/D,GACF,GAA2B,IAAvB,aAAA7/D,KAAK,GAAS+sB,KAChB,OAAO4yC,EAET,MAAM13D,EAAM,IAAIqwC,IACdpsB,EAAO,IAAI+3C,EAAYc,eACvB/I,EAAY,GACRr0D,EAAUrI,OAAO4D,OAAO,MAC9B,IAAI8hE,GAAY,EAChB,UAAYl4D,EAAKue,KAAQ,aAAArrB,KAAK,GAAU,CACtC,MAAMilE,EAAa55C,aAAe24C,EAAQO,iBAAmBl5C,EAAI7gB,WAAU,EAAO7C,GAAW0jB,EACzF45C,IACFh9D,EAAI6iB,IAAIhe,EAAKm4D,GACb/4C,EAAKsO,OAAO,GAAG1tB,KAAOY,KAAKC,UAAUs3D,MACrCD,MAAgBC,EAAWnD,OAE/B,CACA,GAAIkD,EACF,UAAW7kE,KAAS8H,EAAIszD,SAClBp7D,EAAM2hE,QACR9F,EAAUp6D,KAAKzB,EAAM2hE,QAI3B,OAAO75D,EAAI8kB,KAAO,EAAI,CACpB9kB,MACAikB,KAAMA,EAAKg5C,YACXlJ,aACE2D,CACN,EAlHA,cACA,cAiEA,gBAAY,WACL,aAAA3/D,KAAK,KACR,aAAAA,KAAK,GAAY,GACiB,mBAAvBA,KAAKkkE,eACdlkE,KAAKkkE,gBAGX,EA2CFrlE,EAAQ4gE,kBAAoBA,EAC5B,MAAMG,UAA+BH,EAEnC,WAAA9gD,CAAYwmD,GACV1d,QAFF,4BAGE,MAAM,IACJx/C,EAAG,KACHikB,EAAI,UACJ8vC,GACEmJ,EAAOtF,aACL95D,EAAQ22D,gBAAgBz0D,EAAK+zD,EAAY,CAC7CS,SAAUT,GACR,MACJ,aAAAh8D,KAAK,EAAgB,CACnBiI,IAAKlC,EACLmmB,OACA8vC,aAEJ,CACA,SAAI8I,IACF,EAAIxY,EAAMpW,aAAa,+CACzB,CACA,gBAAI2pB,GACF,OAAO,aAAA7/D,KAAK,EACd,EAtBA,cAwBFnB,EAAQ+gE,uBAAyBA,CAAsB,EAIhD,CAAClsB,EAAyB70C,EAAS0sD,KA11F1C,oEA81FAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ0lE,sBAAmB,EAC3B,IAAIa,EAAS7Z,EAAoB,GAC7Be,EAAQf,EAAoB,GAC5BiB,EAAiBjB,EAAoB,GACzC,MAAM,EAAN,MAAM,EAuBJ,WAAA5sC,CAAY0mD,GA0KZ,qBA0CA,qBA8EA,qBAiEA,qBAmBA,qBA8DA,qBAqHA,kBAAM,GAmGN,qBAlqBA,oBAAW,IACX,qBAAqB,GACrB,oBAAiB,MACjB,oBAAkB,MAClB,oBAAyB,MACzB,qBAAmB,GACnB,oBAAe,MACf,oBAAgBrlE,KAAKslE,QAAQljD,KAAKpiB,OAClC,oBAAiBA,KAAKulE,SAASnjD,KAAKpiB,OACpC,qBAAkB,GAClB,qBAAa,GACb,qBAAgB,GAChB,qCAAkBV,OAAO4D,OAAO,OAChC,gCAAa,MACb,0CAAsB,GACtB,kCAAe,MACf,qBAAe,GACf,oBAAU,EAAiBsiE,WAMrBxlE,KAAK2e,cAAgB,IACvB,EAAI2tC,EAAMpW,aAAa,uCAEzBl2C,KAAKmlE,OAASE,EAAWF,OACzBnlE,KAAK4V,GAAKyvD,EAAWzvD,GACrB5V,KAAK+hC,MAAQ/hC,KAAKiiC,OAAS,KAC3BjiC,KAAKk2D,UAAYmP,EAAWF,OAAOjP,UACnCl2D,KAAKmJ,KAAOk8D,EAAWl8D,KACvBnJ,KAAK4gC,IAAM,KACX5gC,KAAKylE,WAAaJ,EAAWK,UAC7B1lE,KAAK2lE,oBAAsB,KAC3B3lE,KAAK4lE,sBAAuB,EAC5B5lE,KAAK6lE,gBAAgBC,WAAaT,EAAWS,WAC7C9lE,KAAK+lE,oBAAsB,KAC3B,MAAM,SACJ5O,EACA6O,SAAS,UACPC,EAAS,WACTC,EAAU,MACVC,EAAK,MACLC,IAEApmE,KAAKmlE,OAAOjN,SAChBl4D,KAAKm3D,SAAWA,EAChBn3D,KAAKqmE,cAAgB,IAAMlP,EAAWn3D,KAAKylE,WAAWa,eAAenP,UAAY,IACjFn3D,KAAKumE,eAAiB,CAACN,EAAWC,GAClClmE,KAAKwmE,gBAAkB,CAACL,EAAOC,GAC/B,MAAOrkC,EAAOE,GAAUjiC,KAAKymE,iBAC7BzmE,KAAKZ,EAAIimE,EAAWjmE,EAAI2iC,EACxB/hC,KAAKgF,EAAIqgE,EAAWrgE,EAAIi9B,EACxBjiC,KAAK0mE,iBAAkB,EACvB1mE,KAAK2mE,SAAU,CACjB,CACA,cAAIC,GACF,OAAOtnE,OAAOunE,eAAe7mE,MAAM2e,YAAYgmD,KACjD,CACA,4BAAWmC,GACT,SAAWxa,EAAMtT,QAAQh5C,KAAM,oBAAqBA,KAAK+mE,cAAcC,WAAW,cACpF,CACA,8BAAOC,CAAwBC,GAC7B,MAAMC,EAAa,IAAIC,EAAW,CAChCxxD,GAAIsxD,EAAO/B,OAAOkC,YAClBlC,OAAQ+B,EAAO/B,OACfO,UAAWwB,EAAOzB,aAEpB0B,EAAWxB,oBAAsBuB,EAAOvB,oBACxCwB,EAAWR,SAAU,EACrBQ,EAAW1B,WAAW6B,uBAAuBH,EAC/C,CACA,iBAAOI,CAAW93B,EAAMtxB,EAAU,MAEhC,GADA,EAAiBqpD,eAAiB,IAAIlvB,IAAI,CAAC,+BAAgC,oCAAqC,sCAAsCrwC,KAAI+hB,GAAO,CAACA,EAAKylB,EAAKhvC,IAAIupB,OAC5K7L,GAASspD,QACX,UAAWz9C,KAAO7L,EAAQspD,QACxB,EAAiBD,aAAa18C,IAAId,EAAKylB,EAAKhvC,IAAIupB,IAGpD,IAA2C,IAAvC,EAAiB09C,iBACnB,OAEF,MAAM9vD,EAAQkqB,iBAAiBrqB,SAASkwD,iBACxC,EAAiBD,iBAAmBE,WAAWhwD,EAAMiwD,iBAAiB,qBAAuB,CAC/F,CACA,0BAAOC,CAAoBnD,EAAOoD,GAAS,CAC3C,oCAAWC,GACT,MAAO,EACT,CACA,+BAAOC,CAAyBC,GAC9B,OAAO,CACT,CACA,YAAOC,CAAMj1D,EAAMiyD,IACjB,EAAI7Y,EAAMpW,aAAa,kBACzB,CACA,sBAAIkyB,GACF,MAAO,EACT,CACA,gBAAIC,GACF,OAAO,aAAAroE,KAAK,EACd,CACA,gBAAIqoE,CAAaloE,GACf,aAAAH,KAAK,EAAeG,GACpBH,KAAK4gC,KAAKoO,UAAUs5B,OAAO,YAAanoE,EAC1C,CACA,MAAAooE,GACE,MAAOtC,EAAWC,GAAclmE,KAAKumE,eACrC,OAAQvmE,KAAKwoE,gBACX,KAAK,GACHxoE,KAAKZ,GAAKY,KAAKiiC,OAASikC,GAA0B,EAAZD,GACtCjmE,KAAKgF,GAAKhF,KAAK+hC,MAAQkkC,GAA0B,EAAbC,GACpC,MACF,KAAK,IACHlmE,KAAKZ,GAAKY,KAAK+hC,MAAQ,EACvB/hC,KAAKgF,GAAKhF,KAAKiiC,OAAS,EACxB,MACF,KAAK,IACHjiC,KAAKZ,GAAKY,KAAKiiC,OAASikC,GAA0B,EAAZD,GACtCjmE,KAAKgF,GAAKhF,KAAK+hC,MAAQkkC,GAA0B,EAAbC,GACpC,MACF,QACElmE,KAAKZ,GAAKY,KAAK+hC,MAAQ,EACvB/hC,KAAKgF,GAAKhF,KAAKiiC,OAAS,EAG5BjiC,KAAKyoE,mBACP,CACA,WAAAC,CAAYr0D,GACVrU,KAAKylE,WAAWiD,YAAYr0D,EAC9B,CACA,gBAAIs0D,GACF,OAAO3oE,KAAKylE,WAAWkD,YACzB,CACA,eAAAC,GACE5oE,KAAK4gC,IAAIhpB,MAAMixD,OAAS,CAC1B,CACA,eAAAC,GACE9oE,KAAK4gC,IAAIhpB,MAAMixD,OAAS,aAAA7oE,KAAK,EAC/B,CACA,SAAA+oE,CAAU5D,GACO,OAAXA,IACFnlE,KAAKk2D,UAAYiP,EAAOjP,UACxBl2D,KAAKumE,eAAiBpB,EAAOoB,gBAE/BvmE,KAAKmlE,OAASA,CAChB,CACA,OAAAG,CAAQ/pD,GACDvb,KAAKgpE,sBAGL,aAAAhpE,KAAK,GAGR,aAAAA,KAAK,GAAkB,GAFvBA,KAAKmlE,OAAO8D,YAAYjpE,MAI5B,CACA,QAAAulE,CAAShqD,GACP,IAAKvb,KAAKgpE,oBACR,OAEF,IAAKhpE,KAAK0mE,gBACR,OAEF,MAAMjrD,EAASF,EAAM2tD,cACjBztD,GAAQiW,QAAQ,IAAI1xB,KAAK4V,QAG7B2F,EAAMwW,iBACD/xB,KAAKmlE,QAAQgE,qBAChBnpE,KAAKopE,iBAET,CACA,cAAAA,GACMppE,KAAKqpE,UACPrpE,KAAK8mB,SAEL9mB,KAAKspE,QAET,CACA,MAAAA,GACEtpE,KAAKsnE,wBACP,CACA,sBAAAA,GACEtnE,KAAKylE,WAAW6B,uBAAuBtnE,KACzC,CACA,KAAAupE,CAAMnqE,EAAG4F,EAAGwkE,EAAIC,GACd,MAAO1nC,EAAOE,GAAUjiC,KAAKymE,kBAC5B+C,EAAIC,GAAMzpE,KAAK0pE,wBAAwBF,EAAIC,GAC5CzpE,KAAKZ,GAAKA,EAAIoqE,GAAMznC,EACpB/hC,KAAKgF,GAAKA,EAAIykE,GAAMxnC,EACpBjiC,KAAKyoE,mBACP,CAOA,SAAAkB,CAAUvqE,EAAG4F,GACX,gBAAAhF,KAAK,KAAL,KAAAA,KAAgBA,KAAKymE,iBAAkBrnE,EAAG4F,EAC5C,CACA,eAAA4kE,CAAgBxqE,EAAG4F,GACjB,gBAAAhF,KAAK,KAAL,KAAAA,KAAgBA,KAAKumE,eAAgBnnE,EAAG4F,GACxChF,KAAK4gC,IAAIipC,eAAe,CACtBC,MAAO,WAEX,CACA,IAAAC,CAAKP,EAAIC,GACP,MAAOO,EAAaC,GAAgBjqE,KAAKymE,iBAGzC,GAFAzmE,KAAKZ,GAAKoqE,EAAKQ,EACfhqE,KAAKgF,GAAKykE,EAAKQ,EACXjqE,KAAKmlE,SAAWnlE,KAAKZ,EAAI,GAAKY,KAAKZ,EAAI,GAAKY,KAAKgF,EAAI,GAAKhF,KAAKgF,EAAI,GAAI,CACzE,MACE5F,EAAAA,EACA4F,EAAAA,GACEhF,KAAK4gC,IAAIspC,wBACTlqE,KAAKmlE,OAAOgF,cAAcnqE,KAAMZ,EAAG4F,KACrChF,KAAKZ,GAAKqkB,KAAKi0B,MAAM13C,KAAKZ,GAC1BY,KAAKgF,GAAKye,KAAKi0B,MAAM13C,KAAKgF,GAE9B,CACA,IAAI,EACF5F,EAAC,EACD4F,GACEhF,KACJ,MAAOoqE,EAAIC,GAAM,gBAAArqE,KAAK,KAAL,KAAAA,MACjBZ,GAAKgrE,EACLplE,GAAKqlE,EACLrqE,KAAK4gC,IAAIhpB,MAAM4f,KAAO,IAAI,IAAMp4B,GAAGkrE,QAAQ,MAC3CtqE,KAAK4gC,IAAIhpB,MAAM4tB,IAAM,IAAI,IAAMxgC,GAAGslE,QAAQ,MAC1CtqE,KAAK4gC,IAAIipC,eAAe,CACtBC,MAAO,WAEX,CAmBA,iBAAArB,GACE,MAAOxC,EAAWC,GAAclmE,KAAKumE,eACrC,IAAI,EACFnnE,EAAC,EACD4F,EAAC,MACD+8B,EAAK,OACLE,GACEjiC,KAKJ,OAJA+hC,GAASkkC,EACThkC,GAAUikC,EACV9mE,GAAK6mE,EACLjhE,GAAKkhE,EACGlmE,KAAKm3D,UACX,KAAK,EACH/3D,EAAIqkB,KAAK6H,IAAI,EAAG7H,KAAKE,IAAIsiD,EAAYlkC,EAAO3iC,IAC5C4F,EAAIye,KAAK6H,IAAI,EAAG7H,KAAKE,IAAIuiD,EAAajkC,EAAQj9B,IAC9C,MACF,KAAK,GACH5F,EAAIqkB,KAAK6H,IAAI,EAAG7H,KAAKE,IAAIsiD,EAAYhkC,EAAQ7iC,IAC7C4F,EAAIye,KAAKE,IAAIuiD,EAAYziD,KAAK6H,IAAIyW,EAAO/8B,IACzC,MACF,KAAK,IACH5F,EAAIqkB,KAAKE,IAAIsiD,EAAWxiD,KAAK6H,IAAIyW,EAAO3iC,IACxC4F,EAAIye,KAAKE,IAAIuiD,EAAYziD,KAAK6H,IAAI2W,EAAQj9B,IAC1C,MACF,KAAK,IACH5F,EAAIqkB,KAAKE,IAAIsiD,EAAWxiD,KAAK6H,IAAI2W,EAAQ7iC,IACzC4F,EAAIye,KAAK6H,IAAI,EAAG7H,KAAKE,IAAIuiD,EAAankC,EAAO/8B,IAGjDhF,KAAKZ,EAAIA,GAAK6mE,EACdjmE,KAAKgF,EAAIA,GAAKkhE,EACd,MAAOkE,EAAIC,GAAM,gBAAArqE,KAAK,KAAL,KAAAA,MACjBZ,GAAKgrE,EACLplE,GAAKqlE,EACL,MAAM,MACJzyD,GACE5X,KAAK4gC,IACThpB,EAAM4f,KAAO,IAAI,IAAMp4B,GAAGkrE,QAAQ,MAClC1yD,EAAM4tB,IAAM,IAAI,IAAMxgC,GAAGslE,QAAQ,MACjCtqE,KAAKuqE,WACP,CAaA,uBAAAb,CAAwBtqE,EAAG4F,GAxpG7B,MAypGI,OAAO,oBAAiB,KAAjB,OAA8B5F,EAAG4F,EAAGhF,KAAKwoE,eAClD,CACA,uBAAAgC,CAAwBprE,EAAG4F,GA3pG7B,MA4pGI,OAAO,oBAAiB,KAAjB,OAA8B5F,EAAG4F,EAAG,IAAMhF,KAAKwoE,eACxD,CAmBA,eAAIiC,GACF,OAAOzqE,KAAKylE,WAAWa,eAAeoE,SACxC,CACA,kBAAIlC,GACF,OAAQxoE,KAAKylE,WAAWa,eAAenP,SAAWn3D,KAAKqmE,cAAgB,GACzE,CACA,oBAAII,GACF,MAAM,YACJgE,EACAlE,gBAAiBN,EAAWC,IAC1BlmE,KACE2qE,EAAc1E,EAAYwE,EAC1BG,EAAe1E,EAAauE,EAClC,OAAOne,EAAMxX,YAAYqT,oBAAsB,CAAC1kC,KAAKonD,MAAMF,GAAclnD,KAAKonD,MAAMD,IAAiB,CAACD,EAAaC,EACrH,CACA,OAAAE,CAAQ/oC,EAAOE,GACb,MAAO+nC,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAK4gC,IAAIhpB,MAAMmqB,MAAQ,IAAI,IAAMA,EAAQioC,GAAaM,QAAQ,MACzD,aAAAtqE,KAAK,KACRA,KAAK4gC,IAAIhpB,MAAMqqB,OAAS,IAAI,IAAMA,EAASgoC,GAAcK,QAAQ,OAEnE,aAAAtqE,KAAK,IAAgBgvC,UAAUs5B,OAAO,QAASvmC,EAAQ,EAAiBgpC,mBAAqB9oC,EAAS,EAAiB8oC,kBACzH,CACA,OAAAC,GACE,MAAM,MACJpzD,GACE5X,KAAK4gC,KACH,OACJqB,EAAM,MACNF,GACEnqB,EACEqzD,EAAelpC,EAAMmpC,SAAS,KAC9BC,GAAiB,aAAAnrE,KAAK,IAAoBiiC,EAAOipC,SAAS,KAChE,GAAID,GAAgBE,EAClB,OAEF,MAAOnB,EAAaC,GAAgBjqE,KAAKymE,iBACpCwE,IACHrzD,EAAMmqB,MAAQ,IAAI,IAAM6lC,WAAW7lC,GAASioC,GAAaM,QAAQ,OAE9D,aAAAtqE,KAAK,IAAqBmrE,IAC7BvzD,EAAMqqB,OAAS,IAAI,IAAM2lC,WAAW3lC,GAAUgoC,GAAcK,QAAQ,MAExE,CACA,qBAAAc,GACE,MAAO,CAAC,EAAG,EACb,CAwKA,sBAAMC,GACJ,GAAI,aAAArrE,KAAK,GACP,OAEF,MAAMsrE,EAAU,aAAAtrE,KAAK,EAAiByX,SAASE,cAAc,WAC7D2zD,EAAQ90D,UAAY,UACpB,MAAM4D,QAAY,EAAiBotD,aAAa/mE,IAAI,gCAoBpD,GAnBA6qE,EAAQp0D,YAAckD,EACtBkxD,EAAQ5qD,aAAa,aAActG,GACnCkxD,EAAQ5oC,SAAW,IACnB4oC,EAAQhwD,iBAAiB,cAAekxC,EAAe+e,eACvDD,EAAQhwD,iBAAiB,eAAeC,GAASA,EAAM00B,oBACvDq7B,EAAQhwD,iBAAiB,SAASC,IAChCA,EAAMwW,iBACN/xB,KAAKylE,WAAW+F,YAAYxrE,KAAK,GAChC,CACDyrE,SAAS,IAEXH,EAAQhwD,iBAAiB,WAAWC,IAC9BA,EAAME,SAAW6vD,GAAyB,UAAd/vD,EAAMzO,MACpCyO,EAAMwW,iBACN/xB,KAAKylE,WAAW+F,YAAYxrE,MAC9B,IAEF,gBAAAA,KAAK,KAAL,KAAAA,MACAA,KAAK4gC,IAAIjV,OAAO2/C,IACX,EAAiBP,kBAAmB,CACvC,MAAMW,EAAU,GAChB,EAAiBX,kBAAoBtnD,KAAKE,IAAI,IAAKF,KAAKonD,MAAMS,EAAQpB,wBAAwBnoC,OAAS,EAAI2pC,EAAU,MACvH,CACF,CAkDA,mBAAAC,GACE,OAAO3rE,KAAK4gC,IAAIspC,uBAClB,CACA,eAAI0B,GACF,MAAO,CACLN,QAAS,aAAAtrE,KAAK,GACd6rE,WAAY,aAAA7rE,KAAK,GAErB,CACA,eAAI4rE,EAAY,QACdN,EAAO,WACPO,IAEI,aAAA7rE,KAAK,KAAasrE,GAAW,aAAAtrE,KAAK,KAAuB6rE,IAG7D,aAAA7rE,KAAK,EAAWsrE,GAChB,aAAAtrE,KAAK,EAAqB6rE,GAC1B,gBAAA7rE,KAAK,KAAL,KAAAA,MACF,CACA,MAAAg4D,GACEh4D,KAAK4gC,IAAMnpB,SAASE,cAAc,OAClC3X,KAAK4gC,IAAIlgB,aAAa,wBAAyB,IAAM1gB,KAAKm3D,UAAY,KACtEn3D,KAAK4gC,IAAIpqB,UAAYxW,KAAKmJ,KAC1BnJ,KAAK4gC,IAAIlgB,aAAa,KAAM1gB,KAAK4V,IACjC5V,KAAK4gC,IAAIlgB,aAAa,WAAY,GAClC1gB,KAAK8oE,kBACL9oE,KAAK4gC,IAAItlB,iBAAiB,UAAW,aAAAtb,KAAK,IAC1CA,KAAK4gC,IAAItlB,iBAAiB,WAAY,aAAAtb,KAAK,IAC3C,MAAOgqE,EAAaC,GAAgBjqE,KAAKymE,iBACrCzmE,KAAKwoE,eAAiB,KAAQ,IAChCxoE,KAAK4gC,IAAIhpB,MAAMk0D,SAAW,IAAI,IAAM7B,EAAeD,GAAaM,QAAQ,MACxEtqE,KAAK4gC,IAAIhpB,MAAMm0D,UAAY,IAAI,IAAM/B,EAAcC,GAAcK,QAAQ,OAE3E,MAAOd,EAAIC,GAAMzpE,KAAKorE,wBAGtB,OAFAprE,KAAK2pE,UAAUH,EAAIC,IACnB,EAAIrE,EAAOr1B,YAAY/vC,KAAMA,KAAK4gC,IAAK,CAAC,gBACjC5gC,KAAK4gC,GACd,CACA,WAAAorC,CAAYzwD,GACV,MAAM,MACJ2sC,GACEoE,EAAMxX,YAAYkT,SACD,IAAjBzsC,EAAMkW,QAAgBlW,EAAM0wD,SAAW/jB,EACzC3sC,EAAMwW,kBAGR,aAAA/xB,KAAK,GAAkB,GACvB,gBAAAA,KAAK,KAAL,KAAAA,KAAuBub,GACzB,CAwCA,SAAAgvD,GACEvqE,KAAKmlE,QAAQ+G,gBAAgBlsE,KAC/B,CACA,qBAAAmsE,CAAsBhH,EAAQ/lE,EAAG4F,GAC/BmgE,EAAOiH,aAAapsE,MACpBA,KAAKZ,EAAIA,EACTY,KAAKgF,EAAIA,EACThF,KAAKyoE,mBACP,CACA,OAAA4D,CAAQ7C,EAAIC,GACV,MAAMvS,EAAQl3D,KAAKyqE,aACZxE,EAAWC,GAAclmE,KAAKumE,gBAC9BJ,EAAOC,GAASpmE,KAAKwmE,gBACtB8F,EAAS9C,EAAKtS,EACdqV,EAAS9C,EAAKvS,EACd93D,EAAIY,KAAKZ,EAAI6mE,EACbjhE,EAAIhF,KAAKgF,EAAIkhE,EACbnkC,EAAQ/hC,KAAK+hC,MAAQkkC,EACrBhkC,EAASjiC,KAAKiiC,OAASikC,EAC7B,OAAQlmE,KAAKm3D,UACX,KAAK,EACH,MAAO,CAAC/3D,EAAIktE,EAASnG,EAAOD,EAAalhE,EAAIunE,EAAStqC,EAASmkC,EAAOhnE,EAAIktE,EAASvqC,EAAQokC,EAAOD,EAAalhE,EAAIunE,EAASnG,GAC9H,KAAK,GACH,MAAO,CAAChnE,EAAImtE,EAASpG,EAAOD,EAAalhE,EAAIsnE,EAASlG,EAAOhnE,EAAImtE,EAAStqC,EAASkkC,EAAOD,EAAalhE,EAAIsnE,EAASvqC,EAAQqkC,GAC9H,KAAK,IACH,MAAO,CAAChnE,EAAIktE,EAASvqC,EAAQokC,EAAOD,EAAalhE,EAAIunE,EAASnG,EAAOhnE,EAAIktE,EAASnG,EAAOD,EAAalhE,EAAIunE,EAAStqC,EAASmkC,GAC9H,KAAK,IACH,MAAO,CAAChnE,EAAImtE,EAAStqC,EAASkkC,EAAOD,EAAalhE,EAAIsnE,EAASvqC,EAAQqkC,EAAOhnE,EAAImtE,EAASpG,EAAOD,EAAalhE,EAAIsnE,EAASlG,GAC9H,QACE,MAAM,IAAI36D,MAAM,oBAEtB,CACA,sBAAA+gE,CAAuB/iB,EAAMyc,GAC3B,MAAO9b,EAAIC,EAAIC,EAAIC,GAAMd,EACnB1nB,EAAQuoB,EAAKF,EACbnoB,EAASsoB,EAAKF,EACpB,OAAQrqD,KAAKm3D,UACX,KAAK,EACH,MAAO,CAAC/M,EAAI8b,EAAa3b,EAAIxoB,EAAOE,GACtC,KAAK,GACH,MAAO,CAACmoB,EAAI8b,EAAa7b,EAAIpoB,EAAQF,GACvC,KAAK,IACH,MAAO,CAACuoB,EAAI4b,EAAa7b,EAAItoB,EAAOE,GACtC,KAAK,IACH,MAAO,CAACqoB,EAAI4b,EAAa3b,EAAItoB,EAAQF,GACvC,QACE,MAAM,IAAIt2B,MAAM,oBAEtB,CACA,SAAAghE,GAAa,CACb,OAAApD,GACE,OAAO,CACT,CACA,cAAAqD,GACE,aAAA1sE,KAAK,GAAgB,EACvB,CACA,eAAA2sE,GACE,aAAA3sE,KAAK,GAAgB,EACvB,CACA,YAAA4sE,GACE,OAAO,aAAA5sE,KAAK,EACd,CACA,uBAAA6sE,GACE,OAAO,CACT,CACA,gBAAAC,GACE,OAAO9sE,KAAK4gC,MAAQ5gC,KAAK0mE,eAC3B,CACA,OAAAqG,GACE/sE,KAAK4gC,KAAKtlB,iBAAiB,UAAW,aAAAtb,KAAK,IAC3CA,KAAK4gC,KAAKtlB,iBAAiB,WAAY,aAAAtb,KAAK,GAC9C,CACA,SAAAwK,CAAUwiE,GAAe,EAAOrlE,EAAU,OACxC,EAAI2kD,EAAMpW,aAAa,iCACzB,CACA,kBAAO+2B,CAAYroD,EAAMugD,EAAQO,GAC/B,MAAMwB,EAAS,IAAIlnE,KAAKT,UAAUof,YAAY,CAC5CwmD,SACAvvD,GAAIuvD,EAAOkC,YACX3B,cAEFwB,EAAO/P,SAAWvyC,EAAKuyC,SACvB,MAAO8O,EAAWC,GAAcgB,EAAOX,gBAChCnnE,EAAG4F,EAAG+8B,EAAOE,GAAUilC,EAAOsF,uBAAuB5nD,EAAK6kC,KAAMyc,GAKvE,OAJAgB,EAAO9nE,EAAIA,EAAI6mE,EACfiB,EAAOliE,EAAIA,EAAIkhE,EACfgB,EAAOnlC,MAAQA,EAAQkkC,EACvBiB,EAAOjlC,OAASA,EAASikC,EAClBgB,CACT,CACA,MAAApgD,GACE9mB,KAAK4gC,IAAI9d,oBAAoB,UAAW,aAAA9iB,KAAK,IAC7CA,KAAK4gC,IAAI9d,oBAAoB,WAAY,aAAA9iB,KAAK,IACzCA,KAAKqpE,WACRrpE,KAAKspE,SAEHtpE,KAAKmlE,OACPnlE,KAAKmlE,OAAOr+C,OAAO9mB,MAEnBA,KAAKylE,WAAWyH,aAAaltE,MAE/B,aAAAA,KAAK,IAAgB8mB,SACrB,aAAA9mB,KAAK,EAAiB,MACtB,aAAAA,KAAK,EAAkB,KACzB,CACA,eAAImtE,GACF,OAAO,CACT,CACA,aAAAC,GACMptE,KAAKmtE,cACP,gBAAAntE,KAAK,KAAL,KAAAA,MACA,aAAAA,KAAK,GAAagvC,UAAUloB,OAAO,UAEvC,CACA,MAAAumD,GACErtE,KAAKotE,gBACLptE,KAAK4gC,KAAKoO,UAAUpnB,IAAI,iBAC1B,CACA,QAAA0lD,GACE,aAAAttE,KAAK,IAAcgvC,UAAUpnB,IAAI,UACjC5nB,KAAK4gC,KAAKoO,UAAUloB,OAAO,kBACvB9mB,KAAK4gC,KAAK2I,SAAS9xB,SAASk6B,gBAC9B3xC,KAAKylE,WAAWkD,aAAa/nC,IAAIzO,OAErC,CACA,YAAAo7C,CAAaxgE,EAAM5M,GAAQ,CAC3B,cAAAqtE,GACM,aAAAxtE,KAAK,KACP,aAAAA,KAAK,GAAemzC,QAAS,EAEjC,CACA,aAAAs6B,GACM,aAAAztE,KAAK,KACP,aAAAA,KAAK,GAAemzC,QAAS,EAEjC,CACA,eAAAu6B,GAAmB,CACnB,cAAIC,GACF,OAAO3tE,KAAK4gC,GACd,CACA,aAAIgtC,GACF,OAAO,aAAA5tE,KAAK,EACd,CACA,aAAI4tE,CAAUztE,GACZ,aAAAH,KAAK,EAAaG,GACbH,KAAKmlE,SAGNhlE,GACFH,KAAKmlE,OAAO8D,YAAYjpE,MACxBA,KAAKmlE,OAAO0I,gBAAgB7tE,OAE5BA,KAAKmlE,OAAO0I,gBAAgB,MAEhC,CACA,cAAAC,CAAe/rC,EAAOE,GACpB,aAAAjiC,KAAK,GAAmB,GACxB,MAAM+tE,EAAchsC,EAAQE,GACtB,MACJrqB,GACE5X,KAAK4gC,IACThpB,EAAMm2D,YAAcA,EACpBn2D,EAAMqqB,OAAS,MACjB,CACA,mBAAW+rC,GACT,OAAO,EACT,GA/2BA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cAKA,cACA,cA+KA,gBAAU,UAAEjsC,EAAOE,GAAS7iC,EAAG4F,IAC5B5F,EAAG4F,GAAKhF,KAAK0pE,wBAAwBtqE,EAAG4F,GACzChF,KAAKZ,GAAKA,EAAI2iC,EACd/hC,KAAKgF,GAAKA,EAAIi9B,EACdjiC,KAAKyoE,mBACP,EAqCA,gBAAmB,WACjB,MAAOuB,EAAaC,GAAgBjqE,KAAKymE,kBACnC,iBACJiB,GACE,EACEtoE,EAAIsoE,EAAmBsC,EACvBhlE,EAAI0iE,EAAmBuC,EAC7B,OAAQjqE,KAAKm3D,UACX,KAAK,GACH,MAAO,EAAE/3D,EAAG4F,GACd,KAAK,IACH,MAAO,CAAC5F,EAAG4F,GACb,KAAK,IACH,MAAO,CAAC5F,GAAI4F,GACd,QACE,MAAO,EAAE5F,GAAI4F,GAEnB,EA2CO,gBAAY,SAAC5F,EAAG4F,EAAGipE,GACxB,OAAQA,GACN,KAAK,GACH,MAAO,CAACjpE,GAAI5F,GACd,KAAK,IACH,MAAO,EAAEA,GAAI4F,GACf,KAAK,IACH,MAAO,EAAEA,EAAG5F,GACd,QACE,MAAO,CAACA,EAAG4F,GAEjB,EAOA,gBAAkB,SAACmyD,GACjB,OAAQA,GACN,KAAK,GACH,CACE,MAAO8O,EAAWC,GAAclmE,KAAKumE,eACrC,MAAO,CAAC,GAAIN,EAAYC,EAAYA,EAAaD,EAAW,EAC9D,CACF,KAAK,IACH,MAAO,EAAE,EAAG,EAAG,GAAI,GACrB,KAAK,IACH,CACE,MAAOA,EAAWC,GAAclmE,KAAKumE,eACrC,MAAO,CAAC,EAAGN,EAAYC,GAAaA,EAAaD,EAAW,EAC9D,CACF,QACE,MAAO,CAAC,EAAG,EAAG,EAAG,GAEvB,EAgDA,gBAAe,WACb,GAAI,aAAAjmE,KAAK,GACP,OAEF,aAAAA,KAAK,EAAeyX,SAASE,cAAc,QAC3C,aAAA3X,KAAK,GAAagvC,UAAUpnB,IAAI,YAChC,MAAMyY,EAAU,CAAC,UAAW,WAAY,cAAe,cAClDrgC,KAAK4lE,sBACRvlC,EAAQz+B,KAAK,YAAa,cAAe,eAAgB,cAE3D,UAAWuH,KAAQk3B,EAAS,CAC1B,MAAMO,EAAMnpB,SAASE,cAAc,OACnC,aAAA3X,KAAK,GAAa2rB,OAAOiV,GACzBA,EAAIoO,UAAUpnB,IAAI,UAAWze,GAC7By3B,EAAItlB,iBAAiB,cAAe,gBAAAtb,KAAK,KAAoBoiB,KAAKpiB,KAAMmJ,IACxEy3B,EAAItlB,iBAAiB,cAAekxC,EAAe+e,cACrD,CACAvrE,KAAK4gC,IAAIstC,QAAQ,aAAAluE,KAAK,GACxB,EACA,gBAAmB,SAACmJ,EAAMoS,GACxBA,EAAMwW,iBACN,MAAM,MACJm2B,GACEoE,EAAMxX,YAAYkT,SACtB,GAAqB,IAAjBzsC,EAAMkW,QAAgBlW,EAAM0wD,SAAW/jB,EACzC,OAEF,MAAMimB,EAA0B,gBAAAnuE,KAAK,KAAoBoiB,KAAKpiB,KAAMmJ,GAC9DilE,EAAiBpuE,KAAKqoE,aAC5BroE,KAAKqoE,cAAe,EACpB,MAAMgG,EAAqB,CACzBC,SAAS,EACT7C,SAAS,GAEXzsE,OAAOsc,iBAAiB,cAAe6yD,EAAyBE,GAChE,MAAME,EAASvuE,KAAKZ,EACdovE,EAASxuE,KAAKgF,EACdypE,EAAazuE,KAAK+hC,MAClB2sC,EAAc1uE,KAAKiiC,OACnB0sC,EAAoB3uE,KAAKmlE,OAAOvkC,IAAIhpB,MAAMg3D,OAC1CC,EAAc7uE,KAAK4gC,IAAIhpB,MAAMg3D,OACnC5uE,KAAK4gC,IAAIhpB,MAAMg3D,OAAS5uE,KAAKmlE,OAAOvkC,IAAIhpB,MAAMg3D,OAAS5vE,OAAO8iC,iBAAiBvmB,EAAME,QAAQmzD,OAC7F,MAAME,EAAoB,KACxB9uE,KAAKqoE,aAAe+F,EACpBpvE,OAAO8jB,oBAAoB,YAAagsD,GACxC9vE,OAAO8jB,oBAAoB,OAAQgsD,GACnC9vE,OAAO8jB,oBAAoB,cAAeqrD,EAAyBE,GACnEruE,KAAKmlE,OAAOvkC,IAAIhpB,MAAMg3D,OAASD,EAC/B3uE,KAAK4gC,IAAIhpB,MAAMg3D,OAASC,EACxB,MAAME,EAAO/uE,KAAKZ,EACZ4vE,EAAOhvE,KAAKgF,EACZiqE,EAAWjvE,KAAK+hC,MAChBmtC,EAAYlvE,KAAKiiC,OACnB8sC,IAASR,GAAUS,IAASR,GAAUS,IAAaR,GAAcS,IAAcR,GAGnF1uE,KAAK0oE,YAAY,CACfyG,IAAK,KACHnvE,KAAK+hC,MAAQktC,EACbjvE,KAAKiiC,OAASitC,EACdlvE,KAAKZ,EAAI2vE,EACT/uE,KAAKgF,EAAIgqE,EACT,MAAOhF,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAK8qE,QAAQd,EAAciF,EAAUhF,EAAeiF,GACpDlvE,KAAKyoE,mBAAmB,EAE1B2G,KAAM,KACJpvE,KAAK+hC,MAAQ0sC,EACbzuE,KAAKiiC,OAASysC,EACd1uE,KAAKZ,EAAImvE,EACTvuE,KAAKgF,EAAIwpE,EACT,MAAOxE,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAK8qE,QAAQd,EAAcyE,EAAYxE,EAAeyE,GACtD1uE,KAAKyoE,mBAAmB,EAE1B4G,UAAU,GACV,EAEJrwE,OAAOsc,iBAAiB,YAAawzD,GACrC9vE,OAAOsc,iBAAiB,OAAQwzD,EAClC,EACA,gBAAmB,SAAC3lE,EAAMoS,GACxB,MAAOyuD,EAAaC,GAAgBjqE,KAAKymE,iBACnC8H,EAASvuE,KAAKZ,EACdovE,EAASxuE,KAAKgF,EACdypE,EAAazuE,KAAK+hC,MAClB2sC,EAAc1uE,KAAKiiC,OACnBqtC,EAAW,EAAiBtB,SAAWhE,EACvCuF,EAAY,EAAiBvB,SAAW/D,EACxCY,EAAQzrE,GAAKqkB,KAAKonD,MAAU,IAAJzrE,GAAa,IACrCowE,EAAiB,gBAAAxvE,KAAK,KAAL,KAAAA,KAAwBA,KAAKm3D,UAC9CsY,EAAS,CAACrwE,EAAG4F,IAAM,CAACwqE,EAAe,GAAKpwE,EAAIowE,EAAe,GAAKxqE,EAAGwqE,EAAe,GAAKpwE,EAAIowE,EAAe,GAAKxqE,GAC/G0qE,EAAoB,gBAAA1vE,KAAK,KAAL,KAAAA,KAAwB,IAAMA,KAAKm3D,UAE7D,IAAIwY,EACAC,EACAC,GAAa,EACbC,GAAe,EACnB,OAAQ3mE,GACN,IAAK,UACH0mE,GAAa,EACbF,EAAW,CAAChnC,EAAGC,IAAM,CAAC,EAAG,GACzBgnC,EAAc,CAACjnC,EAAGC,IAAM,CAACD,EAAGC,GAC5B,MACF,IAAK,YACH+mC,EAAW,CAAChnC,EAAGC,IAAM,CAACD,EAAI,EAAG,GAC7BinC,EAAc,CAACjnC,EAAGC,IAAM,CAACD,EAAI,EAAGC,GAChC,MACF,IAAK,WACHinC,GAAa,EACbF,EAAW,CAAChnC,EAAGC,IAAM,CAACD,EAAG,GACzBinC,EAAc,CAACjnC,EAAGC,IAAM,CAAC,EAAGA,GAC5B,MACF,IAAK,cACHknC,GAAe,EACfH,EAAW,CAAChnC,EAAGC,IAAM,CAACD,EAAGC,EAAI,GAC7BgnC,EAAc,CAACjnC,EAAGC,IAAM,CAAC,EAAGA,EAAI,GAChC,MACF,IAAK,cACHinC,GAAa,EACbF,EAAW,CAAChnC,EAAGC,IAAM,CAACD,EAAGC,GACzBgnC,EAAc,CAACjnC,EAAGC,IAAM,CAAC,EAAG,GAC5B,MACF,IAAK,eACH+mC,EAAW,CAAChnC,EAAGC,IAAM,CAACD,EAAI,EAAGC,GAC7BgnC,EAAc,CAACjnC,EAAGC,IAAM,CAACD,EAAI,EAAG,GAChC,MACF,IAAK,aACHknC,GAAa,EACbF,EAAW,CAAChnC,EAAGC,IAAM,CAAC,EAAGA,GACzBgnC,EAAc,CAACjnC,EAAGC,IAAM,CAACD,EAAG,GAC5B,MACF,IAAK,aACHmnC,GAAe,EACfH,EAAW,CAAChnC,EAAGC,IAAM,CAAC,EAAGA,EAAI,GAC7BgnC,EAAc,CAACjnC,EAAGC,IAAM,CAACD,EAAGC,EAAI,GAGpC,MAAMmnC,EAAQJ,EAASlB,EAAYC,GAC7BsB,EAAgBJ,EAAYnB,EAAYC,GAC9C,IAAIuB,EAAsBR,KAAUO,GACpC,MAAME,EAAYrF,EAAM0D,EAAS0B,EAAoB,IAC/CE,EAAYtF,EAAM2D,EAASyB,EAAoB,IACrD,IAAIG,EAAS,EACTC,EAAS,GACRC,EAAQC,GAAUvwE,KAAK0pE,wBAAwBnuD,EAAMi1D,UAAWj1D,EAAMk1D,WApDzD,IAACrxE,EAAG4F,EAsDtB,IADCsrE,EAAQC,IArDUnxE,EAqDUkxE,EAAStG,EArDhBhlE,EAqD6BurE,EAAStG,EArDhC,CAACyF,EAAkB,GAAKtwE,EAAIswE,EAAkB,GAAK1qE,EAAG0qE,EAAkB,GAAKtwE,EAAIswE,EAAkB,GAAK1qE,IAsDhI6qE,EAAY,CACd,MAAMa,EAAUjtD,KAAKktD,MAAMlC,EAAYC,GACvC0B,EAASC,EAAS5sD,KAAK6H,IAAI7H,KAAKE,IAAIF,KAAKktD,MAAMX,EAAc,GAAKD,EAAM,GAAKO,EAAQN,EAAc,GAAKD,EAAM,GAAKQ,GAAUG,EAAS,EAAIjC,EAAY,EAAIC,GAAcY,EAAWb,EAAYc,EAAYb,EAC7M,MAAWoB,EACTM,EAAS3sD,KAAK6H,IAAIgkD,EAAU7rD,KAAKE,IAAI,EAAGF,KAAKunC,IAAIglB,EAAc,GAAKD,EAAM,GAAKO,KAAY7B,EAE3F4B,EAAS5sD,KAAK6H,IAAIikD,EAAW9rD,KAAKE,IAAI,EAAGF,KAAKunC,IAAIglB,EAAc,GAAKD,EAAM,GAAKQ,KAAY7B,EAE9F,MAAMO,EAAWpE,EAAM4D,EAAa2B,GAC9BlB,EAAYrE,EAAM6D,EAAc2B,GACtCJ,EAAsBR,KAAUG,EAAYX,EAAUC,IACtD,MAAMH,EAAOmB,EAAYD,EAAoB,GACvCjB,EAAOmB,EAAYF,EAAoB,GAC7CjwE,KAAK+hC,MAAQktC,EACbjvE,KAAKiiC,OAASitC,EACdlvE,KAAKZ,EAAI2vE,EACT/uE,KAAKgF,EAAIgqE,EACThvE,KAAK8qE,QAAQd,EAAciF,EAAUhF,EAAeiF,GACpDlvE,KAAKyoE,mBACP,EAgCM,gBAAsB,iBAC1B,MAAMh3C,EAAS,aAAAzxB,KAAK,GACpB,IAAKyxB,EACH,OAEF,IAAK,aAAAzxB,KAAK,KAAa,aAAAA,KAAK,GAG1B,OAFAyxB,EAAOud,UAAUloB,OAAO,aACxB,aAAA9mB,KAAK,IAAiB8mB,SAGxB,EAAiB0gD,aAAa/mE,IAAI,qCAAqCoE,MAAKuV,IAC1EqX,EAAO/Q,aAAa,aAActG,EAAI,IAExC,IAAIw2D,EAAU,aAAA5wE,KAAK,GACnB,IAAK4wE,EAAS,CACZ,aAAA5wE,KAAK,EAAkB4wE,EAAUn5D,SAASE,cAAc,SACxDi5D,EAAQp6D,UAAY,UACpBo6D,EAAQlwD,aAAa,OAAQ,WAC7B,MAAM9K,EAAKg7D,EAAQh7D,GAAK,oBAAoB5V,KAAK4V,KACjD6b,EAAO/Q,aAAa,mBAAoB9K,GACxC,MAAMi7D,EAAwB,IAC9Bp/C,EAAOnW,iBAAiB,cAAc,KACpC,aAAAtb,KAAK,EAAyBka,YAAW,KACvC,aAAAla,KAAK,EAAyB,MAC9B,aAAAA,KAAK,GAAgBgvC,UAAUpnB,IAAI,QACnC5nB,KAAKylE,WAAWqL,UAAUhhD,SAAS,kBAAmB,CACpDva,OAAQvV,KACR4U,QAAS,CACP7H,KAAM,UACNgkE,QAAS/wE,KAAK4mE,WACdhiD,KAAM,CACJrU,OAAQ,sBAGZ,GACDsgE,GAAqB,IAE1Bp/C,EAAOnW,iBAAiB,cAAc,KACpCrB,aAAa,aAAAja,KAAK,IAClB,aAAAA,KAAK,EAAyB,MAC9B,aAAAA,KAAK,IAAiBgvC,UAAUloB,OAAO,OAAO,GAElD,CACA2K,EAAOud,UAAUpnB,IAAI,QACrBgpD,EAAQz5D,UAAY,aAAAnX,KAAK,SAA2B,EAAiBwnE,aAAa/mE,IAAI,sCAAwC,aAAAT,KAAK,GAC9H4wE,EAAQ95D,YACX2a,EAAO9F,OAAOilD,EAElB,EAmDA,gBAAiB,SAACr1D,GAChB,IAAKvb,KAAKqoE,aACR,OAEF,MAAM2I,EAAahxE,KAAKylE,WAAWuL,WAAWhxE,MAE9C,IAAIquE,EAAoB4C,EADxBjxE,KAAKylE,WAAWyL,mBAEZF,IACF3C,EAAqB,CACnBC,SAAS,EACT7C,SAAS,GAEXwF,EAAsBvsE,IACpB,MAAO8kE,EAAIC,GAAMzpE,KAAK0pE,wBAAwBhlE,EAAE8rE,UAAW9rE,EAAE+rE,WAC7DzwE,KAAKylE,WAAW0L,oBAAoB3H,EAAIC,EAAG,EAE7CzqE,OAAOsc,iBAAiB,cAAe21D,EAAqB5C,IAE9D,MAAMS,EAAoB,KAOxB,GANA9vE,OAAO8jB,oBAAoB,YAAagsD,GACxC9vE,OAAO8jB,oBAAoB,OAAQgsD,GAC/BkC,GACFhyE,OAAO8jB,oBAAoB,cAAemuD,EAAqB5C,GAEjE,aAAAruE,KAAK,GAAkB,IAClBA,KAAKylE,WAAW2L,iBAAkB,CACrC,MAAM,MACJlpB,GACEoE,EAAMxX,YAAYkT,SAClBzsC,EAAM0wD,UAAY/jB,GAAS3sC,EAAM81D,UAAY91D,EAAM+1D,SAAWppB,EAChEloD,KAAKmlE,OAAOoM,eAAevxE,MAE3BA,KAAKmlE,OAAO8D,YAAYjpE,KAE5B,GAEFhB,OAAOsc,iBAAiB,YAAawzD,GACrC9vE,OAAOsc,iBAAiB,OAAQwzD,EAClC,EAlaA,aAvSI,EAuSG,GApRP,cAnBI,EAmBG,oBAAoB,GAC3B,cApBI,EAoBG,gBAAgB,IAAI1J,EAAOoM,cAClC,cArBI,EAqBG,UAAU,GACjB,cAtBI,EAsBG,oBAAoB,GAtB7B,IAAMjN,EAAN,EAk3BA1lE,EAAQ0lE,iBAAmBA,EAC3B,MAAM6C,UAAmB7C,EACvB,WAAA5lD,CAAYtK,GACVozC,MAAMpzC,GACNrU,KAAK2lE,oBAAsBtxD,EAAOsxD,oBAClC3lE,KAAK2mE,SAAU,CACjB,CACA,SAAAn8D,GACE,MAAO,CACLoL,GAAI5V,KAAK2lE,oBACTgB,SAAS,EACTzQ,UAAWl2D,KAAKk2D,UAEpB,EACF,EAIO,CAACxiB,EAAyB70C,EAAS0sD,KAzuH1C,QAAAnrC,EAAA,+JA6uHA9gB,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ4yE,gBAAkB5yE,EAAQ6yE,eAAiB7yE,EAAQ2yE,aAAe3yE,EAAQ8yE,+BAA4B,EAC9G9yE,EAAQkxC,WAIR,SAAoBnoC,EAAKwO,EAASw7D,GAChC,UAAWzoE,KAAQyoE,EACjBx7D,EAAQkF,iBAAiBnS,EAAMvB,EAAIuB,GAAMiZ,KAAKxa,GAElD,EAPA/I,EAAQgzE,aAQR,SAAsBC,GACpB,OAAOruD,KAAKonD,MAAMpnD,KAAKE,IAAI,IAAKF,KAAK6H,IAAI,EAAG,IAAMwmD,KAAWpnE,SAAS,IAAIssC,SAAS,EAAG,IACxF,EATA,IAAIsV,GAAQf,EAAoB,GAC5BiB,GAAiBjB,EAAoB,GASzC,MAAMwmB,GAAN,cACE,oBAAM,GACN,KAAAC,GACE,MAAO,GAAG1lB,GAAM3W,yBAAyB,iBAAA31C,KAAK,GAAL,KAC3C,EAHA,cAKF,MAAM,GAAN,oBAgBE,kBAAM,GAfN,uBAAcssD,GAAMjV,YACpB,kBAAAj3B,EAAM,GACN,oBAAS,MACT,8BAAW6xD,GACT,MAEM94C,EADS,IAAI4uB,gBAAgB,EAAG,GACnBmqB,WAAW,MACxBC,EAAQ,IAAIC,MAClBD,EAAMvxE,IAJM,uKAKZ,MAAMyqD,EAAU8mB,EAAM34B,SAAS30C,MAAK,KAClCs0B,EAAIk5C,UAAUF,EAAO,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAC8B,IAAjE,IAAIvqB,YAAYzuB,EAAIm5C,aAAa,EAAG,EAAG,EAAG,GAAG1tD,KAAKmG,QAAQ,MAEnE,SAAWuhC,GAAMtT,QAAQh5C,KAAM,sBAAuBqrD,EACxD,CA6DA,iBAAMknB,CAAYlwE,GAChB,MAAM,aACJmwE,EAAY,KACZrpE,EAAI,KACJ4jB,EAAI,KACJhgB,GACE1K,EACJ,OAAO,gBAAArC,KAAK,KAAL,KAAAA,KAAU,GAAGwyE,KAAgBrpE,KAAQ4jB,KAAQhgB,IAAQ1K,EAC9D,CACA,gBAAMowE,CAAWvlE,GACf,OAAO,gBAAAlN,KAAK,KAAL,KAAAA,KAAUkN,EAAKA,EACxB,CACA,eAAMwlE,CAAU98D,GACd,aAAA5V,KAAK,IAAL,aAAAA,KAAK,EAAW,IAAIs4C,KACpB,MAAM1zB,EAAO,aAAA5kB,KAAK,GAAOS,IAAImV,GAC7B,OAAKgP,EAGDA,EAAKk9C,QACPl9C,EAAK+tD,YAAc,EACZ/tD,GAELA,EAAKviB,KACArC,KAAKuyE,YAAY3tD,EAAKviB,MAExBrC,KAAKyyE,WAAW7tD,EAAK1X,KATnB,IAUX,CACA,SAAA0lE,CAAUh9D,GACR,MAAMgP,EAAO,aAAA5kB,KAAK,GAAOS,IAAImV,GAC7B,OAAKgP,GAAMiuD,MAGJjuD,EAAKkuD,OAFH,IAGX,CACA,QAAAC,CAASn9D,GACP,aAAA5V,KAAK,IAAL,aAAAA,KAAK,EAAW,IAAIs4C,KACpB,MAAM1zB,EAAO,aAAA5kB,KAAK,GAAOS,IAAImV,GACxBgP,IAGLA,EAAK+tD,YAAc,EACK,IAApB/tD,EAAK+tD,aAGT/tD,EAAKk9C,OAAS,MAChB,CACA,SAAAkR,CAAUp9D,GACR,OAAOA,EAAG2gC,WAAW,SAAS,aAAAv2C,KAAK,MACrC,GA3HA,cACAogB,EAAA,YACA,cAaM,gBAAI,eAACtT,EAAKmmE,GACd,aAAAjzE,KAAK,IAAL,aAAAA,KAAK,EAAW,IAAIs4C,KACpB,IAAI1zB,EAAO,aAAA5kB,KAAK,GAAOS,IAAIqM,GAC3B,GAAa,OAAT8X,EACF,OAAO,KAET,GAAIA,GAAMk9C,OAER,OADAl9C,EAAK+tD,YAAc,EACZ/tD,EAET,IAOE,IAAIutD,EACJ,GAPAvtD,IAAS,CACPk9C,OAAQ,KACRlsD,GAAI,SAAS,aAAA5V,KAAK,MAAW,iBAAAA,KAAKogB,GAAL,MAC7BuyD,WAAY,EACZE,OAAO,GAGc,iBAAZI,EAAsB,CAC/BruD,EAAK1X,IAAM+lE,EACX,MAAM52D,QAAiB7E,MAAMy7D,GAC7B,IAAK52D,EAAS62D,GACZ,MAAM,IAAIznE,MAAM4Q,EAAS82D,YAE3BhB,QAAc91D,EAAS+S,MACzB,MACE+iD,EAAQvtD,EAAKviB,KAAO4wE,EAEtB,GAAmB,kBAAfd,EAAMplE,KAA0B,CAClC,MAAMqmE,EAA+B,GAAanB,oBAC5C/kD,EAAa,IAAIC,WACjBkmD,EAAe,IAAIjB,MACnBkB,EAAe,IAAIjvE,SAAQ,CAACD,EAASE,KACzC+uE,EAAaxyD,OAAS,KACpB+D,EAAKk9C,OAASuR,EACdzuD,EAAKiuD,OAAQ,EACbzuE,GAAS,EAEX8oB,EAAWrM,OAAS7S,UAClB,MAAMd,EAAM0X,EAAKkuD,OAAS5lD,EAAWrpB,OACrCwvE,EAAazyE,UAAawyE,EAAgC,GAAGlmE,uCAA2CA,CAAG,EAE7GmmE,EAAa55D,QAAUyT,EAAWzT,QAAUnV,CAAM,IAEpD4oB,EAAWqmD,cAAcpB,SACnBmB,CACR,MACE1uD,EAAKk9C,aAAe0R,kBAAkBrB,GAExCvtD,EAAK+tD,WAAa,CACpB,CAAE,MAAOjuE,GACPqD,QAAQiC,MAAMtF,GACdkgB,EAAO,IACT,CAKA,OAJA,aAAA5kB,KAAK,GAAO8qB,IAAIhe,EAAK8X,GACjBA,GACF,aAAA5kB,KAAK,GAAO8qB,IAAIlG,EAAKhP,GAAIgP,GAEpBA,CACT,EA3EF,IAAM6uD,GAAN,GA8HA,MAAM/B,GAKJ,WAAA/yD,CAAY+0D,EAAU,KAJtB,oBAAY,IACZ,qBAAU,GACV,4BACA,qBAAa,GAEX,aAAA1zE,KAAK,EAAW0zE,EAClB,CACA,GAAA9rD,EAAI,IACFunD,EAAG,KACHC,EAAI,SACJC,EAAQ,KACRtiE,EAAO6iD,IAAG,oBACV+jB,GAAsB,EAAK,SAC3BC,GAAW,IAKX,GAHIvE,GACFF,IAEE,aAAAnvE,KAAK,GACP,OAEF,MAAMoiD,EAAO,CACX+sB,MACAC,OACAriE,QAEF,IAAwB,IAApB,aAAA/M,KAAK,GAMP,OALI,aAAAA,KAAK,GAAU6F,OAAS,IAC1B,aAAA7F,KAAK,GAAU6F,OAAS,GAE1B,aAAA7F,KAAK,EAAY,QACjB,aAAAA,KAAK,GAAU4B,KAAKwgD,GAGtB,GAAIuxB,GAAuB,aAAA3zE,KAAK,GAAU,aAAAA,KAAK,IAAW+M,OAASA,EAKjE,OAJI6mE,IACFxxB,EAAKgtB,KAAO,aAAApvE,KAAK,GAAU,aAAAA,KAAK,IAAWovE,WAE7C,aAAApvE,KAAK,GAAU,aAAAA,KAAK,IAAaoiD,GAGnC,MAAM39C,EAAO,aAAAzE,KAAK,GAAY,EAC1ByE,IAAS,aAAAzE,KAAK,GAChB,aAAAA,KAAK,GAAUoI,OAAO,EAAG,IAEzB,aAAApI,KAAK,EAAYyE,GACbA,EAAO,aAAAzE,KAAK,GAAU6F,QACxB,aAAA7F,KAAK,GAAUoI,OAAO3D,IAG1B,aAAAzE,KAAK,GAAU4B,KAAKwgD,EACtB,CACA,IAAAgtB,IAC0B,IAApB,aAAApvE,KAAK,KAGT,aAAAA,KAAK,GAAU,GACf,aAAAA,KAAK,GAAU,aAAAA,KAAK,IAAWovE,OAC/B,aAAApvE,KAAK,GAAU,GACf,aAAAA,KAAK,EAAL,aAAAA,KAAK,GAAa,GACpB,CACA,IAAA6zE,GACM,aAAA7zE,KAAK,GAAY,aAAAA,KAAK,GAAU6F,OAAS,IAC3C,aAAA7F,KAAK,EAAL,aAAAA,KAAK,GAAa,GAClB,aAAAA,KAAK,GAAU,GACf,aAAAA,KAAK,GAAU,aAAAA,KAAK,IAAWmvE,MAC/B,aAAAnvE,KAAK,GAAU,GAEnB,CACA,kBAAA8zE,GACE,OAA2B,IAApB,aAAA9zE,KAAK,EACd,CACA,kBAAA+zE,GACE,OAAO,aAAA/zE,KAAK,GAAY,aAAAA,KAAK,GAAU6F,OAAS,CAClD,CACA,OAAAumB,GACE,aAAApsB,KAAK,EAAY,KACnB,EA7EA,cACA,cACA,cACA,cA4EFnB,EAAQ6yE,eAAiBA,GACzB,MAAMD,GACJ,WAAA9yD,CAAYq1D,GA0BZ,qBAzBEh0E,KAAK+qB,OAAS,GACd/qB,KAAKg0E,UAAY,IAAI17B,IACrBt4C,KAAK+3B,QAAU,IAAI6hC,IACnB,MAAM,MACJ1R,GACEoE,GAAMxX,YAAYkT,SACtB,UAAY5nD,EAAM0O,EAAUqP,EAAU,CAAC,KAAM61D,EAC3C,UAAWlnE,KAAO1M,EAAM,CACtB,MAAM6zE,EAAWnnE,EAAIypC,WAAW,QAC5B2R,GAAS+rB,GACXj0E,KAAKg0E,UAAUlpD,IAAIhe,EAAIG,MAAM,GAAI,CAC/B6B,WACAqP,YAEFne,KAAK+3B,QAAQnQ,IAAI9a,EAAI5L,MAAM,KAAKgzE,IAAI,KAC1BhsB,GAAU+rB,IACpBj0E,KAAKg0E,UAAUlpD,IAAIhe,EAAK,CACtBgC,WACAqP,YAEFne,KAAK+3B,QAAQnQ,IAAI9a,EAAI5L,MAAM,KAAKgzE,IAAI,IAExC,CAEJ,CAmBA,IAAAlyE,CAAK9C,EAAMqc,GACT,IAAKvb,KAAK+3B,QAAQ6lC,IAAIriD,EAAMzO,KAC1B,OAEF,MAAMzB,EAAOrL,KAAKg0E,UAAUvzE,IAAI,gBAAAT,KAAK,KAAL,KAAAA,KAAgBub,IAChD,IAAKlQ,EACH,OAEF,MAAM,SACJyD,EACAqP,SAAS,QACP6P,GAAU,EAAK,KACf/iB,EAAO,GAAE,QACTkpE,EAAU,OAEV9oE,EACA8oE,IAAYA,EAAQj1E,EAAMqc,KAG9BzM,EAASsT,KAAKljB,KAAS+L,EAAvB6D,GACKkf,IACHzS,EAAM00B,kBACN10B,EAAMwW,kBAEV,EA1CA,gBAAU,SAACxW,GACLA,EAAM64D,QACRp0E,KAAK+qB,OAAOnpB,KAAK,OAEf2Z,EAAM0wD,SACRjsE,KAAK+qB,OAAOnpB,KAAK,QAEf2Z,EAAM+1D,SACRtxE,KAAK+qB,OAAOnpB,KAAK,QAEf2Z,EAAM81D,UACRrxE,KAAK+qB,OAAOnpB,KAAK,SAEnB5B,KAAK+qB,OAAOnpB,KAAK2Z,EAAMzO,KACvB,MAAMkd,EAAMhqB,KAAK+qB,OAAOte,KAAK,KAE7B,OADAzM,KAAK+qB,OAAOllB,OAAS,EACdmkB,CACT,EA2BFnrB,EAAQ4yE,gBAAkBA,GAC1B,MAAM,GAAN,MAAM,EAEJ,WAAI4C,GACF,MAAMC,EAAS,IAAIh8B,IAAI,CAAC,CAAC,aAAc,MAAO,CAAC,SAAU,QAEzD,OADA,EAAIkU,GAAe+nB,gBAAgBD,IACnC,EAAWhoB,GAAMtT,QAAQh5C,KAAM,UAAWs0E,EAC5C,CACA,OAAAE,CAAQC,GACN,MAAMC,GAAM,EAAIloB,GAAemoB,QAAQF,GACvC,IAAKz1E,OAAO41E,WAAW,2BAA2BC,QAChD,OAAOH,EAET,UAAYvrE,EAAM2rE,KAAQ90E,KAAKq0E,QAC7B,GAAIS,EAAI38C,OAAM,CAAC/4B,EAAGyJ,IAAMzJ,IAAMs1E,EAAI7rE,KAChC,OAAO,EAAaksE,eAAet0E,IAAI0I,GAG3C,OAAOurE,CACT,CACA,UAAA1N,CAAW79D,GACT,MAAMurE,EAAM10E,KAAKq0E,QAAQ5zE,IAAI0I,GAC7B,OAAKurE,EAGEpoB,GAAMv2C,KAAKwyC,gBAAgBmsB,GAFzBvrE,CAGX,GAxBA,cADI,GACG,iBAAiB,IAAImvC,IAAI,CAAC,CAAC,aAAc,CAAC,EAAG,EAAG,IAAK,CAAC,SAAU,CAAC,IAAK,IAAK,SADpF,IAAMk5B,GAAN,GA2BA3yE,EAAQ2yE,aAAeA,GACvB,MAAM,GAAN,MAAM,EA+EJ,WAAA7yD,CAAYklB,EAAWmxC,EAAQC,EAAgBC,EAAUC,EAAa5c,GA+FtE,qBAIA,qBAgCA,qBAKA,sBAKA,sBAKA,sBAsGA,sBASA,sBA6HA,sBAQA,sBA0CA,sBAoFA,sBAuCA,sBAznBA,oBAAgB,MAChB,oBAAc,IAAIjgB,KAClB,oBAAa,IAAIA,KACjB,oBAAkB,MAClB,oBAAqB,MACrB,oBAAkB,IAAIo5B,IACtB,oBAAoB,GACpB,oBAAgC,IAAI9X,KACpC,oBAAmB,MACnB,oBAAe,MACf,oBAAoB,IAAIA,KACxB,oBAAiB,MACjB,oBAAa,IAAImY,IACjB,qBAAa,GACb,qBAAa,GACb,oBAAqB,MACrB,oBAAQzlB,GAAM5W,qBAAqBmF,MACnC,oBAAmB,IAAI+e,KACvB,oBAAc,MACd,oBAAa55D,KAAKo1E,KAAKhzD,KAAKpiB,OAC5B,oBAAcA,KAAKmyB,MAAM/P,KAAKpiB,OAC9B,oBAAaA,KAAKq1E,KAAKjzD,KAAKpiB,OAC5B,oBAAYA,KAAKs1E,IAAIlzD,KAAKpiB,OAC1B,oBAAcA,KAAKmoE,MAAM/lD,KAAKpiB,OAC9B,oBAAgBA,KAAKu1E,QAAQnzD,KAAKpiB,OAClC,oBAAwBA,KAAKw1E,gBAAgBpzD,KAAKpiB,OAClD,oBAAuBA,KAAKy1E,eAAerzD,KAAKpiB,OAChD,oBAAwBA,KAAK01E,gBAAgBtzD,KAAKpiB,OAClD,oBAA2BA,KAAK21E,mBAAmBvzD,KAAKpiB,OACxD,oBAAkB,CAChB4tE,WAAW,EACXvE,SAAS,EACTyK,oBAAoB,EACpBC,oBAAoB,EACpB6B,mBAAmB,IAErB,oBAAe,CAAC,EAAG,IACnB,oBAAwB,MACxB,oBAAa,MACb,oBAAU,MAwCR,aAAA51E,KAAK,EAAa6jC,GAClB,aAAA7jC,KAAK,EAAUg1E,GACf,aAAAh1E,KAAK,EAAkBi1E,GACvBj1E,KAAK8wE,UAAYoE,EACjBl1E,KAAK8wE,UAAU+E,IAAI,gBAAiB,aAAA71E,KAAK,IACzCA,KAAK8wE,UAAU+E,IAAI,eAAgB,aAAA71E,KAAK,IACxCA,KAAK8wE,UAAU+E,IAAI,gBAAiB,aAAA71E,KAAK,IACzCA,KAAK8wE,UAAU+E,IAAI,mBAAoB,aAAA71E,KAAK,IAC5C,aAAAA,KAAK,EAAqBm1E,EAAYphB,mBACtC,aAAA/zD,KAAK,EAAiBm1E,EAAYjlB,eAClC,aAAAlwD,KAAK,EAAcu4D,GACnBv4D,KAAKsmE,eAAiB,CACpBoE,UAAWle,GAAespB,cAAcC,iBACxC5e,SAAU,EAEd,CApDA,2BAAW6e,GACT,MAAMC,EAAQ,EAA0B12E,UAClC22E,EAAeh3E,IACnB,MAAM,cACJyyC,GACEl6B,SACJ,OAAOk6B,GAAiB,aAAAzyC,EAAK,GAAWqqC,SAASoI,IAAkBzyC,EAAKi3E,uBAAuB,EAE3FC,EAAQp2E,KAAKq2E,gBACbC,EAAMt2E,KAAKu2E,cACjB,SAAWjqB,GAAMtT,QAAQh5C,KAAM,mBAAoB,IAAIyxE,GAAgB,CAAC,CAAC,CAAC,SAAU,cAAewE,EAAMO,WAAY,CAAC,CAAC,SAAU,cAAeP,EAAM7G,MAAO,CAAC,CAAC,SAAU,eAAgB,mBAAoB,eAAgB,oBAAqB6G,EAAMpC,MAAO,CAAC,CAAC,YAAa,gBAAiB,iBAAkB,kBAAmB,gBAAiB,oBAAqB,qBAAsB,SAAU,cAAe,eAAgB,cAAeoC,EAAM5jD,QAAS,CAAC,CAAC,SAAU,cAAe4jD,EAAMQ,aAAc,CAAC,CAAC,YAAa,iBAAkBR,EAAMS,yBAA0B,CACrjBzrE,KAAM,EAAEmrE,EAAO,GACfjC,QAAS+B,IACP,CAAC,CAAC,iBAAkB,uBAAwBD,EAAMS,yBAA0B,CAC9EzrE,KAAM,EAAEqrE,EAAK,GACbnC,QAAS+B,IACP,CAAC,CAAC,aAAc,kBAAmBD,EAAMS,yBAA0B,CACrEzrE,KAAM,CAACmrE,EAAO,GACdjC,QAAS+B,IACP,CAAC,CAAC,kBAAmB,wBAAyBD,EAAMS,yBAA0B,CAChFzrE,KAAM,CAACqrE,EAAK,GACZnC,QAAS+B,IACP,CAAC,CAAC,UAAW,eAAgBD,EAAMS,yBAA0B,CAC/DzrE,KAAM,CAAC,GAAImrE,GACXjC,QAAS+B,IACP,CAAC,CAAC,eAAgB,qBAAsBD,EAAMS,yBAA0B,CAC1EzrE,KAAM,CAAC,GAAIqrE,GACXnC,QAAS+B,IACP,CAAC,CAAC,YAAa,iBAAkBD,EAAMS,yBAA0B,CACnEzrE,KAAM,CAAC,EAAGmrE,GACVjC,QAAS+B,IACP,CAAC,CAAC,iBAAkB,uBAAwBD,EAAMS,yBAA0B,CAC9EzrE,KAAM,CAAC,EAAGqrE,GACVnC,QAAS+B,MAEb,CAkBA,OAAA9pD,GACE,gBAAApsB,KAAK,OAAL,KAAAA,MACA,gBAAAA,KAAK,KAAL,KAAAA,MACAA,KAAK8wE,UAAU6F,KAAK,gBAAiB,aAAA32E,KAAK,IAC1CA,KAAK8wE,UAAU6F,KAAK,eAAgB,aAAA32E,KAAK,IACzCA,KAAK8wE,UAAU6F,KAAK,gBAAiB,aAAA32E,KAAK,IAC1CA,KAAK8wE,UAAU6F,KAAK,mBAAoB,aAAA32E,KAAK,IAC7C,UAAW42E,KAAS,aAAA52E,KAAK,GAAWu7D,SAClCqb,EAAMxqD,UAER,aAAApsB,KAAK,GAAW4O,QAChB,aAAA5O,KAAK,GAAY4O,QACjB,aAAA5O,KAAK,GAAkB4O,QACvB,aAAA5O,KAAK,EAAgB,MACrB,aAAAA,KAAK,GAAiB4O,QACtB,aAAA5O,KAAK,GAAgBosB,UACrB,aAAApsB,KAAK,GAAgBosB,SACvB,CACA,aAAIyqD,GACF,SAAWvqB,GAAMtT,QAAQh5C,KAAM,YAAa,aAAAA,KAAK,GAAc,aAAAA,KAAK,GAAe82E,aAAa,aAAA92E,KAAK,GAAY+2E,WAAY,aAAA/2E,KAAK,GAAYo4D,YAAc,OAC9J,CACA,aAAI4e,GACF,SAAW1qB,GAAMtT,QAAQh5C,KAAM,YAAa8hC,iBAAiB,aAAA9hC,KAAK,IAAYg3E,UAChF,CACA,WAAAxL,CAAYtE,GACV,aAAAlnE,KAAK,IAAiBwrE,YAAYxrE,KAAMknE,EAC1C,CACA,cAAAuO,EAAe,WACbnhB,IAEA,aAAAt0D,KAAK,EAAoBs0D,EAAa,EACxC,CACA,kBAAA2iB,GACE,aAAAj3E,KAAK,GAAWmyB,OAClB,CACA,UAAA+kD,CAAW93E,EAAG4F,GACZ,UAAW4xE,KAAS,aAAA52E,KAAK,GAAWu7D,SAAU,CAC5C,MACEn8D,EAAG+3E,EACHnyE,EAAGoyE,EAAM,MACTr1C,EAAK,OACLE,GACE20C,EAAMh2C,IAAIspC,wBACd,GAAI9qE,GAAK+3E,GAAU/3E,GAAK+3E,EAASp1C,GAAS/8B,GAAKoyE,GAAUpyE,GAAKoyE,EAASn1C,EACrE,OAAO20C,CAEX,CACA,OAAO,IACT,CACA,iBAAAS,CAAkBl3E,GAAQ,GACxB,aAAAH,KAAK,GAAQgvC,UAAUs5B,OAAO,eAAgBnoE,EAChD,CACA,gBAAAm3E,CAAiBpQ,GACf,aAAAlnE,KAAK,GAAkB4nB,IAAIs/C,EAC7B,CACA,mBAAAqQ,CAAoBrQ,GAClB,aAAAlnE,KAAK,GAAkBqyB,OAAO60C,EAChC,CACA,eAAAwO,EAAgB,MACdxe,IAEAl3D,KAAKopE,iBACLppE,KAAKsmE,eAAeoE,UAAYxT,EAAQ1K,GAAespB,cAAcC,iBACrE,UAAW7O,KAAU,aAAAlnE,KAAK,GACxBknE,EAAOwO,iBAEX,CACA,kBAAAC,EAAmB,cACjB6B,IAEAx3E,KAAKopE,iBACLppE,KAAKsmE,eAAenP,SAAWqgB,CACjC,CACA,sBAAAlQ,CAAuBJ,GAChBA,EAAOmC,YAAa,aAAArpE,KAAK,IAAuB,aAAAA,KAAK,GAAmB49D,IAAIsJ,EAAOtxD,KACtF,aAAA5V,KAAK,GAAmBwkE,SAAS0C,EAAOtxD,GAAIsxD,EAEhD,CASA,IAAAkO,GACE,IAAKp1E,KAAKy3E,aACR,OAEF,MAAM,cACJ9lC,GACEl6B,SACJ,UAAWyvD,KAAU,aAAAlnE,KAAK,GACxB,GAAIknE,EAAOtmC,IAAI2I,SAASoI,GAAgB,CACtC,aAAA3xC,KAAK,EAAqB,CAACknE,EAAQv1B,IACnCu1B,EAAO8B,qBAAsB,EAC7B,KACF,CAEJ,CACA,KAAA72C,GACE,IAAK,aAAAnyB,KAAK,GACR,OAEF,MAAO03E,EAAYC,GAAqB,aAAA33E,KAAK,GAC7C,aAAAA,KAAK,EAAqB,MAC1B23E,EAAkBr8D,iBAAiB,WAAW,KAC5Co8D,EAAW1O,qBAAsB,CAAI,GACpC,CACD4O,MAAM,IAERD,EAAkBxlD,OACpB,CAqBA,gBAAA0lD,GACE,gBAAA73E,KAAK,MAAL,KAAAA,MACA,gBAAAA,KAAK,OAAL,KAAAA,KACF,CACA,mBAAA83E,GACE,gBAAA93E,KAAK,OAAL,KAAAA,MACA,gBAAAA,KAAK,OAAL,KAAAA,KACF,CACA,IAAAq1E,CAAK95D,GAGH,GAFAA,EAAMwW,iBACN,aAAA/xB,KAAK,IAAeopE,kBACfppE,KAAKy3E,aACR,OAEF,MAAMM,EAAU,GAChB,UAAW7Q,KAAU,aAAAlnE,KAAK,GAAkB,CAC1C,MAAMilE,EAAaiC,EAAO18D,WAAU,GAChCy6D,GACF8S,EAAQn2E,KAAKqjE,EAEjB,CACuB,IAAnB8S,EAAQlyE,QAGZ0V,EAAMy8D,cAAcC,QAAQ,oBAAqBvqE,KAAKC,UAAUoqE,GAClE,CACA,GAAAzC,CAAI/5D,GACFvb,KAAKq1E,KAAK95D,GACVvb,KAAKqyB,QACP,CACA,KAAA81C,CAAM5sD,GACJA,EAAMwW,iBACN,MAAM,cACJimD,GACEz8D,EACJ,UAAWrI,KAAQ8kE,EAActd,MAC/B,UAAWkM,KAAc,aAAA5mE,KAAK,GAC5B,GAAI4mE,EAAWqB,yBAAyB/0D,EAAKnG,MAE3C,YADA65D,EAAWuB,MAAMj1D,EAAMlT,KAAK2oE,cAKlC,IAAI/jD,EAAOozD,EAAc1iB,QAAQ,qBACjC,IAAK1wC,EACH,OAEF,IACEA,EAAOlX,KAAK1M,MAAM4jB,EACpB,CAAE,MAAO60B,GAEP,YADA,EAAI6S,GAAMhhD,MAAM,WAAWmuC,EAAGrwC,YAEhC,CACA,IAAKuB,MAAMC,QAAQga,GACjB,OAEF5kB,KAAKy2E,cACL,MAAMG,EAAQ52E,KAAK2oE,aACnB,IACE,MAAMuP,EAAa,GACnB,UAAWhR,KAAUtiD,EAAM,CACzB,MAAMuzD,EAAqBvB,EAAM3J,YAAY/F,GAC7C,IAAKiR,EACH,OAEFD,EAAWt2E,KAAKu2E,EAClB,CACA,MAAMhJ,EAAM,KACV,UAAWjI,KAAUgR,EACnB,gBAAAl4E,KAAK,OAAL,KAAAA,KAAuBknE,GAEzB,gBAAAlnE,KAAK,OAAL,KAAAA,KAAoBk4E,EAAW,EAE3B9I,EAAO,KACX,UAAWlI,KAAUgR,EACnBhR,EAAOpgD,QACT,EAEF9mB,KAAK0oE,YAAY,CACfyG,MACAC,OACAC,UAAU,GAEd,CAAE,MAAO51B,IACP,EAAI6S,GAAMhhD,MAAM,WAAWmuC,EAAGrwC,YAChC,CACF,CACA,OAAAmsE,CAAQh6D,GACDvb,KAAKo4E,aAAavL,2BACrB,EAA0BmJ,iBAAiBh0E,KAAKhC,KAAMub,EAE1D,CACA,eAAAi6D,CAAgB5gE,GACV,CAAC,OAAQ,OAAQ,SAAU,aAAajB,SAASiB,EAAQzL,OAC3DnJ,KAAK4U,EAAQzL,OAEjB,CAgBA,eAAAkvE,CAAgBzK,GACVA,GACF,gBAAA5tE,KAAK,KAAL,KAAAA,MACA,gBAAAA,KAAK,MAAL,KAAAA,MACA,gBAAAA,KAAK,OAAL,KAAAA,MACA,gBAAAA,KAAK,OAAL,KAAAA,KAA2B,CACzB4tE,UAAW,aAAA5tE,KAAK,KAAUssD,GAAM5W,qBAAqBmF,KACrDwuB,QAAS,gBAAArpE,KAAK,OAAL,KAAAA,MACT8zE,mBAAoB,aAAA9zE,KAAK,GAAgB8zE,qBACzCC,mBAAoB,aAAA/zE,KAAK,GAAgB+zE,qBACzC6B,mBAAmB,MAGrB,gBAAA51E,KAAK,KAAL,KAAAA,MACA,gBAAAA,KAAK,OAAL,KAAAA,MACA,gBAAAA,KAAK,OAAL,KAAAA,MACA,gBAAAA,KAAK,OAAL,KAAAA,KAA2B,CACzB4tE,WAAW,IAEb5tE,KAAKq3E,mBAAkB,GAE3B,CACA,mBAAAiB,CAAoBziE,GAClB,IAAI,aAAA7V,KAAK,GAAT,CAGA,aAAAA,KAAK,EAAe6V,GACpB,UAAW+wD,KAAc,aAAA5mE,KAAK,GAC5B,gBAAAA,KAAK,OAAL,KAAAA,KAAuB4mE,EAAWoB,0BAHpC,CAKF,CACA,KAAAgK,GACE,OAAO,aAAAhyE,KAAK,GAAWgyE,OACzB,CACA,gBAAIrJ,GACF,OAAO,aAAA3oE,KAAK,GAAWS,IAAI,aAAAT,KAAK,GAClC,CACA,QAAAu4E,CAASriB,GACP,OAAO,aAAAl2D,KAAK,GAAWS,IAAIy1D,EAC7B,CACA,oBAAIsiB,GACF,OAAO,aAAAx4E,KAAK,EACd,CACA,QAAAy4E,CAAS7B,GACP,aAAA52E,KAAK,GAAW8qB,IAAI8rD,EAAM1gB,UAAW0gB,GACjC,aAAA52E,KAAK,GACP42E,EAAM1kD,SAEN0kD,EAAM5kD,SAEV,CACA,WAAA0mD,CAAY9B,GACV,aAAA52E,KAAK,GAAWqyB,OAAOukD,EAAM1gB,UAC/B,CACA,UAAAyiB,CAAWvoC,EAAMwoC,EAAS,MACxB,GAAI,aAAA54E,KAAK,KAAUowC,EAAnB,CAIA,GADA,aAAApwC,KAAK,EAAQowC,GACTA,IAASkc,GAAM5W,qBAAqBmF,KAGtC,OAFA76C,KAAKq4E,iBAAgB,QACrB,gBAAAr4E,KAAK,OAAL,KAAAA,MAGFA,KAAKq4E,iBAAgB,GACrB,gBAAAr4E,KAAK,OAAL,KAAAA,MACAA,KAAKy2E,cACL,UAAWG,KAAS,aAAA52E,KAAK,GAAWu7D,SAClCqb,EAAM+B,WAAWvoC,GAEnB,GAAKwoC,EAGL,UAAW1R,KAAU,aAAAlnE,KAAK,GAAYu7D,SACpC,GAAI2L,EAAOvB,sBAAwBiT,EAAQ,CACzC54E,KAAKipE,YAAY/B,GACjBA,EAAOwG,kBACP,KACF,CArBF,CAuBF,CACA,aAAAmL,CAAczoC,GACRA,IAAS,aAAApwC,KAAK,IAGlBA,KAAK8wE,UAAUhhD,SAAS,6BAA8B,CACpDva,OAAQvV,KACRowC,QAEJ,CACA,YAAAm9B,CAAaxgE,EAAM5M,GACjB,GAAK,aAAAH,KAAK,GAGV,GAAI+M,IAASu/C,GAAM1W,2BAA2BsF,OAA9C,CAIA,UAAWgsB,KAAU,aAAAlnE,KAAK,GACxBknE,EAAOqG,aAAaxgE,EAAM5M,GAE5B,UAAWymE,KAAc,aAAA5mE,KAAK,GAC5B4mE,EAAWkB,oBAAoB/6D,EAAM5M,EALvC,MAFEH,KAAK2oE,aAAamQ,aAAa/rE,EASnC,CACA,aAAAgsE,CAAcC,GAAW,GACvB,GAAI,aAAAh5E,KAAK,KAAeg5E,EAAxB,CAGA,aAAAh5E,KAAK,EAAag5E,GAClB,UAAWpC,KAAS,aAAA52E,KAAK,GAAWu7D,SAC9Byd,EACFpC,EAAMqC,eAENrC,EAAMsC,cAERtC,EAAMh2C,IAAIoO,UAAUs5B,OAAO,UAAW0Q,EARxC,CAUF,CAkBA,UAAAG,CAAWjjB,GACT,MAAM6hB,EAAU,GAChB,UAAW7Q,KAAU,aAAAlnE,KAAK,GAAYu7D,SAChC2L,EAAOhR,YAAcA,GACvB6hB,EAAQn2E,KAAKslE,GAGjB,OAAO6Q,CACT,CACA,SAAAqB,CAAUxjE,GACR,OAAO,aAAA5V,KAAK,GAAYS,IAAImV,EAC9B,CACA,SAAAyjE,CAAUnS,GACR,aAAAlnE,KAAK,GAAY8qB,IAAIo8C,EAAOtxD,GAAIsxD,EAClC,CACA,YAAAgG,CAAahG,GACX,aAAAlnE,KAAK,GAAYqyB,OAAO60C,EAAOtxD,IAC/B5V,KAAKstE,SAASpG,GACTA,EAAOvB,qBAAwB,aAAA3lE,KAAK,GAA8B49D,IAAIsJ,EAAOvB,sBAChF,aAAA3lE,KAAK,IAAoB8mB,OAAOogD,EAAOtxD,GAE3C,CACA,2BAAA0jE,CAA4BpS,GAC1B,aAAAlnE,KAAK,GAA8B4nB,IAAIs/C,EAAOvB,qBAC9CuB,EAAOP,SAAU,CACnB,CACA,0BAAA4S,CAA2B5T,GACzB,OAAO,aAAA3lE,KAAK,GAA8B49D,IAAI+H,EAChD,CACA,8BAAA6T,CAA+BtS,GAC7B,aAAAlnE,KAAK,GAA8BqyB,OAAO60C,EAAOvB,qBACjDuB,EAAOP,SAAU,CACnB,CASA,eAAAkH,CAAgB3G,GACV,aAAAlnE,KAAK,KAAkBknE,IAG3B,aAAAlnE,KAAK,EAAgBknE,GACjBA,GACF,gBAAAlnE,KAAK,OAAL,KAAAA,KAAuBknE,EAAOkB,oBAElC,CACA,cAAAmJ,CAAerK,GACb,GAAI,aAAAlnE,KAAK,GAAiB49D,IAAIsJ,GAM5B,OALA,aAAAlnE,KAAK,GAAiBqyB,OAAO60C,GAC7BA,EAAOoG,gBACP,gBAAAttE,KAAK,OAAL,KAAAA,KAA2B,CACzB41E,kBAAmB51E,KAAKy3E,eAI5B,aAAAz3E,KAAK,GAAiB4nB,IAAIs/C,GAC1BA,EAAOmG,SACP,gBAAArtE,KAAK,OAAL,KAAAA,KAAuBknE,EAAOkB,oBAC9B,gBAAApoE,KAAK,OAAL,KAAAA,KAA2B,CACzB41E,mBAAmB,GAEvB,CACA,WAAA3M,CAAY/B,GACV,UAAWuS,KAAM,aAAAz5E,KAAK,GAChBy5E,IAAOvS,GACTuS,EAAGnM,WAGP,aAAAttE,KAAK,GAAiB4O,QACtB,aAAA5O,KAAK,GAAiB4nB,IAAIs/C,GAC1BA,EAAOmG,SACP,gBAAArtE,KAAK,OAAL,KAAAA,KAAuBknE,EAAOkB,oBAC9B,gBAAApoE,KAAK,OAAL,KAAAA,KAA2B,CACzB41E,mBAAmB,GAEvB,CACA,UAAA5E,CAAW9J,GACT,OAAO,aAAAlnE,KAAK,GAAiB49D,IAAIsJ,EACnC,CACA,QAAAoG,CAASpG,GACPA,EAAOoG,WACP,aAAAttE,KAAK,GAAiBqyB,OAAO60C,GAC7B,gBAAAlnE,KAAK,OAAL,KAAAA,KAA2B,CACzB41E,kBAAmB51E,KAAKy3E,cAE5B,CACA,gBAAIA,GACF,OAAsC,IAA/B,aAAAz3E,KAAK,GAAiB+sB,IAC/B,CACA,IAAAqiD,GACE,aAAApvE,KAAK,GAAgBovE,OACrB,gBAAApvE,KAAK,OAAL,KAAAA,KAA2B,CACzB8zE,mBAAoB,aAAA9zE,KAAK,GAAgB8zE,qBACzCC,oBAAoB,EACpB1K,QAAS,gBAAArpE,KAAK,OAAL,KAAAA,OAEb,CACA,IAAA6zE,GACE,aAAA7zE,KAAK,GAAgB6zE,OACrB,gBAAA7zE,KAAK,OAAL,KAAAA,KAA2B,CACzB8zE,oBAAoB,EACpBC,mBAAoB,aAAA/zE,KAAK,GAAgB+zE,qBACzC1K,QAAS,gBAAArpE,KAAK,OAAL,KAAAA,OAEb,CACA,WAAA0oE,CAAYr0D,GACV,aAAArU,KAAK,GAAgB4nB,IAAIvT,GACzB,gBAAArU,KAAK,OAAL,KAAAA,KAA2B,CACzB8zE,oBAAoB,EACpBC,oBAAoB,EACpB1K,QAAS,gBAAArpE,KAAK,OAAL,KAAAA,OAEb,CAYA,SAEE,GADAA,KAAKopE,kBACAppE,KAAKy3E,aACR,OAEF,MAAMM,EAAU,IAAI,aAAA/3E,KAAK,IAWzBA,KAAK0oE,YAAY,CACfyG,IAXU,KACV,UAAWjI,KAAU6Q,EACnB7Q,EAAOpgD,QACT,EASAsoD,KAPW,KACX,UAAWlI,KAAU6Q,EACnB,gBAAA/3E,KAAK,OAAL,KAAAA,KAAuBknE,EACzB,EAKAmI,UAAU,GAEd,CACA,cAAAjG,GACE,aAAAppE,KAAK,IAAeopE,gBACtB,CACA,qBAAA+M,GACE,OAAO,aAAAn2E,KAAK,IAAiBA,KAAKy3E,YACpC,CAcA,SAAAjB,GACE,UAAWtP,KAAU,aAAAlnE,KAAK,GACxBknE,EAAOoC,SAET,gBAAAtpE,KAAK,OAAL,KAAAA,KAAoB,aAAAA,KAAK,GAAYu7D,SACvC,CACA,WAAAkb,GACE,GAAI,aAAAz2E,KAAK,GACP,aAAAA,KAAK,GAAcopE,sBAGrB,GAAKppE,KAAKy3E,aAAV,CAGA,UAAWvQ,KAAU,aAAAlnE,KAAK,GACxBknE,EAAOoG,WAET,aAAAttE,KAAK,GAAiB4O,QACtB,gBAAA5O,KAAK,OAAL,KAAAA,KAA2B,CACzB41E,mBAAmB,GANrB,CAQF,CACA,wBAAAc,CAAyBt3E,EAAG4F,EAAG00E,GAAW,GAIxC,GAHKA,GACH15E,KAAKopE,kBAEFppE,KAAKy3E,aACR,OAEF,aAAAz3E,KAAK,GAAa,IAAMZ,EACxB,aAAAY,KAAK,GAAa,IAAMgF,EACxB,MAAO20E,EAAQC,GAAU,aAAA55E,KAAK,GACxB+3E,EAAU,IAAI,aAAA/3E,KAAK,IAErB,aAAAA,KAAK,IACPia,aAAa,aAAAja,KAAK,IAEpB,aAAAA,KAAK,EAAwBka,YAAW,KACtC,aAAAla,KAAK,EAAwB,MAC7B,aAAAA,KAAK,GAAa,GAAK,aAAAA,KAAK,GAAa,GAAK,EAC9CA,KAAK0oE,YAAY,CACfyG,IAAK,KACH,UAAWjI,KAAU6Q,EACf,aAAA/3E,KAAK,GAAY49D,IAAIsJ,EAAOtxD,KAC9BsxD,EAAO0C,gBAAgB+P,EAAQC,EAEnC,EAEFxK,KAAM,KACJ,UAAWlI,KAAU6Q,EACf,aAAA/3E,KAAK,GAAY49D,IAAIsJ,EAAOtxD,KAC9BsxD,EAAO0C,iBAAiB+P,GAASC,EAErC,EAEFvK,UAAU,GACV,GAvBiB,MAyBrB,UAAWnI,KAAU6Q,EACnB7Q,EAAO0C,gBAAgBxqE,EAAG4F,EAE9B,CACA,gBAAAksE,GACE,GAAKlxE,KAAKy3E,aAAV,CAGAz3E,KAAKq3E,mBAAkB,GACvB,aAAAr3E,KAAK,EAAmB,IAAIs4C,KAC5B,UAAW4uB,KAAU,aAAAlnE,KAAK,GACxB,aAAAA,KAAK,GAAiB8qB,IAAIo8C,EAAQ,CAChCqH,OAAQrH,EAAO9nE,EACfovE,OAAQtH,EAAOliE,EACf60E,eAAgB3S,EAAOhR,UACvB6Y,KAAM,EACNC,KAAM,EACN8K,cAAe,GAVnB,CAaF,CACA,cAAA1I,GACE,IAAK,aAAApxE,KAAK,GACR,OAAO,EAETA,KAAKq3E,mBAAkB,GACvB,MAAMpvE,EAAM,aAAAjI,KAAK,GACjB,aAAAA,KAAK,EAAmB,MACxB,IAAI+5E,GAAyB,EAC7B,WAAY,EACV36E,EAAC,EACD4F,EAAC,UACDkxD,GACC/1D,KAAU8H,EACX9H,EAAM4uE,KAAO3vE,EACbe,EAAM6uE,KAAOhqE,EACb7E,EAAM25E,aAAe5jB,EACrB6jB,IAA2B36E,IAAMe,EAAMouE,QAAUvpE,IAAM7E,EAAMquE,QAAUtY,IAAc/1D,EAAM05E,eAE7F,IAAKE,EACH,OAAO,EAET,MAAMC,EAAO,CAAC9S,EAAQ9nE,EAAG4F,EAAGkxD,KAC1B,GAAI,aAAAl2D,KAAK,GAAY49D,IAAIsJ,EAAOtxD,IAAK,CACnC,MAAMuvD,EAAS,aAAAnlE,KAAK,GAAWS,IAAIy1D,GAC/BiP,EACF+B,EAAOiF,sBAAsBhH,EAAQ/lE,EAAG4F,IAExCkiE,EAAOhR,UAAYA,EACnBgR,EAAO9nE,EAAIA,EACX8nE,EAAOliE,EAAIA,EAEf,GAuBF,OArBAhF,KAAK0oE,YAAY,CACfyG,IAAK,KACH,UAAYjI,GAAQ,KAClB6H,EAAI,KACJC,EAAI,aACJ8K,MACI7xE,EACJ+xE,EAAK9S,EAAQ6H,EAAMC,EAAM8K,EAC3B,EAEF1K,KAAM,KACJ,UAAYlI,GAAQ,OAClBqH,EAAM,OACNC,EAAM,eACNqL,MACI5xE,EACJ+xE,EAAK9S,EAAQqH,EAAQC,EAAQqL,EAC/B,EAEFxK,UAAU,KAEL,CACT,CACA,mBAAA8B,CAAoB3H,EAAIC,GACtB,GAAK,aAAAzpE,KAAK,GAGV,UAAWknE,KAAU,aAAAlnE,KAAK,GAAiBI,OACzC8mE,EAAO6C,KAAKP,EAAIC,EAEpB,CACA,OAAAsD,CAAQ7F,GACN,GAAsB,OAAlBA,EAAO/B,OAAiB,CAC1B,MAAMA,EAASnlE,KAAKu4E,SAASrR,EAAOhR,WAChCiP,GACFA,EAAOiH,aAAalF,GACpB/B,EAAO8U,aAAa/S,KAEpBlnE,KAAKq5E,UAAUnS,GACflnE,KAAKsnE,uBAAuBJ,GAC5BA,EAAO6F,UAEX,MACE7F,EAAO/B,OAAO8U,aAAa/S,EAE/B,CACA,QAAApiD,CAASoiD,GACP,OAAO,aAAAlnE,KAAK,KAAkBknE,CAChC,CACA,SAAAkR,GACE,OAAO,aAAAp4E,KAAK,EACd,CACA,OAAAk6E,GACE,OAAO,aAAAl6E,KAAK,EACd,CACA,gBAAIm6E,GACF,SAAW7tB,GAAMtT,QAAQh5C,KAAM,eAAgB,IAAIyzE,GACrD,GA/yBA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cAOA,cACA,cACA,cACA,cAsIA,gBAAgB,WACdz0E,OAAOsc,iBAAiB,QAAS,aAAAtb,KAAK,IACtChB,OAAOsc,iBAAiB,OAAQ,aAAAtb,KAAK,GACvC,EACA,gBAAmB,WACjBhB,OAAO8jB,oBAAoB,QAAS,aAAA9iB,KAAK,IACzChB,OAAO8jB,oBAAoB,OAAQ,aAAA9iB,KAAK,GAC1C,EA6BA,iBAAmB,WACjBhB,OAAOsc,iBAAiB,UAAW,aAAAtb,KAAK,GAAe,CACrDyrE,SAAS,GAEb,EACA,kBAAsB,WACpBzsE,OAAO8jB,oBAAoB,UAAW,aAAA9iB,KAAK,GAAe,CACxDyrE,SAAS,GAEb,EACA,kBAAsB,WACpBh0D,SAAS6D,iBAAiB,OAAQ,aAAAtb,KAAK,IACvCyX,SAAS6D,iBAAiB,MAAO,aAAAtb,KAAK,IACtCyX,SAAS6D,iBAAiB,QAAS,aAAAtb,KAAK,GAC1C,EACA,kBAAyB,WACvByX,SAASqL,oBAAoB,OAAQ,aAAA9iB,KAAK,IAC1CyX,SAASqL,oBAAoB,MAAO,aAAA9iB,KAAK,IACzCyX,SAASqL,oBAAoB,QAAS,aAAA9iB,KAAK,GAC7C,EAkGA,kBAAqB,SAAC4U,GACDtV,OAAO4e,QAAQtJ,GAASI,MAAK,EAAElI,EAAK3M,KAAW,aAAAH,KAAK,GAAgB8M,KAAS3M,KAE9FH,KAAK8wE,UAAUhhD,SAAS,gCAAiC,CACvDva,OAAQvV,KACR4U,QAAStV,OAAO0P,OAAO,aAAAhP,KAAK,GAAiB4U,IAGnD,EACA,kBAAiB,SAACA,GAChB5U,KAAK8wE,UAAUhhD,SAAS,gCAAiC,CACvDva,OAAQvV,KACR4U,WAEJ,EAwHA,kBAAU,WACR,IAAK,aAAA5U,KAAK,GAAY,CACpB,aAAAA,KAAK,GAAa,GAClB,UAAW42E,KAAS,aAAA52E,KAAK,GAAWu7D,SAClCqb,EAAM1kD,QAEV,CACF,EACA,kBAAW,WAET,GADAlyB,KAAKy2E,cACD,aAAAz2E,KAAK,GAAY,CACnB,aAAAA,KAAK,GAAa,GAClB,UAAW42E,KAAS,aAAA52E,KAAK,GAAWu7D,SAClCqb,EAAM5kD,SAEV,CACF,EAkCA,kBAAiB,SAACk1C,GAChB,MAAM0P,EAAQ,aAAA52E,KAAK,GAAWS,IAAIymE,EAAOhR,WACrC0gB,EACFA,EAAMqD,aAAa/S,GAEnBlnE,KAAKq5E,UAAUnS,EAEnB,EA6EA,kBAAQ,WACN,GAA8B,IAA1B,aAAAlnE,KAAK,GAAY+sB,KACnB,OAAO,EAET,GAA8B,IAA1B,aAAA/sB,KAAK,GAAY+sB,KACnB,UAAWm6C,KAAU,aAAAlnE,KAAK,GAAYu7D,SACpC,OAAO2L,EAAOmC,UAGlB,OAAO,CACT,EA6BA,kBAAc,SAAC0O,GACb,aAAA/3E,KAAK,GAAiB4O,QACtB,UAAWs4D,KAAU6Q,EACf7Q,EAAOmC,YAGX,aAAArpE,KAAK,GAAiB4nB,IAAIs/C,GAC1BA,EAAOmG,UAET,gBAAArtE,KAAK,OAAL,KAAAA,KAA2B,CACzB41E,mBAAmB,GAEvB,EA7lBA,cAzCI,GAyCG,kBAAkB,GACzB,cA1CI,GA0CG,gBAAgB,IA1CzB,IAAMjE,GAAN,GAkzBA9yE,EAAQ8yE,0BAA4BA,EAAyB,EAItD,CAACj+B,EAAyB70C,EAAS0sD,KA52J1C,sDAg3JAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ03D,UAAY13D,EAAQq9D,4BAA8Br9D,EAAQi3E,cAAgBj3E,EAAQ04D,aAAe14D,EAAQu7E,cAAgBv7E,EAAQkvD,2BAA6BlvD,EAAQw7E,cAAgBx7E,EAAQgvD,iBAAmBhvD,EAAQ4uD,iBAAmB5uD,EAAQ8uD,0BAAuB,EACnR9uD,EAAQ80D,WA8hBR,SAAoB/+C,GAClB7M,QAAQiD,IAAI,yBAA2B4J,EACzC,EA/hBA/V,EAAQ01E,eAmmBR,SAAwBD,GACtB,MAAMgG,EAAO7iE,SAASE,cAAc,QACpC2iE,EAAK1iE,MAAM2iE,WAAa,SACxB9iE,SAAS1S,KAAK4mB,OAAO2uD,GACrB,UAAWnxE,KAAQmrE,EAAOl0E,OAAQ,CAChCk6E,EAAK1iE,MAAM68D,MAAQtrE,EACnB,MAAMqxE,EAAgBx7E,OAAO8iC,iBAAiBw4C,GAAM7F,MACpDH,EAAOxpD,IAAI3hB,EAAMwrE,EAAO6F,GAC1B,CACAF,EAAKxzD,QACP,EA5mBAjoB,EAAQ47E,oBA6mBR,SAA6BthD,GAC3B,MAAM,EACJr5B,EAAC,EACD0e,EAAC,EACDqK,EAAC,EACDtoB,EAAC,EACDmE,EAAC,EACD9E,GACEu5B,EAAIuhD,eACR,MAAO,CAAC56E,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,EACzB,EAtnBAf,EAAQ87E,2BAunBR,SAAoCxhD,GAClC,MAAM,EACJr5B,EAAC,EACD0e,EAAC,EACDqK,EAAC,EACDtoB,EAAC,EACDmE,EAAC,EACD9E,GACEu5B,EAAIuhD,eAAeE,aACvB,MAAO,CAAC96E,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,EACzB,EAhoBAf,EAAQg8E,mBA0bR,SAA4B3tE,EAAK4tE,GAAgB,GAI/C,OAHKA,KACF5tE,GAAOA,EAAIhM,MAAM,OAAQ,IAErBgM,EAAIqc,UAAUrc,EAAI6tE,YAAY,KAAO,EAC9C,EA9bAl8E,EAAQm8E,sBA+bR,SAA+B9tE,EAAK+tE,EAAkB,gBACpD,GAAmB,iBAAR/tE,EACT,OAAO+tE,EAET,GAAItsB,EAAazhD,GAEf,OADA,EAAIo/C,EAAMhhD,MAAM,sEACT2vE,EAET,MACMC,EAAa,gCACbC,EAFQ,sDAESn5E,KAAKkL,GAC5B,IAAIkuE,EAAoBF,EAAWl5E,KAAKm5E,EAAS,KAAOD,EAAWl5E,KAAKm5E,EAAS,KAAOD,EAAWl5E,KAAKm5E,EAAS,IACjH,GAAIC,IACFA,EAAoBA,EAAkB,GAClCA,EAAkBznE,SAAS,MAC7B,IACEynE,EAAoBF,EAAWl5E,KAAKmpD,mBAAmBiwB,IAAoB,EAC7E,CAAE,MAAO,CAGb,OAAOA,GAAqBH,CAC9B,EAndAp8E,EAAQ81E,OAASA,EACjB91E,EAAQw8E,mBAgkBR,SAA4BC,GAAS,MACnCpkB,EAAQ,EAAC,SACTC,EAAW,IAEX,MAAM,MACJp1B,EAAK,OACLE,GACEq5C,EAAQ7sD,WAAW7W,MACjB4/C,EAAU,CAAC,EAAG,EAAGhuC,SAASuY,GAAQvY,SAASyY,IACjD,OAAO,IAAIs1B,EAAa,CACtBC,UACAN,QACAC,YAEJ,EA7kBAt4D,EAAQ8vD,aAAeA,EACvB9vD,EAAQ08E,UAkbR,SAAmB7sD,GACjB,MAA2B,iBAAbA,GAAyB,UAAUnkB,KAAKmkB,EACxD,EAnbA7vB,EAAQkxD,gBAAkBA,EAC1BlxD,EAAQmgE,WAmgBR,SAAoBp+D,EAAK46E,GAAsB,GAC7C,OAAO,IAAIn3E,SAAQ,CAACD,EAASE,KAC3B,MAAMmc,EAAShJ,SAASE,cAAc,UACtC8I,EAAO7f,IAAMA,EACb6f,EAAOI,OAAS,SAAUu/C,GACpBob,GACF/6D,EAAOqG,SAET1iB,EAAQg8D,EACV,EACA3/C,EAAOhH,QAAU,WACfnV,EAAO,IAAImH,MAAM,0BAA0BgV,EAAO7f,OACpD,GACC6W,SAASK,MAAQL,SAASkwD,iBAAiBh8C,OAAOlL,EAAO,GAE9D,EAjhBA5hB,EAAQ0sE,cA+fR,SAAuB7mE,GACrBA,EAAEqtB,gBACJ,EAhgBAlzB,EAAQ48E,mBAwnBR,SAA4B76C,EAAKs3B,EAAUwjB,GAAW,EAAOC,GAAa,GACxE,GAAIzjB,aAAoBX,EAAc,CACpC,MAAM,UACJ0O,EAAS,WACTC,GACEhO,EAAS8N,SACP,MACJpuD,GACEgpB,EACEg7C,EAAWtvB,EAAMxX,YAAYqT,oBAC7Bxf,EAAI,yBAAyBs9B,MACjCr9B,EAAI,yBAAyBs9B,MACzB2V,EAAWD,EAAW,SAASjzC,UAAY,QAAQA,KACvDmzC,EAAYF,EAAW,SAAShzC,UAAY,QAAQA,KACjD8yC,GAAYxjB,EAASf,SAAW,KAAQ,GAI3Cv/C,EAAMmqB,MAAQ+5C,EACdlkE,EAAMqqB,OAAS45C,IAJfjkE,EAAMmqB,MAAQ85C,EACdjkE,EAAMqqB,OAAS65C,EAKnB,CACIH,GACF/6C,EAAIlgB,aAAa,qBAAsBw3C,EAASf,SAEpD,EAhpBA,IAAI4kB,EAAgBxwB,EAAoB,GACpCe,EAAQf,EAAoB,GAChC,MAAMywB,EAAS,6BACT,EAAN,QACE,cADI,EACG,MAAM,IACb,cAFI,EAEG,MAAM,IACb,cAHI,EAGG,mBAAmB,EAAK5zB,IAAM,EAAK6zB,KAH5C,IAghBIC,EAhhBEpG,EAAN,EAKAj3E,EAAQi3E,cAAgBA,EACxB,MAAMjoB,UAAyBkuB,EAAcI,kBAY3C,WAAAx9D,EAAY,MACVsvC,EAAK,cACLzkB,EAAgBzqC,WAAW0Y,UACzB,CAAC,GACHgwC,QAIF,kBAAI,GAGJ,kBAAI,GAuKJ,qBAMA,qBAOA,qBAMA,qBAOA,qBAvNA,4BACA,4BACA,4BACA,4BACA,4BACA,4BACA,4BACA,4BACA,4BACA,4BACA,oBAAM,GAMJ,aAAAznD,KAAK,EAASiuD,GACd,aAAAjuD,KAAK,EAAYwpC,EACnB,CA0BA,SAAA4yC,CAAUC,GACR,IAAKA,EACH,MAAO,OAET,IAIIC,EAAQC,EAAQC,EAAQ1vE,EAJxB3M,EAAQ,aAAAH,KAAK,KAAOS,IAAI47E,GAC5B,GAAIl8E,EACF,OAAOA,EAGT,GAAoB,IAAhBk8E,EAAKx2E,OAAc,CACrB,MAAM42E,EAAOJ,EAAK,GACZtxD,EAAS,IAAIpgB,MAAM,KACzB,QAAS9B,EAAI,EAAGA,EAAI,IAAKA,IACvBkiB,EAAOliB,GAAK4zE,EAAK5zE,GAAK,IAExBiE,EAAMwvE,EAASC,EAASC,EAASzxD,EAAOte,KAAK,IAC/C,KAAO,CACL,MAAOgwE,EAAMC,EAAMC,GAAQN,EACrBO,EAAU,IAAIjyE,MAAM,KACpBkyE,EAAU,IAAIlyE,MAAM,KACpBmyE,EAAU,IAAInyE,MAAM,KAC1B,QAAS9B,EAAI,EAAGA,EAAI,IAAKA,IACvB+zE,EAAQ/zE,GAAK4zE,EAAK5zE,GAAK,IACvBg0E,EAAQh0E,GAAK6zE,EAAK7zE,GAAK,IACvBi0E,EAAQj0E,GAAK8zE,EAAK9zE,GAAK,IAEzByzE,EAASM,EAAQnwE,KAAK,KACtB8vE,EAASM,EAAQpwE,KAAK,KACtB+vE,EAASM,EAAQrwE,KAAK,KACtBK,EAAM,GAAGwvE,IAASC,IAASC,GAC7B,CAEA,GADAr8E,EAAQ,aAAAH,KAAK,KAAOS,IAAIqM,GACpB3M,EAEF,OADA,aAAAH,KAAK,KAAO8qB,IAAIuxD,EAAMl8E,GACfA,EAET,MAAMyV,EAAK,KAAK,aAAA5V,KAAK,mBAAuB,iBAAAA,KAAK,GAAL,MACtCkN,EAAM,QAAQ0I,KACpB,aAAA5V,KAAK,KAAO8qB,IAAIuxD,EAAMnvE,GACtB,aAAAlN,KAAK,KAAO8qB,IAAIhe,EAAKI,GACrB,MAAMhH,EAAS,gBAAAlG,KAAK,KAAL,KAAAA,KAAmB4V,GAElC,OADA,gBAAA5V,KAAK,KAAL,KAAAA,KAA+Bs8E,EAAQC,EAAQC,EAAQt2E,GAChDgH,CACT,CACA,YAAA4pE,CAAaiG,EAASC,GACpB,MAAMlwE,EAAM,GAAGiwE,KAAWC,IAC1B,GAAI,aAAAh9E,KAAK,KAAY8M,EACnB,OAAO,aAAA9M,KAAK,GAKd,GAHA,aAAAA,KAAK,EAAU8M,GACf,aAAA9M,KAAK,EAAU,QACf,aAAAA,KAAK,IAAY8mB,UACZi2D,IAAYC,EACf,OAAO,aAAAh9E,KAAK,GAEd,MAAMi9E,EAAQ,gBAAAj9E,KAAK,KAAL,KAAAA,KAAa+8E,GAC3BA,EAAUzwB,EAAMv2C,KAAKwyC,gBAAgB00B,GACrC,MAAMC,EAAQ,gBAAAl9E,KAAK,KAAL,KAAAA,KAAag9E,GAG3B,GAFAA,EAAU1wB,EAAMv2C,KAAKwyC,gBAAgB20B,GACrC,aAAAl9E,KAAK,KAAM4X,MAAM68D,MAAQ,GACT,YAAZsI,GAAqC,YAAZC,GAAyBD,IAAYC,EAChE,OAAO,aAAAh9E,KAAK,GAEd,MAAMiI,EAAM,IAAI0C,MAAM,KACtB,QAAS9B,EAAI,EAAGA,GAAK,IAAKA,IAAK,CAC7B,MAAMzJ,EAAIyJ,EAAI,IACdZ,EAAIY,GAAKzJ,GAAK,OAAUA,EAAI,QAAUA,EAAI,MAAS,QAAU,GAC/D,CACA,MAAM+9E,EAAQl1E,EAAIwE,KAAK,KACjBmJ,EAAK,KAAK,aAAA5V,KAAK,gBACfkG,EAAS,aAAAlG,KAAK,EAAsB,gBAAAA,KAAK,KAAL,KAAAA,KAAmB4V,IAC7D,gBAAA5V,KAAK,KAAL,KAAAA,KAA+Bm9E,EAAOA,EAAOA,EAAOj3E,GACpD,gBAAAlG,KAAK,KAAL,KAAAA,KAAwBkG,GACxB,MAAMk3E,EAAW,CAACv0D,EAAGlpB,KACnB,MAAM2iB,EAAQ26D,EAAMp0D,GAAK,IACnB9a,EAAMmvE,EAAMr0D,GAAK,IACjB0B,EAAM,IAAI5f,MAAMhL,EAAI,GAC1B,QAASkJ,EAAI,EAAGA,GAAKlJ,EAAGkJ,IACtB0hB,EAAI1hB,GAAKyZ,EAAQzZ,EAAIlJ,GAAKoO,EAAMuU,GAElC,OAAOiI,EAAI9d,KAAK,IAAI,EAItB,OAFA,gBAAAzM,KAAK,KAAL,KAAAA,KAA+Bo9E,EAAS,EAAG,GAAIA,EAAS,EAAG,GAAIA,EAAS,EAAG,GAAIl3E,GAC/E,aAAAlG,KAAK,EAAU,QAAQ4V,MAChB,aAAA5V,KAAK,EACd,CACA,qBAAAq9E,CAAsBN,EAASC,EAASM,EAAYC,GAClD,MAAMzwE,EAAM,GAAGiwE,KAAWC,KAAWM,KAAcC,IACnD,GAAI,aAAAv9E,KAAK,KAAqB8M,EAC5B,OAAO,aAAA9M,KAAK,GAKd,GAHA,aAAAA,KAAK,EAAmB8M,GACxB,aAAA9M,KAAK,EAAmB,QACxB,aAAAA,KAAK,IAAqB8mB,UACrBi2D,IAAYC,EACf,OAAO,aAAAh9E,KAAK,GAEd,MAAOi9E,EAAOC,GAAS,CAACH,EAASC,GAAS/0E,IAAI,gBAAAjI,KAAK,KAAQoiB,KAAKpiB,OAChE,IAAIw9E,EAAS/5D,KAAKonD,MAAM,MAASoS,EAAM,GAAK,MAASA,EAAM,GAAK,MAASA,EAAM,IAC3EQ,EAASh6D,KAAKonD,MAAM,MAASqS,EAAM,GAAK,MAASA,EAAM,GAAK,MAASA,EAAM,KAC1EQ,EAAUC,GAAY,CAACL,EAAYC,GAAYt1E,IAAI,gBAAAjI,KAAK,KAAQoiB,KAAKpiB,OACtEy9E,EAASD,KACVA,EAAQC,EAAQC,EAAUC,GAAY,CAACF,EAAQD,EAAQG,EAAUD,IAEpE,aAAA19E,KAAK,KAAM4X,MAAM68D,MAAQ,GACzB,MAAM2I,EAAW,CAACQ,EAAIC,EAAIl+E,KACxB,MAAM4qB,EAAM,IAAI5f,MAAM,KAChBnG,GAAQi5E,EAASD,GAAU79E,EAC3Bm+E,EAAWF,EAAK,IAChBG,GAAWF,EAAKD,IAAO,IAAMj+E,GACnC,IAAIq+E,EAAO,EACX,QAASn1E,EAAI,EAAGA,GAAKlJ,EAAGkJ,IAAK,CAC3B,MAAMvI,EAAImjB,KAAKonD,MAAM2S,EAAS30E,EAAIrE,GAC5BrE,EAAQ29E,EAAWj1E,EAAIk1E,EAC7B,QAASl0D,EAAIm0D,EAAMn0D,GAAKvpB,EAAGupB,IACzBU,EAAIV,GAAK1pB,EAEX69E,EAAO19E,EAAI,CACb,CACA,QAASuI,EAAIm1E,EAAMn1E,EAAI,IAAKA,IAC1B0hB,EAAI1hB,GAAK0hB,EAAIyzD,EAAO,GAEtB,OAAOzzD,EAAI9d,KAAK,IAAI,EAEhBmJ,EAAK,KAAK,aAAA5V,KAAK,0BACfkG,EAAS,aAAAlG,KAAK,EAAsB,gBAAAA,KAAK,KAAL,KAAAA,KAAmB4V,IAI7D,OAHA,gBAAA5V,KAAK,KAAL,KAAAA,KAAwBkG,GACxB,gBAAAlG,KAAK,KAAL,KAAAA,KAA+Bo9E,EAASM,EAAS,GAAIC,EAAS,GAAI,GAAIP,EAASM,EAAS,GAAIC,EAAS,GAAI,GAAIP,EAASM,EAAS,GAAIC,EAAS,GAAI,GAAIz3E,GACpJ,aAAAlG,KAAK,EAAmB,QAAQ4V,MACzB,aAAA5V,KAAK,EACd,CACA,OAAAosB,CAAQ6xD,GAAU,GACZA,IAAY,aAAAj+E,KAAK,IAAW,aAAAA,KAAK,MAGjC,aAAAA,KAAK,KACP,aAAAA,KAAK,GAAO8W,WAAWA,WAAWgQ,SAClC,aAAA9mB,KAAK,EAAS,OAEZ,aAAAA,KAAK,KACP,aAAAA,KAAK,GAAQ4O,QACb,aAAA5O,KAAK,EAAU,OAEjB,aAAAA,KAAK,EAAM,GACb,EA5LA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cASI,gBAAM,WACR,OAAO,aAAAA,KAAK,IAAL,aAAAA,KAAK,EAAY,IAAIs4C,IAC9B,EACI,gBAAK,WACP,IAAK,aAAAt4C,KAAK,GAAQ,CAChB,MAAM4gC,EAAM,aAAA5gC,KAAK,GAAU2X,cAAc,QACnC,MACJC,GACEgpB,EACJhpB,EAAM2iE,WAAa,SACnB3iE,EAAMsmE,QAAU,SAChBtmE,EAAMmqB,MAAQnqB,EAAMqqB,OAAS,EAC7BrqB,EAAMyqB,SAAW,WACjBzqB,EAAM4tB,IAAM5tB,EAAM4f,KAAO,EACzB5f,EAAMixD,QAAU,EAChB,MAAMsV,EAAM,aAAAn+E,KAAK,GAAUo+E,gBAAgBpC,EAAQ,OACnDmC,EAAIz9D,aAAa,QAAS,GAC1By9D,EAAIz9D,aAAa,SAAU,GAC3B,aAAA1gB,KAAK,EAAS,aAAAA,KAAK,GAAUo+E,gBAAgBpC,EAAQ,SACrDp7C,EAAIjV,OAAOwyD,GACXA,EAAIxyD,OAAO,aAAA3rB,KAAK,IAChB,aAAAA,KAAK,GAAU+E,KAAK4mB,OAAOiV,EAC7B,CACA,OAAO,aAAA5gC,KAAK,EACd,EAkJA,gBAAkB,SAACkG,GACjB,MAAMm4E,EAAgB,aAAAr+E,KAAK,GAAUo+E,gBAAgBpC,EAAQ,iBAC7DqC,EAAc39D,aAAa,OAAQ,UACnC29D,EAAc39D,aAAa,SAAU,wFACrCxa,EAAOylB,OAAO0yD,EAChB,EACA,gBAAa,SAACzoE,GACZ,MAAM1P,EAAS,aAAAlG,KAAK,GAAUo+E,gBAAgBpC,EAAQ,UAItD,OAHA91E,EAAOwa,aAAa,8BAA+B,QACnDxa,EAAOwa,aAAa,KAAM9K,GAC1B,aAAA5V,KAAK,KAAM2rB,OAAOzlB,GACXA,CACT,EACA,gBAAa,SAACo4E,EAAqBpmE,EAAMilE,GACvC,MAAMoB,EAAS,aAAAv+E,KAAK,GAAUo+E,gBAAgBpC,EAAQ9jE,GACtDqmE,EAAO79D,aAAa,OAAQ,YAC5B69D,EAAO79D,aAAa,cAAey8D,GACnCmB,EAAoB3yD,OAAO4yD,EAC7B,EACA,gBAAyB,SAACC,EAAQC,EAAQC,EAAQx4E,GAChD,MAAMo4E,EAAsB,aAAAt+E,KAAK,GAAUo+E,gBAAgBpC,EAAQ,uBACnE91E,EAAOylB,OAAO2yD,GACd,gBAAAt+E,KAAK,KAAL,KAAAA,KAAmBs+E,EAAqB,UAAWE,GACnD,gBAAAx+E,KAAK,KAAL,KAAAA,KAAmBs+E,EAAqB,UAAWG,GACnD,gBAAAz+E,KAAK,KAAL,KAAAA,KAAmBs+E,EAAqB,UAAWI,EACrD,EACA,gBAAO,SAACjK,GAEN,OADA,aAAAz0E,KAAK,KAAM4X,MAAM68D,MAAQA,EAClBE,EAAO7yC,iBAAiB,aAAA9hC,KAAK,MAAO6nE,iBAAiB,SAC9D,EAEFhpE,EAAQgvD,iBAAmBA,EAC3B,MAAMJ,UAAyBsuB,EAAc4C,kBAC3C,WAAAhgE,EAAY,cACV6qB,EAAgBzqC,WAAW0Y,UACzB,CAAC,GACHgwC,QACAznD,KAAK4+E,UAAYp1C,CACnB,CACA,aAAAq1C,CAAc98C,EAAOE,GACnB,MAAMogC,EAASriE,KAAK4+E,UAAUjnE,cAAc,UAG5C,OAFA0qD,EAAOtgC,MAAQA,EACfsgC,EAAOpgC,OAASA,EACTogC,CACT,EAGFr0D,eAAe8wE,EAAU5xE,EAAK6xE,GAAe,GAC3C,GAAIhvB,EAAgB7iD,EAAKuK,SAASu4C,SAAU,CAC1C,MAAM3zC,QAAiB7E,MAAMtK,GAC7B,IAAKmP,EAAS62D,GACZ,MAAM,IAAIznE,MAAM4Q,EAAS82D,YAE3B,OAAO4L,EAAe,IAAIp1D,iBAAiBtN,EAAS2iE,gBAAiB,EAAI1yB,EAAMpT,qBAAqB78B,EAASpF,OAC/G,CACA,OAAO,IAAI5S,SAAQ,CAACD,EAASE,KAC3B,MAAM6P,EAAU,IAAIwH,eACpBxH,EAAQqQ,KAAK,MAAOtX,GAAK,GACrB6xE,IACF5qE,EAAQ0a,aAAe,eAEzB1a,EAAQ+H,mBAAqB,KAC3B,GAAI/H,EAAQ6H,aAAeL,eAAesjE,KAA1C,CAGA,GAAuB,MAAnB9qE,EAAQe,QAAqC,IAAnBf,EAAQe,OAAc,CAClD,IAAI0P,EAMJ,GALIm6D,GAAgB5qE,EAAQkI,SAC1BuI,EAAO,IAAI+E,WAAWxV,EAAQkI,WACpB0iE,GAAgB5qE,EAAQ+qE,eAClCt6D,GAAA,EAAW0nC,EAAMpT,eAAe/kC,EAAQ+qE,eAEtCt6D,EAEF,YADAxgB,EAAQwgB,EAGZ,CACAtgB,EAAO,IAAImH,MAAM0I,EAAQg/D,YAbzB,CAaqC,EAEvCh/D,EAAQqB,KAAK,KAAK,GAEtB,CAnCA3W,EAAQ4uD,iBAAmBA,EAoC3B,MAAME,UAA6BouB,EAAcoD,sBAC/C,UAAAC,CAAWlyE,EAAKmyE,GACd,OAAOP,EAAU5xE,EAAKlN,KAAKqwD,cAAcxrD,MAAK+f,IACrC,CACL06D,SAAU16D,EACVy6D,qBAGN,EAEFxgF,EAAQ8uD,qBAAuBA,EAC/B,MAAMI,UAAmCguB,EAAcwD,4BACrD,UAAAH,CAAWlyE,GACT,OAAO4xE,EAAU5xE,GAAK,EACxB,EAEFrO,EAAQkvD,2BAA6BA,EACrC,MAAMssB,UAAsB0B,EAAcyD,eACxC,UAAAC,CAAW1yE,GACT,OAAO0K,SAAS2mE,gBAAgBpC,EAAQjvE,EAC1C,EAEFlO,EAAQw7E,cAAgBA,EACxB,MAAM9iB,EACJ,WAAA54C,EAAY,QACV64C,EAAO,MACPN,EAAK,SACLC,EAAQ,QACRC,EAAU,EAAC,QACXC,EAAU,EAAC,SACXC,GAAW,IAEXt3D,KAAKw3D,QAAUA,EACfx3D,KAAKk3D,MAAQA,EACbl3D,KAAKm3D,SAAWA,EAChBn3D,KAAKo3D,QAAUA,EACfp3D,KAAKq3D,QAAUA,EACf,MAAMqoB,GAAWloB,EAAQ,GAAKA,EAAQ,IAAM,EACtCmoB,GAAWnoB,EAAQ,GAAKA,EAAQ,IAAM,EAC5C,IAAIooB,EAASC,EAASC,EAASC,EAqC3BC,EAAeC,EACfl+C,EAAOE,EAjCX,QAJAk1B,GAAY,KACG,IACbA,GAAY,KAENA,GACN,KAAK,IACHyoB,GAAW,EACXC,EAAU,EACVC,EAAU,EACVC,EAAU,EACV,MACF,KAAK,GACHH,EAAU,EACVC,EAAU,EACVC,EAAU,EACVC,EAAU,EACV,MACF,KAAK,IACHH,EAAU,EACVC,GAAW,EACXC,GAAW,EACXC,EAAU,EACV,MACF,KAAK,EACHH,EAAU,EACVC,EAAU,EACVC,EAAU,EACVC,GAAW,EACX,MACF,QACE,MAAM,IAAIt0E,MAAM,qEAEhB6rD,IACFwoB,GAAWA,EACXC,GAAWA,GAIG,IAAZH,GACFI,EAAgBv8D,KAAKunC,IAAI20B,EAAUnoB,EAAQ,IAAMN,EAAQE,EACzD6oB,EAAgBx8D,KAAKunC,IAAI00B,EAAUloB,EAAQ,IAAMN,EAAQG,EACzDt1B,GAASy1B,EAAQ,GAAKA,EAAQ,IAAMN,EACpCj1B,GAAUu1B,EAAQ,GAAKA,EAAQ,IAAMN,IAErC8oB,EAAgBv8D,KAAKunC,IAAI00B,EAAUloB,EAAQ,IAAMN,EAAQE,EACzD6oB,EAAgBx8D,KAAKunC,IAAI20B,EAAUnoB,EAAQ,IAAMN,EAAQG,EACzDt1B,GAASy1B,EAAQ,GAAKA,EAAQ,IAAMN,EACpCj1B,GAAUu1B,EAAQ,GAAKA,EAAQ,IAAMN,GAEvCl3D,KAAKsiD,UAAY,CAACs9B,EAAU1oB,EAAO2oB,EAAU3oB,EAAO4oB,EAAU5oB,EAAO6oB,EAAU7oB,EAAO8oB,EAAgBJ,EAAU1oB,EAAQwoB,EAAUI,EAAU5oB,EAAQyoB,EAASM,EAAgBJ,EAAU3oB,EAAQwoB,EAAUK,EAAU7oB,EAAQyoB,GAC3N3/E,KAAK+hC,MAAQA,EACb/hC,KAAKiiC,OAASA,CAChB,CACA,WAAI+jC,GACF,MAAM,QACJxO,GACEx3D,KACJ,SAAWssD,EAAMtT,QAAQh5C,KAAM,UAAW,CACxCimE,UAAWzO,EAAQ,GAAKA,EAAQ,GAChC0O,WAAY1O,EAAQ,GAAKA,EAAQ,GACjC2O,MAAO3O,EAAQ,GACf4O,MAAO5O,EAAQ,IAEnB,CACA,KAAAzxD,EAAM,MACJmxD,EAAQl3D,KAAKk3D,MAAK,SAClBC,EAAWn3D,KAAKm3D,SAAQ,QACxBC,EAAUp3D,KAAKo3D,QAAO,QACtBC,EAAUr3D,KAAKq3D,QAAO,SACtBC,GAAW,GACT,CAAC,GACH,OAAO,IAAIC,EAAa,CACtBC,QAASx3D,KAAKw3D,QAAQvqD,QACtBiqD,QACAC,WACAC,UACAC,UACAC,YAEJ,CACA,sBAAA4oB,CAAuB9gF,EAAG4F,GACxB,OAAOsnD,EAAMv2C,KAAK8yC,eAAe,CAACzpD,EAAG4F,GAAIhF,KAAKsiD,UAChD,CACA,0BAAA69B,CAA2B12B,GACzB,MAAM22B,EAAU9zB,EAAMv2C,KAAK8yC,eAAe,CAACY,EAAK,GAAIA,EAAK,IAAKzpD,KAAKsiD,WAC7D+9B,EAAc/zB,EAAMv2C,KAAK8yC,eAAe,CAACY,EAAK,GAAIA,EAAK,IAAKzpD,KAAKsiD,WACvE,MAAO,CAAC89B,EAAQ,GAAIA,EAAQ,GAAIC,EAAY,GAAIA,EAAY,GAC9D,CACA,iBAAAC,CAAkBlhF,EAAG4F,GACnB,OAAOsnD,EAAMv2C,KAAK+yC,sBAAsB,CAAC1pD,EAAG4F,GAAIhF,KAAKsiD,UACvD,EAEFzjD,EAAQ04D,aAAeA,EACvB,MAAM2E,UAAoC5P,EAAMpX,cAC9C,WAAAv2B,CAAYvE,EAAK+hD,EAAa,GAC5B1U,MAAMrtC,EAAK,+BACXpa,KAAKm8D,WAAaA,CACpB,EAGF,SAASxN,EAAazhD,GACpB,MAAM+qC,EAAK/qC,EAAIrH,OACf,IAAIgD,EAAI,EACR,KAAOA,EAAIovC,GAAwB,KAAlB/qC,EAAIrE,GAAGoD,QACtBpD,IAEF,MAAiD,UAA1CqE,EAAIqc,UAAU1gB,EAAGA,EAAI,GAAGF,aACjC,CAuEA,SAASonD,EAAgB7iD,EAAKmpC,GAC5B,IACE,MAAM,SACJh+B,GACEg+B,EAAU,IAAI19B,IAAIzL,EAAKmpC,GAAW,IAAI19B,IAAIzL,GAC9C,MAAoB,UAAbmL,GAAqC,WAAbA,CACjC,CAAE,MACA,OAAO,CACT,CACF,CA4EA,SAASs8D,EAAOF,GACd,GAAIA,EAAMl+B,WAAW,KAAM,CACzB,MAAMgqC,EAAW/2D,SAASirD,EAAMxnE,MAAM,GAAI,IAC1C,MAAO,EAAa,SAAXszE,IAAwB,IAAgB,MAAXA,IAAwB,EAAc,IAAXA,EACnE,CACA,OAAI9L,EAAMl+B,WAAW,QACZk+B,EAAMxnE,MAAM,GAAI,GAAG/L,MAAM,KAAK+G,KAAI7I,GAAKoqB,SAASpqB,KAErDq1E,EAAMl+B,WAAW,SACZk+B,EAAMxnE,MAAM,GAAI,GAAG/L,MAAM,KAAK+G,KAAI7I,GAAKoqB,SAASpqB,KAAI6N,MAAM,EAAG,KAEtE,EAAIq/C,EAAMhhD,MAAM,8BAA8BmpE,MACvC,CAAC,EAAG,EAAG,GAChB,CAjLA51E,EAAQq9D,4BAA8BA,EA8EtCr9D,EAAQ03D,UAtCR,oBACE,6BAAUj3D,OAAO4D,OAAO,OACxB,2BAAQ,GAAC,CACT,IAAAwR,CAAKvL,GACCA,KAAQnJ,KAAKuxB,UACf,EAAI+6B,EAAMhhD,MAAM,gCAAgCnC,KAElDnJ,KAAKuxB,QAAQpoB,GAAQmK,KAAKuO,KAC5B,CACA,OAAA43C,CAAQtwD,GACAA,KAAQnJ,KAAKuxB,UACjB,EAAI+6B,EAAMhhD,MAAM,kCAAkCnC,KAEpDnJ,KAAKwgF,MAAM5+E,KAAK,CACduH,OACAmZ,MAAOtiB,KAAKuxB,QAAQpoB,GACpB4E,IAAKuF,KAAKuO,eAEL7hB,KAAKuxB,QAAQpoB,EACtB,CACA,QAAAuB,GACE,MAAM+1E,EAAS,GACf,IAAIC,EAAU,EACd,UAAW,KACTv3E,KACGnJ,KAAKwgF,MACRE,EAAUj9D,KAAK6H,IAAIniB,EAAKtD,OAAQ66E,GAElC,UAAW,KACTv3E,EAAI,MACJmZ,EAAK,IACLvU,KACG/N,KAAKwgF,MACRC,EAAO7+E,KAAK,GAAGuH,EAAKw3E,OAAOD,MAAY3yE,EAAMuU,SAE/C,OAAOm+D,EAAOh0E,KAAK,GACrB,GAwEF5N,EAAQu7E,cApCR,MACE,mBAAOwG,CAAazkE,GAClB,IAAKA,GAA0B,iBAAVA,EACnB,OAAO,KAET+/D,IAAuB,IAAI5vE,OAAO,4FAClC,MAAMuoE,EAAUqH,EAAmBl6E,KAAKma,GACxC,IAAK04D,EACH,OAAO,KAET,MAAMgM,EAAOr3D,SAASqrD,EAAQ,GAAI,IAClC,IAAI1lC,EAAQ3lB,SAASqrD,EAAQ,GAAI,IACjC1lC,EAAQA,GAAS,GAAKA,GAAS,GAAKA,EAAQ,EAAI,EAChD,IAAI2xC,EAAMt3D,SAASqrD,EAAQ,GAAI,IAC/BiM,EAAMA,GAAO,GAAKA,GAAO,GAAKA,EAAM,EACpC,IAAIC,EAAOv3D,SAASqrD,EAAQ,GAAI,IAChCkM,EAAOA,GAAQ,GAAKA,GAAQ,GAAKA,EAAO,EACxC,IAAIC,EAASx3D,SAASqrD,EAAQ,GAAI,IAClCmM,EAASA,GAAU,GAAKA,GAAU,GAAKA,EAAS,EAChD,IAAIp2D,EAASpB,SAASqrD,EAAQ,GAAI,IAClCjqD,EAASA,GAAU,GAAKA,GAAU,GAAKA,EAAS,EAChD,MAAMq2D,EAAwBpM,EAAQ,IAAM,IAC5C,IAAIqM,EAAa13D,SAASqrD,EAAQ,GAAI,IACtCqM,EAAaA,GAAc,GAAKA,GAAc,GAAKA,EAAa,EAChE,IAAIC,EAAe33D,SAASqrD,EAAQ,GAAI,KAAO,EAS/C,OARAsM,EAAeA,GAAgB,GAAKA,GAAgB,GAAKA,EAAe,EAC1C,MAA1BF,GACFF,GAAQG,EACRF,GAAUG,GACyB,MAA1BF,IACTF,GAAQG,EACRF,GAAUG,GAEL,IAAI7tE,KAAKA,KAAK8tE,IAAIP,EAAM1xC,EAAO2xC,EAAKC,EAAMC,EAAQp2D,GAC3D,EA0FF,EAIO,CAAC8oB,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ0gF,4BAA8B1gF,EAAQ2gF,eAAiB3gF,EAAQs9E,kBAAoBt9E,EAAQ8/E,kBAAoB9/E,EAAQsgF,2BAAwB,EACvJ,IAAI7yB,EAAQf,EAAoB,GAChC,MAAM4wB,EACJ,WAAAx9D,GACM3e,KAAK2e,cAAgBw9D,IACvB,EAAI7vB,EAAMpW,aAAa,uCAE3B,CACA,SAAAkmC,CAAUC,GACR,MAAO,MACT,CACA,YAAAvF,CAAaiG,EAASC,GACpB,MAAO,MACT,CACA,qBAAAK,CAAsBN,EAASC,EAASM,EAAYC,GAClD,MAAO,MACT,CACA,OAAAnxD,CAAQ6xD,GAAU,GAAQ,EAE5Bp/E,EAAQs9E,kBAAoBA,EAC5B,MAAMwC,EACJ,WAAAhgE,GACM3e,KAAK2e,cAAgBggE,IACvB,EAAIryB,EAAMpW,aAAa,uCAE3B,CACA,MAAAhzC,CAAO6+B,EAAOE,GACZ,GAAIF,GAAS,GAAKE,GAAU,EAC1B,MAAM,IAAIx2B,MAAM,uBAElB,MAAM42D,EAASriE,KAAK6+E,cAAc98C,EAAOE,GACzC,MAAO,CACLogC,SACA16D,QAAS06D,EAAO6P,WAAW,MAE/B,CACA,KAAA/mD,CAAMk2D,EAAkBt/C,EAAOE,GAC7B,IAAKo/C,EAAiBhf,OACpB,MAAM,IAAI52D,MAAM,2BAElB,GAAIs2B,GAAS,GAAKE,GAAU,EAC1B,MAAM,IAAIx2B,MAAM,uBAElB41E,EAAiBhf,OAAOtgC,MAAQA,EAChCs/C,EAAiBhf,OAAOpgC,OAASA,CACnC,CACA,OAAA7V,CAAQi1D,GACN,IAAKA,EAAiBhf,OACpB,MAAM,IAAI52D,MAAM,2BAElB41E,EAAiBhf,OAAOtgC,MAAQ,EAChCs/C,EAAiBhf,OAAOpgC,OAAS,EACjCo/C,EAAiBhf,OAAS,KAC1Bgf,EAAiB15E,QAAU,IAC7B,CACA,aAAAk3E,CAAc98C,EAAOE,IACnB,EAAIqqB,EAAMpW,aAAa,0CACzB,EAEFr3C,EAAQ8/E,kBAAoBA,EAC5B,MAAMQ,EACJ,WAAAxgE,EAAY,QACV03B,EAAU,KAAI,aACdga,GAAe,IAEXrwD,KAAK2e,cAAgBwgE,IACvB,EAAI7yB,EAAMpW,aAAa,4CAEzBl2C,KAAKq2C,QAAUA,EACfr2C,KAAKqwD,aAAeA,CACtB,CACA,WAAM74C,EAAM,KACVrO,IAEA,IAAKnJ,KAAKq2C,QACR,MAAM,IAAI5qC,MAAM,2HAElB,IAAKtC,EACH,MAAM,IAAIsC,MAAM,gCAElB,MAAMyB,EAAMlN,KAAKq2C,QAAUltC,GAAQnJ,KAAKqwD,aAAe,SAAW,IAC5DgvB,EAAkBr/E,KAAKqwD,aAAe/D,EAAMrX,oBAAoByM,OAAS4K,EAAMrX,oBAAoB4F,KACzG,OAAO76C,KAAKo/E,WAAWlyE,EAAKmyE,GAAiB7sE,OAAMmI,IACjD,MAAM,IAAIlP,MAAM,kBAAkBzL,KAAKqwD,aAAe,UAAY,cAAcnjD,IAAM,GAE1F,CACA,UAAAkyE,CAAWlyE,EAAKmyE,IACd,EAAI/yB,EAAMpW,aAAa,uCACzB,EAEFr3C,EAAQsgF,sBAAwBA,EAChC,MAAMI,EACJ,WAAA5gE,EAAY,QACV03B,EAAU,OAENr2C,KAAK2e,cAAgB4gE,IACvB,EAAIjzB,EAAMpW,aAAa,kDAEzBl2C,KAAKq2C,QAAUA,CACjB,CACA,WAAM7+B,EAAM,SACVkX,IAEA,IAAK1uB,KAAKq2C,QACR,MAAM,IAAI5qC,MAAM,6HAElB,IAAKijB,EACH,MAAM,IAAIjjB,MAAM,oCAElB,MAAMyB,EAAM,GAAGlN,KAAKq2C,UAAU3nB,IAC9B,OAAO1uB,KAAKo/E,WAAWlyE,GAAKsF,OAAMmI,IAChC,MAAM,IAAIlP,MAAM,gCAAgCyB,IAAM,GAE1D,CACA,UAAAkyE,CAAWlyE,IACT,EAAIo/C,EAAMpW,aAAa,uCACzB,EAEFr3C,EAAQ0gF,4BAA8BA,EACtC,MAAMC,EACJ,WAAA7gE,GACM3e,KAAK2e,cAAgB6gE,IACvB,EAAIlzB,EAAMpW,aAAa,oCAE3B,CACA,MAAAhzC,CAAO6+B,EAAOE,EAAQq/C,GAAiB,GACrC,GAAIv/C,GAAS,GAAKE,GAAU,EAC1B,MAAM,IAAIx2B,MAAM,0BAElB,MAAM0yE,EAAMn+E,KAAKy/E,WAAW,WAQ5B,OAPAtB,EAAIz9D,aAAa,UAAW,OACvB4gE,IACHnD,EAAIz9D,aAAa,QAAS,GAAGqhB,OAC7Bo8C,EAAIz9D,aAAa,SAAU,GAAGuhB,QAEhCk8C,EAAIz9D,aAAa,sBAAuB,QACxCy9D,EAAIz9D,aAAa,UAAW,OAAOqhB,KAASE,KACrCk8C,CACT,CACA,aAAAxmE,CAAc5K,GACZ,GAAoB,iBAATA,EACT,MAAM,IAAItB,MAAM,4BAElB,OAAOzL,KAAKy/E,WAAW1yE,EACzB,CACA,UAAA0yE,CAAW1yE,IACT,EAAIu/C,EAAMpW,aAAa,uCACzB,EAEFr3C,EAAQ2gF,eAAiBA,CAAc,EAIhC,CAAC9rC,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQkmE,oBAAiB,EACzB,IAAIzY,EAAQf,EAAoB,GAChC,MAAMg2B,EAAO,WACPC,EAAY,WACZC,EAAW,MAyFjB5iF,EAAQkmE,eAxFR,MACE,WAAApmD,CAAY+iE,GACV1hF,KAAK2hF,GAAKD,EAAc,WAAPA,EAAoBH,EACrCvhF,KAAK4hF,GAAKF,EAAc,WAAPA,EAAoBH,CACvC,CACA,MAAA/mD,CAAOre,GACL,IAAIyI,EAAM/e,EACV,GAAqB,iBAAVsW,EAAoB,CAC7ByI,EAAO,IAAI+E,WAA0B,EAAfxN,EAAMtW,QAC5BA,EAAS,EACT,QAASgD,EAAI,EAAGovC,EAAK97B,EAAMtW,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC9C,MAAM8wC,EAAOx9B,EAAM6M,WAAWngB,GAC1B8wC,GAAQ,IACV/0B,EAAK/e,KAAY8zC,GAEjB/0B,EAAK/e,KAAY8zC,IAAS,EAC1B/0B,EAAK/e,KAAmB,IAAP8zC,EAErB,CACF,KAAO,MAAI,EAAI2S,EAAMxU,eAAe37B,GAIlC,MAAM,IAAI1Q,MAAM,gFAHhBmZ,EAAOzI,EAAMlP,QACbpH,EAAS+e,EAAKiG,UAGhB,CACA,MAAMg3D,EAAch8E,GAAU,EACxBi8E,EAAaj8E,EAAuB,EAAdg8E,EACtBE,EAAa,IAAIn6B,YAAYhjC,EAAKmG,OAAQ,EAAG82D,GACnD,IAAIG,EAAK,EACP3+E,EAAK,EACHs+E,EAAK3hF,KAAK2hF,GACZC,EAAK5hF,KAAK4hF,GACZ,MAAMK,EAAK,WACTC,EAAK,UACDC,EAASF,MACbG,EAASF,MACX,QAASr5E,EAAI,EAAGA,EAAIg5E,EAAah5E,IACvB,EAAJA,GACFm5E,EAAKD,EAAWl5E,GAChBm5E,EAAKA,EAAKC,EAAKT,EAAYQ,EAAKG,EAASV,EACzCO,EAAKA,GAAM,GAAKA,IAAO,GACvBA,EAAKA,EAAKE,EAAKV,EAAYQ,EAAKI,EAASX,EACzCE,GAAMK,EACNL,EAAKA,GAAM,GAAKA,IAAO,GACvBA,EAAU,EAALA,EAAS,aAEdt+E,EAAK0+E,EAAWl5E,GAChBxF,EAAKA,EAAK4+E,EAAKT,EAAYn+E,EAAK8+E,EAASV,EACzCp+E,EAAKA,GAAM,GAAKA,IAAO,GACvBA,EAAKA,EAAK6+E,EAAKV,EAAYn+E,EAAK++E,EAASX,EACzCG,GAAMv+E,EACNu+E,EAAKA,GAAM,GAAKA,IAAO,GACvBA,EAAU,EAALA,EAAS,YAIlB,OADAI,EAAK,EACGF,GACN,KAAK,EACHE,GAAMp9D,EAAmB,EAAdi9D,EAAkB,IAAM,GACrC,KAAK,EACHG,GAAMp9D,EAAmB,EAAdi9D,EAAkB,IAAM,EACrC,KAAK,EACHG,GAAMp9D,EAAmB,EAAdi9D,GACXG,EAAKA,EAAKC,EAAKT,EAAYQ,EAAKG,EAASV,EACzCO,EAAKA,GAAM,GAAKA,IAAO,GACvBA,EAAKA,EAAKE,EAAKV,EAAYQ,EAAKI,EAASX,EACvB,EAAdI,EACFF,GAAMK,EAENJ,GAAMI,EAGZhiF,KAAK2hF,GAAKA,EACV3hF,KAAK4hF,GAAKA,CACZ,CACA,SAAA1c,GACE,IAAIyc,EAAK3hF,KAAK2hF,GACZC,EAAK5hF,KAAK4hF,GAQZ,OAPAD,GAAMC,IAAO,EACbD,EAAU,WAALA,EAAkBH,EAAiB,MAALG,EAAcF,EACjDG,EAAU,WAALA,EAAkBJ,GAAsC,YAAxBI,GAAM,GAAKD,IAAO,IAAmBH,KAAe,GACzFG,GAAMC,IAAO,EACbD,EAAU,UAALA,EAAkBH,EAAiB,MAALG,EAAcF,EACjDG,EAAU,WAALA,EAAkBJ,GAAsC,YAAxBI,GAAM,GAAKD,IAAO,IAAmBH,KAAe,GACzFG,GAAMC,IAAO,GACLD,IAAO,GAAGj3E,SAAS,IAAIssC,SAAS,EAAG,MAAQ4qC,IAAO,GAAGl3E,SAAS,IAAIssC,SAAS,EAAG,IACxF,EAEqC,EAIhC,CAACtD,EAAyB70C,EAAS0sD,KA9xL1C,MAkyLAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQqgE,WAAargE,EAAQ6iE,oBAAiB,EAC9C,IAAIpV,EAAQf,EAAoB,GAE9B,cAuMF1sD,EAAQqgE,WAxMR,MAEE,WAAAvgD,EAAY,cACV6qB,EAAgBzqC,WAAW0Y,SAAQ,aACnCktB,EAAe,OAHjB,oBAAe,IAAIi1B,KAKjB55D,KAAK4+E,UAAYp1C,EACjBxpC,KAAKqiF,gBAAkB,IAAIzoB,IAC3B55D,KAAK2kC,aAAe,KACpB3kC,KAAKsiF,gBAAkB,GACvBtiF,KAAKuiF,eAAiB,CACxB,CACA,iBAAAC,CAAkBC,GAChBziF,KAAKqiF,gBAAgBz6D,IAAI66D,GACzBziF,KAAK4+E,UAAU8D,MAAM96D,IAAI66D,EAC3B,CACA,oBAAAE,CAAqBF,GACnBziF,KAAKqiF,gBAAgBhwD,OAAOowD,GAC5BziF,KAAK4+E,UAAU8D,MAAMrwD,OAAOowD,EAC9B,CACA,UAAAG,CAAWC,GACJ7iF,KAAK2kC,eACR3kC,KAAK2kC,aAAe3kC,KAAK4+E,UAAUjnE,cAAc,SACjD3X,KAAK4+E,UAAUjX,gBAAgB7mC,qBAAqB,QAAQ,GAAGnV,OAAO3rB,KAAK2kC,eAE7E,MAAMm+C,EAAa9iF,KAAK2kC,aAAao+C,MACrCD,EAAWF,WAAWC,EAAMC,EAAWE,SAASn9E,OAClD,CACA,KAAA+I,GACE,UAAW6zE,KAAkBziF,KAAKqiF,gBAChCriF,KAAK4+E,UAAU8D,MAAMrwD,OAAOowD,GAE9BziF,KAAKqiF,gBAAgBzzE,QACrB,aAAA5O,KAAK,GAAa4O,QACd5O,KAAK2kC,eACP3kC,KAAK2kC,aAAa7d,SAClB9mB,KAAK2kC,aAAe,KAExB,CACA,oBAAMs+C,CAAe53E,GACnB,GAAKA,IAAQ,aAAArL,KAAK,GAAa49D,IAAIvyD,EAAK63E,YAIxC,IADA,EAAI52B,EAAMtW,SAASh2C,KAAKqvD,gBAAiB,qEACrCrvD,KAAKmjF,0BAAT,CACE,MAAM,WACJD,EAAU,IACVtiF,EAAG,MACHgX,GACEvM,EACE+3E,EAAW,IAAIC,SAASH,EAAYtiF,EAAKgX,GAC/C5X,KAAKwiF,kBAAkBY,GACvB,UACQA,EAAStxE,OACf,aAAA9R,KAAK,GAAa4nB,IAAIs7D,EACxB,CAAE,OACA,EAAI52B,EAAMhhD,MAAM,4BAA4BD,EAAKi4E,oEACjDtjF,KAAK2iF,qBAAqBS,EAC5B,CAEF,MACA,EAAI92B,EAAMpW,aAAa,gEACzB,CACA,UAAM9zB,CAAKo/C,GACT,GAAIA,EAAK+hB,UAAY/hB,EAAKgiB,cAAgBhiB,EAAKiiB,eAC7C,OAGF,GADAjiB,EAAK+hB,UAAW,EACZ/hB,EAAKiiB,eAEP,kBADMzjF,KAAKijF,eAAezhB,EAAKiiB,gBAGjC,GAAIzjF,KAAKmjF,0BAA2B,CAClC,MAAMV,EAAiBjhB,EAAKkiB,uBAC5B,GAAIjB,EAAgB,CAClBziF,KAAKwiF,kBAAkBC,GACvB,UACQA,EAAepyD,MACvB,CAAE,MAAOopB,GAGP,MAFA,EAAI6S,EAAMhhD,MAAM,wBAAwBm3E,EAAekB,aAAalqC,OACpE+nB,EAAKnS,iBAAkB,EACjB5V,CACR,CACF,CACA,MACF,CACA,MAAMopC,EAAOrhB,EAAKoiB,qBAClB,GAAIf,EAAM,CAER,GADA7iF,KAAK4iF,WAAWC,GACZ7iF,KAAK6jF,2BACP,aAEI,IAAIx/E,SAAQD,IAChB,MAAM+P,EAAUnU,KAAK8jF,sBAAsB1/E,GAC3CpE,KAAK+jF,sBAAsBviB,EAAMrtD,EAAQ,GAE7C,CACF,CACA,6BAAIgvE,GACF,MAAMa,IAAahkF,KAAK4+E,WAAW8D,MACnC,SAAWp2B,EAAMtT,QAAQh5C,KAAM,4BAA6BgkF,EAC9D,CACA,8BAAIH,GACF,IAAII,GAAY,EAMhB,OALI33B,EAAMpU,UAEsB,oBAAd92B,WAA6B,iCAAiC7W,KAAK6W,UAAUC,cAD7F4iE,GAAY,IAId,EAAW33B,EAAMtT,QAAQh5C,KAAM,6BAA8BikF,EAC/D,CACA,qBAAAH,CAAsBh1E,GASpB,MAAM,gBACJwzE,GACEtiF,KACEmU,EAAU,CACdvP,MAAM,EACNw0D,SAbF,WAGE,KAFA,EAAI9M,EAAMtW,SAAS7hC,EAAQvP,KAAM,6CACjCuP,EAAQvP,MAAO,EACR09E,EAAgBz8E,OAAS,GAAKy8E,EAAgB,GAAG19E,MAAM,CAC5D,MAAMs/E,EAAe5B,EAAgB15E,QACrCsR,WAAWgqE,EAAap1E,SAAU,EACpC,CACF,EAOEA,YAGF,OADAwzE,EAAgB1gF,KAAKuS,GACdA,CACT,CACA,iBAAIgwE,GACF,MAAMC,EAAW9qE,KAAK,49CACtB,SAAWgzC,EAAMtT,QAAQh5C,KAAM,gBAAiBokF,EAClD,CACA,qBAAAL,CAAsBviB,EAAMrtD,GAC1B,SAASkwE,EAAMz/D,EAAM0/D,GACnB,OAAO1/D,EAAKoE,WAAWs7D,IAAW,GAAK1/D,EAAKoE,WAAWs7D,EAAS,IAAM,GAAK1/D,EAAKoE,WAAWs7D,EAAS,IAAM,EAAkC,IAA9B1/D,EAAKoE,WAAWs7D,EAAS,EACzI,CACA,SAASC,EAAat1E,EAAGq1E,EAAQx9D,EAAQ09D,GAGvC,OAFev1E,EAAEsa,UAAU,EAAG+6D,GAEdE,EADDv1E,EAAEsa,UAAU+6D,EAASx9D,EAEtC,CACA,IAAIje,EAAGovC,EACP,MAAMoqB,EAASriE,KAAK4+E,UAAUjnE,cAAc,UAC5C0qD,EAAOtgC,MAAQ,EACfsgC,EAAOpgC,OAAS,EAChB,MAAM9I,EAAMkpC,EAAO6P,WAAW,MAC9B,IAAIuS,EAAS,EAgBb,MAAMlC,EAAiB,KAAKjvE,KAAKuO,QAAQ7hB,KAAKuiF,mBAC9C,IAAI39D,EAAO5kB,KAAKmkF,cAEhBv/D,EAAO2/D,EAAa3/D,EADG,IACmB29D,EAAe18E,OAAQ08E,GACjE,MACMmC,EAAa,WACnB,IAAIn2D,EAAW81D,EAAMz/D,EAFO,IAG5B,IAAK/b,EAAI,EAAGovC,EAAKsqC,EAAe18E,OAAS,EAAGgD,EAAIovC,EAAIpvC,GAAK,EACvD0lB,EAAWA,EAAWm2D,EAAaL,EAAM9B,EAAgB15E,GAAK,EAE5DA,EAAI05E,EAAe18E,SACrB0oB,EAAWA,EAAWm2D,EAAaL,EAAM9B,EAAiB,MAAO15E,GAAK,GAExE+b,EAAO2/D,EAAa3/D,EATQ,GASmB,GAAG,EAAI0nC,EAAMrT,UAAU1qB,IACtE,MACMs0D,EAAO,4BAA4BN,wCADI90D,KAAK7I,QAElD5kB,KAAK4iF,WAAWC,GAChB,MAAMjiD,EAAM5gC,KAAK4+E,UAAUjnE,cAAc,OACzCipB,EAAIhpB,MAAM2iE,WAAa,SACvB35C,EAAIhpB,MAAMmqB,MAAQnB,EAAIhpB,MAAMqqB,OAAS,OACrCrB,EAAIhpB,MAAMyqB,SAAW,WACrBzB,EAAIhpB,MAAM4tB,IAAM5E,EAAIhpB,MAAM4f,KAAO,MACjC,UAAWruB,IAAQ,CAACq4D,EAAK0hB,WAAYX,GAAiB,CACpD,MAAMjI,EAAOt6E,KAAK4+E,UAAUjnE,cAAc,QAC1C2iE,EAAKpjE,YAAc,KACnBojE,EAAK1iE,MAAM+sE,WAAax7E,EACxBy3B,EAAIjV,OAAO2uD,EACb,CACAt6E,KAAK4+E,UAAU75E,KAAK4mB,OAAOiV,GA3C3B,SAASgkD,EAAYz7E,EAAM2F,GACzB,KAAM21E,EAAS,GAGb,OAFA,EAAIn4B,EAAMhhD,MAAM,qCAChBwD,IAGFqqB,EAAIqoC,KAAO,QAAUr4D,EACrBgwB,EAAI0rD,SAAS,IAAK,EAAG,IACH1rD,EAAIm5C,aAAa,EAAG,EAAG,EAAG,GAC9B1tD,KAAK,GAAK,EACtB9V,IAGFoL,WAAW0qE,EAAYxiE,KAAK,KAAMjZ,EAAM2F,GAC1C,CA8BA81E,CAAYrC,GAAgB,KAC1B3hD,EAAI9Z,SACJ3S,EAAQilD,UAAU,GAEtB,GAyFFv6D,EAAQ6iE,eAtFR,MACE,WAAA/iD,CAAYmmE,GAAgB,gBAC1Bj9B,GAAkB,EAAI,gBACtBwH,GAAkB,EAAK,aACvBJ,GAAe,EAAK,YACpBqS,EAAc,OAEdthE,KAAK+kF,eAAiBzlF,OAAO4D,OAAO,MACpC,UAAW2F,KAAKi8E,EACd9kF,KAAK6I,GAAKi8E,EAAej8E,GAE3B7I,KAAK6nD,iBAAsC,IAApBA,EACvB7nD,KAAKqvD,iBAAsC,IAApBA,EACvBrvD,KAAKivD,cAAgC,IAAjBA,EACpBjvD,KAAKglF,aAAe1jB,CACtB,CACA,oBAAAoiB,GACE,IAAK1jF,KAAK4kB,MAAQ5kB,KAAKqvD,gBACrB,OAAO,KAET,IAAIozB,EACJ,GAAKziF,KAAKilF,YAEH,CACL,MAAMC,EAAM,CACVC,OAAQnlF,KAAKilF,YAAYG,YAEvBplF,KAAKilF,YAAYI,cACnBH,EAAIttE,MAAQ,WAAW5X,KAAKilF,YAAYI,kBAE1C5C,EAAiB,IAAIY,SAASrjF,KAAKilF,YAAYN,WAAY3kF,KAAK4kB,KAAMsgE,EACxE,MATEzC,EAAiB,IAAIY,SAASrjF,KAAKkjF,WAAYljF,KAAK4kB,KAAM,CAAC,GAW7D,OADA5kB,KAAKglF,eAAehlF,MACbyiF,CACT,CACA,kBAAAmB,GACE,IAAK5jF,KAAK4kB,MAAQ5kB,KAAKqvD,gBACrB,OAAO,KAET,MAAMzqC,GAAO,EAAI0nC,EAAMnW,eAAen2C,KAAK4kB,MACrC1X,EAAM,YAAYlN,KAAKslF,mBAAmB73D,KAAK7I,OACrD,IAAIi+D,EACJ,GAAK7iF,KAAKilF,YAEH,CACL,IAAIC,EAAM,gBAAgBllF,KAAKilF,YAAYG,cACvCplF,KAAKilF,YAAYI,cACnBH,GAAO,uBAAuBllF,KAAKilF,YAAYI,mBAEjDxC,EAAO,4BAA4B7iF,KAAKilF,YAAYN,eAAeO,QAAUh4E,IAC/E,MAPE21E,EAAO,4BAA4B7iF,KAAKkjF,mBAAmBh2E,KAS7D,OADAlN,KAAKglF,eAAehlF,KAAMkN,GACnB21E,CACT,CACA,gBAAA0C,CAAiB7uB,EAAM8uB,GACrB,QAAuC,IAAnCxlF,KAAK+kF,eAAeS,GACtB,OAAOxlF,KAAK+kF,eAAeS,GAE7B,IAAIC,EACJ,IACEA,EAAO/uB,EAAKj2D,IAAIT,KAAKkjF,WAAa,SAAWsC,EAC/C,CAAE,MAAO/rC,GACP,IAAKz5C,KAAKivD,aACR,MAAMxV,EAGR,OADA,EAAI6S,EAAMhhD,MAAM,2CAA2CmuC,OACpDz5C,KAAK+kF,eAAeS,GAAa,SAAU38D,EAAGkE,GAAO,CAC9D,CACA,GAAI/sB,KAAK6nD,iBAAmByE,EAAMxX,YAAY+S,gBAAiB,CAC7D,MAAM69B,EAAQ,GACd,UAAW5uD,KAAW2uD,EAAM,CAC1B,MAAMx6E,OAAwB,IAAjB6rB,EAAQ7rB,KAAqB6rB,EAAQ7rB,KAAKwB,KAAK,KAAO,GACnEi5E,EAAM9jF,KAAK,KAAMk1B,EAAQq4C,IAAK,IAAKlkE,EAAM,OAC3C,CACA,OAAOjL,KAAK+kF,eAAeS,GAAa,IAAInqE,SAAS,IAAK,OAAQqqE,EAAMj5E,KAAK,IAC/E,CACA,OAAOzM,KAAK+kF,eAAeS,GAAa,SAAU38D,EAAGkE,GACnD,UAAW+J,KAAW2uD,EACA,UAAhB3uD,EAAQq4C,MACVr4C,EAAQ7rB,KAAO,CAAC8hB,GAAOA,IAEzBlE,EAAEiO,EAAQq4C,KAAKpvE,MAAM8oB,EAAGiO,EAAQ7rB,KAEpC,CACF,EAEqC,EAIhC,CAACyoC,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQivD,4BAA8BjvD,EAAQ+uD,kBAAoB/uD,EAAQ2uD,kBAAoB3uD,EAAQ6uD,2BAAwB,EAC9H,IAAIquB,EAAgBxwB,EAAoB,GAC5BA,EAAoB,GAGhC,MAAMuzB,EAAY,SAAU5xE,GAC1B,OAAO,IAAI7I,SAAQ,CAACD,EAASE,KAChB,oBAAQ,KAChBqhF,SAASz4E,GAAK,CAAClD,EAAO4a,MACnB5a,GAAU4a,EAIdxgB,EAAQ,IAAIulB,WAAW/E,IAHrBtgB,EAAO,IAAImH,MAAMzB,GAGU,GAC7B,GAEN,EACA,MAAM4jD,UAA0BmuB,EAAcI,mBAC9Ct9E,EAAQ+uD,kBAAoBA,EAC5B,MAAMJ,UAA0BuuB,EAAc4C,kBAC5C,aAAAE,CAAc98C,EAAOE,GAEnB,OADe,oBAAQ,MACT2jD,aAAa7jD,EAAOE,EACpC,EAEFpjC,EAAQ2uD,kBAAoBA,EAC5B,MAAME,UAA8BquB,EAAcoD,sBAChD,UAAAC,CAAWlyE,EAAKmyE,GACd,OAAOP,EAAU5xE,GAAKrI,MAAK+f,IAClB,CACL06D,SAAU16D,EACVy6D,qBAGN,EAEFxgF,EAAQ6uD,sBAAwBA,EAChC,MAAMI,UAAoCiuB,EAAcwD,4BACtD,UAAAH,CAAWlyE,GACT,OAAO4xE,EAAU5xE,EACnB,EAEFrO,EAAQivD,4BAA8BA,CAA2B,EAI1D,CAACpa,EAAyB70C,EAAS0sD,KA/nM1C,YAmoMAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ4kE,oBAAiB,EACzB,IAAInX,EAAQf,EAAoB,GAC5BiB,EAAiBjB,EAAoB,GACrCs6B,EAAkBt6B,EAAoB,IACtCu6B,EAAev6B,EAAoB,IACvC,MAEMw6B,EAAiB,KAIjBC,EAAoB,GAmG1B,MAAMC,EACJ,WAAAtnE,CAAYsxC,GACVjwD,KAAKiwD,cAAgBA,EACrBjwD,KAAKkmF,MAAQ5mF,OAAO4D,OAAO,KAC7B,CACA,SAAAijF,CAAUvwE,EAAImsB,EAAOE,GACnB,IAAImkD,EAQJ,YAPuB,IAAnBpmF,KAAKkmF,MAAMtwE,IACbwwE,EAAcpmF,KAAKkmF,MAAMtwE,GACzB5V,KAAKiwD,cAAc9kC,MAAMi7D,EAAarkD,EAAOE,KAE7CmkD,EAAcpmF,KAAKiwD,cAAc/sD,OAAO6+B,EAAOE,GAC/CjiC,KAAKkmF,MAAMtwE,GAAMwwE,GAEZA,CACT,CACA,OAAOxwE,UACE5V,KAAKkmF,MAAMtwE,EACpB,CACA,KAAAhH,GACE,UAAWgH,KAAM5V,KAAKkmF,MAAO,CAC3B,MAAME,EAAcpmF,KAAKkmF,MAAMtwE,GAC/B5V,KAAKiwD,cAAc7jC,QAAQg6D,UACpBpmF,KAAKkmF,MAAMtwE,EACpB,CACF,EAEF,SAASywE,EAAyBltD,EAAKmtD,EAAQC,EAAMC,EAAMC,EAAMC,EAAMC,EAAOC,EAAOC,EAAOC,GAC1F,MAAOhnF,EAAG0e,EAAGqK,EAAGtoB,EAAGipE,EAAIC,IAAM,EAAIjd,EAAeiuB,qBAAqBthD,GACrE,GAAU,IAAN3a,GAAiB,IAANqK,EAAS,CACtB,MAAMk+D,EAAMJ,EAAQ7mF,EAAI0pE,EAClBwd,EAAOvjE,KAAKonD,MAAMkc,GAClBE,EAAML,EAAQrmF,EAAIkpE,EAClByd,EAAOzjE,KAAKonD,MAAMoc,GAClBE,GAAOR,EAAQE,GAAS/mF,EAAI0pE,EAC5B4d,EAAS3jE,KAAKunC,IAAIvnC,KAAKonD,MAAMsc,GAAOH,IAAS,EAC7CK,GAAOT,EAAQE,GAASvmF,EAAIkpE,EAC5B6d,EAAU7jE,KAAKunC,IAAIvnC,KAAKonD,MAAMwc,GAAOH,IAAS,EAIpD,OAHA/tD,EAAIouD,aAAa9jE,KAAK+jE,KAAK1nF,GAAI,EAAG,EAAG2jB,KAAK+jE,KAAKjnF,GAAIymF,EAAME,GACzD/tD,EAAIk5C,UAAUiU,EAAQC,EAAMC,EAAMC,EAAMC,EAAM,EAAG,EAAGU,EAAQE,GAC5DnuD,EAAIouD,aAAaznF,EAAG0e,EAAGqK,EAAGtoB,EAAGipE,EAAIC,GAC1B,CAAC2d,EAAQE,EAClB,CACA,GAAU,IAANxnF,GAAiB,IAANS,EAAS,CACtB,MAAMwmF,EAAMH,EAAQ/9D,EAAI2gD,EAClBwd,EAAOvjE,KAAKonD,MAAMkc,GAClBE,EAAMN,EAAQnoE,EAAIirD,EAClByd,EAAOzjE,KAAKonD,MAAMoc,GAClBE,GAAOP,EAAQE,GAASj+D,EAAI2gD,EAC5B4d,EAAS3jE,KAAKunC,IAAIvnC,KAAKonD,MAAMsc,GAAOH,IAAS,EAC7CK,GAAOV,EAAQE,GAASroE,EAAIirD,EAC5B6d,EAAU7jE,KAAKunC,IAAIvnC,KAAKonD,MAAMwc,GAAOH,IAAS,EAIpD,OAHA/tD,EAAIouD,aAAa,EAAG9jE,KAAK+jE,KAAKhpE,GAAIiF,KAAK+jE,KAAK3+D,GAAI,EAAGm+D,EAAME,GACzD/tD,EAAIk5C,UAAUiU,EAAQC,EAAMC,EAAMC,EAAMC,EAAM,EAAG,EAAGY,EAASF,GAC7DjuD,EAAIouD,aAAaznF,EAAG0e,EAAGqK,EAAGtoB,EAAGipE,EAAIC,GAC1B,CAAC6d,EAASF,EACnB,CAIA,OAHAjuD,EAAIk5C,UAAUiU,EAAQC,EAAMC,EAAMC,EAAMC,EAAMC,EAAOC,EAAOC,EAAOC,GAG5D,CAFQrjE,KAAKktD,MAAM7wE,EAAG0e,GAEZqoE,EADFpjE,KAAKktD,MAAM9nD,EAAGtoB,GACIumF,EACnC,CAmIA,MAAMW,EACJ,WAAA9oE,CAAYojB,EAAOE,GACjBjiC,KAAK0nF,cAAe,EACpB1nF,KAAK2nF,SAAW,EAChB3nF,KAAK4nF,cAAgB,EACrB5nF,KAAK6nF,WAAav7B,EAAM1X,gBACxB50C,KAAK8nF,gBAAkB,EACvB9nF,KAAK+nF,WAAaz7B,EAAMvX,qBACxB/0C,KAAKgoF,QAAU,EACfhoF,KAAKZ,EAAI,EACTY,KAAKgF,EAAI,EACThF,KAAKioF,MAAQ,EACbjoF,KAAKkoF,MAAQ,EACbloF,KAAKmoF,YAAc,EACnBnoF,KAAKooF,YAAc,EACnBpoF,KAAKqoF,WAAa,EAClBroF,KAAKsoF,kBAAoBh8B,EAAMxY,kBAAkBkI,KACjDh8C,KAAKuoF,SAAW,EAChBvoF,KAAKwoF,UAAY,UACjBxoF,KAAKyoF,YAAc,UACnBzoF,KAAK0oF,aAAc,EACnB1oF,KAAK2oF,UAAY,EACjB3oF,KAAK4oF,YAAc,EACnB5oF,KAAK6oF,UAAY,EACjB7oF,KAAK8oF,YAAc,KACnB9oF,KAAK+oF,aAAe,OACpB/oF,KAAKgpF,uBAAuB,CAAC,EAAG,EAAGjnD,EAAOE,GAC5C,CACA,KAAAl8B,GACE,MAAMA,EAAQzG,OAAO4D,OAAOlD,MAE5B,OADA+F,EAAMkjF,QAAUjpF,KAAKipF,QAAQh8E,QACtBlH,CACT,CACA,eAAAmjF,CAAgB9pF,EAAG4F,GACjBhF,KAAKZ,EAAIA,EACTY,KAAKgF,EAAIA,CACX,CACA,gBAAAmkF,CAAiB7mC,EAAWljD,EAAG4F,IAC5B5F,EAAG4F,GAAKsnD,EAAMv2C,KAAK8yC,eAAe,CAACzpD,EAAG4F,GAAIs9C,GAC3CtiD,KAAKopF,KAAO3lE,KAAKE,IAAI3jB,KAAKopF,KAAMhqF,GAChCY,KAAKqpF,KAAO5lE,KAAKE,IAAI3jB,KAAKqpF,KAAMrkF,GAChChF,KAAKspF,KAAO7lE,KAAK6H,IAAItrB,KAAKspF,KAAMlqF,GAChCY,KAAKupF,KAAO9lE,KAAK6H,IAAItrB,KAAKupF,KAAMvkF,EAClC,CACA,gBAAAwkF,CAAiBlnC,EAAWmH,GAC1B,MAAMjR,EAAK8T,EAAMv2C,KAAK8yC,eAAeY,EAAMnH,GACrC7J,EAAK6T,EAAMv2C,KAAK8yC,eAAeY,EAAKx8C,MAAM,GAAIq1C,GACpDtiD,KAAKopF,KAAO3lE,KAAKE,IAAI3jB,KAAKopF,KAAM5wC,EAAG,GAAIC,EAAG,IAC1Cz4C,KAAKqpF,KAAO5lE,KAAKE,IAAI3jB,KAAKqpF,KAAM7wC,EAAG,GAAIC,EAAG,IAC1Cz4C,KAAKspF,KAAO7lE,KAAK6H,IAAItrB,KAAKspF,KAAM9wC,EAAG,GAAIC,EAAG,IAC1Cz4C,KAAKupF,KAAO9lE,KAAK6H,IAAItrB,KAAKupF,KAAM/wC,EAAG,GAAIC,EAAG,GAC5C,CACA,uBAAAgxC,CAAwBnnC,EAAWmG,GACjC6D,EAAMv2C,KAAKyyC,YAAYlG,EAAWmG,GAClCzoD,KAAKopF,KAAO3lE,KAAKE,IAAI3jB,KAAKopF,KAAM3gC,EAAO,IACvCzoD,KAAKspF,KAAO7lE,KAAK6H,IAAItrB,KAAKspF,KAAM7gC,EAAO,IACvCzoD,KAAKqpF,KAAO5lE,KAAKE,IAAI3jB,KAAKqpF,KAAM5gC,EAAO,IACvCzoD,KAAKupF,KAAO9lE,KAAK6H,IAAItrB,KAAKupF,KAAM9gC,EAAO,GACzC,CACA,qBAAAihC,CAAsBpnC,EAAW4H,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIhC,GAC/D,MAAMkhC,EAAMr9B,EAAMv2C,KAAKk0C,kBAAkBC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,GACrE,GAAIhC,EAKF,OAJAA,EAAO,GAAKhlC,KAAKE,IAAI8kC,EAAO,GAAIkhC,EAAI,GAAIA,EAAI,IAC5ClhC,EAAO,GAAKhlC,KAAK6H,IAAIm9B,EAAO,GAAIkhC,EAAI,GAAIA,EAAI,IAC5ClhC,EAAO,GAAKhlC,KAAKE,IAAI8kC,EAAO,GAAIkhC,EAAI,GAAIA,EAAI,SAC5ClhC,EAAO,GAAKhlC,KAAK6H,IAAIm9B,EAAO,GAAIkhC,EAAI,GAAIA,EAAI,KAG9C3pF,KAAKwpF,iBAAiBlnC,EAAWqnC,EACnC,CACA,kBAAAC,CAAmBC,EAAWhE,EAAgBiE,SAAS9tC,KAAMsG,EAAY,MACvE,MAAMqnC,EAAM,CAAC3pF,KAAKopF,KAAMppF,KAAKqpF,KAAMrpF,KAAKspF,KAAMtpF,KAAKupF,MACnD,GAAIM,IAAahE,EAAgBiE,SAAS7tC,OAAQ,CAC3CqG,IACH,EAAIgK,EAAMpW,aAAa,+CAEzB,MAAMghB,EAAQ5K,EAAMv2C,KAAKozC,8BAA8B7G,GACjDynC,EAAa7yB,EAAM,GAAKl3D,KAAK6oF,UAAY,EACzCmB,EAAa9yB,EAAM,GAAKl3D,KAAK6oF,UAAY,EAC/Cc,EAAI,IAAMI,EACVJ,EAAI,IAAMK,EACVL,EAAI,IAAMI,EACVJ,EAAI,IAAMK,CACZ,CACA,OAAOL,CACT,CACA,kBAAAM,GACE,MAAMvgC,EAAY4C,EAAMv2C,KAAK2zC,UAAU1pD,KAAKipF,QAASjpF,KAAK4pF,sBAC1D5pF,KAAKgpF,uBAAuBt/B,GAAa,CAAC,EAAG,EAAG,EAAG,GACrD,CACA,WAAAwgC,GACE,OAAOlqF,KAAKopF,OAASe,GACvB,CACA,sBAAAnB,CAAuBW,GACrB3pF,KAAKipF,QAAUU,EACf3pF,KAAKopF,KAAOe,IACZnqF,KAAKqpF,KAAOc,IACZnqF,KAAKspF,KAAO,EACZtpF,KAAKupF,KAAO,CACd,CACA,yBAAAa,CAA0BP,EAAWhE,EAAgBiE,SAAS9tC,KAAMsG,EAAY,MAC9E,OAAOgK,EAAMv2C,KAAK2zC,UAAU1pD,KAAKipF,QAASjpF,KAAK4pF,mBAAmBC,EAAUvnC,GAC9E,EAEF,SAAS+nC,EAAmBlxD,EAAKmxD,GAC/B,GAAyB,oBAAdC,WAA6BD,aAAmBC,UAEzD,YADApxD,EAAIqxD,aAAaF,EAAS,EAAG,GAG/B,MAAMroD,EAASqoD,EAAQroD,OACrBF,EAAQuoD,EAAQvoD,MACZ0oD,EAAqBxoD,EAAS+jD,EAC9B0E,GAAczoD,EAASwoD,GAAsBzE,EAC7C2E,EAAqC,IAAvBF,EAA2BC,EAAaA,EAAa,EACnEE,EAAezxD,EAAI0xD,gBAAgB9oD,EAAOikD,GAChD,IACE8E,EADEC,EAAS,EAEb,MAAMnqF,EAAM0pF,EAAQ1lE,KACdomE,EAAOJ,EAAahmE,KAC1B,IAAI/b,EAAGghB,EAAGohE,EAAiBC,EAC3B,GAAIZ,EAAQa,OAAS7+B,EAAM3X,UAAU+H,eAAgB,CACnD,MAAM0uC,EAAYxqF,EAAIiqB,WAChBwgE,EAAS,IAAIzjC,YAAYojC,EAAKjgE,OAAQ,EAAGigE,EAAKngE,YAAc,GAC5DygE,EAAmBD,EAAOxlF,OAC1B0lF,EAAcxpD,EAAQ,GAAK,EAC3BypD,EAAQ,WACRC,EAAQn/B,EAAMxX,YAAY4S,eAAiB,WAAa,IAC9D,IAAK7+C,EAAI,EAAGA,EAAI8hF,EAAa9hF,IAAK,CAGhC,IAFAoiF,EAAkBpiF,EAAI6hF,EAAa1E,EAAoByE,EACvDK,EAAU,EACLjhE,EAAI,EAAGA,EAAIohE,EAAiBphE,IAAK,CACpC,MAAM6hE,EAAUN,EAAYL,EAC5B,IAAIzqF,EAAI,EACR,MAAMqrF,EAAOD,EAAUH,EAAcxpD,EAAkB,EAAV2pD,EAAc,EACrDE,GAAsB,EAAPD,EACrB,IAAIE,EAAO,EACPC,EAAU,EACd,KAAOxrF,EAAIsrF,EAActrF,GAAK,EAC5BwrF,EAAUlrF,EAAImqF,KACdM,EAAOP,KAAuB,IAAVgB,EAAgBN,EAAQC,EAC5CJ,EAAOP,KAAuB,GAAVgB,EAAeN,EAAQC,EAC3CJ,EAAOP,KAAuB,GAAVgB,EAAeN,EAAQC,EAC3CJ,EAAOP,KAAuB,GAAVgB,EAAeN,EAAQC,EAC3CJ,EAAOP,KAAuB,EAAVgB,EAAcN,EAAQC,EAC1CJ,EAAOP,KAAuB,EAAVgB,EAAcN,EAAQC,EAC1CJ,EAAOP,KAAuB,EAAVgB,EAAcN,EAAQC,EAC1CJ,EAAOP,KAAuB,EAAVgB,EAAcN,EAAQC,EAE5C,KAAOnrF,EAAIqrF,EAAMrrF,IACF,IAATurF,IACFC,EAAUlrF,EAAImqF,KACdc,EAAO,KAETR,EAAOP,KAAagB,EAAUD,EAAOL,EAAQC,EAC7CI,IAAS,CAEb,CACA,KAAOf,EAAUQ,GACfD,EAAOP,KAAa,EAEtB3xD,EAAIqxD,aAAaI,EAAc,EAAG/hF,EAAIm9E,EACxC,CACF,MAAO,GAAIsE,EAAQa,OAAS7+B,EAAM3X,UAAUiI,WAAY,CAGtD,IAFA/yB,EAAI,EACJqhE,EAAmBnpD,EAAQikD,EAAoB,EAC1Cn9E,EAAI,EAAGA,EAAI6hF,EAAY7hF,IAC1BmiF,EAAKlgE,IAAIlqB,EAAI8oB,SAASqhE,EAAQA,EAASG,IACvCH,GAAUG,EACV/xD,EAAIqxD,aAAaI,EAAc,EAAG/gE,GAClCA,GAAKm8D,EAEHn9E,EAAI8hF,IACNO,EAAmBnpD,EAAQ0oD,EAAqB,EAChDO,EAAKlgE,IAAIlqB,EAAI8oB,SAASqhE,EAAQA,EAASG,IACvC/xD,EAAIqxD,aAAaI,EAAc,EAAG/gE,GAEtC,KAAO,IAAIygE,EAAQa,OAAS7+B,EAAM3X,UAAUgI,UAkB1C,MAAM,IAAIlxC,MAAM,mBAAmB6+E,EAAQa,QAf3C,IAFAF,EAAkBjF,EAClBkF,EAAmBnpD,EAAQkpD,EACtBpiF,EAAI,EAAGA,EAAI8hF,EAAa9hF,IAAK,CAMhC,IALIA,GAAK6hF,IACPO,EAAkBR,EAClBS,EAAmBnpD,EAAQkpD,GAE7BH,EAAU,EACLjhE,EAAIqhE,EAAkBrhE,KACzBmhE,EAAKF,KAAalqF,EAAImqF,KACtBC,EAAKF,KAAalqF,EAAImqF,KACtBC,EAAKF,KAAalqF,EAAImqF,KACtBC,EAAKF,KAAa,IAEpB3xD,EAAIqxD,aAAaI,EAAc,EAAG/hF,EAAIm9E,EACxC,CAGF,CACF,CACA,SAAS+F,EAAmB5yD,EAAKmxD,GAC/B,GAAIA,EAAQxoB,OAEV,YADA3oC,EAAIk5C,UAAUiY,EAAQxoB,OAAQ,EAAG,GAGnC,MAAM7/B,EAASqoD,EAAQroD,OACrBF,EAAQuoD,EAAQvoD,MACZ0oD,EAAqBxoD,EAAS+jD,EAC9B0E,GAAczoD,EAASwoD,GAAsBzE,EAC7C2E,EAAqC,IAAvBF,EAA2BC,EAAaA,EAAa,EACnEE,EAAezxD,EAAI0xD,gBAAgB9oD,EAAOikD,GAChD,IAAI+E,EAAS,EACb,MAAMnqF,EAAM0pF,EAAQ1lE,KACdomE,EAAOJ,EAAahmE,KAC1B,QAAS/b,EAAI,EAAGA,EAAI8hF,EAAa9hF,IAAK,CACpC,MAAMoiF,EAAkBpiF,EAAI6hF,EAAa1E,EAAoByE,IAE3DM,WACE,EAAIjF,EAAakG,4BAA4B,CAC/CprF,MACAmqF,SACAC,OACAjpD,QACAE,OAAQgpD,EACRgB,cAAe,KAEjB9yD,EAAIqxD,aAAaI,EAAc,EAAG/hF,EAAIm9E,EACxC,CACF,CACA,SAASkG,EAAaC,EAAWC,GAC/B,MAAM3lE,EAAa,CAAC,cAAe,YAAa,WAAY,cAAe,YAAa,UAAW,WAAY,aAAc,2BAA4B,OAAQ,UACjK,UAAW+b,KAAY/b,OACO,IAAxB0lE,EAAU3pD,KACZ4pD,EAAQ5pD,GAAY2pD,EAAU3pD,SAGJ,IAA1B2pD,EAAUE,cACZD,EAAQC,YAAYF,EAAUG,eAC9BF,EAAQG,eAAiBJ,EAAUI,eAEvC,CACA,SAASC,EAAkBrzD,GAczB,GAbAA,EAAIszD,YAActzD,EAAIuzD,UAAY,UAClCvzD,EAAIwzD,SAAW,UACfxzD,EAAIyzD,YAAc,EAClBzzD,EAAI0vD,UAAY,EAChB1vD,EAAI0zD,QAAU,OACd1zD,EAAI2zD,SAAW,QACf3zD,EAAI4zD,WAAa,GACjB5zD,EAAI6zD,yBAA2B,cAC/B7zD,EAAIqoC,KAAO,uBACa,IAApBroC,EAAIkzD,cACNlzD,EAAIkzD,YAAY,IAChBlzD,EAAIozD,eAAiB,IAElBjgC,EAAMpU,SAAU,CACnB,MAAM,OACJhyC,GACEizB,EACW,SAAXjzB,GAAgC,KAAXA,IACvBizB,EAAIjzB,OAAS,OAEjB,CACF,CACA,SAAS+mF,EAAqBhiE,EAAOiiE,EAAIC,EAAIC,GAC3C,MAAMvnF,EAASolB,EAAMplB,OACrB,QAASgD,EAAI,EAAGA,EAAIhD,EAAQgD,GAAK,EAAG,CAClC,MAAMwkF,EAAQpiE,EAAMpiB,GACpB,GAAc,IAAVwkF,EACFpiE,EAAMpiB,EAAI,GAAKqkF,EACfjiE,EAAMpiB,EAAI,GAAKskF,EACfliE,EAAMpiB,EAAI,GAAKukF,OACV,GAAIC,EAAQ,IAAK,CACtB,MAAMC,EAAS,IAAMD,EACrBpiE,EAAMpiB,EAAI,GAAKoiB,EAAMpiB,EAAI,GAAKwkF,EAAQH,EAAKI,GAAU,EACrDriE,EAAMpiB,EAAI,GAAKoiB,EAAMpiB,EAAI,GAAKwkF,EAAQF,EAAKG,GAAU,EACrDriE,EAAMpiB,EAAI,GAAKoiB,EAAMpiB,EAAI,GAAKwkF,EAAQD,EAAKE,GAAU,CACvD,CACF,CACF,CACA,SAASC,EAAkBC,EAAUC,EAAWC,GAC9C,MAAM7nF,EAAS2nF,EAAS3nF,OAExB,QAASgD,EAAI,EAAGA,EAAIhD,EAAQgD,GAAK,EAAG,CAClC,MAAMwkF,EAAQK,EAAcA,EAAYF,EAAS3kF,IAAM2kF,EAAS3kF,GAChE4kF,EAAU5kF,GAAK4kF,EAAU5kF,GAAKwkF,EAHlB,mBAGkC,CAChD,CACF,CACA,SAASM,EAAuBH,EAAUC,EAAWC,GACnD,MAAM7nF,EAAS2nF,EAAS3nF,OACxB,QAASgD,EAAI,EAAGA,EAAIhD,EAAQgD,GAAK,EAAG,CAClC,MAAM7D,EAAsB,GAAlBwoF,EAAS3kF,EAAI,GAA4B,IAAlB2kF,EAAS3kF,EAAI,GAA6B,GAAlB2kF,EAAS3kF,EAAI,GACtE4kF,EAAU5kF,GAAK6kF,EAAcD,EAAU5kF,GAAK6kF,EAAY1oF,GAAK,IAAM,EAAIyoF,EAAU5kF,GAAK7D,GAAK,EAC7F,CACF,CAoBA,SAAS4oF,EAAaz0D,EAAK00D,EAAOC,EAAUC,GAC1C,MAAMC,EAAeD,EAAS,GACxBE,EAAeF,EAAS,GACxBG,EAAaH,EAAS,GAAKC,EAC3BG,EAAcJ,EAAS,GAAKE,EACf,IAAfC,GAAoC,IAAhBC,IAxB1B,SAA6BC,EAASN,EAAU/rD,EAAOE,EAAQ8uC,EAASsd,EAAUX,EAAaM,EAAcC,EAAcK,EAAaC,GACtI,MAAMC,IAAgBH,EAChBnB,EAAKsB,EAAcH,EAAS,GAAK,EACjClB,EAAKqB,EAAcH,EAAS,GAAK,EACjCjB,EAAKoB,EAAcH,EAAS,GAAK,EACjCI,EAAwB,eAAZ1d,EAA2B4c,EAAyBJ,EAEhE3gE,EAAYnJ,KAAKE,IAAIse,EAAQxe,KAAKqJ,KADd,QACuCiV,IACjE,QAAS2sD,EAAM,EAAGA,EAAMzsD,EAAQysD,GAAO9hE,EAAW,CAChD,MAAM+hE,EAAclrE,KAAKE,IAAIiJ,EAAWqV,EAASysD,GAC3ClB,EAAWY,EAAQ9b,aAAa0b,EAAeM,EAAaI,GAAOT,EAAeM,GAAcxsD,EAAO4sD,GACvGlB,EAAYK,EAASxb,aAAa0b,EAAcU,EAAMT,EAAclsD,EAAO4sD,GAC7EH,GACFvB,EAAqBO,EAAS5oE,KAAMsoE,EAAIC,EAAIC,GAE9CqB,EAAUjB,EAAS5oE,KAAM6oE,EAAU7oE,KAAM8oE,GACzCI,EAAStD,aAAaiD,EAAWO,EAAcU,EAAMT,EACvD,CACF,CASEW,CAAoBf,EAAMlmF,QAASmmF,EAAUI,EAAYC,EAAaN,EAAM9c,QAAS8c,EAAMQ,SAAUR,EAAMH,YAAaM,EAAcC,EAAcJ,EAAMz2B,QAASy2B,EAAMx2B,SACzKl+B,EAAIipB,OACJjpB,EAAIyzD,YAAc,EAClBzzD,EAAI6zD,yBAA2B,cAC/B7zD,EAAIouD,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GAChCpuD,EAAIk5C,UAAUyb,EAASzrB,OAAQ,EAAG,GAClClpC,EAAIkpB,UACN,CACA,SAASwsC,EAAyBvsC,EAAWwsC,GAC3C,MAAM53B,EAAQ5K,EAAMv2C,KAAKozC,8BAA8B7G,GACvD4U,EAAM,GAAKzzC,KAAKsrE,OAAO73B,EAAM,IAC7BA,EAAM,GAAKzzC,KAAKsrE,OAAO73B,EAAM,IAC7B,MAAM83B,EAAcvrE,KAAKsrE,QAAQhwF,WAAWkwF,kBAAoB,GAAKziC,EAAespB,cAAcC,kBAClG,YAAoB,IAAhB+Y,EACKA,EACE53B,EAAM,IAAM83B,GAAe93B,EAAM,IAAM83B,CAIpD,CACA,MAAME,EAAkB,CAAC,OAAQ,QAAS,UACpCC,EAAmB,CAAC,QAAS,QAAS,SACtCC,EAAc,CAAC,EACfC,EAAU,CAAC,EAyHf,gBAAoB,WAClB,KAAOrvF,KAAKsvF,WAAWzpF,QAAU7F,KAAKuvF,aACpCvvF,KAAKqiD,UAEPriD,KAAKm5B,IAAIkpB,UACLriD,KAAKwvF,oBACPxvF,KAAKm5B,IAAMn5B,KAAKyvF,aAChBzvF,KAAKm5B,IAAIipB,OACTpiD,KAAKm5B,IAAIouD,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GACrCvnF,KAAKm5B,IAAIk5C,UAAUryE,KAAKwvF,kBAAmB,EAAG,GAC9CxvF,KAAKm5B,IAAIkpB,UACTriD,KAAKwvF,kBAAoB,KAE7B,EAgBA,gBAAW,WACT,GAAIxvF,KAAKu4D,WAAY,CACnB,MAAMm3B,EAAc1vF,KAAKkwD,cAAc4mB,aAAa92E,KAAKu4D,WAAWwe,WAAY/2E,KAAKu4D,WAAWH,YAChG,GAAoB,SAAhBs3B,EAAwB,CAC1B,MAAMC,EAAc3vF,KAAKm5B,IAAIjzB,OAC7BlG,KAAKm5B,IAAIjzB,OAASwpF,EAClB1vF,KAAKm5B,IAAIk5C,UAAUryE,KAAKm5B,IAAIkpC,OAAQ,EAAG,GACvCriE,KAAKm5B,IAAIjzB,OAASypF,CACpB,CACF,CACF,EA/JF,IAAMlsB,EAAN,MAAM,EACJ,WAAA9kD,CAAYixE,EAAWn5B,EAAYC,EAAMzG,EAAeC,GAAe,sBACrE6J,EAAqB,mBACrB81B,EAAqB,MACpBv3B,EAAqBC,GAoHxB,qBA6BA,qBAhJEv4D,KAAKm5B,IAAMy2D,EACX5vF,KAAK82B,QAAU,IAAI2wD,EAAiBznF,KAAKm5B,IAAIkpC,OAAOtgC,MAAO/hC,KAAKm5B,IAAIkpC,OAAOpgC,QAC3EjiC,KAAKsvF,WAAa,GAClBtvF,KAAK8vF,YAAc,KACnB9vF,KAAK+vF,eAAgB,EACrB/vF,KAAKyV,IAAM,KACXzV,KAAKgwF,MAAQ,KACbhwF,KAAKy2D,WAAaA,EAClBz2D,KAAK02D,KAAOA,EACZ12D,KAAKiwD,cAAgBA,EACrBjwD,KAAKkwD,cAAgBA,EACrBlwD,KAAKiwF,WAAa,GAClBjwF,KAAKkwF,gBAAkB,KACvBlwF,KAAKmwF,cAAgB,KACrBnwF,KAAKowF,mBAAqB,GAC1BpwF,KAAKqwF,WAAa,EAClBrwF,KAAKswF,WAAa,GAClBtwF,KAAKuwF,aAAe,EACpBvwF,KAAKwwF,UAAY,KACjBxwF,KAAKywF,aAAe,KACpBzwF,KAAK0wF,gBAAiB,EACtB1wF,KAAK6vF,mBAAqBA,GAAsB,GAChD7vF,KAAK+5D,sBAAwBA,EAC7B/5D,KAAK2wF,eAAiB,IAAI1K,EAAejmF,KAAKiwD,eAC9CjwD,KAAK4wF,eAAiB,IAAIt4C,IAC1Bt4C,KAAKs4D,oBAAsBA,EAC3Bt4D,KAAK6wF,cAAgB,EACrB7wF,KAAK8wF,aAAe,EACpB9wF,KAAK+wF,aAAe,EACpB/wF,KAAKu4D,WAAaA,EAClBv4D,KAAKgxF,wBAA0B,EAAE,EAAG,GACpChxF,KAAKixF,2BAA6B,KAClCjxF,KAAKkxF,kBAAoB,IAAI54C,GAC/B,CACA,SAAA/W,CAAU3c,EAAMusE,EAAW,MACzB,MAAoB,iBAATvsE,EACFA,EAAK2xB,WAAW,MAAQv2C,KAAKy2D,WAAWh2D,IAAImkB,GAAQ5kB,KAAK02D,KAAKj2D,IAAImkB,GAEpEusE,CACT,CACA,YAAAztB,EAAa,UACXphB,EAAS,SACT4V,EAAQ,aACR4B,GAAe,EAAK,WACpB1B,EAAa,OAEb,MAAMr2B,EAAQ/hC,KAAKm5B,IAAIkpC,OAAOtgC,MACxBE,EAASjiC,KAAKm5B,IAAIkpC,OAAOpgC,OACzBmvD,EAAiBpxF,KAAKm5B,IAAIuzD,UAIhC,GAHA1sF,KAAKm5B,IAAIuzD,UAAYt0B,GAAc,UACnCp4D,KAAKm5B,IAAIk4D,SAAS,EAAG,EAAGtvD,EAAOE,GAC/BjiC,KAAKm5B,IAAIuzD,UAAY0E,EACjBt3B,EAAc,CAChB,MAAM01B,EAAoBxvF,KAAK2wF,eAAexK,UAAU,cAAepkD,EAAOE,GAC9EjiC,KAAKyvF,aAAezvF,KAAKm5B,IACzBn5B,KAAKwvF,kBAAoBA,EAAkBntB,OAC3CriE,KAAKm5B,IAAMq2D,EAAkB7nF,QAC7B3H,KAAKm5B,IAAIipB,OACTpiD,KAAKm5B,IAAImpB,cAAa,EAAIkK,EAAeiuB,qBAAqBz6E,KAAKyvF,cACrE,CACAzvF,KAAKm5B,IAAIipB,OACToqC,EAAkBxsF,KAAKm5B,KACnBmpB,IACFtiD,KAAKm5B,IAAImpB,aAAaA,GACtBtiD,KAAK8wF,aAAexuC,EAAU,GAC9BtiD,KAAK+wF,aAAezuC,EAAU,IAEhCtiD,KAAKm5B,IAAImpB,aAAa4V,EAAS5V,WAC/BtiD,KAAK6wF,cAAgB34B,EAAShB,MAC9Bl3D,KAAKmwF,eAAgB,EAAI3jC,EAAeiuB,qBAAqBz6E,KAAKm5B,IACpE,CACA,mBAAA2qC,CAAoBhL,EAAcw4B,EAAmBC,EAAkBnuB,GACrE,MAAMpK,EAAYF,EAAaE,UACzBD,EAAUD,EAAaC,QAC7B,IAAIlwD,EAAIyoF,GAAqB,EAC7B,MAAME,EAAex4B,EAAUnzD,OAC/B,GAAI2rF,IAAiB3oF,EACnB,OAAOA,EAET,MAAM4oF,EAAkBD,EAAe3oF,EAhtBnB,IAgtBsE,mBAArB0oF,EAC/DG,EAAUD,EAAkBn+E,KAAKuO,MAltBpB,GAktB6C,EAChE,IAAI8vE,EAAQ,EACZ,MAAMl7B,EAAaz2D,KAAKy2D,WAClBC,EAAO12D,KAAK02D,KAClB,IAAIk7B,EACJ,OAAa,CACX,QAAgB,IAAZxuB,GAAyBv6D,IAAMu6D,EAAQE,eAEzC,OADAF,EAAQyuB,QAAQhpF,EAAG0oF,GACZ1oF,EAGT,GADA+oF,EAAO74B,EAAQlwD,GACX+oF,IAAStlC,EAAMjY,IAAIsN,WACrB3hD,KAAK4xF,GAAM7xF,MAAMC,KAAMg5D,EAAUnwD,SAEjC,UAAWipF,KAAY94B,EAAUnwD,GAAI,CACnC,MAAMkpF,EAAWD,EAASv7C,WAAW,MAAQkgB,EAAaC,EAC1D,IAAKq7B,EAASn0B,IAAIk0B,GAEhB,OADAC,EAAStxF,IAAIqxF,EAAUP,GAChB1oF,CAEX,CAGF,GADAA,IACIA,IAAM2oF,EACR,OAAO3oF,EAET,GAAI4oF,KAAqBE,EA3uBP,GA2uBgC,CAChD,GAAIr+E,KAAKuO,MAAQ6vE,EAEf,OADAH,IACO1oF,EAET8oF,EAAQ,CACV,CACF,CACF,CAeA,UAAAhuB,GACE,gBAAA3jE,KAAK,KAAL,KAAAA,MACAA,KAAK2wF,eAAe/hF,QACpB5O,KAAK4wF,eAAehiF,QACpB,UAAWs3E,KAASlmF,KAAKkxF,kBAAkB31B,SAAU,CACnD,UAAW8G,KAAU6jB,EAAM3qB,SACQ,oBAAtBy2B,mBAAqC3vB,aAAkB2vB,oBAChE3vB,EAAOtgC,MAAQsgC,EAAOpgC,OAAS,GAGnCikD,EAAMt3E,OACR,CACA5O,KAAKkxF,kBAAkBtiF,QACvB,gBAAA5O,KAAK,KAAL,KAAAA,KACF,CAYA,WAAAiyF,CAAYC,EAAKhpC,GACf,MAAMnnB,EAAQmwD,EAAInwD,MACZE,EAASiwD,EAAIjwD,OACnB,IAKIkwD,EAAWC,EALXC,EAAa5uE,KAAK6H,IAAI7H,KAAKktD,MAAMznB,EAAiB,GAAIA,EAAiB,IAAK,GAC5EopC,EAAc7uE,KAAK6H,IAAI7H,KAAKktD,MAAMznB,EAAiB,GAAIA,EAAiB,IAAK,GAC7EqpC,EAAaxwD,EACfywD,EAAcvwD,EACZwwD,EAAc,YAElB,KAAOJ,EAAa,GAAKE,EAAa,GAAKD,EAAc,GAAKE,EAAc,GAAG,CAC7E,IAAIvjB,EAAWsjB,EACbrjB,EAAYsjB,EACVH,EAAa,GAAKE,EAAa,IACjCtjB,EAAWsjB,GAAc,MAAQ9uE,KAAKi0B,MAAM66C,EAAa,GAAK,GAAK,EAAI9uE,KAAKqJ,KAAKylE,EAAa,GAC9FF,GAAcE,EAAatjB,GAEzBqjB,EAAc,GAAKE,EAAc,IACnCtjB,EAAYsjB,GAAe,MAAQ/uE,KAAKi0B,MAAM86C,EAAc,GAAK,GAAK,EAAI/uE,KAAKqJ,KAAK0lE,GAAe,EACnGF,GAAeE,EAActjB,GAE/BijB,EAAYnyF,KAAK2wF,eAAexK,UAAUsM,EAAaxjB,EAAUC,GACjEkjB,EAASD,EAAUxqF,QACnByqF,EAAOM,UAAU,EAAG,EAAGzjB,EAAUC,GACjCkjB,EAAO/f,UAAU6f,EAAK,EAAG,EAAGK,EAAYC,EAAa,EAAG,EAAGvjB,EAAUC,GACrEgjB,EAAMC,EAAU9vB,OAChBkwB,EAAatjB,EACbujB,EAActjB,EACdujB,EAA8B,cAAhBA,EAA8B,YAAc,WAC5D,CACA,MAAO,CACLP,MACAK,aACAC,cAEJ,CACA,iBAAAG,CAAkBT,GAChB,MAAM/4D,EAAMn5B,KAAKm5B,KACX,MACJ4I,EAAK,OACLE,GACEiwD,EACE1J,EAAYxoF,KAAK82B,QAAQ0xD,UACzBoK,EAAgB5yF,KAAK82B,QAAQ4xD,YAC7BmK,GAAmB,EAAIrmC,EAAeiuB,qBAAqBthD,GACjE,IAAI+sD,EAAOxtB,EAAUo6B,EAAQC,EAC7B,IAAKb,EAAIpwB,QAAUowB,EAAIttE,OAASstE,EAAIc,MAAQ,EAAG,CAC7C,MAAMC,EAAUf,EAAIpwB,QAAUowB,EAAIttE,KAAKmG,OACvC2tC,EAAWhrD,KAAKC,UAAUilF,EAAgBC,EAAmB,CAACA,EAAiB5lF,MAAM,EAAG,GAAIu7E,IAC5FtC,EAAQlmF,KAAKkxF,kBAAkBzwF,IAAIwyF,GAC9B/M,IACHA,EAAQ,IAAI5tC,IACZt4C,KAAKkxF,kBAAkBpmE,IAAImoE,EAAS/M,IAEtC,MAAMgN,EAAchN,EAAMzlF,IAAIi4D,GAC9B,GAAIw6B,IAAgBN,EAGlB,MAAO,CACLvwB,OAAQ6wB,EACR97B,QAJc3zC,KAAKonD,MAAMpnD,KAAKE,IAAIkvE,EAAiB,GAAIA,EAAiB,IAAMA,EAAiB,IAK/Fx7B,QAJc5zC,KAAKonD,MAAMpnD,KAAKE,IAAIkvE,EAAiB,GAAIA,EAAiB,IAAMA,EAAiB,KAOnGC,EAASI,CACX,CACKJ,IACHC,EAAa/yF,KAAK2wF,eAAexK,UAAU,aAAcpkD,EAAOE,GAChE8pD,EAAmBgH,EAAWprF,QAASuqF,IAEzC,IAAIiB,EAAe7mC,EAAMv2C,KAAKusC,UAAUuwC,EAAkB,CAAC,EAAI9wD,EAAO,EAAG,GAAI,EAAIE,EAAQ,EAAG,IAC5FkxD,EAAe7mC,EAAMv2C,KAAKusC,UAAU6wC,EAAc,CAAC,EAAG,EAAG,EAAG,EAAG,GAAIlxD,IACnE,MAAMmxD,EAAQ9mC,EAAMv2C,KAAK8yC,eAAe,CAAC,EAAG,GAAIsqC,GAC1CE,EAAQ/mC,EAAMv2C,KAAK8yC,eAAe,CAAC9mB,EAAOE,GAASkxD,GACnD1pC,EAAO6C,EAAMv2C,KAAKyzC,cAAc,CAAC4pC,EAAM,GAAIA,EAAM,GAAIC,EAAM,GAAIA,EAAM,KACrEC,EAAa7vE,KAAKonD,MAAMphB,EAAK,GAAKA,EAAK,KAAO,EAC9C8pC,EAAc9vE,KAAKonD,MAAMphB,EAAK,GAAKA,EAAK,KAAO,EAC/C+pC,EAAaxzF,KAAK2wF,eAAexK,UAAU,aAAcmN,EAAYC,GACrEE,EAAUD,EAAW7rF,QACrByvD,EAAU3zC,KAAKE,IAAIyvE,EAAM,GAAIC,EAAM,IACnCh8B,EAAU5zC,KAAKE,IAAIyvE,EAAM,GAAIC,EAAM,IACzCI,EAAQ9pB,WAAWvS,GAAUC,GAC7Bo8B,EAAQnxC,aAAa6wC,GAChBL,IACHA,EAAS9yF,KAAKiyF,YAAYc,EAAW1wB,QAAQ,EAAI7V,EAAemuB,4BAA4B8Y,IAC5FX,EAASA,EAAOZ,IACZhM,GAAS0M,GACX1M,EAAMp7D,IAAI4tC,EAAUo6B,IAGxBW,EAAQC,sBAAwB7E,GAAyB,EAAIriC,EAAeiuB,qBAAqBgZ,GAAUvB,EAAIpD,aAC/GzI,EAAyBoN,EAASX,EAAQ,EAAG,EAAGA,EAAO/wD,MAAO+wD,EAAO7wD,OAAQ,EAAG,EAAGF,EAAOE,GAC1FwxD,EAAQzG,yBAA2B,YACnC,MAAM2G,EAAUrnC,EAAMv2C,KAAKusC,WAAU,EAAIkK,EAAemuB,4BAA4B8Y,GAAU,CAAC,EAAG,EAAG,EAAG,GAAIr8B,GAAUC,IAOtH,OANAo8B,EAAQ/G,UAAYkG,EAAgBpK,EAAUoL,WAAWz6D,EAAKn5B,KAAM2zF,EAAS9N,EAAgBiE,SAAS9tC,MAAQwsC,EAC9GiL,EAAQpC,SAAS,EAAG,EAAGtvD,EAAOE,GAC1BikD,IAAU0M,IACZ5yF,KAAK2wF,eAAet+D,OAAO,cAC3B6zD,EAAMp7D,IAAI4tC,EAAU86B,EAAWnxB,SAE1B,CACLA,OAAQmxB,EAAWnxB,OACnBjL,QAAS3zC,KAAKonD,MAAMzT,GACpBC,QAAS5zC,KAAKonD,MAAMxT,GAExB,CACA,YAAAzV,CAAa7f,GACPA,IAAU/hC,KAAK82B,QAAQ+xD,YACzB7oF,KAAKgxF,wBAAwB,IAAM,GAErChxF,KAAK82B,QAAQ+xD,UAAY9mD,EACzB/hC,KAAKm5B,IAAI0vD,UAAY9mD,CACvB,CACA,UAAA8f,CAAWjqC,GACT5X,KAAKm5B,IAAI0zD,QAAUqC,EAAgBt3E,EACrC,CACA,WAAAkqC,CAAYlqC,GACV5X,KAAKm5B,IAAI2zD,SAAWqC,EAAiBv3E,EACvC,CACA,aAAAmqC,CAAc8xC,GACZ7zF,KAAKm5B,IAAI4zD,WAAa8G,CACxB,CACA,OAAA7xC,CAAQ8xC,EAAWC,GACjB,MAAM56D,EAAMn5B,KAAKm5B,SACO,IAApBA,EAAIkzD,cACNlzD,EAAIkzD,YAAYyH,GAChB36D,EAAIozD,eAAiBwH,EAEzB,CACA,kBAAA9xC,CAAmByV,GAAS,CAC5B,WAAAxV,CAAY8xC,GAAW,CACvB,SAAA7xC,CAAU38B,GACR,UAAY1Y,EAAK3M,KAAUqlB,EACzB,OAAQ1Y,GACN,IAAK,KACH9M,KAAK4hD,aAAazhD,GAClB,MACF,IAAK,KACHH,KAAK6hD,WAAW1hD,GAChB,MACF,IAAK,KACHH,KAAK8hD,YAAY3hD,GACjB,MACF,IAAK,KACHH,KAAK+hD,cAAc5hD,GACnB,MACF,IAAK,IACHH,KAAKgiD,QAAQ7hD,EAAM,GAAIA,EAAM,IAC7B,MACF,IAAK,KACHH,KAAKiiD,mBAAmB9hD,GACxB,MACF,IAAK,KACHH,KAAKkiD,YAAY/hD,GACjB,MACF,IAAK,OACHH,KAAK+jD,QAAQ5jD,EAAM,GAAIA,EAAM,IAC7B,MACF,IAAK,KACHH,KAAK82B,QAAQ8xD,YAAczoF,EAC3B,MACF,IAAK,KACHH,KAAK82B,QAAQ6xD,UAAYxoF,EACzBH,KAAKm5B,IAAIyzD,YAAczsF,EACvB,MACF,IAAK,KACHH,KAAKm5B,IAAI6zD,yBAA2B7sF,EACpC,MACF,IAAK,QACHH,KAAK82B,QAAQgyD,YAAc3oF,EAAQH,KAAKwwF,UAAY,KACpDxwF,KAAKwwF,UAAY,KACjBxwF,KAAKi0F,kBACL,MACF,IAAK,KACHj0F,KAAKm5B,IAAIjzB,OAASlG,KAAK82B,QAAQiyD,aAAe/oF,KAAKkwD,cAAcksB,UAAUj8E,GAInF,CACA,eAAIovF,GACF,QAASvvF,KAAKywF,YAChB,CACA,eAAAwD,GACE,MAAM1E,EAAcvvF,KAAKuvF,YACrBvvF,KAAK82B,QAAQgyD,cAAgByG,EAC/BvvF,KAAKk0F,kBACKl0F,KAAK82B,QAAQgyD,aAAeyG,GACtCvvF,KAAKm0F,cAET,CACA,cAAAD,GACE,GAAIl0F,KAAKuvF,YACP,MAAM,IAAI9jF,MAAM,qDAElB,MAAM6nF,EAAatzF,KAAKm5B,IAAIkpC,OAAOtgC,MAC7BwxD,EAAcvzF,KAAKm5B,IAAIkpC,OAAOpgC,OAC9BmyD,EAAU,eAAiBp0F,KAAKqwF,WAChCgE,EAAgBr0F,KAAK2wF,eAAexK,UAAUiO,EAASd,EAAYC,GACzEvzF,KAAKywF,aAAezwF,KAAKm5B,IACzBn5B,KAAKm5B,IAAMk7D,EAAc1sF,QACzB,MAAMwxB,EAAMn5B,KAAKm5B,IACjBA,EAAIouD,iBAAgB,EAAI/6B,EAAeiuB,qBAAqBz6E,KAAKywF,eACjEvE,EAAalsF,KAAKywF,aAAct3D,GAl+BpC,SAAiCA,EAAKizD,GACpC,GAAIjzD,EAAIm7D,iBACN,MAAM,IAAI7oF,MAAM,6CAElB0tB,EAAIo7D,eAAiBp7D,EAAIipB,KACzBjpB,EAAIq7D,kBAAoBr7D,EAAIkpB,QAC5BlpB,EAAIs7D,iBAAmBt7D,EAAI29B,OAC3B39B,EAAIu7D,gBAAkBv7D,EAAI+9B,MAC1B/9B,EAAIw7D,oBAAsBx7D,EAAIwwC,UAC9BxwC,EAAIy7D,oBAAsBz7D,EAAImpB,UAC9BnpB,EAAI07D,uBAAyB17D,EAAIouD,aACjCpuD,EAAI27D,yBAA2B37D,EAAI47D,eACnC57D,EAAI67D,eAAiB77D,EAAIoqB,KACzBpqB,EAAI87D,iBAAmB97D,EAAIopB,OAC3BppB,EAAI+7D,iBAAmB/7D,EAAIqpB,OAC3BrpB,EAAIg8D,wBAA0Bh8D,EAAIi8D,cAClCj8D,EAAIk8D,eAAiBl8D,EAAIswB,KACzBtwB,EAAIm8D,oBAAsBn8D,EAAIypB,UAC9BzpB,EAAIo8D,oBAAsBp8D,EAAIq8D,UAC9Br8D,EAAIm7D,iBAAmB,KACrBn7D,EAAIipB,KAAOjpB,EAAIo7D,eACfp7D,EAAIkpB,QAAUlpB,EAAIq7D,kBAClBr7D,EAAI29B,OAAS39B,EAAIs7D,iBACjBt7D,EAAI+9B,MAAQ/9B,EAAIu7D,gBAChBv7D,EAAIwwC,UAAYxwC,EAAIw7D,oBACpBx7D,EAAImpB,UAAYnpB,EAAIy7D,oBACpBz7D,EAAIouD,aAAepuD,EAAI07D,uBACvB17D,EAAI47D,eAAiB57D,EAAI27D,yBACzB37D,EAAIoqB,KAAOpqB,EAAI67D,eACf77D,EAAIopB,OAASppB,EAAI87D,iBACjB97D,EAAIqpB,OAASrpB,EAAI+7D,iBACjB/7D,EAAIi8D,cAAgBj8D,EAAIg8D,wBACxBh8D,EAAIswB,KAAOtwB,EAAIk8D,eACfl8D,EAAIypB,UAAYzpB,EAAIm8D,oBACpBn8D,EAAIq8D,UAAYr8D,EAAIo8D,2BACbp8D,EAAIm7D,gBAAgB,EAE7Bn7D,EAAIipB,KAAO,WACTgqC,EAAQhqC,OACRpiD,KAAKu0F,gBACP,EACAp7D,EAAIkpB,QAAU,WACZ+pC,EAAQ/pC,UACRriD,KAAKw0F,mBACP,EACAr7D,EAAIwwC,UAAY,SAAsBvqE,EAAG4F,GACvConF,EAAQziB,UAAUvqE,EAAG4F,GACrBhF,KAAK20F,oBAAoBv1F,EAAG4F,EAC9B,EACAm0B,EAAI+9B,MAAQ,SAAkB93D,EAAG4F,GAC/BonF,EAAQl1B,MAAM93D,EAAG4F,GACjBhF,KAAK00F,gBAAgBt1F,EAAG4F,EAC1B,EACAm0B,EAAImpB,UAAY,SAAsBxiD,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GACnDwsF,EAAQ9pC,UAAUxiD,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GACjCI,KAAK40F,oBAAoB90F,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,EAC1C,EACAu5B,EAAIouD,aAAe,SAAyBznF,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GACzDwsF,EAAQ7E,aAAaznF,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GACpCI,KAAK60F,uBAAuB/0F,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,EAC7C,EACAu5B,EAAI47D,eAAiB,WACnB3I,EAAQ2I,iBACR/0F,KAAK80F,0BACP,EACA37D,EAAI29B,OAAS,SAAmBmX,GAC9Bme,EAAQt1B,OAAOmX,GACfjuE,KAAKy0F,iBAAiBxmB,EACxB,EACA90C,EAAIoqB,KAAO,SAAmBs/B,GAC5BuJ,EAAQ7oC,KAAKs/B,GACb7iF,KAAKg1F,eAAenS,EACtB,EACA1pD,EAAIopB,OAAS,SAAUnjD,EAAG4F,GACxBonF,EAAQ7pC,OAAOnjD,EAAG4F,GAClBhF,KAAKi1F,iBAAiB71F,EAAG4F,EAC3B,EACAm0B,EAAIqpB,OAAS,SAAUpjD,EAAG4F,GACxBonF,EAAQ5pC,OAAOpjD,EAAG4F,GAClBhF,KAAKk1F,iBAAiB91F,EAAG4F,EAC3B,EACAm0B,EAAIi8D,cAAgB,SAAUK,EAAMC,EAAMC,EAAMC,EAAMx2F,EAAG4F,GACvDonF,EAAQgJ,cAAcK,EAAMC,EAAMC,EAAMC,EAAMx2F,EAAG4F,GACjDhF,KAAKm1F,wBAAwBM,EAAMC,EAAMC,EAAMC,EAAMx2F,EAAG4F,EAC1D,EACAm0B,EAAIswB,KAAO,SAAUrqD,EAAG4F,EAAG+8B,EAAOE,GAChCmqD,EAAQ3iC,KAAKrqD,EAAG4F,EAAG+8B,EAAOE,GAC1BjiC,KAAKq1F,eAAej2F,EAAG4F,EAAG+8B,EAAOE,EACnC,EACA9I,EAAIypB,UAAY,WACdwpC,EAAQxpC,YACR5iD,KAAKs1F,qBACP,EACAn8D,EAAIq8D,UAAY,WACdpJ,EAAQoJ,YACRx1F,KAAKu1F,qBACP,CACF,CAk4BIM,CAAwB18D,EAAKn5B,KAAKywF,cAClCzwF,KAAKmiD,UAAU,CAAC,CAAC,KAAM,eAAgB,CAAC,KAAM,GAAI,CAAC,KAAM,IAC3D,CACA,YAAAgyC,GACE,IAAKn0F,KAAKuvF,YACR,MAAM,IAAI9jF,MAAM,+CAElBzL,KAAKm5B,IAAIm7D,mBACTpI,EAAalsF,KAAKm5B,IAAKn5B,KAAKywF,cAC5BzwF,KAAKm5B,IAAMn5B,KAAKywF,aAChBzwF,KAAKywF,aAAe,IACtB,CACA,OAAAqF,CAAQC,GACN,IAAK/1F,KAAK82B,QAAQgyD,YAChB,OAEGiN,GAGHA,EAAS,GAAKtyE,KAAKi0B,MAAMq+C,EAAS,IAClCA,EAAS,GAAKtyE,KAAKi0B,MAAMq+C,EAAS,IAClCA,EAAS,GAAKtyE,KAAKqJ,KAAKipE,EAAS,IACjCA,EAAS,GAAKtyE,KAAKqJ,KAAKipE,EAAS,KALjCA,EAAW,CAAC,EAAG,EAAG/1F,KAAKm5B,IAAIkpC,OAAOtgC,MAAO/hC,KAAKm5B,IAAIkpC,OAAOpgC,QAO3D,MAAM4rD,EAAQ7tF,KAAK82B,QAAQgyD,YAE3B8E,EADqB5tF,KAAKywF,aACC5C,EAAO7tF,KAAKm5B,IAAK48D,GAC5C/1F,KAAKm5B,IAAIipB,OACTpiD,KAAKm5B,IAAIouD,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GACrCvnF,KAAKm5B,IAAIu5D,UAAU,EAAG,EAAG1yF,KAAKm5B,IAAIkpC,OAAOtgC,MAAO/hC,KAAKm5B,IAAIkpC,OAAOpgC,QAChEjiC,KAAKm5B,IAAIkpB,SACX,CACA,IAAAD,GACMpiD,KAAKuvF,aACPrD,EAAalsF,KAAKm5B,IAAKn5B,KAAKywF,cAC5BzwF,KAAKywF,aAAaruC,QAElBpiD,KAAKm5B,IAAIipB,OAEX,MAAM4zC,EAAMh2F,KAAK82B,QACjB92B,KAAKsvF,WAAW1tF,KAAKo0F,GACrBh2F,KAAK82B,QAAUk/D,EAAIjwF,OACrB,CACA,OAAAs8C,GACiC,IAA3BriD,KAAKsvF,WAAWzpF,QAAgB7F,KAAKuvF,aACvCvvF,KAAKm0F,eAEwB,IAA3Bn0F,KAAKsvF,WAAWzpF,SAClB7F,KAAK82B,QAAU92B,KAAKsvF,WAAW1pF,MAC3B5F,KAAKuvF,aACPvvF,KAAKywF,aAAapuC,UAClB6pC,EAAalsF,KAAKywF,aAAczwF,KAAKm5B,MAErCn5B,KAAKm5B,IAAIkpB,UAEXriD,KAAKi0F,kBACLj0F,KAAK8vF,YAAc,KACnB9vF,KAAKgxF,wBAAwB,IAAM,EACnChxF,KAAKixF,2BAA6B,KAEtC,CACA,SAAA3uC,CAAUxiD,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GACvBI,KAAKm5B,IAAImpB,UAAUxiD,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GAClCI,KAAKgxF,wBAAwB,IAAM,EACnChxF,KAAKixF,2BAA6B,IACpC,CACA,aAAA/pC,CAAc5hD,EAAK2F,EAAMw9C,GACvB,MAAMtvB,EAAMn5B,KAAKm5B,IACXrC,EAAU92B,KAAK82B,QACrB,IAEIm/D,EAAQC,EAFR92F,EAAI03B,EAAQ13B,EACd4F,EAAI8xB,EAAQ9xB,EAEd,MAAM6tF,GAAmB,EAAIrmC,EAAeiuB,qBAAqBthD,GAC3Dg9D,EAA0C,IAAxBtD,EAAiB,IAAoC,IAAxBA,EAAiB,IAAoC,IAAxBA,EAAiB,IAAoC,IAAxBA,EAAiB,GAC1HuD,EAAkBD,EAAkB1tC,EAAOx7C,MAAM,GAAK,KAC5D,QAASpE,EAAI,EAAGghB,EAAI,EAAGouB,EAAK3yC,EAAIO,OAAQgD,EAAIovC,EAAIpvC,IAC9C,OAAiB,EAATvD,EAAIuD,IACV,KAAKyjD,EAAMjY,IAAIwO,UACbzjD,EAAI6L,EAAK4e,KACT7kB,EAAIiG,EAAK4e,KACT,MAAMkY,EAAQ92B,EAAK4e,KACboY,EAASh3B,EAAK4e,KACdwsE,EAAKj3F,EAAI2iC,EACTu0D,EAAKtxF,EAAIi9B,EACf9I,EAAIopB,OAAOnjD,EAAG4F,GACA,IAAV+8B,GAA0B,IAAXE,EACjB9I,EAAIqpB,OAAO6zC,EAAIC,IAEfn9D,EAAIqpB,OAAO6zC,EAAIrxF,GACfm0B,EAAIqpB,OAAO6zC,EAAIC,GACfn9D,EAAIqpB,OAAOpjD,EAAGk3F,IAEXH,GACHr/D,EAAQ0yD,iBAAiBqJ,EAAkB,CAACzzF,EAAG4F,EAAGqxF,EAAIC,IAExDn9D,EAAIypB,YACJ,MACF,KAAK0J,EAAMjY,IAAIkO,OACbnjD,EAAI6L,EAAK4e,KACT7kB,EAAIiG,EAAK4e,KACTsP,EAAIopB,OAAOnjD,EAAG4F,GACTmxF,GACHr/D,EAAQqyD,iBAAiB0J,EAAkBzzF,EAAG4F,GAEhD,MACF,KAAKsnD,EAAMjY,IAAImO,OACbpjD,EAAI6L,EAAK4e,KACT7kB,EAAIiG,EAAK4e,KACTsP,EAAIqpB,OAAOpjD,EAAG4F,GACTmxF,GACHr/D,EAAQqyD,iBAAiB0J,EAAkBzzF,EAAG4F,GAEhD,MACF,KAAKsnD,EAAMjY,IAAIoO,QACbwzC,EAAS72F,EACT82F,EAASlxF,EACT5F,EAAI6L,EAAK4e,EAAI,GACb7kB,EAAIiG,EAAK4e,EAAI,GACbsP,EAAIi8D,cAAcnqF,EAAK4e,GAAI5e,EAAK4e,EAAI,GAAI5e,EAAK4e,EAAI,GAAI5e,EAAK4e,EAAI,GAAIzqB,EAAG4F,GACrE8xB,EAAQ4yD,sBAAsBmJ,EAAkBoD,EAAQC,EAAQjrF,EAAK4e,GAAI5e,EAAK4e,EAAI,GAAI5e,EAAK4e,EAAI,GAAI5e,EAAK4e,EAAI,GAAIzqB,EAAG4F,EAAGoxF,GACtHvsE,GAAK,EACL,MACF,KAAKyiC,EAAMjY,IAAIqO,SACbuzC,EAAS72F,EACT82F,EAASlxF,EACTm0B,EAAIi8D,cAAch2F,EAAG4F,EAAGiG,EAAK4e,GAAI5e,EAAK4e,EAAI,GAAI5e,EAAK4e,EAAI,GAAI5e,EAAK4e,EAAI,IACpEiN,EAAQ4yD,sBAAsBmJ,EAAkBoD,EAAQC,EAAQ92F,EAAG4F,EAAGiG,EAAK4e,GAAI5e,EAAK4e,EAAI,GAAI5e,EAAK4e,EAAI,GAAI5e,EAAK4e,EAAI,GAAIusE,GACtHh3F,EAAI6L,EAAK4e,EAAI,GACb7kB,EAAIiG,EAAK4e,EAAI,GACbA,GAAK,EACL,MACF,KAAKyiC,EAAMjY,IAAIsO,SACbszC,EAAS72F,EACT82F,EAASlxF,EACT5F,EAAI6L,EAAK4e,EAAI,GACb7kB,EAAIiG,EAAK4e,EAAI,GACbsP,EAAIi8D,cAAcnqF,EAAK4e,GAAI5e,EAAK4e,EAAI,GAAIzqB,EAAG4F,EAAG5F,EAAG4F,GACjD8xB,EAAQ4yD,sBAAsBmJ,EAAkBoD,EAAQC,EAAQjrF,EAAK4e,GAAI5e,EAAK4e,EAAI,GAAIzqB,EAAG4F,EAAG5F,EAAG4F,EAAGoxF,GAClGvsE,GAAK,EACL,MACF,KAAKyiC,EAAMjY,IAAIuO,UACbzpB,EAAIypB,YAINuzC,GACFr/D,EAAQ2yD,wBAAwBoJ,EAAkBuD,GAEpDt/D,EAAQoyD,gBAAgB9pF,EAAG4F,EAC7B,CACA,SAAA49C,GACE5iD,KAAKm5B,IAAIypB,WACX,CACA,MAAAE,CAAOyzC,GAAc,GACnB,MAAMp9D,EAAMn5B,KAAKm5B,IACXsvD,EAAczoF,KAAK82B,QAAQ2xD,YACjCtvD,EAAIyzD,YAAc5sF,KAAK82B,QAAQ8xD,YAC3B5oF,KAAK0wF,iBACoB,iBAAhBjI,GAA4BA,GAAamL,YAClDz6D,EAAIipB,OACJjpB,EAAIszD,YAAchE,EAAYmL,WAAWz6D,EAAKn5B,MAAM,EAAIwsD,EAAemuB,4BAA4BxhD,GAAM0sD,EAAgBiE,SAAS7tC,QAClIj8C,KAAKw2F,kBAAiB,GACtBr9D,EAAIkpB,WAEJriD,KAAKw2F,kBAAiB,IAGtBD,GACFv2F,KAAKu2F,YAAYv2F,KAAK82B,QAAQszD,6BAEhCjxD,EAAIyzD,YAAc5sF,KAAK82B,QAAQ6xD,SACjC,CACA,WAAA5lC,GACE/iD,KAAK4iD,YACL5iD,KAAK8iD,QACP,CACA,IAAAE,CAAKuzC,GAAc,GACjB,MAAMp9D,EAAMn5B,KAAKm5B,IACXqvD,EAAYxoF,KAAK82B,QAAQ0xD,UAE/B,IAAIiO,GAAc,EADIz2F,KAAK82B,QAAQ4xD,cAGjCvvD,EAAIipB,OACJjpB,EAAIuzD,UAAYlE,EAAUoL,WAAWz6D,EAAKn5B,MAAM,EAAIwsD,EAAemuB,4BAA4BxhD,GAAM0sD,EAAgBiE,SAAS9tC,MAC9Hy6C,GAAc,GAEhB,MAAM/sC,EAAY1pD,KAAK82B,QAAQszD,4BAC3BpqF,KAAK0wF,gBAAgC,OAAdhnC,IACrB1pD,KAAK+vF,eACP52D,EAAI6pB,KAAK,WACThjD,KAAK+vF,eAAgB,GAErB52D,EAAI6pB,QAGJyzC,GACFt9D,EAAIkpB,UAEFk0C,GACFv2F,KAAKu2F,YAAY7sC,EAErB,CACA,MAAAzG,GACEjjD,KAAK+vF,eAAgB,EACrB/vF,KAAKgjD,MACP,CACA,UAAAE,GACEljD,KAAKgjD,MAAK,GACVhjD,KAAK8iD,QAAO,GACZ9iD,KAAKu2F,aACP,CACA,YAAApzC,GACEnjD,KAAK+vF,eAAgB,EACrB/vF,KAAKkjD,YACP,CACA,eAAAE,GACEpjD,KAAK4iD,YACL5iD,KAAKkjD,YACP,CACA,iBAAAG,GACErjD,KAAK+vF,eAAgB,EACrB/vF,KAAK4iD,YACL5iD,KAAKkjD,YACP,CACA,OAAAI,GACEtjD,KAAKu2F,aACP,CACA,IAAAhzC,GACEvjD,KAAK8vF,YAAcV,CACrB,CACA,MAAA5rC,GACExjD,KAAK8vF,YAAcT,CACrB,CACA,SAAA5rC,GACEzjD,KAAK82B,QAAQ+wD,WAAav7B,EAAM1X,gBAChC50C,KAAK82B,QAAQgxD,gBAAkB,EAC/B9nF,KAAK82B,QAAQ13B,EAAIY,KAAK82B,QAAQmxD,MAAQ,EACtCjoF,KAAK82B,QAAQ9xB,EAAIhF,KAAK82B,QAAQoxD,MAAQ,CACxC,CACA,OAAAxkC,GACE,MAAMgzC,EAAQ12F,KAAK22F,iBACbx9D,EAAMn5B,KAAKm5B,IACjB,QAAc,IAAVu9D,EAAJ,CAIAv9D,EAAIipB,OACJjpB,EAAIq8D,YACJ,UAAWxpF,KAAQ0qF,EACjBv9D,EAAIouD,gBAAgBv7E,EAAKs2C,WACzBnpB,EAAIwwC,UAAU39D,EAAK5M,EAAG4M,EAAKhH,GAC3BgH,EAAK4qF,UAAUz9D,EAAKntB,EAAK27E,UAE3BxuD,EAAIkpB,UACJlpB,EAAIoqB,OACJpqB,EAAIq8D,mBACGx1F,KAAK22F,gBAXZ,MAFEx9D,EAAIq8D,WAcR,CACA,cAAA7xC,CAAekzC,GACb72F,KAAK82B,QAAQqxD,YAAc0O,CAC7B,CACA,cAAAjzC,CAAeizC,GACb72F,KAAK82B,QAAQsxD,YAAcyO,CAC7B,CACA,SAAAhzC,CAAUqT,GACRl3D,KAAK82B,QAAQuxD,WAAanxB,EAAQ,GACpC,CACA,UAAApT,CAAWkkC,GACThoF,KAAK82B,QAAQkxD,SAAWA,CAC1B,CACA,OAAAjkC,CAAQ+yC,EAAa/pE,GACnB,MAAMgqE,EAAU/2F,KAAKy2D,WAAWh2D,IAAIq2F,GAC9BhgE,EAAU92B,KAAK82B,QACrB,IAAKigE,EACH,MAAM,IAAItrF,MAAM,uBAAuBqrF,KAczC,GAZAhgE,EAAQixD,WAAagP,EAAQhP,YAAcz7B,EAAMvX,qBACnB,IAA1Bje,EAAQixD,WAAW,IAAsC,IAA1BjxD,EAAQixD,WAAW,KACpD,EAAIz7B,EAAMhhD,MAAM,gCAAkCwrF,GAEhD/pE,EAAO,GACTA,GAAQA,EACR+J,EAAQkgE,eAAiB,GAEzBlgE,EAAQkgE,cAAgB,EAE1Bh3F,KAAK82B,QAAQ0qC,KAAOu1B,EACpB/2F,KAAK82B,QAAQ6wD,SAAW56D,EACpBgqE,EAAQE,YACV,OAEF,MAAM9tF,EAAO4tF,EAAQ7T,YAAc,aAC7BgU,EAAWH,EAAQtT,gBAAgByB,KAAO,IAAI/7E,OAAU4tF,EAAQI,eACtE,IAAIC,EAAO,SACPL,EAAQtL,MACV2L,EAAO,MACEL,EAAQK,OACjBA,EAAO,QAET,MAAMC,EAASN,EAAQM,OAAS,SAAW,SAC3C,IAAIC,EAAkBvqE,EAClBA,EAvxCc,GAwxChBuqE,EAxxCgB,GAyxCPvqE,EAxxCO,MAyxChBuqE,EAzxCgB,KA2xClBt3F,KAAK82B,QAAQ8wD,cAAgB76D,EAAOuqE,EACpCt3F,KAAKm5B,IAAIqoC,KAAO,GAAG61B,KAAUD,KAAQE,OAAqBJ,GAC5D,CACA,oBAAAlzC,CAAqB5T,GACnBpwC,KAAK82B,QAAQwxD,kBAAoBl4C,CACnC,CACA,WAAA6T,CAAYszC,GACVv3F,KAAK82B,QAAQyxD,SAAWgP,CAC1B,CACA,QAAArzC,CAAS9kD,EAAG4F,GACVhF,KAAK82B,QAAQ13B,EAAIY,KAAK82B,QAAQmxD,OAAS7oF,EACvCY,KAAK82B,QAAQ9xB,EAAIhF,KAAK82B,QAAQoxD,OAASljF,CACzC,CACA,kBAAAm/C,CAAmB/kD,EAAG4F,GACpBhF,KAAK8jD,YAAY9+C,GACjBhF,KAAKkkD,SAAS9kD,EAAG4F,EACnB,CACA,aAAAo/C,CAActkD,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GAC3BI,KAAK82B,QAAQ+wD,WAAa,CAAC/nF,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GAC1CI,KAAK82B,QAAQgxD,gBAAkBrkE,KAAKktD,MAAM7wE,EAAG0e,GAC7Cxe,KAAK82B,QAAQ13B,EAAIY,KAAK82B,QAAQmxD,MAAQ,EACtCjoF,KAAK82B,QAAQ9xB,EAAIhF,KAAK82B,QAAQoxD,MAAQ,CACxC,CACA,QAAA7jC,GACErkD,KAAKkkD,SAAS,EAAGlkD,KAAK82B,QAAQkxD,QAChC,CACA,SAAAwP,CAAUhS,EAAWpmF,EAAG4F,EAAGyyF,GACzB,MAAMt+D,EAAMn5B,KAAKm5B,IACXrC,EAAU92B,KAAK82B,QACf0qC,EAAO1qC,EAAQ0qC,KACf8mB,EAAoBxxD,EAAQwxD,kBAC5BX,EAAW7wD,EAAQ6wD,SAAW7wD,EAAQ8wD,cACtC8P,EAAiBpP,EAAoBh8B,EAAMxY,kBAAkB0I,iBAC7Dm7C,KAAoBrP,EAAoBh8B,EAAMxY,kBAAkB2I,kBAChEisC,EAAc5xD,EAAQ4xD,cAAgBlnB,EAAKgiB,YACjD,IAAIoT,GACAp1B,EAAKnS,iBAAmBsoC,GAAkBjP,KAC5CkO,EAAYp1B,EAAK+jB,iBAAiBvlF,KAAKy2D,WAAY+uB,IAEjDhkB,EAAKnS,iBAAmBq5B,GAC1BvvD,EAAIipB,OACJjpB,EAAIwwC,UAAUvqE,EAAG4F,GACjBm0B,EAAIq8D,YACJoB,EAAUz9D,EAAKwuD,GACX8P,GACFt+D,EAAIouD,gBAAgBkQ,GAElBC,IAAmBprC,EAAMxY,kBAAkBkI,MAAQ07C,IAAmBprC,EAAMxY,kBAAkBoI,aAChG/iB,EAAI6pB,OAEF00C,IAAmBprC,EAAMxY,kBAAkBmI,QAAUy7C,IAAmBprC,EAAMxY,kBAAkBoI,aAClG/iB,EAAI2pB,SAEN3pB,EAAIkpB,YAEAq1C,IAAmBprC,EAAMxY,kBAAkBkI,MAAQ07C,IAAmBprC,EAAMxY,kBAAkBoI,aAChG/iB,EAAI0rD,SAASW,EAAWpmF,EAAG4F,GAEzB0yF,IAAmBprC,EAAMxY,kBAAkBmI,QAAUy7C,IAAmBprC,EAAMxY,kBAAkBoI,aAClG/iB,EAAIy+D,WAAWpS,EAAWpmF,EAAG4F,IAG7B2yF,IACY33F,KAAK22F,mBAAqB,IAClC/0F,KAAK,CACT0gD,WAAW,EAAIkK,EAAeiuB,qBAAqBthD,GACnD/5B,IACA4F,IACA2iF,WACAiP,aAGN,CACA,2BAAIiB,GACF,MACElwF,QAASwxB,GACPn5B,KAAK2wF,eAAexK,UAAU,0BAA2B,GAAI,IACjEhtD,EAAI+9B,MAAM,IAAK,GACf/9B,EAAI0rD,SAAS,IAAK,EAAG,IACrB,MAAMjgE,EAAOuU,EAAIm5C,aAAa,EAAG,EAAG,GAAI,IAAI1tD,KAC5C,IAAI7Q,GAAU,EACd,QAASlL,EAAI,EAAGA,EAAI+b,EAAK/e,OAAQgD,GAAK,EACpC,GAAI+b,EAAK/b,GAAK,GAAK+b,EAAK/b,GAAK,IAAK,CAChCkL,GAAU,EACV,KACF,CAEF,SAAWu4C,EAAMtT,QAAQh5C,KAAM,0BAA2B+T,EAC5D,CACA,QAAAuwC,CAASwzC,GACP,MAAMhhE,EAAU92B,KAAK82B,QACf0qC,EAAO1qC,EAAQ0qC,KACrB,GAAIA,EAAKy1B,YACP,OAAOj3F,KAAK+3F,cAAcD,GAE5B,MAAMnQ,EAAW7wD,EAAQ6wD,SACzB,GAAiB,IAAbA,EACF,OAEF,MAAMxuD,EAAMn5B,KAAKm5B,IACXyuD,EAAgB9wD,EAAQ8wD,cACxBO,EAAcrxD,EAAQqxD,YACtBC,EAActxD,EAAQsxD,YACtB4O,EAAgBlgE,EAAQkgE,cACxB3O,EAAavxD,EAAQuxD,WAAa2O,EAClCgB,EAAeF,EAAOjyF,OACtBoyF,EAAWz2B,EAAKy2B,SAChBC,EAAaD,EAAW,GAAK,EAC7BE,EAAkB32B,EAAK22B,gBACvBC,EAAoBzQ,EAAW7wD,EAAQixD,WAAW,GAClDsQ,EAAiBvhE,EAAQwxD,oBAAsBh8B,EAAMxY,kBAAkBkI,OAASwlB,EAAKnS,kBAAoBv4B,EAAQ4xD,YASvH,IAAI+O,EACJ,GATAt+D,EAAIipB,OACJjpB,EAAImpB,aAAaxrB,EAAQ+wD,YACzB1uD,EAAIwwC,UAAU7yC,EAAQ13B,EAAG03B,EAAQ9xB,EAAI8xB,EAAQyxD,UACzCyO,EAAgB,EAClB79D,EAAI+9B,MAAMmxB,GAAa,GAEvBlvD,EAAI+9B,MAAMmxB,EAAY,GAGpBvxD,EAAQ4xD,YAAa,CACvBvvD,EAAIipB,OACJ,MAAMk2C,EAAUxhE,EAAQ0xD,UAAUoL,WAAWz6D,EAAKn5B,MAAM,EAAIwsD,EAAemuB,4BAA4BxhD,GAAM0sD,EAAgBiE,SAAS9tC,MACtIy7C,GAAA,EAAuBjrC,EAAeiuB,qBAAqBthD,GAC3DA,EAAIkpB,UACJlpB,EAAIuzD,UAAY4L,CAClB,CACA,IAAIzP,EAAY/xD,EAAQ+xD,UACxB,MAAM3xB,EAAQpgC,EAAQgxD,gBACtB,GAAc,IAAV5wB,GAA6B,IAAd2xB,EAAiB,CAClC,MAAM6O,EAAiB5gE,EAAQwxD,kBAAoBh8B,EAAMxY,kBAAkB0I,iBACvEk7C,IAAmBprC,EAAMxY,kBAAkBmI,QAAUy7C,IAAmBprC,EAAMxY,kBAAkBoI,cAClG2sC,EAAY7oF,KAAKu4F,sBAErB,MACE1P,GAAa3xB,EAOf,GALsB,IAAlB0wB,IACFzuD,EAAI+9B,MAAM0wB,EAAeA,GACzBiB,GAAajB,GAEfzuD,EAAI0vD,UAAYA,EACZrnB,EAAKg3B,mBAAoB,CAC3B,MAAMC,EAAQ,GACd,IAAI12D,EAAQ,EACZ,UAAW22D,KAASZ,EAClBW,EAAM72F,KAAK82F,EAAMC,SACjB52D,GAAS22D,EAAM32D,MAMjB,OAJA5I,EAAI0rD,SAAS4T,EAAMhsF,KAAK,IAAK,EAAG,GAChCqqB,EAAQ13B,GAAK2iC,EAAQq2D,EAAoB/P,EACzClvD,EAAIkpB,eACJriD,KAAK81F,SAEP,CACA,IACEjtF,EADEzJ,EAAI,EAER,IAAKyJ,EAAI,EAAGA,EAAImvF,IAAgBnvF,EAAG,CACjC,MAAM6vF,EAAQZ,EAAOjvF,GACrB,GAAqB,iBAAV6vF,EAAoB,CAC7Bt5F,GAAK84F,EAAaQ,EAAQ/Q,EAAW,IACrC,QACF,CACA,IAAIiR,GAAgB,EACpB,MAAM/B,GAAW6B,EAAMG,QAAUzQ,EAAc,GAAKD,EAC9C3C,EAAYkT,EAAMI,SAClBC,EAASL,EAAMK,OACrB,IAAIC,EAASC,EACTl3D,EAAQ22D,EAAM32D,MAClB,GAAIk2D,EAAU,CACZ,MAAMiB,EAAUR,EAAMQ,SAAWf,EAC3BgB,IAAOT,EAAMQ,QAAUA,EAAQ,GAAa,GAARn3D,GAAeq2D,EACnDgB,EAAKF,EAAQ,GAAKd,EACxBr2D,EAAQm3D,GAAWA,EAAQ,GAAKn3D,EAChCi3D,EAAUG,EAAKvR,EACfqR,GAAW75F,EAAIg6F,GAAMxR,CACvB,MACEoR,EAAU55F,EAAIwoF,EACdqR,EAAU,EAEZ,GAAIz3B,EAAK63B,WAAat3D,EAAQ,EAAG,CAC/B,MAAMu3D,EAAmD,IAAnCngE,EAAIogE,YAAY/T,GAAWzjD,MAAe4lD,EAAWC,EAC3E,GAAI7lD,EAAQu3D,GAAiBt5F,KAAK63F,wBAAyB,CACzD,MAAM2B,EAAkBz3D,EAAQu3D,EAChCV,GAAgB,EAChBz/D,EAAIipB,OACJjpB,EAAI+9B,MAAMsiC,EAAiB,GAC3BR,GAAWQ,CACb,MAAWz3D,IAAUu3D,IACnBN,IAAYj3D,EAAQu3D,GAAiB,IAAO3R,EAAWC,EAE3D,CACA,GAAI5nF,KAAK0wF,iBAAmBgI,EAAMe,UAAYj4B,EAAKgiB,aACjD,GAAI6U,IAAmBU,EACrB5/D,EAAI0rD,SAASW,EAAWwT,EAASC,QAGjC,GADAj5F,KAAKw3F,UAAUhS,EAAWwT,EAASC,EAASxB,GACxCsB,EAAQ,CACV,MAAMW,EAAgBV,EAAUrR,EAAWoR,EAAOzU,OAAOllF,EAAIwoF,EACvD+R,EAAgBV,EAAUtR,EAAWoR,EAAOzU,OAAOt/E,EAAI4iF,EAC7D5nF,KAAKw3F,UAAUuB,EAAOD,SAAUY,EAAeC,EAAelC,EAChE,CAIJr4F,GADkB64F,EAAWl2D,EAAQq2D,EAAoBvB,EAAUG,EAAgBj1D,EAAQq2D,EAAoBvB,EAAUG,EAErH4B,GACFz/D,EAAIkpB,SAER,CACI41C,EACFnhE,EAAQ9xB,GAAK5F,EAEb03B,EAAQ13B,GAAKA,EAAIipF,EAEnBlvD,EAAIkpB,UACJriD,KAAK81F,SAEP,CACA,aAAAiC,CAAcD,GACZ,MAAM3+D,EAAMn5B,KAAKm5B,IACXrC,EAAU92B,KAAK82B,QACf0qC,EAAO1qC,EAAQ0qC,KACfmmB,EAAW7wD,EAAQ6wD,SACnBqP,EAAgBlgE,EAAQkgE,cACxBkB,EAAa12B,EAAKy2B,SAAW,GAAK,EAClC9P,EAAcrxD,EAAQqxD,YACtBC,EAActxD,EAAQsxD,YACtBC,EAAavxD,EAAQuxD,WAAa2O,EAClCjP,EAAajxD,EAAQixD,YAAcz7B,EAAMvX,qBACzCijD,EAAeF,EAAOjyF,OAE5B,IAAIgD,EAAG6vF,EAAO32D,EAAO63D,EACrB,GAFwB9iE,EAAQwxD,oBAAsBh8B,EAAMxY,kBAAkBqI,WAE1C,IAAbwrC,EAAvB,CASA,IANA3nF,KAAKgxF,wBAAwB,IAAM,EACnChxF,KAAKixF,2BAA6B,KAClC93D,EAAIipB,OACJjpB,EAAImpB,aAAaxrB,EAAQ+wD,YACzB1uD,EAAIwwC,UAAU7yC,EAAQ13B,EAAG03B,EAAQ9xB,GACjCm0B,EAAI+9B,MAAMmxB,EAAY2O,GACjBnuF,EAAI,EAAGA,EAAImvF,IAAgBnvF,EAAG,CAEjC,GADA6vF,EAAQZ,EAAOjvF,GACM,iBAAV6vF,EAAoB,CAC7BkB,EAAgB1B,EAAaQ,EAAQ/Q,EAAW,IAChD3nF,KAAKm5B,IAAIwwC,UAAUiwB,EAAe,GAClC9iE,EAAQ13B,GAAKw6F,EAAgBvR,EAC7B,QACF,CACA,MAAMwO,GAAW6B,EAAMG,QAAUzQ,EAAc,GAAKD,EAC9CrvB,EAAe0I,EAAKq4B,qBAAqBnB,EAAMoB,gBAChDhhC,GAID94D,KAAK0wF,iBACP1wF,KAAKkwF,gBAAkBwI,EACvB14F,KAAKoiD,OACLjpB,EAAI+9B,MAAMywB,EAAUA,GACpBxuD,EAAImpB,aAAaylC,GACjB/nF,KAAK8jE,oBAAoBhL,GACzB94D,KAAKqiD,WAGPtgB,EADoBuqB,EAAMv2C,KAAK8yC,eAAe,CAAC6vC,EAAM32D,MAAO,GAAIgmD,GAC5C,GAAKJ,EAAWkP,EACpC19D,EAAIwwC,UAAU5nC,EAAO,GACrBjL,EAAQ13B,GAAK2iC,EAAQsmD,IAdnB,EAAI/7B,EAAMhhD,MAAM,oBAAoBotF,EAAMoB,oCAe9C,CACA3gE,EAAIkpB,UACJriD,KAAKkwF,gBAAkB,IAnCvB,CAoCF,CACA,YAAAxrC,CAAaq1C,EAAQC,GAAS,CAC9B,qBAAAr1C,CAAsBo1C,EAAQC,EAAQC,EAAKC,EAAKC,EAAKC,GACnDp6F,KAAKm5B,IAAIswB,KAAKwwC,EAAKC,EAAKC,EAAMF,EAAKG,EAAMF,GACzCl6F,KAAKm5B,IAAIoqB,OACTvjD,KAAKsjD,SACP,CACA,iBAAA+2C,CAAkBC,GAChB,IAAIhC,EACJ,GAAc,kBAAVgC,EAAG,GAAwB,CAC7B,MAAM7lB,EAAQ6lB,EAAG,GACXnK,EAAgBnwF,KAAKmwF,gBAAiB,EAAI3jC,EAAeiuB,qBAAqBz6E,KAAKm5B,KACnFohE,EAAwB,CAC5BC,qBAAsBrhE,GACb,IAAI,EAAeA,EAAKn5B,KAAKy2D,WAAYz2D,KAAK02D,KAAM12D,KAAKiwD,cAAejwD,KAAKkwD,cAAe,CACjG6J,sBAAuB/5D,KAAK+5D,sBAC5B81B,mBAAoB7vF,KAAK6vF,sBAI/ByI,EAAU,IAAIzS,EAAgB4U,cAAcH,EAAI7lB,EAAOz0E,KAAKm5B,IAAKohE,EAAuBpK,EAC1F,MACEmI,EAAUt4F,KAAK06F,YAAYJ,EAAG,GAAIA,EAAG,IAEvC,OAAOhC,CACT,CACA,eAAAvzC,GACE/kD,KAAK82B,QAAQ2xD,YAAczoF,KAAKq6F,kBAAkBp6F,UACpD,CACA,aAAAglD,GACEjlD,KAAK82B,QAAQ0xD,UAAYxoF,KAAKq6F,kBAAkBp6F,WAChDD,KAAK82B,QAAQ4xD,aAAc,CAC7B,CACA,iBAAAtjC,CAAkBntB,EAAGh5B,EAAGuf,GACtB,MAAMi2D,EAAQnoB,EAAMv2C,KAAKwyC,aAAatwB,EAAGh5B,EAAGuf,GAC5Cxe,KAAKm5B,IAAIszD,YAAchY,EACvBz0E,KAAK82B,QAAQ2xD,YAAchU,CAC7B,CACA,eAAApvB,CAAgBptB,EAAGh5B,EAAGuf,GACpB,MAAMi2D,EAAQnoB,EAAMv2C,KAAKwyC,aAAatwB,EAAGh5B,EAAGuf,GAC5Cxe,KAAKm5B,IAAIuzD,UAAYjY,EACrBz0E,KAAK82B,QAAQ0xD,UAAY/T,EACzBz0E,KAAK82B,QAAQ4xD,aAAc,CAC7B,CACA,WAAAgS,CAAYv4B,EAAOw4B,EAAS,MAC1B,IAAIrC,EAUJ,OATIt4F,KAAK4wF,eAAehzB,IAAIuE,GAC1Bm2B,EAAUt4F,KAAK4wF,eAAenwF,IAAI0hE,IAElCm2B,GAAA,EAAczS,EAAgB+U,mBAAmB56F,KAAKuhC,UAAU4gC,IAChEniE,KAAK4wF,eAAe9lE,IAAIq3C,EAAOm2B,IAE7BqC,IACFrC,EAAQqC,OAASA,GAEZrC,CACT,CACA,WAAA9yC,CAAY2c,GACV,IAAKniE,KAAK0wF,eACR,OAEF,MAAMv3D,EAAMn5B,KAAKm5B,IACjBn5B,KAAKoiD,OACL,MAAMk2C,EAAUt4F,KAAK06F,YAAYv4B,GACjChpC,EAAIuzD,UAAY4L,EAAQ1E,WAAWz6D,EAAKn5B,MAAM,EAAIwsD,EAAemuB,4BAA4BxhD,GAAM0sD,EAAgBiE,SAAS+Q,SAC5H,MAAMC,GAAM,EAAItuC,EAAemuB,4BAA4BxhD,GAC3D,GAAI2hE,EAAK,CACP,MAAM,MACJ/4D,EAAK,OACLE,GACE9I,EAAIkpC,QACDnY,EAAIC,EAAIC,EAAIC,GAAMiC,EAAMv2C,KAAKgzC,2BAA2B,CAAC,EAAG,EAAGhnB,EAAOE,GAAS64D,GACtF96F,KAAKm5B,IAAIk4D,SAASnnC,EAAIC,EAAIC,EAAKF,EAAIG,EAAKF,EAC1C,MACEnqD,KAAKm5B,IAAIk4D,UAAU,MAAO,KAAM,KAAM,MAExCrxF,KAAK81F,QAAQ91F,KAAK82B,QAAQszD,6BAC1BpqF,KAAKqiD,SACP,CACA,gBAAAoD,IACE,EAAI6G,EAAMpW,aAAa,mCACzB,CACA,cAAAwP,IACE,EAAI4G,EAAMpW,aAAa,iCACzB,CACA,qBAAAkQ,CAAsBu0C,EAAQI,GAC5B,GAAK/6F,KAAK0wF,iBAGV1wF,KAAKoiD,OACLpiD,KAAKowF,mBAAmBxuF,KAAK5B,KAAKmwF,eAC9BxlF,MAAMC,QAAQ+vF,IAA6B,IAAlBA,EAAO90F,QAClC7F,KAAKsiD,aAAaq4C,GAEpB36F,KAAKmwF,eAAgB,EAAI3jC,EAAeiuB,qBAAqBz6E,KAAKm5B,KAC9D4hE,GAAM,CACR,MAAMh5D,EAAQg5D,EAAK,GAAKA,EAAK,GACvB94D,EAAS84D,EAAK,GAAKA,EAAK,GAC9B/6F,KAAKm5B,IAAIswB,KAAKsxC,EAAK,GAAIA,EAAK,GAAIh5D,EAAOE,GACvCjiC,KAAK82B,QAAQ0yD,kBAAiB,EAAIh9B,EAAeiuB,qBAAqBz6E,KAAKm5B,KAAM4hE,GACjF/6F,KAAKujD,OACLvjD,KAAKsjD,SACP,CACF,CACA,mBAAA+C,GACOrmD,KAAK0wF,iBAGV1wF,KAAKqiD,UACLriD,KAAKmwF,cAAgBnwF,KAAKowF,mBAAmBxqF,MAC/C,CACA,UAAA0gD,CAAW00C,GACT,IAAKh7F,KAAK0wF,eACR,OAEF1wF,KAAKoiD,OACDpiD,KAAKuvF,cACPvvF,KAAKm0F,eACLn0F,KAAK82B,QAAQgyD,YAAc,MAE7B,MAAMmS,EAAaj7F,KAAKm5B,IACnB6hE,EAAME,WACT,EAAI5uC,EAAMjhD,MAAM,sCAEd2vF,EAAMG,WACR,EAAI7uC,EAAMhhD,MAAM,kCAElB,MAAMunF,GAAmB,EAAIrmC,EAAeiuB,qBAAqBwgB,GAIjE,GAHID,EAAML,QACRM,EAAW34C,aAAa04C,EAAML,SAE3BK,EAAMD,KACT,MAAM,IAAItvF,MAAM,6BAElB,IAAIk/C,EAAS2B,EAAMv2C,KAAKgzC,2BAA2BiyC,EAAMD,MAAM,EAAIvuC,EAAeiuB,qBAAqBwgB,IACvG,MAAMG,EAAe,CAAC,EAAG,EAAGH,EAAW54B,OAAOtgC,MAAOk5D,EAAW54B,OAAOpgC,QACvE0oB,EAAS2B,EAAMv2C,KAAK2zC,UAAUiB,EAAQywC,IAAiB,CAAC,EAAG,EAAG,EAAG,GACjE,MAAMhkC,EAAU3zC,KAAKi0B,MAAMiT,EAAO,IAC5B0M,EAAU5zC,KAAKi0B,MAAMiT,EAAO,IAClC,IAAI2oC,EAAa7vE,KAAK6H,IAAI7H,KAAKqJ,KAAK69B,EAAO,IAAMyM,EAAS,GACtDm8B,EAAc9vE,KAAK6H,IAAI7H,KAAKqJ,KAAK69B,EAAO,IAAM0M,EAAS,GACvDgkC,EAAS,EACXC,EAAS,EACPhI,EAAavN,IACfsV,EAAS/H,EAAavN,EACtBuN,EAAavN,GAEXwN,EAAcxN,IAChBuV,EAAS/H,EAAcxN,EACvBwN,EAAcxN,GAEhB/lF,KAAK82B,QAAQkyD,uBAAuB,CAAC,EAAG,EAAGsK,EAAYC,IACvD,IAAIa,EAAU,UAAYp0F,KAAKqwF,WAC3B2K,EAAMnN,QACRuG,GAAW,UAAYp0F,KAAKuwF,eAAiB,GAE/C,MAAM8D,EAAgBr0F,KAAK2wF,eAAexK,UAAUiO,EAASd,EAAYC,GACnEgI,EAAWlH,EAAc1sF,QAC/B4zF,EAASrkC,MAAM,EAAImkC,EAAQ,EAAIC,GAC/BC,EAAS5xB,WAAWvS,GAAUC,GAC9BkkC,EAASj5C,aAAauwC,GAClBmI,EAAMnN,MACR7tF,KAAKswF,WAAW1uF,KAAK,CACnBygE,OAAQgyB,EAAchyB,OACtB16D,QAAS4zF,EACTnkC,UACAC,UACAgkC,SACAC,SACAvqB,QAASiqB,EAAMnN,MAAM9c,QACrBsd,SAAU2M,EAAMnN,MAAMQ,SACtBX,YAAasN,EAAMnN,MAAMH,aAAe,KACxC8N,sBAAuB,QAGzBP,EAAW1T,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GACvC0T,EAAWtxB,UAAUvS,EAASC,GAC9B4jC,EAAW/jC,MAAMmkC,EAAQC,GACzBL,EAAW74C,QAEb8pC,EAAa+O,EAAYM,GACzBv7F,KAAKm5B,IAAMoiE,EACXv7F,KAAKmiD,UAAU,CAAC,CAAC,KAAM,eAAgB,CAAC,KAAM,GAAI,CAAC,KAAM,KACzDniD,KAAKiwF,WAAWruF,KAAKq5F,GACrBj7F,KAAKqwF,YACP,CACA,QAAA9pC,CAASy0C,GACP,IAAKh7F,KAAK0wF,eACR,OAEF1wF,KAAKqwF,aACL,MAAMkL,EAAWv7F,KAAKm5B,IAChBA,EAAMn5B,KAAKiwF,WAAWrqF,MAG5B,GAFA5F,KAAKm5B,IAAMA,EACXn5B,KAAKm5B,IAAIu6D,uBAAwB,EAC7BsH,EAAMnN,MACR7tF,KAAKwwF,UAAYxwF,KAAKswF,WAAW1qF,MACjC5F,KAAKqiD,cACA,CACLriD,KAAKm5B,IAAIkpB,UACT,MAAMo5C,GAAa,EAAIjvC,EAAeiuB,qBAAqBz6E,KAAKm5B,KAChEn5B,KAAKqiD,UACLriD,KAAKm5B,IAAIipB,OACTpiD,KAAKm5B,IAAIouD,gBAAgBkU,GACzB,MAAM1F,EAAWzpC,EAAMv2C,KAAKgzC,2BAA2B,CAAC,EAAG,EAAGwyC,EAASl5B,OAAOtgC,MAAOw5D,EAASl5B,OAAOpgC,QAASw5D,GAC9Gz7F,KAAKm5B,IAAIk5C,UAAUkpB,EAASl5B,OAAQ,EAAG,GACvCriE,KAAKm5B,IAAIkpB,UACTriD,KAAK81F,QAAQC,EACf,CACF,CACA,eAAAvvC,CAAgB5wC,EAAI6zC,EAAMnH,EAAWq4C,EAAQe,GAQ3C,GAPA,gBAAA17F,KAAK,KAAL,KAAAA,MACAwsF,EAAkBxsF,KAAKm5B,KACvBn5B,KAAKm5B,IAAIipB,OACTpiD,KAAKoiD,OACDpiD,KAAKmwF,eACPnwF,KAAKm5B,IAAIouD,gBAAgBvnF,KAAKmwF,eAE5BxlF,MAAMC,QAAQ6+C,IAAyB,IAAhBA,EAAK5jD,OAAc,CAC5C,MAAMk8B,EAAQ0nB,EAAK,GAAKA,EAAK,GACvBxnB,EAASwnB,EAAK,GAAKA,EAAK,GAC9B,GAAIiyC,GAAgB17F,KAAKs4D,oBAAqB,EAC5ChW,EAAYA,EAAUr1C,SACZ,IAAMw8C,EAAK,GACrBnH,EAAU,IAAMmH,EAAK,IACrBA,EAAOA,EAAKx8C,SACP,GAAKw8C,EAAK,GAAK,EACpBA,EAAK,GAAK1nB,EACV0nB,EAAK,GAAKxnB,EACV,MAAOo5D,EAAQC,GAAUhvC,EAAMv2C,KAAKozC,+BAA8B,EAAIqD,EAAeiuB,qBAAqBz6E,KAAKm5B,OACzG,cACJ03D,GACE7wF,KACE27F,EAAcl4E,KAAKqJ,KAAKiV,EAAQ/hC,KAAK8wF,aAAeD,GACpD+K,EAAen4E,KAAKqJ,KAAKmV,EAASjiC,KAAK+wF,aAAeF,GAC5D7wF,KAAK67F,iBAAmB77F,KAAKiwD,cAAc/sD,OAAOy4F,EAAaC,GAC/D,MAAM,OACJv5B,EAAM,QACN16D,GACE3H,KAAK67F,iBACT77F,KAAKs4D,oBAAoBxtC,IAAIlV,EAAIysD,GACjCriE,KAAK67F,iBAAiBC,SAAW97F,KAAKm5B,IACtCn5B,KAAKm5B,IAAMxxB,EACX3H,KAAKm5B,IAAIipB,OACTpiD,KAAKm5B,IAAIouD,aAAa8T,EAAQ,EAAG,GAAIC,EAAQ,EAAGr5D,EAASq5D,GACzD9O,EAAkBxsF,KAAKm5B,IACzB,MACEqzD,EAAkBxsF,KAAKm5B,KACvBn5B,KAAKm5B,IAAIswB,KAAKA,EAAK,GAAIA,EAAK,GAAI1nB,EAAOE,GACvCjiC,KAAKm5B,IAAIoqB,OACTvjD,KAAKsjD,SAET,CACAtjD,KAAK82B,QAAU,IAAI2wD,EAAiBznF,KAAKm5B,IAAIkpC,OAAOtgC,MAAO/hC,KAAKm5B,IAAIkpC,OAAOpgC,QAC3EjiC,KAAKsiD,aAAaA,GAClBtiD,KAAKsiD,aAAaq4C,EACpB,CACA,aAAAl0C,GACMzmD,KAAK67F,mBACP77F,KAAKm5B,IAAIkpB,UACT,gBAAAriD,KAAK,KAAL,KAAAA,MACAA,KAAKm5B,IAAMn5B,KAAK67F,iBAAiBC,gBAC1B97F,KAAK67F,iBAAiBC,gBACtB97F,KAAK67F,iBAEhB,CACA,qBAAAn1C,CAAsBwrC,GACpB,IAAKlyF,KAAK0wF,eACR,OAEF,MAAMsC,EAAQd,EAAIc,OAClBd,EAAMlyF,KAAKuhC,UAAU2wD,EAAIttE,KAAMstE,IAC3Bc,MAAQA,EACZ,MAAM75D,EAAMn5B,KAAKm5B,IACXu/D,EAAQ14F,KAAKkwF,gBACnB,GAAIwI,SACqB,IAAnBA,EAAMqD,WACRrD,EAAMqD,SAzpDd,SAA2BzR,GACzB,MAAM,MACJvoD,EAAK,OACLE,GACEqoD,EACJ,GAAIvoD,EAvKsB,KAuKSE,EAvKT,IAwKxB,OAAO,KAET,MACM+5D,EAAc,IAAIryE,WAAW,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,IAC5EsyE,EAASl6D,EAAQ,EACvB,IACIl5B,EAAGghB,EAAGqyE,EADNC,EAAS,IAAIxyE,WAAWsyE,GAAUh6D,EAAS,IAE/C,MAAMm6D,EAAWr6D,EAAQ,GAAI,EAC7B,IAAInd,EAAO,IAAI+E,WAAWyyE,EAAWn6D,GACnCo6D,EAAM,EACR,UAAWC,KAAQhS,EAAQ1lE,KAAM,CAC/B,IAAIinE,EAAO,IACX,KAAOA,EAAO,GACZjnE,EAAKy3E,KAASC,EAAOzQ,EAAO,EAAI,IAChCA,IAAS,CAEb,CACA,IAAImH,EAAQ,EAMZ,IALAqJ,EAAM,EACY,IAAdz3E,EAAKy3E,KACPF,EAAO,GAAK,IACVnJ,GAECnpE,EAAI,EAAGA,EAAIkY,EAAOlY,IACjBjF,EAAKy3E,KAASz3E,EAAKy3E,EAAM,KAC3BF,EAAOtyE,GAAKjF,EAAKy3E,GAAO,EAAI,IAC1BrJ,GAEJqJ,IAMF,IAJkB,IAAdz3E,EAAKy3E,KACPF,EAAOtyE,GAAK,IACVmpE,GAECnqF,EAAI,EAAGA,EAAIo5B,EAAQp5B,IAAK,CAC3BwzF,EAAMxzF,EAAIuzF,EACVF,EAAKrzF,EAAIozF,EACLr3E,EAAKy3E,EAAMD,KAAcx3E,EAAKy3E,KAChCF,EAAOD,GAAMt3E,EAAKy3E,GAAO,EAAI,IAC3BrJ,GAEJ,IAAIuJ,GAAO33E,EAAKy3E,GAAO,EAAI,IAAMz3E,EAAKy3E,EAAMD,GAAY,EAAI,GAC5D,IAAKvyE,EAAI,EAAGA,EAAIkY,EAAOlY,IACrB0yE,GAAOA,GAAO,IAAM33E,EAAKy3E,EAAM,GAAK,EAAI,IAAMz3E,EAAKy3E,EAAMD,EAAW,GAAK,EAAI,GACzEJ,EAAYO,KACdJ,EAAOD,EAAKryE,GAAKmyE,EAAYO,KAC3BvJ,GAEJqJ,IAMF,GAJIz3E,EAAKy3E,EAAMD,KAAcx3E,EAAKy3E,KAChCF,EAAOD,EAAKryE,GAAKjF,EAAKy3E,GAAO,EAAI,IAC/BrJ,GAEAA,EApDyB,IAqD3B,OAAO,IAEX,CAOA,IANAqJ,EAAMD,GAAYn6D,EAAS,GAC3Bi6D,EAAKrzF,EAAIozF,EACS,IAAdr3E,EAAKy3E,KACPF,EAAOD,GAAM,IACXlJ,GAECnpE,EAAI,EAAGA,EAAIkY,EAAOlY,IACjBjF,EAAKy3E,KAASz3E,EAAKy3E,EAAM,KAC3BF,EAAOD,EAAKryE,GAAKjF,EAAKy3E,GAAO,EAAI,IAC/BrJ,GAEJqJ,IAMF,GAJkB,IAAdz3E,EAAKy3E,KACPF,EAAOD,EAAKryE,GAAK,IACfmpE,GAEAA,EAzE2B,IA0E7B,OAAO,KAET,MAAMrB,EAAQ,IAAI6K,WAAW,CAAC,EAAGP,GAAS,EAAG,GAAIA,EAAQ,EAAG,EAAG,EAAG,IAC5DjwF,EAAO,IAAIywF,OACjB,IAAK5zF,EAAI,EAAGmqF,GAASnqF,GAAKo5B,EAAQp5B,IAAK,CACrC,IAAIqG,EAAIrG,EAAIozF,EACZ,MAAMluF,EAAMmB,EAAI6yB,EAChB,KAAO7yB,EAAInB,IAAQouF,EAAOjtF,IACxBA,IAEF,GAAIA,IAAMnB,EACR,SAEF/B,EAAKu2C,OAAOrzC,EAAI+sF,EAAQpzF,GACxB,MAAM6zF,EAAKxtF,EACX,IAAInC,EAAOovF,EAAOjtF,GAClB,EAAG,CACD,MAAM1K,EAAOmtF,EAAM5kF,GACnB,GACEmC,GAAK1K,SACG23F,EAAOjtF,IACjB,MAAMytF,EAAKR,EAAOjtF,GACP,IAAPytF,GAAmB,KAAPA,GACd5vF,EAAO4vF,EACPR,EAAOjtF,GAAK,IAEZnC,EAAO4vF,EAAK,GAAO5vF,GAAQ,EAC3BovF,EAAOjtF,IAAMnC,GAAQ,EAAIA,GAAQ,GAEnCf,EAAKw2C,OAAOtzC,EAAI+sF,EAAQ/sF,EAAI+sF,EAAS,GAChCE,EAAOjtF,MACR8jF,CAEN,OAAS0J,IAAOxtF,KACdrG,CACJ,CAWA,OAVA+b,EAAO,KACPu3E,EAAS,KACW,SAAUtzE,GAC5BA,EAAEu5B,OACFv5B,EAAEquC,MAAM,EAAIn1B,GAAQ,EAAIE,GACxBpZ,EAAE8gD,UAAU,GAAI1nC,GAChBpZ,EAAEm6B,KAAKh3C,GACP6c,EAAE2sE,YACF3sE,EAAEw5B,SACJ,CAEF,CAwhDyBu6C,CAAkB1K,IAEjCwG,EAAMqD,UAER,YADArD,EAAMqD,SAAS5iE,GAInB,MAAM0yD,EAAO7rF,KAAK2yF,kBAAkBT,GAC9Ba,EAAalH,EAAKxpB,OACxBlpC,EAAIipB,OACJjpB,EAAIouD,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GAChCpuD,EAAIk5C,UAAU0gB,EAAYlH,EAAKz0B,QAASy0B,EAAKx0B,SAC7Cl+B,EAAIkpB,UACJriD,KAAK81F,SACP,CACA,2BAAA9uC,CAA4BkrC,EAAKmJ,EAAQwB,EAAQ,EAAGC,EAAQ,EAAGxB,EAAQyB,GACrE,IAAK/8F,KAAK0wF,eACR,OAEFwB,EAAMlyF,KAAKuhC,UAAU2wD,EAAIttE,KAAMstE,GAC/B,MAAM/4D,EAAMn5B,KAAKm5B,IACjBA,EAAIipB,OACJ,MAAMywC,GAAmB,EAAIrmC,EAAeiuB,qBAAqBthD,GACjEA,EAAImpB,UAAU+4C,EAAQwB,EAAOC,EAAOxB,EAAQ,EAAG,GAC/C,MAAMzP,EAAO7rF,KAAK2yF,kBAAkBT,GACpC/4D,EAAIouD,aAAa,EAAG,EAAG,EAAG,EAAGsE,EAAKz0B,QAAUy7B,EAAiB,GAAIhH,EAAKx0B,QAAUw7B,EAAiB,IACjG,QAAShqF,EAAI,EAAGovC,EAAK8kD,EAAUl3F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAAG,CACrD,MAAMm0F,EAAQ1wC,EAAMv2C,KAAKusC,UAAUuwC,EAAkB,CAACwI,EAAQwB,EAAOC,EAAOxB,EAAQyB,EAAUl0F,GAAIk0F,EAAUl0F,EAAI,MACzGzJ,EAAG4F,GAAKsnD,EAAMv2C,KAAK8yC,eAAe,CAAC,EAAG,GAAIm0C,GACjD7jE,EAAIk5C,UAAUwZ,EAAKxpB,OAAQjjE,EAAG4F,EAChC,CACAm0B,EAAIkpB,UACJriD,KAAK81F,SACP,CACA,0BAAAnvC,CAA2Bs2C,GACzB,IAAKj9F,KAAK0wF,eACR,OAEF,MAAMv3D,EAAMn5B,KAAKm5B,IACXqvD,EAAYxoF,KAAK82B,QAAQ0xD,UACzBoK,EAAgB5yF,KAAK82B,QAAQ4xD,YACnC,UAAWvW,KAAS8qB,EAAQ,CAC1B,MAAM,KACJr4E,EAAI,MACJmd,EAAK,OACLE,EAAM,UACNqgB,GACE6vB,EACE4gB,EAAa/yF,KAAK2wF,eAAexK,UAAU,aAAcpkD,EAAOE,GAChEmsD,EAAU2E,EAAWprF,QAC3BymF,EAAQhsC,OAER2pC,EAAmBqC,EADPpuF,KAAKuhC,UAAU3c,EAAMutD,IAEjCic,EAAQpB,yBAA2B,YACnCoB,EAAQ1B,UAAYkG,EAAgBpK,EAAUoL,WAAWxF,EAASpuF,MAAM,EAAIwsD,EAAemuB,4BAA4BxhD,GAAM0sD,EAAgBiE,SAAS9tC,MAAQwsC,EAC9J4F,EAAQiD,SAAS,EAAG,EAAGtvD,EAAOE,GAC9BmsD,EAAQ/rC,UACRlpB,EAAIipB,OACJjpB,EAAImpB,aAAaA,GACjBnpB,EAAI+9B,MAAM,GAAI,GACdmvB,EAAyBltD,EAAK45D,EAAW1wB,OAAQ,EAAG,EAAGtgC,EAAOE,EAAQ,GAAI,EAAG,EAAG,GAChF9I,EAAIkpB,SACN,CACAriD,KAAK81F,SACP,CACA,iBAAAlvC,CAAkBub,GAChB,IAAKniE,KAAK0wF,eACR,OAEF,MAAMpG,EAAUtqF,KAAKuhC,UAAU4gC,GAC1BmoB,EAILtqF,KAAK6mD,wBAAwByjC,IAH3B,EAAIh+B,EAAMhhD,MAAM,kCAIpB,CACA,uBAAAy7C,CAAwBob,EAAOk5B,EAAQC,EAAQyB,GAC7C,IAAK/8F,KAAK0wF,eACR,OAEF,MAAMpG,EAAUtqF,KAAKuhC,UAAU4gC,GAC/B,IAAKmoB,EAEH,YADA,EAAIh+B,EAAMhhD,MAAM,mCAGlB,MAAMy2B,EAAQuoD,EAAQvoD,MAChBE,EAASqoD,EAAQroD,OACjBh6B,EAAM,GACZ,QAASY,EAAI,EAAGovC,EAAK8kD,EAAUl3F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAClDZ,EAAIrG,KAAK,CACP0gD,UAAW,CAAC+4C,EAAQ,EAAG,EAAGC,EAAQyB,EAAUl0F,GAAIk0F,EAAUl0F,EAAI,IAC9DzJ,EAAG,EACH4F,EAAG,EACH2jC,EAAG5G,EACH6G,EAAG3G,IAGPjiC,KAAK8mD,6BAA6BwjC,EAASriF,EAC7C,CACA,yBAAAi1F,CAA0B/jE,GAMxB,MALkC,SAA9Bn5B,KAAK82B,QAAQiyD,eACf5vD,EAAIjzB,OAASlG,KAAK82B,QAAQiyD,aAC1B5vD,EAAIk5C,UAAUl5C,EAAIkpC,OAAQ,EAAG,GAC7BlpC,EAAIjzB,OAAS,QAERizB,EAAIkpC,MACb,CACA,yBAAA86B,CAA0B7S,GACxB,GAAkC,SAA9BtqF,KAAK82B,QAAQiyD,aACf,OAAOuB,EAAQxoB,OAEjB,MAAM,OACJA,EAAM,MACN//B,EAAK,OACLE,GACEqoD,EACE6H,EAAYnyF,KAAK2wF,eAAexK,UAAU,cAAepkD,EAAOE,GAChEmwD,EAASD,EAAUxqF,QAIzB,OAHAyqF,EAAOlsF,OAASlG,KAAK82B,QAAQiyD,aAC7BqJ,EAAO/f,UAAUvQ,EAAQ,EAAG,GAC5BswB,EAAOlsF,OAAS,OACTisF,EAAU9vB,MACnB,CACA,uBAAAxb,CAAwByjC,GACtB,IAAKtqF,KAAK0wF,eACR,OAEF,MAAM3uD,EAAQuoD,EAAQvoD,MAChBE,EAASqoD,EAAQroD,OACjB9I,EAAMn5B,KAAKm5B,IAEjB,GADAn5B,KAAKoiD,QACAkK,EAAMpU,SAAU,CACnB,MAAM,OACJhyC,GACEizB,EACW,SAAXjzB,GAAgC,KAAXA,IACvBizB,EAAIjzB,OAAS,OAEjB,CAEA,IAAIk3F,EACJ,GAFAjkE,EAAI+9B,MAAM,EAAIn1B,GAAQ,EAAIE,GAEtBqoD,EAAQxoB,OACVs7B,EAAap9F,KAAKm9F,0BAA0B7S,QACvC,GAA2B,mBAAhBt3C,aAA8Bs3C,aAAmBt3C,cAAgBs3C,EAAQ1lE,KACzFw4E,EAAa9S,MACR,CACL,MACM8H,EADYpyF,KAAK2wF,eAAexK,UAAU,cAAepkD,EAAOE,GAC7Ct6B,QACzB0iF,EAAmB+H,EAAQ9H,GAC3B8S,EAAap9F,KAAKk9F,0BAA0B9K,EAC9C,CACA,MAAMU,EAAS9yF,KAAKiyF,YAAYmL,GAAY,EAAI5wC,EAAemuB,4BAA4BxhD,IAC3FA,EAAIu6D,sBAAwB7E,GAAyB,EAAIriC,EAAeiuB,qBAAqBthD,GAAMmxD,EAAQwE,aAC3GzI,EAAyBltD,EAAK25D,EAAOZ,IAAK,EAAG,EAAGY,EAAOP,WAAYO,EAAON,YAAa,GAAIvwD,EAAQF,EAAOE,GAC1GjiC,KAAK81F,UACL91F,KAAKqiD,SACP,CACA,4BAAAyE,CAA6BwjC,EAASriF,GACpC,IAAKjI,KAAK0wF,eACR,OAEF,MAAMv3D,EAAMn5B,KAAKm5B,IACjB,IAAIikE,EACJ,GAAI9S,EAAQxoB,OACVs7B,EAAa9S,EAAQxoB,WAChB,CACL,MAAMn5B,EAAI2hD,EAAQvoD,MACZ6G,EAAI0hD,EAAQroD,OAEZmwD,EADYpyF,KAAK2wF,eAAexK,UAAU,cAAex9C,EAAGC,GACzCjhC,QACzB0iF,EAAmB+H,EAAQ9H,GAC3B8S,EAAap9F,KAAKk9F,0BAA0B9K,EAC9C,CACA,UAAW1tB,KAASz8D,EAClBkxB,EAAIipB,OACJjpB,EAAImpB,aAAaoiB,EAAMpiB,WACvBnpB,EAAI+9B,MAAM,GAAI,GACdmvB,EAAyBltD,EAAKikE,EAAY14B,EAAMtlE,EAAGslE,EAAM1/D,EAAG0/D,EAAM/7B,EAAG+7B,EAAM97B,EAAG,GAAI,EAAG,EAAG,GACxFzP,EAAIkpB,UAENriD,KAAK81F,SACP,CACA,wBAAA7uC,GACOjnD,KAAK0wF,iBAGV1wF,KAAKm5B,IAAIk4D,SAAS,EAAG,EAAG,EAAG,GAC3BrxF,KAAK81F,UACP,CACA,SAAAjwC,CAAUhxC,GAAM,CAChB,cAAAixC,CAAejxC,EAAK4R,GAAa,CACjC,kBAAAs/B,CAAmBlxC,GACjB7U,KAAK6vF,mBAAmBjuF,KAAK,CAC3By7F,SAAS,GAEb,CACA,uBAAAr3C,CAAwBnxC,EAAK4R,GACf,OAAR5R,EACF7U,KAAK6vF,mBAAmBjuF,KAAK,CAC3By7F,QAASr9F,KAAK+5D,sBAAsBujC,UAAU72E,KAGhDzmB,KAAK6vF,mBAAmBjuF,KAAK,CAC3By7F,SAAS,IAGbr9F,KAAK0wF,eAAiB1wF,KAAKu9F,kBAC7B,CACA,gBAAAt3C,GACEjmD,KAAK6vF,mBAAmBjqF,MACxB5F,KAAK0wF,eAAiB1wF,KAAKu9F,kBAC7B,CACA,WAAAr3C,GAAe,CACf,SAAAC,GAAa,CACb,WAAAowC,CAAYtN,GACV,MAAM5f,EAAUrpE,KAAK82B,QAAQozD,cACzBlqF,KAAK8vF,aACP9vF,KAAK82B,QAAQmzD,qBAEVjqF,KAAK8vF,aACR9vF,KAAK81F,QAAQ7M,GAEf,MAAM9vD,EAAMn5B,KAAKm5B,IACbn5B,KAAK8vF,cACFzmB,IACCrpE,KAAK8vF,cAAgBT,EACvBl2D,EAAIoqB,KAAK,WAETpqB,EAAIoqB,QAGRvjD,KAAK8vF,YAAc,MAErB9vF,KAAK82B,QAAQkyD,uBAAuBhpF,KAAK82B,QAAQmyD,SACjD9vD,EAAIq8D,WACN,CACA,mBAAA+C,GACE,IAAKv4F,KAAKixF,2BAA4B,CACpC,MAAM7tF,GAAI,EAAIopD,EAAeiuB,qBAAqBz6E,KAAKm5B,KACvD,GAAa,IAAT/1B,EAAE,IAAqB,IAATA,EAAE,GAClBpD,KAAKixF,2BAA6B,EAAIxtE,KAAKE,IAAIF,KAAKunC,IAAI5nD,EAAE,IAAKqgB,KAAKunC,IAAI5nD,EAAE,SACrE,CACL,MAAMo6F,EAAS/5E,KAAKunC,IAAI5nD,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IACzCq6F,EAAQh6E,KAAKktD,MAAMvtE,EAAE,GAAIA,EAAE,IAC3Bs6F,EAAQj6E,KAAKktD,MAAMvtE,EAAE,GAAIA,EAAE,IACjCpD,KAAKixF,2BAA6BxtE,KAAK6H,IAAImyE,EAAOC,GAASF,CAC7D,CACF,CACA,OAAOx9F,KAAKixF,0BACd,CACA,mBAAA0M,GACE,IAAyC,IAArC39F,KAAKgxF,wBAAwB,GAAW,CAC1C,MAAM,UACJnI,GACE7oF,KAAK82B,SACH,EACJh3B,EAAC,EACD0e,EAAC,EACDqK,EAAC,EACDtoB,GACEP,KAAKm5B,IAAIuhD,eACb,IAAI2gB,EAAQC,EACZ,GAAU,IAAN98E,GAAiB,IAANqK,EAAS,CACtB,MAAM40E,EAAQh6E,KAAKunC,IAAIlrD,GACjB49F,EAAQj6E,KAAKunC,IAAIzqD,GACvB,GAAIk9F,IAAUC,EACZ,GAAkB,IAAd7U,EACFwS,EAASC,EAAS,EAAImC,MACjB,CACL,MAAMG,EAAkBH,EAAQ5U,EAChCwS,EAASC,EAASsC,EAAkB,EAAI,EAAIA,EAAkB,CAChE,MACK,GAAkB,IAAd/U,EACTwS,EAAS,EAAIoC,EACbnC,EAAS,EAAIoC,MACR,CACL,MAAMG,EAAmBJ,EAAQ5U,EAC3BiV,EAAmBJ,EAAQ7U,EACjCwS,EAASwC,EAAmB,EAAI,EAAIA,EAAmB,EACvDvC,EAASwC,EAAmB,EAAI,EAAIA,EAAmB,CACzD,CACF,KAAO,CACL,MAAMN,EAAS/5E,KAAKunC,IAAIlrD,EAAIS,EAAIie,EAAIqK,GAC9B40E,EAAQh6E,KAAKktD,MAAM7wE,EAAG0e,GACtBk/E,EAAQj6E,KAAKktD,MAAM9nD,EAAGtoB,GAC5B,GAAkB,IAAdsoF,EACFwS,EAASqC,EAAQF,EACjBlC,EAASmC,EAAQD,MACZ,CACL,MAAMO,EAAWlV,EAAY2U,EAC7BnC,EAASqC,EAAQK,EAAWL,EAAQK,EAAW,EAC/CzC,EAASmC,EAAQM,EAAWN,EAAQM,EAAW,CACjD,CACF,CACA/9F,KAAKgxF,wBAAwB,GAAKqK,EAClCr7F,KAAKgxF,wBAAwB,GAAKsK,CACpC,CACA,OAAOt7F,KAAKgxF,uBACd,CACA,gBAAAwF,CAAiBwH,GACf,MAAM,IACJ7kE,GACEn5B,MACE,UACJ6oF,GACE7oF,KAAK82B,SACFukE,EAAQC,GAAUt7F,KAAK29F,sBAE9B,GADAxkE,EAAI0vD,UAAYA,GAAa,EACd,IAAXwS,GAA2B,IAAXC,EAElB,YADAniE,EAAI2pB,SAGN,MAAMm7C,EAAS9kE,EAAImzD,cAKnB,GAJI0R,GACF7kE,EAAIipB,OAENjpB,EAAI+9B,MAAMmkC,EAAQC,GACd2C,EAAOp4F,OAAS,EAAG,CACrB,MAAMqxD,EAAQzzC,KAAK6H,IAAI+vE,EAAQC,GAC/BniE,EAAIkzD,YAAY4R,EAAOh2F,KAAI7I,GAAKA,EAAI83D,KACpC/9B,EAAIozD,gBAAkBr1B,CACxB,CACA/9B,EAAI2pB,SACAk7C,GACF7kE,EAAIkpB,SAER,CACA,gBAAAk7C,GACE,QAAS10F,EAAI7I,KAAK6vF,mBAAmBhqF,OAAS,EAAGgD,GAAK,EAAGA,IACvD,IAAK7I,KAAK6vF,mBAAmBhnF,GAAGw0F,QAC9B,OAAO,EAGX,OAAO,CACT,GAEFx+F,EAAQ4kE,eAAiBA,EACzB,UAAW/9D,KAAM4mD,EAAMjY,SACgB,IAAjCovB,EAAelkE,UAAUmG,KAC3B+9D,EAAelkE,UAAU+sD,EAAMjY,IAAI3uC,IAAO+9D,EAAelkE,UAAUmG,GAEvE,EAIO,CAACguC,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ47F,cAAgB57F,EAAQirF,cAAW,EAC3CjrF,EAAQ+7F,kBA0SR,SAA2BN,GACzB,OAAQA,EAAG,IACT,IAAK,cACH,OAAO,IAAI4D,EAA0B5D,GACvC,IAAK,OACH,OAAO,IAAI6D,EAAmB7D,GAChC,IAAK,QACH,OAAO,IAAI8D,EAEf,MAAM,IAAI3yF,MAAM,oBAAoB6uF,EAAG,KACzC,EAnTA,IAAIhuC,EAAQf,EAAoB,GAC5BiB,EAAiBjB,EAAoB,GACzC,MAAMu+B,EAAW,CACf9tC,KAAM,OACNC,OAAQ,SACR4+C,QAAS,WAGX,SAASwD,EAAiBllE,EAAK4hE,GAC7B,IAAKA,EACH,OAEF,MAAMh5D,EAAQg5D,EAAK,GAAKA,EAAK,GACvB94D,EAAS84D,EAAK,GAAKA,EAAK,GACxBuD,EAAS,IAAI7B,OACnB6B,EAAO70C,KAAKsxC,EAAK,GAAIA,EAAK,GAAIh5D,EAAOE,GACrC9I,EAAIoqB,KAAK+6C,EACX,CAVAz/F,EAAQirF,SAAWA,EAWnB,MAAMyU,EACJ,WAAA5/E,GACM3e,KAAK2e,cAAgB4/E,IACvB,EAAIjyC,EAAMpW,aAAa,wCAE3B,CACA,UAAA09C,IACE,EAAItnC,EAAMpW,aAAa,uCACzB,EAEF,MAAMgoD,UAAkCK,EACtC,WAAA5/E,CAAY27E,GACV7yC,QACAznD,KAAK2kE,MAAQ21B,EAAG,GAChBt6F,KAAKw+F,MAAQlE,EAAG,GAChBt6F,KAAKy+F,YAAcnE,EAAG,GACtBt6F,KAAK0+F,IAAMpE,EAAG,GACdt6F,KAAK2+F,IAAMrE,EAAG,GACdt6F,KAAK4+F,IAAMtE,EAAG,GACdt6F,KAAK6+F,IAAMvE,EAAG,GACdt6F,KAAK26F,OAAS,IAChB,CACA,eAAAmE,CAAgB3lE,GACd,IAAI4lE,EACe,UAAf/+F,KAAK2kE,MACPo6B,EAAO5lE,EAAI6lE,qBAAqBh/F,KAAK0+F,IAAI,GAAI1+F,KAAK0+F,IAAI,GAAI1+F,KAAK2+F,IAAI,GAAI3+F,KAAK2+F,IAAI,IACxD,WAAf3+F,KAAK2kE,QACdo6B,EAAO5lE,EAAI8lE,qBAAqBj/F,KAAK0+F,IAAI,GAAI1+F,KAAK0+F,IAAI,GAAI1+F,KAAK4+F,IAAK5+F,KAAK2+F,IAAI,GAAI3+F,KAAK2+F,IAAI,GAAI3+F,KAAK6+F,MAErG,UAAWK,KAAal/F,KAAKy+F,YAC3BM,EAAKI,aAAaD,EAAU,GAAIA,EAAU,IAE5C,OAAOH,CACT,CACA,UAAAnL,CAAWz6D,EAAKimE,EAAOzL,EAAS9J,GAC9B,IAAIyO,EACJ,GAAIzO,IAAaC,EAAS7tC,QAAU4tC,IAAaC,EAAS9tC,KAAM,CAC9D,MAAMqjD,EAAYD,EAAMtoE,QAAQszD,0BAA0BP,GAAU,EAAIr9B,EAAeiuB,qBAAqBthD,KAAS,CAAC,EAAG,EAAG,EAAG,GACzH4I,EAAQte,KAAKqJ,KAAKuyE,EAAU,GAAKA,EAAU,KAAO,EAClDp9D,EAASxe,KAAKqJ,KAAKuyE,EAAU,GAAKA,EAAU,KAAO,EACnDlN,EAAYiN,EAAMzO,eAAexK,UAAU,UAAWpkD,EAAOE,GAAQ,GACrEmwD,EAASD,EAAUxqF,QACzByqF,EAAOM,UAAU,EAAG,EAAGN,EAAO/vB,OAAOtgC,MAAOqwD,EAAO/vB,OAAOpgC,QAC1DmwD,EAAOoD,YACPpD,EAAO3oC,KAAK,EAAG,EAAG2oC,EAAO/vB,OAAOtgC,MAAOqwD,EAAO/vB,OAAOpgC,QACrDmwD,EAAOzoB,WAAW01B,EAAU,IAAKA,EAAU,IAC3C1L,EAAUrnC,EAAMv2C,KAAKusC,UAAUqxC,EAAS,CAAC,EAAG,EAAG,EAAG,EAAG0L,EAAU,GAAIA,EAAU,KAC7EjN,EAAO9vC,aAAa88C,EAAMjP,eACtBnwF,KAAK26F,QACPvI,EAAO9vC,aAAatiD,KAAK26F,QAE3B0D,EAAiBjM,EAAQpyF,KAAKw+F,OAC9BpM,EAAO1F,UAAY1sF,KAAK8+F,gBAAgB1M,GACxCA,EAAOpvC,OACPs1C,EAAUn/D,EAAImmE,cAAcnN,EAAU9vB,OAAQ,aAC9C,MAAMk9B,EAAY,IAAIC,UAAU7L,GAChC2E,EAAQ/Q,aAAagY,EACvB,MACElB,EAAiBllE,EAAKn5B,KAAKw+F,OAC3BlG,EAAUt4F,KAAK8+F,gBAAgB3lE,GAEjC,OAAOm/D,CACT,EAEF,SAASmH,EAAa76E,EAAMjd,EAAS6wC,EAAIC,EAAIuQ,EAAI02C,EAAIC,EAAIC,GACvD,MAAMC,EAASl4F,EAAQk4F,OACrBvrB,EAAS3sE,EAAQ2sE,OACbrpD,EAAQrG,EAAKA,KACjBk7E,EAAuB,EAAbl7E,EAAKmd,MACjB,IAAI3Y,EACAy2E,EAAOrnD,EAAK,GAAKqnD,EAAOpnD,EAAK,KAC/BrvB,EAAMovB,EACNA,EAAKC,EACLA,EAAKrvB,EACLA,EAAMs2E,EACNA,EAAKC,EACLA,EAAKv2E,GAEHy2E,EAAOpnD,EAAK,GAAKonD,EAAO72C,EAAK,KAC/B5/B,EAAMqvB,EACNA,EAAKuQ,EACLA,EAAK5/B,EACLA,EAAMu2E,EACNA,EAAKC,EACLA,EAAKx2E,GAEHy2E,EAAOrnD,EAAK,GAAKqnD,EAAOpnD,EAAK,KAC/BrvB,EAAMovB,EACNA,EAAKC,EACLA,EAAKrvB,EACLA,EAAMs2E,EACNA,EAAKC,EACLA,EAAKv2E,GAEP,MAAMghC,GAAMy1C,EAAOrnD,GAAM7wC,EAAQyvD,SAAWzvD,EAAQ0zF,OAC9ChxC,GAAMw1C,EAAOrnD,EAAK,GAAK7wC,EAAQ0vD,SAAW1vD,EAAQ2zF,OAClDhxC,GAAMu1C,EAAOpnD,GAAM9wC,EAAQyvD,SAAWzvD,EAAQ0zF,OAC9C9wC,GAAMs1C,EAAOpnD,EAAK,GAAK9wC,EAAQ0vD,SAAW1vD,EAAQ2zF,OAClD9wC,GAAMq1C,EAAO72C,GAAMrhD,EAAQyvD,SAAWzvD,EAAQ0zF,OAC9C5wC,GAAMo1C,EAAO72C,EAAK,GAAKrhD,EAAQ0vD,SAAW1vD,EAAQ2zF,OACxD,GAAIjxC,GAAMI,EACR,OAEF,MAAMs1C,EAAMzrB,EAAOorB,GACjBM,EAAM1rB,EAAOorB,EAAK,GAClBO,EAAM3rB,EAAOorB,EAAK,GACdQ,EAAM5rB,EAAOqrB,GACjBQ,EAAM7rB,EAAOqrB,EAAK,GAClBS,EAAM9rB,EAAOqrB,EAAK,GACdU,EAAM/rB,EAAOsrB,GACjBU,EAAMhsB,EAAOsrB,EAAK,GAClBW,EAAMjsB,EAAOsrB,EAAK,GACdvW,EAAO5lE,KAAKonD,MAAMxgB,GACtBk/B,EAAO9lE,KAAKonD,MAAMpgB,GACpB,IAAI+1C,EAAIC,EAAKC,EAAKC,EACdC,EAAIC,EAAKC,EAAKC,EAClB,QAAS/7F,EAAIqkF,EAAMrkF,GAAKukF,EAAMvkF,IAAK,CACjC,GAAIA,EAAIulD,EAAI,CACV,MAAMjqD,EAAI0E,EAAIqlD,EAAK,GAAKA,EAAKrlD,IAAMqlD,EAAKE,GACxCi2C,EAAKp2C,GAAMA,EAAKE,GAAMhqD,EACtBmgG,EAAMV,GAAOA,EAAMG,GAAO5/F,EAC1BogG,EAAMV,GAAOA,EAAMG,GAAO7/F,EAC1BqgG,EAAMV,GAAOA,EAAMG,GAAO9/F,CAC5B,KAAO,CACL,IAAIA,EAEFA,EADE0E,EAAIylD,EACF,EACKF,IAAOE,EACZ,GAECF,EAAKvlD,IAAMulD,EAAKE,GAEvB+1C,EAAKl2C,GAAMA,EAAKE,GAAMlqD,EACtBmgG,EAAMP,GAAOA,EAAMG,GAAO//F,EAC1BogG,EAAMP,GAAOA,EAAMG,GAAOhgG,EAC1BqgG,EAAMP,GAAOA,EAAMG,GAAOjgG,CAC5B,CACA,IAAIA,EAEFA,EADE0E,EAAIqlD,EACF,EACKrlD,EAAIylD,EACT,GAECJ,EAAKrlD,IAAMqlD,EAAKI,GAEvBm2C,EAAKx2C,GAAMA,EAAKI,GAAMlqD,EACtBugG,EAAMd,GAAOA,EAAMM,GAAO//F,EAC1BwgG,EAAMd,GAAOA,EAAMM,GAAOhgG,EAC1BygG,EAAMd,GAAOA,EAAMM,GAAOjgG,EAC1B,MAAM0gG,EAAMv9E,KAAKonD,MAAMpnD,KAAKE,IAAI68E,EAAII,IAC9BK,EAAMx9E,KAAKonD,MAAMpnD,KAAK6H,IAAIk1E,EAAII,IACpC,IAAI/2E,EAAIi2E,EAAU96F,EAAU,EAANg8F,EACtB,QAAS5hG,EAAI4hG,EAAK5hG,GAAK6hG,EAAK7hG,IAC1BkB,GAAKkgG,EAAKphG,IAAMohG,EAAKI,GACjBtgG,EAAI,EACNA,EAAI,EACKA,EAAI,IACbA,EAAI,GAEN2qB,EAAMpB,KAAO42E,GAAOA,EAAMI,GAAOvgG,EAAI,EACrC2qB,EAAMpB,KAAO62E,GAAOA,EAAMI,GAAOxgG,EAAI,EACrC2qB,EAAMpB,KAAO82E,GAAOA,EAAMI,GAAOzgG,EAAI,EACrC2qB,EAAMpB,KAAO,GAEjB,CACF,CACA,SAASq3E,EAAWt8E,EAAMu8E,EAAQx5F,GAChC,MAAMy5F,EAAKD,EAAOtB,OACZwB,EAAKF,EAAO7sB,OAClB,IAAIzrE,EAAGovC,EACP,OAAQkpD,EAAOp0F,MACb,IAAK,UACH,MAAMu0F,EAAiBH,EAAOG,eACxBC,EAAO99E,KAAKi0B,MAAM0pD,EAAGv7F,OAASy7F,GAAkB,EAChDE,EAAOF,EAAiB,EAC9B,IAAKz4F,EAAI,EAAGA,EAAI04F,EAAM14F,IAAK,CACzB,IAAI44F,EAAI54F,EAAIy4F,EACZ,QAASz3E,EAAI,EAAGA,EAAI23E,EAAM33E,IAAK43E,IAC7BhC,EAAa76E,EAAMjd,EAASy5F,EAAGK,GAAIL,EAAGK,EAAI,GAAIL,EAAGK,EAAIH,GAAiBD,EAAGI,GAAIJ,EAAGI,EAAI,GAAIJ,EAAGI,EAAIH,IAC/F7B,EAAa76E,EAAMjd,EAASy5F,EAAGK,EAAIH,EAAiB,GAAIF,EAAGK,EAAI,GAAIL,EAAGK,EAAIH,GAAiBD,EAAGI,EAAIH,EAAiB,GAAID,EAAGI,EAAI,GAAIJ,EAAGI,EAAIH,GAE7I,CACA,MACF,IAAK,YACH,IAAKz4F,EAAI,EAAGovC,EAAKmpD,EAAGv7F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EACvC42F,EAAa76E,EAAMjd,EAASy5F,EAAGv4F,GAAIu4F,EAAGv4F,EAAI,GAAIu4F,EAAGv4F,EAAI,GAAIw4F,EAAGx4F,GAAIw4F,EAAGx4F,EAAI,GAAIw4F,EAAGx4F,EAAI,IAEpF,MACF,QACE,MAAM,IAAI4C,MAAM,kBAEtB,CACA,MAAM0yF,UAA2BI,EAC/B,WAAA5/E,CAAY27E,GACV7yC,QACAznD,KAAK0hG,QAAUpH,EAAG,GAClBt6F,KAAKq0E,QAAUimB,EAAG,GAClBt6F,KAAK2hG,SAAWrH,EAAG,GACnBt6F,KAAK4hG,QAAUtH,EAAG,GAClBt6F,KAAKw+F,MAAQlE,EAAG,GAChBt6F,KAAK6hG,YAAcvH,EAAG,GACtBt6F,KAAK26F,OAAS,IAChB,CACA,iBAAAmH,CAAkBC,EAAeC,EAAiBrR,GAChD,MAGMv5B,EAAU3zC,KAAKi0B,MAAM13C,KAAK4hG,QAAQ,IAClCvqC,EAAU5zC,KAAKi0B,MAAM13C,KAAK4hG,QAAQ,IAClCK,EAAcx+E,KAAKqJ,KAAK9sB,KAAK4hG,QAAQ,IAAMxqC,EAC3C8qC,EAAez+E,KAAKqJ,KAAK9sB,KAAK4hG,QAAQ,IAAMvqC,EAC5Ct1B,EAAQte,KAAKE,IAAIF,KAAKqJ,KAAKrJ,KAAKunC,IAAIi3C,EAAcF,EAAc,GAP/C,MACE,KAOnB9/D,EAASxe,KAAKE,IAAIF,KAAKqJ,KAAKrJ,KAAKunC,IAAIk3C,EAAeH,EAAc,GARjD,MACE,KAQnB1G,EAAS4G,EAAclgE,EACvBu5D,EAAS4G,EAAejgE,EACxBt6B,EAAU,CACdk4F,OAAQ7/F,KAAK0hG,QACbptB,OAAQt0E,KAAKq0E,QACbjd,SAAUA,EACVC,SAAUA,EACVgkC,OAAQ,EAAIA,EACZC,OAAQ,EAAIA,GAER6G,EAAcpgE,EAAQqgE,EACtBC,EAAepgE,EAASmgE,EACxBjQ,EAAYxB,EAAexK,UAAU,OAAQgc,EAAaE,GAAc,GACxEjQ,EAASD,EAAUxqF,QACnBid,EAAOwtE,EAAOvH,gBAAgB9oD,EAAOE,GAC3C,GAAI+/D,EAAiB,CACnB,MAAM/2E,EAAQrG,EAAKA,KACnB,QAAS/b,EAAI,EAAGovC,EAAKhtB,EAAMplB,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAC9CoiB,EAAMpiB,GAAKm5F,EAAgB,GAC3B/2E,EAAMpiB,EAAI,GAAKm5F,EAAgB,GAC/B/2E,EAAMpiB,EAAI,GAAKm5F,EAAgB,GAC/B/2E,EAAMpiB,EAAI,GAAK,GAEnB,CACA,UAAWs4F,KAAUnhG,KAAK2hG,SACxBT,EAAWt8E,EAAMu8E,EAAQx5F,GAI3B,OAFAyqF,EAAO5H,aAAa5lE,EAlCA,KAoCb,CACLy9C,OAFa8vB,EAAU9vB,OAGvBjL,QAASA,EAtCS,EAsCeikC,EACjChkC,QAASA,EAvCS,EAuCeikC,EACjCD,SACAC,SAEJ,CACA,UAAA1H,CAAWz6D,EAAKimE,EAAOzL,EAAS9J,GAE9B,IAAI3yB,EACJ,GAFAmnC,EAAiBllE,EAAKn5B,KAAKw+F,OAEvB3U,IAAaC,EAAS+Q,QACxB3jC,EAAQ5K,EAAMv2C,KAAKozC,+BAA8B,EAAIqD,EAAeiuB,qBAAqBthD,SAGzF,GADA+9B,EAAQ5K,EAAMv2C,KAAKozC,8BAA8Bi2C,EAAMjP,eACnDnwF,KAAK26F,OAAQ,CACf,MAAM2H,EAAch2C,EAAMv2C,KAAKozC,8BAA8BnpD,KAAK26F,QAClEzjC,EAAQ,CAACA,EAAM,GAAKorC,EAAY,GAAIprC,EAAM,GAAKorC,EAAY,GAC7D,CAEF,MAAMC,EAAyBviG,KAAK8hG,kBAAkB5qC,EAAO2yB,IAAaC,EAAS+Q,QAAU,KAAO76F,KAAK6hG,YAAazC,EAAMzO,gBAS5H,OARI9G,IAAaC,EAAS+Q,UACxB1hE,EAAIouD,gBAAgB6X,EAAMjP,eACtBnwF,KAAK26F,QACPxhE,EAAImpB,aAAatiD,KAAK26F,SAG1BxhE,EAAIwwC,UAAU44B,EAAuBnrC,QAASmrC,EAAuBlrC,SACrEl+B,EAAI+9B,MAAMqrC,EAAuBlH,OAAQkH,EAAuBjH,QACzDniE,EAAImmE,cAAciD,EAAuBlgC,OAAQ,YAC1D,EAEF,MAAM+7B,UAA4BG,EAChC,UAAA3K,GACE,MAAO,SACT,EAaF,MAAM4O,EACK,EADLA,EAEO,EAEP,EAAN,MAAM,EAEJ,WAAA7jF,CAAY27E,EAAI7lB,EAAOt7C,EAAKohE,EAAuBpK,GACjDnwF,KAAK84D,aAAewhC,EAAG,GACvBt6F,KAAK26F,OAASL,EAAG,IAAM,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,GACvCt6F,KAAK+6F,KAAOT,EAAG,GACft6F,KAAKyiG,MAAQnI,EAAG,GAChBt6F,KAAK0iG,MAAQpI,EAAG,GAChBt6F,KAAK2iG,UAAYrI,EAAG,GACpBt6F,KAAK4iG,WAAatI,EAAG,GACrBt6F,KAAKy0E,MAAQA,EACbz0E,KAAKm5B,IAAMA,EACXn5B,KAAKu6F,sBAAwBA,EAC7Bv6F,KAAKmwF,cAAgBA,CACvB,CACA,mBAAA0S,CAAoBzD,GAClB,MAAMtmC,EAAe94D,KAAK84D,aACpBiiC,EAAO/6F,KAAK+6F,KACZ0H,EAAQziG,KAAKyiG,MACbC,EAAQ1iG,KAAK0iG,MACbC,EAAY3iG,KAAK2iG,UACjBC,EAAa5iG,KAAK4iG,WAClBnuB,EAAQz0E,KAAKy0E,MACb8lB,EAAwBv6F,KAAKu6F,uBACnC,EAAIjuC,EAAMjhD,MAAM,eAAiBu3F,GACjC,MAAM14C,EAAK6wC,EAAK,GACd5wC,EAAK4wC,EAAK,GACV3wC,EAAK2wC,EAAK,GACV1wC,EAAK0wC,EAAK,GACNuH,EAAch2C,EAAMv2C,KAAKozC,8BAA8BnpD,KAAK26F,QAC5DmI,EAAiBx2C,EAAMv2C,KAAKozC,8BAA8BnpD,KAAKmwF,eAC/D4R,EAAgB,CAACO,EAAY,GAAKQ,EAAe,GAAIR,EAAY,GAAKQ,EAAe,IACrFC,EAAO/iG,KAAKgjG,gBAAgBP,EAAOziG,KAAKm5B,IAAIkpC,OAAOtgC,MAAOggE,EAAc,IACxEkB,EAAOjjG,KAAKgjG,gBAAgBN,EAAO1iG,KAAKm5B,IAAIkpC,OAAOpgC,OAAQ8/D,EAAc,IACzE5P,EAAYiN,EAAMzO,eAAexK,UAAU,UAAW4c,EAAKh2E,KAAMk2E,EAAKl2E,MAAM,GAC5EqlE,EAASD,EAAUxqF,QACnBu7F,EAAW3I,EAAsBC,qBAAqBpI,GAC5D8Q,EAAS7S,WAAa+O,EAAM/O,WAC5BrwF,KAAKmjG,+BAA+BD,EAAUP,EAAWluB,GACzD,IAAI2uB,EAAal5C,EACbm5C,EAAal5C,EACbm5C,EAAal5C,EACbm5C,EAAal5C,EAgBjB,OAfIH,EAAK,IACPk5C,EAAa,EACbE,GAAc7/E,KAAKunC,IAAId,IAErBC,EAAK,IACPk5C,EAAa,EACbE,GAAc9/E,KAAKunC,IAAIb,IAEzBioC,EAAOzoB,WAAYo5B,EAAK7rC,MAAQksC,GAAeH,EAAK/rC,MAAQmsC,GAC5DH,EAAS5gD,UAAUygD,EAAK7rC,MAAO,EAAG,EAAG+rC,EAAK/rC,MAAO,EAAG,GACpDk7B,EAAOhwC,OACPpiD,KAAKwjG,SAASN,EAAUE,EAAYC,EAAYC,EAAYC,GAC5DL,EAAS/S,eAAgB,EAAI3jC,EAAeiuB,qBAAqByoB,EAAS/pE,KAC1E+pE,EAASp/B,oBAAoBhL,GAC7BoqC,EAASv/B,aACF,CACLtB,OAAQ8vB,EAAU9vB,OAClBg5B,OAAQ0H,EAAK7rC,MACbokC,OAAQ2H,EAAK/rC,MACbE,QAASgsC,EACT/rC,QAASgsC,EAEb,CACA,eAAAL,CAAgBx+F,EAAMi/F,EAAgBvsC,GACpC1yD,EAAOif,KAAKunC,IAAIxmD,GAChB,MAAMkvE,EAAUjwD,KAAK6H,IAAI,EAAco4E,iBAAkBD,GACzD,IAAI12E,EAAOtJ,KAAKqJ,KAAKtoB,EAAO0yD,GAM5B,OALInqC,GAAQ2mD,EACV3mD,EAAO2mD,EAEPxc,EAAQnqC,EAAOvoB,EAEV,CACL0yD,QACAnqC,OAEJ,CACA,QAAAy2E,CAASN,EAAUh5C,EAAIC,EAAIC,EAAIC,GAC7B,MAAMs5C,EAAYv5C,EAAKF,EACjB05C,EAAav5C,EAAKF,EACxB+4C,EAAS/pE,IAAIswB,KAAKS,EAAIC,EAAIw5C,EAAWC,GACrCV,EAASpsE,QAAQ0yD,kBAAiB,EAAIh9B,EAAeiuB,qBAAqByoB,EAAS/pE,KAAM,CAAC+wB,EAAIC,EAAIC,EAAIC,IACtG64C,EAAS3/C,OACT2/C,EAAS5/C,SACX,CACA,8BAAA6/C,CAA+BD,EAAUP,EAAWluB,GAClD,MAAM9sE,EAAUu7F,EAAS/pE,IACvBrC,EAAUosE,EAASpsE,QACrB,OAAQ6rE,GACN,KAAKH,EACH,MAAMrpE,EAAMn5B,KAAKm5B,IACjBxxB,EAAQ+kF,UAAYvzD,EAAIuzD,UACxB/kF,EAAQ8kF,YAActzD,EAAIszD,YAC1B31D,EAAQ0xD,UAAYrvD,EAAIuzD,UACxB51D,EAAQ2xD,YAActvD,EAAIszD,YAC1B,MACF,KAAK+V,EACH,MAAMqB,EAAWv3C,EAAMv2C,KAAKwyC,aAAaksB,EAAM,GAAIA,EAAM,GAAIA,EAAM,IACnE9sE,EAAQ+kF,UAAYmX,EACpBl8F,EAAQ8kF,YAAcoX,EACtB/sE,EAAQ0xD,UAAYqb,EACpB/sE,EAAQ2xD,YAAcob,EACtB,MACF,QACE,MAAM,IAAIv3C,EAAMzX,YAAY,2BAA2B8tD,KAE7D,CACA,UAAA/O,CAAWz6D,EAAKimE,EAAOzL,EAAS9J,GAC9B,IAAI8Q,EAAShH,EACT9J,IAAaC,EAAS+Q,UACxBF,EAASruC,EAAMv2C,KAAKusC,UAAUq4C,EAAQyE,EAAMjP,eACxCnwF,KAAK26F,SACPA,EAASruC,EAAMv2C,KAAKusC,UAAUq4C,EAAQ36F,KAAK26F,UAG/C,MAAM4H,EAAyBviG,KAAK6iG,oBAAoBzD,GACxD,IAAIG,EAAY,IAAIC,UAAU7E,GAC9B4E,EAAYA,EAAU51B,UAAU44B,EAAuBnrC,QAASmrC,EAAuBlrC,SACvFkoC,EAAYA,EAAUroC,MAAM,EAAIqrC,EAAuBlH,OAAQ,EAAIkH,EAAuBjH,QAC1F,MAAMhD,EAAUn/D,EAAImmE,cAAciD,EAAuBlgC,OAAQ,UAEjE,OADAi2B,EAAQ/Q,aAAagY,GACdjH,CACT,GA5HA,cADI,EACG,mBAAmB,KAD5B,IAAMmC,EAAN,EA+HA57F,EAAQ47F,cAAgBA,CAAa,EAI9B,CAAC/mD,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQmtF,2BAA6BA,EACrCntF,EAAQilG,cAGR,SAAuBzvF,GACrB,OAAQA,EAAO82E,MACb,KAAK7+B,EAAM3X,UAAU+H,eACnB,OAAOsvC,EAA2B33E,GACpC,KAAKi4C,EAAM3X,UAAUgI,UACnB,OA6CN,UAA0B,IACxB/7C,EAAG,OACHmqF,EAAS,EAAC,KACVC,EAAI,QACJF,EAAU,EAAC,MACX/oD,EAAK,OACLE,IAEA,IAAIp5B,EAAI,EACR,MAAMk7F,EAAQnjG,EAAIiF,QAAU,EACtBm+F,EAAQ,IAAIp8C,YAAYhnD,EAAImqB,OAAQggE,EAAQgZ,GAClD,GAAIz3C,EAAMxX,YAAY4S,eAAgB,CACpC,KAAO7+C,EAAIk7F,EAAQ,EAAGl7F,GAAK,EAAGiiF,GAAW,EAAG,CAC1C,MAAMmZ,EAAKD,EAAMn7F,GACXq7F,EAAKF,EAAMn7F,EAAI,GACfs7F,EAAKH,EAAMn7F,EAAI,GACrBmiF,EAAKF,GAAgB,WAALmZ,EAChBjZ,EAAKF,EAAU,GAAKmZ,IAAO,GAAKC,GAAM,EAAI,WAC1ClZ,EAAKF,EAAU,GAAKoZ,IAAO,GAAKC,GAAM,GAAK,WAC3CnZ,EAAKF,EAAU,GAAKqZ,IAAO,EAAI,UACjC,CACA,QAASt6E,EAAQ,EAAJhhB,EAAOu7F,EAAKxjG,EAAIiF,OAAQgkB,EAAIu6E,EAAIv6E,GAAK,EAChDmhE,EAAKF,KAAalqF,EAAIipB,GAAKjpB,EAAIipB,EAAI,IAAM,EAAIjpB,EAAIipB,EAAI,IAAM,GAAK,UAEpE,KAAO,CACL,KAAOhhB,EAAIk7F,EAAQ,EAAGl7F,GAAK,EAAGiiF,GAAW,EAAG,CAC1C,MAAMmZ,EAAKD,EAAMn7F,GACXq7F,EAAKF,EAAMn7F,EAAI,GACfs7F,EAAKH,EAAMn7F,EAAI,GACrBmiF,EAAKF,GAAgB,IAALmZ,EAChBjZ,EAAKF,EAAU,GAAKmZ,GAAM,GAAKC,IAAO,EAAI,IAC1ClZ,EAAKF,EAAU,GAAKoZ,GAAM,GAAKC,IAAO,GAAK,IAC3CnZ,EAAKF,EAAU,GAAKqZ,GAAM,EAAI,GAChC,CACA,QAASt6E,EAAQ,EAAJhhB,EAAOu7F,EAAKxjG,EAAIiF,OAAQgkB,EAAIu6E,EAAIv6E,GAAK,EAChDmhE,EAAKF,KAAalqF,EAAIipB,IAAM,GAAKjpB,EAAIipB,EAAI,IAAM,GAAKjpB,EAAIipB,EAAI,IAAM,EAAI,GAE1E,CACA,MAAO,CACLkhE,SACAD,UAEJ,CAvFauZ,CAAiBhwF,GAE5B,OAAO,IACT,EAVAxV,EAAQylG,WA+FR,SAAoB1jG,EAAKoqF,GACvB,GAAI1+B,EAAMxX,YAAY4S,eACpB,QAAS7+C,EAAI,EAAGovC,EAAKr3C,EAAIiF,OAAQgD,EAAIovC,EAAIpvC,IACvCmiF,EAAKniF,GAAc,MAATjI,EAAIiI,GAAe,gBAG/B,QAASA,EAAI,EAAGovC,EAAKr3C,EAAIiF,OAAQgD,EAAIovC,EAAIpvC,IACvCmiF,EAAKniF,GAAc,SAATjI,EAAIiI,GAAiB,GAGrC,EAxGA,IAAIyjD,EAAQf,EAAoB,GAUhC,SAASygC,GAA2B,IAClCprF,EAAG,OACHmqF,EAAS,EAAC,KACVC,EAAI,MACJjpD,EAAK,OACLE,EAAM,cACNgqD,EAAgB,yBAChBsY,GAAgB,IAEhB,MAAM9Y,EAAQn/B,EAAMxX,YAAY4S,eAAiB,WAAa,KACvD88C,EAAaC,GAAcF,EAAgB,CAACtY,EAAeR,GAAS,CAACA,EAAOQ,GAC7EyY,EAAgB3iE,GAAS,EACzB4iE,EAAyB,EAAR5iE,EACjBqpD,EAAYxqF,EAAIiF,OACtBmlF,EAAO,IAAIpjC,YAAYojC,EAAKjgE,QAC5B,IAAI+/D,EAAU,EACd,QAASjiF,EAAI,EAAGA,EAAIo5B,EAAQp5B,IAAK,CAC/B,UAAWyiB,EAAMy/D,EAAS2Z,EAAe3Z,EAASz/D,EAAKy/D,IAAU,CAC/D,MAAMuR,EAAOvR,EAASK,EAAYxqF,EAAImqF,GAAU,IAChDC,EAAKF,KAAoB,IAAPwR,EAAoBmI,EAAaD,EACnDxZ,EAAKF,KAAoB,GAAPwR,EAAmBmI,EAAaD,EAClDxZ,EAAKF,KAAoB,GAAPwR,EAAkBmI,EAAaD,EACjDxZ,EAAKF,KAAoB,GAAPwR,EAAiBmI,EAAaD,EAChDxZ,EAAKF,KAAoB,EAAPwR,EAAgBmI,EAAaD,EAC/CxZ,EAAKF,KAAoB,EAAPwR,EAAemI,EAAaD,EAC9CxZ,EAAKF,KAAoB,EAAPwR,EAAcmI,EAAaD,EAC7CxZ,EAAKF,KAAoB,EAAPwR,EAAamI,EAAaD,CAC9C,CACA,GAAuB,IAAnBG,EACF,SAEF,MAAMrI,EAAOvR,EAASK,EAAYxqF,EAAImqF,KAAY,IAClD,QAASlhE,EAAI,EAAGA,EAAI86E,EAAgB96E,IAClCmhE,EAAKF,KAAawR,EAAO,GAAK,EAAIzyE,EAAI46E,EAAaD,CAEvD,CACA,MAAO,CACLzZ,SACAD,UAEJ,CAsDA,EAIO,CAACp3C,EAAyB70C,KAIjCS,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ4xD,yBAAsB,EAC9B,MAAMA,EAAsBnxD,OAAO4D,OAAO,MAC1CrE,EAAQ4xD,oBAAsBA,EAC9BA,EAAoBC,WAAa,KACjCD,EAAoBuN,UAAY,EAAE,EAI3B,CAACtqB,EAAyB70C,EAAS0sD,KA72R1C,gBAi3RAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQkzD,oBAAiB,EACzB,IAAIzF,EAAQf,EAAoB,GAChC,MAAMq5C,EAEE,EAFFA,EAGG,EAEHC,EAEI,EAFJA,EAGa,EAHbA,EAIG,EAJHA,EAKK,EALLA,EAMG,EANHA,EAOE,EAPFA,EAQW,EARXA,EASY,EAElB,SAASC,EAAWnqF,GAIlB,OAHMA,aAAkBlP,OAA2B,iBAAXkP,GAAkC,OAAXA,IAC7D,EAAI2xC,EAAMpW,aAAa,kEAEjBv7B,EAAOxR,MACb,IAAK,iBACH,OAAO,IAAImjD,EAAMvW,eAAep7B,EAAOvR,SACzC,IAAK,sBACH,OAAO,IAAIkjD,EAAMhY,oBAAoB35B,EAAOvR,SAC9C,IAAK,oBACH,OAAO,IAAIkjD,EAAMnY,kBAAkBx5B,EAAOvR,QAASuR,EAAOg/B,MAC5D,IAAK,8BACH,OAAO,IAAI2S,EAAMzY,4BAA4Bl5B,EAAOvR,QAASuR,EAAOzF,QACtE,IAAK,wBACH,OAAO,IAAIo3C,EAAM1Y,sBAAsBj5B,EAAOvR,QAASuR,EAAO/F,SAChE,QACE,OAAO,IAAI03C,EAAM1Y,sBAAsBj5B,EAAOvR,QAASuR,EAAOjQ,YAEpE,CA8JE,gBAAiB,SAACka,GAChB,MAAMmgF,EAAWngF,EAAKmgF,SACpBC,EAAahlG,KAAKglG,WAClBC,EAAargF,EAAKogF,WAClBE,EAASllG,KAAKklG,OACVhmG,EAAOc,KACXuQ,EAASvQ,KAAKmlG,cAAcvgF,EAAKrU,QAC7B60F,EAAa,CACjB,OAAA9kC,CAAQ9Y,EAAOz6B,EAAO,EAAGivC,GACvB,GAAIh8D,KAAKqlG,YACP,OAEF,MAAMC,EAAkBtlG,KAAKulG,YAC7BvlG,KAAKulG,aAAex4E,EAChBu4E,EAAkB,GAAKtlG,KAAKulG,aAAe,IAC7CvlG,KAAKwlG,eAAiB,IAAIl5C,EAAMtY,kBAChCh0C,KAAKmpC,MAAQnpC,KAAKwlG,eAAen6C,SAEnC65C,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACAv9C,SACCwU,EACL,EACA,KAAA92C,GACMllB,KAAKqlG,cAGTrlG,KAAKqlG,aAAc,EACnBH,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,oBAEK7lG,EAAKwmG,YAAYX,GAC1B,EACA,KAAA/6F,CAAM2Q,IACJ,EAAI2xC,EAAMtW,QAAQr7B,aAAkBlP,MAAO,kCACvCzL,KAAKqlG,cAGTrlG,KAAKqlG,aAAc,EACnBH,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACApqF,OAAQmqF,EAAWnqF,KAEvB,EACA6qF,eAAgB,IAAIl5C,EAAMtY,kBAC1BqsB,OAAQ,KACRpjC,SAAU,KACVooE,aAAa,EACbE,YAAa3gF,EAAK2gF,YAClBp8D,MAAO,MAETi8D,EAAWI,eAAephG,UAC1BghG,EAAWj8D,MAAQi8D,EAAWI,eAAen6C,QAC7CrrD,KAAK0lG,YAAYX,GAAYK,EAC7B,IAAI/gG,SAAQ,SAAUD,GACpBA,EAAQmM,EAAOqU,EAAKA,KAAMwgF,GAC5B,IAAGvgG,MAAK,WACNqgG,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACAppC,SAAS,GAEb,IAAG,SAAUhhD,GACXuqF,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACApqF,OAAQmqF,EAAWnqF,IAEvB,GACF,EACA,gBAAqB,SAACiK,GACpB,MAAMmgF,EAAWngF,EAAKmgF,SACpBC,EAAahlG,KAAKglG,WAClBC,EAAargF,EAAKogF,WAClBE,EAASllG,KAAKklG,OACVS,EAAmB3lG,KAAK4lG,kBAAkBb,GAC9CK,EAAaplG,KAAK0lG,YAAYX,GAChC,OAAQngF,EAAK6gF,QACX,KAAKZ,EACCjgF,EAAK+2C,QACPgqC,EAAiBE,UAAUzhG,UAE3BuhG,EAAiBE,UAAUvhG,OAAOwgG,EAAWlgF,EAAKjK,SAEpD,MACF,KAAKkqF,EACCjgF,EAAK+2C,QACPgqC,EAAiBG,SAAS1hG,UAE1BuhG,EAAiBG,SAASxhG,OAAOwgG,EAAWlgF,EAAKjK,SAEnD,MACF,KAAKkqF,EACH,IAAKO,EAAY,CACfF,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACAppC,SAAS,IAEX,KACF,CACIypC,EAAWG,aAAe,GAAK3gF,EAAK2gF,YAAc,GACpDH,EAAWI,eAAephG,UAE5BghG,EAAWG,YAAc3gF,EAAK2gF,YAC9B,IAAIlhG,SAAQ,SAAUD,GACpBA,EAAQghG,EAAW/kC,WACrB,IAAGx7D,MAAK,WACNqgG,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACAppC,SAAS,GAEb,IAAG,SAAUhhD,GACXuqF,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACApqF,OAAQmqF,EAAWnqF,IAEvB,IACA,MACF,KAAKkqF,EAEH,IADA,EAAIv4C,EAAMtW,QAAQ2vD,EAAkB,yCAChCA,EAAiBI,SACnB,MAEFJ,EAAiBx0E,WAAWmvC,QAAQ17C,EAAK4iC,OACzC,MACF,KAAKq9C,EAEH,IADA,EAAIv4C,EAAMtW,QAAQ2vD,EAAkB,uCAChCA,EAAiBI,SACnB,MAEFJ,EAAiBI,UAAW,EAC5BJ,EAAiBx0E,WAAWjM,QAC5B,gBAAAllB,KAAK,KAAL,KAAAA,KAA6B2lG,EAAkBZ,GAC/C,MACF,KAAKF,GACH,EAAIv4C,EAAMtW,QAAQ2vD,EAAkB,uCACpCA,EAAiBx0E,WAAWnnB,MAAM86F,EAAWlgF,EAAKjK,SAClD,gBAAA3a,KAAK,KAAL,KAAAA,KAA6B2lG,EAAkBZ,GAC/C,MACF,KAAKF,EACCjgF,EAAK+2C,QACPgqC,EAAiBK,WAAW5hG,UAE5BuhG,EAAiBK,WAAW1hG,OAAOwgG,EAAWlgF,EAAKjK,SAErD,gBAAA3a,KAAK,KAAL,KAAAA,KAA6B2lG,EAAkBZ,GAC/C,MACF,KAAKF,EACH,IAAKO,EACH,MAEF,IAAI/gG,SAAQ,SAAUD,GACpBA,EAAQghG,EAAWnoE,WAAW6nE,EAAWlgF,EAAKjK,SAChD,IAAG9V,MAAK,WACNqgG,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACAppC,SAAS,GAEb,IAAG,SAAUhhD,GACXuqF,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACApqF,OAAQmqF,EAAWnqF,IAEvB,IACAyqF,EAAWI,eAAelhG,OAAOwgG,EAAWlgF,EAAKjK,SACjDyqF,EAAWC,aAAc,SAClBrlG,KAAK0lG,YAAYX,GACxB,MACF,QACE,MAAM,IAAIt5F,MAAM,0BAEtB,EACM,gBAAuB,eAACk6F,EAAkBZ,SACxC1gG,QAAQ4Q,WAAW,CAAC0wF,EAAiBE,WAAWx6C,QAASs6C,EAAiBG,UAAUz6C,QAASs6C,EAAiBK,YAAY36C,iBACzHrrD,KAAK4lG,kBAAkBb,EAChC,EAKFlmG,EAAQkzD,eA7WR,MACE,WAAApzC,CAAYqmF,EAAYC,EAAYC,GA4JpC,qBAmFA,qBAqHA,kBAAM,GAnWJllG,KAAKglG,WAAaA,EAClBhlG,KAAKilG,WAAaA,EAClBjlG,KAAKklG,OAASA,EACdllG,KAAKimG,WAAa,EAClBjmG,KAAK+kG,SAAW,EAChB/kG,KAAK0lG,YAAcpmG,OAAO4D,OAAO,MACjClD,KAAK4lG,kBAAoBtmG,OAAO4D,OAAO,MACvClD,KAAKkmG,qBAAuB5mG,OAAO4D,OAAO,MAC1ClD,KAAKmlG,cAAgB7lG,OAAO4D,OAAO,MACnClD,KAAKmmG,mBAAqB5qF,IACxB,MAAMqJ,EAAOrJ,EAAMqJ,KACnB,GAAIA,EAAKqgF,aAAejlG,KAAKglG,WAC3B,OAEF,GAAIpgF,EAAK6gF,OAEP,YADA,gBAAAzlG,KAAK,KAAL,KAAAA,KAA2B4kB,GAG7B,GAAIA,EAAK9V,SAAU,CACjB,MAAMm3F,EAAarhF,EAAKqhF,WAClB1sC,EAAav5D,KAAKkmG,qBAAqBD,GAC7C,IAAK1sC,EACH,MAAM,IAAI9tD,MAAM,2BAA2Bw6F,KAG7C,UADOjmG,KAAKkmG,qBAAqBD,GAC7BrhF,EAAK9V,WAAa81F,EACpBrrC,EAAWn1D,QAAQwgB,EAAKA,UACnB,IAAIA,EAAK9V,WAAa81F,EAG3B,MAAM,IAAIn5F,MAAM,4BAFhB8tD,EAAWj1D,OAAOwgG,EAAWlgF,EAAKjK,QAGpC,CACA,MACF,CACA,MAAMpK,EAASvQ,KAAKmlG,cAAcvgF,EAAKrU,QACvC,IAAKA,EACH,MAAM,IAAI9E,MAAM,+BAA+BmZ,EAAKrU,UAEtD,GAAIqU,EAAKqhF,WAAT,CACE,MAAMG,EAAepmG,KAAKglG,WACpBqB,EAAezhF,EAAKogF,WAC1B,IAAI3gG,SAAQ,SAAUD,GACpBA,EAAQmM,EAAOqU,EAAKA,MACtB,IAAG/f,MAAK,SAAUhB,GAChBqhG,EAAO1oC,YAAY,CACjBwoC,WAAYoB,EACZnB,WAAYoB,EACZv3F,SAAU81F,EACVqB,WAAYrhF,EAAKqhF,WACjBrhF,KAAM/gB,GAEV,IAAG,SAAU8W,GACXuqF,EAAO1oC,YAAY,CACjBwoC,WAAYoB,EACZnB,WAAYoB,EACZv3F,SAAU81F,EACVqB,WAAYrhF,EAAKqhF,WACjBtrF,OAAQmqF,EAAWnqF,IAEvB,GAEF,MACIiK,EAAKmgF,SACP,gBAAA/kG,KAAK,KAAL,KAAAA,KAAuB4kB,GAGzBrU,EAAOqU,EAAKA,KAAK,EAEnBsgF,EAAO5pF,iBAAiB,UAAWtb,KAAKmmG,mBAC1C,CACA,EAAAvqE,CAAG0qE,EAAYv8F,GACb,MAAMw8F,EAAKvmG,KAAKmlG,cAChB,GAAIoB,EAAGD,GACL,MAAM,IAAI76F,MAAM,0CAA0C66F,MAE5DC,EAAGD,GAAcv8F,CACnB,CACA,IAAAyL,CAAK8wF,EAAY1hF,EAAMo3C,GACrBh8D,KAAKklG,OAAO1oC,YAAY,CACtBwoC,WAAYhlG,KAAKglG,WACjBC,WAAYjlG,KAAKilG,WACjB10F,OAAQ+1F,EACR1hF,QACCo3C,EACL,CACA,eAAA7J,CAAgBm0C,EAAY1hF,EAAMo3C,GAChC,MAAMiqC,EAAajmG,KAAKimG,aAClB1sC,EAAa,IAAIjN,EAAMtY,kBAC7Bh0C,KAAKkmG,qBAAqBD,GAAc1sC,EACxC,IACEv5D,KAAKklG,OAAO1oC,YAAY,CACtBwoC,WAAYhlG,KAAKglG,WACjBC,WAAYjlG,KAAKilG,WACjB10F,OAAQ+1F,EACRL,aACArhF,QACCo3C,EACL,CAAE,MAAOviB,GACP8f,EAAWj1D,OAAOm1C,EACpB,CACA,OAAO8f,EAAWlO,OACpB,CACA,cAAAmP,CAAe8rC,EAAY1hF,EAAM4hF,EAAkBxqC,GACjD,MAAM+oC,EAAW/kG,KAAK+kG,WACpBC,EAAahlG,KAAKglG,WAClBC,EAAajlG,KAAKilG,WAClBC,EAASllG,KAAKklG,OAChB,OAAO,IAAIuB,eAAe,CACxBnkF,MAAO6O,IACL,MAAMu1E,EAAkB,IAAIp6C,EAAMtY,kBAgBlC,OAfAh0C,KAAK4lG,kBAAkBb,GAAY,CACjC5zE,aACA00E,UAAWa,EACXZ,SAAU,KACVE,WAAY,KACZD,UAAU,GAEZb,EAAO1oC,YAAY,CACjBwoC,aACAC,aACA10F,OAAQ+1F,EACRvB,WACAngF,OACA2gF,YAAap0E,EAAWo0E,aACvBvpC,GACI0qC,EAAgBr7C,OAAO,EAEhCs7C,KAAMx1E,IACJ,MAAMy1E,EAAiB,IAAIt6C,EAAMtY,kBASjC,OARAh0C,KAAK4lG,kBAAkBb,GAAUe,SAAWc,EAC5C1B,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACAQ,YAAap0E,EAAWo0E,cAEnBqB,EAAev7C,OAAO,EAE/BoQ,OAAQ9gD,KACN,EAAI2xC,EAAMtW,QAAQr7B,aAAkBlP,MAAO,mCAC3C,MAAMo7F,EAAmB,IAAIv6C,EAAMtY,kBAUnC,OATAh0C,KAAK4lG,kBAAkBb,GAAUiB,WAAaa,EAC9C7mG,KAAK4lG,kBAAkBb,GAAUgB,UAAW,EAC5Cb,EAAO1oC,YAAY,CACjBwoC,aACAC,aACAQ,OAAQZ,EACRE,WACApqF,OAAQmqF,EAAWnqF,KAEdksF,EAAiBx7C,OAAO,GAEhCm7C,EACL,CA6MA,OAAAp6E,GACEpsB,KAAKklG,OAAOpiF,oBAAoB,UAAW9iB,KAAKmmG,mBAClD,EAEqC,EAIhC,CAACzyD,EAAyB70C,EAAS0sD,KA1wS1C,QA8wSAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQqjE,cAAW,EACnB,IAAI5V,EAAQf,EAAoB,GAE9B,cACA,cAqBF1sD,EAAQqjE,SAvBR,MAGE,WAAAvjD,EAAY,WACVmoF,EAAU,QACV7zB,IAJF,4BACA,4BAKE,aAAAjzE,KAAK,EAAe8mG,GACpB,aAAA9mG,KAAK,EAAQizE,EACf,CACA,MAAA8zB,GACE,OAAO,aAAA/mG,KAAK,EACd,CACA,GAAAS,CAAI0I,GACF,OAAO,aAAAnJ,KAAK,GAAaS,IAAI0I,IAAS,IACxC,CACA,MAAAy7D,GACE,SAAWtY,EAAM3T,eAAe,aAAA34C,KAAK,GACvC,CACA,GAAA49D,CAAIz0D,GACF,OAAO,aAAAnJ,KAAK,GAAa49D,IAAIz0D,EAC/B,EAEyB,EAIpB,CAACuqC,EAAyB70C,EAAS0sD,KA9yS1C,kBAkzSAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQojE,2BAAwB,EAChC,IAAI3V,EAAQf,EAAoB,GAC5B0Y,EAAc1Y,EAAoB,GACtC,MAAMy7C,EAAWxhG,OAAO,YACxB,MAAMyhG,EAEJ,WAAAtoF,CAAYxV,EAAMuuD,GADlB,qBAAW,GAET13D,KAAKmJ,KAAOA,EACZnJ,KAAK03D,OAASA,CAChB,CACA,WAAI2lC,GACF,OAAO,aAAAr9F,KAAK,EACd,CACA,WAAAknG,CAAYC,EAAU9J,GAChB8J,IAAaH,IACf,EAAI16C,EAAMpW,aAAa,yCAEzB,aAAAl2C,KAAK,EAAWq9F,EAClB,EAbA,cAgBA,cACA,cACA,cACA,cA0BA,gBAA6B,SAAC1nE,GAC5B,MAAM9vB,EAAS8vB,EAAM9vB,OACrB,GAAIA,EAAS,EACX,OAAO,EAET,MAAMuhG,EAAWzxE,EAAM,GACvB,QAAS9sB,EAAI,EAAGA,EAAIhD,EAAQgD,IAAK,CAC/B,MAAMuN,EAAUuf,EAAM9sB,GACtB,IAAI4c,EACJ,GAAI9a,MAAMC,QAAQwL,GAChBqP,EAAQ,gBAAAzlB,KAAK,KAAL,KAAAA,KAAmCoW,OACtC,KAAI,aAAApW,KAAK,GAAQ49D,IAAIxnD,GAI1B,OADA,EAAIk2C,EAAMhhD,MAAM,qCAAqC8K,MAC9C,EAHPqP,EAAQ,aAAAzlB,KAAK,GAAQS,IAAI2V,GAASinF,OAIpC,CACA,OAAQ+J,GACN,IAAK,MACH,IAAK3hF,EACH,OAAO,EAET,MACF,IAAK,KACH,GAAIA,EACF,OAAO,EAET,MACF,IAAK,MACH,OAAQA,EACV,QACE,OAAO,EAEb,CACA,MAAoB,QAAb2hF,CACT,EA2GFvoG,EAAQojE,sBA5KR,MAKE,WAAAtjD,CAAYiG,GAGV,GAsBF,qBA7BA,oBAAiB,MACjB,oBAAU,IAAI0zB,KACd,oBAAe,MACf,oBAAS,MAEPt4C,KAAKmJ,KAAO,KACZnJ,KAAKqnG,QAAU,KACF,OAATziF,EAAJ,CAGA5kB,KAAKmJ,KAAOyb,EAAKzb,KACjBnJ,KAAKqnG,QAAUziF,EAAKyiF,QACpB,aAAArnG,KAAK,EAAS4kB,EAAK0iF,OACnB,UAAWtM,KAASp2E,EAAK2iF,OACvB,aAAAvnG,KAAK,GAAQ8qB,IAAIkwE,EAAMplF,GAAI,IAAIqxF,EAAqBjM,EAAM7xF,KAAM6xF,EAAMtjC,SAExE,GAAuB,QAAnB9yC,EAAK4iF,UACP,UAAWxM,KAAS,aAAAh7F,KAAK,GAAQu7D,SAC/By/B,EAAMkM,YAAYF,GAAU,GAGhC,UAAWprE,KAAMhX,EAAKgX,GACpB,aAAA57B,KAAK,GAAQS,IAAIm7B,GAAIsrE,YAAYF,GAAU,GAE7C,UAAWnrE,KAAOjX,EAAKiX,IACrB,aAAA77B,KAAK,GAAQS,IAAIo7B,GAAKqrE,YAAYF,GAAU,GAE9C,aAAAhnG,KAAK,EAAeA,KAAKynG,UAlBzB,CAmBF,CAqCA,SAAAnK,CAAUtC,GACR,GAA0B,IAAtB,aAAAh7F,KAAK,GAAQ+sB,KACf,OAAO,EAET,IAAKiuE,EAEH,OADA,EAAI1uC,EAAMhhD,MAAM,wCACT,EAET,GAAmB,QAAf0vF,EAAMjuF,KACR,OAAK,aAAA/M,KAAK,GAAQ49D,IAAIo9B,EAAMplF,IAIrB,aAAA5V,KAAK,GAAQS,IAAIu6F,EAAMplF,IAAIynF,UAHhC,EAAI/wC,EAAMhhD,MAAM,qCAAqC0vF,EAAMplF,OACpD,GAGJ,GAAmB,SAAfolF,EAAMjuF,KAAiB,CAChC,GAAIiuF,EAAM0M,WACR,OAAO,gBAAA1nG,KAAK,KAAL,KAAAA,KAAmCg7F,EAAM0M,YAElD,IAAK1M,EAAM2M,QAA2B,UAAjB3M,EAAM2M,OAAoB,CAC7C,UAAW/xF,KAAMolF,EAAM4M,IAAK,CAC1B,IAAK,aAAA5nG,KAAK,GAAQ49D,IAAIhoD,GAEpB,OADA,EAAI02C,EAAMhhD,MAAM,qCAAqCsK,MAC9C,EAET,GAAI,aAAA5V,KAAK,GAAQS,IAAImV,GAAIynF,QACvB,OAAO,CAEX,CACA,OAAO,CACT,CAAO,GAAqB,UAAjBrC,EAAM2M,OAAoB,CACnC,UAAW/xF,KAAMolF,EAAM4M,IAAK,CAC1B,IAAK,aAAA5nG,KAAK,GAAQ49D,IAAIhoD,GAEpB,OADA,EAAI02C,EAAMhhD,MAAM,qCAAqCsK,MAC9C,EAET,IAAK,aAAA5V,KAAK,GAAQS,IAAImV,GAAIynF,QACxB,OAAO,CAEX,CACA,OAAO,CACT,CAAO,GAAqB,WAAjBrC,EAAM2M,OAAqB,CACpC,UAAW/xF,KAAMolF,EAAM4M,IAAK,CAC1B,IAAK,aAAA5nG,KAAK,GAAQ49D,IAAIhoD,GAEpB,OADA,EAAI02C,EAAMhhD,MAAM,qCAAqCsK,MAC9C,EAET,IAAK,aAAA5V,KAAK,GAAQS,IAAImV,GAAIynF,QACxB,OAAO,CAEX,CACA,OAAO,CACT,CAAO,GAAqB,WAAjBrC,EAAM2M,OAAqB,CACpC,UAAW/xF,KAAMolF,EAAM4M,IAAK,CAC1B,IAAK,aAAA5nG,KAAK,GAAQ49D,IAAIhoD,GAEpB,OADA,EAAI02C,EAAMhhD,MAAM,qCAAqCsK,MAC9C,EAET,GAAI,aAAA5V,KAAK,GAAQS,IAAImV,GAAIynF,QACvB,OAAO,CAEX,CACA,OAAO,CACT,CAEA,OADA,EAAI/wC,EAAMhhD,MAAM,mCAAmC0vF,EAAM2M,YAClD,CACT,CAEA,OADA,EAAIr7C,EAAMhhD,MAAM,sBAAsB0vF,EAAMjuF,UACrC,CACT,CACA,aAAA86F,CAAcjyF,EAAIynF,GAAU,GACrB,aAAAr9F,KAAK,GAAQ49D,IAAIhoD,IAItB,aAAA5V,KAAK,GAAQS,IAAImV,GAAIsxF,YAAYF,IAAY3J,GAC7C,aAAAr9F,KAAK,EAAiB,QAJpB,EAAIssD,EAAMhhD,MAAM,qCAAqCsK,IAKzD,CACA,wBAAIkyF,GACF,OAA6B,OAAtB,aAAA9nG,KAAK,IAAyBA,KAAKynG,YAAc,aAAAznG,KAAK,EAC/D,CACA,QAAA+nG,GACE,OAAK,aAAA/nG,KAAK,GAAQ+sB,KAGd,aAAA/sB,KAAK,GACA,aAAAA,KAAK,GAAOiN,QAEd,IAAI,aAAAjN,KAAK,GAAQI,QALf,IAMX,CACA,SAAA4nG,GACE,OAAO,aAAAhoG,KAAK,GAAQ+sB,KAAO,GAAI,EAAIu/B,EAAM3T,eAAe,aAAA34C,KAAK,IAAW,IAC1E,CACA,QAAAioG,CAASryF,GACP,OAAO,aAAA5V,KAAK,GAAQS,IAAImV,IAAO,IACjC,CACA,OAAA6xF,GACE,GAA4B,OAAxB,aAAAznG,KAAK,GACP,OAAO,aAAAA,KAAK,GAEd,MAAMksB,EAAO,IAAI+3C,EAAYc,eAC7B,UAAYnvD,EAAIolF,KAAU,aAAAh7F,KAAK,GAC7BksB,EAAKsO,OAAO,GAAG5kB,KAAMolF,EAAMqC,WAE7B,OAAO,aAAAr9F,KAAK,EAAiBksB,EAAKg5C,YACpC,EAEmD,EAI9C,CAACxxB,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQyyD,4BAAyB,EACjC,IAAIhF,EAAQf,EAAoB,GAC5BiB,EAAiBjB,EAAoB,GAoHzC1sD,EAAQyyD,uBAnHR,MACE,WAAA3yC,EAAY,OACV9Y,EAAM,YACN0rD,EAAW,gBACXC,GAAkB,EAAK,2BACvBC,EAA6B,KAAI,aACjCjC,GAAe,EAAK,cACpBC,GAAgB,GACfy4C,GAKD,IAJA,EAAI57C,EAAMtW,QAAQkyD,EAAuB,+EACzCloG,KAAKmoG,cAAgB,GACrBnoG,KAAKooG,iBAAmB52C,EACxBxxD,KAAKqoG,4BAA8B52C,EAC/BF,GAAa1rD,OAAS,EAAG,CAC3B,MAAMklB,EAASwmC,aAAuB5nC,YAAc4nC,EAAY1mC,aAAe0mC,EAAYxmC,OAAOF,WAAa0mC,EAAYxmC,OAAS,IAAIpB,WAAW4nC,GAAaxmC,OAChK/qB,KAAKmoG,cAAcvmG,KAAKmpB,EAC1B,CACA/qB,KAAKsoG,uBAAyBJ,EAC9BloG,KAAKuoG,uBAAyB94C,EAC9BzvD,KAAKwoG,mBAAqBh5C,EAC1BxvD,KAAKyoG,eAAiB5iG,EACtB7F,KAAK0oG,mBAAqB,KAC1B1oG,KAAK2oG,cAAgB,GACrB3oG,KAAKsoG,uBAAuBx1C,kBAAiB,CAACpnC,EAAO87B,KACnDxnD,KAAK4oG,eAAe,CAClBl9E,QACA87B,SACA,IAEJxnD,KAAKsoG,uBAAuBv1C,qBAAoB,CAAC1iC,EAAQC,KACvDtwB,KAAK6oG,YAAY,CACfx4E,SACAC,SACA,IAEJtwB,KAAKsoG,uBAAuBt1C,4BAA2BxL,IACrDxnD,KAAK4oG,eAAe,CAClBphD,SACA,IAEJxnD,KAAKsoG,uBAAuBr1C,4BAA2B,KACrDjzD,KAAK8oG,oBAAoB,IAE3B9oG,KAAKsoG,uBAAuBh1C,gBAC9B,CACA,cAAAs1C,EAAe,MACbl9E,EAAK,MACL87B,IAEA,MAAMz8B,EAASy8B,aAAiB79B,YAAc69B,EAAM38B,aAAe28B,EAAMz8B,OAAOF,WAAa28B,EAAMz8B,OAAS,IAAIpB,WAAW69B,GAAOz8B,OAClI,QAAc,IAAVW,EACE1rB,KAAK0oG,mBACP1oG,KAAK0oG,mBAAmBK,SAASh+E,GAEjC/qB,KAAKmoG,cAAcvmG,KAAKmpB,OAErB,CACL,MAAMi+E,EAAQhpG,KAAK2oG,cAAc3zF,MAAK,SAAU8rD,GAC9C,OAAIA,EAAYmoC,SAAWv9E,IAG3Bo1C,EAAYioC,SAASh+E,IACd,EACT,KACA,EAAIuhC,EAAMtW,QAAQgzD,EAAO,0EAC3B,CACF,CACA,0BAAIE,GACF,OAAOlpG,KAAK0oG,oBAAoBS,SAAW,CAC7C,CACA,WAAAN,CAAYzoC,QACQ,IAAdA,EAAI9vC,MACNtwB,KAAK2oG,cAAc,IAAIp2C,aAAa,CAClCliC,OAAQ+vC,EAAI/vC,SAGdrwB,KAAK0oG,oBAAoBn2C,aAAa,CACpCliC,OAAQ+vC,EAAI/vC,OACZC,MAAO8vC,EAAI9vC,OAGjB,CACA,kBAAAw4E,GACE9oG,KAAK0oG,oBAAoBl3C,kBACzBxxD,KAAKooG,kBAAmB,CAC1B,CACA,kBAAAgB,CAAmBruC,GACjB,MAAMlyD,EAAI7I,KAAK2oG,cAAczmG,QAAQ64D,GACjClyD,GAAK,GACP7I,KAAK2oG,cAAcvgG,OAAOS,EAAG,EAEjC,CACA,aAAAs3D,IACE,EAAI7T,EAAMtW,SAASh2C,KAAK0oG,mBAAoB,iEAC5C,MAAMW,EAAerpG,KAAKmoG,cAE1B,OADAnoG,KAAKmoG,cAAgB,KACd,IAAImB,EAA6BtpG,KAAMqpG,EAAcrpG,KAAKooG,iBAAkBpoG,KAAKqoG,4BAC1F,CACA,cAAAtnC,CAAer1C,EAAO3d,GACpB,GAAIA,GAAO/N,KAAKkpG,uBACd,OAAO,KAET,MAAMnuC,EAAS,IAAIwuC,EAAkCvpG,KAAM0rB,EAAO3d,GAGlE,OAFA/N,KAAKsoG,uBAAuB/0C,iBAAiB7nC,EAAO3d,GACpD/N,KAAK2oG,cAAc/mG,KAAKm5D,GACjBA,CACT,CACA,iBAAAkF,CAAkBtlD,GAChB3a,KAAK0oG,oBAAoBjtC,OAAO9gD,GAChC,UAAWogD,KAAU/6D,KAAK2oG,cAAc17F,MAAM,GAC5C8tD,EAAOU,OAAO9gD,GAEhB3a,KAAKsoG,uBAAuB90C,OAC9B,GAGF,MAAM81C,EACJ,WAAA3qF,CAAY8mF,EAAQ4D,EAAc73C,GAAkB,EAAOC,EAA6B,MACtFzxD,KAAKwpG,QAAU/D,EACfzlG,KAAKypG,MAAQj4C,IAAmB,EAChCxxD,KAAK0pG,WAAY,EAAIl9C,EAAe+uB,WAAW9pB,GAA8BA,EAA6B,KAC1GzxD,KAAKmoG,cAAgBkB,GAAgB,GACrCrpG,KAAKmpG,QAAU,EACf,UAAW3hD,KAASxnD,KAAKmoG,cACvBnoG,KAAKmpG,SAAW3hD,EAAM38B,WAExB7qB,KAAK2pG,UAAY,GACjB3pG,KAAK4pG,cAAgBvlG,QAAQD,UAC7BqhG,EAAOiD,mBAAqB1oG,KAC5BA,KAAKuyD,WAAa,IACpB,CACA,QAAAw2C,CAASvhD,GACHxnD,KAAKypG,QAGLzpG,KAAK2pG,UAAU9jG,OAAS,EACA7F,KAAK2pG,UAAU/gG,QACvBxE,QAAQ,CACxBjE,MAAOqnD,EACP5iD,MAAM,IAGR5E,KAAKmoG,cAAcvmG,KAAK4lD,GAE1BxnD,KAAKmpG,SAAW3hD,EAAM38B,WACxB,CACA,gBAAI61C,GACF,OAAO1gE,KAAK4pG,aACd,CACA,YAAIl7E,GACF,OAAO1uB,KAAK0pG,SACd,CACA,oBAAI9oC,GACF,OAAO5gE,KAAKwpG,QAAQhB,iBACtB,CACA,wBAAI7nC,GACF,OAAO3gE,KAAKwpG,QAAQjB,qBACtB,CACA,iBAAI1nC,GACF,OAAO7gE,KAAKwpG,QAAQf,cACtB,CACA,UAAMttC,GACJ,GAAIn7D,KAAKmoG,cAActiG,OAAS,EAE9B,MAAO,CACL1F,MAFYH,KAAKmoG,cAAcv/F,QAG/BhE,MAAM,GAGV,GAAI5E,KAAKypG,MACP,MAAO,CACLtpG,WAAO,EACPyE,MAAM,GAGV,MAAMilG,EAAoB,IAAIv9C,EAAMtY,kBAEpC,OADAh0C,KAAK2pG,UAAU/nG,KAAKioG,GACbA,EAAkBx+C,OAC3B,CACA,MAAAoQ,CAAO9gD,GACL3a,KAAKypG,OAAQ,EACb,UAAWI,KAAqB7pG,KAAK2pG,UACnCE,EAAkBzlG,QAAQ,CACxBjE,WAAO,EACPyE,MAAM,IAGV5E,KAAK2pG,UAAU9jG,OAAS,CAC1B,CACA,eAAA2rD,GACMxxD,KAAKypG,QAGTzpG,KAAKypG,OAAQ,EACf,EAEF,MAAMF,EACJ,WAAA5qF,CAAY8mF,EAAQ/5E,EAAO3d,GACzB/N,KAAKwpG,QAAU/D,EACfzlG,KAAKipG,OAASv9E,EACd1rB,KAAK8pG,KAAO/7F,EACZ/N,KAAK+pG,aAAe,KACpB/pG,KAAK2pG,UAAY,GACjB3pG,KAAKypG,OAAQ,EACbzpG,KAAKuyD,WAAa,IACpB,CACA,QAAAw2C,CAASvhD,GACP,IAAIxnD,KAAKypG,MAAT,CAGA,GAA8B,IAA1BzpG,KAAK2pG,UAAU9jG,OACjB7F,KAAK+pG,aAAeviD,MACf,CACsBxnD,KAAK2pG,UAAU/gG,QACvBxE,QAAQ,CACzBjE,MAAOqnD,EACP5iD,MAAM,IAER,UAAWilG,KAAqB7pG,KAAK2pG,UACnCE,EAAkBzlG,QAAQ,CACxBjE,WAAO,EACPyE,MAAM,IAGV5E,KAAK2pG,UAAU9jG,OAAS,CAC1B,CACA7F,KAAKypG,OAAQ,EACbzpG,KAAKwpG,QAAQJ,mBAAmBppG,KAlBhC,CAmBF,CACA,wBAAI2gE,GACF,OAAO,CACT,CACA,UAAMxF,GACJ,GAAIn7D,KAAK+pG,aAAc,CACrB,MAAMviD,EAAQxnD,KAAK+pG,aAEnB,OADA/pG,KAAK+pG,aAAe,KACb,CACL5pG,MAAOqnD,EACP5iD,MAAM,EAEV,CACA,GAAI5E,KAAKypG,MACP,MAAO,CACLtpG,WAAO,EACPyE,MAAM,GAGV,MAAMilG,EAAoB,IAAIv9C,EAAMtY,kBAEpC,OADAh0C,KAAK2pG,UAAU/nG,KAAKioG,GACbA,EAAkBx+C,OAC3B,CACA,MAAAoQ,CAAO9gD,GACL3a,KAAKypG,OAAQ,EACb,UAAWI,KAAqB7pG,KAAK2pG,UACnCE,EAAkBzlG,QAAQ,CACxBjE,WAAO,EACPyE,MAAM,IAGV5E,KAAK2pG,UAAU9jG,OAAS,EACxB7F,KAAKwpG,QAAQJ,mBAAmBppG,KAClC,EACF,EAIO,CAAC0zC,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ8yD,oBAAiB,EACzB,IAAIrF,EAAQf,EAAoB,GAC5By+C,EAAiBz+C,EAAoB,IAEzC,SAAS0+C,EAAmBp2F,EAASw6C,EAAiB67C,GACpD,MAAO,CACLhiG,OAAQ,MACR2L,UACAs2F,OAAQD,EAAgBC,OACxB/5D,KAAM,OACNg6D,YAAa/7C,EAAkB,UAAY,cAC3Cg8C,SAAU,SAEd,CACA,SAASC,EAAcl8C,GACrB,MAAMv6C,EAAU,IAAI02F,QACpB,UAAW/nE,KAAY4rB,EAAa,CAClC,MAAMjuD,EAAQiuD,EAAY5rB,QACZ,IAAVriC,GAGJ0T,EAAQ8X,OAAO6W,EAAUriC,EAC3B,CACA,OAAO0T,CACT,CACA,SAAS22F,EAAen/E,GACtB,OAAIA,aAAe1B,WACV0B,EAAIN,OAETM,aAAef,YACVe,IAET,EAAIihC,EAAMhhD,MAAM,4CAA4C+f,KACrD,IAAI1B,WAAW0B,GAAKN,OAC7B,CAgCAlsB,EAAQ8yD,eA/BR,MACE,WAAAhzC,CAAYpJ,GACVvV,KAAKuV,OAASA,EACdvV,KAAKyqG,OAAS,YAAYlgG,KAAKgL,EAAOrI,KACtClN,KAAKouD,YAAcpuD,KAAKyqG,QAAUl1F,EAAO64C,aAAe,CAAC,EACzDpuD,KAAK0oG,mBAAqB,KAC1B1oG,KAAK0qG,qBAAuB,EAC9B,CACA,0BAAIxB,GACF,OAAOlpG,KAAK0oG,oBAAoBS,SAAW,CAC7C,CACA,aAAAhpC,GAGE,OAFA,EAAI7T,EAAMtW,SAASh2C,KAAK0oG,mBAAoB,yDAC5C1oG,KAAK0oG,mBAAqB,IAAIiC,EAAqB3qG,MAC5CA,KAAK0oG,kBACd,CACA,cAAA3nC,CAAer1C,EAAO3d,GACpB,GAAIA,GAAO/N,KAAKkpG,uBACd,OAAO,KAET,MAAMnuC,EAAS,IAAI6vC,EAA0B5qG,KAAM0rB,EAAO3d,GAE1D,OADA/N,KAAK0qG,qBAAqB9oG,KAAKm5D,GACxBA,CACT,CACA,iBAAAkF,CAAkBtlD,GAChB3a,KAAK0oG,oBAAoBjtC,OAAO9gD,GAChC,UAAWogD,KAAU/6D,KAAK0qG,qBAAqBz9F,MAAM,GACnD8tD,EAAOU,OAAO9gD,EAElB,GAGF,MAAMgwF,EACJ,WAAAhsF,CAAY8mF,GACVzlG,KAAKwpG,QAAU/D,EACfzlG,KAAK6qG,QAAU,KACf7qG,KAAKmpG,QAAU,EACfnpG,KAAK0pG,UAAY,KACjB,MAAMn0F,EAASkwF,EAAOlwF,OACtBvV,KAAK8qG,iBAAmBv1F,EAAO84C,kBAAmB,EAClDruD,KAAKyoG,eAAiBlzF,EAAO1P,OAC7B7F,KAAK+qG,mBAAqB,IAAIz+C,EAAMtY,kBACpCh0C,KAAKgrG,cAAgBz1F,EAAOi6C,eAAgB,EAC5CxvD,KAAKirG,gBAAkB11F,EAAOi5C,eACzBxuD,KAAKirG,iBAAoBjrG,KAAKgrG,gBACjChrG,KAAKgrG,eAAgB,GAEvBhrG,KAAKkrG,iBAAmB,IAAIC,gBAC5BnrG,KAAKuoG,uBAAyBhzF,EAAOk6C,cACrCzvD,KAAKwoG,mBAAqBjzF,EAAOi6C,aACjCxvD,KAAKorG,SAAWd,EAActqG,KAAKwpG,QAAQp7C,aAC3C,MAAMlhD,EAAMqI,EAAOrI,IACnBsK,MAAMtK,EAAK+8F,EAAmBjqG,KAAKorG,SAAUprG,KAAK8qG,iBAAkB9qG,KAAKkrG,mBAAmBrmG,MAAKwX,IAC/F,KAAK,EAAI2tF,EAAeqB,wBAAwBhvF,EAASnH,QACvD,QAAU80F,EAAesB,2BAA2BjvF,EAASnH,OAAQhI,GAEvElN,KAAK6qG,QAAUxuF,EAAStX,KAAKi2D,YAC7Bh7D,KAAK+qG,mBAAmB3mG,UACxB,MAAMmnG,EAAoBpiG,GACjBkT,EAASxI,QAAQpT,IAAI0I,IAExB,mBACJqiG,EAAkB,gBAClBC,IACE,EAAIzB,EAAe0B,kCAAkC,CACvDH,oBACAd,OAAQzqG,KAAKwpG,QAAQiB,OACrBj8C,eAAgBxuD,KAAKirG,gBACrBz7C,aAAcxvD,KAAKgrG,gBAErBhrG,KAAKwoG,kBAAoBgD,EACzBxrG,KAAKyoG,eAAiBgD,GAAmBzrG,KAAKyoG,eAC9CzoG,KAAK0pG,WAAY,EAAIM,EAAe2B,2BAA2BJ,IAC1DvrG,KAAKuoG,uBAAyBvoG,KAAKwoG,mBACtCxoG,KAAKy7D,OAAO,IAAInP,EAAMvW,eAAe,0BACvC,IACCvjC,MAAMxS,KAAK+qG,mBAAmBzmG,QACjCtE,KAAKuyD,WAAa,IACpB,CACA,gBAAImO,GACF,OAAO1gE,KAAK+qG,mBAAmB1/C,OACjC,CACA,YAAI38B,GACF,OAAO1uB,KAAK0pG,SACd,CACA,iBAAI7oC,GACF,OAAO7gE,KAAKyoG,cACd,CACA,oBAAI7nC,GACF,OAAO5gE,KAAKwoG,iBACd,CACA,wBAAI7nC,GACF,OAAO3gE,KAAKuoG,qBACd,CACA,UAAMptC,SACEn7D,KAAK+qG,mBAAmB1/C,QAC9B,MAAM,MACJlrD,EAAK,KACLyE,SACQ5E,KAAK6qG,QAAQ1vC,OACvB,OAAIv2D,EACK,CACLzE,QACAyE,SAGJ5E,KAAKmpG,SAAWhpG,EAAM0qB,WACtB7qB,KAAKuyD,aAAa,CAChBliC,OAAQrwB,KAAKmpG,QACb74E,MAAOtwB,KAAKyoG,iBAEP,CACLtoG,MAAOqqG,EAAerqG,GACtByE,MAAM,GAEV,CACA,MAAA62D,CAAO9gD,GACL3a,KAAK6qG,SAASpvC,OAAO9gD,GACrB3a,KAAKkrG,iBAAiB13C,OACxB,EAEF,MAAMo3C,EACJ,WAAAjsF,CAAY8mF,EAAQ/5E,EAAO3d,GACzB/N,KAAKwpG,QAAU/D,EACfzlG,KAAK6qG,QAAU,KACf7qG,KAAKmpG,QAAU,EACf,MAAM5zF,EAASkwF,EAAOlwF,OACtBvV,KAAK8qG,iBAAmBv1F,EAAO84C,kBAAmB,EAClDruD,KAAK4rG,gBAAkB,IAAIt/C,EAAMtY,kBACjCh0C,KAAKuoG,uBAAyBhzF,EAAOk6C,cACrCzvD,KAAKkrG,iBAAmB,IAAIC,gBAC5BnrG,KAAKorG,SAAWd,EAActqG,KAAKwpG,QAAQp7C,aAC3CpuD,KAAKorG,SAASz/E,OAAO,QAAS,SAASD,KAAS3d,EAAM,KACtD,MAAMb,EAAMqI,EAAOrI,IACnBsK,MAAMtK,EAAK+8F,EAAmBjqG,KAAKorG,SAAUprG,KAAK8qG,iBAAkB9qG,KAAKkrG,mBAAmBrmG,MAAKwX,IAC/F,KAAK,EAAI2tF,EAAeqB,wBAAwBhvF,EAASnH,QACvD,QAAU80F,EAAesB,2BAA2BjvF,EAASnH,OAAQhI,GAEvElN,KAAK4rG,gBAAgBxnG,UACrBpE,KAAK6qG,QAAUxuF,EAAStX,KAAKi2D,WAAW,IACvCxoD,MAAMxS,KAAK4rG,gBAAgBtnG,QAC9BtE,KAAKuyD,WAAa,IACpB,CACA,wBAAIoO,GACF,OAAO3gE,KAAKuoG,qBACd,CACA,UAAMptC,SACEn7D,KAAK4rG,gBAAgBvgD,QAC3B,MAAM,MACJlrD,EAAK,KACLyE,SACQ5E,KAAK6qG,QAAQ1vC,OACvB,OAAIv2D,EACK,CACLzE,QACAyE,SAGJ5E,KAAKmpG,SAAWhpG,EAAM0qB,WACtB7qB,KAAKuyD,aAAa,CAChBliC,OAAQrwB,KAAKmpG,UAER,CACLhpG,MAAOqqG,EAAerqG,GACtByE,MAAM,GAEV,CACA,MAAA62D,CAAO9gD,GACL3a,KAAK6qG,SAASpvC,OAAO9gD,GACrB3a,KAAKkrG,iBAAiB13C,OACxB,EACF,EAIO,CAAC9f,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQysG,0BAqDR,SAAmCp2F,EAAQhI,GACzC,OAAe,MAAXgI,GAA6B,IAAXA,GAAgBhI,EAAIqpC,WAAW,SAC5C,IAAI+V,EAAMhY,oBAAoB,gBAAkBpnC,EAAM,MAExD,IAAIo/C,EAAMzY,4BAA4B,+BAA+B3+B,4BAAiChI,MAASgI,EACxH,EAzDArW,EAAQ8sG,0BAqCR,SAAmCJ,GACjC,MAAMM,EAAqBN,EAAkB,uBAC7C,GAAIM,EAAoB,CACtB,IAAIn9E,GAAW,EAAIo9E,EAAqBC,yCAAyCF,GACjF,GAAIn9E,EAAS/a,SAAS,KACpB,IACE+a,EAAWy8B,mBAAmBz8B,EAChC,CAAE,MAAO,CAEX,MAAQ89B,EAAe+uB,WAAW7sD,GAChC,OAAOA,CAEX,CACA,OAAO,IACT,EAlDA7vB,EAAQ6sG,iCAKR,UAA0C,kBACxCH,EAAiB,OACjBd,EAAM,eACNj8C,EAAc,aACdgB,IAEA,MAAMw8C,EAAe,CACnBR,oBAAoB,EACpBC,qBAAiB,GAEb5lG,EAAS2jB,SAAS+hF,EAAkB,kBAAmB,IAC7D,OAAKzyD,OAAOC,UAAUlzC,IAGtBmmG,EAAaP,gBAAkB5lG,EAC3BA,GAAU,EAAI2oD,GAGdgB,IAAiBi7C,GAGsB,UAAvCc,EAAkB,kBAIE,cADAA,EAAkB,qBAAuB,cAIjES,EAAaR,oBAAqB,GAZzBQ,GAJAA,CAkBX,EAlCAntG,EAAQwsG,uBAwDR,SAAgCn2F,GAC9B,OAAkB,MAAXA,GAA6B,MAAXA,CAC3B,EAzDA,IAAIo3C,EAAQf,EAAoB,GAC5BugD,EAAuBvgD,EAAoB,IAC3CiB,EAAiBjB,EAAoB,EAuDzC,EAIO,CAAC7X,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQktG,wCAER,SAAiDF,GAC/C,IAAII,GAAqB,EACrB7iF,EAAM8iF,EAAc,cAAe,KAAKlqG,KAAK6pG,GACjD,GAAIziF,EAAK,CACPA,EAAMA,EAAI,GACV,IAAIsF,EAAWy9E,EAAe/iF,GAI9B,OAHAsF,EAAWzE,SAASyE,GACpBA,EAAW09E,EAAc19E,GACzBA,EAAW29E,EAAc39E,GAClB49E,EAAc59E,EACvB,CAEA,GADAtF,EAwCA,SAAyBmjF,GACvB,MAAM13B,EAAU,GAChB,IAAIz8D,EACJ,MAAMo0F,EAAON,EAAc,kCAAmC,MAC9D,KAAsD,QAA9C9zF,EAAQo0F,EAAKxqG,KAAKuqG,KAAkC,CAC1D,IAAK,CAAE5sG,EAAG8sG,EAAMC,GAAQt0F,EAExB,GADAzY,EAAI6pB,SAAS7pB,EAAG,IACZA,KAAKk1E,GACP,GAAU,IAANl1E,EACF,WAIJk1E,EAAQl1E,GAAK,CAAC8sG,EAAMC,EACtB,CACA,MAAM3qG,EAAQ,GACd,QAASpC,EAAI,EAAGA,EAAIk1E,EAAQhvE,QACpBlG,KAAKk1E,IADyBl1E,EAAG,CAIvC,IAAK8sG,EAAMC,GAAQ73B,EAAQl1E,GAC3B+sG,EAAOP,EAAeO,GAClBD,IACFC,EAAOziF,SAASyiF,GACN,IAAN/sG,IACF+sG,EAAON,EAAcM,KAGzB3qG,EAAMH,KAAK8qG,EACb,CACA,OAAO3qG,EAAM0K,KAAK,GACpB,CAvEMkgG,CAAgBd,GAClBziF,EAEF,OAAOkjF,EADUD,EAAcjjF,IAIjC,GADAA,EAAM8iF,EAAc,WAAY,KAAKlqG,KAAK6pG,GACtCziF,EAAK,CACPA,EAAMA,EAAI,GACV,IAAIsF,EAAWy9E,EAAe/iF,GAE9B,OADAsF,EAAW29E,EAAc39E,GAClB49E,EAAc59E,EACvB,CACA,SAASw9E,EAAcU,EAAkBC,GACvC,OAAO,IAAIvgG,OAAO,cAAgBsgG,EAAmB,sDAAgFC,EACvI,CACA,SAASC,EAAW1zD,EAAUj5C,GAC5B,GAAIi5C,EAAU,CACZ,IAAK,iBAAiB7uC,KAAKpK,GACzB,OAAOA,EAET,IACE,MAAMk5C,EAAU,IAAIC,YAAYF,EAAU,CACxCG,OAAO,IAEHxuB,GAAS,EAAIuhC,EAAMpT,eAAe/4C,GACxCA,EAAQk5C,EAAQG,OAAOzuB,GACvBkhF,GAAqB,CACvB,CAAE,MAAO,CACX,CACA,OAAO9rG,CACT,CACA,SAASmsG,EAAcnsG,GAOrB,OANI8rG,GAAsB,cAAc1hG,KAAKpK,KAC3CA,EAAQ2sG,EAAW,QAAS3sG,GACxB8rG,IACF9rG,EAAQ2sG,EAAW,aAAc3sG,KAG9BA,CACT,CAiCA,SAASgsG,EAAehsG,GACtB,GAAIA,EAAMo2C,WAAW,KAAM,CACzB,MAAMx0C,EAAQ5B,EAAM8M,MAAM,GAAG/L,MAAM,OACnC,QAAS2H,EAAI,EAAGA,EAAI9G,EAAM8D,SAAUgD,EAAG,CACrC,MAAMkkG,EAAYhrG,EAAM8G,GAAG3G,QAAQ,MAChB,IAAf6qG,IACFhrG,EAAM8G,GAAK9G,EAAM8G,GAAGoE,MAAM,EAAG8/F,GAC7BhrG,EAAM8D,OAASgD,EAAI,GAErB9G,EAAM8G,GAAK9G,EAAM8G,GAAG0vC,WAAW,SAAU,KAC3C,CACAp4C,EAAQ4B,EAAM0K,KAAK,IACrB,CACA,OAAOtM,CACT,CACA,SAASisG,EAAcY,GACrB,MAAMC,EAAcD,EAAS9qG,QAAQ,KACrC,OAAqB,IAAjB+qG,EACKD,EAKFF,EAHUE,EAAS//F,MAAM,EAAGggG,GACjBD,EAAS//F,MAAMggG,EAAc,GACvB/gG,QAAQ,UAAW,IAE7C,CACA,SAASmgG,EAAclsG,GACrB,OAAKA,EAAMo2C,WAAW,OAAS,uBAAuBhsC,KAAKpK,GAClDA,EAEFA,EAAMo4C,WAAW,kDAAkD,SAAUs8B,EAASq4B,EAAS9zD,EAAUniC,GAC9G,GAAiB,MAAbmiC,GAAiC,MAAbA,EAKtB,OAAO0zD,EAAWI,EAHlBj2F,GADAA,EAAOA,EAAKshC,WAAW,IAAK,MAChBA,WAAW,sBAAsB,SAAUngC,EAAO0R,GAC5D,OAAOte,OAAOif,aAAajB,SAASM,EAAK,IAC3C,KAGF,IACE7S,EAAOqC,KAAKrC,EACd,CAAE,MAAO,CACT,OAAO61F,EAAWI,EAASj2F,EAC7B,GACF,CACA,MAAO,EACT,EAhIA,IAAIq1C,EAAQf,EAAoB,EAgIhC,EAIO,CAAC7X,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ+yD,sBAAmB,EAC3B,IAAItF,EAAQf,EAAoB,GAC5By+C,EAAiBz+C,EAAoB,IAWzC,MAAM4hD,EACJ,WAAAxuF,CAAYzR,EAAKjC,EAAO,CAAC,GACvBjL,KAAKkN,IAAMA,EACXlN,KAAKyqG,OAAS,YAAYlgG,KAAK2C,GAC/BlN,KAAKouD,YAAcpuD,KAAKyqG,QAAUx/F,EAAKmjD,aAAe9uD,OAAO4D,OAAO,MACpElD,KAAKquD,gBAAkBpjD,EAAKojD,kBAAmB,EAC/CruD,KAAKotG,UAAY,EACjBptG,KAAKqtG,gBAAkB/tG,OAAO4D,OAAO,KACvC,CACA,YAAAoqG,CAAa5hF,EAAO3d,EAAKi7B,GACvB,MAAM/9B,EAAO,CACXygB,QACA3d,OAEF,UAAW2P,KAAQsrB,EACjB/9B,EAAKyS,GAAQsrB,EAAUtrB,GAEzB,OAAO1d,KAAKmU,QAAQlJ,EACtB,CACA,WAAAsiG,CAAYvkE,GACV,OAAOhpC,KAAKmU,QAAQ60B,EACtB,CACA,OAAA70B,CAAQlJ,GACN,MAAM2Q,EAAM,IAAID,eACV6xF,EAAQxtG,KAAKotG,YACbK,EAAiBztG,KAAKqtG,gBAAgBG,GAAS,CACnD5xF,OAEFA,EAAI4I,KAAK,MAAOxkB,KAAKkN,KACrB0O,EAAIyyC,gBAAkBruD,KAAKquD,gBAC3B,UAAW7rB,KAAYxiC,KAAKouD,YAAa,CACvC,MAAMjuD,EAAQH,KAAKouD,YAAY5rB,QACjB,IAAVriC,GAGJyb,EAAIkT,iBAAiB0T,EAAUriC,EACjC,CAoBA,OAnBIH,KAAKyqG,QAAU,UAAWx/F,GAAQ,QAASA,GAC7C2Q,EAAIkT,iBAAiB,QAAS,SAAS7jB,EAAKygB,SAASzgB,EAAK8C,IAAM,KAChE0/F,EAAeC,eA/CY,KAiD3BD,EAAeC,eAlDD,IAoDhB9xF,EAAIiT,aAAe,cACf5jB,EAAKyO,UACPkC,EAAInC,QAAU,SAAU2mD,GACtBn1D,EAAKyO,QAAQkC,EAAI1G,OACnB,GAEF0G,EAAIM,mBAAqBlc,KAAK2tG,cAAcvrF,KAAKpiB,KAAMwtG,GACvD5xF,EAAIgyF,WAAa5tG,KAAKuyD,WAAWnwC,KAAKpiB,KAAMwtG,GAC5CC,EAAeI,kBAAoB5iG,EAAK4iG,kBACxCJ,EAAeK,OAAS7iG,EAAK6iG,OAC7BL,EAAe/zF,QAAUzO,EAAKyO,QAC9B+zF,EAAel7C,WAAatnD,EAAKsnD,WACjC32C,EAAIpG,KAAK,MACFg4F,CACT,CACA,UAAAj7C,CAAWi7C,EAAOptC,GAChB,MAAMqtC,EAAiBztG,KAAKqtG,gBAAgBG,GACvCC,GAGLA,EAAel7C,aAAa6N,EAC9B,CACA,aAAAutC,CAAcH,EAAOptC,GACnB,MAAMqtC,EAAiBztG,KAAKqtG,gBAAgBG,GAC5C,IAAKC,EACH,OAEF,MAAM7xF,EAAM6xF,EAAe7xF,IAK3B,GAJIA,EAAII,YAAc,GAAKyxF,EAAeI,oBACxCJ,EAAeI,2BACRJ,EAAeI,mBAED,IAAnBjyF,EAAII,WACN,OAEF,KAAMwxF,KAASxtG,KAAKqtG,iBAClB,OAGF,UADOrtG,KAAKqtG,gBAAgBG,GACT,IAAf5xF,EAAI1G,QAAgBlV,KAAKyqG,OAE3B,YADAgD,EAAe/zF,UAAUkC,EAAI1G,QAG/B,MAAM64F,EAAYnyF,EAAI1G,QA/FN,IAiGhB,IAjGgB,MAgGqB64F,GA/FR,MA+FqCN,EAAeC,iBAC5CK,IAAcN,EAAeC,eAEhE,YADAD,EAAe/zF,UAAUkC,EAAI1G,QAG/B,MAAMsyC,EAnGV,SAAwB5rC,GACtB,MAAMgJ,EAAOhJ,EAAIS,SACjB,MAAoB,iBAATuI,EACFA,GAET,EAAW0nC,EAAMpT,eAAet0B,GAAMmG,MACxC,CA6FkBy/E,CAAe5uF,GAC7B,GArG6B,MAqGzBmyF,EAAwC,CAC1C,MAAMC,EAAcpyF,EAAI2vF,kBAAkB,iBACpC12B,EAAU,2BAA2B7yE,KAAKgsG,GAChDP,EAAeK,OAAO,CACpBpiF,MAAOlC,SAASqrD,EAAQ,GAAI,IAC5BrtB,SAEJ,MAAWA,EACTimD,EAAeK,OAAO,CACpBpiF,MAAO,EACP87B,UAGFimD,EAAe/zF,UAAUkC,EAAI1G,OAEjC,CACA,aAAA+4F,CAAcT,GACZ,OAAOxtG,KAAKqtG,gBAAgBG,GAAO5xF,GACrC,CACA,gBAAAsyF,CAAiBV,GACf,OAAOA,KAASxtG,KAAKqtG,eACvB,CACA,YAAAc,CAAaX,GACX,MAAM5xF,EAAM5b,KAAKqtG,gBAAgBG,GAAO5xF,WACjC5b,KAAKqtG,gBAAgBG,GAC5B5xF,EAAI43C,OACN,EAqCF30D,EAAQ+yD,iBAnCR,MACE,WAAAjzC,CAAYpJ,GACVvV,KAAKouG,QAAU74F,EACfvV,KAAKquG,SAAW,IAAIlB,EAAe53F,EAAOrI,IAAK,CAC7CkhD,YAAa74C,EAAO64C,YACpBC,gBAAiB94C,EAAO84C,kBAE1BruD,KAAKirG,gBAAkB11F,EAAOi5C,eAC9BxuD,KAAK0oG,mBAAqB,KAC1B1oG,KAAK0qG,qBAAuB,EAC9B,CACA,2BAAA4D,CAA4BvzC,GAC1B,MAAMlyD,EAAI7I,KAAK0qG,qBAAqBxoG,QAAQ64D,GACxClyD,GAAK,GACP7I,KAAK0qG,qBAAqBtiG,OAAOS,EAAG,EAExC,CACA,aAAAs3D,GAGE,OAFA,EAAI7T,EAAMtW,SAASh2C,KAAK0oG,mBAAoB,2DAC5C1oG,KAAK0oG,mBAAqB,IAAI6F,EAAkCvuG,KAAKquG,SAAUruG,KAAKouG,SAC7EpuG,KAAK0oG,kBACd,CACA,cAAA3nC,CAAer1C,EAAO3d,GACpB,MAAMgtD,EAAS,IAAIyzC,EAAmCxuG,KAAKquG,SAAU3iF,EAAO3d,GAG5E,OAFAgtD,EAAO0zC,SAAWzuG,KAAKsuG,4BAA4BlsF,KAAKpiB,MACxDA,KAAK0qG,qBAAqB9oG,KAAKm5D,GACxBA,CACT,CACA,iBAAAkF,CAAkBtlD,GAChB3a,KAAK0oG,oBAAoBjtC,OAAO9gD,GAChC,UAAWogD,KAAU/6D,KAAK0qG,qBAAqBz9F,MAAM,GACnD8tD,EAAOU,OAAO9gD,EAElB,GAGF,MAAM4zF,EACJ,WAAA5vF,CAAY+vF,EAASn5F,GACnBvV,KAAKquG,SAAWK,EAChB,MAAMzjG,EAAO,CACX4iG,kBAAmB7tG,KAAK2uG,mBAAmBvsF,KAAKpiB,MAChD8tG,OAAQ9tG,KAAK4uG,QAAQxsF,KAAKpiB,MAC1B0Z,QAAS1Z,KAAK6uG,SAASzsF,KAAKpiB,MAC5BuyD,WAAYvyD,KAAK6oG,YAAYzmF,KAAKpiB,OAEpCA,KAAKkoB,KAAO3S,EAAOrI,IACnBlN,KAAK8uG,eAAiBJ,EAAQnB,YAAYtiG,GAC1CjL,KAAK+uG,2BAA6B,IAAIziD,EAAMtY,kBAC5Ch0C,KAAKgrG,cAAgBz1F,EAAOi6C,eAAgB,EAC5CxvD,KAAKyoG,eAAiBlzF,EAAO1P,OAC7B7F,KAAKirG,gBAAkB11F,EAAOi5C,eACzBxuD,KAAKirG,iBAAoBjrG,KAAKgrG,gBACjChrG,KAAKgrG,eAAgB,GAEvBhrG,KAAKuoG,uBAAwB,EAC7BvoG,KAAKwoG,mBAAoB,EACzBxoG,KAAKgvG,cAAgB,GACrBhvG,KAAK2pG,UAAY,GACjB3pG,KAAKypG,OAAQ,EACbzpG,KAAKivG,kBAAe,EACpBjvG,KAAK0pG,UAAY,KACjB1pG,KAAKuyD,WAAa,IACpB,CACA,kBAAAo8C,GACE,MAAMO,EAAmBlvG,KAAK8uG,eACxBK,EAAiBnvG,KAAKquG,SAASJ,cAAciB,GAC7C3D,EAAoBpiG,GACjBgmG,EAAe5D,kBAAkBpiG,IAEpC,mBACJqiG,EAAkB,gBAClBC,IACE,EAAIzB,EAAe0B,kCAAkC,CACvDH,oBACAd,OAAQzqG,KAAKquG,SAAS5D,OACtBj8C,eAAgBxuD,KAAKirG,gBACrBz7C,aAAcxvD,KAAKgrG,gBAEjBQ,IACFxrG,KAAKwoG,mBAAoB,GAE3BxoG,KAAKyoG,eAAiBgD,GAAmBzrG,KAAKyoG,eAC9CzoG,KAAK0pG,WAAY,EAAIM,EAAe2B,2BAA2BJ,GAC3DvrG,KAAKwoG,mBACPxoG,KAAKquG,SAASF,aAAae,GAE7BlvG,KAAK+uG,2BAA2B3qG,SAClC,CACA,OAAAwqG,CAAQhqF,GAaN,GAZIA,IACE5kB,KAAK2pG,UAAU9jG,OAAS,EACA7F,KAAK2pG,UAAU/gG,QACvBxE,QAAQ,CACxBjE,MAAOykB,EAAK4iC,MACZ5iD,MAAM,IAGR5E,KAAKgvG,cAAcptG,KAAKgjB,EAAK4iC,QAGjCxnD,KAAKypG,OAAQ,IACTzpG,KAAKgvG,cAAcnpG,OAAS,GAAhC,CAGA,UAAWgkG,KAAqB7pG,KAAK2pG,UACnCE,EAAkBzlG,QAAQ,CACxBjE,WAAO,EACPyE,MAAM,IAGV5E,KAAK2pG,UAAU9jG,OAAS,CAPxB,CAQF,CACA,QAAAgpG,CAAS35F,GACPlV,KAAKivG,cAAe,EAAIjF,EAAesB,2BAA2Bp2F,EAAQlV,KAAKkoB,MAC/EloB,KAAK+uG,2BAA2BzqG,OAAOtE,KAAKivG,cAC5C,UAAWpF,KAAqB7pG,KAAK2pG,UACnCE,EAAkBvlG,OAAOtE,KAAKivG,cAEhCjvG,KAAK2pG,UAAU9jG,OAAS,EACxB7F,KAAKgvG,cAAcnpG,OAAS,CAC9B,CACA,WAAAgjG,CAAYzoC,GACVpgE,KAAKuyD,aAAa,CAChBliC,OAAQ+vC,EAAI/vC,OACZC,MAAO8vC,EAAIgvC,iBAAmBhvC,EAAI9vC,MAAQtwB,KAAKyoG,gBAEnD,CACA,YAAI/5E,GACF,OAAO1uB,KAAK0pG,SACd,CACA,oBAAI9oC,GACF,OAAO5gE,KAAKwoG,iBACd,CACA,wBAAI7nC,GACF,OAAO3gE,KAAKuoG,qBACd,CACA,iBAAI1nC,GACF,OAAO7gE,KAAKyoG,cACd,CACA,gBAAI/nC,GACF,OAAO1gE,KAAK+uG,2BAA2B1jD,OACzC,CACA,UAAM8P,GACJ,GAAIn7D,KAAKivG,aACP,MAAMjvG,KAAKivG,aAEb,GAAIjvG,KAAKgvG,cAAcnpG,OAAS,EAE9B,MAAO,CACL1F,MAFYH,KAAKgvG,cAAcpmG,QAG/BhE,MAAM,GAGV,GAAI5E,KAAKypG,MACP,MAAO,CACLtpG,WAAO,EACPyE,MAAM,GAGV,MAAMilG,EAAoB,IAAIv9C,EAAMtY,kBAEpC,OADAh0C,KAAK2pG,UAAU/nG,KAAKioG,GACbA,EAAkBx+C,OAC3B,CACA,MAAAoQ,CAAO9gD,GACL3a,KAAKypG,OAAQ,EACbzpG,KAAK+uG,2BAA2BzqG,OAAOqW,GACvC,UAAWkvF,KAAqB7pG,KAAK2pG,UACnCE,EAAkBzlG,QAAQ,CACxBjE,WAAO,EACPyE,MAAM,IAGV5E,KAAK2pG,UAAU9jG,OAAS,EACpB7F,KAAKquG,SAASH,iBAAiBluG,KAAK8uG,iBACtC9uG,KAAKquG,SAASF,aAAanuG,KAAK8uG,gBAElC9uG,KAAK0oG,mBAAqB,IAC5B,EAEF,MAAM8F,EACJ,WAAA7vF,CAAY+vF,EAAShjF,EAAO3d,GAC1B/N,KAAKquG,SAAWK,EAChB,MAAMzjG,EAAO,CACX6iG,OAAQ9tG,KAAK4uG,QAAQxsF,KAAKpiB,MAC1B0Z,QAAS1Z,KAAK6uG,SAASzsF,KAAKpiB,MAC5BuyD,WAAYvyD,KAAK6oG,YAAYzmF,KAAKpiB,OAEpCA,KAAKkoB,KAAOwmF,EAAQxhG,IACpBlN,KAAKqvG,WAAaX,EAAQpB,aAAa5hF,EAAO3d,EAAK9C,GACnDjL,KAAK2pG,UAAY,GACjB3pG,KAAK+pG,aAAe,KACpB/pG,KAAKypG,OAAQ,EACbzpG,KAAKivG,kBAAe,EACpBjvG,KAAKuyD,WAAa,KAClBvyD,KAAKyuG,SAAW,IAClB,CACA,MAAAa,GACEtvG,KAAKyuG,WAAWzuG,KAClB,CACA,OAAA4uG,CAAQhqF,GACN,MAAM4iC,EAAQ5iC,EAAK4iC,MACfxnD,KAAK2pG,UAAU9jG,OAAS,EACA7F,KAAK2pG,UAAU/gG,QACvBxE,QAAQ,CACxBjE,MAAOqnD,EACP5iD,MAAM,IAGR5E,KAAK+pG,aAAeviD,EAEtBxnD,KAAKypG,OAAQ,EACb,UAAWI,KAAqB7pG,KAAK2pG,UACnCE,EAAkBzlG,QAAQ,CACxBjE,WAAO,EACPyE,MAAM,IAGV5E,KAAK2pG,UAAU9jG,OAAS,EACxB7F,KAAKsvG,QACP,CACA,QAAAT,CAAS35F,GACPlV,KAAKivG,cAAe,EAAIjF,EAAesB,2BAA2Bp2F,EAAQlV,KAAKkoB,MAC/E,UAAW2hF,KAAqB7pG,KAAK2pG,UACnCE,EAAkBvlG,OAAOtE,KAAKivG,cAEhCjvG,KAAK2pG,UAAU9jG,OAAS,EACxB7F,KAAK+pG,aAAe,IACtB,CACA,WAAAlB,CAAYzoC,GACLpgE,KAAK2gE,sBACR3gE,KAAKuyD,aAAa,CAChBliC,OAAQ+vC,EAAI/vC,QAGlB,CACA,wBAAIswC,GACF,OAAO,CACT,CACA,UAAMxF,GACJ,GAAIn7D,KAAKivG,aACP,MAAMjvG,KAAKivG,aAEb,GAA0B,OAAtBjvG,KAAK+pG,aAAuB,CAC9B,MAAMviD,EAAQxnD,KAAK+pG,aAEnB,OADA/pG,KAAK+pG,aAAe,KACb,CACL5pG,MAAOqnD,EACP5iD,MAAM,EAEV,CACA,GAAI5E,KAAKypG,MACP,MAAO,CACLtpG,WAAO,EACPyE,MAAM,GAGV,MAAMilG,EAAoB,IAAIv9C,EAAMtY,kBAEpC,OADAh0C,KAAK2pG,UAAU/nG,KAAKioG,GACbA,EAAkBx+C,OAC3B,CACA,MAAAoQ,CAAO9gD,GACL3a,KAAKypG,OAAQ,EACb,UAAWI,KAAqB7pG,KAAK2pG,UACnCE,EAAkBzlG,QAAQ,CACxBjE,WAAO,EACPyE,MAAM,IAGV5E,KAAK2pG,UAAU9jG,OAAS,EACpB7F,KAAKquG,SAASH,iBAAiBluG,KAAKqvG,aACtCrvG,KAAKquG,SAASF,aAAanuG,KAAKqvG,YAElCrvG,KAAKsvG,QACP,EACF,EAIO,CAAC57D,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ6yD,mBAAgB,EACxB,IAAIpF,EAAQf,EAAoB,GAC5By+C,EAAiBz+C,EAAoB,IAEzC,MAAMgkD,EAAe,0BAgDrB1wG,EAAQ6yD,cAjCR,MACE,WAAA/yC,CAAYpJ,GACVvV,KAAKuV,OAASA,EACdvV,KAAKkN,IAjBT,SAAkBsiG,GAChB,MAAMtiG,EAAM,oBAAQ,MACduiG,EAAYviG,EAAIlM,MAAMwuG,GAC5B,MAA2B,UAAvBC,EAAUp3F,UAAwBo3F,EAAUn3F,KACvCm3F,EAEL,gBAAgBllG,KAAKilG,GAChBtiG,EAAIlM,MAAM,WAAWwuG,MAEzBC,EAAUn3F,OACbm3F,EAAUp3F,SAAW,SAEhBo3F,EACT,CAIeC,CAASn6F,EAAOrI,KAC3BlN,KAAKyqG,OAA+B,UAAtBzqG,KAAKkN,IAAImL,UAA8C,WAAtBrY,KAAKkN,IAAImL,SACxDrY,KAAK2vG,QAAgC,UAAtB3vG,KAAKkN,IAAImL,SACxBrY,KAAKouD,YAAcpuD,KAAKyqG,QAAUl1F,EAAO64C,aAAe,CAAC,EACzDpuD,KAAK0oG,mBAAqB,KAC1B1oG,KAAK0qG,qBAAuB,EAC9B,CACA,0BAAIxB,GACF,OAAOlpG,KAAK0oG,oBAAoBS,SAAW,CAC7C,CACA,aAAAhpC,GAGE,OAFA,EAAI7T,EAAMtW,SAASh2C,KAAK0oG,mBAAoB,wDAC5C1oG,KAAK0oG,mBAAqB1oG,KAAK2vG,QAAU,IAAIC,EAA0B5vG,MAAQ,IAAI6vG,EAAwB7vG,MACpGA,KAAK0oG,kBACd,CACA,cAAA3nC,CAAez+C,EAAOvU,GACpB,GAAIA,GAAO/N,KAAKkpG,uBACd,OAAO,KAET,MAAMpoC,EAAc9gE,KAAK2vG,QAAU,IAAIG,EAA2B9vG,KAAMsiB,EAAOvU,GAAO,IAAIgiG,EAAyB/vG,KAAMsiB,EAAOvU,GAEhI,OADA/N,KAAK0qG,qBAAqB9oG,KAAKk/D,GACxBA,CACT,CACA,iBAAAb,CAAkBtlD,GAChB3a,KAAK0oG,oBAAoBjtC,OAAO9gD,GAChC,UAAWogD,KAAU/6D,KAAK0qG,qBAAqBz9F,MAAM,GACnD8tD,EAAOU,OAAO9gD,EAElB,GAGF,MAAMq1F,EACJ,WAAArxF,CAAY8mF,GACVzlG,KAAKkoB,KAAOu9E,EAAOv4F,IACnBlN,KAAKypG,OAAQ,EACbzpG,KAAKivG,aAAe,KACpBjvG,KAAKuyD,WAAa,KAClB,MAAMh9C,EAASkwF,EAAOlwF,OACtBvV,KAAKyoG,eAAiBlzF,EAAO1P,OAC7B7F,KAAKmpG,QAAU,EACfnpG,KAAK0pG,UAAY,KACjB1pG,KAAKgrG,cAAgBz1F,EAAOi6C,eAAgB,EAC5CxvD,KAAKirG,gBAAkB11F,EAAOi5C,eACzBxuD,KAAKirG,iBAAoBjrG,KAAKgrG,gBACjChrG,KAAKgrG,eAAgB,GAEvBhrG,KAAKuoG,uBAAyBhzF,EAAOk6C,cACrCzvD,KAAKwoG,mBAAqBjzF,EAAOi6C,aACjCxvD,KAAKiwG,gBAAkB,KACvBjwG,KAAK4rG,gBAAkB,IAAIt/C,EAAMtY,kBACjCh0C,KAAK+qG,mBAAqB,IAAIz+C,EAAMtY,iBACtC,CACA,gBAAI0sB,GACF,OAAO1gE,KAAK+qG,mBAAmB1/C,OACjC,CACA,YAAI38B,GACF,OAAO1uB,KAAK0pG,SACd,CACA,iBAAI7oC,GACF,OAAO7gE,KAAKyoG,cACd,CACA,oBAAI7nC,GACF,OAAO5gE,KAAKwoG,iBACd,CACA,wBAAI7nC,GACF,OAAO3gE,KAAKuoG,qBACd,CACA,UAAMptC,GAEJ,SADMn7D,KAAK4rG,gBAAgBvgD,QACvBrrD,KAAKypG,MACP,MAAO,CACLtpG,WAAO,EACPyE,MAAM,GAGV,GAAI5E,KAAKivG,aACP,MAAMjvG,KAAKivG,aAEb,MAAMznD,EAAQxnD,KAAKiwG,gBAAgB90C,OACnC,OAAc,OAAV3T,GACFxnD,KAAK4rG,gBAAkB,IAAIt/C,EAAMtY,kBAC1Bh0C,KAAKm7D,SAEdn7D,KAAKmpG,SAAW3hD,EAAM3hD,OACtB7F,KAAKuyD,aAAa,CAChBliC,OAAQrwB,KAAKmpG,QACb74E,MAAOtwB,KAAKyoG,iBAGP,CACLtoG,MAFa,IAAIwpB,WAAW69B,GAAOz8B,OAGnCnmB,MAAM,GAEV,CACA,MAAA62D,CAAO9gD,GACA3a,KAAKiwG,gBAIVjwG,KAAKiwG,gBAAgB7jF,QAAQzR,GAH3B3a,KAAKggB,OAAOrF,EAIhB,CACA,MAAAqF,CAAOrF,GACL3a,KAAKivG,aAAet0F,EACpB3a,KAAK4rG,gBAAgBxnG,SACvB,CACA,kBAAA8rG,CAAmBp1C,GACjB96D,KAAKiwG,gBAAkBn1C,EACvBA,EAAel/B,GAAG,YAAY,KAC5B57B,KAAK4rG,gBAAgBxnG,SAAS,IAEhC02D,EAAel/B,GAAG,OAAO,KACvBk/B,EAAe1uC,UACfpsB,KAAKypG,OAAQ,EACbzpG,KAAK4rG,gBAAgBxnG,SAAS,IAEhC02D,EAAel/B,GAAG,SAASjhB,IACzB3a,KAAKggB,OAAOrF,EAAO,KAEhB3a,KAAKuoG,uBAAyBvoG,KAAKwoG,mBACtCxoG,KAAKggB,OAAO,IAAIssC,EAAMvW,eAAe,0BAEnC/1C,KAAKivG,cACPjvG,KAAKiwG,gBAAgB7jF,QAAQpsB,KAAKivG,aAEtC,EAEF,MAAMkB,EACJ,WAAAxxF,CAAY8mF,GACVzlG,KAAKkoB,KAAOu9E,EAAOv4F,IACnBlN,KAAKypG,OAAQ,EACbzpG,KAAKivG,aAAe,KACpBjvG,KAAKuyD,WAAa,KAClBvyD,KAAKmpG,QAAU,EACfnpG,KAAKiwG,gBAAkB,KACvBjwG,KAAK4rG,gBAAkB,IAAIt/C,EAAMtY,kBACjC,MAAMz+B,EAASkwF,EAAOlwF,OACtBvV,KAAKuoG,uBAAyBhzF,EAAOk6C,aACvC,CACA,wBAAIkR,GACF,OAAO3gE,KAAKuoG,qBACd,CACA,UAAMptC,GAEJ,SADMn7D,KAAK4rG,gBAAgBvgD,QACvBrrD,KAAKypG,MACP,MAAO,CACLtpG,WAAO,EACPyE,MAAM,GAGV,GAAI5E,KAAKivG,aACP,MAAMjvG,KAAKivG,aAEb,MAAMznD,EAAQxnD,KAAKiwG,gBAAgB90C,OACnC,OAAc,OAAV3T,GACFxnD,KAAK4rG,gBAAkB,IAAIt/C,EAAMtY,kBAC1Bh0C,KAAKm7D,SAEdn7D,KAAKmpG,SAAW3hD,EAAM3hD,OACtB7F,KAAKuyD,aAAa,CAChBliC,OAAQrwB,KAAKmpG,UAGR,CACLhpG,MAFa,IAAIwpB,WAAW69B,GAAOz8B,OAGnCnmB,MAAM,GAEV,CACA,MAAA62D,CAAO9gD,GACA3a,KAAKiwG,gBAIVjwG,KAAKiwG,gBAAgB7jF,QAAQzR,GAH3B3a,KAAKggB,OAAOrF,EAIhB,CACA,MAAAqF,CAAOrF,GACL3a,KAAKivG,aAAet0F,EACpB3a,KAAK4rG,gBAAgBxnG,SACvB,CACA,kBAAA8rG,CAAmBp1C,GACjB96D,KAAKiwG,gBAAkBn1C,EACvBA,EAAel/B,GAAG,YAAY,KAC5B57B,KAAK4rG,gBAAgBxnG,SAAS,IAEhC02D,EAAel/B,GAAG,OAAO,KACvBk/B,EAAe1uC,UACfpsB,KAAKypG,OAAQ,EACbzpG,KAAK4rG,gBAAgBxnG,SAAS,IAEhC02D,EAAel/B,GAAG,SAASjhB,IACzB3a,KAAKggB,OAAOrF,EAAO,IAEjB3a,KAAKivG,cACPjvG,KAAKiwG,gBAAgB7jF,QAAQpsB,KAAKivG,aAEtC,EAEF,SAASmB,EAAqBX,EAAW57F,GACvC,MAAO,CACLwE,SAAUo3F,EAAUp3F,SACpBg4F,KAAMZ,EAAUY,KAChB/3F,KAAMm3F,EAAUr/F,SAChBogD,KAAMi/C,EAAUj/C,KAChBxkD,KAAMyjG,EAAUzjG,KAChB9D,OAAQ,MACR2L,UAEJ,CACA,MAAMg8F,UAAgCG,EACpC,WAAArxF,CAAY8mF,GACVh+C,MAAMg+C,GACN,MAAM6K,EAAiBj0F,IACrB,GAA4B,MAAxBA,EAAS3G,WAAoB,CAC/B,MAAM1L,EAAQ,IAAIsiD,EAAMhY,oBAAoB,gBAAgBt0C,KAAKkoB,UAGjE,OAFAloB,KAAKivG,aAAejlG,OACpBhK,KAAK+qG,mBAAmBzmG,OAAO0F,EAEjC,CACAhK,KAAK+qG,mBAAmB3mG,UACxBpE,KAAKkwG,mBAAmB7zF,GACxB,MAAMkvF,EAAoBpiG,GACjBnJ,KAAKiwG,gBAAgBp8F,QAAQ1K,EAAKR,gBAErC,mBACJ6iG,EAAkB,gBAClBC,IACE,EAAIzB,EAAe0B,kCAAkC,CACvDH,oBACAd,OAAQhF,EAAOgF,OACfj8C,eAAgBxuD,KAAKirG,gBACrBz7C,aAAcxvD,KAAKgrG,gBAErBhrG,KAAKwoG,kBAAoBgD,EACzBxrG,KAAKyoG,eAAiBgD,GAAmBzrG,KAAKyoG,eAC9CzoG,KAAK0pG,WAAY,EAAIM,EAAe2B,2BAA2BJ,EAAkB,EAGnF,GADAvrG,KAAKuwG,SAAW,KACW,UAAvBvwG,KAAKkoB,KAAK7P,SAAsB,CAClC,MAAMm4F,EAAO,oBAAQ,MACrBxwG,KAAKuwG,SAAWC,EAAKr8F,QAAQi8F,EAAqBpwG,KAAKkoB,KAAMu9E,EAAOr3C,aAAckiD,EACpF,KAAO,CACL,MAAMG,EAAQ,oBAAQ,MACtBzwG,KAAKuwG,SAAWE,EAAMt8F,QAAQi8F,EAAqBpwG,KAAKkoB,KAAMu9E,EAAOr3C,aAAckiD,EACrF,CACAtwG,KAAKuwG,SAAS30E,GAAG,SAASjhB,IACxB3a,KAAKivG,aAAet0F,EACpB3a,KAAK+qG,mBAAmBzmG,OAAOqW,EAAO,IAExC3a,KAAKuwG,SAASxiG,KAChB,EAEF,MAAMgiG,UAAiCI,EACrC,WAAAxxF,CAAY8mF,EAAQnjF,EAAOvU,GACzB05C,MAAMg+C,GACNzlG,KAAK0wG,aAAe,CAAC,EACrB,UAAWluE,KAAYijE,EAAOr3C,YAAa,CACzC,MAAMjuD,EAAQslG,EAAOr3C,YAAY5rB,QACnB,IAAVriC,IAGJH,KAAK0wG,aAAaluE,GAAYriC,EAChC,CACAH,KAAK0wG,aAAaC,MAAQ,SAASruF,KAASvU,EAAM,IAClD,MAAMuiG,EAAiBj0F,IACrB,GAA4B,MAAxBA,EAAS3G,WAKb1V,KAAKkwG,mBAAmB7zF,OALxB,CACE,MAAMrS,EAAQ,IAAIsiD,EAAMhY,oBAAoB,gBAAgBt0C,KAAKkoB,UACjEloB,KAAKivG,aAAejlG,CAEtB,CACiC,EAGnC,GADAhK,KAAKuwG,SAAW,KACW,UAAvBvwG,KAAKkoB,KAAK7P,SAAsB,CAClC,MAAMm4F,EAAO,oBAAQ,MACrBxwG,KAAKuwG,SAAWC,EAAKr8F,QAAQi8F,EAAqBpwG,KAAKkoB,KAAMloB,KAAK0wG,cAAeJ,EACnF,KAAO,CACL,MAAMG,EAAQ,oBAAQ,MACtBzwG,KAAKuwG,SAAWE,EAAMt8F,QAAQi8F,EAAqBpwG,KAAKkoB,KAAMloB,KAAK0wG,cAAeJ,EACpF,CACAtwG,KAAKuwG,SAAS30E,GAAG,SAASjhB,IACxB3a,KAAKivG,aAAet0F,CAAM,IAE5B3a,KAAKuwG,SAASxiG,KAChB,EAEF,MAAM6hG,UAAkCI,EACtC,WAAArxF,CAAY8mF,GACVh+C,MAAMg+C,GACN,IAAIz5F,EAAOm/C,mBAAmBnrD,KAAKkoB,KAAKlc,MACpCujG,EAAahlG,KAAKvK,KAAKkoB,KAAK3L,QAC9BvQ,EAAOA,EAAKE,QAAQ,MAAO,KAE7B,MAAM0kG,EAAK,oBAAQ,KACnBA,EAAGC,MAAM7kG,GAAM,CAAChC,EAAO8mG,KACrB,GAAI9mG,EAMF,MALmB,WAAfA,EAAM2vC,OACR3vC,EAAQ,IAAIsiD,EAAMhY,oBAAoB,gBAAgBtoC,QAExDhM,KAAKivG,aAAejlG,OACpBhK,KAAK+qG,mBAAmBzmG,OAAO0F,GAGjChK,KAAKyoG,eAAiBqI,EAAK/jF,KAC3B/sB,KAAKkwG,mBAAmBU,EAAGG,iBAAiB/kG,IAC5ChM,KAAK+qG,mBAAmB3mG,SAAS,GAErC,EAEF,MAAM0rG,UAAmCK,EACvC,WAAAxxF,CAAY8mF,EAAQnjF,EAAOvU,GACzB05C,MAAMg+C,GACN,IAAIz5F,EAAOm/C,mBAAmBnrD,KAAKkoB,KAAKlc,MACpCujG,EAAahlG,KAAKvK,KAAKkoB,KAAK3L,QAC9BvQ,EAAOA,EAAKE,QAAQ,MAAO,KAE7B,MAAM0kG,EAAK,oBAAQ,KACnB5wG,KAAKkwG,mBAAmBU,EAAGG,iBAAiB/kG,EAAM,CAChDsW,QACAvU,IAAKA,EAAM,IAEf,EACF,EAIO,CAAC2lC,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQwtD,iBAAc,EACtB,IAAIG,EAAiBjB,EAAoB,GACrCe,EAAQf,EAAoB,GAEhC,MAAMylD,EACO,SADPA,EAEQ,SAFRA,EAGO,UAIP9hB,EAAkB,CAAC,OAAQ,QAAS,UACpCC,EAAmB,CAAC,QAAS,QAAS,SACtC5xB,EAAkB,SAAU34C,EAAMqsF,EAAc,GAAIC,GAAkB,GAC1E,GAAIv4F,IAAI4kD,iBAAmC,oBAATC,OAAyB0zC,EACzD,OAAOv4F,IAAI4kD,gBAAgB,IAAIC,KAAK,CAAC54C,GAAO,CAC1C7X,KAAMkkG,KAGV,MAAME,EAAS,oEACf,IAAIpmF,EAAS,QAAQkmF,YACrB,QAASpoG,EAAI,EAAGovC,EAAKrzB,EAAK/e,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAAG,CAChD,MAAMuoG,EAAe,IAAVxsF,EAAK/b,GACVwoG,EAAmB,IAAdzsF,EAAK/b,EAAI,GACdyoG,EAAmB,IAAd1sF,EAAK/b,EAAI,GAKpBkiB,GAAUomF,EAJCC,GAAM,GAIMD,GAHV,EAALC,IAAW,EAAIC,GAAM,GAGOF,EAFzBtoG,EAAI,EAAIovC,GAAW,GAALo5D,IAAa,EAAIC,GAAM,EAAI,IAEHH,EADtCtoG,EAAI,EAAIovC,EAAU,GAALq5D,EAAY,GAEtC,CACA,OAAOvmF,CACT,EACMwmF,EAAsB,WAC1B,MAAMC,EAAa,IAAI7nF,WAAW,CAAC,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,KAEvE8nF,EAAW,IAAIjV,WAAW,KAChC,QAAS3zF,EAAI,EAAGA,EAAI,IAAKA,IAAK,CAC5B,IAAIggB,EAAIhgB,EACR,QAAS+/B,EAAI,EAAGA,EAAI,EAAGA,IACrB/f,EAAQ,EAAJA,EAAQ,WAAaA,GAAK,EAAI,WAAaA,GAAK,EAAI,WAE1D4oF,EAAS5oG,GAAKggB,CAChB,CAUA,SAAS6oF,EAAc3kG,EAAMhI,EAAM6f,EAAM0/D,GACvC,IAAIp1E,EAAIo1E,EACR,MAAMz6E,EAAM9E,EAAKc,OACjB+e,EAAK1V,GAAKrF,GAAO,GAAK,IACtB+a,EAAK1V,EAAI,GAAKrF,GAAO,GAAK,IAC1B+a,EAAK1V,EAAI,GAAKrF,GAAO,EAAI,IACzB+a,EAAK1V,EAAI,GAAW,IAANrF,EACdqF,GAAK,EACL0V,EAAK1V,GAA0B,IAArBnC,EAAKic,WAAW,GAC1BpE,EAAK1V,EAAI,GAA0B,IAArBnC,EAAKic,WAAW,GAC9BpE,EAAK1V,EAAI,GAA0B,IAArBnC,EAAKic,WAAW,GAC9BpE,EAAK1V,EAAI,GAA0B,IAArBnC,EAAKic,WAAW,GAC9B9Z,GAAK,EACL0V,EAAKkG,IAAI/lB,EAAMmK,GACfA,GAAKnK,EAAKc,OACV,MAAM8rG,EAxBR,SAAe/sF,EAAMtC,EAAOvU,GAC1B,IAAI4jG,GAAO,EACX,QAAS9oG,EAAIyZ,EAAOzZ,EAAIkF,EAAKlF,IAAK,CAChC,MAAM/I,EAAsB,KAAjB6xG,EAAM/sF,EAAK/b,IAEtB8oG,EAAMA,IAAQ,EADJF,EAAS3xG,EAErB,CACA,OAAc,EAAP6xG,CACT,CAgBcC,CAAMhtF,EAAM0/D,EAAS,EAAGp1E,GACpC0V,EAAK1V,GAAKyiG,GAAO,GAAK,IACtB/sF,EAAK1V,EAAI,GAAKyiG,GAAO,GAAK,IAC1B/sF,EAAK1V,EAAI,GAAKyiG,GAAO,EAAI,IACzB/sF,EAAK1V,EAAI,GAAW,IAANyiG,CAChB,CAyBA,SAASE,EAAwBC,GAC/B,IAAIjoG,EAAMioG,EAASjsG,OACnB,MAAMksG,EAAiB,MACjBC,EAAgBvuF,KAAKqJ,KAAKjjB,EAAMkoG,GAChCE,EAAO,IAAItoF,WAAW,EAAI9f,EAAsB,EAAhBmoG,EAAoB,GAC1D,IAAIE,EAAK,EACTD,EAAKC,KAAQ,IACbD,EAAKC,KAAQ,IACb,IAAI7V,EAAM,EACV,KAAOxyF,EAAMkoG,GACXE,EAAKC,KAAQ,EACbD,EAAKC,KAAQ,IACbD,EAAKC,KAAQ,IACbD,EAAKC,KAAQ,EACbD,EAAKC,KAAQ,EACbD,EAAKnnF,IAAIgnF,EAASpoF,SAAS2yE,EAAKA,EAAM0V,GAAiBG,GACvDA,GAAMH,EACN1V,GAAO0V,EACPloG,GAAOkoG,EAETE,EAAKC,KAAQ,EACbD,EAAKC,KAAc,IAANroG,EACbooG,EAAKC,KAAQroG,GAAO,EAAI,IACxBooG,EAAKC,KAAe,KAANroG,EACdooG,EAAKC,MAAgB,OAANroG,IAAiB,EAAI,IACpCooG,EAAKnnF,IAAIgnF,EAASpoF,SAAS2yE,GAAM6V,GACjCA,GAAMJ,EAASjsG,OAASw2F,EACxB,MAAM8V,EAnDR,SAAiBvtF,EAAMtC,EAAOvU,GAC5B,IAAIjO,EAAI,EACJ0e,EAAI,EACR,QAAS3V,EAAIyZ,EAAOzZ,EAAIkF,IAAOlF,EAC7B/I,GAAKA,GAAe,IAAV8kB,EAAK/b,KAAc,MAC7B2V,GAAKA,EAAI1e,GAAK,MAEhB,OAAO0e,GAAK,GAAK1e,CACnB,CA2CgBsyG,CAAQN,EAAU,EAAGA,EAASjsG,QAK5C,OAJAosG,EAAKC,KAAQC,GAAS,GAAK,IAC3BF,EAAKC,KAAQC,GAAS,GAAK,IAC3BF,EAAKC,KAAQC,GAAS,EAAI,IAC1BF,EAAKC,KAAgB,IAARC,EACNF,CACT,CACA,SAASI,EAAO/nB,EAASa,EAAM+lB,EAAiBoB,GAC9C,MAAMvwE,EAAQuoD,EAAQvoD,MAChBE,EAASqoD,EAAQroD,OACvB,IAAIswE,EAAUC,EAAWpW,EACzB,MAAMnxE,EAAQq/D,EAAQ1lE,KACtB,OAAQumE,GACN,KAAK7+B,EAAM3X,UAAU+H,eACnB81D,EAAY,EACZD,EAAW,EACXnW,EAAWr6D,EAAQ,GAAK,EACxB,MACF,KAAKuqB,EAAM3X,UAAUgI,UACnB61D,EAAY,EACZD,EAAW,EACXnW,EAAmB,EAARr6D,EACX,MACF,KAAKuqB,EAAM3X,UAAUiI,WACnB41D,EAAY,EACZD,EAAW,EACXnW,EAAmB,EAARr6D,EACX,MACF,QACE,MAAM,IAAIt2B,MAAM,kBAEpB,MAAMqmG,EAAW,IAAInoF,YAAY,EAAIyyE,GAAYn6D,GACjD,IAAIwwE,EAAiB,EACnBC,EAAc,EAChB,QAAS1tG,EAAI,EAAGA,EAAIi9B,IAAUj9B,EAC5B8sG,EAASW,KAAoB,EAC7BX,EAAShnF,IAAIG,EAAMvB,SAASgpF,EAAaA,EAActW,GAAWqW,GAClEC,GAAetW,EACfqW,GAAkBrW,EAEpB,GAAIjR,IAAS7+B,EAAM3X,UAAU+H,gBAAkB41D,EAAQ,CACrDG,EAAiB,EACjB,QAASztG,EAAI,EAAGA,EAAIi9B,EAAQj9B,IAAK,CAC/BytG,IACA,QAAS5pG,EAAI,EAAGA,EAAIuzF,EAAUvzF,IAC5BipG,EAASW,MAAqB,GAElC,CACF,CACA,MAAME,EAAO,IAAIhpF,WAAW,CAACoY,GAAS,GAAK,IAAMA,GAAS,GAAK,IAAMA,GAAS,EAAI,IAAc,IAARA,EAAcE,GAAU,GAAK,IAAMA,GAAU,GAAK,IAAMA,GAAU,EAAI,IAAe,IAATA,EAAeswE,EAAUC,EAAW,EAAM,EAAM,IAC9MP,EA5FR,SAAqBH,GACnB,IAAKxlD,EAAMpU,SACT,OAAO25D,EAAwBC,GAEjC,IACE,MAAM31F,EAAQqN,SAAS6V,QAAQya,SAAS3gC,OAAS,EAAI24F,EAAW1/C,OAAOx1C,KAAKk1F,GACtEc,EAAS,sCAA4Bz2F,EAAO,CAChDf,MAAO,IAET,OAAOw3F,aAAkBjpF,WAAaipF,EAAS,IAAIjpF,WAAWipF,EAChE,CAAE,MAAOluG,IACP,EAAI4nD,EAAMhhD,MAAM,gEAAkE5G,EACpF,CACA,OAAOmtG,EAAwBC,EACjC,CA8Eee,CAAYf,GACnBgB,EAAYtB,EAAW3rG,OAASktG,GAAyBJ,EAAK9sG,OAASosG,EAAKpsG,OAC5E+e,EAAO,IAAI+E,WAAWmpF,GAC5B,IAAIxuB,EAAS,EAQb,OAPA1/D,EAAKkG,IAAI0mF,EAAYltB,GACrBA,GAAUktB,EAAW3rG,OACrB6rG,EAAc,OAAQiB,EAAM/tF,EAAM0/D,GAClCA,GAnJyB,GAmJMquB,EAAK9sG,OACpC6rG,EAAc,QAASO,EAAMrtF,EAAM0/D,GACnCA,GArJyB,GAqJM2tB,EAAKpsG,OACpC6rG,EAAc,OAAQ,IAAI/nF,WAAW,GAAI/E,EAAM0/D,GACxC/mB,EAAgB34C,EAAM,YAAassF,EAC5C,CACA,OAAO,SAA6B5mB,EAAS4mB,EAAiBoB,GAE5D,OAAOD,EAAO/nB,OADgB,IAAjBA,EAAQa,KAAqB7+B,EAAM3X,UAAU+H,eAAiB4tC,EAAQa,KACtD+lB,EAAiBoB,EAChD,CACF,CA/J4B,GAgK5B,MAAMU,EACJ,WAAAr0F,GACE3e,KAAK4nF,cAAgB,EACrB5nF,KAAKolF,WAAa4rB,EAClBhxG,KAAK2nF,SAAW,EAChB3nF,KAAK6nF,WAAav7B,EAAM1X,gBACxB50C,KAAK+nF,WAAaz7B,EAAMvX,qBACxB/0C,KAAKgoF,QAAU,EACfhoF,KAAKsoF,kBAAoBh8B,EAAMxY,kBAAkBkI,KACjDh8C,KAAK8nF,gBAAkB,EACvB9nF,KAAKZ,EAAI,EACTY,KAAKgF,EAAI,EACThF,KAAKioF,MAAQ,EACbjoF,KAAKkoF,MAAQ,EACbloF,KAAKmoF,YAAc,EACnBnoF,KAAKooF,YAAc,EACnBpoF,KAAKqoF,WAAa,EAClBroF,KAAKuoF,SAAW,EAChBvoF,KAAKwoF,UAAYwoB,EACjBhxG,KAAKyoF,YAAc,UACnBzoF,KAAK2oF,UAAY,EACjB3oF,KAAK4oF,YAAc,EACnB5oF,KAAK6oF,UAAY,EACjB7oF,KAAK8sF,SAAW,GAChB9sF,KAAK6sF,QAAU,GACf7sF,KAAK+sF,WAAa,EAClB/sF,KAAK8zF,UAAY,GACjB9zF,KAAK+zF,UAAY,EACjB/zF,KAAKizG,aAAe,GACpBjzG,KAAKkzG,cAAgB,KACrBlzG,KAAKmzG,UAAY,KACjBnzG,KAAKozG,OAAS,EAChB,CACA,KAAArtG,GACE,OAAOzG,OAAO4D,OAAOlD,KACvB,CACA,eAAAkpF,CAAgB9pF,EAAG4F,GACjBhF,KAAKZ,EAAIA,EACTY,KAAKgF,EAAIA,CACX,EAwBF,SAASquG,EAAGlzG,GACV,GAAI24C,OAAOC,UAAU54C,GACnB,OAAOA,EAAMuK,WAEf,MAAMuE,EAAI9O,EAAMmqE,QAAQ,IACxB,IAAIzhE,EAAIoG,EAAEpJ,OAAS,EACnB,GAAa,MAAToJ,EAAEpG,GACJ,OAAOoG,EAET,GACEpG,UACgB,MAAToG,EAAEpG,IACX,OAAOoG,EAAEsa,UAAU,EAAY,MAATta,EAAEpG,GAAaA,EAAIA,EAAI,EAC/C,CACA,SAASyqG,EAAGlwG,GACV,GAAa,IAATA,EAAE,IAAqB,IAATA,EAAE,GAAU,CAC5B,GAAa,IAATA,EAAE,IAAqB,IAATA,EAAE,GAClB,OAAa,IAATA,EAAE,IAAqB,IAATA,EAAE,GACX,GAEF,SAASiwG,EAAGjwG,EAAE,OAAOiwG,EAAGjwG,EAAE,OAEnC,GAAIA,EAAE,KAAOA,EAAE,IAAMA,EAAE,MAAQA,EAAE,GAE/B,MAAO,UAAUiwG,EADW,IAAlB5vF,KAAK8vF,KAAKnwG,EAAE,IAAYqgB,KAAKo9B,MAG3C,MAAO,GAAa,IAATz9C,EAAE,IAAqB,IAATA,EAAE,IAAqB,IAATA,EAAE,IAAqB,IAATA,EAAE,GACrD,MAAO,aAAaiwG,EAAGjwG,EAAE,OAAOiwG,EAAGjwG,EAAE,OAEvC,MAAO,UAAUiwG,EAAGjwG,EAAE,OAAOiwG,EAAGjwG,EAAE,OAAOiwG,EAAGjwG,EAAE,OAAOiwG,EAAGjwG,EAAE,OAAOiwG,EAAGjwG,EAAE,OAAYiwG,EAAGjwG,EAAE,MACzF,CACA,IAAIowG,EAAY,EACZC,EAAY,EACZC,EAAe,EAk7BnB70G,EAAQwtD,YAj7BR,MACE,WAAA1tC,CAAY83C,EAAYC,EAAMw6C,GAAkB,IAC9C,EAAI1kD,EAAemH,YAAY,gFAC/B3zD,KAAK2zG,WAAa,IAAInnD,EAAe6tB,cACrCr6E,KAAK82B,QAAU,IAAIk8E,EACnBhzG,KAAK4zG,gBAAkBtnD,EAAM1X,gBAC7B50C,KAAK6zG,eAAiB,GACtB7zG,KAAK8zG,WAAa,GAClB9zG,KAAKy2D,WAAaA,EAClBz2D,KAAK02D,KAAOA,EACZ12D,KAAK8vF,YAAc,KACnB9vF,KAAK+vF,eAAgB,EACrB/vF,KAAK+zG,YAAa,EAClB/zG,KAAKg0G,cAAgB10G,OAAO4D,OAAO,MACnClD,KAAKi0G,SAAW,KAChBj0G,KAAKkxG,kBAAoBA,EACzBlxG,KAAKk0G,mBAAqB,GAC1B,UAAWxuG,KAAM4mD,EAAMjY,IACrBr0C,KAAKk0G,mBAAmB5nD,EAAMjY,IAAI3uC,IAAOA,CAE7C,CACA,SAAA67B,CAAU3c,EAAMusE,EAAW,MACzB,MAAoB,iBAATvsE,EACFA,EAAK2xB,WAAW,MAAQv2C,KAAKy2D,WAAWh2D,IAAImkB,GAAQ5kB,KAAK02D,KAAKj2D,IAAImkB,GAEpEusE,CACT,CACA,IAAA/uC,GACEpiD,KAAK6zG,eAAejyG,KAAK5B,KAAK4zG,iBAC9B,MAAM5d,EAAMh2F,KAAK82B,QACjB92B,KAAK8zG,WAAWlyG,KAAKo0F,GACrBh2F,KAAK82B,QAAUk/D,EAAIjwF,OACrB,CACA,OAAAs8C,GACEriD,KAAK4zG,gBAAkB5zG,KAAK6zG,eAAejuG,MAC3C5F,KAAK82B,QAAU92B,KAAK8zG,WAAWluG,MAC/B5F,KAAK8vF,YAAc,KACnB9vF,KAAKm0G,KAAO,IACd,CACA,KAAAnZ,CAAMtgC,GACJ16D,KAAKoiD,OACLpiD,KAAKo0G,cAAc15C,GACnB16D,KAAKqiD,SACP,CACA,gBAAAgyD,CAAiBv7C,GACf,MAAMC,EAAUD,EAAaC,QACvBC,EAAYF,EAAaE,UAC/B,QAASnwD,EAAI,EAAGovC,EAAK8gB,EAAQlzD,OAAQgD,EAAIovC,EAAIpvC,IAC3C,GAAIkwD,EAAQlwD,KAAOyjD,EAAMjY,IAAIsN,WAG7B,UAAW/5C,KAAOoxD,EAAUnwD,GAAI,CAC9B,MAAMkpF,EAAWnqF,EAAI2uC,WAAW,MAAQv2C,KAAKy2D,WAAaz2D,KAAK02D,KACzDrL,EAAU,IAAIhnD,SAAQD,IAC1B2tF,EAAStxF,IAAImH,EAAKxD,EAAQ,IAE5BpE,KAAK82B,QAAQm8E,aAAarxG,KAAKypD,EACjC,CAEF,OAAOhnD,QAAQw8B,IAAI7gC,KAAK82B,QAAQm8E,aAClC,CACA,SAAA3wD,CAAUxiD,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GACvB,MAAMg0G,EAAkB,CAAC9zG,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GACxCI,KAAK4zG,gBAAkBtnD,EAAMv2C,KAAKusC,UAAUtiD,KAAK4zG,gBAAiBA,GAClE5zG,KAAKm0G,KAAO,IACd,CACA,MAAAG,CAAOx7C,EAAcZ,GACnBl4D,KAAKk4D,SAAWA,EAChB,MAAMq8C,EAAav0G,KAAK89D,YAAY5F,GACpC,OAAOl4D,KAAKq0G,iBAAiBv7C,GAAcj0D,MAAK,KAC9C7E,KAAK4zG,gBAAkBtnD,EAAM1X,gBAC7B50C,KAAKo0G,cAAcp0G,KAAKw0G,cAAc17C,IAC/By7C,IAEX,CACA,aAAAC,CAAc17C,GACZ,MAAM27C,EAAoBz0G,KAAKk0G,mBACzBl7C,EAAYF,EAAaE,UACzBD,EAAUD,EAAaC,QACvB27C,EAAS,GACf,QAAS7rG,EAAI,EAAGovC,EAAK8gB,EAAQlzD,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAChD,MAAM+oF,EAAO74B,EAAQlwD,GACrB6rG,EAAO9yG,KAAK,CACVgwF,OACAh9D,GAAI6/E,EAAkB7iB,GACtB3mF,KAAM+tD,EAAUnwD,IAEpB,CACA,OAhJJ,SAAsB6rG,GACpB,IAAIC,EAAS,GACb,MAAMvrF,EAAM,GACZ,UAAWwrF,KAAiBF,EACD,SAArBE,EAAchgF,GAUO,YAArBggF,EAAchgF,GAChB+/E,EAASvrF,EAAIxjB,MAEb+uG,EAAO/yG,KAAKgzG,IAZZD,EAAO/yG,KAAK,CACVgwF,KAAM,GACNh9D,GAAI,QACJ8lC,MAAO,KAETtxC,EAAIxnB,KAAK+yG,GACTA,EAASA,EAAOzgC,IAAI,GAAGxZ,OAS3B,OAAOi6C,CACT,CA2HWE,CAAaH,EACtB,CACA,aAAAN,CAAcO,GACZ,UAAWG,KAAiBH,EAAQ,CAClC,MAAM//E,EAAKkgF,EAAclgF,GACnBg9D,EAAOkjB,EAAcljB,KACrB3mF,EAAO6pG,EAAc7pG,KAC3B,OAAe,EAAP2mF,GACN,KAAKtlC,EAAMjY,IAAIoP,UACbzjD,KAAKyjD,YACL,MACF,KAAK6I,EAAMjY,IAAIsN,WACb,MACF,KAAK2K,EAAMjY,IAAIyP,WACb9jD,KAAK8jD,WAAW74C,GAChB,MACF,KAAKqhD,EAAMjY,IAAI8P,mBACbnkD,KAAKmkD,mBAAmBl5C,EAAK,GAAIA,EAAK,IACtC,MACF,KAAKqhD,EAAMjY,IAAI0P,QACb/jD,KAAK+jD,QAAQ94C,GACb,MACF,KAAKqhD,EAAMjY,IAAIiQ,SAGf,KAAKgI,EAAMjY,IAAIkQ,eACbvkD,KAAKskD,SAASr5C,EAAK,IACnB,MACF,KAAKqhD,EAAMjY,IAAIqP,QACb1jD,KAAK0jD,UACL,MACF,KAAK4I,EAAMjY,IAAI6P,SACblkD,KAAKkkD,SAASj5C,EAAK,GAAIA,EAAK,IAC5B,MACF,KAAKqhD,EAAMjY,IAAIsP,eACb3jD,KAAK2jD,eAAe14C,EAAK,IACzB,MACF,KAAKqhD,EAAMjY,IAAIuP,eACb5jD,KAAK4jD,eAAe34C,EAAK,IACzB,MACF,KAAKqhD,EAAMjY,IAAIwP,UACb7jD,KAAK6jD,UAAU54C,EAAK,IACpB,MACF,KAAKqhD,EAAMjY,IAAI+P,cACbpkD,KAAKokD,cAAcn5C,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,IACrE,MACF,KAAKqhD,EAAMjY,IAAI4P,YACbjkD,KAAKikD,YAAYh5C,EAAK,IACtB,MACF,KAAKqhD,EAAMjY,IAAI2P,qBACbhkD,KAAKgkD,qBAAqB/4C,EAAK,IAC/B,MACF,KAAKqhD,EAAMjY,IAAIuN,aACb5hD,KAAK4hD,aAAa32C,EAAK,IACvB,MACF,KAAKqhD,EAAMjY,IAAIyN,YACb9hD,KAAK8hD,YAAY72C,EAAK,IACtB,MACF,KAAKqhD,EAAMjY,IAAIwN,WACb7hD,KAAK6hD,WAAW52C,EAAK,IACrB,MACF,KAAKqhD,EAAMjY,IAAI0N,cACb/hD,KAAK+hD,cAAc92C,EAAK,IACxB,MACF,KAAKqhD,EAAMjY,IAAIgR,gBACbrlD,KAAKqlD,gBAAgBp6C,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAC5C,MACF,KAAKqhD,EAAMjY,IAAI+Q,kBACbplD,KAAKolD,kBAAkBn6C,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAC9C,MACF,KAAKqhD,EAAMjY,IAAI0Q,gBACb/kD,KAAK+kD,gBAAgB95C,GACrB,MACF,KAAKqhD,EAAMjY,IAAI4Q,cACbjlD,KAAKilD,cAAch6C,GACnB,MACF,KAAKqhD,EAAMjY,IAAImR,YACbxlD,KAAKwlD,YAAYv6C,EAAK,IACtB,MACF,KAAKqhD,EAAMjY,IAAI2N,QACbhiD,KAAKgiD,QAAQ/2C,EAAK,GAAIA,EAAK,IAC3B,MACF,KAAKqhD,EAAMjY,IAAI4N,mBACbjiD,KAAKiiD,mBAAmBh3C,EAAK,IAC7B,MACF,KAAKqhD,EAAMjY,IAAI6N,YACbliD,KAAKkiD,YAAYj3C,EAAK,IACtB,MACF,KAAKqhD,EAAMjY,IAAI8N,UACbniD,KAAKmiD,UAAUl3C,EAAK,IACpB,MACF,KAAKqhD,EAAMjY,IAAI2O,KACbhjD,KAAKgjD,OACL,MACF,KAAKsJ,EAAMjY,IAAI4O,OACbjjD,KAAKijD,SACL,MACF,KAAKqJ,EAAMjY,IAAIyO,OACb9iD,KAAK8iD,SACL,MACF,KAAKwJ,EAAMjY,IAAI6O,WACbljD,KAAKkjD,aACL,MACF,KAAKoJ,EAAMjY,IAAI8O,aACbnjD,KAAKmjD,eACL,MACF,KAAKmJ,EAAMjY,IAAIkP,KACbvjD,KAAKujD,KAAK,WACV,MACF,KAAK+I,EAAMjY,IAAImP,OACbxjD,KAAKujD,KAAK,WACV,MACF,KAAK+I,EAAMjY,IAAI4S,yBACbjnD,KAAKinD,2BACL,MACF,KAAKqF,EAAMjY,IAAIuS,kBACb5mD,KAAK4mD,kBAAkB37C,EAAK,IAC5B,MACF,KAAKqhD,EAAMjY,IAAIwS,wBACb7mD,KAAK6mD,wBAAwB57C,EAAK,IAClC,MACF,KAAKqhD,EAAMjY,IAAIqS,sBACb1mD,KAAK0mD,sBAAsBz7C,EAAK,IAChC,MACF,KAAKqhD,EAAMjY,IAAI+R,sBACbpmD,KAAKomD,sBAAsBn7C,EAAK,GAAIA,EAAK,IACzC,MACF,KAAKqhD,EAAMjY,IAAIgS,oBACbrmD,KAAKqmD,sBACL,MACF,KAAKiG,EAAMjY,IAAIuO,UACb5iD,KAAK4iD,YACL,MACF,KAAK0J,EAAMjY,IAAI0O,YACb/iD,KAAK+iD,cACL,MACF,KAAKuJ,EAAMjY,IAAI+O,gBACbpjD,KAAKojD,kBACL,MACF,KAAKkJ,EAAMjY,IAAIgP,kBACbrjD,KAAKqjD,oBACL,MACF,KAAKiJ,EAAMjY,IAAIgQ,SACbrkD,KAAKqkD,WACL,MACF,KAAKiI,EAAMjY,IAAIiO,UACbtiD,KAAKsiD,UAAUr3C,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,IACjE,MACF,KAAKqhD,EAAMjY,IAAI6S,cACblnD,KAAKknD,cAAcj8C,EAAK,GAAIA,EAAK,IACjC,MACF,KAAKqhD,EAAMjY,IAAIiP,QACbtjD,KAAKsjD,UACL,MACF,KAAK,GACHtjD,KAAKg7F,MAAM8Z,EAAcp6C,OACzB,MACF,SACE,EAAIpO,EAAMhhD,MAAM,0BAA0BspB,KAGhD,CACF,CACA,cAAAgvB,CAAewkC,GACbpoF,KAAK82B,QAAQsxD,YAAcA,CAC7B,CACA,cAAAzkC,CAAewkC,GACbnoF,KAAK82B,QAAQqxD,YAAcA,CAC7B,CACA,QAAA9jC,GACErkD,KAAKkkD,SAAS,EAAGlkD,KAAK82B,QAAQkxD,QAChC,CACA,aAAA5jC,CAActkD,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GAC3B,MAAMk3B,EAAU92B,KAAK82B,QACrBA,EAAQ+wD,WAAa/wD,EAAQi+E,WAAa,CAACj1G,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GAC1Dk3B,EAAQgxD,gBAAkBrkE,KAAKktD,MAAM7wE,EAAG0e,GACxCsY,EAAQ13B,EAAI03B,EAAQmxD,MAAQ,EAC5BnxD,EAAQ9xB,EAAI8xB,EAAQoxD,MAAQ,EAC5BpxD,EAAQk+E,QAAU,GAClBl+E,EAAQm+E,QAAU,GAClBn+E,EAAQo+E,MAAQl1G,KAAK2zG,WAAWh8F,cAAc,aAC9Cmf,EAAQo+E,MAAMC,eAAe,KAAM,cAAer+E,EAAQ6tD,YAC1D7tD,EAAQo+E,MAAMC,eAAe,KAAM,YAAa,GAAG9B,EAAGv8E,EAAQ6wD,eAC9D7wD,EAAQo+E,MAAMC,eAAe,KAAM,IAAK9B,GAAIv8E,EAAQ9xB,IACpD8xB,EAAQs+E,WAAap1G,KAAK2zG,WAAWh8F,cAAc,YACnDmf,EAAQs+E,WAAWzpF,OAAOmL,EAAQo+E,MACpC,CACA,SAAAzxD,GACE,MAAM3sB,EAAU92B,KAAK82B,QACrBA,EAAQ13B,EAAI03B,EAAQmxD,MAAQ,EAC5BnxD,EAAQ9xB,EAAI8xB,EAAQoxD,MAAQ,EAC5BpxD,EAAQ+wD,WAAav7B,EAAM1X,gBAC3B9d,EAAQi+E,WAAazoD,EAAM1X,gBAC3B9d,EAAQgxD,gBAAkB,EAC1BhxD,EAAQo+E,MAAQl1G,KAAK2zG,WAAWh8F,cAAc,aAC9Cmf,EAAQs+E,WAAap1G,KAAK2zG,WAAWh8F,cAAc,YACnDmf,EAAQu+E,OAASr1G,KAAK2zG,WAAWh8F,cAAc,SAC/Cmf,EAAQk+E,QAAU,GAClBl+E,EAAQm+E,QAAU,EACpB,CACA,QAAA/wD,CAAS9kD,EAAG4F,GACV,MAAM8xB,EAAU92B,KAAK82B,QACrBA,EAAQ13B,EAAI03B,EAAQmxD,OAAS7oF,EAC7B03B,EAAQ9xB,EAAI8xB,EAAQoxD,OAASljF,EAC7B8xB,EAAQk+E,QAAU,GAClBl+E,EAAQm+E,QAAU,GAClBn+E,EAAQo+E,MAAQl1G,KAAK2zG,WAAWh8F,cAAc,aAC9Cmf,EAAQo+E,MAAMC,eAAe,KAAM,cAAer+E,EAAQ6tD,YAC1D7tD,EAAQo+E,MAAMC,eAAe,KAAM,YAAa,GAAG9B,EAAGv8E,EAAQ6wD,eAC9D7wD,EAAQo+E,MAAMC,eAAe,KAAM,IAAK9B,GAAIv8E,EAAQ9xB,GACtD,CACA,QAAAs/C,CAASwzC,GACP,MAAMhhE,EAAU92B,KAAK82B,QACf0qC,EAAO1qC,EAAQ0qC,KACfmmB,EAAW7wD,EAAQ6wD,SACzB,GAAiB,IAAbA,EACF,OAEF,MAAMC,EAAgB9wD,EAAQ8wD,cACxBO,EAAcrxD,EAAQqxD,YACtBC,EAActxD,EAAQsxD,YACtB4O,EAAgBlgE,EAAQkgE,cACxB3O,EAAavxD,EAAQuxD,WAAa2O,EAClCiB,EAAWz2B,EAAKy2B,SAChBC,EAAaD,EAAW,GAAK,EAC7BE,EAAkB32B,EAAK22B,gBACvBC,EAAoBzQ,EAAW7wD,EAAQixD,WAAW,GACxD,IAAI3oF,EAAI,EACR,UAAWs5F,KAASZ,EAAQ,CAC1B,GAAc,OAAVY,EAAgB,CAClBt5F,GAAK43F,EAAgB5O,EACrB,QACF,CAAO,GAAqB,iBAAVsQ,EAAoB,CACpCt5F,GAAK84F,EAAaQ,EAAQ/Q,EAAW,IACrC,QACF,CACA,MAAMkP,GAAW6B,EAAMG,QAAUzQ,EAAc,GAAKD,EAC9C3C,EAAYkT,EAAMI,SACxB,IAAIE,EAASC,EACTl3D,EAAQ22D,EAAM32D,MAClB,GAAIk2D,EAAU,CACZ,IAAIkB,EACJ,MAAMD,EAAUR,EAAMQ,SAAWf,EACjCgB,EAAKT,EAAMQ,QAAUA,EAAQ,GAAa,GAARn3D,EAClCo3D,GAAMA,EAAKf,EACX,MAAMgB,EAAKF,EAAQ,GAAKd,EACxBr2D,EAAQm3D,GAAWA,EAAQ,GAAKn3D,EAChCi3D,EAAUG,EAAKvR,EACfqR,GAAW75F,EAAIg6F,GAAMxR,CACvB,MACEoR,EAAU55F,EAAIwoF,EACdqR,EAAU,GAERP,EAAMe,UAAYj4B,EAAKgiB,eACzB1sD,EAAQk+E,QAAQpzG,KAAKk1B,EAAQ13B,EAAI45F,GAC7Bf,GACFnhE,EAAQm+E,QAAQrzG,MAAMk1B,EAAQ9xB,EAAIi0F,GAEpCniE,EAAQo+E,MAAMh+F,aAAesuE,GAG/BpmF,GADkB64F,EAAWl2D,EAAQq2D,EAAoBvB,EAAUG,EAAgBj1D,EAAQq2D,EAAoBvB,EAAUG,CAE3H,CACAlgE,EAAQo+E,MAAMC,eAAe,KAAM,IAAKr+E,EAAQk+E,QAAQ/sG,IAAIorG,GAAI5mG,KAAK,MACjEwrF,EACFnhE,EAAQo+E,MAAMC,eAAe,KAAM,IAAKr+E,EAAQm+E,QAAQhtG,IAAIorG,GAAI5mG,KAAK,MAErEqqB,EAAQo+E,MAAMC,eAAe,KAAM,IAAK9B,GAAIv8E,EAAQ9xB,IAElDizF,EACFnhE,EAAQ9xB,GAAK5F,EAEb03B,EAAQ13B,GAAKA,EAAIipF,EAEnBvxD,EAAQo+E,MAAMC,eAAe,KAAM,cAAer+E,EAAQ6tD,YAC1D7tD,EAAQo+E,MAAMC,eAAe,KAAM,YAAa,GAAG9B,EAAGv8E,EAAQ6wD,eAC1D7wD,EAAQw+E,YAActE,GACxBl6E,EAAQo+E,MAAMC,eAAe,KAAM,aAAcr+E,EAAQw+E,WAEvDx+E,EAAQsuD,aAAe4rB,GACzBl6E,EAAQo+E,MAAMC,eAAe,KAAM,cAAer+E,EAAQsuD,YAE5D,MAAMsS,EAAiB5gE,EAAQwxD,kBAAoBh8B,EAAMxY,kBAAkB0I,iBAa3E,GAZIk7C,IAAmBprC,EAAMxY,kBAAkBkI,MAAQ07C,IAAmBprC,EAAMxY,kBAAkBoI,aAC5FplB,EAAQ0xD,YAAcwoB,GACxBl6E,EAAQo+E,MAAMC,eAAe,KAAM,OAAQr+E,EAAQ0xD,WAEjD1xD,EAAQ6xD,UAAY,GACtB7xD,EAAQo+E,MAAMC,eAAe,KAAM,eAAgBr+E,EAAQ6xD,YAEpD7xD,EAAQwxD,oBAAsBh8B,EAAMxY,kBAAkByI,YAC/DzlB,EAAQo+E,MAAMC,eAAe,KAAM,OAAQ,eAE3Cr+E,EAAQo+E,MAAMC,eAAe,KAAM,OAAQ,QAEzCzd,IAAmBprC,EAAMxY,kBAAkBmI,QAAUy7C,IAAmBprC,EAAMxY,kBAAkBoI,YAAa,CAC/G,MAAMq5D,EAAiB,GAAKz+E,EAAQgxD,iBAAmB,GACvD9nF,KAAKw1G,qBAAqB1+E,EAAQo+E,MAAOK,EAC3C,CACA,IAAI1tB,EAAa/wD,EAAQ+wD,WACA,IAArB/wD,EAAQyxD,WACVV,EAAaA,EAAW56E,QACxB46E,EAAW,IAAM/wD,EAAQyxD,UAE3BzxD,EAAQs+E,WAAWD,eAAe,KAAM,YAAa,GAAG7B,EAAGzrB,YAAqBwrB,EAAGhrB,WACnFvxD,EAAQs+E,WAAWD,eAlqBR,uCAkqB+B,YAAa,YACvDr+E,EAAQs+E,WAAWzpF,OAAOmL,EAAQo+E,OAClCp+E,EAAQu+E,OAAO1pF,OAAOmL,EAAQs+E,YAC9Bp1G,KAAKy1G,wBAAwB9pF,OAAOmL,EAAQs+E,WAC9C,CACA,kBAAAjxD,CAAmB/kD,EAAG4F,GACpBhF,KAAK8jD,YAAY9+C,GACjBhF,KAAKkkD,SAAS9kD,EAAG4F,EACnB,CACA,YAAA0wG,CAAa3e,GACX,IAAKA,EAAQnyE,KACX,MAAM,IAAInZ,MAAM,qGAEbzL,KAAKi0G,WACRj0G,KAAKi0G,SAAWj0G,KAAK2zG,WAAWh8F,cAAc,aAC9C3X,KAAKi0G,SAASkB,eAAe,KAAM,OAAQ,YAC3Cn1G,KAAK21G,KAAKhqF,OAAO3rB,KAAKi0G,WAExB,MAAM/mG,EAAMqwD,EAAgBw5B,EAAQnyE,KAAMmyE,EAAQzR,SAAUtlF,KAAKkxG,iBACjElxG,KAAKi0G,SAAS/8F,aAAe,8BAA8B6/E,EAAQ7T,yBAA8Bh2E,SACnG,CACA,OAAA62C,CAAQnvC,GACN,MAAMkiB,EAAU92B,KAAK82B,QACfigE,EAAU/2F,KAAKy2D,WAAWh2D,IAAImU,EAAQ,IAC5C,IAAImY,EAAOnY,EAAQ,GACnBkiB,EAAQ0qC,KAAOu1B,GACX/2F,KAAK+zG,YAAehd,EAAQvT,aAAgBxjF,KAAKg0G,cAAcjd,EAAQ7T,cACzEljF,KAAK01G,aAAa3e,GAClB/2F,KAAKg0G,cAAcjd,EAAQ7T,YAAc6T,GAE3CjgE,EAAQixD,WAAagP,EAAQhP,YAAcz7B,EAAMvX,qBACjD,IAAIqiD,EAAO,SACPL,EAAQtL,MACV2L,EAAO,MACEL,EAAQK,OACjBA,EAAO,QAET,MAAMC,EAASN,EAAQM,OAAS,SAAW,SACvCtqE,EAAO,GACTA,GAAQA,EACR+J,EAAQkgE,eAAiB,GAEzBlgE,EAAQkgE,cAAgB,EAE1BlgE,EAAQ6wD,SAAW56D,EACnB+J,EAAQ6tD,WAAaoS,EAAQ7T,WAC7BpsD,EAAQsuD,WAAagS,EACrBtgE,EAAQw+E,UAAYje,EACpBvgE,EAAQo+E,MAAQl1G,KAAK2zG,WAAWh8F,cAAc,aAC9Cmf,EAAQo+E,MAAMC,eAAe,KAAM,IAAK9B,GAAIv8E,EAAQ9xB,IACpD8xB,EAAQk+E,QAAU,GAClBl+E,EAAQm+E,QAAU,EACpB,CACA,OAAAvxD,GACE,MAAM5sB,EAAU92B,KAAK82B,QACjBA,EAAQwxD,kBAAoBh8B,EAAMxY,kBAAkB2I,kBAAoB3lB,EAAQs+E,YAAYQ,kBAC9F9+E,EAAQ1gB,QAAU0gB,EAAQs+E,WAC1Bp1G,KAAKujD,KAAK,WACVvjD,KAAKsjD,UAET,CACA,YAAA1B,CAAa7f,GACPA,EAAQ,IACV/hC,KAAK82B,QAAQ+xD,UAAY9mD,EAE7B,CACA,UAAA8f,CAAWjqC,GACT5X,KAAK82B,QAAQ+1D,QAAUqC,EAAgBt3E,EACzC,CACA,WAAAkqC,CAAYlqC,GACV5X,KAAK82B,QAAQg2D,SAAWqC,EAAiBv3E,EAC3C,CACA,aAAAmqC,CAAc8xC,GACZ7zF,KAAK82B,QAAQi2D,WAAa8G,CAC5B,CACA,cAAAgiB,CAAejtB,GACb5oF,KAAK82B,QAAQ8xD,YAAcA,CAC7B,CACA,iBAAAxjC,CAAkBntB,EAAGh5B,EAAGuf,GACtBxe,KAAK82B,QAAQ2xD,YAAcn8B,EAAMv2C,KAAKwyC,aAAatwB,EAAGh5B,EAAGuf,EAC3D,CACA,YAAAs3F,CAAantB,GACX3oF,KAAK82B,QAAQ6xD,UAAYA,CAC3B,CACA,eAAAtjC,CAAgBptB,EAAGh5B,EAAGuf,GACpBxe,KAAK82B,QAAQ0xD,UAAYl8B,EAAMv2C,KAAKwyC,aAAatwB,EAAGh5B,EAAGuf,GACvDxe,KAAK82B,QAAQo+E,MAAQl1G,KAAK2zG,WAAWh8F,cAAc,aACnD3X,KAAK82B,QAAQk+E,QAAU,GACvBh1G,KAAK82B,QAAQm+E,QAAU,EACzB,CACA,eAAAlwD,CAAgB95C,GACdjL,KAAK82B,QAAQ2xD,YAAczoF,KAAK+1G,oBAAoB9qG,EACtD,CACA,aAAAg6C,CAAch6C,GACZjL,KAAK82B,QAAQ0xD,UAAYxoF,KAAK+1G,oBAAoB9qG,EACpD,CACA,WAAAu6C,CAAYv6C,GACV,MAAM,MACJ82B,EAAK,OACLE,GACEjiC,KAAKk4D,SACH4iC,EAAMxuC,EAAMv2C,KAAKmzC,iBAAiBlpD,KAAK4zG,kBACtC1pD,EAAIC,EAAIC,EAAIC,GAAMiC,EAAMv2C,KAAKgzC,2BAA2B,CAAC,EAAG,EAAGhnB,EAAOE,GAAS64D,GAChFrxC,EAAOzpD,KAAK2zG,WAAWh8F,cAAc,YAC3C8xC,EAAK0rD,eAAe,KAAM,IAAKjrD,GAC/BT,EAAK0rD,eAAe,KAAM,IAAKhrD,GAC/BV,EAAK0rD,eAAe,KAAM,QAAS/qD,EAAKF,GACxCT,EAAK0rD,eAAe,KAAM,SAAU9qD,EAAKF,GACzCV,EAAK0rD,eAAe,KAAM,OAAQn1G,KAAKg2G,oBAAoB/qG,IACvDjL,KAAK82B,QAAQ6xD,UAAY,GAC3Bl/B,EAAK0rD,eAAe,KAAM,eAAgBn1G,KAAK82B,QAAQ6xD,WAEzD3oF,KAAKy1G,wBAAwB9pF,OAAO89B,EACtC,CACA,mBAAAssD,CAAoB9qG,GAClB,MAAgB,kBAAZA,EAAK,GACAjL,KAAKi2G,mBAAmBhrG,GAE1BjL,KAAKg2G,oBAAoB/qG,EAClC,CACA,kBAAAgrG,CAAmBhrG,GACjB,MAAMwpE,EAAQxpE,EAAK,GACb6tD,EAAe7tD,EAAK,GACpB0vF,EAAS1vF,EAAK,IAAMqhD,EAAM1X,iBACzBsV,EAAIC,EAAIC,EAAIC,GAAMp/C,EAAK,GACxBw3F,EAAQx3F,EAAK,GACby3F,EAAQz3F,EAAK,GACb03F,EAAY13F,EAAK,GACjBirG,EAAW,UAAUxC,KACpByC,EAAKC,EAAKC,EAAKC,GAAOhqD,EAAMv2C,KAAKyzC,cAAc,IAAI8C,EAAMv2C,KAAK8yC,eAAe,CAACqB,EAAIC,GAAKwwC,MAAYruC,EAAMv2C,KAAK8yC,eAAe,CAACuB,EAAIC,GAAKswC,MACvI4b,EAAQC,GAAUlqD,EAAMv2C,KAAKozC,8BAA8BwxC,GAC5D8b,EAAShU,EAAQ8T,EACjBG,EAAShU,EAAQ8T,EACjBG,EAAS32G,KAAK2zG,WAAWh8F,cAAc,eAC7Cg/F,EAAOxB,eAAe,KAAM,KAAMe,GAClCS,EAAOxB,eAAe,KAAM,eAAgB,kBAC5CwB,EAAOxB,eAAe,KAAM,QAASsB,GACrCE,EAAOxB,eAAe,KAAM,SAAUuB,GACtCC,EAAOxB,eAAe,KAAM,IAAK,GAAGgB,KACpCQ,EAAOxB,eAAe,KAAM,IAAK,GAAGiB,KACpC,MAAMj4B,EAAMn+E,KAAKm+E,IACXy1B,EAAkB5zG,KAAK4zG,gBACvBprB,EAAYxoF,KAAK82B,QAAQ0xD,UACzBC,EAAczoF,KAAK82B,QAAQ2xD,YAC3BsS,EAAO/6F,KAAK2zG,WAAWzwG,OAAOmzG,EAAMF,EAAKG,EAAMF,GAGrD,GAFAp2G,KAAKm+E,IAAM4c,EACX/6F,KAAK4zG,gBAAkBjZ,EACL,IAAdgI,EAAiB,CACnB,MAAMkB,EAAWv3C,EAAMv2C,KAAKwyC,gBAAgBksB,GAC5Cz0E,KAAK82B,QAAQ0xD,UAAYqb,EACzB7jG,KAAK82B,QAAQ2xD,YAAcob,CAC7B,CAQA,OAPA7jG,KAAKo0G,cAAcp0G,KAAKw0G,cAAc17C,IACtC94D,KAAKm+E,IAAMA,EACXn+E,KAAK4zG,gBAAkBA,EACvB5zG,KAAK82B,QAAQ0xD,UAAYA,EACzBxoF,KAAK82B,QAAQ2xD,YAAcA,EAC3BkuB,EAAOhrF,OAAOovE,EAAK9hF,WAAW,IAC9BjZ,KAAK21G,KAAKhqF,OAAOgrF,GACV,QAAQT,IACjB,CACA,mBAAAF,CAAoB/qG,GAIlB,OAHoB,iBAATA,IACTA,EAAOjL,KAAK02D,KAAKj2D,IAAIwK,IAEfA,EAAK,IACX,IAAK,cACH,MAAM2rG,EAAY,UAAUlD,IACtBmD,EAAa5rG,EAAK,GACxB,IAAI6rG,EACJ,OAAQ7rG,EAAK,IACX,IAAK,QACH,MAAM8rG,EAAS9rG,EAAK,GACd+rG,EAAS/rG,EAAK,GACpB6rG,EAAW92G,KAAK2zG,WAAWh8F,cAAc,sBACzCm/F,EAAS3B,eAAe,KAAM,KAAMyB,GACpCE,EAAS3B,eAAe,KAAM,gBAAiB,kBAC/C2B,EAAS3B,eAAe,KAAM,KAAM4B,EAAO,IAC3CD,EAAS3B,eAAe,KAAM,KAAM4B,EAAO,IAC3CD,EAAS3B,eAAe,KAAM,KAAM6B,EAAO,IAC3CF,EAAS3B,eAAe,KAAM,KAAM6B,EAAO,IAC3C,MACF,IAAK,SACH,MAAMC,EAAahsG,EAAK,GAClBisG,EAAcjsG,EAAK,GACnBksG,EAAclsG,EAAK,GACnBmsG,EAAensG,EAAK,GAC1B6rG,EAAW92G,KAAK2zG,WAAWh8F,cAAc,sBACzCm/F,EAAS3B,eAAe,KAAM,KAAMyB,GACpCE,EAAS3B,eAAe,KAAM,gBAAiB,kBAC/C2B,EAAS3B,eAAe,KAAM,KAAM+B,EAAY,IAChDJ,EAAS3B,eAAe,KAAM,KAAM+B,EAAY,IAChDJ,EAAS3B,eAAe,KAAM,IAAKiC,GACnCN,EAAS3B,eAAe,KAAM,KAAM8B,EAAW,IAC/CH,EAAS3B,eAAe,KAAM,KAAM8B,EAAW,IAC/CH,EAAS3B,eAAe,KAAM,KAAMgC,GACpC,MACF,QACE,MAAM,IAAI1rG,MAAM,6BAA6BR,EAAK,MAEtD,UAAWi0F,KAAa2X,EAAY,CAClC,MAAMj0F,EAAO5iB,KAAK2zG,WAAWh8F,cAAc,YAC3CiL,EAAKuyF,eAAe,KAAM,SAAUjW,EAAU,IAC9Ct8E,EAAKuyF,eAAe,KAAM,aAAcjW,EAAU,IAClD4X,EAASnrF,OAAO/I,EAClB,CAEA,OADA5iB,KAAK21G,KAAKhqF,OAAOmrF,GACV,QAAQF,KACjB,IAAK,OAEH,OADA,EAAItqD,EAAMhhD,MAAM,8BACT,KACT,IAAK,QACH,MAAO,UACT,QACE,MAAM,IAAIG,MAAM,oBAAoBR,EAAK,MAE/C,CACA,OAAA+2C,CAAQ8xC,EAAWC,GACjB/zF,KAAK82B,QAAQg9D,UAAYA,EACzB9zF,KAAK82B,QAAQi9D,UAAYA,CAC3B,CACA,aAAA7sC,CAAc5hD,EAAK2F,GACjB,MAAM6rB,EAAU92B,KAAK82B,QACrB,IAAI13B,EAAI03B,EAAQ13B,EACd4F,EAAI8xB,EAAQ9xB,EACVzE,EAAI,GACJspB,EAAI,EACR,UAAWnkB,KAAMJ,EACf,OAAa,EAALI,GACN,KAAK4mD,EAAMjY,IAAIwO,UACbzjD,EAAI6L,EAAK4e,KACT7kB,EAAIiG,EAAK4e,KACT,MAEMwsE,EAAKj3F,EAFG6L,EAAK4e,KAGbysE,EAAKtxF,EAFIiG,EAAK4e,KAGpBtpB,EAAEqB,KAAK,IAAKyxG,EAAGj0G,GAAIi0G,EAAGruG,GAAI,IAAKquG,EAAGhd,GAAKgd,EAAGruG,GAAI,IAAKquG,EAAGhd,GAAKgd,EAAG/c,GAAK,IAAK+c,EAAGj0G,GAAIi0G,EAAG/c,GAAK,KACvF,MACF,KAAKhqC,EAAMjY,IAAIkO,OACbnjD,EAAI6L,EAAK4e,KACT7kB,EAAIiG,EAAK4e,KACTtpB,EAAEqB,KAAK,IAAKyxG,EAAGj0G,GAAIi0G,EAAGruG,IACtB,MACF,KAAKsnD,EAAMjY,IAAImO,OACbpjD,EAAI6L,EAAK4e,KACT7kB,EAAIiG,EAAK4e,KACTtpB,EAAEqB,KAAK,IAAKyxG,EAAGj0G,GAAIi0G,EAAGruG,IACtB,MACF,KAAKsnD,EAAMjY,IAAIoO,QACbrjD,EAAI6L,EAAK4e,EAAI,GACb7kB,EAAIiG,EAAK4e,EAAI,GACbtpB,EAAEqB,KAAK,IAAKyxG,EAAGpoG,EAAK4e,IAAKwpF,EAAGpoG,EAAK4e,EAAI,IAAKwpF,EAAGpoG,EAAK4e,EAAI,IAAKwpF,EAAGpoG,EAAK4e,EAAI,IAAKwpF,EAAGj0G,GAAIi0G,EAAGruG,IACtF6kB,GAAK,EACL,MACF,KAAKyiC,EAAMjY,IAAIqO,SACbniD,EAAEqB,KAAK,IAAKyxG,EAAGj0G,GAAIi0G,EAAGruG,GAAIquG,EAAGpoG,EAAK4e,IAAKwpF,EAAGpoG,EAAK4e,EAAI,IAAKwpF,EAAGpoG,EAAK4e,EAAI,IAAKwpF,EAAGpoG,EAAK4e,EAAI,KACrFzqB,EAAI6L,EAAK4e,EAAI,GACb7kB,EAAIiG,EAAK4e,EAAI,GACbA,GAAK,EACL,MACF,KAAKyiC,EAAMjY,IAAIsO,SACbvjD,EAAI6L,EAAK4e,EAAI,GACb7kB,EAAIiG,EAAK4e,EAAI,GACbtpB,EAAEqB,KAAK,IAAKyxG,EAAGpoG,EAAK4e,IAAKwpF,EAAGpoG,EAAK4e,EAAI,IAAKwpF,EAAGj0G,GAAIi0G,EAAGruG,GAAIquG,EAAGj0G,GAAIi0G,EAAGruG,IAClE6kB,GAAK,EACL,MACF,KAAKyiC,EAAMjY,IAAIuO,UACbriD,EAAEqB,KAAK,KAIbrB,EAAIA,EAAEkM,KAAK,KACPqqB,EAAQ9qB,MAAQ1G,EAAIO,OAAS,GAAKP,EAAI,KAAOgnD,EAAMjY,IAAIwO,WAAav9C,EAAI,KAAOgnD,EAAMjY,IAAIkO,OAC3FhiD,EAAIu2B,EAAQ9qB,KAAKqrG,eAAe,KAAM,KAAO92G,GAE7Cu2B,EAAQ9qB,KAAOhM,KAAK2zG,WAAWh8F,cAAc,YAC7C3X,KAAKy1G,wBAAwB9pF,OAAOmL,EAAQ9qB,OAE9C8qB,EAAQ9qB,KAAKmpG,eAAe,KAAM,IAAK50G,GACvCu2B,EAAQ9qB,KAAKmpG,eAAe,KAAM,OAAQ,QAC1Cr+E,EAAQ1gB,QAAU0gB,EAAQ9qB,KAC1B8qB,EAAQoyD,gBAAgB9pF,EAAG4F,EAC7B,CACA,OAAAs+C,GACE,MAAMxsB,EAAU92B,KAAK82B,QAErB,GADAA,EAAQ9qB,KAAO,MACVhM,KAAK8vF,YACR,OAEF,IAAKh5D,EAAQ1gB,QAEX,YADApW,KAAK8vF,YAAc,MAGrB,MAAMwnB,EAAS,WAAW9D,IACpB+D,EAAWv3G,KAAK2zG,WAAWh8F,cAAc,gBAC/C4/F,EAASpC,eAAe,KAAM,KAAMmC,GACpCC,EAASpC,eAAe,KAAM,YAAa7B,EAAGtzG,KAAK4zG,kBACnD,MAAM4D,EAAc1gF,EAAQ1gB,QAAQqhG,WAAU,GAS9C,GARyB,YAArBz3G,KAAK8vF,YACP0nB,EAAYrC,eAAe,KAAM,YAAa,WAE9CqC,EAAYrC,eAAe,KAAM,YAAa,WAEhDn1G,KAAK8vF,YAAc,KACnBynB,EAAS5rF,OAAO6rF,GAChBx3G,KAAK21G,KAAKhqF,OAAO4rF,GACbzgF,EAAQo8E,cAAe,CACzBp8E,EAAQq8E,UAAY,KACpB,UAAWn1B,KAAQh+E,KAAK8zG,WACtB91B,EAAKm1B,UAAY,KAEnBoE,EAASpC,eAAe,KAAM,YAAar+E,EAAQo8E,cACrD,CACAp8E,EAAQo8E,cAAgB,QAAQoE,KAChCt3G,KAAKm0G,KAAO,IACd,CACA,IAAA5wD,CAAKx2C,GACH/M,KAAK8vF,YAAc/iF,CACrB,CACA,SAAA61C,GACE,MAAM9rB,EAAU92B,KAAK82B,QACrB,GAAIA,EAAQ9qB,KAAM,CAChB,MAAMzL,EAAI,GAAGu2B,EAAQ9qB,KAAKqrG,eAAe,KAAM,QAC/CvgF,EAAQ9qB,KAAKmpG,eAAe,KAAM,IAAK50G,EACzC,CACF,CACA,UAAAujD,CAAWkkC,GACThoF,KAAK82B,QAAQkxD,SAAWA,CAC1B,CACA,WAAA/jC,CAAYskC,GACVvoF,KAAK82B,QAAQyxD,SAAWA,CAC1B,CACA,oBAAAvkC,CAAqBskC,GACnBtoF,KAAK82B,QAAQwxD,kBAAoBA,CACnC,CACA,SAAAzkC,CAAUqT,GACRl3D,KAAK82B,QAAQuxD,WAAanxB,EAAQ,GACpC,CACA,kBAAAjV,CAAmByV,GAAS,CAC5B,WAAAxV,CAAY8xC,GAAW,CACvB,SAAA7xC,CAAU38B,GACR,UAAY1Y,EAAK3M,KAAUqlB,EACzB,OAAQ1Y,GACN,IAAK,KACH9M,KAAK4hD,aAAazhD,GAClB,MACF,IAAK,KACHH,KAAK6hD,WAAW1hD,GAChB,MACF,IAAK,KACHH,KAAK8hD,YAAY3hD,GACjB,MACF,IAAK,KACHH,KAAK+hD,cAAc5hD,GACnB,MACF,IAAK,IACHH,KAAKgiD,QAAQ7hD,EAAM,GAAIA,EAAM,IAC7B,MACF,IAAK,KACHH,KAAKiiD,mBAAmB9hD,GACxB,MACF,IAAK,KACHH,KAAKkiD,YAAY/hD,GACjB,MACF,IAAK,OACHH,KAAK+jD,QAAQ5jD,GACb,MACF,IAAK,KACHH,KAAK61G,eAAe11G,GACpB,MACF,IAAK,KACHH,KAAK81G,aAAa31G,GAClB,MACF,SACE,EAAImsD,EAAMhhD,MAAM,wCAAwCwB,KAIhE,CACA,IAAAk2C,GACE,MAAMlsB,EAAU92B,KAAK82B,QACjBA,EAAQ1gB,UACV0gB,EAAQ1gB,QAAQ++F,eAAe,KAAM,OAAQr+E,EAAQ0xD,WACrD1xD,EAAQ1gB,QAAQ++F,eAAe,KAAM,eAAgBr+E,EAAQ6xD,WAC7D3oF,KAAKsjD,UAET,CACA,MAAAR,GACE,MAAMhsB,EAAU92B,KAAK82B,QACjBA,EAAQ1gB,UACVpW,KAAKw1G,qBAAqB1+E,EAAQ1gB,SAClC0gB,EAAQ1gB,QAAQ++F,eAAe,KAAM,OAAQ,QAC7Cn1G,KAAKsjD,UAET,CACA,oBAAAkyD,CAAqBp/F,EAASm/F,EAAiB,GAC7C,MAAMz+E,EAAU92B,KAAK82B,QACrB,IAAIg9D,EAAYh9D,EAAQg9D,UACD,IAAnByhB,GAAwBzhB,EAAUjuF,OAAS,IAC7CiuF,EAAYA,EAAU7rF,KAAI,SAAU9H,GAClC,OAAOo1G,EAAiBp1G,CAC1B,KAEFiW,EAAQ++F,eAAe,KAAM,SAAUr+E,EAAQ2xD,aAC/CryE,EAAQ++F,eAAe,KAAM,iBAAkBr+E,EAAQ8xD,aACvDxyE,EAAQ++F,eAAe,KAAM,oBAAqB9B,EAAGv8E,EAAQi2D,aAC7D32E,EAAQ++F,eAAe,KAAM,iBAAkBr+E,EAAQ+1D,SACvDz2E,EAAQ++F,eAAe,KAAM,kBAAmBr+E,EAAQg2D,UACxD12E,EAAQ++F,eAAe,KAAM,eAAgB9B,EAAGkC,EAAiBz+E,EAAQ+xD,WAAa,MACtFzyE,EAAQ++F,eAAe,KAAM,mBAAoBrhB,EAAU7rF,IAAIorG,GAAI5mG,KAAK,MACxE2J,EAAQ++F,eAAe,KAAM,oBAAqB9B,EAAGkC,EAAiBz+E,EAAQi9D,WAAa,KAC7F,CACA,MAAA9wC,GACEjjD,KAAK82B,QAAQ1gB,SAAS++F,eAAe,KAAM,YAAa,WACxDn1G,KAAKgjD,MACP,CACA,UAAAE,GACEljD,KAAK8iD,SACL9iD,KAAKgjD,MACP,CACA,YAAAG,GACEnjD,KAAK82B,QAAQ1gB,SAAS++F,eAAe,KAAM,YAAa,WACxDn1G,KAAKkjD,YACP,CACA,WAAAH,GACE/iD,KAAK4iD,YACL5iD,KAAK8iD,QACP,CACA,eAAAM,GACEpjD,KAAK4iD,YACL5iD,KAAKkjD,YACP,CACA,iBAAAG,GACErjD,KAAK4iD,YACL5iD,KAAKmjD,cACP,CACA,wBAAA8D,GACE,MAAMwC,EAAOzpD,KAAK2zG,WAAWh8F,cAAc,YAC3C8xC,EAAK0rD,eAAe,KAAM,IAAK,KAC/B1rD,EAAK0rD,eAAe,KAAM,IAAK,KAC/B1rD,EAAK0rD,eAAe,KAAM,QAAS,OACnC1rD,EAAK0rD,eAAe,KAAM,SAAU,OACpC1rD,EAAK0rD,eAAe,KAAM,OAAQn1G,KAAK82B,QAAQ0xD,WAC/CxoF,KAAKy1G,wBAAwB9pF,OAAO89B,EACtC,CACA,iBAAA7C,CAAkBub,GAChB,MAAMmoB,EAAUtqF,KAAKuhC,UAAU4gC,GAC1BmoB,EAILtqF,KAAK6mD,wBAAwByjC,IAH3B,EAAIh+B,EAAMhhD,MAAM,kCAAkC62D,qBAItD,CACA,uBAAAtb,CAAwByjC,EAASuB,GAC/B,MAAM9pD,EAAQuoD,EAAQvoD,MAChBE,EAASqoD,EAAQroD,OACjBy1E,EAASnG,EAAoBjnB,EAAStqF,KAAKkxG,kBAAmBrlB,GAC9D8rB,EAAW33G,KAAK2zG,WAAWh8F,cAAc,YAC/CggG,EAASxC,eAAe,KAAM,IAAK,KACnCwC,EAASxC,eAAe,KAAM,IAAK,KACnCwC,EAASxC,eAAe,KAAM,QAAS9B,EAAGtxE,IAC1C41E,EAASxC,eAAe,KAAM,SAAU9B,EAAGpxE,IAC3CjiC,KAAK82B,QAAQ1gB,QAAUuhG,EACvB33G,KAAKujD,KAAK,WACV,MAAMq0D,EAAQ53G,KAAK2zG,WAAWh8F,cAAc,aAC5CigG,EAAMzC,eAlnCO,+BAknCkB,aAAcuC,GAC7CE,EAAMzC,eAAe,KAAM,IAAK,KAChCyC,EAAMzC,eAAe,KAAM,IAAK9B,GAAIpxE,IACpC21E,EAAMzC,eAAe,KAAM,QAAS9B,EAAGtxE,GAAS,MAChD61E,EAAMzC,eAAe,KAAM,SAAU9B,EAAGpxE,GAAU,MAClD21E,EAAMzC,eAAe,KAAM,YAAa,SAAS9B,EAAG,EAAItxE,MAAUsxE,GAAI,EAAIpxE,OACtE4pD,EACFA,EAAKlgE,OAAOisF,GAEZ53G,KAAKy1G,wBAAwB9pF,OAAOisF,EAExC,CACA,qBAAAlxD,CAAsBwrC,GACpB,MAAM5H,EAAUtqF,KAAKuhC,UAAU2wD,EAAIttE,KAAMstE,GACzC,GAAI5H,EAAQxoB,OAEV,YADA,EAAIxV,EAAMhhD,MAAM,0IAGlB,MAAMwrB,EAAU92B,KAAK82B,QACfiL,EAAQuoD,EAAQvoD,MAChBE,EAASqoD,EAAQroD,OACjBumD,EAAY1xD,EAAQ0xD,UAC1B1xD,EAAQs8E,OAAS,OAAOK,IACxB,MAAM5nB,EAAO7rF,KAAK2zG,WAAWh8F,cAAc,YAC3Ck0E,EAAKspB,eAAe,KAAM,KAAMr+E,EAAQs8E,QACxC,MAAM3pD,EAAOzpD,KAAK2zG,WAAWh8F,cAAc,YAC3C8xC,EAAK0rD,eAAe,KAAM,IAAK,KAC/B1rD,EAAK0rD,eAAe,KAAM,IAAK,KAC/B1rD,EAAK0rD,eAAe,KAAM,QAAS9B,EAAGtxE,IACtC0nB,EAAK0rD,eAAe,KAAM,SAAU9B,EAAGpxE,IACvCwnB,EAAK0rD,eAAe,KAAM,OAAQ3sB,GAClC/+B,EAAK0rD,eAAe,KAAM,OAAQ,QAAQr+E,EAAQs8E,WAClDpzG,KAAK21G,KAAKhqF,OAAOkgE,GACjB7rF,KAAKy1G,wBAAwB9pF,OAAO89B,GACpCzpD,KAAK6mD,wBAAwByjC,EAASuB,EACxC,CACA,qBAAAzlC,CAAsBu0C,EAAQI,GAI5B,GAHIpwF,MAAMC,QAAQ+vF,IAA6B,IAAlBA,EAAO90F,QAClC7F,KAAKsiD,UAAUq4C,EAAO,GAAIA,EAAO,GAAIA,EAAO,GAAIA,EAAO,GAAIA,EAAO,GAAIA,EAAO,IAE3EI,EAAM,CACR,MAAMh5D,EAAQg5D,EAAK,GAAKA,EAAK,GACvB94D,EAAS84D,EAAK,GAAKA,EAAK,GACxB4c,EAAW33G,KAAK2zG,WAAWh8F,cAAc,YAC/CggG,EAASxC,eAAe,KAAM,IAAKpa,EAAK,IACxC4c,EAASxC,eAAe,KAAM,IAAKpa,EAAK,IACxC4c,EAASxC,eAAe,KAAM,QAAS9B,EAAGtxE,IAC1C41E,EAASxC,eAAe,KAAM,SAAU9B,EAAGpxE,IAC3CjiC,KAAK82B,QAAQ1gB,QAAUuhG,EACvB33G,KAAKujD,KAAK,WACVvjD,KAAKsjD,SACP,CACF,CACA,mBAAA+C,GAAuB,CACvB,WAAAyX,CAAY5F,GACV,MAAMimB,EAAMn+E,KAAK2zG,WAAWzwG,OAAOg1D,EAASn2B,MAAOm2B,EAASj2B,QACtD41E,EAAc73G,KAAK2zG,WAAWh8F,cAAc,YAClDwmE,EAAIxyD,OAAOksF,GACX73G,KAAK21G,KAAOkC,EACZ,MAAMC,EAAY93G,KAAK2zG,WAAWh8F,cAAc,SAIhD,OAHAmgG,EAAU3C,eAAe,KAAM,YAAa7B,EAAGp7C,EAAS5V,YACxD67B,EAAIxyD,OAAOmsF,GACX93G,KAAKm+E,IAAM25B,EACJ35B,CACT,CACA,gBAAA45B,GACE,IAAK/3G,KAAK82B,QAAQq8E,UAAW,CAC3B,MAAMA,EAAYnzG,KAAK2zG,WAAWh8F,cAAc,SAChDw7F,EAAUgC,eAAe,KAAM,YAAan1G,KAAK82B,QAAQo8E,eACzDlzG,KAAKm+E,IAAIxyD,OAAOwnF,GAChBnzG,KAAK82B,QAAQq8E,UAAYA,CAC3B,CACA,OAAOnzG,KAAK82B,QAAQq8E,SACtB,CACA,qBAAAsC,GAUE,OATKz1G,KAAKm0G,OACRn0G,KAAKm0G,KAAOn0G,KAAK2zG,WAAWh8F,cAAc,SAC1C3X,KAAKm0G,KAAKgB,eAAe,KAAM,YAAa7B,EAAGtzG,KAAK4zG,kBAChD5zG,KAAK82B,QAAQo8E,cACflzG,KAAK+3G,mBAAmBpsF,OAAO3rB,KAAKm0G,MAEpCn0G,KAAKm+E,IAAIxyD,OAAO3rB,KAAKm0G,OAGlBn0G,KAAKm0G,IACd,EAE+B,EAI1B,CAACzgE,EAAyB70C,KAIjCS,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQg8D,aAAU,EAClB,MAAMA,EACJ,kBAAO3jD,CAAY0jD,GACjB,MAAMF,EAAQ,GACRk4C,EAAS,CACbl4C,QACAO,OAAQ37D,OAAO4D,OAAO,OA8BxB,OA5BA,SAAS80G,EAAK7+F,GACZ,IAAKA,EACH,OAEF,IAAI6Q,EAAM,KACV,MAAM7gB,EAAOgQ,EAAKhQ,KAClB,GAAa,UAATA,EACF6gB,EAAM7Q,EAAKhZ,UACN,KAAK06D,EAAQo9C,gBAAgB9uG,GAClC,OACSgQ,GAAMsV,YAAYvX,YAC3B8S,EAAM7Q,EAAKsV,WAAWvX,YACbiC,EAAKhZ,QACd6pB,EAAM7Q,EAAKhZ,MACb,CAMA,GALY,OAAR6pB,GACF0wC,EAAM94D,KAAK,CACTooB,QAGC7Q,EAAKugB,SAGV,UAAWiK,KAASxqB,EAAKugB,SACvBs+E,EAAKr0E,EAET,CACAq0E,CAAKp9C,GACEg4C,CACT,CACA,sBAAOqF,CAAgB9uG,GACrB,QAAkB,aAATA,GAAgC,UAATA,GAA6B,WAATA,GAA8B,WAATA,EAC3E,EAEFtK,EAAQg8D,QAAUA,CAAO,EAIlB,CAACnnB,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQq5G,yBAAsB,EAC9Br5G,EAAQs5G,gBA4TR,SAAyB9jG,GAClBA,EAAO+jG,oBAAsB/jG,EAAO6C,cAAe7C,EAAOgkG,qBAC7D,EAAI7rD,EAAemH,YAAY,2IAC/Bt/C,EAAO+jG,kBAAoB/jG,EAAO6C,aAAe7C,EAAOgkG,mBAE1D,MAAM,UACJx0E,EAAS,SACTq0B,GACE7jD,EACEuD,EAAQkqB,iBAAiB+B,GACzB02C,EAAa3iE,EAAMiwD,iBAAiB,cACpCywC,EAAc1wC,WAAWhwD,EAAMiwD,iBAAiB,mBACnC,YAAf0S,KAA8B+9B,GAAe70F,KAAKunC,IAAIstD,EAAcpgD,EAAShB,OAAS,OACxFnvD,QAAQiC,MAAM,2JAEhB,MAAMgkD,EAAO,IAAIkqD,EAAoB7jG,GAErC,OADA25C,EAAKuqD,UACEvqD,CACT,EA7UAnvD,EAAQ25G,gBA8UR,UAAyB,UACvB30E,EAAS,SACTq0B,EAAQ,SACRugD,EAAQ,kBACRC,EAAiB,2BACjB5wD,EAA0B,WAC1B6zB,GAAa,EAAI,YACjBg9B,GAAc,IAOd,GALIh9B,IACF,EAAInvB,EAAeivB,oBAAoB53C,EAAW,CAChDszB,SAAUe,EAASf,WAGnBwhD,EAAa,CACf,MAAMx/E,EAAMy/E,EAAO,EAAG9wD,GAEhBzzC,EAAS,CACbwkG,aAAc,KACdC,eAAgB,KAChBl4E,IAAK,KACLs2B,MALYgB,EAAShB,OAASn4D,WAAWkwF,kBAAoB,GAM7DxoE,WAAY,KACZ0S,OAEF,UAAWyH,KAAO63E,EAChBpkG,EAAOoS,WAAaiyF,EAAkBj4G,IAAImgC,GAC1CvsB,EAAOusB,IAAMA,EACbm4E,EAAO1kG,EAEX,CACF,EA5WA,IAAIi4C,EAAQf,EAAoB,GAC5BiB,EAAiBjB,EAAoB,GACzC,MACMytD,EAAoB,GACpBC,EAAsB,GACtBC,EAAc,IAAI5gE,IACxB,SAASsgE,EAAO7rF,EAAM+6B,GACpB,IAAI3uB,EACJ,GAAI2uB,GAA8BwE,EAAMxX,YAAYgT,2BAClD3uB,EAAM,IAAI4uB,gBAAgBh7B,EAAMA,GAAMmlD,WAAW,KAAM,CACrDmb,OAAO,QAEJ,CACL,MAAMhrB,EAAS5qD,SAASE,cAAc,UACtC0qD,EAAOtgC,MAAQsgC,EAAOpgC,OAASlV,EAC/BoM,EAAMkpC,EAAO6P,WAAW,KAAM,CAC5Bmb,OAAO,GAEX,CACA,OAAOl0D,CACT,CA+CA,SAASggF,EAAWnrD,EAAMorD,EAAMn+C,GAC9B,MAAMo+C,EAAU5hG,SAASE,cAAc,QACjC+gG,EAAoB,CACxBzqC,MAAO,EACP0tB,YAAa,EACb2d,QAAsB,KAAbF,EAAKpvF,IACduvF,OAAQH,EAAKG,OACb5xB,SAAU,GAEZ35B,EAAKwrD,UAAU53G,KAAKy3G,GACpB,MAAM7vC,EAAKld,EAAMv2C,KAAKusC,UAAU0L,EAAKyrD,WAAYL,EAAK92D,WACtD,IAAI2rB,EAAQxqD,KAAKi2F,MAAMlwC,EAAG,GAAIA,EAAG,IACjC,MAAM5xD,EAAQqjD,EAAOm+C,EAAKO,UACtB/hG,EAAMqgF,WACRhqB,GAASxqD,KAAKo9B,GAAK,GAErB,MAAM+4D,EAAan2F,KAAKktD,MAAMnH,EAAG,GAAIA,EAAG,IAClCqwC,EAAaD,EA/DrB,SAAmBj1B,EAAY78B,GAC7B,MAAMgyD,EAAeZ,EAAYz4G,IAAIkkF,GACrC,GAAIm1B,EACF,OAAOA,EAET,MAAM3gF,EAAMy/E,EAAOI,EAAmBlxD,GACtC3uB,EAAIqoC,KAAO,GAAGw3C,OAAuBr0B,IACrC,MAAMo1B,EAAU5gF,EAAIogE,YAAY,IAChC,IAAIygB,EAASD,EAAQE,sBACjBC,EAAUz2F,KAAKunC,IAAI+uD,EAAQI,wBAC/B,GAAIH,EAAQ,CACV,MAAMI,EAAQJ,GAAUA,EAASE,GAGjC,OAFAhB,EAAYpuF,IAAI65D,EAAYy1B,GAC5BjhF,EAAIkpC,OAAOtgC,MAAQ5I,EAAIkpC,OAAOpgC,OAAS,EAChCm4E,CACT,CACAjhF,EAAIszD,YAAc,MAClBtzD,EAAIu5D,UAAU,EAAG,EAAGsmB,EAAmBA,GACvC7/E,EAAIy+D,WAAW,IAAK,EAAG,GACvB,IAAIyiB,EAASlhF,EAAIm5C,aAAa,EAAG,EAAG0mC,EAAmBA,GAAmBp0F,KAC1Es1F,EAAU,EACV,QAASrxG,EAAIwxG,EAAOx0G,OAAS,EAAI,EAAGgD,GAAK,EAAGA,GAAK,EAC/C,GAAIwxG,EAAOxxG,GAAK,EAAG,CACjBqxG,EAAUz2F,KAAKqJ,KAAKjkB,EAAI,EAAImwG,GAC5B,KACF,CAEF7/E,EAAIu5D,UAAU,EAAG,EAAGsmB,EAAmBA,GACvC7/E,EAAIy+D,WAAW,IAAK,EAAGohB,GACvBqB,EAASlhF,EAAIm5C,aAAa,EAAG,EAAG0mC,EAAmBA,GAAmBp0F,KACtEo1F,EAAS,EACT,QAASnxG,EAAI,EAAGovC,EAAKoiE,EAAOx0G,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAC/C,GAAIwxG,EAAOxxG,GAAK,EAAG,CACjBmxG,EAAShB,EAAoBv1F,KAAKi0B,MAAM7uC,EAAI,EAAImwG,GAChD,KACF,CAGF,GADA7/E,EAAIkpC,OAAOtgC,MAAQ5I,EAAIkpC,OAAOpgC,OAAS,EACnC+3E,EAAQ,CACV,MAAMI,EAAQJ,GAAUA,EAASE,GAEjC,OADAhB,EAAYpuF,IAAI65D,EAAYy1B,GACrBA,CACT,CAEA,OADAlB,EAAYpuF,IAAI65D,EAAYs0B,GACrBA,CACT,CAkBkCqB,CAAU1iG,EAAM+sE,WAAY32B,EAAKusD,6BACjE,IAAI/iF,EAAMgO,EACI,IAAVyoC,GACFz2C,EAAOgyC,EAAG,GACVhkC,EAAMgkC,EAAG,GAAKqwC,IAEdriF,EAAOgyC,EAAG,GAAKqwC,EAAap2F,KAAK+2F,IAAIvsC,GACrCzoC,EAAMgkC,EAAG,GAAKqwC,EAAap2F,KAAKg3F,IAAIxsC,IAEtC,MAAMysC,EAAiB,4BACjBC,EAAWtB,EAAQzhG,MACrBo2C,EAAK4sD,aAAe5sD,EAAK6sD,gBAC3BF,EAASnjF,KAAO,IAAI,IAAMA,EAAOw2B,EAAK8sD,YAAYxwC,QAAQ,MAC1DqwC,EAASn1E,IAAM,IAAI,IAAMA,EAAMwoB,EAAK+sD,aAAazwC,QAAQ,QAEzDqwC,EAASnjF,KAAO,GAAGkjF,IAAiBljF,EAAK8yC,QAAQ,QACjDqwC,EAASn1E,IAAM,GAAGk1E,IAAiBl1E,EAAI8kC,QAAQ,SAEjDqwC,EAAShzB,SAAW,GAAG+yB,IAAiBd,EAAWtvC,QAAQ,QAC3DqwC,EAASh2B,WAAa/sE,EAAM+sE,WAC5B+zB,EAAkB/wB,SAAWiyB,EAC7BP,EAAQ34F,aAAa,OAAQ,gBAC7B24F,EAAQniG,YAAckiG,EAAKpvF,IAC3BqvF,EAAQrxE,IAAMoxE,EAAKpxE,IACfgmB,EAAKgtD,wBACP3B,EAAQlmF,QAAQwmF,SAAWP,EAAKO,UAEpB,IAAV1rC,IACFyqC,EAAkBzqC,MAAQA,GAAS,IAAMxqD,KAAKo9B,KAEhD,IAAIo6D,GAAkB,EACtB,GAAI7B,EAAKpvF,IAAInkB,OAAS,EACpBo1G,GAAkB,OACb,GAAiB,MAAb7B,EAAKpvF,KAAeovF,EAAK92D,UAAU,KAAO82D,EAAK92D,UAAU,GAAI,CACtE,MAAM44D,EAAYz3F,KAAKunC,IAAIouD,EAAK92D,UAAU,IACxC64D,EAAY13F,KAAKunC,IAAIouD,EAAK92D,UAAU,IAClC44D,IAAcC,GAAa13F,KAAK6H,IAAI4vF,EAAWC,GAAa13F,KAAKE,IAAIu3F,EAAWC,GAAa,MAC/FF,GAAkB,EAEtB,CACIA,IACFvC,EAAkB/c,YAAc/jF,EAAMqgF,SAAWmhB,EAAKn3E,OAASm3E,EAAKr3E,OAEtEisB,EAAKotD,mBAAmBtwF,IAAIuuF,EAASX,GACjC1qD,EAAKqtD,mBACPrtD,EAAKstD,YAAYjC,EAErB,CACA,SAASN,EAAO1kG,GACd,MAAM,IACJusB,EAAG,MACHs2B,EAAK,WACLzwC,EAAU,IACV0S,EAAG,aACH0/E,EAAY,eACZC,GACEzkG,GACE,MACJuD,GACEgpB,EACJ,IAAI0hB,EAAY,GAChB,GAA+B,IAA3B77B,EAAWk1E,aAAqBl1E,EAAW6yF,QAAS,CACtD,MAAM,WACJ30B,GACE/sE,GACE,YACJ+jF,EAAW,SACXhU,GACElhE,EACAoyF,IAAiBlxB,GAAYmxB,IAAmBn0B,IAClDxrD,EAAIqoC,KAAO,GAAGmmB,EAAWzwB,OAAWytB,IACpCtwE,EAAOwkG,aAAelxB,EACtBtzE,EAAOykG,eAAiBn0B,GAE1B,MAAM,MACJ5iD,GACE5I,EAAIogE,YAAY34D,EAAI1pB,aACpB6qB,EAAQ,IACVugB,EAAY,UAAUq5C,EAAczkC,EAAQn1B,KAEhD,CACyB,IAArBtb,EAAWwnD,QACb3rB,EAAY,UAAU77B,EAAWwnD,aAAa3rB,KAE5CA,EAAUz8C,OAAS,IACrB+R,EAAM0qC,UAAYA,EAEtB,CAmBA,MAAM41D,EACJ,WAAAv5F,EAAY,kBACVy5F,EAAiB,UACjBv0E,EAAS,SACTq0B,EAAQ,SACRugD,EAAQ,kBACRC,EAAiB,oBACjB6C,EAAmB,2BACnBzzD,IAEA9nD,KAAKw7G,mBAAqBpD,EAC1Bp4G,KAAKq7G,kBAAoBjD,aAA6B3R,eACtDzmG,KAAK46G,WAAa56G,KAAK66G,eAAiBh3E,EACxC7jC,KAAKw5G,UAAYf,GAAY,GAC7Bz4G,KAAKy7G,qBAAuBF,GAAuB,GACnDv7G,KAAKu6G,4BAA8BzyD,EACnC9nD,KAAKg7G,wBAA0Bj8G,WAAWwiE,eAAextD,QACzD/T,KAAK6qG,QAAU,KACf7qG,KAAKo7G,mBAAqB1C,GAAqB,IAAIpnF,QACnDtxB,KAAK07G,WAAY,EACjB17G,KAAKkyD,YAAc,IAAI5F,EAAMtY,kBAC7Bh0C,KAAK27G,kBAAoB,CACvB9C,aAAc,KACdC,eAAgB,KAChBl4E,IAAK,KACLs2B,MAAOgB,EAAShB,OAASn4D,WAAWkwF,kBAAoB,GACxDxoE,WAAY,KACZ0S,IAAKy/E,EAAO,EAAG9wD,IAEjB,MAAM,UACJme,EAAS,WACTC,EAAU,MACVC,EAAK,MACLC,GACElO,EAAS8N,QACbhmE,KAAKy5G,WAAa,CAAC,EAAG,EAAG,GAAI,GAAItzC,EAAOC,EAAQF,GAChDlmE,KAAK86G,WAAa70C,EAClBjmE,KAAK+6G,YAAc70C,GACnB,EAAI1Z,EAAeivB,oBAAoB53C,EAAWq0B,GAClDl4D,KAAKkyD,YAAY7G,QAAQsW,SAAQ,KAC/B3hE,KAAK27G,kBAAoB,IAAI,IAC5BnpG,OAAM,QACX,CACA,WAAI64C,GACF,OAAOrrD,KAAKkyD,YAAY7G,OAC1B,CACA,MAAAoQ,GACEz7D,KAAK07G,WAAY,EACb17G,KAAK6qG,UACP7qG,KAAK6qG,QAAQpvC,OAAO,IAAInP,EAAMvW,eAAe,8BAA8BvjC,OAAM,SACjFxS,KAAK6qG,QAAU,MAEjB7qG,KAAKkyD,YAAY5tD,OAAO,IAAIgoD,EAAMvW,eAAe,6BACnD,CACA,aAAA6lE,CAAclhD,EAAOmhD,GACnB,UAAW3oG,KAAQwnD,EACjB,QAAiB,IAAbxnD,EAAK8W,IAcThqB,KAAKy7G,qBAAqB75G,KAAKsR,EAAK8W,KACpCmvF,EAAWn5G,KAAMkT,EAAM2oG,QAdrB,GAAkB,4BAAd3oG,EAAKnG,MAAoD,uBAAdmG,EAAKnG,KAA+B,CACjF,MAAMo4D,EAASnlE,KAAK46G,WACpB56G,KAAK46G,WAAanjG,SAASE,cAAc,QACzC3X,KAAK46G,WAAW5rE,UAAUpnB,IAAI,iBACd,OAAZ1U,EAAK0C,IACP5V,KAAK46G,WAAWl6F,aAAa,KAAM,GAAGxN,EAAK0C,MAE7CuvD,EAAOx5C,OAAO3rB,KAAK46G,WACrB,KAAyB,qBAAd1nG,EAAKnG,OACd/M,KAAK46G,WAAa56G,KAAK46G,WAAW9jG,WAO1C,CACA,WAAAwkG,CAAYjC,GACV,MAAMX,EAAoB14G,KAAK27G,kBAAkBl1F,WAAazmB,KAAKo7G,mBAAmB36G,IAAI44G,GAM1F,GALAr5G,KAAK27G,kBAAkB/6E,IAAMy4E,EAC7BN,EAAO/4G,KAAK27G,mBACRjD,EAAkBY,SACpBt5G,KAAK46G,WAAWjvF,OAAO0tF,GAErBX,EAAkBa,OAAQ,CAC5B,MAAMuC,EAAKrkG,SAASE,cAAc,MAClCmkG,EAAGp7F,aAAa,OAAQ,gBACxB1gB,KAAK46G,WAAWjvF,OAAOmwF,EACzB,CACF,CACA,OAAAvD,GACE,MAAMh/C,EAAa,IAAIjN,EAAMtY,kBAC7B,IAAI6nE,EAAav8G,OAAO4D,OAAO,MAC/B,GAAIlD,KAAKq7G,kBAAmB,CAC1B,MAAMngD,EAAO,KACXl7D,KAAK6qG,QAAQ1vC,OAAOt2D,MAAK,EACvB1E,QACAyE,WAEIA,EACF20D,EAAWn1D,WAGb9E,OAAO0P,OAAO6sG,EAAY17G,EAAM86D,QAChCj7D,KAAK47G,cAAcz7G,EAAMu6D,MAAOmhD,GAChC3gD,IAAM,GACL3B,EAAWj1D,OAAO,EAEvBtE,KAAK6qG,QAAU7qG,KAAKw7G,mBAAmBxgD,YACvCE,GACF,KAAO,KAAIl7D,KAAKw7G,mBAQd,MAAM,IAAI/vG,MAAM,+CARkB,CAClC,MAAM,MACJivD,EAAK,OACLO,GACEj7D,KAAKw7G,mBACTx7G,KAAK47G,cAAclhD,EAAOO,GAC1B1B,EAAWn1D,SACb,CAEA,CACAm1D,EAAWlO,QAAQxmD,MAAK,KACtBg3G,EAAa,KAxInB,SAAgB7tD,GACd,GAAIA,EAAK0tD,UACP,OAEF,MAAMjD,EAAWzqD,EAAKwrD,UAChBjgD,EAAavL,EAAKkE,YAExB,GADuBumD,EAAS5yG,OAhLF,IAkL5B0zD,EAAWn1D,cADb,CAIA,IAAK4pD,EAAKqtD,kBACR,UAAWhC,KAAWZ,EACpBzqD,EAAKstD,YAAYjC,GAGrB9/C,EAAWn1D,SANX,CAOF,CAwHM4zD,CAAOh4D,KAAK,GACXA,KAAKkyD,YAAY5tD,OACtB,EAEFzF,EAAQq5G,oBAAsBA,CAmD9B,EAIO,CAACxkE,EAAyB70C,EAAS0sD,KA3kZ1C,wCA+kZAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQk9G,2BAAwB,EAChC,IAAIzvD,EAAQf,EAAoB,GAC5ByY,EAAUzY,EAAoB,GAC9BywD,EAAYzwD,EAAoB,IAChC0wD,EAAO1wD,EAAoB,IAC3BiB,EAAiBjB,EAAoB,GACrC2wD,EAAS3wD,EAAoB,IACjC,MAAM,EAAN,MAAM,EAYJ,WAAA5sC,EAAY,UACV+mD,EAAS,UACTxP,EAAS,IACTt1B,EAAG,qBACHu7E,EAAoB,gBACpBC,EAAe,SACflkD,EAAQ,KACRzoB,IAsPF,qBA2CA,qBAeA,qBAmGA,qBAraA,4BACA,qBAAc,GACd,oBAAmB,MACnB,oBAAkBzvC,KAAKq8G,UAAUj6F,KAAKpiB,OACtC,oBAAoBA,KAAKgsE,YAAY5pD,KAAKpiB,OAC1C,oBAAW,IAAIs4C,KACf,qBAAkB,GAClB,qBAAgB,GAChB,qBAAe,GACf,4BAWE,MAAMgkE,EAAc,CAACN,EAAUO,eAAgBN,EAAKO,UAAWN,EAAOO,aACtE,IAAK,EAAsBC,aAAc,CACvC,EAAsBA,cAAe,EACrC,UAAW91C,KAAc01C,EACvB11C,EAAWW,WAAW93B,EAE1B,CACAi2B,EAAU4S,oBAAoBgkC,GAC9B,aAAAt8G,KAAK,EAAa0lE,GAClB1lE,KAAKk2D,UAAYA,EACjBl2D,KAAK4gC,IAAMA,EACX,aAAA5gC,KAAK,EAAwBm8G,GAC7B,aAAAn8G,KAAK,EAAmBo8G,GACxBp8G,KAAKk4D,SAAWA,EAChB,aAAAl4D,KAAK,GAAWy4E,SAASz4E,KAC3B,CACA,WAAIqpE,GACF,OAA8B,IAAvB,aAAArpE,KAAK,GAAS+sB,IACvB,CACA,aAAA8rD,CAAczoC,GACZ,aAAApwC,KAAK,GAAW64E,cAAczoC,EAChC,CACA,UAAAuoC,CAAWvoC,EAAO,aAAApwC,KAAK,GAAWk6E,WAChC,gBAAAl6E,KAAK,KAAL,KAAAA,MACIowC,IAASkc,EAAM5W,qBAAqBsF,KACtCh7C,KAAK28G,sBAAqB,GAC1B38G,KAAKi5E,gBAELj5E,KAAKk5E,cAEH9oC,IAASkc,EAAM5W,qBAAqBmF,OACtC76C,KAAK4gC,IAAIoO,UAAUs5B,OAAO,kBAAmBl4B,IAASkc,EAAM5W,qBAAqBoF,UACjF96C,KAAK4gC,IAAIoO,UAAUs5B,OAAO,aAAcl4B,IAASkc,EAAM5W,qBAAqBsF,KAC5Eh7C,KAAK4gC,IAAIoO,UAAUs5B,OAAO,eAAgBl4B,IAASkc,EAAM5W,qBAAqBqF,OAC9E/6C,KAAK4gC,IAAIuS,QAAS,EAEtB,CACA,oBAAAwpE,CAAqBC,GACnB,GAAKA,GAAgB,aAAA58G,KAAK,GAAWk6E,YAAc5tB,EAAM5W,qBAAqBsF,IAA9E,CAGA,IAAK4hE,EACH,UAAW11C,KAAU,aAAAlnE,KAAK,GAASu7D,SACjC,GAAI2L,EAAOmC,UAET,YADAnC,EAAO0B,kBAKE,gBAAA5oE,KAAK,KAAL,KAAAA,KAA4B,CACzCo3D,QAAS,EACTC,QAAS,IACR,GACIuR,iBAbP,CAcF,CACA,eAAAyP,CAAgBzK,GACd,aAAA5tE,KAAK,GAAWq4E,gBAAgBzK,EAClC,CACA,WAAAlF,CAAYr0D,GACV,aAAArU,KAAK,GAAW0oE,YAAYr0D,EAC9B,CACA,MAAA6d,GACElyB,KAAK4gC,IAAIhpB,MAAMilG,cAAgB,OAC/B,MAAMC,EAAuB,IAAIljD,IACjC,UAAWsN,KAAU,aAAAlnE,KAAK,GAASu7D,SACjC2L,EAAOuG,gBACHvG,EAAOvB,qBACTm3C,EAAqBl1F,IAAIs/C,EAAOvB,qBAGpC,IAAK,aAAA3lE,KAAK,GACR,OAEF,MAAM+8G,EAAY,aAAA/8G,KAAK,GAAiBg9G,yBACxC,UAAWC,KAAYF,EAAW,CAEhC,GADAE,EAASC,OACL,aAAAl9G,KAAK,GAAWu5E,2BAA2B0jC,EAASr4F,KAAKhP,IAC3D,SAEF,GAAIknG,EAAqBl/C,IAAIq/C,EAASr4F,KAAKhP,IACzC,SAEF,MAAMsxD,EAASlnE,KAAKitE,YAAYgwC,GAC3B/1C,IAGLlnE,KAAKi6E,aAAa/S,GAClBA,EAAOuG,gBACT,CACF,CACA,OAAAz7C,GACE,aAAAhyB,KAAK,GAAe,GACpBA,KAAK4gC,IAAIhpB,MAAMilG,cAAgB,OAC/B,MAAMM,EAAsB,IAAIvjD,IAChC,UAAWsN,KAAU,aAAAlnE,KAAK,GAASu7D,SACjC2L,EAAOsG,iBACFtG,EAAOvB,qBAA8C,OAAvBuB,EAAO18D,aAI1CxK,KAAKo9G,sBAAsBl2C,EAAOvB,sBAAsB03C,OACxDn2C,EAAOpgD,UAJLq2F,EAAoBv1F,IAAIs/C,EAAOvB,qBAMnC,GAAI,aAAA3lE,KAAK,GAAkB,CACzB,MAAM+8G,EAAY,aAAA/8G,KAAK,GAAiBg9G,yBACxC,UAAWC,KAAYF,EAAW,CAChC,MAAM,GACJnnG,GACEqnG,EAASr4F,KACTu4F,EAAoBv/C,IAAIhoD,IAAO,aAAA5V,KAAK,GAAWu5E,2BAA2B3jE,IAG9EqnG,EAASI,MACX,CACF,CACA,gBAAAr9G,KAAK,KAAL,KAAAA,MACIA,KAAKqpE,UACPrpE,KAAK4gC,IAAIuS,QAAS,GAEpB,aAAAnzC,KAAK,GAAe,EACtB,CACA,qBAAAo9G,CAAsBxnG,GACpB,OAAO,aAAA5V,KAAK,IAAkBo9G,sBAAsBxnG,IAAO,IAC7D,CACA,eAAAi4D,CAAgB3G,GACQ,aAAAlnE,KAAK,GAAWo4E,cAChBlR,GAGtB,aAAAlnE,KAAK,GAAW6tE,gBAAgB3G,EAClC,CACA,WAAAgS,GACEl5E,KAAK4gC,IAAItlB,iBAAiB,cAAe,aAAAtb,KAAK,IAC9CA,KAAK4gC,IAAItlB,iBAAiB,YAAa,aAAAtb,KAAK,GAC9C,CACA,YAAAi5E,GACEj5E,KAAK4gC,IAAI9d,oBAAoB,cAAe,aAAA9iB,KAAK,IACjDA,KAAK4gC,IAAI9d,oBAAoB,YAAa,aAAA9iB,KAAK,GACjD,CACA,MAAAs9G,CAAOp2C,GACL,aAAAlnE,KAAK,GAAS8qB,IAAIo8C,EAAOtxD,GAAIsxD,GAC7B,MAAM,oBACJvB,GACEuB,EACAvB,GAAuB,aAAA3lE,KAAK,GAAWu5E,2BAA2B5T,IACpE,aAAA3lE,KAAK,GAAWw5E,+BAA+BtS,EAEnD,CACA,MAAAq2C,CAAOr2C,GACL,aAAAlnE,KAAK,GAASqyB,OAAO60C,EAAOtxD,IAC5B,aAAA5V,KAAK,IAAuBw9G,yBAAyBt2C,EAAOyG,aACvD,aAAA3tE,KAAK,IAAgBknE,EAAOvB,qBAC/B,aAAA3lE,KAAK,GAAWs5E,4BAA4BpS,EAEhD,CACA,MAAApgD,CAAOogD,GACLlnE,KAAKu9G,OAAOr2C,GACZ,aAAAlnE,KAAK,GAAWktE,aAAahG,GACzBA,EAAOtmC,IAAI2I,SAAS9xB,SAASk6B,gBAC/Bz3B,YAAW,KACT,aAAAla,KAAK,GAAWi3E,oBAAoB,GACnC,GAEL/P,EAAOtmC,IAAI9Z,SACXogD,EAAOR,iBAAkB,EACpB,aAAA1mE,KAAK,IACRA,KAAK28G,sBAAqB,EAE9B,CACA,YAAAvwC,CAAalF,GACPA,EAAO/B,SAAWnlE,OAGlBknE,EAAOvB,sBACT,aAAA3lE,KAAK,GAAWs5E,4BAA4BpS,EAAOvB,qBACnD3B,EAAQO,iBAAiB0C,wBAAwBC,GACjDA,EAAOvB,oBAAsB,MAE/B3lE,KAAKs9G,OAAOp2C,GACZA,EAAO/B,QAAQo4C,OAAOr2C,GACtBA,EAAO6B,UAAU/oE,MACbknE,EAAOtmC,KAAOsmC,EAAOR,kBACvBQ,EAAOtmC,IAAI9Z,SACX9mB,KAAK4gC,IAAIjV,OAAOu7C,EAAOtmC,MAE3B,CACA,GAAAhZ,CAAIs/C,GAIF,GAHAlnE,KAAKosE,aAAalF,GAClB,aAAAlnE,KAAK,GAAWq5E,UAAUnS,GAC1BlnE,KAAKs9G,OAAOp2C,IACPA,EAAOR,gBAAiB,CAC3B,MAAM9lC,EAAMsmC,EAAOlP,SACnBh4D,KAAK4gC,IAAIjV,OAAOiV,GAChBsmC,EAAOR,iBAAkB,CAC3B,CACAQ,EAAOuB,oBACPvB,EAAOuF,YACP,aAAAzsE,KAAK,GAAWsnE,uBAAuBJ,EACzC,CACA,eAAAgF,CAAgBhF,GACd,IAAKA,EAAOR,gBACV,OAEF,MAAM,cACJ/0B,GACEl6B,SACAyvD,EAAOtmC,IAAI2I,SAASoI,KACtBu1B,EAAO8B,qBAAsB,EAC7B9uD,YAAW,KACJgtD,EAAOtmC,IAAI2I,SAAS9xB,SAASk6B,eAQhCu1B,EAAO8B,qBAAsB,GAP7B9B,EAAOtmC,IAAItlB,iBAAiB,WAAW,KACrC4rD,EAAO8B,qBAAsB,CAAI,GAChC,CACD4O,MAAM,IAERjmC,EAAcxf,QAGhB,GACC,IAEL+0C,EAAOnB,oBAAsB,aAAA/lE,KAAK,IAAuBy9G,iBAAiBz9G,KAAK4gC,IAAKsmC,EAAOtmC,IAAKsmC,EAAOyG,YAAY,EACrH,CACA,YAAAsM,CAAa/S,GACPA,EAAO4F,mBACT5F,EAAO6F,UAEP/sE,KAAK4nB,IAAIs/C,EAEb,CACA,iBAAAw2C,CAAkBx2C,GAKhBlnE,KAAK0oE,YAAY,CACfyG,IALU,IAAMjI,EAAOzB,WAAWsH,QAAQ7F,GAM1CkI,KALW,KACXlI,EAAOpgD,QAAQ,EAKfuoD,UAAU,GAEd,CACA,SAAAhI,GACE,OAAO,aAAArnE,KAAK,GAAWgyE,OACzB,CAYA,WAAA2rC,CAAYvtE,EAAM/7B,GAChB,aAAArU,KAAK,GAAW64E,cAAczoC,GAC9B,aAAApwC,KAAK,GAAW24E,WAAWvoC,GAC3B,MAAM,QACJgnB,EAAO,QACPC,GACE,gBAAAr3D,KAAK,KAAL,KAAAA,MACE4V,EAAK5V,KAAKqnE,YACVH,EAAS,gBAAAlnE,KAAK,KAAL,KAAAA,KAAsB,CACnCmlE,OAAQnlE,KACR4V,KACAxW,EAAGg4D,EACHpyD,EAAGqyD,EACHqO,UAAW,aAAA1lE,KAAK,GAChB8lE,YAAY,KACTzxD,IAED6yD,GACFlnE,KAAK4nB,IAAIs/C,EAEb,CACA,WAAA+F,CAAYroD,GACV,OAAQA,EAAKg5F,gBAAkBh5F,EAAKi5F,sBAClC,KAAKvxD,EAAM5W,qBAAqBoF,SAC9B,OAAOkhE,EAAUO,eAAetvC,YAAYroD,EAAM5kB,KAAM,aAAAA,KAAK,IAC/D,KAAKssD,EAAM5W,qBAAqBsF,IAC9B,OAAOihE,EAAKO,UAAUvvC,YAAYroD,EAAM5kB,KAAM,aAAAA,KAAK,IACrD,KAAKssD,EAAM5W,qBAAqBqF,MAC9B,OAAOmhE,EAAOO,YAAYxvC,YAAYroD,EAAM5kB,KAAM,aAAAA,KAAK,IAE3D,OAAO,IACT,CAmCA,YAAA84E,GACE,gBAAA94E,KAAK,KAAL,KAAAA,KAA4B,gBAAAA,KAAK,KAAL,KAAAA,OAAwB,EACtD,CACA,WAAAipE,CAAY/B,GACV,aAAAlnE,KAAK,GAAWipE,YAAY/B,EAC9B,CACA,cAAAqK,CAAerK,GACb,aAAAlnE,KAAK,GAAWuxE,eAAerK,EACjC,CACA,UAAA8J,CAAW9J,GACT,OAAO,aAAAlnE,KAAK,GAAWgxE,WAAW9J,EACpC,CACA,QAAAoG,CAASpG,GACP,aAAAlnE,KAAK,GAAWstE,SAASpG,EAC3B,CACA,SAAAm1C,CAAU9gG,GACR,MAAM,MACJ2sC,GACEoE,EAAMxX,YAAYkT,SACD,IAAjBzsC,EAAMkW,QAAgBlW,EAAM0wD,SAAW/jB,GAGvC3sC,EAAME,SAAWzb,KAAK4gC,KAGrB,aAAA5gC,KAAK,KAGV,aAAAA,KAAK,GAAkB,GAClB,aAAAA,KAAK,GAIN,aAAAA,KAAK,GAAWk6E,YAAc5tB,EAAM5W,qBAAqBqF,MAI7D,gBAAA/6C,KAAK,KAAL,KAAAA,KAA4Bub,GAAO,GAHjC,aAAAvb,KAAK,GAAWy2E,cAJhB,aAAAz2E,KAAK,GAAc,GAQvB,CACA,WAAAgsE,CAAYzwD,GACV,GAAI,aAAAvb,KAAK,GAEP,YADA,aAAAA,KAAK,GAAkB,GAGzB,MAAM,MACJkoD,GACEoE,EAAMxX,YAAYkT,SACtB,GAAqB,IAAjBzsC,EAAMkW,QAAgBlW,EAAM0wD,SAAW/jB,EACzC,OAEF,GAAI3sC,EAAME,SAAWzb,KAAK4gC,IACxB,OAEF,aAAA5gC,KAAK,GAAkB,GACvB,MAAMknE,EAAS,aAAAlnE,KAAK,GAAWo4E,YAC/B,aAAAp4E,KAAK,GAAeknE,GAAUA,EAAOmC,UACvC,CACA,aAAAc,CAAcjD,EAAQ9nE,EAAG4F,GACvB,MAAM4xE,EAAQ,aAAA52E,KAAK,GAAWk3E,WAAW93E,EAAG4F,GAC5C,OAAc,OAAV4xE,GAAkBA,IAAU52E,OAGhC42E,EAAMxK,aAAalF,IACZ,EACT,CACA,OAAA96C,GACM,aAAApsB,KAAK,GAAWo4E,aAAajT,SAAWnlE,OAC1C,aAAAA,KAAK,GAAWopE,iBAChB,aAAAppE,KAAK,GAAW6tE,gBAAgB,OAElC,UAAW3G,KAAU,aAAAlnE,KAAK,GAASu7D,SACjC,aAAAv7D,KAAK,IAAuBw9G,yBAAyBt2C,EAAOyG,YAC5DzG,EAAO6B,UAAU,MACjB7B,EAAOR,iBAAkB,EACzBQ,EAAOtmC,IAAI9Z,SAEb9mB,KAAK4gC,IAAM,KACX,aAAA5gC,KAAK,GAAS4O,QACd,aAAA5O,KAAK,GAAW04E,YAAY14E,KAC9B,CAUA,MAAAg4D,EAAO,SACLE,IAEAl4D,KAAKk4D,SAAWA,GAChB,EAAI1L,EAAeivB,oBAAoBz7E,KAAK4gC,IAAKs3B,GACjD,UAAWgP,KAAU,aAAAlnE,KAAK,GAAWm5E,WAAWn5E,KAAKk2D,WACnDl2D,KAAK4nB,IAAIs/C,GAEXlnE,KAAK24E,YACP,CACA,MAAAn+C,EAAO,SACL09B,IAEA,aAAAl4D,KAAK,GAAWopE,iBAChBppE,KAAKk4D,SAAWA,GAChB,EAAI1L,EAAeivB,oBAAoBz7E,KAAK4gC,IAAK,CAC/Cu2B,SAAUe,EAASf,WAErBn3D,KAAK24E,YACP,CACA,kBAAIpS,GACF,MAAM,UACJN,EAAS,WACTC,GACElmE,KAAKk4D,SAAS8N,QAClB,MAAO,CAACC,EAAWC,EACrB,GAxcA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cA+PA,gBAAgB,SAAC7xD,GACf,OAAQ,aAAArU,KAAK,GAAWk6E,WACtB,KAAK5tB,EAAM5W,qBAAqBoF,SAC9B,OAAO,IAAIkhE,EAAUO,eAAeloG,GACtC,KAAKi4C,EAAM5W,qBAAqBsF,IAC9B,OAAO,IAAIihE,EAAKO,UAAUnoG,GAC5B,KAAKi4C,EAAM5W,qBAAqBqF,MAC9B,OAAO,IAAImhE,EAAOO,YAAYpoG,GAElC,OAAO,IACT,EAiCA,gBAAsB,SAACkH,EAAOuqD,GAC5B,MAAMlwD,EAAK5V,KAAKqnE,YACVH,EAAS,gBAAAlnE,KAAK,KAAL,KAAAA,KAAsB,CACnCmlE,OAAQnlE,KACR4V,KACAxW,EAAGmc,EAAM67C,QACTpyD,EAAGuW,EAAM87C,QACTqO,UAAW,aAAA1lE,KAAK,GAChB8lE,eAKF,OAHIoB,GACFlnE,KAAK4nB,IAAIs/C,GAEJA,CACT,EACA,gBAAe,WACb,MAAM,EACJ9nE,EAAC,EACD4F,EAAC,MACD+8B,EAAK,OACLE,GACEjiC,KAAK4gC,IAAIspC,wBACP6c,EAAMtjE,KAAK6H,IAAI,EAAGlsB,GAClB6nF,EAAMxjE,KAAK6H,IAAI,EAAGtmB,GAGlB06E,GAAWqH,EAFLtjE,KAAKE,IAAI3kB,OAAO8+G,WAAY1+G,EAAI2iC,IAEd,EAAI3iC,EAC5BugF,GAAWsH,EAFLxjE,KAAKE,IAAI3kB,OAAO++G,YAAa/4G,EAAIi9B,IAEf,EAAIj9B,GAC3BoyD,EAASC,GAAWr3D,KAAKk4D,SAASf,SAAW,KAAQ,EAAI,CAACuoB,EAASC,GAAW,CAACA,EAASD,GAC/F,MAAO,CACLtoB,UACAC,UAEJ,EAiFA,gBAAQ,WACN,aAAAr3D,KAAK,GAAgB,GACrB,UAAWknE,KAAU,aAAAlnE,KAAK,GAASu7D,SAC7B2L,EAAOmC,WACTnC,EAAOpgD,SAGX,aAAA9mB,KAAK,GAAgB,EACvB,EAnaA,cAXI,EAWG,gBAAe,GAXxB,IAAM+7G,EAAN,EA2cAl9G,EAAQk9G,sBAAwBA,CAAqB,EAI9C,CAACroE,EAAyB70C,EAAS0sD,KAxia1C,kDA4iaAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ09G,oBAAiB,EACzB,IAAIjwD,EAAQf,EAAoB,GAC5B6Z,EAAS7Z,EAAoB,GAC7ByY,EAAUzY,EAAoB,GAC9ByyD,EAAoBzyD,EAAoB,IAC5C,MAAM,EAAN,MAAM,UAAuByY,EAAQO,iBAgDnC,WAAA5lD,CAAYtK,GACVozC,MAAM,IACDpzC,EACHlL,KAAM,mBAsCV,qBAqBA,qBAsGA,qBAWA,qBAsKA,qBA4FA,qBAUA,qBA1eA,oBAAsBnJ,KAAKi+G,cAAc77F,KAAKpiB,OAC9C,oBAAuBA,KAAKk+G,eAAe97F,KAAKpiB,OAChD,oBAAuBA,KAAKm+G,eAAe/7F,KAAKpiB,OAChD,oBAAyBA,KAAKo+G,iBAAiBh8F,KAAKpiB,OACpD,4BACA,oBAAW,IACX,oBAAe,GAAGA,KAAK4V,aACvB,4BACA,oBAAe,MA4Cb,aAAA5V,KAAK,EAASqU,EAAOogE,OAAS,EAAe4pC,eAAiBr6C,EAAQO,iBAAiBuC,mBACvF,aAAA9mE,KAAK,EAAYqU,EAAOszE,UAAY,EAAe22B,iBACrD,CAzCA,2BAAWtoC,GACT,MAAMC,EAAQ,EAAe12E,UACvB22E,EAAeh3E,GAAQA,EAAKmqE,UAC5B+M,EAAQhR,EAAOuM,0BAA0B0E,gBACzCC,EAAMlR,EAAOuM,0BAA0B4E,cAC7C,SAAWjqB,EAAMtT,QAAQh5C,KAAM,mBAAoB,IAAIolE,EAAOqM,gBAAgB,CAAC,CAAC,CAAC,SAAU,aAAc,SAAU,cAAewE,EAAM7M,eAAgB,CACtJp7C,SAAS,IACP,CAAC,CAAC,aAAc,iBAAkB,SAAU,cAAeioD,EAAM7M,gBAAiB,CAAC,CAAC,YAAa,iBAAkB6M,EAAMsoC,gBAAiB,CAC5ItzG,KAAM,EAAEmrE,EAAO,GACfjC,QAAS+B,IACP,CAAC,CAAC,iBAAkB,uBAAwBD,EAAMsoC,gBAAiB,CACrEtzG,KAAM,EAAEqrE,EAAK,GACbnC,QAAS+B,IACP,CAAC,CAAC,aAAc,kBAAmBD,EAAMsoC,gBAAiB,CAC5DtzG,KAAM,CAACmrE,EAAO,GACdjC,QAAS+B,IACP,CAAC,CAAC,kBAAmB,wBAAyBD,EAAMsoC,gBAAiB,CACvEtzG,KAAM,CAACqrE,EAAK,GACZnC,QAAS+B,IACP,CAAC,CAAC,UAAW,eAAgBD,EAAMsoC,gBAAiB,CACtDtzG,KAAM,CAAC,GAAImrE,GACXjC,QAAS+B,IACP,CAAC,CAAC,eAAgB,qBAAsBD,EAAMsoC,gBAAiB,CACjEtzG,KAAM,CAAC,GAAIqrE,GACXnC,QAAS+B,IACP,CAAC,CAAC,YAAa,iBAAkBD,EAAMsoC,gBAAiB,CAC1DtzG,KAAM,CAAC,EAAGmrE,GACVjC,QAAS+B,IACP,CAAC,CAAC,iBAAkB,uBAAwBD,EAAMsoC,gBAAiB,CACrEtzG,KAAM,CAAC,EAAGqrE,GACVnC,QAAS+B,MAEb,CAUA,iBAAO3O,CAAW93B,GAChBu0B,EAAQO,iBAAiBgD,WAAW93B,EAAM,CACxCg4B,QAAS,CAAC,6BAA8B,kCAE1C,MAAM7vD,EAAQkqB,iBAAiBrqB,SAASkwD,iBACxC3nE,KAAKw+G,iBAAmB52C,WAAWhwD,EAAMiwD,iBAAiB,sBAC5D,CACA,0BAAOC,CAAoB/6D,EAAM5M,GAC/B,OAAQ4M,GACN,KAAKu/C,EAAM1W,2BAA2BuF,cACpC,EAAemjE,iBAAmBn+G,EAClC,MACF,KAAKmsD,EAAM1W,2BAA2BwF,eACpC,EAAeijE,cAAgBl+G,EAGrC,CACA,YAAAotE,CAAaxgE,EAAM5M,GACjB,OAAQ4M,GACN,KAAKu/C,EAAM1W,2BAA2BuF,cACpC,gBAAAn7C,KAAK,KAAL,KAAAA,KAAqBG,GACrB,MACF,KAAKmsD,EAAM1W,2BAA2BwF,eACpC,gBAAAp7C,KAAK,KAAL,KAAAA,KAAkBG,GAGxB,CACA,oCAAW6nE,GACT,MAAO,CAAC,CAAC1b,EAAM1W,2BAA2BuF,cAAe,EAAemjE,kBAAmB,CAAChyD,EAAM1W,2BAA2BwF,eAAgB,EAAeijE,eAAiBr6C,EAAQO,iBAAiBuC,mBACxM,CACA,sBAAIsB,GACF,MAAO,CAAC,CAAC9b,EAAM1W,2BAA2BuF,cAAe,aAAAn7C,KAAK,IAAY,CAACssD,EAAM1W,2BAA2BwF,eAAgB,aAAAp7C,KAAK,IACnI,CAqCA,eAAAu+G,CAAgBn/G,EAAG4F,GACjBhF,KAAKylE,WAAWiR,yBAAyBt3E,EAAG4F,GAAG,EACjD,CACA,qBAAAomE,GACE,MAAMlU,EAAQl3D,KAAKyqE,YACnB,MAAO,EAAE,EAAe+zC,iBAAmBtnD,IAAS,EAAesnD,iBAAmB,aAAAx+G,KAAK,IAAak3D,EAC1G,CACA,OAAA6V,GACO/sE,KAAKmlE,SAGV1d,MAAMslB,UACW,OAAb/sE,KAAK4gC,MAGJ5gC,KAAK0mE,iBACR1mE,KAAKmlE,OAAOv9C,IAAI5nB,OAEpB,CACA,cAAA0sE,GACM1sE,KAAK4sE,iBAGT5sE,KAAKmlE,OAAOkT,iBAAgB,GAC5Br4E,KAAKmlE,OAAO0T,cAAcvsB,EAAM5W,qBAAqBoF,UACrD2M,MAAMilB,iBACN1sE,KAAKy+G,WAAWzvE,UAAUloB,OAAO,WACjC9mB,KAAK0+G,UAAUC,iBAAkB,EACjC3+G,KAAKqoE,cAAe,EACpBroE,KAAK4gC,IAAI3O,gBAAgB,yBACzBjyB,KAAK0+G,UAAUpjG,iBAAiB,UAAW,aAAAtb,KAAK,IAChDA,KAAK0+G,UAAUpjG,iBAAiB,QAAS,aAAAtb,KAAK,IAC9CA,KAAK0+G,UAAUpjG,iBAAiB,OAAQ,aAAAtb,KAAK,IAC7CA,KAAK0+G,UAAUpjG,iBAAiB,QAAS,aAAAtb,KAAK,IAChD,CACA,eAAA2sE,GACO3sE,KAAK4sE,iBAGV5sE,KAAKmlE,OAAOkT,iBAAgB,GAC5B5wB,MAAMklB,kBACN3sE,KAAKy+G,WAAWzvE,UAAUpnB,IAAI,WAC9B5nB,KAAK0+G,UAAUC,iBAAkB,EACjC3+G,KAAK4gC,IAAIlgB,aAAa,wBAAyB,aAAA1gB,KAAK,IACpDA,KAAKqoE,cAAe,EACpBroE,KAAK0+G,UAAU57F,oBAAoB,UAAW,aAAA9iB,KAAK,IACnDA,KAAK0+G,UAAU57F,oBAAoB,QAAS,aAAA9iB,KAAK,IACjDA,KAAK0+G,UAAU57F,oBAAoB,OAAQ,aAAA9iB,KAAK,IAChDA,KAAK0+G,UAAU57F,oBAAoB,QAAS,aAAA9iB,KAAK,IACjDA,KAAK4gC,IAAIzO,MAAM,CACbysF,eAAe,IAEjB5+G,KAAK4tE,WAAY,EACjB5tE,KAAKmlE,OAAOvkC,IAAIoO,UAAUpnB,IAAI,mBAChC,CACA,OAAA09C,CAAQ/pD,GACDvb,KAAKgpE,sBAGVvhB,MAAM6d,QAAQ/pD,GACVA,EAAME,SAAWzb,KAAK0+G,WACxB1+G,KAAK0+G,UAAUvsF,QAEnB,CACA,SAAAs6C,GACMzsE,KAAK+hC,MACP,gBAAA/hC,KAAK,KAAL,KAAAA,OAGFA,KAAK0sE,iBACL1sE,KAAK0+G,UAAUvsF,QACXnyB,KAAK6lE,iBAAiBC,YACxB9lE,KAAKuoE,SAEPvoE,KAAK6lE,gBAAkB,KACzB,CACA,OAAAwD,GACE,OAAQrpE,KAAK0+G,WAAiD,KAApC1+G,KAAK0+G,UAAUvnG,UAAUlL,MACrD,CACA,MAAA6a,GACE9mB,KAAK4tE,WAAY,EACb5tE,KAAKmlE,SACPnlE,KAAKmlE,OAAOkT,iBAAgB,GAC5Br4E,KAAKmlE,OAAOvkC,IAAIoO,UAAUpnB,IAAI,oBAEhC6/B,MAAM3gC,QACR,CAsCA,MAAAwiD,GACE,IAAKtpE,KAAK4sE,eACR,OAEFnlB,MAAM6hB,SACNtpE,KAAK2sE,kBACL,MAAMkyC,EAAY,aAAA7+G,KAAK,GACjB8+G,EAAU,aAAA9+G,KAAK,EAAW,gBAAAA,KAAK,KAAL,KAAAA,MAAoB++G,WACpD,GAAIF,IAAcC,EAChB,OAEF,MAAME,EAAU/nG,IACd,aAAAjX,KAAK,EAAWiX,GACXA,GAIL,gBAAAjX,KAAK,KAAL,KAAAA,MACAA,KAAKylE,WAAWsH,QAAQ/sE,MACxB,gBAAAA,KAAK,KAAL,KAAAA,OALEA,KAAK8mB,QAKP,EAEF9mB,KAAK0oE,YAAY,CACfyG,IAAK,KACH6vC,EAAQF,EAAQ,EAElB1vC,KAAM,KACJ4vC,EAAQH,EAAU,EAEpBxvC,UAAU,IAEZ,gBAAArvE,KAAK,KAAL,KAAAA,KACF,CACA,uBAAA6sE,GACE,OAAO7sE,KAAK4sE,cACd,CACA,eAAAc,GACE1tE,KAAK0sE,iBACL1sE,KAAK0+G,UAAUvsF,OACjB,CACA,QAAA8sF,CAAS1jG,GACPvb,KAAK0tE,iBACP,CACA,OAAA6H,CAAQh6D,GACFA,EAAME,SAAWzb,KAAK4gC,KAAqB,UAAdrlB,EAAMzO,MACrC9M,KAAK0tE,kBACLnyD,EAAMwW,iBAEV,CACA,gBAAAqsF,CAAiB7iG,GACf,EAAey6D,iBAAiBh0E,KAAKhC,KAAMub,EAC7C,CACA,cAAA2iG,CAAe3iG,GACbvb,KAAK4tE,WAAY,CACnB,CACA,aAAAqwC,CAAc1iG,GACZvb,KAAK4tE,WAAY,CACnB,CACA,cAAAuwC,CAAe5iG,GACbvb,KAAKmlE,OAAOvkC,IAAIoO,UAAUs5B,OAAO,kBAAmBtoE,KAAKqpE,UAC3D,CACA,cAAAmE,GACExtE,KAAK0+G,UAAUh+F,aAAa,OAAQ,WACpC1gB,KAAK0+G,UAAUzsF,gBAAgB,iBACjC,CACA,aAAAw7C,GACEztE,KAAK0+G,UAAUh+F,aAAa,OAAQ,WACpC1gB,KAAK0+G,UAAUh+F,aAAa,kBAAkB,EAChD,CACA,MAAAs3C,GACE,GAAIh4D,KAAK4gC,IACP,OAAO5gC,KAAK4gC,IAEd,IAAIs+E,EAAOC,EACPn/G,KAAK+hC,QACPm9E,EAAQl/G,KAAKZ,EACb+/G,EAAQn/G,KAAKgF,GAEfyiD,MAAMuQ,SACNh4D,KAAK0+G,UAAYjnG,SAASE,cAAc,OACxC3X,KAAK0+G,UAAUloG,UAAY,WAC3BxW,KAAK0+G,UAAUh+F,aAAa,KAAM,aAAA1gB,KAAK,IACvCA,KAAKytE,gBACLzJ,EAAQO,iBAAiBiD,aAAa/mE,IAAI,gCAAgCoE,MAAKuV,GAAOpa,KAAK0+G,WAAWh+F,aAAa,aAActG,KACjI4pD,EAAQO,iBAAiBiD,aAAa/mE,IAAI,8BAA8BoE,MAAKuV,GAAOpa,KAAK0+G,WAAWh+F,aAAa,kBAAmBtG,KACpIpa,KAAK0+G,UAAUC,iBAAkB,EACjC,MAAM,MACJ/mG,GACE5X,KAAK0+G,UAQT,GAPA9mG,EAAM+vE,SAAW,QAAQ,aAAA3nF,KAAK,8BAC9B4X,EAAM68D,MAAQ,aAAAz0E,KAAK,GACnBA,KAAK4gC,IAAIjV,OAAO3rB,KAAK0+G,WACrB1+G,KAAKy+G,WAAahnG,SAASE,cAAc,OACzC3X,KAAKy+G,WAAWzvE,UAAUpnB,IAAI,UAAW,WACzC5nB,KAAK4gC,IAAIjV,OAAO3rB,KAAKy+G,aACrB,EAAIr5C,EAAOr1B,YAAY/vC,KAAMA,KAAK4gC,IAAK,CAAC,WAAY,YAChD5gC,KAAK+hC,MAAO,CACd,MAAOioC,EAAaC,GAAgBjqE,KAAKymE,iBACzC,GAAIzmE,KAAK2lE,oBAAqB,CAC5B,MAAM,SACJtjC,GACE,aAAAriC,KAAK,GACT,IAAKwpE,EAAIC,GAAMzpE,KAAKorE,yBACnB5B,EAAIC,GAAMzpE,KAAKwqE,wBAAwBhB,EAAIC,GAC5C,MAAOxD,EAAWC,GAAclmE,KAAKumE,gBAC9BJ,EAAOC,GAASpmE,KAAKwmE,gBAC5B,IAAI44C,EAAMC,EACV,OAAQr/G,KAAKm3D,UACX,KAAK,EACHioD,EAAOF,GAAS78E,EAAS,GAAK8jC,GAASF,EACvCo5C,EAAOF,EAAQn/G,KAAKiiC,QAAUI,EAAS,GAAK+jC,GAASF,EACrD,MACF,KAAK,GACHk5C,EAAOF,GAAS78E,EAAS,GAAK8jC,GAASF,EACvCo5C,EAAOF,GAAS98E,EAAS,GAAK+jC,GAASF,GACtCsD,EAAIC,GAAM,CAACA,GAAKD,GACjB,MACF,KAAK,IACH41C,EAAOF,EAAQl/G,KAAK+hC,OAASM,EAAS,GAAK8jC,GAASF,EACpDo5C,EAAOF,GAAS98E,EAAS,GAAK+jC,GAASF,GACtCsD,EAAIC,GAAM,EAAED,GAAKC,GAClB,MACF,KAAK,IACH21C,EAAOF,GAAS78E,EAAS,GAAK8jC,EAAQnmE,KAAKiiC,OAASikC,GAAcD,EAClEo5C,EAAOF,GAAS98E,EAAS,GAAK+jC,EAAQpmE,KAAK+hC,MAAQkkC,GAAaC,GAC/DsD,EAAIC,GAAM,EAAEA,EAAID,GAGrBxpE,KAAKupE,MAAM61C,EAAOp1C,EAAaq1C,EAAOp1C,EAAcT,EAAIC,EAC1D,MACEzpE,KAAKupE,MAAM21C,EAAQl1C,EAAam1C,EAAQl1C,EAAcjqE,KAAK+hC,MAAQioC,EAAahqE,KAAKiiC,OAASgoC,GAEhG,gBAAAjqE,KAAK,KAAL,KAAAA,MACAA,KAAKqoE,cAAe,EACpBroE,KAAK0+G,UAAUC,iBAAkB,CACnC,MACE3+G,KAAKqoE,cAAe,EACpBroE,KAAK0+G,UAAUC,iBAAkB,EAEnC,OAAO3+G,KAAK4gC,GACd,CAYA,cAAI+sC,GACF,OAAO3tE,KAAK0+G,SACd,CACA,kBAAOzxC,CAAYroD,EAAMugD,EAAQO,GAC/B,IAAInU,EAAc,KAClB,GAAI3sC,aAAgBo5F,EAAkBsB,0BAA2B,CAC/D,MACE16F,MACE26F,uBAAuB,SACrB53B,EAAQ,UACR63B,GACD,KACD/1D,EAAI,SACJ0N,EAAQ,GACRvhD,GACD,YACDsB,EAAW,aACXuoG,EACAt6C,QACErF,MAAM,WACJxL,KAGF1vC,EACJ,IAAK1N,GAAsC,IAAvBA,EAAYrR,OAC9B,OAAO,KAET0rD,EAAc3sC,EAAO,CACnBg5F,eAAgBtxD,EAAM5W,qBAAqBoF,SAC3C25B,MAAO9pE,MAAMiS,KAAK4iG,GAClB73B,WACAxnF,MAAO+W,EAAYzK,KAAK,MACxB41B,SAAUo9E,EACVvpD,UAAW5B,EAAa,EACxB7K,OACA0N,WACAvhD,KACA+wD,SAAS,EAEb,CACA,MAAMO,EAASzf,MAAMwlB,YAAYroD,EAAMugD,EAAQO,GAM/C,OALA,aAAAwB,EAAO,EAAYtiD,EAAK+iE,UACxB,aAAAzgB,EAAO,EAAS5a,EAAMv2C,KAAKwyC,gBAAgB3jC,EAAK6vD,QAChD,aAAAvN,EAAO,EAAWtiD,EAAKzkB,OACvB+mE,EAAOvB,oBAAsB/gD,EAAKhP,IAAM,KACxC,aAAAsxD,EAAO,EAAe3V,GACf2V,CACT,CACA,SAAA18D,CAAUwiE,GAAe,GACvB,GAAIhtE,KAAKqpE,UACP,OAAO,KAET,GAAIrpE,KAAK2mE,QACP,MAAO,CACLzQ,UAAWl2D,KAAKk2D,UAChBtgD,GAAI5V,KAAK2lE,oBACTgB,SAAS,GAGb,MAAM+4C,EAAU,EAAelB,iBAAmBx+G,KAAKyqE,YACjDhhB,EAAOzpD,KAAKqsE,QAAQqzC,EAASA,GAC7BjrC,EAAQzQ,EAAQO,iBAAiBwC,cAAcyN,QAAQx0E,KAAK0mE,gBAAkB5kC,iBAAiB9hC,KAAK0+G,WAAWjqC,MAAQ,aAAAz0E,KAAK,IAC5HilE,EAAa,CACjB24C,eAAgBtxD,EAAM5W,qBAAqBoF,SAC3C25B,QACAkT,SAAU,aAAA3nF,KAAK,GACfG,MAAO,aAAAH,KAAK,GACZk2D,UAAWl2D,KAAKk2D,UAChBzM,OACA0N,SAAUn3D,KAAKm3D,SACfwoD,mBAAoB3/G,KAAK+lE,qBAE3B,OAAIiH,EACK/H,EAELjlE,KAAK2lE,sBAAwB,gBAAA3lE,KAAK,KAAL,KAAAA,KAAwBilE,GAChD,MAETA,EAAWrvD,GAAK5V,KAAK2lE,oBACdV,EACT,GA/dA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cAgFA,gBAAe,SAAC0iB,GACd,MAAMi4B,EAAc7yF,IAClB/sB,KAAK0+G,UAAU9mG,MAAM+vE,SAAW,QAAQ56D,6BACxC/sB,KAAK2pE,UAAU,IAAK58C,EAAO,aAAA/sB,KAAK,IAAaA,KAAKyqE,aAClD,aAAAzqE,KAAK,EAAY+sB,GACjB,gBAAA/sB,KAAK,KAAL,KAAAA,KAAA,EAEI6/G,EAAgB,aAAA7/G,KAAK,GAC3BA,KAAK0oE,YAAY,CACfyG,IAAK,KACHywC,EAAYj4B,EAAS,EAEvBvY,KAAM,KACJwwC,EAAYC,EAAc,EAE5BxwC,UAAU,EACVtiE,KAAMu/C,EAAM1W,2BAA2BuF,cACvCw4B,qBAAqB,EACrBC,UAAU,GAEd,EACA,gBAAY,SAACa,GACX,MAAMqrC,EAAa,aAAA9/G,KAAK,GACxBA,KAAK0oE,YAAY,CACfyG,IAAK,KACH,aAAAnvE,KAAK,EAASA,KAAK0+G,UAAU9mG,MAAM68D,MAAQA,EAAA,EAE7CrF,KAAM,KACJ,aAAApvE,KAAK,EAASA,KAAK0+G,UAAU9mG,MAAM68D,MAAQqrC,EAAA,EAE7CzwC,UAAU,EACVtiE,KAAMu/C,EAAM1W,2BAA2BwF,eACvCu4B,qBAAqB,EACrBC,UAAU,GAEd,EAwFA,gBAAY,WACV,MAAMmsC,EAAO//G,KAAK0+G,UAAU59E,qBAAqB,OACjD,GAAoB,IAAhBi/E,EAAKl6G,OACP,OAAO7F,KAAK0+G,UAAUvnG,UAExB,MAAM4T,EAAS,GACf,UAAW6V,KAAOm/E,EAChBh1F,EAAOnpB,KAAKg/B,EAAIzpB,UAAUjL,QAAQ,WAAY,KAEhD,OAAO6e,EAAOte,KAAK,KACrB,EACA,gBAAoB,WAClB,MAAOu9D,EAAaC,GAAgBjqE,KAAKymE,iBACzC,IAAIhd,EACJ,GAAIzpD,KAAK0mE,gBACPjd,EAAOzpD,KAAK4gC,IAAIspC,4BACX,CACL,MAAM,aACJvB,EAAY,IACZ/nC,GACE5gC,KACEggH,EAAep/E,EAAIhpB,MAAMC,QAC/B+oB,EAAIhpB,MAAMC,QAAU,SACpB8wD,EAAa/nC,IAAIjV,OAAO3rB,KAAK4gC,KAC7B6oB,EAAO7oB,EAAIspC,wBACXtpC,EAAI9Z,SACJ8Z,EAAIhpB,MAAMC,QAAUmoG,CACtB,CACIhgH,KAAKm3D,SAAW,KAAQn3D,KAAKwoE,eAAiB,KAChDxoE,KAAK+hC,MAAQ0nB,EAAK1nB,MAAQioC,EAC1BhqE,KAAKiiC,OAASwnB,EAAKxnB,OAASgoC,IAE5BjqE,KAAK+hC,MAAQ0nB,EAAKxnB,OAAS+nC,EAC3BhqE,KAAKiiC,OAASwnB,EAAK1nB,MAAQkoC,GAE7BjqE,KAAKyoE,mBACP,EA6IA,gBAAW,WAET,GADAzoE,KAAK0+G,UAAUuB,kBACV,aAAAjgH,KAAK,GAGV,UAAWqB,KAAQ,aAAArB,KAAK,GAASkB,MAAM,MAAO,CAC5C,MAAM0/B,EAAMnpB,SAASE,cAAc,OACnCipB,EAAIjV,OAAOtqB,EAAOoW,SAASyoG,eAAe7+G,GAAQoW,SAASE,cAAc,OACzE3X,KAAK0+G,UAAU/yF,OAAOiV,EACxB,CACF,EAkFA,gBAAkB,SAACqkC,GACjB,MAAM,MACJ9kE,EAAK,SACLwnF,EAAQ,MACRlT,EAAK,KACLhrB,EAAI,UACJyM,GACE,aAAAl2D,KAAK,GACT,OAAOilE,EAAW9kE,QAAUA,GAAS8kE,EAAW0iB,WAAaA,GAAY1iB,EAAWxb,KAAKz0C,MAAK,CAAC5V,EAAGyJ,IAAM4a,KAAKunC,IAAI5rD,EAAIqqD,EAAK5gD,KAAO,KAAMo8D,EAAWwP,MAAMz/D,MAAK,CAAC6T,EAAGhgB,IAAMggB,IAAM4rD,EAAM5rE,MAAOo8D,EAAW/O,YAAcA,CACrN,EACA,gBAAiB,SAACqG,GAAU,GAC1B,IAAKv8D,KAAK2lE,oBACR,OAGF,GADA,gBAAA3lE,KAAK,KAAL,KAAAA,OACKu8D,IAA2B,IAAfv8D,KAAK+hC,OAA+B,IAAhB/hC,KAAKiiC,QAExC,YADA/nB,YAAW,IAAM,gBAAAla,KAAK,KAAL,KAAAA,MAAuB,IAAO,GAGjD,MAAM0/G,EAAU,EAAelB,iBAAmBx+G,KAAKyqE,YACvD,aAAAzqE,KAAK,GAAaypD,KAAOzpD,KAAKqsE,QAAQqzC,EAASA,EACjD,EA5eA,cAVI,EAUG,0BAA0B,IACjC,cAXI,EAWG,mBAAmB,GAC1B,cAZI,EAYG,gBAAgB,MACvB,cAbI,EAaG,mBAAmB,IAkC1B,cA/CI,EA+CG,QAAQ,YA/CjB,IAAMnD,EAAN,EAwfA19G,EAAQ09G,eAAiBA,CAAc,EAIhC,CAAC7oE,EAAyB70C,EAAS0sD,KAhjb1C,8FAojbAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQshH,uBAAyBthH,EAAQuhH,qBAAuBvhH,EAAQygH,0BAA4BzgH,EAAQwhH,qBAAkB,EAC9H,IAAI/zD,EAAQf,EAAoB,GAC5BiB,EAAiBjB,EAAoB,GACrCgB,EAAsBhB,EAAoB,GAC1C+0D,EAAmB/0D,EAAoB,IACvCg1D,EAAqBh1D,EAAoB,IACzCi1D,EAAaj1D,EAAoB,IACrC,MAAMk1D,GAAoB,IAEpBC,GAAuB,IAAI38C,QACjC,SAAS48C,GAAYl3D,GACnB,MAAO,CACL1nB,MAAO0nB,EAAK,GAAKA,EAAK,GACtBxnB,OAAQwnB,EAAK,GAAKA,EAAK,GAE3B,CACA,MAAMm3D,GACJ,aAAO19G,CAAOmiE,GAEZ,OADgBA,EAAWzgD,KAAKg5F,gBAE9B,KAAKtxD,EAAMlX,eAAe0H,KACxB,OAAO,IAAI+jE,GAAsBx7C,GACnC,KAAK/Y,EAAMlX,eAAeyH,KACxB,OAAO,IAAIikE,GAAsBz7C,GACnC,KAAK/Y,EAAMlX,eAAeyI,OAExB,OADkBwnB,EAAWzgD,KAAKm8F,WAEhC,IAAK,KACH,OAAO,IAAIC,GAA4B37C,GACzC,IAAK,MACH,OAAIA,EAAWzgD,KAAKq8F,YACX,IAAIC,GAAmC77C,GACrCA,EAAWzgD,KAAKu8F,SAClB,IAAIC,GAAgC/7C,GAEtC,IAAIg8C,GAAkCh8C,GAC/C,IAAK,KACH,OAAO,IAAIi8C,GAA8Bj8C,GAC3C,IAAK,MACH,OAAO,IAAIk8C,GAAiCl8C,GAEhD,OAAO,IAAIm8C,GAAwBn8C,GACrC,KAAK/Y,EAAMlX,eAAeqI,MACxB,OAAO,IAAIgkE,GAAuBp8C,GACpC,KAAK/Y,EAAMlX,eAAe0F,SACxB,OAAO,IAAIwkE,GAA0Bj6C,GACvC,KAAK/Y,EAAMlX,eAAe2H,KACxB,OAAO,IAAI2kE,GAAsBr8C,GACnC,KAAK/Y,EAAMlX,eAAe4H,OACxB,OAAO,IAAI2kE,GAAwBt8C,GACrC,KAAK/Y,EAAMlX,eAAe6H,OACxB,OAAO,IAAI2kE,GAAwBv8C,GACrC,KAAK/Y,EAAMlX,eAAe+H,SACxB,OAAO,IAAI0kE,GAA0Bx8C,GACvC,KAAK/Y,EAAMlX,eAAeoI,MACxB,OAAO,IAAIskE,GAAuBz8C,GACpC,KAAK/Y,EAAMlX,eAAe4F,IACxB,OAAO,IAAIolE,GAAqB/6C,GAClC,KAAK/Y,EAAMlX,eAAe8H,QACxB,OAAO,IAAI6kE,GAAyB18C,GACtC,KAAK/Y,EAAMlX,eAAegI,UACxB,OAAO,IAAI4kE,GAA2B38C,GACxC,KAAK/Y,EAAMlX,eAAeiI,UACxB,OAAO,IAAI4kE,GAA2B58C,GACxC,KAAK/Y,EAAMlX,eAAekI,SACxB,OAAO,IAAI4kE,GAA0B78C,GACvC,KAAK/Y,EAAMlX,eAAemI,UACxB,OAAO,IAAI4kE,GAA2B98C,GACxC,KAAK/Y,EAAMlX,eAAe2F,MACxB,OAAO,IAAIolE,GAAuB96C,GACpC,KAAK/Y,EAAMlX,eAAesI,eACxB,OAAO,IAAI0kE,GAAgC/8C,GAC7C,QACE,OAAO,IAAIg9C,GAAkBh9C,GAEnC,EAGA,cADF,IAAMg9C,GAAN,MAAM,EAEJ,WAAA1jG,CAAY0mD,GAAY,aACtBi9C,GAAe,EAAK,aACpBC,GAAe,EAAK,qBACpBC,GAAuB,GACrB,CAAC,GALL,qBAAa,GAMXxiH,KAAKsiH,aAAeA,EACpBtiH,KAAK4kB,KAAOygD,EAAWzgD,KACvB5kB,KAAK42E,MAAQvR,EAAWuR,MACxB52E,KAAKyiH,YAAcp9C,EAAWo9C,YAC9BziH,KAAK0iH,gBAAkBr9C,EAAWq9C,gBAClC1iH,KAAK2iH,mBAAqBt9C,EAAWs9C,mBACrC3iH,KAAK4iH,YAAcv9C,EAAWu9C,YAC9B5iH,KAAK2zG,WAAatuC,EAAWsuC,WAC7B3zG,KAAK+zD,kBAAoBsR,EAAWtR,kBACpC/zD,KAAK6iH,gBAAkBx9C,EAAWw9C,gBAClC7iH,KAAKg2D,aAAeqP,EAAWrP,aAC/Bh2D,KAAK8iH,cAAgBz9C,EAAW09C,aAChC/iH,KAAKmlE,OAASE,EAAWF,OACrBm9C,IACFtiH,KAAK6jC,UAAY7jC,KAAKgjH,iBAAiBT,IAErCC,GACFxiH,KAAKijH,uBAET,CACA,oBAAOC,EAAc,SACnBC,EAAQ,YACRC,EAAW,SACXC,IAEA,SAAUF,GAAUn5F,KAAOo5F,GAAap5F,KAAOq5F,GAAUr5F,IAC3D,CACA,gBAAIs5F,GACF,OAAO,EAAkBJ,cAAcljH,KAAK4kB,KAC9C,CACA,gBAAAo+F,CAAiBT,GACf,MAAM,KACJ39F,EACAugD,QAAQ,KACNrF,EAAI,SACJ5H,IAEAl4D,KACE6jC,EAAYpsB,SAASE,cAAc,WACzCksB,EAAUnjB,aAAa,qBAAsBkE,EAAKhP,IAC5C5V,gBAAgBwhH,KACpB39E,EAAUnB,SAAW+9E,IAEvB58E,EAAUjsB,MAAMixD,OAAS7oE,KAAKmlE,OAAO0D,SACjC7oE,KAAK4kB,KAAK2+F,UACZ1/E,EAAUnjB,aAAa,gBAAiB,UAEtCkE,EAAK4+F,UACP3/E,EAAUmL,UAAUpnB,IAAI,YAE1B,MAAM,UACJq+C,EAAS,WACTC,EAAU,MACVC,EAAK,MACLC,GACElO,EAAS8N,QACb,IAAKphD,EAAK6kC,MAAQzpD,gBAAgByhH,GAAwB,CACxD,MACEtqD,SAAAA,GACEvyC,EAIJ,OAHKA,EAAK82E,cAA6B,IAAbvkC,GACxBn3D,KAAKyjH,YAAYtsD,EAAUtzB,GAEtBA,CACT,CACA,MAAM,MACJ9B,EAAK,OACLE,GACE0+E,GAAY/7F,EAAK6kC,MACfA,EAAO6C,EAAMv2C,KAAKyzC,cAAc,CAAC5kC,EAAK6kC,KAAK,GAAIqW,EAAK9I,KAAK,GAAKpyC,EAAK6kC,KAAK,GAAKqW,EAAK9I,KAAK,GAAIpyC,EAAK6kC,KAAK,GAAIqW,EAAK9I,KAAK,GAAKpyC,EAAK6kC,KAAK,GAAKqW,EAAK9I,KAAK,KACvJ,IAAKurD,GAAgB39F,EAAK8+F,YAAY3hF,MAAQ,EAAG,CAC/C8B,EAAUjsB,MAAM+rG,YAAc,GAAG/+F,EAAK8+F,YAAY3hF,UAClD,MAAM6hF,EAAmBh/F,EAAK8+F,YAAYG,uBACpCC,EAAiBl/F,EAAK8+F,YAAYK,qBACxC,GAAIH,EAAmB,GAAKE,EAAiB,EAAG,CAC9C,MAAME,EAAS,QAAQJ,qCAAoDE,6BAC3EjgF,EAAUjsB,MAAMqsG,aAAeD,CACjC,MAAO,GAAIhkH,gBAAgBkhH,GAAoC,CAC7D,MAAM8C,EAAS,QAAQjiF,qCAAyCE,6BAChE4B,EAAUjsB,MAAMqsG,aAAeD,CACjC,CACA,OAAQp/F,EAAK8+F,YAAY9rG,OACvB,KAAK00C,EAAMzW,0BAA0BmK,MACnCnc,EAAUjsB,MAAM8rG,YAAc,QAC9B,MACF,KAAKp3D,EAAMzW,0BAA0BoK,OACnCpc,EAAUjsB,MAAM8rG,YAAc,SAC9B,MACF,KAAKp3D,EAAMzW,0BAA0BqK,SACnC,EAAIoM,EAAMhhD,MAAM,uCAChB,MACF,KAAKghD,EAAMzW,0BAA0BsK,OACnC,EAAImM,EAAMhhD,MAAM,qCAChB,MACF,KAAKghD,EAAMzW,0BAA0BwH,UACnCxZ,EAAUjsB,MAAMssG,kBAAoB,QAKxC,MAAMC,EAAcv/F,EAAKu/F,aAAe,KACpCA,GACF,aAAAnkH,KAAK,GAAa,GAClB6jC,EAAUjsB,MAAMusG,YAAc73D,EAAMv2C,KAAKwyC,aAA8B,EAAjB47D,EAAY,GAAyB,EAAjBA,EAAY,GAAyB,EAAjBA,EAAY,KAE1GtgF,EAAUjsB,MAAM+rG,YAAc,CAElC,CACA9/E,EAAUjsB,MAAM4f,KAAU,KAAOiyB,EAAK,GAAK0c,GAASF,EAA7B,IACvBpiC,EAAUjsB,MAAM4tB,IAAS,KAAOikB,EAAK,GAAK2c,GAASF,EAA7B,IACtB,MAAM,SACJ/O,GACEvyC,EAOJ,OANIA,EAAK82E,cAA6B,IAAbvkC,GACvBtzB,EAAUjsB,MAAMmqB,MAAW,IAAMA,EAAQkkC,EAAjB,IACxBpiC,EAAUjsB,MAAMqqB,OAAY,IAAMA,EAASikC,EAAlB,KAEzBlmE,KAAKyjH,YAAYtsD,EAAUtzB,GAEtBA,CACT,CACA,WAAA4/E,CAAYx1C,EAAOpqC,EAAY7jC,KAAK6jC,WAClC,IAAK7jC,KAAK4kB,KAAK6kC,KACb,OAEF,MAAM,UACJwc,EAAS,WACTC,GACElmE,KAAKmlE,OAAOjN,SAAS8N,SACnB,MACJjkC,EAAK,OACLE,GACE0+E,GAAY3gH,KAAK4kB,KAAK6kC,MAC1B,IAAI26D,EAAcC,EACdp2C,EAAQ,KAAQ,GAClBm2C,EAAe,IAAMriF,EAAQkkC,EAC7Bo+C,EAAgB,IAAMpiF,EAASikC,IAE/Bk+C,EAAe,IAAMniF,EAASgkC,EAC9Bo+C,EAAgB,IAAMtiF,EAAQmkC,GAEhCriC,EAAUjsB,MAAMmqB,MAAQ,GAAGqiF,KAC3BvgF,EAAUjsB,MAAMqqB,OAAS,GAAGoiF,KAC5BxgF,EAAUnjB,aAAa,sBAAuB,IAAMutD,GAAS,IAC/D,CACA,kBAAIq2C,GACF,MAAMC,EAAW,CAACC,EAAQC,EAAWlpG,KACnC,MAAMk5D,EAAQl5D,EAAM2S,OAAOs2F,GACrBhS,EAAY/9B,EAAM,GAClBiwC,EAAajwC,EAAMxnE,MAAM,GAC/BsO,EAAME,OAAO7D,MAAM6sG,GAAanE,EAAiBqE,gBAAgB,GAAGnS,UAAkBkS,GACtF1kH,KAAK+zD,kBAAkByQ,SAASxkE,KAAK4kB,KAAKhP,GAAI,CAC5C,CAAC6uG,GAAYnE,EAAiBqE,gBAAgB,GAAGnS,SAAiBkS,IAClE,EAEJ,SAAWp4D,EAAMtT,QAAQh5C,KAAM,iBAAkB,CAC/C6X,QAAS0D,IACP,MAAM,QACJ1D,GACE0D,EAAM2S,OACJilB,EAASt7B,EAAU,GAAM,EAC/B7X,KAAK6jC,UAAUjsB,MAAM2iE,WAAapnC,EAAS,SAAW,UACtDnzC,KAAK+zD,kBAAkByQ,SAASxkE,KAAK4kB,KAAKhP,GAAI,CAC5CgvG,OAAQzxE,EACR0xE,QAAqB,IAAZhtG,GAA6B,IAAZA,GAC1B,EAEJitD,MAAOvpD,IACLvb,KAAK+zD,kBAAkByQ,SAASxkE,KAAK4kB,KAAKhP,GAAI,CAC5CivG,SAAUtpG,EAAM2S,OAAO42C,OACvB,EAEJ3xB,OAAQ53B,IACN,MAAM,OACJ43B,GACE53B,EAAM2S,OACVluB,KAAK6jC,UAAUjsB,MAAM2iE,WAAapnC,EAAS,SAAW,UACtDnzC,KAAK+zD,kBAAkByQ,SAASxkE,KAAK4kB,KAAKhP,GAAI,CAC5CivG,QAAS1xE,EACTyxE,OAAQzxE,GACR,EAEJhhB,MAAO5W,IACLrB,YAAW,IAAMqB,EAAME,OAAO0W,MAAM,CAClCysF,eAAe,KACb,EAAE,EAERkG,SAAUvpG,IACRA,EAAME,OAAOspG,MAAQxpG,EAAM2S,OAAO42F,QAAQ,EAE5CE,SAAUzpG,IACRA,EAAME,OAAOsS,SAAWxS,EAAM2S,OAAO82F,QAAQ,EAE/CC,SAAU1pG,IACRvb,KAAKklH,aAAa3pG,EAAME,OAAQF,EAAM2S,OAAO+2F,SAAS,EAExDjoC,QAASzhE,IACPgpG,EAAS,UAAW,kBAAmBhpG,EAAM,EAE/CitE,UAAWjtE,IACTgpG,EAAS,YAAa,kBAAmBhpG,EAAM,EAEjDwhE,QAASxhE,IACPgpG,EAAS,UAAW,QAAShpG,EAAM,EAErC4pG,UAAW5pG,IACTgpG,EAAS,YAAa,QAAShpG,EAAM,EAEvC4oG,YAAa5oG,IACXgpG,EAAS,cAAe,cAAehpG,EAAM,EAE/CktE,YAAaltE,IACXgpG,EAAS,cAAe,cAAehpG,EAAM,EAE/C47C,SAAU57C,IACR,MAAM0yD,EAAQ1yD,EAAM2S,OAAOipC,SAC3Bn3D,KAAKyjH,YAAYx1C,GACjBjuE,KAAK+zD,kBAAkByQ,SAASxkE,KAAK4kB,KAAKhP,GAAI,CAC5CuhD,SAAU8W,GACV,GAGR,CACA,yBAAAm3C,CAA0BC,EAASC,GACjC,MAAMC,EAAgBvlH,KAAKskH,eAC3B,UAAWn7G,KAAQ7J,OAAOc,KAAKklH,EAAQp3F,QAAS,CAC9C,MAAM3d,EAAS80G,EAAQl8G,IAASo8G,EAAcp8G,GAC9CoH,IAAS+0G,EACX,CACF,CACA,2BAAAE,CAA4BpvG,GAC1B,IAAKpW,KAAK6iH,gBACR,OAEF,MAAM4C,EAAazlH,KAAK+zD,kBAAkBuQ,YAAYtkE,KAAK4kB,KAAKhP,IAChE,IAAK6vG,EACH,OAEF,MAAMF,EAAgBvlH,KAAKskH,eAC3B,UAAYhe,EAAYp4E,KAAW5uB,OAAO4e,QAAQunG,GAAa,CAC7D,MAAMl1G,EAASg1G,EAAcjf,GACzB/1F,IAOFA,EANmB,CACjB2d,OAAQ,CACN,CAACo4E,GAAap4E,GAEhBzS,OAAQrF,WAGHqvG,EAAWnf,GAEtB,CACF,CACA,qBAAA2c,GACE,IAAKjjH,KAAK6jC,UACR,OAEF,MAAM,WACJ6hF,GACE1lH,KAAK4kB,KACT,IAAK8gG,EACH,OAEF,MAAOC,EAASC,EAASC,EAASC,GAAW9lH,KAAK4kB,KAAK6kC,KACvD,GAA0B,IAAtBi8D,EAAW7/G,OAAc,CAC3B,MAAO,EACLzG,EAAG2mH,EACH/gH,EAAGghH,IAEH5mH,EAAG6mH,EACHjhH,EAAGkhH,IACAR,EAAW,GAChB,GAAIG,IAAYE,GAAOD,IAAYE,GAAOL,IAAYM,GAAOL,IAAYM,EACvE,MAEJ,CACA,MAAM,MACJtuG,GACE5X,KAAK6jC,UACT,IAAIsiF,EACJ,GAAI,aAAAnmH,KAAK,GAAY,CACnB,MAAM,YACJmkH,EAAW,YACXR,GACE/rG,EACJA,EAAM+rG,YAAc,EACpBwC,EAAY,CAAC,gCAAiC,0CAA2C,iDAAkD,iCAAiChC,oBAA8BR,OAC1M3jH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,YAC/B,CACA,MAAMma,EAAQ8jF,EAAUF,EAClB1jF,EAAS6jF,EAAUF,GACnB,WACJjS,GACE3zG,KACEm+E,EAAMw1B,EAAWh8F,cAAc,OACrCwmE,EAAInvC,UAAUpnB,IAAI,2BAClBu2D,EAAIz9D,aAAa,QAAS,GAC1By9D,EAAIz9D,aAAa,SAAU,GAC3B,MAAMi1F,EAAOhC,EAAWh8F,cAAc,QACtCwmE,EAAIxyD,OAAOgqF,GACX,MAAM4B,EAAW5D,EAAWh8F,cAAc,YACpC/B,EAAK,YAAY5V,KAAK4kB,KAAKhP,KACjC2hG,EAAS72F,aAAa,KAAM9K,GAC5B2hG,EAAS72F,aAAa,gBAAiB,qBACvCi1F,EAAKhqF,OAAO4rF,GACZ,UAAY,EACVn4G,EAAG2mH,EACH/gH,EAAGghH,IAEH5mH,EAAG6mH,EACHjhH,EAAGkhH,MACCR,EAAY,CAChB,MAAMj8D,EAAOkqD,EAAWh8F,cAAc,QAChCvY,GAAK6mH,EAAMN,GAAW5jF,EACtB/8B,GAAK8gH,EAAUE,GAAO/jF,EACtBmkF,GAAaL,EAAME,GAAOlkF,EAC1BskF,GAAcL,EAAME,GAAOjkF,EACjCwnB,EAAK/oC,aAAa,IAAKthB,GACvBqqD,EAAK/oC,aAAa,IAAK1b,GACvBykD,EAAK/oC,aAAa,QAAS0lG,GAC3B38D,EAAK/oC,aAAa,SAAU2lG,GAC5B9O,EAAS5rF,OAAO89B,GAChB08D,GAAWvkH,KAAK,+CAA+CxC,SAAS4F,aAAaohH,cAAsBC,OAC7G,CACI,aAAArmH,KAAK,KACPmmH,EAAUvkH,KAAK,gBACfgW,EAAM0uG,gBAAkBH,EAAU15G,KAAK,KAEzCzM,KAAK6jC,UAAUlY,OAAOwyD,GACtBn+E,KAAK6jC,UAAUjsB,MAAM2/F,SAAW,QAAQ3hG,IAC1C,CACA,YAAA2wG,GACE,MAAM,UACJ1iF,EAAS,KACTjf,GACE5kB,KACJ6jC,EAAUnjB,aAAa,gBAAiB,UACxC,MAAM8lG,EAAQ,IAAI/E,GAAuB,CACvC78F,KAAM,CACJ6vD,MAAO7vD,EAAK6vD,MACZ0uC,SAAUv+F,EAAKu+F,SACfsD,iBAAkB7hG,EAAK6hG,iBACvBrD,YAAax+F,EAAKw+F,YAClBC,SAAUz+F,EAAKy+F,SACfqD,WAAY9hG,EAAK6kC,KACjBi6D,YAAa,EACb9tG,GAAI,SAASgP,EAAKhP,KAClBuhD,SAAUvyC,EAAKuyC,UAEjBgO,OAAQnlE,KAAKmlE,OACbjuC,SAAU,CAACl3B,QAEbA,KAAKmlE,OAAOvkC,IAAIjV,OAAO66F,EAAMxuD,SAC/B,CACA,MAAAA,IACE,EAAI1L,EAAMpW,aAAa,oDACzB,CACA,kBAAAywE,CAAmBx9G,EAAMy9G,EAAS,MAChC,MAAMC,EAAS,GACf,GAAI7mH,KAAK8iH,cAAe,CACtB,MAAMgE,EAAW9mH,KAAK8iH,cAAc35G,GACpC,GAAI29G,EACF,UAAW,KACThnD,EAAI,GACJlqD,EAAE,aACFmxG,KACGD,EAAU,CACb,IAAc,IAAVhnD,EACF,SAEF,GAAIlqD,IAAOgxG,EACT,SAEF,MAAMI,EAAsC,iBAAjBD,EAA4BA,EAAe,KAChEE,EAAaxvG,SAAS6Q,cAAc,qBAAqB1S,QAC3DqxG,GAAevG,GAAqB9iD,IAAIqpD,GAI5CJ,EAAOjlH,KAAK,CACVgU,KACAoxG,cACAC,gBANA,EAAI36D,EAAMhhD,MAAM,6CAA6CsK,IAQjE,CAEF,OAAOixG,CACT,CACA,UAAWI,KAAcxvG,SAASyvG,kBAAkB/9G,GAAO,CACzD,MAAM,YACJ69G,GACEC,EACErxG,EAAKqxG,EAAW1wG,aAAa,mBAC/BX,IAAOgxG,GAGNlG,GAAqB9iD,IAAIqpD,IAG9BJ,EAAOjlH,KAAK,CACVgU,KACAoxG,cACAC,cAEJ,CACA,OAAOJ,CACT,CACA,IAAAxJ,GACMr9G,KAAK6jC,YACP7jC,KAAK6jC,UAAUsP,QAAS,GAE1BnzC,KAAKwmH,OAAOW,WACd,CACA,IAAAjK,GACMl9G,KAAK6jC,YACP7jC,KAAK6jC,UAAUsP,QAAS,GAE1BnzC,KAAKwmH,OAAOY,WACd,CACA,yBAAAC,GACE,OAAOrnH,KAAK6jC,SACd,CACA,gBAAAyjF,GACE,MAAMC,EAAWvnH,KAAKqnH,4BACtB,GAAI18G,MAAMC,QAAQ28G,GAChB,UAAWnxG,KAAWmxG,EACpBnxG,EAAQ44B,UAAUpnB,IAAI,sBAGxB2/F,EAASv4E,UAAUpnB,IAAI,gBAE3B,CACA,kBAAA4/F,GACE,MACE3J,qBAAsBztE,EACtBxrB,MACEhP,GAAIgjE,IAEJ54E,KACJA,KAAK6jC,UAAUvoB,iBAAiB,YAAY,KAC1Ctb,KAAKyiH,YAAYvtC,UAAUplD,SAAS,6BAA8B,CAChEva,OAAQvV,KACRowC,OACAwoC,UACA,GAEN,GAEF,MAAMioC,WAA8BwB,GAClC,WAAA1jG,CAAY0mD,EAAYlnD,EAAU,MAChCspC,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,eAAgBpkG,GAASokG,aACzBC,sBAAsB,IA8C1B,qBA+BA,qBA3EExiH,KAAKynH,cAAgBpiD,EAAWzgD,KAAK6iG,aACvC,CACA,MAAAzvD,GACE,MAAM,KACJpzC,EAAI,YACJ69F,GACEziH,KACE0nH,EAAOjwG,SAASE,cAAc,KACpC+vG,EAAKhnG,aAAa,kBAAmBkE,EAAKhP,IAC1C,IAAI+xG,GAAU,EAiCd,OAhCI/iG,EAAK1X,KACPu1G,EAAYmF,kBAAkBF,EAAM9iG,EAAK1X,IAAK0X,EAAKijG,WACnDF,GAAU,GACD/iG,EAAKrU,QACdvQ,KAAK8nH,iBAAiBJ,EAAM9iG,EAAKrU,QACjCo3G,GAAU,GACD/iG,EAAK6N,YACdzyB,KAAK+nH,gBAAgBL,EAAM9iG,EAAK6N,YAChCk1F,GAAU,GACD/iG,EAAKojG,aACd,gBAAAhoH,KAAK,KAAL,KAAAA,KAAsB0nH,EAAM9iG,EAAKojG,aACjCL,GAAU,GACD/iG,EAAKomE,MACdhrF,KAAKioH,UAAUP,EAAM9iG,EAAKomE,MAC1B28B,GAAU,IAEN/iG,EAAKygG,UAAYzgG,EAAKygG,QAAQ6C,QAAUtjG,EAAKygG,QAAQ,aAAezgG,EAAKygG,QAAQ,gBAAkBrlH,KAAK6iH,iBAAmB7iH,KAAKg2D,eAClIh2D,KAAKmoH,cAAcT,EAAM9iG,GACzB+iG,GAAU,GAER/iG,EAAKwjG,WACPpoH,KAAKqoH,qBAAqBX,EAAM9iG,EAAKwjG,WACrCT,GAAU,GACD3nH,KAAKynH,gBAAkBE,IAChC3nH,KAAKioH,UAAUP,EAAM,IACrBC,GAAU,IAGd3nH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,kBACzB+/F,GACF3nH,KAAK6jC,UAAUlY,OAAO+7F,GAEjB1nH,KAAK6jC,SACd,CAIA,SAAAokF,CAAUP,EAAMY,GACdZ,EAAKnrG,KAAOvc,KAAKyiH,YAAY8F,mBAAmBD,GAChDZ,EAAKc,QAAU,KACTF,GACFtoH,KAAKyiH,YAAYgG,gBAAgBH,IAE5B,IAELA,GAA+B,KAAhBA,IACjB,gBAAAtoH,KAAK,KAAL,KAAAA,KAEJ,CACA,gBAAA8nH,CAAiBJ,EAAMn3G,GACrBm3G,EAAKnrG,KAAOvc,KAAKyiH,YAAYiG,aAAa,IAC1ChB,EAAKc,QAAU,KACbxoH,KAAKyiH,YAAYkG,mBAAmBp4G,IAC7B,GAET,gBAAAvQ,KAAK,KAAL,KAAAA,KACF,CACA,eAAA+nH,CAAgBL,EAAMj1F,GACpBi1F,EAAKnrG,KAAOvc,KAAKyiH,YAAYiG,aAAa,IAC1ChB,EAAKc,QAAU,KACbxoH,KAAK0iH,iBAAiBkG,mBAAmB5oH,KAAK6jC,UAAWpR,EAAWnG,QAASmG,EAAW/D,WACjF,GAET,gBAAA1uB,KAAK,KAAL,KAAAA,KACF,CASA,aAAAmoH,CAAcT,EAAM9iG,GAClB8iG,EAAKnrG,KAAOvc,KAAKyiH,YAAYiG,aAAa,IAC1C,MAAMzgH,EAAM,IAAIqwC,IAAI,CAAC,CAAC,SAAU,WAAY,CAAC,WAAY,aAAc,CAAC,aAAc,iBACtF,UAAWnvC,KAAQ7J,OAAOc,KAAKwkB,EAAKygG,SAAU,CAC5C,MAAMb,EAASv8G,EAAIxH,IAAI0I,GAClBq7G,IAGLkD,EAAKlD,GAAU,KACbxkH,KAAKyiH,YAAYvtC,UAAUplD,SAAS,yBAA0B,CAC5Dva,OAAQvV,KACRkuB,OAAQ,CACNtY,GAAIgP,EAAKhP,GACTzM,WAGG,GAEX,CACKu+G,EAAKc,UACRd,EAAKc,QAAU,KAAM,GAEvB,gBAAAxoH,KAAK,KAAL,KAAAA,KACF,CACA,oBAAAqoH,CAAqBX,EAAMU,GACzB,MAAMS,EAAmBnB,EAAKc,QAK9B,GAJKK,IACHnB,EAAKnrG,KAAOvc,KAAKyiH,YAAYiG,aAAa,KAE5C,gBAAA1oH,KAAK,KAAL,KAAAA,OACKA,KAAK8iH,cAKR,OAJA,EAAIx2D,EAAMhhD,MAAM,uHACXu9G,IACHnB,EAAKc,QAAU,KAAM,IAIzBd,EAAKc,QAAU,KACbK,MACA,MACEhC,OAAQiC,EACRC,KAAMC,EAAa,QACnBC,GACEb,EACEc,EAAY,GAClB,GAA+B,IAA3BJ,EAAgBjjH,QAAyC,IAAzBmjH,EAAcnjH,OAAc,CAC9D,MAAMsjH,EAAW,IAAIvvD,IAAIovD,GACzB,UAAWI,KAAaN,EAAiB,CACvC,MAAMjC,EAAS7mH,KAAK8iH,cAAcsG,IAAc,GAChD,UAAW,GACTxzG,KACGixG,EACHsC,EAASvhG,IAAIhS,EAEjB,CACA,UAAWixG,KAAUvnH,OAAOi8D,OAAOv7D,KAAK8iH,eACtC,UAAWuG,KAASxC,EACdsC,EAASvrD,IAAIyrD,EAAMzzG,MAAQqzG,GAC7BC,EAAUtnH,KAAKynH,EAIvB,MACE,UAAWxC,KAAUvnH,OAAOi8D,OAAOv7D,KAAK8iH,eACtCoG,EAAUtnH,QAAQilH,GAGtB,MAAMyC,EAAUtpH,KAAK+zD,kBACfw1D,EAAS,GACf,UAAWF,KAASH,EAAW,CAC7B,MAAM,GACJtzG,GACEyzG,EAEJ,OADAE,EAAO3nH,KAAKgU,GACJyzG,EAAMt8G,MACZ,IAAK,OACH,CACE,MAAM5M,EAAQkpH,EAAMnpF,cAAgB,GACpCopF,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,UAEF,KACF,CACF,IAAK,WACL,IAAK,cACH,CACE,MAAMA,EAAQkpH,EAAMnpF,eAAiBmpF,EAAMtC,aAC3CuC,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,UAEF,KACF,CACF,IAAK,WACL,IAAK,UACH,CACE,MAAMA,EAAQkpH,EAAMnpF,cAAgB,GACpCopF,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,UAEF,KACF,CACF,QACE,SAEJ,MAAM8mH,EAAaxvG,SAAS6Q,cAAc,qBAAqB1S,OAC1DqxG,IAEOvG,GAAqB9iD,IAAIqpD,GAIrCA,EAAWp5F,cAAc,IAAI27F,MAAM,eAHjC,EAAIl9D,EAAMhhD,MAAM,+CAA+CsK,KAInE,CAWA,OAVI5V,KAAK6iH,iBACP7iH,KAAKyiH,YAAYvtC,UAAUplD,SAAS,yBAA0B,CAC5Dva,OAAQvV,KACRkuB,OAAQ,CACNtY,GAAI,MACJgyF,IAAK2hB,EACLpgH,KAAM,gBAIL,CAAK,CAEhB,EApKA,gBAAgB,WACdnJ,KAAK6jC,UAAUnjB,aAAa,qBAAsB,GACpD,EA6BA,gBAAgB,SAACgnG,EAAMn3G,GACrBm3G,EAAKnrG,KAAOvc,KAAKyiH,YAAYiG,aAAa,IAC1ChB,EAAKc,QAAU,KACbxoH,KAAKyiH,YAAYgH,mBAAmBl5G,IAC7B,GAET,gBAAAvQ,KAAK,KAAL,KAAAA,KACF,EAgIF,MAAM8gH,WAA8BuB,GAClC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,GAElB,CACA,MAAAtqD,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,kBAC7B,MAAMuqD,EAAQ16D,SAASE,cAAc,OAWrC,OAVAw6D,EAAMvxE,IAAMZ,KAAK2iH,mBAAqB,cAAgB3iH,KAAK4kB,KAAKzb,KAAKR,cAAgB,OACrFwpE,EAAMu3C,IAAM,wBACZv3C,EAAMh/C,QAAQw2F,OAAS,uBACvBx3C,EAAMh/C,QAAQy2F,SAAWl8G,KAAKC,UAAU,CACtCZ,KAAM/M,KAAK4kB,KAAKzb,QAEbnJ,KAAK4kB,KAAK2+F,UAAYvjH,KAAKsjH,cAC9BtjH,KAAKumH,eAEPvmH,KAAK6jC,UAAUlY,OAAOwmD,GACfnyE,KAAK6jC,SACd,EAEF,MAAM29E,WAAgCa,GACpC,MAAArqD,GAIE,OAHIh4D,KAAK4kB,KAAKilG,kBACZ7pH,KAAK6jC,UAAUkhF,MAAQ/kH,KAAK4kB,KAAKilG,iBAE5B7pH,KAAK6jC,SACd,CACA,wBAAAimF,CAAyB1zG,GACnBpW,KAAK4kB,KAAK82E,eAC8B,WAAtCtlF,EAAQ2zG,iBAAiBC,WAC3B5zG,EAAQ2zG,gBAAgB52E,QAAS,GAEnC/8B,EAAQ+8B,QAAS,EAErB,CACA,eAAA82E,CAAgB1uG,GACd,MAAM,MACJ0sC,EAAK,MACLC,GACEoE,EAAMxX,YAAYkT,SACtB,OAAOC,GAAS1sC,EAAM0wD,SAAW/jB,GAAS3sC,EAAM+1D,OAClD,CACA,iBAAA44C,CAAkB9zG,EAAS+zG,EAAaC,EAAU1kG,EAAW2kG,GACvDD,EAASz2G,SAAS,SACpByC,EAAQkF,iBAAiB8uG,GAAU7uG,IACjCvb,KAAKyiH,YAAYvtC,UAAUplD,SAAS,yBAA0B,CAC5Dva,OAAQvV,KACRkuB,OAAQ,CACNtY,GAAI5V,KAAK4kB,KAAKhP,GACdzM,KAAMuc,EACNvlB,MAAOkqH,EAAY9uG,GACnB3S,MAAO2S,EAAM81D,SACbi5C,SAAUtqH,KAAKiqH,gBAAgB1uG,KAEjC,IAGJnF,EAAQkF,iBAAiB8uG,GAAU7uG,IACjC,GAAiB,SAAb6uG,EAAqB,CACvB,IAAKD,EAAYI,UAAYhvG,EAAM2tD,cACjC,OAEFihD,EAAYI,SAAU,CACxB,MAAO,GAAiB,UAAbH,EAAsB,CAC/B,GAAID,EAAYI,QACd,OAEFJ,EAAYI,SAAU,CACxB,CACKF,GAGLrqH,KAAKyiH,YAAYvtC,UAAUplD,SAAS,yBAA0B,CAC5Dva,OAAQvV,KACRkuB,OAAQ,CACNtY,GAAI5V,KAAK4kB,KAAKhP,GACdzM,KAAMuc,EACNvlB,MAAOkqH,EAAY9uG,KAErB,GAGR,CACA,kBAAAivG,CAAmBp0G,EAAS+zG,EAAav4C,EAAO64C,GAC9C,UAAYL,EAAU1kG,KAAcksD,GAChB,WAAdlsD,GAA0B1lB,KAAK4kB,KAAKygG,UAAU3/F,MAC9B,UAAdA,GAAuC,SAAdA,IAC3BykG,IAAgB,CACdI,SAAS,IAGbvqH,KAAKkqH,kBAAkB9zG,EAAS+zG,EAAaC,EAAU1kG,EAAW+kG,GAChD,UAAd/kG,GAA0B1lB,KAAK4kB,KAAKygG,SAASqF,KAExB,SAAdhlG,GAAyB1lB,KAAK4kB,KAAKygG,SAASsF,OACrD3qH,KAAKkqH,kBAAkB9zG,EAAS+zG,EAAa,QAAS,QAAS,MAF/DnqH,KAAKkqH,kBAAkB9zG,EAAS+zG,EAAa,OAAQ,OAAQ,MAMrE,CACA,mBAAAS,CAAoBx0G,GAClB,MAAMq+D,EAAQz0E,KAAK4kB,KAAKo9E,iBAAmB,KAC3C5rF,EAAQwB,MAAMoqF,gBAA4B,OAAVvtB,EAAiB,cAAgBnoB,EAAMv2C,KAAKwyC,aAAaksB,EAAM,GAAIA,EAAM,GAAIA,EAAM,GACrH,CACA,aAAAo2C,CAAcz0G,GACZ,MAAM00G,EAAiB,CAAC,OAAQ,SAAU,UACpC,UACJtL,GACEx/G,KAAK4kB,KAAK26F,sBACR53B,EAAW3nF,KAAK4kB,KAAK26F,sBAAsB53B,UAp1B3B,EAq1BhB/vE,EAAQxB,EAAQwB,MACtB,IAAImzG,EACJ,MACMC,EAAoB5rH,GAAKqkB,KAAKonD,MAAM,GAAKzrE,GAAK,GACpD,GAAIY,KAAK4kB,KAAKqmG,UAAW,CACvB,MAAMhpF,EAASxe,KAAKunC,IAAIhrD,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAHzC,GAKZyhE,EAAajpF,GADGxe,KAAKonD,MAAM5oC,GAAUqqB,EAAM9X,YAAcmzC,KAAc,GAE7EojC,EAAmBtnG,KAAKE,IAAIgkE,EAAUqjC,EAAkBE,EAAa5+D,EAAM9X,aAC7E,KAAO,CACL,MAAMvS,EAASxe,KAAKunC,IAAIhrD,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GARzC,GASlBshE,EAAmBtnG,KAAKE,IAAIgkE,EAAUqjC,EAAkB/oF,EAASqqB,EAAM9X,aACzE,CACA58B,EAAM+vE,SAAW,QAAQojC,6BACzBnzG,EAAM68D,MAAQnoB,EAAMv2C,KAAKwyC,aAAai3D,EAAU,GAAIA,EAAU,GAAIA,EAAU,IAC5C,OAA5Bx/G,KAAK4kB,KAAKumG,gBACZvzG,EAAMwzG,UAAYN,EAAe9qH,KAAK4kB,KAAKumG,eAE/C,CACA,YAAAjG,CAAa9uG,EAASqf,GAChBA,EACFrf,EAAQsK,aAAa,YAAY,GAEjCtK,EAAQ6b,gBAAgB,YAE1B7b,EAAQsK,aAAa,gBAAiB+U,EACxC,EAEF,MAAMurF,WAAoCQ,GACxC,WAAA7iG,CAAY0mD,GAEV5d,MAAM4d,EAAY,CAChBi9C,aAFmBj9C,EAAWu9C,cAAgBv9C,EAAWzgD,KAAKymG,iBAAmBhmD,EAAWzgD,KAAK0mG,YAIrG,CACA,qBAAAC,CAAsBx/G,EAAMe,EAAK3M,EAAOqrH,GACtC,MAAMlC,EAAUtpH,KAAK+zD,kBACrB,UAAW39C,KAAWpW,KAAK2mH,mBAAmB56G,EAAK5C,KAAM4C,EAAK6J,IACxDQ,EAAQ6wG,aACV7wG,EAAQ6wG,WAAWn6G,GAAO3M,GAE5BmpH,EAAQ9kD,SAASpuD,EAAQR,GAAI,CAC3B,CAAC41G,GAAerrH,GAGtB,CACA,MAAA63D,GACE,MAAMsxD,EAAUtpH,KAAK+zD,kBACfn+C,EAAK5V,KAAK4kB,KAAKhP,GACrB5V,KAAK6jC,UAAUmL,UAAUpnB,IAAI,wBAC7B,IAAIxR,EAAU,KACd,GAAIpW,KAAK4iH,YAAa,CACpB,MAAM6C,EAAa6D,EAAQjlD,SAASzuD,EAAI,CACtCzV,MAAOH,KAAK4kB,KAAK0mG,aAEnB,IAAIp0G,EAAcuuG,EAAWtlH,OAAS,GACtC,MAAMsrH,EAASnC,EAAQjlD,SAASzuD,EAAI,CAClC81G,UAAW1rH,KAAK4kB,KAAK6mG,SACpBC,UACCD,GAAUv0G,EAAYrR,OAAS4lH,IACjCv0G,EAAcA,EAAYjK,MAAM,EAAGw+G,IAErC,IAAIE,EAAuBlG,EAAWmG,gBAAkB5rH,KAAK4kB,KAAK1N,aAAazK,KAAK,OAAS,KACzFk/G,GAAwB3rH,KAAK4kB,KAAKinG,OACpCF,EAAuBA,EAAqBpzE,WAAW,OAAQ,KAEjE,MAAM4xE,EAAc,CAClB2B,UAAW50G,EACX00G,eAAgBD,EAChBI,mBAAoB,KACpBC,UAAW,EACXzB,SAAS,GAEPvqH,KAAK4kB,KAAKqmG,WACZ70G,EAAUqB,SAASE,cAAc,YACjCvB,EAAQc,YAAcy0G,GAAwBz0G,EAC1ClX,KAAK4kB,KAAKqnG,cACZ71G,EAAQwB,MAAMs0G,UAAY,YAG5B91G,EAAUqB,SAASE,cAAc,SACjCvB,EAAQrJ,KAAO,OACfqJ,EAAQsK,aAAa,QAASirG,GAAwBz0G,GAClDlX,KAAK4kB,KAAKqnG,cACZ71G,EAAQwB,MAAMu0G,UAAY,WAG1BnsH,KAAK4kB,KAAK82E,eACZtlF,EAAQ+8B,QAAS,GAEnButE,GAAqB94F,IAAIxR,GACzBA,EAAQsK,aAAa,kBAAmB9K,GACxCQ,EAAQ2X,SAAW/tB,KAAK4kB,KAAKwnG,SAC7Bh2G,EAAQjN,KAAOnJ,KAAK4kB,KAAKwkG,UACzBhzG,EAAQssB,SAAW+9E,GACnBzgH,KAAKklH,aAAa9uG,EAASpW,KAAK4kB,KAAKqgG,UACjCwG,IACFr1G,EAAQi2G,UAAYZ,GAEtBr1G,EAAQkF,iBAAiB,SAASC,IAChC+tG,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOob,EAAME,OAAOtb,QAEtBH,KAAKurH,sBAAsBn1G,EAAS,QAASmF,EAAME,OAAOtb,MAAO,SACjEgqH,EAAYyB,eAAiB,IAAI,IAEnCx1G,EAAQkF,iBAAiB,aAAaC,IACpC,MAAM2kB,EAAelgC,KAAK4kB,KAAK0nG,mBAAqB,GACpDl2G,EAAQjW,MAAQgqH,EAAY2B,UAAY5rF,EACxCiqF,EAAYyB,eAAiB,IAAI,IAEnC,IAAIW,EAAehxG,IACjB,MAAM,eACJqwG,GACEzB,EACAyB,UACFrwG,EAAME,OAAOtb,MAAQyrH,GAEvBrwG,EAAME,OAAOorB,WAAa,CAAC,EAE7B,GAAI7mC,KAAK6iH,iBAAmB7iH,KAAKg2D,aAAc,CAC7C5/C,EAAQkF,iBAAiB,SAASC,IAChC,GAAI4uG,EAAYI,QACd,OAEF,MAAM,OACJ9uG,GACEF,EACA4uG,EAAY2B,YACdrwG,EAAOtb,MAAQgqH,EAAY2B,WAE7B3B,EAAY4B,mBAAqBtwG,EAAOtb,MACxCgqH,EAAY6B,UAAY,EACxB7B,EAAYI,SAAU,CAAI,IAE5Bn0G,EAAQkF,iBAAiB,qBAAqBgqG,IAC5CtlH,KAAK8pH,yBAAyBxE,EAAQ7pG,QACtC,MAAM4pG,EAAU,CACd,KAAAllH,CAAMob,GACJ4uG,EAAY2B,UAAYvwG,EAAM2S,OAAO/tB,OAAS,GAC9CmpH,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOgqH,EAAY2B,UAAUphH,aAE/B6Q,EAAME,OAAOtb,MAAQgqH,EAAY2B,SACnC,EACA,cAAAF,CAAerwG,GACb,MAAM,eACJqwG,GACErwG,EAAM2S,OACVi8F,EAAYyB,eAAiBA,EACzBA,SAA2DrwG,EAAME,SAAWhE,SAASk6B,gBACvFp2B,EAAME,OAAOtb,MAAQyrH,GAEvBtC,EAAQ9kD,SAAS5uD,EAAI,CACnBg2G,kBAEJ,EACA,QAAAY,CAASjxG,GACPA,EAAME,OAAOgxG,qBAAqBlxG,EAAM2S,OAAOs+F,SACjD,EACAd,UAAWnwG,IACT,MAAM,UACJmwG,GACEnwG,EAAM2S,QACJ,OACJzS,GACEF,EACJ,GAAkB,IAAdmwG,EAEF,YADAjwG,EAAOwW,gBAAgB,aAGzBxW,EAAOiF,aAAa,YAAagrG,GACjC,IAAIvrH,EAAQgqH,EAAY2B,WACnB3rH,GAASA,EAAM0F,QAAU6lH,IAG9BvrH,EAAQA,EAAM8M,MAAM,EAAGy+G,GACvBjwG,EAAOtb,MAAQgqH,EAAY2B,UAAY3rH,EACvCmpH,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,UAEFH,KAAKyiH,YAAYvtC,UAAUplD,SAAS,yBAA0B,CAC5Dva,OAAQvV,KACRkuB,OAAQ,CACNtY,KACAzM,KAAM,YACNhJ,QACAusH,YAAY,EACZV,UAAW,EACXW,SAAUlxG,EAAOmxG,eACjBC,OAAQpxG,EAAOqxG,gBAEjB,GAGN9sH,KAAKolH,0BAA0BC,EAASC,EAAQ,IAElDlvG,EAAQkF,iBAAiB,WAAWC,IAClC4uG,EAAY6B,UAAY,EACxB,IAAIA,GAAa,EAQjB,GAPkB,WAAdzwG,EAAMzO,IACRk/G,EAAY,EACW,UAAdzwG,EAAMzO,KAAoB9M,KAAK4kB,KAAKqmG,UAEtB,QAAd1vG,EAAMzO,MACfq9G,EAAY6B,UAAY,GAFxBA,EAAY,GAIK,IAAfA,EACF,OAEF,MAAM,MACJ7rH,GACEob,EAAME,OACN0uG,EAAY4B,qBAAuB5rH,IAGvCgqH,EAAY4B,mBAAqB5rH,EACjCgqH,EAAY2B,UAAY3rH,EACxBH,KAAKyiH,YAAYvtC,UAAUplD,SAAS,yBAA0B,CAC5Dva,OAAQvV,KACRkuB,OAAQ,CACNtY,KACAzM,KAAM,YACNhJ,QACAusH,YAAY,EACZV,YACAW,SAAUpxG,EAAME,OAAOmxG,eACvBC,OAAQtxG,EAAME,OAAOqxG,gBAEvB,IAEJ,MAAMC,EAAgBR,EACtBA,EAAe,KACfn2G,EAAQkF,iBAAiB,QAAQC,IAC/B,IAAK4uG,EAAYI,UAAYhvG,EAAM2tD,cACjC,OAEFihD,EAAYI,SAAU,EACtB,MAAM,MACJpqH,GACEob,EAAME,OACV0uG,EAAY2B,UAAY3rH,EACpBgqH,EAAY4B,qBAAuB5rH,GACrCH,KAAKyiH,YAAYvtC,UAAUplD,SAAS,yBAA0B,CAC5Dva,OAAQvV,KACRkuB,OAAQ,CACNtY,KACAzM,KAAM,YACNhJ,QACAusH,YAAY,EACZV,UAAW7B,EAAY6B,UACvBW,SAAUpxG,EAAME,OAAOmxG,eACvBC,OAAQtxG,EAAME,OAAOqxG,gBAI3BC,EAAcxxG,EAAM,IAElBvb,KAAK4kB,KAAKygG,SAAS2H,WACrB52G,EAAQkF,iBAAiB,eAAeC,IACtC4uG,EAAY4B,mBAAqB,KACjC,MAAM,KACJnnG,EAAI,OACJnJ,GACEF,GACE,MACJpb,EAAK,eACLysH,EAAc,aACdE,GACErxG,EACJ,IAAIkxG,EAAWC,EACbC,EAASC,EACX,OAAQvxG,EAAM0xG,WACZ,IAAK,qBACH,CACE,MAAM70G,EAAQjY,EAAMopB,UAAU,EAAGqjG,GAAgBx0G,MAAM,cACnDA,IACFu0G,GAAYv0G,EAAM,GAAGvS,QAEvB,KACF,CACF,IAAK,oBACH,CACE,MAAMuS,EAAQjY,EAAMopB,UAAUqjG,GAAgBx0G,MAAM,cAChDA,IACFy0G,GAAUz0G,EAAM,GAAGvS,QAErB,KACF,CACF,IAAK,wBACC+mH,IAAmBE,IACrBH,GAAY,GAEd,MACF,IAAK,uBACCC,IAAmBE,IACrBD,GAAU,GAIhBtxG,EAAMwW,iBACN/xB,KAAKyiH,YAAYvtC,UAAUplD,SAAS,yBAA0B,CAC5Dva,OAAQvV,KACRkuB,OAAQ,CACNtY,KACAzM,KAAM,YACNhJ,QACA+sH,OAAQtoG,GAAQ,GAChB8nG,YAAY,EACZC,WACAE,WAEF,IAGN7sH,KAAKwqH,mBAAmBp0G,EAAS+zG,EAAa,CAAC,CAAC,QAAS,SAAU,CAAC,OAAQ,QAAS,CAAC,YAAa,cAAe,CAAC,aAAc,eAAgB,CAAC,aAAc,cAAe,CAAC,UAAW,cAAc5uG,GAASA,EAAME,OAAOtb,OACjO,CAIA,GAHIosH,GACFn2G,EAAQkF,iBAAiB,OAAQixG,GAE/BvsH,KAAK4kB,KAAKinG,KAAM,CAClB,MACMsB,GADantH,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,IACvBgiE,EAC/Br1G,EAAQ44B,UAAUpnB,IAAI,QACtBxR,EAAQwB,MAAMw1G,cAAgB,QAAQD,kCACxC,CACF,MACE/2G,EAAUqB,SAASE,cAAc,OACjCvB,EAAQc,YAAclX,KAAK4kB,KAAK0mG,WAChCl1G,EAAQwB,MAAMy1G,cAAgB,SAC9Bj3G,EAAQwB,MAAMC,QAAU,aAM1B,OAJA7X,KAAK6qH,cAAcz0G,GACnBpW,KAAK4qH,oBAAoBx0G,GACzBpW,KAAKwlH,4BAA4BpvG,GACjCpW,KAAK6jC,UAAUlY,OAAOvV,GACfpW,KAAK6jC,SACd,EAEF,MAAM09E,WAAyCC,GAC7C,WAAA7iG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,eAAgBj9C,EAAWzgD,KAAK82E,cAEpC,EAEF,MAAM0lB,WAAwCI,GAC5C,WAAA7iG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,aAAcj9C,EAAWu9C,aAE7B,CACA,MAAA5qD,GACE,MAAMsxD,EAAUtpH,KAAK+zD,kBACfnvC,EAAO5kB,KAAK4kB,KACZhP,EAAKgP,EAAKhP,GAChB,IAAIzV,EAAQmpH,EAAQjlD,SAASzuD,EAAI,CAC/BzV,MAAOykB,EAAKoiG,cAAgBpiG,EAAK0mG,aAChCnrH,MACkB,iBAAVA,IACTA,EAAkB,QAAVA,EACRmpH,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,WAGJH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,yBAA0B,YACvD,MAAMxR,EAAUqB,SAASE,cAAc,SAmDvC,OAlDA+oG,GAAqB94F,IAAIxR,GACzBA,EAAQsK,aAAa,kBAAmB9K,GACxCQ,EAAQ2X,SAAWnJ,EAAKwnG,SACxBpsH,KAAKklH,aAAa9uG,EAASpW,KAAK4kB,KAAKqgG,UACrC7uG,EAAQrJ,KAAO,WACfqJ,EAAQjN,KAAOyb,EAAKwkG,UAChBjpH,GACFiW,EAAQsK,aAAa,WAAW,GAElCtK,EAAQsK,aAAa,cAAekE,EAAKoiG,aACzC5wG,EAAQssB,SAAW+9E,GACnBrqG,EAAQkF,iBAAiB,UAAUC,IACjC,MAAM,KACJpS,EAAI,QACJmkH,GACE/xG,EAAME,OACV,UAAW8xG,KAAYvtH,KAAK2mH,mBAAmBx9G,EAAMyM,GAAK,CACxD,MAAM43G,EAAaF,GAAWC,EAASvG,cAAgBpiG,EAAKoiG,YACxDuG,EAAStG,aACXsG,EAAStG,WAAWqG,QAAUE,GAEhClE,EAAQ9kD,SAAS+oD,EAAS33G,GAAI,CAC5BzV,MAAOqtH,GAEX,CACAlE,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOmtH,GACP,IAEJl3G,EAAQkF,iBAAiB,aAAaC,IACpC,MAAM2kB,EAAetb,EAAK0nG,mBAAqB,MAC/C/wG,EAAME,OAAO6xG,QAAUptF,IAAiBtb,EAAKoiG,WAAW,IAEtDhnH,KAAK6iH,iBAAmB7iH,KAAKg2D,eAC/B5/C,EAAQkF,iBAAiB,qBAAqBgqG,IAC5C,MAAMD,EAAU,CACd,KAAAllH,CAAMob,GACJA,EAAME,OAAO6xG,QAAiC,QAAvB/xG,EAAM2S,OAAO/tB,MACpCmpH,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOob,EAAME,OAAO6xG,SAExB,GAEFttH,KAAKolH,0BAA0BC,EAASC,EAAQ,IAElDtlH,KAAKwqH,mBAAmBp0G,EAAS,KAAM,CAAC,CAAC,SAAU,YAAa,CAAC,SAAU,UAAW,CAAC,QAAS,SAAU,CAAC,OAAQ,QAAS,CAAC,YAAa,cAAe,CAAC,aAAc,eAAgB,CAAC,aAAc,cAAe,CAAC,UAAW,cAAcmF,GAASA,EAAME,OAAO6xG,WAExQttH,KAAK4qH,oBAAoBx0G,GACzBpW,KAAKwlH,4BAA4BpvG,GACjCpW,KAAK6jC,UAAUlY,OAAOvV,GACfpW,KAAK6jC,SACd,EAEF,MAAMq9E,WAA2CM,GAC/C,WAAA7iG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,aAAcj9C,EAAWu9C,aAE7B,CACA,MAAA5qD,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,yBAA0B,eACvD,MAAM0hG,EAAUtpH,KAAK+zD,kBACfnvC,EAAO5kB,KAAK4kB,KACZhP,EAAKgP,EAAKhP,GAChB,IAAIzV,EAAQmpH,EAAQjlD,SAASzuD,EAAI,CAC/BzV,MAAOykB,EAAK0mG,aAAe1mG,EAAK6oG,cAC/BttH,MACkB,iBAAVA,IACTA,EAAQA,IAAUykB,EAAK6oG,YACvBnE,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,WAGJ,MAAMiW,EAAUqB,SAASE,cAAc,SA6BvC,GA5BA+oG,GAAqB94F,IAAIxR,GACzBA,EAAQsK,aAAa,kBAAmB9K,GACxCQ,EAAQ2X,SAAWnJ,EAAKwnG,SACxBpsH,KAAKklH,aAAa9uG,EAASpW,KAAK4kB,KAAKqgG,UACrC7uG,EAAQrJ,KAAO,QACfqJ,EAAQjN,KAAOyb,EAAKwkG,UAChBjpH,GACFiW,EAAQsK,aAAa,WAAW,GAElCtK,EAAQssB,SAAW+9E,GACnBrqG,EAAQkF,iBAAiB,UAAUC,IACjC,MAAM,KACJpS,EAAI,QACJmkH,GACE/xG,EAAME,OACV,UAAWiyG,KAAS1tH,KAAK2mH,mBAAmBx9G,EAAMyM,GAChD0zG,EAAQ9kD,SAASkpD,EAAM93G,GAAI,CACzBzV,OAAO,IAGXmpH,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOmtH,GACP,IAEJl3G,EAAQkF,iBAAiB,aAAaC,IACpC,MAAM2kB,EAAetb,EAAK0nG,kBAC1B/wG,EAAME,OAAO6xG,QAAUptF,SAAuDA,IAAiBtb,EAAK6oG,WAAW,IAE7GztH,KAAK6iH,iBAAmB7iH,KAAKg2D,aAAc,CAC7C,MAAM23D,EAAiB/oG,EAAK6oG,YAC5Br3G,EAAQkF,iBAAiB,qBAAqBgqG,IAC5C,MAAMD,EAAU,CACdllH,MAAOob,IACL,MAAM+xG,EAAUK,IAAmBpyG,EAAM2S,OAAO/tB,MAChD,UAAWutH,KAAS1tH,KAAK2mH,mBAAmBprG,EAAME,OAAOtS,MAAO,CAC9D,MAAMqkH,EAAaF,GAAWI,EAAM93G,KAAOA,EACvC83G,EAAMzG,aACRyG,EAAMzG,WAAWqG,QAAUE,GAE7BlE,EAAQ9kD,SAASkpD,EAAM93G,GAAI,CACzBzV,MAAOqtH,GAEX,IAGJxtH,KAAKolH,0BAA0BC,EAASC,EAAQ,IAElDtlH,KAAKwqH,mBAAmBp0G,EAAS,KAAM,CAAC,CAAC,SAAU,YAAa,CAAC,SAAU,UAAW,CAAC,QAAS,SAAU,CAAC,OAAQ,QAAS,CAAC,YAAa,cAAe,CAAC,aAAc,eAAgB,CAAC,aAAc,cAAe,CAAC,UAAW,cAAcmF,GAASA,EAAME,OAAO6xG,SACxQ,CAIA,OAHAttH,KAAK4qH,oBAAoBx0G,GACzBpW,KAAKwlH,4BAA4BpvG,GACjCpW,KAAK6jC,UAAUlY,OAAOvV,GACfpW,KAAK6jC,SACd,EAEF,MAAMw9E,WAA0CR,GAC9C,WAAAliG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBk9C,aAAcl9C,EAAWzgD,KAAKymG,eAElC,CACA,MAAArzD,GACE,MAAMn0B,EAAY4jB,MAAMuQ,SACxBn0B,EAAUmL,UAAUpnB,IAAI,yBAA0B,cAC9C5nB,KAAK4kB,KAAKilG,kBACZhmF,EAAUkhF,MAAQ/kH,KAAK4kB,KAAKilG,iBAE9B,MAAM+D,EAAc/pF,EAAUgqF,UAO9B,OANI7tH,KAAK6iH,iBAAmB7iH,KAAKg2D,cAAgB43D,IAC/C5tH,KAAKwlH,4BAA4BoI,GACjCA,EAAYtyG,iBAAiB,qBAAqBgqG,IAChDtlH,KAAKolH,0BAA0B,CAAC,EAAGE,EAAQ,KAGxCzhF,CACT,EAEF,MAAMy9E,WAAsCE,GAC1C,WAAA7iG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,aAAcj9C,EAAWu9C,aAE7B,CACA,MAAA5qD,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,0BAC7B,MAAM0hG,EAAUtpH,KAAK+zD,kBACfn+C,EAAK5V,KAAK4kB,KAAKhP,GACf6vG,EAAa6D,EAAQjlD,SAASzuD,EAAI,CACtCzV,MAAOH,KAAK4kB,KAAK0mG,aAEbwC,EAAgBr2G,SAASE,cAAc,UAC7C+oG,GAAqB94F,IAAIkmG,GACzBA,EAAcptG,aAAa,kBAAmB9K,GAC9Ck4G,EAAc//F,SAAW/tB,KAAK4kB,KAAKwnG,SACnCpsH,KAAKklH,aAAa4I,EAAe9tH,KAAK4kB,KAAKqgG,UAC3C6I,EAAc3kH,KAAOnJ,KAAK4kB,KAAKwkG,UAC/B0E,EAAcprF,SAAW+9E,GACzB,IAAIsN,EAAkB/tH,KAAK4kB,KAAKopG,OAAShuH,KAAK4kB,KAAKzG,QAAQtY,OAAS,EAC/D7F,KAAK4kB,KAAKopG,QACbF,EAAc/gG,KAAO/sB,KAAK4kB,KAAKzG,QAAQtY,OACnC7F,KAAK4kB,KAAKqpG,cACZH,EAAcI,UAAW,IAG7BJ,EAAcxyG,iBAAiB,aAAaC,IAC1C,MAAM2kB,EAAelgC,KAAK4kB,KAAK0nG,kBAC/B,UAAW6B,KAAUL,EAAc3vG,QACjCgwG,EAAOC,SAAWD,EAAOhuH,QAAU+/B,CACrC,IAEF,UAAWiuF,KAAUnuH,KAAK4kB,KAAKzG,QAAS,CACtC,MAAMkwG,EAAgB52G,SAASE,cAAc,UAC7C02G,EAAcn3G,YAAci3G,EAAOG,aACnCD,EAAcluH,MAAQguH,EAAOnH,YACzBvB,EAAWtlH,MAAMwT,SAASw6G,EAAOnH,eACnCqH,EAAc3tG,aAAa,YAAY,GACvCqtG,GAAkB,GAEpBD,EAAcniG,OAAO0iG,EACvB,CACA,IAAIE,EAAmB,KACvB,GAAIR,EAAiB,CACnB,MAAMS,EAAoB/2G,SAASE,cAAc,UACjD62G,EAAkBruH,MAAQ,IAC1BquH,EAAkB9tG,aAAa,UAAU,GACzC8tG,EAAkB9tG,aAAa,YAAY,GAC3CotG,EAAc5/C,QAAQsgD,GACtBD,EAAmB,KACjBC,EAAkB1nG,SAClBgnG,EAAchrG,oBAAoB,QAASyrG,GAC3CA,EAAmB,IAAI,EAEzBT,EAAcxyG,iBAAiB,QAASizG,EAC1C,CACA,MAAMlqD,EAAWoqD,IACf,MAAMtlH,EAAOslH,EAAW,QAAU,eAC5B,QACJtwG,EAAO,SACP+vG,GACEJ,EACJ,OAAKI,EAGEvjH,MAAMpL,UAAU2G,OAAOzG,KAAK0e,GAASgwG,GAAUA,EAAOC,WAAUnmH,KAAIkmH,GAAUA,EAAOhlH,MAFxD,IAA3BgV,EAAQuwG,cAAuB,KAAOvwG,EAAQA,EAAQuwG,eAAevlH,EAEoB,EAEpG,IAAIwlH,EAAiBtqD,GAAS,GAC9B,MAAMuqD,EAAWrzG,IACf,MAAM4C,EAAU5C,EAAME,OAAO0C,QAC7B,OAAOxT,MAAMpL,UAAU0I,IAAIxI,KAAK0e,GAASgwG,IAChC,CACLG,aAAcH,EAAOj3G,YACrB8vG,YAAamH,EAAOhuH,SAEtB,EA+IJ,OA7IIH,KAAK6iH,iBAAmB7iH,KAAKg2D,cAC/B83D,EAAcxyG,iBAAiB,qBAAqBgqG,IAClD,MAAMD,EAAU,CACd,KAAAllH,CAAMob,GACJgzG,MACA,MAAMpuH,EAAQob,EAAM2S,OAAO/tB,MACrBo7D,EAAS,IAAI3B,IAAIjvD,MAAMC,QAAQzK,GAASA,EAAQ,CAACA,IACvD,UAAWguH,KAAUL,EAAc3vG,QACjCgwG,EAAOC,SAAW7yD,EAAOqC,IAAIuwD,EAAOhuH,OAEtCmpH,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOkkE,GAAS,KAElBsqD,EAAiBtqD,GAAS,EAC5B,EACA,iBAAAwqD,CAAkBtzG,GAChBuyG,EAAcI,UAAW,CAC3B,EACA,MAAApnG,CAAOvL,GACL,MAAM4C,EAAU2vG,EAAc3vG,QACxB7U,EAAQiS,EAAM2S,OAAOpH,OAC3B3I,EAAQ7U,GAAO8kH,UAAW,EAC1BN,EAAchnG,OAAOxd,GACjB6U,EAAQtY,OAAS,IAER,IADD8E,MAAMpL,UAAUuvH,UAAUrvH,KAAK0e,GAASgwG,GAAUA,EAAOC,aAEjEjwG,EAAQ,GAAGiwG,UAAW,GAG1B9E,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOkkE,GAAS,GAChB3J,MAAOk0D,EAASrzG,KAElBozG,EAAiBtqD,GAAS,EAC5B,EACA,KAAAz1D,CAAM2M,GACJ,KAAgC,IAAzBuyG,EAAcjoH,QACnBioH,EAAchnG,OAAO,GAEvBwiG,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAO,KACPu6D,MAAO,KAETi0D,EAAiBtqD,GAAS,EAC5B,EACA,MAAAmgB,CAAOjpE,GACL,MAAM,MACJjS,EAAK,aACLglH,EAAY,YACZtH,GACEzrG,EAAM2S,OAAOs2D,OACXuqC,EAAcjB,EAAcp0F,SAASpwB,GACrC+kH,EAAgB52G,SAASE,cAAc,UAC7C02G,EAAcn3G,YAAco3G,EAC5BD,EAAcluH,MAAQ6mH,EAClB+H,EACFA,EAAYC,OAAOX,GAEnBP,EAAcniG,OAAO0iG,GAEvB/E,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOkkE,GAAS,GAChB3J,MAAOk0D,EAASrzG,KAElBozG,EAAiBtqD,GAAS,EAC5B,EACA,KAAA3J,CAAMn/C,GACJ,MAAM,MACJm/C,GACEn/C,EAAM2S,OACV,KAAgC,IAAzB4/F,EAAcjoH,QACnBioH,EAAchnG,OAAO,GAEvB,UAAW5T,KAAQwnD,EAAO,CACxB,MAAM,aACJ4zD,EAAY,YACZtH,GACE9zG,EACEm7G,EAAgB52G,SAASE,cAAc,UAC7C02G,EAAcn3G,YAAco3G,EAC5BD,EAAcluH,MAAQ6mH,EACtB8G,EAAcniG,OAAO0iG,EACvB,CACIP,EAAc3vG,QAAQtY,OAAS,IACjCioH,EAAc3vG,QAAQ,GAAGiwG,UAAW,GAEtC9E,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOkkE,GAAS,GAChB3J,MAAOk0D,EAASrzG,KAElBozG,EAAiBtqD,GAAS,EAC5B,EACA,OAAA4qD,CAAQ1zG,GACN,MAAM0zG,EAAU,IAAIr1D,IAAIr+C,EAAM2S,OAAO+gG,SACrC,UAAWd,KAAU5yG,EAAME,OAAO0C,QAChCgwG,EAAOC,SAAWa,EAAQrxD,IAAIuwD,EAAO7kH,OAEvCggH,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOkkE,GAAS,KAElBsqD,EAAiBtqD,GAAS,EAC5B,EACA,QAAA44C,CAAS1hG,GACPA,EAAME,OAAOsS,UAAYxS,EAAM2S,OAAO+uF,QACxC,GAEFj9G,KAAKolH,0BAA0BC,EAASC,EAAQ,IAElDwI,EAAcxyG,iBAAiB,SAASC,IACtC,MAAMyrG,EAAc3iD,GAAS,GAC7BilD,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAO6mH,IAETzrG,EAAMwW,iBACN/xB,KAAKyiH,YAAYvtC,UAAUplD,SAAS,yBAA0B,CAC5Dva,OAAQvV,KACRkuB,OAAQ,CACNtY,KACAzM,KAAM,YACNhJ,MAAOwuH,EACPO,SAAUlI,EACV0F,YAAY,EACZV,UAAW,EACXmD,SAAS,IAEX,IAEJnvH,KAAKwqH,mBAAmBsD,EAAe,KAAM,CAAC,CAAC,QAAS,SAAU,CAAC,OAAQ,QAAS,CAAC,YAAa,cAAe,CAAC,aAAc,eAAgB,CAAC,aAAc,cAAe,CAAC,UAAW,YAAa,CAAC,QAAS,UAAW,CAAC,QAAS,cAAcvyG,GAASA,EAAME,OAAOtb,SAE1Q2tH,EAAcxyG,iBAAiB,SAAS,SAAUC,GAChD+tG,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOkkE,GAAS,IAEpB,IAEErkE,KAAK4kB,KAAKopG,OACZhuH,KAAK6qH,cAAciD,GAErB9tH,KAAK4qH,oBAAoBkD,GACzB9tH,KAAKwlH,4BAA4BsI,GACjC9tH,KAAK6jC,UAAUlY,OAAOmiG,GACf9tH,KAAK6jC,SACd,EAEF,MAAM49E,WAA+BY,GACnC,WAAA1jG,CAAY0mD,GACV,MAAM,KACJzgD,EAAI,SACJsS,GACEmuC,EACJ5d,MAAM4d,EAAY,CAChBi9C,aAAcD,GAAkBa,cAAct+F,KAEhD5kB,KAAKk3B,SAAWA,CAClB,CACA,MAAA8gC,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,mBAC7B,MAAM4+F,EAAQ,IAAI4I,GAAa,CAC7BvrF,UAAW7jC,KAAK6jC,UAChB4wC,MAAOz0E,KAAK4kB,KAAK6vD,MACjB0uC,SAAUnjH,KAAK4kB,KAAKu+F,SACpBsD,iBAAkBzmH,KAAK4kB,KAAK6hG,iBAC5BrD,YAAapjH,KAAK4kB,KAAKw+F,YACvBC,SAAUrjH,KAAK4kB,KAAKy+F,SACpB55D,KAAMzpD,KAAK4kB,KAAK6kC,KAChBi9D,WAAY1mH,KAAK4kB,KAAK8hG,YAAc,KACpCvhD,OAAQnlE,KAAKmlE,OACbjuC,SAAUl3B,KAAKk3B,SACf1S,KAAMxkB,KAAK4kB,KAAKJ,OAEZ6qG,EAAa,GACnB,UAAWj5G,KAAWpW,KAAKk3B,SACzB9gB,EAAQowG,MAAQA,EAChB6I,EAAWztH,KAAKwU,EAAQwO,KAAKhP,IAC7BQ,EAAQkxG,mBAGV,OADAtnH,KAAK6jC,UAAUnjB,aAAa,gBAAiB2uG,EAAWpnH,KAAI2N,GAAM,GAAG02C,EAAMhX,mBAAmB1/B,MAAMnJ,KAAK,MAClGzM,KAAK6jC,SACd,EAEF,MAAMurF,GAkBJ,WAAAzwG,EAAY,UACVklB,EAAS,MACT4wC,EAAK,SACLv9C,EAAQ,SACRisF,EAAQ,iBACRsD,EAAgB,YAChBrD,EAAW,SACXC,EAAQ,OACRl+C,EAAM,KACN1b,EAAI,WACJi9D,EAAU,KACVliG,IAiIF,qBAQA,qBAYA,qBAWA,qBA5LA,oBAAmB,MACnB,oBAAgB,gBAAAxkB,KAAK,KAASoiB,KAAKpiB,OACnC,oBAAa,gBAAAA,KAAK,KAAMoiB,KAAKpiB,OAC7B,oBAAa,gBAAAA,KAAK,KAAMoiB,KAAKpiB,OAC7B,oBAAe,gBAAAA,KAAK,KAAQoiB,KAAKpiB,OACjC,oBAAS,MACT,oBAAa,MACb,oBAAe,MACf,oBAAY,MACZ,oBAAU,MACV,oBAAc,MACd,qBAAU,GACV,oBAAS,MACT,oBAAQ,MACR,oBAAY,MACZ,oBAAY,MACZ,qBAAc,GAcZ,aAAAA,KAAK,EAAa6jC,GAClB,aAAA7jC,KAAK,EAAYmjH,GACjB,aAAAnjH,KAAK,EAAeojH,GACpB,aAAApjH,KAAK,EAAYqjH,GACjB,aAAArjH,KAAK,EAAUmlE,GACf,aAAAnlE,KAAK,EAASy0E,GACd,aAAAz0E,KAAK,EAAQypD,GACb,aAAAzpD,KAAK,EAAc0mH,GACnB,aAAA1mH,KAAK,EAAYk3B,GACjB,MAAMo4F,EAAa9iE,EAAe4tB,cAAcwG,aAAa6lC,GACzD6I,GACF,aAAAtvH,KAAK,EAAmBmlE,EAAO11B,KAAKhvC,IAAI,yBAA0B,CAChEywC,KAAMo+E,EAAWC,qBACjB76G,KAAM46G,EAAWE,wBAGrBxvH,KAAKyvH,QAAUv4F,EAASw4F,SAAQhrH,GAAKA,EAAE2iH,8BACvC,UAAWjxG,KAAWpW,KAAKyvH,QACzBr5G,EAAQkF,iBAAiB,QAAS,aAAAtb,KAAK,IACvCoW,EAAQkF,iBAAiB,aAAc,aAAAtb,KAAK,IAC5CoW,EAAQkF,iBAAiB,aAAc,aAAAtb,KAAK,IAC5CoW,EAAQ44B,UAAUpnB,IAAI,oBAExB,UAAWxR,KAAW8gB,EACpB9gB,EAAQytB,WAAWvoB,iBAAiB,UAAW,aAAAtb,KAAK,IAEtD,aAAAA,KAAK,GAAWmzC,QAAS,EACrB3uB,GACF,gBAAAxkB,KAAK,KAAL,KAAAA,KAEJ,CACA,MAAAg4D,GACE,GAAI,aAAAh4D,KAAK,GACP,OAEF,MACE8/D,MAAM,KACJ9I,GAEFkB,UACE8N,SAAS,UACPC,EAAS,WACTC,EAAU,MACVC,EAAK,MACLC,KAGF,aAAApmE,KAAK,GACHwmH,EAAQ,aAAAxmH,KAAK,EAASyX,SAASE,cAAc,QAEnD,GADA6uG,EAAMhwG,UAAY,QACd,aAAAxW,KAAK,GAAQ,CACf,MAAM2vH,EAAYnJ,EAAM5uG,MAAMg4G,aAAetjE,EAAMv2C,KAAKwyC,gBAAgB,aAAAvoD,KAAK,IAC7E,GAAIooD,IAAIC,SAAS,mBAAoB,sCACnCm+D,EAAM5uG,MAAMoqF,gBAAkB,sBAAsB2tB,oBAC/C,CACL,MAAME,EAAqB,GAC3BrJ,EAAM5uG,MAAMoqF,gBAAkB11C,EAAMv2C,KAAKwyC,gBAAgB,aAAAvoD,KAAK,GAAOiI,KAAI4gB,GAAKpF,KAAKi0B,MAAMm4E,GAAsB,IAAMhnG,GAAKA,KAC5H,CACF,CACA,MAAMinG,EAASr4G,SAASE,cAAc,QACtCm4G,EAAOt5G,UAAY,SACnB,MAAMuuG,EAAQttG,SAASE,cAAc,MAOrC,GANAm4G,EAAOnkG,OAAOo5F,KAEZ/8E,IAAK+8E,EAAM/8E,IACXhe,IAAK+6F,EAAM7tG,aACT,aAAAlX,KAAK,IACTwmH,EAAM76F,OAAOmkG,GACT,aAAA9vH,KAAK,GAAkB,CACzB,MAAMymH,EAAmBhvG,SAASE,cAAc,QAChD8uG,EAAiBz3E,UAAUpnB,IAAI,aAC/B,aAAA5nB,KAAK,GAAiB6E,MAAKkrH,IACzBtJ,EAAiBvvG,YAAc64G,CAAS,IAE1CD,EAAOnkG,OAAO86F,EAChB,CACA,MAAMrD,EAAc,aAAApjH,KAAK,GACnBqjH,EAAW,aAAArjH,KAAK,GACtB,IAAIqjH,GAAUr5F,KAASo5F,GAAap5F,KAAOo5F,EAAYp5F,MAAQq5F,EAASr5F,IAOjE,CACL,MAAM5b,EAAWpO,KAAKgwH,gBAAgB5M,GACtCoD,EAAM76F,OAAOvd,EACf,MATEoyG,EAAWyP,SAASj4D,OAAO,CACzBk4D,QAAS7M,EAAS8M,KAClBz4D,OAAQ,WACR92B,IAAK4lF,IAEPA,EAAMqH,UAAU7+E,UAAUpnB,IAAI,WAAY,gBAK5C,IAAIwoG,IAAkB,aAAApwH,KAAK,GACvBypD,EAAuB,aAAAzpD,KAAhBowH,EAAqB,EAAmB,GACnD,UAAWh6G,KAAW,aAAApW,KAAK,GACzB,IAAKypD,GAA0D,OAAlD6C,EAAMv2C,KAAK2zC,UAAUtzC,EAAQwO,KAAK6kC,KAAMA,GAAgB,CACnEA,EAAOrzC,EAAQwO,KAAK6kC,KACpB2mE,GAAgB,EAChB,KACF,CAEF,MAAMC,EAAiB/jE,EAAMv2C,KAAKyzC,cAAc,CAACC,EAAK,GAAIuN,EAAK,GAAKvN,EAAK,GAAKuN,EAAK,GAAIvN,EAAK,GAAIuN,EAAK,GAAKvN,EAAK,GAAKuN,EAAK,KAEnHgT,EAAcomD,EAAgB3mE,EAAK,GAAKA,EAAK,GADT,EACkD,EACtF6mE,EAAYD,EAAe,GAAKrmD,EAChCumD,EAAWF,EAAe,IAC1B,MACJz4G,GACE,aAAA5X,KAAK,GACT4X,EAAM4f,KAAU,KAAO84F,EAAYnqD,GAASF,EAA/B,IACbruD,EAAM4tB,IAAS,KAAO+qF,EAAWnqD,GAASF,EAA9B,IACZ,aAAAlmE,KAAK,GAAW2rB,OAAO66F,EACzB,CACA,eAAAwJ,EAAgB,IACdhmG,EAAG,IACHge,IAEA,MAAM94B,EAAIuI,SAASE,cAAc,KACjCzI,EAAE8/B,UAAUpnB,IAAI,gBAChB1Y,EAAE84B,IAAMA,EACR,MAAMl6B,EAAQkc,EAAI9oB,MAAM,gBACxB,QAAS2H,EAAI,EAAGovC,EAAKnqC,EAAMjI,OAAQgD,EAAIovC,IAAMpvC,EAAG,CAC9C,MAAMxH,EAAOyM,EAAMjF,GACnBqG,EAAEyc,OAAOlU,SAASyoG,eAAe7+G,IAC7BwH,EAAIovC,EAAK,GACX/oC,EAAEyc,OAAOlU,SAASE,cAAc,MAEpC,CACA,OAAOzI,CACT,CAwCA,SAAAk4G,GACE,aAAApnH,KAAK,EAAcA,KAAKs9F,WACnB,aAAAt9F,KAAK,KAGV,aAAAA,KAAK,GAAWmzC,QAAS,EAC3B,CACA,SAAAg0E,GACO,aAAAnnH,KAAK,KAGV,aAAAA,KAAK,GAAc,GACnB,aAAAA,KAAK,GAAWmzC,QAAS,EAC3B,CACA,aAAImqD,GACF,OAAkC,IAA3B,aAAAt9F,KAAK,GAAWmzC,MACzB,EApNA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cA6IA,gBAAQ,SAAC53B,GACHA,EAAM64D,QAAU74D,EAAM81D,UAAY91D,EAAM0wD,SAAW1wD,EAAM+1D,UAG3C,UAAd/1D,EAAMzO,KAAiC,WAAdyO,EAAMzO,KAAoB,aAAA9M,KAAK,KAC1D,gBAAAA,KAAK,KAAL,KAAAA,KAEJ,EACA,gBAAO,WACL,aAAAA,KAAK,GAAW,aAAAA,KAAK,IACjB,aAAAA,KAAK,IACP,gBAAAA,KAAK,KAAL,KAAAA,MACA,aAAAA,KAAK,GAAWsb,iBAAiB,QAAS,aAAAtb,KAAK,IAC/C,aAAAA,KAAK,GAAWsb,iBAAiB,UAAW,aAAAtb,KAAK,MAEjD,gBAAAA,KAAK,KAAL,KAAAA,MACA,aAAAA,KAAK,GAAW8iB,oBAAoB,QAAS,aAAA9iB,KAAK,IAClD,aAAAA,KAAK,GAAW8iB,oBAAoB,UAAW,aAAA9iB,KAAK,IAExD,EACA,gBAAK,WACE,aAAAA,KAAK,IACRA,KAAKg4D,SAEFh4D,KAAKs9F,UAGC,aAAAt9F,KAAK,IACd,aAAAA,KAAK,GAAWgvC,UAAUpnB,IAAI,YAH9B,aAAA5nB,KAAK,GAAWmzC,QAAS,EACzB,aAAAnzC,KAAK,GAAW4X,MAAMixD,OAASr/C,SAAS,aAAAxpB,KAAK,GAAW4X,MAAMixD,QAAU,IAI5E,EACA,gBAAK,WACH,aAAA7oE,KAAK,GAAWgvC,UAAUloB,OAAO,YAC7B,aAAA9mB,KAAK,IAAYA,KAAKs9F,YAG1B,aAAAt9F,KAAK,GAAWmzC,QAAS,EACzB,aAAAnzC,KAAK,GAAW4X,MAAMixD,OAASr/C,SAAS,aAAAxpB,KAAK,GAAW4X,MAAMixD,QAAU,IAC1E,EAmBF,MAAMy2C,WAAkC+C,GACtC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,IAEhBviH,KAAKkX,YAAcmuD,EAAWzgD,KAAK1N,YACnClX,KAAKy/G,aAAep6C,EAAWzgD,KAAK66F,aACpCz/G,KAAK69G,qBAAuBvxD,EAAM5W,qBAAqBoF,QACzD,CACA,MAAAkd,GAEE,GADAh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,sBACzB5nB,KAAKkX,YAAa,CACpB,MAAMoV,EAAU7U,SAASE,cAAc,OACvC2U,EAAQ0iB,UAAUpnB,IAAI,yBACtB0E,EAAQ5L,aAAa,OAAQ,WAC7B,UAAWrf,KAAQrB,KAAKkX,YAAa,CACnC,MAAMs5G,EAAW/4G,SAASE,cAAc,QACxC64G,EAASt5G,YAAc7V,EACvBirB,EAAQX,OAAO6kG,EACjB,CACAxwH,KAAK6jC,UAAUlY,OAAOW,EACxB,CAKA,OAJKtsB,KAAK4kB,KAAK2+F,UAAYvjH,KAAKsjH,cAC9BtjH,KAAKumH,eAEPvmH,KAAKwnH,qBACExnH,KAAK6jC,SACd,EAEFhlC,EAAQygH,0BAA4BA,GACpC,MAAMoC,WAA8BW,GAElC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,IAJlB,oBAAQ,KAMR,CACA,MAAAvqD,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,kBAC7B,MAAMhD,EAAO5kB,KAAK4kB,MACZ,MACJmd,EAAK,OACLE,GACE0+E,GAAY/7F,EAAK6kC,MACf00B,EAAMn+E,KAAK2zG,WAAWzwG,OAAO6+B,EAAOE,GAAQ,GAC5C5gC,EAAO,aAAArB,KAAK,EAAQA,KAAK2zG,WAAWh8F,cAAc,aAaxD,OAZAtW,EAAKqf,aAAa,KAAMkE,EAAK6kC,KAAK,GAAK7kC,EAAK6rG,gBAAgB,IAC5DpvH,EAAKqf,aAAa,KAAMkE,EAAK6kC,KAAK,GAAK7kC,EAAK6rG,gBAAgB,IAC5DpvH,EAAKqf,aAAa,KAAMkE,EAAK6kC,KAAK,GAAK7kC,EAAK6rG,gBAAgB,IAC5DpvH,EAAKqf,aAAa,KAAMkE,EAAK6kC,KAAK,GAAK7kC,EAAK6rG,gBAAgB,IAC5DpvH,EAAKqf,aAAa,eAAgBkE,EAAK8+F,YAAY3hF,OAAS,GAC5D1gC,EAAKqf,aAAa,SAAU,eAC5Brf,EAAKqf,aAAa,OAAQ,eAC1By9D,EAAIxyD,OAAOtqB,GACXrB,KAAK6jC,UAAUlY,OAAOwyD,IACjBv5D,EAAK2+F,UAAYvjH,KAAKsjH,cACzBtjH,KAAKumH,eAEAvmH,KAAK6jC,SACd,CACA,yBAAAwjF,GACE,OAAO,aAAArnH,KAAK,EACd,CACA,gBAAAsnH,GACEtnH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,gBAC/B,EAnCA,cAqCF,MAAM+5F,WAAgCU,GAEpC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,IAJlB,oBAAU,KAMV,CACA,MAAAvqD,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,oBAC7B,MAAMhD,EAAO5kB,KAAK4kB,MACZ,MACJmd,EAAK,OACLE,GACE0+E,GAAY/7F,EAAK6kC,MACf00B,EAAMn+E,KAAK2zG,WAAWzwG,OAAO6+B,EAAOE,GAAQ,GAC5C0hF,EAAc/+F,EAAK8+F,YAAY3hF,MAC/B2uF,EAAS,aAAA1wH,KAAK,EAAUA,KAAK2zG,WAAWh8F,cAAc,aAa5D,OAZA+4G,EAAOhwG,aAAa,IAAKijG,EAAc,GACvC+M,EAAOhwG,aAAa,IAAKijG,EAAc,GACvC+M,EAAOhwG,aAAa,QAASqhB,EAAQ4hF,GACrC+M,EAAOhwG,aAAa,SAAUuhB,EAAS0hF,GACvC+M,EAAOhwG,aAAa,eAAgBijG,GAAe,GACnD+M,EAAOhwG,aAAa,SAAU,eAC9BgwG,EAAOhwG,aAAa,OAAQ,eAC5By9D,EAAIxyD,OAAO+kG,GACX1wH,KAAK6jC,UAAUlY,OAAOwyD,IACjBv5D,EAAK2+F,UAAYvjH,KAAKsjH,cACzBtjH,KAAKumH,eAEAvmH,KAAK6jC,SACd,CACA,yBAAAwjF,GACE,OAAO,aAAArnH,KAAK,EACd,CACA,gBAAAsnH,GACEtnH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,gBAC/B,EApCA,cAsCF,MAAMg6F,WAAgCS,GAEpC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,IAJlB,oBAAU,KAMV,CACA,MAAAvqD,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,oBAC7B,MAAMhD,EAAO5kB,KAAK4kB,MACZ,MACJmd,EAAK,OACLE,GACE0+E,GAAY/7F,EAAK6kC,MACf00B,EAAMn+E,KAAK2zG,WAAWzwG,OAAO6+B,EAAOE,GAAQ,GAC5C0hF,EAAc/+F,EAAK8+F,YAAY3hF,MAC/B4uF,EAAS,aAAA3wH,KAAK,EAAUA,KAAK2zG,WAAWh8F,cAAc,gBAa5D,OAZAg5G,EAAOjwG,aAAa,KAAMqhB,EAAQ,GAClC4uF,EAAOjwG,aAAa,KAAMuhB,EAAS,GACnC0uF,EAAOjwG,aAAa,KAAMqhB,EAAQ,EAAI4hF,EAAc,GACpDgN,EAAOjwG,aAAa,KAAMuhB,EAAS,EAAI0hF,EAAc,GACrDgN,EAAOjwG,aAAa,eAAgBijG,GAAe,GACnDgN,EAAOjwG,aAAa,SAAU,eAC9BiwG,EAAOjwG,aAAa,OAAQ,eAC5By9D,EAAIxyD,OAAOglG,GACX3wH,KAAK6jC,UAAUlY,OAAOwyD,IACjBv5D,EAAK2+F,UAAYvjH,KAAKsjH,cACzBtjH,KAAKumH,eAEAvmH,KAAK6jC,SACd,CACA,yBAAAwjF,GACE,OAAO,aAAArnH,KAAK,EACd,CACA,gBAAAsnH,GACEtnH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,gBAC/B,EApCA,cAsCF,MAAMi6F,WAAkCQ,GAEtC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,IAJlB,oBAAY,MAMVviH,KAAK4wH,mBAAqB,qBAC1B5wH,KAAK6wH,eAAiB,cACxB,CACA,MAAA74D,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI5nB,KAAK4wH,oBAClC,MAAMhsG,EAAO5kB,KAAK4kB,MACZ,MACJmd,EAAK,OACLE,GACE0+E,GAAY/7F,EAAK6kC,MACf00B,EAAMn+E,KAAK2zG,WAAWzwG,OAAO6+B,EAAOE,GAAQ,GAClD,IAAIk6D,EAAS,GACb,UAAW20B,KAAclsG,EAAKmsG,SAAU,CACtC,MAAM3xH,EAAI0xH,EAAW1xH,EAAIwlB,EAAK6kC,KAAK,GAC7BzkD,EAAI4f,EAAK6kC,KAAK,GAAKqnE,EAAW9rH,EACpCm3F,EAAOv6F,KAAKxC,EAAI,IAAM4F,EACxB,CACAm3F,EAASA,EAAO1vF,KAAK,KACrB,MAAMukH,EAAW,aAAAhxH,KAAK,EAAYA,KAAK2zG,WAAWh8F,cAAc3X,KAAK6wH,iBAUrE,OATAG,EAAStwG,aAAa,SAAUy7E,GAChC60B,EAAStwG,aAAa,eAAgBkE,EAAK8+F,YAAY3hF,OAAS,GAChEivF,EAAStwG,aAAa,SAAU,eAChCswG,EAAStwG,aAAa,OAAQ,eAC9By9D,EAAIxyD,OAAOqlG,GACXhxH,KAAK6jC,UAAUlY,OAAOwyD,IACjBv5D,EAAK2+F,UAAYvjH,KAAKsjH,cACzBtjH,KAAKumH,eAEAvmH,KAAK6jC,SACd,CACA,yBAAAwjF,GACE,OAAO,aAAArnH,KAAK,EACd,CACA,gBAAAsnH,GACEtnH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,gBAC/B,EAzCA,cA2CF,MAAMm6F,WAAiCF,GACrC,WAAAljG,CAAY0mD,GACV5d,MAAM4d,GACNrlE,KAAK4wH,mBAAqB,oBAC1B5wH,KAAK6wH,eAAiB,aACxB,EAEF,MAAM/O,WAA+BO,GACnC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,GAElB,CACA,MAAAvqD,GAKE,OAJAh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,oBACxB5nB,KAAK4kB,KAAK2+F,UAAYvjH,KAAKsjH,cAC9BtjH,KAAKumH,eAEAvmH,KAAK6jC,SACd,EAEF,MAAMu8E,WAA6BiC,GAEjC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,IAJlB,oBAAa,IAMXviH,KAAK4wH,mBAAqB,gBAC1B5wH,KAAK6wH,eAAiB,eACtB7wH,KAAK69G,qBAAuBvxD,EAAM5W,qBAAqBsF,GACzD,CACA,MAAAgd,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI5nB,KAAK4wH,oBAClC,MAAMhsG,EAAO5kB,KAAK4kB,MACZ,MACJmd,EAAK,OACLE,GACE0+E,GAAY/7F,EAAK6kC,MACf00B,EAAMn+E,KAAK2zG,WAAWzwG,OAAO6+B,EAAOE,GAAQ,GAClD,UAAWgvF,KAAWrsG,EAAKssG,SAAU,CACnC,IAAI/0B,EAAS,GACb,UAAW20B,KAAcG,EAAS,CAChC,MAAM7xH,EAAI0xH,EAAW1xH,EAAIwlB,EAAK6kC,KAAK,GAC7BzkD,EAAI4f,EAAK6kC,KAAK,GAAKqnE,EAAW9rH,EACpCm3F,EAAOv6F,KAAK,GAAGxC,KAAK4F,IACtB,CACAm3F,EAASA,EAAO1vF,KAAK,KACrB,MAAMukH,EAAWhxH,KAAK2zG,WAAWh8F,cAAc3X,KAAK6wH,gBACpD,aAAA7wH,KAAK,GAAW4B,KAAKovH,GACrBA,EAAStwG,aAAa,SAAUy7E,GAChC60B,EAAStwG,aAAa,eAAgBkE,EAAK8+F,YAAY3hF,OAAS,GAChEivF,EAAStwG,aAAa,SAAU,eAChCswG,EAAStwG,aAAa,OAAQ,gBACzBkE,EAAK2+F,UAAYvjH,KAAKsjH,cACzBtjH,KAAKumH,eAEPpoC,EAAIxyD,OAAOqlG,EACb,CAEA,OADAhxH,KAAK6jC,UAAUlY,OAAOwyD,GACfn+E,KAAK6jC,SACd,CACA,yBAAAwjF,GACE,OAAO,aAAArnH,KAAK,EACd,CACA,gBAAAsnH,GACEtnH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,gBAC/B,EA7CA,cA+CF/oB,EAAQuhH,qBAAuBA,GAC/B,MAAM4B,WAAmCK,GACvC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,EACdC,sBAAsB,GAE1B,CACA,MAAAxqD,GAKE,OAJKh4D,KAAK4kB,KAAK2+F,UAAYvjH,KAAKsjH,cAC9BtjH,KAAKumH,eAEPvmH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,uBACtB5nB,KAAK6jC,SACd,EAEF,MAAMo+E,WAAmCI,GACvC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,EACdC,sBAAsB,GAE1B,CACA,MAAAxqD,GAKE,OAJKh4D,KAAK4kB,KAAK2+F,UAAYvjH,KAAKsjH,cAC9BtjH,KAAKumH,eAEPvmH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,uBACtB5nB,KAAK6jC,SACd,EAEF,MAAMq+E,WAAkCG,GACtC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,EACdC,sBAAsB,GAE1B,CACA,MAAAxqD,GAKE,OAJKh4D,KAAK4kB,KAAK2+F,UAAYvjH,KAAKsjH,cAC9BtjH,KAAKumH,eAEPvmH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,sBACtB5nB,KAAK6jC,SACd,EAEF,MAAMs+E,WAAmCE,GACvC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,EACdC,sBAAsB,GAE1B,CACA,MAAAxqD,GAKE,OAJKh4D,KAAK4kB,KAAK2+F,UAAYvjH,KAAKsjH,cAC9BtjH,KAAKumH,eAEPvmH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,uBACtB5nB,KAAK6jC,SACd,EAEF,MAAMs8E,WAA+BkC,GACnC,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,EACdC,cAAc,GAElB,CACA,MAAAvqD,GAKE,OAJAh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,oBACxB5nB,KAAK4kB,KAAK2+F,UAAYvjH,KAAKsjH,cAC9BtjH,KAAKumH,eAEAvmH,KAAK6jC,SACd,EAEFhlC,EAAQshH,uBAAyBA,GACjC,MAAMiC,WAAwCC,GAE5C,WAAA1jG,CAAY0mD,GACV5d,MAAM4d,EAAY,CAChBi9C,cAAc,IAsDlB,qBAzDA,oBAAW,MAKT,MAAM,SACJ5zF,EAAQ,QACRpC,GACEtsB,KAAK4kB,KAAKviB,KACdrC,KAAK0uB,UAAW,EAAI89B,EAAequB,oBAAoBnsD,GAAU,GACjE1uB,KAAKssB,QAAUA,EACftsB,KAAKyiH,YAAYvtC,UAAUplD,SAAS,2BAA4B,CAC9Dva,OAAQvV,KACR0uB,WACApC,WAEJ,CACA,MAAA0rC,GACEh4D,KAAK6jC,UAAUmL,UAAUpnB,IAAI,4BAC7B,MAAM,UACJic,EAAS,KACTjf,GACE5kB,KACJ,IAAIyvH,EACA7qG,EAAKymG,eAAoC,IAAnBzmG,EAAK+jE,UAC7B8mC,EAAUh4G,SAASE,cAAc,QAEjC83G,EAAUh4G,SAASE,cAAc,OACjC83G,EAAQ7uH,IAAM,GAAGZ,KAAK2iH,gCAAgC,aAAap4G,KAAKqa,EAAKzb,MAAQ,YAAc,gBAC/Fyb,EAAK+jE,WAAa/jE,EAAK+jE,UAAY,IACrC8mC,EAAQ73G,MAAQ,mBAAmB6L,KAAKonD,MAAuB,IAAjBjmD,EAAK+jE,kBAGvD8mC,EAAQn0G,iBAAiB,WAAY,gBAAAtb,KAAK,KAAUoiB,KAAKpiB,OACzD,aAAAA,KAAK,EAAWyvH,GAChB,MAAM,MACJvnE,GACEoE,EAAMxX,YAAYkT,SAYtB,OAXAnkB,EAAUvoB,iBAAiB,WAAW8kD,IACpB,UAAZA,EAAItzD,MAAoBo7C,EAAQkY,EAAIkR,QAAUlR,EAAI6L,UACpD,gBAAAjsE,KAAK,KAAL,KAAAA,KACF,KAEG4kB,EAAK2+F,UAAYvjH,KAAKsjH,aACzBtjH,KAAKumH,eAELkJ,EAAQzgF,UAAUpnB,IAAI,oBAExBic,EAAUlY,OAAO8jG,GACV5rF,CACT,CACA,yBAAAwjF,GACE,OAAO,aAAArnH,KAAK,EACd,CACA,gBAAAsnH,GACEtnH,KAAK6jC,UAAUmL,UAAUpnB,IAAI,gBAC/B,EAxDA,cAyDA,gBAAS,WACP5nB,KAAK0iH,iBAAiBkG,mBAAmB5oH,KAAK6jC,UAAW7jC,KAAKssB,QAAStsB,KAAK0uB,SAC9E,EAGA,cACA,cACA,cAkBA,gBAAc,SAACtY,EAASR,GACtB,MAAMu7G,EAAiB/6G,EAAQ2tB,YAAc3tB,EAC7C+6G,EAAev7G,GAAK,GAAG02C,EAAMhX,mBAAmB1/B,IAChD5V,KAAK4gC,IAAIjV,OAAOvV,GAChB,aAAApW,KAAK,IAAuBy9G,iBAAiBz9G,KAAK4gC,IAAKxqB,EAAS+6G,GAAgB,EAClF,EA+EA,gBAAuB,WACrB,IAAK,aAAAnxH,KAAK,GACR,OAEF,MAAM42E,EAAQ52E,KAAK4gC,IACnB,UAAYhrB,EAAIysD,KAAW,aAAAriE,KAAK,GAAsB,CACpD,MAAMoW,EAAUwgE,EAAMtuD,cAAc,wBAAwB1S,OAC5D,IAAKQ,EACH,SAEF,MAAM,WACJ2tB,GACE3tB,EACC2tB,EAE8B,WAAxBA,EAAWimF,SACpBjmF,EAAWqtF,YAAY/uD,GAEvBt+B,EAAWirF,OAAO3sD,GAJlBjsD,EAAQuV,OAAO02C,EAMnB,CACA,aAAAriE,KAAK,GAAqB4O,OAC5B,EAQF/P,EAAQwhH,gBAvIR,MAIE,WAAA1hG,EAAY,IACViiB,EAAG,qBACHu7E,EAAoB,oBACpB7jD,EAAmB,KACnB7oB,EAAI,KACJqwB,EAAI,SACJ5H,IAWF,qBAoFA,qBAxGA,oBAAwB,MACxB,oBAAuB,MACvB,oBAAuB,IAAI5f,KASzBt4C,KAAK4gC,IAAMA,EACX,aAAA5gC,KAAK,EAAwBm8G,GAC7B,aAAAn8G,KAAK,EAAuBs4D,GAC5Bt4D,KAAKyvC,KAAOA,EACZzvC,KAAK8/D,KAAOA,EACZ9/D,KAAKk4D,SAAWA,EAChBl4D,KAAK6oE,OAAS,EACd7oE,KAAKyvC,OAAS8wE,EAAmB8Q,QACnC,CAOA,YAAMr5D,CAAO3jD,GACX,MAAM,YACJi9G,GACEj9G,EACEuiE,EAAQ52E,KAAK4gC,KACnB,EAAI4rB,EAAeivB,oBAAoB7E,EAAO52E,KAAKk4D,UACnD,MAAMq5D,EAAkB,IAAIj5E,IACtBk5E,EAAgB,CACpB5sG,KAAM,KACNgyD,QACA6rC,YAAapuG,EAAOouG,YACpBC,gBAAiBruG,EAAOquG,gBACxBC,mBAAoBtuG,EAAOsuG,oBAAsB,GACjDC,aAAoC,IAAvBvuG,EAAOuuG,YACpBjP,WAAY,IAAInnD,EAAe6tB,cAC/BtmB,kBAAmB1/C,EAAO0/C,mBAAqB,IAAIxH,EAAoBkT,kBACvEojD,iBAA4C,IAA3BxuG,EAAOwuG,gBACxB7sD,aAAc3hD,EAAO2hD,aACrB+sD,aAAc1uG,EAAO0uG,aACrB59C,OAAQnlE,KACRk3B,SAAU,MAEZ,UAAWtS,KAAQ0sG,EAAa,CAC9B,GAAI1sG,EAAK6sG,OACP,SAEF,MAAMC,EAAoB9sG,EAAKg5F,iBAAmBtxD,EAAMlX,eAAeqI,MACvE,GAAKi0E,EAQE,CACL,MAAMx6F,EAAWq6F,EAAgB9wH,IAAImkB,EAAKhP,IAC1C,IAAKshB,EACH,SAEFs6F,EAAct6F,SAAWA,CAC3B,KAdwB,CACtB,MAAM,MACJ6K,EAAK,OACLE,GACE0+E,GAAY/7F,EAAK6kC,MACrB,GAAI1nB,GAAS,GAAKE,GAAU,EAC1B,QAEJ,CAOAuvF,EAAc5sG,KAAOA,EACrB,MAAMxO,EAAUwqG,GAAyB19G,OAAOsuH,GAChD,IAAKp7G,EAAQksG,aACX,SAEF,IAAKoP,GAAqB9sG,EAAK2+F,SAAU,CACvC,MAAMrsF,EAAWq6F,EAAgB9wH,IAAImkB,EAAK2+F,UACrCrsF,EAGHA,EAASt1B,KAAKwU,GAFdm7G,EAAgBzmG,IAAIlG,EAAK2+F,SAAU,CAACntG,GAIxC,CACIA,EAAQynG,qBAAuB,GACjC,aAAA79G,KAAK,GAAqB8qB,IAAI1U,EAAQwO,KAAKhP,GAAIQ,GAEjD,MAAMu7G,EAAWv7G,EAAQ4hD,SACrBpzC,EAAKuuB,SACPw+E,EAAS/5G,MAAM2iE,WAAa,UAE9B,gBAAAv6E,KAAK,KAAL,KAAAA,KAAoB2xH,EAAU/sG,EAAKhP,GACrC,CACA,gBAAA5V,KAAK,KAAL,KAAAA,YACMA,KAAKyvC,KAAKk6B,UAAUiN,EAC5B,CACA,MAAAp8C,EAAO,SACL09B,IAEA,MAAM0e,EAAQ52E,KAAK4gC,IACnB5gC,KAAKk4D,SAAWA,GAChB,EAAI1L,EAAeivB,oBAAoB7E,EAAO,CAC5Czf,SAAUe,EAASf,WAErB,gBAAAn3D,KAAK,KAAL,KAAAA,MACA42E,EAAMzjC,QAAS,CACjB,CAwBA,sBAAA6pE,GACE,OAAOryG,MAAMiS,KAAK,aAAA5c,KAAK,GAAqBu7D,SAC9C,CACA,qBAAA6hD,CAAsBxnG,GACpB,OAAO,aAAA5V,KAAK,GAAqBS,IAAImV,EACvC,EAEuC,EAIlC,CAAC89B,EAAyB70C,KAQjC,SAAS+yH,EAAcjyH,GACrB,OAAO8jB,KAAKi0B,MAAoC,IAA9Bj0B,KAAK6H,IAAI,EAAG7H,KAAKE,IAAI,EAAGhkB,KAAW+K,SAAS,IAAIssC,SAAS,EAAG,IAChF,CACA,SAAS66E,EAAczyH,GACrB,OAAOqkB,KAAK6H,IAAI,EAAG7H,KAAKE,IAAI,IAAK,IAAMvkB,GACzC,CATAE,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ8lH,qBAAkB,EA0D1B9lH,EAAQ8lH,gBAnDR,MACE,aAAOmN,EAAQjpG,EAAG7jB,EAAG5B,EAAG9C,IACtB,MAAO,CAAC,IAAK,EAAImjB,KAAKE,IAAI,EAAG,GAAMkF,EAAI,IAAOzlB,EAAI,IAAO4B,EAAI1E,GAC/D,CACA,aAAOyxH,EAAQ9yH,IACb,MAAO,CAAC,OAAQ,EAAG,EAAG,EAAG,EAAIA,EAC/B,CACA,YAAO+yH,EAAO/yH,IACZ,MAAO,CAAC,MAAOA,EAAGA,EAAGA,EACvB,CACA,YAAOgzH,EAAOhzH,IAEZ,MAAO,CADPA,EAAI4yH,EAAc5yH,GACPA,EAAGA,EAChB,CACA,aAAOizH,EAAQjzH,IACb,MAAMkzH,EAAIP,EAAc3yH,GACxB,MAAO,IAAIkzH,IAAIA,IAAIA,GACrB,CACA,YAAOC,EAAOn6F,EAAGh5B,EAAGuf,IAClB,MAAO,CAAC,IAAK,GAAMyZ,EAAI,IAAOh5B,EAAI,IAAOuf,EAC3C,CACA,cAAO6zG,CAAQ59C,GACb,OAAOA,EAAMxsE,IAAI4pH,EACnB,CACA,eAAOS,CAAS79C,GACd,MAAO,IAAIA,EAAMxsE,IAAI2pH,GAAenlH,KAAK,KAC3C,CACA,aAAO8lH,GACL,MAAO,WACT,CACA,YAAOC,GACL,MAAO,CAAC,KACV,CACA,eAAOC,EAAU5pG,EAAG7jB,EAAG5B,EAAG9C,IACxB,MAAO,CAAC,MAAO,EAAImjB,KAAKE,IAAI,EAAGkF,EAAIvoB,GAAI,EAAImjB,KAAKE,IAAI,EAAGvgB,EAAI9C,GAAI,EAAImjB,KAAKE,IAAI,EAAG3e,EAAI1E,GACrF,CACA,eAAOoyH,EAAU7pG,EAAG7jB,EAAG5B,EAAG9C,IACxB,MAAO,CAACuxH,EAAc,EAAIpuG,KAAKE,IAAI,EAAGkF,EAAIvoB,IAAKuxH,EAAc,EAAIpuG,KAAKE,IAAI,EAAGvgB,EAAI9C,IAAKuxH,EAAc,EAAIpuG,KAAKE,IAAI,EAAG3e,EAAI1E,IAC1H,CACA,gBAAOqyH,CAAUC,GACf,MAAMl+C,EAAM10E,KAAKyyH,SAASG,GAAY3lH,MAAM,GAC5C,OAAOjN,KAAKsyH,SAAS59C,EACvB,CACA,eAAOm+C,EAAU56F,EAAGh5B,EAAGuf,IACrB,MAAMqK,EAAI,EAAIoP,EACR70B,EAAI,EAAInE,EACR+F,EAAI,EAAIwZ,EAEd,MAAO,CAAC,OAAQqK,EAAGzlB,EAAG4B,EADZye,KAAKE,IAAIkF,EAAGzlB,EAAG4B,GAE3B,EAEuC,EAIlC,CAAC0uC,EAAyB70C,KAIjCS,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQwyH,cAAW,EACnBxyH,EAAQi0H,gBAAkBA,EAC1B,MAAMC,EAAuB,CAC3BC,SAAU,oBACVC,cAAe,qCACfC,uBAAwB,oCACxBC,uBAAwB,oCACxBC,gCAAiC,qBACjCC,0CAA2C,KAC3CC,+CAAgD,KAChDC,mDAAoD,WACpDC,oDAAqD,YACrDC,sCAAuC,KACvCC,sCAAuC,KACvCC,0CAA2C,SAC3CC,yCAA0C,QAC1CC,+CAAgD,oDAChDC,oDAAqD,8DACrDC,mCAAoC,MACpCC,kCAAmC,KACnCC,kBAAmB,oBACnBC,cAAe,gBACfC,iBAAkB,gBAClBC,kBAAmB,6BACnBC,iBAAkB,iDAClBC,oBAAqB,8CACrB,wBAAyB,iCACzB,0BAA2B,mCAC3B,8BAA+B,4BAC/B,gCAAiC,8BACjCC,eAAgB,mBAChBC,iBAAkB,aAClBC,eAAgB,WAChBC,gBAAiB,iBACjBC,kBAAmB,cACnBC,mBAAoB,aACpBC,cAAe,2CACfC,mBAAoB,iCACpBC,mBAAoB,oBACpBC,0BAA2B,8BAC3BC,gBAAiB,8CACjBC,uBAAwB,qBACxBC,uBAAwB,4DACxBC,mBAAoB,qDACpBC,mBAAoB,4DACpBC,2BAA4B,gBAC5BC,6BAA8B,cAC9BC,uBAAwB,cACxBC,6BAA8B,qBAC9BC,6BAA8B,WAC9BC,kCAAmC,gBACnCC,mCAAoC,wBAKtC,SAAS9C,EAAgBhmH,EAAK7B,GAC5B,OAAQ6B,GACN,IAAK,mBACHA,EAAM,oBAAmC,IAAf7B,EAAKqlB,MAAc,MAAQ,WACrD,MACF,IAAK,yBACHxjB,EAAM,0BAAyC,IAAf7B,EAAK4oF,MAAc,MAAQ,WAG/D,OAAOk/B,EAAqBjmH,IAAQ,EACtC,CAZEimH,EAAqB8C,uBAAyB,gBAqBhD,MAAMxE,EAAW,CACf,iBAAMyE,GACJ,MAAO,OACT,EACA,kBAAMC,GACJ,MAAO,KACT,EACA,SAAMt1H,CAAIqM,EAAK7B,EAAO,KAAMkmF,EAAW2hC,EAAgBhmH,EAAK7B,IAC1D,OAhBJ,SAAyBgM,EAAMhM,GAC7B,OAAKA,EAGEgM,EAAKshC,WAAW,wBAAwB,CAAC1X,EAAK13B,IAC5CA,KAAQ8B,EAAOA,EAAK9B,GAAQ,KAAOA,EAAO,OAH1C8N,CAKX,CASW++G,CAAgB7kC,EAAUlmF,EACnC,EACA,eAAM0+D,CAAUvzD,GAAU,GAE5BvX,EAAQwyH,SAAWA,CAAQ,EAIpB,CAAC39E,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQoxH,cAAW,EACnB,IAAI7iE,EAAY7B,EAAoB,IAoMpC1sD,EAAQoxH,SAnMR,MACE,mBAAOgG,CAAa9F,EAAMv6G,EAAIQ,EAASkzG,EAAS5xD,GAC9C,MAAM+tD,EAAa6D,EAAQjlD,SAASzuD,EAAI,CACtCzV,MAAO,OAET,OAAQiW,EAAQjN,MACd,IAAK,WAIH,GAHyB,OAArBs8G,EAAWtlH,QACbgwH,EAAKj5G,YAAcuuG,EAAWtlH,OAEjB,UAAXu3D,EACF,MAEFy4D,EAAK70G,iBAAiB,SAASC,IAC7B+tG,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOob,EAAME,OAAOtb,OACpB,IAEJ,MACF,IAAK,QACH,GAAgC,UAA5BiW,EAAQqY,WAAW1hB,MAAgD,aAA5BqJ,EAAQqY,WAAW1hB,KAAqB,CAMjF,GALI04G,EAAWtlH,QAAUiW,EAAQqY,WAAWynG,MAC1C/F,EAAKzvG,aAAa,WAAW,GACpB+kG,EAAWtlH,QAAUiW,EAAQqY,WAAW0nG,QACjDhG,EAAKl+F,gBAAgB,WAER,UAAXylC,EACF,MAEFy4D,EAAK70G,iBAAiB,UAAUC,IAC9B+tG,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOob,EAAME,OAAO6xG,QAAU/xG,EAAME,OAAOlF,aAAa,SAAWgF,EAAME,OAAOlF,aAAa,WAC7F,GAEN,KAAO,CAIL,GAHyB,OAArBkvG,EAAWtlH,OACbgwH,EAAKzvG,aAAa,QAAS+kG,EAAWtlH,OAEzB,UAAXu3D,EACF,MAEFy4D,EAAK70G,iBAAiB,SAASC,IAC7B+tG,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,MAAOob,EAAME,OAAOtb,OACpB,GAEN,CACA,MACF,IAAK,SACH,GAAyB,OAArBslH,EAAWtlH,MAAgB,CAC7BgwH,EAAKzvG,aAAa,QAAS+kG,EAAWtlH,OACtC,UAAWguH,KAAU/3G,EAAQsjB,SACvBy0F,EAAO1/F,WAAWtuB,QAAUslH,EAAWtlH,MACzCguH,EAAO1/F,WAAW2/F,UAAW,EACpBD,EAAO1/F,WAAWjvB,eAAe,oBACnC2uH,EAAO1/F,WAAW2/F,QAG/B,CACA+B,EAAK70G,iBAAiB,SAASC,IAC7B,MAAM4C,EAAU5C,EAAME,OAAO0C,QACvBhe,GAAmC,IAA3Bge,EAAQuwG,cAAuB,GAAKvwG,EAAQA,EAAQuwG,eAAevuH,MACjFmpH,EAAQ9kD,SAAS5uD,EAAI,CACnBzV,SACA,IAIV,CACA,oBAAO0yB,EAAc,KACnBs9F,EAAI,QACJ/5G,EAAO,QACPkzG,EAAU,KAAI,OACd5xD,EAAM,YACN+qD,IAEA,MAAM,WACJh0F,GACErY,EACEggH,EAAsBjG,aAAgBkG,kBACpB,UAApB5nG,EAAW1hB,OACb0hB,EAAWtlB,KAAO,GAAGslB,EAAWtlB,QAAQuuD,KAE1C,UAAY5qD,EAAK3M,KAAUb,OAAO4e,QAAQuQ,GACxC,GAAItuB,QAGJ,OAAQ2M,GACN,IAAK,QACC3M,EAAM0F,QACRsqH,EAAKzvG,aAAa5T,EAAK3M,EAAMsM,KAAK,MAEpC,MACF,IAAK,SACH,MACF,IAAK,KACH0jH,EAAKzvG,aAAa,kBAAmBvgB,GACrC,MACF,IAAK,QACHb,OAAO0P,OAAOmhH,EAAKv4G,MAAOzX,GAC1B,MACF,IAAK,cACHgwH,EAAKj5G,YAAc/W,EACnB,MACF,UACOi2H,GAA+B,SAARtpH,GAA0B,cAARA,IAC5CqjH,EAAKzvG,aAAa5T,EAAK3M,GAI3Bi2H,GACF3T,EAAYmF,kBAAkBuI,EAAM1hG,EAAWlS,KAAMkS,EAAWo5F,WAE9DyB,GAAW76F,EAAW6nG,QACxBt2H,KAAKi2H,aAAa9F,EAAM1hG,EAAW6nG,OAAQlgH,EAASkzG,EAExD,CACA,aAAOtxD,CAAOqN,GACZ,MAAMikD,EAAUjkD,EAAWtR,kBACrB0uD,EAAcp9C,EAAWo9C,YACzB70F,EAAOy3C,EAAW6qD,QAClBx4D,EAAS2N,EAAW3N,QAAU,UAC9B6+D,EAAW9+G,SAASE,cAAciW,EAAKzkB,MACzCykB,EAAKa,YACPzuB,KAAK6yB,cAAc,CACjBs9F,KAAMoG,EACNngH,QAASwX,EACT8pC,SACA+qD,gBAGJ,MAAMrhH,EAAQ,CAAC,CAACwsB,GAAO,EAAG2oG,IACpBC,EAAUnxD,EAAWzkC,IAE3B,GADA41F,EAAQ7qG,OAAO4qG,GACXlxD,EAAWnN,SAAU,CACvB,MAAM5V,EAAY,UAAU+iB,EAAWnN,SAAS5V,UAAU71C,KAAK,QAC/D+pH,EAAQ5+G,MAAM0qC,UAAYA,CAC5B,CACe,aAAXoV,GACF8+D,EAAQ91G,aAAa,QAAS,oBAEhC,MAAM+3F,EAAW,GACjB,KAAOr3G,EAAMyE,OAAS,GAAG,CACvB,MAAOs/D,EAAQt8D,EAAGsnH,GAAQ/uH,EAAM8yE,IAAI,GACpC,GAAIrrE,EAAI,IAAMs8D,EAAOzrC,SAAS7zB,OAAQ,CACpCzE,EAAMwE,MACN,QACF,CACA,MAAM+9B,EAAQwhC,EAAOzrC,WAAWt4B,EAAM8yE,IAAI,GAAG,IAC7C,GAAc,OAAVvwC,EACF,SAEF,MAAM,KACJx6B,GACEw6B,EACJ,GAAa,UAATx6B,EAAkB,CACpB,MAAMgQ,EAAO1B,SAASyoG,eAAev8E,EAAMxjC,OAC3Cs4G,EAAS72G,KAAKuX,GACdg3G,EAAKxkG,OAAOxS,GACZ,QACF,CACA,MAAMs9G,EAAY9yF,GAAOlV,YAAYioG,MAAQj/G,SAAS2mE,gBAAgBz6C,EAAMlV,WAAWioG,MAAOvtH,GAAQsO,SAASE,cAAcxO,GAW7H,GAVAgnH,EAAKxkG,OAAO8qG,GACR9yF,EAAMlV,YACRzuB,KAAK6yB,cAAc,CACjBs9F,KAAMsG,EACNrgH,QAASutB,EACT2lF,UACA5xD,SACA+qD,gBAGA9+E,EAAMjK,UAAYiK,EAAMjK,SAAS7zB,OAAS,EAC5CzE,EAAMQ,KAAK,CAAC+hC,GAAQ,EAAG8yF,SAClB,GAAI9yF,EAAMxjC,MAAO,CACtB,MAAMgZ,EAAO1B,SAASyoG,eAAev8E,EAAMxjC,OACvCitD,EAAUyN,QAAQo9C,gBAAgB9uG,IACpCsvG,EAAS72G,KAAKuX,GAEhBs9G,EAAU9qG,OAAOxS,EACnB,CACF,CACA,UAAW8rB,KAAMuxF,EAAQ1lG,iBAAiB,yDACxCmU,EAAGvkB,aAAa,YAAY,GAE9B,MAAO,CACL+3F,WAEJ,CACA,aAAOj+E,CAAO6qC,GACZ,MAAM/iB,EAAY,UAAU+iB,EAAWnN,SAAS5V,UAAU71C,KAAK,QAC/D44D,EAAWzkC,IAAIhpB,MAAM0qC,UAAYA,EACjC+iB,EAAWzkC,IAAIuS,QAAS,CAC1B,EAEyB,EAIpB,CAACO,EAAyB70C,EAAS0sD,KAzwgB1C,uJA6wgBAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ29G,eAAY,EACpB,IAAIlwD,GAAQf,EAAoB,GAC5ByY,GAAUzY,EAAoB,GAC9ByyD,GAAoBzyD,EAAoB,IACxCiB,GAAiBjB,EAAoB,GACrC6Z,GAAS7Z,EAAoB,GACjC,MAAM,GAAN,MAAM,UAAkByY,GAAQO,iBAmB9B,WAAA5lD,CAAYtK,GACVozC,MAAM,IACDpzC,EACHlL,KAAM,cAoDV,qBAiBA,qBAiBA,qBAuFA,qBAgBA,qBAeA,qBAyBA,qBAoBA,qBAOA,qBA2CA,qBAwBA,qBAOA,qBAyBA,qBAgEA,qBAYA,qBAQA,qBA2CA,qBA8BA,qBAMA,qBAmFA,sBAmCA,sBAgBA,sBAGA,sBApqBA,oBAAc,GACd,oBAAa,GACb,oBAA0BnJ,KAAK22H,kBAAkBv0G,KAAKpiB,OACtD,oBAA2BA,KAAK42H,mBAAmBx0G,KAAKpiB,OACxD,oBAAwBA,KAAK62H,gBAAgBz0G,KAAKpiB,OAClD,oBAA0BA,KAAK82H,kBAAkB10G,KAAKpiB,OACtD,oBAAiB,IAAIy8F,QACrB,qBAAkB,GAClB,qBAAsB,GACtB,qBAAuB,GACvB,oBAAY,MACZ,oBAAa,GACb,oBAAc,GACd,oBAAwB,MAUtBz8F,KAAKy0E,MAAQpgE,EAAOogE,OAAS,KAC7Bz0E,KAAK+2H,UAAY1iH,EAAO0iH,WAAa,KACrC/2H,KAAK8xE,QAAUz9D,EAAOy9D,SAAW,KACjC9xE,KAAK02F,MAAQ,GACb12F,KAAKg3H,aAAe,GACpBh3H,KAAKi3H,YAAc,GACnBj3H,KAAKk3H,YAAc,GACnBl3H,KAAKs4G,YAAc,EACnBt4G,KAAKm3H,aAAen3H,KAAKo3H,aAAe,EACxCp3H,KAAKZ,EAAI,EACTY,KAAKgF,EAAI,EACThF,KAAK4lE,sBAAuB,CAC9B,CACA,iBAAO2B,CAAW93B,GAChBu0B,GAAQO,iBAAiBgD,WAAW93B,EAAM,CACxCg4B,QAAS,CAAC,+BAAgC,2BAE9C,CACA,0BAAOK,CAAoB/6D,EAAM5M,GAC/B,OAAQ4M,GACN,KAAKu/C,GAAM1W,2BAA2B2F,cACpC,EAAU87E,kBAAoBl3H,EAC9B,MACF,KAAKmsD,GAAM1W,2BAA2B0F,UACpC,EAAU+iE,cAAgBl+G,EAC1B,MACF,KAAKmsD,GAAM1W,2BAA2B4F,YACpC,EAAU87E,gBAAkBn3H,EAAQ,IAG1C,CACA,YAAAotE,CAAaxgE,EAAM5M,GACjB,OAAQ4M,GACN,KAAKu/C,GAAM1W,2BAA2B2F,cACpC,gBAAAv7C,KAAK,KAAL,KAAAA,KAAsBG,GACtB,MACF,KAAKmsD,GAAM1W,2BAA2B0F,UACpC,gBAAAt7C,KAAK,KAAL,KAAAA,KAAkBG,GAClB,MACF,KAAKmsD,GAAM1W,2BAA2B4F,YACpC,gBAAAx7C,KAAK,KAAL,KAAAA,KAAoBG,GAG1B,CACA,oCAAW6nE,GACT,MAAO,CAAC,CAAC1b,GAAM1W,2BAA2B2F,cAAe,EAAU87E,mBAAoB,CAAC/qE,GAAM1W,2BAA2B0F,UAAW,EAAU+iE,eAAiBr6C,GAAQO,iBAAiBuC,mBAAoB,CAACxa,GAAM1W,2BAA2B4F,YAAa/3B,KAAKonD,MAAkC,IAA5B,EAAUysD,kBAClR,CACA,sBAAIlvD,GACF,MAAO,CAAC,CAAC9b,GAAM1W,2BAA2B2F,cAAev7C,KAAK+2H,WAAa,EAAUM,mBAAoB,CAAC/qE,GAAM1W,2BAA2B0F,UAAWt7C,KAAKy0E,OAAS,EAAU4pC,eAAiBr6C,GAAQO,iBAAiBuC,mBAAoB,CAACxa,GAAM1W,2BAA2B4F,YAAa/3B,KAAKonD,MAAM,KAAO7qE,KAAK8xE,SAAW,EAAUwlD,mBACzU,CAqDA,OAAAvqD,GACO/sE,KAAKmlE,SAGV1d,MAAMslB,UACW,OAAb/sE,KAAK4gC,MAGJ5gC,KAAKqiE,SACR,gBAAAriE,KAAK,KAAL,KAAAA,MACA,gBAAAA,KAAK,KAAL,KAAAA,OAEGA,KAAK0mE,kBACR1mE,KAAKmlE,OAAOv9C,IAAI5nB,MAChB,gBAAAA,KAAK,KAAL,KAAAA,OAEF,gBAAAA,KAAK,OAAL,KAAAA,OACF,CACA,MAAA8mB,GACsB,OAAhB9mB,KAAKqiE,SAGJriE,KAAKqpE,WACRrpE,KAAKspE,SAEPtpE,KAAKqiE,OAAOtgC,MAAQ/hC,KAAKqiE,OAAOpgC,OAAS,EACzCjiC,KAAKqiE,OAAOv7C,SACZ9mB,KAAKqiE,OAAS,KACd,aAAAriE,KAAK,GAAUgmB,aACf,aAAAhmB,KAAK,EAAY,MACjBynD,MAAM3gC,SACR,CACA,SAAAiiD,CAAU5D,IACHnlE,KAAKmlE,QAAUA,EAClBnlE,KAAKylE,WAAW8R,oBAAoBv3E,MAC3BA,KAAKmlE,QAAqB,OAAXA,GACxBnlE,KAAKylE,WAAW6R,iBAAiBt3E,MAEnCynD,MAAMshB,UAAU5D,EAClB,CACA,eAAAuQ,GACE,MAAO1L,EAAaC,GAAgBjqE,KAAKymE,iBACnC1kC,EAAQ/hC,KAAK+hC,MAAQioC,EACrB/nC,EAASjiC,KAAKiiC,OAASgoC,EAC7BjqE,KAAKu3H,cAAcx1F,EAAOE,EAC5B,CACA,cAAAyqC,GACM,aAAA1sE,KAAK,IAAmC,OAAhBA,KAAKqiE,SAGjC5a,MAAMilB,iBACN1sE,KAAKqoE,cAAe,EACpBroE,KAAKqiE,OAAO/mD,iBAAiB,cAAe,aAAAtb,KAAK,IACnD,CACA,eAAA2sE,GACO3sE,KAAK4sE,gBAAkC,OAAhB5sE,KAAKqiE,SAGjC5a,MAAMklB,kBACN3sE,KAAKqoE,cAAgBroE,KAAKqpE,UAC1BrpE,KAAK4gC,IAAIoO,UAAUloB,OAAO,WAC1B9mB,KAAKqiE,OAAOv/C,oBAAoB,cAAe,aAAA9iB,KAAK,IACtD,CACA,SAAAysE,GACEzsE,KAAKqoE,cAAgBroE,KAAKqpE,SAC5B,CACA,OAAAA,GACE,OAA6B,IAAtBrpE,KAAK02F,MAAM7wF,QAAsC,IAAtB7F,KAAK02F,MAAM7wF,QAAyC,IAAzB7F,KAAK02F,MAAM,GAAG7wF,MAC7E,CAwMA,MAAAyjE,GACM,aAAAtpE,KAAK,KAGTynD,MAAM6hB,SACNtpE,KAAK4tE,WAAY,EACjB5tE,KAAK2sE,kBACL3sE,KAAK8oE,kBACL,aAAA9oE,KAAK,GAAkB,GACvBA,KAAK4gC,IAAIoO,UAAUpnB,IAAI,YACvB,gBAAA5nB,KAAK,OAAL,KAAAA,MAAmB,GACnBA,KAAKotE,gBACLptE,KAAKmlE,OAAOw3C,sBAAqB,GACjC38G,KAAKuqE,YACLvqE,KAAK4gC,IAAIzO,MAAM,CACbysF,eAAe,IAEnB,CACA,OAAAt5C,CAAQ/pD,GACDvb,KAAKgpE,sBAGVvhB,MAAM6d,QAAQ/pD,GACdvb,KAAK0sE,iBACP,CACA,iBAAAoqD,CAAkBv7G,GACK,IAAjBA,EAAMkW,QAAiBzxB,KAAK4sE,iBAAkB,aAAA5sE,KAAK,KAGvDA,KAAK8oE,kBACLvtD,EAAMwW,iBACa,UAAfxW,EAAMxO,MACR/M,KAAK4gC,IAAIzO,QAEX,gBAAAnyB,KAAK,KAAL,KAAAA,KAAmBub,EAAM67C,QAAS77C,EAAM87C,SAC1C,CACA,iBAAAs/D,CAAkBp7G,GAChBA,EAAMwW,iBACN,gBAAA/xB,KAAK,KAAL,KAAAA,KAAWub,EAAM67C,QAAS77C,EAAM87C,QAClC,CACA,eAAAw/D,CAAgBt7G,GACdA,EAAMwW,iBACN,gBAAA/xB,KAAK,KAAL,KAAAA,KAAiBub,EACnB,CACA,kBAAAq7G,CAAmBr7G,GACjB,gBAAAvb,KAAK,KAAL,KAAAA,KAAiBub,EACnB,CA8BA,eAAI4xD,GACF,OAAQntE,KAAKqpE,WAAa,aAAArpE,KAAK,EACjC,CACA,MAAAg4D,GACE,GAAIh4D,KAAK4gC,IACP,OAAO5gC,KAAK4gC,IAEd,IAAIs+E,EAAOC,EACPn/G,KAAK+hC,QACPm9E,EAAQl/G,KAAKZ,EACb+/G,EAAQn/G,KAAKgF,GAEfyiD,MAAMuQ,SACNgM,GAAQO,iBAAiBiD,aAAa/mE,IAAI,0BAA0BoE,MAAKuV,GAAOpa,KAAK4gC,KAAKlgB,aAAa,aAActG,KACrH,MAAOhb,EAAG4F,EAAG2jC,EAAGC,GAAK,gBAAA5oC,KAAK,KAAL,KAAAA,MAIrB,GAHAA,KAAKupE,MAAMnqE,EAAG4F,EAAG,EAAG,GACpBhF,KAAK8qE,QAAQniC,EAAGC,GAChB,gBAAA5oC,KAAK,KAAL,KAAAA,MACIA,KAAK+hC,MAAO,CACd,MAAOioC,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAK8tE,eAAe9tE,KAAK+hC,MAAQioC,EAAahqE,KAAKiiC,OAASgoC,GAC5DjqE,KAAKupE,MAAM21C,EAAQl1C,EAAam1C,EAAQl1C,EAAcjqE,KAAK+hC,MAAQioC,EAAahqE,KAAKiiC,OAASgoC,GAC9F,aAAAjqE,KAAK,GAAuB,GAC5B,gBAAAA,KAAK,KAAL,KAAAA,MACAA,KAAK8qE,QAAQ9qE,KAAK+hC,MAAQioC,EAAahqE,KAAKiiC,OAASgoC,GACrD,gBAAAjqE,KAAK,KAAL,KAAAA,MACAA,KAAK4gC,IAAIoO,UAAUpnB,IAAI,WACzB,MACE5nB,KAAK4gC,IAAIoO,UAAUpnB,IAAI,WACvB5nB,KAAK0sE,iBAGP,OADA,gBAAA1sE,KAAK,KAAL,KAAAA,MACOA,KAAK4gC,GACd,CAUA,aAAA22F,CAAcx1F,EAAOE,GACnB,MAAMu1F,EAAe/zG,KAAKonD,MAAM9oC,GAC1B01F,EAAgBh0G,KAAKonD,MAAM5oC,GACjC,GAAI,aAAAjiC,KAAK,KAAew3H,GAAgB,aAAAx3H,KAAK,KAAgBy3H,EAC3D,OAEF,aAAAz3H,KAAK,EAAaw3H,GAClB,aAAAx3H,KAAK,EAAcy3H,GACnBz3H,KAAKqiE,OAAOzqD,MAAM2iE,WAAa,SAC/B,MAAOvQ,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAK+hC,MAAQA,EAAQioC,EACrBhqE,KAAKiiC,OAASA,EAASgoC,EACvBjqE,KAAKyoE,oBACD,aAAAzoE,KAAK,IACP,gBAAAA,KAAK,KAAL,KAAAA,KAAqB+hC,EAAOE,GAE9B,gBAAAjiC,KAAK,KAAL,KAAAA,MACA,gBAAAA,KAAK,KAAL,KAAAA,MACAA,KAAKqiE,OAAOzqD,MAAM2iE,WAAa,UAC/Bv6E,KAAKgrE,SACP,CA8KA,kBAAOiC,CAAYroD,EAAMugD,EAAQO,GAz9hBnC,UA09hBI,GAAI9gD,aAAgBo5F,GAAkBoC,qBACpC,OAAO,KAET,MAAMl5C,EAASzf,MAAMwlB,YAAYroD,EAAMugD,EAAQO,GAC/CwB,EAAO6vD,UAAYnyG,EAAKmyG,UACxB7vD,EAAOuN,MAAQnoB,GAAMv2C,KAAKwyC,gBAAgB3jC,EAAK6vD,OAC/CvN,EAAO4K,QAAUltD,EAAKktD,QACtB,MAAO7L,EAAWC,GAAcgB,EAAOX,eACjCxkC,EAAQmlC,EAAOnlC,MAAQkkC,EACvBhkC,EAASilC,EAAOjlC,OAASikC,EACzBoyC,EAAcpxC,EAAOuD,YACrBi1C,EAAU96F,EAAKmyG,UAAY,EACjC,aAAA7vD,EAAO,GAAkB,GACzB,aAAAA,EAAO,EAAazjD,KAAKonD,MAAM9oC,IAC/B,aAAAmlC,EAAO,EAAczjD,KAAKonD,MAAM5oC,IAChC,MAAM,MACJy0D,EAAK,KACLjtC,EAAI,SACJ0N,GACEvyC,EACJ,QAAS,OACP8yG,KACGhhC,EAAO,CACVghC,EAAS,oBAAU,OAAV,OAA8BA,EAAQjuE,EAAM0N,GACrD,MAAMnrD,EAAO,GACbk7D,EAAOwvB,MAAM90F,KAAKoK,GAClB,IAAI0wF,EAAK4b,GAAeof,EAAO,GAAKhY,GAChClnE,EAAK8/D,GAAeof,EAAO,GAAKhY,GACpC,QAAS72G,EAAI,EAAGovC,EAAKy/E,EAAO7xH,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAAG,CAClD,MAAM8uH,EAAMrf,GAAeof,EAAO7uH,GAAK62G,GACjCkY,EAAMtf,GAAeof,EAAO7uH,EAAI,GAAK62G,GACrCmY,EAAMvf,GAAeof,EAAO7uH,EAAI,GAAK62G,GACrCoY,EAAMxf,GAAeof,EAAO7uH,EAAI,GAAK62G,GACrCqY,EAAMzf,GAAeof,EAAO7uH,EAAI,GAAK62G,GACrCsY,EAAM1f,GAAeof,EAAO7uH,EAAI,GAAK62G,GAC3C1zG,EAAKpK,KAAK,CAAC,CAAC86F,EAAIlkD,GAAK,CAACm/E,EAAKC,GAAM,CAACC,EAAKC,GAAM,CAACC,EAAKC,KACnDt7B,EAAKq7B,EACLv/E,EAAKw/E,CACP,CACA,MAAMC,EAAS,gBAAAj4H,KAAK,OAAL,KAAAA,KAAkBgM,GACjCk7D,EAAO8vD,aAAap1H,KAAKq2H,EAC3B,CACA,MAAMl9B,EAAO,kBAAA7zB,EAAO,OAAP,QAIb,OAHA,aAAAA,EAAO,EAAazjD,KAAK6H,IAAI04C,GAAQO,iBAAiByJ,SAAU+sB,EAAK,GAAKA,EAAK,KAC/E,aAAA7zB,EAAO,EAAczjD,KAAK6H,IAAI04C,GAAQO,iBAAiByJ,SAAU+sB,EAAK,GAAKA,EAAK,KAChF,kBAAA7zB,EAAO,KAAP,OAAuBnlC,EAAOE,GACvBilC,CACT,CACA,SAAA18D,GACE,GAAIxK,KAAKqpE,UACP,OAAO,KAET,MAAM5f,EAAOzpD,KAAKqsE,QAAQ,EAAG,GACvBoI,EAAQzQ,GAAQO,iBAAiBwC,cAAcyN,QAAQx0E,KAAKm5B,IAAIszD,aACtE,MAAO,CACLmxB,eAAgBtxD,GAAM5W,qBAAqBsF,IAC3Cy5B,QACAsiD,UAAW/2H,KAAK+2H,UAChBjlD,QAAS9xE,KAAK8xE,QACd4kB,MAAO,gBAAA12F,KAAK,OAAL,KAAAA,KAAqBA,KAAKs4G,YAAct4G,KAAKyqE,YAAazqE,KAAKm3H,aAAcn3H,KAAKo3H,aAAc3tE,GACvGyM,UAAWl2D,KAAKk2D,UAChBzM,OACA0N,SAAUn3D,KAAKm3D,SACfwoD,mBAAoB3/G,KAAK+lE,oBAE7B,GApwBA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cA4DA,gBAAgB,SAACgxD,GACf,MAAMmB,EAAiBl4H,KAAK+2H,UAC5B/2H,KAAK0oE,YAAY,CACfyG,IAAK,KACHnvE,KAAK+2H,UAAYA,EACjB,gBAAA/2H,KAAK,OAAL,KAAAA,KAAA,EAEFovE,KAAM,KACJpvE,KAAK+2H,UAAYmB,EACjB,gBAAAl4H,KAAK,OAAL,KAAAA,KAAA,EAEFqvE,UAAU,EACVtiE,KAAMu/C,GAAM1W,2BAA2B2F,cACvCo4B,qBAAqB,EACrBC,UAAU,GAEd,EACA,gBAAY,SAACa,GACX,MAAMqrC,EAAa9/G,KAAKy0E,MACxBz0E,KAAK0oE,YAAY,CACfyG,IAAK,KACHnvE,KAAKy0E,MAAQA,EACb,gBAAAz0E,KAAK,KAAL,KAAAA,KAAA,EAEFovE,KAAM,KACJpvE,KAAKy0E,MAAQqrC,EACb,gBAAA9/G,KAAK,KAAL,KAAAA,KAAA,EAEFqvE,UAAU,EACVtiE,KAAMu/C,GAAM1W,2BAA2B0F,UACvCq4B,qBAAqB,EACrBC,UAAU,GAEd,EACA,gBAAc,SAAC9B,GACbA,GAAW,IACX,MAAMqmD,EAAen4H,KAAK8xE,QAC1B9xE,KAAK0oE,YAAY,CACfyG,IAAK,KACHnvE,KAAK8xE,QAAUA,EACf,gBAAA9xE,KAAK,KAAL,KAAAA,KAAA,EAEFovE,KAAM,KACJpvE,KAAK8xE,QAAUqmD,EACf,gBAAAn4H,KAAK,KAAL,KAAAA,KAAA,EAEFqvE,UAAU,EACVtiE,KAAMu/C,GAAM1W,2BAA2B4F,YACvCm4B,qBAAqB,EACrBC,UAAU,GAEd,EAsEA,gBAAe,WACb,MAAM,eACJpL,EACA/B,kBAAmB1kC,EAAOE,IACxBjiC,KACJ,OAAQwoE,GACN,KAAK,GACH,MAAO,CAAC,EAAGvmC,EAAQA,EAAQF,GAC7B,KAAK,IACH,MAAO,CAACA,EAAOE,EAAQF,EAAOE,GAChC,KAAK,IACH,MAAO,CAACF,EAAO,EAAGE,EAAQF,GAC5B,QACE,MAAO,CAAC,EAAG,EAAGA,EAAOE,GAE3B,EACA,gBAAU,WACR,MAAM,IACJ9I,EAAG,MACHs7C,EAAK,QACL3C,EAAO,UACPilD,EAAS,YACTtsD,EAAW,YACX6tC,GACEt4G,KACJm5B,EAAI0vD,UAAYkuC,EAAYtsD,EAAc6tC,EAC1Cn/E,EAAI0zD,QAAU,QACd1zD,EAAI2zD,SAAW,QACf3zD,EAAI4zD,WAAa,GACjB5zD,EAAIszD,YAAc,GAAGhY,KAAQ,EAAIrP,GAAOyM,cAAcC,IACxD,EACA,gBAAa,SAAC1yE,EAAG4F,GACfhF,KAAKqiE,OAAO/mD,iBAAiB,cAAekxC,GAAe+e,eAC3DvrE,KAAKqiE,OAAO/mD,iBAAiB,eAAgB,aAAAtb,KAAK,IAClDA,KAAKqiE,OAAO/mD,iBAAiB,cAAe,aAAAtb,KAAK,IACjDA,KAAKqiE,OAAO/mD,iBAAiB,YAAa,aAAAtb,KAAK,IAC/CA,KAAKqiE,OAAOv/C,oBAAoB,cAAe,aAAA9iB,KAAK,IACpDA,KAAK4tE,WAAY,EACZ,aAAA5tE,KAAK,KACR,aAAAA,KAAK,GAAuB,GAC5B,gBAAAA,KAAK,KAAL,KAAAA,MACAA,KAAK+2H,YAAc,GAAUM,kBAC7Br3H,KAAKy0E,QAAU,GAAU4pC,eAAiBr6C,GAAQO,iBAAiBuC,kBACnE9mE,KAAK8xE,UAAY,GAAUwlD,iBAE7Bt3H,KAAKk3H,YAAYt1H,KAAK,CAACxC,EAAG4F,IAC1B,aAAAhF,KAAK,GAAsB,GAC3B,gBAAAA,KAAK,KAAL,KAAAA,MACA,aAAAA,KAAK,GAAwB,KAC3B,gBAAAA,KAAK,KAAL,KAAAA,MACI,aAAAA,KAAK,IACPhB,OAAO6kE,sBAAsB,aAAA7jE,KAAK,GACpC,IAEFhB,OAAO6kE,sBAAsB,aAAA7jE,KAAK,GACpC,EACA,gBAAK,SAACZ,EAAG4F,GACP,MAAOozH,EAAOC,GAASr4H,KAAKk3H,YAAYhjD,IAAI,GAC5C,GAAIl0E,KAAKk3H,YAAYrxH,OAAS,GAAKzG,IAAMg5H,GAASpzH,IAAMqzH,EACtD,OAEF,MAAMnB,EAAcl3H,KAAKk3H,YACzB,IAAIe,EAAS,aAAAj4H,KAAK,GAGlB,GAFAk3H,EAAYt1H,KAAK,CAACxC,EAAG4F,IACrB,aAAAhF,KAAK,GAAsB,GACvBk3H,EAAYrxH,QAAU,EAGxB,OAFAoyH,EAAO11E,UAAU20E,EAAY,SAC7Be,EAAOz1E,OAAOpjD,EAAG4F,GAGQ,IAAvBkyH,EAAYrxH,SACd,aAAA7F,KAAK,EAAiBi4H,EAAS,IAAIx7B,QACnCw7B,EAAO11E,UAAU20E,EAAY,KAE/B,gBAAAl3H,KAAK,KAAL,KAAAA,KAAsBi4H,KAAWf,EAAYhjD,IAAI,MAAOgjD,EAAYhjD,IAAI,GAAI90E,EAAG4F,EACjF,EACA,gBAAQ,WACN,GAAgC,IAA5BhF,KAAKk3H,YAAYrxH,OACnB,OAEF,MAAMyyH,EAAYt4H,KAAKk3H,YAAYhjD,IAAI,GACvC,aAAAl0E,KAAK,GAAewiD,UAAU81E,EAChC,EACA,gBAAY,SAACl5H,EAAG4F,GAMd,IAAI0yH,EACJ,GANA,aAAA13H,KAAK,EAAwB,MAC7BZ,EAAIqkB,KAAKE,IAAIF,KAAK6H,IAAIlsB,EAAG,GAAIY,KAAKqiE,OAAOtgC,OACzC/8B,EAAIye,KAAKE,IAAIF,KAAK6H,IAAItmB,EAAG,GAAIhF,KAAKqiE,OAAOpgC,QACzC,gBAAAjiC,KAAK,KAAL,KAAAA,KAAWZ,EAAG4F,GACd,gBAAAhF,KAAK,KAAL,KAAAA,MAEgC,IAA5BA,KAAKk3H,YAAYrxH,OACnB6xH,EAAS,gBAAA13H,KAAK,KAAL,KAAAA,UACJ,CACL,MAAMu4H,EAAK,CAACn5H,EAAG4F,GACf0yH,EAAS,CAAC,CAACa,EAAIA,EAAGtrH,QAASsrH,EAAGtrH,QAASsrH,GACzC,CACA,MAAMN,EAAS,aAAAj4H,KAAK,GACdk3H,EAAcl3H,KAAKk3H,YACzBl3H,KAAKk3H,YAAc,GACnB,aAAAl3H,KAAK,EAAiB,IAAIy8F,QAqB1Bz8F,KAAK0oE,YAAY,CACfyG,IArBU,KACVnvE,KAAKi3H,YAAYr1H,KAAKs1H,GACtBl3H,KAAK02F,MAAM90F,KAAK81H,GAChB13H,KAAKg3H,aAAap1H,KAAKq2H,GACvBj4H,KAAK+sE,SAAS,EAkBdqC,KAhBW,KACXpvE,KAAKi3H,YAAYrxH,MACjB5F,KAAK02F,MAAM9wF,MACX5F,KAAKg3H,aAAapxH,MACQ,IAAtB5F,KAAK02F,MAAM7wF,OACb7F,KAAK8mB,UAEA9mB,KAAKqiE,SACR,gBAAAriE,KAAK,KAAL,KAAAA,MACA,gBAAAA,KAAK,KAAL,KAAAA,OAEF,gBAAAA,KAAK,OAAL,KAAAA,MACF,EAKAqvE,UAAU,GAEd,EACA,gBAAW,WACT,IAAK,aAAArvE,KAAK,GACR,OAEF,aAAAA,KAAK,GAAsB,GACTyjB,KAAKqJ,KAAK9sB,KAAK+2H,UAAY/2H,KAAKyqE,aAAlD,MACM+tD,EAAax4H,KAAKk3H,YAAYjqH,OAAO,GACrC7N,EAAIo5H,EAAWvwH,KAAIswH,GAAMA,EAAG,KAC5BvzH,EAAIwzH,EAAWvwH,KAAIswH,GAAMA,EAAG,MAK5B,IACJp/F,IALW1V,KAAKE,OAAOvkB,GACZqkB,KAAK6H,OAAOlsB,GACZqkB,KAAKE,OAAO3e,GACZye,KAAK6H,OAAOtmB,GAGrBhF,MACJm5B,EAAIipB,OACJjpB,EAAIu5D,UAAU,EAAG,EAAG1yF,KAAKqiE,OAAOtgC,MAAO/hC,KAAKqiE,OAAOpgC,QACnD,UAAWj2B,KAAQhM,KAAKg3H,aACtB79F,EAAI2pB,OAAO92C,GAEbmtB,EAAI2pB,OAAO,aAAA9iD,KAAK,IAChBm5B,EAAIkpB,SACN,EACA,gBAAgB,SAAC41E,EAAQ/tE,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,GAC3C,MAAMkuE,GAASvuE,EAAKE,GAAM,EACpBsuE,GAASvuE,EAAKE,GAAM,EACpBG,GAAMJ,EAAKE,GAAM,EACjBG,GAAMJ,EAAKE,GAAM,EACvB0tE,EAAO7iC,cAAcqjC,EAAQ,GAAKruE,EAAKquE,GAAS,EAAGC,EAAQ,GAAKruE,EAAKquE,GAAS,EAAGluE,EAAK,GAAKJ,EAAKI,GAAM,EAAGC,EAAK,GAAKJ,EAAKI,GAAM,EAAGD,EAAIC,EACvI,EACA,gBAAqB,WACnB,MAAMz+C,EAAOhM,KAAKk3H,YAClB,GAAIlrH,EAAKnG,QAAU,EACjB,MAAO,CAAC,CAACmG,EAAK,GAAIA,EAAK,GAAIA,EAAKkoE,IAAI,GAAIloE,EAAKkoE,IAAI,KAEnD,MAAMykD,EAAe,GACrB,IAAI9vH,GACCqhD,EAAIC,GAAMn+C,EAAK,GACpB,IAAKnD,EAAI,EAAGA,EAAImD,EAAKnG,OAAS,EAAGgD,IAAK,CACpC,MAAOuhD,EAAIC,GAAMr+C,EAAKnD,IACfyhD,EAAIC,GAAMv+C,EAAKnD,EAAI,GACpB2hD,GAAMJ,EAAKE,GAAM,EACjBG,GAAMJ,EAAKE,GAAM,EACjBquE,EAAW,CAAC1uE,EAAK,GAAKE,EAAKF,GAAM,EAAGC,EAAK,GAAKE,EAAKF,GAAM,GACzD0uE,EAAW,CAACruE,EAAK,GAAKJ,EAAKI,GAAM,EAAGC,EAAK,GAAKJ,EAAKI,GAAM,GAC/DkuE,EAAa/2H,KAAK,CAAC,CAACsoD,EAAIC,GAAKyuE,EAAUC,EAAU,CAACruE,EAAIC,MACrDP,EAAIC,GAAM,CAACK,EAAIC,EAClB,CACA,MAAOL,EAAIC,GAAMr+C,EAAKnD,IACfyhD,EAAIC,GAAMv+C,EAAKnD,EAAI,GACpB+vH,EAAW,CAAC1uE,EAAK,GAAKE,EAAKF,GAAM,EAAGC,EAAK,GAAKE,EAAKF,GAAM,GACzD0uE,EAAW,CAACvuE,EAAK,GAAKF,EAAKE,GAAM,EAAGC,EAAK,GAAKF,EAAKE,GAAM,GAE/D,OADAouE,EAAa/2H,KAAK,CAAC,CAACsoD,EAAIC,GAAKyuE,EAAUC,EAAU,CAACvuE,EAAIC,KAC/CouE,CACT,EACA,gBAAO,WACL,GAAI34H,KAAKqpE,UAEP,YADA,gBAAArpE,KAAK,MAAL,KAAAA,MAGF,gBAAAA,KAAK,KAAL,KAAAA,MACA,MAAM,OACJqiE,EAAM,IACNlpC,GACEn5B,KACJm5B,EAAIouD,aAAa,EAAG,EAAG,EAAG,EAAG,EAAG,GAChCpuD,EAAIu5D,UAAU,EAAG,EAAGrwB,EAAOtgC,MAAOsgC,EAAOpgC,QACzC,gBAAAjiC,KAAK,MAAL,KAAAA,MACA,UAAWgM,KAAQhM,KAAKg3H,aACtB79F,EAAI2pB,OAAO92C,EAEf,EAgDA,gBAAW,SAACuP,GACVvb,KAAKqiE,OAAOv/C,oBAAoB,eAAgB,aAAA9iB,KAAK,IACrDA,KAAKqiE,OAAOv/C,oBAAoB,cAAe,aAAA9iB,KAAK,IACpDA,KAAKqiE,OAAOv/C,oBAAoB,YAAa,aAAA9iB,KAAK,IAClDA,KAAKqiE,OAAO/mD,iBAAiB,cAAe,aAAAtb,KAAK,IACjDka,YAAW,KACTla,KAAKqiE,OAAOv/C,oBAAoB,cAAe0pC,GAAe+e,cAAc,GAC3E,IACH,gBAAAvrE,KAAK,KAAL,KAAAA,KAAkBub,EAAM67C,QAAS77C,EAAM87C,SACvCr3D,KAAKsnE,yBACLtnE,KAAK4oE,iBACP,EACA,gBAAa,WACX5oE,KAAKqiE,OAAS5qD,SAASE,cAAc,UACrC3X,KAAKqiE,OAAOtgC,MAAQ/hC,KAAKqiE,OAAOpgC,OAAS,EACzCjiC,KAAKqiE,OAAO7rD,UAAY,kBACxBwtD,GAAQO,iBAAiBiD,aAAa/mE,IAAI,gCAAgCoE,MAAKuV,GAAOpa,KAAKqiE,QAAQ3hD,aAAa,aAActG,KAC9Hpa,KAAK4gC,IAAIjV,OAAO3rB,KAAKqiE,QACrBriE,KAAKm5B,IAAMn5B,KAAKqiE,OAAO6P,WAAW,KACpC,EACA,gBAAe,WACb,aAAAlyE,KAAK,EAAY,IAAI84H,gBAAe56G,IAClC,MAAMurC,EAAOvrC,EAAQ,GAAG66G,YACpBtvE,EAAK1nB,OAAS0nB,EAAKxnB,QACrBjiC,KAAKu3H,cAAc9tE,EAAK1nB,MAAO0nB,EAAKxnB,OACtC,KAEF,aAAAjiC,KAAK,GAAUg5H,QAAQh5H,KAAK4gC,IAC9B,EAmCA,gBAAc,WACZ,IAAK,aAAA5gC,KAAK,GACR,OAEF,MAAOgqE,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAKqiE,OAAOtgC,MAAQte,KAAKqJ,KAAK9sB,KAAK+hC,MAAQioC,GAC3ChqE,KAAKqiE,OAAOpgC,OAASxe,KAAKqJ,KAAK9sB,KAAKiiC,OAASgoC,GAC7C,gBAAAjqE,KAAK,MAAL,KAAAA,KACF,EAsBA,gBAAe,SAAC+hC,EAAOE,GACrB,MAAMy9E,EAAU,gBAAA1/G,KAAK,OAAL,KAAAA,MACVi5H,GAAgBl3F,EAAQ29E,GAAW,aAAA1/G,KAAK,GACxCk5H,GAAgBj3F,EAASy9E,GAAW,aAAA1/G,KAAK,GAC/CA,KAAKs4G,YAAc70F,KAAKE,IAAIs1G,EAAcC,EAC5C,EACA,iBAAgB,WACd,MAAMxZ,EAAU,gBAAA1/G,KAAK,OAAL,KAAAA,MAAqB,EACrCA,KAAKm5B,IAAIouD,aAAavnF,KAAKs4G,YAAa,EAAG,EAAGt4G,KAAKs4G,YAAat4G,KAAKm3H,aAAen3H,KAAKs4G,YAAcoH,EAAS1/G,KAAKo3H,aAAep3H,KAAKs4G,YAAcoH,EACzJ,EACO,kBAAY,SAACgY,GAClB,MAAMO,EAAS,IAAIx7B,OACnB,QAAS5zF,EAAI,EAAGovC,EAAKy/E,EAAO7xH,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC/C,MAAO8hB,EAAOiuG,EAAUC,EAAUjuG,GAAU8sG,EAAO7uH,GACzC,IAANA,GACFovH,EAAO11E,UAAU53B,GAEnBstG,EAAO7iC,cAAcwjC,EAAS,GAAIA,EAAS,GAAIC,EAAS,GAAIA,EAAS,GAAIjuG,EAAO,GAAIA,EAAO,GAC7F,CACA,OAAOqtG,CACT,EACO,kBAAiB,SAAC97B,EAAQ1yC,EAAM0N,GACrC,MAAO8uD,EAAKC,EAAKH,EAAKC,GAAOv8D,EAC7B,OAAQ0N,GACN,KAAK,EACH,QAAStuD,EAAI,EAAGovC,EAAKkkD,EAAOt2F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAC/CszF,EAAOtzF,IAAMo9G,EACb9pB,EAAOtzF,EAAI,GAAKm9G,EAAM7pB,EAAOtzF,EAAI,GAEnC,MACF,KAAK,GACH,QAASA,EAAI,EAAGovC,EAAKkkD,EAAOt2F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAAG,CAClD,MAAMzJ,EAAI+8F,EAAOtzF,GACjBszF,EAAOtzF,GAAKszF,EAAOtzF,EAAI,GAAKo9G,EAC5B9pB,EAAOtzF,EAAI,GAAKzJ,EAAI8mH,CACtB,CACA,MACF,KAAK,IACH,QAASr9G,EAAI,EAAGovC,EAAKkkD,EAAOt2F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAC/CszF,EAAOtzF,GAAKk9G,EAAM5pB,EAAOtzF,GACzBszF,EAAOtzF,EAAI,IAAMq9G,EAEnB,MACF,KAAK,IACH,QAASr9G,EAAI,EAAGovC,EAAKkkD,EAAOt2F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAAG,CAClD,MAAMzJ,EAAI+8F,EAAOtzF,GACjBszF,EAAOtzF,GAAKk9G,EAAM5pB,EAAOtzF,EAAI,GAC7BszF,EAAOtzF,EAAI,GAAKm9G,EAAM5mH,CACxB,CACA,MACF,QACE,MAAM,IAAIqM,MAAM,oBAEpB,OAAO0wF,CACT,EACO,kBAAmB,SAACA,EAAQ1yC,EAAM0N,GACvC,MAAO8uD,EAAKC,EAAKH,EAAKC,GAAOv8D,EAC7B,OAAQ0N,GACN,KAAK,EACH,QAAStuD,EAAI,EAAGovC,EAAKkkD,EAAOt2F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAC/CszF,EAAOtzF,IAAMo9G,EACb9pB,EAAOtzF,EAAI,GAAKm9G,EAAM7pB,EAAOtzF,EAAI,GAEnC,MACF,KAAK,GACH,QAASA,EAAI,EAAGovC,EAAKkkD,EAAOt2F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAAG,CAClD,MAAMzJ,EAAI+8F,EAAOtzF,GACjBszF,EAAOtzF,GAAKszF,EAAOtzF,EAAI,GAAKq9G,EAC5B/pB,EAAOtzF,EAAI,GAAKzJ,EAAI6mH,CACtB,CACA,MACF,KAAK,IACH,QAASp9G,EAAI,EAAGovC,EAAKkkD,EAAOt2F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAC/CszF,EAAOtzF,GAAKk9G,EAAM5pB,EAAOtzF,GACzBszF,EAAOtzF,EAAI,IAAMq9G,EAEnB,MACF,KAAK,IACH,QAASr9G,EAAI,EAAGovC,EAAKkkD,EAAOt2F,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAAG,CAClD,MAAMzJ,EAAI+8F,EAAOtzF,GACjBszF,EAAOtzF,GAAKm9G,EAAM7pB,EAAOtzF,EAAI,GAC7BszF,EAAOtzF,EAAI,GAAKk9G,EAAM3mH,CACxB,CACA,MACF,QACE,MAAM,IAAIqM,MAAM,oBAEpB,OAAO0wF,CACT,EACA,kBAAe,SAACltF,EAAGu6D,EAAIC,EAAIhgB,GAr4hB7B,QAs4hBI,MAAMitC,EAAQ,GACRgpB,EAAU1/G,KAAK+2H,UAAY,EAC3BzqD,EAASr9D,EAAIu6D,EAAKk2C,EAClBnzC,EAASt9D,EAAIw6D,EAAKi2C,EACxB,UAAWgY,KAAU13H,KAAK02F,MAAO,CAC/B,MAAM3rE,EAAS,GACToxE,EAAS,GACf,QAAStyE,EAAI,EAAGu6E,EAAKszB,EAAO7xH,OAAQgkB,EAAIu6E,EAAIv6E,IAAK,CAC/C,MAAOc,EAAOiuG,EAAUC,EAAUjuG,GAAU8sG,EAAO7tG,GAC7C8tG,EAAM1oH,EAAI0b,EAAM,GAAK2hD,EACrBsrD,EAAM3oH,EAAI0b,EAAM,GAAK4hD,EACrBsrD,EAAM5oH,EAAI2pH,EAAS,GAAKtsD,EACxBwrD,EAAM7oH,EAAI2pH,EAAS,GAAKrsD,EACxBwrD,EAAM9oH,EAAI4pH,EAAS,GAAKvsD,EACxB0rD,EAAM/oH,EAAI4pH,EAAS,GAAKtsD,EACxB4sD,EAAMlqH,EAAI2b,EAAO,GAAK0hD,EACtB8sD,EAAMnqH,EAAI2b,EAAO,GAAK2hD,EAClB,IAAN1iD,IACFkB,EAAOnpB,KAAK+1H,EAAKC,GACjBz7B,EAAOv6F,KAAK+1H,EAAKC,IAEnB7sG,EAAOnpB,KAAKi2H,EAAKC,EAAKC,EAAKC,EAAKmB,EAAKC,GACrCj9B,EAAOv6F,KAAKi2H,EAAKC,GACbjuG,IAAMu6E,EAAK,GACbjI,EAAOv6F,KAAKu3H,EAAKC,EAErB,CACA1iC,EAAM90F,KAAK,CACT81H,OAAQ,qBAAU,OAAV,OAA4B3sG,EAAQ0+B,EAAMzpD,KAAKm3D,UACvDglC,OAAQ,qBAAU,OAAV,OAA4BA,EAAQ1yC,EAAMzpD,KAAKm3D,WAE3D,CACA,OAAOu/B,CACT,EACA,kBAAQ,WACN,IAAI2iC,EAAOlvC,IACPmvC,GAAO,IACPC,EAAOpvC,IACPqvC,GAAO,IACX,UAAWxtH,KAAQhM,KAAK02F,MACtB,UAAY/rE,EAAOiuG,EAAUC,EAAUjuG,KAAW5e,EAAM,CACtD,MAAM+uF,EAAOzuC,GAAMv2C,KAAKk0C,qBAAqBt/B,KAAUiuG,KAAaC,KAAajuG,GACjFyuG,EAAO51G,KAAKE,IAAI01G,EAAMt+B,EAAK,IAC3Bw+B,EAAO91G,KAAKE,IAAI41G,EAAMx+B,EAAK,IAC3Bu+B,EAAO71G,KAAK6H,IAAIguG,EAAMv+B,EAAK,IAC3By+B,EAAO/1G,KAAK6H,IAAIkuG,EAAMz+B,EAAK,GAC7B,CAEF,MAAO,CAACs+B,EAAME,EAAMD,EAAME,EAC5B,EACA,kBAAW,WACT,OAAO,aAAAx5H,KAAK,GAAkByjB,KAAKqJ,KAAK9sB,KAAK+2H,UAAY/2H,KAAKyqE,aAAe,CAC/E,EACA,kBAAa,SAACgvD,GAAY,GACxB,GAAIz5H,KAAKqpE,UACP,OAEF,IAAK,aAAArpE,KAAK,GAER,YADA,gBAAAA,KAAK,KAAL,KAAAA,MAGF,MAAM+6F,EAAO,gBAAA/6F,KAAK,OAAL,KAAAA,MACP0/G,EAAU,gBAAA1/G,KAAK,OAAL,KAAAA,MAChB,aAAAA,KAAK,EAAayjB,KAAK6H,IAAI04C,GAAQO,iBAAiByJ,SAAU+sB,EAAK,GAAKA,EAAK,KAC7E,aAAA/6F,KAAK,EAAcyjB,KAAK6H,IAAI04C,GAAQO,iBAAiByJ,SAAU+sB,EAAK,GAAKA,EAAK,KAC9E,MAAMh5D,EAAQte,KAAKqJ,KAAK4yF,EAAU,aAAA1/G,KAAK,GAAaA,KAAKs4G,aACnDr2E,EAASxe,KAAKqJ,KAAK4yF,EAAU,aAAA1/G,KAAK,GAAcA,KAAKs4G,cACpDtuC,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAK+hC,MAAQA,EAAQioC,EACrBhqE,KAAKiiC,OAASA,EAASgoC,EACvBjqE,KAAK8tE,eAAe/rC,EAAOE,GAC3B,MAAMy3F,EAAmB15H,KAAKm3H,aACxBwC,EAAmB35H,KAAKo3H,aAC9Bp3H,KAAKm3H,cAAgBp8B,EAAK,GAC1B/6F,KAAKo3H,cAAgBr8B,EAAK,GAC1B,gBAAA/6F,KAAK,KAAL,KAAAA,MACA,gBAAAA,KAAK,KAAL,KAAAA,MACA,aAAAA,KAAK,EAAa+hC,GAClB,aAAA/hC,KAAK,EAAciiC,GACnBjiC,KAAK8qE,QAAQ/oC,EAAOE,GACpB,MAAM23F,EAAkBH,EAAY/Z,EAAU1/G,KAAKs4G,YAAc,EAAI,EACrEt4G,KAAK2pE,UAAU+vD,EAAmB15H,KAAKm3H,aAAeyC,EAAiBD,EAAmB35H,KAAKo3H,aAAewC,EAChH,EAlKA,aAhiBI,GAgiBG,IAWP,aA3iBI,GA2iBG,IAkCP,aA7kBI,GA6kBG,IA9jBP,cAfI,GAeG,gBAAgB,MACvB,cAhBI,GAgBG,kBAAkB,GACzB,cAjBI,GAiBG,oBAAoB,GAC3B,cAlBI,GAkBG,QAAQ,OAlBjB,IAAMpd,GAAN,GAuwBA39G,EAAQ29G,UAAYA,EAAS,EAItB,CAAC9oE,EAAyB70C,EAAS0sD,KAjiiB1C,cAAAoB,EAAA,4CAqiiBArtD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ49G,iBAAc,EACtB,IAAInwD,EAAQf,EAAoB,GAC5ByY,EAAUzY,EAAoB,GAC9BiB,EAAiBjB,EAAoB,GACrCyyD,EAAoBzyD,EAAoB,IAC5C,MAAM,EAAN,cAA0ByY,EAAQO,iBAYhC,WAAA5lD,CAAYtK,GACVozC,MAAM,IACDpzC,EACHlL,KAAM,gBAuBV,qBAYA,qBAOA,qBAsGA,qBA0CA,qBAoBA,qBAwBA,qBAcA,qBA4BA,qBA9RA,oBAAU,MACV,oBAAY,MACZ,oBAAiB,MACjB,oBAAa,MACb,oBAAc,MACd,kBAAAwjD,EAAU,MACV,oBAAY,MACZ,oBAAmB,MACnB,qBAAS,GACT,qBAA2B,GAOzB,aAAA3sD,KAAK,EAAaqU,EAAOwlH,WACzB,aAAA75H,KAAK,EAAcqU,EAAOylH,WAC5B,CACA,iBAAOvyD,CAAW93B,GAChBu0B,EAAQO,iBAAiBgD,WAAW93B,EACtC,CACA,yBAAWsqF,GAET,SAAWztE,EAAMtT,QAAQh5C,KAAM,iBADjB,CAAC,OAAQ,OAAQ,MAAO,MAAO,OAAQ,MAAO,UAAW,OAAQ,UACxBiI,KAAI8E,GAAQ,SAASA,MAC9E,CACA,4BAAWitH,GACT,SAAW1tE,EAAMtT,QAAQh5C,KAAM,oBAAqBA,KAAK+5H,eAAettH,KAAK,KAC/E,CACA,+BAAOw7D,CAAyBC,GAC9B,OAAOloE,KAAK+5H,eAAepmH,SAASu0D,EACtC,CACA,YAAOC,CAAMj1D,EAAMiyD,GACjBA,EAAOw4C,YAAYrxD,EAAM5W,qBAAqBqF,MAAO,CACnD++E,WAAY5mH,EAAK+mH,aAErB,CA6DA,MAAAnzG,GACM,aAAA9mB,KAAK,KACP,aAAAA,KAAK,EAAU,MACfA,KAAKylE,WAAW0U,aAAapH,SAAS,aAAA/yE,KAAK,IAC3C,aAAAA,KAAK2sD,IAAS7lC,SACd,aAAA9mB,KAAK2sD,EAAU,MACf,aAAA3sD,KAAK,IAAWgmB,aAChB,aAAAhmB,KAAK,EAAY,OAEnBynD,MAAM3gC,QACR,CACA,OAAAimD,GACO/sE,KAAKmlE,QAMV1d,MAAMslB,UACW,OAAb/sE,KAAK4gC,MAGL,aAAA5gC,KAAK,IACP,gBAAAA,KAAK,KAAL,KAAAA,MAEGA,KAAK0mE,iBACR1mE,KAAKmlE,OAAOv9C,IAAI5nB,QAbZ,aAAAA,KAAK,IACP,gBAAAA,KAAK,KAAL,KAAAA,KAcN,CACA,SAAAysE,GACEzsE,KAAKqoE,cAAe,EACpBroE,KAAK4gC,IAAIzO,OACX,CACA,OAAAk3C,GACE,QAAS,aAAArpE,KAAK,IAAkB,aAAAA,KAAK,IAAW,aAAAA,KAAK,IAAc,aAAAA,KAAK,GAC1E,CACA,eAAImtE,GACF,OAAO,CACT,CACA,MAAAnV,GACE,GAAIh4D,KAAK4gC,IACP,OAAO5gC,KAAK4gC,IAEd,IAAIs+E,EAAOC,EAYX,GAXIn/G,KAAK+hC,QACPm9E,EAAQl/G,KAAKZ,EACb+/G,EAAQn/G,KAAKgF,GAEfyiD,MAAMuQ,SACNh4D,KAAK4gC,IAAIuS,QAAS,EACd,aAAAnzC,KAAK,GACP,gBAAAA,KAAK,KAAL,KAAAA,MAEA,gBAAAA,KAAK,KAAL,KAAAA,MAEEA,KAAK+hC,MAAO,CACd,MAAOioC,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAKupE,MAAM21C,EAAQl1C,EAAam1C,EAAQl1C,EAAcjqE,KAAK+hC,MAAQioC,EAAahqE,KAAKiiC,OAASgoC,EAChG,CACA,OAAOjqE,KAAK4gC,GACd,CA0IA,kBAAOqsC,CAAYroD,EAAMugD,EAAQO,GAC/B,GAAI9gD,aAAgBo5F,EAAkBmC,uBACpC,OAAO,KAET,MAAMj5C,EAASzf,MAAMwlB,YAAYroD,EAAMugD,EAAQO,IACzC,KACJjc,EAAI,UACJowE,EAAS,SACTK,EAAQ,MACRrnD,EAAK,kBACLsnD,GACEv1G,EACAs1G,GAAYx0D,EAAUyU,aAAanH,UAAUknD,GAC/C,aAAAhzD,EAAO,EAAYgzD,GAEnB,aAAAhzD,EAAO,EAAa2yD,GAEtB,aAAA3yD,EAAO,EAAS2L,GAChB,MAAO7I,EAAaC,GAAgB/C,EAAOX,eAM3C,OALAW,EAAOnlC,OAAS0nB,EAAK,GAAKA,EAAK,IAAMugB,EACrC9C,EAAOjlC,QAAUwnB,EAAK,GAAKA,EAAK,IAAMwgB,EAClCkwD,IACFjzD,EAAO0E,YAAcuuD,GAEhBjzD,CACT,CACA,SAAA18D,CAAUwiE,GAAe,EAAOrlE,EAAU,MACxC,GAAI3H,KAAKqpE,UACP,OAAO,KAET,MAAMpE,EAAa,CACjB24C,eAAgBtxD,EAAM5W,qBAAqBqF,MAC3Cm/E,SAAU,aAAAl6H,KAAK,GACfk2D,UAAWl2D,KAAKk2D,UAChBzM,KAAMzpD,KAAKqsE,QAAQ,EAAG,GACtBlV,SAAUn3D,KAAKm3D,SACf0b,MAAO,aAAA7yE,KAAK,GACZ2/G,mBAAoB3/G,KAAK+lE,qBAE3B,GAAIiH,EAGF,OAFA/H,EAAW40D,UAAY,gBAAA75H,KAAK,KAAL,KAAAA,MAAsB,GAC7CilE,EAAWk1D,kBAAoBn6H,KAAK4rE,YAC7B3G,EAET,MAAM,WACJ4G,EAAU,QACVP,GACEtrE,KAAK4rE,YAOT,IANKC,GAAcP,IACjBrG,EAAWk1D,kBAAoB,CAC7BptH,KAAM,SACN28G,IAAKp+C,IAGO,OAAZ3jE,EACF,OAAOs9D,EAETt9D,EAAQyyH,SAAW,IAAI9hF,IACvB,MAAM+hF,EAAO,aAAAr6H,KAAK,IAAUilE,EAAWxb,KAAK,GAAKwb,EAAWxb,KAAK,KAAOwb,EAAWxb,KAAK,GAAKwb,EAAWxb,KAAK,IAAM,KACnH,GAAK9hD,EAAQyyH,OAAOx8D,IAAI,aAAA59D,KAAK,KAMtB,GAAI,aAAAA,KAAK,GAAQ,CACtB,MAAMs6H,EAAW3yH,EAAQyyH,OAAO35H,IAAI,aAAAT,KAAK,IACrCq6H,EAAOC,EAASD,OAClBC,EAASD,KAAOA,EAChBC,EAASr1D,WAAWnD,OAAO58C,QAC3Bo1G,EAASr1D,WAAWnD,OAAS,gBAAA9hE,KAAK,KAAL,KAAAA,MAAsB,GAEvD,OAZE2H,EAAQyyH,OAAOtvG,IAAI,aAAA9qB,KAAK,GAAW,CACjCq6H,OACAp1D,eAEFA,EAAWnD,OAAS,gBAAA9hE,KAAK,KAAL,KAAAA,MAAsB,GAS5C,OAAOilE,CACT,GAjXA,cACA,cACA,cACA,cACA,cACAtY,EAAA,YACA,cACA,cACA,cACA,cA4BA,gBAAiB,SAAC/nC,EAAM21G,GAAS,GAC1B31G,GAIL,aAAA5kB,KAAK,EAAU4kB,EAAKk9C,QACfy4D,IACH,aAAAv6H,KAAK,EAAY4kB,EAAKhP,IACtB,aAAA5V,KAAK,EAAS4kB,EAAKiuD,QAErB,gBAAA7yE,KAAK,KAAL,KAAAA,OAREA,KAAK8mB,QAST,EACA,gBAAc,WACZ,aAAA9mB,KAAK,EAAiB,MACtBA,KAAKylE,WAAWsT,eAAc,GAC1B,aAAA/4E,KAAK2sD,IACP3sD,KAAK4gC,IAAIzO,OAEb,EACA,gBAAU,WACR,GAAI,aAAAnyB,KAAK,GAGP,OAFAA,KAAKylE,WAAWsT,eAAc,QAC9B/4E,KAAKylE,WAAW0U,aAAazH,UAAU,aAAA1yE,KAAK,IAAW6E,MAAK+f,GAAQ,gBAAA5kB,KAAK,KAAL,KAAAA,KAAuB4kB,GAAM,KAAO+8C,SAAQ,IAAM,gBAAA3hE,KAAK,KAAL,KAAAA,QAGxH,GAAI,aAAAA,KAAK,GAAY,CACnB,MAAMkN,EAAM,aAAAlN,KAAK,GAIjB,OAHA,aAAAA,KAAK,EAAa,MAClBA,KAAKylE,WAAWsT,eAAc,QAC9B,aAAA/4E,KAAK,EAAiBA,KAAKylE,WAAW0U,aAAa1H,WAAWvlE,GAAKrI,MAAK+f,GAAQ,gBAAA5kB,KAAK,KAAL,KAAAA,KAAuB4kB,KAAO+8C,SAAQ,IAAM,gBAAA3hE,KAAK,KAAL,KAAAA,QAE9H,CACA,GAAI,aAAAA,KAAK,GAAa,CACpB,MAAMqC,EAAO,aAAArC,KAAK,GAIlB,OAHA,aAAAA,KAAK,EAAc,MACnBA,KAAKylE,WAAWsT,eAAc,QAC9B,aAAA/4E,KAAK,EAAiBA,KAAKylE,WAAW0U,aAAa5H,YAAYlwE,GAAMwC,MAAK+f,GAAQ,gBAAA5kB,KAAK,KAAL,KAAAA,KAAuB4kB,KAAO+8C,SAAQ,IAAM,gBAAA3hE,KAAK,KAAL,KAAAA,QAEhI,CACA,MAAMmc,EAAQ1E,SAASE,cAAc,SACrCwE,EAAMpP,KAAO,OACboP,EAAMq+G,OAAS,EAAYR,kBAC3B,aAAAh6H,KAAK,EAAiB,IAAIqE,SAAQD,IAChC+X,EAAMb,iBAAiB,UAAUtN,UAC/B,GAAKmO,EAAM4U,OAAgC,IAAvB5U,EAAM4U,MAAMlrB,OAEzB,CACL7F,KAAKylE,WAAWsT,eAAc,GAC9B,MAAMn0D,QAAa5kB,KAAKylE,WAAW0U,aAAa5H,YAAYp2D,EAAM4U,MAAM,IACxE,gBAAA/wB,KAAK,KAAL,KAAAA,KAAuB4kB,EACzB,MALE5kB,KAAK8mB,SAMP1iB,GAAS,IAEX+X,EAAMb,iBAAiB,UAAU,KAC/Btb,KAAK8mB,SACL1iB,GAAS,GACT,IACDu9D,SAAQ,IAAM,gBAAA3hE,KAAK,KAAL,KAAAA,SACjBmc,EAAMiW,OACR,EA8DA,gBAAa,WACX,MAAM,IACJwO,GACE5gC,KACJ,IAAI,MACF+hC,EAAK,OACLE,GACE,aAAAjiC,KAAK,GACT,MAAOimE,EAAWC,GAAclmE,KAAKumE,eAC/Bk0D,EAAY,IAClB,GAAIz6H,KAAK+hC,MACPA,EAAQ/hC,KAAK+hC,MAAQkkC,EACrBhkC,EAASjiC,KAAKiiC,OAASikC,OAClB,GAAInkC,EAAQ04F,EAAYx0D,GAAahkC,EAASw4F,EAAYv0D,EAAY,CAC3E,MAAMw0D,EAASj3G,KAAKE,IAAI82G,EAAYx0D,EAAYlkC,EAAO04F,EAAYv0D,EAAajkC,GAChFF,GAAS24F,EACTz4F,GAAUy4F,CACZ,CACA,MAAO1wD,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAK8qE,QAAQ/oC,EAAQioC,EAAc/D,EAAWhkC,EAASgoC,EAAe/D,GACtElmE,KAAKylE,WAAWsT,eAAc,GAC9B,MAAM1W,EAAS,aAAAriE,KAAK2sD,EAAUl1C,SAASE,cAAc,WACrDipB,EAAIjV,OAAO02C,GACXzhC,EAAIuS,QAAS,EACb,gBAAAnzC,KAAK,KAAL,KAAAA,KAAiB+hC,EAAOE,GACxB,gBAAAjiC,KAAK,KAAL,KAAAA,MACK,aAAAA,KAAK,KACRA,KAAKmlE,OAAOu4C,kBAAkB19G,MAC9B,aAAAA,KAAK,GAA2B,IAElCA,KAAKylE,WAAWqL,UAAUhhD,SAAS,kBAAmB,CACpDva,OAAQvV,KACR4U,QAAS,CACP7H,KAAM,UACNgkE,QAAS/wE,KAAK4mE,WACdhiD,KAAM,CACJrU,OAAQ,qBAIdvQ,KAAKqrE,kBACP,EACA,gBAAc,SAACtpC,EAAOE,GACpB,MAAO+nC,EAAaC,GAAgBjqE,KAAKymE,iBACzCzmE,KAAK+hC,MAAQA,EAAQioC,EACrBhqE,KAAKiiC,OAASA,EAASgoC,EACvBjqE,KAAK8qE,QAAQ/oC,EAAOE,GAChBjiC,KAAK6lE,iBAAiBC,WACxB9lE,KAAKuoE,SAELvoE,KAAKyoE,oBAEPzoE,KAAK6lE,gBAAkB,KACO,OAA1B,aAAA7lE,KAAK,IACPia,aAAa,aAAAja,KAAK,IAGpB,aAAAA,KAAK,EAAmBka,YAAW,KACjC,aAAAla,KAAK,EAAmB,MACxB,gBAAAA,KAAK,KAAL,KAAAA,KAAiB+hC,EAAOE,EAAO,GAHZ,KAKvB,EACA,gBAAY,SAACF,EAAOE,GAClB,MACEF,MAAO44F,EACP14F,OAAQ24F,GACN,aAAA56H,KAAK,GACT,IAAIivE,EAAW0rD,EACXzrD,EAAY0rD,EACZ94D,EAAS,aAAA9hE,KAAK,GAClB,KAAOivE,EAAW,EAAIltC,GAASmtC,EAAY,EAAIjtC,GAAQ,CACrD,MAAM44F,EAAY5rD,EACZ6rD,EAAa5rD,EACfD,EAAW,EAAIltC,IACjBktC,EAAWA,GAAY,MAAQxrD,KAAKi0B,MAAMu3B,EAAW,GAAK,EAAIxrD,KAAKqJ,KAAKmiD,EAAW,IAEjFC,EAAY,EAAIjtC,IAClBitC,EAAYA,GAAa,MAAQzrD,KAAKi0B,MAAMw3B,EAAY,GAAK,EAAIzrD,KAAKqJ,KAAKoiD,EAAY,IAEzF,MAAM6rD,EAAY,IAAIhzE,gBAAgBknB,EAAUC,GACpC6rD,EAAU7oD,WAAW,MAC7BG,UAAUvQ,EAAQ,EAAG,EAAG+4D,EAAWC,EAAY,EAAG,EAAG7rD,EAAUC,GACnEpN,EAASi5D,EAAUC,uBACrB,CACA,OAAOl5D,CACT,EACA,gBAAW,SAAC//B,EAAOE,GACjBF,EAAQte,KAAKqJ,KAAKiV,GAClBE,EAASxe,KAAKqJ,KAAKmV,GACnB,MAAMogC,EAAS,aAAAriE,KAAK2sD,GACpB,IAAK0V,GAAUA,EAAOtgC,QAAUA,GAASsgC,EAAOpgC,SAAWA,EACzD,OAEFogC,EAAOtgC,MAAQA,EACfsgC,EAAOpgC,OAASA,EAChB,MAAM6/B,EAAS,aAAA9hE,KAAK,GAAS,aAAAA,KAAK,GAAU,gBAAAA,KAAK,KAAL,KAAAA,KAAkB+hC,EAAOE,GAC/D9I,EAAMkpC,EAAO6P,WAAW,MAC9B/4C,EAAIjzB,OAASlG,KAAKylE,WAAWoR,UAC7B19C,EAAIk5C,UAAUvQ,EAAQ,EAAG,EAAGA,EAAO//B,MAAO+/B,EAAO7/B,OAAQ,EAAG,EAAGF,EAAOE,EACxE,EACA,gBAAgB,SAACg5F,GACf,GAAIA,EAAO,CACT,GAAI,aAAAj7H,KAAK,GAAQ,CACf,MAAMkN,EAAMlN,KAAKylE,WAAW0U,aAAavH,UAAU,aAAA5yE,KAAK,IACxD,GAAIkN,EACF,OAAOA,CAEX,CACA,MAAMm1D,EAAS5qD,SAASE,cAAc,UAOtC,QALEoqB,MAAOsgC,EAAOtgC,MACdE,OAAQogC,EAAOpgC,QACb,aAAAjiC,KAAK,IACGqiE,EAAO6P,WAAW,MAC1BG,UAAU,aAAAryE,KAAK,GAAS,EAAG,GACxBqiE,EAAO64D,WAChB,CACA,GAAI,aAAAl7H,KAAK,GAAQ,CACf,MAAOimE,EAAWC,GAAclmE,KAAKumE,eAC/BxkC,EAAQte,KAAKonD,MAAM7qE,KAAK+hC,MAAQkkC,EAAYzZ,EAAespB,cAAcC,kBACzE9zC,EAASxe,KAAKonD,MAAM7qE,KAAKiiC,OAASikC,EAAa1Z,EAAespB,cAAcC,kBAC5EglD,EAAY,IAAIhzE,gBAAgBhmB,EAAOE,GAG7C,OAFY84F,EAAU7oD,WAAW,MAC7BG,UAAU,aAAAryE,KAAK,GAAS,EAAG,EAAG,aAAAA,KAAK,GAAQ+hC,MAAO,aAAA/hC,KAAK,GAAQiiC,OAAQ,EAAG,EAAGF,EAAOE,GACjF84F,EAAUC,uBACnB,CACA,OAAOt+D,gBAAgB,aAAA18D,KAAK,GAC9B,EACA,gBAAe,WACb,aAAAA,KAAK,EAAY,IAAI84H,gBAAe56G,IAClC,MAAMurC,EAAOvrC,EAAQ,GAAG66G,YACpBtvE,EAAK1nB,OAAS0nB,EAAKxnB,QACrB,gBAAAjiC,KAAK,KAAL,KAAAA,KAAoBypD,EAAK1nB,MAAO0nB,EAAKxnB,OACvC,KAEF,aAAAjiC,KAAK,GAAUg5H,QAAQh5H,KAAK4gC,IAC9B,EA5RA,cAXI,EAWG,QAAQ,SAXjB,IAAM67E,EAAN,EAoXA59G,EAAQ49G,YAAcA,CAAW,GAMnB0e,yBAA2B,CAAC,EAGhC,SAAS5vE,oBAAoB6vE,GAE5B,IAAIC,EAAeF,yBAAyBC,GAC5C,QAAqB,IAAjBC,EACH,OAAOA,EAAax8H,QAGrB,IAAID,EAASu8H,yBAAyBC,GAAY,CAGjDv8H,QAAS,CAAC,GAOX,OAHA40C,oBAAoB2nF,GAAUx8H,EAAQA,EAAOC,QAAS0sD,qBAG/C3sD,EAAOC,OACf,CAGV,IAAI,2BAAsB,CAAC,EA8RjB,MA5RV,MACA,IAAIA,EAAU,2BAGdS,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETb,OAAOY,eAAerB,EAAS,iBAAmB,CAChD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMvW,cACf,IAEFz2C,OAAOY,eAAerB,EAAS,wBAA0B,CACvD6B,YAAY,EACZD,IAAK,WACH,OAAO66H,EAAyBvf,qBAClC,IAEFz8G,OAAOY,eAAerB,EAAS,6BAA+B,CAC5D6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAM1W,0BACf,IAEFt2C,OAAOY,eAAerB,EAAS,uBAAyB,CACtD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAM5W,oBACf,IAEFp2C,OAAOY,eAAerB,EAAS,4BAA8B,CAC3D6B,YAAY,EACZD,IAAK,WACH,OAAO2kE,EAAOuM,yBAChB,IAEFryE,OAAOY,eAAerB,EAAS,kBAAoB,CACjD6B,YAAY,EACZD,IAAK,WACH,OAAOu9G,EAAkBqC,eAC3B,IAEF/gH,OAAOY,eAAerB,EAAS,iBAAmB,CAChD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAM/W,cACf,IAEFj2C,OAAOY,eAAerB,EAAS,sBAAwB,CACrD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMrX,mBACf,IAEF31C,OAAOY,eAAerB,EAAS,gBAAkB,CAC/C6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAe6tB,aACxB,IAEF/6E,OAAOY,eAAerB,EAAS,cAAgB,CAC7C6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMxX,WACf,IAEFx1C,OAAOY,eAAerB,EAAS,sBAAwB,CACrD6B,YAAY,EACZD,IAAK,WACH,OAAOmsD,EAAgB6D,mBACzB,IAEFnxD,OAAOY,eAAerB,EAAS,YAAc,CAC3C6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAM3X,SACf,IAEFr1C,OAAOY,eAAerB,EAAS,sBAAwB,CACrD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAM5X,mBACf,IAEFp1C,OAAOY,eAAerB,EAAS,sBAAwB,CACrD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMhY,mBACf,IAEFh1C,OAAOY,eAAerB,EAAS,MAAQ,CACrC6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMjY,GACf,IAEF/0C,OAAOY,eAAerB,EAAS,wBAA0B,CACvD6B,YAAY,EACZD,IAAK,WACH,OAAO86H,EAAKzvE,qBACd,IAEFxsD,OAAOY,eAAerB,EAAS,gBAAkB,CAC/C6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAe4tB,aACxB,IAEF96E,OAAOY,eAAerB,EAAS,YAAc,CAC3C6B,YAAY,EACZD,IAAK,WACH,OAAO86H,EAAK7vE,SACd,IAEFpsD,OAAOY,eAAerB,EAAS,oBAAsB,CACnD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMpY,iBACf,IAEF50C,OAAOY,eAAerB,EAAS,iBAAmB,CAChD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMrY,cACf,IAEF30C,OAAOY,eAAerB,EAAS,gBAAkB,CAC/C6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAespB,aACxB,IAEFx2E,OAAOY,eAAerB,EAAS,oBAAsB,CACnD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMtY,iBACf,IAEF10C,OAAOY,eAAerB,EAAS,8BAAgC,CAC7D6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAe0P,2BACxB,IAEF58D,OAAOY,eAAerB,EAAS,cAAgB,CAC7C6B,YAAY,EACZD,IAAK,WACH,OAAO86H,EAAKlvE,WACd,IAEF/sD,OAAOY,eAAerB,EAAS,8BAAgC,CAC7D6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMzY,2BACf,IAEFv0C,OAAOY,eAAerB,EAAS,OAAS,CACtC6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMv2C,IACf,IAEFzW,OAAOY,eAAerB,EAAS,iBAAmB,CAChD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAM3Y,cACf,IAEFr0C,OAAOY,eAAerB,EAAS,WAAa,CAC1C6B,YAAY,EACZD,IAAK,WACH,OAAO+/G,EAAWyP,QACpB,IAEF3wH,OAAOY,eAAerB,EAAS,QAAU,CACvC6B,YAAY,EACZD,IAAK,WACH,OAAO86H,EAAK3sF,KACd,IAEFtvC,OAAOY,eAAerB,EAAS,yBAA2B,CACxD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMlW,sBACf,IAEF92C,OAAOY,eAAerB,EAAS,cAAgB,CAC7C6B,YAAY,EACZD,IAAK,WACH,OAAO86H,EAAK54F,WACd,IAEFrjC,OAAOY,eAAerB,EAAS,qBAAuB,CACpD6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAequB,kBACxB,IAEFv7E,OAAOY,eAAerB,EAAS,wBAA0B,CACvD6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAewuB,qBACxB,IAEF17E,OAAOY,eAAerB,EAAS,qBAAuB,CACpD6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAe6uB,kBACxB,IAEF/7E,OAAOY,eAAerB,EAAS,eAAiB,CAC9C6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAemC,YACxB,IAEFrvD,OAAOY,eAAerB,EAAS,YAAc,CAC3C6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAe+uB,SACxB,IAEFj8E,OAAOY,eAAerB,EAAS,aAAe,CAC5C6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAewS,UACxB,IAEF1/D,OAAOY,eAAerB,EAAS,gBAAkB,CAC/C6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAe+e,aACxB,IAEFjsE,OAAOY,eAAerB,EAAS,mBAAqB,CAClD6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMnU,gBACf,IAEF74C,OAAOY,eAAerB,EAAS,kBAAoB,CACjD6B,YAAY,EACZD,IAAK,WACH,OAAO+6H,EAAYrjB,eACrB,IAEF74G,OAAOY,eAAerB,EAAS,qBAAuB,CACpD6B,YAAY,EACZD,IAAK,WACH,OAAO+rD,EAAeivB,kBACxB,IAEFn8E,OAAOY,eAAerB,EAAS,SAAW,CACxC6B,YAAY,EACZD,IAAK,WACH,OAAO6rD,EAAMtT,MACf,IAEF15C,OAAOY,eAAerB,EAAS,kBAAoB,CACjD6B,YAAY,EACZD,IAAK,WACH,OAAO+6H,EAAYhjB,eACrB,IAEFl5G,OAAOY,eAAerB,EAAS,UAAY,CACzC6B,YAAY,EACZD,IAAK,WACH,OAAO86H,EAAKtrH,OACd,IAEF,IAAIq8C,EAAQf,oBAAoB,GAC5BgwE,EAAOhwE,oBAAoB,GAC3BiB,EAAiBjB,oBAAoB,GACrCiwE,EAAcjwE,oBAAoB,IAClC+vE,EAA2B/vE,oBAAoB,IAC/C6Z,EAAS7Z,oBAAoB,GAC7ByyD,EAAoBzyD,oBAAoB,IACxCqB,EAAkBrB,oBAAoB,IACtCi1D,EAAaj1D,oBAAoB,GAGpC,EA1RD,GA4RiB,0BACP,EA9rjBV,GARE3sD,OAAOC,QAAU+uB,KAAK6tG,SAAWv7G,iCCThB,oBAAXlhB,OACJA,OACA,CAAC,GACH4/D,YAAc,EAAQ,4BCImBhxC,EAAM1N,uhBAAN0N,EASxC7uB,WAT8CmhB,EASlC,IACf,MACU,aACA,IAAIuzB,EAAuB,CAC9B,CAEA,CAACC,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ68H,WAAa78H,EAAQ2/D,0BAAuB,EACpD,IA0mBuBm9D,EA1mBnBrvE,EAAQf,EAAoB,GAC5BqwE,EAAcrwE,EAAoB,GAClCswE,EAActwE,EAAoB,GAClCuwE,EAAevwE,EAAoB,GACnCwwE,EAAcxwE,EAAoB,IAClCywE,EAAkBzwE,EAAoB,IACtC0wE,EAAU1wE,EAAoB,IAC9BsB,EAAmBtB,EAAoB,KACvC2wE,EAAiB3wE,EAAoB,KACrC4wE,EAAe5wE,EAAoB,IACvC,MAAMmwE,EACJ,WAAA/8G,CAAYxV,GACVnJ,KAAKmJ,KAAOA,EACZnJ,KAAKggE,YAAa,EAClBhgE,KAAKkyD,YAAc,IAAI5F,EAAMtY,iBAC/B,CACA,YAAIooF,GACF,OAAOp8H,KAAKkyD,YAAY7G,OAC1B,CACA,MAAAgxE,GACEr8H,KAAKkyD,YAAY9tD,SACnB,CACA,SAAAu4D,GACE38D,KAAKggE,YAAa,CACpB,CACA,mBAAAs8D,GACE,GAAIt8H,KAAKggE,WACP,MAAM,IAAIv0D,MAAM,6BAEpB,EAEF5M,EAAQ68H,WAAaA,EACrB,MAAMl9D,EACJ,YAAOE,CAAM30D,EAASymD,GACpB,IAAI+rE,GAAuB,EAC3BxyH,EAAQ6xB,GAAG,QAAQ,SAAUhX,GACvB23G,IAGJA,GAAuB,EACvBxyH,EAAQyL,KAAK,OAAQoP,aAAgB+E,YACvC,IACA5f,EAAQ6xB,GAAG,aAAa,SAAUhX,IAChC,EAAI0nC,EAAMzT,mBAAmBj0B,EAAKgzB,UACpC,IACA7tC,EAAQ6xB,GAAG,iBAAiB,SAAUhX,GACpC,OAAO45C,EAAqBg+D,sBAAsB53G,EAAM4rC,EAC1D,GACF,CACA,4BAAOgsE,CAAsBC,EAAWjsE,GACtC,IAAIksE,EACA18D,GAAa,EACb28D,EAAa,KACjB,MAAMC,EAAc,IAAIhjE,IAClBhiB,GAAY,EAAI0U,EAAM3U,sBACtB,MACJsW,EAAK,WACL6C,GACE2rE,EACEI,EAAgB,WACtB,GAAI/rE,IAAe+rE,EACjB,MAAM,IAAIpxH,MAAM,oBAAoBqlD,yCAAuD+rE,OAE7F,MAAMC,EAAuB,GAC7B,UAAWt6F,IAAY,GACrBs6F,EAAqBl7H,KAAK4gC,GAE5B,GAAIs6F,EAAqBj3H,OACvB,MAAM,IAAI4F,MAAM,oEAAsEqxH,EAAqBrwH,KAAK,MAAQ,0DAE1H,MAAMswH,EAAoB9uE,EAAQ,UAClC,IAAIlkD,EAAU,IAAI8iD,EAAiBkF,eAAegrE,EAAmB9uE,EAAOuC,GAC5E,SAAS8rE,IACP,GAAIt8D,EACF,MAAM,IAAIv0D,MAAM,wBAEpB,CACA,SAASuxH,EAAgBhvE,GACvB4uE,EAAYh1G,IAAIomC,EAClB,CACA,SAASivE,EAAiBjvE,GACxBA,EAAKquE,SACLO,EAAYvqG,OAAO27B,EACrB,CACAhgD,eAAekvH,EAAaC,SACpBT,EAAWU,UAAU,qBACrBV,EAAWU,UAAU,wBACrBV,EAAWU,UAAU,QAAS,CAACD,UAC/BT,EAAWU,UAAU,iBAAkB,CAACD,UACxCT,EAAWU,UAAU,gBAAiB,CAACD,IAC7C,MAAMjpE,QAAkBwoE,EAAWU,UAAU,aAC7C,GAAIlpE,EAAW,CACb,MAAMlG,EAAO,IAAI0tE,EAAW,gBAC5BsB,EAAgBhvE,SACV3pD,QAAQw8B,IAAI,CAAC67F,EAAWW,aAAatzH,EAASikD,GAAMx7C,OAAMmI,IAAA,IAAc9V,MAAK,IAAMo4H,EAAiBjvE,KAAQ0uE,EAAWY,iBAC/H,CACA,MAAOtpE,EAAUC,SAAsB5vD,QAAQw8B,IAAI,CAAC67F,EAAWU,UAAU,YAAaV,EAAWU,UAAU,kBAE3G,MAAO,CACLppE,WACAC,eACAgN,WAJiB/M,QAAkBwoE,EAAWU,UAAU,cAAgB,KAM5E,CACA,SAASG,GAAc,KACrB34G,EAAI,SACJ0pC,EAAQ,iBACRoB,EAAgB,eAChBlB,EAAc,OACd3oD,EAAM,WACN6oD,EAAU,UACVa,EAAS,iBACTwB,IAEA,MAAMysE,EAAiB,CACrBjoH,OAAQ,KACRm6C,mBACAhB,aACAT,QACAsB,YACAwB,mBACAhnD,UACAlE,SACAyoD,WACAE,kBAEIivE,EAAuB,IAAInxE,EAAMtY,kBACvC,IAAI0pF,EACJ,GAAI94G,EAAM,CACR,IACE44G,EAAejoH,OAASqP,EACxB84G,EAAgB,IAAI5B,EAAa6B,gBAAgBH,GACjDC,EAAqBr5H,QAAQs5H,EAC/B,CAAE,MAAOjkF,GACPgkF,EAAqBn5H,OAAOm1C,EAC9B,CACA,OAAOgkF,EAAqBpyE,OAC9B,CACA,IAAIuyE,EACFC,EAAe,GACjB,IACED,EAAY,IAAI1B,EAAe4B,gBAAgB/zH,EACjD,CAAE,MAAO0vC,GAEP,OADAgkF,EAAqBn5H,OAAOm1C,GACrBgkF,EAAqBpyE,OAC9B,CACA,MAAM0yE,EAAcH,EAAUz9D,gBAC9B49D,EAAYr9D,aAAa77D,MAAK,WAC5B,GAAKk5H,EAAYn9D,iBAAjB,CAGA48D,EAAejoH,OAASqoH,EACxBJ,EAAe33H,OAASk4H,EAAYl9D,cACpC28D,EAAe9tE,mBAAqBquE,EAAYp9D,qBAChD+8D,EAAgB,IAAI5B,EAAakC,kBAAkBR,GACnD,UAAWh2E,KAASq2E,EAClBH,EAAcO,oBAAoBz2E,GAEpCq2E,EAAe,GACfJ,EAAqBr5H,QAAQs5H,GAC7Bf,EAAa,IAVb,CAWF,IAAGnqH,OAAM,SAAUmI,GACjB8iH,EAAqBn5H,OAAOqW,GAC5BgiH,EAAa,IACf,IACA,IAAItsG,EAAS,EAsDb,OAvCA,IAAIhsB,SAAQ,SAAUD,EAASE,GAC7B,MAAM45H,EAAY,UAAU,MAC1B/9H,EAAK,KACLyE,IAEA,IAEE,GADA03H,IACI13H,EAKF,OAJK84H,GAtBO,WAClB,MAAMS,GAAU,EAAIvC,EAAYwC,qBAAqBP,GACjDh4H,GAAUs4H,EAAQt4H,SAAWA,IAC/B,EAAIymD,EAAMhhD,MAAM,iDAElB,IACEkyH,EAAejoH,OAAS4oH,EACxBT,EAAgB,IAAI5B,EAAa6B,gBAAgBH,GACjDC,EAAqBr5H,QAAQs5H,EAC/B,CAAE,MAAOjkF,GACPgkF,EAAqBn5H,OAAOm1C,EAC9B,CACAokF,EAAe,EACjB,CAUUQ,QAEF1B,EAAa,MAGftsG,GAAUlwB,EAAM0qB,WACXkzG,EAAYp9D,sBACf52D,EAAQyL,KAAK,cAAe,CAC1B6a,SACAC,MAAO7M,KAAK6H,IAAI+E,EAAQ0tG,EAAYl9D,eAAiB,KAGrD68D,EACFA,EAAcO,oBAAoB99H,GAElC09H,EAAaj8H,KAAKzB,GAEpB49H,EAAY5iE,OAAOt2D,KAAKq5H,EAAW55H,EACrC,CAAE,MAAOI,GACPJ,EAAOI,EACT,CACF,EACAq5H,EAAY5iE,OAAOt2D,KAAKq5H,EAAW55H,EACrC,IAAGkO,OAAM,SAAU9N,GACjB+4H,EAAqBn5H,OAAOI,GAC5Bi4H,EAAa,IACf,IACAA,EAAa,SAAUhiH,GACrBijH,EAAU39D,kBAAkBtlD,EAC9B,EACO8iH,EAAqBpyE,OAC9B,CAqYA,OA5UAthD,EAAQ6xB,GAAG,WAAW,SAAUhX,GAC9B,OAAO83G,EAAWroE,QAAQzvC,EAAKsxC,WAAWrxD,MAAK,SAAUi7D,GACvD,OAAOz7D,QAAQw8B,IAAI,CAAC67F,EAAW4B,OAAOx+D,EAAM,UAAW48D,EAAW4B,OAAOx+D,EAAM,OAAQ48D,EAAW4B,OAAOx+D,EAAM,YAAa48D,EAAW4B,OAAOx+D,EAAM,UAAUj7D,MAAK,UAAWiyD,EAAQngC,EAAKogC,EAAUC,IACnM,MAAO,CACLF,SACAngC,MACAogC,WACAC,OAEJ,GACF,GACF,IACAjtD,EAAQ6xB,GAAG,gBAAgB,SAAUhX,GACnC,MAAM25G,EAAU1C,EAAY2C,IAAI/9H,IAAImkB,EAAK2G,IAAK3G,EAAKo9C,KACnD,OAAO06D,EAAW+B,cAAc,eAAgB,CAACF,GACnD,IACAx0H,EAAQ6xB,GAAG,mBAAmB,SAAUhX,GACtC,OAAO83G,EAAW+B,cAAc,eAClC,IACA10H,EAAQ6xB,GAAG,kBAAkB,SAAUhX,GACrC,OAAO83G,EAAW+B,cAAc,iBAAkB,CAAC75G,EAAKhP,IAC1D,IACA7L,EAAQ6xB,GAAG,iBAAiB,SAAUhX,GACpC,OAAO83G,EAAW+B,cAAc,aAClC,IACA10H,EAAQ6xB,GAAG,iBAAiB,SAAUhX,GACpC,OAAO83G,EAAW+B,cAAc,aAClC,IACA10H,EAAQ6xB,GAAG,eAAe,SAAUhX,GAClC,OAAO83G,EAAW+B,cAAc,WAClC,IACA10H,EAAQ6xB,GAAG,wBAAwB,SAAUhX,GAC3C,OAAO83G,EAAW+B,cAAc,oBAClC,IACA10H,EAAQ6xB,GAAG,iBAAiB,SAAUhX,GACpC,OAAO83G,EAAW+B,cAAc,aAClC,IACA10H,EAAQ6xB,GAAG,kBAAkB,SAAUhX,GACrC,OAAO83G,EAAW+B,cAAc,cAClC,IACA10H,EAAQ6xB,GAAG,mBAAmB,SAAUhX,GACtC,OAAO83G,EAAW+B,cAAc,YAClC,IACA10H,EAAQ6xB,GAAG,oBAAoB,UAAU,UACvCs6B,IAEA,OAAOwmE,EAAWroE,QAAQ6B,GAAWrxD,MAAK,SAAUi7D,GAClD,OAAO48D,EAAW4B,OAAOx+D,EAAM,YACjC,GACF,IACA/1D,EAAQ6xB,GAAG,cAAc,SAAUhX,GACjC,OAAO83G,EAAW+B,cAAc,kBAClC,IACA10H,EAAQ6xB,GAAG,4BAA4B,SAAUhX,GAC/C,OAAO83G,EAAW+B,cAAc,wBAClC,IACA10H,EAAQ6xB,GAAG,kBAAkB,SAAUhX,GACrC,OAAO83G,EAAW+B,cAAc,cAClC,IACA10H,EAAQ6xB,GAAG,eAAe,SAAUhX,GAClC,OAAOvgB,QAAQw8B,IAAI,CAAC67F,EAAWU,UAAU,gBAAiBV,EAAW+B,cAAc,aACrF,IACA10H,EAAQ6xB,GAAG,eAAe,SAAUhX,GAClC,OAAO83G,EAAW+B,cAAc,WAClC,IACA10H,EAAQ6xB,GAAG,WAAW,SAAUhX,GAC9B,OAAO83G,EAAWgC,sBAAsB75H,MAAK,SAAU4gG,GACrD,OAAOA,EAAOx6E,KAChB,GACF,IACAlhB,EAAQ6xB,GAAG,kBAAkB,UAAU,UACrCs6B,EAAS,OACTwB,IAEA,OAAOglE,EAAWroE,QAAQ6B,GAAWrxD,MAAK,SAAUi7D,GAClD,MAAM9R,EAAO,IAAI0tE,EAAW,wBAAwBxlE,KAEpD,OADA8mE,EAAgBhvE,GACT8R,EAAK6+D,mBAAmB50H,EAASikD,EAAM0J,GAAQ7yD,MAAK+f,IACzDq4G,EAAiBjvE,GACVppC,KACNjK,IAED,MADAsiH,EAAiBjvE,GACXrzC,CAAM,GAEhB,GACF,IACA5Q,EAAQ6xB,GAAG,mBAAmB,SAAUhX,GACtC,OAAO83G,EAAWU,UAAU,eAC9B,IACArzH,EAAQ6xB,GAAG,gBAAgB,SAAUhX,GACnC,OAAO83G,EAAWU,UAAU,eAC9B,IACArzH,EAAQ6xB,GAAG,0BAA0B,SAAUhX,GAC7C,OAAO83G,EAAWU,UAAU,sBAC9B,IACArzH,EAAQ6xB,GAAG,gBAAgB5tB,gBAAgB,UACzCkmD,EAAS,SACTF,EAAQ,kBACRD,EAAiB,SACjBrlC,IAEA,MAAMkwG,EAAiB,CAAClC,EAAWgC,sBAAuBhC,EAAW+B,cAAc,YAAa/B,EAAW+B,cAAc,eAAgB/B,EAAWU,UAAU,aAAcV,EAAWU,UAAU,QAASV,EAAWU,UAAU,iBAAkBV,EAAW+B,cAAc,mBACpQI,EAAW,GACXC,EAAwB5qE,EAAuE,MAA3D,EAAI0nE,EAAYmD,sBAAsBhrE,IACzE0xC,EAAQu5B,EAAUC,EAAaC,EAAWC,EAAMC,EAAeC,SAAyBh7H,QAAQw8B,IAAI+9F,GACrGU,EAAaH,EAAKI,QAAQx4B,OAAO,SAAW,KAClD,IAAIy4B,EACJ,GAAIV,EAAsB,CACnBO,QAQYA,EAAgBI,oBAAoB,CACnD/C,aACAoC,2BAEAU,EAAiBH,SAXPlD,EAAauD,eAAeC,uBAAuB,CAC3DL,aACA5C,aACAoC,2BAEAU,EAAiB,MAQrB,MAAMI,EAAgB7D,EAAY8D,kBAAkBC,eAAe/rE,EAAkBwH,SAAU4jE,EAAMzC,EAAW3rE,iBAAiBjJ,4BAC3Hi4E,OAA2C,IAAnBP,EAA+BX,EAAW,GACxE,UAAY3oE,EAAWo7D,KAAgBwN,EACrCiB,EAAsBn+H,KAAK86H,EAAWroE,QAAQ6B,GAAWrxD,MAAKi7D,IAC5D,MAAM9R,EAAO,IAAI0tE,EAAW,uBAAuBxlE,KACnD,OAAO4J,EAAKkgE,mBAAmBj2H,EAASikD,EAAMsjE,EAAasO,GAAej+D,SAAQ,WAChFs7D,EAAiBjvE,EACnB,GAAE,KAGiB,OAAnBwxE,EACFX,EAASj9H,KAAKyC,QAAQw8B,IAAIk/F,GAAuBl7H,MAAKmJ,MAAMiyH,UACpD9D,EAAauD,eAAeQ,oBAAoB,CACpDpB,uBACAK,OACAG,aACA5C,aACAuD,QAAAA,IAEKA,MAEAT,GACTX,EAASj9H,KAAKyC,QAAQw8B,IAAIk/F,GAAuBl7H,MAAKmJ,MAAMiyH,UACpDT,EAAeW,oBAAoB,CACvCrB,uBACApC,aACAuD,QAAAA,IAEKA,KAGb,CACA,GAAI/rE,EACF2qE,EAASj9H,KAAK86H,EAAW0D,iBAAiBrsE,SAE1C,QAASmC,EAAY,EAAGA,EAAYlC,EAAUkC,IAC5C2oE,EAASj9H,KAAK86H,EAAWroE,QAAQ6B,GAAWrxD,MAAK,SAAUi7D,GACzD,MAAM9R,EAAO,IAAI0tE,EAAW,cAAcxlE,KAC1C,OAAO4J,EAAK1d,KAAKr4C,EAASikD,EAAM+F,GAAmB4N,SAAQ,WACzDs7D,EAAiBjvE,EACnB,GACF,KAGJ,MAAM+6D,QAAa1kH,QAAQw8B,IAAIg+F,GAC/B,IAAIoB,EAAU,GACVI,EAAU,KACd,GAAInsE,GAEF,GADAmsE,EAAUtX,EAAK,IACVsX,EACH,OAAO56B,EAAOx6E,WAIhB,GADAg1G,EAAUlX,EAAKuX,KAAK,GACG,IAAnBL,EAAQp6H,OACV,OAAO4/F,EAAOx6E,MAGlB,MAAMs1G,EAAkBtB,GAAeD,aAAoBnD,EAAY2E,MAAQP,EAAQjrH,MAAK2hB,GAAOA,EAAI4pG,kBACjG3lE,EAAMokE,aAAoBnD,EAAY2E,MAAQxB,EAASv+H,IAAI,QAAU,KAC3E,IAAIggI,EAAiB,KACjBC,GAAsB,EAC1B,GAAI/1H,MAAMC,QAAQgwD,GAAM,CACtB,QAAS/xD,EAAI,EAAGovC,EAAK2iB,EAAI/0D,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAC7B,aAAX+xD,EAAI/xD,KACN43H,EAAiB7lE,EAAI/xD,EAAI,GACzB63H,GAAsB,GAGH,OAAnBD,IACFA,EAAiBtB,EAAKwB,qBAE1B,MAAW/lE,IACT,EAAItO,EAAMhhD,MAAM,yBAElB,IAAIs1H,EAActhI,OAAO4D,OAAO,MAChC,GAAIi8H,EAAKI,QAAS,CAChB,MAAMsB,EAAUvhI,OAAO4D,OAAO,MACxB49H,EAAW3B,EAAKI,QAAQ9+H,IAAI,SAAW,KACzCqgI,aAAoBjF,EAAY2E,MAClCM,EAASzgI,SAAQ,CAACyM,EAAK3M,KACA,iBAAVA,IACT0gI,EAAQ/zH,IAAO,EAAIw/C,EAAMnT,mBAAmBh5C,GAC9C,IAGJygI,EAAc,CACZG,QAASzB,EACT0B,WAAY7B,EAAKI,QAAQx4B,OAAO,YAAc,KAC9Ck6B,OAAQ9B,EAAKwB,qBACbO,QAAS/B,EAAKI,QAAQx4B,OAAO,SAAW,KACxC17F,KAAMw1H,EACNM,QAAShC,EAAKI,QAAQ9+H,IAAI,OAAS,KACnCy+H,UAAWE,EAAgBF,EAAYC,EAAKiC,mBAAqBlC,EACjExwG,WAEJ,CACA,SAAWutG,EAAQoF,mBAAmB,CACpCC,aAAc77B,EAAOx6E,MACrB61G,SAAUF,EACVX,UACAd,OACAoC,SAAU3mE,EACV6lE,iBACAC,sBACAH,kBACAtB,cACAD,WACAqB,YACC1+D,SAAQ,KACTw9D,EAAKqC,sBAAsB,GAE/B,IACAz3H,EAAQ6xB,GAAG,mBAAmB,SAAUhX,EAAMs7C,GAC5C,MAAMhK,EAAYtxC,EAAKsxC,UACvBwmE,EAAWroE,QAAQ6B,GAAWrxD,MAAK,SAAUi7D,GAC3C,MAAM9R,EAAO,IAAI0tE,EAAW,yBAAyBxlE,KACrD8mE,EAAgBhvE,GAChB,MAAM1rC,EAAQs1B,GAAa0U,EAAM3Y,eAAekE,MAAQvkC,KAAKuO,MAAQ,EACrEi+C,EAAK5F,gBAAgB,CACnBnwD,UACAm2D,OACAlS,OACA0J,OAAQ9yC,EAAK8yC,OACbgB,SAAU9zC,EAAK8zC,SACf3E,kBAAmBnvC,EAAKmvC,oBACvBlvD,MAAK,SAAU48H,GAChBxE,EAAiBjvE,GACb1rC,IACF,EAAIgqC,EAAMjhD,MAAM,QAAQ6qD,EAAY,6BAAkC5iD,KAAKuO,MAAQS,YAAgBm/G,EAAiB57H,UAEtHq6D,EAAKh7C,OACP,IAAG,SAAUvK,GACXsiH,EAAiBjvE,GACbA,EAAKgS,YAGTE,EAAKl2D,MAAM2Q,EACb,GACF,GACF,IACA5Q,EAAQ6xB,GAAG,kBAAkB,SAAUhX,EAAMs7C,GAC3C,MAAM,UACJhK,EAAS,qBACToE,EAAoB,qBACpBC,GACE31C,EACJ83G,EAAWroE,QAAQ6B,GAAWrxD,MAAK,SAAUi7D,GAC3C,MAAM9R,EAAO,IAAI0tE,EAAW,wBAA0BxlE,GACtD8mE,EAAgBhvE,GAChB,MAAM1rC,EAAQs1B,GAAa0U,EAAM3Y,eAAekE,MAAQvkC,KAAKuO,MAAQ,EACrEi+C,EAAK4hE,mBAAmB,CACtB33H,UACAikD,OACAkS,OACA5F,uBACAC,yBACC11D,MAAK,WACNo4H,EAAiBjvE,GACb1rC,IACF,EAAIgqC,EAAMjhD,MAAM,QAAQ6qD,EAAY,4BAAiC5iD,KAAKuO,MAAQS,OAEpF49C,EAAKh7C,OACP,IAAG,SAAUvK,GACXsiH,EAAiBjvE,GACbA,EAAKgS,YAGTE,EAAKl2D,MAAM2Q,EACb,GACF,GACF,IACA5Q,EAAQ6xB,GAAG,iBAAiB,SAAUhX,GACpC,OAAO83G,EAAWroE,QAAQzvC,EAAKsxC,WAAWrxD,MAAK,SAAUi7D,GACvD,OAAO48D,EAAW4B,OAAOx+D,EAAM,gBACjC,GACF,IACA/1D,EAAQ6xB,GAAG,gBAAgB,SAAUhX,GACnC,OAAO83G,EAAWiF,aAAa/8G,EAAKhP,GAAI7L,EAC1C,IACAA,EAAQ6xB,GAAG,WAAW,SAAUhX,GAC9B,OAAO83G,EAAWhnE,SAAQ,EAC5B,IACA3rD,EAAQ6xB,GAAG,aAAa,SAAUhX,GAChCo7C,GAAa,EACb,MAAM1E,EAAS,GACf,GAAIohE,EAAY,CACdA,EAAW//D,UAAU,IAAIrQ,EAAMvW,eAAe,2BAC9C,MAAM6rF,EAAiBlF,EAAWhnE,UAClC4F,EAAO15D,KAAKggI,GACZlF,EAAa,IACf,MACE,EAAIV,EAAgB6F,qBAElBlF,GACFA,EAAW,IAAIrwE,EAAMvW,eAAe,2BAEtC,UAAWiY,KAAQ4uE,EACjBthE,EAAO15D,KAAKosD,EAAKouE,UACjBpuE,EAAK2O,YAEP,OAAOt4D,QAAQw8B,IAAIy6B,GAAQz2D,MAAK,WAC9BkF,EAAQqiB,UACRriB,EAAU,IACZ,GACF,IACAA,EAAQ6xB,GAAG,SAAS,SAAUhX,IAhY9B,SAAkBA,GAChB,SAASk9G,EAAUC,GACjBzF,IACAvyH,EAAQyL,KAAK,SAAU,CACrBi+C,QAASsuE,GAEb,CACA,SAASC,EAAUvoF,GAEjB,GADA6iF,IACI7iF,aAAc6S,EAAMnY,kBAAmB,CACzC,MAAM6Z,EAAO,IAAI0tE,EAAW,+BAA+BjiF,EAAGE,QAC9DqjF,EAAgBhvE,GAChBjkD,EAAQooD,gBAAgB,kBAAmB1Y,GAAI50C,MAAK,UAAU,SAC5DypD,IAEA2uE,EAAiBjvE,GACjB0uE,EAAWv7D,eAAe7S,GAC1B2zE,GACF,IAAGzvH,OAAM,WACPyqH,EAAiBjvE,GACjBjkD,EAAQyL,KAAK,eAAgBikC,EAC/B,GACF,MAAWA,aAAc6S,EAAM5X,qBAAuB+E,aAAc6S,EAAMhY,qBAAuBmF,aAAc6S,EAAMzY,6BAA+B4F,aAAc6S,EAAM1Y,sBACtK7pC,EAAQyL,KAAK,eAAgBikC,GAE7B1vC,EAAQyL,KAAK,eAAgB,IAAI82C,EAAM1Y,sBAAsB6F,EAAGrwC,QAASqwC,EAAG/uC,YAEhF,CACA,SAASu3H,IACP3F,IACAY,GAAa,GAAOr4H,KAAKi9H,GAAW,SAAUnnH,GAC5C2hH,IACM3hH,aAAkBihH,EAAYsG,mBAIpCxF,EAAWgC,sBAAsB75H,MAAK,WACpCy3H,IACAY,GAAa,GAAMr4H,KAAKi9H,EAAWE,EACrC,IANEA,EAAUrnH,EAOd,GACF,CACA2hH,IACAiB,EAAc34G,GAAM/f,MAAK,SAAU64H,GACjC,GAAI19D,EAEF,MADA09D,EAAc/gE,UAAU,IAAIrQ,EAAMvW,eAAe,2BAC3C,IAAItqC,MAAM,yBAElBixH,EAAagB,EACbhB,EAAWgC,qBAAoB,GAAM75H,MAAK4gG,IACxC17F,EAAQyL,KAAK,aAAc,CACzB3P,OAAQ4/F,EAAOx6E,MAAMJ,YACrB,GAEN,IAAGhmB,KAAKo9H,EAAiBD,EAC3B,CA0UEG,CAAS1F,GACTA,EAAY,IACd,IACOM,CACT,CACA,yBAAOqF,CAAmB5xE,GACxB,MAAMzmD,EAAU,IAAI8iD,EAAiBkF,eAAe,SAAU,OAAQvB,GACtEgO,EAAqBE,MAAM30D,EAASymD,GACpCzmD,EAAQyL,KAAK,QAAS,KACxB,EAEF3W,EAAQ2/D,qBAAuBA,EAIT,oBAAXx/D,SAA2BstD,EAAMpU,UAA4B,oBAATh5C,MAFrB,mBADnBy8H,EAG8Ez8H,MAF3Es9D,aAA8B,cAAem/D,GAGrEn9D,EAAqB4jE,mBAAmBljI,KAC1C,EAIO,CAACw0C,EAAyB70C,KAhqBjC,MAoqBAS,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ80C,eAAiB90C,EAAQkX,KAAOlX,EAAQ+0C,sBAAwB/0C,EAAQg1C,4BAA8Bh1C,EAAQi1C,kBAAoBj1C,EAAQk1C,oBAAsBl1C,EAAQm1C,kBAAoBn1C,EAAQo1C,eAAiBp1C,EAAQq1C,kBAAoBr1C,EAAQs1C,kBAAoBt1C,EAAQu1C,oBAAsBv1C,EAAQw1C,IAAMx1C,EAAQy1C,oBAAsBz1C,EAAQ01C,wBAA0B11C,EAAQ21C,YAAc31C,EAAQ41C,oBAAsB51C,EAAQ61C,oBAAsB71C,EAAQ81C,UAAY91C,EAAQ+1C,gBAAkB/1C,EAAQg2C,YAAch2C,EAAQi2C,YAAcj2C,EAAQk2C,qBAAuBl2C,EAAQm2C,wBAA0Bn2C,EAAQo2C,oBAAsBp2C,EAAQq2C,cAAgBr2C,EAAQs2C,gBAAkBt2C,EAAQu2C,eAAiBv2C,EAAQw2C,oBAAsBx2C,EAAQy2C,iBAAmBz2C,EAAQ02C,eAAiB12C,EAAQ22C,eAAiB32C,EAAQ42C,oBAAsB52C,EAAQ62C,qBAAuB72C,EAAQ82C,uBAAyB92C,EAAQ+2C,2BAA6B/2C,EAAQg3C,0BAA4Bh3C,EAAQi3C,0BAA4Bj3C,EAAQk3C,oBAAiB,EACtiCl3C,EAAQm3C,OAqVR,SAAgBC,EAAM77B,GACf67B,GACHC,EAAY97B,EAEhB,EAxVAvb,EAAQs3C,cAAgBA,EACxBt3C,EAAQu3C,uBAoWR,SAAgClpC,EAAKmpC,EAAU,KAAMl4B,EAAU,MAC7D,IAAKjR,EACH,OAAO,KAET,IACE,GAAIiR,GAA0B,iBAARjR,EAAkB,CACtC,GAAIiR,EAAQm4B,oBAAsBppC,EAAIqpC,WAAW,QAAS,CACxD,MAAMC,EAAOtpC,EAAIkL,MAAM,OACnBo+B,GAAM3wC,QAAU,IAClBqH,EAAM,UAAUA,IAEpB,CACA,GAAIiR,EAAQs4B,mBACV,IACEvpC,EAAMwpC,EAAmBxpC,EAC3B,CAAE,MAAO,CAEb,CACA,MAAMypC,EAAcN,EAAU,IAAI19B,IAAIzL,EAAKmpC,GAAW,IAAI19B,IAAIzL,GAC9D,GA/BJ,SAA0BA,GACxB,OAAQA,GAAKmL,UACX,IAAK,QACL,IAAK,SACL,IAAK,OACL,IAAK,UACL,IAAK,OACH,OAAO,EACT,QACE,OAAO,EAEb,CAoBQu+B,CAAiBD,GACnB,OAAOA,CAEX,CAAE,MAAO,CACT,OAAO,IACT,EA3XA93C,EAAQg4C,oBA0uBR,SAA6B3F,EAAO,IAAI59B,MAEtC,MADe,CAAC49B,EAAK4F,iBAAiBpsC,YAAawmC,EAAK6F,cAAgB,GAAGrsC,WAAWssC,SAAS,EAAG,KAAM9F,EAAK+F,aAAavsC,WAAWssC,SAAS,EAAG,KAAM9F,EAAKgG,cAAcxsC,WAAWssC,SAAS,EAAG,KAAM9F,EAAKiG,gBAAgBzsC,WAAWssC,SAAS,EAAG,KAAM9F,EAAKkG,gBAAgB1sC,WAAWssC,SAAS,EAAG,MACvRvqC,KAAK,GACrB,EA5uBA5N,EAAQw4C,QA2wBR,WACE,GAAsB,oBAAXC,QAAwD,mBAAvBA,QAAQC,WAClD,OAAOD,OAAOC,aAEhB,MAAMC,EAAM,IAAI7tB,WAAW,IAC3B,GAAsB,oBAAX2tB,QAA6D,mBAA5BA,QAAQG,gBAClDH,OAAOG,gBAAgBD,QAEvB,QAAS3uC,EAAI,EAAGA,EAAI,GAAIA,IACtB2uC,EAAI3uC,GAAK4a,KAAKi0B,MAAsB,IAAhBj0B,KAAKG,UAG7B,OAAOuyB,EAAcqB,EACvB,EAvxBA34C,EAAQ84C,kBAgUR,WACE,OAAOC,CACT,EAjUA/4C,EAAQwM,KAkUR,SAAc+O,GACRw9B,GAAajE,EAAekE,OAC9B9vC,QAAQiD,IAAI,SAASoP,IAEzB,EArUAvb,EAAQi5C,cAwtBR,SAAuBp0C,GACrB,MAAoB,iBAANA,QAAoC,IAAlBA,GAAGmnB,UACrC,EAztBAhsB,EAAQk5C,aA0tBR,SAAsBC,EAAMtjB,GAC1B,GAAIsjB,EAAKnyC,SAAW6uB,EAAK7uB,OACvB,OAAO,EAET,QAASgD,EAAI,EAAGovC,EAAKD,EAAKnyC,OAAQgD,EAAIovC,EAAIpvC,IACxC,GAAImvC,EAAKnvC,KAAO6rB,EAAK7rB,GACnB,OAAO,EAGX,OAAO,CACT,EAnuBAhK,EAAQq5C,cAAW,EACnBr5C,EAAQs5C,iBA4vBR,SAA0BnuB,GAKxB,OAJKouB,IACHA,EAAiB,2UACjBC,EAAmB,IAAIC,IAAI,CAAC,CAAC,IAAK,SAE7BtuB,EAAIuuB,WAAWH,GAAgB,CAAClzC,EAAGszC,EAAIC,IACrCD,EAAKA,EAAGE,UAAU,QAAUL,EAAiB53C,IAAIg4C,IAE5D,EAnwBA55C,EAAQ85C,cAydR,SAAuB1wC,GACrB,MAAML,EAAMtI,OAAO4D,OAAO,MAC1B,UAAY4J,EAAK3M,KAAU8H,EACzBL,EAAIkF,GAAO3M,EAEb,OAAOyH,CACT,EA9dA/I,EAAQ+5C,WAqdR,SAAoBhxC,GAClB,OAAOtI,OAAOc,KAAKwH,GAAK/B,MAC1B,EAtdAhH,EAAQg6C,kBAmTR,SAA2Bz9B,GACrB09B,OAAOC,UAAU39B,KACnBw8B,EAAYx8B,EAEhB,EAtTAvc,EAAQm6C,OAASA,EACjBn6C,EAAQo6C,SA+cR,SAAkB94C,GAChB,OAAOqL,OAAOif,aAAatqB,GAAS,GAAK,IAAMA,GAAS,GAAK,IAAMA,GAAS,EAAI,IAAc,IAARA,EACxF,EAhdAtB,EAAQq6C,cAAgBA,EACxBr6C,EAAQs6C,kBA2qBR,SAA2BnvB,GACzB,GAAIA,EAAI,IAAM,IAAQ,CACpB,IAAIovB,EAQJ,GAPe,MAAXpvB,EAAI,IAA4B,MAAXA,EAAI,GAC3BovB,EAAW,WACS,MAAXpvB,EAAI,IAA4B,MAAXA,EAAI,GAClCovB,EAAW,WACS,MAAXpvB,EAAI,IAA4B,MAAXA,EAAI,IAA4B,MAAXA,EAAI,KACvDovB,EAAW,SAETA,EACF,IACE,MAAMC,EAAU,IAAIC,YAAYF,EAAU,CACxCG,OAAO,IAEHxuB,EAASmuB,EAAclvB,GAC7B,OAAOqvB,EAAQG,OAAOzuB,EACxB,CAAE,MAAO0uB,GACPnuC,EAAK,uBAAuBmuC,MAC9B,CAEJ,CACA,MAAMC,EAAS,GACf,QAAS7wC,EAAI,EAAGovC,EAAKjuB,EAAInkB,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC5C,MAAM8wC,EAAOC,EAAwB5vB,EAAIhB,WAAWngB,IACpD6wC,EAAO93C,KAAK+3C,EAAOnuC,OAAOif,aAAakvB,GAAQ3vB,EAAI+R,OAAOlzB,GAC5D,CACA,OAAO6wC,EAAOjtC,KAAK,GACrB,EAtsBA5N,EAAQ63C,mBAAqBA,EAC7B73C,EAAQq3C,YAAcA,EACtBr3C,EAAQg7C,mBAwsBR,SAA4B7vB,GAC1B,OAAOC,SAASC,mBAAmBF,GACrC,EAzsBAnrB,EAAQyM,KAAOA,EACf,MAAM4sC,IAA8B,iBAAZ7Y,SAAwBA,QAAU,IAAO,oBAAuBA,QAAQya,SAASC,IAAQ1a,QAAQya,SAASE,UAAY3a,QAAQtyB,MAAyB,YAAjBsyB,QAAQtyB,MACtKlO,EAAQq5C,SAAWA,EAEnBr5C,EAAQ+1C,gBADgB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,GAGxC/1C,EAAQk2C,qBADqB,CAAC,KAAO,EAAG,EAAG,KAAO,EAAG,GAGrDl2C,EAAQ01C,wBADwB,IAGhC11C,EAAQ21C,YADY,KAGpB31C,EAAQ41C,oBADoB,IAG5B51C,EAAQs2C,gBADgBV,mBAYxB51C,EAAQk1C,oBAVoB,CAC1BkG,IAAK,EACLC,QAAS,EACTC,MAAO,EACPC,KAAM,EACNC,kBAAmB,GACnBC,oBAAqB,GACrBC,oBAAqB,GACrBC,OAAQ,KASV37C,EAAQ02C,eANe,CACrBkF,QAAS,EACTC,OAAQ,EACRC,aAAc,EACdC,eAAgB,GAIlB/7C,EAAQ82C,uBADuB,yBAS/B92C,EAAQ62C,qBAPqB,CAC3B+E,SAAU,EACVI,KAAM,EACNC,SAAU,EACVC,MAAO,GACPC,IAAK,IAaPn8C,EAAQ+2C,2BAV2B,CACjCqF,OAAQ,EACRC,OAAQ,EACRC,cAAe,GACfC,eAAgB,GAChBC,iBAAkB,GAClBC,UAAW,GACXC,cAAe,GACfC,YAAa,IAaf38C,EAAQo1C,eAVe,CACrBkG,MAAO,EACPsB,gBAAiB,EACjBC,KAAM,GACNC,mBAAoB,GACpBC,uBAAwB,IACxBC,uBAAwB,IACxBC,SAAU,KACVC,mBAAoB,MAetBl9C,EAAQi1C,kBAZkB,CACxBkI,KAAM,EACNC,OAAQ,EACRC,YAAa,EACbC,UAAW,EACXC,iBAAkB,EAClBC,mBAAoB,EACpBC,wBAAyB,EACzBC,YAAa,EACbC,iBAAkB,EAClBC,iBAAkB,GAQpB59C,EAAQ81C,UALU,CAChB+H,eAAgB,EAChBC,UAAW,EACXC,WAAY,GA+Bd/9C,EAAQu2C,eA5Be,CACrByH,KAAM,EACNC,KAAM,EACNhC,SAAU,EACViC,KAAM,EACNC,OAAQ,EACRC,OAAQ,EACRC,QAAS,EACTC,SAAU,EACVC,UAAW,EACXC,UAAW,GACXC,SAAU,GACVC,UAAW,GACXxC,MAAO,GACPyC,MAAO,GACPxC,IAAK,GACLyC,MAAO,GACPC,eAAgB,GAChBC,MAAO,GACPC,MAAO,GACPC,OAAQ,GACRC,OAAQ,GACRC,YAAa,GACbC,QAAS,GACTC,UAAW,GACXC,OAAQ,GACRC,OAAQ,IAOVt/C,EAAQw2C,oBAJoB,CAC1B+I,MAAO,QACPC,MAAO,KAeTx/C,EAAQ22C,eAZe,CACrB2G,UAAW,EACXmC,OAAQ,EACRnE,MAAO,EACPoE,OAAQ,EACRC,SAAU,GACVC,OAAQ,GACRC,SAAU,GACVC,OAAQ,IACRC,aAAc,IACdC,eAAgB,KAwBlBhgD,EAAQ42C,oBArBoB,CAC1BiJ,SAAU,EACVI,SAAU,EACVC,SAAU,EACVC,UAAW,KACXC,SAAU,KACVC,cAAe,MACfC,MAAO,MACPC,WAAY,MACZC,MAAO,OACPC,KAAM,OACNC,KAAM,OACNC,WAAY,QACZC,YAAa,QACbC,gBAAiB,QACjBC,YAAa,QACbC,KAAM,SACNC,SAAU,SACVC,eAAgB,SAChBC,kBAAmB,UAUrBlhD,EAAQg3C,0BAP0B,CAChCmK,MAAO,EACPC,OAAQ,EACRC,QAAS,EACTC,MAAO,EACP9C,UAAW,GAmBbx+C,EAAQi3C,0BAhB0B,CAChCsK,EAAG,cACHC,EAAG,aACHC,EAAG,aACHC,EAAG,WACHC,GAAI,QACJC,GAAI,OACJC,GAAI,WACJC,GAAI,YACJC,GAAI,cACJC,GAAI,gBACJC,EAAG,YACHC,EAAG,SACHC,EAAG,WACHC,EAAG,aAULpiD,EAAQm2C,wBAPwB,CAC9BkM,GAAI,YACJC,GAAI,WACJC,GAAI,UACJC,GAAI,YACJC,GAAI,YAONziD,EAAQu1C,oBAJoB,CAC1BmN,EAAG,WACHN,EAAG,aAGL,MAAMtN,EAAiB,CACrB6N,OAAQ,EACRC,SAAU,EACV5J,MAAO,GAETh5C,EAAQ80C,eAAiBA,EAKzB90C,EAAQo2C,oBAJoB,CAC1B4F,KAAM,EACN6G,OAAQ,GA6FV7iD,EAAQw1C,IA1FI,CACVsN,WAAY,EACZC,aAAc,EACdC,WAAY,EACZC,YAAa,EACbC,cAAe,EACfC,QAAS,EACTC,mBAAoB,EACpBC,YAAa,EACbC,UAAW,EACXC,KAAM,GACNC,QAAS,GACTC,UAAW,GACXC,OAAQ,GACRC,OAAQ,GACRC,QAAS,GACTC,SAAU,GACVC,SAAU,GACVC,UAAW,GACXC,UAAW,GACXC,OAAQ,GACRC,YAAa,GACbC,KAAM,GACNC,OAAQ,GACRC,WAAY,GACZC,aAAc,GACdC,gBAAiB,GACjBC,kBAAmB,GACnBC,QAAS,GACTC,KAAM,GACNC,OAAQ,GACRC,UAAW,GACXC,QAAS,GACTC,eAAgB,GAChBC,eAAgB,GAChBC,UAAW,GACXC,WAAY,GACZC,QAAS,GACTC,qBAAsB,GACtBC,YAAa,GACbC,SAAU,GACVC,mBAAoB,GACpBC,cAAe,GACfC,SAAU,GACVC,SAAU,GACVC,eAAgB,GAChBC,iBAAkB,GAClBC,2BAA4B,GAC5BC,aAAc,GACdC,sBAAuB,GACvBC,oBAAqB,GACrBC,kBAAmB,GACnBC,eAAgB,GAChBC,gBAAiB,GACjBC,aAAc,GACdC,cAAe,GACfC,cAAe,GACfC,YAAa,GACbC,kBAAmB,GACnBC,gBAAiB,GACjBC,mBAAoB,GACpBC,iBAAkB,GAClBC,YAAa,GACbC,iBAAkB,GAClBC,eAAgB,GAChBC,eAAgB,GAChBC,aAAc,GACdC,UAAW,GACXC,eAAgB,GAChBC,mBAAoB,GACpBC,wBAAyB,GACzBC,iBAAkB,GAClBC,YAAa,GACbC,UAAW,GACXC,sBAAuB,GACvBC,oBAAqB,GACrBC,WAAY,GACZC,SAAU,GACVC,gBAAiB,GACjBC,cAAe,GACfC,sBAAuB,GACvBC,2BAA4B,GAC5BC,kBAAmB,GACnBC,wBAAyB,GACzBC,6BAA8B,GAC9BC,wBAAyB,GACzBC,4BAA6B,GAC7BC,yBAA0B,GAC1BC,cAAe,IAOjBroD,EAAQq1C,kBAJkB,CACxBiT,cAAe,EACfC,mBAAoB,GAGtB,IAAIxP,EAAYjE,EAAe8N,SAc/B,SAASn2C,EAAK8O,GACRw9B,GAAajE,EAAe8N,UAC9B15C,QAAQiD,IAAI,YAAYoP,IAE5B,CACA,SAAS87B,EAAY97B,GACnB,MAAM,IAAI3O,MAAM2O,EAClB,CA2CA,SAAS4+B,EAAOpxC,EAAK8V,EAAMvd,EAAOknD,GAAkB,GAOlD,OANA/nD,OAAOY,eAAe0H,EAAK8V,EAAM,CAC/Bvd,QACAO,YAAa2mD,EACb7jD,cAAc,EACdD,UAAU,IAELpD,CACT,CACA,MAAM+0C,EAAgB,WACpB,SAASA,EAAc9rC,EAASD,GAC1BnJ,KAAK2e,cAAgBu2B,GACvBgB,EAAY,oCAEdl2C,KAAKoJ,QAAUA,EACfpJ,KAAKmJ,KAAOA,CACd,CAGA,OAFA+rC,EAAc31C,UAAY,IAAIkM,MAC9BypC,EAAcv2B,YAAcu2B,EACrBA,CACT,CAXsB,GA0DtB,SAASiB,EAAclrB,GACA,iBAAVA,QAAwC,IAAlBA,GAAOplB,QACtCqwC,EAAY,sCAEd,MAAMrwC,EAASolB,EAAMplB,OACfyhD,EAAqB,KAC3B,GAAIzhD,EAASyhD,EACX,OAAO97C,OAAOif,aAAa1qB,MAAM,KAAMkrB,GAEzC,MAAMyuB,EAAS,GACf,QAAS7wC,EAAI,EAAGA,EAAIhD,EAAQgD,GAAKy+C,EAAoB,CACnD,MAAMC,EAAW9jC,KAAKE,IAAI9a,EAAIy+C,EAAoBzhD,GAC5C2hD,EAAQv8B,EAAMvB,SAAS7gB,EAAG0+C,GAChC7N,EAAO93C,KAAK4J,OAAOif,aAAa1qB,MAAM,KAAMynD,GAC9C,CACA,OAAO9N,EAAOjtC,KAAK,GACrB,CACA,SAASysC,EAAclvB,GACF,iBAARA,GACTksB,EAAY,sCAEd,MAAMrwC,EAASmkB,EAAInkB,OACbolB,EAAQ,IAAItB,WAAW9jB,GAC7B,QAASgD,EAAI,EAAGA,EAAIhD,IAAUgD,EAC5BoiB,EAAMpiB,GAAyB,IAApBmhB,EAAIhB,WAAWngB,GAE5B,OAAOoiB,CACT,CAzEApsB,EAAQq2C,cAAgBA,EAOxBr2C,EAAQs1C,kBANR,cAAgCe,EAC9B,WAAAv2B,CAAYvE,EAAKu/B,GACf8N,MAAMrtC,EAAK,qBACXpa,KAAK25C,KAAOA,CACd,GASF96C,EAAQ+0C,sBANR,cAAoCsB,EAClC,WAAAv2B,CAAYvE,EAAKxF,GACf6yC,MAAMrtC,EAAK,yBACXpa,KAAK4U,QAAUA,CACjB,GAQF/V,EAAQ61C,oBALR,cAAkCQ,EAChC,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,sBACb,GAQFvb,EAAQy1C,oBALR,cAAkCY,EAChC,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,sBACb,GASFvb,EAAQg1C,4BANR,cAA0CqB,EACxC,WAAAv2B,CAAYvE,EAAKlF,GACfuyC,MAAMrtC,EAAK,+BACXpa,KAAKkV,OAASA,CAChB,GAQFrW,EAAQg2C,YALR,cAA0BK,EACxB,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,cACb,GAQFvb,EAAQk3C,eALR,cAA6Bb,EAC3B,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,iBACb,GAoFFvb,EAAQi2C,YA1BR,MACE,yBAAW4S,GACT,OAAO1O,EAAOh5C,KAAM,iBAhBxB,WACE,MAAM2nD,EAAU,IAAIh+B,WAAW,GAG/B,OAFAg+B,EAAQ,GAAK,EAEQ,IADN,IAAIC,YAAYD,EAAQ58B,OAAQ,EAAG,GACpC,EAChB,CAW0C28B,GACxC,CACA,0BAAWG,GACT,OAAO7O,EAAOh5C,KAAM,kBAbxB,WACE,IAEE,OADA,IAAIqb,SAAS,KACN,CACT,CAAE,MACA,OAAO,CACT,CACF,CAM2CwsC,GACzC,CACA,qCAAWC,GACT,OAAO9O,EAAOh5C,KAAM,6BAAyD,oBAApB+nD,gBAC3D,CACA,mBAAWC,GACT,MAAyB,oBAAd5mC,UACF43B,EAAOh5C,KAAM,WAAY,CAC9BioD,OAAO,EACPC,OAAO,IAGJlP,EAAOh5C,KAAM,WAAY,CAC9BioD,MAAO7mC,UAAU4mC,SAASr0C,SAAS,OACnCu0C,MAAO9mC,UAAU4mC,SAASr0C,SAAS,QAEvC,CACA,8BAAWw0C,GACT,OAAOnP,EAAOh5C,KAAM,sBAAuBjB,WAAWqpD,KAAKC,WAAW,4BACxE,GAGF,MAAMC,EAAa,IAAI39C,MAAM,KAAKvK,QAAQ6H,KAAItI,GAAKA,EAAE+K,SAAS,IAAIssC,SAAS,EAAG,OAsK9En4C,EAAQkX,KArKR,MACE,mBAAOwyC,CAAatwB,EAAGh5B,EAAGuf,GACxB,MAAO,IAAI8pC,EAAWrwB,KAAKqwB,EAAWrpD,KAAKqpD,EAAW9pC,IACxD,CACA,kBAAOgqC,CAAYlG,EAAWmG,GAC5B,IAAIC,EACApG,EAAU,IACRA,EAAU,GAAK,IACjBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,GAEdD,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,GACnBA,EAAU,GAAK,IACjBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,GAEdD,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,KAEvBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,EACZA,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,EACRpG,EAAU,GAAK,IACjBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,GAEdD,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,GACnBA,EAAU,GAAK,IACjBoG,EAAOD,EAAO,GACdA,EAAO,GAAKA,EAAO,GACnBA,EAAO,GAAKC,GAEdD,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,IAEzBmG,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,GACvBmG,EAAO,IAAMnG,EAAU,EACzB,CACA,gBAAOA,CAAUqG,EAAIC,GACnB,MAAO,CAACD,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAID,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAID,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAID,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAID,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAIA,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAAKC,EAAG,GAAKD,EAAG,GAChN,CACA,qBAAOE,CAAe35C,EAAG9L,GAGvB,MAAO,CAFI8L,EAAE,GAAK9L,EAAE,GAAK8L,EAAE,GAAK9L,EAAE,GAAKA,EAAE,GAC9B8L,EAAE,GAAK9L,EAAE,GAAK8L,EAAE,GAAK9L,EAAE,GAAKA,EAAE,GAE3C,CACA,4BAAO0lD,CAAsB55C,EAAG9L,GAC9B,MAAM7C,EAAI6C,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAGjC,MAAO,EAFK8L,EAAE,GAAK9L,EAAE,GAAK8L,EAAE,GAAK9L,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAM7C,IACxD2O,EAAE,GAAK9L,EAAE,GAAK8L,EAAE,GAAK9L,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAM7C,EAExE,CACA,iCAAOwoD,CAA2B9wB,EAAG70B,GACnC,MAAMo1C,EAAKx4C,KAAK6oD,eAAe5wB,EAAG70B,GAC5Bq1C,EAAKz4C,KAAK6oD,eAAe5wB,EAAEhrB,MAAM,EAAG,GAAI7J,GACxC4lD,EAAKhpD,KAAK6oD,eAAe,CAAC5wB,EAAE,GAAIA,EAAE,IAAK70B,GACvC6lD,EAAKjpD,KAAK6oD,eAAe,CAAC5wB,EAAE,GAAIA,EAAE,IAAK70B,GAC7C,MAAO,CAACqgB,KAAKE,IAAI60B,EAAG,GAAIC,EAAG,GAAIuQ,EAAG,GAAIC,EAAG,IAAKxlC,KAAKE,IAAI60B,EAAG,GAAIC,EAAG,GAAIuQ,EAAG,GAAIC,EAAG,IAAKxlC,KAAK6H,IAAIktB,EAAG,GAAIC,EAAG,GAAIuQ,EAAG,GAAIC,EAAG,IAAKxlC,KAAK6H,IAAIktB,EAAG,GAAIC,EAAG,GAAIuQ,EAAG,GAAIC,EAAG,IAC7J,CACA,uBAAOC,CAAiB9lD,GACtB,MAAM7C,EAAI6C,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GACjC,MAAO,CAACA,EAAE,GAAK7C,GAAI6C,EAAE,GAAK7C,GAAI6C,EAAE,GAAK7C,EAAG6C,EAAE,GAAK7C,GAAI6C,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAM7C,GAAI6C,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAM7C,EACnH,CACA,oCAAO4oD,CAA8B/lD,GACnC,MAAMgmD,EAAY,CAAChmD,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACjCtD,EAAIsD,EAAE,GAAKgmD,EAAU,GAAKhmD,EAAE,GAAKgmD,EAAU,GAC3C5qC,EAAIpb,EAAE,GAAKgmD,EAAU,GAAKhmD,EAAE,GAAKgmD,EAAU,GAC3CvgC,EAAIzlB,EAAE,GAAKgmD,EAAU,GAAKhmD,EAAE,GAAKgmD,EAAU,GAC3C7oD,EAAI6C,EAAE,GAAKgmD,EAAU,GAAKhmD,EAAE,GAAKgmD,EAAU,GAC3Cz+B,GAAS7qB,EAAIS,GAAK,EAClBqqB,EAASnH,KAAK4lC,MAAMvpD,EAAIS,IAAM,EAAI,GAAKT,EAAIS,EAAIsoB,EAAIrK,IAAM,EACzD8qC,EAAK3+B,EAAQC,GAAU,EACvB2+B,EAAK5+B,EAAQC,GAAU,EAC7B,MAAO,CAACnH,KAAK4lC,KAAKC,GAAK7lC,KAAK4lC,KAAKE,GACnC,CACA,oBAAOC,CAAcC,GACnB,MAAMxxB,EAAIwxB,EAAKx8C,MAAM,GASrB,OARIw8C,EAAK,GAAKA,EAAK,KACjBxxB,EAAE,GAAKwxB,EAAK,GACZxxB,EAAE,GAAKwxB,EAAK,IAEVA,EAAK,GAAKA,EAAK,KACjBxxB,EAAE,GAAKwxB,EAAK,GACZxxB,EAAE,GAAKwxB,EAAK,IAEPxxB,CACT,CACA,gBAAOyxB,CAAUC,EAAOC,GACtB,MAAMC,EAAOpmC,KAAK6H,IAAI7H,KAAKE,IAAIgmC,EAAM,GAAIA,EAAM,IAAKlmC,KAAKE,IAAIimC,EAAM,GAAIA,EAAM,KACvEE,EAAQrmC,KAAKE,IAAIF,KAAK6H,IAAIq+B,EAAM,GAAIA,EAAM,IAAKlmC,KAAK6H,IAAIs+B,EAAM,GAAIA,EAAM,KAC9E,GAAIC,EAAOC,EACT,OAAO,KAET,MAAMC,EAAOtmC,KAAK6H,IAAI7H,KAAKE,IAAIgmC,EAAM,GAAIA,EAAM,IAAKlmC,KAAKE,IAAIimC,EAAM,GAAIA,EAAM,KACvEI,EAAQvmC,KAAKE,IAAIF,KAAK6H,IAAIq+B,EAAM,GAAIA,EAAM,IAAKlmC,KAAK6H,IAAIs+B,EAAM,GAAIA,EAAM,KAC9E,OAAIG,EAAOC,EACF,KAEF,CAACH,EAAME,EAAMD,EAAOE,EAC7B,CACA,wBAAOC,CAAkBC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,GACnD,MAAMC,EAAU,GACdC,EAAS,CAAC,GAAI,IAChB,IAAI7qD,EAAG0e,EAAGqK,EAAG5jB,EAAG2lD,EAAIC,EAAIC,EAAMC,EAC9B,QAASliD,EAAI,EAAGA,EAAI,IAAKA,EAUvB,GATU,IAANA,GACF2V,EAAI,EAAI0rC,EAAK,GAAKE,EAAK,EAAIE,EAC3BxqD,GAAK,EAAIoqD,EAAK,EAAIE,EAAK,EAAIE,EAAK,EAAIE,EACpC3hC,EAAI,EAAIuhC,EAAK,EAAIF,IAEjB1rC,EAAI,EAAI2rC,EAAK,GAAKE,EAAK,EAAIE,EAC3BzqD,GAAK,EAAIqqD,EAAK,EAAIE,EAAK,EAAIE,EAAK,EAAIE,EACpC5hC,EAAI,EAAIwhC,EAAK,EAAIF,GAEf1mC,KAAKunC,IAAIlrD,GAAK,MAAlB,CACE,GAAI2jB,KAAKunC,IAAIxsC,GAAK,MAChB,SAEFvZ,GAAK4jB,EAAIrK,EACL,EAAIvZ,GAAKA,EAAI,GACfylD,EAAQ9oD,KAAKqD,EAGjB,MACA6lD,EAAOtsC,EAAIA,EAAI,EAAIqK,EAAI/oB,EACvBirD,EAAWtnC,KAAK4lC,KAAKyB,GACjBA,EAAO,IAGXF,IAAOpsC,EAAIusC,IAAa,EAAIjrD,GACxB,EAAI8qD,GAAMA,EAAK,GACjBF,EAAQ9oD,KAAKgpD,GAEfC,IAAOrsC,EAAIusC,IAAa,EAAIjrD,GACxB,EAAI+qD,GAAMA,EAAK,GACjBH,EAAQ9oD,KAAKipD,IAGjB,IACEI,EADEphC,EAAI6gC,EAAQ7kD,OAEhB,MAAMqlD,EAAOrhC,EACb,KAAOA,KACL5kB,EAAIylD,EAAQ7gC,GACZohC,EAAK,EAAIhmD,EACT0lD,EAAO,GAAG9gC,GAAKohC,EAAKA,EAAKA,EAAKf,EAAK,EAAIe,EAAKA,EAAKhmD,EAAImlD,EAAK,EAAIa,EAAKhmD,EAAIA,EAAIqlD,EAAKrlD,EAAIA,EAAIA,EAAIulD,EAC5FG,EAAO,GAAG9gC,GAAKohC,EAAKA,EAAKA,EAAKd,EAAK,EAAIc,EAAKA,EAAKhmD,EAAIolD,EAAK,EAAIY,EAAKhmD,EAAIA,EAAIslD,EAAKtlD,EAAIA,EAAIA,EAAIwlD,EAO9F,OALAE,EAAO,GAAGO,GAAQhB,EAClBS,EAAO,GAAGO,GAAQf,EAClBQ,EAAO,GAAGO,EAAO,GAAKV,EACtBG,EAAO,GAAGO,EAAO,GAAKT,EACtBE,EAAO,GAAG9kD,OAAS8kD,EAAO,GAAG9kD,OAASqlD,EAAO,EACtC,CAACznC,KAAKE,OAAOgnC,EAAO,IAAKlnC,KAAKE,OAAOgnC,EAAO,IAAKlnC,KAAK6H,OAAOq/B,EAAO,IAAKlnC,KAAK6H,OAAOq/B,EAAO,IACrG,GAGF,MAAM/Q,EAA0B,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,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,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,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,IAAO,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,MAAQ,MAAQ,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,IAAO,EAAG,MA8BjrB,SAASlD,EAAmB1sB,GAC1B,OAAOmhC,mBAAmBC,OAAOphC,GACnC,CAuBE,cAiBFnrB,EAAQm1C,kBAlBR,MAEE,WAAAr1B,GADA,UAAW,GAET3e,KAAKqrD,QAAU,IAAIhnD,SAAQ,CAACD,EAASE,KACnCtE,KAAKoE,QAAUwgB,IACb,EAAA5kB,KAAK,GAAW,GAChBoE,EAAQwgB,EAAK,EAEf5kB,KAAKsE,OAASqW,IACZ,EAAA3a,KAAK,GAAW,GAChBsE,EAAOqW,EAAO,CACf,GAEL,CACA,WAAI2wC,GACF,OAAO,EAAAtrD,KAAK,EACd,GAGF,IAAIo4C,EAAiB,KACjBC,EAAmB,KAyBvBx5C,EAAQy2C,iBADiB,oBACkB,EAIpC,CAAC5B,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQqjI,mBAAqBrjI,EAAQwjI,mBAAqBxjI,EAAQyjI,mBAAqBzjI,EAAQ0jI,mBAAqB1jI,EAAQ2jI,0BAAuB,EACnJ3jI,EAAQu/H,oBAiER,SAA6B7zG,GAC3B,MAAM1kB,EAAS0kB,EAAI1kB,OACnB,GAAe,IAAXA,EACF,OAAO,IAAI8jB,WAAW,GAExB,GAAe,IAAX9jB,EACF,OAAO,IAAI8jB,WAAWY,EAAI,IAE5B,IAAIk4G,EAAa,EACjB,QAAS55H,EAAI,EAAGA,EAAIhD,EAAQgD,IAC1B45H,GAAcl4G,EAAI1hB,GAAGgiB,WAEvB,MAAMjG,EAAO,IAAI+E,WAAW84G,GAC5B,IAAIpmC,EAAM,EACV,QAASxzF,EAAI,EAAGA,EAAIhD,EAAQgD,IAAK,CAC/B,MAAMqK,EAAO,IAAIyW,WAAWY,EAAI1hB,IAChC+b,EAAKkG,IAAI5X,EAAMmpF,GACfA,GAAOnpF,EAAK2X,UACd,CACA,OAAOjG,CACT,EApFA/lB,EAAQ6jI,eAqOR,SAAwBvD,EAAMwD,EAAMC,GAClC,MAAMvd,EAAU/lH,OAAO4D,OAAO,MACxB2/H,EAAyBC,EAAuB,CACpDH,OACA71H,IAAK,KACLi2H,eAAe,IAEjB,GAAIF,EACF,QAASh6H,EAAIg6H,EAAuBh9H,OAAS,EAAGgD,GAAK,EAAGA,IAAK,CAC3D,MAAMm6H,EAAoBH,EAAuBh6H,GACjD,GAAMm6H,aAA6BnH,EAAY2E,KAG/C,UAAW1zH,KAAOk2H,EAAkBC,UAAW,CAC7C,MAAM1yH,EAASqyH,EAAU91H,GACzB,IAAKyD,EACH,SAEF,MAEM2yH,EAAO,GACbC,EAHmBH,EAAkBj8B,OAAOj6F,GAGrBqyH,EAAM+D,EAFb,IAAIrH,EAAYuH,QAG5BF,EAAKr9H,OAAS,IAChBw/G,EAAQ90G,GAAU2yH,EAEtB,CACF,CAEF,GAAIP,EAAK/kE,IAAI,KAAM,CACjB,MAEMslE,EAAO,GACbC,EAHmBR,EAAKliI,IAAI,KAGL0+H,EAAM+D,EAFb,IAAIrH,EAAYuH,QAG5BF,EAAKr9H,OAAS,IAChBw/G,EAAQ6C,OAASgb,EAErB,CACA,SAAW52E,EAAM1T,YAAYysE,GAAW,EAAIA,EAAU,IACxD,EA1QAxmH,EAAQwkI,kBAkRR,SAA2Br5G,GACzB,MAAMe,EAAS,GACf,IAAIzI,EAAQ,EACZ,QAASzZ,EAAI,EAAGovC,EAAKjuB,EAAInkB,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC5C,MAAMy6H,EAAOt5G,EAAIu5G,YAAY16H,GAC7B,GAAI,IAAQy6H,GAAQA,GAAQ,IAAM,CAChC,MAAME,EAASC,EAAYH,GACvBE,IACElhH,EAAQzZ,GACVkiB,EAAOnpB,KAAKooB,EAAIT,UAAUjH,EAAOzZ,IAEnCkiB,EAAOnpB,KAAK4hI,GACZlhH,EAAQzZ,EAAI,EAEhB,MACMyZ,EAAQzZ,GACVkiB,EAAOnpB,KAAKooB,EAAIT,UAAUjH,EAAOzZ,IAEnCkiB,EAAOnpB,KAAK,MAAM0hI,EAAK54H,SAAS,IAAI+C,kBAChC61H,EAAO,QAAWA,EAAO,OAAUA,EAAO,QAC5Cz6H,IAEFyZ,EAAQzZ,EAAI,CAEhB,CACA,OAAsB,IAAlBkiB,EAAOllB,OACFmkB,GAEL1H,EAAQ0H,EAAInkB,QACdklB,EAAOnpB,KAAKooB,EAAIT,UAAUjH,EAAO0H,EAAInkB,SAEhCklB,EAAOte,KAAK,IACrB,EAjTA5N,EAAQ6kI,cA+JR,SAAuB15G,GACrB,MAAMe,EAAS,GACf,IAAIzI,EAAQ,EACZ,QAASzZ,EAAI,EAAGovC,EAAKjuB,EAAInkB,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC5C,MAAMy6H,EAAOt5G,EAAIhB,WAAWngB,IACxBy6H,EAAO,IAAQA,EAAO,KAAiB,KAATA,GAA0B,KAATA,GAA0B,KAATA,GAA0B,KAATA,GAA0B,KAATA,GAA0B,KAATA,GAA0B,KAATA,GAA0B,MAATA,GAA0B,MAATA,GAA0B,KAATA,GAA0B,KAATA,KACtMhhH,EAAQzZ,GACVkiB,EAAOnpB,KAAKooB,EAAIT,UAAUjH,EAAOzZ,IAEnCkiB,EAAOnpB,KAAK,IAAI0hI,EAAK54H,SAAS,OAC9B4X,EAAQzZ,EAAI,EAEhB,CACA,OAAsB,IAAlBkiB,EAAOllB,OACFmkB,GAEL1H,EAAQ0H,EAAInkB,QACdklB,EAAOnpB,KAAKooB,EAAIT,UAAUjH,EAAO0H,EAAInkB,SAEhCklB,EAAOte,KAAK,IACrB,EAlLA5N,EAAQ8kI,aAmLR,SAAsB35G,GACpB,OAAOA,EAAIuuB,WAAW,iBAAiBngC,GACvB,OAAVA,EACK,MACY,OAAVA,EACF,MAEF,KAAKA,KAEhB,EA3LAvZ,EAAQikI,uBAAyBA,EACjCjkI,EAAQ+kI,sBAsBR,SAA+BC,GAC7B,IAAIC,EACJ,OAAO,WAML,OALID,IACFC,EAASxkI,OAAO4D,OAAO,MACvB2gI,EAAYC,GACZD,EAAc,MAETC,CACT,CACF,EA/BAjlI,EAAQkgI,qBAoXR,SAA8BhrE,GAC5B,IAAKA,EACH,OAAO,KAET,MAAM+qE,EAAuB,IAAIxmF,IACjC,UAAYxrC,EAAK3M,KAAU4zD,EAAmB,CAC5C,IAAKjnD,EAAIypC,WAAW+V,EAAM3W,wBACxB,SAEF,IAAI27E,EAAcwN,EAAqBr+H,IAAIN,EAAM+1D,WAC5Co7D,IACHA,EAAc,GACdwN,EAAqBh0G,IAAI3qB,EAAM+1D,UAAWo7D,IAE5CA,EAAY1vH,KAAKzB,EACnB,CACA,OAAO2+H,EAAqB/xG,KAAO,EAAI+xG,EAAuB,IAChE,EApYAjgI,EAAQklI,kBA2ZR,SAA2B5sE,EAAUp1B,EAAOE,GAC1C,OAAQk1B,GACN,KAAK,GACH,MAAO,CAAC,EAAG,GAAI,EAAG,EAAGp1B,EAAO,GAC9B,KAAK,IACH,MAAO,EAAE,EAAG,EAAG,GAAI,EAAGA,EAAOE,GAC/B,KAAK,IACH,MAAO,CAAC,GAAI,EAAG,EAAG,EAAG,EAAGA,GAC1B,QACE,MAAM,IAAIx2B,MAAM,oBAEtB,EAraA5M,EAAQmlI,QAoYR,SAAiBh6G,GACf,MAAO,iBAAiBzf,KAAKyf,EAC/B,EArYAnrB,EAAQolI,aAqIR,SAAsBC,GACpB,OAAc,KAAPA,GAAsB,IAAPA,GAAsB,KAAPA,GAAsB,KAAPA,CACtD,EAtIArlI,EAAQslI,KAqHR,SAAc/kI,GACZ,OAAIA,GAAK,EACA,EAEFqkB,KAAKqJ,KAAKrJ,KAAK0gH,KAAK/kI,GAC7B,EAzHAP,EAAQulI,eAkWR,SAAwBjkI,GACtB,GAAI24C,OAAOC,UAAU54C,GACnB,OAAOA,EAAMuK,WAEf,MAAM25H,EAAe5gH,KAAKonD,MAAc,IAAR1qE,GAChC,OAAIkkI,EAAe,KAAQ,GACjBA,EAAe,KAAK35H,WAE1B25H,EAAe,IAAO,EACjBlkI,EAAMmqE,QAAQ,GAEhBnqE,EAAMmqE,QAAQ,EACvB,EA7WAzrE,EAAQylI,aAqIR,SAAsBt4H,GACpB,MAAMu4H,EAAkB,iBACxB,OAAOv4H,EAAK9K,MAAM,KAAK+G,KAAIqI,IACzB,MAAMlN,EAAIkN,EAAU8H,MAAMmsH,GAC1B,OAAInhI,EACK,CACL+F,KAAM/F,EAAE,GACRi5F,IAAK7yE,SAASpmB,EAAE,GAAI,KAGjB,CACL+F,KAAMmH,EACN+rF,IAAK,EACN,GAEL,EAnJAx9F,EAAQ2lI,SAwHR,SAAkB5/G,EAAM0/D,GACtB,OAAO1/D,EAAK0/D,IAAW,IAAM,EAC/B,EAzHAzlF,EAAQ4lI,WA0HR,SAAoB7/G,EAAM0/D,GACxB,OAAO1/D,EAAK0/D,IAAW,EAAI1/D,EAAK0/D,EAAS,EAC3C,EA3HAzlF,EAAQ6lI,WA4HR,SAAoB9/G,EAAM0/D,GACxB,OAAQ1/D,EAAK0/D,IAAW,GAAK1/D,EAAK0/D,EAAS,IAAM,GAAK1/D,EAAK0/D,EAAS,IAAM,EAAI1/D,EAAK0/D,EAAS,MAAQ,CACtG,EA7HAzlF,EAAQ8lI,aA4UR,SAAsB36G,GACpB,MAEM46G,EADQ,IAAIt4H,OAAO,SADA,CAAC,gBAAiB,cAAe,oBACLG,KAAK,KAAK8rC,WAAW,IAAK,OAAS,sDAAuD,KAC3Hv2C,KAAKgoB,GACzB,GAAI46G,IAAQ,GAAI,CACd,MAAM13H,EAAM03H,EAAM,GAClB,IAAI/c,GAAY,EAIhB,MAHiB,SAAb+c,EAAM,IAA8B,kBAAbA,EAAM,KAC/B/c,GAAY,GAEP,CACL36G,MACA26G,YAEJ,CACA,OAAO,IACT,EA3VAhpH,EAAQgmI,uBA8XR,SAAgC76G,GAC9B,MAAMwtB,EAAM,GACZ,QAAS3uC,EAAI,EAAGovC,EAAKjuB,EAAInkB,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC5C,MAAMy6H,EAAOt5G,EAAIhB,WAAWngB,GAC5B2uC,EAAI51C,MAAM0hI,GAAQ,EAAI,KAAM54H,SAAS,IAAIssC,SAAS,EAAG,MAAc,IAAPssF,GAAa54H,SAAS,IAAIssC,SAAS,EAAG,KACpG,CACA,OAAOQ,EAAI/qC,KAAK,GAClB,EApYA5N,EAAQimI,oBAqYR,SAA6B96G,EAAK+6G,GAAY,GAC5C,MAAMvtF,EAAM,GACRutF,GACFvtF,EAAI51C,KAAK,MAEX,QAASiH,EAAI,EAAGovC,EAAKjuB,EAAInkB,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC5C,MAAMy6H,EAAOt5G,EAAIhB,WAAWngB,GAC5B2uC,EAAI51C,KAAK4J,OAAOif,aAAa64G,GAAQ,EAAI,KAAO93H,OAAOif,aAAoB,IAAP64G,GACtE,CACA,OAAO9rF,EAAI/qC,KAAK,GAClB,EA9YA5N,EAAQmmI,gBA0FR,SAAyB78H,EAAQ88H,GAAY,IAC3C,EAAI34E,EAAMtW,QAAQ8C,OAAOC,UAAU5wC,IAAWA,EAAS,EAAG,4CAC1D,MAAM+8H,EAAW,GACjB,IAAI7oC,EACJ,KAAOl0F,GAAU,KACfA,GAAU,IACV+8H,EAAStjI,KAAK,KAEhBy6F,EAAMl0F,EAAS,IAAM,EACrBA,GAAU,IACV+8H,EAAStjI,KAAKujI,EAAiB9oC,IAC/BA,EAAMl0F,EAAS,GAAK,EACpBA,GAAU,GACV+8H,EAAStjI,KAAKujI,EAAiB,GAAK9oC,IACpC6oC,EAAStjI,KAAKujI,EAAiB,GAAKh9H,IACpC,MAAMi9H,EAAWF,EAASz4H,KAAK,IAC/B,OAAOw4H,EAAYG,EAASz8H,cAAgBy8H,CAC9C,EA1GAvmI,EAAQwmI,gBAsTR,SAAyBpgD,GACvB,MAEMqgD,EAAyB,IAAI1rE,IAAI,CAAC,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAAQ,SAAU,OAAQ,SAAU,aACrI,WACJ+qB,EAAU,WACVS,EAAU,YACVC,GACEJ,EACJ,IAAKsgD,EAAiB5gD,GAAY,GAChC,OAAO,EAET,MAAMQ,EAASC,EAAaA,EAAW16E,WAAa,GACpDu6E,EAAYG,WAAakgD,EAAuB1nE,IAAIunB,GAAUA,EAX9B,MAYhC,MAAMlX,EAAQrG,WAAWyd,GAEzB,OADAJ,EAAYI,YAAchzB,MAAM4b,IAAUA,GAAS,IAAMA,EAAQ,GAdhC,KAcgEoX,EAAY36E,YACtG,CACT,EAtUA7L,EAAQ0mI,iBAAmBA,EAC3B,IAAIj5E,EAAQf,EAAoB,GAC5BswE,EAActwE,EAAoB,GAClCi6E,EAAej6E,EAAoB,GAEvC1sD,EAAQ0jI,mBADmB,cAa3B,MAAMC,UAA6Bl2E,EAAMpX,cACvC,WAAAv2B,CAAY+M,EAAO3d,GACjB05C,MAAM,iBAAiB/7B,MAAU3d,KAAQ,wBACzC/N,KAAK0rB,MAAQA,EACb1rB,KAAK+N,IAAMA,CACb,EAEFlP,EAAQ2jI,qBAAuBA,EAC/B,MAAMF,UAA2Bh2E,EAAMpX,cACrC,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,qBACb,EAEFvb,EAAQyjI,mBAAqBA,EAC7B,MAAMD,UAA2B/1E,EAAMpX,cACrC,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,qBACb,EAEFvb,EAAQwjI,mBAAqBA,EAC7B,MAAMH,UAA2B51E,EAAMpX,cACrC,WAAAv2B,CAAYvE,GACVqtC,MAAMrtC,EAAK,qBACb,EAwBF,SAAS0oH,GAAuB,KAC9BH,EAAI,IACJ71H,EAAG,SACH24H,GAAW,EAAK,cAChB1C,GAAgB,IAEhB,IAAIxnE,EACJ,MAAMmqE,EAAU,IAAI7J,EAAYuH,OAChC,KAAOT,aAAgB9G,EAAY2E,QAAUmC,EAAKxgE,QAASujE,EAAQ9nE,IAAI+kE,EAAKxgE,SAAS,CAC/EwgE,EAAKxgE,OACPujE,EAAQC,IAAIhD,EAAKxgE,OAEnB,MAAMhiE,EAAQslI,EAAW9C,EAAK8C,SAAS34H,GAAO61H,EAAKliI,IAAIqM,GACvD,QAAc,IAAV3M,EAAqB,CACvB,GAAI4iI,EACF,OAAO5iI,GAERo7D,IAAW,IAAI35D,KAAKzB,EACvB,CACAwiI,EAAOA,EAAKliI,IAAI,SAClB,CACA,OAAO86D,CACT,CA5CA18D,EAAQqjI,mBAAqBA,EA6C7B,MAAMiD,EAAmB,CAAC,GAAI,IAAK,KAAM,MAAO,KAAM,IAAK,KAAM,MAAO,OAAQ,KAAM,GAAI,IAAK,KAAM,MAAO,KAAM,IAAK,KAAM,MAAO,OAAQ,KAAM,GAAI,IAAK,KAAM,MAAO,KAAM,IAAK,KAAM,MAAO,OAAQ,MAoFxM,SAAShC,EAAWz+D,EAAOy6D,EAAM+D,EAAM0C,GACrC,IAAKlhE,EACH,OAEF,IAAIS,EAAS,KACb,GAAIT,aAAiBm3D,EAAY2C,IAAK,CACpC,GAAIoH,EAAQhoE,IAAI8G,GACd,OAEFS,EAAST,EACTkhE,EAAQD,IAAIxgE,GACZT,EAAQy6D,EAAK3nH,MAAMktD,EACrB,CACA,GAAI/5D,MAAMC,QAAQ85D,GAChB,UAAWtuD,KAAWsuD,EACpBy+D,EAAW/sH,EAAS+oH,EAAM+D,EAAM0C,QAE7B,GAAIlhE,aAAiBm3D,EAAY2E,KAAM,CAC5C,MAAQ3E,EAAYgK,QAAQnhE,EAAMjkE,IAAI,KAAM,cAAe,CACzD,MAAMozD,EAAK6Q,EAAMjkE,IAAI,MACrB,IAAIk5C,EACAka,aAAc2xE,EAAaM,WAC7BnsF,EAAOka,EAAGkyE,YACa,iBAAPlyE,IAChBla,EAAOka,GAETla,KAAA,EAAa2S,EAAMnT,mBAAmBQ,GAAMpB,WAAW,KAAQ,IAC3DoB,GACFupF,EAAKthI,KAAK+3C,EAEd,CACAwpF,EAAWz+D,EAAMqiC,OAAO,QAASo4B,EAAM+D,EAAM0C,EAC/C,CACIzgE,GACFygE,EAAQ9+G,OAAOq+C,EAEnB,CAwCA,MAAMs+D,EAAc,CAClB,GAAM,OACN,GAAM,OACN,GAAM,QACN,GAAM,SACN,GAAM,UAmCR,SAAS8B,EAAiB5gD,EAAYqhD,GAAW,GAC/C,MAAM5iI,EAAI,iBAAiBpB,KAAK2iF,GAChC,GAAIvhF,GAAKA,EAAE,KAAOA,EAAE,IAElB,GADW,IAAIkJ,OAAO,UAAUlJ,EAAE,MAC3BmH,KAAKo6E,EAAW13E,MAAM,GAAI,IAI/B,OAHI+4H,IACF,EAAI15E,EAAMhhD,MAAM,iCAAiClI,EAAE,OAAOuhF,OAErD,OAGT,UAAWshD,KAASthD,EAAWzjF,MAAM,UACnC,GAAI,kBAAkBqJ,KAAK07H,KAAW,aAAa17H,KAAK07H,GAItD,OAHID,IACF,EAAI15E,EAAMhhD,MAAM,+CAA+Cq5E,OAE1D,EAIb,OAAO,CACT,CAoGA,EAIO,CAACjxC,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQqnI,YAAcrnI,EAAQukI,OAASvkI,EAAQ2/H,IAAM3/H,EAAQsnI,KAAOtnI,EAAQunI,IAAMvnI,EAAQ2hI,KAAO3hI,EAAQwnI,IAAMxnI,EAAQynI,kBAAe,EACtIznI,EAAQ0nI,qBAaR,WACEC,EAAWlnI,OAAO4D,OAAO,MACzBujI,EAAYnnI,OAAO4D,OAAO,MAC1BwjI,EAAWpnI,OAAO4D,OAAO,KAC3B,EAhBArE,EAAQ8nI,MAgQR,SAAejjI,EAAGyrE,GAChB,OAAOzrE,aAAa2iI,SAAgB,IAARl3D,GAAqBzrE,EAAEyrE,MAAQA,EAC7D,EAjQAtwE,EAAQ+nI,OAkQR,SAAgBljI,EAAGqJ,GACjB,OAAOrJ,aAAa88H,SAAkB,IAATzzH,GAAsB84H,EAAOniI,EAAEjD,IAAI,QAASsM,GAC3E,EAnQAlO,EAAQgnI,OAASA,EACjBhnI,EAAQgoI,YAmQR,SAAqBC,EAAIC,GACvB,OAAOD,EAAGv7G,MAAQw7G,EAAGx7G,KAAOu7G,EAAG9kE,MAAQ+kE,EAAG/kE,GAC5C,EApQA,IAAI1V,EAAQf,EAAoB,GAChC,MAAM+6E,EAAe9gI,OAAO,gBAC5B3G,EAAQynI,aAAeA,EACvB,MAAMF,EAAM5gI,OAAO,OACnB3G,EAAQunI,IAAMA,EACd,IAAII,EAAWlnI,OAAO4D,OAAO,MACzBujI,EAAYnnI,OAAO4D,OAAO,MAC1BwjI,EAAWpnI,OAAO4D,OAAO,MAM7B,MAAMijI,EACJ,WAAAxnH,CAAYxV,GACVnJ,KAAKmJ,KAAOA,CACd,CACA,UAAO1I,CAAI0I,GACT,OAAOs9H,EAAUt9H,KAAU,IAAIg9H,EAAKh9H,EACtC,EAEFtK,EAAQsnI,KAAOA,EACf,MAAME,EACJ,WAAA1nH,CAAYwwD,GACVnvE,KAAKmvE,IAAMA,CACb,CACA,UAAO1uE,CAAI0uE,GACT,OAAOq3D,EAASr3D,KAAS,IAAIk3D,EAAIl3D,EACnC,EAEFtwE,EAAQwnI,IAAMA,EACd,MAAMh/E,EAAkB,WACtB,OAAOA,CACT,EACA,MAAMm5E,EACJ,WAAA7hH,CAAYwgH,EAAO,MACjBn/H,KAAKgnI,KAAO1nI,OAAO4D,OAAO,MAC1BlD,KAAKm/H,KAAOA,EACZn/H,KAAKmiE,MAAQ,KACbniE,KAAKinI,oBAAqB,EAC1BjnI,KAAKknI,oBAAsB7/E,CAC7B,CACA,UAAA8/E,CAAWC,GACTpnI,KAAKm/H,KAAOiI,CACd,CACA,QAAIr6G,GACF,OAAOztB,OAAOc,KAAKJ,KAAKgnI,MAAMnhI,MAChC,CACA,GAAApF,CAAI4mI,EAAMC,EAAMC,GACd,IAAIpnI,EAAQH,KAAKgnI,KAAKK,GAOtB,YANc,IAAVlnI,QAAgC,IAATmnI,IACzBnnI,EAAQH,KAAKgnI,KAAKM,QACJ,IAAVnnI,QAAgC,IAATonI,IACzBpnI,EAAQH,KAAKgnI,KAAKO,KAGlBpnI,aAAiBq+H,GAAOx+H,KAAKm/H,KACxBn/H,KAAKm/H,KAAK3nH,MAAMrX,EAAOH,KAAKinI,oBAE9B9mI,CACT,CACA,cAAMqnI,CAASH,EAAMC,EAAMC,GACzB,IAAIpnI,EAAQH,KAAKgnI,KAAKK,GAOtB,YANc,IAAVlnI,QAAgC,IAATmnI,IACzBnnI,EAAQH,KAAKgnI,KAAKM,QACJ,IAAVnnI,QAAgC,IAATonI,IACzBpnI,EAAQH,KAAKgnI,KAAKO,KAGlBpnI,aAAiBq+H,GAAOx+H,KAAKm/H,KACxBn/H,KAAKm/H,KAAKsI,WAAWtnI,EAAOH,KAAKinI,oBAEnC9mI,CACT,CACA,QAAAslI,CAAS4B,EAAMC,EAAMC,GACnB,IAAIpnI,EAAQH,KAAKgnI,KAAKK,GAUtB,QATc,IAAVlnI,QAAgC,IAATmnI,IACzBnnI,EAAQH,KAAKgnI,KAAKM,QACJ,IAAVnnI,QAAgC,IAATonI,IACzBpnI,EAAQH,KAAKgnI,KAAKO,KAGlBpnI,aAAiBq+H,GAAOx+H,KAAKm/H,OAC/Bh/H,EAAQH,KAAKm/H,KAAK3nH,MAAMrX,EAAOH,KAAKinI,qBAElCt8H,MAAMC,QAAQzK,GAAQ,CACxBA,EAAQA,EAAM8M,QACd,QAASpE,EAAI,EAAGovC,EAAK93C,EAAM0F,OAAQgD,EAAIovC,EAAIpvC,IACrC1I,EAAM0I,aAAc21H,GAAOx+H,KAAKm/H,OAClCh/H,EAAM0I,GAAK7I,KAAKm/H,KAAK3nH,MAAMrX,EAAM0I,GAAI7I,KAAKinI,oBAGhD,CACA,OAAO9mI,CACT,CACA,MAAA4mG,CAAOj6F,GACL,OAAO9M,KAAKgnI,KAAKl6H,EACnB,CACA,OAAAm2H,GACE,OAAO3jI,OAAOc,KAAKJ,KAAKgnI,KAC1B,CACA,YAAAU,GACE,OAAOpoI,OAAOi8D,OAAOv7D,KAAKgnI,KAC5B,CACA,GAAAl8G,CAAIhe,EAAK3M,GACPH,KAAKgnI,KAAKl6H,GAAO3M,CACnB,CACA,GAAAy9D,CAAI9wD,GACF,YAA0B,IAAnB9M,KAAKgnI,KAAKl6H,EACnB,CACA,OAAAzM,CAAQyO,GACN,UAAWhC,KAAO9M,KAAKgnI,KACrBl4H,EAAShC,EAAK9M,KAAKS,IAAIqM,GAE3B,CACA,gBAAW66H,GACT,MAAMC,EAAY,IAAIpH,EAAK,MAI3B,OAHAoH,EAAU98G,IAAM,CAAChe,EAAK3M,MACpB,EAAImsD,EAAMpW,aAAa,iDAAiD,GAE1E,EAAWoW,EAAMtT,QAAQh5C,KAAM,QAAS4nI,EAC1C,CACA,YAAOvgI,EAAM,KACX83H,EAAI,UACJ0I,EAAS,cACTC,GAAgB,IAEhB,MAAMC,EAAa,IAAIvH,EAAKrB,GAC1B14G,EAAa,IAAI6xB,IACnB,UAAWqqF,KAAQkF,EACjB,GAAMlF,aAAgBnC,EAGtB,UAAY1zH,EAAK3M,KAAUb,OAAO4e,QAAQykH,EAAKqE,MAAO,CACpD,IAAIxkG,EAAW/b,EAAWhmB,IAAIqM,GAC9B,QAAiB,IAAb01B,EACFA,EAAW,GACX/b,EAAWqE,IAAIhe,EAAK01B,QACf,KAAKslG,GAAmB3nI,aAAiBqgI,GAC9C,SAEFh+F,EAAS5gC,KAAKzB,EAChB,CAEF,UAAYgJ,EAAMoyD,KAAW90C,EAAY,CACvC,GAAsB,IAAlB80C,EAAO11D,UAAkB01D,EAAO,aAAcilE,GAAO,CACvDuH,EAAWf,KAAK79H,GAAQoyD,EAAO,GAC/B,QACF,CACA,MAAMysE,EAAU,IAAIxH,EAAKrB,GACzB,UAAWwD,KAAQpnE,EACjB,UAAYzuD,EAAK3M,KAAUb,OAAO4e,QAAQykH,EAAKqE,WACnB,IAAtBgB,EAAQhB,KAAKl6H,KACfk7H,EAAQhB,KAAKl6H,GAAO3M,GAItB6nI,EAAQj7G,KAAO,IACjBg7G,EAAWf,KAAK79H,GAAQ6+H,EAE5B,CAEA,OADAvhH,EAAW7X,QACJm5H,EAAWh7G,KAAO,EAAIg7G,EAAavH,EAAKmH,KACjD,CACA,KAAA5hI,GACE,MAAM48H,EAAO,IAAInC,EAAKxgI,KAAKm/H,MAC3B,UAAWryH,KAAO9M,KAAKijI,UACrBN,EAAK73G,IAAIhe,EAAK9M,KAAK+mG,OAAOj6F,IAE5B,OAAO61H,CACT,EAEF9jI,EAAQ2hI,KAAOA,EACf,MAAMhC,EACJ,WAAA7/G,CAAY4M,EAAKy2C,GACfhiE,KAAKurB,IAAMA,EACXvrB,KAAKgiE,IAAMA,CACb,CACA,QAAAt3D,GACE,OAAiB,IAAb1K,KAAKgiE,IACA,GAAGhiE,KAAKurB,OAEV,GAAGvrB,KAAKurB,OAAOvrB,KAAKgiE,KAC7B,CACA,iBAAOimE,CAAWj+G,GAChB,MAAM2M,EAAM+vG,EAAS18G,GACrB,GAAI2M,EACF,OAAOA,EAET,MAAMvzB,EAAI,gBAAgBpB,KAAKgoB,GAC/B,OAAK5mB,GAAc,MAATA,EAAE,GAGLsjI,EAAS18G,GAAO,IAAIw0G,EAAIh1G,SAASpmB,EAAE,IAAMA,EAAE,GAASomB,SAASpmB,EAAE,IAAf,GAF9C,IAGX,CACA,UAAO3C,CAAI8qB,EAAKy2C,GACd,MAAMl1D,EAAc,IAARk1D,EAAY,GAAGz2C,KAAS,GAAGA,KAAOy2C,IAC9C,OAAO0kE,EAAS55H,KAAS,IAAI0xH,EAAIjzG,EAAKy2C,EACxC,EAEFnjE,EAAQ2/H,IAAMA,EACd,MAAM4E,EACJ,WAAAzkH,CAAYwmD,EAAS,MACnBnlE,KAAKkoI,KAAO,IAAItuE,IAAIuL,GAAQ+iE,KAC9B,CACA,GAAAtqE,CAAIjnC,GACF,OAAO32B,KAAKkoI,KAAKtqE,IAAIjnC,EAAIjsB,WAC3B,CACA,GAAAi7H,CAAIhvG,GACF32B,KAAKkoI,KAAKtgH,IAAI+O,EAAIjsB,WACpB,CACA,MAAAoc,CAAO6P,GACL32B,KAAKkoI,KAAK71G,OAAOsE,EAAIjsB,WACvB,CACA,CAAClF,OAAOC,YACN,OAAOzF,KAAKkoI,KAAK3sE,QACnB,CACA,KAAA3sD,GACE5O,KAAKkoI,KAAKt5H,OACZ,EAEF/P,EAAQukI,OAASA,EACjB,MAAM8C,EACJ,WAAAvnH,GACE3e,KAAKgnI,KAAO,IAAI1uF,GAClB,CACA,QAAIvrB,GACF,OAAO/sB,KAAKgnI,KAAKj6G,IACnB,CACA,GAAAtsB,CAAIk2B,GACF,OAAO32B,KAAKgnI,KAAKvmI,IAAIk2B,EAAIjsB,WAC3B,CACA,GAAAkzD,CAAIjnC,GACF,OAAO32B,KAAKgnI,KAAKppE,IAAIjnC,EAAIjsB,WAC3B,CACA,GAAAi7H,CAAIhvG,EAAK/uB,GACP5H,KAAKgnI,KAAKl8G,IAAI6L,EAAIjsB,WAAY9C,EAChC,CACA,QAAAugI,CAASxxG,EAAKyxG,GACZpoI,KAAKgnI,KAAKl8G,IAAI6L,EAAIjsB,WAAY1K,KAAKS,IAAI2nI,GACzC,CACA,CAAC5iI,OAAOC,YACN,OAAOzF,KAAKgnI,KAAKzrE,QACnB,CACA,KAAA3sD,GACE5O,KAAKgnI,KAAKp4H,OACZ,EAGF,SAASi3H,EAAOniI,EAAGyF,GACjB,OAAOzF,aAAayiI,SAAkB,IAATh9H,GAAsBzF,EAAEyF,OAASA,EAChE,CAHAtK,EAAQqnI,YAAcA,CAYtB,EAIO,CAACxyF,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQinI,gBAAa,EACrB,IAAIx5E,EAAQf,EAAoB,GAChC,MAAMu6E,EACJ,WAAAnnH,GACM3e,KAAK2e,cAAgBmnH,IACvB,EAAIx5E,EAAMpW,aAAa,gCAE3B,CACA,UAAIrwC,IACF,EAAIymD,EAAMpW,aAAa,oCACzB,CACA,WAAImzB,IACF,EAAI/c,EAAMpW,aAAa,qCACzB,CACA,gBAAImyF,GACF,SAAW/7E,EAAMtT,QAAQh5C,KAAM,gBAAgB,EACjD,CACA,OAAAsoI,IACE,EAAIh8E,EAAMpW,aAAa,mCACzB,CACA,QAAAqyF,CAAS1iI,IACP,EAAIymD,EAAMpW,aAAa,oCACzB,CACA,QAAAsyF,GACE,MAAMC,EAAazoI,KAAKsoI,UAIxB,OAHoB,IAAhBG,GACFzoI,KAAKq8F,MAEAosC,CACT,CACA,SAAAC,CAAU7iI,GACR,MAAMolB,EAAQjrB,KAAKuoI,SAAS1iI,GAE5B,OADA7F,KAAKq8F,KAAOpxE,EAAMplB,OACXolB,CACT,CACA,SAAA09G,GACE,MAAMv7C,EAAKptF,KAAKsoI,UACVl3B,EAAKpxG,KAAKsoI,UAChB,OAAY,IAARl7C,IAAqB,IAARgkB,GACP,GAEFhkB,GAAM,GAAKgkB,CACrB,CACA,QAAAw3B,GAKE,OAJW5oI,KAAKsoI,WAIF,KAHHtoI,KAAKsoI,WAGW,KAFhBtoI,KAAKsoI,WAEwB,GAD7BtoI,KAAKsoI,SAElB,CACA,YAAAO,CAAan9G,EAAO3d,IAClB,EAAIu+C,EAAMpW,aAAa,wCACzB,CACA,SAAA6vF,CAAUlgI,GACR,SAAWymD,EAAMnW,eAAen2C,KAAKuoI,SAAS1iI,GAChD,CACA,IAAAijI,CAAKnpI,GACHK,KAAKq8F,KAAO18F,GAAK,CACnB,CACA,KAAAwrB,IACE,EAAImhC,EAAMpW,aAAa,iCACzB,CACA,SAAA6yF,IACE,EAAIz8E,EAAMpW,aAAa,qCACzB,CACA,aAAA8yF,CAAc1mH,EAAOzc,EAAQ88H,EAAO,OAClC,EAAIr2E,EAAMpW,aAAa,yCACzB,CACA,cAAA+yF,GACE,OAAO,IACT,EAEFpqI,EAAQinI,WAAaA,CAAU,EAIxB,CAACpyF,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQm/H,kBAAoBn/H,EAAQ8+H,qBAAkB,EACtD,IAAIrxE,EAAQf,EAAoB,GAC5B29E,EAAkB39E,EAAoB,GACtCqwE,EAAcrwE,EAAoB,GAClCqzB,EAAYrzB,EAAoB,GAChCi+C,EAAUj+C,EAAoB,GAWlC,MAAM49E,EACJ,WAAAxqH,CAAY1T,GACNjL,KAAK2e,cAAgBwqH,IACvB,EAAI78E,EAAMpW,aAAa,qCAEzBl2C,KAAKopI,YAfT,SAAyBl8H,GACvB,GAAIA,EAAK,CACP,MAAMypC,GAAc,EAAI2V,EAAMlW,wBAAwBlpC,GACtD,GAAIypC,EACF,OAAOA,EAAYp6B,MAErB,EAAI+vC,EAAMhhD,MAAM,iCAAiC4B,MACnD,CACA,OAAO,IACT,CAMuBm8H,CAAgBp+H,EAAKyjD,YACxC1uD,KAAKspI,OAASr+H,EAAKgjD,MACnBjuD,KAAKupI,UAAYt+H,EAAKqjD,SACtBtuD,KAAKuvD,UAAYtkD,EAAKskD,UACtBtkD,EAAK8lD,iBAAiBjJ,6BAA+BwE,EAAMxX,YAAYgT,2BACvE9nD,KAAK+wD,iBAAmB9lD,EAAK8lD,gBAC/B,CACA,SAAI9C,GACF,OAAOjuD,KAAKspI,MACd,CACA,YAAIh7E,GACF,OAAOtuD,KAAKupI,SACd,CACA,cAAI76E,GACF,OAAO1uD,KAAKopI,WACd,CACA,WAAII,GACF,OAAOxpI,KAAKm1E,YAAYq0D,OAC1B,CACA,SAAApM,CAAU1/G,EAAMzS,GACd,OAAOjL,KAAKs+H,OAAOt+H,KAAKm1E,YAAaz3D,EAAMzS,EAC7C,CACA,UAAAw+H,CAAW/rH,EAAMzS,GACf,OAAOjL,KAAKs+H,OAAOt+H,KAAKm1E,YAAYgqD,KAAMzhH,EAAMzS,EAClD,CACA,aAAAwzH,CAAc/gH,EAAMzS,GAClB,OAAOjL,KAAKs+H,OAAOt+H,KAAKm1E,YAAYq0D,QAAS9rH,EAAMzS,EACrD,CACA,OAAAopD,CAAQ6B,GACN,OAAOl2D,KAAKm1E,YAAY9gB,QAAQ6B,EAClC,CACA,YAAAyrE,CAAa/rH,EAAI7L,GACf,OAAO/J,KAAKm1E,YAAYwsD,aAAa/rH,EAAI7L,EAC3C,CACA,YAAAszH,CAAatzH,EAASikD,GACpB,OAAOhuD,KAAKm1E,YAAYkoD,aAAatzH,EAASikD,EAChD,CACA,aAAAsvE,GACE,OAAOt9H,KAAKm1E,YAAYmoD,eAC1B,CACA,gBAAA8C,CAAiBrsE,GACf,OAAO/zD,KAAKm1E,YAAYirD,iBAAiBrsE,EAC3C,CACA,OAAA2B,CAAQg0E,GAAoB,GAC1B,OAAO1pI,KAAKm1E,YAAYzf,QAAQg0E,EAClC,CACA,YAAMpL,CAAO12H,EAAK8V,EAAMzS,IACtB,EAAIqhD,EAAMpW,aAAa,kCACzB,CACA,YAAAo3D,CAAa5hF,EAAO3d,IAClB,EAAIu+C,EAAMpW,aAAa,wCACzB,CACA,mBAAAwoF,CAAoBiL,GAAU,IAC5B,EAAIr9E,EAAMpW,aAAa,+CACzB,CACA,mBAAA+nF,CAAoBz2E,IAClB,EAAI8E,EAAMpW,aAAa,+CACzB,CACA,cAAAirB,CAAe7S,GACbtuD,KAAKupI,UAAYj7E,CACnB,CACA,SAAAqO,CAAUhiD,IACR,EAAI2xC,EAAMpW,aAAa,qCACzB,EAwBFr3C,EAAQ8+H,gBAtBR,cAA8BwL,EAC5B,WAAAxqH,CAAY1T,GACVw8C,MAAMx8C,GACN,MAAMw6F,EAAS,IAAI+D,EAAQogC,OAAO3+H,EAAKsK,QACvCvV,KAAKm1E,YAAc,IAAIyJ,EAAUirD,YAAY7pI,KAAMylG,GACnDzlG,KAAK8pI,qBAAuBzlI,QAAQD,QAAQqhG,EAC9C,CACA,YAAM64B,CAAO12H,EAAK8V,EAAMzS,GACtB,MAAM9K,EAAQyH,EAAI8V,GAClB,MAAqB,mBAAVvd,EACFA,EAAMJ,MAAM6H,EAAKqD,GAEnB9K,CACT,CACA,YAAAmtG,CAAa5hF,EAAO3d,GAClB,OAAO1J,QAAQD,SACjB,CACA,mBAAAs6H,CAAoBiL,GAAU,GAC5B,OAAO3pI,KAAK8pI,oBACd,CACA,SAAAntE,CAAUhiD,GAAS,GA4CrB9b,EAAQm/H,kBAzCR,cAAgCmL,EAC9B,WAAAxqH,CAAY1T,GACVw8C,MAAMx8C,GACNjL,KAAK+pI,cAAgB,IAAIb,EAAgBc,qBAAqB/+H,EAAKsK,OAAQ,CACzE00H,WAAYh/H,EAAKlB,QACjBlE,OAAQoF,EAAKpF,OACb6pD,iBAAkBzkD,EAAKykD,iBACvBlB,eAAgBvjD,EAAKujD,iBAEvBxuD,KAAKm1E,YAAc,IAAIyJ,EAAUirD,YAAY7pI,KAAMA,KAAK+pI,cAAcG,YACxE,CACA,YAAM5L,CAAO12H,EAAK8V,EAAMzS,GACtB,IACE,MAAM9K,EAAQyH,EAAI8V,GAClB,MAAqB,mBAAVvd,EACFA,EAAMJ,MAAM6H,EAAKqD,GAEnB9K,CACT,CAAE,MAAOs5C,GACP,KAAMA,aAAcmiF,EAAY4G,sBAC9B,MAAM/oF,EAGR,aADMz5C,KAAKstG,aAAa7zD,EAAG/tB,MAAO+tB,EAAG1rC,KAC9B/N,KAAKs+H,OAAO12H,EAAK8V,EAAMzS,EAChC,CACF,CACA,YAAAqiG,CAAa5hF,EAAO3d,GAClB,OAAO/N,KAAK+pI,cAAcz8B,aAAa5hF,EAAO3d,EAChD,CACA,mBAAA2wH,CAAoBiL,GAAU,GAC5B,OAAO3pI,KAAK+pI,cAAcI,iBAAiBR,EAC7C,CACA,mBAAA1L,CAAoBz2E,GAClBxnD,KAAK+pI,cAAcK,cAAc,CAC/B5iF,SAEJ,CACA,SAAAmV,CAAUhiD,GACR3a,KAAK+pI,cAAcv2E,MAAM74C,EAC3B,EAE2C,EAItC,CAAC+4B,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQmrI,qBAAuBnrI,EAAQwrI,mBAAgB,EACvD,IAAIzO,EAAcrwE,EAAoB,GAClCe,EAAQf,EAAoB,GAC5Bi+C,EAAUj+C,EAAoB,GAClC,MAAM8+E,UAAsB7gC,EAAQogC,OAClC,WAAAjrH,CAAY9Y,EAAQ+mB,EAAW8hF,GAC7BjnD,MAAM,IAAI99B,WAAW9jB,GAAS,EAAGA,EAAQ,MACzC7F,KAAK4sB,UAAYA,EACjB5sB,KAAKsqI,cAAgB,IAAI1wE,IACzB55D,KAAKuqI,UAAY9mH,KAAKqJ,KAAKjnB,EAAS+mB,GACpC5sB,KAAK0uG,QAAUA,EACf1uG,KAAKwqI,sBAAwB,EAC7BxqI,KAAKyqI,+BAAiC,CACxC,CACA,gBAAAC,GACE,MAAMC,EAAS,GACf,QAASnjF,EAAQ,EAAG7nD,EAAIK,KAAKuqI,UAAW/iF,EAAQ7nD,IAAK6nD,EAC9CxnD,KAAKsqI,cAAc1sE,IAAIpW,IAC1BmjF,EAAO/oI,KAAK4lD,GAGhB,OAAOmjF,CACT,CACA,mBAAIC,GACF,OAAO5qI,KAAKsqI,cAAcv9G,IAC5B,CACA,gBAAIs7G,GACF,OAAOroI,KAAK4qI,kBAAoB5qI,KAAKuqI,SACvC,CACA,aAAAH,CAAc1+G,EAAO87B,GACnB,MAAM56B,EAAY5sB,KAAK4sB,UACvB,GAAIlB,EAAQkB,GAAc,EACxB,MAAM,IAAInhB,MAAM,qBAAqBigB,KAEvC,MAAM3d,EAAM2d,EAAQ87B,EAAM38B,WAC1B,GAAI9c,EAAM6e,GAAc,GAAK7e,IAAQ/N,KAAKirB,MAAMplB,OAC9C,MAAM,IAAI4F,MAAM,mBAAmBsC,KAErC/N,KAAKirB,MAAMH,IAAI,IAAInB,WAAW69B,GAAQ97B,GACtC,MAAMm/G,EAAapnH,KAAKi0B,MAAMhsB,EAAQkB,GAChCk+G,EAAWrnH,KAAKi0B,OAAO3pC,EAAM,GAAK6e,GAAa,EACrD,QAASm+G,EAAWF,EAAYE,EAAWD,IAAYC,EACrD/qI,KAAKsqI,cAAc1iH,IAAImjH,EAE3B,CACA,wBAAAC,CAAyBpmH,GACvB,IAAIyd,EAAWriC,KAAKwqI,sBACpB,MAAMK,EAAapnH,KAAKi0B,MAAMrV,EAAWriC,KAAK4sB,WAC9C5sB,KAAKirB,MAAMH,IAAI,IAAInB,WAAW/E,GAAOyd,GACrCA,GAAYzd,EAAKiG,WACjB7qB,KAAKwqI,sBAAwBnoG,EAC7B,MAAMyoG,EAAWzoG,GAAYriC,KAAK+N,IAAM/N,KAAKuqI,UAAY9mH,KAAKi0B,MAAMrV,EAAWriC,KAAK4sB,WACpF,QAASm+G,EAAWF,EAAYE,EAAWD,IAAYC,EACrD/qI,KAAKsqI,cAAc1iH,IAAImjH,EAE3B,CACA,UAAAE,CAAW5uC,GACT,GAAIA,EAAMr8F,KAAKwqI,sBACb,OAEF,MAAMhjF,EAAQ/jC,KAAKi0B,MAAM2kD,EAAMr8F,KAAK4sB,WACpC,KAAI46B,EAAQxnD,KAAKuqI,YAGb/iF,IAAUxnD,KAAKyqI,8BAAnB,CAGA,IAAKzqI,KAAKsqI,cAAc1sE,IAAIpW,GAC1B,MAAM,IAAIo0E,EAAY4G,qBAAqBnmC,EAAKA,EAAM,GAExDr8F,KAAKyqI,8BAAgCjjF,CAJrC,CAKF,CACA,WAAA0jF,CAAYx/G,EAAO3d,GACjB,GAAI2d,GAAS3d,EACX,OAEF,GAAIA,GAAO/N,KAAKwqI,sBACd,OAEF,MAAMK,EAAapnH,KAAKi0B,MAAMhsB,EAAQ1rB,KAAK4sB,WAC3C,GAAIi+G,EAAa7qI,KAAKuqI,UACpB,OAEF,MAAMO,EAAWrnH,KAAKE,IAAIF,KAAKi0B,OAAO3pC,EAAM,GAAK/N,KAAK4sB,WAAa,EAAG5sB,KAAKuqI,WAC3E,QAAS/iF,EAAQqjF,EAAYrjF,EAAQsjF,IAAYtjF,EAC/C,IAAKxnD,KAAKsqI,cAAc1sE,IAAIpW,GAC1B,MAAM,IAAIo0E,EAAY4G,qBAAqB92G,EAAO3d,EAGxD,CACA,cAAAo9H,CAAeN,GACb,MAAMN,EAAYvqI,KAAKuqI,UACvB,QAAS1hI,EAAI,EAAGA,EAAI0hI,IAAa1hI,EAAG,CAClC,MAAM2+C,GAASqjF,EAAahiI,GAAK0hI,EACjC,IAAKvqI,KAAKsqI,cAAc1sE,IAAIpW,GAC1B,OAAOA,CAEX,CACA,OAAO,IACT,CACA,QAAA4jF,CAAS5jF,GACP,OAAOxnD,KAAKsqI,cAAc1sE,IAAIpW,EAChC,CACA,OAAA8gF,GACE,MAAMjsC,EAAMr8F,KAAKq8F,IACjB,OAAIA,GAAOr8F,KAAK+N,KACN,GAENsuF,GAAOr8F,KAAKwqI,uBACdxqI,KAAKirI,WAAW5uC,GAEXr8F,KAAKirB,MAAMjrB,KAAKq8F,OACzB,CACA,QAAAksC,CAAS1iI,GACP,MAAMolB,EAAQjrB,KAAKirB,MACboxE,EAAMr8F,KAAKq8F,IACXgvC,EAASrrI,KAAK+N,IACpB,IAAKlI,EAIH,OAHIwlI,EAASrrI,KAAKwqI,uBAChBxqI,KAAKkrI,YAAY7uC,EAAKgvC,GAEjBpgH,EAAMvB,SAAS2yE,EAAKgvC,GAE7B,IAAIt9H,EAAMsuF,EAAMx2F,EAQhB,OAPIkI,EAAMs9H,IACRt9H,EAAMs9H,GAEJt9H,EAAM/N,KAAKwqI,uBACbxqI,KAAKkrI,YAAY7uC,EAAKtuF,GAExB/N,KAAKq8F,IAAMtuF,EACJkd,EAAMvB,SAAS2yE,EAAKtuF,EAC7B,CACA,YAAA86H,CAAan9G,EAAO3d,GAUlB,OATI2d,EAAQ,IACVA,EAAQ,GAEN3d,EAAM/N,KAAK+N,MACbA,EAAM/N,KAAK+N,KAETA,EAAM/N,KAAKwqI,uBACbxqI,KAAKkrI,YAAYx/G,EAAO3d,GAEnB/N,KAAKirB,MAAMvB,SAASgC,EAAO3d,EACpC,CACA,aAAAi7H,CAAc1mH,EAAOzc,EAAQ88H,EAAO,MAQlC,SAAS2I,IAA0B,CAP/BzlI,EACEyc,EAAQzc,EAAS7F,KAAKwqI,uBACxBxqI,KAAKkrI,YAAY5oH,EAAOA,EAAQzc,GAEzByc,GAAStiB,KAAKwqI,uBACvBxqI,KAAKirI,WAAW3oH,GAGlBgpH,EAAuB/rI,UAAYD,OAAO4D,OAAOlD,MACjDsrI,EAAuB/rI,UAAUmrI,iBAAmB,WAClD,MAAM99G,EAAY5sB,KAAK4sB,UACjBi+G,EAAapnH,KAAKi0B,MAAM13C,KAAKsiB,MAAQsK,GACrCk+G,EAAWrnH,KAAKi0B,OAAO13C,KAAK+N,IAAM,GAAK6e,GAAa,EACpD2+G,EAAgB,GACtB,QAAS/jF,EAAQqjF,EAAYrjF,EAAQsjF,IAAYtjF,EAC1CxnD,KAAKsqI,cAAc1sE,IAAIpW,IAC1B+jF,EAAc3pI,KAAK4lD,GAGvB,OAAO+jF,CACT,EACAjsI,OAAOY,eAAeorI,EAAuB/rI,UAAW,eAAgB,CACtE,GAAAkB,GACE,OAAIT,KAAK4qI,kBAAoB5qI,KAAKuqI,WAGQ,IAAnCvqI,KAAK0qI,mBAAmB7kI,MACjC,EACArC,cAAc,IAEhB,MAAMgoI,EAAY,IAAIF,EAItB,OAHAE,EAAUnvC,IAAMmvC,EAAUlpH,MAAQA,EAClCkpH,EAAUz9H,IAAMuU,EAAQzc,GAAU7F,KAAK+N,IACvCy9H,EAAU7I,KAAOA,EACV6I,CACT,CACA,cAAAvC,GACE,MAAO,CAACjpI,KACV,EAEFnB,EAAQwrI,cAAgBA,EAiPxBxrI,EAAQmrI,qBAhPR,MACE,WAAArrH,CAAY8sH,EAAkBxgI,GAC5BjL,KAAK6F,OAASoF,EAAKpF,OACnB7F,KAAK4sB,UAAY3hB,EAAKujD,eACtBxuD,KAAKylG,OAAS,IAAI4kC,EAAcrqI,KAAK6F,OAAQ7F,KAAK4sB,UAAW5sB,MAC7DA,KAAKyrI,iBAAmBA,EACxBzrI,KAAK0vD,iBAAmBzkD,EAAKykD,iBAC7B1vD,KAAKiqI,WAAah/H,EAAKg/H,WACvBjqI,KAAK0rI,cAAgB,EACrB1rI,KAAK2rI,uBAAyB,IAAIrzF,IAClCt4C,KAAK4rI,iBAAmB,IAAItzF,IAC5Bt4C,KAAK6rI,mBAAqB,IAAIvzF,IAC9Bt4C,KAAKwqI,sBAAwB,EAC7BxqI,KAAK8rI,SAAU,EACf9rI,KAAK+rI,wBAA0B,IAAIz/E,EAAMtY,iBAC3C,CACA,WAAAg4F,CAAYtgH,EAAO3d,GACjB,MAAM+yD,EAAc9gE,KAAKyrI,iBAAiB1qE,eAAer1C,EAAO3d,GAC3D+yD,EAAYH,uBACfG,EAAYvO,WAAavyD,KAAKuyD,WAAWnwC,KAAKpiB,OAEhD,IAAI2qI,EAAS,GACXt6G,EAAS,EACX,OAAO,IAAIhsB,SAAQ,CAACD,EAASE,KAC3B,MAAM45H,EAAY,EAChB/9H,QACAyE,WAEA,IACE,GAAIA,EAAM,CACR,MAAMqnI,GAAY,EAAIrQ,EAAYwC,qBAAqBuM,GAGvD,OAFAA,EAAS,UACTvmI,EAAQ6nI,EAEV,CACA57G,GAAUlwB,EAAM0qB,WACZi2C,EAAYH,sBACd3gE,KAAKuyD,WAAW,CACdliC,WAGJs6G,EAAO/oI,KAAKzB,GACZ2gE,EAAY3F,OAAOt2D,KAAKq5H,EAAW55H,EACrC,CAAE,MAAOI,GACPJ,EAAOI,EACT,GAEFo8D,EAAY3F,OAAOt2D,KAAKq5H,EAAW55H,EAAO,IACzCO,MAAK+f,IACF5kB,KAAK8rI,SAGT9rI,KAAKoqI,cAAc,CACjB5iF,MAAO5iC,EACP8G,SACA,GAEN,CACA,gBAAAy+G,CAAiBR,GAAU,GACzB,IAAKA,EAAS,CACZ,MAAM4B,EAAgBvrI,KAAKylG,OAAOilC,mBAClC1qI,KAAKksI,eAAeX,EACtB,CACA,OAAOvrI,KAAK+rI,wBAAwB1gF,OACtC,CACA,cAAA6gF,CAAevB,GACb,MAAMwB,EAAYnsI,KAAK0rI,gBACjBU,EAAe,IAAIxyE,IACzB55D,KAAK2rI,uBAAuB7gH,IAAIqhH,EAAWC,GAC3C,UAAW5kF,KAASmjF,EACb3qI,KAAKylG,OAAO2lC,SAAS5jF,IACxB4kF,EAAaxkH,IAAI4/B,GAGrB,GAA0B,IAAtB4kF,EAAar/G,KACf,OAAO1oB,QAAQD,UAEjB,MAAMm1D,EAAa,IAAIjN,EAAMtY,kBAC7Bh0C,KAAK6rI,mBAAmB/gH,IAAIqhH,EAAW5yE,GACvC,MAAM8yE,EAAkB,GACxB,UAAW7kF,KAAS4kF,EAAc,CAChC,IAAIE,EAAatsI,KAAK4rI,iBAAiBnrI,IAAI+mD,GACtC8kF,IACHA,EAAa,GACbtsI,KAAK4rI,iBAAiB9gH,IAAI08B,EAAO8kF,GACjCD,EAAgBzqI,KAAK4lD,IAEvB8kF,EAAW1qI,KAAKuqI,EAClB,CACA,GAAIE,EAAgBxmI,OAAS,EAAG,CAC9B,MAAM0mI,EAAyBvsI,KAAKwsI,YAAYH,GAChD,UAAWI,KAAgBF,EAAwB,CACjD,MAAM7gH,EAAQ+gH,EAAa5B,WAAa7qI,KAAK4sB,UACvC7e,EAAM0V,KAAKE,IAAI8oH,EAAa3B,SAAW9qI,KAAK4sB,UAAW5sB,KAAK6F,QAClE7F,KAAKgsI,YAAYtgH,EAAO3d,GAAKyE,MAAM+mD,EAAWj1D,OAChD,CACF,CACA,OAAOi1D,EAAWlO,QAAQ74C,OAAMmI,IAC9B,IAAI3a,KAAK8rI,QAGT,MAAMnxH,CAAM,GAEhB,CACA,SAAAuvH,GACE,OAAOlqI,KAAKylG,MACd,CACA,YAAA6H,CAAa5hF,EAAO3d,GAClBA,EAAM0V,KAAKE,IAAI5V,EAAK/N,KAAK6F,QACzB,MAAMglI,EAAa7qI,KAAK0sI,cAAchhH,GAChCo/G,EAAW9qI,KAAK2sI,YAAY5+H,GAC5B48H,EAAS,GACf,QAASnjF,EAAQqjF,EAAYrjF,EAAQsjF,IAAYtjF,EAC/CmjF,EAAO/oI,KAAK4lD,GAEd,OAAOxnD,KAAKksI,eAAevB,EAC7B,CACA,aAAAiC,CAAcC,EAAS,IACrB,MAAMR,EAAkB,GACxB,UAAWp7F,KAAS47F,EAAQ,CAC1B,MAAMhC,EAAa7qI,KAAK0sI,cAAcz7F,EAAMvlB,OACtCo/G,EAAW9qI,KAAK2sI,YAAY17F,EAAMljC,KACxC,QAASy5C,EAAQqjF,EAAYrjF,EAAQsjF,IAAYtjF,EAC1C6kF,EAAgB14H,SAAS6zC,IAC5B6kF,EAAgBzqI,KAAK4lD,EAG3B,CAIA,OAHA6kF,EAAgBj7F,MAAK,SAAUtxC,EAAG0e,GAChC,OAAO1e,EAAI0e,CACb,IACOxe,KAAKksI,eAAeG,EAC7B,CACA,WAAAG,CAAY7B,GACV,MAAMmC,EAAgB,GACtB,IAAIjC,GAAc,EACdkC,GAAa,EACjB,QAASlkI,EAAI,EAAGovC,EAAK0yF,EAAO9kI,OAAQgD,EAAIovC,IAAMpvC,EAAG,CAC/C,MAAM2+C,EAAQmjF,EAAO9hI,GACjBgiI,EAAa,IACfA,EAAarjF,GAEXulF,GAAa,GAAKA,EAAY,IAAMvlF,IACtCslF,EAAclrI,KAAK,CACjBipI,aACAC,SAAUiC,EAAY,IAExBlC,EAAarjF,GAEX3+C,EAAI,IAAM8hI,EAAO9kI,QACnBinI,EAAclrI,KAAK,CACjBipI,aACAC,SAAUtjF,EAAQ,IAGtBulF,EAAYvlF,CACd,CACA,OAAOslF,CACT,CACA,UAAAv6E,CAAWtnD,GACTjL,KAAKiqI,WAAWz0H,KAAK,cAAe,CAClC6a,OAAQrwB,KAAKylG,OAAOmlC,gBAAkB5qI,KAAK4sB,UAAY3hB,EAAKolB,OAC5DC,MAAOtwB,KAAK6F,QAEhB,CACA,aAAAukI,CAAcn/H,GACZ,MAAMu8C,EAAQv8C,EAAKu8C,MACbwlF,OAA+B,IAAf/hI,EAAKygB,MACrBA,EAAQshH,EAAgBhtI,KAAKwqI,sBAAwBv/H,EAAKygB,MAC1D3d,EAAM2d,EAAQ87B,EAAM38B,WACpBggH,EAAapnH,KAAKi0B,MAAMhsB,EAAQ1rB,KAAK4sB,WACrCk+G,EAAW/8H,EAAM/N,KAAK6F,OAAS4d,KAAKi0B,MAAM3pC,EAAM/N,KAAK4sB,WAAanJ,KAAKqJ,KAAK/e,EAAM/N,KAAK4sB,WACzFogH,GACFhtI,KAAKylG,OAAOulC,yBAAyBxjF,GACrCxnD,KAAKwqI,sBAAwBz8H,GAE7B/N,KAAKylG,OAAO2kC,cAAc1+G,EAAO87B,GAE/BxnD,KAAKylG,OAAO4iC,cACdroI,KAAK+rI,wBAAwB3nI,QAAQpE,KAAKylG,QAE5C,MAAMwnC,EAAiB,GACvB,QAASlC,EAAWF,EAAYE,EAAWD,IAAYC,EAAU,CAC/D,MAAMuB,EAAatsI,KAAK4rI,iBAAiBnrI,IAAIsqI,GAC7C,GAAKuB,EAAL,CAGAtsI,KAAK4rI,iBAAiBv5G,OAAO04G,GAC7B,UAAWoB,KAAaG,EAAY,CAClC,MAAMF,EAAepsI,KAAK2rI,uBAAuBlrI,IAAI0rI,GACjDC,EAAaxuE,IAAImtE,IACnBqB,EAAa/5G,OAAO04G,GAElBqB,EAAar/G,KAAO,GAGxBkgH,EAAerrI,KAAKuqI,EACtB,CAXA,CAYF,CACA,IAAKnsI,KAAK0vD,kBAAmD,IAA/B1vD,KAAK4rI,iBAAiB7+G,KAAY,CAC9D,IAAIo+G,EACJ,GAAoC,IAAhCnrI,KAAKylG,OAAOmlC,gBAAuB,CACrC,MAAM3xE,EAAYj5D,KAAKylG,OAAO8kC,UAAY,EACrCvqI,KAAKylG,OAAO2lC,SAASnyE,KACxBkyE,EAAiBlyE,EAErB,MACEkyE,EAAiBnrI,KAAKylG,OAAO0lC,eAAeL,GAE1ChyF,OAAOC,UAAUoyF,IACnBnrI,KAAKksI,eAAe,CAACf,GAEzB,CACA,UAAWgB,KAAac,EAAgB,CACtC,MAAM1zE,EAAav5D,KAAK6rI,mBAAmBprI,IAAI0rI,GAC/CnsI,KAAK6rI,mBAAmBx5G,OAAO85G,GAC/B5yE,EAAWn1D,SACb,CACApE,KAAKiqI,WAAWz0H,KAAK,cAAe,CAClC6a,OAAQrwB,KAAKylG,OAAOmlC,gBAAkB5qI,KAAK4sB,UAC3C0D,MAAOtwB,KAAK6F,QAEhB,CACA,OAAA6T,CAAQrR,GACNrI,KAAK+rI,wBAAwBznI,OAAO+D,EACtC,CACA,aAAAqkI,CAAchhH,GACZ,OAAOjI,KAAKi0B,MAAMhsB,EAAQ1rB,KAAK4sB,UACjC,CACA,WAAA+/G,CAAY5+H,GACV,OAAO0V,KAAKi0B,OAAO3pC,EAAM,GAAK/N,KAAK4sB,WAAa,CAClD,CACA,KAAA4mC,CAAM74C,GACJ3a,KAAK8rI,SAAU,EACf9rI,KAAKyrI,kBAAkBxrE,kBAAkBtlD,GACzC,UAAW4+C,KAAcv5D,KAAK6rI,mBAAmBtwE,SAC/ChC,EAAWj1D,OAAOqW,EAEtB,EAEiD,EAI5C,CAAC+4B,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQquI,aAAeruI,EAAQ+qI,OAAS/qI,EAAQsuI,gBAAa,EAC7D,IAAI3H,EAAej6E,EAAoB,GACnCe,EAAQf,EAAoB,GAChC,MAAMq+E,UAAepE,EAAaM,WAChC,WAAAnnH,CAAYqgE,EAAa18D,EAAOzc,EAAQ88H,GACtCl7E,QACAznD,KAAKirB,MAAQ+zD,aAAuBr1D,WAAaq1D,EAAc,IAAIr1D,WAAWq1D,GAC9Eh/E,KAAKsiB,MAAQA,GAAS,EACtBtiB,KAAKq8F,IAAMr8F,KAAKsiB,MAChBtiB,KAAK+N,IAAMuU,EAAQzc,GAAU7F,KAAKirB,MAAMplB,OACxC7F,KAAK2iI,KAAOA,CACd,CACA,UAAI98H,GACF,OAAO7F,KAAK+N,IAAM/N,KAAKsiB,KACzB,CACA,WAAI+mD,GACF,OAAuB,IAAhBrpE,KAAK6F,MACd,CACA,OAAAyiI,GACE,OAAItoI,KAAKq8F,KAAOr8F,KAAK+N,KACX,EAEH/N,KAAKirB,MAAMjrB,KAAKq8F,MACzB,CACA,QAAAksC,CAAS1iI,GACP,MAAMolB,EAAQjrB,KAAKirB,MACboxE,EAAMr8F,KAAKq8F,IACXgvC,EAASrrI,KAAK+N,IACpB,IAAKlI,EACH,OAAOolB,EAAMvB,SAAS2yE,EAAKgvC,GAE7B,IAAIt9H,EAAMsuF,EAAMx2F,EAKhB,OAJIkI,EAAMs9H,IACRt9H,EAAMs9H,GAERrrI,KAAKq8F,IAAMtuF,EACJkd,EAAMvB,SAAS2yE,EAAKtuF,EAC7B,CACA,YAAA86H,CAAan9G,EAAO3d,GAOlB,OANI2d,EAAQ,IACVA,EAAQ,GAEN3d,EAAM/N,KAAK+N,MACbA,EAAM/N,KAAK+N,KAEN/N,KAAKirB,MAAMvB,SAASgC,EAAO3d,EACpC,CACA,KAAAod,GACEnrB,KAAKq8F,IAAMr8F,KAAKsiB,KAClB,CACA,SAAAymH,GACE/oI,KAAKsiB,MAAQtiB,KAAKq8F,GACpB,CACA,aAAA2sC,CAAc1mH,EAAOzc,EAAQ88H,EAAO,MAClC,OAAO,IAAIiH,EAAO5pI,KAAKirB,MAAMF,OAAQzI,EAAOzc,EAAQ88H,EACtD,EAEF9jI,EAAQ+qI,OAASA,EAMjB/qI,EAAQquI,aALR,cAA2BtD,EACzB,WAAAjrH,CAAYqL,GACVy9B,OAAA,EAAU6E,EAAMpT,eAAelvB,GACjC,GAQFnrB,EAAQsuI,WALR,cAAyBvD,EACvB,WAAAjrH,GACE8oC,MAAM,IAAI99B,WAAW,GACvB,EAE6B,EAIxB,CAAC+pB,EAAyB70C,EAAS0sD,KAn5F1C,YAu5FAjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQuuI,KAAOvuI,EAAQgrI,iBAAc,EACrC,IAAIv9E,EAAQf,EAAoB,GAC5BwwE,EAAcxwE,EAAoB,IAClCqwE,EAAcrwE,EAAoB,GAClCswE,EAActwE,EAAoB,GAClC8hF,EAAa9hF,EAAoB,IACjCi6E,EAAej6E,EAAoB,GACnC+hF,EAAU/hF,EAAoB,IAC9BgiF,EAAWhiF,EAAoB,IAC/BywE,EAAkBzwE,EAAoB,IACtCiiF,EAAkBjiF,EAAoB,KACtCkiF,EAAUliF,EAAoB,IAC9Bi+C,EAAUj+C,EAAoB,GAC9BmiF,EAAiBniF,EAAoB,IACrCoiF,EAAiBpiF,EAAoB,IACrCqiF,EAAariF,EAAoB,IACjCsiF,EAAiBtiF,EAAoB,IACrC4wE,EAAe5wE,EAAoB,IACnC0wE,EAAU1wE,EAAoB,IAC9BuiF,EAAWviF,EAAoB,IAC/BwiF,EAAQxiF,EAAoB,KAChC,MACMyiF,EAAuB,CAAC,EAAG,EAAG,IAAK,KACzC,MAAMZ,EACJ,WAAAzuH,EAAY,WACV+9G,EAAU,KACVyC,EAAI,UACJjpE,EAAS,SACT+3E,EAAQ,IACRt3G,EAAG,gBACHu3G,EAAe,UACfC,EAAS,iBACTC,EAAgB,sBAChBC,EAAqB,iBACrBC,EAAgB,gBAChBC,EAAe,iBACfC,EAAgB,WAChBC,IAgIF,UA9HEzuI,KAAK08H,WAAaA,EAClB18H,KAAKk2D,UAAYA,EACjBl2D,KAAKiuI,SAAWA,EAChBjuI,KAAKm/H,KAAOA,EACZn/H,KAAK22B,IAAMA,EACX32B,KAAKmuI,UAAYA,EACjBnuI,KAAKouI,iBAAmBA,EACxBpuI,KAAKquI,sBAAwBA,EAC7BruI,KAAKsuI,iBAAmBA,EACxBtuI,KAAKuuI,gBAAkBA,EACvBvuI,KAAKwuI,iBAAmBA,EACxBxuI,KAAK+wD,iBAAmB2rE,EAAW3rE,iBACnC/wD,KAAK0uI,iBAAmB,KACxB1uI,KAAKyuI,WAAaA,EAClB,MAAME,EAAa,CACjB/mI,IAAK,GAEP5H,KAAK4uI,gBAAkB,cAAcV,EACnC,kBAAOW,GACL,MAAO,IAAI34E,OAAey4E,EAAW/mI,KACvC,CACA,mBAAOknI,GACL,MAAO,IAAIn4G,EAAIjsB,YACjB,EAEJ,CACA,uBAAAqkI,CAAwBjiI,EAAK24H,GAAW,GACtC,MAAMtlI,GAAQ,EAAIy7H,EAAYkH,wBAAwB,CACpDH,KAAM3iI,KAAKiuI,SACXnhI,MACA24H,WACA1C,eAAe,IAEjB,OAAKp4H,MAAMC,QAAQzK,GAGE,IAAjBA,EAAM0F,QAAkB1F,EAAM,aAAc07H,EAAY2E,KAGrD3E,EAAY2E,KAAKn5H,MAAM,CAC5B83H,KAAMn/H,KAAKm/H,KACX0I,UAAW1nI,IAJJA,EAAM,GAHNA,CASX,CACA,WAAImsB,GACF,OAAOtsB,KAAKiuI,SAASxI,SAAS,WAChC,CACA,aAAIuJ,GACF,MAAMA,EAAYhvI,KAAK+uI,wBAAwB,aAC/C,SAAWziF,EAAMtT,QAAQh5C,KAAM,YAAagvI,aAAqBnT,EAAY2E,KAAOwO,EAAYnT,EAAY2E,KAAKmH,MACnH,CACA,eAAAsH,CAAgB9lI,GACd,GAAInJ,KAAKqgI,QACP,OAAOrgI,KAAKqgI,QAAQtlC,KAEtB,IAAIpR,EAAM3pF,KAAK+uI,wBAAwB5lI,GAAM,GAC7C,GAAIwB,MAAMC,QAAQ++E,IAAuB,IAAfA,EAAI9jF,OAAc,CAE1C,GADA8jF,EAAMr9B,EAAMv2C,KAAKyzC,cAAcmgC,GAC3BA,EAAI,GAAKA,EAAI,GAAK,GAAKA,EAAI,GAAKA,EAAI,GAAK,EAC3C,OAAOA,GAET,EAAIr9B,EAAMhhD,MAAM,uBAAuBnC,WACzC,CACA,OAAO,IACT,CACA,YAAI+lI,GACF,SAAW5iF,EAAMtT,QAAQh5C,KAAM,WAAYA,KAAKivI,gBAAgB,aAAejB,EACjF,CACA,WAAImB,GACF,SAAW7iF,EAAMtT,QAAQh5C,KAAM,UAAWA,KAAKivI,gBAAgB,YAAcjvI,KAAKkvI,SACpF,CACA,YAAIn4E,GACF,IAAInvD,EAAM5H,KAAKiuI,SAASxtI,IAAI,YAI5B,OAHmB,iBAARmH,GAAoBA,GAAO,KACpCA,EA5FoB,IA8FtB,EAAW0kD,EAAMtT,QAAQh5C,KAAM,WAAY4H,EAC7C,CACA,QAAIovD,GACF,MAAM,QACJm4E,EAAO,SACPD,GACElvI,KACJ,GAAImvI,IAAYD,KAAa,EAAI5iF,EAAMvU,cAAco3F,EAASD,GAAW,CACvE,MAAMvlD,EAAMr9B,EAAMv2C,KAAK2zC,UAAUylF,EAASD,GAC1C,GAAIvlD,GAAOA,EAAI,GAAKA,EAAI,GAAK,GAAKA,EAAI,GAAKA,EAAI,GAAK,EAClD,SAAWr9B,EAAMtT,QAAQh5C,KAAM,OAAQ2pF,IAEzC,EAAIr9B,EAAMhhD,MAAM,6CAClB,CACA,SAAWghD,EAAMtT,QAAQh5C,KAAM,OAAQkvI,EACzC,CACA,UAAIp4E,GACF,IAAIA,EAAS92D,KAAK+uI,wBAAwB,WAAa,EAQvD,OAPIj4E,EAAS,IAAO,EAClBA,EAAS,EACAA,GAAU,IACnBA,GAAU,IACDA,EAAS,IAClBA,GAAUA,EAAS,IAAM,KAAO,MAElC,EAAWxK,EAAMtT,QAAQh5C,KAAM,SAAU82D,EAC3C,CACA,iBAAAs4E,CAAkBz0H,EAAQwnD,GACxB,IAAIniE,KAAK+wD,iBAAiB9B,aAI1B,MAAMt0C,GAHJ,EAAI2xC,EAAMhhD,MAAM,2CAA2C62D,QAAYxnD,MAI3E,CACA,gBAAA00H,GACE,OAAOrvI,KAAK08H,WAAW4B,OAAOt+H,KAAM,WAAW6E,MAAKynB,GAC9CA,aAAmBk5G,EAAaM,WAC3Bx5G,EAEL3hB,MAAMC,QAAQ0hB,GACT,IAAIuhH,EAAeyB,sBAAsBhjH,EAAStsB,KAAKovI,kBAAkBhtH,KAAKpiB,OAEhF,IAAIwpG,EAAQ2jC,YAEvB,CACA,WAAI9M,GACF,SAAW/zE,EAAMtT,QAAQh5C,KAAM,UAAWA,KAAKyuI,WAAa,CAC1D1zC,KAAM/6F,KAAKyuI,WAAWc,eAAevvI,KAAKk2D,YACxC,KACN,CAmBA,wBAAM8pE,CAAmBj2H,EAASikD,EAAMsjE,EAAasO,GACnD,GAAI5/H,KAAKyuI,WACP,MAAM,IAAIhjI,MAAM,qCAElB,MAAM+jI,EAAmB,IAAI5B,EAAW6B,iBAAiB,CACvDtQ,KAAMn/H,KAAKm/H,KACXp1H,UACAmsD,UAAWl2D,KAAKk2D,UAChBw5E,UAAW1vI,KAAK4uI,gBAChBT,UAAWnuI,KAAKmuI,UAChBC,iBAAkBpuI,KAAKouI,iBACvBC,sBAAuBruI,KAAKquI,sBAC5BC,iBAAkBtuI,KAAKsuI,iBACvBC,gBAAiBvuI,KAAKuuI,gBACtBpwH,QAASne,KAAK+wD,mBAEV4+E,EAAqB,IAAI9T,EAAYuH,OACrCwM,EAAsB,IAAI/T,EAAYuH,OAC5C,EAAApjI,KAAK,KAAL,KAAAA,KAAqBsxH,EAAaqe,EAAoBC,GACtD,MAAM3B,EAAWjuI,KAAKiuI,SAChB4B,EAAmB7vI,KAAKsxH,YAAYprH,QAAOpG,KAAOA,aAAa+7H,EAAY2C,KAAOmR,EAAmB/xE,IAAI99D,MACzGgwI,QAAgB/T,EAAY8D,kBAAkBG,mBAAmBwP,EAAkBxhF,EAAMsjE,EAAasO,GAC5G,UAAW,IACTjpG,KACGm5G,EAAQxe,YACP36F,aAAeklG,EAAY2C,MAAQoR,EAAoBhyE,IAAIjnC,IAC7Dk5G,EAAiBjuI,KAAK+0B,GAG1B,MAAMo5G,EAAY9B,EAASxtI,IAAI,UAC/BwtI,EAASnjH,IAAI,SAAU+kH,GACvB,MAAM9kH,EAAS,SACf,EAAUkxG,EAAQ+T,aAAahwI,KAAK22B,IAAKs3G,EAAUljH,EAAQ/qB,KAAKm/H,MAC5D4Q,GACF9B,EAASnjH,IAAI,SAAUilH,GAEzB,MAAME,EAAUH,EAAQ78B,aAKxB,OAJAg9B,EAAQruI,KAAK,CACX+0B,IAAK32B,KAAK22B,IACV/R,KAAMmG,EAAOte,KAAK,QACdqjI,EAAQxe,aACP2e,CACT,CACA,IAAA7tF,CAAKr4C,EAASikD,EAAM+F,GAClB,MAAMy7E,EAAmB,IAAI5B,EAAW6B,iBAAiB,CACvDtQ,KAAMn/H,KAAKm/H,KACXp1H,UACAmsD,UAAWl2D,KAAKk2D,UAChBw5E,UAAW1vI,KAAK4uI,gBAChBT,UAAWnuI,KAAKmuI,UAChBC,iBAAkBpuI,KAAKouI,iBACvBC,sBAAuBruI,KAAKquI,sBAC5BC,iBAAkBtuI,KAAKsuI,iBACvBC,gBAAiBvuI,KAAKuuI,gBACtBpwH,QAASne,KAAK+wD,mBAEhB,OAAO/wD,KAAKkwI,mBAAmBrrI,MAAK,SAAUysH,GAC5C,MAAM6e,EAAkB,GACxB,UAAWC,KAAc9e,EAClB8e,EAAWC,cAAct8E,IAG9Bo8E,EAAgBvuI,KAAKwuI,EAAWhuF,KAAKotF,EAAkBxhF,EAAM+F,GAAmBvhD,OAAM,SAAUmI,GAE9F,OADA,EAAI2xC,EAAMhhD,MAAM,2CAAgD0iD,EAAK7kD,gBAAgBwR,OAC9E,IACT,KAEF,OAAOtW,QAAQw8B,IAAIsvG,GAAiBtrI,MAAK,SAAUo7H,GACjD,OAAOA,EAAQ/5H,QAAO+6H,KAAYA,GACpC,GACF,GACF,CACA,aAAAqP,CAAclwI,GAIZ,OAHKJ,KAAK0uI,mBACR1uI,KAAK0uI,iBAAmB1uI,KAAK08H,WAAW4B,OAAOt+H,KAAM,cAEhDA,KAAK0uI,iBAAiB7pI,MAAK,IACX,IAAI6oI,EAAe6C,aAAavwI,KAAKgvI,UAAW5uI,EAAMJ,KAAKm/H,MAC5DrtH,QAExB,CACA,eAAAooD,EAAgB,QACdnwD,EAAO,KACPm2D,EAAI,KACJlS,EAAI,OACJ0J,EAAM,SACNgB,EAAQ,kBACR3E,EAAoB,OAEpB,MAAMy8E,EAAuBxwI,KAAKqvI,mBAC5BX,EAAmB1uI,KAAKswI,cAAc,CAAC,aAAc,YAAa,OAAQ,UAAW,aAAc,UAAW,YAC9Gd,EAAmB,IAAI5B,EAAW6B,iBAAiB,CACvDtQ,KAAMn/H,KAAKm/H,KACXp1H,UACAmsD,UAAWl2D,KAAKk2D,UAChBw5E,UAAW1vI,KAAK4uI,gBAChBT,UAAWnuI,KAAKmuI,UAChBC,iBAAkBpuI,KAAKouI,iBACvBC,sBAAuBruI,KAAKquI,sBAC5BC,iBAAkBtuI,KAAKsuI,iBACvBC,gBAAiBvuI,KAAKuuI,gBACtBpwH,QAASne,KAAK+wD,mBAEV+tE,EAAwB9+H,KAAKyuI,WAAwE,MAA3D,EAAI7S,EAAYmD,sBAAsBhrE,GACtF,IAAI47E,EAAqB,KACrBc,EAAwBpsI,QAAQD,QAAQ,MAC5C,GAAI06H,EAAsB,CACxB,MAAM4R,EAAiB5R,EAAqBr+H,IAAIT,KAAKk2D,WACrD,GAAIw6E,EAAgB,CAClB,MAAMC,EAA2B3wI,KAAK08H,WAAWU,UAAU,qBAC3D,IAAIwC,EACJ,MAAMgR,EAAiB,IAAIh3E,IAC3B,UAAW,SACTsgE,EAAQ,OACRp4D,KACG4uE,GACCxW,GAAap4D,GAAW8uE,EAAehzE,IAAIs8D,IAC7C0W,EAAehpH,IAAIsyG,GAGvB,MAAM,2BACJpyE,GACE9nD,KAAK+wD,iBACT,GAAI6/E,EAAe7jH,KAAO,EAAG,CAC3B,MAAM8jH,EAAwBH,EAAezjI,QAC7C,UAAYH,EAAKsjI,KAAer8E,EACzBjnD,EAAIypC,WAAW+V,EAAM3W,yBAGtBy6F,EAAWtuE,QAAU8uE,EAAehzE,IAAIwyE,EAAWlW,WACrD2W,EAAsBjvI,KAAKwuI,GAG/BxQ,EAAgB7D,EAAY8D,kBAAkBC,eAAe+Q,EAAuB7wI,KAAKm/H,KAAMr3E,EACjG,MACE83E,EAAgB7D,EAAY8D,kBAAkBC,eAAe4Q,EAAgB1wI,KAAKm/H,KAAMr3E,GAE1F6nF,EAAqB,IAAI9T,EAAYuH,OACrC,EAAApjI,KAAK,KAAL,KAAAA,KAAqB0wI,EAAgBf,EAAoB,MACzDc,EAAwBE,EAAyB9rI,MAAKisI,GAC/CA,EAGE/U,EAAY8D,kBAAkBkR,oBAAoBD,EAAmBtB,EAAkBxhF,EAAM0iF,EAAgB9Q,GAF3G,MAIb,CACF,CACA,MACMoR,EADe3sI,QAAQw8B,IAAI,CAAC2vG,EAAsB9B,IACnB7pI,MAAK,EAAEosI,MAC1C,MAAMv8B,EAAS,IAAIi5B,EAAeuD,aAAax5E,EAAQwI,GAMvD,OALAn2D,EAAQyL,KAAK,kBAAmB,CAC9BskD,aAAc01E,EAAiB2B,cAAcnxI,KAAKgvI,UAAWhvI,KAAKwuI,kBAClEt4E,UAAWl2D,KAAKk2D,UAChBwC,aAEK82E,EAAiBt1E,gBAAgB,CACtCurC,OAAQwrC,EACRjjF,OACAghF,UAAWhvI,KAAKgvI,UAChBl2E,aAAc47C,IACb7vG,MAAK,WACN,OAAO6vG,CACT,GAAE,IAEJ,OAAOrwG,QAAQw8B,IAAI,CAACmwG,EAAiBhxI,KAAKkwI,mBAAoBO,IAAwB5rI,MAAK,UAAWusI,EAAY9f,EAAaof,IAC7H,GAAIA,EAAgB,CAClBpf,EAAcA,EAAYprH,QAAOpG,KAAOA,EAAE62B,KAAOg5G,EAAmB/xE,IAAI99D,EAAE62B,QAC1E,QAAS9tB,EAAI,EAAGovC,EAAKy4F,EAAe7qI,OAAQgD,EAAIovC,EAAIpvC,IAAK,CACvD,MAAMwoI,EAAgBX,EAAe7nI,GACrC,GAAIwoI,EAAcC,aAAc,CAC9B,MAAMznH,EAAIynG,EAAYxC,WAAUhvH,GAAKA,EAAE62B,MAAO,EAAIklG,EAAYgL,aAAa/mI,EAAE62B,IAAK06G,EAAcC,gBAC5FznH,GAAK,IACPynG,EAAYlpH,OAAOyhB,EAAG,EAAGwnH,GACzBX,EAAetoI,OAAOS,IAAK,GAC3BovC,IAEJ,CACF,CACAq5E,EAAcA,EAAYvmH,OAAO2lI,EACnC,CACA,GAA2B,IAAvBpf,EAAYzrH,QAAgB6xD,EAASpL,EAAMvY,oBAAoBwG,oBAEjE,OADA62F,EAAWG,OAAM,GACV,CACL1rI,OAAQurI,EAAWI,aAGvB,MAAM5uB,KAAiBlrD,EAASpL,EAAMvY,oBAAoBsG,mBACxDo3F,KAAe/5E,EAASpL,EAAMvY,oBAAoBkG,KAClDy3F,KAAmBh6E,EAASpL,EAAMvY,oBAAoBmG,SACtD0e,KAAiBlB,EAASpL,EAAMvY,oBAAoBoG,OAChDw3F,EAAiB,GACvB,UAAWvB,KAAc9e,GACnBmgB,GAAaC,GAAiBtB,EAAWwB,aAAa79E,EAAmB6uD,IAAgBhqD,GAAew3E,EAAWC,cAAct8E,KACnI49E,EAAe/vI,KAAKwuI,EAAWl2E,gBAAgBs1E,EAAkBxhF,EAAM0J,EAAQkrD,EAAa7uD,GAAmBvhD,OAAM,SAAUmI,GAE7H,OADA,EAAI2xC,EAAMhhD,MAAM,sDAA2D0iD,EAAK7kD,gBAAgBwR,OACzF,CACL+5F,OAAQ,KACRm9B,cAAc,EACdC,gBAAgB,EAEpB,KAGJ,OAAOztI,QAAQw8B,IAAI8wG,GAAgB9sI,MAAK,SAAUktI,GAChD,IAAInhH,GAAO,EACTyxC,GAAS,EACX,UAAW,OACTqyC,EAAM,aACNm9B,EAAY,eACZC,KACGC,EACHX,EAAWY,UAAUt9B,GACrB9jF,IAASihH,EACTxvE,IAAWyvE,EAMb,OAJAV,EAAWG,OAAM,EAAM,CACrB3gH,OACAyxC,WAEK,CACLx8D,OAAQurI,EAAWI,YAEvB,GACF,GACF,CACA,kBAAA9P,EAAmB,QACjB33H,EAAO,KACPikD,EAAI,qBACJsM,EAAoB,qBACpBC,EAAoB,KACpB2F,IAEA,MAAMswE,EAAuBxwI,KAAKqvI,mBAC5BX,EAAmB1uI,KAAKswI,cAAc,CAAC,YAAa,OAAQ,aAAc,YAEhF,OADqBjsI,QAAQw8B,IAAI,CAAC2vG,EAAsB9B,IACpC7pI,MAAK,EAAEosI,KACA,IAAIrD,EAAW6B,iBAAiB,CACvDtQ,KAAMn/H,KAAKm/H,KACXp1H,UACAmsD,UAAWl2D,KAAKk2D,UAChBw5E,UAAW1vI,KAAK4uI,gBAChBT,UAAWnuI,KAAKmuI,UAChBC,iBAAkBpuI,KAAKouI,iBACvBC,sBAAuBruI,KAAKquI,sBAC5BC,iBAAkBtuI,KAAKsuI,iBACvBC,gBAAiBvuI,KAAKuuI,gBACtBpwH,QAASne,KAAK+wD,mBAEQ4J,eAAe,CACrC8qC,OAAQwrC,EACRjjF,OACAghF,UAAWhvI,KAAKgvI,UAChB10E,uBACAC,uBACA2F,OACA1I,QAASx3D,KAAKg3D,QAGpB,CACA,mBAAMoE,GACJ,MAAMokE,QAAuBx/H,KAAK08H,WAAW+B,cAAc,kBAC3D,OAAKe,SAGCx/H,KAAKkwI,0BACclwI,KAAK08H,WAAW4B,OAAOt+H,KAAM,mBAAoB,CAACw/H,KACzD3/D,cAJT,IAKX,CACA,gBAAAoyE,CAAiBzS,GACf,MAAM0S,EAAO,IAAI/V,EAAagW,eAAe3S,EAAgBx/H,KAAKiuI,UAElE,OADAiE,EAAKlxI,MAAMhB,KAAK22B,KACTu7G,CACT,CACA,wBAAMvT,CAAmB50H,EAASikD,EAAM0J,GACtC,MAAM45D,QAAoBtxH,KAAKkwI,mBAC/B,GAA2B,IAAvB5e,EAAYzrH,OACd,OAAOyrH,EAET,MAAM8gB,EAAkB,GACtBC,EAAsB,GACxB,IAAI7C,EACJ,MAAMiC,KAAe/5E,EAASpL,EAAMvY,oBAAoBkG,KACtDy3F,KAAmBh6E,EAASpL,EAAMvY,oBAAoBmG,SACtD0e,KAAiBlB,EAASpL,EAAMvY,oBAAoBoG,OACtD,UAAWi2F,KAAc9e,EAAa,CACpC,MAAMh0B,EAAYm0C,GAAaC,GAAiBtB,EAAWkC,UACvDh1C,GAAa1kC,GAAew3E,EAAWmC,YACzCH,EAAgBxwI,KAAKwuI,EAAWxrH,MAE9BwrH,EAAWoC,gBAAkBl1C,IAC/BkyC,IAAqB,IAAI5B,EAAW6B,iBAAiB,CACnDtQ,KAAMn/H,KAAKm/H,KACXp1H,UACAmsD,UAAWl2D,KAAKk2D,UAChBw5E,UAAW1vI,KAAK4uI,gBAChBT,UAAWnuI,KAAKmuI,UAChBC,iBAAkBpuI,KAAKouI,iBACvBC,sBAAuBruI,KAAKquI,sBAC5BC,iBAAkBtuI,KAAKsuI,iBACvBC,gBAAiBvuI,KAAKuuI,gBACtBpwH,QAASne,KAAK+wD,mBAEhBshF,EAAoBzwI,KAAKwuI,EAAW1O,mBAAmB8N,EAAkBxhF,EAAM,EAAC,KAAW,IAAWm8B,IAAUA,MAAW33E,OAAM,SAAUmI,IACzI,EAAI2xC,EAAMhhD,MAAM,qDAAqD0iD,EAAK7kD,gBAAgBwR,MAC5F,KAEJ,CAEA,aADMtW,QAAQw8B,IAAIwxG,GACXD,CACT,CACA,eAAI9gB,GACF,MAAMmhB,EAASzyI,KAAK+uI,wBAAwB,UAC5C,SAAWziF,EAAMtT,QAAQh5C,KAAM,cAAe2K,MAAMC,QAAQ6nI,GAAUA,EAAS,GACjF,CACA,sBAAIvC,GACF,MAAM7kF,EAAUrrD,KAAK08H,WAAW4B,OAAOt+H,KAAM,eAAe6E,MAAKmJ,MAAMykI,IACrE,GAAsB,IAAlBA,EAAO5sI,OACT,OAAO4sI,EAET,MAAM3B,QAA0B9wI,KAAK08H,WAAWU,UAAU,qBAC1D,IAAK0T,EACH,MAAO,GAET,MAAM4B,EAAqB,GAC3B,UAAWC,KAAiBF,EAC1BC,EAAmB9wI,KAAKm6H,EAAY8D,kBAAkB38H,OAAOlD,KAAKm/H,KAAMwT,EAAe7B,EAAmB9wI,KAAK4uI,iBAAiB,EAAO5uI,KAAK22B,KAAKnkB,OAAM,SAAUmI,GAE/J,OADA,EAAI2xC,EAAMhhD,MAAM,wBAAwBqP,OACjC,IACT,KAEF,MAAMi4H,EAAoB,GAC1B,IAAIC,EACJ,UAAWzC,WAAoB/rI,QAAQw8B,IAAI6xG,GACpCtC,IAGDA,aAAsBrU,EAAY+W,iBACnCD,IAAqB,IAAIjxI,KAAKwuI,GAGjCwC,EAAkBhxI,KAAKwuI,IAKzB,OAHIyC,GACFD,EAAkBhxI,QAAQixI,GAErBD,CAAiB,IAE1B,SAAWtmF,EAAMtT,QAAQh5C,KAAM,qBAAsBqrD,EACvD,CACA,aAAI0nF,GACF,MAAM1tB,GAAU,EAAIuW,EAAY8G,gBAAgB1iI,KAAKm/H,KAAMn/H,KAAKiuI,SAAU3hF,EAAMlY,qBAChF,SAAWkY,EAAMtT,QAAQh5C,KAAM,YAAaqlH,EAC9C,EAlXA,gBAAe,SAACiM,EAAaqe,EAAoBC,GAC/C,UAAWQ,KAAc9e,EACvB,GAAI8e,EAAWx6H,GAAI,CACjB,MAAM+gB,EAAMklG,EAAY2C,IAAIyJ,WAAWmI,EAAWx6H,IAClD,IAAK+gB,EAAK,EACR,EAAI21B,EAAMhhD,MAAM,+CAA+C8kI,EAAWx6H,MAC1E,QACF,CACA,GAAIw6H,EAAWzpE,QAAS,CACtBgpE,EAAmBhK,IAAIhvG,GACvB,QACF,CACAi5G,GAAqBjK,IAAIhvG,GACzBy5G,EAAWz5G,IAAMA,SACVy5G,EAAWx6H,EACpB,CAEJ,EAmWF/W,EAAQuuI,KAAOA,EACf,MAAM4F,EAAuB,IAAIrpH,WAAW,CAAC,GAAM,GAAM,GAAM,GAAM,KAC/DspH,EAAsB,IAAItpH,WAAW,CAAC,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,MACtFupH,EAAmB,IAAIvpH,WAAW,CAAC,IAAM,IAAM,IAAM,IAAM,GAAM,MAGvE,SAASwpH,EAAK1tC,EAAQ2tC,EAAWv/C,EAAQ,KAAMw/C,GAAY,GACzD,MAAMC,EAAkBF,EAAUvtI,OAC5B0tI,EAAY9tC,EAAOijC,UAAU70C,GAC7B2/C,EAAaD,EAAU1tI,OAASytI,EACtC,GAAIE,GAAc,EAChB,OAAO,EAET,GAAIH,EAAW,CACb,MAAMI,EAAeH,EAAkB,EACvC,IAAIj3C,EAAMk3C,EAAU1tI,OAAS,EAC7B,KAAOw2F,GAAOo3C,GAAc,CAC1B,IAAI5pH,EAAI,EACR,KAAOA,EAAIypH,GAAmBC,EAAUl3C,EAAMxyE,KAAOupH,EAAUK,EAAe5pH,IAC5EA,IAEF,GAAIA,GAAKypH,EAEP,OADA7tC,EAAOpJ,KAAOA,EAAMo3C,GACb,EAETp3C,GACF,CACF,KAAO,CACL,IAAIA,EAAM,EACV,KAAOA,GAAOm3C,GAAY,CACxB,IAAI3pH,EAAI,EACR,KAAOA,EAAIypH,GAAmBC,EAAUl3C,EAAMxyE,KAAOupH,EAAUvpH,IAC7DA,IAEF,GAAIA,GAAKypH,EAEP,OADA7tC,EAAOpJ,KAAOA,GACP,EAETA,GACF,CACF,CACA,OAAO,CACT,CA2pBE,gBAAoB,SAAClzF,EAAMuqI,EAAU7U,EAAUiS,GAC7C,MAAMznB,EAAQrpH,KAAKm/H,KAAKwU,WAAWD,GACnC,GAAIrqB,EAAMzrD,IAAI,KAAM,CAClB,MAAMg2E,GAAW,EAAItnF,EAAMnT,mBAAmBkwE,EAAM5oH,IAAI,MACxD0I,EAAgB,KAATA,EAAcyqI,EAAW,GAAGzqI,KAAQyqI,GAC7C,CAQA,GAPK/U,EAASjhE,IAAIz0D,IAChB01H,EAAS/zG,IAAI3hB,EAAM,IAErB01H,EAASp+H,IAAI0I,GAAMvH,KAAKm6H,EAAY8D,kBAAkB38H,OAAOlD,KAAKm/H,KAAMuU,EAAU5C,EAAmB9wI,KAAK4uI,iBAAiB,EAAM,MAAM/pI,MAAKurI,GAAcA,GAAYyD,mBAAkBrhI,OAAM,SAAUmI,GAEtM,OADA,EAAI2xC,EAAMhhD,MAAM,0BAA0BqP,OACnC,IACT,KACI0uG,EAAMzrD,IAAI,QACZ,UAAWk2E,KAAOzqB,EAAM5oH,IAAI,QAC1B,EAAAT,KAAK,KAAL,KAAAA,KAA0BmJ,EAAM2qI,EAAKjV,EAAUiS,EAGrD,EAkEFjyI,EAAQgrI,YA9uBR,MACE,WAAAlrH,CAAY+9G,EAAYj3B,GACtB,GAwpBF,UAxpBMA,EAAO5/F,QAAU,EACnB,MAAM,IAAIymD,EAAM5X,oBAAoB,uDAEtC10C,KAAK08H,WAAaA,EAClB18H,KAAKylG,OAASA,EACdzlG,KAAKm/H,KAAO,IAAI4O,EAAMgG,KAAKtuC,EAAQi3B,GACnC18H,KAAKg0I,cAAgB,IAAI17F,IACzBt4C,KAAKi0I,SAAW,KAChB,MAAMtF,EAAa,CACjBntE,KAAM,GAERxhE,KAAKk0I,iBAAmB,MACtB,eAAOC,GACL,MAAO,KAAKzX,EAAWzuE,OACzB,CACA,mBAAOmmF,GACL,MAAO,OAAMzF,EAAWntE,IAC1B,CACA,kBAAOqtE,IACL,EAAIviF,EAAMpW,aAAa,wCACzB,CACA,mBAAO44F,IACL,EAAIxiF,EAAMpW,aAAa,yCACzB,EAEJ,CACA,KAAAl1C,CAAMm8H,GACJn9H,KAAKm/H,KAAKn+H,MAAMm8H,GAChBn9H,KAAKwpI,QAAU,IAAI+D,EAAS8G,QAAQr0I,KAAK08H,WAAY18H,KAAKm/H,KAC5D,CACA,iBAAIC,GACF,IAAIA,EAAgB,KACpB,IACEA,EAAgBqO,EAAQ6G,cAAcpxI,OAAOlD,KAAKylG,OACpD,CAAE,MAAOp9F,GACP,GAAIA,aAAeuzH,EAAY4G,qBAC7B,MAAMn6H,GAER,EAAIikD,EAAMjhD,MAAMhD,EAClB,CACA,SAAWikD,EAAMtT,QAAQh5C,KAAM,gBAAiBo/H,EAClD,CACA,aAAIF,GACF,MAAMz5B,EAASzlG,KAAKylG,OACpB,IAAIy5B,EAAY,EAChB,GAAIl/H,KAAKo/H,cACP35B,EAAOt6E,QACHgoH,EAAK1tC,EAAQytC,KACfhU,EAAYz5B,EAAOpJ,IAAM,EAAIoJ,EAAOnjF,WAEjC,CACL,MAAM9d,EAAO,KACP+vI,EAAkBtB,EAAoBptI,OAC5C,IAAImjG,GAAQ,EACV3M,EAAMoJ,EAAO13F,IACf,MAAQi7F,GAAS3M,EAAM,GACrBA,GAAO73F,EAAO+vI,EACVl4C,EAAM,IACRA,EAAM,GAERoJ,EAAOpJ,IAAMA,EACb2M,EAAQmqC,EAAK1tC,EAAQwtC,EAAqBzuI,GAAM,GAElD,GAAIwkG,EAAO,CAET,IAAIk7B,EADJz+B,EAAOqjC,KAAK,GAEZ,GACE5E,EAAKz+B,EAAO6iC,iBACL,EAAI1M,EAAYqI,cAAcC,IACvC,IAAIl6G,EAAM,GACV,KAAOk6G,GAAM,IAAQA,GAAM,IACzBl6G,GAAOxe,OAAOif,aAAay5G,GAC3BA,EAAKz+B,EAAO6iC,UAEdpJ,EAAY11G,SAASQ,EAAK,IACtBqoC,MAAM6sE,KACRA,EAAY,EAEhB,CACF,CACA,SAAW5yE,EAAMtT,QAAQh5C,KAAM,YAAak/H,EAC9C,CACA,WAAAsV,GACE,MAAM/uC,EAASzlG,KAAKylG,OAEpB,GADAA,EAAOt6E,SACFgoH,EAAK1tC,EAAQutC,GAChB,OAEFvtC,EAAOsjC,YACPtjC,EAAOqjC,KAAKkK,EAAqBntI,QACjC,IACEq+H,EADEj0H,EAAU,GAEd,MAAQi0H,EAAKz+B,EAAO6iC,WAAa,IAAQr4H,EAAQpK,OAAS,GACxDoK,GAAWzE,OAAOif,aAAay5G,GAE7BtI,EAAY2G,mBAAmBh4H,KAAK0F,GACtCjQ,KAAKi0I,SAAWhkI,GAEhB,EAAIq8C,EAAMhhD,MAAM,+BAA+B2E,IAEnD,CACA,cAAAwkI,GACEz0I,KAAKm/H,KAAKuV,aAAa10I,KAAKk/H,UAC9B,CACA,YAAIlrE,GACF,IAAIzoC,EAAM,EAUV,OAREA,EADEvrB,KAAKwpI,QAAQmL,kBACT30I,KAAKwpI,QAAQx1E,SACVh0D,KAAKyuI,WACRzuI,KAAKyuI,WAAWmG,cACb50I,KAAKo/H,cACRp/H,KAAKo/H,cAAcprE,SAEnBh0D,KAAKwpI,QAAQx1E,UAErB,EAAW1H,EAAMtT,QAAQh5C,KAAM,WAAYurB,EAC7C,CACA,0BAAAspH,CAA2BhuB,EAAQiuB,EAAiB,GAElD,QAAKnqI,MAAMC,QAAQi8G,IAGZA,EAAO1uF,OAAMkxF,IAElB,MADAA,EAAQrpH,KAAKm/H,KAAKwU,WAAWtqB,cACNwS,EAAY2E,MACjC,OAAO,EAET,GAAInX,EAAMzrD,IAAI,QACZ,QAAMk3E,EAVc,KAWlB,EAAIxoF,EAAMhhD,MAAM,gEACT,GAEFtL,KAAK60I,2BAA2BxrB,EAAM5oH,IAAI,QAASq0I,GAE5D,MAAMC,GAAc,EAAIlZ,EAAYgK,QAAQxc,EAAM5oH,IAAI,MAAO,OACvDoiD,EAAYwmE,EAAM5oH,IAAI,QACtBu0I,EAAcrqI,MAAMC,QAAQi4C,IAAcA,EAAU1qB,OAAMh4B,GAAmB,IAAVA,IACzE,OAAO40I,GAAeC,CAAW,GAErC,CACA,eAAIC,GACF,MAAMjW,EAAWh/H,KAAKwpI,QAAQxK,SAC9B,IAAKA,EACH,OAAO,KAET,MAAMpkE,EAAMokE,EAASv+H,IAAI,OACnByd,EAAU,CACd,UAAW,GACXg3H,SAAU,GACVC,SAAU,GACVhqI,OAAQ,GACRiqI,cAAe,GACfC,UAAW,GACXC,WAAY,GACZ,WAAY,IAEd,GAAI16E,aAAe4qE,EAAaM,aAAelrE,EAAIyO,QAEjD,OADAnrD,EAAQ,WAAa08C,EACd18C,EAET,IAAKvT,MAAMC,QAAQgwD,IAAuB,IAAfA,EAAI/0D,OAC7B,OAAO,KAET,QAASgD,EAAI,EAAGovC,EAAK2iB,EAAI/0D,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAAG,CAC/C,IAAIM,EAQJ,GANEA,EADQ,IAANN,EACK,UACEA,IAAMovC,EAAK,EACb,WAEA2iB,EAAI/xD,IAERqV,EAAQ1e,eAAe2J,GAC1B,SAEF,MAAMyb,EAAO5kB,KAAKm/H,KAAKwU,WAAW/4E,EAAI/xD,EAAI,IACpC+b,aAAgB4gH,EAAaM,aAAelhH,EAAKykD,UAGvDnrD,EAAQ/U,GAAQyb,EAClB,CACA,OAAO1G,CACT,CACA,eAAIq3H,GACF,MAAMC,EAAUx1I,KAAKi1I,YACrB,IAAKO,EACH,SAAWlpF,EAAMtT,QAAQh5C,KAAM,cAAe,MAEhD,UAAW8M,IAAO,CAAC,WAAY,WAAY,CACzC,MAAM24F,EAAS+vC,EAAQ1oI,GACvB,GAAK24F,EAGL,IACE,MACM7gF,EAAO,CACX,CAAC9X,IAFS,EAAIw/C,EAAM5V,oBAAoB+uD,EAAOsgC,cAIjD,SAAWz5E,EAAMtT,QAAQh5C,KAAM,cAAe,IAAIwtI,EAAgBiI,cAAc7wH,GAClF,CAAE,OACA,EAAI0nC,EAAMhhD,MAAM,+BAChB,KACF,CACF,CACA,SAAWghD,EAAMtT,QAAQh5C,KAAM,cAAe,KAChD,CACA,WAAIqgI,GACF,MAAMmV,EAAUx1I,KAAKi1I,YACrB,IAAKO,EACH,OAAO,KAET,MAAM5wH,EAAOtlB,OAAO4D,OAAO,MAC3B,UAAY4J,EAAK24F,KAAWnmG,OAAO4e,QAAQs3H,GACzC,GAAK/vC,EAGL,IACE7gF,EAAK9X,IAAO,EAAIw/C,EAAM5V,oBAAoB+uD,EAAOsgC,YACnD,CAAE,MAEA,OADA,EAAIz5E,EAAMhhD,MAAM,+BACT,IACT,CAEF,OAAOsZ,CACT,CACA,cAAI6pH,GACF,IAAI7pH,EAIJ,OAHI5kB,KAAK08H,WAAWntE,WAAavvD,KAAKwpI,QAAQkM,gBAAkB11I,KAAK21I,SAASpU,SAAWvhI,KAAK21I,SAASC,cACrGhxH,EAAO5kB,KAAKqgI,UAEd,EAAW/zE,EAAMtT,QAAQh5C,KAAM,aAAc4kB,EAAO,IAAIkpH,EAAS+H,WAAWjxH,GAAQ,KACtF,CACA,aAAIsvC,GACF,QAAOl0D,KAAKyuI,YAAazuI,KAAKyuI,WAAWqH,SAC3C,CACA,cAAI70E,GACF,OAAOjhE,KAAKyuI,WAAazuI,KAAKyuI,WAAWsH,WAAa,IACxD,CACA,mBAAMzY,GACJ,MAAM0Y,QAAsBh2I,KAAK08H,WAAW+B,cAAc,aAC1D,IAAKuX,EACH,OAEF,MAAM51I,EAAO41I,EAAc/S,UACrBgT,EAAe,IAAIvI,EAAe6C,aAAayF,EAAe51I,EAAMJ,KAAKm/H,YACzE8W,EAAankI,OACnB,MAAMokI,EAAY,IAAI59F,IACtB,UAAWxrC,KAAO1M,EAAM,CACtB,MAAMqlG,EAASuwC,EAAcv1I,IAAIqM,GAC7B24F,aAAkB+/B,EAAaM,YACjCoQ,EAAUprH,IAAIhe,EAAK24F,EAAO8iC,WAE9B,CACAvoI,KAAKyuI,WAAW0H,UAAUD,EAC5B,CACA,kBAAM7Y,CAAatzH,EAASikD,GAC1B,MAAMgxE,QAAiBh/H,KAAK08H,WAAW+B,cAAc,YACrD,IAAKO,EACH,OAEF,MAAMgQ,QAAkBhQ,EAASwI,SAAS,MAC1C,KAAMwH,aAAqBnT,EAAY2E,MACrC,OAEF,MAAMyV,EAAe,IAAIvI,EAAe6C,aAAavB,EAAW,CAAC,QAAShvI,KAAKm/H,YACzE8W,EAAankI,OACnB,MAAMskI,EAAUpH,EAAUvuI,IAAI,QAC9B,KAAM21I,aAAmBva,EAAY2E,MACnC,OAEF,MAAMriH,EAAU7e,OAAO0P,OAAO1P,OAAO4D,OAAO,MAAOlD,KAAK08H,WAAW3rE,kBACnE5yC,EAAQ0xC,gBAAiB,EACzB,MAAM2/E,EAAmB,IAAI5B,EAAW6B,iBAAiB,CACvDtQ,KAAMn/H,KAAKm/H,KACXp1H,UACAmsD,WAAY,EACZw5E,UAAW1vI,KAAKk0I,iBAChB/F,UAAWnuI,KAAKwpI,QAAQ2E,UACxBC,iBAAkBpuI,KAAKwpI,QAAQ4E,iBAC/BC,sBAAuBruI,KAAKwpI,QAAQ6E,sBACpClwH,YAEI26C,EAAe,IAAI60E,EAAeuD,aAClCmF,EAAW,GACXC,EAAe,CACnB,QAAI90E,GACF,OAAO60E,EAASniE,IAAI,EACtB,EACA,QAAI1S,CAAKA,GACP60E,EAASz0I,KAAK4/D,EAChB,EACA,KAAAz7D,GACE,OAAO/F,IACT,GAEI0iF,EAAQ,IAAIpqC,IAClB89F,EAAQ/1I,SAAQ,CAACs5G,EAAUn4C,KACzBkhB,EAAM53D,IAAI6uF,EAAUn4C,EAAK,IAE3B,MAAMq9D,EAAW,GACjB,UAAYllB,EAAUn4C,KAASkhB,EAAO,CACpC,MAAM6zD,EAAa/0E,EAAK/gE,IAAI,kBAC5B,KAAM81I,aAAsB1a,EAAY2E,MACtC,SAEF,IAAI77C,EAAa4xD,EAAW91I,IAAI,cAChCkkF,EAAaA,EAAWpsC,WAAW,YAAa,MAChD,MAEM0sC,EAAc,CAClBN,aACAS,WAJiBmxD,EAAW91I,IAAI,cAKhC4kF,aAJmBkxD,EAAW91I,IAAI,iBAM/B,EAAIm7H,EAAYyJ,iBAAiBpgD,IAGtC45C,EAASj9H,KAAK4tI,EAAiBgH,cAAcxH,EAAW,CAACnT,EAAYsK,KAAK1lI,IAAIk5G,GAAW,GAAI,KAAM7gD,EAAc9K,EAAMsoF,EAAc,KAAMrxD,GAAazyE,OAAM,SAAUmI,GAEtK,OADA,EAAI2xC,EAAMhhD,MAAM,kBAAkBqP,OAC3B,IACT,IACF,OACMtW,QAAQw8B,IAAIg+F,GAClB,MAAM4X,EAAez2I,KAAKyuI,WAAWiI,SAASL,GAC9C,IAAKI,EACH,OAEFt4H,EAAQ8wC,cAAe,EACvB4vE,EAASh5H,OAAS,EAClBwwI,EAASxwI,OAAS,EAClB,MAAM8wI,EAAqB,IAAI/8E,IAC/B,UAAWg9E,KAAWH,GACf,EAAIpJ,EAAWwJ,gBAAgB,GAAGD,cACrCD,EAAmB/uH,IAAIgvH,GAGvBD,EAAmB5pH,MACrB0pH,EAAa70I,KAAK,kBAEpB,UAAWg1I,KAAWH,EACpB,IAAIE,EAAmB/4E,IAAIg5E,GAG3B,UAAWE,IAAY,CAAC,CACtB3tI,KAAM,UACNi8E,WAAY,IACZC,YAAa,GACZ,CACDl8E,KAAM,OACNi8E,WAAY,IACZC,YAAa,GACZ,CACDl8E,KAAM,SACNi8E,WAAY,IACZC,YAAa,IACZ,CACDl8E,KAAM,aACNi8E,WAAY,IACZC,YAAa,KACX,CACF,MAAMl8E,EAAO,GAAGytI,KAAWE,EAAS3tI,OAC9Bw5H,GAAO,EAAI0K,EAAW0J,gBAAgB5tI,GAC5C01H,EAASj9H,KAAK4tI,EAAiBgH,cAAcxH,EAAW,CAACnT,EAAYsK,KAAK1lI,IAAI0I,GAAO,GAAI,KAAM2vD,EAAc9K,EAAMsoF,EAAc3T,EAAM,CACrIh+C,WAAYiyD,EACZxxD,WAAY0xD,EAAS1xD,WACrBC,YAAayxD,EAASzxD,cACrB7yE,OAAM,SAAUmI,GAEjB,OADA,EAAI2xC,EAAMhhD,MAAM,kBAAkBqP,OAC3B,IACT,IACF,OAEItW,QAAQw8B,IAAIg+F,GAClB7+H,KAAKyuI,WAAWuI,YAAYX,EAAUM,EACxC,CACA,sBAAMvW,CAAiBrsE,GACrB,OAAO/zD,KAAKyuI,WAAazuI,KAAKyuI,WAAWwI,cAAcljF,GAAqB,IAC9E,CACA,WAAI9jD,GACF,OAAOjQ,KAAKwpI,QAAQv5H,SAAWjQ,KAAKi0I,QACtC,CACA,YAAI0B,GACF,MAAMA,EAAW,CACfuB,WAAW,EACXtB,aAAa,EACbrU,QAAQ,EACR4V,eAAe,GAEXnY,EAAWh/H,KAAKwpI,QAAQxK,SAC9B,IAAKA,EACH,SAAW1yE,EAAMtT,QAAQh5C,KAAM,WAAY21I,GAE7C,IACE,MAAM9uB,EAASmY,EAASv+H,IAAI,UACtBy2I,EAAYvsI,MAAMC,QAAQi8G,IAAWA,EAAOhhH,OAAS,EAC3D8vI,EAASuB,UAAYA,EACrB,MAAMt8E,EAAMokE,EAASv+H,IAAI,OACzBk1I,EAASpU,OAAS52H,MAAMC,QAAQgwD,IAAQA,EAAI/0D,OAAS,GAAK+0D,aAAe4qE,EAAaM,aAAelrE,EAAIyO,QACzG,MACM8tE,KAA8B,EADnBnY,EAASv+H,IAAI,aAExB22I,EAA4BD,GAAiBn3I,KAAK60I,2BAA2BhuB,GACnF8uB,EAASC,YAAcsB,IAAcE,EACrCzB,EAASwB,cAAgBA,CAC3B,CAAE,MAAO19F,GACP,GAAIA,aAAcmiF,EAAY4G,qBAC5B,MAAM/oF,GAER,EAAI6S,EAAMhhD,MAAM,mCAAmCmuC,MACrD,CACA,SAAW6S,EAAMtT,QAAQh5C,KAAM,WAAY21I,EAC7C,CACA,gBAAI0B,GACF,MAAMC,EAAU,CACdC,iBAAkBv3I,KAAKiQ,QACvBunI,SAAUx3I,KAAKwpI,QAAQiO,KACvBC,kBAAmB13I,KAAKm/H,KAAKwY,QAAU33I,KAAKm/H,KAAKwY,QAAQC,WAAa,KACtEC,eAAgB73I,KAAKo/H,cACrB0Y,kBAAmB93I,KAAK21I,SAASC,YACjCmC,aAAc/3I,KAAK21I,SAASpU,OAC5ByW,sBAAuBh4I,KAAKwpI,QAAQroG,WACpC82G,oBAAqBj4I,KAAK21I,SAASwB,eAErC,IAAIe,EACJ,IACEA,EAAWl4I,KAAKm/H,KAAKI,QAAQ9+H,IAAI,OACnC,CAAE,MAAO4H,GACP,GAAIA,aAAeuzH,EAAY4G,qBAC7B,MAAMn6H,GAER,EAAIikD,EAAMjhD,MAAM,kDAClB,CACA,KAAM6sI,aAAoBrc,EAAY2E,MACpC,SAAWl0E,EAAMtT,QAAQh5C,KAAM,eAAgBs3I,GAEjD,UAAWxqI,KAAOorI,EAASjV,UAAW,CACpC,MAAM9iI,EAAQ+3I,EAASz3I,IAAIqM,GAC3B,OAAQA,GACN,IAAK,QACL,IAAK,SACL,IAAK,UACL,IAAK,WACL,IAAK,UACL,IAAK,WACL,IAAK,eACL,IAAK,UACH,GAAqB,iBAAV3M,EAAoB,CAC7Bm3I,EAAQxqI,IAAO,EAAIw/C,EAAMnT,mBAAmBh5C,GAC5C,QACF,CACA,MACF,IAAK,UACH,GAAIA,aAAiB07H,EAAYsK,KAAM,CACrCmR,EAAQxqI,GAAO3M,EACf,QACF,CACA,MACF,QACE,IAAIg4I,EACJ,cAAeh4I,GACb,IAAK,SACHg4I,GAAA,EAAkB7rF,EAAMnT,mBAAmBh5C,GAC3C,MACF,IAAK,SACL,IAAK,UACHg4I,EAAch4I,EACd,MACF,QACMA,aAAiB07H,EAAYsK,OAC/BgS,EAAch4I,GAIpB,QAAoB,IAAhBg4I,EAA2B,EAC7B,EAAI7rF,EAAMhhD,MAAM,8BAA8BwB,gBAAkB3M,MAChE,QACF,CACKm3I,EAAQc,SACXd,EAAQc,OAAS94I,OAAO4D,OAAO,OAEjCo0I,EAAQc,OAAOtrI,GAAOqrI,EACtB,UAEJ,EAAI7rF,EAAMhhD,MAAM,uBAAuBwB,gBAAkB3M,KAC3D,CACA,SAAWmsD,EAAMtT,QAAQh5C,KAAM,eAAgBs3I,EACjD,CACA,gBAAIrjF,GACF,SAASokF,EAASzzH,GAChB,MAAuB,iBAATA,GAAqBA,EAAK/e,OAAS,GAhhB7B,qCAghBkC+e,CACxD,CACA,SAAS0zH,EAAUpsH,GACjB,MAAMsrB,EAAM,GACZ,UAAWjsB,KAAOW,EAAM,CACtB,MAAMpC,EAAMyB,EAAI7gB,SAAS,IACzB8sC,EAAI51C,KAAKkoB,EAAIktB,SAAS,EAAG,KAC3B,CACA,OAAOQ,EAAI/qC,KAAK,GAClB,CACA,MAAM8rI,EAAUv4I,KAAKm/H,KAAKI,QAAQ9+H,IAAI,MACtC,IAAI+3I,EAAcC,EASlB,OARI9tI,MAAMC,QAAQ2tI,IAAYF,EAASE,EAAQ,KAC7CC,GAAA,EAAmBlsF,EAAMpT,eAAeq/F,EAAQ,IAC5CA,EAAQ,KAAOA,EAAQ,IAAMF,EAASE,EAAQ,MAChDE,GAAA,EAAmBnsF,EAAMpT,eAAeq/F,EAAQ,MAGlDC,GAAA,EAAmBlL,EAAQoL,cAAc14I,KAAKylG,OAAOojC,aAAa,EAniBxC,MAmiBqE,EAniBrE,OAqiB5B,EAAWv8E,EAAMtT,QAAQh5C,KAAM,eAAgB,CAACs4I,EAAUE,GAAeC,EAAeH,EAAUG,GAAgB,MACpH,CACA,2BAAME,CAAsBziF,GAC1B,MAAM,QACJszE,EAAO,cACPpK,EAAa,KACbD,GACEn/H,KACE22B,EAAMklG,EAAY2C,IAAI/9H,IAAI2+H,EAAcwZ,kBAAmB,GACjE,IACE,MAAMhxI,QAAYu3H,EAAKsI,WAAW9wG,GAClC,GAAI/uB,aAAei0H,EAAY2E,KAAM,CACnC,IAAIzzH,EAAOnF,EAAIm/F,OAAO,QAItB,GAHIh6F,aAAgB8uH,EAAY2C,MAC9BzxH,QAAaoyH,EAAKsI,WAAW16H,KAE/B,EAAQ8uH,EAAYgK,QAAQ94H,EAAM,UAAYnF,EAAIg2D,IAAI,UAAYh2D,EAAIg2D,IAAI,QAOxE,OANK4rE,EAAQqP,mBAAmBj7E,IAAIjnC,IAClC6yG,EAAQqP,mBAAmBlT,IAAIhvG,EAAK,GAEjC6yG,EAAQsP,eAAel7E,IAAIjnC,IAC9B6yG,EAAQsP,eAAenT,IAAIhvG,EAAK,GAE3B,CAAC/uB,EAAK+uB,EAEjB,CACA,MAAM,IAAI21B,EAAMzX,YAAY,yEAC9B,CAAE,MAAOl6B,GAEP,OADA,EAAI2xC,EAAMhhD,MAAM,2BAA2BqP,EAAOvR,aAC3CogI,EAAQuP,YAAY7iF,EAC7B,CACF,CACA,OAAA7B,CAAQ6B,GACN,MAAM6L,EAAgB/hE,KAAKg0I,cAAcvzI,IAAIy1D,GAC7C,GAAI6L,EACF,OAAOA,EAET,MAAM,QACJynE,EAAO,cACPpK,EAAa,WACbqP,GACEzuI,KACJ,IAAIqrD,EA0BJ,OAxBEA,EADEojF,EACQpqI,QAAQD,QAAQ,CAACy3H,EAAY2E,KAAKmH,MAAO,OAC1CvI,GAAe4Z,YAAc9iF,EAC5Bl2D,KAAK24I,sBAAsBziF,GAE3BszE,EAAQuP,YAAY7iF,GAEhC7K,EAAUA,EAAQxmD,MAAK,EAAEopI,EAAUt3G,KAC1B,IAAIy2G,EAAK,CACd1Q,WAAY18H,KAAK08H,WACjByC,KAAMn/H,KAAKm/H,KACXjpE,YACA+3E,WACAt3G,MACAu3G,gBAAiBluI,KAAKk0I,iBACtB/F,UAAW3E,EAAQ2E,UACnBC,iBAAkB5E,EAAQ4E,iBAC1BC,sBAAuB7E,EAAQ6E,sBAC/BC,iBAAkB9E,EAAQ8E,iBAC1BC,gBAAiB/E,EAAQ+E,gBACzBC,iBAAkBhF,EAAQgF,iBAC1BC,iBAGJzuI,KAAKg0I,cAAclpH,IAAIorC,EAAW7K,GAC3BA,CACT,CACA,oBAAM4tF,CAAe9b,GAAe,GAClC,IAAIA,EAGJ,UACQn9H,KAAKq0D,QAAQ,EACrB,CAAE,MAAO15C,GACP,GAAIA,aAAkBihH,EAAYyG,mBAGhC,MAFAriI,KAAKg0I,cAAc3hH,OAAO,SACpBryB,KAAK01D,UACL,IAAIkmE,EAAYsG,kBAE1B,CACF,CACA,mBAAMgX,CAAc/b,GAAe,GACjC,MAAM,QACJqM,EAAO,WACP9M,GACE18H,KAEJ,IAAIg0D,EADJw1E,EAAQ2P,oBAER,IAEE,SADM90I,QAAQw8B,IAAI,CAAC67F,EAAWU,UAAU,cAAeV,EAAWU,UAAU,iBAAkBV,EAAW+B,cAAc,cACnHz+H,KAAKyuI,WACP,OAMF,GAJEz6E,EADSh0D,KAAKo/H,cACHp/H,KAAKo/H,cAAcprE,SAEnBw1E,EAAQx1E,UAEhBlb,OAAOC,UAAUib,GACpB,MAAM,IAAI1H,EAAMzX,YAAY,iCACvB,GAAImf,GAAY,EACrB,aAEIh0D,KAAKq0D,QAAQL,EAAW,EAChC,CAAE,MAAOr5C,GAGP,GAFA3a,KAAKg0I,cAAc3hH,OAAO2hC,EAAW,SAC/Bh0D,KAAK01D,UACP/6C,aAAkBihH,EAAYyG,qBAAuBlF,EACvD,MAAM,IAAIvB,EAAYsG,mBAGxB,IAAIkX,GADJ,EAAI9sF,EAAMhhD,MAAM,+CAA+C0oD,MAE/D,IACEolF,QAAkB5P,EAAQ6P,gBAAgBlc,EAC5C,CAAE,MAAOmc,GACP,GAAIA,aAAqB1d,EAAYyG,qBAAuBlF,EAC1D,MAAM,IAAIvB,EAAYsG,mBAGxB,YADAsH,EAAQ2P,kBAAkB,EAE5B,CACA,UAAYjjF,GAAY+3E,EAAUt3G,MAASyiH,EAAW,CACpD,IAAI/tF,EACA4iF,aAAoBxiI,OACtB4/C,EAAUhnD,QAAQC,OAAO2pI,GACzB5iF,EAAQ74C,OAAM,UAEd64C,EAAUhnD,QAAQD,QAAQ,IAAIgpI,EAAK,CACjC1Q,aACAyC,KAAMn/H,KAAKm/H,KACXjpE,YACA+3E,WACAt3G,MACAu3G,gBAAiBluI,KAAKk0I,iBACtB/F,UAAW3E,EAAQ2E,UACnBC,iBAAkB5E,EAAQ4E,iBAC1BC,sBAAuB7E,EAAQ6E,sBAC/BC,iBAAkB9E,EAAQ8E,iBAC1BC,gBAAiB/E,EAAQ+E,gBACzBC,iBAAkBhF,EAAQgF,iBAC1BC,WAAY,QAGhBzuI,KAAKg0I,cAAclpH,IAAIorC,EAAW7K,EACpC,CACAm+E,EAAQ2P,kBAAkBC,EAAUrsH,KACtC,CACF,CACA,YAAA40G,CAAa/rH,EAAI7L,GACf,OAAO/J,KAAKwpI,QAAQ7H,aAAa/rH,EAAI7L,EACvC,CACA,aAAM2rD,CAAQg0E,GAAoB,GAChC,OAAO1pI,KAAKwpI,QAAUxpI,KAAKwpI,QAAQ9zE,QAAQg0E,IAAqB,EAAI1N,EAAgB6F,oBACtF,CAoBA,gBAAI9e,GACF,IAAK/iH,KAAK21I,SAASuB,UACjB,SAAW5qF,EAAMtT,QAAQh5C,KAAM,eAAgBqE,QAAQD,QAAQ,OAEjE,MAAMinD,EAAUrrD,KAAK08H,WAAWU,UAAU,qBAAqBv4H,MAAKmJ,MAAM8iI,IACxE,IAAKA,EACH,OAAO,KAET,MAAM5nB,EAAY5pH,OAAO4D,OAAO,MAC1Bq2I,EAAgB,IAAIjhG,IAC1B,UAAWo7F,KAAY1zI,KAAKwpI,QAAQxK,SAASv+H,IAAI,UAC/C,EAAAT,KAAK,KAAL,KAAAA,KAA0B,GAAI0zI,EAAU6F,EAAezI,GAEzD,MAAM0I,EAAc,GACpB,UAAYrwI,EAAM01H,KAAa0a,EAC7BC,EAAY53I,KAAKyC,QAAQw8B,IAAIg+F,GAAUh6H,MAAKgiH,KAC1CA,EAASA,EAAO3gH,QAAOmjH,KAAWA,KACvBxjH,OAAS,IAClBqjH,EAAU//G,GAAQ09G,EACpB,KAIJ,aADMxiH,QAAQw8B,IAAI24G,GACXtwB,CAAS,IAElB,SAAW58D,EAAMtT,QAAQh5C,KAAM,eAAgBqrD,EACjD,CACA,gBAAI2K,GACF,MAAM3K,EAAUrrD,KAAK08H,WAAWU,UAAU,sBAC1C,SAAW9wE,EAAMtT,QAAQh5C,KAAM,eAAgBqrD,EACjD,CACA,wBAAMouF,GACJ,MAAOC,EAAkB32B,SAAsB1+G,QAAQw8B,IAAI,CAAC7gC,KAAK08H,WAAW+B,cAAc,aAAcz+H,KAAK08H,WAAWU,UAAU,kBAClI,QAAIsc,KAGA32B,GACKzjH,OAAOi8D,OAAOwnD,GAAc/tG,MAAK2kI,GAAeA,EAAY3kI,MAAKtJ,GAA6B,OAAnBA,EAAO25G,WAG7F,CACA,uBAAIu0B,GACF,MAAM5a,EAAWh/H,KAAKwpI,QAAQxK,SAC9B,IAAKA,GAAUphE,IAAI,MACjB,SAAWtR,EAAMtT,QAAQh5C,KAAM,sBAAuB,MAExD,MAAM65I,EAAmB7a,EAASv+H,IAAI,MACtC,IAAKkK,MAAMC,QAAQivI,IAAiD,IAA5BA,EAAiBh0I,OACvD,SAAWymD,EAAMtT,QAAQh5C,KAAM,sBAAuB,MAExD,MAAM4nG,EAAM,GACZ,UAAWhyF,KAAMikI,EACXjkI,aAAcimH,EAAY2C,KAC5B52B,EAAIhmG,KAAKgU,EAAGlL,YAGhB,OAAmB,IAAfk9F,EAAI/hG,QACN,EAAWymD,EAAMtT,QAAQh5C,KAAM,sBAAuB,OAExD,EAAWssD,EAAMtT,QAAQh5C,KAAM,sBAAuB4nG,EACxD,CACA,qBAAIkpC,GACF,SAAWxkF,EAAMtT,QAAQh5C,KAAM,oBAAqB+7H,EAAY8D,kBAAkBia,cAAc95I,KAAK08H,YACvG,EAE+B,EAI1B,CAAChpF,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQi0I,gBAAkBj0I,EAAQk7I,iBAAmBl7I,EAAQghI,kBAAoBhhI,EAAQm7I,sBAAwBn7I,EAAQo7I,gBAAa,EACtIp7I,EAAQq7I,cAAgBA,EACxB,IAAI5tF,EAAQf,EAAoB,GAC5BqwE,EAAcrwE,EAAoB,GAClC4uF,EAAsB5uF,EAAoB,IAC1CswE,EAActwE,EAAoB,GAClCi+C,EAAUj+C,EAAoB,GAC9Bi6E,EAAej6E,EAAoB,GACnC6uF,EAAQ7uF,EAAoB,IAC5BgiF,EAAWhiF,EAAoB,IAC/B8uF,EAAc9uF,EAAoB,IAClC+uF,EAAa/uF,EAAoB,IACjCgvF,EAAehvF,EAAoB,IACnCmiF,EAAiBniF,EAAoB,IACrCoiF,EAAiBpiF,EAAoB,IACrC0wE,EAAU1wE,EAAoB,IAC9BuiF,EAAWviF,EAAoB,IAmSnC,SAASivF,EAAY/lE,EAAOgmE,EAAe,IAAIC,kBAAkB,IAC/D,IAAK/vI,MAAMC,QAAQ6pE,GACjB,OAAOgmE,EAET,MAAME,EAAWF,GAAgB,IAAIC,kBAAkB,GACvD,OAAQjmE,EAAM5uE,QACZ,KAAK,EACH,OAAO,KACT,KAAK,EAEH,OADAw0I,EAAYO,WAAWC,WAAWC,KAAKC,WAAWtmE,EAAO,EAAGkmE,EAAU,GAC/DA,EACT,KAAK,EAEH,OADAN,EAAYO,WAAWC,WAAWnmE,IAAIqmE,WAAWtmE,EAAO,EAAGkmE,EAAU,GAC9DA,EACT,KAAK,EAEH,OADAN,EAAYO,WAAWC,WAAWG,KAAKD,WAAWtmE,EAAO,EAAGkmE,EAAU,GAC/DA,EACT,QACE,OAAOF,EAEb,CACA,SAASQ,EAAiBxmE,GACxB,OAAO9pE,MAAMiS,KAAK63D,GAAO5rD,GAAKA,EAAI,KACpC,CACA,SAASqxH,EAAcvX,EAAMl5E,GAC3B,MAAMi8D,EAAaid,EAAK8C,SAAS,cACjC,IAAK96H,MAAMC,QAAQ86G,IAAqC,IAAtBA,EAAW7/G,QAAgB6/G,EAAW7/G,OAAS,EAAI,EACnF,OAAO,KAET,MAAMq1I,EAAkB,GACxB,QAASryI,EAAI,EAAGovC,EAAKytE,EAAW7/G,OAAS,EAAGgD,EAAIovC,EAAIpvC,IAAK,CACvD,IAAIugF,EAAOe,IACTb,GAAO,IACPD,EAAOc,IACPZ,GAAO,IACT,QAAS1/D,EAAQ,EAAJhhB,EAAOu7F,EAAS,EAAJv7F,EAAQ,EAAGghB,EAAIu6E,EAAIv6E,GAAK,EAAG,CAClD,MAAMzqB,EAAIsmH,EAAW77F,GACf7kB,EAAI0gH,EAAW77F,EAAI,GACzBu/D,EAAO3lE,KAAKE,IAAIvkB,EAAGgqF,GACnBE,EAAO7lE,KAAK6H,IAAIlsB,EAAGkqF,GACnBD,EAAO5lE,KAAKE,IAAI3e,EAAGqkF,GACnBE,EAAO9lE,KAAK6H,IAAItmB,EAAGukF,EACrB,CACA,GAAa,OAAT9/B,IAAkB2/B,EAAO3/B,EAAK,IAAM6/B,EAAO7/B,EAAK,IAAM4/B,EAAO5/B,EAAK,IAAM8/B,EAAO9/B,EAAK,IACtF,OAAO,KAETyxF,EAAgBt5I,KAAK,CAAC,CACpBxC,EAAGgqF,EACHpkF,EAAGukF,GACF,CACDnqF,EAAGkqF,EACHtkF,EAAGukF,GACF,CACDnqF,EAAGgqF,EACHpkF,EAAGqkF,GACF,CACDjqF,EAAGkqF,EACHtkF,EAAGqkF,IAEP,CACA,OAAO6xD,CACT,CACA,SAASC,EAAmB1xF,EAAMsxC,EAAMJ,GACtC,MAAOvR,EAAMC,EAAMC,EAAMC,GAAQj9B,EAAMv2C,KAAKgzC,2BAA2BgyC,EAAMJ,GAC7E,GAAIvR,IAASE,GAAQD,IAASE,EAC5B,MAAO,CAAC,EAAG,EAAG,EAAG,EAAG9/B,EAAK,GAAIA,EAAK,IAEpC,MAAM2xF,GAAU3xF,EAAK,GAAKA,EAAK,KAAO6/B,EAAOF,GACvCiyD,GAAU5xF,EAAK,GAAKA,EAAK,KAAO8/B,EAAOF,GAC7C,MAAO,CAAC+xD,EAAQ,EAAG,EAAGC,EAAQ5xF,EAAK,GAAK2/B,EAAOgyD,EAAQ3xF,EAAK,GAAK4/B,EAAOgyD,EAC1E,CAvEAx8I,EAAQghI,kBAjSR,MACE,oBAAOia,CAAcpd,GACnB,OAAOr4H,QAAQw8B,IAAI,CAAC67F,EAAW+B,cAAc,YAAa/B,EAAWU,UAAU,eAAgBV,EAAW+B,cAAc,kBAAmB/B,EAAW+B,cAAc,WAAY/B,EAAW+B,cAAc,iBAAiB55H,MAAK,EAAEm6H,EAAUuW,EAAa/V,EAAgBnpF,EAASilG,MACxQ,CACL5e,aACAsC,SAAUA,aAAoBnD,EAAY2E,KAAOxB,EAAWnD,EAAY2E,KAAKmH,MAC7E4N,cACA/V,iBACAnpF,UACAilG,kBAED3gI,KACD,EAAI2xC,EAAMhhD,MAAM,mBAAmBqP,OAC5B,OAEX,CACA,mBAAazX,CAAOi8H,EAAMxoG,EAAKm6G,EAAmBpB,EAAW6L,EAAehd,GAC1E,MAAMroE,EAAYqlF,QAAsBv7I,KAAKw7I,cAAcrc,EAAMxoG,EAAKm6G,EAAkBpU,YAAc,KACtG,OAAOoU,EAAkBpU,WAAW4B,OAAOt+H,KAAM,UAAW,CAACm/H,EAAMxoG,EAAKm6G,EAAmBpB,EAAW6L,EAAerlF,EAAWqoE,GAClI,CACA,cAAOkd,CAAQtc,EAAMxoG,EAAKm6G,EAAmBpB,EAAW6L,GAAgB,EAAOrlF,EAAY,KAAMqoE,EAAU,MACzG,MAAMoE,EAAOxD,EAAKwU,WAAWh9G,GAC7B,KAAMgsG,aAAgB9G,EAAY2E,MAChC,OAEF,MAAM,SACJxB,EAAQ,WACRtC,GACEoU,EACEl7H,EAAK+gB,aAAeklG,EAAY2C,IAAM7nG,EAAIjsB,WAAa,SAASglI,EAAUb,gBAChF,IAAI99D,EAAU4xD,EAAKliI,IAAI,WACvBswE,EAAUA,aAAmB8qD,EAAYsK,KAAOp1D,EAAQ5nE,KAAO,KAC/D,MAAMk8D,EAAa,CACjB85D,OACAxoG,MACAgsG,OACA5xD,UACAn7D,KACAk7H,oBACAyK,gBACAhb,iBAAkBgb,IAAqD,IAApCvc,EAASv+H,IAAI,mBAChDy1D,YACAnF,iBAAkB2rE,EAAW3rE,iBAC7BwtE,WAEF,OAAQxtD,GACN,IAAK,OACH,OAAO,IAAI2qE,EAAer2E,GAC5B,IAAK,OACH,OAAO,IAAIs2E,EAAet2E,GAC5B,IAAK,SACH,IAAI07C,GAAY,EAAI6a,EAAYkH,wBAAwB,CACtDH,OACA71H,IAAK,OAGP,OADAi0G,EAAYA,aAAqB8a,EAAYsK,KAAOplB,EAAU53G,KAAO,KAC7D43G,GACN,IAAK,KACH,OAAO,IAAI66B,EAAqBv2E,GAClC,IAAK,MACH,OAAO,IAAIw2E,EAAuBx2E,GACpC,IAAK,KACH,OAAO,IAAIy2E,EAAuBz2E,GACpC,IAAK,MACH,OAAO,IAAI02E,EAA0B12E,GAGzC,OADA,EAAI/Y,EAAMhhD,MAAM,oCAAoCy1G,wCAC7C,IAAIi7B,EAAiB32E,GAC9B,IAAK,QACH,OAAO,IAAIytE,EAAgBztE,GAC7B,IAAK,WACH,OAAO,IAAI42E,EAAmB52E,GAChC,IAAK,OACH,OAAO,IAAI62E,EAAe72E,GAC5B,IAAK,SACH,OAAO,IAAI82E,EAAiB92E,GAC9B,IAAK,SACH,OAAO,IAAI+2E,EAAiB/2E,GAC9B,IAAK,WACH,OAAO,IAAIg3E,EAAmBh3E,GAChC,IAAK,UACH,OAAO,IAAIi3E,EAAkBj3E,GAC/B,IAAK,QACH,OAAO,IAAIk3E,EAAgBl3E,GAC7B,IAAK,MACH,OAAO,IAAIm3E,EAAcn3E,GAC3B,IAAK,YACH,OAAO,IAAIo3E,EAAoBp3E,GACjC,IAAK,YACH,OAAO,IAAIq3E,EAAoBr3E,GACjC,IAAK,WACH,OAAO,IAAIs3E,EAAmBt3E,GAChC,IAAK,YACH,OAAO,IAAIu3E,EAAoBv3E,GACjC,IAAK,QACH,OAAO,IAAIw3E,EAAgBx3E,GAC7B,IAAK,iBACH,OAAO,IAAIy3E,EAAyBz3E,GACtC,QAQE,OAPKk2E,IACExqE,GAGH,EAAIzkB,EAAMhhD,MAAM,kCAAkCylE,yCAFlD,EAAIzkB,EAAMhhD,MAAM,iDAKb,IAAI2uI,EAAW50E,GAE5B,CACA,0BAAam2E,CAAcrc,EAAMxoG,EAAK+lG,GACpC,IACE,MAAMqgB,QAAkB5d,EAAK6d,gBAAgBrmH,GAC7C,KAAMomH,aAAqBlhB,EAAY2E,MACrC,OAAQ,EAEV,MAAMjC,EAAUwe,EAAUh2C,OAAO,KACjC,GAAIw3B,aAAmB1C,EAAY2C,IACjC,IAEE,aADwB9B,EAAW+B,cAAc,eAAgB,CAACF,GAEpE,CAAE,MAAO9kF,IACP,EAAI6S,EAAMjhD,MAAM,iDAAiDouC,MACnE,CAEF,GAAIsjG,EAAUn/E,IAAI,QAChB,OAAQ,EAEV,MAAM5J,QAAiB0oE,EAAWU,UAAU,YAC5C,QAASlnE,EAAY,EAAGA,EAAYlC,EAAUkC,IAAa,CACzD,MAAM4J,QAAa48D,EAAWroE,QAAQ6B,GAChCo7D,QAAoBoL,EAAW4B,OAAOx+D,EAAM,eAClD,UAAWm9E,KAAY3rB,EACrB,GAAI2rB,aAAoBphB,EAAY2C,MAAO,EAAI3C,EAAYgL,aAAaoW,EAAUtmH,GAChF,OAAOu/B,CAGb,CACF,CAAE,MAAOzc,IACP,EAAI6S,EAAMhhD,MAAM,mBAAmBmuC,MACrC,CACA,OAAQ,CACV,CACA,qBAAOqmF,CAAexO,EAAa6N,EAAMr3E,GACvC,IAAKA,EAEH,OADA,EAAIwE,EAAMhhD,MAAM,wGACT,KAET,IAAIs0H,EACJ,UAAW,SACT1F,EAAQ,OACRp4D,KACGwvD,EACExvD,IAGL89D,IAAkB,IAAItnF,IACtBsnF,EAAc90G,IAAIovG,EAAU2iB,EAAgBK,YAAYp7E,EAAQq9D,KAElE,OAAOS,CACT,CACA,+BAAaI,CAAmBmd,EAAWnvF,EAAMsjE,EAAasO,GAC5D,MAAMT,EAAOge,EAAUhe,KACvB,IAAIie,EACJ,MAAMnqC,EAAe,GACf4rB,EAAW,IACX,2BACJ/2E,GACEq1F,EAAUh/H,QACd,UAAWiyH,KAAc9e,EACvB,IAAI8e,EAAWzpE,QAGf,OAAQypE,EAAWxyB,gBACjB,KAAKtxD,EAAM5W,qBAAqBoF,SAC9B,IAAKsiG,EAAa,CAChB,MAAMC,EAAW,IAAIxhB,EAAY2E,KAAKrB,GACtCke,EAASvyH,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAI,cAC9C48I,EAASvyH,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,SAC1C48I,EAASvyH,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,UAC7C48I,EAASvyH,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAI,oBAC9C,MAAMsqB,EAAS,GACfqyH,EAAcje,EAAKwB,2BACnB,EAAU1E,EAAQ+T,aAAaoN,EAAaC,EAAUtyH,EAAQo0G,GAC9DlsB,EAAarxG,KAAK,CAChB+0B,IAAKymH,EACLx4H,KAAMmG,EAAOte,KAAK,KAEtB,CACAoyH,EAASj9H,KAAKq6I,EAAmBqB,oBAAoBne,EAAMiR,EAAYn9B,EAAc,CACnFkqC,YACAnvF,OACAovF,iBAEF,MACF,KAAK9wF,EAAM5W,qBAAqBsF,IAC9B6jF,EAASj9H,KAAK46I,EAAcc,oBAAoBne,EAAMiR,EAAYn9B,IAClE,MACF,KAAK3mD,EAAM5W,qBAAqBqF,MAC9B,IAAK+M,EACH,MAEF,MAAMqqB,QAAcytD,EAAcn/H,IAAI2vI,EAAWlW,UACjD,GAAI/nD,EAAMorE,YAAa,CACrB,MAAM,YACJA,EAAW,YACXC,GACErrE,EACEpnD,EAAS,GACf,GAAIyyH,EAAa,CACf,MAAMC,EAAWte,EAAKwB,2BACtB,EAAU1E,EAAQ+T,aAAayN,EAAUD,EAAazyH,EAAQo0G,GAC9DlsB,EAAarxG,KAAK,CAChB+0B,IAAK8mH,EACL74H,KAAMmG,EAAOte,KAAK,MAEpB8wI,EAAY5a,KAAK73G,IAAI,QAAS2yH,GAC9B1yH,EAAOllB,OAAS,CAClB,CACA,MAAM63I,EAAWvrE,EAAMurE,SAAWve,EAAKwB,2BACvC,EAAU1E,EAAQ+T,aAAa0N,EAAUH,EAAaxyH,EAAQo0G,GAC9DlsB,EAAarxG,KAAK,CAChB+0B,IAAK+mH,EACL94H,KAAMmG,EAAOte,KAAK,MAEpB0lE,EAAMorE,YAAcprE,EAAMqrE,YAAc,IAC1C,CACA3e,EAASj9H,KAAKi7I,EAAgBS,oBAAoBne,EAAMiR,EAAYn9B,EAAc,CAChF9gC,WAKR,MAAO,CACLm/C,kBAAmBjtH,QAAQw8B,IAAIg+F,GAC/B5rB,eAEJ,CACA,gCAAa89B,CAAoBD,EAAmBqM,EAAWnvF,EAAMsjE,EAAasO,GAChF,IAAKtO,EACH,OAAO,KAET,MAAM,QACJnzG,EAAO,KACPghH,GACEge,EACEte,EAAW,GACjB,UAAWuR,KAAc9e,EACvB,IAAI8e,EAAWzpE,QAGf,OAAQypE,EAAWxyB,gBACjB,KAAKtxD,EAAM5W,qBAAqBoF,SAC9B+jF,EAASj9H,KAAKq6I,EAAmB0B,yBAAyB7M,EAAmB3R,EAAMiR,EAAY,CAC7F+M,YACAnvF,OACA+C,iBAAkB5yC,KAEpB,MACF,KAAKmuC,EAAM5W,qBAAqBsF,IAC9B6jF,EAASj9H,KAAK46I,EAAcmB,yBAAyB7M,EAAmB3R,EAAMiR,EAAY,CACxFr/E,iBAAkB5yC,KAEpB,MACF,KAAKmuC,EAAM5W,qBAAqBqF,MAC9B,IAAK58B,EAAQ2pC,2BACX,MAEF,MAAMqqB,QAAcytD,EAAcn/H,IAAI2vI,EAAWlW,UACjD,GAAI/nD,EAAMorE,YAAa,CACrB,MAAM,YACJA,EAAW,YACXC,GACErrE,EACAqrE,GACFD,EAAY5a,KAAK73G,IAAI,QAAS0yH,GAEhCrrE,EAAMurE,SAAW,IAAInD,EAAaqD,WAAWL,EAAaA,EAAY13I,QACtEssE,EAAMorE,YAAcprE,EAAMqrE,YAAc,IAC1C,CACA3e,EAASj9H,KAAKi7I,EAAgBc,yBAAyB7M,EAAmB3R,EAAMiR,EAAY,CAC1Fj+D,QACAphB,iBAAkB5yC,KAK1B,OAAO9Z,QAAQw8B,IAAIg+F,EACrB,GA0EF,MAAMob,EACJ,WAAAt7H,CAAYtK,GACV,MAAM,KACJsuH,EAAI,KACJxD,EAAI,kBACJ2R,GACEz8H,EACJrU,KAAK69I,SAASlb,EAAKliI,IAAI,MACvBT,KAAK89I,YAAYnb,EAAKliI,IAAI,aAC1BT,KAAK+9I,oBAAoBpb,EAAKliI,IAAI,MAClCT,KAAKg+I,SAASrb,EAAKliI,IAAI,MACvBT,KAAKi+I,aAAatb,EAAK8C,SAAS,SAChCzlI,KAAKukH,SAASoe,EAAK8C,SAAS,MAC5BzlI,KAAKk+I,eAAevb,GACpB3iI,KAAKm+I,cAAcxb,GACnB3iI,KAAKo+I,mBAAmBzb,GACxB,MAAM0b,EAAK1b,EAAKliI,IAAI,MACpBT,KAAKs+I,6BAA6BD,GAClCr+I,KAAKyjH,YAAY46B,EAAI1b,GACrB3iI,KAAK22B,IAAMtiB,EAAOsiB,eAAeklG,EAAY2C,IAAMnqH,EAAOsiB,IAAM,KAChE32B,KAAKu+I,SAAW,GACZv+I,KAAKw+I,YACPx+I,KAAKu+I,SAAS38I,KAAK5B,KAAKw+I,YAE1B,MAAMC,KAAcz+I,KAAK6sG,MAAQvgD,EAAM9W,eAAemJ,QAChD+/F,KAAqB1+I,KAAK6sG,MAAQvgD,EAAM9W,eAAeqJ,gBAC7D,GAAIiyF,EAAkBtR,eAAgB,CACpC,IAAImf,EAAehc,EAAKliI,IAAI,gBAC5Bk+I,EAAe7lG,OAAOC,UAAU4lG,IAAiBA,GAAgB,EAAIA,GAAgB,EACrF7N,EAAkBtR,eAAeof,sBAAsBvqI,EAAOkqH,QAASogB,EACzE,CAkBA,GAjBA3+I,KAAK4kB,KAAO,CACVi6H,gBAAiB7+I,KAAK6sG,MACtB6W,YAAa1jH,KAAK0jH,YAClBjvC,MAAOz0E,KAAKy0E,MACZutB,gBAAiBhiG,KAAKgiG,gBACtBmiB,YAAankH,KAAKmkH,YAClBhtD,SAAUn3D,KAAKm3D,SACfisD,YAAapjH,KAAK8+I,UAClBzzB,gBAAiBrrH,KAAKw+I,WACtB5oI,GAAIvB,EAAOuB,GACX6wG,iBAAkBzmH,KAAKymH,iBACvBh9D,KAAMzpD,KAAK6iD,UACXkuB,QAAS18D,EAAO08D,QAChB2qB,cAAc,EACd8nB,YAAaxjH,KAAK6sG,MAAQvgD,EAAM9W,eAAegJ,UAC/CizE,OAAQgtB,GAAYC,GAElBrqI,EAAOknI,cAAe,CACxB,MAAMwD,EAAOpc,EAAKliI,IAAI,QACtB,GAAIkK,MAAMC,QAAQm0I,GAAO,CACvB,MAAMC,EAAS,GACf,UAAWlL,KAAOiL,EACZjL,aAAejY,EAAY2C,KAC7BwgB,EAAOp9I,KAAKkyI,EAAIppI,YAGE,IAAlBs0I,EAAOn5I,SACT7F,KAAK4kB,KAAKo6H,OAASA,EAEvB,CACAh/I,KAAK4kB,KAAKygG,SAAU,EAAIuW,EAAY8G,gBAAgBvD,EAAMwD,EAAMr2E,EAAMxW,2BACtE91C,KAAK4kB,KAAKwkG,UAAYppH,KAAKi/I,oBAAoBtc,GAC/C3iI,KAAK4kB,KAAKsxC,UAAY7hD,EAAO6hD,SAC/B,CACAl2D,KAAKu6G,4BAA8BlmG,EAAO08C,iBAAiBjJ,2BAC3D9nD,KAAKk/I,kBAAoB,KACzBl/I,KAAKm/I,kBAAmB,CAC1B,CACA,QAAAC,CAASvyC,EAAOwyC,GACd,SAAUxyC,EAAQwyC,EACpB,CACA,WAAAC,CAAYzyC,GACV,OAAQ7sG,KAAKo/I,SAASvyC,EAAOvgD,EAAM9W,eAAe2G,aAAen8C,KAAKo/I,SAASvyC,EAAOvgD,EAAM9W,eAAeiJ,OAC7G,CACA,YAAA8gG,CAAa1yC,GACX,OAAO7sG,KAAKo/I,SAASvyC,EAAOvgD,EAAM9W,eAAe2E,SAAWn6C,KAAKo/I,SAASvyC,EAAOvgD,EAAM9W,eAAe8I,UAAYt+C,KAAKo/I,SAASvyC,EAAOvgD,EAAM9W,eAAe2G,UAC9J,CACA,YAAAy1F,CAAa79E,EAAmByrF,GAC9B,MAAM56B,EAAS7wD,GAAmBtzD,IAAIT,KAAK4kB,KAAKhP,KAAKgvG,OACrD,YAAe,IAAXA,GACMA,EAEH5kH,KAAKsyI,WAAatyI,KAAKo/I,SAASp/I,KAAK6sG,MAAOvgD,EAAM9W,eAAe8I,OAC1E,CACA,aAAA+xF,CAAct8E,GACZ,MAAM8wD,EAAU9wD,GAAmBtzD,IAAIT,KAAK4kB,KAAKhP,KAAKivG,QACtD,YAAgB,IAAZA,GACMA,EAEH7kH,KAAKuyI,SACd,CACA,YAAID,GACF,OAA6B,OAAzBtyI,KAAK4kB,KAAK8gG,aAGK,IAAf1lH,KAAK6sG,OAGF7sG,KAAKs/I,YAAYt/I,KAAK6sG,OAC/B,CACA,aAAI0lC,GACF,OAA6B,OAAzBvyI,KAAK4kB,KAAK8gG,YAGK,IAAf1lH,KAAK6sG,OAGF7sG,KAAKu/I,aAAav/I,KAAK6sG,MAChC,CACA,kBAAA4yC,CAAmB76H,GACjB,MAAMoF,EAAsB,iBAATpF,GAAoB,EAAI0nC,EAAMnT,mBAAmBv0B,GAAQ,GAE5E,MAAO,CACLoF,MACAge,IAHUhe,GAAoC,SAA7B,EAAIowH,EAAMsF,MAAM11H,GAAKge,IAAgB,MAAQ,MAKlE,CACA,oBAAA23G,CAAqBtrI,GACnB,MAAM,KACJsuH,EAAI,kBACJmO,GACEz8H,EACEurI,GAAoB,EAAIhkB,EAAYkH,wBAAwB,CAChEH,OACA71H,IAAK,QACDgkI,EAAkB9R,SAASv+H,IAAI,MACrCT,KAAK6/I,mBAAkD,iBAAtBD,EAAiCA,EAAoB,GACtF5/I,KAAK4kB,KAAK26F,uBAAwB,EAAI46B,EAAoB2F,wBAAwB9/I,KAAK6/I,mBACzF,CACA,QAAAhC,CAAS94B,GACP/kH,KAAK+/I,OAAS//I,KAAKy/I,mBAAmB16B,EACxC,CACA,WAAA+4B,CAAY1vI,GACVpO,KAAK8+I,UAAY9+I,KAAKy/I,mBAAmBrxI,EAC3C,CACA,mBAAA2vI,CAAoBt3B,GAClBzmH,KAAKymH,iBAA+C,iBAArBA,EAAgCA,EAAmB,IACpF,CACA,QAAAu3B,CAASnxC,GACP7sG,KAAK6sG,MAAQ/zD,OAAOC,UAAU8zD,IAAUA,EAAQ,EAAIA,EAAQ,CAC9D,CACA,OAAAmzC,CAAQX,GACN,OAAOr/I,KAAKo/I,SAASp/I,KAAK6sG,MAAOwyC,EACnC,CACA,YAAApB,CAAap7F,GACX7iD,KAAK6iD,UAAYl4C,MAAMC,QAAQi4C,IAAmC,IAArBA,EAAUh9C,OAAeymD,EAAMv2C,KAAKyzC,cAAc3G,GAAa,CAAC,EAAG,EAAG,EAAG,EACxH,CACA,QAAA0hE,CAAS9vC,GACPz0E,KAAKy0E,MAAQ+lE,EAAY/lE,EAC3B,CACA,cAAAwrE,CAAeC,GAEb,GADAlgJ,KAAKkgJ,YAAc,CAAC,OAAQ,QACxBv1I,MAAMC,QAAQs1I,IAAuC,IAAvBA,EAAYr6I,OAC5C,QAASgD,EAAI,EAAGA,EAAI,EAAGA,IAAK,CAC1B,MAAMjB,EAAMs4I,EAAYr3I,GACxB,GAAIjB,aAAei0H,EAAYsK,KAC7B,OAAQv+H,EAAIuB,MACV,IAAK,OACH,SACF,IAAK,SACL,IAAK,SACL,IAAK,UACL,IAAK,YACL,IAAK,cACL,IAAK,OACL,IAAK,aACL,IAAK,eACL,IAAK,QACHnJ,KAAKkgJ,YAAYr3I,GAAKjB,EAAIuB,KAC1B,UAGN,EAAImjD,EAAMhhD,MAAM,gCAAgC1D,IAClD,CAEJ,CACA,WAAA67G,CAAY08B,EAAIxd,GACd3iI,KAAKm3D,SAAW,EAChB,IAAI8W,EAAQkyE,aAActkB,EAAY2E,KAAO2f,EAAG1/I,IAAI,MAAQ,EAAIkiI,EAAKliI,IAAI,WAAa,EAClFq4C,OAAOC,UAAUk1B,IAAoB,IAAVA,IAC7BA,GAAS,IACLA,EAAQ,IACVA,GAAS,KAEPA,EAAQ,IAAO,IACjBjuE,KAAKm3D,SAAW8W,GAGtB,CACA,4BAAAqwE,CAA6B6B,GACvBA,aAActkB,EAAY2E,MAC5BxgI,KAAKmkH,YAAcq2B,EAAY2F,EAAG1a,SAAS,MAAO,MAClDzlI,KAAKgiG,gBAAkBw4C,EAAY2F,EAAG1a,SAAS,MAAO,OAEtDzlI,KAAKmkH,YAAcnkH,KAAKgiG,gBAAkB,IAE9C,CACA,cAAAk8C,CAAex6B,GAEb,GADA1jH,KAAK0jH,YAAc,IAAIs2B,EACjBt2B,aAAuBmY,EAAY2E,KAGzC,GAAI9c,EAAY9lD,IAAI,MAAO,CACzB,MAAM+kE,EAAOjf,EAAYjjH,IAAI,MACvB2/I,EAAWzd,EAAKliI,IAAI,QACrB2/I,KAAY,EAAIvkB,EAAYgK,QAAQua,EAAU,YACjDpgJ,KAAK0jH,YAAY28B,SAAS1d,EAAKliI,IAAI,KAAMT,KAAK6iD,WAC9C7iD,KAAK0jH,YAAY48B,SAAS3d,EAAKliI,IAAI,MACnCT,KAAK0jH,YAAY68B,aAAa5d,EAAK8C,SAAS,MAEhD,MAAO,GAAI/hB,EAAY9lD,IAAI,UAAW,CACpC,MAAMjoC,EAAQ+tF,EAAY+hB,SAAS,UAC/B96H,MAAMC,QAAQ+qB,IAAUA,EAAM9vB,QAAU,IAC1C7F,KAAK0jH,YAAY88B,0BAA0B7qH,EAAM,IACjD31B,KAAK0jH,YAAY+8B,wBAAwB9qH,EAAM,IAC/C31B,KAAK0jH,YAAY28B,SAAS1qH,EAAM,GAAI31B,KAAK6iD,WACpB,IAAjBltB,EAAM9vB,QACR7F,KAAK0jH,YAAY68B,aAAa5qH,EAAM,IAAI,GAG9C,MACE31B,KAAK0jH,YAAY28B,SAAS,EAE9B,CACA,aAAAlC,CAAcxb,GACZ3iI,KAAKw+I,WAAa,KAClB,MAAMkC,EAAmB/d,EAAKliI,IAAI,MAClC,KAAMigJ,aAA4B7kB,EAAY2E,MAC5C,OAEF,MAAMmgB,EAAwBD,EAAiBjgJ,IAAI,KACnD,GAAIkgJ,aAAiCnb,EAAaM,WAEhD,YADA9lI,KAAKw+I,WAAamC,GAGpB,KAAMA,aAAiC9kB,EAAY2E,MACjD,OAEF,MAAMogB,EAAKje,EAAKliI,IAAI,MACpB,KAAMmgJ,aAAc/kB,EAAYsK,MAAUwa,EAAsB/iF,IAAIgjF,EAAGz3I,OACrE,OAEF,MAAMq1I,EAAamC,EAAsBlgJ,IAAImgJ,EAAGz3I,MAC5Cq1I,aAAsBhZ,EAAaM,aACrC9lI,KAAKw+I,WAAaA,EAEtB,CACA,kBAAAJ,CAAmBzb,GACjB3iI,KAAK6gJ,GAAK,KACV,MAAMA,EAAKle,EAAKliI,IAAI,MAChBogJ,aAAchlB,EAAYsK,MAC5B,EAAI75E,EAAMhhD,MAAM,mEACPu1I,aAAchlB,EAAY2E,OACnCxgI,KAAK6gJ,GAAKA,EAEd,CACA,aAAAvQ,CAAclwI,EAAMo+I,GAClB,OAAOA,EAAW7b,KAAK6E,SAAS,aAAa3iI,MAAKmqI,IAChD,GAAKA,EAIL,OADqB,IAAItB,EAAe6C,aAAavB,EAAW5uI,EAAM4uI,EAAU7P,MAC5DrtH,OAAOjN,MAAK,WAC9B,OAAOmqI,CACT,GAAE,GAEN,CACA,qBAAM90E,CAAgBijF,EAAWnvF,EAAM0J,EAAQkrD,EAAa7uD,GAC1D,MAAMnvC,EAAO5kB,KAAK4kB,KAClB,IAAI45H,EAAax+I,KAAKw+I,WACtB,MAAMsC,KAAsB9gJ,KAAK4kB,KAAK82E,cAAgBhkC,EAASpL,EAAMvY,oBAAoBmG,SACzF,IAAKskG,EAAY,CACf,IAAKsC,EACH,MAAO,CACLpsC,OAAQ,IAAIi5B,EAAeuD,aAC3BW,cAAc,EACdC,gBAAgB,GAGpB0M,EAAa,IAAIh1C,EAAQ0jC,aAAa,IACtCsR,EAAW7b,KAAO,IAAI9G,EAAY2E,IACpC,CACA,MAAMugB,EAAiBvC,EAAW7b,KAC5BqM,QAAkBhvI,KAAKswI,cAAc,CAAC,YAAa,aAAc,UAAW,UAAW,UAAW,QAASkO,GAC3GzjD,EAAOgmD,EAAetb,SAAS,SAAW,CAAC,EAAG,EAAG,EAAG,GACpD9qC,EAASomD,EAAetb,SAAS,WAAa,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,GAC9DnjF,EAAY64F,EAAmBv2H,EAAK6kC,KAAMsxC,EAAMJ,GAChD+Z,EAAS,IAAIi5B,EAAeuD,aAClC,IAAI8P,EAoBJ,OAnBIhhJ,KAAK6gJ,KACPG,QAAwB7D,EAAU8D,wBAAwBjhJ,KAAK6gJ,GAAI,YAE7C,IAApBG,GACFtsC,EAAOwsC,MAAM50F,EAAMjY,IAAI2R,wBAAyB,CAAC,KAAMg7F,IAEzDtsC,EAAOwsC,MAAM50F,EAAMjY,IAAImS,gBAAiB,CAAC5hC,EAAKhP,GAAIgP,EAAK6kC,KAAMnH,EAAWq4C,EAAQmmD,UAC1E3D,EAAUjjF,gBAAgB,CAC9BurC,OAAQ+4C,EACRxwF,OACAghF,YACAl2E,aAAc47C,EACdysC,iBAAkBnhJ,KAAKk/I,oBAEzBxqC,EAAOwsC,MAAM50F,EAAMjY,IAAIoS,cAAe,SACd,IAApBu6F,GACFtsC,EAAOwsC,MAAM50F,EAAMjY,IAAI4R,iBAAkB,IAE3CjmD,KAAKmrB,QACE,CACLupF,SACAm9B,cAAc,EACdC,eAAgBgP,EAEpB,CACA,UAAM1+F,CAAK+6F,EAAWnvF,EAAM+F,GAC1B,OAAO,IACT,CACA,kBAAIy+E,GACF,OAAO,CACT,CACA,wBAAM9Q,CAAmByb,EAAWnvF,EAAMwJ,GACxC,IAAKx3D,KAAKw+I,WACR,OAEF,MAAMxP,QAAkBhvI,KAAKswI,cAAc,CAAC,YAAa,OAAQ,aAAc,WAAYtwI,KAAKw+I,YAC1FvnI,EAAO,GACP8T,EAAS,GACf,IAAIq2H,EAAgB,KACpB,MAAMlhF,EAAO,CACXqlC,YAAa9hF,KAAK0mE,SAClBhhD,OAAO,EACP,OAAAm3B,CAAQ9Y,EAAOz6B,GACb,UAAW7Z,KAAQs0C,EAAMkT,WACN,IAAbxnD,EAAK8W,MAGTo3H,IAAkBluI,EAAKovC,UAAUr1C,OAAO,GACxC8d,EAAOnpB,KAAKsR,EAAK8W,KACb9W,EAAKqmG,SACPtiG,EAAKrV,KAAKmpB,EAAOte,KAAK,KACtBse,EAAOllB,OAAS,GAGtB,GAcF,SAZMs3I,EAAUxiF,eAAe,CAC7B8qC,OAAQzlG,KAAKw+I,WACbxwF,OACAghF,YACA10E,sBAAsB,EACtB4F,OACA1I,YAEFx3D,KAAKmrB,QACDJ,EAAOllB,QACToR,EAAKrV,KAAKmpB,EAAOte,KAAK,KAEpBwK,EAAKpR,OAAS,GAAKoR,EAAK,GAAI,CAC9B,MAAM8pI,EAAiB/gJ,KAAKw+I,WAAW7b,KACjC5nC,EAAOgmD,EAAetb,SAAS,SAAW,CAAC,EAAG,EAAG,EAAG,GACpD9qC,EAASomD,EAAetb,SAAS,WAAa,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,GAC9Dh8E,EAAOzpD,KAAK4kB,KAAK6kC,KACjBnH,EAAY64F,EAAmB1xF,EAAMsxC,EAAMJ,GACjDr4C,EAAU,IAAMmH,EAAK,GACrBnH,EAAU,IAAMmH,EAAK,GACrB23F,EAAgB90F,EAAMv2C,KAAK8yC,eAAeu4F,EAAe9+F,GACzD8+F,EAAgB90F,EAAMv2C,KAAK8yC,eAAeu4F,EAAezmD,GACzD36F,KAAK4kB,KAAK66F,aAAe2hC,EACzBphJ,KAAK4kB,KAAK1N,YAAcD,CAC1B,CACF,CACA,cAAA48H,GACE,OAAI7zI,KAAK4kB,KAAKo6H,OACL,CACLppI,GAAI5V,KAAK4kB,KAAKhP,GACdyvG,QAASrlH,KAAK4kB,KAAKygG,QACnBl8G,KAAMnJ,KAAK4kB,KAAKwkG,UAChB3gC,YAAazoF,KAAK4kB,KAAKu/F,YACvB37B,UAAWxoF,KAAK4kB,KAAKo9E,gBACrBj1F,KAAM,GACNiyI,OAAQh/I,KAAK4kB,KAAKo6H,OAClBl/E,KAAM9/D,KAAK4kB,KAAKsxC,UAChBiB,SAAUn3D,KAAKm3D,UAGZ,IACT,CACA,KAAAhsC,GACE,UAAWs6E,KAAUzlG,KAAKu+I,SACxB94C,EAAOt6E,OAEX,CACA,mBAAA8zH,CAAoBtc,GAClB,IAAKA,EAAK/kE,IAAI,OAAS+kE,EAAK/kE,IAAI,UAE9B,OADA,EAAItR,EAAMhhD,MAAM,yDACT,GAET,IAAKq3H,EAAK/kE,IAAI,UACZ,SAAWtR,EAAMnT,mBAAmBwpF,EAAKliI,IAAI,MAE/C,MAAM2oH,EAAY,GACduZ,EAAK/kE,IAAI,MACXwrD,EAAUh+G,SAAQ,EAAIkhD,EAAMnT,mBAAmBwpF,EAAKliI,IAAI,OAE1D,IAAI4gJ,EAAW1e,EACf,MAAM+C,EAAU,IAAI7J,EAAYuH,OAIhC,IAHIT,EAAKxgE,OACPujE,EAAQC,IAAIhD,EAAKxgE,OAEZk/E,EAASzjF,IAAI,YAClByjF,EAAWA,EAAS5gJ,IAAI,UAClB4gJ,aAAoBxlB,EAAY2E,QAAS6gB,EAASl/E,QAASujE,EAAQ9nE,IAAIyjF,EAASl/E,UAGlFk/E,EAASl/E,OACXujE,EAAQC,IAAI0b,EAASl/E,OAEnBk/E,EAASzjF,IAAI,MACfwrD,EAAUh+G,SAAQ,EAAIkhD,EAAMnT,mBAAmBkoG,EAAS5gJ,IAAI,OAGhE,OAAO2oH,EAAU38G,KAAK,IACxB,EAEF5N,EAAQo7I,WAAaA,EACrB,MAAMD,EACJ,WAAAr7H,GACE3e,KAAK+hC,MAAQ,EACb/hC,KAAK4X,MAAQ00C,EAAMzW,0BAA0BmK,MAC7ChgD,KAAK8zF,UAAY,CAAC,GAClB9zF,KAAK6jH,uBAAyB,EAC9B7jH,KAAK+jH,qBAAuB,CAC9B,CACA,QAAAs8B,CAASt+G,EAAO0nB,EAAO,CAAC,EAAG,EAAG,EAAG,IAC/B,GAAI1nB,aAAiB85F,EAAYsK,KAC/BnmI,KAAK+hC,MAAQ,OAGf,GAAqB,iBAAVA,EAAoB,CAC7B,GAAIA,EAAQ,EAAG,CACb,MAAM+pC,GAAYriB,EAAK,GAAKA,EAAK,IAAM,EACjCsiB,GAAatiB,EAAK,GAAKA,EAAK,IAAM,EACpCqiB,EAAW,GAAKC,EAAY,IAAMhqC,EAAQ+pC,GAAY/pC,EAAQgqC,MAChE,EAAIzf,EAAMhhD,MAAM,oDAAoDy2B,KACpEA,EAAQ,EAEZ,CACA/hC,KAAK+hC,MAAQA,CACf,CACF,CACA,QAAAu+G,CAAS1oI,GACP,GAAMA,aAAiBikH,EAAYsK,KAGnC,OAAQvuH,EAAMzO,MACZ,IAAK,IACHnJ,KAAK4X,MAAQ00C,EAAMzW,0BAA0BmK,MAC7C,MACF,IAAK,IACHhgD,KAAK4X,MAAQ00C,EAAMzW,0BAA0BoK,OAC7C,MACF,IAAK,IACHjgD,KAAK4X,MAAQ00C,EAAMzW,0BAA0BqK,QAC7C,MACF,IAAK,IACHlgD,KAAK4X,MAAQ00C,EAAMzW,0BAA0BsK,MAC7C,MACF,IAAK,IACHngD,KAAK4X,MAAQ00C,EAAMzW,0BAA0BwH,UAKnD,CACA,YAAAkjG,CAAazsD,EAAWwtD,GAAa,GACnC,GAAI32I,MAAMC,QAAQkpF,IAAcA,EAAUjuF,OAAS,EAAG,CACpD,IAAIiwI,GAAU,EACVyL,GAAW,EACf,UAAWnrI,KAAW09E,EAAW,CAE/B,MADqB19E,GAAW,GACd,CAChB0/H,GAAU,EACV,KACF,CAAW1/H,EAAU,IACnBmrI,GAAW,EAEf,CACIzL,IAAYyL,GACdvhJ,KAAK8zF,UAAYA,EACbwtD,GACFthJ,KAAKsgJ,SAASzkB,EAAYsK,KAAK1lI,IAAI,OAGrCT,KAAK+hC,MAAQ,CAEjB,MAAW+xD,IACT9zF,KAAK+hC,MAAQ,EAEjB,CACA,yBAAAy+G,CAA0Bx8B,GACpBlrE,OAAOC,UAAUirE,KACnBhkH,KAAK6jH,uBAAyBG,EAElC,CACA,uBAAAy8B,CAAwBz8B,GAClBlrE,OAAOC,UAAUirE,KACnBhkH,KAAK+jH,qBAAuBC,EAEhC,EAEFnlH,EAAQm7I,sBAAwBA,EAChC,MAAMD,UAAyBE,EAC7B,WAAAt7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,GACEtuH,EACJ,GAAIsuH,EAAK/kE,IAAI,OAAQ,CACnB,MAAM4jF,EAAS7e,EAAK57B,OAAO,OAC3B/mG,KAAK4kB,KAAK68H,UAAYD,aAAkB3lB,EAAY2C,IAAMgjB,EAAO92I,WAAa,KAC9E,MAAMg3I,EAAK/e,EAAKliI,IAAI,MACpBT,KAAK4kB,KAAK+8H,UAAYD,aAAc7lB,EAAYsK,KAAOub,EAAGv4I,KAAOmjD,EAAMjX,oBAAoBgJ,KAC7F,CACA,IAAIklE,EAAW,KACf,GAAIvjH,KAAK4kB,KAAK+8H,YAAcr1F,EAAMjX,oBAAoB+I,MAAO,CAC3D,MAAM+mB,EAASw9D,EAAKliI,IAAI,OACxBT,KAAK69I,SAAS14E,EAAO1kE,IAAI,MACzBT,KAAK4kB,KAAKu+F,SAAWnjH,KAAK+/I,OAC1B//I,KAAK89I,YAAY34E,EAAO1kE,IAAI,aAC5BT,KAAK4kB,KAAKw+F,YAAcpjH,KAAK8+I,UACxB35E,EAAOvH,IAAI,iBAGd59D,KAAK4hJ,gBAAgBz8E,EAAO1kE,IAAI,iBAChCT,KAAK4kB,KAAKi9H,aAAe7hJ,KAAK6hJ,cAH9B7hJ,KAAK4kB,KAAKi9H,aAAe,KAKtB18E,EAAOvH,IAAI,MAGd59D,KAAK+9I,oBAAoB54E,EAAO1kE,IAAI,MACpCT,KAAK4kB,KAAK6hG,iBAAmBzmH,KAAKymH,kBAHlCzmH,KAAK4kB,KAAK6hG,iBAAmB,KAK/BlD,EAAWp+C,EAAO4hC,OAAO,SACpB5hC,EAAOvH,IAAI,MAGd59D,KAAKukH,SAASp/C,EAAOsgE,SAAS,MAC9BzlI,KAAK4kB,KAAK6vD,MAAQz0E,KAAKy0E,OAHvBz0E,KAAK4kB,KAAK6vD,MAAQ,IAKtB,MACEz0E,KAAK4kB,KAAKu+F,SAAWnjH,KAAK+/I,OAC1B//I,KAAK4hJ,gBAAgBjf,EAAKliI,IAAI,iBAC9BT,KAAK4kB,KAAKi9H,aAAe7hJ,KAAK6hJ,aAC9Bt+B,EAAWof,EAAK57B,OAAO,SAClB47B,EAAK/kE,IAAI,OACZ59D,KAAK4kB,KAAK6vD,MAAQ,MAGtBz0E,KAAK4kB,KAAK2+F,SAAWA,aAAoBsY,EAAY2C,IAAMjb,EAAS74G,WAAa,KAC7Ei4H,EAAK/kE,IAAI,QACX59D,KAAK4kB,KAAKy+F,SAAWyqB,EAAS+H,WAAWiM,kBAAkBnf,EAAKliI,IAAI,OAExE,CACA,eAAAmhJ,CAAgBC,GACd7hJ,KAAK6hJ,aAAuC,iBAAjBA,EAA4BA,EAAe,IACxE,CACA,qBAAAE,EAAsB,KACpB5iB,EAAI,MACJhtH,EAAK,YACLs2E,EAAW,UACXD,EAAS,UACTw5D,EAAS,YACTp5D,EAAW,UACXD,EAAS,eACTs5D,IAEA,IAAI74D,EAAOtwC,OAAOopG,UACd74D,EAAOvwC,OAAOopG,UACd54D,EAAOxwC,OAAOqpG,UACd54D,EAAOzwC,OAAOqpG,UAClB,MAAMp3H,EAAS,CAAC,KACZ5Y,GACF4Y,EAAOnpB,KAAKuQ,GAEVs2E,GACF19D,EAAOnpB,KAAK,GAAG6mF,EAAY,MAAMA,EAAY,MAAMA,EAAY,SAE7DD,GACFz9D,EAAOnpB,KAAK,GAAG4mF,EAAU,MAAMA,EAAU,MAAMA,EAAU,SAE3D,IAAI45D,EAAcpiJ,KAAK4kB,KAAK8gG,WACvB08B,IACHA,EAAc,CAAC,CAAC,CACdhjJ,EAAGY,KAAK6iD,UAAU,GAClB79C,EAAGhF,KAAK6iD,UAAU,IACjB,CACDzjD,EAAGY,KAAK6iD,UAAU,GAClB79C,EAAGhF,KAAK6iD,UAAU,IACjB,CACDzjD,EAAGY,KAAK6iD,UAAU,GAClB79C,EAAGhF,KAAK6iD,UAAU,IACjB,CACDzjD,EAAGY,KAAK6iD,UAAU,GAClB79C,EAAGhF,KAAK6iD,UAAU,OAGtB,UAAWs5C,KAAUimD,EAAa,CAChC,MAAOC,EAAIC,EAAIC,EAAIC,GAAMP,EAAel3H,EAAQoxE,GAChD/S,EAAO3lE,KAAKE,IAAIylE,EAAMi5D,GACtB/4D,EAAO7lE,KAAK6H,IAAIg+D,EAAMg5D,GACtBj5D,EAAO5lE,KAAKE,IAAI0lE,EAAMk5D,GACtBh5D,EAAO9lE,KAAK6H,IAAIi+D,EAAMi5D,EACxB,CACAz3H,EAAOnpB,KAAK,KACZ,MAAM6gJ,EAAW,IAAI5mB,EAAY2E,KAAKrB,GAChCujB,EAAuB,IAAI7mB,EAAY2E,KAAKrB,GAClDujB,EAAqB53H,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,SACzD,MAAMkiJ,EAAmB,IAAIn5C,EAAQ0jC,aAAaniH,EAAOte,KAAK,MAC9Dk2I,EAAiBhgB,KAAO+f,EACxBD,EAAS33H,IAAI,MAAO63H,GACpB,MAAMC,EAAS,IAAI/mB,EAAY2E,KAAKrB,GAChC6iB,GACFY,EAAO93H,IAAI,KAAM+wG,EAAYsK,KAAK1lI,IAAIuhJ,IAEb,iBAAhBp5D,GACTg6D,EAAO93H,IAAI,KAAM89D,GAEM,iBAAdD,GACTi6D,EAAO93H,IAAI,KAAM69D,GAEnB,MAAMk6D,EAAY,IAAIhnB,EAAY2E,KAAKrB,GACvC0jB,EAAU/3H,IAAI,MAAO83H,GACrB,MAAM5T,EAAY,IAAInT,EAAY2E,KAAKrB,GACvC6P,EAAUlkH,IAAI,YAAa+3H,GAC3B7T,EAAUlkH,IAAI,UAAW23H,GACzB,MAAM1B,EAAiB,IAAIllB,EAAY2E,KAAKrB,GAC5C4hB,EAAej2H,IAAI,YAAakkH,GAChC,MAAMj0C,EAAO/6F,KAAK4kB,KAAK6kC,KAAO,CAAC2/B,EAAMC,EAAMC,EAAMC,GACjDw3D,EAAej2H,IAAI,OAAQiwE,GAC3B/6F,KAAKw+I,WAAa,IAAIh1C,EAAQ0jC,aAAa,mBAC3CltI,KAAKw+I,WAAW7b,KAAOoe,EACvB/gJ,KAAKu+I,SAAS38I,KAAK5B,KAAKw+I,WAAYmE,EACtC,CACA,gCAAarF,CAAoBne,EAAMiR,EAAYn9B,EAAc5+F,GAC/D,MAAMs+H,EAAgBvC,EAAWz5G,MAAQwoG,EAAKwB,qBACxCmiB,QAAW9iJ,KAAK+iJ,0BAA0B3S,EAAYjR,EAAM9qH,GAC5D0W,EAAS,GACf,IAAIi4H,EACJ,GAAIF,EAAI,CACN,MAAMG,EAAQ9jB,EAAKwB,qBACnBqiB,EAAiBhjJ,KAAKkjJ,cAAc9S,EAAYjR,EAAM,CACpD8jB,gBAEF,EAAUhnB,EAAQ+T,aAAaiT,EAAOH,EAAI/3H,EAAQo0G,GAClDlsB,EAAarxG,KAAK,CAChB+0B,IAAKssH,EACLr+H,KAAMmG,EAAOte,KAAK,KAEtB,MACEu2I,EAAiBhjJ,KAAKkjJ,cAAc9S,EAAYjR,EAAM,CAAC,GAOzD,OALIrmF,OAAOC,UAAUq3F,EAAW+S,eAC9BH,EAAel4H,IAAI,eAAgBslH,EAAW+S,cAEhDp4H,EAAOllB,OAAS,QAChB,EAAUo2H,EAAQ+T,aAAa2C,EAAeqQ,EAAgBj4H,EAAQo0G,GAC/D,CACLxoG,IAAKg8G,EACL/tH,KAAMmG,EAAOte,KAAK,IAEtB,CACA,qCAAakxI,CAAyB7M,EAAmB3R,EAAMiR,EAAY/7H,GACzE,MAAMyuI,QAAW9iJ,KAAK+iJ,0BAA0B3S,EAAYjR,EAAM9qH,GAC5D2uI,EAAiBhjJ,KAAKkjJ,cAAc9S,EAAYjR,EAAM,CAC1D2jB,OAEIzR,EAAgB,IAAIrxI,KAAKT,UAAUof,YAAY,CACnDgkH,KAAMqgB,EACN7jB,OACA2R,oBACA//E,iBAAkB18C,EAAO08C,mBAK3B,OAHIq/E,EAAWz5G,MACb06G,EAAc16G,IAAM06G,EAAcC,aAAelB,EAAWz5G,KAEvD06G,CACT,EAEFxyI,EAAQk7I,iBAAmBA,EAC3B,MAAMiC,UAAyB/B,EAC7B,WAAAt7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,EAAI,kBACJ2R,GACEz8H,EACEuQ,EAAO5kB,KAAK4kB,KAClB5kB,KAAKm/I,iBAAmB9qI,EAAOksH,gBAC/B37G,EAAKg5F,eAAiBtxD,EAAMlX,eAAeyI,YACpB,IAAnBj5B,EAAKwkG,YACPxkG,EAAKwkG,UAAYppH,KAAKi/I,oBAAoBtc,SAEvB,IAAjB/9G,EAAKygG,UACPzgG,EAAKygG,SAAU,EAAIuW,EAAY8G,gBAAgBvD,EAAMwD,EAAMr2E,EAAMxW,4BAEnE,IAAIw1E,GAAa,EAAIsQ,EAAYkH,wBAAwB,CACvDH,OACA71H,IAAK,IACL24H,UAAU,IAEZ7gH,EAAK0mG,WAAatrH,KAAKojJ,iBAAiB93B,GACxC,MAAMgB,GAAoB,EAAIsP,EAAYkH,wBAAwB,CAChEH,OACA71H,IAAK,KACL24H,UAAU,IAGZ,GADA7gH,EAAK0nG,kBAAoBtsH,KAAKojJ,iBAAiB92B,QAC5B,IAAfhB,GAA4BwlB,EAAkByE,YAAa,CAC7D,MAAMvpI,EAAOhM,KAAK+/I,OAAO/1H,IACrBhe,IACFhM,KAAKqjJ,kBAAmB,EACxBz+H,EAAK0mG,WAAaA,EAAawlB,EAAkByE,YAAYlxE,SAASr4D,GAE1E,MACmB,IAAfs/G,GAAuD,OAA3B1mG,EAAK0nG,oBACnC1nG,EAAK0mG,WAAa1mG,EAAK0nG,mBAEzB1nG,EAAKilG,iBAAkB,EAAIv9D,EAAMnT,mBAAmBwpF,EAAKliI,IAAI,OAAS,IACtET,KAAK2/I,qBAAqBtrI,GAC1BuQ,EAAKymG,gBAAkBrrH,KAAKm/I,uBAAwC,IAApBv6H,EAAK0mG,YAAgD,OAApB1mG,EAAK0mG,WACtF,MAAMvK,GAAY,EAAI6a,EAAYkH,wBAAwB,CACxDH,OACA71H,IAAK,OAEP8X,EAAKm8F,UAAYA,aAAqB8a,EAAYsK,KAAOplB,EAAU53G,KAAO,KAC1E,MAAMm6I,GAAiB,EAAI1nB,EAAYkH,wBAAwB,CAC7DH,OACA71H,IAAK,OAEDy2I,EAAoBzS,EAAkB9R,SAASv+H,IAAI,MACnD+iJ,EAAsBxjJ,KAAKw+I,YAAY7b,KAAKliI,IAAI,aACtDT,KAAKyjJ,gBAAkB,CACrBH,iBACAC,oBACAC,sBACAE,gBAAiB7nB,EAAY2E,KAAKn5H,MAAM,CACtC83H,OACA0I,UAAW,CAACyb,EAAgBE,EAAqBD,GACjDzb,eAAe,KAGnBljH,EAAK++H,YAAa,EAAI/nB,EAAYkH,wBAAwB,CACxDH,OACA71H,IAAK,SAEFgsC,OAAOC,UAAUn0B,EAAK++H,aAAe/+H,EAAK++H,WAAa,KAC1D/+H,EAAK++H,WAAa,GAEpB/+H,EAAKwnG,SAAWpsH,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBiJ,UAC5D95B,EAAKqgG,SAAWjlH,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBqJ,UAC5Dl6B,EAAKuuB,OAASnzC,KAAKo/I,SAASx6H,EAAKi6H,gBAAiBvyF,EAAM9W,eAAe8I,SAAWt+C,KAAKo/I,SAASx6H,EAAKi6H,gBAAiBvyF,EAAM9W,eAAeiJ,OAC7I,CACA,gBAAA2kG,CAAiBS,GACf,OAAIl5I,MAAMC,QAAQi5I,GACTA,EAAU39I,QAAOgN,GAAwB,iBAATA,IAAmBjL,KAAIiL,IAAA,EAAYo5C,EAAMnT,mBAAmBjmC,KAC1F2wI,aAAqBhoB,EAAYsK,MAC1C,EAAW75E,EAAMnT,mBAAmB0qG,EAAU16I,MAChB,iBAAd06I,GAChB,EAAWv3F,EAAMnT,mBAAmB0qG,GAE/B,IACT,CACA,YAAAD,CAAavE,GACX,SAAUr/I,KAAK4kB,KAAK++H,WAAatE,EACnC,CACA,WAAAC,CAAYzyC,GACV,OAAQ7sG,KAAKo/I,SAASvyC,EAAOvgD,EAAM9W,eAAe2G,UACpD,CACA,YAAAy1F,CAAa79E,EAAmB6uD,GAC9B,OAAIA,EACK5iH,KAAKsyI,SAEP7qF,MAAMmqF,aAAa79E,EAAmB6uD,KAAiB5iH,KAAKo/I,SAASp/I,KAAK6sG,MAAOvgD,EAAM9W,eAAeiJ,OAC/G,CACA,iBAAAslF,CAAkBhwE,GAChB,IAAIoD,EAAWpD,GAAmBtzD,IAAIT,KAAK4kB,KAAKhP,KAAKuhD,SAIrD,QAHiB,IAAbA,IACFA,EAAWn3D,KAAKm3D,UAED,IAAbA,EACF,OAAO7K,EAAM1X,gBAEf,MAAM7S,EAAQ/hC,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAC3CxnB,EAASjiC,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAClD,SAAWmyE,EAAYmI,mBAAmB5sE,EAAUp1B,EAAOE,EAC7D,CACA,iCAAA6hH,CAAkC/vF,GAChC,IAAIoD,EAAWpD,GAAmBtzD,IAAIT,KAAK4kB,KAAKhP,KAAKuhD,SAIrD,QAHiB,IAAbA,IACFA,EAAWn3D,KAAKm3D,WAEbn3D,KAAKgiG,kBAAoBhiG,KAAKmkH,YACjC,MAAO,GAET,MAAMpiF,EAAQ/hC,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAC3CxnB,EAASjiC,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAC5CA,EAAoB,IAAb0N,GAA+B,MAAbA,EAAmB,OAAOp1B,KAASE,OAAc,OAAOA,KAAUF,OACjG,IAAI/X,EAAM,GAQV,OAPIhqB,KAAKgiG,kBACPh4E,EAAM,IAAG,EAAImwH,EAAoB4J,aAAa/jJ,KAAKgiG,iBAAiB,MAASv4C,QAE3EzpD,KAAKmkH,cAEPn6F,GAAO,GADahqB,KAAK0jH,YAAY3hF,OAAS,QACnB,EAAIo4G,EAAoB4J,aAAa/jJ,KAAKmkH,aAAa,MAAU16D,QAEvFz/B,CACT,CACA,qBAAMkwC,CAAgBijF,EAAWnvF,EAAM0J,EAAQkrD,EAAa7uD,GAC1D,GAAI6uD,KAAiB5iH,gBAAgB+7I,KAA+B/7I,KAAK4kB,KAAK6sG,SAAWzxH,KAAK4kB,KAAK82E,aACjG,MAAO,CACLgZ,OAAQ,IAAIi5B,EAAeuD,aAC3BW,cAAc,EACdC,gBAAgB,GAGpB,IAAK9xI,KAAKgkJ,SACR,OAAOv8F,MAAMyS,gBAAgBijF,EAAWnvF,EAAM0J,EAAQkrD,EAAa7uD,GAErE,MAAMznC,QAAgBtsB,KAAKikJ,eAAe9G,EAAWnvF,EAAM0J,EAAQ3D,GACnE,GAAI/zD,KAAKw+I,YAA0B,OAAZlyH,EACrB,OAAOm7B,MAAMyS,gBAAgBijF,EAAWnvF,EAAM0J,EAAQkrD,EAAa7uD,GAErE,MAAM2gD,EAAS,IAAIi5B,EAAeuD,aAClC,IAAKlxI,KAAK6/I,oBAAkC,OAAZvzH,EAC9B,MAAO,CACLooF,SACAm9B,cAAc,EACdC,gBAAgB,GAGpB,MAAMgP,KAAsB9gJ,KAAK4kB,KAAK82E,cAAgBhkC,EAASpL,EAAMvY,oBAAoBmG,SAEnF6gD,EAAO,CAAC,EAAG,EAAG/6F,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAAIzpD,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,IACxFnH,EAAY64F,EAAmBn7I,KAAK4kB,KAAK6kC,KAAMsxC,EAFtC,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,IAG/B,IAAIimD,EACAhhJ,KAAK6gJ,KACPG,QAAwB7D,EAAU8D,wBAAwBjhJ,KAAK6gJ,GAAI,YAE7C,IAApBG,GACFtsC,EAAOwsC,MAAM50F,EAAMjY,IAAI2R,wBAAyB,CAAC,KAAMg7F,IAEzDtsC,EAAOwsC,MAAM50F,EAAMjY,IAAImS,gBAAiB,CAACxmD,KAAK4kB,KAAKhP,GAAI5V,KAAK4kB,KAAK6kC,KAAMnH,EAAWtiD,KAAK+jI,kBAAkBhwE,GAAoB+sF,IAC7H,MAAMr7C,EAAS,IAAI+D,EAAQ0jC,aAAa5gH,GAWxC,aAVM6wH,EAAUjjF,gBAAgB,CAC9BurC,SACAz3C,OACAghF,UAAWhvI,KAAKyjJ,gBAAgBC,gBAChC5qF,aAAc47C,IAEhBA,EAAOwsC,MAAM50F,EAAMjY,IAAIoS,cAAe,SACd,IAApBu6F,GACFtsC,EAAOwsC,MAAM50F,EAAMjY,IAAI4R,iBAAkB,IAEpC,CACLyuD,SACAm9B,cAAc,EACdC,eAAgBgP,EAEpB,CACA,UAAAoD,CAAW/sF,GACT,MAAMgpF,EAAK,IAAItkB,EAAY2E,KAAK,MAUhC,OATIrpE,GACFgpF,EAAGr1H,IAAI,IAAKqsC,GAEVn3D,KAAKmkH,aACPg8B,EAAGr1H,IAAI,KAAMmwH,EAAiBj7I,KAAKmkH,cAEjCnkH,KAAKgiG,iBACPm+C,EAAGr1H,IAAI,KAAMmwH,EAAiBj7I,KAAKgiG,kBAE9Bm+C,EAAGpzH,KAAO,EAAIozH,EAAK,IAC5B,CACA,cAAAgE,CAAepwF,EAAmB4uE,GAAO,CACzC,UAAMvgF,CAAK+6F,EAAWnvF,EAAM+F,GAC1B,MAAMqwF,EAAerwF,GAAmBtzD,IAAIT,KAAK4kB,KAAKhP,IACtD,IAAIzV,EAAQikJ,GAAcjkJ,MACxBg3D,EAAWitF,GAAcjtF,SAC3B,GAAIh3D,IAAUH,KAAK4kB,KAAK0mG,iBAAwB,IAAVnrH,EAAqB,CACzD,IAAKH,KAAKqjJ,uBAAiC,IAAblsF,EAC5B,OAAO,KAETh3D,IAAUH,KAAK4kB,KAAK0mG,UACtB,CACA,QAAiB,IAAbn0D,IAA2Bn3D,KAAKqjJ,kBAAoB14I,MAAMC,QAAQzK,IAAUwK,MAAMC,QAAQ5K,KAAK4kB,KAAK0mG,aAAenrH,EAAM0F,SAAW7F,KAAK4kB,KAAK0mG,WAAWzlH,QAAU1F,EAAMg4B,OAAM,CAAC/4B,EAAGyJ,IAAMzJ,IAAMY,KAAK4kB,KAAK0mG,WAAWziH,KACtN,OAAO,UAEQ,IAAbsuD,IACFA,EAAWn3D,KAAKm3D,UAElB,IAAIqnF,EAAa,KACjB,IAAKx+I,KAAKm/I,mBACRX,QAAmBx+I,KAAKikJ,eAAe9G,EAAWnvF,EAAM1B,EAAMvY,oBAAoBqG,KAAM2Z,GACrE,OAAfyqF,GACF,OAAO,KAGX,IAAIje,GAAkB,EAClBie,GAAYje,kBACdA,GAAkB,EAClBie,EAAa,MAEf,MAAM,KACJrf,GACEge,EACEkH,EAAellB,EAAKwU,WAAW3zI,KAAK22B,KAC1C,KAAM0tH,aAAwBxoB,EAAY2E,MACxC,OAAO,KAET,MAAMmC,EAAO,IAAI9G,EAAY2E,KAAKrB,GAClC,UAAWryH,KAAOu3I,EAAaphB,UACjB,OAARn2H,GACF61H,EAAK73G,IAAIhe,EAAKu3I,EAAat9C,OAAOj6F,IAGtC,MAAM8tD,EAAM,CACV5uD,KAAMhM,KAAK4kB,KAAKwkG,UAChBjpH,SAEImkJ,EAAUj5H,IACd,EAAWuwG,EAAYoI,SAAS34G,GAAOA,GAAM,EAAIuwG,EAAYkJ,qBAAqBz5G,GAAK,GAEzFs3G,EAAK73G,IAAI,IAAKngB,MAAMC,QAAQzK,GAASA,EAAM8H,IAAIq8I,GAAWA,EAAQnkJ,IAClEH,KAAKmkJ,eAAepwF,EAAmB4uE,GACvC,MAAM4hB,EAAUvkJ,KAAKkkJ,WAAW/sF,GAC5BotF,GACF5hB,EAAK73G,IAAI,KAAMy5H,GAEjB,MAAMx5H,EAAS,GACTy5H,EAAU,CAAC,CACf7tH,IAAK32B,KAAK22B,IACV/R,KAAM,GACNg2C,MACA2lE,oBAEF,GAAmB,OAAfie,EAAqB,CACvB,MAAMvd,EAAS9B,EAAKwB,qBACd8jB,EAAK,IAAI5oB,EAAY2E,KAAKrB,GAChCwD,EAAK73G,IAAI,KAAM25H,GACfA,EAAG35H,IAAI,IAAKm2G,GACZ,MAAM+N,EAAYhvI,KAAK0kJ,uBAAuBvlB,GACxCwjB,EAAmB,IAAIn5C,EAAQ0jC,aAAasR,GAC5CuC,EAAiB4B,EAAiBhgB,KAAO,IAAI9G,EAAY2E,KAAKrB,GACpE4hB,EAAej2H,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,SACnDsgJ,EAAej2H,IAAI,YAAakkH,GAChC+R,EAAej2H,IAAI,OAAQ,CAAC,EAAG,EAAG9qB,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAAIzpD,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,KAC5G,MAAM+lB,EAAiBxvE,KAAK+jI,kBAAkBhwE,GAC1Cyb,IAAmBljB,EAAM1X,iBAC3BmsG,EAAej2H,IAAI,SAAU0kD,SAE/B,EAAUysD,EAAQ+T,aAAa/O,EAAQ0hB,EAAkB53H,EAAQo0G,GACjEqlB,EAAQ5iJ,KAAK,CACX+0B,IAAKsqG,EACLr8G,KAAMmG,EAAOte,KAAK,IAClBmuD,IAAK,KACL2lE,iBAAiB,IAEnBx1G,EAAOllB,OAAS,CAClB,CAIA,OAHA88H,EAAK73G,IAAI,IAAK,MAAK,EAAIwhC,EAAMzV,gCAC7B,EAAUolF,EAAQ+T,aAAahwI,KAAK22B,IAAKgsG,EAAM53G,EAAQo0G,GACvDqlB,EAAQ,GAAG5/H,KAAOmG,EAAOte,KAAK,IACvB+3I,CACT,CACA,oBAAMP,CAAe9G,EAAWnvF,EAAM0J,EAAQ3D,GAE5C,GADmB/zD,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBwJ,UAE7D,OAAO,KAET,MAAMmlG,EAAerwF,GAAmBtzD,IAAIT,KAAK4kB,KAAKhP,IACtD,IAAIzV,EAAOg3D,EAKX,GAJIitF,IACFjkJ,EAAQikJ,EAAax4B,gBAAkBw4B,EAAajkJ,MACpDg3D,EAAWitF,EAAajtF,eAET,IAAbA,QAAoC,IAAVh3D,IAAwBH,KAAKm/I,oBACpDn/I,KAAKqjJ,kBAAoBrjJ,KAAKw+I,YACjC,OAAO,KAGX,MAAMlqE,EAASt0E,KAAK8jJ,kCAAkC/vF,GACtD,QAAc,IAAV5zD,IACFA,EAAQH,KAAK4kB,KAAK0mG,YACbnrH,GACH,MAAO,aAAam0E,SAQxB,GALI3pE,MAAMC,QAAQzK,IAA2B,IAAjBA,EAAM0F,SAChC1F,EAAQA,EAAM,KAEhB,EAAImsD,EAAMtW,QAAyB,iBAAV71C,EAAoB,oCAC7CA,EAAQA,EAAM8L,OACVjM,KAAK4kB,KAAKopG,MAAO,CACnB,MAAMG,EAASnuH,KAAK4kB,KAAKzG,QAAQg1H,MAAK,EACpCnsB,iBACI7mH,IAAU6mH,IAChB7mH,EAAQguH,GAAQG,cAAgBnuH,CAClC,CACA,GAAc,KAAVA,EACF,MAAO,aAAam0E,cAEL,IAAbnd,IACFA,EAAWn3D,KAAKm3D,UAElB,IACIrpD,EADA62I,GAAa,EAEb3kJ,KAAK4kB,KAAKqmG,WACZn9G,EAAQ3N,EAAMe,MAAM,YAAY+G,KAAI5G,GAAQA,EAAKq3C,UAAU,SAC3DisG,EAAY72I,EAAMjI,QAElBiI,EAAQ,CAAC3N,EAAM+L,QAAQ,WAAY,IAAIwsC,UAAU,QAInD,IAAIksG,EAAc5kJ,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GACjDo7F,EAAa7kJ,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GACnC,KAAb0N,GAAgC,MAAbA,KACpB0tF,EAAYD,GAAe,CAACA,EAAaC,IAEvC7kJ,KAAK6/I,qBACR7/I,KAAK4kB,KAAK26F,uBAAwB,EAAI46B,EAAoB2F,wBAAwB9/I,KAAK6/I,mBAAqB,wBAE9G,IACID,EAAmBj4D,EAAUujC,EAD7B1pD,QAAaw6E,EAAiB8I,aAAa3H,EAAWnvF,EAAMhuD,KAAK4kB,KAAK26F,sBAAuBv/G,KAAKyjJ,gBAAgBC,iBAEtH,MAAMqB,EAAe,GACrB,IAAIC,GAAgB,EACpB,UAAW3jJ,KAAQyM,EAAO,CACxB,MAAMm3I,EAAgBzjF,EAAK0jF,aAAa7jJ,GACpC4jJ,EAAcp/I,OAAS,IACzBm/I,GAAgB,GAElBD,EAAanjJ,KAAKqjJ,EAAcx4I,KAAK,IACvC,CACA,GAAIu4I,GAAiBttF,EAASpL,EAAMvY,oBAAoBqG,KACtD,MAAO,CACLmmF,iBAAiB,GAGrB,GAAIykB,GAAiBhlJ,KAAKu6G,4BAA6B,CACrD,MAAM51B,EAAa3kF,KAAK4kB,KAAKinG,KAAO,YAAc,aAC5Cs5B,EAAkB,IAAIhL,EAAoBiL,gBAAgBjI,EAAUhe,KAAMx6C,GAC1EqqD,EAAYmW,EAAgBE,oBAAoBv3I,EAAMrB,KAAK,KAC3D64I,EAAUtW,EAAUjoC,OAAO,QACjC,GAAI/mG,KAAKyjJ,gBAAgBC,gBAAgB9lF,IAAI,QAAS,CACpD,MAAM2nF,EAAUvlJ,KAAKyjJ,gBAAgBC,gBAAgBjjJ,IAAI,QACzD,UAAWqM,KAAOw4I,EAAQriB,UACxBsiB,EAAQz6H,IAAIhe,EAAKw4I,EAAQv+C,OAAOj6F,GAEpC,MACE9M,KAAKyjJ,gBAAgBC,gBAAgB54H,IAAI,OAAQw6H,GAEnD,MAAM3rC,EAAWwrC,EAAgBxrC,SAASxwG,KAC1Cq4D,QAAaw6E,EAAiB8I,aAAa3H,EAAWnvF,EAAM,CAC1D2rD,WACAhyB,SAAU,GACTqnD,GACH,QAASnmI,EAAI,EAAGovC,EAAK8sG,EAAal/I,OAAQgD,EAAIovC,EAAIpvC,IAChDk8I,EAAal8I,IAAK,EAAI+yH,EAAYkJ,qBAAqBh3H,EAAMjF,IAE/D,MAAM28I,EAAyBlmJ,OAAO0P,OAAO1P,OAAO4D,OAAO,MAAOlD,KAAK4kB,KAAK26F,uBAC5Ev/G,KAAK4kB,KAAK26F,sBAAsB53B,SAAW,EAC3C3nF,KAAK4kB,KAAK26F,sBAAsB5F,SAAWA,GAC1CimC,EAAmBj4D,EAAUujC,GAAclrH,KAAKylJ,iBAAiBb,EAAc,EAAoBC,EAAa,EAAqB1kJ,EAAOqhE,EAAMmjF,GACnJ3kJ,KAAK4kB,KAAK26F,sBAAwBimC,CACpC,MACOxlJ,KAAKu6G,8BACR,EAAIjuD,EAAMhhD,MAAM,2FAEjBs0I,EAAmBj4D,EAAUujC,GAAclrH,KAAKylJ,iBAAiBb,EAAc,EAAoBC,EAAa,EAAqB1kJ,EAAOqhE,EAAMmjF,GAErJ,IAAIzqC,EAAU14C,EAAK04C,QAEjBA,EADE7nD,MAAM6nD,GACE5tD,EAAMnX,gBAAkB+1E,EAExBznG,KAAK6H,IAAIghC,EAAMnX,gBAAkB+1E,EAAYznG,KAAKunC,IAAIkvD,GAAWvyB,GAE7E,MAAM+9D,EAAkBjiI,KAAKE,IAAIF,KAAKi0B,OAAOktG,EAAcj9D,GAAY,GAhEhD,GAiEjBg+D,EAAY3lJ,KAAK4kB,KAAKumG,cAC5B,GAAInrH,KAAK4kB,KAAKqmG,UACZ,OAAOjrH,KAAK4lJ,wBAAwBhG,EAAmBmF,EAAcvjF,EAAMmmB,EAAUk9D,EAAYD,EAAae,EAlExF,EAkEoHD,EAAiBxrC,EAASgR,EAAYn3D,GAElL,GAAI/zD,KAAK4kB,KAAKinG,KACZ,OAAO7rH,KAAK6lJ,mBAAmBjG,EAAmBp+E,EAAMujF,EAAa,GAAIp9D,EAAUk9D,EAAYD,EArEzE,EAqEuGc,EAAiBxrC,EAASgR,EAAYn3D,GAErK,MAAM+xF,EAAgBJ,EAAkBxrC,EACxC,OAAkB,IAAdyrC,GAAmBA,EAAY,EAC1B,aAAarxE,OAAcsrE,EAAoB,aAAY,EAAIhkB,EAAYwI,gBAzE5D,OAyEgG,EAAIxI,EAAYwI,gBAAgB0hB,WAAsB,EAAIlqB,EAAY+H,cAAcohB,EAAa,mBAMlN,aAAazwE,OAAcsrE,EAAoB,mBADjC5/I,KAAK+lJ,YAAYhB,EAAa,GAAIvjF,EAAMmmB,EAAUk9D,EAAYc,EAHlE,CACf/8I,MAAO,GA5Ee,EA8EiGk9I,aAE3H,CACA,yBAAahB,CAAa3H,EAAWnvF,EAAMg4F,EAAgBhX,GACzD,MAAMl2E,EAAe,IAAI60E,EAAeuD,aAClCoF,EAAe,CACnB90E,KAAM,KACN,KAAAz7D,GACE,OAAO/F,IACT,IAEI,SACJ25G,EAAQ,SACRhyB,GACEq+D,EAEJ,aADM7I,EAAU3G,cAAcxH,EAAW,CAACr1B,GAAYkiB,EAAYsK,KAAK1lI,IAAIk5G,GAAWhyB,GAAW,KAAM7uB,EAAc9K,EAAMsoF,EAAc,MAClIA,EAAa90E,IACtB,CACA,aAAAykF,CAAchvI,EAAMuqD,GAClB,OAAOA,EAAK0kF,cAAcjvI,GAAM9V,QAAO,CAAC4gC,EAAO22D,IAAU32D,EAAQ22D,EAAM32D,OAAO,GAAK,GACrF,CACA,gBAAA0jH,CAAiBxjH,EAAQF,EAAO9qB,EAAMuqD,EAAMmjF,GAC1C,IAAI,SACFh9D,GACE3nF,KAAK4kB,KAAK26F,sBACV2L,GAAcvjC,GAAY,IAAMr7B,EAAM9X,YACxC2xG,EAAgB1iI,KAAKonD,MAAM5oC,EAASipF,GACtC,IAAKvjC,EAAU,CACb,MAAMy+D,EAAqBhnJ,GAAKqkB,KAAKi0B,MAAU,IAAJt4C,GAAW,IACtD,IAAmB,IAAfulJ,EAAkB,CACpB,MAAM0B,EAAYrmJ,KAAKimJ,cAAchvI,EAAMuqD,GAC3CmmB,EAAWy+D,EAAmB3iI,KAAKE,IAAIse,EAASqqB,EAAM9X,YAAa6xG,EAAYtkH,EAAQA,EAAQskH,EAAYl8D,MAC3Gg8D,EAAgB,CAClB,KAAO,CACL,MAAMr4I,EAAQmJ,EAAK/V,MAAM,YACnBolJ,EAAc,GACpB,UAAWjlJ,KAAQyM,EAAO,CACxB,MAAMy4I,EAAU/kF,EAAK0jF,aAAa7jJ,GAAMoL,KAAK,IACvCqrF,EAASt2B,EAAK0kF,cAAcK,GAC5BxpD,EAAYv7B,EAAKglF,iBAAiBD,GACxCD,EAAY1kJ,KAAK,CACfP,KAAMklJ,EACNzuD,SACAiF,aAEJ,CACA,MAAM0pD,EAAWC,IACf,IAAI9B,EAAc,EAClB,UAAW1+D,KAASogE,EAGlB,GADA1B,GADe5kJ,KAAK2mJ,WAAW,KAAMnlF,EAAMklF,EAAO3kH,EAAOmkD,GACnCrgF,OAAS6gJ,EAC3B9B,EAAc3iH,EAChB,OAAO,EAGX,OAAO,CAAK,EAGd,IADAkkH,EAAgB1iI,KAAK6H,IAAI66H,EAAexB,GAEtCz5B,EAAajpF,EAASkkH,EACtBx+D,EAAWy+D,EAAmBl7B,EAAa5+D,EAAM9X,aAC7CiyG,EAAS9+D,IACXw+D,GAKN,CACA,MAAM,SACJxsC,EAAQ,UACR6F,GACEx/G,KAAK4kB,KAAK26F,sBACdv/G,KAAK6/I,oBAAqB,EAAI1F,EAAoByM,yBAAyB,CACzEj/D,WACAgyB,WACA6F,aAEJ,CACA,MAAO,CAACx/G,KAAK6/I,mBAAoBl4D,EAAU1lD,EAASkkH,EACtD,CACA,WAAAJ,CAAY9uI,EAAMuqD,EAAMmmB,EAAUk9D,EAAYc,EAAWkB,EAAUC,EAAUC,GAC3E,IAAIn+I,EAGFA,EAFgB,IAAd+8I,GAEOd,EADK7kJ,KAAKimJ,cAAchvI,EAAMuqD,GAAQmmB,GAChB,EACR,IAAdg+D,EAEDd,EADM7kJ,KAAKimJ,cAAchvI,EAAMuqD,GAAQmmB,EAClBm/D,EAErBA,EAEV,MAAME,GAAW,EAAIprB,EAAYwI,gBAAgBx7H,EAAQi+I,EAASj+I,OAGlE,OAFAi+I,EAASj+I,MAAQA,EAEV,GAAGo+I,KADVD,GAAA,EAAenrB,EAAYwI,gBAAgB2iB,WACL,EAAInrB,EAAY+H,cAAc1sH,QACtE,CACA,sBAAAytI,CAAuBvlB,GACrB,MAAM,eACJmkB,EAAc,oBACdE,EAAmB,kBACnBD,GACEvjJ,KAAKyjJ,gBACH9pC,EAAW35G,KAAK4kB,KAAK26F,uBAAuB5F,SAClD,IAAKA,EACH,OAAO2pC,GAAkBznB,EAAY2E,KAAKmH,MAE5C,UAAWqH,IAAa,CAACsU,EAAgBE,GACvC,GAAIxU,aAAqBnT,EAAY2E,KAAM,CACzC,MAAMymB,EAAYjY,EAAUvuI,IAAI,QAChC,GAAIwmJ,aAAqBprB,EAAY2E,MAAQymB,EAAUrpF,IAAI+7C,GACzD,OAAOq1B,CAEX,CAEF,GAAIuU,aAA6B1nB,EAAY2E,KAAM,CACjD,MAAM0mB,EAAe3D,EAAkB9iJ,IAAI,QAC3C,GAAIymJ,aAAwBrrB,EAAY2E,MAAQ0mB,EAAatpF,IAAI+7C,GAAW,CAC1E,MAAMwtC,EAAc,IAAItrB,EAAY2E,KAAKrB,GACzCgoB,EAAYr8H,IAAI6uF,EAAUutC,EAAangD,OAAO4S,IAC9C,MAAMytC,EAAmB,IAAIvrB,EAAY2E,KAAKrB,GAE9C,OADAioB,EAAiBt8H,IAAI,OAAQq8H,GACtBtrB,EAAY2E,KAAKn5H,MAAM,CAC5B83H,OACA0I,UAAW,CAACuf,EAAkB9D,GAC9Bxb,eAAe,GAEnB,CACF,CACA,OAAOwb,GAAkBznB,EAAY2E,KAAKmH,KAC5C,CACA,cAAAkM,GACE,OAAO,IACT,EAEF,MAAM+H,UAA6BI,EACjC,WAAAr9H,CAAYtK,GACVozC,MAAMpzC,GACNrU,KAAK4kB,KAAK82E,aAAe17F,KAAK4kB,KAAKwnG,WAAapsH,KAAK4kB,KAAK6sG,OAC1DzxH,KAAKgkJ,UAAW,EAChB,MAAMrhB,EAAOtuH,EAAOsuH,KACgB,iBAAzB3iI,KAAK4kB,KAAK0mG,aACnBtrH,KAAK4kB,KAAK0mG,WAAa,IAEzB,IAAIq6B,GAAY,EAAI/pB,EAAYkH,wBAAwB,CACtDH,OACA71H,IAAK,QAEFgsC,OAAOC,UAAU4sG,IAAcA,EAAY,GAAKA,EAAY,KAC/DA,EAAY,MAEd3lJ,KAAK4kB,KAAKumG,cAAgBw6B,EAC1B,IAAI0B,GAAgB,EAAIzrB,EAAYkH,wBAAwB,CAC1DH,OACA71H,IAAK,aAEFgsC,OAAOC,UAAUsuG,IAAkBA,EAAgB,KACtDA,EAAgB,GAElBrnJ,KAAK4kB,KAAK6mG,OAAS47B,EACnBrnJ,KAAK4kB,KAAKqmG,UAAYjrH,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBuJ,WAClEh/C,KAAK4kB,KAAKinG,KAAO7rH,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBmK,QAAU5/C,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBuJ,aAAeh/C,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBwJ,YAAcj/C,KAAK4jJ,aAAat3F,EAAM7W,oBAAoB+J,aAAoC,IAArBx/C,KAAK4kB,KAAK6mG,OACjQzrH,KAAK4kB,KAAKqnG,YAAcjsH,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBkK,YACtE,CACA,kBAAI6yF,GACF,QAASxyI,KAAKw+I,aAAex+I,KAAKm/I,gBACpC,CACA,kBAAA0G,CAAmBjG,EAAmBp+E,EAAMvqD,EAAM0wE,EAAU5lD,EAAOE,EAAQ6kH,EAAUC,EAAU7sC,EAASgR,EAAYn3D,GAClH,MAAMo5D,EAAYprF,EAAQ/hC,KAAK4kB,KAAK6mG,OAC9Bn3C,EAASt0E,KAAK8jJ,kCAAkC/vF,GAChDvc,EAAM,GACNulD,EAAYv7B,EAAKglF,iBAAiBvvI,GACxC,UAAYqL,EAAOvU,KAAQgvF,EACzBvlD,EAAI51C,KAAK,KAAI,EAAIg6H,EAAY+H,cAAc1sH,EAAKsS,UAAUjH,EAAOvU,WAEnE,MAAMu5I,EAAe9vG,EAAI/qC,KAAK,KAAI,EAAImvH,EAAYwI,gBAAgBjX,YAClE,MAAO,aAAa74C,OAAcsrE,EAAoB,aAAY,EAAIhkB,EAAYwI,gBAAgB0iB,OAAa,EAAIlrB,EAAYwI,gBAAgB2iB,EAAW7sC,SAAeotC,YAC3K,CACA,uBAAA1B,CAAwBhG,EAAmB9xI,EAAO0zD,EAAMmmB,EAAU5lD,EAAOE,EAAQ0jH,EAAWmB,EAAUC,EAAU7sC,EAASgR,EAAYn3D,GACnI,MAAMvc,EAAM,GACNqtG,EAAa9iH,EAAQ,EAAI+kH,EACzBD,EAAW,CACfj+I,MAAO,GAET,QAASC,EAAI,EAAGovC,EAAKnqC,EAAMjI,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC9C,MAAMxH,EAAOyM,EAAMjF,GACb8hI,EAAS3qI,KAAK2mJ,WAAWtlJ,EAAMmgE,EAAMmmB,EAAUk9D,GACrD,QAASh7H,EAAI,EAAGu6E,EAAKumC,EAAO9kI,OAAQgkB,EAAIu6E,EAAIv6E,IAAK,CAC/C,MAAM29B,EAAQmjF,EAAO9gH,GACf09H,EAAe,IAAN1+I,GAAiB,IAANghB,GAAWk9H,GAAY77B,EAAahR,IAAYgR,EAC1E1zE,EAAI51C,KAAK5B,KAAK+lJ,YAAYv+F,EAAOga,EAAMmmB,EAAU5lD,EAAO4jH,EAAWkB,EAAUC,EAAUS,GACzF,CACF,CACA,MAAMjzE,EAASt0E,KAAK8jJ,kCAAkC/vF,GAChDyzF,EAAehwG,EAAI/qC,KAAK,MAC9B,MAAO,aAAa6nE,OAAcsrE,EAAoB,eAAc,EAAIhkB,EAAYwI,gBAAgBniG,SAAculH,YACpH,CACA,UAAAb,CAAWtlJ,EAAMmgE,EAAMmmB,EAAU5lD,EAAOmkD,EAAQ,CAAC,GAC/C7kF,EAAO6kF,EAAM7kF,MAAQA,EACrB,MAAMy2F,EAAS5R,EAAM4R,QAAUt2B,EAAK0kF,cAAc7kJ,GAClD,GAAIy2F,EAAOjyF,QAAU,EACnB,MAAO,CAACxE,GAEV,MAAM07F,EAAY7W,EAAM6W,WAAav7B,EAAKglF,iBAAiBnlJ,GACrD61D,EAAQywB,EAAW,IACnBgjD,EAAS,GACf,IAAI8c,GAA6B,EAC/BC,GAA2B,EAC3BC,GAAgB,EAChBC,EAAa,EACbC,EAAe,EACjB,QAASh/I,EAAI,EAAGovC,EAAK6/C,EAAOjyF,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC/C,MAAOyZ,EAAOvU,GAAOgvF,EAAUl0F,GACzB6vF,EAAQZ,EAAOjvF,GACfi/I,EAAapvD,EAAM32D,MAAQm1B,EACX,MAAlBwhC,EAAMC,QACJkvD,EAAeC,EAAa/lH,GAC9B4oG,EAAO/oI,KAAKP,EAAKkoB,UAAUq+H,EAAYtlI,IACvCslI,EAAatlI,EACbulI,EAAeC,EACfL,GAA6B,EAC7BE,GAAgB,IAEhBE,GAAgBC,EAChBL,EAA4BnlI,EAC5BolI,EAA0B35I,EAC1B45I,EAAe9+I,GAERg/I,EAAeC,EAAa/lH,GACF,IAA/B0lH,GACF9c,EAAO/oI,KAAKP,EAAKkoB,UAAUq+H,EAAYF,IACvCE,EAAaF,EACb7+I,EAAI8+I,EAAe,EACnBF,GAA6B,EAC7BI,EAAe,IAEfld,EAAO/oI,KAAKP,EAAKkoB,UAAUq+H,EAAYtlI,IACvCslI,EAAatlI,EACbulI,EAAeC,GAGjBD,GAAgBC,CAEpB,CAIA,OAHIF,EAAavmJ,EAAKwE,QACpB8kI,EAAO/oI,KAAKP,EAAKkoB,UAAUq+H,EAAYvmJ,EAAKwE,SAEvC8kI,CACT,CACA,cAAAkJ,GACE,MAAO,CACLj+H,GAAI5V,KAAK4kB,KAAKhP,GACdzV,MAAOH,KAAK4kB,KAAK0mG,WACjBprF,aAAclgC,KAAK4kB,KAAK0nG,mBAAqB,GAC7Cy7B,UAAW/nJ,KAAK4kB,KAAKqmG,UACrB38D,SAAUtuD,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBwJ,UACtDysE,UAAW1rH,KAAK4kB,KAAK6mG,OACrBI,KAAM7rH,KAAK4kB,KAAKinG,KAChB5O,UAAWj9G,KAAK4kB,KAAKwnG,SACrBj5E,OAAQnzC,KAAK4kB,KAAKuuB,OAClBhqC,KAAMnJ,KAAK4kB,KAAKwkG,UAChB3/D,KAAMzpD,KAAK4kB,KAAK6kC,KAChB47D,QAASrlH,KAAK4kB,KAAKygG,QACnBvlD,KAAM9/D,KAAK4kB,KAAKsxC,UAChBuyB,YAAazoF,KAAK4kB,KAAKu/F,YACvB37B,UAAWxoF,KAAK4kB,KAAKo9E,gBACrB7qC,SAAUn3D,KAAKm3D,SACfpqD,KAAM,OAEV,EAEF,MAAM8uI,UAA+BG,EACnC,WAAAr9H,CAAYtK,GACVozC,MAAMpzC,GACNrU,KAAKgoJ,kBAAoB,KACzBhoJ,KAAKioJ,oBAAsB,KAC3BjoJ,KAAK4kB,KAAKu8F,UAAYnhH,KAAK4jJ,aAAat3F,EAAM7W,oBAAoB0J,SAAWn/C,KAAK4jJ,aAAat3F,EAAM7W,oBAAoB2J,YACzHp/C,KAAK4kB,KAAKq8F,YAAcjhH,KAAK4jJ,aAAat3F,EAAM7W,oBAAoB0J,SAAWn/C,KAAK4jJ,aAAat3F,EAAM7W,oBAAoB2J,YAC3Hp/C,KAAK4kB,KAAKsjI,WAAaloJ,KAAK4jJ,aAAat3F,EAAM7W,oBAAoB2J,YACnEp/C,KAAK4kB,KAAK6iG,eAAgB,EACtBznH,KAAK4kB,KAAKu8F,SACZnhH,KAAKmoJ,iBAAiB9zI,GACbrU,KAAK4kB,KAAKq8F,YACnBjhH,KAAKooJ,oBAAoB/zI,GAChBrU,KAAK4kB,KAAKsjI,YACnBloJ,KAAK4kB,KAAK82E,cAAe,EACzB17F,KAAKqoJ,mBAAmBh0I,KAExB,EAAIi4C,EAAMhhD,MAAM,mDAEpB,CACA,qBAAM4uD,CAAgBijF,EAAWnvF,EAAM0J,EAAQkrD,EAAa7uD,GAC1D,GAAI/zD,KAAK4kB,KAAKsjI,WACZ,OAAOzgG,MAAMyS,gBAAgBijF,EAAWnvF,EAAM0J,GAAQ,EAAO3D,GAE/D,IAAI5zD,EAAQ,KACRg3D,EAAW,KACf,GAAIpD,EAAmB,CACrB,MAAMqwF,EAAerwF,EAAkBtzD,IAAIT,KAAK4kB,KAAKhP,IACrDzV,EAAQikJ,EAAeA,EAAajkJ,MAAQ,KAC5Cg3D,EAAWitF,EAAeA,EAAajtF,SAAW,IACpD,CACA,GAAc,OAAVh3D,GAAkBH,KAAKw+I,WACzB,OAAO/2F,MAAMyS,gBAAgBijF,EAAWnvF,EAAM0J,EAAQkrD,EAAa7uD,GAEjE5zD,UACFA,EAAQH,KAAK4kB,KAAKu8F,SAAWnhH,KAAK4kB,KAAK0mG,aAAetrH,KAAK4kB,KAAKoiG,YAAchnH,KAAK4kB,KAAK0mG,aAAetrH,KAAK4kB,KAAK6oG,aAEnH,MAAM+wB,EAAar+I,EAAQH,KAAKgoJ,kBAAoBhoJ,KAAKioJ,oBACzD,GAAIzJ,EAAY,CACd,MAAM8J,EAAkBtoJ,KAAKw+I,WACvB+J,EAAc/J,EAAW7b,KAAK8C,SAAS,WAAan5E,EAAM1X,gBAC5DuiB,GACFqnF,EAAW7b,KAAK73G,IAAI,SAAU9qB,KAAK+jI,kBAAkBhwE,IAEvD/zD,KAAKw+I,WAAaA,EAClB,MAAM1lF,EAAerR,MAAMyS,gBAAgBijF,EAAWnvF,EAAM0J,EAAQkrD,EAAa7uD,GAGjF,OAFA/zD,KAAKw+I,WAAa8J,EAClB9J,EAAW7b,KAAK73G,IAAI,SAAUy9H,GACvBzvF,CACT,CACA,MAAO,CACL47C,OAAQ,IAAIi5B,EAAeuD,aAC3BW,cAAc,EACdC,gBAAgB,EAEpB,CACA,UAAM1vF,CAAK+6F,EAAWnvF,EAAM+F,GAC1B,OAAI/zD,KAAK4kB,KAAKu8F,SACLnhH,KAAKwoJ,cAAcrL,EAAWnvF,EAAM+F,GAEzC/zD,KAAK4kB,KAAKq8F,YACLjhH,KAAKyoJ,iBAAiBtL,EAAWnvF,EAAM+F,GAEzC,IACT,CACA,mBAAMy0F,CAAcrL,EAAWnvF,EAAM+F,GACnC,IAAKA,EACH,OAAO,KAET,MAAMqwF,EAAerwF,EAAkBtzD,IAAIT,KAAK4kB,KAAKhP,IACrD,IAAIuhD,EAAWitF,GAAcjtF,SAC3Bh3D,EAAQikJ,GAAcjkJ,MACxB,QAAiB,IAAbg3D,EAAwB,CAC1B,QAAc,IAAVh3D,EACF,OAAO,KAGT,GADqBH,KAAK4kB,KAAK0mG,aAAetrH,KAAK4kB,KAAKoiG,cACnC7mH,EACnB,OAAO,IAEX,CACA,MAAMwiI,EAAOwa,EAAUhe,KAAKwU,WAAW3zI,KAAK22B,KAC5C,KAAMgsG,aAAgB9G,EAAY2E,MAChC,OAAO,UAEQ,IAAbrpE,IACFA,EAAWn3D,KAAKm3D,eAEJ,IAAVh3D,IACFA,EAAQH,KAAK4kB,KAAK0mG,aAAetrH,KAAK4kB,KAAKoiG,aAE7C,MAAMpsD,EAAM,CACV5uD,KAAMhM,KAAK4kB,KAAKwkG,UAChBjpH,MAAOA,EAAQH,KAAK4kB,KAAKoiG,YAAc,IAEnC79G,EAAO0yH,EAAYsK,KAAK1lI,IAAIN,EAAQH,KAAK4kB,KAAKoiG,YAAc,OAClE2b,EAAK73G,IAAI,IAAK3hB,GACdw5H,EAAK73G,IAAI,KAAM3hB,GACfw5H,EAAK73G,IAAI,IAAK,MAAK,EAAIwhC,EAAMzV,0BAC7B,MAAM0tG,EAAUvkJ,KAAKkkJ,WAAW/sF,GAC5BotF,GACF5hB,EAAK73G,IAAI,KAAMy5H,GAEjB,MAAMx5H,EAAS,GAEf,aADA,EAAUkxG,EAAQ+T,aAAahwI,KAAK22B,IAAKgsG,EAAM53G,EAAQoyH,EAAUhe,MAC1D,CAAC,CACNxoG,IAAK32B,KAAK22B,IACV/R,KAAMmG,EAAOte,KAAK,IAClBmuD,OAEJ,CACA,sBAAM6tF,CAAiBtL,EAAWnvF,EAAM+F,GACtC,IAAKA,EACH,OAAO,KAET,MAAMqwF,EAAerwF,EAAkBtzD,IAAIT,KAAK4kB,KAAKhP,IACrD,IAAIuhD,EAAWitF,GAAcjtF,SAC3Bh3D,EAAQikJ,GAAcjkJ,MACxB,QAAiB,IAAbg3D,EAAwB,CAC1B,QAAc,IAAVh3D,EACF,OAAO,KAGT,GADqBH,KAAK4kB,KAAK0mG,aAAetrH,KAAK4kB,KAAK6oG,cACnCttH,EACnB,OAAO,IAEX,CACA,MAAMwiI,EAAOwa,EAAUhe,KAAKwU,WAAW3zI,KAAK22B,KAC5C,KAAMgsG,aAAgB9G,EAAY2E,MAChC,OAAO,UAEK,IAAVrgI,IACFA,EAAQH,KAAK4kB,KAAK0mG,aAAetrH,KAAK4kB,KAAK6oG,kBAE5B,IAAbt2D,IACFA,EAAWn3D,KAAKm3D,UAElB,MAAMyD,EAAM,CACV5uD,KAAMhM,KAAK4kB,KAAKwkG,UAChBjpH,MAAOA,EAAQH,KAAK4kB,KAAK6oG,YAAc,IAEnCtkH,EAAO0yH,EAAYsK,KAAK1lI,IAAIN,EAAQH,KAAK4kB,KAAK6oG,YAAc,OAC5D1iG,EAAS,GACf,IAAI29H,EAAa,KACjB,GAAIvoJ,EACF,GAAIH,KAAKmlE,kBAAkB02D,EAAY2C,IAAK,CAC1C,MAAMr5D,EAASg4E,EAAUhe,KAAK3nH,MAAMxX,KAAKmlE,QACzCA,EAAOr6C,IAAI,IAAK3hB,SAChB,EAAU8yH,EAAQ+T,aAAahwI,KAAKmlE,OAAQA,EAAQp6C,EAAQoyH,EAAUhe,MACtEupB,EAAa39H,EAAOte,KAAK,IACzBse,EAAOllB,OAAS,CAClB,MAAW7F,KAAKmlE,kBAAkB02D,EAAY2E,MAC5CxgI,KAAKmlE,OAAOr6C,IAAI,IAAK3hB,GAGzBw5H,EAAK73G,IAAI,KAAM3hB,GACfw5H,EAAK73G,IAAI,IAAK,MAAK,EAAIwhC,EAAMzV,0BAC7B,MAAM0tG,EAAUvkJ,KAAKkkJ,WAAW/sF,GAC5BotF,GACF5hB,EAAK73G,IAAI,KAAMy5H,SAEjB,EAAUtoB,EAAQ+T,aAAahwI,KAAK22B,IAAKgsG,EAAM53G,EAAQoyH,EAAUhe,MACjE,MAAMc,EAAU,CAAC,CACftpG,IAAK32B,KAAK22B,IACV/R,KAAMmG,EAAOte,KAAK,IAClBmuD,QASF,OAPI8tF,GACFzoB,EAAQr+H,KAAK,CACX+0B,IAAK32B,KAAKmlE,OACVvgD,KAAM8jI,EACN9tF,IAAK,OAGFqlE,CACT,CACA,4BAAA0oB,CAA6Bt0I,EAAQtH,GACnC,MAAMg1B,EAAQ/hC,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAC3CxnB,EAASjiC,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAC5CsxC,EAAO,CAAC,EAAG,EAAGh5D,EAAOE,GAErB0lD,EADa,GACFlkE,KAAKE,IAAIoe,EAAOE,GACjC,IAAI83E,EAASupB,EACA,UAATv2H,GACFgtG,EAAU,CACRh4E,MAAO,KAAQ4lD,EACf1lD,OAAQ,KAAQ0lD,GAElB27C,EAAO,KACW,SAATv2H,GACTgtG,EAAU,CACRh4E,MAAO,KAAQ4lD,EACf1lD,OAAQ,KAAQ0lD,GAElB27C,EAAO,MAEP,EAAIh3E,EAAMpW,aAAa,oDAAoDnpC,KAE7E,MAEMyxI,EAAa,mBAAmB72D,aAFvB,EAAIi0C,EAAYwI,iBAAiBriG,EAAQg4E,EAAQh4E,OAAS,OAC1D,EAAI65F,EAAYwI,iBAAiBniG,EAAS83E,EAAQ93E,QAAU,UACMqhG,aAC3Eof,EAAuB,IAAI7mB,EAAY2E,KAAKnsH,EAAO8qH,MACzDujB,EAAqB53H,IAAI,WAAY,GACrC43H,EAAqB53H,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,SACzDiiJ,EAAqB53H,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,YACtDiiJ,EAAqB53H,IAAI,OAAQiwE,GACjC2nD,EAAqB53H,IAAI,SAAU,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,IACnD43H,EAAqB53H,IAAI,SAAU0zH,EAAW34I,QAC9C,MAAMmpI,EAAY,IAAInT,EAAY2E,KAAKnsH,EAAO8qH,MACxC39D,EAAO,IAAIq6D,EAAY2E,KAAKnsH,EAAO8qH,MACzC39D,EAAK12C,IAAI,YAAa9qB,KAAKmhJ,kBAC3BnS,EAAUlkH,IAAI,OAAQ02C,GACtBkhF,EAAqB53H,IAAI,YAAakkH,GACtChvI,KAAKgoJ,kBAAoB,IAAIx+C,EAAQ0jC,aAAasR,GAClDx+I,KAAKgoJ,kBAAkBrlB,KAAO+f,EAC9B1iJ,KAAKu+I,SAAS38I,KAAK5B,KAAKgoJ,kBAC1B,CACA,gBAAAG,CAAiB9zI,GACf,MAAMu0I,EAAmBv0I,EAAOsuH,KAAKliI,IAAI,MACzC,KAAMmoJ,aAA4B/sB,EAAY2E,MAC5C,OAEF,MAAMqoB,EAAmBD,EAAiBnoJ,IAAI,KAC9C,KAAMooJ,aAA4BhtB,EAAY2E,MAC5C,OAEF,MAAMsoB,EAAU9oJ,KAAKojJ,iBAAiB/uI,EAAOsuH,KAAKliI,IAAI,OAC/B,iBAAZqoJ,IACT9oJ,KAAK4kB,KAAK0mG,WAAaw9B,GAEzB,MAAMC,EAA+B,OAAzB/oJ,KAAK4kB,KAAK0mG,YAAgD,QAAzBtrH,KAAK4kB,KAAK0mG,WAAuBtrH,KAAK4kB,KAAK0mG,WAAa,MAC/FvE,EAAe8hC,EAAiB5lB,UACtC,GAA4B,IAAxBlc,EAAalhH,OACfkhH,EAAanlH,KAAK,MAAOmnJ,QACpB,GAA4B,IAAxBhiC,EAAalhH,OACE,QAApBkhH,EAAa,GACfA,EAAanlH,KAAKmnJ,GAElBhiC,EAAa37G,QAAQ,YAElB,GAAI27G,EAAapzG,SAASo1I,GAC/BhiC,EAAalhH,OAAS,EACtBkhH,EAAanlH,KAAK,MAAOmnJ,OACpB,CACL,MAAMC,EAAWjiC,EAAaosB,MAAKzvI,GAAW,QAANA,IACxCqjH,EAAalhH,OAAS,EACtBkhH,EAAanlH,KAAK,MAAOonJ,EAC3B,CACKjiC,EAAapzG,SAAS3T,KAAK4kB,KAAK0mG,cACnCtrH,KAAK4kB,KAAK0mG,WAAa,OAEzBtrH,KAAK4kB,KAAKoiG,YAAcD,EAAa,GACrC,MAAMihC,EAAoBa,EAAiBpoJ,IAAIT,KAAK4kB,KAAKoiG,aACzDhnH,KAAKgoJ,kBAAoBA,aAA6BxiB,EAAaM,WAAakiB,EAAoB,KACpG,MAAMC,EAAsBY,EAAiBpoJ,IAAI,OACjDT,KAAKioJ,oBAAsBA,aAA+BziB,EAAaM,WAAamiB,EAAsB,KACtGjoJ,KAAKgoJ,kBACPhoJ,KAAKu+I,SAAS38I,KAAK5B,KAAKgoJ,mBAExBhoJ,KAAK2oJ,6BAA6Bt0I,EAAQ,SAExCrU,KAAKioJ,qBACPjoJ,KAAKu+I,SAAS38I,KAAK5B,KAAKioJ,qBAE1BjoJ,KAAKk/I,kBAAoBl/I,KAAKmhJ,iBACM,OAAhCnhJ,KAAK4kB,KAAK0nG,oBACZtsH,KAAK4kB,KAAK0nG,kBAAoB,MAElC,CACA,mBAAA87B,CAAoB/zI,GAClBrU,KAAK4kB,KAAK0mG,WAAatrH,KAAK4kB,KAAK6oG,YAAc,KAC/C,MAAMw7B,EAAc50I,EAAOsuH,KAAKliI,IAAI,UACpC,GAAIwoJ,aAAuBptB,EAAY2E,KAAM,CAC3CxgI,KAAKmlE,OAAS9wD,EAAOsuH,KAAK57B,OAAO,UACjC,MAAMmiD,EAAmBD,EAAYxoJ,IAAI,KACrCyoJ,aAA4BrtB,EAAYsK,OAC1CnmI,KAAK4kB,KAAK0mG,WAAatrH,KAAKojJ,iBAAiB8F,GAEjD,CACA,MAAMxI,EAAmBrsI,EAAOsuH,KAAKliI,IAAI,MACzC,KAAMigJ,aAA4B7kB,EAAY2E,MAC5C,OAEF,MAAMqoB,EAAmBnI,EAAiBjgJ,IAAI,KAC9C,KAAMooJ,aAA4BhtB,EAAY2E,MAC5C,OAEF,UAAW1zH,KAAO+7I,EAAiB5lB,UACjC,GAAY,QAARn2H,EAAe,CACjB9M,KAAK4kB,KAAK6oG,YAAcztH,KAAKojJ,iBAAiBt2I,GAC9C,KACF,CAEF,MAAMk7I,EAAoBa,EAAiBpoJ,IAAIT,KAAK4kB,KAAK6oG,aACzDztH,KAAKgoJ,kBAAoBA,aAA6BxiB,EAAaM,WAAakiB,EAAoB,KACpG,MAAMC,EAAsBY,EAAiBpoJ,IAAI,OACjDT,KAAKioJ,oBAAsBA,aAA+BziB,EAAaM,WAAamiB,EAAsB,KACtGjoJ,KAAKgoJ,kBACPhoJ,KAAKu+I,SAAS38I,KAAK5B,KAAKgoJ,mBAExBhoJ,KAAK2oJ,6BAA6Bt0I,EAAQ,QAExCrU,KAAKioJ,qBACPjoJ,KAAKu+I,SAAS38I,KAAK5B,KAAKioJ,qBAE1BjoJ,KAAKk/I,kBAAoBl/I,KAAKmhJ,iBACM,OAAhCnhJ,KAAK4kB,KAAK0nG,oBACZtsH,KAAK4kB,KAAK0nG,kBAAoB,MAElC,CACA,kBAAA+7B,CAAmBh0I,GACjB,MAAM,KACJsuH,EAAI,kBACJmO,GACEz8H,EACCsuH,EAAK/kE,IAAI,MAAS+kE,EAAK/kE,IAAI,OAAU59D,KAAK4kB,KAAKilG,iBAIpD7pH,KAAK4kB,KAAK6iG,eAAiBkb,EAAK/kE,IAAI,OAAS+kE,EAAK/kE,IAAI,MACtD2vE,EAAS8G,QAAQ8U,oBAAoB,CACnCC,SAAUzmB,EACV0mB,UAAWrpJ,KAAK4kB,KAChB8pC,WAAYoiF,EAAkBz6F,QAC9BizG,eAAgBxY,EAAkBwK,gBARlC,EAAIhvF,EAAMhhD,MAAM,6DAUpB,CACA,cAAAuoI,GACE,IACI9sB,EADAh6G,EAAO,SASX,OAPI/M,KAAK4kB,KAAKu8F,UACZp0G,EAAO,WACPg6G,EAAe/mH,KAAK4kB,KAAKoiG,aAChBhnH,KAAK4kB,KAAKq8F,cACnBl0G,EAAO,cACPg6G,EAAe/mH,KAAK4kB,KAAK6oG,aAEpB,CACL73G,GAAI5V,KAAK4kB,KAAKhP,GACdzV,MAAOH,KAAK4kB,KAAK0mG,YAAc,MAC/BprF,aAAclgC,KAAK4kB,KAAK0nG,kBACxBvF,eACA9J,UAAWj9G,KAAK4kB,KAAKwnG,SACrBjjH,KAAMnJ,KAAK4kB,KAAKwkG,UAChB3/D,KAAMzpD,KAAK4kB,KAAK6kC,KAChBtW,OAAQnzC,KAAK4kB,KAAKuuB,OAClBkyE,QAASrlH,KAAK4kB,KAAKygG,QACnBvlD,KAAM9/D,KAAK4kB,KAAKsxC,UAChBuyB,YAAazoF,KAAK4kB,KAAKu/F,YACvB37B,UAAWxoF,KAAK4kB,KAAKo9E,gBACrB7qC,SAAUn3D,KAAKm3D,SACfpqD,OAEJ,CACA,oBAAIo0I,GACF,MAAMxe,EAAO,IAAI9G,EAAY2E,KAK7B,OAJAmC,EAAK73G,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAI,iBAC1CkiI,EAAK73G,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,iBACtCkiI,EAAK73G,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,iBACzCkiI,EAAK73G,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAI,0BAC1C,EAAW6rD,EAAMtT,QAAQh5C,KAAM,mBAAoB2iI,EACrD,EAEF,MAAMmZ,UAA+BE,EACnC,WAAAr9H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EACJrU,KAAKivH,QAAU0T,EAAK8C,SAAS,KAC7BzlI,KAAKupJ,WAAa5+I,MAAMC,QAAQ5K,KAAKivH,UAAYjvH,KAAKivH,QAAQppH,OAAS,EACvE7F,KAAK4kB,KAAKzG,QAAU,GACpB,MAAMA,GAAU,EAAIy9G,EAAYkH,wBAAwB,CACtDH,OACA71H,IAAK,QAEP,GAAInC,MAAMC,QAAQuT,GAChB,QAAStV,EAAI,EAAGovC,EAAK95B,EAAQtY,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAChD,MAAMslH,EAASgR,EAAKwU,WAAWx1H,EAAQtV,IACjC2gJ,EAAgB7+I,MAAMC,QAAQujH,GACpCnuH,KAAK4kB,KAAKzG,QAAQtV,GAAK,CACrBm+G,YAAahnH,KAAKojJ,iBAAiBoG,EAAgBrqB,EAAKwU,WAAWxlB,EAAO,IAAMA,GAChFG,aAActuH,KAAKojJ,iBAAiBoG,EAAgBrqB,EAAKwU,WAAWxlB,EAAO,IAAMA,GAErF,CAEF,GAAKnuH,KAAKupJ,WAMH,CACLvpJ,KAAK4kB,KAAK0mG,WAAa,GACvB,MAAMrzE,EAAKj4C,KAAK4kB,KAAKzG,QAAQtY,OAC7B,UAAWgD,KAAK7I,KAAKivH,QACfn2E,OAAOC,UAAUlwC,IAAMA,GAAK,GAAKA,EAAIovC,GACvCj4C,KAAK4kB,KAAK0mG,WAAW1pH,KAAK5B,KAAK4kB,KAAKzG,QAAQtV,GAAGm+G,YAGrD,KAbsC,iBAAzBhnH,KAAK4kB,KAAK0mG,WACnBtrH,KAAK4kB,KAAK0mG,WAAa,CAACtrH,KAAK4kB,KAAK0mG,YACxBtrH,KAAK4kB,KAAK0mG,aACpBtrH,KAAK4kB,KAAK0mG,WAAa,IAW3BtrH,KAAK4kB,KAAKopG,MAAQhuH,KAAK4jJ,aAAat3F,EAAM7W,oBAAoB4J,OAC9Dr/C,KAAK4kB,KAAKqpG,YAAcjuH,KAAK4jJ,aAAat3F,EAAM7W,oBAAoBgK,aACpEz/C,KAAKgkJ,UAAW,CAClB,CACA,cAAAnQ,GACE,MAAM9mI,EAAO/M,KAAK4kB,KAAKopG,MAAQ,WAAa,UACtC7tH,EAAQH,KAAK4kB,KAAK0mG,WAAWzlH,OAAS,EAAI7F,KAAK4kB,KAAK0mG,WAAW,GAAK,KAC1E,MAAO,CACL11G,GAAI5V,KAAK4kB,KAAKhP,GACdzV,QACA+/B,aAAclgC,KAAK4kB,KAAK0nG,kBACxBrP,UAAWj9G,KAAK4kB,KAAKwnG,SACrBjjH,KAAMnJ,KAAK4kB,KAAKwkG,UAChB3/D,KAAMzpD,KAAK4kB,KAAK6kC,KAChBggG,SAAUzpJ,KAAK4kB,KAAK0mG,WAAWzlH,OAC/BgpH,kBAAmB7uH,KAAK4kB,KAAKqpG,YAC7B96E,OAAQnzC,KAAK4kB,KAAKuuB,OAClBkyE,QAASrlH,KAAK4kB,KAAKygG,QACnB3qD,MAAO16D,KAAK4kB,KAAKzG,QACjB2hD,KAAM9/D,KAAK4kB,KAAKsxC,UAChBuyB,YAAazoF,KAAK4kB,KAAKu/F,YACvB37B,UAAWxoF,KAAK4kB,KAAKo9E,gBACrB7qC,SAAUn3D,KAAKm3D,SACfpqD,OAEJ,CACA,cAAAo3I,CAAepwF,EAAmB4uE,GAChC,IAAK3iI,KAAKupJ,WACR,OAEF,IAAIhuF,EAASxH,GAAmBtzD,IAAIT,KAAK4kB,KAAKhP,KAAKzV,MAC9CwK,MAAMC,QAAQ2wD,KACjBA,EAAS,CAACA,IAEZ,MAAM0zD,EAAU,IACV,QACJ9wG,GACEne,KAAK4kB,KACT,QAAS/b,EAAI,EAAGghB,EAAI,EAAGouB,EAAK95B,EAAQtY,OAAQgD,EAAIovC,EAAIpvC,IAC9CsV,EAAQtV,GAAGm+G,cAAgBzrD,EAAO1xC,KACpColG,EAAQrtH,KAAKiH,GACbghB,GAAK,GAGT84G,EAAK73G,IAAI,IAAKmkG,EAChB,CACA,oBAAMg1B,CAAe9G,EAAWnvF,EAAM0J,EAAQ3D,GAC5C,GAAI/zD,KAAK4kB,KAAKopG,MACZ,OAAOvmE,MAAMw8F,eAAe9G,EAAWnvF,EAAM0J,EAAQ3D,GAEvD,IAAI21F,EAAevyF,EACnB,MAAMitF,EAAerwF,GAAmBtzD,IAAIT,KAAK4kB,KAAKhP,IAKtD,GAJIwuI,IACFjtF,EAAWitF,EAAajtF,SACxBuyF,EAAgBtF,EAAajkJ,YAEd,IAAbg3D,QAA4C,IAAlBuyF,IAAgC1pJ,KAAKm/I,iBACjE,OAAO,UAEa,IAAlBuK,EACFA,EAAgB1pJ,KAAK4kB,KAAK0mG,WAChB3gH,MAAMC,QAAQ8+I,KACxBA,EAAgB,CAACA,IAInB,IAAI9E,EAAc5kJ,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GACjDo7F,EAAa7kJ,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GACnC,KAAb0N,GAAgC,MAAbA,KACpB0tF,EAAYD,GAAe,CAACA,EAAaC,IAE5C,MAAMF,EAAY3kJ,KAAK4kB,KAAKzG,QAAQtY,OAC9B8jJ,EAAe,GACrB,QAAS9gJ,EAAI,EAAGA,EAAI87I,EAAW97I,IAAK,CAClC,MAAM,YACJm+G,GACEhnH,KAAK4kB,KAAKzG,QAAQtV,GAClB6gJ,EAAc/1I,SAASqzG,IACzB2iC,EAAa/nJ,KAAKiH,EAEtB,CACK7I,KAAK6/I,qBACR7/I,KAAK4kB,KAAK26F,uBAAwB,EAAI46B,EAAoB2F,wBAAwB9/I,KAAK6/I,mBAAqB,wBAE9G,MAAMr+E,QAAaw6E,EAAiB8I,aAAa3H,EAAWnvF,EAAMhuD,KAAK4kB,KAAK26F,sBAAuBv/G,KAAKyjJ,gBAAgBC,iBACxH,IAAI9D,GACA,SACFj4D,GACE3nF,KAAK4kB,KAAK26F,sBACd,GAAK53B,EAeHi4D,EAAoB5/I,KAAK6/I,uBAfZ,CACb,MAAM30B,GAAc05B,EA1BC,GA0B+BD,EACpD,IACIxkJ,EADA0oF,GAAa,EAEjB,UAAW,aACTylC,KACGtuH,KAAK4kB,KAAKzG,QAAS,CACtB,MAAM4jB,EAAQ/hC,KAAKimJ,cAAc33B,EAAc9sD,GAC3Cz/B,EAAQ8mD,IACVA,EAAY9mD,EACZ5hC,EAAQmuH,EAEZ,EACCsxB,EAAmBj4D,GAAY3nF,KAAKylJ,iBAAiBv6B,EAAY25B,EAAa,EAAqB1kJ,EAAOqhE,GAAO,EACpH,CAGA,MAAM0pD,EAAavjC,EAAWr7B,EAAM9X,YAC9BuyG,GAAY77B,EAAavjC,GAAY,EACrCiiE,EAAuBnmI,KAAKi0B,MAAMktG,EAAc15B,GACtD,IAAI2+B,EAAa,EACjB,GAAIF,EAAa9jJ,OAAS,EAAG,CAC3B,MAAMikJ,EAAWrmI,KAAKE,OAAOgmI,GACvBI,EAAWtmI,KAAK6H,OAAOq+H,GAC7BE,EAAapmI,KAAK6H,IAAI,EAAGy+H,EAAWH,EAAuB,GACvDC,EAAaC,IACfD,EAAaC,EAEjB,CACA,MAAM/7I,EAAM0V,KAAKE,IAAIkmI,EAAaD,EAAuB,EAAGjF,GACtDntG,EAAM,CAAC,YAAa,OAAOqtG,KAAcD,YAC/C,GAAI+E,EAAa9jJ,OAAQ,CACvB2xC,EAAI51C,KAAK,iCACT,UAAW0H,KAASqgJ,EACdE,GAAcvgJ,GAASA,EAAQyE,GACjCypC,EAAI51C,KAAK,KAAKgjJ,GAAet7I,EAAQugJ,EAAa,GAAK3+B,KAAc25B,KAAc35B,SAGzF,CACA1zE,EAAI51C,KAAK,KAAMg+I,EAAmB,aAAagF,QAC/C,MAAMiC,EAAW,CACfj+I,MAAO,GAET,QAASC,EAAIghJ,EAAYhhJ,EAAIkF,EAAKlF,IAAK,CACrC,MAAM,aACJylH,GACEtuH,KAAK4kB,KAAKzG,QAAQtV,GAChBmhJ,EAAWnhJ,IAAMghJ,EAAa9C,EAAW,EAC/CvvG,EAAI51C,KAAK5B,KAAK+lJ,YAAYz3B,EAAc9sD,EAAMmmB,EAAUk9D,EAAY,EAAGgC,EAxEjD,GAwE6E37B,EAAa8+B,GAClH,CAEA,OADAxyG,EAAI51C,KAAK,YACF41C,EAAI/qC,KAAK,KAClB,EAEF,MAAMsvI,UAAkCC,EACtC,WAAAr9H,CAAYtK,GACVozC,MAAMpzC,GACNrU,KAAK4kB,KAAK0mG,WAAa,KACvBtrH,KAAK4kB,KAAK82E,aAAe17F,KAAK4kB,KAAK4+F,QACrC,CACA,cAAAqwB,GACE,MAAO,CACLj+H,GAAI5V,KAAK4kB,KAAKhP,GACdzV,MAAO,KACP2/D,KAAM9/D,KAAK4kB,KAAKsxC,UAChBnpD,KAAM,YAEV,EAEF,MAAM4uI,UAAuB5B,EAC3B,WAAAp7H,CAAYtK,GAEVozC,MAAMpzC,GACNrU,KAAK4kB,KAAK4+F,UAAW,EACrBxjH,KAAK4kB,KAAK82E,aAAe17F,KAAK4kB,KAAK4+F,SACnC,MAAM,KACJmf,GACEtuH,EACJrU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAeyH,KAC5C78C,KAAK4kB,KAAKymG,cACZrrH,KAAK4kB,KAAKzb,KAAO,UAEjBnJ,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAXX,GAYxBzpD,KAAK4kB,KAAK6kC,KAAK,GAAKzpD,KAAK4kB,KAAK6kC,KAAK,GAZX,GAaxBzpD,KAAK4kB,KAAKzb,KAAOw5H,EAAK/kE,IAAI,QAAU+kE,EAAKliI,IAAI,QAAQ0I,KAAO,QAE1Dw5H,EAAK/kE,IAAI,UACX59D,KAAK4kB,KAAKa,MAAQk9G,EAAKliI,IAAI,UAAY,KACvCT,KAAK4kB,KAAKqlI,WAAatnB,EAAKliI,IAAI,eAAiB,OAEjDT,KAAK4kB,KAAKa,MAAQ,KAClBzlB,KAAK4kB,KAAKqlI,WAAa,KAE3B,EAEF,MAAMvO,UAAuBzB,EAC3B,WAAAt7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,kBACJmO,GACEz8H,EACJrU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAe0H,KAChD,MAAM4oE,EAAaw0B,EAAcvX,EAAM3iI,KAAK6iD,WACxC6iE,IACF1lH,KAAK4kB,KAAK8gG,WAAaA,GAEzB1lH,KAAK4kB,KAAKu/F,cAAgBnkH,KAAK4kB,KAAK6vD,MACpC84D,EAAS8G,QAAQ8U,oBAAoB,CACnCC,SAAUzmB,EACV0mB,UAAWrpJ,KAAK4kB,KAChB8pC,WAAYoiF,EAAkBz6F,QAC9BizG,eAAgBxY,EAAkBwK,aAEtC,EAEF,MAAMxI,UAAwBmH,EAC5B,WAAAt7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,GACEtuH,EACJrU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAeqI,MAC5Cz9C,KAAK4kB,KAAK6kC,KAAK,KAAOzpD,KAAK4kB,KAAK6kC,KAAK,IAAMzpD,KAAK4kB,KAAK6kC,KAAK,KAAOzpD,KAAK4kB,KAAK6kC,KAAK,KAClFzpD,KAAK4kB,KAAK6kC,KAAO,MAEnB,IAAIygG,EAAavnB,EAAKliI,IAAI,UAC1B,IAAKypJ,EAEH,YADA,EAAI59F,EAAMhhD,MAAM,gEAGlB,MAAMo7G,EAAawjC,EAAWzkB,SAAS,QACvCzlI,KAAK4kB,KAAK8hG,WAAa/7G,MAAMC,QAAQ87G,IAAqC,IAAtBA,EAAW7gH,OAAeymD,EAAMv2C,KAAKyzC,cAAck9D,GAAc,KACrH,MAAMg7B,EAAKwI,EAAWzpJ,IAAI,MAgB1B,IAfA,EAAQo7H,EAAYgK,QAAQ6b,EAAIp1F,EAAMjX,oBAAoB+I,SACxD8rG,EAAaA,EAAWzpJ,IAAI,QAEzBypJ,EAAWtsF,IAAI,MAGlB59D,KAAK+9I,oBAAoBmM,EAAWzpJ,IAAI,MACxCT,KAAK4kB,KAAK6hG,iBAAmBzmH,KAAKymH,kBAHlCzmH,KAAK4kB,KAAK6hG,iBAAmB,KAK1ByjC,EAAWtsF,IAAI,MAGlB59D,KAAKukH,SAAS2lC,EAAWzkB,SAAS,MAClCzlI,KAAK4kB,KAAK6vD,MAAQz0E,KAAKy0E,OAHvBz0E,KAAK4kB,KAAK6vD,MAAQ,MAKfz0E,KAAKsyI,SAAU,CAClB,MAAM6X,EAAcD,EAAWzpJ,IAAI,KAC/BT,KAAKs/I,YAAY6K,IACnBnqJ,KAAKg+I,SAASmM,EAElB,CACAnqJ,KAAK69I,SAASqM,EAAWzpJ,IAAI,MAC7BT,KAAK4kB,KAAKu+F,SAAWnjH,KAAK+/I,OAC1B//I,KAAK89I,YAAYoM,EAAWzpJ,IAAI,aAChCT,KAAK4kB,KAAKw+F,YAAcpjH,KAAK8+I,UACzBoL,EAAWtsF,IAAI,QACjB59D,KAAK4kB,KAAKy+F,SAAWyqB,EAAS+H,WAAWiM,kBAAkBoI,EAAWzpJ,IAAI,QAE5ET,KAAK4kB,KAAKJ,OAASm+G,EAAKliI,IAAI,OAC9B,EAEF5B,EAAQi0I,gBAAkBA,EAC1B,MAAMmJ,UAA2BlC,EAC/B,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACNrU,KAAK4kB,KAAK82E,cAAe,EACzB,MAAM,iBACJ3qC,EAAgB,KAChBouE,GACE9qH,EAGJ,GAFArU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAe0F,SAChD96C,KAAK2/I,qBAAqBtrI,GACtBrU,KAAKw+I,WAAY,CACnB,MAAM,UACJh/B,EAAS,SACT73B,IACE,EAAIwyD,EAAoBiQ,uBAAuBpqJ,KAAKw+I,WAAYztF,EAAkBouE,GACtFn/H,KAAK4kB,KAAK26F,sBAAsBC,UAAYA,EAC5Cx/G,KAAK4kB,KAAK26F,sBAAsB53B,SAAWA,GAAY,EACzD,MAAO,GAAI3nF,KAAKu6G,4BAA6B,CAC3C,MAAM3xB,EAAcv0E,EAAOsuH,KAAKliI,IAAI,MAC9B0kJ,EAAkB,IAAIhL,EAAoBiL,gBAAgBjmB,EAAM,cACtEn/H,KAAK4kB,KAAK26F,sBAAsB53B,WAAa,GAC7C,MAAM,UACJ63B,EAAS,SACT73B,GACE3nF,KAAK4kB,KAAK26F,sBACdv/G,KAAKw+I,WAAa2G,EAAgBkF,iBAAiBrqJ,KAAK8+I,UAAU90H,IAAKhqB,KAAK6iD,UAAW7iD,KAAKm3D,SAAUwwB,EAAU63B,EAAW52B,GAC3H5oF,KAAKu+I,SAAS38I,KAAK5B,KAAKw+I,WAAYrE,EAAoBiL,gBAAgBkF,gBAC1E,MACE,EAAIh+F,EAAMhhD,MAAM,6FAEpB,CACA,kBAAIknI,GACF,QAASxyI,KAAKw+I,UAChB,CACA,oBAAO0E,CAAc9S,EAAYjR,GAAM,MACrC8jB,EAAK,GACLH,IAEA,MAAM,MACJruE,EAAK,SACLkT,EAAQ,KACRl+B,EAAI,SACJ0N,EAAQ,KACRozF,EAAI,MACJpqJ,GACEiwI,EACEoa,EAAW,IAAI3uB,EAAY2E,KAAKrB,GACtCqrB,EAAS1/H,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,UAC1C+pJ,EAAS1/H,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,aAC7C+pJ,EAAS1/H,IAAI,eAAgB,MAAK,EAAIwhC,EAAMzV,0BAC5C2zG,EAAS1/H,IAAI,OAAQ2+B,GACrB,MAAMghG,EAAK,SAAS9iE,SAAe,EAAIwyD,EAAoB4J,aAAatvE,GAAO,KAS/E,GARA+1E,EAAS1/H,IAAI,KAAM2/H,GACnBD,EAAS1/H,IAAI,YAAY,EAAI8wG,EAAYoI,SAAS7jI,GAASA,GAAQ,EAAIy7H,EAAYkJ,qBAAqB3kI,GAAO,IAC/GqqJ,EAAS1/H,IAAI,IAAK,GAClB0/H,EAAS1/H,IAAI,SAAU,CAAC,EAAG,EAAG,IAC9B0/H,EAAS1/H,IAAI,SAAUqsC,GACnBozF,GACFC,EAAS1/H,IAAI,KAAK,EAAI8wG,EAAYoI,SAASumB,GAAQA,GAAO,EAAI3uB,EAAYkJ,qBAAqBylB,GAAM,IAEnGtH,GAASH,EAAI,CACf,MAAMnjJ,EAAI,IAAIk8H,EAAY2E,KAAKrB,GAC/BqrB,EAAS1/H,IAAI,KAAMnrB,GACfsjJ,EACFtjJ,EAAEmrB,IAAI,IAAKm4H,GAEXtjJ,EAAEmrB,IAAI,IAAKg4H,EAEf,CACA,OAAO0H,CACT,CACA,sCAAazH,CAA0B3S,EAAYjR,EAAM9qH,GACvD,MAAM,YACJ+oI,EAAW,UACXD,EAAS,KACTnvF,GACE35C,GACE,MACJogE,EAAK,SACLkT,EAAQ,KACRl+B,EAAI,SACJ0N,EAAQ,MACRh3D,GACEiwI,EACEpB,EAAY,IAAInT,EAAY2E,KAAKrB,GACjC39D,EAAO,IAAIq6D,EAAY2E,KAAKrB,GAClC,GAAIie,EACF57E,EAAK12C,IAAI,OAAQsyH,OACZ,CACL,MAAMC,EAAW,IAAIxhB,EAAY2E,KAAKrB,GACtCke,EAASvyH,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAI,cAC9C48I,EAASvyH,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,SAC1C48I,EAASvyH,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,UAC7C48I,EAASvyH,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAI,oBAC9C+gE,EAAK12C,IAAI,OAAQuyH,EACnB,CACArO,EAAUlkH,IAAI,OAAQ02C,GACtB,MAAMkpF,QAAa1O,EAAiB8I,aAAa3H,EAAWnvF,EAAM,CAChE2rD,SAAU,OACVhyB,YACCqnD,IACI5kF,EAAIC,EAAIC,EAAIC,GAAMd,EACzB,IAAI9gB,EAAI2hB,EAAKF,EACTxhB,EAAI2hB,EAAKF,EACT8M,EAAW,KAAQ,KACpBxuB,EAAGC,GAAK,CAACA,EAAGD,IAEf,MAAM76B,EAAQ3N,EAAMe,MAAM,MACpBg2D,EAAQywB,EAAW,IACzB,IAAIk9D,GAAa,IACjB,MAAME,EAAe,GACrB,QAAS1jJ,KAAQyM,EAAO,CACtB,MAAMy4I,EAAUmE,EAAKxF,aAAa7jJ,GAClC,GAAIklJ,EAAQ1gJ,OAAS,EACnB,OAAO,KAETxE,EAAOklJ,EAAQ95I,KAAK,IACpBs4I,EAAanjJ,KAAKP,GAClB,IAAIwnF,EAAY,EAChB,MAAMiP,EAAS4yD,EAAKxE,cAAc7kJ,GAClC,UAAWq3F,KAASZ,EAClBjP,GAAa6P,EAAM32D,MAAQm1B,EAE7B2tF,EAAaphI,KAAK6H,IAAIu5H,EAAYh8D,EACpC,CACA,IAAI8hE,EAAS,EACT9F,EAAal8G,IACfgiH,EAAShiH,EAAIk8G,GAEf,IAAI+F,EAAS,EACb,MAAM1/B,EAAa5+D,EAAM9X,YAAcmzC,EACjCkjE,GAAcv+F,EAAM9X,YAAc8X,EAAM7X,qBAAuBkzC,EAC/Di9D,EAAc15B,EAAap9G,EAAMjI,OACnC++I,EAAch8G,IAChBgiH,EAAShiH,EAAIg8G,GAEf,MACMkG,EAAcnjE,EADLlkE,KAAKE,IAAIgnI,EAAQC,GAEhC,IAAIG,EAAY9hE,EAAS0R,EACzB,OAAQxjC,GACN,KAAK,EACHwjC,EAAS,CAAC,EAAG,EAAG,EAAG,GACnB1R,EAAU,CAACx/B,EAAK,GAAIA,EAAK,GAAI9gB,EAAGC,GAChCmiH,EAAa,CAACthG,EAAK,GAAIA,EAAK,GAAKohG,GACjC,MACF,KAAK,GACHlwD,EAAS,CAAC,EAAG,GAAI,EAAG,GACpB1R,EAAU,CAACx/B,EAAK,IAAKA,EAAK,GAAI9gB,EAAGC,GACjCmiH,EAAa,CAACthG,EAAK,IAAKA,EAAK,GAAKohG,GAClC,MACF,KAAK,IACHlwD,EAAS,EAAE,EAAG,EAAG,GAAI,GACrB1R,EAAU,EAAEx/B,EAAK,IAAKA,EAAK,GAAI9gB,EAAGC,GAClCmiH,EAAa,EAAEthG,EAAK,IAAKA,EAAK,GAAKohG,GACnC,MACF,KAAK,IACHlwD,EAAS,CAAC,GAAI,EAAG,EAAG,GACpB1R,EAAU,EAAEx/B,EAAK,GAAIA,EAAK,GAAI9gB,EAAGC,GACjCmiH,EAAa,EAAEthG,EAAK,GAAIA,EAAK,GAAKohG,GAGtC,MAAM9/H,EAAS,CAAC,IAAK,GAAG4vE,EAAOluF,KAAK,cAAe,GAAGw8E,EAAQx8E,KAAK,cAAe,KAAM,IAAG,EAAI0tI,EAAoB4J,aAAatvE,GAAO,KAAS,eAAc,EAAImnD,EAAYwI,gBAAgB0mB,SAC9L//H,EAAOnpB,KAAK,GAAGmpJ,EAAWt+I,KAAK,aAAY,EAAImvH,EAAY+H,cAAcohB,EAAa,WACtF,MAAMwC,GAAS,EAAI3rB,EAAYwI,gBAAgBlZ,GAC/C,QAASriH,EAAI,EAAGovC,EAAK8sG,EAAal/I,OAAQgD,EAAIovC,EAAIpvC,IAAK,CACrD,MAAMxH,EAAO0jJ,EAAal8I,GAC1BkiB,EAAOnpB,KAAK,MAAM2lJ,UAAc,EAAI3rB,EAAY+H,cAActiI,SAChE,CACA0pB,EAAOnpB,KAAK,KAAM,KAClB,MAAM48I,EAAazzH,EAAOte,KAAK,MACzBi2I,EAAuB,IAAI7mB,EAAY2E,KAAKrB,GAClDujB,EAAqB53H,IAAI,WAAY,GACrC43H,EAAqB53H,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,SACzDiiJ,EAAqB53H,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,YACtDiiJ,EAAqB53H,IAAI,OAAQ2+B,GACjCi5F,EAAqB53H,IAAI,YAAakkH,GACtC0T,EAAqB53H,IAAI,SAAU,CAAC,EAAG,EAAG,EAAG,GAAI2+B,EAAK,IAAKA,EAAK,KAChE,MAAMq5F,EAAK,IAAIt5C,EAAQ0jC,aAAasR,GAEpC,OADAsE,EAAGngB,KAAO+f,EACHI,CACT,EAEF,MAAM5G,UAAuBnC,EAC3B,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EACJrU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAe2H,KAChD/8C,KAAK4kB,KAAK82E,aAAe17F,KAAK4kB,KAAK4+F,SACnC,MAAMiN,EAAkBkS,EAAK8C,SAAS,KAItC,GAHAzlI,KAAK4kB,KAAK6rG,gBAAkBnkE,EAAMv2C,KAAKyzC,cAAcinE,GACrDzwH,KAAKigJ,eAAetd,EAAK8C,SAAS,OAClCzlI,KAAK4kB,KAAKs7H,YAAclgJ,KAAKkgJ,aACxBlgJ,KAAKw+I,WAAY,CACpB,MAAM/1D,EAAczoF,KAAKy0E,MAAQwmE,EAAiBj7I,KAAKy0E,OAAS,CAAC,EAAG,EAAG,GACjEmU,EAAc+5C,EAAKliI,IAAI,MACvBuqJ,EAAgBxQ,EAAY7X,EAAK8C,SAAS,MAAO,MACjDj9C,EAAYwiE,EAAgB/P,EAAiB+P,GAAiB,KAC9DriE,EAAYH,EAAYI,EAAc,KACtC+6B,EAAc3jH,KAAK0jH,YAAY3hF,OAAS,EAC5CkpH,EAAe,EAAItnC,EACf5oB,EAAO,CAAC/6F,KAAK4kB,KAAK6rG,gBAAgB,GAAKw6B,EAAcjrJ,KAAK4kB,KAAK6rG,gBAAgB,GAAKw6B,EAAcjrJ,KAAK4kB,KAAK6rG,gBAAgB,GAAKw6B,EAAcjrJ,KAAK4kB,KAAK6rG,gBAAgB,GAAKw6B,GAC/K3+F,EAAMv2C,KAAK2zC,UAAU1pD,KAAK6iD,UAAWk4C,KACxC/6F,KAAK6iD,UAAYk4C,GAEnB/6F,KAAK+hJ,sBAAsB,CACzB5iB,OACAhtH,MAAO,GAAGwxG,MACVl7B,cACAD,YACAI,cACAD,YACAs5D,eAAgB,CAACl3H,EAAQoxE,KACvBpxE,EAAOnpB,KAAK,GAAG6uH,EAAgB,MAAMA,EAAgB,OAAQ,GAAGA,EAAgB,MAAMA,EAAgB,OAAQ,KACvG,CAACt0B,EAAO,GAAG/8F,EAAIukH,EAAaxnB,EAAO,GAAG/8F,EAAIukH,EAAaxnB,EAAO,GAAGn3F,EAAI2+G,EAAaxnB,EAAO,GAAGn3F,EAAI2+G,KAG7G,CACF,EAEF,MAAMw4B,UAAyBpC,EAC7B,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EAGJ,GAFArU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAe4H,OAChDh9C,KAAK4kB,KAAK82E,aAAe17F,KAAK4kB,KAAK4+F,UAC9BxjH,KAAKw+I,WAAY,CACpB,MAAM/1D,EAAczoF,KAAKy0E,MAAQwmE,EAAiBj7I,KAAKy0E,OAAS,CAAC,EAAG,EAAG,GACjEmU,EAAc+5C,EAAKliI,IAAI,MACvBuqJ,EAAgBxQ,EAAY7X,EAAK8C,SAAS,MAAO,MACjDj9C,EAAYwiE,EAAgB/P,EAAiB+P,GAAiB,KAC9DriE,EAAYH,EAAYI,EAAc,KAC5C,GAA+B,IAA3B5oF,KAAK0jH,YAAY3hF,QAAgBymD,EACnC,OAEFxoF,KAAK+hJ,sBAAsB,CACzB5iB,OACAhtH,MAAO,GAAGnS,KAAK0jH,YAAY3hF,UAC3B0mD,cACAD,YACAI,cACAD,YACAs5D,eAAgB,CAACl3H,EAAQoxE,KACvB,MAAM/8F,EAAI+8F,EAAO,GAAG/8F,EAAIY,KAAK0jH,YAAY3hF,MAAQ,EAC3C/8B,EAAIm3F,EAAO,GAAGn3F,EAAIhF,KAAK0jH,YAAY3hF,MAAQ,EAC3CA,EAAQo6D,EAAO,GAAG/8F,EAAI+8F,EAAO,GAAG/8F,EAAIY,KAAK0jH,YAAY3hF,MACrDE,EAASk6D,EAAO,GAAGn3F,EAAIm3F,EAAO,GAAGn3F,EAAIhF,KAAK0jH,YAAY3hF,MAO5D,OANAhX,EAAOnpB,KAAK,GAAGxC,KAAK4F,KAAK+8B,KAASE,QAC9BumD,EACFz9D,EAAOnpB,KAAK,KAEZmpB,EAAOnpB,KAAK,KAEP,CAACu6F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAGn3F,EAAGm3F,EAAO,GAAGn3F,EAAE,GAGjE,CACF,EAEF,MAAMo3I,UAAyBrC,EAC7B,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EAEJ,GADArU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAe6H,QAC3Cj9C,KAAKw+I,WAAY,CACpB,MAAM/1D,EAAczoF,KAAKy0E,MAAQwmE,EAAiBj7I,KAAKy0E,OAAS,CAAC,EAAG,EAAG,GACjEmU,EAAc+5C,EAAKliI,IAAI,MACvBuqJ,EAAgBxQ,EAAY7X,EAAK8C,SAAS,MAAO,MACjDj9C,EAAYwiE,EAAgB/P,EAAiB+P,GAAiB,KAC9DriE,EAAYH,EAAYI,EAAc,KAC5C,GAA+B,IAA3B5oF,KAAK0jH,YAAY3hF,QAAgBymD,EACnC,OAEF,MAAM0iE,EAAwB,EAAI,EAAIznI,KAAK0nI,IAAI1nI,KAAKo9B,GAAK,GACzD7gD,KAAK+hJ,sBAAsB,CACzB5iB,OACAhtH,MAAO,GAAGnS,KAAK0jH,YAAY3hF,UAC3B0mD,cACAD,YACAI,cACAD,YACAs5D,eAAgB,CAACl3H,EAAQoxE,KACvB,MAAMjyC,EAAKiyC,EAAO,GAAG/8F,EAAIY,KAAK0jH,YAAY3hF,MAAQ,EAC5CooB,EAAKgyC,EAAO,GAAGn3F,EAAIhF,KAAK0jH,YAAY3hF,MAAQ,EAC5CqoB,EAAK+xC,EAAO,GAAG/8F,EAAIY,KAAK0jH,YAAY3hF,MAAQ,EAC5CsoB,EAAK8xC,EAAO,GAAGn3F,EAAIhF,KAAK0jH,YAAY3hF,MAAQ,EAC5CqpH,EAAOlhG,GAAME,EAAKF,GAAM,EACxBmhG,EAAOlhG,GAAME,EAAKF,GAAM,EACxBmhG,GAAWlhG,EAAKF,GAAM,EAAIghG,EAC1BK,GAAWlhG,EAAKF,GAAM,EAAI+gG,EAOhC,OANAngI,EAAOnpB,KAAK,GAAGwpJ,KAAQ/gG,MAAQ,GAAG+gG,EAAOE,KAAWjhG,KAAMD,KAAMihG,EAAOE,KAAWnhG,KAAMihG,MAAU,GAAGjhG,KAAMihG,EAAOE,KAAWH,EAAOE,KAAWnhG,KAAMihG,KAAQjhG,MAAQ,GAAGihG,EAAOE,KAAWnhG,KAAMD,KAAMmhG,EAAOE,KAAWrhG,KAAMmhG,MAAU,GAAGnhG,KAAMmhG,EAAOE,KAAWH,EAAOE,KAAWjhG,KAAM+gG,KAAQ/gG,MAAQ,KACvSm+B,EACFz9D,EAAOnpB,KAAK,KAEZmpB,EAAOnpB,KAAK,KAEP,CAACu6F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAGn3F,EAAGm3F,EAAO,GAAGn3F,EAAE,GAGjE,CACF,EAEF,MAAMq3I,UAA2BtC,EAC/B,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EACJrU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAe+H,SAChDn9C,KAAK4kB,KAAK82E,aAAe17F,KAAK4kB,KAAK4+F,SACnCxjH,KAAK4kB,KAAKmsG,SAAW,GACf/wH,gBAAgBs8I,IACpBt8I,KAAKigJ,eAAetd,EAAK8C,SAAS,OAClCzlI,KAAK4kB,KAAKs7H,YAAclgJ,KAAKkgJ,aAE/B,MAAMsL,EAAc7oB,EAAK8C,SAAS,YAClC,GAAK96H,MAAMC,QAAQ4gJ,GAAnB,CAGA,QAAS3iJ,EAAI,EAAGovC,EAAKuzG,EAAY3lJ,OAAQgD,EAAIovC,EAAIpvC,GAAK,EACpD7I,KAAK4kB,KAAKmsG,SAASnvH,KAAK,CACtBxC,EAAGosJ,EAAY3iJ,GACf7D,EAAGwmJ,EAAY3iJ,EAAI,KAGvB,IAAK7I,KAAKw+I,WAAY,CACpB,MAAM/1D,EAAczoF,KAAKy0E,MAAQwmE,EAAiBj7I,KAAKy0E,OAAS,CAAC,EAAG,EAAG,GACjEmU,EAAc+5C,EAAKliI,IAAI,MACvBkjH,EAAc3jH,KAAK0jH,YAAY3hF,OAAS,EAC5CkpH,EAAe,EAAItnC,EACf5oB,EAAO,CAAC5Q,IAAUA,KAAU,KAAW,KAC7C,UAAWshE,KAAUzrJ,KAAK4kB,KAAKmsG,SAC7Bh2B,EAAK,GAAKt3E,KAAKE,IAAIo3E,EAAK,GAAI0wD,EAAOrsJ,EAAI6rJ,GACvClwD,EAAK,GAAKt3E,KAAKE,IAAIo3E,EAAK,GAAI0wD,EAAOzmJ,EAAIimJ,GACvClwD,EAAK,GAAKt3E,KAAK6H,IAAIyvE,EAAK,GAAI0wD,EAAOrsJ,EAAI6rJ,GACvClwD,EAAK,GAAKt3E,KAAK6H,IAAIyvE,EAAK,GAAI0wD,EAAOzmJ,EAAIimJ,GAEpC3+F,EAAMv2C,KAAK2zC,UAAU1pD,KAAK6iD,UAAWk4C,KACxC/6F,KAAK6iD,UAAYk4C,GAEnB/6F,KAAK+hJ,sBAAsB,CACzB5iB,OACAhtH,MAAO,GAAGwxG,MACVl7B,cACAG,cACAq5D,eAAgB,CAACl3H,EAAQoxE,KACvB,MAAM40B,EAAW/wH,KAAK4kB,KAAKmsG,SAC3B,QAASloH,EAAI,EAAGovC,EAAK84E,EAASlrH,OAAQgD,EAAIovC,EAAIpvC,IAC5CkiB,EAAOnpB,KAAK,GAAGmvH,EAASloH,GAAGzJ,KAAK2xH,EAASloH,GAAG7D,KAAW,IAAN6D,EAAU,IAAM,OAGnE,OADAkiB,EAAOnpB,KAAK,KACL,CAACu6F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAGn3F,EAAGm3F,EAAO,GAAGn3F,EAAE,GAGjE,CApCA,CAqCF,EAEF,MAAMs3I,UAA0BD,EAC9B,WAAA19H,CAAYtK,GACVozC,MAAMpzC,GACNrU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAe8H,OAClD,EAEF,MAAMq/F,UAAwBxC,EAC5B,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACNrU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAeoI,KAClD,EAEF,MAAMg/F,UAAsBzC,EAC1B,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACNrU,KAAK4kB,KAAK82E,aAAe17F,KAAK4kB,KAAK4+F,SACnC,MAAM,KACJmf,EAAI,KACJxD,GACE9qH,EACJrU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAe4F,IAChDh7C,KAAK4kB,KAAKssG,SAAW,GACrB,MAAMw6B,EAAc/oB,EAAK8C,SAAS,WAClC,GAAK96H,MAAMC,QAAQ8gJ,GAAnB,CAGA,QAAS7iJ,EAAI,EAAGovC,EAAKyzG,EAAY7lJ,OAAQgD,EAAIovC,IAAMpvC,EAAG,CACpD7I,KAAK4kB,KAAKssG,SAAStvH,KAAK,IACxB,QAASioB,EAAI,EAAGu6E,EAAKsnD,EAAY7iJ,GAAGhD,OAAQgkB,EAAIu6E,EAAIv6E,GAAK,EACvD7pB,KAAK4kB,KAAKssG,SAASroH,GAAGjH,KAAK,CACzBxC,EAAG+/H,EAAKwU,WAAW+X,EAAY7iJ,GAAGghB,IAClC7kB,EAAGm6H,EAAKwU,WAAW+X,EAAY7iJ,GAAGghB,EAAI,KAG5C,CACA,IAAK7pB,KAAKw+I,WAAY,CACpB,MAAM/1D,EAAczoF,KAAKy0E,MAAQwmE,EAAiBj7I,KAAKy0E,OAAS,CAAC,EAAG,EAAG,GACjEmU,EAAc+5C,EAAKliI,IAAI,MACvBkjH,EAAc3jH,KAAK0jH,YAAY3hF,OAAS,EAC5CkpH,EAAe,EAAItnC,EACf5oB,EAAO,CAAC5Q,IAAUA,KAAU,KAAW,KAC7C,UAAW+mC,KAAYlxH,KAAK4kB,KAAKssG,SAC/B,UAAWu6B,KAAUv6B,EACnBn2B,EAAK,GAAKt3E,KAAKE,IAAIo3E,EAAK,GAAI0wD,EAAOrsJ,EAAI6rJ,GACvClwD,EAAK,GAAKt3E,KAAKE,IAAIo3E,EAAK,GAAI0wD,EAAOzmJ,EAAIimJ,GACvClwD,EAAK,GAAKt3E,KAAK6H,IAAIyvE,EAAK,GAAI0wD,EAAOrsJ,EAAI6rJ,GACvClwD,EAAK,GAAKt3E,KAAK6H,IAAIyvE,EAAK,GAAI0wD,EAAOzmJ,EAAIimJ,GAGtC3+F,EAAMv2C,KAAK2zC,UAAU1pD,KAAK6iD,UAAWk4C,KACxC/6F,KAAK6iD,UAAYk4C,GAEnB/6F,KAAK+hJ,sBAAsB,CACzB5iB,OACAhtH,MAAO,GAAGwxG,MACVl7B,cACAG,cACAq5D,eAAgB,CAACl3H,EAAQoxE,KACvB,UAAW80B,KAAWjxH,KAAK4kB,KAAKssG,SAAU,CACxC,QAASroH,EAAI,EAAGovC,EAAKg5E,EAAQprH,OAAQgD,EAAIovC,EAAIpvC,IAC3CkiB,EAAOnpB,KAAK,GAAGqvH,EAAQpoH,GAAGzJ,KAAK6xH,EAAQpoH,GAAG7D,KAAW,IAAN6D,EAAU,IAAM,OAEjEkiB,EAAOnpB,KAAK,IACd,CACA,MAAO,CAACu6F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAGn3F,EAAGm3F,EAAO,GAAGn3F,EAAE,GAGjE,CA1CA,CA2CF,CACA,oBAAOk+I,CAAc9S,EAAYjR,GAAM,MACrC8jB,EAAK,GACLH,IAEA,MAAM,MACJruE,EAAK,QACL3C,EAAO,MACP4kB,EAAK,KACLjtC,EAAI,SACJ0N,EAAQ,UACR4/D,GACEqZ,EACEub,EAAM,IAAI9vB,EAAY2E,KAAKrB,GACjCwsB,EAAI7gI,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,UACrCkrJ,EAAI7gI,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,QACxCkrJ,EAAI7gI,IAAI,eAAgB,MAAK,EAAIwhC,EAAMzV,0BACvC80G,EAAI7gI,IAAI,OAAQ2+B,GAChBkiG,EAAI7gI,IAAI,UAAW4rE,EAAMzuF,KAAIiH,GAAKA,EAAEitF,UACpCwvD,EAAI7gI,IAAI,IAAK,GACb6gI,EAAI7gI,IAAI,SAAUqsC,GAClB,MAAMy0F,EAAK,IAAI/vB,EAAY2E,KAAKrB,GAChCwsB,EAAI7gI,IAAI,KAAM8gI,GACdA,EAAG9gI,IAAI,IAAKisG,GACZ40B,EAAI7gI,IAAI,IAAKngB,MAAMiS,KAAK63D,GAAO5rD,GAAKA,EAAI,OACxC8iI,EAAI7gI,IAAI,KAAMgnD,GACd,MAAMnyE,EAAI,IAAIk8H,EAAY2E,KAAKrB,GAO/B,OANAwsB,EAAI7gI,IAAI,KAAMnrB,GACVsjJ,EACFtjJ,EAAEmrB,IAAI,IAAKm4H,GAEXtjJ,EAAEmrB,IAAI,IAAKg4H,GAEN6I,CACT,CACA,sCAAa5I,CAA0B3S,EAAYjR,EAAM9qH,GACvD,MAAM,MACJogE,EAAK,KACLhrB,EAAI,MACJitC,EAAK,UACLqgC,EAAS,QACTjlD,GACEs+D,EACEyb,EAAmB,CAAC,GAAG90B,cAAuB,IAAG,EAAIojB,EAAoB4J,aAAatvE,GAAO,MACnF,IAAZ3C,GACF+5E,EAAiBjqJ,KAAK,UAExB,MAAMmpB,EAAS,GACf,UAAW,OACT2sG,KACGhhC,EAAO,CACV3rE,EAAOllB,OAAS,EAChBklB,EAAOnpB,KAAK,IAAG,EAAIg6H,EAAYwI,gBAAgB1M,EAAO,QAAO,EAAIkE,EAAYwI,gBAAgB1M,EAAO,SACpG,QAAS7uH,EAAI,EAAGovC,EAAKy/E,EAAO7xH,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAAG,CAClD,MAAMijJ,EAAQp0B,EAAOzqH,MAAMpE,EAAGA,EAAI,GAAGZ,IAAI2zH,EAAYwI,gBAAgB33H,KAAK,KAC1Ese,EAAOnpB,KAAK,GAAGkqJ,MACjB,CACA/gI,EAAOnpB,KAAK,KACZiqJ,EAAiBjqJ,KAAKmpB,EAAOte,KAAK,MACpC,CACA,MAAM+xI,EAAaqN,EAAiBp/I,KAAK,MACnCi2I,EAAuB,IAAI7mB,EAAY2E,KAAKrB,GAMlD,GALAujB,EAAqB53H,IAAI,WAAY,GACrC43H,EAAqB53H,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,SACzDiiJ,EAAqB53H,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,YACtDiiJ,EAAqB53H,IAAI,OAAQ2+B,GACjCi5F,EAAqB53H,IAAI,SAAU0zH,EAAW34I,QAC9B,IAAZisE,EAAe,CACjB,MAAMk9D,EAAY,IAAInT,EAAY2E,KAAKrB,GACjC4sB,EAAY,IAAIlwB,EAAY2E,KAAKrB,GACjCjyC,EAAK,IAAI2uC,EAAY2E,KAAKrB,GAChCjyC,EAAGpiE,IAAI,KAAMgnD,GACbob,EAAGpiE,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,cACpCsrJ,EAAUjhI,IAAI,KAAMoiE,GACpB8hD,EAAUlkH,IAAI,YAAaihI,GAC3BrJ,EAAqB53H,IAAI,YAAakkH,EACxC,CACA,MAAM8T,EAAK,IAAIt5C,EAAQ0jC,aAAasR,GAEpC,OADAsE,EAAGngB,KAAO+f,EACHI,CACT,EAEF,MAAMrG,UAA4B1C,EAChC,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EAGJ,GAFArU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAegI,UAC7Bp9C,KAAK4kB,KAAK8gG,WAAaw0B,EAAcvX,EAAM,MAC9C,CACd,MAAMqM,EAAYhvI,KAAKw+I,YAAY7b,KAAKliI,IAAI,aAC5C,IAAKT,KAAKw+I,aAAexP,GAAWpxE,IAAI,aAAc,CAChD59D,KAAKw+I,aACP,EAAIlyF,EAAMhhD,MAAM,8DAElB,MAAMk9E,EAAYxoF,KAAKy0E,MAAQwmE,EAAiBj7I,KAAKy0E,OAAS,CAAC,EAAG,EAAG,GAC/DkU,EAAYg6C,EAAKliI,IAAI,MAC3BT,KAAK+hJ,sBAAsB,CACzB5iB,OACA32C,YACAw5D,UAAW,WACXr5D,YACAs5D,eAAgB,CAACl3H,EAAQoxE,KACvBpxE,EAAOnpB,KAAK,GAAGu6F,EAAO,GAAG/8F,KAAK+8F,EAAO,GAAGn3F,MAAO,GAAGm3F,EAAO,GAAG/8F,KAAK+8F,EAAO,GAAGn3F,MAAO,GAAGm3F,EAAO,GAAG/8F,KAAK+8F,EAAO,GAAGn3F,MAAO,GAAGm3F,EAAO,GAAG/8F,KAAK+8F,EAAO,GAAGn3F,MAAO,KACjJ,CAACm3F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAGn3F,EAAGm3F,EAAO,GAAGn3F,KAG/D,CACF,MACEhF,KAAK4kB,KAAK2+F,SAAW,IAEzB,EAEF,MAAMm5B,UAA4B3C,EAChC,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EAGJ,GAFArU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAeiI,UAC7Br9C,KAAK4kB,KAAK8gG,WAAaw0B,EAAcvX,EAAM,OAE5D,IAAK3iI,KAAKw+I,WAAY,CACpB,MAAM/1D,EAAczoF,KAAKy0E,MAAQwmE,EAAiBj7I,KAAKy0E,OAAS,CAAC,EAAG,EAAG,GACjEmU,EAAc+5C,EAAKliI,IAAI,MAC7BT,KAAK+hJ,sBAAsB,CACzB5iB,OACAhtH,MAAO,iBACPs2E,cACAG,cACAq5D,eAAgB,CAACl3H,EAAQoxE,KACvBpxE,EAAOnpB,KAAK,GAAGu6F,EAAO,GAAG/8F,KAAK+8F,EAAO,GAAGn3F,EAAI,QAAS,GAAGm3F,EAAO,GAAG/8F,KAAK+8F,EAAO,GAAGn3F,EAAI,QAAS,KACvF,CAACm3F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAGn3F,EAAGm3F,EAAO,GAAGn3F,KAG/D,OAEAhF,KAAK4kB,KAAK2+F,SAAW,IAEzB,EAEF,MAAMo5B,UAA2B5C,EAC/B,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EAGJ,GAFArU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAekI,SAC7Bt9C,KAAK4kB,KAAK8gG,WAAaw0B,EAAcvX,EAAM,OAE5D,IAAK3iI,KAAKw+I,WAAY,CACpB,MAAM/1D,EAAczoF,KAAKy0E,MAAQwmE,EAAiBj7I,KAAKy0E,OAAS,CAAC,EAAG,EAAG,GACjEmU,EAAc+5C,EAAKliI,IAAI,MAC7BT,KAAK+hJ,sBAAsB,CACzB5iB,OACAhtH,MAAO,aACPs2E,cACAG,cACAq5D,eAAgB,CAACl3H,EAAQoxE,KACvB,MAAM6vD,GAAM7vD,EAAO,GAAGn3F,EAAIm3F,EAAO,GAAGn3F,GAAK,EACzC,IAAI4D,EAAQojJ,EACR5sJ,EAAI+8F,EAAO,GAAG/8F,EAClB,MAAM4F,EAAIm3F,EAAO,GAAGn3F,EACdinJ,EAAO9vD,EAAO,GAAG/8F,EACvB2rB,EAAOnpB,KAAK,GAAGxC,KAAK4F,EAAI4D,OACxB,GACExJ,GAAK,EACLwJ,EAAkB,IAAVA,EAAcojJ,EAAK,EAC3BjhI,EAAOnpB,KAAK,GAAGxC,KAAK4F,EAAI4D,aACjBxJ,EAAI6sJ,GAEb,OADAlhI,EAAOnpB,KAAK,KACL,CAACu6F,EAAO,GAAG/8F,EAAG6sJ,EAAMjnJ,EAAI,EAAIgnJ,EAAIhnJ,EAAI,EAAIgnJ,EAAG,GAGxD,OAEAhsJ,KAAK4kB,KAAK2+F,SAAW,IAEzB,EAEF,MAAMq5B,UAA4B7C,EAChC,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EAGJ,GAFArU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAemI,UAC7Bv9C,KAAK4kB,KAAK8gG,WAAaw0B,EAAcvX,EAAM,OAE5D,IAAK3iI,KAAKw+I,WAAY,CACpB,MAAM/1D,EAAczoF,KAAKy0E,MAAQwmE,EAAiBj7I,KAAKy0E,OAAS,CAAC,EAAG,EAAG,GACjEmU,EAAc+5C,EAAKliI,IAAI,MAC7BT,KAAK+hJ,sBAAsB,CACzB5iB,OACAhtH,MAAO,aACPs2E,cACAG,cACAq5D,eAAgB,CAACl3H,EAAQoxE,KACvBpxE,EAAOnpB,KAAK,IAAIu6F,EAAO,GAAG/8F,EAAI+8F,EAAO,GAAG/8F,GAAK,MAAW+8F,EAAO,GAAGn3F,EAAIm3F,EAAO,GAAGn3F,GAAK,MAAO,IAAIm3F,EAAO,GAAG/8F,EAAI+8F,EAAO,GAAG/8F,GAAK,MAAW+8F,EAAO,GAAGn3F,EAAIm3F,EAAO,GAAGn3F,GAAK,MAAO,KACrK,CAACm3F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAG/8F,EAAG+8F,EAAO,GAAGn3F,EAAGm3F,EAAO,GAAGn3F,KAG/D,OAEAhF,KAAK4kB,KAAK2+F,SAAW,IAEzB,EAEF,MAAMs5B,UAAwB9C,EAC5B,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACNrU,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAe2F,MAChD/6C,KAAK4kB,KAAK82E,aAAe17F,KAAK4kB,KAAK4+F,QACrC,CACA,wBAAa05B,CAAYp7E,EAAQq9D,GAC/B,MAAM,MACJp9F,EAAK,OACLE,GACE6/B,EACEO,EAAS,IAAIta,gBAAgBhmB,EAAOE,GACpC9I,EAAMkpC,EAAO6P,WAAW,KAAM,CAClCmb,OAAO,IAETl0D,EAAIk5C,UAAUvQ,EAAQ,EAAG,GACzB,MAAMl9C,EAAOuU,EAAIm5C,aAAa,EAAG,EAAGvwC,EAAOE,GAAQrd,KAC7CsnI,EAAQ,IAAItkG,YAAYhjC,EAAKmG,QAC7BohI,EAAWD,EAAMl3I,KAAKs3C,EAAMxX,YAAY4S,eAAiBtoD,GAAKA,IAAM,IAAO,IAAOA,GAAoB,MAAV,IAAJA,IAC1F+sJ,IACFhzH,EAAIuzD,UAAY,QAChBvzD,EAAIk4D,SAAS,EAAG,EAAGtvD,EAAOE,GAC1B9I,EAAIk5C,UAAUvQ,EAAQ,EAAG,IAE3B,MAAMsqF,EAAoB/pF,EAAOgqF,cAAc,CAC7Ct/I,KAAM,aACNu/I,QAAS,IACRznJ,MAAKuqB,GACCA,EAAK4vD,gBAERutE,EAAc1wB,EAAYsK,KAAK1lI,IAAI,WACnC+rJ,EAAY3wB,EAAYsK,KAAK1lI,IAAI,SACjC0xE,EAAQ,IAAI0pD,EAAY2E,KAAKrB,GACnChtD,EAAMrnD,IAAI,OAAQyhI,GAClBp6E,EAAMrnD,IAAI,UAAW0hI,GACrBr6E,EAAMrnD,IAAI,mBAAoB,GAC9BqnD,EAAMrnD,IAAI,aAAc+wG,EAAYsK,KAAK1lI,IAAI,cAC7C0xE,EAAMrnD,IAAI,SAAU+wG,EAAYsK,KAAK1lI,IAAI,cACzC0xE,EAAMrnD,IAAI,OAAQ,CAAC,EAAG,EAAGiX,EAAOE,IAChCkwC,EAAMrnD,IAAI,QAASiX,GACnBowC,EAAMrnD,IAAI,SAAUmX,GACpB,IAAIu7G,EAAc,KAClB,GAAI2O,EAAU,CACZ,MAAMM,EAAc,IAAI9iI,WAAWuiI,EAAMrmJ,QACzC,GAAIymD,EAAMxX,YAAY4S,eACpB,QAAS7+C,EAAI,EAAGovC,EAAKi0G,EAAMrmJ,OAAQgD,EAAIovC,EAAIpvC,IACzC4jJ,EAAY5jJ,GAAKqjJ,EAAMrjJ,KAAO,QAGhC,QAASA,EAAI,EAAGovC,EAAKi0G,EAAMrmJ,OAAQgD,EAAIovC,EAAIpvC,IACzC4jJ,EAAY5jJ,GAAgB,IAAXqjJ,EAAMrjJ,GAG3B,MAAMglF,EAAQ,IAAIguC,EAAY2E,KAAKrB,GACnCtxC,EAAM/iE,IAAI,OAAQyhI,GAClB1+D,EAAM/iE,IAAI,UAAW0hI,GACrB3+D,EAAM/iE,IAAI,mBAAoB,GAC9B+iE,EAAM/iE,IAAI,aAAc+wG,EAAYsK,KAAK1lI,IAAI,eAC7CotF,EAAM/iE,IAAI,QAASiX,GACnB8rD,EAAM/iE,IAAI,SAAUmX,GACpBu7G,EAAc,IAAIh0C,EAAQogC,OAAO6iB,EAAa,EAAG,EAAG5+D,EACtD,CAEA,MAAO,CACL0vD,YAFkB,IAAI/zC,EAAQogC,aAAawiB,EAAmB,EAAG,EAAGj6E,GAGpEqrE,cACAz7G,QACAE,SAEJ,CACA,oBAAOihH,CAAc9S,EAAYjR,GAAM,MACrC8jB,EAAK,GACLH,IAEA,MAAM,KACJr5F,EAAI,SACJ0N,EAAQ,KACRozF,GACEna,EACEsc,EAAQ,IAAI7wB,EAAY2E,KAAKrB,GAWnC,GAVAutB,EAAM5hI,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,UACvCisJ,EAAM5hI,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,UAC1CisJ,EAAM5hI,IAAI,eAAgB,MAAK,EAAIwhC,EAAMzV,0BACzC61G,EAAM5hI,IAAI,OAAQ2+B,GAClBijG,EAAM5hI,IAAI,IAAK,GACf4hI,EAAM5hI,IAAI,SAAU,CAAC,EAAG,EAAG,IAC3B4hI,EAAM5hI,IAAI,SAAUqsC,GAChBozF,GACFmC,EAAM5hI,IAAI,KAAK,EAAI8wG,EAAYoI,SAASumB,GAAQA,GAAO,EAAI3uB,EAAYkJ,qBAAqBylB,GAAM,IAEhGtH,GAASH,EAAI,CACf,MAAMnjJ,EAAI,IAAIk8H,EAAY2E,KAAKrB,GAC/ButB,EAAM5hI,IAAI,KAAMnrB,GACZsjJ,EACFtjJ,EAAEmrB,IAAI,IAAKm4H,GAEXtjJ,EAAEmrB,IAAI,IAAKg4H,EAEf,CACA,OAAO4J,CACT,CACA,sCAAa3J,CAA0B3S,EAAYjR,EAAM9qH,GACvD,MAAM,SACJ8iD,GACEi5E,GACE,SACJsN,EAAQ,MACR37G,EAAK,OACLE,GACE5tB,EAAO89D,MACL68D,EAAY,IAAInT,EAAY2E,KAAKrB,GACjCwtB,EAAU,IAAI9wB,EAAY2E,KAAKrB,GACrC6P,EAAUlkH,IAAI,UAAW6hI,GACzBA,EAAQ7hI,IAAI,MAAO4yH,GACnB,MAAMc,EAAa,KAAKz8G,SAAaE,qBAC/BygH,EAAuB,IAAI7mB,EAAY2E,KAAKrB,GAMlD,GALAujB,EAAqB53H,IAAI,WAAY,GACrC43H,EAAqB53H,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,SACzDiiJ,EAAqB53H,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,YACtDiiJ,EAAqB53H,IAAI,OAAQ,CAAC,EAAG,EAAGiX,EAAOE,IAC/CygH,EAAqB53H,IAAI,YAAakkH,GAClC73E,EAAU,CACZ,MAAMwjC,GAAS,EAAIihC,EAAYmI,mBAAmB5sE,EAAUp1B,EAAOE,GACnEygH,EAAqB53H,IAAI,SAAU6vE,EACrC,CACA,MAAMmoD,EAAK,IAAIt5C,EAAQ0jC,aAAasR,GAEpC,OADAsE,EAAGngB,KAAO+f,EACHI,CACT,EAEF,MAAMhG,UAAiC/C,EACrC,WAAAp7H,CAAYtK,GACVozC,MAAMpzC,GACN,MAAM,KACJsuH,EAAI,KACJxD,GACE9qH,EACEhS,EAAO,IAAIi4I,EAAWsS,SAASjqB,EAAKliI,IAAI,MAAO0+H,GACrDn/H,KAAK4kB,KAAKg5F,eAAiBtxD,EAAMlX,eAAesI,eAChD19C,KAAK4kB,KAAK82E,aAAe17F,KAAK4kB,KAAK4+F,SACnCxjH,KAAK4kB,KAAKviB,KAAOA,EAAKw9D,aACtB,MAAM12D,EAAOw5H,EAAKliI,IAAI,QACtBT,KAAK4kB,KAAKzb,KAAOA,aAAgB0yH,EAAYsK,MAAO,EAAI75E,EAAMnT,mBAAmBhwC,EAAKA,MAAQ,UAC9F,MAAMw/E,EAAYg6C,EAAKliI,IAAI,MAC3BT,KAAK4kB,KAAK+jE,UAAiC,iBAAdA,GAA0BA,GAAa,GAAKA,GAAa,EAAIA,EAAY,IACxG,EACF,EAIO,CAACj1C,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQumJ,qBAAkB,EAC1BvmJ,EAAQ+nJ,wBAyLR,UAAiC,SAC/Bj/D,EAAQ,SACRgyB,EAAQ,UACR6F,IAEA,MAAO,KAAI,EAAIoc,EAAY8H,eAAe/pB,MAAahyB,QAAeo8D,EAAYvkC,GAAW,IAC/F,EA9LA3gH,EAAQklJ,YAAcA,EACtBllJ,EAAQurJ,sBA6KR,SAA+B3kD,EAAQ10C,EAAkBouE,GACvD,OAAO,IAAI0tB,EAA0BpnD,EAAQ10C,EAAkBouE,GAAMn+H,OACvE,EA9KAnC,EAAQihJ,uBA+DR,SAAgC91H,GAC9B,OAAO,IAAI8iI,EAA2B9iI,GAAKhpB,OAC7C,EAhEA,IAAI66H,EAActwE,EAAoB,GAClCqwE,EAAcrwE,EAAoB,GAClCe,EAAQf,EAAoB,GAC5B8uF,EAAc9uF,EAAoB,IAClCqiF,EAAariF,EAAoB,IACjCu6B,EAAev6B,EAAoB,IACnCwhG,EAAYxhG,EAAoB,IAChCi+C,EAAUj+C,EAAoB,GAClC,MAAMuhG,UAAmClf,EAAWof,sBAClD,WAAAruI,CAAYqL,GACVy9B,MAAM,IAAI+hD,EAAQ0jC,aAAaljH,GACjC,CACA,KAAAhpB,GACE,MAAMisJ,EAAY,CAChBr4H,GAAI,EACJ3pB,KAAM,IAEFpH,EAAS,CACb8jF,SAAU,EACVgyB,SAAU,GACV6F,UAAW,IAAIk7B,kBAAkB,IAEnC,IACE,KACEuS,EAAUhiJ,KAAKpF,OAAS,EACnB7F,KAAKm7D,KAAK8xF,IAFJ,CAKX,GAA8B,IAA1BjtJ,KAAKktJ,iBACP,SAEF,MAAM,GACJt4H,EAAE,KACF3pB,GACEgiJ,EACJ,OAAa,EAALr4H,GACN,KAAK03B,EAAMjY,IAAI0P,QACb,MAAO41D,EAAUhyB,GAAY18E,EACzB0uG,aAAoBkiB,EAAYsK,OAClCtiI,EAAO81G,SAAWA,EAASxwG,MAEL,iBAAbw+E,GAAyBA,EAAW,IAC7C9jF,EAAO8jF,SAAWA,GAEpB,MACF,KAAKr7B,EAAMjY,IAAIgR,gBACbg1F,EAAYO,WAAWC,WAAWnmE,IAAIqmE,WAAW9vI,EAAM,EAAGpH,EAAO27G,UAAW,GAC5E,MACF,KAAKlzD,EAAMjY,IAAI8Q,YACbk1F,EAAYO,WAAWC,WAAWC,KAAKC,WAAW9vI,EAAM,EAAGpH,EAAO27G,UAAW,GAC7E,MACF,KAAKlzD,EAAMjY,IAAIkR,iBACb80F,EAAYO,WAAWC,WAAWG,KAAKD,WAAW9vI,EAAM,EAAGpH,EAAO27G,UAAW,GAGnF,CACF,CAAE,MAAO7kG,IACP,EAAI2xC,EAAMhhD,MAAM,8CAA8CqP,MAChE,CACA,OAAO9W,CACT,EAKF,MAAMgpJ,UAAkCjf,EAAWof,sBACjD,WAAAruI,CAAY8mF,EAAQ10C,EAAkBouE,GACpC13E,MAAMg+C,GACNzlG,KAAKylG,OAASA,EACdzlG,KAAK+wD,iBAAmBA,EACxB/wD,KAAKm/H,KAAOA,EACZn/H,KAAKgvI,UAAYvpC,EAAOk9B,MAAMliI,IAAI,YACpC,CACA,KAAAO,GACE,MAAMisJ,EAAY,CAChBr4H,GAAI,EACJ3pB,KAAM,IAER,IAAIpH,EAAS,CACXy0G,YAAa,EACb3wB,SAAU,EACVgyB,SAAU,GACV6F,UAAW,IAAIk7B,kBAAkB,GACjCyS,eAAgB9S,EAAYO,WAAWC,WAAWC,MAEhDsS,GAAY,EAChB,MAAMhsJ,EAAQ,GACd,IACE,KACE6rJ,EAAUhiJ,KAAKpF,OAAS,GACpBunJ,GAAcptJ,KAAKm7D,KAAK8xF,IAFjB,CAKX,MAAM,GACJr4H,EAAE,KACF3pB,GACEgiJ,EACJ,OAAa,EAALr4H,GACN,KAAK03B,EAAMjY,IAAI+N,KACbhhD,EAAMQ,KAAK,CACT02G,YAAaz0G,EAAOy0G,YACpB3wB,SAAU9jF,EAAO8jF,SACjBgyB,SAAU91G,EAAO81G,SACjB6F,UAAW37G,EAAO27G,UAAUvyG,QAC5BkgJ,eAAgBtpJ,EAAOspJ,iBAEzB,MACF,KAAK7gG,EAAMjY,IAAIgO,QACbx+C,EAASzC,EAAMwE,OAAS/B,EACxB,MACF,KAAKyoD,EAAMjY,IAAI+P,cACbvgD,EAAOy0G,aAAe70F,KAAKktD,MAAM1lE,EAAK,GAAIA,EAAK,IAC/C,MACF,KAAKqhD,EAAMjY,IAAI0P,QACb,MAAO41D,EAAUhyB,GAAY18E,EACzB0uG,aAAoBkiB,EAAYsK,OAClCtiI,EAAO81G,SAAWA,EAASxwG,MAEL,iBAAbw+E,GAAyBA,EAAW,IAC7C9jF,EAAO8jF,SAAWA,EAAW9jF,EAAOy0G,aAEtC,MACF,KAAKhsD,EAAMjY,IAAIwQ,kBACbhhD,EAAOspJ,eAAiB9S,EAAYO,WAAW55I,MAAM,CACnDqgG,GAAIp2F,EAAK,GACTk0H,KAAMn/H,KAAKm/H,KACX6P,UAAWhvI,KAAKgvI,UAChBqe,mBAAoBrtJ,KAAKstJ,oBACzBC,qBAAsBvtJ,KAAKwtJ,wBAE7B,MACF,KAAKlhG,EAAMjY,IAAI2Q,aACFnhD,EAAOspJ,eACfpS,WAAW9vI,EAAM,EAAGpH,EAAO27G,UAAW,GACzC,MACF,KAAKlzD,EAAMjY,IAAIgR,gBACbg1F,EAAYO,WAAWC,WAAWnmE,IAAIqmE,WAAW9vI,EAAM,EAAGpH,EAAO27G,UAAW,GAC5E,MACF,KAAKlzD,EAAMjY,IAAI8Q,YACbk1F,EAAYO,WAAWC,WAAWC,KAAKC,WAAW9vI,EAAM,EAAGpH,EAAO27G,UAAW,GAC7E,MACF,KAAKlzD,EAAMjY,IAAIkR,iBACb80F,EAAYO,WAAWC,WAAWG,KAAKD,WAAW9vI,EAAM,EAAGpH,EAAO27G,UAAW,GAC7E,MACF,KAAKlzD,EAAMjY,IAAIiQ,SACf,KAAKgI,EAAMjY,IAAIkQ,eACf,KAAK+H,EAAMjY,IAAImQ,iBACf,KAAK8H,EAAMjY,IAAIoQ,2BACb2oG,GAAY,EAGlB,CACF,CAAE,MAAOzyI,IACP,EAAI2xC,EAAMhhD,MAAM,6CAA6CqP,MAC/D,CAIA,OAHA3a,KAAKylG,OAAOt6E,eACLtnB,EAAOy0G,mBACPz0G,EAAOspJ,eACPtpJ,CACT,CACA,yBAAI2pJ,GACF,SAAWlhG,EAAMtT,QAAQh5C,KAAM,wBAAyB,IAAI8lF,EAAa2nE,qBAC3E,CACA,uBAAIH,GACF,MAAMD,EAAqB,IAAIN,EAAUW,mBAAmB,CAC1DvuB,KAAMn/H,KAAKm/H,KACXt3E,gBAAiB7nD,KAAK+wD,iBAAiBlJ,kBAEzC,SAAWyE,EAAMtT,QAAQh5C,KAAM,sBAAuBqtJ,EACxD,EAKF,SAAStJ,EAAYtvE,EAAOk5E,GAC1B,GAAIl5E,EAAM,KAAOA,EAAM,IAAMA,EAAM,KAAOA,EAAM,GAAI,CAClD,MAAMqmE,EAAOrmE,EAAM,GAAK,IACxB,MAAO,IAAG,EAAImnD,EAAYwI,gBAAgB0W,MAAS6S,EAAS,IAAM,KACpE,CACA,OAAOhjJ,MAAMiS,KAAK63D,GAAO5rD,IAAA,EAAS+yG,EAAYwI,gBAAgBv7G,EAAI,OAAMpc,KAAK,KAAO,KAAIkhJ,EAAS,KAAO,KAC1G,CAQA,MAAMvI,EACJ,WAAAzmI,CAAYwgH,EAAMx6C,GAChB3kF,KAAKm/H,KAAOA,EACZn/H,KAAK4tJ,OAAS,KACd5tJ,KAAK6tJ,UAAY1jE,IACjBnqF,KAAK8tJ,UAAW,IAChB9tJ,KAAK2kF,WAAaA,EAClB,MAAMtiB,EAAS,IAAIta,gBAAgB,EAAG,GACtC/nD,KAAK+tJ,WAAa1rF,EAAO6P,WAAW,MAC/BkzE,EAAgB4I,cACnB5I,EAAgB4I,YAAc,GAEhChuJ,KAAK25G,SAAWkiB,EAAYsK,KAAK1lI,IAAI,oBAAoBkkF,KAAcygE,EAAgB4I,gBACzF,CACA,gBAAIC,GACF,IAAK7I,EAAgB8I,cAAe,CAClC,MAAMC,EAAY,2WAeZ7D,EAAkBlF,EAAgBkF,gBAAkB,IAAI9gD,EAAQ0jC,aAAaihB,GAC7EC,EAAgB,IAAIvyB,EAAY2E,KAAKxgI,KAAKm/H,MAChDmrB,EAAgB3nB,KAAOyrB,EACvBA,EAActjI,IAAI,SAAUqjI,EAAUtoJ,QACtCu/I,EAAgB8I,cAAgBluJ,KAAKm/H,KAAKkvB,oBAAoB/D,EAChE,CACA,OAAOlF,EAAgB8I,aACzB,CACA,qBAAII,GACF,IAAKlJ,EAAgBmJ,mBAAoB,CACvC,MAAMC,EAAiB,IAAI3yB,EAAY2E,KAAKxgI,KAAKm/H,MACjDqvB,EAAe1jI,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,mBAChD+tJ,EAAe1jI,IAAI,WAAY9qB,KAAK25G,UACpC60C,EAAe1jI,IAAI,aAAc,qBACjC0jI,EAAe1jI,IAAI,WAAY,CAAC,EAAG,EAAG,EAAG,IACzC0jI,EAAe1jI,IAAI,cAAe+wG,EAAYsK,KAAK1lI,IAAI,WACvD+tJ,EAAe1jI,IAAI,aAAc,KACjC0jI,EAAe1jI,IAAI,cAAe,GAClCs6H,EAAgBmJ,mBAAqBvuJ,KAAKm/H,KAAKkvB,oBAAoBG,EACrE,CACA,OAAOpJ,EAAgBmJ,kBACzB,CACA,qBAAIE,GACF,MAAMC,EAAiB,IAAI7yB,EAAY2E,KAAKxgI,KAAKm/H,MACjDuvB,EAAe5jI,IAAI,WAAY9qB,KAAK25G,UACpC+0C,EAAe5jI,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,SAChDiuJ,EAAe5jI,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,iBACnDiuJ,EAAe5jI,IAAI,cAAe+wG,EAAYsK,KAAK1lI,IAAI,aACvDiuJ,EAAe5jI,IAAI,YAAa9qB,KAAK6tJ,WACrCa,EAAe5jI,IAAI,WAAY9qB,KAAK8tJ,UACpCY,EAAe5jI,IAAI,iBAAkB9qB,KAAKsuJ,mBAC1CI,EAAe5jI,IAAI,KAAM,KACzB,MAAM8iI,EAAS,GACTn1D,EAAQ,IAAIz4F,KAAK4tJ,OAAO1vI,WAAWkzB,OACzC,IAAIu9G,EAAc,KACdC,EAAgB,KACpB,UAAYtrB,EAAMvhG,KAAU02D,EACrBk2D,EAKDrrB,IAASqrB,EAAcC,EAAc/oJ,OACvC+oJ,EAAchtJ,KAAKmgC,IAEnB6rH,EAAOhsJ,KAAK+sJ,EAAaC,GACzBD,EAAcrrB,EACdsrB,EAAgB,CAAC7sH,KATjB4sH,EAAcrrB,EACdsrB,EAAgB,CAAC7sH,IAWjB4sH,GACFf,EAAOhsJ,KAAK+sJ,EAAaC,GAE3BF,EAAe5jI,IAAI,IAAK8iI,GACxB,MAAMiB,EAAgB,IAAIhzB,EAAY2E,KAAKxgI,KAAKm/H,MAKhD,OAJA0vB,EAAc/jI,IAAI,WAAY,YAC9B+jI,EAAc/jI,IAAI,WAAY,SAC9B+jI,EAAc/jI,IAAI,aAAc,GAChC4jI,EAAe5jI,IAAI,gBAAiB+jI,GAC7B7uJ,KAAKm/H,KAAKkvB,oBAAoBK,EACvC,CACA,eAAItR,GACF,MAAMC,EAAW,IAAIxhB,EAAY2E,KAAKxgI,KAAKm/H,MAO3C,OANAke,EAASvyH,IAAI,WAAY9qB,KAAK25G,UAC9B0jC,EAASvyH,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,SAC1C48I,EAASvyH,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,UAC7C48I,EAASvyH,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAI,eAC9C48I,EAASvyH,IAAI,kBAAmB,CAAC9qB,KAAKyuJ,oBACtCpR,EAASvyH,IAAI,YAAa9qB,KAAKiuJ,cACxBjuJ,KAAKm/H,KAAKkvB,oBAAoBhR,EACvC,CACA,aAAIrO,GACF,MAAMA,EAAY,IAAInT,EAAY2E,KAAKxgI,KAAKm/H,MACtC39D,EAAO,IAAIq6D,EAAY2E,KAAKxgI,KAAKm/H,MAGvC,OAFA39D,EAAK12C,IAAI9qB,KAAK25G,SAASxwG,KAAMnJ,KAAKo9I,aAClCpO,EAAUlkH,IAAI,OAAQ02C,GACfwtE,CACT,CACA,cAAA8f,GAGE,OAFA9uJ,KAAK4tJ,OAAS,IAAIt1G,IAClBt4C,KAAK+tJ,WAAWvsF,KAAO,UAAUxhE,KAAK2kF,aAC/B3kF,KAAK+tJ,UACd,CACA,mBAAA1I,CAAoBpuI,GAClB,MAAMkiB,EAAMn5B,KAAK8uJ,iBACjB,UAAWztJ,KAAQ4V,EAAK/V,MAAM,YAC5B,UAAWoiI,KAAQjiI,EAAKH,MAAM,IAAK,CACjC,MAAMy4C,EAAO2pF,EAAKt6G,WAAW,GAC7B,GAAIhpB,KAAK4tJ,OAAOhwF,IAAIjkB,GAClB,SAEF,MAAMogE,EAAU5gF,EAAIogE,YAAY+pC,GAC1BvhG,EAAQte,KAAKqJ,KAAKitF,EAAQh4E,OAChC/hC,KAAK4tJ,OAAO9iI,IAAI6uB,EAAM5X,GACtB/hC,KAAK6tJ,UAAYpqI,KAAKE,IAAIg2B,EAAM35C,KAAK6tJ,WACrC7tJ,KAAK8tJ,SAAWrqI,KAAK6H,IAAIquB,EAAM35C,KAAK8tJ,SACtC,CAEF,OAAO9tJ,KAAKgvI,SACd,CACA,gBAAAqb,CAAiBpzI,EAAMwyC,EAAM0N,EAAUwwB,EAAU3K,EAAS4L,GACxD,MAAMzvD,EAAMn5B,KAAK8uJ,iBACXhhJ,EAAQ,GACd,IAAIg+D,GAAW,IACf,UAAWzqE,KAAQ4V,EAAK/V,MAAM,YAAa,CACzC4M,EAAMlM,KAAKP,GACX,MAAMwnF,EAAY1vD,EAAIogE,YAAYl4F,GAAM0gC,MACxC+pC,EAAWroD,KAAK6H,IAAIwgD,EAAU+c,GAC9B,UAAWy6C,KAAQjiI,EAAKH,MAAM,IAAK,CACjC,MAAMy4C,EAAO2pF,EAAKt6G,WAAW,GAC7B,IAAI+Y,EAAQ/hC,KAAK4tJ,OAAOntJ,IAAIk5C,GAC5B,QAAc,IAAV5X,EAAqB,CACvB,MAAMg4E,EAAU5gF,EAAIogE,YAAY+pC,GAChCvhG,EAAQte,KAAKqJ,KAAKitF,EAAQh4E,OAC1B/hC,KAAK4tJ,OAAO9iI,IAAI6uB,EAAM5X,GACtB/hC,KAAK6tJ,UAAYpqI,KAAKE,IAAIg2B,EAAM35C,KAAK6tJ,WACrC7tJ,KAAK8tJ,SAAWrqI,KAAK6H,IAAIquB,EAAM35C,KAAK8tJ,SACtC,CACF,CACF,CACAhiF,GAAY6b,EAAW,IACvB,MAAOv9B,EAAIC,EAAIC,EAAIC,GAAMd,EACzB,IAAI9gB,EAAI2hB,EAAKF,EACTxhB,EAAI2hB,EAAKF,EACT8M,EAAW,KAAQ,KACpBxuB,EAAGC,GAAK,CAACA,EAAGD,IAEf,IAAIgiH,EAAS,EACT7+E,EAAWnjC,IACbgiH,EAAShiH,EAAImjC,GAEf,IAAI8+E,EAAS,EACb,MAAM1/B,EAAa5+D,EAAM9X,YAAcmzC,EACjConE,EAAcziG,EAAM7X,oBAAsBkzC,EAC1C5b,EAAYm/C,EAAap9G,EAAMjI,OACjCkmE,EAAYnjC,IACdgiH,EAAShiH,EAAImjC,GAEf,MACM++E,EAAcnjE,EADLlkE,KAAKE,IAAIgnI,EAAQC,GAE1B7/H,EAAS,CAAC,IAAK,QAAO,EAAI6wG,EAAYwI,gBAAgBz7F,OAAM,EAAIizF,EAAYwI,gBAAgBx7F,YAAa,KAAM,cAAa,EAAIgzF,EAAYwI,gBAAgBx7F,EAAImmH,cAAwBhL,EAAY/mE,GAAS,KAAS,IAAIh9E,KAAK25G,SAASxwG,SAAQ,EAAIyyH,EAAYwI,gBAAgB0mB,UAChR,UACJ9b,GACEhvI,KAEJ,GAAoB,KADpB4oF,EAAqC,iBAAhBA,GAA4BA,GAAe,GAAKA,GAAe,EAAIA,EAAc,GAC/E,CACrB79D,EAAOnpB,KAAK,UACZ,MAAMmqJ,EAAY,IAAIlwB,EAAY2E,KAAKxgI,KAAKm/H,MACtCjyC,EAAK,IAAI2uC,EAAY2E,KAAKxgI,KAAKm/H,MACrCjyC,EAAGpiE,IAAI,KAAM89D,GACbsE,EAAGpiE,IAAI,KAAM89D,GACbsE,EAAGpiE,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,cACpCsrJ,EAAUjhI,IAAI,KAAMoiE,GACpB8hD,EAAUlkH,IAAI,YAAaihI,EAC7B,CACA,MAAMxE,GAAS,EAAI3rB,EAAYwI,gBAAgBlZ,GAC/C,UAAW7pH,KAAQyM,EACjBid,EAAOnpB,KAAK,MAAM2lJ,UAAc,EAAI3rB,EAAYiJ,wBAAwBxjI,UAE1E0pB,EAAOnpB,KAAK,KAAM,KAClB,MAAM48I,EAAazzH,EAAOte,KAAK,MACzBi2I,EAAuB,IAAI7mB,EAAY2E,KAAKxgI,KAAKm/H,MAMvD,GALAujB,EAAqB53H,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,SACzDiiJ,EAAqB53H,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,YACtDiiJ,EAAqB53H,IAAI,OAAQ,CAAC,EAAG,EAAG6d,EAAGC,IAC3C85G,EAAqB53H,IAAI,SAAU0zH,EAAW34I,QAC9C68I,EAAqB53H,IAAI,YAAakkH,GAClC73E,EAAU,CACZ,MAAMwjC,GAAS,EAAIihC,EAAYmI,mBAAmB5sE,EAAUxuB,EAAGC,GAC/D85G,EAAqB53H,IAAI,SAAU6vE,EACrC,CACA,MAAMmoD,EAAK,IAAIt5C,EAAQ0jC,aAAasR,GAEpC,OADAsE,EAAGngB,KAAO+f,EACHI,CACT,EAEFjkJ,EAAQumJ,gBAAkBA,CAAe,EAIlC,CAAC1xG,EAAyB70C,EAAS0sD,KAtvP1C,QAAAyjG,EAAAC,EAAA,oDAAAD,EAAAC,EAAA,QAAAD,EAAAC,EA0vPA3vJ,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ+7I,gBAAa,EACrB,IAAItuF,EAAQf,EAAoB,GAC5BswE,EAActwE,EAAoB,GAClCi6E,EAAej6E,EAAoB,GACnCqwE,EAAcrwE,EAAoB,GAwBtC,MAAMqvF,EACJ,WAAAj8H,CAAYxV,EAAM+lJ,GACZlvJ,KAAK2e,cAAgBi8H,IACvB,EAAItuF,EAAMpW,aAAa,iCAEzBl2C,KAAKmJ,KAAOA,EACZnJ,KAAKkvJ,SAAWA,CAClB,CACA,MAAAC,CAAOvuJ,EAAKwuJ,GACV,MAAM16E,EAAM,IAAIgmE,kBAAkB,GAElC,OADA16I,KAAK+6I,WAAWn6I,EAAKwuJ,EAAW16E,EAAK,GAC9BA,CACT,CACA,UAAAqmE,CAAWn6I,EAAKwuJ,EAAWpkE,EAAMqkE,IAC/B,EAAI/iG,EAAMpW,aAAa,wCACzB,CACA,YAAAo5G,CAAa1uJ,EAAKwuJ,EAAWp8D,EAAOhI,EAAMqkE,EAAYE,EAAMC,IAC1D,EAAIljG,EAAMpW,aAAa,0CACzB,CACA,eAAAu5G,CAAgBC,EAAaF,IAC3B,EAAIljG,EAAMpW,aAAa,6CACzB,CACA,aAAAy5G,CAAcJ,GACZ,OAAO,CACT,CACA,eAAAK,CAAgBC,EAAWC,GACzB,OAAOlV,EAAWgV,gBAAgBC,EAAW7vJ,KAAKkvJ,SACpD,CACA,OAAAa,CAAQ/kE,EAAMglE,EAAeC,EAAgBluH,EAAOE,EAAQiuH,EAAcJ,EAAKK,EAAOX,GACpF,MAAMx8D,EAAQg9D,EAAgBC,EAC9B,IAAIG,EAAS,KACb,MAAMC,EAAqB,GAAKP,EAC1BQ,EAAgBL,IAAmBhuH,GAAU+tH,IAAkBjuH,EACrE,GAAI/hC,KAAK2vJ,cAAcG,GACrBM,EAASD,OACJ,GAAsB,IAAlBnwJ,KAAKkvJ,UAAkBl8D,EAAQq9D,GAAoC,eAAdrwJ,KAAKmJ,MAAuC,cAAdnJ,KAAKmJ,KAAsB,CACvH,MAAMonJ,EAAYT,GAAO,EAAI,IAAInmI,WAAW0mI,GAAsB,IAAIG,YAAYH,GAClF,QAASxnJ,EAAI,EAAGA,EAAIwnJ,EAAoBxnJ,IACtC0nJ,EAAU1nJ,GAAKA,EAEjB,MAAM4nJ,EAAW,IAAI/V,kBAAuC,EAArB2V,GAEvC,GADArwJ,KAAKsvJ,aAAaiB,EAAW,EAAGF,EAAoBI,EAAU,EAAGX,EAAK,GACjEQ,EASE,CACLF,EAAS,IAAIzmI,WAAmB,EAARqpE,GACxB,IAAI09D,EAAS,EACb,QAAS7nJ,EAAI,EAAGA,EAAImqF,IAASnqF,EAAG,CAC9B,MAAMiE,EAAiB,EAAXqjJ,EAAMtnJ,GAClBunJ,EAAOM,KAAYD,EAAS3jJ,GAC5BsjJ,EAAOM,KAAYD,EAAS3jJ,EAAM,GAClCsjJ,EAAOM,KAAYD,EAAS3jJ,EAAM,EACpC,CACF,KAlBoB,CAClB,IAAIg+E,EAAU,EACd,QAASjiF,EAAI,EAAGA,EAAImqF,IAASnqF,EAAG,CAC9B,MAAMiE,EAAiB,EAAXqjJ,EAAMtnJ,GAClBmiF,EAAKF,KAAa2lE,EAAS3jJ,GAC3Bk+E,EAAKF,KAAa2lE,EAAS3jJ,EAAM,GACjCk+E,EAAKF,KAAa2lE,EAAS3jJ,EAAM,GACjCg+E,GAAW0kE,CACb,CACF,CAUF,MAAYc,GAGVF,EAAS,IAAI1V,kBAA0B,EAAR1nD,GAC/BhzF,KAAKsvJ,aAAaa,EAAO,EAAGn9D,EAAOo9D,EAAQ,EAAGN,EAAK,IAHnD9vJ,KAAKsvJ,aAAaa,EAAO,EAAGpuH,EAAQmuH,EAAcllE,EAAM,EAAG8kE,EAAKN,GAKlE,GAAIY,EACF,GAAIE,GA3FV,SAAwB1vJ,EAAKoqF,EAAM2lE,EAAIhvE,EAAIivE,EAAIhvE,EAAI4tE,GAEjDA,EAAsB,IAAZA,EAAgB,EAAIA,EAC9B,MAAMpU,EAASuV,EAAKC,EACdvV,EAAS15D,EAAKC,EACpB,IACEivE,EADEC,EAAW,EAEf,MAAMC,EAAU,IAAIP,YAAYI,GAC1BI,EAPa,EAOAL,EACnB,QAAS9nJ,EAAI,EAAGA,EAAI+nJ,EAAI/nJ,IACtBkoJ,EAAQloJ,GATS,EASJ4a,KAAKi0B,MAAM7uC,EAAIuyI,GAE9B,QAASvyI,EAAI,EAAGA,EAAI+4E,EAAI/4E,IAAK,CAC3B,MAAMooJ,EAAKxtI,KAAKi0B,MAAM7uC,EAAIwyI,GAAU2V,EACpC,QAASnnI,EAAI,EAAGA,EAAI+mI,EAAI/mI,IACtBgnI,EAAWI,EAAKF,EAAQlnI,GACxBmhE,EAAK8lE,KAAclwJ,EAAIiwJ,KACvB7lE,EAAK8lE,KAAclwJ,EAAIiwJ,KACvB7lE,EAAK8lE,KAAclwJ,EAAIiwJ,KACvBC,GAAYtB,CAEhB,CACF,CAsEQ0B,CAAed,EAAQplE,EAAMglE,EAAeC,EAAgBluH,EAAOE,EAAQutH,OACtE,CACL,IAAI1kE,EAAU,EACZ4lE,EAAS,EACX,QAAS7nJ,EAAI,EAAGovC,EAAKlW,EAAQmuH,EAAcrnJ,EAAIovC,EAAIpvC,IACjDmiF,EAAKF,KAAaslE,EAAOM,KACzB1lE,EAAKF,KAAaslE,EAAOM,KACzB1lE,EAAKF,KAAaslE,EAAOM,KACzB5lE,GAAW0kE,CAEf,CAEJ,CACA,sBAAI2B,GACF,SAAW7kG,EAAMtT,QAAQh5C,KAAM,sBAAsB,EACvD,CACA,aAAOoxJ,CAAO14F,EAAUymE,EAAMouB,EAAsB8D,GAClD,IAAK9D,EACH,MAAM,IAAI9hJ,MAAM,iEAElB,IAAK4lJ,EACH,MAAM,IAAI5lJ,MAAM,6DAElB,IAAI6lJ,EAAQC,EACR74F,aAAoBmjE,EAAY2C,MAClC+yB,EAAQ74F,EACRA,EAAWymE,EAAK3nH,MAAMkhD,IAEpBA,aAAoBmjE,EAAYsK,OAClCmrB,EAAS54F,EAASvvD,OAEhBmoJ,GAAUC,IACZhE,EAAqBziI,IAAIwmI,EAAQC,EAAOF,EAE5C,CACA,gBAAOG,CAAU94F,EAAUymE,EAAMouB,GAC/B,IAAKA,EACH,MAAM,IAAI9hJ,MAAM,oEAElB,GAAIitD,aAAoBmjE,EAAY2C,IAAK,CACvC,MAAMizB,EAAkBlE,EAAqBmE,SAASh5F,GACtD,GAAI+4F,EACF,OAAOA,EAET,IACE/4F,EAAWymE,EAAK3nH,MAAMkhD,EACxB,CAAE,MAAOjf,GACP,GAAIA,aAAcmiF,EAAY4G,qBAC5B,MAAM/oF,CAEV,CACF,CACA,GAAIif,aAAoBmjE,EAAYsK,KAAM,CACxC,MAAMsrB,EAAkBlE,EAAqBoE,UAAUj5F,EAASvvD,MAChE,GAAIsoJ,EACF,OAAOA,CAEX,CACA,OAAO,IACT,CACA,uBAAaG,EAAW,GACtBvwD,EAAE,KACF89B,EAAI,UACJ6P,EAAY,KAAI,mBAChBqe,EAAkB,qBAClBE,IAEA,MAAM8D,EAAmBrxJ,KAAK6xJ,OAAOxwD,EAAI89B,EAAM6P,EAAWqe,GAE1D,OADArtJ,KAAKoxJ,OAAO/vD,EAAI89B,EAAMouB,EAAsB8D,GACrCA,CACT,CACA,YAAOrwJ,EAAM,GACXqgG,EAAE,KACF89B,EAAI,UACJ6P,EAAY,KAAI,mBAChBqe,EAAkB,qBAClBE,IAEA,MAAMuE,EAAmB9xJ,KAAKwxJ,UAAUnwD,EAAI89B,EAAMouB,GAClD,GAAIuE,EACF,OAAOA,EAET,MAAMT,EAAmBrxJ,KAAK6xJ,OAAOxwD,EAAI89B,EAAM6P,EAAWqe,GAE1D,OADArtJ,KAAKoxJ,OAAO/vD,EAAI89B,EAAMouB,EAAsB8D,GACrCA,CACT,CACA,aAAOQ,CAAOxwD,EAAI89B,EAAM6P,EAAY,KAAMqe,GAExC,IADAhsD,EAAK89B,EAAKwU,WAAWtyC,cACHw6B,EAAYsK,KAC5B,OAAQ9kC,EAAGl4F,MACT,IAAK,IACL,IAAK,aACH,OAAOnJ,KAAK66I,WAAWC,KACzB,IAAK,MACL,IAAK,YACH,OAAO96I,KAAK66I,WAAWnmE,IACzB,IAAK,OACL,IAAK,aACH,OAAO10E,KAAK66I,WAAWG,KACzB,IAAK,UACH,OAAO,IAAI+W,EAAU,MACvB,QACE,GAAI/iB,aAAqBnT,EAAY2E,KAAM,CACzC,MAAMwxB,EAAchjB,EAAUvuI,IAAI,cAClC,GAAIuxJ,aAAuBn2B,EAAY2E,KAAM,CAC3C,MAAMyxB,EAAcD,EAAYvxJ,IAAI4gG,EAAGl4F,MACvC,GAAI8oJ,EAAa,CACf,GAAIA,aAAuBp2B,EAAYsK,KACrC,OAAOnmI,KAAK6xJ,OAAOI,EAAa9yB,EAAM6P,EAAWqe,GAEnDhsD,EAAK4wD,EACL,KACF,CACF,CACF,CACA,MAAM,IAAI3lG,EAAMzX,YAAY,4BAA4BwsD,EAAGl4F,QAGjE,GAAIwB,MAAMC,QAAQy2F,GAAK,CACrB,MAAMjxD,EAAO+uF,EAAKwU,WAAWtyC,EAAG,IAAIl4F,KACpC,IAAIkL,EAAQ66I,EAAUgD,EAAQC,EAAYC,EAAYC,EACtD,OAAQjiH,GACN,IAAK,IACL,IAAK,aACH,OAAOpwC,KAAK66I,WAAWC,KACzB,IAAK,MACL,IAAK,YACH,OAAO96I,KAAK66I,WAAWnmE,IACzB,IAAK,OACL,IAAK,aACH,OAAO10E,KAAK66I,WAAWG,KACzB,IAAK,UAKH,OAJA3mI,EAAS8qH,EAAKwU,WAAWtyC,EAAG,IAC5B8wD,EAAa99I,EAAOoxH,SAAS,cAC7B2sB,EAAa/9I,EAAOoxH,SAAS,cAC7B4sB,EAAQh+I,EAAO5T,IAAI,SACZ,IAAI6xJ,GAAUH,EAAYC,EAAYC,GAC/C,IAAK,SACHh+I,EAAS8qH,EAAKwU,WAAWtyC,EAAG,IAC5B8wD,EAAa99I,EAAOoxH,SAAS,cAC7B2sB,EAAa/9I,EAAOoxH,SAAS,cAC7B4sB,EAAQh+I,EAAOoxH,SAAS,SACxB,MAAM9qC,EAAStmF,EAAOoxH,SAAS,UAC/B,OAAO,IAAI8sB,GAASJ,EAAYC,EAAYC,EAAO13D,GACrD,IAAK,WACH,MACMgoC,EADSxD,EAAKwU,WAAWtyC,EAAG,IACdshC,KACpBusB,EAAWvsB,EAAKliI,IAAI,KACpB,MAAMipH,EAAMiZ,EAAKliI,IAAI,aACrB,GAAIipH,EAAK,CACP,MAAM8oC,EAAQxyJ,KAAK6xJ,OAAOnoC,EAAKyV,EAAM6P,EAAWqe,GAChD,GAAImF,EAAMtD,WAAaA,EACrB,OAAOsD,GAET,EAAIlmG,EAAMhhD,MAAM,6DAClB,CACA,GAAiB,IAAb4jJ,EACF,OAAOlvJ,KAAK66I,WAAWC,KAClB,GAAiB,IAAboU,EACT,OAAOlvJ,KAAK66I,WAAWnmE,IAClB,GAAiB,IAAbw6E,EACT,OAAOlvJ,KAAK66I,WAAWG,KAEzB,MACF,IAAK,UAKH,OAJAkX,EAAS7wD,EAAG,IAAM,KACd6wD,IACFA,EAASlyJ,KAAK6xJ,OAAOK,EAAQ/yB,EAAM6P,EAAWqe,IAEzC,IAAI0E,EAAUG,GACvB,IAAK,IACL,IAAK,UACHA,EAASlyJ,KAAK6xJ,OAAOxwD,EAAG,GAAI89B,EAAM6P,EAAWqe,GAC7C,MAAMoF,EAAQtzB,EAAKwU,WAAWtyC,EAAG,IAAM,EACjCyiC,EAAS3E,EAAKwU,WAAWtyC,EAAG,IAClC,OAAO,IAAIqxD,EAAUR,EAAQO,EAAO3uB,GACtC,IAAK,aACL,IAAK,UACH,MAAM36H,EAAOg2H,EAAKwU,WAAWtyC,EAAG,IAChC6tD,EAAWvkJ,MAAMC,QAAQzB,GAAQA,EAAKtD,OAAS,EAC/CqsJ,EAASlyJ,KAAK6xJ,OAAOxwD,EAAG,GAAI89B,EAAM6P,EAAWqe,GAC7C,MAAMsF,EAAStF,EAAmBnqJ,OAAOm+F,EAAG,IAC5C,OAAO,IAAIuxD,EAAY1D,EAAUgD,EAAQS,GAC3C,IAAK,MACHt+I,EAAS8qH,EAAKwU,WAAWtyC,EAAG,IAC5B8wD,EAAa99I,EAAOoxH,SAAS,cAC7B2sB,EAAa/9I,EAAOoxH,SAAS,cAC7B,MAAMx0F,EAAQ58B,EAAOoxH,SAAS,SAC9B,OAAO,IAAIotB,GAAMV,EAAYC,EAAYnhH,GAC3C,QACE,MAAM,IAAIqb,EAAMzX,YAAY,oCAAoCzE,KAEtE,CACA,MAAM,IAAIkc,EAAMzX,YAAY,mCAAmCwsD,IACjE,CACA,sBAAOuuD,CAAgBp2G,EAAQ01G,GAC7B,IAAKvkJ,MAAMC,QAAQ4uC,GACjB,OAAO,EAET,GAAe,EAAX01G,IAAiB11G,EAAO3zC,OAE1B,OADA,EAAIymD,EAAMhhD,MAAM,6CACT,EAET,QAASzC,EAAI,EAAGovC,EAAKuB,EAAO3zC,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAC/C,GAAkB,IAAd2wC,EAAO3wC,IAA8B,IAAlB2wC,EAAO3wC,EAAI,GAChC,OAAO,EAGX,OAAO,CACT,CACA,qBAAWgyI,GACT,SAAWvuF,EAAMtT,QAAQh5C,KAAM,aAAc,CAC3C,QAAI86I,GACF,SAAWxuF,EAAMtT,QAAQh5C,KAAM,OAAQ,IAAI8yJ,EAC7C,EACA,OAAIp+E,GACF,SAAWpoB,EAAMtT,QAAQh5C,KAAM,MAAO,IAAI+yJ,EAC5C,EACA,QAAI/X,GACF,SAAW1uF,EAAMtT,QAAQh5C,KAAM,OAAQ,IAAIgzJ,GAC7C,GAEJ,EAEFn0J,EAAQ+7I,WAAaA,EACrB,MAAMgY,UAAoBhY,EACxB,WAAAj8H,CAAYuwI,EAAUnjJ,EAAM4mJ,GAC1BlrG,MAAM,YAAaynG,GACnBlvJ,KAAK+L,KAAOA,EACZ/L,KAAK2yJ,OAASA,EACd3yJ,KAAKizJ,OAAS,IAAIC,aAAannJ,EAAKmjJ,SACtC,CACA,UAAAnU,CAAWn6I,EAAKwuJ,EAAWpkE,EAAMqkE,GAC/B,MAAM4D,EAASjzJ,KAAKizJ,OACpBjzJ,KAAK2yJ,OAAO/xJ,EAAKwuJ,EAAW6D,EAAQ,GACpCjzJ,KAAK+L,KAAKgvI,WAAWkY,EAAQ,EAAGjoE,EAAMqkE,EACxC,CACA,YAAAC,CAAa1uJ,EAAKwuJ,EAAWp8D,EAAOhI,EAAMqkE,EAAYE,EAAMC,GAC1D,MAAMmD,EAAS3yJ,KAAK2yJ,OACd5mJ,EAAO/L,KAAK+L,KACZmrD,EAAQ,IAAM,GAAKq4F,GAAQ,GAC3B4D,EAAepnJ,EAAKmjJ,SACpBiC,EAAqBplJ,EAAKolJ,mBAC1BxB,GAAiB5jJ,EAAK4jJ,cAAc,KAAOwB,IAAmC,IAAZ3B,EACxE,IAAInzD,EAAMszD,EAAgBN,EAAa,EACvC,MAAM+D,EAAUzD,EAAgB3kE,EAAO,IAAI0vD,kBAAkByY,EAAengE,GACtEk8D,EAAWlvJ,KAAKkvJ,SAChBp8D,EAAS,IAAIogE,aAAahE,GAC1BmE,EAAS,IAAIH,aAAaC,GAChC,IAAItqJ,EAAGghB,EACP,IAAKhhB,EAAI,EAAGA,EAAImqF,EAAOnqF,IAAK,CAC1B,IAAKghB,EAAI,EAAGA,EAAIqlI,EAAUrlI,IACxBipE,EAAOjpE,GAAKjpB,EAAIwuJ,KAAel4F,EAGjC,GADAy7F,EAAO7/D,EAAQ,EAAGugE,EAAQ,GACtBlC,EACF,IAAKtnI,EAAI,EAAGA,EAAIspI,EAActpI,IAC5BupI,EAAQ/2D,KAAqB,IAAZg3D,EAAOxpI,QAG1B9d,EAAKgvI,WAAWsY,EAAQ,EAAGD,EAAS/2D,GACpCA,GAAO82D,CAEX,CACKxD,GACH5jJ,EAAKujJ,aAAa8D,EAAS,EAAGpgE,EAAOhI,EAAMqkE,EAAY,EAAGG,EAE9D,CACA,eAAAC,CAAgBC,EAAaF,GAC3B,OAAOxvJ,KAAK+L,KAAK0jJ,gBAAgBC,EAAc1vJ,KAAK+L,KAAKmjJ,SAAWlvJ,KAAKkvJ,SAAUM,EACrF,EAEF,MAAMuC,UAAkBnX,EACtB,WAAAj8H,CAAYuzI,GACVzqG,MAAM,UAAW,MACjBznD,KAAK+L,KAAOmmJ,CACd,CACA,eAAAtC,CAAgBC,EAAWC,IACzB,EAAIxjG,EAAMpW,aAAa,4CACzB,EAEF,MAAMw8G,UAAkB9X,EACtB,WAAAj8H,CAAY5S,EAAMunJ,EAASxvB,GACzBr8E,MAAM,UAAW,GACjBznD,KAAK+L,KAAOA,EACZ/L,KAAKszJ,QAAUA,EACf,MAAMztJ,EAASkG,EAAKmjJ,SAAWoE,EAE/B,GADAtzJ,KAAK8jI,OAAS,IAAIn6G,WAAW9jB,GACzBi+H,aAAkB0B,EAAaM,WAAY,CAC7C,MAAM76G,EAAQ64G,EAAOyE,SAAS1iI,GAC9B7F,KAAK8jI,OAAOh5G,IAAIG,EAClB,KAAO,IAAsB,iBAAX64G,EAKhB,MAAM,IAAIx3E,EAAMzX,YAAY,0CAA0CivF,KAJtE,QAASj7H,EAAI,EAAGA,EAAIhD,IAAUgD,EAC5B7I,KAAK8jI,OAAOj7H,GAA4B,IAAvBi7H,EAAO96G,WAAWngB,EAIvC,CACF,CACA,UAAAkyI,CAAWn6I,EAAKwuJ,EAAWpkE,EAAMqkE,GAC/B,MAAMH,EAAWlvJ,KAAK+L,KAAKmjJ,SACrB5sI,EAAQ1hB,EAAIwuJ,GAAaF,EAC/BlvJ,KAAK+L,KAAKujJ,aAAatvJ,KAAK8jI,OAAQxhH,EAAO,EAAG0oE,EAAMqkE,EAAY,EAAG,EACrE,CACA,YAAAC,CAAa1uJ,EAAKwuJ,EAAWp8D,EAAOhI,EAAMqkE,EAAYE,EAAMC,GAC1D,MAAMzjJ,EAAO/L,KAAK+L,KACZmjJ,EAAWnjJ,EAAKmjJ,SAChBqE,EAAcxnJ,EAAK0jJ,gBAAgBP,EAAUM,GAC7C1rB,EAAS9jI,KAAK8jI,OACpB,QAASj7H,EAAI,EAAGA,EAAImqF,IAASnqF,EAAG,CAC9B,MAAM2qJ,EAAY5yJ,EAAIwuJ,KAAeF,EACrCnjJ,EAAKujJ,aAAaxrB,EAAQ0vB,EAAW,EAAGxoE,EAAMqkE,EAAY,EAAGG,GAC7DH,GAAckE,CAChB,CACF,CACA,eAAA9D,CAAgBC,EAAaF,GAC3B,OAAOxvJ,KAAK+L,KAAK0jJ,gBAAgBC,EAAc1vJ,KAAK+L,KAAKmjJ,SAAUM,EACrE,CACA,eAAAI,CAAgBC,EAAWC,GACzB,OAAKnlJ,MAAMC,QAAQilJ,KAGM,IAArBA,EAAUhqJ,SACZ,EAAIymD,EAAMhhD,MAAM,qCACT,IAEJwtC,OAAOC,UAAU+2G,IAAQA,EAAM,IAClC,EAAIxjG,EAAMhhD,MAAM,sCACT,GAEe,IAAjBukJ,EAAU,IAAYA,EAAU,MAAQ,GAAKC,GAAO,EAC7D,EAEF,MAAMgD,UAAqBlY,EACzB,WAAAj8H,GACE8oC,MAAM,aAAc,EACtB,CACA,UAAAszF,CAAWn6I,EAAKwuJ,EAAWpkE,EAAMqkE,GAC/B,MAAMxmI,EAAqB,IAAjBjoB,EAAIwuJ,GACdpkE,EAAKqkE,GAAcrkE,EAAKqkE,EAAa,GAAKrkE,EAAKqkE,EAAa,GAAKxmI,CACnE,CACA,YAAAymI,CAAa1uJ,EAAKwuJ,EAAWp8D,EAAOhI,EAAMqkE,EAAYE,EAAMC,GAC1D,MAAMt4F,EAAQ,MAAQ,GAAKq4F,GAAQ,GACnC,IAAI1lI,EAAIulI,EACN3tD,EAAI4tD,EACN,QAASxmJ,EAAI,EAAGA,EAAImqF,IAASnqF,EAAG,CAC9B,MAAMggB,EAAIquC,EAAQt2D,EAAIipB,KACtBmhE,EAAKyW,KAAO54E,EACZmiE,EAAKyW,KAAO54E,EACZmiE,EAAKyW,KAAO54E,EACZ44E,GAAK+tD,CACP,CACF,CACA,eAAAC,CAAgBC,EAAaF,GAC3B,OAAOE,GAAe,EAAIF,EAC5B,EAEF,MAAMuD,UAAoBnY,EACxB,WAAAj8H,GACE8oC,MAAM,YAAa,EACrB,CACA,UAAAszF,CAAWn6I,EAAKwuJ,EAAWpkE,EAAMqkE,GAC/BrkE,EAAKqkE,GAA+B,IAAjBzuJ,EAAIwuJ,GACvBpkE,EAAKqkE,EAAa,GAA0B,IAArBzuJ,EAAIwuJ,EAAY,GACvCpkE,EAAKqkE,EAAa,GAA0B,IAArBzuJ,EAAIwuJ,EAAY,EACzC,CACA,YAAAE,CAAa1uJ,EAAKwuJ,EAAWp8D,EAAOhI,EAAMqkE,EAAYE,EAAMC,GAC1D,GAAa,IAATD,GAA0B,IAAZC,EAEhB,YADAxkE,EAAKlgE,IAAIlqB,EAAI8oB,SAAS0lI,EAAWA,EAAoB,EAARp8D,GAAYq8D,GAG3D,MAAMn4F,EAAQ,MAAQ,GAAKq4F,GAAQ,GACnC,IAAI1lI,EAAIulI,EACN3tD,EAAI4tD,EACN,QAASxmJ,EAAI,EAAGA,EAAImqF,IAASnqF,EAC3BmiF,EAAKyW,KAAOvqC,EAAQt2D,EAAIipB,KACxBmhE,EAAKyW,KAAOvqC,EAAQt2D,EAAIipB,KACxBmhE,EAAKyW,KAAOvqC,EAAQt2D,EAAIipB,KACxB43E,GAAK+tD,CAET,CACA,eAAAC,CAAgBC,EAAaF,GAC3B,OAAOE,GAAe,EAAIF,GAAW,EAAI,CAC3C,CACA,aAAAG,CAAcJ,GACZ,OAAgB,IAATA,CACT,EAEF,MAAMyD,WAAqBpY,EACzB,WAAAj8H,GACE8oC,MAAM,aAAc,GAEtB,SADA,CAUA,UAAAszF,CAAWn6I,EAAKwuJ,EAAWpkE,EAAMqkE,GAC/B,EAAArvJ,KAAK,KAAL,KAAAA,KAAYY,EAAKwuJ,EAAW,EAAGpkE,EAAMqkE,EACvC,CACA,YAAAC,CAAa1uJ,EAAKwuJ,EAAWp8D,EAAOhI,EAAMqkE,EAAYE,EAAMC,GAC1D,MAAMt4F,EAAQ,IAAM,GAAKq4F,GAAQ,GACjC,QAAS1mJ,EAAI,EAAGA,EAAImqF,EAAOnqF,IACzB,EAAA7I,KAAK,KAAL,KAAAA,KAAYY,EAAKwuJ,EAAWl4F,EAAO8zB,EAAMqkE,GACzCD,GAAa,EACbC,GAAc,EAAIG,CAEtB,CACA,eAAAC,CAAgBC,EAAaF,GAC3B,OAAOE,EAAc,GAAK,EAAIF,GAAW,CAC3C,EAtBA,gBAAM,SAAC5uJ,EAAKwuJ,EAAWqE,EAAUzoE,EAAMqkE,GACrC,MAAMxmI,EAAIjoB,EAAIwuJ,GAAaqE,EACrBrwJ,EAAIxC,EAAIwuJ,EAAY,GAAKqE,EACzBzuJ,EAAIpE,EAAIwuJ,EAAY,GAAKqE,EACzBnzJ,EAAIM,EAAIwuJ,EAAY,GAAKqE,EAC/BzoE,EAAKqkE,GAAc,IAAMxmI,IAAM,kBAAoBA,EAAI,kBAAoBzlB,EAAI,kBAAoB4B,EAAI,mBAAqB1E,EAAK,mBAAqB8C,GAAK,mBAAqBA,EAAI,mBAAqB4B,GAAK,mBAAqB1E,EAAI,mBAAqB0E,IAAM,mBAAqBA,EAAI,mBAAqB1E,EAAI,kBAAoBA,IAAM,kBAAoBA,EAAI,oBACtW0qF,EAAKqkE,EAAa,GAAK,IAAMxmI,GAAK,kBAAoBA,EAAI,mBAAqBzlB,EAAI,kBAAoB4B,EAAI,mBAAqB1E,EAAK,kBAAoB8C,IAAM,mBAAqBA,EAAI,mBAAqB4B,EAAI,mBAAqB1E,EAAI,mBAAqB0E,GAAK,kBAAoBA,EAAI,gBAAkB1E,EAAI,mBAAqBA,IAAM,mBAAqBA,EAAI,oBACtW0qF,EAAKqkE,EAAa,GAAK,IAAMxmI,GAAK,kBAAqBA,EAAI,kBAAoBzlB,EAAI,kBAAoB4B,EAAI,mBAAsB1E,EAAK,oBAAsB8C,GAAK,kBAAoBA,EAAI,kBAAoB4B,EAAI,mBAAqB1E,EAAI,oBAAsB0E,GAAK,mBAAsBA,EAAI,mBAAqB1E,EAAK,oBAAsBA,IAAM,kBAAoBA,EAAI,mBAC/W,EAgBF,MAAMgyJ,WAAkB1X,EACtB,WAAAj8H,CAAYwzI,EAAYC,EAAYC,GAElC,GADA5qG,MAAM,UAAW,GAsBnB,OAAAunG,IArBOmD,EACH,MAAM,IAAI7lG,EAAMzX,YAAY,yDAK9B,IAHC70C,KAAK0zJ,GAAI1zJ,KAAK2zJ,GAAI3zJ,KAAK4zJ,IAAMzB,GAC7BnyJ,KAAK6zJ,GAAI7zJ,KAAK8zJ,GAAI9zJ,KAAK+zJ,IAAM3B,GAAc,CAAC,EAAG,EAAG,GACnDpyJ,KAAKmyH,EAAIkgC,GAAS,EACdryJ,KAAK0zJ,GAAK,GAAK1zJ,KAAK4zJ,GAAK,GAAiB,IAAZ5zJ,KAAK2zJ,GACrC,MAAM,IAAIrnG,EAAMzX,YAAY,qCAAqC70C,KAAKmJ,gCAEpEnJ,KAAK6zJ,GAAK,GAAK7zJ,KAAK8zJ,GAAK,GAAK9zJ,KAAK+zJ,GAAK,MAC1C,EAAIznG,EAAMjhD,MAAM,0BAA0BrL,KAAKmJ,kCAC/CnJ,KAAK6zJ,GAAK7zJ,KAAK8zJ,GAAK9zJ,KAAK+zJ,GAAK,GAEhB,IAAZ/zJ,KAAK6zJ,IAAwB,IAAZ7zJ,KAAK8zJ,IAAwB,IAAZ9zJ,KAAK+zJ,KACzC,EAAIznG,EAAMhhD,MAAM,GAAGtL,KAAKmJ,yBAAyBnJ,KAAK6zJ,WAAW7zJ,KAAK8zJ,WAAgB9zJ,KAAK+zJ,0CAEzF/zJ,KAAKmyH,EAAI,KACX,EAAI7lE,EAAMjhD,MAAM,kBAAkBrL,KAAKmyH,SAASnyH,KAAKmJ,kCACrDnJ,KAAKmyH,EAAI,EAEb,CAUA,UAAA4oB,CAAWn6I,EAAKwuJ,EAAWpkE,EAAMqkE,GAC/B,EAAArvJ,KAAKgvJ,EAAAC,GAAL,KAAAjvJ,KAAYY,EAAKwuJ,EAAWpkE,EAAMqkE,EAAY,EAChD,CACA,YAAAC,CAAa1uJ,EAAKwuJ,EAAWp8D,EAAOhI,EAAMqkE,EAAYE,EAAMC,GAC1D,MAAMt4F,EAAQ,IAAM,GAAKq4F,GAAQ,GACjC,QAAS1mJ,EAAI,EAAGA,EAAImqF,IAASnqF,EAC3B,EAAA7I,KAAKgvJ,EAAAC,GAAL,KAAAjvJ,KAAYY,EAAKwuJ,EAAWpkE,EAAMqkE,EAAYn4F,GAC9Ck4F,GAAa,EACbC,GAAc,EAAIG,CAEtB,CACA,eAAAC,CAAgBC,EAAaF,GAC3B,OAAOE,GAAe,EAAIF,EAC5B,EAtBAR,EAAA,YAAAC,EAAM,SAACruJ,EAAKwuJ,EAAWpkE,EAAMqkE,EAAYn4F,GACvC,MACM88F,GADIpzJ,EAAIwuJ,GAAal4F,IACXl3D,KAAKmyH,EACf8hC,EAAIj0J,KAAK2zJ,GAAKK,EACd3oI,EAAM5H,KAAK6H,IAAI,MAAQ2oI,GAAK,kBAAqB,KAAM,GAC7DjpE,EAAKqkE,GAAchkI,EACnB2/D,EAAKqkE,EAAa,GAAKhkI,EACvB2/D,EAAKqkE,EAAa,GAAKhkI,CACzB,EAgBF,MAAM,GAAN,cAAuBuvH,EASrB,WAAAj8H,CAAYwzI,EAAYC,EAAYC,EAAO13D,GAEzC,GADAlzC,MAAM,SAAU,GAoBlB,UAKA,UAKA,UAQA,UASA,UAGA,UASA,UAwBA,UAaA,UAOA,OAAAunG,IAtGOmD,EACH,MAAM,IAAI7lG,EAAMzX,YAAY,wDAE9B,MAAO6+G,EAAIC,EAAIC,GAAM5zJ,KAAKmyJ,WAAaA,GAChC0B,EAAIC,EAAIC,GAAM/zJ,KAAKoyJ,WAAaA,GAAc,IAAIc,aAAa,GAGtE,IAFClzJ,KAAKk0J,GAAIl0J,KAAKm0J,GAAIn0J,KAAKo0J,IAAM/B,GAAS,IAAIa,aAAa,CAAC,EAAG,EAAG,KAC9DlzJ,KAAKq0J,IAAKr0J,KAAKs0J,IAAKt0J,KAAKu0J,IAAKv0J,KAAKw0J,IAAKx0J,KAAKy0J,IAAKz0J,KAAK00J,IAAK10J,KAAK20J,IAAK30J,KAAK40J,IAAK50J,KAAK60J,KAAOl6D,GAAU,IAAIu4D,aAAa,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAC7IQ,EAAK,GAAKE,EAAK,GAAY,IAAPD,EACtB,MAAM,IAAIrnG,EAAMzX,YAAY,qCAAqC70C,KAAKmJ,gCAEpE0qJ,EAAK,GAAKC,EAAK,GAAKC,EAAK,MAC3B,EAAIznG,EAAMjhD,MAAM,0BAA0BrL,KAAKmJ,SAAS0qJ,MAAOC,MAAOC,gCACtE/zJ,KAAKoyJ,WAAa,IAAIc,aAAa,KAEjClzJ,KAAKk0J,GAAK,GAAKl0J,KAAKm0J,GAAK,GAAKn0J,KAAKo0J,GAAK,MAC1C,EAAI9nG,EAAMjhD,MAAM,kBAAkBrL,KAAKk0J,OAAOl0J,KAAKm0J,OAAOn0J,KAAKo0J,WAAgBp0J,KAAKmJ,kCACpFnJ,KAAKk0J,GAAKl0J,KAAKm0J,GAAKn0J,KAAKo0J,GAAK,EAElC,CA8GA,UAAArZ,CAAWn6I,EAAKwuJ,EAAWpkE,EAAMqkE,GAC/B,EAAArvJ,KAAKgvJ,EAAAC,GAAL,KAAAjvJ,KAAYY,EAAKwuJ,EAAWpkE,EAAMqkE,EAAY,EAChD,CACA,YAAAC,CAAa1uJ,EAAKwuJ,EAAWp8D,EAAOhI,EAAMqkE,EAAYE,EAAMC,GAC1D,MAAMt4F,EAAQ,IAAM,GAAKq4F,GAAQ,GACjC,QAAS1mJ,EAAI,EAAGA,EAAImqF,IAASnqF,EAC3B,EAAA7I,KAAKgvJ,EAAAC,GAAL,KAAAjvJ,KAAYY,EAAKwuJ,EAAWpkE,EAAMqkE,EAAYn4F,GAC9Ck4F,GAAa,EACbC,GAAc,EAAIG,CAEtB,CACA,eAAAC,CAAgBC,EAAaF,GAC3B,OAAOE,GAAe,EAAIF,GAAW,EAAI,CAC3C,GAvJO,cACA,cACA,cACA,cACA,cACA,cACA,cACA,cAsBP,gBAAc,SAAC1vJ,EAAG0e,EAAG3a,GACnBA,EAAO,GAAK/D,EAAE,GAAK0e,EAAE,GAAK1e,EAAE,GAAK0e,EAAE,GAAK1e,EAAE,GAAK0e,EAAE,GACjD3a,EAAO,GAAK/D,EAAE,GAAK0e,EAAE,GAAK1e,EAAE,GAAK0e,EAAE,GAAK1e,EAAE,GAAK0e,EAAE,GACjD3a,EAAO,GAAK/D,EAAE,GAAK0e,EAAE,GAAK1e,EAAE,GAAK0e,EAAE,GAAK1e,EAAE,GAAK0e,EAAE,EACnD,EACA,gBAAO,SAACs2I,EAAkBC,EAAKlxJ,GAC7BA,EAAO,GAAc,EAATkxJ,EAAI,GAASD,EAAiB,GAC1CjxJ,EAAO,GAAc,EAATkxJ,EAAI,GAASD,EAAiB,GAC1CjxJ,EAAO,GAAc,EAATkxJ,EAAI,GAASD,EAAiB,EAC5C,EACA,gBAAM,SAACA,EAAkBC,EAAKlxJ,GAI5BA,EAAO,GAHM,OAGDkxJ,EAAI,GAAYD,EAAiB,GAC7CjxJ,EAAO,GAHM,EAGDkxJ,EAAI,GAAYD,EAAiB,GAC7CjxJ,EAAO,GAHM,QAGDkxJ,EAAI,GAAYD,EAAiB,EAC/C,EACA,gBAAqB,SAACrgF,GACpB,OAAIA,GAAS,SACJ,EAAAz0E,KAAK,KAAL,KAAAA,KAAoB,EAAG,EAAG,MAAQy0E,GAEvCA,GAAS,UACJ,EAEF,EAAAz0E,KAAK,KAAL,KAAAA,KAAoB,EAAG,EAAG,MAAcy0E,IAAU,EAAI,KAAO,KACtE,EACA,gBAAc,SAAC9wD,EAAK2H,EAAKnrB,GACvB,OAAOsjB,KAAK6H,IAAI3H,EAAKF,KAAKE,IAAI2H,EAAKnrB,GACrC,EACA,gBAAQ,SAAC8zJ,GACP,OAAIA,EAAI,GACE,EAAAj0J,KAAK,KAAL,KAAAA,MAAei0J,GAErBA,EAAI,IACGA,EAAI,IAAM,MAAQ,EAEtBA,EAAI,KAAS,EACtB,EACA,gBAAqB,SAACe,EAAkBC,EAAUpxJ,GAChD,GAA4B,IAAxBmxJ,EAAiB,IAAoC,IAAxBA,EAAiB,IAAoC,IAAxBA,EAAiB,GAI7E,OAHAnxJ,EAAO,GAAKoxJ,EAAS,GACrBpxJ,EAAO,GAAKoxJ,EAAS,QACrBpxJ,EAAO,GAAKoxJ,EAAS,IAGvB,MAAMC,EAAc,EAAAl1J,KAAK,KAAL,KAAAA,KAAc,GAO5Bm1J,GAAW,EANHD,IAMiB,EALjB,EAAAl1J,KAAK,KAAL,KAAAA,KAAcg1J,EAAiB,KAMvCI,EAAW,EAAID,EACfE,GAAW,EANHH,IAMiB,EALjB,EAAAl1J,KAAK,KAAL,KAAAA,KAAcg1J,EAAiB,KAMvCM,EAAW,EAAID,EACfE,GAAW,EANHL,IAMiB,EALjB,EAAAl1J,KAAK,KAAL,KAAAA,KAAcg1J,EAAiB,KAMvCQ,EAAW,EAAID,EACrB1xJ,EAAO,GAAKoxJ,EAAS,GAAKE,EAAUC,EACpCvxJ,EAAO,GAAKoxJ,EAAS,GAAKI,EAAUC,EACpCzxJ,EAAO,GAAKoxJ,EAAS,GAAKM,EAAUC,CACtC,EACA,gBAA0B,SAACV,EAAkBW,EAAQ5xJ,GACnD,GAA4B,IAAxBixJ,EAAiB,IAAoC,IAAxBA,EAAiB,GAIhD,OAHAjxJ,EAAO,GAAK4xJ,EAAO,GACnB5xJ,EAAO,GAAK4xJ,EAAO,QACnB5xJ,EAAO,GAAK4xJ,EAAO,IAGrB,MAAMV,EAAMlxJ,EACZ,EAAA7D,KAAK,KAAL,KAAAA,KAAoB,KAAS,GAAwBy1J,EAAQV,GAC7D,MAAMW,EAAW,KAAS,GAC1B,EAAA11J,KAAK,KAAL,KAAAA,KAAa80J,EAAkBC,EAAKW,GACpC,EAAA11J,KAAK,KAAL,KAAAA,KAAoB,KAAS,GAAgC01J,EAAU7xJ,EACzE,EACA,gBAAyB,SAACixJ,EAAkBW,EAAQ5xJ,GAClD,MAAMkxJ,EAAMlxJ,EACZ,EAAA7D,KAAK,KAAL,KAAAA,KAAoB,KAAS,GAAwBy1J,EAAQV,GAC7D,MAAMY,EAAU,KAAS,GACzB,EAAA31J,KAAK,KAAL,KAAAA,KAAY80J,EAAkBC,EAAKY,GACnC,EAAA31J,KAAK,KAAL,KAAAA,KAAoB,KAAS,GAAgC21J,EAAS9xJ,EACxE,EACAmrJ,EAAA,YAAAC,EAAM,SAACruJ,EAAKwuJ,EAAWpkE,EAAMqkE,EAAYn4F,GACvC,MAAM0+F,EAAI,EAAA51J,KAAK,KAAL,KAAAA,KAAoB,EAAG,EAAGY,EAAIwuJ,GAAal4F,GAC/C2+F,EAAI,EAAA71J,KAAK,KAAL,KAAAA,KAAoB,EAAG,EAAGY,EAAIwuJ,EAAY,GAAKl4F,GACnDjW,EAAI,EAAAjhD,KAAK,KAAL,KAAAA,KAAoB,EAAG,EAAGY,EAAIwuJ,EAAY,GAAKl4F,GACnD4+F,EAAY,IAANF,EAAU,EAAIA,GAAK51J,KAAKk0J,GAC9B6B,EAAY,IAANF,EAAU,EAAIA,GAAK71J,KAAKm0J,GAC9B6B,EAAY,IAAN/0G,EAAU,EAAIA,GAAKjhD,KAAKo0J,GAC9B/zG,EAAIrgD,KAAKq0J,IAAMyB,EAAM91J,KAAKw0J,IAAMuB,EAAM/1J,KAAK20J,IAAMqB,EACjDC,EAAIj2J,KAAKs0J,IAAMwB,EAAM91J,KAAKy0J,IAAMsB,EAAM/1J,KAAK40J,IAAMoB,EACjDE,EAAIl2J,KAAKu0J,IAAMuB,EAAM91J,KAAK00J,IAAMqB,EAAM/1J,KAAK60J,IAAMmB,EACjDG,EAAM,KAAS,GACrBA,EAAI,GAAK91G,EACT81G,EAAI,GAAKF,EACTE,EAAI,GAAKD,EACT,MAAMjB,EAAW,KAAS,GAC1B,EAAAj1J,KAAK,KAAL,KAAAA,KAAgCA,KAAKmyJ,WAAYgE,EAAKlB,GACtD,MAAMmB,EAAY,KAAS,GAC3B,EAAAp2J,KAAK,KAAL,KAAAA,KAA2BA,KAAKoyJ,WAAY6C,EAAUmB,GACtD,MAAMC,EAAU,KAAS,GACzB,EAAAr2J,KAAK,KAAL,KAAAA,KAA+B,KAAS,GAAyBo2J,EAAWC,GAC5E,MAAMC,EAAO,KAAS,GACtB,EAAAt2J,KAAK,KAAL,KAAAA,KAAoB,KAAS,GAA6Bq2J,EAASC,GACnEtrE,EAAKqkE,GAAoD,IAAtC,EAAArvJ,KAAK,KAAL,KAAAA,KAA2Bs2J,EAAK,IACnDtrE,EAAKqkE,EAAa,GAA2C,IAAtC,EAAArvJ,KAAK,KAAL,KAAAA,KAA2Bs2J,EAAK,IACvDtrE,EAAKqkE,EAAa,GAA2C,IAAtC,EAAArvJ,KAAK,KAAL,KAAAA,KAA2Bs2J,EAAK,GACzD,EAzIA,EADI,GACG,EAAyB,IAAIpD,aAAa,CAAC,MAAQ,OAAS,OAAS,MAAQ,OAAQ,MAAQ,OAAS,MAAQ,UACrH,EAFI,GAEG,EAAiC,IAAIA,aAAa,CAAC,UAAY,SAAW,SAAW,SAAW,SAAW,UAAY,SAAW,SAAW,YACpJ,EAHI,GAGG,EAA8B,IAAIA,aAAa,CAAC,WAAY,WAAY,UAAY,QAAW,UAAW,QAAW,UAAY,SAAW,aACnJ,EAJI,GAIG,EAA0B,IAAIA,aAAa,CAAC,EAAG,EAAG,KACzD,EALI,GAKG,EAAuB,IAAIA,aAAa,IAC/C,EANI,GAMG,EAAsB,IAAIA,aAAa,IAC9C,EAPI,GAOG,EAAsB,IAAIA,aAAa,IAC9C,EARI,GAQG,MAAiC,MAAQ,EAAI,GARtD,IAAMX,GAAN,GA0JA,MAAMM,WAAcjY,EAClB,WAAAj8H,CAAYwzI,EAAYC,EAAYnhH,GAElC,GADAwW,MAAM,MAAO,GAsBf,UAGA,UAGA,OAAAunG,IA3BOmD,EACH,MAAM,IAAI7lG,EAAMzX,YAAY,qDAK9B,IAHC70C,KAAK0zJ,GAAI1zJ,KAAK2zJ,GAAI3zJ,KAAK4zJ,IAAMzB,GAC7BnyJ,KAAKu2J,KAAMv2J,KAAKw2J,KAAMx2J,KAAKy2J,KAAMz2J,KAAK02J,MAAQzlH,GAAS,EAAE,IAAK,KAAM,IAAK,MACzEjxC,KAAK6zJ,GAAI7zJ,KAAK8zJ,GAAI9zJ,KAAK+zJ,IAAM3B,GAAc,CAAC,EAAG,EAAG,GAC/CpyJ,KAAK0zJ,GAAK,GAAK1zJ,KAAK4zJ,GAAK,GAAiB,IAAZ5zJ,KAAK2zJ,GACrC,MAAM,IAAIrnG,EAAMzX,YAAY,yDAE1B70C,KAAK6zJ,GAAK,GAAK7zJ,KAAK8zJ,GAAK,GAAK9zJ,KAAK+zJ,GAAK,MAC1C,EAAIznG,EAAMjhD,MAAM,+CAChBrL,KAAK6zJ,GAAK7zJ,KAAK8zJ,GAAK9zJ,KAAK+zJ,GAAK,IAE5B/zJ,KAAKu2J,KAAOv2J,KAAKw2J,MAAQx2J,KAAKy2J,KAAOz2J,KAAK02J,SAC5C,EAAIpqG,EAAMjhD,MAAM,2CAChBrL,KAAKu2J,MAAQ,IACbv2J,KAAKw2J,KAAO,IACZx2J,KAAKy2J,MAAQ,IACbz2J,KAAK02J,KAAO,IAEhB,CA8CA,UAAA3b,CAAWn6I,EAAKwuJ,EAAWpkE,EAAMqkE,GAC/B,EAAArvJ,KAAKgvJ,EAAAC,GAAL,KAAAjvJ,KAAYY,EAAKwuJ,GAAW,EAAOpkE,EAAMqkE,EAC3C,CACA,YAAAC,CAAa1uJ,EAAKwuJ,EAAWp8D,EAAOhI,EAAMqkE,EAAYE,EAAMC,GAC1D,MAAMmH,GAAU,GAAKpH,GAAQ,EAC7B,QAAS1mJ,EAAI,EAAGA,EAAImqF,EAAOnqF,IACzB,EAAA7I,KAAKgvJ,EAAAC,GAAL,KAAAjvJ,KAAYY,EAAKwuJ,EAAWuH,EAAQ3rE,EAAMqkE,GAC1CD,GAAa,EACbC,GAAc,EAAIG,CAEtB,CACA,eAAAC,CAAgBC,EAAaF,GAC3B,OAAOE,GAAe,EAAIF,GAAW,EAAI,CAC3C,CACA,eAAAI,CAAgBC,EAAWC,GACzB,OAAO,CACT,CACA,sBAAIqB,GACF,SAAW7kG,EAAMtT,QAAQh5C,KAAM,sBAAsB,EACvD,EAhEA,gBAAK,SAACZ,GACJ,OAAOA,GAAK,EAAI,GAAKA,GAAK,EAAI,IAAM,KAAOA,EAAI,EAAI,GACrD,EACA,gBAAO,SAACe,EAAOy2J,EAAOC,EAAMC,GAC1B,OAAOD,EAAO12J,GAAS22J,EAAQD,GAAQD,CACzC,EACA5H,EAAA,YAAAC,EAAM,SAACruJ,EAAKwuJ,EAAWuH,EAAQ3rE,EAAMqkE,GACnC,IAAI0H,EAAKn2J,EAAIwuJ,GACTxO,EAAKhgJ,EAAIwuJ,EAAY,GACrBxD,EAAKhrJ,EAAIwuJ,EAAY,IACV,IAAXuH,IACFI,EAAK,EAAA/2J,KAAK,KAAL,KAAAA,KAAa+2J,EAAIJ,EAAQ,EAAG,KACjC/V,EAAK,EAAA5gJ,KAAK,KAAL,KAAAA,KAAa4gJ,EAAI+V,EAAQ32J,KAAKu2J,KAAMv2J,KAAKw2J,MAC9C5K,EAAK,EAAA5rJ,KAAK,KAAL,KAAAA,KAAa4rJ,EAAI+K,EAAQ32J,KAAKy2J,KAAMz2J,KAAK02J,OAE5C9V,EAAK5gJ,KAAKw2J,KACZ5V,EAAK5gJ,KAAKw2J,KACD5V,EAAK5gJ,KAAKu2J,OACnB3V,EAAK5gJ,KAAKu2J,MAER3K,EAAK5rJ,KAAK02J,KACZ9K,EAAK5rJ,KAAK02J,KACD9K,EAAK5rJ,KAAKy2J,OACnB7K,EAAK5rJ,KAAKy2J,MAEZ,MAAMO,GAAKD,EAAK,IAAM,IAChB9C,EAAI+C,EAAIpW,EAAK,IACbqW,EAAID,EAAIpL,EAAK,IACbvrG,EAAIrgD,KAAK0zJ,GAAK,EAAA1zJ,KAAK,KAAL,KAAAA,KAAWi0J,GACzBgC,EAAIj2J,KAAK2zJ,GAAK,EAAA3zJ,KAAK,KAAL,KAAAA,KAAWg3J,GACzBd,EAAIl2J,KAAK4zJ,GAAK,EAAA5zJ,KAAK,KAAL,KAAAA,KAAWi3J,GAC/B,IAAIh/H,EAAGh5B,EAAGuf,EACNxe,KAAK4zJ,GAAK,GACZ37H,EAAQ,OAAJooB,GAAkB,MAAL41G,GAAkB,MAALC,EAC9Bj3J,GAAS,MAALohD,EAAkB,MAAJ41G,EAAgB,MAAJC,EAC9B13I,EAAQ,KAAJ6hC,GAAiB,KAAL41G,EAAiB,OAAJC,IAE7Bj+H,EAAQ,OAAJooB,GAAkB,OAAL41G,GAAmB,MAALC,EAC/Bj3J,GAAS,MAALohD,EAAkB,OAAJ41G,EAAiB,MAAJC,EAC/B13I,EAAQ,MAAJ6hC,GAAkB,KAAL41G,EAAiB,MAAJC,GAEhClrE,EAAKqkE,GAA6B,IAAf5rI,KAAK4lC,KAAKpxB,GAC7B+yD,EAAKqkE,EAAa,GAAoB,IAAf5rI,KAAK4lC,KAAKpqD,GACjC+rF,EAAKqkE,EAAa,GAAoB,IAAf5rI,KAAK4lC,KAAK7qC,EACnC,CAAC,EAyBI,CAACk1B,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ4wI,iBAAmB5wI,EAAQmuJ,2BAAwB,EAC3D,IAAI1gG,EAAQf,EAAoB,GAC5B2rG,EAAQ3rG,EAAoB,IAC5BswE,EAActwE,EAAoB,GAClC4rG,EAAS5rG,EAAoB,IAC7B6rG,EAAa7rG,EAAoB,IACjC8rG,EAAkB9rG,EAAoB,IACtC+rG,EAAW/rG,EAAoB,IAC/B8hF,EAAa9hF,EAAoB,IACjCgsG,EAAkBhsG,EAAoB,IACtCwhG,EAAYxhG,EAAoB,IAChCkiF,EAAUliF,EAAoB,IAC9Bu6B,EAAev6B,EAAoB,IACnCi+C,EAAUj+C,EAAoB,GAC9Bi6E,EAAej6E,EAAoB,GACnC6uF,EAAQ7uF,EAAoB,IAC5B8uF,EAAc9uF,EAAoB,IAClCsiF,EAAiBtiF,EAAoB,IACrCisG,EAAejsG,EAAoB,IACnCksG,EAAsBlsG,EAAoB,IAC1CmsG,EAAansG,EAAoB,IACjCosG,EAAWpsG,EAAoB,IAC/BqsG,EAAWrsG,EAAoB,IAC/BssG,EAAiBtsG,EAAoB,IACrC0Y,EAAc1Y,EAAoB,IAClCoiF,EAAiBpiF,EAAoB,IACrCusG,EAASvsG,EAAoB,IACjC,MAAMwsG,EAAiCz4J,OAAOyD,OAAO,CACnDosD,cAAe,EACfE,iBAAiB,EACjBJ,cAAc,EACdpH,iBAAiB,EACjBC,4BAA4B,EAC5BsH,sBAAuB,EACvBE,qBAAqB,EACrBO,gBAAgB,EAChBjB,QAAS,KACTG,oBAAqB,OAEjBipG,EACI,EADJA,EAEK,EAGLC,EAAW5zJ,QAAQD,UACzB,SAAS8zJ,EAAmB/3J,EAAOg4J,GAAe,GAChD,GAAIxtJ,MAAMC,QAAQzK,GAAQ,CACxB,UAAWkrB,KAAOlrB,EAAO,CACvB,MAAMi4J,EAAUF,EAAmB7sI,GAAK,GACxC,GAAI+sI,EACF,OAAOA,CAEX,CAEA,OADA,EAAI9rG,EAAMhhD,MAAM,iCAAiCnL,KAC1C,aACT,CACA,KAAMA,aAAiB07H,EAAYsK,MACjC,OAAIgyB,EACK,KAEF,cAET,OAAQh4J,EAAMgJ,MACZ,IAAK,SACL,IAAK,aACH,MAAO,cACT,IAAK,WACH,MAAO,WACT,IAAK,SACH,MAAO,SACT,IAAK,UACH,MAAO,UACT,IAAK,SACH,MAAO,SACT,IAAK,UACH,MAAO,UACT,IAAK,aACH,MAAO,cACT,IAAK,YACH,MAAO,aACT,IAAK,YACH,MAAO,aACT,IAAK,YACH,MAAO,aACT,IAAK,aACH,MAAO,aACT,IAAK,YACH,MAAO,YACT,IAAK,MACH,MAAO,MACT,IAAK,aACH,MAAO,aACT,IAAK,QACH,MAAO,QACT,IAAK,aACH,MAAO,aAEX,OAAIgvJ,EACK,OAET,EAAI7rG,EAAMhhD,MAAM,2BAA2BnL,EAAMgJ,QAC1C,cACT,CACA,SAASkvJ,EAA8BzzI,GACjCA,EAAKgQ,KAAO03B,EAAMjY,IAAIqS,uBAAyB9hC,EAAK3Z,KAAK,IAAI+nF,MAAQ,GACvEpuE,EAAK3Z,KAAK,GAAG+nF,OAEjB,CACA,MAAM,EAAN,MAAM,EAGJ,WAAAr0E,GACE3e,KAAKmrB,OACP,CACA,KAAAmtI,GACE,UAAMt4J,KAAKstH,QAAU,EAAgBirC,oBAGrCv4J,KAAKstH,QAAU,EACRttH,KAAK0xF,SAAWp+E,KAAKuO,MAC9B,CACA,KAAAsJ,GACEnrB,KAAK0xF,QAAUp+E,KAAKuO,MAAQ,EAAgB22I,sBAC5Cx4J,KAAKstH,QAAU,CACjB,GAfA,EADI,EACG,wBAAwB,IAC/B,EAFI,EAEG,mBAAmB,KAF5B,IAAMmrC,EAAN,EAkBA,MAAMhpB,EACJ,WAAA9wH,EAAY,KACVwgH,EAAI,QACJp1H,EAAO,UACPmsD,EAAS,UACTw5E,EAAS,UACTvB,EAAS,iBACTC,EAAgB,sBAChBC,EAAqB,iBACrBC,EAAgB,gBAChBC,EAAe,QACfpwH,EAAU,OAEVne,KAAKm/H,KAAOA,EACZn/H,KAAK+J,QAAUA,EACf/J,KAAKk2D,UAAYA,EACjBl2D,KAAK0vI,UAAYA,EACjB1vI,KAAKmuI,UAAYA,EACjBnuI,KAAKouI,iBAAmBA,EACxBpuI,KAAKquI,sBAAwBA,EAC7BruI,KAAKsuI,iBAAmBA,EACxBtuI,KAAKuuI,gBAAkBA,EACvBvuI,KAAKme,QAAUA,GAAW45I,EAC1B/3J,KAAK04J,kBAAmB,EACxB14J,KAAK24J,oBAAsB,IAAI7yE,EAAa8yE,mBAC5C54J,KAAK64J,uBAAyB74J,KAAK84J,iBAAiB12I,KAAKpiB,MACzD63J,EAAekB,aAAaC,WAAWh5J,KAAKme,QAAQixC,qBACtD,CACA,uBAAIk+F,GACF,MAAMD,EAAqB,IAAIN,EAAUW,mBAAmB,CAC1DvuB,KAAMn/H,KAAKm/H,KACXt3E,gBAAiB7nD,KAAKme,QAAQ0pC,kBAEhC,SAAWyE,EAAMtT,QAAQh5C,KAAM,sBAAuBqtJ,EACxD,CACA,KAAAtnJ,CAAMwyB,EAAa,MACjB,MAAM0gI,EAAe35J,OAAO4D,OAAOlD,MAEnC,OADAi5J,EAAa96I,QAAU7e,OAAO0P,OAAO1P,OAAO4D,OAAO,MAAOlD,KAAKme,QAASoa,GACjE0gI,CACT,CACA,aAAA9nB,CAAcnC,EAAWR,GACvB,KAAMQ,aAAqBnT,EAAY2E,MACrC,OAAO,EAET,GAAIwO,EAAU7sE,OAASqsE,EAAiB5wE,IAAIoxE,EAAU7sE,OACpD,OAAO,EAET,MAAM+2F,EAAY,IAAIr9B,EAAYuH,OAAOoL,GACrCQ,EAAU7sE,OACZ+2F,EAAUvzB,IAAIqJ,EAAU7sE,OAE1B,MAAMnpD,EAAQ,CAACg2H,GACb7P,EAAOn/H,KAAKm/H,KACd,KAAOnmH,EAAMnT,QAAQ,CACnB,MAAMsT,EAAOH,EAAMpQ,QACbuwJ,EAAgBhgJ,EAAK1Y,IAAI,aAC/B,GAAI04J,aAAyBt9B,EAAY2E,KACvC,QAAS44B,KAAgBD,EAAczxB,eAAgB,CACrD,GAAI0xB,aAAwBv9B,EAAY2C,IAAK,CAC3C,GAAI06B,EAAUt7F,IAAIw7F,GAChB,SAEF,IACEA,EAAej6B,EAAK3nH,MAAM4hJ,EAC5B,CAAE,MAAO3/G,GACPy/G,EAAUvzB,IAAIyzB,IACd,EAAI9sG,EAAMjhD,MAAM,wCAAwCouC,OACxD,QACF,CACF,CACA,KAAM2/G,aAAwBv9B,EAAY2E,MACxC,SAEE44B,EAAaj3F,OACf+2F,EAAUvzB,IAAIyzB,EAAaj3F,OAE7B,MAAMk3F,EAAKD,EAAa34J,IAAI,MAC5B,GAAI44J,aAAcx9B,EAAYsK,MAC5B,GAAgB,WAAZkzB,EAAGlwJ,KACL,OAAO,OAIX,QAAW,IAAPkwJ,GAAoB1uJ,MAAMC,QAAQyuJ,GACpC,UAAWjjJ,KAAWijJ,EACpB,GAAIjjJ,aAAmBylH,EAAYsK,MAAyB,WAAjB/vH,EAAQjN,KACjD,OAAO,CAIf,CAEF,MAAMmwJ,EAAWngJ,EAAK1Y,IAAI,WAC1B,GAAM64J,aAAoBz9B,EAAY2E,KAGtC,QAAS+4B,KAAWD,EAAS5xB,eAAgB,CAC3C,GAAI6xB,aAAmB19B,EAAY2C,IAAK,CACtC,GAAI06B,EAAUt7F,IAAI27F,GAChB,SAEF,IACEA,EAAUp6B,EAAK3nH,MAAM+hJ,EACvB,CAAE,MAAO9/G,GACPy/G,EAAUvzB,IAAI4zB,IACd,EAAIjtG,EAAMjhD,MAAM,sCAAsCouC,OACtD,QACF,CACF,CACA,KAAM8/G,aAAmB/zB,EAAaM,YACpC,SAEEyzB,EAAQ52B,KAAKxgE,OACf+2F,EAAUvzB,IAAI4zB,EAAQ52B,KAAKxgE,OAE7B,MAAMq3F,EAAaD,EAAQ52B,KAAKliI,IAAI,aAC9B+4J,aAAsB39B,EAAY2E,OAGpCg5B,EAAWr3F,OAAS+2F,EAAUt7F,IAAI47F,EAAWr3F,SAGjDnpD,EAAMpX,KAAK43J,GACPA,EAAWr3F,OACb+2F,EAAUvzB,IAAI6zB,EAAWr3F,QAE7B,CACF,CACA,UAAWxrC,KAAOuiI,EAChB1qB,EAAiB7I,IAAIhvG,GAEvB,OAAO,CACT,CACA,sBAAMmiI,CAAiB3vJ,GACrB,MAAMswJ,EAAaz5J,KAAKouI,iBAAiB3tI,IAAI0I,GAC7C,GAAIswJ,EACF,OAAOA,EAET,IAAI70I,EACJ,GAA6B,OAAzB5kB,KAAKme,QAAQywC,QAAkB,CACjC,MAAM1hD,EAAM,GAAGlN,KAAKme,QAAQywC,UAAUzlD,UAChCkT,QAAiB7E,MAAMtK,GAC7B,IAAKmP,EAAS62D,GACZ,MAAM,IAAIznE,MAAM,2CAA2CyB,YAAcmP,EAAS82D,gBAEpFvuD,EAAO,CACL06D,SAAU,IAAI31D,iBAAiBtN,EAAS2iE,eACxCK,gBAAiB/yB,EAAMrX,oBAAoByM,OAE/C,MACE98B,QAAa5kB,KAAK+J,QAAQooD,gBAAgB,mBAAoB,CAC5DhpD,SAMJ,OAHIyb,EAAKy6D,kBAAoB/yB,EAAMrX,oBAAoB4F,MACrD76C,KAAKouI,iBAAiBtjH,IAAI3hB,EAAMyb,GAE3BA,CACT,CACA,2BAAM80I,CAAsBvwJ,GAC1B,MAAMswJ,EAAaz5J,KAAKquI,sBAAsB5tI,IAAI0I,GAClD,GAAIswJ,EACF,OAAO,IAAIjwD,EAAQogC,OAAO6vB,GAE5B,GAAIz5J,KAAKme,QAAQ0xC,gBAA2B,WAAT1mD,GAA8B,iBAATA,EACtD,OAAO,KAET,MACEulB,GADiC,EAAI2oI,EAAgBsC,wBACfxwJ,GACxC,IAAIyb,EACJ,GAAyC,OAArC5kB,KAAKme,QAAQ4wC,oBAA8B,CAC7C,MAAM7hD,EAAM,GAAGlN,KAAKme,QAAQ4wC,sBAAsBrgC,IAC5CrS,QAAiB7E,MAAMtK,GACxBmP,EAAS62D,GAGZtuD,QAAavI,EAAS2iE,eAFtB,EAAI1yB,EAAMhhD,MAAM,gDAAgD4B,YAAcmP,EAAS82D,eAI3F,MACE,IACEvuD,QAAa5kB,KAAK+J,QAAQooD,gBAAgB,wBAAyB,CACjEzjC,YAEJ,CAAE,MAAOhqB,IACP,EAAI4nD,EAAMhhD,MAAM,gDAAgDojB,YAAmBhqB,MACrF,CAEF,OAAKkgB,GAGL5kB,KAAKquI,sBAAsBvjH,IAAI3hB,EAAMyb,GAC9B,IAAI4kF,EAAQogC,OAAOhlH,IAHjB,IAIX,CACA,sBAAMg1I,CAAiB5qB,EAAW6qB,EAAMhsE,EAAO/0B,EAAc9K,EAAMsoF,EAAciX,GAC/E,MAAM5qB,EAAOk3B,EAAKl3B,KACZhoC,EAASgoC,EAAK8C,SAAS,UAC7B,IAEIub,EAAiB8Y,EAFjB/+D,EAAO4nC,EAAK8C,SAAS,QACzB1qC,EAAOpwF,MAAMC,QAAQmwF,IAAyB,IAAhBA,EAAKl1F,OAAeymD,EAAMv2C,KAAKyzC,cAAcuxC,GAAQ,KAE/E4nC,EAAK/kE,IAAI,QACXojF,QAAwBhhJ,KAAKihJ,wBAAwBte,EAAKliI,IAAI,MAAOuuI,SAE/C,IAApBgS,GACFloF,EAAaooF,MAAM50F,EAAMjY,IAAI2R,wBAAyB,CAAC,KAAMg7F,IAE/D,MAAMhmD,EAAQ2nC,EAAKliI,IAAI,SACvB,GAAIu6F,EAAO,CACT8+D,EAAe,CACbn/D,SACAI,OACAlN,QACAqN,UAAU,EACVC,UAAU,GAEZ,MAAM4+D,EAAe/+D,EAAMv6F,IAAI,KAC/B,IAAIu5J,EAAa,KACjB,MAAQn+B,EAAYgK,QAAQk0B,EAAc,kBACxCD,EAAa5+D,SAAWF,EAAMv6F,IAAI,OAAQ,EAC1Cq5J,EAAa3+D,SAAWH,EAAMv6F,IAAI,OAAQ,EACtCu6F,EAAMp9B,IAAI,OAAO,CACnB,MAAMyjC,EAAKrG,EAAM+L,OAAO,MAClB+qD,EAAmBzX,EAAYO,WAAW4W,UAAUnwD,EAAIrhG,KAAKm/H,KAAMouB,GAEvEyM,EADElI,SAGiB9xJ,KAAKi6J,gBAAgB,CACtC54D,KACA2tC,YACAue,wBAGN,CAEE1/D,GAAOQ,WACT2rE,IAAe3f,EAAYO,WAAWC,WAAWnmE,IACjDmZ,EAAMQ,SAAW2rE,EAAW7K,OAAOthE,EAAMQ,SAAU,IAErDv1B,EAAaooF,MAAM50F,EAAMjY,IAAIiS,WAAY,CAACwzG,GAC5C,CACA,MAAM7uJ,EAAO+vF,EAAQ,CAACL,EAAQ,MAAQ,CAACA,EAAQI,GAE/C,OADAjiC,EAAaooF,MAAM50F,EAAMjY,IAAI+R,sBAAuBn7C,GAC7CjL,KAAKk6D,gBAAgB,CAC1BurC,OAAQo0D,EACR7rG,OACAghF,UAAWrM,EAAKliI,IAAI,cAAgBuuI,EACpCl2E,eACAw9E,iBACCzxI,MAAK,WACNi0D,EAAaooF,MAAM50F,EAAMjY,IAAIgS,oBAAqB,IAC9C20C,GACFliC,EAAaooF,MAAM50F,EAAMjY,IAAIkS,SAAU,CAACuzG,SAElB,IAApB9Y,GACFloF,EAAaooF,MAAM50F,EAAMjY,IAAI4R,iBAAkB,GAEnD,GACF,CACA,YAAAi0G,CAAa/3F,EAAOmoB,EAAS6vE,GAAgB,GAC3C,MAAMn+F,EAAYsuB,EAAU,CAACA,EAAQxoB,QAAUwoB,EAAQ1lE,KAAKmG,QAAU,KACtE,OAAI/qB,KAAK04J,kBAAoByB,EACpBn6J,KAAK+J,QAAQyL,KAAK,YAAa,CAAC2sD,EAAO,QAASmoB,GAAUtuB,GAE5Dh8D,KAAK+J,QAAQyL,KAAK,MAAO,CAAC2sD,EAAOniE,KAAKk2D,UAAW,QAASo0B,GAAUtuB,EAC7E,CACA,4BAAMo+F,EAAuB,UAC3BprB,EAAS,MACT78D,EAAK,SACLkoF,GAAW,EAAK,aAChBvhG,EAAY,SACZJ,EAAQ,gBACR4hG,EAAe,qBACf/M,IAEA,MAAM5qB,EAAOxwD,EAAMwwD,KACb+a,EAAW/a,EAAKxgE,MAChBx5B,EAAIg6F,EAAKliI,IAAI,IAAK,SAClBmoC,EAAI+5F,EAAKliI,IAAI,IAAK,UACxB,IAAMkoC,GAAkB,iBAANA,IAAqBC,GAAkB,iBAANA,EAEjD,YADA,EAAI0jB,EAAMhhD,MAAM,iDAGlB,MAAM6jD,EAAenvD,KAAKme,QAAQgxC,aAClC,IAAsB,IAAlBA,GAAuBxmB,EAAIC,EAAIumB,EAAc,CAC/C,MAAM/0C,EAAM,uDACZ,GAAIpa,KAAKme,QAAQ8wC,aAEf,YADA,EAAI3C,EAAMhhD,MAAM8O,GAGlB,MAAM,IAAI3O,MAAM2O,EAClB,CACA,IAAI4mI,EAKA12D,EAASr/E,EACb,GALI03H,EAAK/kE,IAAI,QACXojF,QAAwBhhJ,KAAKihJ,wBAAwBte,EAAKliI,IAAI,MAAOuuI,IAErDrM,EAAKliI,IAAI,KAAM,aAElB,CACb,MAAMquF,EAAc6zC,EAAKliI,IAAI,IAAK,eAC5B85J,EAAkB5xH,EAAI,GAAK,EAC3B6xH,EAAWroF,EAAMo2D,SAASgyB,EAAkB3xH,GAC5C4Q,EAASmpF,EAAK8C,SAAS,IAAK,UAClC,GAAIzlI,KAAK04J,iBAAkB,CAYzB,GAXApuE,EAAUwtE,EAAO2C,SAASC,cAAc,CACtCF,WACAz4H,MAAO4G,EACP1G,OAAQ2G,EACR+xH,wBAAyBxoF,aAAiB07D,EAAe+sB,aACzDr2D,cAAe/qD,IAAS,GAAK,EAC7Bs1C,gBAEFxE,EAAQuwE,SAAWniG,EACnBztD,EAAO,CAACq/E,GACRxxB,EAAagiG,YAAYxuG,EAAMjY,IAAIqS,sBAAuBz7C,EAAM+1I,GAC5DtoF,EAAU,CACZ,MAAMqiG,EAAY,CAChBnmI,GAAI03B,EAAMjY,IAAIqS,sBACdz7C,OACA+1I,mBAEFsZ,EAAgBxvI,IAAI4tC,EAAUglF,EAAUqd,GACpCrd,GACF19I,KAAK24J,oBAAoB7tI,IAAI,KAAM4yH,EAAUqd,EAEjD,CACA,MACF,CAUA,GATAzwE,QAAgBwtE,EAAO2C,SAASO,WAAW,CACzCR,WACAz4H,MAAO4G,EACP1G,OAAQ2G,EACR+xH,wBAAyBxoF,aAAiB07D,EAAe+sB,aACzDr2D,cAAe/qD,IAAS,GAAK,EAC7Bs1C,cACAhnC,2BAA4B9nD,KAAKme,QAAQ2pC,6BAEvCwiC,EAAQ2wE,oBAAqB,CAE/B,GADAniG,EAAagiG,YAAYxuG,EAAMjY,IAAI4S,yBAA0B,GAAI+5F,GAC7DtoF,EAAU,CACZ,MAAMqiG,EAAY,CAChBnmI,GAAI03B,EAAMjY,IAAI4S,yBACdh8C,KAAM,GACN+1I,mBAEFsZ,EAAgBxvI,IAAI4tC,EAAUglF,EAAUqd,GACpCrd,GACF19I,KAAK24J,oBAAoB7tI,IAAI,KAAM4yH,EAAUqd,EAEjD,CACA,MACF,CACA,MAAM54F,EAAQ,QAAQniE,KAAK0vI,UAAUb,gBAWrC,GAVA/1E,EAAaoiG,cAAc/4F,GAC3BniE,KAAKk6J,aAAa/3F,EAAOmoB,GACzBr/E,EAAO,CAAC,CACN2Z,KAAMu9C,EACNpgC,MAAOuoD,EAAQvoD,MACfE,OAAQqoD,EAAQroD,OAChB6sD,YAAaxE,EAAQwE,YACrBkE,MAAO,IAETl6B,EAAagiG,YAAYxuG,EAAMjY,IAAIqS,sBAAuBz7C,EAAM+1I,GAC5DtoF,EAAU,CACZ,MAAMqiG,EAAY,CAChBnmI,GAAI03B,EAAMjY,IAAIqS,sBACdz7C,OACA+1I,mBAEFsZ,EAAgBxvI,IAAI4tC,EAAUglF,EAAUqd,GACpCrd,GACF19I,KAAK24J,oBAAoB7tI,IAAI,KAAM4yH,EAAUqd,EAEjD,CACA,MACF,CAEA,GAAIV,IAAa13B,EAAK/kE,IAAI,WAAa+kE,EAAK/kE,IAAI,SAAWj1B,EAAIC,EADhC,IAC4D,CACzF,MAAMuyH,EAAW,IAAIrD,EAAO2C,SAAS,CACnCt7B,KAAMn/H,KAAKm/H,KACX1pH,IAAKu5H,EACL78D,QACAkoF,WACAhN,mBAAoBrtJ,KAAKstJ,oBACzBC,yBAKF,OAHAjjE,QAAgB6wE,EAAStwE,iBAAgB,GAAM,GAC/C/xB,EAAahR,2BAA6B9nD,KAAKme,QAAQ2pC,gCACvDgR,EAAagiG,YAAYxuG,EAAMjY,IAAIwS,wBAAyB,CAACyjC,GAAU02D,EAEzE,CACA,IAAI7+E,EAAQ,OAAOniE,KAAK0vI,UAAUb,gBAChCsrB,GAAgB,EA8BlB,GA7BIn6J,KAAK04J,iBACPv2F,EAAQ,GAAGniE,KAAK0vI,UAAUyE,oBAAoBhyE,IACrCu7E,IACTyc,EAAgBn6J,KAAKsuI,iBAAiB8sB,YAAY1d,EAAU19I,KAAKk2D,WAC7DikG,IACFh4F,EAAQ,GAAGniE,KAAK0vI,UAAUyE,cAAchyE,MAG5CrJ,EAAaoiG,cAAc/4F,GAC3Bl3D,EAAO,CAACk3D,EAAOx5B,EAAGC,GAClBkvH,EAAO2C,SAASY,WAAW,CACzBl8B,KAAMn/H,KAAKm/H,KACX1pH,IAAKu5H,EACL78D,QACAkoF,WACAhN,mBAAoBrtJ,KAAKstJ,oBACzBC,yBACC1oJ,MAAKmJ,MAAMmtJ,IAEZ,GADA7wE,QAAgB6wE,EAAStwE,iBAAgB,EAAO7qF,KAAKme,QAAQ2pC,4BACzD4Q,GAAYglF,GAAYyc,EAAe,CACzC,MAAMt0J,EAASykF,EAAQxoB,OAASwoB,EAAQvoD,MAAQuoD,EAAQroD,OAAS,EAAIqoD,EAAQ1lE,KAAK/e,OAClF7F,KAAKsuI,iBAAiBgtB,YAAY5d,EAAU73I,EAC9C,CACA,OAAO7F,KAAKk6J,aAAa/3F,EAAOmoB,EAAS6vE,EAAc,IACtD3nJ,OAAMmI,KACP,EAAI2xC,EAAMhhD,MAAM,2BAA2B62D,QAAYxnD,OAChD3a,KAAKk6J,aAAa/3F,EAAO,KAAMg4F,MAExCrhG,EAAagiG,YAAYxuG,EAAMjY,IAAIuS,kBAAmB37C,EAAM+1I,GACxDtoF,EAAU,CACZ,MAAMqiG,EAAY,CAChBnmI,GAAI03B,EAAMjY,IAAIuS,kBACd37C,OACA+1I,mBAEFsZ,EAAgBxvI,IAAI4tC,EAAUglF,EAAUqd,GACpCrd,IACF19I,KAAK24J,oBAAoB7tI,IAAI,KAAM4yH,EAAUqd,GACzCZ,KACF,EAAI7tG,EAAMtW,SAASqkH,EAAU,0CAC7Br6J,KAAKsuI,iBAAiBr2D,QAAQylE,EAAU,CACtCv7E,QACAvtC,GAAI03B,EAAMjY,IAAIuS,kBACd37C,OACA+1I,kBACAua,SAAU,KAIlB,CACF,CACA,WAAAC,CAAY3tE,EAAOmhD,EAAWl2E,EAAc9K,EAAMytG,EAAclO,GAC9D,MAAMmO,EAAe7tE,EAAMptF,IAAI,KACzBk7J,EAAe,CACnB5qF,QAAS8c,EAAMptF,IAAI,KAAK0I,KACxBklF,SAAUR,EAAMptF,IAAI,OAEhBm7J,EAAc/tE,EAAMptF,IAAI,MAC9B,MAAQssJ,EAAU8O,eAAeD,GAAc,CAC7C,MAAME,EAAa97J,KAAKstJ,oBAAoBpqJ,OAAO04J,GAC7CluE,EAAc,IAAI/jE,WAAW,KAC7BP,EAAM,IAAI8pI,aAAa,GAC7B,QAASrqJ,EAAI,EAAGA,EAAI,IAAKA,IACvBugB,EAAI,GAAKvgB,EAAI,IACbizJ,EAAW1yI,EAAK,EAAGA,EAAK,GACxBskE,EAAY7kF,GAAc,IAATugB,EAAI,GAAW,EAElCuyI,EAAajuE,YAAcA,CAC7B,CACA,OAAO1tF,KAAK45J,iBAAiB5qB,EAAW0sB,EAAcC,EAAc7iG,EAAc9K,EAAMytG,EAAah2I,MAAM1f,QAASwnJ,EACtH,CACA,sBAAAwO,CAAuBC,GACrB,IAAIC,EACJ,GAAItxJ,MAAMC,QAAQoxJ,GAChBC,EAAgBD,MACX,MAAI,EAAIjP,EAAU8O,eAAeG,GAGtC,OAAO,KAFPC,EAAgB,CAACD,EAGnB,CACA,MAAMjzE,EAAe,GACrB,IAAImzE,EAAS,EACXC,EAAkB,EACpB,UAAWz3F,KAASu3F,EAAe,CACjC,MAAML,EAAc57J,KAAKm/H,KAAKwU,WAAWjvE,GAEzC,GADAw3F,KACA,EAAQrgC,EAAYgK,QAAQ+1B,EAAa,YAAa,CACpD7yE,EAAannF,KAAK,MAClB,QACF,CAAO,KAAK,EAAImrJ,EAAU8O,eAAeD,GACvC,OAAO,KAET,MAAME,EAAa97J,KAAKstJ,oBAAoBpqJ,OAAO04J,GAC7CluE,EAAc,IAAI/jE,WAAW,KACjCP,EAAM,IAAI8pI,aAAa,GACzB,QAASrpI,EAAI,EAAGA,EAAI,IAAKA,IACvBT,EAAI,GAAKS,EAAI,IACbiyI,EAAW1yI,EAAK,EAAGA,EAAK,GACxBskE,EAAY7jE,GAAc,IAATT,EAAI,GAAW,EAElC2/D,EAAannF,KAAK8rF,GAClByuE,GACF,CACA,OAAiB,IAAXD,GAA2B,IAAXA,GAGE,IAApBC,EAFK,KAKFpzE,CACT,CACA,gBAAAqzE,CAAiBxnI,EAAI6/C,EAAOu6D,EAAW12C,EAAS+jE,EAAavjG,EAAc9K,EAAMsuG,GAC/E,MAAMC,EAAe,IAAI5uB,EAAeuD,aAClCsrB,EAAmB3gC,EAAY2E,KAAKn5H,MAAM,CAC9C83H,KAAMn/H,KAAKm/H,KACX0I,UAAW,CAACw0B,EAAY57J,IAAI,aAAcuuI,KAE5C,OAAOhvI,KAAKk6D,gBAAgB,CAC1BurC,OAAQnN,EACRtqC,OACAghF,UAAWwtB,EACX1jG,aAAcyjG,IACb13J,MAAK,WACN,MAAM43J,EAAiBF,EAAaG,QAC9BC,GAAkB,EAAIrF,EAASsF,oBAAoBH,EAAgBJ,EAAa5nF,GACtF3b,EAAa+jG,gBAAgBN,EAAatpD,cAC1Cn6C,EAAaooF,MAAMtsH,EAAI+nI,GACnBN,EAAYl6F,OACdm6F,EAAwBxxI,IAAI,KAAMuxI,EAAYl6F,MAAO,CACnDs6F,iBACA95B,KAAM05B,GAGZ,IAAG7pJ,OAAMmI,IACP,KAAIA,aAAkB2xC,EAAMvW,gBAA5B,CAGA,IAAI/1C,KAAKme,QAAQ8wC,aAIjB,MAAMt0C,GAHJ,EAAI2xC,EAAMhhD,MAAM,yCAAyCqP,MAF3D,CAKY,GAEhB,CACA,aAAA67H,CAAcxH,EAAW8tB,EAAUC,EAASjkG,EAAc9K,EAAMvoC,EAAO07H,EAAmB,KAAMl8D,EAAc,MAC5G,MAAM00B,EAAWmjD,IAAW,aAAcjhC,EAAYsK,KAAO22B,EAAS,GAAG3zJ,KAAO,KAChF,OAAOnJ,KAAKg9J,SAASrjD,EAAUojD,EAAS/tB,EAAWmS,EAAkBl8D,GAAapgF,MAAKo4J,GAChFA,EAAWz7F,KAAKy1B,YAGdgmE,EAAWC,cAAcl9J,KAAMgvI,EAAWhhF,GAAMnpD,MAAK,WAE1D,OADAi0D,EAAa+jG,gBAAgBI,EAAWE,mBACjCF,CACT,IAAGzqJ,OAAMmI,GACA,IAAIyiJ,EAAe,CACxBl6E,WAAY,eACZ1hB,KAAM,IAAI21F,EAAOkG,UAAU,0BAA0B1iJ,KACrDgoH,KAAMs6B,EAAWz7F,KACjBzQ,iBAAkB/wD,KAAKme,YAVlB8+I,IAaRp4J,MAAKo4J,IACNx3I,EAAM+7C,KAAOy7F,EAAWz7F,KACxBy7F,EAAWznJ,KAAKxV,KAAK+J,SACdkzJ,EAAW/5E,aAEtB,CACA,UAAAo6E,CAAW7kE,EAAOhzE,GAChB,MAAM+7C,EAAO/7C,EAAM+7C,KACbs2B,EAASt2B,EAAK0kF,cAAcztD,GAOlC,OANIj3B,EAAK58C,OACmBa,EAAM6iE,kBAAoBh8B,EAAMxY,kBAAkB2I,kBACxB,YAA9Bh3B,EAAM0nI,eAAehkJ,MAAsBq4D,EAAKnS,iBAAmBrvD,KAAKme,QAAQkxC,kBACpGogF,EAAiB8tB,eAAe/7F,EAAMs2B,EAAQ93F,KAAK+J,QAAS/J,KAAKme,SAG9D25E,CACT,CACA,eAAA0lE,CAAgB/3I,GACd,GAAIA,EAAM+7C,KACR,OAEF,MAAM7mD,EAAS,IAAI2xC,EAAMzX,YAAY,iEACrC,IAAI70C,KAAKme,QAAQ8wC,aAIjB,MAAMt0C,GAHJ,EAAI2xC,EAAMhhD,MAAM,qBAAqBqP,MAIzC,CACA,eAAMwnC,EAAU,UACd6sF,EAAS,OACTyuB,EAAM,aACN3kG,EAAY,SACZJ,EAAQ,KACR1K,EAAI,aACJytG,EAAY,iBACZiC,EAAgB,qBAChBnQ,IAEA,MAAMoQ,EAAYF,EAAOt7F,MACzB,IAAIy7F,GAAiB,EACrB,MAAMC,EAAY,GAClB,IAAIxyG,EAAUhnD,QAAQD,UACtB,UAAW0I,KAAO2wJ,EAAOx6B,UAAW,CAClC,MAAM9iI,EAAQs9J,EAAOh9J,IAAIqM,GACzB,OAAQA,GACN,IAAK,OACH,MACF,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,IACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACH+wJ,EAAUj8J,KAAK,CAACkL,EAAK3M,IACrB,MACF,IAAK,OACHy9J,GAAiB,EACjBvyG,EAAUA,EAAQxmD,MAAK,IACd7E,KAAKw2I,cAAcxH,EAAW,KAAM7uI,EAAM,GAAI24D,EAAc9K,EAAMytG,EAAah2I,OAAO5gB,MAAK,SAAUq+E,GAC1GpqB,EAAaoiG,cAAch4E,GAC3B26E,EAAUj8J,KAAK,CAACkL,EAAK,CAACo2E,EAAY/iF,EAAM,KAC1C,MAEF,MACF,IAAK,KACH09J,EAAUj8J,KAAK,CAACkL,EAAKorJ,EAAmB/3J,KACxC,MACF,IAAK,QACH,MAAQ07H,EAAYgK,QAAQ1lI,EAAO,QAAS,CAC1C09J,EAAUj8J,KAAK,CAACkL,GAAK,IACrB,KACF,CACI3M,aAAiB07H,EAAY2E,MAC/Bo9B,GAAiB,EACjBvyG,EAAUA,EAAQxmD,MAAK,IACd7E,KAAKw7J,YAAYr7J,EAAO6uI,EAAWl2E,EAAc9K,EAAMytG,EAAclO,KAE9EsQ,EAAUj8J,KAAK,CAACkL,GAAK,MAErB,EAAIw/C,EAAMhhD,MAAM,0BAElB,MACF,IAAK,KACH,MAAMy9E,EAAe/oF,KAAK+7J,uBAAuB57J,GACjD09J,EAAUj8J,KAAK,CAACkL,EAAKi8E,IACrB,MACF,IAAK,KACL,IAAK,KACL,IAAK,MACL,IAAK,KACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,MACL,IAAK,MACH,EAAIz8B,EAAMjhD,MAAM,0BAA4ByB,GAC5C,MACF,SACE,EAAIw/C,EAAMjhD,MAAM,kCAAoCyB,GAG1D,CACA,OAAOu+C,EAAQxmD,MAAK,WACdg5J,EAAUh4J,OAAS,GACrBizD,EAAaooF,MAAM50F,EAAMjY,IAAI8N,UAAW,CAAC07G,IAEvCD,GACFF,EAAiB5yI,IAAI4tC,EAAUilG,EAAWE,EAE9C,GACF,CACA,QAAAb,CAASrjD,EAAUn4C,EAAMwtE,EAAWmS,EAAmB,KAAMl8D,EAAc,MACzE,MAAM64E,EAAY9vJ,SACT,IAAIovJ,EAAe,CACxBl6E,WAAY,eACZ1hB,KAAM,IAAI21F,EAAOkG,UAAU,SAAS1jD,wBACpCgpB,KAAMnhE,EACNzQ,iBAAkB/wD,KAAKme,UAG3B,IAAI4+I,EACJ,GAAIv7F,EACEA,aAAgBq6D,EAAY2C,MAC9Bu+B,EAAUv7F,OAEP,CACL,MAAM40E,EAAUpH,EAAUvuI,IAAI,QAC1B21I,IACF2mB,EAAU3mB,EAAQrvC,OAAO4S,GAE7B,CACA,GAAIojD,EAAS,CACX,GAAI/8J,KAAK04J,kBAAoB14J,KAAK+9J,cAAcngG,IAAIm/F,GAClD,OAAOe,IAET,GAAI99J,KAAKmuI,UAAUvwE,IAAIm/F,GACrB,OAAO/8J,KAAKmuI,UAAU1tI,IAAIs8J,GAE5Bv7F,EAAOxhE,KAAKm/H,KAAKwU,WAAWopB,EAC9B,CACA,KAAMv7F,aAAgBq6D,EAAY2E,MAAO,CACvC,IAAKxgI,KAAKme,QAAQ8wC,eAAiBjvD,KAAK04J,iBAEtC,OADA,EAAIpsG,EAAMhhD,MAAM,SAASquG,wBAClBmkD,KAET,EAAIxxG,EAAMhhD,MAAM,SAASquG,oEACzBn4C,EAAO2/E,GAAoB1R,EAAiB0R,gBAC9C,CACA,GAAI3/E,EAAK9I,UAAY14D,KAAKmuI,UAAUvwE,IAAI4D,EAAK9I,UAC3C,OAAO14D,KAAKmuI,UAAU1tI,IAAI+gE,EAAK9I,UAEjC,MAAMslG,EAAiB,IAAI1xG,EAAMtY,kBACjC,IAAIiqH,EACJ,IACEA,EAAmBj+J,KAAKk+J,gBAAgB18F,GACxCy8F,EAAiBh5E,YAAcA,CACjC,CAAE,MAAOtqE,GAEP,OADA,EAAI2xC,EAAMhhD,MAAM,uCAAuCqP,OAChDmjJ,GACT,CACA,MAAM,WACJvnB,EAAU,KACVrqH,GACE+xI,EACEE,EAAepB,aAAmBlhC,EAAY2C,IACpD,IAAI4/B,EACJ,GAAIlyI,GAAQqqH,aAAsB1a,EAAY2E,KAAM,CAClD,MAAM69B,EAAc9nB,EAAW8nB,cAAgB/+J,OAAO4D,OAAO,MAC7D,GAAIm7J,EAAYnyI,GAAO,CACrB,MAAMoyI,EAAeD,EAAYnyI,GAAMk8G,SACvC,GAAI+1B,GAAgBG,GAAgBt+J,KAAKmuI,UAAUvwE,IAAI0gG,GAErD,OADAt+J,KAAKmuI,UAAUhG,SAAS40B,EAASuB,GAC1Bt+J,KAAKmuI,UAAU1tI,IAAIs8J,EAE9B,MACEsB,EAAYnyI,GAAQ,CAClBkyI,OAAQp+J,KAAK0vI,UAAU0E,gBAGvB+pB,IACFE,EAAYnyI,GAAMk8G,SAAW20B,GAE/BqB,EAASC,EAAYnyI,GAAMkyI,MAC7B,MACEA,EAASp+J,KAAK0vI,UAAU0E,eA0B1B,OAxBA,EAAI9nF,EAAMtW,QAAQooH,GAAQ7nH,WAAW,KAAM,6CACvC4nH,EACFn+J,KAAKmuI,UAAUxI,IAAIo3B,EAASiB,EAAe3yG,UAE3CmW,EAAK9I,SAAW,YAAY0lG,IAC5Bp+J,KAAKmuI,UAAUxI,IAAInkE,EAAK9I,SAAUslG,EAAe3yG,UAEnDmW,EAAK0hB,WAAa,GAAGljF,KAAK0vI,UAAUyE,cAAciqB,IAClDp+J,KAAKu+J,cAAcN,GAAkBp5J,MAAK25J,IACxCR,EAAe55J,QAAQ,IAAIg5J,EAAe,CACxCl6E,WAAY1hB,EAAK0hB,WACjB1hB,KAAMg9F,EACN77B,KAAMnhE,EACNzQ,iBAAkB/wD,KAAKme,UACtB,IACF3L,OAAMmI,KACP,EAAI2xC,EAAMhhD,MAAM,qCAAqCqP,OACrDqjJ,EAAe55J,QAAQ,IAAIg5J,EAAe,CACxCl6E,WAAY1hB,EAAK0hB,WACjB1hB,KAAM,IAAI21F,EAAOkG,UAAU1iJ,aAAkBlP,MAAQkP,EAAOvR,QAAUuR,GACtEgoH,KAAMnhE,EACNzQ,iBAAkB/wD,KAAKme,UACtB,IAEE6/I,EAAe3yG,OACxB,CACA,SAAAozG,CAAU3lG,EAAclkC,EAAI3pB,EAAMyzJ,GAAc,GAC9C,MAAMC,EAAY7lG,EAAajzD,OAAS,EAIxC,GAHKoF,IACHA,EAAO,IAEL0zJ,EAAY,GAAK7lG,EAAaC,QAAQ4lG,KAAeryG,EAAMjY,IAAI6S,cAAe,CAKhF,IAAIuB,EACJ,OALIi2G,KACF,EAAIpyG,EAAMhhD,MAAM,8BAA8BspB,+BAC9CkkC,EAAaooF,MAAM50F,EAAMjY,IAAI+N,KAAM,OAG7BxtB,GACN,KAAK03B,EAAMjY,IAAIwO,UACb,MAAMzjD,EAAI6L,EAAK,GAAKA,EAAK,GACnBjG,EAAIiG,EAAK,GAAKA,EAAK,GACzBw9C,EAAS,CAAChlC,KAAKE,IAAI1Y,EAAK,GAAI7L,GAAIqkB,KAAK6H,IAAIrgB,EAAK,GAAI7L,GAAIqkB,KAAKE,IAAI1Y,EAAK,GAAIjG,GAAIye,KAAK6H,IAAIrgB,EAAK,GAAIjG,IAC9F,MACF,KAAKsnD,EAAMjY,IAAIkO,OACf,KAAK+J,EAAMjY,IAAImO,OACbiG,EAAS,CAACx9C,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAC1C,MACF,QACEw9C,EAAS,CAAC0hC,KAAU,IAAWA,KAAU,KAG7CrxB,EAAaooF,MAAM50F,EAAMjY,IAAI6S,cAAe,CAAC,CAACtyB,GAAK3pB,EAAMw9C,IACrDi2G,GACF5lG,EAAaooF,MAAM50F,EAAMjY,IAAIgO,QAAS,KAE1C,KAAO,CACL,MAAMu8G,EAAS9lG,EAAaE,UAAU2lG,GACtCC,EAAO,GAAGh9J,KAAKgzB,GACfgqI,EAAO,GAAGh9J,QAAQqJ,GAClB,MAAMw9C,EAASm2G,EAAO,GACtB,OAAQhqI,GACN,KAAK03B,EAAMjY,IAAIwO,UACb,MAAMzjD,EAAI6L,EAAK,GAAKA,EAAK,GACnBjG,EAAIiG,EAAK,GAAKA,EAAK,GACzBw9C,EAAO,GAAKhlC,KAAKE,IAAI8kC,EAAO,GAAIx9C,EAAK,GAAI7L,GACzCqpD,EAAO,GAAKhlC,KAAK6H,IAAIm9B,EAAO,GAAIx9C,EAAK,GAAI7L,GACzCqpD,EAAO,GAAKhlC,KAAKE,IAAI8kC,EAAO,GAAIx9C,EAAK,GAAIjG,GACzCyjD,EAAO,GAAKhlC,KAAK6H,IAAIm9B,EAAO,GAAIx9C,EAAK,GAAIjG,GACzC,MACF,KAAKsnD,EAAMjY,IAAIkO,OACf,KAAK+J,EAAMjY,IAAImO,OACbiG,EAAO,GAAKhlC,KAAKE,IAAI8kC,EAAO,GAAIx9C,EAAK,IACrCw9C,EAAO,GAAKhlC,KAAK6H,IAAIm9B,EAAO,GAAIx9C,EAAK,IACrCw9C,EAAO,GAAKhlC,KAAKE,IAAI8kC,EAAO,GAAIx9C,EAAK,IACrCw9C,EAAO,GAAKhlC,KAAK6H,IAAIm9B,EAAO,GAAIx9C,EAAK,IAG3C,CACF,CACA,eAAAgvJ,EAAgB,GACd54D,EAAE,UACF2tC,EAAS,qBACTue,IAEA,OAAOlT,EAAYO,WAAWgX,WAAW,CACvCvwD,KACA89B,KAAMn/H,KAAKm/H,KACX6P,YACAqe,mBAAoBrtJ,KAAKstJ,oBACzBC,yBACC/6I,OAAMmI,IACP,GAAIA,aAAkB2xC,EAAMvW,eAC1B,OAAO,KAET,GAAI/1C,KAAKme,QAAQ8wC,aAEf,OADA,EAAI3C,EAAMhhD,MAAM,2CAA2CqP,OACpD,KAET,MAAMA,CAAM,GAEhB,CACA,YAAAkkJ,EAAa,QACXC,EAAO,UACP9vB,EAAS,qBACTue,EAAoB,yBACpBwR,IAEA,IAAInpJ,EAAKmpJ,EAAyBt+J,IAAIq+J,GACtC,IAAKlpJ,EAAI,CAEP,MAAMopJ,EADY1H,EAAS2H,QAAQJ,aAAaC,EAAS9+J,KAAKm/H,KAAM6P,EAAWhvI,KAAKstJ,oBAAqBC,GAC3EmP,QAC9B9mJ,EAAK,WAAW5V,KAAK0vI,UAAUb,gBAC3B7uI,KAAK04J,mBACP9iJ,EAAK,GAAG5V,KAAK0vI,UAAUyE,oBAAoBv+H,KAE7CmpJ,EAAyBj0I,IAAIg0I,EAASlpJ,GAClC5V,KAAK04J,iBACP14J,KAAK+J,QAAQyL,KAAK,YAAa,CAACI,EAAI,UAAWopJ,IAE/Ch/J,KAAK+J,QAAQyL,KAAK,MAAO,CAACI,EAAI5V,KAAKk2D,UAAW,UAAW8oG,GAE7D,CACA,OAAOppJ,CACT,CACA,YAAAspJ,CAAapmG,EAAclkC,EAAI3pB,EAAMo2F,EAAI89D,EAAUnwB,EAAWhhF,EAAMu/F,EAAsB+O,EAAyByC,GACjH,MAAMK,EAAcn0J,EAAKrF,MACzB,GAAIw5J,aAAuBvjC,EAAYsK,KAAM,CAC3C,MAAMk5B,EAAaF,EAASp4D,OAAOq4D,EAAYj2J,MACzCm2J,EAAqBD,aAAsBxjC,EAAY2C,KAAO89B,EAAwB5K,SAAS2N,GACrG,GAAIC,EACF,IACE,MAAM7qF,EAAQ4sB,EAAGt1F,KAAOs1F,EAAGt1F,KAAKojJ,OAAOlkJ,EAAM,GAAK,KAC5C0xJ,GAAkB,EAAIrF,EAASsF,oBAAoB0C,EAAmB7C,eAAgB6C,EAAmB38B,KAAMluD,GAErH,YADA3b,EAAaooF,MAAMtsH,EAAI+nI,EAEzB,CAAE,MAAO,CAEX,MAAMrkE,EAAUt4F,KAAKm/H,KAAKwU,WAAW0rB,GACrC,GAAI/mE,EAAS,CACX,MAAMqqC,EAAOrqC,aAAmBktC,EAAaM,WAAaxtC,EAAQqqC,KAAOrqC,EACnEinE,EAAU58B,EAAKliI,IAAI,eACzB,GAAI8+J,IAAYvH,EAAoB,CAClC,MAAMvjF,EAAQ4sB,EAAGt1F,KAAOs1F,EAAGt1F,KAAKojJ,OAAOlkJ,EAAM,GAAK,KAClD,OAAOjL,KAAKo8J,iBAAiBxnI,EAAI6/C,EAAOu6D,EAAW12C,EAASqqC,EAAM7pE,EAAc9K,EAAMsuG,EACxF,CAAO,GAAIiD,IAAYvH,EAAqB,CAC1C,MAAM8G,EAAUn8B,EAAKliI,IAAI,WACnBk6F,EAASgoC,EAAK8C,SAAS,UACvBtjE,EAAQniE,KAAK6+J,aAAa,CAC9BC,UACA9vB,YACAue,uBACAwR,6BAGF,YADAjmG,EAAaooF,MAAMtsH,EAAI,CAAC,UAAWutC,EAAOw4B,GAE5C,CACA,MAAM,IAAIruC,EAAMzX,YAAY,wBAAwB0qH,IACtD,CACF,CACA,MAAM,IAAIjzG,EAAMzX,YAAY,wBAAwBuqH,IACtD,CACA,0BAAAI,CAA2B7pI,EAAO8pI,EAAgBC,GAEhD,KAAMD,EADc,GAGlB,YADA,EAAInzG,EAAMhhD,MAAM,8CAGlB,MAAMzF,EAAS8vB,EAAM9vB,OACfuhG,EAAWpnG,KAAKm/H,KAAKwU,WAAWh+G,EAAM,IAC5C,KAAI9vB,EAAS,IAAOuhG,aAAoBy0B,EAAYsK,KAApD,CAIA,OAAQ/+B,EAASj+F,MACf,IAAK,MACL,IAAK,KACL,IAAK,MACHu2J,EAAc99J,KAAKwlG,EAASj+F,MAC5B,MACF,QAEE,YADA,EAAImjD,EAAMhhD,MAAM,oBAAoB87F,EAASj+F,iCAGjD,QAASN,EAAI,EAAGA,EAAIhD,EAAQgD,IAAK,CAC/B,MAAMmjB,EAAM2J,EAAM9sB,GACZ6C,EAAS1L,KAAKm/H,KAAKwU,WAAW3nH,GACpC,GAAIrhB,MAAMC,QAAQc,GAAS,CACzB,MAAMi0J,EAAe,GACrBD,EAAc99J,KAAK+9J,GACnB3/J,KAAKw/J,2BAA2B9zJ,EAAQ+zJ,EAAgBE,EAC1D,MAAW3zI,aAAe6vG,EAAY2C,KACpCkhC,EAAc99J,KAAKoqB,EAAIthB,WAE3B,CArBA,MAFE,EAAI4hD,EAAMhhD,MAAM,gCAwBpB,CACA,6BAAM21I,CAAwB2e,EAAmB5wB,GAC/C,IAAIgS,EACJ,GAAI4e,aAA6B/jC,EAAYsK,KAE3C6a,EADmBhS,EAAUvuI,IAAI,cACJA,IAAIm/J,EAAkBz2J,UAC9C,MAAIy2J,aAA6B/jC,EAAY2E,MAGlD,MAAM,IAAIl0E,EAAMzX,YAAY,0CAF5BmsG,EAAkB4e,CAGpB,CACA,MAAMC,EAAsB7e,EAAgBvgJ,IAAI,SAAS0I,KACzD,GAA4B,QAAxB02J,EACF,MAAO,CACL9yJ,KAAM8yJ,EACNjqJ,GAAIorI,EAAgB7+E,OAEjB,GAA4B,SAAxB09F,EAAgC,CACzC,MAAMn4D,EAAas5C,EAAgBvgJ,IAAI,MACvC,GAAIkK,MAAMC,QAAQ88F,GAAa,CAC7B,MAAM7jG,EAAS,GAEf,GADA7D,KAAKw/J,2BAA2B93D,EAAY,EAAG7jG,GAC3CA,EAAOgC,OAAS,EAClB,MAAO,CACLkH,KAAM,OACN26F,WAAY7jG,EAGlB,CACA,MAAMi8J,EAAwB9e,EAAgBvgJ,IAAI,QAClD,GAAIkK,MAAMC,QAAQk1J,IAA0BA,aAAiCjkC,EAAY2E,KAAM,CAC7F,MAAMu/B,EAAW,GACjB,GAAIp1J,MAAMC,QAAQk1J,GAChB,UAAWE,KAAOF,EAChBC,EAASn+J,KAAKo+J,EAAIt1J,iBAGpBq1J,EAASn+J,KAAKk+J,EAAsB39F,OAEtC,MAAO,CACLp1D,KAAM8yJ,EACNj4D,IAAKm4D,EACLp4D,OAAQq5C,EAAgBvgJ,IAAI,eAAgBo7H,EAAYsK,KAAO6a,EAAgBvgJ,IAAI,KAAK0I,KAAO,KAC/Fu+F,WAAY,KAEhB,CAAO,GAAIo4D,aAAiCjkC,EAAY2C,IACtD,MAAO,CACLzxH,KAAM8yJ,EACNjqJ,GAAIkqJ,EAAsBp1J,WAGhC,CACA,OAAO,IACT,CACA,eAAAwvD,EAAgB,OACdurC,EAAM,KACNz3C,EAAI,UACJghF,EAAS,aACTl2E,EAAY,aACZw9E,EAAe,KAAI,iBACnB6K,EAAmB,OAInB,GAFAnS,IAAcnT,EAAY2E,KAAKmH,MAC/B2O,IAAiB,IAAI2pB,GAChBnnG,EACH,MAAM,IAAIrtD,MAAM,qDAElB,MAAMvM,EAAOc,KACPm/H,EAAOn/H,KAAKm/H,KAClB,IAAIu/B,GAAc,EAClB,MAAMpE,EAAkB,IAAIx0E,EAAao6E,gBACnC3S,EAAuB,IAAIznE,EAAa2nE,qBACxCiQ,EAAmB,IAAI53E,EAAaq6E,iBACpC7D,EAA0B,IAAIx2E,EAAas6E,wBAC3CrB,EAA2B,IAAIzmH,IAC/B03C,EAAQg/C,EAAUvuI,IAAI,YAAco7H,EAAY2E,KAAKmH,MACrDw3B,EAAWnwB,EAAUvuI,IAAI,YAAco7H,EAAY2E,KAAKmH,MACxD8zB,EAAe,IAAI4E,EAAa/pB,GAChCgqB,EAAe,IAAItT,EAAsBvnD,EAAQ05B,EAAMs8B,GACvD8E,EAAkB,IAAI9H,EAC5B,SAAS+H,EAAuBC,GAC9B,QAAS53J,EAAI,EAAGovC,EAAKqoH,EAAapT,iBAAkBrkJ,EAAIovC,EAAIpvC,IAC1DiwD,EAAaooF,MAAM50F,EAAMjY,IAAIgO,QAAS,GAE1C,CACA,OAAO,IAAIh+C,SAAQ,SAASq8J,EAAYt8J,EAASE,GAC/C,MAAMG,EAAO,SAAU4mD,GACrBhnD,QAAQw8B,IAAI,CAACwqB,EAASyN,EAAa3vB,QAAQtkC,MAAK,WAC9C,IACE67J,EAAYt8J,EAASE,EACvB,CAAE,MAAOm1C,GACPn1C,EAAOm1C,EACT,CACF,GAAGn1C,EACL,EACA0pD,EAAKsuE,sBACLikC,EAAgBp1I,QAChB,MAAM8hI,EAAY,CAAC,EACnB,IAAIrqI,EAAM/Z,EAAGovC,EAAIopD,EAAIl4F,EAAMw3J,EAC3B,OAAS/9I,EAAO29I,EAAgBjI,WAC9BrL,EAAUhiJ,KAAO,KACZq1J,EAAanlG,KAAK8xF,KAFiB,CAKxC,IAAIhiJ,EAAOgiJ,EAAUhiJ,KACjB2pB,EAAKq4H,EAAUr4H,GACnB,OAAa,EAALA,GACN,KAAK03B,EAAMjY,IAAIuR,aAGb,GAFA+6G,EAAc11J,EAAK,aAAc4wH,EAAYsK,KAC7Ch9H,EAAO8B,EAAK,GAAG9B,KACXw3J,EAAa,CACf,MAAMC,EAAatG,EAAgB3I,UAAUxoJ,GAC7C,GAAIy3J,EAAY,CACd9nG,EAAagiG,YAAY8F,EAAWhsI,GAAIgsI,EAAW31J,KAAM21J,EAAW5f,iBACpEqX,EAA8BuI,GAC9B31J,EAAO,KACP,QACF,CACF,CA+DA,YA9DAxG,EAAK,IAAIJ,SAAQ,SAAUw8J,EAAgBC,GACzC,IAAKH,EACH,MAAM,IAAIr0G,EAAMzX,YAAY,wCAE9B,IAAIglH,EAAO7pE,EAAM+W,OAAO59F,GACxB,GAAI0wJ,aAAgBh+B,EAAY2C,IAAK,CACnC,MAAMoiC,EAAatG,EAAgB5I,SAASmI,IAAS36J,EAAKy5J,oBAAoBjH,SAASmI,GACvF,GAAI+G,EAIF,OAHA9nG,EAAagiG,YAAY8F,EAAWhsI,GAAIgsI,EAAW31J,KAAM21J,EAAW5f,iBACpEqX,EAA8BuI,QAC9BC,IAGF,MAAME,EAAc7hK,EAAKovI,iBAAiBh5E,QAAQukG,EAAM36J,EAAKg3D,WAC7D,GAAI6qG,EAIF,OAHAjoG,EAAaoiG,cAAc6F,EAAY5+F,OACvCrJ,EAAagiG,YAAYiG,EAAYnsI,GAAImsI,EAAY91J,KAAM81J,EAAY/f,sBACvE6f,IAGFhH,EAAO16B,EAAK3nH,MAAMqiJ,EACpB,CACA,KAAMA,aAAgBr0B,EAAaM,YACjC,MAAM,IAAIx5E,EAAMzX,YAAY,8BAE9B,MAAM9nC,EAAO8sJ,EAAKl3B,KAAKliI,IAAI,WAC3B,KAAMsM,aAAgB8uH,EAAYsK,MAChC,MAAM,IAAI75E,EAAMzX,YAAY,sCAE9B,GAAkB,SAAd9nC,EAAK5D,KAMP,OALAsyJ,EAAar5G,YACbljD,EAAK06J,iBAAiB5qB,EAAW6qB,EAAM,KAAM/gG,EAAc9K,EAAMytG,EAAah2I,MAAM1f,QAASwnJ,GAAsB1oJ,MAAK,WACtH42J,EAAap5G,UACbw+G,GACF,GAAGC,GAEE,GAAkB,UAAd/zJ,EAAK5D,KAAT,CAUA,GAAkB,OAAd4D,EAAK5D,KAGd,MAAM,IAAImjD,EAAMzX,YAAY,6BAA6B9nC,EAAK5D,SAF9D,EAAImjD,EAAMjhD,MAAM,8BAIlBw1J,GADA,MAbE3hK,EAAKk7J,uBAAuB,CAC1BprB,YACA78D,MAAO0nF,EACP/gG,eACAJ,SAAUvvD,EACVmxJ,kBACA/M,yBACC1oJ,KAAKg8J,EAAgBC,EAQ5B,IAAGtuJ,OAAM,SAAUmI,GACjB,KAAIA,aAAkB2xC,EAAMvW,gBAA5B,CAGA,IAAI72C,EAAKif,QAAQ8wC,aAIjB,MAAMt0C,GAHJ,EAAI2xC,EAAMhhD,MAAM,wCAAwCqP,MAF1D,CAMF,KAEF,KAAK2xC,EAAMjY,IAAI0P,QACb,IAAI4jC,EAAW18E,EAAK,GAKpB,YAJAxG,EAAKvF,EAAKs3I,cAAcxH,EAAW/jI,EAAM,KAAM6tD,EAAc9K,EAAMytG,EAAah2I,MAAO07H,GAAkBt8I,MAAK,SAAUq+E,GACtHpqB,EAAaoiG,cAAch4E,GAC3BpqB,EAAaooF,MAAM50F,EAAMjY,IAAI0P,QAAS,CAACm/B,EAAYyE,GACrD,KAEF,KAAKr7B,EAAMjY,IAAIoP,UACbi7G,GAAc,EACd,MACF,KAAKpyG,EAAMjY,IAAIqP,QACbg7G,GAAc,EACd,MACF,KAAKpyG,EAAMjY,IAAIsR,eACb,IAAI+S,EAAWztD,EAAK,GAAGytD,SACvB,GAAIA,EAAU,CACZ,MAAMkoG,EAAatG,EAAgB3I,UAAUj5F,GAC7C,GAAIkoG,EAAY,CACd9nG,EAAagiG,YAAY8F,EAAWhsI,GAAIgsI,EAAW31J,KAAM21J,EAAW5f,iBACpEqX,EAA8BuI,GAC9B31J,EAAO,KACP,QACF,CACF,CAUA,YATAxG,EAAKvF,EAAKk7J,uBAAuB,CAC/BprB,YACA78D,MAAOlnE,EAAK,GACZovJ,UAAU,EACVvhG,eACAJ,WACA4hG,kBACA/M,0BAGJ,KAAKjhG,EAAMjY,IAAIiQ,SACb,IAAKm3G,EAAah2I,MAAM+7C,KAAM,CAC5BtiE,EAAKs+J,gBAAgB/B,EAAah2I,OAClC,QACF,CACAxa,EAAK,GAAK/L,EAAKo+J,WAAWryJ,EAAK,GAAIwwJ,EAAah2I,OAChD,MACF,KAAK6mC,EAAMjY,IAAIkQ,eACb,IAAKk3G,EAAah2I,MAAM+7C,KAAM,CAC5BtiE,EAAKs+J,gBAAgB/B,EAAah2I,OAClC,QACF,CACA,IAAIu7I,EAAiB,GACjBv7I,EAAQg2I,EAAah2I,MACzB,UAAWw7I,KAAWh2J,EAAK,GACF,iBAAZg2J,EACTD,EAAep/J,QAAQ1C,EAAKo+J,WAAW2D,EAASx7I,IACpB,iBAAZw7I,GAChBD,EAAep/J,KAAKq/J,GAGxBh2J,EAAK,GAAK+1J,EACVpsI,EAAK03B,EAAMjY,IAAIiQ,SACf,MACF,KAAKgI,EAAMjY,IAAImQ,iBACb,IAAKi3G,EAAah2I,MAAM+7C,KAAM,CAC5BtiE,EAAKs+J,gBAAgB/B,EAAah2I,OAClC,QACF,CACAqzC,EAAaooF,MAAM50F,EAAMjY,IAAIgQ,UAC7Bp5C,EAAK,GAAK/L,EAAKo+J,WAAWryJ,EAAK,GAAIwwJ,EAAah2I,OAChDmP,EAAK03B,EAAMjY,IAAIiQ,SACf,MACF,KAAKgI,EAAMjY,IAAIoQ,2BACb,IAAKg3G,EAAah2I,MAAM+7C,KAAM,CAC5BtiE,EAAKs+J,gBAAgB/B,EAAah2I,OAClC,QACF,CACAqzC,EAAaooF,MAAM50F,EAAMjY,IAAIgQ,UAC7ByU,EAAaooF,MAAM50F,EAAMjY,IAAIuP,eAAgB,CAAC34C,EAAKrC,UACnDkwD,EAAaooF,MAAM50F,EAAMjY,IAAIsP,eAAgB,CAAC14C,EAAKrC,UACnDqC,EAAK,GAAK/L,EAAKo+J,WAAWryJ,EAAK,GAAIwwJ,EAAah2I,OAChDmP,EAAK03B,EAAMjY,IAAIiQ,SACf,MACF,KAAKgI,EAAMjY,IAAI2P,qBACby3G,EAAah2I,MAAM6iE,kBAAoBr9E,EAAK,GAC5C,MACF,KAAKqhD,EAAMjY,IAAIwQ,kBACb,CACE,MAAMitG,EAAmBzX,EAAYO,WAAW4W,UAAUvmJ,EAAK,GAAIk0H,EAAMouB,GACzE,GAAIuE,EAAkB,CACpB2J,EAAah2I,MAAM0nI,eAAiB2E,EACpC,QACF,CAUA,YATArtJ,EAAKvF,EAAK+6J,gBAAgB,CACxB54D,GAAIp2F,EAAK,GACT+jI,YACAue,yBACC1oJ,MAAK,SAAUm1J,GACZA,IACFyB,EAAah2I,MAAM0nI,eAAiB6M,EAExC,IAEF,CACF,KAAK1tG,EAAMjY,IAAIuQ,oBACb,CACE,MAAMktG,EAAmBzX,EAAYO,WAAW4W,UAAUvmJ,EAAK,GAAIk0H,EAAMouB,GACzE,GAAIuE,EAAkB,CACpB2J,EAAah2I,MAAMy7I,iBAAmBpP,EACtC,QACF,CAUA,YATArtJ,EAAKvF,EAAK+6J,gBAAgB,CACxB54D,GAAIp2F,EAAK,GACT+jI,YACAue,yBACC1oJ,MAAK,SAAUm1J,GACZA,IACFyB,EAAah2I,MAAMy7I,iBAAmBlH,EAE1C,IAEF,CACF,KAAK1tG,EAAMjY,IAAI2Q,aACbq8C,EAAKo6D,EAAah2I,MAAM0nI,eACxBliJ,EAAOo2F,EAAG8tD,OAAOlkJ,EAAM,GACvB2pB,EAAK03B,EAAMjY,IAAIgR,gBACf,MACF,KAAKiH,EAAMjY,IAAIyQ,eACbu8C,EAAKo6D,EAAah2I,MAAMy7I,iBACxBj2J,EAAOo2F,EAAG8tD,OAAOlkJ,EAAM,GACvB2pB,EAAK03B,EAAMjY,IAAI+Q,kBACf,MACF,KAAKkH,EAAMjY,IAAI8Q,YACbs2G,EAAah2I,MAAM0nI,eAAiB9S,EAAYO,WAAWC,WAAWC,KACtE7vI,EAAOovI,EAAYO,WAAWC,WAAWC,KAAKqU,OAAOlkJ,EAAM,GAC3D2pB,EAAK03B,EAAMjY,IAAIgR,gBACf,MACF,KAAKiH,EAAMjY,IAAI6Q,cACbu2G,EAAah2I,MAAMy7I,iBAAmB7mB,EAAYO,WAAWC,WAAWC,KACxE7vI,EAAOovI,EAAYO,WAAWC,WAAWC,KAAKqU,OAAOlkJ,EAAM,GAC3D2pB,EAAK03B,EAAMjY,IAAI+Q,kBACf,MACF,KAAKkH,EAAMjY,IAAIkR,iBACbk2G,EAAah2I,MAAM0nI,eAAiB9S,EAAYO,WAAWC,WAAWG,KACtE/vI,EAAOovI,EAAYO,WAAWC,WAAWG,KAAKmU,OAAOlkJ,EAAM,GAC3D2pB,EAAK03B,EAAMjY,IAAIgR,gBACf,MACF,KAAKiH,EAAMjY,IAAIiR,mBACbm2G,EAAah2I,MAAMy7I,iBAAmB7mB,EAAYO,WAAWC,WAAWG,KACxE/vI,EAAOovI,EAAYO,WAAWC,WAAWG,KAAKmU,OAAOlkJ,EAAM,GAC3D2pB,EAAK03B,EAAMjY,IAAI+Q,kBACf,MACF,KAAKkH,EAAMjY,IAAIgR,gBACbo2G,EAAah2I,MAAM0nI,eAAiB9S,EAAYO,WAAWC,WAAWnmE,IACtEzpE,EAAOovI,EAAYO,WAAWC,WAAWnmE,IAAIy6E,OAAOlkJ,EAAM,GAC1D,MACF,KAAKqhD,EAAMjY,IAAI+Q,kBACbq2G,EAAah2I,MAAMy7I,iBAAmB7mB,EAAYO,WAAWC,WAAWnmE,IACxEzpE,EAAOovI,EAAYO,WAAWC,WAAWnmE,IAAIy6E,OAAOlkJ,EAAM,GAC1D,MACF,KAAKqhD,EAAMjY,IAAI4Q,cAEb,GADAo8C,EAAKo6D,EAAah2I,MAAM0nI,eACR,YAAZ9rD,EAAGl4F,KAEL,YADA1E,EAAKvF,EAAKggK,aAAapmG,EAAcxM,EAAMjY,IAAI4Q,cAAeh6C,EAAMo2F,EAAI89D,EAAUnwB,EAAWhhF,EAAMu/F,EAAsB+O,EAAyByC,IAGpJ9zJ,EAAOo2F,EAAG8tD,OAAOlkJ,EAAM,GACvB2pB,EAAK03B,EAAMjY,IAAIgR,gBACf,MACF,KAAKiH,EAAMjY,IAAI0Q,gBAEb,GADAs8C,EAAKo6D,EAAah2I,MAAMy7I,iBACR,YAAZ7/D,EAAGl4F,KAEL,YADA1E,EAAKvF,EAAKggK,aAAapmG,EAAcxM,EAAMjY,IAAI0Q,gBAAiB95C,EAAMo2F,EAAI89D,EAAUnwB,EAAWhhF,EAAMu/F,EAAsB+O,EAAyByC,IAGtJ9zJ,EAAOo2F,EAAG8tD,OAAOlkJ,EAAM,GACvB2pB,EAAK03B,EAAMjY,IAAI+Q,kBACf,MACF,KAAKkH,EAAMjY,IAAImR,YACb,IAAI27G,EAAanyB,EAAUvuI,IAAI,WAC/B,IAAK0gK,EACH,MAAM,IAAI70G,EAAMzX,YAAY,6BAE9B,IAAIiqH,EAAUqC,EAAW1gK,IAAIwK,EAAK,GAAG9B,MACrC,IAAK21J,EACH,MAAM,IAAIxyG,EAAMzX,YAAY,2BAQ9B5pC,EAAO,CANW/L,EAAK2/J,aAAa,CAClCC,UACA9vB,YACAue,uBACAwR,8BAGFnqI,EAAK03B,EAAMjY,IAAImR,YACf,MACF,KAAK8G,EAAMjY,IAAI8N,UAGb,GAFAw+G,EAAc11J,EAAK,aAAc4wH,EAAYsK,KAC7Ch9H,EAAO8B,EAAK,GAAG9B,KACXw3J,EAAa,CACf,MAAMS,EAAiB1D,EAAiB/L,UAAUxoJ,GAClD,GAAIi4J,EAAgB,CACdA,EAAev7J,OAAS,GAC1BizD,EAAaooF,MAAM50F,EAAMjY,IAAI8N,UAAW,CAACi/G,IAE3Cn2J,EAAO,KACP,QACF,CACF,CAiCA,YAhCAxG,EAAK,IAAIJ,SAAQ,SAAUg9J,EAAeC,GACxC,IAAKX,EACH,MAAM,IAAIr0G,EAAMzX,YAAY,uCAE9B,MAAMk3G,EAAY/c,EAAUvuI,IAAI,aAChC,KAAMsrJ,aAAqBlwB,EAAY2E,MACrC,MAAM,IAAIl0E,EAAMzX,YAAY,qCAE9B,MAAM4oH,EAAS1R,EAAUtrJ,IAAI0I,GAC7B,KAAMs0J,aAAkB5hC,EAAY2E,MAClC,MAAM,IAAIl0E,EAAMzX,YAAY,kCAE9B31C,EAAKijD,UAAU,CACb6sF,YACAyuB,SACA3kG,eACAJ,SAAUvvD,EACV6kD,OACAytG,eACAiC,mBACAnQ,yBACC1oJ,KAAKw8J,EAAeC,EACzB,IAAG9uJ,OAAM,SAAUmI,GACjB,KAAIA,aAAkB2xC,EAAMvW,gBAA5B,CAGA,IAAI72C,EAAKif,QAAQ8wC,aAIjB,MAAMt0C,GAHJ,EAAI2xC,EAAMhhD,MAAM,0CAA0CqP,MAF5D,CAMF,KAEF,KAAK2xC,EAAMjY,IAAIkO,OACf,KAAK+J,EAAMjY,IAAImO,OACf,KAAK8J,EAAMjY,IAAIoO,QACf,KAAK6J,EAAMjY,IAAIqO,SACf,KAAK4J,EAAMjY,IAAIsO,SACf,KAAK2J,EAAMjY,IAAIuO,UACf,KAAK0J,EAAMjY,IAAIwO,UACb3jD,EAAKu/J,UAAU3lG,EAAclkC,EAAI3pB,EAAMyzJ,GACvC,SACF,KAAKpyG,EAAMjY,IAAIwR,UACf,KAAKyG,EAAMjY,IAAIyR,eACf,KAAKwG,EAAMjY,IAAI6R,YACf,KAAKoG,EAAMjY,IAAI8R,UACb,SACF,KAAKmG,EAAMjY,IAAI2R,wBACb,KAAM/6C,EAAK,aAAc4wH,EAAYsK,MAAO,EAC1C,EAAI75E,EAAMhhD,MAAM,kDAAkDL,EAAK,MACvE,QACF,CACA,GAAqB,OAAjBA,EAAK,GAAG9B,KAaV,YAZA1E,EAAKvF,EAAK+hJ,wBAAwBh2I,EAAK,GAAI+jI,GAAWnqI,MAAK+f,IACzDk0C,EAAaooF,MAAM50F,EAAMjY,IAAI2R,wBAAyB,CAAC,KAAMphC,GAAM,IAClEpS,OAAMmI,IACP,KAAIA,aAAkB2xC,EAAMvW,gBAA5B,CAGA,IAAI72C,EAAKif,QAAQ8wC,aAIjB,MAAMt0C,GAHJ,EAAI2xC,EAAMhhD,MAAM,wDAAwDqP,MAF1E,CAKY,KAIhB1P,EAAO,CAACA,EAAK,GAAG9B,KAAM8B,EAAK,aAAc4wH,EAAY2E,KAAOv1H,EAAK,GAAGxK,IAAI,QAAU,MAClF,MACF,KAAK6rD,EAAMjY,IAAI0R,mBACf,KAAKuG,EAAMjY,IAAI4R,iBACf,QACE,GAAa,OAATh7C,EAAe,CACjB,IAAKpC,EAAI,EAAGovC,EAAKhtC,EAAKpF,OAAQgD,EAAIovC,KAC5BhtC,EAAKpC,aAAcgzH,EAAY2E,MADC33H,KAKtC,GAAIA,EAAIovC,EAAI,EACV,EAAIqU,EAAMhhD,MAAM,wCAA0CspB,GAC1D,QACF,CACF,EAEJkkC,EAAaooF,MAAMtsH,EAAI3pB,EACzB,CACI2X,EACFne,EAAKwzJ,IAGPuI,IACAp8J,IACF,IAAGoO,OAAMmI,IACP,KAAIA,aAAkB2xC,EAAMvW,gBAA5B,CAGA,GAAI/1C,KAAKme,QAAQ8wC,aAGf,OAFA,EAAI3C,EAAMhhD,MAAM,6CAA6C0iD,EAAK7kD,gBAAqBwR,YACvF6lJ,IAGF,MAAM7lJ,CANN,CAMY,GAEhB,CACA,cAAAggD,EAAe,OACb8qC,EAAM,KACNz3C,EAAI,UACJghF,EAAS,aACTysB,EAAe,KAAI,qBACnBnhG,GAAuB,EAAK,KAC5B4F,EAAI,WACJqhG,EAAa,IAAI3nG,IAAK,QACtBpC,EAAO,kBACPgqG,EAAoB,KAAI,qBACxBjnG,GAAuB,IAEvBy0E,IAAcnT,EAAY2E,KAAKmH,MAC/B8zB,IAAiB,IAAI4E,EAAa,IAAIoB,GAClCnnG,IACFknG,IAAsB,CACpBpmJ,MAAO,IAGX,MAAMlE,EAAc,CAClBwjD,MAAO,GACPO,OAAQ37D,OAAO4D,OAAO,OAElBw+J,EAAkB,CACtBC,aAAa,EACb33I,IAAK,GACL66H,WAAY,EACZD,YAAa,EACb7iH,MAAO,EACPE,OAAQ,EACRg2D,UAAU,EACV2pE,cAAe,KACfC,iBAAkB,EAClBC,eAAgB,EAChBC,eAAgB,EAChBC,iBAAkB73E,IAClB83E,kBAAkB,IAClBC,WAAW,IACX5/G,UAAW,KACXq3D,SAAU,KACVJ,QAAQ,GAEJ4oD,EAAe,CAAC,IAAK,KAC3B,IAAIC,EAAkB,EACtB,SAASC,EAAa/+B,GACpB,MAAMg/B,GAAWF,EAAkB,GAAK,EAClCt3J,EAAwC,MAAlCq3J,EAAaC,IAAsD,MAA1BD,EAAaG,GAGlE,OAFAH,EAAaC,GAAmB9+B,EAChC8+B,EAAkBE,EACXx3J,CACT,CACA,SAASy3J,IACP,MAAyC,MAAlCJ,EAAaC,IAAwE,MAA5CD,GAAcC,EAAkB,GAAK,EACvF,CACA,SAASI,IACPL,EAAa,GAAKA,EAAa,GAAK,IACpCC,EAAkB,CACpB,CACA,MAMMljK,EAAOc,KACPm/H,EAAOn/H,KAAKm/H,KACZsjC,EAAuB,GAC7B,IAAIzyE,EAAQ,KACZ,MAAM0yE,EAAoB,IAAI58E,EAAao6E,gBACrCyC,EAAmB,IAAI78E,EAAaq6E,iBACpCG,EAAe,IAAItT,EAAsBvnD,EAAQ05B,EAAMs8B,GAC7D,IAAImH,EACJ,SAASC,GAAe,MACtB9gI,EAAQ,EAAC,OACTE,EAAS,EAAC,UACVqgB,EAAYo/G,EAAgBE,cAAa,SACzCjoD,EAAW+nD,EAAgB/nD,WAE3BziG,EAAYwjD,MAAM94D,KAAK,CACrBooB,IAAK,IACLge,IAAK,MACLjG,QACAE,SACAqgB,YACAq3D,WACAJ,QAAQ,GAEZ,CACA,SAASupD,IACP,MAAMthG,EAAOohG,EAAUphG,KACjBuhG,EAAM,CAACH,EAAUj7E,SAAWi7E,EAAUv6E,WAAY,EAAG,EAAGu6E,EAAUj7E,SAAU,EAAGi7E,EAAUr6E,UAC/F,GAAI/mB,EAAKy1B,cAAgB2rE,EAAUj7E,UAAY,GAAKnmB,EAAKwhG,eAAgB,EAAI12G,EAAMvU,cAAc6qH,EAAU76E,WAAYz7B,EAAMvX,sBAAuB,CAClJ,MAAMkuH,EAAczhG,EAAKu5B,KAAK,GAAKv5B,EAAKu5B,KAAK,GACzCkoE,EAAc,IAChBF,EAAI,IAAME,EAAcL,EAAU76E,WAAW,GAEjD,CACA,OAAOz7B,EAAMv2C,KAAKusC,UAAUsgH,EAAUM,IAAK52G,EAAMv2C,KAAKusC,UAAUsgH,EAAU/6E,WAAYk7E,GACxF,CACA,SAASI,IACP,GAAIzB,EAAgBC,YAClB,OAAOD,EAET,MAAM,KACJlgG,EAAI,WACJ0hB,GACE0/E,EACCrB,EAAW3jG,IAAIslB,KAClBq+E,EAAW35I,IAAIs7D,GACfhsE,EAAY+jD,OAAOioB,GAAc,CAC/ByB,WAAYnjB,EAAK21B,aACjB6iB,OAAQx4C,EAAKw4C,OACbE,QAAS14C,EAAK04C,QACdjiB,SAAUz2B,EAAKy2B,WAGnBypE,EAAgB/nD,SAAWz2B,EAC3B,MAAMkgF,EAAM1B,EAAgBp/G,UAAYwgH,IACnCthG,EAAKy2B,UAKRypE,EAAgB3/H,MAAQ2/H,EAAgB7c,WAAaphI,KAAKktD,MAAMyyF,EAAI,GAAIA,EAAI,IAC5E1B,EAAgBz/H,OAASy/H,EAAgB9c,YAAc,EACvD8c,EAAgBzpE,UAAW,IAN3BypE,EAAgB3/H,MAAQ2/H,EAAgB7c,WAAa,EACrD6c,EAAgBz/H,OAASy/H,EAAgB9c,YAAcnhI,KAAKktD,MAAMyyF,EAAI,GAAIA,EAAI,IAC9E1B,EAAgBzpE,UAAW,GAM7B,MAAMorE,EAAa5/I,KAAKktD,MAAMiyF,EAAUU,eAAe,GAAIV,EAAUU,eAAe,IAC9EC,EAAY9/I,KAAKktD,MAAMiyF,EAAUM,IAAI,GAAIN,EAAUM,IAAI,IAC7DxB,EAAgBG,iBAAmB0B,EAAYF,EAC/C,MAAM,SACJ17E,GACEi7E,EAQJ,OAPAlB,EAAgBM,iBA3EY,KA2EOr6E,EACnC+5E,EAAgBQ,UA3ES,IA2EGv6E,EAC5B+5E,EAAgBO,kBA3EY,GA2EOt6E,EACnC+5E,EAAgBI,eA3Ee,KA2EEn6E,EACjC+5E,EAAgBK,eA3Ee,GA2EEp6E,EACjC+5E,EAAgBnoD,QAAS,EACzBmoD,EAAgBC,aAAc,EACvBD,CACT,CACA,SAAS8B,IACP,IAAK9B,EAAgBC,YACnB,OAEF,MAAM0B,EAAa5/I,KAAKktD,MAAMiyF,EAAUU,eAAe,GAAIV,EAAUU,eAAe,IAE9EhrD,EADY70F,KAAKktD,MAAMiyF,EAAUM,IAAI,GAAIN,EAAUM,IAAI,IAC7BG,EAC5B/qD,IAAgBopD,EAAgBG,mBAG/BH,EAAgBzpE,UAInBypE,EAAgB9c,aAAe8c,EAAgBz/H,OAASy/H,EAAgBG,iBACxEH,EAAgBz/H,OAAS,IAJzBy/H,EAAgB7c,YAAc6c,EAAgB3/H,MAAQ2/H,EAAgBG,iBACtEH,EAAgB3/H,MAAQ,GAK1B2/H,EAAgBG,iBAAmBvpD,EACrC,CAiBA,SAASk+B,EAAc78B,EAAUojD,GAC/B,OAAO79J,EAAK89J,SAASrjD,EAAUojD,EAAS/tB,GAAWnqI,MAAK,SAAUo4J,GAChE,OAAKA,EAAWz7F,KAAKy1B,YAGdgmE,EAAWC,cAAch+J,EAAM8vI,EAAWhhF,GAAMx7C,OAAM,WAAa,IAAG3N,MAAK,WAChF,OAAOo4J,CACT,IAJSA,CAKX,IAAGp4J,MAAK,SAAUo4J,GAChB2F,EAAU1/E,WAAa+5E,EAAW/5E,WAClC0/E,EAAUphG,KAAOy7F,EAAWz7F,KAC5BohG,EAAU76E,WAAak1E,EAAWz7F,KAAKumB,YAAcz7B,EAAMvX,oBAC7D,GACF,CACA,SAAS0uH,EAAqBrkK,EAAG4F,EAAG21F,GAClC,MAAMzjC,EAAQzzC,KAAKktD,MAAMgqB,EAAO,GAAIA,EAAO,IAC3C,MAAO,EAAEA,EAAO,GAAKv7F,EAAIu7F,EAAO,GAAK31F,GAAKkyD,GAAQyjC,EAAO,GAAKv7F,EAAIu7F,EAAO,GAAK31F,GAAKkyD,EACrF,CACA,SAASwsG,EAAwB5b,GAC/B,MAAMj1D,EAAmBiwE,IACzB,IAAI1jD,EAAOvsB,EAAiB,GACxBwsB,EAAOxsB,EAAiB,GAC5B,GAAI+vE,EAAUphG,MAAMy2B,UAClB,GAAImnB,EAAO5nD,EAAQ,IAAM4nD,EAAO5nD,EAAQ,IAAM6nD,EAAOyoC,EAAatwF,EAAQ,IAAM6nD,EAAO7nD,EAAQ,GAC7F,OAAO,OAEJ,GAAI4nD,EAAO0oC,EAAatwF,EAAQ,IAAM4nD,EAAO5nD,EAAQ,IAAM6nD,EAAO7nD,EAAQ,IAAM6nD,EAAO7nD,EAAQ,GACpG,OAAO,EAET,IAAKorG,EAAUphG,OAASkgG,EAAgBE,cACtC,OAAO,EAET,IAAI+B,EAAWjC,EAAgBE,cAAc,GACzCgC,EAAWlC,EAAgBE,cAAc,GAC7C,GAAI+B,IAAavkD,GAAQwkD,IAAavkD,EACpC,OAAO,EAET,IAAIvoD,GAAU,EAMd,OALI+7B,EAAiB,IAA8B,IAAxBA,EAAiB,IAAoC,IAAxBA,EAAiB,GACvE/7B,EAAS+7B,EAAiB,GAAK,EAAI,EAAI,IAC9BA,EAAiB,IAA8B,IAAxBA,EAAiB,IAAoC,IAAxBA,EAAiB,KAC9E/7B,EAAS+7B,EAAiB,GAAK,EAAI,GAAK,KAElC/7B,GACN,KAAK,EACH,MACF,KAAK,IACFsoD,EAAMC,GAAQ,CAACA,EAAMD,IACrBukD,EAAUC,GAAY,CAACA,EAAUD,GAClC,MACF,KAAK,KACFvkD,EAAMC,EAAMskD,EAAUC,GAAY,EAAExkD,GAAOC,GAAOskD,GAAWC,GAC9D,MACF,KAAK,KACFxkD,EAAMC,GAAQ,EAAEA,GAAOD,IACvBukD,EAAUC,GAAY,EAAEA,GAAWD,GACpC,MACF,SACGvkD,EAAMC,GAAQokD,EAAqBrkD,EAAMC,EAAMxsB,IAC/C8wE,EAAUC,GAAYH,EAAqBE,EAAUC,EAAUlC,EAAgBE,eAEpF,GAAIgB,EAAUphG,KAAKy2B,SAAU,CAC3B,MAAM4rE,GAAYD,EAAWvkD,GAAQqiD,EAAgBG,iBAC/CiC,EAAW1kD,EAAOukD,EAClBI,EAAkBtgJ,KAAK+jE,KAAKk6E,EAAgBz/H,QAClD,OAAI4hI,EAAWE,EAAkBrC,EAAgBO,iBAC3Cx+I,KAAKunC,IAAI84G,GAAY,GAAMpC,EAAgB3/H,OAC7CiiI,KACO,IAETxB,IACAyB,KACO,GAELxgJ,KAAKunC,IAAI84G,GAAYpC,EAAgB3/H,OACvCiiI,KACO,IAELH,GAAYE,EAAkBrC,EAAgBQ,WAChDM,IAEEqB,GAAYE,EAAkBrC,EAAgBM,iBAC5CO,KACFC,IACAyB,IACApB,EAAe,CACb5gI,OAAQxe,KAAKunC,IAAI64G,MAGnBnC,EAAgBz/H,QAAU4hI,EAElBK,EAAcL,EAAUnC,EAAgBE,cAAemC,KAC9B,IAA/BrC,EAAgB13I,IAAInkB,QACtB28J,IACAK,EAAe,CACb5gI,OAAQxe,KAAKunC,IAAI64G,MAGnBnC,EAAgBz/H,QAAU4hI,GAG1BpgJ,KAAKunC,IAAI84G,GAvNY,IAuNApC,EAAgB3/H,OACvCkiI,KAEK,EACT,CACA,MAAMH,GAAY1kD,EAAOukD,GAAYjC,EAAgBG,iBAC/CgC,EAAWxkD,EAAOukD,EAClBG,EAAkBtgJ,KAAK+jE,KAAKk6E,EAAgB3/H,OAClD,OAAI+hI,EAAWC,EAAkBrC,EAAgBO,iBAC3Cx+I,KAAKunC,IAAI64G,GAAY,GAAMnC,EAAgBz/H,QAC7C+hI,KACO,IAETxB,IACAyB,KACO,GAELxgJ,KAAKunC,IAAI64G,GAAYnC,EAAgBz/H,QACvC+hI,KACO,IAELF,GAAYC,EAAkBrC,EAAgBQ,WAChDM,IAEEsB,GAAYC,EAAkBrC,EAAgBM,iBAC5CO,KACFC,IACAyB,IACApB,EAAe,CACb9gI,MAAOte,KAAKunC,IAAI84G,MAGlBpC,EAAgB3/H,OAAS+hI,EAEjBI,EAAcJ,EAAUpC,EAAgBE,cAAemC,KAC9B,IAA/BrC,EAAgB13I,IAAInkB,QACtB28J,IACAK,EAAe,CACb9gI,MAAOte,KAAKunC,IAAI84G,MAGlBpC,EAAgB3/H,OAAS+hI,GAGzBrgJ,KAAKunC,IAAI64G,GAnQc,IAmQFnC,EAAgBz/H,QACvCgiI,KAEK,EACT,CACA,SAASE,GAAqB,MAC5B1rE,EAAK,aACL2rE,IAEA,MAAM5iG,EAAOohG,EAAUphG,KACvB,IAAKi3B,EAAO,CACV,MAAMtQ,EAAcy6E,EAAUz6E,YAAci8E,EAQ5C,YAPIj8E,IACG3mB,EAAKy2B,SAGR2qE,EAAUyB,oBAAoB,GAAIl8E,GAFlCy6E,EAAUyB,oBAAoBl8E,EAAcy6E,EAAUv6E,WAAY,IAMxE,CACA,MAAMyP,EAASt2B,EAAK0kF,cAAcztD,GAC5BvhC,EAAQ0rG,EAAU76E,WAAW,GAAK66E,EAAUj7E,SAClD,QAAS9+E,EAAI,EAAGovC,EAAK6/C,EAAOjyF,OAAQgD,EAAIovC,EAAIpvC,IAAK,CAC/C,MAAM6vF,EAAQZ,EAAOjvF,IACf,SACJuK,GACEslF,EACJ,GAAItlF,EAASkxJ,sBACX,SAEF,IAAIn8E,EAAcy6E,EAAUz6E,aAAet/E,EAAI,IAAMovC,EAAKmsH,EAAe,GACrEtc,EAAapvD,EAAM32D,MACnBy/B,EAAKy2B,WACP6vD,EAAapvD,EAAMQ,QAAUR,EAAMQ,QAAQ,IAAM4uD,GAEnD,IAAIyc,EAAYzc,EAAa5wF,EAC7B,GAAI9jD,EAASoxJ,aAAc,CACpBhjG,EAAKy2B,UAIR9P,IAAgBo8E,EAAY3B,EAAUx6E,YACtCw6E,EAAUyB,oBAAoB,GAAIl8E,KAJlCA,GAAeo8E,EAAY3B,EAAUx6E,YACrCw6E,EAAUyB,oBAAoBl8E,EAAcy6E,EAAUv6E,WAAY,IAKpEg6E,EAAa,KACb,QACF,CACA,IAAKjvJ,EAASqxJ,uBAAyBf,EAAwBa,GAAY,CACpE/iG,EAAKy2B,SAGR2qE,EAAUyB,oBAAoB,EAAGE,GAFjC3B,EAAUyB,oBAAoBE,EAAY3B,EAAUv6E,WAAY,GAIlE,QACF,CACA,MAAMq8E,EAAYvB,IACd/vJ,EAASqxJ,uBACXF,EAAY,GAET/iG,EAAKy2B,UAKR2qE,EAAUyB,oBAAoB,EAAGE,GACjCA,EAAY9gJ,KAAKunC,IAAIu5G,GACrBG,EAAUziI,QAAUsiI,IANpBA,GAAa3B,EAAUv6E,WACvBu6E,EAAUyB,oBAAoBE,EAAW,GACzCG,EAAU3iI,OAASwiI,GAMjBA,IACFG,EAAU9C,cAAgBkB,KAE5B,MAAM6B,EAAejsE,EAAMC,QACvB0pE,EAAasC,IACfD,EAAU16I,IAAIpoB,KAAK,KAErB8iK,EAAU16I,IAAIpoB,KAAK+iK,GACfx8E,IACG3mB,EAAKy2B,SAGR2qE,EAAUyB,oBAAoB,GAAIl8E,GAFlCy6E,EAAUyB,oBAAoBl8E,EAAcy6E,EAAUv6E,WAAY,GAKxE,CACF,CACA,SAAS27E,IACPxB,IACId,EAAgBC,aAClBD,EAAgBnoD,QAAS,EACzB0qD,KAEA/sJ,EAAYwjD,MAAM94D,KAAK,CACrBooB,IAAK,GACLge,IAAK,MACLjG,MAAO,EACPE,OAAQ,EACRqgB,UAAWwgH,IACXnpD,SAAUipD,EAAU1/E,WACpBq2B,QAAQ,GAGd,CACA,SAAS2qD,EAAcniI,EAAO0tC,EAAQs0F,GACpC,GAAIA,EAAkBrC,EAAgBI,gBAAkB//H,GAASA,GAASgiI,EAAkBrC,EAAgBK,eAK1G,OAJIL,EAAgBC,cAClBa,IACAd,EAAgB13I,IAAIpoB,KAAK,OAEpB,EAET,MAAM+3G,EAAW+nD,EAAgB/nD,SACjC,IAAI13E,EAAS,EAab,OAZIy/H,EAAgBzpE,WAClBh2D,EAASF,EACTA,EAAQ,GAEVkiI,IACAzB,IACAK,EAAe,CACb9gI,MAAOte,KAAKunC,IAAIjpB,GAChBE,OAAQxe,KAAKunC,IAAI/oB,GACjBqgB,UAAWmtB,GAAUqzF,IACrBnpD,cAEK,CACT,CACA,SAASsqD,IACFvC,EAAgBC,aAAgBD,EAAgB13I,MAGhD03I,EAAgBzpE,SAGnBypE,EAAgB9c,aAAe8c,EAAgBz/H,OAASy/H,EAAgBG,iBAFxEH,EAAgB7c,YAAc6c,EAAgB3/H,MAAQ2/H,EAAgBG,iBAIxE3qJ,EAAYwjD,MAAM94D,KAzSpB,SAA0B8iK,GACxB,IAAIztJ,EAAOytJ,EAAU16I,IAAIvd,KAAK,IACzB8tD,IACHtjD,GAAA,EAAWq1C,EAAMnU,kBAAkBlhC,IAErC,MAAM2tJ,GAAa,EAAIxqB,EAAMsF,MAAMzoI,GAAO,EAAGytJ,EAAUzsE,UACvD,MAAO,CACLjuE,IAAK46I,EAAW56I,IAChBge,IAAK48H,EAAW58H,IAChBjG,MAAOte,KAAKunC,IAAI05G,EAAU7f,YAC1B5iH,OAAQxe,KAAKunC,IAAI05G,EAAU9f,aAC3BtiG,UAAWoiH,EAAUpiH,UACrBq3D,SAAU+qD,EAAU/qD,SACpBJ,OAAQmrD,EAAUnrD,OAEtB,CA0RyBsrD,CAAiBnD,IACxCA,EAAgBC,aAAc,EAC9BD,EAAgB13I,IAAInkB,OAAS,EAC/B,CACA,SAASi/J,EAAa5lI,GAAQ,GAC5B,MAAMr5B,EAASqR,EAAYwjD,MAAM70D,OAClB,IAAXA,IAGAq5B,GAASr5B,EA37DW,KA87DxBq6D,EAAKI,QAAQppD,EAAarR,GAC1BqR,EAAYwjD,MAAQ,GACpBxjD,EAAY+jD,OAAS37D,OAAO4D,OAAO,OACrC,CACA,MAAMq9J,EAAkB,IAAI9H,EAC5B,OAAO,IAAIp0J,SAAQ,SAASq8J,EAAYt8J,EAASE,GAC/C,MAAMG,EAAO,SAAU4mD,GACrBy5G,GAAa,GACbzgK,QAAQw8B,IAAI,CAACwqB,EAAS6U,EAAK/2B,QAAQtkC,MAAK,WACtC,IACE67J,EAAYt8J,EAASE,EACvB,CAAE,MAAOm1C,GACPn1C,EAAOm1C,EACT,CACF,GAAGn1C,EACL,EACA0pD,EAAKsuE,sBACLikC,EAAgBp1I,QAChB,MAAM8hI,EAAY,CAAC,EACnB,IAAIrqI,EACF3X,EAAO,GACT,OAAS2X,EAAO29I,EAAgBjI,WAC9BrtJ,EAAKpF,OAAS,EACdonJ,EAAUhiJ,KAAOA,EACZq1J,EAAanlG,KAAK8xF,KAHiB,CAMxC,MAAM8X,EAAgBnC,EACtBA,EAAYnH,EAAah2I,MACzB,MAAMmP,EAAKq4H,EAAUr4H,GAErB,OADA3pB,EAAOgiJ,EAAUhiJ,KACJ,EAAL2pB,GACN,KAAK03B,EAAMjY,IAAI0P,QACb,IAAIihH,EAAc/5J,EAAK,GAAG9B,KACxB87J,EAAch6J,EAAK,GACrB,GAAI23J,EAAUphG,MAAQwjG,IAAgBpC,EAAUjpD,UAAYsrD,IAAgBrC,EAAUj7E,SACpF,MAMF,OAJAs8E,IACArB,EAAUjpD,SAAWqrD,EACrBpC,EAAUj7E,SAAWs9E,OACrBxgK,EAAK+xI,EAAcwuB,EAAa,OAElC,KAAK14G,EAAMjY,IAAI4P,YACb2+G,EAAUr6E,SAAWt9E,EAAK,GAC1B,MACF,KAAKqhD,EAAMjY,IAAIwP,UACb++G,EAAUv6E,WAAap9E,EAAK,GAAK,IACjC,MACF,KAAKqhD,EAAMjY,IAAIyP,WACb8+G,EAAU56E,QAAU/8E,EAAK,GACzB,MACF,KAAKqhD,EAAMjY,IAAI6P,SACb0+G,EAAUsC,wBAAwBj6J,EAAK,GAAIA,EAAK,IAChD23J,EAAU/6E,WAAa+6E,EAAUU,eAAer2J,QAChD,MACF,KAAKq/C,EAAMjY,IAAI8P,mBACby+G,EAAU56E,SAAW/8E,EAAK,GAC1B23J,EAAUsC,wBAAwBj6J,EAAK,GAAIA,EAAK,IAChD23J,EAAU/6E,WAAa+6E,EAAUU,eAAer2J,QAChD,MACF,KAAKq/C,EAAMjY,IAAIgQ,SACbu+G,EAAUuC,iBACV,MACF,KAAK74G,EAAMjY,IAAI+P,cACbw+G,EAAUx+G,cAAcn5C,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAC1E23J,EAAUwC,kBAAkBn6J,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAC9Eu4J,IACA,MACF,KAAKl3G,EAAMjY,IAAIsP,eACbi/G,EAAUz6E,YAAcl9E,EAAK,GAC7B,MACF,KAAKqhD,EAAMjY,IAAIuP,eACbg/G,EAAUx6E,YAAcn9E,EAAK,GAC7B,MACF,KAAKqhD,EAAMjY,IAAIoP,UACbm/G,EAAU/6E,WAAav7B,EAAM1X,gBAAgB3nC,QAC7C21J,EAAUU,eAAiBh3G,EAAM1X,gBAAgB3nC,QACjD,MACF,KAAKq/C,EAAMjY,IAAIkQ,eACb,IAAKk3G,EAAah2I,MAAM+7C,KAAM,CAC5BtiE,EAAKs+J,gBAAgB/B,EAAah2I,OAClC,QACF,CACA,MAAM4/I,GAAezC,EAAUphG,KAAKy2B,SAAW,GAAK,GAAK2qE,EAAUj7E,SAAW,IACxEzwD,EAAWjsB,EAAK,GACtB,QAASpC,EAAI,EAAGovC,EAAK/gB,EAASrxB,OAAQgD,EAAIovC,EAAIpvC,IAAK,CACjD,MAAMqK,EAAOgkB,EAASruB,GACtB,GAAoB,iBAATqK,EACTuvJ,EAAqB7gK,KAAKsR,QACrB,GAAoB,iBAATA,GAA8B,IAATA,EAAY,CACjD,MAAM8W,EAAMy4I,EAAqBh2J,KAAK,IACtCg2J,EAAqB58J,OAAS,EAC9Bs+J,EAAqB,CACnB1rE,MAAOzuE,EACPo6I,aAAclxJ,EAAOmyJ,GAEzB,CACF,CACA,GAAI5C,EAAqB58J,OAAS,EAAG,CACnC,MAAMmkB,EAAMy4I,EAAqBh2J,KAAK,IACtCg2J,EAAqB58J,OAAS,EAC9Bs+J,EAAqB,CACnB1rE,MAAOzuE,EACPo6I,aAAc,GAElB,CACA,MACF,KAAK93G,EAAMjY,IAAIiQ,SACb,IAAKm3G,EAAah2I,MAAM+7C,KAAM,CAC5BtiE,EAAKs+J,gBAAgB/B,EAAah2I,OAClC,QACF,CACA0+I,EAAqB,CACnB1rE,MAAOxtF,EAAK,GACZm5J,aAAc,IAEhB,MACF,KAAK93G,EAAMjY,IAAImQ,iBACb,IAAKi3G,EAAah2I,MAAM+7C,KAAM,CAC5BtiE,EAAKs+J,gBAAgB/B,EAAah2I,OAClC,QACF,CACAm9I,EAAUuC,iBACVhB,EAAqB,CACnB1rE,MAAOxtF,EAAK,GACZm5J,aAAc,IAEhB,MACF,KAAK93G,EAAMjY,IAAIoQ,2BACb,IAAKg3G,EAAah2I,MAAM+7C,KAAM,CAC5BtiE,EAAKs+J,gBAAgB/B,EAAah2I,OAClC,QACF,CACAm9I,EAAUx6E,YAAcn9E,EAAK,GAC7B23J,EAAUz6E,YAAcl9E,EAAK,GAC7B23J,EAAUuC,iBACVhB,EAAqB,CACnB1rE,MAAOxtF,EAAK,GACZm5J,aAAc,IAEhB,MACF,KAAK93G,EAAMjY,IAAIuR,aACbq+G,IACKj0E,IACHA,EAAQg/C,EAAUvuI,IAAI,YAAco7H,EAAY2E,KAAKmH,OAEvD,IAAIg5B,EAAc11J,EAAK,aAAc4wH,EAAYsK,KAC7Ch9H,EAAO8B,EAAK,GAAG9B,KACnB,GAAIw3J,GAAe+B,EAAkB/Q,UAAUxoJ,GAC7C,MA8EF,YA5EA1E,EAAK,IAAIJ,SAAQ,SAAUw8J,EAAgBC,GACzC,IAAKH,EACH,MAAM,IAAIr0G,EAAMzX,YAAY,wCAE9B,IAAIglH,EAAO7pE,EAAM+W,OAAO59F,GACxB,GAAI0wJ,aAAgBh+B,EAAY2C,IAAK,CACnC,GAAIkkC,EAAkBhR,SAASmI,GAE7B,YADAgH,IAIF,GADoB3hK,EAAKovI,iBAAiBh5E,QAAQukG,EAAM36J,EAAKg3D,WAG3D,YADA2qG,IAGFhH,EAAO16B,EAAK3nH,MAAMqiJ,EACpB,CACA,KAAMA,aAAgBr0B,EAAaM,YACjC,MAAM,IAAIx5E,EAAMzX,YAAY,8BAE9B,MAAM9nC,EAAO8sJ,EAAKl3B,KAAKliI,IAAI,WAC3B,KAAMsM,aAAgB8uH,EAAYsK,MAChC,MAAM,IAAI75E,EAAMzX,YAAY,sCAE9B,GAAkB,SAAd9nC,EAAK5D,KAGP,OAFAu5J,EAAkB53I,IAAI3hB,EAAM0wJ,EAAKl3B,KAAKxgE,OAAO,QAC7C0+F,IAGF,MAAMyE,EAAe7J,EAAah2I,MAAM1f,QAClCw/J,EAAmB,IAAIlF,EAAaiF,GACpC3qE,EAASk/D,EAAKl3B,KAAK8C,SAAS,UAC9B96H,MAAMC,QAAQ+vF,IAA6B,IAAlBA,EAAO90F,QAClC0/J,EAAiBjjH,UAAUq4C,GAE7BmqE,IACA,MAAMU,EAAc,CAClBC,gBAAgB,EAChB,OAAAnlG,CAAQ9Y,EAAOz6B,GACb/sB,KAAKylK,gBAAiB,EACtBvlG,EAAKI,QAAQ9Y,EAAOz6B,EACtB,EACA,eAAIw4E,GACF,OAAOrlC,EAAKqlC,WACd,EACA,SAAIp8D,GACF,OAAO+2B,EAAK/2B,KACd,GAEFjqC,EAAKy7D,eAAe,CAClB8qC,OAAQo0D,EACR7rG,OACAghF,UAAW6qB,EAAKl3B,KAAKliI,IAAI,cAAgBuuI,EACzCysB,aAAc8J,EACdjrG,uBACA4F,KAAMslG,EACNjE,aACA/pG,UACAgqG,oBACAjnG,yBACC11D,MAAK,WACD2gK,EAAYC,gBACf/C,EAAkB53I,IAAI3hB,EAAM0wJ,EAAKl3B,KAAKxgE,OAAO,GAE/C0+F,GACF,GAAGC,EACL,IAAGtuJ,OAAM,SAAUmI,GACjB,KAAIA,aAAkB2xC,EAAMvW,gBAA5B,CAGA,IAAI72C,EAAKif,QAAQ8wC,aAIjB,MAAMt0C,GAHJ,EAAI2xC,EAAMhhD,MAAM,uCAAuCqP,MAFzD,CAMF,KAEF,KAAK2xC,EAAMjY,IAAI8N,UAGb,GAFAw+G,EAAc11J,EAAK,aAAc4wH,EAAYsK,KAC7Ch9H,EAAO8B,EAAK,GAAG9B,KACXw3J,GAAegC,EAAiBhR,UAAUxoJ,GAC5C,MAkCF,YAhCA1E,EAAK,IAAIJ,SAAQ,SAAUg9J,EAAeC,GACxC,IAAKX,EACH,MAAM,IAAIr0G,EAAMzX,YAAY,uCAE9B,MAAMk3G,EAAY/c,EAAUvuI,IAAI,aAChC,KAAMsrJ,aAAqBlwB,EAAY2E,MACrC,MAAM,IAAIl0E,EAAMzX,YAAY,qCAE9B,MAAM4oH,EAAS1R,EAAUtrJ,IAAI0I,GAC7B,KAAMs0J,aAAkB5hC,EAAY2E,MAClC,MAAM,IAAIl0E,EAAMzX,YAAY,kCAE9B,MAAM6wH,EAAajI,EAAOh9J,IAAI,QAC9B,IAAKilK,EAGH,OAFA/C,EAAiB73I,IAAI3hB,EAAMs0J,EAAOt7F,OAAO,QACzCk/F,IAGF4C,IACArB,EAAUjpD,SAAW,KACrBipD,EAAUj7E,SAAW+9E,EAAW,GAChClvB,EAAc,KAAMkvB,EAAW,IAAI7gK,KAAKw8J,EAAeC,EACzD,IAAG9uJ,OAAM,SAAUmI,GACjB,KAAIA,aAAkB2xC,EAAMvW,gBAA5B,CAGA,IAAI72C,EAAKif,QAAQ8wC,aAIjB,MAAMt0C,GAHJ,EAAI2xC,EAAMhhD,MAAM,yCAAyCqP,MAF3D,CAMF,KAEF,KAAK2xC,EAAMjY,IAAI0R,mBACbk+G,IACI3pG,IACFknG,EAAkBpmJ,QAClBlE,EAAYwjD,MAAM94D,KAAK,CACrBmL,KAAM,qBACN8H,IAAK5J,EAAK,aAAc4wH,EAAYsK,KAAOl7H,EAAK,GAAG9B,KAAO,QAG9D,MACF,KAAKmjD,EAAMjY,IAAI2R,wBAEb,GADAi+G,IACI3pG,EAAsB,CACxBknG,EAAkBpmJ,QAClB,IAAIuqJ,EAAO,KACP16J,EAAK,aAAc4wH,EAAY2E,OACjCmlC,EAAO16J,EAAK,GAAGxK,IAAI,SAErByW,EAAYwjD,MAAM94D,KAAK,CACrBmL,KAAM,0BACN6I,GAAIkjC,OAAOC,UAAU4sH,GAAQ,GAAGzmK,EAAKwwI,UAAUZ,oBAAoB62B,IAAS,KAC5E9wJ,IAAK5J,EAAK,aAAc4wH,EAAYsK,KAAOl7H,EAAK,GAAG9B,KAAO,MAE9D,CACA,MACF,KAAKmjD,EAAMjY,IAAI4R,iBAEb,GADAg+G,IACI3pG,EAAsB,CACxB,GAAgC,IAA5BknG,EAAkBpmJ,MACpB,MAEFomJ,EAAkBpmJ,QAClBlE,EAAYwjD,MAAM94D,KAAK,CACrBmL,KAAM,oBAEV,CACA,MACF,KAAKu/C,EAAMjY,IAAIgO,SACT0iH,GAAkBA,EAAcvjG,OAASohG,EAAUphG,MAAQujG,EAAcp9E,WAAai7E,EAAUj7E,UAAYo9E,EAAcprD,WAAaipD,EAAUjpD,UACnJsqD,IAIN,GAAI/sJ,EAAYwjD,MAAM70D,QAAUq6D,EAAKqlC,YAAa,CAChD3iF,GAAO,EACP,KACF,CACF,CACIA,EACFne,EAAKwzJ,IAGPgM,IACAa,IACA1gK,IACF,IAAGoO,OAAMmI,IACP,KAAIA,aAAkB2xC,EAAMvW,gBAA5B,CAGA,GAAI/1C,KAAKme,QAAQ8wC,aAIf,OAHA,EAAI3C,EAAMhhD,MAAM,4CAA4C0iD,EAAK7kD,gBAAqBwR,OACtFspJ,SACAa,IAGF,MAAMnqJ,CAPN,CAOY,GAEhB,CACA,qBAAAirJ,CAAsBjjC,EAAMkjC,EAAUp/I,GACpC,MAAM04G,EAAOn/H,KAAKm/H,KAClB,IAAI2mC,EACJ,MAAMC,EAAmB/lK,KAAKgmK,cAAcv/I,EAAW0nI,WAAaxrB,EAAKliI,IAAI,cAAgBolK,EAASplK,IAAI,cAC1G,GAAIgmB,EAAWw/I,UAAW,CACxB,MAAMpX,EAAgBlsB,EAAKliI,IAAI,iBAC3BouJ,aAAyBhzB,EAAY2E,OACvC/5G,EAAWooI,cAAgB,CACzBqX,UAAU,EAAI55G,EAAMnT,mBAAmB01G,EAAcpuJ,IAAI,aACzD0lK,UAAU,EAAI75G,EAAMnT,mBAAmB01G,EAAcpuJ,IAAI,aACzD2lK,WAAYvX,EAAcpuJ,IAAI,gBAGlC,IACE,MAAM4lK,EAAc1jC,EAAKliI,IAAI,eACzB4lK,aAAuB7gC,EAAaM,aACtCggC,EAAgBO,EAAY99B,WAEhC,CAAE,MAAO9uF,GACP,IAAKz5C,KAAKme,QAAQ8wC,aAChB,MAAMxV,GAER,EAAI6S,EAAMhhD,MAAM,uDAAuDmuC,MACzE,CACF,CACA,MAAM6sH,EAAc,GACpB,IACIltH,EADAmtH,EAAmB,KAEvB,GAAI5jC,EAAK/kE,IAAI,YAAa,CAExB,GADAxkB,EAAWupF,EAAKliI,IAAI,YAChB24C,aAAoByiF,EAAY2E,MAGlC,GAFA+lC,EAAmBntH,EAAS34C,IAAI,gBAChC8lK,EAAmBA,aAA4B1qC,EAAYsK,KAAOogC,EAAiBp9J,KAAO,KACtFiwC,EAASwkB,IAAI,eAAgB,CAC/B,MAAM4oG,EAAeptH,EAAS34C,IAAI,eAClC,IAAI6I,EAAQ,EACZ,UAAWo7D,KAAS8hG,EAAc,CAChC,MAAM5hJ,EAAOu6G,EAAKwU,WAAWjvE,GAC7B,GAAoB,iBAAT9/C,EACTtb,EAAQsb,MACH,MAAIA,aAAgBi3G,EAAYsK,MAGrC,MAAM,IAAI75E,EAAMzX,YAAY,yCAAyCjwB,KAFrE0hJ,EAAYh9J,KAAWsb,EAAKzb,IAG9B,CACF,CACF,OACK,GAAIiwC,aAAoByiF,EAAYsK,KACzCogC,EAAmBntH,EAASjwC,SACvB,CACL,MAAMiR,EAAM,oCACZ,IAAKpa,KAAKme,QAAQ8wC,aAChB,MAAM,IAAI3C,EAAMzX,YAAYz6B,IAE9B,EAAIkyC,EAAMhhD,MAAM8O,EAClB,CACyB,qBAArBmsJ,GAAgE,sBAArBA,GAAiE,oBAArBA,IACzFA,EAAmB,KAEvB,CACA,MAAME,GAAmBhgJ,EAAWpkB,MAAQokB,EAAWigJ,eACrDC,GAAoB,EAAItP,EAAgBuP,mBAAmBngJ,EAAWtd,MAIxE,GAHIo9J,GAAoBE,GAAmBE,IACzCJ,EAAmB,MAEjBA,EACF9/I,EAAWogJ,iBAAkB,EAAIzP,EAAW0P,aAAaP,OACpD,CACL,MAAMQ,KAAoBtgJ,EAAWomF,MAAQ2qD,EAAawP,UAAUC,UAC9DC,KAAuBzgJ,EAAWomF,MAAQ2qD,EAAawP,UAAUG,aACvE/tH,EAAWg+G,EAAWgQ,iBACE,aAApB3gJ,EAAW1Z,MAAwBm6J,IACrC9tH,EAAWg+G,EAAWiQ,kBAEpBN,GAAkBJ,KACpBvtH,EAAWg+G,EAAWkQ,iBAClBb,IACE,UAAUl8J,KAAKkc,EAAWtd,MAC5BiwC,EAAWg+G,EAAWmQ,kBACb,YAAYh9J,KAAKkc,EAAWtd,MACrCiwC,EAAWg+G,EAAWoQ,qBACb,aAAaj9J,KAAKkc,EAAWtd,QACtCiwC,EAAWg+G,EAAWiQ,mBAI5B5gJ,EAAWogJ,gBAAkBztH,CAC/B,CAKA,OAJA3yB,EAAW6/I,YAAcA,EACzB7/I,EAAW8/I,iBAAmBA,EAC9B9/I,EAAWghJ,cAAgBlB,GAAoBD,EAAYzgK,OAAS,EACpE4gB,EAAWk8G,KAAOA,EACXojC,EAAiBlhK,MAAKmhK,IAC3Bv/I,EAAW0nI,UAAY6X,EAChBhmK,KAAK0nK,eAAejhJ,MAC1B5hB,MAAK8iK,IACNlhJ,EAAW0nI,UAAYwZ,EACnB7B,IACFr/I,EAAW4/I,YAAcrmK,KAAK4nK,gBAAgB9B,EAAe6B,IAExDlhJ,IAEX,CACA,oBAAAohJ,CAAqBphJ,EAAYqhJ,GAAc,IAC7C,EAAIx7G,EAAMtW,SAASvvB,EAAWw/I,UAAW,0BACzC,MAAM9X,EAAY,GACZ/0G,EAAW3yB,EAAWogJ,gBAAgB55J,QACtCs5J,EAAmB9/I,EAAW8/I,iBAC9BD,EAAc7/I,EAAW6/I,YAC/B,UAAWyB,KAAYzB,EAAa,CAClC,MAAM0B,EAAY1B,EAAYyB,GACZ,YAAdC,IAGJ5uH,EAAS2uH,GAAYC,EACvB,CACA,MAAMC,GAAmB,EAAIvQ,EAAWwQ,oBACxC,UAAWH,KAAY3uH,EAAU,CAC/B,IAAI4uH,EAAY5uH,EAAS2uH,GACzB,GAAkB,KAAdC,EACF,SAEF,IAAIrvE,EAAUsvE,EAAiBD,GAC/B,QAAgB,IAAZrvE,EAAuB,CACzBw1D,EAAU4Z,GAAYv8J,OAAOif,aAAakuE,GAC1C,QACF,CACA,IAAIh/C,EAAO,EACX,OAAQquH,EAAU,IAChB,IAAK,IACsB,IAArBA,EAAUniK,SACZ8zC,EAAOnwB,SAASw+I,EAAUz+I,UAAU,GAAI,KAE1C,MACF,IAAK,IACsB,IAArBy+I,EAAUniK,SACZ8zC,EAAOnwB,SAASw+I,EAAUz+I,UAAU,GAAI,KAE1C,MACF,IAAK,IACL,IAAK,IACH,GAAIy+I,EAAUniK,QAAU,GAAKmiK,EAAUniK,QAAU,EAAG,CAClD,MAAMsiK,EAAUH,EAAUz+I,UAAU,GACpC,GAAIu+I,EAAa,CACfnuH,EAAOnwB,SAAS2+I,EAAS,IACzB,KACF,CAEA,GADAxuH,GAAQwuH,EACJrvH,OAAOuZ,MAAM1Y,IAASb,OAAOC,UAAUvvB,SAAS2+I,EAAS,KAC3D,OAAOnoK,KAAK6nK,qBAAqBphJ,GAAY,EAEjD,CACA,MACF,IAAK,IACHkyE,GAAA,EAAci/D,EAASwQ,oBAAoBJ,EAAWC,IACrC,IAAbtvE,IACFh/C,EAAOg/C,GAET,MACF,QACE,OAAQqvE,GACN,IAAK,MACL,IAAK,MACL,IAAK,MACH7Z,EAAU4Z,GAAYC,EAAUzvH,WAAW,IAAK,IAChD,UAIR,GAAIoB,EAAO,GAAKA,GAAQ,SAAYb,OAAOC,UAAUY,GAAO,CAC1D,GAAI4sH,GAAoB5sH,KAAUouH,EAAU,CAC1C,MAAMM,GAAe,EAAIjR,EAAW0P,aAAaP,GACjD,GAAI8B,IAAiBL,EAAYK,EAAaN,IAAY,CACxD5Z,EAAU4Z,GAAYv8J,OAAOif,aAAaw9I,EAAiBD,IAC3D,QACF,CACF,CACA7Z,EAAU4Z,GAAYv8J,OAAO88J,cAAc3uH,EAC7C,CACF,CACA,OAAOw0G,CACT,CACA,oBAAMuZ,CAAejhJ,GAEnB,GADAA,EAAW8hJ,wBAA0B9hJ,EAAW0nI,WAAWtoJ,OAAS,EAChE4gB,EAAW8hJ,wBAIb,OAHK9hJ,EAAWw/I,WAAax/I,EAAWghJ,cACtChhJ,EAAW+hJ,kBAAoBxoK,KAAK6nK,qBAAqBphJ,IAEpDA,EAAW0nI,UAEpB,IAAK1nI,EAAWw/I,UACd,OAAO,IAAI1O,EAAgBkR,aAAazoK,KAAK6nK,qBAAqBphJ,IAEpE,GAAIA,EAAWw/I,YAAcx/I,EAAWiiJ,KAAKC,eAAiBliJ,EAAWiiJ,gBAAgBxR,EAAM0R,eAAuD,UAAtCniJ,EAAWooI,cAAcqX,WAA+D,QAAtCz/I,EAAWooI,cAAcsX,UAA4D,SAAtC1/I,EAAWooI,cAAcsX,UAA6D,WAAtC1/I,EAAWooI,cAAcsX,UAA+D,WAAtC1/I,EAAWooI,cAAcsX,WAAyB,CACnW,MAAM,SACJD,EAAQ,SACRC,GACE1/I,EAAWooI,cACTga,EAAehtC,EAAYsK,KAAK1lI,IAAI,GAAGylK,KAAYC,UACnD2C,QAAiB5R,EAAM6R,YAAY7lK,OAAO,CAC9Ck2C,SAAUyvH,EACV/P,iBAAkB94J,KAAK64J,uBACvBmQ,QAAS,OAEL7a,EAAY,GAChB32G,EAAM,GAcR,OAbA/wB,EAAWiiJ,KAAKroK,SAAQ,SAAU0nK,EAAUkB,GAC1C,GAAIA,EAAM,MACR,MAAM,IAAI38G,EAAMzX,YAAY,6BAE9B,MAAMq0H,EAAOJ,EAAShlC,OAAOmlC,GAC7B,GAAIC,EAAM,CACR1xH,EAAI3xC,OAAS,EACb,QAASgD,EAAI,EAAGovC,EAAKixH,EAAKrjK,OAAQgD,EAAIovC,EAAIpvC,GAAK,EAC7C2uC,EAAI51C,MAAMsnK,EAAKlgJ,WAAWngB,IAAM,GAAKqgK,EAAKlgJ,WAAWngB,EAAI,IAE3DslJ,EAAU4Z,GAAYv8J,OAAOif,gBAAgB+sB,EAC/C,CACF,IACO,IAAI+/G,EAAgBkR,aAAata,EAC1C,CACA,OAAO,IAAIoJ,EAAgB4R,qBAAqB1iJ,EAAWonI,UAAWpnI,EAAWqnI,SACnF,CACA,aAAAkY,CAAcoD,GACZ,OAAKA,EAGDA,aAAmBvtC,EAAYsK,KAC1B+wB,EAAM6R,YAAY7lK,OAAO,CAC9Bk2C,SAAUgwH,EACVtQ,iBAAkB94J,KAAK64J,uBACvBmQ,QAAS,OACRnkK,MAAK,SAAUwkK,GAChB,OAAIA,aAAgBnS,EAAM0R,aACjB,IAAIrR,EAAgB4R,qBAAqB,EAAG,OAE9C,IAAI5R,EAAgBkR,aAAaY,EAAKC,SAC/C,IACSF,aAAmB5jC,EAAaM,WAClCoxB,EAAM6R,YAAY7lK,OAAO,CAC9Bk2C,SAAUgwH,EACVtQ,iBAAkB94J,KAAK64J,uBACvBmQ,QAAS,OACRnkK,MAAK,SAAUwkK,GAChB,GAAIA,aAAgBnS,EAAM0R,aACxB,OAAO,IAAIrR,EAAgB4R,qBAAqB,EAAG,OAErD,MAAMlhK,EAAM,IAAI0C,MAAM0+J,EAAKxjK,QAmB3B,OAlBAwjK,EAAKhpK,SAAQ,SAAUkpK,EAAUC,GAC/B,GAAqB,iBAAVA,EAET,YADAvhK,EAAIshK,GAAY/9J,OAAO88J,cAAckB,IAGvC,MAAMx/I,EAAM,GACZ,QAAS1pB,EAAI,EAAGA,EAAIkpK,EAAM3jK,OAAQvF,GAAK,EAAG,CACxC,MAAMqwJ,EAAK6Y,EAAMxgJ,WAAW1oB,IAAM,EAAIkpK,EAAMxgJ,WAAW1oB,EAAI,GAC3D,GAAsB,QAAZ,MAALqwJ,GAAyB,CAC5B3mI,EAAIpoB,KAAK+uJ,GACT,QACF,CACArwJ,GAAK,EACL,MAAMswJ,EAAK4Y,EAAMxgJ,WAAW1oB,IAAM,EAAIkpK,EAAMxgJ,WAAW1oB,EAAI,GAC3D0pB,EAAIpoB,OAAY,KAAL+uJ,IAAe,KAAY,KAALC,GAAc,MACjD,CACA3oJ,EAAIshK,GAAY/9J,OAAO88J,iBAAiBt+I,EAC1C,IACO,IAAIutI,EAAgBkR,aAAaxgK,EAC1C,IAAG0S,IACD,GAAIA,aAAkB2xC,EAAMvW,eAC1B,OAAO,KAET,GAAI/1C,KAAKme,QAAQ8wC,aAEf,OADA,EAAI3C,EAAMhhD,MAAM,6CAA6CqP,OACtD,KAET,MAAMA,CAAM,IAGTtW,QAAQD,QAAQ,MArDdC,QAAQD,QAAQ,KAsD3B,CACA,eAAAwjK,CAAgB6B,EAAYtb,GAC1B,MAAMtqJ,EAAS,GACf,QAASgmB,EAAI,EAAGu6E,EAAKqlE,EAAW5jK,OAAQgkB,EAAIu6E,EAAIv6E,IAAK,CACnD,MAAM6/I,EAAUD,EAAW5/I,MAAQ,EAAI4/I,EAAW5/I,GAC5C8vB,EAAO9vB,GAAK,GACF,IAAZ6/I,GAAkBvb,EAAUvwF,IAAIjkB,MAGpC91C,EAAO81C,GAAQ+vH,EACjB,CACA,OAAO7lK,CACT,CACA,aAAA8lK,CAAchnC,EAAM4T,EAAY9vH,GAC9B,MAAM04G,EAAOn/H,KAAKm/H,KAClB,IAAIyqC,EAAe,GACfC,EAAe,EACnB,MAAMC,EAAiB,GACvB,IAAI3xE,EACAtvF,EAAGovC,EAAIpuB,EAAGu6E,EAAI9hF,EAAOq3B,EAAMi0G,EAC/B,GAAInnI,EAAWw/I,UAAW,CAGxB,GAFA4D,EAAelnC,EAAK/kE,IAAI,MAAQ+kE,EAAKliI,IAAI,MAAQ,IACjDmtJ,EAASjrB,EAAKliI,IAAI,KACdmtJ,EACF,IAAK/kJ,EAAI,EAAGovC,EAAK21G,EAAO/nJ,OAAQgD,EAAIovC,EAAIpvC,IAGtC,GAFAyZ,EAAQ68G,EAAKwU,WAAWia,EAAO/kJ,MAC/B8wC,EAAOwlF,EAAKwU,WAAWia,EAAO/kJ,IAC1B8B,MAAMC,QAAQ+uC,GAChB,IAAK9vB,EAAI,EAAGu6E,EAAKzqD,EAAK9zC,OAAQgkB,EAAIu6E,EAAIv6E,IACpC+/I,EAAatnJ,KAAW68G,EAAKwU,WAAWh6F,EAAK9vB,QAE1C,CACL,MAAMkY,EAAQo9F,EAAKwU,WAAWia,IAAS/kJ,IACvC,IAAKghB,EAAIvH,EAAOuH,GAAK8vB,EAAM9vB,IACzB+/I,EAAa//I,GAAKkY,CAEtB,CAGJ,GAAItb,EAAWwxE,SAAU,CACvB,IAAI8xE,EAAWpnC,EAAK8C,SAAS,QAAU,CAAC,KAAM,KAG9C,GAFAttC,EAAkB,CAAC4xE,EAAS,GAAmB,GAAfF,EAAoBE,EAAS,IAC7DA,EAAWpnC,EAAKliI,IAAI,MAChBspK,EACF,IAAKlhK,EAAI,EAAGovC,EAAK8xH,EAASlkK,OAAQgD,EAAIovC,EAAIpvC,IAGxC,GAFAyZ,EAAQ68G,EAAKwU,WAAWo2B,EAASlhK,MACjC8wC,EAAOwlF,EAAKwU,WAAWo2B,EAASlhK,IAC5B8B,MAAMC,QAAQ+uC,GAChB,IAAK9vB,EAAI,EAAGu6E,EAAKzqD,EAAK9zC,OAAQgkB,EAAIu6E,EAAIv6E,IACpCigJ,EAAexnJ,KAAW,CAAC68G,EAAKwU,WAAWh6F,EAAK9vB,MAAOs1G,EAAKwU,WAAWh6F,EAAK9vB,MAAOs1G,EAAKwU,WAAWh6F,EAAK9vB,SAErG,CACL,MAAMqvE,EAAU,CAACimC,EAAKwU,WAAWo2B,IAAWlhK,IAAKs2H,EAAKwU,WAAWo2B,IAAWlhK,IAAKs2H,EAAKwU,WAAWo2B,IAAWlhK,KAC5G,IAAKghB,EAAIvH,EAAOuH,GAAK8vB,EAAM9vB,IACzBigJ,EAAejgJ,GAAKqvE,CAExB,CAGN,CACF,KAAO,CACL,MAAM20D,EAAYpnI,EAAWonI,UAE7B,GADAD,EAASjrB,EAAKliI,IAAI,UACdmtJ,EAAQ,CAEV,IADA/jI,EAAIgkI,EACChlJ,EAAI,EAAGovC,EAAK21G,EAAO/nJ,OAAQgD,EAAIovC,EAAIpvC,IACtC+gK,EAAa//I,KAAOs1G,EAAKwU,WAAWia,EAAO/kJ,IAE7CghK,EAAejiG,WAAW2uE,EAAW91I,IAAI,kBAAoB,CAC/D,KAAO,CACL,MAAM6iF,EAAeq/C,EAAKliI,IAAI,YAC9B,GAAI6iF,aAAwBu4C,EAAYsK,KAAM,CAC5C,MAAMpsB,EAAU/5G,KAAKgqK,mBAAmB1mF,EAAan6E,MACrDygK,EAAe5pK,KAAKiqK,qBAAqBlwD,EAAQ6zC,OAAQnnI,GACzDojJ,EAAe9vD,EAAQ8vD,YACzB,CACF,CACF,CACA,IAAIK,GAAc,EACdC,EAAaN,EACjB,UAAWnxE,KAASkxE,EAAc,CAChC,MAAM9hB,EAAa8hB,EAAalxE,GAChC,GAAKovD,EAGL,GAAKqiB,GAIL,GAAIA,IAAeriB,EAAY,CAC7BoiB,GAAc,EACd,KACF,OANEC,EAAariB,CAOjB,CACIoiB,EACFzjJ,EAAWomF,OAAS2qD,EAAawP,UAAUoD,WAE3C3jJ,EAAWomF,QAAU2qD,EAAawP,UAAUoD,WAE9C3jJ,EAAWojJ,aAAeA,EAC1BpjJ,EAAWmnI,OAASgc,EACpBnjJ,EAAW0xE,gBAAkBA,EAC7B1xE,EAAWsjJ,SAAWD,CACxB,CACA,WAAAO,CAAY/mF,GACV,MAAMgnF,EAAkBhnF,EAAapiF,MAAM,KAAK,GAChD,OAAOopK,KAAmB,EAAIjT,EAAgBkT,kBAAoB,UAAUhgK,KAAK+/J,EACnF,CACA,kBAAAN,CAAmB7gK,GACjB,IAAI0gK,EAAe,EACfjc,EAAStuJ,OAAO4D,OAAO,MACvBsnK,GAAY,EAEZC,GADe,EAAIpT,EAAgBqT,iBACXvhK,IAASA,EACrC,MAAMwhK,GAAU,EAAIhT,EAASiT,cACvBH,KAAcE,IAClBF,EAAazqK,KAAKqqK,YAAYlhK,GAAQ,cAAgB,aAExD,MAAM0hK,EAAcF,EAAQF,GAO5B,MAN2B,iBAAhBI,GACThB,EAAegB,EACfL,GAAY,GAEZ5c,EAASid,IAEJ,CACLhB,eACAW,YACA5c,SAEJ,CACA,oBAAAqc,CAAqBa,EAAmBrkJ,GACtC,MAAMmnI,EAAStuJ,OAAO4D,OAAO,MACvBojK,EAAc7/I,EAAW6/I,YACzBltH,EAAW3yB,EAAWogJ,gBAC5B,QAAS0C,EAAW,EAAGA,EAAW,IAAKA,IACjCA,KAAYjD,GAAewE,EAAkBxE,EAAYiD,IAC3D3b,EAAO2b,GAAYuB,EAAkBxE,EAAYiD,IAG/CA,KAAYnwH,GAAY0xH,EAAkB1xH,EAASmwH,MACrD3b,EAAO2b,GAAYuB,EAAkB1xH,EAASmwH,KAIlD,OAAO3b,CACT,CACA,eAAAsQ,CAAgBv7B,GACd,MAAMkjC,EAAWljC,EACjB,IAAI51H,EAAO41H,EAAKliI,IAAI,WACpB,KAAMsM,aAAgB8uH,EAAYsK,MAChC,MAAM,IAAI75E,EAAMzX,YAAY,wBAE9B,IACI3oB,EAAMiiI,EADN8X,GAAY,EAEhB,GAAkB,UAAdl5J,EAAK5D,KAAkB,CACzB,MAAM4hK,EAAKpoC,EAAKliI,IAAI,mBACpB,IAAKsqK,EACH,MAAM,IAAIz+G,EAAMzX,YAAY,sCAG9B,MADA8tF,EAAOh4H,MAAMC,QAAQmgK,GAAM/qK,KAAKm/H,KAAKwU,WAAWo3B,EAAG,IAAMA,aACnClvC,EAAY2E,MAChC,MAAM,IAAIl0E,EAAMzX,YAAY,wCAG9B,GADA9nC,EAAO41H,EAAKliI,IAAI,aACVsM,aAAgB8uH,EAAYsK,MAChC,MAAM,IAAI75E,EAAMzX,YAAY,wBAE9BoxH,GAAY,CACd,CACA,MAAMpY,EAAYlrB,EAAKliI,IAAI,cAAgB,EACzCqtJ,EAAWnrB,EAAKliI,IAAI,cAAgBwlK,EAAY,MAAS,KACrD1vB,EAAa5T,EAAKliI,IAAI,kBAC5B,GAAI81I,EAAY,CACdrqH,EAAO,IAAI+3C,EAAYc,eACvB,MAAM3rB,EAAWysH,EAAS9+D,OAAO,YACjC,GAAI3tD,aAAoByiF,EAAYsK,KAClCj6G,EAAKsO,OAAO4e,EAASjwC,WAChB,GAAIiwC,aAAoByiF,EAAY2C,IACzCtyG,EAAKsO,OAAO4e,EAAS1uC,iBAChB,GAAI0uC,aAAoByiF,EAAY2E,KACzC,UAAW97D,KAAStrB,EAASsuF,eAC3B,GAAIhjE,aAAiBm3D,EAAYsK,KAC/Bj6G,EAAKsO,OAAOkqC,EAAMv7D,WACb,GAAIu7D,aAAiBm3D,EAAY2C,IACtCtyG,EAAKsO,OAAOkqC,EAAMh6D,iBACb,GAAIC,MAAMC,QAAQ85D,GAAQ,CAC/B,MAAMsmG,EAAatmG,EAAM7+D,OACvBolK,EAAU,IAAItgK,MAAMqgK,GACtB,QAASnhJ,EAAI,EAAGA,EAAImhJ,EAAYnhJ,IAAK,CACnC,MAAMqhJ,EAAYxmG,EAAM76C,GACpBqhJ,aAAqBrvC,EAAYsK,KACnC8kC,EAAQphJ,GAAKqhJ,EAAU/hK,MACO,iBAAd+hK,GAA0BA,aAAqBrvC,EAAY2C,OAC3EysC,EAAQphJ,GAAKqhJ,EAAUxgK,WAE3B,CACAwhB,EAAKsO,OAAOywI,EAAQx+J,OACtB,CAKJ,GAFAyf,EAAKsO,OAAO,GAAGqzH,KAAaC,KAC5BK,EAAYxrB,EAAKliI,IAAI,cAAgBolK,EAASplK,IAAI,aAC9C0tJ,aAAqB3oB,EAAaM,WAAY,CAChD,MAAMrgC,EAAS0oD,EAAUnkI,KAAOmkI,EAC1Bgd,EAAa1lE,EAAO16E,OAAS,IAAIpB,WAAW87E,EAAO16E,OAAOA,OAAQ,EAAG06E,EAAO2lE,cAAgB,IAAIzhJ,WAAW87E,EAAOx6E,MAAMF,OAAQ06E,EAAOnjF,MAAOmjF,EAAO13F,IAAM03F,EAAOnjF,OACxK4J,EAAKsO,OAAO2wI,EACd,MAAWhd,aAAqBtyB,EAAYsK,MAC1Cj6G,EAAKsO,OAAO2zH,EAAUhlJ,MAExB,MAAMykJ,EAASjrB,EAAKliI,IAAI,WAAaolK,EAASplK,IAAI,UAClD,GAAIkK,MAAMC,QAAQgjJ,GAAS,CACzB,MAAMyd,EAAY,GAClB,UAAW3mG,KAASkpF,GACG,iBAAVlpF,GAAsBA,aAAiBm3D,EAAY2C,MAC5D6sC,EAAUzpK,KAAK8iE,EAAMh6D,YAGzBwhB,EAAKsO,OAAO6wI,EAAU5+J,OACxB,CACA,GAAIw5J,EAAW,CACb/5I,EAAKsO,OAAO,iBACZ,MAAM8wI,EAAkB3oC,EAAKliI,IAAI,MAAQolK,EAASplK,IAAI,KACtD,GAAIkK,MAAMC,QAAQ0gK,GAAkB,CAClC,MAAMD,EAAY,GAClB,UAAW3mG,KAAS4mG,EAClB,GAAqB,iBAAV5mG,GAAsBA,aAAiBm3D,EAAY2C,IAC5D6sC,EAAUzpK,KAAK8iE,EAAMh6D,iBAChB,GAAIC,MAAMC,QAAQ85D,GAAQ,CAC/B,MAAM6mG,EAAe,GACrB,UAAWn1J,KAAWsuD,GACG,iBAAZtuD,GAAwBA,aAAmBylH,EAAY2C,MAChE+sC,EAAa3pK,KAAKwU,EAAQ1L,YAG9B2gK,EAAUzpK,KAAK,IAAI2pK,EAAa9+J,UAClC,CAEFyf,EAAKsO,OAAO6wI,EAAU5+J,OACxB,CACA,MAAM45J,EAAc1jC,EAAK57B,OAAO,gBAAkB8+D,EAAS9+D,OAAO,eAC9Ds/D,aAAuBxqC,EAAYsK,KACrCj6G,EAAKsO,OAAO6rI,EAAYl9J,MACfk9J,aAAuBxqC,EAAY2C,IAC5CtyG,EAAKsO,OAAO6rI,EAAY37J,YACf27J,aAAuB7gC,EAAaM,YAC7C55G,EAAKsO,OAAO6rI,EAAY39B,YAE5B,CACF,CACA,MAAO,CACL6N,aACA5T,OACAkjC,WACAI,YACAl5J,KAAMA,EAAK5D,KACX0kJ,YACAC,WACAK,YACAjiI,KAAMA,EAAOA,EAAKg5C,YAAc,GAEpC,CACA,mBAAMq5F,EAAc,WAClBhoB,EAAU,KACV5T,EAAI,SACJkjC,EAAQ,UACRI,EAAS,KACTl5J,EAAI,UACJ8gJ,EAAS,SACTC,EAAQ,UACRK,EAAS,YACTlpE,IAEA,MAAMgS,EAAuB,UAATlqF,EACpB,IAAI0Z,EACJ,IAAK8vH,EAAY,CACf,IAAIt/C,EAIG,CACL,IAAI3T,EAAeq/C,EAAKliI,IAAI,YAC5B,KAAM6iF,aAAwBu4C,EAAYsK,MACxC,MAAM,IAAI75E,EAAMzX,YAAY,8BAE9ByuC,EAAeA,EAAan6E,KAAKovC,WAAW,QAAS,KACrD,MAAMwhE,EAAU/5G,KAAKgqK,mBAAmB1mF,GAClCgnF,EAAkBhnF,EAAapiF,MAAM,KAAK,GAC1C2rG,GAAS7sG,KAAKqqK,YAAYC,GAAmB9S,EAAawP,UAAUwE,MAAQ,IAAMzxD,EAAQywD,UAAYhT,EAAawP,UAAUoD,WAAa,KAAM,EAAI/S,EAAgBuP,mBAAmB0D,GAAmB9S,EAAawP,UAAUC,SAAWzP,EAAawP,UAAUG,aACzQ1gJ,EAAa,CACX1Z,OACA5D,KAAMm6E,EACNJ,WAAY2iF,EAAS3iF,WACrBO,eAAgB,KAChBmqE,OAAQ7zC,EAAQ6zC,OAChBic,aAAc9vD,EAAQ8vD,aACtB4B,kBAAkB,EAClB5+D,QACAghD,YACAC,WACAK,YACAud,QAAS,EACTC,UAAW,EACXtmF,YAAa,EACb4R,eAEF,MAAM22D,EAASjrB,EAAKliI,IAAI,UAClBmrK,GAAmB,EAAIvU,EAAgBwU,qBAAqBvoF,GAClE,IAAIjhF,EAAO,KAQX,OAPIupK,IACFvpK,QAAarC,KAAK05J,sBAAsBkS,GACxCnlJ,EAAWigJ,iBAAmBrkK,IAE3BokB,EAAWigJ,gBAAkB1mK,KAAKme,QAAQ0xC,iBAC7CppC,EAAWg9D,gBAAiB,EAAIg0E,EAAoBqU,qBAAqB9rK,KAAKuuI,gBAAiBvuI,KAAK0vI,UAAW1vI,KAAKme,QAAQ4wC,oBAAqBu0B,EAAcsoF,IAE1J5rK,KAAK4lK,sBAAsBjjC,EAAMA,EAAMl8G,GAAY5hB,MAAKknK,IAC7D,GAAIne,EAAQ,CACV,MAAMid,EAAc,GACpB,IAAIhhJ,EAAIgkI,EACR,UAAW9rH,KAAS6rH,EAClBid,EAAYhhJ,KAAO7pB,KAAKm/H,KAAKwU,WAAW5xG,GAE1CgqI,EAAcne,OAASid,CACzB,MACEkB,EAAcne,OAAS5tJ,KAAKiqK,qBAAqBlwD,EAAQ6zC,OAAQme,GAEnE,OAAO,IAAI5U,EAAO6U,KAAK1oF,EAAcjhF,EAAM0pK,EAAc,GAE7D,EApDEx1B,EAAa,IAAI1a,EAAY2E,KAAK,OACvB11G,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAIsM,IAChDwpI,EAAWzrH,IAAI,WAAY63G,EAAK8C,SAAS,aAAe,CAAC,EAAG,EAAG,EAAG,GAmDtE,CACA,IAAI9rB,EAAW48B,EAAW91I,IAAI,YAC1B48I,EAAW1a,EAAKliI,IAAI,YACA,iBAAbk5G,IACTA,EAAWkiB,EAAYsK,KAAK1lI,IAAIk5G,IAEV,iBAAb0jC,IACTA,EAAWxhB,EAAYsK,KAAK1lI,IAAI48I,IAElC,MAAM4uB,EAActyD,GAAUxwG,KACxB+iK,EAAc7uB,GAAUl0I,KAQ9B,GAPK8tF,GAAeg1E,IAAgBC,KAClC,EAAI5/G,EAAMjhD,MAAM,qCAAqC4gK,qDAAoEC,OACrHD,GAAeC,IAAgBA,EAAY31H,WAAW01H,MAAiB,EAAI5U,EAAgB8U,iBAAiBF,KAAgB,EAAI5U,EAAgB8U,iBAAiBD,MACnKvyD,EAAW,OAGfA,IAAa0jC,IACP1jC,aAAoBkiB,EAAYsK,MACpC,MAAM,IAAI75E,EAAMzX,YAAY,qBAE9B,IAAIu3H,EAAUr7F,EAASs7F,EAASC,EAASC,EACzC,IACEH,EAAW71B,EAAW91I,IAAI,WAAY,YAAa,YACrD,CAAE,MAAOg5C,GACP,IAAKz5C,KAAKme,QAAQ8wC,aAChB,MAAMxV,GAER,EAAI6S,EAAMhhD,MAAM,6BAA6BquG,EAASxwG,qBAAqBswC,OAC3E2yH,EAAW,IAAI5iE,EAAQ2jC,UACzB,CACA,IAAIu5B,GAAiB,EACjB8F,EAAoB,KACpB/oF,EAAiB,KACrB,GAAI2oF,GACF,GAAIA,EAASzpC,KAAM,CACjB,MAAM8pC,EAAeL,EAASzpC,KAAKliI,IAAI,WACnCgsK,aAAwB5wC,EAAYsK,OACtCp1D,EAAU07F,EAAatjK,MAEzBkjK,EAAUD,EAASzpC,KAAKliI,IAAI,WAC5B6rK,EAAUF,EAASzpC,KAAKliI,IAAI,WAC5B8rK,EAAUH,EAASzpC,KAAKliI,IAAI,UAC9B,OACK,GAAIwkF,EAAa,CACtB,MAAM2mF,GAAmB,EAAIv+B,EAAWwJ,gBAAgBl9B,EAASxwG,MAC7DyiK,IACF3mF,EAAYN,WAAa,GAAGM,EAAYN,uBACxCM,EAAY80B,QAAU6xD,EAAiB7xD,SAAW,KAClDyyD,EAAoBZ,EAAiBc,SAAW,KAChDN,QAAiBpsK,KAAK05J,sBAAsBkS,EAAiBziK,MAC7Du9J,IAAmB0F,EACnBvG,EAAWljC,GAAO,EAAI0K,EAAW0J,gBAAgBp9B,EAASxwG,MAC1D88J,GAAY,EAEhB,MAAO,IAAKhvE,EAAa,CACvB,MAAM20E,GAAmB,EAAIvU,EAAgBwU,qBAAqBlyD,EAASxwG,MACvEyiK,IACFQ,QAAiBpsK,KAAK05J,sBAAsBkS,GAC5ClF,IAAmB0F,IAEhB1F,GAAkB1mK,KAAKme,QAAQ0xC,iBAClC4zB,GAAA,EAAqBg0E,EAAoBqU,qBAAqB9rK,KAAKuuI,gBAAiBvuI,KAAK0vI,UAAW1vI,KAAKme,QAAQ4wC,oBAAqB4qD,EAASxwG,KAAMyiK,GAEzJ,CA6BA,GA5BAnlJ,EAAa,CACX1Z,OACA5D,KAAMwwG,EAASxwG,KACf4nE,UACA1uE,KAAM+pK,EACNC,UACAC,UACAC,UACA7F,iBACAxjF,WAAY2iF,EAAS3iF,WACrB+iF,YACA0G,YAAY,EACZ5kF,WAAY46C,EAAK8C,SAAS,eAAiBn5E,EAAMvX,qBACjD84G,YACAC,WACAK,YACApzD,KAAMw7C,EAAW9Q,SAAS,aAAe9C,EAAK8C,SAAS,YACvDzrB,OAAQu8B,EAAW91I,IAAI,UACvBy5G,QAASq8B,EAAW91I,IAAI,WACxBirK,QAASn1B,EAAW91I,IAAI,YAAc,EACtCkrK,UAAWp1B,EAAW91I,IAAI,cAAgB,EAC1CosG,MAAO0pC,EAAW91I,IAAI,SACtB4kF,YAAakxD,EAAW91I,IAAI,gBAAkB,EAC9Cw2F,cACAhS,cACA2nF,aAAcJ,EACd/oF,kBAEEwiF,EAAW,CACb,MAAM4G,EAAchH,EAASplK,IAAI,YAC7BosK,aAAuBhxC,EAAYsK,OACrC1/G,EAAWomJ,YAAcA,EAAY1jK,MAEvC,MAAMu/J,QAAaxR,EAAM6R,YAAY7lK,OAAO,CAC1Ck2C,SAAUyzH,EACV/T,iBAAkB94J,KAAK64J,uBACvBmQ,QAAS,OAEXviJ,EAAWiiJ,KAAOA,EAClBjiJ,EAAWwxE,SAAWxxE,EAAWiiJ,KAAKzwE,QACxC,CACA,OAAOj4F,KAAK4lK,sBAAsBjjC,EAAMkjC,EAAUp/I,GAAY5hB,MAAKknK,IACjE/rK,KAAK2pK,cAAchnC,EAAM4T,EAAYw1B,GAC9B,IAAI5U,EAAO6U,KAAKryD,EAASxwG,KAAMijK,EAAUL,KAEpD,CACA,qBAAOxO,CAAe/7F,EAAMs2B,EAAQ/tF,EAASgnD,GAC3C,SAAS0tG,EAAU3lE,GACjB,MAAMkvE,EAAY,GAAGxmG,EAAK0hB,mBAAmB4V,IAC7C,IACE,GAAIt3B,EAAKsrG,SAASC,aAAaj0E,GAC7B,OAEF/uF,EAAQyL,KAAK,YAAa,CAACwyJ,EAAW,WAAYxmG,EAAKsrG,SAASE,UAAUl0E,IAC5E,CAAE,MAAOn+E,GACP,GAAIo2C,EAAiB9B,aAEnB,YADA,EAAI3C,EAAMhhD,MAAM,6BAA6B08J,aAAqBrtJ,OAGpE,MAAMA,CACR,CACF,CACA,UAAW+9E,KAASZ,EAAQ,CAC1B2mE,EAAU/lE,EAAMI,UAChB,MAAMC,EAASL,EAAMK,OACjBA,GAAQD,UACV2lE,EAAU1lE,EAAOD,SAErB,CACF,CACA,2BAAWqoD,GACT,MAAMxe,EAAO,IAAI9G,EAAY2E,KAK7B,OAJAmC,EAAK73G,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAI,cAC1CkiI,EAAK73G,IAAI,OAAQ+wG,EAAYsK,KAAK1lI,IAAI,iBACtCkiI,EAAK73G,IAAI,UAAW+wG,EAAYsK,KAAK1lI,IAAI,iBACzCkiI,EAAK73G,IAAI,WAAY+wG,EAAYsK,KAAK1lI,IAAI,qBAC1C,EAAW6rD,EAAMtT,QAAQh5C,KAAM,mBAAoB2iI,EACrD,EAEF9jI,EAAQ4wI,iBAAmBA,EAC3B,MAAM2tB,EACJ,WAAAz+I,EAAY,WACVukE,EAAU,KACV1hB,EAAI,KACJmhE,EAAI,iBACJ5xE,IAEA/wD,KAAKkjF,WAAaA,EAClBljF,KAAKwhE,KAAOA,EACZxhE,KAAK2iI,KAAOA,EACZ3iI,KAAKitK,kBAAoBl8G,GAAoBgnG,EAC7C/3J,KAAKktK,YAAc,KACnBltK,KAAKm9J,kBAAoB37F,EAAKy1B,YAAc,IAAIr9B,IAAQ,KACxD55D,KAAKoF,MAAO,CACd,CACA,IAAAoQ,CAAKzL,GACC/J,KAAKoF,OAGTpF,KAAKoF,MAAO,EACZ2E,EAAQyL,KAAK,YAAa,CAACxV,KAAKkjF,WAAY,OAAQljF,KAAKwhE,KAAK2rG,WAAWntK,KAAKitK,kBAAkB39G,uBAClG,CACA,QAAA6hC,CAASpnF,GACF/J,KAAKwhE,KAAK58C,OAGf5kB,KAAKwhE,KAAKnS,iBAAkB,EAC5BogF,EAAiB8tB,eAAev9J,KAAKwhE,KAAMxhE,KAAKwhE,KAAK4rG,iBAAkBrjK,EAAS/J,KAAKitK,mBACvF,CACA,aAAA/P,CAAc/f,EAAWnO,EAAWhhF,GAClC,GAAIhuD,KAAKktK,YACP,OAAOltK,KAAKktK,YAEd,IAAKltK,KAAKwhE,KAAKy1B,YACb,MAAM,IAAIxrF,MAAM,yBAElB,MAAM4hK,EAAiBlwB,EAAUp3I,MAAM,CACrCkpD,cAAc,IAEhBo+G,EAAe3U,kBAAmB,EAClC,MAAMqF,EAAgB,IAAIliC,EAAYuH,OAAO+Z,EAAU4gB,eACnD/9J,KAAK2iI,KAAKxgE,QAAU47F,EAAcngG,IAAI59D,KAAK2iI,KAAKxgE,QAClD47F,EAAcp4B,IAAI3lI,KAAK2iI,KAAKxgE,OAE9BkrG,EAAetP,cAAgBA,EAC/B,MAAMS,EAAiBx+J,KAAKwhE,KAC1B27F,EAAoBn9J,KAAKm9J,kBAC3B,IAAImQ,EAAuBjpK,QAAQD,UACnC,MAAMmpK,EAAYvtK,KAAK2iI,KAAKliI,IAAI,aAC1B+sK,EAAgBxtK,KAAK2iI,KAAKliI,IAAI,cAAgBuuI,EAC9Cn1C,EAAuBv6F,OAAO4D,OAAO,MACrCuqK,EAAWnhH,EAAMv2C,KAAKyzC,cAAcg1G,EAAezjE,MAAQ,CAAC,EAAG,EAAG,EAAG,IACzEh5D,EAAQ0rI,EAAS,GAAKA,EAAS,GAC/BxrI,EAASwrI,EAAS,GAAKA,EAAS,GAC5BC,EAAejqJ,KAAKktD,MAAM5uC,EAAOE,GACvC,UAAWn1B,KAAOygK,EAAUtqC,UAC1BqqC,EAAuBA,EAAqBzoK,MAAK,KAC/C,MAAM8oK,EAAcJ,EAAU9sK,IAAIqM,GAC5BgsD,EAAe,IAAI60E,EAAeuD,aACxC,OAAOm8B,EAAenzG,gBAAgB,CACpCurC,OAAQkoE,EACR3/G,OACAghF,UAAWw+B,EACX10G,iBACCj0D,MAAK,KACFi0D,EAAaC,QAAQ,KAAOzM,EAAMjY,IAAIsQ,uBACxC3kD,KAAK4tK,2BAA2B90G,EAAc40G,GAEhD7zE,EAAqB/sF,GAAOgsD,EAAa4jG,QACzC,UAAW/6G,KAAcmX,EAAam6C,aACpCkqD,EAAkBv1I,IAAI+5B,EACxB,IACCnvC,OAAM,SAAUmI,IACjB,EAAI2xC,EAAMhhD,MAAM,wBAAwBwB,wBACxC,MAAM+gK,EAAoB,IAAIlgC,EAAeuD,aAC7Cr3C,EAAqB/sF,GAAO+gK,EAAkBnR,OAChD,GAAE,IAUN,OAPA18J,KAAKktK,YAAcI,EAAqBzoK,MAAK,KAC3C25J,EAAe3kE,qBAAuBA,EAClC75F,KAAKw+F,QACPggE,EAAewE,YAAa,EAC5BxE,EAAezjE,KAAO/6F,KAAKw+F,MAC7B,IAEKx+F,KAAKktK,WACd,CACA,0BAAAU,CAA2B90G,EAAc40G,EAAe99G,KACtD,MAAMk+G,EAAWxhH,EAAMv2C,KAAKyzC,cAAcsP,EAAaE,UAAU,GAAG/rD,MAAM,IACxE80B,EAAQ+rI,EAAS,GAAKA,EAAS,GAC/B7rI,EAAS6rI,EAAS,GAAKA,EAAS,GAC5BC,EAAetqJ,KAAKktD,MAAM5uC,EAAOE,GACzB,IAAVF,GAA0B,IAAXE,GACjB62B,EAAaC,QAAQ3wD,OAAO,EAAG,GAC/B0wD,EAAaE,UAAU5wD,OAAO,EAAG,KACP,IAAjBslK,GAAsBjqJ,KAAKonD,MAAMkjG,EAAeL,IAAiB,MACrE1tK,KAAKw+F,QACRx+F,KAAKw+F,MAAQ,CAACrU,IAAUA,KAAU,KAAW,MAE/CnqF,KAAKw+F,MAAM,GAAK/6E,KAAKE,IAAI3jB,KAAKw+F,MAAM,GAAIsvE,EAAS,IACjD9tK,KAAKw+F,MAAM,GAAK/6E,KAAKE,IAAI3jB,KAAKw+F,MAAM,GAAIsvE,EAAS,IACjD9tK,KAAKw+F,MAAM,GAAK/6E,KAAK6H,IAAItrB,KAAKw+F,MAAM,GAAIsvE,EAAS,IACjD9tK,KAAKw+F,MAAM,GAAK/6E,KAAK6H,IAAItrB,KAAKw+F,MAAM,GAAIsvE,EAAS,KAEnD,IAAIjlK,EAAI,EACNovC,EAAK6gB,EAAajzD,OACpB,KAAOgD,EAAIovC,GAAI,CACb,OAAQ6gB,EAAaC,QAAQlwD,IAC3B,KAAKyjD,EAAMjY,IAAIsQ,sBACb,MACF,KAAK2H,EAAMjY,IAAIuQ,oBACf,KAAK0H,EAAMjY,IAAIwQ,kBACf,KAAKyH,EAAMjY,IAAIyQ,eACf,KAAKwH,EAAMjY,IAAI0Q,gBACf,KAAKuH,EAAMjY,IAAI2Q,aACf,KAAKsH,EAAMjY,IAAI4Q,cACf,KAAKqH,EAAMjY,IAAI6Q,cACf,KAAKoH,EAAMjY,IAAI8Q,YACf,KAAKmH,EAAMjY,IAAI+Q,kBACf,KAAKkH,EAAMjY,IAAIgR,gBACf,KAAKiH,EAAMjY,IAAIiR,mBACf,KAAKgH,EAAMjY,IAAIkR,iBACf,KAAK+G,EAAMjY,IAAImR,YACf,KAAK8G,EAAMjY,IAAI4N,mBACb6W,EAAaC,QAAQ3wD,OAAOS,EAAG,GAC/BiwD,EAAaE,UAAU5wD,OAAOS,EAAG,GACjCovC,IACA,SACF,KAAKqU,EAAMjY,IAAI8N,UACb,MAAO07G,GAAa/kG,EAAaE,UAAUnwD,GAC3C,IAAIghB,EAAI,EACNu6E,EAAKy5D,EAAUh4J,OACjB,KAAOgkB,EAAIu6E,GAAI,CACb,MAAO4pE,GAAanQ,EAAUh0I,GAC9B,OAAQmkJ,GACN,IAAK,KACL,IAAK,MACL,IAAK,KACL,IAAK,KACL,IAAK,MACL,IAAK,MACL,IAAK,OACHnQ,EAAUz1J,OAAOyhB,EAAG,GACpBu6E,IACA,SAEJv6E,GACF,EAGJhhB,GACF,CACF,EAEF,MAAMw3J,EACJ,WAAA1hJ,CAAY23H,EAAe,IAAI2pB,GAC7BjgK,KAAKylB,MAAQ6wH,EACbt2I,KAAKsvF,WAAa,EACpB,CACA,IAAAltC,GACE,MAAM4zC,EAAMh2F,KAAKylB,MACjBzlB,KAAKsvF,WAAW1tF,KAAK5B,KAAKylB,OAC1BzlB,KAAKylB,MAAQuwE,EAAIjwF,OACnB,CACA,OAAAs8C,GACE,MAAM27B,EAAOh+E,KAAKsvF,WAAW1pF,MACzBo4E,IACFh+E,KAAKylB,MAAQu4D,EAEjB,CACA,SAAA17B,CAAUr3C,GACRjL,KAAKylB,MAAMy9I,IAAM52G,EAAMv2C,KAAKusC,UAAUtiD,KAAKylB,MAAMy9I,IAAKj4J,EACxD,EAEF,MAAMw2J,EACJ,WAAA9iJ,GACE3e,KAAKkjK,IAAM,IAAIhQ,aAAa5mG,EAAM1X,iBAClC50C,KAAK25G,SAAW,KAChB35G,KAAK2nF,SAAW,EAChB3nF,KAAKkjF,WAAa,KAClBljF,KAAKwhE,KAAO,KACZxhE,KAAK+nF,WAAaz7B,EAAMvX,qBACxB/0C,KAAK6nF,WAAav7B,EAAM1X,gBAAgB3nC,QACxCjN,KAAKsjK,eAAiBh3G,EAAM1X,gBAAgB3nC,QAC5CjN,KAAKmoF,YAAc,EACnBnoF,KAAKooF,YAAc,EACnBpoF,KAAKgoF,QAAU,EACfhoF,KAAKqoF,WAAa,EAClBroF,KAAKuoF,SAAW,CAClB,CACA,aAAAnkC,CAActkD,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GAC3B,MAAMwD,EAAIpD,KAAK6nF,WACfzkF,EAAE,GAAKtD,EACPsD,EAAE,GAAKob,EACPpb,EAAE,GAAKylB,EACPzlB,EAAE,GAAK7C,EACP6C,EAAE,GAAKsB,EACPtB,EAAE,GAAKxD,CACT,CACA,iBAAAwlK,CAAkBtlK,EAAG0e,EAAGqK,EAAGtoB,EAAGmE,EAAG9E,GAC/B,MAAMwD,EAAIpD,KAAKsjK,eACflgK,EAAE,GAAKtD,EACPsD,EAAE,GAAKob,EACPpb,EAAE,GAAKylB,EACPzlB,EAAE,GAAK7C,EACP6C,EAAE,GAAKsB,EACPtB,EAAE,GAAKxD,CACT,CACA,mBAAAykK,CAAoBjlK,EAAG4F,GACrB,MAAM5B,EAAIpD,KAAK6nF,WACfzkF,EAAE,GAAKA,EAAE,GAAKhE,EAAIgE,EAAE,GAAK4B,EAAI5B,EAAE,GAC/BA,EAAE,GAAKA,EAAE,GAAKhE,EAAIgE,EAAE,GAAK4B,EAAI5B,EAAE,EACjC,CACA,uBAAA8hK,CAAwB9lK,EAAG4F,GACzB,MAAM5B,EAAIpD,KAAKsjK,eACflgK,EAAE,GAAKA,EAAE,GAAKhE,EAAIgE,EAAE,GAAK4B,EAAI5B,EAAE,GAC/BA,EAAE,GAAKA,EAAE,GAAKhE,EAAIgE,EAAE,GAAK4B,EAAI5B,EAAE,EACjC,CACA,cAAA+hK,GACEnlK,KAAKklK,wBAAwB,GAAIllK,KAAKgoF,SACtChoF,KAAK6nF,WAAa7nF,KAAKsjK,eAAer2J,OACxC,CACA,KAAAlH,GACE,MAAMA,EAAQzG,OAAO4D,OAAOlD,MAI5B,OAHA+F,EAAM8hF,WAAa7nF,KAAK6nF,WAAW56E,QACnClH,EAAMu9J,eAAiBtjK,KAAKsjK,eAAer2J,QAC3ClH,EAAMgiF,WAAa/nF,KAAK+nF,WAAW96E,QAC5BlH,CACT,EAEF,MAAMk6J,EACJ,WAAAthJ,GACE3e,KAAKkjK,IAAM,IAAIhQ,aAAa5mG,EAAM1X,iBAClC50C,KAAKwhE,KAAO,KACZxhE,KAAKsoF,kBAAoBh8B,EAAMxY,kBAAkBkI,KACjDh8C,KAAKmtJ,eAAiB9S,EAAYO,WAAWC,WAAWC,KACxD96I,KAAKkhK,iBAAmB7mB,EAAYO,WAAWC,WAAWC,IAC5D,CACA,KAAA/0I,GACE,OAAOzG,OAAO4D,OAAOlD,KACvB,EAEF,MAAM,EAAN,MAAM,EACJ,gBAAWiuK,GACT,SAAW3hH,EAAMtT,QAAQh5C,KAAM,QAAS,CACtC2oC,EAAG,CACD/yB,GAAI02C,EAAMjY,IAAIuN,aACdssH,QAAS,EACTC,cAAc,GAEhBC,EAAG,CACDx4J,GAAI02C,EAAMjY,IAAIwN,WACdqsH,QAAS,EACTC,cAAc,GAEhBtkJ,EAAG,CACDjU,GAAI02C,EAAMjY,IAAIyN,YACdosH,QAAS,EACTC,cAAc,GAEhBnX,EAAG,CACDphJ,GAAI02C,EAAMjY,IAAI0N,cACdmsH,QAAS,EACTC,cAAc,GAEhB5tK,EAAG,CACDqV,GAAI02C,EAAMjY,IAAI2N,QACdksH,QAAS,EACTC,cAAc,GAEhBE,GAAI,CACFz4J,GAAI02C,EAAMjY,IAAI4N,mBACdisH,QAAS,EACTC,cAAc,GAEhBtlK,EAAG,CACD+M,GAAI02C,EAAMjY,IAAI6N,YACdgsH,QAAS,EACTC,cAAc,GAEhBG,GAAI,CACF14J,GAAI02C,EAAMjY,IAAI8N,UACd+rH,QAAS,EACTC,cAAc,GAEhB1sE,EAAG,CACD7rF,GAAI02C,EAAMjY,IAAI+N,KACd8rH,QAAS,EACTC,cAAc,GAEhBI,EAAG,CACD34J,GAAI02C,EAAMjY,IAAIgO,QACd6rH,QAAS,EACTC,cAAc,GAEhBK,GAAI,CACF54J,GAAI02C,EAAMjY,IAAIiO,UACd4rH,QAAS,EACTC,cAAc,GAEhB/qK,EAAG,CACDwS,GAAI02C,EAAMjY,IAAIkO,OACd2rH,QAAS,EACTC,cAAc,GAEhBn2I,EAAG,CACDpiB,GAAI02C,EAAMjY,IAAImO,OACd0rH,QAAS,EACTC,cAAc,GAEhBtlJ,EAAG,CACDjT,GAAI02C,EAAMjY,IAAIoO,QACdyrH,QAAS,EACTC,cAAc,GAEhBzqK,EAAG,CACDkS,GAAI02C,EAAMjY,IAAIqO,SACdwrH,QAAS,EACTC,cAAc,GAEhBnpK,EAAG,CACD4Q,GAAI02C,EAAMjY,IAAIsO,SACdurH,QAAS,EACTC,cAAc,GAEhBvlI,EAAG,CACDhzB,GAAI02C,EAAMjY,IAAIuO,UACdsrH,QAAS,EACTC,cAAc,GAEhBM,GAAI,CACF74J,GAAI02C,EAAMjY,IAAIwO,UACdqrH,QAAS,EACTC,cAAc,GAEhBO,EAAG,CACD94J,GAAI02C,EAAMjY,IAAIyO,OACdorH,QAAS,EACTC,cAAc,GAEhBl/J,EAAG,CACD2G,GAAI02C,EAAMjY,IAAI0O,YACdmrH,QAAS,EACTC,cAAc,GAEhBvuK,EAAG,CACDgW,GAAI02C,EAAMjY,IAAI2O,KACdkrH,QAAS,EACTC,cAAc,GAEhBptH,EAAG,CACDnrC,GAAI02C,EAAMjY,IAAI2O,KACdkrH,QAAS,EACTC,cAAc,GAEhB,KAAM,CACJv4J,GAAI02C,EAAMjY,IAAI4O,OACdirH,QAAS,EACTC,cAAc,GAEhBtY,EAAG,CACDjgJ,GAAI02C,EAAMjY,IAAI6O,WACdgrH,QAAS,EACTC,cAAc,GAEhB,KAAM,CACJv4J,GAAI02C,EAAMjY,IAAI8O,aACd+qH,QAAS,EACTC,cAAc,GAEhB3vJ,EAAG,CACD5I,GAAI02C,EAAMjY,IAAI+O,gBACd8qH,QAAS,EACTC,cAAc,GAEhB,KAAM,CACJv4J,GAAI02C,EAAMjY,IAAIgP,kBACd6qH,QAAS,EACTC,cAAc,GAEhBxuK,EAAG,CACDiW,GAAI02C,EAAMjY,IAAIiP,QACd4qH,QAAS,EACTC,cAAc,GAEhBQ,EAAG,CACD/4J,GAAI02C,EAAMjY,IAAIkP,KACd2qH,QAAS,EACTC,cAAc,GAEhB,KAAM,CACJv4J,GAAI02C,EAAMjY,IAAImP,OACd0qH,QAAS,EACTC,cAAc,GAEhBS,GAAI,CACFh5J,GAAI02C,EAAMjY,IAAIoP,UACdyqH,QAAS,EACTC,cAAc,GAEhBU,GAAI,CACFj5J,GAAI02C,EAAMjY,IAAIqP,QACdwqH,QAAS,EACTC,cAAc,GAEhBW,GAAI,CACFl5J,GAAI02C,EAAMjY,IAAIsP,eACduqH,QAAS,EACTC,cAAc,GAEhBY,GAAI,CACFn5J,GAAI02C,EAAMjY,IAAIuP,eACdsqH,QAAS,EACTC,cAAc,GAEhBa,GAAI,CACFp5J,GAAI02C,EAAMjY,IAAIwP,UACdqqH,QAAS,EACTC,cAAc,GAEhBc,GAAI,CACFr5J,GAAI02C,EAAMjY,IAAIyP,WACdoqH,QAAS,EACTC,cAAc,GAEhBe,GAAI,CACFt5J,GAAI02C,EAAMjY,IAAI0P,QACdmqH,QAAS,EACTC,cAAc,GAEhBgB,GAAI,CACFv5J,GAAI02C,EAAMjY,IAAI2P,qBACdkqH,QAAS,EACTC,cAAc,GAEhBiB,GAAI,CACFx5J,GAAI02C,EAAMjY,IAAI4P,YACdiqH,QAAS,EACTC,cAAc,GAEhBkB,GAAI,CACFz5J,GAAI02C,EAAMjY,IAAI6P,SACdgqH,QAAS,EACTC,cAAc,GAEhBmB,GAAI,CACF15J,GAAI02C,EAAMjY,IAAI8P,mBACd+pH,QAAS,EACTC,cAAc,GAEhBoB,GAAI,CACF35J,GAAI02C,EAAMjY,IAAI+P,cACd8pH,QAAS,EACTC,cAAc,GAEhB,KAAM,CACJv4J,GAAI02C,EAAMjY,IAAIgQ,SACd6pH,QAAS,EACTC,cAAc,GAEhBqB,GAAI,CACF55J,GAAI02C,EAAMjY,IAAIiQ,SACd4pH,QAAS,EACTC,cAAc,GAEhBsB,GAAI,CACF75J,GAAI02C,EAAMjY,IAAIkQ,eACd2pH,QAAS,EACTC,cAAc,GAEhB,IAAK,CACHv4J,GAAI02C,EAAMjY,IAAImQ,iBACd0pH,QAAS,EACTC,cAAc,GAEhB,IAAK,CACHv4J,GAAI02C,EAAMjY,IAAIoQ,2BACdypH,QAAS,EACTC,cAAc,GAEhBuB,GAAI,CACF95J,GAAI02C,EAAMjY,IAAIqQ,aACdwpH,QAAS,EACTC,cAAc,GAEhBwB,GAAI,CACF/5J,GAAI02C,EAAMjY,IAAIsQ,sBACdupH,QAAS,EACTC,cAAc,GAEhByB,GAAI,CACFh6J,GAAI02C,EAAMjY,IAAIuQ,oBACdspH,QAAS,EACTC,cAAc,GAEhB9sE,GAAI,CACFzrF,GAAI02C,EAAMjY,IAAIwQ,kBACdqpH,QAAS,EACTC,cAAc,GAEhB0B,GAAI,CACFj6J,GAAI02C,EAAMjY,IAAIyQ,eACdopH,QAAS,EACTC,cAAc,GAEhB2B,IAAK,CACHl6J,GAAI02C,EAAMjY,IAAI0Q,gBACdmpH,QAAS,GACTC,cAAc,GAEhB4B,GAAI,CACFn6J,GAAI02C,EAAMjY,IAAI2Q,aACdkpH,QAAS,EACTC,cAAc,GAEhB6B,IAAK,CACHp6J,GAAI02C,EAAMjY,IAAI4Q,cACdipH,QAAS,GACTC,cAAc,GAEhBh8C,EAAG,CACDv8G,GAAI02C,EAAMjY,IAAI6Q,cACdgpH,QAAS,EACTC,cAAc,GAEhBlvK,EAAG,CACD2W,GAAI02C,EAAMjY,IAAI8Q,YACd+oH,QAAS,EACTC,cAAc,GAEhB8B,GAAI,CACFr6J,GAAI02C,EAAMjY,IAAI+Q,kBACd8oH,QAAS,EACTC,cAAc,GAEhB+B,GAAI,CACFt6J,GAAI02C,EAAMjY,IAAIgR,gBACd6oH,QAAS,EACTC,cAAc,GAEhBrtH,EAAG,CACDlrC,GAAI02C,EAAMjY,IAAIiR,mBACd4oH,QAAS,EACTC,cAAc,GAEhB7tK,EAAG,CACDsV,GAAI02C,EAAMjY,IAAIkR,iBACd2oH,QAAS,EACTC,cAAc,GAEhBgC,GAAI,CACFv6J,GAAI02C,EAAMjY,IAAImR,YACd0oH,QAAS,EACTC,cAAc,GAEhBiC,GAAI,CACFx6J,GAAI02C,EAAMjY,IAAIoR,iBACdyoH,QAAS,EACTC,cAAc,GAEhBkC,GAAI,CACFz6J,GAAI02C,EAAMjY,IAAIqR,eACdwoH,QAAS,EACTC,cAAc,GAEhBmC,GAAI,CACF16J,GAAI02C,EAAMjY,IAAIsR,eACduoH,QAAS,EACTC,cAAc,GAEhBoC,GAAI,CACF36J,GAAI02C,EAAMjY,IAAIuR,aACdsoH,QAAS,EACTC,cAAc,GAEhBqC,GAAI,CACF56J,GAAI02C,EAAMjY,IAAIwR,UACdqoH,QAAS,EACTC,cAAc,GAEhB7sH,GAAI,CACF1rC,GAAI02C,EAAMjY,IAAIyR,eACdooH,QAAS,EACTC,cAAc,GAEhBsC,IAAK,CACH76J,GAAI02C,EAAMjY,IAAI0R,mBACdmoH,QAAS,EACTC,cAAc,GAEhBuC,IAAK,CACH96J,GAAI02C,EAAMjY,IAAI2R,wBACdkoH,QAAS,EACTC,cAAc,GAEhBwC,IAAK,CACH/6J,GAAI02C,EAAMjY,IAAI4R,iBACdioH,QAAS,EACTC,cAAc,GAEhByC,GAAI,CACFh7J,GAAI02C,EAAMjY,IAAI6R,YACdgoH,QAAS,EACTC,cAAc,GAEhB0C,GAAI,CACFj7J,GAAI02C,EAAMjY,IAAI8R,UACd+nH,QAAS,EACTC,cAAc,GAEhB2C,GAAI,KACJC,GAAI,KACJC,KAAM,KACNC,GAAI,KACJC,IAAK,KACLC,KAAM,KACNC,MAAO,KACPC,GAAI,KACJC,IAAK,KACLC,KAAM,MAEV,CAEA,WAAA5yJ,CAAY8mF,EAAQ05B,EAAMs8B,EAAe,IAAI4E,GAC3CrgK,KAAKwxK,OAAS,IAAI/jC,EAAQgkC,OAAO,CAC/BC,MAAO,IAAIjkC,EAAQkkC,MAAMlsE,EAAQ,EAAsBwoE,OACvD9uC,SAEFn/H,KAAKy7J,aAAeA,EACpBz7J,KAAK4xK,iBAAmB,GACxB5xK,KAAK6xK,WAAY,EACjB7xK,KAAK8xK,mBAAqB,CAC5B,CACA,oBAAI5kB,GACF,OAAOltJ,KAAKy7J,aAAansE,WAAWzpF,MACtC,CACA,IAAAs1D,CAAK8xF,GACH,IAAIhiJ,EAAOgiJ,EAAUhiJ,KACrB,OAAa,CACX,MAAMrD,EAAM5H,KAAKwxK,OAAOO,SACxB,GAAInqK,aAAei0H,EAAYwK,IAAK,CAClC,MAAMl3D,EAAMvnE,EAAIunE,IACV6iG,EAAS,EAAsB/D,MAAM9+F,GAC3C,IAAK6iG,EAAQ,EACX,EAAI1lH,EAAMhhD,MAAM,oBAAoB6jE,OACpC,QACF,CACA,MAAMv6C,EAAKo9I,EAAOp8J,GACZs4J,EAAU8D,EAAO9D,QACvB,IAAI+D,EAAsB,OAAThnK,EAAgBA,EAAKpF,OAAS,EAK/C,GAJK7F,KAAK6xK,YACR7xK,KAAK8xK,mBAAqB,GAE5B9xK,KAAK6xK,UAAYj9I,GAAM03B,EAAMjY,IAAIkO,QAAU3tB,GAAM03B,EAAMjY,IAAIiP,QACtD0uH,EAAO7D,aA0BD8D,EAAa/D,IACtB,EAAI5hH,EAAMjhD,MAAM,WAAW8jE,mBAAqB++F,yBAAoC+D,eA3B5D,CACxB,GAAIA,IAAe/D,EAAS,CAC1B,MAAM0D,EAAmB5xK,KAAK4xK,iBAC9B,KAAOK,EAAa/D,GAClB0D,EAAiBhwK,KAAKqJ,EAAKrC,SAC3BqpK,IAEF,KAAOA,EAAa/D,GAAuC,IAA5B0D,EAAiB/rK,QACjC,OAAToF,IACFA,EAAO,IAETA,EAAKG,QAAQwmK,EAAiBhsK,OAC9BqsK,GAEJ,CACA,GAAIA,EAAa/D,EAAS,CACxB,MAAMgE,EAAa,WAAW/iG,eAAiB++F,wBAAmC+D,UAClF,GAAIjyK,KAAK6xK,aAAe7xK,KAAK8xK,mBAAqB,EAAsBK,qBACtE,MAAM,IAAI7lH,EAAMzX,YAAY,WAAWq9H,MAEzC,EAAI5lH,EAAMhhD,MAAM,YAAY4mK,KACf,OAATjnK,IACFA,EAAKpF,OAAS,GAEhB,QACF,CACF,CAMA,OAHA7F,KAAKoyK,kBAAkBx9I,EAAI3pB,GAC3BgiJ,EAAUr4H,GAAKA,EACfq4H,EAAUhiJ,KAAOA,GACV,CACT,CACA,GAAIrD,IAAQi0H,EAAYuK,IACtB,OAAO,EAET,GAAY,OAARx+H,IACW,OAATqD,IACFA,EAAO,IAETA,EAAKrJ,KAAKgG,GACNqD,EAAKpF,OAAS,IAChB,MAAM,IAAIymD,EAAMzX,YAAY,qBAGlC,CACF,CACA,iBAAAu9H,CAAkBx9I,EAAI3pB,GACpB,OAAa,EAAL2pB,GACN,KAAK03B,EAAMjY,IAAI+N,KACbpiD,KAAKy7J,aAAar5G,OAClB,MACF,KAAKkK,EAAMjY,IAAIgO,QACbriD,KAAKy7J,aAAap5G,UAClB,MACF,KAAKiK,EAAMjY,IAAIiO,UACbtiD,KAAKy7J,aAAan5G,UAAUr3C,GAGlC,GA5FA,EA5XI,EA4XG,uBAAuB,IA5XhC,IAAM+hJ,EAAN,EA0dAnuJ,EAAQmuJ,sBAAwBA,CAAqB,EAI9C,CAACt5G,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ+pK,aAAe/pK,EAAQkqK,YAAclqK,EAAQwzK,UAAO,EAC5D,IAAI/lH,EAAQf,EAAoB,GAC5BswE,EAActwE,EAAoB,GAClCi6E,EAAej6E,EAAoB,GACnC+mH,EAAe/mH,EAAoB,IACnCkiF,EAAUliF,EAAoB,IAC9BqwE,EAAcrwE,EAAoB,GAClCi+C,EAAUj+C,EAAoB,GAClC,MAAMgnH,EAAiB,CAAC,iBAAkB,kBAAmB,oBAAqB,oBAAqB,WAAY,WAAY,OAAQ,YAAa,YAAa,OAAQ,cAAe,cAAe,cAAe,cAAe,cAAe,eAAgB,eAAgB,cAAe,cAAe,QAAS,aAAc,aAAc,QAAS,eAAgB,eAAgB,eAAgB,eAAgB,eAAgB,eAAgB,eAAgB,cAAe,cAAe,cAAe,cAAe,cAAe,cAAe,iBAAkB,iBAAkB,iBAAkB,iBAAkB,iBAAkB,iBAAkB,iBAAkB,iBAAkB,iBAAkB,iBAAkB,OAAQ,OAAQ,SAAU,SAAU,YAAa,YAAa,SAAU,SAAU,SAAU,SAAU,YAAa,YAAa,YAAa,YAAa,cAAe,cAAe,QAAS,QAAS,QAAS,aAAc,aAAc,QAAS,WAAY,WAAY,OAAQ,OAAQ,YAAa,YAAa,UAAW,UAAW,aAAc,aAAc,YAAa,YAAa,QAAS,QAAS,cAAe,cAAe,aAAc,aAAc,IAAK,aAAc,aAAc,aAAc,aAAc,cAAe,cAAe,cAAe,cAAe,cAAe,cAAe,aAAc,aAAc,UAAW,WAAY,YAAa,YAAa,QAAS,cAAe,cAAe,QAAS,cAAe,iBAAkB,iBAAkB,cAAe,cAAe,cAAe,WAAY,QAAS,QAAS,SAAU,SAAU,QAAS,gBAAiB,gBAAiB,iBAAkB,iBAAkB,iBAAkB,iBAAkB,gBAAiB,gBAAiB,eAAgB,eAAgB,gBAAiB,gBAAiB,gBAAiB,gBAAiB,eAAgB,eAAgB,gBAAiB,mBAAoB,mBAAoB,gBAAiB,iBAAkB,iBAAkB,iBAAkB,iBAAkB,gBAAiB,gBAAiB,qBAAsB,qBAAsB,qBAAsB,qBAAsB,oBAAqB,oBAAqB,sBAAuB,mBAAoB,mBAAoB,sBAAuB,sBAAuB,0BAA2B,0BAA2B,eAAgB,eAAgB,gBAAiB,gBAAiB,gBAAiB,gBAAiB,eAAgB,eAAgB,IAAK,aAC38EC,EAAgB,GAAK,GAAK,EAChC,MAAMH,EACJ,WAAA1zJ,CAAYgqJ,GAAc,GACxB3oK,KAAKyyK,gBAAkB,CAAC,GAAI,GAAI,GAAI,IACpCzyK,KAAK0yK,mBAAqB,EAC1B1yK,KAAKgnI,KAAO,GACZhnI,KAAKmJ,KAAO,GACZnJ,KAAKi4F,UAAW,EAChBj4F,KAAKgpK,QAAU,KACfhpK,KAAK2oK,YAAcA,CACrB,CACA,iBAAAgK,CAAkBhzK,EAAGizK,EAAKC,GACxB7yK,KAAKyyK,gBAAgB9yK,EAAI,GAAGiC,KAAKgxK,EAAKC,GACtC7yK,KAAK0yK,oBACP,CACA,WAAAI,CAAYF,EAAKC,EAAME,GACrB,GAAIF,EAAOD,EAAMJ,EACf,MAAM,IAAI/mK,MAAM,oDAElB,KAAOmnK,GAAOC,GACZ7yK,KAAKgnI,KAAK4rC,KAASG,GAEvB,CACA,UAAAC,CAAWJ,EAAKC,EAAME,GACpB,GAAIF,EAAOD,EAAMJ,EACf,MAAM,IAAI/mK,MAAM,mDAElB,MAAMwnK,EAAWF,EAAOltK,OAAS,EACjC,KAAO+sK,GAAOC,GAAM,CAClB7yK,KAAKgnI,KAAK4rC,KAASG,EACnB,MAAMG,EAAeH,EAAO/pJ,WAAWiqJ,GAAY,EAEjDF,EADEG,EAAe,IACRH,EAAOxpJ,UAAU,EAAG0pJ,EAAW,GAAKznK,OAAOif,aAAasoJ,EAAO/pJ,WAAWiqJ,EAAW,GAAK,GAAK,KAGjGF,EAAOxpJ,UAAU,EAAG0pJ,GAAYznK,OAAOif,aAAayoJ,EAC/D,CACF,CACA,iBAAAC,CAAkBP,EAAKC,EAAMl9I,GAC3B,GAAIk9I,EAAOD,EAAMJ,EACf,MAAM,IAAI/mK,MAAM,0DAElB,MAAMwsC,EAAKtiB,EAAM9vB,OACjB,IAAIgD,EAAI,EACR,KAAO+pK,GAAOC,GAAQhqK,EAAIovC,GACxBj4C,KAAKgnI,KAAK4rC,GAAOj9I,EAAM9sB,OACrB+pK,CAEN,CACA,MAAAQ,CAAOxyK,EAAKyyK,GACVrzK,KAAKgnI,KAAKpmI,GAAOyyK,CACnB,CACA,MAAAvvC,CAAOnqF,GACL,OAAO35C,KAAKgnI,KAAKrtF,EACnB,CACA,QAAApQ,CAASoQ,GACP,YAA2B,IAApB35C,KAAKgnI,KAAKrtF,EACnB,CACA,OAAAt5C,CAAQyO,GACN,MAAM7G,EAAMjI,KAAKgnI,KACXnhI,EAASoC,EAAIpC,OACnB,GAAIA,GAAU,MACZ,QAASgD,EAAI,EAAGA,EAAIhD,EAAQgD,SACX,IAAXZ,EAAIY,IACNiG,EAASjG,EAAGZ,EAAIY,SAIpB,UAAWA,KAAKZ,EACd6G,EAASjG,EAAGZ,EAAIY,GAGtB,CACA,UAAAyqK,CAAWnzK,GACT,MAAM8H,EAAMjI,KAAKgnI,KACjB,GAAI/+H,EAAIpC,QAAU,MAChB,OAAOoC,EAAI/F,QAAQ/B,GAErB,UAAWopK,KAAYthK,EACrB,GAAIA,EAAIshK,KAAcppK,EACpB,OAAkB,EAAXopK,EAGX,OAAQ,CACV,CACA,MAAAD,GACE,OAAOtpK,KAAKgnI,IACd,CACA,YAAAusC,CAAavpJ,EAAKs6D,EAAQkvF,GACxB,IAAI3qJ,EAAI,EACR,MAAM4pJ,EAAkBzyK,KAAKyyK,gBAC7B,QAAS9yK,EAAI,EAAG8zK,EAAKhB,EAAgB5sK,OAAQlG,EAAI8zK,EAAI9zK,IAAK,CACxDkpB,GAAKA,GAAK,EAAImB,EAAIhB,WAAWs7D,EAAS3kF,MAAQ,EAC9C,MAAM+zK,EAAiBjB,EAAgB9yK,GACvC,QAASW,EAAI,EAAGqzK,EAAKD,EAAe7tK,OAAQvF,EAAIqzK,GAAK,CACnD,MAAMf,EAAMc,EAAepzK,KACrBuyK,EAAOa,EAAepzK,KAC5B,GAAIuoB,GAAK+pJ,GAAO/pJ,GAAKgqJ,EAGnB,OAFAW,EAAIzL,SAAWl/I,OACf2qJ,EAAI3tK,OAASlG,EAAI,EAGrB,CACF,CACA6zK,EAAIzL,SAAW,EACfyL,EAAI3tK,OAAS,CACf,CACA,iBAAA+tK,CAAkBrK,GAChB,MAAMkJ,EAAkBzyK,KAAKyyK,gBAC7B,QAAS9yK,EAAI,EAAG8zK,EAAKhB,EAAgB5sK,OAAQlG,EAAI8zK,EAAI9zK,IAAK,CACxD,MAAM+zK,EAAiBjB,EAAgB9yK,GACvC,QAASW,EAAI,EAAGqzK,EAAKD,EAAe7tK,OAAQvF,EAAIqzK,GAAK,CACnD,MAAMf,EAAMc,EAAepzK,KACrBuyK,EAAOa,EAAepzK,KAC5B,GAAIipK,GAAYqJ,GAAOrJ,GAAYsJ,EACjC,OAAOlzK,EAAI,CAEf,CACF,CACA,OAAO,CACT,CACA,UAAIkG,GACF,OAAO7F,KAAKgnI,KAAKnhI,MACnB,CACA,kBAAIguK,GACF,GAAoB,eAAd7zK,KAAKmJ,MAAuC,eAAdnJ,KAAKmJ,KACvC,OAAO,EAET,GAAyB,QAArBnJ,KAAKgnI,KAAKnhI,OACZ,OAAO,EAET,QAASgD,EAAI,EAAGA,EAAI,MAASA,IAC3B,GAAI7I,KAAKgnI,KAAKn+H,KAAOA,EACnB,OAAO,EAGX,OAAO,CACT,EAEFhK,EAAQwzK,KAAOA,EACf,MAAMzJ,UAAqByJ,EACzB,WAAA1zJ,CAAYs5E,EAAUt4F,GACpB8nD,QACAznD,KAAKi4F,SAAWA,EAChBj4F,KAAK2yK,kBAAkBhzK,EAAG,EAAG,MAC/B,CACA,WAAAmzK,CAAYF,EAAKC,EAAME,IACrB,EAAIzmH,EAAMpW,aAAa,8BACzB,CACA,UAAA88H,CAAWJ,EAAKC,EAAME,IACpB,EAAIzmH,EAAMpW,aAAa,6BACzB,CACA,iBAAAi9H,CAAkBP,EAAKC,EAAMl9I,IAC3B,EAAI22B,EAAMpW,aAAa,oCACzB,CACA,MAAAk9H,CAAOxyK,EAAKyyK,IACV,EAAI/mH,EAAMpW,aAAa,4BACzB,CACA,MAAA4tF,CAAOnqF,GACL,OAAOb,OAAOC,UAAUY,IAASA,GAAQ,MAASA,OAAO,CAC3D,CACA,QAAApQ,CAASoQ,GACP,OAAOb,OAAOC,UAAUY,IAASA,GAAQ,KAC3C,CACA,OAAAt5C,CAAQyO,GACN,QAASjG,EAAI,EAAGA,GAAK,MAAQA,IAC3BiG,EAASjG,EAAGA,EAEhB,CACA,UAAAyqK,CAAWnzK,GACT,OAAO24C,OAAOC,UAAU54C,IAAUA,GAAS,MAASA,GAAS,CAC/D,CACA,MAAAmpK,GACE,MAAMrhK,EAAM,IAAI0C,MAAM,OACtB,QAAS9B,EAAI,EAAGA,GAAK,MAAQA,IAC3BZ,EAAIY,GAAKA,EAEX,OAAOZ,CACT,CACA,UAAIpC,GACF,OAAO,KACT,CACA,kBAAIguK,IACF,EAAIvnH,EAAMpW,aAAa,oCACzB,EAGF,SAAS49H,EAAS9pJ,GAChB,IAAIlqB,EAAI,EACR,QAAS+I,EAAI,EAAGA,EAAImhB,EAAInkB,OAAQgD,IAC9B/I,EAAIA,GAAK,EAAIkqB,EAAIhB,WAAWngB,GAE9B,OAAO/I,IAAM,CACf,CACA,SAASi0K,EAAansK,GACpB,GAAmB,iBAARA,EACT,MAAM,IAAI0kD,EAAMzX,YAAY,mCAEhC,CACA,SAASm/H,EAAUpsK,GACjB,IAAKkxC,OAAOC,UAAUnxC,GACpB,MAAM,IAAI0kD,EAAMzX,YAAY,gCAEhC,CACA,SAASo/H,EAAYvL,EAAMgJ,GACzB,OAAa,CACX,IAAI9pK,EAAM8pK,EAAMK,SAChB,GAAInqK,IAAQi0H,EAAYuK,IACtB,MAEF,MAAQvK,EAAY8K,OAAO/+H,EAAK,aAC9B,OAEFmsK,EAAansK,GACb,MAAMhH,EAAMkzK,EAASlsK,GACrBA,EAAM8pK,EAAMK,SACZgC,EAAansK,GACb,MAAMyrK,EAAMzrK,EACZ8gK,EAAK0K,OAAOxyK,EAAKyyK,EACnB,CACF,CACA,SAASa,EAAaxL,EAAMgJ,GAC1B,OAAa,CACX,IAAI9pK,EAAM8pK,EAAMK,SAChB,GAAInqK,IAAQi0H,EAAYuK,IACtB,MAEF,MAAQvK,EAAY8K,OAAO/+H,EAAK,cAC9B,OAEFmsK,EAAansK,GACb,MAAMgrK,EAAMkB,EAASlsK,GACrBA,EAAM8pK,EAAMK,SACZgC,EAAansK,GACb,MAAMirK,EAAOiB,EAASlsK,GAEtB,GADAA,EAAM8pK,EAAMK,SACRj5H,OAAOC,UAAUnxC,IAAuB,iBAARA,EAAkB,CACpD,MAAMmrK,EAASj6H,OAAOC,UAAUnxC,GAAO4D,OAAOif,aAAa7iB,GAAOA,EAClE8gK,EAAKsK,WAAWJ,EAAKC,EAAME,EAC7B,KAAO,MAAI,EAAIl3C,EAAY8K,OAAO/+H,EAAK,KASrC,MAT2C,CAC3CA,EAAM8pK,EAAMK,SACZ,MAAMp8I,EAAQ,GACd,OAAQ,EAAIkmG,EAAY8K,OAAO/+H,EAAK,MAAQA,IAAQi0H,EAAYuK,KAC9DzwG,EAAM/zB,KAAKgG,GACXA,EAAM8pK,EAAMK,SAEdrJ,EAAKyK,kBAAkBP,EAAKC,EAAMl9I,EACpC,CAEA,CACF,CACA,MAAM,IAAI22B,EAAMzX,YAAY,oBAC9B,CACA,SAASs/H,EAAazL,EAAMgJ,GAC1B,OAAa,CACX,IAAI9pK,EAAM8pK,EAAMK,SAChB,GAAInqK,IAAQi0H,EAAYuK,IACtB,MAEF,MAAQvK,EAAY8K,OAAO/+H,EAAK,cAC9B,OAEFmsK,EAAansK,GACb,MAAMhH,EAAMkzK,EAASlsK,GACrBA,EAAM8pK,EAAMK,SACZiC,EAAUpsK,GACV,MAAMyrK,EAAMzrK,EACZ8gK,EAAK0K,OAAOxyK,EAAKyyK,EACnB,CACF,CACA,SAASe,EAAc1L,EAAMgJ,GAC3B,OAAa,CACX,IAAI9pK,EAAM8pK,EAAMK,SAChB,GAAInqK,IAAQi0H,EAAYuK,IACtB,MAEF,MAAQvK,EAAY8K,OAAO/+H,EAAK,eAC9B,OAEFmsK,EAAansK,GACb,MAAMgrK,EAAMkB,EAASlsK,GACrBA,EAAM8pK,EAAMK,SACZgC,EAAansK,GACb,MAAMirK,EAAOiB,EAASlsK,GACtBA,EAAM8pK,EAAMK,SACZiC,EAAUpsK,GACV,MAAMmrK,EAASnrK,EACf8gK,EAAKoK,YAAYF,EAAKC,EAAME,EAC9B,CACF,CACA,SAASsB,EAAoB3L,EAAMgJ,GACjC,OAAa,CACX,IAAI9pK,EAAM8pK,EAAMK,SAChB,GAAInqK,IAAQi0H,EAAYuK,IACtB,MAEF,MAAQvK,EAAY8K,OAAO/+H,EAAK,qBAC9B,OAEF,GAAmB,iBAARA,EACT,MAEF,MAAMgrK,EAAMkB,EAASlsK,GAErB,GADAA,EAAM8pK,EAAMK,SACO,iBAARnqK,EACT,MAEF,MAAMirK,EAAOiB,EAASlsK,GACtB8gK,EAAKiK,kBAAkB/qK,EAAI/B,OAAQ+sK,EAAKC,EAC1C,CACA,MAAM,IAAIvmH,EAAMzX,YAAY,2BAC9B,CACA,SAASy/H,EAAW5L,EAAMgJ,GACxB,MAAM9pK,EAAM8pK,EAAMK,SACdj5H,OAAOC,UAAUnxC,KACnB8gK,EAAKzwE,WAAarwF,EAEtB,CACA,SAAS2sK,EAAc7L,EAAMgJ,GAC3B,MAAM9pK,EAAM8pK,EAAMK,SACdnqK,aAAei0H,EAAYsK,OAC7BuiC,EAAKv/J,KAAOvB,EAAIuB,KAEpB,CACA6E,eAAewmK,EAAU9L,EAAMgJ,EAAO5Y,EAAkBkQ,GACtD,IAAIyL,EAAUC,EACdC,EAAS,OACP,IACE,MAAM/sK,EAAM8pK,EAAMK,SAClB,GAAInqK,IAAQi0H,EAAYuK,IACtB,MACK,GAAIx+H,aAAei0H,EAAYsK,KACnB,UAAbv+H,EAAIuB,KACNmrK,EAAW5L,EAAMgJ,GACK,aAAb9pK,EAAIuB,MACborK,EAAc7L,EAAMgJ,GAEtB+C,EAAW7sK,OACN,GAAIA,aAAei0H,EAAYwK,IACpC,OAAQz+H,EAAIunE,KACV,IAAK,UACH,MAAMwlG,EACR,IAAK,UACCF,aAAoB54C,EAAYsK,OAClCuuC,EAAkBD,EAAStrK,MAE7B,MACF,IAAK,sBACHkrK,EAAoB3L,EAAMgJ,GAC1B,MACF,IAAK,cACHuC,EAAYvL,EAAMgJ,GAClB,MACF,IAAK,eACHyC,EAAazL,EAAMgJ,GACnB,MACF,IAAK,eACHwC,EAAaxL,EAAMgJ,GACnB,MACF,IAAK,gBACH0C,EAAc1L,EAAMgJ,GAI5B,CAAE,MAAOj4H,GACP,GAAIA,aAAcmiF,EAAY4G,qBAC5B,MAAM/oF,GAER,EAAI6S,EAAMhhD,MAAM,sBAAwBmuC,GACxC,QACF,CAKF,OAHKuvH,GAAW0L,IACd1L,EAAU0L,GAER1L,EACK4L,EAAWlM,EAAM5P,EAAkBkQ,GAErCN,CACT,CACA16J,eAAe4mK,EAAWlM,EAAM5P,EAAkBkQ,GAEhD,GADAN,EAAKM,cAAgB6L,EAAkB7L,EAASlQ,GAChB,IAA5B4P,EAAKgK,mBAA0B,CACjC,MAAMoC,EAAqBpM,EAAKM,QAAQyJ,gBACxC,QAAS5pK,EAAI,EAAGA,EAAIisK,EAAmBjvK,OAAQgD,IAC7C6/J,EAAK+J,gBAAgB5pK,GAAKisK,EAAmBjsK,GAAGoE,QAElDy7J,EAAKgK,mBAAqBhK,EAAKM,QAAQ0J,kBACzC,CAMA,OALAhK,EAAKM,QAAQ3oK,SAAQ,SAAUyM,EAAK3M,GAC7BuoK,EAAKn/H,SAASz8B,IACjB47J,EAAK0K,OAAOtmK,EAAK47J,EAAKM,QAAQllC,OAAOh3H,GAEzC,IACO47J,CACT,CACA16J,eAAe6mK,EAAkB1rK,EAAM2vJ,GACrC,GAAa,eAAT3vJ,EACF,OAAO,IAAIy/J,GAAa,EAAO,GAC1B,GAAa,eAATz/J,EACT,OAAO,IAAIy/J,GAAa,EAAM,GAEhC,IAAK2J,EAAe5+J,SAASxK,GAC3B,MAAM,IAAIsC,MAAM,sBAAwBtC,GAE1C,IAAK2vJ,EACH,MAAM,IAAIrtJ,MAAM,8CAElB,MAAM,SACJ6zE,EAAQ,gBACRD,SACQy5E,EAAiB3vJ,GACrBu/J,EAAO,IAAI2J,GAAK,GACtB,GAAIhzF,IAAoB/yB,EAAMrX,oBAAoByM,OAChD,OAAO,IAAI4wH,EAAayC,kBAAmB11I,QAAQigD,EAAUopF,GAAMM,GAC1D4L,EAAWlM,EAAM5P,EAAkBkQ,KAG9C,GAAI3pF,IAAoB/yB,EAAMrX,oBAAoB4F,KAAM,CACtD,MAAM62H,EAAQ,IAAIjkC,EAAQkkC,MAAM,IAAInoE,EAAQogC,OAAOtqD,IACnD,OAAOk1F,EAAU9L,EAAMgJ,EAAO5Y,EAAkB,KAClD,CACA,MAAM,IAAIrtJ,MAAM,yCAAyC4zE,IAC3D,CA7OAxgF,EAAQ+pK,aAAeA,EAgQvB/pK,EAAQkqK,YAlBR,MACE,mBAAa7lK,EAAO,SAClBk2C,EAAQ,iBACR0/G,EAAgB,QAChBkQ,IAEA,GAAI5vH,aAAoByiF,EAAYsK,KAClC,OAAO0uC,EAAkBz7H,EAASjwC,KAAM2vJ,GACnC,GAAI1/G,aAAoBosF,EAAaM,WAAY,CACtD,MAAMkvC,QAAmBR,EAAU,IAAInC,EAAQ,IAAI5kC,EAAQkkC,MAAMv4H,GAAW0/G,EAAkBkQ,GAC9F,OAAIgM,EAAWnB,eACNgB,EAAkBG,EAAW7rK,KAAM2vJ,GAErCkc,CACT,CACA,MAAM,IAAIvpK,MAAM,qBAClB,EAE+B,EAI1B,CAACioC,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQk2K,sBAAmB,EAC3B,IAAIzoH,EAAQf,EAAoB,GAChC,SAAS0pH,EAASn1K,EAAGitB,GACnB,IAAIptB,EAAI,EACR,QAASkJ,EAAI,EAAGA,GAAKkkB,EAAMlkB,IACzBlJ,EAAIA,GAAK,EAAIG,EAAE+I,GAEjB,OAAOlJ,IAAM,CACf,CACA,SAASu1K,EAASp1K,EAAGitB,GACnB,OAAa,IAATA,EACKvhB,OAAOif,aAAa3qB,EAAE,GAAIA,EAAE,IAExB,IAATitB,EACKvhB,OAAOif,aAAa3qB,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IAE1C0L,OAAOif,gBAAgB3qB,EAAE4pB,SAAS,EAAGqD,EAAO,GACrD,CACA,SAASooJ,EAAOr1K,EAAG0e,EAAGuO,GACpB,IAAIlE,EAAI,EACR,QAAShgB,EAAIkkB,EAAMlkB,GAAK,EAAGA,IACzBggB,GAAK/oB,EAAE+I,GAAK2V,EAAE3V,GACd/I,EAAE+I,GAAS,IAAJggB,EACPA,IAAM,CAEV,CACA,SAASusJ,EAAOt1K,EAAGitB,GACjB,IAAIlE,EAAI,EACR,QAAShgB,EAAIkkB,EAAMlkB,GAAK,GAAKggB,EAAI,EAAGhgB,IAClCggB,GAAK/oB,EAAE+I,GACP/I,EAAE+I,GAAS,IAAJggB,EACPA,IAAM,CAEV,CACA,MAAMwsJ,EAAe,GAErB,MAAMC,EACJ,WAAA32J,CAAYiG,GACV5kB,KAAK+qB,OAASnG,EACd5kB,KAAKq8F,IAAM,EACXr8F,KAAK+N,IAAM6W,EAAK/e,OAChB7F,KAAKizJ,OAAS,IAAItpI,WANO,GAO3B,CACA,QAAA4rJ,GACE,OAAIv1K,KAAKq8F,KAAOr8F,KAAK+N,KACX,EAEH/N,KAAK+qB,OAAO/qB,KAAKq8F,MAC1B,CACA,UAAAm5E,GACE,IACIC,EADA91K,EAAI,EAER,EAAG,CACD,MAAM6e,EAAIxe,KAAKu1K,WACf,GAAI/2J,EAAI,EACN,MAAM,IAAI8tC,EAAMzX,YAAY,2BAE9B4gI,IAAa,IAAJj3J,GACT7e,EAAIA,GAAK,EAAQ,IAAJ6e,CACf,QAAUi3J,GACV,OAAO91K,CACT,CACA,UAAA+1K,GACE,MAAM/1K,EAAIK,KAAKw1K,aACf,OAAW,EAAJ71K,IAAUA,IAAM,GAAKA,IAAM,CACpC,CACA,OAAAg2K,CAAQpqJ,EAAKwB,GACXxB,EAAIT,IAAI9qB,KAAK+qB,OAAOrB,SAAS1pB,KAAKq8F,IAAKr8F,KAAKq8F,IAAMtvE,EAAO,IACzD/sB,KAAKq8F,KAAOtvE,EAAO,CACrB,CACA,aAAA6oJ,CAAcrqJ,EAAKwB,GACjB,IAAI0oJ,EACJ,MAAMr0K,EAAQpB,KAAKizJ,OACnB,IAAI4iB,EAAK,EACT,EAAG,CACD,MAAMr3J,EAAIxe,KAAKu1K,WACf,GAAI/2J,EAAI,EACN,MAAM,IAAI8tC,EAAMzX,YAAY,2BAE9B4gI,IAAa,IAAJj3J,GACTpd,EAAMy0K,KAAY,IAAJr3J,CAChB,QAAUi3J,GACV,IAAI5sK,EAAIkkB,EACNhC,EAAS,EACT+qJ,EAAa,EACf,KAAOjtK,GAAK,GAAG,CACb,KAAOitK,EAAa,GAAK10K,EAAMyE,OAAS,GACtCklB,GAAU3pB,IAAQy0K,IAAOC,EACzBA,GAAc,EAEhBvqJ,EAAI1iB,GAAc,IAATkiB,EACTliB,IACAkiB,IAAW,EACX+qJ,GAAc,CAChB,CACF,CACA,aAAAC,CAAcxqJ,EAAKwB,GACjB/sB,KAAK41K,cAAcrqJ,EAAKwB,GACxB,MAAMy6D,EAAmB,EAAZj8D,EAAIwB,GAAY,IAAM,EACnC,IAAIlE,EAAI,EACR,QAAShgB,EAAI,EAAGA,GAAKkkB,EAAMlkB,IACzBggB,GAAS,EAAJA,IAAU,EAAI0C,EAAI1iB,GACvB0iB,EAAI1iB,GAAKggB,GAAK,EAAI2+D,CAEtB,CACA,UAAAwuF,GACE,MAAMnsK,EAAM7J,KAAKw1K,aACfh+H,EAAM,IAAI7sC,MAAMd,GAClB,QAAShB,EAAI,EAAGA,EAAIgB,EAAKhB,IACvB2uC,EAAI3uC,GAAK7I,KAAKw1K,aAEhB,OAAOhqK,OAAOif,gBAAgB+sB,EAChC,EAgJF34C,EAAQk2K,iBA9IR,MACE,aAAM11I,CAAQza,EAAM8jJ,EAAMhiJ,GACxB,MAAM++E,EAAS,IAAI6vE,EAAiB1wJ,GAC9BkrG,EAASrqB,EAAO8vE,WACtB7M,EAAKzwE,YAAuB,EAAT63B,GACnB,IAAIk5C,EAAU,KACd,MAAM1mJ,EAAQ,IAAIqH,WAAW0rJ,GACvBtnK,EAAM,IAAI4b,WAAW0rJ,GACrB/xC,EAAO,IAAI35G,WAAW0rJ,GACtB9L,EAAW,IAAI5/I,WAAW0rJ,GAC1BjsJ,EAAM,IAAIO,WAAW0rJ,GAC3B,IAAI17H,EACAn7B,EACJ,MAAQA,EAAIinF,EAAO8vE,aAAe,GAAG,CACnC,MAAMxoK,EAAOyR,GAAK,EAClB,GAAa,IAATzR,EAAY,CACd,OAAY,GAAJyR,GACN,KAAK,EACHinF,EAAOuwE,aACP,MACF,KAAK,EACHhN,EAAUvjE,EAAOuwE,aAGrB,QACF,CACA,MAAMC,KAAkB,GAAJz3J,GACd03J,EAAe,GAAJ13J,EACjB,GAAI03J,EAAW,EAAIb,EACjB,MAAM,IAAI5pK,MAAM,+CAElB,MAAM0qK,EAAe,EACfC,EAAgB3wE,EAAO+vE,aAC7B,OAAQzoK,GACN,KAAK,EACH04F,EAAOkwE,QAAQrzJ,EAAO4zJ,GACtBzwE,EAAOmwE,cAAc7nK,EAAKmoK,GAC1Bf,EAAOpnK,EAAKuU,EAAO4zJ,GACnBxN,EAAKiK,kBAAkBuD,EAAW,EAAGjB,EAAS3yJ,EAAO4zJ,GAAWjB,EAASlnK,EAAKmoK,IAC9E,QAASrtK,EAAI,EAAGA,EAAIutK,EAAevtK,IACjCusK,EAAOrnK,EAAKmoK,GACZzwE,EAAOmwE,cAActzJ,EAAO4zJ,GAC5Bf,EAAO7yJ,EAAOvU,EAAKmoK,GACnBzwE,EAAOmwE,cAAc7nK,EAAKmoK,GAC1Bf,EAAOpnK,EAAKuU,EAAO4zJ,GACnBxN,EAAKiK,kBAAkBuD,EAAW,EAAGjB,EAAS3yJ,EAAO4zJ,GAAWjB,EAASlnK,EAAKmoK,IAEhF,MACF,KAAK,EACHzwE,EAAOkwE,QAAQrzJ,EAAO4zJ,GACtBzwE,EAAOmwE,cAAc7nK,EAAKmoK,GAC1Bf,EAAOpnK,EAAKuU,EAAO4zJ,GACnBzwE,EAAO+vE,aACP,QAAS3sK,EAAI,EAAGA,EAAIutK,EAAevtK,IACjCusK,EAAOrnK,EAAKmoK,GACZzwE,EAAOmwE,cAActzJ,EAAO4zJ,GAC5Bf,EAAO7yJ,EAAOvU,EAAKmoK,GACnBzwE,EAAOmwE,cAAc7nK,EAAKmoK,GAC1Bf,EAAOpnK,EAAKuU,EAAO4zJ,GACnBzwE,EAAO+vE,aAET,MACF,KAAK,EACH/vE,EAAOkwE,QAAQryC,EAAM4yC,GACrBv8H,EAAO8rD,EAAO+vE,aACd9M,EAAK0K,OAAO6B,EAAS3xC,EAAM4yC,GAAWv8H,GACtC,QAAS9wC,EAAI,EAAGA,EAAIutK,EAAevtK,IACjCusK,EAAO9xC,EAAM4yC,GACRD,IACHxwE,EAAOmwE,cAAcxsJ,EAAK8sJ,GAC1Bf,EAAO7xC,EAAMl6G,EAAK8sJ,IAEpBv8H,EAAO8rD,EAAOiwE,cAAgB/7H,EAAO,GACrC+uH,EAAK0K,OAAO6B,EAAS3xC,EAAM4yC,GAAWv8H,GAExC,MACF,KAAK,EACH8rD,EAAOkwE,QAAQrzJ,EAAO4zJ,GACtBzwE,EAAOmwE,cAAc7nK,EAAKmoK,GAC1Bf,EAAOpnK,EAAKuU,EAAO4zJ,GACnBv8H,EAAO8rD,EAAO+vE,aACd9M,EAAKoK,YAAYmC,EAAS3yJ,EAAO4zJ,GAAWjB,EAASlnK,EAAKmoK,GAAWv8H,GACrE,QAAS9wC,EAAI,EAAGA,EAAIutK,EAAevtK,IACjCusK,EAAOrnK,EAAKmoK,GACPD,EAIH3zJ,EAAMwI,IAAI/c,IAHV03F,EAAOmwE,cAActzJ,EAAO4zJ,GAC5Bf,EAAO7yJ,EAAOvU,EAAKmoK,IAIrBzwE,EAAOmwE,cAAc7nK,EAAKmoK,GAC1Bf,EAAOpnK,EAAKuU,EAAO4zJ,GACnBv8H,EAAO8rD,EAAO+vE,aACd9M,EAAKoK,YAAYmC,EAAS3yJ,EAAO4zJ,GAAWjB,EAASlnK,EAAKmoK,GAAWv8H,GAEvE,MACF,KAAK,EACH8rD,EAAOkwE,QAAQryC,EAAM6yC,GACrB1wE,EAAOkwE,QAAQpM,EAAU2M,GACzBxN,EAAK0K,OAAO6B,EAAS3xC,EAAM6yC,GAAejB,EAAS3L,EAAU2M,IAC7D,QAASrtK,EAAI,EAAGA,EAAIutK,EAAevtK,IACjCusK,EAAO9xC,EAAM6yC,GACRF,IACHxwE,EAAOmwE,cAAcxsJ,EAAK+sJ,GAC1BhB,EAAO7xC,EAAMl6G,EAAK+sJ,IAEpBf,EAAO7L,EAAU2M,GACjBzwE,EAAOswE,cAAc3sJ,EAAK8sJ,GAC1Bf,EAAO5L,EAAUngJ,EAAK8sJ,GACtBxN,EAAK0K,OAAO6B,EAAS3xC,EAAM6yC,GAAejB,EAAS3L,EAAU2M,IAE/D,MACF,KAAK,EACHzwE,EAAOkwE,QAAQrzJ,EAAO6zJ,GACtB1wE,EAAOmwE,cAAc7nK,EAAKooK,GAC1BhB,EAAOpnK,EAAKuU,EAAO6zJ,GACnB1wE,EAAOkwE,QAAQpM,EAAU2M,GACzBxN,EAAKsK,WAAWiC,EAAS3yJ,EAAO6zJ,GAAelB,EAASlnK,EAAKooK,GAAejB,EAAS3L,EAAU2M,IAC/F,QAASrtK,EAAI,EAAGA,EAAIutK,EAAevtK,IACjCusK,EAAOrnK,EAAKooK,GACPF,EAIH3zJ,EAAMwI,IAAI/c,IAHV03F,EAAOmwE,cAActzJ,EAAO6zJ,GAC5BhB,EAAO7yJ,EAAOvU,EAAKooK,IAIrB1wE,EAAOmwE,cAAc7nK,EAAKooK,GAC1BhB,EAAOpnK,EAAKuU,EAAO6zJ,GACnB1wE,EAAOkwE,QAAQpM,EAAU2M,GACzBxN,EAAKsK,WAAWiC,EAAS3yJ,EAAO6zJ,GAAelB,EAASlnK,EAAKooK,GAAejB,EAAS3L,EAAU2M,IAEjG,MACF,QACE,MAAM,IAAIzqK,MAAM,4CAA4CsB,KAElE,CACA,OAAIi8J,EACKtiJ,EAAOsiJ,GAETN,CACT,EAEyC,EAIpC,CAACh1H,EAAyB70C,EAAS0sD,KAI1CjsD,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ4yK,OAAS5yK,EAAQy1I,cAAgBz1I,EAAQ8yK,WAAQ,EACzD,IAAIrlH,EAAQf,EAAoB,GAC5BswE,EAActwE,EAAoB,GAClCqwE,EAAcrwE,EAAoB,GAClCi+C,EAAUj+C,EAAoB,GAC9B8qH,EAAmB9qH,EAAoB,IACvC+qH,EAAoB/qH,EAAoB,IACxCgrH,EAAgBhrH,EAAoB,IACpCirH,EAAgBjrH,EAAoB,IACpCkrH,EAAgBlrH,EAAoB,IACpCgvF,EAAehvF,EAAoB,IACnCmrH,EAAcnrH,EAAoB,IAClCorH,EAAcprH,EAAoB,IAClCqrH,EAAoBrrH,EAAoB,IACxCsrH,EAAqBtrH,EAAoB,IAc7C,MAAMkmH,EACJ,WAAA9yJ,EAAY,MACV+yJ,EAAK,KACLvyC,EAAI,aACJ23C,GAAe,EAAK,aACpB35C,GAAe,IAEfn9H,KAAK0xK,MAAQA,EACb1xK,KAAKm/H,KAAOA,EACZn/H,KAAK82K,aAAeA,EACpB92K,KAAKm9H,aAAeA,EACpBn9H,KAAK+2K,WAAaz3K,OAAO4D,OAAO,MAChClD,KAAKg3K,SAAW,EAChBh3K,KAAKi3K,QACP,CACA,MAAAA,GACEj3K,KAAKk3K,KAAOl3K,KAAK0xK,MAAMK,SACvB/xK,KAAKm3K,KAAOn3K,KAAK0xK,MAAMK,QACzB,CACA,KAAAnpK,GACM5I,KAAKm3K,gBAAgBt7C,EAAYwK,KAAyB,OAAlBrmI,KAAKm3K,KAAKhoG,KACpDnvE,KAAKk3K,KAAOl3K,KAAKm3K,KACjBn3K,KAAKm3K,KAAO,OAEZn3K,KAAKk3K,KAAOl3K,KAAKm3K,KACjBn3K,KAAKm3K,KAAOn3K,KAAK0xK,MAAMK,SAE3B,CACA,QAAAqF,GACE,IAEE,OADAp3K,KAAK4I,SACE,CACT,CAAE,MAAOlE,GACP,GAAIA,aAAak3H,EAAY4G,qBAC3B,MAAM99H,EAER,OAAO,CACT,CACF,CACA,MAAAqtK,CAAOsF,EAAkB,MACvB,MAAMH,EAAOl3K,KAAKk3K,KAElB,GADAl3K,KAAK4I,QACDsuK,aAAgBr7C,EAAYwK,IAC9B,OAAQ6wC,EAAK/nG,KACX,IAAK,KACH,OAAOnvE,KAAKs3K,gBAAgBD,GAC9B,IAAK,IACH,MAAM1hJ,EAAQ,GACd,OAAQ,EAAIkmG,EAAY8K,OAAO3mI,KAAKk3K,KAAM,MAAQl3K,KAAKk3K,OAASr7C,EAAYuK,KAC1EzwG,EAAM/zB,KAAK5B,KAAK+xK,OAAOsF,IAEzB,GAAIr3K,KAAKk3K,OAASr7C,EAAYuK,IAAK,CACjC,GAAIpmI,KAAKm9H,aACP,OAAOxnG,EAET,MAAM,IAAIimG,EAAY0G,mBAAmB,4BAC3C,CAEA,OADAtiI,KAAK4I,QACE+sB,EACT,IAAK,KACH,MAAMgtG,EAAO,IAAI9G,EAAY2E,KAAKxgI,KAAKm/H,MACvC,OAAQ,EAAItD,EAAY8K,OAAO3mI,KAAKk3K,KAAM,OAASl3K,KAAKk3K,OAASr7C,EAAYuK,KAAK,CAChF,KAAMpmI,KAAKk3K,gBAAgBr7C,EAAYsK,MAAO,EAC5C,EAAI75E,EAAMjhD,MAAM,mDAChBrL,KAAK4I,QACL,QACF,CACA,MAAMkE,EAAM9M,KAAKk3K,KAAK/tK,KAEtB,GADAnJ,KAAK4I,QACD5I,KAAKk3K,OAASr7C,EAAYuK,IAC5B,MAEFzD,EAAK73G,IAAIhe,EAAK9M,KAAK+xK,OAAOsF,GAC5B,CACA,GAAIr3K,KAAKk3K,OAASr7C,EAAYuK,IAAK,CACjC,GAAIpmI,KAAKm9H,aACP,OAAOwF,EAET,MAAM,IAAI/G,EAAY0G,mBAAmB,iCAC3C,CACA,SAAQzG,EAAY8K,OAAO3mI,KAAKm3K,KAAM,UAC7Bn3K,KAAK82K,aAAe92K,KAAKu3K,WAAW50C,EAAM00C,GAAmB10C,GAEtE3iI,KAAK4I,QACE+5H,GACT,QACE,OAAOu0C,EAGb,GAAIp+H,OAAOC,UAAUm+H,GAAO,CAC1B,GAAIp+H,OAAOC,UAAU/4C,KAAKk3K,QAAS,EAAIr7C,EAAY8K,OAAO3mI,KAAKm3K,KAAM,KAAM,CACzE,MAAMxgJ,EAAMklG,EAAY2C,IAAI/9H,IAAIy2K,EAAMl3K,KAAKk3K,MAG3C,OAFAl3K,KAAK4I,QACL5I,KAAK4I,QACE+tB,CACT,CACA,OAAOugJ,CACT,CACA,MAAoB,iBAATA,GACLG,EACKA,EAAgBG,cAAcN,GAIlCA,CACT,CACA,0BAAAO,CAA2BhyE,GACzB,MAMM,cACFiyE,GACE13K,KAAK0xK,MACTiG,EAAWlyE,EAAOpJ,IAEpB,IACE6nC,EACA0zC,EAFEnyJ,EAAQ,EAGZ,MAAoC,KAA5By+G,EAAKz+B,EAAO6iC,YAClB,GAAc,IAAV7iH,EACFA,EAhBM,KAgBEy+G,EAAW,EAAI,OAClB,GAAc,IAAVz+G,EACTA,EAjBE,KAiBMy+G,EAAW,EAAI,OAEvB,GAlBM,KAkBFA,GAjBD,KAiBiBA,GAhBjB,KAgB8BA,EAAW,CAC1C0zC,EAAanyE,EAAOpJ,IACpB,MAAMw7E,EAAiBpyE,EAAOijC,UAZ9B,IAaMzwF,EAAK4/H,EAAehyK,OAC1B,GAAW,IAAPoyC,EACF,MAEF,QAASpvC,EAAI,EAAGA,EAAIovC,EAAIpvC,IAEtB,GADAq7H,EAAK2zC,EAAehvK,IAvBpB,IAwBIq7H,GAxBJ,IAwBkB2zC,EAAehvK,EAAI,KA1BtC,KA6BKq7H,GA5BL,KA4BkBA,IAAcA,EA9B7B,IA8B2CA,EAAK,KAAO,CACvDz+G,EAAQ,EACR,KACF,CAEF,GAAc,IAAVA,EACF,SAEF,IAAKiyJ,EAAe,EAClB,EAAIprH,EAAMhhD,MAAM,oEAChB,QACF,CACA,MAAMwsK,EAAW,IAAInG,EAAM,IAAInoE,EAAQogC,OAAOiuC,EAAe5qK,SAAUyqK,GACvEI,EAASC,eAAiB,OAC1B,IAAI7J,EAAU,EACd,OAAa,CACX,MAAM8J,EAAUF,EAAS/F,SACzB,GAAIiG,IAAYn8C,EAAYuK,IAAK,CAC/B3gH,EAAQ,EACR,KACF,CACA,GAAIuyJ,aAAmBn8C,EAAYwK,IAAnC,CACE,MAAM4xC,EAAeP,EAAcM,EAAQ7oG,KAC3C,IAAK8oG,EAAc,CACjBxyJ,EAAQ,EACR,KACF,CAAO,GAAIwyJ,EAAa9J,aAAeD,GAAW+J,EAAa/J,QAAUA,IAAY+J,EAAa/J,QAChG,MAEFA,EAAU,CAEZ,MACAA,GACF,CACA,GAAc,IAAVzoJ,EACF,KAEJ,MACEA,EAAQ,GAIF,IAARy+G,KACF,EAAI53E,EAAMhhD,MAAM,+FACZssK,KACF,EAAItrH,EAAMhhD,MAAM,4DAChBm6F,EAAOqjC,OAAOrjC,EAAOpJ,IAAMu7E,MAG/B,IAAIM,EAAY,EAOhB,OANAzyE,EAAOqjC,MAAMovC,GACbh0C,EAAKz+B,EAAO+iC,WACZ/iC,EAAOqjC,KAAKovC,IACP,EAAIt8C,EAAYqI,cAAcC,IACjCg0C,IAEKzyE,EAAOpJ,IAAM67E,EAAYP,CAClC,CACA,4BAAAQ,CAA6B1yE,GAC3B,MAAMkyE,EAAWlyE,EAAOpJ,IACxB,IACE79E,EACA45J,EAFEC,GAAW,EAGf,MAAmC,KAA3B75J,EAAIinF,EAAO6iC,YACjB,GAAU,MAAN9pH,EAAJ,CAGA,OAAQinF,EAAO6iC,WACb,KAAK,EACH,MACF,KAAK,IACH7iC,EAAOqjC,MAAM,GACb,MACF,KAAK,IACHuvC,GAAW,EACX,MACF,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACHD,EAAe3yE,EAAOkjC,YAClByvC,EAAe,EACjB3yE,EAAOqjC,KAAKsvC,EAAe,GAE3B3yE,EAAOqjC,MAAM,GAInB,GAAIuvC,EACF,KAzDF,CA4DF,MAAMxyK,EAAS4/F,EAAOpJ,IAAMs7E,EAC5B,OAAW,IAAPn5J,IACF,EAAI8tC,EAAMhhD,MAAM,oFAChBm6F,EAAOqjC,MAAMjjI,GACN7F,KAAKy3K,2BAA2BhyE,KAEzCzlG,KAAKs4K,mBAAmB7yE,GACjB5/F,EACT,CACA,gCAAA0yK,CAAiC9yE,GAC/B,MAEMkyE,EAAWlyE,EAAOpJ,IACxB,IAAI6nC,EACJ,MAAoC,KAA5BA,EAAKz+B,EAAO6iC,YAClB,GALY,MAKRpE,EAAc,CAChB,MAAMs0C,EAAW/yE,EAAOpJ,IAExB,IADA6nC,EAAKz+B,EAAO+iC,YACZ,EAAW5M,EAAYqI,cAAcC,IACnCz+B,EAAOqjC,OACP5E,EAAKz+B,EAAO+iC,WAEd,GAXG,KAWCtE,EAAW,CACbz+B,EAAOqjC,OACP,KACF,CACA,GAAIrjC,EAAOpJ,IAAMm8E,EAAU,CACzB,MAAMC,EAAUhzE,EAAOijC,UAAU,GACjC,GAAmB,KAAf+vC,EAAQ,IAA8B,KAAfA,EAAQ,GACjC,KAEJ,CACF,CAEF,MAAM5yK,EAAS4/F,EAAOpJ,IAAMs7E,EAC5B,OAAY,IAARzzC,IACF,EAAI53E,EAAMhhD,MAAM,wFAChBm6F,EAAOqjC,MAAMjjI,GACN7F,KAAKy3K,2BAA2BhyE,KAEzCzlG,KAAKs4K,mBAAmB7yE,GACjB5/F,EACT,CACA,iCAAA6yK,CAAkCjzE,GAChC,MACMkyE,EAAWlyE,EAAOpJ,IACxB,IAAI6nC,EACJ,MAAoC,KAA5BA,EAAKz+B,EAAO6iC,YAHT,KAILpE,IAIN,MAAMr+H,EAAS4/F,EAAOpJ,IAAMs7E,EAC5B,OAAY,IAARzzC,IACF,EAAI53E,EAAMhhD,MAAM,yFAChBm6F,EAAOqjC,MAAMjjI,GACN7F,KAAKy3K,2BAA2BhyE,KAEzCzlG,KAAKs4K,mBAAmB7yE,GACjB5/F,EACT,CACA,kBAAAyyK,CAAmB7yE,GAGjB,IACEy+B,EADEz+G,EAAQ,EAEZ,MAAoC,KAA5By+G,EAAKz+B,EAAO6iC,YAClB,GAAc,IAAV7iH,EACFA,EANM,KAMEy+G,EAAW,EAAI,OAClB,GAAc,IAAVz+G,EACTA,EAPE,KAOMy+G,EAAW,EAAI,OAClB,GAAc,IAAVz+G,EACT,KAGN,CACA,eAAA6xJ,CAAgBD,GACd,MAAM3F,EAAQ1xK,KAAK0xK,MACbjsE,EAASisE,EAAMjsE,OACfkzE,EAAUr5K,OAAO4D,OAAO,MAC9B,IAAI01K,EACJ,OAAQ,EAAI/8C,EAAY8K,OAAO3mI,KAAKk3K,KAAM,OAASl3K,KAAKk3K,OAASr7C,EAAYuK,KAAK,CAChF,KAAMpmI,KAAKk3K,gBAAgBr7C,EAAYsK,MACrC,MAAM,IAAI75E,EAAMzX,YAAY,wCAE9B,MAAM/nC,EAAM9M,KAAKk3K,KAAK/tK,KAEtB,GADAnJ,KAAK4I,QACD5I,KAAKk3K,OAASr7C,EAAYuK,IAC5B,MAEFuyC,EAAQ7rK,GAAO9M,KAAK+xK,OAAOsF,EAC7B,EACmC,IAA/B3F,EAAMmH,sBACRD,EAAanzE,EAAOpJ,IAAMq1E,EAAMmH,qBAElC,MAAM3yK,EAASlG,KAAKm/H,KAAKwU,WAAWglC,EAAQ53H,GAAK43H,EAAQG,QACzD,IAAIlhC,EACJ,GAAI1xI,aAAkB21H,EAAYsK,KAChCyR,EAAa1xI,EAAOiD,UACf,GAAIwB,MAAMC,QAAQ1E,GAAS,CAChC,MAAM6yK,EAAa/4K,KAAKm/H,KAAKwU,WAAWztI,EAAO,IAC3C6yK,aAAsBl9C,EAAYsK,OACpCyR,EAAamhC,EAAW5vK,KAE5B,CACA,MAAMwuK,EAAWlyE,EAAOpJ,IACxB,IAAIx2F,EAiBA6yD,EAhBJ,OAAQk/E,GACN,IAAK,MACL,IAAK,YACH/xI,EAAS7F,KAAKm4K,6BAA6B1yE,GAC3C,MACF,IAAK,MACL,IAAK,gBACH5/F,EAAS7F,KAAKu4K,iCAAiC9yE,GAC/C,MACF,IAAK,MACL,IAAK,iBACH5/F,EAAS7F,KAAK04K,kCAAkCjzE,GAChD,MACF,QACE5/F,EAAS7F,KAAKy3K,2BAA2BhyE,GAG7C,GAAI5/F,EAlZoB,KAkZY+yK,EAAa,EAAG,CAClD,MAAMI,EAAmBvzE,EAAOpJ,IAChCoJ,EAAOpJ,IAAMq1E,EAAMmH,oBACnBngH,EApZN,SAAgCztC,GAC9B,MAAMyuB,EAAS,GACbzB,EAAKhtB,EAAMplB,OACb,IAAIgD,EAAI,EACR,KAAOA,EAAIovC,EAAK,GACdyB,EAAO93C,KAAKqpB,EAAMpiB,MAAQ,EAAIoiB,EAAMpiB,MAKtC,OAHIA,EAAIovC,GACNyB,EAAO93C,KAAKqpB,EAAMpiB,IAEbovC,EAAK,IAAMzsC,OAAOif,aAAa1qB,MAAM,KAAM25C,EACpD,CAyYiBu/H,CAAuBxzE,EAAO8iC,SAASqwC,EAAa/yK,IAC/D4/F,EAAOpJ,IAAM28E,EACb,MAAME,EAAal5K,KAAK+2K,WAAWr+G,GACnC,QAAmB,IAAfwgH,EAIF,OAHAl5K,KAAKm3K,KAAOt7C,EAAYwK,IAAI5lI,IAAI,MAChCT,KAAK4I,QACLswK,EAAW/tJ,QACJ+tJ,CAEX,CACA,MAAMv2C,EAAO,IAAI9G,EAAY2E,KAAKxgI,KAAKm/H,MACvC,UAAWryH,KAAO6rK,EAChBh2C,EAAK73G,IAAIhe,EAAK6rK,EAAQ7rK,IAExB,IAAIywI,EAAc93C,EAAOujC,cAAc2uC,EAAU9xK,EAAQ88H,GAYzD,OAXI00C,IACF95B,EAAc85B,EAAgB8B,aAAa57B,EAAa13I,IAE1D03I,EAAcv9I,KAAKkG,OAAOq3I,EAAa5a,EAAM98H,GAC7C03I,EAAY5a,KAAOA,OACF,IAAbjqE,IACF6kF,EAAY7kF,SAAW,iBAAgB14D,KAAKg3K,SAC5Ch3K,KAAK+2K,WAAWr+G,GAAY6kF,GAE9Bv9I,KAAKm3K,KAAOt7C,EAAYwK,IAAI5lI,IAAI,MAChCT,KAAK4I,QACE20I,CACT,CACA,iBAAA67B,CAAkBzB,EAAUvkC,GAC1B,MAAM,OACJ3tC,GACEzlG,KAAK0xK,MACTjsE,EAAOpJ,IAAMs7E,EACb,MACMrkC,EAAkBF,EAAUvtI,OAClC,KAAO4/F,EAAOpJ,IAAMoJ,EAAO13F,KAAK,CAC9B,MAAMwlI,EAAY9tC,EAAOijC,UAHD,MAIlB8K,EAAaD,EAAU1tI,OAASytI,EACtC,GAAIE,GAAc,EAChB,MAEF,IAAIn3C,EAAM,EACV,KAAOA,EAAMm3C,GAAY,CACvB,IAAI3pH,EAAI,EACR,KAAOA,EAAIypH,GAAmBC,EAAUl3C,EAAMxyE,KAAOupH,EAAUvpH,IAC7DA,IAEF,GAAIA,GAAKypH,EAEP,OADA7tC,EAAOpJ,KAAOA,EACPoJ,EAAOpJ,IAAMs7E,EAEtBt7E,GACF,CACAoJ,EAAOpJ,KAAOm3C,CAChB,CACA,OAAQ,CACV,CACA,UAAA+jC,CAAW50C,EAAM00C,GACf,MAAM3F,EAAQ1xK,KAAK0xK,MACnB,IAAIjsE,EAASisE,EAAMjsE,OACnBisE,EAAM2H,iBACN,MAAM1B,EAAWlyE,EAAOpJ,IAAM,EAC9B,IAAIx2F,EAAS88H,EAAKliI,IAAI,UAOtB,GANKq4C,OAAOC,UAAUlzC,MACpB,EAAIymD,EAAMjhD,MAAM,eAAexF,GAAUA,EAAO6E,0BAChD7E,EAAS,GAEX4/F,EAAOpJ,IAAMs7E,EAAW9xK,EACxB6rK,EAAM4H,WACFt5K,KAAKo3K,aAAc,EAAIv7C,EAAY8K,OAAO3mI,KAAKm3K,KAAM,aACvDn3K,KAAK4I,YACA,CACL,MAAM2wK,EAAsB,IAAI5vJ,WAAW,CAAC,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,MAC5F,IAAI6vJ,EAAex5K,KAAKo5K,kBAAkBzB,EAAU4B,GACpD,GAAIC,EAAe,EAAG,CACpB,MAAMC,EAAiB,EACvB,QAAS5wK,EAAI,EAAGA,GAAK4wK,EAAgB5wK,IAAK,CACxC,MAAMkF,EAAMwrK,EAAoB1zK,OAASgD,EACnC6wK,EAAsBH,EAAoBtsK,MAAM,EAAGc,GACnD4rK,EAAc35K,KAAKo5K,kBAAkBzB,EAAU+B,GACrD,GAAIC,GAAe,EAAG,CACpB,MAAM1G,EAAWxtE,EAAOijC,UAAU36H,EAAM,GAAGA,GAC3C,KAAK,EAAI6tH,EAAYqI,cAAcgvC,GACjC,OAEF,EAAI3mH,EAAMjhD,MAAM,WAAU,EAAIihD,EAAMnW,eAAeujI,6CACnDF,EAAeG,EACf,KACF,CACF,CACA,GAAIH,EAAe,EACjB,MAAM,IAAIltH,EAAMzX,YAAY,6BAEhC,CACAhvC,EAAS2zK,EACT9H,EAAM4H,WACNt5K,KAAK4I,QACL5I,KAAK4I,OACP,CAQA,OAPA5I,KAAK4I,QACL68F,EAASA,EAAOujC,cAAc2uC,EAAU9xK,EAAQ88H,GAC5C00C,IACF5xE,EAAS4xE,EAAgB8B,aAAa1zE,EAAQ5/F,IAEhD4/F,EAASzlG,KAAKkG,OAAOu/F,EAAQk9B,EAAM98H,GACnC4/F,EAAOk9B,KAAOA,EACPl9B,CACT,CACA,MAAAv/F,CAAOu/F,EAAQk9B,EAAM98H,GACnB,IAAIK,EAASy8H,EAAKliI,IAAI,IAAK,UACvB4T,EAASsuH,EAAKliI,IAAI,KAAM,eAC5B,GAAIyF,aAAkB21H,EAAYsK,KAIhC,OAHIx7H,MAAMC,QAAQyJ,KAChB,EAAIi4C,EAAMhhD,MAAM,gEAEXtL,KAAK45K,WAAWn0E,EAAQv/F,EAAOiD,KAAMtD,EAAQwO,GAEtD,IAAIslK,EAAc9zK,EAClB,GAAI8E,MAAMC,QAAQ1E,GAAS,CACzB,MAAM2zK,EAAc3zK,EACd4zK,EAAczlK,EACpB,QAASxL,EAAI,EAAGovC,EAAK4hI,EAAYh0K,OAAQgD,EAAIovC,IAAMpvC,EAAG,CAEpD,GADA3C,EAASlG,KAAKm/H,KAAKwU,WAAWkmC,EAAYhxK,MACpC3C,aAAkB21H,EAAYsK,MAClC,MAAM,IAAI75E,EAAMzX,YAAY,oBAAoB3uC,MAElDmO,EAAS,KACL1J,MAAMC,QAAQkvK,IAAgBjxK,KAAKixK,IACrCzlK,EAASrU,KAAKm/H,KAAKwU,WAAWmmC,EAAYjxK,KAE5C48F,EAASzlG,KAAK45K,WAAWn0E,EAAQv/F,EAAOiD,KAAMwwK,EAAatlK,GAC3DslK,EAAc,IAChB,CACF,CACA,OAAOl0E,CACT,CACA,UAAAm0E,CAAWn0E,EAAQt8F,EAAMwwK,EAAatlK,GACpC,GAAoB,IAAhBslK,EAEF,OADA,EAAIrtH,EAAMhhD,MAAM,UAAUnC,cACnB,IAAIqgG,EAAQ2jC,WAErB,IACE,OAAQhkI,GACN,IAAK,KACL,IAAK,cACH,OAAIkL,EACK,IAAIuiK,EAAkBmD,gBAAgB,IAAIvD,EAAcwD,YAAYv0E,EAAQk0E,GAAcA,EAAatlK,GAEzG,IAAImiK,EAAcwD,YAAYv0E,EAAQk0E,GAC/C,IAAK,MACL,IAAK,YACH,IAAIM,EAAc,EAClB,OAAI5lK,GACEA,EAAOupD,IAAI,iBACbq8G,EAAc5lK,EAAO5T,IAAI,gBAEpB,IAAIm2K,EAAkBmD,gBAAgB,IAAIpD,EAAYuD,UAAUz0E,EAAQk0E,EAAaM,GAAcN,EAAatlK,IAElH,IAAIsiK,EAAYuD,UAAUz0E,EAAQk0E,EAAaM,GACxD,IAAK,MACL,IAAK,YACH,OAAO,IAAI1/B,EAAaqD,WAAWn4C,EAAQk0E,EAAatlK,GAC1D,IAAK,MACL,IAAK,YACH,OAAO,IAAIqiK,EAAYyD,UAAU10E,EAAQk0E,EAAatlK,GACxD,IAAK,MACL,IAAK,gBACH,OAAO,IAAIgiK,EAAiB+D,cAAc30E,EAAQk0E,GACpD,IAAK,MACL,IAAK,iBACH,OAAO,IAAIrD,EAAkB+D,eAAe50E,EAAQk0E,GACtD,IAAK,MACL,IAAK,iBACH,OAAO,IAAIpD,EAAc+D,eAAe70E,EAAQk0E,EAAatlK,GAC/D,IAAK,KACL,IAAK,kBACH,OAAO,IAAIwiK,EAAmB0D,gBAAgB90E,EAAQk0E,GACxD,IAAK,cACH,OAAO,IAAIlD,EAAc+D,YAAY/0E,EAAQk0E,EAAatlK,GAG9D,OADA,EAAIi4C,EAAMhhD,MAAM,WAAWnC,wBACpBs8F,CACT,CAAE,MAAOhsD,GACP,GAAIA,aAAcmiF,EAAY4G,qBAC5B,MAAM/oF,EAGR,OADA,EAAI6S,EAAMhhD,MAAM,oBAAoBmuC,MAC7B,IAAI+vD,EAAQ2jC,UACrB,CACF,EAEFtuI,EAAQ4yK,OAASA,EACjB,MAAMgJ,EAAe,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,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,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,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,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,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,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,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,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,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AAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,MAAO,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,KAAM,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,IACx3IC,EAAc,CAAC,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,CAAC,IAdzB,GAcwC,CAAC,IAdzC,GAcwD,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,MAAO,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,KAC53CC,EAAc,CAAC,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,KAAM,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,GAAI,KAAM,CAAC,GAAI,KAAM,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,IAAK,CAAC,GAAI,GAAI,CAAC,GAAI,GAAI,CAAC,GAAI,GAAI,CAAC,GAAI,GAAI,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,IAAK,CAAC,EAAG,KACjwDC,EAAc,CAAC,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,EAAE,GAAI,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAAI,CAAC,EAAG,GAA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AAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,SAClSikF,EAAkB,CAAC,IAAIjkF,WAAW,CAAC,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAA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,EACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,MACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,GACX,CACDH,GAAI,KACJC,KAAM,GACNC,KAAM,GACNC,WAAY,G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CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAS,OAAU,CAAC,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,OAAS,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,QAAU,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,KAAQ,KAAQ,KAAQ,MAAQ,OAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,KAAQ,MAAS,CAAC,MAAS,OAAU,CAAC,MAAS,OAAU,CAAC,MAAS,OAAU,CAAC,OAAS,OAAS,OAAS,OAAS,OAAS,QAAU,CAAC,OAAS,QAAU,CAAC,QAAS,SAAU,CAAC,MAAQ,MAAQ,OAAS,QAAU,CAAC,OAAS,QAAU,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAS,MAAS,MAAS,MAAS,MAAS,OAAU,CAAC,MAAS,OAAU,CAAC,MAAS,OAAU,CAAC,MAAS,OAAU,CAAC,MAAS,OAAU,CAAC,MAAS,OAAU,CAAC,MAAS,OAAU,CAAC,MAAS,OAAU,CAAC,OAAS,QAAU,CAAC,MAAS,MAAS,MAAS,OAAU,CAAC,OAAS,QAAU,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,KAAQ,MAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,MAAQ,OAAS,CAAC,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IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,GACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,IAAM,IACRA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,MACTA,EAAE,KAAO,MACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,MACTA,EAAE,KAAO,KACTA,EAAE,KAAO,KACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,IACTA,EAAE,KAAO,MACTA,EAAE,KAAO,MACTA,EAAE,KAAO,MACTA,EAAE,KAAO,MACTA,EAAE,KAAO,MACTA,EAAE,KAAO,MACTA,EAAE,KAAO,MACTA,EAAE,KAAO,MACTA,EAAE,KAAO,MACTA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,IACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,MACVA,EAAE,MAAQ,MACVA,EAAE,MAAQ,MACVA,EAAE,MAAQ,MACVA,EAAE,MAAQ,MACVA,EAAE,MAAQ,MACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,MAAQ,KACVA,EAAE,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,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,EAAG,EAAG,MAAQ,MAAQ,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,EAAG,EAAG,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,EAAG,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,QAAS,QAAS,OAAS,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,EAAG,OAAS,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,EAAG,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,MAAQ,OAAS,GAAK,OAAS,OAAS,OAAS,OAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,OAAS,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAMhuJtmX,EAAQumX,mBAJmB,CACzBl6P,WAAY,OACZs6F,QAAS,OAIX3mN,EAAQ0mX,yBADyB,CAAC,OAAQ,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAO,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAQ,OAAS,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,EAAG,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,MAAQ,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,QAAS,QAAS,OAAS,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,EAAG,OAAS,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAQ,QAAS,OAAS,QAAS,EAAG,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,MAAQ,OAAS,GAAK,OAAS,OAAS,OAAS,OAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,OAAS,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAM9wJ1mX,EAAQ2mX,yBAJyB,CAC/Bt6P,WAAY,OACZs6F,QAAS,OAIX3mN,EAAQwmX,qBADqB,CAAC,OAAQ,EAAG,EAAG,EAAG,QAAS,OAAQ,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,MAAQ,MAAQ,MAAQ,OAAS,MAAQ,OAAS,QAAS,MAAQ,MAAQ,QAAS,QAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,MAAQ,MAAQ,QAAS,OAAS,QAAS,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAS,EAAG,QAAS,EAAG,OAAS,KAAO,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,MAAQ,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,EAAG,EAAG,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,QAAS,EAAG,EAAG,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,MAAQ,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,EAAG,EAAG,OAAS,MAAQ,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,EAAG,OAAQ,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,MAAQ,OAAS,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,KAAO,OAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,QAAS,MAAQ,OAAS,OAAS,MAAQ,KAAO,QAAS,OAAS,OAAS,OAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,QAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,EAAG,EAAG,OAAS,OAAS,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAQ,OAAQ,OAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,OAAQ,OAAQ,QAAS,OAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,EAAG,OAAS,EAAG,QAAS,OAAS,OAAS,OAAS,KAAO,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,EAAG,OAAS,MAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,MAAQ,OAAS,GAAK,OAAS,OAAS,OAAS,OAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,OAAQ,OAAS,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAM/rJxmX,EAAQymX,qBAJqB,CAC3Bp6P,WAAY,OACZs6F,QAAS,OAIX3mN,EAAQomX,sBADsB,CAAC,OAAQ,EAAG,EAAG,EAAG,QAAS,OAAQ,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,MAAQ,OAAS,OAAS,MAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAS,EAAG,QAAS,EAAG,OAAS,KAAO,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,QAAS,EAAG,EAAG,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,MAAQ,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,OAAS,MAAQ,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,EAAG,OAAQ,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,MAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG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S,QAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,QAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,QAAS,OAAQ,QAAS,OAAQ,QAAS,QAAS,QAAS,OAAS,QAAS,OAAQ,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,MAAQ,MAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,MAAQ,QAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,EAAG,QAAS,EAAG,QAAS,EAAG,OAAQ,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,EAAG,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAQ,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,MAAQ,EAAG,OAAQ,QAAS,QAAS,OAAS,QAAS,OAAQ,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAQ,QAAS,OAAS,OAAS,OAAS,MAAQ,QAAS,QAAS,QAAS,EAAG,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAQ,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,MAAQ,QAAS,OAAQ,QAAS,OAAS,QAAS,QAAS,EAAG,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,EAAG,QAAS,MAAQ,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,MAAQ,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,EAAG,OAAS,QAAS,QAAS,MAAQ,OAAQ,OAAS,EAAG,QAAS,OAAS,EAAG,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAQ,OAAS,OAAQ,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,EAAG,EAAG,QAAS,OAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,EAAG,EAAG,OAAS,EAAG,EAAG,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,QAAS,QAAS,QAAS,QAAS,QAAS,EAAG,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,IAAK,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,EAAG,OAAS,OAAS,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,QAAS,MAAQ,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAMrjLtnX,EAAQunX,qBAJqB,CAC3Bl7P,WAAY,IACZs6F,QAAS,IAIX3mN,EAAQ0nX,2BAD2B,CAAC,OAAS,EAAG,EAAG,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAQ,OAAS,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,QAAS,QAAS,QAAS,QAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAQ,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAQ,OAAQ,OAAS,OAAQ,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,EAAG,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,EAAG,EAAG,OAAS,EAAG,OAAS,OAAQ,OAAS,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,QAAS,OAAQ,QAAS,OAAQ,QAAS,QAAS,QAAS,OAAS,QAAS,OAAQ,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,MAAQ,MAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,MAAQ,QAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,EAAG,QAAS,EAAG,QAAS,EAAG,OAAQ,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,QAAS,OAAS,OAAS,OAAS,MAAQ,OAAQ,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAQ,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,EAAG,OAAQ,QAAS,OAAS,QAAS,QAAS,OAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,EAAG,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAQ,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAQ,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,OAAS,EAAG,QAAS,EAAG,EAAG,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,MAAQ,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,EAAG,EAAG,OAAS,EAAG,EAAG,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,EAAG,EAAG,EAAG,QAAS,EAAG,EAAG,OAAS,EAAG,QAAS,QAAS,QAAS,QAAS,QAAS,EAAG,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,IAAK,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,EAAG,OAAS,OAAS,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,QAAS,MAAQ,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAM9jL1nX,EAAQ2nX,2BAJ2B,CACjCt7P,WAAY,KACZs6F,QAAS,IAIX3mN,EAAQwnX,uBADuB,CAAC,OAAS,EAAG,EAAG,OAAQ,OAAQ,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAQ,OAAS,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,EAAG,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAQ,EAAG,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAQ,OAAS,EAAG,OAAS,EAAG,EAAG,EAAG,QAAS,OAAQ,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,EAAG,EAAG,OAAS,EAAG,MAAQ,OAAQ,OAAS,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,EAAG,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,EAAG,OAAS,EAAG,OAAS,EAAG,OAAS,EAAG,OAAS,OAAQ,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAQ,OAAQ,OAAS,QAAS,EAAG,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,QAAS,EAAG,QAAS,EAAG,QAAS,EAAG,QAAS,OAAQ,QAAS,OAAS,QAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,EAAG,QAAS,QAAS,EAAG,QAAS,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,OAAS,EAAG,OAAS,QAAS,QAAS,QAAS,EAAG,QAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAQ,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,QAAS,QAAS,EAAG,OAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,EAAG,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,EAAG,OAAQ,OAAS,QAAS,QAAS,EAAG,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,QAAS,QAAS,OAAQ,OAAQ,EAAG,QAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,MAAQ,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAQ,QAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,EAAG,OAAS,EAAG,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAQ,EAAG,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,EAAG,OAAS,EAAG,EAAG,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,QAAS,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,EAAG,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,EAAG,QAAS,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,QAAS,QAAS,QAAS,MAAQ,QAAS,EAAG,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,IAAK,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,EAAG,OAAS,OAAS,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,QAAS,MAAQ,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAM56KxnX,EAAQynX,uBAJuB,CAC7Bp7P,WAAY,KACZs6F,QAAS,IAIX3mN,EAAQonX,wBADwB,CAAC,OAAS,EAAG,EAAG,OAAQ,OAAQ,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAQ,OAAS,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,EAAG,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAQ,EAAG,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAQ,OAAS,EAAG,OAAS,EAAG,EAAG,EAAG,QAAS,OAAQ,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,EAAG,EAAG,OAAS,EAAG,MAAQ,OAAQ,OAAS,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,EAAG,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,EAAG,OAAS,EAAG,OAAS,EAAG,OAAS,EAAG,OAAS,QAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAQ,OAAQ,QAAS,QAAS,EAAG,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,QAAS,EAAG,QAAS,EAAG,QAAS,EAAG,QAAS,OAAQ,QAAS,OAAS,QAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,EAAG,QAAS,QAAS,EAAG,QAAS,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,OAAS,EAAG,OAAS,QAAS,QAAS,QAAS,EAAG,QAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAQ,OAAS,QAAS,QAAS,OAAS,QAAS,OAAQ,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,EAAG,OAAQ,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,OAAS,OAAS,EAAG,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,EAAG,QAAS,OAAS,QAAS,QAAS,EAAG,MAAQ,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAQ,EAAG,OAAS,OAAS,EAAG,QAAS,OAAS,MAAQ,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,MAAQ,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAQ,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,OAAS,EAAG,OAAS,EAAG,OAAQ,EAAG,QAAS,QAAS,OAAS,OAAQ,EAAG,QAAS,QAAS,MAAQ,EAAG,QAAS,OAAS,OAAS,OAAS,OAAQ,MAAQ,EAAG,OAAS,OAAQ,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,EAAG,OAAS,EAAG,EAAG,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,QAAS,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,EAAG,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,QAAS,QAAS,QAAS,MAAQ,QAAS,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,IAAK,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,EAAG,OAAS,OAAS,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,QAAS,MAAQ,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAMj3KpnX,EAAQqnX,wBAJwB,CAC9Bh7P,WAAY,IACZs6F,QAAS,GAE8C,EAIlD,CAAC9xK,EAAyB70C,KAIjCS,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQqlX,4BAA8BrlX,EAAQslX,6BAA+BtlX,EAAQ6lX,2BAA6B7lX,EAAQ8lX,4BAA8B9lX,EAAQylX,yBAA2BzlX,EAAQ0lX,0BAA4B1lX,EAAQimX,+BAAiCjmX,EAAQkmX,qCAAkC,EAElTlmX,EAAQylX,yBADyB,CAAC,IAAK,EAAG,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,KAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAM,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAG73GzlX,EAAQ0lX,0BAD0B,EAAE,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OAAQ,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAGphH1lX,EAAQimX,+BAD+B,CAAC,IAAK,EAAG,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,KAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAGj4GjmX,EAAQkmX,gCADgC,EAAE,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OAAQ,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAG1hHlmX,EAAQ6lX,2BAD2B,CAAC,IAAK,EAAG,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,KAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAG53G7lX,EAAQ8lX,4BAD4B,EAAE,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OAAQ,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAGthH9lX,EAAQqlX,4BAD4B,CAAC,IAAK,EAAG,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,KAAM,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAM,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAG/3GrlX,EAAQslX,6BAD6B,EAAE,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OAAQ,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EACp9G,EAI5D,CAACzwU,EAAyB70C,KAIjCS,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQulX,wBAA0BvlX,EAAQolX,wBAA0BplX,EAAQ+lX,uBAAyB/lX,EAAQ4lX,uBAAyB5lX,EAAQ2lX,qBAAuB3lX,EAAQmmX,2BAA6BnmX,EAAQgmX,2BAA6BhmX,EAAQwlX,0BAAuB,EAE9QxlX,EAAQwlX,qBADqB,CAAC,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAO,MAAQ,OAAS,OAAS,OAAQ,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,KAAO,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAQ,MAAQ,QAAS,OAAS,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,EAAG,OAAS,OAAS,OAAS,EAAG,QAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,QAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAQ,OAAS,OAAQ,OAAS,OAAQ,OAAS,OAAQ,OAAS,KAAO,QAAS,OAAS,OAAQ,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,MAAO,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,KAAO,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,EAAG,EAAG,MAAQ,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,KAAO,MAAQ,KAAO,MAAQ,KAAO,EAAG,OAAS,OAAS,OAAS,KAAO,MAAQ,OAAS,MAAQ,EAAG,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,MAAQ,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAQ,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,QAAS,OAAQ,OAAS,MAAQ,OAAS,OAAS,QAAS,MAAQ,OAAS,MAAQ,EAAG,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,MAAQ,OAAS,OAAS,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,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,KAAO,KAAO,KAAO,OAAS,OAAS,OAAS,EAAG,MAAO,EAAG,EAAG,OAAS,OAAS,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,IAAM,EAAG,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,OAAQ,QAAS,EAAG,EAAG,QAAS,QAAS,QAAS,EAAG,QAAS,QAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAMh7IxlX,EAAQ2lX,qBAJqB,CAC3Bt5P,WAAY,IACZs6F,QAAS,IAIX3mN,EAAQgmX,2BAD2B,CAAC,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,GAAK,OAAS,MAAQ,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,KAAO,OAAS,KAAO,EAAG,EAAG,OAAS,KAAO,EAAG,EAAG,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,GAAK,OAAS,GAAK,OAAS,GAAK,EAAG,OAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,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,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,KAAO,KAAO,KAAO,MAAQ,MAAQ,OAAS,EAAG,KAAM,EAAG,EAAG,OAAS,OAAS,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,KAAO,EAAG,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,EAAG,EAAG,QAAS,QAAS,QAAS,EAAG,QAAS,QAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAM39IhmX,EAAQmmX,2BAJ2B,CACjC95P,WAAY,IACZs6F,QAAS,IAIX3mN,EAAQ4lX,uBADuB,CAAC,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAQ,QAAS,OAAQ,QAAS,OAAS,QAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAQ,OAAS,OAAS,QAAS,QAAS,KAAO,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,QAAS,OAAS,IAAM,KAAO,KAAO,KAAO,IAAM,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,EAAG,MAAQ,OAAS,MAAQ,MAAQ,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,KAAO,OAAS,KAAO,OAAS,KAAO,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,KAAO,QAAS,EAAG,EAAG,KAAO,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,KAAO,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,KAAO,OAAS,KAAO,EAAG,EAAG,OAAS,KAAO,EAAG,EAAG,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,KAAO,OAAS,MAAQ,IAAM,MAAQ,IAAM,MAAQ,IAAM,EAAG,OAAS,OAAS,OAAS,KAAO,MAAQ,OAAS,MAAQ,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,KAAO,OAAS,OAAS,IAAM,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,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,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,KAAO,OAAS,KAAO,OAAS,KAAO,OAAS,KAAO,MAAQ,EAAG,OAAS,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,MAAO,MAAO,MAAO,OAAS,OAAS,OAAS,EAAG,MAAO,EAAG,EAAG,OAAS,OAAS,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,KAAO,EAAG,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,QAAS,QAAS,QAAS,EAAG,QAAS,QAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAMt5I5lX,EAAQ+lX,uBAJuB,CAC7B15P,WAAY,IACZs6F,QAAS,IAIX3mN,EAAQolX,wBADwB,CAAC,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,QAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,IAAM,MAAQ,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAQ,QAAS,OAAQ,QAAS,OAAS,OAAS,OAAS,OAAQ,KAAO,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,KAAO,QAAS,QAAS,OAAS,OAAS,OAAQ,QAAS,OAAS,KAAO,QAAS,OAAS,KAAO,QAAS,KAAO,KAAO,KAAO,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,EAAG,OAAS,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,QAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAQ,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,OAAS,KAAO,OAAS,KAAO,OAAS,KAAO,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,IAAM,QAAS,EAAG,EAAG,KAAO,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,KAAO,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,KAAO,OAAS,KAAO,EAAG,EAAG,OAAS,KAAO,EAAG,EAAG,OAAS,KAAO,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,KAAO,MAAQ,OAAS,KAAO,OAAS,KAAO,OAAS,KAAO,EAAG,OAAS,OAAS,OAAS,KAAO,OAAS,MAAQ,OAAS,EAAG,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,KAAO,KAAO,OAAS,KAAO,OAAS,OAAS,OAAS,OAAS,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,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,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,MAAQ,KAAO,MAAQ,EAAG,OAAS,EAAG,EAAG,EAAG,OAAS,OAAS,OAAS,EAAG,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,EAAG,MAAO,EAAG,EAAG,OAAS,OAAS,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,KAAO,EAAG,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,MAAO,QAAS,EAAG,EAAG,OAAQ,QAAS,QAAS,EAAG,QAAS,QAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAMz6IplX,EAAQulX,wBAJwB,CAC9Bl5P,WAAY,IACZs6F,QAAS,GAE8C,EAIlD,CAAC9xK,EAAyB70C,KAIjCS,OAAOY,eAAerB,EAAS,aAAe,CAC5CsB,OAAO,IAETtB,EAAQ6mX,sBAAwB7mX,EAAQ4mX,sBAAwB5mX,EAAQinX,qBAAuBjnX,EAAQgnX,qBAAuBhnX,EAAQ+mX,mBAAqB/mX,EAAQmnX,yBAA2BnnX,EAAQknX,yBAA2BlnX,EAAQ8mX,wBAAqB,EAE9P9mX,EAAQ8mX,mBADmB,CAAC,QAAS,EAAG,EAAG,OAAS,MAAQ,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAQ,OAAQ,QAAS,OAAQ,MAAQ,QAAS,MAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,MAAQ,QAAS,OAAS,OAAS,KAAO,QAAS,OAAQ,MAAQ,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,QAAS,OAAS,OAAS,OAAS,OAAQ,QAAS,OAAQ,OAAQ,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAQ,OAAS,OAAQ,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAQ,MAAQ,QAAS,QAAS,EAAG,QAAS,QAAS,MAAQ,OAAQ,QAAS,QAAS,QAAS,OAAQ,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,EAAG,OAAS,MAAQ,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,KAAO,QAAS,KAAO,QAAS,KAAO,QAAS,EAAG,EAAG,QAAS,OAAS,QAAS,QAAS,OAAQ,QAAS,OAAQ,QAAS,OAAQ,QAAS,OAAQ,QAAS,OAAQ,QAAS,OAAS,QAAS,MAAQ,QAAS,EAAG,EAAG,QAAS,OAAS,QAAS,EAAG,EAAG,OAAS,MAAQ,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,EAAG,EAAG,QAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAQ,OAAS,OAAQ,OAAS,OAAQ,OAAS,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAQ,OAAS,OAAQ,QAAS,QAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAQ,OAAS,QAAS,QAAS,OAAQ,QAAS,QAAS,QAAS,OAAQ,QAAS,QAAS,OAAS,OAAQ,OAAQ,QAAS,QAAS,QAAS,OAAS,OAAQ,OAAS,QAAS,OAAQ,OAAS,OAAS,OAAS,MAAQ,QAAS,QAAS,QAAS,OAAS,OAAQ,OAAS,QAAS,QAAS,OAAQ,QAAS,OAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,EAAG,QAAS,OAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,MAAO,QAAS,QAAS,QAAS,OAAS,QAAS,EAAG,QAAS,OAAS,QAAS,QAAS,QAAS,EAAG,EAAG,EAAG,KAAO,EAAG,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,OAAQ,QAAS,QAAS,OAAS,MAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,EAAG,QAAS,QAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,OAAQ,QAAS,QAAS,QAAS,EAAG,EAAG,EAAG,QAAS,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAMlsJ9mX,EAAQ+mX,mBAJmB,CACzB16P,WAAY,QACZs6F,QAAS,GAIX3mN,EAAQknX,yBADyB,CAAC,QAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,MAAO,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,MAAQ,QAAS,MAAQ,QAAS,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,QAAS,OAAQ,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,QAAS,MAAQ,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAQ,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,MAAO,MAAO,EAAG,MAAO,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,EAAG,OAAS,MAAQ,QAAS,OAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,QAAS,OAAS,QAAS,OAAS,OAAQ,QAAS,OAAQ,QAAS,OAAQ,QAAS,OAAQ,QAAS,OAAQ,QAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,QAAS,OAAS,QAAS,EAAG,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,EAAG,EAAG,QAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,EAAG,EAAG,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAO,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,OAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,QAAS,OAAS,OAAQ,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,QAAS,OAAS,OAAQ,OAAS,QAAS,MAAQ,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,MAAO,MAAQ,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,EAAG,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,EAAG,QAAS,OAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,MAAO,QAAS,QAAS,QAAS,OAAS,QAAS,EAAG,QAAS,OAAS,QAAS,QAAS,MAAO,EAAG,EAAG,EAAG,KAAO,EAAG,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,MAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,EAAG,QAAS,QAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,OAAQ,QAAS,QAAS,QAAS,EAAG,EAAG,EAAG,QAAS,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAMluJlnX,EAAQmnX,yBAJyB,CAC/B96P,WAAY,QACZs6F,QAAS,GAIX3mN,EAAQgnX,qBADqB,CAAC,QAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAQ,QAAS,OAAQ,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,OAAS,MAAQ,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,QAAS,QAAS,OAAQ,MAAQ,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,MAAQ,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,MAAQ,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,EAAG,EAAG,QAAS,QAAS,MAAQ,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,IAAK,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,OAAS,OAAQ,KAAM,QAAS,IAAK,OAAQ,OAAQ,OAAS,QAAS,QAAS,KAAM,OAAS,QAAS,QAAS,IAAK,QAAS,OAAQ,QAAS,OAAQ,QAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,QAAS,OAAQ,QAAS,OAAS,OAAQ,OAAQ,IAAK,OAAQ,OAAS,OAAQ,OAAQ,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,OAAS,EAAG,QAAS,OAAS,EAAG,EAAG,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,EAAG,QAAS,OAAS,OAAS,QAAS,OAAS,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,EAAG,EAAG,MAAO,EAAG,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,EAAG,OAAS,OAAS,EAAG,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,EAAG,QAAS,QAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,OAAQ,QAAS,QAAS,QAAS,EAAG,EAAG,EAAG,QAAS,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAMpvJhnX,EAAQinX,qBAJqB,CAC3B56P,WAAY,QACZs6F,QAAS,GAIX3mN,EAAQ4mX,sBADsB,CAAC,QAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,OAAQ,OAAS,OAAS,QAAS,OAAQ,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,QAAS,OAAQ,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,MAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,MAAO,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,QAAS,QAAS,OAAS,OAAQ,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,OAAS,EAAG,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,MAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAQ,OAAS,QAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,MAAQ,QAAS,MAAQ,QAAS,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,QAAS,OAAS,MAAQ,OAAS,QAAS,OAAS,QAAS,EAAG,EAAG,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,OAAQ,OAAS,OAAS,OAAS,QAAS,QAAS,QAAS,EAAG,EAAG,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,OAAS,OAAS,QAAS,EAAG,EAAG,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,OAAS,MAAQ,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,QAAS,OAAS,QAAS,IAAK,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,OAAS,OAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,OAAS,MAAQ,OAAS,OAAS,MAAQ,OAAQ,OAAS,MAAQ,OAAQ,OAAS,QAAS,IAAK,QAAS,OAAQ,OAAS,QAAS,QAAS,OAAS,QAAS,QAAS,QAAS,IAAK,QAAS,OAAS,QAAS,QAAS,OAAS,QAAS,MAAQ,QAAS,OAAS,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,IAAK,QAAS,QAAS,QAAS,QAAS,OAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,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,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,MAAQ,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,QAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,OAAS,QAAS,OAAS,QAAS,OAAS,QAAS,MAAQ,OAAS,EAAG,QAAS,OAAS,EAAG,EAAG,OAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,QAAS,OAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,QAAS,EAAG,QAAS,OAAS,OAAS,QAAS,OAAS,EAAG,EAAG,EAAG,OAAS,EAAG,EAAG,QAAS,QAAS,QAAS,QAAS,OAAS,OAAS,OAAS,OAAS,OAAS,EAAG,EAAG,MAAO,EAAG,OAAS,OAAS,OAAQ,QAAS,QAAS,OAAS,OAAS,OAAQ,QAAS,QAAS,QAAS,QAAS,QAAS,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,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,Q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,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAC14CC,EAAc,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,K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AM,GAAM,EAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EAAM,IAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,EAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,KACphD3pB,KAAKoqY,OAAS,IAAIzgX,WAAW,CAAC,GAAM,EAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,GAAM,EAAM,GAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,EAAM,IAAM,IAAM,GAAM,EAAM,IAAM,GAAM,GAAM,IAAM,IAAM,GAAM,GAAM,EAAM,IAAM,IAAM,IAAM,EAAM,EAAM,GAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,I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M,GAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,EAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,EAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,EAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,EAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,MACvhD3p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","sources":["webpack://c12-core/./node_modules/@honeybadger-io/js/dist/browser/honeybadger.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/adapters.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/logger.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/connection_monitor.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/internal.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/connection.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/subscription.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/subscription_guarantor.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/subscriptions.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/consumer.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/node_modules/@rails/actioncable/src/index.js","webpack://c12-core/./node_modules/@rails/actiontext/app/assets/javascripts/actiontext.esm.js","webpack://c12-core/./node_modules/@stripe/react-stripe-js/dist/react-stripe.umd.js","webpack://c12-core/./node_modules/batch-processor/src/batch-processor.js","webpack://c12-core/./node_modules/batch-processor/src/utils.js","webpack://c12-core/./node_modules/classnames/index.js","webpack://c12-core/./node_modules/element-resize-detector/src/browser-detector.js","webpack://c12-core/./node_modules/element-resize-detector/src/collection-utils.js","webpack://c12-core/./node_modules/element-resize-detector/src/detection-strategy/object.js","webpack://c12-core/./node_modules/element-resize-detector/src/detection-strategy/scroll.js","webpack://c12-core/./node_modules/element-resize-detector/src/element-resize-detector.js","webpack://c12-core/./node_modules/element-resize-detector/src/element-utils.js","webpack://c12-core/./node_modules/element-resize-detector/src/id-generator.js","webpack://c12-core/./node_modules/element-resize-detector/src/id-handler.js","webpack://c12-core/./node_modules/element-resize-detector/src/listener-handler.js","webpack://c12-core/./node_modules/element-resize-detector/src/reporter.js","webpack://c12-core/./node_modules/element-resize-detector/src/state-handler.js","webpack://c12-core/./node_modules/flatpickr/dist/esm/utils/polyfills.js","webpack://c12-core/./node_modules/flatpickr/dist/l10n/default.js","webpack://c12-core/./node_modules/flatpickr/dist/l10n/pt.js","webpack://c12-core/./node_modules/flatpickr/dist/plugins/monthSelect/index.js","webpack://c12-core/./node_modules/form-request-submit-polyfill/form-request-submit-polyfill.js","webpack://c12-core/./node_modules/invariant/browser.js","webpack://c12-core/./node_modules/pdfjs-dist/build/pdf.js","webpack://c12-core/./node_modules/pdfjs-dist/build/pdf.worker.entry.js","webpack://c12-core/./node_modules/pdfjs-dist/build/pdf.worker.js","webpack://c12-core/./node_modules/prop-types/factoryWithThrowingShims.js","webpack://c12-core/./node_modules/prop-types/index.js","webpack://c12-core/./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack://c12-core/./node_modules/react-dom/cjs/react-dom.production.min.js","webpack://c12-core/./node_modules/react-dom/client.js","webpack://c12-core/./node_modules/react-dom/index.js","webpack://c12-core/./node_modules/react-sizeme/dist/react-sizeme.js","webpack://c12-core/./node_modules/react/cjs/react.production.min.js","webpack://c12-core/./node_modules/react/index.js","webpack://c12-core/./node_modules/scheduler/cjs/scheduler.production.min.js","webpack://c12-core/./node_modules/scheduler/index.js","webpack://c12-core/./node_modules/shallowequal/index.js","webpack://c12-core/./node_modules/tom-select/dist/js/tom-select.complete.js","webpack://c12-core/./node_modules/tributejs/dist/tribute.min.js","webpack://c12-core/./node_modules/warning/warning.js","webpack://c12-core/./node_modules/throttle-debounce/cjs/index.js","webpack://c12-core/webpack/bootstrap","webpack://c12-core/webpack/runtime/create fake namespace object","webpack://c12-core/webpack/runtime/compat get default export","webpack://c12-core/webpack/runtime/define property getters","webpack://c12-core/webpack/runtime/global","webpack://c12-core/webpack/runtime/hasOwnProperty shorthand","webpack://c12-core/webpack/runtime/make namespace object","webpack://c12-core/./node_modules/@rails/activestorage/app/assets/javascripts/activestorage.esm.js","webpack://c12-core/./node_modules/@rails/actioncable/app/assets/javascripts/actioncable.esm.js","webpack://c12-core/./app/javascript/channels/consumer.js","webpack://c12-core/./node_modules/@hotwired/turbo/dist/turbo.es2017-esm.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/app/javascript/turbo/cable.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/app/javascript/turbo/snakeize.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/app/javascript/turbo/cable_stream_source_element.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/app/javascript/turbo/index.js","webpack://c12-core/./node_modules/@hotwired/turbo-rails/app/javascript/turbo/fetch_requests.js","webpack://c12-core/./node_modules/@lit/reactive-element/css-tag.js","webpack://c12-core/./node_modules/@lit/reactive-element/reactive-element.js","webpack://c12-core/./node_modules/lit-html/lit-html.js","webpack://c12-core/./node_modules/lit-element/lit-element.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.TUVJKY7S.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.NGU6VN5C.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.NJGFDSYD.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.6M63UXML.js","webpack://c12-core/./node_modules/@lit/reactive-element/decorators/property.js","webpack://c12-core/./node_modules/@lit/reactive-element/decorators/query.js","webpack://c12-core/./node_modules/@lit/reactive-element/decorators/base.js","webpack://c12-core/./node_modules/@lit/reactive-element/decorators/query-assigned-elements.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.PZ6RRH2A.js","webpack://c12-core/./node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs","webpack://c12-core/./node_modules/@floating-ui/core/dist/floating-ui.core.mjs","webpack://c12-core/./node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.mjs","webpack://c12-core/./node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs","webpack://c12-core/./node_modules/lit-html/directive.js","webpack://c12-core/./node_modules/lit-html/directives/class-map.js","webpack://c12-core/./node_modules/composed-offset-position/dist/composed-offset-position.browser.min.mjs","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.C46NGFMD.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.STXFIMXZ.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.B4BZKR24.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.W5IOVX7A.js","webpack://c12-core/./node_modules/@shoelace-style/localize/dist/index.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.2A3352EO.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.C7FWPEOY.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.2GQRVYDH.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.6DK7IAR7.js","webpack://c12-core/./node_modules/@shoelace-style/shoelace/dist/chunks/chunk.MAS2SHYD.js","webpack://c12-core/./node_modules/@hotwired/stimulus/dist/stimulus.js","webpack://c12-core/./node_modules/@hotwired/strada/dist/strada.js","webpack://c12-core/./node_modules/trix/dist/trix.esm.min.js","webpack://c12-core/./app/javascript/controllers/application.js","webpack://c12-core/./app/javascript/controllers/accordion_controller.js","webpack://c12-core/./app/javascript/controllers/bridge/form_controller.js","webpack://c12-core/./app/javascript/controllers/bridge/header_actions_controller.js","webpack://c12-core/./app/javascript/controllers/bridge/menu_controller.js","webpack://c12-core/./app/javascript/controllers/bridge/notification_token_controller.js","webpack://c12-core/./node_modules/chart.js/dist/chunks/helpers.segment.mjs","webpack://c12-core/./node_modules/chart.js/dist/chart.mjs","webpack://c12-core/./node_modules/chart.js/auto/auto.mjs","webpack://c12-core/./node_modules/stimulus-chartjs/dist/stimulus-chartjs.es.js","webpack://c12-core/./app/javascript/controllers/chart_controller.js","webpack://c12-core/./app/javascript/controllers/clipboard_controller.js","webpack://c12-core/./node_modules/@rolemodel/turbo-confirm/src/lib/utils.js","webpack://c12-core/./node_modules/@rolemodel/turbo-confirm/src/lib/ConfirmationController.js","webpack://c12-core/./node_modules/@rolemodel/turbo-confirm/src/lib/TurboConfirm.js","webpack://c12-core/./node_modules/@rolemodel/turbo-confirm/src/index.js","webpack://c12-core/./app/javascript/controllers/confirm_controller.js","webpack://c12-core/./node_modules/stimulus/dist/stimulus.js","webpack://c12-core/./node_modules/flatpickr/dist/esm/types/options.js","webpack://c12-core/./node_modules/flatpickr/dist/esm/l10n/default.js","webpack://c12-core/./node_modules/flatpickr/dist/esm/utils/index.js","webpack://c12-core/./node_modules/flatpickr/dist/esm/utils/dom.js","webpack://c12-core/./node_modules/flatpickr/dist/esm/utils/formatting.js","webpack://c12-core/./node_modules/flatpickr/dist/esm/utils/dates.js","webpack://c12-core/./node_modules/flatpickr/dist/esm/index.js","webpack://c12-core/./node_modules/stimulus-flatpickr/dist/index.m.js","webpack://c12-core/./app/javascript/controllers/destroy_nested_attributes_controller.js","webpack://c12-core/./app/javascript/controllers/dropdown_controller.js","webpack://c12-core/./app/javascript/controllers/form_field_toggle_controller.js","webpack://c12-core/./app/javascript/controllers/grid_expand_controller.js","webpack://c12-core/./app/javascript/controllers/identity_controller.js","webpack://c12-core/./app/javascript/controllers/mentions_controller.js","webpack://c12-core/./node_modules/ahoy.js/dist/ahoy.esm.js","webpack://c12-core/./app/javascript/controllers/metrics_controller.js","webpack://c12-core/./app/javascript/controllers/modal_toggle_controller.js","webpack://c12-core/./app/javascript/controllers/native_actions_controller.js","webpack://c12-core/./app/javascript/controllers/password_complexity_controller.js","webpack://c12-core/./app/javascript/controllers/payment_method_form_controller.js","webpack://c12-core/./node_modules/@stripe/stripe-js/dist/stripe.esm.js","webpack://c12-core/./app/javascript/components/NewCardForm.jsx","webpack://c12-core/./app/javascript/components/PaymentMethodForm.jsx","webpack://c12-core/./node_modules/make-event-props/dist/esm/index.js","webpack://c12-core/./node_modules/make-cancellable-promise/dist/esm/index.js","webpack://c12-core/./node_modules/clsx/dist/clsx.mjs","webpack://c12-core/./node_modules/tiny-invariant/dist/esm/tiny-invariant.js","webpack://c12-core/./node_modules/dequal/dist/index.mjs","webpack://c12-core/./node_modules/react-pdf/dist/esm/pdfjs.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/DocumentContext.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/Message.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/LinkService.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/PasswordResponses.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/shared/utils.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/shared/hooks/useResolver.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/shared/propTypes.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/Document.js","webpack://c12-core/./node_modules/merge-refs/dist/esm/index.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/PageContext.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/shared/constants.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/shared/structTreeUtils.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/StructTreeItem.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/shared/hooks/usePageContext.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/StructTree.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/Page/PageCanvas.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/Page/PageSVG.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/Page/TextLayer.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/shared/hooks/useDocumentContext.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/Page/AnnotationLayer.js","webpack://c12-core/./node_modules/react-pdf/dist/esm/Page.js","webpack://c12-core/./app/javascript/components/PdfView.js","webpack://c12-core/./app/javascript/components/Wheel.jsx","webpack://c12-core/./app/javascript/controllers/react_controller.js","webpack://c12-core/./app/javascript/controllers/reset_android_config_controller.js","webpack://c12-core/./node_modules/sortablejs/modular/sortable.esm.js","webpack://c12-core/./node_modules/@rails/request.js/src/fetch_response.js","webpack://c12-core/./node_modules/@rails/request.js/src/request_interceptor.js","webpack://c12-core/./node_modules/@rails/request.js/src/lib/utils.js","webpack://c12-core/./node_modules/@rails/request.js/src/fetch_request.js","webpack://c12-core/./node_modules/stimulus-sortable/dist/stimulus-sortable.mjs","webpack://c12-core/./node_modules/@rails/request.js/src/verbs.js","webpack://c12-core/./app/javascript/controllers/sortable_fields_controller.js","webpack://c12-core/./app/javascript/controllers/tabs_controller.js","webpack://c12-core/./app/javascript/controllers/toggle_controller.js","webpack://c12-core/./app/javascript/controllers/tom_select_controller.js","webpack://c12-core/./app/javascript/controllers/topic_categories_controller.js","webpack://c12-core/./app/javascript/controllers/turbo_fetch_controller.js","webpack://c12-core/./app/javascript/controllers/turbo_frame_request_controller.js","webpack://c12-core/./app/javascript/controllers/index.js","webpack://c12-core/./app/javascript/controllers/datepicker_controller.js","webpack://c12-core/./app/javascript/controllers/reset_ios_config_controller.js","webpack://c12-core/./app/javascript/controllers/video_controller.js","webpack://c12-core/./app/javascript/controllers/wistia_controller.js","webpack://c12-core/./app/javascript/initializers/turbo_confirm.js","webpack://c12-core/./app/javascript/initializers/frame_missing_handler.js","webpack://c12-core/./app/javascript/initializers/honeybadger.js","webpack://c12-core/./app/javascript/initializers/pdf_worker.js","webpack://c12-core/./app/javascript/application.js","webpack://c12-core/./app/javascript/turbo/bridge.js"],"sourcesContent":["(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Honeybadger = factory());\n})(this, (function () { 'use strict';\n\n\tvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\n\tfunction getDefaultExportFromCjs (x) {\n\t\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n\t}\n\n\tfunction getAugmentedNamespace(n) {\n\t var f = n.default;\n\t\tif (typeof f == \"function\") {\n\t\t\tvar a = function () {\n\t\t\t\treturn f.apply(this, arguments);\n\t\t\t};\n\t\t\ta.prototype = f.prototype;\n\t } else a = {};\n\t Object.defineProperty(a, '__esModule', {value: true});\n\t\tObject.keys(n).forEach(function (k) {\n\t\t\tvar d = Object.getOwnPropertyDescriptor(n, k);\n\t\t\tObject.defineProperty(a, k, d.get ? d : {\n\t\t\t\tenumerable: true,\n\t\t\t\tget: function () {\n\t\t\t\t\treturn n[k];\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\treturn a;\n\t}\n\n\tvar browser$1 = {};\n\n\tvar src = {};\n\n\tvar client = {};\n\n\tvar util$1 = {};\n\n\tvar UNKNOWN_FUNCTION = '';\n\t/**\n\t * This parses the different stack traces and puts them into one format\n\t * This borrows heavily from TraceKit (https://github.com/csnover/TraceKit)\n\t */\n\n\tfunction parse(stackString) {\n\t var lines = stackString.split('\\n');\n\t return lines.reduce(function (stack, line) {\n\t var parseResult = parseChrome(line) || parseWinjs(line) || parseGecko(line) || parseNode(line) || parseJSC(line);\n\n\t if (parseResult) {\n\t stack.push(parseResult);\n\t }\n\n\t return stack;\n\t }, []);\n\t}\n\tvar chromeRe = /^\\s*at (.*?) ?\\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\\/|[a-z]:\\\\|\\\\\\\\).*?)(?::(\\d+))?(?::(\\d+))?\\)?\\s*$/i;\n\tvar chromeEvalRe = /\\((\\S*)(?::(\\d+))(?::(\\d+))\\)/;\n\n\tfunction parseChrome(line) {\n\t var parts = chromeRe.exec(line);\n\n\t if (!parts) {\n\t return null;\n\t }\n\n\t var isNative = parts[2] && parts[2].indexOf('native') === 0; // start of line\n\n\t var isEval = parts[2] && parts[2].indexOf('eval') === 0; // start of line\n\n\t var submatch = chromeEvalRe.exec(parts[2]);\n\n\t if (isEval && submatch != null) {\n\t // throw out eval line/column and use top-most line/column number\n\t parts[2] = submatch[1]; // url\n\n\t parts[3] = submatch[2]; // line\n\n\t parts[4] = submatch[3]; // column\n\t }\n\n\t return {\n\t file: !isNative ? parts[2] : null,\n\t methodName: parts[1] || UNKNOWN_FUNCTION,\n\t arguments: isNative ? [parts[2]] : [],\n\t lineNumber: parts[3] ? +parts[3] : null,\n\t column: parts[4] ? +parts[4] : null\n\t };\n\t}\n\n\tvar winjsRe = /^\\s*at (?:((?:\\[object object\\])?.+) )?\\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\\d+)(?::(\\d+))?\\)?\\s*$/i;\n\n\tfunction parseWinjs(line) {\n\t var parts = winjsRe.exec(line);\n\n\t if (!parts) {\n\t return null;\n\t }\n\n\t return {\n\t file: parts[2],\n\t methodName: parts[1] || UNKNOWN_FUNCTION,\n\t arguments: [],\n\t lineNumber: +parts[3],\n\t column: parts[4] ? +parts[4] : null\n\t };\n\t}\n\n\tvar geckoRe = /^\\s*(.*?)(?:\\((.*?)\\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|\\[native).*?|[^@]*bundle)(?::(\\d+))?(?::(\\d+))?\\s*$/i;\n\tvar geckoEvalRe = /(\\S+) line (\\d+)(?: > eval line \\d+)* > eval/i;\n\n\tfunction parseGecko(line) {\n\t var parts = geckoRe.exec(line);\n\n\t if (!parts) {\n\t return null;\n\t }\n\n\t var isEval = parts[3] && parts[3].indexOf(' > eval') > -1;\n\t var submatch = geckoEvalRe.exec(parts[3]);\n\n\t if (isEval && submatch != null) {\n\t // throw out eval line/column and use top-most line number\n\t parts[3] = submatch[1];\n\t parts[4] = submatch[2];\n\t parts[5] = null; // no column when eval\n\t }\n\n\t return {\n\t file: parts[3],\n\t methodName: parts[1] || UNKNOWN_FUNCTION,\n\t arguments: parts[2] ? parts[2].split(',') : [],\n\t lineNumber: parts[4] ? +parts[4] : null,\n\t column: parts[5] ? +parts[5] : null\n\t };\n\t}\n\n\tvar javaScriptCoreRe = /^\\s*(?:([^@]*)(?:\\((.*?)\\))?@)?(\\S.*?):(\\d+)(?::(\\d+))?\\s*$/i;\n\n\tfunction parseJSC(line) {\n\t var parts = javaScriptCoreRe.exec(line);\n\n\t if (!parts) {\n\t return null;\n\t }\n\n\t return {\n\t file: parts[3],\n\t methodName: parts[1] || UNKNOWN_FUNCTION,\n\t arguments: [],\n\t lineNumber: +parts[4],\n\t column: parts[5] ? +parts[5] : null\n\t };\n\t}\n\n\tvar nodeRe = /^\\s*at (?:((?:\\[object object\\])?[^\\\\/]+(?: \\[as \\S+\\])?) )?\\(?(.*?):(\\d+)(?::(\\d+))?\\)?\\s*$/i;\n\n\tfunction parseNode(line) {\n\t var parts = nodeRe.exec(line);\n\n\t if (!parts) {\n\t return null;\n\t }\n\n\t return {\n\t file: parts[2],\n\t methodName: parts[1] || UNKNOWN_FUNCTION,\n\t arguments: [],\n\t lineNumber: +parts[3],\n\t column: parts[4] ? +parts[4] : null\n\t };\n\t}\n\n\tvar stackTraceParser_esm = /*#__PURE__*/Object.freeze({\n\t\t__proto__: null,\n\t\tparse: parse\n\t});\n\n\tvar require$$0 = /*@__PURE__*/getAugmentedNamespace(stackTraceParser_esm);\n\n\t(function (exports) {\n\t\tvar __createBinding = (commonjsGlobal && commonjsGlobal.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n\t\t if (k2 === undefined) k2 = k;\n\t\t var desc = Object.getOwnPropertyDescriptor(m, k);\n\t\t if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n\t\t desc = { enumerable: true, get: function() { return m[k]; } };\n\t\t }\n\t\t Object.defineProperty(o, k2, desc);\n\t\t}) : (function(o, m, k, k2) {\n\t\t if (k2 === undefined) k2 = k;\n\t\t o[k2] = m[k];\n\t\t}));\n\t\tvar __setModuleDefault = (commonjsGlobal && commonjsGlobal.__setModuleDefault) || (Object.create ? (function(o, v) {\n\t\t Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n\t\t}) : function(o, v) {\n\t\t o[\"default\"] = v;\n\t\t});\n\t\tvar __importStar = (commonjsGlobal && commonjsGlobal.__importStar) || function (mod) {\n\t\t if (mod && mod.__esModule) return mod;\n\t\t var result = {};\n\t\t if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n\t\t __setModuleDefault(result, mod);\n\t\t return result;\n\t\t};\n\t\tvar __awaiter = (commonjsGlobal && commonjsGlobal.__awaiter) || function (thisArg, _arguments, P, generator) {\n\t\t function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n\t\t return new (P || (P = Promise))(function (resolve, reject) {\n\t\t function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n\t\t function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n\t\t function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n\t\t step((generator = generator.apply(thisArg, _arguments || [])).next());\n\t\t });\n\t\t};\n\t\tvar __generator = (commonjsGlobal && commonjsGlobal.__generator) || function (thisArg, body) {\n\t\t var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n\t\t return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n\t\t function verb(n) { return function (v) { return step([n, v]); }; }\n\t\t function step(op) {\n\t\t if (f) throw new TypeError(\"Generator is already executing.\");\n\t\t while (_) try {\n\t\t 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;\n\t\t if (y = 0, t) op = [op[0] & 2, t.value];\n\t\t switch (op[0]) {\n\t\t case 0: case 1: t = op; break;\n\t\t case 4: _.label++; return { value: op[1], done: false };\n\t\t case 5: _.label++; y = op[1]; op = [0]; continue;\n\t\t case 7: op = _.ops.pop(); _.trys.pop(); continue;\n\t\t default:\n\t\t if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n\t\t if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n\t\t if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n\t\t if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n\t\t if (t[2]) _.ops.pop();\n\t\t _.trys.pop(); continue;\n\t\t }\n\t\t op = body.call(thisArg, _);\n\t\t } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n\t\t if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n\t\t }\n\t\t};\n\t\tObject.defineProperty(exports, \"__esModule\", { value: true });\n\t\texports.isBrowserConfig = exports.clone = exports.formatCGIData = exports.filterUrl = exports.filter = exports.generateStackTrace = exports.endpoint = exports.instrument = exports.isErrorObject = exports.makeNotice = exports.logger = exports.sanitize = exports.shallowClone = exports.runAfterNotifyHandlers = exports.runBeforeNotifyHandlers = exports.getSourceForBacktrace = exports.getCauses = exports.calculateBacktraceShift = exports.DEFAULT_BACKTRACE_SHIFT = exports.makeBacktrace = exports.objectIsExtensible = exports.objectIsEmpty = exports.mergeNotice = exports.merge = void 0;\n\t\tvar stackTraceParser = __importStar(require$$0);\n\t\tfunction merge(obj1, obj2) {\n\t\t var result = {};\n\t\t for (var k in obj1) {\n\t\t result[k] = obj1[k];\n\t\t }\n\t\t for (var k in obj2) {\n\t\t result[k] = obj2[k];\n\t\t }\n\t\t return result;\n\t\t}\n\t\texports.merge = merge;\n\t\tfunction mergeNotice(notice1, notice2) {\n\t\t var result = merge(notice1, notice2);\n\t\t if (notice1.context && notice2.context) {\n\t\t result.context = merge(notice1.context, notice2.context);\n\t\t }\n\t\t return result;\n\t\t}\n\t\texports.mergeNotice = mergeNotice;\n\t\tfunction objectIsEmpty(obj) {\n\t\t for (var k in obj) {\n\t\t if (Object.prototype.hasOwnProperty.call(obj, k)) {\n\t\t return false;\n\t\t }\n\t\t }\n\t\t return true;\n\t\t}\n\t\texports.objectIsEmpty = objectIsEmpty;\n\t\tfunction objectIsExtensible(obj) {\n\t\t if (typeof Object.isExtensible !== 'function') {\n\t\t return true;\n\t\t }\n\t\t return Object.isExtensible(obj);\n\t\t}\n\t\texports.objectIsExtensible = objectIsExtensible;\n\t\tfunction makeBacktrace(stack, filterHbSourceCode, logger) {\n\t\t if (filterHbSourceCode === void 0) { filterHbSourceCode = false; }\n\t\t if (logger === void 0) { logger = console; }\n\t\t if (!stack) {\n\t\t return [];\n\t\t }\n\t\t try {\n\t\t var backtrace = stackTraceParser\n\t\t .parse(stack)\n\t\t .map(function (line) {\n\t\t return {\n\t\t file: line.file,\n\t\t method: line.methodName,\n\t\t number: line.lineNumber,\n\t\t column: line.column\n\t\t };\n\t\t });\n\t\t if (filterHbSourceCode) {\n\t\t backtrace.splice(0, calculateBacktraceShift(backtrace));\n\t\t }\n\t\t return backtrace;\n\t\t }\n\t\t catch (err) {\n\t\t logger.debug(err);\n\t\t return [];\n\t\t }\n\t\t}\n\t\texports.makeBacktrace = makeBacktrace;\n\t\tfunction isFrameFromHbSourceCode(frame) {\n\t\t var hasHbFile = false;\n\t\t var hasHbMethod = false;\n\t\t if (frame.file) {\n\t\t hasHbFile = frame.file.toLowerCase().indexOf('@honeybadger-io') > -1;\n\t\t }\n\t\t if (frame.method) {\n\t\t hasHbMethod = frame.method.toLowerCase().indexOf('@honeybadger-io') > -1;\n\t\t }\n\t\t return hasHbFile || hasHbMethod;\n\t\t}\n\t\texports.DEFAULT_BACKTRACE_SHIFT = 3;\n\t\t/**\n\t\t * If {@link generateStackTrace} is used, we want to exclude frames that come from\n\t\t * Honeybadger's source code.\n\t\t *\n\t\t * Logic:\n\t\t * - For each frame, increment the shift if source code is from Honeybadger\n\t\t * - If a frame from an file is encountered increment the shift ONLY if between Honeybadger source code\n\t\t * (i.e. previous and next frames are from Honeybadger)\n\t\t * - Exit when frame encountered is not from Honeybadger source code\n\t\t *\n\t\t * Note: this will not always work, especially in browser versions where code\n\t\t * is minified, uglified and bundled.\n\t\t * For those cases we default to 3:\n\t\t * - generateStackTrace\n\t\t * - makeNotice\n\t\t * - notify\n\t\t */\n\t\tfunction calculateBacktraceShift(backtrace) {\n\t\t var shift = 0;\n\t\t for (var i = 0; i < backtrace.length; i++) {\n\t\t var frame = backtrace[i];\n\t\t if (isFrameFromHbSourceCode(frame)) {\n\t\t shift++;\n\t\t continue;\n\t\t }\n\t\t if (!frame.file || frame.file === '') {\n\t\t var nextFrame = backtrace[i + 1];\n\t\t if (nextFrame && isFrameFromHbSourceCode(nextFrame)) {\n\t\t shift++;\n\t\t continue;\n\t\t }\n\t\t }\n\t\t break;\n\t\t }\n\t\t return shift || exports.DEFAULT_BACKTRACE_SHIFT;\n\t\t}\n\t\texports.calculateBacktraceShift = calculateBacktraceShift;\n\t\tfunction getCauses(notice, logger) {\n\t\t if (notice.cause) {\n\t\t var causes = [];\n\t\t var cause = notice;\n\t\t // @ts-ignore this throws an error if tsconfig.json has strict: true\n\t\t while (causes.length < 3 && (cause = cause.cause)) {\n\t\t causes.push({\n\t\t class: cause.name,\n\t\t message: cause.message,\n\t\t backtrace: typeof cause.stack == 'string' ? makeBacktrace(cause.stack, false, logger) : null\n\t\t });\n\t\t }\n\t\t return causes;\n\t\t }\n\t\t return [];\n\t\t}\n\t\texports.getCauses = getCauses;\n\t\tfunction getSourceForBacktrace(backtrace, getSourceFileHandler) {\n\t\t return __awaiter(this, void 0, void 0, function () {\n\t\t var result, index, trace, fileContent;\n\t\t return __generator(this, function (_a) {\n\t\t switch (_a.label) {\n\t\t case 0:\n\t\t result = [];\n\t\t if (!getSourceFileHandler || !backtrace || !backtrace.length) {\n\t\t return [2 /*return*/, result];\n\t\t }\n\t\t index = 0;\n\t\t _a.label = 1;\n\t\t case 1:\n\t\t if (!backtrace.length) return [3 /*break*/, 3];\n\t\t trace = backtrace.splice(0)[index];\n\t\t return [4 /*yield*/, getSourceFileHandler(trace.file)];\n\t\t case 2:\n\t\t fileContent = _a.sent();\n\t\t result[index] = getSourceCodeSnippet(fileContent, trace.number);\n\t\t index++;\n\t\t return [3 /*break*/, 1];\n\t\t case 3: return [2 /*return*/, result];\n\t\t }\n\t\t });\n\t\t });\n\t\t}\n\t\texports.getSourceForBacktrace = getSourceForBacktrace;\n\t\tfunction runBeforeNotifyHandlers(notice, handlers) {\n\t\t var results = [];\n\t\t var result = true;\n\t\t for (var i = 0, len = handlers.length; i < len; i++) {\n\t\t var handler = handlers[i];\n\t\t var handlerResult = handler(notice);\n\t\t if (handlerResult === false) {\n\t\t result = false;\n\t\t }\n\t\t results.push(handlerResult);\n\t\t }\n\t\t return {\n\t\t results: results,\n\t\t result: result\n\t\t };\n\t\t}\n\t\texports.runBeforeNotifyHandlers = runBeforeNotifyHandlers;\n\t\tfunction runAfterNotifyHandlers(notice, handlers, error) {\n\t\t if (notice && notice.afterNotify) {\n\t\t notice.afterNotify(error, notice);\n\t\t }\n\t\t for (var i = 0, len = handlers.length; i < len; i++) {\n\t\t handlers[i](error, notice);\n\t\t }\n\t\t return true;\n\t\t}\n\t\texports.runAfterNotifyHandlers = runAfterNotifyHandlers;\n\t\t// Returns a new object with properties from other object.\n\t\tfunction shallowClone(obj) {\n\t\t if (typeof (obj) !== 'object' || obj === null) {\n\t\t return {};\n\t\t }\n\t\t var result = {};\n\t\t for (var k in obj) {\n\t\t result[k] = obj[k];\n\t\t }\n\t\t return result;\n\t\t}\n\t\texports.shallowClone = shallowClone;\n\t\tfunction sanitize(obj, maxDepth) {\n\t\t if (maxDepth === void 0) { maxDepth = 8; }\n\t\t var seenObjects = [];\n\t\t function seen(obj) {\n\t\t if (!obj || typeof (obj) !== 'object') {\n\t\t return false;\n\t\t }\n\t\t for (var i = 0; i < seenObjects.length; i++) {\n\t\t var value = seenObjects[i];\n\t\t if (value === obj) {\n\t\t return true;\n\t\t }\n\t\t }\n\t\t seenObjects.push(obj);\n\t\t return false;\n\t\t }\n\t\t function canSerialize(obj) {\n\t\t var typeOfObj = typeof obj;\n\t\t // Functions are TMI\n\t\t if (/function/.test(typeOfObj)) {\n\t\t // Let special toJSON method pass as it's used by JSON.stringify (#722)\n\t\t return obj.name === 'toJSON';\n\t\t }\n\t\t // Symbols can't convert to strings.\n\t\t if (/symbol/.test(typeOfObj)) {\n\t\t return false;\n\t\t }\n\t\t if (obj === null) {\n\t\t return false;\n\t\t }\n\t\t // No prototype, likely created with `Object.create(null)`.\n\t\t if (typeof obj === 'object' && typeof obj.hasOwnProperty === 'undefined') {\n\t\t return false;\n\t\t }\n\t\t return true;\n\t\t }\n\t\t function serialize(obj, depth) {\n\t\t if (depth === void 0) { depth = 0; }\n\t\t if (depth >= maxDepth) {\n\t\t return '[DEPTH]';\n\t\t }\n\t\t // Inspect invalid types\n\t\t if (!canSerialize(obj)) {\n\t\t return Object.prototype.toString.call(obj);\n\t\t }\n\t\t // Halt circular references\n\t\t if (seen(obj)) {\n\t\t return '[RECURSION]';\n\t\t }\n\t\t // Serialize inside arrays\n\t\t if (Array.isArray(obj)) {\n\t\t return obj.map(function (o) { return safeSerialize(o, depth + 1); });\n\t\t }\n\t\t // Serialize inside objects\n\t\t if (typeof (obj) === 'object') {\n\t\t var ret = {};\n\t\t for (var k in obj) {\n\t\t var v = obj[k];\n\t\t if (Object.prototype.hasOwnProperty.call(obj, k) && (k != null) && (v != null)) {\n\t\t ret[k] = safeSerialize(v, depth + 1);\n\t\t }\n\t\t }\n\t\t return ret;\n\t\t }\n\t\t // Return everything else untouched\n\t\t return obj;\n\t\t }\n\t\t function safeSerialize(obj, depth) {\n\t\t if (depth === void 0) { depth = 0; }\n\t\t try {\n\t\t return serialize(obj, depth);\n\t\t }\n\t\t catch (e) {\n\t\t return \"[ERROR] \".concat(e);\n\t\t }\n\t\t }\n\t\t return safeSerialize(obj);\n\t\t}\n\t\texports.sanitize = sanitize;\n\t\tfunction logger(client) {\n\t\t var log = function (method) {\n\t\t return function () {\n\t\t var _a;\n\t\t var args = [];\n\t\t for (var _i = 0; _i < arguments.length; _i++) {\n\t\t args[_i] = arguments[_i];\n\t\t }\n\t\t if (method === 'debug') {\n\t\t if (!client.config.debug) {\n\t\t return;\n\t\t }\n\t\t // Log at default level so that you don't need to also enable verbose\n\t\t // logging in Chrome.\n\t\t method = 'log';\n\t\t }\n\t\t args.unshift('[Honeybadger]');\n\t\t (_a = client.config.logger)[method].apply(_a, args);\n\t\t };\n\t\t };\n\t\t return {\n\t\t log: log('log'),\n\t\t info: log('info'),\n\t\t debug: log('debug'),\n\t\t warn: log('warn'),\n\t\t error: log('error')\n\t\t };\n\t\t}\n\t\texports.logger = logger;\n\t\t/**\n\t\t * Converts any object into a notice object (which at minimum has the same\n\t\t * properties as Error, but supports additional Honeybadger properties.)\n\t\t */\n\t\tfunction makeNotice(thing) {\n\t\t var notice;\n\t\t if (!thing) {\n\t\t notice = {};\n\t\t }\n\t\t else if (isErrorObject(thing)) {\n\t\t var e = thing;\n\t\t notice = merge(thing, { name: e.name, message: e.message, stack: e.stack, cause: e.cause });\n\t\t }\n\t\t else if (typeof thing === 'object') {\n\t\t notice = shallowClone(thing);\n\t\t }\n\t\t else {\n\t\t var m = String(thing);\n\t\t notice = { message: m };\n\t\t }\n\t\t return notice;\n\t\t}\n\t\texports.makeNotice = makeNotice;\n\t\tfunction isErrorObject(thing) {\n\t\t return thing instanceof Error\n\t\t || Object.prototype.toString.call(thing) === '[object Error]'; // Important for cross-realm objects\n\t\t}\n\t\texports.isErrorObject = isErrorObject;\n\t\t/**\n\t\t * Instrument an existing function inside an object (usually global).\n\t\t * @param {!Object} object\n\t\t * @param {!String} name\n\t\t * @param {!Function} replacement\n\t\t */\n\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\tfunction instrument(object, name, replacement) {\n\t\t if (!object || !name || !replacement || !(name in object)) {\n\t\t return;\n\t\t }\n\t\t try {\n\t\t var original = object[name];\n\t\t while (original && original.__hb_original) {\n\t\t original = original.__hb_original;\n\t\t }\n\t\t object[name] = replacement(original);\n\t\t object[name].__hb_original = original;\n\t\t }\n\t\t catch (_e) {\n\t\t // Ignores errors where \"original\" is a restricted object (see #1001)\n\t\t // Uncaught Error: Permission denied to access property \"__hb_original\"\n\t\t // Also ignores:\n\t\t // Error: TypeError: Cannot set property onunhandledrejection of [object Object] which has only a getter\n\t\t // User-Agent: Mozilla/5.0 (Linux; Android 10; SAMSUNG SM-G960F) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/12.1 Chrome/79.0.3945.136 Mobile Safari/537.36\n\t\t }\n\t\t}\n\t\texports.instrument = instrument;\n\t\tfunction endpoint(base, path) {\n\t\t var endpoint = base.trim().replace(/\\/$/, '');\n\t\t path = path.trim().replace(/(^\\/|\\/$)/g, '');\n\t\t return \"\".concat(endpoint, \"/\").concat(path);\n\t\t}\n\t\texports.endpoint = endpoint;\n\t\tfunction generateStackTrace() {\n\t\t try {\n\t\t throw new Error('');\n\t\t }\n\t\t catch (e) {\n\t\t if (e.stack) {\n\t\t return e.stack;\n\t\t }\n\t\t }\n\t\t var maxStackSize = 10;\n\t\t var stack = [];\n\t\t var curr = arguments.callee;\n\t\t while (curr && stack.length < maxStackSize) {\n\t\t if (/function(?:\\s+([\\w$]+))+\\s*\\(/.test(curr.toString())) {\n\t\t stack.push(RegExp.$1 || '');\n\t\t }\n\t\t else {\n\t\t stack.push('');\n\t\t }\n\t\t try {\n\t\t curr = curr.caller;\n\t\t }\n\t\t catch (e) {\n\t\t break;\n\t\t }\n\t\t }\n\t\t return stack.join('\\n');\n\t\t}\n\t\texports.generateStackTrace = generateStackTrace;\n\t\tfunction filter(obj, filters) {\n\t\t if (!is('Object', obj)) {\n\t\t return;\n\t\t }\n\t\t if (!is('Array', filters)) {\n\t\t filters = [];\n\t\t }\n\t\t var seen = [];\n\t\t function filter(obj) {\n\t\t var k, newObj;\n\t\t if (is('Object', obj) || is('Array', obj)) {\n\t\t if (seen.indexOf(obj) !== -1) {\n\t\t return '[CIRCULAR DATA STRUCTURE]';\n\t\t }\n\t\t seen.push(obj);\n\t\t }\n\t\t if (is('Object', obj)) {\n\t\t newObj = {};\n\t\t for (k in obj) {\n\t\t if (filterMatch(k, filters)) {\n\t\t newObj[k] = '[FILTERED]';\n\t\t }\n\t\t else {\n\t\t newObj[k] = filter(obj[k]);\n\t\t }\n\t\t }\n\t\t return newObj;\n\t\t }\n\t\t if (is('Array', obj)) {\n\t\t return obj.map(function (v) {\n\t\t return filter(v);\n\t\t });\n\t\t }\n\t\t if (is('Function', obj)) {\n\t\t return '[FUNC]';\n\t\t }\n\t\t return obj;\n\t\t }\n\t\t return filter(obj);\n\t\t}\n\t\texports.filter = filter;\n\t\tfunction filterMatch(key, filters) {\n\t\t for (var i = 0; i < filters.length; i++) {\n\t\t if (key.toLowerCase().indexOf(filters[i].toLowerCase()) !== -1) {\n\t\t return true;\n\t\t }\n\t\t }\n\t\t return false;\n\t\t}\n\t\tfunction is(type, obj) {\n\t\t var klass = Object.prototype.toString.call(obj).slice(8, -1);\n\t\t return obj !== undefined && obj !== null && klass === type;\n\t\t}\n\t\tfunction filterUrl(url, filters) {\n\t\t if (!filters) {\n\t\t return url;\n\t\t }\n\t\t if (typeof url !== 'string') {\n\t\t return url;\n\t\t }\n\t\t var query = url.split(/\\?/, 2)[1];\n\t\t if (!query) {\n\t\t return url;\n\t\t }\n\t\t var result = url;\n\t\t query.split(/[&]\\s?/).forEach(function (pair) {\n\t\t var _a = pair.split('=', 2), key = _a[0], value = _a[1];\n\t\t if (filterMatch(key, filters)) {\n\t\t result = result.replace(\"\".concat(key, \"=\").concat(value), \"\".concat(key, \"=[FILTERED]\"));\n\t\t }\n\t\t });\n\t\t return result;\n\t\t}\n\t\texports.filterUrl = filterUrl;\n\t\tfunction formatCGIData(vars, prefix) {\n\t\t if (prefix === void 0) { prefix = ''; }\n\t\t var formattedVars = {};\n\t\t Object.keys(vars).forEach(function (key) {\n\t\t var formattedKey = prefix + key.replace(/\\W/g, '_').toUpperCase();\n\t\t formattedVars[formattedKey] = vars[key];\n\t\t });\n\t\t return formattedVars;\n\t\t}\n\t\texports.formatCGIData = formatCGIData;\n\t\tfunction clone(obj) {\n\t\t return JSON.parse(JSON.stringify(obj));\n\t\t}\n\t\texports.clone = clone;\n\t\tfunction getSourceCodeSnippet(fileData, lineNumber, sourceRadius) {\n\t\t if (sourceRadius === void 0) { sourceRadius = 2; }\n\t\t if (!fileData) {\n\t\t return null;\n\t\t }\n\t\t var lines = fileData.split('\\n');\n\t\t // add one empty line because array index starts from 0, but error line number is counted from 1\n\t\t lines.unshift('');\n\t\t var start = lineNumber - sourceRadius;\n\t\t var end = lineNumber + sourceRadius;\n\t\t var result = {};\n\t\t for (var i = start; i <= end; i++) {\n\t\t var line = lines[i];\n\t\t if (typeof line === 'string') {\n\t\t result[i] = line;\n\t\t }\n\t\t }\n\t\t return result;\n\t\t}\n\t\tfunction isBrowserConfig(config) {\n\t\t return config.async !== undefined;\n\t\t}\n\t\texports.isBrowserConfig = isBrowserConfig;\n\t\t\n\t} (util$1));\n\n\tvar store = {};\n\n\tObject.defineProperty(store, \"__esModule\", { value: true });\n\tstore.GlobalStore = void 0;\n\tvar util_1$7 = util$1;\n\tvar GlobalStore = /** @class */ (function () {\n\t function GlobalStore(contents, breadcrumbsLimit) {\n\t this.contents = contents;\n\t this.breadcrumbsLimit = breadcrumbsLimit;\n\t }\n\t GlobalStore.create = function (contents, breadcrumbsLimit) {\n\t return new GlobalStore(contents, breadcrumbsLimit);\n\t };\n\t GlobalStore.prototype.available = function () {\n\t return true;\n\t };\n\t GlobalStore.prototype.getContents = function (key) {\n\t var value = key ? this.contents[key] : this.contents;\n\t return JSON.parse(JSON.stringify(value));\n\t };\n\t GlobalStore.prototype.setContext = function (context) {\n\t this.contents.context = (0, util_1$7.merge)(this.contents.context, context || {});\n\t };\n\t GlobalStore.prototype.addBreadcrumb = function (breadcrumb) {\n\t if (this.contents.breadcrumbs.length == this.breadcrumbsLimit) {\n\t this.contents.breadcrumbs.shift();\n\t }\n\t this.contents.breadcrumbs.push(breadcrumb);\n\t };\n\t GlobalStore.prototype.clear = function () {\n\t this.contents.context = {};\n\t this.contents.breadcrumbs = [];\n\t };\n\t GlobalStore.prototype.run = function (callback) {\n\t return callback();\n\t };\n\t return GlobalStore;\n\t}());\n\tstore.GlobalStore = GlobalStore;\n\n\tvar __assign = (commonjsGlobal && commonjsGlobal.__assign) || function () {\n\t __assign = Object.assign || function(t) {\n\t for (var s, i = 1, n = arguments.length; i < n; i++) {\n\t s = arguments[i];\n\t for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n\t t[p] = s[p];\n\t }\n\t return t;\n\t };\n\t return __assign.apply(this, arguments);\n\t};\n\tvar __awaiter$1 = (commonjsGlobal && commonjsGlobal.__awaiter) || function (thisArg, _arguments, P, generator) {\n\t function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n\t return new (P || (P = Promise))(function (resolve, reject) {\n\t function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n\t function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n\t function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n\t step((generator = generator.apply(thisArg, _arguments || [])).next());\n\t });\n\t};\n\tvar __generator$1 = (commonjsGlobal && commonjsGlobal.__generator) || function (thisArg, body) {\n\t var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n\t return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n\t function verb(n) { return function (v) { return step([n, v]); }; }\n\t function step(op) {\n\t if (f) throw new TypeError(\"Generator is already executing.\");\n\t while (_) try {\n\t 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;\n\t if (y = 0, t) op = [op[0] & 2, t.value];\n\t switch (op[0]) {\n\t case 0: case 1: t = op; break;\n\t case 4: _.label++; return { value: op[1], done: false };\n\t case 5: _.label++; y = op[1]; op = [0]; continue;\n\t case 7: op = _.ops.pop(); _.trys.pop(); continue;\n\t default:\n\t if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n\t if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n\t if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n\t if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n\t if (t[2]) _.ops.pop();\n\t _.trys.pop(); continue;\n\t }\n\t op = body.call(thisArg, _);\n\t } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n\t if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n\t }\n\t};\n\tObject.defineProperty(client, \"__esModule\", { value: true });\n\tclient.Client = void 0;\n\tvar util_1$6 = util$1;\n\tvar store_1 = store;\n\t// Split at commas and spaces\n\tvar TAG_SEPARATOR = /,|\\s+/;\n\t// Checks for non-blank characters\n\tvar NOT_BLANK = /\\S/;\n\tvar Client = /** @class */ (function () {\n\t function Client(opts, transport) {\n\t if (opts === void 0) { opts = {}; }\n\t this.__pluginsLoaded = false;\n\t this.__store = null;\n\t this.__beforeNotifyHandlers = [];\n\t this.__afterNotifyHandlers = [];\n\t this.__notifier = {\n\t name: '@honeybadger-io/core',\n\t url: 'https://github.com/honeybadger-io/honeybadger-js/tree/master/packages/core',\n\t version: '6.5.1'\n\t };\n\t this.config = __assign({ apiKey: null, endpoint: 'https://api.honeybadger.io', environment: null, hostname: null, projectRoot: null, component: null, action: null, revision: null, reportData: null, breadcrumbsEnabled: true, maxBreadcrumbs: 40, maxObjectDepth: 8, logger: console, developmentEnvironments: ['dev', 'development', 'test'], debug: false, tags: null, enableUncaught: true, enableUnhandledRejection: true, afterUncaught: function () { return true; }, filters: ['creditcard', 'password'], __plugins: [] }, opts);\n\t this.__initStore();\n\t this.__transport = transport;\n\t this.logger = (0, util_1$6.logger)(this);\n\t }\n\t Client.prototype.getVersion = function () {\n\t return this.__notifier.version;\n\t };\n\t Client.prototype.getNotifier = function () {\n\t return this.__notifier;\n\t };\n\t /**\n\t * CAREFUL: When adding a new notifier or updating the name of an existing notifier,\n\t * the Honeybadger rails project may need its mappings updated.\n\t * See https://github.com/honeybadger-io/honeybadger/blob/master/app/presenters/breadcrumbs_presenter.rb\n\t * https://github.com/honeybadger-io/honeybadger/blob/master/app/models/parser/java_script.rb\n\t * https://github.com/honeybadger-io/honeybadger/blob/master/app/models/language.rb\n\t **/\n\t Client.prototype.setNotifier = function (notifier) {\n\t this.__notifier = notifier;\n\t };\n\t Client.prototype.configure = function (opts) {\n\t if (opts === void 0) { opts = {}; }\n\t for (var k in opts) {\n\t this.config[k] = opts[k];\n\t }\n\t this.loadPlugins();\n\t return this;\n\t };\n\t Client.prototype.loadPlugins = function () {\n\t var _this = this;\n\t var pluginsToLoad = this.__pluginsLoaded\n\t ? this.config.__plugins.filter(function (plugin) { return plugin.shouldReloadOnConfigure; })\n\t : this.config.__plugins;\n\t pluginsToLoad.forEach(function (plugin) { return plugin.load(_this); });\n\t this.__pluginsLoaded = true;\n\t };\n\t Client.prototype.__initStore = function () {\n\t this.__store = new store_1.GlobalStore({ context: {}, breadcrumbs: [] }, this.config.maxBreadcrumbs);\n\t };\n\t Client.prototype.beforeNotify = function (handler) {\n\t this.__beforeNotifyHandlers.push(handler);\n\t return this;\n\t };\n\t Client.prototype.afterNotify = function (handler) {\n\t this.__afterNotifyHandlers.push(handler);\n\t return this;\n\t };\n\t Client.prototype.setContext = function (context) {\n\t if (typeof context === 'object' && context != null) {\n\t this.__store.setContext(context);\n\t }\n\t return this;\n\t };\n\t Client.prototype.resetContext = function (context) {\n\t this.logger.warn('Deprecation warning: `Honeybadger.resetContext()` has been deprecated; please use `Honeybadger.clear()` instead.');\n\t this.__store.clear();\n\t if (typeof context === 'object' && context !== null) {\n\t this.__store.setContext(context);\n\t }\n\t return this;\n\t };\n\t Client.prototype.clear = function () {\n\t this.__store.clear();\n\t return this;\n\t };\n\t Client.prototype.notify = function (noticeable, name, extra) {\n\t var _this = this;\n\t if (name === void 0) { name = undefined; }\n\t if (extra === void 0) { extra = undefined; }\n\t var notice = this.makeNotice(noticeable, name, extra);\n\t // we need to have the source file data before the beforeNotifyHandlers,\n\t // in case they modify them\n\t var sourceCodeData = notice && notice.backtrace ? notice.backtrace.map(function (trace) { return (0, util_1$6.shallowClone)(trace); }) : null;\n\t var preConditionsResult = this.__runPreconditions(notice);\n\t if (preConditionsResult instanceof Error) {\n\t (0, util_1$6.runAfterNotifyHandlers)(notice, this.__afterNotifyHandlers, preConditionsResult);\n\t return false;\n\t }\n\t if (preConditionsResult instanceof Promise) {\n\t preConditionsResult.then(function (result) {\n\t if (result instanceof Error) {\n\t (0, util_1$6.runAfterNotifyHandlers)(notice, _this.__afterNotifyHandlers, result);\n\t return false;\n\t }\n\t return _this.__send(notice, sourceCodeData);\n\t });\n\t return true;\n\t }\n\t this.__send(notice, sourceCodeData).catch(function (_err) { });\n\t return true;\n\t };\n\t /**\n\t * An async version of {@link notify} that resolves only after the notice has been reported to Honeybadger.\n\t * Implemented using the {@link afterNotify} hook.\n\t * Rejects if for any reason the report failed to be reported.\n\t * Useful in serverless environments (AWS Lambda).\n\t */\n\t Client.prototype.notifyAsync = function (noticeable, name, extra) {\n\t var _this = this;\n\t if (name === void 0) { name = undefined; }\n\t if (extra === void 0) { extra = undefined; }\n\t return new Promise(function (resolve, reject) {\n\t var applyAfterNotify = function (partialNotice) {\n\t var originalAfterNotify = partialNotice.afterNotify;\n\t partialNotice.afterNotify = function (err) {\n\t originalAfterNotify === null || originalAfterNotify === void 0 ? void 0 : originalAfterNotify.call(_this, err);\n\t if (err) {\n\t return reject(err);\n\t }\n\t resolve();\n\t };\n\t };\n\t // We have to respect any afterNotify hooks that come from the arguments\n\t var objectToOverride;\n\t if (noticeable.afterNotify) {\n\t objectToOverride = noticeable;\n\t }\n\t else if (name && name.afterNotify) {\n\t objectToOverride = name;\n\t }\n\t else if (extra && extra.afterNotify) {\n\t objectToOverride = extra;\n\t }\n\t else if (name && typeof name === 'object') {\n\t objectToOverride = name;\n\t }\n\t else if (extra) {\n\t objectToOverride = extra;\n\t }\n\t else {\n\t objectToOverride = name = {};\n\t }\n\t applyAfterNotify(objectToOverride);\n\t _this.notify(noticeable, name, extra);\n\t });\n\t };\n\t Client.prototype.makeNotice = function (noticeable, name, extra) {\n\t if (name === void 0) { name = undefined; }\n\t if (extra === void 0) { extra = undefined; }\n\t var notice = (0, util_1$6.makeNotice)(noticeable);\n\t if (name && !(typeof name === 'object')) {\n\t var n = String(name);\n\t name = { name: n };\n\t }\n\t if (name) {\n\t notice = (0, util_1$6.mergeNotice)(notice, name);\n\t }\n\t if (typeof extra === 'object' && extra !== null) {\n\t notice = (0, util_1$6.mergeNotice)(notice, extra);\n\t }\n\t if ((0, util_1$6.objectIsEmpty)(notice)) {\n\t return null;\n\t }\n\t var context = this.__store.getContents('context');\n\t var noticeTags = this.__constructTags(notice.tags);\n\t var contextTags = this.__constructTags(context['tags']);\n\t var configTags = this.__constructTags(this.config.tags);\n\t // Turning into a Set will remove duplicates\n\t var tags = noticeTags.concat(contextTags).concat(configTags);\n\t var uniqueTags = tags.filter(function (item, index) { return tags.indexOf(item) === index; });\n\t notice = (0, util_1$6.merge)(notice, {\n\t name: notice.name || 'Error',\n\t context: (0, util_1$6.merge)(context, notice.context),\n\t projectRoot: notice.projectRoot || this.config.projectRoot,\n\t environment: notice.environment || this.config.environment,\n\t component: notice.component || this.config.component,\n\t action: notice.action || this.config.action,\n\t revision: notice.revision || this.config.revision,\n\t tags: uniqueTags,\n\t });\n\t // If we're passed a custom backtrace array, use it\n\t // Otherwise we make one.\n\t if (!Array.isArray(notice.backtrace) || !notice.backtrace.length) {\n\t if (typeof notice.stack !== 'string' || !notice.stack.trim()) {\n\t notice.stack = (0, util_1$6.generateStackTrace)();\n\t notice.backtrace = (0, util_1$6.makeBacktrace)(notice.stack, true, this.logger);\n\t }\n\t else {\n\t notice.backtrace = (0, util_1$6.makeBacktrace)(notice.stack, false, this.logger);\n\t }\n\t }\n\t return notice;\n\t };\n\t Client.prototype.addBreadcrumb = function (message, opts) {\n\t if (!this.config.breadcrumbsEnabled) {\n\t return;\n\t }\n\t opts = opts || {};\n\t var metadata = (0, util_1$6.shallowClone)(opts.metadata);\n\t var category = opts.category || 'custom';\n\t var timestamp = new Date().toISOString();\n\t this.__store.addBreadcrumb({\n\t category: category,\n\t message: message,\n\t metadata: metadata,\n\t timestamp: timestamp\n\t });\n\t return this;\n\t };\n\t Client.prototype.__getBreadcrumbs = function () {\n\t return this.__store.getContents('breadcrumbs').slice();\n\t };\n\t Client.prototype.__getContext = function () {\n\t return this.__store.getContents('context');\n\t };\n\t Client.prototype.__developmentMode = function () {\n\t if (this.config.reportData === true) {\n\t return false;\n\t }\n\t return (this.config.environment && this.config.developmentEnvironments.includes(this.config.environment));\n\t };\n\t Client.prototype.__buildPayload = function (notice) {\n\t var headers = (0, util_1$6.filter)(notice.headers, this.config.filters) || {};\n\t var cgiData = (0, util_1$6.filter)(__assign(__assign({}, notice.cgiData), (0, util_1$6.formatCGIData)(headers, 'HTTP_')), this.config.filters);\n\t return {\n\t notifier: this.__notifier,\n\t breadcrumbs: {\n\t enabled: !!this.config.breadcrumbsEnabled,\n\t trail: notice.__breadcrumbs || []\n\t },\n\t error: {\n\t class: notice.name,\n\t message: notice.message,\n\t backtrace: notice.backtrace,\n\t fingerprint: notice.fingerprint,\n\t tags: notice.tags,\n\t causes: (0, util_1$6.getCauses)(notice, this.logger),\n\t },\n\t request: {\n\t url: (0, util_1$6.filterUrl)(notice.url, this.config.filters),\n\t component: notice.component,\n\t action: notice.action,\n\t context: notice.context,\n\t cgi_data: cgiData,\n\t params: (0, util_1$6.filter)(notice.params, this.config.filters) || {},\n\t session: (0, util_1$6.filter)(notice.session, this.config.filters) || {}\n\t },\n\t server: {\n\t project_root: notice.projectRoot,\n\t environment_name: notice.environment,\n\t revision: notice.revision,\n\t hostname: this.config.hostname,\n\t time: new Date().toUTCString()\n\t },\n\t details: notice.details || {}\n\t };\n\t };\n\t Client.prototype.__constructTags = function (tags) {\n\t if (!tags) {\n\t return [];\n\t }\n\t return tags.toString().split(TAG_SEPARATOR).filter(function (tag) { return NOT_BLANK.test(tag); });\n\t };\n\t Client.prototype.__runPreconditions = function (notice) {\n\t var _this = this;\n\t var preConditionError = null;\n\t if (!notice) {\n\t this.logger.debug('failed to build error report');\n\t preConditionError = new Error('failed to build error report');\n\t }\n\t if (this.config.reportData === false) {\n\t this.logger.debug('skipping error report: honeybadger.js is disabled', notice);\n\t preConditionError = new Error('honeybadger.js is disabled');\n\t }\n\t if (this.__developmentMode()) {\n\t this.logger.log('honeybadger.js is in development mode; the following error report will be sent in production.', notice);\n\t preConditionError = new Error('honeybadger.js is in development mode');\n\t }\n\t if (!this.config.apiKey) {\n\t this.logger.warn('could not send error report: no API key has been configured', notice);\n\t preConditionError = new Error('missing API key');\n\t }\n\t var beforeNotifyResult = (0, util_1$6.runBeforeNotifyHandlers)(notice, this.__beforeNotifyHandlers);\n\t if (!preConditionError && !beforeNotifyResult.result) {\n\t this.logger.debug('skipping error report: one or more beforeNotify handlers returned false', notice);\n\t preConditionError = new Error('beforeNotify handlers returned false');\n\t }\n\t if (beforeNotifyResult.results.length && beforeNotifyResult.results.some(function (result) { return result instanceof Promise; })) {\n\t return Promise.allSettled(beforeNotifyResult.results)\n\t .then(function (results) {\n\t if (!preConditionError && (results.some(function (result) { return result.status === 'rejected' || result.value === false; }))) {\n\t _this.logger.debug('skipping error report: one or more beforeNotify handlers returned false', notice);\n\t preConditionError = new Error('beforeNotify handlers (async) returned false');\n\t }\n\t if (preConditionError) {\n\t return preConditionError;\n\t }\n\t });\n\t }\n\t return preConditionError;\n\t };\n\t Client.prototype.__send = function (notice, originalBacktrace) {\n\t var _this = this;\n\t if (this.config.breadcrumbsEnabled) {\n\t this.addBreadcrumb('Honeybadger Notice', {\n\t category: 'notice',\n\t metadata: {\n\t message: notice.message,\n\t name: notice.name,\n\t stack: notice.stack\n\t }\n\t });\n\t notice.__breadcrumbs = this.__store.getContents('breadcrumbs');\n\t }\n\t else {\n\t notice.__breadcrumbs = [];\n\t }\n\t return (0, util_1$6.getSourceForBacktrace)(originalBacktrace, this.__getSourceFileHandler)\n\t .then(function (sourcePerTrace) { return __awaiter$1(_this, void 0, void 0, function () {\n\t var payload;\n\t return __generator$1(this, function (_a) {\n\t sourcePerTrace.forEach(function (source, index) {\n\t notice.backtrace[index].source = source;\n\t });\n\t payload = this.__buildPayload(notice);\n\t return [2 /*return*/, this.__transport\n\t .send({\n\t headers: {\n\t 'X-API-Key': this.config.apiKey,\n\t 'Content-Type': 'application/json',\n\t 'Accept': 'text/json, application/json'\n\t },\n\t method: 'POST',\n\t endpoint: (0, util_1$6.endpoint)(this.config.endpoint, '/v1/notices/js'),\n\t maxObjectDepth: this.config.maxObjectDepth,\n\t logger: this.logger,\n\t }, payload)];\n\t });\n\t }); })\n\t .then(function (res) {\n\t if (res.statusCode !== 201) {\n\t (0, util_1$6.runAfterNotifyHandlers)(notice, _this.__afterNotifyHandlers, new Error(\"Bad HTTP response: \".concat(res.statusCode)));\n\t _this.logger.warn(\"Error report failed: unknown response from server. code=\".concat(res.statusCode));\n\t return false;\n\t }\n\t var uuid = JSON.parse(res.body).id;\n\t (0, util_1$6.runAfterNotifyHandlers)((0, util_1$6.merge)(notice, {\n\t id: uuid\n\t }), _this.__afterNotifyHandlers);\n\t _this.logger.info(\"Error report sent \\u26A1 https://app.honeybadger.io/notice/\".concat(uuid));\n\t return true;\n\t })\n\t .catch(function (err) {\n\t _this.logger.error('Error report failed: an unknown error occurred.', \"message=\".concat(err.message));\n\t (0, util_1$6.runAfterNotifyHandlers)(notice, _this.__afterNotifyHandlers, err);\n\t return false;\n\t });\n\t };\n\t return Client;\n\t}());\n\tclient.Client = Client;\n\n\tvar types = {};\n\n\tObject.defineProperty(types, \"__esModule\", { value: true });\n\n\t(function (exports) {\n\t\tvar __createBinding = (commonjsGlobal && commonjsGlobal.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n\t\t if (k2 === undefined) k2 = k;\n\t\t var desc = Object.getOwnPropertyDescriptor(m, k);\n\t\t if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n\t\t desc = { enumerable: true, get: function() { return m[k]; } };\n\t\t }\n\t\t Object.defineProperty(o, k2, desc);\n\t\t}) : (function(o, m, k, k2) {\n\t\t if (k2 === undefined) k2 = k;\n\t\t o[k2] = m[k];\n\t\t}));\n\t\tvar __setModuleDefault = (commonjsGlobal && commonjsGlobal.__setModuleDefault) || (Object.create ? (function(o, v) {\n\t\t Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n\t\t}) : function(o, v) {\n\t\t o[\"default\"] = v;\n\t\t});\n\t\tvar __exportStar = (commonjsGlobal && commonjsGlobal.__exportStar) || function(m, exports) {\n\t\t for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n\t\t};\n\t\tvar __importStar = (commonjsGlobal && commonjsGlobal.__importStar) || function (mod) {\n\t\t if (mod && mod.__esModule) return mod;\n\t\t var result = {};\n\t\t if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n\t\t __setModuleDefault(result, mod);\n\t\t return result;\n\t\t};\n\t\tObject.defineProperty(exports, \"__esModule\", { value: true });\n\t\texports.Util = exports.Types = exports.Client = void 0;\n\t\tvar client_1 = client;\n\t\tObject.defineProperty(exports, \"Client\", { enumerable: true, get: function () { return client_1.Client; } });\n\t\t__exportStar(store, exports);\n\t\texports.Types = __importStar(types);\n\t\texports.Util = __importStar(util$1);\n\t\t\n\t} (src));\n\n\tvar util = {};\n\n\tObject.defineProperty(util, \"__esModule\", { value: true });\n\tutil.globalThisOrWindow = util.preferCatch = util.encodeCookie = util.decodeCookie = util.localURLPathname = util.parseURL = util.nativeFetch = util.stringTextOfElement = util.stringSelectorOfElement = util.stringNameOfElement = void 0;\n\t/**\n\t * Converts an HTMLElement into a human-readable string.\n\t * @param {!HTMLElement} element\n\t * @return {string}\n\t */\n\tfunction stringNameOfElement(element) {\n\t if (!element || !element.tagName) {\n\t return '';\n\t }\n\t var name = element.tagName.toLowerCase();\n\t // Ignore the root element in selectors and events.\n\t if (name === 'html') {\n\t return '';\n\t }\n\t if (element.id) {\n\t name += \"#\".concat(element.id);\n\t }\n\t var stringClassNames = element.getAttribute('class');\n\t if (stringClassNames) {\n\t stringClassNames.split(/\\s+/).forEach(function (className) {\n\t name += \".\".concat(className);\n\t });\n\t }\n\t ['alt', 'name', 'title', 'type'].forEach(function (attrName) {\n\t var attr = element.getAttribute(attrName);\n\t if (attr) {\n\t name += \"[\".concat(attrName, \"=\\\"\").concat(attr, \"\\\"]\");\n\t }\n\t });\n\t var siblings = getSiblings(element);\n\t if (siblings.length > 1) {\n\t name += \":nth-child(\".concat(Array.prototype.indexOf.call(siblings, element) + 1, \")\");\n\t }\n\t return name;\n\t}\n\tutil.stringNameOfElement = stringNameOfElement;\n\tfunction stringSelectorOfElement(element) {\n\t var name = stringNameOfElement(element);\n\t if (element.parentNode && element.parentNode.tagName) {\n\t var parentName = stringSelectorOfElement(element.parentNode);\n\t if (parentName.length > 0) {\n\t return \"\".concat(parentName, \" > \").concat(name);\n\t }\n\t }\n\t return name;\n\t}\n\tutil.stringSelectorOfElement = stringSelectorOfElement;\n\tfunction stringTextOfElement(element) {\n\t var text = element.textContent || element.innerText || '';\n\t if (!text && (element.type === 'submit' || element.type === 'button')) {\n\t text = element.value;\n\t }\n\t return truncate(text.trim(), 300);\n\t}\n\tutil.stringTextOfElement = stringTextOfElement;\n\tfunction nativeFetch() {\n\t var global = globalThisOrWindow();\n\t if (!global.fetch) {\n\t return false;\n\t }\n\t if (isNative(global.fetch)) {\n\t return true;\n\t }\n\t if (typeof document === 'undefined') {\n\t return false;\n\t }\n\t // If fetch isn't native, it may be wrapped by someone else. Try to get\n\t // a pristine function from an iframe.\n\t try {\n\t var sandbox = document.createElement('iframe');\n\t sandbox.style.display = 'none';\n\t document.head.appendChild(sandbox);\n\t var result = sandbox.contentWindow.fetch && isNative(sandbox.contentWindow.fetch);\n\t document.head.removeChild(sandbox);\n\t return result;\n\t }\n\t catch (err) {\n\t if (console && console.warn) {\n\t console.warn('failed to detect native fetch via iframe: ' + err);\n\t }\n\t }\n\t return false;\n\t}\n\tutil.nativeFetch = nativeFetch;\n\tfunction isNative(func) {\n\t return func.toString().indexOf('native') !== -1;\n\t}\n\tfunction parseURL(url) {\n\t // Regexp: https://tools.ietf.org/html/rfc3986#appendix-B\n\t var match = url.match(/^(([^:/?#]+):)?(\\/\\/([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$/) || {};\n\t return {\n\t protocol: match[2],\n\t host: match[4],\n\t pathname: match[5]\n\t };\n\t}\n\tutil.parseURL = parseURL;\n\tfunction localURLPathname(url) {\n\t var parsed = parseURL(url);\n\t var parsedDocURL = parseURL(document.URL);\n\t // URL must be relative\n\t if (!parsed.host || !parsed.protocol) {\n\t return parsed.pathname;\n\t }\n\t // Same domain\n\t if (parsed.protocol === parsedDocURL.protocol && parsed.host === parsedDocURL.host) {\n\t return parsed.pathname;\n\t }\n\t // x-domain\n\t return \"\".concat(parsed.protocol, \"://\").concat(parsed.host).concat(parsed.pathname);\n\t}\n\tutil.localURLPathname = localURLPathname;\n\tfunction decodeCookie(string) {\n\t var result = {};\n\t string.split(/[;,]\\s?/).forEach(function (pair) {\n\t var _a = pair.split('=', 2), key = _a[0], value = _a[1];\n\t result[key] = value;\n\t });\n\t return result;\n\t}\n\tutil.decodeCookie = decodeCookie;\n\tfunction encodeCookie(object) {\n\t if (typeof object !== 'object') {\n\t return undefined;\n\t }\n\t var cookies = [];\n\t for (var k in object) {\n\t cookies.push(k + '=' + object[k]);\n\t }\n\t return cookies.join(';');\n\t}\n\tutil.encodeCookie = encodeCookie;\n\t// Helpers\n\tfunction getSiblings(element) {\n\t try {\n\t var nodes = element.parentNode.childNodes;\n\t var siblings_1 = [];\n\t Array.prototype.forEach.call(nodes, function (node) {\n\t if (node.tagName && node.tagName === element.tagName) {\n\t siblings_1.push(node);\n\t }\n\t });\n\t return siblings_1;\n\t }\n\t catch (e) {\n\t return [];\n\t }\n\t}\n\tfunction truncate(string, length) {\n\t if (string.length > length) {\n\t string = string.substr(0, length) + '...';\n\t }\n\t return string;\n\t}\n\t// Used to decide which error handling method to use when wrapping async\n\t// handlers: try/catch, or `window.onerror`. When available, `window.onerror`\n\t// will provide more information in modern browsers.\n\tutil.preferCatch = (function () {\n\t var preferCatch = true;\n\t // In case we're in an environment without access to \"window\", lets make sure theres a window.\n\t if (typeof window === 'undefined')\n\t return preferCatch;\n\t // IE < 10\n\t if (!window.atob) {\n\t preferCatch = false;\n\t }\n\t // Modern browsers support the full ErrorEvent API\n\t // See https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent\n\t if (window.ErrorEvent) {\n\t try {\n\t if ((new window.ErrorEvent('')).colno === 0) {\n\t preferCatch = false;\n\t }\n\t // eslint-disable-next-line no-empty\n\t }\n\t catch (_e) { }\n\t }\n\t return preferCatch;\n\t})();\n\t/** globalThis has fairly good support. But just in case, lets check its defined.\n\t * @see {https://caniuse.com/?search=globalThis}\n\t */\n\tfunction globalThisOrWindow() {\n\t if (typeof globalThis !== 'undefined') {\n\t return globalThis;\n\t }\n\t if (typeof self !== 'undefined') {\n\t return self;\n\t }\n\t return window;\n\t}\n\tutil.globalThisOrWindow = globalThisOrWindow;\n\n\tvar onerror = {};\n\n\tObject.defineProperty(onerror, \"__esModule\", { value: true });\n\tonerror.onError = onerror.ignoreNextOnError = void 0;\n\t/* eslint-disable prefer-rest-params */\n\tvar core_1$5 = src;\n\tvar util_1$5 = util;\n\tvar instrument$4 = core_1$5.Util.instrument, makeNotice = core_1$5.Util.makeNotice;\n\tvar ignoreOnError = 0;\n\tvar currentTimeout;\n\tfunction ignoreNextOnError() {\n\t ignoreOnError += 1;\n\t clearTimeout(currentTimeout);\n\t currentTimeout = setTimeout(function () {\n\t ignoreOnError = 0;\n\t });\n\t}\n\tonerror.ignoreNextOnError = ignoreNextOnError;\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tfunction onError(_window) {\n\t if (_window === void 0) { _window = (0, util_1$5.globalThisOrWindow)(); }\n\t return {\n\t load: function (client) {\n\t instrument$4(_window, 'onerror', function (original) {\n\t var onerror = function (msg, url, line, col, err) {\n\t client.logger.debug('window.onerror callback invoked', arguments);\n\t if (ignoreOnError > 0) {\n\t client.logger.debug('Ignoring window.onerror (error likely reported earlier)', arguments);\n\t ignoreOnError -= 1;\n\t return;\n\t }\n\t // See https://developer.mozilla.org/en/docs/Web/API/GlobalEventHandlers/onerror#Notes\n\t if (line === 0 && /Script error\\.?/.test(msg)) {\n\t if (client.config.enableUncaught) {\n\t // Log only if the user wants to report uncaught errors\n\t client.logger.warn('Ignoring cross-domain script error: enable CORS to track these types of errors', arguments);\n\t }\n\t return;\n\t }\n\t var notice = makeNotice(err);\n\t if (!notice.name) {\n\t notice.name = 'window.onerror';\n\t }\n\t if (!notice.message) {\n\t notice.message = msg;\n\t }\n\t if (!notice.stack) {\n\t // Simulate v8 stack\n\t notice.stack = [notice.message, '\\n at ? (', url || 'unknown', ':', line || 0, ':', col || 0, ')'].join('');\n\t }\n\t client.addBreadcrumb((notice.name === 'window.onerror' || !notice.name) ? 'window.onerror' : \"window.onerror: \".concat(notice.name), {\n\t category: 'error',\n\t metadata: {\n\t name: notice.name,\n\t message: notice.message,\n\t stack: notice.stack\n\t }\n\t });\n\t if (client.config.enableUncaught) {\n\t client.notify(notice);\n\t }\n\t };\n\t return function (msg, url, line, col, err) {\n\t onerror(msg, url, line, col, err);\n\t if (typeof original === 'function') {\n\t return original.apply(_window, arguments);\n\t }\n\t return false;\n\t };\n\t });\n\t }\n\t };\n\t}\n\tonerror.onError = onError;\n\n\tvar onunhandledrejection = {};\n\n\tObject.defineProperty(onunhandledrejection, \"__esModule\", { value: true });\n\t/* eslint-disable prefer-rest-params */\n\tvar core_1$4 = src;\n\tvar util_1$4 = util;\n\tvar instrument$3 = core_1$4.Util.instrument;\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tfunction default_1$3(_window) {\n\t if (_window === void 0) { _window = (0, util_1$4.globalThisOrWindow)(); }\n\t return {\n\t load: function (client) {\n\t if (!client.config.enableUnhandledRejection) {\n\t return;\n\t }\n\t instrument$3(_window, 'onunhandledrejection', function (original) {\n\t // See https://developer.mozilla.org/en-US/docs/Web/API/Window/unhandledrejection_event\n\t function onunhandledrejection(promiseRejectionEvent) {\n\t var _a;\n\t client.logger.debug('window.onunhandledrejection callback invoked', arguments);\n\t if (!client.config.enableUnhandledRejection) {\n\t return;\n\t }\n\t var reason = promiseRejectionEvent.reason;\n\t if (reason instanceof Error) {\n\t // simulate v8 stack\n\t // const fileName = reason.fileName || 'unknown'\n\t // const lineNumber = reason.lineNumber || 0\n\t var fileName = 'unknown';\n\t var lineNumber = 0;\n\t var stackFallback = \"\".concat(reason.message, \"\\n at ? (\").concat(fileName, \":\").concat(lineNumber, \")\");\n\t var stack = reason.stack || stackFallback;\n\t var err = {\n\t name: reason.name,\n\t message: \"UnhandledPromiseRejectionWarning: \".concat(reason),\n\t stack: stack\n\t };\n\t client.addBreadcrumb(\"window.onunhandledrejection: \".concat(err.name), {\n\t category: 'error',\n\t metadata: err\n\t });\n\t client.notify(err);\n\t return;\n\t }\n\t var message = typeof reason === 'string' ? reason : ((_a = JSON.stringify(reason)) !== null && _a !== void 0 ? _a : 'Unspecified reason');\n\t client.notify({\n\t name: 'window.onunhandledrejection',\n\t message: \"UnhandledPromiseRejectionWarning: \".concat(message)\n\t });\n\t }\n\t return function (promiseRejectionEvent) {\n\t onunhandledrejection(promiseRejectionEvent);\n\t if (typeof original === 'function') {\n\t original.apply(this, arguments);\n\t }\n\t };\n\t });\n\t }\n\t };\n\t}\n\tonunhandledrejection.default = default_1$3;\n\n\tvar breadcrumbs = {};\n\n\tObject.defineProperty(breadcrumbs, \"__esModule\", { value: true });\n\t/* eslint-disable prefer-rest-params */\n\tvar core_1$3 = src;\n\tvar util_1$3 = util;\n\tvar sanitize$1 = core_1$3.Util.sanitize, instrument$2 = core_1$3.Util.instrument;\n\tfunction default_1$2(_window) {\n\t if (_window === void 0) { _window = (0, util_1$3.globalThisOrWindow)(); }\n\t return {\n\t load: function (client) {\n\t function breadcrumbsEnabled(type) {\n\t if (client.config.breadcrumbsEnabled === true) {\n\t return true;\n\t }\n\t if (type) {\n\t return client.config.breadcrumbsEnabled[type] === true;\n\t }\n\t return client.config.breadcrumbsEnabled !== false;\n\t }\n\t // Breadcrumbs: instrument console\n\t (function () {\n\t if (!breadcrumbsEnabled('console')) {\n\t return;\n\t }\n\t function inspectArray(obj) {\n\t if (!Array.isArray(obj)) {\n\t return '';\n\t }\n\t return obj.map(function (value) {\n\t try {\n\t return String(value);\n\t }\n\t catch (e) {\n\t return '[unknown]';\n\t }\n\t }).join(' ');\n\t }\n\t ['debug', 'info', 'warn', 'error', 'log'].forEach(function (level) {\n\t instrument$2(_window.console, level, function (original) {\n\t return function () {\n\t var args = Array.prototype.slice.call(arguments);\n\t var message = inspectArray(args);\n\t var opts = {\n\t category: 'log',\n\t metadata: {\n\t level: level,\n\t arguments: sanitize$1(args, 3)\n\t }\n\t };\n\t client.addBreadcrumb(message, opts);\n\t if (typeof original === 'function') {\n\t Function.prototype.apply.call(original, _window.console, arguments);\n\t }\n\t };\n\t });\n\t });\n\t })();\n\t // Breadcrumbs: instrument click events\n\t (function () {\n\t if (!breadcrumbsEnabled('dom')) {\n\t return;\n\t }\n\t if (typeof _window.addEventListener !== 'function') {\n\t return;\n\t }\n\t _window.addEventListener('click', function (event) {\n\t var message, selector, text;\n\t try {\n\t message = (0, util_1$3.stringNameOfElement)(event.target);\n\t selector = (0, util_1$3.stringSelectorOfElement)(event.target);\n\t text = (0, util_1$3.stringTextOfElement)(event.target);\n\t }\n\t catch (e) {\n\t message = 'UI Click';\n\t selector = '[unknown]';\n\t text = '[unknown]';\n\t }\n\t // There's nothing to display\n\t if (message.length === 0) {\n\t return;\n\t }\n\t client.addBreadcrumb(message, {\n\t category: 'ui.click',\n\t metadata: {\n\t selector: selector,\n\t text: text,\n\t event: event\n\t }\n\t });\n\t }, _window.location ? true : false); // In CloudFlare workers useCapture must be false. window.location is a hacky way to detect it.\n\t })();\n\t // Breadcrumbs: instrument XMLHttpRequest\n\t (function () {\n\t if (!breadcrumbsEnabled('network')) {\n\t return;\n\t }\n\t // Some environments may not support XMLHttpRequest.\n\t if (typeof XMLHttpRequest === 'undefined') {\n\t return;\n\t }\n\t // -- On xhr.open: capture initial metadata\n\t instrument$2(XMLHttpRequest.prototype, 'open', function (original) {\n\t return function () {\n\t // eslint-disable-next-line @typescript-eslint/no-this-alias\n\t var xhr = this;\n\t var rawUrl = arguments[1];\n\t // in case of url being URL object (which is valid input) we need to stringify it\n\t var url = typeof rawUrl === 'string' ? rawUrl : String(rawUrl);\n\t var method = typeof arguments[0] === 'string' ? arguments[0].toUpperCase() : arguments[0];\n\t var message = \"\".concat(method, \" \").concat((0, util_1$3.localURLPathname)(url));\n\t this.__hb_xhr = {\n\t type: 'xhr',\n\t method: method,\n\t url: url,\n\t message: message\n\t };\n\t if (typeof original === 'function') {\n\t original.apply(xhr, arguments);\n\t }\n\t };\n\t });\n\t // -- On xhr.send: set up xhr.onreadystatechange to report breadcrumb\n\t instrument$2(XMLHttpRequest.prototype, 'send', function (original) {\n\t return function () {\n\t // eslint-disable-next-line @typescript-eslint/no-this-alias\n\t var xhr = this;\n\t function onreadystatechangeHandler() {\n\t if (xhr.readyState === 4) {\n\t var message = void 0;\n\t if (xhr.__hb_xhr) {\n\t xhr.__hb_xhr.status_code = xhr.status;\n\t message = xhr.__hb_xhr.message;\n\t delete xhr.__hb_xhr.message;\n\t }\n\t client.addBreadcrumb(message || 'XMLHttpRequest', {\n\t category: 'request',\n\t metadata: xhr.__hb_xhr\n\t });\n\t }\n\t }\n\t if ('onreadystatechange' in xhr && typeof xhr.onreadystatechange === 'function') {\n\t instrument$2(xhr, 'onreadystatechange', function (original) {\n\t return function () {\n\t onreadystatechangeHandler();\n\t if (typeof original === 'function') {\n\t // eslint-disable-next-line prefer-rest-params\n\t original.apply(this, arguments);\n\t }\n\t };\n\t });\n\t }\n\t else {\n\t xhr.onreadystatechange = onreadystatechangeHandler;\n\t }\n\t if (typeof original === 'function') {\n\t // eslint-disable-next-line prefer-rest-params\n\t original.apply(xhr, arguments);\n\t }\n\t };\n\t });\n\t })();\n\t // Breadcrumbs: instrument fetch\n\t (function () {\n\t if (!breadcrumbsEnabled('network')) {\n\t return;\n\t }\n\t if (!(0, util_1$3.nativeFetch)()) {\n\t // Polyfills use XHR.\n\t return;\n\t }\n\t instrument$2(_window, 'fetch', function (original) {\n\t return function () {\n\t // eslint-disable-next-line prefer-rest-params\n\t var input = arguments[0];\n\t var method = 'GET';\n\t var url;\n\t if (typeof input === 'string') {\n\t url = input;\n\t }\n\t else if ('Request' in _window && input instanceof Request) {\n\t url = input.url;\n\t if (input.method) {\n\t method = input.method;\n\t }\n\t }\n\t else {\n\t url = String(input);\n\t }\n\t if (arguments[1] && arguments[1].method) {\n\t method = arguments[1].method;\n\t }\n\t if (typeof method === 'string') {\n\t method = method.toUpperCase();\n\t }\n\t // localURLPathname cant be constructed for CF workers due to reliance on \"document\".\n\t var message = \"\".concat(method, \" \").concat(typeof document === 'undefined' ? url : (0, util_1$3.localURLPathname)(url));\n\t var metadata = {\n\t type: 'fetch',\n\t method: method,\n\t url: url\n\t };\n\t return original\n\t .apply(this, arguments)\n\t .then(function (response) {\n\t metadata['status_code'] = response.status;\n\t client.addBreadcrumb(message, {\n\t category: 'request',\n\t metadata: metadata\n\t });\n\t return response;\n\t })\n\t .catch(function (error) {\n\t client.addBreadcrumb('fetch error', {\n\t category: 'error',\n\t metadata: metadata\n\t });\n\t throw error;\n\t });\n\t };\n\t });\n\t })();\n\t // Breadcrumbs: instrument navigation\n\t (function () {\n\t if (!breadcrumbsEnabled('navigation')) {\n\t return;\n\t }\n\t if (_window.location == null) {\n\t // Most likely in a CF worker, we should be listening to fetch requests instead.\n\t return;\n\t }\n\t // The last known href of the current page\n\t var lastHref = _window.location.href;\n\t function recordUrlChange(from, to) {\n\t lastHref = to;\n\t client.addBreadcrumb('Page changed', {\n\t category: 'navigation',\n\t metadata: {\n\t from: from,\n\t to: to\n\t }\n\t });\n\t }\n\t if (typeof addEventListener === 'function') {\n\t addEventListener('popstate', function (_event) {\n\t recordUrlChange(lastHref, _window.location.href);\n\t });\n\t }\n\t if (typeof _window.history === 'undefined') {\n\t return;\n\t }\n\t // https://developer.mozilla.org/en-US/docs/Web/API/History/pushState\n\t // https://developer.mozilla.org/en-US/docs/Web/API/History/replaceState\n\t function historyWrapper(original) {\n\t return function () {\n\t var url = arguments.length > 2 ? arguments[2] : undefined;\n\t if (url) {\n\t recordUrlChange(lastHref, String(url));\n\t }\n\t return original.apply(this, arguments);\n\t };\n\t }\n\t instrument$2(_window.history, 'pushState', historyWrapper);\n\t instrument$2(_window.history, 'replaceState', historyWrapper);\n\t })();\n\t }\n\t };\n\t}\n\tbreadcrumbs.default = default_1$2;\n\n\tvar timers = {};\n\n\tObject.defineProperty(timers, \"__esModule\", { value: true });\n\t/* eslint-disable prefer-rest-params */\n\tvar core_1$2 = src;\n\tvar util_1$2 = util;\n\tvar instrument$1 = core_1$2.Util.instrument;\n\tfunction default_1$1(_window) {\n\t if (_window === void 0) { _window = (0, util_1$2.globalThisOrWindow)(); }\n\t return {\n\t load: function (client) {\n\t // Wrap timers\n\t (function () {\n\t function instrumentTimer(wrapOpts) {\n\t return function (original) {\n\t // See https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setTimeout\n\t return function (func, delay) {\n\t if (typeof func === 'function') {\n\t var args_1 = Array.prototype.slice.call(arguments, 2);\n\t func = client.__wrap(func, wrapOpts);\n\t return original(function () {\n\t func.apply(void 0, args_1);\n\t }, delay);\n\t }\n\t else {\n\t return original(func, delay);\n\t }\n\t };\n\t };\n\t }\n\t instrument$1(_window, 'setTimeout', instrumentTimer({ component: 'setTimeout' }));\n\t instrument$1(_window, 'setInterval', instrumentTimer({ component: 'setInterval' }));\n\t })();\n\t }\n\t };\n\t}\n\ttimers.default = default_1$1;\n\n\tvar event_listeners = {};\n\n\tObject.defineProperty(event_listeners, \"__esModule\", { value: true });\n\tvar core_1$1 = src;\n\tvar util_1$1 = util;\n\tvar instrument = core_1$1.Util.instrument;\n\tfunction default_1(_window) {\n\t if (_window === void 0) { _window = (0, util_1$1.globalThisOrWindow)(); }\n\t return {\n\t load: function (client) {\n\t // Wrap event listeners\n\t // Event targets borrowed from bugsnag-js:\n\t // See https://github.com/bugsnag/bugsnag-js/blob/d55af916a4d3c7757f979d887f9533fe1a04cc93/src/bugsnag.js#L542\n\t var targets = ['EventTarget', 'Window', 'Node', 'ApplicationCache', 'AudioTrackList', 'ChannelMergerNode', 'CryptoOperation', 'EventSource', 'FileReader', 'HTMLUnknownElement', 'IDBDatabase', 'IDBRequest', 'IDBTransaction', 'KeyOperation', 'MediaController', 'MessagePort', 'ModalWindow', 'Notification', 'SVGElementInstance', 'Screen', 'TextTrack', 'TextTrackCue', 'TextTrackList', 'WebSocket', 'WebSocketWorker', 'Worker', 'XMLHttpRequest', 'XMLHttpRequestEventTarget', 'XMLHttpRequestUpload'];\n\t targets.forEach(function (prop) {\n\t var prototype = _window[prop] && _window[prop].prototype;\n\t if (prototype && Object.prototype.hasOwnProperty.call(prototype, 'addEventListener')) {\n\t instrument(prototype, 'addEventListener', function (original) {\n\t var wrapOpts = { component: \"\".concat(prop, \".prototype.addEventListener\") };\n\t // See https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener\n\t return function (type, listener, useCapture, wantsUntrusted) {\n\t try {\n\t if (listener && listener.handleEvent != null) {\n\t listener.handleEvent = client.__wrap(listener.handleEvent, wrapOpts);\n\t }\n\t }\n\t catch (e) {\n\t // Ignore 'Permission denied to access property \"handleEvent\"' errors.\n\t client.logger.error(e);\n\t }\n\t return original.call(this, type, client.__wrap(listener, wrapOpts), useCapture, wantsUntrusted);\n\t };\n\t });\n\t instrument(prototype, 'removeEventListener', function (original) {\n\t return function (type, listener, useCapture, wantsUntrusted) {\n\t original.call(this, type, listener, useCapture, wantsUntrusted);\n\t return original.call(this, type, client.__wrap(listener), useCapture, wantsUntrusted);\n\t };\n\t });\n\t }\n\t });\n\t }\n\t };\n\t}\n\tevent_listeners.default = default_1;\n\n\tvar transport = {};\n\n\tvar __awaiter = (commonjsGlobal && commonjsGlobal.__awaiter) || function (thisArg, _arguments, P, generator) {\n\t function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n\t return new (P || (P = Promise))(function (resolve, reject) {\n\t function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n\t function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n\t function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n\t step((generator = generator.apply(thisArg, _arguments || [])).next());\n\t });\n\t};\n\tvar __generator = (commonjsGlobal && commonjsGlobal.__generator) || function (thisArg, body) {\n\t var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n\t return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n\t function verb(n) { return function (v) { return step([n, v]); }; }\n\t function step(op) {\n\t if (f) throw new TypeError(\"Generator is already executing.\");\n\t while (_) try {\n\t 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;\n\t if (y = 0, t) op = [op[0] & 2, t.value];\n\t switch (op[0]) {\n\t case 0: case 1: t = op; break;\n\t case 4: _.label++; return { value: op[1], done: false };\n\t case 5: _.label++; y = op[1]; op = [0]; continue;\n\t case 7: op = _.ops.pop(); _.trys.pop(); continue;\n\t default:\n\t if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n\t if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n\t if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n\t if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n\t if (t[2]) _.ops.pop();\n\t _.trys.pop(); continue;\n\t }\n\t op = body.call(thisArg, _);\n\t } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n\t if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n\t }\n\t};\n\tObject.defineProperty(transport, \"__esModule\", { value: true });\n\ttransport.BrowserTransport = void 0;\n\tvar core_1 = src;\n\tvar util_1 = util;\n\tvar sanitize = core_1.Util.sanitize;\n\t/**\n\t * Helper function to get typesafe Object.entries()\n\t * https://twitter.com/mattpocockuk/status/1502264005251018754?lang=en\n\t */\n\tfunction objectEntries(obj) {\n\t return Object.entries(obj);\n\t}\n\tvar BrowserTransport = /** @class */ (function () {\n\t function BrowserTransport() {\n\t }\n\t BrowserTransport.prototype.send = function (options, payload) {\n\t return __awaiter(this, void 0, void 0, function () {\n\t var headerArray, headers, requestInit, response, body;\n\t return __generator(this, function (_a) {\n\t switch (_a.label) {\n\t case 0:\n\t headerArray = options.headers ? objectEntries(options.headers) : [];\n\t headers = {};\n\t headerArray.forEach(function (_a) {\n\t var key = _a[0], value = _a[1];\n\t if (key != null && value != null) {\n\t headers[String(key)] = String(value);\n\t }\n\t });\n\t requestInit = {\n\t method: options.method,\n\t headers: headers\n\t };\n\t // GET methods cannot have a body.\n\t if (options.method === 'POST') {\n\t requestInit.body = payload ? JSON.stringify(sanitize(payload, options.maxObjectDepth)) : undefined;\n\t }\n\t return [4 /*yield*/, (0, util_1.globalThisOrWindow)().fetch(options.endpoint, requestInit)];\n\t case 1:\n\t response = _a.sent();\n\t return [4 /*yield*/, response.text()];\n\t case 2:\n\t body = _a.sent();\n\t return [2 /*return*/, Promise.resolve({ statusCode: response.status, body: body })];\n\t }\n\t });\n\t });\n\t };\n\t return BrowserTransport;\n\t}());\n\ttransport.BrowserTransport = BrowserTransport;\n\n\t(function (exports) {\n\t\tvar __extends = (commonjsGlobal && commonjsGlobal.__extends) || (function () {\n\t\t var extendStatics = function (d, b) {\n\t\t extendStatics = Object.setPrototypeOf ||\n\t\t ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n\t\t function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n\t\t return extendStatics(d, b);\n\t\t };\n\t\t return function (d, b) {\n\t\t if (typeof b !== \"function\" && b !== null)\n\t\t throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n\t\t extendStatics(d, b);\n\t\t function __() { this.constructor = d; }\n\t\t d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n\t\t };\n\t\t})();\n\t\tvar __assign = (commonjsGlobal && commonjsGlobal.__assign) || function () {\n\t\t __assign = Object.assign || function(t) {\n\t\t for (var s, i = 1, n = arguments.length; i < n; i++) {\n\t\t s = arguments[i];\n\t\t for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n\t\t t[p] = s[p];\n\t\t }\n\t\t return t;\n\t\t };\n\t\t return __assign.apply(this, arguments);\n\t\t};\n\t\tvar __awaiter = (commonjsGlobal && commonjsGlobal.__awaiter) || function (thisArg, _arguments, P, generator) {\n\t\t function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n\t\t return new (P || (P = Promise))(function (resolve, reject) {\n\t\t function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n\t\t function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n\t\t function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n\t\t step((generator = generator.apply(thisArg, _arguments || [])).next());\n\t\t });\n\t\t};\n\t\tvar __generator = (commonjsGlobal && commonjsGlobal.__generator) || function (thisArg, body) {\n\t\t var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n\t\t return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n\t\t function verb(n) { return function (v) { return step([n, v]); }; }\n\t\t function step(op) {\n\t\t if (f) throw new TypeError(\"Generator is already executing.\");\n\t\t while (_) try {\n\t\t 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;\n\t\t if (y = 0, t) op = [op[0] & 2, t.value];\n\t\t switch (op[0]) {\n\t\t case 0: case 1: t = op; break;\n\t\t case 4: _.label++; return { value: op[1], done: false };\n\t\t case 5: _.label++; y = op[1]; op = [0]; continue;\n\t\t case 7: op = _.ops.pop(); _.trys.pop(); continue;\n\t\t default:\n\t\t if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n\t\t if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n\t\t if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n\t\t if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n\t\t if (t[2]) _.ops.pop();\n\t\t _.trys.pop(); continue;\n\t\t }\n\t\t op = body.call(thisArg, _);\n\t\t } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n\t\t if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n\t\t }\n\t\t};\n\t\tvar __importDefault = (commonjsGlobal && commonjsGlobal.__importDefault) || function (mod) {\n\t\t return (mod && mod.__esModule) ? mod : { \"default\": mod };\n\t\t};\n\t\tObject.defineProperty(exports, \"__esModule\", { value: true });\n\t\texports.Types = exports.getUserFeedbackScriptUrl = void 0;\n\t\tvar core_1 = src;\n\t\tvar util_1 = util;\n\t\tvar onerror_1 = onerror;\n\t\tvar onunhandledrejection_1 = __importDefault(onunhandledrejection);\n\t\tvar breadcrumbs_1 = __importDefault(breadcrumbs);\n\t\tvar timers_1 = __importDefault(timers);\n\t\tvar event_listeners_1 = __importDefault(event_listeners);\n\t\tvar transport_1 = transport;\n\t\tvar merge = core_1.Util.merge, filter = core_1.Util.filter, objectIsExtensible = core_1.Util.objectIsExtensible;\n\t\tvar getProjectRoot = function () {\n\t\t var global = (0, util_1.globalThisOrWindow)();\n\t\t var projectRoot = '';\n\t\t // Cloudflare workers do not have access to location API.\n\t\t if (global.location != null) {\n\t\t projectRoot = global.location.protocol + '//' + global.location.host;\n\t\t }\n\t\t return projectRoot;\n\t\t};\n\t\tvar getUserFeedbackScriptUrl = function (version) {\n\t\t var majorMinorVersion = version.split('.').slice(0, 2).join('.');\n\t\t return \"https://js.honeybadger.io/v\".concat(majorMinorVersion, \"/honeybadger-feedback-form.js\");\n\t\t};\n\t\texports.getUserFeedbackScriptUrl = getUserFeedbackScriptUrl;\n\t\tvar Honeybadger = /** @class */ (function (_super) {\n\t\t __extends(Honeybadger, _super);\n\t\t function Honeybadger(opts) {\n\t\t if (opts === void 0) { opts = {}; }\n\t\t var _this = _super.call(this, __assign({ userFeedbackEndpoint: 'https://api.honeybadger.io/v2/feedback', async: true, maxErrors: null, projectRoot: getProjectRoot() }, opts), new transport_1.BrowserTransport()) || this;\n\t\t /** @internal */\n\t\t _this.__errorsSent = 0;\n\t\t /** @internal */\n\t\t _this.__lastWrapErr = undefined;\n\t\t /** @internal */\n\t\t _this.__lastNoticeId = undefined;\n\t\t /** @internal */\n\t\t _this.__beforeNotifyHandlers = [\n\t\t function (notice) {\n\t\t if (_this.__exceedsMaxErrors()) {\n\t\t _this.logger.debug('Dropping notice: max errors exceeded', notice);\n\t\t return false;\n\t\t }\n\t\t if (notice && !notice.url && typeof document !== 'undefined') {\n\t\t notice.url = document.URL;\n\t\t }\n\t\t _this.__incrementErrorsCount();\n\t\t return true;\n\t\t }\n\t\t ];\n\t\t _this.__afterNotifyHandlers = [\n\t\t function (_error, notice) {\n\t\t if (notice) {\n\t\t _this.__lastNoticeId = notice.id;\n\t\t }\n\t\t }\n\t\t ];\n\t\t return _this;\n\t\t }\n\t\t Honeybadger.prototype.configure = function (opts) {\n\t\t if (opts === void 0) { opts = {}; }\n\t\t return _super.prototype.configure.call(this, opts);\n\t\t };\n\t\t Honeybadger.prototype.resetMaxErrors = function () {\n\t\t return (this.__errorsSent = 0);\n\t\t };\n\t\t Honeybadger.prototype.factory = function (opts) {\n\t\t // eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t var clone = new Honeybadger(opts);\n\t\t clone.setNotifier(this.getNotifier());\n\t\t return clone;\n\t\t };\n\t\t Honeybadger.prototype.checkIn = function (_id) {\n\t\t throw new Error('Honeybadger.checkIn() is not supported on the browser');\n\t\t };\n\t\t Honeybadger.prototype.showUserFeedbackForm = function (options) {\n\t\t if (options === void 0) { options = {}; }\n\t\t return __awaiter(this, void 0, void 0, function () {\n\t\t var global;\n\t\t return __generator(this, function (_a) {\n\t\t if (!this.config || !this.config.apiKey) {\n\t\t this.logger.debug('Client not initialized');\n\t\t return [2 /*return*/];\n\t\t }\n\t\t if (!this.__lastNoticeId) {\n\t\t this.logger.debug(\"Can't show user feedback form without a notice already reported\");\n\t\t return [2 /*return*/];\n\t\t }\n\t\t global = (0, util_1.globalThisOrWindow)();\n\t\t if (typeof global.document === 'undefined') {\n\t\t this.logger.debug('global.document is undefined. Cannot attach script');\n\t\t return [2 /*return*/];\n\t\t }\n\t\t if (this.isUserFeedbackScriptUrlAlreadyVisible()) {\n\t\t this.logger.debug('User feedback form is already visible');\n\t\t return [2 /*return*/];\n\t\t }\n\t\t global['honeybadgerUserFeedbackOptions'] = __assign(__assign({}, options), { apiKey: this.config.apiKey, endpoint: this.config.userFeedbackEndpoint, noticeId: this.__lastNoticeId });\n\t\t this.appendUserFeedbackScriptTag(global, options);\n\t\t return [2 /*return*/];\n\t\t });\n\t\t });\n\t\t };\n\t\t Honeybadger.prototype.appendUserFeedbackScriptTag = function (window, options) {\n\t\t if (options === void 0) { options = {}; }\n\t\t var script = window.document.createElement('script');\n\t\t script.setAttribute('src', this.getUserFeedbackSubmitUrl());\n\t\t script.setAttribute('async', 'true');\n\t\t if (options.onLoad) {\n\t\t script.onload = options.onLoad;\n\t\t }\n\t\t (commonjsGlobal.document.head || commonjsGlobal.document.body).appendChild(script);\n\t\t };\n\t\t Honeybadger.prototype.isUserFeedbackScriptUrlAlreadyVisible = function () {\n\t\t var global = (0, util_1.globalThisOrWindow)();\n\t\t var feedbackScriptUrl = this.getUserFeedbackSubmitUrl();\n\t\t for (var i = 0; i < global.document.scripts.length; i++) {\n\t\t var script = global.document.scripts[i];\n\t\t if (script.src === feedbackScriptUrl) {\n\t\t return true;\n\t\t }\n\t\t }\n\t\t return false;\n\t\t };\n\t\t Honeybadger.prototype.getUserFeedbackSubmitUrl = function () {\n\t\t return (0, exports.getUserFeedbackScriptUrl)(this.getVersion());\n\t\t };\n\t\t /** @internal */\n\t\t Honeybadger.prototype.__buildPayload = function (notice) {\n\t\t var cgiData = {\n\t\t HTTP_USER_AGENT: undefined,\n\t\t HTTP_REFERER: undefined,\n\t\t HTTP_COOKIE: undefined\n\t\t };\n\t\t if (typeof navigator !== 'undefined' && navigator.userAgent) {\n\t\t cgiData.HTTP_USER_AGENT = navigator.userAgent;\n\t\t }\n\t\t if (typeof document !== 'undefined' && document.referrer.match(/\\S/)) {\n\t\t cgiData.HTTP_REFERER = document.referrer;\n\t\t }\n\t\t var cookiesObject;\n\t\t if (typeof notice.cookies === 'string') {\n\t\t cookiesObject = (0, util_1.decodeCookie)(notice.cookies);\n\t\t }\n\t\t else {\n\t\t cookiesObject = notice.cookies;\n\t\t }\n\t\t if (cookiesObject) {\n\t\t cgiData.HTTP_COOKIE = (0, util_1.encodeCookie)(filter(cookiesObject, this.config.filters));\n\t\t }\n\t\t var payload = _super.prototype.__buildPayload.call(this, notice);\n\t\t payload.request.cgi_data = merge(cgiData, payload.request.cgi_data);\n\t\t return payload;\n\t\t };\n\t\t /**\n\t\t * wrap always returns the same function so that callbacks can be removed via\n\t\t * removeEventListener.\n\t\t * @internal\n\t\t */\n\t\t Honeybadger.prototype.__wrap = function (f, opts) {\n\t\t if (opts === void 0) { opts = {}; }\n\t\t var func = f;\n\t\t if (!opts) {\n\t\t opts = {};\n\t\t }\n\t\t try {\n\t\t if (typeof func !== 'function') {\n\t\t return func;\n\t\t }\n\t\t if (!objectIsExtensible(func)) {\n\t\t return func;\n\t\t }\n\t\t if (!func.___hb) {\n\t\t // eslint-disable-next-line @typescript-eslint/no-this-alias\n\t\t var client_1 = this;\n\t\t func.___hb = function () {\n\t\t if (util_1.preferCatch) {\n\t\t try {\n\t\t // eslint-disable-next-line prefer-rest-params\n\t\t return func.apply(this, arguments);\n\t\t }\n\t\t catch (err) {\n\t\t if (client_1.__lastWrapErr === err) {\n\t\t throw (err);\n\t\t }\n\t\t client_1.__lastWrapErr = err;\n\t\t (0, onerror_1.ignoreNextOnError)();\n\t\t client_1.addBreadcrumb(opts.component ? \"\".concat(opts.component, \": \").concat(err.name) : err.name, {\n\t\t category: 'error',\n\t\t metadata: {\n\t\t message: err.message,\n\t\t name: err.name,\n\t\t stack: err.stack\n\t\t }\n\t\t });\n\t\t if (client_1.config.enableUncaught) {\n\t\t client_1.notify(err);\n\t\t }\n\t\t throw (err);\n\t\t }\n\t\t }\n\t\t else {\n\t\t // eslint-disable-next-line prefer-rest-params\n\t\t return func.apply(this, arguments);\n\t\t }\n\t\t };\n\t\t }\n\t\t func.___hb.___hb = func.___hb;\n\t\t return func.___hb;\n\t\t }\n\t\t catch (_e) {\n\t\t return func;\n\t\t }\n\t\t };\n\t\t /** @internal */\n\t\t Honeybadger.prototype.__incrementErrorsCount = function () {\n\t\t return this.__errorsSent++;\n\t\t };\n\t\t /** @internal */\n\t\t Honeybadger.prototype.__exceedsMaxErrors = function () {\n\t\t return this.config.maxErrors && this.__errorsSent >= this.config.maxErrors;\n\t\t };\n\t\t return Honeybadger;\n\t\t}(core_1.Client));\n\t\tvar singleton = new Honeybadger({\n\t\t __plugins: [\n\t\t (0, onerror_1.onError)(),\n\t\t (0, onunhandledrejection_1.default)(),\n\t\t (0, timers_1.default)(),\n\t\t (0, event_listeners_1.default)(),\n\t\t (0, breadcrumbs_1.default)()\n\t\t ]\n\t\t});\n\t\tvar NOTIFIER = {\n\t\t name: '@honeybadger-io/js',\n\t\t url: 'https://github.com/honeybadger-io/honeybadger-js/tree/master/packages/js',\n\t\t version: '6.5.1'\n\t\t};\n\t\tsingleton.setNotifier(NOTIFIER);\n\t\tvar core_2 = src;\n\t\tObject.defineProperty(exports, \"Types\", { enumerable: true, get: function () { return core_2.Types; } });\n\t\texports.default = singleton;\n\t\t\n\t} (browser$1));\n\n\tvar browser = /*@__PURE__*/getDefaultExportFromCjs(browser$1);\n\n\treturn browser;\n\n}));\n//# sourceMappingURL=honeybadger.js.map\n","export default {\n logger: self.console,\n WebSocket: self.WebSocket\n}\n","import adapters from \"./adapters\"\n\n// The logger is disabled by default. You can enable it with:\n//\n// ActionCable.logger.enabled = true\n//\n// Example:\n//\n// import * as ActionCable from '@rails/actioncable'\n//\n// ActionCable.logger.enabled = true\n// ActionCable.logger.log('Connection Established.')\n//\n\nexport default {\n log(...messages) {\n if (this.enabled) {\n messages.push(Date.now())\n adapters.logger.log(\"[ActionCable]\", ...messages)\n }\n },\n}\n","import logger from \"./logger\"\n\n// Responsible for ensuring the cable connection is in good health by validating the heartbeat pings sent from the server, and attempting\n// revival reconnections if things go astray. Internal class, not intended for direct user manipulation.\n\nconst now = () => new Date().getTime()\n\nconst secondsSince = time => (now() - time) / 1000\n\nclass ConnectionMonitor {\n constructor(connection) {\n this.visibilityDidChange = this.visibilityDidChange.bind(this)\n this.connection = connection\n this.reconnectAttempts = 0\n }\n\n start() {\n if (!this.isRunning()) {\n this.startedAt = now()\n delete this.stoppedAt\n this.startPolling()\n addEventListener(\"visibilitychange\", this.visibilityDidChange)\n logger.log(`ConnectionMonitor started. stale threshold = ${this.constructor.staleThreshold} s`)\n }\n }\n\n stop() {\n if (this.isRunning()) {\n this.stoppedAt = now()\n this.stopPolling()\n removeEventListener(\"visibilitychange\", this.visibilityDidChange)\n logger.log(\"ConnectionMonitor stopped\")\n }\n }\n\n isRunning() {\n return this.startedAt && !this.stoppedAt\n }\n\n recordPing() {\n this.pingedAt = now()\n }\n\n recordConnect() {\n this.reconnectAttempts = 0\n this.recordPing()\n delete this.disconnectedAt\n logger.log(\"ConnectionMonitor recorded connect\")\n }\n\n recordDisconnect() {\n this.disconnectedAt = now()\n logger.log(\"ConnectionMonitor recorded disconnect\")\n }\n\n // Private\n\n startPolling() {\n this.stopPolling()\n this.poll()\n }\n\n stopPolling() {\n clearTimeout(this.pollTimeout)\n }\n\n poll() {\n this.pollTimeout = setTimeout(() => {\n this.reconnectIfStale()\n this.poll()\n }\n , this.getPollInterval())\n }\n\n getPollInterval() {\n const { staleThreshold, reconnectionBackoffRate } = this.constructor\n const backoff = Math.pow(1 + reconnectionBackoffRate, Math.min(this.reconnectAttempts, 10))\n const jitterMax = this.reconnectAttempts === 0 ? 1.0 : reconnectionBackoffRate\n const jitter = jitterMax * Math.random()\n return staleThreshold * 1000 * backoff * (1 + jitter)\n }\n\n reconnectIfStale() {\n if (this.connectionIsStale()) {\n logger.log(`ConnectionMonitor detected stale connection. reconnectAttempts = ${this.reconnectAttempts}, time stale = ${secondsSince(this.refreshedAt)} s, stale threshold = ${this.constructor.staleThreshold} s`)\n this.reconnectAttempts++\n if (this.disconnectedRecently()) {\n logger.log(`ConnectionMonitor skipping reopening recent disconnect. time disconnected = ${secondsSince(this.disconnectedAt)} s`)\n } else {\n logger.log(\"ConnectionMonitor reopening\")\n this.connection.reopen()\n }\n }\n }\n\n get refreshedAt() {\n return this.pingedAt ? this.pingedAt : this.startedAt\n }\n\n connectionIsStale() {\n return secondsSince(this.refreshedAt) > this.constructor.staleThreshold\n }\n\n disconnectedRecently() {\n return this.disconnectedAt && (secondsSince(this.disconnectedAt) < this.constructor.staleThreshold)\n }\n\n visibilityDidChange() {\n if (document.visibilityState === \"visible\") {\n setTimeout(() => {\n if (this.connectionIsStale() || !this.connection.isOpen()) {\n logger.log(`ConnectionMonitor reopening stale connection on visibilitychange. visibilityState = ${document.visibilityState}`)\n this.connection.reopen()\n }\n }\n , 200)\n }\n }\n\n}\n\nConnectionMonitor.staleThreshold = 6 // Server::Connections::BEAT_INTERVAL * 2 (missed two pings)\nConnectionMonitor.reconnectionBackoffRate = 0.15\n\nexport default ConnectionMonitor\n","export default {\n \"message_types\": {\n \"welcome\": \"welcome\",\n \"disconnect\": \"disconnect\",\n \"ping\": \"ping\",\n \"confirmation\": \"confirm_subscription\",\n \"rejection\": \"reject_subscription\"\n },\n \"disconnect_reasons\": {\n \"unauthorized\": \"unauthorized\",\n \"invalid_request\": \"invalid_request\",\n \"server_restart\": \"server_restart\"\n },\n \"default_mount_path\": \"/cable\",\n \"protocols\": [\n \"actioncable-v1-json\",\n \"actioncable-unsupported\"\n ]\n}\n","import adapters from \"./adapters\"\nimport ConnectionMonitor from \"./connection_monitor\"\nimport INTERNAL from \"./internal\"\nimport logger from \"./logger\"\n\n// Encapsulate the cable connection held by the consumer. This is an internal class not intended for direct user manipulation.\n\nconst {message_types, protocols} = INTERNAL\nconst supportedProtocols = protocols.slice(0, protocols.length - 1)\n\nconst indexOf = [].indexOf\n\nclass Connection {\n constructor(consumer) {\n this.open = this.open.bind(this)\n this.consumer = consumer\n this.subscriptions = this.consumer.subscriptions\n this.monitor = new ConnectionMonitor(this)\n this.disconnected = true\n }\n\n send(data) {\n if (this.isOpen()) {\n this.webSocket.send(JSON.stringify(data))\n return true\n } else {\n return false\n }\n }\n\n open() {\n if (this.isActive()) {\n logger.log(`Attempted to open WebSocket, but existing socket is ${this.getState()}`)\n return false\n } else {\n logger.log(`Opening WebSocket, current state is ${this.getState()}, subprotocols: ${protocols}`)\n if (this.webSocket) { this.uninstallEventHandlers() }\n this.webSocket = new adapters.WebSocket(this.consumer.url, protocols)\n this.installEventHandlers()\n this.monitor.start()\n return true\n }\n }\n\n close({allowReconnect} = {allowReconnect: true}) {\n if (!allowReconnect) { this.monitor.stop() }\n // Avoid closing websockets in a \"connecting\" state due to Safari 15.1+ bug. See: https://github.com/rails/rails/issues/43835#issuecomment-1002288478\n if (this.isOpen()) {\n return this.webSocket.close()\n }\n }\n\n reopen() {\n logger.log(`Reopening WebSocket, current state is ${this.getState()}`)\n if (this.isActive()) {\n try {\n return this.close()\n } catch (error) {\n logger.log(\"Failed to reopen WebSocket\", error)\n }\n finally {\n logger.log(`Reopening WebSocket in ${this.constructor.reopenDelay}ms`)\n setTimeout(this.open, this.constructor.reopenDelay)\n }\n } else {\n return this.open()\n }\n }\n\n getProtocol() {\n if (this.webSocket) {\n return this.webSocket.protocol\n }\n }\n\n isOpen() {\n return this.isState(\"open\")\n }\n\n isActive() {\n return this.isState(\"open\", \"connecting\")\n }\n\n // Private\n\n isProtocolSupported() {\n return indexOf.call(supportedProtocols, this.getProtocol()) >= 0\n }\n\n isState(...states) {\n return indexOf.call(states, this.getState()) >= 0\n }\n\n getState() {\n if (this.webSocket) {\n for (let state in adapters.WebSocket) {\n if (adapters.WebSocket[state] === this.webSocket.readyState) {\n return state.toLowerCase()\n }\n }\n }\n return null\n }\n\n installEventHandlers() {\n for (let eventName in this.events) {\n const handler = this.events[eventName].bind(this)\n this.webSocket[`on${eventName}`] = handler\n }\n }\n\n uninstallEventHandlers() {\n for (let eventName in this.events) {\n this.webSocket[`on${eventName}`] = function() {}\n }\n }\n\n}\n\nConnection.reopenDelay = 500\n\nConnection.prototype.events = {\n message(event) {\n if (!this.isProtocolSupported()) { return }\n const {identifier, message, reason, reconnect, type} = JSON.parse(event.data)\n switch (type) {\n case message_types.welcome:\n this.monitor.recordConnect()\n return this.subscriptions.reload()\n case message_types.disconnect:\n logger.log(`Disconnecting. Reason: ${reason}`)\n return this.close({allowReconnect: reconnect})\n case message_types.ping:\n return this.monitor.recordPing()\n case message_types.confirmation:\n this.subscriptions.confirmSubscription(identifier)\n return this.subscriptions.notify(identifier, \"connected\")\n case message_types.rejection:\n return this.subscriptions.reject(identifier)\n default:\n return this.subscriptions.notify(identifier, \"received\", message)\n }\n },\n\n open() {\n logger.log(`WebSocket onopen event, using '${this.getProtocol()}' subprotocol`)\n this.disconnected = false\n if (!this.isProtocolSupported()) {\n logger.log(\"Protocol is unsupported. Stopping monitor and disconnecting.\")\n return this.close({allowReconnect: false})\n }\n },\n\n close(event) {\n logger.log(\"WebSocket onclose event\")\n if (this.disconnected) { return }\n this.disconnected = true\n this.monitor.recordDisconnect()\n return this.subscriptions.notifyAll(\"disconnected\", {willAttemptReconnect: this.monitor.isRunning()})\n },\n\n error() {\n logger.log(\"WebSocket onerror event\")\n }\n}\n\nexport default Connection\n","// A new subscription is created through the ActionCable.Subscriptions instance available on the consumer.\n// It provides a number of callbacks and a method for calling remote procedure calls on the corresponding\n// Channel instance on the server side.\n//\n// An example demonstrates the basic functionality:\n//\n// App.appearance = App.cable.subscriptions.create(\"AppearanceChannel\", {\n// connected() {\n// // Called once the subscription has been successfully completed\n// },\n//\n// disconnected({ willAttemptReconnect: boolean }) {\n// // Called when the client has disconnected with the server.\n// // The object will have an `willAttemptReconnect` property which\n// // says whether the client has the intention of attempting\n// // to reconnect.\n// },\n//\n// appear() {\n// this.perform('appear', {appearing_on: this.appearingOn()})\n// },\n//\n// away() {\n// this.perform('away')\n// },\n//\n// appearingOn() {\n// $('main').data('appearing-on')\n// }\n// })\n//\n// The methods #appear and #away forward their intent to the remote AppearanceChannel instance on the server\n// by calling the `perform` method with the first parameter being the action (which maps to AppearanceChannel#appear/away).\n// The second parameter is a hash that'll get JSON encoded and made available on the server in the data parameter.\n//\n// This is how the server component would look:\n//\n// class AppearanceChannel < ApplicationActionCable::Channel\n// def subscribed\n// current_user.appear\n// end\n//\n// def unsubscribed\n// current_user.disappear\n// end\n//\n// def appear(data)\n// current_user.appear on: data['appearing_on']\n// end\n//\n// def away\n// current_user.away\n// end\n// end\n//\n// The \"AppearanceChannel\" name is automatically mapped between the client-side subscription creation and the server-side Ruby class name.\n// The AppearanceChannel#appear/away public methods are exposed automatically to client-side invocation through the perform method.\n\nconst extend = function(object, properties) {\n if (properties != null) {\n for (let key in properties) {\n const value = properties[key]\n object[key] = value\n }\n }\n return object\n}\n\nexport default class Subscription {\n constructor(consumer, params = {}, mixin) {\n this.consumer = consumer\n this.identifier = JSON.stringify(params)\n extend(this, mixin)\n }\n\n // Perform a channel action with the optional data passed as an attribute\n perform(action, data = {}) {\n data.action = action\n return this.send(data)\n }\n\n send(data) {\n return this.consumer.send({command: \"message\", identifier: this.identifier, data: JSON.stringify(data)})\n }\n\n unsubscribe() {\n return this.consumer.subscriptions.remove(this)\n }\n}\n","import logger from \"./logger\"\n\n// Responsible for ensuring channel subscribe command is confirmed, retrying until confirmation is received.\n// Internal class, not intended for direct user manipulation.\n\nclass SubscriptionGuarantor {\n constructor(subscriptions) {\n this.subscriptions = subscriptions\n this.pendingSubscriptions = []\n }\n\n guarantee(subscription) {\n if(this.pendingSubscriptions.indexOf(subscription) == -1){ \n logger.log(`SubscriptionGuarantor guaranteeing ${subscription.identifier}`)\n this.pendingSubscriptions.push(subscription) \n }\n else {\n logger.log(`SubscriptionGuarantor already guaranteeing ${subscription.identifier}`)\n }\n this.startGuaranteeing()\n }\n\n forget(subscription) {\n logger.log(`SubscriptionGuarantor forgetting ${subscription.identifier}`)\n this.pendingSubscriptions = (this.pendingSubscriptions.filter((s) => s !== subscription))\n }\n\n startGuaranteeing() {\n this.stopGuaranteeing()\n this.retrySubscribing()\n }\n \n stopGuaranteeing() {\n clearTimeout(this.retryTimeout)\n }\n\n retrySubscribing() {\n this.retryTimeout = setTimeout(() => {\n if (this.subscriptions && typeof(this.subscriptions.subscribe) === \"function\") {\n this.pendingSubscriptions.map((subscription) => {\n logger.log(`SubscriptionGuarantor resubscribing ${subscription.identifier}`)\n this.subscriptions.subscribe(subscription)\n })\n }\n }\n , 500)\n }\n}\n\nexport default SubscriptionGuarantor","import Subscription from \"./subscription\"\nimport SubscriptionGuarantor from \"./subscription_guarantor\"\nimport logger from \"./logger\"\n\n// Collection class for creating (and internally managing) channel subscriptions.\n// The only method intended to be triggered by the user is ActionCable.Subscriptions#create,\n// and it should be called through the consumer like so:\n//\n// App = {}\n// App.cable = ActionCable.createConsumer(\"ws://example.com/accounts/1\")\n// App.appearance = App.cable.subscriptions.create(\"AppearanceChannel\")\n//\n// For more details on how you'd configure an actual channel subscription, see ActionCable.Subscription.\n\nexport default class Subscriptions {\n constructor(consumer) {\n this.consumer = consumer\n this.guarantor = new SubscriptionGuarantor(this)\n this.subscriptions = []\n }\n\n create(channelName, mixin) {\n const channel = channelName\n const params = typeof channel === \"object\" ? channel : {channel}\n const subscription = new Subscription(this.consumer, params, mixin)\n return this.add(subscription)\n }\n\n // Private\n\n add(subscription) {\n this.subscriptions.push(subscription)\n this.consumer.ensureActiveConnection()\n this.notify(subscription, \"initialized\")\n this.subscribe(subscription)\n return subscription\n }\n\n remove(subscription) {\n this.forget(subscription)\n if (!this.findAll(subscription.identifier).length) {\n this.sendCommand(subscription, \"unsubscribe\")\n }\n return subscription\n }\n\n reject(identifier) {\n return this.findAll(identifier).map((subscription) => {\n this.forget(subscription)\n this.notify(subscription, \"rejected\")\n return subscription\n })\n }\n\n forget(subscription) {\n this.guarantor.forget(subscription)\n this.subscriptions = (this.subscriptions.filter((s) => s !== subscription))\n return subscription\n }\n\n findAll(identifier) {\n return this.subscriptions.filter((s) => s.identifier === identifier)\n }\n\n reload() {\n return this.subscriptions.map((subscription) =>\n this.subscribe(subscription))\n }\n\n notifyAll(callbackName, ...args) {\n return this.subscriptions.map((subscription) =>\n this.notify(subscription, callbackName, ...args))\n }\n\n notify(subscription, callbackName, ...args) {\n let subscriptions\n if (typeof subscription === \"string\") {\n subscriptions = this.findAll(subscription)\n } else {\n subscriptions = [subscription]\n }\n\n return subscriptions.map((subscription) =>\n (typeof subscription[callbackName] === \"function\" ? subscription[callbackName](...args) : undefined))\n }\n\n subscribe(subscription) {\n if (this.sendCommand(subscription, \"subscribe\")) {\n this.guarantor.guarantee(subscription)\n }\n }\n\n confirmSubscription(identifier) {\n logger.log(`Subscription confirmed ${identifier}`)\n this.findAll(identifier).map((subscription) =>\n this.guarantor.forget(subscription))\n }\n\n sendCommand(subscription, command) {\n const {identifier} = subscription\n return this.consumer.send({command, identifier})\n }\n}\n","import Connection from \"./connection\"\nimport Subscriptions from \"./subscriptions\"\n\n// The ActionCable.Consumer establishes the connection to a server-side Ruby Connection object. Once established,\n// the ActionCable.ConnectionMonitor will ensure that its properly maintained through heartbeats and checking for stale updates.\n// The Consumer instance is also the gateway to establishing subscriptions to desired channels through the #createSubscription\n// method.\n//\n// The following example shows how this can be set up:\n//\n// App = {}\n// App.cable = ActionCable.createConsumer(\"ws://example.com/accounts/1\")\n// App.appearance = App.cable.subscriptions.create(\"AppearanceChannel\")\n//\n// For more details on how you'd configure an actual channel subscription, see ActionCable.Subscription.\n//\n// When a consumer is created, it automatically connects with the server.\n//\n// To disconnect from the server, call\n//\n// App.cable.disconnect()\n//\n// and to restart the connection:\n//\n// App.cable.connect()\n//\n// Any channel subscriptions which existed prior to disconnecting will\n// automatically resubscribe.\n\nexport default class Consumer {\n constructor(url) {\n this._url = url\n this.subscriptions = new Subscriptions(this)\n this.connection = new Connection(this)\n }\n\n get url() {\n return createWebSocketURL(this._url)\n }\n\n send(data) {\n return this.connection.send(data)\n }\n\n connect() {\n return this.connection.open()\n }\n\n disconnect() {\n return this.connection.close({allowReconnect: false})\n }\n\n ensureActiveConnection() {\n if (!this.connection.isActive()) {\n return this.connection.open()\n }\n }\n}\n\nexport function createWebSocketURL(url) {\n if (typeof url === \"function\") {\n url = url()\n }\n\n if (url && !/^wss?:/i.test(url)) {\n const a = document.createElement(\"a\")\n a.href = url\n // Fix populating Location properties in IE. Otherwise, protocol will be blank.\n a.href = a.href\n a.protocol = a.protocol.replace(\"http\", \"ws\")\n return a.href\n } else {\n return url\n }\n}\n","import Connection from \"./connection\"\nimport ConnectionMonitor from \"./connection_monitor\"\nimport Consumer, { createWebSocketURL } from \"./consumer\"\nimport INTERNAL from \"./internal\"\nimport Subscription from \"./subscription\"\nimport Subscriptions from \"./subscriptions\"\nimport SubscriptionGuarantor from \"./subscription_guarantor\"\nimport adapters from \"./adapters\"\nimport logger from \"./logger\"\n\nexport {\n Connection,\n ConnectionMonitor,\n Consumer,\n INTERNAL,\n Subscription,\n Subscriptions,\n SubscriptionGuarantor,\n adapters,\n createWebSocketURL,\n logger,\n}\n\nexport function createConsumer(url = getConfig(\"url\") || INTERNAL.default_mount_path) {\n return new Consumer(url)\n}\n\nexport function getConfig(name) {\n const element = document.head.querySelector(`meta[name='action-cable-${name}']`)\n if (element) {\n return element.getAttribute(\"content\")\n }\n}\n","var sparkMd5 = {\n exports: {}\n};\n\n(function(module, exports) {\n (function(factory) {\n {\n module.exports = factory();\n }\n })((function(undefined$1) {\n var hex_chr = [ \"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\", \"a\", \"b\", \"c\", \"d\", \"e\", \"f\" ];\n function md5cycle(x, k) {\n var a = x[0], b = x[1], c = x[2], d = x[3];\n a += (b & c | ~b & d) + k[0] - 680876936 | 0;\n a = (a << 7 | a >>> 25) + b | 0;\n d += (a & b | ~a & c) + k[1] - 389564586 | 0;\n d = (d << 12 | d >>> 20) + a | 0;\n c += (d & a | ~d & b) + k[2] + 606105819 | 0;\n c = (c << 17 | c >>> 15) + d | 0;\n b += (c & d | ~c & a) + k[3] - 1044525330 | 0;\n b = (b << 22 | b >>> 10) + c | 0;\n a += (b & c | ~b & d) + k[4] - 176418897 | 0;\n a = (a << 7 | a >>> 25) + b | 0;\n d += (a & b | ~a & c) + k[5] + 1200080426 | 0;\n d = (d << 12 | d >>> 20) + a | 0;\n c += (d & a | ~d & b) + k[6] - 1473231341 | 0;\n c = (c << 17 | c >>> 15) + d | 0;\n b += (c & d | ~c & a) + k[7] - 45705983 | 0;\n b = (b << 22 | b >>> 10) + c | 0;\n a += (b & c | ~b & d) + k[8] + 1770035416 | 0;\n a = (a << 7 | a >>> 25) + b | 0;\n d += (a & b | ~a & c) + k[9] - 1958414417 | 0;\n d = (d << 12 | d >>> 20) + a | 0;\n c += (d & a | ~d & b) + k[10] - 42063 | 0;\n c = (c << 17 | c >>> 15) + d | 0;\n b += (c & d | ~c & a) + k[11] - 1990404162 | 0;\n b = (b << 22 | b >>> 10) + c | 0;\n a += (b & c | ~b & d) + k[12] + 1804603682 | 0;\n a = (a << 7 | a >>> 25) + b | 0;\n d += (a & b | ~a & c) + k[13] - 40341101 | 0;\n d = (d << 12 | d >>> 20) + a | 0;\n c += (d & a | ~d & b) + k[14] - 1502002290 | 0;\n c = (c << 17 | c >>> 15) + d | 0;\n b += (c & d | ~c & a) + k[15] + 1236535329 | 0;\n b = (b << 22 | b >>> 10) + c | 0;\n a += (b & d | c & ~d) + k[1] - 165796510 | 0;\n a = (a << 5 | a >>> 27) + b | 0;\n d += (a & c | b & ~c) + k[6] - 1069501632 | 0;\n d = (d << 9 | d >>> 23) + a | 0;\n c += (d & b | a & ~b) + k[11] + 643717713 | 0;\n c = (c << 14 | c >>> 18) + d | 0;\n b += (c & a | d & ~a) + k[0] - 373897302 | 0;\n b = (b << 20 | b >>> 12) + c | 0;\n a += (b & d | c & ~d) + k[5] - 701558691 | 0;\n a = (a << 5 | a >>> 27) + b | 0;\n d += (a & c | b & ~c) + k[10] + 38016083 | 0;\n d = (d << 9 | d >>> 23) + a | 0;\n c += (d & b | a & ~b) + k[15] - 660478335 | 0;\n c = (c << 14 | c >>> 18) + d | 0;\n b += (c & a | d & ~a) + k[4] - 405537848 | 0;\n b = (b << 20 | b >>> 12) + c | 0;\n a += (b & d | c & ~d) + k[9] + 568446438 | 0;\n a = (a << 5 | a >>> 27) + b | 0;\n d += (a & c | b & ~c) + k[14] - 1019803690 | 0;\n d = (d << 9 | d >>> 23) + a | 0;\n c += (d & b | a & ~b) + k[3] - 187363961 | 0;\n c = (c << 14 | c >>> 18) + d | 0;\n b += (c & a | d & ~a) + k[8] + 1163531501 | 0;\n b = (b << 20 | b >>> 12) + c | 0;\n a += (b & d | c & ~d) + k[13] - 1444681467 | 0;\n a = (a << 5 | a >>> 27) + b | 0;\n d += (a & c | b & ~c) + k[2] - 51403784 | 0;\n d = (d << 9 | d >>> 23) + a | 0;\n c += (d & b | a & ~b) + k[7] + 1735328473 | 0;\n c = (c << 14 | c >>> 18) + d | 0;\n b += (c & a | d & ~a) + k[12] - 1926607734 | 0;\n b = (b << 20 | b >>> 12) + c | 0;\n a += (b ^ c ^ d) + k[5] - 378558 | 0;\n a = (a << 4 | a >>> 28) + b | 0;\n d += (a ^ b ^ c) + k[8] - 2022574463 | 0;\n d = (d << 11 | d >>> 21) + a | 0;\n c += (d ^ a ^ b) + k[11] + 1839030562 | 0;\n c = (c << 16 | c >>> 16) + d | 0;\n b += (c ^ d ^ a) + k[14] - 35309556 | 0;\n b = (b << 23 | b >>> 9) + c | 0;\n a += (b ^ c ^ d) + k[1] - 1530992060 | 0;\n a = (a << 4 | a >>> 28) + b | 0;\n d += (a ^ b ^ c) + k[4] + 1272893353 | 0;\n d = (d << 11 | d >>> 21) + a | 0;\n c += (d ^ a ^ b) + k[7] - 155497632 | 0;\n c = (c << 16 | c >>> 16) + d | 0;\n b += (c ^ d ^ a) + k[10] - 1094730640 | 0;\n b = (b << 23 | b >>> 9) + c | 0;\n a += (b ^ c ^ d) + k[13] + 681279174 | 0;\n a = (a << 4 | a >>> 28) + b | 0;\n d += (a ^ b ^ c) + k[0] - 358537222 | 0;\n d = (d << 11 | d >>> 21) + a | 0;\n c += (d ^ a ^ b) + k[3] - 722521979 | 0;\n c = (c << 16 | c >>> 16) + d | 0;\n b += (c ^ d ^ a) + k[6] + 76029189 | 0;\n b = (b << 23 | b >>> 9) + c | 0;\n a += (b ^ c ^ d) + k[9] - 640364487 | 0;\n a = (a << 4 | a >>> 28) + b | 0;\n d += (a ^ b ^ c) + k[12] - 421815835 | 0;\n d = (d << 11 | d >>> 21) + a | 0;\n c += (d ^ a ^ b) + k[15] + 530742520 | 0;\n c = (c << 16 | c >>> 16) + d | 0;\n b += (c ^ d ^ a) + k[2] - 995338651 | 0;\n b = (b << 23 | b >>> 9) + c | 0;\n a += (c ^ (b | ~d)) + k[0] - 198630844 | 0;\n a = (a << 6 | a >>> 26) + b | 0;\n d += (b ^ (a | ~c)) + k[7] + 1126891415 | 0;\n d = (d << 10 | d >>> 22) + a | 0;\n c += (a ^ (d | ~b)) + k[14] - 1416354905 | 0;\n c = (c << 15 | c >>> 17) + d | 0;\n b += (d ^ (c | ~a)) + k[5] - 57434055 | 0;\n b = (b << 21 | b >>> 11) + c | 0;\n a += (c ^ (b | ~d)) + k[12] + 1700485571 | 0;\n a = (a << 6 | a >>> 26) + b | 0;\n d += (b ^ (a | ~c)) + k[3] - 1894986606 | 0;\n d = (d << 10 | d >>> 22) + a | 0;\n c += (a ^ (d | ~b)) + k[10] - 1051523 | 0;\n c = (c << 15 | c >>> 17) + d | 0;\n b += (d ^ (c | ~a)) + k[1] - 2054922799 | 0;\n b = (b << 21 | b >>> 11) + c | 0;\n a += (c ^ (b | ~d)) + k[8] + 1873313359 | 0;\n a = (a << 6 | a >>> 26) + b | 0;\n d += (b ^ (a | ~c)) + k[15] - 30611744 | 0;\n d = (d << 10 | d >>> 22) + a | 0;\n c += (a ^ (d | ~b)) + k[6] - 1560198380 | 0;\n c = (c << 15 | c >>> 17) + d | 0;\n b += (d ^ (c | ~a)) + k[13] + 1309151649 | 0;\n b = (b << 21 | b >>> 11) + c | 0;\n a += (c ^ (b | ~d)) + k[4] - 145523070 | 0;\n a = (a << 6 | a >>> 26) + b | 0;\n d += (b ^ (a | ~c)) + k[11] - 1120210379 | 0;\n d = (d << 10 | d >>> 22) + a | 0;\n c += (a ^ (d | ~b)) + k[2] + 718787259 | 0;\n c = (c << 15 | c >>> 17) + d | 0;\n b += (d ^ (c | ~a)) + k[9] - 343485551 | 0;\n b = (b << 21 | b >>> 11) + c | 0;\n x[0] = a + x[0] | 0;\n x[1] = b + x[1] | 0;\n x[2] = c + x[2] | 0;\n x[3] = d + x[3] | 0;\n }\n function md5blk(s) {\n var md5blks = [], i;\n for (i = 0; i < 64; i += 4) {\n md5blks[i >> 2] = s.charCodeAt(i) + (s.charCodeAt(i + 1) << 8) + (s.charCodeAt(i + 2) << 16) + (s.charCodeAt(i + 3) << 24);\n }\n return md5blks;\n }\n function md5blk_array(a) {\n var md5blks = [], i;\n for (i = 0; i < 64; i += 4) {\n md5blks[i >> 2] = a[i] + (a[i + 1] << 8) + (a[i + 2] << 16) + (a[i + 3] << 24);\n }\n return md5blks;\n }\n function md51(s) {\n var n = s.length, state = [ 1732584193, -271733879, -1732584194, 271733878 ], i, length, tail, tmp, lo, hi;\n for (i = 64; i <= n; i += 64) {\n md5cycle(state, md5blk(s.substring(i - 64, i)));\n }\n s = s.substring(i - 64);\n length = s.length;\n tail = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ];\n for (i = 0; i < length; i += 1) {\n tail[i >> 2] |= s.charCodeAt(i) << (i % 4 << 3);\n }\n tail[i >> 2] |= 128 << (i % 4 << 3);\n if (i > 55) {\n md5cycle(state, tail);\n for (i = 0; i < 16; i += 1) {\n tail[i] = 0;\n }\n }\n tmp = n * 8;\n tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);\n lo = parseInt(tmp[2], 16);\n hi = parseInt(tmp[1], 16) || 0;\n tail[14] = lo;\n tail[15] = hi;\n md5cycle(state, tail);\n return state;\n }\n function md51_array(a) {\n var n = a.length, state = [ 1732584193, -271733879, -1732584194, 271733878 ], i, length, tail, tmp, lo, hi;\n for (i = 64; i <= n; i += 64) {\n md5cycle(state, md5blk_array(a.subarray(i - 64, i)));\n }\n a = i - 64 < n ? a.subarray(i - 64) : new Uint8Array(0);\n length = a.length;\n tail = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ];\n for (i = 0; i < length; i += 1) {\n tail[i >> 2] |= a[i] << (i % 4 << 3);\n }\n tail[i >> 2] |= 128 << (i % 4 << 3);\n if (i > 55) {\n md5cycle(state, tail);\n for (i = 0; i < 16; i += 1) {\n tail[i] = 0;\n }\n }\n tmp = n * 8;\n tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);\n lo = parseInt(tmp[2], 16);\n hi = parseInt(tmp[1], 16) || 0;\n tail[14] = lo;\n tail[15] = hi;\n md5cycle(state, tail);\n return state;\n }\n function rhex(n) {\n var s = \"\", j;\n for (j = 0; j < 4; j += 1) {\n s += hex_chr[n >> j * 8 + 4 & 15] + hex_chr[n >> j * 8 & 15];\n }\n return s;\n }\n function hex(x) {\n var i;\n for (i = 0; i < x.length; i += 1) {\n x[i] = rhex(x[i]);\n }\n return x.join(\"\");\n }\n if (hex(md51(\"hello\")) !== \"5d41402abc4b2a76b9719d911017c592\") ;\n if (typeof ArrayBuffer !== \"undefined\" && !ArrayBuffer.prototype.slice) {\n (function() {\n function clamp(val, length) {\n val = val | 0 || 0;\n if (val < 0) {\n return Math.max(val + length, 0);\n }\n return Math.min(val, length);\n }\n ArrayBuffer.prototype.slice = function(from, to) {\n var length = this.byteLength, begin = clamp(from, length), end = length, num, target, targetArray, sourceArray;\n if (to !== undefined$1) {\n end = clamp(to, length);\n }\n if (begin > end) {\n return new ArrayBuffer(0);\n }\n num = end - begin;\n target = new ArrayBuffer(num);\n targetArray = new Uint8Array(target);\n sourceArray = new Uint8Array(this, begin, num);\n targetArray.set(sourceArray);\n return target;\n };\n })();\n }\n function toUtf8(str) {\n if (/[\\u0080-\\uFFFF]/.test(str)) {\n str = unescape(encodeURIComponent(str));\n }\n return str;\n }\n function utf8Str2ArrayBuffer(str, returnUInt8Array) {\n var length = str.length, buff = new ArrayBuffer(length), arr = new Uint8Array(buff), i;\n for (i = 0; i < length; i += 1) {\n arr[i] = str.charCodeAt(i);\n }\n return returnUInt8Array ? arr : buff;\n }\n function arrayBuffer2Utf8Str(buff) {\n return String.fromCharCode.apply(null, new Uint8Array(buff));\n }\n function concatenateArrayBuffers(first, second, returnUInt8Array) {\n var result = new Uint8Array(first.byteLength + second.byteLength);\n result.set(new Uint8Array(first));\n result.set(new Uint8Array(second), first.byteLength);\n return returnUInt8Array ? result : result.buffer;\n }\n function hexToBinaryString(hex) {\n var bytes = [], length = hex.length, x;\n for (x = 0; x < length - 1; x += 2) {\n bytes.push(parseInt(hex.substr(x, 2), 16));\n }\n return String.fromCharCode.apply(String, bytes);\n }\n function SparkMD5() {\n this.reset();\n }\n SparkMD5.prototype.append = function(str) {\n this.appendBinary(toUtf8(str));\n return this;\n };\n SparkMD5.prototype.appendBinary = function(contents) {\n this._buff += contents;\n this._length += contents.length;\n var length = this._buff.length, i;\n for (i = 64; i <= length; i += 64) {\n md5cycle(this._hash, md5blk(this._buff.substring(i - 64, i)));\n }\n this._buff = this._buff.substring(i - 64);\n return this;\n };\n SparkMD5.prototype.end = function(raw) {\n var buff = this._buff, length = buff.length, i, tail = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], ret;\n for (i = 0; i < length; i += 1) {\n tail[i >> 2] |= buff.charCodeAt(i) << (i % 4 << 3);\n }\n this._finish(tail, length);\n ret = hex(this._hash);\n if (raw) {\n ret = hexToBinaryString(ret);\n }\n this.reset();\n return ret;\n };\n SparkMD5.prototype.reset = function() {\n this._buff = \"\";\n this._length = 0;\n this._hash = [ 1732584193, -271733879, -1732584194, 271733878 ];\n return this;\n };\n SparkMD5.prototype.getState = function() {\n return {\n buff: this._buff,\n length: this._length,\n hash: this._hash.slice()\n };\n };\n SparkMD5.prototype.setState = function(state) {\n this._buff = state.buff;\n this._length = state.length;\n this._hash = state.hash;\n return this;\n };\n SparkMD5.prototype.destroy = function() {\n delete this._hash;\n delete this._buff;\n delete this._length;\n };\n SparkMD5.prototype._finish = function(tail, length) {\n var i = length, tmp, lo, hi;\n tail[i >> 2] |= 128 << (i % 4 << 3);\n if (i > 55) {\n md5cycle(this._hash, tail);\n for (i = 0; i < 16; i += 1) {\n tail[i] = 0;\n }\n }\n tmp = this._length * 8;\n tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);\n lo = parseInt(tmp[2], 16);\n hi = parseInt(tmp[1], 16) || 0;\n tail[14] = lo;\n tail[15] = hi;\n md5cycle(this._hash, tail);\n };\n SparkMD5.hash = function(str, raw) {\n return SparkMD5.hashBinary(toUtf8(str), raw);\n };\n SparkMD5.hashBinary = function(content, raw) {\n var hash = md51(content), ret = hex(hash);\n return raw ? hexToBinaryString(ret) : ret;\n };\n SparkMD5.ArrayBuffer = function() {\n this.reset();\n };\n SparkMD5.ArrayBuffer.prototype.append = function(arr) {\n var buff = concatenateArrayBuffers(this._buff.buffer, arr, true), length = buff.length, i;\n this._length += arr.byteLength;\n for (i = 64; i <= length; i += 64) {\n md5cycle(this._hash, md5blk_array(buff.subarray(i - 64, i)));\n }\n this._buff = i - 64 < length ? new Uint8Array(buff.buffer.slice(i - 64)) : new Uint8Array(0);\n return this;\n };\n SparkMD5.ArrayBuffer.prototype.end = function(raw) {\n var buff = this._buff, length = buff.length, tail = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], i, ret;\n for (i = 0; i < length; i += 1) {\n tail[i >> 2] |= buff[i] << (i % 4 << 3);\n }\n this._finish(tail, length);\n ret = hex(this._hash);\n if (raw) {\n ret = hexToBinaryString(ret);\n }\n this.reset();\n return ret;\n };\n SparkMD5.ArrayBuffer.prototype.reset = function() {\n this._buff = new Uint8Array(0);\n this._length = 0;\n this._hash = [ 1732584193, -271733879, -1732584194, 271733878 ];\n return this;\n };\n SparkMD5.ArrayBuffer.prototype.getState = function() {\n var state = SparkMD5.prototype.getState.call(this);\n state.buff = arrayBuffer2Utf8Str(state.buff);\n return state;\n };\n SparkMD5.ArrayBuffer.prototype.setState = function(state) {\n state.buff = utf8Str2ArrayBuffer(state.buff, true);\n return SparkMD5.prototype.setState.call(this, state);\n };\n SparkMD5.ArrayBuffer.prototype.destroy = SparkMD5.prototype.destroy;\n SparkMD5.ArrayBuffer.prototype._finish = SparkMD5.prototype._finish;\n SparkMD5.ArrayBuffer.hash = function(arr, raw) {\n var hash = md51_array(new Uint8Array(arr)), ret = hex(hash);\n return raw ? hexToBinaryString(ret) : ret;\n };\n return SparkMD5;\n }));\n})(sparkMd5);\n\nvar SparkMD5 = sparkMd5.exports;\n\nconst fileSlice = File.prototype.slice || File.prototype.mozSlice || File.prototype.webkitSlice;\n\nclass FileChecksum {\n static create(file, callback) {\n const instance = new FileChecksum(file);\n instance.create(callback);\n }\n constructor(file) {\n this.file = file;\n this.chunkSize = 2097152;\n this.chunkCount = Math.ceil(this.file.size / this.chunkSize);\n this.chunkIndex = 0;\n }\n create(callback) {\n this.callback = callback;\n this.md5Buffer = new SparkMD5.ArrayBuffer;\n this.fileReader = new FileReader;\n this.fileReader.addEventListener(\"load\", (event => this.fileReaderDidLoad(event)));\n this.fileReader.addEventListener(\"error\", (event => this.fileReaderDidError(event)));\n this.readNextChunk();\n }\n fileReaderDidLoad(event) {\n this.md5Buffer.append(event.target.result);\n if (!this.readNextChunk()) {\n const binaryDigest = this.md5Buffer.end(true);\n const base64digest = btoa(binaryDigest);\n this.callback(null, base64digest);\n }\n }\n fileReaderDidError(event) {\n this.callback(`Error reading ${this.file.name}`);\n }\n readNextChunk() {\n if (this.chunkIndex < this.chunkCount || this.chunkIndex == 0 && this.chunkCount == 0) {\n const start = this.chunkIndex * this.chunkSize;\n const end = Math.min(start + this.chunkSize, this.file.size);\n const bytes = fileSlice.call(this.file, start, end);\n this.fileReader.readAsArrayBuffer(bytes);\n this.chunkIndex++;\n return true;\n } else {\n return false;\n }\n }\n}\n\nfunction getMetaValue(name) {\n const element = findElement(document.head, `meta[name=\"${name}\"]`);\n if (element) {\n return element.getAttribute(\"content\");\n }\n}\n\nfunction findElements(root, selector) {\n if (typeof root == \"string\") {\n selector = root;\n root = document;\n }\n const elements = root.querySelectorAll(selector);\n return toArray(elements);\n}\n\nfunction findElement(root, selector) {\n if (typeof root == \"string\") {\n selector = root;\n root = document;\n }\n return root.querySelector(selector);\n}\n\nfunction dispatchEvent(element, type, eventInit = {}) {\n const {disabled: disabled} = element;\n const {bubbles: bubbles, cancelable: cancelable, detail: detail} = eventInit;\n const event = document.createEvent(\"Event\");\n event.initEvent(type, bubbles || true, cancelable || true);\n event.detail = detail || {};\n try {\n element.disabled = false;\n element.dispatchEvent(event);\n } finally {\n element.disabled = disabled;\n }\n return event;\n}\n\nfunction toArray(value) {\n if (Array.isArray(value)) {\n return value;\n } else if (Array.from) {\n return Array.from(value);\n } else {\n return [].slice.call(value);\n }\n}\n\nclass BlobRecord {\n constructor(file, checksum, url, customHeaders = {}) {\n this.file = file;\n this.attributes = {\n filename: file.name,\n content_type: file.type || \"application/octet-stream\",\n byte_size: file.size,\n checksum: checksum\n };\n this.xhr = new XMLHttpRequest;\n this.xhr.open(\"POST\", url, true);\n this.xhr.responseType = \"json\";\n this.xhr.setRequestHeader(\"Content-Type\", \"application/json\");\n this.xhr.setRequestHeader(\"Accept\", \"application/json\");\n this.xhr.setRequestHeader(\"X-Requested-With\", \"XMLHttpRequest\");\n Object.keys(customHeaders).forEach((headerKey => {\n this.xhr.setRequestHeader(headerKey, customHeaders[headerKey]);\n }));\n const csrfToken = getMetaValue(\"csrf-token\");\n if (csrfToken != undefined) {\n this.xhr.setRequestHeader(\"X-CSRF-Token\", csrfToken);\n }\n this.xhr.addEventListener(\"load\", (event => this.requestDidLoad(event)));\n this.xhr.addEventListener(\"error\", (event => this.requestDidError(event)));\n }\n get status() {\n return this.xhr.status;\n }\n get response() {\n const {responseType: responseType, response: response} = this.xhr;\n if (responseType == \"json\") {\n return response;\n } else {\n return JSON.parse(response);\n }\n }\n create(callback) {\n this.callback = callback;\n this.xhr.send(JSON.stringify({\n blob: this.attributes\n }));\n }\n requestDidLoad(event) {\n if (this.status >= 200 && this.status < 300) {\n const {response: response} = this;\n const {direct_upload: direct_upload} = response;\n delete response.direct_upload;\n this.attributes = response;\n this.directUploadData = direct_upload;\n this.callback(null, this.toJSON());\n } else {\n this.requestDidError(event);\n }\n }\n requestDidError(event) {\n this.callback(`Error creating Blob for \"${this.file.name}\". Status: ${this.status}`);\n }\n toJSON() {\n const result = {};\n for (const key in this.attributes) {\n result[key] = this.attributes[key];\n }\n return result;\n }\n}\n\nclass BlobUpload {\n constructor(blob) {\n this.blob = blob;\n this.file = blob.file;\n const {url: url, headers: headers} = blob.directUploadData;\n this.xhr = new XMLHttpRequest;\n this.xhr.open(\"PUT\", url, true);\n this.xhr.responseType = \"text\";\n for (const key in headers) {\n this.xhr.setRequestHeader(key, headers[key]);\n }\n this.xhr.addEventListener(\"load\", (event => this.requestDidLoad(event)));\n this.xhr.addEventListener(\"error\", (event => this.requestDidError(event)));\n }\n create(callback) {\n this.callback = callback;\n this.xhr.send(this.file.slice());\n }\n requestDidLoad(event) {\n const {status: status, response: response} = this.xhr;\n if (status >= 200 && status < 300) {\n this.callback(null, response);\n } else {\n this.requestDidError(event);\n }\n }\n requestDidError(event) {\n this.callback(`Error storing \"${this.file.name}\". Status: ${this.xhr.status}`);\n }\n}\n\nlet id = 0;\n\nclass DirectUpload {\n constructor(file, url, delegate, customHeaders = {}) {\n this.id = ++id;\n this.file = file;\n this.url = url;\n this.delegate = delegate;\n this.customHeaders = customHeaders;\n }\n create(callback) {\n FileChecksum.create(this.file, ((error, checksum) => {\n if (error) {\n callback(error);\n return;\n }\n const blob = new BlobRecord(this.file, checksum, this.url, this.customHeaders);\n notify(this.delegate, \"directUploadWillCreateBlobWithXHR\", blob.xhr);\n blob.create((error => {\n if (error) {\n callback(error);\n } else {\n const upload = new BlobUpload(blob);\n notify(this.delegate, \"directUploadWillStoreFileWithXHR\", upload.xhr);\n upload.create((error => {\n if (error) {\n callback(error);\n } else {\n callback(null, blob.toJSON());\n }\n }));\n }\n }));\n }));\n }\n}\n\nfunction notify(object, methodName, ...messages) {\n if (object && typeof object[methodName] == \"function\") {\n return object[methodName](...messages);\n }\n}\n\nclass DirectUploadController {\n constructor(input, file) {\n this.input = input;\n this.file = file;\n this.directUpload = new DirectUpload(this.file, this.url, this);\n this.dispatch(\"initialize\");\n }\n start(callback) {\n const hiddenInput = document.createElement(\"input\");\n hiddenInput.type = \"hidden\";\n hiddenInput.name = this.input.name;\n this.input.insertAdjacentElement(\"beforebegin\", hiddenInput);\n this.dispatch(\"start\");\n this.directUpload.create(((error, attributes) => {\n if (error) {\n hiddenInput.parentNode.removeChild(hiddenInput);\n this.dispatchError(error);\n } else {\n hiddenInput.value = attributes.signed_id;\n }\n this.dispatch(\"end\");\n callback(error);\n }));\n }\n uploadRequestDidProgress(event) {\n const progress = event.loaded / event.total * 100;\n if (progress) {\n this.dispatch(\"progress\", {\n progress: progress\n });\n }\n }\n get url() {\n return this.input.getAttribute(\"data-direct-upload-url\");\n }\n dispatch(name, detail = {}) {\n detail.file = this.file;\n detail.id = this.directUpload.id;\n return dispatchEvent(this.input, `direct-upload:${name}`, {\n detail: detail\n });\n }\n dispatchError(error) {\n const event = this.dispatch(\"error\", {\n error: error\n });\n if (!event.defaultPrevented) {\n alert(error);\n }\n }\n directUploadWillCreateBlobWithXHR(xhr) {\n this.dispatch(\"before-blob-request\", {\n xhr: xhr\n });\n }\n directUploadWillStoreFileWithXHR(xhr) {\n this.dispatch(\"before-storage-request\", {\n xhr: xhr\n });\n xhr.upload.addEventListener(\"progress\", (event => this.uploadRequestDidProgress(event)));\n }\n}\n\nconst inputSelector = \"input[type=file][data-direct-upload-url]:not([disabled])\";\n\nclass DirectUploadsController {\n constructor(form) {\n this.form = form;\n this.inputs = findElements(form, inputSelector).filter((input => input.files.length));\n }\n start(callback) {\n const controllers = this.createDirectUploadControllers();\n const startNextController = () => {\n const controller = controllers.shift();\n if (controller) {\n controller.start((error => {\n if (error) {\n callback(error);\n this.dispatch(\"end\");\n } else {\n startNextController();\n }\n }));\n } else {\n callback();\n this.dispatch(\"end\");\n }\n };\n this.dispatch(\"start\");\n startNextController();\n }\n createDirectUploadControllers() {\n const controllers = [];\n this.inputs.forEach((input => {\n toArray(input.files).forEach((file => {\n const controller = new DirectUploadController(input, file);\n controllers.push(controller);\n }));\n }));\n return controllers;\n }\n dispatch(name, detail = {}) {\n return dispatchEvent(this.form, `direct-uploads:${name}`, {\n detail: detail\n });\n }\n}\n\nconst processingAttribute = \"data-direct-uploads-processing\";\n\nconst submitButtonsByForm = new WeakMap;\n\nlet started = false;\n\nfunction start() {\n if (!started) {\n started = true;\n document.addEventListener(\"click\", didClick, true);\n document.addEventListener(\"submit\", didSubmitForm, true);\n document.addEventListener(\"ajax:before\", didSubmitRemoteElement);\n }\n}\n\nfunction didClick(event) {\n const button = event.target.closest(\"button, input\");\n if (button && button.type === \"submit\" && button.form) {\n submitButtonsByForm.set(button.form, button);\n }\n}\n\nfunction didSubmitForm(event) {\n handleFormSubmissionEvent(event);\n}\n\nfunction didSubmitRemoteElement(event) {\n if (event.target.tagName == \"FORM\") {\n handleFormSubmissionEvent(event);\n }\n}\n\nfunction handleFormSubmissionEvent(event) {\n const form = event.target;\n if (form.hasAttribute(processingAttribute)) {\n event.preventDefault();\n return;\n }\n const controller = new DirectUploadsController(form);\n const {inputs: inputs} = controller;\n if (inputs.length) {\n event.preventDefault();\n form.setAttribute(processingAttribute, \"\");\n inputs.forEach(disable);\n controller.start((error => {\n form.removeAttribute(processingAttribute);\n if (error) {\n inputs.forEach(enable);\n } else {\n submitForm(form);\n }\n }));\n }\n}\n\nfunction submitForm(form) {\n let button = submitButtonsByForm.get(form) || findElement(form, \"input[type=submit], button[type=submit]\");\n if (button) {\n const {disabled: disabled} = button;\n button.disabled = false;\n button.focus();\n button.click();\n button.disabled = disabled;\n } else {\n button = document.createElement(\"input\");\n button.type = \"submit\";\n button.style.display = \"none\";\n form.appendChild(button);\n button.click();\n form.removeChild(button);\n }\n submitButtonsByForm.delete(form);\n}\n\nfunction disable(input) {\n input.disabled = true;\n}\n\nfunction enable(input) {\n input.disabled = false;\n}\n\nfunction autostart() {\n if (window.ActiveStorage) {\n start();\n }\n}\n\nsetTimeout(autostart, 1);\n\nclass AttachmentUpload {\n constructor(attachment, element) {\n this.attachment = attachment;\n this.element = element;\n this.directUpload = new DirectUpload(attachment.file, this.directUploadUrl, this);\n }\n start() {\n this.directUpload.create(this.directUploadDidComplete.bind(this));\n }\n directUploadWillStoreFileWithXHR(xhr) {\n xhr.upload.addEventListener(\"progress\", (event => {\n const progress = event.loaded / event.total * 100;\n this.attachment.setUploadProgress(progress);\n }));\n }\n directUploadDidComplete(error, attributes) {\n if (error) {\n throw new Error(`Direct upload failed: ${error}`);\n }\n this.attachment.setAttributes({\n sgid: attributes.attachable_sgid,\n url: this.createBlobUrl(attributes.signed_id, attributes.filename)\n });\n }\n createBlobUrl(signedId, filename) {\n return this.blobUrlTemplate.replace(\":signed_id\", signedId).replace(\":filename\", encodeURIComponent(filename));\n }\n get directUploadUrl() {\n return this.element.dataset.directUploadUrl;\n }\n get blobUrlTemplate() {\n return this.element.dataset.blobUrlTemplate;\n }\n}\n\naddEventListener(\"trix-attachment-add\", (event => {\n const {attachment: attachment, target: target} = event;\n if (attachment.file) {\n const upload = new AttachmentUpload(attachment, target);\n upload.start();\n }\n}));\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react')) :\n typeof define === 'function' && define.amd ? define(['exports', 'react'], factory) :\n (global = global || self, factory(global.ReactStripe = {}, global.React));\n}(this, (function (exports, React) { 'use strict';\n\n React = React && Object.prototype.hasOwnProperty.call(React, 'default') ? React['default'] : React;\n\n function ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n }\n\n function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n }\n\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n }\n\n function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n }\n\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n\n function _iterableToArrayLimit(arr, i) {\n var _i = arr && (typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]);\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n }\n\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n\n function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n function createCommonjsModule(fn, module) {\n \treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n }\n\n /**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n var ReactPropTypesSecret_1 = ReactPropTypesSecret;\n\n function emptyFunction() {}\n\n function emptyFunctionWithReset() {}\n\n emptyFunctionWithReset.resetWarningCache = emptyFunction;\n\n var factoryWithThrowingShims = function () {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret_1) {\n // It is still safe when called from React.\n return;\n }\n\n var err = new Error('Calling PropTypes validators directly is not supported by the `prop-types` package. ' + 'Use PropTypes.checkPropTypes() to call them. ' + 'Read more at http://fb.me/use-check-prop-types');\n err.name = 'Invariant Violation';\n throw err;\n }\n shim.isRequired = shim;\n\n function getShim() {\n return shim;\n }\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n ReactPropTypes.PropTypes = ReactPropTypes;\n return ReactPropTypes;\n };\n\n var propTypes = createCommonjsModule(function (module) {\n /**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = factoryWithThrowingShims();\n }\n });\n\n var usePrevious = function usePrevious(value) {\n var ref = React.useRef(value);\n React.useEffect(function () {\n ref.current = value;\n }, [value]);\n return ref.current;\n };\n\n var isUnknownObject = function isUnknownObject(raw) {\n return raw !== null && _typeof(raw) === 'object';\n };\n var isPromise = function isPromise(raw) {\n return isUnknownObject(raw) && typeof raw.then === 'function';\n }; // We are using types to enforce the `stripe` prop in this lib,\n // but in an untyped integration `stripe` could be anything, so we need\n // to do some sanity validation to prevent type errors.\n\n var isStripe = function isStripe(raw) {\n return isUnknownObject(raw) && typeof raw.elements === 'function' && typeof raw.createToken === 'function' && typeof raw.createPaymentMethod === 'function' && typeof raw.confirmCardPayment === 'function';\n };\n\n var PLAIN_OBJECT_STR = '[object Object]';\n var isEqual = function isEqual(left, right) {\n if (!isUnknownObject(left) || !isUnknownObject(right)) {\n return left === right;\n }\n\n var leftArray = Array.isArray(left);\n var rightArray = Array.isArray(right);\n if (leftArray !== rightArray) return false;\n var leftPlainObject = Object.prototype.toString.call(left) === PLAIN_OBJECT_STR;\n var rightPlainObject = Object.prototype.toString.call(right) === PLAIN_OBJECT_STR;\n if (leftPlainObject !== rightPlainObject) return false; // not sure what sort of special object this is (regexp is one option), so\n // fallback to reference check.\n\n if (!leftPlainObject && !leftArray) return left === right;\n var leftKeys = Object.keys(left);\n var rightKeys = Object.keys(right);\n if (leftKeys.length !== rightKeys.length) return false;\n var keySet = {};\n\n for (var i = 0; i < leftKeys.length; i += 1) {\n keySet[leftKeys[i]] = true;\n }\n\n for (var _i = 0; _i < rightKeys.length; _i += 1) {\n keySet[rightKeys[_i]] = true;\n }\n\n var allKeys = Object.keys(keySet);\n\n if (allKeys.length !== leftKeys.length) {\n return false;\n }\n\n var l = left;\n var r = right;\n\n var pred = function pred(key) {\n return isEqual(l[key], r[key]);\n };\n\n return allKeys.every(pred);\n };\n\n var extractAllowedOptionsUpdates = function extractAllowedOptionsUpdates(options, prevOptions, immutableKeys) {\n if (!isUnknownObject(options)) {\n return null;\n }\n\n return Object.keys(options).reduce(function (newOptions, key) {\n var isUpdated = !isUnknownObject(prevOptions) || !isEqual(options[key], prevOptions[key]);\n\n if (immutableKeys.includes(key)) {\n if (isUpdated) {\n console.warn(\"Unsupported prop change: options.\".concat(key, \" is not a mutable property.\"));\n }\n\n return newOptions;\n }\n\n if (!isUpdated) {\n return newOptions;\n }\n\n return _objectSpread2(_objectSpread2({}, newOptions || {}), {}, _defineProperty({}, key, options[key]));\n }, null);\n };\n\n var INVALID_STRIPE_ERROR = 'Invalid prop `stripe` supplied to `Elements`. We recommend using the `loadStripe` utility from `@stripe/stripe-js`. See https://stripe.com/docs/stripe-js/react#elements-props-stripe for details.'; // We are using types to enforce the `stripe` prop in this lib, but in a real\n // integration `stripe` could be anything, so we need to do some sanity\n // validation to prevent type errors.\n\n var validateStripe = function validateStripe(maybeStripe) {\n if (maybeStripe === null || isStripe(maybeStripe)) {\n return maybeStripe;\n }\n\n throw new Error(INVALID_STRIPE_ERROR);\n };\n\n var parseStripeProp = function parseStripeProp(raw) {\n if (isPromise(raw)) {\n return {\n tag: 'async',\n stripePromise: Promise.resolve(raw).then(validateStripe)\n };\n }\n\n var stripe = validateStripe(raw);\n\n if (stripe === null) {\n return {\n tag: 'empty'\n };\n }\n\n return {\n tag: 'sync',\n stripe: stripe\n };\n };\n\n var ElementsContext = /*#__PURE__*/React.createContext(null);\n ElementsContext.displayName = 'ElementsContext';\n var parseElementsContext = function parseElementsContext(ctx, useCase) {\n if (!ctx) {\n throw new Error(\"Could not find Elements context; You need to wrap the part of your app that \".concat(useCase, \" in an provider.\"));\n }\n\n return ctx;\n };\n var CartElementContext = /*#__PURE__*/React.createContext(null);\n CartElementContext.displayName = 'CartElementContext';\n var parseCartElementContext = function parseCartElementContext(ctx, useCase) {\n if (!ctx) {\n throw new Error(\"Could not find Elements context; You need to wrap the part of your app that \".concat(useCase, \" in an provider.\"));\n }\n\n return ctx;\n };\n /**\n * The `Elements` provider allows you to use [Element components](https://stripe.com/docs/stripe-js/react#element-components) and access the [Stripe object](https://stripe.com/docs/js/initializing) in any nested component.\n * Render an `Elements` provider at the root of your React app so that it is available everywhere you need it.\n *\n * To use the `Elements` provider, call `loadStripe` from `@stripe/stripe-js` with your publishable key.\n * The `loadStripe` function will asynchronously load the Stripe.js script and initialize a `Stripe` object.\n * Pass the returned `Promise` to `Elements`.\n *\n * @docs https://stripe.com/docs/stripe-js/react#elements-provider\n */\n\n var Elements = function Elements(_ref) {\n var rawStripeProp = _ref.stripe,\n options = _ref.options,\n children = _ref.children;\n var parsed = React.useMemo(function () {\n return parseStripeProp(rawStripeProp);\n }, [rawStripeProp]);\n\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n cart = _React$useState2[0],\n setCart = _React$useState2[1];\n\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n cartState = _React$useState4[0],\n setCartState = _React$useState4[1]; // For a sync stripe instance, initialize into context\n\n\n var _React$useState5 = React.useState(function () {\n return {\n stripe: parsed.tag === 'sync' ? parsed.stripe : null,\n elements: parsed.tag === 'sync' ? parsed.stripe.elements(options) : null\n };\n }),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n ctx = _React$useState6[0],\n setContext = _React$useState6[1];\n\n React.useEffect(function () {\n var isMounted = true;\n\n var safeSetContext = function safeSetContext(stripe) {\n setContext(function (ctx) {\n // no-op if we already have a stripe instance (https://github.com/stripe/react-stripe-js/issues/296)\n if (ctx.stripe) return ctx;\n return {\n stripe: stripe,\n elements: stripe.elements(options)\n };\n });\n }; // For an async stripePromise, store it in context once resolved\n\n\n if (parsed.tag === 'async' && !ctx.stripe) {\n parsed.stripePromise.then(function (stripe) {\n if (stripe && isMounted) {\n // Only update Elements context if the component is still mounted\n // and stripe is not null. We allow stripe to be null to make\n // handling SSR easier.\n safeSetContext(stripe);\n }\n });\n } else if (parsed.tag === 'sync' && !ctx.stripe) {\n // Or, handle a sync stripe instance going from null -> populated\n safeSetContext(parsed.stripe);\n }\n\n return function () {\n isMounted = false;\n };\n }, [parsed, ctx, options]); // Warn on changes to stripe prop\n\n var prevStripe = usePrevious(rawStripeProp);\n React.useEffect(function () {\n if (prevStripe !== null && prevStripe !== rawStripeProp) {\n console.warn('Unsupported prop change on Elements: You cannot change the `stripe` prop after setting it.');\n }\n }, [prevStripe, rawStripeProp]); // Apply updates to elements when options prop has relevant changes\n\n var prevOptions = usePrevious(options);\n React.useEffect(function () {\n if (!ctx.elements) {\n return;\n }\n\n var updates = extractAllowedOptionsUpdates(options, prevOptions, ['clientSecret', 'fonts']);\n\n if (updates) {\n ctx.elements.update(updates);\n }\n }, [options, prevOptions, ctx.elements]); // Attach react-stripe-js version to stripe.js instance\n\n React.useEffect(function () {\n var anyStripe = ctx.stripe;\n\n if (!anyStripe || !anyStripe._registerWrapper || !anyStripe.registerAppInfo) {\n return;\n }\n\n anyStripe._registerWrapper({\n name: 'react-stripe-js',\n version: \"1.16.5\"\n });\n\n anyStripe.registerAppInfo({\n name: 'react-stripe-js',\n version: \"1.16.5\",\n url: 'https://stripe.com/docs/stripe-js/react'\n });\n }, [ctx.stripe]);\n return /*#__PURE__*/React.createElement(ElementsContext.Provider, {\n value: ctx\n }, /*#__PURE__*/React.createElement(CartElementContext.Provider, {\n value: {\n cart: cart,\n setCart: setCart,\n cartState: cartState,\n setCartState: setCartState\n }\n }, children));\n };\n Elements.propTypes = {\n stripe: propTypes.any,\n options: propTypes.object\n };\n var useElementsContextWithUseCase = function useElementsContextWithUseCase(useCaseMessage) {\n var ctx = React.useContext(ElementsContext);\n return parseElementsContext(ctx, useCaseMessage);\n };\n var useCartElementContextWithUseCase = function useCartElementContextWithUseCase(useCaseMessage) {\n var ctx = React.useContext(CartElementContext);\n return parseCartElementContext(ctx, useCaseMessage);\n };\n /**\n * @docs https://stripe.com/docs/stripe-js/react#useelements-hook\n */\n\n var useElements = function useElements() {\n var _useElementsContextWi = useElementsContextWithUseCase('calls useElements()'),\n elements = _useElementsContextWi.elements;\n\n return elements;\n };\n /**\n * @docs https://stripe.com/docs/stripe-js/react#usestripe-hook\n */\n\n var useStripe = function useStripe() {\n var _useElementsContextWi2 = useElementsContextWithUseCase('calls useStripe()'),\n stripe = _useElementsContextWi2.stripe;\n\n return stripe;\n };\n /**\n * @docs https://stripe.com/docs/payments/checkout/cart-element\n */\n\n var useCartElement = function useCartElement() {\n var _useCartElementContex = useCartElementContextWithUseCase('calls useCartElement()'),\n cart = _useCartElementContex.cart;\n\n return cart;\n };\n /**\n * @docs https://stripe.com/docs/payments/checkout/cart-element\n */\n\n var useCartElementState = function useCartElementState() {\n var _useCartElementContex2 = useCartElementContextWithUseCase('calls useCartElementState()'),\n cartState = _useCartElementContex2.cartState;\n\n return cartState;\n };\n /**\n * @docs https://stripe.com/docs/stripe-js/react#elements-consumer\n */\n\n var ElementsConsumer = function ElementsConsumer(_ref2) {\n var children = _ref2.children;\n var ctx = useElementsContextWithUseCase('mounts '); // Assert to satisfy the busted React.FC return type (it should be ReactNode)\n\n return children(ctx);\n };\n ElementsConsumer.propTypes = {\n children: propTypes.func.isRequired\n };\n\n var useAttachEvent = function useAttachEvent(element, event, cb) {\n var cbDefined = !!cb;\n var cbRef = React.useRef(cb); // In many integrations the callback prop changes on each render.\n // Using a ref saves us from calling element.on/.off every render.\n\n React.useEffect(function () {\n cbRef.current = cb;\n }, [cb]);\n React.useEffect(function () {\n if (!cbDefined || !element) {\n return function () {};\n }\n\n var decoratedCb = function decoratedCb() {\n if (cbRef.current) {\n cbRef.current.apply(cbRef, arguments);\n }\n };\n\n element.on(event, decoratedCb);\n return function () {\n element.off(event, decoratedCb);\n };\n }, [cbDefined, event, element, cbRef]);\n };\n\n var capitalized = function capitalized(str) {\n return str.charAt(0).toUpperCase() + str.slice(1);\n };\n\n var createElementComponent = function createElementComponent(type, isServer) {\n var displayName = \"\".concat(capitalized(type), \"Element\");\n\n var ClientElement = function ClientElement(_ref) {\n var id = _ref.id,\n className = _ref.className,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? {} : _ref$options,\n onBlur = _ref.onBlur,\n onFocus = _ref.onFocus,\n onReady = _ref.onReady,\n onChange = _ref.onChange,\n onEscape = _ref.onEscape,\n onClick = _ref.onClick,\n onLoadError = _ref.onLoadError,\n onLoaderStart = _ref.onLoaderStart,\n onNetworksChange = _ref.onNetworksChange,\n onCheckout = _ref.onCheckout,\n onLineItemClick = _ref.onLineItemClick,\n onConfirm = _ref.onConfirm,\n onCancel = _ref.onCancel,\n onShippingAddressChange = _ref.onShippingAddressChange,\n onShippingRateChange = _ref.onShippingRateChange;\n\n var _useElementsContextWi = useElementsContextWithUseCase(\"mounts <\".concat(displayName, \">\")),\n elements = _useElementsContextWi.elements;\n\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n element = _React$useState2[0],\n setElement = _React$useState2[1];\n\n var elementRef = React.useRef(null);\n var domNode = React.useRef(null);\n\n var _useCartElementContex = useCartElementContextWithUseCase(\"mounts <\".concat(displayName, \">\")),\n setCart = _useCartElementContex.setCart,\n setCartState = _useCartElementContex.setCartState; // For every event where the merchant provides a callback, call element.on\n // with that callback. If the merchant ever changes the callback, removes\n // the old callback with element.off and then call element.on with the new one.\n\n\n useAttachEvent(element, 'blur', onBlur);\n useAttachEvent(element, 'focus', onFocus);\n useAttachEvent(element, 'escape', onEscape);\n useAttachEvent(element, 'click', onClick);\n useAttachEvent(element, 'loaderror', onLoadError);\n useAttachEvent(element, 'loaderstart', onLoaderStart);\n useAttachEvent(element, 'networkschange', onNetworksChange);\n useAttachEvent(element, 'lineitemclick', onLineItemClick);\n useAttachEvent(element, 'confirm', onConfirm);\n useAttachEvent(element, 'cancel', onCancel);\n useAttachEvent(element, 'shippingaddresschange', onShippingAddressChange);\n useAttachEvent(element, 'shippingratechange', onShippingRateChange);\n var readyCallback;\n\n if (type === 'cart') {\n readyCallback = function readyCallback(event) {\n setCartState(event);\n onReady && onReady(event);\n };\n } else if (onReady) {\n if (type === 'payButton') {\n // Passes through the event, which includes visible PM types\n readyCallback = onReady;\n } else {\n // For other Elements, pass through the Element itself.\n readyCallback = function readyCallback() {\n onReady(element);\n };\n }\n }\n\n useAttachEvent(element, 'ready', readyCallback);\n var changeCallback = type === 'cart' ? function (event) {\n setCartState(event);\n onChange && onChange(event);\n } : onChange;\n useAttachEvent(element, 'change', changeCallback);\n var checkoutCallback = type === 'cart' ? function (event) {\n setCartState(event);\n onCheckout && onCheckout(event);\n } : onCheckout;\n useAttachEvent(element, 'checkout', checkoutCallback);\n React.useLayoutEffect(function () {\n if (elementRef.current === null && elements && domNode.current !== null) {\n var newElement = elements.create(type, options);\n\n if (type === 'cart' && setCart) {\n // we know that elements.create return value must be of type StripeCartElement if type is 'cart',\n // we need to cast because typescript is not able to infer which overloaded method is used based off param type\n setCart(newElement);\n } // Store element in a ref to ensure it's _immediately_ available in cleanup hooks in StrictMode\n\n\n elementRef.current = newElement; // Store element in state to facilitate event listener attachment\n\n setElement(newElement);\n newElement.mount(domNode.current);\n }\n }, [elements, options, setCart]);\n var prevOptions = usePrevious(options);\n React.useEffect(function () {\n if (!elementRef.current) {\n return;\n }\n\n var updates = extractAllowedOptionsUpdates(options, prevOptions, ['paymentRequest']);\n\n if (updates) {\n elementRef.current.update(updates);\n }\n }, [options, prevOptions]);\n React.useLayoutEffect(function () {\n return function () {\n if (elementRef.current) {\n elementRef.current.destroy();\n elementRef.current = null;\n }\n };\n }, []);\n return /*#__PURE__*/React.createElement(\"div\", {\n id: id,\n className: className,\n ref: domNode\n });\n }; // Only render the Element wrapper in a server environment.\n\n\n var ServerElement = function ServerElement(props) {\n // Validate that we are in the right context by calling useElementsContextWithUseCase.\n useElementsContextWithUseCase(\"mounts <\".concat(displayName, \">\"));\n useCartElementContextWithUseCase(\"mounts <\".concat(displayName, \">\"));\n var id = props.id,\n className = props.className;\n return /*#__PURE__*/React.createElement(\"div\", {\n id: id,\n className: className\n });\n };\n\n var Element = isServer ? ServerElement : ClientElement;\n Element.propTypes = {\n id: propTypes.string,\n className: propTypes.string,\n onChange: propTypes.func,\n onBlur: propTypes.func,\n onFocus: propTypes.func,\n onReady: propTypes.func,\n onEscape: propTypes.func,\n onClick: propTypes.func,\n onLoadError: propTypes.func,\n onLoaderStart: propTypes.func,\n onNetworksChange: propTypes.func,\n onCheckout: propTypes.func,\n onLineItemClick: propTypes.func,\n onConfirm: propTypes.func,\n onCancel: propTypes.func,\n onShippingAddressChange: propTypes.func,\n onShippingRateChange: propTypes.func,\n options: propTypes.object\n };\n Element.displayName = displayName;\n Element.__elementType = type;\n return Element;\n };\n\n var isServer = typeof window === 'undefined';\n /**\n * Requires beta access:\n * Contact [Stripe support](https://support.stripe.com/) for more information.\n *\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var AuBankAccountElement = createElementComponent('auBankAccount', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var CardElement = createElementComponent('card', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var CardNumberElement = createElementComponent('cardNumber', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var CardExpiryElement = createElementComponent('cardExpiry', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var CardCvcElement = createElementComponent('cardCvc', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var FpxBankElement = createElementComponent('fpxBank', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var IbanElement = createElementComponent('iban', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var IdealBankElement = createElementComponent('idealBank', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var P24BankElement = createElementComponent('p24Bank', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var EpsBankElement = createElementComponent('epsBank', isServer);\n var PaymentElement = createElementComponent('payment', isServer);\n /**\n * Requires beta access:\n * Contact [Stripe support](https://support.stripe.com/) for more information.\n *\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var PayButtonElement = createElementComponent('payButton', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var PaymentRequestButtonElement = createElementComponent('paymentRequestButton', isServer);\n /**\n * Requires beta access:\n * Contact [Stripe support](https://support.stripe.com/) for more information.\n *\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var LinkAuthenticationElement = createElementComponent('linkAuthentication', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var AddressElement = createElementComponent('address', isServer);\n /**\n * @deprecated\n * Use `AddressElement` instead.\n *\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var ShippingAddressElement = createElementComponent('shippingAddress', isServer);\n /**\n * Requires beta access:\n * Contact [Stripe support](https://support.stripe.com/) for more information.\n *\n * @docs https://stripe.com/docs/elements/cart-element\n */\n\n var CartElement = createElementComponent('cart', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var PaymentMethodMessagingElement = createElementComponent('paymentMethodMessaging', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var AffirmMessageElement = createElementComponent('affirmMessage', isServer);\n /**\n * @docs https://stripe.com/docs/stripe-js/react#element-components\n */\n\n var AfterpayClearpayMessageElement = createElementComponent('afterpayClearpayMessage', isServer);\n\n exports.AddressElement = AddressElement;\n exports.AffirmMessageElement = AffirmMessageElement;\n exports.AfterpayClearpayMessageElement = AfterpayClearpayMessageElement;\n exports.AuBankAccountElement = AuBankAccountElement;\n exports.CardCvcElement = CardCvcElement;\n exports.CardElement = CardElement;\n exports.CardExpiryElement = CardExpiryElement;\n exports.CardNumberElement = CardNumberElement;\n exports.CartElement = CartElement;\n exports.Elements = Elements;\n exports.ElementsConsumer = ElementsConsumer;\n exports.EpsBankElement = EpsBankElement;\n exports.FpxBankElement = FpxBankElement;\n exports.IbanElement = IbanElement;\n exports.IdealBankElement = IdealBankElement;\n exports.LinkAuthenticationElement = LinkAuthenticationElement;\n exports.P24BankElement = P24BankElement;\n exports.PayButtonElement = PayButtonElement;\n exports.PaymentElement = PaymentElement;\n exports.PaymentMethodMessagingElement = PaymentMethodMessagingElement;\n exports.PaymentRequestButtonElement = PaymentRequestButtonElement;\n exports.ShippingAddressElement = ShippingAddressElement;\n exports.useCartElement = useCartElement;\n exports.useCartElementState = useCartElementState;\n exports.useElements = useElements;\n exports.useStripe = useStripe;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n})));\n","\"use strict\";\n\nvar utils = require(\"./utils\");\n\nmodule.exports = function batchProcessorMaker(options) {\n options = options || {};\n var reporter = options.reporter;\n var asyncProcess = utils.getOption(options, \"async\", true);\n var autoProcess = utils.getOption(options, \"auto\", true);\n\n if(autoProcess && !asyncProcess) {\n reporter && reporter.warn(\"Invalid options combination. auto=true and async=false is invalid. Setting async=true.\");\n asyncProcess = true;\n }\n\n var batch = Batch();\n var asyncFrameHandler;\n var isProcessing = false;\n\n function addFunction(level, fn) {\n if(!isProcessing && autoProcess && asyncProcess && batch.size() === 0) {\n // Since this is async, it is guaranteed to be executed after that the fn is added to the batch.\n // This needs to be done before, since we're checking the size of the batch to be 0.\n processBatchAsync();\n }\n\n batch.add(level, fn);\n }\n\n function processBatch() {\n // Save the current batch, and create a new batch so that incoming functions are not added into the currently processing batch.\n // Continue processing until the top-level batch is empty (functions may be added to the new batch while processing, and so on).\n isProcessing = true;\n while (batch.size()) {\n var processingBatch = batch;\n batch = Batch();\n processingBatch.process();\n }\n isProcessing = false;\n }\n\n function forceProcessBatch(localAsyncProcess) {\n if (isProcessing) {\n return;\n }\n\n if(localAsyncProcess === undefined) {\n localAsyncProcess = asyncProcess;\n }\n\n if(asyncFrameHandler) {\n cancelFrame(asyncFrameHandler);\n asyncFrameHandler = null;\n }\n\n if(localAsyncProcess) {\n processBatchAsync();\n } else {\n processBatch();\n }\n }\n\n function processBatchAsync() {\n asyncFrameHandler = requestFrame(processBatch);\n }\n\n function clearBatch() {\n batch = {};\n batchSize = 0;\n topLevel = 0;\n bottomLevel = 0;\n }\n\n function cancelFrame(listener) {\n // var cancel = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout;\n var cancel = clearTimeout;\n return cancel(listener);\n }\n\n function requestFrame(callback) {\n // var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function(fn) { return window.setTimeout(fn, 20); };\n var raf = function(fn) { return setTimeout(fn, 0); };\n return raf(callback);\n }\n\n return {\n add: addFunction,\n force: forceProcessBatch\n };\n};\n\nfunction Batch() {\n var batch = {};\n var size = 0;\n var topLevel = 0;\n var bottomLevel = 0;\n\n function add(level, fn) {\n if(!fn) {\n fn = level;\n level = 0;\n }\n\n if(level > topLevel) {\n topLevel = level;\n } else if(level < bottomLevel) {\n bottomLevel = level;\n }\n\n if(!batch[level]) {\n batch[level] = [];\n }\n\n batch[level].push(fn);\n size++;\n }\n\n function process() {\n for(var level = bottomLevel; level <= topLevel; level++) {\n var fns = batch[level];\n\n for(var i = 0; i < fns.length; i++) {\n var fn = fns[i];\n fn();\n }\n }\n }\n\n function getSize() {\n return size;\n }\n\n return {\n add: add,\n process: process,\n size: getSize\n };\n}\n","\"use strict\";\n\nvar utils = module.exports = {};\n\nutils.getOption = getOption;\n\nfunction getOption(options, name, defaultValue) {\n var value = options[name];\n\n if((value === undefined || value === null) && defaultValue !== undefined) {\n return defaultValue;\n }\n\n return value;\n}\n","/*!\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","\"use strict\";\n\nvar detector = module.exports = {};\n\ndetector.isIE = function(version) {\n function isAnyIeVersion() {\n var agent = navigator.userAgent.toLowerCase();\n return agent.indexOf(\"msie\") !== -1 || agent.indexOf(\"trident\") !== -1 || agent.indexOf(\" edge/\") !== -1;\n }\n\n if(!isAnyIeVersion()) {\n return false;\n }\n\n if(!version) {\n return true;\n }\n\n //Shamelessly stolen from https://gist.github.com/padolsey/527683\n var ieVersion = (function(){\n var undef,\n v = 3,\n div = document.createElement(\"div\"),\n all = div.getElementsByTagName(\"i\");\n\n do {\n div.innerHTML = \"\";\n }\n while (all[0]);\n\n return v > 4 ? v : undef;\n }());\n\n return version === ieVersion;\n};\n\ndetector.isLegacyOpera = function() {\n return !!window.opera;\n};\n","\"use strict\";\n\nvar utils = module.exports = {};\n\n/**\n * Loops through the collection and calls the callback for each element. if the callback returns truthy, the loop is broken and returns the same value.\n * @public\n * @param {*} collection The collection to loop through. Needs to have a length property set and have indices set from 0 to length - 1.\n * @param {function} callback The callback to be called for each element. The element will be given as a parameter to the callback. If this callback returns truthy, the loop is broken and the same value is returned.\n * @returns {*} The value that a callback has returned (if truthy). Otherwise nothing.\n */\nutils.forEach = function(collection, callback) {\n for(var i = 0; i < collection.length; i++) {\n var result = callback(collection[i]);\n if(result) {\n return result;\n }\n }\n};\n","/**\n * Resize detection strategy that injects objects to elements in order to detect resize events.\n * Heavily inspired by: http://www.backalleycoder.com/2013/03/18/cross-browser-event-based-element-resize-detection/\n */\n\n\"use strict\";\n\nvar browserDetector = require(\"../browser-detector\");\n\nmodule.exports = function(options) {\n options = options || {};\n var reporter = options.reporter;\n var batchProcessor = options.batchProcessor;\n var getState = options.stateHandler.getState;\n\n if(!reporter) {\n throw new Error(\"Missing required dependency: reporter.\");\n }\n\n /**\n * Adds a resize event listener to the element.\n * @public\n * @param {element} element The element that should have the listener added.\n * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.\n */\n function addListener(element, listener) {\n function listenerProxy() {\n listener(element);\n }\n\n if(browserDetector.isIE(8)) {\n //IE 8 does not support object, but supports the resize event directly on elements.\n getState(element).object = {\n proxy: listenerProxy\n };\n element.attachEvent(\"onresize\", listenerProxy);\n } else {\n var object = getObject(element);\n\n if(!object) {\n throw new Error(\"Element is not detectable by this strategy.\");\n }\n\n object.contentDocument.defaultView.addEventListener(\"resize\", listenerProxy);\n }\n }\n\n function buildCssTextString(rules) {\n var seperator = options.important ? \" !important; \" : \"; \";\n\n return (rules.join(seperator) + seperator).trim();\n }\n\n /**\n * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.\n * @private\n * @param {object} options Optional options object.\n * @param {element} element The element to make detectable\n * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.\n */\n function makeDetectable(options, element, callback) {\n if (!callback) {\n callback = element;\n element = options;\n options = null;\n }\n\n options = options || {};\n var debug = options.debug;\n\n function injectObject(element, callback) {\n var OBJECT_STYLE = buildCssTextString([\"display: block\", \"position: absolute\", \"top: 0\", \"left: 0\", \"width: 100%\", \"height: 100%\", \"border: none\", \"padding: 0\", \"margin: 0\", \"opacity: 0\", \"z-index: -1000\", \"pointer-events: none\"]);\n\n //The target element needs to be positioned (everything except static) so the absolute positioned object will be positioned relative to the target element.\n\n // Position altering may be performed directly or on object load, depending on if style resolution is possible directly or not.\n var positionCheckPerformed = false;\n\n // The element may not yet be attached to the DOM, and therefore the style object may be empty in some browsers.\n // Since the style object is a reference, it will be updated as soon as the element is attached to the DOM.\n var style = window.getComputedStyle(element);\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n getState(element).startSize = {\n width: width,\n height: height\n };\n\n function mutateDom() {\n function alterPositionStyles() {\n if(style.position === \"static\") {\n element.style.setProperty(\"position\", \"relative\", options.important ? \"important\" : \"\");\n\n var removeRelativeStyles = function(reporter, element, style, property) {\n function getNumericalValue(value) {\n return value.replace(/[^-\\d\\.]/g, \"\");\n }\n\n var value = style[property];\n\n if(value !== \"auto\" && getNumericalValue(value) !== \"0\") {\n reporter.warn(\"An element that is positioned static has style.\" + property + \"=\" + value + \" which is ignored due to the static positioning. The element will need to be positioned relative, so the style.\" + property + \" will be set to 0. Element: \", element);\n element.style.setProperty(property, \"0\", options.important ? \"important\" : \"\");\n }\n };\n\n //Check so that there are no accidental styles that will make the element styled differently now that is is relative.\n //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).\n removeRelativeStyles(reporter, element, style, \"top\");\n removeRelativeStyles(reporter, element, style, \"right\");\n removeRelativeStyles(reporter, element, style, \"bottom\");\n removeRelativeStyles(reporter, element, style, \"left\");\n }\n }\n\n function onObjectLoad() {\n // The object has been loaded, which means that the element now is guaranteed to be attached to the DOM.\n if (!positionCheckPerformed) {\n alterPositionStyles();\n }\n\n /*jshint validthis: true */\n\n function getDocument(element, callback) {\n //Opera 12 seem to call the object.onload before the actual document has been created.\n //So if it is not present, poll it with an timeout until it is present.\n //TODO: Could maybe be handled better with object.onreadystatechange or similar.\n if(!element.contentDocument) {\n var state = getState(element);\n if (state.checkForObjectDocumentTimeoutId) {\n window.clearTimeout(state.checkForObjectDocumentTimeoutId);\n }\n state.checkForObjectDocumentTimeoutId = setTimeout(function checkForObjectDocument() {\n state.checkForObjectDocumentTimeoutId = 0;\n getDocument(element, callback);\n }, 100);\n\n return;\n }\n\n callback(element.contentDocument);\n }\n\n //Mutating the object element here seems to fire another load event.\n //Mutating the inner document of the object element is fine though.\n var objectElement = this;\n\n //Create the style element to be added to the object.\n getDocument(objectElement, function onObjectDocumentReady(objectDocument) {\n //Notify that the element is ready to be listened to.\n callback(element);\n });\n }\n\n // The element may be detached from the DOM, and some browsers does not support style resolving of detached elements.\n // The alterPositionStyles needs to be delayed until we know the element has been attached to the DOM (which we are sure of when the onObjectLoad has been fired), if style resolution is not possible.\n if (style.position !== \"\") {\n alterPositionStyles(style);\n positionCheckPerformed = true;\n }\n\n //Add an object element as a child to the target element that will be listened to for resize events.\n var object = document.createElement(\"object\");\n object.style.cssText = OBJECT_STYLE;\n object.tabIndex = -1;\n object.type = \"text/html\";\n object.setAttribute(\"aria-hidden\", \"true\");\n object.onload = onObjectLoad;\n\n //Safari: This must occur before adding the object to the DOM.\n //IE: Does not like that this happens before, even if it is also added after.\n if(!browserDetector.isIE()) {\n object.data = \"about:blank\";\n }\n\n if (!getState(element)) {\n // The element has been uninstalled before the actual loading happened.\n return;\n }\n\n element.appendChild(object);\n getState(element).object = object;\n\n //IE: This must occur after adding the object to the DOM.\n if(browserDetector.isIE()) {\n object.data = \"about:blank\";\n }\n }\n\n if(batchProcessor) {\n batchProcessor.add(mutateDom);\n } else {\n mutateDom();\n }\n }\n\n if(browserDetector.isIE(8)) {\n //IE 8 does not support objects properly. Luckily they do support the resize event.\n //So do not inject the object and notify that the element is already ready to be listened to.\n //The event handler for the resize event is attached in the utils.addListener instead.\n callback(element);\n } else {\n injectObject(element, callback);\n }\n }\n\n /**\n * Returns the child object of the target element.\n * @private\n * @param {element} element The target element.\n * @returns The object element of the target.\n */\n function getObject(element) {\n return getState(element).object;\n }\n\n function uninstall(element) {\n if (!getState(element)) {\n return;\n }\n\n var object = getObject(element);\n\n if (!object) {\n return;\n }\n\n if (browserDetector.isIE(8)) {\n element.detachEvent(\"onresize\", object.proxy);\n } else {\n element.removeChild(object);\n }\n\n if (getState(element).checkForObjectDocumentTimeoutId) {\n window.clearTimeout(getState(element).checkForObjectDocumentTimeoutId);\n }\n\n delete getState(element).object;\n }\n\n return {\n makeDetectable: makeDetectable,\n addListener: addListener,\n uninstall: uninstall\n };\n};\n","/**\n * Resize detection strategy that injects divs to elements in order to detect resize events on scroll events.\n * Heavily inspired by: https://github.com/marcj/css-element-queries/blob/master/src/ResizeSensor.js\n */\n\n\"use strict\";\n\nvar forEach = require(\"../collection-utils\").forEach;\n\nmodule.exports = function(options) {\n options = options || {};\n var reporter = options.reporter;\n var batchProcessor = options.batchProcessor;\n var getState = options.stateHandler.getState;\n var hasState = options.stateHandler.hasState;\n var idHandler = options.idHandler;\n\n if (!batchProcessor) {\n throw new Error(\"Missing required dependency: batchProcessor\");\n }\n\n if (!reporter) {\n throw new Error(\"Missing required dependency: reporter.\");\n }\n\n //TODO: Could this perhaps be done at installation time?\n var scrollbarSizes = getScrollbarSizes();\n\n var styleId = \"erd_scroll_detection_scrollbar_style\";\n var detectionContainerClass = \"erd_scroll_detection_container\";\n\n function initDocument(targetDocument) {\n // Inject the scrollbar styling that prevents them from appearing sometimes in Chrome.\n // The injected container needs to have a class, so that it may be styled with CSS (pseudo elements).\n injectScrollStyle(targetDocument, styleId, detectionContainerClass);\n }\n\n initDocument(window.document);\n\n function buildCssTextString(rules) {\n var seperator = options.important ? \" !important; \" : \"; \";\n\n return (rules.join(seperator) + seperator).trim();\n }\n\n function getScrollbarSizes() {\n var width = 500;\n var height = 500;\n\n var child = document.createElement(\"div\");\n child.style.cssText = buildCssTextString([\"position: absolute\", \"width: \" + width*2 + \"px\", \"height: \" + height*2 + \"px\", \"visibility: hidden\", \"margin: 0\", \"padding: 0\"]);\n\n var container = document.createElement(\"div\");\n container.style.cssText = buildCssTextString([\"position: absolute\", \"width: \" + width + \"px\", \"height: \" + height + \"px\", \"overflow: scroll\", \"visibility: none\", \"top: \" + -width*3 + \"px\", \"left: \" + -height*3 + \"px\", \"visibility: hidden\", \"margin: 0\", \"padding: 0\"]);\n\n container.appendChild(child);\n\n document.body.insertBefore(container, document.body.firstChild);\n\n var widthSize = width - container.clientWidth;\n var heightSize = height - container.clientHeight;\n\n document.body.removeChild(container);\n\n return {\n width: widthSize,\n height: heightSize\n };\n }\n\n function injectScrollStyle(targetDocument, styleId, containerClass) {\n function injectStyle(style, method) {\n method = method || function (element) {\n targetDocument.head.appendChild(element);\n };\n\n var styleElement = targetDocument.createElement(\"style\");\n styleElement.innerHTML = style;\n styleElement.id = styleId;\n method(styleElement);\n return styleElement;\n }\n\n if (!targetDocument.getElementById(styleId)) {\n var containerAnimationClass = containerClass + \"_animation\";\n var containerAnimationActiveClass = containerClass + \"_animation_active\";\n var style = \"/* Created by the element-resize-detector library. */\\n\";\n style += \".\" + containerClass + \" > div::-webkit-scrollbar { \" + buildCssTextString([\"display: none\"]) + \" }\\n\\n\";\n style += \".\" + containerAnimationActiveClass + \" { \" + buildCssTextString([\"-webkit-animation-duration: 0.1s\", \"animation-duration: 0.1s\", \"-webkit-animation-name: \" + containerAnimationClass, \"animation-name: \" + containerAnimationClass]) + \" }\\n\";\n style += \"@-webkit-keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\\n\";\n style += \"@keyframes \" + containerAnimationClass + \" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\";\n injectStyle(style);\n }\n }\n\n function addAnimationClass(element) {\n element.className += \" \" + detectionContainerClass + \"_animation_active\";\n }\n\n function addEvent(el, name, cb) {\n if (el.addEventListener) {\n el.addEventListener(name, cb);\n } else if(el.attachEvent) {\n el.attachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to add event listeners.\");\n }\n }\n\n function removeEvent(el, name, cb) {\n if (el.removeEventListener) {\n el.removeEventListener(name, cb);\n } else if(el.detachEvent) {\n el.detachEvent(\"on\" + name, cb);\n } else {\n return reporter.error(\"[scroll] Don't know how to remove event listeners.\");\n }\n }\n\n function getExpandElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[0];\n }\n\n function getShrinkElement(element) {\n return getState(element).container.childNodes[0].childNodes[0].childNodes[1];\n }\n\n /**\n * Adds a resize event listener to the element.\n * @public\n * @param {element} element The element that should have the listener added.\n * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.\n */\n function addListener(element, listener) {\n var listeners = getState(element).listeners;\n\n if (!listeners.push) {\n throw new Error(\"Cannot add listener to an element that is not detectable.\");\n }\n\n getState(element).listeners.push(listener);\n }\n\n /**\n * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.\n * @private\n * @param {object} options Optional options object.\n * @param {element} element The element to make detectable\n * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.\n */\n function makeDetectable(options, element, callback) {\n if (!callback) {\n callback = element;\n element = options;\n options = null;\n }\n\n options = options || {};\n\n function debug() {\n if (options.debug) {\n var args = Array.prototype.slice.call(arguments);\n args.unshift(idHandler.get(element), \"Scroll: \");\n if (reporter.log.apply) {\n reporter.log.apply(null, args);\n } else {\n for (var i = 0; i < args.length; i++) {\n reporter.log(args[i]);\n }\n }\n }\n }\n\n function isDetached(element) {\n function isInDocument(element) {\n var isInShadowRoot = element.getRootNode && element.getRootNode().contains(element);\n return element === element.ownerDocument.body || element.ownerDocument.body.contains(element) || isInShadowRoot;\n }\n\n if (!isInDocument(element)) {\n return true;\n }\n\n // FireFox returns null style in hidden iframes. See https://github.com/wnr/element-resize-detector/issues/68 and https://bugzilla.mozilla.org/show_bug.cgi?id=795520\n if (window.getComputedStyle(element) === null) {\n return true;\n }\n\n return false;\n }\n\n function isUnrendered(element) {\n // Check the absolute positioned container since the top level container is display: inline.\n var container = getState(element).container.childNodes[0];\n var style = window.getComputedStyle(container);\n return !style.width || style.width.indexOf(\"px\") === -1; //Can only compute pixel value when rendered.\n }\n\n function getStyle() {\n // Some browsers only force layouts when actually reading the style properties of the style object, so make sure that they are all read here,\n // so that the user of the function can be sure that it will perform the layout here, instead of later (important for batching).\n var elementStyle = window.getComputedStyle(element);\n var style = {};\n style.position = elementStyle.position;\n style.width = element.offsetWidth;\n style.height = element.offsetHeight;\n style.top = elementStyle.top;\n style.right = elementStyle.right;\n style.bottom = elementStyle.bottom;\n style.left = elementStyle.left;\n style.widthCSS = elementStyle.width;\n style.heightCSS = elementStyle.height;\n return style;\n }\n\n function storeStartSize() {\n var style = getStyle();\n getState(element).startSize = {\n width: style.width,\n height: style.height\n };\n debug(\"Element start size\", getState(element).startSize);\n }\n\n function initListeners() {\n getState(element).listeners = [];\n }\n\n function storeStyle() {\n debug(\"storeStyle invoked.\");\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getStyle();\n getState(element).style = style;\n }\n\n function storeCurrentSize(element, width, height) {\n getState(element).lastWidth = width;\n getState(element).lastHeight = height;\n }\n\n function getExpandChildElement(element) {\n return getExpandElement(element).childNodes[0];\n }\n\n function getWidthOffset() {\n return 2 * scrollbarSizes.width + 1;\n }\n\n function getHeightOffset() {\n return 2 * scrollbarSizes.height + 1;\n }\n\n function getExpandWidth(width) {\n return width + 10 + getWidthOffset();\n }\n\n function getExpandHeight(height) {\n return height + 10 + getHeightOffset();\n }\n\n function getShrinkWidth(width) {\n return width * 2 + getWidthOffset();\n }\n\n function getShrinkHeight(height) {\n return height * 2 + getHeightOffset();\n }\n\n function positionScrollbars(element, width, height) {\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n var shrinkWidth = getShrinkWidth(width);\n var shrinkHeight = getShrinkHeight(height);\n expand.scrollLeft = expandWidth;\n expand.scrollTop = expandHeight;\n shrink.scrollLeft = shrinkWidth;\n shrink.scrollTop = shrinkHeight;\n }\n\n function injectContainerElement() {\n var container = getState(element).container;\n\n if (!container) {\n container = document.createElement(\"div\");\n container.className = detectionContainerClass;\n container.style.cssText = buildCssTextString([\"visibility: hidden\", \"display: inline\", \"width: 0px\", \"height: 0px\", \"z-index: -1\", \"overflow: hidden\", \"margin: 0\", \"padding: 0\"]);\n getState(element).container = container;\n addAnimationClass(container);\n element.appendChild(container);\n\n var onAnimationStart = function () {\n getState(element).onRendered && getState(element).onRendered();\n };\n\n addEvent(container, \"animationstart\", onAnimationStart);\n\n // Store the event handler here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onAnimationStart = onAnimationStart;\n }\n\n return container;\n }\n\n function injectScrollElements() {\n function alterPositionStyles() {\n var style = getState(element).style;\n\n if(style.position === \"static\") {\n element.style.setProperty(\"position\", \"relative\",options.important ? \"important\" : \"\");\n\n var removeRelativeStyles = function(reporter, element, style, property) {\n function getNumericalValue(value) {\n return value.replace(/[^-\\d\\.]/g, \"\");\n }\n\n var value = style[property];\n\n if(value !== \"auto\" && getNumericalValue(value) !== \"0\") {\n reporter.warn(\"An element that is positioned static has style.\" + property + \"=\" + value + \" which is ignored due to the static positioning. The element will need to be positioned relative, so the style.\" + property + \" will be set to 0. Element: \", element);\n element.style[property] = 0;\n }\n };\n\n //Check so that there are no accidental styles that will make the element styled differently now that is is relative.\n //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).\n removeRelativeStyles(reporter, element, style, \"top\");\n removeRelativeStyles(reporter, element, style, \"right\");\n removeRelativeStyles(reporter, element, style, \"bottom\");\n removeRelativeStyles(reporter, element, style, \"left\");\n }\n }\n\n function getLeftTopBottomRightCssText(left, top, bottom, right) {\n left = (!left ? \"0\" : (left + \"px\"));\n top = (!top ? \"0\" : (top + \"px\"));\n bottom = (!bottom ? \"0\" : (bottom + \"px\"));\n right = (!right ? \"0\" : (right + \"px\"));\n\n return [\"left: \" + left, \"top: \" + top, \"right: \" + right, \"bottom: \" + bottom];\n }\n\n debug(\"Injecting elements\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n alterPositionStyles();\n\n var rootContainer = getState(element).container;\n\n if (!rootContainer) {\n rootContainer = injectContainerElement();\n }\n\n // Due to this WebKit bug https://bugs.webkit.org/show_bug.cgi?id=80808 (currently fixed in Blink, but still present in WebKit browsers such as Safari),\n // we need to inject two containers, one that is width/height 100% and another that is left/top -1px so that the final container always is 1x1 pixels bigger than\n // the targeted element.\n // When the bug is resolved, \"containerContainer\" may be removed.\n\n // The outer container can occasionally be less wide than the targeted when inside inline elements element in WebKit (see https://bugs.webkit.org/show_bug.cgi?id=152980).\n // This should be no problem since the inner container either way makes sure the injected scroll elements are at least 1x1 px.\n\n var scrollbarWidth = scrollbarSizes.width;\n var scrollbarHeight = scrollbarSizes.height;\n var containerContainerStyle = buildCssTextString([\"position: absolute\", \"flex: none\", \"overflow: hidden\", \"z-index: -1\", \"visibility: hidden\", \"width: 100%\", \"height: 100%\", \"left: 0px\", \"top: 0px\"]);\n var containerStyle = buildCssTextString([\"position: absolute\", \"flex: none\", \"overflow: hidden\", \"z-index: -1\", \"visibility: hidden\"].concat(getLeftTopBottomRightCssText(-(1 + scrollbarWidth), -(1 + scrollbarHeight), -scrollbarHeight, -scrollbarWidth)));\n var expandStyle = buildCssTextString([\"position: absolute\", \"flex: none\", \"overflow: scroll\", \"z-index: -1\", \"visibility: hidden\", \"width: 100%\", \"height: 100%\"]);\n var shrinkStyle = buildCssTextString([\"position: absolute\", \"flex: none\", \"overflow: scroll\", \"z-index: -1\", \"visibility: hidden\", \"width: 100%\", \"height: 100%\"]);\n var expandChildStyle = buildCssTextString([\"position: absolute\", \"left: 0\", \"top: 0\"]);\n var shrinkChildStyle = buildCssTextString([\"position: absolute\", \"width: 200%\", \"height: 200%\"]);\n\n var containerContainer = document.createElement(\"div\");\n var container = document.createElement(\"div\");\n var expand = document.createElement(\"div\");\n var expandChild = document.createElement(\"div\");\n var shrink = document.createElement(\"div\");\n var shrinkChild = document.createElement(\"div\");\n\n // Some browsers choke on the resize system being rtl, so force it to ltr. https://github.com/wnr/element-resize-detector/issues/56\n // However, dir should not be set on the top level container as it alters the dimensions of the target element in some browsers.\n containerContainer.dir = \"ltr\";\n\n containerContainer.style.cssText = containerContainerStyle;\n containerContainer.className = detectionContainerClass;\n container.className = detectionContainerClass;\n container.style.cssText = containerStyle;\n expand.style.cssText = expandStyle;\n expandChild.style.cssText = expandChildStyle;\n shrink.style.cssText = shrinkStyle;\n shrinkChild.style.cssText = shrinkChildStyle;\n\n expand.appendChild(expandChild);\n shrink.appendChild(shrinkChild);\n container.appendChild(expand);\n container.appendChild(shrink);\n containerContainer.appendChild(container);\n rootContainer.appendChild(containerContainer);\n\n function onExpandScroll() {\n var state = getState(element);\n if (state && state.onExpand) {\n state.onExpand();\n } else {\n debug(\"Aborting expand scroll handler: element has been uninstalled\");\n }\n }\n\n function onShrinkScroll() {\n var state = getState(element);\n if (state && state.onShrink) {\n state.onShrink();\n } else {\n debug(\"Aborting shrink scroll handler: element has been uninstalled\");\n }\n }\n\n addEvent(expand, \"scroll\", onExpandScroll);\n addEvent(shrink, \"scroll\", onShrinkScroll);\n\n // Store the event handlers here so that they may be removed when uninstall is called.\n // See uninstall function for an explanation why it is needed.\n getState(element).onExpandScroll = onExpandScroll;\n getState(element).onShrinkScroll = onShrinkScroll;\n }\n\n function registerListenersAndPositionElements() {\n function updateChildSizes(element, width, height) {\n var expandChild = getExpandChildElement(element);\n var expandWidth = getExpandWidth(width);\n var expandHeight = getExpandHeight(height);\n expandChild.style.setProperty(\"width\", expandWidth + \"px\", options.important ? \"important\" : \"\");\n expandChild.style.setProperty(\"height\", expandHeight + \"px\", options.important ? \"important\" : \"\");\n }\n\n function updateDetectorElements(done) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n // Check whether the size has actually changed since last time the algorithm ran. If not, some steps may be skipped.\n var sizeChanged = width !== getState(element).lastWidth || height !== getState(element).lastHeight;\n\n debug(\"Storing current size\", width, height);\n\n // Store the size of the element sync here, so that multiple scroll events may be ignored in the event listeners.\n // Otherwise the if-check in handleScroll is useless.\n storeCurrentSize(element, width, height);\n\n // Since we delay the processing of the batch, there is a risk that uninstall has been called before the batch gets to execute.\n // Since there is no way to cancel the fn executions, we need to add an uninstall guard to all fns of the batch.\n\n batchProcessor.add(0, function performUpdateChildSizes() {\n if (!sizeChanged) {\n return;\n }\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n if (options.debug) {\n var w = element.offsetWidth;\n var h = element.offsetHeight;\n\n if (w !== width || h !== height) {\n reporter.warn(idHandler.get(element), \"Scroll: Size changed before updating detector elements.\");\n }\n }\n\n updateChildSizes(element, width, height);\n });\n\n batchProcessor.add(1, function updateScrollbars() {\n // This function needs to be invoked event though the size is unchanged. The element could have been resized very quickly and then\n // been restored to the original size, which will have changed the scrollbar positions.\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n positionScrollbars(element, width, height);\n });\n\n if (sizeChanged && done) {\n batchProcessor.add(2, function () {\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n if (!areElementsInjected()) {\n debug(\"Aborting because element container has not been initialized\");\n return;\n }\n\n done();\n });\n }\n }\n\n function areElementsInjected() {\n return !!getState(element).container;\n }\n\n function notifyListenersIfNeeded() {\n function isFirstNotify() {\n return getState(element).lastNotifiedWidth === undefined;\n }\n\n debug(\"notifyListenersIfNeeded invoked\");\n\n var state = getState(element);\n\n // Don't notify if the current size is the start size, and this is the first notification.\n if (isFirstNotify() && state.lastWidth === state.startSize.width && state.lastHeight === state.startSize.height) {\n return debug(\"Not notifying: Size is the same as the start size, and there has been no notification yet.\");\n }\n\n // Don't notify if the size already has been notified.\n if (state.lastWidth === state.lastNotifiedWidth && state.lastHeight === state.lastNotifiedHeight) {\n return debug(\"Not notifying: Size already notified\");\n }\n\n\n debug(\"Current size not notified, notifying...\");\n state.lastNotifiedWidth = state.lastWidth;\n state.lastNotifiedHeight = state.lastHeight;\n forEach(getState(element).listeners, function (listener) {\n listener(element);\n });\n }\n\n function handleRender() {\n debug(\"startanimation triggered.\");\n\n if (isUnrendered(element)) {\n debug(\"Ignoring since element is still unrendered...\");\n return;\n }\n\n debug(\"Element rendered.\");\n var expand = getExpandElement(element);\n var shrink = getShrinkElement(element);\n if (expand.scrollLeft === 0 || expand.scrollTop === 0 || shrink.scrollLeft === 0 || shrink.scrollTop === 0) {\n debug(\"Scrollbars out of sync. Updating detector elements...\");\n updateDetectorElements(notifyListenersIfNeeded);\n }\n }\n\n function handleScroll() {\n debug(\"Scroll detected.\");\n\n if (isUnrendered(element)) {\n // Element is still unrendered. Skip this scroll event.\n debug(\"Scroll event fired while unrendered. Ignoring...\");\n return;\n }\n\n updateDetectorElements(notifyListenersIfNeeded);\n }\n\n debug(\"registerListenersAndPositionElements invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n getState(element).onRendered = handleRender;\n getState(element).onExpand = handleScroll;\n getState(element).onShrink = handleScroll;\n\n var style = getState(element).style;\n updateChildSizes(element, style.width, style.height);\n }\n\n function finalizeDomMutation() {\n debug(\"finalizeDomMutation invoked.\");\n\n if (!getState(element)) {\n debug(\"Aborting because element has been uninstalled\");\n return;\n }\n\n var style = getState(element).style;\n storeCurrentSize(element, style.width, style.height);\n positionScrollbars(element, style.width, style.height);\n }\n\n function ready() {\n callback(element);\n }\n\n function install() {\n debug(\"Installing...\");\n initListeners();\n storeStartSize();\n\n batchProcessor.add(0, storeStyle);\n batchProcessor.add(1, injectScrollElements);\n batchProcessor.add(2, registerListenersAndPositionElements);\n batchProcessor.add(3, finalizeDomMutation);\n batchProcessor.add(4, ready);\n }\n\n debug(\"Making detectable...\");\n\n if (isDetached(element)) {\n debug(\"Element is detached\");\n\n injectContainerElement();\n\n debug(\"Waiting until element is attached...\");\n\n getState(element).onRendered = function () {\n debug(\"Element is now attached\");\n install();\n };\n } else {\n install();\n }\n }\n\n function uninstall(element) {\n var state = getState(element);\n\n if (!state) {\n // Uninstall has been called on a non-erd element.\n return;\n }\n\n // Uninstall may have been called in the following scenarios:\n // (1) Right between the sync code and async batch (here state.busy = true, but nothing have been registered or injected).\n // (2) In the ready callback of the last level of the batch by another element (here, state.busy = true, but all the stuff has been injected).\n // (3) After the installation process (here, state.busy = false and all the stuff has been injected).\n // So to be on the safe side, let's check for each thing before removing.\n\n // We need to remove the event listeners, because otherwise the event might fire on an uninstall element which results in an error when trying to get the state of the element.\n state.onExpandScroll && removeEvent(getExpandElement(element), \"scroll\", state.onExpandScroll);\n state.onShrinkScroll && removeEvent(getShrinkElement(element), \"scroll\", state.onShrinkScroll);\n state.onAnimationStart && removeEvent(state.container, \"animationstart\", state.onAnimationStart);\n\n state.container && element.removeChild(state.container);\n }\n\n return {\n makeDetectable: makeDetectable,\n addListener: addListener,\n uninstall: uninstall,\n initDocument: initDocument\n };\n};\n","\"use strict\";\n\nvar forEach = require(\"./collection-utils\").forEach;\nvar elementUtilsMaker = require(\"./element-utils\");\nvar listenerHandlerMaker = require(\"./listener-handler\");\nvar idGeneratorMaker = require(\"./id-generator\");\nvar idHandlerMaker = require(\"./id-handler\");\nvar reporterMaker = require(\"./reporter\");\nvar browserDetector = require(\"./browser-detector\");\nvar batchProcessorMaker = require(\"batch-processor\");\nvar stateHandler = require(\"./state-handler\");\n\n//Detection strategies.\nvar objectStrategyMaker = require(\"./detection-strategy/object.js\");\nvar scrollStrategyMaker = require(\"./detection-strategy/scroll.js\");\n\nfunction isCollection(obj) {\n return Array.isArray(obj) || obj.length !== undefined;\n}\n\nfunction toArray(collection) {\n if (!Array.isArray(collection)) {\n var array = [];\n forEach(collection, function (obj) {\n array.push(obj);\n });\n return array;\n } else {\n return collection;\n }\n}\n\nfunction isElement(obj) {\n return obj && obj.nodeType === 1;\n}\n\n/**\n * @typedef idHandler\n * @type {object}\n * @property {function} get Gets the resize detector id of the element.\n * @property {function} set Generate and sets the resize detector id of the element.\n */\n\n/**\n * @typedef Options\n * @type {object}\n * @property {boolean} callOnAdd Determines if listeners should be called when they are getting added.\n Default is true. If true, the listener is guaranteed to be called when it has been added.\n If false, the listener will not be guarenteed to be called when it has been added (does not prevent it from being called).\n * @property {idHandler} idHandler A custom id handler that is responsible for generating, setting and retrieving id's for elements.\n If not provided, a default id handler will be used.\n * @property {reporter} reporter A custom reporter that handles reporting logs, warnings and errors.\n If not provided, a default id handler will be used.\n If set to false, then nothing will be reported.\n * @property {boolean} debug If set to true, the the system will report debug messages as default for the listenTo method.\n */\n\n/**\n * Creates an element resize detector instance.\n * @public\n * @param {Options?} options Optional global options object that will decide how this instance will work.\n */\nmodule.exports = function(options) {\n options = options || {};\n\n //idHandler is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var idHandler;\n\n if (options.idHandler) {\n // To maintain compatability with idHandler.get(element, readonly), make sure to wrap the given idHandler\n // so that readonly flag always is true when it's used here. This may be removed next major version bump.\n idHandler = {\n get: function (element) { return options.idHandler.get(element, true); },\n set: options.idHandler.set\n };\n } else {\n var idGenerator = idGeneratorMaker();\n var defaultIdHandler = idHandlerMaker({\n idGenerator: idGenerator,\n stateHandler: stateHandler\n });\n idHandler = defaultIdHandler;\n }\n\n //reporter is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var reporter = options.reporter;\n\n if(!reporter) {\n //If options.reporter is false, then the reporter should be quiet.\n var quiet = reporter === false;\n reporter = reporterMaker(quiet);\n }\n\n //batchProcessor is currently not an option to the listenTo function, so it should not be added to globalOptions.\n var batchProcessor = getOption(options, \"batchProcessor\", batchProcessorMaker({ reporter: reporter }));\n\n //Options to be used as default for the listenTo function.\n var globalOptions = {};\n globalOptions.callOnAdd = !!getOption(options, \"callOnAdd\", true);\n globalOptions.debug = !!getOption(options, \"debug\", false);\n\n var eventListenerHandler = listenerHandlerMaker(idHandler);\n var elementUtils = elementUtilsMaker({\n stateHandler: stateHandler\n });\n\n //The detection strategy to be used.\n var detectionStrategy;\n var desiredStrategy = getOption(options, \"strategy\", \"object\");\n var importantCssRules = getOption(options, \"important\", false);\n var strategyOptions = {\n reporter: reporter,\n batchProcessor: batchProcessor,\n stateHandler: stateHandler,\n idHandler: idHandler,\n important: importantCssRules\n };\n\n if(desiredStrategy === \"scroll\") {\n if (browserDetector.isLegacyOpera()) {\n reporter.warn(\"Scroll strategy is not supported on legacy Opera. Changing to object strategy.\");\n desiredStrategy = \"object\";\n } else if (browserDetector.isIE(9)) {\n reporter.warn(\"Scroll strategy is not supported on IE9. Changing to object strategy.\");\n desiredStrategy = \"object\";\n }\n }\n\n if(desiredStrategy === \"scroll\") {\n detectionStrategy = scrollStrategyMaker(strategyOptions);\n } else if(desiredStrategy === \"object\") {\n detectionStrategy = objectStrategyMaker(strategyOptions);\n } else {\n throw new Error(\"Invalid strategy name: \" + desiredStrategy);\n }\n\n //Calls can be made to listenTo with elements that are still being installed.\n //Also, same elements can occur in the elements list in the listenTo function.\n //With this map, the ready callbacks can be synchronized between the calls\n //so that the ready callback can always be called when an element is ready - even if\n //it wasn't installed from the function itself.\n var onReadyCallbacks = {};\n\n /**\n * Makes the given elements resize-detectable and starts listening to resize events on the elements. Calls the event callback for each event for each element.\n * @public\n * @param {Options?} options Optional options object. These options will override the global options. Some options may not be overriden, such as idHandler.\n * @param {element[]|element} elements The given array of elements to detect resize events of. Single element is also valid.\n * @param {function} listener The callback to be executed for each resize event for each element.\n */\n function listenTo(options, elements, listener) {\n function onResizeCallback(element) {\n var listeners = eventListenerHandler.get(element);\n forEach(listeners, function callListenerProxy(listener) {\n listener(element);\n });\n }\n\n function addListener(callOnAdd, element, listener) {\n eventListenerHandler.add(element, listener);\n\n if(callOnAdd) {\n listener(element);\n }\n }\n\n //Options object may be omitted.\n if(!listener) {\n listener = elements;\n elements = options;\n options = {};\n }\n\n if(!elements) {\n throw new Error(\"At least one element required.\");\n }\n\n if(!listener) {\n throw new Error(\"Listener required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n var elementsReady = 0;\n\n var callOnAdd = getOption(options, \"callOnAdd\", globalOptions.callOnAdd);\n var onReadyCallback = getOption(options, \"onReady\", function noop() {});\n var debug = getOption(options, \"debug\", globalOptions.debug);\n\n forEach(elements, function attachListenerToElement(element) {\n if (!stateHandler.getState(element)) {\n stateHandler.initState(element);\n idHandler.set(element);\n }\n\n var id = idHandler.get(element);\n\n debug && reporter.log(\"Attaching listener to element\", id, element);\n\n if(!elementUtils.isDetectable(element)) {\n debug && reporter.log(id, \"Not detectable.\");\n if(elementUtils.isBusy(element)) {\n debug && reporter.log(id, \"System busy making it detectable\");\n\n //The element is being prepared to be detectable. Do not make it detectable.\n //Just add the listener, because the element will soon be detectable.\n addListener(callOnAdd, element, listener);\n onReadyCallbacks[id] = onReadyCallbacks[id] || [];\n onReadyCallbacks[id].push(function onReady() {\n elementsReady++;\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n return;\n }\n\n debug && reporter.log(id, \"Making detectable...\");\n //The element is not prepared to be detectable, so do prepare it and add a listener to it.\n elementUtils.markBusy(element, true);\n return detectionStrategy.makeDetectable({ debug: debug, important: importantCssRules }, element, function onElementDetectable(element) {\n debug && reporter.log(id, \"onElementDetectable\");\n\n if (stateHandler.getState(element)) {\n elementUtils.markAsDetectable(element);\n elementUtils.markBusy(element, false);\n detectionStrategy.addListener(element, onResizeCallback);\n addListener(callOnAdd, element, listener);\n\n // Since the element size might have changed since the call to \"listenTo\", we need to check for this change,\n // so that a resize event may be emitted.\n // Having the startSize object is optional (since it does not make sense in some cases such as unrendered elements), so check for its existance before.\n // Also, check the state existance before since the element may have been uninstalled in the installation process.\n var state = stateHandler.getState(element);\n if (state && state.startSize) {\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n if (state.startSize.width !== width || state.startSize.height !== height) {\n onResizeCallback(element);\n }\n }\n\n if(onReadyCallbacks[id]) {\n forEach(onReadyCallbacks[id], function(callback) {\n callback();\n });\n }\n } else {\n // The element has been unisntalled before being detectable.\n debug && reporter.log(id, \"Element uninstalled before being detectable.\");\n }\n\n delete onReadyCallbacks[id];\n\n elementsReady++;\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n });\n }\n\n debug && reporter.log(id, \"Already detecable, adding listener.\");\n\n //The element has been prepared to be detectable and is ready to be listened to.\n addListener(callOnAdd, element, listener);\n elementsReady++;\n });\n\n if(elementsReady === elements.length) {\n onReadyCallback();\n }\n }\n\n function uninstall(elements) {\n if(!elements) {\n return reporter.error(\"At least one element is required.\");\n }\n\n if (isElement(elements)) {\n // A single element has been passed in.\n elements = [elements];\n } else if (isCollection(elements)) {\n // Convert collection to array for plugins.\n // TODO: May want to check so that all the elements in the collection are valid elements.\n elements = toArray(elements);\n } else {\n return reporter.error(\"Invalid arguments. Must be a DOM element or a collection of DOM elements.\");\n }\n\n forEach(elements, function (element) {\n eventListenerHandler.removeAllListeners(element);\n detectionStrategy.uninstall(element);\n stateHandler.cleanState(element);\n });\n }\n\n function initDocument(targetDocument) {\n detectionStrategy.initDocument && detectionStrategy.initDocument(targetDocument);\n }\n\n return {\n listenTo: listenTo,\n removeListener: eventListenerHandler.removeListener,\n removeAllListeners: eventListenerHandler.removeAllListeners,\n uninstall: uninstall,\n initDocument: initDocument\n };\n};\n\nfunction getOption(options, name, defaultValue) {\n var value = options[name];\n\n if((value === undefined || value === null) && defaultValue !== undefined) {\n return defaultValue;\n }\n\n return value;\n}\n","\"use strict\";\n\nmodule.exports = function(options) {\n var getState = options.stateHandler.getState;\n\n /**\n * Tells if the element has been made detectable and ready to be listened for resize events.\n * @public\n * @param {element} The element to check.\n * @returns {boolean} True or false depending on if the element is detectable or not.\n */\n function isDetectable(element) {\n var state = getState(element);\n return state && !!state.isDetectable;\n }\n\n /**\n * Marks the element that it has been made detectable and ready to be listened for resize events.\n * @public\n * @param {element} The element to mark.\n */\n function markAsDetectable(element) {\n getState(element).isDetectable = true;\n }\n\n /**\n * Tells if the element is busy or not.\n * @public\n * @param {element} The element to check.\n * @returns {boolean} True or false depending on if the element is busy or not.\n */\n function isBusy(element) {\n return !!getState(element).busy;\n }\n\n /**\n * Marks the object is busy and should not be made detectable.\n * @public\n * @param {element} element The element to mark.\n * @param {boolean} busy If the element is busy or not.\n */\n function markBusy(element, busy) {\n getState(element).busy = !!busy;\n }\n\n return {\n isDetectable: isDetectable,\n markAsDetectable: markAsDetectable,\n isBusy: isBusy,\n markBusy: markBusy\n };\n};\n","\"use strict\";\n\nmodule.exports = function() {\n var idCount = 1;\n\n /**\n * Generates a new unique id in the context.\n * @public\n * @returns {number} A unique id in the context.\n */\n function generate() {\n return idCount++;\n }\n\n return {\n generate: generate\n };\n};\n","\"use strict\";\n\nmodule.exports = function(options) {\n var idGenerator = options.idGenerator;\n var getState = options.stateHandler.getState;\n\n /**\n * Gets the resize detector id of the element.\n * @public\n * @param {element} element The target element to get the id of.\n * @returns {string|number|null} The id of the element. Null if it has no id.\n */\n function getId(element) {\n var state = getState(element);\n\n if (state && state.id !== undefined) {\n return state.id;\n }\n\n return null;\n }\n\n /**\n * Sets the resize detector id of the element. Requires the element to have a resize detector state initialized.\n * @public\n * @param {element} element The target element to set the id of.\n * @returns {string|number|null} The id of the element.\n */\n function setId(element) {\n var state = getState(element);\n\n if (!state) {\n throw new Error(\"setId required the element to have a resize detection state.\");\n }\n\n var id = idGenerator.generate();\n\n state.id = id;\n\n return id;\n }\n\n return {\n get: getId,\n set: setId\n };\n};\n","\"use strict\";\n\nmodule.exports = function(idHandler) {\n var eventListeners = {};\n\n /**\n * Gets all listeners for the given element.\n * @public\n * @param {element} element The element to get all listeners for.\n * @returns All listeners for the given element.\n */\n function getListeners(element) {\n var id = idHandler.get(element);\n\n if (id === undefined) {\n return [];\n }\n\n return eventListeners[id] || [];\n }\n\n /**\n * Stores the given listener for the given element. Will not actually add the listener to the element.\n * @public\n * @param {element} element The element that should have the listener added.\n * @param {function} listener The callback that the element has added.\n */\n function addListener(element, listener) {\n var id = idHandler.get(element);\n\n if(!eventListeners[id]) {\n eventListeners[id] = [];\n }\n\n eventListeners[id].push(listener);\n }\n\n function removeListener(element, listener) {\n var listeners = getListeners(element);\n for (var i = 0, len = listeners.length; i < len; ++i) {\n if (listeners[i] === listener) {\n listeners.splice(i, 1);\n break;\n }\n }\n }\n\n function removeAllListeners(element) {\n var listeners = getListeners(element);\n if (!listeners) { return; }\n listeners.length = 0;\n }\n\n return {\n get: getListeners,\n add: addListener,\n removeListener: removeListener,\n removeAllListeners: removeAllListeners\n };\n};\n","\"use strict\";\n\n/* global console: false */\n\n/**\n * Reporter that handles the reporting of logs, warnings and errors.\n * @public\n * @param {boolean} quiet Tells if the reporter should be quiet or not.\n */\nmodule.exports = function(quiet) {\n function noop() {\n //Does nothing.\n }\n\n var reporter = {\n log: noop,\n warn: noop,\n error: noop\n };\n\n if(!quiet && window.console) {\n var attachFunction = function(reporter, name) {\n //The proxy is needed to be able to call the method with the console context,\n //since we cannot use bind.\n reporter[name] = function reporterProxy() {\n var f = console[name];\n if (f.apply) { //IE9 does not support console.log.apply :)\n f.apply(console, arguments);\n } else {\n for (var i = 0; i < arguments.length; i++) {\n f(arguments[i]);\n }\n }\n };\n };\n\n attachFunction(reporter, \"log\");\n attachFunction(reporter, \"warn\");\n attachFunction(reporter, \"error\");\n }\n\n return reporter;\n};","\"use strict\";\n\nvar prop = \"_erd\";\n\nfunction initState(element) {\n element[prop] = {};\n return getState(element);\n}\n\nfunction getState(element) {\n return element[prop];\n}\n\nfunction cleanState(element) {\n delete element[prop];\n}\n\nmodule.exports = {\n initState: initState,\n getState: getState,\n cleanState: cleanState\n};\n","\"use strict\";\nif (typeof Object.assign !== \"function\") {\n Object.assign = function (target) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n if (!target) {\n throw TypeError(\"Cannot convert undefined or null to object\");\n }\n var _loop_1 = function (source) {\n if (source) {\n Object.keys(source).forEach(function (key) { return (target[key] = source[key]); });\n }\n };\n for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {\n var source = args_1[_a];\n _loop_1(source);\n }\n return target;\n };\n}\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n typeof define === 'function' && define.amd ? define(['exports'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.default = {}));\n}(this, (function (exports) { 'use strict';\n\n var english = {\n weekdays: {\n shorthand: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n longhand: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n ],\n },\n months: {\n shorthand: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n longhand: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n ],\n },\n daysInMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],\n firstDayOfWeek: 0,\n ordinal: function (nth) {\n var s = nth % 100;\n if (s > 3 && s < 21)\n return \"th\";\n switch (s % 10) {\n case 1:\n return \"st\";\n case 2:\n return \"nd\";\n case 3:\n return \"rd\";\n default:\n return \"th\";\n }\n },\n rangeSeparator: \" to \",\n weekAbbreviation: \"Wk\",\n scrollTitle: \"Scroll to increment\",\n toggleTitle: \"Click to toggle\",\n amPM: [\"AM\", \"PM\"],\n yearAriaLabel: \"Year\",\n monthAriaLabel: \"Month\",\n hourAriaLabel: \"Hour\",\n minuteAriaLabel: \"Minute\",\n time_24hr: false,\n };\n\n exports.default = english;\n exports.english = english;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n})));\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n typeof define === 'function' && define.amd ? define(['exports'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.pt = {}));\n}(this, (function (exports) { 'use strict';\n\n var fp = typeof window !== \"undefined\" && window.flatpickr !== undefined\n ? window.flatpickr\n : {\n l10ns: {},\n };\n var Portuguese = {\n weekdays: {\n shorthand: [\"Dom\", \"Seg\", \"Ter\", \"Qua\", \"Qui\", \"Sex\", \"Sáb\"],\n longhand: [\n \"Domingo\",\n \"Segunda-feira\",\n \"Terça-feira\",\n \"Quarta-feira\",\n \"Quinta-feira\",\n \"Sexta-feira\",\n \"Sábado\",\n ],\n },\n months: {\n shorthand: [\n \"Jan\",\n \"Fev\",\n \"Mar\",\n \"Abr\",\n \"Mai\",\n \"Jun\",\n \"Jul\",\n \"Ago\",\n \"Set\",\n \"Out\",\n \"Nov\",\n \"Dez\",\n ],\n longhand: [\n \"Janeiro\",\n \"Fevereiro\",\n \"Março\",\n \"Abril\",\n \"Maio\",\n \"Junho\",\n \"Julho\",\n \"Agosto\",\n \"Setembro\",\n \"Outubro\",\n \"Novembro\",\n \"Dezembro\",\n ],\n },\n rangeSeparator: \" até \",\n time_24hr: true,\n };\n fp.l10ns.pt = Portuguese;\n var pt = fp.l10ns;\n\n exports.Portuguese = Portuguese;\n exports.default = pt;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n})));\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.monthSelectPlugin = factory());\n}(this, (function () { 'use strict';\n\n /*! *****************************************************************************\r\n Copyright (c) Microsoft Corporation.\r\n\r\n Permission to use, copy, modify, and/or distribute this software for any\r\n purpose with or without fee is hereby granted.\r\n\r\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\n PERFORMANCE OF THIS SOFTWARE.\r\n ***************************************************************************** */\r\n\r\n 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 };\n\n var monthToStr = function (monthNumber, shorthand, locale) { return locale.months[shorthand ? \"shorthand\" : \"longhand\"][monthNumber]; };\n\n function clearNode(node) {\n while (node.firstChild)\n node.removeChild(node.firstChild);\n }\n function getEventTarget(event) {\n try {\n if (typeof event.composedPath === \"function\") {\n var path = event.composedPath();\n return path[0];\n }\n return event.target;\n }\n catch (error) {\n return event.target;\n }\n }\n\n var defaultConfig = {\n shorthand: false,\n dateFormat: \"F Y\",\n altFormat: \"F Y\",\n theme: \"light\",\n };\n function monthSelectPlugin(pluginConfig) {\n var config = __assign(__assign({}, defaultConfig), pluginConfig);\n return function (fp) {\n fp.config.dateFormat = config.dateFormat;\n fp.config.altFormat = config.altFormat;\n var self = { monthsContainer: null };\n function clearUnnecessaryDOMElements() {\n if (!fp.rContainer)\n return;\n clearNode(fp.rContainer);\n for (var index = 0; index < fp.monthElements.length; index++) {\n var element = fp.monthElements[index];\n if (!element.parentNode)\n continue;\n element.parentNode.removeChild(element);\n }\n }\n function build() {\n if (!fp.rContainer)\n return;\n self.monthsContainer = fp._createElement(\"div\", \"flatpickr-monthSelect-months\");\n self.monthsContainer.tabIndex = -1;\n buildMonths();\n fp.rContainer.appendChild(self.monthsContainer);\n fp.calendarContainer.classList.add(\"flatpickr-monthSelect-theme-\" + config.theme);\n }\n function buildMonths() {\n if (!self.monthsContainer)\n return;\n clearNode(self.monthsContainer);\n var frag = document.createDocumentFragment();\n for (var i = 0; i < 12; i++) {\n var month = fp.createDay(\"flatpickr-monthSelect-month\", new Date(fp.currentYear, i), 0, i);\n if (month.dateObj.getMonth() === new Date().getMonth() &&\n month.dateObj.getFullYear() === new Date().getFullYear())\n month.classList.add(\"today\");\n month.textContent = monthToStr(i, config.shorthand, fp.l10n);\n month.addEventListener(\"click\", selectMonth);\n frag.appendChild(month);\n }\n self.monthsContainer.appendChild(frag);\n if (fp.config.minDate &&\n fp.currentYear === fp.config.minDate.getFullYear())\n fp.prevMonthNav.classList.add(\"flatpickr-disabled\");\n else\n fp.prevMonthNav.classList.remove(\"flatpickr-disabled\");\n if (fp.config.maxDate &&\n fp.currentYear === fp.config.maxDate.getFullYear())\n fp.nextMonthNav.classList.add(\"flatpickr-disabled\");\n else\n fp.nextMonthNav.classList.remove(\"flatpickr-disabled\");\n }\n function bindEvents() {\n fp._bind(fp.prevMonthNav, \"click\", function (e) {\n e.preventDefault();\n e.stopPropagation();\n fp.changeYear(fp.currentYear - 1);\n selectYear();\n buildMonths();\n });\n fp._bind(fp.nextMonthNav, \"click\", function (e) {\n e.preventDefault();\n e.stopPropagation();\n fp.changeYear(fp.currentYear + 1);\n selectYear();\n buildMonths();\n });\n fp._bind(self.monthsContainer, \"mouseover\", function (e) {\n if (fp.config.mode === \"range\")\n fp.onMouseOver(getEventTarget(e), \"flatpickr-monthSelect-month\");\n });\n }\n function setCurrentlySelected() {\n if (!fp.rContainer)\n return;\n if (!fp.selectedDates.length)\n return;\n var currentlySelected = fp.rContainer.querySelectorAll(\".flatpickr-monthSelect-month.selected\");\n for (var index = 0; index < currentlySelected.length; index++) {\n currentlySelected[index].classList.remove(\"selected\");\n }\n var targetMonth = fp.selectedDates[0].getMonth();\n var month = fp.rContainer.querySelector(\".flatpickr-monthSelect-month:nth-child(\" + (targetMonth + 1) + \")\");\n if (month) {\n month.classList.add(\"selected\");\n }\n }\n function selectYear() {\n var selectedDate = fp.selectedDates[0];\n if (selectedDate) {\n selectedDate = new Date(selectedDate);\n selectedDate.setFullYear(fp.currentYear);\n if (fp.config.minDate && selectedDate < fp.config.minDate) {\n selectedDate = fp.config.minDate;\n }\n if (fp.config.maxDate && selectedDate > fp.config.maxDate) {\n selectedDate = fp.config.maxDate;\n }\n fp.currentYear = selectedDate.getFullYear();\n }\n fp.currentYearElement.value = String(fp.currentYear);\n if (fp.rContainer) {\n var months = fp.rContainer.querySelectorAll(\".flatpickr-monthSelect-month\");\n months.forEach(function (month) {\n month.dateObj.setFullYear(fp.currentYear);\n if ((fp.config.minDate && month.dateObj < fp.config.minDate) ||\n (fp.config.maxDate && month.dateObj > fp.config.maxDate)) {\n month.classList.add(\"flatpickr-disabled\");\n }\n else {\n month.classList.remove(\"flatpickr-disabled\");\n }\n });\n }\n setCurrentlySelected();\n }\n function selectMonth(e) {\n e.preventDefault();\n e.stopPropagation();\n var eventTarget = getEventTarget(e);\n if (!(eventTarget instanceof Element))\n return;\n if (eventTarget.classList.contains(\"flatpickr-disabled\"))\n return;\n if (eventTarget.classList.contains(\"notAllowed\"))\n return; // necessary??\n setMonth(eventTarget.dateObj);\n if (fp.config.closeOnSelect) {\n var single = fp.config.mode === \"single\";\n var range = fp.config.mode === \"range\" && fp.selectedDates.length === 2;\n if (single || range)\n fp.close();\n }\n }\n function setMonth(date) {\n var selectedDate = new Date(fp.currentYear, date.getMonth(), date.getDate());\n var selectedDates = [];\n switch (fp.config.mode) {\n case \"single\":\n selectedDates = [selectedDate];\n break;\n case \"multiple\":\n selectedDates.push(selectedDate);\n break;\n case \"range\":\n if (fp.selectedDates.length === 2) {\n selectedDates = [selectedDate];\n }\n else {\n selectedDates = fp.selectedDates.concat([selectedDate]);\n selectedDates.sort(function (a, b) { return a.getTime() - b.getTime(); });\n }\n break;\n }\n fp.setDate(selectedDates, true);\n setCurrentlySelected();\n }\n var shifts = {\n 37: -1,\n 39: 1,\n 40: 3,\n 38: -3,\n };\n function onKeyDown(_, __, ___, e) {\n var shouldMove = shifts[e.keyCode] !== undefined;\n if (!shouldMove && e.keyCode !== 13) {\n return;\n }\n if (!fp.rContainer || !self.monthsContainer)\n return;\n var currentlySelected = fp.rContainer.querySelector(\".flatpickr-monthSelect-month.selected\");\n var index = Array.prototype.indexOf.call(self.monthsContainer.children, document.activeElement);\n if (index === -1) {\n var target = currentlySelected || self.monthsContainer.firstElementChild;\n target.focus();\n index = target.$i;\n }\n if (shouldMove) {\n self.monthsContainer.children[(12 + index + shifts[e.keyCode]) % 12].focus();\n }\n else if (e.keyCode === 13 &&\n self.monthsContainer.contains(document.activeElement)) {\n setMonth(document.activeElement.dateObj);\n }\n }\n function closeHook() {\n var _a;\n if (((_a = fp.config) === null || _a === void 0 ? void 0 : _a.mode) === \"range\" && fp.selectedDates.length === 1)\n fp.clear(false);\n if (!fp.selectedDates.length)\n buildMonths();\n }\n // Help the prev/next year nav honor config.minDate (see 3fa5a69)\n function stubCurrentMonth() {\n config._stubbedCurrentMonth = fp._initialDate.getMonth();\n fp._initialDate.setMonth(config._stubbedCurrentMonth);\n fp.currentMonth = config._stubbedCurrentMonth;\n }\n function unstubCurrentMonth() {\n if (!config._stubbedCurrentMonth)\n return;\n fp._initialDate.setMonth(config._stubbedCurrentMonth);\n fp.currentMonth = config._stubbedCurrentMonth;\n delete config._stubbedCurrentMonth;\n }\n function destroyPluginInstance() {\n if (self.monthsContainer !== null) {\n var months = self.monthsContainer.querySelectorAll(\".flatpickr-monthSelect-month\");\n for (var index = 0; index < months.length; index++) {\n months[index].removeEventListener(\"click\", selectMonth);\n }\n }\n }\n return {\n onParseConfig: function () {\n fp.config.enableTime = false;\n },\n onValueUpdate: setCurrentlySelected,\n onKeyDown: onKeyDown,\n onReady: [\n stubCurrentMonth,\n clearUnnecessaryDOMElements,\n build,\n bindEvents,\n setCurrentlySelected,\n function () {\n fp.config.onClose.push(closeHook);\n fp.loadedPlugins.push(\"monthSelect\");\n },\n ],\n onDestroy: [\n unstubCurrentMonth,\n destroyPluginInstance,\n function () {\n fp.config.onClose = fp.config.onClose.filter(function (hook) { return hook !== closeHook; });\n },\n ],\n };\n };\n }\n\n return monthSelectPlugin;\n\n})));\n","(function(prototype) {\n if (typeof prototype.requestSubmit == \"function\") return\n\n prototype.requestSubmit = function(submitter) {\n if (submitter) {\n validateSubmitter(submitter, this)\n submitter.click()\n } else {\n submitter = document.createElement(\"input\")\n submitter.type = \"submit\"\n submitter.hidden = true\n this.appendChild(submitter)\n submitter.click()\n this.removeChild(submitter)\n }\n }\n\n function validateSubmitter(submitter, form) {\n submitter instanceof HTMLElement || raise(TypeError, \"parameter 1 is not of type 'HTMLElement'\")\n submitter.type == \"submit\" || raise(TypeError, \"The specified element is not a submit button\")\n submitter.form == form || raise(DOMException, \"The specified element is not owned by this form element\", \"NotFoundError\")\n }\n\n function raise(errorConstructor, message, name) {\n throw new errorConstructor(\"Failed to execute 'requestSubmit' on 'HTMLFormElement': \" + message + \".\", name)\n }\n})(HTMLFormElement.prototype);\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","/**\n * @licstart The following is the entire license notice for the\n * JavaScript code in this page\n *\n * Copyright 2023 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * @licend The above is the entire license notice for the\n * JavaScript code in this page\n */\n\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = root.pdfjsLib = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"pdfjs-dist/build/pdf\", [], () => { return (root.pdfjsLib = factory()); });\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/build/pdf\"] = root.pdfjsLib = factory();\n\telse\n\t\troot[\"pdfjs-dist/build/pdf\"] = root.pdfjsLib = factory();\n})(globalThis, () => {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ([\n/* 0 */,\n/* 1 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.VerbosityLevel = exports.Util = exports.UnknownErrorException = exports.UnexpectedResponseException = exports.TextRenderingMode = exports.RenderingIntentFlag = exports.PromiseCapability = exports.PermissionFlag = exports.PasswordResponses = exports.PasswordException = exports.PageActionEventType = exports.OPS = exports.MissingPDFException = exports.MAX_IMAGE_SIZE_TO_CACHE = exports.LINE_FACTOR = exports.LINE_DESCENT_FACTOR = exports.InvalidPDFException = exports.ImageKind = exports.IDENTITY_MATRIX = exports.FormatError = exports.FeatureTest = exports.FONT_IDENTITY_MATRIX = exports.DocumentActionEventType = exports.CMapCompressionType = exports.BaseException = exports.BASELINE_FACTOR = exports.AnnotationType = exports.AnnotationReplyType = exports.AnnotationPrefix = exports.AnnotationMode = exports.AnnotationFlag = exports.AnnotationFieldFlag = exports.AnnotationEditorType = exports.AnnotationEditorPrefix = exports.AnnotationEditorParamsType = exports.AnnotationBorderStyleType = exports.AnnotationActionEventType = exports.AbortException = void 0;\nexports.assert = assert;\nexports.bytesToString = bytesToString;\nexports.createValidAbsoluteUrl = createValidAbsoluteUrl;\nexports.getModificationDate = getModificationDate;\nexports.getUuid = getUuid;\nexports.getVerbosityLevel = getVerbosityLevel;\nexports.info = info;\nexports.isArrayBuffer = isArrayBuffer;\nexports.isArrayEqual = isArrayEqual;\nexports.isNodeJS = void 0;\nexports.normalizeUnicode = normalizeUnicode;\nexports.objectFromMap = objectFromMap;\nexports.objectSize = objectSize;\nexports.setVerbosityLevel = setVerbosityLevel;\nexports.shadow = shadow;\nexports.string32 = string32;\nexports.stringToBytes = stringToBytes;\nexports.stringToPDFString = stringToPDFString;\nexports.stringToUTF8String = stringToUTF8String;\nexports.unreachable = unreachable;\nexports.utf8StringToString = utf8StringToString;\nexports.warn = warn;\nconst isNodeJS = typeof process === \"object\" && process + \"\" === \"[object process]\" && !process.versions.nw && !(process.versions.electron && process.type && process.type !== \"browser\");\nexports.isNodeJS = isNodeJS;\nconst IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nexports.IDENTITY_MATRIX = IDENTITY_MATRIX;\nconst FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\nexports.FONT_IDENTITY_MATRIX = FONT_IDENTITY_MATRIX;\nconst MAX_IMAGE_SIZE_TO_CACHE = 10e6;\nexports.MAX_IMAGE_SIZE_TO_CACHE = MAX_IMAGE_SIZE_TO_CACHE;\nconst LINE_FACTOR = 1.35;\nexports.LINE_FACTOR = LINE_FACTOR;\nconst LINE_DESCENT_FACTOR = 0.35;\nexports.LINE_DESCENT_FACTOR = LINE_DESCENT_FACTOR;\nconst BASELINE_FACTOR = LINE_DESCENT_FACTOR / LINE_FACTOR;\nexports.BASELINE_FACTOR = BASELINE_FACTOR;\nconst RenderingIntentFlag = {\n ANY: 0x01,\n DISPLAY: 0x02,\n PRINT: 0x04,\n SAVE: 0x08,\n ANNOTATIONS_FORMS: 0x10,\n ANNOTATIONS_STORAGE: 0x20,\n ANNOTATIONS_DISABLE: 0x40,\n OPLIST: 0x100\n};\nexports.RenderingIntentFlag = RenderingIntentFlag;\nconst AnnotationMode = {\n DISABLE: 0,\n ENABLE: 1,\n ENABLE_FORMS: 2,\n ENABLE_STORAGE: 3\n};\nexports.AnnotationMode = AnnotationMode;\nconst AnnotationEditorPrefix = \"pdfjs_internal_editor_\";\nexports.AnnotationEditorPrefix = AnnotationEditorPrefix;\nconst AnnotationEditorType = {\n DISABLE: -1,\n NONE: 0,\n FREETEXT: 3,\n STAMP: 13,\n INK: 15\n};\nexports.AnnotationEditorType = AnnotationEditorType;\nconst AnnotationEditorParamsType = {\n RESIZE: 1,\n CREATE: 2,\n FREETEXT_SIZE: 11,\n FREETEXT_COLOR: 12,\n FREETEXT_OPACITY: 13,\n INK_COLOR: 21,\n INK_THICKNESS: 22,\n INK_OPACITY: 23\n};\nexports.AnnotationEditorParamsType = AnnotationEditorParamsType;\nconst PermissionFlag = {\n PRINT: 0x04,\n MODIFY_CONTENTS: 0x08,\n COPY: 0x10,\n MODIFY_ANNOTATIONS: 0x20,\n FILL_INTERACTIVE_FORMS: 0x100,\n COPY_FOR_ACCESSIBILITY: 0x200,\n ASSEMBLE: 0x400,\n PRINT_HIGH_QUALITY: 0x800\n};\nexports.PermissionFlag = PermissionFlag;\nconst TextRenderingMode = {\n FILL: 0,\n STROKE: 1,\n FILL_STROKE: 2,\n INVISIBLE: 3,\n FILL_ADD_TO_PATH: 4,\n STROKE_ADD_TO_PATH: 5,\n FILL_STROKE_ADD_TO_PATH: 6,\n ADD_TO_PATH: 7,\n FILL_STROKE_MASK: 3,\n ADD_TO_PATH_FLAG: 4\n};\nexports.TextRenderingMode = TextRenderingMode;\nconst ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3\n};\nexports.ImageKind = ImageKind;\nconst AnnotationType = {\n TEXT: 1,\n LINK: 2,\n FREETEXT: 3,\n LINE: 4,\n SQUARE: 5,\n CIRCLE: 6,\n POLYGON: 7,\n POLYLINE: 8,\n HIGHLIGHT: 9,\n UNDERLINE: 10,\n SQUIGGLY: 11,\n STRIKEOUT: 12,\n STAMP: 13,\n CARET: 14,\n INK: 15,\n POPUP: 16,\n FILEATTACHMENT: 17,\n SOUND: 18,\n MOVIE: 19,\n WIDGET: 20,\n SCREEN: 21,\n PRINTERMARK: 22,\n TRAPNET: 23,\n WATERMARK: 24,\n THREED: 25,\n REDACT: 26\n};\nexports.AnnotationType = AnnotationType;\nconst AnnotationReplyType = {\n GROUP: \"Group\",\n REPLY: \"R\"\n};\nexports.AnnotationReplyType = AnnotationReplyType;\nconst AnnotationFlag = {\n INVISIBLE: 0x01,\n HIDDEN: 0x02,\n PRINT: 0x04,\n NOZOOM: 0x08,\n NOROTATE: 0x10,\n NOVIEW: 0x20,\n READONLY: 0x40,\n LOCKED: 0x80,\n TOGGLENOVIEW: 0x100,\n LOCKEDCONTENTS: 0x200\n};\nexports.AnnotationFlag = AnnotationFlag;\nconst AnnotationFieldFlag = {\n READONLY: 0x0000001,\n REQUIRED: 0x0000002,\n NOEXPORT: 0x0000004,\n MULTILINE: 0x0001000,\n PASSWORD: 0x0002000,\n NOTOGGLETOOFF: 0x0004000,\n RADIO: 0x0008000,\n PUSHBUTTON: 0x0010000,\n COMBO: 0x0020000,\n EDIT: 0x0040000,\n SORT: 0x0080000,\n FILESELECT: 0x0100000,\n MULTISELECT: 0x0200000,\n DONOTSPELLCHECK: 0x0400000,\n DONOTSCROLL: 0x0800000,\n COMB: 0x1000000,\n RICHTEXT: 0x2000000,\n RADIOSINUNISON: 0x2000000,\n COMMITONSELCHANGE: 0x4000000\n};\nexports.AnnotationFieldFlag = AnnotationFieldFlag;\nconst AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5\n};\nexports.AnnotationBorderStyleType = AnnotationBorderStyleType;\nconst AnnotationActionEventType = {\n E: \"Mouse Enter\",\n X: \"Mouse Exit\",\n D: \"Mouse Down\",\n U: \"Mouse Up\",\n Fo: \"Focus\",\n Bl: \"Blur\",\n PO: \"PageOpen\",\n PC: \"PageClose\",\n PV: \"PageVisible\",\n PI: \"PageInvisible\",\n K: \"Keystroke\",\n F: \"Format\",\n V: \"Validate\",\n C: \"Calculate\"\n};\nexports.AnnotationActionEventType = AnnotationActionEventType;\nconst DocumentActionEventType = {\n WC: \"WillClose\",\n WS: \"WillSave\",\n DS: \"DidSave\",\n WP: \"WillPrint\",\n DP: \"DidPrint\"\n};\nexports.DocumentActionEventType = DocumentActionEventType;\nconst PageActionEventType = {\n O: \"PageOpen\",\n C: \"PageClose\"\n};\nexports.PageActionEventType = PageActionEventType;\nconst VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5\n};\nexports.VerbosityLevel = VerbosityLevel;\nconst CMapCompressionType = {\n NONE: 0,\n BINARY: 1\n};\nexports.CMapCompressionType = CMapCompressionType;\nconst OPS = {\n dependency: 1,\n setLineWidth: 2,\n setLineCap: 3,\n setLineJoin: 4,\n setMiterLimit: 5,\n setDash: 6,\n setRenderingIntent: 7,\n setFlatness: 8,\n setGState: 9,\n save: 10,\n restore: 11,\n transform: 12,\n moveTo: 13,\n lineTo: 14,\n curveTo: 15,\n curveTo2: 16,\n curveTo3: 17,\n closePath: 18,\n rectangle: 19,\n stroke: 20,\n closeStroke: 21,\n fill: 22,\n eoFill: 23,\n fillStroke: 24,\n eoFillStroke: 25,\n closeFillStroke: 26,\n closeEOFillStroke: 27,\n endPath: 28,\n clip: 29,\n eoClip: 30,\n beginText: 31,\n endText: 32,\n setCharSpacing: 33,\n setWordSpacing: 34,\n setHScale: 35,\n setLeading: 36,\n setFont: 37,\n setTextRenderingMode: 38,\n setTextRise: 39,\n moveText: 40,\n setLeadingMoveText: 41,\n setTextMatrix: 42,\n nextLine: 43,\n showText: 44,\n showSpacedText: 45,\n nextLineShowText: 46,\n nextLineSetSpacingShowText: 47,\n setCharWidth: 48,\n setCharWidthAndBounds: 49,\n setStrokeColorSpace: 50,\n setFillColorSpace: 51,\n setStrokeColor: 52,\n setStrokeColorN: 53,\n setFillColor: 54,\n setFillColorN: 55,\n setStrokeGray: 56,\n setFillGray: 57,\n setStrokeRGBColor: 58,\n setFillRGBColor: 59,\n setStrokeCMYKColor: 60,\n setFillCMYKColor: 61,\n shadingFill: 62,\n beginInlineImage: 63,\n beginImageData: 64,\n endInlineImage: 65,\n paintXObject: 66,\n markPoint: 67,\n markPointProps: 68,\n beginMarkedContent: 69,\n beginMarkedContentProps: 70,\n endMarkedContent: 71,\n beginCompat: 72,\n endCompat: 73,\n paintFormXObjectBegin: 74,\n paintFormXObjectEnd: 75,\n beginGroup: 76,\n endGroup: 77,\n beginAnnotation: 80,\n endAnnotation: 81,\n paintImageMaskXObject: 83,\n paintImageMaskXObjectGroup: 84,\n paintImageXObject: 85,\n paintInlineImageXObject: 86,\n paintInlineImageXObjectGroup: 87,\n paintImageXObjectRepeat: 88,\n paintImageMaskXObjectRepeat: 89,\n paintSolidColorImageMask: 90,\n constructPath: 91\n};\nexports.OPS = OPS;\nconst PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2\n};\nexports.PasswordResponses = PasswordResponses;\nlet verbosity = VerbosityLevel.WARNINGS;\nfunction setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n}\nfunction getVerbosityLevel() {\n return verbosity;\n}\nfunction info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log(`Info: ${msg}`);\n }\n}\nfunction warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log(`Warning: ${msg}`);\n }\n}\nfunction unreachable(msg) {\n throw new Error(msg);\n}\nfunction assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n}\nfunction _isValidProtocol(url) {\n switch (url?.protocol) {\n case \"http:\":\n case \"https:\":\n case \"ftp:\":\n case \"mailto:\":\n case \"tel:\":\n return true;\n default:\n return false;\n }\n}\nfunction createValidAbsoluteUrl(url, baseUrl = null, options = null) {\n if (!url) {\n return null;\n }\n try {\n if (options && typeof url === \"string\") {\n if (options.addDefaultProtocol && url.startsWith(\"www.\")) {\n const dots = url.match(/\\./g);\n if (dots?.length >= 2) {\n url = `http://${url}`;\n }\n }\n if (options.tryConvertEncoding) {\n try {\n url = stringToUTF8String(url);\n } catch {}\n }\n }\n const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n if (_isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch {}\n return null;\n}\nfunction shadow(obj, prop, value, nonSerializable = false) {\n Object.defineProperty(obj, prop, {\n value,\n enumerable: !nonSerializable,\n configurable: true,\n writable: false\n });\n return value;\n}\nconst BaseException = function BaseExceptionClosure() {\n function BaseException(message, name) {\n if (this.constructor === BaseException) {\n unreachable(\"Cannot initialize BaseException.\");\n }\n this.message = message;\n this.name = name;\n }\n BaseException.prototype = new Error();\n BaseException.constructor = BaseException;\n return BaseException;\n}();\nexports.BaseException = BaseException;\nclass PasswordException extends BaseException {\n constructor(msg, code) {\n super(msg, \"PasswordException\");\n this.code = code;\n }\n}\nexports.PasswordException = PasswordException;\nclass UnknownErrorException extends BaseException {\n constructor(msg, details) {\n super(msg, \"UnknownErrorException\");\n this.details = details;\n }\n}\nexports.UnknownErrorException = UnknownErrorException;\nclass InvalidPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"InvalidPDFException\");\n }\n}\nexports.InvalidPDFException = InvalidPDFException;\nclass MissingPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"MissingPDFException\");\n }\n}\nexports.MissingPDFException = MissingPDFException;\nclass UnexpectedResponseException extends BaseException {\n constructor(msg, status) {\n super(msg, \"UnexpectedResponseException\");\n this.status = status;\n }\n}\nexports.UnexpectedResponseException = UnexpectedResponseException;\nclass FormatError extends BaseException {\n constructor(msg) {\n super(msg, \"FormatError\");\n }\n}\nexports.FormatError = FormatError;\nclass AbortException extends BaseException {\n constructor(msg) {\n super(msg, \"AbortException\");\n }\n}\nexports.AbortException = AbortException;\nfunction bytesToString(bytes) {\n if (typeof bytes !== \"object\" || bytes?.length === undefined) {\n unreachable(\"Invalid argument for bytesToString\");\n }\n const length = bytes.length;\n const MAX_ARGUMENT_COUNT = 8192;\n if (length < MAX_ARGUMENT_COUNT) {\n return String.fromCharCode.apply(null, bytes);\n }\n const strBuf = [];\n for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) {\n const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);\n const chunk = bytes.subarray(i, chunkEnd);\n strBuf.push(String.fromCharCode.apply(null, chunk));\n }\n return strBuf.join(\"\");\n}\nfunction stringToBytes(str) {\n if (typeof str !== \"string\") {\n unreachable(\"Invalid argument for stringToBytes\");\n }\n const length = str.length;\n const bytes = new Uint8Array(length);\n for (let i = 0; i < length; ++i) {\n bytes[i] = str.charCodeAt(i) & 0xff;\n }\n return bytes;\n}\nfunction string32(value) {\n return String.fromCharCode(value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);\n}\nfunction objectSize(obj) {\n return Object.keys(obj).length;\n}\nfunction objectFromMap(map) {\n const obj = Object.create(null);\n for (const [key, value] of map) {\n obj[key] = value;\n }\n return obj;\n}\nfunction isLittleEndian() {\n const buffer8 = new Uint8Array(4);\n buffer8[0] = 1;\n const view32 = new Uint32Array(buffer8.buffer, 0, 1);\n return view32[0] === 1;\n}\nfunction isEvalSupported() {\n try {\n new Function(\"\");\n return true;\n } catch {\n return false;\n }\n}\nclass FeatureTest {\n static get isLittleEndian() {\n return shadow(this, \"isLittleEndian\", isLittleEndian());\n }\n static get isEvalSupported() {\n return shadow(this, \"isEvalSupported\", isEvalSupported());\n }\n static get isOffscreenCanvasSupported() {\n return shadow(this, \"isOffscreenCanvasSupported\", typeof OffscreenCanvas !== \"undefined\");\n }\n static get platform() {\n if (typeof navigator === \"undefined\") {\n return shadow(this, \"platform\", {\n isWin: false,\n isMac: false\n });\n }\n return shadow(this, \"platform\", {\n isWin: navigator.platform.includes(\"Win\"),\n isMac: navigator.platform.includes(\"Mac\")\n });\n }\n static get isCSSRoundSupported() {\n return shadow(this, \"isCSSRoundSupported\", globalThis.CSS?.supports?.(\"width: round(1.5px, 1px)\"));\n }\n}\nexports.FeatureTest = FeatureTest;\nconst hexNumbers = [...Array(256).keys()].map(n => n.toString(16).padStart(2, \"0\"));\nclass Util {\n static makeHexColor(r, g, b) {\n return `#${hexNumbers[r]}${hexNumbers[g]}${hexNumbers[b]}`;\n }\n static scaleMinMax(transform, minMax) {\n let temp;\n if (transform[0]) {\n if (transform[0] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[1];\n minMax[1] = temp;\n }\n minMax[0] *= transform[0];\n minMax[1] *= transform[0];\n if (transform[3] < 0) {\n temp = minMax[2];\n minMax[2] = minMax[3];\n minMax[3] = temp;\n }\n minMax[2] *= transform[3];\n minMax[3] *= transform[3];\n } else {\n temp = minMax[0];\n minMax[0] = minMax[2];\n minMax[2] = temp;\n temp = minMax[1];\n minMax[1] = minMax[3];\n minMax[3] = temp;\n if (transform[1] < 0) {\n temp = minMax[2];\n minMax[2] = minMax[3];\n minMax[3] = temp;\n }\n minMax[2] *= transform[1];\n minMax[3] *= transform[1];\n if (transform[2] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[1];\n minMax[1] = temp;\n }\n minMax[0] *= transform[2];\n minMax[1] *= transform[2];\n }\n minMax[0] += transform[4];\n minMax[1] += transform[4];\n minMax[2] += transform[5];\n minMax[3] += transform[5];\n }\n static transform(m1, m2) {\n return [m1[0] * m2[0] + m1[2] * m2[1], m1[1] * m2[0] + m1[3] * m2[1], m1[0] * m2[2] + m1[2] * m2[3], m1[1] * m2[2] + m1[3] * m2[3], m1[0] * m2[4] + m1[2] * m2[5] + m1[4], m1[1] * m2[4] + m1[3] * m2[5] + m1[5]];\n }\n static applyTransform(p, m) {\n const xt = p[0] * m[0] + p[1] * m[2] + m[4];\n const yt = p[0] * m[1] + p[1] * m[3] + m[5];\n return [xt, yt];\n }\n static applyInverseTransform(p, m) {\n const d = m[0] * m[3] - m[1] * m[2];\n const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;\n const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;\n return [xt, yt];\n }\n static getAxialAlignedBoundingBox(r, m) {\n const p1 = this.applyTransform(r, m);\n const p2 = this.applyTransform(r.slice(2, 4), m);\n const p3 = this.applyTransform([r[0], r[3]], m);\n const p4 = this.applyTransform([r[2], r[1]], m);\n return [Math.min(p1[0], p2[0], p3[0], p4[0]), Math.min(p1[1], p2[1], p3[1], p4[1]), Math.max(p1[0], p2[0], p3[0], p4[0]), Math.max(p1[1], p2[1], p3[1], p4[1])];\n }\n static inverseTransform(m) {\n const d = m[0] * m[3] - m[1] * m[2];\n return [m[3] / d, -m[1] / d, -m[2] / d, m[0] / d, (m[2] * m[5] - m[4] * m[3]) / d, (m[4] * m[1] - m[5] * m[0]) / d];\n }\n static singularValueDecompose2dScale(m) {\n const transpose = [m[0], m[2], m[1], m[3]];\n const a = m[0] * transpose[0] + m[1] * transpose[2];\n const b = m[0] * transpose[1] + m[1] * transpose[3];\n const c = m[2] * transpose[0] + m[3] * transpose[2];\n const d = m[2] * transpose[1] + m[3] * transpose[3];\n const first = (a + d) / 2;\n const second = Math.sqrt((a + d) ** 2 - 4 * (a * d - c * b)) / 2;\n const sx = first + second || 1;\n const sy = first - second || 1;\n return [Math.sqrt(sx), Math.sqrt(sy)];\n }\n static normalizeRect(rect) {\n const r = rect.slice(0);\n if (rect[0] > rect[2]) {\n r[0] = rect[2];\n r[2] = rect[0];\n }\n if (rect[1] > rect[3]) {\n r[1] = rect[3];\n r[3] = rect[1];\n }\n return r;\n }\n static intersect(rect1, rect2) {\n const xLow = Math.max(Math.min(rect1[0], rect1[2]), Math.min(rect2[0], rect2[2]));\n const xHigh = Math.min(Math.max(rect1[0], rect1[2]), Math.max(rect2[0], rect2[2]));\n if (xLow > xHigh) {\n return null;\n }\n const yLow = Math.max(Math.min(rect1[1], rect1[3]), Math.min(rect2[1], rect2[3]));\n const yHigh = Math.min(Math.max(rect1[1], rect1[3]), Math.max(rect2[1], rect2[3]));\n if (yLow > yHigh) {\n return null;\n }\n return [xLow, yLow, xHigh, yHigh];\n }\n static bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3) {\n const tvalues = [],\n bounds = [[], []];\n let a, b, c, t, t1, t2, b2ac, sqrtb2ac;\n for (let i = 0; i < 2; ++i) {\n if (i === 0) {\n b = 6 * x0 - 12 * x1 + 6 * x2;\n a = -3 * x0 + 9 * x1 - 9 * x2 + 3 * x3;\n c = 3 * x1 - 3 * x0;\n } else {\n b = 6 * y0 - 12 * y1 + 6 * y2;\n a = -3 * y0 + 9 * y1 - 9 * y2 + 3 * y3;\n c = 3 * y1 - 3 * y0;\n }\n if (Math.abs(a) < 1e-12) {\n if (Math.abs(b) < 1e-12) {\n continue;\n }\n t = -c / b;\n if (0 < t && t < 1) {\n tvalues.push(t);\n }\n continue;\n }\n b2ac = b * b - 4 * c * a;\n sqrtb2ac = Math.sqrt(b2ac);\n if (b2ac < 0) {\n continue;\n }\n t1 = (-b + sqrtb2ac) / (2 * a);\n if (0 < t1 && t1 < 1) {\n tvalues.push(t1);\n }\n t2 = (-b - sqrtb2ac) / (2 * a);\n if (0 < t2 && t2 < 1) {\n tvalues.push(t2);\n }\n }\n let j = tvalues.length,\n mt;\n const jlen = j;\n while (j--) {\n t = tvalues[j];\n mt = 1 - t;\n bounds[0][j] = mt * mt * mt * x0 + 3 * mt * mt * t * x1 + 3 * mt * t * t * x2 + t * t * t * x3;\n bounds[1][j] = mt * mt * mt * y0 + 3 * mt * mt * t * y1 + 3 * mt * t * t * y2 + t * t * t * y3;\n }\n bounds[0][jlen] = x0;\n bounds[1][jlen] = y0;\n bounds[0][jlen + 1] = x3;\n bounds[1][jlen + 1] = y3;\n bounds[0].length = bounds[1].length = jlen + 2;\n return [Math.min(...bounds[0]), Math.min(...bounds[1]), Math.max(...bounds[0]), Math.max(...bounds[1])];\n }\n}\nexports.Util = Util;\nconst PDFStringTranslateTable = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2d8, 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192, 0x2044, 0x2039, 0x203a, 0x2212, 0x2030, 0x201e, 0x201c, 0x201d, 0x2018, 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 0x17d, 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac];\nfunction stringToPDFString(str) {\n if (str[0] >= \"\\xEF\") {\n let encoding;\n if (str[0] === \"\\xFE\" && str[1] === \"\\xFF\") {\n encoding = \"utf-16be\";\n } else if (str[0] === \"\\xFF\" && str[1] === \"\\xFE\") {\n encoding = \"utf-16le\";\n } else if (str[0] === \"\\xEF\" && str[1] === \"\\xBB\" && str[2] === \"\\xBF\") {\n encoding = \"utf-8\";\n }\n if (encoding) {\n try {\n const decoder = new TextDecoder(encoding, {\n fatal: true\n });\n const buffer = stringToBytes(str);\n return decoder.decode(buffer);\n } catch (ex) {\n warn(`stringToPDFString: \"${ex}\".`);\n }\n }\n }\n const strBuf = [];\n for (let i = 0, ii = str.length; i < ii; i++) {\n const code = PDFStringTranslateTable[str.charCodeAt(i)];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));\n }\n return strBuf.join(\"\");\n}\nfunction stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n}\nfunction utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n}\nfunction isArrayBuffer(v) {\n return typeof v === \"object\" && v?.byteLength !== undefined;\n}\nfunction isArrayEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n for (let i = 0, ii = arr1.length; i < ii; i++) {\n if (arr1[i] !== arr2[i]) {\n return false;\n }\n }\n return true;\n}\nfunction getModificationDate(date = new Date()) {\n const buffer = [date.getUTCFullYear().toString(), (date.getUTCMonth() + 1).toString().padStart(2, \"0\"), date.getUTCDate().toString().padStart(2, \"0\"), date.getUTCHours().toString().padStart(2, \"0\"), date.getUTCMinutes().toString().padStart(2, \"0\"), date.getUTCSeconds().toString().padStart(2, \"0\")];\n return buffer.join(\"\");\n}\nclass PromiseCapability {\n #settled = false;\n constructor() {\n this.promise = new Promise((resolve, reject) => {\n this.resolve = data => {\n this.#settled = true;\n resolve(data);\n };\n this.reject = reason => {\n this.#settled = true;\n reject(reason);\n };\n });\n }\n get settled() {\n return this.#settled;\n }\n}\nexports.PromiseCapability = PromiseCapability;\nlet NormalizeRegex = null;\nlet NormalizationMap = null;\nfunction normalizeUnicode(str) {\n if (!NormalizeRegex) {\n NormalizeRegex = /([\\u00a0\\u00b5\\u037e\\u0eb3\\u2000-\\u200a\\u202f\\u2126\\ufb00-\\ufb04\\ufb06\\ufb20-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufba1\\ufba4-\\ufba9\\ufbae-\\ufbb1\\ufbd3-\\ufbdc\\ufbde-\\ufbe7\\ufbea-\\ufbf8\\ufbfc-\\ufbfd\\ufc00-\\ufc5d\\ufc64-\\ufcf1\\ufcf5-\\ufd3d\\ufd88\\ufdf4\\ufdfa-\\ufdfb\\ufe71\\ufe77\\ufe79\\ufe7b\\ufe7d]+)|(\\ufb05+)/gu;\n NormalizationMap = new Map([[\"ſt\", \"ſt\"]]);\n }\n return str.replaceAll(NormalizeRegex, (_, p1, p2) => {\n return p1 ? p1.normalize(\"NFKC\") : NormalizationMap.get(p2);\n });\n}\nfunction getUuid() {\n if (typeof crypto !== \"undefined\" && typeof crypto?.randomUUID === \"function\") {\n return crypto.randomUUID();\n }\n const buf = new Uint8Array(32);\n if (typeof crypto !== \"undefined\" && typeof crypto?.getRandomValues === \"function\") {\n crypto.getRandomValues(buf);\n } else {\n for (let i = 0; i < 32; i++) {\n buf[i] = Math.floor(Math.random() * 255);\n }\n }\n return bytesToString(buf);\n}\nconst AnnotationPrefix = \"pdfjs_internal_id_\";\nexports.AnnotationPrefix = AnnotationPrefix;\n\n/***/ }),\n/* 2 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.RenderTask = exports.PDFWorkerUtil = exports.PDFWorker = exports.PDFPageProxy = exports.PDFDocumentProxy = exports.PDFDocumentLoadingTask = exports.PDFDataRangeTransport = exports.LoopbackPort = exports.DefaultStandardFontDataFactory = exports.DefaultFilterFactory = exports.DefaultCanvasFactory = exports.DefaultCMapReaderFactory = void 0;\nObject.defineProperty(exports, \"SVGGraphics\", ({\n enumerable: true,\n get: function () {\n return _displaySvg.SVGGraphics;\n }\n}));\nexports.build = void 0;\nexports.getDocument = getDocument;\nexports.version = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _annotation_storage = __w_pdfjs_require__(3);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _font_loader = __w_pdfjs_require__(9);\nvar _displayNode_utils = __w_pdfjs_require__(10);\nvar _canvas = __w_pdfjs_require__(11);\nvar _worker_options = __w_pdfjs_require__(14);\nvar _message_handler = __w_pdfjs_require__(15);\nvar _metadata = __w_pdfjs_require__(16);\nvar _optional_content_config = __w_pdfjs_require__(17);\nvar _transport_stream = __w_pdfjs_require__(18);\nvar _displayFetch_stream = __w_pdfjs_require__(19);\nvar _displayNetwork = __w_pdfjs_require__(22);\nvar _displayNode_stream = __w_pdfjs_require__(23);\nvar _displaySvg = __w_pdfjs_require__(24);\nvar _xfa_text = __w_pdfjs_require__(25);\nconst DEFAULT_RANGE_CHUNK_SIZE = 65536;\nconst RENDERING_CANCELLED_TIMEOUT = 100;\nconst DELAYED_CLEANUP_TIMEOUT = 5000;\nconst DefaultCanvasFactory = _util.isNodeJS ? _displayNode_utils.NodeCanvasFactory : _display_utils.DOMCanvasFactory;\nexports.DefaultCanvasFactory = DefaultCanvasFactory;\nconst DefaultCMapReaderFactory = _util.isNodeJS ? _displayNode_utils.NodeCMapReaderFactory : _display_utils.DOMCMapReaderFactory;\nexports.DefaultCMapReaderFactory = DefaultCMapReaderFactory;\nconst DefaultFilterFactory = _util.isNodeJS ? _displayNode_utils.NodeFilterFactory : _display_utils.DOMFilterFactory;\nexports.DefaultFilterFactory = DefaultFilterFactory;\nconst DefaultStandardFontDataFactory = _util.isNodeJS ? _displayNode_utils.NodeStandardFontDataFactory : _display_utils.DOMStandardFontDataFactory;\nexports.DefaultStandardFontDataFactory = DefaultStandardFontDataFactory;\nfunction getDocument(src) {\n if (typeof src === \"string\" || src instanceof URL) {\n src = {\n url: src\n };\n } else if ((0, _util.isArrayBuffer)(src)) {\n src = {\n data: src\n };\n }\n if (typeof src !== \"object\") {\n throw new Error(\"Invalid parameter in getDocument, need parameter object.\");\n }\n if (!src.url && !src.data && !src.range) {\n throw new Error(\"Invalid parameter object: need either .data, .range or .url\");\n }\n const task = new PDFDocumentLoadingTask();\n const {\n docId\n } = task;\n const url = src.url ? getUrlProp(src.url) : null;\n const data = src.data ? getDataProp(src.data) : null;\n const httpHeaders = src.httpHeaders || null;\n const withCredentials = src.withCredentials === true;\n const password = src.password ?? null;\n const rangeTransport = src.range instanceof PDFDataRangeTransport ? src.range : null;\n const rangeChunkSize = Number.isInteger(src.rangeChunkSize) && src.rangeChunkSize > 0 ? src.rangeChunkSize : DEFAULT_RANGE_CHUNK_SIZE;\n let worker = src.worker instanceof PDFWorker ? src.worker : null;\n const verbosity = src.verbosity;\n const docBaseUrl = typeof src.docBaseUrl === \"string\" && !(0, _display_utils.isDataScheme)(src.docBaseUrl) ? src.docBaseUrl : null;\n const cMapUrl = typeof src.cMapUrl === \"string\" ? src.cMapUrl : null;\n const cMapPacked = src.cMapPacked !== false;\n const CMapReaderFactory = src.CMapReaderFactory || DefaultCMapReaderFactory;\n const standardFontDataUrl = typeof src.standardFontDataUrl === \"string\" ? src.standardFontDataUrl : null;\n const StandardFontDataFactory = src.StandardFontDataFactory || DefaultStandardFontDataFactory;\n const ignoreErrors = src.stopAtErrors !== true;\n const maxImageSize = Number.isInteger(src.maxImageSize) && src.maxImageSize > -1 ? src.maxImageSize : -1;\n const isEvalSupported = src.isEvalSupported !== false;\n const isOffscreenCanvasSupported = typeof src.isOffscreenCanvasSupported === \"boolean\" ? src.isOffscreenCanvasSupported : !_util.isNodeJS;\n const canvasMaxAreaInBytes = Number.isInteger(src.canvasMaxAreaInBytes) ? src.canvasMaxAreaInBytes : -1;\n const disableFontFace = typeof src.disableFontFace === \"boolean\" ? src.disableFontFace : _util.isNodeJS;\n const fontExtraProperties = src.fontExtraProperties === true;\n const enableXfa = src.enableXfa === true;\n const ownerDocument = src.ownerDocument || globalThis.document;\n const disableRange = src.disableRange === true;\n const disableStream = src.disableStream === true;\n const disableAutoFetch = src.disableAutoFetch === true;\n const pdfBug = src.pdfBug === true;\n const length = rangeTransport ? rangeTransport.length : src.length ?? NaN;\n const useSystemFonts = typeof src.useSystemFonts === \"boolean\" ? src.useSystemFonts : !_util.isNodeJS && !disableFontFace;\n const useWorkerFetch = typeof src.useWorkerFetch === \"boolean\" ? src.useWorkerFetch : CMapReaderFactory === _display_utils.DOMCMapReaderFactory && StandardFontDataFactory === _display_utils.DOMStandardFontDataFactory && cMapUrl && standardFontDataUrl && (0, _display_utils.isValidFetchUrl)(cMapUrl, document.baseURI) && (0, _display_utils.isValidFetchUrl)(standardFontDataUrl, document.baseURI);\n const canvasFactory = src.canvasFactory || new DefaultCanvasFactory({\n ownerDocument\n });\n const filterFactory = src.filterFactory || new DefaultFilterFactory({\n docId,\n ownerDocument\n });\n const styleElement = null;\n (0, _util.setVerbosityLevel)(verbosity);\n const transportFactory = {\n canvasFactory,\n filterFactory\n };\n if (!useWorkerFetch) {\n transportFactory.cMapReaderFactory = new CMapReaderFactory({\n baseUrl: cMapUrl,\n isCompressed: cMapPacked\n });\n transportFactory.standardFontDataFactory = new StandardFontDataFactory({\n baseUrl: standardFontDataUrl\n });\n }\n if (!worker) {\n const workerParams = {\n verbosity,\n port: _worker_options.GlobalWorkerOptions.workerPort\n };\n worker = workerParams.port ? PDFWorker.fromPort(workerParams) : new PDFWorker(workerParams);\n task._worker = worker;\n }\n const fetchDocParams = {\n docId,\n apiVersion: '3.11.174',\n data,\n password,\n disableAutoFetch,\n rangeChunkSize,\n length,\n docBaseUrl,\n enableXfa,\n evaluatorOptions: {\n maxImageSize,\n disableFontFace,\n ignoreErrors,\n isEvalSupported,\n isOffscreenCanvasSupported,\n canvasMaxAreaInBytes,\n fontExtraProperties,\n useSystemFonts,\n cMapUrl: useWorkerFetch ? cMapUrl : null,\n standardFontDataUrl: useWorkerFetch ? standardFontDataUrl : null\n }\n };\n const transportParams = {\n ignoreErrors,\n isEvalSupported,\n disableFontFace,\n fontExtraProperties,\n enableXfa,\n ownerDocument,\n disableAutoFetch,\n pdfBug,\n styleElement\n };\n worker.promise.then(function () {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n const workerIdPromise = _fetchDocument(worker, fetchDocParams);\n const networkStreamPromise = new Promise(function (resolve) {\n let networkStream;\n if (rangeTransport) {\n networkStream = new _transport_stream.PDFDataTransportStream({\n length,\n initialData: rangeTransport.initialData,\n progressiveDone: rangeTransport.progressiveDone,\n contentDispositionFilename: rangeTransport.contentDispositionFilename,\n disableRange,\n disableStream\n }, rangeTransport);\n } else if (!data) {\n const createPDFNetworkStream = params => {\n if (_util.isNodeJS) {\n return new _displayNode_stream.PDFNodeStream(params);\n }\n return (0, _display_utils.isValidFetchUrl)(params.url) ? new _displayFetch_stream.PDFFetchStream(params) : new _displayNetwork.PDFNetworkStream(params);\n };\n networkStream = createPDFNetworkStream({\n url,\n length,\n httpHeaders,\n withCredentials,\n rangeChunkSize,\n disableRange,\n disableStream\n });\n }\n resolve(networkStream);\n });\n return Promise.all([workerIdPromise, networkStreamPromise]).then(function ([workerId, networkStream]) {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n const messageHandler = new _message_handler.MessageHandler(docId, workerId, worker.port);\n const transport = new WorkerTransport(messageHandler, task, networkStream, transportParams, transportFactory);\n task._transport = transport;\n messageHandler.send(\"Ready\", null);\n });\n }).catch(task._capability.reject);\n return task;\n}\nasync function _fetchDocument(worker, source) {\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n const workerId = await worker.messageHandler.sendWithPromise(\"GetDocRequest\", source, source.data ? [source.data.buffer] : null);\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n return workerId;\n}\nfunction getUrlProp(val) {\n if (val instanceof URL) {\n return val.href;\n }\n try {\n return new URL(val, window.location).href;\n } catch {\n if (_util.isNodeJS && typeof val === \"string\") {\n return val;\n }\n }\n throw new Error(\"Invalid PDF url data: \" + \"either string or URL-object is expected in the url property.\");\n}\nfunction getDataProp(val) {\n if (_util.isNodeJS && typeof Buffer !== \"undefined\" && val instanceof Buffer) {\n throw new Error(\"Please provide binary data as `Uint8Array`, rather than `Buffer`.\");\n }\n if (val instanceof Uint8Array && val.byteLength === val.buffer.byteLength) {\n return val;\n }\n if (typeof val === \"string\") {\n return (0, _util.stringToBytes)(val);\n }\n if (typeof val === \"object\" && !isNaN(val?.length) || (0, _util.isArrayBuffer)(val)) {\n return new Uint8Array(val);\n }\n throw new Error(\"Invalid PDF binary data: either TypedArray, \" + \"string, or array-like object is expected in the data property.\");\n}\nclass PDFDocumentLoadingTask {\n static #docId = 0;\n constructor() {\n this._capability = new _util.PromiseCapability();\n this._transport = null;\n this._worker = null;\n this.docId = `d${PDFDocumentLoadingTask.#docId++}`;\n this.destroyed = false;\n this.onPassword = null;\n this.onProgress = null;\n }\n get promise() {\n return this._capability.promise;\n }\n async destroy() {\n this.destroyed = true;\n try {\n if (this._worker?.port) {\n this._worker._pendingDestroy = true;\n }\n await this._transport?.destroy();\n } catch (ex) {\n if (this._worker?.port) {\n delete this._worker._pendingDestroy;\n }\n throw ex;\n }\n this._transport = null;\n if (this._worker) {\n this._worker.destroy();\n this._worker = null;\n }\n }\n}\nexports.PDFDocumentLoadingTask = PDFDocumentLoadingTask;\nclass PDFDataRangeTransport {\n constructor(length, initialData, progressiveDone = false, contentDispositionFilename = null) {\n this.length = length;\n this.initialData = initialData;\n this.progressiveDone = progressiveDone;\n this.contentDispositionFilename = contentDispositionFilename;\n this._rangeListeners = [];\n this._progressListeners = [];\n this._progressiveReadListeners = [];\n this._progressiveDoneListeners = [];\n this._readyCapability = new _util.PromiseCapability();\n }\n addRangeListener(listener) {\n this._rangeListeners.push(listener);\n }\n addProgressListener(listener) {\n this._progressListeners.push(listener);\n }\n addProgressiveReadListener(listener) {\n this._progressiveReadListeners.push(listener);\n }\n addProgressiveDoneListener(listener) {\n this._progressiveDoneListeners.push(listener);\n }\n onDataRange(begin, chunk) {\n for (const listener of this._rangeListeners) {\n listener(begin, chunk);\n }\n }\n onDataProgress(loaded, total) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressListeners) {\n listener(loaded, total);\n }\n });\n }\n onDataProgressiveRead(chunk) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveReadListeners) {\n listener(chunk);\n }\n });\n }\n onDataProgressiveDone() {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveDoneListeners) {\n listener();\n }\n });\n }\n transportReady() {\n this._readyCapability.resolve();\n }\n requestDataRange(begin, end) {\n (0, _util.unreachable)(\"Abstract method PDFDataRangeTransport.requestDataRange\");\n }\n abort() {}\n}\nexports.PDFDataRangeTransport = PDFDataRangeTransport;\nclass PDFDocumentProxy {\n constructor(pdfInfo, transport) {\n this._pdfInfo = pdfInfo;\n this._transport = transport;\n Object.defineProperty(this, \"getJavaScript\", {\n value: () => {\n (0, _display_utils.deprecated)(\"`PDFDocumentProxy.getJavaScript`, \" + \"please use `PDFDocumentProxy.getJSActions` instead.\");\n return this.getJSActions().then(js => {\n if (!js) {\n return js;\n }\n const jsArr = [];\n for (const name in js) {\n jsArr.push(...js[name]);\n }\n return jsArr;\n });\n }\n });\n }\n get annotationStorage() {\n return this._transport.annotationStorage;\n }\n get filterFactory() {\n return this._transport.filterFactory;\n }\n get numPages() {\n return this._pdfInfo.numPages;\n }\n get fingerprints() {\n return this._pdfInfo.fingerprints;\n }\n get isPureXfa() {\n return (0, _util.shadow)(this, \"isPureXfa\", !!this._transport._htmlForXfa);\n }\n get allXfaHtml() {\n return this._transport._htmlForXfa;\n }\n getPage(pageNumber) {\n return this._transport.getPage(pageNumber);\n }\n getPageIndex(ref) {\n return this._transport.getPageIndex(ref);\n }\n getDestinations() {\n return this._transport.getDestinations();\n }\n getDestination(id) {\n return this._transport.getDestination(id);\n }\n getPageLabels() {\n return this._transport.getPageLabels();\n }\n getPageLayout() {\n return this._transport.getPageLayout();\n }\n getPageMode() {\n return this._transport.getPageMode();\n }\n getViewerPreferences() {\n return this._transport.getViewerPreferences();\n }\n getOpenAction() {\n return this._transport.getOpenAction();\n }\n getAttachments() {\n return this._transport.getAttachments();\n }\n getJSActions() {\n return this._transport.getDocJSActions();\n }\n getOutline() {\n return this._transport.getOutline();\n }\n getOptionalContentConfig() {\n return this._transport.getOptionalContentConfig();\n }\n getPermissions() {\n return this._transport.getPermissions();\n }\n getMetadata() {\n return this._transport.getMetadata();\n }\n getMarkInfo() {\n return this._transport.getMarkInfo();\n }\n getData() {\n return this._transport.getData();\n }\n saveDocument() {\n return this._transport.saveDocument();\n }\n getDownloadInfo() {\n return this._transport.downloadInfoCapability.promise;\n }\n cleanup(keepLoadedFonts = false) {\n return this._transport.startCleanup(keepLoadedFonts || this.isPureXfa);\n }\n destroy() {\n return this.loadingTask.destroy();\n }\n get loadingParams() {\n return this._transport.loadingParams;\n }\n get loadingTask() {\n return this._transport.loadingTask;\n }\n getFieldObjects() {\n return this._transport.getFieldObjects();\n }\n hasJSActions() {\n return this._transport.hasJSActions();\n }\n getCalculationOrderIds() {\n return this._transport.getCalculationOrderIds();\n }\n}\nexports.PDFDocumentProxy = PDFDocumentProxy;\nclass PDFPageProxy {\n #delayedCleanupTimeout = null;\n #pendingCleanup = false;\n constructor(pageIndex, pageInfo, transport, pdfBug = false) {\n this._pageIndex = pageIndex;\n this._pageInfo = pageInfo;\n this._transport = transport;\n this._stats = pdfBug ? new _display_utils.StatTimer() : null;\n this._pdfBug = pdfBug;\n this.commonObjs = transport.commonObjs;\n this.objs = new PDFObjects();\n this._maybeCleanupAfterRender = false;\n this._intentStates = new Map();\n this.destroyed = false;\n }\n get pageNumber() {\n return this._pageIndex + 1;\n }\n get rotate() {\n return this._pageInfo.rotate;\n }\n get ref() {\n return this._pageInfo.ref;\n }\n get userUnit() {\n return this._pageInfo.userUnit;\n }\n get view() {\n return this._pageInfo.view;\n }\n getViewport({\n scale,\n rotation = this.rotate,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false\n } = {}) {\n return new _display_utils.PageViewport({\n viewBox: this.view,\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip\n });\n }\n getAnnotations({\n intent = \"display\"\n } = {}) {\n const intentArgs = this._transport.getRenderingIntent(intent);\n return this._transport.getAnnotations(this._pageIndex, intentArgs.renderingIntent);\n }\n getJSActions() {\n return this._transport.getPageJSActions(this._pageIndex);\n }\n get filterFactory() {\n return this._transport.filterFactory;\n }\n get isPureXfa() {\n return (0, _util.shadow)(this, \"isPureXfa\", !!this._transport._htmlForXfa);\n }\n async getXfa() {\n return this._transport._htmlForXfa?.children[this._pageIndex] || null;\n }\n render({\n canvasContext,\n viewport,\n intent = \"display\",\n annotationMode = _util.AnnotationMode.ENABLE,\n transform = null,\n background = null,\n optionalContentConfigPromise = null,\n annotationCanvasMap = null,\n pageColors = null,\n printAnnotationStorage = null\n }) {\n this._stats?.time(\"Overall\");\n const intentArgs = this._transport.getRenderingIntent(intent, annotationMode, printAnnotationStorage);\n this.#pendingCleanup = false;\n this.#abortDelayedCleanup();\n if (!optionalContentConfigPromise) {\n optionalContentConfigPromise = this._transport.getOptionalContentConfig();\n }\n let intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n const intentPrint = !!(intentArgs.renderingIntent & _util.RenderingIntentFlag.PRINT);\n if (!intentState.displayReadyCapability) {\n intentState.displayReadyCapability = new _util.PromiseCapability();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n separateAnnots: null\n };\n this._stats?.time(\"Page Request\");\n this._pumpOperatorList(intentArgs);\n }\n const complete = error => {\n intentState.renderTasks.delete(internalRenderTask);\n if (this._maybeCleanupAfterRender || intentPrint) {\n this.#pendingCleanup = true;\n }\n this.#tryCleanup(!intentPrint);\n if (error) {\n internalRenderTask.capability.reject(error);\n this._abortOperatorList({\n intentState,\n reason: error instanceof Error ? error : new Error(error)\n });\n } else {\n internalRenderTask.capability.resolve();\n }\n this._stats?.timeEnd(\"Rendering\");\n this._stats?.timeEnd(\"Overall\");\n };\n const internalRenderTask = new InternalRenderTask({\n callback: complete,\n params: {\n canvasContext,\n viewport,\n transform,\n background\n },\n objs: this.objs,\n commonObjs: this.commonObjs,\n annotationCanvasMap,\n operatorList: intentState.operatorList,\n pageIndex: this._pageIndex,\n canvasFactory: this._transport.canvasFactory,\n filterFactory: this._transport.filterFactory,\n useRequestAnimationFrame: !intentPrint,\n pdfBug: this._pdfBug,\n pageColors\n });\n (intentState.renderTasks ||= new Set()).add(internalRenderTask);\n const renderTask = internalRenderTask.task;\n Promise.all([intentState.displayReadyCapability.promise, optionalContentConfigPromise]).then(([transparency, optionalContentConfig]) => {\n if (this.destroyed) {\n complete();\n return;\n }\n this._stats?.time(\"Rendering\");\n internalRenderTask.initializeGraphics({\n transparency,\n optionalContentConfig\n });\n internalRenderTask.operatorListChanged();\n }).catch(complete);\n return renderTask;\n }\n getOperatorList({\n intent = \"display\",\n annotationMode = _util.AnnotationMode.ENABLE,\n printAnnotationStorage = null\n } = {}) {\n function operatorListChanged() {\n if (intentState.operatorList.lastChunk) {\n intentState.opListReadCapability.resolve(intentState.operatorList);\n intentState.renderTasks.delete(opListTask);\n }\n }\n const intentArgs = this._transport.getRenderingIntent(intent, annotationMode, printAnnotationStorage, true);\n let intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n let opListTask;\n if (!intentState.opListReadCapability) {\n opListTask = Object.create(null);\n opListTask.operatorListChanged = operatorListChanged;\n intentState.opListReadCapability = new _util.PromiseCapability();\n (intentState.renderTasks ||= new Set()).add(opListTask);\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n separateAnnots: null\n };\n this._stats?.time(\"Page Request\");\n this._pumpOperatorList(intentArgs);\n }\n return intentState.opListReadCapability.promise;\n }\n streamTextContent({\n includeMarkedContent = false,\n disableNormalization = false\n } = {}) {\n const TEXT_CONTENT_CHUNK_SIZE = 100;\n return this._transport.messageHandler.sendWithStream(\"GetTextContent\", {\n pageIndex: this._pageIndex,\n includeMarkedContent: includeMarkedContent === true,\n disableNormalization: disableNormalization === true\n }, {\n highWaterMark: TEXT_CONTENT_CHUNK_SIZE,\n size(textContent) {\n return textContent.items.length;\n }\n });\n }\n getTextContent(params = {}) {\n if (this._transport._htmlForXfa) {\n return this.getXfa().then(xfa => {\n return _xfa_text.XfaText.textContent(xfa);\n });\n }\n const readableStream = this.streamTextContent(params);\n return new Promise(function (resolve, reject) {\n function pump() {\n reader.read().then(function ({\n value,\n done\n }) {\n if (done) {\n resolve(textContent);\n return;\n }\n Object.assign(textContent.styles, value.styles);\n textContent.items.push(...value.items);\n pump();\n }, reject);\n }\n const reader = readableStream.getReader();\n const textContent = {\n items: [],\n styles: Object.create(null)\n };\n pump();\n });\n }\n getStructTree() {\n return this._transport.getStructTree(this._pageIndex);\n }\n _destroy() {\n this.destroyed = true;\n const waitOn = [];\n for (const intentState of this._intentStates.values()) {\n this._abortOperatorList({\n intentState,\n reason: new Error(\"Page was destroyed.\"),\n force: true\n });\n if (intentState.opListReadCapability) {\n continue;\n }\n for (const internalRenderTask of intentState.renderTasks) {\n waitOn.push(internalRenderTask.completed);\n internalRenderTask.cancel();\n }\n }\n this.objs.clear();\n this.#pendingCleanup = false;\n this.#abortDelayedCleanup();\n return Promise.all(waitOn);\n }\n cleanup(resetStats = false) {\n this.#pendingCleanup = true;\n const success = this.#tryCleanup(false);\n if (resetStats && success) {\n this._stats &&= new _display_utils.StatTimer();\n }\n return success;\n }\n #tryCleanup(delayed = false) {\n this.#abortDelayedCleanup();\n if (!this.#pendingCleanup || this.destroyed) {\n return false;\n }\n if (delayed) {\n this.#delayedCleanupTimeout = setTimeout(() => {\n this.#delayedCleanupTimeout = null;\n this.#tryCleanup(false);\n }, DELAYED_CLEANUP_TIMEOUT);\n return false;\n }\n for (const {\n renderTasks,\n operatorList\n } of this._intentStates.values()) {\n if (renderTasks.size > 0 || !operatorList.lastChunk) {\n return false;\n }\n }\n this._intentStates.clear();\n this.objs.clear();\n this.#pendingCleanup = false;\n return true;\n }\n #abortDelayedCleanup() {\n if (this.#delayedCleanupTimeout) {\n clearTimeout(this.#delayedCleanupTimeout);\n this.#delayedCleanupTimeout = null;\n }\n }\n _startRenderPage(transparency, cacheKey) {\n const intentState = this._intentStates.get(cacheKey);\n if (!intentState) {\n return;\n }\n this._stats?.timeEnd(\"Page Request\");\n intentState.displayReadyCapability?.resolve(transparency);\n }\n _renderPageChunk(operatorListChunk, intentState) {\n for (let i = 0, ii = operatorListChunk.length; i < ii; i++) {\n intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);\n intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);\n }\n intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n intentState.operatorList.separateAnnots = operatorListChunk.separateAnnots;\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n if (operatorListChunk.lastChunk) {\n this.#tryCleanup(true);\n }\n }\n _pumpOperatorList({\n renderingIntent,\n cacheKey,\n annotationStorageSerializable\n }) {\n const {\n map,\n transfers\n } = annotationStorageSerializable;\n const readableStream = this._transport.messageHandler.sendWithStream(\"GetOperatorList\", {\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n cacheKey,\n annotationStorage: map\n }, transfers);\n const reader = readableStream.getReader();\n const intentState = this._intentStates.get(cacheKey);\n intentState.streamReader = reader;\n const pump = () => {\n reader.read().then(({\n value,\n done\n }) => {\n if (done) {\n intentState.streamReader = null;\n return;\n }\n if (this._transport.destroyed) {\n return;\n }\n this._renderPageChunk(value, intentState);\n pump();\n }, reason => {\n intentState.streamReader = null;\n if (this._transport.destroyed) {\n return;\n }\n if (intentState.operatorList) {\n intentState.operatorList.lastChunk = true;\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n this.#tryCleanup(true);\n }\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.reject(reason);\n } else if (intentState.opListReadCapability) {\n intentState.opListReadCapability.reject(reason);\n } else {\n throw reason;\n }\n });\n };\n pump();\n }\n _abortOperatorList({\n intentState,\n reason,\n force = false\n }) {\n if (!intentState.streamReader) {\n return;\n }\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n if (!force) {\n if (intentState.renderTasks.size > 0) {\n return;\n }\n if (reason instanceof _display_utils.RenderingCancelledException) {\n let delay = RENDERING_CANCELLED_TIMEOUT;\n if (reason.extraDelay > 0 && reason.extraDelay < 1000) {\n delay += reason.extraDelay;\n }\n intentState.streamReaderCancelTimeout = setTimeout(() => {\n intentState.streamReaderCancelTimeout = null;\n this._abortOperatorList({\n intentState,\n reason,\n force: true\n });\n }, delay);\n return;\n }\n }\n intentState.streamReader.cancel(new _util.AbortException(reason.message)).catch(() => {});\n intentState.streamReader = null;\n if (this._transport.destroyed) {\n return;\n }\n for (const [curCacheKey, curIntentState] of this._intentStates) {\n if (curIntentState === intentState) {\n this._intentStates.delete(curCacheKey);\n break;\n }\n }\n this.cleanup();\n }\n get stats() {\n return this._stats;\n }\n}\nexports.PDFPageProxy = PDFPageProxy;\nclass LoopbackPort {\n #listeners = new Set();\n #deferred = Promise.resolve();\n postMessage(obj, transfer) {\n const event = {\n data: structuredClone(obj, transfer ? {\n transfer\n } : null)\n };\n this.#deferred.then(() => {\n for (const listener of this.#listeners) {\n listener.call(this, event);\n }\n });\n }\n addEventListener(name, listener) {\n this.#listeners.add(listener);\n }\n removeEventListener(name, listener) {\n this.#listeners.delete(listener);\n }\n terminate() {\n this.#listeners.clear();\n }\n}\nexports.LoopbackPort = LoopbackPort;\nconst PDFWorkerUtil = {\n isWorkerDisabled: false,\n fallbackWorkerSrc: null,\n fakeWorkerId: 0\n};\nexports.PDFWorkerUtil = PDFWorkerUtil;\n{\n if (_util.isNodeJS && typeof require === \"function\") {\n PDFWorkerUtil.isWorkerDisabled = true;\n PDFWorkerUtil.fallbackWorkerSrc = \"./pdf.worker.js\";\n } else if (typeof document === \"object\") {\n const pdfjsFilePath = document?.currentScript?.src;\n if (pdfjsFilePath) {\n PDFWorkerUtil.fallbackWorkerSrc = pdfjsFilePath.replace(/(\\.(?:min\\.)?js)(\\?.*)?$/i, \".worker$1$2\");\n }\n }\n PDFWorkerUtil.isSameOrigin = function (baseUrl, otherUrl) {\n let base;\n try {\n base = new URL(baseUrl);\n if (!base.origin || base.origin === \"null\") {\n return false;\n }\n } catch {\n return false;\n }\n const other = new URL(otherUrl, base);\n return base.origin === other.origin;\n };\n PDFWorkerUtil.createCDNWrapper = function (url) {\n const wrapper = `importScripts(\"${url}\");`;\n return URL.createObjectURL(new Blob([wrapper]));\n };\n}\nclass PDFWorker {\n static #workerPorts;\n constructor({\n name = null,\n port = null,\n verbosity = (0, _util.getVerbosityLevel)()\n } = {}) {\n this.name = name;\n this.destroyed = false;\n this.verbosity = verbosity;\n this._readyCapability = new _util.PromiseCapability();\n this._port = null;\n this._webWorker = null;\n this._messageHandler = null;\n if (port) {\n if (PDFWorker.#workerPorts?.has(port)) {\n throw new Error(\"Cannot use more than one PDFWorker per port.\");\n }\n (PDFWorker.#workerPorts ||= new WeakMap()).set(port, this);\n this._initializeFromPort(port);\n return;\n }\n this._initialize();\n }\n get promise() {\n return this._readyCapability.promise;\n }\n get port() {\n return this._port;\n }\n get messageHandler() {\n return this._messageHandler;\n }\n _initializeFromPort(port) {\n this._port = port;\n this._messageHandler = new _message_handler.MessageHandler(\"main\", \"worker\", port);\n this._messageHandler.on(\"ready\", function () {});\n this._readyCapability.resolve();\n this._messageHandler.send(\"configure\", {\n verbosity: this.verbosity\n });\n }\n _initialize() {\n if (!PDFWorkerUtil.isWorkerDisabled && !PDFWorker._mainThreadWorkerMessageHandler) {\n let {\n workerSrc\n } = PDFWorker;\n try {\n if (!PDFWorkerUtil.isSameOrigin(window.location.href, workerSrc)) {\n workerSrc = PDFWorkerUtil.createCDNWrapper(new URL(workerSrc, window.location).href);\n }\n const worker = new Worker(workerSrc);\n const messageHandler = new _message_handler.MessageHandler(\"main\", \"worker\", worker);\n const terminateEarly = () => {\n worker.removeEventListener(\"error\", onWorkerError);\n messageHandler.destroy();\n worker.terminate();\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n } else {\n this._setupFakeWorker();\n }\n };\n const onWorkerError = () => {\n if (!this._webWorker) {\n terminateEarly();\n }\n };\n worker.addEventListener(\"error\", onWorkerError);\n messageHandler.on(\"test\", data => {\n worker.removeEventListener(\"error\", onWorkerError);\n if (this.destroyed) {\n terminateEarly();\n return;\n }\n if (data) {\n this._messageHandler = messageHandler;\n this._port = worker;\n this._webWorker = worker;\n this._readyCapability.resolve();\n messageHandler.send(\"configure\", {\n verbosity: this.verbosity\n });\n } else {\n this._setupFakeWorker();\n messageHandler.destroy();\n worker.terminate();\n }\n });\n messageHandler.on(\"ready\", data => {\n worker.removeEventListener(\"error\", onWorkerError);\n if (this.destroyed) {\n terminateEarly();\n return;\n }\n try {\n sendTest();\n } catch {\n this._setupFakeWorker();\n }\n });\n const sendTest = () => {\n const testObj = new Uint8Array();\n messageHandler.send(\"test\", testObj, [testObj.buffer]);\n };\n sendTest();\n return;\n } catch {\n (0, _util.info)(\"The worker has been disabled.\");\n }\n }\n this._setupFakeWorker();\n }\n _setupFakeWorker() {\n if (!PDFWorkerUtil.isWorkerDisabled) {\n (0, _util.warn)(\"Setting up fake worker.\");\n PDFWorkerUtil.isWorkerDisabled = true;\n }\n PDFWorker._setupFakeWorkerGlobal.then(WorkerMessageHandler => {\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n return;\n }\n const port = new LoopbackPort();\n this._port = port;\n const id = `fake${PDFWorkerUtil.fakeWorkerId++}`;\n const workerHandler = new _message_handler.MessageHandler(id + \"_worker\", id, port);\n WorkerMessageHandler.setup(workerHandler, port);\n const messageHandler = new _message_handler.MessageHandler(id, id + \"_worker\", port);\n this._messageHandler = messageHandler;\n this._readyCapability.resolve();\n messageHandler.send(\"configure\", {\n verbosity: this.verbosity\n });\n }).catch(reason => {\n this._readyCapability.reject(new Error(`Setting up fake worker failed: \"${reason.message}\".`));\n });\n }\n destroy() {\n this.destroyed = true;\n if (this._webWorker) {\n this._webWorker.terminate();\n this._webWorker = null;\n }\n PDFWorker.#workerPorts?.delete(this._port);\n this._port = null;\n if (this._messageHandler) {\n this._messageHandler.destroy();\n this._messageHandler = null;\n }\n }\n static fromPort(params) {\n if (!params?.port) {\n throw new Error(\"PDFWorker.fromPort - invalid method signature.\");\n }\n const cachedPort = this.#workerPorts?.get(params.port);\n if (cachedPort) {\n if (cachedPort._pendingDestroy) {\n throw new Error(\"PDFWorker.fromPort - the worker is being destroyed.\\n\" + \"Please remember to await `PDFDocumentLoadingTask.destroy()`-calls.\");\n }\n return cachedPort;\n }\n return new PDFWorker(params);\n }\n static get workerSrc() {\n if (_worker_options.GlobalWorkerOptions.workerSrc) {\n return _worker_options.GlobalWorkerOptions.workerSrc;\n }\n if (PDFWorkerUtil.fallbackWorkerSrc !== null) {\n if (!_util.isNodeJS) {\n (0, _display_utils.deprecated)('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n return PDFWorkerUtil.fallbackWorkerSrc;\n }\n throw new Error('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n static get _mainThreadWorkerMessageHandler() {\n try {\n return globalThis.pdfjsWorker?.WorkerMessageHandler || null;\n } catch {\n return null;\n }\n }\n static get _setupFakeWorkerGlobal() {\n const loader = async () => {\n const mainWorkerMessageHandler = this._mainThreadWorkerMessageHandler;\n if (mainWorkerMessageHandler) {\n return mainWorkerMessageHandler;\n }\n if (_util.isNodeJS && typeof require === \"function\") {\n const worker = eval(\"require\")(this.workerSrc);\n return worker.WorkerMessageHandler;\n }\n await (0, _display_utils.loadScript)(this.workerSrc);\n return window.pdfjsWorker.WorkerMessageHandler;\n };\n return (0, _util.shadow)(this, \"_setupFakeWorkerGlobal\", loader());\n }\n}\nexports.PDFWorker = PDFWorker;\nclass WorkerTransport {\n #methodPromises = new Map();\n #pageCache = new Map();\n #pagePromises = new Map();\n #passwordCapability = null;\n constructor(messageHandler, loadingTask, networkStream, params, factory) {\n this.messageHandler = messageHandler;\n this.loadingTask = loadingTask;\n this.commonObjs = new PDFObjects();\n this.fontLoader = new _font_loader.FontLoader({\n ownerDocument: params.ownerDocument,\n styleElement: params.styleElement\n });\n this._params = params;\n this.canvasFactory = factory.canvasFactory;\n this.filterFactory = factory.filterFactory;\n this.cMapReaderFactory = factory.cMapReaderFactory;\n this.standardFontDataFactory = factory.standardFontDataFactory;\n this.destroyed = false;\n this.destroyCapability = null;\n this._networkStream = networkStream;\n this._fullReader = null;\n this._lastProgress = null;\n this.downloadInfoCapability = new _util.PromiseCapability();\n this.setupMessageHandler();\n }\n #cacheSimpleMethod(name, data = null) {\n const cachedPromise = this.#methodPromises.get(name);\n if (cachedPromise) {\n return cachedPromise;\n }\n const promise = this.messageHandler.sendWithPromise(name, data);\n this.#methodPromises.set(name, promise);\n return promise;\n }\n get annotationStorage() {\n return (0, _util.shadow)(this, \"annotationStorage\", new _annotation_storage.AnnotationStorage());\n }\n getRenderingIntent(intent, annotationMode = _util.AnnotationMode.ENABLE, printAnnotationStorage = null, isOpList = false) {\n let renderingIntent = _util.RenderingIntentFlag.DISPLAY;\n let annotationStorageSerializable = _annotation_storage.SerializableEmpty;\n switch (intent) {\n case \"any\":\n renderingIntent = _util.RenderingIntentFlag.ANY;\n break;\n case \"display\":\n break;\n case \"print\":\n renderingIntent = _util.RenderingIntentFlag.PRINT;\n break;\n default:\n (0, _util.warn)(`getRenderingIntent - invalid intent: ${intent}`);\n }\n switch (annotationMode) {\n case _util.AnnotationMode.DISABLE:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_DISABLE;\n break;\n case _util.AnnotationMode.ENABLE:\n break;\n case _util.AnnotationMode.ENABLE_FORMS:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_FORMS;\n break;\n case _util.AnnotationMode.ENABLE_STORAGE:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_STORAGE;\n const annotationStorage = renderingIntent & _util.RenderingIntentFlag.PRINT && printAnnotationStorage instanceof _annotation_storage.PrintAnnotationStorage ? printAnnotationStorage : this.annotationStorage;\n annotationStorageSerializable = annotationStorage.serializable;\n break;\n default:\n (0, _util.warn)(`getRenderingIntent - invalid annotationMode: ${annotationMode}`);\n }\n if (isOpList) {\n renderingIntent += _util.RenderingIntentFlag.OPLIST;\n }\n return {\n renderingIntent,\n cacheKey: `${renderingIntent}_${annotationStorageSerializable.hash}`,\n annotationStorageSerializable\n };\n }\n destroy() {\n if (this.destroyCapability) {\n return this.destroyCapability.promise;\n }\n this.destroyed = true;\n this.destroyCapability = new _util.PromiseCapability();\n this.#passwordCapability?.reject(new Error(\"Worker was destroyed during onPassword callback\"));\n const waitOn = [];\n for (const page of this.#pageCache.values()) {\n waitOn.push(page._destroy());\n }\n this.#pageCache.clear();\n this.#pagePromises.clear();\n if (this.hasOwnProperty(\"annotationStorage\")) {\n this.annotationStorage.resetModified();\n }\n const terminated = this.messageHandler.sendWithPromise(\"Terminate\", null);\n waitOn.push(terminated);\n Promise.all(waitOn).then(() => {\n this.commonObjs.clear();\n this.fontLoader.clear();\n this.#methodPromises.clear();\n this.filterFactory.destroy();\n this._networkStream?.cancelAllRequests(new _util.AbortException(\"Worker was terminated.\"));\n if (this.messageHandler) {\n this.messageHandler.destroy();\n this.messageHandler = null;\n }\n this.destroyCapability.resolve();\n }, this.destroyCapability.reject);\n return this.destroyCapability.promise;\n }\n setupMessageHandler() {\n const {\n messageHandler,\n loadingTask\n } = this;\n messageHandler.on(\"GetReader\", (data, sink) => {\n (0, _util.assert)(this._networkStream, \"GetReader - no `IPDFStream` instance available.\");\n this._fullReader = this._networkStream.getFullReader();\n this._fullReader.onProgress = evt => {\n this._lastProgress = {\n loaded: evt.loaded,\n total: evt.total\n };\n };\n sink.onPull = () => {\n this._fullReader.read().then(function ({\n value,\n done\n }) {\n if (done) {\n sink.close();\n return;\n }\n (0, _util.assert)(value instanceof ArrayBuffer, \"GetReader - expected an ArrayBuffer.\");\n sink.enqueue(new Uint8Array(value), 1, [value]);\n }).catch(reason => {\n sink.error(reason);\n });\n };\n sink.onCancel = reason => {\n this._fullReader.cancel(reason);\n sink.ready.catch(readyReason => {\n if (this.destroyed) {\n return;\n }\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"ReaderHeadersReady\", data => {\n const headersCapability = new _util.PromiseCapability();\n const fullReader = this._fullReader;\n fullReader.headersReady.then(() => {\n if (!fullReader.isStreamingSupported || !fullReader.isRangeSupported) {\n if (this._lastProgress) {\n loadingTask.onProgress?.(this._lastProgress);\n }\n fullReader.onProgress = evt => {\n loadingTask.onProgress?.({\n loaded: evt.loaded,\n total: evt.total\n });\n };\n }\n headersCapability.resolve({\n isStreamingSupported: fullReader.isStreamingSupported,\n isRangeSupported: fullReader.isRangeSupported,\n contentLength: fullReader.contentLength\n });\n }, headersCapability.reject);\n return headersCapability.promise;\n });\n messageHandler.on(\"GetRangeReader\", (data, sink) => {\n (0, _util.assert)(this._networkStream, \"GetRangeReader - no `IPDFStream` instance available.\");\n const rangeReader = this._networkStream.getRangeReader(data.begin, data.end);\n if (!rangeReader) {\n sink.close();\n return;\n }\n sink.onPull = () => {\n rangeReader.read().then(function ({\n value,\n done\n }) {\n if (done) {\n sink.close();\n return;\n }\n (0, _util.assert)(value instanceof ArrayBuffer, \"GetRangeReader - expected an ArrayBuffer.\");\n sink.enqueue(new Uint8Array(value), 1, [value]);\n }).catch(reason => {\n sink.error(reason);\n });\n };\n sink.onCancel = reason => {\n rangeReader.cancel(reason);\n sink.ready.catch(readyReason => {\n if (this.destroyed) {\n return;\n }\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"GetDoc\", ({\n pdfInfo\n }) => {\n this._numPages = pdfInfo.numPages;\n this._htmlForXfa = pdfInfo.htmlForXfa;\n delete pdfInfo.htmlForXfa;\n loadingTask._capability.resolve(new PDFDocumentProxy(pdfInfo, this));\n });\n messageHandler.on(\"DocException\", function (ex) {\n let reason;\n switch (ex.name) {\n case \"PasswordException\":\n reason = new _util.PasswordException(ex.message, ex.code);\n break;\n case \"InvalidPDFException\":\n reason = new _util.InvalidPDFException(ex.message);\n break;\n case \"MissingPDFException\":\n reason = new _util.MissingPDFException(ex.message);\n break;\n case \"UnexpectedResponseException\":\n reason = new _util.UnexpectedResponseException(ex.message, ex.status);\n break;\n case \"UnknownErrorException\":\n reason = new _util.UnknownErrorException(ex.message, ex.details);\n break;\n default:\n (0, _util.unreachable)(\"DocException - expected a valid Error.\");\n }\n loadingTask._capability.reject(reason);\n });\n messageHandler.on(\"PasswordRequest\", exception => {\n this.#passwordCapability = new _util.PromiseCapability();\n if (loadingTask.onPassword) {\n const updatePassword = password => {\n if (password instanceof Error) {\n this.#passwordCapability.reject(password);\n } else {\n this.#passwordCapability.resolve({\n password\n });\n }\n };\n try {\n loadingTask.onPassword(updatePassword, exception.code);\n } catch (ex) {\n this.#passwordCapability.reject(ex);\n }\n } else {\n this.#passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));\n }\n return this.#passwordCapability.promise;\n });\n messageHandler.on(\"DataLoaded\", data => {\n loadingTask.onProgress?.({\n loaded: data.length,\n total: data.length\n });\n this.downloadInfoCapability.resolve(data);\n });\n messageHandler.on(\"StartRenderPage\", data => {\n if (this.destroyed) {\n return;\n }\n const page = this.#pageCache.get(data.pageIndex);\n page._startRenderPage(data.transparency, data.cacheKey);\n });\n messageHandler.on(\"commonobj\", ([id, type, exportedData]) => {\n if (this.destroyed) {\n return;\n }\n if (this.commonObjs.has(id)) {\n return;\n }\n switch (type) {\n case \"Font\":\n const params = this._params;\n if (\"error\" in exportedData) {\n const exportedError = exportedData.error;\n (0, _util.warn)(`Error during font loading: ${exportedError}`);\n this.commonObjs.resolve(id, exportedError);\n break;\n }\n const inspectFont = params.pdfBug && globalThis.FontInspector?.enabled ? (font, url) => globalThis.FontInspector.fontAdded(font, url) : null;\n const font = new _font_loader.FontFaceObject(exportedData, {\n isEvalSupported: params.isEvalSupported,\n disableFontFace: params.disableFontFace,\n ignoreErrors: params.ignoreErrors,\n inspectFont\n });\n this.fontLoader.bind(font).catch(reason => {\n return messageHandler.sendWithPromise(\"FontFallback\", {\n id\n });\n }).finally(() => {\n if (!params.fontExtraProperties && font.data) {\n font.data = null;\n }\n this.commonObjs.resolve(id, font);\n });\n break;\n case \"FontPath\":\n case \"Image\":\n case \"Pattern\":\n this.commonObjs.resolve(id, exportedData);\n break;\n default:\n throw new Error(`Got unknown common object type ${type}`);\n }\n });\n messageHandler.on(\"obj\", ([id, pageIndex, type, imageData]) => {\n if (this.destroyed) {\n return;\n }\n const pageProxy = this.#pageCache.get(pageIndex);\n if (pageProxy.objs.has(id)) {\n return;\n }\n switch (type) {\n case \"Image\":\n pageProxy.objs.resolve(id, imageData);\n if (imageData) {\n let length;\n if (imageData.bitmap) {\n const {\n width,\n height\n } = imageData;\n length = width * height * 4;\n } else {\n length = imageData.data?.length || 0;\n }\n if (length > _util.MAX_IMAGE_SIZE_TO_CACHE) {\n pageProxy._maybeCleanupAfterRender = true;\n }\n }\n break;\n case \"Pattern\":\n pageProxy.objs.resolve(id, imageData);\n break;\n default:\n throw new Error(`Got unknown object type ${type}`);\n }\n });\n messageHandler.on(\"DocProgress\", data => {\n if (this.destroyed) {\n return;\n }\n loadingTask.onProgress?.({\n loaded: data.loaded,\n total: data.total\n });\n });\n messageHandler.on(\"FetchBuiltInCMap\", data => {\n if (this.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n if (!this.cMapReaderFactory) {\n return Promise.reject(new Error(\"CMapReaderFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n return this.cMapReaderFactory.fetch(data);\n });\n messageHandler.on(\"FetchStandardFontData\", data => {\n if (this.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n if (!this.standardFontDataFactory) {\n return Promise.reject(new Error(\"StandardFontDataFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n return this.standardFontDataFactory.fetch(data);\n });\n }\n getData() {\n return this.messageHandler.sendWithPromise(\"GetData\", null);\n }\n saveDocument() {\n if (this.annotationStorage.size <= 0) {\n (0, _util.warn)(\"saveDocument called while `annotationStorage` is empty, \" + \"please use the getData-method instead.\");\n }\n const {\n map,\n transfers\n } = this.annotationStorage.serializable;\n return this.messageHandler.sendWithPromise(\"SaveDocument\", {\n isPureXfa: !!this._htmlForXfa,\n numPages: this._numPages,\n annotationStorage: map,\n filename: this._fullReader?.filename ?? null\n }, transfers).finally(() => {\n this.annotationStorage.resetModified();\n });\n }\n getPage(pageNumber) {\n if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this._numPages) {\n return Promise.reject(new Error(\"Invalid page request.\"));\n }\n const pageIndex = pageNumber - 1,\n cachedPromise = this.#pagePromises.get(pageIndex);\n if (cachedPromise) {\n return cachedPromise;\n }\n const promise = this.messageHandler.sendWithPromise(\"GetPage\", {\n pageIndex\n }).then(pageInfo => {\n if (this.destroyed) {\n throw new Error(\"Transport destroyed\");\n }\n const page = new PDFPageProxy(pageIndex, pageInfo, this, this._params.pdfBug);\n this.#pageCache.set(pageIndex, page);\n return page;\n });\n this.#pagePromises.set(pageIndex, promise);\n return promise;\n }\n getPageIndex(ref) {\n if (typeof ref !== \"object\" || ref === null || !Number.isInteger(ref.num) || ref.num < 0 || !Number.isInteger(ref.gen) || ref.gen < 0) {\n return Promise.reject(new Error(\"Invalid pageIndex request.\"));\n }\n return this.messageHandler.sendWithPromise(\"GetPageIndex\", {\n num: ref.num,\n gen: ref.gen\n });\n }\n getAnnotations(pageIndex, intent) {\n return this.messageHandler.sendWithPromise(\"GetAnnotations\", {\n pageIndex,\n intent\n });\n }\n getFieldObjects() {\n return this.#cacheSimpleMethod(\"GetFieldObjects\");\n }\n hasJSActions() {\n return this.#cacheSimpleMethod(\"HasJSActions\");\n }\n getCalculationOrderIds() {\n return this.messageHandler.sendWithPromise(\"GetCalculationOrderIds\", null);\n }\n getDestinations() {\n return this.messageHandler.sendWithPromise(\"GetDestinations\", null);\n }\n getDestination(id) {\n if (typeof id !== \"string\") {\n return Promise.reject(new Error(\"Invalid destination request.\"));\n }\n return this.messageHandler.sendWithPromise(\"GetDestination\", {\n id\n });\n }\n getPageLabels() {\n return this.messageHandler.sendWithPromise(\"GetPageLabels\", null);\n }\n getPageLayout() {\n return this.messageHandler.sendWithPromise(\"GetPageLayout\", null);\n }\n getPageMode() {\n return this.messageHandler.sendWithPromise(\"GetPageMode\", null);\n }\n getViewerPreferences() {\n return this.messageHandler.sendWithPromise(\"GetViewerPreferences\", null);\n }\n getOpenAction() {\n return this.messageHandler.sendWithPromise(\"GetOpenAction\", null);\n }\n getAttachments() {\n return this.messageHandler.sendWithPromise(\"GetAttachments\", null);\n }\n getDocJSActions() {\n return this.#cacheSimpleMethod(\"GetDocJSActions\");\n }\n getPageJSActions(pageIndex) {\n return this.messageHandler.sendWithPromise(\"GetPageJSActions\", {\n pageIndex\n });\n }\n getStructTree(pageIndex) {\n return this.messageHandler.sendWithPromise(\"GetStructTree\", {\n pageIndex\n });\n }\n getOutline() {\n return this.messageHandler.sendWithPromise(\"GetOutline\", null);\n }\n getOptionalContentConfig() {\n return this.messageHandler.sendWithPromise(\"GetOptionalContentConfig\", null).then(results => {\n return new _optional_content_config.OptionalContentConfig(results);\n });\n }\n getPermissions() {\n return this.messageHandler.sendWithPromise(\"GetPermissions\", null);\n }\n getMetadata() {\n const name = \"GetMetadata\",\n cachedPromise = this.#methodPromises.get(name);\n if (cachedPromise) {\n return cachedPromise;\n }\n const promise = this.messageHandler.sendWithPromise(name, null).then(results => {\n return {\n info: results[0],\n metadata: results[1] ? new _metadata.Metadata(results[1]) : null,\n contentDispositionFilename: this._fullReader?.filename ?? null,\n contentLength: this._fullReader?.contentLength ?? null\n };\n });\n this.#methodPromises.set(name, promise);\n return promise;\n }\n getMarkInfo() {\n return this.messageHandler.sendWithPromise(\"GetMarkInfo\", null);\n }\n async startCleanup(keepLoadedFonts = false) {\n if (this.destroyed) {\n return;\n }\n await this.messageHandler.sendWithPromise(\"Cleanup\", null);\n for (const page of this.#pageCache.values()) {\n const cleanupSuccessful = page.cleanup();\n if (!cleanupSuccessful) {\n throw new Error(`startCleanup: Page ${page.pageNumber} is currently rendering.`);\n }\n }\n this.commonObjs.clear();\n if (!keepLoadedFonts) {\n this.fontLoader.clear();\n }\n this.#methodPromises.clear();\n this.filterFactory.destroy(true);\n }\n get loadingParams() {\n const {\n disableAutoFetch,\n enableXfa\n } = this._params;\n return (0, _util.shadow)(this, \"loadingParams\", {\n disableAutoFetch,\n enableXfa\n });\n }\n}\nclass PDFObjects {\n #objs = Object.create(null);\n #ensureObj(objId) {\n return this.#objs[objId] ||= {\n capability: new _util.PromiseCapability(),\n data: null\n };\n }\n get(objId, callback = null) {\n if (callback) {\n const obj = this.#ensureObj(objId);\n obj.capability.promise.then(() => callback(obj.data));\n return null;\n }\n const obj = this.#objs[objId];\n if (!obj?.capability.settled) {\n throw new Error(`Requesting object that isn't resolved yet ${objId}.`);\n }\n return obj.data;\n }\n has(objId) {\n const obj = this.#objs[objId];\n return obj?.capability.settled || false;\n }\n resolve(objId, data = null) {\n const obj = this.#ensureObj(objId);\n obj.data = data;\n obj.capability.resolve();\n }\n clear() {\n for (const objId in this.#objs) {\n const {\n data\n } = this.#objs[objId];\n data?.bitmap?.close();\n }\n this.#objs = Object.create(null);\n }\n}\nclass RenderTask {\n #internalRenderTask = null;\n constructor(internalRenderTask) {\n this.#internalRenderTask = internalRenderTask;\n this.onContinue = null;\n }\n get promise() {\n return this.#internalRenderTask.capability.promise;\n }\n cancel(extraDelay = 0) {\n this.#internalRenderTask.cancel(null, extraDelay);\n }\n get separateAnnots() {\n const {\n separateAnnots\n } = this.#internalRenderTask.operatorList;\n if (!separateAnnots) {\n return false;\n }\n const {\n annotationCanvasMap\n } = this.#internalRenderTask;\n return separateAnnots.form || separateAnnots.canvas && annotationCanvasMap?.size > 0;\n }\n}\nexports.RenderTask = RenderTask;\nclass InternalRenderTask {\n static #canvasInUse = new WeakSet();\n constructor({\n callback,\n params,\n objs,\n commonObjs,\n annotationCanvasMap,\n operatorList,\n pageIndex,\n canvasFactory,\n filterFactory,\n useRequestAnimationFrame = false,\n pdfBug = false,\n pageColors = null\n }) {\n this.callback = callback;\n this.params = params;\n this.objs = objs;\n this.commonObjs = commonObjs;\n this.annotationCanvasMap = annotationCanvasMap;\n this.operatorListIdx = null;\n this.operatorList = operatorList;\n this._pageIndex = pageIndex;\n this.canvasFactory = canvasFactory;\n this.filterFactory = filterFactory;\n this._pdfBug = pdfBug;\n this.pageColors = pageColors;\n this.running = false;\n this.graphicsReadyCallback = null;\n this.graphicsReady = false;\n this._useRequestAnimationFrame = useRequestAnimationFrame === true && typeof window !== \"undefined\";\n this.cancelled = false;\n this.capability = new _util.PromiseCapability();\n this.task = new RenderTask(this);\n this._cancelBound = this.cancel.bind(this);\n this._continueBound = this._continue.bind(this);\n this._scheduleNextBound = this._scheduleNext.bind(this);\n this._nextBound = this._next.bind(this);\n this._canvas = params.canvasContext.canvas;\n }\n get completed() {\n return this.capability.promise.catch(function () {});\n }\n initializeGraphics({\n transparency = false,\n optionalContentConfig\n }) {\n if (this.cancelled) {\n return;\n }\n if (this._canvas) {\n if (InternalRenderTask.#canvasInUse.has(this._canvas)) {\n throw new Error(\"Cannot use the same canvas during multiple render() operations. \" + \"Use different canvas or ensure previous operations were \" + \"cancelled or completed.\");\n }\n InternalRenderTask.#canvasInUse.add(this._canvas);\n }\n if (this._pdfBug && globalThis.StepperManager?.enabled) {\n this.stepper = globalThis.StepperManager.create(this._pageIndex);\n this.stepper.init(this.operatorList);\n this.stepper.nextBreakPoint = this.stepper.getNextBreakPoint();\n }\n const {\n canvasContext,\n viewport,\n transform,\n background\n } = this.params;\n this.gfx = new _canvas.CanvasGraphics(canvasContext, this.commonObjs, this.objs, this.canvasFactory, this.filterFactory, {\n optionalContentConfig\n }, this.annotationCanvasMap, this.pageColors);\n this.gfx.beginDrawing({\n transform,\n viewport,\n transparency,\n background\n });\n this.operatorListIdx = 0;\n this.graphicsReady = true;\n this.graphicsReadyCallback?.();\n }\n cancel(error = null, extraDelay = 0) {\n this.running = false;\n this.cancelled = true;\n this.gfx?.endDrawing();\n InternalRenderTask.#canvasInUse.delete(this._canvas);\n this.callback(error || new _display_utils.RenderingCancelledException(`Rendering cancelled, page ${this._pageIndex + 1}`, extraDelay));\n }\n operatorListChanged() {\n if (!this.graphicsReady) {\n this.graphicsReadyCallback ||= this._continueBound;\n return;\n }\n this.stepper?.updateOperatorList(this.operatorList);\n if (this.running) {\n return;\n }\n this._continue();\n }\n _continue() {\n this.running = true;\n if (this.cancelled) {\n return;\n }\n if (this.task.onContinue) {\n this.task.onContinue(this._scheduleNextBound);\n } else {\n this._scheduleNext();\n }\n }\n _scheduleNext() {\n if (this._useRequestAnimationFrame) {\n window.requestAnimationFrame(() => {\n this._nextBound().catch(this._cancelBound);\n });\n } else {\n Promise.resolve().then(this._nextBound).catch(this._cancelBound);\n }\n }\n async _next() {\n if (this.cancelled) {\n return;\n }\n this.operatorListIdx = this.gfx.executeOperatorList(this.operatorList, this.operatorListIdx, this._continueBound, this.stepper);\n if (this.operatorListIdx === this.operatorList.argsArray.length) {\n this.running = false;\n if (this.operatorList.lastChunk) {\n this.gfx.endDrawing();\n InternalRenderTask.#canvasInUse.delete(this._canvas);\n this.callback();\n }\n }\n }\n}\nconst version = '3.11.174';\nexports.version = version;\nconst build = 'ce8716743';\nexports.build = build;\n\n/***/ }),\n/* 3 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SerializableEmpty = exports.PrintAnnotationStorage = exports.AnnotationStorage = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _editor = __w_pdfjs_require__(4);\nvar _murmurhash = __w_pdfjs_require__(8);\nconst SerializableEmpty = Object.freeze({\n map: null,\n hash: \"\",\n transfers: undefined\n});\nexports.SerializableEmpty = SerializableEmpty;\nclass AnnotationStorage {\n #modified = false;\n #storage = new Map();\n constructor() {\n this.onSetModified = null;\n this.onResetModified = null;\n this.onAnnotationEditor = null;\n }\n getValue(key, defaultValue) {\n const value = this.#storage.get(key);\n if (value === undefined) {\n return defaultValue;\n }\n return Object.assign(defaultValue, value);\n }\n getRawValue(key) {\n return this.#storage.get(key);\n }\n remove(key) {\n this.#storage.delete(key);\n if (this.#storage.size === 0) {\n this.resetModified();\n }\n if (typeof this.onAnnotationEditor === \"function\") {\n for (const value of this.#storage.values()) {\n if (value instanceof _editor.AnnotationEditor) {\n return;\n }\n }\n this.onAnnotationEditor(null);\n }\n }\n setValue(key, value) {\n const obj = this.#storage.get(key);\n let modified = false;\n if (obj !== undefined) {\n for (const [entry, val] of Object.entries(value)) {\n if (obj[entry] !== val) {\n modified = true;\n obj[entry] = val;\n }\n }\n } else {\n modified = true;\n this.#storage.set(key, value);\n }\n if (modified) {\n this.#setModified();\n }\n if (value instanceof _editor.AnnotationEditor && typeof this.onAnnotationEditor === \"function\") {\n this.onAnnotationEditor(value.constructor._type);\n }\n }\n has(key) {\n return this.#storage.has(key);\n }\n getAll() {\n return this.#storage.size > 0 ? (0, _util.objectFromMap)(this.#storage) : null;\n }\n setAll(obj) {\n for (const [key, val] of Object.entries(obj)) {\n this.setValue(key, val);\n }\n }\n get size() {\n return this.#storage.size;\n }\n #setModified() {\n if (!this.#modified) {\n this.#modified = true;\n if (typeof this.onSetModified === \"function\") {\n this.onSetModified();\n }\n }\n }\n resetModified() {\n if (this.#modified) {\n this.#modified = false;\n if (typeof this.onResetModified === \"function\") {\n this.onResetModified();\n }\n }\n }\n get print() {\n return new PrintAnnotationStorage(this);\n }\n get serializable() {\n if (this.#storage.size === 0) {\n return SerializableEmpty;\n }\n const map = new Map(),\n hash = new _murmurhash.MurmurHash3_64(),\n transfers = [];\n const context = Object.create(null);\n let hasBitmap = false;\n for (const [key, val] of this.#storage) {\n const serialized = val instanceof _editor.AnnotationEditor ? val.serialize(false, context) : val;\n if (serialized) {\n map.set(key, serialized);\n hash.update(`${key}:${JSON.stringify(serialized)}`);\n hasBitmap ||= !!serialized.bitmap;\n }\n }\n if (hasBitmap) {\n for (const value of map.values()) {\n if (value.bitmap) {\n transfers.push(value.bitmap);\n }\n }\n }\n return map.size > 0 ? {\n map,\n hash: hash.hexdigest(),\n transfers\n } : SerializableEmpty;\n }\n}\nexports.AnnotationStorage = AnnotationStorage;\nclass PrintAnnotationStorage extends AnnotationStorage {\n #serializable;\n constructor(parent) {\n super();\n const {\n map,\n hash,\n transfers\n } = parent.serializable;\n const clone = structuredClone(map, transfers ? {\n transfer: transfers\n } : null);\n this.#serializable = {\n map: clone,\n hash,\n transfers\n };\n }\n get print() {\n (0, _util.unreachable)(\"Should not call PrintAnnotationStorage.print\");\n }\n get serializable() {\n return this.#serializable;\n }\n}\nexports.PrintAnnotationStorage = PrintAnnotationStorage;\n\n/***/ }),\n/* 4 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.AnnotationEditor = void 0;\nvar _tools = __w_pdfjs_require__(5);\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nclass AnnotationEditor {\n #altText = \"\";\n #altTextDecorative = false;\n #altTextButton = null;\n #altTextTooltip = null;\n #altTextTooltipTimeout = null;\n #keepAspectRatio = false;\n #resizersDiv = null;\n #boundFocusin = this.focusin.bind(this);\n #boundFocusout = this.focusout.bind(this);\n #hasBeenClicked = false;\n #isEditing = false;\n #isInEditMode = false;\n _initialOptions = Object.create(null);\n _uiManager = null;\n _focusEventsAllowed = true;\n _l10nPromise = null;\n #isDraggable = false;\n #zIndex = AnnotationEditor._zIndex++;\n static _borderLineWidth = -1;\n static _colorManager = new _tools.ColorManager();\n static _zIndex = 1;\n static SMALL_EDITOR_SIZE = 0;\n constructor(parameters) {\n if (this.constructor === AnnotationEditor) {\n (0, _util.unreachable)(\"Cannot initialize AnnotationEditor.\");\n }\n this.parent = parameters.parent;\n this.id = parameters.id;\n this.width = this.height = null;\n this.pageIndex = parameters.parent.pageIndex;\n this.name = parameters.name;\n this.div = null;\n this._uiManager = parameters.uiManager;\n this.annotationElementId = null;\n this._willKeepAspectRatio = false;\n this._initialOptions.isCentered = parameters.isCentered;\n this._structTreeParentId = null;\n const {\n rotation,\n rawDims: {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n }\n } = this.parent.viewport;\n this.rotation = rotation;\n this.pageRotation = (360 + rotation - this._uiManager.viewParameters.rotation) % 360;\n this.pageDimensions = [pageWidth, pageHeight];\n this.pageTranslation = [pageX, pageY];\n const [width, height] = this.parentDimensions;\n this.x = parameters.x / width;\n this.y = parameters.y / height;\n this.isAttachedToDOM = false;\n this.deleted = false;\n }\n get editorType() {\n return Object.getPrototypeOf(this).constructor._type;\n }\n static get _defaultLineColor() {\n return (0, _util.shadow)(this, \"_defaultLineColor\", this._colorManager.getHexCode(\"CanvasText\"));\n }\n static deleteAnnotationElement(editor) {\n const fakeEditor = new FakeEditor({\n id: editor.parent.getNextId(),\n parent: editor.parent,\n uiManager: editor._uiManager\n });\n fakeEditor.annotationElementId = editor.annotationElementId;\n fakeEditor.deleted = true;\n fakeEditor._uiManager.addToAnnotationStorage(fakeEditor);\n }\n static initialize(l10n, options = null) {\n AnnotationEditor._l10nPromise ||= new Map([\"editor_alt_text_button_label\", \"editor_alt_text_edit_button_label\", \"editor_alt_text_decorative_tooltip\"].map(str => [str, l10n.get(str)]));\n if (options?.strings) {\n for (const str of options.strings) {\n AnnotationEditor._l10nPromise.set(str, l10n.get(str));\n }\n }\n if (AnnotationEditor._borderLineWidth !== -1) {\n return;\n }\n const style = getComputedStyle(document.documentElement);\n AnnotationEditor._borderLineWidth = parseFloat(style.getPropertyValue(\"--outline-width\")) || 0;\n }\n static updateDefaultParams(_type, _value) {}\n static get defaultPropertiesToUpdate() {\n return [];\n }\n static isHandlingMimeForPasting(mime) {\n return false;\n }\n static paste(item, parent) {\n (0, _util.unreachable)(\"Not implemented\");\n }\n get propertiesToUpdate() {\n return [];\n }\n get _isDraggable() {\n return this.#isDraggable;\n }\n set _isDraggable(value) {\n this.#isDraggable = value;\n this.div?.classList.toggle(\"draggable\", value);\n }\n center() {\n const [pageWidth, pageHeight] = this.pageDimensions;\n switch (this.parentRotation) {\n case 90:\n this.x -= this.height * pageHeight / (pageWidth * 2);\n this.y += this.width * pageWidth / (pageHeight * 2);\n break;\n case 180:\n this.x += this.width / 2;\n this.y += this.height / 2;\n break;\n case 270:\n this.x += this.height * pageHeight / (pageWidth * 2);\n this.y -= this.width * pageWidth / (pageHeight * 2);\n break;\n default:\n this.x -= this.width / 2;\n this.y -= this.height / 2;\n break;\n }\n this.fixAndSetPosition();\n }\n addCommands(params) {\n this._uiManager.addCommands(params);\n }\n get currentLayer() {\n return this._uiManager.currentLayer;\n }\n setInBackground() {\n this.div.style.zIndex = 0;\n }\n setInForeground() {\n this.div.style.zIndex = this.#zIndex;\n }\n setParent(parent) {\n if (parent !== null) {\n this.pageIndex = parent.pageIndex;\n this.pageDimensions = parent.pageDimensions;\n }\n this.parent = parent;\n }\n focusin(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n if (!this.#hasBeenClicked) {\n this.parent.setSelected(this);\n } else {\n this.#hasBeenClicked = false;\n }\n }\n focusout(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n if (!this.isAttachedToDOM) {\n return;\n }\n const target = event.relatedTarget;\n if (target?.closest(`#${this.id}`)) {\n return;\n }\n event.preventDefault();\n if (!this.parent?.isMultipleSelection) {\n this.commitOrRemove();\n }\n }\n commitOrRemove() {\n if (this.isEmpty()) {\n this.remove();\n } else {\n this.commit();\n }\n }\n commit() {\n this.addToAnnotationStorage();\n }\n addToAnnotationStorage() {\n this._uiManager.addToAnnotationStorage(this);\n }\n setAt(x, y, tx, ty) {\n const [width, height] = this.parentDimensions;\n [tx, ty] = this.screenToPageTranslation(tx, ty);\n this.x = (x + tx) / width;\n this.y = (y + ty) / height;\n this.fixAndSetPosition();\n }\n #translate([width, height], x, y) {\n [x, y] = this.screenToPageTranslation(x, y);\n this.x += x / width;\n this.y += y / height;\n this.fixAndSetPosition();\n }\n translate(x, y) {\n this.#translate(this.parentDimensions, x, y);\n }\n translateInPage(x, y) {\n this.#translate(this.pageDimensions, x, y);\n this.div.scrollIntoView({\n block: \"nearest\"\n });\n }\n drag(tx, ty) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.x += tx / parentWidth;\n this.y += ty / parentHeight;\n if (this.parent && (this.x < 0 || this.x > 1 || this.y < 0 || this.y > 1)) {\n const {\n x,\n y\n } = this.div.getBoundingClientRect();\n if (this.parent.findNewParent(this, x, y)) {\n this.x -= Math.floor(this.x);\n this.y -= Math.floor(this.y);\n }\n }\n let {\n x,\n y\n } = this;\n const [bx, by] = this.#getBaseTranslation();\n x += bx;\n y += by;\n this.div.style.left = `${(100 * x).toFixed(2)}%`;\n this.div.style.top = `${(100 * y).toFixed(2)}%`;\n this.div.scrollIntoView({\n block: \"nearest\"\n });\n }\n #getBaseTranslation() {\n const [parentWidth, parentHeight] = this.parentDimensions;\n const {\n _borderLineWidth\n } = AnnotationEditor;\n const x = _borderLineWidth / parentWidth;\n const y = _borderLineWidth / parentHeight;\n switch (this.rotation) {\n case 90:\n return [-x, y];\n case 180:\n return [x, y];\n case 270:\n return [x, -y];\n default:\n return [-x, -y];\n }\n }\n fixAndSetPosition() {\n const [pageWidth, pageHeight] = this.pageDimensions;\n let {\n x,\n y,\n width,\n height\n } = this;\n width *= pageWidth;\n height *= pageHeight;\n x *= pageWidth;\n y *= pageHeight;\n switch (this.rotation) {\n case 0:\n x = Math.max(0, Math.min(pageWidth - width, x));\n y = Math.max(0, Math.min(pageHeight - height, y));\n break;\n case 90:\n x = Math.max(0, Math.min(pageWidth - height, x));\n y = Math.min(pageHeight, Math.max(width, y));\n break;\n case 180:\n x = Math.min(pageWidth, Math.max(width, x));\n y = Math.min(pageHeight, Math.max(height, y));\n break;\n case 270:\n x = Math.min(pageWidth, Math.max(height, x));\n y = Math.max(0, Math.min(pageHeight - width, y));\n break;\n }\n this.x = x /= pageWidth;\n this.y = y /= pageHeight;\n const [bx, by] = this.#getBaseTranslation();\n x += bx;\n y += by;\n const {\n style\n } = this.div;\n style.left = `${(100 * x).toFixed(2)}%`;\n style.top = `${(100 * y).toFixed(2)}%`;\n this.moveInDOM();\n }\n static #rotatePoint(x, y, angle) {\n switch (angle) {\n case 90:\n return [y, -x];\n case 180:\n return [-x, -y];\n case 270:\n return [-y, x];\n default:\n return [x, y];\n }\n }\n screenToPageTranslation(x, y) {\n return AnnotationEditor.#rotatePoint(x, y, this.parentRotation);\n }\n pageTranslationToScreen(x, y) {\n return AnnotationEditor.#rotatePoint(x, y, 360 - this.parentRotation);\n }\n #getRotationMatrix(rotation) {\n switch (rotation) {\n case 90:\n {\n const [pageWidth, pageHeight] = this.pageDimensions;\n return [0, -pageWidth / pageHeight, pageHeight / pageWidth, 0];\n }\n case 180:\n return [-1, 0, 0, -1];\n case 270:\n {\n const [pageWidth, pageHeight] = this.pageDimensions;\n return [0, pageWidth / pageHeight, -pageHeight / pageWidth, 0];\n }\n default:\n return [1, 0, 0, 1];\n }\n }\n get parentScale() {\n return this._uiManager.viewParameters.realScale;\n }\n get parentRotation() {\n return (this._uiManager.viewParameters.rotation + this.pageRotation) % 360;\n }\n get parentDimensions() {\n const {\n parentScale,\n pageDimensions: [pageWidth, pageHeight]\n } = this;\n const scaledWidth = pageWidth * parentScale;\n const scaledHeight = pageHeight * parentScale;\n return _util.FeatureTest.isCSSRoundSupported ? [Math.round(scaledWidth), Math.round(scaledHeight)] : [scaledWidth, scaledHeight];\n }\n setDims(width, height) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.div.style.width = `${(100 * width / parentWidth).toFixed(2)}%`;\n if (!this.#keepAspectRatio) {\n this.div.style.height = `${(100 * height / parentHeight).toFixed(2)}%`;\n }\n this.#altTextButton?.classList.toggle(\"small\", width < AnnotationEditor.SMALL_EDITOR_SIZE || height < AnnotationEditor.SMALL_EDITOR_SIZE);\n }\n fixDims() {\n const {\n style\n } = this.div;\n const {\n height,\n width\n } = style;\n const widthPercent = width.endsWith(\"%\");\n const heightPercent = !this.#keepAspectRatio && height.endsWith(\"%\");\n if (widthPercent && heightPercent) {\n return;\n }\n const [parentWidth, parentHeight] = this.parentDimensions;\n if (!widthPercent) {\n style.width = `${(100 * parseFloat(width) / parentWidth).toFixed(2)}%`;\n }\n if (!this.#keepAspectRatio && !heightPercent) {\n style.height = `${(100 * parseFloat(height) / parentHeight).toFixed(2)}%`;\n }\n }\n getInitialTranslation() {\n return [0, 0];\n }\n #createResizers() {\n if (this.#resizersDiv) {\n return;\n }\n this.#resizersDiv = document.createElement(\"div\");\n this.#resizersDiv.classList.add(\"resizers\");\n const classes = [\"topLeft\", \"topRight\", \"bottomRight\", \"bottomLeft\"];\n if (!this._willKeepAspectRatio) {\n classes.push(\"topMiddle\", \"middleRight\", \"bottomMiddle\", \"middleLeft\");\n }\n for (const name of classes) {\n const div = document.createElement(\"div\");\n this.#resizersDiv.append(div);\n div.classList.add(\"resizer\", name);\n div.addEventListener(\"pointerdown\", this.#resizerPointerdown.bind(this, name));\n div.addEventListener(\"contextmenu\", _display_utils.noContextMenu);\n }\n this.div.prepend(this.#resizersDiv);\n }\n #resizerPointerdown(name, event) {\n event.preventDefault();\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n const boundResizerPointermove = this.#resizerPointermove.bind(this, name);\n const savedDraggable = this._isDraggable;\n this._isDraggable = false;\n const pointerMoveOptions = {\n passive: true,\n capture: true\n };\n window.addEventListener(\"pointermove\", boundResizerPointermove, pointerMoveOptions);\n const savedX = this.x;\n const savedY = this.y;\n const savedWidth = this.width;\n const savedHeight = this.height;\n const savedParentCursor = this.parent.div.style.cursor;\n const savedCursor = this.div.style.cursor;\n this.div.style.cursor = this.parent.div.style.cursor = window.getComputedStyle(event.target).cursor;\n const pointerUpCallback = () => {\n this._isDraggable = savedDraggable;\n window.removeEventListener(\"pointerup\", pointerUpCallback);\n window.removeEventListener(\"blur\", pointerUpCallback);\n window.removeEventListener(\"pointermove\", boundResizerPointermove, pointerMoveOptions);\n this.parent.div.style.cursor = savedParentCursor;\n this.div.style.cursor = savedCursor;\n const newX = this.x;\n const newY = this.y;\n const newWidth = this.width;\n const newHeight = this.height;\n if (newX === savedX && newY === savedY && newWidth === savedWidth && newHeight === savedHeight) {\n return;\n }\n this.addCommands({\n cmd: () => {\n this.width = newWidth;\n this.height = newHeight;\n this.x = newX;\n this.y = newY;\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(parentWidth * newWidth, parentHeight * newHeight);\n this.fixAndSetPosition();\n },\n undo: () => {\n this.width = savedWidth;\n this.height = savedHeight;\n this.x = savedX;\n this.y = savedY;\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(parentWidth * savedWidth, parentHeight * savedHeight);\n this.fixAndSetPosition();\n },\n mustExec: true\n });\n };\n window.addEventListener(\"pointerup\", pointerUpCallback);\n window.addEventListener(\"blur\", pointerUpCallback);\n }\n #resizerPointermove(name, event) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n const savedX = this.x;\n const savedY = this.y;\n const savedWidth = this.width;\n const savedHeight = this.height;\n const minWidth = AnnotationEditor.MIN_SIZE / parentWidth;\n const minHeight = AnnotationEditor.MIN_SIZE / parentHeight;\n const round = x => Math.round(x * 10000) / 10000;\n const rotationMatrix = this.#getRotationMatrix(this.rotation);\n const transf = (x, y) => [rotationMatrix[0] * x + rotationMatrix[2] * y, rotationMatrix[1] * x + rotationMatrix[3] * y];\n const invRotationMatrix = this.#getRotationMatrix(360 - this.rotation);\n const invTransf = (x, y) => [invRotationMatrix[0] * x + invRotationMatrix[2] * y, invRotationMatrix[1] * x + invRotationMatrix[3] * y];\n let getPoint;\n let getOpposite;\n let isDiagonal = false;\n let isHorizontal = false;\n switch (name) {\n case \"topLeft\":\n isDiagonal = true;\n getPoint = (w, h) => [0, 0];\n getOpposite = (w, h) => [w, h];\n break;\n case \"topMiddle\":\n getPoint = (w, h) => [w / 2, 0];\n getOpposite = (w, h) => [w / 2, h];\n break;\n case \"topRight\":\n isDiagonal = true;\n getPoint = (w, h) => [w, 0];\n getOpposite = (w, h) => [0, h];\n break;\n case \"middleRight\":\n isHorizontal = true;\n getPoint = (w, h) => [w, h / 2];\n getOpposite = (w, h) => [0, h / 2];\n break;\n case \"bottomRight\":\n isDiagonal = true;\n getPoint = (w, h) => [w, h];\n getOpposite = (w, h) => [0, 0];\n break;\n case \"bottomMiddle\":\n getPoint = (w, h) => [w / 2, h];\n getOpposite = (w, h) => [w / 2, 0];\n break;\n case \"bottomLeft\":\n isDiagonal = true;\n getPoint = (w, h) => [0, h];\n getOpposite = (w, h) => [w, 0];\n break;\n case \"middleLeft\":\n isHorizontal = true;\n getPoint = (w, h) => [0, h / 2];\n getOpposite = (w, h) => [w, h / 2];\n break;\n }\n const point = getPoint(savedWidth, savedHeight);\n const oppositePoint = getOpposite(savedWidth, savedHeight);\n let transfOppositePoint = transf(...oppositePoint);\n const oppositeX = round(savedX + transfOppositePoint[0]);\n const oppositeY = round(savedY + transfOppositePoint[1]);\n let ratioX = 1;\n let ratioY = 1;\n let [deltaX, deltaY] = this.screenToPageTranslation(event.movementX, event.movementY);\n [deltaX, deltaY] = invTransf(deltaX / parentWidth, deltaY / parentHeight);\n if (isDiagonal) {\n const oldDiag = Math.hypot(savedWidth, savedHeight);\n ratioX = ratioY = Math.max(Math.min(Math.hypot(oppositePoint[0] - point[0] - deltaX, oppositePoint[1] - point[1] - deltaY) / oldDiag, 1 / savedWidth, 1 / savedHeight), minWidth / savedWidth, minHeight / savedHeight);\n } else if (isHorizontal) {\n ratioX = Math.max(minWidth, Math.min(1, Math.abs(oppositePoint[0] - point[0] - deltaX))) / savedWidth;\n } else {\n ratioY = Math.max(minHeight, Math.min(1, Math.abs(oppositePoint[1] - point[1] - deltaY))) / savedHeight;\n }\n const newWidth = round(savedWidth * ratioX);\n const newHeight = round(savedHeight * ratioY);\n transfOppositePoint = transf(...getOpposite(newWidth, newHeight));\n const newX = oppositeX - transfOppositePoint[0];\n const newY = oppositeY - transfOppositePoint[1];\n this.width = newWidth;\n this.height = newHeight;\n this.x = newX;\n this.y = newY;\n this.setDims(parentWidth * newWidth, parentHeight * newHeight);\n this.fixAndSetPosition();\n }\n async addAltTextButton() {\n if (this.#altTextButton) {\n return;\n }\n const altText = this.#altTextButton = document.createElement(\"button\");\n altText.className = \"altText\";\n const msg = await AnnotationEditor._l10nPromise.get(\"editor_alt_text_button_label\");\n altText.textContent = msg;\n altText.setAttribute(\"aria-label\", msg);\n altText.tabIndex = \"0\";\n altText.addEventListener(\"contextmenu\", _display_utils.noContextMenu);\n altText.addEventListener(\"pointerdown\", event => event.stopPropagation());\n altText.addEventListener(\"click\", event => {\n event.preventDefault();\n this._uiManager.editAltText(this);\n }, {\n capture: true\n });\n altText.addEventListener(\"keydown\", event => {\n if (event.target === altText && event.key === \"Enter\") {\n event.preventDefault();\n this._uiManager.editAltText(this);\n }\n });\n this.#setAltTextButtonState();\n this.div.append(altText);\n if (!AnnotationEditor.SMALL_EDITOR_SIZE) {\n const PERCENT = 40;\n AnnotationEditor.SMALL_EDITOR_SIZE = Math.min(128, Math.round(altText.getBoundingClientRect().width * (1 + PERCENT / 100)));\n }\n }\n async #setAltTextButtonState() {\n const button = this.#altTextButton;\n if (!button) {\n return;\n }\n if (!this.#altText && !this.#altTextDecorative) {\n button.classList.remove(\"done\");\n this.#altTextTooltip?.remove();\n return;\n }\n AnnotationEditor._l10nPromise.get(\"editor_alt_text_edit_button_label\").then(msg => {\n button.setAttribute(\"aria-label\", msg);\n });\n let tooltip = this.#altTextTooltip;\n if (!tooltip) {\n this.#altTextTooltip = tooltip = document.createElement(\"span\");\n tooltip.className = \"tooltip\";\n tooltip.setAttribute(\"role\", \"tooltip\");\n const id = tooltip.id = `alt-text-tooltip-${this.id}`;\n button.setAttribute(\"aria-describedby\", id);\n const DELAY_TO_SHOW_TOOLTIP = 100;\n button.addEventListener(\"mouseenter\", () => {\n this.#altTextTooltipTimeout = setTimeout(() => {\n this.#altTextTooltipTimeout = null;\n this.#altTextTooltip.classList.add(\"show\");\n this._uiManager._eventBus.dispatch(\"reporttelemetry\", {\n source: this,\n details: {\n type: \"editing\",\n subtype: this.editorType,\n data: {\n action: \"alt_text_tooltip\"\n }\n }\n });\n }, DELAY_TO_SHOW_TOOLTIP);\n });\n button.addEventListener(\"mouseleave\", () => {\n clearTimeout(this.#altTextTooltipTimeout);\n this.#altTextTooltipTimeout = null;\n this.#altTextTooltip?.classList.remove(\"show\");\n });\n }\n button.classList.add(\"done\");\n tooltip.innerText = this.#altTextDecorative ? await AnnotationEditor._l10nPromise.get(\"editor_alt_text_decorative_tooltip\") : this.#altText;\n if (!tooltip.parentNode) {\n button.append(tooltip);\n }\n }\n getClientDimensions() {\n return this.div.getBoundingClientRect();\n }\n get altTextData() {\n return {\n altText: this.#altText,\n decorative: this.#altTextDecorative\n };\n }\n set altTextData({\n altText,\n decorative\n }) {\n if (this.#altText === altText && this.#altTextDecorative === decorative) {\n return;\n }\n this.#altText = altText;\n this.#altTextDecorative = decorative;\n this.#setAltTextButtonState();\n }\n render() {\n this.div = document.createElement(\"div\");\n this.div.setAttribute(\"data-editor-rotation\", (360 - this.rotation) % 360);\n this.div.className = this.name;\n this.div.setAttribute(\"id\", this.id);\n this.div.setAttribute(\"tabIndex\", 0);\n this.setInForeground();\n this.div.addEventListener(\"focusin\", this.#boundFocusin);\n this.div.addEventListener(\"focusout\", this.#boundFocusout);\n const [parentWidth, parentHeight] = this.parentDimensions;\n if (this.parentRotation % 180 !== 0) {\n this.div.style.maxWidth = `${(100 * parentHeight / parentWidth).toFixed(2)}%`;\n this.div.style.maxHeight = `${(100 * parentWidth / parentHeight).toFixed(2)}%`;\n }\n const [tx, ty] = this.getInitialTranslation();\n this.translate(tx, ty);\n (0, _tools.bindEvents)(this, this.div, [\"pointerdown\"]);\n return this.div;\n }\n pointerdown(event) {\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n event.preventDefault();\n return;\n }\n this.#hasBeenClicked = true;\n this.#setUpDragSession(event);\n }\n #setUpDragSession(event) {\n if (!this._isDraggable) {\n return;\n }\n const isSelected = this._uiManager.isSelected(this);\n this._uiManager.setUpDragSession();\n let pointerMoveOptions, pointerMoveCallback;\n if (isSelected) {\n pointerMoveOptions = {\n passive: true,\n capture: true\n };\n pointerMoveCallback = e => {\n const [tx, ty] = this.screenToPageTranslation(e.movementX, e.movementY);\n this._uiManager.dragSelectedEditors(tx, ty);\n };\n window.addEventListener(\"pointermove\", pointerMoveCallback, pointerMoveOptions);\n }\n const pointerUpCallback = () => {\n window.removeEventListener(\"pointerup\", pointerUpCallback);\n window.removeEventListener(\"blur\", pointerUpCallback);\n if (isSelected) {\n window.removeEventListener(\"pointermove\", pointerMoveCallback, pointerMoveOptions);\n }\n this.#hasBeenClicked = false;\n if (!this._uiManager.endDragSession()) {\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.ctrlKey && !isMac || event.shiftKey || event.metaKey && isMac) {\n this.parent.toggleSelected(this);\n } else {\n this.parent.setSelected(this);\n }\n }\n };\n window.addEventListener(\"pointerup\", pointerUpCallback);\n window.addEventListener(\"blur\", pointerUpCallback);\n }\n moveInDOM() {\n this.parent?.moveEditorInDOM(this);\n }\n _setParentAndPosition(parent, x, y) {\n parent.changeParent(this);\n this.x = x;\n this.y = y;\n this.fixAndSetPosition();\n }\n getRect(tx, ty) {\n const scale = this.parentScale;\n const [pageWidth, pageHeight] = this.pageDimensions;\n const [pageX, pageY] = this.pageTranslation;\n const shiftX = tx / scale;\n const shiftY = ty / scale;\n const x = this.x * pageWidth;\n const y = this.y * pageHeight;\n const width = this.width * pageWidth;\n const height = this.height * pageHeight;\n switch (this.rotation) {\n case 0:\n return [x + shiftX + pageX, pageHeight - y - shiftY - height + pageY, x + shiftX + width + pageX, pageHeight - y - shiftY + pageY];\n case 90:\n return [x + shiftY + pageX, pageHeight - y + shiftX + pageY, x + shiftY + height + pageX, pageHeight - y + shiftX + width + pageY];\n case 180:\n return [x - shiftX - width + pageX, pageHeight - y + shiftY + pageY, x - shiftX + pageX, pageHeight - y + shiftY + height + pageY];\n case 270:\n return [x - shiftY - height + pageX, pageHeight - y - shiftX - width + pageY, x - shiftY + pageX, pageHeight - y - shiftX + pageY];\n default:\n throw new Error(\"Invalid rotation\");\n }\n }\n getRectInCurrentCoords(rect, pageHeight) {\n const [x1, y1, x2, y2] = rect;\n const width = x2 - x1;\n const height = y2 - y1;\n switch (this.rotation) {\n case 0:\n return [x1, pageHeight - y2, width, height];\n case 90:\n return [x1, pageHeight - y1, height, width];\n case 180:\n return [x2, pageHeight - y1, width, height];\n case 270:\n return [x2, pageHeight - y2, height, width];\n default:\n throw new Error(\"Invalid rotation\");\n }\n }\n onceAdded() {}\n isEmpty() {\n return false;\n }\n enableEditMode() {\n this.#isInEditMode = true;\n }\n disableEditMode() {\n this.#isInEditMode = false;\n }\n isInEditMode() {\n return this.#isInEditMode;\n }\n shouldGetKeyboardEvents() {\n return false;\n }\n needsToBeRebuilt() {\n return this.div && !this.isAttachedToDOM;\n }\n rebuild() {\n this.div?.addEventListener(\"focusin\", this.#boundFocusin);\n this.div?.addEventListener(\"focusout\", this.#boundFocusout);\n }\n serialize(isForCopying = false, context = null) {\n (0, _util.unreachable)(\"An editor must be serializable\");\n }\n static deserialize(data, parent, uiManager) {\n const editor = new this.prototype.constructor({\n parent,\n id: parent.getNextId(),\n uiManager\n });\n editor.rotation = data.rotation;\n const [pageWidth, pageHeight] = editor.pageDimensions;\n const [x, y, width, height] = editor.getRectInCurrentCoords(data.rect, pageHeight);\n editor.x = x / pageWidth;\n editor.y = y / pageHeight;\n editor.width = width / pageWidth;\n editor.height = height / pageHeight;\n return editor;\n }\n remove() {\n this.div.removeEventListener(\"focusin\", this.#boundFocusin);\n this.div.removeEventListener(\"focusout\", this.#boundFocusout);\n if (!this.isEmpty()) {\n this.commit();\n }\n if (this.parent) {\n this.parent.remove(this);\n } else {\n this._uiManager.removeEditor(this);\n }\n this.#altTextButton?.remove();\n this.#altTextButton = null;\n this.#altTextTooltip = null;\n }\n get isResizable() {\n return false;\n }\n makeResizable() {\n if (this.isResizable) {\n this.#createResizers();\n this.#resizersDiv.classList.remove(\"hidden\");\n }\n }\n select() {\n this.makeResizable();\n this.div?.classList.add(\"selectedEditor\");\n }\n unselect() {\n this.#resizersDiv?.classList.add(\"hidden\");\n this.div?.classList.remove(\"selectedEditor\");\n if (this.div?.contains(document.activeElement)) {\n this._uiManager.currentLayer.div.focus();\n }\n }\n updateParams(type, value) {}\n disableEditing() {\n if (this.#altTextButton) {\n this.#altTextButton.hidden = true;\n }\n }\n enableEditing() {\n if (this.#altTextButton) {\n this.#altTextButton.hidden = false;\n }\n }\n enterInEditMode() {}\n get contentDiv() {\n return this.div;\n }\n get isEditing() {\n return this.#isEditing;\n }\n set isEditing(value) {\n this.#isEditing = value;\n if (!this.parent) {\n return;\n }\n if (value) {\n this.parent.setSelected(this);\n this.parent.setActiveEditor(this);\n } else {\n this.parent.setActiveEditor(null);\n }\n }\n setAspectRatio(width, height) {\n this.#keepAspectRatio = true;\n const aspectRatio = width / height;\n const {\n style\n } = this.div;\n style.aspectRatio = aspectRatio;\n style.height = \"auto\";\n }\n static get MIN_SIZE() {\n return 16;\n }\n}\nexports.AnnotationEditor = AnnotationEditor;\nclass FakeEditor extends AnnotationEditor {\n constructor(params) {\n super(params);\n this.annotationElementId = params.annotationElementId;\n this.deleted = true;\n }\n serialize() {\n return {\n id: this.annotationElementId,\n deleted: true,\n pageIndex: this.pageIndex\n };\n }\n}\n\n/***/ }),\n/* 5 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.KeyboardManager = exports.CommandManager = exports.ColorManager = exports.AnnotationEditorUIManager = void 0;\nexports.bindEvents = bindEvents;\nexports.opacityToHex = opacityToHex;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nfunction bindEvents(obj, element, names) {\n for (const name of names) {\n element.addEventListener(name, obj[name].bind(obj));\n }\n}\nfunction opacityToHex(opacity) {\n return Math.round(Math.min(255, Math.max(1, 255 * opacity))).toString(16).padStart(2, \"0\");\n}\nclass IdManager {\n #id = 0;\n getId() {\n return `${_util.AnnotationEditorPrefix}${this.#id++}`;\n }\n}\nclass ImageManager {\n #baseId = (0, _util.getUuid)();\n #id = 0;\n #cache = null;\n static get _isSVGFittingCanvas() {\n const svg = `data:image/svg+xml;charset=UTF-8,`;\n const canvas = new OffscreenCanvas(1, 3);\n const ctx = canvas.getContext(\"2d\");\n const image = new Image();\n image.src = svg;\n const promise = image.decode().then(() => {\n ctx.drawImage(image, 0, 0, 1, 1, 0, 0, 1, 3);\n return new Uint32Array(ctx.getImageData(0, 0, 1, 1).data.buffer)[0] === 0;\n });\n return (0, _util.shadow)(this, \"_isSVGFittingCanvas\", promise);\n }\n async #get(key, rawData) {\n this.#cache ||= new Map();\n let data = this.#cache.get(key);\n if (data === null) {\n return null;\n }\n if (data?.bitmap) {\n data.refCounter += 1;\n return data;\n }\n try {\n data ||= {\n bitmap: null,\n id: `image_${this.#baseId}_${this.#id++}`,\n refCounter: 0,\n isSvg: false\n };\n let image;\n if (typeof rawData === \"string\") {\n data.url = rawData;\n const response = await fetch(rawData);\n if (!response.ok) {\n throw new Error(response.statusText);\n }\n image = await response.blob();\n } else {\n image = data.file = rawData;\n }\n if (image.type === \"image/svg+xml\") {\n const mustRemoveAspectRatioPromise = ImageManager._isSVGFittingCanvas;\n const fileReader = new FileReader();\n const imageElement = new Image();\n const imagePromise = new Promise((resolve, reject) => {\n imageElement.onload = () => {\n data.bitmap = imageElement;\n data.isSvg = true;\n resolve();\n };\n fileReader.onload = async () => {\n const url = data.svgUrl = fileReader.result;\n imageElement.src = (await mustRemoveAspectRatioPromise) ? `${url}#svgView(preserveAspectRatio(none))` : url;\n };\n imageElement.onerror = fileReader.onerror = reject;\n });\n fileReader.readAsDataURL(image);\n await imagePromise;\n } else {\n data.bitmap = await createImageBitmap(image);\n }\n data.refCounter = 1;\n } catch (e) {\n console.error(e);\n data = null;\n }\n this.#cache.set(key, data);\n if (data) {\n this.#cache.set(data.id, data);\n }\n return data;\n }\n async getFromFile(file) {\n const {\n lastModified,\n name,\n size,\n type\n } = file;\n return this.#get(`${lastModified}_${name}_${size}_${type}`, file);\n }\n async getFromUrl(url) {\n return this.#get(url, url);\n }\n async getFromId(id) {\n this.#cache ||= new Map();\n const data = this.#cache.get(id);\n if (!data) {\n return null;\n }\n if (data.bitmap) {\n data.refCounter += 1;\n return data;\n }\n if (data.file) {\n return this.getFromFile(data.file);\n }\n return this.getFromUrl(data.url);\n }\n getSvgUrl(id) {\n const data = this.#cache.get(id);\n if (!data?.isSvg) {\n return null;\n }\n return data.svgUrl;\n }\n deleteId(id) {\n this.#cache ||= new Map();\n const data = this.#cache.get(id);\n if (!data) {\n return;\n }\n data.refCounter -= 1;\n if (data.refCounter !== 0) {\n return;\n }\n data.bitmap = null;\n }\n isValidId(id) {\n return id.startsWith(`image_${this.#baseId}_`);\n }\n}\nclass CommandManager {\n #commands = [];\n #locked = false;\n #maxSize;\n #position = -1;\n constructor(maxSize = 128) {\n this.#maxSize = maxSize;\n }\n add({\n cmd,\n undo,\n mustExec,\n type = NaN,\n overwriteIfSameType = false,\n keepUndo = false\n }) {\n if (mustExec) {\n cmd();\n }\n if (this.#locked) {\n return;\n }\n const save = {\n cmd,\n undo,\n type\n };\n if (this.#position === -1) {\n if (this.#commands.length > 0) {\n this.#commands.length = 0;\n }\n this.#position = 0;\n this.#commands.push(save);\n return;\n }\n if (overwriteIfSameType && this.#commands[this.#position].type === type) {\n if (keepUndo) {\n save.undo = this.#commands[this.#position].undo;\n }\n this.#commands[this.#position] = save;\n return;\n }\n const next = this.#position + 1;\n if (next === this.#maxSize) {\n this.#commands.splice(0, 1);\n } else {\n this.#position = next;\n if (next < this.#commands.length) {\n this.#commands.splice(next);\n }\n }\n this.#commands.push(save);\n }\n undo() {\n if (this.#position === -1) {\n return;\n }\n this.#locked = true;\n this.#commands[this.#position].undo();\n this.#locked = false;\n this.#position -= 1;\n }\n redo() {\n if (this.#position < this.#commands.length - 1) {\n this.#position += 1;\n this.#locked = true;\n this.#commands[this.#position].cmd();\n this.#locked = false;\n }\n }\n hasSomethingToUndo() {\n return this.#position !== -1;\n }\n hasSomethingToRedo() {\n return this.#position < this.#commands.length - 1;\n }\n destroy() {\n this.#commands = null;\n }\n}\nexports.CommandManager = CommandManager;\nclass KeyboardManager {\n constructor(callbacks) {\n this.buffer = [];\n this.callbacks = new Map();\n this.allKeys = new Set();\n const {\n isMac\n } = _util.FeatureTest.platform;\n for (const [keys, callback, options = {}] of callbacks) {\n for (const key of keys) {\n const isMacKey = key.startsWith(\"mac+\");\n if (isMac && isMacKey) {\n this.callbacks.set(key.slice(4), {\n callback,\n options\n });\n this.allKeys.add(key.split(\"+\").at(-1));\n } else if (!isMac && !isMacKey) {\n this.callbacks.set(key, {\n callback,\n options\n });\n this.allKeys.add(key.split(\"+\").at(-1));\n }\n }\n }\n }\n #serialize(event) {\n if (event.altKey) {\n this.buffer.push(\"alt\");\n }\n if (event.ctrlKey) {\n this.buffer.push(\"ctrl\");\n }\n if (event.metaKey) {\n this.buffer.push(\"meta\");\n }\n if (event.shiftKey) {\n this.buffer.push(\"shift\");\n }\n this.buffer.push(event.key);\n const str = this.buffer.join(\"+\");\n this.buffer.length = 0;\n return str;\n }\n exec(self, event) {\n if (!this.allKeys.has(event.key)) {\n return;\n }\n const info = this.callbacks.get(this.#serialize(event));\n if (!info) {\n return;\n }\n const {\n callback,\n options: {\n bubbles = false,\n args = [],\n checker = null\n }\n } = info;\n if (checker && !checker(self, event)) {\n return;\n }\n callback.bind(self, ...args)();\n if (!bubbles) {\n event.stopPropagation();\n event.preventDefault();\n }\n }\n}\nexports.KeyboardManager = KeyboardManager;\nclass ColorManager {\n static _colorsMapping = new Map([[\"CanvasText\", [0, 0, 0]], [\"Canvas\", [255, 255, 255]]]);\n get _colors() {\n const colors = new Map([[\"CanvasText\", null], [\"Canvas\", null]]);\n (0, _display_utils.getColorValues)(colors);\n return (0, _util.shadow)(this, \"_colors\", colors);\n }\n convert(color) {\n const rgb = (0, _display_utils.getRGB)(color);\n if (!window.matchMedia(\"(forced-colors: active)\").matches) {\n return rgb;\n }\n for (const [name, RGB] of this._colors) {\n if (RGB.every((x, i) => x === rgb[i])) {\n return ColorManager._colorsMapping.get(name);\n }\n }\n return rgb;\n }\n getHexCode(name) {\n const rgb = this._colors.get(name);\n if (!rgb) {\n return name;\n }\n return _util.Util.makeHexColor(...rgb);\n }\n}\nexports.ColorManager = ColorManager;\nclass AnnotationEditorUIManager {\n #activeEditor = null;\n #allEditors = new Map();\n #allLayers = new Map();\n #altTextManager = null;\n #annotationStorage = null;\n #commandManager = new CommandManager();\n #currentPageIndex = 0;\n #deletedAnnotationsElementIds = new Set();\n #draggingEditors = null;\n #editorTypes = null;\n #editorsToRescale = new Set();\n #filterFactory = null;\n #idManager = new IdManager();\n #isEnabled = false;\n #isWaiting = false;\n #lastActiveElement = null;\n #mode = _util.AnnotationEditorType.NONE;\n #selectedEditors = new Set();\n #pageColors = null;\n #boundBlur = this.blur.bind(this);\n #boundFocus = this.focus.bind(this);\n #boundCopy = this.copy.bind(this);\n #boundCut = this.cut.bind(this);\n #boundPaste = this.paste.bind(this);\n #boundKeydown = this.keydown.bind(this);\n #boundOnEditingAction = this.onEditingAction.bind(this);\n #boundOnPageChanging = this.onPageChanging.bind(this);\n #boundOnScaleChanging = this.onScaleChanging.bind(this);\n #boundOnRotationChanging = this.onRotationChanging.bind(this);\n #previousStates = {\n isEditing: false,\n isEmpty: true,\n hasSomethingToUndo: false,\n hasSomethingToRedo: false,\n hasSelectedEditor: false\n };\n #translation = [0, 0];\n #translationTimeoutId = null;\n #container = null;\n #viewer = null;\n static TRANSLATE_SMALL = 1;\n static TRANSLATE_BIG = 10;\n static get _keyboardManager() {\n const proto = AnnotationEditorUIManager.prototype;\n const arrowChecker = self => {\n const {\n activeElement\n } = document;\n return activeElement && self.#container.contains(activeElement) && self.hasSomethingToControl();\n };\n const small = this.TRANSLATE_SMALL;\n const big = this.TRANSLATE_BIG;\n return (0, _util.shadow)(this, \"_keyboardManager\", new KeyboardManager([[[\"ctrl+a\", \"mac+meta+a\"], proto.selectAll], [[\"ctrl+z\", \"mac+meta+z\"], proto.undo], [[\"ctrl+y\", \"ctrl+shift+z\", \"mac+meta+shift+z\", \"ctrl+shift+Z\", \"mac+meta+shift+Z\"], proto.redo], [[\"Backspace\", \"alt+Backspace\", \"ctrl+Backspace\", \"shift+Backspace\", \"mac+Backspace\", \"mac+alt+Backspace\", \"mac+ctrl+Backspace\", \"Delete\", \"ctrl+Delete\", \"shift+Delete\", \"mac+Delete\"], proto.delete], [[\"Escape\", \"mac+Escape\"], proto.unselectAll], [[\"ArrowLeft\", \"mac+ArrowLeft\"], proto.translateSelectedEditors, {\n args: [-small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowLeft\", \"mac+shift+ArrowLeft\"], proto.translateSelectedEditors, {\n args: [-big, 0],\n checker: arrowChecker\n }], [[\"ArrowRight\", \"mac+ArrowRight\"], proto.translateSelectedEditors, {\n args: [small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowRight\", \"mac+shift+ArrowRight\"], proto.translateSelectedEditors, {\n args: [big, 0],\n checker: arrowChecker\n }], [[\"ArrowUp\", \"mac+ArrowUp\"], proto.translateSelectedEditors, {\n args: [0, -small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowUp\", \"mac+shift+ArrowUp\"], proto.translateSelectedEditors, {\n args: [0, -big],\n checker: arrowChecker\n }], [[\"ArrowDown\", \"mac+ArrowDown\"], proto.translateSelectedEditors, {\n args: [0, small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowDown\", \"mac+shift+ArrowDown\"], proto.translateSelectedEditors, {\n args: [0, big],\n checker: arrowChecker\n }]]));\n }\n constructor(container, viewer, altTextManager, eventBus, pdfDocument, pageColors) {\n this.#container = container;\n this.#viewer = viewer;\n this.#altTextManager = altTextManager;\n this._eventBus = eventBus;\n this._eventBus._on(\"editingaction\", this.#boundOnEditingAction);\n this._eventBus._on(\"pagechanging\", this.#boundOnPageChanging);\n this._eventBus._on(\"scalechanging\", this.#boundOnScaleChanging);\n this._eventBus._on(\"rotationchanging\", this.#boundOnRotationChanging);\n this.#annotationStorage = pdfDocument.annotationStorage;\n this.#filterFactory = pdfDocument.filterFactory;\n this.#pageColors = pageColors;\n this.viewParameters = {\n realScale: _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS,\n rotation: 0\n };\n }\n destroy() {\n this.#removeKeyboardManager();\n this.#removeFocusManager();\n this._eventBus._off(\"editingaction\", this.#boundOnEditingAction);\n this._eventBus._off(\"pagechanging\", this.#boundOnPageChanging);\n this._eventBus._off(\"scalechanging\", this.#boundOnScaleChanging);\n this._eventBus._off(\"rotationchanging\", this.#boundOnRotationChanging);\n for (const layer of this.#allLayers.values()) {\n layer.destroy();\n }\n this.#allLayers.clear();\n this.#allEditors.clear();\n this.#editorsToRescale.clear();\n this.#activeEditor = null;\n this.#selectedEditors.clear();\n this.#commandManager.destroy();\n this.#altTextManager.destroy();\n }\n get hcmFilter() {\n return (0, _util.shadow)(this, \"hcmFilter\", this.#pageColors ? this.#filterFactory.addHCMFilter(this.#pageColors.foreground, this.#pageColors.background) : \"none\");\n }\n get direction() {\n return (0, _util.shadow)(this, \"direction\", getComputedStyle(this.#container).direction);\n }\n editAltText(editor) {\n this.#altTextManager?.editAltText(this, editor);\n }\n onPageChanging({\n pageNumber\n }) {\n this.#currentPageIndex = pageNumber - 1;\n }\n focusMainContainer() {\n this.#container.focus();\n }\n findParent(x, y) {\n for (const layer of this.#allLayers.values()) {\n const {\n x: layerX,\n y: layerY,\n width,\n height\n } = layer.div.getBoundingClientRect();\n if (x >= layerX && x <= layerX + width && y >= layerY && y <= layerY + height) {\n return layer;\n }\n }\n return null;\n }\n disableUserSelect(value = false) {\n this.#viewer.classList.toggle(\"noUserSelect\", value);\n }\n addShouldRescale(editor) {\n this.#editorsToRescale.add(editor);\n }\n removeShouldRescale(editor) {\n this.#editorsToRescale.delete(editor);\n }\n onScaleChanging({\n scale\n }) {\n this.commitOrRemove();\n this.viewParameters.realScale = scale * _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS;\n for (const editor of this.#editorsToRescale) {\n editor.onScaleChanging();\n }\n }\n onRotationChanging({\n pagesRotation\n }) {\n this.commitOrRemove();\n this.viewParameters.rotation = pagesRotation;\n }\n addToAnnotationStorage(editor) {\n if (!editor.isEmpty() && this.#annotationStorage && !this.#annotationStorage.has(editor.id)) {\n this.#annotationStorage.setValue(editor.id, editor);\n }\n }\n #addFocusManager() {\n window.addEventListener(\"focus\", this.#boundFocus);\n window.addEventListener(\"blur\", this.#boundBlur);\n }\n #removeFocusManager() {\n window.removeEventListener(\"focus\", this.#boundFocus);\n window.removeEventListener(\"blur\", this.#boundBlur);\n }\n blur() {\n if (!this.hasSelection) {\n return;\n }\n const {\n activeElement\n } = document;\n for (const editor of this.#selectedEditors) {\n if (editor.div.contains(activeElement)) {\n this.#lastActiveElement = [editor, activeElement];\n editor._focusEventsAllowed = false;\n break;\n }\n }\n }\n focus() {\n if (!this.#lastActiveElement) {\n return;\n }\n const [lastEditor, lastActiveElement] = this.#lastActiveElement;\n this.#lastActiveElement = null;\n lastActiveElement.addEventListener(\"focusin\", () => {\n lastEditor._focusEventsAllowed = true;\n }, {\n once: true\n });\n lastActiveElement.focus();\n }\n #addKeyboardManager() {\n window.addEventListener(\"keydown\", this.#boundKeydown, {\n capture: true\n });\n }\n #removeKeyboardManager() {\n window.removeEventListener(\"keydown\", this.#boundKeydown, {\n capture: true\n });\n }\n #addCopyPasteListeners() {\n document.addEventListener(\"copy\", this.#boundCopy);\n document.addEventListener(\"cut\", this.#boundCut);\n document.addEventListener(\"paste\", this.#boundPaste);\n }\n #removeCopyPasteListeners() {\n document.removeEventListener(\"copy\", this.#boundCopy);\n document.removeEventListener(\"cut\", this.#boundCut);\n document.removeEventListener(\"paste\", this.#boundPaste);\n }\n addEditListeners() {\n this.#addKeyboardManager();\n this.#addCopyPasteListeners();\n }\n removeEditListeners() {\n this.#removeKeyboardManager();\n this.#removeCopyPasteListeners();\n }\n copy(event) {\n event.preventDefault();\n this.#activeEditor?.commitOrRemove();\n if (!this.hasSelection) {\n return;\n }\n const editors = [];\n for (const editor of this.#selectedEditors) {\n const serialized = editor.serialize(true);\n if (serialized) {\n editors.push(serialized);\n }\n }\n if (editors.length === 0) {\n return;\n }\n event.clipboardData.setData(\"application/pdfjs\", JSON.stringify(editors));\n }\n cut(event) {\n this.copy(event);\n this.delete();\n }\n paste(event) {\n event.preventDefault();\n const {\n clipboardData\n } = event;\n for (const item of clipboardData.items) {\n for (const editorType of this.#editorTypes) {\n if (editorType.isHandlingMimeForPasting(item.type)) {\n editorType.paste(item, this.currentLayer);\n return;\n }\n }\n }\n let data = clipboardData.getData(\"application/pdfjs\");\n if (!data) {\n return;\n }\n try {\n data = JSON.parse(data);\n } catch (ex) {\n (0, _util.warn)(`paste: \"${ex.message}\".`);\n return;\n }\n if (!Array.isArray(data)) {\n return;\n }\n this.unselectAll();\n const layer = this.currentLayer;\n try {\n const newEditors = [];\n for (const editor of data) {\n const deserializedEditor = layer.deserialize(editor);\n if (!deserializedEditor) {\n return;\n }\n newEditors.push(deserializedEditor);\n }\n const cmd = () => {\n for (const editor of newEditors) {\n this.#addEditorToLayer(editor);\n }\n this.#selectEditors(newEditors);\n };\n const undo = () => {\n for (const editor of newEditors) {\n editor.remove();\n }\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: true\n });\n } catch (ex) {\n (0, _util.warn)(`paste: \"${ex.message}\".`);\n }\n }\n keydown(event) {\n if (!this.getActive()?.shouldGetKeyboardEvents()) {\n AnnotationEditorUIManager._keyboardManager.exec(this, event);\n }\n }\n onEditingAction(details) {\n if ([\"undo\", \"redo\", \"delete\", \"selectAll\"].includes(details.name)) {\n this[details.name]();\n }\n }\n #dispatchUpdateStates(details) {\n const hasChanged = Object.entries(details).some(([key, value]) => this.#previousStates[key] !== value);\n if (hasChanged) {\n this._eventBus.dispatch(\"annotationeditorstateschanged\", {\n source: this,\n details: Object.assign(this.#previousStates, details)\n });\n }\n }\n #dispatchUpdateUI(details) {\n this._eventBus.dispatch(\"annotationeditorparamschanged\", {\n source: this,\n details\n });\n }\n setEditingState(isEditing) {\n if (isEditing) {\n this.#addFocusManager();\n this.#addKeyboardManager();\n this.#addCopyPasteListeners();\n this.#dispatchUpdateStates({\n isEditing: this.#mode !== _util.AnnotationEditorType.NONE,\n isEmpty: this.#isEmpty(),\n hasSomethingToUndo: this.#commandManager.hasSomethingToUndo(),\n hasSomethingToRedo: this.#commandManager.hasSomethingToRedo(),\n hasSelectedEditor: false\n });\n } else {\n this.#removeFocusManager();\n this.#removeKeyboardManager();\n this.#removeCopyPasteListeners();\n this.#dispatchUpdateStates({\n isEditing: false\n });\n this.disableUserSelect(false);\n }\n }\n registerEditorTypes(types) {\n if (this.#editorTypes) {\n return;\n }\n this.#editorTypes = types;\n for (const editorType of this.#editorTypes) {\n this.#dispatchUpdateUI(editorType.defaultPropertiesToUpdate);\n }\n }\n getId() {\n return this.#idManager.getId();\n }\n get currentLayer() {\n return this.#allLayers.get(this.#currentPageIndex);\n }\n getLayer(pageIndex) {\n return this.#allLayers.get(pageIndex);\n }\n get currentPageIndex() {\n return this.#currentPageIndex;\n }\n addLayer(layer) {\n this.#allLayers.set(layer.pageIndex, layer);\n if (this.#isEnabled) {\n layer.enable();\n } else {\n layer.disable();\n }\n }\n removeLayer(layer) {\n this.#allLayers.delete(layer.pageIndex);\n }\n updateMode(mode, editId = null) {\n if (this.#mode === mode) {\n return;\n }\n this.#mode = mode;\n if (mode === _util.AnnotationEditorType.NONE) {\n this.setEditingState(false);\n this.#disableAll();\n return;\n }\n this.setEditingState(true);\n this.#enableAll();\n this.unselectAll();\n for (const layer of this.#allLayers.values()) {\n layer.updateMode(mode);\n }\n if (!editId) {\n return;\n }\n for (const editor of this.#allEditors.values()) {\n if (editor.annotationElementId === editId) {\n this.setSelected(editor);\n editor.enterInEditMode();\n break;\n }\n }\n }\n updateToolbar(mode) {\n if (mode === this.#mode) {\n return;\n }\n this._eventBus.dispatch(\"switchannotationeditormode\", {\n source: this,\n mode\n });\n }\n updateParams(type, value) {\n if (!this.#editorTypes) {\n return;\n }\n if (type === _util.AnnotationEditorParamsType.CREATE) {\n this.currentLayer.addNewEditor(type);\n return;\n }\n for (const editor of this.#selectedEditors) {\n editor.updateParams(type, value);\n }\n for (const editorType of this.#editorTypes) {\n editorType.updateDefaultParams(type, value);\n }\n }\n enableWaiting(mustWait = false) {\n if (this.#isWaiting === mustWait) {\n return;\n }\n this.#isWaiting = mustWait;\n for (const layer of this.#allLayers.values()) {\n if (mustWait) {\n layer.disableClick();\n } else {\n layer.enableClick();\n }\n layer.div.classList.toggle(\"waiting\", mustWait);\n }\n }\n #enableAll() {\n if (!this.#isEnabled) {\n this.#isEnabled = true;\n for (const layer of this.#allLayers.values()) {\n layer.enable();\n }\n }\n }\n #disableAll() {\n this.unselectAll();\n if (this.#isEnabled) {\n this.#isEnabled = false;\n for (const layer of this.#allLayers.values()) {\n layer.disable();\n }\n }\n }\n getEditors(pageIndex) {\n const editors = [];\n for (const editor of this.#allEditors.values()) {\n if (editor.pageIndex === pageIndex) {\n editors.push(editor);\n }\n }\n return editors;\n }\n getEditor(id) {\n return this.#allEditors.get(id);\n }\n addEditor(editor) {\n this.#allEditors.set(editor.id, editor);\n }\n removeEditor(editor) {\n this.#allEditors.delete(editor.id);\n this.unselect(editor);\n if (!editor.annotationElementId || !this.#deletedAnnotationsElementIds.has(editor.annotationElementId)) {\n this.#annotationStorage?.remove(editor.id);\n }\n }\n addDeletedAnnotationElement(editor) {\n this.#deletedAnnotationsElementIds.add(editor.annotationElementId);\n editor.deleted = true;\n }\n isDeletedAnnotationElement(annotationElementId) {\n return this.#deletedAnnotationsElementIds.has(annotationElementId);\n }\n removeDeletedAnnotationElement(editor) {\n this.#deletedAnnotationsElementIds.delete(editor.annotationElementId);\n editor.deleted = false;\n }\n #addEditorToLayer(editor) {\n const layer = this.#allLayers.get(editor.pageIndex);\n if (layer) {\n layer.addOrRebuild(editor);\n } else {\n this.addEditor(editor);\n }\n }\n setActiveEditor(editor) {\n if (this.#activeEditor === editor) {\n return;\n }\n this.#activeEditor = editor;\n if (editor) {\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n }\n }\n toggleSelected(editor) {\n if (this.#selectedEditors.has(editor)) {\n this.#selectedEditors.delete(editor);\n editor.unselect();\n this.#dispatchUpdateStates({\n hasSelectedEditor: this.hasSelection\n });\n return;\n }\n this.#selectedEditors.add(editor);\n editor.select();\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n this.#dispatchUpdateStates({\n hasSelectedEditor: true\n });\n }\n setSelected(editor) {\n for (const ed of this.#selectedEditors) {\n if (ed !== editor) {\n ed.unselect();\n }\n }\n this.#selectedEditors.clear();\n this.#selectedEditors.add(editor);\n editor.select();\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n this.#dispatchUpdateStates({\n hasSelectedEditor: true\n });\n }\n isSelected(editor) {\n return this.#selectedEditors.has(editor);\n }\n unselect(editor) {\n editor.unselect();\n this.#selectedEditors.delete(editor);\n this.#dispatchUpdateStates({\n hasSelectedEditor: this.hasSelection\n });\n }\n get hasSelection() {\n return this.#selectedEditors.size !== 0;\n }\n undo() {\n this.#commandManager.undo();\n this.#dispatchUpdateStates({\n hasSomethingToUndo: this.#commandManager.hasSomethingToUndo(),\n hasSomethingToRedo: true,\n isEmpty: this.#isEmpty()\n });\n }\n redo() {\n this.#commandManager.redo();\n this.#dispatchUpdateStates({\n hasSomethingToUndo: true,\n hasSomethingToRedo: this.#commandManager.hasSomethingToRedo(),\n isEmpty: this.#isEmpty()\n });\n }\n addCommands(params) {\n this.#commandManager.add(params);\n this.#dispatchUpdateStates({\n hasSomethingToUndo: true,\n hasSomethingToRedo: false,\n isEmpty: this.#isEmpty()\n });\n }\n #isEmpty() {\n if (this.#allEditors.size === 0) {\n return true;\n }\n if (this.#allEditors.size === 1) {\n for (const editor of this.#allEditors.values()) {\n return editor.isEmpty();\n }\n }\n return false;\n }\n delete() {\n this.commitOrRemove();\n if (!this.hasSelection) {\n return;\n }\n const editors = [...this.#selectedEditors];\n const cmd = () => {\n for (const editor of editors) {\n editor.remove();\n }\n };\n const undo = () => {\n for (const editor of editors) {\n this.#addEditorToLayer(editor);\n }\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: true\n });\n }\n commitOrRemove() {\n this.#activeEditor?.commitOrRemove();\n }\n hasSomethingToControl() {\n return this.#activeEditor || this.hasSelection;\n }\n #selectEditors(editors) {\n this.#selectedEditors.clear();\n for (const editor of editors) {\n if (editor.isEmpty()) {\n continue;\n }\n this.#selectedEditors.add(editor);\n editor.select();\n }\n this.#dispatchUpdateStates({\n hasSelectedEditor: true\n });\n }\n selectAll() {\n for (const editor of this.#selectedEditors) {\n editor.commit();\n }\n this.#selectEditors(this.#allEditors.values());\n }\n unselectAll() {\n if (this.#activeEditor) {\n this.#activeEditor.commitOrRemove();\n return;\n }\n if (!this.hasSelection) {\n return;\n }\n for (const editor of this.#selectedEditors) {\n editor.unselect();\n }\n this.#selectedEditors.clear();\n this.#dispatchUpdateStates({\n hasSelectedEditor: false\n });\n }\n translateSelectedEditors(x, y, noCommit = false) {\n if (!noCommit) {\n this.commitOrRemove();\n }\n if (!this.hasSelection) {\n return;\n }\n this.#translation[0] += x;\n this.#translation[1] += y;\n const [totalX, totalY] = this.#translation;\n const editors = [...this.#selectedEditors];\n const TIME_TO_WAIT = 1000;\n if (this.#translationTimeoutId) {\n clearTimeout(this.#translationTimeoutId);\n }\n this.#translationTimeoutId = setTimeout(() => {\n this.#translationTimeoutId = null;\n this.#translation[0] = this.#translation[1] = 0;\n this.addCommands({\n cmd: () => {\n for (const editor of editors) {\n if (this.#allEditors.has(editor.id)) {\n editor.translateInPage(totalX, totalY);\n }\n }\n },\n undo: () => {\n for (const editor of editors) {\n if (this.#allEditors.has(editor.id)) {\n editor.translateInPage(-totalX, -totalY);\n }\n }\n },\n mustExec: false\n });\n }, TIME_TO_WAIT);\n for (const editor of editors) {\n editor.translateInPage(x, y);\n }\n }\n setUpDragSession() {\n if (!this.hasSelection) {\n return;\n }\n this.disableUserSelect(true);\n this.#draggingEditors = new Map();\n for (const editor of this.#selectedEditors) {\n this.#draggingEditors.set(editor, {\n savedX: editor.x,\n savedY: editor.y,\n savedPageIndex: editor.pageIndex,\n newX: 0,\n newY: 0,\n newPageIndex: -1\n });\n }\n }\n endDragSession() {\n if (!this.#draggingEditors) {\n return false;\n }\n this.disableUserSelect(false);\n const map = this.#draggingEditors;\n this.#draggingEditors = null;\n let mustBeAddedInUndoStack = false;\n for (const [{\n x,\n y,\n pageIndex\n }, value] of map) {\n value.newX = x;\n value.newY = y;\n value.newPageIndex = pageIndex;\n mustBeAddedInUndoStack ||= x !== value.savedX || y !== value.savedY || pageIndex !== value.savedPageIndex;\n }\n if (!mustBeAddedInUndoStack) {\n return false;\n }\n const move = (editor, x, y, pageIndex) => {\n if (this.#allEditors.has(editor.id)) {\n const parent = this.#allLayers.get(pageIndex);\n if (parent) {\n editor._setParentAndPosition(parent, x, y);\n } else {\n editor.pageIndex = pageIndex;\n editor.x = x;\n editor.y = y;\n }\n }\n };\n this.addCommands({\n cmd: () => {\n for (const [editor, {\n newX,\n newY,\n newPageIndex\n }] of map) {\n move(editor, newX, newY, newPageIndex);\n }\n },\n undo: () => {\n for (const [editor, {\n savedX,\n savedY,\n savedPageIndex\n }] of map) {\n move(editor, savedX, savedY, savedPageIndex);\n }\n },\n mustExec: true\n });\n return true;\n }\n dragSelectedEditors(tx, ty) {\n if (!this.#draggingEditors) {\n return;\n }\n for (const editor of this.#draggingEditors.keys()) {\n editor.drag(tx, ty);\n }\n }\n rebuild(editor) {\n if (editor.parent === null) {\n const parent = this.getLayer(editor.pageIndex);\n if (parent) {\n parent.changeParent(editor);\n parent.addOrRebuild(editor);\n } else {\n this.addEditor(editor);\n this.addToAnnotationStorage(editor);\n editor.rebuild();\n }\n } else {\n editor.parent.addOrRebuild(editor);\n }\n }\n isActive(editor) {\n return this.#activeEditor === editor;\n }\n getActive() {\n return this.#activeEditor;\n }\n getMode() {\n return this.#mode;\n }\n get imageManager() {\n return (0, _util.shadow)(this, \"imageManager\", new ImageManager());\n }\n}\nexports.AnnotationEditorUIManager = AnnotationEditorUIManager;\n\n/***/ }),\n/* 6 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StatTimer = exports.RenderingCancelledException = exports.PixelsPerInch = exports.PageViewport = exports.PDFDateString = exports.DOMStandardFontDataFactory = exports.DOMSVGFactory = exports.DOMFilterFactory = exports.DOMCanvasFactory = exports.DOMCMapReaderFactory = void 0;\nexports.deprecated = deprecated;\nexports.getColorValues = getColorValues;\nexports.getCurrentTransform = getCurrentTransform;\nexports.getCurrentTransformInverse = getCurrentTransformInverse;\nexports.getFilenameFromUrl = getFilenameFromUrl;\nexports.getPdfFilenameFromUrl = getPdfFilenameFromUrl;\nexports.getRGB = getRGB;\nexports.getXfaPageViewport = getXfaPageViewport;\nexports.isDataScheme = isDataScheme;\nexports.isPdfFile = isPdfFile;\nexports.isValidFetchUrl = isValidFetchUrl;\nexports.loadScript = loadScript;\nexports.noContextMenu = noContextMenu;\nexports.setLayerDimensions = setLayerDimensions;\nvar _base_factory = __w_pdfjs_require__(7);\nvar _util = __w_pdfjs_require__(1);\nconst SVG_NS = \"http://www.w3.org/2000/svg\";\nclass PixelsPerInch {\n static CSS = 96.0;\n static PDF = 72.0;\n static PDF_TO_CSS_UNITS = this.CSS / this.PDF;\n}\nexports.PixelsPerInch = PixelsPerInch;\nclass DOMFilterFactory extends _base_factory.BaseFilterFactory {\n #_cache;\n #_defs;\n #docId;\n #document;\n #hcmFilter;\n #hcmKey;\n #hcmUrl;\n #hcmHighlightFilter;\n #hcmHighlightKey;\n #hcmHighlightUrl;\n #id = 0;\n constructor({\n docId,\n ownerDocument = globalThis.document\n } = {}) {\n super();\n this.#docId = docId;\n this.#document = ownerDocument;\n }\n get #cache() {\n return this.#_cache ||= new Map();\n }\n get #defs() {\n if (!this.#_defs) {\n const div = this.#document.createElement(\"div\");\n const {\n style\n } = div;\n style.visibility = \"hidden\";\n style.contain = \"strict\";\n style.width = style.height = 0;\n style.position = \"absolute\";\n style.top = style.left = 0;\n style.zIndex = -1;\n const svg = this.#document.createElementNS(SVG_NS, \"svg\");\n svg.setAttribute(\"width\", 0);\n svg.setAttribute(\"height\", 0);\n this.#_defs = this.#document.createElementNS(SVG_NS, \"defs\");\n div.append(svg);\n svg.append(this.#_defs);\n this.#document.body.append(div);\n }\n return this.#_defs;\n }\n addFilter(maps) {\n if (!maps) {\n return \"none\";\n }\n let value = this.#cache.get(maps);\n if (value) {\n return value;\n }\n let tableR, tableG, tableB, key;\n if (maps.length === 1) {\n const mapR = maps[0];\n const buffer = new Array(256);\n for (let i = 0; i < 256; i++) {\n buffer[i] = mapR[i] / 255;\n }\n key = tableR = tableG = tableB = buffer.join(\",\");\n } else {\n const [mapR, mapG, mapB] = maps;\n const bufferR = new Array(256);\n const bufferG = new Array(256);\n const bufferB = new Array(256);\n for (let i = 0; i < 256; i++) {\n bufferR[i] = mapR[i] / 255;\n bufferG[i] = mapG[i] / 255;\n bufferB[i] = mapB[i] / 255;\n }\n tableR = bufferR.join(\",\");\n tableG = bufferG.join(\",\");\n tableB = bufferB.join(\",\");\n key = `${tableR}${tableG}${tableB}`;\n }\n value = this.#cache.get(key);\n if (value) {\n this.#cache.set(maps, value);\n return value;\n }\n const id = `g_${this.#docId}_transfer_map_${this.#id++}`;\n const url = `url(#${id})`;\n this.#cache.set(maps, url);\n this.#cache.set(key, url);\n const filter = this.#createFilter(id);\n this.#addTransferMapConversion(tableR, tableG, tableB, filter);\n return url;\n }\n addHCMFilter(fgColor, bgColor) {\n const key = `${fgColor}-${bgColor}`;\n if (this.#hcmKey === key) {\n return this.#hcmUrl;\n }\n this.#hcmKey = key;\n this.#hcmUrl = \"none\";\n this.#hcmFilter?.remove();\n if (!fgColor || !bgColor) {\n return this.#hcmUrl;\n }\n const fgRGB = this.#getRGB(fgColor);\n fgColor = _util.Util.makeHexColor(...fgRGB);\n const bgRGB = this.#getRGB(bgColor);\n bgColor = _util.Util.makeHexColor(...bgRGB);\n this.#defs.style.color = \"\";\n if (fgColor === \"#000000\" && bgColor === \"#ffffff\" || fgColor === bgColor) {\n return this.#hcmUrl;\n }\n const map = new Array(256);\n for (let i = 0; i <= 255; i++) {\n const x = i / 255;\n map[i] = x <= 0.03928 ? x / 12.92 : ((x + 0.055) / 1.055) ** 2.4;\n }\n const table = map.join(\",\");\n const id = `g_${this.#docId}_hcm_filter`;\n const filter = this.#hcmHighlightFilter = this.#createFilter(id);\n this.#addTransferMapConversion(table, table, table, filter);\n this.#addGrayConversion(filter);\n const getSteps = (c, n) => {\n const start = fgRGB[c] / 255;\n const end = bgRGB[c] / 255;\n const arr = new Array(n + 1);\n for (let i = 0; i <= n; i++) {\n arr[i] = start + i / n * (end - start);\n }\n return arr.join(\",\");\n };\n this.#addTransferMapConversion(getSteps(0, 5), getSteps(1, 5), getSteps(2, 5), filter);\n this.#hcmUrl = `url(#${id})`;\n return this.#hcmUrl;\n }\n addHighlightHCMFilter(fgColor, bgColor, newFgColor, newBgColor) {\n const key = `${fgColor}-${bgColor}-${newFgColor}-${newBgColor}`;\n if (this.#hcmHighlightKey === key) {\n return this.#hcmHighlightUrl;\n }\n this.#hcmHighlightKey = key;\n this.#hcmHighlightUrl = \"none\";\n this.#hcmHighlightFilter?.remove();\n if (!fgColor || !bgColor) {\n return this.#hcmHighlightUrl;\n }\n const [fgRGB, bgRGB] = [fgColor, bgColor].map(this.#getRGB.bind(this));\n let fgGray = Math.round(0.2126 * fgRGB[0] + 0.7152 * fgRGB[1] + 0.0722 * fgRGB[2]);\n let bgGray = Math.round(0.2126 * bgRGB[0] + 0.7152 * bgRGB[1] + 0.0722 * bgRGB[2]);\n let [newFgRGB, newBgRGB] = [newFgColor, newBgColor].map(this.#getRGB.bind(this));\n if (bgGray < fgGray) {\n [fgGray, bgGray, newFgRGB, newBgRGB] = [bgGray, fgGray, newBgRGB, newFgRGB];\n }\n this.#defs.style.color = \"\";\n const getSteps = (fg, bg, n) => {\n const arr = new Array(256);\n const step = (bgGray - fgGray) / n;\n const newStart = fg / 255;\n const newStep = (bg - fg) / (255 * n);\n let prev = 0;\n for (let i = 0; i <= n; i++) {\n const k = Math.round(fgGray + i * step);\n const value = newStart + i * newStep;\n for (let j = prev; j <= k; j++) {\n arr[j] = value;\n }\n prev = k + 1;\n }\n for (let i = prev; i < 256; i++) {\n arr[i] = arr[prev - 1];\n }\n return arr.join(\",\");\n };\n const id = `g_${this.#docId}_hcm_highlight_filter`;\n const filter = this.#hcmHighlightFilter = this.#createFilter(id);\n this.#addGrayConversion(filter);\n this.#addTransferMapConversion(getSteps(newFgRGB[0], newBgRGB[0], 5), getSteps(newFgRGB[1], newBgRGB[1], 5), getSteps(newFgRGB[2], newBgRGB[2], 5), filter);\n this.#hcmHighlightUrl = `url(#${id})`;\n return this.#hcmHighlightUrl;\n }\n destroy(keepHCM = false) {\n if (keepHCM && (this.#hcmUrl || this.#hcmHighlightUrl)) {\n return;\n }\n if (this.#_defs) {\n this.#_defs.parentNode.parentNode.remove();\n this.#_defs = null;\n }\n if (this.#_cache) {\n this.#_cache.clear();\n this.#_cache = null;\n }\n this.#id = 0;\n }\n #addGrayConversion(filter) {\n const feColorMatrix = this.#document.createElementNS(SVG_NS, \"feColorMatrix\");\n feColorMatrix.setAttribute(\"type\", \"matrix\");\n feColorMatrix.setAttribute(\"values\", \"0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0 0 0 1 0\");\n filter.append(feColorMatrix);\n }\n #createFilter(id) {\n const filter = this.#document.createElementNS(SVG_NS, \"filter\");\n filter.setAttribute(\"color-interpolation-filters\", \"sRGB\");\n filter.setAttribute(\"id\", id);\n this.#defs.append(filter);\n return filter;\n }\n #appendFeFunc(feComponentTransfer, func, table) {\n const feFunc = this.#document.createElementNS(SVG_NS, func);\n feFunc.setAttribute(\"type\", \"discrete\");\n feFunc.setAttribute(\"tableValues\", table);\n feComponentTransfer.append(feFunc);\n }\n #addTransferMapConversion(rTable, gTable, bTable, filter) {\n const feComponentTransfer = this.#document.createElementNS(SVG_NS, \"feComponentTransfer\");\n filter.append(feComponentTransfer);\n this.#appendFeFunc(feComponentTransfer, \"feFuncR\", rTable);\n this.#appendFeFunc(feComponentTransfer, \"feFuncG\", gTable);\n this.#appendFeFunc(feComponentTransfer, \"feFuncB\", bTable);\n }\n #getRGB(color) {\n this.#defs.style.color = color;\n return getRGB(getComputedStyle(this.#defs).getPropertyValue(\"color\"));\n }\n}\nexports.DOMFilterFactory = DOMFilterFactory;\nclass DOMCanvasFactory extends _base_factory.BaseCanvasFactory {\n constructor({\n ownerDocument = globalThis.document\n } = {}) {\n super();\n this._document = ownerDocument;\n }\n _createCanvas(width, height) {\n const canvas = this._document.createElement(\"canvas\");\n canvas.width = width;\n canvas.height = height;\n return canvas;\n }\n}\nexports.DOMCanvasFactory = DOMCanvasFactory;\nasync function fetchData(url, asTypedArray = false) {\n if (isValidFetchUrl(url, document.baseURI)) {\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error(response.statusText);\n }\n return asTypedArray ? new Uint8Array(await response.arrayBuffer()) : (0, _util.stringToBytes)(await response.text());\n }\n return new Promise((resolve, reject) => {\n const request = new XMLHttpRequest();\n request.open(\"GET\", url, true);\n if (asTypedArray) {\n request.responseType = \"arraybuffer\";\n }\n request.onreadystatechange = () => {\n if (request.readyState !== XMLHttpRequest.DONE) {\n return;\n }\n if (request.status === 200 || request.status === 0) {\n let data;\n if (asTypedArray && request.response) {\n data = new Uint8Array(request.response);\n } else if (!asTypedArray && request.responseText) {\n data = (0, _util.stringToBytes)(request.responseText);\n }\n if (data) {\n resolve(data);\n return;\n }\n }\n reject(new Error(request.statusText));\n };\n request.send(null);\n });\n}\nclass DOMCMapReaderFactory extends _base_factory.BaseCMapReaderFactory {\n _fetchData(url, compressionType) {\n return fetchData(url, this.isCompressed).then(data => {\n return {\n cMapData: data,\n compressionType\n };\n });\n }\n}\nexports.DOMCMapReaderFactory = DOMCMapReaderFactory;\nclass DOMStandardFontDataFactory extends _base_factory.BaseStandardFontDataFactory {\n _fetchData(url) {\n return fetchData(url, true);\n }\n}\nexports.DOMStandardFontDataFactory = DOMStandardFontDataFactory;\nclass DOMSVGFactory extends _base_factory.BaseSVGFactory {\n _createSVG(type) {\n return document.createElementNS(SVG_NS, type);\n }\n}\nexports.DOMSVGFactory = DOMSVGFactory;\nclass PageViewport {\n constructor({\n viewBox,\n scale,\n rotation,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false\n }) {\n this.viewBox = viewBox;\n this.scale = scale;\n this.rotation = rotation;\n this.offsetX = offsetX;\n this.offsetY = offsetY;\n const centerX = (viewBox[2] + viewBox[0]) / 2;\n const centerY = (viewBox[3] + viewBox[1]) / 2;\n let rotateA, rotateB, rotateC, rotateD;\n rotation %= 360;\n if (rotation < 0) {\n rotation += 360;\n }\n switch (rotation) {\n case 180:\n rotateA = -1;\n rotateB = 0;\n rotateC = 0;\n rotateD = 1;\n break;\n case 90:\n rotateA = 0;\n rotateB = 1;\n rotateC = 1;\n rotateD = 0;\n break;\n case 270:\n rotateA = 0;\n rotateB = -1;\n rotateC = -1;\n rotateD = 0;\n break;\n case 0:\n rotateA = 1;\n rotateB = 0;\n rotateC = 0;\n rotateD = -1;\n break;\n default:\n throw new Error(\"PageViewport: Invalid rotation, must be a multiple of 90 degrees.\");\n }\n if (dontFlip) {\n rotateC = -rotateC;\n rotateD = -rotateD;\n }\n let offsetCanvasX, offsetCanvasY;\n let width, height;\n if (rotateA === 0) {\n offsetCanvasX = Math.abs(centerY - viewBox[1]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerX - viewBox[0]) * scale + offsetY;\n width = (viewBox[3] - viewBox[1]) * scale;\n height = (viewBox[2] - viewBox[0]) * scale;\n } else {\n offsetCanvasX = Math.abs(centerX - viewBox[0]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerY - viewBox[1]) * scale + offsetY;\n width = (viewBox[2] - viewBox[0]) * scale;\n height = (viewBox[3] - viewBox[1]) * scale;\n }\n this.transform = [rotateA * scale, rotateB * scale, rotateC * scale, rotateD * scale, offsetCanvasX - rotateA * scale * centerX - rotateC * scale * centerY, offsetCanvasY - rotateB * scale * centerX - rotateD * scale * centerY];\n this.width = width;\n this.height = height;\n }\n get rawDims() {\n const {\n viewBox\n } = this;\n return (0, _util.shadow)(this, \"rawDims\", {\n pageWidth: viewBox[2] - viewBox[0],\n pageHeight: viewBox[3] - viewBox[1],\n pageX: viewBox[0],\n pageY: viewBox[1]\n });\n }\n clone({\n scale = this.scale,\n rotation = this.rotation,\n offsetX = this.offsetX,\n offsetY = this.offsetY,\n dontFlip = false\n } = {}) {\n return new PageViewport({\n viewBox: this.viewBox.slice(),\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip\n });\n }\n convertToViewportPoint(x, y) {\n return _util.Util.applyTransform([x, y], this.transform);\n }\n convertToViewportRectangle(rect) {\n const topLeft = _util.Util.applyTransform([rect[0], rect[1]], this.transform);\n const bottomRight = _util.Util.applyTransform([rect[2], rect[3]], this.transform);\n return [topLeft[0], topLeft[1], bottomRight[0], bottomRight[1]];\n }\n convertToPdfPoint(x, y) {\n return _util.Util.applyInverseTransform([x, y], this.transform);\n }\n}\nexports.PageViewport = PageViewport;\nclass RenderingCancelledException extends _util.BaseException {\n constructor(msg, extraDelay = 0) {\n super(msg, \"RenderingCancelledException\");\n this.extraDelay = extraDelay;\n }\n}\nexports.RenderingCancelledException = RenderingCancelledException;\nfunction isDataScheme(url) {\n const ii = url.length;\n let i = 0;\n while (i < ii && url[i].trim() === \"\") {\n i++;\n }\n return url.substring(i, i + 5).toLowerCase() === \"data:\";\n}\nfunction isPdfFile(filename) {\n return typeof filename === \"string\" && /\\.pdf$/i.test(filename);\n}\nfunction getFilenameFromUrl(url, onlyStripPath = false) {\n if (!onlyStripPath) {\n [url] = url.split(/[#?]/, 1);\n }\n return url.substring(url.lastIndexOf(\"/\") + 1);\n}\nfunction getPdfFilenameFromUrl(url, defaultFilename = \"document.pdf\") {\n if (typeof url !== \"string\") {\n return defaultFilename;\n }\n if (isDataScheme(url)) {\n (0, _util.warn)('getPdfFilenameFromUrl: ignore \"data:\"-URL for performance reasons.');\n return defaultFilename;\n }\n const reURI = /^(?:(?:[^:]+:)?\\/\\/[^/]+)?([^?#]*)(\\?[^#]*)?(#.*)?$/;\n const reFilename = /[^/?#=]+\\.pdf\\b(?!.*\\.pdf\\b)/i;\n const splitURI = reURI.exec(url);\n let suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || reFilename.exec(splitURI[3]);\n if (suggestedFilename) {\n suggestedFilename = suggestedFilename[0];\n if (suggestedFilename.includes(\"%\")) {\n try {\n suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0];\n } catch {}\n }\n }\n return suggestedFilename || defaultFilename;\n}\nclass StatTimer {\n started = Object.create(null);\n times = [];\n time(name) {\n if (name in this.started) {\n (0, _util.warn)(`Timer is already running for ${name}`);\n }\n this.started[name] = Date.now();\n }\n timeEnd(name) {\n if (!(name in this.started)) {\n (0, _util.warn)(`Timer has not been started for ${name}`);\n }\n this.times.push({\n name,\n start: this.started[name],\n end: Date.now()\n });\n delete this.started[name];\n }\n toString() {\n const outBuf = [];\n let longest = 0;\n for (const {\n name\n } of this.times) {\n longest = Math.max(name.length, longest);\n }\n for (const {\n name,\n start,\n end\n } of this.times) {\n outBuf.push(`${name.padEnd(longest)} ${end - start}ms\\n`);\n }\n return outBuf.join(\"\");\n }\n}\nexports.StatTimer = StatTimer;\nfunction isValidFetchUrl(url, baseUrl) {\n try {\n const {\n protocol\n } = baseUrl ? new URL(url, baseUrl) : new URL(url);\n return protocol === \"http:\" || protocol === \"https:\";\n } catch {\n return false;\n }\n}\nfunction noContextMenu(e) {\n e.preventDefault();\n}\nfunction loadScript(src, removeScriptElement = false) {\n return new Promise((resolve, reject) => {\n const script = document.createElement(\"script\");\n script.src = src;\n script.onload = function (evt) {\n if (removeScriptElement) {\n script.remove();\n }\n resolve(evt);\n };\n script.onerror = function () {\n reject(new Error(`Cannot load script at: ${script.src}`));\n };\n (document.head || document.documentElement).append(script);\n });\n}\nfunction deprecated(details) {\n console.log(\"Deprecated API usage: \" + details);\n}\nlet pdfDateStringRegex;\nclass PDFDateString {\n static toDateObject(input) {\n if (!input || typeof input !== \"string\") {\n return null;\n }\n pdfDateStringRegex ||= new RegExp(\"^D:\" + \"(\\\\d{4})\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"([Z|+|-])?\" + \"(\\\\d{2})?\" + \"'?\" + \"(\\\\d{2})?\" + \"'?\");\n const matches = pdfDateStringRegex.exec(input);\n if (!matches) {\n return null;\n }\n const year = parseInt(matches[1], 10);\n let month = parseInt(matches[2], 10);\n month = month >= 1 && month <= 12 ? month - 1 : 0;\n let day = parseInt(matches[3], 10);\n day = day >= 1 && day <= 31 ? day : 1;\n let hour = parseInt(matches[4], 10);\n hour = hour >= 0 && hour <= 23 ? hour : 0;\n let minute = parseInt(matches[5], 10);\n minute = minute >= 0 && minute <= 59 ? minute : 0;\n let second = parseInt(matches[6], 10);\n second = second >= 0 && second <= 59 ? second : 0;\n const universalTimeRelation = matches[7] || \"Z\";\n let offsetHour = parseInt(matches[8], 10);\n offsetHour = offsetHour >= 0 && offsetHour <= 23 ? offsetHour : 0;\n let offsetMinute = parseInt(matches[9], 10) || 0;\n offsetMinute = offsetMinute >= 0 && offsetMinute <= 59 ? offsetMinute : 0;\n if (universalTimeRelation === \"-\") {\n hour += offsetHour;\n minute += offsetMinute;\n } else if (universalTimeRelation === \"+\") {\n hour -= offsetHour;\n minute -= offsetMinute;\n }\n return new Date(Date.UTC(year, month, day, hour, minute, second));\n }\n}\nexports.PDFDateString = PDFDateString;\nfunction getXfaPageViewport(xfaPage, {\n scale = 1,\n rotation = 0\n}) {\n const {\n width,\n height\n } = xfaPage.attributes.style;\n const viewBox = [0, 0, parseInt(width), parseInt(height)];\n return new PageViewport({\n viewBox,\n scale,\n rotation\n });\n}\nfunction getRGB(color) {\n if (color.startsWith(\"#\")) {\n const colorRGB = parseInt(color.slice(1), 16);\n return [(colorRGB & 0xff0000) >> 16, (colorRGB & 0x00ff00) >> 8, colorRGB & 0x0000ff];\n }\n if (color.startsWith(\"rgb(\")) {\n return color.slice(4, -1).split(\",\").map(x => parseInt(x));\n }\n if (color.startsWith(\"rgba(\")) {\n return color.slice(5, -1).split(\",\").map(x => parseInt(x)).slice(0, 3);\n }\n (0, _util.warn)(`Not a valid color format: \"${color}\"`);\n return [0, 0, 0];\n}\nfunction getColorValues(colors) {\n const span = document.createElement(\"span\");\n span.style.visibility = \"hidden\";\n document.body.append(span);\n for (const name of colors.keys()) {\n span.style.color = name;\n const computedColor = window.getComputedStyle(span).color;\n colors.set(name, getRGB(computedColor));\n }\n span.remove();\n}\nfunction getCurrentTransform(ctx) {\n const {\n a,\n b,\n c,\n d,\n e,\n f\n } = ctx.getTransform();\n return [a, b, c, d, e, f];\n}\nfunction getCurrentTransformInverse(ctx) {\n const {\n a,\n b,\n c,\n d,\n e,\n f\n } = ctx.getTransform().invertSelf();\n return [a, b, c, d, e, f];\n}\nfunction setLayerDimensions(div, viewport, mustFlip = false, mustRotate = true) {\n if (viewport instanceof PageViewport) {\n const {\n pageWidth,\n pageHeight\n } = viewport.rawDims;\n const {\n style\n } = div;\n const useRound = _util.FeatureTest.isCSSRoundSupported;\n const w = `var(--scale-factor) * ${pageWidth}px`,\n h = `var(--scale-factor) * ${pageHeight}px`;\n const widthStr = useRound ? `round(${w}, 1px)` : `calc(${w})`,\n heightStr = useRound ? `round(${h}, 1px)` : `calc(${h})`;\n if (!mustFlip || viewport.rotation % 180 === 0) {\n style.width = widthStr;\n style.height = heightStr;\n } else {\n style.width = heightStr;\n style.height = widthStr;\n }\n }\n if (mustRotate) {\n div.setAttribute(\"data-main-rotation\", viewport.rotation);\n }\n}\n\n/***/ }),\n/* 7 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.BaseStandardFontDataFactory = exports.BaseSVGFactory = exports.BaseFilterFactory = exports.BaseCanvasFactory = exports.BaseCMapReaderFactory = void 0;\nvar _util = __w_pdfjs_require__(1);\nclass BaseFilterFactory {\n constructor() {\n if (this.constructor === BaseFilterFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseFilterFactory.\");\n }\n }\n addFilter(maps) {\n return \"none\";\n }\n addHCMFilter(fgColor, bgColor) {\n return \"none\";\n }\n addHighlightHCMFilter(fgColor, bgColor, newFgColor, newBgColor) {\n return \"none\";\n }\n destroy(keepHCM = false) {}\n}\nexports.BaseFilterFactory = BaseFilterFactory;\nclass BaseCanvasFactory {\n constructor() {\n if (this.constructor === BaseCanvasFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseCanvasFactory.\");\n }\n }\n create(width, height) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n const canvas = this._createCanvas(width, height);\n return {\n canvas,\n context: canvas.getContext(\"2d\")\n };\n }\n reset(canvasAndContext, width, height) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n canvasAndContext.canvas.width = width;\n canvasAndContext.canvas.height = height;\n }\n destroy(canvasAndContext) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n canvasAndContext.canvas.width = 0;\n canvasAndContext.canvas.height = 0;\n canvasAndContext.canvas = null;\n canvasAndContext.context = null;\n }\n _createCanvas(width, height) {\n (0, _util.unreachable)(\"Abstract method `_createCanvas` called.\");\n }\n}\nexports.BaseCanvasFactory = BaseCanvasFactory;\nclass BaseCMapReaderFactory {\n constructor({\n baseUrl = null,\n isCompressed = true\n }) {\n if (this.constructor === BaseCMapReaderFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseCMapReaderFactory.\");\n }\n this.baseUrl = baseUrl;\n this.isCompressed = isCompressed;\n }\n async fetch({\n name\n }) {\n if (!this.baseUrl) {\n throw new Error('The CMap \"baseUrl\" parameter must be specified, ensure that ' + 'the \"cMapUrl\" and \"cMapPacked\" API parameters are provided.');\n }\n if (!name) {\n throw new Error(\"CMap name must be specified.\");\n }\n const url = this.baseUrl + name + (this.isCompressed ? \".bcmap\" : \"\");\n const compressionType = this.isCompressed ? _util.CMapCompressionType.BINARY : _util.CMapCompressionType.NONE;\n return this._fetchData(url, compressionType).catch(reason => {\n throw new Error(`Unable to load ${this.isCompressed ? \"binary \" : \"\"}CMap at: ${url}`);\n });\n }\n _fetchData(url, compressionType) {\n (0, _util.unreachable)(\"Abstract method `_fetchData` called.\");\n }\n}\nexports.BaseCMapReaderFactory = BaseCMapReaderFactory;\nclass BaseStandardFontDataFactory {\n constructor({\n baseUrl = null\n }) {\n if (this.constructor === BaseStandardFontDataFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseStandardFontDataFactory.\");\n }\n this.baseUrl = baseUrl;\n }\n async fetch({\n filename\n }) {\n if (!this.baseUrl) {\n throw new Error('The standard font \"baseUrl\" parameter must be specified, ensure that ' + 'the \"standardFontDataUrl\" API parameter is provided.');\n }\n if (!filename) {\n throw new Error(\"Font filename must be specified.\");\n }\n const url = `${this.baseUrl}${filename}`;\n return this._fetchData(url).catch(reason => {\n throw new Error(`Unable to load font data at: ${url}`);\n });\n }\n _fetchData(url) {\n (0, _util.unreachable)(\"Abstract method `_fetchData` called.\");\n }\n}\nexports.BaseStandardFontDataFactory = BaseStandardFontDataFactory;\nclass BaseSVGFactory {\n constructor() {\n if (this.constructor === BaseSVGFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseSVGFactory.\");\n }\n }\n create(width, height, skipDimensions = false) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid SVG dimensions\");\n }\n const svg = this._createSVG(\"svg:svg\");\n svg.setAttribute(\"version\", \"1.1\");\n if (!skipDimensions) {\n svg.setAttribute(\"width\", `${width}px`);\n svg.setAttribute(\"height\", `${height}px`);\n }\n svg.setAttribute(\"preserveAspectRatio\", \"none\");\n svg.setAttribute(\"viewBox\", `0 0 ${width} ${height}`);\n return svg;\n }\n createElement(type) {\n if (typeof type !== \"string\") {\n throw new Error(\"Invalid SVG element type\");\n }\n return this._createSVG(type);\n }\n _createSVG(type) {\n (0, _util.unreachable)(\"Abstract method `_createSVG` called.\");\n }\n}\nexports.BaseSVGFactory = BaseSVGFactory;\n\n/***/ }),\n/* 8 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.MurmurHash3_64 = void 0;\nvar _util = __w_pdfjs_require__(1);\nconst SEED = 0xc3d2e1f0;\nconst MASK_HIGH = 0xffff0000;\nconst MASK_LOW = 0xffff;\nclass MurmurHash3_64 {\n constructor(seed) {\n this.h1 = seed ? seed & 0xffffffff : SEED;\n this.h2 = seed ? seed & 0xffffffff : SEED;\n }\n update(input) {\n let data, length;\n if (typeof input === \"string\") {\n data = new Uint8Array(input.length * 2);\n length = 0;\n for (let i = 0, ii = input.length; i < ii; i++) {\n const code = input.charCodeAt(i);\n if (code <= 0xff) {\n data[length++] = code;\n } else {\n data[length++] = code >>> 8;\n data[length++] = code & 0xff;\n }\n }\n } else if ((0, _util.isArrayBuffer)(input)) {\n data = input.slice();\n length = data.byteLength;\n } else {\n throw new Error(\"Wrong data format in MurmurHash3_64_update. \" + \"Input must be a string or array.\");\n }\n const blockCounts = length >> 2;\n const tailLength = length - blockCounts * 4;\n const dataUint32 = new Uint32Array(data.buffer, 0, blockCounts);\n let k1 = 0,\n k2 = 0;\n let h1 = this.h1,\n h2 = this.h2;\n const C1 = 0xcc9e2d51,\n C2 = 0x1b873593;\n const C1_LOW = C1 & MASK_LOW,\n C2_LOW = C2 & MASK_LOW;\n for (let i = 0; i < blockCounts; i++) {\n if (i & 1) {\n k1 = dataUint32[i];\n k1 = k1 * C1 & MASK_HIGH | k1 * C1_LOW & MASK_LOW;\n k1 = k1 << 15 | k1 >>> 17;\n k1 = k1 * C2 & MASK_HIGH | k1 * C2_LOW & MASK_LOW;\n h1 ^= k1;\n h1 = h1 << 13 | h1 >>> 19;\n h1 = h1 * 5 + 0xe6546b64;\n } else {\n k2 = dataUint32[i];\n k2 = k2 * C1 & MASK_HIGH | k2 * C1_LOW & MASK_LOW;\n k2 = k2 << 15 | k2 >>> 17;\n k2 = k2 * C2 & MASK_HIGH | k2 * C2_LOW & MASK_LOW;\n h2 ^= k2;\n h2 = h2 << 13 | h2 >>> 19;\n h2 = h2 * 5 + 0xe6546b64;\n }\n }\n k1 = 0;\n switch (tailLength) {\n case 3:\n k1 ^= data[blockCounts * 4 + 2] << 16;\n case 2:\n k1 ^= data[blockCounts * 4 + 1] << 8;\n case 1:\n k1 ^= data[blockCounts * 4];\n k1 = k1 * C1 & MASK_HIGH | k1 * C1_LOW & MASK_LOW;\n k1 = k1 << 15 | k1 >>> 17;\n k1 = k1 * C2 & MASK_HIGH | k1 * C2_LOW & MASK_LOW;\n if (blockCounts & 1) {\n h1 ^= k1;\n } else {\n h2 ^= k1;\n }\n }\n this.h1 = h1;\n this.h2 = h2;\n }\n hexdigest() {\n let h1 = this.h1,\n h2 = this.h2;\n h1 ^= h2 >>> 1;\n h1 = h1 * 0xed558ccd & MASK_HIGH | h1 * 0x8ccd & MASK_LOW;\n h2 = h2 * 0xff51afd7 & MASK_HIGH | ((h2 << 16 | h1 >>> 16) * 0xafd7ed55 & MASK_HIGH) >>> 16;\n h1 ^= h2 >>> 1;\n h1 = h1 * 0x1a85ec53 & MASK_HIGH | h1 * 0xec53 & MASK_LOW;\n h2 = h2 * 0xc4ceb9fe & MASK_HIGH | ((h2 << 16 | h1 >>> 16) * 0xb9fe1a85 & MASK_HIGH) >>> 16;\n h1 ^= h2 >>> 1;\n return (h1 >>> 0).toString(16).padStart(8, \"0\") + (h2 >>> 0).toString(16).padStart(8, \"0\");\n }\n}\nexports.MurmurHash3_64 = MurmurHash3_64;\n\n/***/ }),\n/* 9 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FontLoader = exports.FontFaceObject = void 0;\nvar _util = __w_pdfjs_require__(1);\nclass FontLoader {\n #systemFonts = new Set();\n constructor({\n ownerDocument = globalThis.document,\n styleElement = null\n }) {\n this._document = ownerDocument;\n this.nativeFontFaces = new Set();\n this.styleElement = null;\n this.loadingRequests = [];\n this.loadTestFontId = 0;\n }\n addNativeFontFace(nativeFontFace) {\n this.nativeFontFaces.add(nativeFontFace);\n this._document.fonts.add(nativeFontFace);\n }\n removeNativeFontFace(nativeFontFace) {\n this.nativeFontFaces.delete(nativeFontFace);\n this._document.fonts.delete(nativeFontFace);\n }\n insertRule(rule) {\n if (!this.styleElement) {\n this.styleElement = this._document.createElement(\"style\");\n this._document.documentElement.getElementsByTagName(\"head\")[0].append(this.styleElement);\n }\n const styleSheet = this.styleElement.sheet;\n styleSheet.insertRule(rule, styleSheet.cssRules.length);\n }\n clear() {\n for (const nativeFontFace of this.nativeFontFaces) {\n this._document.fonts.delete(nativeFontFace);\n }\n this.nativeFontFaces.clear();\n this.#systemFonts.clear();\n if (this.styleElement) {\n this.styleElement.remove();\n this.styleElement = null;\n }\n }\n async loadSystemFont(info) {\n if (!info || this.#systemFonts.has(info.loadedName)) {\n return;\n }\n (0, _util.assert)(!this.disableFontFace, \"loadSystemFont shouldn't be called when `disableFontFace` is set.\");\n if (this.isFontLoadingAPISupported) {\n const {\n loadedName,\n src,\n style\n } = info;\n const fontFace = new FontFace(loadedName, src, style);\n this.addNativeFontFace(fontFace);\n try {\n await fontFace.load();\n this.#systemFonts.add(loadedName);\n } catch {\n (0, _util.warn)(`Cannot load system font: ${info.baseFontName}, installing it could help to improve PDF rendering.`);\n this.removeNativeFontFace(fontFace);\n }\n return;\n }\n (0, _util.unreachable)(\"Not implemented: loadSystemFont without the Font Loading API.\");\n }\n async bind(font) {\n if (font.attached || font.missingFile && !font.systemFontInfo) {\n return;\n }\n font.attached = true;\n if (font.systemFontInfo) {\n await this.loadSystemFont(font.systemFontInfo);\n return;\n }\n if (this.isFontLoadingAPISupported) {\n const nativeFontFace = font.createNativeFontFace();\n if (nativeFontFace) {\n this.addNativeFontFace(nativeFontFace);\n try {\n await nativeFontFace.loaded;\n } catch (ex) {\n (0, _util.warn)(`Failed to load font '${nativeFontFace.family}': '${ex}'.`);\n font.disableFontFace = true;\n throw ex;\n }\n }\n return;\n }\n const rule = font.createFontFaceRule();\n if (rule) {\n this.insertRule(rule);\n if (this.isSyncFontLoadingSupported) {\n return;\n }\n await new Promise(resolve => {\n const request = this._queueLoadingCallback(resolve);\n this._prepareFontLoadEvent(font, request);\n });\n }\n }\n get isFontLoadingAPISupported() {\n const hasFonts = !!this._document?.fonts;\n return (0, _util.shadow)(this, \"isFontLoadingAPISupported\", hasFonts);\n }\n get isSyncFontLoadingSupported() {\n let supported = false;\n if (_util.isNodeJS) {\n supported = true;\n } else if (typeof navigator !== \"undefined\" && /Mozilla\\/5.0.*?rv:\\d+.*? Gecko/.test(navigator.userAgent)) {\n supported = true;\n }\n return (0, _util.shadow)(this, \"isSyncFontLoadingSupported\", supported);\n }\n _queueLoadingCallback(callback) {\n function completeRequest() {\n (0, _util.assert)(!request.done, \"completeRequest() cannot be called twice.\");\n request.done = true;\n while (loadingRequests.length > 0 && loadingRequests[0].done) {\n const otherRequest = loadingRequests.shift();\n setTimeout(otherRequest.callback, 0);\n }\n }\n const {\n loadingRequests\n } = this;\n const request = {\n done: false,\n complete: completeRequest,\n callback\n };\n loadingRequests.push(request);\n return request;\n }\n get _loadTestFont() {\n const testFont = atob(\"T1RUTwALAIAAAwAwQ0ZGIDHtZg4AAAOYAAAAgUZGVE1lkzZwAAAEHAAAABxHREVGABQA\" + \"FQAABDgAAAAeT1MvMlYNYwkAAAEgAAAAYGNtYXABDQLUAAACNAAAAUJoZWFk/xVFDQAA\" + \"ALwAAAA2aGhlYQdkA+oAAAD0AAAAJGhtdHgD6AAAAAAEWAAAAAZtYXhwAAJQAAAAARgA\" + \"AAAGbmFtZVjmdH4AAAGAAAAAsXBvc3T/hgAzAAADeAAAACAAAQAAAAEAALZRFsRfDzz1\" + \"AAsD6AAAAADOBOTLAAAAAM4KHDwAAAAAA+gDIQAAAAgAAgAAAAAAAAABAAADIQAAAFoD\" + \"6AAAAAAD6AABAAAAAAAAAAAAAAAAAAAAAQAAUAAAAgAAAAQD6AH0AAUAAAKKArwAAACM\" + \"AooCvAAAAeAAMQECAAACAAYJAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFBmRWQAwAAuAC4D\" + \"IP84AFoDIQAAAAAAAQAAAAAAAAAAACAAIAABAAAADgCuAAEAAAAAAAAAAQAAAAEAAAAA\" + \"AAEAAQAAAAEAAAAAAAIAAQAAAAEAAAAAAAMAAQAAAAEAAAAAAAQAAQAAAAEAAAAAAAUA\" + \"AQAAAAEAAAAAAAYAAQAAAAMAAQQJAAAAAgABAAMAAQQJAAEAAgABAAMAAQQJAAIAAgAB\" + \"AAMAAQQJAAMAAgABAAMAAQQJAAQAAgABAAMAAQQJAAUAAgABAAMAAQQJAAYAAgABWABY\" + \"AAAAAAAAAwAAAAMAAAAcAAEAAAAAADwAAwABAAAAHAAEACAAAAAEAAQAAQAAAC7//wAA\" + \"AC7////TAAEAAAAAAAABBgAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/gwAyAAAAAQAAAAAAAAAAAAAAAAAA\" + \"AAABAAQEAAEBAQJYAAEBASH4DwD4GwHEAvgcA/gXBIwMAYuL+nz5tQXkD5j3CBLnEQAC\" + \"AQEBIVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYAAABAQAADwACAQEEE/t3\" + \"Dov6fAH6fAT+fPp8+nwHDosMCvm1Cvm1DAz6fBQAAAAAAAABAAAAAMmJbzEAAAAAzgTj\" + \"FQAAAADOBOQpAAEAAAAAAAAADAAUAAQAAAABAAAAAgABAAAAAAAAAAAD6AAAAAAAAA==\");\n return (0, _util.shadow)(this, \"_loadTestFont\", testFont);\n }\n _prepareFontLoadEvent(font, request) {\n function int32(data, offset) {\n return data.charCodeAt(offset) << 24 | data.charCodeAt(offset + 1) << 16 | data.charCodeAt(offset + 2) << 8 | data.charCodeAt(offset + 3) & 0xff;\n }\n function spliceString(s, offset, remove, insert) {\n const chunk1 = s.substring(0, offset);\n const chunk2 = s.substring(offset + remove);\n return chunk1 + insert + chunk2;\n }\n let i, ii;\n const canvas = this._document.createElement(\"canvas\");\n canvas.width = 1;\n canvas.height = 1;\n const ctx = canvas.getContext(\"2d\");\n let called = 0;\n function isFontReady(name, callback) {\n if (++called > 30) {\n (0, _util.warn)(\"Load test font never loaded.\");\n callback();\n return;\n }\n ctx.font = \"30px \" + name;\n ctx.fillText(\".\", 0, 20);\n const imageData = ctx.getImageData(0, 0, 1, 1);\n if (imageData.data[3] > 0) {\n callback();\n return;\n }\n setTimeout(isFontReady.bind(null, name, callback));\n }\n const loadTestFontId = `lt${Date.now()}${this.loadTestFontId++}`;\n let data = this._loadTestFont;\n const COMMENT_OFFSET = 976;\n data = spliceString(data, COMMENT_OFFSET, loadTestFontId.length, loadTestFontId);\n const CFF_CHECKSUM_OFFSET = 16;\n const XXXX_VALUE = 0x58585858;\n let checksum = int32(data, CFF_CHECKSUM_OFFSET);\n for (i = 0, ii = loadTestFontId.length - 3; i < ii; i += 4) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId, i) | 0;\n }\n if (i < loadTestFontId.length) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId + \"XXX\", i) | 0;\n }\n data = spliceString(data, CFF_CHECKSUM_OFFSET, 4, (0, _util.string32)(checksum));\n const url = `url(data:font/opentype;base64,${btoa(data)});`;\n const rule = `@font-face {font-family:\"${loadTestFontId}\";src:${url}}`;\n this.insertRule(rule);\n const div = this._document.createElement(\"div\");\n div.style.visibility = \"hidden\";\n div.style.width = div.style.height = \"10px\";\n div.style.position = \"absolute\";\n div.style.top = div.style.left = \"0px\";\n for (const name of [font.loadedName, loadTestFontId]) {\n const span = this._document.createElement(\"span\");\n span.textContent = \"Hi\";\n span.style.fontFamily = name;\n div.append(span);\n }\n this._document.body.append(div);\n isFontReady(loadTestFontId, () => {\n div.remove();\n request.complete();\n });\n }\n}\nexports.FontLoader = FontLoader;\nclass FontFaceObject {\n constructor(translatedData, {\n isEvalSupported = true,\n disableFontFace = false,\n ignoreErrors = false,\n inspectFont = null\n }) {\n this.compiledGlyphs = Object.create(null);\n for (const i in translatedData) {\n this[i] = translatedData[i];\n }\n this.isEvalSupported = isEvalSupported !== false;\n this.disableFontFace = disableFontFace === true;\n this.ignoreErrors = ignoreErrors === true;\n this._inspectFont = inspectFont;\n }\n createNativeFontFace() {\n if (!this.data || this.disableFontFace) {\n return null;\n }\n let nativeFontFace;\n if (!this.cssFontInfo) {\n nativeFontFace = new FontFace(this.loadedName, this.data, {});\n } else {\n const css = {\n weight: this.cssFontInfo.fontWeight\n };\n if (this.cssFontInfo.italicAngle) {\n css.style = `oblique ${this.cssFontInfo.italicAngle}deg`;\n }\n nativeFontFace = new FontFace(this.cssFontInfo.fontFamily, this.data, css);\n }\n this._inspectFont?.(this);\n return nativeFontFace;\n }\n createFontFaceRule() {\n if (!this.data || this.disableFontFace) {\n return null;\n }\n const data = (0, _util.bytesToString)(this.data);\n const url = `url(data:${this.mimetype};base64,${btoa(data)});`;\n let rule;\n if (!this.cssFontInfo) {\n rule = `@font-face {font-family:\"${this.loadedName}\";src:${url}}`;\n } else {\n let css = `font-weight: ${this.cssFontInfo.fontWeight};`;\n if (this.cssFontInfo.italicAngle) {\n css += `font-style: oblique ${this.cssFontInfo.italicAngle}deg;`;\n }\n rule = `@font-face {font-family:\"${this.cssFontInfo.fontFamily}\";${css}src:${url}}`;\n }\n this._inspectFont?.(this, url);\n return rule;\n }\n getPathGenerator(objs, character) {\n if (this.compiledGlyphs[character] !== undefined) {\n return this.compiledGlyphs[character];\n }\n let cmds;\n try {\n cmds = objs.get(this.loadedName + \"_path_\" + character);\n } catch (ex) {\n if (!this.ignoreErrors) {\n throw ex;\n }\n (0, _util.warn)(`getPathGenerator - ignoring character: \"${ex}\".`);\n return this.compiledGlyphs[character] = function (c, size) {};\n }\n if (this.isEvalSupported && _util.FeatureTest.isEvalSupported) {\n const jsBuf = [];\n for (const current of cmds) {\n const args = current.args !== undefined ? current.args.join(\",\") : \"\";\n jsBuf.push(\"c.\", current.cmd, \"(\", args, \");\\n\");\n }\n return this.compiledGlyphs[character] = new Function(\"c\", \"size\", jsBuf.join(\"\"));\n }\n return this.compiledGlyphs[character] = function (c, size) {\n for (const current of cmds) {\n if (current.cmd === \"scale\") {\n current.args = [size, -size];\n }\n c[current.cmd].apply(c, current.args);\n }\n };\n }\n}\nexports.FontFaceObject = FontFaceObject;\n\n/***/ }),\n/* 10 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.NodeStandardFontDataFactory = exports.NodeFilterFactory = exports.NodeCanvasFactory = exports.NodeCMapReaderFactory = void 0;\nvar _base_factory = __w_pdfjs_require__(7);\nvar _util = __w_pdfjs_require__(1);\n;\n;\nconst fetchData = function (url) {\n return new Promise((resolve, reject) => {\n const fs = require(\"fs\");\n fs.readFile(url, (error, data) => {\n if (error || !data) {\n reject(new Error(error));\n return;\n }\n resolve(new Uint8Array(data));\n });\n });\n};\nclass NodeFilterFactory extends _base_factory.BaseFilterFactory {}\nexports.NodeFilterFactory = NodeFilterFactory;\nclass NodeCanvasFactory extends _base_factory.BaseCanvasFactory {\n _createCanvas(width, height) {\n const Canvas = require(\"canvas\");\n return Canvas.createCanvas(width, height);\n }\n}\nexports.NodeCanvasFactory = NodeCanvasFactory;\nclass NodeCMapReaderFactory extends _base_factory.BaseCMapReaderFactory {\n _fetchData(url, compressionType) {\n return fetchData(url).then(data => {\n return {\n cMapData: data,\n compressionType\n };\n });\n }\n}\nexports.NodeCMapReaderFactory = NodeCMapReaderFactory;\nclass NodeStandardFontDataFactory extends _base_factory.BaseStandardFontDataFactory {\n _fetchData(url) {\n return fetchData(url);\n }\n}\nexports.NodeStandardFontDataFactory = NodeStandardFontDataFactory;\n\n/***/ }),\n/* 11 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CanvasGraphics = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _pattern_helper = __w_pdfjs_require__(12);\nvar _image_utils = __w_pdfjs_require__(13);\nconst MIN_FONT_SIZE = 16;\nconst MAX_FONT_SIZE = 100;\nconst MAX_GROUP_SIZE = 4096;\nconst EXECUTION_TIME = 15;\nconst EXECUTION_STEPS = 10;\nconst MAX_SIZE_TO_COMPILE = 1000;\nconst FULL_CHUNK_HEIGHT = 16;\nfunction mirrorContextOperations(ctx, destCtx) {\n if (ctx._removeMirroring) {\n throw new Error(\"Context is already forwarding operations.\");\n }\n ctx.__originalSave = ctx.save;\n ctx.__originalRestore = ctx.restore;\n ctx.__originalRotate = ctx.rotate;\n ctx.__originalScale = ctx.scale;\n ctx.__originalTranslate = ctx.translate;\n ctx.__originalTransform = ctx.transform;\n ctx.__originalSetTransform = ctx.setTransform;\n ctx.__originalResetTransform = ctx.resetTransform;\n ctx.__originalClip = ctx.clip;\n ctx.__originalMoveTo = ctx.moveTo;\n ctx.__originalLineTo = ctx.lineTo;\n ctx.__originalBezierCurveTo = ctx.bezierCurveTo;\n ctx.__originalRect = ctx.rect;\n ctx.__originalClosePath = ctx.closePath;\n ctx.__originalBeginPath = ctx.beginPath;\n ctx._removeMirroring = () => {\n ctx.save = ctx.__originalSave;\n ctx.restore = ctx.__originalRestore;\n ctx.rotate = ctx.__originalRotate;\n ctx.scale = ctx.__originalScale;\n ctx.translate = ctx.__originalTranslate;\n ctx.transform = ctx.__originalTransform;\n ctx.setTransform = ctx.__originalSetTransform;\n ctx.resetTransform = ctx.__originalResetTransform;\n ctx.clip = ctx.__originalClip;\n ctx.moveTo = ctx.__originalMoveTo;\n ctx.lineTo = ctx.__originalLineTo;\n ctx.bezierCurveTo = ctx.__originalBezierCurveTo;\n ctx.rect = ctx.__originalRect;\n ctx.closePath = ctx.__originalClosePath;\n ctx.beginPath = ctx.__originalBeginPath;\n delete ctx._removeMirroring;\n };\n ctx.save = function ctxSave() {\n destCtx.save();\n this.__originalSave();\n };\n ctx.restore = function ctxRestore() {\n destCtx.restore();\n this.__originalRestore();\n };\n ctx.translate = function ctxTranslate(x, y) {\n destCtx.translate(x, y);\n this.__originalTranslate(x, y);\n };\n ctx.scale = function ctxScale(x, y) {\n destCtx.scale(x, y);\n this.__originalScale(x, y);\n };\n ctx.transform = function ctxTransform(a, b, c, d, e, f) {\n destCtx.transform(a, b, c, d, e, f);\n this.__originalTransform(a, b, c, d, e, f);\n };\n ctx.setTransform = function ctxSetTransform(a, b, c, d, e, f) {\n destCtx.setTransform(a, b, c, d, e, f);\n this.__originalSetTransform(a, b, c, d, e, f);\n };\n ctx.resetTransform = function ctxResetTransform() {\n destCtx.resetTransform();\n this.__originalResetTransform();\n };\n ctx.rotate = function ctxRotate(angle) {\n destCtx.rotate(angle);\n this.__originalRotate(angle);\n };\n ctx.clip = function ctxRotate(rule) {\n destCtx.clip(rule);\n this.__originalClip(rule);\n };\n ctx.moveTo = function (x, y) {\n destCtx.moveTo(x, y);\n this.__originalMoveTo(x, y);\n };\n ctx.lineTo = function (x, y) {\n destCtx.lineTo(x, y);\n this.__originalLineTo(x, y);\n };\n ctx.bezierCurveTo = function (cp1x, cp1y, cp2x, cp2y, x, y) {\n destCtx.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);\n this.__originalBezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);\n };\n ctx.rect = function (x, y, width, height) {\n destCtx.rect(x, y, width, height);\n this.__originalRect(x, y, width, height);\n };\n ctx.closePath = function () {\n destCtx.closePath();\n this.__originalClosePath();\n };\n ctx.beginPath = function () {\n destCtx.beginPath();\n this.__originalBeginPath();\n };\n}\nclass CachedCanvases {\n constructor(canvasFactory) {\n this.canvasFactory = canvasFactory;\n this.cache = Object.create(null);\n }\n getCanvas(id, width, height) {\n let canvasEntry;\n if (this.cache[id] !== undefined) {\n canvasEntry = this.cache[id];\n this.canvasFactory.reset(canvasEntry, width, height);\n } else {\n canvasEntry = this.canvasFactory.create(width, height);\n this.cache[id] = canvasEntry;\n }\n return canvasEntry;\n }\n delete(id) {\n delete this.cache[id];\n }\n clear() {\n for (const id in this.cache) {\n const canvasEntry = this.cache[id];\n this.canvasFactory.destroy(canvasEntry);\n delete this.cache[id];\n }\n }\n}\nfunction drawImageAtIntegerCoords(ctx, srcImg, srcX, srcY, srcW, srcH, destX, destY, destW, destH) {\n const [a, b, c, d, tx, ty] = (0, _display_utils.getCurrentTransform)(ctx);\n if (b === 0 && c === 0) {\n const tlX = destX * a + tx;\n const rTlX = Math.round(tlX);\n const tlY = destY * d + ty;\n const rTlY = Math.round(tlY);\n const brX = (destX + destW) * a + tx;\n const rWidth = Math.abs(Math.round(brX) - rTlX) || 1;\n const brY = (destY + destH) * d + ty;\n const rHeight = Math.abs(Math.round(brY) - rTlY) || 1;\n ctx.setTransform(Math.sign(a), 0, 0, Math.sign(d), rTlX, rTlY);\n ctx.drawImage(srcImg, srcX, srcY, srcW, srcH, 0, 0, rWidth, rHeight);\n ctx.setTransform(a, b, c, d, tx, ty);\n return [rWidth, rHeight];\n }\n if (a === 0 && d === 0) {\n const tlX = destY * c + tx;\n const rTlX = Math.round(tlX);\n const tlY = destX * b + ty;\n const rTlY = Math.round(tlY);\n const brX = (destY + destH) * c + tx;\n const rWidth = Math.abs(Math.round(brX) - rTlX) || 1;\n const brY = (destX + destW) * b + ty;\n const rHeight = Math.abs(Math.round(brY) - rTlY) || 1;\n ctx.setTransform(0, Math.sign(b), Math.sign(c), 0, rTlX, rTlY);\n ctx.drawImage(srcImg, srcX, srcY, srcW, srcH, 0, 0, rHeight, rWidth);\n ctx.setTransform(a, b, c, d, tx, ty);\n return [rHeight, rWidth];\n }\n ctx.drawImage(srcImg, srcX, srcY, srcW, srcH, destX, destY, destW, destH);\n const scaleX = Math.hypot(a, b);\n const scaleY = Math.hypot(c, d);\n return [scaleX * destW, scaleY * destH];\n}\nfunction compileType3Glyph(imgData) {\n const {\n width,\n height\n } = imgData;\n if (width > MAX_SIZE_TO_COMPILE || height > MAX_SIZE_TO_COMPILE) {\n return null;\n }\n const POINT_TO_PROCESS_LIMIT = 1000;\n const POINT_TYPES = new Uint8Array([0, 2, 4, 0, 1, 0, 5, 4, 8, 10, 0, 8, 0, 2, 1, 0]);\n const width1 = width + 1;\n let points = new Uint8Array(width1 * (height + 1));\n let i, j, j0;\n const lineSize = width + 7 & ~7;\n let data = new Uint8Array(lineSize * height),\n pos = 0;\n for (const elem of imgData.data) {\n let mask = 128;\n while (mask > 0) {\n data[pos++] = elem & mask ? 0 : 255;\n mask >>= 1;\n }\n }\n let count = 0;\n pos = 0;\n if (data[pos] !== 0) {\n points[0] = 1;\n ++count;\n }\n for (j = 1; j < width; j++) {\n if (data[pos] !== data[pos + 1]) {\n points[j] = data[pos] ? 2 : 1;\n ++count;\n }\n pos++;\n }\n if (data[pos] !== 0) {\n points[j] = 2;\n ++count;\n }\n for (i = 1; i < height; i++) {\n pos = i * lineSize;\n j0 = i * width1;\n if (data[pos - lineSize] !== data[pos]) {\n points[j0] = data[pos] ? 1 : 8;\n ++count;\n }\n let sum = (data[pos] ? 4 : 0) + (data[pos - lineSize] ? 8 : 0);\n for (j = 1; j < width; j++) {\n sum = (sum >> 2) + (data[pos + 1] ? 4 : 0) + (data[pos - lineSize + 1] ? 8 : 0);\n if (POINT_TYPES[sum]) {\n points[j0 + j] = POINT_TYPES[sum];\n ++count;\n }\n pos++;\n }\n if (data[pos - lineSize] !== data[pos]) {\n points[j0 + j] = data[pos] ? 2 : 4;\n ++count;\n }\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n }\n pos = lineSize * (height - 1);\n j0 = i * width1;\n if (data[pos] !== 0) {\n points[j0] = 8;\n ++count;\n }\n for (j = 1; j < width; j++) {\n if (data[pos] !== data[pos + 1]) {\n points[j0 + j] = data[pos] ? 4 : 8;\n ++count;\n }\n pos++;\n }\n if (data[pos] !== 0) {\n points[j0 + j] = 4;\n ++count;\n }\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n const steps = new Int32Array([0, width1, -1, 0, -width1, 0, 0, 0, 1]);\n const path = new Path2D();\n for (i = 0; count && i <= height; i++) {\n let p = i * width1;\n const end = p + width;\n while (p < end && !points[p]) {\n p++;\n }\n if (p === end) {\n continue;\n }\n path.moveTo(p % width1, i);\n const p0 = p;\n let type = points[p];\n do {\n const step = steps[type];\n do {\n p += step;\n } while (!points[p]);\n const pp = points[p];\n if (pp !== 5 && pp !== 10) {\n type = pp;\n points[p] = 0;\n } else {\n type = pp & 0x33 * type >> 4;\n points[p] &= type >> 2 | type << 2;\n }\n path.lineTo(p % width1, p / width1 | 0);\n if (!points[p]) {\n --count;\n }\n } while (p0 !== p);\n --i;\n }\n data = null;\n points = null;\n const drawOutline = function (c) {\n c.save();\n c.scale(1 / width, -1 / height);\n c.translate(0, -height);\n c.fill(path);\n c.beginPath();\n c.restore();\n };\n return drawOutline;\n}\nclass CanvasExtraState {\n constructor(width, height) {\n this.alphaIsShape = false;\n this.fontSize = 0;\n this.fontSizeScale = 1;\n this.textMatrix = _util.IDENTITY_MATRIX;\n this.textMatrixScale = 1;\n this.fontMatrix = _util.FONT_IDENTITY_MATRIX;\n this.leading = 0;\n this.x = 0;\n this.y = 0;\n this.lineX = 0;\n this.lineY = 0;\n this.charSpacing = 0;\n this.wordSpacing = 0;\n this.textHScale = 1;\n this.textRenderingMode = _util.TextRenderingMode.FILL;\n this.textRise = 0;\n this.fillColor = \"#000000\";\n this.strokeColor = \"#000000\";\n this.patternFill = false;\n this.fillAlpha = 1;\n this.strokeAlpha = 1;\n this.lineWidth = 1;\n this.activeSMask = null;\n this.transferMaps = \"none\";\n this.startNewPathAndClipBox([0, 0, width, height]);\n }\n clone() {\n const clone = Object.create(this);\n clone.clipBox = this.clipBox.slice();\n return clone;\n }\n setCurrentPoint(x, y) {\n this.x = x;\n this.y = y;\n }\n updatePathMinMax(transform, x, y) {\n [x, y] = _util.Util.applyTransform([x, y], transform);\n this.minX = Math.min(this.minX, x);\n this.minY = Math.min(this.minY, y);\n this.maxX = Math.max(this.maxX, x);\n this.maxY = Math.max(this.maxY, y);\n }\n updateRectMinMax(transform, rect) {\n const p1 = _util.Util.applyTransform(rect, transform);\n const p2 = _util.Util.applyTransform(rect.slice(2), transform);\n this.minX = Math.min(this.minX, p1[0], p2[0]);\n this.minY = Math.min(this.minY, p1[1], p2[1]);\n this.maxX = Math.max(this.maxX, p1[0], p2[0]);\n this.maxY = Math.max(this.maxY, p1[1], p2[1]);\n }\n updateScalingPathMinMax(transform, minMax) {\n _util.Util.scaleMinMax(transform, minMax);\n this.minX = Math.min(this.minX, minMax[0]);\n this.maxX = Math.max(this.maxX, minMax[1]);\n this.minY = Math.min(this.minY, minMax[2]);\n this.maxY = Math.max(this.maxY, minMax[3]);\n }\n updateCurvePathMinMax(transform, x0, y0, x1, y1, x2, y2, x3, y3, minMax) {\n const box = _util.Util.bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3);\n if (minMax) {\n minMax[0] = Math.min(minMax[0], box[0], box[2]);\n minMax[1] = Math.max(minMax[1], box[0], box[2]);\n minMax[2] = Math.min(minMax[2], box[1], box[3]);\n minMax[3] = Math.max(minMax[3], box[1], box[3]);\n return;\n }\n this.updateRectMinMax(transform, box);\n }\n getPathBoundingBox(pathType = _pattern_helper.PathType.FILL, transform = null) {\n const box = [this.minX, this.minY, this.maxX, this.maxY];\n if (pathType === _pattern_helper.PathType.STROKE) {\n if (!transform) {\n (0, _util.unreachable)(\"Stroke bounding box must include transform.\");\n }\n const scale = _util.Util.singularValueDecompose2dScale(transform);\n const xStrokePad = scale[0] * this.lineWidth / 2;\n const yStrokePad = scale[1] * this.lineWidth / 2;\n box[0] -= xStrokePad;\n box[1] -= yStrokePad;\n box[2] += xStrokePad;\n box[3] += yStrokePad;\n }\n return box;\n }\n updateClipFromPath() {\n const intersect = _util.Util.intersect(this.clipBox, this.getPathBoundingBox());\n this.startNewPathAndClipBox(intersect || [0, 0, 0, 0]);\n }\n isEmptyClip() {\n return this.minX === Infinity;\n }\n startNewPathAndClipBox(box) {\n this.clipBox = box;\n this.minX = Infinity;\n this.minY = Infinity;\n this.maxX = 0;\n this.maxY = 0;\n }\n getClippedPathBoundingBox(pathType = _pattern_helper.PathType.FILL, transform = null) {\n return _util.Util.intersect(this.clipBox, this.getPathBoundingBox(pathType, transform));\n }\n}\nfunction putBinaryImageData(ctx, imgData) {\n if (typeof ImageData !== \"undefined\" && imgData instanceof ImageData) {\n ctx.putImageData(imgData, 0, 0);\n return;\n }\n const height = imgData.height,\n width = imgData.width;\n const partialChunkHeight = height % FULL_CHUNK_HEIGHT;\n const fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT;\n const totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1;\n const chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT);\n let srcPos = 0,\n destPos;\n const src = imgData.data;\n const dest = chunkImgData.data;\n let i, j, thisChunkHeight, elemsInThisChunk;\n if (imgData.kind === _util.ImageKind.GRAYSCALE_1BPP) {\n const srcLength = src.byteLength;\n const dest32 = new Uint32Array(dest.buffer, 0, dest.byteLength >> 2);\n const dest32DataLength = dest32.length;\n const fullSrcDiff = width + 7 >> 3;\n const white = 0xffffffff;\n const black = _util.FeatureTest.isLittleEndian ? 0xff000000 : 0x000000ff;\n for (i = 0; i < totalChunks; i++) {\n thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n destPos = 0;\n for (j = 0; j < thisChunkHeight; j++) {\n const srcDiff = srcLength - srcPos;\n let k = 0;\n const kEnd = srcDiff > fullSrcDiff ? width : srcDiff * 8 - 7;\n const kEndUnrolled = kEnd & ~7;\n let mask = 0;\n let srcByte = 0;\n for (; k < kEndUnrolled; k += 8) {\n srcByte = src[srcPos++];\n dest32[destPos++] = srcByte & 128 ? white : black;\n dest32[destPos++] = srcByte & 64 ? white : black;\n dest32[destPos++] = srcByte & 32 ? white : black;\n dest32[destPos++] = srcByte & 16 ? white : black;\n dest32[destPos++] = srcByte & 8 ? white : black;\n dest32[destPos++] = srcByte & 4 ? white : black;\n dest32[destPos++] = srcByte & 2 ? white : black;\n dest32[destPos++] = srcByte & 1 ? white : black;\n }\n for (; k < kEnd; k++) {\n if (mask === 0) {\n srcByte = src[srcPos++];\n mask = 128;\n }\n dest32[destPos++] = srcByte & mask ? white : black;\n mask >>= 1;\n }\n }\n while (destPos < dest32DataLength) {\n dest32[destPos++] = 0;\n }\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n } else if (imgData.kind === _util.ImageKind.RGBA_32BPP) {\n j = 0;\n elemsInThisChunk = width * FULL_CHUNK_HEIGHT * 4;\n for (i = 0; i < fullChunks; i++) {\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\n srcPos += elemsInThisChunk;\n ctx.putImageData(chunkImgData, 0, j);\n j += FULL_CHUNK_HEIGHT;\n }\n if (i < totalChunks) {\n elemsInThisChunk = width * partialChunkHeight * 4;\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\n ctx.putImageData(chunkImgData, 0, j);\n }\n } else if (imgData.kind === _util.ImageKind.RGB_24BPP) {\n thisChunkHeight = FULL_CHUNK_HEIGHT;\n elemsInThisChunk = width * thisChunkHeight;\n for (i = 0; i < totalChunks; i++) {\n if (i >= fullChunks) {\n thisChunkHeight = partialChunkHeight;\n elemsInThisChunk = width * thisChunkHeight;\n }\n destPos = 0;\n for (j = elemsInThisChunk; j--;) {\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = 255;\n }\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n } else {\n throw new Error(`bad image kind: ${imgData.kind}`);\n }\n}\nfunction putBinaryImageMask(ctx, imgData) {\n if (imgData.bitmap) {\n ctx.drawImage(imgData.bitmap, 0, 0);\n return;\n }\n const height = imgData.height,\n width = imgData.width;\n const partialChunkHeight = height % FULL_CHUNK_HEIGHT;\n const fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT;\n const totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1;\n const chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT);\n let srcPos = 0;\n const src = imgData.data;\n const dest = chunkImgData.data;\n for (let i = 0; i < totalChunks; i++) {\n const thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n ({\n srcPos\n } = (0, _image_utils.convertBlackAndWhiteToRGBA)({\n src,\n srcPos,\n dest,\n width,\n height: thisChunkHeight,\n nonBlackColor: 0\n }));\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n}\nfunction copyCtxState(sourceCtx, destCtx) {\n const properties = [\"strokeStyle\", \"fillStyle\", \"fillRule\", \"globalAlpha\", \"lineWidth\", \"lineCap\", \"lineJoin\", \"miterLimit\", \"globalCompositeOperation\", \"font\", \"filter\"];\n for (const property of properties) {\n if (sourceCtx[property] !== undefined) {\n destCtx[property] = sourceCtx[property];\n }\n }\n if (sourceCtx.setLineDash !== undefined) {\n destCtx.setLineDash(sourceCtx.getLineDash());\n destCtx.lineDashOffset = sourceCtx.lineDashOffset;\n }\n}\nfunction resetCtxToDefault(ctx) {\n ctx.strokeStyle = ctx.fillStyle = \"#000000\";\n ctx.fillRule = \"nonzero\";\n ctx.globalAlpha = 1;\n ctx.lineWidth = 1;\n ctx.lineCap = \"butt\";\n ctx.lineJoin = \"miter\";\n ctx.miterLimit = 10;\n ctx.globalCompositeOperation = \"source-over\";\n ctx.font = \"10px sans-serif\";\n if (ctx.setLineDash !== undefined) {\n ctx.setLineDash([]);\n ctx.lineDashOffset = 0;\n }\n if (!_util.isNodeJS) {\n const {\n filter\n } = ctx;\n if (filter !== \"none\" && filter !== \"\") {\n ctx.filter = \"none\";\n }\n }\n}\nfunction composeSMaskBackdrop(bytes, r0, g0, b0) {\n const length = bytes.length;\n for (let i = 3; i < length; i += 4) {\n const alpha = bytes[i];\n if (alpha === 0) {\n bytes[i - 3] = r0;\n bytes[i - 2] = g0;\n bytes[i - 1] = b0;\n } else if (alpha < 255) {\n const alpha_ = 255 - alpha;\n bytes[i - 3] = bytes[i - 3] * alpha + r0 * alpha_ >> 8;\n bytes[i - 2] = bytes[i - 2] * alpha + g0 * alpha_ >> 8;\n bytes[i - 1] = bytes[i - 1] * alpha + b0 * alpha_ >> 8;\n }\n }\n}\nfunction composeSMaskAlpha(maskData, layerData, transferMap) {\n const length = maskData.length;\n const scale = 1 / 255;\n for (let i = 3; i < length; i += 4) {\n const alpha = transferMap ? transferMap[maskData[i]] : maskData[i];\n layerData[i] = layerData[i] * alpha * scale | 0;\n }\n}\nfunction composeSMaskLuminosity(maskData, layerData, transferMap) {\n const length = maskData.length;\n for (let i = 3; i < length; i += 4) {\n const y = maskData[i - 3] * 77 + maskData[i - 2] * 152 + maskData[i - 1] * 28;\n layerData[i] = transferMap ? layerData[i] * transferMap[y >> 8] >> 8 : layerData[i] * y >> 16;\n }\n}\nfunction genericComposeSMask(maskCtx, layerCtx, width, height, subtype, backdrop, transferMap, layerOffsetX, layerOffsetY, maskOffsetX, maskOffsetY) {\n const hasBackdrop = !!backdrop;\n const r0 = hasBackdrop ? backdrop[0] : 0;\n const g0 = hasBackdrop ? backdrop[1] : 0;\n const b0 = hasBackdrop ? backdrop[2] : 0;\n const composeFn = subtype === \"Luminosity\" ? composeSMaskLuminosity : composeSMaskAlpha;\n const PIXELS_TO_PROCESS = 1048576;\n const chunkSize = Math.min(height, Math.ceil(PIXELS_TO_PROCESS / width));\n for (let row = 0; row < height; row += chunkSize) {\n const chunkHeight = Math.min(chunkSize, height - row);\n const maskData = maskCtx.getImageData(layerOffsetX - maskOffsetX, row + (layerOffsetY - maskOffsetY), width, chunkHeight);\n const layerData = layerCtx.getImageData(layerOffsetX, row + layerOffsetY, width, chunkHeight);\n if (hasBackdrop) {\n composeSMaskBackdrop(maskData.data, r0, g0, b0);\n }\n composeFn(maskData.data, layerData.data, transferMap);\n layerCtx.putImageData(layerData, layerOffsetX, row + layerOffsetY);\n }\n}\nfunction composeSMask(ctx, smask, layerCtx, layerBox) {\n const layerOffsetX = layerBox[0];\n const layerOffsetY = layerBox[1];\n const layerWidth = layerBox[2] - layerOffsetX;\n const layerHeight = layerBox[3] - layerOffsetY;\n if (layerWidth === 0 || layerHeight === 0) {\n return;\n }\n genericComposeSMask(smask.context, layerCtx, layerWidth, layerHeight, smask.subtype, smask.backdrop, smask.transferMap, layerOffsetX, layerOffsetY, smask.offsetX, smask.offsetY);\n ctx.save();\n ctx.globalAlpha = 1;\n ctx.globalCompositeOperation = \"source-over\";\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.drawImage(layerCtx.canvas, 0, 0);\n ctx.restore();\n}\nfunction getImageSmoothingEnabled(transform, interpolate) {\n const scale = _util.Util.singularValueDecompose2dScale(transform);\n scale[0] = Math.fround(scale[0]);\n scale[1] = Math.fround(scale[1]);\n const actualScale = Math.fround((globalThis.devicePixelRatio || 1) * _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS);\n if (interpolate !== undefined) {\n return interpolate;\n } else if (scale[0] <= actualScale || scale[1] <= actualScale) {\n return true;\n }\n return false;\n}\nconst LINE_CAP_STYLES = [\"butt\", \"round\", \"square\"];\nconst LINE_JOIN_STYLES = [\"miter\", \"round\", \"bevel\"];\nconst NORMAL_CLIP = {};\nconst EO_CLIP = {};\nclass CanvasGraphics {\n constructor(canvasCtx, commonObjs, objs, canvasFactory, filterFactory, {\n optionalContentConfig,\n markedContentStack = null\n }, annotationCanvasMap, pageColors) {\n this.ctx = canvasCtx;\n this.current = new CanvasExtraState(this.ctx.canvas.width, this.ctx.canvas.height);\n this.stateStack = [];\n this.pendingClip = null;\n this.pendingEOFill = false;\n this.res = null;\n this.xobjs = null;\n this.commonObjs = commonObjs;\n this.objs = objs;\n this.canvasFactory = canvasFactory;\n this.filterFactory = filterFactory;\n this.groupStack = [];\n this.processingType3 = null;\n this.baseTransform = null;\n this.baseTransformStack = [];\n this.groupLevel = 0;\n this.smaskStack = [];\n this.smaskCounter = 0;\n this.tempSMask = null;\n this.suspendedCtx = null;\n this.contentVisible = true;\n this.markedContentStack = markedContentStack || [];\n this.optionalContentConfig = optionalContentConfig;\n this.cachedCanvases = new CachedCanvases(this.canvasFactory);\n this.cachedPatterns = new Map();\n this.annotationCanvasMap = annotationCanvasMap;\n this.viewportScale = 1;\n this.outputScaleX = 1;\n this.outputScaleY = 1;\n this.pageColors = pageColors;\n this._cachedScaleForStroking = [-1, 0];\n this._cachedGetSinglePixelWidth = null;\n this._cachedBitmapsMap = new Map();\n }\n getObject(data, fallback = null) {\n if (typeof data === \"string\") {\n return data.startsWith(\"g_\") ? this.commonObjs.get(data) : this.objs.get(data);\n }\n return fallback;\n }\n beginDrawing({\n transform,\n viewport,\n transparency = false,\n background = null\n }) {\n const width = this.ctx.canvas.width;\n const height = this.ctx.canvas.height;\n const savedFillStyle = this.ctx.fillStyle;\n this.ctx.fillStyle = background || \"#ffffff\";\n this.ctx.fillRect(0, 0, width, height);\n this.ctx.fillStyle = savedFillStyle;\n if (transparency) {\n const transparentCanvas = this.cachedCanvases.getCanvas(\"transparent\", width, height);\n this.compositeCtx = this.ctx;\n this.transparentCanvas = transparentCanvas.canvas;\n this.ctx = transparentCanvas.context;\n this.ctx.save();\n this.ctx.transform(...(0, _display_utils.getCurrentTransform)(this.compositeCtx));\n }\n this.ctx.save();\n resetCtxToDefault(this.ctx);\n if (transform) {\n this.ctx.transform(...transform);\n this.outputScaleX = transform[0];\n this.outputScaleY = transform[0];\n }\n this.ctx.transform(...viewport.transform);\n this.viewportScale = viewport.scale;\n this.baseTransform = (0, _display_utils.getCurrentTransform)(this.ctx);\n }\n executeOperatorList(operatorList, executionStartIdx, continueCallback, stepper) {\n const argsArray = operatorList.argsArray;\n const fnArray = operatorList.fnArray;\n let i = executionStartIdx || 0;\n const argsArrayLen = argsArray.length;\n if (argsArrayLen === i) {\n return i;\n }\n const chunkOperations = argsArrayLen - i > EXECUTION_STEPS && typeof continueCallback === \"function\";\n const endTime = chunkOperations ? Date.now() + EXECUTION_TIME : 0;\n let steps = 0;\n const commonObjs = this.commonObjs;\n const objs = this.objs;\n let fnId;\n while (true) {\n if (stepper !== undefined && i === stepper.nextBreakPoint) {\n stepper.breakIt(i, continueCallback);\n return i;\n }\n fnId = fnArray[i];\n if (fnId !== _util.OPS.dependency) {\n this[fnId].apply(this, argsArray[i]);\n } else {\n for (const depObjId of argsArray[i]) {\n const objsPool = depObjId.startsWith(\"g_\") ? commonObjs : objs;\n if (!objsPool.has(depObjId)) {\n objsPool.get(depObjId, continueCallback);\n return i;\n }\n }\n }\n i++;\n if (i === argsArrayLen) {\n return i;\n }\n if (chunkOperations && ++steps > EXECUTION_STEPS) {\n if (Date.now() > endTime) {\n continueCallback();\n return i;\n }\n steps = 0;\n }\n }\n }\n #restoreInitialState() {\n while (this.stateStack.length || this.inSMaskMode) {\n this.restore();\n }\n this.ctx.restore();\n if (this.transparentCanvas) {\n this.ctx = this.compositeCtx;\n this.ctx.save();\n this.ctx.setTransform(1, 0, 0, 1, 0, 0);\n this.ctx.drawImage(this.transparentCanvas, 0, 0);\n this.ctx.restore();\n this.transparentCanvas = null;\n }\n }\n endDrawing() {\n this.#restoreInitialState();\n this.cachedCanvases.clear();\n this.cachedPatterns.clear();\n for (const cache of this._cachedBitmapsMap.values()) {\n for (const canvas of cache.values()) {\n if (typeof HTMLCanvasElement !== \"undefined\" && canvas instanceof HTMLCanvasElement) {\n canvas.width = canvas.height = 0;\n }\n }\n cache.clear();\n }\n this._cachedBitmapsMap.clear();\n this.#drawFilter();\n }\n #drawFilter() {\n if (this.pageColors) {\n const hcmFilterId = this.filterFactory.addHCMFilter(this.pageColors.foreground, this.pageColors.background);\n if (hcmFilterId !== \"none\") {\n const savedFilter = this.ctx.filter;\n this.ctx.filter = hcmFilterId;\n this.ctx.drawImage(this.ctx.canvas, 0, 0);\n this.ctx.filter = savedFilter;\n }\n }\n }\n _scaleImage(img, inverseTransform) {\n const width = img.width;\n const height = img.height;\n let widthScale = Math.max(Math.hypot(inverseTransform[0], inverseTransform[1]), 1);\n let heightScale = Math.max(Math.hypot(inverseTransform[2], inverseTransform[3]), 1);\n let paintWidth = width,\n paintHeight = height;\n let tmpCanvasId = \"prescale1\";\n let tmpCanvas, tmpCtx;\n while (widthScale > 2 && paintWidth > 1 || heightScale > 2 && paintHeight > 1) {\n let newWidth = paintWidth,\n newHeight = paintHeight;\n if (widthScale > 2 && paintWidth > 1) {\n newWidth = paintWidth >= 16384 ? Math.floor(paintWidth / 2) - 1 || 1 : Math.ceil(paintWidth / 2);\n widthScale /= paintWidth / newWidth;\n }\n if (heightScale > 2 && paintHeight > 1) {\n newHeight = paintHeight >= 16384 ? Math.floor(paintHeight / 2) - 1 || 1 : Math.ceil(paintHeight) / 2;\n heightScale /= paintHeight / newHeight;\n }\n tmpCanvas = this.cachedCanvases.getCanvas(tmpCanvasId, newWidth, newHeight);\n tmpCtx = tmpCanvas.context;\n tmpCtx.clearRect(0, 0, newWidth, newHeight);\n tmpCtx.drawImage(img, 0, 0, paintWidth, paintHeight, 0, 0, newWidth, newHeight);\n img = tmpCanvas.canvas;\n paintWidth = newWidth;\n paintHeight = newHeight;\n tmpCanvasId = tmpCanvasId === \"prescale1\" ? \"prescale2\" : \"prescale1\";\n }\n return {\n img,\n paintWidth,\n paintHeight\n };\n }\n _createMaskCanvas(img) {\n const ctx = this.ctx;\n const {\n width,\n height\n } = img;\n const fillColor = this.current.fillColor;\n const isPatternFill = this.current.patternFill;\n const currentTransform = (0, _display_utils.getCurrentTransform)(ctx);\n let cache, cacheKey, scaled, maskCanvas;\n if ((img.bitmap || img.data) && img.count > 1) {\n const mainKey = img.bitmap || img.data.buffer;\n cacheKey = JSON.stringify(isPatternFill ? currentTransform : [currentTransform.slice(0, 4), fillColor]);\n cache = this._cachedBitmapsMap.get(mainKey);\n if (!cache) {\n cache = new Map();\n this._cachedBitmapsMap.set(mainKey, cache);\n }\n const cachedImage = cache.get(cacheKey);\n if (cachedImage && !isPatternFill) {\n const offsetX = Math.round(Math.min(currentTransform[0], currentTransform[2]) + currentTransform[4]);\n const offsetY = Math.round(Math.min(currentTransform[1], currentTransform[3]) + currentTransform[5]);\n return {\n canvas: cachedImage,\n offsetX,\n offsetY\n };\n }\n scaled = cachedImage;\n }\n if (!scaled) {\n maskCanvas = this.cachedCanvases.getCanvas(\"maskCanvas\", width, height);\n putBinaryImageMask(maskCanvas.context, img);\n }\n let maskToCanvas = _util.Util.transform(currentTransform, [1 / width, 0, 0, -1 / height, 0, 0]);\n maskToCanvas = _util.Util.transform(maskToCanvas, [1, 0, 0, 1, 0, -height]);\n const cord1 = _util.Util.applyTransform([0, 0], maskToCanvas);\n const cord2 = _util.Util.applyTransform([width, height], maskToCanvas);\n const rect = _util.Util.normalizeRect([cord1[0], cord1[1], cord2[0], cord2[1]]);\n const drawnWidth = Math.round(rect[2] - rect[0]) || 1;\n const drawnHeight = Math.round(rect[3] - rect[1]) || 1;\n const fillCanvas = this.cachedCanvases.getCanvas(\"fillCanvas\", drawnWidth, drawnHeight);\n const fillCtx = fillCanvas.context;\n const offsetX = Math.min(cord1[0], cord2[0]);\n const offsetY = Math.min(cord1[1], cord2[1]);\n fillCtx.translate(-offsetX, -offsetY);\n fillCtx.transform(...maskToCanvas);\n if (!scaled) {\n scaled = this._scaleImage(maskCanvas.canvas, (0, _display_utils.getCurrentTransformInverse)(fillCtx));\n scaled = scaled.img;\n if (cache && isPatternFill) {\n cache.set(cacheKey, scaled);\n }\n }\n fillCtx.imageSmoothingEnabled = getImageSmoothingEnabled((0, _display_utils.getCurrentTransform)(fillCtx), img.interpolate);\n drawImageAtIntegerCoords(fillCtx, scaled, 0, 0, scaled.width, scaled.height, 0, 0, width, height);\n fillCtx.globalCompositeOperation = \"source-in\";\n const inverse = _util.Util.transform((0, _display_utils.getCurrentTransformInverse)(fillCtx), [1, 0, 0, 1, -offsetX, -offsetY]);\n fillCtx.fillStyle = isPatternFill ? fillColor.getPattern(ctx, this, inverse, _pattern_helper.PathType.FILL) : fillColor;\n fillCtx.fillRect(0, 0, width, height);\n if (cache && !isPatternFill) {\n this.cachedCanvases.delete(\"fillCanvas\");\n cache.set(cacheKey, fillCanvas.canvas);\n }\n return {\n canvas: fillCanvas.canvas,\n offsetX: Math.round(offsetX),\n offsetY: Math.round(offsetY)\n };\n }\n setLineWidth(width) {\n if (width !== this.current.lineWidth) {\n this._cachedScaleForStroking[0] = -1;\n }\n this.current.lineWidth = width;\n this.ctx.lineWidth = width;\n }\n setLineCap(style) {\n this.ctx.lineCap = LINE_CAP_STYLES[style];\n }\n setLineJoin(style) {\n this.ctx.lineJoin = LINE_JOIN_STYLES[style];\n }\n setMiterLimit(limit) {\n this.ctx.miterLimit = limit;\n }\n setDash(dashArray, dashPhase) {\n const ctx = this.ctx;\n if (ctx.setLineDash !== undefined) {\n ctx.setLineDash(dashArray);\n ctx.lineDashOffset = dashPhase;\n }\n }\n setRenderingIntent(intent) {}\n setFlatness(flatness) {}\n setGState(states) {\n for (const [key, value] of states) {\n switch (key) {\n case \"LW\":\n this.setLineWidth(value);\n break;\n case \"LC\":\n this.setLineCap(value);\n break;\n case \"LJ\":\n this.setLineJoin(value);\n break;\n case \"ML\":\n this.setMiterLimit(value);\n break;\n case \"D\":\n this.setDash(value[0], value[1]);\n break;\n case \"RI\":\n this.setRenderingIntent(value);\n break;\n case \"FL\":\n this.setFlatness(value);\n break;\n case \"Font\":\n this.setFont(value[0], value[1]);\n break;\n case \"CA\":\n this.current.strokeAlpha = value;\n break;\n case \"ca\":\n this.current.fillAlpha = value;\n this.ctx.globalAlpha = value;\n break;\n case \"BM\":\n this.ctx.globalCompositeOperation = value;\n break;\n case \"SMask\":\n this.current.activeSMask = value ? this.tempSMask : null;\n this.tempSMask = null;\n this.checkSMaskState();\n break;\n case \"TR\":\n this.ctx.filter = this.current.transferMaps = this.filterFactory.addFilter(value);\n break;\n }\n }\n }\n get inSMaskMode() {\n return !!this.suspendedCtx;\n }\n checkSMaskState() {\n const inSMaskMode = this.inSMaskMode;\n if (this.current.activeSMask && !inSMaskMode) {\n this.beginSMaskMode();\n } else if (!this.current.activeSMask && inSMaskMode) {\n this.endSMaskMode();\n }\n }\n beginSMaskMode() {\n if (this.inSMaskMode) {\n throw new Error(\"beginSMaskMode called while already in smask mode\");\n }\n const drawnWidth = this.ctx.canvas.width;\n const drawnHeight = this.ctx.canvas.height;\n const cacheId = \"smaskGroupAt\" + this.groupLevel;\n const scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight);\n this.suspendedCtx = this.ctx;\n this.ctx = scratchCanvas.context;\n const ctx = this.ctx;\n ctx.setTransform(...(0, _display_utils.getCurrentTransform)(this.suspendedCtx));\n copyCtxState(this.suspendedCtx, ctx);\n mirrorContextOperations(ctx, this.suspendedCtx);\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n }\n endSMaskMode() {\n if (!this.inSMaskMode) {\n throw new Error(\"endSMaskMode called while not in smask mode\");\n }\n this.ctx._removeMirroring();\n copyCtxState(this.ctx, this.suspendedCtx);\n this.ctx = this.suspendedCtx;\n this.suspendedCtx = null;\n }\n compose(dirtyBox) {\n if (!this.current.activeSMask) {\n return;\n }\n if (!dirtyBox) {\n dirtyBox = [0, 0, this.ctx.canvas.width, this.ctx.canvas.height];\n } else {\n dirtyBox[0] = Math.floor(dirtyBox[0]);\n dirtyBox[1] = Math.floor(dirtyBox[1]);\n dirtyBox[2] = Math.ceil(dirtyBox[2]);\n dirtyBox[3] = Math.ceil(dirtyBox[3]);\n }\n const smask = this.current.activeSMask;\n const suspendedCtx = this.suspendedCtx;\n composeSMask(suspendedCtx, smask, this.ctx, dirtyBox);\n this.ctx.save();\n this.ctx.setTransform(1, 0, 0, 1, 0, 0);\n this.ctx.clearRect(0, 0, this.ctx.canvas.width, this.ctx.canvas.height);\n this.ctx.restore();\n }\n save() {\n if (this.inSMaskMode) {\n copyCtxState(this.ctx, this.suspendedCtx);\n this.suspendedCtx.save();\n } else {\n this.ctx.save();\n }\n const old = this.current;\n this.stateStack.push(old);\n this.current = old.clone();\n }\n restore() {\n if (this.stateStack.length === 0 && this.inSMaskMode) {\n this.endSMaskMode();\n }\n if (this.stateStack.length !== 0) {\n this.current = this.stateStack.pop();\n if (this.inSMaskMode) {\n this.suspendedCtx.restore();\n copyCtxState(this.suspendedCtx, this.ctx);\n } else {\n this.ctx.restore();\n }\n this.checkSMaskState();\n this.pendingClip = null;\n this._cachedScaleForStroking[0] = -1;\n this._cachedGetSinglePixelWidth = null;\n }\n }\n transform(a, b, c, d, e, f) {\n this.ctx.transform(a, b, c, d, e, f);\n this._cachedScaleForStroking[0] = -1;\n this._cachedGetSinglePixelWidth = null;\n }\n constructPath(ops, args, minMax) {\n const ctx = this.ctx;\n const current = this.current;\n let x = current.x,\n y = current.y;\n let startX, startY;\n const currentTransform = (0, _display_utils.getCurrentTransform)(ctx);\n const isScalingMatrix = currentTransform[0] === 0 && currentTransform[3] === 0 || currentTransform[1] === 0 && currentTransform[2] === 0;\n const minMaxForBezier = isScalingMatrix ? minMax.slice(0) : null;\n for (let i = 0, j = 0, ii = ops.length; i < ii; i++) {\n switch (ops[i] | 0) {\n case _util.OPS.rectangle:\n x = args[j++];\n y = args[j++];\n const width = args[j++];\n const height = args[j++];\n const xw = x + width;\n const yh = y + height;\n ctx.moveTo(x, y);\n if (width === 0 || height === 0) {\n ctx.lineTo(xw, yh);\n } else {\n ctx.lineTo(xw, y);\n ctx.lineTo(xw, yh);\n ctx.lineTo(x, yh);\n }\n if (!isScalingMatrix) {\n current.updateRectMinMax(currentTransform, [x, y, xw, yh]);\n }\n ctx.closePath();\n break;\n case _util.OPS.moveTo:\n x = args[j++];\n y = args[j++];\n ctx.moveTo(x, y);\n if (!isScalingMatrix) {\n current.updatePathMinMax(currentTransform, x, y);\n }\n break;\n case _util.OPS.lineTo:\n x = args[j++];\n y = args[j++];\n ctx.lineTo(x, y);\n if (!isScalingMatrix) {\n current.updatePathMinMax(currentTransform, x, y);\n }\n break;\n case _util.OPS.curveTo:\n startX = x;\n startY = y;\n x = args[j + 4];\n y = args[j + 5];\n ctx.bezierCurveTo(args[j], args[j + 1], args[j + 2], args[j + 3], x, y);\n current.updateCurvePathMinMax(currentTransform, startX, startY, args[j], args[j + 1], args[j + 2], args[j + 3], x, y, minMaxForBezier);\n j += 6;\n break;\n case _util.OPS.curveTo2:\n startX = x;\n startY = y;\n ctx.bezierCurveTo(x, y, args[j], args[j + 1], args[j + 2], args[j + 3]);\n current.updateCurvePathMinMax(currentTransform, startX, startY, x, y, args[j], args[j + 1], args[j + 2], args[j + 3], minMaxForBezier);\n x = args[j + 2];\n y = args[j + 3];\n j += 4;\n break;\n case _util.OPS.curveTo3:\n startX = x;\n startY = y;\n x = args[j + 2];\n y = args[j + 3];\n ctx.bezierCurveTo(args[j], args[j + 1], x, y, x, y);\n current.updateCurvePathMinMax(currentTransform, startX, startY, args[j], args[j + 1], x, y, x, y, minMaxForBezier);\n j += 4;\n break;\n case _util.OPS.closePath:\n ctx.closePath();\n break;\n }\n }\n if (isScalingMatrix) {\n current.updateScalingPathMinMax(currentTransform, minMaxForBezier);\n }\n current.setCurrentPoint(x, y);\n }\n closePath() {\n this.ctx.closePath();\n }\n stroke(consumePath = true) {\n const ctx = this.ctx;\n const strokeColor = this.current.strokeColor;\n ctx.globalAlpha = this.current.strokeAlpha;\n if (this.contentVisible) {\n if (typeof strokeColor === \"object\" && strokeColor?.getPattern) {\n ctx.save();\n ctx.strokeStyle = strokeColor.getPattern(ctx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.STROKE);\n this.rescaleAndStroke(false);\n ctx.restore();\n } else {\n this.rescaleAndStroke(true);\n }\n }\n if (consumePath) {\n this.consumePath(this.current.getClippedPathBoundingBox());\n }\n ctx.globalAlpha = this.current.fillAlpha;\n }\n closeStroke() {\n this.closePath();\n this.stroke();\n }\n fill(consumePath = true) {\n const ctx = this.ctx;\n const fillColor = this.current.fillColor;\n const isPatternFill = this.current.patternFill;\n let needRestore = false;\n if (isPatternFill) {\n ctx.save();\n ctx.fillStyle = fillColor.getPattern(ctx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.FILL);\n needRestore = true;\n }\n const intersect = this.current.getClippedPathBoundingBox();\n if (this.contentVisible && intersect !== null) {\n if (this.pendingEOFill) {\n ctx.fill(\"evenodd\");\n this.pendingEOFill = false;\n } else {\n ctx.fill();\n }\n }\n if (needRestore) {\n ctx.restore();\n }\n if (consumePath) {\n this.consumePath(intersect);\n }\n }\n eoFill() {\n this.pendingEOFill = true;\n this.fill();\n }\n fillStroke() {\n this.fill(false);\n this.stroke(false);\n this.consumePath();\n }\n eoFillStroke() {\n this.pendingEOFill = true;\n this.fillStroke();\n }\n closeFillStroke() {\n this.closePath();\n this.fillStroke();\n }\n closeEOFillStroke() {\n this.pendingEOFill = true;\n this.closePath();\n this.fillStroke();\n }\n endPath() {\n this.consumePath();\n }\n clip() {\n this.pendingClip = NORMAL_CLIP;\n }\n eoClip() {\n this.pendingClip = EO_CLIP;\n }\n beginText() {\n this.current.textMatrix = _util.IDENTITY_MATRIX;\n this.current.textMatrixScale = 1;\n this.current.x = this.current.lineX = 0;\n this.current.y = this.current.lineY = 0;\n }\n endText() {\n const paths = this.pendingTextPaths;\n const ctx = this.ctx;\n if (paths === undefined) {\n ctx.beginPath();\n return;\n }\n ctx.save();\n ctx.beginPath();\n for (const path of paths) {\n ctx.setTransform(...path.transform);\n ctx.translate(path.x, path.y);\n path.addToPath(ctx, path.fontSize);\n }\n ctx.restore();\n ctx.clip();\n ctx.beginPath();\n delete this.pendingTextPaths;\n }\n setCharSpacing(spacing) {\n this.current.charSpacing = spacing;\n }\n setWordSpacing(spacing) {\n this.current.wordSpacing = spacing;\n }\n setHScale(scale) {\n this.current.textHScale = scale / 100;\n }\n setLeading(leading) {\n this.current.leading = -leading;\n }\n setFont(fontRefName, size) {\n const fontObj = this.commonObjs.get(fontRefName);\n const current = this.current;\n if (!fontObj) {\n throw new Error(`Can't find font for ${fontRefName}`);\n }\n current.fontMatrix = fontObj.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n if (current.fontMatrix[0] === 0 || current.fontMatrix[3] === 0) {\n (0, _util.warn)(\"Invalid font matrix for font \" + fontRefName);\n }\n if (size < 0) {\n size = -size;\n current.fontDirection = -1;\n } else {\n current.fontDirection = 1;\n }\n this.current.font = fontObj;\n this.current.fontSize = size;\n if (fontObj.isType3Font) {\n return;\n }\n const name = fontObj.loadedName || \"sans-serif\";\n const typeface = fontObj.systemFontInfo?.css || `\"${name}\", ${fontObj.fallbackName}`;\n let bold = \"normal\";\n if (fontObj.black) {\n bold = \"900\";\n } else if (fontObj.bold) {\n bold = \"bold\";\n }\n const italic = fontObj.italic ? \"italic\" : \"normal\";\n let browserFontSize = size;\n if (size < MIN_FONT_SIZE) {\n browserFontSize = MIN_FONT_SIZE;\n } else if (size > MAX_FONT_SIZE) {\n browserFontSize = MAX_FONT_SIZE;\n }\n this.current.fontSizeScale = size / browserFontSize;\n this.ctx.font = `${italic} ${bold} ${browserFontSize}px ${typeface}`;\n }\n setTextRenderingMode(mode) {\n this.current.textRenderingMode = mode;\n }\n setTextRise(rise) {\n this.current.textRise = rise;\n }\n moveText(x, y) {\n this.current.x = this.current.lineX += x;\n this.current.y = this.current.lineY += y;\n }\n setLeadingMoveText(x, y) {\n this.setLeading(-y);\n this.moveText(x, y);\n }\n setTextMatrix(a, b, c, d, e, f) {\n this.current.textMatrix = [a, b, c, d, e, f];\n this.current.textMatrixScale = Math.hypot(a, b);\n this.current.x = this.current.lineX = 0;\n this.current.y = this.current.lineY = 0;\n }\n nextLine() {\n this.moveText(0, this.current.leading);\n }\n paintChar(character, x, y, patternTransform) {\n const ctx = this.ctx;\n const current = this.current;\n const font = current.font;\n const textRenderingMode = current.textRenderingMode;\n const fontSize = current.fontSize / current.fontSizeScale;\n const fillStrokeMode = textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\n const isAddToPathSet = !!(textRenderingMode & _util.TextRenderingMode.ADD_TO_PATH_FLAG);\n const patternFill = current.patternFill && !font.missingFile;\n let addToPath;\n if (font.disableFontFace || isAddToPathSet || patternFill) {\n addToPath = font.getPathGenerator(this.commonObjs, character);\n }\n if (font.disableFontFace || patternFill) {\n ctx.save();\n ctx.translate(x, y);\n ctx.beginPath();\n addToPath(ctx, fontSize);\n if (patternTransform) {\n ctx.setTransform(...patternTransform);\n }\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.fill();\n }\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.stroke();\n }\n ctx.restore();\n } else {\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.fillText(character, x, y);\n }\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.strokeText(character, x, y);\n }\n }\n if (isAddToPathSet) {\n const paths = this.pendingTextPaths ||= [];\n paths.push({\n transform: (0, _display_utils.getCurrentTransform)(ctx),\n x,\n y,\n fontSize,\n addToPath\n });\n }\n }\n get isFontSubpixelAAEnabled() {\n const {\n context: ctx\n } = this.cachedCanvases.getCanvas(\"isFontSubpixelAAEnabled\", 10, 10);\n ctx.scale(1.5, 1);\n ctx.fillText(\"I\", 0, 10);\n const data = ctx.getImageData(0, 0, 10, 10).data;\n let enabled = false;\n for (let i = 3; i < data.length; i += 4) {\n if (data[i] > 0 && data[i] < 255) {\n enabled = true;\n break;\n }\n }\n return (0, _util.shadow)(this, \"isFontSubpixelAAEnabled\", enabled);\n }\n showText(glyphs) {\n const current = this.current;\n const font = current.font;\n if (font.isType3Font) {\n return this.showType3Text(glyphs);\n }\n const fontSize = current.fontSize;\n if (fontSize === 0) {\n return undefined;\n }\n const ctx = this.ctx;\n const fontSizeScale = current.fontSizeScale;\n const charSpacing = current.charSpacing;\n const wordSpacing = current.wordSpacing;\n const fontDirection = current.fontDirection;\n const textHScale = current.textHScale * fontDirection;\n const glyphsLength = glyphs.length;\n const vertical = font.vertical;\n const spacingDir = vertical ? 1 : -1;\n const defaultVMetrics = font.defaultVMetrics;\n const widthAdvanceScale = fontSize * current.fontMatrix[0];\n const simpleFillText = current.textRenderingMode === _util.TextRenderingMode.FILL && !font.disableFontFace && !current.patternFill;\n ctx.save();\n ctx.transform(...current.textMatrix);\n ctx.translate(current.x, current.y + current.textRise);\n if (fontDirection > 0) {\n ctx.scale(textHScale, -1);\n } else {\n ctx.scale(textHScale, 1);\n }\n let patternTransform;\n if (current.patternFill) {\n ctx.save();\n const pattern = current.fillColor.getPattern(ctx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.FILL);\n patternTransform = (0, _display_utils.getCurrentTransform)(ctx);\n ctx.restore();\n ctx.fillStyle = pattern;\n }\n let lineWidth = current.lineWidth;\n const scale = current.textMatrixScale;\n if (scale === 0 || lineWidth === 0) {\n const fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n lineWidth = this.getSinglePixelWidth();\n }\n } else {\n lineWidth /= scale;\n }\n if (fontSizeScale !== 1.0) {\n ctx.scale(fontSizeScale, fontSizeScale);\n lineWidth /= fontSizeScale;\n }\n ctx.lineWidth = lineWidth;\n if (font.isInvalidPDFjsFont) {\n const chars = [];\n let width = 0;\n for (const glyph of glyphs) {\n chars.push(glyph.unicode);\n width += glyph.width;\n }\n ctx.fillText(chars.join(\"\"), 0, 0);\n current.x += width * widthAdvanceScale * textHScale;\n ctx.restore();\n this.compose();\n return undefined;\n }\n let x = 0,\n i;\n for (i = 0; i < glyphsLength; ++i) {\n const glyph = glyphs[i];\n if (typeof glyph === \"number\") {\n x += spacingDir * glyph * fontSize / 1000;\n continue;\n }\n let restoreNeeded = false;\n const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n const character = glyph.fontChar;\n const accent = glyph.accent;\n let scaledX, scaledY;\n let width = glyph.width;\n if (vertical) {\n const vmetric = glyph.vmetric || defaultVMetrics;\n const vx = -(glyph.vmetric ? vmetric[1] : width * 0.5) * widthAdvanceScale;\n const vy = vmetric[2] * widthAdvanceScale;\n width = vmetric ? -vmetric[0] : width;\n scaledX = vx / fontSizeScale;\n scaledY = (x + vy) / fontSizeScale;\n } else {\n scaledX = x / fontSizeScale;\n scaledY = 0;\n }\n if (font.remeasure && width > 0) {\n const measuredWidth = ctx.measureText(character).width * 1000 / fontSize * fontSizeScale;\n if (width < measuredWidth && this.isFontSubpixelAAEnabled) {\n const characterScaleX = width / measuredWidth;\n restoreNeeded = true;\n ctx.save();\n ctx.scale(characterScaleX, 1);\n scaledX /= characterScaleX;\n } else if (width !== measuredWidth) {\n scaledX += (width - measuredWidth) / 2000 * fontSize / fontSizeScale;\n }\n }\n if (this.contentVisible && (glyph.isInFont || font.missingFile)) {\n if (simpleFillText && !accent) {\n ctx.fillText(character, scaledX, scaledY);\n } else {\n this.paintChar(character, scaledX, scaledY, patternTransform);\n if (accent) {\n const scaledAccentX = scaledX + fontSize * accent.offset.x / fontSizeScale;\n const scaledAccentY = scaledY - fontSize * accent.offset.y / fontSizeScale;\n this.paintChar(accent.fontChar, scaledAccentX, scaledAccentY, patternTransform);\n }\n }\n }\n const charWidth = vertical ? width * widthAdvanceScale - spacing * fontDirection : width * widthAdvanceScale + spacing * fontDirection;\n x += charWidth;\n if (restoreNeeded) {\n ctx.restore();\n }\n }\n if (vertical) {\n current.y -= x;\n } else {\n current.x += x * textHScale;\n }\n ctx.restore();\n this.compose();\n return undefined;\n }\n showType3Text(glyphs) {\n const ctx = this.ctx;\n const current = this.current;\n const font = current.font;\n const fontSize = current.fontSize;\n const fontDirection = current.fontDirection;\n const spacingDir = font.vertical ? 1 : -1;\n const charSpacing = current.charSpacing;\n const wordSpacing = current.wordSpacing;\n const textHScale = current.textHScale * fontDirection;\n const fontMatrix = current.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n const glyphsLength = glyphs.length;\n const isTextInvisible = current.textRenderingMode === _util.TextRenderingMode.INVISIBLE;\n let i, glyph, width, spacingLength;\n if (isTextInvisible || fontSize === 0) {\n return;\n }\n this._cachedScaleForStroking[0] = -1;\n this._cachedGetSinglePixelWidth = null;\n ctx.save();\n ctx.transform(...current.textMatrix);\n ctx.translate(current.x, current.y);\n ctx.scale(textHScale, fontDirection);\n for (i = 0; i < glyphsLength; ++i) {\n glyph = glyphs[i];\n if (typeof glyph === \"number\") {\n spacingLength = spacingDir * glyph * fontSize / 1000;\n this.ctx.translate(spacingLength, 0);\n current.x += spacingLength * textHScale;\n continue;\n }\n const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n const operatorList = font.charProcOperatorList[glyph.operatorListId];\n if (!operatorList) {\n (0, _util.warn)(`Type3 character \"${glyph.operatorListId}\" is not available.`);\n continue;\n }\n if (this.contentVisible) {\n this.processingType3 = glyph;\n this.save();\n ctx.scale(fontSize, fontSize);\n ctx.transform(...fontMatrix);\n this.executeOperatorList(operatorList);\n this.restore();\n }\n const transformed = _util.Util.applyTransform([glyph.width, 0], fontMatrix);\n width = transformed[0] * fontSize + spacing;\n ctx.translate(width, 0);\n current.x += width * textHScale;\n }\n ctx.restore();\n this.processingType3 = null;\n }\n setCharWidth(xWidth, yWidth) {}\n setCharWidthAndBounds(xWidth, yWidth, llx, lly, urx, ury) {\n this.ctx.rect(llx, lly, urx - llx, ury - lly);\n this.ctx.clip();\n this.endPath();\n }\n getColorN_Pattern(IR) {\n let pattern;\n if (IR[0] === \"TilingPattern\") {\n const color = IR[1];\n const baseTransform = this.baseTransform || (0, _display_utils.getCurrentTransform)(this.ctx);\n const canvasGraphicsFactory = {\n createCanvasGraphics: ctx => {\n return new CanvasGraphics(ctx, this.commonObjs, this.objs, this.canvasFactory, this.filterFactory, {\n optionalContentConfig: this.optionalContentConfig,\n markedContentStack: this.markedContentStack\n });\n }\n };\n pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform);\n } else {\n pattern = this._getPattern(IR[1], IR[2]);\n }\n return pattern;\n }\n setStrokeColorN() {\n this.current.strokeColor = this.getColorN_Pattern(arguments);\n }\n setFillColorN() {\n this.current.fillColor = this.getColorN_Pattern(arguments);\n this.current.patternFill = true;\n }\n setStrokeRGBColor(r, g, b) {\n const color = _util.Util.makeHexColor(r, g, b);\n this.ctx.strokeStyle = color;\n this.current.strokeColor = color;\n }\n setFillRGBColor(r, g, b) {\n const color = _util.Util.makeHexColor(r, g, b);\n this.ctx.fillStyle = color;\n this.current.fillColor = color;\n this.current.patternFill = false;\n }\n _getPattern(objId, matrix = null) {\n let pattern;\n if (this.cachedPatterns.has(objId)) {\n pattern = this.cachedPatterns.get(objId);\n } else {\n pattern = (0, _pattern_helper.getShadingPattern)(this.getObject(objId));\n this.cachedPatterns.set(objId, pattern);\n }\n if (matrix) {\n pattern.matrix = matrix;\n }\n return pattern;\n }\n shadingFill(objId) {\n if (!this.contentVisible) {\n return;\n }\n const ctx = this.ctx;\n this.save();\n const pattern = this._getPattern(objId);\n ctx.fillStyle = pattern.getPattern(ctx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.SHADING);\n const inv = (0, _display_utils.getCurrentTransformInverse)(ctx);\n if (inv) {\n const {\n width,\n height\n } = ctx.canvas;\n const [x0, y0, x1, y1] = _util.Util.getAxialAlignedBoundingBox([0, 0, width, height], inv);\n this.ctx.fillRect(x0, y0, x1 - x0, y1 - y0);\n } else {\n this.ctx.fillRect(-1e10, -1e10, 2e10, 2e10);\n }\n this.compose(this.current.getClippedPathBoundingBox());\n this.restore();\n }\n beginInlineImage() {\n (0, _util.unreachable)(\"Should not call beginInlineImage\");\n }\n beginImageData() {\n (0, _util.unreachable)(\"Should not call beginImageData\");\n }\n paintFormXObjectBegin(matrix, bbox) {\n if (!this.contentVisible) {\n return;\n }\n this.save();\n this.baseTransformStack.push(this.baseTransform);\n if (Array.isArray(matrix) && matrix.length === 6) {\n this.transform(...matrix);\n }\n this.baseTransform = (0, _display_utils.getCurrentTransform)(this.ctx);\n if (bbox) {\n const width = bbox[2] - bbox[0];\n const height = bbox[3] - bbox[1];\n this.ctx.rect(bbox[0], bbox[1], width, height);\n this.current.updateRectMinMax((0, _display_utils.getCurrentTransform)(this.ctx), bbox);\n this.clip();\n this.endPath();\n }\n }\n paintFormXObjectEnd() {\n if (!this.contentVisible) {\n return;\n }\n this.restore();\n this.baseTransform = this.baseTransformStack.pop();\n }\n beginGroup(group) {\n if (!this.contentVisible) {\n return;\n }\n this.save();\n if (this.inSMaskMode) {\n this.endSMaskMode();\n this.current.activeSMask = null;\n }\n const currentCtx = this.ctx;\n if (!group.isolated) {\n (0, _util.info)(\"TODO: Support non-isolated groups.\");\n }\n if (group.knockout) {\n (0, _util.warn)(\"Knockout groups not supported.\");\n }\n const currentTransform = (0, _display_utils.getCurrentTransform)(currentCtx);\n if (group.matrix) {\n currentCtx.transform(...group.matrix);\n }\n if (!group.bbox) {\n throw new Error(\"Bounding box is required.\");\n }\n let bounds = _util.Util.getAxialAlignedBoundingBox(group.bbox, (0, _display_utils.getCurrentTransform)(currentCtx));\n const canvasBounds = [0, 0, currentCtx.canvas.width, currentCtx.canvas.height];\n bounds = _util.Util.intersect(bounds, canvasBounds) || [0, 0, 0, 0];\n const offsetX = Math.floor(bounds[0]);\n const offsetY = Math.floor(bounds[1]);\n let drawnWidth = Math.max(Math.ceil(bounds[2]) - offsetX, 1);\n let drawnHeight = Math.max(Math.ceil(bounds[3]) - offsetY, 1);\n let scaleX = 1,\n scaleY = 1;\n if (drawnWidth > MAX_GROUP_SIZE) {\n scaleX = drawnWidth / MAX_GROUP_SIZE;\n drawnWidth = MAX_GROUP_SIZE;\n }\n if (drawnHeight > MAX_GROUP_SIZE) {\n scaleY = drawnHeight / MAX_GROUP_SIZE;\n drawnHeight = MAX_GROUP_SIZE;\n }\n this.current.startNewPathAndClipBox([0, 0, drawnWidth, drawnHeight]);\n let cacheId = \"groupAt\" + this.groupLevel;\n if (group.smask) {\n cacheId += \"_smask_\" + this.smaskCounter++ % 2;\n }\n const scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight);\n const groupCtx = scratchCanvas.context;\n groupCtx.scale(1 / scaleX, 1 / scaleY);\n groupCtx.translate(-offsetX, -offsetY);\n groupCtx.transform(...currentTransform);\n if (group.smask) {\n this.smaskStack.push({\n canvas: scratchCanvas.canvas,\n context: groupCtx,\n offsetX,\n offsetY,\n scaleX,\n scaleY,\n subtype: group.smask.subtype,\n backdrop: group.smask.backdrop,\n transferMap: group.smask.transferMap || null,\n startTransformInverse: null\n });\n } else {\n currentCtx.setTransform(1, 0, 0, 1, 0, 0);\n currentCtx.translate(offsetX, offsetY);\n currentCtx.scale(scaleX, scaleY);\n currentCtx.save();\n }\n copyCtxState(currentCtx, groupCtx);\n this.ctx = groupCtx;\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n this.groupStack.push(currentCtx);\n this.groupLevel++;\n }\n endGroup(group) {\n if (!this.contentVisible) {\n return;\n }\n this.groupLevel--;\n const groupCtx = this.ctx;\n const ctx = this.groupStack.pop();\n this.ctx = ctx;\n this.ctx.imageSmoothingEnabled = false;\n if (group.smask) {\n this.tempSMask = this.smaskStack.pop();\n this.restore();\n } else {\n this.ctx.restore();\n const currentMtx = (0, _display_utils.getCurrentTransform)(this.ctx);\n this.restore();\n this.ctx.save();\n this.ctx.setTransform(...currentMtx);\n const dirtyBox = _util.Util.getAxialAlignedBoundingBox([0, 0, groupCtx.canvas.width, groupCtx.canvas.height], currentMtx);\n this.ctx.drawImage(groupCtx.canvas, 0, 0);\n this.ctx.restore();\n this.compose(dirtyBox);\n }\n }\n beginAnnotation(id, rect, transform, matrix, hasOwnCanvas) {\n this.#restoreInitialState();\n resetCtxToDefault(this.ctx);\n this.ctx.save();\n this.save();\n if (this.baseTransform) {\n this.ctx.setTransform(...this.baseTransform);\n }\n if (Array.isArray(rect) && rect.length === 4) {\n const width = rect[2] - rect[0];\n const height = rect[3] - rect[1];\n if (hasOwnCanvas && this.annotationCanvasMap) {\n transform = transform.slice();\n transform[4] -= rect[0];\n transform[5] -= rect[1];\n rect = rect.slice();\n rect[0] = rect[1] = 0;\n rect[2] = width;\n rect[3] = height;\n const [scaleX, scaleY] = _util.Util.singularValueDecompose2dScale((0, _display_utils.getCurrentTransform)(this.ctx));\n const {\n viewportScale\n } = this;\n const canvasWidth = Math.ceil(width * this.outputScaleX * viewportScale);\n const canvasHeight = Math.ceil(height * this.outputScaleY * viewportScale);\n this.annotationCanvas = this.canvasFactory.create(canvasWidth, canvasHeight);\n const {\n canvas,\n context\n } = this.annotationCanvas;\n this.annotationCanvasMap.set(id, canvas);\n this.annotationCanvas.savedCtx = this.ctx;\n this.ctx = context;\n this.ctx.save();\n this.ctx.setTransform(scaleX, 0, 0, -scaleY, 0, height * scaleY);\n resetCtxToDefault(this.ctx);\n } else {\n resetCtxToDefault(this.ctx);\n this.ctx.rect(rect[0], rect[1], width, height);\n this.ctx.clip();\n this.endPath();\n }\n }\n this.current = new CanvasExtraState(this.ctx.canvas.width, this.ctx.canvas.height);\n this.transform(...transform);\n this.transform(...matrix);\n }\n endAnnotation() {\n if (this.annotationCanvas) {\n this.ctx.restore();\n this.#drawFilter();\n this.ctx = this.annotationCanvas.savedCtx;\n delete this.annotationCanvas.savedCtx;\n delete this.annotationCanvas;\n }\n }\n paintImageMaskXObject(img) {\n if (!this.contentVisible) {\n return;\n }\n const count = img.count;\n img = this.getObject(img.data, img);\n img.count = count;\n const ctx = this.ctx;\n const glyph = this.processingType3;\n if (glyph) {\n if (glyph.compiled === undefined) {\n glyph.compiled = compileType3Glyph(img);\n }\n if (glyph.compiled) {\n glyph.compiled(ctx);\n return;\n }\n }\n const mask = this._createMaskCanvas(img);\n const maskCanvas = mask.canvas;\n ctx.save();\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.drawImage(maskCanvas, mask.offsetX, mask.offsetY);\n ctx.restore();\n this.compose();\n }\n paintImageMaskXObjectRepeat(img, scaleX, skewX = 0, skewY = 0, scaleY, positions) {\n if (!this.contentVisible) {\n return;\n }\n img = this.getObject(img.data, img);\n const ctx = this.ctx;\n ctx.save();\n const currentTransform = (0, _display_utils.getCurrentTransform)(ctx);\n ctx.transform(scaleX, skewX, skewY, scaleY, 0, 0);\n const mask = this._createMaskCanvas(img);\n ctx.setTransform(1, 0, 0, 1, mask.offsetX - currentTransform[4], mask.offsetY - currentTransform[5]);\n for (let i = 0, ii = positions.length; i < ii; i += 2) {\n const trans = _util.Util.transform(currentTransform, [scaleX, skewX, skewY, scaleY, positions[i], positions[i + 1]]);\n const [x, y] = _util.Util.applyTransform([0, 0], trans);\n ctx.drawImage(mask.canvas, x, y);\n }\n ctx.restore();\n this.compose();\n }\n paintImageMaskXObjectGroup(images) {\n if (!this.contentVisible) {\n return;\n }\n const ctx = this.ctx;\n const fillColor = this.current.fillColor;\n const isPatternFill = this.current.patternFill;\n for (const image of images) {\n const {\n data,\n width,\n height,\n transform\n } = image;\n const maskCanvas = this.cachedCanvases.getCanvas(\"maskCanvas\", width, height);\n const maskCtx = maskCanvas.context;\n maskCtx.save();\n const img = this.getObject(data, image);\n putBinaryImageMask(maskCtx, img);\n maskCtx.globalCompositeOperation = \"source-in\";\n maskCtx.fillStyle = isPatternFill ? fillColor.getPattern(maskCtx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.FILL) : fillColor;\n maskCtx.fillRect(0, 0, width, height);\n maskCtx.restore();\n ctx.save();\n ctx.transform(...transform);\n ctx.scale(1, -1);\n drawImageAtIntegerCoords(ctx, maskCanvas.canvas, 0, 0, width, height, 0, -1, 1, 1);\n ctx.restore();\n }\n this.compose();\n }\n paintImageXObject(objId) {\n if (!this.contentVisible) {\n return;\n }\n const imgData = this.getObject(objId);\n if (!imgData) {\n (0, _util.warn)(\"Dependent image isn't ready yet\");\n return;\n }\n this.paintInlineImageXObject(imgData);\n }\n paintImageXObjectRepeat(objId, scaleX, scaleY, positions) {\n if (!this.contentVisible) {\n return;\n }\n const imgData = this.getObject(objId);\n if (!imgData) {\n (0, _util.warn)(\"Dependent image isn't ready yet\");\n return;\n }\n const width = imgData.width;\n const height = imgData.height;\n const map = [];\n for (let i = 0, ii = positions.length; i < ii; i += 2) {\n map.push({\n transform: [scaleX, 0, 0, scaleY, positions[i], positions[i + 1]],\n x: 0,\n y: 0,\n w: width,\n h: height\n });\n }\n this.paintInlineImageXObjectGroup(imgData, map);\n }\n applyTransferMapsToCanvas(ctx) {\n if (this.current.transferMaps !== \"none\") {\n ctx.filter = this.current.transferMaps;\n ctx.drawImage(ctx.canvas, 0, 0);\n ctx.filter = \"none\";\n }\n return ctx.canvas;\n }\n applyTransferMapsToBitmap(imgData) {\n if (this.current.transferMaps === \"none\") {\n return imgData.bitmap;\n }\n const {\n bitmap,\n width,\n height\n } = imgData;\n const tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", width, height);\n const tmpCtx = tmpCanvas.context;\n tmpCtx.filter = this.current.transferMaps;\n tmpCtx.drawImage(bitmap, 0, 0);\n tmpCtx.filter = \"none\";\n return tmpCanvas.canvas;\n }\n paintInlineImageXObject(imgData) {\n if (!this.contentVisible) {\n return;\n }\n const width = imgData.width;\n const height = imgData.height;\n const ctx = this.ctx;\n this.save();\n if (!_util.isNodeJS) {\n const {\n filter\n } = ctx;\n if (filter !== \"none\" && filter !== \"\") {\n ctx.filter = \"none\";\n }\n }\n ctx.scale(1 / width, -1 / height);\n let imgToPaint;\n if (imgData.bitmap) {\n imgToPaint = this.applyTransferMapsToBitmap(imgData);\n } else if (typeof HTMLElement === \"function\" && imgData instanceof HTMLElement || !imgData.data) {\n imgToPaint = imgData;\n } else {\n const tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", width, height);\n const tmpCtx = tmpCanvas.context;\n putBinaryImageData(tmpCtx, imgData);\n imgToPaint = this.applyTransferMapsToCanvas(tmpCtx);\n }\n const scaled = this._scaleImage(imgToPaint, (0, _display_utils.getCurrentTransformInverse)(ctx));\n ctx.imageSmoothingEnabled = getImageSmoothingEnabled((0, _display_utils.getCurrentTransform)(ctx), imgData.interpolate);\n drawImageAtIntegerCoords(ctx, scaled.img, 0, 0, scaled.paintWidth, scaled.paintHeight, 0, -height, width, height);\n this.compose();\n this.restore();\n }\n paintInlineImageXObjectGroup(imgData, map) {\n if (!this.contentVisible) {\n return;\n }\n const ctx = this.ctx;\n let imgToPaint;\n if (imgData.bitmap) {\n imgToPaint = imgData.bitmap;\n } else {\n const w = imgData.width;\n const h = imgData.height;\n const tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", w, h);\n const tmpCtx = tmpCanvas.context;\n putBinaryImageData(tmpCtx, imgData);\n imgToPaint = this.applyTransferMapsToCanvas(tmpCtx);\n }\n for (const entry of map) {\n ctx.save();\n ctx.transform(...entry.transform);\n ctx.scale(1, -1);\n drawImageAtIntegerCoords(ctx, imgToPaint, entry.x, entry.y, entry.w, entry.h, 0, -1, 1, 1);\n ctx.restore();\n }\n this.compose();\n }\n paintSolidColorImageMask() {\n if (!this.contentVisible) {\n return;\n }\n this.ctx.fillRect(0, 0, 1, 1);\n this.compose();\n }\n markPoint(tag) {}\n markPointProps(tag, properties) {}\n beginMarkedContent(tag) {\n this.markedContentStack.push({\n visible: true\n });\n }\n beginMarkedContentProps(tag, properties) {\n if (tag === \"OC\") {\n this.markedContentStack.push({\n visible: this.optionalContentConfig.isVisible(properties)\n });\n } else {\n this.markedContentStack.push({\n visible: true\n });\n }\n this.contentVisible = this.isContentVisible();\n }\n endMarkedContent() {\n this.markedContentStack.pop();\n this.contentVisible = this.isContentVisible();\n }\n beginCompat() {}\n endCompat() {}\n consumePath(clipBox) {\n const isEmpty = this.current.isEmptyClip();\n if (this.pendingClip) {\n this.current.updateClipFromPath();\n }\n if (!this.pendingClip) {\n this.compose(clipBox);\n }\n const ctx = this.ctx;\n if (this.pendingClip) {\n if (!isEmpty) {\n if (this.pendingClip === EO_CLIP) {\n ctx.clip(\"evenodd\");\n } else {\n ctx.clip();\n }\n }\n this.pendingClip = null;\n }\n this.current.startNewPathAndClipBox(this.current.clipBox);\n ctx.beginPath();\n }\n getSinglePixelWidth() {\n if (!this._cachedGetSinglePixelWidth) {\n const m = (0, _display_utils.getCurrentTransform)(this.ctx);\n if (m[1] === 0 && m[2] === 0) {\n this._cachedGetSinglePixelWidth = 1 / Math.min(Math.abs(m[0]), Math.abs(m[3]));\n } else {\n const absDet = Math.abs(m[0] * m[3] - m[2] * m[1]);\n const normX = Math.hypot(m[0], m[2]);\n const normY = Math.hypot(m[1], m[3]);\n this._cachedGetSinglePixelWidth = Math.max(normX, normY) / absDet;\n }\n }\n return this._cachedGetSinglePixelWidth;\n }\n getScaleForStroking() {\n if (this._cachedScaleForStroking[0] === -1) {\n const {\n lineWidth\n } = this.current;\n const {\n a,\n b,\n c,\n d\n } = this.ctx.getTransform();\n let scaleX, scaleY;\n if (b === 0 && c === 0) {\n const normX = Math.abs(a);\n const normY = Math.abs(d);\n if (normX === normY) {\n if (lineWidth === 0) {\n scaleX = scaleY = 1 / normX;\n } else {\n const scaledLineWidth = normX * lineWidth;\n scaleX = scaleY = scaledLineWidth < 1 ? 1 / scaledLineWidth : 1;\n }\n } else if (lineWidth === 0) {\n scaleX = 1 / normX;\n scaleY = 1 / normY;\n } else {\n const scaledXLineWidth = normX * lineWidth;\n const scaledYLineWidth = normY * lineWidth;\n scaleX = scaledXLineWidth < 1 ? 1 / scaledXLineWidth : 1;\n scaleY = scaledYLineWidth < 1 ? 1 / scaledYLineWidth : 1;\n }\n } else {\n const absDet = Math.abs(a * d - b * c);\n const normX = Math.hypot(a, b);\n const normY = Math.hypot(c, d);\n if (lineWidth === 0) {\n scaleX = normY / absDet;\n scaleY = normX / absDet;\n } else {\n const baseArea = lineWidth * absDet;\n scaleX = normY > baseArea ? normY / baseArea : 1;\n scaleY = normX > baseArea ? normX / baseArea : 1;\n }\n }\n this._cachedScaleForStroking[0] = scaleX;\n this._cachedScaleForStroking[1] = scaleY;\n }\n return this._cachedScaleForStroking;\n }\n rescaleAndStroke(saveRestore) {\n const {\n ctx\n } = this;\n const {\n lineWidth\n } = this.current;\n const [scaleX, scaleY] = this.getScaleForStroking();\n ctx.lineWidth = lineWidth || 1;\n if (scaleX === 1 && scaleY === 1) {\n ctx.stroke();\n return;\n }\n const dashes = ctx.getLineDash();\n if (saveRestore) {\n ctx.save();\n }\n ctx.scale(scaleX, scaleY);\n if (dashes.length > 0) {\n const scale = Math.max(scaleX, scaleY);\n ctx.setLineDash(dashes.map(x => x / scale));\n ctx.lineDashOffset /= scale;\n }\n ctx.stroke();\n if (saveRestore) {\n ctx.restore();\n }\n }\n isContentVisible() {\n for (let i = this.markedContentStack.length - 1; i >= 0; i--) {\n if (!this.markedContentStack[i].visible) {\n return false;\n }\n }\n return true;\n }\n}\nexports.CanvasGraphics = CanvasGraphics;\nfor (const op in _util.OPS) {\n if (CanvasGraphics.prototype[op] !== undefined) {\n CanvasGraphics.prototype[_util.OPS[op]] = CanvasGraphics.prototype[op];\n }\n}\n\n/***/ }),\n/* 12 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.TilingPattern = exports.PathType = void 0;\nexports.getShadingPattern = getShadingPattern;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nconst PathType = {\n FILL: \"Fill\",\n STROKE: \"Stroke\",\n SHADING: \"Shading\"\n};\nexports.PathType = PathType;\nfunction applyBoundingBox(ctx, bbox) {\n if (!bbox) {\n return;\n }\n const width = bbox[2] - bbox[0];\n const height = bbox[3] - bbox[1];\n const region = new Path2D();\n region.rect(bbox[0], bbox[1], width, height);\n ctx.clip(region);\n}\nclass BaseShadingPattern {\n constructor() {\n if (this.constructor === BaseShadingPattern) {\n (0, _util.unreachable)(\"Cannot initialize BaseShadingPattern.\");\n }\n }\n getPattern() {\n (0, _util.unreachable)(\"Abstract method `getPattern` called.\");\n }\n}\nclass RadialAxialShadingPattern extends BaseShadingPattern {\n constructor(IR) {\n super();\n this._type = IR[1];\n this._bbox = IR[2];\n this._colorStops = IR[3];\n this._p0 = IR[4];\n this._p1 = IR[5];\n this._r0 = IR[6];\n this._r1 = IR[7];\n this.matrix = null;\n }\n _createGradient(ctx) {\n let grad;\n if (this._type === \"axial\") {\n grad = ctx.createLinearGradient(this._p0[0], this._p0[1], this._p1[0], this._p1[1]);\n } else if (this._type === \"radial\") {\n grad = ctx.createRadialGradient(this._p0[0], this._p0[1], this._r0, this._p1[0], this._p1[1], this._r1);\n }\n for (const colorStop of this._colorStops) {\n grad.addColorStop(colorStop[0], colorStop[1]);\n }\n return grad;\n }\n getPattern(ctx, owner, inverse, pathType) {\n let pattern;\n if (pathType === PathType.STROKE || pathType === PathType.FILL) {\n const ownerBBox = owner.current.getClippedPathBoundingBox(pathType, (0, _display_utils.getCurrentTransform)(ctx)) || [0, 0, 0, 0];\n const width = Math.ceil(ownerBBox[2] - ownerBBox[0]) || 1;\n const height = Math.ceil(ownerBBox[3] - ownerBBox[1]) || 1;\n const tmpCanvas = owner.cachedCanvases.getCanvas(\"pattern\", width, height, true);\n const tmpCtx = tmpCanvas.context;\n tmpCtx.clearRect(0, 0, tmpCtx.canvas.width, tmpCtx.canvas.height);\n tmpCtx.beginPath();\n tmpCtx.rect(0, 0, tmpCtx.canvas.width, tmpCtx.canvas.height);\n tmpCtx.translate(-ownerBBox[0], -ownerBBox[1]);\n inverse = _util.Util.transform(inverse, [1, 0, 0, 1, ownerBBox[0], ownerBBox[1]]);\n tmpCtx.transform(...owner.baseTransform);\n if (this.matrix) {\n tmpCtx.transform(...this.matrix);\n }\n applyBoundingBox(tmpCtx, this._bbox);\n tmpCtx.fillStyle = this._createGradient(tmpCtx);\n tmpCtx.fill();\n pattern = ctx.createPattern(tmpCanvas.canvas, \"no-repeat\");\n const domMatrix = new DOMMatrix(inverse);\n pattern.setTransform(domMatrix);\n } else {\n applyBoundingBox(ctx, this._bbox);\n pattern = this._createGradient(ctx);\n }\n return pattern;\n }\n}\nfunction drawTriangle(data, context, p1, p2, p3, c1, c2, c3) {\n const coords = context.coords,\n colors = context.colors;\n const bytes = data.data,\n rowSize = data.width * 4;\n let tmp;\n if (coords[p1 + 1] > coords[p2 + 1]) {\n tmp = p1;\n p1 = p2;\n p2 = tmp;\n tmp = c1;\n c1 = c2;\n c2 = tmp;\n }\n if (coords[p2 + 1] > coords[p3 + 1]) {\n tmp = p2;\n p2 = p3;\n p3 = tmp;\n tmp = c2;\n c2 = c3;\n c3 = tmp;\n }\n if (coords[p1 + 1] > coords[p2 + 1]) {\n tmp = p1;\n p1 = p2;\n p2 = tmp;\n tmp = c1;\n c1 = c2;\n c2 = tmp;\n }\n const x1 = (coords[p1] + context.offsetX) * context.scaleX;\n const y1 = (coords[p1 + 1] + context.offsetY) * context.scaleY;\n const x2 = (coords[p2] + context.offsetX) * context.scaleX;\n const y2 = (coords[p2 + 1] + context.offsetY) * context.scaleY;\n const x3 = (coords[p3] + context.offsetX) * context.scaleX;\n const y3 = (coords[p3 + 1] + context.offsetY) * context.scaleY;\n if (y1 >= y3) {\n return;\n }\n const c1r = colors[c1],\n c1g = colors[c1 + 1],\n c1b = colors[c1 + 2];\n const c2r = colors[c2],\n c2g = colors[c2 + 1],\n c2b = colors[c2 + 2];\n const c3r = colors[c3],\n c3g = colors[c3 + 1],\n c3b = colors[c3 + 2];\n const minY = Math.round(y1),\n maxY = Math.round(y3);\n let xa, car, cag, cab;\n let xb, cbr, cbg, cbb;\n for (let y = minY; y <= maxY; y++) {\n if (y < y2) {\n const k = y < y1 ? 0 : (y1 - y) / (y1 - y2);\n xa = x1 - (x1 - x2) * k;\n car = c1r - (c1r - c2r) * k;\n cag = c1g - (c1g - c2g) * k;\n cab = c1b - (c1b - c2b) * k;\n } else {\n let k;\n if (y > y3) {\n k = 1;\n } else if (y2 === y3) {\n k = 0;\n } else {\n k = (y2 - y) / (y2 - y3);\n }\n xa = x2 - (x2 - x3) * k;\n car = c2r - (c2r - c3r) * k;\n cag = c2g - (c2g - c3g) * k;\n cab = c2b - (c2b - c3b) * k;\n }\n let k;\n if (y < y1) {\n k = 0;\n } else if (y > y3) {\n k = 1;\n } else {\n k = (y1 - y) / (y1 - y3);\n }\n xb = x1 - (x1 - x3) * k;\n cbr = c1r - (c1r - c3r) * k;\n cbg = c1g - (c1g - c3g) * k;\n cbb = c1b - (c1b - c3b) * k;\n const x1_ = Math.round(Math.min(xa, xb));\n const x2_ = Math.round(Math.max(xa, xb));\n let j = rowSize * y + x1_ * 4;\n for (let x = x1_; x <= x2_; x++) {\n k = (xa - x) / (xa - xb);\n if (k < 0) {\n k = 0;\n } else if (k > 1) {\n k = 1;\n }\n bytes[j++] = car - (car - cbr) * k | 0;\n bytes[j++] = cag - (cag - cbg) * k | 0;\n bytes[j++] = cab - (cab - cbb) * k | 0;\n bytes[j++] = 255;\n }\n }\n}\nfunction drawFigure(data, figure, context) {\n const ps = figure.coords;\n const cs = figure.colors;\n let i, ii;\n switch (figure.type) {\n case \"lattice\":\n const verticesPerRow = figure.verticesPerRow;\n const rows = Math.floor(ps.length / verticesPerRow) - 1;\n const cols = verticesPerRow - 1;\n for (i = 0; i < rows; i++) {\n let q = i * verticesPerRow;\n for (let j = 0; j < cols; j++, q++) {\n drawTriangle(data, context, ps[q], ps[q + 1], ps[q + verticesPerRow], cs[q], cs[q + 1], cs[q + verticesPerRow]);\n drawTriangle(data, context, ps[q + verticesPerRow + 1], ps[q + 1], ps[q + verticesPerRow], cs[q + verticesPerRow + 1], cs[q + 1], cs[q + verticesPerRow]);\n }\n }\n break;\n case \"triangles\":\n for (i = 0, ii = ps.length; i < ii; i += 3) {\n drawTriangle(data, context, ps[i], ps[i + 1], ps[i + 2], cs[i], cs[i + 1], cs[i + 2]);\n }\n break;\n default:\n throw new Error(\"illegal figure\");\n }\n}\nclass MeshShadingPattern extends BaseShadingPattern {\n constructor(IR) {\n super();\n this._coords = IR[2];\n this._colors = IR[3];\n this._figures = IR[4];\n this._bounds = IR[5];\n this._bbox = IR[7];\n this._background = IR[8];\n this.matrix = null;\n }\n _createMeshCanvas(combinedScale, backgroundColor, cachedCanvases) {\n const EXPECTED_SCALE = 1.1;\n const MAX_PATTERN_SIZE = 3000;\n const BORDER_SIZE = 2;\n const offsetX = Math.floor(this._bounds[0]);\n const offsetY = Math.floor(this._bounds[1]);\n const boundsWidth = Math.ceil(this._bounds[2]) - offsetX;\n const boundsHeight = Math.ceil(this._bounds[3]) - offsetY;\n const width = Math.min(Math.ceil(Math.abs(boundsWidth * combinedScale[0] * EXPECTED_SCALE)), MAX_PATTERN_SIZE);\n const height = Math.min(Math.ceil(Math.abs(boundsHeight * combinedScale[1] * EXPECTED_SCALE)), MAX_PATTERN_SIZE);\n const scaleX = boundsWidth / width;\n const scaleY = boundsHeight / height;\n const context = {\n coords: this._coords,\n colors: this._colors,\n offsetX: -offsetX,\n offsetY: -offsetY,\n scaleX: 1 / scaleX,\n scaleY: 1 / scaleY\n };\n const paddedWidth = width + BORDER_SIZE * 2;\n const paddedHeight = height + BORDER_SIZE * 2;\n const tmpCanvas = cachedCanvases.getCanvas(\"mesh\", paddedWidth, paddedHeight, false);\n const tmpCtx = tmpCanvas.context;\n const data = tmpCtx.createImageData(width, height);\n if (backgroundColor) {\n const bytes = data.data;\n for (let i = 0, ii = bytes.length; i < ii; i += 4) {\n bytes[i] = backgroundColor[0];\n bytes[i + 1] = backgroundColor[1];\n bytes[i + 2] = backgroundColor[2];\n bytes[i + 3] = 255;\n }\n }\n for (const figure of this._figures) {\n drawFigure(data, figure, context);\n }\n tmpCtx.putImageData(data, BORDER_SIZE, BORDER_SIZE);\n const canvas = tmpCanvas.canvas;\n return {\n canvas,\n offsetX: offsetX - BORDER_SIZE * scaleX,\n offsetY: offsetY - BORDER_SIZE * scaleY,\n scaleX,\n scaleY\n };\n }\n getPattern(ctx, owner, inverse, pathType) {\n applyBoundingBox(ctx, this._bbox);\n let scale;\n if (pathType === PathType.SHADING) {\n scale = _util.Util.singularValueDecompose2dScale((0, _display_utils.getCurrentTransform)(ctx));\n } else {\n scale = _util.Util.singularValueDecompose2dScale(owner.baseTransform);\n if (this.matrix) {\n const matrixScale = _util.Util.singularValueDecompose2dScale(this.matrix);\n scale = [scale[0] * matrixScale[0], scale[1] * matrixScale[1]];\n }\n }\n const temporaryPatternCanvas = this._createMeshCanvas(scale, pathType === PathType.SHADING ? null : this._background, owner.cachedCanvases);\n if (pathType !== PathType.SHADING) {\n ctx.setTransform(...owner.baseTransform);\n if (this.matrix) {\n ctx.transform(...this.matrix);\n }\n }\n ctx.translate(temporaryPatternCanvas.offsetX, temporaryPatternCanvas.offsetY);\n ctx.scale(temporaryPatternCanvas.scaleX, temporaryPatternCanvas.scaleY);\n return ctx.createPattern(temporaryPatternCanvas.canvas, \"no-repeat\");\n }\n}\nclass DummyShadingPattern extends BaseShadingPattern {\n getPattern() {\n return \"hotpink\";\n }\n}\nfunction getShadingPattern(IR) {\n switch (IR[0]) {\n case \"RadialAxial\":\n return new RadialAxialShadingPattern(IR);\n case \"Mesh\":\n return new MeshShadingPattern(IR);\n case \"Dummy\":\n return new DummyShadingPattern();\n }\n throw new Error(`Unknown IR type: ${IR[0]}`);\n}\nconst PaintType = {\n COLORED: 1,\n UNCOLORED: 2\n};\nclass TilingPattern {\n static MAX_PATTERN_SIZE = 3000;\n constructor(IR, color, ctx, canvasGraphicsFactory, baseTransform) {\n this.operatorList = IR[2];\n this.matrix = IR[3] || [1, 0, 0, 1, 0, 0];\n this.bbox = IR[4];\n this.xstep = IR[5];\n this.ystep = IR[6];\n this.paintType = IR[7];\n this.tilingType = IR[8];\n this.color = color;\n this.ctx = ctx;\n this.canvasGraphicsFactory = canvasGraphicsFactory;\n this.baseTransform = baseTransform;\n }\n createPatternCanvas(owner) {\n const operatorList = this.operatorList;\n const bbox = this.bbox;\n const xstep = this.xstep;\n const ystep = this.ystep;\n const paintType = this.paintType;\n const tilingType = this.tilingType;\n const color = this.color;\n const canvasGraphicsFactory = this.canvasGraphicsFactory;\n (0, _util.info)(\"TilingType: \" + tilingType);\n const x0 = bbox[0],\n y0 = bbox[1],\n x1 = bbox[2],\n y1 = bbox[3];\n const matrixScale = _util.Util.singularValueDecompose2dScale(this.matrix);\n const curMatrixScale = _util.Util.singularValueDecompose2dScale(this.baseTransform);\n const combinedScale = [matrixScale[0] * curMatrixScale[0], matrixScale[1] * curMatrixScale[1]];\n const dimx = this.getSizeAndScale(xstep, this.ctx.canvas.width, combinedScale[0]);\n const dimy = this.getSizeAndScale(ystep, this.ctx.canvas.height, combinedScale[1]);\n const tmpCanvas = owner.cachedCanvases.getCanvas(\"pattern\", dimx.size, dimy.size, true);\n const tmpCtx = tmpCanvas.context;\n const graphics = canvasGraphicsFactory.createCanvasGraphics(tmpCtx);\n graphics.groupLevel = owner.groupLevel;\n this.setFillAndStrokeStyleToContext(graphics, paintType, color);\n let adjustedX0 = x0;\n let adjustedY0 = y0;\n let adjustedX1 = x1;\n let adjustedY1 = y1;\n if (x0 < 0) {\n adjustedX0 = 0;\n adjustedX1 += Math.abs(x0);\n }\n if (y0 < 0) {\n adjustedY0 = 0;\n adjustedY1 += Math.abs(y0);\n }\n tmpCtx.translate(-(dimx.scale * adjustedX0), -(dimy.scale * adjustedY0));\n graphics.transform(dimx.scale, 0, 0, dimy.scale, 0, 0);\n tmpCtx.save();\n this.clipBbox(graphics, adjustedX0, adjustedY0, adjustedX1, adjustedY1);\n graphics.baseTransform = (0, _display_utils.getCurrentTransform)(graphics.ctx);\n graphics.executeOperatorList(operatorList);\n graphics.endDrawing();\n return {\n canvas: tmpCanvas.canvas,\n scaleX: dimx.scale,\n scaleY: dimy.scale,\n offsetX: adjustedX0,\n offsetY: adjustedY0\n };\n }\n getSizeAndScale(step, realOutputSize, scale) {\n step = Math.abs(step);\n const maxSize = Math.max(TilingPattern.MAX_PATTERN_SIZE, realOutputSize);\n let size = Math.ceil(step * scale);\n if (size >= maxSize) {\n size = maxSize;\n } else {\n scale = size / step;\n }\n return {\n scale,\n size\n };\n }\n clipBbox(graphics, x0, y0, x1, y1) {\n const bboxWidth = x1 - x0;\n const bboxHeight = y1 - y0;\n graphics.ctx.rect(x0, y0, bboxWidth, bboxHeight);\n graphics.current.updateRectMinMax((0, _display_utils.getCurrentTransform)(graphics.ctx), [x0, y0, x1, y1]);\n graphics.clip();\n graphics.endPath();\n }\n setFillAndStrokeStyleToContext(graphics, paintType, color) {\n const context = graphics.ctx,\n current = graphics.current;\n switch (paintType) {\n case PaintType.COLORED:\n const ctx = this.ctx;\n context.fillStyle = ctx.fillStyle;\n context.strokeStyle = ctx.strokeStyle;\n current.fillColor = ctx.fillStyle;\n current.strokeColor = ctx.strokeStyle;\n break;\n case PaintType.UNCOLORED:\n const cssColor = _util.Util.makeHexColor(color[0], color[1], color[2]);\n context.fillStyle = cssColor;\n context.strokeStyle = cssColor;\n current.fillColor = cssColor;\n current.strokeColor = cssColor;\n break;\n default:\n throw new _util.FormatError(`Unsupported paint type: ${paintType}`);\n }\n }\n getPattern(ctx, owner, inverse, pathType) {\n let matrix = inverse;\n if (pathType !== PathType.SHADING) {\n matrix = _util.Util.transform(matrix, owner.baseTransform);\n if (this.matrix) {\n matrix = _util.Util.transform(matrix, this.matrix);\n }\n }\n const temporaryPatternCanvas = this.createPatternCanvas(owner);\n let domMatrix = new DOMMatrix(matrix);\n domMatrix = domMatrix.translate(temporaryPatternCanvas.offsetX, temporaryPatternCanvas.offsetY);\n domMatrix = domMatrix.scale(1 / temporaryPatternCanvas.scaleX, 1 / temporaryPatternCanvas.scaleY);\n const pattern = ctx.createPattern(temporaryPatternCanvas.canvas, \"repeat\");\n pattern.setTransform(domMatrix);\n return pattern;\n }\n}\nexports.TilingPattern = TilingPattern;\n\n/***/ }),\n/* 13 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.convertBlackAndWhiteToRGBA = convertBlackAndWhiteToRGBA;\nexports.convertToRGBA = convertToRGBA;\nexports.grayToRGBA = grayToRGBA;\nvar _util = __w_pdfjs_require__(1);\nfunction convertToRGBA(params) {\n switch (params.kind) {\n case _util.ImageKind.GRAYSCALE_1BPP:\n return convertBlackAndWhiteToRGBA(params);\n case _util.ImageKind.RGB_24BPP:\n return convertRGBToRGBA(params);\n }\n return null;\n}\nfunction convertBlackAndWhiteToRGBA({\n src,\n srcPos = 0,\n dest,\n width,\n height,\n nonBlackColor = 0xffffffff,\n inverseDecode = false\n}) {\n const black = _util.FeatureTest.isLittleEndian ? 0xff000000 : 0x000000ff;\n const [zeroMapping, oneMapping] = inverseDecode ? [nonBlackColor, black] : [black, nonBlackColor];\n const widthInSource = width >> 3;\n const widthRemainder = width & 7;\n const srcLength = src.length;\n dest = new Uint32Array(dest.buffer);\n let destPos = 0;\n for (let i = 0; i < height; i++) {\n for (const max = srcPos + widthInSource; srcPos < max; srcPos++) {\n const elem = srcPos < srcLength ? src[srcPos] : 255;\n dest[destPos++] = elem & 0b10000000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1000000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b100000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b10000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b100 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b10 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1 ? oneMapping : zeroMapping;\n }\n if (widthRemainder === 0) {\n continue;\n }\n const elem = srcPos < srcLength ? src[srcPos++] : 255;\n for (let j = 0; j < widthRemainder; j++) {\n dest[destPos++] = elem & 1 << 7 - j ? oneMapping : zeroMapping;\n }\n }\n return {\n srcPos,\n destPos\n };\n}\nfunction convertRGBToRGBA({\n src,\n srcPos = 0,\n dest,\n destPos = 0,\n width,\n height\n}) {\n let i = 0;\n const len32 = src.length >> 2;\n const src32 = new Uint32Array(src.buffer, srcPos, len32);\n if (_util.FeatureTest.isLittleEndian) {\n for (; i < len32 - 2; i += 3, destPos += 4) {\n const s1 = src32[i];\n const s2 = src32[i + 1];\n const s3 = src32[i + 2];\n dest[destPos] = s1 | 0xff000000;\n dest[destPos + 1] = s1 >>> 24 | s2 << 8 | 0xff000000;\n dest[destPos + 2] = s2 >>> 16 | s3 << 16 | 0xff000000;\n dest[destPos + 3] = s3 >>> 8 | 0xff000000;\n }\n for (let j = i * 4, jj = src.length; j < jj; j += 3) {\n dest[destPos++] = src[j] | src[j + 1] << 8 | src[j + 2] << 16 | 0xff000000;\n }\n } else {\n for (; i < len32 - 2; i += 3, destPos += 4) {\n const s1 = src32[i];\n const s2 = src32[i + 1];\n const s3 = src32[i + 2];\n dest[destPos] = s1 | 0xff;\n dest[destPos + 1] = s1 << 24 | s2 >>> 8 | 0xff;\n dest[destPos + 2] = s2 << 16 | s3 >>> 16 | 0xff;\n dest[destPos + 3] = s3 << 8 | 0xff;\n }\n for (let j = i * 4, jj = src.length; j < jj; j += 3) {\n dest[destPos++] = src[j] << 24 | src[j + 1] << 16 | src[j + 2] << 8 | 0xff;\n }\n }\n return {\n srcPos,\n destPos\n };\n}\nfunction grayToRGBA(src, dest) {\n if (_util.FeatureTest.isLittleEndian) {\n for (let i = 0, ii = src.length; i < ii; i++) {\n dest[i] = src[i] * 0x10101 | 0xff000000;\n }\n } else {\n for (let i = 0, ii = src.length; i < ii; i++) {\n dest[i] = src[i] * 0x1010100 | 0x000000ff;\n }\n }\n}\n\n/***/ }),\n/* 14 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.GlobalWorkerOptions = void 0;\nconst GlobalWorkerOptions = Object.create(null);\nexports.GlobalWorkerOptions = GlobalWorkerOptions;\nGlobalWorkerOptions.workerPort = null;\nGlobalWorkerOptions.workerSrc = \"\";\n\n/***/ }),\n/* 15 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.MessageHandler = void 0;\nvar _util = __w_pdfjs_require__(1);\nconst CallbackKind = {\n UNKNOWN: 0,\n DATA: 1,\n ERROR: 2\n};\nconst StreamKind = {\n UNKNOWN: 0,\n CANCEL: 1,\n CANCEL_COMPLETE: 2,\n CLOSE: 3,\n ENQUEUE: 4,\n ERROR: 5,\n PULL: 6,\n PULL_COMPLETE: 7,\n START_COMPLETE: 8\n};\nfunction wrapReason(reason) {\n if (!(reason instanceof Error || typeof reason === \"object\" && reason !== null)) {\n (0, _util.unreachable)('wrapReason: Expected \"reason\" to be a (possibly cloned) Error.');\n }\n switch (reason.name) {\n case \"AbortException\":\n return new _util.AbortException(reason.message);\n case \"MissingPDFException\":\n return new _util.MissingPDFException(reason.message);\n case \"PasswordException\":\n return new _util.PasswordException(reason.message, reason.code);\n case \"UnexpectedResponseException\":\n return new _util.UnexpectedResponseException(reason.message, reason.status);\n case \"UnknownErrorException\":\n return new _util.UnknownErrorException(reason.message, reason.details);\n default:\n return new _util.UnknownErrorException(reason.message, reason.toString());\n }\n}\nclass MessageHandler {\n constructor(sourceName, targetName, comObj) {\n this.sourceName = sourceName;\n this.targetName = targetName;\n this.comObj = comObj;\n this.callbackId = 1;\n this.streamId = 1;\n this.streamSinks = Object.create(null);\n this.streamControllers = Object.create(null);\n this.callbackCapabilities = Object.create(null);\n this.actionHandler = Object.create(null);\n this._onComObjOnMessage = event => {\n const data = event.data;\n if (data.targetName !== this.sourceName) {\n return;\n }\n if (data.stream) {\n this.#processStreamMessage(data);\n return;\n }\n if (data.callback) {\n const callbackId = data.callbackId;\n const capability = this.callbackCapabilities[callbackId];\n if (!capability) {\n throw new Error(`Cannot resolve callback ${callbackId}`);\n }\n delete this.callbackCapabilities[callbackId];\n if (data.callback === CallbackKind.DATA) {\n capability.resolve(data.data);\n } else if (data.callback === CallbackKind.ERROR) {\n capability.reject(wrapReason(data.reason));\n } else {\n throw new Error(\"Unexpected callback case\");\n }\n return;\n }\n const action = this.actionHandler[data.action];\n if (!action) {\n throw new Error(`Unknown action from worker: ${data.action}`);\n }\n if (data.callbackId) {\n const cbSourceName = this.sourceName;\n const cbTargetName = data.sourceName;\n new Promise(function (resolve) {\n resolve(action(data.data));\n }).then(function (result) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.DATA,\n callbackId: data.callbackId,\n data: result\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.ERROR,\n callbackId: data.callbackId,\n reason: wrapReason(reason)\n });\n });\n return;\n }\n if (data.streamId) {\n this.#createStreamSink(data);\n return;\n }\n action(data.data);\n };\n comObj.addEventListener(\"message\", this._onComObjOnMessage);\n }\n on(actionName, handler) {\n const ah = this.actionHandler;\n if (ah[actionName]) {\n throw new Error(`There is already an actionName called \"${actionName}\"`);\n }\n ah[actionName] = handler;\n }\n send(actionName, data, transfers) {\n this.comObj.postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n data\n }, transfers);\n }\n sendWithPromise(actionName, data, transfers) {\n const callbackId = this.callbackId++;\n const capability = new _util.PromiseCapability();\n this.callbackCapabilities[callbackId] = capability;\n try {\n this.comObj.postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n callbackId,\n data\n }, transfers);\n } catch (ex) {\n capability.reject(ex);\n }\n return capability.promise;\n }\n sendWithStream(actionName, data, queueingStrategy, transfers) {\n const streamId = this.streamId++,\n sourceName = this.sourceName,\n targetName = this.targetName,\n comObj = this.comObj;\n return new ReadableStream({\n start: controller => {\n const startCapability = new _util.PromiseCapability();\n this.streamControllers[streamId] = {\n controller,\n startCall: startCapability,\n pullCall: null,\n cancelCall: null,\n isClosed: false\n };\n comObj.postMessage({\n sourceName,\n targetName,\n action: actionName,\n streamId,\n data,\n desiredSize: controller.desiredSize\n }, transfers);\n return startCapability.promise;\n },\n pull: controller => {\n const pullCapability = new _util.PromiseCapability();\n this.streamControllers[streamId].pullCall = pullCapability;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL,\n streamId,\n desiredSize: controller.desiredSize\n });\n return pullCapability.promise;\n },\n cancel: reason => {\n (0, _util.assert)(reason instanceof Error, \"cancel must have a valid reason\");\n const cancelCapability = new _util.PromiseCapability();\n this.streamControllers[streamId].cancelCall = cancelCapability;\n this.streamControllers[streamId].isClosed = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL,\n streamId,\n reason: wrapReason(reason)\n });\n return cancelCapability.promise;\n }\n }, queueingStrategy);\n }\n #createStreamSink(data) {\n const streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n const self = this,\n action = this.actionHandler[data.action];\n const streamSink = {\n enqueue(chunk, size = 1, transfers) {\n if (this.isCancelled) {\n return;\n }\n const lastDesiredSize = this.desiredSize;\n this.desiredSize -= size;\n if (lastDesiredSize > 0 && this.desiredSize <= 0) {\n this.sinkCapability = new _util.PromiseCapability();\n this.ready = this.sinkCapability.promise;\n }\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.ENQUEUE,\n streamId,\n chunk\n }, transfers);\n },\n close() {\n if (this.isCancelled) {\n return;\n }\n this.isCancelled = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CLOSE,\n streamId\n });\n delete self.streamSinks[streamId];\n },\n error(reason) {\n (0, _util.assert)(reason instanceof Error, \"error must have a valid reason\");\n if (this.isCancelled) {\n return;\n }\n this.isCancelled = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.ERROR,\n streamId,\n reason: wrapReason(reason)\n });\n },\n sinkCapability: new _util.PromiseCapability(),\n onPull: null,\n onCancel: null,\n isCancelled: false,\n desiredSize: data.desiredSize,\n ready: null\n };\n streamSink.sinkCapability.resolve();\n streamSink.ready = streamSink.sinkCapability.promise;\n this.streamSinks[streamId] = streamSink;\n new Promise(function (resolve) {\n resolve(action(data.data, streamSink));\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.START_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.START_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n }\n #processStreamMessage(data) {\n const streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n const streamController = this.streamControllers[streamId],\n streamSink = this.streamSinks[streamId];\n switch (data.stream) {\n case StreamKind.START_COMPLETE:\n if (data.success) {\n streamController.startCall.resolve();\n } else {\n streamController.startCall.reject(wrapReason(data.reason));\n }\n break;\n case StreamKind.PULL_COMPLETE:\n if (data.success) {\n streamController.pullCall.resolve();\n } else {\n streamController.pullCall.reject(wrapReason(data.reason));\n }\n break;\n case StreamKind.PULL:\n if (!streamSink) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n success: true\n });\n break;\n }\n if (streamSink.desiredSize <= 0 && data.desiredSize > 0) {\n streamSink.sinkCapability.resolve();\n }\n streamSink.desiredSize = data.desiredSize;\n new Promise(function (resolve) {\n resolve(streamSink.onPull?.());\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n break;\n case StreamKind.ENQUEUE:\n (0, _util.assert)(streamController, \"enqueue should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.controller.enqueue(data.chunk);\n break;\n case StreamKind.CLOSE:\n (0, _util.assert)(streamController, \"close should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.isClosed = true;\n streamController.controller.close();\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.ERROR:\n (0, _util.assert)(streamController, \"error should have stream controller\");\n streamController.controller.error(wrapReason(data.reason));\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL_COMPLETE:\n if (data.success) {\n streamController.cancelCall.resolve();\n } else {\n streamController.cancelCall.reject(wrapReason(data.reason));\n }\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL:\n if (!streamSink) {\n break;\n }\n new Promise(function (resolve) {\n resolve(streamSink.onCancel?.(wrapReason(data.reason)));\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n streamSink.sinkCapability.reject(wrapReason(data.reason));\n streamSink.isCancelled = true;\n delete this.streamSinks[streamId];\n break;\n default:\n throw new Error(\"Unexpected stream case\");\n }\n }\n async #deleteStreamController(streamController, streamId) {\n await Promise.allSettled([streamController.startCall?.promise, streamController.pullCall?.promise, streamController.cancelCall?.promise]);\n delete this.streamControllers[streamId];\n }\n destroy() {\n this.comObj.removeEventListener(\"message\", this._onComObjOnMessage);\n }\n}\nexports.MessageHandler = MessageHandler;\n\n/***/ }),\n/* 16 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Metadata = void 0;\nvar _util = __w_pdfjs_require__(1);\nclass Metadata {\n #metadataMap;\n #data;\n constructor({\n parsedData,\n rawData\n }) {\n this.#metadataMap = parsedData;\n this.#data = rawData;\n }\n getRaw() {\n return this.#data;\n }\n get(name) {\n return this.#metadataMap.get(name) ?? null;\n }\n getAll() {\n return (0, _util.objectFromMap)(this.#metadataMap);\n }\n has(name) {\n return this.#metadataMap.has(name);\n }\n}\nexports.Metadata = Metadata;\n\n/***/ }),\n/* 17 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.OptionalContentConfig = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _murmurhash = __w_pdfjs_require__(8);\nconst INTERNAL = Symbol(\"INTERNAL\");\nclass OptionalContentGroup {\n #visible = true;\n constructor(name, intent) {\n this.name = name;\n this.intent = intent;\n }\n get visible() {\n return this.#visible;\n }\n _setVisible(internal, visible) {\n if (internal !== INTERNAL) {\n (0, _util.unreachable)(\"Internal method `_setVisible` called.\");\n }\n this.#visible = visible;\n }\n}\nclass OptionalContentConfig {\n #cachedGetHash = null;\n #groups = new Map();\n #initialHash = null;\n #order = null;\n constructor(data) {\n this.name = null;\n this.creator = null;\n if (data === null) {\n return;\n }\n this.name = data.name;\n this.creator = data.creator;\n this.#order = data.order;\n for (const group of data.groups) {\n this.#groups.set(group.id, new OptionalContentGroup(group.name, group.intent));\n }\n if (data.baseState === \"OFF\") {\n for (const group of this.#groups.values()) {\n group._setVisible(INTERNAL, false);\n }\n }\n for (const on of data.on) {\n this.#groups.get(on)._setVisible(INTERNAL, true);\n }\n for (const off of data.off) {\n this.#groups.get(off)._setVisible(INTERNAL, false);\n }\n this.#initialHash = this.getHash();\n }\n #evaluateVisibilityExpression(array) {\n const length = array.length;\n if (length < 2) {\n return true;\n }\n const operator = array[0];\n for (let i = 1; i < length; i++) {\n const element = array[i];\n let state;\n if (Array.isArray(element)) {\n state = this.#evaluateVisibilityExpression(element);\n } else if (this.#groups.has(element)) {\n state = this.#groups.get(element).visible;\n } else {\n (0, _util.warn)(`Optional content group not found: ${element}`);\n return true;\n }\n switch (operator) {\n case \"And\":\n if (!state) {\n return false;\n }\n break;\n case \"Or\":\n if (state) {\n return true;\n }\n break;\n case \"Not\":\n return !state;\n default:\n return true;\n }\n }\n return operator === \"And\";\n }\n isVisible(group) {\n if (this.#groups.size === 0) {\n return true;\n }\n if (!group) {\n (0, _util.warn)(\"Optional content group not defined.\");\n return true;\n }\n if (group.type === \"OCG\") {\n if (!this.#groups.has(group.id)) {\n (0, _util.warn)(`Optional content group not found: ${group.id}`);\n return true;\n }\n return this.#groups.get(group.id).visible;\n } else if (group.type === \"OCMD\") {\n if (group.expression) {\n return this.#evaluateVisibilityExpression(group.expression);\n }\n if (!group.policy || group.policy === \"AnyOn\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return true;\n }\n if (this.#groups.get(id).visible) {\n return true;\n }\n }\n return false;\n } else if (group.policy === \"AllOn\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return true;\n }\n if (!this.#groups.get(id).visible) {\n return false;\n }\n }\n return true;\n } else if (group.policy === \"AnyOff\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return true;\n }\n if (!this.#groups.get(id).visible) {\n return true;\n }\n }\n return false;\n } else if (group.policy === \"AllOff\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return true;\n }\n if (this.#groups.get(id).visible) {\n return false;\n }\n }\n return true;\n }\n (0, _util.warn)(`Unknown optional content policy ${group.policy}.`);\n return true;\n }\n (0, _util.warn)(`Unknown group type ${group.type}.`);\n return true;\n }\n setVisibility(id, visible = true) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return;\n }\n this.#groups.get(id)._setVisible(INTERNAL, !!visible);\n this.#cachedGetHash = null;\n }\n get hasInitialVisibility() {\n return this.#initialHash === null || this.getHash() === this.#initialHash;\n }\n getOrder() {\n if (!this.#groups.size) {\n return null;\n }\n if (this.#order) {\n return this.#order.slice();\n }\n return [...this.#groups.keys()];\n }\n getGroups() {\n return this.#groups.size > 0 ? (0, _util.objectFromMap)(this.#groups) : null;\n }\n getGroup(id) {\n return this.#groups.get(id) || null;\n }\n getHash() {\n if (this.#cachedGetHash !== null) {\n return this.#cachedGetHash;\n }\n const hash = new _murmurhash.MurmurHash3_64();\n for (const [id, group] of this.#groups) {\n hash.update(`${id}:${group.visible}`);\n }\n return this.#cachedGetHash = hash.hexdigest();\n }\n}\nexports.OptionalContentConfig = OptionalContentConfig;\n\n/***/ }),\n/* 18 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFDataTransportStream = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nclass PDFDataTransportStream {\n constructor({\n length,\n initialData,\n progressiveDone = false,\n contentDispositionFilename = null,\n disableRange = false,\n disableStream = false\n }, pdfDataRangeTransport) {\n (0, _util.assert)(pdfDataRangeTransport, 'PDFDataTransportStream - missing required \"pdfDataRangeTransport\" argument.');\n this._queuedChunks = [];\n this._progressiveDone = progressiveDone;\n this._contentDispositionFilename = contentDispositionFilename;\n if (initialData?.length > 0) {\n const buffer = initialData instanceof Uint8Array && initialData.byteLength === initialData.buffer.byteLength ? initialData.buffer : new Uint8Array(initialData).buffer;\n this._queuedChunks.push(buffer);\n }\n this._pdfDataRangeTransport = pdfDataRangeTransport;\n this._isStreamingSupported = !disableStream;\n this._isRangeSupported = !disableRange;\n this._contentLength = length;\n this._fullRequestReader = null;\n this._rangeReaders = [];\n this._pdfDataRangeTransport.addRangeListener((begin, chunk) => {\n this._onReceiveData({\n begin,\n chunk\n });\n });\n this._pdfDataRangeTransport.addProgressListener((loaded, total) => {\n this._onProgress({\n loaded,\n total\n });\n });\n this._pdfDataRangeTransport.addProgressiveReadListener(chunk => {\n this._onReceiveData({\n chunk\n });\n });\n this._pdfDataRangeTransport.addProgressiveDoneListener(() => {\n this._onProgressiveDone();\n });\n this._pdfDataRangeTransport.transportReady();\n }\n _onReceiveData({\n begin,\n chunk\n }) {\n const buffer = chunk instanceof Uint8Array && chunk.byteLength === chunk.buffer.byteLength ? chunk.buffer : new Uint8Array(chunk).buffer;\n if (begin === undefined) {\n if (this._fullRequestReader) {\n this._fullRequestReader._enqueue(buffer);\n } else {\n this._queuedChunks.push(buffer);\n }\n } else {\n const found = this._rangeReaders.some(function (rangeReader) {\n if (rangeReader._begin !== begin) {\n return false;\n }\n rangeReader._enqueue(buffer);\n return true;\n });\n (0, _util.assert)(found, \"_onReceiveData - no `PDFDataTransportStreamRangeReader` instance found.\");\n }\n }\n get _progressiveDataLength() {\n return this._fullRequestReader?._loaded ?? 0;\n }\n _onProgress(evt) {\n if (evt.total === undefined) {\n this._rangeReaders[0]?.onProgress?.({\n loaded: evt.loaded\n });\n } else {\n this._fullRequestReader?.onProgress?.({\n loaded: evt.loaded,\n total: evt.total\n });\n }\n }\n _onProgressiveDone() {\n this._fullRequestReader?.progressiveDone();\n this._progressiveDone = true;\n }\n _removeRangeReader(reader) {\n const i = this._rangeReaders.indexOf(reader);\n if (i >= 0) {\n this._rangeReaders.splice(i, 1);\n }\n }\n getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFDataTransportStream.getFullReader can only be called once.\");\n const queuedChunks = this._queuedChunks;\n this._queuedChunks = null;\n return new PDFDataTransportStreamReader(this, queuedChunks, this._progressiveDone, this._contentDispositionFilename);\n }\n getRangeReader(begin, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n const reader = new PDFDataTransportStreamRangeReader(this, begin, end);\n this._pdfDataRangeTransport.requestDataRange(begin, end);\n this._rangeReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeReaders.slice(0)) {\n reader.cancel(reason);\n }\n this._pdfDataRangeTransport.abort();\n }\n}\nexports.PDFDataTransportStream = PDFDataTransportStream;\nclass PDFDataTransportStreamReader {\n constructor(stream, queuedChunks, progressiveDone = false, contentDispositionFilename = null) {\n this._stream = stream;\n this._done = progressiveDone || false;\n this._filename = (0, _display_utils.isPdfFile)(contentDispositionFilename) ? contentDispositionFilename : null;\n this._queuedChunks = queuedChunks || [];\n this._loaded = 0;\n for (const chunk of this._queuedChunks) {\n this._loaded += chunk.byteLength;\n }\n this._requests = [];\n this._headersReady = Promise.resolve();\n stream._fullRequestReader = this;\n this.onProgress = null;\n }\n _enqueue(chunk) {\n if (this._done) {\n return;\n }\n if (this._requests.length > 0) {\n const requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunks.push(chunk);\n }\n this._loaded += chunk.byteLength;\n }\n get headersReady() {\n return this._headersReady;\n }\n get filename() {\n return this._filename;\n }\n get isRangeSupported() {\n return this._stream._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._stream._isStreamingSupported;\n }\n get contentLength() {\n return this._stream._contentLength;\n }\n async read() {\n if (this._queuedChunks.length > 0) {\n const chunk = this._queuedChunks.shift();\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = new _util.PromiseCapability();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n }\n progressiveDone() {\n if (this._done) {\n return;\n }\n this._done = true;\n }\n}\nclass PDFDataTransportStreamRangeReader {\n constructor(stream, begin, end) {\n this._stream = stream;\n this._begin = begin;\n this._end = end;\n this._queuedChunk = null;\n this._requests = [];\n this._done = false;\n this.onProgress = null;\n }\n _enqueue(chunk) {\n if (this._done) {\n return;\n }\n if (this._requests.length === 0) {\n this._queuedChunk = chunk;\n } else {\n const requestsCapability = this._requests.shift();\n requestsCapability.resolve({\n value: chunk,\n done: false\n });\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n }\n this._done = true;\n this._stream._removeRangeReader(this);\n }\n get isStreamingSupported() {\n return false;\n }\n async read() {\n if (this._queuedChunk) {\n const chunk = this._queuedChunk;\n this._queuedChunk = null;\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = new _util.PromiseCapability();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n this._stream._removeRangeReader(this);\n }\n}\n\n/***/ }),\n/* 19 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFFetchStream = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _network_utils = __w_pdfjs_require__(20);\n;\nfunction createFetchOptions(headers, withCredentials, abortController) {\n return {\n method: \"GET\",\n headers,\n signal: abortController.signal,\n mode: \"cors\",\n credentials: withCredentials ? \"include\" : \"same-origin\",\n redirect: \"follow\"\n };\n}\nfunction createHeaders(httpHeaders) {\n const headers = new Headers();\n for (const property in httpHeaders) {\n const value = httpHeaders[property];\n if (value === undefined) {\n continue;\n }\n headers.append(property, value);\n }\n return headers;\n}\nfunction getArrayBuffer(val) {\n if (val instanceof Uint8Array) {\n return val.buffer;\n }\n if (val instanceof ArrayBuffer) {\n return val;\n }\n (0, _util.warn)(`getArrayBuffer - unexpected data format: ${val}`);\n return new Uint8Array(val).buffer;\n}\nclass PDFFetchStream {\n constructor(source) {\n this.source = source;\n this.isHttp = /^https?:/i.test(source.url);\n this.httpHeaders = this.isHttp && source.httpHeaders || {};\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n get _progressiveDataLength() {\n return this._fullRequestReader?._loaded ?? 0;\n }\n getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFFetchStream.getFullReader can only be called once.\");\n this._fullRequestReader = new PDFFetchStreamReader(this);\n return this._fullRequestReader;\n }\n getRangeReader(begin, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n const reader = new PDFFetchStreamRangeReader(this, begin, end);\n this._rangeRequestReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nexports.PDFFetchStream = PDFFetchStream;\nclass PDFFetchStreamReader {\n constructor(stream) {\n this._stream = stream;\n this._reader = null;\n this._loaded = 0;\n this._filename = null;\n const source = stream.source;\n this._withCredentials = source.withCredentials || false;\n this._contentLength = source.length;\n this._headersCapability = new _util.PromiseCapability();\n this._disableRange = source.disableRange || false;\n this._rangeChunkSize = source.rangeChunkSize;\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n this._abortController = new AbortController();\n this._isStreamingSupported = !source.disableStream;\n this._isRangeSupported = !source.disableRange;\n this._headers = createHeaders(this._stream.httpHeaders);\n const url = source.url;\n fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => {\n if (!(0, _network_utils.validateResponseStatus)(response.status)) {\n throw (0, _network_utils.createResponseStatusError)(response.status, url);\n }\n this._reader = response.body.getReader();\n this._headersCapability.resolve();\n const getResponseHeader = name => {\n return response.headers.get(name);\n };\n const {\n allowRangeRequests,\n suggestedLength\n } = (0, _network_utils.validateRangeRequestCapabilities)({\n getResponseHeader,\n isHttp: this._stream.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n });\n this._isRangeSupported = allowRangeRequests;\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n if (!this._isStreamingSupported && this._isRangeSupported) {\n this.cancel(new _util.AbortException(\"Streaming is disabled.\"));\n }\n }).catch(this._headersCapability.reject);\n this.onProgress = null;\n }\n get headersReady() {\n return this._headersCapability.promise;\n }\n get filename() {\n return this._filename;\n }\n get contentLength() {\n return this._contentLength;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._headersCapability.promise;\n const {\n value,\n done\n } = await this._reader.read();\n if (done) {\n return {\n value,\n done\n };\n }\n this._loaded += value.byteLength;\n this.onProgress?.({\n loaded: this._loaded,\n total: this._contentLength\n });\n return {\n value: getArrayBuffer(value),\n done: false\n };\n }\n cancel(reason) {\n this._reader?.cancel(reason);\n this._abortController.abort();\n }\n}\nclass PDFFetchStreamRangeReader {\n constructor(stream, begin, end) {\n this._stream = stream;\n this._reader = null;\n this._loaded = 0;\n const source = stream.source;\n this._withCredentials = source.withCredentials || false;\n this._readCapability = new _util.PromiseCapability();\n this._isStreamingSupported = !source.disableStream;\n this._abortController = new AbortController();\n this._headers = createHeaders(this._stream.httpHeaders);\n this._headers.append(\"Range\", `bytes=${begin}-${end - 1}`);\n const url = source.url;\n fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => {\n if (!(0, _network_utils.validateResponseStatus)(response.status)) {\n throw (0, _network_utils.createResponseStatusError)(response.status, url);\n }\n this._readCapability.resolve();\n this._reader = response.body.getReader();\n }).catch(this._readCapability.reject);\n this.onProgress = null;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._readCapability.promise;\n const {\n value,\n done\n } = await this._reader.read();\n if (done) {\n return {\n value,\n done\n };\n }\n this._loaded += value.byteLength;\n this.onProgress?.({\n loaded: this._loaded\n });\n return {\n value: getArrayBuffer(value),\n done: false\n };\n }\n cancel(reason) {\n this._reader?.cancel(reason);\n this._abortController.abort();\n }\n}\n\n/***/ }),\n/* 20 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.createResponseStatusError = createResponseStatusError;\nexports.extractFilenameFromHeader = extractFilenameFromHeader;\nexports.validateRangeRequestCapabilities = validateRangeRequestCapabilities;\nexports.validateResponseStatus = validateResponseStatus;\nvar _util = __w_pdfjs_require__(1);\nvar _content_disposition = __w_pdfjs_require__(21);\nvar _display_utils = __w_pdfjs_require__(6);\nfunction validateRangeRequestCapabilities({\n getResponseHeader,\n isHttp,\n rangeChunkSize,\n disableRange\n}) {\n const returnValues = {\n allowRangeRequests: false,\n suggestedLength: undefined\n };\n const length = parseInt(getResponseHeader(\"Content-Length\"), 10);\n if (!Number.isInteger(length)) {\n return returnValues;\n }\n returnValues.suggestedLength = length;\n if (length <= 2 * rangeChunkSize) {\n return returnValues;\n }\n if (disableRange || !isHttp) {\n return returnValues;\n }\n if (getResponseHeader(\"Accept-Ranges\") !== \"bytes\") {\n return returnValues;\n }\n const contentEncoding = getResponseHeader(\"Content-Encoding\") || \"identity\";\n if (contentEncoding !== \"identity\") {\n return returnValues;\n }\n returnValues.allowRangeRequests = true;\n return returnValues;\n}\nfunction extractFilenameFromHeader(getResponseHeader) {\n const contentDisposition = getResponseHeader(\"Content-Disposition\");\n if (contentDisposition) {\n let filename = (0, _content_disposition.getFilenameFromContentDispositionHeader)(contentDisposition);\n if (filename.includes(\"%\")) {\n try {\n filename = decodeURIComponent(filename);\n } catch {}\n }\n if ((0, _display_utils.isPdfFile)(filename)) {\n return filename;\n }\n }\n return null;\n}\nfunction createResponseStatusError(status, url) {\n if (status === 404 || status === 0 && url.startsWith(\"file:\")) {\n return new _util.MissingPDFException('Missing PDF \"' + url + '\".');\n }\n return new _util.UnexpectedResponseException(`Unexpected server response (${status}) while retrieving PDF \"${url}\".`, status);\n}\nfunction validateResponseStatus(status) {\n return status === 200 || status === 206;\n}\n\n/***/ }),\n/* 21 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getFilenameFromContentDispositionHeader = getFilenameFromContentDispositionHeader;\nvar _util = __w_pdfjs_require__(1);\nfunction getFilenameFromContentDispositionHeader(contentDisposition) {\n let needsEncodingFixup = true;\n let tmp = toParamRegExp(\"filename\\\\*\", \"i\").exec(contentDisposition);\n if (tmp) {\n tmp = tmp[1];\n let filename = rfc2616unquote(tmp);\n filename = unescape(filename);\n filename = rfc5987decode(filename);\n filename = rfc2047decode(filename);\n return fixupEncoding(filename);\n }\n tmp = rfc2231getparam(contentDisposition);\n if (tmp) {\n const filename = rfc2047decode(tmp);\n return fixupEncoding(filename);\n }\n tmp = toParamRegExp(\"filename\", \"i\").exec(contentDisposition);\n if (tmp) {\n tmp = tmp[1];\n let filename = rfc2616unquote(tmp);\n filename = rfc2047decode(filename);\n return fixupEncoding(filename);\n }\n function toParamRegExp(attributePattern, flags) {\n return new RegExp(\"(?:^|;)\\\\s*\" + attributePattern + \"\\\\s*=\\\\s*\" + \"(\" + '[^\";\\\\s][^;\\\\s]*' + \"|\" + '\"(?:[^\"\\\\\\\\]|\\\\\\\\\"?)+\"?' + \")\", flags);\n }\n function textdecode(encoding, value) {\n if (encoding) {\n if (!/^[\\x00-\\xFF]+$/.test(value)) {\n return value;\n }\n try {\n const decoder = new TextDecoder(encoding, {\n fatal: true\n });\n const buffer = (0, _util.stringToBytes)(value);\n value = decoder.decode(buffer);\n needsEncodingFixup = false;\n } catch {}\n }\n return value;\n }\n function fixupEncoding(value) {\n if (needsEncodingFixup && /[\\x80-\\xff]/.test(value)) {\n value = textdecode(\"utf-8\", value);\n if (needsEncodingFixup) {\n value = textdecode(\"iso-8859-1\", value);\n }\n }\n return value;\n }\n function rfc2231getparam(contentDispositionStr) {\n const matches = [];\n let match;\n const iter = toParamRegExp(\"filename\\\\*((?!0\\\\d)\\\\d+)(\\\\*?)\", \"ig\");\n while ((match = iter.exec(contentDispositionStr)) !== null) {\n let [, n, quot, part] = match;\n n = parseInt(n, 10);\n if (n in matches) {\n if (n === 0) {\n break;\n }\n continue;\n }\n matches[n] = [quot, part];\n }\n const parts = [];\n for (let n = 0; n < matches.length; ++n) {\n if (!(n in matches)) {\n break;\n }\n let [quot, part] = matches[n];\n part = rfc2616unquote(part);\n if (quot) {\n part = unescape(part);\n if (n === 0) {\n part = rfc5987decode(part);\n }\n }\n parts.push(part);\n }\n return parts.join(\"\");\n }\n function rfc2616unquote(value) {\n if (value.startsWith('\"')) {\n const parts = value.slice(1).split('\\\\\"');\n for (let i = 0; i < parts.length; ++i) {\n const quotindex = parts[i].indexOf('\"');\n if (quotindex !== -1) {\n parts[i] = parts[i].slice(0, quotindex);\n parts.length = i + 1;\n }\n parts[i] = parts[i].replaceAll(/\\\\(.)/g, \"$1\");\n }\n value = parts.join('\"');\n }\n return value;\n }\n function rfc5987decode(extvalue) {\n const encodingend = extvalue.indexOf(\"'\");\n if (encodingend === -1) {\n return extvalue;\n }\n const encoding = extvalue.slice(0, encodingend);\n const langvalue = extvalue.slice(encodingend + 1);\n const value = langvalue.replace(/^[^']*'/, \"\");\n return textdecode(encoding, value);\n }\n function rfc2047decode(value) {\n if (!value.startsWith(\"=?\") || /[\\x00-\\x19\\x80-\\xff]/.test(value)) {\n return value;\n }\n return value.replaceAll(/=\\?([\\w-]*)\\?([QqBb])\\?((?:[^?]|\\?(?!=))*)\\?=/g, function (matches, charset, encoding, text) {\n if (encoding === \"q\" || encoding === \"Q\") {\n text = text.replaceAll(\"_\", \" \");\n text = text.replaceAll(/=([0-9a-fA-F]{2})/g, function (match, hex) {\n return String.fromCharCode(parseInt(hex, 16));\n });\n return textdecode(charset, text);\n }\n try {\n text = atob(text);\n } catch {}\n return textdecode(charset, text);\n });\n }\n return \"\";\n}\n\n/***/ }),\n/* 22 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFNetworkStream = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _network_utils = __w_pdfjs_require__(20);\n;\nconst OK_RESPONSE = 200;\nconst PARTIAL_CONTENT_RESPONSE = 206;\nfunction getArrayBuffer(xhr) {\n const data = xhr.response;\n if (typeof data !== \"string\") {\n return data;\n }\n return (0, _util.stringToBytes)(data).buffer;\n}\nclass NetworkManager {\n constructor(url, args = {}) {\n this.url = url;\n this.isHttp = /^https?:/i.test(url);\n this.httpHeaders = this.isHttp && args.httpHeaders || Object.create(null);\n this.withCredentials = args.withCredentials || false;\n this.currXhrId = 0;\n this.pendingRequests = Object.create(null);\n }\n requestRange(begin, end, listeners) {\n const args = {\n begin,\n end\n };\n for (const prop in listeners) {\n args[prop] = listeners[prop];\n }\n return this.request(args);\n }\n requestFull(listeners) {\n return this.request(listeners);\n }\n request(args) {\n const xhr = new XMLHttpRequest();\n const xhrId = this.currXhrId++;\n const pendingRequest = this.pendingRequests[xhrId] = {\n xhr\n };\n xhr.open(\"GET\", this.url);\n xhr.withCredentials = this.withCredentials;\n for (const property in this.httpHeaders) {\n const value = this.httpHeaders[property];\n if (value === undefined) {\n continue;\n }\n xhr.setRequestHeader(property, value);\n }\n if (this.isHttp && \"begin\" in args && \"end\" in args) {\n xhr.setRequestHeader(\"Range\", `bytes=${args.begin}-${args.end - 1}`);\n pendingRequest.expectedStatus = PARTIAL_CONTENT_RESPONSE;\n } else {\n pendingRequest.expectedStatus = OK_RESPONSE;\n }\n xhr.responseType = \"arraybuffer\";\n if (args.onError) {\n xhr.onerror = function (evt) {\n args.onError(xhr.status);\n };\n }\n xhr.onreadystatechange = this.onStateChange.bind(this, xhrId);\n xhr.onprogress = this.onProgress.bind(this, xhrId);\n pendingRequest.onHeadersReceived = args.onHeadersReceived;\n pendingRequest.onDone = args.onDone;\n pendingRequest.onError = args.onError;\n pendingRequest.onProgress = args.onProgress;\n xhr.send(null);\n return xhrId;\n }\n onProgress(xhrId, evt) {\n const pendingRequest = this.pendingRequests[xhrId];\n if (!pendingRequest) {\n return;\n }\n pendingRequest.onProgress?.(evt);\n }\n onStateChange(xhrId, evt) {\n const pendingRequest = this.pendingRequests[xhrId];\n if (!pendingRequest) {\n return;\n }\n const xhr = pendingRequest.xhr;\n if (xhr.readyState >= 2 && pendingRequest.onHeadersReceived) {\n pendingRequest.onHeadersReceived();\n delete pendingRequest.onHeadersReceived;\n }\n if (xhr.readyState !== 4) {\n return;\n }\n if (!(xhrId in this.pendingRequests)) {\n return;\n }\n delete this.pendingRequests[xhrId];\n if (xhr.status === 0 && this.isHttp) {\n pendingRequest.onError?.(xhr.status);\n return;\n }\n const xhrStatus = xhr.status || OK_RESPONSE;\n const ok_response_on_range_request = xhrStatus === OK_RESPONSE && pendingRequest.expectedStatus === PARTIAL_CONTENT_RESPONSE;\n if (!ok_response_on_range_request && xhrStatus !== pendingRequest.expectedStatus) {\n pendingRequest.onError?.(xhr.status);\n return;\n }\n const chunk = getArrayBuffer(xhr);\n if (xhrStatus === PARTIAL_CONTENT_RESPONSE) {\n const rangeHeader = xhr.getResponseHeader(\"Content-Range\");\n const matches = /bytes (\\d+)-(\\d+)\\/(\\d+)/.exec(rangeHeader);\n pendingRequest.onDone({\n begin: parseInt(matches[1], 10),\n chunk\n });\n } else if (chunk) {\n pendingRequest.onDone({\n begin: 0,\n chunk\n });\n } else {\n pendingRequest.onError?.(xhr.status);\n }\n }\n getRequestXhr(xhrId) {\n return this.pendingRequests[xhrId].xhr;\n }\n isPendingRequest(xhrId) {\n return xhrId in this.pendingRequests;\n }\n abortRequest(xhrId) {\n const xhr = this.pendingRequests[xhrId].xhr;\n delete this.pendingRequests[xhrId];\n xhr.abort();\n }\n}\nclass PDFNetworkStream {\n constructor(source) {\n this._source = source;\n this._manager = new NetworkManager(source.url, {\n httpHeaders: source.httpHeaders,\n withCredentials: source.withCredentials\n });\n this._rangeChunkSize = source.rangeChunkSize;\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n _onRangeRequestReaderClosed(reader) {\n const i = this._rangeRequestReaders.indexOf(reader);\n if (i >= 0) {\n this._rangeRequestReaders.splice(i, 1);\n }\n }\n getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFNetworkStream.getFullReader can only be called once.\");\n this._fullRequestReader = new PDFNetworkStreamFullRequestReader(this._manager, this._source);\n return this._fullRequestReader;\n }\n getRangeReader(begin, end) {\n const reader = new PDFNetworkStreamRangeRequestReader(this._manager, begin, end);\n reader.onClosed = this._onRangeRequestReaderClosed.bind(this);\n this._rangeRequestReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nexports.PDFNetworkStream = PDFNetworkStream;\nclass PDFNetworkStreamFullRequestReader {\n constructor(manager, source) {\n this._manager = manager;\n const args = {\n onHeadersReceived: this._onHeadersReceived.bind(this),\n onDone: this._onDone.bind(this),\n onError: this._onError.bind(this),\n onProgress: this._onProgress.bind(this)\n };\n this._url = source.url;\n this._fullRequestId = manager.requestFull(args);\n this._headersReceivedCapability = new _util.PromiseCapability();\n this._disableRange = source.disableRange || false;\n this._contentLength = source.length;\n this._rangeChunkSize = source.rangeChunkSize;\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n this._isStreamingSupported = false;\n this._isRangeSupported = false;\n this._cachedChunks = [];\n this._requests = [];\n this._done = false;\n this._storedError = undefined;\n this._filename = null;\n this.onProgress = null;\n }\n _onHeadersReceived() {\n const fullRequestXhrId = this._fullRequestId;\n const fullRequestXhr = this._manager.getRequestXhr(fullRequestXhrId);\n const getResponseHeader = name => {\n return fullRequestXhr.getResponseHeader(name);\n };\n const {\n allowRangeRequests,\n suggestedLength\n } = (0, _network_utils.validateRangeRequestCapabilities)({\n getResponseHeader,\n isHttp: this._manager.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n });\n if (allowRangeRequests) {\n this._isRangeSupported = true;\n }\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n if (this._isRangeSupported) {\n this._manager.abortRequest(fullRequestXhrId);\n }\n this._headersReceivedCapability.resolve();\n }\n _onDone(data) {\n if (data) {\n if (this._requests.length > 0) {\n const requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: data.chunk,\n done: false\n });\n } else {\n this._cachedChunks.push(data.chunk);\n }\n }\n this._done = true;\n if (this._cachedChunks.length > 0) {\n return;\n }\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n }\n _onError(status) {\n this._storedError = (0, _network_utils.createResponseStatusError)(status, this._url);\n this._headersReceivedCapability.reject(this._storedError);\n for (const requestCapability of this._requests) {\n requestCapability.reject(this._storedError);\n }\n this._requests.length = 0;\n this._cachedChunks.length = 0;\n }\n _onProgress(evt) {\n this.onProgress?.({\n loaded: evt.loaded,\n total: evt.lengthComputable ? evt.total : this._contentLength\n });\n }\n get filename() {\n return this._filename;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n get contentLength() {\n return this._contentLength;\n }\n get headersReady() {\n return this._headersReceivedCapability.promise;\n }\n async read() {\n if (this._storedError) {\n throw this._storedError;\n }\n if (this._cachedChunks.length > 0) {\n const chunk = this._cachedChunks.shift();\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = new _util.PromiseCapability();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n this._headersReceivedCapability.reject(reason);\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n if (this._manager.isPendingRequest(this._fullRequestId)) {\n this._manager.abortRequest(this._fullRequestId);\n }\n this._fullRequestReader = null;\n }\n}\nclass PDFNetworkStreamRangeRequestReader {\n constructor(manager, begin, end) {\n this._manager = manager;\n const args = {\n onDone: this._onDone.bind(this),\n onError: this._onError.bind(this),\n onProgress: this._onProgress.bind(this)\n };\n this._url = manager.url;\n this._requestId = manager.requestRange(begin, end, args);\n this._requests = [];\n this._queuedChunk = null;\n this._done = false;\n this._storedError = undefined;\n this.onProgress = null;\n this.onClosed = null;\n }\n _close() {\n this.onClosed?.(this);\n }\n _onDone(data) {\n const chunk = data.chunk;\n if (this._requests.length > 0) {\n const requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunk = chunk;\n }\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n this._close();\n }\n _onError(status) {\n this._storedError = (0, _network_utils.createResponseStatusError)(status, this._url);\n for (const requestCapability of this._requests) {\n requestCapability.reject(this._storedError);\n }\n this._requests.length = 0;\n this._queuedChunk = null;\n }\n _onProgress(evt) {\n if (!this.isStreamingSupported) {\n this.onProgress?.({\n loaded: evt.loaded\n });\n }\n }\n get isStreamingSupported() {\n return false;\n }\n async read() {\n if (this._storedError) {\n throw this._storedError;\n }\n if (this._queuedChunk !== null) {\n const chunk = this._queuedChunk;\n this._queuedChunk = null;\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = new _util.PromiseCapability();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n if (this._manager.isPendingRequest(this._requestId)) {\n this._manager.abortRequest(this._requestId);\n }\n this._close();\n }\n}\n\n/***/ }),\n/* 23 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFNodeStream = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _network_utils = __w_pdfjs_require__(20);\n;\nconst fileUriRegex = /^file:\\/\\/\\/[a-zA-Z]:\\//;\nfunction parseUrl(sourceUrl) {\n const url = require(\"url\");\n const parsedUrl = url.parse(sourceUrl);\n if (parsedUrl.protocol === \"file:\" || parsedUrl.host) {\n return parsedUrl;\n }\n if (/^[a-z]:[/\\\\]/i.test(sourceUrl)) {\n return url.parse(`file:///${sourceUrl}`);\n }\n if (!parsedUrl.host) {\n parsedUrl.protocol = \"file:\";\n }\n return parsedUrl;\n}\nclass PDFNodeStream {\n constructor(source) {\n this.source = source;\n this.url = parseUrl(source.url);\n this.isHttp = this.url.protocol === \"http:\" || this.url.protocol === \"https:\";\n this.isFsUrl = this.url.protocol === \"file:\";\n this.httpHeaders = this.isHttp && source.httpHeaders || {};\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n get _progressiveDataLength() {\n return this._fullRequestReader?._loaded ?? 0;\n }\n getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFNodeStream.getFullReader can only be called once.\");\n this._fullRequestReader = this.isFsUrl ? new PDFNodeStreamFsFullReader(this) : new PDFNodeStreamFullReader(this);\n return this._fullRequestReader;\n }\n getRangeReader(start, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n const rangeReader = this.isFsUrl ? new PDFNodeStreamFsRangeReader(this, start, end) : new PDFNodeStreamRangeReader(this, start, end);\n this._rangeRequestReaders.push(rangeReader);\n return rangeReader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nexports.PDFNodeStream = PDFNodeStream;\nclass BaseFullReader {\n constructor(stream) {\n this._url = stream.url;\n this._done = false;\n this._storedError = null;\n this.onProgress = null;\n const source = stream.source;\n this._contentLength = source.length;\n this._loaded = 0;\n this._filename = null;\n this._disableRange = source.disableRange || false;\n this._rangeChunkSize = source.rangeChunkSize;\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n this._isStreamingSupported = !source.disableStream;\n this._isRangeSupported = !source.disableRange;\n this._readableStream = null;\n this._readCapability = new _util.PromiseCapability();\n this._headersCapability = new _util.PromiseCapability();\n }\n get headersReady() {\n return this._headersCapability.promise;\n }\n get filename() {\n return this._filename;\n }\n get contentLength() {\n return this._contentLength;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._readCapability.promise;\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n if (this._storedError) {\n throw this._storedError;\n }\n const chunk = this._readableStream.read();\n if (chunk === null) {\n this._readCapability = new _util.PromiseCapability();\n return this.read();\n }\n this._loaded += chunk.length;\n this.onProgress?.({\n loaded: this._loaded,\n total: this._contentLength\n });\n const buffer = new Uint8Array(chunk).buffer;\n return {\n value: buffer,\n done: false\n };\n }\n cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n return;\n }\n this._readableStream.destroy(reason);\n }\n _error(reason) {\n this._storedError = reason;\n this._readCapability.resolve();\n }\n _setReadableStream(readableStream) {\n this._readableStream = readableStream;\n readableStream.on(\"readable\", () => {\n this._readCapability.resolve();\n });\n readableStream.on(\"end\", () => {\n readableStream.destroy();\n this._done = true;\n this._readCapability.resolve();\n });\n readableStream.on(\"error\", reason => {\n this._error(reason);\n });\n if (!this._isStreamingSupported && this._isRangeSupported) {\n this._error(new _util.AbortException(\"streaming is disabled\"));\n }\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n}\nclass BaseRangeReader {\n constructor(stream) {\n this._url = stream.url;\n this._done = false;\n this._storedError = null;\n this.onProgress = null;\n this._loaded = 0;\n this._readableStream = null;\n this._readCapability = new _util.PromiseCapability();\n const source = stream.source;\n this._isStreamingSupported = !source.disableStream;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._readCapability.promise;\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n if (this._storedError) {\n throw this._storedError;\n }\n const chunk = this._readableStream.read();\n if (chunk === null) {\n this._readCapability = new _util.PromiseCapability();\n return this.read();\n }\n this._loaded += chunk.length;\n this.onProgress?.({\n loaded: this._loaded\n });\n const buffer = new Uint8Array(chunk).buffer;\n return {\n value: buffer,\n done: false\n };\n }\n cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n return;\n }\n this._readableStream.destroy(reason);\n }\n _error(reason) {\n this._storedError = reason;\n this._readCapability.resolve();\n }\n _setReadableStream(readableStream) {\n this._readableStream = readableStream;\n readableStream.on(\"readable\", () => {\n this._readCapability.resolve();\n });\n readableStream.on(\"end\", () => {\n readableStream.destroy();\n this._done = true;\n this._readCapability.resolve();\n });\n readableStream.on(\"error\", reason => {\n this._error(reason);\n });\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n}\nfunction createRequestOptions(parsedUrl, headers) {\n return {\n protocol: parsedUrl.protocol,\n auth: parsedUrl.auth,\n host: parsedUrl.hostname,\n port: parsedUrl.port,\n path: parsedUrl.path,\n method: \"GET\",\n headers\n };\n}\nclass PDFNodeStreamFullReader extends BaseFullReader {\n constructor(stream) {\n super(stream);\n const handleResponse = response => {\n if (response.statusCode === 404) {\n const error = new _util.MissingPDFException(`Missing PDF \"${this._url}\".`);\n this._storedError = error;\n this._headersCapability.reject(error);\n return;\n }\n this._headersCapability.resolve();\n this._setReadableStream(response);\n const getResponseHeader = name => {\n return this._readableStream.headers[name.toLowerCase()];\n };\n const {\n allowRangeRequests,\n suggestedLength\n } = (0, _network_utils.validateRangeRequestCapabilities)({\n getResponseHeader,\n isHttp: stream.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n });\n this._isRangeSupported = allowRangeRequests;\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n };\n this._request = null;\n if (this._url.protocol === \"http:\") {\n const http = require(\"http\");\n this._request = http.request(createRequestOptions(this._url, stream.httpHeaders), handleResponse);\n } else {\n const https = require(\"https\");\n this._request = https.request(createRequestOptions(this._url, stream.httpHeaders), handleResponse);\n }\n this._request.on(\"error\", reason => {\n this._storedError = reason;\n this._headersCapability.reject(reason);\n });\n this._request.end();\n }\n}\nclass PDFNodeStreamRangeReader extends BaseRangeReader {\n constructor(stream, start, end) {\n super(stream);\n this._httpHeaders = {};\n for (const property in stream.httpHeaders) {\n const value = stream.httpHeaders[property];\n if (value === undefined) {\n continue;\n }\n this._httpHeaders[property] = value;\n }\n this._httpHeaders.Range = `bytes=${start}-${end - 1}`;\n const handleResponse = response => {\n if (response.statusCode === 404) {\n const error = new _util.MissingPDFException(`Missing PDF \"${this._url}\".`);\n this._storedError = error;\n return;\n }\n this._setReadableStream(response);\n };\n this._request = null;\n if (this._url.protocol === \"http:\") {\n const http = require(\"http\");\n this._request = http.request(createRequestOptions(this._url, this._httpHeaders), handleResponse);\n } else {\n const https = require(\"https\");\n this._request = https.request(createRequestOptions(this._url, this._httpHeaders), handleResponse);\n }\n this._request.on(\"error\", reason => {\n this._storedError = reason;\n });\n this._request.end();\n }\n}\nclass PDFNodeStreamFsFullReader extends BaseFullReader {\n constructor(stream) {\n super(stream);\n let path = decodeURIComponent(this._url.path);\n if (fileUriRegex.test(this._url.href)) {\n path = path.replace(/^\\//, \"\");\n }\n const fs = require(\"fs\");\n fs.lstat(path, (error, stat) => {\n if (error) {\n if (error.code === \"ENOENT\") {\n error = new _util.MissingPDFException(`Missing PDF \"${path}\".`);\n }\n this._storedError = error;\n this._headersCapability.reject(error);\n return;\n }\n this._contentLength = stat.size;\n this._setReadableStream(fs.createReadStream(path));\n this._headersCapability.resolve();\n });\n }\n}\nclass PDFNodeStreamFsRangeReader extends BaseRangeReader {\n constructor(stream, start, end) {\n super(stream);\n let path = decodeURIComponent(this._url.path);\n if (fileUriRegex.test(this._url.href)) {\n path = path.replace(/^\\//, \"\");\n }\n const fs = require(\"fs\");\n this._setReadableStream(fs.createReadStream(path, {\n start,\n end: end - 1\n }));\n }\n}\n\n/***/ }),\n/* 24 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SVGGraphics = void 0;\nvar _display_utils = __w_pdfjs_require__(6);\nvar _util = __w_pdfjs_require__(1);\n;\nconst SVG_DEFAULTS = {\n fontStyle: \"normal\",\n fontWeight: \"normal\",\n fillColor: \"#000000\"\n};\nconst XML_NS = \"http://www.w3.org/XML/1998/namespace\";\nconst XLINK_NS = \"http://www.w3.org/1999/xlink\";\nconst LINE_CAP_STYLES = [\"butt\", \"round\", \"square\"];\nconst LINE_JOIN_STYLES = [\"miter\", \"round\", \"bevel\"];\nconst createObjectURL = function (data, contentType = \"\", forceDataSchema = false) {\n if (URL.createObjectURL && typeof Blob !== \"undefined\" && !forceDataSchema) {\n return URL.createObjectURL(new Blob([data], {\n type: contentType\n }));\n }\n const digits = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n let buffer = `data:${contentType};base64,`;\n for (let i = 0, ii = data.length; i < ii; i += 3) {\n const b1 = data[i] & 0xff;\n const b2 = data[i + 1] & 0xff;\n const b3 = data[i + 2] & 0xff;\n const d1 = b1 >> 2,\n d2 = (b1 & 3) << 4 | b2 >> 4;\n const d3 = i + 1 < ii ? (b2 & 0xf) << 2 | b3 >> 6 : 64;\n const d4 = i + 2 < ii ? b3 & 0x3f : 64;\n buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4];\n }\n return buffer;\n};\nconst convertImgDataToPng = function () {\n const PNG_HEADER = new Uint8Array([0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]);\n const CHUNK_WRAPPER_SIZE = 12;\n const crcTable = new Int32Array(256);\n for (let i = 0; i < 256; i++) {\n let c = i;\n for (let h = 0; h < 8; h++) {\n c = c & 1 ? 0xedb88320 ^ c >> 1 & 0x7fffffff : c >> 1 & 0x7fffffff;\n }\n crcTable[i] = c;\n }\n function crc32(data, start, end) {\n let crc = -1;\n for (let i = start; i < end; i++) {\n const a = (crc ^ data[i]) & 0xff;\n const b = crcTable[a];\n crc = crc >>> 8 ^ b;\n }\n return crc ^ -1;\n }\n function writePngChunk(type, body, data, offset) {\n let p = offset;\n const len = body.length;\n data[p] = len >> 24 & 0xff;\n data[p + 1] = len >> 16 & 0xff;\n data[p + 2] = len >> 8 & 0xff;\n data[p + 3] = len & 0xff;\n p += 4;\n data[p] = type.charCodeAt(0) & 0xff;\n data[p + 1] = type.charCodeAt(1) & 0xff;\n data[p + 2] = type.charCodeAt(2) & 0xff;\n data[p + 3] = type.charCodeAt(3) & 0xff;\n p += 4;\n data.set(body, p);\n p += body.length;\n const crc = crc32(data, offset + 4, p);\n data[p] = crc >> 24 & 0xff;\n data[p + 1] = crc >> 16 & 0xff;\n data[p + 2] = crc >> 8 & 0xff;\n data[p + 3] = crc & 0xff;\n }\n function adler32(data, start, end) {\n let a = 1;\n let b = 0;\n for (let i = start; i < end; ++i) {\n a = (a + (data[i] & 0xff)) % 65521;\n b = (b + a) % 65521;\n }\n return b << 16 | a;\n }\n function deflateSync(literals) {\n if (!_util.isNodeJS) {\n return deflateSyncUncompressed(literals);\n }\n try {\n const input = parseInt(process.versions.node) >= 8 ? literals : Buffer.from(literals);\n const output = require(\"zlib\").deflateSync(input, {\n level: 9\n });\n return output instanceof Uint8Array ? output : new Uint8Array(output);\n } catch (e) {\n (0, _util.warn)(\"Not compressing PNG because zlib.deflateSync is unavailable: \" + e);\n }\n return deflateSyncUncompressed(literals);\n }\n function deflateSyncUncompressed(literals) {\n let len = literals.length;\n const maxBlockLength = 0xffff;\n const deflateBlocks = Math.ceil(len / maxBlockLength);\n const idat = new Uint8Array(2 + len + deflateBlocks * 5 + 4);\n let pi = 0;\n idat[pi++] = 0x78;\n idat[pi++] = 0x9c;\n let pos = 0;\n while (len > maxBlockLength) {\n idat[pi++] = 0x00;\n idat[pi++] = 0xff;\n idat[pi++] = 0xff;\n idat[pi++] = 0x00;\n idat[pi++] = 0x00;\n idat.set(literals.subarray(pos, pos + maxBlockLength), pi);\n pi += maxBlockLength;\n pos += maxBlockLength;\n len -= maxBlockLength;\n }\n idat[pi++] = 0x01;\n idat[pi++] = len & 0xff;\n idat[pi++] = len >> 8 & 0xff;\n idat[pi++] = ~len & 0xffff & 0xff;\n idat[pi++] = (~len & 0xffff) >> 8 & 0xff;\n idat.set(literals.subarray(pos), pi);\n pi += literals.length - pos;\n const adler = adler32(literals, 0, literals.length);\n idat[pi++] = adler >> 24 & 0xff;\n idat[pi++] = adler >> 16 & 0xff;\n idat[pi++] = adler >> 8 & 0xff;\n idat[pi++] = adler & 0xff;\n return idat;\n }\n function encode(imgData, kind, forceDataSchema, isMask) {\n const width = imgData.width;\n const height = imgData.height;\n let bitDepth, colorType, lineSize;\n const bytes = imgData.data;\n switch (kind) {\n case _util.ImageKind.GRAYSCALE_1BPP:\n colorType = 0;\n bitDepth = 1;\n lineSize = width + 7 >> 3;\n break;\n case _util.ImageKind.RGB_24BPP:\n colorType = 2;\n bitDepth = 8;\n lineSize = width * 3;\n break;\n case _util.ImageKind.RGBA_32BPP:\n colorType = 6;\n bitDepth = 8;\n lineSize = width * 4;\n break;\n default:\n throw new Error(\"invalid format\");\n }\n const literals = new Uint8Array((1 + lineSize) * height);\n let offsetLiterals = 0,\n offsetBytes = 0;\n for (let y = 0; y < height; ++y) {\n literals[offsetLiterals++] = 0;\n literals.set(bytes.subarray(offsetBytes, offsetBytes + lineSize), offsetLiterals);\n offsetBytes += lineSize;\n offsetLiterals += lineSize;\n }\n if (kind === _util.ImageKind.GRAYSCALE_1BPP && isMask) {\n offsetLiterals = 0;\n for (let y = 0; y < height; y++) {\n offsetLiterals++;\n for (let i = 0; i < lineSize; i++) {\n literals[offsetLiterals++] ^= 0xff;\n }\n }\n }\n const ihdr = new Uint8Array([width >> 24 & 0xff, width >> 16 & 0xff, width >> 8 & 0xff, width & 0xff, height >> 24 & 0xff, height >> 16 & 0xff, height >> 8 & 0xff, height & 0xff, bitDepth, colorType, 0x00, 0x00, 0x00]);\n const idat = deflateSync(literals);\n const pngLength = PNG_HEADER.length + CHUNK_WRAPPER_SIZE * 3 + ihdr.length + idat.length;\n const data = new Uint8Array(pngLength);\n let offset = 0;\n data.set(PNG_HEADER, offset);\n offset += PNG_HEADER.length;\n writePngChunk(\"IHDR\", ihdr, data, offset);\n offset += CHUNK_WRAPPER_SIZE + ihdr.length;\n writePngChunk(\"IDATA\", idat, data, offset);\n offset += CHUNK_WRAPPER_SIZE + idat.length;\n writePngChunk(\"IEND\", new Uint8Array(0), data, offset);\n return createObjectURL(data, \"image/png\", forceDataSchema);\n }\n return function convertImgDataToPng(imgData, forceDataSchema, isMask) {\n const kind = imgData.kind === undefined ? _util.ImageKind.GRAYSCALE_1BPP : imgData.kind;\n return encode(imgData, kind, forceDataSchema, isMask);\n };\n}();\nclass SVGExtraState {\n constructor() {\n this.fontSizeScale = 1;\n this.fontWeight = SVG_DEFAULTS.fontWeight;\n this.fontSize = 0;\n this.textMatrix = _util.IDENTITY_MATRIX;\n this.fontMatrix = _util.FONT_IDENTITY_MATRIX;\n this.leading = 0;\n this.textRenderingMode = _util.TextRenderingMode.FILL;\n this.textMatrixScale = 1;\n this.x = 0;\n this.y = 0;\n this.lineX = 0;\n this.lineY = 0;\n this.charSpacing = 0;\n this.wordSpacing = 0;\n this.textHScale = 1;\n this.textRise = 0;\n this.fillColor = SVG_DEFAULTS.fillColor;\n this.strokeColor = \"#000000\";\n this.fillAlpha = 1;\n this.strokeAlpha = 1;\n this.lineWidth = 1;\n this.lineJoin = \"\";\n this.lineCap = \"\";\n this.miterLimit = 0;\n this.dashArray = [];\n this.dashPhase = 0;\n this.dependencies = [];\n this.activeClipUrl = null;\n this.clipGroup = null;\n this.maskId = \"\";\n }\n clone() {\n return Object.create(this);\n }\n setCurrentPoint(x, y) {\n this.x = x;\n this.y = y;\n }\n}\nfunction opListToTree(opList) {\n let opTree = [];\n const tmp = [];\n for (const opListElement of opList) {\n if (opListElement.fn === \"save\") {\n opTree.push({\n fnId: 92,\n fn: \"group\",\n items: []\n });\n tmp.push(opTree);\n opTree = opTree.at(-1).items;\n continue;\n }\n if (opListElement.fn === \"restore\") {\n opTree = tmp.pop();\n } else {\n opTree.push(opListElement);\n }\n }\n return opTree;\n}\nfunction pf(value) {\n if (Number.isInteger(value)) {\n return value.toString();\n }\n const s = value.toFixed(10);\n let i = s.length - 1;\n if (s[i] !== \"0\") {\n return s;\n }\n do {\n i--;\n } while (s[i] === \"0\");\n return s.substring(0, s[i] === \".\" ? i : i + 1);\n}\nfunction pm(m) {\n if (m[4] === 0 && m[5] === 0) {\n if (m[1] === 0 && m[2] === 0) {\n if (m[0] === 1 && m[3] === 1) {\n return \"\";\n }\n return `scale(${pf(m[0])} ${pf(m[3])})`;\n }\n if (m[0] === m[3] && m[1] === -m[2]) {\n const a = Math.acos(m[0]) * 180 / Math.PI;\n return `rotate(${pf(a)})`;\n }\n } else if (m[0] === 1 && m[1] === 0 && m[2] === 0 && m[3] === 1) {\n return `translate(${pf(m[4])} ${pf(m[5])})`;\n }\n return `matrix(${pf(m[0])} ${pf(m[1])} ${pf(m[2])} ${pf(m[3])} ${pf(m[4])} ` + `${pf(m[5])})`;\n}\nlet clipCount = 0;\nlet maskCount = 0;\nlet shadingCount = 0;\nclass SVGGraphics {\n constructor(commonObjs, objs, forceDataSchema = false) {\n (0, _display_utils.deprecated)(\"The SVG back-end is no longer maintained and *may* be removed in the future.\");\n this.svgFactory = new _display_utils.DOMSVGFactory();\n this.current = new SVGExtraState();\n this.transformMatrix = _util.IDENTITY_MATRIX;\n this.transformStack = [];\n this.extraStack = [];\n this.commonObjs = commonObjs;\n this.objs = objs;\n this.pendingClip = null;\n this.pendingEOFill = false;\n this.embedFonts = false;\n this.embeddedFonts = Object.create(null);\n this.cssStyle = null;\n this.forceDataSchema = !!forceDataSchema;\n this._operatorIdMapping = [];\n for (const op in _util.OPS) {\n this._operatorIdMapping[_util.OPS[op]] = op;\n }\n }\n getObject(data, fallback = null) {\n if (typeof data === \"string\") {\n return data.startsWith(\"g_\") ? this.commonObjs.get(data) : this.objs.get(data);\n }\n return fallback;\n }\n save() {\n this.transformStack.push(this.transformMatrix);\n const old = this.current;\n this.extraStack.push(old);\n this.current = old.clone();\n }\n restore() {\n this.transformMatrix = this.transformStack.pop();\n this.current = this.extraStack.pop();\n this.pendingClip = null;\n this.tgrp = null;\n }\n group(items) {\n this.save();\n this.executeOpTree(items);\n this.restore();\n }\n loadDependencies(operatorList) {\n const fnArray = operatorList.fnArray;\n const argsArray = operatorList.argsArray;\n for (let i = 0, ii = fnArray.length; i < ii; i++) {\n if (fnArray[i] !== _util.OPS.dependency) {\n continue;\n }\n for (const obj of argsArray[i]) {\n const objsPool = obj.startsWith(\"g_\") ? this.commonObjs : this.objs;\n const promise = new Promise(resolve => {\n objsPool.get(obj, resolve);\n });\n this.current.dependencies.push(promise);\n }\n }\n return Promise.all(this.current.dependencies);\n }\n transform(a, b, c, d, e, f) {\n const transformMatrix = [a, b, c, d, e, f];\n this.transformMatrix = _util.Util.transform(this.transformMatrix, transformMatrix);\n this.tgrp = null;\n }\n getSVG(operatorList, viewport) {\n this.viewport = viewport;\n const svgElement = this._initialize(viewport);\n return this.loadDependencies(operatorList).then(() => {\n this.transformMatrix = _util.IDENTITY_MATRIX;\n this.executeOpTree(this.convertOpList(operatorList));\n return svgElement;\n });\n }\n convertOpList(operatorList) {\n const operatorIdMapping = this._operatorIdMapping;\n const argsArray = operatorList.argsArray;\n const fnArray = operatorList.fnArray;\n const opList = [];\n for (let i = 0, ii = fnArray.length; i < ii; i++) {\n const fnId = fnArray[i];\n opList.push({\n fnId,\n fn: operatorIdMapping[fnId],\n args: argsArray[i]\n });\n }\n return opListToTree(opList);\n }\n executeOpTree(opTree) {\n for (const opTreeElement of opTree) {\n const fn = opTreeElement.fn;\n const fnId = opTreeElement.fnId;\n const args = opTreeElement.args;\n switch (fnId | 0) {\n case _util.OPS.beginText:\n this.beginText();\n break;\n case _util.OPS.dependency:\n break;\n case _util.OPS.setLeading:\n this.setLeading(args);\n break;\n case _util.OPS.setLeadingMoveText:\n this.setLeadingMoveText(args[0], args[1]);\n break;\n case _util.OPS.setFont:\n this.setFont(args);\n break;\n case _util.OPS.showText:\n this.showText(args[0]);\n break;\n case _util.OPS.showSpacedText:\n this.showText(args[0]);\n break;\n case _util.OPS.endText:\n this.endText();\n break;\n case _util.OPS.moveText:\n this.moveText(args[0], args[1]);\n break;\n case _util.OPS.setCharSpacing:\n this.setCharSpacing(args[0]);\n break;\n case _util.OPS.setWordSpacing:\n this.setWordSpacing(args[0]);\n break;\n case _util.OPS.setHScale:\n this.setHScale(args[0]);\n break;\n case _util.OPS.setTextMatrix:\n this.setTextMatrix(args[0], args[1], args[2], args[3], args[4], args[5]);\n break;\n case _util.OPS.setTextRise:\n this.setTextRise(args[0]);\n break;\n case _util.OPS.setTextRenderingMode:\n this.setTextRenderingMode(args[0]);\n break;\n case _util.OPS.setLineWidth:\n this.setLineWidth(args[0]);\n break;\n case _util.OPS.setLineJoin:\n this.setLineJoin(args[0]);\n break;\n case _util.OPS.setLineCap:\n this.setLineCap(args[0]);\n break;\n case _util.OPS.setMiterLimit:\n this.setMiterLimit(args[0]);\n break;\n case _util.OPS.setFillRGBColor:\n this.setFillRGBColor(args[0], args[1], args[2]);\n break;\n case _util.OPS.setStrokeRGBColor:\n this.setStrokeRGBColor(args[0], args[1], args[2]);\n break;\n case _util.OPS.setStrokeColorN:\n this.setStrokeColorN(args);\n break;\n case _util.OPS.setFillColorN:\n this.setFillColorN(args);\n break;\n case _util.OPS.shadingFill:\n this.shadingFill(args[0]);\n break;\n case _util.OPS.setDash:\n this.setDash(args[0], args[1]);\n break;\n case _util.OPS.setRenderingIntent:\n this.setRenderingIntent(args[0]);\n break;\n case _util.OPS.setFlatness:\n this.setFlatness(args[0]);\n break;\n case _util.OPS.setGState:\n this.setGState(args[0]);\n break;\n case _util.OPS.fill:\n this.fill();\n break;\n case _util.OPS.eoFill:\n this.eoFill();\n break;\n case _util.OPS.stroke:\n this.stroke();\n break;\n case _util.OPS.fillStroke:\n this.fillStroke();\n break;\n case _util.OPS.eoFillStroke:\n this.eoFillStroke();\n break;\n case _util.OPS.clip:\n this.clip(\"nonzero\");\n break;\n case _util.OPS.eoClip:\n this.clip(\"evenodd\");\n break;\n case _util.OPS.paintSolidColorImageMask:\n this.paintSolidColorImageMask();\n break;\n case _util.OPS.paintImageXObject:\n this.paintImageXObject(args[0]);\n break;\n case _util.OPS.paintInlineImageXObject:\n this.paintInlineImageXObject(args[0]);\n break;\n case _util.OPS.paintImageMaskXObject:\n this.paintImageMaskXObject(args[0]);\n break;\n case _util.OPS.paintFormXObjectBegin:\n this.paintFormXObjectBegin(args[0], args[1]);\n break;\n case _util.OPS.paintFormXObjectEnd:\n this.paintFormXObjectEnd();\n break;\n case _util.OPS.closePath:\n this.closePath();\n break;\n case _util.OPS.closeStroke:\n this.closeStroke();\n break;\n case _util.OPS.closeFillStroke:\n this.closeFillStroke();\n break;\n case _util.OPS.closeEOFillStroke:\n this.closeEOFillStroke();\n break;\n case _util.OPS.nextLine:\n this.nextLine();\n break;\n case _util.OPS.transform:\n this.transform(args[0], args[1], args[2], args[3], args[4], args[5]);\n break;\n case _util.OPS.constructPath:\n this.constructPath(args[0], args[1]);\n break;\n case _util.OPS.endPath:\n this.endPath();\n break;\n case 92:\n this.group(opTreeElement.items);\n break;\n default:\n (0, _util.warn)(`Unimplemented operator ${fn}`);\n break;\n }\n }\n }\n setWordSpacing(wordSpacing) {\n this.current.wordSpacing = wordSpacing;\n }\n setCharSpacing(charSpacing) {\n this.current.charSpacing = charSpacing;\n }\n nextLine() {\n this.moveText(0, this.current.leading);\n }\n setTextMatrix(a, b, c, d, e, f) {\n const current = this.current;\n current.textMatrix = current.lineMatrix = [a, b, c, d, e, f];\n current.textMatrixScale = Math.hypot(a, b);\n current.x = current.lineX = 0;\n current.y = current.lineY = 0;\n current.xcoords = [];\n current.ycoords = [];\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", `${pf(current.fontSize)}px`);\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n current.txtElement = this.svgFactory.createElement(\"svg:text\");\n current.txtElement.append(current.tspan);\n }\n beginText() {\n const current = this.current;\n current.x = current.lineX = 0;\n current.y = current.lineY = 0;\n current.textMatrix = _util.IDENTITY_MATRIX;\n current.lineMatrix = _util.IDENTITY_MATRIX;\n current.textMatrixScale = 1;\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.txtElement = this.svgFactory.createElement(\"svg:text\");\n current.txtgrp = this.svgFactory.createElement(\"svg:g\");\n current.xcoords = [];\n current.ycoords = [];\n }\n moveText(x, y) {\n const current = this.current;\n current.x = current.lineX += x;\n current.y = current.lineY += y;\n current.xcoords = [];\n current.ycoords = [];\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", `${pf(current.fontSize)}px`);\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n }\n showText(glyphs) {\n const current = this.current;\n const font = current.font;\n const fontSize = current.fontSize;\n if (fontSize === 0) {\n return;\n }\n const fontSizeScale = current.fontSizeScale;\n const charSpacing = current.charSpacing;\n const wordSpacing = current.wordSpacing;\n const fontDirection = current.fontDirection;\n const textHScale = current.textHScale * fontDirection;\n const vertical = font.vertical;\n const spacingDir = vertical ? 1 : -1;\n const defaultVMetrics = font.defaultVMetrics;\n const widthAdvanceScale = fontSize * current.fontMatrix[0];\n let x = 0;\n for (const glyph of glyphs) {\n if (glyph === null) {\n x += fontDirection * wordSpacing;\n continue;\n } else if (typeof glyph === \"number\") {\n x += spacingDir * glyph * fontSize / 1000;\n continue;\n }\n const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n const character = glyph.fontChar;\n let scaledX, scaledY;\n let width = glyph.width;\n if (vertical) {\n let vx;\n const vmetric = glyph.vmetric || defaultVMetrics;\n vx = glyph.vmetric ? vmetric[1] : width * 0.5;\n vx = -vx * widthAdvanceScale;\n const vy = vmetric[2] * widthAdvanceScale;\n width = vmetric ? -vmetric[0] : width;\n scaledX = vx / fontSizeScale;\n scaledY = (x + vy) / fontSizeScale;\n } else {\n scaledX = x / fontSizeScale;\n scaledY = 0;\n }\n if (glyph.isInFont || font.missingFile) {\n current.xcoords.push(current.x + scaledX);\n if (vertical) {\n current.ycoords.push(-current.y + scaledY);\n }\n current.tspan.textContent += character;\n } else {}\n const charWidth = vertical ? width * widthAdvanceScale - spacing * fontDirection : width * widthAdvanceScale + spacing * fontDirection;\n x += charWidth;\n }\n current.tspan.setAttributeNS(null, \"x\", current.xcoords.map(pf).join(\" \"));\n if (vertical) {\n current.tspan.setAttributeNS(null, \"y\", current.ycoords.map(pf).join(\" \"));\n } else {\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n }\n if (vertical) {\n current.y -= x;\n } else {\n current.x += x * textHScale;\n }\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", `${pf(current.fontSize)}px`);\n if (current.fontStyle !== SVG_DEFAULTS.fontStyle) {\n current.tspan.setAttributeNS(null, \"font-style\", current.fontStyle);\n }\n if (current.fontWeight !== SVG_DEFAULTS.fontWeight) {\n current.tspan.setAttributeNS(null, \"font-weight\", current.fontWeight);\n }\n const fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n if (current.fillColor !== SVG_DEFAULTS.fillColor) {\n current.tspan.setAttributeNS(null, \"fill\", current.fillColor);\n }\n if (current.fillAlpha < 1) {\n current.tspan.setAttributeNS(null, \"fill-opacity\", current.fillAlpha);\n }\n } else if (current.textRenderingMode === _util.TextRenderingMode.ADD_TO_PATH) {\n current.tspan.setAttributeNS(null, \"fill\", \"transparent\");\n } else {\n current.tspan.setAttributeNS(null, \"fill\", \"none\");\n }\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n const lineWidthScale = 1 / (current.textMatrixScale || 1);\n this._setStrokeAttributes(current.tspan, lineWidthScale);\n }\n let textMatrix = current.textMatrix;\n if (current.textRise !== 0) {\n textMatrix = textMatrix.slice();\n textMatrix[5] += current.textRise;\n }\n current.txtElement.setAttributeNS(null, \"transform\", `${pm(textMatrix)} scale(${pf(textHScale)}, -1)`);\n current.txtElement.setAttributeNS(XML_NS, \"xml:space\", \"preserve\");\n current.txtElement.append(current.tspan);\n current.txtgrp.append(current.txtElement);\n this._ensureTransformGroup().append(current.txtElement);\n }\n setLeadingMoveText(x, y) {\n this.setLeading(-y);\n this.moveText(x, y);\n }\n addFontStyle(fontObj) {\n if (!fontObj.data) {\n throw new Error(\"addFontStyle: No font data available, \" + 'ensure that the \"fontExtraProperties\" API parameter is set.');\n }\n if (!this.cssStyle) {\n this.cssStyle = this.svgFactory.createElement(\"svg:style\");\n this.cssStyle.setAttributeNS(null, \"type\", \"text/css\");\n this.defs.append(this.cssStyle);\n }\n const url = createObjectURL(fontObj.data, fontObj.mimetype, this.forceDataSchema);\n this.cssStyle.textContent += `@font-face { font-family: \"${fontObj.loadedName}\";` + ` src: url(${url}); }\\n`;\n }\n setFont(details) {\n const current = this.current;\n const fontObj = this.commonObjs.get(details[0]);\n let size = details[1];\n current.font = fontObj;\n if (this.embedFonts && !fontObj.missingFile && !this.embeddedFonts[fontObj.loadedName]) {\n this.addFontStyle(fontObj);\n this.embeddedFonts[fontObj.loadedName] = fontObj;\n }\n current.fontMatrix = fontObj.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n let bold = \"normal\";\n if (fontObj.black) {\n bold = \"900\";\n } else if (fontObj.bold) {\n bold = \"bold\";\n }\n const italic = fontObj.italic ? \"italic\" : \"normal\";\n if (size < 0) {\n size = -size;\n current.fontDirection = -1;\n } else {\n current.fontDirection = 1;\n }\n current.fontSize = size;\n current.fontFamily = fontObj.loadedName;\n current.fontWeight = bold;\n current.fontStyle = italic;\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n current.xcoords = [];\n current.ycoords = [];\n }\n endText() {\n const current = this.current;\n if (current.textRenderingMode & _util.TextRenderingMode.ADD_TO_PATH_FLAG && current.txtElement?.hasChildNodes()) {\n current.element = current.txtElement;\n this.clip(\"nonzero\");\n this.endPath();\n }\n }\n setLineWidth(width) {\n if (width > 0) {\n this.current.lineWidth = width;\n }\n }\n setLineCap(style) {\n this.current.lineCap = LINE_CAP_STYLES[style];\n }\n setLineJoin(style) {\n this.current.lineJoin = LINE_JOIN_STYLES[style];\n }\n setMiterLimit(limit) {\n this.current.miterLimit = limit;\n }\n setStrokeAlpha(strokeAlpha) {\n this.current.strokeAlpha = strokeAlpha;\n }\n setStrokeRGBColor(r, g, b) {\n this.current.strokeColor = _util.Util.makeHexColor(r, g, b);\n }\n setFillAlpha(fillAlpha) {\n this.current.fillAlpha = fillAlpha;\n }\n setFillRGBColor(r, g, b) {\n this.current.fillColor = _util.Util.makeHexColor(r, g, b);\n this.current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n this.current.xcoords = [];\n this.current.ycoords = [];\n }\n setStrokeColorN(args) {\n this.current.strokeColor = this._makeColorN_Pattern(args);\n }\n setFillColorN(args) {\n this.current.fillColor = this._makeColorN_Pattern(args);\n }\n shadingFill(args) {\n const {\n width,\n height\n } = this.viewport;\n const inv = _util.Util.inverseTransform(this.transformMatrix);\n const [x0, y0, x1, y1] = _util.Util.getAxialAlignedBoundingBox([0, 0, width, height], inv);\n const rect = this.svgFactory.createElement(\"svg:rect\");\n rect.setAttributeNS(null, \"x\", x0);\n rect.setAttributeNS(null, \"y\", y0);\n rect.setAttributeNS(null, \"width\", x1 - x0);\n rect.setAttributeNS(null, \"height\", y1 - y0);\n rect.setAttributeNS(null, \"fill\", this._makeShadingPattern(args));\n if (this.current.fillAlpha < 1) {\n rect.setAttributeNS(null, \"fill-opacity\", this.current.fillAlpha);\n }\n this._ensureTransformGroup().append(rect);\n }\n _makeColorN_Pattern(args) {\n if (args[0] === \"TilingPattern\") {\n return this._makeTilingPattern(args);\n }\n return this._makeShadingPattern(args);\n }\n _makeTilingPattern(args) {\n const color = args[1];\n const operatorList = args[2];\n const matrix = args[3] || _util.IDENTITY_MATRIX;\n const [x0, y0, x1, y1] = args[4];\n const xstep = args[5];\n const ystep = args[6];\n const paintType = args[7];\n const tilingId = `shading${shadingCount++}`;\n const [tx0, ty0, tx1, ty1] = _util.Util.normalizeRect([..._util.Util.applyTransform([x0, y0], matrix), ..._util.Util.applyTransform([x1, y1], matrix)]);\n const [xscale, yscale] = _util.Util.singularValueDecompose2dScale(matrix);\n const txstep = xstep * xscale;\n const tystep = ystep * yscale;\n const tiling = this.svgFactory.createElement(\"svg:pattern\");\n tiling.setAttributeNS(null, \"id\", tilingId);\n tiling.setAttributeNS(null, \"patternUnits\", \"userSpaceOnUse\");\n tiling.setAttributeNS(null, \"width\", txstep);\n tiling.setAttributeNS(null, \"height\", tystep);\n tiling.setAttributeNS(null, \"x\", `${tx0}`);\n tiling.setAttributeNS(null, \"y\", `${ty0}`);\n const svg = this.svg;\n const transformMatrix = this.transformMatrix;\n const fillColor = this.current.fillColor;\n const strokeColor = this.current.strokeColor;\n const bbox = this.svgFactory.create(tx1 - tx0, ty1 - ty0);\n this.svg = bbox;\n this.transformMatrix = matrix;\n if (paintType === 2) {\n const cssColor = _util.Util.makeHexColor(...color);\n this.current.fillColor = cssColor;\n this.current.strokeColor = cssColor;\n }\n this.executeOpTree(this.convertOpList(operatorList));\n this.svg = svg;\n this.transformMatrix = transformMatrix;\n this.current.fillColor = fillColor;\n this.current.strokeColor = strokeColor;\n tiling.append(bbox.childNodes[0]);\n this.defs.append(tiling);\n return `url(#${tilingId})`;\n }\n _makeShadingPattern(args) {\n if (typeof args === \"string\") {\n args = this.objs.get(args);\n }\n switch (args[0]) {\n case \"RadialAxial\":\n const shadingId = `shading${shadingCount++}`;\n const colorStops = args[3];\n let gradient;\n switch (args[1]) {\n case \"axial\":\n const point0 = args[4];\n const point1 = args[5];\n gradient = this.svgFactory.createElement(\"svg:linearGradient\");\n gradient.setAttributeNS(null, \"id\", shadingId);\n gradient.setAttributeNS(null, \"gradientUnits\", \"userSpaceOnUse\");\n gradient.setAttributeNS(null, \"x1\", point0[0]);\n gradient.setAttributeNS(null, \"y1\", point0[1]);\n gradient.setAttributeNS(null, \"x2\", point1[0]);\n gradient.setAttributeNS(null, \"y2\", point1[1]);\n break;\n case \"radial\":\n const focalPoint = args[4];\n const circlePoint = args[5];\n const focalRadius = args[6];\n const circleRadius = args[7];\n gradient = this.svgFactory.createElement(\"svg:radialGradient\");\n gradient.setAttributeNS(null, \"id\", shadingId);\n gradient.setAttributeNS(null, \"gradientUnits\", \"userSpaceOnUse\");\n gradient.setAttributeNS(null, \"cx\", circlePoint[0]);\n gradient.setAttributeNS(null, \"cy\", circlePoint[1]);\n gradient.setAttributeNS(null, \"r\", circleRadius);\n gradient.setAttributeNS(null, \"fx\", focalPoint[0]);\n gradient.setAttributeNS(null, \"fy\", focalPoint[1]);\n gradient.setAttributeNS(null, \"fr\", focalRadius);\n break;\n default:\n throw new Error(`Unknown RadialAxial type: ${args[1]}`);\n }\n for (const colorStop of colorStops) {\n const stop = this.svgFactory.createElement(\"svg:stop\");\n stop.setAttributeNS(null, \"offset\", colorStop[0]);\n stop.setAttributeNS(null, \"stop-color\", colorStop[1]);\n gradient.append(stop);\n }\n this.defs.append(gradient);\n return `url(#${shadingId})`;\n case \"Mesh\":\n (0, _util.warn)(\"Unimplemented pattern Mesh\");\n return null;\n case \"Dummy\":\n return \"hotpink\";\n default:\n throw new Error(`Unknown IR type: ${args[0]}`);\n }\n }\n setDash(dashArray, dashPhase) {\n this.current.dashArray = dashArray;\n this.current.dashPhase = dashPhase;\n }\n constructPath(ops, args) {\n const current = this.current;\n let x = current.x,\n y = current.y;\n let d = [];\n let j = 0;\n for (const op of ops) {\n switch (op | 0) {\n case _util.OPS.rectangle:\n x = args[j++];\n y = args[j++];\n const width = args[j++];\n const height = args[j++];\n const xw = x + width;\n const yh = y + height;\n d.push(\"M\", pf(x), pf(y), \"L\", pf(xw), pf(y), \"L\", pf(xw), pf(yh), \"L\", pf(x), pf(yh), \"Z\");\n break;\n case _util.OPS.moveTo:\n x = args[j++];\n y = args[j++];\n d.push(\"M\", pf(x), pf(y));\n break;\n case _util.OPS.lineTo:\n x = args[j++];\n y = args[j++];\n d.push(\"L\", pf(x), pf(y));\n break;\n case _util.OPS.curveTo:\n x = args[j + 4];\n y = args[j + 5];\n d.push(\"C\", pf(args[j]), pf(args[j + 1]), pf(args[j + 2]), pf(args[j + 3]), pf(x), pf(y));\n j += 6;\n break;\n case _util.OPS.curveTo2:\n d.push(\"C\", pf(x), pf(y), pf(args[j]), pf(args[j + 1]), pf(args[j + 2]), pf(args[j + 3]));\n x = args[j + 2];\n y = args[j + 3];\n j += 4;\n break;\n case _util.OPS.curveTo3:\n x = args[j + 2];\n y = args[j + 3];\n d.push(\"C\", pf(args[j]), pf(args[j + 1]), pf(x), pf(y), pf(x), pf(y));\n j += 4;\n break;\n case _util.OPS.closePath:\n d.push(\"Z\");\n break;\n }\n }\n d = d.join(\" \");\n if (current.path && ops.length > 0 && ops[0] !== _util.OPS.rectangle && ops[0] !== _util.OPS.moveTo) {\n d = current.path.getAttributeNS(null, \"d\") + d;\n } else {\n current.path = this.svgFactory.createElement(\"svg:path\");\n this._ensureTransformGroup().append(current.path);\n }\n current.path.setAttributeNS(null, \"d\", d);\n current.path.setAttributeNS(null, \"fill\", \"none\");\n current.element = current.path;\n current.setCurrentPoint(x, y);\n }\n endPath() {\n const current = this.current;\n current.path = null;\n if (!this.pendingClip) {\n return;\n }\n if (!current.element) {\n this.pendingClip = null;\n return;\n }\n const clipId = `clippath${clipCount++}`;\n const clipPath = this.svgFactory.createElement(\"svg:clipPath\");\n clipPath.setAttributeNS(null, \"id\", clipId);\n clipPath.setAttributeNS(null, \"transform\", pm(this.transformMatrix));\n const clipElement = current.element.cloneNode(true);\n if (this.pendingClip === \"evenodd\") {\n clipElement.setAttributeNS(null, \"clip-rule\", \"evenodd\");\n } else {\n clipElement.setAttributeNS(null, \"clip-rule\", \"nonzero\");\n }\n this.pendingClip = null;\n clipPath.append(clipElement);\n this.defs.append(clipPath);\n if (current.activeClipUrl) {\n current.clipGroup = null;\n for (const prev of this.extraStack) {\n prev.clipGroup = null;\n }\n clipPath.setAttributeNS(null, \"clip-path\", current.activeClipUrl);\n }\n current.activeClipUrl = `url(#${clipId})`;\n this.tgrp = null;\n }\n clip(type) {\n this.pendingClip = type;\n }\n closePath() {\n const current = this.current;\n if (current.path) {\n const d = `${current.path.getAttributeNS(null, \"d\")}Z`;\n current.path.setAttributeNS(null, \"d\", d);\n }\n }\n setLeading(leading) {\n this.current.leading = -leading;\n }\n setTextRise(textRise) {\n this.current.textRise = textRise;\n }\n setTextRenderingMode(textRenderingMode) {\n this.current.textRenderingMode = textRenderingMode;\n }\n setHScale(scale) {\n this.current.textHScale = scale / 100;\n }\n setRenderingIntent(intent) {}\n setFlatness(flatness) {}\n setGState(states) {\n for (const [key, value] of states) {\n switch (key) {\n case \"LW\":\n this.setLineWidth(value);\n break;\n case \"LC\":\n this.setLineCap(value);\n break;\n case \"LJ\":\n this.setLineJoin(value);\n break;\n case \"ML\":\n this.setMiterLimit(value);\n break;\n case \"D\":\n this.setDash(value[0], value[1]);\n break;\n case \"RI\":\n this.setRenderingIntent(value);\n break;\n case \"FL\":\n this.setFlatness(value);\n break;\n case \"Font\":\n this.setFont(value);\n break;\n case \"CA\":\n this.setStrokeAlpha(value);\n break;\n case \"ca\":\n this.setFillAlpha(value);\n break;\n default:\n (0, _util.warn)(`Unimplemented graphic state operator ${key}`);\n break;\n }\n }\n }\n fill() {\n const current = this.current;\n if (current.element) {\n current.element.setAttributeNS(null, \"fill\", current.fillColor);\n current.element.setAttributeNS(null, \"fill-opacity\", current.fillAlpha);\n this.endPath();\n }\n }\n stroke() {\n const current = this.current;\n if (current.element) {\n this._setStrokeAttributes(current.element);\n current.element.setAttributeNS(null, \"fill\", \"none\");\n this.endPath();\n }\n }\n _setStrokeAttributes(element, lineWidthScale = 1) {\n const current = this.current;\n let dashArray = current.dashArray;\n if (lineWidthScale !== 1 && dashArray.length > 0) {\n dashArray = dashArray.map(function (value) {\n return lineWidthScale * value;\n });\n }\n element.setAttributeNS(null, \"stroke\", current.strokeColor);\n element.setAttributeNS(null, \"stroke-opacity\", current.strokeAlpha);\n element.setAttributeNS(null, \"stroke-miterlimit\", pf(current.miterLimit));\n element.setAttributeNS(null, \"stroke-linecap\", current.lineCap);\n element.setAttributeNS(null, \"stroke-linejoin\", current.lineJoin);\n element.setAttributeNS(null, \"stroke-width\", pf(lineWidthScale * current.lineWidth) + \"px\");\n element.setAttributeNS(null, \"stroke-dasharray\", dashArray.map(pf).join(\" \"));\n element.setAttributeNS(null, \"stroke-dashoffset\", pf(lineWidthScale * current.dashPhase) + \"px\");\n }\n eoFill() {\n this.current.element?.setAttributeNS(null, \"fill-rule\", \"evenodd\");\n this.fill();\n }\n fillStroke() {\n this.stroke();\n this.fill();\n }\n eoFillStroke() {\n this.current.element?.setAttributeNS(null, \"fill-rule\", \"evenodd\");\n this.fillStroke();\n }\n closeStroke() {\n this.closePath();\n this.stroke();\n }\n closeFillStroke() {\n this.closePath();\n this.fillStroke();\n }\n closeEOFillStroke() {\n this.closePath();\n this.eoFillStroke();\n }\n paintSolidColorImageMask() {\n const rect = this.svgFactory.createElement(\"svg:rect\");\n rect.setAttributeNS(null, \"x\", \"0\");\n rect.setAttributeNS(null, \"y\", \"0\");\n rect.setAttributeNS(null, \"width\", \"1px\");\n rect.setAttributeNS(null, \"height\", \"1px\");\n rect.setAttributeNS(null, \"fill\", this.current.fillColor);\n this._ensureTransformGroup().append(rect);\n }\n paintImageXObject(objId) {\n const imgData = this.getObject(objId);\n if (!imgData) {\n (0, _util.warn)(`Dependent image with object ID ${objId} is not ready yet`);\n return;\n }\n this.paintInlineImageXObject(imgData);\n }\n paintInlineImageXObject(imgData, mask) {\n const width = imgData.width;\n const height = imgData.height;\n const imgSrc = convertImgDataToPng(imgData, this.forceDataSchema, !!mask);\n const cliprect = this.svgFactory.createElement(\"svg:rect\");\n cliprect.setAttributeNS(null, \"x\", \"0\");\n cliprect.setAttributeNS(null, \"y\", \"0\");\n cliprect.setAttributeNS(null, \"width\", pf(width));\n cliprect.setAttributeNS(null, \"height\", pf(height));\n this.current.element = cliprect;\n this.clip(\"nonzero\");\n const imgEl = this.svgFactory.createElement(\"svg:image\");\n imgEl.setAttributeNS(XLINK_NS, \"xlink:href\", imgSrc);\n imgEl.setAttributeNS(null, \"x\", \"0\");\n imgEl.setAttributeNS(null, \"y\", pf(-height));\n imgEl.setAttributeNS(null, \"width\", pf(width) + \"px\");\n imgEl.setAttributeNS(null, \"height\", pf(height) + \"px\");\n imgEl.setAttributeNS(null, \"transform\", `scale(${pf(1 / width)} ${pf(-1 / height)})`);\n if (mask) {\n mask.append(imgEl);\n } else {\n this._ensureTransformGroup().append(imgEl);\n }\n }\n paintImageMaskXObject(img) {\n const imgData = this.getObject(img.data, img);\n if (imgData.bitmap) {\n (0, _util.warn)(\"paintImageMaskXObject: ImageBitmap support is not implemented, \" + \"ensure that the `isOffscreenCanvasSupported` API parameter is disabled.\");\n return;\n }\n const current = this.current;\n const width = imgData.width;\n const height = imgData.height;\n const fillColor = current.fillColor;\n current.maskId = `mask${maskCount++}`;\n const mask = this.svgFactory.createElement(\"svg:mask\");\n mask.setAttributeNS(null, \"id\", current.maskId);\n const rect = this.svgFactory.createElement(\"svg:rect\");\n rect.setAttributeNS(null, \"x\", \"0\");\n rect.setAttributeNS(null, \"y\", \"0\");\n rect.setAttributeNS(null, \"width\", pf(width));\n rect.setAttributeNS(null, \"height\", pf(height));\n rect.setAttributeNS(null, \"fill\", fillColor);\n rect.setAttributeNS(null, \"mask\", `url(#${current.maskId})`);\n this.defs.append(mask);\n this._ensureTransformGroup().append(rect);\n this.paintInlineImageXObject(imgData, mask);\n }\n paintFormXObjectBegin(matrix, bbox) {\n if (Array.isArray(matrix) && matrix.length === 6) {\n this.transform(matrix[0], matrix[1], matrix[2], matrix[3], matrix[4], matrix[5]);\n }\n if (bbox) {\n const width = bbox[2] - bbox[0];\n const height = bbox[3] - bbox[1];\n const cliprect = this.svgFactory.createElement(\"svg:rect\");\n cliprect.setAttributeNS(null, \"x\", bbox[0]);\n cliprect.setAttributeNS(null, \"y\", bbox[1]);\n cliprect.setAttributeNS(null, \"width\", pf(width));\n cliprect.setAttributeNS(null, \"height\", pf(height));\n this.current.element = cliprect;\n this.clip(\"nonzero\");\n this.endPath();\n }\n }\n paintFormXObjectEnd() {}\n _initialize(viewport) {\n const svg = this.svgFactory.create(viewport.width, viewport.height);\n const definitions = this.svgFactory.createElement(\"svg:defs\");\n svg.append(definitions);\n this.defs = definitions;\n const rootGroup = this.svgFactory.createElement(\"svg:g\");\n rootGroup.setAttributeNS(null, \"transform\", pm(viewport.transform));\n svg.append(rootGroup);\n this.svg = rootGroup;\n return svg;\n }\n _ensureClipGroup() {\n if (!this.current.clipGroup) {\n const clipGroup = this.svgFactory.createElement(\"svg:g\");\n clipGroup.setAttributeNS(null, \"clip-path\", this.current.activeClipUrl);\n this.svg.append(clipGroup);\n this.current.clipGroup = clipGroup;\n }\n return this.current.clipGroup;\n }\n _ensureTransformGroup() {\n if (!this.tgrp) {\n this.tgrp = this.svgFactory.createElement(\"svg:g\");\n this.tgrp.setAttributeNS(null, \"transform\", pm(this.transformMatrix));\n if (this.current.activeClipUrl) {\n this._ensureClipGroup().append(this.tgrp);\n } else {\n this.svg.append(this.tgrp);\n }\n }\n return this.tgrp;\n }\n}\nexports.SVGGraphics = SVGGraphics;\n\n/***/ }),\n/* 25 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XfaText = void 0;\nclass XfaText {\n static textContent(xfa) {\n const items = [];\n const output = {\n items,\n styles: Object.create(null)\n };\n function walk(node) {\n if (!node) {\n return;\n }\n let str = null;\n const name = node.name;\n if (name === \"#text\") {\n str = node.value;\n } else if (!XfaText.shouldBuildText(name)) {\n return;\n } else if (node?.attributes?.textContent) {\n str = node.attributes.textContent;\n } else if (node.value) {\n str = node.value;\n }\n if (str !== null) {\n items.push({\n str\n });\n }\n if (!node.children) {\n return;\n }\n for (const child of node.children) {\n walk(child);\n }\n }\n walk(xfa);\n return output;\n }\n static shouldBuildText(name) {\n return !(name === \"textarea\" || name === \"input\" || name === \"option\" || name === \"select\");\n }\n}\nexports.XfaText = XfaText;\n\n/***/ }),\n/* 26 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.TextLayerRenderTask = void 0;\nexports.renderTextLayer = renderTextLayer;\nexports.updateTextLayer = updateTextLayer;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nconst MAX_TEXT_DIVS_TO_RENDER = 100000;\nconst DEFAULT_FONT_SIZE = 30;\nconst DEFAULT_FONT_ASCENT = 0.8;\nconst ascentCache = new Map();\nfunction getCtx(size, isOffscreenCanvasSupported) {\n let ctx;\n if (isOffscreenCanvasSupported && _util.FeatureTest.isOffscreenCanvasSupported) {\n ctx = new OffscreenCanvas(size, size).getContext(\"2d\", {\n alpha: false\n });\n } else {\n const canvas = document.createElement(\"canvas\");\n canvas.width = canvas.height = size;\n ctx = canvas.getContext(\"2d\", {\n alpha: false\n });\n }\n return ctx;\n}\nfunction getAscent(fontFamily, isOffscreenCanvasSupported) {\n const cachedAscent = ascentCache.get(fontFamily);\n if (cachedAscent) {\n return cachedAscent;\n }\n const ctx = getCtx(DEFAULT_FONT_SIZE, isOffscreenCanvasSupported);\n ctx.font = `${DEFAULT_FONT_SIZE}px ${fontFamily}`;\n const metrics = ctx.measureText(\"\");\n let ascent = metrics.fontBoundingBoxAscent;\n let descent = Math.abs(metrics.fontBoundingBoxDescent);\n if (ascent) {\n const ratio = ascent / (ascent + descent);\n ascentCache.set(fontFamily, ratio);\n ctx.canvas.width = ctx.canvas.height = 0;\n return ratio;\n }\n ctx.strokeStyle = \"red\";\n ctx.clearRect(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE);\n ctx.strokeText(\"g\", 0, 0);\n let pixels = ctx.getImageData(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE).data;\n descent = 0;\n for (let i = pixels.length - 1 - 3; i >= 0; i -= 4) {\n if (pixels[i] > 0) {\n descent = Math.ceil(i / 4 / DEFAULT_FONT_SIZE);\n break;\n }\n }\n ctx.clearRect(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE);\n ctx.strokeText(\"A\", 0, DEFAULT_FONT_SIZE);\n pixels = ctx.getImageData(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE).data;\n ascent = 0;\n for (let i = 0, ii = pixels.length; i < ii; i += 4) {\n if (pixels[i] > 0) {\n ascent = DEFAULT_FONT_SIZE - Math.floor(i / 4 / DEFAULT_FONT_SIZE);\n break;\n }\n }\n ctx.canvas.width = ctx.canvas.height = 0;\n if (ascent) {\n const ratio = ascent / (ascent + descent);\n ascentCache.set(fontFamily, ratio);\n return ratio;\n }\n ascentCache.set(fontFamily, DEFAULT_FONT_ASCENT);\n return DEFAULT_FONT_ASCENT;\n}\nfunction appendText(task, geom, styles) {\n const textDiv = document.createElement(\"span\");\n const textDivProperties = {\n angle: 0,\n canvasWidth: 0,\n hasText: geom.str !== \"\",\n hasEOL: geom.hasEOL,\n fontSize: 0\n };\n task._textDivs.push(textDiv);\n const tx = _util.Util.transform(task._transform, geom.transform);\n let angle = Math.atan2(tx[1], tx[0]);\n const style = styles[geom.fontName];\n if (style.vertical) {\n angle += Math.PI / 2;\n }\n const fontHeight = Math.hypot(tx[2], tx[3]);\n const fontAscent = fontHeight * getAscent(style.fontFamily, task._isOffscreenCanvasSupported);\n let left, top;\n if (angle === 0) {\n left = tx[4];\n top = tx[5] - fontAscent;\n } else {\n left = tx[4] + fontAscent * Math.sin(angle);\n top = tx[5] - fontAscent * Math.cos(angle);\n }\n const scaleFactorStr = \"calc(var(--scale-factor)*\";\n const divStyle = textDiv.style;\n if (task._container === task._rootContainer) {\n divStyle.left = `${(100 * left / task._pageWidth).toFixed(2)}%`;\n divStyle.top = `${(100 * top / task._pageHeight).toFixed(2)}%`;\n } else {\n divStyle.left = `${scaleFactorStr}${left.toFixed(2)}px)`;\n divStyle.top = `${scaleFactorStr}${top.toFixed(2)}px)`;\n }\n divStyle.fontSize = `${scaleFactorStr}${fontHeight.toFixed(2)}px)`;\n divStyle.fontFamily = style.fontFamily;\n textDivProperties.fontSize = fontHeight;\n textDiv.setAttribute(\"role\", \"presentation\");\n textDiv.textContent = geom.str;\n textDiv.dir = geom.dir;\n if (task._fontInspectorEnabled) {\n textDiv.dataset.fontName = geom.fontName;\n }\n if (angle !== 0) {\n textDivProperties.angle = angle * (180 / Math.PI);\n }\n let shouldScaleText = false;\n if (geom.str.length > 1) {\n shouldScaleText = true;\n } else if (geom.str !== \" \" && geom.transform[0] !== geom.transform[3]) {\n const absScaleX = Math.abs(geom.transform[0]),\n absScaleY = Math.abs(geom.transform[3]);\n if (absScaleX !== absScaleY && Math.max(absScaleX, absScaleY) / Math.min(absScaleX, absScaleY) > 1.5) {\n shouldScaleText = true;\n }\n }\n if (shouldScaleText) {\n textDivProperties.canvasWidth = style.vertical ? geom.height : geom.width;\n }\n task._textDivProperties.set(textDiv, textDivProperties);\n if (task._isReadableStream) {\n task._layoutText(textDiv);\n }\n}\nfunction layout(params) {\n const {\n div,\n scale,\n properties,\n ctx,\n prevFontSize,\n prevFontFamily\n } = params;\n const {\n style\n } = div;\n let transform = \"\";\n if (properties.canvasWidth !== 0 && properties.hasText) {\n const {\n fontFamily\n } = style;\n const {\n canvasWidth,\n fontSize\n } = properties;\n if (prevFontSize !== fontSize || prevFontFamily !== fontFamily) {\n ctx.font = `${fontSize * scale}px ${fontFamily}`;\n params.prevFontSize = fontSize;\n params.prevFontFamily = fontFamily;\n }\n const {\n width\n } = ctx.measureText(div.textContent);\n if (width > 0) {\n transform = `scaleX(${canvasWidth * scale / width})`;\n }\n }\n if (properties.angle !== 0) {\n transform = `rotate(${properties.angle}deg) ${transform}`;\n }\n if (transform.length > 0) {\n style.transform = transform;\n }\n}\nfunction render(task) {\n if (task._canceled) {\n return;\n }\n const textDivs = task._textDivs;\n const capability = task._capability;\n const textDivsLength = textDivs.length;\n if (textDivsLength > MAX_TEXT_DIVS_TO_RENDER) {\n capability.resolve();\n return;\n }\n if (!task._isReadableStream) {\n for (const textDiv of textDivs) {\n task._layoutText(textDiv);\n }\n }\n capability.resolve();\n}\nclass TextLayerRenderTask {\n constructor({\n textContentSource,\n container,\n viewport,\n textDivs,\n textDivProperties,\n textContentItemsStr,\n isOffscreenCanvasSupported\n }) {\n this._textContentSource = textContentSource;\n this._isReadableStream = textContentSource instanceof ReadableStream;\n this._container = this._rootContainer = container;\n this._textDivs = textDivs || [];\n this._textContentItemsStr = textContentItemsStr || [];\n this._isOffscreenCanvasSupported = isOffscreenCanvasSupported;\n this._fontInspectorEnabled = !!globalThis.FontInspector?.enabled;\n this._reader = null;\n this._textDivProperties = textDivProperties || new WeakMap();\n this._canceled = false;\n this._capability = new _util.PromiseCapability();\n this._layoutTextParams = {\n prevFontSize: null,\n prevFontFamily: null,\n div: null,\n scale: viewport.scale * (globalThis.devicePixelRatio || 1),\n properties: null,\n ctx: getCtx(0, isOffscreenCanvasSupported)\n };\n const {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n } = viewport.rawDims;\n this._transform = [1, 0, 0, -1, -pageX, pageY + pageHeight];\n this._pageWidth = pageWidth;\n this._pageHeight = pageHeight;\n (0, _display_utils.setLayerDimensions)(container, viewport);\n this._capability.promise.finally(() => {\n this._layoutTextParams = null;\n }).catch(() => {});\n }\n get promise() {\n return this._capability.promise;\n }\n cancel() {\n this._canceled = true;\n if (this._reader) {\n this._reader.cancel(new _util.AbortException(\"TextLayer task cancelled.\")).catch(() => {});\n this._reader = null;\n }\n this._capability.reject(new _util.AbortException(\"TextLayer task cancelled.\"));\n }\n _processItems(items, styleCache) {\n for (const item of items) {\n if (item.str === undefined) {\n if (item.type === \"beginMarkedContentProps\" || item.type === \"beginMarkedContent\") {\n const parent = this._container;\n this._container = document.createElement(\"span\");\n this._container.classList.add(\"markedContent\");\n if (item.id !== null) {\n this._container.setAttribute(\"id\", `${item.id}`);\n }\n parent.append(this._container);\n } else if (item.type === \"endMarkedContent\") {\n this._container = this._container.parentNode;\n }\n continue;\n }\n this._textContentItemsStr.push(item.str);\n appendText(this, item, styleCache);\n }\n }\n _layoutText(textDiv) {\n const textDivProperties = this._layoutTextParams.properties = this._textDivProperties.get(textDiv);\n this._layoutTextParams.div = textDiv;\n layout(this._layoutTextParams);\n if (textDivProperties.hasText) {\n this._container.append(textDiv);\n }\n if (textDivProperties.hasEOL) {\n const br = document.createElement(\"br\");\n br.setAttribute(\"role\", \"presentation\");\n this._container.append(br);\n }\n }\n _render() {\n const capability = new _util.PromiseCapability();\n let styleCache = Object.create(null);\n if (this._isReadableStream) {\n const pump = () => {\n this._reader.read().then(({\n value,\n done\n }) => {\n if (done) {\n capability.resolve();\n return;\n }\n Object.assign(styleCache, value.styles);\n this._processItems(value.items, styleCache);\n pump();\n }, capability.reject);\n };\n this._reader = this._textContentSource.getReader();\n pump();\n } else if (this._textContentSource) {\n const {\n items,\n styles\n } = this._textContentSource;\n this._processItems(items, styles);\n capability.resolve();\n } else {\n throw new Error('No \"textContentSource\" parameter specified.');\n }\n capability.promise.then(() => {\n styleCache = null;\n render(this);\n }, this._capability.reject);\n }\n}\nexports.TextLayerRenderTask = TextLayerRenderTask;\nfunction renderTextLayer(params) {\n if (!params.textContentSource && (params.textContent || params.textContentStream)) {\n (0, _display_utils.deprecated)(\"The TextLayerRender `textContent`/`textContentStream` parameters \" + \"will be removed in the future, please use `textContentSource` instead.\");\n params.textContentSource = params.textContent || params.textContentStream;\n }\n const {\n container,\n viewport\n } = params;\n const style = getComputedStyle(container);\n const visibility = style.getPropertyValue(\"visibility\");\n const scaleFactor = parseFloat(style.getPropertyValue(\"--scale-factor\"));\n if (visibility === \"visible\" && (!scaleFactor || Math.abs(scaleFactor - viewport.scale) > 1e-5)) {\n console.error(\"The `--scale-factor` CSS-variable must be set, \" + \"to the same value as `viewport.scale`, \" + \"either on the `container`-element itself or higher up in the DOM.\");\n }\n const task = new TextLayerRenderTask(params);\n task._render();\n return task;\n}\nfunction updateTextLayer({\n container,\n viewport,\n textDivs,\n textDivProperties,\n isOffscreenCanvasSupported,\n mustRotate = true,\n mustRescale = true\n}) {\n if (mustRotate) {\n (0, _display_utils.setLayerDimensions)(container, {\n rotation: viewport.rotation\n });\n }\n if (mustRescale) {\n const ctx = getCtx(0, isOffscreenCanvasSupported);\n const scale = viewport.scale * (globalThis.devicePixelRatio || 1);\n const params = {\n prevFontSize: null,\n prevFontFamily: null,\n div: null,\n scale,\n properties: null,\n ctx\n };\n for (const div of textDivs) {\n params.properties = textDivProperties.get(div);\n params.div = div;\n layout(params);\n }\n }\n}\n\n/***/ }),\n/* 27 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.AnnotationEditorLayer = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _editor = __w_pdfjs_require__(4);\nvar _freetext = __w_pdfjs_require__(28);\nvar _ink = __w_pdfjs_require__(33);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _stamp = __w_pdfjs_require__(34);\nclass AnnotationEditorLayer {\n #accessibilityManager;\n #allowClick = false;\n #annotationLayer = null;\n #boundPointerup = this.pointerup.bind(this);\n #boundPointerdown = this.pointerdown.bind(this);\n #editors = new Map();\n #hadPointerDown = false;\n #isCleaningUp = false;\n #isDisabling = false;\n #uiManager;\n static _initialized = false;\n constructor({\n uiManager,\n pageIndex,\n div,\n accessibilityManager,\n annotationLayer,\n viewport,\n l10n\n }) {\n const editorTypes = [_freetext.FreeTextEditor, _ink.InkEditor, _stamp.StampEditor];\n if (!AnnotationEditorLayer._initialized) {\n AnnotationEditorLayer._initialized = true;\n for (const editorType of editorTypes) {\n editorType.initialize(l10n);\n }\n }\n uiManager.registerEditorTypes(editorTypes);\n this.#uiManager = uiManager;\n this.pageIndex = pageIndex;\n this.div = div;\n this.#accessibilityManager = accessibilityManager;\n this.#annotationLayer = annotationLayer;\n this.viewport = viewport;\n this.#uiManager.addLayer(this);\n }\n get isEmpty() {\n return this.#editors.size === 0;\n }\n updateToolbar(mode) {\n this.#uiManager.updateToolbar(mode);\n }\n updateMode(mode = this.#uiManager.getMode()) {\n this.#cleanup();\n if (mode === _util.AnnotationEditorType.INK) {\n this.addInkEditorIfNeeded(false);\n this.disableClick();\n } else {\n this.enableClick();\n }\n if (mode !== _util.AnnotationEditorType.NONE) {\n this.div.classList.toggle(\"freeTextEditing\", mode === _util.AnnotationEditorType.FREETEXT);\n this.div.classList.toggle(\"inkEditing\", mode === _util.AnnotationEditorType.INK);\n this.div.classList.toggle(\"stampEditing\", mode === _util.AnnotationEditorType.STAMP);\n this.div.hidden = false;\n }\n }\n addInkEditorIfNeeded(isCommitting) {\n if (!isCommitting && this.#uiManager.getMode() !== _util.AnnotationEditorType.INK) {\n return;\n }\n if (!isCommitting) {\n for (const editor of this.#editors.values()) {\n if (editor.isEmpty()) {\n editor.setInBackground();\n return;\n }\n }\n }\n const editor = this.#createAndAddNewEditor({\n offsetX: 0,\n offsetY: 0\n }, false);\n editor.setInBackground();\n }\n setEditingState(isEditing) {\n this.#uiManager.setEditingState(isEditing);\n }\n addCommands(params) {\n this.#uiManager.addCommands(params);\n }\n enable() {\n this.div.style.pointerEvents = \"auto\";\n const annotationElementIds = new Set();\n for (const editor of this.#editors.values()) {\n editor.enableEditing();\n if (editor.annotationElementId) {\n annotationElementIds.add(editor.annotationElementId);\n }\n }\n if (!this.#annotationLayer) {\n return;\n }\n const editables = this.#annotationLayer.getEditableAnnotations();\n for (const editable of editables) {\n editable.hide();\n if (this.#uiManager.isDeletedAnnotationElement(editable.data.id)) {\n continue;\n }\n if (annotationElementIds.has(editable.data.id)) {\n continue;\n }\n const editor = this.deserialize(editable);\n if (!editor) {\n continue;\n }\n this.addOrRebuild(editor);\n editor.enableEditing();\n }\n }\n disable() {\n this.#isDisabling = true;\n this.div.style.pointerEvents = \"none\";\n const hiddenAnnotationIds = new Set();\n for (const editor of this.#editors.values()) {\n editor.disableEditing();\n if (!editor.annotationElementId || editor.serialize() !== null) {\n hiddenAnnotationIds.add(editor.annotationElementId);\n continue;\n }\n this.getEditableAnnotation(editor.annotationElementId)?.show();\n editor.remove();\n }\n if (this.#annotationLayer) {\n const editables = this.#annotationLayer.getEditableAnnotations();\n for (const editable of editables) {\n const {\n id\n } = editable.data;\n if (hiddenAnnotationIds.has(id) || this.#uiManager.isDeletedAnnotationElement(id)) {\n continue;\n }\n editable.show();\n }\n }\n this.#cleanup();\n if (this.isEmpty) {\n this.div.hidden = true;\n }\n this.#isDisabling = false;\n }\n getEditableAnnotation(id) {\n return this.#annotationLayer?.getEditableAnnotation(id) || null;\n }\n setActiveEditor(editor) {\n const currentActive = this.#uiManager.getActive();\n if (currentActive === editor) {\n return;\n }\n this.#uiManager.setActiveEditor(editor);\n }\n enableClick() {\n this.div.addEventListener(\"pointerdown\", this.#boundPointerdown);\n this.div.addEventListener(\"pointerup\", this.#boundPointerup);\n }\n disableClick() {\n this.div.removeEventListener(\"pointerdown\", this.#boundPointerdown);\n this.div.removeEventListener(\"pointerup\", this.#boundPointerup);\n }\n attach(editor) {\n this.#editors.set(editor.id, editor);\n const {\n annotationElementId\n } = editor;\n if (annotationElementId && this.#uiManager.isDeletedAnnotationElement(annotationElementId)) {\n this.#uiManager.removeDeletedAnnotationElement(editor);\n }\n }\n detach(editor) {\n this.#editors.delete(editor.id);\n this.#accessibilityManager?.removePointerInTextLayer(editor.contentDiv);\n if (!this.#isDisabling && editor.annotationElementId) {\n this.#uiManager.addDeletedAnnotationElement(editor);\n }\n }\n remove(editor) {\n this.detach(editor);\n this.#uiManager.removeEditor(editor);\n if (editor.div.contains(document.activeElement)) {\n setTimeout(() => {\n this.#uiManager.focusMainContainer();\n }, 0);\n }\n editor.div.remove();\n editor.isAttachedToDOM = false;\n if (!this.#isCleaningUp) {\n this.addInkEditorIfNeeded(false);\n }\n }\n changeParent(editor) {\n if (editor.parent === this) {\n return;\n }\n if (editor.annotationElementId) {\n this.#uiManager.addDeletedAnnotationElement(editor.annotationElementId);\n _editor.AnnotationEditor.deleteAnnotationElement(editor);\n editor.annotationElementId = null;\n }\n this.attach(editor);\n editor.parent?.detach(editor);\n editor.setParent(this);\n if (editor.div && editor.isAttachedToDOM) {\n editor.div.remove();\n this.div.append(editor.div);\n }\n }\n add(editor) {\n this.changeParent(editor);\n this.#uiManager.addEditor(editor);\n this.attach(editor);\n if (!editor.isAttachedToDOM) {\n const div = editor.render();\n this.div.append(div);\n editor.isAttachedToDOM = true;\n }\n editor.fixAndSetPosition();\n editor.onceAdded();\n this.#uiManager.addToAnnotationStorage(editor);\n }\n moveEditorInDOM(editor) {\n if (!editor.isAttachedToDOM) {\n return;\n }\n const {\n activeElement\n } = document;\n if (editor.div.contains(activeElement)) {\n editor._focusEventsAllowed = false;\n setTimeout(() => {\n if (!editor.div.contains(document.activeElement)) {\n editor.div.addEventListener(\"focusin\", () => {\n editor._focusEventsAllowed = true;\n }, {\n once: true\n });\n activeElement.focus();\n } else {\n editor._focusEventsAllowed = true;\n }\n }, 0);\n }\n editor._structTreeParentId = this.#accessibilityManager?.moveElementInDOM(this.div, editor.div, editor.contentDiv, true);\n }\n addOrRebuild(editor) {\n if (editor.needsToBeRebuilt()) {\n editor.rebuild();\n } else {\n this.add(editor);\n }\n }\n addUndoableEditor(editor) {\n const cmd = () => editor._uiManager.rebuild(editor);\n const undo = () => {\n editor.remove();\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: false\n });\n }\n getNextId() {\n return this.#uiManager.getId();\n }\n #createNewEditor(params) {\n switch (this.#uiManager.getMode()) {\n case _util.AnnotationEditorType.FREETEXT:\n return new _freetext.FreeTextEditor(params);\n case _util.AnnotationEditorType.INK:\n return new _ink.InkEditor(params);\n case _util.AnnotationEditorType.STAMP:\n return new _stamp.StampEditor(params);\n }\n return null;\n }\n pasteEditor(mode, params) {\n this.#uiManager.updateToolbar(mode);\n this.#uiManager.updateMode(mode);\n const {\n offsetX,\n offsetY\n } = this.#getCenterPoint();\n const id = this.getNextId();\n const editor = this.#createNewEditor({\n parent: this,\n id,\n x: offsetX,\n y: offsetY,\n uiManager: this.#uiManager,\n isCentered: true,\n ...params\n });\n if (editor) {\n this.add(editor);\n }\n }\n deserialize(data) {\n switch (data.annotationType ?? data.annotationEditorType) {\n case _util.AnnotationEditorType.FREETEXT:\n return _freetext.FreeTextEditor.deserialize(data, this, this.#uiManager);\n case _util.AnnotationEditorType.INK:\n return _ink.InkEditor.deserialize(data, this, this.#uiManager);\n case _util.AnnotationEditorType.STAMP:\n return _stamp.StampEditor.deserialize(data, this, this.#uiManager);\n }\n return null;\n }\n #createAndAddNewEditor(event, isCentered) {\n const id = this.getNextId();\n const editor = this.#createNewEditor({\n parent: this,\n id,\n x: event.offsetX,\n y: event.offsetY,\n uiManager: this.#uiManager,\n isCentered\n });\n if (editor) {\n this.add(editor);\n }\n return editor;\n }\n #getCenterPoint() {\n const {\n x,\n y,\n width,\n height\n } = this.div.getBoundingClientRect();\n const tlX = Math.max(0, x);\n const tlY = Math.max(0, y);\n const brX = Math.min(window.innerWidth, x + width);\n const brY = Math.min(window.innerHeight, y + height);\n const centerX = (tlX + brX) / 2 - x;\n const centerY = (tlY + brY) / 2 - y;\n const [offsetX, offsetY] = this.viewport.rotation % 180 === 0 ? [centerX, centerY] : [centerY, centerX];\n return {\n offsetX,\n offsetY\n };\n }\n addNewEditor() {\n this.#createAndAddNewEditor(this.#getCenterPoint(), true);\n }\n setSelected(editor) {\n this.#uiManager.setSelected(editor);\n }\n toggleSelected(editor) {\n this.#uiManager.toggleSelected(editor);\n }\n isSelected(editor) {\n return this.#uiManager.isSelected(editor);\n }\n unselect(editor) {\n this.#uiManager.unselect(editor);\n }\n pointerup(event) {\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n if (event.target !== this.div) {\n return;\n }\n if (!this.#hadPointerDown) {\n return;\n }\n this.#hadPointerDown = false;\n if (!this.#allowClick) {\n this.#allowClick = true;\n return;\n }\n if (this.#uiManager.getMode() === _util.AnnotationEditorType.STAMP) {\n this.#uiManager.unselectAll();\n return;\n }\n this.#createAndAddNewEditor(event, false);\n }\n pointerdown(event) {\n if (this.#hadPointerDown) {\n this.#hadPointerDown = false;\n return;\n }\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n if (event.target !== this.div) {\n return;\n }\n this.#hadPointerDown = true;\n const editor = this.#uiManager.getActive();\n this.#allowClick = !editor || editor.isEmpty();\n }\n findNewParent(editor, x, y) {\n const layer = this.#uiManager.findParent(x, y);\n if (layer === null || layer === this) {\n return false;\n }\n layer.changeParent(editor);\n return true;\n }\n destroy() {\n if (this.#uiManager.getActive()?.parent === this) {\n this.#uiManager.commitOrRemove();\n this.#uiManager.setActiveEditor(null);\n }\n for (const editor of this.#editors.values()) {\n this.#accessibilityManager?.removePointerInTextLayer(editor.contentDiv);\n editor.setParent(null);\n editor.isAttachedToDOM = false;\n editor.div.remove();\n }\n this.div = null;\n this.#editors.clear();\n this.#uiManager.removeLayer(this);\n }\n #cleanup() {\n this.#isCleaningUp = true;\n for (const editor of this.#editors.values()) {\n if (editor.isEmpty()) {\n editor.remove();\n }\n }\n this.#isCleaningUp = false;\n }\n render({\n viewport\n }) {\n this.viewport = viewport;\n (0, _display_utils.setLayerDimensions)(this.div, viewport);\n for (const editor of this.#uiManager.getEditors(this.pageIndex)) {\n this.add(editor);\n }\n this.updateMode();\n }\n update({\n viewport\n }) {\n this.#uiManager.commitOrRemove();\n this.viewport = viewport;\n (0, _display_utils.setLayerDimensions)(this.div, {\n rotation: viewport.rotation\n });\n this.updateMode();\n }\n get pageDimensions() {\n const {\n pageWidth,\n pageHeight\n } = this.viewport.rawDims;\n return [pageWidth, pageHeight];\n }\n}\nexports.AnnotationEditorLayer = AnnotationEditorLayer;\n\n/***/ }),\n/* 28 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FreeTextEditor = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _tools = __w_pdfjs_require__(5);\nvar _editor = __w_pdfjs_require__(4);\nvar _annotation_layer = __w_pdfjs_require__(29);\nclass FreeTextEditor extends _editor.AnnotationEditor {\n #boundEditorDivBlur = this.editorDivBlur.bind(this);\n #boundEditorDivFocus = this.editorDivFocus.bind(this);\n #boundEditorDivInput = this.editorDivInput.bind(this);\n #boundEditorDivKeydown = this.editorDivKeydown.bind(this);\n #color;\n #content = \"\";\n #editorDivId = `${this.id}-editor`;\n #fontSize;\n #initialData = null;\n static _freeTextDefaultContent = \"\";\n static _internalPadding = 0;\n static _defaultColor = null;\n static _defaultFontSize = 10;\n static get _keyboardManager() {\n const proto = FreeTextEditor.prototype;\n const arrowChecker = self => self.isEmpty();\n const small = _tools.AnnotationEditorUIManager.TRANSLATE_SMALL;\n const big = _tools.AnnotationEditorUIManager.TRANSLATE_BIG;\n return (0, _util.shadow)(this, \"_keyboardManager\", new _tools.KeyboardManager([[[\"ctrl+s\", \"mac+meta+s\", \"ctrl+p\", \"mac+meta+p\"], proto.commitOrRemove, {\n bubbles: true\n }], [[\"ctrl+Enter\", \"mac+meta+Enter\", \"Escape\", \"mac+Escape\"], proto.commitOrRemove], [[\"ArrowLeft\", \"mac+ArrowLeft\"], proto._translateEmpty, {\n args: [-small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowLeft\", \"mac+shift+ArrowLeft\"], proto._translateEmpty, {\n args: [-big, 0],\n checker: arrowChecker\n }], [[\"ArrowRight\", \"mac+ArrowRight\"], proto._translateEmpty, {\n args: [small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowRight\", \"mac+shift+ArrowRight\"], proto._translateEmpty, {\n args: [big, 0],\n checker: arrowChecker\n }], [[\"ArrowUp\", \"mac+ArrowUp\"], proto._translateEmpty, {\n args: [0, -small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowUp\", \"mac+shift+ArrowUp\"], proto._translateEmpty, {\n args: [0, -big],\n checker: arrowChecker\n }], [[\"ArrowDown\", \"mac+ArrowDown\"], proto._translateEmpty, {\n args: [0, small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowDown\", \"mac+shift+ArrowDown\"], proto._translateEmpty, {\n args: [0, big],\n checker: arrowChecker\n }]]));\n }\n static _type = \"freetext\";\n constructor(params) {\n super({\n ...params,\n name: \"freeTextEditor\"\n });\n this.#color = params.color || FreeTextEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor;\n this.#fontSize = params.fontSize || FreeTextEditor._defaultFontSize;\n }\n static initialize(l10n) {\n _editor.AnnotationEditor.initialize(l10n, {\n strings: [\"free_text2_default_content\", \"editor_free_text2_aria_label\"]\n });\n const style = getComputedStyle(document.documentElement);\n this._internalPadding = parseFloat(style.getPropertyValue(\"--freetext-padding\"));\n }\n static updateDefaultParams(type, value) {\n switch (type) {\n case _util.AnnotationEditorParamsType.FREETEXT_SIZE:\n FreeTextEditor._defaultFontSize = value;\n break;\n case _util.AnnotationEditorParamsType.FREETEXT_COLOR:\n FreeTextEditor._defaultColor = value;\n break;\n }\n }\n updateParams(type, value) {\n switch (type) {\n case _util.AnnotationEditorParamsType.FREETEXT_SIZE:\n this.#updateFontSize(value);\n break;\n case _util.AnnotationEditorParamsType.FREETEXT_COLOR:\n this.#updateColor(value);\n break;\n }\n }\n static get defaultPropertiesToUpdate() {\n return [[_util.AnnotationEditorParamsType.FREETEXT_SIZE, FreeTextEditor._defaultFontSize], [_util.AnnotationEditorParamsType.FREETEXT_COLOR, FreeTextEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor]];\n }\n get propertiesToUpdate() {\n return [[_util.AnnotationEditorParamsType.FREETEXT_SIZE, this.#fontSize], [_util.AnnotationEditorParamsType.FREETEXT_COLOR, this.#color]];\n }\n #updateFontSize(fontSize) {\n const setFontsize = size => {\n this.editorDiv.style.fontSize = `calc(${size}px * var(--scale-factor))`;\n this.translate(0, -(size - this.#fontSize) * this.parentScale);\n this.#fontSize = size;\n this.#setEditorDimensions();\n };\n const savedFontsize = this.#fontSize;\n this.addCommands({\n cmd: () => {\n setFontsize(fontSize);\n },\n undo: () => {\n setFontsize(savedFontsize);\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.FREETEXT_SIZE,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n #updateColor(color) {\n const savedColor = this.#color;\n this.addCommands({\n cmd: () => {\n this.#color = this.editorDiv.style.color = color;\n },\n undo: () => {\n this.#color = this.editorDiv.style.color = savedColor;\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.FREETEXT_COLOR,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n _translateEmpty(x, y) {\n this._uiManager.translateSelectedEditors(x, y, true);\n }\n getInitialTranslation() {\n const scale = this.parentScale;\n return [-FreeTextEditor._internalPadding * scale, -(FreeTextEditor._internalPadding + this.#fontSize) * scale];\n }\n rebuild() {\n if (!this.parent) {\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n }\n }\n enableEditMode() {\n if (this.isInEditMode()) {\n return;\n }\n this.parent.setEditingState(false);\n this.parent.updateToolbar(_util.AnnotationEditorType.FREETEXT);\n super.enableEditMode();\n this.overlayDiv.classList.remove(\"enabled\");\n this.editorDiv.contentEditable = true;\n this._isDraggable = false;\n this.div.removeAttribute(\"aria-activedescendant\");\n this.editorDiv.addEventListener(\"keydown\", this.#boundEditorDivKeydown);\n this.editorDiv.addEventListener(\"focus\", this.#boundEditorDivFocus);\n this.editorDiv.addEventListener(\"blur\", this.#boundEditorDivBlur);\n this.editorDiv.addEventListener(\"input\", this.#boundEditorDivInput);\n }\n disableEditMode() {\n if (!this.isInEditMode()) {\n return;\n }\n this.parent.setEditingState(true);\n super.disableEditMode();\n this.overlayDiv.classList.add(\"enabled\");\n this.editorDiv.contentEditable = false;\n this.div.setAttribute(\"aria-activedescendant\", this.#editorDivId);\n this._isDraggable = true;\n this.editorDiv.removeEventListener(\"keydown\", this.#boundEditorDivKeydown);\n this.editorDiv.removeEventListener(\"focus\", this.#boundEditorDivFocus);\n this.editorDiv.removeEventListener(\"blur\", this.#boundEditorDivBlur);\n this.editorDiv.removeEventListener(\"input\", this.#boundEditorDivInput);\n this.div.focus({\n preventScroll: true\n });\n this.isEditing = false;\n this.parent.div.classList.add(\"freeTextEditing\");\n }\n focusin(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n super.focusin(event);\n if (event.target !== this.editorDiv) {\n this.editorDiv.focus();\n }\n }\n onceAdded() {\n if (this.width) {\n this.#cheatInitialRect();\n return;\n }\n this.enableEditMode();\n this.editorDiv.focus();\n if (this._initialOptions?.isCentered) {\n this.center();\n }\n this._initialOptions = null;\n }\n isEmpty() {\n return !this.editorDiv || this.editorDiv.innerText.trim() === \"\";\n }\n remove() {\n this.isEditing = false;\n if (this.parent) {\n this.parent.setEditingState(true);\n this.parent.div.classList.add(\"freeTextEditing\");\n }\n super.remove();\n }\n #extractText() {\n const divs = this.editorDiv.getElementsByTagName(\"div\");\n if (divs.length === 0) {\n return this.editorDiv.innerText;\n }\n const buffer = [];\n for (const div of divs) {\n buffer.push(div.innerText.replace(/\\r\\n?|\\n/, \"\"));\n }\n return buffer.join(\"\\n\");\n }\n #setEditorDimensions() {\n const [parentWidth, parentHeight] = this.parentDimensions;\n let rect;\n if (this.isAttachedToDOM) {\n rect = this.div.getBoundingClientRect();\n } else {\n const {\n currentLayer,\n div\n } = this;\n const savedDisplay = div.style.display;\n div.style.display = \"hidden\";\n currentLayer.div.append(this.div);\n rect = div.getBoundingClientRect();\n div.remove();\n div.style.display = savedDisplay;\n }\n if (this.rotation % 180 === this.parentRotation % 180) {\n this.width = rect.width / parentWidth;\n this.height = rect.height / parentHeight;\n } else {\n this.width = rect.height / parentWidth;\n this.height = rect.width / parentHeight;\n }\n this.fixAndSetPosition();\n }\n commit() {\n if (!this.isInEditMode()) {\n return;\n }\n super.commit();\n this.disableEditMode();\n const savedText = this.#content;\n const newText = this.#content = this.#extractText().trimEnd();\n if (savedText === newText) {\n return;\n }\n const setText = text => {\n this.#content = text;\n if (!text) {\n this.remove();\n return;\n }\n this.#setContent();\n this._uiManager.rebuild(this);\n this.#setEditorDimensions();\n };\n this.addCommands({\n cmd: () => {\n setText(newText);\n },\n undo: () => {\n setText(savedText);\n },\n mustExec: false\n });\n this.#setEditorDimensions();\n }\n shouldGetKeyboardEvents() {\n return this.isInEditMode();\n }\n enterInEditMode() {\n this.enableEditMode();\n this.editorDiv.focus();\n }\n dblclick(event) {\n this.enterInEditMode();\n }\n keydown(event) {\n if (event.target === this.div && event.key === \"Enter\") {\n this.enterInEditMode();\n event.preventDefault();\n }\n }\n editorDivKeydown(event) {\n FreeTextEditor._keyboardManager.exec(this, event);\n }\n editorDivFocus(event) {\n this.isEditing = true;\n }\n editorDivBlur(event) {\n this.isEditing = false;\n }\n editorDivInput(event) {\n this.parent.div.classList.toggle(\"freeTextEditing\", this.isEmpty());\n }\n disableEditing() {\n this.editorDiv.setAttribute(\"role\", \"comment\");\n this.editorDiv.removeAttribute(\"aria-multiline\");\n }\n enableEditing() {\n this.editorDiv.setAttribute(\"role\", \"textbox\");\n this.editorDiv.setAttribute(\"aria-multiline\", true);\n }\n render() {\n if (this.div) {\n return this.div;\n }\n let baseX, baseY;\n if (this.width) {\n baseX = this.x;\n baseY = this.y;\n }\n super.render();\n this.editorDiv = document.createElement(\"div\");\n this.editorDiv.className = \"internal\";\n this.editorDiv.setAttribute(\"id\", this.#editorDivId);\n this.enableEditing();\n _editor.AnnotationEditor._l10nPromise.get(\"editor_free_text2_aria_label\").then(msg => this.editorDiv?.setAttribute(\"aria-label\", msg));\n _editor.AnnotationEditor._l10nPromise.get(\"free_text2_default_content\").then(msg => this.editorDiv?.setAttribute(\"default-content\", msg));\n this.editorDiv.contentEditable = true;\n const {\n style\n } = this.editorDiv;\n style.fontSize = `calc(${this.#fontSize}px * var(--scale-factor))`;\n style.color = this.#color;\n this.div.append(this.editorDiv);\n this.overlayDiv = document.createElement(\"div\");\n this.overlayDiv.classList.add(\"overlay\", \"enabled\");\n this.div.append(this.overlayDiv);\n (0, _tools.bindEvents)(this, this.div, [\"dblclick\", \"keydown\"]);\n if (this.width) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n if (this.annotationElementId) {\n const {\n position\n } = this.#initialData;\n let [tx, ty] = this.getInitialTranslation();\n [tx, ty] = this.pageTranslationToScreen(tx, ty);\n const [pageWidth, pageHeight] = this.pageDimensions;\n const [pageX, pageY] = this.pageTranslation;\n let posX, posY;\n switch (this.rotation) {\n case 0:\n posX = baseX + (position[0] - pageX) / pageWidth;\n posY = baseY + this.height - (position[1] - pageY) / pageHeight;\n break;\n case 90:\n posX = baseX + (position[0] - pageX) / pageWidth;\n posY = baseY - (position[1] - pageY) / pageHeight;\n [tx, ty] = [ty, -tx];\n break;\n case 180:\n posX = baseX - this.width + (position[0] - pageX) / pageWidth;\n posY = baseY - (position[1] - pageY) / pageHeight;\n [tx, ty] = [-tx, -ty];\n break;\n case 270:\n posX = baseX + (position[0] - pageX - this.height * pageHeight) / pageWidth;\n posY = baseY + (position[1] - pageY - this.width * pageWidth) / pageHeight;\n [tx, ty] = [-ty, tx];\n break;\n }\n this.setAt(posX * parentWidth, posY * parentHeight, tx, ty);\n } else {\n this.setAt(baseX * parentWidth, baseY * parentHeight, this.width * parentWidth, this.height * parentHeight);\n }\n this.#setContent();\n this._isDraggable = true;\n this.editorDiv.contentEditable = false;\n } else {\n this._isDraggable = false;\n this.editorDiv.contentEditable = true;\n }\n return this.div;\n }\n #setContent() {\n this.editorDiv.replaceChildren();\n if (!this.#content) {\n return;\n }\n for (const line of this.#content.split(\"\\n\")) {\n const div = document.createElement(\"div\");\n div.append(line ? document.createTextNode(line) : document.createElement(\"br\"));\n this.editorDiv.append(div);\n }\n }\n get contentDiv() {\n return this.editorDiv;\n }\n static deserialize(data, parent, uiManager) {\n let initialData = null;\n if (data instanceof _annotation_layer.FreeTextAnnotationElement) {\n const {\n data: {\n defaultAppearanceData: {\n fontSize,\n fontColor\n },\n rect,\n rotation,\n id\n },\n textContent,\n textPosition,\n parent: {\n page: {\n pageNumber\n }\n }\n } = data;\n if (!textContent || textContent.length === 0) {\n return null;\n }\n initialData = data = {\n annotationType: _util.AnnotationEditorType.FREETEXT,\n color: Array.from(fontColor),\n fontSize,\n value: textContent.join(\"\\n\"),\n position: textPosition,\n pageIndex: pageNumber - 1,\n rect,\n rotation,\n id,\n deleted: false\n };\n }\n const editor = super.deserialize(data, parent, uiManager);\n editor.#fontSize = data.fontSize;\n editor.#color = _util.Util.makeHexColor(...data.color);\n editor.#content = data.value;\n editor.annotationElementId = data.id || null;\n editor.#initialData = initialData;\n return editor;\n }\n serialize(isForCopying = false) {\n if (this.isEmpty()) {\n return null;\n }\n if (this.deleted) {\n return {\n pageIndex: this.pageIndex,\n id: this.annotationElementId,\n deleted: true\n };\n }\n const padding = FreeTextEditor._internalPadding * this.parentScale;\n const rect = this.getRect(padding, padding);\n const color = _editor.AnnotationEditor._colorManager.convert(this.isAttachedToDOM ? getComputedStyle(this.editorDiv).color : this.#color);\n const serialized = {\n annotationType: _util.AnnotationEditorType.FREETEXT,\n color,\n fontSize: this.#fontSize,\n value: this.#content,\n pageIndex: this.pageIndex,\n rect,\n rotation: this.rotation,\n structTreeParentId: this._structTreeParentId\n };\n if (isForCopying) {\n return serialized;\n }\n if (this.annotationElementId && !this.#hasElementChanged(serialized)) {\n return null;\n }\n serialized.id = this.annotationElementId;\n return serialized;\n }\n #hasElementChanged(serialized) {\n const {\n value,\n fontSize,\n color,\n rect,\n pageIndex\n } = this.#initialData;\n return serialized.value !== value || serialized.fontSize !== fontSize || serialized.rect.some((x, i) => Math.abs(x - rect[i]) >= 1) || serialized.color.some((c, i) => c !== color[i]) || serialized.pageIndex !== pageIndex;\n }\n #cheatInitialRect(delayed = false) {\n if (!this.annotationElementId) {\n return;\n }\n this.#setEditorDimensions();\n if (!delayed && (this.width === 0 || this.height === 0)) {\n setTimeout(() => this.#cheatInitialRect(true), 0);\n return;\n }\n const padding = FreeTextEditor._internalPadding * this.parentScale;\n this.#initialData.rect = this.getRect(padding, padding);\n }\n}\nexports.FreeTextEditor = FreeTextEditor;\n\n/***/ }),\n/* 29 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StampAnnotationElement = exports.InkAnnotationElement = exports.FreeTextAnnotationElement = exports.AnnotationLayer = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _annotation_storage = __w_pdfjs_require__(3);\nvar _scripting_utils = __w_pdfjs_require__(30);\nvar _displayL10n_utils = __w_pdfjs_require__(31);\nvar _xfa_layer = __w_pdfjs_require__(32);\nconst DEFAULT_TAB_INDEX = 1000;\nconst DEFAULT_FONT_SIZE = 9;\nconst GetElementsByNameSet = new WeakSet();\nfunction getRectDims(rect) {\n return {\n width: rect[2] - rect[0],\n height: rect[3] - rect[1]\n };\n}\nclass AnnotationElementFactory {\n static create(parameters) {\n const subtype = parameters.data.annotationType;\n switch (subtype) {\n case _util.AnnotationType.LINK:\n return new LinkAnnotationElement(parameters);\n case _util.AnnotationType.TEXT:\n return new TextAnnotationElement(parameters);\n case _util.AnnotationType.WIDGET:\n const fieldType = parameters.data.fieldType;\n switch (fieldType) {\n case \"Tx\":\n return new TextWidgetAnnotationElement(parameters);\n case \"Btn\":\n if (parameters.data.radioButton) {\n return new RadioButtonWidgetAnnotationElement(parameters);\n } else if (parameters.data.checkBox) {\n return new CheckboxWidgetAnnotationElement(parameters);\n }\n return new PushButtonWidgetAnnotationElement(parameters);\n case \"Ch\":\n return new ChoiceWidgetAnnotationElement(parameters);\n case \"Sig\":\n return new SignatureWidgetAnnotationElement(parameters);\n }\n return new WidgetAnnotationElement(parameters);\n case _util.AnnotationType.POPUP:\n return new PopupAnnotationElement(parameters);\n case _util.AnnotationType.FREETEXT:\n return new FreeTextAnnotationElement(parameters);\n case _util.AnnotationType.LINE:\n return new LineAnnotationElement(parameters);\n case _util.AnnotationType.SQUARE:\n return new SquareAnnotationElement(parameters);\n case _util.AnnotationType.CIRCLE:\n return new CircleAnnotationElement(parameters);\n case _util.AnnotationType.POLYLINE:\n return new PolylineAnnotationElement(parameters);\n case _util.AnnotationType.CARET:\n return new CaretAnnotationElement(parameters);\n case _util.AnnotationType.INK:\n return new InkAnnotationElement(parameters);\n case _util.AnnotationType.POLYGON:\n return new PolygonAnnotationElement(parameters);\n case _util.AnnotationType.HIGHLIGHT:\n return new HighlightAnnotationElement(parameters);\n case _util.AnnotationType.UNDERLINE:\n return new UnderlineAnnotationElement(parameters);\n case _util.AnnotationType.SQUIGGLY:\n return new SquigglyAnnotationElement(parameters);\n case _util.AnnotationType.STRIKEOUT:\n return new StrikeOutAnnotationElement(parameters);\n case _util.AnnotationType.STAMP:\n return new StampAnnotationElement(parameters);\n case _util.AnnotationType.FILEATTACHMENT:\n return new FileAttachmentAnnotationElement(parameters);\n default:\n return new AnnotationElement(parameters);\n }\n }\n}\nclass AnnotationElement {\n #hasBorder = false;\n constructor(parameters, {\n isRenderable = false,\n ignoreBorder = false,\n createQuadrilaterals = false\n } = {}) {\n this.isRenderable = isRenderable;\n this.data = parameters.data;\n this.layer = parameters.layer;\n this.linkService = parameters.linkService;\n this.downloadManager = parameters.downloadManager;\n this.imageResourcesPath = parameters.imageResourcesPath;\n this.renderForms = parameters.renderForms;\n this.svgFactory = parameters.svgFactory;\n this.annotationStorage = parameters.annotationStorage;\n this.enableScripting = parameters.enableScripting;\n this.hasJSActions = parameters.hasJSActions;\n this._fieldObjects = parameters.fieldObjects;\n this.parent = parameters.parent;\n if (isRenderable) {\n this.container = this._createContainer(ignoreBorder);\n }\n if (createQuadrilaterals) {\n this._createQuadrilaterals();\n }\n }\n static _hasPopupData({\n titleObj,\n contentsObj,\n richText\n }) {\n return !!(titleObj?.str || contentsObj?.str || richText?.str);\n }\n get hasPopupData() {\n return AnnotationElement._hasPopupData(this.data);\n }\n _createContainer(ignoreBorder) {\n const {\n data,\n parent: {\n page,\n viewport\n }\n } = this;\n const container = document.createElement(\"section\");\n container.setAttribute(\"data-annotation-id\", data.id);\n if (!(this instanceof WidgetAnnotationElement)) {\n container.tabIndex = DEFAULT_TAB_INDEX;\n }\n container.style.zIndex = this.parent.zIndex++;\n if (this.data.popupRef) {\n container.setAttribute(\"aria-haspopup\", \"dialog\");\n }\n if (data.noRotate) {\n container.classList.add(\"norotate\");\n }\n const {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n } = viewport.rawDims;\n if (!data.rect || this instanceof PopupAnnotationElement) {\n const {\n rotation\n } = data;\n if (!data.hasOwnCanvas && rotation !== 0) {\n this.setRotation(rotation, container);\n }\n return container;\n }\n const {\n width,\n height\n } = getRectDims(data.rect);\n const rect = _util.Util.normalizeRect([data.rect[0], page.view[3] - data.rect[1] + page.view[1], data.rect[2], page.view[3] - data.rect[3] + page.view[1]]);\n if (!ignoreBorder && data.borderStyle.width > 0) {\n container.style.borderWidth = `${data.borderStyle.width}px`;\n const horizontalRadius = data.borderStyle.horizontalCornerRadius;\n const verticalRadius = data.borderStyle.verticalCornerRadius;\n if (horizontalRadius > 0 || verticalRadius > 0) {\n const radius = `calc(${horizontalRadius}px * var(--scale-factor)) / calc(${verticalRadius}px * var(--scale-factor))`;\n container.style.borderRadius = radius;\n } else if (this instanceof RadioButtonWidgetAnnotationElement) {\n const radius = `calc(${width}px * var(--scale-factor)) / calc(${height}px * var(--scale-factor))`;\n container.style.borderRadius = radius;\n }\n switch (data.borderStyle.style) {\n case _util.AnnotationBorderStyleType.SOLID:\n container.style.borderStyle = \"solid\";\n break;\n case _util.AnnotationBorderStyleType.DASHED:\n container.style.borderStyle = \"dashed\";\n break;\n case _util.AnnotationBorderStyleType.BEVELED:\n (0, _util.warn)(\"Unimplemented border style: beveled\");\n break;\n case _util.AnnotationBorderStyleType.INSET:\n (0, _util.warn)(\"Unimplemented border style: inset\");\n break;\n case _util.AnnotationBorderStyleType.UNDERLINE:\n container.style.borderBottomStyle = \"solid\";\n break;\n default:\n break;\n }\n const borderColor = data.borderColor || null;\n if (borderColor) {\n this.#hasBorder = true;\n container.style.borderColor = _util.Util.makeHexColor(borderColor[0] | 0, borderColor[1] | 0, borderColor[2] | 0);\n } else {\n container.style.borderWidth = 0;\n }\n }\n container.style.left = `${100 * (rect[0] - pageX) / pageWidth}%`;\n container.style.top = `${100 * (rect[1] - pageY) / pageHeight}%`;\n const {\n rotation\n } = data;\n if (data.hasOwnCanvas || rotation === 0) {\n container.style.width = `${100 * width / pageWidth}%`;\n container.style.height = `${100 * height / pageHeight}%`;\n } else {\n this.setRotation(rotation, container);\n }\n return container;\n }\n setRotation(angle, container = this.container) {\n if (!this.data.rect) {\n return;\n }\n const {\n pageWidth,\n pageHeight\n } = this.parent.viewport.rawDims;\n const {\n width,\n height\n } = getRectDims(this.data.rect);\n let elementWidth, elementHeight;\n if (angle % 180 === 0) {\n elementWidth = 100 * width / pageWidth;\n elementHeight = 100 * height / pageHeight;\n } else {\n elementWidth = 100 * height / pageWidth;\n elementHeight = 100 * width / pageHeight;\n }\n container.style.width = `${elementWidth}%`;\n container.style.height = `${elementHeight}%`;\n container.setAttribute(\"data-main-rotation\", (360 - angle) % 360);\n }\n get _commonActions() {\n const setColor = (jsName, styleName, event) => {\n const color = event.detail[jsName];\n const colorType = color[0];\n const colorArray = color.slice(1);\n event.target.style[styleName] = _scripting_utils.ColorConverters[`${colorType}_HTML`](colorArray);\n this.annotationStorage.setValue(this.data.id, {\n [styleName]: _scripting_utils.ColorConverters[`${colorType}_rgb`](colorArray)\n });\n };\n return (0, _util.shadow)(this, \"_commonActions\", {\n display: event => {\n const {\n display\n } = event.detail;\n const hidden = display % 2 === 1;\n this.container.style.visibility = hidden ? \"hidden\" : \"visible\";\n this.annotationStorage.setValue(this.data.id, {\n noView: hidden,\n noPrint: display === 1 || display === 2\n });\n },\n print: event => {\n this.annotationStorage.setValue(this.data.id, {\n noPrint: !event.detail.print\n });\n },\n hidden: event => {\n const {\n hidden\n } = event.detail;\n this.container.style.visibility = hidden ? \"hidden\" : \"visible\";\n this.annotationStorage.setValue(this.data.id, {\n noPrint: hidden,\n noView: hidden\n });\n },\n focus: event => {\n setTimeout(() => event.target.focus({\n preventScroll: false\n }), 0);\n },\n userName: event => {\n event.target.title = event.detail.userName;\n },\n readonly: event => {\n event.target.disabled = event.detail.readonly;\n },\n required: event => {\n this._setRequired(event.target, event.detail.required);\n },\n bgColor: event => {\n setColor(\"bgColor\", \"backgroundColor\", event);\n },\n fillColor: event => {\n setColor(\"fillColor\", \"backgroundColor\", event);\n },\n fgColor: event => {\n setColor(\"fgColor\", \"color\", event);\n },\n textColor: event => {\n setColor(\"textColor\", \"color\", event);\n },\n borderColor: event => {\n setColor(\"borderColor\", \"borderColor\", event);\n },\n strokeColor: event => {\n setColor(\"strokeColor\", \"borderColor\", event);\n },\n rotation: event => {\n const angle = event.detail.rotation;\n this.setRotation(angle);\n this.annotationStorage.setValue(this.data.id, {\n rotation: angle\n });\n }\n });\n }\n _dispatchEventFromSandbox(actions, jsEvent) {\n const commonActions = this._commonActions;\n for (const name of Object.keys(jsEvent.detail)) {\n const action = actions[name] || commonActions[name];\n action?.(jsEvent);\n }\n }\n _setDefaultPropertiesFromJS(element) {\n if (!this.enableScripting) {\n return;\n }\n const storedData = this.annotationStorage.getRawValue(this.data.id);\n if (!storedData) {\n return;\n }\n const commonActions = this._commonActions;\n for (const [actionName, detail] of Object.entries(storedData)) {\n const action = commonActions[actionName];\n if (action) {\n const eventProxy = {\n detail: {\n [actionName]: detail\n },\n target: element\n };\n action(eventProxy);\n delete storedData[actionName];\n }\n }\n }\n _createQuadrilaterals() {\n if (!this.container) {\n return;\n }\n const {\n quadPoints\n } = this.data;\n if (!quadPoints) {\n return;\n }\n const [rectBlX, rectBlY, rectTrX, rectTrY] = this.data.rect;\n if (quadPoints.length === 1) {\n const [, {\n x: trX,\n y: trY\n }, {\n x: blX,\n y: blY\n }] = quadPoints[0];\n if (rectTrX === trX && rectTrY === trY && rectBlX === blX && rectBlY === blY) {\n return;\n }\n }\n const {\n style\n } = this.container;\n let svgBuffer;\n if (this.#hasBorder) {\n const {\n borderColor,\n borderWidth\n } = style;\n style.borderWidth = 0;\n svgBuffer = [\"url('data:image/svg+xml;utf8,\", ``, ``];\n this.container.classList.add(\"hasBorder\");\n }\n const width = rectTrX - rectBlX;\n const height = rectTrY - rectBlY;\n const {\n svgFactory\n } = this;\n const svg = svgFactory.createElement(\"svg\");\n svg.classList.add(\"quadrilateralsContainer\");\n svg.setAttribute(\"width\", 0);\n svg.setAttribute(\"height\", 0);\n const defs = svgFactory.createElement(\"defs\");\n svg.append(defs);\n const clipPath = svgFactory.createElement(\"clipPath\");\n const id = `clippath_${this.data.id}`;\n clipPath.setAttribute(\"id\", id);\n clipPath.setAttribute(\"clipPathUnits\", \"objectBoundingBox\");\n defs.append(clipPath);\n for (const [, {\n x: trX,\n y: trY\n }, {\n x: blX,\n y: blY\n }] of quadPoints) {\n const rect = svgFactory.createElement(\"rect\");\n const x = (blX - rectBlX) / width;\n const y = (rectTrY - trY) / height;\n const rectWidth = (trX - blX) / width;\n const rectHeight = (trY - blY) / height;\n rect.setAttribute(\"x\", x);\n rect.setAttribute(\"y\", y);\n rect.setAttribute(\"width\", rectWidth);\n rect.setAttribute(\"height\", rectHeight);\n clipPath.append(rect);\n svgBuffer?.push(``);\n }\n if (this.#hasBorder) {\n svgBuffer.push(`')`);\n style.backgroundImage = svgBuffer.join(\"\");\n }\n this.container.append(svg);\n this.container.style.clipPath = `url(#${id})`;\n }\n _createPopup() {\n const {\n container,\n data\n } = this;\n container.setAttribute(\"aria-haspopup\", \"dialog\");\n const popup = new PopupAnnotationElement({\n data: {\n color: data.color,\n titleObj: data.titleObj,\n modificationDate: data.modificationDate,\n contentsObj: data.contentsObj,\n richText: data.richText,\n parentRect: data.rect,\n borderStyle: 0,\n id: `popup_${data.id}`,\n rotation: data.rotation\n },\n parent: this.parent,\n elements: [this]\n });\n this.parent.div.append(popup.render());\n }\n render() {\n (0, _util.unreachable)(\"Abstract method `AnnotationElement.render` called\");\n }\n _getElementsByName(name, skipId = null) {\n const fields = [];\n if (this._fieldObjects) {\n const fieldObj = this._fieldObjects[name];\n if (fieldObj) {\n for (const {\n page,\n id,\n exportValues\n } of fieldObj) {\n if (page === -1) {\n continue;\n }\n if (id === skipId) {\n continue;\n }\n const exportValue = typeof exportValues === \"string\" ? exportValues : null;\n const domElement = document.querySelector(`[data-element-id=\"${id}\"]`);\n if (domElement && !GetElementsByNameSet.has(domElement)) {\n (0, _util.warn)(`_getElementsByName - element not allowed: ${id}`);\n continue;\n }\n fields.push({\n id,\n exportValue,\n domElement\n });\n }\n }\n return fields;\n }\n for (const domElement of document.getElementsByName(name)) {\n const {\n exportValue\n } = domElement;\n const id = domElement.getAttribute(\"data-element-id\");\n if (id === skipId) {\n continue;\n }\n if (!GetElementsByNameSet.has(domElement)) {\n continue;\n }\n fields.push({\n id,\n exportValue,\n domElement\n });\n }\n return fields;\n }\n show() {\n if (this.container) {\n this.container.hidden = false;\n }\n this.popup?.maybeShow();\n }\n hide() {\n if (this.container) {\n this.container.hidden = true;\n }\n this.popup?.forceHide();\n }\n getElementsToTriggerPopup() {\n return this.container;\n }\n addHighlightArea() {\n const triggers = this.getElementsToTriggerPopup();\n if (Array.isArray(triggers)) {\n for (const element of triggers) {\n element.classList.add(\"highlightArea\");\n }\n } else {\n triggers.classList.add(\"highlightArea\");\n }\n }\n _editOnDoubleClick() {\n const {\n annotationEditorType: mode,\n data: {\n id: editId\n }\n } = this;\n this.container.addEventListener(\"dblclick\", () => {\n this.linkService.eventBus?.dispatch(\"switchannotationeditormode\", {\n source: this,\n mode,\n editId\n });\n });\n }\n}\nclass LinkAnnotationElement extends AnnotationElement {\n constructor(parameters, options = null) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: !!options?.ignoreBorder,\n createQuadrilaterals: true\n });\n this.isTooltipOnly = parameters.data.isTooltipOnly;\n }\n render() {\n const {\n data,\n linkService\n } = this;\n const link = document.createElement(\"a\");\n link.setAttribute(\"data-element-id\", data.id);\n let isBound = false;\n if (data.url) {\n linkService.addLinkAttributes(link, data.url, data.newWindow);\n isBound = true;\n } else if (data.action) {\n this._bindNamedAction(link, data.action);\n isBound = true;\n } else if (data.attachment) {\n this._bindAttachment(link, data.attachment);\n isBound = true;\n } else if (data.setOCGState) {\n this.#bindSetOCGState(link, data.setOCGState);\n isBound = true;\n } else if (data.dest) {\n this._bindLink(link, data.dest);\n isBound = true;\n } else {\n if (data.actions && (data.actions.Action || data.actions[\"Mouse Up\"] || data.actions[\"Mouse Down\"]) && this.enableScripting && this.hasJSActions) {\n this._bindJSAction(link, data);\n isBound = true;\n }\n if (data.resetForm) {\n this._bindResetFormAction(link, data.resetForm);\n isBound = true;\n } else if (this.isTooltipOnly && !isBound) {\n this._bindLink(link, \"\");\n isBound = true;\n }\n }\n this.container.classList.add(\"linkAnnotation\");\n if (isBound) {\n this.container.append(link);\n }\n return this.container;\n }\n #setInternalLink() {\n this.container.setAttribute(\"data-internal-link\", \"\");\n }\n _bindLink(link, destination) {\n link.href = this.linkService.getDestinationHash(destination);\n link.onclick = () => {\n if (destination) {\n this.linkService.goToDestination(destination);\n }\n return false;\n };\n if (destination || destination === \"\") {\n this.#setInternalLink();\n }\n }\n _bindNamedAction(link, action) {\n link.href = this.linkService.getAnchorUrl(\"\");\n link.onclick = () => {\n this.linkService.executeNamedAction(action);\n return false;\n };\n this.#setInternalLink();\n }\n _bindAttachment(link, attachment) {\n link.href = this.linkService.getAnchorUrl(\"\");\n link.onclick = () => {\n this.downloadManager?.openOrDownloadData(this.container, attachment.content, attachment.filename);\n return false;\n };\n this.#setInternalLink();\n }\n #bindSetOCGState(link, action) {\n link.href = this.linkService.getAnchorUrl(\"\");\n link.onclick = () => {\n this.linkService.executeSetOCGState(action);\n return false;\n };\n this.#setInternalLink();\n }\n _bindJSAction(link, data) {\n link.href = this.linkService.getAnchorUrl(\"\");\n const map = new Map([[\"Action\", \"onclick\"], [\"Mouse Up\", \"onmouseup\"], [\"Mouse Down\", \"onmousedown\"]]);\n for (const name of Object.keys(data.actions)) {\n const jsName = map.get(name);\n if (!jsName) {\n continue;\n }\n link[jsName] = () => {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: data.id,\n name\n }\n });\n return false;\n };\n }\n if (!link.onclick) {\n link.onclick = () => false;\n }\n this.#setInternalLink();\n }\n _bindResetFormAction(link, resetForm) {\n const otherClickAction = link.onclick;\n if (!otherClickAction) {\n link.href = this.linkService.getAnchorUrl(\"\");\n }\n this.#setInternalLink();\n if (!this._fieldObjects) {\n (0, _util.warn)(`_bindResetFormAction - \"resetForm\" action not supported, ` + \"ensure that the `fieldObjects` parameter is provided.\");\n if (!otherClickAction) {\n link.onclick = () => false;\n }\n return;\n }\n link.onclick = () => {\n otherClickAction?.();\n const {\n fields: resetFormFields,\n refs: resetFormRefs,\n include\n } = resetForm;\n const allFields = [];\n if (resetFormFields.length !== 0 || resetFormRefs.length !== 0) {\n const fieldIds = new Set(resetFormRefs);\n for (const fieldName of resetFormFields) {\n const fields = this._fieldObjects[fieldName] || [];\n for (const {\n id\n } of fields) {\n fieldIds.add(id);\n }\n }\n for (const fields of Object.values(this._fieldObjects)) {\n for (const field of fields) {\n if (fieldIds.has(field.id) === include) {\n allFields.push(field);\n }\n }\n }\n } else {\n for (const fields of Object.values(this._fieldObjects)) {\n allFields.push(...fields);\n }\n }\n const storage = this.annotationStorage;\n const allIds = [];\n for (const field of allFields) {\n const {\n id\n } = field;\n allIds.push(id);\n switch (field.type) {\n case \"text\":\n {\n const value = field.defaultValue || \"\";\n storage.setValue(id, {\n value\n });\n break;\n }\n case \"checkbox\":\n case \"radiobutton\":\n {\n const value = field.defaultValue === field.exportValues;\n storage.setValue(id, {\n value\n });\n break;\n }\n case \"combobox\":\n case \"listbox\":\n {\n const value = field.defaultValue || \"\";\n storage.setValue(id, {\n value\n });\n break;\n }\n default:\n continue;\n }\n const domElement = document.querySelector(`[data-element-id=\"${id}\"]`);\n if (!domElement) {\n continue;\n } else if (!GetElementsByNameSet.has(domElement)) {\n (0, _util.warn)(`_bindResetFormAction - element not allowed: ${id}`);\n continue;\n }\n domElement.dispatchEvent(new Event(\"resetform\"));\n }\n if (this.enableScripting) {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: \"app\",\n ids: allIds,\n name: \"ResetForm\"\n }\n });\n }\n return false;\n };\n }\n}\nclass TextAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true\n });\n }\n render() {\n this.container.classList.add(\"textAnnotation\");\n const image = document.createElement(\"img\");\n image.src = this.imageResourcesPath + \"annotation-\" + this.data.name.toLowerCase() + \".svg\";\n image.alt = \"[{{type}} Annotation]\";\n image.dataset.l10nId = \"text_annotation_type\";\n image.dataset.l10nArgs = JSON.stringify({\n type: this.data.name\n });\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.append(image);\n return this.container;\n }\n}\nclass WidgetAnnotationElement extends AnnotationElement {\n render() {\n if (this.data.alternativeText) {\n this.container.title = this.data.alternativeText;\n }\n return this.container;\n }\n showElementAndHideCanvas(element) {\n if (this.data.hasOwnCanvas) {\n if (element.previousSibling?.nodeName === \"CANVAS\") {\n element.previousSibling.hidden = true;\n }\n element.hidden = false;\n }\n }\n _getKeyModifier(event) {\n const {\n isWin,\n isMac\n } = _util.FeatureTest.platform;\n return isWin && event.ctrlKey || isMac && event.metaKey;\n }\n _setEventListener(element, elementData, baseName, eventName, valueGetter) {\n if (baseName.includes(\"mouse\")) {\n element.addEventListener(baseName, event => {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: this.data.id,\n name: eventName,\n value: valueGetter(event),\n shift: event.shiftKey,\n modifier: this._getKeyModifier(event)\n }\n });\n });\n } else {\n element.addEventListener(baseName, event => {\n if (baseName === \"blur\") {\n if (!elementData.focused || !event.relatedTarget) {\n return;\n }\n elementData.focused = false;\n } else if (baseName === \"focus\") {\n if (elementData.focused) {\n return;\n }\n elementData.focused = true;\n }\n if (!valueGetter) {\n return;\n }\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: this.data.id,\n name: eventName,\n value: valueGetter(event)\n }\n });\n });\n }\n }\n _setEventListeners(element, elementData, names, getter) {\n for (const [baseName, eventName] of names) {\n if (eventName === \"Action\" || this.data.actions?.[eventName]) {\n if (eventName === \"Focus\" || eventName === \"Blur\") {\n elementData ||= {\n focused: false\n };\n }\n this._setEventListener(element, elementData, baseName, eventName, getter);\n if (eventName === \"Focus\" && !this.data.actions?.Blur) {\n this._setEventListener(element, elementData, \"blur\", \"Blur\", null);\n } else if (eventName === \"Blur\" && !this.data.actions?.Focus) {\n this._setEventListener(element, elementData, \"focus\", \"Focus\", null);\n }\n }\n }\n }\n _setBackgroundColor(element) {\n const color = this.data.backgroundColor || null;\n element.style.backgroundColor = color === null ? \"transparent\" : _util.Util.makeHexColor(color[0], color[1], color[2]);\n }\n _setTextStyle(element) {\n const TEXT_ALIGNMENT = [\"left\", \"center\", \"right\"];\n const {\n fontColor\n } = this.data.defaultAppearanceData;\n const fontSize = this.data.defaultAppearanceData.fontSize || DEFAULT_FONT_SIZE;\n const style = element.style;\n let computedFontSize;\n const BORDER_SIZE = 2;\n const roundToOneDecimal = x => Math.round(10 * x) / 10;\n if (this.data.multiLine) {\n const height = Math.abs(this.data.rect[3] - this.data.rect[1] - BORDER_SIZE);\n const numberOfLines = Math.round(height / (_util.LINE_FACTOR * fontSize)) || 1;\n const lineHeight = height / numberOfLines;\n computedFontSize = Math.min(fontSize, roundToOneDecimal(lineHeight / _util.LINE_FACTOR));\n } else {\n const height = Math.abs(this.data.rect[3] - this.data.rect[1] - BORDER_SIZE);\n computedFontSize = Math.min(fontSize, roundToOneDecimal(height / _util.LINE_FACTOR));\n }\n style.fontSize = `calc(${computedFontSize}px * var(--scale-factor))`;\n style.color = _util.Util.makeHexColor(fontColor[0], fontColor[1], fontColor[2]);\n if (this.data.textAlignment !== null) {\n style.textAlign = TEXT_ALIGNMENT[this.data.textAlignment];\n }\n }\n _setRequired(element, isRequired) {\n if (isRequired) {\n element.setAttribute(\"required\", true);\n } else {\n element.removeAttribute(\"required\");\n }\n element.setAttribute(\"aria-required\", isRequired);\n }\n}\nclass TextWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n const isRenderable = parameters.renderForms || !parameters.data.hasAppearance && !!parameters.data.fieldValue;\n super(parameters, {\n isRenderable\n });\n }\n setPropertyOnSiblings(base, key, value, keyInStorage) {\n const storage = this.annotationStorage;\n for (const element of this._getElementsByName(base.name, base.id)) {\n if (element.domElement) {\n element.domElement[key] = value;\n }\n storage.setValue(element.id, {\n [keyInStorage]: value\n });\n }\n }\n render() {\n const storage = this.annotationStorage;\n const id = this.data.id;\n this.container.classList.add(\"textWidgetAnnotation\");\n let element = null;\n if (this.renderForms) {\n const storedData = storage.getValue(id, {\n value: this.data.fieldValue\n });\n let textContent = storedData.value || \"\";\n const maxLen = storage.getValue(id, {\n charLimit: this.data.maxLen\n }).charLimit;\n if (maxLen && textContent.length > maxLen) {\n textContent = textContent.slice(0, maxLen);\n }\n let fieldFormattedValues = storedData.formattedValue || this.data.textContent?.join(\"\\n\") || null;\n if (fieldFormattedValues && this.data.comb) {\n fieldFormattedValues = fieldFormattedValues.replaceAll(/\\s+/g, \"\");\n }\n const elementData = {\n userValue: textContent,\n formattedValue: fieldFormattedValues,\n lastCommittedValue: null,\n commitKey: 1,\n focused: false\n };\n if (this.data.multiLine) {\n element = document.createElement(\"textarea\");\n element.textContent = fieldFormattedValues ?? textContent;\n if (this.data.doNotScroll) {\n element.style.overflowY = \"hidden\";\n }\n } else {\n element = document.createElement(\"input\");\n element.type = \"text\";\n element.setAttribute(\"value\", fieldFormattedValues ?? textContent);\n if (this.data.doNotScroll) {\n element.style.overflowX = \"hidden\";\n }\n }\n if (this.data.hasOwnCanvas) {\n element.hidden = true;\n }\n GetElementsByNameSet.add(element);\n element.setAttribute(\"data-element-id\", id);\n element.disabled = this.data.readOnly;\n element.name = this.data.fieldName;\n element.tabIndex = DEFAULT_TAB_INDEX;\n this._setRequired(element, this.data.required);\n if (maxLen) {\n element.maxLength = maxLen;\n }\n element.addEventListener(\"input\", event => {\n storage.setValue(id, {\n value: event.target.value\n });\n this.setPropertyOnSiblings(element, \"value\", event.target.value, \"value\");\n elementData.formattedValue = null;\n });\n element.addEventListener(\"resetform\", event => {\n const defaultValue = this.data.defaultFieldValue ?? \"\";\n element.value = elementData.userValue = defaultValue;\n elementData.formattedValue = null;\n });\n let blurListener = event => {\n const {\n formattedValue\n } = elementData;\n if (formattedValue !== null && formattedValue !== undefined) {\n event.target.value = formattedValue;\n }\n event.target.scrollLeft = 0;\n };\n if (this.enableScripting && this.hasJSActions) {\n element.addEventListener(\"focus\", event => {\n if (elementData.focused) {\n return;\n }\n const {\n target\n } = event;\n if (elementData.userValue) {\n target.value = elementData.userValue;\n }\n elementData.lastCommittedValue = target.value;\n elementData.commitKey = 1;\n elementData.focused = true;\n });\n element.addEventListener(\"updatefromsandbox\", jsEvent => {\n this.showElementAndHideCanvas(jsEvent.target);\n const actions = {\n value(event) {\n elementData.userValue = event.detail.value ?? \"\";\n storage.setValue(id, {\n value: elementData.userValue.toString()\n });\n event.target.value = elementData.userValue;\n },\n formattedValue(event) {\n const {\n formattedValue\n } = event.detail;\n elementData.formattedValue = formattedValue;\n if (formattedValue !== null && formattedValue !== undefined && event.target !== document.activeElement) {\n event.target.value = formattedValue;\n }\n storage.setValue(id, {\n formattedValue\n });\n },\n selRange(event) {\n event.target.setSelectionRange(...event.detail.selRange);\n },\n charLimit: event => {\n const {\n charLimit\n } = event.detail;\n const {\n target\n } = event;\n if (charLimit === 0) {\n target.removeAttribute(\"maxLength\");\n return;\n }\n target.setAttribute(\"maxLength\", charLimit);\n let value = elementData.userValue;\n if (!value || value.length <= charLimit) {\n return;\n }\n value = value.slice(0, charLimit);\n target.value = elementData.userValue = value;\n storage.setValue(id, {\n value\n });\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n willCommit: true,\n commitKey: 1,\n selStart: target.selectionStart,\n selEnd: target.selectionEnd\n }\n });\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n element.addEventListener(\"keydown\", event => {\n elementData.commitKey = 1;\n let commitKey = -1;\n if (event.key === \"Escape\") {\n commitKey = 0;\n } else if (event.key === \"Enter\" && !this.data.multiLine) {\n commitKey = 2;\n } else if (event.key === \"Tab\") {\n elementData.commitKey = 3;\n }\n if (commitKey === -1) {\n return;\n }\n const {\n value\n } = event.target;\n if (elementData.lastCommittedValue === value) {\n return;\n }\n elementData.lastCommittedValue = value;\n elementData.userValue = value;\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n willCommit: true,\n commitKey,\n selStart: event.target.selectionStart,\n selEnd: event.target.selectionEnd\n }\n });\n });\n const _blurListener = blurListener;\n blurListener = null;\n element.addEventListener(\"blur\", event => {\n if (!elementData.focused || !event.relatedTarget) {\n return;\n }\n elementData.focused = false;\n const {\n value\n } = event.target;\n elementData.userValue = value;\n if (elementData.lastCommittedValue !== value) {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n willCommit: true,\n commitKey: elementData.commitKey,\n selStart: event.target.selectionStart,\n selEnd: event.target.selectionEnd\n }\n });\n }\n _blurListener(event);\n });\n if (this.data.actions?.Keystroke) {\n element.addEventListener(\"beforeinput\", event => {\n elementData.lastCommittedValue = null;\n const {\n data,\n target\n } = event;\n const {\n value,\n selectionStart,\n selectionEnd\n } = target;\n let selStart = selectionStart,\n selEnd = selectionEnd;\n switch (event.inputType) {\n case \"deleteWordBackward\":\n {\n const match = value.substring(0, selectionStart).match(/\\w*[^\\w]*$/);\n if (match) {\n selStart -= match[0].length;\n }\n break;\n }\n case \"deleteWordForward\":\n {\n const match = value.substring(selectionStart).match(/^[^\\w]*\\w*/);\n if (match) {\n selEnd += match[0].length;\n }\n break;\n }\n case \"deleteContentBackward\":\n if (selectionStart === selectionEnd) {\n selStart -= 1;\n }\n break;\n case \"deleteContentForward\":\n if (selectionStart === selectionEnd) {\n selEnd += 1;\n }\n break;\n }\n event.preventDefault();\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n change: data || \"\",\n willCommit: false,\n selStart,\n selEnd\n }\n });\n });\n }\n this._setEventListeners(element, elementData, [[\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], event => event.target.value);\n }\n if (blurListener) {\n element.addEventListener(\"blur\", blurListener);\n }\n if (this.data.comb) {\n const fieldWidth = this.data.rect[2] - this.data.rect[0];\n const combWidth = fieldWidth / maxLen;\n element.classList.add(\"comb\");\n element.style.letterSpacing = `calc(${combWidth}px * var(--scale-factor) - 1ch)`;\n }\n } else {\n element = document.createElement(\"div\");\n element.textContent = this.data.fieldValue;\n element.style.verticalAlign = \"middle\";\n element.style.display = \"table-cell\";\n }\n this._setTextStyle(element);\n this._setBackgroundColor(element);\n this._setDefaultPropertiesFromJS(element);\n this.container.append(element);\n return this.container;\n }\n}\nclass SignatureWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: !!parameters.data.hasOwnCanvas\n });\n }\n}\nclass CheckboxWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: parameters.renderForms\n });\n }\n render() {\n const storage = this.annotationStorage;\n const data = this.data;\n const id = data.id;\n let value = storage.getValue(id, {\n value: data.exportValue === data.fieldValue\n }).value;\n if (typeof value === \"string\") {\n value = value !== \"Off\";\n storage.setValue(id, {\n value\n });\n }\n this.container.classList.add(\"buttonWidgetAnnotation\", \"checkBox\");\n const element = document.createElement(\"input\");\n GetElementsByNameSet.add(element);\n element.setAttribute(\"data-element-id\", id);\n element.disabled = data.readOnly;\n this._setRequired(element, this.data.required);\n element.type = \"checkbox\";\n element.name = data.fieldName;\n if (value) {\n element.setAttribute(\"checked\", true);\n }\n element.setAttribute(\"exportValue\", data.exportValue);\n element.tabIndex = DEFAULT_TAB_INDEX;\n element.addEventListener(\"change\", event => {\n const {\n name,\n checked\n } = event.target;\n for (const checkbox of this._getElementsByName(name, id)) {\n const curChecked = checked && checkbox.exportValue === data.exportValue;\n if (checkbox.domElement) {\n checkbox.domElement.checked = curChecked;\n }\n storage.setValue(checkbox.id, {\n value: curChecked\n });\n }\n storage.setValue(id, {\n value: checked\n });\n });\n element.addEventListener(\"resetform\", event => {\n const defaultValue = data.defaultFieldValue || \"Off\";\n event.target.checked = defaultValue === data.exportValue;\n });\n if (this.enableScripting && this.hasJSActions) {\n element.addEventListener(\"updatefromsandbox\", jsEvent => {\n const actions = {\n value(event) {\n event.target.checked = event.detail.value !== \"Off\";\n storage.setValue(id, {\n value: event.target.checked\n });\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n this._setEventListeners(element, null, [[\"change\", \"Validate\"], [\"change\", \"Action\"], [\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], event => event.target.checked);\n }\n this._setBackgroundColor(element);\n this._setDefaultPropertiesFromJS(element);\n this.container.append(element);\n return this.container;\n }\n}\nclass RadioButtonWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: parameters.renderForms\n });\n }\n render() {\n this.container.classList.add(\"buttonWidgetAnnotation\", \"radioButton\");\n const storage = this.annotationStorage;\n const data = this.data;\n const id = data.id;\n let value = storage.getValue(id, {\n value: data.fieldValue === data.buttonValue\n }).value;\n if (typeof value === \"string\") {\n value = value !== data.buttonValue;\n storage.setValue(id, {\n value\n });\n }\n const element = document.createElement(\"input\");\n GetElementsByNameSet.add(element);\n element.setAttribute(\"data-element-id\", id);\n element.disabled = data.readOnly;\n this._setRequired(element, this.data.required);\n element.type = \"radio\";\n element.name = data.fieldName;\n if (value) {\n element.setAttribute(\"checked\", true);\n }\n element.tabIndex = DEFAULT_TAB_INDEX;\n element.addEventListener(\"change\", event => {\n const {\n name,\n checked\n } = event.target;\n for (const radio of this._getElementsByName(name, id)) {\n storage.setValue(radio.id, {\n value: false\n });\n }\n storage.setValue(id, {\n value: checked\n });\n });\n element.addEventListener(\"resetform\", event => {\n const defaultValue = data.defaultFieldValue;\n event.target.checked = defaultValue !== null && defaultValue !== undefined && defaultValue === data.buttonValue;\n });\n if (this.enableScripting && this.hasJSActions) {\n const pdfButtonValue = data.buttonValue;\n element.addEventListener(\"updatefromsandbox\", jsEvent => {\n const actions = {\n value: event => {\n const checked = pdfButtonValue === event.detail.value;\n for (const radio of this._getElementsByName(event.target.name)) {\n const curChecked = checked && radio.id === id;\n if (radio.domElement) {\n radio.domElement.checked = curChecked;\n }\n storage.setValue(radio.id, {\n value: curChecked\n });\n }\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n this._setEventListeners(element, null, [[\"change\", \"Validate\"], [\"change\", \"Action\"], [\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], event => event.target.checked);\n }\n this._setBackgroundColor(element);\n this._setDefaultPropertiesFromJS(element);\n this.container.append(element);\n return this.container;\n }\n}\nclass PushButtonWidgetAnnotationElement extends LinkAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n ignoreBorder: parameters.data.hasAppearance\n });\n }\n render() {\n const container = super.render();\n container.classList.add(\"buttonWidgetAnnotation\", \"pushButton\");\n if (this.data.alternativeText) {\n container.title = this.data.alternativeText;\n }\n const linkElement = container.lastChild;\n if (this.enableScripting && this.hasJSActions && linkElement) {\n this._setDefaultPropertiesFromJS(linkElement);\n linkElement.addEventListener(\"updatefromsandbox\", jsEvent => {\n this._dispatchEventFromSandbox({}, jsEvent);\n });\n }\n return container;\n }\n}\nclass ChoiceWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: parameters.renderForms\n });\n }\n render() {\n this.container.classList.add(\"choiceWidgetAnnotation\");\n const storage = this.annotationStorage;\n const id = this.data.id;\n const storedData = storage.getValue(id, {\n value: this.data.fieldValue\n });\n const selectElement = document.createElement(\"select\");\n GetElementsByNameSet.add(selectElement);\n selectElement.setAttribute(\"data-element-id\", id);\n selectElement.disabled = this.data.readOnly;\n this._setRequired(selectElement, this.data.required);\n selectElement.name = this.data.fieldName;\n selectElement.tabIndex = DEFAULT_TAB_INDEX;\n let addAnEmptyEntry = this.data.combo && this.data.options.length > 0;\n if (!this.data.combo) {\n selectElement.size = this.data.options.length;\n if (this.data.multiSelect) {\n selectElement.multiple = true;\n }\n }\n selectElement.addEventListener(\"resetform\", event => {\n const defaultValue = this.data.defaultFieldValue;\n for (const option of selectElement.options) {\n option.selected = option.value === defaultValue;\n }\n });\n for (const option of this.data.options) {\n const optionElement = document.createElement(\"option\");\n optionElement.textContent = option.displayValue;\n optionElement.value = option.exportValue;\n if (storedData.value.includes(option.exportValue)) {\n optionElement.setAttribute(\"selected\", true);\n addAnEmptyEntry = false;\n }\n selectElement.append(optionElement);\n }\n let removeEmptyEntry = null;\n if (addAnEmptyEntry) {\n const noneOptionElement = document.createElement(\"option\");\n noneOptionElement.value = \" \";\n noneOptionElement.setAttribute(\"hidden\", true);\n noneOptionElement.setAttribute(\"selected\", true);\n selectElement.prepend(noneOptionElement);\n removeEmptyEntry = () => {\n noneOptionElement.remove();\n selectElement.removeEventListener(\"input\", removeEmptyEntry);\n removeEmptyEntry = null;\n };\n selectElement.addEventListener(\"input\", removeEmptyEntry);\n }\n const getValue = isExport => {\n const name = isExport ? \"value\" : \"textContent\";\n const {\n options,\n multiple\n } = selectElement;\n if (!multiple) {\n return options.selectedIndex === -1 ? null : options[options.selectedIndex][name];\n }\n return Array.prototype.filter.call(options, option => option.selected).map(option => option[name]);\n };\n let selectedValues = getValue(false);\n const getItems = event => {\n const options = event.target.options;\n return Array.prototype.map.call(options, option => {\n return {\n displayValue: option.textContent,\n exportValue: option.value\n };\n });\n };\n if (this.enableScripting && this.hasJSActions) {\n selectElement.addEventListener(\"updatefromsandbox\", jsEvent => {\n const actions = {\n value(event) {\n removeEmptyEntry?.();\n const value = event.detail.value;\n const values = new Set(Array.isArray(value) ? value : [value]);\n for (const option of selectElement.options) {\n option.selected = values.has(option.value);\n }\n storage.setValue(id, {\n value: getValue(true)\n });\n selectedValues = getValue(false);\n },\n multipleSelection(event) {\n selectElement.multiple = true;\n },\n remove(event) {\n const options = selectElement.options;\n const index = event.detail.remove;\n options[index].selected = false;\n selectElement.remove(index);\n if (options.length > 0) {\n const i = Array.prototype.findIndex.call(options, option => option.selected);\n if (i === -1) {\n options[0].selected = true;\n }\n }\n storage.setValue(id, {\n value: getValue(true),\n items: getItems(event)\n });\n selectedValues = getValue(false);\n },\n clear(event) {\n while (selectElement.length !== 0) {\n selectElement.remove(0);\n }\n storage.setValue(id, {\n value: null,\n items: []\n });\n selectedValues = getValue(false);\n },\n insert(event) {\n const {\n index,\n displayValue,\n exportValue\n } = event.detail.insert;\n const selectChild = selectElement.children[index];\n const optionElement = document.createElement(\"option\");\n optionElement.textContent = displayValue;\n optionElement.value = exportValue;\n if (selectChild) {\n selectChild.before(optionElement);\n } else {\n selectElement.append(optionElement);\n }\n storage.setValue(id, {\n value: getValue(true),\n items: getItems(event)\n });\n selectedValues = getValue(false);\n },\n items(event) {\n const {\n items\n } = event.detail;\n while (selectElement.length !== 0) {\n selectElement.remove(0);\n }\n for (const item of items) {\n const {\n displayValue,\n exportValue\n } = item;\n const optionElement = document.createElement(\"option\");\n optionElement.textContent = displayValue;\n optionElement.value = exportValue;\n selectElement.append(optionElement);\n }\n if (selectElement.options.length > 0) {\n selectElement.options[0].selected = true;\n }\n storage.setValue(id, {\n value: getValue(true),\n items: getItems(event)\n });\n selectedValues = getValue(false);\n },\n indices(event) {\n const indices = new Set(event.detail.indices);\n for (const option of event.target.options) {\n option.selected = indices.has(option.index);\n }\n storage.setValue(id, {\n value: getValue(true)\n });\n selectedValues = getValue(false);\n },\n editable(event) {\n event.target.disabled = !event.detail.editable;\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n selectElement.addEventListener(\"input\", event => {\n const exportValue = getValue(true);\n storage.setValue(id, {\n value: exportValue\n });\n event.preventDefault();\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value: selectedValues,\n changeEx: exportValue,\n willCommit: false,\n commitKey: 1,\n keyDown: false\n }\n });\n });\n this._setEventListeners(selectElement, null, [[\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"], [\"input\", \"Action\"], [\"input\", \"Validate\"]], event => event.target.value);\n } else {\n selectElement.addEventListener(\"input\", function (event) {\n storage.setValue(id, {\n value: getValue(true)\n });\n });\n }\n if (this.data.combo) {\n this._setTextStyle(selectElement);\n } else {}\n this._setBackgroundColor(selectElement);\n this._setDefaultPropertiesFromJS(selectElement);\n this.container.append(selectElement);\n return this.container;\n }\n}\nclass PopupAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n const {\n data,\n elements\n } = parameters;\n super(parameters, {\n isRenderable: AnnotationElement._hasPopupData(data)\n });\n this.elements = elements;\n }\n render() {\n this.container.classList.add(\"popupAnnotation\");\n const popup = new PopupElement({\n container: this.container,\n color: this.data.color,\n titleObj: this.data.titleObj,\n modificationDate: this.data.modificationDate,\n contentsObj: this.data.contentsObj,\n richText: this.data.richText,\n rect: this.data.rect,\n parentRect: this.data.parentRect || null,\n parent: this.parent,\n elements: this.elements,\n open: this.data.open\n });\n const elementIds = [];\n for (const element of this.elements) {\n element.popup = popup;\n elementIds.push(element.data.id);\n element.addHighlightArea();\n }\n this.container.setAttribute(\"aria-controls\", elementIds.map(id => `${_util.AnnotationPrefix}${id}`).join(\",\"));\n return this.container;\n }\n}\nclass PopupElement {\n #dateTimePromise = null;\n #boundKeyDown = this.#keyDown.bind(this);\n #boundHide = this.#hide.bind(this);\n #boundShow = this.#show.bind(this);\n #boundToggle = this.#toggle.bind(this);\n #color = null;\n #container = null;\n #contentsObj = null;\n #elements = null;\n #parent = null;\n #parentRect = null;\n #pinned = false;\n #popup = null;\n #rect = null;\n #richText = null;\n #titleObj = null;\n #wasVisible = false;\n constructor({\n container,\n color,\n elements,\n titleObj,\n modificationDate,\n contentsObj,\n richText,\n parent,\n rect,\n parentRect,\n open\n }) {\n this.#container = container;\n this.#titleObj = titleObj;\n this.#contentsObj = contentsObj;\n this.#richText = richText;\n this.#parent = parent;\n this.#color = color;\n this.#rect = rect;\n this.#parentRect = parentRect;\n this.#elements = elements;\n const dateObject = _display_utils.PDFDateString.toDateObject(modificationDate);\n if (dateObject) {\n this.#dateTimePromise = parent.l10n.get(\"annotation_date_string\", {\n date: dateObject.toLocaleDateString(),\n time: dateObject.toLocaleTimeString()\n });\n }\n this.trigger = elements.flatMap(e => e.getElementsToTriggerPopup());\n for (const element of this.trigger) {\n element.addEventListener(\"click\", this.#boundToggle);\n element.addEventListener(\"mouseenter\", this.#boundShow);\n element.addEventListener(\"mouseleave\", this.#boundHide);\n element.classList.add(\"popupTriggerArea\");\n }\n for (const element of elements) {\n element.container?.addEventListener(\"keydown\", this.#boundKeyDown);\n }\n this.#container.hidden = true;\n if (open) {\n this.#toggle();\n }\n }\n render() {\n if (this.#popup) {\n return;\n }\n const {\n page: {\n view\n },\n viewport: {\n rawDims: {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n }\n }\n } = this.#parent;\n const popup = this.#popup = document.createElement(\"div\");\n popup.className = \"popup\";\n if (this.#color) {\n const baseColor = popup.style.outlineColor = _util.Util.makeHexColor(...this.#color);\n if (CSS.supports(\"background-color\", \"color-mix(in srgb, red 30%, white)\")) {\n popup.style.backgroundColor = `color-mix(in srgb, ${baseColor} 30%, white)`;\n } else {\n const BACKGROUND_ENLIGHT = 0.7;\n popup.style.backgroundColor = _util.Util.makeHexColor(...this.#color.map(c => Math.floor(BACKGROUND_ENLIGHT * (255 - c) + c)));\n }\n }\n const header = document.createElement(\"span\");\n header.className = \"header\";\n const title = document.createElement(\"h1\");\n header.append(title);\n ({\n dir: title.dir,\n str: title.textContent\n } = this.#titleObj);\n popup.append(header);\n if (this.#dateTimePromise) {\n const modificationDate = document.createElement(\"span\");\n modificationDate.classList.add(\"popupDate\");\n this.#dateTimePromise.then(localized => {\n modificationDate.textContent = localized;\n });\n header.append(modificationDate);\n }\n const contentsObj = this.#contentsObj;\n const richText = this.#richText;\n if (richText?.str && (!contentsObj?.str || contentsObj.str === richText.str)) {\n _xfa_layer.XfaLayer.render({\n xfaHtml: richText.html,\n intent: \"richText\",\n div: popup\n });\n popup.lastChild.classList.add(\"richText\", \"popupContent\");\n } else {\n const contents = this._formatContents(contentsObj);\n popup.append(contents);\n }\n let useParentRect = !!this.#parentRect;\n let rect = useParentRect ? this.#parentRect : this.#rect;\n for (const element of this.#elements) {\n if (!rect || _util.Util.intersect(element.data.rect, rect) !== null) {\n rect = element.data.rect;\n useParentRect = true;\n break;\n }\n }\n const normalizedRect = _util.Util.normalizeRect([rect[0], view[3] - rect[1] + view[1], rect[2], view[3] - rect[3] + view[1]]);\n const HORIZONTAL_SPACE_AFTER_ANNOTATION = 5;\n const parentWidth = useParentRect ? rect[2] - rect[0] + HORIZONTAL_SPACE_AFTER_ANNOTATION : 0;\n const popupLeft = normalizedRect[0] + parentWidth;\n const popupTop = normalizedRect[1];\n const {\n style\n } = this.#container;\n style.left = `${100 * (popupLeft - pageX) / pageWidth}%`;\n style.top = `${100 * (popupTop - pageY) / pageHeight}%`;\n this.#container.append(popup);\n }\n _formatContents({\n str,\n dir\n }) {\n const p = document.createElement(\"p\");\n p.classList.add(\"popupContent\");\n p.dir = dir;\n const lines = str.split(/(?:\\r\\n?|\\n)/);\n for (let i = 0, ii = lines.length; i < ii; ++i) {\n const line = lines[i];\n p.append(document.createTextNode(line));\n if (i < ii - 1) {\n p.append(document.createElement(\"br\"));\n }\n }\n return p;\n }\n #keyDown(event) {\n if (event.altKey || event.shiftKey || event.ctrlKey || event.metaKey) {\n return;\n }\n if (event.key === \"Enter\" || event.key === \"Escape\" && this.#pinned) {\n this.#toggle();\n }\n }\n #toggle() {\n this.#pinned = !this.#pinned;\n if (this.#pinned) {\n this.#show();\n this.#container.addEventListener(\"click\", this.#boundToggle);\n this.#container.addEventListener(\"keydown\", this.#boundKeyDown);\n } else {\n this.#hide();\n this.#container.removeEventListener(\"click\", this.#boundToggle);\n this.#container.removeEventListener(\"keydown\", this.#boundKeyDown);\n }\n }\n #show() {\n if (!this.#popup) {\n this.render();\n }\n if (!this.isVisible) {\n this.#container.hidden = false;\n this.#container.style.zIndex = parseInt(this.#container.style.zIndex) + 1000;\n } else if (this.#pinned) {\n this.#container.classList.add(\"focused\");\n }\n }\n #hide() {\n this.#container.classList.remove(\"focused\");\n if (this.#pinned || !this.isVisible) {\n return;\n }\n this.#container.hidden = true;\n this.#container.style.zIndex = parseInt(this.#container.style.zIndex) - 1000;\n }\n forceHide() {\n this.#wasVisible = this.isVisible;\n if (!this.#wasVisible) {\n return;\n }\n this.#container.hidden = true;\n }\n maybeShow() {\n if (!this.#wasVisible) {\n return;\n }\n this.#wasVisible = false;\n this.#container.hidden = false;\n }\n get isVisible() {\n return this.#container.hidden === false;\n }\n}\nclass FreeTextAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n this.textContent = parameters.data.textContent;\n this.textPosition = parameters.data.textPosition;\n this.annotationEditorType = _util.AnnotationEditorType.FREETEXT;\n }\n render() {\n this.container.classList.add(\"freeTextAnnotation\");\n if (this.textContent) {\n const content = document.createElement(\"div\");\n content.classList.add(\"annotationTextContent\");\n content.setAttribute(\"role\", \"comment\");\n for (const line of this.textContent) {\n const lineSpan = document.createElement(\"span\");\n lineSpan.textContent = line;\n content.append(lineSpan);\n }\n this.container.append(content);\n }\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this._editOnDoubleClick();\n return this.container;\n }\n}\nexports.FreeTextAnnotationElement = FreeTextAnnotationElement;\nclass LineAnnotationElement extends AnnotationElement {\n #line = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"lineAnnotation\");\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n const line = this.#line = this.svgFactory.createElement(\"svg:line\");\n line.setAttribute(\"x1\", data.rect[2] - data.lineCoordinates[0]);\n line.setAttribute(\"y1\", data.rect[3] - data.lineCoordinates[1]);\n line.setAttribute(\"x2\", data.rect[2] - data.lineCoordinates[2]);\n line.setAttribute(\"y2\", data.rect[3] - data.lineCoordinates[3]);\n line.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n line.setAttribute(\"stroke\", \"transparent\");\n line.setAttribute(\"fill\", \"transparent\");\n svg.append(line);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#line;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass SquareAnnotationElement extends AnnotationElement {\n #square = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"squareAnnotation\");\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n const borderWidth = data.borderStyle.width;\n const square = this.#square = this.svgFactory.createElement(\"svg:rect\");\n square.setAttribute(\"x\", borderWidth / 2);\n square.setAttribute(\"y\", borderWidth / 2);\n square.setAttribute(\"width\", width - borderWidth);\n square.setAttribute(\"height\", height - borderWidth);\n square.setAttribute(\"stroke-width\", borderWidth || 1);\n square.setAttribute(\"stroke\", \"transparent\");\n square.setAttribute(\"fill\", \"transparent\");\n svg.append(square);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#square;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass CircleAnnotationElement extends AnnotationElement {\n #circle = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"circleAnnotation\");\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n const borderWidth = data.borderStyle.width;\n const circle = this.#circle = this.svgFactory.createElement(\"svg:ellipse\");\n circle.setAttribute(\"cx\", width / 2);\n circle.setAttribute(\"cy\", height / 2);\n circle.setAttribute(\"rx\", width / 2 - borderWidth / 2);\n circle.setAttribute(\"ry\", height / 2 - borderWidth / 2);\n circle.setAttribute(\"stroke-width\", borderWidth || 1);\n circle.setAttribute(\"stroke\", \"transparent\");\n circle.setAttribute(\"fill\", \"transparent\");\n svg.append(circle);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#circle;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass PolylineAnnotationElement extends AnnotationElement {\n #polyline = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n this.containerClassName = \"polylineAnnotation\";\n this.svgElementName = \"svg:polyline\";\n }\n render() {\n this.container.classList.add(this.containerClassName);\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n let points = [];\n for (const coordinate of data.vertices) {\n const x = coordinate.x - data.rect[0];\n const y = data.rect[3] - coordinate.y;\n points.push(x + \",\" + y);\n }\n points = points.join(\" \");\n const polyline = this.#polyline = this.svgFactory.createElement(this.svgElementName);\n polyline.setAttribute(\"points\", points);\n polyline.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n polyline.setAttribute(\"stroke\", \"transparent\");\n polyline.setAttribute(\"fill\", \"transparent\");\n svg.append(polyline);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#polyline;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass PolygonAnnotationElement extends PolylineAnnotationElement {\n constructor(parameters) {\n super(parameters);\n this.containerClassName = \"polygonAnnotation\";\n this.svgElementName = \"svg:polygon\";\n }\n}\nclass CaretAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"caretAnnotation\");\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n}\nclass InkAnnotationElement extends AnnotationElement {\n #polylines = [];\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n this.containerClassName = \"inkAnnotation\";\n this.svgElementName = \"svg:polyline\";\n this.annotationEditorType = _util.AnnotationEditorType.INK;\n }\n render() {\n this.container.classList.add(this.containerClassName);\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n for (const inkList of data.inkLists) {\n let points = [];\n for (const coordinate of inkList) {\n const x = coordinate.x - data.rect[0];\n const y = data.rect[3] - coordinate.y;\n points.push(`${x},${y}`);\n }\n points = points.join(\" \");\n const polyline = this.svgFactory.createElement(this.svgElementName);\n this.#polylines.push(polyline);\n polyline.setAttribute(\"points\", points);\n polyline.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n polyline.setAttribute(\"stroke\", \"transparent\");\n polyline.setAttribute(\"fill\", \"transparent\");\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n svg.append(polyline);\n }\n this.container.append(svg);\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#polylines;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nexports.InkAnnotationElement = InkAnnotationElement;\nclass HighlightAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"highlightAnnotation\");\n return this.container;\n }\n}\nclass UnderlineAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"underlineAnnotation\");\n return this.container;\n }\n}\nclass SquigglyAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"squigglyAnnotation\");\n return this.container;\n }\n}\nclass StrikeOutAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"strikeoutAnnotation\");\n return this.container;\n }\n}\nclass StampAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"stampAnnotation\");\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n}\nexports.StampAnnotationElement = StampAnnotationElement;\nclass FileAttachmentAnnotationElement extends AnnotationElement {\n #trigger = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true\n });\n const {\n filename,\n content\n } = this.data.file;\n this.filename = (0, _display_utils.getFilenameFromUrl)(filename, true);\n this.content = content;\n this.linkService.eventBus?.dispatch(\"fileattachmentannotation\", {\n source: this,\n filename,\n content\n });\n }\n render() {\n this.container.classList.add(\"fileAttachmentAnnotation\");\n const {\n container,\n data\n } = this;\n let trigger;\n if (data.hasAppearance || data.fillAlpha === 0) {\n trigger = document.createElement(\"div\");\n } else {\n trigger = document.createElement(\"img\");\n trigger.src = `${this.imageResourcesPath}annotation-${/paperclip/i.test(data.name) ? \"paperclip\" : \"pushpin\"}.svg`;\n if (data.fillAlpha && data.fillAlpha < 1) {\n trigger.style = `filter: opacity(${Math.round(data.fillAlpha * 100)}%);`;\n }\n }\n trigger.addEventListener(\"dblclick\", this.#download.bind(this));\n this.#trigger = trigger;\n const {\n isMac\n } = _util.FeatureTest.platform;\n container.addEventListener(\"keydown\", evt => {\n if (evt.key === \"Enter\" && (isMac ? evt.metaKey : evt.ctrlKey)) {\n this.#download();\n }\n });\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n } else {\n trigger.classList.add(\"popupTriggerArea\");\n }\n container.append(trigger);\n return container;\n }\n getElementsToTriggerPopup() {\n return this.#trigger;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n #download() {\n this.downloadManager?.openOrDownloadData(this.container, this.content, this.filename);\n }\n}\nclass AnnotationLayer {\n #accessibilityManager = null;\n #annotationCanvasMap = null;\n #editableAnnotations = new Map();\n constructor({\n div,\n accessibilityManager,\n annotationCanvasMap,\n l10n,\n page,\n viewport\n }) {\n this.div = div;\n this.#accessibilityManager = accessibilityManager;\n this.#annotationCanvasMap = annotationCanvasMap;\n this.l10n = l10n;\n this.page = page;\n this.viewport = viewport;\n this.zIndex = 0;\n this.l10n ||= _displayL10n_utils.NullL10n;\n }\n #appendElement(element, id) {\n const contentElement = element.firstChild || element;\n contentElement.id = `${_util.AnnotationPrefix}${id}`;\n this.div.append(element);\n this.#accessibilityManager?.moveElementInDOM(this.div, element, contentElement, false);\n }\n async render(params) {\n const {\n annotations\n } = params;\n const layer = this.div;\n (0, _display_utils.setLayerDimensions)(layer, this.viewport);\n const popupToElements = new Map();\n const elementParams = {\n data: null,\n layer,\n linkService: params.linkService,\n downloadManager: params.downloadManager,\n imageResourcesPath: params.imageResourcesPath || \"\",\n renderForms: params.renderForms !== false,\n svgFactory: new _display_utils.DOMSVGFactory(),\n annotationStorage: params.annotationStorage || new _annotation_storage.AnnotationStorage(),\n enableScripting: params.enableScripting === true,\n hasJSActions: params.hasJSActions,\n fieldObjects: params.fieldObjects,\n parent: this,\n elements: null\n };\n for (const data of annotations) {\n if (data.noHTML) {\n continue;\n }\n const isPopupAnnotation = data.annotationType === _util.AnnotationType.POPUP;\n if (!isPopupAnnotation) {\n const {\n width,\n height\n } = getRectDims(data.rect);\n if (width <= 0 || height <= 0) {\n continue;\n }\n } else {\n const elements = popupToElements.get(data.id);\n if (!elements) {\n continue;\n }\n elementParams.elements = elements;\n }\n elementParams.data = data;\n const element = AnnotationElementFactory.create(elementParams);\n if (!element.isRenderable) {\n continue;\n }\n if (!isPopupAnnotation && data.popupRef) {\n const elements = popupToElements.get(data.popupRef);\n if (!elements) {\n popupToElements.set(data.popupRef, [element]);\n } else {\n elements.push(element);\n }\n }\n if (element.annotationEditorType > 0) {\n this.#editableAnnotations.set(element.data.id, element);\n }\n const rendered = element.render();\n if (data.hidden) {\n rendered.style.visibility = \"hidden\";\n }\n this.#appendElement(rendered, data.id);\n }\n this.#setAnnotationCanvasMap();\n await this.l10n.translate(layer);\n }\n update({\n viewport\n }) {\n const layer = this.div;\n this.viewport = viewport;\n (0, _display_utils.setLayerDimensions)(layer, {\n rotation: viewport.rotation\n });\n this.#setAnnotationCanvasMap();\n layer.hidden = false;\n }\n #setAnnotationCanvasMap() {\n if (!this.#annotationCanvasMap) {\n return;\n }\n const layer = this.div;\n for (const [id, canvas] of this.#annotationCanvasMap) {\n const element = layer.querySelector(`[data-annotation-id=\"${id}\"]`);\n if (!element) {\n continue;\n }\n const {\n firstChild\n } = element;\n if (!firstChild) {\n element.append(canvas);\n } else if (firstChild.nodeName === \"CANVAS\") {\n firstChild.replaceWith(canvas);\n } else {\n firstChild.before(canvas);\n }\n }\n this.#annotationCanvasMap.clear();\n }\n getEditableAnnotations() {\n return Array.from(this.#editableAnnotations.values());\n }\n getEditableAnnotation(id) {\n return this.#editableAnnotations.get(id);\n }\n}\nexports.AnnotationLayer = AnnotationLayer;\n\n/***/ }),\n/* 30 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ColorConverters = void 0;\nfunction makeColorComp(n) {\n return Math.floor(Math.max(0, Math.min(1, n)) * 255).toString(16).padStart(2, \"0\");\n}\nfunction scaleAndClamp(x) {\n return Math.max(0, Math.min(255, 255 * x));\n}\nclass ColorConverters {\n static CMYK_G([c, y, m, k]) {\n return [\"G\", 1 - Math.min(1, 0.3 * c + 0.59 * m + 0.11 * y + k)];\n }\n static G_CMYK([g]) {\n return [\"CMYK\", 0, 0, 0, 1 - g];\n }\n static G_RGB([g]) {\n return [\"RGB\", g, g, g];\n }\n static G_rgb([g]) {\n g = scaleAndClamp(g);\n return [g, g, g];\n }\n static G_HTML([g]) {\n const G = makeColorComp(g);\n return `#${G}${G}${G}`;\n }\n static RGB_G([r, g, b]) {\n return [\"G\", 0.3 * r + 0.59 * g + 0.11 * b];\n }\n static RGB_rgb(color) {\n return color.map(scaleAndClamp);\n }\n static RGB_HTML(color) {\n return `#${color.map(makeColorComp).join(\"\")}`;\n }\n static T_HTML() {\n return \"#00000000\";\n }\n static T_rgb() {\n return [null];\n }\n static CMYK_RGB([c, y, m, k]) {\n return [\"RGB\", 1 - Math.min(1, c + k), 1 - Math.min(1, m + k), 1 - Math.min(1, y + k)];\n }\n static CMYK_rgb([c, y, m, k]) {\n return [scaleAndClamp(1 - Math.min(1, c + k)), scaleAndClamp(1 - Math.min(1, m + k)), scaleAndClamp(1 - Math.min(1, y + k))];\n }\n static CMYK_HTML(components) {\n const rgb = this.CMYK_RGB(components).slice(1);\n return this.RGB_HTML(rgb);\n }\n static RGB_CMYK([r, g, b]) {\n const c = 1 - r;\n const m = 1 - g;\n const y = 1 - b;\n const k = Math.min(c, m, y);\n return [\"CMYK\", c, m, y, k];\n }\n}\nexports.ColorConverters = ColorConverters;\n\n/***/ }),\n/* 31 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.NullL10n = void 0;\nexports.getL10nFallback = getL10nFallback;\nconst DEFAULT_L10N_STRINGS = {\n of_pages: \"of {{pagesCount}}\",\n page_of_pages: \"({{pageNumber}} of {{pagesCount}})\",\n document_properties_kb: \"{{size_kb}} KB ({{size_b}} bytes)\",\n document_properties_mb: \"{{size_mb}} MB ({{size_b}} bytes)\",\n document_properties_date_string: \"{{date}}, {{time}}\",\n document_properties_page_size_unit_inches: \"in\",\n document_properties_page_size_unit_millimeters: \"mm\",\n document_properties_page_size_orientation_portrait: \"portrait\",\n document_properties_page_size_orientation_landscape: \"landscape\",\n document_properties_page_size_name_a3: \"A3\",\n document_properties_page_size_name_a4: \"A4\",\n document_properties_page_size_name_letter: \"Letter\",\n document_properties_page_size_name_legal: \"Legal\",\n document_properties_page_size_dimension_string: \"{{width}} × {{height}} {{unit}} ({{orientation}})\",\n document_properties_page_size_dimension_name_string: \"{{width}} × {{height}} {{unit}} ({{name}}, {{orientation}})\",\n document_properties_linearized_yes: \"Yes\",\n document_properties_linearized_no: \"No\",\n additional_layers: \"Additional Layers\",\n page_landmark: \"Page {{page}}\",\n thumb_page_title: \"Page {{page}}\",\n thumb_page_canvas: \"Thumbnail of Page {{page}}\",\n find_reached_top: \"Reached top of document, continued from bottom\",\n find_reached_bottom: \"Reached end of document, continued from top\",\n \"find_match_count[one]\": \"{{current}} of {{total}} match\",\n \"find_match_count[other]\": \"{{current}} of {{total}} matches\",\n \"find_match_count_limit[one]\": \"More than {{limit}} match\",\n \"find_match_count_limit[other]\": \"More than {{limit}} matches\",\n find_not_found: \"Phrase not found\",\n page_scale_width: \"Page Width\",\n page_scale_fit: \"Page Fit\",\n page_scale_auto: \"Automatic Zoom\",\n page_scale_actual: \"Actual Size\",\n page_scale_percent: \"{{scale}}%\",\n loading_error: \"An error occurred while loading the PDF.\",\n invalid_file_error: \"Invalid or corrupted PDF file.\",\n missing_file_error: \"Missing PDF file.\",\n unexpected_response_error: \"Unexpected server response.\",\n rendering_error: \"An error occurred while rendering the page.\",\n annotation_date_string: \"{{date}}, {{time}}\",\n printing_not_supported: \"Warning: Printing is not fully supported by this browser.\",\n printing_not_ready: \"Warning: The PDF is not fully loaded for printing.\",\n web_fonts_disabled: \"Web fonts are disabled: unable to use embedded PDF fonts.\",\n free_text2_default_content: \"Start typing…\",\n editor_free_text2_aria_label: \"Text Editor\",\n editor_ink2_aria_label: \"Draw Editor\",\n editor_ink_canvas_aria_label: \"User-created image\",\n editor_alt_text_button_label: \"Alt text\",\n editor_alt_text_edit_button_label: \"Edit alt text\",\n editor_alt_text_decorative_tooltip: \"Marked as decorative\"\n};\n{\n DEFAULT_L10N_STRINGS.print_progress_percent = \"{{progress}}%\";\n}\nfunction getL10nFallback(key, args) {\n switch (key) {\n case \"find_match_count\":\n key = `find_match_count[${args.total === 1 ? \"one\" : \"other\"}]`;\n break;\n case \"find_match_count_limit\":\n key = `find_match_count_limit[${args.limit === 1 ? \"one\" : \"other\"}]`;\n break;\n }\n return DEFAULT_L10N_STRINGS[key] || \"\";\n}\nfunction formatL10nValue(text, args) {\n if (!args) {\n return text;\n }\n return text.replaceAll(/\\{\\{\\s*(\\w+)\\s*\\}\\}/g, (all, name) => {\n return name in args ? args[name] : \"{{\" + name + \"}}\";\n });\n}\nconst NullL10n = {\n async getLanguage() {\n return \"en-us\";\n },\n async getDirection() {\n return \"ltr\";\n },\n async get(key, args = null, fallback = getL10nFallback(key, args)) {\n return formatL10nValue(fallback, args);\n },\n async translate(element) {}\n};\nexports.NullL10n = NullL10n;\n\n/***/ }),\n/* 32 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XfaLayer = void 0;\nvar _xfa_text = __w_pdfjs_require__(25);\nclass XfaLayer {\n static setupStorage(html, id, element, storage, intent) {\n const storedData = storage.getValue(id, {\n value: null\n });\n switch (element.name) {\n case \"textarea\":\n if (storedData.value !== null) {\n html.textContent = storedData.value;\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"input\", event => {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n break;\n case \"input\":\n if (element.attributes.type === \"radio\" || element.attributes.type === \"checkbox\") {\n if (storedData.value === element.attributes.xfaOn) {\n html.setAttribute(\"checked\", true);\n } else if (storedData.value === element.attributes.xfaOff) {\n html.removeAttribute(\"checked\");\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"change\", event => {\n storage.setValue(id, {\n value: event.target.checked ? event.target.getAttribute(\"xfaOn\") : event.target.getAttribute(\"xfaOff\")\n });\n });\n } else {\n if (storedData.value !== null) {\n html.setAttribute(\"value\", storedData.value);\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"input\", event => {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n }\n break;\n case \"select\":\n if (storedData.value !== null) {\n html.setAttribute(\"value\", storedData.value);\n for (const option of element.children) {\n if (option.attributes.value === storedData.value) {\n option.attributes.selected = true;\n } else if (option.attributes.hasOwnProperty(\"selected\")) {\n delete option.attributes.selected;\n }\n }\n }\n html.addEventListener(\"input\", event => {\n const options = event.target.options;\n const value = options.selectedIndex === -1 ? \"\" : options[options.selectedIndex].value;\n storage.setValue(id, {\n value\n });\n });\n break;\n }\n }\n static setAttributes({\n html,\n element,\n storage = null,\n intent,\n linkService\n }) {\n const {\n attributes\n } = element;\n const isHTMLAnchorElement = html instanceof HTMLAnchorElement;\n if (attributes.type === \"radio\") {\n attributes.name = `${attributes.name}-${intent}`;\n }\n for (const [key, value] of Object.entries(attributes)) {\n if (value === null || value === undefined) {\n continue;\n }\n switch (key) {\n case \"class\":\n if (value.length) {\n html.setAttribute(key, value.join(\" \"));\n }\n break;\n case \"dataId\":\n break;\n case \"id\":\n html.setAttribute(\"data-element-id\", value);\n break;\n case \"style\":\n Object.assign(html.style, value);\n break;\n case \"textContent\":\n html.textContent = value;\n break;\n default:\n if (!isHTMLAnchorElement || key !== \"href\" && key !== \"newWindow\") {\n html.setAttribute(key, value);\n }\n }\n }\n if (isHTMLAnchorElement) {\n linkService.addLinkAttributes(html, attributes.href, attributes.newWindow);\n }\n if (storage && attributes.dataId) {\n this.setupStorage(html, attributes.dataId, element, storage);\n }\n }\n static render(parameters) {\n const storage = parameters.annotationStorage;\n const linkService = parameters.linkService;\n const root = parameters.xfaHtml;\n const intent = parameters.intent || \"display\";\n const rootHtml = document.createElement(root.name);\n if (root.attributes) {\n this.setAttributes({\n html: rootHtml,\n element: root,\n intent,\n linkService\n });\n }\n const stack = [[root, -1, rootHtml]];\n const rootDiv = parameters.div;\n rootDiv.append(rootHtml);\n if (parameters.viewport) {\n const transform = `matrix(${parameters.viewport.transform.join(\",\")})`;\n rootDiv.style.transform = transform;\n }\n if (intent !== \"richText\") {\n rootDiv.setAttribute(\"class\", \"xfaLayer xfaFont\");\n }\n const textDivs = [];\n while (stack.length > 0) {\n const [parent, i, html] = stack.at(-1);\n if (i + 1 === parent.children.length) {\n stack.pop();\n continue;\n }\n const child = parent.children[++stack.at(-1)[1]];\n if (child === null) {\n continue;\n }\n const {\n name\n } = child;\n if (name === \"#text\") {\n const node = document.createTextNode(child.value);\n textDivs.push(node);\n html.append(node);\n continue;\n }\n const childHtml = child?.attributes?.xmlns ? document.createElementNS(child.attributes.xmlns, name) : document.createElement(name);\n html.append(childHtml);\n if (child.attributes) {\n this.setAttributes({\n html: childHtml,\n element: child,\n storage,\n intent,\n linkService\n });\n }\n if (child.children && child.children.length > 0) {\n stack.push([child, -1, childHtml]);\n } else if (child.value) {\n const node = document.createTextNode(child.value);\n if (_xfa_text.XfaText.shouldBuildText(name)) {\n textDivs.push(node);\n }\n childHtml.append(node);\n }\n }\n for (const el of rootDiv.querySelectorAll(\".xfaNonInteractive input, .xfaNonInteractive textarea\")) {\n el.setAttribute(\"readOnly\", true);\n }\n return {\n textDivs\n };\n }\n static update(parameters) {\n const transform = `matrix(${parameters.viewport.transform.join(\",\")})`;\n parameters.div.style.transform = transform;\n parameters.div.hidden = false;\n }\n}\nexports.XfaLayer = XfaLayer;\n\n/***/ }),\n/* 33 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.InkEditor = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _editor = __w_pdfjs_require__(4);\nvar _annotation_layer = __w_pdfjs_require__(29);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _tools = __w_pdfjs_require__(5);\nclass InkEditor extends _editor.AnnotationEditor {\n #baseHeight = 0;\n #baseWidth = 0;\n #boundCanvasPointermove = this.canvasPointermove.bind(this);\n #boundCanvasPointerleave = this.canvasPointerleave.bind(this);\n #boundCanvasPointerup = this.canvasPointerup.bind(this);\n #boundCanvasPointerdown = this.canvasPointerdown.bind(this);\n #currentPath2D = new Path2D();\n #disableEditing = false;\n #hasSomethingToDraw = false;\n #isCanvasInitialized = false;\n #observer = null;\n #realWidth = 0;\n #realHeight = 0;\n #requestFrameCallback = null;\n static _defaultColor = null;\n static _defaultOpacity = 1;\n static _defaultThickness = 1;\n static _type = \"ink\";\n constructor(params) {\n super({\n ...params,\n name: \"inkEditor\"\n });\n this.color = params.color || null;\n this.thickness = params.thickness || null;\n this.opacity = params.opacity || null;\n this.paths = [];\n this.bezierPath2D = [];\n this.allRawPaths = [];\n this.currentPath = [];\n this.scaleFactor = 1;\n this.translationX = this.translationY = 0;\n this.x = 0;\n this.y = 0;\n this._willKeepAspectRatio = true;\n }\n static initialize(l10n) {\n _editor.AnnotationEditor.initialize(l10n, {\n strings: [\"editor_ink_canvas_aria_label\", \"editor_ink2_aria_label\"]\n });\n }\n static updateDefaultParams(type, value) {\n switch (type) {\n case _util.AnnotationEditorParamsType.INK_THICKNESS:\n InkEditor._defaultThickness = value;\n break;\n case _util.AnnotationEditorParamsType.INK_COLOR:\n InkEditor._defaultColor = value;\n break;\n case _util.AnnotationEditorParamsType.INK_OPACITY:\n InkEditor._defaultOpacity = value / 100;\n break;\n }\n }\n updateParams(type, value) {\n switch (type) {\n case _util.AnnotationEditorParamsType.INK_THICKNESS:\n this.#updateThickness(value);\n break;\n case _util.AnnotationEditorParamsType.INK_COLOR:\n this.#updateColor(value);\n break;\n case _util.AnnotationEditorParamsType.INK_OPACITY:\n this.#updateOpacity(value);\n break;\n }\n }\n static get defaultPropertiesToUpdate() {\n return [[_util.AnnotationEditorParamsType.INK_THICKNESS, InkEditor._defaultThickness], [_util.AnnotationEditorParamsType.INK_COLOR, InkEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor], [_util.AnnotationEditorParamsType.INK_OPACITY, Math.round(InkEditor._defaultOpacity * 100)]];\n }\n get propertiesToUpdate() {\n return [[_util.AnnotationEditorParamsType.INK_THICKNESS, this.thickness || InkEditor._defaultThickness], [_util.AnnotationEditorParamsType.INK_COLOR, this.color || InkEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor], [_util.AnnotationEditorParamsType.INK_OPACITY, Math.round(100 * (this.opacity ?? InkEditor._defaultOpacity))]];\n }\n #updateThickness(thickness) {\n const savedThickness = this.thickness;\n this.addCommands({\n cmd: () => {\n this.thickness = thickness;\n this.#fitToContent();\n },\n undo: () => {\n this.thickness = savedThickness;\n this.#fitToContent();\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.INK_THICKNESS,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n #updateColor(color) {\n const savedColor = this.color;\n this.addCommands({\n cmd: () => {\n this.color = color;\n this.#redraw();\n },\n undo: () => {\n this.color = savedColor;\n this.#redraw();\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.INK_COLOR,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n #updateOpacity(opacity) {\n opacity /= 100;\n const savedOpacity = this.opacity;\n this.addCommands({\n cmd: () => {\n this.opacity = opacity;\n this.#redraw();\n },\n undo: () => {\n this.opacity = savedOpacity;\n this.#redraw();\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.INK_OPACITY,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n rebuild() {\n if (!this.parent) {\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n if (!this.canvas) {\n this.#createCanvas();\n this.#createObserver();\n }\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n this.#setCanvasDims();\n }\n this.#fitToContent();\n }\n remove() {\n if (this.canvas === null) {\n return;\n }\n if (!this.isEmpty()) {\n this.commit();\n }\n this.canvas.width = this.canvas.height = 0;\n this.canvas.remove();\n this.canvas = null;\n this.#observer.disconnect();\n this.#observer = null;\n super.remove();\n }\n setParent(parent) {\n if (!this.parent && parent) {\n this._uiManager.removeShouldRescale(this);\n } else if (this.parent && parent === null) {\n this._uiManager.addShouldRescale(this);\n }\n super.setParent(parent);\n }\n onScaleChanging() {\n const [parentWidth, parentHeight] = this.parentDimensions;\n const width = this.width * parentWidth;\n const height = this.height * parentHeight;\n this.setDimensions(width, height);\n }\n enableEditMode() {\n if (this.#disableEditing || this.canvas === null) {\n return;\n }\n super.enableEditMode();\n this._isDraggable = false;\n this.canvas.addEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n }\n disableEditMode() {\n if (!this.isInEditMode() || this.canvas === null) {\n return;\n }\n super.disableEditMode();\n this._isDraggable = !this.isEmpty();\n this.div.classList.remove(\"editing\");\n this.canvas.removeEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n }\n onceAdded() {\n this._isDraggable = !this.isEmpty();\n }\n isEmpty() {\n return this.paths.length === 0 || this.paths.length === 1 && this.paths[0].length === 0;\n }\n #getInitialBBox() {\n const {\n parentRotation,\n parentDimensions: [width, height]\n } = this;\n switch (parentRotation) {\n case 90:\n return [0, height, height, width];\n case 180:\n return [width, height, width, height];\n case 270:\n return [width, 0, height, width];\n default:\n return [0, 0, width, height];\n }\n }\n #setStroke() {\n const {\n ctx,\n color,\n opacity,\n thickness,\n parentScale,\n scaleFactor\n } = this;\n ctx.lineWidth = thickness * parentScale / scaleFactor;\n ctx.lineCap = \"round\";\n ctx.lineJoin = \"round\";\n ctx.miterLimit = 10;\n ctx.strokeStyle = `${color}${(0, _tools.opacityToHex)(opacity)}`;\n }\n #startDrawing(x, y) {\n this.canvas.addEventListener(\"contextmenu\", _display_utils.noContextMenu);\n this.canvas.addEventListener(\"pointerleave\", this.#boundCanvasPointerleave);\n this.canvas.addEventListener(\"pointermove\", this.#boundCanvasPointermove);\n this.canvas.addEventListener(\"pointerup\", this.#boundCanvasPointerup);\n this.canvas.removeEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n this.isEditing = true;\n if (!this.#isCanvasInitialized) {\n this.#isCanvasInitialized = true;\n this.#setCanvasDims();\n this.thickness ||= InkEditor._defaultThickness;\n this.color ||= InkEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor;\n this.opacity ??= InkEditor._defaultOpacity;\n }\n this.currentPath.push([x, y]);\n this.#hasSomethingToDraw = false;\n this.#setStroke();\n this.#requestFrameCallback = () => {\n this.#drawPoints();\n if (this.#requestFrameCallback) {\n window.requestAnimationFrame(this.#requestFrameCallback);\n }\n };\n window.requestAnimationFrame(this.#requestFrameCallback);\n }\n #draw(x, y) {\n const [lastX, lastY] = this.currentPath.at(-1);\n if (this.currentPath.length > 1 && x === lastX && y === lastY) {\n return;\n }\n const currentPath = this.currentPath;\n let path2D = this.#currentPath2D;\n currentPath.push([x, y]);\n this.#hasSomethingToDraw = true;\n if (currentPath.length <= 2) {\n path2D.moveTo(...currentPath[0]);\n path2D.lineTo(x, y);\n return;\n }\n if (currentPath.length === 3) {\n this.#currentPath2D = path2D = new Path2D();\n path2D.moveTo(...currentPath[0]);\n }\n this.#makeBezierCurve(path2D, ...currentPath.at(-3), ...currentPath.at(-2), x, y);\n }\n #endPath() {\n if (this.currentPath.length === 0) {\n return;\n }\n const lastPoint = this.currentPath.at(-1);\n this.#currentPath2D.lineTo(...lastPoint);\n }\n #stopDrawing(x, y) {\n this.#requestFrameCallback = null;\n x = Math.min(Math.max(x, 0), this.canvas.width);\n y = Math.min(Math.max(y, 0), this.canvas.height);\n this.#draw(x, y);\n this.#endPath();\n let bezier;\n if (this.currentPath.length !== 1) {\n bezier = this.#generateBezierPoints();\n } else {\n const xy = [x, y];\n bezier = [[xy, xy.slice(), xy.slice(), xy]];\n }\n const path2D = this.#currentPath2D;\n const currentPath = this.currentPath;\n this.currentPath = [];\n this.#currentPath2D = new Path2D();\n const cmd = () => {\n this.allRawPaths.push(currentPath);\n this.paths.push(bezier);\n this.bezierPath2D.push(path2D);\n this.rebuild();\n };\n const undo = () => {\n this.allRawPaths.pop();\n this.paths.pop();\n this.bezierPath2D.pop();\n if (this.paths.length === 0) {\n this.remove();\n } else {\n if (!this.canvas) {\n this.#createCanvas();\n this.#createObserver();\n }\n this.#fitToContent();\n }\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: true\n });\n }\n #drawPoints() {\n if (!this.#hasSomethingToDraw) {\n return;\n }\n this.#hasSomethingToDraw = false;\n const thickness = Math.ceil(this.thickness * this.parentScale);\n const lastPoints = this.currentPath.slice(-3);\n const x = lastPoints.map(xy => xy[0]);\n const y = lastPoints.map(xy => xy[1]);\n const xMin = Math.min(...x) - thickness;\n const xMax = Math.max(...x) + thickness;\n const yMin = Math.min(...y) - thickness;\n const yMax = Math.max(...y) + thickness;\n const {\n ctx\n } = this;\n ctx.save();\n ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);\n for (const path of this.bezierPath2D) {\n ctx.stroke(path);\n }\n ctx.stroke(this.#currentPath2D);\n ctx.restore();\n }\n #makeBezierCurve(path2D, x0, y0, x1, y1, x2, y2) {\n const prevX = (x0 + x1) / 2;\n const prevY = (y0 + y1) / 2;\n const x3 = (x1 + x2) / 2;\n const y3 = (y1 + y2) / 2;\n path2D.bezierCurveTo(prevX + 2 * (x1 - prevX) / 3, prevY + 2 * (y1 - prevY) / 3, x3 + 2 * (x1 - x3) / 3, y3 + 2 * (y1 - y3) / 3, x3, y3);\n }\n #generateBezierPoints() {\n const path = this.currentPath;\n if (path.length <= 2) {\n return [[path[0], path[0], path.at(-1), path.at(-1)]];\n }\n const bezierPoints = [];\n let i;\n let [x0, y0] = path[0];\n for (i = 1; i < path.length - 2; i++) {\n const [x1, y1] = path[i];\n const [x2, y2] = path[i + 1];\n const x3 = (x1 + x2) / 2;\n const y3 = (y1 + y2) / 2;\n const control1 = [x0 + 2 * (x1 - x0) / 3, y0 + 2 * (y1 - y0) / 3];\n const control2 = [x3 + 2 * (x1 - x3) / 3, y3 + 2 * (y1 - y3) / 3];\n bezierPoints.push([[x0, y0], control1, control2, [x3, y3]]);\n [x0, y0] = [x3, y3];\n }\n const [x1, y1] = path[i];\n const [x2, y2] = path[i + 1];\n const control1 = [x0 + 2 * (x1 - x0) / 3, y0 + 2 * (y1 - y0) / 3];\n const control2 = [x2 + 2 * (x1 - x2) / 3, y2 + 2 * (y1 - y2) / 3];\n bezierPoints.push([[x0, y0], control1, control2, [x2, y2]]);\n return bezierPoints;\n }\n #redraw() {\n if (this.isEmpty()) {\n this.#updateTransform();\n return;\n }\n this.#setStroke();\n const {\n canvas,\n ctx\n } = this;\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n this.#updateTransform();\n for (const path of this.bezierPath2D) {\n ctx.stroke(path);\n }\n }\n commit() {\n if (this.#disableEditing) {\n return;\n }\n super.commit();\n this.isEditing = false;\n this.disableEditMode();\n this.setInForeground();\n this.#disableEditing = true;\n this.div.classList.add(\"disabled\");\n this.#fitToContent(true);\n this.makeResizable();\n this.parent.addInkEditorIfNeeded(true);\n this.moveInDOM();\n this.div.focus({\n preventScroll: true\n });\n }\n focusin(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n super.focusin(event);\n this.enableEditMode();\n }\n canvasPointerdown(event) {\n if (event.button !== 0 || !this.isInEditMode() || this.#disableEditing) {\n return;\n }\n this.setInForeground();\n event.preventDefault();\n if (event.type !== \"mouse\") {\n this.div.focus();\n }\n this.#startDrawing(event.offsetX, event.offsetY);\n }\n canvasPointermove(event) {\n event.preventDefault();\n this.#draw(event.offsetX, event.offsetY);\n }\n canvasPointerup(event) {\n event.preventDefault();\n this.#endDrawing(event);\n }\n canvasPointerleave(event) {\n this.#endDrawing(event);\n }\n #endDrawing(event) {\n this.canvas.removeEventListener(\"pointerleave\", this.#boundCanvasPointerleave);\n this.canvas.removeEventListener(\"pointermove\", this.#boundCanvasPointermove);\n this.canvas.removeEventListener(\"pointerup\", this.#boundCanvasPointerup);\n this.canvas.addEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n setTimeout(() => {\n this.canvas.removeEventListener(\"contextmenu\", _display_utils.noContextMenu);\n }, 10);\n this.#stopDrawing(event.offsetX, event.offsetY);\n this.addToAnnotationStorage();\n this.setInBackground();\n }\n #createCanvas() {\n this.canvas = document.createElement(\"canvas\");\n this.canvas.width = this.canvas.height = 0;\n this.canvas.className = \"inkEditorCanvas\";\n _editor.AnnotationEditor._l10nPromise.get(\"editor_ink_canvas_aria_label\").then(msg => this.canvas?.setAttribute(\"aria-label\", msg));\n this.div.append(this.canvas);\n this.ctx = this.canvas.getContext(\"2d\");\n }\n #createObserver() {\n this.#observer = new ResizeObserver(entries => {\n const rect = entries[0].contentRect;\n if (rect.width && rect.height) {\n this.setDimensions(rect.width, rect.height);\n }\n });\n this.#observer.observe(this.div);\n }\n get isResizable() {\n return !this.isEmpty() && this.#disableEditing;\n }\n render() {\n if (this.div) {\n return this.div;\n }\n let baseX, baseY;\n if (this.width) {\n baseX = this.x;\n baseY = this.y;\n }\n super.render();\n _editor.AnnotationEditor._l10nPromise.get(\"editor_ink2_aria_label\").then(msg => this.div?.setAttribute(\"aria-label\", msg));\n const [x, y, w, h] = this.#getInitialBBox();\n this.setAt(x, y, 0, 0);\n this.setDims(w, h);\n this.#createCanvas();\n if (this.width) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setAspectRatio(this.width * parentWidth, this.height * parentHeight);\n this.setAt(baseX * parentWidth, baseY * parentHeight, this.width * parentWidth, this.height * parentHeight);\n this.#isCanvasInitialized = true;\n this.#setCanvasDims();\n this.setDims(this.width * parentWidth, this.height * parentHeight);\n this.#redraw();\n this.div.classList.add(\"disabled\");\n } else {\n this.div.classList.add(\"editing\");\n this.enableEditMode();\n }\n this.#createObserver();\n return this.div;\n }\n #setCanvasDims() {\n if (!this.#isCanvasInitialized) {\n return;\n }\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.canvas.width = Math.ceil(this.width * parentWidth);\n this.canvas.height = Math.ceil(this.height * parentHeight);\n this.#updateTransform();\n }\n setDimensions(width, height) {\n const roundedWidth = Math.round(width);\n const roundedHeight = Math.round(height);\n if (this.#realWidth === roundedWidth && this.#realHeight === roundedHeight) {\n return;\n }\n this.#realWidth = roundedWidth;\n this.#realHeight = roundedHeight;\n this.canvas.style.visibility = \"hidden\";\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.width = width / parentWidth;\n this.height = height / parentHeight;\n this.fixAndSetPosition();\n if (this.#disableEditing) {\n this.#setScaleFactor(width, height);\n }\n this.#setCanvasDims();\n this.#redraw();\n this.canvas.style.visibility = \"visible\";\n this.fixDims();\n }\n #setScaleFactor(width, height) {\n const padding = this.#getPadding();\n const scaleFactorW = (width - padding) / this.#baseWidth;\n const scaleFactorH = (height - padding) / this.#baseHeight;\n this.scaleFactor = Math.min(scaleFactorW, scaleFactorH);\n }\n #updateTransform() {\n const padding = this.#getPadding() / 2;\n this.ctx.setTransform(this.scaleFactor, 0, 0, this.scaleFactor, this.translationX * this.scaleFactor + padding, this.translationY * this.scaleFactor + padding);\n }\n static #buildPath2D(bezier) {\n const path2D = new Path2D();\n for (let i = 0, ii = bezier.length; i < ii; i++) {\n const [first, control1, control2, second] = bezier[i];\n if (i === 0) {\n path2D.moveTo(...first);\n }\n path2D.bezierCurveTo(control1[0], control1[1], control2[0], control2[1], second[0], second[1]);\n }\n return path2D;\n }\n static #toPDFCoordinates(points, rect, rotation) {\n const [blX, blY, trX, trY] = rect;\n switch (rotation) {\n case 0:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] += blX;\n points[i + 1] = trY - points[i + 1];\n }\n break;\n case 90:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = points[i + 1] + blX;\n points[i + 1] = x + blY;\n }\n break;\n case 180:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] = trX - points[i];\n points[i + 1] += blY;\n }\n break;\n case 270:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = trX - points[i + 1];\n points[i + 1] = trY - x;\n }\n break;\n default:\n throw new Error(\"Invalid rotation\");\n }\n return points;\n }\n static #fromPDFCoordinates(points, rect, rotation) {\n const [blX, blY, trX, trY] = rect;\n switch (rotation) {\n case 0:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] -= blX;\n points[i + 1] = trY - points[i + 1];\n }\n break;\n case 90:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = points[i + 1] - blY;\n points[i + 1] = x - blX;\n }\n break;\n case 180:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] = trX - points[i];\n points[i + 1] -= blY;\n }\n break;\n case 270:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = trY - points[i + 1];\n points[i + 1] = trX - x;\n }\n break;\n default:\n throw new Error(\"Invalid rotation\");\n }\n return points;\n }\n #serializePaths(s, tx, ty, rect) {\n const paths = [];\n const padding = this.thickness / 2;\n const shiftX = s * tx + padding;\n const shiftY = s * ty + padding;\n for (const bezier of this.paths) {\n const buffer = [];\n const points = [];\n for (let j = 0, jj = bezier.length; j < jj; j++) {\n const [first, control1, control2, second] = bezier[j];\n const p10 = s * first[0] + shiftX;\n const p11 = s * first[1] + shiftY;\n const p20 = s * control1[0] + shiftX;\n const p21 = s * control1[1] + shiftY;\n const p30 = s * control2[0] + shiftX;\n const p31 = s * control2[1] + shiftY;\n const p40 = s * second[0] + shiftX;\n const p41 = s * second[1] + shiftY;\n if (j === 0) {\n buffer.push(p10, p11);\n points.push(p10, p11);\n }\n buffer.push(p20, p21, p30, p31, p40, p41);\n points.push(p20, p21);\n if (j === jj - 1) {\n points.push(p40, p41);\n }\n }\n paths.push({\n bezier: InkEditor.#toPDFCoordinates(buffer, rect, this.rotation),\n points: InkEditor.#toPDFCoordinates(points, rect, this.rotation)\n });\n }\n return paths;\n }\n #getBbox() {\n let xMin = Infinity;\n let xMax = -Infinity;\n let yMin = Infinity;\n let yMax = -Infinity;\n for (const path of this.paths) {\n for (const [first, control1, control2, second] of path) {\n const bbox = _util.Util.bezierBoundingBox(...first, ...control1, ...control2, ...second);\n xMin = Math.min(xMin, bbox[0]);\n yMin = Math.min(yMin, bbox[1]);\n xMax = Math.max(xMax, bbox[2]);\n yMax = Math.max(yMax, bbox[3]);\n }\n }\n return [xMin, yMin, xMax, yMax];\n }\n #getPadding() {\n return this.#disableEditing ? Math.ceil(this.thickness * this.parentScale) : 0;\n }\n #fitToContent(firstTime = false) {\n if (this.isEmpty()) {\n return;\n }\n if (!this.#disableEditing) {\n this.#redraw();\n return;\n }\n const bbox = this.#getBbox();\n const padding = this.#getPadding();\n this.#baseWidth = Math.max(_editor.AnnotationEditor.MIN_SIZE, bbox[2] - bbox[0]);\n this.#baseHeight = Math.max(_editor.AnnotationEditor.MIN_SIZE, bbox[3] - bbox[1]);\n const width = Math.ceil(padding + this.#baseWidth * this.scaleFactor);\n const height = Math.ceil(padding + this.#baseHeight * this.scaleFactor);\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.width = width / parentWidth;\n this.height = height / parentHeight;\n this.setAspectRatio(width, height);\n const prevTranslationX = this.translationX;\n const prevTranslationY = this.translationY;\n this.translationX = -bbox[0];\n this.translationY = -bbox[1];\n this.#setCanvasDims();\n this.#redraw();\n this.#realWidth = width;\n this.#realHeight = height;\n this.setDims(width, height);\n const unscaledPadding = firstTime ? padding / this.scaleFactor / 2 : 0;\n this.translate(prevTranslationX - this.translationX - unscaledPadding, prevTranslationY - this.translationY - unscaledPadding);\n }\n static deserialize(data, parent, uiManager) {\n if (data instanceof _annotation_layer.InkAnnotationElement) {\n return null;\n }\n const editor = super.deserialize(data, parent, uiManager);\n editor.thickness = data.thickness;\n editor.color = _util.Util.makeHexColor(...data.color);\n editor.opacity = data.opacity;\n const [pageWidth, pageHeight] = editor.pageDimensions;\n const width = editor.width * pageWidth;\n const height = editor.height * pageHeight;\n const scaleFactor = editor.parentScale;\n const padding = data.thickness / 2;\n editor.#disableEditing = true;\n editor.#realWidth = Math.round(width);\n editor.#realHeight = Math.round(height);\n const {\n paths,\n rect,\n rotation\n } = data;\n for (let {\n bezier\n } of paths) {\n bezier = InkEditor.#fromPDFCoordinates(bezier, rect, rotation);\n const path = [];\n editor.paths.push(path);\n let p0 = scaleFactor * (bezier[0] - padding);\n let p1 = scaleFactor * (bezier[1] - padding);\n for (let i = 2, ii = bezier.length; i < ii; i += 6) {\n const p10 = scaleFactor * (bezier[i] - padding);\n const p11 = scaleFactor * (bezier[i + 1] - padding);\n const p20 = scaleFactor * (bezier[i + 2] - padding);\n const p21 = scaleFactor * (bezier[i + 3] - padding);\n const p30 = scaleFactor * (bezier[i + 4] - padding);\n const p31 = scaleFactor * (bezier[i + 5] - padding);\n path.push([[p0, p1], [p10, p11], [p20, p21], [p30, p31]]);\n p0 = p30;\n p1 = p31;\n }\n const path2D = this.#buildPath2D(path);\n editor.bezierPath2D.push(path2D);\n }\n const bbox = editor.#getBbox();\n editor.#baseWidth = Math.max(_editor.AnnotationEditor.MIN_SIZE, bbox[2] - bbox[0]);\n editor.#baseHeight = Math.max(_editor.AnnotationEditor.MIN_SIZE, bbox[3] - bbox[1]);\n editor.#setScaleFactor(width, height);\n return editor;\n }\n serialize() {\n if (this.isEmpty()) {\n return null;\n }\n const rect = this.getRect(0, 0);\n const color = _editor.AnnotationEditor._colorManager.convert(this.ctx.strokeStyle);\n return {\n annotationType: _util.AnnotationEditorType.INK,\n color,\n thickness: this.thickness,\n opacity: this.opacity,\n paths: this.#serializePaths(this.scaleFactor / this.parentScale, this.translationX, this.translationY, rect),\n pageIndex: this.pageIndex,\n rect,\n rotation: this.rotation,\n structTreeParentId: this._structTreeParentId\n };\n }\n}\nexports.InkEditor = InkEditor;\n\n/***/ }),\n/* 34 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StampEditor = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _editor = __w_pdfjs_require__(4);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _annotation_layer = __w_pdfjs_require__(29);\nclass StampEditor extends _editor.AnnotationEditor {\n #bitmap = null;\n #bitmapId = null;\n #bitmapPromise = null;\n #bitmapUrl = null;\n #bitmapFile = null;\n #canvas = null;\n #observer = null;\n #resizeTimeoutId = null;\n #isSvg = false;\n #hasBeenAddedInUndoStack = false;\n static _type = \"stamp\";\n constructor(params) {\n super({\n ...params,\n name: \"stampEditor\"\n });\n this.#bitmapUrl = params.bitmapUrl;\n this.#bitmapFile = params.bitmapFile;\n }\n static initialize(l10n) {\n _editor.AnnotationEditor.initialize(l10n);\n }\n static get supportedTypes() {\n const types = [\"apng\", \"avif\", \"bmp\", \"gif\", \"jpeg\", \"png\", \"svg+xml\", \"webp\", \"x-icon\"];\n return (0, _util.shadow)(this, \"supportedTypes\", types.map(type => `image/${type}`));\n }\n static get supportedTypesStr() {\n return (0, _util.shadow)(this, \"supportedTypesStr\", this.supportedTypes.join(\",\"));\n }\n static isHandlingMimeForPasting(mime) {\n return this.supportedTypes.includes(mime);\n }\n static paste(item, parent) {\n parent.pasteEditor(_util.AnnotationEditorType.STAMP, {\n bitmapFile: item.getAsFile()\n });\n }\n #getBitmapFetched(data, fromId = false) {\n if (!data) {\n this.remove();\n return;\n }\n this.#bitmap = data.bitmap;\n if (!fromId) {\n this.#bitmapId = data.id;\n this.#isSvg = data.isSvg;\n }\n this.#createCanvas();\n }\n #getBitmapDone() {\n this.#bitmapPromise = null;\n this._uiManager.enableWaiting(false);\n if (this.#canvas) {\n this.div.focus();\n }\n }\n #getBitmap() {\n if (this.#bitmapId) {\n this._uiManager.enableWaiting(true);\n this._uiManager.imageManager.getFromId(this.#bitmapId).then(data => this.#getBitmapFetched(data, true)).finally(() => this.#getBitmapDone());\n return;\n }\n if (this.#bitmapUrl) {\n const url = this.#bitmapUrl;\n this.#bitmapUrl = null;\n this._uiManager.enableWaiting(true);\n this.#bitmapPromise = this._uiManager.imageManager.getFromUrl(url).then(data => this.#getBitmapFetched(data)).finally(() => this.#getBitmapDone());\n return;\n }\n if (this.#bitmapFile) {\n const file = this.#bitmapFile;\n this.#bitmapFile = null;\n this._uiManager.enableWaiting(true);\n this.#bitmapPromise = this._uiManager.imageManager.getFromFile(file).then(data => this.#getBitmapFetched(data)).finally(() => this.#getBitmapDone());\n return;\n }\n const input = document.createElement(\"input\");\n input.type = \"file\";\n input.accept = StampEditor.supportedTypesStr;\n this.#bitmapPromise = new Promise(resolve => {\n input.addEventListener(\"change\", async () => {\n if (!input.files || input.files.length === 0) {\n this.remove();\n } else {\n this._uiManager.enableWaiting(true);\n const data = await this._uiManager.imageManager.getFromFile(input.files[0]);\n this.#getBitmapFetched(data);\n }\n resolve();\n });\n input.addEventListener(\"cancel\", () => {\n this.remove();\n resolve();\n });\n }).finally(() => this.#getBitmapDone());\n input.click();\n }\n remove() {\n if (this.#bitmapId) {\n this.#bitmap = null;\n this._uiManager.imageManager.deleteId(this.#bitmapId);\n this.#canvas?.remove();\n this.#canvas = null;\n this.#observer?.disconnect();\n this.#observer = null;\n }\n super.remove();\n }\n rebuild() {\n if (!this.parent) {\n if (this.#bitmapId) {\n this.#getBitmap();\n }\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n if (this.#bitmapId) {\n this.#getBitmap();\n }\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n }\n }\n onceAdded() {\n this._isDraggable = true;\n this.div.focus();\n }\n isEmpty() {\n return !(this.#bitmapPromise || this.#bitmap || this.#bitmapUrl || this.#bitmapFile);\n }\n get isResizable() {\n return true;\n }\n render() {\n if (this.div) {\n return this.div;\n }\n let baseX, baseY;\n if (this.width) {\n baseX = this.x;\n baseY = this.y;\n }\n super.render();\n this.div.hidden = true;\n if (this.#bitmap) {\n this.#createCanvas();\n } else {\n this.#getBitmap();\n }\n if (this.width) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setAt(baseX * parentWidth, baseY * parentHeight, this.width * parentWidth, this.height * parentHeight);\n }\n return this.div;\n }\n #createCanvas() {\n const {\n div\n } = this;\n let {\n width,\n height\n } = this.#bitmap;\n const [pageWidth, pageHeight] = this.pageDimensions;\n const MAX_RATIO = 0.75;\n if (this.width) {\n width = this.width * pageWidth;\n height = this.height * pageHeight;\n } else if (width > MAX_RATIO * pageWidth || height > MAX_RATIO * pageHeight) {\n const factor = Math.min(MAX_RATIO * pageWidth / width, MAX_RATIO * pageHeight / height);\n width *= factor;\n height *= factor;\n }\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(width * parentWidth / pageWidth, height * parentHeight / pageHeight);\n this._uiManager.enableWaiting(false);\n const canvas = this.#canvas = document.createElement(\"canvas\");\n div.append(canvas);\n div.hidden = false;\n this.#drawBitmap(width, height);\n this.#createObserver();\n if (!this.#hasBeenAddedInUndoStack) {\n this.parent.addUndoableEditor(this);\n this.#hasBeenAddedInUndoStack = true;\n }\n this._uiManager._eventBus.dispatch(\"reporttelemetry\", {\n source: this,\n details: {\n type: \"editing\",\n subtype: this.editorType,\n data: {\n action: \"inserted_image\"\n }\n }\n });\n this.addAltTextButton();\n }\n #setDimensions(width, height) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.width = width / parentWidth;\n this.height = height / parentHeight;\n this.setDims(width, height);\n if (this._initialOptions?.isCentered) {\n this.center();\n } else {\n this.fixAndSetPosition();\n }\n this._initialOptions = null;\n if (this.#resizeTimeoutId !== null) {\n clearTimeout(this.#resizeTimeoutId);\n }\n const TIME_TO_WAIT = 200;\n this.#resizeTimeoutId = setTimeout(() => {\n this.#resizeTimeoutId = null;\n this.#drawBitmap(width, height);\n }, TIME_TO_WAIT);\n }\n #scaleBitmap(width, height) {\n const {\n width: bitmapWidth,\n height: bitmapHeight\n } = this.#bitmap;\n let newWidth = bitmapWidth;\n let newHeight = bitmapHeight;\n let bitmap = this.#bitmap;\n while (newWidth > 2 * width || newHeight > 2 * height) {\n const prevWidth = newWidth;\n const prevHeight = newHeight;\n if (newWidth > 2 * width) {\n newWidth = newWidth >= 16384 ? Math.floor(newWidth / 2) - 1 : Math.ceil(newWidth / 2);\n }\n if (newHeight > 2 * height) {\n newHeight = newHeight >= 16384 ? Math.floor(newHeight / 2) - 1 : Math.ceil(newHeight / 2);\n }\n const offscreen = new OffscreenCanvas(newWidth, newHeight);\n const ctx = offscreen.getContext(\"2d\");\n ctx.drawImage(bitmap, 0, 0, prevWidth, prevHeight, 0, 0, newWidth, newHeight);\n bitmap = offscreen.transferToImageBitmap();\n }\n return bitmap;\n }\n #drawBitmap(width, height) {\n width = Math.ceil(width);\n height = Math.ceil(height);\n const canvas = this.#canvas;\n if (!canvas || canvas.width === width && canvas.height === height) {\n return;\n }\n canvas.width = width;\n canvas.height = height;\n const bitmap = this.#isSvg ? this.#bitmap : this.#scaleBitmap(width, height);\n const ctx = canvas.getContext(\"2d\");\n ctx.filter = this._uiManager.hcmFilter;\n ctx.drawImage(bitmap, 0, 0, bitmap.width, bitmap.height, 0, 0, width, height);\n }\n #serializeBitmap(toUrl) {\n if (toUrl) {\n if (this.#isSvg) {\n const url = this._uiManager.imageManager.getSvgUrl(this.#bitmapId);\n if (url) {\n return url;\n }\n }\n const canvas = document.createElement(\"canvas\");\n ({\n width: canvas.width,\n height: canvas.height\n } = this.#bitmap);\n const ctx = canvas.getContext(\"2d\");\n ctx.drawImage(this.#bitmap, 0, 0);\n return canvas.toDataURL();\n }\n if (this.#isSvg) {\n const [pageWidth, pageHeight] = this.pageDimensions;\n const width = Math.round(this.width * pageWidth * _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS);\n const height = Math.round(this.height * pageHeight * _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS);\n const offscreen = new OffscreenCanvas(width, height);\n const ctx = offscreen.getContext(\"2d\");\n ctx.drawImage(this.#bitmap, 0, 0, this.#bitmap.width, this.#bitmap.height, 0, 0, width, height);\n return offscreen.transferToImageBitmap();\n }\n return structuredClone(this.#bitmap);\n }\n #createObserver() {\n this.#observer = new ResizeObserver(entries => {\n const rect = entries[0].contentRect;\n if (rect.width && rect.height) {\n this.#setDimensions(rect.width, rect.height);\n }\n });\n this.#observer.observe(this.div);\n }\n static deserialize(data, parent, uiManager) {\n if (data instanceof _annotation_layer.StampAnnotationElement) {\n return null;\n }\n const editor = super.deserialize(data, parent, uiManager);\n const {\n rect,\n bitmapUrl,\n bitmapId,\n isSvg,\n accessibilityData\n } = data;\n if (bitmapId && uiManager.imageManager.isValidId(bitmapId)) {\n editor.#bitmapId = bitmapId;\n } else {\n editor.#bitmapUrl = bitmapUrl;\n }\n editor.#isSvg = isSvg;\n const [parentWidth, parentHeight] = editor.pageDimensions;\n editor.width = (rect[2] - rect[0]) / parentWidth;\n editor.height = (rect[3] - rect[1]) / parentHeight;\n if (accessibilityData) {\n editor.altTextData = accessibilityData;\n }\n return editor;\n }\n serialize(isForCopying = false, context = null) {\n if (this.isEmpty()) {\n return null;\n }\n const serialized = {\n annotationType: _util.AnnotationEditorType.STAMP,\n bitmapId: this.#bitmapId,\n pageIndex: this.pageIndex,\n rect: this.getRect(0, 0),\n rotation: this.rotation,\n isSvg: this.#isSvg,\n structTreeParentId: this._structTreeParentId\n };\n if (isForCopying) {\n serialized.bitmapUrl = this.#serializeBitmap(true);\n serialized.accessibilityData = this.altTextData;\n return serialized;\n }\n const {\n decorative,\n altText\n } = this.altTextData;\n if (!decorative && altText) {\n serialized.accessibilityData = {\n type: \"Figure\",\n alt: altText\n };\n }\n if (context === null) {\n return serialized;\n }\n context.stamps ||= new Map();\n const area = this.#isSvg ? (serialized.rect[2] - serialized.rect[0]) * (serialized.rect[3] - serialized.rect[1]) : null;\n if (!context.stamps.has(this.#bitmapId)) {\n context.stamps.set(this.#bitmapId, {\n area,\n serialized\n });\n serialized.bitmap = this.#serializeBitmap(false);\n } else if (this.#isSvg) {\n const prevData = context.stamps.get(this.#bitmapId);\n if (area > prevData.area) {\n prevData.area = area;\n prevData.serialized.bitmap.close();\n prevData.serialized.bitmap = this.#serializeBitmap(false);\n }\n }\n return serialized;\n }\n}\nexports.StampEditor = StampEditor;\n\n/***/ })\n/******/ \t]);\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __w_pdfjs_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __w_pdfjs_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n(() => {\nvar exports = __webpack_exports__;\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"AbortException\", ({\n enumerable: true,\n get: function () {\n return _util.AbortException;\n }\n}));\nObject.defineProperty(exports, \"AnnotationEditorLayer\", ({\n enumerable: true,\n get: function () {\n return _annotation_editor_layer.AnnotationEditorLayer;\n }\n}));\nObject.defineProperty(exports, \"AnnotationEditorParamsType\", ({\n enumerable: true,\n get: function () {\n return _util.AnnotationEditorParamsType;\n }\n}));\nObject.defineProperty(exports, \"AnnotationEditorType\", ({\n enumerable: true,\n get: function () {\n return _util.AnnotationEditorType;\n }\n}));\nObject.defineProperty(exports, \"AnnotationEditorUIManager\", ({\n enumerable: true,\n get: function () {\n return _tools.AnnotationEditorUIManager;\n }\n}));\nObject.defineProperty(exports, \"AnnotationLayer\", ({\n enumerable: true,\n get: function () {\n return _annotation_layer.AnnotationLayer;\n }\n}));\nObject.defineProperty(exports, \"AnnotationMode\", ({\n enumerable: true,\n get: function () {\n return _util.AnnotationMode;\n }\n}));\nObject.defineProperty(exports, \"CMapCompressionType\", ({\n enumerable: true,\n get: function () {\n return _util.CMapCompressionType;\n }\n}));\nObject.defineProperty(exports, \"DOMSVGFactory\", ({\n enumerable: true,\n get: function () {\n return _display_utils.DOMSVGFactory;\n }\n}));\nObject.defineProperty(exports, \"FeatureTest\", ({\n enumerable: true,\n get: function () {\n return _util.FeatureTest;\n }\n}));\nObject.defineProperty(exports, \"GlobalWorkerOptions\", ({\n enumerable: true,\n get: function () {\n return _worker_options.GlobalWorkerOptions;\n }\n}));\nObject.defineProperty(exports, \"ImageKind\", ({\n enumerable: true,\n get: function () {\n return _util.ImageKind;\n }\n}));\nObject.defineProperty(exports, \"InvalidPDFException\", ({\n enumerable: true,\n get: function () {\n return _util.InvalidPDFException;\n }\n}));\nObject.defineProperty(exports, \"MissingPDFException\", ({\n enumerable: true,\n get: function () {\n return _util.MissingPDFException;\n }\n}));\nObject.defineProperty(exports, \"OPS\", ({\n enumerable: true,\n get: function () {\n return _util.OPS;\n }\n}));\nObject.defineProperty(exports, \"PDFDataRangeTransport\", ({\n enumerable: true,\n get: function () {\n return _api.PDFDataRangeTransport;\n }\n}));\nObject.defineProperty(exports, \"PDFDateString\", ({\n enumerable: true,\n get: function () {\n return _display_utils.PDFDateString;\n }\n}));\nObject.defineProperty(exports, \"PDFWorker\", ({\n enumerable: true,\n get: function () {\n return _api.PDFWorker;\n }\n}));\nObject.defineProperty(exports, \"PasswordResponses\", ({\n enumerable: true,\n get: function () {\n return _util.PasswordResponses;\n }\n}));\nObject.defineProperty(exports, \"PermissionFlag\", ({\n enumerable: true,\n get: function () {\n return _util.PermissionFlag;\n }\n}));\nObject.defineProperty(exports, \"PixelsPerInch\", ({\n enumerable: true,\n get: function () {\n return _display_utils.PixelsPerInch;\n }\n}));\nObject.defineProperty(exports, \"PromiseCapability\", ({\n enumerable: true,\n get: function () {\n return _util.PromiseCapability;\n }\n}));\nObject.defineProperty(exports, \"RenderingCancelledException\", ({\n enumerable: true,\n get: function () {\n return _display_utils.RenderingCancelledException;\n }\n}));\nObject.defineProperty(exports, \"SVGGraphics\", ({\n enumerable: true,\n get: function () {\n return _api.SVGGraphics;\n }\n}));\nObject.defineProperty(exports, \"UnexpectedResponseException\", ({\n enumerable: true,\n get: function () {\n return _util.UnexpectedResponseException;\n }\n}));\nObject.defineProperty(exports, \"Util\", ({\n enumerable: true,\n get: function () {\n return _util.Util;\n }\n}));\nObject.defineProperty(exports, \"VerbosityLevel\", ({\n enumerable: true,\n get: function () {\n return _util.VerbosityLevel;\n }\n}));\nObject.defineProperty(exports, \"XfaLayer\", ({\n enumerable: true,\n get: function () {\n return _xfa_layer.XfaLayer;\n }\n}));\nObject.defineProperty(exports, \"build\", ({\n enumerable: true,\n get: function () {\n return _api.build;\n }\n}));\nObject.defineProperty(exports, \"createValidAbsoluteUrl\", ({\n enumerable: true,\n get: function () {\n return _util.createValidAbsoluteUrl;\n }\n}));\nObject.defineProperty(exports, \"getDocument\", ({\n enumerable: true,\n get: function () {\n return _api.getDocument;\n }\n}));\nObject.defineProperty(exports, \"getFilenameFromUrl\", ({\n enumerable: true,\n get: function () {\n return _display_utils.getFilenameFromUrl;\n }\n}));\nObject.defineProperty(exports, \"getPdfFilenameFromUrl\", ({\n enumerable: true,\n get: function () {\n return _display_utils.getPdfFilenameFromUrl;\n }\n}));\nObject.defineProperty(exports, \"getXfaPageViewport\", ({\n enumerable: true,\n get: function () {\n return _display_utils.getXfaPageViewport;\n }\n}));\nObject.defineProperty(exports, \"isDataScheme\", ({\n enumerable: true,\n get: function () {\n return _display_utils.isDataScheme;\n }\n}));\nObject.defineProperty(exports, \"isPdfFile\", ({\n enumerable: true,\n get: function () {\n return _display_utils.isPdfFile;\n }\n}));\nObject.defineProperty(exports, \"loadScript\", ({\n enumerable: true,\n get: function () {\n return _display_utils.loadScript;\n }\n}));\nObject.defineProperty(exports, \"noContextMenu\", ({\n enumerable: true,\n get: function () {\n return _display_utils.noContextMenu;\n }\n}));\nObject.defineProperty(exports, \"normalizeUnicode\", ({\n enumerable: true,\n get: function () {\n return _util.normalizeUnicode;\n }\n}));\nObject.defineProperty(exports, \"renderTextLayer\", ({\n enumerable: true,\n get: function () {\n return _text_layer.renderTextLayer;\n }\n}));\nObject.defineProperty(exports, \"setLayerDimensions\", ({\n enumerable: true,\n get: function () {\n return _display_utils.setLayerDimensions;\n }\n}));\nObject.defineProperty(exports, \"shadow\", ({\n enumerable: true,\n get: function () {\n return _util.shadow;\n }\n}));\nObject.defineProperty(exports, \"updateTextLayer\", ({\n enumerable: true,\n get: function () {\n return _text_layer.updateTextLayer;\n }\n}));\nObject.defineProperty(exports, \"version\", ({\n enumerable: true,\n get: function () {\n return _api.version;\n }\n}));\nvar _util = __w_pdfjs_require__(1);\nvar _api = __w_pdfjs_require__(2);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _text_layer = __w_pdfjs_require__(26);\nvar _annotation_editor_layer = __w_pdfjs_require__(27);\nvar _tools = __w_pdfjs_require__(5);\nvar _annotation_layer = __w_pdfjs_require__(29);\nvar _worker_options = __w_pdfjs_require__(14);\nvar _xfa_layer = __w_pdfjs_require__(32);\nconst pdfjsVersion = '3.11.174';\nconst pdfjsBuild = 'ce8716743';\n})();\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=pdf.js.map","/* Copyright 2022 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n(typeof window !== \"undefined\"\n ? window\n : {}\n).pdfjsWorker = require(\"./pdf.worker.js\");\n","/**\n * @licstart The following is the entire license notice for the\n * JavaScript code in this page\n *\n * Copyright 2023 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * @licend The above is the entire license notice for the\n * JavaScript code in this page\n */\n\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = root.pdfjsWorker = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"pdfjs-dist/build/pdf.worker\", [], () => { return (root.pdfjsWorker = factory()); });\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/build/pdf.worker\"] = root.pdfjsWorker = factory();\n\telse\n\t\troot[\"pdfjs-dist/build/pdf.worker\"] = root.pdfjsWorker = factory();\n})(globalThis, () => {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ([\n/* 0 */,\n/* 1 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.WorkerTask = exports.WorkerMessageHandler = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _primitives = __w_pdfjs_require__(4);\nvar _pdf_manager = __w_pdfjs_require__(6);\nvar _annotation = __w_pdfjs_require__(10);\nvar _cleanup_helper = __w_pdfjs_require__(68);\nvar _writer = __w_pdfjs_require__(73);\nvar _message_handler = __w_pdfjs_require__(104);\nvar _worker_stream = __w_pdfjs_require__(105);\nvar _struct_tree = __w_pdfjs_require__(72);\nclass WorkerTask {\n constructor(name) {\n this.name = name;\n this.terminated = false;\n this._capability = new _util.PromiseCapability();\n }\n get finished() {\n return this._capability.promise;\n }\n finish() {\n this._capability.resolve();\n }\n terminate() {\n this.terminated = true;\n }\n ensureNotTerminated() {\n if (this.terminated) {\n throw new Error(\"Worker task was terminated\");\n }\n }\n}\nexports.WorkerTask = WorkerTask;\nclass WorkerMessageHandler {\n static setup(handler, port) {\n let testMessageProcessed = false;\n handler.on(\"test\", function (data) {\n if (testMessageProcessed) {\n return;\n }\n testMessageProcessed = true;\n handler.send(\"test\", data instanceof Uint8Array);\n });\n handler.on(\"configure\", function (data) {\n (0, _util.setVerbosityLevel)(data.verbosity);\n });\n handler.on(\"GetDocRequest\", function (data) {\n return WorkerMessageHandler.createDocumentHandler(data, port);\n });\n }\n static createDocumentHandler(docParams, port) {\n let pdfManager;\n let terminated = false;\n let cancelXHRs = null;\n const WorkerTasks = new Set();\n const verbosity = (0, _util.getVerbosityLevel)();\n const {\n docId,\n apiVersion\n } = docParams;\n const workerVersion = '3.11.174';\n if (apiVersion !== workerVersion) {\n throw new Error(`The API version \"${apiVersion}\" does not match ` + `the Worker version \"${workerVersion}\".`);\n }\n const enumerableProperties = [];\n for (const property in []) {\n enumerableProperties.push(property);\n }\n if (enumerableProperties.length) {\n throw new Error(\"The `Array.prototype` contains unexpected enumerable properties: \" + enumerableProperties.join(\", \") + \"; thus breaking e.g. `for...in` iteration of `Array`s.\");\n }\n const workerHandlerName = docId + \"_worker\";\n let handler = new _message_handler.MessageHandler(workerHandlerName, docId, port);\n function ensureNotTerminated() {\n if (terminated) {\n throw new Error(\"Worker was terminated\");\n }\n }\n function startWorkerTask(task) {\n WorkerTasks.add(task);\n }\n function finishWorkerTask(task) {\n task.finish();\n WorkerTasks.delete(task);\n }\n async function loadDocument(recoveryMode) {\n await pdfManager.ensureDoc(\"checkHeader\");\n await pdfManager.ensureDoc(\"parseStartXRef\");\n await pdfManager.ensureDoc(\"parse\", [recoveryMode]);\n await pdfManager.ensureDoc(\"checkFirstPage\", [recoveryMode]);\n await pdfManager.ensureDoc(\"checkLastPage\", [recoveryMode]);\n const isPureXfa = await pdfManager.ensureDoc(\"isPureXfa\");\n if (isPureXfa) {\n const task = new WorkerTask(\"loadXfaFonts\");\n startWorkerTask(task);\n await Promise.all([pdfManager.loadXfaFonts(handler, task).catch(reason => {}).then(() => finishWorkerTask(task)), pdfManager.loadXfaImages()]);\n }\n const [numPages, fingerprints] = await Promise.all([pdfManager.ensureDoc(\"numPages\"), pdfManager.ensureDoc(\"fingerprints\")]);\n const htmlForXfa = isPureXfa ? await pdfManager.ensureDoc(\"htmlForXfa\") : null;\n return {\n numPages,\n fingerprints,\n htmlForXfa\n };\n }\n function getPdfManager({\n data,\n password,\n disableAutoFetch,\n rangeChunkSize,\n length,\n docBaseUrl,\n enableXfa,\n evaluatorOptions\n }) {\n const pdfManagerArgs = {\n source: null,\n disableAutoFetch,\n docBaseUrl,\n docId,\n enableXfa,\n evaluatorOptions,\n handler,\n length,\n password,\n rangeChunkSize\n };\n const pdfManagerCapability = new _util.PromiseCapability();\n let newPdfManager;\n if (data) {\n try {\n pdfManagerArgs.source = data;\n newPdfManager = new _pdf_manager.LocalPdfManager(pdfManagerArgs);\n pdfManagerCapability.resolve(newPdfManager);\n } catch (ex) {\n pdfManagerCapability.reject(ex);\n }\n return pdfManagerCapability.promise;\n }\n let pdfStream,\n cachedChunks = [];\n try {\n pdfStream = new _worker_stream.PDFWorkerStream(handler);\n } catch (ex) {\n pdfManagerCapability.reject(ex);\n return pdfManagerCapability.promise;\n }\n const fullRequest = pdfStream.getFullReader();\n fullRequest.headersReady.then(function () {\n if (!fullRequest.isRangeSupported) {\n return;\n }\n pdfManagerArgs.source = pdfStream;\n pdfManagerArgs.length = fullRequest.contentLength;\n pdfManagerArgs.disableAutoFetch ||= fullRequest.isStreamingSupported;\n newPdfManager = new _pdf_manager.NetworkPdfManager(pdfManagerArgs);\n for (const chunk of cachedChunks) {\n newPdfManager.sendProgressiveData(chunk);\n }\n cachedChunks = [];\n pdfManagerCapability.resolve(newPdfManager);\n cancelXHRs = null;\n }).catch(function (reason) {\n pdfManagerCapability.reject(reason);\n cancelXHRs = null;\n });\n let loaded = 0;\n const flushChunks = function () {\n const pdfFile = (0, _core_utils.arrayBuffersToBytes)(cachedChunks);\n if (length && pdfFile.length !== length) {\n (0, _util.warn)(\"reported HTTP length is different from actual\");\n }\n try {\n pdfManagerArgs.source = pdfFile;\n newPdfManager = new _pdf_manager.LocalPdfManager(pdfManagerArgs);\n pdfManagerCapability.resolve(newPdfManager);\n } catch (ex) {\n pdfManagerCapability.reject(ex);\n }\n cachedChunks = [];\n };\n new Promise(function (resolve, reject) {\n const readChunk = function ({\n value,\n done\n }) {\n try {\n ensureNotTerminated();\n if (done) {\n if (!newPdfManager) {\n flushChunks();\n }\n cancelXHRs = null;\n return;\n }\n loaded += value.byteLength;\n if (!fullRequest.isStreamingSupported) {\n handler.send(\"DocProgress\", {\n loaded,\n total: Math.max(loaded, fullRequest.contentLength || 0)\n });\n }\n if (newPdfManager) {\n newPdfManager.sendProgressiveData(value);\n } else {\n cachedChunks.push(value);\n }\n fullRequest.read().then(readChunk, reject);\n } catch (e) {\n reject(e);\n }\n };\n fullRequest.read().then(readChunk, reject);\n }).catch(function (e) {\n pdfManagerCapability.reject(e);\n cancelXHRs = null;\n });\n cancelXHRs = function (reason) {\n pdfStream.cancelAllRequests(reason);\n };\n return pdfManagerCapability.promise;\n }\n function setupDoc(data) {\n function onSuccess(doc) {\n ensureNotTerminated();\n handler.send(\"GetDoc\", {\n pdfInfo: doc\n });\n }\n function onFailure(ex) {\n ensureNotTerminated();\n if (ex instanceof _util.PasswordException) {\n const task = new WorkerTask(`PasswordException: response ${ex.code}`);\n startWorkerTask(task);\n handler.sendWithPromise(\"PasswordRequest\", ex).then(function ({\n password\n }) {\n finishWorkerTask(task);\n pdfManager.updatePassword(password);\n pdfManagerReady();\n }).catch(function () {\n finishWorkerTask(task);\n handler.send(\"DocException\", ex);\n });\n } else if (ex instanceof _util.InvalidPDFException || ex instanceof _util.MissingPDFException || ex instanceof _util.UnexpectedResponseException || ex instanceof _util.UnknownErrorException) {\n handler.send(\"DocException\", ex);\n } else {\n handler.send(\"DocException\", new _util.UnknownErrorException(ex.message, ex.toString()));\n }\n }\n function pdfManagerReady() {\n ensureNotTerminated();\n loadDocument(false).then(onSuccess, function (reason) {\n ensureNotTerminated();\n if (!(reason instanceof _core_utils.XRefParseException)) {\n onFailure(reason);\n return;\n }\n pdfManager.requestLoadedStream().then(function () {\n ensureNotTerminated();\n loadDocument(true).then(onSuccess, onFailure);\n });\n });\n }\n ensureNotTerminated();\n getPdfManager(data).then(function (newPdfManager) {\n if (terminated) {\n newPdfManager.terminate(new _util.AbortException(\"Worker was terminated.\"));\n throw new Error(\"Worker was terminated\");\n }\n pdfManager = newPdfManager;\n pdfManager.requestLoadedStream(true).then(stream => {\n handler.send(\"DataLoaded\", {\n length: stream.bytes.byteLength\n });\n });\n }).then(pdfManagerReady, onFailure);\n }\n handler.on(\"GetPage\", function (data) {\n return pdfManager.getPage(data.pageIndex).then(function (page) {\n return Promise.all([pdfManager.ensure(page, \"rotate\"), pdfManager.ensure(page, \"ref\"), pdfManager.ensure(page, \"userUnit\"), pdfManager.ensure(page, \"view\")]).then(function ([rotate, ref, userUnit, view]) {\n return {\n rotate,\n ref,\n userUnit,\n view\n };\n });\n });\n });\n handler.on(\"GetPageIndex\", function (data) {\n const pageRef = _primitives.Ref.get(data.num, data.gen);\n return pdfManager.ensureCatalog(\"getPageIndex\", [pageRef]);\n });\n handler.on(\"GetDestinations\", function (data) {\n return pdfManager.ensureCatalog(\"destinations\");\n });\n handler.on(\"GetDestination\", function (data) {\n return pdfManager.ensureCatalog(\"getDestination\", [data.id]);\n });\n handler.on(\"GetPageLabels\", function (data) {\n return pdfManager.ensureCatalog(\"pageLabels\");\n });\n handler.on(\"GetPageLayout\", function (data) {\n return pdfManager.ensureCatalog(\"pageLayout\");\n });\n handler.on(\"GetPageMode\", function (data) {\n return pdfManager.ensureCatalog(\"pageMode\");\n });\n handler.on(\"GetViewerPreferences\", function (data) {\n return pdfManager.ensureCatalog(\"viewerPreferences\");\n });\n handler.on(\"GetOpenAction\", function (data) {\n return pdfManager.ensureCatalog(\"openAction\");\n });\n handler.on(\"GetAttachments\", function (data) {\n return pdfManager.ensureCatalog(\"attachments\");\n });\n handler.on(\"GetDocJSActions\", function (data) {\n return pdfManager.ensureCatalog(\"jsActions\");\n });\n handler.on(\"GetPageJSActions\", function ({\n pageIndex\n }) {\n return pdfManager.getPage(pageIndex).then(function (page) {\n return pdfManager.ensure(page, \"jsActions\");\n });\n });\n handler.on(\"GetOutline\", function (data) {\n return pdfManager.ensureCatalog(\"documentOutline\");\n });\n handler.on(\"GetOptionalContentConfig\", function (data) {\n return pdfManager.ensureCatalog(\"optionalContentConfig\");\n });\n handler.on(\"GetPermissions\", function (data) {\n return pdfManager.ensureCatalog(\"permissions\");\n });\n handler.on(\"GetMetadata\", function (data) {\n return Promise.all([pdfManager.ensureDoc(\"documentInfo\"), pdfManager.ensureCatalog(\"metadata\")]);\n });\n handler.on(\"GetMarkInfo\", function (data) {\n return pdfManager.ensureCatalog(\"markInfo\");\n });\n handler.on(\"GetData\", function (data) {\n return pdfManager.requestLoadedStream().then(function (stream) {\n return stream.bytes;\n });\n });\n handler.on(\"GetAnnotations\", function ({\n pageIndex,\n intent\n }) {\n return pdfManager.getPage(pageIndex).then(function (page) {\n const task = new WorkerTask(`GetAnnotations: page ${pageIndex}`);\n startWorkerTask(task);\n return page.getAnnotationsData(handler, task, intent).then(data => {\n finishWorkerTask(task);\n return data;\n }, reason => {\n finishWorkerTask(task);\n throw reason;\n });\n });\n });\n handler.on(\"GetFieldObjects\", function (data) {\n return pdfManager.ensureDoc(\"fieldObjects\");\n });\n handler.on(\"HasJSActions\", function (data) {\n return pdfManager.ensureDoc(\"hasJSActions\");\n });\n handler.on(\"GetCalculationOrderIds\", function (data) {\n return pdfManager.ensureDoc(\"calculationOrderIds\");\n });\n handler.on(\"SaveDocument\", async function ({\n isPureXfa,\n numPages,\n annotationStorage,\n filename\n }) {\n const globalPromises = [pdfManager.requestLoadedStream(), pdfManager.ensureCatalog(\"acroForm\"), pdfManager.ensureCatalog(\"acroFormRef\"), pdfManager.ensureDoc(\"startXRef\"), pdfManager.ensureDoc(\"xref\"), pdfManager.ensureDoc(\"linearization\"), pdfManager.ensureCatalog(\"structTreeRoot\")];\n const promises = [];\n const newAnnotationsByPage = !isPureXfa ? (0, _core_utils.getNewAnnotationsMap)(annotationStorage) : null;\n const [stream, acroForm, acroFormRef, startXRef, xref, linearization, _structTreeRoot] = await Promise.all(globalPromises);\n const catalogRef = xref.trailer.getRaw(\"Root\") || null;\n let structTreeRoot;\n if (newAnnotationsByPage) {\n if (!_structTreeRoot) {\n if (await _struct_tree.StructTreeRoot.canCreateStructureTree({\n catalogRef,\n pdfManager,\n newAnnotationsByPage\n })) {\n structTreeRoot = null;\n }\n } else if (await _structTreeRoot.canUpdateStructTree({\n pdfManager,\n newAnnotationsByPage\n })) {\n structTreeRoot = _structTreeRoot;\n }\n const imagePromises = _annotation.AnnotationFactory.generateImages(annotationStorage.values(), xref, pdfManager.evaluatorOptions.isOffscreenCanvasSupported);\n const newAnnotationPromises = structTreeRoot === undefined ? promises : [];\n for (const [pageIndex, annotations] of newAnnotationsByPage) {\n newAnnotationPromises.push(pdfManager.getPage(pageIndex).then(page => {\n const task = new WorkerTask(`Save (editor): page ${pageIndex}`);\n return page.saveNewAnnotations(handler, task, annotations, imagePromises).finally(function () {\n finishWorkerTask(task);\n });\n }));\n }\n if (structTreeRoot === null) {\n promises.push(Promise.all(newAnnotationPromises).then(async newRefs => {\n await _struct_tree.StructTreeRoot.createStructureTree({\n newAnnotationsByPage,\n xref,\n catalogRef,\n pdfManager,\n newRefs\n });\n return newRefs;\n }));\n } else if (structTreeRoot) {\n promises.push(Promise.all(newAnnotationPromises).then(async newRefs => {\n await structTreeRoot.updateStructureTree({\n newAnnotationsByPage,\n pdfManager,\n newRefs\n });\n return newRefs;\n }));\n }\n }\n if (isPureXfa) {\n promises.push(pdfManager.serializeXfaData(annotationStorage));\n } else {\n for (let pageIndex = 0; pageIndex < numPages; pageIndex++) {\n promises.push(pdfManager.getPage(pageIndex).then(function (page) {\n const task = new WorkerTask(`Save: page ${pageIndex}`);\n return page.save(handler, task, annotationStorage).finally(function () {\n finishWorkerTask(task);\n });\n }));\n }\n }\n const refs = await Promise.all(promises);\n let newRefs = [];\n let xfaData = null;\n if (isPureXfa) {\n xfaData = refs[0];\n if (!xfaData) {\n return stream.bytes;\n }\n } else {\n newRefs = refs.flat(2);\n if (newRefs.length === 0) {\n return stream.bytes;\n }\n }\n const needAppearances = acroFormRef && acroForm instanceof _primitives.Dict && newRefs.some(ref => ref.needAppearances);\n const xfa = acroForm instanceof _primitives.Dict && acroForm.get(\"XFA\") || null;\n let xfaDatasetsRef = null;\n let hasXfaDatasetsEntry = false;\n if (Array.isArray(xfa)) {\n for (let i = 0, ii = xfa.length; i < ii; i += 2) {\n if (xfa[i] === \"datasets\") {\n xfaDatasetsRef = xfa[i + 1];\n hasXfaDatasetsEntry = true;\n }\n }\n if (xfaDatasetsRef === null) {\n xfaDatasetsRef = xref.getNewTemporaryRef();\n }\n } else if (xfa) {\n (0, _util.warn)(\"Unsupported XFA type.\");\n }\n let newXrefInfo = Object.create(null);\n if (xref.trailer) {\n const infoObj = Object.create(null);\n const xrefInfo = xref.trailer.get(\"Info\") || null;\n if (xrefInfo instanceof _primitives.Dict) {\n xrefInfo.forEach((key, value) => {\n if (typeof value === \"string\") {\n infoObj[key] = (0, _util.stringToPDFString)(value);\n }\n });\n }\n newXrefInfo = {\n rootRef: catalogRef,\n encryptRef: xref.trailer.getRaw(\"Encrypt\") || null,\n newRef: xref.getNewTemporaryRef(),\n infoRef: xref.trailer.getRaw(\"Info\") || null,\n info: infoObj,\n fileIds: xref.trailer.get(\"ID\") || null,\n startXRef: linearization ? startXRef : xref.lastXRefStreamPos ?? startXRef,\n filename\n };\n }\n return (0, _writer.incrementalUpdate)({\n originalData: stream.bytes,\n xrefInfo: newXrefInfo,\n newRefs,\n xref,\n hasXfa: !!xfa,\n xfaDatasetsRef,\n hasXfaDatasetsEntry,\n needAppearances,\n acroFormRef,\n acroForm,\n xfaData\n }).finally(() => {\n xref.resetNewTemporaryRef();\n });\n });\n handler.on(\"GetOperatorList\", function (data, sink) {\n const pageIndex = data.pageIndex;\n pdfManager.getPage(pageIndex).then(function (page) {\n const task = new WorkerTask(`GetOperatorList: page ${pageIndex}`);\n startWorkerTask(task);\n const start = verbosity >= _util.VerbosityLevel.INFOS ? Date.now() : 0;\n page.getOperatorList({\n handler,\n sink,\n task,\n intent: data.intent,\n cacheKey: data.cacheKey,\n annotationStorage: data.annotationStorage\n }).then(function (operatorListInfo) {\n finishWorkerTask(task);\n if (start) {\n (0, _util.info)(`page=${pageIndex + 1} - getOperatorList: time=` + `${Date.now() - start}ms, len=${operatorListInfo.length}`);\n }\n sink.close();\n }, function (reason) {\n finishWorkerTask(task);\n if (task.terminated) {\n return;\n }\n sink.error(reason);\n });\n });\n });\n handler.on(\"GetTextContent\", function (data, sink) {\n const {\n pageIndex,\n includeMarkedContent,\n disableNormalization\n } = data;\n pdfManager.getPage(pageIndex).then(function (page) {\n const task = new WorkerTask(\"GetTextContent: page \" + pageIndex);\n startWorkerTask(task);\n const start = verbosity >= _util.VerbosityLevel.INFOS ? Date.now() : 0;\n page.extractTextContent({\n handler,\n task,\n sink,\n includeMarkedContent,\n disableNormalization\n }).then(function () {\n finishWorkerTask(task);\n if (start) {\n (0, _util.info)(`page=${pageIndex + 1} - getTextContent: time=` + `${Date.now() - start}ms`);\n }\n sink.close();\n }, function (reason) {\n finishWorkerTask(task);\n if (task.terminated) {\n return;\n }\n sink.error(reason);\n });\n });\n });\n handler.on(\"GetStructTree\", function (data) {\n return pdfManager.getPage(data.pageIndex).then(function (page) {\n return pdfManager.ensure(page, \"getStructTree\");\n });\n });\n handler.on(\"FontFallback\", function (data) {\n return pdfManager.fontFallback(data.id, handler);\n });\n handler.on(\"Cleanup\", function (data) {\n return pdfManager.cleanup(true);\n });\n handler.on(\"Terminate\", function (data) {\n terminated = true;\n const waitOn = [];\n if (pdfManager) {\n pdfManager.terminate(new _util.AbortException(\"Worker was terminated.\"));\n const cleanupPromise = pdfManager.cleanup();\n waitOn.push(cleanupPromise);\n pdfManager = null;\n } else {\n (0, _cleanup_helper.clearGlobalCaches)();\n }\n if (cancelXHRs) {\n cancelXHRs(new _util.AbortException(\"Worker was terminated.\"));\n }\n for (const task of WorkerTasks) {\n waitOn.push(task.finished);\n task.terminate();\n }\n return Promise.all(waitOn).then(function () {\n handler.destroy();\n handler = null;\n });\n });\n handler.on(\"Ready\", function (data) {\n setupDoc(docParams);\n docParams = null;\n });\n return workerHandlerName;\n }\n static initializeFromPort(port) {\n const handler = new _message_handler.MessageHandler(\"worker\", \"main\", port);\n WorkerMessageHandler.setup(handler, port);\n handler.send(\"ready\", null);\n }\n}\nexports.WorkerMessageHandler = WorkerMessageHandler;\nfunction isMessagePort(maybePort) {\n return typeof maybePort.postMessage === \"function\" && \"onmessage\" in maybePort;\n}\nif (typeof window === \"undefined\" && !_util.isNodeJS && typeof self !== \"undefined\" && isMessagePort(self)) {\n WorkerMessageHandler.initializeFromPort(self);\n}\n\n/***/ }),\n/* 2 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.VerbosityLevel = exports.Util = exports.UnknownErrorException = exports.UnexpectedResponseException = exports.TextRenderingMode = exports.RenderingIntentFlag = exports.PromiseCapability = exports.PermissionFlag = exports.PasswordResponses = exports.PasswordException = exports.PageActionEventType = exports.OPS = exports.MissingPDFException = exports.MAX_IMAGE_SIZE_TO_CACHE = exports.LINE_FACTOR = exports.LINE_DESCENT_FACTOR = exports.InvalidPDFException = exports.ImageKind = exports.IDENTITY_MATRIX = exports.FormatError = exports.FeatureTest = exports.FONT_IDENTITY_MATRIX = exports.DocumentActionEventType = exports.CMapCompressionType = exports.BaseException = exports.BASELINE_FACTOR = exports.AnnotationType = exports.AnnotationReplyType = exports.AnnotationPrefix = exports.AnnotationMode = exports.AnnotationFlag = exports.AnnotationFieldFlag = exports.AnnotationEditorType = exports.AnnotationEditorPrefix = exports.AnnotationEditorParamsType = exports.AnnotationBorderStyleType = exports.AnnotationActionEventType = exports.AbortException = void 0;\nexports.assert = assert;\nexports.bytesToString = bytesToString;\nexports.createValidAbsoluteUrl = createValidAbsoluteUrl;\nexports.getModificationDate = getModificationDate;\nexports.getUuid = getUuid;\nexports.getVerbosityLevel = getVerbosityLevel;\nexports.info = info;\nexports.isArrayBuffer = isArrayBuffer;\nexports.isArrayEqual = isArrayEqual;\nexports.isNodeJS = void 0;\nexports.normalizeUnicode = normalizeUnicode;\nexports.objectFromMap = objectFromMap;\nexports.objectSize = objectSize;\nexports.setVerbosityLevel = setVerbosityLevel;\nexports.shadow = shadow;\nexports.string32 = string32;\nexports.stringToBytes = stringToBytes;\nexports.stringToPDFString = stringToPDFString;\nexports.stringToUTF8String = stringToUTF8String;\nexports.unreachable = unreachable;\nexports.utf8StringToString = utf8StringToString;\nexports.warn = warn;\nconst isNodeJS = typeof process === \"object\" && process + \"\" === \"[object process]\" && !process.versions.nw && !(process.versions.electron && process.type && process.type !== \"browser\");\nexports.isNodeJS = isNodeJS;\nconst IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nexports.IDENTITY_MATRIX = IDENTITY_MATRIX;\nconst FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\nexports.FONT_IDENTITY_MATRIX = FONT_IDENTITY_MATRIX;\nconst MAX_IMAGE_SIZE_TO_CACHE = 10e6;\nexports.MAX_IMAGE_SIZE_TO_CACHE = MAX_IMAGE_SIZE_TO_CACHE;\nconst LINE_FACTOR = 1.35;\nexports.LINE_FACTOR = LINE_FACTOR;\nconst LINE_DESCENT_FACTOR = 0.35;\nexports.LINE_DESCENT_FACTOR = LINE_DESCENT_FACTOR;\nconst BASELINE_FACTOR = LINE_DESCENT_FACTOR / LINE_FACTOR;\nexports.BASELINE_FACTOR = BASELINE_FACTOR;\nconst RenderingIntentFlag = {\n ANY: 0x01,\n DISPLAY: 0x02,\n PRINT: 0x04,\n SAVE: 0x08,\n ANNOTATIONS_FORMS: 0x10,\n ANNOTATIONS_STORAGE: 0x20,\n ANNOTATIONS_DISABLE: 0x40,\n OPLIST: 0x100\n};\nexports.RenderingIntentFlag = RenderingIntentFlag;\nconst AnnotationMode = {\n DISABLE: 0,\n ENABLE: 1,\n ENABLE_FORMS: 2,\n ENABLE_STORAGE: 3\n};\nexports.AnnotationMode = AnnotationMode;\nconst AnnotationEditorPrefix = \"pdfjs_internal_editor_\";\nexports.AnnotationEditorPrefix = AnnotationEditorPrefix;\nconst AnnotationEditorType = {\n DISABLE: -1,\n NONE: 0,\n FREETEXT: 3,\n STAMP: 13,\n INK: 15\n};\nexports.AnnotationEditorType = AnnotationEditorType;\nconst AnnotationEditorParamsType = {\n RESIZE: 1,\n CREATE: 2,\n FREETEXT_SIZE: 11,\n FREETEXT_COLOR: 12,\n FREETEXT_OPACITY: 13,\n INK_COLOR: 21,\n INK_THICKNESS: 22,\n INK_OPACITY: 23\n};\nexports.AnnotationEditorParamsType = AnnotationEditorParamsType;\nconst PermissionFlag = {\n PRINT: 0x04,\n MODIFY_CONTENTS: 0x08,\n COPY: 0x10,\n MODIFY_ANNOTATIONS: 0x20,\n FILL_INTERACTIVE_FORMS: 0x100,\n COPY_FOR_ACCESSIBILITY: 0x200,\n ASSEMBLE: 0x400,\n PRINT_HIGH_QUALITY: 0x800\n};\nexports.PermissionFlag = PermissionFlag;\nconst TextRenderingMode = {\n FILL: 0,\n STROKE: 1,\n FILL_STROKE: 2,\n INVISIBLE: 3,\n FILL_ADD_TO_PATH: 4,\n STROKE_ADD_TO_PATH: 5,\n FILL_STROKE_ADD_TO_PATH: 6,\n ADD_TO_PATH: 7,\n FILL_STROKE_MASK: 3,\n ADD_TO_PATH_FLAG: 4\n};\nexports.TextRenderingMode = TextRenderingMode;\nconst ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3\n};\nexports.ImageKind = ImageKind;\nconst AnnotationType = {\n TEXT: 1,\n LINK: 2,\n FREETEXT: 3,\n LINE: 4,\n SQUARE: 5,\n CIRCLE: 6,\n POLYGON: 7,\n POLYLINE: 8,\n HIGHLIGHT: 9,\n UNDERLINE: 10,\n SQUIGGLY: 11,\n STRIKEOUT: 12,\n STAMP: 13,\n CARET: 14,\n INK: 15,\n POPUP: 16,\n FILEATTACHMENT: 17,\n SOUND: 18,\n MOVIE: 19,\n WIDGET: 20,\n SCREEN: 21,\n PRINTERMARK: 22,\n TRAPNET: 23,\n WATERMARK: 24,\n THREED: 25,\n REDACT: 26\n};\nexports.AnnotationType = AnnotationType;\nconst AnnotationReplyType = {\n GROUP: \"Group\",\n REPLY: \"R\"\n};\nexports.AnnotationReplyType = AnnotationReplyType;\nconst AnnotationFlag = {\n INVISIBLE: 0x01,\n HIDDEN: 0x02,\n PRINT: 0x04,\n NOZOOM: 0x08,\n NOROTATE: 0x10,\n NOVIEW: 0x20,\n READONLY: 0x40,\n LOCKED: 0x80,\n TOGGLENOVIEW: 0x100,\n LOCKEDCONTENTS: 0x200\n};\nexports.AnnotationFlag = AnnotationFlag;\nconst AnnotationFieldFlag = {\n READONLY: 0x0000001,\n REQUIRED: 0x0000002,\n NOEXPORT: 0x0000004,\n MULTILINE: 0x0001000,\n PASSWORD: 0x0002000,\n NOTOGGLETOOFF: 0x0004000,\n RADIO: 0x0008000,\n PUSHBUTTON: 0x0010000,\n COMBO: 0x0020000,\n EDIT: 0x0040000,\n SORT: 0x0080000,\n FILESELECT: 0x0100000,\n MULTISELECT: 0x0200000,\n DONOTSPELLCHECK: 0x0400000,\n DONOTSCROLL: 0x0800000,\n COMB: 0x1000000,\n RICHTEXT: 0x2000000,\n RADIOSINUNISON: 0x2000000,\n COMMITONSELCHANGE: 0x4000000\n};\nexports.AnnotationFieldFlag = AnnotationFieldFlag;\nconst AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5\n};\nexports.AnnotationBorderStyleType = AnnotationBorderStyleType;\nconst AnnotationActionEventType = {\n E: \"Mouse Enter\",\n X: \"Mouse Exit\",\n D: \"Mouse Down\",\n U: \"Mouse Up\",\n Fo: \"Focus\",\n Bl: \"Blur\",\n PO: \"PageOpen\",\n PC: \"PageClose\",\n PV: \"PageVisible\",\n PI: \"PageInvisible\",\n K: \"Keystroke\",\n F: \"Format\",\n V: \"Validate\",\n C: \"Calculate\"\n};\nexports.AnnotationActionEventType = AnnotationActionEventType;\nconst DocumentActionEventType = {\n WC: \"WillClose\",\n WS: \"WillSave\",\n DS: \"DidSave\",\n WP: \"WillPrint\",\n DP: \"DidPrint\"\n};\nexports.DocumentActionEventType = DocumentActionEventType;\nconst PageActionEventType = {\n O: \"PageOpen\",\n C: \"PageClose\"\n};\nexports.PageActionEventType = PageActionEventType;\nconst VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5\n};\nexports.VerbosityLevel = VerbosityLevel;\nconst CMapCompressionType = {\n NONE: 0,\n BINARY: 1\n};\nexports.CMapCompressionType = CMapCompressionType;\nconst OPS = {\n dependency: 1,\n setLineWidth: 2,\n setLineCap: 3,\n setLineJoin: 4,\n setMiterLimit: 5,\n setDash: 6,\n setRenderingIntent: 7,\n setFlatness: 8,\n setGState: 9,\n save: 10,\n restore: 11,\n transform: 12,\n moveTo: 13,\n lineTo: 14,\n curveTo: 15,\n curveTo2: 16,\n curveTo3: 17,\n closePath: 18,\n rectangle: 19,\n stroke: 20,\n closeStroke: 21,\n fill: 22,\n eoFill: 23,\n fillStroke: 24,\n eoFillStroke: 25,\n closeFillStroke: 26,\n closeEOFillStroke: 27,\n endPath: 28,\n clip: 29,\n eoClip: 30,\n beginText: 31,\n endText: 32,\n setCharSpacing: 33,\n setWordSpacing: 34,\n setHScale: 35,\n setLeading: 36,\n setFont: 37,\n setTextRenderingMode: 38,\n setTextRise: 39,\n moveText: 40,\n setLeadingMoveText: 41,\n setTextMatrix: 42,\n nextLine: 43,\n showText: 44,\n showSpacedText: 45,\n nextLineShowText: 46,\n nextLineSetSpacingShowText: 47,\n setCharWidth: 48,\n setCharWidthAndBounds: 49,\n setStrokeColorSpace: 50,\n setFillColorSpace: 51,\n setStrokeColor: 52,\n setStrokeColorN: 53,\n setFillColor: 54,\n setFillColorN: 55,\n setStrokeGray: 56,\n setFillGray: 57,\n setStrokeRGBColor: 58,\n setFillRGBColor: 59,\n setStrokeCMYKColor: 60,\n setFillCMYKColor: 61,\n shadingFill: 62,\n beginInlineImage: 63,\n beginImageData: 64,\n endInlineImage: 65,\n paintXObject: 66,\n markPoint: 67,\n markPointProps: 68,\n beginMarkedContent: 69,\n beginMarkedContentProps: 70,\n endMarkedContent: 71,\n beginCompat: 72,\n endCompat: 73,\n paintFormXObjectBegin: 74,\n paintFormXObjectEnd: 75,\n beginGroup: 76,\n endGroup: 77,\n beginAnnotation: 80,\n endAnnotation: 81,\n paintImageMaskXObject: 83,\n paintImageMaskXObjectGroup: 84,\n paintImageXObject: 85,\n paintInlineImageXObject: 86,\n paintInlineImageXObjectGroup: 87,\n paintImageXObjectRepeat: 88,\n paintImageMaskXObjectRepeat: 89,\n paintSolidColorImageMask: 90,\n constructPath: 91\n};\nexports.OPS = OPS;\nconst PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2\n};\nexports.PasswordResponses = PasswordResponses;\nlet verbosity = VerbosityLevel.WARNINGS;\nfunction setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n}\nfunction getVerbosityLevel() {\n return verbosity;\n}\nfunction info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log(`Info: ${msg}`);\n }\n}\nfunction warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log(`Warning: ${msg}`);\n }\n}\nfunction unreachable(msg) {\n throw new Error(msg);\n}\nfunction assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n}\nfunction _isValidProtocol(url) {\n switch (url?.protocol) {\n case \"http:\":\n case \"https:\":\n case \"ftp:\":\n case \"mailto:\":\n case \"tel:\":\n return true;\n default:\n return false;\n }\n}\nfunction createValidAbsoluteUrl(url, baseUrl = null, options = null) {\n if (!url) {\n return null;\n }\n try {\n if (options && typeof url === \"string\") {\n if (options.addDefaultProtocol && url.startsWith(\"www.\")) {\n const dots = url.match(/\\./g);\n if (dots?.length >= 2) {\n url = `http://${url}`;\n }\n }\n if (options.tryConvertEncoding) {\n try {\n url = stringToUTF8String(url);\n } catch {}\n }\n }\n const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n if (_isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch {}\n return null;\n}\nfunction shadow(obj, prop, value, nonSerializable = false) {\n Object.defineProperty(obj, prop, {\n value,\n enumerable: !nonSerializable,\n configurable: true,\n writable: false\n });\n return value;\n}\nconst BaseException = function BaseExceptionClosure() {\n function BaseException(message, name) {\n if (this.constructor === BaseException) {\n unreachable(\"Cannot initialize BaseException.\");\n }\n this.message = message;\n this.name = name;\n }\n BaseException.prototype = new Error();\n BaseException.constructor = BaseException;\n return BaseException;\n}();\nexports.BaseException = BaseException;\nclass PasswordException extends BaseException {\n constructor(msg, code) {\n super(msg, \"PasswordException\");\n this.code = code;\n }\n}\nexports.PasswordException = PasswordException;\nclass UnknownErrorException extends BaseException {\n constructor(msg, details) {\n super(msg, \"UnknownErrorException\");\n this.details = details;\n }\n}\nexports.UnknownErrorException = UnknownErrorException;\nclass InvalidPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"InvalidPDFException\");\n }\n}\nexports.InvalidPDFException = InvalidPDFException;\nclass MissingPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"MissingPDFException\");\n }\n}\nexports.MissingPDFException = MissingPDFException;\nclass UnexpectedResponseException extends BaseException {\n constructor(msg, status) {\n super(msg, \"UnexpectedResponseException\");\n this.status = status;\n }\n}\nexports.UnexpectedResponseException = UnexpectedResponseException;\nclass FormatError extends BaseException {\n constructor(msg) {\n super(msg, \"FormatError\");\n }\n}\nexports.FormatError = FormatError;\nclass AbortException extends BaseException {\n constructor(msg) {\n super(msg, \"AbortException\");\n }\n}\nexports.AbortException = AbortException;\nfunction bytesToString(bytes) {\n if (typeof bytes !== \"object\" || bytes?.length === undefined) {\n unreachable(\"Invalid argument for bytesToString\");\n }\n const length = bytes.length;\n const MAX_ARGUMENT_COUNT = 8192;\n if (length < MAX_ARGUMENT_COUNT) {\n return String.fromCharCode.apply(null, bytes);\n }\n const strBuf = [];\n for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) {\n const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);\n const chunk = bytes.subarray(i, chunkEnd);\n strBuf.push(String.fromCharCode.apply(null, chunk));\n }\n return strBuf.join(\"\");\n}\nfunction stringToBytes(str) {\n if (typeof str !== \"string\") {\n unreachable(\"Invalid argument for stringToBytes\");\n }\n const length = str.length;\n const bytes = new Uint8Array(length);\n for (let i = 0; i < length; ++i) {\n bytes[i] = str.charCodeAt(i) & 0xff;\n }\n return bytes;\n}\nfunction string32(value) {\n return String.fromCharCode(value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);\n}\nfunction objectSize(obj) {\n return Object.keys(obj).length;\n}\nfunction objectFromMap(map) {\n const obj = Object.create(null);\n for (const [key, value] of map) {\n obj[key] = value;\n }\n return obj;\n}\nfunction isLittleEndian() {\n const buffer8 = new Uint8Array(4);\n buffer8[0] = 1;\n const view32 = new Uint32Array(buffer8.buffer, 0, 1);\n return view32[0] === 1;\n}\nfunction isEvalSupported() {\n try {\n new Function(\"\");\n return true;\n } catch {\n return false;\n }\n}\nclass FeatureTest {\n static get isLittleEndian() {\n return shadow(this, \"isLittleEndian\", isLittleEndian());\n }\n static get isEvalSupported() {\n return shadow(this, \"isEvalSupported\", isEvalSupported());\n }\n static get isOffscreenCanvasSupported() {\n return shadow(this, \"isOffscreenCanvasSupported\", typeof OffscreenCanvas !== \"undefined\");\n }\n static get platform() {\n if (typeof navigator === \"undefined\") {\n return shadow(this, \"platform\", {\n isWin: false,\n isMac: false\n });\n }\n return shadow(this, \"platform\", {\n isWin: navigator.platform.includes(\"Win\"),\n isMac: navigator.platform.includes(\"Mac\")\n });\n }\n static get isCSSRoundSupported() {\n return shadow(this, \"isCSSRoundSupported\", globalThis.CSS?.supports?.(\"width: round(1.5px, 1px)\"));\n }\n}\nexports.FeatureTest = FeatureTest;\nconst hexNumbers = [...Array(256).keys()].map(n => n.toString(16).padStart(2, \"0\"));\nclass Util {\n static makeHexColor(r, g, b) {\n return `#${hexNumbers[r]}${hexNumbers[g]}${hexNumbers[b]}`;\n }\n static scaleMinMax(transform, minMax) {\n let temp;\n if (transform[0]) {\n if (transform[0] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[1];\n minMax[1] = temp;\n }\n minMax[0] *= transform[0];\n minMax[1] *= transform[0];\n if (transform[3] < 0) {\n temp = minMax[2];\n minMax[2] = minMax[3];\n minMax[3] = temp;\n }\n minMax[2] *= transform[3];\n minMax[3] *= transform[3];\n } else {\n temp = minMax[0];\n minMax[0] = minMax[2];\n minMax[2] = temp;\n temp = minMax[1];\n minMax[1] = minMax[3];\n minMax[3] = temp;\n if (transform[1] < 0) {\n temp = minMax[2];\n minMax[2] = minMax[3];\n minMax[3] = temp;\n }\n minMax[2] *= transform[1];\n minMax[3] *= transform[1];\n if (transform[2] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[1];\n minMax[1] = temp;\n }\n minMax[0] *= transform[2];\n minMax[1] *= transform[2];\n }\n minMax[0] += transform[4];\n minMax[1] += transform[4];\n minMax[2] += transform[5];\n minMax[3] += transform[5];\n }\n static transform(m1, m2) {\n return [m1[0] * m2[0] + m1[2] * m2[1], m1[1] * m2[0] + m1[3] * m2[1], m1[0] * m2[2] + m1[2] * m2[3], m1[1] * m2[2] + m1[3] * m2[3], m1[0] * m2[4] + m1[2] * m2[5] + m1[4], m1[1] * m2[4] + m1[3] * m2[5] + m1[5]];\n }\n static applyTransform(p, m) {\n const xt = p[0] * m[0] + p[1] * m[2] + m[4];\n const yt = p[0] * m[1] + p[1] * m[3] + m[5];\n return [xt, yt];\n }\n static applyInverseTransform(p, m) {\n const d = m[0] * m[3] - m[1] * m[2];\n const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;\n const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;\n return [xt, yt];\n }\n static getAxialAlignedBoundingBox(r, m) {\n const p1 = this.applyTransform(r, m);\n const p2 = this.applyTransform(r.slice(2, 4), m);\n const p3 = this.applyTransform([r[0], r[3]], m);\n const p4 = this.applyTransform([r[2], r[1]], m);\n return [Math.min(p1[0], p2[0], p3[0], p4[0]), Math.min(p1[1], p2[1], p3[1], p4[1]), Math.max(p1[0], p2[0], p3[0], p4[0]), Math.max(p1[1], p2[1], p3[1], p4[1])];\n }\n static inverseTransform(m) {\n const d = m[0] * m[3] - m[1] * m[2];\n return [m[3] / d, -m[1] / d, -m[2] / d, m[0] / d, (m[2] * m[5] - m[4] * m[3]) / d, (m[4] * m[1] - m[5] * m[0]) / d];\n }\n static singularValueDecompose2dScale(m) {\n const transpose = [m[0], m[2], m[1], m[3]];\n const a = m[0] * transpose[0] + m[1] * transpose[2];\n const b = m[0] * transpose[1] + m[1] * transpose[3];\n const c = m[2] * transpose[0] + m[3] * transpose[2];\n const d = m[2] * transpose[1] + m[3] * transpose[3];\n const first = (a + d) / 2;\n const second = Math.sqrt((a + d) ** 2 - 4 * (a * d - c * b)) / 2;\n const sx = first + second || 1;\n const sy = first - second || 1;\n return [Math.sqrt(sx), Math.sqrt(sy)];\n }\n static normalizeRect(rect) {\n const r = rect.slice(0);\n if (rect[0] > rect[2]) {\n r[0] = rect[2];\n r[2] = rect[0];\n }\n if (rect[1] > rect[3]) {\n r[1] = rect[3];\n r[3] = rect[1];\n }\n return r;\n }\n static intersect(rect1, rect2) {\n const xLow = Math.max(Math.min(rect1[0], rect1[2]), Math.min(rect2[0], rect2[2]));\n const xHigh = Math.min(Math.max(rect1[0], rect1[2]), Math.max(rect2[0], rect2[2]));\n if (xLow > xHigh) {\n return null;\n }\n const yLow = Math.max(Math.min(rect1[1], rect1[3]), Math.min(rect2[1], rect2[3]));\n const yHigh = Math.min(Math.max(rect1[1], rect1[3]), Math.max(rect2[1], rect2[3]));\n if (yLow > yHigh) {\n return null;\n }\n return [xLow, yLow, xHigh, yHigh];\n }\n static bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3) {\n const tvalues = [],\n bounds = [[], []];\n let a, b, c, t, t1, t2, b2ac, sqrtb2ac;\n for (let i = 0; i < 2; ++i) {\n if (i === 0) {\n b = 6 * x0 - 12 * x1 + 6 * x2;\n a = -3 * x0 + 9 * x1 - 9 * x2 + 3 * x3;\n c = 3 * x1 - 3 * x0;\n } else {\n b = 6 * y0 - 12 * y1 + 6 * y2;\n a = -3 * y0 + 9 * y1 - 9 * y2 + 3 * y3;\n c = 3 * y1 - 3 * y0;\n }\n if (Math.abs(a) < 1e-12) {\n if (Math.abs(b) < 1e-12) {\n continue;\n }\n t = -c / b;\n if (0 < t && t < 1) {\n tvalues.push(t);\n }\n continue;\n }\n b2ac = b * b - 4 * c * a;\n sqrtb2ac = Math.sqrt(b2ac);\n if (b2ac < 0) {\n continue;\n }\n t1 = (-b + sqrtb2ac) / (2 * a);\n if (0 < t1 && t1 < 1) {\n tvalues.push(t1);\n }\n t2 = (-b - sqrtb2ac) / (2 * a);\n if (0 < t2 && t2 < 1) {\n tvalues.push(t2);\n }\n }\n let j = tvalues.length,\n mt;\n const jlen = j;\n while (j--) {\n t = tvalues[j];\n mt = 1 - t;\n bounds[0][j] = mt * mt * mt * x0 + 3 * mt * mt * t * x1 + 3 * mt * t * t * x2 + t * t * t * x3;\n bounds[1][j] = mt * mt * mt * y0 + 3 * mt * mt * t * y1 + 3 * mt * t * t * y2 + t * t * t * y3;\n }\n bounds[0][jlen] = x0;\n bounds[1][jlen] = y0;\n bounds[0][jlen + 1] = x3;\n bounds[1][jlen + 1] = y3;\n bounds[0].length = bounds[1].length = jlen + 2;\n return [Math.min(...bounds[0]), Math.min(...bounds[1]), Math.max(...bounds[0]), Math.max(...bounds[1])];\n }\n}\nexports.Util = Util;\nconst PDFStringTranslateTable = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2d8, 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192, 0x2044, 0x2039, 0x203a, 0x2212, 0x2030, 0x201e, 0x201c, 0x201d, 0x2018, 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 0x17d, 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac];\nfunction stringToPDFString(str) {\n if (str[0] >= \"\\xEF\") {\n let encoding;\n if (str[0] === \"\\xFE\" && str[1] === \"\\xFF\") {\n encoding = \"utf-16be\";\n } else if (str[0] === \"\\xFF\" && str[1] === \"\\xFE\") {\n encoding = \"utf-16le\";\n } else if (str[0] === \"\\xEF\" && str[1] === \"\\xBB\" && str[2] === \"\\xBF\") {\n encoding = \"utf-8\";\n }\n if (encoding) {\n try {\n const decoder = new TextDecoder(encoding, {\n fatal: true\n });\n const buffer = stringToBytes(str);\n return decoder.decode(buffer);\n } catch (ex) {\n warn(`stringToPDFString: \"${ex}\".`);\n }\n }\n }\n const strBuf = [];\n for (let i = 0, ii = str.length; i < ii; i++) {\n const code = PDFStringTranslateTable[str.charCodeAt(i)];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));\n }\n return strBuf.join(\"\");\n}\nfunction stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n}\nfunction utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n}\nfunction isArrayBuffer(v) {\n return typeof v === \"object\" && v?.byteLength !== undefined;\n}\nfunction isArrayEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n for (let i = 0, ii = arr1.length; i < ii; i++) {\n if (arr1[i] !== arr2[i]) {\n return false;\n }\n }\n return true;\n}\nfunction getModificationDate(date = new Date()) {\n const buffer = [date.getUTCFullYear().toString(), (date.getUTCMonth() + 1).toString().padStart(2, \"0\"), date.getUTCDate().toString().padStart(2, \"0\"), date.getUTCHours().toString().padStart(2, \"0\"), date.getUTCMinutes().toString().padStart(2, \"0\"), date.getUTCSeconds().toString().padStart(2, \"0\")];\n return buffer.join(\"\");\n}\nclass PromiseCapability {\n #settled = false;\n constructor() {\n this.promise = new Promise((resolve, reject) => {\n this.resolve = data => {\n this.#settled = true;\n resolve(data);\n };\n this.reject = reason => {\n this.#settled = true;\n reject(reason);\n };\n });\n }\n get settled() {\n return this.#settled;\n }\n}\nexports.PromiseCapability = PromiseCapability;\nlet NormalizeRegex = null;\nlet NormalizationMap = null;\nfunction normalizeUnicode(str) {\n if (!NormalizeRegex) {\n NormalizeRegex = /([\\u00a0\\u00b5\\u037e\\u0eb3\\u2000-\\u200a\\u202f\\u2126\\ufb00-\\ufb04\\ufb06\\ufb20-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufba1\\ufba4-\\ufba9\\ufbae-\\ufbb1\\ufbd3-\\ufbdc\\ufbde-\\ufbe7\\ufbea-\\ufbf8\\ufbfc-\\ufbfd\\ufc00-\\ufc5d\\ufc64-\\ufcf1\\ufcf5-\\ufd3d\\ufd88\\ufdf4\\ufdfa-\\ufdfb\\ufe71\\ufe77\\ufe79\\ufe7b\\ufe7d]+)|(\\ufb05+)/gu;\n NormalizationMap = new Map([[\"ſt\", \"ſt\"]]);\n }\n return str.replaceAll(NormalizeRegex, (_, p1, p2) => {\n return p1 ? p1.normalize(\"NFKC\") : NormalizationMap.get(p2);\n });\n}\nfunction getUuid() {\n if (typeof crypto !== \"undefined\" && typeof crypto?.randomUUID === \"function\") {\n return crypto.randomUUID();\n }\n const buf = new Uint8Array(32);\n if (typeof crypto !== \"undefined\" && typeof crypto?.getRandomValues === \"function\") {\n crypto.getRandomValues(buf);\n } else {\n for (let i = 0; i < 32; i++) {\n buf[i] = Math.floor(Math.random() * 255);\n }\n }\n return bytesToString(buf);\n}\nconst AnnotationPrefix = \"pdfjs_internal_id_\";\nexports.AnnotationPrefix = AnnotationPrefix;\n\n/***/ }),\n/* 3 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XRefParseException = exports.XRefEntryException = exports.ParserEOFException = exports.PDF_VERSION_REGEXP = exports.MissingDataException = void 0;\nexports.arrayBuffersToBytes = arrayBuffersToBytes;\nexports.collectActions = collectActions;\nexports.encodeToXmlString = encodeToXmlString;\nexports.escapePDFName = escapePDFName;\nexports.escapeString = escapeString;\nexports.getInheritableProperty = getInheritableProperty;\nexports.getLookupTableFactory = getLookupTableFactory;\nexports.getNewAnnotationsMap = getNewAnnotationsMap;\nexports.getRotationMatrix = getRotationMatrix;\nexports.isAscii = isAscii;\nexports.isWhiteSpace = isWhiteSpace;\nexports.log2 = log2;\nexports.numberToString = numberToString;\nexports.parseXFAPath = parseXFAPath;\nexports.readInt8 = readInt8;\nexports.readUint16 = readUint16;\nexports.readUint32 = readUint32;\nexports.recoverJsURL = recoverJsURL;\nexports.stringToUTF16HexString = stringToUTF16HexString;\nexports.stringToUTF16String = stringToUTF16String;\nexports.toRomanNumerals = toRomanNumerals;\nexports.validateCSSFont = validateCSSFont;\nexports.validateFontName = validateFontName;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _base_stream = __w_pdfjs_require__(5);\nconst PDF_VERSION_REGEXP = /^[1-9]\\.\\d$/;\nexports.PDF_VERSION_REGEXP = PDF_VERSION_REGEXP;\nfunction getLookupTableFactory(initializer) {\n let lookup;\n return function () {\n if (initializer) {\n lookup = Object.create(null);\n initializer(lookup);\n initializer = null;\n }\n return lookup;\n };\n}\nclass MissingDataException extends _util.BaseException {\n constructor(begin, end) {\n super(`Missing data [${begin}, ${end})`, \"MissingDataException\");\n this.begin = begin;\n this.end = end;\n }\n}\nexports.MissingDataException = MissingDataException;\nclass ParserEOFException extends _util.BaseException {\n constructor(msg) {\n super(msg, \"ParserEOFException\");\n }\n}\nexports.ParserEOFException = ParserEOFException;\nclass XRefEntryException extends _util.BaseException {\n constructor(msg) {\n super(msg, \"XRefEntryException\");\n }\n}\nexports.XRefEntryException = XRefEntryException;\nclass XRefParseException extends _util.BaseException {\n constructor(msg) {\n super(msg, \"XRefParseException\");\n }\n}\nexports.XRefParseException = XRefParseException;\nfunction arrayBuffersToBytes(arr) {\n const length = arr.length;\n if (length === 0) {\n return new Uint8Array(0);\n }\n if (length === 1) {\n return new Uint8Array(arr[0]);\n }\n let dataLength = 0;\n for (let i = 0; i < length; i++) {\n dataLength += arr[i].byteLength;\n }\n const data = new Uint8Array(dataLength);\n let pos = 0;\n for (let i = 0; i < length; i++) {\n const item = new Uint8Array(arr[i]);\n data.set(item, pos);\n pos += item.byteLength;\n }\n return data;\n}\nfunction getInheritableProperty({\n dict,\n key,\n getArray = false,\n stopWhenFound = true\n}) {\n let values;\n const visited = new _primitives.RefSet();\n while (dict instanceof _primitives.Dict && !(dict.objId && visited.has(dict.objId))) {\n if (dict.objId) {\n visited.put(dict.objId);\n }\n const value = getArray ? dict.getArray(key) : dict.get(key);\n if (value !== undefined) {\n if (stopWhenFound) {\n return value;\n }\n (values ||= []).push(value);\n }\n dict = dict.get(\"Parent\");\n }\n return values;\n}\nconst ROMAN_NUMBER_MAP = [\"\", \"C\", \"CC\", \"CCC\", \"CD\", \"D\", \"DC\", \"DCC\", \"DCCC\", \"CM\", \"\", \"X\", \"XX\", \"XXX\", \"XL\", \"L\", \"LX\", \"LXX\", \"LXXX\", \"XC\", \"\", \"I\", \"II\", \"III\", \"IV\", \"V\", \"VI\", \"VII\", \"VIII\", \"IX\"];\nfunction toRomanNumerals(number, lowerCase = false) {\n (0, _util.assert)(Number.isInteger(number) && number > 0, \"The number should be a positive integer.\");\n const romanBuf = [];\n let pos;\n while (number >= 1000) {\n number -= 1000;\n romanBuf.push(\"M\");\n }\n pos = number / 100 | 0;\n number %= 100;\n romanBuf.push(ROMAN_NUMBER_MAP[pos]);\n pos = number / 10 | 0;\n number %= 10;\n romanBuf.push(ROMAN_NUMBER_MAP[10 + pos]);\n romanBuf.push(ROMAN_NUMBER_MAP[20 + number]);\n const romanStr = romanBuf.join(\"\");\n return lowerCase ? romanStr.toLowerCase() : romanStr;\n}\nfunction log2(x) {\n if (x <= 0) {\n return 0;\n }\n return Math.ceil(Math.log2(x));\n}\nfunction readInt8(data, offset) {\n return data[offset] << 24 >> 24;\n}\nfunction readUint16(data, offset) {\n return data[offset] << 8 | data[offset + 1];\n}\nfunction readUint32(data, offset) {\n return (data[offset] << 24 | data[offset + 1] << 16 | data[offset + 2] << 8 | data[offset + 3]) >>> 0;\n}\nfunction isWhiteSpace(ch) {\n return ch === 0x20 || ch === 0x09 || ch === 0x0d || ch === 0x0a;\n}\nfunction parseXFAPath(path) {\n const positionPattern = /(.+)\\[(\\d+)\\]$/;\n return path.split(\".\").map(component => {\n const m = component.match(positionPattern);\n if (m) {\n return {\n name: m[1],\n pos: parseInt(m[2], 10)\n };\n }\n return {\n name: component,\n pos: 0\n };\n });\n}\nfunction escapePDFName(str) {\n const buffer = [];\n let start = 0;\n for (let i = 0, ii = str.length; i < ii; i++) {\n const char = str.charCodeAt(i);\n if (char < 0x21 || char > 0x7e || char === 0x23 || char === 0x28 || char === 0x29 || char === 0x3c || char === 0x3e || char === 0x5b || char === 0x5d || char === 0x7b || char === 0x7d || char === 0x2f || char === 0x25) {\n if (start < i) {\n buffer.push(str.substring(start, i));\n }\n buffer.push(`#${char.toString(16)}`);\n start = i + 1;\n }\n }\n if (buffer.length === 0) {\n return str;\n }\n if (start < str.length) {\n buffer.push(str.substring(start, str.length));\n }\n return buffer.join(\"\");\n}\nfunction escapeString(str) {\n return str.replaceAll(/([()\\\\\\n\\r])/g, match => {\n if (match === \"\\n\") {\n return \"\\\\n\";\n } else if (match === \"\\r\") {\n return \"\\\\r\";\n }\n return `\\\\${match}`;\n });\n}\nfunction _collectJS(entry, xref, list, parents) {\n if (!entry) {\n return;\n }\n let parent = null;\n if (entry instanceof _primitives.Ref) {\n if (parents.has(entry)) {\n return;\n }\n parent = entry;\n parents.put(parent);\n entry = xref.fetch(entry);\n }\n if (Array.isArray(entry)) {\n for (const element of entry) {\n _collectJS(element, xref, list, parents);\n }\n } else if (entry instanceof _primitives.Dict) {\n if ((0, _primitives.isName)(entry.get(\"S\"), \"JavaScript\")) {\n const js = entry.get(\"JS\");\n let code;\n if (js instanceof _base_stream.BaseStream) {\n code = js.getString();\n } else if (typeof js === \"string\") {\n code = js;\n }\n code &&= (0, _util.stringToPDFString)(code).replaceAll(\"\\x00\", \"\");\n if (code) {\n list.push(code);\n }\n }\n _collectJS(entry.getRaw(\"Next\"), xref, list, parents);\n }\n if (parent) {\n parents.remove(parent);\n }\n}\nfunction collectActions(xref, dict, eventType) {\n const actions = Object.create(null);\n const additionalActionsDicts = getInheritableProperty({\n dict,\n key: \"AA\",\n stopWhenFound: false\n });\n if (additionalActionsDicts) {\n for (let i = additionalActionsDicts.length - 1; i >= 0; i--) {\n const additionalActions = additionalActionsDicts[i];\n if (!(additionalActions instanceof _primitives.Dict)) {\n continue;\n }\n for (const key of additionalActions.getKeys()) {\n const action = eventType[key];\n if (!action) {\n continue;\n }\n const actionDict = additionalActions.getRaw(key);\n const parents = new _primitives.RefSet();\n const list = [];\n _collectJS(actionDict, xref, list, parents);\n if (list.length > 0) {\n actions[action] = list;\n }\n }\n }\n }\n if (dict.has(\"A\")) {\n const actionDict = dict.get(\"A\");\n const parents = new _primitives.RefSet();\n const list = [];\n _collectJS(actionDict, xref, list, parents);\n if (list.length > 0) {\n actions.Action = list;\n }\n }\n return (0, _util.objectSize)(actions) > 0 ? actions : null;\n}\nconst XMLEntities = {\n 0x3c: \"<\",\n 0x3e: \">\",\n 0x26: \"&\",\n 0x22: \""\",\n 0x27: \"'\"\n};\nfunction encodeToXmlString(str) {\n const buffer = [];\n let start = 0;\n for (let i = 0, ii = str.length; i < ii; i++) {\n const char = str.codePointAt(i);\n if (0x20 <= char && char <= 0x7e) {\n const entity = XMLEntities[char];\n if (entity) {\n if (start < i) {\n buffer.push(str.substring(start, i));\n }\n buffer.push(entity);\n start = i + 1;\n }\n } else {\n if (start < i) {\n buffer.push(str.substring(start, i));\n }\n buffer.push(`&#x${char.toString(16).toUpperCase()};`);\n if (char > 0xd7ff && (char < 0xe000 || char > 0xfffd)) {\n i++;\n }\n start = i + 1;\n }\n }\n if (buffer.length === 0) {\n return str;\n }\n if (start < str.length) {\n buffer.push(str.substring(start, str.length));\n }\n return buffer.join(\"\");\n}\nfunction validateFontName(fontFamily, mustWarn = false) {\n const m = /^(\"|').*(\"|')$/.exec(fontFamily);\n if (m && m[1] === m[2]) {\n const re = new RegExp(`[^\\\\\\\\]${m[1]}`);\n if (re.test(fontFamily.slice(1, -1))) {\n if (mustWarn) {\n (0, _util.warn)(`FontFamily contains unescaped ${m[1]}: ${fontFamily}.`);\n }\n return false;\n }\n } else {\n for (const ident of fontFamily.split(/[ \\t]+/)) {\n if (/^(\\d|(-(\\d|-)))/.test(ident) || !/^[\\w-\\\\]+$/.test(ident)) {\n if (mustWarn) {\n (0, _util.warn)(`FontFamily contains invalid : ${fontFamily}.`);\n }\n return false;\n }\n }\n }\n return true;\n}\nfunction validateCSSFont(cssFontInfo) {\n const DEFAULT_CSS_FONT_OBLIQUE = \"14\";\n const DEFAULT_CSS_FONT_WEIGHT = \"400\";\n const CSS_FONT_WEIGHT_VALUES = new Set([\"100\", \"200\", \"300\", \"400\", \"500\", \"600\", \"700\", \"800\", \"900\", \"1000\", \"normal\", \"bold\", \"bolder\", \"lighter\"]);\n const {\n fontFamily,\n fontWeight,\n italicAngle\n } = cssFontInfo;\n if (!validateFontName(fontFamily, true)) {\n return false;\n }\n const weight = fontWeight ? fontWeight.toString() : \"\";\n cssFontInfo.fontWeight = CSS_FONT_WEIGHT_VALUES.has(weight) ? weight : DEFAULT_CSS_FONT_WEIGHT;\n const angle = parseFloat(italicAngle);\n cssFontInfo.italicAngle = isNaN(angle) || angle < -90 || angle > 90 ? DEFAULT_CSS_FONT_OBLIQUE : italicAngle.toString();\n return true;\n}\nfunction recoverJsURL(str) {\n const URL_OPEN_METHODS = [\"app.launchURL\", \"window.open\", \"xfa.host.gotoURL\"];\n const regex = new RegExp(\"^\\\\s*(\" + URL_OPEN_METHODS.join(\"|\").replaceAll(\".\", \"\\\\.\") + \")\\\\((?:'|\\\")([^'\\\"]*)(?:'|\\\")(?:,\\\\s*(\\\\w+)\\\\)|\\\\))\", \"i\");\n const jsUrl = regex.exec(str);\n if (jsUrl?.[2]) {\n const url = jsUrl[2];\n let newWindow = false;\n if (jsUrl[3] === \"true\" && jsUrl[1] === \"app.launchURL\") {\n newWindow = true;\n }\n return {\n url,\n newWindow\n };\n }\n return null;\n}\nfunction numberToString(value) {\n if (Number.isInteger(value)) {\n return value.toString();\n }\n const roundedValue = Math.round(value * 100);\n if (roundedValue % 100 === 0) {\n return (roundedValue / 100).toString();\n }\n if (roundedValue % 10 === 0) {\n return value.toFixed(1);\n }\n return value.toFixed(2);\n}\nfunction getNewAnnotationsMap(annotationStorage) {\n if (!annotationStorage) {\n return null;\n }\n const newAnnotationsByPage = new Map();\n for (const [key, value] of annotationStorage) {\n if (!key.startsWith(_util.AnnotationEditorPrefix)) {\n continue;\n }\n let annotations = newAnnotationsByPage.get(value.pageIndex);\n if (!annotations) {\n annotations = [];\n newAnnotationsByPage.set(value.pageIndex, annotations);\n }\n annotations.push(value);\n }\n return newAnnotationsByPage.size > 0 ? newAnnotationsByPage : null;\n}\nfunction isAscii(str) {\n return /^[\\x00-\\x7F]*$/.test(str);\n}\nfunction stringToUTF16HexString(str) {\n const buf = [];\n for (let i = 0, ii = str.length; i < ii; i++) {\n const char = str.charCodeAt(i);\n buf.push((char >> 8 & 0xff).toString(16).padStart(2, \"0\"), (char & 0xff).toString(16).padStart(2, \"0\"));\n }\n return buf.join(\"\");\n}\nfunction stringToUTF16String(str, bigEndian = false) {\n const buf = [];\n if (bigEndian) {\n buf.push(\"\\xFE\\xFF\");\n }\n for (let i = 0, ii = str.length; i < ii; i++) {\n const char = str.charCodeAt(i);\n buf.push(String.fromCharCode(char >> 8 & 0xff), String.fromCharCode(char & 0xff));\n }\n return buf.join(\"\");\n}\nfunction getRotationMatrix(rotation, width, height) {\n switch (rotation) {\n case 90:\n return [0, 1, -1, 0, width, 0];\n case 180:\n return [-1, 0, 0, -1, width, height];\n case 270:\n return [0, -1, 1, 0, 0, height];\n default:\n throw new Error(\"Invalid rotation\");\n }\n}\n\n/***/ }),\n/* 4 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.RefSetCache = exports.RefSet = exports.Ref = exports.Name = exports.EOF = exports.Dict = exports.Cmd = exports.CIRCULAR_REF = void 0;\nexports.clearPrimitiveCaches = clearPrimitiveCaches;\nexports.isCmd = isCmd;\nexports.isDict = isDict;\nexports.isName = isName;\nexports.isRefsEqual = isRefsEqual;\nvar _util = __w_pdfjs_require__(2);\nconst CIRCULAR_REF = Symbol(\"CIRCULAR_REF\");\nexports.CIRCULAR_REF = CIRCULAR_REF;\nconst EOF = Symbol(\"EOF\");\nexports.EOF = EOF;\nlet CmdCache = Object.create(null);\nlet NameCache = Object.create(null);\nlet RefCache = Object.create(null);\nfunction clearPrimitiveCaches() {\n CmdCache = Object.create(null);\n NameCache = Object.create(null);\n RefCache = Object.create(null);\n}\nclass Name {\n constructor(name) {\n this.name = name;\n }\n static get(name) {\n return NameCache[name] ||= new Name(name);\n }\n}\nexports.Name = Name;\nclass Cmd {\n constructor(cmd) {\n this.cmd = cmd;\n }\n static get(cmd) {\n return CmdCache[cmd] ||= new Cmd(cmd);\n }\n}\nexports.Cmd = Cmd;\nconst nonSerializable = function nonSerializableClosure() {\n return nonSerializable;\n};\nclass Dict {\n constructor(xref = null) {\n this._map = Object.create(null);\n this.xref = xref;\n this.objId = null;\n this.suppressEncryption = false;\n this.__nonSerializable__ = nonSerializable;\n }\n assignXref(newXref) {\n this.xref = newXref;\n }\n get size() {\n return Object.keys(this._map).length;\n }\n get(key1, key2, key3) {\n let value = this._map[key1];\n if (value === undefined && key2 !== undefined) {\n value = this._map[key2];\n if (value === undefined && key3 !== undefined) {\n value = this._map[key3];\n }\n }\n if (value instanceof Ref && this.xref) {\n return this.xref.fetch(value, this.suppressEncryption);\n }\n return value;\n }\n async getAsync(key1, key2, key3) {\n let value = this._map[key1];\n if (value === undefined && key2 !== undefined) {\n value = this._map[key2];\n if (value === undefined && key3 !== undefined) {\n value = this._map[key3];\n }\n }\n if (value instanceof Ref && this.xref) {\n return this.xref.fetchAsync(value, this.suppressEncryption);\n }\n return value;\n }\n getArray(key1, key2, key3) {\n let value = this._map[key1];\n if (value === undefined && key2 !== undefined) {\n value = this._map[key2];\n if (value === undefined && key3 !== undefined) {\n value = this._map[key3];\n }\n }\n if (value instanceof Ref && this.xref) {\n value = this.xref.fetch(value, this.suppressEncryption);\n }\n if (Array.isArray(value)) {\n value = value.slice();\n for (let i = 0, ii = value.length; i < ii; i++) {\n if (value[i] instanceof Ref && this.xref) {\n value[i] = this.xref.fetch(value[i], this.suppressEncryption);\n }\n }\n }\n return value;\n }\n getRaw(key) {\n return this._map[key];\n }\n getKeys() {\n return Object.keys(this._map);\n }\n getRawValues() {\n return Object.values(this._map);\n }\n set(key, value) {\n this._map[key] = value;\n }\n has(key) {\n return this._map[key] !== undefined;\n }\n forEach(callback) {\n for (const key in this._map) {\n callback(key, this.get(key));\n }\n }\n static get empty() {\n const emptyDict = new Dict(null);\n emptyDict.set = (key, value) => {\n (0, _util.unreachable)(\"Should not call `set` on the empty dictionary.\");\n };\n return (0, _util.shadow)(this, \"empty\", emptyDict);\n }\n static merge({\n xref,\n dictArray,\n mergeSubDicts = false\n }) {\n const mergedDict = new Dict(xref),\n properties = new Map();\n for (const dict of dictArray) {\n if (!(dict instanceof Dict)) {\n continue;\n }\n for (const [key, value] of Object.entries(dict._map)) {\n let property = properties.get(key);\n if (property === undefined) {\n property = [];\n properties.set(key, property);\n } else if (!mergeSubDicts || !(value instanceof Dict)) {\n continue;\n }\n property.push(value);\n }\n }\n for (const [name, values] of properties) {\n if (values.length === 1 || !(values[0] instanceof Dict)) {\n mergedDict._map[name] = values[0];\n continue;\n }\n const subDict = new Dict(xref);\n for (const dict of values) {\n for (const [key, value] of Object.entries(dict._map)) {\n if (subDict._map[key] === undefined) {\n subDict._map[key] = value;\n }\n }\n }\n if (subDict.size > 0) {\n mergedDict._map[name] = subDict;\n }\n }\n properties.clear();\n return mergedDict.size > 0 ? mergedDict : Dict.empty;\n }\n clone() {\n const dict = new Dict(this.xref);\n for (const key of this.getKeys()) {\n dict.set(key, this.getRaw(key));\n }\n return dict;\n }\n}\nexports.Dict = Dict;\nclass Ref {\n constructor(num, gen) {\n this.num = num;\n this.gen = gen;\n }\n toString() {\n if (this.gen === 0) {\n return `${this.num}R`;\n }\n return `${this.num}R${this.gen}`;\n }\n static fromString(str) {\n const ref = RefCache[str];\n if (ref) {\n return ref;\n }\n const m = /^(\\d+)R(\\d*)$/.exec(str);\n if (!m || m[1] === \"0\") {\n return null;\n }\n return RefCache[str] = new Ref(parseInt(m[1]), !m[2] ? 0 : parseInt(m[2]));\n }\n static get(num, gen) {\n const key = gen === 0 ? `${num}R` : `${num}R${gen}`;\n return RefCache[key] ||= new Ref(num, gen);\n }\n}\nexports.Ref = Ref;\nclass RefSet {\n constructor(parent = null) {\n this._set = new Set(parent?._set);\n }\n has(ref) {\n return this._set.has(ref.toString());\n }\n put(ref) {\n this._set.add(ref.toString());\n }\n remove(ref) {\n this._set.delete(ref.toString());\n }\n [Symbol.iterator]() {\n return this._set.values();\n }\n clear() {\n this._set.clear();\n }\n}\nexports.RefSet = RefSet;\nclass RefSetCache {\n constructor() {\n this._map = new Map();\n }\n get size() {\n return this._map.size;\n }\n get(ref) {\n return this._map.get(ref.toString());\n }\n has(ref) {\n return this._map.has(ref.toString());\n }\n put(ref, obj) {\n this._map.set(ref.toString(), obj);\n }\n putAlias(ref, aliasRef) {\n this._map.set(ref.toString(), this.get(aliasRef));\n }\n [Symbol.iterator]() {\n return this._map.values();\n }\n clear() {\n this._map.clear();\n }\n}\nexports.RefSetCache = RefSetCache;\nfunction isName(v, name) {\n return v instanceof Name && (name === undefined || v.name === name);\n}\nfunction isCmd(v, cmd) {\n return v instanceof Cmd && (cmd === undefined || v.cmd === cmd);\n}\nfunction isDict(v, type) {\n return v instanceof Dict && (type === undefined || isName(v.get(\"Type\"), type));\n}\nfunction isRefsEqual(v1, v2) {\n return v1.num === v2.num && v1.gen === v2.gen;\n}\n\n/***/ }),\n/* 5 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.BaseStream = void 0;\nvar _util = __w_pdfjs_require__(2);\nclass BaseStream {\n constructor() {\n if (this.constructor === BaseStream) {\n (0, _util.unreachable)(\"Cannot initialize BaseStream.\");\n }\n }\n get length() {\n (0, _util.unreachable)(\"Abstract getter `length` accessed\");\n }\n get isEmpty() {\n (0, _util.unreachable)(\"Abstract getter `isEmpty` accessed\");\n }\n get isDataLoaded() {\n return (0, _util.shadow)(this, \"isDataLoaded\", true);\n }\n getByte() {\n (0, _util.unreachable)(\"Abstract method `getByte` called\");\n }\n getBytes(length) {\n (0, _util.unreachable)(\"Abstract method `getBytes` called\");\n }\n peekByte() {\n const peekedByte = this.getByte();\n if (peekedByte !== -1) {\n this.pos--;\n }\n return peekedByte;\n }\n peekBytes(length) {\n const bytes = this.getBytes(length);\n this.pos -= bytes.length;\n return bytes;\n }\n getUint16() {\n const b0 = this.getByte();\n const b1 = this.getByte();\n if (b0 === -1 || b1 === -1) {\n return -1;\n }\n return (b0 << 8) + b1;\n }\n getInt32() {\n const b0 = this.getByte();\n const b1 = this.getByte();\n const b2 = this.getByte();\n const b3 = this.getByte();\n return (b0 << 24) + (b1 << 16) + (b2 << 8) + b3;\n }\n getByteRange(begin, end) {\n (0, _util.unreachable)(\"Abstract method `getByteRange` called\");\n }\n getString(length) {\n return (0, _util.bytesToString)(this.getBytes(length));\n }\n skip(n) {\n this.pos += n || 1;\n }\n reset() {\n (0, _util.unreachable)(\"Abstract method `reset` called\");\n }\n moveStart() {\n (0, _util.unreachable)(\"Abstract method `moveStart` called\");\n }\n makeSubStream(start, length, dict = null) {\n (0, _util.unreachable)(\"Abstract method `makeSubStream` called\");\n }\n getBaseStreams() {\n return null;\n }\n}\nexports.BaseStream = BaseStream;\n\n/***/ }),\n/* 6 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.NetworkPdfManager = exports.LocalPdfManager = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _chunked_stream = __w_pdfjs_require__(7);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _document = __w_pdfjs_require__(9);\nvar _stream = __w_pdfjs_require__(8);\nfunction parseDocBaseUrl(url) {\n if (url) {\n const absoluteUrl = (0, _util.createValidAbsoluteUrl)(url);\n if (absoluteUrl) {\n return absoluteUrl.href;\n }\n (0, _util.warn)(`Invalid absolute docBaseUrl: \"${url}\".`);\n }\n return null;\n}\nclass BasePdfManager {\n constructor(args) {\n if (this.constructor === BasePdfManager) {\n (0, _util.unreachable)(\"Cannot initialize BasePdfManager.\");\n }\n this._docBaseUrl = parseDocBaseUrl(args.docBaseUrl);\n this._docId = args.docId;\n this._password = args.password;\n this.enableXfa = args.enableXfa;\n args.evaluatorOptions.isOffscreenCanvasSupported &&= _util.FeatureTest.isOffscreenCanvasSupported;\n this.evaluatorOptions = args.evaluatorOptions;\n }\n get docId() {\n return this._docId;\n }\n get password() {\n return this._password;\n }\n get docBaseUrl() {\n return this._docBaseUrl;\n }\n get catalog() {\n return this.pdfDocument.catalog;\n }\n ensureDoc(prop, args) {\n return this.ensure(this.pdfDocument, prop, args);\n }\n ensureXRef(prop, args) {\n return this.ensure(this.pdfDocument.xref, prop, args);\n }\n ensureCatalog(prop, args) {\n return this.ensure(this.pdfDocument.catalog, prop, args);\n }\n getPage(pageIndex) {\n return this.pdfDocument.getPage(pageIndex);\n }\n fontFallback(id, handler) {\n return this.pdfDocument.fontFallback(id, handler);\n }\n loadXfaFonts(handler, task) {\n return this.pdfDocument.loadXfaFonts(handler, task);\n }\n loadXfaImages() {\n return this.pdfDocument.loadXfaImages();\n }\n serializeXfaData(annotationStorage) {\n return this.pdfDocument.serializeXfaData(annotationStorage);\n }\n cleanup(manuallyTriggered = false) {\n return this.pdfDocument.cleanup(manuallyTriggered);\n }\n async ensure(obj, prop, args) {\n (0, _util.unreachable)(\"Abstract method `ensure` called\");\n }\n requestRange(begin, end) {\n (0, _util.unreachable)(\"Abstract method `requestRange` called\");\n }\n requestLoadedStream(noFetch = false) {\n (0, _util.unreachable)(\"Abstract method `requestLoadedStream` called\");\n }\n sendProgressiveData(chunk) {\n (0, _util.unreachable)(\"Abstract method `sendProgressiveData` called\");\n }\n updatePassword(password) {\n this._password = password;\n }\n terminate(reason) {\n (0, _util.unreachable)(\"Abstract method `terminate` called\");\n }\n}\nclass LocalPdfManager extends BasePdfManager {\n constructor(args) {\n super(args);\n const stream = new _stream.Stream(args.source);\n this.pdfDocument = new _document.PDFDocument(this, stream);\n this._loadedStreamPromise = Promise.resolve(stream);\n }\n async ensure(obj, prop, args) {\n const value = obj[prop];\n if (typeof value === \"function\") {\n return value.apply(obj, args);\n }\n return value;\n }\n requestRange(begin, end) {\n return Promise.resolve();\n }\n requestLoadedStream(noFetch = false) {\n return this._loadedStreamPromise;\n }\n terminate(reason) {}\n}\nexports.LocalPdfManager = LocalPdfManager;\nclass NetworkPdfManager extends BasePdfManager {\n constructor(args) {\n super(args);\n this.streamManager = new _chunked_stream.ChunkedStreamManager(args.source, {\n msgHandler: args.handler,\n length: args.length,\n disableAutoFetch: args.disableAutoFetch,\n rangeChunkSize: args.rangeChunkSize\n });\n this.pdfDocument = new _document.PDFDocument(this, this.streamManager.getStream());\n }\n async ensure(obj, prop, args) {\n try {\n const value = obj[prop];\n if (typeof value === \"function\") {\n return value.apply(obj, args);\n }\n return value;\n } catch (ex) {\n if (!(ex instanceof _core_utils.MissingDataException)) {\n throw ex;\n }\n await this.requestRange(ex.begin, ex.end);\n return this.ensure(obj, prop, args);\n }\n }\n requestRange(begin, end) {\n return this.streamManager.requestRange(begin, end);\n }\n requestLoadedStream(noFetch = false) {\n return this.streamManager.requestAllChunks(noFetch);\n }\n sendProgressiveData(chunk) {\n this.streamManager.onReceiveData({\n chunk\n });\n }\n terminate(reason) {\n this.streamManager.abort(reason);\n }\n}\nexports.NetworkPdfManager = NetworkPdfManager;\n\n/***/ }),\n/* 7 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ChunkedStreamManager = exports.ChunkedStream = void 0;\nvar _core_utils = __w_pdfjs_require__(3);\nvar _util = __w_pdfjs_require__(2);\nvar _stream = __w_pdfjs_require__(8);\nclass ChunkedStream extends _stream.Stream {\n constructor(length, chunkSize, manager) {\n super(new Uint8Array(length), 0, length, null);\n this.chunkSize = chunkSize;\n this._loadedChunks = new Set();\n this.numChunks = Math.ceil(length / chunkSize);\n this.manager = manager;\n this.progressiveDataLength = 0;\n this.lastSuccessfulEnsureByteChunk = -1;\n }\n getMissingChunks() {\n const chunks = [];\n for (let chunk = 0, n = this.numChunks; chunk < n; ++chunk) {\n if (!this._loadedChunks.has(chunk)) {\n chunks.push(chunk);\n }\n }\n return chunks;\n }\n get numChunksLoaded() {\n return this._loadedChunks.size;\n }\n get isDataLoaded() {\n return this.numChunksLoaded === this.numChunks;\n }\n onReceiveData(begin, chunk) {\n const chunkSize = this.chunkSize;\n if (begin % chunkSize !== 0) {\n throw new Error(`Bad begin offset: ${begin}`);\n }\n const end = begin + chunk.byteLength;\n if (end % chunkSize !== 0 && end !== this.bytes.length) {\n throw new Error(`Bad end offset: ${end}`);\n }\n this.bytes.set(new Uint8Array(chunk), begin);\n const beginChunk = Math.floor(begin / chunkSize);\n const endChunk = Math.floor((end - 1) / chunkSize) + 1;\n for (let curChunk = beginChunk; curChunk < endChunk; ++curChunk) {\n this._loadedChunks.add(curChunk);\n }\n }\n onReceiveProgressiveData(data) {\n let position = this.progressiveDataLength;\n const beginChunk = Math.floor(position / this.chunkSize);\n this.bytes.set(new Uint8Array(data), position);\n position += data.byteLength;\n this.progressiveDataLength = position;\n const endChunk = position >= this.end ? this.numChunks : Math.floor(position / this.chunkSize);\n for (let curChunk = beginChunk; curChunk < endChunk; ++curChunk) {\n this._loadedChunks.add(curChunk);\n }\n }\n ensureByte(pos) {\n if (pos < this.progressiveDataLength) {\n return;\n }\n const chunk = Math.floor(pos / this.chunkSize);\n if (chunk > this.numChunks) {\n return;\n }\n if (chunk === this.lastSuccessfulEnsureByteChunk) {\n return;\n }\n if (!this._loadedChunks.has(chunk)) {\n throw new _core_utils.MissingDataException(pos, pos + 1);\n }\n this.lastSuccessfulEnsureByteChunk = chunk;\n }\n ensureRange(begin, end) {\n if (begin >= end) {\n return;\n }\n if (end <= this.progressiveDataLength) {\n return;\n }\n const beginChunk = Math.floor(begin / this.chunkSize);\n if (beginChunk > this.numChunks) {\n return;\n }\n const endChunk = Math.min(Math.floor((end - 1) / this.chunkSize) + 1, this.numChunks);\n for (let chunk = beginChunk; chunk < endChunk; ++chunk) {\n if (!this._loadedChunks.has(chunk)) {\n throw new _core_utils.MissingDataException(begin, end);\n }\n }\n }\n nextEmptyChunk(beginChunk) {\n const numChunks = this.numChunks;\n for (let i = 0; i < numChunks; ++i) {\n const chunk = (beginChunk + i) % numChunks;\n if (!this._loadedChunks.has(chunk)) {\n return chunk;\n }\n }\n return null;\n }\n hasChunk(chunk) {\n return this._loadedChunks.has(chunk);\n }\n getByte() {\n const pos = this.pos;\n if (pos >= this.end) {\n return -1;\n }\n if (pos >= this.progressiveDataLength) {\n this.ensureByte(pos);\n }\n return this.bytes[this.pos++];\n }\n getBytes(length) {\n const bytes = this.bytes;\n const pos = this.pos;\n const strEnd = this.end;\n if (!length) {\n if (strEnd > this.progressiveDataLength) {\n this.ensureRange(pos, strEnd);\n }\n return bytes.subarray(pos, strEnd);\n }\n let end = pos + length;\n if (end > strEnd) {\n end = strEnd;\n }\n if (end > this.progressiveDataLength) {\n this.ensureRange(pos, end);\n }\n this.pos = end;\n return bytes.subarray(pos, end);\n }\n getByteRange(begin, end) {\n if (begin < 0) {\n begin = 0;\n }\n if (end > this.end) {\n end = this.end;\n }\n if (end > this.progressiveDataLength) {\n this.ensureRange(begin, end);\n }\n return this.bytes.subarray(begin, end);\n }\n makeSubStream(start, length, dict = null) {\n if (length) {\n if (start + length > this.progressiveDataLength) {\n this.ensureRange(start, start + length);\n }\n } else if (start >= this.progressiveDataLength) {\n this.ensureByte(start);\n }\n function ChunkedStreamSubstream() {}\n ChunkedStreamSubstream.prototype = Object.create(this);\n ChunkedStreamSubstream.prototype.getMissingChunks = function () {\n const chunkSize = this.chunkSize;\n const beginChunk = Math.floor(this.start / chunkSize);\n const endChunk = Math.floor((this.end - 1) / chunkSize) + 1;\n const missingChunks = [];\n for (let chunk = beginChunk; chunk < endChunk; ++chunk) {\n if (!this._loadedChunks.has(chunk)) {\n missingChunks.push(chunk);\n }\n }\n return missingChunks;\n };\n Object.defineProperty(ChunkedStreamSubstream.prototype, \"isDataLoaded\", {\n get() {\n if (this.numChunksLoaded === this.numChunks) {\n return true;\n }\n return this.getMissingChunks().length === 0;\n },\n configurable: true\n });\n const subStream = new ChunkedStreamSubstream();\n subStream.pos = subStream.start = start;\n subStream.end = start + length || this.end;\n subStream.dict = dict;\n return subStream;\n }\n getBaseStreams() {\n return [this];\n }\n}\nexports.ChunkedStream = ChunkedStream;\nclass ChunkedStreamManager {\n constructor(pdfNetworkStream, args) {\n this.length = args.length;\n this.chunkSize = args.rangeChunkSize;\n this.stream = new ChunkedStream(this.length, this.chunkSize, this);\n this.pdfNetworkStream = pdfNetworkStream;\n this.disableAutoFetch = args.disableAutoFetch;\n this.msgHandler = args.msgHandler;\n this.currRequestId = 0;\n this._chunksNeededByRequest = new Map();\n this._requestsByChunk = new Map();\n this._promisesByRequest = new Map();\n this.progressiveDataLength = 0;\n this.aborted = false;\n this._loadedStreamCapability = new _util.PromiseCapability();\n }\n sendRequest(begin, end) {\n const rangeReader = this.pdfNetworkStream.getRangeReader(begin, end);\n if (!rangeReader.isStreamingSupported) {\n rangeReader.onProgress = this.onProgress.bind(this);\n }\n let chunks = [],\n loaded = 0;\n return new Promise((resolve, reject) => {\n const readChunk = ({\n value,\n done\n }) => {\n try {\n if (done) {\n const chunkData = (0, _core_utils.arrayBuffersToBytes)(chunks);\n chunks = null;\n resolve(chunkData);\n return;\n }\n loaded += value.byteLength;\n if (rangeReader.isStreamingSupported) {\n this.onProgress({\n loaded\n });\n }\n chunks.push(value);\n rangeReader.read().then(readChunk, reject);\n } catch (e) {\n reject(e);\n }\n };\n rangeReader.read().then(readChunk, reject);\n }).then(data => {\n if (this.aborted) {\n return;\n }\n this.onReceiveData({\n chunk: data,\n begin\n });\n });\n }\n requestAllChunks(noFetch = false) {\n if (!noFetch) {\n const missingChunks = this.stream.getMissingChunks();\n this._requestChunks(missingChunks);\n }\n return this._loadedStreamCapability.promise;\n }\n _requestChunks(chunks) {\n const requestId = this.currRequestId++;\n const chunksNeeded = new Set();\n this._chunksNeededByRequest.set(requestId, chunksNeeded);\n for (const chunk of chunks) {\n if (!this.stream.hasChunk(chunk)) {\n chunksNeeded.add(chunk);\n }\n }\n if (chunksNeeded.size === 0) {\n return Promise.resolve();\n }\n const capability = new _util.PromiseCapability();\n this._promisesByRequest.set(requestId, capability);\n const chunksToRequest = [];\n for (const chunk of chunksNeeded) {\n let requestIds = this._requestsByChunk.get(chunk);\n if (!requestIds) {\n requestIds = [];\n this._requestsByChunk.set(chunk, requestIds);\n chunksToRequest.push(chunk);\n }\n requestIds.push(requestId);\n }\n if (chunksToRequest.length > 0) {\n const groupedChunksToRequest = this.groupChunks(chunksToRequest);\n for (const groupedChunk of groupedChunksToRequest) {\n const begin = groupedChunk.beginChunk * this.chunkSize;\n const end = Math.min(groupedChunk.endChunk * this.chunkSize, this.length);\n this.sendRequest(begin, end).catch(capability.reject);\n }\n }\n return capability.promise.catch(reason => {\n if (this.aborted) {\n return;\n }\n throw reason;\n });\n }\n getStream() {\n return this.stream;\n }\n requestRange(begin, end) {\n end = Math.min(end, this.length);\n const beginChunk = this.getBeginChunk(begin);\n const endChunk = this.getEndChunk(end);\n const chunks = [];\n for (let chunk = beginChunk; chunk < endChunk; ++chunk) {\n chunks.push(chunk);\n }\n return this._requestChunks(chunks);\n }\n requestRanges(ranges = []) {\n const chunksToRequest = [];\n for (const range of ranges) {\n const beginChunk = this.getBeginChunk(range.begin);\n const endChunk = this.getEndChunk(range.end);\n for (let chunk = beginChunk; chunk < endChunk; ++chunk) {\n if (!chunksToRequest.includes(chunk)) {\n chunksToRequest.push(chunk);\n }\n }\n }\n chunksToRequest.sort(function (a, b) {\n return a - b;\n });\n return this._requestChunks(chunksToRequest);\n }\n groupChunks(chunks) {\n const groupedChunks = [];\n let beginChunk = -1;\n let prevChunk = -1;\n for (let i = 0, ii = chunks.length; i < ii; ++i) {\n const chunk = chunks[i];\n if (beginChunk < 0) {\n beginChunk = chunk;\n }\n if (prevChunk >= 0 && prevChunk + 1 !== chunk) {\n groupedChunks.push({\n beginChunk,\n endChunk: prevChunk + 1\n });\n beginChunk = chunk;\n }\n if (i + 1 === chunks.length) {\n groupedChunks.push({\n beginChunk,\n endChunk: chunk + 1\n });\n }\n prevChunk = chunk;\n }\n return groupedChunks;\n }\n onProgress(args) {\n this.msgHandler.send(\"DocProgress\", {\n loaded: this.stream.numChunksLoaded * this.chunkSize + args.loaded,\n total: this.length\n });\n }\n onReceiveData(args) {\n const chunk = args.chunk;\n const isProgressive = args.begin === undefined;\n const begin = isProgressive ? this.progressiveDataLength : args.begin;\n const end = begin + chunk.byteLength;\n const beginChunk = Math.floor(begin / this.chunkSize);\n const endChunk = end < this.length ? Math.floor(end / this.chunkSize) : Math.ceil(end / this.chunkSize);\n if (isProgressive) {\n this.stream.onReceiveProgressiveData(chunk);\n this.progressiveDataLength = end;\n } else {\n this.stream.onReceiveData(begin, chunk);\n }\n if (this.stream.isDataLoaded) {\n this._loadedStreamCapability.resolve(this.stream);\n }\n const loadedRequests = [];\n for (let curChunk = beginChunk; curChunk < endChunk; ++curChunk) {\n const requestIds = this._requestsByChunk.get(curChunk);\n if (!requestIds) {\n continue;\n }\n this._requestsByChunk.delete(curChunk);\n for (const requestId of requestIds) {\n const chunksNeeded = this._chunksNeededByRequest.get(requestId);\n if (chunksNeeded.has(curChunk)) {\n chunksNeeded.delete(curChunk);\n }\n if (chunksNeeded.size > 0) {\n continue;\n }\n loadedRequests.push(requestId);\n }\n }\n if (!this.disableAutoFetch && this._requestsByChunk.size === 0) {\n let nextEmptyChunk;\n if (this.stream.numChunksLoaded === 1) {\n const lastChunk = this.stream.numChunks - 1;\n if (!this.stream.hasChunk(lastChunk)) {\n nextEmptyChunk = lastChunk;\n }\n } else {\n nextEmptyChunk = this.stream.nextEmptyChunk(endChunk);\n }\n if (Number.isInteger(nextEmptyChunk)) {\n this._requestChunks([nextEmptyChunk]);\n }\n }\n for (const requestId of loadedRequests) {\n const capability = this._promisesByRequest.get(requestId);\n this._promisesByRequest.delete(requestId);\n capability.resolve();\n }\n this.msgHandler.send(\"DocProgress\", {\n loaded: this.stream.numChunksLoaded * this.chunkSize,\n total: this.length\n });\n }\n onError(err) {\n this._loadedStreamCapability.reject(err);\n }\n getBeginChunk(begin) {\n return Math.floor(begin / this.chunkSize);\n }\n getEndChunk(end) {\n return Math.floor((end - 1) / this.chunkSize) + 1;\n }\n abort(reason) {\n this.aborted = true;\n this.pdfNetworkStream?.cancelAllRequests(reason);\n for (const capability of this._promisesByRequest.values()) {\n capability.reject(reason);\n }\n }\n}\nexports.ChunkedStreamManager = ChunkedStreamManager;\n\n/***/ }),\n/* 8 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StringStream = exports.Stream = exports.NullStream = void 0;\nvar _base_stream = __w_pdfjs_require__(5);\nvar _util = __w_pdfjs_require__(2);\nclass Stream extends _base_stream.BaseStream {\n constructor(arrayBuffer, start, length, dict) {\n super();\n this.bytes = arrayBuffer instanceof Uint8Array ? arrayBuffer : new Uint8Array(arrayBuffer);\n this.start = start || 0;\n this.pos = this.start;\n this.end = start + length || this.bytes.length;\n this.dict = dict;\n }\n get length() {\n return this.end - this.start;\n }\n get isEmpty() {\n return this.length === 0;\n }\n getByte() {\n if (this.pos >= this.end) {\n return -1;\n }\n return this.bytes[this.pos++];\n }\n getBytes(length) {\n const bytes = this.bytes;\n const pos = this.pos;\n const strEnd = this.end;\n if (!length) {\n return bytes.subarray(pos, strEnd);\n }\n let end = pos + length;\n if (end > strEnd) {\n end = strEnd;\n }\n this.pos = end;\n return bytes.subarray(pos, end);\n }\n getByteRange(begin, end) {\n if (begin < 0) {\n begin = 0;\n }\n if (end > this.end) {\n end = this.end;\n }\n return this.bytes.subarray(begin, end);\n }\n reset() {\n this.pos = this.start;\n }\n moveStart() {\n this.start = this.pos;\n }\n makeSubStream(start, length, dict = null) {\n return new Stream(this.bytes.buffer, start, length, dict);\n }\n}\nexports.Stream = Stream;\nclass StringStream extends Stream {\n constructor(str) {\n super((0, _util.stringToBytes)(str));\n }\n}\nexports.StringStream = StringStream;\nclass NullStream extends Stream {\n constructor() {\n super(new Uint8Array(0));\n }\n}\nexports.NullStream = NullStream;\n\n/***/ }),\n/* 9 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Page = exports.PDFDocument = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _annotation = __w_pdfjs_require__(10);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _primitives = __w_pdfjs_require__(4);\nvar _xfa_fonts = __w_pdfjs_require__(51);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _crypto = __w_pdfjs_require__(74);\nvar _catalog = __w_pdfjs_require__(66);\nvar _cleanup_helper = __w_pdfjs_require__(68);\nvar _dataset_reader = __w_pdfjs_require__(102);\nvar _parser = __w_pdfjs_require__(16);\nvar _stream = __w_pdfjs_require__(8);\nvar _object_loader = __w_pdfjs_require__(76);\nvar _operator_list = __w_pdfjs_require__(64);\nvar _evaluator = __w_pdfjs_require__(13);\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _struct_tree = __w_pdfjs_require__(72);\nvar _writer = __w_pdfjs_require__(73);\nvar _factory = __w_pdfjs_require__(77);\nvar _xref = __w_pdfjs_require__(103);\nconst DEFAULT_USER_UNIT = 1.0;\nconst LETTER_SIZE_MEDIABOX = [0, 0, 612, 792];\nclass Page {\n constructor({\n pdfManager,\n xref,\n pageIndex,\n pageDict,\n ref,\n globalIdFactory,\n fontCache,\n builtInCMapCache,\n standardFontDataCache,\n globalImageCache,\n systemFontCache,\n nonBlendModesSet,\n xfaFactory\n }) {\n this.pdfManager = pdfManager;\n this.pageIndex = pageIndex;\n this.pageDict = pageDict;\n this.xref = xref;\n this.ref = ref;\n this.fontCache = fontCache;\n this.builtInCMapCache = builtInCMapCache;\n this.standardFontDataCache = standardFontDataCache;\n this.globalImageCache = globalImageCache;\n this.systemFontCache = systemFontCache;\n this.nonBlendModesSet = nonBlendModesSet;\n this.evaluatorOptions = pdfManager.evaluatorOptions;\n this.resourcesPromise = null;\n this.xfaFactory = xfaFactory;\n const idCounters = {\n obj: 0\n };\n this._localIdFactory = class extends globalIdFactory {\n static createObjId() {\n return `p${pageIndex}_${++idCounters.obj}`;\n }\n static getPageObjId() {\n return `p${ref.toString()}`;\n }\n };\n }\n _getInheritableProperty(key, getArray = false) {\n const value = (0, _core_utils.getInheritableProperty)({\n dict: this.pageDict,\n key,\n getArray,\n stopWhenFound: false\n });\n if (!Array.isArray(value)) {\n return value;\n }\n if (value.length === 1 || !(value[0] instanceof _primitives.Dict)) {\n return value[0];\n }\n return _primitives.Dict.merge({\n xref: this.xref,\n dictArray: value\n });\n }\n get content() {\n return this.pageDict.getArray(\"Contents\");\n }\n get resources() {\n const resources = this._getInheritableProperty(\"Resources\");\n return (0, _util.shadow)(this, \"resources\", resources instanceof _primitives.Dict ? resources : _primitives.Dict.empty);\n }\n _getBoundingBox(name) {\n if (this.xfaData) {\n return this.xfaData.bbox;\n }\n let box = this._getInheritableProperty(name, true);\n if (Array.isArray(box) && box.length === 4) {\n box = _util.Util.normalizeRect(box);\n if (box[2] - box[0] > 0 && box[3] - box[1] > 0) {\n return box;\n }\n (0, _util.warn)(`Empty, or invalid, /${name} entry.`);\n }\n return null;\n }\n get mediaBox() {\n return (0, _util.shadow)(this, \"mediaBox\", this._getBoundingBox(\"MediaBox\") || LETTER_SIZE_MEDIABOX);\n }\n get cropBox() {\n return (0, _util.shadow)(this, \"cropBox\", this._getBoundingBox(\"CropBox\") || this.mediaBox);\n }\n get userUnit() {\n let obj = this.pageDict.get(\"UserUnit\");\n if (typeof obj !== \"number\" || obj <= 0) {\n obj = DEFAULT_USER_UNIT;\n }\n return (0, _util.shadow)(this, \"userUnit\", obj);\n }\n get view() {\n const {\n cropBox,\n mediaBox\n } = this;\n if (cropBox !== mediaBox && !(0, _util.isArrayEqual)(cropBox, mediaBox)) {\n const box = _util.Util.intersect(cropBox, mediaBox);\n if (box && box[2] - box[0] > 0 && box[3] - box[1] > 0) {\n return (0, _util.shadow)(this, \"view\", box);\n }\n (0, _util.warn)(\"Empty /CropBox and /MediaBox intersection.\");\n }\n return (0, _util.shadow)(this, \"view\", mediaBox);\n }\n get rotate() {\n let rotate = this._getInheritableProperty(\"Rotate\") || 0;\n if (rotate % 90 !== 0) {\n rotate = 0;\n } else if (rotate >= 360) {\n rotate %= 360;\n } else if (rotate < 0) {\n rotate = (rotate % 360 + 360) % 360;\n }\n return (0, _util.shadow)(this, \"rotate\", rotate);\n }\n _onSubStreamError(reason, objId) {\n if (this.evaluatorOptions.ignoreErrors) {\n (0, _util.warn)(`getContentStream - ignoring sub-stream (${objId}): \"${reason}\".`);\n return;\n }\n throw reason;\n }\n getContentStream() {\n return this.pdfManager.ensure(this, \"content\").then(content => {\n if (content instanceof _base_stream.BaseStream) {\n return content;\n }\n if (Array.isArray(content)) {\n return new _decode_stream.StreamsSequenceStream(content, this._onSubStreamError.bind(this));\n }\n return new _stream.NullStream();\n });\n }\n get xfaData() {\n return (0, _util.shadow)(this, \"xfaData\", this.xfaFactory ? {\n bbox: this.xfaFactory.getBoundingBox(this.pageIndex)\n } : null);\n }\n #replaceIdByRef(annotations, deletedAnnotations, existingAnnotations) {\n for (const annotation of annotations) {\n if (annotation.id) {\n const ref = _primitives.Ref.fromString(annotation.id);\n if (!ref) {\n (0, _util.warn)(`A non-linked annotation cannot be modified: ${annotation.id}`);\n continue;\n }\n if (annotation.deleted) {\n deletedAnnotations.put(ref);\n continue;\n }\n existingAnnotations?.put(ref);\n annotation.ref = ref;\n delete annotation.id;\n }\n }\n }\n async saveNewAnnotations(handler, task, annotations, imagePromises) {\n if (this.xfaFactory) {\n throw new Error(\"XFA: Cannot save new annotations.\");\n }\n const partialEvaluator = new _evaluator.PartialEvaluator({\n xref: this.xref,\n handler,\n pageIndex: this.pageIndex,\n idFactory: this._localIdFactory,\n fontCache: this.fontCache,\n builtInCMapCache: this.builtInCMapCache,\n standardFontDataCache: this.standardFontDataCache,\n globalImageCache: this.globalImageCache,\n systemFontCache: this.systemFontCache,\n options: this.evaluatorOptions\n });\n const deletedAnnotations = new _primitives.RefSet();\n const existingAnnotations = new _primitives.RefSet();\n this.#replaceIdByRef(annotations, deletedAnnotations, existingAnnotations);\n const pageDict = this.pageDict;\n const annotationsArray = this.annotations.filter(a => !(a instanceof _primitives.Ref && deletedAnnotations.has(a)));\n const newData = await _annotation.AnnotationFactory.saveNewAnnotations(partialEvaluator, task, annotations, imagePromises);\n for (const {\n ref\n } of newData.annotations) {\n if (ref instanceof _primitives.Ref && !existingAnnotations.has(ref)) {\n annotationsArray.push(ref);\n }\n }\n const savedDict = pageDict.get(\"Annots\");\n pageDict.set(\"Annots\", annotationsArray);\n const buffer = [];\n await (0, _writer.writeObject)(this.ref, pageDict, buffer, this.xref);\n if (savedDict) {\n pageDict.set(\"Annots\", savedDict);\n }\n const objects = newData.dependencies;\n objects.push({\n ref: this.ref,\n data: buffer.join(\"\")\n }, ...newData.annotations);\n return objects;\n }\n save(handler, task, annotationStorage) {\n const partialEvaluator = new _evaluator.PartialEvaluator({\n xref: this.xref,\n handler,\n pageIndex: this.pageIndex,\n idFactory: this._localIdFactory,\n fontCache: this.fontCache,\n builtInCMapCache: this.builtInCMapCache,\n standardFontDataCache: this.standardFontDataCache,\n globalImageCache: this.globalImageCache,\n systemFontCache: this.systemFontCache,\n options: this.evaluatorOptions\n });\n return this._parsedAnnotations.then(function (annotations) {\n const newRefsPromises = [];\n for (const annotation of annotations) {\n if (!annotation.mustBePrinted(annotationStorage)) {\n continue;\n }\n newRefsPromises.push(annotation.save(partialEvaluator, task, annotationStorage).catch(function (reason) {\n (0, _util.warn)(\"save - ignoring annotation data during \" + `\"${task.name}\" task: \"${reason}\".`);\n return null;\n }));\n }\n return Promise.all(newRefsPromises).then(function (newRefs) {\n return newRefs.filter(newRef => !!newRef);\n });\n });\n }\n loadResources(keys) {\n if (!this.resourcesPromise) {\n this.resourcesPromise = this.pdfManager.ensure(this, \"resources\");\n }\n return this.resourcesPromise.then(() => {\n const objectLoader = new _object_loader.ObjectLoader(this.resources, keys, this.xref);\n return objectLoader.load();\n });\n }\n getOperatorList({\n handler,\n sink,\n task,\n intent,\n cacheKey,\n annotationStorage = null\n }) {\n const contentStreamPromise = this.getContentStream();\n const resourcesPromise = this.loadResources([\"ColorSpace\", \"ExtGState\", \"Font\", \"Pattern\", \"Properties\", \"Shading\", \"XObject\"]);\n const partialEvaluator = new _evaluator.PartialEvaluator({\n xref: this.xref,\n handler,\n pageIndex: this.pageIndex,\n idFactory: this._localIdFactory,\n fontCache: this.fontCache,\n builtInCMapCache: this.builtInCMapCache,\n standardFontDataCache: this.standardFontDataCache,\n globalImageCache: this.globalImageCache,\n systemFontCache: this.systemFontCache,\n options: this.evaluatorOptions\n });\n const newAnnotationsByPage = !this.xfaFactory ? (0, _core_utils.getNewAnnotationsMap)(annotationStorage) : null;\n let deletedAnnotations = null;\n let newAnnotationsPromise = Promise.resolve(null);\n if (newAnnotationsByPage) {\n const newAnnotations = newAnnotationsByPage.get(this.pageIndex);\n if (newAnnotations) {\n const annotationGlobalsPromise = this.pdfManager.ensureDoc(\"annotationGlobals\");\n let imagePromises;\n const missingBitmaps = new Set();\n for (const {\n bitmapId,\n bitmap\n } of newAnnotations) {\n if (bitmapId && !bitmap && !missingBitmaps.has(bitmapId)) {\n missingBitmaps.add(bitmapId);\n }\n }\n const {\n isOffscreenCanvasSupported\n } = this.evaluatorOptions;\n if (missingBitmaps.size > 0) {\n const annotationWithBitmaps = newAnnotations.slice();\n for (const [key, annotation] of annotationStorage) {\n if (!key.startsWith(_util.AnnotationEditorPrefix)) {\n continue;\n }\n if (annotation.bitmap && missingBitmaps.has(annotation.bitmapId)) {\n annotationWithBitmaps.push(annotation);\n }\n }\n imagePromises = _annotation.AnnotationFactory.generateImages(annotationWithBitmaps, this.xref, isOffscreenCanvasSupported);\n } else {\n imagePromises = _annotation.AnnotationFactory.generateImages(newAnnotations, this.xref, isOffscreenCanvasSupported);\n }\n deletedAnnotations = new _primitives.RefSet();\n this.#replaceIdByRef(newAnnotations, deletedAnnotations, null);\n newAnnotationsPromise = annotationGlobalsPromise.then(annotationGlobals => {\n if (!annotationGlobals) {\n return null;\n }\n return _annotation.AnnotationFactory.printNewAnnotations(annotationGlobals, partialEvaluator, task, newAnnotations, imagePromises);\n });\n }\n }\n const dataPromises = Promise.all([contentStreamPromise, resourcesPromise]);\n const pageListPromise = dataPromises.then(([contentStream]) => {\n const opList = new _operator_list.OperatorList(intent, sink);\n handler.send(\"StartRenderPage\", {\n transparency: partialEvaluator.hasBlendModes(this.resources, this.nonBlendModesSet),\n pageIndex: this.pageIndex,\n cacheKey\n });\n return partialEvaluator.getOperatorList({\n stream: contentStream,\n task,\n resources: this.resources,\n operatorList: opList\n }).then(function () {\n return opList;\n });\n });\n return Promise.all([pageListPromise, this._parsedAnnotations, newAnnotationsPromise]).then(function ([pageOpList, annotations, newAnnotations]) {\n if (newAnnotations) {\n annotations = annotations.filter(a => !(a.ref && deletedAnnotations.has(a.ref)));\n for (let i = 0, ii = newAnnotations.length; i < ii; i++) {\n const newAnnotation = newAnnotations[i];\n if (newAnnotation.refToReplace) {\n const j = annotations.findIndex(a => a.ref && (0, _primitives.isRefsEqual)(a.ref, newAnnotation.refToReplace));\n if (j >= 0) {\n annotations.splice(j, 1, newAnnotation);\n newAnnotations.splice(i--, 1);\n ii--;\n }\n }\n }\n annotations = annotations.concat(newAnnotations);\n }\n if (annotations.length === 0 || intent & _util.RenderingIntentFlag.ANNOTATIONS_DISABLE) {\n pageOpList.flush(true);\n return {\n length: pageOpList.totalLength\n };\n }\n const renderForms = !!(intent & _util.RenderingIntentFlag.ANNOTATIONS_FORMS),\n intentAny = !!(intent & _util.RenderingIntentFlag.ANY),\n intentDisplay = !!(intent & _util.RenderingIntentFlag.DISPLAY),\n intentPrint = !!(intent & _util.RenderingIntentFlag.PRINT);\n const opListPromises = [];\n for (const annotation of annotations) {\n if (intentAny || intentDisplay && annotation.mustBeViewed(annotationStorage, renderForms) || intentPrint && annotation.mustBePrinted(annotationStorage)) {\n opListPromises.push(annotation.getOperatorList(partialEvaluator, task, intent, renderForms, annotationStorage).catch(function (reason) {\n (0, _util.warn)(\"getOperatorList - ignoring annotation data during \" + `\"${task.name}\" task: \"${reason}\".`);\n return {\n opList: null,\n separateForm: false,\n separateCanvas: false\n };\n }));\n }\n }\n return Promise.all(opListPromises).then(function (opLists) {\n let form = false,\n canvas = false;\n for (const {\n opList,\n separateForm,\n separateCanvas\n } of opLists) {\n pageOpList.addOpList(opList);\n form ||= separateForm;\n canvas ||= separateCanvas;\n }\n pageOpList.flush(true, {\n form,\n canvas\n });\n return {\n length: pageOpList.totalLength\n };\n });\n });\n }\n extractTextContent({\n handler,\n task,\n includeMarkedContent,\n disableNormalization,\n sink\n }) {\n const contentStreamPromise = this.getContentStream();\n const resourcesPromise = this.loadResources([\"ExtGState\", \"Font\", \"Properties\", \"XObject\"]);\n const dataPromises = Promise.all([contentStreamPromise, resourcesPromise]);\n return dataPromises.then(([contentStream]) => {\n const partialEvaluator = new _evaluator.PartialEvaluator({\n xref: this.xref,\n handler,\n pageIndex: this.pageIndex,\n idFactory: this._localIdFactory,\n fontCache: this.fontCache,\n builtInCMapCache: this.builtInCMapCache,\n standardFontDataCache: this.standardFontDataCache,\n globalImageCache: this.globalImageCache,\n systemFontCache: this.systemFontCache,\n options: this.evaluatorOptions\n });\n return partialEvaluator.getTextContent({\n stream: contentStream,\n task,\n resources: this.resources,\n includeMarkedContent,\n disableNormalization,\n sink,\n viewBox: this.view\n });\n });\n }\n async getStructTree() {\n const structTreeRoot = await this.pdfManager.ensureCatalog(\"structTreeRoot\");\n if (!structTreeRoot) {\n return null;\n }\n await this._parsedAnnotations;\n const structTree = await this.pdfManager.ensure(this, \"_parseStructTree\", [structTreeRoot]);\n return structTree.serializable;\n }\n _parseStructTree(structTreeRoot) {\n const tree = new _struct_tree.StructTreePage(structTreeRoot, this.pageDict);\n tree.parse(this.ref);\n return tree;\n }\n async getAnnotationsData(handler, task, intent) {\n const annotations = await this._parsedAnnotations;\n if (annotations.length === 0) {\n return annotations;\n }\n const annotationsData = [],\n textContentPromises = [];\n let partialEvaluator;\n const intentAny = !!(intent & _util.RenderingIntentFlag.ANY),\n intentDisplay = !!(intent & _util.RenderingIntentFlag.DISPLAY),\n intentPrint = !!(intent & _util.RenderingIntentFlag.PRINT);\n for (const annotation of annotations) {\n const isVisible = intentAny || intentDisplay && annotation.viewable;\n if (isVisible || intentPrint && annotation.printable) {\n annotationsData.push(annotation.data);\n }\n if (annotation.hasTextContent && isVisible) {\n partialEvaluator ||= new _evaluator.PartialEvaluator({\n xref: this.xref,\n handler,\n pageIndex: this.pageIndex,\n idFactory: this._localIdFactory,\n fontCache: this.fontCache,\n builtInCMapCache: this.builtInCMapCache,\n standardFontDataCache: this.standardFontDataCache,\n globalImageCache: this.globalImageCache,\n systemFontCache: this.systemFontCache,\n options: this.evaluatorOptions\n });\n textContentPromises.push(annotation.extractTextContent(partialEvaluator, task, [-Infinity, -Infinity, Infinity, Infinity]).catch(function (reason) {\n (0, _util.warn)(`getAnnotationsData - ignoring textContent during \"${task.name}\" task: \"${reason}\".`);\n }));\n }\n }\n await Promise.all(textContentPromises);\n return annotationsData;\n }\n get annotations() {\n const annots = this._getInheritableProperty(\"Annots\");\n return (0, _util.shadow)(this, \"annotations\", Array.isArray(annots) ? annots : []);\n }\n get _parsedAnnotations() {\n const promise = this.pdfManager.ensure(this, \"annotations\").then(async annots => {\n if (annots.length === 0) {\n return annots;\n }\n const annotationGlobals = await this.pdfManager.ensureDoc(\"annotationGlobals\");\n if (!annotationGlobals) {\n return [];\n }\n const annotationPromises = [];\n for (const annotationRef of annots) {\n annotationPromises.push(_annotation.AnnotationFactory.create(this.xref, annotationRef, annotationGlobals, this._localIdFactory, false, this.ref).catch(function (reason) {\n (0, _util.warn)(`_parsedAnnotations: \"${reason}\".`);\n return null;\n }));\n }\n const sortedAnnotations = [];\n let popupAnnotations;\n for (const annotation of await Promise.all(annotationPromises)) {\n if (!annotation) {\n continue;\n }\n if (annotation instanceof _annotation.PopupAnnotation) {\n (popupAnnotations ||= []).push(annotation);\n continue;\n }\n sortedAnnotations.push(annotation);\n }\n if (popupAnnotations) {\n sortedAnnotations.push(...popupAnnotations);\n }\n return sortedAnnotations;\n });\n return (0, _util.shadow)(this, \"_parsedAnnotations\", promise);\n }\n get jsActions() {\n const actions = (0, _core_utils.collectActions)(this.xref, this.pageDict, _util.PageActionEventType);\n return (0, _util.shadow)(this, \"jsActions\", actions);\n }\n}\nexports.Page = Page;\nconst PDF_HEADER_SIGNATURE = new Uint8Array([0x25, 0x50, 0x44, 0x46, 0x2d]);\nconst STARTXREF_SIGNATURE = new Uint8Array([0x73, 0x74, 0x61, 0x72, 0x74, 0x78, 0x72, 0x65, 0x66]);\nconst ENDOBJ_SIGNATURE = new Uint8Array([0x65, 0x6e, 0x64, 0x6f, 0x62, 0x6a]);\nconst FINGERPRINT_FIRST_BYTES = 1024;\nconst EMPTY_FINGERPRINT = \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\";\nfunction find(stream, signature, limit = 1024, backwards = false) {\n const signatureLength = signature.length;\n const scanBytes = stream.peekBytes(limit);\n const scanLength = scanBytes.length - signatureLength;\n if (scanLength <= 0) {\n return false;\n }\n if (backwards) {\n const signatureEnd = signatureLength - 1;\n let pos = scanBytes.length - 1;\n while (pos >= signatureEnd) {\n let j = 0;\n while (j < signatureLength && scanBytes[pos - j] === signature[signatureEnd - j]) {\n j++;\n }\n if (j >= signatureLength) {\n stream.pos += pos - signatureEnd;\n return true;\n }\n pos--;\n }\n } else {\n let pos = 0;\n while (pos <= scanLength) {\n let j = 0;\n while (j < signatureLength && scanBytes[pos + j] === signature[j]) {\n j++;\n }\n if (j >= signatureLength) {\n stream.pos += pos;\n return true;\n }\n pos++;\n }\n }\n return false;\n}\nclass PDFDocument {\n constructor(pdfManager, stream) {\n if (stream.length <= 0) {\n throw new _util.InvalidPDFException(\"The PDF file is empty, i.e. its size is zero bytes.\");\n }\n this.pdfManager = pdfManager;\n this.stream = stream;\n this.xref = new _xref.XRef(stream, pdfManager);\n this._pagePromises = new Map();\n this._version = null;\n const idCounters = {\n font: 0\n };\n this._globalIdFactory = class {\n static getDocId() {\n return `g_${pdfManager.docId}`;\n }\n static createFontId() {\n return `f${++idCounters.font}`;\n }\n static createObjId() {\n (0, _util.unreachable)(\"Abstract method `createObjId` called.\");\n }\n static getPageObjId() {\n (0, _util.unreachable)(\"Abstract method `getPageObjId` called.\");\n }\n };\n }\n parse(recoveryMode) {\n this.xref.parse(recoveryMode);\n this.catalog = new _catalog.Catalog(this.pdfManager, this.xref);\n }\n get linearization() {\n let linearization = null;\n try {\n linearization = _parser.Linearization.create(this.stream);\n } catch (err) {\n if (err instanceof _core_utils.MissingDataException) {\n throw err;\n }\n (0, _util.info)(err);\n }\n return (0, _util.shadow)(this, \"linearization\", linearization);\n }\n get startXRef() {\n const stream = this.stream;\n let startXRef = 0;\n if (this.linearization) {\n stream.reset();\n if (find(stream, ENDOBJ_SIGNATURE)) {\n startXRef = stream.pos + 6 - stream.start;\n }\n } else {\n const step = 1024;\n const startXRefLength = STARTXREF_SIGNATURE.length;\n let found = false,\n pos = stream.end;\n while (!found && pos > 0) {\n pos -= step - startXRefLength;\n if (pos < 0) {\n pos = 0;\n }\n stream.pos = pos;\n found = find(stream, STARTXREF_SIGNATURE, step, true);\n }\n if (found) {\n stream.skip(9);\n let ch;\n do {\n ch = stream.getByte();\n } while ((0, _core_utils.isWhiteSpace)(ch));\n let str = \"\";\n while (ch >= 0x20 && ch <= 0x39) {\n str += String.fromCharCode(ch);\n ch = stream.getByte();\n }\n startXRef = parseInt(str, 10);\n if (isNaN(startXRef)) {\n startXRef = 0;\n }\n }\n }\n return (0, _util.shadow)(this, \"startXRef\", startXRef);\n }\n checkHeader() {\n const stream = this.stream;\n stream.reset();\n if (!find(stream, PDF_HEADER_SIGNATURE)) {\n return;\n }\n stream.moveStart();\n stream.skip(PDF_HEADER_SIGNATURE.length);\n let version = \"\",\n ch;\n while ((ch = stream.getByte()) > 0x20 && version.length < 7) {\n version += String.fromCharCode(ch);\n }\n if (_core_utils.PDF_VERSION_REGEXP.test(version)) {\n this._version = version;\n } else {\n (0, _util.warn)(`Invalid PDF header version: ${version}`);\n }\n }\n parseStartXRef() {\n this.xref.setStartXRef(this.startXRef);\n }\n get numPages() {\n let num = 0;\n if (this.catalog.hasActualNumPages) {\n num = this.catalog.numPages;\n } else if (this.xfaFactory) {\n num = this.xfaFactory.getNumPages();\n } else if (this.linearization) {\n num = this.linearization.numPages;\n } else {\n num = this.catalog.numPages;\n }\n return (0, _util.shadow)(this, \"numPages\", num);\n }\n _hasOnlyDocumentSignatures(fields, recursionDepth = 0) {\n const RECURSION_LIMIT = 10;\n if (!Array.isArray(fields)) {\n return false;\n }\n return fields.every(field => {\n field = this.xref.fetchIfRef(field);\n if (!(field instanceof _primitives.Dict)) {\n return false;\n }\n if (field.has(\"Kids\")) {\n if (++recursionDepth > RECURSION_LIMIT) {\n (0, _util.warn)(\"_hasOnlyDocumentSignatures: maximum recursion depth reached\");\n return false;\n }\n return this._hasOnlyDocumentSignatures(field.get(\"Kids\"), recursionDepth);\n }\n const isSignature = (0, _primitives.isName)(field.get(\"FT\"), \"Sig\");\n const rectangle = field.get(\"Rect\");\n const isInvisible = Array.isArray(rectangle) && rectangle.every(value => value === 0);\n return isSignature && isInvisible;\n });\n }\n get _xfaStreams() {\n const acroForm = this.catalog.acroForm;\n if (!acroForm) {\n return null;\n }\n const xfa = acroForm.get(\"XFA\");\n const entries = {\n \"xdp:xdp\": \"\",\n template: \"\",\n datasets: \"\",\n config: \"\",\n connectionSet: \"\",\n localeSet: \"\",\n stylesheet: \"\",\n \"/xdp:xdp\": \"\"\n };\n if (xfa instanceof _base_stream.BaseStream && !xfa.isEmpty) {\n entries[\"xdp:xdp\"] = xfa;\n return entries;\n }\n if (!Array.isArray(xfa) || xfa.length === 0) {\n return null;\n }\n for (let i = 0, ii = xfa.length; i < ii; i += 2) {\n let name;\n if (i === 0) {\n name = \"xdp:xdp\";\n } else if (i === ii - 2) {\n name = \"/xdp:xdp\";\n } else {\n name = xfa[i];\n }\n if (!entries.hasOwnProperty(name)) {\n continue;\n }\n const data = this.xref.fetchIfRef(xfa[i + 1]);\n if (!(data instanceof _base_stream.BaseStream) || data.isEmpty) {\n continue;\n }\n entries[name] = data;\n }\n return entries;\n }\n get xfaDatasets() {\n const streams = this._xfaStreams;\n if (!streams) {\n return (0, _util.shadow)(this, \"xfaDatasets\", null);\n }\n for (const key of [\"datasets\", \"xdp:xdp\"]) {\n const stream = streams[key];\n if (!stream) {\n continue;\n }\n try {\n const str = (0, _util.stringToUTF8String)(stream.getString());\n const data = {\n [key]: str\n };\n return (0, _util.shadow)(this, \"xfaDatasets\", new _dataset_reader.DatasetReader(data));\n } catch {\n (0, _util.warn)(\"XFA - Invalid utf-8 string.\");\n break;\n }\n }\n return (0, _util.shadow)(this, \"xfaDatasets\", null);\n }\n get xfaData() {\n const streams = this._xfaStreams;\n if (!streams) {\n return null;\n }\n const data = Object.create(null);\n for (const [key, stream] of Object.entries(streams)) {\n if (!stream) {\n continue;\n }\n try {\n data[key] = (0, _util.stringToUTF8String)(stream.getString());\n } catch {\n (0, _util.warn)(\"XFA - Invalid utf-8 string.\");\n return null;\n }\n }\n return data;\n }\n get xfaFactory() {\n let data;\n if (this.pdfManager.enableXfa && this.catalog.needsRendering && this.formInfo.hasXfa && !this.formInfo.hasAcroForm) {\n data = this.xfaData;\n }\n return (0, _util.shadow)(this, \"xfaFactory\", data ? new _factory.XFAFactory(data) : null);\n }\n get isPureXfa() {\n return this.xfaFactory ? this.xfaFactory.isValid() : false;\n }\n get htmlForXfa() {\n return this.xfaFactory ? this.xfaFactory.getPages() : null;\n }\n async loadXfaImages() {\n const xfaImagesDict = await this.pdfManager.ensureCatalog(\"xfaImages\");\n if (!xfaImagesDict) {\n return;\n }\n const keys = xfaImagesDict.getKeys();\n const objectLoader = new _object_loader.ObjectLoader(xfaImagesDict, keys, this.xref);\n await objectLoader.load();\n const xfaImages = new Map();\n for (const key of keys) {\n const stream = xfaImagesDict.get(key);\n if (stream instanceof _base_stream.BaseStream) {\n xfaImages.set(key, stream.getBytes());\n }\n }\n this.xfaFactory.setImages(xfaImages);\n }\n async loadXfaFonts(handler, task) {\n const acroForm = await this.pdfManager.ensureCatalog(\"acroForm\");\n if (!acroForm) {\n return;\n }\n const resources = await acroForm.getAsync(\"DR\");\n if (!(resources instanceof _primitives.Dict)) {\n return;\n }\n const objectLoader = new _object_loader.ObjectLoader(resources, [\"Font\"], this.xref);\n await objectLoader.load();\n const fontRes = resources.get(\"Font\");\n if (!(fontRes instanceof _primitives.Dict)) {\n return;\n }\n const options = Object.assign(Object.create(null), this.pdfManager.evaluatorOptions);\n options.useSystemFonts = false;\n const partialEvaluator = new _evaluator.PartialEvaluator({\n xref: this.xref,\n handler,\n pageIndex: -1,\n idFactory: this._globalIdFactory,\n fontCache: this.catalog.fontCache,\n builtInCMapCache: this.catalog.builtInCMapCache,\n standardFontDataCache: this.catalog.standardFontDataCache,\n options\n });\n const operatorList = new _operator_list.OperatorList();\n const pdfFonts = [];\n const initialState = {\n get font() {\n return pdfFonts.at(-1);\n },\n set font(font) {\n pdfFonts.push(font);\n },\n clone() {\n return this;\n }\n };\n const fonts = new Map();\n fontRes.forEach((fontName, font) => {\n fonts.set(fontName, font);\n });\n const promises = [];\n for (const [fontName, font] of fonts) {\n const descriptor = font.get(\"FontDescriptor\");\n if (!(descriptor instanceof _primitives.Dict)) {\n continue;\n }\n let fontFamily = descriptor.get(\"FontFamily\");\n fontFamily = fontFamily.replaceAll(/[ ]+(\\d)/g, \"$1\");\n const fontWeight = descriptor.get(\"FontWeight\");\n const italicAngle = -descriptor.get(\"ItalicAngle\");\n const cssFontInfo = {\n fontFamily,\n fontWeight,\n italicAngle\n };\n if (!(0, _core_utils.validateCSSFont)(cssFontInfo)) {\n continue;\n }\n promises.push(partialEvaluator.handleSetFont(resources, [_primitives.Name.get(fontName), 1], null, operatorList, task, initialState, null, cssFontInfo).catch(function (reason) {\n (0, _util.warn)(`loadXfaFonts: \"${reason}\".`);\n return null;\n }));\n }\n await Promise.all(promises);\n const missingFonts = this.xfaFactory.setFonts(pdfFonts);\n if (!missingFonts) {\n return;\n }\n options.ignoreErrors = true;\n promises.length = 0;\n pdfFonts.length = 0;\n const reallyMissingFonts = new Set();\n for (const missing of missingFonts) {\n if (!(0, _xfa_fonts.getXfaFontName)(`${missing}-Regular`)) {\n reallyMissingFonts.add(missing);\n }\n }\n if (reallyMissingFonts.size) {\n missingFonts.push(\"PdfJS-Fallback\");\n }\n for (const missing of missingFonts) {\n if (reallyMissingFonts.has(missing)) {\n continue;\n }\n for (const fontInfo of [{\n name: \"Regular\",\n fontWeight: 400,\n italicAngle: 0\n }, {\n name: \"Bold\",\n fontWeight: 700,\n italicAngle: 0\n }, {\n name: \"Italic\",\n fontWeight: 400,\n italicAngle: 12\n }, {\n name: \"BoldItalic\",\n fontWeight: 700,\n italicAngle: 12\n }]) {\n const name = `${missing}-${fontInfo.name}`;\n const dict = (0, _xfa_fonts.getXfaFontDict)(name);\n promises.push(partialEvaluator.handleSetFont(resources, [_primitives.Name.get(name), 1], null, operatorList, task, initialState, dict, {\n fontFamily: missing,\n fontWeight: fontInfo.fontWeight,\n italicAngle: fontInfo.italicAngle\n }).catch(function (reason) {\n (0, _util.warn)(`loadXfaFonts: \"${reason}\".`);\n return null;\n }));\n }\n }\n await Promise.all(promises);\n this.xfaFactory.appendFonts(pdfFonts, reallyMissingFonts);\n }\n async serializeXfaData(annotationStorage) {\n return this.xfaFactory ? this.xfaFactory.serializeData(annotationStorage) : null;\n }\n get version() {\n return this.catalog.version || this._version;\n }\n get formInfo() {\n const formInfo = {\n hasFields: false,\n hasAcroForm: false,\n hasXfa: false,\n hasSignatures: false\n };\n const acroForm = this.catalog.acroForm;\n if (!acroForm) {\n return (0, _util.shadow)(this, \"formInfo\", formInfo);\n }\n try {\n const fields = acroForm.get(\"Fields\");\n const hasFields = Array.isArray(fields) && fields.length > 0;\n formInfo.hasFields = hasFields;\n const xfa = acroForm.get(\"XFA\");\n formInfo.hasXfa = Array.isArray(xfa) && xfa.length > 0 || xfa instanceof _base_stream.BaseStream && !xfa.isEmpty;\n const sigFlags = acroForm.get(\"SigFlags\");\n const hasSignatures = !!(sigFlags & 0x1);\n const hasOnlyDocumentSignatures = hasSignatures && this._hasOnlyDocumentSignatures(fields);\n formInfo.hasAcroForm = hasFields && !hasOnlyDocumentSignatures;\n formInfo.hasSignatures = hasSignatures;\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(`Cannot fetch form information: \"${ex}\".`);\n }\n return (0, _util.shadow)(this, \"formInfo\", formInfo);\n }\n get documentInfo() {\n const docInfo = {\n PDFFormatVersion: this.version,\n Language: this.catalog.lang,\n EncryptFilterName: this.xref.encrypt ? this.xref.encrypt.filterName : null,\n IsLinearized: !!this.linearization,\n IsAcroFormPresent: this.formInfo.hasAcroForm,\n IsXFAPresent: this.formInfo.hasXfa,\n IsCollectionPresent: !!this.catalog.collection,\n IsSignaturesPresent: this.formInfo.hasSignatures\n };\n let infoDict;\n try {\n infoDict = this.xref.trailer.get(\"Info\");\n } catch (err) {\n if (err instanceof _core_utils.MissingDataException) {\n throw err;\n }\n (0, _util.info)(\"The document information dictionary is invalid.\");\n }\n if (!(infoDict instanceof _primitives.Dict)) {\n return (0, _util.shadow)(this, \"documentInfo\", docInfo);\n }\n for (const key of infoDict.getKeys()) {\n const value = infoDict.get(key);\n switch (key) {\n case \"Title\":\n case \"Author\":\n case \"Subject\":\n case \"Keywords\":\n case \"Creator\":\n case \"Producer\":\n case \"CreationDate\":\n case \"ModDate\":\n if (typeof value === \"string\") {\n docInfo[key] = (0, _util.stringToPDFString)(value);\n continue;\n }\n break;\n case \"Trapped\":\n if (value instanceof _primitives.Name) {\n docInfo[key] = value;\n continue;\n }\n break;\n default:\n let customValue;\n switch (typeof value) {\n case \"string\":\n customValue = (0, _util.stringToPDFString)(value);\n break;\n case \"number\":\n case \"boolean\":\n customValue = value;\n break;\n default:\n if (value instanceof _primitives.Name) {\n customValue = value;\n }\n break;\n }\n if (customValue === undefined) {\n (0, _util.warn)(`Bad value, for custom key \"${key}\", in Info: ${value}.`);\n continue;\n }\n if (!docInfo.Custom) {\n docInfo.Custom = Object.create(null);\n }\n docInfo.Custom[key] = customValue;\n continue;\n }\n (0, _util.warn)(`Bad value, for key \"${key}\", in Info: ${value}.`);\n }\n return (0, _util.shadow)(this, \"documentInfo\", docInfo);\n }\n get fingerprints() {\n function validate(data) {\n return typeof data === \"string\" && data.length > 0 && data !== EMPTY_FINGERPRINT;\n }\n function hexString(hash) {\n const buf = [];\n for (const num of hash) {\n const hex = num.toString(16);\n buf.push(hex.padStart(2, \"0\"));\n }\n return buf.join(\"\");\n }\n const idArray = this.xref.trailer.get(\"ID\");\n let hashOriginal, hashModified;\n if (Array.isArray(idArray) && validate(idArray[0])) {\n hashOriginal = (0, _util.stringToBytes)(idArray[0]);\n if (idArray[1] !== idArray[0] && validate(idArray[1])) {\n hashModified = (0, _util.stringToBytes)(idArray[1]);\n }\n } else {\n hashOriginal = (0, _crypto.calculateMD5)(this.stream.getByteRange(0, FINGERPRINT_FIRST_BYTES), 0, FINGERPRINT_FIRST_BYTES);\n }\n return (0, _util.shadow)(this, \"fingerprints\", [hexString(hashOriginal), hashModified ? hexString(hashModified) : null]);\n }\n async _getLinearizationPage(pageIndex) {\n const {\n catalog,\n linearization,\n xref\n } = this;\n const ref = _primitives.Ref.get(linearization.objectNumberFirst, 0);\n try {\n const obj = await xref.fetchAsync(ref);\n if (obj instanceof _primitives.Dict) {\n let type = obj.getRaw(\"Type\");\n if (type instanceof _primitives.Ref) {\n type = await xref.fetchAsync(type);\n }\n if ((0, _primitives.isName)(type, \"Page\") || !obj.has(\"Type\") && !obj.has(\"Kids\")) {\n if (!catalog.pageKidsCountCache.has(ref)) {\n catalog.pageKidsCountCache.put(ref, 1);\n }\n if (!catalog.pageIndexCache.has(ref)) {\n catalog.pageIndexCache.put(ref, 0);\n }\n return [obj, ref];\n }\n }\n throw new _util.FormatError(\"The Linearization dictionary doesn't point to a valid Page dictionary.\");\n } catch (reason) {\n (0, _util.warn)(`_getLinearizationPage: \"${reason.message}\".`);\n return catalog.getPageDict(pageIndex);\n }\n }\n getPage(pageIndex) {\n const cachedPromise = this._pagePromises.get(pageIndex);\n if (cachedPromise) {\n return cachedPromise;\n }\n const {\n catalog,\n linearization,\n xfaFactory\n } = this;\n let promise;\n if (xfaFactory) {\n promise = Promise.resolve([_primitives.Dict.empty, null]);\n } else if (linearization?.pageFirst === pageIndex) {\n promise = this._getLinearizationPage(pageIndex);\n } else {\n promise = catalog.getPageDict(pageIndex);\n }\n promise = promise.then(([pageDict, ref]) => {\n return new Page({\n pdfManager: this.pdfManager,\n xref: this.xref,\n pageIndex,\n pageDict,\n ref,\n globalIdFactory: this._globalIdFactory,\n fontCache: catalog.fontCache,\n builtInCMapCache: catalog.builtInCMapCache,\n standardFontDataCache: catalog.standardFontDataCache,\n globalImageCache: catalog.globalImageCache,\n systemFontCache: catalog.systemFontCache,\n nonBlendModesSet: catalog.nonBlendModesSet,\n xfaFactory\n });\n });\n this._pagePromises.set(pageIndex, promise);\n return promise;\n }\n async checkFirstPage(recoveryMode = false) {\n if (recoveryMode) {\n return;\n }\n try {\n await this.getPage(0);\n } catch (reason) {\n if (reason instanceof _core_utils.XRefEntryException) {\n this._pagePromises.delete(0);\n await this.cleanup();\n throw new _core_utils.XRefParseException();\n }\n }\n }\n async checkLastPage(recoveryMode = false) {\n const {\n catalog,\n pdfManager\n } = this;\n catalog.setActualNumPages();\n let numPages;\n try {\n await Promise.all([pdfManager.ensureDoc(\"xfaFactory\"), pdfManager.ensureDoc(\"linearization\"), pdfManager.ensureCatalog(\"numPages\")]);\n if (this.xfaFactory) {\n return;\n } else if (this.linearization) {\n numPages = this.linearization.numPages;\n } else {\n numPages = catalog.numPages;\n }\n if (!Number.isInteger(numPages)) {\n throw new _util.FormatError(\"Page count is not an integer.\");\n } else if (numPages <= 1) {\n return;\n }\n await this.getPage(numPages - 1);\n } catch (reason) {\n this._pagePromises.delete(numPages - 1);\n await this.cleanup();\n if (reason instanceof _core_utils.XRefEntryException && !recoveryMode) {\n throw new _core_utils.XRefParseException();\n }\n (0, _util.warn)(`checkLastPage - invalid /Pages tree /Count: ${numPages}.`);\n let pagesTree;\n try {\n pagesTree = await catalog.getAllPageDicts(recoveryMode);\n } catch (reasonAll) {\n if (reasonAll instanceof _core_utils.XRefEntryException && !recoveryMode) {\n throw new _core_utils.XRefParseException();\n }\n catalog.setActualNumPages(1);\n return;\n }\n for (const [pageIndex, [pageDict, ref]] of pagesTree) {\n let promise;\n if (pageDict instanceof Error) {\n promise = Promise.reject(pageDict);\n promise.catch(() => {});\n } else {\n promise = Promise.resolve(new Page({\n pdfManager,\n xref: this.xref,\n pageIndex,\n pageDict,\n ref,\n globalIdFactory: this._globalIdFactory,\n fontCache: catalog.fontCache,\n builtInCMapCache: catalog.builtInCMapCache,\n standardFontDataCache: catalog.standardFontDataCache,\n globalImageCache: catalog.globalImageCache,\n systemFontCache: catalog.systemFontCache,\n nonBlendModesSet: catalog.nonBlendModesSet,\n xfaFactory: null\n }));\n }\n this._pagePromises.set(pageIndex, promise);\n }\n catalog.setActualNumPages(pagesTree.size);\n }\n }\n fontFallback(id, handler) {\n return this.catalog.fontFallback(id, handler);\n }\n async cleanup(manuallyTriggered = false) {\n return this.catalog ? this.catalog.cleanup(manuallyTriggered) : (0, _cleanup_helper.clearGlobalCaches)();\n }\n #collectFieldObjects(name, fieldRef, promises, annotationGlobals) {\n const field = this.xref.fetchIfRef(fieldRef);\n if (field.has(\"T\")) {\n const partName = (0, _util.stringToPDFString)(field.get(\"T\"));\n name = name === \"\" ? partName : `${name}.${partName}`;\n }\n if (!promises.has(name)) {\n promises.set(name, []);\n }\n promises.get(name).push(_annotation.AnnotationFactory.create(this.xref, fieldRef, annotationGlobals, this._localIdFactory, true, null).then(annotation => annotation?.getFieldObject()).catch(function (reason) {\n (0, _util.warn)(`#collectFieldObjects: \"${reason}\".`);\n return null;\n }));\n if (field.has(\"Kids\")) {\n for (const kid of field.get(\"Kids\")) {\n this.#collectFieldObjects(name, kid, promises, annotationGlobals);\n }\n }\n }\n get fieldObjects() {\n if (!this.formInfo.hasFields) {\n return (0, _util.shadow)(this, \"fieldObjects\", Promise.resolve(null));\n }\n const promise = this.pdfManager.ensureDoc(\"annotationGlobals\").then(async annotationGlobals => {\n if (!annotationGlobals) {\n return null;\n }\n const allFields = Object.create(null);\n const fieldPromises = new Map();\n for (const fieldRef of this.catalog.acroForm.get(\"Fields\")) {\n this.#collectFieldObjects(\"\", fieldRef, fieldPromises, annotationGlobals);\n }\n const allPromises = [];\n for (const [name, promises] of fieldPromises) {\n allPromises.push(Promise.all(promises).then(fields => {\n fields = fields.filter(field => !!field);\n if (fields.length > 0) {\n allFields[name] = fields;\n }\n }));\n }\n await Promise.all(allPromises);\n return allFields;\n });\n return (0, _util.shadow)(this, \"fieldObjects\", promise);\n }\n get hasJSActions() {\n const promise = this.pdfManager.ensureDoc(\"_parseHasJSActions\");\n return (0, _util.shadow)(this, \"hasJSActions\", promise);\n }\n async _parseHasJSActions() {\n const [catalogJsActions, fieldObjects] = await Promise.all([this.pdfManager.ensureCatalog(\"jsActions\"), this.pdfManager.ensureDoc(\"fieldObjects\")]);\n if (catalogJsActions) {\n return true;\n }\n if (fieldObjects) {\n return Object.values(fieldObjects).some(fieldObject => fieldObject.some(object => object.actions !== null));\n }\n return false;\n }\n get calculationOrderIds() {\n const acroForm = this.catalog.acroForm;\n if (!acroForm?.has(\"CO\")) {\n return (0, _util.shadow)(this, \"calculationOrderIds\", null);\n }\n const calculationOrder = acroForm.get(\"CO\");\n if (!Array.isArray(calculationOrder) || calculationOrder.length === 0) {\n return (0, _util.shadow)(this, \"calculationOrderIds\", null);\n }\n const ids = [];\n for (const id of calculationOrder) {\n if (id instanceof _primitives.Ref) {\n ids.push(id.toString());\n }\n }\n if (ids.length === 0) {\n return (0, _util.shadow)(this, \"calculationOrderIds\", null);\n }\n return (0, _util.shadow)(this, \"calculationOrderIds\", ids);\n }\n get annotationGlobals() {\n return (0, _util.shadow)(this, \"annotationGlobals\", _annotation.AnnotationFactory.createGlobals(this.pdfManager));\n }\n}\nexports.PDFDocument = PDFDocument;\n\n/***/ }),\n/* 10 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PopupAnnotation = exports.MarkupAnnotation = exports.AnnotationFactory = exports.AnnotationBorderStyle = exports.Annotation = void 0;\nexports.getQuadPoints = getQuadPoints;\nvar _util = __w_pdfjs_require__(2);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _default_appearance = __w_pdfjs_require__(11);\nvar _primitives = __w_pdfjs_require__(4);\nvar _stream = __w_pdfjs_require__(8);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _bidi = __w_pdfjs_require__(60);\nvar _catalog = __w_pdfjs_require__(66);\nvar _colorspace = __w_pdfjs_require__(12);\nvar _file_spec = __w_pdfjs_require__(69);\nvar _jpeg_stream = __w_pdfjs_require__(26);\nvar _object_loader = __w_pdfjs_require__(76);\nvar _operator_list = __w_pdfjs_require__(64);\nvar _writer = __w_pdfjs_require__(73);\nvar _factory = __w_pdfjs_require__(77);\nclass AnnotationFactory {\n static createGlobals(pdfManager) {\n return Promise.all([pdfManager.ensureCatalog(\"acroForm\"), pdfManager.ensureDoc(\"xfaDatasets\"), pdfManager.ensureCatalog(\"structTreeRoot\"), pdfManager.ensureCatalog(\"baseUrl\"), pdfManager.ensureCatalog(\"attachments\")]).then(([acroForm, xfaDatasets, structTreeRoot, baseUrl, attachments]) => {\n return {\n pdfManager,\n acroForm: acroForm instanceof _primitives.Dict ? acroForm : _primitives.Dict.empty,\n xfaDatasets,\n structTreeRoot,\n baseUrl,\n attachments\n };\n }, reason => {\n (0, _util.warn)(`createGlobals: \"${reason}\".`);\n return null;\n });\n }\n static async create(xref, ref, annotationGlobals, idFactory, collectFields, pageRef) {\n const pageIndex = collectFields ? await this._getPageIndex(xref, ref, annotationGlobals.pdfManager) : null;\n return annotationGlobals.pdfManager.ensure(this, \"_create\", [xref, ref, annotationGlobals, idFactory, collectFields, pageIndex, pageRef]);\n }\n static _create(xref, ref, annotationGlobals, idFactory, collectFields = false, pageIndex = null, pageRef = null) {\n const dict = xref.fetchIfRef(ref);\n if (!(dict instanceof _primitives.Dict)) {\n return undefined;\n }\n const {\n acroForm,\n pdfManager\n } = annotationGlobals;\n const id = ref instanceof _primitives.Ref ? ref.toString() : `annot_${idFactory.createObjId()}`;\n let subtype = dict.get(\"Subtype\");\n subtype = subtype instanceof _primitives.Name ? subtype.name : null;\n const parameters = {\n xref,\n ref,\n dict,\n subtype,\n id,\n annotationGlobals,\n collectFields,\n needAppearances: !collectFields && acroForm.get(\"NeedAppearances\") === true,\n pageIndex,\n evaluatorOptions: pdfManager.evaluatorOptions,\n pageRef\n };\n switch (subtype) {\n case \"Link\":\n return new LinkAnnotation(parameters);\n case \"Text\":\n return new TextAnnotation(parameters);\n case \"Widget\":\n let fieldType = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"FT\"\n });\n fieldType = fieldType instanceof _primitives.Name ? fieldType.name : null;\n switch (fieldType) {\n case \"Tx\":\n return new TextWidgetAnnotation(parameters);\n case \"Btn\":\n return new ButtonWidgetAnnotation(parameters);\n case \"Ch\":\n return new ChoiceWidgetAnnotation(parameters);\n case \"Sig\":\n return new SignatureWidgetAnnotation(parameters);\n }\n (0, _util.warn)(`Unimplemented widget field type \"${fieldType}\", ` + \"falling back to base field type.\");\n return new WidgetAnnotation(parameters);\n case \"Popup\":\n return new PopupAnnotation(parameters);\n case \"FreeText\":\n return new FreeTextAnnotation(parameters);\n case \"Line\":\n return new LineAnnotation(parameters);\n case \"Square\":\n return new SquareAnnotation(parameters);\n case \"Circle\":\n return new CircleAnnotation(parameters);\n case \"PolyLine\":\n return new PolylineAnnotation(parameters);\n case \"Polygon\":\n return new PolygonAnnotation(parameters);\n case \"Caret\":\n return new CaretAnnotation(parameters);\n case \"Ink\":\n return new InkAnnotation(parameters);\n case \"Highlight\":\n return new HighlightAnnotation(parameters);\n case \"Underline\":\n return new UnderlineAnnotation(parameters);\n case \"Squiggly\":\n return new SquigglyAnnotation(parameters);\n case \"StrikeOut\":\n return new StrikeOutAnnotation(parameters);\n case \"Stamp\":\n return new StampAnnotation(parameters);\n case \"FileAttachment\":\n return new FileAttachmentAnnotation(parameters);\n default:\n if (!collectFields) {\n if (!subtype) {\n (0, _util.warn)(\"Annotation is missing the required /Subtype.\");\n } else {\n (0, _util.warn)(`Unimplemented annotation type \"${subtype}\", ` + \"falling back to base annotation.\");\n }\n }\n return new Annotation(parameters);\n }\n }\n static async _getPageIndex(xref, ref, pdfManager) {\n try {\n const annotDict = await xref.fetchIfRefAsync(ref);\n if (!(annotDict instanceof _primitives.Dict)) {\n return -1;\n }\n const pageRef = annotDict.getRaw(\"P\");\n if (pageRef instanceof _primitives.Ref) {\n try {\n const pageIndex = await pdfManager.ensureCatalog(\"getPageIndex\", [pageRef]);\n return pageIndex;\n } catch (ex) {\n (0, _util.info)(`_getPageIndex -- not a valid page reference: \"${ex}\".`);\n }\n }\n if (annotDict.has(\"Kids\")) {\n return -1;\n }\n const numPages = await pdfManager.ensureDoc(\"numPages\");\n for (let pageIndex = 0; pageIndex < numPages; pageIndex++) {\n const page = await pdfManager.getPage(pageIndex);\n const annotations = await pdfManager.ensure(page, \"annotations\");\n for (const annotRef of annotations) {\n if (annotRef instanceof _primitives.Ref && (0, _primitives.isRefsEqual)(annotRef, ref)) {\n return pageIndex;\n }\n }\n }\n } catch (ex) {\n (0, _util.warn)(`_getPageIndex: \"${ex}\".`);\n }\n return -1;\n }\n static generateImages(annotations, xref, isOffscreenCanvasSupported) {\n if (!isOffscreenCanvasSupported) {\n (0, _util.warn)(\"generateImages: OffscreenCanvas is not supported, cannot save or print some annotations with images.\");\n return null;\n }\n let imagePromises;\n for (const {\n bitmapId,\n bitmap\n } of annotations) {\n if (!bitmap) {\n continue;\n }\n imagePromises ||= new Map();\n imagePromises.set(bitmapId, StampAnnotation.createImage(bitmap, xref));\n }\n return imagePromises;\n }\n static async saveNewAnnotations(evaluator, task, annotations, imagePromises) {\n const xref = evaluator.xref;\n let baseFontRef;\n const dependencies = [];\n const promises = [];\n const {\n isOffscreenCanvasSupported\n } = evaluator.options;\n for (const annotation of annotations) {\n if (annotation.deleted) {\n continue;\n }\n switch (annotation.annotationType) {\n case _util.AnnotationEditorType.FREETEXT:\n if (!baseFontRef) {\n const baseFont = new _primitives.Dict(xref);\n baseFont.set(\"BaseFont\", _primitives.Name.get(\"Helvetica\"));\n baseFont.set(\"Type\", _primitives.Name.get(\"Font\"));\n baseFont.set(\"Subtype\", _primitives.Name.get(\"Type1\"));\n baseFont.set(\"Encoding\", _primitives.Name.get(\"WinAnsiEncoding\"));\n const buffer = [];\n baseFontRef = xref.getNewTemporaryRef();\n await (0, _writer.writeObject)(baseFontRef, baseFont, buffer, xref);\n dependencies.push({\n ref: baseFontRef,\n data: buffer.join(\"\")\n });\n }\n promises.push(FreeTextAnnotation.createNewAnnotation(xref, annotation, dependencies, {\n evaluator,\n task,\n baseFontRef\n }));\n break;\n case _util.AnnotationEditorType.INK:\n promises.push(InkAnnotation.createNewAnnotation(xref, annotation, dependencies));\n break;\n case _util.AnnotationEditorType.STAMP:\n if (!isOffscreenCanvasSupported) {\n break;\n }\n const image = await imagePromises.get(annotation.bitmapId);\n if (image.imageStream) {\n const {\n imageStream,\n smaskStream\n } = image;\n const buffer = [];\n if (smaskStream) {\n const smaskRef = xref.getNewTemporaryRef();\n await (0, _writer.writeObject)(smaskRef, smaskStream, buffer, xref);\n dependencies.push({\n ref: smaskRef,\n data: buffer.join(\"\")\n });\n imageStream.dict.set(\"SMask\", smaskRef);\n buffer.length = 0;\n }\n const imageRef = image.imageRef = xref.getNewTemporaryRef();\n await (0, _writer.writeObject)(imageRef, imageStream, buffer, xref);\n dependencies.push({\n ref: imageRef,\n data: buffer.join(\"\")\n });\n image.imageStream = image.smaskStream = null;\n }\n promises.push(StampAnnotation.createNewAnnotation(xref, annotation, dependencies, {\n image\n }));\n break;\n }\n }\n return {\n annotations: await Promise.all(promises),\n dependencies\n };\n }\n static async printNewAnnotations(annotationGlobals, evaluator, task, annotations, imagePromises) {\n if (!annotations) {\n return null;\n }\n const {\n options,\n xref\n } = evaluator;\n const promises = [];\n for (const annotation of annotations) {\n if (annotation.deleted) {\n continue;\n }\n switch (annotation.annotationType) {\n case _util.AnnotationEditorType.FREETEXT:\n promises.push(FreeTextAnnotation.createNewPrintAnnotation(annotationGlobals, xref, annotation, {\n evaluator,\n task,\n evaluatorOptions: options\n }));\n break;\n case _util.AnnotationEditorType.INK:\n promises.push(InkAnnotation.createNewPrintAnnotation(annotationGlobals, xref, annotation, {\n evaluatorOptions: options\n }));\n break;\n case _util.AnnotationEditorType.STAMP:\n if (!options.isOffscreenCanvasSupported) {\n break;\n }\n const image = await imagePromises.get(annotation.bitmapId);\n if (image.imageStream) {\n const {\n imageStream,\n smaskStream\n } = image;\n if (smaskStream) {\n imageStream.dict.set(\"SMask\", smaskStream);\n }\n image.imageRef = new _jpeg_stream.JpegStream(imageStream, imageStream.length);\n image.imageStream = image.smaskStream = null;\n }\n promises.push(StampAnnotation.createNewPrintAnnotation(annotationGlobals, xref, annotation, {\n image,\n evaluatorOptions: options\n }));\n break;\n }\n }\n return Promise.all(promises);\n }\n}\nexports.AnnotationFactory = AnnotationFactory;\nfunction getRgbColor(color, defaultColor = new Uint8ClampedArray(3)) {\n if (!Array.isArray(color)) {\n return defaultColor;\n }\n const rgbColor = defaultColor || new Uint8ClampedArray(3);\n switch (color.length) {\n case 0:\n return null;\n case 1:\n _colorspace.ColorSpace.singletons.gray.getRgbItem(color, 0, rgbColor, 0);\n return rgbColor;\n case 3:\n _colorspace.ColorSpace.singletons.rgb.getRgbItem(color, 0, rgbColor, 0);\n return rgbColor;\n case 4:\n _colorspace.ColorSpace.singletons.cmyk.getRgbItem(color, 0, rgbColor, 0);\n return rgbColor;\n default:\n return defaultColor;\n }\n}\nfunction getPdfColorArray(color) {\n return Array.from(color, c => c / 255);\n}\nfunction getQuadPoints(dict, rect) {\n const quadPoints = dict.getArray(\"QuadPoints\");\n if (!Array.isArray(quadPoints) || quadPoints.length === 0 || quadPoints.length % 8 > 0) {\n return null;\n }\n const quadPointsLists = [];\n for (let i = 0, ii = quadPoints.length / 8; i < ii; i++) {\n let minX = Infinity,\n maxX = -Infinity,\n minY = Infinity,\n maxY = -Infinity;\n for (let j = i * 8, jj = i * 8 + 8; j < jj; j += 2) {\n const x = quadPoints[j];\n const y = quadPoints[j + 1];\n minX = Math.min(x, minX);\n maxX = Math.max(x, maxX);\n minY = Math.min(y, minY);\n maxY = Math.max(y, maxY);\n }\n if (rect !== null && (minX < rect[0] || maxX > rect[2] || minY < rect[1] || maxY > rect[3])) {\n return null;\n }\n quadPointsLists.push([{\n x: minX,\n y: maxY\n }, {\n x: maxX,\n y: maxY\n }, {\n x: minX,\n y: minY\n }, {\n x: maxX,\n y: minY\n }]);\n }\n return quadPointsLists;\n}\nfunction getTransformMatrix(rect, bbox, matrix) {\n const [minX, minY, maxX, maxY] = _util.Util.getAxialAlignedBoundingBox(bbox, matrix);\n if (minX === maxX || minY === maxY) {\n return [1, 0, 0, 1, rect[0], rect[1]];\n }\n const xRatio = (rect[2] - rect[0]) / (maxX - minX);\n const yRatio = (rect[3] - rect[1]) / (maxY - minY);\n return [xRatio, 0, 0, yRatio, rect[0] - minX * xRatio, rect[1] - minY * yRatio];\n}\nclass Annotation {\n constructor(params) {\n const {\n dict,\n xref,\n annotationGlobals\n } = params;\n this.setTitle(dict.get(\"T\"));\n this.setContents(dict.get(\"Contents\"));\n this.setModificationDate(dict.get(\"M\"));\n this.setFlags(dict.get(\"F\"));\n this.setRectangle(dict.getArray(\"Rect\"));\n this.setColor(dict.getArray(\"C\"));\n this.setBorderStyle(dict);\n this.setAppearance(dict);\n this.setOptionalContent(dict);\n const MK = dict.get(\"MK\");\n this.setBorderAndBackgroundColors(MK);\n this.setRotation(MK, dict);\n this.ref = params.ref instanceof _primitives.Ref ? params.ref : null;\n this._streams = [];\n if (this.appearance) {\n this._streams.push(this.appearance);\n }\n const isLocked = !!(this.flags & _util.AnnotationFlag.LOCKED);\n const isContentLocked = !!(this.flags & _util.AnnotationFlag.LOCKEDCONTENTS);\n if (annotationGlobals.structTreeRoot) {\n let structParent = dict.get(\"StructParent\");\n structParent = Number.isInteger(structParent) && structParent >= 0 ? structParent : -1;\n annotationGlobals.structTreeRoot.addAnnotationIdToPage(params.pageRef, structParent);\n }\n this.data = {\n annotationFlags: this.flags,\n borderStyle: this.borderStyle,\n color: this.color,\n backgroundColor: this.backgroundColor,\n borderColor: this.borderColor,\n rotation: this.rotation,\n contentsObj: this._contents,\n hasAppearance: !!this.appearance,\n id: params.id,\n modificationDate: this.modificationDate,\n rect: this.rectangle,\n subtype: params.subtype,\n hasOwnCanvas: false,\n noRotate: !!(this.flags & _util.AnnotationFlag.NOROTATE),\n noHTML: isLocked && isContentLocked\n };\n if (params.collectFields) {\n const kids = dict.get(\"Kids\");\n if (Array.isArray(kids)) {\n const kidIds = [];\n for (const kid of kids) {\n if (kid instanceof _primitives.Ref) {\n kidIds.push(kid.toString());\n }\n }\n if (kidIds.length !== 0) {\n this.data.kidIds = kidIds;\n }\n }\n this.data.actions = (0, _core_utils.collectActions)(xref, dict, _util.AnnotationActionEventType);\n this.data.fieldName = this._constructFieldName(dict);\n this.data.pageIndex = params.pageIndex;\n }\n this._isOffscreenCanvasSupported = params.evaluatorOptions.isOffscreenCanvasSupported;\n this._fallbackFontDict = null;\n this._needAppearances = false;\n }\n _hasFlag(flags, flag) {\n return !!(flags & flag);\n }\n _isViewable(flags) {\n return !this._hasFlag(flags, _util.AnnotationFlag.INVISIBLE) && !this._hasFlag(flags, _util.AnnotationFlag.NOVIEW);\n }\n _isPrintable(flags) {\n return this._hasFlag(flags, _util.AnnotationFlag.PRINT) && !this._hasFlag(flags, _util.AnnotationFlag.HIDDEN) && !this._hasFlag(flags, _util.AnnotationFlag.INVISIBLE);\n }\n mustBeViewed(annotationStorage, _renderForms) {\n const noView = annotationStorage?.get(this.data.id)?.noView;\n if (noView !== undefined) {\n return !noView;\n }\n return this.viewable && !this._hasFlag(this.flags, _util.AnnotationFlag.HIDDEN);\n }\n mustBePrinted(annotationStorage) {\n const noPrint = annotationStorage?.get(this.data.id)?.noPrint;\n if (noPrint !== undefined) {\n return !noPrint;\n }\n return this.printable;\n }\n get viewable() {\n if (this.data.quadPoints === null) {\n return false;\n }\n if (this.flags === 0) {\n return true;\n }\n return this._isViewable(this.flags);\n }\n get printable() {\n if (this.data.quadPoints === null) {\n return false;\n }\n if (this.flags === 0) {\n return false;\n }\n return this._isPrintable(this.flags);\n }\n _parseStringHelper(data) {\n const str = typeof data === \"string\" ? (0, _util.stringToPDFString)(data) : \"\";\n const dir = str && (0, _bidi.bidi)(str).dir === \"rtl\" ? \"rtl\" : \"ltr\";\n return {\n str,\n dir\n };\n }\n setDefaultAppearance(params) {\n const {\n dict,\n annotationGlobals\n } = params;\n const defaultAppearance = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"DA\"\n }) || annotationGlobals.acroForm.get(\"DA\");\n this._defaultAppearance = typeof defaultAppearance === \"string\" ? defaultAppearance : \"\";\n this.data.defaultAppearanceData = (0, _default_appearance.parseDefaultAppearance)(this._defaultAppearance);\n }\n setTitle(title) {\n this._title = this._parseStringHelper(title);\n }\n setContents(contents) {\n this._contents = this._parseStringHelper(contents);\n }\n setModificationDate(modificationDate) {\n this.modificationDate = typeof modificationDate === \"string\" ? modificationDate : null;\n }\n setFlags(flags) {\n this.flags = Number.isInteger(flags) && flags > 0 ? flags : 0;\n }\n hasFlag(flag) {\n return this._hasFlag(this.flags, flag);\n }\n setRectangle(rectangle) {\n this.rectangle = Array.isArray(rectangle) && rectangle.length === 4 ? _util.Util.normalizeRect(rectangle) : [0, 0, 0, 0];\n }\n setColor(color) {\n this.color = getRgbColor(color);\n }\n setLineEndings(lineEndings) {\n this.lineEndings = [\"None\", \"None\"];\n if (Array.isArray(lineEndings) && lineEndings.length === 2) {\n for (let i = 0; i < 2; i++) {\n const obj = lineEndings[i];\n if (obj instanceof _primitives.Name) {\n switch (obj.name) {\n case \"None\":\n continue;\n case \"Square\":\n case \"Circle\":\n case \"Diamond\":\n case \"OpenArrow\":\n case \"ClosedArrow\":\n case \"Butt\":\n case \"ROpenArrow\":\n case \"RClosedArrow\":\n case \"Slash\":\n this.lineEndings[i] = obj.name;\n continue;\n }\n }\n (0, _util.warn)(`Ignoring invalid lineEnding: ${obj}`);\n }\n }\n }\n setRotation(mk, dict) {\n this.rotation = 0;\n let angle = mk instanceof _primitives.Dict ? mk.get(\"R\") || 0 : dict.get(\"Rotate\") || 0;\n if (Number.isInteger(angle) && angle !== 0) {\n angle %= 360;\n if (angle < 0) {\n angle += 360;\n }\n if (angle % 90 === 0) {\n this.rotation = angle;\n }\n }\n }\n setBorderAndBackgroundColors(mk) {\n if (mk instanceof _primitives.Dict) {\n this.borderColor = getRgbColor(mk.getArray(\"BC\"), null);\n this.backgroundColor = getRgbColor(mk.getArray(\"BG\"), null);\n } else {\n this.borderColor = this.backgroundColor = null;\n }\n }\n setBorderStyle(borderStyle) {\n this.borderStyle = new AnnotationBorderStyle();\n if (!(borderStyle instanceof _primitives.Dict)) {\n return;\n }\n if (borderStyle.has(\"BS\")) {\n const dict = borderStyle.get(\"BS\");\n const dictType = dict.get(\"Type\");\n if (!dictType || (0, _primitives.isName)(dictType, \"Border\")) {\n this.borderStyle.setWidth(dict.get(\"W\"), this.rectangle);\n this.borderStyle.setStyle(dict.get(\"S\"));\n this.borderStyle.setDashArray(dict.getArray(\"D\"));\n }\n } else if (borderStyle.has(\"Border\")) {\n const array = borderStyle.getArray(\"Border\");\n if (Array.isArray(array) && array.length >= 3) {\n this.borderStyle.setHorizontalCornerRadius(array[0]);\n this.borderStyle.setVerticalCornerRadius(array[1]);\n this.borderStyle.setWidth(array[2], this.rectangle);\n if (array.length === 4) {\n this.borderStyle.setDashArray(array[3], true);\n }\n }\n } else {\n this.borderStyle.setWidth(0);\n }\n }\n setAppearance(dict) {\n this.appearance = null;\n const appearanceStates = dict.get(\"AP\");\n if (!(appearanceStates instanceof _primitives.Dict)) {\n return;\n }\n const normalAppearanceState = appearanceStates.get(\"N\");\n if (normalAppearanceState instanceof _base_stream.BaseStream) {\n this.appearance = normalAppearanceState;\n return;\n }\n if (!(normalAppearanceState instanceof _primitives.Dict)) {\n return;\n }\n const as = dict.get(\"AS\");\n if (!(as instanceof _primitives.Name) || !normalAppearanceState.has(as.name)) {\n return;\n }\n const appearance = normalAppearanceState.get(as.name);\n if (appearance instanceof _base_stream.BaseStream) {\n this.appearance = appearance;\n }\n }\n setOptionalContent(dict) {\n this.oc = null;\n const oc = dict.get(\"OC\");\n if (oc instanceof _primitives.Name) {\n (0, _util.warn)(\"setOptionalContent: Support for /Name-entry is not implemented.\");\n } else if (oc instanceof _primitives.Dict) {\n this.oc = oc;\n }\n }\n loadResources(keys, appearance) {\n return appearance.dict.getAsync(\"Resources\").then(resources => {\n if (!resources) {\n return undefined;\n }\n const objectLoader = new _object_loader.ObjectLoader(resources, keys, resources.xref);\n return objectLoader.load().then(function () {\n return resources;\n });\n });\n }\n async getOperatorList(evaluator, task, intent, renderForms, annotationStorage) {\n const data = this.data;\n let appearance = this.appearance;\n const isUsingOwnCanvas = !!(this.data.hasOwnCanvas && intent & _util.RenderingIntentFlag.DISPLAY);\n if (!appearance) {\n if (!isUsingOwnCanvas) {\n return {\n opList: new _operator_list.OperatorList(),\n separateForm: false,\n separateCanvas: false\n };\n }\n appearance = new _stream.StringStream(\"\");\n appearance.dict = new _primitives.Dict();\n }\n const appearanceDict = appearance.dict;\n const resources = await this.loadResources([\"ExtGState\", \"ColorSpace\", \"Pattern\", \"Shading\", \"XObject\", \"Font\"], appearance);\n const bbox = appearanceDict.getArray(\"BBox\") || [0, 0, 1, 1];\n const matrix = appearanceDict.getArray(\"Matrix\") || [1, 0, 0, 1, 0, 0];\n const transform = getTransformMatrix(data.rect, bbox, matrix);\n const opList = new _operator_list.OperatorList();\n let optionalContent;\n if (this.oc) {\n optionalContent = await evaluator.parseMarkedContentProps(this.oc, null);\n }\n if (optionalContent !== undefined) {\n opList.addOp(_util.OPS.beginMarkedContentProps, [\"OC\", optionalContent]);\n }\n opList.addOp(_util.OPS.beginAnnotation, [data.id, data.rect, transform, matrix, isUsingOwnCanvas]);\n await evaluator.getOperatorList({\n stream: appearance,\n task,\n resources,\n operatorList: opList,\n fallbackFontDict: this._fallbackFontDict\n });\n opList.addOp(_util.OPS.endAnnotation, []);\n if (optionalContent !== undefined) {\n opList.addOp(_util.OPS.endMarkedContent, []);\n }\n this.reset();\n return {\n opList,\n separateForm: false,\n separateCanvas: isUsingOwnCanvas\n };\n }\n async save(evaluator, task, annotationStorage) {\n return null;\n }\n get hasTextContent() {\n return false;\n }\n async extractTextContent(evaluator, task, viewBox) {\n if (!this.appearance) {\n return;\n }\n const resources = await this.loadResources([\"ExtGState\", \"Font\", \"Properties\", \"XObject\"], this.appearance);\n const text = [];\n const buffer = [];\n let firstPosition = null;\n const sink = {\n desiredSize: Math.Infinity,\n ready: true,\n enqueue(chunk, size) {\n for (const item of chunk.items) {\n if (item.str === undefined) {\n continue;\n }\n firstPosition ||= item.transform.slice(-2);\n buffer.push(item.str);\n if (item.hasEOL) {\n text.push(buffer.join(\"\"));\n buffer.length = 0;\n }\n }\n }\n };\n await evaluator.getTextContent({\n stream: this.appearance,\n task,\n resources,\n includeMarkedContent: true,\n sink,\n viewBox\n });\n this.reset();\n if (buffer.length) {\n text.push(buffer.join(\"\"));\n }\n if (text.length > 1 || text[0]) {\n const appearanceDict = this.appearance.dict;\n const bbox = appearanceDict.getArray(\"BBox\") || [0, 0, 1, 1];\n const matrix = appearanceDict.getArray(\"Matrix\") || [1, 0, 0, 1, 0, 0];\n const rect = this.data.rect;\n const transform = getTransformMatrix(rect, bbox, matrix);\n transform[4] -= rect[0];\n transform[5] -= rect[1];\n firstPosition = _util.Util.applyTransform(firstPosition, transform);\n firstPosition = _util.Util.applyTransform(firstPosition, matrix);\n this.data.textPosition = firstPosition;\n this.data.textContent = text;\n }\n }\n getFieldObject() {\n if (this.data.kidIds) {\n return {\n id: this.data.id,\n actions: this.data.actions,\n name: this.data.fieldName,\n strokeColor: this.data.borderColor,\n fillColor: this.data.backgroundColor,\n type: \"\",\n kidIds: this.data.kidIds,\n page: this.data.pageIndex,\n rotation: this.rotation\n };\n }\n return null;\n }\n reset() {\n for (const stream of this._streams) {\n stream.reset();\n }\n }\n _constructFieldName(dict) {\n if (!dict.has(\"T\") && !dict.has(\"Parent\")) {\n (0, _util.warn)(\"Unknown field name, falling back to empty field name.\");\n return \"\";\n }\n if (!dict.has(\"Parent\")) {\n return (0, _util.stringToPDFString)(dict.get(\"T\"));\n }\n const fieldName = [];\n if (dict.has(\"T\")) {\n fieldName.unshift((0, _util.stringToPDFString)(dict.get(\"T\")));\n }\n let loopDict = dict;\n const visited = new _primitives.RefSet();\n if (dict.objId) {\n visited.put(dict.objId);\n }\n while (loopDict.has(\"Parent\")) {\n loopDict = loopDict.get(\"Parent\");\n if (!(loopDict instanceof _primitives.Dict) || loopDict.objId && visited.has(loopDict.objId)) {\n break;\n }\n if (loopDict.objId) {\n visited.put(loopDict.objId);\n }\n if (loopDict.has(\"T\")) {\n fieldName.unshift((0, _util.stringToPDFString)(loopDict.get(\"T\")));\n }\n }\n return fieldName.join(\".\");\n }\n}\nexports.Annotation = Annotation;\nclass AnnotationBorderStyle {\n constructor() {\n this.width = 1;\n this.style = _util.AnnotationBorderStyleType.SOLID;\n this.dashArray = [3];\n this.horizontalCornerRadius = 0;\n this.verticalCornerRadius = 0;\n }\n setWidth(width, rect = [0, 0, 0, 0]) {\n if (width instanceof _primitives.Name) {\n this.width = 0;\n return;\n }\n if (typeof width === \"number\") {\n if (width > 0) {\n const maxWidth = (rect[2] - rect[0]) / 2;\n const maxHeight = (rect[3] - rect[1]) / 2;\n if (maxWidth > 0 && maxHeight > 0 && (width > maxWidth || width > maxHeight)) {\n (0, _util.warn)(`AnnotationBorderStyle.setWidth - ignoring width: ${width}`);\n width = 1;\n }\n }\n this.width = width;\n }\n }\n setStyle(style) {\n if (!(style instanceof _primitives.Name)) {\n return;\n }\n switch (style.name) {\n case \"S\":\n this.style = _util.AnnotationBorderStyleType.SOLID;\n break;\n case \"D\":\n this.style = _util.AnnotationBorderStyleType.DASHED;\n break;\n case \"B\":\n this.style = _util.AnnotationBorderStyleType.BEVELED;\n break;\n case \"I\":\n this.style = _util.AnnotationBorderStyleType.INSET;\n break;\n case \"U\":\n this.style = _util.AnnotationBorderStyleType.UNDERLINE;\n break;\n default:\n break;\n }\n }\n setDashArray(dashArray, forceStyle = false) {\n if (Array.isArray(dashArray) && dashArray.length > 0) {\n let isValid = true;\n let allZeros = true;\n for (const element of dashArray) {\n const validNumber = +element >= 0;\n if (!validNumber) {\n isValid = false;\n break;\n } else if (element > 0) {\n allZeros = false;\n }\n }\n if (isValid && !allZeros) {\n this.dashArray = dashArray;\n if (forceStyle) {\n this.setStyle(_primitives.Name.get(\"D\"));\n }\n } else {\n this.width = 0;\n }\n } else if (dashArray) {\n this.width = 0;\n }\n }\n setHorizontalCornerRadius(radius) {\n if (Number.isInteger(radius)) {\n this.horizontalCornerRadius = radius;\n }\n }\n setVerticalCornerRadius(radius) {\n if (Number.isInteger(radius)) {\n this.verticalCornerRadius = radius;\n }\n }\n}\nexports.AnnotationBorderStyle = AnnotationBorderStyle;\nclass MarkupAnnotation extends Annotation {\n constructor(params) {\n super(params);\n const {\n dict\n } = params;\n if (dict.has(\"IRT\")) {\n const rawIRT = dict.getRaw(\"IRT\");\n this.data.inReplyTo = rawIRT instanceof _primitives.Ref ? rawIRT.toString() : null;\n const rt = dict.get(\"RT\");\n this.data.replyType = rt instanceof _primitives.Name ? rt.name : _util.AnnotationReplyType.REPLY;\n }\n let popupRef = null;\n if (this.data.replyType === _util.AnnotationReplyType.GROUP) {\n const parent = dict.get(\"IRT\");\n this.setTitle(parent.get(\"T\"));\n this.data.titleObj = this._title;\n this.setContents(parent.get(\"Contents\"));\n this.data.contentsObj = this._contents;\n if (!parent.has(\"CreationDate\")) {\n this.data.creationDate = null;\n } else {\n this.setCreationDate(parent.get(\"CreationDate\"));\n this.data.creationDate = this.creationDate;\n }\n if (!parent.has(\"M\")) {\n this.data.modificationDate = null;\n } else {\n this.setModificationDate(parent.get(\"M\"));\n this.data.modificationDate = this.modificationDate;\n }\n popupRef = parent.getRaw(\"Popup\");\n if (!parent.has(\"C\")) {\n this.data.color = null;\n } else {\n this.setColor(parent.getArray(\"C\"));\n this.data.color = this.color;\n }\n } else {\n this.data.titleObj = this._title;\n this.setCreationDate(dict.get(\"CreationDate\"));\n this.data.creationDate = this.creationDate;\n popupRef = dict.getRaw(\"Popup\");\n if (!dict.has(\"C\")) {\n this.data.color = null;\n }\n }\n this.data.popupRef = popupRef instanceof _primitives.Ref ? popupRef.toString() : null;\n if (dict.has(\"RC\")) {\n this.data.richText = _factory.XFAFactory.getRichTextAsHtml(dict.get(\"RC\"));\n }\n }\n setCreationDate(creationDate) {\n this.creationDate = typeof creationDate === \"string\" ? creationDate : null;\n }\n _setDefaultAppearance({\n xref,\n extra,\n strokeColor,\n fillColor,\n blendMode,\n strokeAlpha,\n fillAlpha,\n pointsCallback\n }) {\n let minX = Number.MAX_VALUE;\n let minY = Number.MAX_VALUE;\n let maxX = Number.MIN_VALUE;\n let maxY = Number.MIN_VALUE;\n const buffer = [\"q\"];\n if (extra) {\n buffer.push(extra);\n }\n if (strokeColor) {\n buffer.push(`${strokeColor[0]} ${strokeColor[1]} ${strokeColor[2]} RG`);\n }\n if (fillColor) {\n buffer.push(`${fillColor[0]} ${fillColor[1]} ${fillColor[2]} rg`);\n }\n let pointsArray = this.data.quadPoints;\n if (!pointsArray) {\n pointsArray = [[{\n x: this.rectangle[0],\n y: this.rectangle[3]\n }, {\n x: this.rectangle[2],\n y: this.rectangle[3]\n }, {\n x: this.rectangle[0],\n y: this.rectangle[1]\n }, {\n x: this.rectangle[2],\n y: this.rectangle[1]\n }]];\n }\n for (const points of pointsArray) {\n const [mX, MX, mY, MY] = pointsCallback(buffer, points);\n minX = Math.min(minX, mX);\n maxX = Math.max(maxX, MX);\n minY = Math.min(minY, mY);\n maxY = Math.max(maxY, MY);\n }\n buffer.push(\"Q\");\n const formDict = new _primitives.Dict(xref);\n const appearanceStreamDict = new _primitives.Dict(xref);\n appearanceStreamDict.set(\"Subtype\", _primitives.Name.get(\"Form\"));\n const appearanceStream = new _stream.StringStream(buffer.join(\" \"));\n appearanceStream.dict = appearanceStreamDict;\n formDict.set(\"Fm0\", appearanceStream);\n const gsDict = new _primitives.Dict(xref);\n if (blendMode) {\n gsDict.set(\"BM\", _primitives.Name.get(blendMode));\n }\n if (typeof strokeAlpha === \"number\") {\n gsDict.set(\"CA\", strokeAlpha);\n }\n if (typeof fillAlpha === \"number\") {\n gsDict.set(\"ca\", fillAlpha);\n }\n const stateDict = new _primitives.Dict(xref);\n stateDict.set(\"GS0\", gsDict);\n const resources = new _primitives.Dict(xref);\n resources.set(\"ExtGState\", stateDict);\n resources.set(\"XObject\", formDict);\n const appearanceDict = new _primitives.Dict(xref);\n appearanceDict.set(\"Resources\", resources);\n const bbox = this.data.rect = [minX, minY, maxX, maxY];\n appearanceDict.set(\"BBox\", bbox);\n this.appearance = new _stream.StringStream(\"/GS0 gs /Fm0 Do\");\n this.appearance.dict = appearanceDict;\n this._streams.push(this.appearance, appearanceStream);\n }\n static async createNewAnnotation(xref, annotation, dependencies, params) {\n const annotationRef = annotation.ref ||= xref.getNewTemporaryRef();\n const ap = await this.createNewAppearanceStream(annotation, xref, params);\n const buffer = [];\n let annotationDict;\n if (ap) {\n const apRef = xref.getNewTemporaryRef();\n annotationDict = this.createNewDict(annotation, xref, {\n apRef\n });\n await (0, _writer.writeObject)(apRef, ap, buffer, xref);\n dependencies.push({\n ref: apRef,\n data: buffer.join(\"\")\n });\n } else {\n annotationDict = this.createNewDict(annotation, xref, {});\n }\n if (Number.isInteger(annotation.parentTreeId)) {\n annotationDict.set(\"StructParent\", annotation.parentTreeId);\n }\n buffer.length = 0;\n await (0, _writer.writeObject)(annotationRef, annotationDict, buffer, xref);\n return {\n ref: annotationRef,\n data: buffer.join(\"\")\n };\n }\n static async createNewPrintAnnotation(annotationGlobals, xref, annotation, params) {\n const ap = await this.createNewAppearanceStream(annotation, xref, params);\n const annotationDict = this.createNewDict(annotation, xref, {\n ap\n });\n const newAnnotation = new this.prototype.constructor({\n dict: annotationDict,\n xref,\n annotationGlobals,\n evaluatorOptions: params.evaluatorOptions\n });\n if (annotation.ref) {\n newAnnotation.ref = newAnnotation.refToReplace = annotation.ref;\n }\n return newAnnotation;\n }\n}\nexports.MarkupAnnotation = MarkupAnnotation;\nclass WidgetAnnotation extends Annotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref,\n annotationGlobals\n } = params;\n const data = this.data;\n this._needAppearances = params.needAppearances;\n data.annotationType = _util.AnnotationType.WIDGET;\n if (data.fieldName === undefined) {\n data.fieldName = this._constructFieldName(dict);\n }\n if (data.actions === undefined) {\n data.actions = (0, _core_utils.collectActions)(xref, dict, _util.AnnotationActionEventType);\n }\n let fieldValue = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"V\",\n getArray: true\n });\n data.fieldValue = this._decodeFormValue(fieldValue);\n const defaultFieldValue = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"DV\",\n getArray: true\n });\n data.defaultFieldValue = this._decodeFormValue(defaultFieldValue);\n if (fieldValue === undefined && annotationGlobals.xfaDatasets) {\n const path = this._title.str;\n if (path) {\n this._hasValueFromXFA = true;\n data.fieldValue = fieldValue = annotationGlobals.xfaDatasets.getValue(path);\n }\n }\n if (fieldValue === undefined && data.defaultFieldValue !== null) {\n data.fieldValue = data.defaultFieldValue;\n }\n data.alternativeText = (0, _util.stringToPDFString)(dict.get(\"TU\") || \"\");\n this.setDefaultAppearance(params);\n data.hasAppearance ||= this._needAppearances && data.fieldValue !== undefined && data.fieldValue !== null;\n const fieldType = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"FT\"\n });\n data.fieldType = fieldType instanceof _primitives.Name ? fieldType.name : null;\n const localResources = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"DR\"\n });\n const acroFormResources = annotationGlobals.acroForm.get(\"DR\");\n const appearanceResources = this.appearance?.dict.get(\"Resources\");\n this._fieldResources = {\n localResources,\n acroFormResources,\n appearanceResources,\n mergedResources: _primitives.Dict.merge({\n xref,\n dictArray: [localResources, appearanceResources, acroFormResources],\n mergeSubDicts: true\n })\n };\n data.fieldFlags = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"Ff\"\n });\n if (!Number.isInteger(data.fieldFlags) || data.fieldFlags < 0) {\n data.fieldFlags = 0;\n }\n data.readOnly = this.hasFieldFlag(_util.AnnotationFieldFlag.READONLY);\n data.required = this.hasFieldFlag(_util.AnnotationFieldFlag.REQUIRED);\n data.hidden = this._hasFlag(data.annotationFlags, _util.AnnotationFlag.HIDDEN) || this._hasFlag(data.annotationFlags, _util.AnnotationFlag.NOVIEW);\n }\n _decodeFormValue(formValue) {\n if (Array.isArray(formValue)) {\n return formValue.filter(item => typeof item === \"string\").map(item => (0, _util.stringToPDFString)(item));\n } else if (formValue instanceof _primitives.Name) {\n return (0, _util.stringToPDFString)(formValue.name);\n } else if (typeof formValue === \"string\") {\n return (0, _util.stringToPDFString)(formValue);\n }\n return null;\n }\n hasFieldFlag(flag) {\n return !!(this.data.fieldFlags & flag);\n }\n _isViewable(flags) {\n return !this._hasFlag(flags, _util.AnnotationFlag.INVISIBLE);\n }\n mustBeViewed(annotationStorage, renderForms) {\n if (renderForms) {\n return this.viewable;\n }\n return super.mustBeViewed(annotationStorage, renderForms) && !this._hasFlag(this.flags, _util.AnnotationFlag.NOVIEW);\n }\n getRotationMatrix(annotationStorage) {\n let rotation = annotationStorage?.get(this.data.id)?.rotation;\n if (rotation === undefined) {\n rotation = this.rotation;\n }\n if (rotation === 0) {\n return _util.IDENTITY_MATRIX;\n }\n const width = this.data.rect[2] - this.data.rect[0];\n const height = this.data.rect[3] - this.data.rect[1];\n return (0, _core_utils.getRotationMatrix)(rotation, width, height);\n }\n getBorderAndBackgroundAppearances(annotationStorage) {\n let rotation = annotationStorage?.get(this.data.id)?.rotation;\n if (rotation === undefined) {\n rotation = this.rotation;\n }\n if (!this.backgroundColor && !this.borderColor) {\n return \"\";\n }\n const width = this.data.rect[2] - this.data.rect[0];\n const height = this.data.rect[3] - this.data.rect[1];\n const rect = rotation === 0 || rotation === 180 ? `0 0 ${width} ${height} re` : `0 0 ${height} ${width} re`;\n let str = \"\";\n if (this.backgroundColor) {\n str = `${(0, _default_appearance.getPdfColor)(this.backgroundColor, true)} ${rect} f `;\n }\n if (this.borderColor) {\n const borderWidth = this.borderStyle.width || 1;\n str += `${borderWidth} w ${(0, _default_appearance.getPdfColor)(this.borderColor, false)} ${rect} S `;\n }\n return str;\n }\n async getOperatorList(evaluator, task, intent, renderForms, annotationStorage) {\n if (renderForms && !(this instanceof SignatureWidgetAnnotation) && !this.data.noHTML && !this.data.hasOwnCanvas) {\n return {\n opList: new _operator_list.OperatorList(),\n separateForm: true,\n separateCanvas: false\n };\n }\n if (!this._hasText) {\n return super.getOperatorList(evaluator, task, intent, renderForms, annotationStorage);\n }\n const content = await this._getAppearance(evaluator, task, intent, annotationStorage);\n if (this.appearance && content === null) {\n return super.getOperatorList(evaluator, task, intent, renderForms, annotationStorage);\n }\n const opList = new _operator_list.OperatorList();\n if (!this._defaultAppearance || content === null) {\n return {\n opList,\n separateForm: false,\n separateCanvas: false\n };\n }\n const isUsingOwnCanvas = !!(this.data.hasOwnCanvas && intent & _util.RenderingIntentFlag.DISPLAY);\n const matrix = [1, 0, 0, 1, 0, 0];\n const bbox = [0, 0, this.data.rect[2] - this.data.rect[0], this.data.rect[3] - this.data.rect[1]];\n const transform = getTransformMatrix(this.data.rect, bbox, matrix);\n let optionalContent;\n if (this.oc) {\n optionalContent = await evaluator.parseMarkedContentProps(this.oc, null);\n }\n if (optionalContent !== undefined) {\n opList.addOp(_util.OPS.beginMarkedContentProps, [\"OC\", optionalContent]);\n }\n opList.addOp(_util.OPS.beginAnnotation, [this.data.id, this.data.rect, transform, this.getRotationMatrix(annotationStorage), isUsingOwnCanvas]);\n const stream = new _stream.StringStream(content);\n await evaluator.getOperatorList({\n stream,\n task,\n resources: this._fieldResources.mergedResources,\n operatorList: opList\n });\n opList.addOp(_util.OPS.endAnnotation, []);\n if (optionalContent !== undefined) {\n opList.addOp(_util.OPS.endMarkedContent, []);\n }\n return {\n opList,\n separateForm: false,\n separateCanvas: isUsingOwnCanvas\n };\n }\n _getMKDict(rotation) {\n const mk = new _primitives.Dict(null);\n if (rotation) {\n mk.set(\"R\", rotation);\n }\n if (this.borderColor) {\n mk.set(\"BC\", getPdfColorArray(this.borderColor));\n }\n if (this.backgroundColor) {\n mk.set(\"BG\", getPdfColorArray(this.backgroundColor));\n }\n return mk.size > 0 ? mk : null;\n }\n amendSavedDict(annotationStorage, dict) {}\n async save(evaluator, task, annotationStorage) {\n const storageEntry = annotationStorage?.get(this.data.id);\n let value = storageEntry?.value,\n rotation = storageEntry?.rotation;\n if (value === this.data.fieldValue || value === undefined) {\n if (!this._hasValueFromXFA && rotation === undefined) {\n return null;\n }\n value ||= this.data.fieldValue;\n }\n if (rotation === undefined && !this._hasValueFromXFA && Array.isArray(value) && Array.isArray(this.data.fieldValue) && value.length === this.data.fieldValue.length && value.every((x, i) => x === this.data.fieldValue[i])) {\n return null;\n }\n if (rotation === undefined) {\n rotation = this.rotation;\n }\n let appearance = null;\n if (!this._needAppearances) {\n appearance = await this._getAppearance(evaluator, task, _util.RenderingIntentFlag.SAVE, annotationStorage);\n if (appearance === null) {\n return null;\n }\n } else {}\n let needAppearances = false;\n if (appearance?.needAppearances) {\n needAppearances = true;\n appearance = null;\n }\n const {\n xref\n } = evaluator;\n const originalDict = xref.fetchIfRef(this.ref);\n if (!(originalDict instanceof _primitives.Dict)) {\n return null;\n }\n const dict = new _primitives.Dict(xref);\n for (const key of originalDict.getKeys()) {\n if (key !== \"AP\") {\n dict.set(key, originalDict.getRaw(key));\n }\n }\n const xfa = {\n path: this.data.fieldName,\n value\n };\n const encoder = val => {\n return (0, _core_utils.isAscii)(val) ? val : (0, _core_utils.stringToUTF16String)(val, true);\n };\n dict.set(\"V\", Array.isArray(value) ? value.map(encoder) : encoder(value));\n this.amendSavedDict(annotationStorage, dict);\n const maybeMK = this._getMKDict(rotation);\n if (maybeMK) {\n dict.set(\"MK\", maybeMK);\n }\n const buffer = [];\n const changes = [{\n ref: this.ref,\n data: \"\",\n xfa,\n needAppearances\n }];\n if (appearance !== null) {\n const newRef = xref.getNewTemporaryRef();\n const AP = new _primitives.Dict(xref);\n dict.set(\"AP\", AP);\n AP.set(\"N\", newRef);\n const resources = this._getSaveFieldResources(xref);\n const appearanceStream = new _stream.StringStream(appearance);\n const appearanceDict = appearanceStream.dict = new _primitives.Dict(xref);\n appearanceDict.set(\"Subtype\", _primitives.Name.get(\"Form\"));\n appearanceDict.set(\"Resources\", resources);\n appearanceDict.set(\"BBox\", [0, 0, this.data.rect[2] - this.data.rect[0], this.data.rect[3] - this.data.rect[1]]);\n const rotationMatrix = this.getRotationMatrix(annotationStorage);\n if (rotationMatrix !== _util.IDENTITY_MATRIX) {\n appearanceDict.set(\"Matrix\", rotationMatrix);\n }\n await (0, _writer.writeObject)(newRef, appearanceStream, buffer, xref);\n changes.push({\n ref: newRef,\n data: buffer.join(\"\"),\n xfa: null,\n needAppearances: false\n });\n buffer.length = 0;\n }\n dict.set(\"M\", `D:${(0, _util.getModificationDate)()}`);\n await (0, _writer.writeObject)(this.ref, dict, buffer, xref);\n changes[0].data = buffer.join(\"\");\n return changes;\n }\n async _getAppearance(evaluator, task, intent, annotationStorage) {\n const isPassword = this.hasFieldFlag(_util.AnnotationFieldFlag.PASSWORD);\n if (isPassword) {\n return null;\n }\n const storageEntry = annotationStorage?.get(this.data.id);\n let value, rotation;\n if (storageEntry) {\n value = storageEntry.formattedValue || storageEntry.value;\n rotation = storageEntry.rotation;\n }\n if (rotation === undefined && value === undefined && !this._needAppearances) {\n if (!this._hasValueFromXFA || this.appearance) {\n return null;\n }\n }\n const colors = this.getBorderAndBackgroundAppearances(annotationStorage);\n if (value === undefined) {\n value = this.data.fieldValue;\n if (!value) {\n return `/Tx BMC q ${colors}Q EMC`;\n }\n }\n if (Array.isArray(value) && value.length === 1) {\n value = value[0];\n }\n (0, _util.assert)(typeof value === \"string\", \"Expected `value` to be a string.\");\n value = value.trim();\n if (this.data.combo) {\n const option = this.data.options.find(({\n exportValue\n }) => value === exportValue);\n value = option?.displayValue || value;\n }\n if (value === \"\") {\n return `/Tx BMC q ${colors}Q EMC`;\n }\n if (rotation === undefined) {\n rotation = this.rotation;\n }\n let lineCount = -1;\n let lines;\n if (this.data.multiLine) {\n lines = value.split(/\\r\\n?|\\n/).map(line => line.normalize(\"NFC\"));\n lineCount = lines.length;\n } else {\n lines = [value.replace(/\\r\\n?|\\n/, \"\").normalize(\"NFC\")];\n }\n const defaultPadding = 1;\n const defaultHPadding = 2;\n let totalHeight = this.data.rect[3] - this.data.rect[1];\n let totalWidth = this.data.rect[2] - this.data.rect[0];\n if (rotation === 90 || rotation === 270) {\n [totalWidth, totalHeight] = [totalHeight, totalWidth];\n }\n if (!this._defaultAppearance) {\n this.data.defaultAppearanceData = (0, _default_appearance.parseDefaultAppearance)(this._defaultAppearance = \"/Helvetica 0 Tf 0 g\");\n }\n let font = await WidgetAnnotation._getFontData(evaluator, task, this.data.defaultAppearanceData, this._fieldResources.mergedResources);\n let defaultAppearance, fontSize, lineHeight;\n const encodedLines = [];\n let encodingError = false;\n for (const line of lines) {\n const encodedString = font.encodeString(line);\n if (encodedString.length > 1) {\n encodingError = true;\n }\n encodedLines.push(encodedString.join(\"\"));\n }\n if (encodingError && intent & _util.RenderingIntentFlag.SAVE) {\n return {\n needAppearances: true\n };\n }\n if (encodingError && this._isOffscreenCanvasSupported) {\n const fontFamily = this.data.comb ? \"monospace\" : \"sans-serif\";\n const fakeUnicodeFont = new _default_appearance.FakeUnicodeFont(evaluator.xref, fontFamily);\n const resources = fakeUnicodeFont.createFontResources(lines.join(\"\"));\n const newFont = resources.getRaw(\"Font\");\n if (this._fieldResources.mergedResources.has(\"Font\")) {\n const oldFont = this._fieldResources.mergedResources.get(\"Font\");\n for (const key of newFont.getKeys()) {\n oldFont.set(key, newFont.getRaw(key));\n }\n } else {\n this._fieldResources.mergedResources.set(\"Font\", newFont);\n }\n const fontName = fakeUnicodeFont.fontName.name;\n font = await WidgetAnnotation._getFontData(evaluator, task, {\n fontName,\n fontSize: 0\n }, resources);\n for (let i = 0, ii = encodedLines.length; i < ii; i++) {\n encodedLines[i] = (0, _core_utils.stringToUTF16String)(lines[i]);\n }\n const savedDefaultAppearance = Object.assign(Object.create(null), this.data.defaultAppearanceData);\n this.data.defaultAppearanceData.fontSize = 0;\n this.data.defaultAppearanceData.fontName = fontName;\n [defaultAppearance, fontSize, lineHeight] = this._computeFontSize(totalHeight - 2 * defaultPadding, totalWidth - 2 * defaultHPadding, value, font, lineCount);\n this.data.defaultAppearanceData = savedDefaultAppearance;\n } else {\n if (!this._isOffscreenCanvasSupported) {\n (0, _util.warn)(\"_getAppearance: OffscreenCanvas is not supported, annotation may not render correctly.\");\n }\n [defaultAppearance, fontSize, lineHeight] = this._computeFontSize(totalHeight - 2 * defaultPadding, totalWidth - 2 * defaultHPadding, value, font, lineCount);\n }\n let descent = font.descent;\n if (isNaN(descent)) {\n descent = _util.BASELINE_FACTOR * lineHeight;\n } else {\n descent = Math.max(_util.BASELINE_FACTOR * lineHeight, Math.abs(descent) * fontSize);\n }\n const defaultVPadding = Math.min(Math.floor((totalHeight - fontSize) / 2), defaultPadding);\n const alignment = this.data.textAlignment;\n if (this.data.multiLine) {\n return this._getMultilineAppearance(defaultAppearance, encodedLines, font, fontSize, totalWidth, totalHeight, alignment, defaultHPadding, defaultVPadding, descent, lineHeight, annotationStorage);\n }\n if (this.data.comb) {\n return this._getCombAppearance(defaultAppearance, font, encodedLines[0], fontSize, totalWidth, totalHeight, defaultHPadding, defaultVPadding, descent, lineHeight, annotationStorage);\n }\n const bottomPadding = defaultVPadding + descent;\n if (alignment === 0 || alignment > 2) {\n return `/Tx BMC q ${colors}BT ` + defaultAppearance + ` 1 0 0 1 ${(0, _core_utils.numberToString)(defaultHPadding)} ${(0, _core_utils.numberToString)(bottomPadding)} Tm (${(0, _core_utils.escapeString)(encodedLines[0])}) Tj` + \" ET Q EMC\";\n }\n const prevInfo = {\n shift: 0\n };\n const renderedText = this._renderText(encodedLines[0], font, fontSize, totalWidth, alignment, prevInfo, defaultHPadding, bottomPadding);\n return `/Tx BMC q ${colors}BT ` + defaultAppearance + ` 1 0 0 1 0 0 Tm ${renderedText}` + \" ET Q EMC\";\n }\n static async _getFontData(evaluator, task, appearanceData, resources) {\n const operatorList = new _operator_list.OperatorList();\n const initialState = {\n font: null,\n clone() {\n return this;\n }\n };\n const {\n fontName,\n fontSize\n } = appearanceData;\n await evaluator.handleSetFont(resources, [fontName && _primitives.Name.get(fontName), fontSize], null, operatorList, task, initialState, null);\n return initialState.font;\n }\n _getTextWidth(text, font) {\n return font.charsToGlyphs(text).reduce((width, glyph) => width + glyph.width, 0) / 1000;\n }\n _computeFontSize(height, width, text, font, lineCount) {\n let {\n fontSize\n } = this.data.defaultAppearanceData;\n let lineHeight = (fontSize || 12) * _util.LINE_FACTOR,\n numberOfLines = Math.round(height / lineHeight);\n if (!fontSize) {\n const roundWithTwoDigits = x => Math.floor(x * 100) / 100;\n if (lineCount === -1) {\n const textWidth = this._getTextWidth(text, font);\n fontSize = roundWithTwoDigits(Math.min(height / _util.LINE_FACTOR, textWidth > width ? width / textWidth : Infinity));\n numberOfLines = 1;\n } else {\n const lines = text.split(/\\r\\n?|\\n/);\n const cachedLines = [];\n for (const line of lines) {\n const encoded = font.encodeString(line).join(\"\");\n const glyphs = font.charsToGlyphs(encoded);\n const positions = font.getCharPositions(encoded);\n cachedLines.push({\n line: encoded,\n glyphs,\n positions\n });\n }\n const isTooBig = fsize => {\n let totalHeight = 0;\n for (const cache of cachedLines) {\n const chunks = this._splitLine(null, font, fsize, width, cache);\n totalHeight += chunks.length * fsize;\n if (totalHeight > height) {\n return true;\n }\n }\n return false;\n };\n numberOfLines = Math.max(numberOfLines, lineCount);\n while (true) {\n lineHeight = height / numberOfLines;\n fontSize = roundWithTwoDigits(lineHeight / _util.LINE_FACTOR);\n if (isTooBig(fontSize)) {\n numberOfLines++;\n continue;\n }\n break;\n }\n }\n const {\n fontName,\n fontColor\n } = this.data.defaultAppearanceData;\n this._defaultAppearance = (0, _default_appearance.createDefaultAppearance)({\n fontSize,\n fontName,\n fontColor\n });\n }\n return [this._defaultAppearance, fontSize, height / numberOfLines];\n }\n _renderText(text, font, fontSize, totalWidth, alignment, prevInfo, hPadding, vPadding) {\n let shift;\n if (alignment === 1) {\n const width = this._getTextWidth(text, font) * fontSize;\n shift = (totalWidth - width) / 2;\n } else if (alignment === 2) {\n const width = this._getTextWidth(text, font) * fontSize;\n shift = totalWidth - width - hPadding;\n } else {\n shift = hPadding;\n }\n const shiftStr = (0, _core_utils.numberToString)(shift - prevInfo.shift);\n prevInfo.shift = shift;\n vPadding = (0, _core_utils.numberToString)(vPadding);\n return `${shiftStr} ${vPadding} Td (${(0, _core_utils.escapeString)(text)}) Tj`;\n }\n _getSaveFieldResources(xref) {\n const {\n localResources,\n appearanceResources,\n acroFormResources\n } = this._fieldResources;\n const fontName = this.data.defaultAppearanceData?.fontName;\n if (!fontName) {\n return localResources || _primitives.Dict.empty;\n }\n for (const resources of [localResources, appearanceResources]) {\n if (resources instanceof _primitives.Dict) {\n const localFont = resources.get(\"Font\");\n if (localFont instanceof _primitives.Dict && localFont.has(fontName)) {\n return resources;\n }\n }\n }\n if (acroFormResources instanceof _primitives.Dict) {\n const acroFormFont = acroFormResources.get(\"Font\");\n if (acroFormFont instanceof _primitives.Dict && acroFormFont.has(fontName)) {\n const subFontDict = new _primitives.Dict(xref);\n subFontDict.set(fontName, acroFormFont.getRaw(fontName));\n const subResourcesDict = new _primitives.Dict(xref);\n subResourcesDict.set(\"Font\", subFontDict);\n return _primitives.Dict.merge({\n xref,\n dictArray: [subResourcesDict, localResources],\n mergeSubDicts: true\n });\n }\n }\n return localResources || _primitives.Dict.empty;\n }\n getFieldObject() {\n return null;\n }\n}\nclass TextWidgetAnnotation extends WidgetAnnotation {\n constructor(params) {\n super(params);\n this.data.hasOwnCanvas = this.data.readOnly && !this.data.noHTML;\n this._hasText = true;\n const dict = params.dict;\n if (typeof this.data.fieldValue !== \"string\") {\n this.data.fieldValue = \"\";\n }\n let alignment = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"Q\"\n });\n if (!Number.isInteger(alignment) || alignment < 0 || alignment > 2) {\n alignment = null;\n }\n this.data.textAlignment = alignment;\n let maximumLength = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"MaxLen\"\n });\n if (!Number.isInteger(maximumLength) || maximumLength < 0) {\n maximumLength = 0;\n }\n this.data.maxLen = maximumLength;\n this.data.multiLine = this.hasFieldFlag(_util.AnnotationFieldFlag.MULTILINE);\n this.data.comb = this.hasFieldFlag(_util.AnnotationFieldFlag.COMB) && !this.hasFieldFlag(_util.AnnotationFieldFlag.MULTILINE) && !this.hasFieldFlag(_util.AnnotationFieldFlag.PASSWORD) && !this.hasFieldFlag(_util.AnnotationFieldFlag.FILESELECT) && this.data.maxLen !== 0;\n this.data.doNotScroll = this.hasFieldFlag(_util.AnnotationFieldFlag.DONOTSCROLL);\n }\n get hasTextContent() {\n return !!this.appearance && !this._needAppearances;\n }\n _getCombAppearance(defaultAppearance, font, text, fontSize, width, height, hPadding, vPadding, descent, lineHeight, annotationStorage) {\n const combWidth = width / this.data.maxLen;\n const colors = this.getBorderAndBackgroundAppearances(annotationStorage);\n const buf = [];\n const positions = font.getCharPositions(text);\n for (const [start, end] of positions) {\n buf.push(`(${(0, _core_utils.escapeString)(text.substring(start, end))}) Tj`);\n }\n const renderedComb = buf.join(` ${(0, _core_utils.numberToString)(combWidth)} 0 Td `);\n return `/Tx BMC q ${colors}BT ` + defaultAppearance + ` 1 0 0 1 ${(0, _core_utils.numberToString)(hPadding)} ${(0, _core_utils.numberToString)(vPadding + descent)} Tm ${renderedComb}` + \" ET Q EMC\";\n }\n _getMultilineAppearance(defaultAppearance, lines, font, fontSize, width, height, alignment, hPadding, vPadding, descent, lineHeight, annotationStorage) {\n const buf = [];\n const totalWidth = width - 2 * hPadding;\n const prevInfo = {\n shift: 0\n };\n for (let i = 0, ii = lines.length; i < ii; i++) {\n const line = lines[i];\n const chunks = this._splitLine(line, font, fontSize, totalWidth);\n for (let j = 0, jj = chunks.length; j < jj; j++) {\n const chunk = chunks[j];\n const vShift = i === 0 && j === 0 ? -vPadding - (lineHeight - descent) : -lineHeight;\n buf.push(this._renderText(chunk, font, fontSize, width, alignment, prevInfo, hPadding, vShift));\n }\n }\n const colors = this.getBorderAndBackgroundAppearances(annotationStorage);\n const renderedText = buf.join(\"\\n\");\n return `/Tx BMC q ${colors}BT ` + defaultAppearance + ` 1 0 0 1 0 ${(0, _core_utils.numberToString)(height)} Tm ${renderedText}` + \" ET Q EMC\";\n }\n _splitLine(line, font, fontSize, width, cache = {}) {\n line = cache.line || line;\n const glyphs = cache.glyphs || font.charsToGlyphs(line);\n if (glyphs.length <= 1) {\n return [line];\n }\n const positions = cache.positions || font.getCharPositions(line);\n const scale = fontSize / 1000;\n const chunks = [];\n let lastSpacePosInStringStart = -1,\n lastSpacePosInStringEnd = -1,\n lastSpacePos = -1,\n startChunk = 0,\n currentWidth = 0;\n for (let i = 0, ii = glyphs.length; i < ii; i++) {\n const [start, end] = positions[i];\n const glyph = glyphs[i];\n const glyphWidth = glyph.width * scale;\n if (glyph.unicode === \" \") {\n if (currentWidth + glyphWidth > width) {\n chunks.push(line.substring(startChunk, start));\n startChunk = start;\n currentWidth = glyphWidth;\n lastSpacePosInStringStart = -1;\n lastSpacePos = -1;\n } else {\n currentWidth += glyphWidth;\n lastSpacePosInStringStart = start;\n lastSpacePosInStringEnd = end;\n lastSpacePos = i;\n }\n } else if (currentWidth + glyphWidth > width) {\n if (lastSpacePosInStringStart !== -1) {\n chunks.push(line.substring(startChunk, lastSpacePosInStringEnd));\n startChunk = lastSpacePosInStringEnd;\n i = lastSpacePos + 1;\n lastSpacePosInStringStart = -1;\n currentWidth = 0;\n } else {\n chunks.push(line.substring(startChunk, start));\n startChunk = start;\n currentWidth = glyphWidth;\n }\n } else {\n currentWidth += glyphWidth;\n }\n }\n if (startChunk < line.length) {\n chunks.push(line.substring(startChunk, line.length));\n }\n return chunks;\n }\n getFieldObject() {\n return {\n id: this.data.id,\n value: this.data.fieldValue,\n defaultValue: this.data.defaultFieldValue || \"\",\n multiline: this.data.multiLine,\n password: this.hasFieldFlag(_util.AnnotationFieldFlag.PASSWORD),\n charLimit: this.data.maxLen,\n comb: this.data.comb,\n editable: !this.data.readOnly,\n hidden: this.data.hidden,\n name: this.data.fieldName,\n rect: this.data.rect,\n actions: this.data.actions,\n page: this.data.pageIndex,\n strokeColor: this.data.borderColor,\n fillColor: this.data.backgroundColor,\n rotation: this.rotation,\n type: \"text\"\n };\n }\n}\nclass ButtonWidgetAnnotation extends WidgetAnnotation {\n constructor(params) {\n super(params);\n this.checkedAppearance = null;\n this.uncheckedAppearance = null;\n this.data.checkBox = !this.hasFieldFlag(_util.AnnotationFieldFlag.RADIO) && !this.hasFieldFlag(_util.AnnotationFieldFlag.PUSHBUTTON);\n this.data.radioButton = this.hasFieldFlag(_util.AnnotationFieldFlag.RADIO) && !this.hasFieldFlag(_util.AnnotationFieldFlag.PUSHBUTTON);\n this.data.pushButton = this.hasFieldFlag(_util.AnnotationFieldFlag.PUSHBUTTON);\n this.data.isTooltipOnly = false;\n if (this.data.checkBox) {\n this._processCheckBox(params);\n } else if (this.data.radioButton) {\n this._processRadioButton(params);\n } else if (this.data.pushButton) {\n this.data.hasOwnCanvas = true;\n this._processPushButton(params);\n } else {\n (0, _util.warn)(\"Invalid field flags for button widget annotation\");\n }\n }\n async getOperatorList(evaluator, task, intent, renderForms, annotationStorage) {\n if (this.data.pushButton) {\n return super.getOperatorList(evaluator, task, intent, false, annotationStorage);\n }\n let value = null;\n let rotation = null;\n if (annotationStorage) {\n const storageEntry = annotationStorage.get(this.data.id);\n value = storageEntry ? storageEntry.value : null;\n rotation = storageEntry ? storageEntry.rotation : null;\n }\n if (value === null && this.appearance) {\n return super.getOperatorList(evaluator, task, intent, renderForms, annotationStorage);\n }\n if (value === null || value === undefined) {\n value = this.data.checkBox ? this.data.fieldValue === this.data.exportValue : this.data.fieldValue === this.data.buttonValue;\n }\n const appearance = value ? this.checkedAppearance : this.uncheckedAppearance;\n if (appearance) {\n const savedAppearance = this.appearance;\n const savedMatrix = appearance.dict.getArray(\"Matrix\") || _util.IDENTITY_MATRIX;\n if (rotation) {\n appearance.dict.set(\"Matrix\", this.getRotationMatrix(annotationStorage));\n }\n this.appearance = appearance;\n const operatorList = super.getOperatorList(evaluator, task, intent, renderForms, annotationStorage);\n this.appearance = savedAppearance;\n appearance.dict.set(\"Matrix\", savedMatrix);\n return operatorList;\n }\n return {\n opList: new _operator_list.OperatorList(),\n separateForm: false,\n separateCanvas: false\n };\n }\n async save(evaluator, task, annotationStorage) {\n if (this.data.checkBox) {\n return this._saveCheckbox(evaluator, task, annotationStorage);\n }\n if (this.data.radioButton) {\n return this._saveRadioButton(evaluator, task, annotationStorage);\n }\n return null;\n }\n async _saveCheckbox(evaluator, task, annotationStorage) {\n if (!annotationStorage) {\n return null;\n }\n const storageEntry = annotationStorage.get(this.data.id);\n let rotation = storageEntry?.rotation,\n value = storageEntry?.value;\n if (rotation === undefined) {\n if (value === undefined) {\n return null;\n }\n const defaultValue = this.data.fieldValue === this.data.exportValue;\n if (defaultValue === value) {\n return null;\n }\n }\n const dict = evaluator.xref.fetchIfRef(this.ref);\n if (!(dict instanceof _primitives.Dict)) {\n return null;\n }\n if (rotation === undefined) {\n rotation = this.rotation;\n }\n if (value === undefined) {\n value = this.data.fieldValue === this.data.exportValue;\n }\n const xfa = {\n path: this.data.fieldName,\n value: value ? this.data.exportValue : \"\"\n };\n const name = _primitives.Name.get(value ? this.data.exportValue : \"Off\");\n dict.set(\"V\", name);\n dict.set(\"AS\", name);\n dict.set(\"M\", `D:${(0, _util.getModificationDate)()}`);\n const maybeMK = this._getMKDict(rotation);\n if (maybeMK) {\n dict.set(\"MK\", maybeMK);\n }\n const buffer = [];\n await (0, _writer.writeObject)(this.ref, dict, buffer, evaluator.xref);\n return [{\n ref: this.ref,\n data: buffer.join(\"\"),\n xfa\n }];\n }\n async _saveRadioButton(evaluator, task, annotationStorage) {\n if (!annotationStorage) {\n return null;\n }\n const storageEntry = annotationStorage.get(this.data.id);\n let rotation = storageEntry?.rotation,\n value = storageEntry?.value;\n if (rotation === undefined) {\n if (value === undefined) {\n return null;\n }\n const defaultValue = this.data.fieldValue === this.data.buttonValue;\n if (defaultValue === value) {\n return null;\n }\n }\n const dict = evaluator.xref.fetchIfRef(this.ref);\n if (!(dict instanceof _primitives.Dict)) {\n return null;\n }\n if (value === undefined) {\n value = this.data.fieldValue === this.data.buttonValue;\n }\n if (rotation === undefined) {\n rotation = this.rotation;\n }\n const xfa = {\n path: this.data.fieldName,\n value: value ? this.data.buttonValue : \"\"\n };\n const name = _primitives.Name.get(value ? this.data.buttonValue : \"Off\");\n const buffer = [];\n let parentData = null;\n if (value) {\n if (this.parent instanceof _primitives.Ref) {\n const parent = evaluator.xref.fetch(this.parent);\n parent.set(\"V\", name);\n await (0, _writer.writeObject)(this.parent, parent, buffer, evaluator.xref);\n parentData = buffer.join(\"\");\n buffer.length = 0;\n } else if (this.parent instanceof _primitives.Dict) {\n this.parent.set(\"V\", name);\n }\n }\n dict.set(\"AS\", name);\n dict.set(\"M\", `D:${(0, _util.getModificationDate)()}`);\n const maybeMK = this._getMKDict(rotation);\n if (maybeMK) {\n dict.set(\"MK\", maybeMK);\n }\n await (0, _writer.writeObject)(this.ref, dict, buffer, evaluator.xref);\n const newRefs = [{\n ref: this.ref,\n data: buffer.join(\"\"),\n xfa\n }];\n if (parentData) {\n newRefs.push({\n ref: this.parent,\n data: parentData,\n xfa: null\n });\n }\n return newRefs;\n }\n _getDefaultCheckedAppearance(params, type) {\n const width = this.data.rect[2] - this.data.rect[0];\n const height = this.data.rect[3] - this.data.rect[1];\n const bbox = [0, 0, width, height];\n const FONT_RATIO = 0.8;\n const fontSize = Math.min(width, height) * FONT_RATIO;\n let metrics, char;\n if (type === \"check\") {\n metrics = {\n width: 0.755 * fontSize,\n height: 0.705 * fontSize\n };\n char = \"\\x33\";\n } else if (type === \"disc\") {\n metrics = {\n width: 0.791 * fontSize,\n height: 0.705 * fontSize\n };\n char = \"\\x6C\";\n } else {\n (0, _util.unreachable)(`_getDefaultCheckedAppearance - unsupported type: ${type}`);\n }\n const xShift = (0, _core_utils.numberToString)((width - metrics.width) / 2);\n const yShift = (0, _core_utils.numberToString)((height - metrics.height) / 2);\n const appearance = `q BT /PdfJsZaDb ${fontSize} Tf 0 g ${xShift} ${yShift} Td (${char}) Tj ET Q`;\n const appearanceStreamDict = new _primitives.Dict(params.xref);\n appearanceStreamDict.set(\"FormType\", 1);\n appearanceStreamDict.set(\"Subtype\", _primitives.Name.get(\"Form\"));\n appearanceStreamDict.set(\"Type\", _primitives.Name.get(\"XObject\"));\n appearanceStreamDict.set(\"BBox\", bbox);\n appearanceStreamDict.set(\"Matrix\", [1, 0, 0, 1, 0, 0]);\n appearanceStreamDict.set(\"Length\", appearance.length);\n const resources = new _primitives.Dict(params.xref);\n const font = new _primitives.Dict(params.xref);\n font.set(\"PdfJsZaDb\", this.fallbackFontDict);\n resources.set(\"Font\", font);\n appearanceStreamDict.set(\"Resources\", resources);\n this.checkedAppearance = new _stream.StringStream(appearance);\n this.checkedAppearance.dict = appearanceStreamDict;\n this._streams.push(this.checkedAppearance);\n }\n _processCheckBox(params) {\n const customAppearance = params.dict.get(\"AP\");\n if (!(customAppearance instanceof _primitives.Dict)) {\n return;\n }\n const normalAppearance = customAppearance.get(\"N\");\n if (!(normalAppearance instanceof _primitives.Dict)) {\n return;\n }\n const asValue = this._decodeFormValue(params.dict.get(\"AS\"));\n if (typeof asValue === \"string\") {\n this.data.fieldValue = asValue;\n }\n const yes = this.data.fieldValue !== null && this.data.fieldValue !== \"Off\" ? this.data.fieldValue : \"Yes\";\n const exportValues = normalAppearance.getKeys();\n if (exportValues.length === 0) {\n exportValues.push(\"Off\", yes);\n } else if (exportValues.length === 1) {\n if (exportValues[0] === \"Off\") {\n exportValues.push(yes);\n } else {\n exportValues.unshift(\"Off\");\n }\n } else if (exportValues.includes(yes)) {\n exportValues.length = 0;\n exportValues.push(\"Off\", yes);\n } else {\n const otherYes = exportValues.find(v => v !== \"Off\");\n exportValues.length = 0;\n exportValues.push(\"Off\", otherYes);\n }\n if (!exportValues.includes(this.data.fieldValue)) {\n this.data.fieldValue = \"Off\";\n }\n this.data.exportValue = exportValues[1];\n const checkedAppearance = normalAppearance.get(this.data.exportValue);\n this.checkedAppearance = checkedAppearance instanceof _base_stream.BaseStream ? checkedAppearance : null;\n const uncheckedAppearance = normalAppearance.get(\"Off\");\n this.uncheckedAppearance = uncheckedAppearance instanceof _base_stream.BaseStream ? uncheckedAppearance : null;\n if (this.checkedAppearance) {\n this._streams.push(this.checkedAppearance);\n } else {\n this._getDefaultCheckedAppearance(params, \"check\");\n }\n if (this.uncheckedAppearance) {\n this._streams.push(this.uncheckedAppearance);\n }\n this._fallbackFontDict = this.fallbackFontDict;\n if (this.data.defaultFieldValue === null) {\n this.data.defaultFieldValue = \"Off\";\n }\n }\n _processRadioButton(params) {\n this.data.fieldValue = this.data.buttonValue = null;\n const fieldParent = params.dict.get(\"Parent\");\n if (fieldParent instanceof _primitives.Dict) {\n this.parent = params.dict.getRaw(\"Parent\");\n const fieldParentValue = fieldParent.get(\"V\");\n if (fieldParentValue instanceof _primitives.Name) {\n this.data.fieldValue = this._decodeFormValue(fieldParentValue);\n }\n }\n const appearanceStates = params.dict.get(\"AP\");\n if (!(appearanceStates instanceof _primitives.Dict)) {\n return;\n }\n const normalAppearance = appearanceStates.get(\"N\");\n if (!(normalAppearance instanceof _primitives.Dict)) {\n return;\n }\n for (const key of normalAppearance.getKeys()) {\n if (key !== \"Off\") {\n this.data.buttonValue = this._decodeFormValue(key);\n break;\n }\n }\n const checkedAppearance = normalAppearance.get(this.data.buttonValue);\n this.checkedAppearance = checkedAppearance instanceof _base_stream.BaseStream ? checkedAppearance : null;\n const uncheckedAppearance = normalAppearance.get(\"Off\");\n this.uncheckedAppearance = uncheckedAppearance instanceof _base_stream.BaseStream ? uncheckedAppearance : null;\n if (this.checkedAppearance) {\n this._streams.push(this.checkedAppearance);\n } else {\n this._getDefaultCheckedAppearance(params, \"disc\");\n }\n if (this.uncheckedAppearance) {\n this._streams.push(this.uncheckedAppearance);\n }\n this._fallbackFontDict = this.fallbackFontDict;\n if (this.data.defaultFieldValue === null) {\n this.data.defaultFieldValue = \"Off\";\n }\n }\n _processPushButton(params) {\n const {\n dict,\n annotationGlobals\n } = params;\n if (!dict.has(\"A\") && !dict.has(\"AA\") && !this.data.alternativeText) {\n (0, _util.warn)(\"Push buttons without action dictionaries are not supported\");\n return;\n }\n this.data.isTooltipOnly = !dict.has(\"A\") && !dict.has(\"AA\");\n _catalog.Catalog.parseDestDictionary({\n destDict: dict,\n resultObj: this.data,\n docBaseUrl: annotationGlobals.baseUrl,\n docAttachments: annotationGlobals.attachments\n });\n }\n getFieldObject() {\n let type = \"button\";\n let exportValues;\n if (this.data.checkBox) {\n type = \"checkbox\";\n exportValues = this.data.exportValue;\n } else if (this.data.radioButton) {\n type = \"radiobutton\";\n exportValues = this.data.buttonValue;\n }\n return {\n id: this.data.id,\n value: this.data.fieldValue || \"Off\",\n defaultValue: this.data.defaultFieldValue,\n exportValues,\n editable: !this.data.readOnly,\n name: this.data.fieldName,\n rect: this.data.rect,\n hidden: this.data.hidden,\n actions: this.data.actions,\n page: this.data.pageIndex,\n strokeColor: this.data.borderColor,\n fillColor: this.data.backgroundColor,\n rotation: this.rotation,\n type\n };\n }\n get fallbackFontDict() {\n const dict = new _primitives.Dict();\n dict.set(\"BaseFont\", _primitives.Name.get(\"ZapfDingbats\"));\n dict.set(\"Type\", _primitives.Name.get(\"FallbackType\"));\n dict.set(\"Subtype\", _primitives.Name.get(\"FallbackType\"));\n dict.set(\"Encoding\", _primitives.Name.get(\"ZapfDingbatsEncoding\"));\n return (0, _util.shadow)(this, \"fallbackFontDict\", dict);\n }\n}\nclass ChoiceWidgetAnnotation extends WidgetAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n this.indices = dict.getArray(\"I\");\n this.hasIndices = Array.isArray(this.indices) && this.indices.length > 0;\n this.data.options = [];\n const options = (0, _core_utils.getInheritableProperty)({\n dict,\n key: \"Opt\"\n });\n if (Array.isArray(options)) {\n for (let i = 0, ii = options.length; i < ii; i++) {\n const option = xref.fetchIfRef(options[i]);\n const isOptionArray = Array.isArray(option);\n this.data.options[i] = {\n exportValue: this._decodeFormValue(isOptionArray ? xref.fetchIfRef(option[0]) : option),\n displayValue: this._decodeFormValue(isOptionArray ? xref.fetchIfRef(option[1]) : option)\n };\n }\n }\n if (!this.hasIndices) {\n if (typeof this.data.fieldValue === \"string\") {\n this.data.fieldValue = [this.data.fieldValue];\n } else if (!this.data.fieldValue) {\n this.data.fieldValue = [];\n }\n } else {\n this.data.fieldValue = [];\n const ii = this.data.options.length;\n for (const i of this.indices) {\n if (Number.isInteger(i) && i >= 0 && i < ii) {\n this.data.fieldValue.push(this.data.options[i].exportValue);\n }\n }\n }\n this.data.combo = this.hasFieldFlag(_util.AnnotationFieldFlag.COMBO);\n this.data.multiSelect = this.hasFieldFlag(_util.AnnotationFieldFlag.MULTISELECT);\n this._hasText = true;\n }\n getFieldObject() {\n const type = this.data.combo ? \"combobox\" : \"listbox\";\n const value = this.data.fieldValue.length > 0 ? this.data.fieldValue[0] : null;\n return {\n id: this.data.id,\n value,\n defaultValue: this.data.defaultFieldValue,\n editable: !this.data.readOnly,\n name: this.data.fieldName,\n rect: this.data.rect,\n numItems: this.data.fieldValue.length,\n multipleSelection: this.data.multiSelect,\n hidden: this.data.hidden,\n actions: this.data.actions,\n items: this.data.options,\n page: this.data.pageIndex,\n strokeColor: this.data.borderColor,\n fillColor: this.data.backgroundColor,\n rotation: this.rotation,\n type\n };\n }\n amendSavedDict(annotationStorage, dict) {\n if (!this.hasIndices) {\n return;\n }\n let values = annotationStorage?.get(this.data.id)?.value;\n if (!Array.isArray(values)) {\n values = [values];\n }\n const indices = [];\n const {\n options\n } = this.data;\n for (let i = 0, j = 0, ii = options.length; i < ii; i++) {\n if (options[i].exportValue === values[j]) {\n indices.push(i);\n j += 1;\n }\n }\n dict.set(\"I\", indices);\n }\n async _getAppearance(evaluator, task, intent, annotationStorage) {\n if (this.data.combo) {\n return super._getAppearance(evaluator, task, intent, annotationStorage);\n }\n let exportedValue, rotation;\n const storageEntry = annotationStorage?.get(this.data.id);\n if (storageEntry) {\n rotation = storageEntry.rotation;\n exportedValue = storageEntry.value;\n }\n if (rotation === undefined && exportedValue === undefined && !this._needAppearances) {\n return null;\n }\n if (exportedValue === undefined) {\n exportedValue = this.data.fieldValue;\n } else if (!Array.isArray(exportedValue)) {\n exportedValue = [exportedValue];\n }\n const defaultPadding = 1;\n const defaultHPadding = 2;\n let totalHeight = this.data.rect[3] - this.data.rect[1];\n let totalWidth = this.data.rect[2] - this.data.rect[0];\n if (rotation === 90 || rotation === 270) {\n [totalWidth, totalHeight] = [totalHeight, totalWidth];\n }\n const lineCount = this.data.options.length;\n const valueIndices = [];\n for (let i = 0; i < lineCount; i++) {\n const {\n exportValue\n } = this.data.options[i];\n if (exportedValue.includes(exportValue)) {\n valueIndices.push(i);\n }\n }\n if (!this._defaultAppearance) {\n this.data.defaultAppearanceData = (0, _default_appearance.parseDefaultAppearance)(this._defaultAppearance = \"/Helvetica 0 Tf 0 g\");\n }\n const font = await WidgetAnnotation._getFontData(evaluator, task, this.data.defaultAppearanceData, this._fieldResources.mergedResources);\n let defaultAppearance;\n let {\n fontSize\n } = this.data.defaultAppearanceData;\n if (!fontSize) {\n const lineHeight = (totalHeight - defaultPadding) / lineCount;\n let lineWidth = -1;\n let value;\n for (const {\n displayValue\n } of this.data.options) {\n const width = this._getTextWidth(displayValue, font);\n if (width > lineWidth) {\n lineWidth = width;\n value = displayValue;\n }\n }\n [defaultAppearance, fontSize] = this._computeFontSize(lineHeight, totalWidth - 2 * defaultHPadding, value, font, -1);\n } else {\n defaultAppearance = this._defaultAppearance;\n }\n const lineHeight = fontSize * _util.LINE_FACTOR;\n const vPadding = (lineHeight - fontSize) / 2;\n const numberOfVisibleLines = Math.floor(totalHeight / lineHeight);\n let firstIndex = 0;\n if (valueIndices.length > 0) {\n const minIndex = Math.min(...valueIndices);\n const maxIndex = Math.max(...valueIndices);\n firstIndex = Math.max(0, maxIndex - numberOfVisibleLines + 1);\n if (firstIndex > minIndex) {\n firstIndex = minIndex;\n }\n }\n const end = Math.min(firstIndex + numberOfVisibleLines + 1, lineCount);\n const buf = [\"/Tx BMC q\", `1 1 ${totalWidth} ${totalHeight} re W n`];\n if (valueIndices.length) {\n buf.push(\"0.600006 0.756866 0.854904 rg\");\n for (const index of valueIndices) {\n if (firstIndex <= index && index < end) {\n buf.push(`1 ${totalHeight - (index - firstIndex + 1) * lineHeight} ${totalWidth} ${lineHeight} re f`);\n }\n }\n }\n buf.push(\"BT\", defaultAppearance, `1 0 0 1 0 ${totalHeight} Tm`);\n const prevInfo = {\n shift: 0\n };\n for (let i = firstIndex; i < end; i++) {\n const {\n displayValue\n } = this.data.options[i];\n const vpadding = i === firstIndex ? vPadding : 0;\n buf.push(this._renderText(displayValue, font, fontSize, totalWidth, 0, prevInfo, defaultHPadding, -lineHeight + vpadding));\n }\n buf.push(\"ET Q EMC\");\n return buf.join(\"\\n\");\n }\n}\nclass SignatureWidgetAnnotation extends WidgetAnnotation {\n constructor(params) {\n super(params);\n this.data.fieldValue = null;\n this.data.hasOwnCanvas = this.data.noRotate;\n }\n getFieldObject() {\n return {\n id: this.data.id,\n value: null,\n page: this.data.pageIndex,\n type: \"signature\"\n };\n }\n}\nclass TextAnnotation extends MarkupAnnotation {\n constructor(params) {\n const DEFAULT_ICON_SIZE = 22;\n super(params);\n this.data.noRotate = true;\n this.data.hasOwnCanvas = this.data.noRotate;\n const {\n dict\n } = params;\n this.data.annotationType = _util.AnnotationType.TEXT;\n if (this.data.hasAppearance) {\n this.data.name = \"NoIcon\";\n } else {\n this.data.rect[1] = this.data.rect[3] - DEFAULT_ICON_SIZE;\n this.data.rect[2] = this.data.rect[0] + DEFAULT_ICON_SIZE;\n this.data.name = dict.has(\"Name\") ? dict.get(\"Name\").name : \"Note\";\n }\n if (dict.has(\"State\")) {\n this.data.state = dict.get(\"State\") || null;\n this.data.stateModel = dict.get(\"StateModel\") || null;\n } else {\n this.data.state = null;\n this.data.stateModel = null;\n }\n }\n}\nclass LinkAnnotation extends Annotation {\n constructor(params) {\n super(params);\n const {\n dict,\n annotationGlobals\n } = params;\n this.data.annotationType = _util.AnnotationType.LINK;\n const quadPoints = getQuadPoints(dict, this.rectangle);\n if (quadPoints) {\n this.data.quadPoints = quadPoints;\n }\n this.data.borderColor ||= this.data.color;\n _catalog.Catalog.parseDestDictionary({\n destDict: dict,\n resultObj: this.data,\n docBaseUrl: annotationGlobals.baseUrl,\n docAttachments: annotationGlobals.attachments\n });\n }\n}\nclass PopupAnnotation extends Annotation {\n constructor(params) {\n super(params);\n const {\n dict\n } = params;\n this.data.annotationType = _util.AnnotationType.POPUP;\n if (this.data.rect[0] === this.data.rect[2] || this.data.rect[1] === this.data.rect[3]) {\n this.data.rect = null;\n }\n let parentItem = dict.get(\"Parent\");\n if (!parentItem) {\n (0, _util.warn)(\"Popup annotation has a missing or invalid parent annotation.\");\n return;\n }\n const parentRect = parentItem.getArray(\"Rect\");\n this.data.parentRect = Array.isArray(parentRect) && parentRect.length === 4 ? _util.Util.normalizeRect(parentRect) : null;\n const rt = parentItem.get(\"RT\");\n if ((0, _primitives.isName)(rt, _util.AnnotationReplyType.GROUP)) {\n parentItem = parentItem.get(\"IRT\");\n }\n if (!parentItem.has(\"M\")) {\n this.data.modificationDate = null;\n } else {\n this.setModificationDate(parentItem.get(\"M\"));\n this.data.modificationDate = this.modificationDate;\n }\n if (!parentItem.has(\"C\")) {\n this.data.color = null;\n } else {\n this.setColor(parentItem.getArray(\"C\"));\n this.data.color = this.color;\n }\n if (!this.viewable) {\n const parentFlags = parentItem.get(\"F\");\n if (this._isViewable(parentFlags)) {\n this.setFlags(parentFlags);\n }\n }\n this.setTitle(parentItem.get(\"T\"));\n this.data.titleObj = this._title;\n this.setContents(parentItem.get(\"Contents\"));\n this.data.contentsObj = this._contents;\n if (parentItem.has(\"RC\")) {\n this.data.richText = _factory.XFAFactory.getRichTextAsHtml(parentItem.get(\"RC\"));\n }\n this.data.open = !!dict.get(\"Open\");\n }\n}\nexports.PopupAnnotation = PopupAnnotation;\nclass FreeTextAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n this.data.hasOwnCanvas = true;\n const {\n evaluatorOptions,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.FREETEXT;\n this.setDefaultAppearance(params);\n if (this.appearance) {\n const {\n fontColor,\n fontSize\n } = (0, _default_appearance.parseAppearanceStream)(this.appearance, evaluatorOptions, xref);\n this.data.defaultAppearanceData.fontColor = fontColor;\n this.data.defaultAppearanceData.fontSize = fontSize || 10;\n } else if (this._isOffscreenCanvasSupported) {\n const strokeAlpha = params.dict.get(\"CA\");\n const fakeUnicodeFont = new _default_appearance.FakeUnicodeFont(xref, \"sans-serif\");\n this.data.defaultAppearanceData.fontSize ||= 10;\n const {\n fontColor,\n fontSize\n } = this.data.defaultAppearanceData;\n this.appearance = fakeUnicodeFont.createAppearance(this._contents.str, this.rectangle, this.rotation, fontSize, fontColor, strokeAlpha);\n this._streams.push(this.appearance, _default_appearance.FakeUnicodeFont.toUnicodeStream);\n } else {\n (0, _util.warn)(\"FreeTextAnnotation: OffscreenCanvas is not supported, annotation may not render correctly.\");\n }\n }\n get hasTextContent() {\n return !!this.appearance;\n }\n static createNewDict(annotation, xref, {\n apRef,\n ap\n }) {\n const {\n color,\n fontSize,\n rect,\n rotation,\n user,\n value\n } = annotation;\n const freetext = new _primitives.Dict(xref);\n freetext.set(\"Type\", _primitives.Name.get(\"Annot\"));\n freetext.set(\"Subtype\", _primitives.Name.get(\"FreeText\"));\n freetext.set(\"CreationDate\", `D:${(0, _util.getModificationDate)()}`);\n freetext.set(\"Rect\", rect);\n const da = `/Helv ${fontSize} Tf ${(0, _default_appearance.getPdfColor)(color, true)}`;\n freetext.set(\"DA\", da);\n freetext.set(\"Contents\", (0, _core_utils.isAscii)(value) ? value : (0, _core_utils.stringToUTF16String)(value, true));\n freetext.set(\"F\", 4);\n freetext.set(\"Border\", [0, 0, 0]);\n freetext.set(\"Rotate\", rotation);\n if (user) {\n freetext.set(\"T\", (0, _core_utils.isAscii)(user) ? user : (0, _core_utils.stringToUTF16String)(user, true));\n }\n if (apRef || ap) {\n const n = new _primitives.Dict(xref);\n freetext.set(\"AP\", n);\n if (apRef) {\n n.set(\"N\", apRef);\n } else {\n n.set(\"N\", ap);\n }\n }\n return freetext;\n }\n static async createNewAppearanceStream(annotation, xref, params) {\n const {\n baseFontRef,\n evaluator,\n task\n } = params;\n const {\n color,\n fontSize,\n rect,\n rotation,\n value\n } = annotation;\n const resources = new _primitives.Dict(xref);\n const font = new _primitives.Dict(xref);\n if (baseFontRef) {\n font.set(\"Helv\", baseFontRef);\n } else {\n const baseFont = new _primitives.Dict(xref);\n baseFont.set(\"BaseFont\", _primitives.Name.get(\"Helvetica\"));\n baseFont.set(\"Type\", _primitives.Name.get(\"Font\"));\n baseFont.set(\"Subtype\", _primitives.Name.get(\"Type1\"));\n baseFont.set(\"Encoding\", _primitives.Name.get(\"WinAnsiEncoding\"));\n font.set(\"Helv\", baseFont);\n }\n resources.set(\"Font\", font);\n const helv = await WidgetAnnotation._getFontData(evaluator, task, {\n fontName: \"Helv\",\n fontSize\n }, resources);\n const [x1, y1, x2, y2] = rect;\n let w = x2 - x1;\n let h = y2 - y1;\n if (rotation % 180 !== 0) {\n [w, h] = [h, w];\n }\n const lines = value.split(\"\\n\");\n const scale = fontSize / 1000;\n let totalWidth = -Infinity;\n const encodedLines = [];\n for (let line of lines) {\n const encoded = helv.encodeString(line);\n if (encoded.length > 1) {\n return null;\n }\n line = encoded.join(\"\");\n encodedLines.push(line);\n let lineWidth = 0;\n const glyphs = helv.charsToGlyphs(line);\n for (const glyph of glyphs) {\n lineWidth += glyph.width * scale;\n }\n totalWidth = Math.max(totalWidth, lineWidth);\n }\n let hscale = 1;\n if (totalWidth > w) {\n hscale = w / totalWidth;\n }\n let vscale = 1;\n const lineHeight = _util.LINE_FACTOR * fontSize;\n const lineAscent = (_util.LINE_FACTOR - _util.LINE_DESCENT_FACTOR) * fontSize;\n const totalHeight = lineHeight * lines.length;\n if (totalHeight > h) {\n vscale = h / totalHeight;\n }\n const fscale = Math.min(hscale, vscale);\n const newFontSize = fontSize * fscale;\n let firstPoint, clipBox, matrix;\n switch (rotation) {\n case 0:\n matrix = [1, 0, 0, 1];\n clipBox = [rect[0], rect[1], w, h];\n firstPoint = [rect[0], rect[3] - lineAscent];\n break;\n case 90:\n matrix = [0, 1, -1, 0];\n clipBox = [rect[1], -rect[2], w, h];\n firstPoint = [rect[1], -rect[0] - lineAscent];\n break;\n case 180:\n matrix = [-1, 0, 0, -1];\n clipBox = [-rect[2], -rect[3], w, h];\n firstPoint = [-rect[2], -rect[1] - lineAscent];\n break;\n case 270:\n matrix = [0, -1, 1, 0];\n clipBox = [-rect[3], rect[0], w, h];\n firstPoint = [-rect[3], rect[2] - lineAscent];\n break;\n }\n const buffer = [\"q\", `${matrix.join(\" \")} 0 0 cm`, `${clipBox.join(\" \")} re W n`, `BT`, `${(0, _default_appearance.getPdfColor)(color, true)}`, `0 Tc /Helv ${(0, _core_utils.numberToString)(newFontSize)} Tf`];\n buffer.push(`${firstPoint.join(\" \")} Td (${(0, _core_utils.escapeString)(encodedLines[0])}) Tj`);\n const vShift = (0, _core_utils.numberToString)(lineHeight);\n for (let i = 1, ii = encodedLines.length; i < ii; i++) {\n const line = encodedLines[i];\n buffer.push(`0 -${vShift} Td (${(0, _core_utils.escapeString)(line)}) Tj`);\n }\n buffer.push(\"ET\", \"Q\");\n const appearance = buffer.join(\"\\n\");\n const appearanceStreamDict = new _primitives.Dict(xref);\n appearanceStreamDict.set(\"FormType\", 1);\n appearanceStreamDict.set(\"Subtype\", _primitives.Name.get(\"Form\"));\n appearanceStreamDict.set(\"Type\", _primitives.Name.get(\"XObject\"));\n appearanceStreamDict.set(\"BBox\", rect);\n appearanceStreamDict.set(\"Resources\", resources);\n appearanceStreamDict.set(\"Matrix\", [1, 0, 0, 1, -rect[0], -rect[1]]);\n const ap = new _stream.StringStream(appearance);\n ap.dict = appearanceStreamDict;\n return ap;\n }\n}\nclass LineAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.LINE;\n this.data.hasOwnCanvas = this.data.noRotate;\n const lineCoordinates = dict.getArray(\"L\");\n this.data.lineCoordinates = _util.Util.normalizeRect(lineCoordinates);\n this.setLineEndings(dict.getArray(\"LE\"));\n this.data.lineEndings = this.lineEndings;\n if (!this.appearance) {\n const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];\n const strokeAlpha = dict.get(\"CA\");\n const interiorColor = getRgbColor(dict.getArray(\"IC\"), null);\n const fillColor = interiorColor ? getPdfColorArray(interiorColor) : null;\n const fillAlpha = fillColor ? strokeAlpha : null;\n const borderWidth = this.borderStyle.width || 1,\n borderAdjust = 2 * borderWidth;\n const bbox = [this.data.lineCoordinates[0] - borderAdjust, this.data.lineCoordinates[1] - borderAdjust, this.data.lineCoordinates[2] + borderAdjust, this.data.lineCoordinates[3] + borderAdjust];\n if (!_util.Util.intersect(this.rectangle, bbox)) {\n this.rectangle = bbox;\n }\n this._setDefaultAppearance({\n xref,\n extra: `${borderWidth} w`,\n strokeColor,\n fillColor,\n strokeAlpha,\n fillAlpha,\n pointsCallback: (buffer, points) => {\n buffer.push(`${lineCoordinates[0]} ${lineCoordinates[1]} m`, `${lineCoordinates[2]} ${lineCoordinates[3]} l`, \"S\");\n return [points[0].x - borderWidth, points[1].x + borderWidth, points[3].y - borderWidth, points[1].y + borderWidth];\n }\n });\n }\n }\n}\nclass SquareAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.SQUARE;\n this.data.hasOwnCanvas = this.data.noRotate;\n if (!this.appearance) {\n const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];\n const strokeAlpha = dict.get(\"CA\");\n const interiorColor = getRgbColor(dict.getArray(\"IC\"), null);\n const fillColor = interiorColor ? getPdfColorArray(interiorColor) : null;\n const fillAlpha = fillColor ? strokeAlpha : null;\n if (this.borderStyle.width === 0 && !fillColor) {\n return;\n }\n this._setDefaultAppearance({\n xref,\n extra: `${this.borderStyle.width} w`,\n strokeColor,\n fillColor,\n strokeAlpha,\n fillAlpha,\n pointsCallback: (buffer, points) => {\n const x = points[2].x + this.borderStyle.width / 2;\n const y = points[2].y + this.borderStyle.width / 2;\n const width = points[3].x - points[2].x - this.borderStyle.width;\n const height = points[1].y - points[3].y - this.borderStyle.width;\n buffer.push(`${x} ${y} ${width} ${height} re`);\n if (fillColor) {\n buffer.push(\"B\");\n } else {\n buffer.push(\"S\");\n }\n return [points[0].x, points[1].x, points[3].y, points[1].y];\n }\n });\n }\n }\n}\nclass CircleAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.CIRCLE;\n if (!this.appearance) {\n const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];\n const strokeAlpha = dict.get(\"CA\");\n const interiorColor = getRgbColor(dict.getArray(\"IC\"), null);\n const fillColor = interiorColor ? getPdfColorArray(interiorColor) : null;\n const fillAlpha = fillColor ? strokeAlpha : null;\n if (this.borderStyle.width === 0 && !fillColor) {\n return;\n }\n const controlPointsDistance = 4 / 3 * Math.tan(Math.PI / (2 * 4));\n this._setDefaultAppearance({\n xref,\n extra: `${this.borderStyle.width} w`,\n strokeColor,\n fillColor,\n strokeAlpha,\n fillAlpha,\n pointsCallback: (buffer, points) => {\n const x0 = points[0].x + this.borderStyle.width / 2;\n const y0 = points[0].y - this.borderStyle.width / 2;\n const x1 = points[3].x - this.borderStyle.width / 2;\n const y1 = points[3].y + this.borderStyle.width / 2;\n const xMid = x0 + (x1 - x0) / 2;\n const yMid = y0 + (y1 - y0) / 2;\n const xOffset = (x1 - x0) / 2 * controlPointsDistance;\n const yOffset = (y1 - y0) / 2 * controlPointsDistance;\n buffer.push(`${xMid} ${y1} m`, `${xMid + xOffset} ${y1} ${x1} ${yMid + yOffset} ${x1} ${yMid} c`, `${x1} ${yMid - yOffset} ${xMid + xOffset} ${y0} ${xMid} ${y0} c`, `${xMid - xOffset} ${y0} ${x0} ${yMid - yOffset} ${x0} ${yMid} c`, `${x0} ${yMid + yOffset} ${xMid - xOffset} ${y1} ${xMid} ${y1} c`, \"h\");\n if (fillColor) {\n buffer.push(\"B\");\n } else {\n buffer.push(\"S\");\n }\n return [points[0].x, points[1].x, points[3].y, points[1].y];\n }\n });\n }\n }\n}\nclass PolylineAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.POLYLINE;\n this.data.hasOwnCanvas = this.data.noRotate;\n this.data.vertices = [];\n if (!(this instanceof PolygonAnnotation)) {\n this.setLineEndings(dict.getArray(\"LE\"));\n this.data.lineEndings = this.lineEndings;\n }\n const rawVertices = dict.getArray(\"Vertices\");\n if (!Array.isArray(rawVertices)) {\n return;\n }\n for (let i = 0, ii = rawVertices.length; i < ii; i += 2) {\n this.data.vertices.push({\n x: rawVertices[i],\n y: rawVertices[i + 1]\n });\n }\n if (!this.appearance) {\n const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];\n const strokeAlpha = dict.get(\"CA\");\n const borderWidth = this.borderStyle.width || 1,\n borderAdjust = 2 * borderWidth;\n const bbox = [Infinity, Infinity, -Infinity, -Infinity];\n for (const vertex of this.data.vertices) {\n bbox[0] = Math.min(bbox[0], vertex.x - borderAdjust);\n bbox[1] = Math.min(bbox[1], vertex.y - borderAdjust);\n bbox[2] = Math.max(bbox[2], vertex.x + borderAdjust);\n bbox[3] = Math.max(bbox[3], vertex.y + borderAdjust);\n }\n if (!_util.Util.intersect(this.rectangle, bbox)) {\n this.rectangle = bbox;\n }\n this._setDefaultAppearance({\n xref,\n extra: `${borderWidth} w`,\n strokeColor,\n strokeAlpha,\n pointsCallback: (buffer, points) => {\n const vertices = this.data.vertices;\n for (let i = 0, ii = vertices.length; i < ii; i++) {\n buffer.push(`${vertices[i].x} ${vertices[i].y} ${i === 0 ? \"m\" : \"l\"}`);\n }\n buffer.push(\"S\");\n return [points[0].x, points[1].x, points[3].y, points[1].y];\n }\n });\n }\n }\n}\nclass PolygonAnnotation extends PolylineAnnotation {\n constructor(params) {\n super(params);\n this.data.annotationType = _util.AnnotationType.POLYGON;\n }\n}\nclass CaretAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n this.data.annotationType = _util.AnnotationType.CARET;\n }\n}\nclass InkAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n this.data.hasOwnCanvas = this.data.noRotate;\n const {\n dict,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.INK;\n this.data.inkLists = [];\n const rawInkLists = dict.getArray(\"InkList\");\n if (!Array.isArray(rawInkLists)) {\n return;\n }\n for (let i = 0, ii = rawInkLists.length; i < ii; ++i) {\n this.data.inkLists.push([]);\n for (let j = 0, jj = rawInkLists[i].length; j < jj; j += 2) {\n this.data.inkLists[i].push({\n x: xref.fetchIfRef(rawInkLists[i][j]),\n y: xref.fetchIfRef(rawInkLists[i][j + 1])\n });\n }\n }\n if (!this.appearance) {\n const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];\n const strokeAlpha = dict.get(\"CA\");\n const borderWidth = this.borderStyle.width || 1,\n borderAdjust = 2 * borderWidth;\n const bbox = [Infinity, Infinity, -Infinity, -Infinity];\n for (const inkLists of this.data.inkLists) {\n for (const vertex of inkLists) {\n bbox[0] = Math.min(bbox[0], vertex.x - borderAdjust);\n bbox[1] = Math.min(bbox[1], vertex.y - borderAdjust);\n bbox[2] = Math.max(bbox[2], vertex.x + borderAdjust);\n bbox[3] = Math.max(bbox[3], vertex.y + borderAdjust);\n }\n }\n if (!_util.Util.intersect(this.rectangle, bbox)) {\n this.rectangle = bbox;\n }\n this._setDefaultAppearance({\n xref,\n extra: `${borderWidth} w`,\n strokeColor,\n strokeAlpha,\n pointsCallback: (buffer, points) => {\n for (const inkList of this.data.inkLists) {\n for (let i = 0, ii = inkList.length; i < ii; i++) {\n buffer.push(`${inkList[i].x} ${inkList[i].y} ${i === 0 ? \"m\" : \"l\"}`);\n }\n buffer.push(\"S\");\n }\n return [points[0].x, points[1].x, points[3].y, points[1].y];\n }\n });\n }\n }\n static createNewDict(annotation, xref, {\n apRef,\n ap\n }) {\n const {\n color,\n opacity,\n paths,\n rect,\n rotation,\n thickness\n } = annotation;\n const ink = new _primitives.Dict(xref);\n ink.set(\"Type\", _primitives.Name.get(\"Annot\"));\n ink.set(\"Subtype\", _primitives.Name.get(\"Ink\"));\n ink.set(\"CreationDate\", `D:${(0, _util.getModificationDate)()}`);\n ink.set(\"Rect\", rect);\n ink.set(\"InkList\", paths.map(p => p.points));\n ink.set(\"F\", 4);\n ink.set(\"Rotate\", rotation);\n const bs = new _primitives.Dict(xref);\n ink.set(\"BS\", bs);\n bs.set(\"W\", thickness);\n ink.set(\"C\", Array.from(color, c => c / 255));\n ink.set(\"CA\", opacity);\n const n = new _primitives.Dict(xref);\n ink.set(\"AP\", n);\n if (apRef) {\n n.set(\"N\", apRef);\n } else {\n n.set(\"N\", ap);\n }\n return ink;\n }\n static async createNewAppearanceStream(annotation, xref, params) {\n const {\n color,\n rect,\n paths,\n thickness,\n opacity\n } = annotation;\n const appearanceBuffer = [`${thickness} w 1 J 1 j`, `${(0, _default_appearance.getPdfColor)(color, false)}`];\n if (opacity !== 1) {\n appearanceBuffer.push(\"/R0 gs\");\n }\n const buffer = [];\n for (const {\n bezier\n } of paths) {\n buffer.length = 0;\n buffer.push(`${(0, _core_utils.numberToString)(bezier[0])} ${(0, _core_utils.numberToString)(bezier[1])} m`);\n for (let i = 2, ii = bezier.length; i < ii; i += 6) {\n const curve = bezier.slice(i, i + 6).map(_core_utils.numberToString).join(\" \");\n buffer.push(`${curve} c`);\n }\n buffer.push(\"S\");\n appearanceBuffer.push(buffer.join(\"\\n\"));\n }\n const appearance = appearanceBuffer.join(\"\\n\");\n const appearanceStreamDict = new _primitives.Dict(xref);\n appearanceStreamDict.set(\"FormType\", 1);\n appearanceStreamDict.set(\"Subtype\", _primitives.Name.get(\"Form\"));\n appearanceStreamDict.set(\"Type\", _primitives.Name.get(\"XObject\"));\n appearanceStreamDict.set(\"BBox\", rect);\n appearanceStreamDict.set(\"Length\", appearance.length);\n if (opacity !== 1) {\n const resources = new _primitives.Dict(xref);\n const extGState = new _primitives.Dict(xref);\n const r0 = new _primitives.Dict(xref);\n r0.set(\"CA\", opacity);\n r0.set(\"Type\", _primitives.Name.get(\"ExtGState\"));\n extGState.set(\"R0\", r0);\n resources.set(\"ExtGState\", extGState);\n appearanceStreamDict.set(\"Resources\", resources);\n }\n const ap = new _stream.StringStream(appearance);\n ap.dict = appearanceStreamDict;\n return ap;\n }\n}\nclass HighlightAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.HIGHLIGHT;\n const quadPoints = this.data.quadPoints = getQuadPoints(dict, null);\n if (quadPoints) {\n const resources = this.appearance?.dict.get(\"Resources\");\n if (!this.appearance || !resources?.has(\"ExtGState\")) {\n if (this.appearance) {\n (0, _util.warn)(\"HighlightAnnotation - ignoring built-in appearance stream.\");\n }\n const fillColor = this.color ? getPdfColorArray(this.color) : [1, 1, 0];\n const fillAlpha = dict.get(\"CA\");\n this._setDefaultAppearance({\n xref,\n fillColor,\n blendMode: \"Multiply\",\n fillAlpha,\n pointsCallback: (buffer, points) => {\n buffer.push(`${points[0].x} ${points[0].y} m`, `${points[1].x} ${points[1].y} l`, `${points[3].x} ${points[3].y} l`, `${points[2].x} ${points[2].y} l`, \"f\");\n return [points[0].x, points[1].x, points[3].y, points[1].y];\n }\n });\n }\n } else {\n this.data.popupRef = null;\n }\n }\n}\nclass UnderlineAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.UNDERLINE;\n const quadPoints = this.data.quadPoints = getQuadPoints(dict, null);\n if (quadPoints) {\n if (!this.appearance) {\n const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];\n const strokeAlpha = dict.get(\"CA\");\n this._setDefaultAppearance({\n xref,\n extra: \"[] 0 d 0.571 w\",\n strokeColor,\n strokeAlpha,\n pointsCallback: (buffer, points) => {\n buffer.push(`${points[2].x} ${points[2].y + 1.3} m`, `${points[3].x} ${points[3].y + 1.3} l`, \"S\");\n return [points[0].x, points[1].x, points[3].y, points[1].y];\n }\n });\n }\n } else {\n this.data.popupRef = null;\n }\n }\n}\nclass SquigglyAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.SQUIGGLY;\n const quadPoints = this.data.quadPoints = getQuadPoints(dict, null);\n if (quadPoints) {\n if (!this.appearance) {\n const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];\n const strokeAlpha = dict.get(\"CA\");\n this._setDefaultAppearance({\n xref,\n extra: \"[] 0 d 1 w\",\n strokeColor,\n strokeAlpha,\n pointsCallback: (buffer, points) => {\n const dy = (points[0].y - points[2].y) / 6;\n let shift = dy;\n let x = points[2].x;\n const y = points[2].y;\n const xEnd = points[3].x;\n buffer.push(`${x} ${y + shift} m`);\n do {\n x += 2;\n shift = shift === 0 ? dy : 0;\n buffer.push(`${x} ${y + shift} l`);\n } while (x < xEnd);\n buffer.push(\"S\");\n return [points[2].x, xEnd, y - 2 * dy, y + 2 * dy];\n }\n });\n }\n } else {\n this.data.popupRef = null;\n }\n }\n}\nclass StrikeOutAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n this.data.annotationType = _util.AnnotationType.STRIKEOUT;\n const quadPoints = this.data.quadPoints = getQuadPoints(dict, null);\n if (quadPoints) {\n if (!this.appearance) {\n const strokeColor = this.color ? getPdfColorArray(this.color) : [0, 0, 0];\n const strokeAlpha = dict.get(\"CA\");\n this._setDefaultAppearance({\n xref,\n extra: \"[] 0 d 1 w\",\n strokeColor,\n strokeAlpha,\n pointsCallback: (buffer, points) => {\n buffer.push(`${(points[0].x + points[2].x) / 2} ` + `${(points[0].y + points[2].y) / 2} m`, `${(points[1].x + points[3].x) / 2} ` + `${(points[1].y + points[3].y) / 2} l`, \"S\");\n return [points[0].x, points[1].x, points[3].y, points[1].y];\n }\n });\n }\n } else {\n this.data.popupRef = null;\n }\n }\n}\nclass StampAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n this.data.annotationType = _util.AnnotationType.STAMP;\n this.data.hasOwnCanvas = this.data.noRotate;\n }\n static async createImage(bitmap, xref) {\n const {\n width,\n height\n } = bitmap;\n const canvas = new OffscreenCanvas(width, height);\n const ctx = canvas.getContext(\"2d\", {\n alpha: true\n });\n ctx.drawImage(bitmap, 0, 0);\n const data = ctx.getImageData(0, 0, width, height).data;\n const buf32 = new Uint32Array(data.buffer);\n const hasAlpha = buf32.some(_util.FeatureTest.isLittleEndian ? x => x >>> 24 !== 0xff : x => (x & 0xff) !== 0xff);\n if (hasAlpha) {\n ctx.fillStyle = \"white\";\n ctx.fillRect(0, 0, width, height);\n ctx.drawImage(bitmap, 0, 0);\n }\n const jpegBufferPromise = canvas.convertToBlob({\n type: \"image/jpeg\",\n quality: 1\n }).then(blob => {\n return blob.arrayBuffer();\n });\n const xobjectName = _primitives.Name.get(\"XObject\");\n const imageName = _primitives.Name.get(\"Image\");\n const image = new _primitives.Dict(xref);\n image.set(\"Type\", xobjectName);\n image.set(\"Subtype\", imageName);\n image.set(\"BitsPerComponent\", 8);\n image.set(\"ColorSpace\", _primitives.Name.get(\"DeviceRGB\"));\n image.set(\"Filter\", _primitives.Name.get(\"DCTDecode\"));\n image.set(\"BBox\", [0, 0, width, height]);\n image.set(\"Width\", width);\n image.set(\"Height\", height);\n let smaskStream = null;\n if (hasAlpha) {\n const alphaBuffer = new Uint8Array(buf32.length);\n if (_util.FeatureTest.isLittleEndian) {\n for (let i = 0, ii = buf32.length; i < ii; i++) {\n alphaBuffer[i] = buf32[i] >>> 24;\n }\n } else {\n for (let i = 0, ii = buf32.length; i < ii; i++) {\n alphaBuffer[i] = buf32[i] & 0xff;\n }\n }\n const smask = new _primitives.Dict(xref);\n smask.set(\"Type\", xobjectName);\n smask.set(\"Subtype\", imageName);\n smask.set(\"BitsPerComponent\", 8);\n smask.set(\"ColorSpace\", _primitives.Name.get(\"DeviceGray\"));\n smask.set(\"Width\", width);\n smask.set(\"Height\", height);\n smaskStream = new _stream.Stream(alphaBuffer, 0, 0, smask);\n }\n const imageStream = new _stream.Stream(await jpegBufferPromise, 0, 0, image);\n return {\n imageStream,\n smaskStream,\n width,\n height\n };\n }\n static createNewDict(annotation, xref, {\n apRef,\n ap\n }) {\n const {\n rect,\n rotation,\n user\n } = annotation;\n const stamp = new _primitives.Dict(xref);\n stamp.set(\"Type\", _primitives.Name.get(\"Annot\"));\n stamp.set(\"Subtype\", _primitives.Name.get(\"Stamp\"));\n stamp.set(\"CreationDate\", `D:${(0, _util.getModificationDate)()}`);\n stamp.set(\"Rect\", rect);\n stamp.set(\"F\", 4);\n stamp.set(\"Border\", [0, 0, 0]);\n stamp.set(\"Rotate\", rotation);\n if (user) {\n stamp.set(\"T\", (0, _core_utils.isAscii)(user) ? user : (0, _core_utils.stringToUTF16String)(user, true));\n }\n if (apRef || ap) {\n const n = new _primitives.Dict(xref);\n stamp.set(\"AP\", n);\n if (apRef) {\n n.set(\"N\", apRef);\n } else {\n n.set(\"N\", ap);\n }\n }\n return stamp;\n }\n static async createNewAppearanceStream(annotation, xref, params) {\n const {\n rotation\n } = annotation;\n const {\n imageRef,\n width,\n height\n } = params.image;\n const resources = new _primitives.Dict(xref);\n const xobject = new _primitives.Dict(xref);\n resources.set(\"XObject\", xobject);\n xobject.set(\"Im0\", imageRef);\n const appearance = `q ${width} 0 0 ${height} 0 0 cm /Im0 Do Q`;\n const appearanceStreamDict = new _primitives.Dict(xref);\n appearanceStreamDict.set(\"FormType\", 1);\n appearanceStreamDict.set(\"Subtype\", _primitives.Name.get(\"Form\"));\n appearanceStreamDict.set(\"Type\", _primitives.Name.get(\"XObject\"));\n appearanceStreamDict.set(\"BBox\", [0, 0, width, height]);\n appearanceStreamDict.set(\"Resources\", resources);\n if (rotation) {\n const matrix = (0, _core_utils.getRotationMatrix)(rotation, width, height);\n appearanceStreamDict.set(\"Matrix\", matrix);\n }\n const ap = new _stream.StringStream(appearance);\n ap.dict = appearanceStreamDict;\n return ap;\n }\n}\nclass FileAttachmentAnnotation extends MarkupAnnotation {\n constructor(params) {\n super(params);\n const {\n dict,\n xref\n } = params;\n const file = new _file_spec.FileSpec(dict.get(\"FS\"), xref);\n this.data.annotationType = _util.AnnotationType.FILEATTACHMENT;\n this.data.hasOwnCanvas = this.data.noRotate;\n this.data.file = file.serializable;\n const name = dict.get(\"Name\");\n this.data.name = name instanceof _primitives.Name ? (0, _util.stringToPDFString)(name.name) : \"PushPin\";\n const fillAlpha = dict.get(\"ca\");\n this.data.fillAlpha = typeof fillAlpha === \"number\" && fillAlpha >= 0 && fillAlpha <= 1 ? fillAlpha : null;\n }\n}\n\n/***/ }),\n/* 11 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FakeUnicodeFont = void 0;\nexports.createDefaultAppearance = createDefaultAppearance;\nexports.getPdfColor = getPdfColor;\nexports.parseAppearanceStream = parseAppearanceStream;\nexports.parseDefaultAppearance = parseDefaultAppearance;\nvar _primitives = __w_pdfjs_require__(4);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _util = __w_pdfjs_require__(2);\nvar _colorspace = __w_pdfjs_require__(12);\nvar _evaluator = __w_pdfjs_require__(13);\nvar _image_utils = __w_pdfjs_require__(59);\nvar _function = __w_pdfjs_require__(57);\nvar _stream = __w_pdfjs_require__(8);\nclass DefaultAppearanceEvaluator extends _evaluator.EvaluatorPreprocessor {\n constructor(str) {\n super(new _stream.StringStream(str));\n }\n parse() {\n const operation = {\n fn: 0,\n args: []\n };\n const result = {\n fontSize: 0,\n fontName: \"\",\n fontColor: new Uint8ClampedArray(3)\n };\n try {\n while (true) {\n operation.args.length = 0;\n if (!this.read(operation)) {\n break;\n }\n if (this.savedStatesDepth !== 0) {\n continue;\n }\n const {\n fn,\n args\n } = operation;\n switch (fn | 0) {\n case _util.OPS.setFont:\n const [fontName, fontSize] = args;\n if (fontName instanceof _primitives.Name) {\n result.fontName = fontName.name;\n }\n if (typeof fontSize === \"number\" && fontSize > 0) {\n result.fontSize = fontSize;\n }\n break;\n case _util.OPS.setFillRGBColor:\n _colorspace.ColorSpace.singletons.rgb.getRgbItem(args, 0, result.fontColor, 0);\n break;\n case _util.OPS.setFillGray:\n _colorspace.ColorSpace.singletons.gray.getRgbItem(args, 0, result.fontColor, 0);\n break;\n case _util.OPS.setFillCMYKColor:\n _colorspace.ColorSpace.singletons.cmyk.getRgbItem(args, 0, result.fontColor, 0);\n break;\n }\n }\n } catch (reason) {\n (0, _util.warn)(`parseDefaultAppearance - ignoring errors: \"${reason}\".`);\n }\n return result;\n }\n}\nfunction parseDefaultAppearance(str) {\n return new DefaultAppearanceEvaluator(str).parse();\n}\nclass AppearanceStreamEvaluator extends _evaluator.EvaluatorPreprocessor {\n constructor(stream, evaluatorOptions, xref) {\n super(stream);\n this.stream = stream;\n this.evaluatorOptions = evaluatorOptions;\n this.xref = xref;\n this.resources = stream.dict?.get(\"Resources\");\n }\n parse() {\n const operation = {\n fn: 0,\n args: []\n };\n let result = {\n scaleFactor: 1,\n fontSize: 0,\n fontName: \"\",\n fontColor: new Uint8ClampedArray(3),\n fillColorSpace: _colorspace.ColorSpace.singletons.gray\n };\n let breakLoop = false;\n const stack = [];\n try {\n while (true) {\n operation.args.length = 0;\n if (breakLoop || !this.read(operation)) {\n break;\n }\n const {\n fn,\n args\n } = operation;\n switch (fn | 0) {\n case _util.OPS.save:\n stack.push({\n scaleFactor: result.scaleFactor,\n fontSize: result.fontSize,\n fontName: result.fontName,\n fontColor: result.fontColor.slice(),\n fillColorSpace: result.fillColorSpace\n });\n break;\n case _util.OPS.restore:\n result = stack.pop() || result;\n break;\n case _util.OPS.setTextMatrix:\n result.scaleFactor *= Math.hypot(args[0], args[1]);\n break;\n case _util.OPS.setFont:\n const [fontName, fontSize] = args;\n if (fontName instanceof _primitives.Name) {\n result.fontName = fontName.name;\n }\n if (typeof fontSize === \"number\" && fontSize > 0) {\n result.fontSize = fontSize * result.scaleFactor;\n }\n break;\n case _util.OPS.setFillColorSpace:\n result.fillColorSpace = _colorspace.ColorSpace.parse({\n cs: args[0],\n xref: this.xref,\n resources: this.resources,\n pdfFunctionFactory: this._pdfFunctionFactory,\n localColorSpaceCache: this._localColorSpaceCache\n });\n break;\n case _util.OPS.setFillColor:\n const cs = result.fillColorSpace;\n cs.getRgbItem(args, 0, result.fontColor, 0);\n break;\n case _util.OPS.setFillRGBColor:\n _colorspace.ColorSpace.singletons.rgb.getRgbItem(args, 0, result.fontColor, 0);\n break;\n case _util.OPS.setFillGray:\n _colorspace.ColorSpace.singletons.gray.getRgbItem(args, 0, result.fontColor, 0);\n break;\n case _util.OPS.setFillCMYKColor:\n _colorspace.ColorSpace.singletons.cmyk.getRgbItem(args, 0, result.fontColor, 0);\n break;\n case _util.OPS.showText:\n case _util.OPS.showSpacedText:\n case _util.OPS.nextLineShowText:\n case _util.OPS.nextLineSetSpacingShowText:\n breakLoop = true;\n break;\n }\n }\n } catch (reason) {\n (0, _util.warn)(`parseAppearanceStream - ignoring errors: \"${reason}\".`);\n }\n this.stream.reset();\n delete result.scaleFactor;\n delete result.fillColorSpace;\n return result;\n }\n get _localColorSpaceCache() {\n return (0, _util.shadow)(this, \"_localColorSpaceCache\", new _image_utils.LocalColorSpaceCache());\n }\n get _pdfFunctionFactory() {\n const pdfFunctionFactory = new _function.PDFFunctionFactory({\n xref: this.xref,\n isEvalSupported: this.evaluatorOptions.isEvalSupported\n });\n return (0, _util.shadow)(this, \"_pdfFunctionFactory\", pdfFunctionFactory);\n }\n}\nfunction parseAppearanceStream(stream, evaluatorOptions, xref) {\n return new AppearanceStreamEvaluator(stream, evaluatorOptions, xref).parse();\n}\nfunction getPdfColor(color, isFill) {\n if (color[0] === color[1] && color[1] === color[2]) {\n const gray = color[0] / 255;\n return `${(0, _core_utils.numberToString)(gray)} ${isFill ? \"g\" : \"G\"}`;\n }\n return Array.from(color, c => (0, _core_utils.numberToString)(c / 255)).join(\" \") + ` ${isFill ? \"rg\" : \"RG\"}`;\n}\nfunction createDefaultAppearance({\n fontSize,\n fontName,\n fontColor\n}) {\n return `/${(0, _core_utils.escapePDFName)(fontName)} ${fontSize} Tf ${getPdfColor(fontColor, true)}`;\n}\nclass FakeUnicodeFont {\n constructor(xref, fontFamily) {\n this.xref = xref;\n this.widths = null;\n this.firstChar = Infinity;\n this.lastChar = -Infinity;\n this.fontFamily = fontFamily;\n const canvas = new OffscreenCanvas(1, 1);\n this.ctxMeasure = canvas.getContext(\"2d\");\n if (!FakeUnicodeFont._fontNameId) {\n FakeUnicodeFont._fontNameId = 1;\n }\n this.fontName = _primitives.Name.get(`InvalidPDFjsFont_${fontFamily}_${FakeUnicodeFont._fontNameId++}`);\n }\n get toUnicodeRef() {\n if (!FakeUnicodeFont._toUnicodeRef) {\n const toUnicode = `/CIDInit /ProcSet findresource begin\n12 dict begin\nbegincmap\n/CIDSystemInfo\n<< /Registry (Adobe)\n/Ordering (UCS) /Supplement 0 >> def\n/CMapName /Adobe-Identity-UCS def\n/CMapType 2 def\n1 begincodespacerange\n<0000> \nendcodespacerange\n1 beginbfrange\n<0000> <0000>\nendbfrange\nendcmap CMapName currentdict /CMap defineresource pop end end`;\n const toUnicodeStream = FakeUnicodeFont.toUnicodeStream = new _stream.StringStream(toUnicode);\n const toUnicodeDict = new _primitives.Dict(this.xref);\n toUnicodeStream.dict = toUnicodeDict;\n toUnicodeDict.set(\"Length\", toUnicode.length);\n FakeUnicodeFont._toUnicodeRef = this.xref.getNewPersistentRef(toUnicodeStream);\n }\n return FakeUnicodeFont._toUnicodeRef;\n }\n get fontDescriptorRef() {\n if (!FakeUnicodeFont._fontDescriptorRef) {\n const fontDescriptor = new _primitives.Dict(this.xref);\n fontDescriptor.set(\"Type\", _primitives.Name.get(\"FontDescriptor\"));\n fontDescriptor.set(\"FontName\", this.fontName);\n fontDescriptor.set(\"FontFamily\", \"MyriadPro Regular\");\n fontDescriptor.set(\"FontBBox\", [0, 0, 0, 0]);\n fontDescriptor.set(\"FontStretch\", _primitives.Name.get(\"Normal\"));\n fontDescriptor.set(\"FontWeight\", 400);\n fontDescriptor.set(\"ItalicAngle\", 0);\n FakeUnicodeFont._fontDescriptorRef = this.xref.getNewPersistentRef(fontDescriptor);\n }\n return FakeUnicodeFont._fontDescriptorRef;\n }\n get descendantFontRef() {\n const descendantFont = new _primitives.Dict(this.xref);\n descendantFont.set(\"BaseFont\", this.fontName);\n descendantFont.set(\"Type\", _primitives.Name.get(\"Font\"));\n descendantFont.set(\"Subtype\", _primitives.Name.get(\"CIDFontType0\"));\n descendantFont.set(\"CIDToGIDMap\", _primitives.Name.get(\"Identity\"));\n descendantFont.set(\"FirstChar\", this.firstChar);\n descendantFont.set(\"LastChar\", this.lastChar);\n descendantFont.set(\"FontDescriptor\", this.fontDescriptorRef);\n descendantFont.set(\"DW\", 1000);\n const widths = [];\n const chars = [...this.widths.entries()].sort();\n let currentChar = null;\n let currentWidths = null;\n for (const [char, width] of chars) {\n if (!currentChar) {\n currentChar = char;\n currentWidths = [width];\n continue;\n }\n if (char === currentChar + currentWidths.length) {\n currentWidths.push(width);\n } else {\n widths.push(currentChar, currentWidths);\n currentChar = char;\n currentWidths = [width];\n }\n }\n if (currentChar) {\n widths.push(currentChar, currentWidths);\n }\n descendantFont.set(\"W\", widths);\n const cidSystemInfo = new _primitives.Dict(this.xref);\n cidSystemInfo.set(\"Ordering\", \"Identity\");\n cidSystemInfo.set(\"Registry\", \"Adobe\");\n cidSystemInfo.set(\"Supplement\", 0);\n descendantFont.set(\"CIDSystemInfo\", cidSystemInfo);\n return this.xref.getNewPersistentRef(descendantFont);\n }\n get baseFontRef() {\n const baseFont = new _primitives.Dict(this.xref);\n baseFont.set(\"BaseFont\", this.fontName);\n baseFont.set(\"Type\", _primitives.Name.get(\"Font\"));\n baseFont.set(\"Subtype\", _primitives.Name.get(\"Type0\"));\n baseFont.set(\"Encoding\", _primitives.Name.get(\"Identity-H\"));\n baseFont.set(\"DescendantFonts\", [this.descendantFontRef]);\n baseFont.set(\"ToUnicode\", this.toUnicodeRef);\n return this.xref.getNewPersistentRef(baseFont);\n }\n get resources() {\n const resources = new _primitives.Dict(this.xref);\n const font = new _primitives.Dict(this.xref);\n font.set(this.fontName.name, this.baseFontRef);\n resources.set(\"Font\", font);\n return resources;\n }\n _createContext() {\n this.widths = new Map();\n this.ctxMeasure.font = `1000px ${this.fontFamily}`;\n return this.ctxMeasure;\n }\n createFontResources(text) {\n const ctx = this._createContext();\n for (const line of text.split(/\\r\\n?|\\n/)) {\n for (const char of line.split(\"\")) {\n const code = char.charCodeAt(0);\n if (this.widths.has(code)) {\n continue;\n }\n const metrics = ctx.measureText(char);\n const width = Math.ceil(metrics.width);\n this.widths.set(code, width);\n this.firstChar = Math.min(code, this.firstChar);\n this.lastChar = Math.max(code, this.lastChar);\n }\n }\n return this.resources;\n }\n createAppearance(text, rect, rotation, fontSize, bgColor, strokeAlpha) {\n const ctx = this._createContext();\n const lines = [];\n let maxWidth = -Infinity;\n for (const line of text.split(/\\r\\n?|\\n/)) {\n lines.push(line);\n const lineWidth = ctx.measureText(line).width;\n maxWidth = Math.max(maxWidth, lineWidth);\n for (const char of line.split(\"\")) {\n const code = char.charCodeAt(0);\n let width = this.widths.get(code);\n if (width === undefined) {\n const metrics = ctx.measureText(char);\n width = Math.ceil(metrics.width);\n this.widths.set(code, width);\n this.firstChar = Math.min(code, this.firstChar);\n this.lastChar = Math.max(code, this.lastChar);\n }\n }\n }\n maxWidth *= fontSize / 1000;\n const [x1, y1, x2, y2] = rect;\n let w = x2 - x1;\n let h = y2 - y1;\n if (rotation % 180 !== 0) {\n [w, h] = [h, w];\n }\n let hscale = 1;\n if (maxWidth > w) {\n hscale = w / maxWidth;\n }\n let vscale = 1;\n const lineHeight = _util.LINE_FACTOR * fontSize;\n const lineDescent = _util.LINE_DESCENT_FACTOR * fontSize;\n const maxHeight = lineHeight * lines.length;\n if (maxHeight > h) {\n vscale = h / maxHeight;\n }\n const fscale = Math.min(hscale, vscale);\n const newFontSize = fontSize * fscale;\n const buffer = [\"q\", `0 0 ${(0, _core_utils.numberToString)(w)} ${(0, _core_utils.numberToString)(h)} re W n`, `BT`, `1 0 0 1 0 ${(0, _core_utils.numberToString)(h + lineDescent)} Tm 0 Tc ${getPdfColor(bgColor, true)}`, `/${this.fontName.name} ${(0, _core_utils.numberToString)(newFontSize)} Tf`];\n const {\n resources\n } = this;\n strokeAlpha = typeof strokeAlpha === \"number\" && strokeAlpha >= 0 && strokeAlpha <= 1 ? strokeAlpha : 1;\n if (strokeAlpha !== 1) {\n buffer.push(\"/R0 gs\");\n const extGState = new _primitives.Dict(this.xref);\n const r0 = new _primitives.Dict(this.xref);\n r0.set(\"ca\", strokeAlpha);\n r0.set(\"CA\", strokeAlpha);\n r0.set(\"Type\", _primitives.Name.get(\"ExtGState\"));\n extGState.set(\"R0\", r0);\n resources.set(\"ExtGState\", extGState);\n }\n const vShift = (0, _core_utils.numberToString)(lineHeight);\n for (const line of lines) {\n buffer.push(`0 -${vShift} Td <${(0, _core_utils.stringToUTF16HexString)(line)}> Tj`);\n }\n buffer.push(\"ET\", \"Q\");\n const appearance = buffer.join(\"\\n\");\n const appearanceStreamDict = new _primitives.Dict(this.xref);\n appearanceStreamDict.set(\"Subtype\", _primitives.Name.get(\"Form\"));\n appearanceStreamDict.set(\"Type\", _primitives.Name.get(\"XObject\"));\n appearanceStreamDict.set(\"BBox\", [0, 0, w, h]);\n appearanceStreamDict.set(\"Length\", appearance.length);\n appearanceStreamDict.set(\"Resources\", resources);\n if (rotation) {\n const matrix = (0, _core_utils.getRotationMatrix)(rotation, w, h);\n appearanceStreamDict.set(\"Matrix\", matrix);\n }\n const ap = new _stream.StringStream(appearance);\n ap.dict = appearanceStreamDict;\n return ap;\n }\n}\nexports.FakeUnicodeFont = FakeUnicodeFont;\n\n/***/ }),\n/* 12 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ColorSpace = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _core_utils = __w_pdfjs_require__(3);\nfunction resizeRgbImage(src, dest, w1, h1, w2, h2, alpha01) {\n const COMPONENTS = 3;\n alpha01 = alpha01 !== 1 ? 0 : alpha01;\n const xRatio = w1 / w2;\n const yRatio = h1 / h2;\n let newIndex = 0,\n oldIndex;\n const xScaled = new Uint16Array(w2);\n const w1Scanline = w1 * COMPONENTS;\n for (let i = 0; i < w2; i++) {\n xScaled[i] = Math.floor(i * xRatio) * COMPONENTS;\n }\n for (let i = 0; i < h2; i++) {\n const py = Math.floor(i * yRatio) * w1Scanline;\n for (let j = 0; j < w2; j++) {\n oldIndex = py + xScaled[j];\n dest[newIndex++] = src[oldIndex++];\n dest[newIndex++] = src[oldIndex++];\n dest[newIndex++] = src[oldIndex++];\n newIndex += alpha01;\n }\n }\n}\nclass ColorSpace {\n constructor(name, numComps) {\n if (this.constructor === ColorSpace) {\n (0, _util.unreachable)(\"Cannot initialize ColorSpace.\");\n }\n this.name = name;\n this.numComps = numComps;\n }\n getRgb(src, srcOffset) {\n const rgb = new Uint8ClampedArray(3);\n this.getRgbItem(src, srcOffset, rgb, 0);\n return rgb;\n }\n getRgbItem(src, srcOffset, dest, destOffset) {\n (0, _util.unreachable)(\"Should not call ColorSpace.getRgbItem\");\n }\n getRgbBuffer(src, srcOffset, count, dest, destOffset, bits, alpha01) {\n (0, _util.unreachable)(\"Should not call ColorSpace.getRgbBuffer\");\n }\n getOutputLength(inputLength, alpha01) {\n (0, _util.unreachable)(\"Should not call ColorSpace.getOutputLength\");\n }\n isPassthrough(bits) {\n return false;\n }\n isDefaultDecode(decodeMap, bpc) {\n return ColorSpace.isDefaultDecode(decodeMap, this.numComps);\n }\n fillRgb(dest, originalWidth, originalHeight, width, height, actualHeight, bpc, comps, alpha01) {\n const count = originalWidth * originalHeight;\n let rgbBuf = null;\n const numComponentColors = 1 << bpc;\n const needsResizing = originalHeight !== height || originalWidth !== width;\n if (this.isPassthrough(bpc)) {\n rgbBuf = comps;\n } else if (this.numComps === 1 && count > numComponentColors && this.name !== \"DeviceGray\" && this.name !== \"DeviceRGB\") {\n const allColors = bpc <= 8 ? new Uint8Array(numComponentColors) : new Uint16Array(numComponentColors);\n for (let i = 0; i < numComponentColors; i++) {\n allColors[i] = i;\n }\n const colorMap = new Uint8ClampedArray(numComponentColors * 3);\n this.getRgbBuffer(allColors, 0, numComponentColors, colorMap, 0, bpc, 0);\n if (!needsResizing) {\n let destPos = 0;\n for (let i = 0; i < count; ++i) {\n const key = comps[i] * 3;\n dest[destPos++] = colorMap[key];\n dest[destPos++] = colorMap[key + 1];\n dest[destPos++] = colorMap[key + 2];\n destPos += alpha01;\n }\n } else {\n rgbBuf = new Uint8Array(count * 3);\n let rgbPos = 0;\n for (let i = 0; i < count; ++i) {\n const key = comps[i] * 3;\n rgbBuf[rgbPos++] = colorMap[key];\n rgbBuf[rgbPos++] = colorMap[key + 1];\n rgbBuf[rgbPos++] = colorMap[key + 2];\n }\n }\n } else if (!needsResizing) {\n this.getRgbBuffer(comps, 0, width * actualHeight, dest, 0, bpc, alpha01);\n } else {\n rgbBuf = new Uint8ClampedArray(count * 3);\n this.getRgbBuffer(comps, 0, count, rgbBuf, 0, bpc, 0);\n }\n if (rgbBuf) {\n if (needsResizing) {\n resizeRgbImage(rgbBuf, dest, originalWidth, originalHeight, width, height, alpha01);\n } else {\n let destPos = 0,\n rgbPos = 0;\n for (let i = 0, ii = width * actualHeight; i < ii; i++) {\n dest[destPos++] = rgbBuf[rgbPos++];\n dest[destPos++] = rgbBuf[rgbPos++];\n dest[destPos++] = rgbBuf[rgbPos++];\n destPos += alpha01;\n }\n }\n }\n }\n get usesZeroToOneRange() {\n return (0, _util.shadow)(this, \"usesZeroToOneRange\", true);\n }\n static _cache(cacheKey, xref, localColorSpaceCache, parsedColorSpace) {\n if (!localColorSpaceCache) {\n throw new Error('ColorSpace._cache - expected \"localColorSpaceCache\" argument.');\n }\n if (!parsedColorSpace) {\n throw new Error('ColorSpace._cache - expected \"parsedColorSpace\" argument.');\n }\n let csName, csRef;\n if (cacheKey instanceof _primitives.Ref) {\n csRef = cacheKey;\n cacheKey = xref.fetch(cacheKey);\n }\n if (cacheKey instanceof _primitives.Name) {\n csName = cacheKey.name;\n }\n if (csName || csRef) {\n localColorSpaceCache.set(csName, csRef, parsedColorSpace);\n }\n }\n static getCached(cacheKey, xref, localColorSpaceCache) {\n if (!localColorSpaceCache) {\n throw new Error('ColorSpace.getCached - expected \"localColorSpaceCache\" argument.');\n }\n if (cacheKey instanceof _primitives.Ref) {\n const localColorSpace = localColorSpaceCache.getByRef(cacheKey);\n if (localColorSpace) {\n return localColorSpace;\n }\n try {\n cacheKey = xref.fetch(cacheKey);\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n }\n }\n if (cacheKey instanceof _primitives.Name) {\n const localColorSpace = localColorSpaceCache.getByName(cacheKey.name);\n if (localColorSpace) {\n return localColorSpace;\n }\n }\n return null;\n }\n static async parseAsync({\n cs,\n xref,\n resources = null,\n pdfFunctionFactory,\n localColorSpaceCache\n }) {\n const parsedColorSpace = this._parse(cs, xref, resources, pdfFunctionFactory);\n this._cache(cs, xref, localColorSpaceCache, parsedColorSpace);\n return parsedColorSpace;\n }\n static parse({\n cs,\n xref,\n resources = null,\n pdfFunctionFactory,\n localColorSpaceCache\n }) {\n const cachedColorSpace = this.getCached(cs, xref, localColorSpaceCache);\n if (cachedColorSpace) {\n return cachedColorSpace;\n }\n const parsedColorSpace = this._parse(cs, xref, resources, pdfFunctionFactory);\n this._cache(cs, xref, localColorSpaceCache, parsedColorSpace);\n return parsedColorSpace;\n }\n static _parse(cs, xref, resources = null, pdfFunctionFactory) {\n cs = xref.fetchIfRef(cs);\n if (cs instanceof _primitives.Name) {\n switch (cs.name) {\n case \"G\":\n case \"DeviceGray\":\n return this.singletons.gray;\n case \"RGB\":\n case \"DeviceRGB\":\n return this.singletons.rgb;\n case \"CMYK\":\n case \"DeviceCMYK\":\n return this.singletons.cmyk;\n case \"Pattern\":\n return new PatternCS(null);\n default:\n if (resources instanceof _primitives.Dict) {\n const colorSpaces = resources.get(\"ColorSpace\");\n if (colorSpaces instanceof _primitives.Dict) {\n const resourcesCS = colorSpaces.get(cs.name);\n if (resourcesCS) {\n if (resourcesCS instanceof _primitives.Name) {\n return this._parse(resourcesCS, xref, resources, pdfFunctionFactory);\n }\n cs = resourcesCS;\n break;\n }\n }\n }\n throw new _util.FormatError(`Unrecognized ColorSpace: ${cs.name}`);\n }\n }\n if (Array.isArray(cs)) {\n const mode = xref.fetchIfRef(cs[0]).name;\n let params, numComps, baseCS, whitePoint, blackPoint, gamma;\n switch (mode) {\n case \"G\":\n case \"DeviceGray\":\n return this.singletons.gray;\n case \"RGB\":\n case \"DeviceRGB\":\n return this.singletons.rgb;\n case \"CMYK\":\n case \"DeviceCMYK\":\n return this.singletons.cmyk;\n case \"CalGray\":\n params = xref.fetchIfRef(cs[1]);\n whitePoint = params.getArray(\"WhitePoint\");\n blackPoint = params.getArray(\"BlackPoint\");\n gamma = params.get(\"Gamma\");\n return new CalGrayCS(whitePoint, blackPoint, gamma);\n case \"CalRGB\":\n params = xref.fetchIfRef(cs[1]);\n whitePoint = params.getArray(\"WhitePoint\");\n blackPoint = params.getArray(\"BlackPoint\");\n gamma = params.getArray(\"Gamma\");\n const matrix = params.getArray(\"Matrix\");\n return new CalRGBCS(whitePoint, blackPoint, gamma, matrix);\n case \"ICCBased\":\n const stream = xref.fetchIfRef(cs[1]);\n const dict = stream.dict;\n numComps = dict.get(\"N\");\n const alt = dict.get(\"Alternate\");\n if (alt) {\n const altCS = this._parse(alt, xref, resources, pdfFunctionFactory);\n if (altCS.numComps === numComps) {\n return altCS;\n }\n (0, _util.warn)(\"ICCBased color space: Ignoring incorrect /Alternate entry.\");\n }\n if (numComps === 1) {\n return this.singletons.gray;\n } else if (numComps === 3) {\n return this.singletons.rgb;\n } else if (numComps === 4) {\n return this.singletons.cmyk;\n }\n break;\n case \"Pattern\":\n baseCS = cs[1] || null;\n if (baseCS) {\n baseCS = this._parse(baseCS, xref, resources, pdfFunctionFactory);\n }\n return new PatternCS(baseCS);\n case \"I\":\n case \"Indexed\":\n baseCS = this._parse(cs[1], xref, resources, pdfFunctionFactory);\n const hiVal = xref.fetchIfRef(cs[2]) + 1;\n const lookup = xref.fetchIfRef(cs[3]);\n return new IndexedCS(baseCS, hiVal, lookup);\n case \"Separation\":\n case \"DeviceN\":\n const name = xref.fetchIfRef(cs[1]);\n numComps = Array.isArray(name) ? name.length : 1;\n baseCS = this._parse(cs[2], xref, resources, pdfFunctionFactory);\n const tintFn = pdfFunctionFactory.create(cs[3]);\n return new AlternateCS(numComps, baseCS, tintFn);\n case \"Lab\":\n params = xref.fetchIfRef(cs[1]);\n whitePoint = params.getArray(\"WhitePoint\");\n blackPoint = params.getArray(\"BlackPoint\");\n const range = params.getArray(\"Range\");\n return new LabCS(whitePoint, blackPoint, range);\n default:\n throw new _util.FormatError(`Unimplemented ColorSpace object: ${mode}`);\n }\n }\n throw new _util.FormatError(`Unrecognized ColorSpace object: ${cs}`);\n }\n static isDefaultDecode(decode, numComps) {\n if (!Array.isArray(decode)) {\n return true;\n }\n if (numComps * 2 !== decode.length) {\n (0, _util.warn)(\"The decode map is not the correct length\");\n return true;\n }\n for (let i = 0, ii = decode.length; i < ii; i += 2) {\n if (decode[i] !== 0 || decode[i + 1] !== 1) {\n return false;\n }\n }\n return true;\n }\n static get singletons() {\n return (0, _util.shadow)(this, \"singletons\", {\n get gray() {\n return (0, _util.shadow)(this, \"gray\", new DeviceGrayCS());\n },\n get rgb() {\n return (0, _util.shadow)(this, \"rgb\", new DeviceRgbCS());\n },\n get cmyk() {\n return (0, _util.shadow)(this, \"cmyk\", new DeviceCmykCS());\n }\n });\n }\n}\nexports.ColorSpace = ColorSpace;\nclass AlternateCS extends ColorSpace {\n constructor(numComps, base, tintFn) {\n super(\"Alternate\", numComps);\n this.base = base;\n this.tintFn = tintFn;\n this.tmpBuf = new Float32Array(base.numComps);\n }\n getRgbItem(src, srcOffset, dest, destOffset) {\n const tmpBuf = this.tmpBuf;\n this.tintFn(src, srcOffset, tmpBuf, 0);\n this.base.getRgbItem(tmpBuf, 0, dest, destOffset);\n }\n getRgbBuffer(src, srcOffset, count, dest, destOffset, bits, alpha01) {\n const tintFn = this.tintFn;\n const base = this.base;\n const scale = 1 / ((1 << bits) - 1);\n const baseNumComps = base.numComps;\n const usesZeroToOneRange = base.usesZeroToOneRange;\n const isPassthrough = (base.isPassthrough(8) || !usesZeroToOneRange) && alpha01 === 0;\n let pos = isPassthrough ? destOffset : 0;\n const baseBuf = isPassthrough ? dest : new Uint8ClampedArray(baseNumComps * count);\n const numComps = this.numComps;\n const scaled = new Float32Array(numComps);\n const tinted = new Float32Array(baseNumComps);\n let i, j;\n for (i = 0; i < count; i++) {\n for (j = 0; j < numComps; j++) {\n scaled[j] = src[srcOffset++] * scale;\n }\n tintFn(scaled, 0, tinted, 0);\n if (usesZeroToOneRange) {\n for (j = 0; j < baseNumComps; j++) {\n baseBuf[pos++] = tinted[j] * 255;\n }\n } else {\n base.getRgbItem(tinted, 0, baseBuf, pos);\n pos += baseNumComps;\n }\n }\n if (!isPassthrough) {\n base.getRgbBuffer(baseBuf, 0, count, dest, destOffset, 8, alpha01);\n }\n }\n getOutputLength(inputLength, alpha01) {\n return this.base.getOutputLength(inputLength * this.base.numComps / this.numComps, alpha01);\n }\n}\nclass PatternCS extends ColorSpace {\n constructor(baseCS) {\n super(\"Pattern\", null);\n this.base = baseCS;\n }\n isDefaultDecode(decodeMap, bpc) {\n (0, _util.unreachable)(\"Should not call PatternCS.isDefaultDecode\");\n }\n}\nclass IndexedCS extends ColorSpace {\n constructor(base, highVal, lookup) {\n super(\"Indexed\", 1);\n this.base = base;\n this.highVal = highVal;\n const length = base.numComps * highVal;\n this.lookup = new Uint8Array(length);\n if (lookup instanceof _base_stream.BaseStream) {\n const bytes = lookup.getBytes(length);\n this.lookup.set(bytes);\n } else if (typeof lookup === \"string\") {\n for (let i = 0; i < length; ++i) {\n this.lookup[i] = lookup.charCodeAt(i) & 0xff;\n }\n } else {\n throw new _util.FormatError(`IndexedCS - unrecognized lookup table: ${lookup}`);\n }\n }\n getRgbItem(src, srcOffset, dest, destOffset) {\n const numComps = this.base.numComps;\n const start = src[srcOffset] * numComps;\n this.base.getRgbBuffer(this.lookup, start, 1, dest, destOffset, 8, 0);\n }\n getRgbBuffer(src, srcOffset, count, dest, destOffset, bits, alpha01) {\n const base = this.base;\n const numComps = base.numComps;\n const outputDelta = base.getOutputLength(numComps, alpha01);\n const lookup = this.lookup;\n for (let i = 0; i < count; ++i) {\n const lookupPos = src[srcOffset++] * numComps;\n base.getRgbBuffer(lookup, lookupPos, 1, dest, destOffset, 8, alpha01);\n destOffset += outputDelta;\n }\n }\n getOutputLength(inputLength, alpha01) {\n return this.base.getOutputLength(inputLength * this.base.numComps, alpha01);\n }\n isDefaultDecode(decodeMap, bpc) {\n if (!Array.isArray(decodeMap)) {\n return true;\n }\n if (decodeMap.length !== 2) {\n (0, _util.warn)(\"Decode map length is not correct\");\n return true;\n }\n if (!Number.isInteger(bpc) || bpc < 1) {\n (0, _util.warn)(\"Bits per component is not correct\");\n return true;\n }\n return decodeMap[0] === 0 && decodeMap[1] === (1 << bpc) - 1;\n }\n}\nclass DeviceGrayCS extends ColorSpace {\n constructor() {\n super(\"DeviceGray\", 1);\n }\n getRgbItem(src, srcOffset, dest, destOffset) {\n const c = src[srcOffset] * 255;\n dest[destOffset] = dest[destOffset + 1] = dest[destOffset + 2] = c;\n }\n getRgbBuffer(src, srcOffset, count, dest, destOffset, bits, alpha01) {\n const scale = 255 / ((1 << bits) - 1);\n let j = srcOffset,\n q = destOffset;\n for (let i = 0; i < count; ++i) {\n const c = scale * src[j++];\n dest[q++] = c;\n dest[q++] = c;\n dest[q++] = c;\n q += alpha01;\n }\n }\n getOutputLength(inputLength, alpha01) {\n return inputLength * (3 + alpha01);\n }\n}\nclass DeviceRgbCS extends ColorSpace {\n constructor() {\n super(\"DeviceRGB\", 3);\n }\n getRgbItem(src, srcOffset, dest, destOffset) {\n dest[destOffset] = src[srcOffset] * 255;\n dest[destOffset + 1] = src[srcOffset + 1] * 255;\n dest[destOffset + 2] = src[srcOffset + 2] * 255;\n }\n getRgbBuffer(src, srcOffset, count, dest, destOffset, bits, alpha01) {\n if (bits === 8 && alpha01 === 0) {\n dest.set(src.subarray(srcOffset, srcOffset + count * 3), destOffset);\n return;\n }\n const scale = 255 / ((1 << bits) - 1);\n let j = srcOffset,\n q = destOffset;\n for (let i = 0; i < count; ++i) {\n dest[q++] = scale * src[j++];\n dest[q++] = scale * src[j++];\n dest[q++] = scale * src[j++];\n q += alpha01;\n }\n }\n getOutputLength(inputLength, alpha01) {\n return inputLength * (3 + alpha01) / 3 | 0;\n }\n isPassthrough(bits) {\n return bits === 8;\n }\n}\nclass DeviceCmykCS extends ColorSpace {\n constructor() {\n super(\"DeviceCMYK\", 4);\n }\n #toRgb(src, srcOffset, srcScale, dest, destOffset) {\n const c = src[srcOffset] * srcScale;\n const m = src[srcOffset + 1] * srcScale;\n const y = src[srcOffset + 2] * srcScale;\n const k = src[srcOffset + 3] * srcScale;\n dest[destOffset] = 255 + c * (-4.387332384609988 * c + 54.48615194189176 * m + 18.82290502165302 * y + 212.25662451639585 * k + -285.2331026137004) + m * (1.7149763477362134 * m - 5.6096736904047315 * y + -17.873870861415444 * k - 5.497006427196366) + y * (-2.5217340131683033 * y - 21.248923337353073 * k + 17.5119270841813) + k * (-21.86122147463605 * k - 189.48180835922747);\n dest[destOffset + 1] = 255 + c * (8.841041422036149 * c + 60.118027045597366 * m + 6.871425592049007 * y + 31.159100130055922 * k + -79.2970844816548) + m * (-15.310361306967817 * m + 17.575251261109482 * y + 131.35250912493976 * k - 190.9453302588951) + y * (4.444339102852739 * y + 9.8632861493405 * k - 24.86741582555878) + k * (-20.737325471181034 * k - 187.80453709719578);\n dest[destOffset + 2] = 255 + c * (0.8842522430003296 * c + 8.078677503112928 * m + 30.89978309703729 * y - 0.23883238689178934 * k + -14.183576799673286) + m * (10.49593273432072 * m + 63.02378494754052 * y + 50.606957656360734 * k - 112.23884253719248) + y * (0.03296041114873217 * y + 115.60384449646641 * k + -193.58209356861505) + k * (-22.33816807309886 * k - 180.12613974708367);\n }\n getRgbItem(src, srcOffset, dest, destOffset) {\n this.#toRgb(src, srcOffset, 1, dest, destOffset);\n }\n getRgbBuffer(src, srcOffset, count, dest, destOffset, bits, alpha01) {\n const scale = 1 / ((1 << bits) - 1);\n for (let i = 0; i < count; i++) {\n this.#toRgb(src, srcOffset, scale, dest, destOffset);\n srcOffset += 4;\n destOffset += 3 + alpha01;\n }\n }\n getOutputLength(inputLength, alpha01) {\n return inputLength / 4 * (3 + alpha01) | 0;\n }\n}\nclass CalGrayCS extends ColorSpace {\n constructor(whitePoint, blackPoint, gamma) {\n super(\"CalGray\", 1);\n if (!whitePoint) {\n throw new _util.FormatError(\"WhitePoint missing - required for color space CalGray\");\n }\n [this.XW, this.YW, this.ZW] = whitePoint;\n [this.XB, this.YB, this.ZB] = blackPoint || [0, 0, 0];\n this.G = gamma || 1;\n if (this.XW < 0 || this.ZW < 0 || this.YW !== 1) {\n throw new _util.FormatError(`Invalid WhitePoint components for ${this.name}, no fallback available`);\n }\n if (this.XB < 0 || this.YB < 0 || this.ZB < 0) {\n (0, _util.info)(`Invalid BlackPoint for ${this.name}, falling back to default.`);\n this.XB = this.YB = this.ZB = 0;\n }\n if (this.XB !== 0 || this.YB !== 0 || this.ZB !== 0) {\n (0, _util.warn)(`${this.name}, BlackPoint: XB: ${this.XB}, YB: ${this.YB}, ` + `ZB: ${this.ZB}, only default values are supported.`);\n }\n if (this.G < 1) {\n (0, _util.info)(`Invalid Gamma: ${this.G} for ${this.name}, falling back to default.`);\n this.G = 1;\n }\n }\n #toRgb(src, srcOffset, dest, destOffset, scale) {\n const A = src[srcOffset] * scale;\n const AG = A ** this.G;\n const L = this.YW * AG;\n const val = Math.max(295.8 * L ** 0.3333333333333333 - 40.8, 0);\n dest[destOffset] = val;\n dest[destOffset + 1] = val;\n dest[destOffset + 2] = val;\n }\n getRgbItem(src, srcOffset, dest, destOffset) {\n this.#toRgb(src, srcOffset, dest, destOffset, 1);\n }\n getRgbBuffer(src, srcOffset, count, dest, destOffset, bits, alpha01) {\n const scale = 1 / ((1 << bits) - 1);\n for (let i = 0; i < count; ++i) {\n this.#toRgb(src, srcOffset, dest, destOffset, scale);\n srcOffset += 1;\n destOffset += 3 + alpha01;\n }\n }\n getOutputLength(inputLength, alpha01) {\n return inputLength * (3 + alpha01);\n }\n}\nclass CalRGBCS extends ColorSpace {\n static #BRADFORD_SCALE_MATRIX = new Float32Array([0.8951, 0.2664, -0.1614, -0.7502, 1.7135, 0.0367, 0.0389, -0.0685, 1.0296]);\n static #BRADFORD_SCALE_INVERSE_MATRIX = new Float32Array([0.9869929, -0.1470543, 0.1599627, 0.4323053, 0.5183603, 0.0492912, -0.0085287, 0.0400428, 0.9684867]);\n static #SRGB_D65_XYZ_TO_RGB_MATRIX = new Float32Array([3.2404542, -1.5371385, -0.4985314, -0.9692660, 1.8760108, 0.0415560, 0.0556434, -0.2040259, 1.0572252]);\n static #FLAT_WHITEPOINT_MATRIX = new Float32Array([1, 1, 1]);\n static #tempNormalizeMatrix = new Float32Array(3);\n static #tempConvertMatrix1 = new Float32Array(3);\n static #tempConvertMatrix2 = new Float32Array(3);\n static #DECODE_L_CONSTANT = ((8 + 16) / 116) ** 3 / 8.0;\n constructor(whitePoint, blackPoint, gamma, matrix) {\n super(\"CalRGB\", 3);\n if (!whitePoint) {\n throw new _util.FormatError(\"WhitePoint missing - required for color space CalRGB\");\n }\n const [XW, YW, ZW] = this.whitePoint = whitePoint;\n const [XB, YB, ZB] = this.blackPoint = blackPoint || new Float32Array(3);\n [this.GR, this.GG, this.GB] = gamma || new Float32Array([1, 1, 1]);\n [this.MXA, this.MYA, this.MZA, this.MXB, this.MYB, this.MZB, this.MXC, this.MYC, this.MZC] = matrix || new Float32Array([1, 0, 0, 0, 1, 0, 0, 0, 1]);\n if (XW < 0 || ZW < 0 || YW !== 1) {\n throw new _util.FormatError(`Invalid WhitePoint components for ${this.name}, no fallback available`);\n }\n if (XB < 0 || YB < 0 || ZB < 0) {\n (0, _util.info)(`Invalid BlackPoint for ${this.name} [${XB}, ${YB}, ${ZB}], ` + \"falling back to default.\");\n this.blackPoint = new Float32Array(3);\n }\n if (this.GR < 0 || this.GG < 0 || this.GB < 0) {\n (0, _util.info)(`Invalid Gamma [${this.GR}, ${this.GG}, ${this.GB}] for ` + `${this.name}, falling back to default.`);\n this.GR = this.GG = this.GB = 1;\n }\n }\n #matrixProduct(a, b, result) {\n result[0] = a[0] * b[0] + a[1] * b[1] + a[2] * b[2];\n result[1] = a[3] * b[0] + a[4] * b[1] + a[5] * b[2];\n result[2] = a[6] * b[0] + a[7] * b[1] + a[8] * b[2];\n }\n #toFlat(sourceWhitePoint, LMS, result) {\n result[0] = LMS[0] * 1 / sourceWhitePoint[0];\n result[1] = LMS[1] * 1 / sourceWhitePoint[1];\n result[2] = LMS[2] * 1 / sourceWhitePoint[2];\n }\n #toD65(sourceWhitePoint, LMS, result) {\n const D65X = 0.95047;\n const D65Y = 1;\n const D65Z = 1.08883;\n result[0] = LMS[0] * D65X / sourceWhitePoint[0];\n result[1] = LMS[1] * D65Y / sourceWhitePoint[1];\n result[2] = LMS[2] * D65Z / sourceWhitePoint[2];\n }\n #sRGBTransferFunction(color) {\n if (color <= 0.0031308) {\n return this.#adjustToRange(0, 1, 12.92 * color);\n }\n if (color >= 0.99554525) {\n return 1;\n }\n return this.#adjustToRange(0, 1, (1 + 0.055) * color ** (1 / 2.4) - 0.055);\n }\n #adjustToRange(min, max, value) {\n return Math.max(min, Math.min(max, value));\n }\n #decodeL(L) {\n if (L < 0) {\n return -this.#decodeL(-L);\n }\n if (L > 8.0) {\n return ((L + 16) / 116) ** 3;\n }\n return L * CalRGBCS.#DECODE_L_CONSTANT;\n }\n #compensateBlackPoint(sourceBlackPoint, XYZ_Flat, result) {\n if (sourceBlackPoint[0] === 0 && sourceBlackPoint[1] === 0 && sourceBlackPoint[2] === 0) {\n result[0] = XYZ_Flat[0];\n result[1] = XYZ_Flat[1];\n result[2] = XYZ_Flat[2];\n return;\n }\n const zeroDecodeL = this.#decodeL(0);\n const X_DST = zeroDecodeL;\n const X_SRC = this.#decodeL(sourceBlackPoint[0]);\n const Y_DST = zeroDecodeL;\n const Y_SRC = this.#decodeL(sourceBlackPoint[1]);\n const Z_DST = zeroDecodeL;\n const Z_SRC = this.#decodeL(sourceBlackPoint[2]);\n const X_Scale = (1 - X_DST) / (1 - X_SRC);\n const X_Offset = 1 - X_Scale;\n const Y_Scale = (1 - Y_DST) / (1 - Y_SRC);\n const Y_Offset = 1 - Y_Scale;\n const Z_Scale = (1 - Z_DST) / (1 - Z_SRC);\n const Z_Offset = 1 - Z_Scale;\n result[0] = XYZ_Flat[0] * X_Scale + X_Offset;\n result[1] = XYZ_Flat[1] * Y_Scale + Y_Offset;\n result[2] = XYZ_Flat[2] * Z_Scale + Z_Offset;\n }\n #normalizeWhitePointToFlat(sourceWhitePoint, XYZ_In, result) {\n if (sourceWhitePoint[0] === 1 && sourceWhitePoint[2] === 1) {\n result[0] = XYZ_In[0];\n result[1] = XYZ_In[1];\n result[2] = XYZ_In[2];\n return;\n }\n const LMS = result;\n this.#matrixProduct(CalRGBCS.#BRADFORD_SCALE_MATRIX, XYZ_In, LMS);\n const LMS_Flat = CalRGBCS.#tempNormalizeMatrix;\n this.#toFlat(sourceWhitePoint, LMS, LMS_Flat);\n this.#matrixProduct(CalRGBCS.#BRADFORD_SCALE_INVERSE_MATRIX, LMS_Flat, result);\n }\n #normalizeWhitePointToD65(sourceWhitePoint, XYZ_In, result) {\n const LMS = result;\n this.#matrixProduct(CalRGBCS.#BRADFORD_SCALE_MATRIX, XYZ_In, LMS);\n const LMS_D65 = CalRGBCS.#tempNormalizeMatrix;\n this.#toD65(sourceWhitePoint, LMS, LMS_D65);\n this.#matrixProduct(CalRGBCS.#BRADFORD_SCALE_INVERSE_MATRIX, LMS_D65, result);\n }\n #toRgb(src, srcOffset, dest, destOffset, scale) {\n const A = this.#adjustToRange(0, 1, src[srcOffset] * scale);\n const B = this.#adjustToRange(0, 1, src[srcOffset + 1] * scale);\n const C = this.#adjustToRange(0, 1, src[srcOffset + 2] * scale);\n const AGR = A === 1 ? 1 : A ** this.GR;\n const BGG = B === 1 ? 1 : B ** this.GG;\n const CGB = C === 1 ? 1 : C ** this.GB;\n const X = this.MXA * AGR + this.MXB * BGG + this.MXC * CGB;\n const Y = this.MYA * AGR + this.MYB * BGG + this.MYC * CGB;\n const Z = this.MZA * AGR + this.MZB * BGG + this.MZC * CGB;\n const XYZ = CalRGBCS.#tempConvertMatrix1;\n XYZ[0] = X;\n XYZ[1] = Y;\n XYZ[2] = Z;\n const XYZ_Flat = CalRGBCS.#tempConvertMatrix2;\n this.#normalizeWhitePointToFlat(this.whitePoint, XYZ, XYZ_Flat);\n const XYZ_Black = CalRGBCS.#tempConvertMatrix1;\n this.#compensateBlackPoint(this.blackPoint, XYZ_Flat, XYZ_Black);\n const XYZ_D65 = CalRGBCS.#tempConvertMatrix2;\n this.#normalizeWhitePointToD65(CalRGBCS.#FLAT_WHITEPOINT_MATRIX, XYZ_Black, XYZ_D65);\n const SRGB = CalRGBCS.#tempConvertMatrix1;\n this.#matrixProduct(CalRGBCS.#SRGB_D65_XYZ_TO_RGB_MATRIX, XYZ_D65, SRGB);\n dest[destOffset] = this.#sRGBTransferFunction(SRGB[0]) * 255;\n dest[destOffset + 1] = this.#sRGBTransferFunction(SRGB[1]) * 255;\n dest[destOffset + 2] = this.#sRGBTransferFunction(SRGB[2]) * 255;\n }\n getRgbItem(src, srcOffset, dest, destOffset) {\n this.#toRgb(src, srcOffset, dest, destOffset, 1);\n }\n getRgbBuffer(src, srcOffset, count, dest, destOffset, bits, alpha01) {\n const scale = 1 / ((1 << bits) - 1);\n for (let i = 0; i < count; ++i) {\n this.#toRgb(src, srcOffset, dest, destOffset, scale);\n srcOffset += 3;\n destOffset += 3 + alpha01;\n }\n }\n getOutputLength(inputLength, alpha01) {\n return inputLength * (3 + alpha01) / 3 | 0;\n }\n}\nclass LabCS extends ColorSpace {\n constructor(whitePoint, blackPoint, range) {\n super(\"Lab\", 3);\n if (!whitePoint) {\n throw new _util.FormatError(\"WhitePoint missing - required for color space Lab\");\n }\n [this.XW, this.YW, this.ZW] = whitePoint;\n [this.amin, this.amax, this.bmin, this.bmax] = range || [-100, 100, -100, 100];\n [this.XB, this.YB, this.ZB] = blackPoint || [0, 0, 0];\n if (this.XW < 0 || this.ZW < 0 || this.YW !== 1) {\n throw new _util.FormatError(\"Invalid WhitePoint components, no fallback available\");\n }\n if (this.XB < 0 || this.YB < 0 || this.ZB < 0) {\n (0, _util.info)(\"Invalid BlackPoint, falling back to default\");\n this.XB = this.YB = this.ZB = 0;\n }\n if (this.amin > this.amax || this.bmin > this.bmax) {\n (0, _util.info)(\"Invalid Range, falling back to defaults\");\n this.amin = -100;\n this.amax = 100;\n this.bmin = -100;\n this.bmax = 100;\n }\n }\n #fn_g(x) {\n return x >= 6 / 29 ? x ** 3 : 108 / 841 * (x - 4 / 29);\n }\n #decode(value, high1, low2, high2) {\n return low2 + value * (high2 - low2) / high1;\n }\n #toRgb(src, srcOffset, maxVal, dest, destOffset) {\n let Ls = src[srcOffset];\n let as = src[srcOffset + 1];\n let bs = src[srcOffset + 2];\n if (maxVal !== false) {\n Ls = this.#decode(Ls, maxVal, 0, 100);\n as = this.#decode(as, maxVal, this.amin, this.amax);\n bs = this.#decode(bs, maxVal, this.bmin, this.bmax);\n }\n if (as > this.amax) {\n as = this.amax;\n } else if (as < this.amin) {\n as = this.amin;\n }\n if (bs > this.bmax) {\n bs = this.bmax;\n } else if (bs < this.bmin) {\n bs = this.bmin;\n }\n const M = (Ls + 16) / 116;\n const L = M + as / 500;\n const N = M - bs / 200;\n const X = this.XW * this.#fn_g(L);\n const Y = this.YW * this.#fn_g(M);\n const Z = this.ZW * this.#fn_g(N);\n let r, g, b;\n if (this.ZW < 1) {\n r = X * 3.1339 + Y * -1.617 + Z * -0.4906;\n g = X * -0.9785 + Y * 1.916 + Z * 0.0333;\n b = X * 0.072 + Y * -0.229 + Z * 1.4057;\n } else {\n r = X * 3.2406 + Y * -1.5372 + Z * -0.4986;\n g = X * -0.9689 + Y * 1.8758 + Z * 0.0415;\n b = X * 0.0557 + Y * -0.204 + Z * 1.057;\n }\n dest[destOffset] = Math.sqrt(r) * 255;\n dest[destOffset + 1] = Math.sqrt(g) * 255;\n dest[destOffset + 2] = Math.sqrt(b) * 255;\n }\n getRgbItem(src, srcOffset, dest, destOffset) {\n this.#toRgb(src, srcOffset, false, dest, destOffset);\n }\n getRgbBuffer(src, srcOffset, count, dest, destOffset, bits, alpha01) {\n const maxVal = (1 << bits) - 1;\n for (let i = 0; i < count; i++) {\n this.#toRgb(src, srcOffset, maxVal, dest, destOffset);\n srcOffset += 3;\n destOffset += 3 + alpha01;\n }\n }\n getOutputLength(inputLength, alpha01) {\n return inputLength * (3 + alpha01) / 3 | 0;\n }\n isDefaultDecode(decodeMap, bpc) {\n return true;\n }\n get usesZeroToOneRange() {\n return (0, _util.shadow)(this, \"usesZeroToOneRange\", false);\n }\n}\n\n/***/ }),\n/* 13 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PartialEvaluator = exports.EvaluatorPreprocessor = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _cmap = __w_pdfjs_require__(14);\nvar _primitives = __w_pdfjs_require__(4);\nvar _fonts = __w_pdfjs_require__(34);\nvar _encodings = __w_pdfjs_require__(37);\nvar _standard_fonts = __w_pdfjs_require__(41);\nvar _pattern = __w_pdfjs_require__(50);\nvar _xfa_fonts = __w_pdfjs_require__(51);\nvar _to_unicode_map = __w_pdfjs_require__(42);\nvar _function = __w_pdfjs_require__(57);\nvar _parser = __w_pdfjs_require__(16);\nvar _image_utils = __w_pdfjs_require__(59);\nvar _stream = __w_pdfjs_require__(8);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _bidi = __w_pdfjs_require__(60);\nvar _colorspace = __w_pdfjs_require__(12);\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _fonts_utils = __w_pdfjs_require__(38);\nvar _font_substitutions = __w_pdfjs_require__(61);\nvar _glyphlist = __w_pdfjs_require__(39);\nvar _metrics = __w_pdfjs_require__(45);\nvar _unicode = __w_pdfjs_require__(40);\nvar _image_resizer = __w_pdfjs_require__(62);\nvar _murmurhash = __w_pdfjs_require__(63);\nvar _operator_list = __w_pdfjs_require__(64);\nvar _image = __w_pdfjs_require__(65);\nconst DefaultPartialEvaluatorOptions = Object.freeze({\n maxImageSize: -1,\n disableFontFace: false,\n ignoreErrors: false,\n isEvalSupported: true,\n isOffscreenCanvasSupported: false,\n canvasMaxAreaInBytes: -1,\n fontExtraProperties: false,\n useSystemFonts: true,\n cMapUrl: null,\n standardFontDataUrl: null\n});\nconst PatternType = {\n TILING: 1,\n SHADING: 2\n};\nconst TEXT_CHUNK_BATCH_SIZE = 10;\nconst deferred = Promise.resolve();\nfunction normalizeBlendMode(value, parsingArray = false) {\n if (Array.isArray(value)) {\n for (const val of value) {\n const maybeBM = normalizeBlendMode(val, true);\n if (maybeBM) {\n return maybeBM;\n }\n }\n (0, _util.warn)(`Unsupported blend mode Array: ${value}`);\n return \"source-over\";\n }\n if (!(value instanceof _primitives.Name)) {\n if (parsingArray) {\n return null;\n }\n return \"source-over\";\n }\n switch (value.name) {\n case \"Normal\":\n case \"Compatible\":\n return \"source-over\";\n case \"Multiply\":\n return \"multiply\";\n case \"Screen\":\n return \"screen\";\n case \"Overlay\":\n return \"overlay\";\n case \"Darken\":\n return \"darken\";\n case \"Lighten\":\n return \"lighten\";\n case \"ColorDodge\":\n return \"color-dodge\";\n case \"ColorBurn\":\n return \"color-burn\";\n case \"HardLight\":\n return \"hard-light\";\n case \"SoftLight\":\n return \"soft-light\";\n case \"Difference\":\n return \"difference\";\n case \"Exclusion\":\n return \"exclusion\";\n case \"Hue\":\n return \"hue\";\n case \"Saturation\":\n return \"saturation\";\n case \"Color\":\n return \"color\";\n case \"Luminosity\":\n return \"luminosity\";\n }\n if (parsingArray) {\n return null;\n }\n (0, _util.warn)(`Unsupported blend mode: ${value.name}`);\n return \"source-over\";\n}\nfunction incrementCachedImageMaskCount(data) {\n if (data.fn === _util.OPS.paintImageMaskXObject && data.args[0]?.count > 0) {\n data.args[0].count++;\n }\n}\nclass TimeSlotManager {\n static TIME_SLOT_DURATION_MS = 20;\n static CHECK_TIME_EVERY = 100;\n constructor() {\n this.reset();\n }\n check() {\n if (++this.checked < TimeSlotManager.CHECK_TIME_EVERY) {\n return false;\n }\n this.checked = 0;\n return this.endTime <= Date.now();\n }\n reset() {\n this.endTime = Date.now() + TimeSlotManager.TIME_SLOT_DURATION_MS;\n this.checked = 0;\n }\n}\nclass PartialEvaluator {\n constructor({\n xref,\n handler,\n pageIndex,\n idFactory,\n fontCache,\n builtInCMapCache,\n standardFontDataCache,\n globalImageCache,\n systemFontCache,\n options = null\n }) {\n this.xref = xref;\n this.handler = handler;\n this.pageIndex = pageIndex;\n this.idFactory = idFactory;\n this.fontCache = fontCache;\n this.builtInCMapCache = builtInCMapCache;\n this.standardFontDataCache = standardFontDataCache;\n this.globalImageCache = globalImageCache;\n this.systemFontCache = systemFontCache;\n this.options = options || DefaultPartialEvaluatorOptions;\n this.parsingType3Font = false;\n this._regionalImageCache = new _image_utils.RegionalImageCache();\n this._fetchBuiltInCMapBound = this.fetchBuiltInCMap.bind(this);\n _image_resizer.ImageResizer.setMaxArea(this.options.canvasMaxAreaInBytes);\n }\n get _pdfFunctionFactory() {\n const pdfFunctionFactory = new _function.PDFFunctionFactory({\n xref: this.xref,\n isEvalSupported: this.options.isEvalSupported\n });\n return (0, _util.shadow)(this, \"_pdfFunctionFactory\", pdfFunctionFactory);\n }\n clone(newOptions = null) {\n const newEvaluator = Object.create(this);\n newEvaluator.options = Object.assign(Object.create(null), this.options, newOptions);\n return newEvaluator;\n }\n hasBlendModes(resources, nonBlendModesSet) {\n if (!(resources instanceof _primitives.Dict)) {\n return false;\n }\n if (resources.objId && nonBlendModesSet.has(resources.objId)) {\n return false;\n }\n const processed = new _primitives.RefSet(nonBlendModesSet);\n if (resources.objId) {\n processed.put(resources.objId);\n }\n const nodes = [resources],\n xref = this.xref;\n while (nodes.length) {\n const node = nodes.shift();\n const graphicStates = node.get(\"ExtGState\");\n if (graphicStates instanceof _primitives.Dict) {\n for (let graphicState of graphicStates.getRawValues()) {\n if (graphicState instanceof _primitives.Ref) {\n if (processed.has(graphicState)) {\n continue;\n }\n try {\n graphicState = xref.fetch(graphicState);\n } catch (ex) {\n processed.put(graphicState);\n (0, _util.info)(`hasBlendModes - ignoring ExtGState: \"${ex}\".`);\n continue;\n }\n }\n if (!(graphicState instanceof _primitives.Dict)) {\n continue;\n }\n if (graphicState.objId) {\n processed.put(graphicState.objId);\n }\n const bm = graphicState.get(\"BM\");\n if (bm instanceof _primitives.Name) {\n if (bm.name !== \"Normal\") {\n return true;\n }\n continue;\n }\n if (bm !== undefined && Array.isArray(bm)) {\n for (const element of bm) {\n if (element instanceof _primitives.Name && element.name !== \"Normal\") {\n return true;\n }\n }\n }\n }\n }\n const xObjects = node.get(\"XObject\");\n if (!(xObjects instanceof _primitives.Dict)) {\n continue;\n }\n for (let xObject of xObjects.getRawValues()) {\n if (xObject instanceof _primitives.Ref) {\n if (processed.has(xObject)) {\n continue;\n }\n try {\n xObject = xref.fetch(xObject);\n } catch (ex) {\n processed.put(xObject);\n (0, _util.info)(`hasBlendModes - ignoring XObject: \"${ex}\".`);\n continue;\n }\n }\n if (!(xObject instanceof _base_stream.BaseStream)) {\n continue;\n }\n if (xObject.dict.objId) {\n processed.put(xObject.dict.objId);\n }\n const xResources = xObject.dict.get(\"Resources\");\n if (!(xResources instanceof _primitives.Dict)) {\n continue;\n }\n if (xResources.objId && processed.has(xResources.objId)) {\n continue;\n }\n nodes.push(xResources);\n if (xResources.objId) {\n processed.put(xResources.objId);\n }\n }\n }\n for (const ref of processed) {\n nonBlendModesSet.put(ref);\n }\n return false;\n }\n async fetchBuiltInCMap(name) {\n const cachedData = this.builtInCMapCache.get(name);\n if (cachedData) {\n return cachedData;\n }\n let data;\n if (this.options.cMapUrl !== null) {\n const url = `${this.options.cMapUrl}${name}.bcmap`;\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error(`fetchBuiltInCMap: failed to fetch file \"${url}\" with \"${response.statusText}\".`);\n }\n data = {\n cMapData: new Uint8Array(await response.arrayBuffer()),\n compressionType: _util.CMapCompressionType.BINARY\n };\n } else {\n data = await this.handler.sendWithPromise(\"FetchBuiltInCMap\", {\n name\n });\n }\n if (data.compressionType !== _util.CMapCompressionType.NONE) {\n this.builtInCMapCache.set(name, data);\n }\n return data;\n }\n async fetchStandardFontData(name) {\n const cachedData = this.standardFontDataCache.get(name);\n if (cachedData) {\n return new _stream.Stream(cachedData);\n }\n if (this.options.useSystemFonts && name !== \"Symbol\" && name !== \"ZapfDingbats\") {\n return null;\n }\n const standardFontNameToFileName = (0, _standard_fonts.getFontNameToFileMap)(),\n filename = standardFontNameToFileName[name];\n let data;\n if (this.options.standardFontDataUrl !== null) {\n const url = `${this.options.standardFontDataUrl}${filename}`;\n const response = await fetch(url);\n if (!response.ok) {\n (0, _util.warn)(`fetchStandardFontData: failed to fetch file \"${url}\" with \"${response.statusText}\".`);\n } else {\n data = await response.arrayBuffer();\n }\n } else {\n try {\n data = await this.handler.sendWithPromise(\"FetchStandardFontData\", {\n filename\n });\n } catch (e) {\n (0, _util.warn)(`fetchStandardFontData: failed to fetch file \"${filename}\" with \"${e}\".`);\n }\n }\n if (!data) {\n return null;\n }\n this.standardFontDataCache.set(name, data);\n return new _stream.Stream(data);\n }\n async buildFormXObject(resources, xobj, smask, operatorList, task, initialState, localColorSpaceCache) {\n const dict = xobj.dict;\n const matrix = dict.getArray(\"Matrix\");\n let bbox = dict.getArray(\"BBox\");\n bbox = Array.isArray(bbox) && bbox.length === 4 ? _util.Util.normalizeRect(bbox) : null;\n let optionalContent, groupOptions;\n if (dict.has(\"OC\")) {\n optionalContent = await this.parseMarkedContentProps(dict.get(\"OC\"), resources);\n }\n if (optionalContent !== undefined) {\n operatorList.addOp(_util.OPS.beginMarkedContentProps, [\"OC\", optionalContent]);\n }\n const group = dict.get(\"Group\");\n if (group) {\n groupOptions = {\n matrix,\n bbox,\n smask,\n isolated: false,\n knockout: false\n };\n const groupSubtype = group.get(\"S\");\n let colorSpace = null;\n if ((0, _primitives.isName)(groupSubtype, \"Transparency\")) {\n groupOptions.isolated = group.get(\"I\") || false;\n groupOptions.knockout = group.get(\"K\") || false;\n if (group.has(\"CS\")) {\n const cs = group.getRaw(\"CS\");\n const cachedColorSpace = _colorspace.ColorSpace.getCached(cs, this.xref, localColorSpaceCache);\n if (cachedColorSpace) {\n colorSpace = cachedColorSpace;\n } else {\n colorSpace = await this.parseColorSpace({\n cs,\n resources,\n localColorSpaceCache\n });\n }\n }\n }\n if (smask?.backdrop) {\n colorSpace ||= _colorspace.ColorSpace.singletons.rgb;\n smask.backdrop = colorSpace.getRgb(smask.backdrop, 0);\n }\n operatorList.addOp(_util.OPS.beginGroup, [groupOptions]);\n }\n const args = group ? [matrix, null] : [matrix, bbox];\n operatorList.addOp(_util.OPS.paintFormXObjectBegin, args);\n return this.getOperatorList({\n stream: xobj,\n task,\n resources: dict.get(\"Resources\") || resources,\n operatorList,\n initialState\n }).then(function () {\n operatorList.addOp(_util.OPS.paintFormXObjectEnd, []);\n if (group) {\n operatorList.addOp(_util.OPS.endGroup, [groupOptions]);\n }\n if (optionalContent !== undefined) {\n operatorList.addOp(_util.OPS.endMarkedContent, []);\n }\n });\n }\n _sendImgData(objId, imgData, cacheGlobally = false) {\n const transfers = imgData ? [imgData.bitmap || imgData.data.buffer] : null;\n if (this.parsingType3Font || cacheGlobally) {\n return this.handler.send(\"commonobj\", [objId, \"Image\", imgData], transfers);\n }\n return this.handler.send(\"obj\", [objId, this.pageIndex, \"Image\", imgData], transfers);\n }\n async buildPaintImageXObject({\n resources,\n image,\n isInline = false,\n operatorList,\n cacheKey,\n localImageCache,\n localColorSpaceCache\n }) {\n const dict = image.dict;\n const imageRef = dict.objId;\n const w = dict.get(\"W\", \"Width\");\n const h = dict.get(\"H\", \"Height\");\n if (!(w && typeof w === \"number\") || !(h && typeof h === \"number\")) {\n (0, _util.warn)(\"Image dimensions are missing, or not numbers.\");\n return;\n }\n const maxImageSize = this.options.maxImageSize;\n if (maxImageSize !== -1 && w * h > maxImageSize) {\n const msg = \"Image exceeded maximum allowed size and was removed.\";\n if (this.options.ignoreErrors) {\n (0, _util.warn)(msg);\n return;\n }\n throw new Error(msg);\n }\n let optionalContent;\n if (dict.has(\"OC\")) {\n optionalContent = await this.parseMarkedContentProps(dict.get(\"OC\"), resources);\n }\n const imageMask = dict.get(\"IM\", \"ImageMask\") || false;\n let imgData, args;\n if (imageMask) {\n const interpolate = dict.get(\"I\", \"Interpolate\");\n const bitStrideLength = w + 7 >> 3;\n const imgArray = image.getBytes(bitStrideLength * h);\n const decode = dict.getArray(\"D\", \"Decode\");\n if (this.parsingType3Font) {\n imgData = _image.PDFImage.createRawMask({\n imgArray,\n width: w,\n height: h,\n imageIsFromDecodeStream: image instanceof _decode_stream.DecodeStream,\n inverseDecode: decode?.[0] > 0,\n interpolate\n });\n imgData.cached = !!cacheKey;\n args = [imgData];\n operatorList.addImageOps(_util.OPS.paintImageMaskXObject, args, optionalContent);\n if (cacheKey) {\n const cacheData = {\n fn: _util.OPS.paintImageMaskXObject,\n args,\n optionalContent\n };\n localImageCache.set(cacheKey, imageRef, cacheData);\n if (imageRef) {\n this._regionalImageCache.set(null, imageRef, cacheData);\n }\n }\n return;\n }\n imgData = await _image.PDFImage.createMask({\n imgArray,\n width: w,\n height: h,\n imageIsFromDecodeStream: image instanceof _decode_stream.DecodeStream,\n inverseDecode: decode?.[0] > 0,\n interpolate,\n isOffscreenCanvasSupported: this.options.isOffscreenCanvasSupported\n });\n if (imgData.isSingleOpaquePixel) {\n operatorList.addImageOps(_util.OPS.paintSolidColorImageMask, [], optionalContent);\n if (cacheKey) {\n const cacheData = {\n fn: _util.OPS.paintSolidColorImageMask,\n args: [],\n optionalContent\n };\n localImageCache.set(cacheKey, imageRef, cacheData);\n if (imageRef) {\n this._regionalImageCache.set(null, imageRef, cacheData);\n }\n }\n return;\n }\n const objId = `mask_${this.idFactory.createObjId()}`;\n operatorList.addDependency(objId);\n this._sendImgData(objId, imgData);\n args = [{\n data: objId,\n width: imgData.width,\n height: imgData.height,\n interpolate: imgData.interpolate,\n count: 1\n }];\n operatorList.addImageOps(_util.OPS.paintImageMaskXObject, args, optionalContent);\n if (cacheKey) {\n const cacheData = {\n fn: _util.OPS.paintImageMaskXObject,\n args,\n optionalContent\n };\n localImageCache.set(cacheKey, imageRef, cacheData);\n if (imageRef) {\n this._regionalImageCache.set(null, imageRef, cacheData);\n }\n }\n return;\n }\n const SMALL_IMAGE_DIMENSIONS = 200;\n if (isInline && !dict.has(\"SMask\") && !dict.has(\"Mask\") && w + h < SMALL_IMAGE_DIMENSIONS) {\n const imageObj = new _image.PDFImage({\n xref: this.xref,\n res: resources,\n image,\n isInline,\n pdfFunctionFactory: this._pdfFunctionFactory,\n localColorSpaceCache\n });\n imgData = await imageObj.createImageData(true, false);\n operatorList.isOffscreenCanvasSupported = this.options.isOffscreenCanvasSupported;\n operatorList.addImageOps(_util.OPS.paintInlineImageXObject, [imgData], optionalContent);\n return;\n }\n let objId = `img_${this.idFactory.createObjId()}`,\n cacheGlobally = false;\n if (this.parsingType3Font) {\n objId = `${this.idFactory.getDocId()}_type3_${objId}`;\n } else if (imageRef) {\n cacheGlobally = this.globalImageCache.shouldCache(imageRef, this.pageIndex);\n if (cacheGlobally) {\n objId = `${this.idFactory.getDocId()}_${objId}`;\n }\n }\n operatorList.addDependency(objId);\n args = [objId, w, h];\n _image.PDFImage.buildImage({\n xref: this.xref,\n res: resources,\n image,\n isInline,\n pdfFunctionFactory: this._pdfFunctionFactory,\n localColorSpaceCache\n }).then(async imageObj => {\n imgData = await imageObj.createImageData(false, this.options.isOffscreenCanvasSupported);\n if (cacheKey && imageRef && cacheGlobally) {\n const length = imgData.bitmap ? imgData.width * imgData.height * 4 : imgData.data.length;\n this.globalImageCache.addByteSize(imageRef, length);\n }\n return this._sendImgData(objId, imgData, cacheGlobally);\n }).catch(reason => {\n (0, _util.warn)(`Unable to decode image \"${objId}\": \"${reason}\".`);\n return this._sendImgData(objId, null, cacheGlobally);\n });\n operatorList.addImageOps(_util.OPS.paintImageXObject, args, optionalContent);\n if (cacheKey) {\n const cacheData = {\n fn: _util.OPS.paintImageXObject,\n args,\n optionalContent\n };\n localImageCache.set(cacheKey, imageRef, cacheData);\n if (imageRef) {\n this._regionalImageCache.set(null, imageRef, cacheData);\n if (cacheGlobally) {\n (0, _util.assert)(!isInline, \"Cannot cache an inline image globally.\");\n this.globalImageCache.setData(imageRef, {\n objId,\n fn: _util.OPS.paintImageXObject,\n args,\n optionalContent,\n byteSize: 0\n });\n }\n }\n }\n }\n handleSMask(smask, resources, operatorList, task, stateManager, localColorSpaceCache) {\n const smaskContent = smask.get(\"G\");\n const smaskOptions = {\n subtype: smask.get(\"S\").name,\n backdrop: smask.get(\"BC\")\n };\n const transferObj = smask.get(\"TR\");\n if ((0, _function.isPDFFunction)(transferObj)) {\n const transferFn = this._pdfFunctionFactory.create(transferObj);\n const transferMap = new Uint8Array(256);\n const tmp = new Float32Array(1);\n for (let i = 0; i < 256; i++) {\n tmp[0] = i / 255;\n transferFn(tmp, 0, tmp, 0);\n transferMap[i] = tmp[0] * 255 | 0;\n }\n smaskOptions.transferMap = transferMap;\n }\n return this.buildFormXObject(resources, smaskContent, smaskOptions, operatorList, task, stateManager.state.clone(), localColorSpaceCache);\n }\n handleTransferFunction(tr) {\n let transferArray;\n if (Array.isArray(tr)) {\n transferArray = tr;\n } else if ((0, _function.isPDFFunction)(tr)) {\n transferArray = [tr];\n } else {\n return null;\n }\n const transferMaps = [];\n let numFns = 0,\n numEffectfulFns = 0;\n for (const entry of transferArray) {\n const transferObj = this.xref.fetchIfRef(entry);\n numFns++;\n if ((0, _primitives.isName)(transferObj, \"Identity\")) {\n transferMaps.push(null);\n continue;\n } else if (!(0, _function.isPDFFunction)(transferObj)) {\n return null;\n }\n const transferFn = this._pdfFunctionFactory.create(transferObj);\n const transferMap = new Uint8Array(256),\n tmp = new Float32Array(1);\n for (let j = 0; j < 256; j++) {\n tmp[0] = j / 255;\n transferFn(tmp, 0, tmp, 0);\n transferMap[j] = tmp[0] * 255 | 0;\n }\n transferMaps.push(transferMap);\n numEffectfulFns++;\n }\n if (!(numFns === 1 || numFns === 4)) {\n return null;\n }\n if (numEffectfulFns === 0) {\n return null;\n }\n return transferMaps;\n }\n handleTilingType(fn, color, resources, pattern, patternDict, operatorList, task, localTilingPatternCache) {\n const tilingOpList = new _operator_list.OperatorList();\n const patternResources = _primitives.Dict.merge({\n xref: this.xref,\n dictArray: [patternDict.get(\"Resources\"), resources]\n });\n return this.getOperatorList({\n stream: pattern,\n task,\n resources: patternResources,\n operatorList: tilingOpList\n }).then(function () {\n const operatorListIR = tilingOpList.getIR();\n const tilingPatternIR = (0, _pattern.getTilingPatternIR)(operatorListIR, patternDict, color);\n operatorList.addDependencies(tilingOpList.dependencies);\n operatorList.addOp(fn, tilingPatternIR);\n if (patternDict.objId) {\n localTilingPatternCache.set(null, patternDict.objId, {\n operatorListIR,\n dict: patternDict\n });\n }\n }).catch(reason => {\n if (reason instanceof _util.AbortException) {\n return;\n }\n if (this.options.ignoreErrors) {\n (0, _util.warn)(`handleTilingType - ignoring pattern: \"${reason}\".`);\n return;\n }\n throw reason;\n });\n }\n handleSetFont(resources, fontArgs, fontRef, operatorList, task, state, fallbackFontDict = null, cssFontInfo = null) {\n const fontName = fontArgs?.[0] instanceof _primitives.Name ? fontArgs[0].name : null;\n return this.loadFont(fontName, fontRef, resources, fallbackFontDict, cssFontInfo).then(translated => {\n if (!translated.font.isType3Font) {\n return translated;\n }\n return translated.loadType3Data(this, resources, task).then(function () {\n operatorList.addDependencies(translated.type3Dependencies);\n return translated;\n }).catch(reason => {\n return new TranslatedFont({\n loadedName: \"g_font_error\",\n font: new _fonts.ErrorFont(`Type3 font load error: ${reason}`),\n dict: translated.font,\n evaluatorOptions: this.options\n });\n });\n }).then(translated => {\n state.font = translated.font;\n translated.send(this.handler);\n return translated.loadedName;\n });\n }\n handleText(chars, state) {\n const font = state.font;\n const glyphs = font.charsToGlyphs(chars);\n if (font.data) {\n const isAddToPathSet = !!(state.textRenderingMode & _util.TextRenderingMode.ADD_TO_PATH_FLAG);\n if (isAddToPathSet || state.fillColorSpace.name === \"Pattern\" || font.disableFontFace || this.options.disableFontFace) {\n PartialEvaluator.buildFontPaths(font, glyphs, this.handler, this.options);\n }\n }\n return glyphs;\n }\n ensureStateFont(state) {\n if (state.font) {\n return;\n }\n const reason = new _util.FormatError(\"Missing setFont (Tf) operator before text rendering operator.\");\n if (this.options.ignoreErrors) {\n (0, _util.warn)(`ensureStateFont: \"${reason}\".`);\n return;\n }\n throw reason;\n }\n async setGState({\n resources,\n gState,\n operatorList,\n cacheKey,\n task,\n stateManager,\n localGStateCache,\n localColorSpaceCache\n }) {\n const gStateRef = gState.objId;\n let isSimpleGState = true;\n const gStateObj = [];\n let promise = Promise.resolve();\n for (const key of gState.getKeys()) {\n const value = gState.get(key);\n switch (key) {\n case \"Type\":\n break;\n case \"LW\":\n case \"LC\":\n case \"LJ\":\n case \"ML\":\n case \"D\":\n case \"RI\":\n case \"FL\":\n case \"CA\":\n case \"ca\":\n gStateObj.push([key, value]);\n break;\n case \"Font\":\n isSimpleGState = false;\n promise = promise.then(() => {\n return this.handleSetFont(resources, null, value[0], operatorList, task, stateManager.state).then(function (loadedName) {\n operatorList.addDependency(loadedName);\n gStateObj.push([key, [loadedName, value[1]]]);\n });\n });\n break;\n case \"BM\":\n gStateObj.push([key, normalizeBlendMode(value)]);\n break;\n case \"SMask\":\n if ((0, _primitives.isName)(value, \"None\")) {\n gStateObj.push([key, false]);\n break;\n }\n if (value instanceof _primitives.Dict) {\n isSimpleGState = false;\n promise = promise.then(() => {\n return this.handleSMask(value, resources, operatorList, task, stateManager, localColorSpaceCache);\n });\n gStateObj.push([key, true]);\n } else {\n (0, _util.warn)(\"Unsupported SMask type\");\n }\n break;\n case \"TR\":\n const transferMaps = this.handleTransferFunction(value);\n gStateObj.push([key, transferMaps]);\n break;\n case \"OP\":\n case \"op\":\n case \"OPM\":\n case \"BG\":\n case \"BG2\":\n case \"UCR\":\n case \"UCR2\":\n case \"TR2\":\n case \"HT\":\n case \"SM\":\n case \"SA\":\n case \"AIS\":\n case \"TK\":\n (0, _util.info)(\"graphic state operator \" + key);\n break;\n default:\n (0, _util.info)(\"Unknown graphic state operator \" + key);\n break;\n }\n }\n return promise.then(function () {\n if (gStateObj.length > 0) {\n operatorList.addOp(_util.OPS.setGState, [gStateObj]);\n }\n if (isSimpleGState) {\n localGStateCache.set(cacheKey, gStateRef, gStateObj);\n }\n });\n }\n loadFont(fontName, font, resources, fallbackFontDict = null, cssFontInfo = null) {\n const errorFont = async () => {\n return new TranslatedFont({\n loadedName: \"g_font_error\",\n font: new _fonts.ErrorFont(`Font \"${fontName}\" is not available.`),\n dict: font,\n evaluatorOptions: this.options\n });\n };\n let fontRef;\n if (font) {\n if (font instanceof _primitives.Ref) {\n fontRef = font;\n }\n } else {\n const fontRes = resources.get(\"Font\");\n if (fontRes) {\n fontRef = fontRes.getRaw(fontName);\n }\n }\n if (fontRef) {\n if (this.parsingType3Font && this.type3FontRefs.has(fontRef)) {\n return errorFont();\n }\n if (this.fontCache.has(fontRef)) {\n return this.fontCache.get(fontRef);\n }\n font = this.xref.fetchIfRef(fontRef);\n }\n if (!(font instanceof _primitives.Dict)) {\n if (!this.options.ignoreErrors && !this.parsingType3Font) {\n (0, _util.warn)(`Font \"${fontName}\" is not available.`);\n return errorFont();\n }\n (0, _util.warn)(`Font \"${fontName}\" is not available -- attempting to fallback to a default font.`);\n font = fallbackFontDict || PartialEvaluator.fallbackFontDict;\n }\n if (font.cacheKey && this.fontCache.has(font.cacheKey)) {\n return this.fontCache.get(font.cacheKey);\n }\n const fontCapability = new _util.PromiseCapability();\n let preEvaluatedFont;\n try {\n preEvaluatedFont = this.preEvaluateFont(font);\n preEvaluatedFont.cssFontInfo = cssFontInfo;\n } catch (reason) {\n (0, _util.warn)(`loadFont - preEvaluateFont failed: \"${reason}\".`);\n return errorFont();\n }\n const {\n descriptor,\n hash\n } = preEvaluatedFont;\n const fontRefIsRef = fontRef instanceof _primitives.Ref;\n let fontID;\n if (hash && descriptor instanceof _primitives.Dict) {\n const fontAliases = descriptor.fontAliases ||= Object.create(null);\n if (fontAliases[hash]) {\n const aliasFontRef = fontAliases[hash].aliasRef;\n if (fontRefIsRef && aliasFontRef && this.fontCache.has(aliasFontRef)) {\n this.fontCache.putAlias(fontRef, aliasFontRef);\n return this.fontCache.get(fontRef);\n }\n } else {\n fontAliases[hash] = {\n fontID: this.idFactory.createFontId()\n };\n }\n if (fontRefIsRef) {\n fontAliases[hash].aliasRef = fontRef;\n }\n fontID = fontAliases[hash].fontID;\n } else {\n fontID = this.idFactory.createFontId();\n }\n (0, _util.assert)(fontID?.startsWith(\"f\"), 'The \"fontID\" must be (correctly) defined.');\n if (fontRefIsRef) {\n this.fontCache.put(fontRef, fontCapability.promise);\n } else {\n font.cacheKey = `cacheKey_${fontID}`;\n this.fontCache.put(font.cacheKey, fontCapability.promise);\n }\n font.loadedName = `${this.idFactory.getDocId()}_${fontID}`;\n this.translateFont(preEvaluatedFont).then(translatedFont => {\n fontCapability.resolve(new TranslatedFont({\n loadedName: font.loadedName,\n font: translatedFont,\n dict: font,\n evaluatorOptions: this.options\n }));\n }).catch(reason => {\n (0, _util.warn)(`loadFont - translateFont failed: \"${reason}\".`);\n fontCapability.resolve(new TranslatedFont({\n loadedName: font.loadedName,\n font: new _fonts.ErrorFont(reason instanceof Error ? reason.message : reason),\n dict: font,\n evaluatorOptions: this.options\n }));\n });\n return fontCapability.promise;\n }\n buildPath(operatorList, fn, args, parsingText = false) {\n const lastIndex = operatorList.length - 1;\n if (!args) {\n args = [];\n }\n if (lastIndex < 0 || operatorList.fnArray[lastIndex] !== _util.OPS.constructPath) {\n if (parsingText) {\n (0, _util.warn)(`Encountered path operator \"${fn}\" inside of a text object.`);\n operatorList.addOp(_util.OPS.save, null);\n }\n let minMax;\n switch (fn) {\n case _util.OPS.rectangle:\n const x = args[0] + args[2];\n const y = args[1] + args[3];\n minMax = [Math.min(args[0], x), Math.max(args[0], x), Math.min(args[1], y), Math.max(args[1], y)];\n break;\n case _util.OPS.moveTo:\n case _util.OPS.lineTo:\n minMax = [args[0], args[0], args[1], args[1]];\n break;\n default:\n minMax = [Infinity, -Infinity, Infinity, -Infinity];\n break;\n }\n operatorList.addOp(_util.OPS.constructPath, [[fn], args, minMax]);\n if (parsingText) {\n operatorList.addOp(_util.OPS.restore, null);\n }\n } else {\n const opArgs = operatorList.argsArray[lastIndex];\n opArgs[0].push(fn);\n opArgs[1].push(...args);\n const minMax = opArgs[2];\n switch (fn) {\n case _util.OPS.rectangle:\n const x = args[0] + args[2];\n const y = args[1] + args[3];\n minMax[0] = Math.min(minMax[0], args[0], x);\n minMax[1] = Math.max(minMax[1], args[0], x);\n minMax[2] = Math.min(minMax[2], args[1], y);\n minMax[3] = Math.max(minMax[3], args[1], y);\n break;\n case _util.OPS.moveTo:\n case _util.OPS.lineTo:\n minMax[0] = Math.min(minMax[0], args[0]);\n minMax[1] = Math.max(minMax[1], args[0]);\n minMax[2] = Math.min(minMax[2], args[1]);\n minMax[3] = Math.max(minMax[3], args[1]);\n break;\n }\n }\n }\n parseColorSpace({\n cs,\n resources,\n localColorSpaceCache\n }) {\n return _colorspace.ColorSpace.parseAsync({\n cs,\n xref: this.xref,\n resources,\n pdfFunctionFactory: this._pdfFunctionFactory,\n localColorSpaceCache\n }).catch(reason => {\n if (reason instanceof _util.AbortException) {\n return null;\n }\n if (this.options.ignoreErrors) {\n (0, _util.warn)(`parseColorSpace - ignoring ColorSpace: \"${reason}\".`);\n return null;\n }\n throw reason;\n });\n }\n parseShading({\n shading,\n resources,\n localColorSpaceCache,\n localShadingPatternCache\n }) {\n let id = localShadingPatternCache.get(shading);\n if (!id) {\n var shadingFill = _pattern.Pattern.parseShading(shading, this.xref, resources, this._pdfFunctionFactory, localColorSpaceCache);\n const patternIR = shadingFill.getIR();\n id = `pattern_${this.idFactory.createObjId()}`;\n if (this.parsingType3Font) {\n id = `${this.idFactory.getDocId()}_type3_${id}`;\n }\n localShadingPatternCache.set(shading, id);\n if (this.parsingType3Font) {\n this.handler.send(\"commonobj\", [id, \"Pattern\", patternIR]);\n } else {\n this.handler.send(\"obj\", [id, this.pageIndex, \"Pattern\", patternIR]);\n }\n }\n return id;\n }\n handleColorN(operatorList, fn, args, cs, patterns, resources, task, localColorSpaceCache, localTilingPatternCache, localShadingPatternCache) {\n const patternName = args.pop();\n if (patternName instanceof _primitives.Name) {\n const rawPattern = patterns.getRaw(patternName.name);\n const localTilingPattern = rawPattern instanceof _primitives.Ref && localTilingPatternCache.getByRef(rawPattern);\n if (localTilingPattern) {\n try {\n const color = cs.base ? cs.base.getRgb(args, 0) : null;\n const tilingPatternIR = (0, _pattern.getTilingPatternIR)(localTilingPattern.operatorListIR, localTilingPattern.dict, color);\n operatorList.addOp(fn, tilingPatternIR);\n return undefined;\n } catch {}\n }\n const pattern = this.xref.fetchIfRef(rawPattern);\n if (pattern) {\n const dict = pattern instanceof _base_stream.BaseStream ? pattern.dict : pattern;\n const typeNum = dict.get(\"PatternType\");\n if (typeNum === PatternType.TILING) {\n const color = cs.base ? cs.base.getRgb(args, 0) : null;\n return this.handleTilingType(fn, color, resources, pattern, dict, operatorList, task, localTilingPatternCache);\n } else if (typeNum === PatternType.SHADING) {\n const shading = dict.get(\"Shading\");\n const matrix = dict.getArray(\"Matrix\");\n const objId = this.parseShading({\n shading,\n resources,\n localColorSpaceCache,\n localShadingPatternCache\n });\n operatorList.addOp(fn, [\"Shading\", objId, matrix]);\n return undefined;\n }\n throw new _util.FormatError(`Unknown PatternType: ${typeNum}`);\n }\n }\n throw new _util.FormatError(`Unknown PatternName: ${patternName}`);\n }\n _parseVisibilityExpression(array, nestingCounter, currentResult) {\n const MAX_NESTING = 10;\n if (++nestingCounter > MAX_NESTING) {\n (0, _util.warn)(\"Visibility expression is too deeply nested\");\n return;\n }\n const length = array.length;\n const operator = this.xref.fetchIfRef(array[0]);\n if (length < 2 || !(operator instanceof _primitives.Name)) {\n (0, _util.warn)(\"Invalid visibility expression\");\n return;\n }\n switch (operator.name) {\n case \"And\":\n case \"Or\":\n case \"Not\":\n currentResult.push(operator.name);\n break;\n default:\n (0, _util.warn)(`Invalid operator ${operator.name} in visibility expression`);\n return;\n }\n for (let i = 1; i < length; i++) {\n const raw = array[i];\n const object = this.xref.fetchIfRef(raw);\n if (Array.isArray(object)) {\n const nestedResult = [];\n currentResult.push(nestedResult);\n this._parseVisibilityExpression(object, nestingCounter, nestedResult);\n } else if (raw instanceof _primitives.Ref) {\n currentResult.push(raw.toString());\n }\n }\n }\n async parseMarkedContentProps(contentProperties, resources) {\n let optionalContent;\n if (contentProperties instanceof _primitives.Name) {\n const properties = resources.get(\"Properties\");\n optionalContent = properties.get(contentProperties.name);\n } else if (contentProperties instanceof _primitives.Dict) {\n optionalContent = contentProperties;\n } else {\n throw new _util.FormatError(\"Optional content properties malformed.\");\n }\n const optionalContentType = optionalContent.get(\"Type\")?.name;\n if (optionalContentType === \"OCG\") {\n return {\n type: optionalContentType,\n id: optionalContent.objId\n };\n } else if (optionalContentType === \"OCMD\") {\n const expression = optionalContent.get(\"VE\");\n if (Array.isArray(expression)) {\n const result = [];\n this._parseVisibilityExpression(expression, 0, result);\n if (result.length > 0) {\n return {\n type: \"OCMD\",\n expression: result\n };\n }\n }\n const optionalContentGroups = optionalContent.get(\"OCGs\");\n if (Array.isArray(optionalContentGroups) || optionalContentGroups instanceof _primitives.Dict) {\n const groupIds = [];\n if (Array.isArray(optionalContentGroups)) {\n for (const ocg of optionalContentGroups) {\n groupIds.push(ocg.toString());\n }\n } else {\n groupIds.push(optionalContentGroups.objId);\n }\n return {\n type: optionalContentType,\n ids: groupIds,\n policy: optionalContent.get(\"P\") instanceof _primitives.Name ? optionalContent.get(\"P\").name : null,\n expression: null\n };\n } else if (optionalContentGroups instanceof _primitives.Ref) {\n return {\n type: optionalContentType,\n id: optionalContentGroups.toString()\n };\n }\n }\n return null;\n }\n getOperatorList({\n stream,\n task,\n resources,\n operatorList,\n initialState = null,\n fallbackFontDict = null\n }) {\n resources ||= _primitives.Dict.empty;\n initialState ||= new EvalState();\n if (!operatorList) {\n throw new Error('getOperatorList: missing \"operatorList\" parameter');\n }\n const self = this;\n const xref = this.xref;\n let parsingText = false;\n const localImageCache = new _image_utils.LocalImageCache();\n const localColorSpaceCache = new _image_utils.LocalColorSpaceCache();\n const localGStateCache = new _image_utils.LocalGStateCache();\n const localTilingPatternCache = new _image_utils.LocalTilingPatternCache();\n const localShadingPatternCache = new Map();\n const xobjs = resources.get(\"XObject\") || _primitives.Dict.empty;\n const patterns = resources.get(\"Pattern\") || _primitives.Dict.empty;\n const stateManager = new StateManager(initialState);\n const preprocessor = new EvaluatorPreprocessor(stream, xref, stateManager);\n const timeSlotManager = new TimeSlotManager();\n function closePendingRestoreOPS(argument) {\n for (let i = 0, ii = preprocessor.savedStatesDepth; i < ii; i++) {\n operatorList.addOp(_util.OPS.restore, []);\n }\n }\n return new Promise(function promiseBody(resolve, reject) {\n const next = function (promise) {\n Promise.all([promise, operatorList.ready]).then(function () {\n try {\n promiseBody(resolve, reject);\n } catch (ex) {\n reject(ex);\n }\n }, reject);\n };\n task.ensureNotTerminated();\n timeSlotManager.reset();\n const operation = {};\n let stop, i, ii, cs, name, isValidName;\n while (!(stop = timeSlotManager.check())) {\n operation.args = null;\n if (!preprocessor.read(operation)) {\n break;\n }\n let args = operation.args;\n let fn = operation.fn;\n switch (fn | 0) {\n case _util.OPS.paintXObject:\n isValidName = args[0] instanceof _primitives.Name;\n name = args[0].name;\n if (isValidName) {\n const localImage = localImageCache.getByName(name);\n if (localImage) {\n operatorList.addImageOps(localImage.fn, localImage.args, localImage.optionalContent);\n incrementCachedImageMaskCount(localImage);\n args = null;\n continue;\n }\n }\n next(new Promise(function (resolveXObject, rejectXObject) {\n if (!isValidName) {\n throw new _util.FormatError(\"XObject must be referred to by name.\");\n }\n let xobj = xobjs.getRaw(name);\n if (xobj instanceof _primitives.Ref) {\n const localImage = localImageCache.getByRef(xobj) || self._regionalImageCache.getByRef(xobj);\n if (localImage) {\n operatorList.addImageOps(localImage.fn, localImage.args, localImage.optionalContent);\n incrementCachedImageMaskCount(localImage);\n resolveXObject();\n return;\n }\n const globalImage = self.globalImageCache.getData(xobj, self.pageIndex);\n if (globalImage) {\n operatorList.addDependency(globalImage.objId);\n operatorList.addImageOps(globalImage.fn, globalImage.args, globalImage.optionalContent);\n resolveXObject();\n return;\n }\n xobj = xref.fetch(xobj);\n }\n if (!(xobj instanceof _base_stream.BaseStream)) {\n throw new _util.FormatError(\"XObject should be a stream\");\n }\n const type = xobj.dict.get(\"Subtype\");\n if (!(type instanceof _primitives.Name)) {\n throw new _util.FormatError(\"XObject should have a Name subtype\");\n }\n if (type.name === \"Form\") {\n stateManager.save();\n self.buildFormXObject(resources, xobj, null, operatorList, task, stateManager.state.clone(), localColorSpaceCache).then(function () {\n stateManager.restore();\n resolveXObject();\n }, rejectXObject);\n return;\n } else if (type.name === \"Image\") {\n self.buildPaintImageXObject({\n resources,\n image: xobj,\n operatorList,\n cacheKey: name,\n localImageCache,\n localColorSpaceCache\n }).then(resolveXObject, rejectXObject);\n return;\n } else if (type.name === \"PS\") {\n (0, _util.info)(\"Ignored XObject subtype PS\");\n } else {\n throw new _util.FormatError(`Unhandled XObject subtype ${type.name}`);\n }\n resolveXObject();\n }).catch(function (reason) {\n if (reason instanceof _util.AbortException) {\n return;\n }\n if (self.options.ignoreErrors) {\n (0, _util.warn)(`getOperatorList - ignoring XObject: \"${reason}\".`);\n return;\n }\n throw reason;\n }));\n return;\n case _util.OPS.setFont:\n var fontSize = args[1];\n next(self.handleSetFont(resources, args, null, operatorList, task, stateManager.state, fallbackFontDict).then(function (loadedName) {\n operatorList.addDependency(loadedName);\n operatorList.addOp(_util.OPS.setFont, [loadedName, fontSize]);\n }));\n return;\n case _util.OPS.beginText:\n parsingText = true;\n break;\n case _util.OPS.endText:\n parsingText = false;\n break;\n case _util.OPS.endInlineImage:\n var cacheKey = args[0].cacheKey;\n if (cacheKey) {\n const localImage = localImageCache.getByName(cacheKey);\n if (localImage) {\n operatorList.addImageOps(localImage.fn, localImage.args, localImage.optionalContent);\n incrementCachedImageMaskCount(localImage);\n args = null;\n continue;\n }\n }\n next(self.buildPaintImageXObject({\n resources,\n image: args[0],\n isInline: true,\n operatorList,\n cacheKey,\n localImageCache,\n localColorSpaceCache\n }));\n return;\n case _util.OPS.showText:\n if (!stateManager.state.font) {\n self.ensureStateFont(stateManager.state);\n continue;\n }\n args[0] = self.handleText(args[0], stateManager.state);\n break;\n case _util.OPS.showSpacedText:\n if (!stateManager.state.font) {\n self.ensureStateFont(stateManager.state);\n continue;\n }\n var combinedGlyphs = [];\n var state = stateManager.state;\n for (const arrItem of args[0]) {\n if (typeof arrItem === \"string\") {\n combinedGlyphs.push(...self.handleText(arrItem, state));\n } else if (typeof arrItem === \"number\") {\n combinedGlyphs.push(arrItem);\n }\n }\n args[0] = combinedGlyphs;\n fn = _util.OPS.showText;\n break;\n case _util.OPS.nextLineShowText:\n if (!stateManager.state.font) {\n self.ensureStateFont(stateManager.state);\n continue;\n }\n operatorList.addOp(_util.OPS.nextLine);\n args[0] = self.handleText(args[0], stateManager.state);\n fn = _util.OPS.showText;\n break;\n case _util.OPS.nextLineSetSpacingShowText:\n if (!stateManager.state.font) {\n self.ensureStateFont(stateManager.state);\n continue;\n }\n operatorList.addOp(_util.OPS.nextLine);\n operatorList.addOp(_util.OPS.setWordSpacing, [args.shift()]);\n operatorList.addOp(_util.OPS.setCharSpacing, [args.shift()]);\n args[0] = self.handleText(args[0], stateManager.state);\n fn = _util.OPS.showText;\n break;\n case _util.OPS.setTextRenderingMode:\n stateManager.state.textRenderingMode = args[0];\n break;\n case _util.OPS.setFillColorSpace:\n {\n const cachedColorSpace = _colorspace.ColorSpace.getCached(args[0], xref, localColorSpaceCache);\n if (cachedColorSpace) {\n stateManager.state.fillColorSpace = cachedColorSpace;\n continue;\n }\n next(self.parseColorSpace({\n cs: args[0],\n resources,\n localColorSpaceCache\n }).then(function (colorSpace) {\n if (colorSpace) {\n stateManager.state.fillColorSpace = colorSpace;\n }\n }));\n return;\n }\n case _util.OPS.setStrokeColorSpace:\n {\n const cachedColorSpace = _colorspace.ColorSpace.getCached(args[0], xref, localColorSpaceCache);\n if (cachedColorSpace) {\n stateManager.state.strokeColorSpace = cachedColorSpace;\n continue;\n }\n next(self.parseColorSpace({\n cs: args[0],\n resources,\n localColorSpaceCache\n }).then(function (colorSpace) {\n if (colorSpace) {\n stateManager.state.strokeColorSpace = colorSpace;\n }\n }));\n return;\n }\n case _util.OPS.setFillColor:\n cs = stateManager.state.fillColorSpace;\n args = cs.getRgb(args, 0);\n fn = _util.OPS.setFillRGBColor;\n break;\n case _util.OPS.setStrokeColor:\n cs = stateManager.state.strokeColorSpace;\n args = cs.getRgb(args, 0);\n fn = _util.OPS.setStrokeRGBColor;\n break;\n case _util.OPS.setFillGray:\n stateManager.state.fillColorSpace = _colorspace.ColorSpace.singletons.gray;\n args = _colorspace.ColorSpace.singletons.gray.getRgb(args, 0);\n fn = _util.OPS.setFillRGBColor;\n break;\n case _util.OPS.setStrokeGray:\n stateManager.state.strokeColorSpace = _colorspace.ColorSpace.singletons.gray;\n args = _colorspace.ColorSpace.singletons.gray.getRgb(args, 0);\n fn = _util.OPS.setStrokeRGBColor;\n break;\n case _util.OPS.setFillCMYKColor:\n stateManager.state.fillColorSpace = _colorspace.ColorSpace.singletons.cmyk;\n args = _colorspace.ColorSpace.singletons.cmyk.getRgb(args, 0);\n fn = _util.OPS.setFillRGBColor;\n break;\n case _util.OPS.setStrokeCMYKColor:\n stateManager.state.strokeColorSpace = _colorspace.ColorSpace.singletons.cmyk;\n args = _colorspace.ColorSpace.singletons.cmyk.getRgb(args, 0);\n fn = _util.OPS.setStrokeRGBColor;\n break;\n case _util.OPS.setFillRGBColor:\n stateManager.state.fillColorSpace = _colorspace.ColorSpace.singletons.rgb;\n args = _colorspace.ColorSpace.singletons.rgb.getRgb(args, 0);\n break;\n case _util.OPS.setStrokeRGBColor:\n stateManager.state.strokeColorSpace = _colorspace.ColorSpace.singletons.rgb;\n args = _colorspace.ColorSpace.singletons.rgb.getRgb(args, 0);\n break;\n case _util.OPS.setFillColorN:\n cs = stateManager.state.fillColorSpace;\n if (cs.name === \"Pattern\") {\n next(self.handleColorN(operatorList, _util.OPS.setFillColorN, args, cs, patterns, resources, task, localColorSpaceCache, localTilingPatternCache, localShadingPatternCache));\n return;\n }\n args = cs.getRgb(args, 0);\n fn = _util.OPS.setFillRGBColor;\n break;\n case _util.OPS.setStrokeColorN:\n cs = stateManager.state.strokeColorSpace;\n if (cs.name === \"Pattern\") {\n next(self.handleColorN(operatorList, _util.OPS.setStrokeColorN, args, cs, patterns, resources, task, localColorSpaceCache, localTilingPatternCache, localShadingPatternCache));\n return;\n }\n args = cs.getRgb(args, 0);\n fn = _util.OPS.setStrokeRGBColor;\n break;\n case _util.OPS.shadingFill:\n var shadingRes = resources.get(\"Shading\");\n if (!shadingRes) {\n throw new _util.FormatError(\"No shading resource found\");\n }\n var shading = shadingRes.get(args[0].name);\n if (!shading) {\n throw new _util.FormatError(\"No shading object found\");\n }\n const patternId = self.parseShading({\n shading,\n resources,\n localColorSpaceCache,\n localShadingPatternCache\n });\n args = [patternId];\n fn = _util.OPS.shadingFill;\n break;\n case _util.OPS.setGState:\n isValidName = args[0] instanceof _primitives.Name;\n name = args[0].name;\n if (isValidName) {\n const localGStateObj = localGStateCache.getByName(name);\n if (localGStateObj) {\n if (localGStateObj.length > 0) {\n operatorList.addOp(_util.OPS.setGState, [localGStateObj]);\n }\n args = null;\n continue;\n }\n }\n next(new Promise(function (resolveGState, rejectGState) {\n if (!isValidName) {\n throw new _util.FormatError(\"GState must be referred to by name.\");\n }\n const extGState = resources.get(\"ExtGState\");\n if (!(extGState instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"ExtGState should be a dictionary.\");\n }\n const gState = extGState.get(name);\n if (!(gState instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"GState should be a dictionary.\");\n }\n self.setGState({\n resources,\n gState,\n operatorList,\n cacheKey: name,\n task,\n stateManager,\n localGStateCache,\n localColorSpaceCache\n }).then(resolveGState, rejectGState);\n }).catch(function (reason) {\n if (reason instanceof _util.AbortException) {\n return;\n }\n if (self.options.ignoreErrors) {\n (0, _util.warn)(`getOperatorList - ignoring ExtGState: \"${reason}\".`);\n return;\n }\n throw reason;\n }));\n return;\n case _util.OPS.moveTo:\n case _util.OPS.lineTo:\n case _util.OPS.curveTo:\n case _util.OPS.curveTo2:\n case _util.OPS.curveTo3:\n case _util.OPS.closePath:\n case _util.OPS.rectangle:\n self.buildPath(operatorList, fn, args, parsingText);\n continue;\n case _util.OPS.markPoint:\n case _util.OPS.markPointProps:\n case _util.OPS.beginCompat:\n case _util.OPS.endCompat:\n continue;\n case _util.OPS.beginMarkedContentProps:\n if (!(args[0] instanceof _primitives.Name)) {\n (0, _util.warn)(`Expected name for beginMarkedContentProps arg0=${args[0]}`);\n continue;\n }\n if (args[0].name === \"OC\") {\n next(self.parseMarkedContentProps(args[1], resources).then(data => {\n operatorList.addOp(_util.OPS.beginMarkedContentProps, [\"OC\", data]);\n }).catch(reason => {\n if (reason instanceof _util.AbortException) {\n return;\n }\n if (self.options.ignoreErrors) {\n (0, _util.warn)(`getOperatorList - ignoring beginMarkedContentProps: \"${reason}\".`);\n return;\n }\n throw reason;\n }));\n return;\n }\n args = [args[0].name, args[1] instanceof _primitives.Dict ? args[1].get(\"MCID\") : null];\n break;\n case _util.OPS.beginMarkedContent:\n case _util.OPS.endMarkedContent:\n default:\n if (args !== null) {\n for (i = 0, ii = args.length; i < ii; i++) {\n if (args[i] instanceof _primitives.Dict) {\n break;\n }\n }\n if (i < ii) {\n (0, _util.warn)(\"getOperatorList - ignoring operator: \" + fn);\n continue;\n }\n }\n }\n operatorList.addOp(fn, args);\n }\n if (stop) {\n next(deferred);\n return;\n }\n closePendingRestoreOPS();\n resolve();\n }).catch(reason => {\n if (reason instanceof _util.AbortException) {\n return;\n }\n if (this.options.ignoreErrors) {\n (0, _util.warn)(`getOperatorList - ignoring errors during \"${task.name}\" ` + `task: \"${reason}\".`);\n closePendingRestoreOPS();\n return;\n }\n throw reason;\n });\n }\n getTextContent({\n stream,\n task,\n resources,\n stateManager = null,\n includeMarkedContent = false,\n sink,\n seenStyles = new Set(),\n viewBox,\n markedContentData = null,\n disableNormalization = false\n }) {\n resources ||= _primitives.Dict.empty;\n stateManager ||= new StateManager(new TextState());\n if (includeMarkedContent) {\n markedContentData ||= {\n level: 0\n };\n }\n const textContent = {\n items: [],\n styles: Object.create(null)\n };\n const textContentItem = {\n initialized: false,\n str: [],\n totalWidth: 0,\n totalHeight: 0,\n width: 0,\n height: 0,\n vertical: false,\n prevTransform: null,\n textAdvanceScale: 0,\n spaceInFlowMin: 0,\n spaceInFlowMax: 0,\n trackingSpaceMin: Infinity,\n negativeSpaceMax: -Infinity,\n notASpace: -Infinity,\n transform: null,\n fontName: null,\n hasEOL: false\n };\n const twoLastChars = [\" \", \" \"];\n let twoLastCharsPos = 0;\n function saveLastChar(char) {\n const nextPos = (twoLastCharsPos + 1) % 2;\n const ret = twoLastChars[twoLastCharsPos] !== \" \" && twoLastChars[nextPos] === \" \";\n twoLastChars[twoLastCharsPos] = char;\n twoLastCharsPos = nextPos;\n return ret;\n }\n function shouldAddWhitepsace() {\n return twoLastChars[twoLastCharsPos] !== \" \" && twoLastChars[(twoLastCharsPos + 1) % 2] === \" \";\n }\n function resetLastChars() {\n twoLastChars[0] = twoLastChars[1] = \" \";\n twoLastCharsPos = 0;\n }\n const TRACKING_SPACE_FACTOR = 0.102;\n const NOT_A_SPACE_FACTOR = 0.03;\n const NEGATIVE_SPACE_FACTOR = -0.2;\n const SPACE_IN_FLOW_MIN_FACTOR = 0.102;\n const SPACE_IN_FLOW_MAX_FACTOR = 0.6;\n const VERTICAL_SHIFT_RATIO = 0.25;\n const self = this;\n const xref = this.xref;\n const showSpacedTextBuffer = [];\n let xobjs = null;\n const emptyXObjectCache = new _image_utils.LocalImageCache();\n const emptyGStateCache = new _image_utils.LocalGStateCache();\n const preprocessor = new EvaluatorPreprocessor(stream, xref, stateManager);\n let textState;\n function pushWhitespace({\n width = 0,\n height = 0,\n transform = textContentItem.prevTransform,\n fontName = textContentItem.fontName\n }) {\n textContent.items.push({\n str: \" \",\n dir: \"ltr\",\n width,\n height,\n transform,\n fontName,\n hasEOL: false\n });\n }\n function getCurrentTextTransform() {\n const font = textState.font;\n const tsm = [textState.fontSize * textState.textHScale, 0, 0, textState.fontSize, 0, textState.textRise];\n if (font.isType3Font && (textState.fontSize <= 1 || font.isCharBBox) && !(0, _util.isArrayEqual)(textState.fontMatrix, _util.FONT_IDENTITY_MATRIX)) {\n const glyphHeight = font.bbox[3] - font.bbox[1];\n if (glyphHeight > 0) {\n tsm[3] *= glyphHeight * textState.fontMatrix[3];\n }\n }\n return _util.Util.transform(textState.ctm, _util.Util.transform(textState.textMatrix, tsm));\n }\n function ensureTextContentItem() {\n if (textContentItem.initialized) {\n return textContentItem;\n }\n const {\n font,\n loadedName\n } = textState;\n if (!seenStyles.has(loadedName)) {\n seenStyles.add(loadedName);\n textContent.styles[loadedName] = {\n fontFamily: font.fallbackName,\n ascent: font.ascent,\n descent: font.descent,\n vertical: font.vertical\n };\n }\n textContentItem.fontName = loadedName;\n const trm = textContentItem.transform = getCurrentTextTransform();\n if (!font.vertical) {\n textContentItem.width = textContentItem.totalWidth = 0;\n textContentItem.height = textContentItem.totalHeight = Math.hypot(trm[2], trm[3]);\n textContentItem.vertical = false;\n } else {\n textContentItem.width = textContentItem.totalWidth = Math.hypot(trm[0], trm[1]);\n textContentItem.height = textContentItem.totalHeight = 0;\n textContentItem.vertical = true;\n }\n const scaleLineX = Math.hypot(textState.textLineMatrix[0], textState.textLineMatrix[1]);\n const scaleCtmX = Math.hypot(textState.ctm[0], textState.ctm[1]);\n textContentItem.textAdvanceScale = scaleCtmX * scaleLineX;\n const {\n fontSize\n } = textState;\n textContentItem.trackingSpaceMin = fontSize * TRACKING_SPACE_FACTOR;\n textContentItem.notASpace = fontSize * NOT_A_SPACE_FACTOR;\n textContentItem.negativeSpaceMax = fontSize * NEGATIVE_SPACE_FACTOR;\n textContentItem.spaceInFlowMin = fontSize * SPACE_IN_FLOW_MIN_FACTOR;\n textContentItem.spaceInFlowMax = fontSize * SPACE_IN_FLOW_MAX_FACTOR;\n textContentItem.hasEOL = false;\n textContentItem.initialized = true;\n return textContentItem;\n }\n function updateAdvanceScale() {\n if (!textContentItem.initialized) {\n return;\n }\n const scaleLineX = Math.hypot(textState.textLineMatrix[0], textState.textLineMatrix[1]);\n const scaleCtmX = Math.hypot(textState.ctm[0], textState.ctm[1]);\n const scaleFactor = scaleCtmX * scaleLineX;\n if (scaleFactor === textContentItem.textAdvanceScale) {\n return;\n }\n if (!textContentItem.vertical) {\n textContentItem.totalWidth += textContentItem.width * textContentItem.textAdvanceScale;\n textContentItem.width = 0;\n } else {\n textContentItem.totalHeight += textContentItem.height * textContentItem.textAdvanceScale;\n textContentItem.height = 0;\n }\n textContentItem.textAdvanceScale = scaleFactor;\n }\n function runBidiTransform(textChunk) {\n let text = textChunk.str.join(\"\");\n if (!disableNormalization) {\n text = (0, _util.normalizeUnicode)(text);\n }\n const bidiResult = (0, _bidi.bidi)(text, -1, textChunk.vertical);\n return {\n str: bidiResult.str,\n dir: bidiResult.dir,\n width: Math.abs(textChunk.totalWidth),\n height: Math.abs(textChunk.totalHeight),\n transform: textChunk.transform,\n fontName: textChunk.fontName,\n hasEOL: textChunk.hasEOL\n };\n }\n function handleSetFont(fontName, fontRef) {\n return self.loadFont(fontName, fontRef, resources).then(function (translated) {\n if (!translated.font.isType3Font) {\n return translated;\n }\n return translated.loadType3Data(self, resources, task).catch(function () {}).then(function () {\n return translated;\n });\n }).then(function (translated) {\n textState.loadedName = translated.loadedName;\n textState.font = translated.font;\n textState.fontMatrix = translated.font.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n });\n }\n function applyInverseRotation(x, y, matrix) {\n const scale = Math.hypot(matrix[0], matrix[1]);\n return [(matrix[0] * x + matrix[1] * y) / scale, (matrix[2] * x + matrix[3] * y) / scale];\n }\n function compareWithLastPosition(glyphWidth) {\n const currentTransform = getCurrentTextTransform();\n let posX = currentTransform[4];\n let posY = currentTransform[5];\n if (textState.font?.vertical) {\n if (posX < viewBox[0] || posX > viewBox[2] || posY + glyphWidth < viewBox[1] || posY > viewBox[3]) {\n return false;\n }\n } else if (posX + glyphWidth < viewBox[0] || posX > viewBox[2] || posY < viewBox[1] || posY > viewBox[3]) {\n return false;\n }\n if (!textState.font || !textContentItem.prevTransform) {\n return true;\n }\n let lastPosX = textContentItem.prevTransform[4];\n let lastPosY = textContentItem.prevTransform[5];\n if (lastPosX === posX && lastPosY === posY) {\n return true;\n }\n let rotate = -1;\n if (currentTransform[0] && currentTransform[1] === 0 && currentTransform[2] === 0) {\n rotate = currentTransform[0] > 0 ? 0 : 180;\n } else if (currentTransform[1] && currentTransform[0] === 0 && currentTransform[3] === 0) {\n rotate = currentTransform[1] > 0 ? 90 : 270;\n }\n switch (rotate) {\n case 0:\n break;\n case 90:\n [posX, posY] = [posY, posX];\n [lastPosX, lastPosY] = [lastPosY, lastPosX];\n break;\n case 180:\n [posX, posY, lastPosX, lastPosY] = [-posX, -posY, -lastPosX, -lastPosY];\n break;\n case 270:\n [posX, posY] = [-posY, -posX];\n [lastPosX, lastPosY] = [-lastPosY, -lastPosX];\n break;\n default:\n [posX, posY] = applyInverseRotation(posX, posY, currentTransform);\n [lastPosX, lastPosY] = applyInverseRotation(lastPosX, lastPosY, textContentItem.prevTransform);\n }\n if (textState.font.vertical) {\n const advanceY = (lastPosY - posY) / textContentItem.textAdvanceScale;\n const advanceX = posX - lastPosX;\n const textOrientation = Math.sign(textContentItem.height);\n if (advanceY < textOrientation * textContentItem.negativeSpaceMax) {\n if (Math.abs(advanceX) > 0.5 * textContentItem.width) {\n appendEOL();\n return true;\n }\n resetLastChars();\n flushTextContentItem();\n return true;\n }\n if (Math.abs(advanceX) > textContentItem.width) {\n appendEOL();\n return true;\n }\n if (advanceY <= textOrientation * textContentItem.notASpace) {\n resetLastChars();\n }\n if (advanceY <= textOrientation * textContentItem.trackingSpaceMin) {\n if (shouldAddWhitepsace()) {\n resetLastChars();\n flushTextContentItem();\n pushWhitespace({\n height: Math.abs(advanceY)\n });\n } else {\n textContentItem.height += advanceY;\n }\n } else if (!addFakeSpaces(advanceY, textContentItem.prevTransform, textOrientation)) {\n if (textContentItem.str.length === 0) {\n resetLastChars();\n pushWhitespace({\n height: Math.abs(advanceY)\n });\n } else {\n textContentItem.height += advanceY;\n }\n }\n if (Math.abs(advanceX) > textContentItem.width * VERTICAL_SHIFT_RATIO) {\n flushTextContentItem();\n }\n return true;\n }\n const advanceX = (posX - lastPosX) / textContentItem.textAdvanceScale;\n const advanceY = posY - lastPosY;\n const textOrientation = Math.sign(textContentItem.width);\n if (advanceX < textOrientation * textContentItem.negativeSpaceMax) {\n if (Math.abs(advanceY) > 0.5 * textContentItem.height) {\n appendEOL();\n return true;\n }\n resetLastChars();\n flushTextContentItem();\n return true;\n }\n if (Math.abs(advanceY) > textContentItem.height) {\n appendEOL();\n return true;\n }\n if (advanceX <= textOrientation * textContentItem.notASpace) {\n resetLastChars();\n }\n if (advanceX <= textOrientation * textContentItem.trackingSpaceMin) {\n if (shouldAddWhitepsace()) {\n resetLastChars();\n flushTextContentItem();\n pushWhitespace({\n width: Math.abs(advanceX)\n });\n } else {\n textContentItem.width += advanceX;\n }\n } else if (!addFakeSpaces(advanceX, textContentItem.prevTransform, textOrientation)) {\n if (textContentItem.str.length === 0) {\n resetLastChars();\n pushWhitespace({\n width: Math.abs(advanceX)\n });\n } else {\n textContentItem.width += advanceX;\n }\n }\n if (Math.abs(advanceY) > textContentItem.height * VERTICAL_SHIFT_RATIO) {\n flushTextContentItem();\n }\n return true;\n }\n function buildTextContentItem({\n chars,\n extraSpacing\n }) {\n const font = textState.font;\n if (!chars) {\n const charSpacing = textState.charSpacing + extraSpacing;\n if (charSpacing) {\n if (!font.vertical) {\n textState.translateTextMatrix(charSpacing * textState.textHScale, 0);\n } else {\n textState.translateTextMatrix(0, -charSpacing);\n }\n }\n return;\n }\n const glyphs = font.charsToGlyphs(chars);\n const scale = textState.fontMatrix[0] * textState.fontSize;\n for (let i = 0, ii = glyphs.length; i < ii; i++) {\n const glyph = glyphs[i];\n const {\n category\n } = glyph;\n if (category.isInvisibleFormatMark) {\n continue;\n }\n let charSpacing = textState.charSpacing + (i + 1 === ii ? extraSpacing : 0);\n let glyphWidth = glyph.width;\n if (font.vertical) {\n glyphWidth = glyph.vmetric ? glyph.vmetric[0] : -glyphWidth;\n }\n let scaledDim = glyphWidth * scale;\n if (category.isWhitespace) {\n if (!font.vertical) {\n charSpacing += scaledDim + textState.wordSpacing;\n textState.translateTextMatrix(charSpacing * textState.textHScale, 0);\n } else {\n charSpacing += -scaledDim + textState.wordSpacing;\n textState.translateTextMatrix(0, -charSpacing);\n }\n saveLastChar(\" \");\n continue;\n }\n if (!category.isZeroWidthDiacritic && !compareWithLastPosition(scaledDim)) {\n if (!font.vertical) {\n textState.translateTextMatrix(scaledDim * textState.textHScale, 0);\n } else {\n textState.translateTextMatrix(0, scaledDim);\n }\n continue;\n }\n const textChunk = ensureTextContentItem();\n if (category.isZeroWidthDiacritic) {\n scaledDim = 0;\n }\n if (!font.vertical) {\n scaledDim *= textState.textHScale;\n textState.translateTextMatrix(scaledDim, 0);\n textChunk.width += scaledDim;\n } else {\n textState.translateTextMatrix(0, scaledDim);\n scaledDim = Math.abs(scaledDim);\n textChunk.height += scaledDim;\n }\n if (scaledDim) {\n textChunk.prevTransform = getCurrentTextTransform();\n }\n const glyphUnicode = glyph.unicode;\n if (saveLastChar(glyphUnicode)) {\n textChunk.str.push(\" \");\n }\n textChunk.str.push(glyphUnicode);\n if (charSpacing) {\n if (!font.vertical) {\n textState.translateTextMatrix(charSpacing * textState.textHScale, 0);\n } else {\n textState.translateTextMatrix(0, -charSpacing);\n }\n }\n }\n }\n function appendEOL() {\n resetLastChars();\n if (textContentItem.initialized) {\n textContentItem.hasEOL = true;\n flushTextContentItem();\n } else {\n textContent.items.push({\n str: \"\",\n dir: \"ltr\",\n width: 0,\n height: 0,\n transform: getCurrentTextTransform(),\n fontName: textState.loadedName,\n hasEOL: true\n });\n }\n }\n function addFakeSpaces(width, transf, textOrientation) {\n if (textOrientation * textContentItem.spaceInFlowMin <= width && width <= textOrientation * textContentItem.spaceInFlowMax) {\n if (textContentItem.initialized) {\n resetLastChars();\n textContentItem.str.push(\" \");\n }\n return false;\n }\n const fontName = textContentItem.fontName;\n let height = 0;\n if (textContentItem.vertical) {\n height = width;\n width = 0;\n }\n flushTextContentItem();\n resetLastChars();\n pushWhitespace({\n width: Math.abs(width),\n height: Math.abs(height),\n transform: transf || getCurrentTextTransform(),\n fontName\n });\n return true;\n }\n function flushTextContentItem() {\n if (!textContentItem.initialized || !textContentItem.str) {\n return;\n }\n if (!textContentItem.vertical) {\n textContentItem.totalWidth += textContentItem.width * textContentItem.textAdvanceScale;\n } else {\n textContentItem.totalHeight += textContentItem.height * textContentItem.textAdvanceScale;\n }\n textContent.items.push(runBidiTransform(textContentItem));\n textContentItem.initialized = false;\n textContentItem.str.length = 0;\n }\n function enqueueChunk(batch = false) {\n const length = textContent.items.length;\n if (length === 0) {\n return;\n }\n if (batch && length < TEXT_CHUNK_BATCH_SIZE) {\n return;\n }\n sink.enqueue(textContent, length);\n textContent.items = [];\n textContent.styles = Object.create(null);\n }\n const timeSlotManager = new TimeSlotManager();\n return new Promise(function promiseBody(resolve, reject) {\n const next = function (promise) {\n enqueueChunk(true);\n Promise.all([promise, sink.ready]).then(function () {\n try {\n promiseBody(resolve, reject);\n } catch (ex) {\n reject(ex);\n }\n }, reject);\n };\n task.ensureNotTerminated();\n timeSlotManager.reset();\n const operation = {};\n let stop,\n args = [];\n while (!(stop = timeSlotManager.check())) {\n args.length = 0;\n operation.args = args;\n if (!preprocessor.read(operation)) {\n break;\n }\n const previousState = textState;\n textState = stateManager.state;\n const fn = operation.fn;\n args = operation.args;\n switch (fn | 0) {\n case _util.OPS.setFont:\n var fontNameArg = args[0].name,\n fontSizeArg = args[1];\n if (textState.font && fontNameArg === textState.fontName && fontSizeArg === textState.fontSize) {\n break;\n }\n flushTextContentItem();\n textState.fontName = fontNameArg;\n textState.fontSize = fontSizeArg;\n next(handleSetFont(fontNameArg, null));\n return;\n case _util.OPS.setTextRise:\n textState.textRise = args[0];\n break;\n case _util.OPS.setHScale:\n textState.textHScale = args[0] / 100;\n break;\n case _util.OPS.setLeading:\n textState.leading = args[0];\n break;\n case _util.OPS.moveText:\n textState.translateTextLineMatrix(args[0], args[1]);\n textState.textMatrix = textState.textLineMatrix.slice();\n break;\n case _util.OPS.setLeadingMoveText:\n textState.leading = -args[1];\n textState.translateTextLineMatrix(args[0], args[1]);\n textState.textMatrix = textState.textLineMatrix.slice();\n break;\n case _util.OPS.nextLine:\n textState.carriageReturn();\n break;\n case _util.OPS.setTextMatrix:\n textState.setTextMatrix(args[0], args[1], args[2], args[3], args[4], args[5]);\n textState.setTextLineMatrix(args[0], args[1], args[2], args[3], args[4], args[5]);\n updateAdvanceScale();\n break;\n case _util.OPS.setCharSpacing:\n textState.charSpacing = args[0];\n break;\n case _util.OPS.setWordSpacing:\n textState.wordSpacing = args[0];\n break;\n case _util.OPS.beginText:\n textState.textMatrix = _util.IDENTITY_MATRIX.slice();\n textState.textLineMatrix = _util.IDENTITY_MATRIX.slice();\n break;\n case _util.OPS.showSpacedText:\n if (!stateManager.state.font) {\n self.ensureStateFont(stateManager.state);\n continue;\n }\n const spaceFactor = (textState.font.vertical ? 1 : -1) * textState.fontSize / 1000;\n const elements = args[0];\n for (let i = 0, ii = elements.length; i < ii; i++) {\n const item = elements[i];\n if (typeof item === \"string\") {\n showSpacedTextBuffer.push(item);\n } else if (typeof item === \"number\" && item !== 0) {\n const str = showSpacedTextBuffer.join(\"\");\n showSpacedTextBuffer.length = 0;\n buildTextContentItem({\n chars: str,\n extraSpacing: item * spaceFactor\n });\n }\n }\n if (showSpacedTextBuffer.length > 0) {\n const str = showSpacedTextBuffer.join(\"\");\n showSpacedTextBuffer.length = 0;\n buildTextContentItem({\n chars: str,\n extraSpacing: 0\n });\n }\n break;\n case _util.OPS.showText:\n if (!stateManager.state.font) {\n self.ensureStateFont(stateManager.state);\n continue;\n }\n buildTextContentItem({\n chars: args[0],\n extraSpacing: 0\n });\n break;\n case _util.OPS.nextLineShowText:\n if (!stateManager.state.font) {\n self.ensureStateFont(stateManager.state);\n continue;\n }\n textState.carriageReturn();\n buildTextContentItem({\n chars: args[0],\n extraSpacing: 0\n });\n break;\n case _util.OPS.nextLineSetSpacingShowText:\n if (!stateManager.state.font) {\n self.ensureStateFont(stateManager.state);\n continue;\n }\n textState.wordSpacing = args[0];\n textState.charSpacing = args[1];\n textState.carriageReturn();\n buildTextContentItem({\n chars: args[2],\n extraSpacing: 0\n });\n break;\n case _util.OPS.paintXObject:\n flushTextContentItem();\n if (!xobjs) {\n xobjs = resources.get(\"XObject\") || _primitives.Dict.empty;\n }\n var isValidName = args[0] instanceof _primitives.Name;\n var name = args[0].name;\n if (isValidName && emptyXObjectCache.getByName(name)) {\n break;\n }\n next(new Promise(function (resolveXObject, rejectXObject) {\n if (!isValidName) {\n throw new _util.FormatError(\"XObject must be referred to by name.\");\n }\n let xobj = xobjs.getRaw(name);\n if (xobj instanceof _primitives.Ref) {\n if (emptyXObjectCache.getByRef(xobj)) {\n resolveXObject();\n return;\n }\n const globalImage = self.globalImageCache.getData(xobj, self.pageIndex);\n if (globalImage) {\n resolveXObject();\n return;\n }\n xobj = xref.fetch(xobj);\n }\n if (!(xobj instanceof _base_stream.BaseStream)) {\n throw new _util.FormatError(\"XObject should be a stream\");\n }\n const type = xobj.dict.get(\"Subtype\");\n if (!(type instanceof _primitives.Name)) {\n throw new _util.FormatError(\"XObject should have a Name subtype\");\n }\n if (type.name !== \"Form\") {\n emptyXObjectCache.set(name, xobj.dict.objId, true);\n resolveXObject();\n return;\n }\n const currentState = stateManager.state.clone();\n const xObjStateManager = new StateManager(currentState);\n const matrix = xobj.dict.getArray(\"Matrix\");\n if (Array.isArray(matrix) && matrix.length === 6) {\n xObjStateManager.transform(matrix);\n }\n enqueueChunk();\n const sinkWrapper = {\n enqueueInvoked: false,\n enqueue(chunk, size) {\n this.enqueueInvoked = true;\n sink.enqueue(chunk, size);\n },\n get desiredSize() {\n return sink.desiredSize;\n },\n get ready() {\n return sink.ready;\n }\n };\n self.getTextContent({\n stream: xobj,\n task,\n resources: xobj.dict.get(\"Resources\") || resources,\n stateManager: xObjStateManager,\n includeMarkedContent,\n sink: sinkWrapper,\n seenStyles,\n viewBox,\n markedContentData,\n disableNormalization\n }).then(function () {\n if (!sinkWrapper.enqueueInvoked) {\n emptyXObjectCache.set(name, xobj.dict.objId, true);\n }\n resolveXObject();\n }, rejectXObject);\n }).catch(function (reason) {\n if (reason instanceof _util.AbortException) {\n return;\n }\n if (self.options.ignoreErrors) {\n (0, _util.warn)(`getTextContent - ignoring XObject: \"${reason}\".`);\n return;\n }\n throw reason;\n }));\n return;\n case _util.OPS.setGState:\n isValidName = args[0] instanceof _primitives.Name;\n name = args[0].name;\n if (isValidName && emptyGStateCache.getByName(name)) {\n break;\n }\n next(new Promise(function (resolveGState, rejectGState) {\n if (!isValidName) {\n throw new _util.FormatError(\"GState must be referred to by name.\");\n }\n const extGState = resources.get(\"ExtGState\");\n if (!(extGState instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"ExtGState should be a dictionary.\");\n }\n const gState = extGState.get(name);\n if (!(gState instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"GState should be a dictionary.\");\n }\n const gStateFont = gState.get(\"Font\");\n if (!gStateFont) {\n emptyGStateCache.set(name, gState.objId, true);\n resolveGState();\n return;\n }\n flushTextContentItem();\n textState.fontName = null;\n textState.fontSize = gStateFont[1];\n handleSetFont(null, gStateFont[0]).then(resolveGState, rejectGState);\n }).catch(function (reason) {\n if (reason instanceof _util.AbortException) {\n return;\n }\n if (self.options.ignoreErrors) {\n (0, _util.warn)(`getTextContent - ignoring ExtGState: \"${reason}\".`);\n return;\n }\n throw reason;\n }));\n return;\n case _util.OPS.beginMarkedContent:\n flushTextContentItem();\n if (includeMarkedContent) {\n markedContentData.level++;\n textContent.items.push({\n type: \"beginMarkedContent\",\n tag: args[0] instanceof _primitives.Name ? args[0].name : null\n });\n }\n break;\n case _util.OPS.beginMarkedContentProps:\n flushTextContentItem();\n if (includeMarkedContent) {\n markedContentData.level++;\n let mcid = null;\n if (args[1] instanceof _primitives.Dict) {\n mcid = args[1].get(\"MCID\");\n }\n textContent.items.push({\n type: \"beginMarkedContentProps\",\n id: Number.isInteger(mcid) ? `${self.idFactory.getPageObjId()}_mc${mcid}` : null,\n tag: args[0] instanceof _primitives.Name ? args[0].name : null\n });\n }\n break;\n case _util.OPS.endMarkedContent:\n flushTextContentItem();\n if (includeMarkedContent) {\n if (markedContentData.level === 0) {\n break;\n }\n markedContentData.level--;\n textContent.items.push({\n type: \"endMarkedContent\"\n });\n }\n break;\n case _util.OPS.restore:\n if (previousState && (previousState.font !== textState.font || previousState.fontSize !== textState.fontSize || previousState.fontName !== textState.fontName)) {\n flushTextContentItem();\n }\n break;\n }\n if (textContent.items.length >= sink.desiredSize) {\n stop = true;\n break;\n }\n }\n if (stop) {\n next(deferred);\n return;\n }\n flushTextContentItem();\n enqueueChunk();\n resolve();\n }).catch(reason => {\n if (reason instanceof _util.AbortException) {\n return;\n }\n if (this.options.ignoreErrors) {\n (0, _util.warn)(`getTextContent - ignoring errors during \"${task.name}\" ` + `task: \"${reason}\".`);\n flushTextContentItem();\n enqueueChunk();\n return;\n }\n throw reason;\n });\n }\n extractDataStructures(dict, baseDict, properties) {\n const xref = this.xref;\n let cidToGidBytes;\n const toUnicodePromise = this.readToUnicode(properties.toUnicode || dict.get(\"ToUnicode\") || baseDict.get(\"ToUnicode\"));\n if (properties.composite) {\n const cidSystemInfo = dict.get(\"CIDSystemInfo\");\n if (cidSystemInfo instanceof _primitives.Dict) {\n properties.cidSystemInfo = {\n registry: (0, _util.stringToPDFString)(cidSystemInfo.get(\"Registry\")),\n ordering: (0, _util.stringToPDFString)(cidSystemInfo.get(\"Ordering\")),\n supplement: cidSystemInfo.get(\"Supplement\")\n };\n }\n try {\n const cidToGidMap = dict.get(\"CIDToGIDMap\");\n if (cidToGidMap instanceof _base_stream.BaseStream) {\n cidToGidBytes = cidToGidMap.getBytes();\n }\n } catch (ex) {\n if (!this.options.ignoreErrors) {\n throw ex;\n }\n (0, _util.warn)(`extractDataStructures - ignoring CIDToGIDMap data: \"${ex}\".`);\n }\n }\n const differences = [];\n let baseEncodingName = null;\n let encoding;\n if (dict.has(\"Encoding\")) {\n encoding = dict.get(\"Encoding\");\n if (encoding instanceof _primitives.Dict) {\n baseEncodingName = encoding.get(\"BaseEncoding\");\n baseEncodingName = baseEncodingName instanceof _primitives.Name ? baseEncodingName.name : null;\n if (encoding.has(\"Differences\")) {\n const diffEncoding = encoding.get(\"Differences\");\n let index = 0;\n for (const entry of diffEncoding) {\n const data = xref.fetchIfRef(entry);\n if (typeof data === \"number\") {\n index = data;\n } else if (data instanceof _primitives.Name) {\n differences[index++] = data.name;\n } else {\n throw new _util.FormatError(`Invalid entry in 'Differences' array: ${data}`);\n }\n }\n }\n } else if (encoding instanceof _primitives.Name) {\n baseEncodingName = encoding.name;\n } else {\n const msg = \"Encoding is not a Name nor a Dict\";\n if (!this.options.ignoreErrors) {\n throw new _util.FormatError(msg);\n }\n (0, _util.warn)(msg);\n }\n if (baseEncodingName !== \"MacRomanEncoding\" && baseEncodingName !== \"MacExpertEncoding\" && baseEncodingName !== \"WinAnsiEncoding\") {\n baseEncodingName = null;\n }\n }\n const nonEmbeddedFont = !properties.file || properties.isInternalFont,\n isSymbolsFontName = (0, _standard_fonts.getSymbolsFonts)()[properties.name];\n if (baseEncodingName && nonEmbeddedFont && isSymbolsFontName) {\n baseEncodingName = null;\n }\n if (baseEncodingName) {\n properties.defaultEncoding = (0, _encodings.getEncoding)(baseEncodingName);\n } else {\n const isSymbolicFont = !!(properties.flags & _fonts_utils.FontFlags.Symbolic);\n const isNonsymbolicFont = !!(properties.flags & _fonts_utils.FontFlags.Nonsymbolic);\n encoding = _encodings.StandardEncoding;\n if (properties.type === \"TrueType\" && !isNonsymbolicFont) {\n encoding = _encodings.WinAnsiEncoding;\n }\n if (isSymbolicFont || isSymbolsFontName) {\n encoding = _encodings.MacRomanEncoding;\n if (nonEmbeddedFont) {\n if (/Symbol/i.test(properties.name)) {\n encoding = _encodings.SymbolSetEncoding;\n } else if (/Dingbats/i.test(properties.name)) {\n encoding = _encodings.ZapfDingbatsEncoding;\n } else if (/Wingdings/i.test(properties.name)) {\n encoding = _encodings.WinAnsiEncoding;\n }\n }\n }\n properties.defaultEncoding = encoding;\n }\n properties.differences = differences;\n properties.baseEncodingName = baseEncodingName;\n properties.hasEncoding = !!baseEncodingName || differences.length > 0;\n properties.dict = dict;\n return toUnicodePromise.then(readToUnicode => {\n properties.toUnicode = readToUnicode;\n return this.buildToUnicode(properties);\n }).then(builtToUnicode => {\n properties.toUnicode = builtToUnicode;\n if (cidToGidBytes) {\n properties.cidToGidMap = this.readCidToGidMap(cidToGidBytes, builtToUnicode);\n }\n return properties;\n });\n }\n _simpleFontToUnicode(properties, forceGlyphs = false) {\n (0, _util.assert)(!properties.composite, \"Must be a simple font.\");\n const toUnicode = [];\n const encoding = properties.defaultEncoding.slice();\n const baseEncodingName = properties.baseEncodingName;\n const differences = properties.differences;\n for (const charcode in differences) {\n const glyphName = differences[charcode];\n if (glyphName === \".notdef\") {\n continue;\n }\n encoding[charcode] = glyphName;\n }\n const glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();\n for (const charcode in encoding) {\n let glyphName = encoding[charcode];\n if (glyphName === \"\") {\n continue;\n }\n let unicode = glyphsUnicodeMap[glyphName];\n if (unicode !== undefined) {\n toUnicode[charcode] = String.fromCharCode(unicode);\n continue;\n }\n let code = 0;\n switch (glyphName[0]) {\n case \"G\":\n if (glyphName.length === 3) {\n code = parseInt(glyphName.substring(1), 16);\n }\n break;\n case \"g\":\n if (glyphName.length === 5) {\n code = parseInt(glyphName.substring(1), 16);\n }\n break;\n case \"C\":\n case \"c\":\n if (glyphName.length >= 3 && glyphName.length <= 4) {\n const codeStr = glyphName.substring(1);\n if (forceGlyphs) {\n code = parseInt(codeStr, 16);\n break;\n }\n code = +codeStr;\n if (Number.isNaN(code) && Number.isInteger(parseInt(codeStr, 16))) {\n return this._simpleFontToUnicode(properties, true);\n }\n }\n break;\n case \"u\":\n unicode = (0, _unicode.getUnicodeForGlyph)(glyphName, glyphsUnicodeMap);\n if (unicode !== -1) {\n code = unicode;\n }\n break;\n default:\n switch (glyphName) {\n case \"f_h\":\n case \"f_t\":\n case \"T_h\":\n toUnicode[charcode] = glyphName.replaceAll(\"_\", \"\");\n continue;\n }\n break;\n }\n if (code > 0 && code <= 0x10ffff && Number.isInteger(code)) {\n if (baseEncodingName && code === +charcode) {\n const baseEncoding = (0, _encodings.getEncoding)(baseEncodingName);\n if (baseEncoding && (glyphName = baseEncoding[charcode])) {\n toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);\n continue;\n }\n }\n toUnicode[charcode] = String.fromCodePoint(code);\n }\n }\n return toUnicode;\n }\n async buildToUnicode(properties) {\n properties.hasIncludedToUnicodeMap = properties.toUnicode?.length > 0;\n if (properties.hasIncludedToUnicodeMap) {\n if (!properties.composite && properties.hasEncoding) {\n properties.fallbackToUnicode = this._simpleFontToUnicode(properties);\n }\n return properties.toUnicode;\n }\n if (!properties.composite) {\n return new _to_unicode_map.ToUnicodeMap(this._simpleFontToUnicode(properties));\n }\n if (properties.composite && (properties.cMap.builtInCMap && !(properties.cMap instanceof _cmap.IdentityCMap) || properties.cidSystemInfo.registry === \"Adobe\" && (properties.cidSystemInfo.ordering === \"GB1\" || properties.cidSystemInfo.ordering === \"CNS1\" || properties.cidSystemInfo.ordering === \"Japan1\" || properties.cidSystemInfo.ordering === \"Korea1\"))) {\n const {\n registry,\n ordering\n } = properties.cidSystemInfo;\n const ucs2CMapName = _primitives.Name.get(`${registry}-${ordering}-UCS2`);\n const ucs2CMap = await _cmap.CMapFactory.create({\n encoding: ucs2CMapName,\n fetchBuiltInCMap: this._fetchBuiltInCMapBound,\n useCMap: null\n });\n const toUnicode = [],\n buf = [];\n properties.cMap.forEach(function (charcode, cid) {\n if (cid > 0xffff) {\n throw new _util.FormatError(\"Max size of CID is 65,535\");\n }\n const ucs2 = ucs2CMap.lookup(cid);\n if (ucs2) {\n buf.length = 0;\n for (let i = 0, ii = ucs2.length; i < ii; i += 2) {\n buf.push((ucs2.charCodeAt(i) << 8) + ucs2.charCodeAt(i + 1));\n }\n toUnicode[charcode] = String.fromCharCode(...buf);\n }\n });\n return new _to_unicode_map.ToUnicodeMap(toUnicode);\n }\n return new _to_unicode_map.IdentityToUnicodeMap(properties.firstChar, properties.lastChar);\n }\n readToUnicode(cmapObj) {\n if (!cmapObj) {\n return Promise.resolve(null);\n }\n if (cmapObj instanceof _primitives.Name) {\n return _cmap.CMapFactory.create({\n encoding: cmapObj,\n fetchBuiltInCMap: this._fetchBuiltInCMapBound,\n useCMap: null\n }).then(function (cmap) {\n if (cmap instanceof _cmap.IdentityCMap) {\n return new _to_unicode_map.IdentityToUnicodeMap(0, 0xffff);\n }\n return new _to_unicode_map.ToUnicodeMap(cmap.getMap());\n });\n } else if (cmapObj instanceof _base_stream.BaseStream) {\n return _cmap.CMapFactory.create({\n encoding: cmapObj,\n fetchBuiltInCMap: this._fetchBuiltInCMapBound,\n useCMap: null\n }).then(function (cmap) {\n if (cmap instanceof _cmap.IdentityCMap) {\n return new _to_unicode_map.IdentityToUnicodeMap(0, 0xffff);\n }\n const map = new Array(cmap.length);\n cmap.forEach(function (charCode, token) {\n if (typeof token === \"number\") {\n map[charCode] = String.fromCodePoint(token);\n return;\n }\n const str = [];\n for (let k = 0; k < token.length; k += 2) {\n const w1 = token.charCodeAt(k) << 8 | token.charCodeAt(k + 1);\n if ((w1 & 0xf800) !== 0xd800) {\n str.push(w1);\n continue;\n }\n k += 2;\n const w2 = token.charCodeAt(k) << 8 | token.charCodeAt(k + 1);\n str.push(((w1 & 0x3ff) << 10) + (w2 & 0x3ff) + 0x10000);\n }\n map[charCode] = String.fromCodePoint(...str);\n });\n return new _to_unicode_map.ToUnicodeMap(map);\n }, reason => {\n if (reason instanceof _util.AbortException) {\n return null;\n }\n if (this.options.ignoreErrors) {\n (0, _util.warn)(`readToUnicode - ignoring ToUnicode data: \"${reason}\".`);\n return null;\n }\n throw reason;\n });\n }\n return Promise.resolve(null);\n }\n readCidToGidMap(glyphsData, toUnicode) {\n const result = [];\n for (let j = 0, jj = glyphsData.length; j < jj; j++) {\n const glyphID = glyphsData[j++] << 8 | glyphsData[j];\n const code = j >> 1;\n if (glyphID === 0 && !toUnicode.has(code)) {\n continue;\n }\n result[code] = glyphID;\n }\n return result;\n }\n extractWidths(dict, descriptor, properties) {\n const xref = this.xref;\n let glyphsWidths = [];\n let defaultWidth = 0;\n const glyphsVMetrics = [];\n let defaultVMetrics;\n let i, ii, j, jj, start, code, widths;\n if (properties.composite) {\n defaultWidth = dict.has(\"DW\") ? dict.get(\"DW\") : 1000;\n widths = dict.get(\"W\");\n if (widths) {\n for (i = 0, ii = widths.length; i < ii; i++) {\n start = xref.fetchIfRef(widths[i++]);\n code = xref.fetchIfRef(widths[i]);\n if (Array.isArray(code)) {\n for (j = 0, jj = code.length; j < jj; j++) {\n glyphsWidths[start++] = xref.fetchIfRef(code[j]);\n }\n } else {\n const width = xref.fetchIfRef(widths[++i]);\n for (j = start; j <= code; j++) {\n glyphsWidths[j] = width;\n }\n }\n }\n }\n if (properties.vertical) {\n let vmetrics = dict.getArray(\"DW2\") || [880, -1000];\n defaultVMetrics = [vmetrics[1], defaultWidth * 0.5, vmetrics[0]];\n vmetrics = dict.get(\"W2\");\n if (vmetrics) {\n for (i = 0, ii = vmetrics.length; i < ii; i++) {\n start = xref.fetchIfRef(vmetrics[i++]);\n code = xref.fetchIfRef(vmetrics[i]);\n if (Array.isArray(code)) {\n for (j = 0, jj = code.length; j < jj; j++) {\n glyphsVMetrics[start++] = [xref.fetchIfRef(code[j++]), xref.fetchIfRef(code[j++]), xref.fetchIfRef(code[j])];\n }\n } else {\n const vmetric = [xref.fetchIfRef(vmetrics[++i]), xref.fetchIfRef(vmetrics[++i]), xref.fetchIfRef(vmetrics[++i])];\n for (j = start; j <= code; j++) {\n glyphsVMetrics[j] = vmetric;\n }\n }\n }\n }\n }\n } else {\n const firstChar = properties.firstChar;\n widths = dict.get(\"Widths\");\n if (widths) {\n j = firstChar;\n for (i = 0, ii = widths.length; i < ii; i++) {\n glyphsWidths[j++] = xref.fetchIfRef(widths[i]);\n }\n defaultWidth = parseFloat(descriptor.get(\"MissingWidth\")) || 0;\n } else {\n const baseFontName = dict.get(\"BaseFont\");\n if (baseFontName instanceof _primitives.Name) {\n const metrics = this.getBaseFontMetrics(baseFontName.name);\n glyphsWidths = this.buildCharCodeToWidth(metrics.widths, properties);\n defaultWidth = metrics.defaultWidth;\n }\n }\n }\n let isMonospace = true;\n let firstWidth = defaultWidth;\n for (const glyph in glyphsWidths) {\n const glyphWidth = glyphsWidths[glyph];\n if (!glyphWidth) {\n continue;\n }\n if (!firstWidth) {\n firstWidth = glyphWidth;\n continue;\n }\n if (firstWidth !== glyphWidth) {\n isMonospace = false;\n break;\n }\n }\n if (isMonospace) {\n properties.flags |= _fonts_utils.FontFlags.FixedPitch;\n } else {\n properties.flags &= ~_fonts_utils.FontFlags.FixedPitch;\n }\n properties.defaultWidth = defaultWidth;\n properties.widths = glyphsWidths;\n properties.defaultVMetrics = defaultVMetrics;\n properties.vmetrics = glyphsVMetrics;\n }\n isSerifFont(baseFontName) {\n const fontNameWoStyle = baseFontName.split(\"-\")[0];\n return fontNameWoStyle in (0, _standard_fonts.getSerifFonts)() || /serif/gi.test(fontNameWoStyle);\n }\n getBaseFontMetrics(name) {\n let defaultWidth = 0;\n let widths = Object.create(null);\n let monospace = false;\n const stdFontMap = (0, _standard_fonts.getStdFontMap)();\n let lookupName = stdFontMap[name] || name;\n const Metrics = (0, _metrics.getMetrics)();\n if (!(lookupName in Metrics)) {\n lookupName = this.isSerifFont(name) ? \"Times-Roman\" : \"Helvetica\";\n }\n const glyphWidths = Metrics[lookupName];\n if (typeof glyphWidths === \"number\") {\n defaultWidth = glyphWidths;\n monospace = true;\n } else {\n widths = glyphWidths();\n }\n return {\n defaultWidth,\n monospace,\n widths\n };\n }\n buildCharCodeToWidth(widthsByGlyphName, properties) {\n const widths = Object.create(null);\n const differences = properties.differences;\n const encoding = properties.defaultEncoding;\n for (let charCode = 0; charCode < 256; charCode++) {\n if (charCode in differences && widthsByGlyphName[differences[charCode]]) {\n widths[charCode] = widthsByGlyphName[differences[charCode]];\n continue;\n }\n if (charCode in encoding && widthsByGlyphName[encoding[charCode]]) {\n widths[charCode] = widthsByGlyphName[encoding[charCode]];\n continue;\n }\n }\n return widths;\n }\n preEvaluateFont(dict) {\n const baseDict = dict;\n let type = dict.get(\"Subtype\");\n if (!(type instanceof _primitives.Name)) {\n throw new _util.FormatError(\"invalid font Subtype\");\n }\n let composite = false;\n let hash, toUnicode;\n if (type.name === \"Type0\") {\n const df = dict.get(\"DescendantFonts\");\n if (!df) {\n throw new _util.FormatError(\"Descendant fonts are not specified\");\n }\n dict = Array.isArray(df) ? this.xref.fetchIfRef(df[0]) : df;\n if (!(dict instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"Descendant font is not a dictionary.\");\n }\n type = dict.get(\"Subtype\");\n if (!(type instanceof _primitives.Name)) {\n throw new _util.FormatError(\"invalid font Subtype\");\n }\n composite = true;\n }\n const firstChar = dict.get(\"FirstChar\") || 0,\n lastChar = dict.get(\"LastChar\") || (composite ? 0xffff : 0xff);\n const descriptor = dict.get(\"FontDescriptor\");\n if (descriptor) {\n hash = new _murmurhash.MurmurHash3_64();\n const encoding = baseDict.getRaw(\"Encoding\");\n if (encoding instanceof _primitives.Name) {\n hash.update(encoding.name);\n } else if (encoding instanceof _primitives.Ref) {\n hash.update(encoding.toString());\n } else if (encoding instanceof _primitives.Dict) {\n for (const entry of encoding.getRawValues()) {\n if (entry instanceof _primitives.Name) {\n hash.update(entry.name);\n } else if (entry instanceof _primitives.Ref) {\n hash.update(entry.toString());\n } else if (Array.isArray(entry)) {\n const diffLength = entry.length,\n diffBuf = new Array(diffLength);\n for (let j = 0; j < diffLength; j++) {\n const diffEntry = entry[j];\n if (diffEntry instanceof _primitives.Name) {\n diffBuf[j] = diffEntry.name;\n } else if (typeof diffEntry === \"number\" || diffEntry instanceof _primitives.Ref) {\n diffBuf[j] = diffEntry.toString();\n }\n }\n hash.update(diffBuf.join());\n }\n }\n }\n hash.update(`${firstChar}-${lastChar}`);\n toUnicode = dict.get(\"ToUnicode\") || baseDict.get(\"ToUnicode\");\n if (toUnicode instanceof _base_stream.BaseStream) {\n const stream = toUnicode.str || toUnicode;\n const uint8array = stream.buffer ? new Uint8Array(stream.buffer.buffer, 0, stream.bufferLength) : new Uint8Array(stream.bytes.buffer, stream.start, stream.end - stream.start);\n hash.update(uint8array);\n } else if (toUnicode instanceof _primitives.Name) {\n hash.update(toUnicode.name);\n }\n const widths = dict.get(\"Widths\") || baseDict.get(\"Widths\");\n if (Array.isArray(widths)) {\n const widthsBuf = [];\n for (const entry of widths) {\n if (typeof entry === \"number\" || entry instanceof _primitives.Ref) {\n widthsBuf.push(entry.toString());\n }\n }\n hash.update(widthsBuf.join());\n }\n if (composite) {\n hash.update(\"compositeFont\");\n const compositeWidths = dict.get(\"W\") || baseDict.get(\"W\");\n if (Array.isArray(compositeWidths)) {\n const widthsBuf = [];\n for (const entry of compositeWidths) {\n if (typeof entry === \"number\" || entry instanceof _primitives.Ref) {\n widthsBuf.push(entry.toString());\n } else if (Array.isArray(entry)) {\n const subWidthsBuf = [];\n for (const element of entry) {\n if (typeof element === \"number\" || element instanceof _primitives.Ref) {\n subWidthsBuf.push(element.toString());\n }\n }\n widthsBuf.push(`[${subWidthsBuf.join()}]`);\n }\n }\n hash.update(widthsBuf.join());\n }\n const cidToGidMap = dict.getRaw(\"CIDToGIDMap\") || baseDict.getRaw(\"CIDToGIDMap\");\n if (cidToGidMap instanceof _primitives.Name) {\n hash.update(cidToGidMap.name);\n } else if (cidToGidMap instanceof _primitives.Ref) {\n hash.update(cidToGidMap.toString());\n } else if (cidToGidMap instanceof _base_stream.BaseStream) {\n hash.update(cidToGidMap.peekBytes());\n }\n }\n }\n return {\n descriptor,\n dict,\n baseDict,\n composite,\n type: type.name,\n firstChar,\n lastChar,\n toUnicode,\n hash: hash ? hash.hexdigest() : \"\"\n };\n }\n async translateFont({\n descriptor,\n dict,\n baseDict,\n composite,\n type,\n firstChar,\n lastChar,\n toUnicode,\n cssFontInfo\n }) {\n const isType3Font = type === \"Type3\";\n let properties;\n if (!descriptor) {\n if (isType3Font) {\n descriptor = new _primitives.Dict(null);\n descriptor.set(\"FontName\", _primitives.Name.get(type));\n descriptor.set(\"FontBBox\", dict.getArray(\"FontBBox\") || [0, 0, 0, 0]);\n } else {\n let baseFontName = dict.get(\"BaseFont\");\n if (!(baseFontName instanceof _primitives.Name)) {\n throw new _util.FormatError(\"Base font is not specified\");\n }\n baseFontName = baseFontName.name.replaceAll(/[,_]/g, \"-\");\n const metrics = this.getBaseFontMetrics(baseFontName);\n const fontNameWoStyle = baseFontName.split(\"-\")[0];\n const flags = (this.isSerifFont(fontNameWoStyle) ? _fonts_utils.FontFlags.Serif : 0) | (metrics.monospace ? _fonts_utils.FontFlags.FixedPitch : 0) | ((0, _standard_fonts.getSymbolsFonts)()[fontNameWoStyle] ? _fonts_utils.FontFlags.Symbolic : _fonts_utils.FontFlags.Nonsymbolic);\n properties = {\n type,\n name: baseFontName,\n loadedName: baseDict.loadedName,\n systemFontInfo: null,\n widths: metrics.widths,\n defaultWidth: metrics.defaultWidth,\n isSimulatedFlags: true,\n flags,\n firstChar,\n lastChar,\n toUnicode,\n xHeight: 0,\n capHeight: 0,\n italicAngle: 0,\n isType3Font\n };\n const widths = dict.get(\"Widths\");\n const standardFontName = (0, _standard_fonts.getStandardFontName)(baseFontName);\n let file = null;\n if (standardFontName) {\n file = await this.fetchStandardFontData(standardFontName);\n properties.isInternalFont = !!file;\n }\n if (!properties.isInternalFont && this.options.useSystemFonts) {\n properties.systemFontInfo = (0, _font_substitutions.getFontSubstitution)(this.systemFontCache, this.idFactory, this.options.standardFontDataUrl, baseFontName, standardFontName);\n }\n return this.extractDataStructures(dict, dict, properties).then(newProperties => {\n if (widths) {\n const glyphWidths = [];\n let j = firstChar;\n for (const width of widths) {\n glyphWidths[j++] = this.xref.fetchIfRef(width);\n }\n newProperties.widths = glyphWidths;\n } else {\n newProperties.widths = this.buildCharCodeToWidth(metrics.widths, newProperties);\n }\n return new _fonts.Font(baseFontName, file, newProperties);\n });\n }\n }\n let fontName = descriptor.get(\"FontName\");\n let baseFont = dict.get(\"BaseFont\");\n if (typeof fontName === \"string\") {\n fontName = _primitives.Name.get(fontName);\n }\n if (typeof baseFont === \"string\") {\n baseFont = _primitives.Name.get(baseFont);\n }\n const fontNameStr = fontName?.name;\n const baseFontStr = baseFont?.name;\n if (!isType3Font && fontNameStr !== baseFontStr) {\n (0, _util.info)(`The FontDescriptor's FontName is \"${fontNameStr}\" but ` + `should be the same as the Font's BaseFont \"${baseFontStr}\".`);\n if (fontNameStr && baseFontStr && (baseFontStr.startsWith(fontNameStr) || !(0, _standard_fonts.isKnownFontName)(fontNameStr) && (0, _standard_fonts.isKnownFontName)(baseFontStr))) {\n fontName = null;\n }\n }\n fontName ||= baseFont;\n if (!(fontName instanceof _primitives.Name)) {\n throw new _util.FormatError(\"invalid font name\");\n }\n let fontFile, subtype, length1, length2, length3;\n try {\n fontFile = descriptor.get(\"FontFile\", \"FontFile2\", \"FontFile3\");\n } catch (ex) {\n if (!this.options.ignoreErrors) {\n throw ex;\n }\n (0, _util.warn)(`translateFont - fetching \"${fontName.name}\" font file: \"${ex}\".`);\n fontFile = new _stream.NullStream();\n }\n let isInternalFont = false;\n let glyphScaleFactors = null;\n let systemFontInfo = null;\n if (fontFile) {\n if (fontFile.dict) {\n const subtypeEntry = fontFile.dict.get(\"Subtype\");\n if (subtypeEntry instanceof _primitives.Name) {\n subtype = subtypeEntry.name;\n }\n length1 = fontFile.dict.get(\"Length1\");\n length2 = fontFile.dict.get(\"Length2\");\n length3 = fontFile.dict.get(\"Length3\");\n }\n } else if (cssFontInfo) {\n const standardFontName = (0, _xfa_fonts.getXfaFontName)(fontName.name);\n if (standardFontName) {\n cssFontInfo.fontFamily = `${cssFontInfo.fontFamily}-PdfJS-XFA`;\n cssFontInfo.metrics = standardFontName.metrics || null;\n glyphScaleFactors = standardFontName.factors || null;\n fontFile = await this.fetchStandardFontData(standardFontName.name);\n isInternalFont = !!fontFile;\n baseDict = dict = (0, _xfa_fonts.getXfaFontDict)(fontName.name);\n composite = true;\n }\n } else if (!isType3Font) {\n const standardFontName = (0, _standard_fonts.getStandardFontName)(fontName.name);\n if (standardFontName) {\n fontFile = await this.fetchStandardFontData(standardFontName);\n isInternalFont = !!fontFile;\n }\n if (!isInternalFont && this.options.useSystemFonts) {\n systemFontInfo = (0, _font_substitutions.getFontSubstitution)(this.systemFontCache, this.idFactory, this.options.standardFontDataUrl, fontName.name, standardFontName);\n }\n }\n properties = {\n type,\n name: fontName.name,\n subtype,\n file: fontFile,\n length1,\n length2,\n length3,\n isInternalFont,\n loadedName: baseDict.loadedName,\n composite,\n fixedPitch: false,\n fontMatrix: dict.getArray(\"FontMatrix\") || _util.FONT_IDENTITY_MATRIX,\n firstChar,\n lastChar,\n toUnicode,\n bbox: descriptor.getArray(\"FontBBox\") || dict.getArray(\"FontBBox\"),\n ascent: descriptor.get(\"Ascent\"),\n descent: descriptor.get(\"Descent\"),\n xHeight: descriptor.get(\"XHeight\") || 0,\n capHeight: descriptor.get(\"CapHeight\") || 0,\n flags: descriptor.get(\"Flags\"),\n italicAngle: descriptor.get(\"ItalicAngle\") || 0,\n isType3Font,\n cssFontInfo,\n scaleFactors: glyphScaleFactors,\n systemFontInfo\n };\n if (composite) {\n const cidEncoding = baseDict.get(\"Encoding\");\n if (cidEncoding instanceof _primitives.Name) {\n properties.cidEncoding = cidEncoding.name;\n }\n const cMap = await _cmap.CMapFactory.create({\n encoding: cidEncoding,\n fetchBuiltInCMap: this._fetchBuiltInCMapBound,\n useCMap: null\n });\n properties.cMap = cMap;\n properties.vertical = properties.cMap.vertical;\n }\n return this.extractDataStructures(dict, baseDict, properties).then(newProperties => {\n this.extractWidths(dict, descriptor, newProperties);\n return new _fonts.Font(fontName.name, fontFile, newProperties);\n });\n }\n static buildFontPaths(font, glyphs, handler, evaluatorOptions) {\n function buildPath(fontChar) {\n const glyphName = `${font.loadedName}_path_${fontChar}`;\n try {\n if (font.renderer.hasBuiltPath(fontChar)) {\n return;\n }\n handler.send(\"commonobj\", [glyphName, \"FontPath\", font.renderer.getPathJs(fontChar)]);\n } catch (reason) {\n if (evaluatorOptions.ignoreErrors) {\n (0, _util.warn)(`buildFontPaths - ignoring ${glyphName} glyph: \"${reason}\".`);\n return;\n }\n throw reason;\n }\n }\n for (const glyph of glyphs) {\n buildPath(glyph.fontChar);\n const accent = glyph.accent;\n if (accent?.fontChar) {\n buildPath(accent.fontChar);\n }\n }\n }\n static get fallbackFontDict() {\n const dict = new _primitives.Dict();\n dict.set(\"BaseFont\", _primitives.Name.get(\"Helvetica\"));\n dict.set(\"Type\", _primitives.Name.get(\"FallbackType\"));\n dict.set(\"Subtype\", _primitives.Name.get(\"FallbackType\"));\n dict.set(\"Encoding\", _primitives.Name.get(\"WinAnsiEncoding\"));\n return (0, _util.shadow)(this, \"fallbackFontDict\", dict);\n }\n}\nexports.PartialEvaluator = PartialEvaluator;\nclass TranslatedFont {\n constructor({\n loadedName,\n font,\n dict,\n evaluatorOptions\n }) {\n this.loadedName = loadedName;\n this.font = font;\n this.dict = dict;\n this._evaluatorOptions = evaluatorOptions || DefaultPartialEvaluatorOptions;\n this.type3Loaded = null;\n this.type3Dependencies = font.isType3Font ? new Set() : null;\n this.sent = false;\n }\n send(handler) {\n if (this.sent) {\n return;\n }\n this.sent = true;\n handler.send(\"commonobj\", [this.loadedName, \"Font\", this.font.exportData(this._evaluatorOptions.fontExtraProperties)]);\n }\n fallback(handler) {\n if (!this.font.data) {\n return;\n }\n this.font.disableFontFace = true;\n PartialEvaluator.buildFontPaths(this.font, this.font.glyphCacheValues, handler, this._evaluatorOptions);\n }\n loadType3Data(evaluator, resources, task) {\n if (this.type3Loaded) {\n return this.type3Loaded;\n }\n if (!this.font.isType3Font) {\n throw new Error(\"Must be a Type3 font.\");\n }\n const type3Evaluator = evaluator.clone({\n ignoreErrors: false\n });\n type3Evaluator.parsingType3Font = true;\n const type3FontRefs = new _primitives.RefSet(evaluator.type3FontRefs);\n if (this.dict.objId && !type3FontRefs.has(this.dict.objId)) {\n type3FontRefs.put(this.dict.objId);\n }\n type3Evaluator.type3FontRefs = type3FontRefs;\n const translatedFont = this.font,\n type3Dependencies = this.type3Dependencies;\n let loadCharProcsPromise = Promise.resolve();\n const charProcs = this.dict.get(\"CharProcs\");\n const fontResources = this.dict.get(\"Resources\") || resources;\n const charProcOperatorList = Object.create(null);\n const fontBBox = _util.Util.normalizeRect(translatedFont.bbox || [0, 0, 0, 0]),\n width = fontBBox[2] - fontBBox[0],\n height = fontBBox[3] - fontBBox[1];\n const fontBBoxSize = Math.hypot(width, height);\n for (const key of charProcs.getKeys()) {\n loadCharProcsPromise = loadCharProcsPromise.then(() => {\n const glyphStream = charProcs.get(key);\n const operatorList = new _operator_list.OperatorList();\n return type3Evaluator.getOperatorList({\n stream: glyphStream,\n task,\n resources: fontResources,\n operatorList\n }).then(() => {\n if (operatorList.fnArray[0] === _util.OPS.setCharWidthAndBounds) {\n this._removeType3ColorOperators(operatorList, fontBBoxSize);\n }\n charProcOperatorList[key] = operatorList.getIR();\n for (const dependency of operatorList.dependencies) {\n type3Dependencies.add(dependency);\n }\n }).catch(function (reason) {\n (0, _util.warn)(`Type3 font resource \"${key}\" is not available.`);\n const dummyOperatorList = new _operator_list.OperatorList();\n charProcOperatorList[key] = dummyOperatorList.getIR();\n });\n });\n }\n this.type3Loaded = loadCharProcsPromise.then(() => {\n translatedFont.charProcOperatorList = charProcOperatorList;\n if (this._bbox) {\n translatedFont.isCharBBox = true;\n translatedFont.bbox = this._bbox;\n }\n });\n return this.type3Loaded;\n }\n _removeType3ColorOperators(operatorList, fontBBoxSize = NaN) {\n const charBBox = _util.Util.normalizeRect(operatorList.argsArray[0].slice(2)),\n width = charBBox[2] - charBBox[0],\n height = charBBox[3] - charBBox[1];\n const charBBoxSize = Math.hypot(width, height);\n if (width === 0 || height === 0) {\n operatorList.fnArray.splice(0, 1);\n operatorList.argsArray.splice(0, 1);\n } else if (fontBBoxSize === 0 || Math.round(charBBoxSize / fontBBoxSize) >= 10) {\n if (!this._bbox) {\n this._bbox = [Infinity, Infinity, -Infinity, -Infinity];\n }\n this._bbox[0] = Math.min(this._bbox[0], charBBox[0]);\n this._bbox[1] = Math.min(this._bbox[1], charBBox[1]);\n this._bbox[2] = Math.max(this._bbox[2], charBBox[2]);\n this._bbox[3] = Math.max(this._bbox[3], charBBox[3]);\n }\n let i = 0,\n ii = operatorList.length;\n while (i < ii) {\n switch (operatorList.fnArray[i]) {\n case _util.OPS.setCharWidthAndBounds:\n break;\n case _util.OPS.setStrokeColorSpace:\n case _util.OPS.setFillColorSpace:\n case _util.OPS.setStrokeColor:\n case _util.OPS.setStrokeColorN:\n case _util.OPS.setFillColor:\n case _util.OPS.setFillColorN:\n case _util.OPS.setStrokeGray:\n case _util.OPS.setFillGray:\n case _util.OPS.setStrokeRGBColor:\n case _util.OPS.setFillRGBColor:\n case _util.OPS.setStrokeCMYKColor:\n case _util.OPS.setFillCMYKColor:\n case _util.OPS.shadingFill:\n case _util.OPS.setRenderingIntent:\n operatorList.fnArray.splice(i, 1);\n operatorList.argsArray.splice(i, 1);\n ii--;\n continue;\n case _util.OPS.setGState:\n const [gStateObj] = operatorList.argsArray[i];\n let j = 0,\n jj = gStateObj.length;\n while (j < jj) {\n const [gStateKey] = gStateObj[j];\n switch (gStateKey) {\n case \"TR\":\n case \"TR2\":\n case \"HT\":\n case \"BG\":\n case \"BG2\":\n case \"UCR\":\n case \"UCR2\":\n gStateObj.splice(j, 1);\n jj--;\n continue;\n }\n j++;\n }\n break;\n }\n i++;\n }\n }\n}\nclass StateManager {\n constructor(initialState = new EvalState()) {\n this.state = initialState;\n this.stateStack = [];\n }\n save() {\n const old = this.state;\n this.stateStack.push(this.state);\n this.state = old.clone();\n }\n restore() {\n const prev = this.stateStack.pop();\n if (prev) {\n this.state = prev;\n }\n }\n transform(args) {\n this.state.ctm = _util.Util.transform(this.state.ctm, args);\n }\n}\nclass TextState {\n constructor() {\n this.ctm = new Float32Array(_util.IDENTITY_MATRIX);\n this.fontName = null;\n this.fontSize = 0;\n this.loadedName = null;\n this.font = null;\n this.fontMatrix = _util.FONT_IDENTITY_MATRIX;\n this.textMatrix = _util.IDENTITY_MATRIX.slice();\n this.textLineMatrix = _util.IDENTITY_MATRIX.slice();\n this.charSpacing = 0;\n this.wordSpacing = 0;\n this.leading = 0;\n this.textHScale = 1;\n this.textRise = 0;\n }\n setTextMatrix(a, b, c, d, e, f) {\n const m = this.textMatrix;\n m[0] = a;\n m[1] = b;\n m[2] = c;\n m[3] = d;\n m[4] = e;\n m[5] = f;\n }\n setTextLineMatrix(a, b, c, d, e, f) {\n const m = this.textLineMatrix;\n m[0] = a;\n m[1] = b;\n m[2] = c;\n m[3] = d;\n m[4] = e;\n m[5] = f;\n }\n translateTextMatrix(x, y) {\n const m = this.textMatrix;\n m[4] = m[0] * x + m[2] * y + m[4];\n m[5] = m[1] * x + m[3] * y + m[5];\n }\n translateTextLineMatrix(x, y) {\n const m = this.textLineMatrix;\n m[4] = m[0] * x + m[2] * y + m[4];\n m[5] = m[1] * x + m[3] * y + m[5];\n }\n carriageReturn() {\n this.translateTextLineMatrix(0, -this.leading);\n this.textMatrix = this.textLineMatrix.slice();\n }\n clone() {\n const clone = Object.create(this);\n clone.textMatrix = this.textMatrix.slice();\n clone.textLineMatrix = this.textLineMatrix.slice();\n clone.fontMatrix = this.fontMatrix.slice();\n return clone;\n }\n}\nclass EvalState {\n constructor() {\n this.ctm = new Float32Array(_util.IDENTITY_MATRIX);\n this.font = null;\n this.textRenderingMode = _util.TextRenderingMode.FILL;\n this.fillColorSpace = _colorspace.ColorSpace.singletons.gray;\n this.strokeColorSpace = _colorspace.ColorSpace.singletons.gray;\n }\n clone() {\n return Object.create(this);\n }\n}\nclass EvaluatorPreprocessor {\n static get opMap() {\n return (0, _util.shadow)(this, \"opMap\", {\n w: {\n id: _util.OPS.setLineWidth,\n numArgs: 1,\n variableArgs: false\n },\n J: {\n id: _util.OPS.setLineCap,\n numArgs: 1,\n variableArgs: false\n },\n j: {\n id: _util.OPS.setLineJoin,\n numArgs: 1,\n variableArgs: false\n },\n M: {\n id: _util.OPS.setMiterLimit,\n numArgs: 1,\n variableArgs: false\n },\n d: {\n id: _util.OPS.setDash,\n numArgs: 2,\n variableArgs: false\n },\n ri: {\n id: _util.OPS.setRenderingIntent,\n numArgs: 1,\n variableArgs: false\n },\n i: {\n id: _util.OPS.setFlatness,\n numArgs: 1,\n variableArgs: false\n },\n gs: {\n id: _util.OPS.setGState,\n numArgs: 1,\n variableArgs: false\n },\n q: {\n id: _util.OPS.save,\n numArgs: 0,\n variableArgs: false\n },\n Q: {\n id: _util.OPS.restore,\n numArgs: 0,\n variableArgs: false\n },\n cm: {\n id: _util.OPS.transform,\n numArgs: 6,\n variableArgs: false\n },\n m: {\n id: _util.OPS.moveTo,\n numArgs: 2,\n variableArgs: false\n },\n l: {\n id: _util.OPS.lineTo,\n numArgs: 2,\n variableArgs: false\n },\n c: {\n id: _util.OPS.curveTo,\n numArgs: 6,\n variableArgs: false\n },\n v: {\n id: _util.OPS.curveTo2,\n numArgs: 4,\n variableArgs: false\n },\n y: {\n id: _util.OPS.curveTo3,\n numArgs: 4,\n variableArgs: false\n },\n h: {\n id: _util.OPS.closePath,\n numArgs: 0,\n variableArgs: false\n },\n re: {\n id: _util.OPS.rectangle,\n numArgs: 4,\n variableArgs: false\n },\n S: {\n id: _util.OPS.stroke,\n numArgs: 0,\n variableArgs: false\n },\n s: {\n id: _util.OPS.closeStroke,\n numArgs: 0,\n variableArgs: false\n },\n f: {\n id: _util.OPS.fill,\n numArgs: 0,\n variableArgs: false\n },\n F: {\n id: _util.OPS.fill,\n numArgs: 0,\n variableArgs: false\n },\n \"f*\": {\n id: _util.OPS.eoFill,\n numArgs: 0,\n variableArgs: false\n },\n B: {\n id: _util.OPS.fillStroke,\n numArgs: 0,\n variableArgs: false\n },\n \"B*\": {\n id: _util.OPS.eoFillStroke,\n numArgs: 0,\n variableArgs: false\n },\n b: {\n id: _util.OPS.closeFillStroke,\n numArgs: 0,\n variableArgs: false\n },\n \"b*\": {\n id: _util.OPS.closeEOFillStroke,\n numArgs: 0,\n variableArgs: false\n },\n n: {\n id: _util.OPS.endPath,\n numArgs: 0,\n variableArgs: false\n },\n W: {\n id: _util.OPS.clip,\n numArgs: 0,\n variableArgs: false\n },\n \"W*\": {\n id: _util.OPS.eoClip,\n numArgs: 0,\n variableArgs: false\n },\n BT: {\n id: _util.OPS.beginText,\n numArgs: 0,\n variableArgs: false\n },\n ET: {\n id: _util.OPS.endText,\n numArgs: 0,\n variableArgs: false\n },\n Tc: {\n id: _util.OPS.setCharSpacing,\n numArgs: 1,\n variableArgs: false\n },\n Tw: {\n id: _util.OPS.setWordSpacing,\n numArgs: 1,\n variableArgs: false\n },\n Tz: {\n id: _util.OPS.setHScale,\n numArgs: 1,\n variableArgs: false\n },\n TL: {\n id: _util.OPS.setLeading,\n numArgs: 1,\n variableArgs: false\n },\n Tf: {\n id: _util.OPS.setFont,\n numArgs: 2,\n variableArgs: false\n },\n Tr: {\n id: _util.OPS.setTextRenderingMode,\n numArgs: 1,\n variableArgs: false\n },\n Ts: {\n id: _util.OPS.setTextRise,\n numArgs: 1,\n variableArgs: false\n },\n Td: {\n id: _util.OPS.moveText,\n numArgs: 2,\n variableArgs: false\n },\n TD: {\n id: _util.OPS.setLeadingMoveText,\n numArgs: 2,\n variableArgs: false\n },\n Tm: {\n id: _util.OPS.setTextMatrix,\n numArgs: 6,\n variableArgs: false\n },\n \"T*\": {\n id: _util.OPS.nextLine,\n numArgs: 0,\n variableArgs: false\n },\n Tj: {\n id: _util.OPS.showText,\n numArgs: 1,\n variableArgs: false\n },\n TJ: {\n id: _util.OPS.showSpacedText,\n numArgs: 1,\n variableArgs: false\n },\n \"'\": {\n id: _util.OPS.nextLineShowText,\n numArgs: 1,\n variableArgs: false\n },\n '\"': {\n id: _util.OPS.nextLineSetSpacingShowText,\n numArgs: 3,\n variableArgs: false\n },\n d0: {\n id: _util.OPS.setCharWidth,\n numArgs: 2,\n variableArgs: false\n },\n d1: {\n id: _util.OPS.setCharWidthAndBounds,\n numArgs: 6,\n variableArgs: false\n },\n CS: {\n id: _util.OPS.setStrokeColorSpace,\n numArgs: 1,\n variableArgs: false\n },\n cs: {\n id: _util.OPS.setFillColorSpace,\n numArgs: 1,\n variableArgs: false\n },\n SC: {\n id: _util.OPS.setStrokeColor,\n numArgs: 4,\n variableArgs: true\n },\n SCN: {\n id: _util.OPS.setStrokeColorN,\n numArgs: 33,\n variableArgs: true\n },\n sc: {\n id: _util.OPS.setFillColor,\n numArgs: 4,\n variableArgs: true\n },\n scn: {\n id: _util.OPS.setFillColorN,\n numArgs: 33,\n variableArgs: true\n },\n G: {\n id: _util.OPS.setStrokeGray,\n numArgs: 1,\n variableArgs: false\n },\n g: {\n id: _util.OPS.setFillGray,\n numArgs: 1,\n variableArgs: false\n },\n RG: {\n id: _util.OPS.setStrokeRGBColor,\n numArgs: 3,\n variableArgs: false\n },\n rg: {\n id: _util.OPS.setFillRGBColor,\n numArgs: 3,\n variableArgs: false\n },\n K: {\n id: _util.OPS.setStrokeCMYKColor,\n numArgs: 4,\n variableArgs: false\n },\n k: {\n id: _util.OPS.setFillCMYKColor,\n numArgs: 4,\n variableArgs: false\n },\n sh: {\n id: _util.OPS.shadingFill,\n numArgs: 1,\n variableArgs: false\n },\n BI: {\n id: _util.OPS.beginInlineImage,\n numArgs: 0,\n variableArgs: false\n },\n ID: {\n id: _util.OPS.beginImageData,\n numArgs: 0,\n variableArgs: false\n },\n EI: {\n id: _util.OPS.endInlineImage,\n numArgs: 1,\n variableArgs: false\n },\n Do: {\n id: _util.OPS.paintXObject,\n numArgs: 1,\n variableArgs: false\n },\n MP: {\n id: _util.OPS.markPoint,\n numArgs: 1,\n variableArgs: false\n },\n DP: {\n id: _util.OPS.markPointProps,\n numArgs: 2,\n variableArgs: false\n },\n BMC: {\n id: _util.OPS.beginMarkedContent,\n numArgs: 1,\n variableArgs: false\n },\n BDC: {\n id: _util.OPS.beginMarkedContentProps,\n numArgs: 2,\n variableArgs: false\n },\n EMC: {\n id: _util.OPS.endMarkedContent,\n numArgs: 0,\n variableArgs: false\n },\n BX: {\n id: _util.OPS.beginCompat,\n numArgs: 0,\n variableArgs: false\n },\n EX: {\n id: _util.OPS.endCompat,\n numArgs: 0,\n variableArgs: false\n },\n BM: null,\n BD: null,\n true: null,\n fa: null,\n fal: null,\n fals: null,\n false: null,\n nu: null,\n nul: null,\n null: null\n });\n }\n static MAX_INVALID_PATH_OPS = 10;\n constructor(stream, xref, stateManager = new StateManager()) {\n this.parser = new _parser.Parser({\n lexer: new _parser.Lexer(stream, EvaluatorPreprocessor.opMap),\n xref\n });\n this.stateManager = stateManager;\n this.nonProcessedArgs = [];\n this._isPathOp = false;\n this._numInvalidPathOPS = 0;\n }\n get savedStatesDepth() {\n return this.stateManager.stateStack.length;\n }\n read(operation) {\n let args = operation.args;\n while (true) {\n const obj = this.parser.getObj();\n if (obj instanceof _primitives.Cmd) {\n const cmd = obj.cmd;\n const opSpec = EvaluatorPreprocessor.opMap[cmd];\n if (!opSpec) {\n (0, _util.warn)(`Unknown command \"${cmd}\".`);\n continue;\n }\n const fn = opSpec.id;\n const numArgs = opSpec.numArgs;\n let argsLength = args !== null ? args.length : 0;\n if (!this._isPathOp) {\n this._numInvalidPathOPS = 0;\n }\n this._isPathOp = fn >= _util.OPS.moveTo && fn <= _util.OPS.endPath;\n if (!opSpec.variableArgs) {\n if (argsLength !== numArgs) {\n const nonProcessedArgs = this.nonProcessedArgs;\n while (argsLength > numArgs) {\n nonProcessedArgs.push(args.shift());\n argsLength--;\n }\n while (argsLength < numArgs && nonProcessedArgs.length !== 0) {\n if (args === null) {\n args = [];\n }\n args.unshift(nonProcessedArgs.pop());\n argsLength++;\n }\n }\n if (argsLength < numArgs) {\n const partialMsg = `command ${cmd}: expected ${numArgs} args, ` + `but received ${argsLength} args.`;\n if (this._isPathOp && ++this._numInvalidPathOPS > EvaluatorPreprocessor.MAX_INVALID_PATH_OPS) {\n throw new _util.FormatError(`Invalid ${partialMsg}`);\n }\n (0, _util.warn)(`Skipping ${partialMsg}`);\n if (args !== null) {\n args.length = 0;\n }\n continue;\n }\n } else if (argsLength > numArgs) {\n (0, _util.info)(`Command ${cmd}: expected [0, ${numArgs}] args, ` + `but received ${argsLength} args.`);\n }\n this.preprocessCommand(fn, args);\n operation.fn = fn;\n operation.args = args;\n return true;\n }\n if (obj === _primitives.EOF) {\n return false;\n }\n if (obj !== null) {\n if (args === null) {\n args = [];\n }\n args.push(obj);\n if (args.length > 33) {\n throw new _util.FormatError(\"Too many arguments\");\n }\n }\n }\n }\n preprocessCommand(fn, args) {\n switch (fn | 0) {\n case _util.OPS.save:\n this.stateManager.save();\n break;\n case _util.OPS.restore:\n this.stateManager.restore();\n break;\n case _util.OPS.transform:\n this.stateManager.transform(args);\n break;\n }\n }\n}\nexports.EvaluatorPreprocessor = EvaluatorPreprocessor;\n\n/***/ }),\n/* 14 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.IdentityCMap = exports.CMapFactory = exports.CMap = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _binary_cmap = __w_pdfjs_require__(15);\nvar _parser = __w_pdfjs_require__(16);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _stream = __w_pdfjs_require__(8);\nconst BUILT_IN_CMAPS = [\"Adobe-GB1-UCS2\", \"Adobe-CNS1-UCS2\", \"Adobe-Japan1-UCS2\", \"Adobe-Korea1-UCS2\", \"78-EUC-H\", \"78-EUC-V\", \"78-H\", \"78-RKSJ-H\", \"78-RKSJ-V\", \"78-V\", \"78ms-RKSJ-H\", \"78ms-RKSJ-V\", \"83pv-RKSJ-H\", \"90ms-RKSJ-H\", \"90ms-RKSJ-V\", \"90msp-RKSJ-H\", \"90msp-RKSJ-V\", \"90pv-RKSJ-H\", \"90pv-RKSJ-V\", \"Add-H\", \"Add-RKSJ-H\", \"Add-RKSJ-V\", \"Add-V\", \"Adobe-CNS1-0\", \"Adobe-CNS1-1\", \"Adobe-CNS1-2\", \"Adobe-CNS1-3\", \"Adobe-CNS1-4\", \"Adobe-CNS1-5\", \"Adobe-CNS1-6\", \"Adobe-GB1-0\", \"Adobe-GB1-1\", \"Adobe-GB1-2\", \"Adobe-GB1-3\", \"Adobe-GB1-4\", \"Adobe-GB1-5\", \"Adobe-Japan1-0\", \"Adobe-Japan1-1\", \"Adobe-Japan1-2\", \"Adobe-Japan1-3\", \"Adobe-Japan1-4\", \"Adobe-Japan1-5\", \"Adobe-Japan1-6\", \"Adobe-Korea1-0\", \"Adobe-Korea1-1\", \"Adobe-Korea1-2\", \"B5-H\", \"B5-V\", \"B5pc-H\", \"B5pc-V\", \"CNS-EUC-H\", \"CNS-EUC-V\", \"CNS1-H\", \"CNS1-V\", \"CNS2-H\", \"CNS2-V\", \"ETHK-B5-H\", \"ETHK-B5-V\", \"ETen-B5-H\", \"ETen-B5-V\", \"ETenms-B5-H\", \"ETenms-B5-V\", \"EUC-H\", \"EUC-V\", \"Ext-H\", \"Ext-RKSJ-H\", \"Ext-RKSJ-V\", \"Ext-V\", \"GB-EUC-H\", \"GB-EUC-V\", \"GB-H\", \"GB-V\", \"GBK-EUC-H\", \"GBK-EUC-V\", \"GBK2K-H\", \"GBK2K-V\", \"GBKp-EUC-H\", \"GBKp-EUC-V\", \"GBT-EUC-H\", \"GBT-EUC-V\", \"GBT-H\", \"GBT-V\", \"GBTpc-EUC-H\", \"GBTpc-EUC-V\", \"GBpc-EUC-H\", \"GBpc-EUC-V\", \"H\", \"HKdla-B5-H\", \"HKdla-B5-V\", \"HKdlb-B5-H\", \"HKdlb-B5-V\", \"HKgccs-B5-H\", \"HKgccs-B5-V\", \"HKm314-B5-H\", \"HKm314-B5-V\", \"HKm471-B5-H\", \"HKm471-B5-V\", \"HKscs-B5-H\", \"HKscs-B5-V\", \"Hankaku\", \"Hiragana\", \"KSC-EUC-H\", \"KSC-EUC-V\", \"KSC-H\", \"KSC-Johab-H\", \"KSC-Johab-V\", \"KSC-V\", \"KSCms-UHC-H\", \"KSCms-UHC-HW-H\", \"KSCms-UHC-HW-V\", \"KSCms-UHC-V\", \"KSCpc-EUC-H\", \"KSCpc-EUC-V\", \"Katakana\", \"NWP-H\", \"NWP-V\", \"RKSJ-H\", \"RKSJ-V\", \"Roman\", \"UniCNS-UCS2-H\", \"UniCNS-UCS2-V\", \"UniCNS-UTF16-H\", \"UniCNS-UTF16-V\", \"UniCNS-UTF32-H\", \"UniCNS-UTF32-V\", \"UniCNS-UTF8-H\", \"UniCNS-UTF8-V\", \"UniGB-UCS2-H\", \"UniGB-UCS2-V\", \"UniGB-UTF16-H\", \"UniGB-UTF16-V\", \"UniGB-UTF32-H\", \"UniGB-UTF32-V\", \"UniGB-UTF8-H\", \"UniGB-UTF8-V\", \"UniJIS-UCS2-H\", \"UniJIS-UCS2-HW-H\", \"UniJIS-UCS2-HW-V\", \"UniJIS-UCS2-V\", \"UniJIS-UTF16-H\", \"UniJIS-UTF16-V\", \"UniJIS-UTF32-H\", \"UniJIS-UTF32-V\", \"UniJIS-UTF8-H\", \"UniJIS-UTF8-V\", \"UniJIS2004-UTF16-H\", \"UniJIS2004-UTF16-V\", \"UniJIS2004-UTF32-H\", \"UniJIS2004-UTF32-V\", \"UniJIS2004-UTF8-H\", \"UniJIS2004-UTF8-V\", \"UniJISPro-UCS2-HW-V\", \"UniJISPro-UCS2-V\", \"UniJISPro-UTF8-V\", \"UniJISX0213-UTF32-H\", \"UniJISX0213-UTF32-V\", \"UniJISX02132004-UTF32-H\", \"UniJISX02132004-UTF32-V\", \"UniKS-UCS2-H\", \"UniKS-UCS2-V\", \"UniKS-UTF16-H\", \"UniKS-UTF16-V\", \"UniKS-UTF32-H\", \"UniKS-UTF32-V\", \"UniKS-UTF8-H\", \"UniKS-UTF8-V\", \"V\", \"WP-Symbol\"];\nconst MAX_MAP_RANGE = 2 ** 24 - 1;\nclass CMap {\n constructor(builtInCMap = false) {\n this.codespaceRanges = [[], [], [], []];\n this.numCodespaceRanges = 0;\n this._map = [];\n this.name = \"\";\n this.vertical = false;\n this.useCMap = null;\n this.builtInCMap = builtInCMap;\n }\n addCodespaceRange(n, low, high) {\n this.codespaceRanges[n - 1].push(low, high);\n this.numCodespaceRanges++;\n }\n mapCidRange(low, high, dstLow) {\n if (high - low > MAX_MAP_RANGE) {\n throw new Error(\"mapCidRange - ignoring data above MAX_MAP_RANGE.\");\n }\n while (low <= high) {\n this._map[low++] = dstLow++;\n }\n }\n mapBfRange(low, high, dstLow) {\n if (high - low > MAX_MAP_RANGE) {\n throw new Error(\"mapBfRange - ignoring data above MAX_MAP_RANGE.\");\n }\n const lastByte = dstLow.length - 1;\n while (low <= high) {\n this._map[low++] = dstLow;\n const nextCharCode = dstLow.charCodeAt(lastByte) + 1;\n if (nextCharCode > 0xff) {\n dstLow = dstLow.substring(0, lastByte - 1) + String.fromCharCode(dstLow.charCodeAt(lastByte - 1) + 1) + \"\\x00\";\n continue;\n }\n dstLow = dstLow.substring(0, lastByte) + String.fromCharCode(nextCharCode);\n }\n }\n mapBfRangeToArray(low, high, array) {\n if (high - low > MAX_MAP_RANGE) {\n throw new Error(\"mapBfRangeToArray - ignoring data above MAX_MAP_RANGE.\");\n }\n const ii = array.length;\n let i = 0;\n while (low <= high && i < ii) {\n this._map[low] = array[i++];\n ++low;\n }\n }\n mapOne(src, dst) {\n this._map[src] = dst;\n }\n lookup(code) {\n return this._map[code];\n }\n contains(code) {\n return this._map[code] !== undefined;\n }\n forEach(callback) {\n const map = this._map;\n const length = map.length;\n if (length <= 0x10000) {\n for (let i = 0; i < length; i++) {\n if (map[i] !== undefined) {\n callback(i, map[i]);\n }\n }\n } else {\n for (const i in map) {\n callback(i, map[i]);\n }\n }\n }\n charCodeOf(value) {\n const map = this._map;\n if (map.length <= 0x10000) {\n return map.indexOf(value);\n }\n for (const charCode in map) {\n if (map[charCode] === value) {\n return charCode | 0;\n }\n }\n return -1;\n }\n getMap() {\n return this._map;\n }\n readCharCode(str, offset, out) {\n let c = 0;\n const codespaceRanges = this.codespaceRanges;\n for (let n = 0, nn = codespaceRanges.length; n < nn; n++) {\n c = (c << 8 | str.charCodeAt(offset + n)) >>> 0;\n const codespaceRange = codespaceRanges[n];\n for (let k = 0, kk = codespaceRange.length; k < kk;) {\n const low = codespaceRange[k++];\n const high = codespaceRange[k++];\n if (c >= low && c <= high) {\n out.charcode = c;\n out.length = n + 1;\n return;\n }\n }\n }\n out.charcode = 0;\n out.length = 1;\n }\n getCharCodeLength(charCode) {\n const codespaceRanges = this.codespaceRanges;\n for (let n = 0, nn = codespaceRanges.length; n < nn; n++) {\n const codespaceRange = codespaceRanges[n];\n for (let k = 0, kk = codespaceRange.length; k < kk;) {\n const low = codespaceRange[k++];\n const high = codespaceRange[k++];\n if (charCode >= low && charCode <= high) {\n return n + 1;\n }\n }\n }\n return 1;\n }\n get length() {\n return this._map.length;\n }\n get isIdentityCMap() {\n if (!(this.name === \"Identity-H\" || this.name === \"Identity-V\")) {\n return false;\n }\n if (this._map.length !== 0x10000) {\n return false;\n }\n for (let i = 0; i < 0x10000; i++) {\n if (this._map[i] !== i) {\n return false;\n }\n }\n return true;\n }\n}\nexports.CMap = CMap;\nclass IdentityCMap extends CMap {\n constructor(vertical, n) {\n super();\n this.vertical = vertical;\n this.addCodespaceRange(n, 0, 0xffff);\n }\n mapCidRange(low, high, dstLow) {\n (0, _util.unreachable)(\"should not call mapCidRange\");\n }\n mapBfRange(low, high, dstLow) {\n (0, _util.unreachable)(\"should not call mapBfRange\");\n }\n mapBfRangeToArray(low, high, array) {\n (0, _util.unreachable)(\"should not call mapBfRangeToArray\");\n }\n mapOne(src, dst) {\n (0, _util.unreachable)(\"should not call mapCidOne\");\n }\n lookup(code) {\n return Number.isInteger(code) && code <= 0xffff ? code : undefined;\n }\n contains(code) {\n return Number.isInteger(code) && code <= 0xffff;\n }\n forEach(callback) {\n for (let i = 0; i <= 0xffff; i++) {\n callback(i, i);\n }\n }\n charCodeOf(value) {\n return Number.isInteger(value) && value <= 0xffff ? value : -1;\n }\n getMap() {\n const map = new Array(0x10000);\n for (let i = 0; i <= 0xffff; i++) {\n map[i] = i;\n }\n return map;\n }\n get length() {\n return 0x10000;\n }\n get isIdentityCMap() {\n (0, _util.unreachable)(\"should not access .isIdentityCMap\");\n }\n}\nexports.IdentityCMap = IdentityCMap;\nfunction strToInt(str) {\n let a = 0;\n for (let i = 0; i < str.length; i++) {\n a = a << 8 | str.charCodeAt(i);\n }\n return a >>> 0;\n}\nfunction expectString(obj) {\n if (typeof obj !== \"string\") {\n throw new _util.FormatError(\"Malformed CMap: expected string.\");\n }\n}\nfunction expectInt(obj) {\n if (!Number.isInteger(obj)) {\n throw new _util.FormatError(\"Malformed CMap: expected int.\");\n }\n}\nfunction parseBfChar(cMap, lexer) {\n while (true) {\n let obj = lexer.getObj();\n if (obj === _primitives.EOF) {\n break;\n }\n if ((0, _primitives.isCmd)(obj, \"endbfchar\")) {\n return;\n }\n expectString(obj);\n const src = strToInt(obj);\n obj = lexer.getObj();\n expectString(obj);\n const dst = obj;\n cMap.mapOne(src, dst);\n }\n}\nfunction parseBfRange(cMap, lexer) {\n while (true) {\n let obj = lexer.getObj();\n if (obj === _primitives.EOF) {\n break;\n }\n if ((0, _primitives.isCmd)(obj, \"endbfrange\")) {\n return;\n }\n expectString(obj);\n const low = strToInt(obj);\n obj = lexer.getObj();\n expectString(obj);\n const high = strToInt(obj);\n obj = lexer.getObj();\n if (Number.isInteger(obj) || typeof obj === \"string\") {\n const dstLow = Number.isInteger(obj) ? String.fromCharCode(obj) : obj;\n cMap.mapBfRange(low, high, dstLow);\n } else if ((0, _primitives.isCmd)(obj, \"[\")) {\n obj = lexer.getObj();\n const array = [];\n while (!(0, _primitives.isCmd)(obj, \"]\") && obj !== _primitives.EOF) {\n array.push(obj);\n obj = lexer.getObj();\n }\n cMap.mapBfRangeToArray(low, high, array);\n } else {\n break;\n }\n }\n throw new _util.FormatError(\"Invalid bf range.\");\n}\nfunction parseCidChar(cMap, lexer) {\n while (true) {\n let obj = lexer.getObj();\n if (obj === _primitives.EOF) {\n break;\n }\n if ((0, _primitives.isCmd)(obj, \"endcidchar\")) {\n return;\n }\n expectString(obj);\n const src = strToInt(obj);\n obj = lexer.getObj();\n expectInt(obj);\n const dst = obj;\n cMap.mapOne(src, dst);\n }\n}\nfunction parseCidRange(cMap, lexer) {\n while (true) {\n let obj = lexer.getObj();\n if (obj === _primitives.EOF) {\n break;\n }\n if ((0, _primitives.isCmd)(obj, \"endcidrange\")) {\n return;\n }\n expectString(obj);\n const low = strToInt(obj);\n obj = lexer.getObj();\n expectString(obj);\n const high = strToInt(obj);\n obj = lexer.getObj();\n expectInt(obj);\n const dstLow = obj;\n cMap.mapCidRange(low, high, dstLow);\n }\n}\nfunction parseCodespaceRange(cMap, lexer) {\n while (true) {\n let obj = lexer.getObj();\n if (obj === _primitives.EOF) {\n break;\n }\n if ((0, _primitives.isCmd)(obj, \"endcodespacerange\")) {\n return;\n }\n if (typeof obj !== \"string\") {\n break;\n }\n const low = strToInt(obj);\n obj = lexer.getObj();\n if (typeof obj !== \"string\") {\n break;\n }\n const high = strToInt(obj);\n cMap.addCodespaceRange(obj.length, low, high);\n }\n throw new _util.FormatError(\"Invalid codespace range.\");\n}\nfunction parseWMode(cMap, lexer) {\n const obj = lexer.getObj();\n if (Number.isInteger(obj)) {\n cMap.vertical = !!obj;\n }\n}\nfunction parseCMapName(cMap, lexer) {\n const obj = lexer.getObj();\n if (obj instanceof _primitives.Name) {\n cMap.name = obj.name;\n }\n}\nasync function parseCMap(cMap, lexer, fetchBuiltInCMap, useCMap) {\n let previous, embeddedUseCMap;\n objLoop: while (true) {\n try {\n const obj = lexer.getObj();\n if (obj === _primitives.EOF) {\n break;\n } else if (obj instanceof _primitives.Name) {\n if (obj.name === \"WMode\") {\n parseWMode(cMap, lexer);\n } else if (obj.name === \"CMapName\") {\n parseCMapName(cMap, lexer);\n }\n previous = obj;\n } else if (obj instanceof _primitives.Cmd) {\n switch (obj.cmd) {\n case \"endcmap\":\n break objLoop;\n case \"usecmap\":\n if (previous instanceof _primitives.Name) {\n embeddedUseCMap = previous.name;\n }\n break;\n case \"begincodespacerange\":\n parseCodespaceRange(cMap, lexer);\n break;\n case \"beginbfchar\":\n parseBfChar(cMap, lexer);\n break;\n case \"begincidchar\":\n parseCidChar(cMap, lexer);\n break;\n case \"beginbfrange\":\n parseBfRange(cMap, lexer);\n break;\n case \"begincidrange\":\n parseCidRange(cMap, lexer);\n break;\n }\n }\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(\"Invalid cMap data: \" + ex);\n continue;\n }\n }\n if (!useCMap && embeddedUseCMap) {\n useCMap = embeddedUseCMap;\n }\n if (useCMap) {\n return extendCMap(cMap, fetchBuiltInCMap, useCMap);\n }\n return cMap;\n}\nasync function extendCMap(cMap, fetchBuiltInCMap, useCMap) {\n cMap.useCMap = await createBuiltInCMap(useCMap, fetchBuiltInCMap);\n if (cMap.numCodespaceRanges === 0) {\n const useCodespaceRanges = cMap.useCMap.codespaceRanges;\n for (let i = 0; i < useCodespaceRanges.length; i++) {\n cMap.codespaceRanges[i] = useCodespaceRanges[i].slice();\n }\n cMap.numCodespaceRanges = cMap.useCMap.numCodespaceRanges;\n }\n cMap.useCMap.forEach(function (key, value) {\n if (!cMap.contains(key)) {\n cMap.mapOne(key, cMap.useCMap.lookup(key));\n }\n });\n return cMap;\n}\nasync function createBuiltInCMap(name, fetchBuiltInCMap) {\n if (name === \"Identity-H\") {\n return new IdentityCMap(false, 2);\n } else if (name === \"Identity-V\") {\n return new IdentityCMap(true, 2);\n }\n if (!BUILT_IN_CMAPS.includes(name)) {\n throw new Error(\"Unknown CMap name: \" + name);\n }\n if (!fetchBuiltInCMap) {\n throw new Error(\"Built-in CMap parameters are not provided.\");\n }\n const {\n cMapData,\n compressionType\n } = await fetchBuiltInCMap(name);\n const cMap = new CMap(true);\n if (compressionType === _util.CMapCompressionType.BINARY) {\n return new _binary_cmap.BinaryCMapReader().process(cMapData, cMap, useCMap => {\n return extendCMap(cMap, fetchBuiltInCMap, useCMap);\n });\n }\n if (compressionType === _util.CMapCompressionType.NONE) {\n const lexer = new _parser.Lexer(new _stream.Stream(cMapData));\n return parseCMap(cMap, lexer, fetchBuiltInCMap, null);\n }\n throw new Error(`Invalid CMap \"compressionType\" value: ${compressionType}`);\n}\nclass CMapFactory {\n static async create({\n encoding,\n fetchBuiltInCMap,\n useCMap\n }) {\n if (encoding instanceof _primitives.Name) {\n return createBuiltInCMap(encoding.name, fetchBuiltInCMap);\n } else if (encoding instanceof _base_stream.BaseStream) {\n const parsedCMap = await parseCMap(new CMap(), new _parser.Lexer(encoding), fetchBuiltInCMap, useCMap);\n if (parsedCMap.isIdentityCMap) {\n return createBuiltInCMap(parsedCMap.name, fetchBuiltInCMap);\n }\n return parsedCMap;\n }\n throw new Error(\"Encoding required.\");\n }\n}\nexports.CMapFactory = CMapFactory;\n\n/***/ }),\n/* 15 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.BinaryCMapReader = void 0;\nvar _util = __w_pdfjs_require__(2);\nfunction hexToInt(a, size) {\n let n = 0;\n for (let i = 0; i <= size; i++) {\n n = n << 8 | a[i];\n }\n return n >>> 0;\n}\nfunction hexToStr(a, size) {\n if (size === 1) {\n return String.fromCharCode(a[0], a[1]);\n }\n if (size === 3) {\n return String.fromCharCode(a[0], a[1], a[2], a[3]);\n }\n return String.fromCharCode(...a.subarray(0, size + 1));\n}\nfunction addHex(a, b, size) {\n let c = 0;\n for (let i = size; i >= 0; i--) {\n c += a[i] + b[i];\n a[i] = c & 255;\n c >>= 8;\n }\n}\nfunction incHex(a, size) {\n let c = 1;\n for (let i = size; i >= 0 && c > 0; i--) {\n c += a[i];\n a[i] = c & 255;\n c >>= 8;\n }\n}\nconst MAX_NUM_SIZE = 16;\nconst MAX_ENCODED_NUM_SIZE = 19;\nclass BinaryCMapStream {\n constructor(data) {\n this.buffer = data;\n this.pos = 0;\n this.end = data.length;\n this.tmpBuf = new Uint8Array(MAX_ENCODED_NUM_SIZE);\n }\n readByte() {\n if (this.pos >= this.end) {\n return -1;\n }\n return this.buffer[this.pos++];\n }\n readNumber() {\n let n = 0;\n let last;\n do {\n const b = this.readByte();\n if (b < 0) {\n throw new _util.FormatError(\"unexpected EOF in bcmap\");\n }\n last = !(b & 0x80);\n n = n << 7 | b & 0x7f;\n } while (!last);\n return n;\n }\n readSigned() {\n const n = this.readNumber();\n return n & 1 ? ~(n >>> 1) : n >>> 1;\n }\n readHex(num, size) {\n num.set(this.buffer.subarray(this.pos, this.pos + size + 1));\n this.pos += size + 1;\n }\n readHexNumber(num, size) {\n let last;\n const stack = this.tmpBuf;\n let sp = 0;\n do {\n const b = this.readByte();\n if (b < 0) {\n throw new _util.FormatError(\"unexpected EOF in bcmap\");\n }\n last = !(b & 0x80);\n stack[sp++] = b & 0x7f;\n } while (!last);\n let i = size,\n buffer = 0,\n bufferSize = 0;\n while (i >= 0) {\n while (bufferSize < 8 && stack.length > 0) {\n buffer |= stack[--sp] << bufferSize;\n bufferSize += 7;\n }\n num[i] = buffer & 255;\n i--;\n buffer >>= 8;\n bufferSize -= 8;\n }\n }\n readHexSigned(num, size) {\n this.readHexNumber(num, size);\n const sign = num[size] & 1 ? 255 : 0;\n let c = 0;\n for (let i = 0; i <= size; i++) {\n c = (c & 1) << 8 | num[i];\n num[i] = c >> 1 ^ sign;\n }\n }\n readString() {\n const len = this.readNumber(),\n buf = new Array(len);\n for (let i = 0; i < len; i++) {\n buf[i] = this.readNumber();\n }\n return String.fromCharCode(...buf);\n }\n}\nclass BinaryCMapReader {\n async process(data, cMap, extend) {\n const stream = new BinaryCMapStream(data);\n const header = stream.readByte();\n cMap.vertical = !!(header & 1);\n let useCMap = null;\n const start = new Uint8Array(MAX_NUM_SIZE);\n const end = new Uint8Array(MAX_NUM_SIZE);\n const char = new Uint8Array(MAX_NUM_SIZE);\n const charCode = new Uint8Array(MAX_NUM_SIZE);\n const tmp = new Uint8Array(MAX_NUM_SIZE);\n let code;\n let b;\n while ((b = stream.readByte()) >= 0) {\n const type = b >> 5;\n if (type === 7) {\n switch (b & 0x1f) {\n case 0:\n stream.readString();\n break;\n case 1:\n useCMap = stream.readString();\n break;\n }\n continue;\n }\n const sequence = !!(b & 0x10);\n const dataSize = b & 15;\n if (dataSize + 1 > MAX_NUM_SIZE) {\n throw new Error(\"BinaryCMapReader.process: Invalid dataSize.\");\n }\n const ucs2DataSize = 1;\n const subitemsCount = stream.readNumber();\n switch (type) {\n case 0:\n stream.readHex(start, dataSize);\n stream.readHexNumber(end, dataSize);\n addHex(end, start, dataSize);\n cMap.addCodespaceRange(dataSize + 1, hexToInt(start, dataSize), hexToInt(end, dataSize));\n for (let i = 1; i < subitemsCount; i++) {\n incHex(end, dataSize);\n stream.readHexNumber(start, dataSize);\n addHex(start, end, dataSize);\n stream.readHexNumber(end, dataSize);\n addHex(end, start, dataSize);\n cMap.addCodespaceRange(dataSize + 1, hexToInt(start, dataSize), hexToInt(end, dataSize));\n }\n break;\n case 1:\n stream.readHex(start, dataSize);\n stream.readHexNumber(end, dataSize);\n addHex(end, start, dataSize);\n stream.readNumber();\n for (let i = 1; i < subitemsCount; i++) {\n incHex(end, dataSize);\n stream.readHexNumber(start, dataSize);\n addHex(start, end, dataSize);\n stream.readHexNumber(end, dataSize);\n addHex(end, start, dataSize);\n stream.readNumber();\n }\n break;\n case 2:\n stream.readHex(char, dataSize);\n code = stream.readNumber();\n cMap.mapOne(hexToInt(char, dataSize), code);\n for (let i = 1; i < subitemsCount; i++) {\n incHex(char, dataSize);\n if (!sequence) {\n stream.readHexNumber(tmp, dataSize);\n addHex(char, tmp, dataSize);\n }\n code = stream.readSigned() + (code + 1);\n cMap.mapOne(hexToInt(char, dataSize), code);\n }\n break;\n case 3:\n stream.readHex(start, dataSize);\n stream.readHexNumber(end, dataSize);\n addHex(end, start, dataSize);\n code = stream.readNumber();\n cMap.mapCidRange(hexToInt(start, dataSize), hexToInt(end, dataSize), code);\n for (let i = 1; i < subitemsCount; i++) {\n incHex(end, dataSize);\n if (!sequence) {\n stream.readHexNumber(start, dataSize);\n addHex(start, end, dataSize);\n } else {\n start.set(end);\n }\n stream.readHexNumber(end, dataSize);\n addHex(end, start, dataSize);\n code = stream.readNumber();\n cMap.mapCidRange(hexToInt(start, dataSize), hexToInt(end, dataSize), code);\n }\n break;\n case 4:\n stream.readHex(char, ucs2DataSize);\n stream.readHex(charCode, dataSize);\n cMap.mapOne(hexToInt(char, ucs2DataSize), hexToStr(charCode, dataSize));\n for (let i = 1; i < subitemsCount; i++) {\n incHex(char, ucs2DataSize);\n if (!sequence) {\n stream.readHexNumber(tmp, ucs2DataSize);\n addHex(char, tmp, ucs2DataSize);\n }\n incHex(charCode, dataSize);\n stream.readHexSigned(tmp, dataSize);\n addHex(charCode, tmp, dataSize);\n cMap.mapOne(hexToInt(char, ucs2DataSize), hexToStr(charCode, dataSize));\n }\n break;\n case 5:\n stream.readHex(start, ucs2DataSize);\n stream.readHexNumber(end, ucs2DataSize);\n addHex(end, start, ucs2DataSize);\n stream.readHex(charCode, dataSize);\n cMap.mapBfRange(hexToInt(start, ucs2DataSize), hexToInt(end, ucs2DataSize), hexToStr(charCode, dataSize));\n for (let i = 1; i < subitemsCount; i++) {\n incHex(end, ucs2DataSize);\n if (!sequence) {\n stream.readHexNumber(start, ucs2DataSize);\n addHex(start, end, ucs2DataSize);\n } else {\n start.set(end);\n }\n stream.readHexNumber(end, ucs2DataSize);\n addHex(end, start, ucs2DataSize);\n stream.readHex(charCode, dataSize);\n cMap.mapBfRange(hexToInt(start, ucs2DataSize), hexToInt(end, ucs2DataSize), hexToStr(charCode, dataSize));\n }\n break;\n default:\n throw new Error(`BinaryCMapReader.process - unknown type: ${type}`);\n }\n }\n if (useCMap) {\n return extend(useCMap);\n }\n return cMap;\n }\n}\nexports.BinaryCMapReader = BinaryCMapReader;\n\n/***/ }),\n/* 16 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Parser = exports.Linearization = exports.Lexer = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _stream = __w_pdfjs_require__(8);\nvar _ascii_85_stream = __w_pdfjs_require__(17);\nvar _ascii_hex_stream = __w_pdfjs_require__(19);\nvar _ccitt_stream = __w_pdfjs_require__(20);\nvar _flate_stream = __w_pdfjs_require__(22);\nvar _jbig2_stream = __w_pdfjs_require__(23);\nvar _jpeg_stream = __w_pdfjs_require__(26);\nvar _jpx_stream = __w_pdfjs_require__(29);\nvar _lzw_stream = __w_pdfjs_require__(31);\nvar _predictor_stream = __w_pdfjs_require__(32);\nvar _run_length_stream = __w_pdfjs_require__(33);\nconst MAX_LENGTH_TO_CACHE = 1000;\nfunction getInlineImageCacheKey(bytes) {\n const strBuf = [],\n ii = bytes.length;\n let i = 0;\n while (i < ii - 1) {\n strBuf.push(bytes[i++] << 8 | bytes[i++]);\n }\n if (i < ii) {\n strBuf.push(bytes[i]);\n }\n return ii + \"_\" + String.fromCharCode.apply(null, strBuf);\n}\nclass Parser {\n constructor({\n lexer,\n xref,\n allowStreams = false,\n recoveryMode = false\n }) {\n this.lexer = lexer;\n this.xref = xref;\n this.allowStreams = allowStreams;\n this.recoveryMode = recoveryMode;\n this.imageCache = Object.create(null);\n this._imageId = 0;\n this.refill();\n }\n refill() {\n this.buf1 = this.lexer.getObj();\n this.buf2 = this.lexer.getObj();\n }\n shift() {\n if (this.buf2 instanceof _primitives.Cmd && this.buf2.cmd === \"ID\") {\n this.buf1 = this.buf2;\n this.buf2 = null;\n } else {\n this.buf1 = this.buf2;\n this.buf2 = this.lexer.getObj();\n }\n }\n tryShift() {\n try {\n this.shift();\n return true;\n } catch (e) {\n if (e instanceof _core_utils.MissingDataException) {\n throw e;\n }\n return false;\n }\n }\n getObj(cipherTransform = null) {\n const buf1 = this.buf1;\n this.shift();\n if (buf1 instanceof _primitives.Cmd) {\n switch (buf1.cmd) {\n case \"BI\":\n return this.makeInlineImage(cipherTransform);\n case \"[\":\n const array = [];\n while (!(0, _primitives.isCmd)(this.buf1, \"]\") && this.buf1 !== _primitives.EOF) {\n array.push(this.getObj(cipherTransform));\n }\n if (this.buf1 === _primitives.EOF) {\n if (this.recoveryMode) {\n return array;\n }\n throw new _core_utils.ParserEOFException(\"End of file inside array.\");\n }\n this.shift();\n return array;\n case \"<<\":\n const dict = new _primitives.Dict(this.xref);\n while (!(0, _primitives.isCmd)(this.buf1, \">>\") && this.buf1 !== _primitives.EOF) {\n if (!(this.buf1 instanceof _primitives.Name)) {\n (0, _util.info)(\"Malformed dictionary: key must be a name object\");\n this.shift();\n continue;\n }\n const key = this.buf1.name;\n this.shift();\n if (this.buf1 === _primitives.EOF) {\n break;\n }\n dict.set(key, this.getObj(cipherTransform));\n }\n if (this.buf1 === _primitives.EOF) {\n if (this.recoveryMode) {\n return dict;\n }\n throw new _core_utils.ParserEOFException(\"End of file inside dictionary.\");\n }\n if ((0, _primitives.isCmd)(this.buf2, \"stream\")) {\n return this.allowStreams ? this.makeStream(dict, cipherTransform) : dict;\n }\n this.shift();\n return dict;\n default:\n return buf1;\n }\n }\n if (Number.isInteger(buf1)) {\n if (Number.isInteger(this.buf1) && (0, _primitives.isCmd)(this.buf2, \"R\")) {\n const ref = _primitives.Ref.get(buf1, this.buf1);\n this.shift();\n this.shift();\n return ref;\n }\n return buf1;\n }\n if (typeof buf1 === \"string\") {\n if (cipherTransform) {\n return cipherTransform.decryptString(buf1);\n }\n return buf1;\n }\n return buf1;\n }\n findDefaultInlineStreamEnd(stream) {\n const E = 0x45,\n I = 0x49,\n SPACE = 0x20,\n LF = 0xa,\n CR = 0xd,\n NUL = 0x0;\n const {\n knownCommands\n } = this.lexer,\n startPos = stream.pos,\n n = 15;\n let state = 0,\n ch,\n maybeEIPos;\n while ((ch = stream.getByte()) !== -1) {\n if (state === 0) {\n state = ch === E ? 1 : 0;\n } else if (state === 1) {\n state = ch === I ? 2 : 0;\n } else {\n if (ch === SPACE || ch === LF || ch === CR) {\n maybeEIPos = stream.pos;\n const followingBytes = stream.peekBytes(n);\n const ii = followingBytes.length;\n if (ii === 0) {\n break;\n }\n for (let i = 0; i < ii; i++) {\n ch = followingBytes[i];\n if (ch === NUL && followingBytes[i + 1] !== NUL) {\n continue;\n }\n if (ch !== LF && ch !== CR && (ch < SPACE || ch > 0x7f)) {\n state = 0;\n break;\n }\n }\n if (state !== 2) {\n continue;\n }\n if (!knownCommands) {\n (0, _util.warn)(\"findDefaultInlineStreamEnd - `lexer.knownCommands` is undefined.\");\n continue;\n }\n const tmpLexer = new Lexer(new _stream.Stream(followingBytes.slice()), knownCommands);\n tmpLexer._hexStringWarn = () => {};\n let numArgs = 0;\n while (true) {\n const nextObj = tmpLexer.getObj();\n if (nextObj === _primitives.EOF) {\n state = 0;\n break;\n }\n if (nextObj instanceof _primitives.Cmd) {\n const knownCommand = knownCommands[nextObj.cmd];\n if (!knownCommand) {\n state = 0;\n break;\n } else if (knownCommand.variableArgs ? numArgs <= knownCommand.numArgs : numArgs === knownCommand.numArgs) {\n break;\n }\n numArgs = 0;\n continue;\n }\n numArgs++;\n }\n if (state === 2) {\n break;\n }\n } else {\n state = 0;\n }\n }\n }\n if (ch === -1) {\n (0, _util.warn)(\"findDefaultInlineStreamEnd: \" + \"Reached the end of the stream without finding a valid EI marker\");\n if (maybeEIPos) {\n (0, _util.warn)('... trying to recover by using the last \"EI\" occurrence.');\n stream.skip(-(stream.pos - maybeEIPos));\n }\n }\n let endOffset = 4;\n stream.skip(-endOffset);\n ch = stream.peekByte();\n stream.skip(endOffset);\n if (!(0, _core_utils.isWhiteSpace)(ch)) {\n endOffset--;\n }\n return stream.pos - endOffset - startPos;\n }\n findDCTDecodeInlineStreamEnd(stream) {\n const startPos = stream.pos;\n let foundEOI = false,\n b,\n markerLength;\n while ((b = stream.getByte()) !== -1) {\n if (b !== 0xff) {\n continue;\n }\n switch (stream.getByte()) {\n case 0x00:\n break;\n case 0xff:\n stream.skip(-1);\n break;\n case 0xd9:\n foundEOI = true;\n break;\n case 0xc0:\n case 0xc1:\n case 0xc2:\n case 0xc3:\n case 0xc5:\n case 0xc6:\n case 0xc7:\n case 0xc9:\n case 0xca:\n case 0xcb:\n case 0xcd:\n case 0xce:\n case 0xcf:\n case 0xc4:\n case 0xcc:\n case 0xda:\n case 0xdb:\n case 0xdc:\n case 0xdd:\n case 0xde:\n case 0xdf:\n case 0xe0:\n case 0xe1:\n case 0xe2:\n case 0xe3:\n case 0xe4:\n case 0xe5:\n case 0xe6:\n case 0xe7:\n case 0xe8:\n case 0xe9:\n case 0xea:\n case 0xeb:\n case 0xec:\n case 0xed:\n case 0xee:\n case 0xef:\n case 0xfe:\n markerLength = stream.getUint16();\n if (markerLength > 2) {\n stream.skip(markerLength - 2);\n } else {\n stream.skip(-2);\n }\n break;\n }\n if (foundEOI) {\n break;\n }\n }\n const length = stream.pos - startPos;\n if (b === -1) {\n (0, _util.warn)(\"Inline DCTDecode image stream: \" + \"EOI marker not found, searching for /EI/ instead.\");\n stream.skip(-length);\n return this.findDefaultInlineStreamEnd(stream);\n }\n this.inlineStreamSkipEI(stream);\n return length;\n }\n findASCII85DecodeInlineStreamEnd(stream) {\n const TILDE = 0x7e,\n GT = 0x3e;\n const startPos = stream.pos;\n let ch;\n while ((ch = stream.getByte()) !== -1) {\n if (ch === TILDE) {\n const tildePos = stream.pos;\n ch = stream.peekByte();\n while ((0, _core_utils.isWhiteSpace)(ch)) {\n stream.skip();\n ch = stream.peekByte();\n }\n if (ch === GT) {\n stream.skip();\n break;\n }\n if (stream.pos > tildePos) {\n const maybeEI = stream.peekBytes(2);\n if (maybeEI[0] === 0x45 && maybeEI[1] === 0x49) {\n break;\n }\n }\n }\n }\n const length = stream.pos - startPos;\n if (ch === -1) {\n (0, _util.warn)(\"Inline ASCII85Decode image stream: \" + \"EOD marker not found, searching for /EI/ instead.\");\n stream.skip(-length);\n return this.findDefaultInlineStreamEnd(stream);\n }\n this.inlineStreamSkipEI(stream);\n return length;\n }\n findASCIIHexDecodeInlineStreamEnd(stream) {\n const GT = 0x3e;\n const startPos = stream.pos;\n let ch;\n while ((ch = stream.getByte()) !== -1) {\n if (ch === GT) {\n break;\n }\n }\n const length = stream.pos - startPos;\n if (ch === -1) {\n (0, _util.warn)(\"Inline ASCIIHexDecode image stream: \" + \"EOD marker not found, searching for /EI/ instead.\");\n stream.skip(-length);\n return this.findDefaultInlineStreamEnd(stream);\n }\n this.inlineStreamSkipEI(stream);\n return length;\n }\n inlineStreamSkipEI(stream) {\n const E = 0x45,\n I = 0x49;\n let state = 0,\n ch;\n while ((ch = stream.getByte()) !== -1) {\n if (state === 0) {\n state = ch === E ? 1 : 0;\n } else if (state === 1) {\n state = ch === I ? 2 : 0;\n } else if (state === 2) {\n break;\n }\n }\n }\n makeInlineImage(cipherTransform) {\n const lexer = this.lexer;\n const stream = lexer.stream;\n const dictMap = Object.create(null);\n let dictLength;\n while (!(0, _primitives.isCmd)(this.buf1, \"ID\") && this.buf1 !== _primitives.EOF) {\n if (!(this.buf1 instanceof _primitives.Name)) {\n throw new _util.FormatError(\"Dictionary key must be a name object\");\n }\n const key = this.buf1.name;\n this.shift();\n if (this.buf1 === _primitives.EOF) {\n break;\n }\n dictMap[key] = this.getObj(cipherTransform);\n }\n if (lexer.beginInlineImagePos !== -1) {\n dictLength = stream.pos - lexer.beginInlineImagePos;\n }\n const filter = this.xref.fetchIfRef(dictMap.F || dictMap.Filter);\n let filterName;\n if (filter instanceof _primitives.Name) {\n filterName = filter.name;\n } else if (Array.isArray(filter)) {\n const filterZero = this.xref.fetchIfRef(filter[0]);\n if (filterZero instanceof _primitives.Name) {\n filterName = filterZero.name;\n }\n }\n const startPos = stream.pos;\n let length;\n switch (filterName) {\n case \"DCT\":\n case \"DCTDecode\":\n length = this.findDCTDecodeInlineStreamEnd(stream);\n break;\n case \"A85\":\n case \"ASCII85Decode\":\n length = this.findASCII85DecodeInlineStreamEnd(stream);\n break;\n case \"AHx\":\n case \"ASCIIHexDecode\":\n length = this.findASCIIHexDecodeInlineStreamEnd(stream);\n break;\n default:\n length = this.findDefaultInlineStreamEnd(stream);\n }\n let cacheKey;\n if (length < MAX_LENGTH_TO_CACHE && dictLength > 0) {\n const initialStreamPos = stream.pos;\n stream.pos = lexer.beginInlineImagePos;\n cacheKey = getInlineImageCacheKey(stream.getBytes(dictLength + length));\n stream.pos = initialStreamPos;\n const cacheEntry = this.imageCache[cacheKey];\n if (cacheEntry !== undefined) {\n this.buf2 = _primitives.Cmd.get(\"EI\");\n this.shift();\n cacheEntry.reset();\n return cacheEntry;\n }\n }\n const dict = new _primitives.Dict(this.xref);\n for (const key in dictMap) {\n dict.set(key, dictMap[key]);\n }\n let imageStream = stream.makeSubStream(startPos, length, dict);\n if (cipherTransform) {\n imageStream = cipherTransform.createStream(imageStream, length);\n }\n imageStream = this.filter(imageStream, dict, length);\n imageStream.dict = dict;\n if (cacheKey !== undefined) {\n imageStream.cacheKey = `inline_img_${++this._imageId}`;\n this.imageCache[cacheKey] = imageStream;\n }\n this.buf2 = _primitives.Cmd.get(\"EI\");\n this.shift();\n return imageStream;\n }\n _findStreamLength(startPos, signature) {\n const {\n stream\n } = this.lexer;\n stream.pos = startPos;\n const SCAN_BLOCK_LENGTH = 2048;\n const signatureLength = signature.length;\n while (stream.pos < stream.end) {\n const scanBytes = stream.peekBytes(SCAN_BLOCK_LENGTH);\n const scanLength = scanBytes.length - signatureLength;\n if (scanLength <= 0) {\n break;\n }\n let pos = 0;\n while (pos < scanLength) {\n let j = 0;\n while (j < signatureLength && scanBytes[pos + j] === signature[j]) {\n j++;\n }\n if (j >= signatureLength) {\n stream.pos += pos;\n return stream.pos - startPos;\n }\n pos++;\n }\n stream.pos += scanLength;\n }\n return -1;\n }\n makeStream(dict, cipherTransform) {\n const lexer = this.lexer;\n let stream = lexer.stream;\n lexer.skipToNextLine();\n const startPos = stream.pos - 1;\n let length = dict.get(\"Length\");\n if (!Number.isInteger(length)) {\n (0, _util.info)(`Bad length \"${length && length.toString()}\" in stream.`);\n length = 0;\n }\n stream.pos = startPos + length;\n lexer.nextChar();\n if (this.tryShift() && (0, _primitives.isCmd)(this.buf2, \"endstream\")) {\n this.shift();\n } else {\n const ENDSTREAM_SIGNATURE = new Uint8Array([0x65, 0x6e, 0x64, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d]);\n let actualLength = this._findStreamLength(startPos, ENDSTREAM_SIGNATURE);\n if (actualLength < 0) {\n const MAX_TRUNCATION = 1;\n for (let i = 1; i <= MAX_TRUNCATION; i++) {\n const end = ENDSTREAM_SIGNATURE.length - i;\n const TRUNCATED_SIGNATURE = ENDSTREAM_SIGNATURE.slice(0, end);\n const maybeLength = this._findStreamLength(startPos, TRUNCATED_SIGNATURE);\n if (maybeLength >= 0) {\n const lastByte = stream.peekBytes(end + 1)[end];\n if (!(0, _core_utils.isWhiteSpace)(lastByte)) {\n break;\n }\n (0, _util.info)(`Found \"${(0, _util.bytesToString)(TRUNCATED_SIGNATURE)}\" when ` + \"searching for endstream command.\");\n actualLength = maybeLength;\n break;\n }\n }\n if (actualLength < 0) {\n throw new _util.FormatError(\"Missing endstream command.\");\n }\n }\n length = actualLength;\n lexer.nextChar();\n this.shift();\n this.shift();\n }\n this.shift();\n stream = stream.makeSubStream(startPos, length, dict);\n if (cipherTransform) {\n stream = cipherTransform.createStream(stream, length);\n }\n stream = this.filter(stream, dict, length);\n stream.dict = dict;\n return stream;\n }\n filter(stream, dict, length) {\n let filter = dict.get(\"F\", \"Filter\");\n let params = dict.get(\"DP\", \"DecodeParms\");\n if (filter instanceof _primitives.Name) {\n if (Array.isArray(params)) {\n (0, _util.warn)(\"/DecodeParms should not be an Array, when /Filter is a Name.\");\n }\n return this.makeFilter(stream, filter.name, length, params);\n }\n let maybeLength = length;\n if (Array.isArray(filter)) {\n const filterArray = filter;\n const paramsArray = params;\n for (let i = 0, ii = filterArray.length; i < ii; ++i) {\n filter = this.xref.fetchIfRef(filterArray[i]);\n if (!(filter instanceof _primitives.Name)) {\n throw new _util.FormatError(`Bad filter name \"${filter}\"`);\n }\n params = null;\n if (Array.isArray(paramsArray) && i in paramsArray) {\n params = this.xref.fetchIfRef(paramsArray[i]);\n }\n stream = this.makeFilter(stream, filter.name, maybeLength, params);\n maybeLength = null;\n }\n }\n return stream;\n }\n makeFilter(stream, name, maybeLength, params) {\n if (maybeLength === 0) {\n (0, _util.warn)(`Empty \"${name}\" stream.`);\n return new _stream.NullStream();\n }\n try {\n switch (name) {\n case \"Fl\":\n case \"FlateDecode\":\n if (params) {\n return new _predictor_stream.PredictorStream(new _flate_stream.FlateStream(stream, maybeLength), maybeLength, params);\n }\n return new _flate_stream.FlateStream(stream, maybeLength);\n case \"LZW\":\n case \"LZWDecode\":\n let earlyChange = 1;\n if (params) {\n if (params.has(\"EarlyChange\")) {\n earlyChange = params.get(\"EarlyChange\");\n }\n return new _predictor_stream.PredictorStream(new _lzw_stream.LZWStream(stream, maybeLength, earlyChange), maybeLength, params);\n }\n return new _lzw_stream.LZWStream(stream, maybeLength, earlyChange);\n case \"DCT\":\n case \"DCTDecode\":\n return new _jpeg_stream.JpegStream(stream, maybeLength, params);\n case \"JPX\":\n case \"JPXDecode\":\n return new _jpx_stream.JpxStream(stream, maybeLength, params);\n case \"A85\":\n case \"ASCII85Decode\":\n return new _ascii_85_stream.Ascii85Stream(stream, maybeLength);\n case \"AHx\":\n case \"ASCIIHexDecode\":\n return new _ascii_hex_stream.AsciiHexStream(stream, maybeLength);\n case \"CCF\":\n case \"CCITTFaxDecode\":\n return new _ccitt_stream.CCITTFaxStream(stream, maybeLength, params);\n case \"RL\":\n case \"RunLengthDecode\":\n return new _run_length_stream.RunLengthStream(stream, maybeLength);\n case \"JBIG2Decode\":\n return new _jbig2_stream.Jbig2Stream(stream, maybeLength, params);\n }\n (0, _util.warn)(`Filter \"${name}\" is not supported.`);\n return stream;\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(`Invalid stream: \"${ex}\"`);\n return new _stream.NullStream();\n }\n }\n}\nexports.Parser = Parser;\nconst specialChars = [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 2, 0, 0, 2, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\nfunction toHexDigit(ch) {\n if (ch >= 0x30 && ch <= 0x39) {\n return ch & 0x0f;\n }\n if (ch >= 0x41 && ch <= 0x46 || ch >= 0x61 && ch <= 0x66) {\n return (ch & 0x0f) + 9;\n }\n return -1;\n}\nclass Lexer {\n constructor(stream, knownCommands = null) {\n this.stream = stream;\n this.nextChar();\n this.strBuf = [];\n this.knownCommands = knownCommands;\n this._hexStringNumWarn = 0;\n this.beginInlineImagePos = -1;\n }\n nextChar() {\n return this.currentChar = this.stream.getByte();\n }\n peekChar() {\n return this.stream.peekByte();\n }\n getNumber() {\n let ch = this.currentChar;\n let eNotation = false;\n let divideBy = 0;\n let sign = 1;\n if (ch === 0x2d) {\n sign = -1;\n ch = this.nextChar();\n if (ch === 0x2d) {\n ch = this.nextChar();\n }\n } else if (ch === 0x2b) {\n ch = this.nextChar();\n }\n if (ch === 0x0a || ch === 0x0d) {\n do {\n ch = this.nextChar();\n } while (ch === 0x0a || ch === 0x0d);\n }\n if (ch === 0x2e) {\n divideBy = 10;\n ch = this.nextChar();\n }\n if (ch < 0x30 || ch > 0x39) {\n const msg = `Invalid number: ${String.fromCharCode(ch)} (charCode ${ch})`;\n if ((0, _core_utils.isWhiteSpace)(ch) || ch === -1) {\n (0, _util.info)(`Lexer.getNumber - \"${msg}\".`);\n return 0;\n }\n throw new _util.FormatError(msg);\n }\n let baseValue = ch - 0x30;\n let powerValue = 0;\n let powerValueSign = 1;\n while ((ch = this.nextChar()) >= 0) {\n if (ch >= 0x30 && ch <= 0x39) {\n const currentDigit = ch - 0x30;\n if (eNotation) {\n powerValue = powerValue * 10 + currentDigit;\n } else {\n if (divideBy !== 0) {\n divideBy *= 10;\n }\n baseValue = baseValue * 10 + currentDigit;\n }\n } else if (ch === 0x2e) {\n if (divideBy === 0) {\n divideBy = 1;\n } else {\n break;\n }\n } else if (ch === 0x2d) {\n (0, _util.warn)(\"Badly formatted number: minus sign in the middle\");\n } else if (ch === 0x45 || ch === 0x65) {\n ch = this.peekChar();\n if (ch === 0x2b || ch === 0x2d) {\n powerValueSign = ch === 0x2d ? -1 : 1;\n this.nextChar();\n } else if (ch < 0x30 || ch > 0x39) {\n break;\n }\n eNotation = true;\n } else {\n break;\n }\n }\n if (divideBy !== 0) {\n baseValue /= divideBy;\n }\n if (eNotation) {\n baseValue *= 10 ** (powerValueSign * powerValue);\n }\n return sign * baseValue;\n }\n getString() {\n let numParen = 1;\n let done = false;\n const strBuf = this.strBuf;\n strBuf.length = 0;\n let ch = this.nextChar();\n while (true) {\n let charBuffered = false;\n switch (ch | 0) {\n case -1:\n (0, _util.warn)(\"Unterminated string\");\n done = true;\n break;\n case 0x28:\n ++numParen;\n strBuf.push(\"(\");\n break;\n case 0x29:\n if (--numParen === 0) {\n this.nextChar();\n done = true;\n } else {\n strBuf.push(\")\");\n }\n break;\n case 0x5c:\n ch = this.nextChar();\n switch (ch) {\n case -1:\n (0, _util.warn)(\"Unterminated string\");\n done = true;\n break;\n case 0x6e:\n strBuf.push(\"\\n\");\n break;\n case 0x72:\n strBuf.push(\"\\r\");\n break;\n case 0x74:\n strBuf.push(\"\\t\");\n break;\n case 0x62:\n strBuf.push(\"\\b\");\n break;\n case 0x66:\n strBuf.push(\"\\f\");\n break;\n case 0x5c:\n case 0x28:\n case 0x29:\n strBuf.push(String.fromCharCode(ch));\n break;\n case 0x30:\n case 0x31:\n case 0x32:\n case 0x33:\n case 0x34:\n case 0x35:\n case 0x36:\n case 0x37:\n let x = ch & 0x0f;\n ch = this.nextChar();\n charBuffered = true;\n if (ch >= 0x30 && ch <= 0x37) {\n x = (x << 3) + (ch & 0x0f);\n ch = this.nextChar();\n if (ch >= 0x30 && ch <= 0x37) {\n charBuffered = false;\n x = (x << 3) + (ch & 0x0f);\n }\n }\n strBuf.push(String.fromCharCode(x));\n break;\n case 0x0d:\n if (this.peekChar() === 0x0a) {\n this.nextChar();\n }\n break;\n case 0x0a:\n break;\n default:\n strBuf.push(String.fromCharCode(ch));\n break;\n }\n break;\n default:\n strBuf.push(String.fromCharCode(ch));\n break;\n }\n if (done) {\n break;\n }\n if (!charBuffered) {\n ch = this.nextChar();\n }\n }\n return strBuf.join(\"\");\n }\n getName() {\n let ch, previousCh;\n const strBuf = this.strBuf;\n strBuf.length = 0;\n while ((ch = this.nextChar()) >= 0 && !specialChars[ch]) {\n if (ch === 0x23) {\n ch = this.nextChar();\n if (specialChars[ch]) {\n (0, _util.warn)(\"Lexer_getName: \" + \"NUMBER SIGN (#) should be followed by a hexadecimal number.\");\n strBuf.push(\"#\");\n break;\n }\n const x = toHexDigit(ch);\n if (x !== -1) {\n previousCh = ch;\n ch = this.nextChar();\n const x2 = toHexDigit(ch);\n if (x2 === -1) {\n (0, _util.warn)(`Lexer_getName: Illegal digit (${String.fromCharCode(ch)}) ` + \"in hexadecimal number.\");\n strBuf.push(\"#\", String.fromCharCode(previousCh));\n if (specialChars[ch]) {\n break;\n }\n strBuf.push(String.fromCharCode(ch));\n continue;\n }\n strBuf.push(String.fromCharCode(x << 4 | x2));\n } else {\n strBuf.push(\"#\", String.fromCharCode(ch));\n }\n } else {\n strBuf.push(String.fromCharCode(ch));\n }\n }\n if (strBuf.length > 127) {\n (0, _util.warn)(`Name token is longer than allowed by the spec: ${strBuf.length}`);\n }\n return _primitives.Name.get(strBuf.join(\"\"));\n }\n _hexStringWarn(ch) {\n const MAX_HEX_STRING_NUM_WARN = 5;\n if (this._hexStringNumWarn++ === MAX_HEX_STRING_NUM_WARN) {\n (0, _util.warn)(\"getHexString - ignoring additional invalid characters.\");\n return;\n }\n if (this._hexStringNumWarn > MAX_HEX_STRING_NUM_WARN) {\n return;\n }\n (0, _util.warn)(`getHexString - ignoring invalid character: ${ch}`);\n }\n getHexString() {\n const strBuf = this.strBuf;\n strBuf.length = 0;\n let ch = this.currentChar;\n let isFirstHex = true;\n let firstDigit, secondDigit;\n this._hexStringNumWarn = 0;\n while (true) {\n if (ch < 0) {\n (0, _util.warn)(\"Unterminated hex string\");\n break;\n } else if (ch === 0x3e) {\n this.nextChar();\n break;\n } else if (specialChars[ch] === 1) {\n ch = this.nextChar();\n continue;\n } else {\n if (isFirstHex) {\n firstDigit = toHexDigit(ch);\n if (firstDigit === -1) {\n this._hexStringWarn(ch);\n ch = this.nextChar();\n continue;\n }\n } else {\n secondDigit = toHexDigit(ch);\n if (secondDigit === -1) {\n this._hexStringWarn(ch);\n ch = this.nextChar();\n continue;\n }\n strBuf.push(String.fromCharCode(firstDigit << 4 | secondDigit));\n }\n isFirstHex = !isFirstHex;\n ch = this.nextChar();\n }\n }\n return strBuf.join(\"\");\n }\n getObj() {\n let comment = false;\n let ch = this.currentChar;\n while (true) {\n if (ch < 0) {\n return _primitives.EOF;\n }\n if (comment) {\n if (ch === 0x0a || ch === 0x0d) {\n comment = false;\n }\n } else if (ch === 0x25) {\n comment = true;\n } else if (specialChars[ch] !== 1) {\n break;\n }\n ch = this.nextChar();\n }\n switch (ch | 0) {\n case 0x30:\n case 0x31:\n case 0x32:\n case 0x33:\n case 0x34:\n case 0x35:\n case 0x36:\n case 0x37:\n case 0x38:\n case 0x39:\n case 0x2b:\n case 0x2d:\n case 0x2e:\n return this.getNumber();\n case 0x28:\n return this.getString();\n case 0x2f:\n return this.getName();\n case 0x5b:\n this.nextChar();\n return _primitives.Cmd.get(\"[\");\n case 0x5d:\n this.nextChar();\n return _primitives.Cmd.get(\"]\");\n case 0x3c:\n ch = this.nextChar();\n if (ch === 0x3c) {\n this.nextChar();\n return _primitives.Cmd.get(\"<<\");\n }\n return this.getHexString();\n case 0x3e:\n ch = this.nextChar();\n if (ch === 0x3e) {\n this.nextChar();\n return _primitives.Cmd.get(\">>\");\n }\n return _primitives.Cmd.get(\">\");\n case 0x7b:\n this.nextChar();\n return _primitives.Cmd.get(\"{\");\n case 0x7d:\n this.nextChar();\n return _primitives.Cmd.get(\"}\");\n case 0x29:\n this.nextChar();\n throw new _util.FormatError(`Illegal character: ${ch}`);\n }\n let str = String.fromCharCode(ch);\n if (ch < 0x20 || ch > 0x7f) {\n const nextCh = this.peekChar();\n if (nextCh >= 0x20 && nextCh <= 0x7f) {\n this.nextChar();\n return _primitives.Cmd.get(str);\n }\n }\n const knownCommands = this.knownCommands;\n let knownCommandFound = knownCommands?.[str] !== undefined;\n while ((ch = this.nextChar()) >= 0 && !specialChars[ch]) {\n const possibleCommand = str + String.fromCharCode(ch);\n if (knownCommandFound && knownCommands[possibleCommand] === undefined) {\n break;\n }\n if (str.length === 128) {\n throw new _util.FormatError(`Command token too long: ${str.length}`);\n }\n str = possibleCommand;\n knownCommandFound = knownCommands?.[str] !== undefined;\n }\n if (str === \"true\") {\n return true;\n }\n if (str === \"false\") {\n return false;\n }\n if (str === \"null\") {\n return null;\n }\n if (str === \"BI\") {\n this.beginInlineImagePos = this.stream.pos;\n }\n return _primitives.Cmd.get(str);\n }\n skipToNextLine() {\n let ch = this.currentChar;\n while (ch >= 0) {\n if (ch === 0x0d) {\n ch = this.nextChar();\n if (ch === 0x0a) {\n this.nextChar();\n }\n break;\n } else if (ch === 0x0a) {\n this.nextChar();\n break;\n }\n ch = this.nextChar();\n }\n }\n}\nexports.Lexer = Lexer;\nclass Linearization {\n static create(stream) {\n function getInt(linDict, name, allowZeroValue = false) {\n const obj = linDict.get(name);\n if (Number.isInteger(obj) && (allowZeroValue ? obj >= 0 : obj > 0)) {\n return obj;\n }\n throw new Error(`The \"${name}\" parameter in the linearization ` + \"dictionary is invalid.\");\n }\n function getHints(linDict) {\n const hints = linDict.get(\"H\");\n let hintsLength;\n if (Array.isArray(hints) && ((hintsLength = hints.length) === 2 || hintsLength === 4)) {\n for (let index = 0; index < hintsLength; index++) {\n const hint = hints[index];\n if (!(Number.isInteger(hint) && hint > 0)) {\n throw new Error(`Hint (${index}) in the linearization dictionary is invalid.`);\n }\n }\n return hints;\n }\n throw new Error(\"Hint array in the linearization dictionary is invalid.\");\n }\n const parser = new Parser({\n lexer: new Lexer(stream),\n xref: null\n });\n const obj1 = parser.getObj();\n const obj2 = parser.getObj();\n const obj3 = parser.getObj();\n const linDict = parser.getObj();\n let obj, length;\n if (!(Number.isInteger(obj1) && Number.isInteger(obj2) && (0, _primitives.isCmd)(obj3, \"obj\") && linDict instanceof _primitives.Dict && typeof (obj = linDict.get(\"Linearized\")) === \"number\" && obj > 0)) {\n return null;\n } else if ((length = getInt(linDict, \"L\")) !== stream.length) {\n throw new Error('The \"L\" parameter in the linearization dictionary ' + \"does not equal the stream length.\");\n }\n return {\n length,\n hints: getHints(linDict),\n objectNumberFirst: getInt(linDict, \"O\"),\n endFirst: getInt(linDict, \"E\"),\n numPages: getInt(linDict, \"N\"),\n mainXRefEntriesOffset: getInt(linDict, \"T\"),\n pageFirst: linDict.has(\"P\") ? getInt(linDict, \"P\", true) : 0\n };\n }\n}\nexports.Linearization = Linearization;\n\n/***/ }),\n/* 17 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Ascii85Stream = void 0;\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _core_utils = __w_pdfjs_require__(3);\nclass Ascii85Stream extends _decode_stream.DecodeStream {\n constructor(str, maybeLength) {\n if (maybeLength) {\n maybeLength *= 0.8;\n }\n super(maybeLength);\n this.str = str;\n this.dict = str.dict;\n this.input = new Uint8Array(5);\n }\n readBlock() {\n const TILDA_CHAR = 0x7e;\n const Z_LOWER_CHAR = 0x7a;\n const EOF = -1;\n const str = this.str;\n let c = str.getByte();\n while ((0, _core_utils.isWhiteSpace)(c)) {\n c = str.getByte();\n }\n if (c === EOF || c === TILDA_CHAR) {\n this.eof = true;\n return;\n }\n const bufferLength = this.bufferLength;\n let buffer, i;\n if (c === Z_LOWER_CHAR) {\n buffer = this.ensureBuffer(bufferLength + 4);\n for (i = 0; i < 4; ++i) {\n buffer[bufferLength + i] = 0;\n }\n this.bufferLength += 4;\n } else {\n const input = this.input;\n input[0] = c;\n for (i = 1; i < 5; ++i) {\n c = str.getByte();\n while ((0, _core_utils.isWhiteSpace)(c)) {\n c = str.getByte();\n }\n input[i] = c;\n if (c === EOF || c === TILDA_CHAR) {\n break;\n }\n }\n buffer = this.ensureBuffer(bufferLength + i - 1);\n this.bufferLength += i - 1;\n if (i < 5) {\n for (; i < 5; ++i) {\n input[i] = 0x21 + 84;\n }\n this.eof = true;\n }\n let t = 0;\n for (i = 0; i < 5; ++i) {\n t = t * 85 + (input[i] - 0x21);\n }\n for (i = 3; i >= 0; --i) {\n buffer[bufferLength + i] = t & 0xff;\n t >>= 8;\n }\n }\n }\n}\nexports.Ascii85Stream = Ascii85Stream;\n\n/***/ }),\n/* 18 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StreamsSequenceStream = exports.DecodeStream = void 0;\nvar _base_stream = __w_pdfjs_require__(5);\nvar _stream = __w_pdfjs_require__(8);\nconst emptyBuffer = new Uint8Array(0);\nclass DecodeStream extends _base_stream.BaseStream {\n constructor(maybeMinBufferLength) {\n super();\n this._rawMinBufferLength = maybeMinBufferLength || 0;\n this.pos = 0;\n this.bufferLength = 0;\n this.eof = false;\n this.buffer = emptyBuffer;\n this.minBufferLength = 512;\n if (maybeMinBufferLength) {\n while (this.minBufferLength < maybeMinBufferLength) {\n this.minBufferLength *= 2;\n }\n }\n }\n get isEmpty() {\n while (!this.eof && this.bufferLength === 0) {\n this.readBlock();\n }\n return this.bufferLength === 0;\n }\n ensureBuffer(requested) {\n const buffer = this.buffer;\n if (requested <= buffer.byteLength) {\n return buffer;\n }\n let size = this.minBufferLength;\n while (size < requested) {\n size *= 2;\n }\n const buffer2 = new Uint8Array(size);\n buffer2.set(buffer);\n return this.buffer = buffer2;\n }\n getByte() {\n const pos = this.pos;\n while (this.bufferLength <= pos) {\n if (this.eof) {\n return -1;\n }\n this.readBlock();\n }\n return this.buffer[this.pos++];\n }\n getBytes(length) {\n const pos = this.pos;\n let end;\n if (length) {\n this.ensureBuffer(pos + length);\n end = pos + length;\n while (!this.eof && this.bufferLength < end) {\n this.readBlock();\n }\n const bufEnd = this.bufferLength;\n if (end > bufEnd) {\n end = bufEnd;\n }\n } else {\n while (!this.eof) {\n this.readBlock();\n }\n end = this.bufferLength;\n }\n this.pos = end;\n return this.buffer.subarray(pos, end);\n }\n reset() {\n this.pos = 0;\n }\n makeSubStream(start, length, dict = null) {\n if (length === undefined) {\n while (!this.eof) {\n this.readBlock();\n }\n } else {\n const end = start + length;\n while (this.bufferLength <= end && !this.eof) {\n this.readBlock();\n }\n }\n return new _stream.Stream(this.buffer, start, length, dict);\n }\n getBaseStreams() {\n return this.str ? this.str.getBaseStreams() : null;\n }\n}\nexports.DecodeStream = DecodeStream;\nclass StreamsSequenceStream extends DecodeStream {\n constructor(streams, onError = null) {\n let maybeLength = 0;\n for (const stream of streams) {\n maybeLength += stream instanceof DecodeStream ? stream._rawMinBufferLength : stream.length;\n }\n super(maybeLength);\n this.streams = streams;\n this._onError = onError;\n }\n readBlock() {\n const streams = this.streams;\n if (streams.length === 0) {\n this.eof = true;\n return;\n }\n const stream = streams.shift();\n let chunk;\n try {\n chunk = stream.getBytes();\n } catch (reason) {\n if (this._onError) {\n this._onError(reason, stream.dict?.objId);\n return;\n }\n throw reason;\n }\n const bufferLength = this.bufferLength;\n const newLength = bufferLength + chunk.length;\n const buffer = this.ensureBuffer(newLength);\n buffer.set(chunk, bufferLength);\n this.bufferLength = newLength;\n }\n getBaseStreams() {\n const baseStreamsBuf = [];\n for (const stream of this.streams) {\n const baseStreams = stream.getBaseStreams();\n if (baseStreams) {\n baseStreamsBuf.push(...baseStreams);\n }\n }\n return baseStreamsBuf.length > 0 ? baseStreamsBuf : null;\n }\n}\nexports.StreamsSequenceStream = StreamsSequenceStream;\n\n/***/ }),\n/* 19 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.AsciiHexStream = void 0;\nvar _decode_stream = __w_pdfjs_require__(18);\nclass AsciiHexStream extends _decode_stream.DecodeStream {\n constructor(str, maybeLength) {\n if (maybeLength) {\n maybeLength *= 0.5;\n }\n super(maybeLength);\n this.str = str;\n this.dict = str.dict;\n this.firstDigit = -1;\n }\n readBlock() {\n const UPSTREAM_BLOCK_SIZE = 8000;\n const bytes = this.str.getBytes(UPSTREAM_BLOCK_SIZE);\n if (!bytes.length) {\n this.eof = true;\n return;\n }\n const maxDecodeLength = bytes.length + 1 >> 1;\n const buffer = this.ensureBuffer(this.bufferLength + maxDecodeLength);\n let bufferLength = this.bufferLength;\n let firstDigit = this.firstDigit;\n for (const ch of bytes) {\n let digit;\n if (ch >= 0x30 && ch <= 0x39) {\n digit = ch & 0x0f;\n } else if (ch >= 0x41 && ch <= 0x46 || ch >= 0x61 && ch <= 0x66) {\n digit = (ch & 0x0f) + 9;\n } else if (ch === 0x3e) {\n this.eof = true;\n break;\n } else {\n continue;\n }\n if (firstDigit < 0) {\n firstDigit = digit;\n } else {\n buffer[bufferLength++] = firstDigit << 4 | digit;\n firstDigit = -1;\n }\n }\n if (firstDigit >= 0 && this.eof) {\n buffer[bufferLength++] = firstDigit << 4;\n firstDigit = -1;\n }\n this.firstDigit = firstDigit;\n this.bufferLength = bufferLength;\n }\n}\nexports.AsciiHexStream = AsciiHexStream;\n\n/***/ }),\n/* 20 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CCITTFaxStream = void 0;\nvar _ccitt = __w_pdfjs_require__(21);\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _primitives = __w_pdfjs_require__(4);\nclass CCITTFaxStream extends _decode_stream.DecodeStream {\n constructor(str, maybeLength, params) {\n super(maybeLength);\n this.str = str;\n this.dict = str.dict;\n if (!(params instanceof _primitives.Dict)) {\n params = _primitives.Dict.empty;\n }\n const source = {\n next() {\n return str.getByte();\n }\n };\n this.ccittFaxDecoder = new _ccitt.CCITTFaxDecoder(source, {\n K: params.get(\"K\"),\n EndOfLine: params.get(\"EndOfLine\"),\n EncodedByteAlign: params.get(\"EncodedByteAlign\"),\n Columns: params.get(\"Columns\"),\n Rows: params.get(\"Rows\"),\n EndOfBlock: params.get(\"EndOfBlock\"),\n BlackIs1: params.get(\"BlackIs1\")\n });\n }\n readBlock() {\n while (!this.eof) {\n const c = this.ccittFaxDecoder.readNextChar();\n if (c === -1) {\n this.eof = true;\n return;\n }\n this.ensureBuffer(this.bufferLength + 1);\n this.buffer[this.bufferLength++] = c;\n }\n }\n}\nexports.CCITTFaxStream = CCITTFaxStream;\n\n/***/ }),\n/* 21 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CCITTFaxDecoder = void 0;\nvar _util = __w_pdfjs_require__(2);\nconst ccittEOL = -2;\nconst ccittEOF = -1;\nconst twoDimPass = 0;\nconst twoDimHoriz = 1;\nconst twoDimVert0 = 2;\nconst twoDimVertR1 = 3;\nconst twoDimVertL1 = 4;\nconst twoDimVertR2 = 5;\nconst twoDimVertL2 = 6;\nconst twoDimVertR3 = 7;\nconst twoDimVertL3 = 8;\nconst twoDimTable = [[-1, -1], [-1, -1], [7, twoDimVertL3], [7, twoDimVertR3], [6, twoDimVertL2], [6, twoDimVertL2], [6, twoDimVertR2], [6, twoDimVertR2], [4, twoDimPass], [4, twoDimPass], [4, twoDimPass], [4, twoDimPass], [4, twoDimPass], [4, twoDimPass], [4, twoDimPass], [4, twoDimPass], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimHoriz], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertL1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [3, twoDimVertR1], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0], [1, twoDimVert0]];\nconst whiteTable1 = [[-1, -1], [12, ccittEOL], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [11, 1792], [11, 1792], [12, 1984], [12, 2048], [12, 2112], [12, 2176], [12, 2240], [12, 2304], [11, 1856], [11, 1856], [11, 1920], [11, 1920], [12, 2368], [12, 2432], [12, 2496], [12, 2560]];\nconst whiteTable2 = [[-1, -1], [-1, -1], [-1, -1], [-1, -1], [8, 29], [8, 29], [8, 30], [8, 30], [8, 45], [8, 45], [8, 46], [8, 46], [7, 22], [7, 22], [7, 22], [7, 22], [7, 23], [7, 23], [7, 23], [7, 23], [8, 47], [8, 47], [8, 48], [8, 48], [6, 13], [6, 13], [6, 13], [6, 13], [6, 13], [6, 13], [6, 13], [6, 13], [7, 20], [7, 20], [7, 20], [7, 20], [8, 33], [8, 33], [8, 34], [8, 34], [8, 35], [8, 35], [8, 36], [8, 36], [8, 37], [8, 37], [8, 38], [8, 38], [7, 19], [7, 19], [7, 19], [7, 19], [8, 31], [8, 31], [8, 32], [8, 32], [6, 1], [6, 1], [6, 1], [6, 1], [6, 1], [6, 1], [6, 1], [6, 1], [6, 12], [6, 12], [6, 12], [6, 12], [6, 12], [6, 12], [6, 12], [6, 12], [8, 53], [8, 53], [8, 54], [8, 54], [7, 26], [7, 26], [7, 26], [7, 26], [8, 39], [8, 39], [8, 40], [8, 40], [8, 41], [8, 41], [8, 42], [8, 42], [8, 43], [8, 43], [8, 44], [8, 44], [7, 21], [7, 21], [7, 21], [7, 21], [7, 28], [7, 28], [7, 28], [7, 28], [8, 61], [8, 61], [8, 62], [8, 62], [8, 63], [8, 63], [8, 0], [8, 0], [8, 320], [8, 320], [8, 384], [8, 384], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 10], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [5, 11], [7, 27], [7, 27], [7, 27], [7, 27], [8, 59], [8, 59], [8, 60], [8, 60], [9, 1472], [9, 1536], [9, 1600], [9, 1728], [7, 18], [7, 18], [7, 18], [7, 18], [7, 24], [7, 24], [7, 24], [7, 24], [8, 49], [8, 49], [8, 50], [8, 50], [8, 51], [8, 51], [8, 52], [8, 52], [7, 25], [7, 25], [7, 25], [7, 25], [8, 55], [8, 55], [8, 56], [8, 56], [8, 57], [8, 57], [8, 58], [8, 58], [6, 192], [6, 192], [6, 192], [6, 192], [6, 192], [6, 192], [6, 192], [6, 192], [6, 1664], [6, 1664], [6, 1664], [6, 1664], [6, 1664], [6, 1664], [6, 1664], [6, 1664], [8, 448], [8, 448], [8, 512], [8, 512], [9, 704], [9, 768], [8, 640], [8, 640], [8, 576], [8, 576], [9, 832], [9, 896], [9, 960], [9, 1024], [9, 1088], [9, 1152], [9, 1216], [9, 1280], [9, 1344], [9, 1408], [7, 256], [7, 256], [7, 256], [7, 256], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 2], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [4, 3], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 128], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 8], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [5, 9], [6, 16], [6, 16], [6, 16], [6, 16], [6, 16], [6, 16], [6, 16], [6, 16], [6, 17], [6, 17], [6, 17], [6, 17], [6, 17], [6, 17], [6, 17], [6, 17], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 4], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [4, 5], [6, 14], [6, 14], [6, 14], [6, 14], [6, 14], [6, 14], [6, 14], [6, 14], [6, 15], [6, 15], [6, 15], [6, 15], [6, 15], [6, 15], [6, 15], [6, 15], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [5, 64], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 6], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7], [4, 7]];\nconst blackTable1 = [[-1, -1], [-1, -1], [12, ccittEOL], [12, ccittEOL], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [-1, -1], [11, 1792], [11, 1792], [11, 1792], [11, 1792], [12, 1984], [12, 1984], [12, 2048], [12, 2048], [12, 2112], [12, 2112], [12, 2176], [12, 2176], [12, 2240], [12, 2240], [12, 2304], [12, 2304], [11, 1856], [11, 1856], [11, 1856], [11, 1856], [11, 1920], [11, 1920], [11, 1920], [11, 1920], [12, 2368], [12, 2368], [12, 2432], [12, 2432], [12, 2496], [12, 2496], [12, 2560], [12, 2560], [10, 18], [10, 18], [10, 18], [10, 18], [10, 18], [10, 18], [10, 18], [10, 18], [12, 52], [12, 52], [13, 640], [13, 704], [13, 768], [13, 832], [12, 55], [12, 55], [12, 56], [12, 56], [13, 1280], [13, 1344], [13, 1408], [13, 1472], [12, 59], [12, 59], [12, 60], [12, 60], [13, 1536], [13, 1600], [11, 24], [11, 24], [11, 24], [11, 24], [11, 25], [11, 25], [11, 25], [11, 25], [13, 1664], [13, 1728], [12, 320], [12, 320], [12, 384], [12, 384], [12, 448], [12, 448], [13, 512], [13, 576], [12, 53], [12, 53], [12, 54], [12, 54], [13, 896], [13, 960], [13, 1024], [13, 1088], [13, 1152], [13, 1216], [10, 64], [10, 64], [10, 64], [10, 64], [10, 64], [10, 64], [10, 64], [10, 64]];\nconst blackTable2 = [[8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [8, 13], [11, 23], [11, 23], [12, 50], [12, 51], [12, 44], [12, 45], [12, 46], [12, 47], [12, 57], [12, 58], [12, 61], [12, 256], [10, 16], [10, 16], [10, 16], [10, 16], [10, 17], [10, 17], [10, 17], [10, 17], [12, 48], [12, 49], [12, 62], [12, 63], [12, 30], [12, 31], [12, 32], [12, 33], [12, 40], [12, 41], [11, 22], [11, 22], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [8, 14], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 10], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [7, 11], [9, 15], [9, 15], [9, 15], [9, 15], [9, 15], [9, 15], [9, 15], [9, 15], [12, 128], [12, 192], [12, 26], [12, 27], [12, 28], [12, 29], [11, 19], [11, 19], [11, 20], [11, 20], [12, 34], [12, 35], [12, 36], [12, 37], [12, 38], [12, 39], [11, 21], [11, 21], [12, 42], [12, 43], [10, 0], [10, 0], [10, 0], [10, 0], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12], [7, 12]];\nconst blackTable3 = [[-1, -1], [-1, -1], [-1, -1], [-1, -1], [6, 9], [6, 8], [5, 7], [5, 7], [4, 6], [4, 6], [4, 6], [4, 6], [4, 5], [4, 5], [4, 5], [4, 5], [3, 1], [3, 1], [3, 1], [3, 1], [3, 1], [3, 1], [3, 1], [3, 1], [3, 4], [3, 4], [3, 4], [3, 4], [3, 4], [3, 4], [3, 4], [3, 4], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 3], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2]];\nclass CCITTFaxDecoder {\n constructor(source, options = {}) {\n if (!source || typeof source.next !== \"function\") {\n throw new Error('CCITTFaxDecoder - invalid \"source\" parameter.');\n }\n this.source = source;\n this.eof = false;\n this.encoding = options.K || 0;\n this.eoline = options.EndOfLine || false;\n this.byteAlign = options.EncodedByteAlign || false;\n this.columns = options.Columns || 1728;\n this.rows = options.Rows || 0;\n this.eoblock = options.EndOfBlock ?? true;\n this.black = options.BlackIs1 || false;\n this.codingLine = new Uint32Array(this.columns + 1);\n this.refLine = new Uint32Array(this.columns + 2);\n this.codingLine[0] = this.columns;\n this.codingPos = 0;\n this.row = 0;\n this.nextLine2D = this.encoding < 0;\n this.inputBits = 0;\n this.inputBuf = 0;\n this.outputBits = 0;\n this.rowsDone = false;\n let code1;\n while ((code1 = this._lookBits(12)) === 0) {\n this._eatBits(1);\n }\n if (code1 === 1) {\n this._eatBits(12);\n }\n if (this.encoding > 0) {\n this.nextLine2D = !this._lookBits(1);\n this._eatBits(1);\n }\n }\n readNextChar() {\n if (this.eof) {\n return -1;\n }\n const refLine = this.refLine;\n const codingLine = this.codingLine;\n const columns = this.columns;\n let refPos, blackPixels, bits, i;\n if (this.outputBits === 0) {\n if (this.rowsDone) {\n this.eof = true;\n }\n if (this.eof) {\n return -1;\n }\n this.err = false;\n let code1, code2, code3;\n if (this.nextLine2D) {\n for (i = 0; codingLine[i] < columns; ++i) {\n refLine[i] = codingLine[i];\n }\n refLine[i++] = columns;\n refLine[i] = columns;\n codingLine[0] = 0;\n this.codingPos = 0;\n refPos = 0;\n blackPixels = 0;\n while (codingLine[this.codingPos] < columns) {\n code1 = this._getTwoDimCode();\n switch (code1) {\n case twoDimPass:\n this._addPixels(refLine[refPos + 1], blackPixels);\n if (refLine[refPos + 1] < columns) {\n refPos += 2;\n }\n break;\n case twoDimHoriz:\n code1 = code2 = 0;\n if (blackPixels) {\n do {\n code1 += code3 = this._getBlackCode();\n } while (code3 >= 64);\n do {\n code2 += code3 = this._getWhiteCode();\n } while (code3 >= 64);\n } else {\n do {\n code1 += code3 = this._getWhiteCode();\n } while (code3 >= 64);\n do {\n code2 += code3 = this._getBlackCode();\n } while (code3 >= 64);\n }\n this._addPixels(codingLine[this.codingPos] + code1, blackPixels);\n if (codingLine[this.codingPos] < columns) {\n this._addPixels(codingLine[this.codingPos] + code2, blackPixels ^ 1);\n }\n while (refLine[refPos] <= codingLine[this.codingPos] && refLine[refPos] < columns) {\n refPos += 2;\n }\n break;\n case twoDimVertR3:\n this._addPixels(refLine[refPos] + 3, blackPixels);\n blackPixels ^= 1;\n if (codingLine[this.codingPos] < columns) {\n ++refPos;\n while (refLine[refPos] <= codingLine[this.codingPos] && refLine[refPos] < columns) {\n refPos += 2;\n }\n }\n break;\n case twoDimVertR2:\n this._addPixels(refLine[refPos] + 2, blackPixels);\n blackPixels ^= 1;\n if (codingLine[this.codingPos] < columns) {\n ++refPos;\n while (refLine[refPos] <= codingLine[this.codingPos] && refLine[refPos] < columns) {\n refPos += 2;\n }\n }\n break;\n case twoDimVertR1:\n this._addPixels(refLine[refPos] + 1, blackPixels);\n blackPixels ^= 1;\n if (codingLine[this.codingPos] < columns) {\n ++refPos;\n while (refLine[refPos] <= codingLine[this.codingPos] && refLine[refPos] < columns) {\n refPos += 2;\n }\n }\n break;\n case twoDimVert0:\n this._addPixels(refLine[refPos], blackPixels);\n blackPixels ^= 1;\n if (codingLine[this.codingPos] < columns) {\n ++refPos;\n while (refLine[refPos] <= codingLine[this.codingPos] && refLine[refPos] < columns) {\n refPos += 2;\n }\n }\n break;\n case twoDimVertL3:\n this._addPixelsNeg(refLine[refPos] - 3, blackPixels);\n blackPixels ^= 1;\n if (codingLine[this.codingPos] < columns) {\n if (refPos > 0) {\n --refPos;\n } else {\n ++refPos;\n }\n while (refLine[refPos] <= codingLine[this.codingPos] && refLine[refPos] < columns) {\n refPos += 2;\n }\n }\n break;\n case twoDimVertL2:\n this._addPixelsNeg(refLine[refPos] - 2, blackPixels);\n blackPixels ^= 1;\n if (codingLine[this.codingPos] < columns) {\n if (refPos > 0) {\n --refPos;\n } else {\n ++refPos;\n }\n while (refLine[refPos] <= codingLine[this.codingPos] && refLine[refPos] < columns) {\n refPos += 2;\n }\n }\n break;\n case twoDimVertL1:\n this._addPixelsNeg(refLine[refPos] - 1, blackPixels);\n blackPixels ^= 1;\n if (codingLine[this.codingPos] < columns) {\n if (refPos > 0) {\n --refPos;\n } else {\n ++refPos;\n }\n while (refLine[refPos] <= codingLine[this.codingPos] && refLine[refPos] < columns) {\n refPos += 2;\n }\n }\n break;\n case ccittEOF:\n this._addPixels(columns, 0);\n this.eof = true;\n break;\n default:\n (0, _util.info)(\"bad 2d code\");\n this._addPixels(columns, 0);\n this.err = true;\n }\n }\n } else {\n codingLine[0] = 0;\n this.codingPos = 0;\n blackPixels = 0;\n while (codingLine[this.codingPos] < columns) {\n code1 = 0;\n if (blackPixels) {\n do {\n code1 += code3 = this._getBlackCode();\n } while (code3 >= 64);\n } else {\n do {\n code1 += code3 = this._getWhiteCode();\n } while (code3 >= 64);\n }\n this._addPixels(codingLine[this.codingPos] + code1, blackPixels);\n blackPixels ^= 1;\n }\n }\n let gotEOL = false;\n if (this.byteAlign) {\n this.inputBits &= ~7;\n }\n if (!this.eoblock && this.row === this.rows - 1) {\n this.rowsDone = true;\n } else {\n code1 = this._lookBits(12);\n if (this.eoline) {\n while (code1 !== ccittEOF && code1 !== 1) {\n this._eatBits(1);\n code1 = this._lookBits(12);\n }\n } else {\n while (code1 === 0) {\n this._eatBits(1);\n code1 = this._lookBits(12);\n }\n }\n if (code1 === 1) {\n this._eatBits(12);\n gotEOL = true;\n } else if (code1 === ccittEOF) {\n this.eof = true;\n }\n }\n if (!this.eof && this.encoding > 0 && !this.rowsDone) {\n this.nextLine2D = !this._lookBits(1);\n this._eatBits(1);\n }\n if (this.eoblock && gotEOL && this.byteAlign) {\n code1 = this._lookBits(12);\n if (code1 === 1) {\n this._eatBits(12);\n if (this.encoding > 0) {\n this._lookBits(1);\n this._eatBits(1);\n }\n if (this.encoding >= 0) {\n for (i = 0; i < 4; ++i) {\n code1 = this._lookBits(12);\n if (code1 !== 1) {\n (0, _util.info)(\"bad rtc code: \" + code1);\n }\n this._eatBits(12);\n if (this.encoding > 0) {\n this._lookBits(1);\n this._eatBits(1);\n }\n }\n }\n this.eof = true;\n }\n } else if (this.err && this.eoline) {\n while (true) {\n code1 = this._lookBits(13);\n if (code1 === ccittEOF) {\n this.eof = true;\n return -1;\n }\n if (code1 >> 1 === 1) {\n break;\n }\n this._eatBits(1);\n }\n this._eatBits(12);\n if (this.encoding > 0) {\n this._eatBits(1);\n this.nextLine2D = !(code1 & 1);\n }\n }\n this.outputBits = codingLine[0] > 0 ? codingLine[this.codingPos = 0] : codingLine[this.codingPos = 1];\n this.row++;\n }\n let c;\n if (this.outputBits >= 8) {\n c = this.codingPos & 1 ? 0 : 0xff;\n this.outputBits -= 8;\n if (this.outputBits === 0 && codingLine[this.codingPos] < columns) {\n this.codingPos++;\n this.outputBits = codingLine[this.codingPos] - codingLine[this.codingPos - 1];\n }\n } else {\n bits = 8;\n c = 0;\n do {\n if (typeof this.outputBits !== \"number\") {\n throw new _util.FormatError('Invalid /CCITTFaxDecode data, \"outputBits\" must be a number.');\n }\n if (this.outputBits > bits) {\n c <<= bits;\n if (!(this.codingPos & 1)) {\n c |= 0xff >> 8 - bits;\n }\n this.outputBits -= bits;\n bits = 0;\n } else {\n c <<= this.outputBits;\n if (!(this.codingPos & 1)) {\n c |= 0xff >> 8 - this.outputBits;\n }\n bits -= this.outputBits;\n this.outputBits = 0;\n if (codingLine[this.codingPos] < columns) {\n this.codingPos++;\n this.outputBits = codingLine[this.codingPos] - codingLine[this.codingPos - 1];\n } else if (bits > 0) {\n c <<= bits;\n bits = 0;\n }\n }\n } while (bits);\n }\n if (this.black) {\n c ^= 0xff;\n }\n return c;\n }\n _addPixels(a1, blackPixels) {\n const codingLine = this.codingLine;\n let codingPos = this.codingPos;\n if (a1 > codingLine[codingPos]) {\n if (a1 > this.columns) {\n (0, _util.info)(\"row is wrong length\");\n this.err = true;\n a1 = this.columns;\n }\n if (codingPos & 1 ^ blackPixels) {\n ++codingPos;\n }\n codingLine[codingPos] = a1;\n }\n this.codingPos = codingPos;\n }\n _addPixelsNeg(a1, blackPixels) {\n const codingLine = this.codingLine;\n let codingPos = this.codingPos;\n if (a1 > codingLine[codingPos]) {\n if (a1 > this.columns) {\n (0, _util.info)(\"row is wrong length\");\n this.err = true;\n a1 = this.columns;\n }\n if (codingPos & 1 ^ blackPixels) {\n ++codingPos;\n }\n codingLine[codingPos] = a1;\n } else if (a1 < codingLine[codingPos]) {\n if (a1 < 0) {\n (0, _util.info)(\"invalid code\");\n this.err = true;\n a1 = 0;\n }\n while (codingPos > 0 && a1 < codingLine[codingPos - 1]) {\n --codingPos;\n }\n codingLine[codingPos] = a1;\n }\n this.codingPos = codingPos;\n }\n _findTableCode(start, end, table, limit) {\n const limitValue = limit || 0;\n for (let i = start; i <= end; ++i) {\n let code = this._lookBits(i);\n if (code === ccittEOF) {\n return [true, 1, false];\n }\n if (i < end) {\n code <<= end - i;\n }\n if (!limitValue || code >= limitValue) {\n const p = table[code - limitValue];\n if (p[0] === i) {\n this._eatBits(i);\n return [true, p[1], true];\n }\n }\n }\n return [false, 0, false];\n }\n _getTwoDimCode() {\n let code = 0;\n let p;\n if (this.eoblock) {\n code = this._lookBits(7);\n p = twoDimTable[code];\n if (p?.[0] > 0) {\n this._eatBits(p[0]);\n return p[1];\n }\n } else {\n const result = this._findTableCode(1, 7, twoDimTable);\n if (result[0] && result[2]) {\n return result[1];\n }\n }\n (0, _util.info)(\"Bad two dim code\");\n return ccittEOF;\n }\n _getWhiteCode() {\n let code = 0;\n let p;\n if (this.eoblock) {\n code = this._lookBits(12);\n if (code === ccittEOF) {\n return 1;\n }\n p = code >> 5 === 0 ? whiteTable1[code] : whiteTable2[code >> 3];\n if (p[0] > 0) {\n this._eatBits(p[0]);\n return p[1];\n }\n } else {\n let result = this._findTableCode(1, 9, whiteTable2);\n if (result[0]) {\n return result[1];\n }\n result = this._findTableCode(11, 12, whiteTable1);\n if (result[0]) {\n return result[1];\n }\n }\n (0, _util.info)(\"bad white code\");\n this._eatBits(1);\n return 1;\n }\n _getBlackCode() {\n let code, p;\n if (this.eoblock) {\n code = this._lookBits(13);\n if (code === ccittEOF) {\n return 1;\n }\n if (code >> 7 === 0) {\n p = blackTable1[code];\n } else if (code >> 9 === 0 && code >> 7 !== 0) {\n p = blackTable2[(code >> 1) - 64];\n } else {\n p = blackTable3[code >> 7];\n }\n if (p[0] > 0) {\n this._eatBits(p[0]);\n return p[1];\n }\n } else {\n let result = this._findTableCode(2, 6, blackTable3);\n if (result[0]) {\n return result[1];\n }\n result = this._findTableCode(7, 12, blackTable2, 64);\n if (result[0]) {\n return result[1];\n }\n result = this._findTableCode(10, 13, blackTable1);\n if (result[0]) {\n return result[1];\n }\n }\n (0, _util.info)(\"bad black code\");\n this._eatBits(1);\n return 1;\n }\n _lookBits(n) {\n let c;\n while (this.inputBits < n) {\n if ((c = this.source.next()) === -1) {\n if (this.inputBits === 0) {\n return ccittEOF;\n }\n return this.inputBuf << n - this.inputBits & 0xffff >> 16 - n;\n }\n this.inputBuf = this.inputBuf << 8 | c;\n this.inputBits += 8;\n }\n return this.inputBuf >> this.inputBits - n & 0xffff >> 16 - n;\n }\n _eatBits(n) {\n if ((this.inputBits -= n) < 0) {\n this.inputBits = 0;\n }\n }\n}\nexports.CCITTFaxDecoder = CCITTFaxDecoder;\n\n/***/ }),\n/* 22 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FlateStream = void 0;\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _util = __w_pdfjs_require__(2);\nconst codeLenCodeMap = new Int32Array([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]);\nconst lengthDecode = new Int32Array([0x00003, 0x00004, 0x00005, 0x00006, 0x00007, 0x00008, 0x00009, 0x0000a, 0x1000b, 0x1000d, 0x1000f, 0x10011, 0x20013, 0x20017, 0x2001b, 0x2001f, 0x30023, 0x3002b, 0x30033, 0x3003b, 0x40043, 0x40053, 0x40063, 0x40073, 0x50083, 0x500a3, 0x500c3, 0x500e3, 0x00102, 0x00102, 0x00102]);\nconst distDecode = new Int32Array([0x00001, 0x00002, 0x00003, 0x00004, 0x10005, 0x10007, 0x20009, 0x2000d, 0x30011, 0x30019, 0x40021, 0x40031, 0x50041, 0x50061, 0x60081, 0x600c1, 0x70101, 0x70181, 0x80201, 0x80301, 0x90401, 0x90601, 0xa0801, 0xa0c01, 0xb1001, 0xb1801, 0xc2001, 0xc3001, 0xd4001, 0xd6001]);\nconst fixedLitCodeTab = [new Int32Array([0x70100, 0x80050, 0x80010, 0x80118, 0x70110, 0x80070, 0x80030, 0x900c0, 0x70108, 0x80060, 0x80020, 0x900a0, 0x80000, 0x80080, 0x80040, 0x900e0, 0x70104, 0x80058, 0x80018, 0x90090, 0x70114, 0x80078, 0x80038, 0x900d0, 0x7010c, 0x80068, 0x80028, 0x900b0, 0x80008, 0x80088, 0x80048, 0x900f0, 0x70102, 0x80054, 0x80014, 0x8011c, 0x70112, 0x80074, 0x80034, 0x900c8, 0x7010a, 0x80064, 0x80024, 0x900a8, 0x80004, 0x80084, 0x80044, 0x900e8, 0x70106, 0x8005c, 0x8001c, 0x90098, 0x70116, 0x8007c, 0x8003c, 0x900d8, 0x7010e, 0x8006c, 0x8002c, 0x900b8, 0x8000c, 0x8008c, 0x8004c, 0x900f8, 0x70101, 0x80052, 0x80012, 0x8011a, 0x70111, 0x80072, 0x80032, 0x900c4, 0x70109, 0x80062, 0x80022, 0x900a4, 0x80002, 0x80082, 0x80042, 0x900e4, 0x70105, 0x8005a, 0x8001a, 0x90094, 0x70115, 0x8007a, 0x8003a, 0x900d4, 0x7010d, 0x8006a, 0x8002a, 0x900b4, 0x8000a, 0x8008a, 0x8004a, 0x900f4, 0x70103, 0x80056, 0x80016, 0x8011e, 0x70113, 0x80076, 0x80036, 0x900cc, 0x7010b, 0x80066, 0x80026, 0x900ac, 0x80006, 0x80086, 0x80046, 0x900ec, 0x70107, 0x8005e, 0x8001e, 0x9009c, 0x70117, 0x8007e, 0x8003e, 0x900dc, 0x7010f, 0x8006e, 0x8002e, 0x900bc, 0x8000e, 0x8008e, 0x8004e, 0x900fc, 0x70100, 0x80051, 0x80011, 0x80119, 0x70110, 0x80071, 0x80031, 0x900c2, 0x70108, 0x80061, 0x80021, 0x900a2, 0x80001, 0x80081, 0x80041, 0x900e2, 0x70104, 0x80059, 0x80019, 0x90092, 0x70114, 0x80079, 0x80039, 0x900d2, 0x7010c, 0x80069, 0x80029, 0x900b2, 0x80009, 0x80089, 0x80049, 0x900f2, 0x70102, 0x80055, 0x80015, 0x8011d, 0x70112, 0x80075, 0x80035, 0x900ca, 0x7010a, 0x80065, 0x80025, 0x900aa, 0x80005, 0x80085, 0x80045, 0x900ea, 0x70106, 0x8005d, 0x8001d, 0x9009a, 0x70116, 0x8007d, 0x8003d, 0x900da, 0x7010e, 0x8006d, 0x8002d, 0x900ba, 0x8000d, 0x8008d, 0x8004d, 0x900fa, 0x70101, 0x80053, 0x80013, 0x8011b, 0x70111, 0x80073, 0x80033, 0x900c6, 0x70109, 0x80063, 0x80023, 0x900a6, 0x80003, 0x80083, 0x80043, 0x900e6, 0x70105, 0x8005b, 0x8001b, 0x90096, 0x70115, 0x8007b, 0x8003b, 0x900d6, 0x7010d, 0x8006b, 0x8002b, 0x900b6, 0x8000b, 0x8008b, 0x8004b, 0x900f6, 0x70103, 0x80057, 0x80017, 0x8011f, 0x70113, 0x80077, 0x80037, 0x900ce, 0x7010b, 0x80067, 0x80027, 0x900ae, 0x80007, 0x80087, 0x80047, 0x900ee, 0x70107, 0x8005f, 0x8001f, 0x9009e, 0x70117, 0x8007f, 0x8003f, 0x900de, 0x7010f, 0x8006f, 0x8002f, 0x900be, 0x8000f, 0x8008f, 0x8004f, 0x900fe, 0x70100, 0x80050, 0x80010, 0x80118, 0x70110, 0x80070, 0x80030, 0x900c1, 0x70108, 0x80060, 0x80020, 0x900a1, 0x80000, 0x80080, 0x80040, 0x900e1, 0x70104, 0x80058, 0x80018, 0x90091, 0x70114, 0x80078, 0x80038, 0x900d1, 0x7010c, 0x80068, 0x80028, 0x900b1, 0x80008, 0x80088, 0x80048, 0x900f1, 0x70102, 0x80054, 0x80014, 0x8011c, 0x70112, 0x80074, 0x80034, 0x900c9, 0x7010a, 0x80064, 0x80024, 0x900a9, 0x80004, 0x80084, 0x80044, 0x900e9, 0x70106, 0x8005c, 0x8001c, 0x90099, 0x70116, 0x8007c, 0x8003c, 0x900d9, 0x7010e, 0x8006c, 0x8002c, 0x900b9, 0x8000c, 0x8008c, 0x8004c, 0x900f9, 0x70101, 0x80052, 0x80012, 0x8011a, 0x70111, 0x80072, 0x80032, 0x900c5, 0x70109, 0x80062, 0x80022, 0x900a5, 0x80002, 0x80082, 0x80042, 0x900e5, 0x70105, 0x8005a, 0x8001a, 0x90095, 0x70115, 0x8007a, 0x8003a, 0x900d5, 0x7010d, 0x8006a, 0x8002a, 0x900b5, 0x8000a, 0x8008a, 0x8004a, 0x900f5, 0x70103, 0x80056, 0x80016, 0x8011e, 0x70113, 0x80076, 0x80036, 0x900cd, 0x7010b, 0x80066, 0x80026, 0x900ad, 0x80006, 0x80086, 0x80046, 0x900ed, 0x70107, 0x8005e, 0x8001e, 0x9009d, 0x70117, 0x8007e, 0x8003e, 0x900dd, 0x7010f, 0x8006e, 0x8002e, 0x900bd, 0x8000e, 0x8008e, 0x8004e, 0x900fd, 0x70100, 0x80051, 0x80011, 0x80119, 0x70110, 0x80071, 0x80031, 0x900c3, 0x70108, 0x80061, 0x80021, 0x900a3, 0x80001, 0x80081, 0x80041, 0x900e3, 0x70104, 0x80059, 0x80019, 0x90093, 0x70114, 0x80079, 0x80039, 0x900d3, 0x7010c, 0x80069, 0x80029, 0x900b3, 0x80009, 0x80089, 0x80049, 0x900f3, 0x70102, 0x80055, 0x80015, 0x8011d, 0x70112, 0x80075, 0x80035, 0x900cb, 0x7010a, 0x80065, 0x80025, 0x900ab, 0x80005, 0x80085, 0x80045, 0x900eb, 0x70106, 0x8005d, 0x8001d, 0x9009b, 0x70116, 0x8007d, 0x8003d, 0x900db, 0x7010e, 0x8006d, 0x8002d, 0x900bb, 0x8000d, 0x8008d, 0x8004d, 0x900fb, 0x70101, 0x80053, 0x80013, 0x8011b, 0x70111, 0x80073, 0x80033, 0x900c7, 0x70109, 0x80063, 0x80023, 0x900a7, 0x80003, 0x80083, 0x80043, 0x900e7, 0x70105, 0x8005b, 0x8001b, 0x90097, 0x70115, 0x8007b, 0x8003b, 0x900d7, 0x7010d, 0x8006b, 0x8002b, 0x900b7, 0x8000b, 0x8008b, 0x8004b, 0x900f7, 0x70103, 0x80057, 0x80017, 0x8011f, 0x70113, 0x80077, 0x80037, 0x900cf, 0x7010b, 0x80067, 0x80027, 0x900af, 0x80007, 0x80087, 0x80047, 0x900ef, 0x70107, 0x8005f, 0x8001f, 0x9009f, 0x70117, 0x8007f, 0x8003f, 0x900df, 0x7010f, 0x8006f, 0x8002f, 0x900bf, 0x8000f, 0x8008f, 0x8004f, 0x900ff]), 9];\nconst fixedDistCodeTab = [new Int32Array([0x50000, 0x50010, 0x50008, 0x50018, 0x50004, 0x50014, 0x5000c, 0x5001c, 0x50002, 0x50012, 0x5000a, 0x5001a, 0x50006, 0x50016, 0x5000e, 0x00000, 0x50001, 0x50011, 0x50009, 0x50019, 0x50005, 0x50015, 0x5000d, 0x5001d, 0x50003, 0x50013, 0x5000b, 0x5001b, 0x50007, 0x50017, 0x5000f, 0x00000]), 5];\nclass FlateStream extends _decode_stream.DecodeStream {\n constructor(str, maybeLength) {\n super(maybeLength);\n this.str = str;\n this.dict = str.dict;\n const cmf = str.getByte();\n const flg = str.getByte();\n if (cmf === -1 || flg === -1) {\n throw new _util.FormatError(`Invalid header in flate stream: ${cmf}, ${flg}`);\n }\n if ((cmf & 0x0f) !== 0x08) {\n throw new _util.FormatError(`Unknown compression method in flate stream: ${cmf}, ${flg}`);\n }\n if (((cmf << 8) + flg) % 31 !== 0) {\n throw new _util.FormatError(`Bad FCHECK in flate stream: ${cmf}, ${flg}`);\n }\n if (flg & 0x20) {\n throw new _util.FormatError(`FDICT bit set in flate stream: ${cmf}, ${flg}`);\n }\n this.codeSize = 0;\n this.codeBuf = 0;\n }\n getBits(bits) {\n const str = this.str;\n let codeSize = this.codeSize;\n let codeBuf = this.codeBuf;\n let b;\n while (codeSize < bits) {\n if ((b = str.getByte()) === -1) {\n throw new _util.FormatError(\"Bad encoding in flate stream\");\n }\n codeBuf |= b << codeSize;\n codeSize += 8;\n }\n b = codeBuf & (1 << bits) - 1;\n this.codeBuf = codeBuf >> bits;\n this.codeSize = codeSize -= bits;\n return b;\n }\n getCode(table) {\n const str = this.str;\n const codes = table[0];\n const maxLen = table[1];\n let codeSize = this.codeSize;\n let codeBuf = this.codeBuf;\n let b;\n while (codeSize < maxLen) {\n if ((b = str.getByte()) === -1) {\n break;\n }\n codeBuf |= b << codeSize;\n codeSize += 8;\n }\n const code = codes[codeBuf & (1 << maxLen) - 1];\n const codeLen = code >> 16;\n const codeVal = code & 0xffff;\n if (codeLen < 1 || codeSize < codeLen) {\n throw new _util.FormatError(\"Bad encoding in flate stream\");\n }\n this.codeBuf = codeBuf >> codeLen;\n this.codeSize = codeSize - codeLen;\n return codeVal;\n }\n generateHuffmanTable(lengths) {\n const n = lengths.length;\n let maxLen = 0;\n let i;\n for (i = 0; i < n; ++i) {\n if (lengths[i] > maxLen) {\n maxLen = lengths[i];\n }\n }\n const size = 1 << maxLen;\n const codes = new Int32Array(size);\n for (let len = 1, code = 0, skip = 2; len <= maxLen; ++len, code <<= 1, skip <<= 1) {\n for (let val = 0; val < n; ++val) {\n if (lengths[val] === len) {\n let code2 = 0;\n let t = code;\n for (i = 0; i < len; ++i) {\n code2 = code2 << 1 | t & 1;\n t >>= 1;\n }\n for (i = code2; i < size; i += skip) {\n codes[i] = len << 16 | val;\n }\n ++code;\n }\n }\n }\n return [codes, maxLen];\n }\n readBlock() {\n let buffer, len;\n const str = this.str;\n let hdr = this.getBits(3);\n if (hdr & 1) {\n this.eof = true;\n }\n hdr >>= 1;\n if (hdr === 0) {\n let b;\n if ((b = str.getByte()) === -1) {\n throw new _util.FormatError(\"Bad block header in flate stream\");\n }\n let blockLen = b;\n if ((b = str.getByte()) === -1) {\n throw new _util.FormatError(\"Bad block header in flate stream\");\n }\n blockLen |= b << 8;\n if ((b = str.getByte()) === -1) {\n throw new _util.FormatError(\"Bad block header in flate stream\");\n }\n let check = b;\n if ((b = str.getByte()) === -1) {\n throw new _util.FormatError(\"Bad block header in flate stream\");\n }\n check |= b << 8;\n if (check !== (~blockLen & 0xffff) && (blockLen !== 0 || check !== 0)) {\n throw new _util.FormatError(\"Bad uncompressed block length in flate stream\");\n }\n this.codeBuf = 0;\n this.codeSize = 0;\n const bufferLength = this.bufferLength,\n end = bufferLength + blockLen;\n buffer = this.ensureBuffer(end);\n this.bufferLength = end;\n if (blockLen === 0) {\n if (str.peekByte() === -1) {\n this.eof = true;\n }\n } else {\n const block = str.getBytes(blockLen);\n buffer.set(block, bufferLength);\n if (block.length < blockLen) {\n this.eof = true;\n }\n }\n return;\n }\n let litCodeTable;\n let distCodeTable;\n if (hdr === 1) {\n litCodeTable = fixedLitCodeTab;\n distCodeTable = fixedDistCodeTab;\n } else if (hdr === 2) {\n const numLitCodes = this.getBits(5) + 257;\n const numDistCodes = this.getBits(5) + 1;\n const numCodeLenCodes = this.getBits(4) + 4;\n const codeLenCodeLengths = new Uint8Array(codeLenCodeMap.length);\n let i;\n for (i = 0; i < numCodeLenCodes; ++i) {\n codeLenCodeLengths[codeLenCodeMap[i]] = this.getBits(3);\n }\n const codeLenCodeTab = this.generateHuffmanTable(codeLenCodeLengths);\n len = 0;\n i = 0;\n const codes = numLitCodes + numDistCodes;\n const codeLengths = new Uint8Array(codes);\n let bitsLength, bitsOffset, what;\n while (i < codes) {\n const code = this.getCode(codeLenCodeTab);\n if (code === 16) {\n bitsLength = 2;\n bitsOffset = 3;\n what = len;\n } else if (code === 17) {\n bitsLength = 3;\n bitsOffset = 3;\n what = len = 0;\n } else if (code === 18) {\n bitsLength = 7;\n bitsOffset = 11;\n what = len = 0;\n } else {\n codeLengths[i++] = len = code;\n continue;\n }\n let repeatLength = this.getBits(bitsLength) + bitsOffset;\n while (repeatLength-- > 0) {\n codeLengths[i++] = what;\n }\n }\n litCodeTable = this.generateHuffmanTable(codeLengths.subarray(0, numLitCodes));\n distCodeTable = this.generateHuffmanTable(codeLengths.subarray(numLitCodes, codes));\n } else {\n throw new _util.FormatError(\"Unknown block type in flate stream\");\n }\n buffer = this.buffer;\n let limit = buffer ? buffer.length : 0;\n let pos = this.bufferLength;\n while (true) {\n let code1 = this.getCode(litCodeTable);\n if (code1 < 256) {\n if (pos + 1 >= limit) {\n buffer = this.ensureBuffer(pos + 1);\n limit = buffer.length;\n }\n buffer[pos++] = code1;\n continue;\n }\n if (code1 === 256) {\n this.bufferLength = pos;\n return;\n }\n code1 -= 257;\n code1 = lengthDecode[code1];\n let code2 = code1 >> 16;\n if (code2 > 0) {\n code2 = this.getBits(code2);\n }\n len = (code1 & 0xffff) + code2;\n code1 = this.getCode(distCodeTable);\n code1 = distDecode[code1];\n code2 = code1 >> 16;\n if (code2 > 0) {\n code2 = this.getBits(code2);\n }\n const dist = (code1 & 0xffff) + code2;\n if (pos + len >= limit) {\n buffer = this.ensureBuffer(pos + len);\n limit = buffer.length;\n }\n for (let k = 0; k < len; ++k, ++pos) {\n buffer[pos] = buffer[pos - dist];\n }\n }\n }\n}\nexports.FlateStream = FlateStream;\n\n/***/ }),\n/* 23 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Jbig2Stream = void 0;\nvar _base_stream = __w_pdfjs_require__(5);\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _primitives = __w_pdfjs_require__(4);\nvar _jbig = __w_pdfjs_require__(24);\nvar _util = __w_pdfjs_require__(2);\nclass Jbig2Stream extends _decode_stream.DecodeStream {\n constructor(stream, maybeLength, params) {\n super(maybeLength);\n this.stream = stream;\n this.dict = stream.dict;\n this.maybeLength = maybeLength;\n this.params = params;\n }\n get bytes() {\n return (0, _util.shadow)(this, \"bytes\", this.stream.getBytes(this.maybeLength));\n }\n ensureBuffer(requested) {}\n readBlock() {\n if (this.eof) {\n return;\n }\n const jbig2Image = new _jbig.Jbig2Image();\n const chunks = [];\n if (this.params instanceof _primitives.Dict) {\n const globalsStream = this.params.get(\"JBIG2Globals\");\n if (globalsStream instanceof _base_stream.BaseStream) {\n const globals = globalsStream.getBytes();\n chunks.push({\n data: globals,\n start: 0,\n end: globals.length\n });\n }\n }\n chunks.push({\n data: this.bytes,\n start: 0,\n end: this.bytes.length\n });\n const data = jbig2Image.parseChunks(chunks);\n const dataLength = data.length;\n for (let i = 0; i < dataLength; i++) {\n data[i] ^= 0xff;\n }\n this.buffer = data;\n this.bufferLength = dataLength;\n this.eof = true;\n }\n}\nexports.Jbig2Stream = Jbig2Stream;\n\n/***/ }),\n/* 24 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Jbig2Image = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _arithmetic_decoder = __w_pdfjs_require__(25);\nvar _ccitt = __w_pdfjs_require__(21);\nclass Jbig2Error extends _util.BaseException {\n constructor(msg) {\n super(`JBIG2 error: ${msg}`, \"Jbig2Error\");\n }\n}\nclass ContextCache {\n getContexts(id) {\n if (id in this) {\n return this[id];\n }\n return this[id] = new Int8Array(1 << 16);\n }\n}\nclass DecodingContext {\n constructor(data, start, end) {\n this.data = data;\n this.start = start;\n this.end = end;\n }\n get decoder() {\n const decoder = new _arithmetic_decoder.ArithmeticDecoder(this.data, this.start, this.end);\n return (0, _util.shadow)(this, \"decoder\", decoder);\n }\n get contextCache() {\n const cache = new ContextCache();\n return (0, _util.shadow)(this, \"contextCache\", cache);\n }\n}\nconst MAX_INT_32 = 2 ** 31 - 1;\nconst MIN_INT_32 = -(2 ** 31);\nfunction decodeInteger(contextCache, procedure, decoder) {\n const contexts = contextCache.getContexts(procedure);\n let prev = 1;\n function readBits(length) {\n let v = 0;\n for (let i = 0; i < length; i++) {\n const bit = decoder.readBit(contexts, prev);\n prev = prev < 256 ? prev << 1 | bit : (prev << 1 | bit) & 511 | 256;\n v = v << 1 | bit;\n }\n return v >>> 0;\n }\n const sign = readBits(1);\n const value = readBits(1) ? readBits(1) ? readBits(1) ? readBits(1) ? readBits(1) ? readBits(32) + 4436 : readBits(12) + 340 : readBits(8) + 84 : readBits(6) + 20 : readBits(4) + 4 : readBits(2);\n let signedValue;\n if (sign === 0) {\n signedValue = value;\n } else if (value > 0) {\n signedValue = -value;\n }\n if (signedValue >= MIN_INT_32 && signedValue <= MAX_INT_32) {\n return signedValue;\n }\n return null;\n}\nfunction decodeIAID(contextCache, decoder, codeLength) {\n const contexts = contextCache.getContexts(\"IAID\");\n let prev = 1;\n for (let i = 0; i < codeLength; i++) {\n const bit = decoder.readBit(contexts, prev);\n prev = prev << 1 | bit;\n }\n if (codeLength < 31) {\n return prev & (1 << codeLength) - 1;\n }\n return prev & 0x7fffffff;\n}\nconst SegmentTypes = [\"SymbolDictionary\", null, null, null, \"IntermediateTextRegion\", null, \"ImmediateTextRegion\", \"ImmediateLosslessTextRegion\", null, null, null, null, null, null, null, null, \"PatternDictionary\", null, null, null, \"IntermediateHalftoneRegion\", null, \"ImmediateHalftoneRegion\", \"ImmediateLosslessHalftoneRegion\", null, null, null, null, null, null, null, null, null, null, null, null, \"IntermediateGenericRegion\", null, \"ImmediateGenericRegion\", \"ImmediateLosslessGenericRegion\", \"IntermediateGenericRefinementRegion\", null, \"ImmediateGenericRefinementRegion\", \"ImmediateLosslessGenericRefinementRegion\", null, null, null, null, \"PageInformation\", \"EndOfPage\", \"EndOfStripe\", \"EndOfFile\", \"Profiles\", \"Tables\", null, null, null, null, null, null, null, null, \"Extension\"];\nconst CodingTemplates = [[{\n x: -1,\n y: -2\n}, {\n x: 0,\n y: -2\n}, {\n x: 1,\n y: -2\n}, {\n x: -2,\n y: -1\n}, {\n x: -1,\n y: -1\n}, {\n x: 0,\n y: -1\n}, {\n x: 1,\n y: -1\n}, {\n x: 2,\n y: -1\n}, {\n x: -4,\n y: 0\n}, {\n x: -3,\n y: 0\n}, {\n x: -2,\n y: 0\n}, {\n x: -1,\n y: 0\n}], [{\n x: -1,\n y: -2\n}, {\n x: 0,\n y: -2\n}, {\n x: 1,\n y: -2\n}, {\n x: 2,\n y: -2\n}, {\n x: -2,\n y: -1\n}, {\n x: -1,\n y: -1\n}, {\n x: 0,\n y: -1\n}, {\n x: 1,\n y: -1\n}, {\n x: 2,\n y: -1\n}, {\n x: -3,\n y: 0\n}, {\n x: -2,\n y: 0\n}, {\n x: -1,\n y: 0\n}], [{\n x: -1,\n y: -2\n}, {\n x: 0,\n y: -2\n}, {\n x: 1,\n y: -2\n}, {\n x: -2,\n y: -1\n}, {\n x: -1,\n y: -1\n}, {\n x: 0,\n y: -1\n}, {\n x: 1,\n y: -1\n}, {\n x: -2,\n y: 0\n}, {\n x: -1,\n y: 0\n}], [{\n x: -3,\n y: -1\n}, {\n x: -2,\n y: -1\n}, {\n x: -1,\n y: -1\n}, {\n x: 0,\n y: -1\n}, {\n x: 1,\n y: -1\n}, {\n x: -4,\n y: 0\n}, {\n x: -3,\n y: 0\n}, {\n x: -2,\n y: 0\n}, {\n x: -1,\n y: 0\n}]];\nconst RefinementTemplates = [{\n coding: [{\n x: 0,\n y: -1\n }, {\n x: 1,\n y: -1\n }, {\n x: -1,\n y: 0\n }],\n reference: [{\n x: 0,\n y: -1\n }, {\n x: 1,\n y: -1\n }, {\n x: -1,\n y: 0\n }, {\n x: 0,\n y: 0\n }, {\n x: 1,\n y: 0\n }, {\n x: -1,\n y: 1\n }, {\n x: 0,\n y: 1\n }, {\n x: 1,\n y: 1\n }]\n}, {\n coding: [{\n x: -1,\n y: -1\n }, {\n x: 0,\n y: -1\n }, {\n x: 1,\n y: -1\n }, {\n x: -1,\n y: 0\n }],\n reference: [{\n x: 0,\n y: -1\n }, {\n x: -1,\n y: 0\n }, {\n x: 0,\n y: 0\n }, {\n x: 1,\n y: 0\n }, {\n x: 0,\n y: 1\n }, {\n x: 1,\n y: 1\n }]\n}];\nconst ReusedContexts = [0x9b25, 0x0795, 0x00e5, 0x0195];\nconst RefinementReusedContexts = [0x0020, 0x0008];\nfunction decodeBitmapTemplate0(width, height, decodingContext) {\n const decoder = decodingContext.decoder;\n const contexts = decodingContext.contextCache.getContexts(\"GB\");\n const bitmap = [];\n let contextLabel, i, j, pixel, row, row1, row2;\n const OLD_PIXEL_MASK = 0x7bf7;\n for (i = 0; i < height; i++) {\n row = bitmap[i] = new Uint8Array(width);\n row1 = i < 1 ? row : bitmap[i - 1];\n row2 = i < 2 ? row : bitmap[i - 2];\n contextLabel = row2[0] << 13 | row2[1] << 12 | row2[2] << 11 | row1[0] << 7 | row1[1] << 6 | row1[2] << 5 | row1[3] << 4;\n for (j = 0; j < width; j++) {\n row[j] = pixel = decoder.readBit(contexts, contextLabel);\n contextLabel = (contextLabel & OLD_PIXEL_MASK) << 1 | (j + 3 < width ? row2[j + 3] << 11 : 0) | (j + 4 < width ? row1[j + 4] << 4 : 0) | pixel;\n }\n }\n return bitmap;\n}\nfunction decodeBitmap(mmr, width, height, templateIndex, prediction, skip, at, decodingContext) {\n if (mmr) {\n const input = new Reader(decodingContext.data, decodingContext.start, decodingContext.end);\n return decodeMMRBitmap(input, width, height, false);\n }\n if (templateIndex === 0 && !skip && !prediction && at.length === 4 && at[0].x === 3 && at[0].y === -1 && at[1].x === -3 && at[1].y === -1 && at[2].x === 2 && at[2].y === -2 && at[3].x === -2 && at[3].y === -2) {\n return decodeBitmapTemplate0(width, height, decodingContext);\n }\n const useskip = !!skip;\n const template = CodingTemplates[templateIndex].concat(at);\n template.sort(function (a, b) {\n return a.y - b.y || a.x - b.x;\n });\n const templateLength = template.length;\n const templateX = new Int8Array(templateLength);\n const templateY = new Int8Array(templateLength);\n const changingTemplateEntries = [];\n let reuseMask = 0,\n minX = 0,\n maxX = 0,\n minY = 0;\n let c, k;\n for (k = 0; k < templateLength; k++) {\n templateX[k] = template[k].x;\n templateY[k] = template[k].y;\n minX = Math.min(minX, template[k].x);\n maxX = Math.max(maxX, template[k].x);\n minY = Math.min(minY, template[k].y);\n if (k < templateLength - 1 && template[k].y === template[k + 1].y && template[k].x === template[k + 1].x - 1) {\n reuseMask |= 1 << templateLength - 1 - k;\n } else {\n changingTemplateEntries.push(k);\n }\n }\n const changingEntriesLength = changingTemplateEntries.length;\n const changingTemplateX = new Int8Array(changingEntriesLength);\n const changingTemplateY = new Int8Array(changingEntriesLength);\n const changingTemplateBit = new Uint16Array(changingEntriesLength);\n for (c = 0; c < changingEntriesLength; c++) {\n k = changingTemplateEntries[c];\n changingTemplateX[c] = template[k].x;\n changingTemplateY[c] = template[k].y;\n changingTemplateBit[c] = 1 << templateLength - 1 - k;\n }\n const sbb_left = -minX;\n const sbb_top = -minY;\n const sbb_right = width - maxX;\n const pseudoPixelContext = ReusedContexts[templateIndex];\n let row = new Uint8Array(width);\n const bitmap = [];\n const decoder = decodingContext.decoder;\n const contexts = decodingContext.contextCache.getContexts(\"GB\");\n let ltp = 0,\n j,\n i0,\n j0,\n contextLabel = 0,\n bit,\n shift;\n for (let i = 0; i < height; i++) {\n if (prediction) {\n const sltp = decoder.readBit(contexts, pseudoPixelContext);\n ltp ^= sltp;\n if (ltp) {\n bitmap.push(row);\n continue;\n }\n }\n row = new Uint8Array(row);\n bitmap.push(row);\n for (j = 0; j < width; j++) {\n if (useskip && skip[i][j]) {\n row[j] = 0;\n continue;\n }\n if (j >= sbb_left && j < sbb_right && i >= sbb_top) {\n contextLabel = contextLabel << 1 & reuseMask;\n for (k = 0; k < changingEntriesLength; k++) {\n i0 = i + changingTemplateY[k];\n j0 = j + changingTemplateX[k];\n bit = bitmap[i0][j0];\n if (bit) {\n bit = changingTemplateBit[k];\n contextLabel |= bit;\n }\n }\n } else {\n contextLabel = 0;\n shift = templateLength - 1;\n for (k = 0; k < templateLength; k++, shift--) {\n j0 = j + templateX[k];\n if (j0 >= 0 && j0 < width) {\n i0 = i + templateY[k];\n if (i0 >= 0) {\n bit = bitmap[i0][j0];\n if (bit) {\n contextLabel |= bit << shift;\n }\n }\n }\n }\n }\n const pixel = decoder.readBit(contexts, contextLabel);\n row[j] = pixel;\n }\n }\n return bitmap;\n}\nfunction decodeRefinement(width, height, templateIndex, referenceBitmap, offsetX, offsetY, prediction, at, decodingContext) {\n let codingTemplate = RefinementTemplates[templateIndex].coding;\n if (templateIndex === 0) {\n codingTemplate = codingTemplate.concat([at[0]]);\n }\n const codingTemplateLength = codingTemplate.length;\n const codingTemplateX = new Int32Array(codingTemplateLength);\n const codingTemplateY = new Int32Array(codingTemplateLength);\n let k;\n for (k = 0; k < codingTemplateLength; k++) {\n codingTemplateX[k] = codingTemplate[k].x;\n codingTemplateY[k] = codingTemplate[k].y;\n }\n let referenceTemplate = RefinementTemplates[templateIndex].reference;\n if (templateIndex === 0) {\n referenceTemplate = referenceTemplate.concat([at[1]]);\n }\n const referenceTemplateLength = referenceTemplate.length;\n const referenceTemplateX = new Int32Array(referenceTemplateLength);\n const referenceTemplateY = new Int32Array(referenceTemplateLength);\n for (k = 0; k < referenceTemplateLength; k++) {\n referenceTemplateX[k] = referenceTemplate[k].x;\n referenceTemplateY[k] = referenceTemplate[k].y;\n }\n const referenceWidth = referenceBitmap[0].length;\n const referenceHeight = referenceBitmap.length;\n const pseudoPixelContext = RefinementReusedContexts[templateIndex];\n const bitmap = [];\n const decoder = decodingContext.decoder;\n const contexts = decodingContext.contextCache.getContexts(\"GR\");\n let ltp = 0;\n for (let i = 0; i < height; i++) {\n if (prediction) {\n const sltp = decoder.readBit(contexts, pseudoPixelContext);\n ltp ^= sltp;\n if (ltp) {\n throw new Jbig2Error(\"prediction is not supported\");\n }\n }\n const row = new Uint8Array(width);\n bitmap.push(row);\n for (let j = 0; j < width; j++) {\n let i0, j0;\n let contextLabel = 0;\n for (k = 0; k < codingTemplateLength; k++) {\n i0 = i + codingTemplateY[k];\n j0 = j + codingTemplateX[k];\n if (i0 < 0 || j0 < 0 || j0 >= width) {\n contextLabel <<= 1;\n } else {\n contextLabel = contextLabel << 1 | bitmap[i0][j0];\n }\n }\n for (k = 0; k < referenceTemplateLength; k++) {\n i0 = i + referenceTemplateY[k] - offsetY;\n j0 = j + referenceTemplateX[k] - offsetX;\n if (i0 < 0 || i0 >= referenceHeight || j0 < 0 || j0 >= referenceWidth) {\n contextLabel <<= 1;\n } else {\n contextLabel = contextLabel << 1 | referenceBitmap[i0][j0];\n }\n }\n const pixel = decoder.readBit(contexts, contextLabel);\n row[j] = pixel;\n }\n }\n return bitmap;\n}\nfunction decodeSymbolDictionary(huffman, refinement, symbols, numberOfNewSymbols, numberOfExportedSymbols, huffmanTables, templateIndex, at, refinementTemplateIndex, refinementAt, decodingContext, huffmanInput) {\n if (huffman && refinement) {\n throw new Jbig2Error(\"symbol refinement with Huffman is not supported\");\n }\n const newSymbols = [];\n let currentHeight = 0;\n let symbolCodeLength = (0, _core_utils.log2)(symbols.length + numberOfNewSymbols);\n const decoder = decodingContext.decoder;\n const contextCache = decodingContext.contextCache;\n let tableB1, symbolWidths;\n if (huffman) {\n tableB1 = getStandardTable(1);\n symbolWidths = [];\n symbolCodeLength = Math.max(symbolCodeLength, 1);\n }\n while (newSymbols.length < numberOfNewSymbols) {\n const deltaHeight = huffman ? huffmanTables.tableDeltaHeight.decode(huffmanInput) : decodeInteger(contextCache, \"IADH\", decoder);\n currentHeight += deltaHeight;\n let currentWidth = 0,\n totalWidth = 0;\n const firstSymbol = huffman ? symbolWidths.length : 0;\n while (true) {\n const deltaWidth = huffman ? huffmanTables.tableDeltaWidth.decode(huffmanInput) : decodeInteger(contextCache, \"IADW\", decoder);\n if (deltaWidth === null) {\n break;\n }\n currentWidth += deltaWidth;\n totalWidth += currentWidth;\n let bitmap;\n if (refinement) {\n const numberOfInstances = decodeInteger(contextCache, \"IAAI\", decoder);\n if (numberOfInstances > 1) {\n bitmap = decodeTextRegion(huffman, refinement, currentWidth, currentHeight, 0, numberOfInstances, 1, symbols.concat(newSymbols), symbolCodeLength, 0, 0, 1, 0, huffmanTables, refinementTemplateIndex, refinementAt, decodingContext, 0, huffmanInput);\n } else {\n const symbolId = decodeIAID(contextCache, decoder, symbolCodeLength);\n const rdx = decodeInteger(contextCache, \"IARDX\", decoder);\n const rdy = decodeInteger(contextCache, \"IARDY\", decoder);\n const symbol = symbolId < symbols.length ? symbols[symbolId] : newSymbols[symbolId - symbols.length];\n bitmap = decodeRefinement(currentWidth, currentHeight, refinementTemplateIndex, symbol, rdx, rdy, false, refinementAt, decodingContext);\n }\n newSymbols.push(bitmap);\n } else if (huffman) {\n symbolWidths.push(currentWidth);\n } else {\n bitmap = decodeBitmap(false, currentWidth, currentHeight, templateIndex, false, null, at, decodingContext);\n newSymbols.push(bitmap);\n }\n }\n if (huffman && !refinement) {\n const bitmapSize = huffmanTables.tableBitmapSize.decode(huffmanInput);\n huffmanInput.byteAlign();\n let collectiveBitmap;\n if (bitmapSize === 0) {\n collectiveBitmap = readUncompressedBitmap(huffmanInput, totalWidth, currentHeight);\n } else {\n const originalEnd = huffmanInput.end;\n const bitmapEnd = huffmanInput.position + bitmapSize;\n huffmanInput.end = bitmapEnd;\n collectiveBitmap = decodeMMRBitmap(huffmanInput, totalWidth, currentHeight, false);\n huffmanInput.end = originalEnd;\n huffmanInput.position = bitmapEnd;\n }\n const numberOfSymbolsDecoded = symbolWidths.length;\n if (firstSymbol === numberOfSymbolsDecoded - 1) {\n newSymbols.push(collectiveBitmap);\n } else {\n let i,\n y,\n xMin = 0,\n xMax,\n bitmapWidth,\n symbolBitmap;\n for (i = firstSymbol; i < numberOfSymbolsDecoded; i++) {\n bitmapWidth = symbolWidths[i];\n xMax = xMin + bitmapWidth;\n symbolBitmap = [];\n for (y = 0; y < currentHeight; y++) {\n symbolBitmap.push(collectiveBitmap[y].subarray(xMin, xMax));\n }\n newSymbols.push(symbolBitmap);\n xMin = xMax;\n }\n }\n }\n }\n const exportedSymbols = [],\n flags = [];\n let currentFlag = false,\n i,\n ii;\n const totalSymbolsLength = symbols.length + numberOfNewSymbols;\n while (flags.length < totalSymbolsLength) {\n let runLength = huffman ? tableB1.decode(huffmanInput) : decodeInteger(contextCache, \"IAEX\", decoder);\n while (runLength--) {\n flags.push(currentFlag);\n }\n currentFlag = !currentFlag;\n }\n for (i = 0, ii = symbols.length; i < ii; i++) {\n if (flags[i]) {\n exportedSymbols.push(symbols[i]);\n }\n }\n for (let j = 0; j < numberOfNewSymbols; i++, j++) {\n if (flags[i]) {\n exportedSymbols.push(newSymbols[j]);\n }\n }\n return exportedSymbols;\n}\nfunction decodeTextRegion(huffman, refinement, width, height, defaultPixelValue, numberOfSymbolInstances, stripSize, inputSymbols, symbolCodeLength, transposed, dsOffset, referenceCorner, combinationOperator, huffmanTables, refinementTemplateIndex, refinementAt, decodingContext, logStripSize, huffmanInput) {\n if (huffman && refinement) {\n throw new Jbig2Error(\"refinement with Huffman is not supported\");\n }\n const bitmap = [];\n let i, row;\n for (i = 0; i < height; i++) {\n row = new Uint8Array(width);\n if (defaultPixelValue) {\n for (let j = 0; j < width; j++) {\n row[j] = defaultPixelValue;\n }\n }\n bitmap.push(row);\n }\n const decoder = decodingContext.decoder;\n const contextCache = decodingContext.contextCache;\n let stripT = huffman ? -huffmanTables.tableDeltaT.decode(huffmanInput) : -decodeInteger(contextCache, \"IADT\", decoder);\n let firstS = 0;\n i = 0;\n while (i < numberOfSymbolInstances) {\n const deltaT = huffman ? huffmanTables.tableDeltaT.decode(huffmanInput) : decodeInteger(contextCache, \"IADT\", decoder);\n stripT += deltaT;\n const deltaFirstS = huffman ? huffmanTables.tableFirstS.decode(huffmanInput) : decodeInteger(contextCache, \"IAFS\", decoder);\n firstS += deltaFirstS;\n let currentS = firstS;\n do {\n let currentT = 0;\n if (stripSize > 1) {\n currentT = huffman ? huffmanInput.readBits(logStripSize) : decodeInteger(contextCache, \"IAIT\", decoder);\n }\n const t = stripSize * stripT + currentT;\n const symbolId = huffman ? huffmanTables.symbolIDTable.decode(huffmanInput) : decodeIAID(contextCache, decoder, symbolCodeLength);\n const applyRefinement = refinement && (huffman ? huffmanInput.readBit() : decodeInteger(contextCache, \"IARI\", decoder));\n let symbolBitmap = inputSymbols[symbolId];\n let symbolWidth = symbolBitmap[0].length;\n let symbolHeight = symbolBitmap.length;\n if (applyRefinement) {\n const rdw = decodeInteger(contextCache, \"IARDW\", decoder);\n const rdh = decodeInteger(contextCache, \"IARDH\", decoder);\n const rdx = decodeInteger(contextCache, \"IARDX\", decoder);\n const rdy = decodeInteger(contextCache, \"IARDY\", decoder);\n symbolWidth += rdw;\n symbolHeight += rdh;\n symbolBitmap = decodeRefinement(symbolWidth, symbolHeight, refinementTemplateIndex, symbolBitmap, (rdw >> 1) + rdx, (rdh >> 1) + rdy, false, refinementAt, decodingContext);\n }\n const offsetT = t - (referenceCorner & 1 ? 0 : symbolHeight - 1);\n const offsetS = currentS - (referenceCorner & 2 ? symbolWidth - 1 : 0);\n let s2, t2, symbolRow;\n if (transposed) {\n for (s2 = 0; s2 < symbolHeight; s2++) {\n row = bitmap[offsetS + s2];\n if (!row) {\n continue;\n }\n symbolRow = symbolBitmap[s2];\n const maxWidth = Math.min(width - offsetT, symbolWidth);\n switch (combinationOperator) {\n case 0:\n for (t2 = 0; t2 < maxWidth; t2++) {\n row[offsetT + t2] |= symbolRow[t2];\n }\n break;\n case 2:\n for (t2 = 0; t2 < maxWidth; t2++) {\n row[offsetT + t2] ^= symbolRow[t2];\n }\n break;\n default:\n throw new Jbig2Error(`operator ${combinationOperator} is not supported`);\n }\n }\n currentS += symbolHeight - 1;\n } else {\n for (t2 = 0; t2 < symbolHeight; t2++) {\n row = bitmap[offsetT + t2];\n if (!row) {\n continue;\n }\n symbolRow = symbolBitmap[t2];\n switch (combinationOperator) {\n case 0:\n for (s2 = 0; s2 < symbolWidth; s2++) {\n row[offsetS + s2] |= symbolRow[s2];\n }\n break;\n case 2:\n for (s2 = 0; s2 < symbolWidth; s2++) {\n row[offsetS + s2] ^= symbolRow[s2];\n }\n break;\n default:\n throw new Jbig2Error(`operator ${combinationOperator} is not supported`);\n }\n }\n currentS += symbolWidth - 1;\n }\n i++;\n const deltaS = huffman ? huffmanTables.tableDeltaS.decode(huffmanInput) : decodeInteger(contextCache, \"IADS\", decoder);\n if (deltaS === null) {\n break;\n }\n currentS += deltaS + dsOffset;\n } while (true);\n }\n return bitmap;\n}\nfunction decodePatternDictionary(mmr, patternWidth, patternHeight, maxPatternIndex, template, decodingContext) {\n const at = [];\n if (!mmr) {\n at.push({\n x: -patternWidth,\n y: 0\n });\n if (template === 0) {\n at.push({\n x: -3,\n y: -1\n }, {\n x: 2,\n y: -2\n }, {\n x: -2,\n y: -2\n });\n }\n }\n const collectiveWidth = (maxPatternIndex + 1) * patternWidth;\n const collectiveBitmap = decodeBitmap(mmr, collectiveWidth, patternHeight, template, false, null, at, decodingContext);\n const patterns = [];\n for (let i = 0; i <= maxPatternIndex; i++) {\n const patternBitmap = [];\n const xMin = patternWidth * i;\n const xMax = xMin + patternWidth;\n for (let y = 0; y < patternHeight; y++) {\n patternBitmap.push(collectiveBitmap[y].subarray(xMin, xMax));\n }\n patterns.push(patternBitmap);\n }\n return patterns;\n}\nfunction decodeHalftoneRegion(mmr, patterns, template, regionWidth, regionHeight, defaultPixelValue, enableSkip, combinationOperator, gridWidth, gridHeight, gridOffsetX, gridOffsetY, gridVectorX, gridVectorY, decodingContext) {\n const skip = null;\n if (enableSkip) {\n throw new Jbig2Error(\"skip is not supported\");\n }\n if (combinationOperator !== 0) {\n throw new Jbig2Error(`operator \"${combinationOperator}\" is not supported in halftone region`);\n }\n const regionBitmap = [];\n let i, j, row;\n for (i = 0; i < regionHeight; i++) {\n row = new Uint8Array(regionWidth);\n if (defaultPixelValue) {\n for (j = 0; j < regionWidth; j++) {\n row[j] = defaultPixelValue;\n }\n }\n regionBitmap.push(row);\n }\n const numberOfPatterns = patterns.length;\n const pattern0 = patterns[0];\n const patternWidth = pattern0[0].length,\n patternHeight = pattern0.length;\n const bitsPerValue = (0, _core_utils.log2)(numberOfPatterns);\n const at = [];\n if (!mmr) {\n at.push({\n x: template <= 1 ? 3 : 2,\n y: -1\n });\n if (template === 0) {\n at.push({\n x: -3,\n y: -1\n }, {\n x: 2,\n y: -2\n }, {\n x: -2,\n y: -2\n });\n }\n }\n const grayScaleBitPlanes = [];\n let mmrInput, bitmap;\n if (mmr) {\n mmrInput = new Reader(decodingContext.data, decodingContext.start, decodingContext.end);\n }\n for (i = bitsPerValue - 1; i >= 0; i--) {\n if (mmr) {\n bitmap = decodeMMRBitmap(mmrInput, gridWidth, gridHeight, true);\n } else {\n bitmap = decodeBitmap(false, gridWidth, gridHeight, template, false, skip, at, decodingContext);\n }\n grayScaleBitPlanes[i] = bitmap;\n }\n let mg, ng, bit, patternIndex, patternBitmap, x, y, patternRow, regionRow;\n for (mg = 0; mg < gridHeight; mg++) {\n for (ng = 0; ng < gridWidth; ng++) {\n bit = 0;\n patternIndex = 0;\n for (j = bitsPerValue - 1; j >= 0; j--) {\n bit ^= grayScaleBitPlanes[j][mg][ng];\n patternIndex |= bit << j;\n }\n patternBitmap = patterns[patternIndex];\n x = gridOffsetX + mg * gridVectorY + ng * gridVectorX >> 8;\n y = gridOffsetY + mg * gridVectorX - ng * gridVectorY >> 8;\n if (x >= 0 && x + patternWidth <= regionWidth && y >= 0 && y + patternHeight <= regionHeight) {\n for (i = 0; i < patternHeight; i++) {\n regionRow = regionBitmap[y + i];\n patternRow = patternBitmap[i];\n for (j = 0; j < patternWidth; j++) {\n regionRow[x + j] |= patternRow[j];\n }\n }\n } else {\n let regionX, regionY;\n for (i = 0; i < patternHeight; i++) {\n regionY = y + i;\n if (regionY < 0 || regionY >= regionHeight) {\n continue;\n }\n regionRow = regionBitmap[regionY];\n patternRow = patternBitmap[i];\n for (j = 0; j < patternWidth; j++) {\n regionX = x + j;\n if (regionX >= 0 && regionX < regionWidth) {\n regionRow[regionX] |= patternRow[j];\n }\n }\n }\n }\n }\n }\n return regionBitmap;\n}\nfunction readSegmentHeader(data, start) {\n const segmentHeader = {};\n segmentHeader.number = (0, _core_utils.readUint32)(data, start);\n const flags = data[start + 4];\n const segmentType = flags & 0x3f;\n if (!SegmentTypes[segmentType]) {\n throw new Jbig2Error(\"invalid segment type: \" + segmentType);\n }\n segmentHeader.type = segmentType;\n segmentHeader.typeName = SegmentTypes[segmentType];\n segmentHeader.deferredNonRetain = !!(flags & 0x80);\n const pageAssociationFieldSize = !!(flags & 0x40);\n const referredFlags = data[start + 5];\n let referredToCount = referredFlags >> 5 & 7;\n const retainBits = [referredFlags & 31];\n let position = start + 6;\n if (referredFlags === 7) {\n referredToCount = (0, _core_utils.readUint32)(data, position - 1) & 0x1fffffff;\n position += 3;\n let bytes = referredToCount + 7 >> 3;\n retainBits[0] = data[position++];\n while (--bytes > 0) {\n retainBits.push(data[position++]);\n }\n } else if (referredFlags === 5 || referredFlags === 6) {\n throw new Jbig2Error(\"invalid referred-to flags\");\n }\n segmentHeader.retainBits = retainBits;\n let referredToSegmentNumberSize = 4;\n if (segmentHeader.number <= 256) {\n referredToSegmentNumberSize = 1;\n } else if (segmentHeader.number <= 65536) {\n referredToSegmentNumberSize = 2;\n }\n const referredTo = [];\n let i, ii;\n for (i = 0; i < referredToCount; i++) {\n let number;\n if (referredToSegmentNumberSize === 1) {\n number = data[position];\n } else if (referredToSegmentNumberSize === 2) {\n number = (0, _core_utils.readUint16)(data, position);\n } else {\n number = (0, _core_utils.readUint32)(data, position);\n }\n referredTo.push(number);\n position += referredToSegmentNumberSize;\n }\n segmentHeader.referredTo = referredTo;\n if (!pageAssociationFieldSize) {\n segmentHeader.pageAssociation = data[position++];\n } else {\n segmentHeader.pageAssociation = (0, _core_utils.readUint32)(data, position);\n position += 4;\n }\n segmentHeader.length = (0, _core_utils.readUint32)(data, position);\n position += 4;\n if (segmentHeader.length === 0xffffffff) {\n if (segmentType === 38) {\n const genericRegionInfo = readRegionSegmentInformation(data, position);\n const genericRegionSegmentFlags = data[position + RegionSegmentInformationFieldLength];\n const genericRegionMmr = !!(genericRegionSegmentFlags & 1);\n const searchPatternLength = 6;\n const searchPattern = new Uint8Array(searchPatternLength);\n if (!genericRegionMmr) {\n searchPattern[0] = 0xff;\n searchPattern[1] = 0xac;\n }\n searchPattern[2] = genericRegionInfo.height >>> 24 & 0xff;\n searchPattern[3] = genericRegionInfo.height >> 16 & 0xff;\n searchPattern[4] = genericRegionInfo.height >> 8 & 0xff;\n searchPattern[5] = genericRegionInfo.height & 0xff;\n for (i = position, ii = data.length; i < ii; i++) {\n let j = 0;\n while (j < searchPatternLength && searchPattern[j] === data[i + j]) {\n j++;\n }\n if (j === searchPatternLength) {\n segmentHeader.length = i + searchPatternLength;\n break;\n }\n }\n if (segmentHeader.length === 0xffffffff) {\n throw new Jbig2Error(\"segment end was not found\");\n }\n } else {\n throw new Jbig2Error(\"invalid unknown segment length\");\n }\n }\n segmentHeader.headerEnd = position;\n return segmentHeader;\n}\nfunction readSegments(header, data, start, end) {\n const segments = [];\n let position = start;\n while (position < end) {\n const segmentHeader = readSegmentHeader(data, position);\n position = segmentHeader.headerEnd;\n const segment = {\n header: segmentHeader,\n data\n };\n if (!header.randomAccess) {\n segment.start = position;\n position += segmentHeader.length;\n segment.end = position;\n }\n segments.push(segment);\n if (segmentHeader.type === 51) {\n break;\n }\n }\n if (header.randomAccess) {\n for (let i = 0, ii = segments.length; i < ii; i++) {\n segments[i].start = position;\n position += segments[i].header.length;\n segments[i].end = position;\n }\n }\n return segments;\n}\nfunction readRegionSegmentInformation(data, start) {\n return {\n width: (0, _core_utils.readUint32)(data, start),\n height: (0, _core_utils.readUint32)(data, start + 4),\n x: (0, _core_utils.readUint32)(data, start + 8),\n y: (0, _core_utils.readUint32)(data, start + 12),\n combinationOperator: data[start + 16] & 7\n };\n}\nconst RegionSegmentInformationFieldLength = 17;\nfunction processSegment(segment, visitor) {\n const header = segment.header;\n const data = segment.data,\n end = segment.end;\n let position = segment.start;\n let args, at, i, atLength;\n switch (header.type) {\n case 0:\n const dictionary = {};\n const dictionaryFlags = (0, _core_utils.readUint16)(data, position);\n dictionary.huffman = !!(dictionaryFlags & 1);\n dictionary.refinement = !!(dictionaryFlags & 2);\n dictionary.huffmanDHSelector = dictionaryFlags >> 2 & 3;\n dictionary.huffmanDWSelector = dictionaryFlags >> 4 & 3;\n dictionary.bitmapSizeSelector = dictionaryFlags >> 6 & 1;\n dictionary.aggregationInstancesSelector = dictionaryFlags >> 7 & 1;\n dictionary.bitmapCodingContextUsed = !!(dictionaryFlags & 256);\n dictionary.bitmapCodingContextRetained = !!(dictionaryFlags & 512);\n dictionary.template = dictionaryFlags >> 10 & 3;\n dictionary.refinementTemplate = dictionaryFlags >> 12 & 1;\n position += 2;\n if (!dictionary.huffman) {\n atLength = dictionary.template === 0 ? 4 : 1;\n at = [];\n for (i = 0; i < atLength; i++) {\n at.push({\n x: (0, _core_utils.readInt8)(data, position),\n y: (0, _core_utils.readInt8)(data, position + 1)\n });\n position += 2;\n }\n dictionary.at = at;\n }\n if (dictionary.refinement && !dictionary.refinementTemplate) {\n at = [];\n for (i = 0; i < 2; i++) {\n at.push({\n x: (0, _core_utils.readInt8)(data, position),\n y: (0, _core_utils.readInt8)(data, position + 1)\n });\n position += 2;\n }\n dictionary.refinementAt = at;\n }\n dictionary.numberOfExportedSymbols = (0, _core_utils.readUint32)(data, position);\n position += 4;\n dictionary.numberOfNewSymbols = (0, _core_utils.readUint32)(data, position);\n position += 4;\n args = [dictionary, header.number, header.referredTo, data, position, end];\n break;\n case 6:\n case 7:\n const textRegion = {};\n textRegion.info = readRegionSegmentInformation(data, position);\n position += RegionSegmentInformationFieldLength;\n const textRegionSegmentFlags = (0, _core_utils.readUint16)(data, position);\n position += 2;\n textRegion.huffman = !!(textRegionSegmentFlags & 1);\n textRegion.refinement = !!(textRegionSegmentFlags & 2);\n textRegion.logStripSize = textRegionSegmentFlags >> 2 & 3;\n textRegion.stripSize = 1 << textRegion.logStripSize;\n textRegion.referenceCorner = textRegionSegmentFlags >> 4 & 3;\n textRegion.transposed = !!(textRegionSegmentFlags & 64);\n textRegion.combinationOperator = textRegionSegmentFlags >> 7 & 3;\n textRegion.defaultPixelValue = textRegionSegmentFlags >> 9 & 1;\n textRegion.dsOffset = textRegionSegmentFlags << 17 >> 27;\n textRegion.refinementTemplate = textRegionSegmentFlags >> 15 & 1;\n if (textRegion.huffman) {\n const textRegionHuffmanFlags = (0, _core_utils.readUint16)(data, position);\n position += 2;\n textRegion.huffmanFS = textRegionHuffmanFlags & 3;\n textRegion.huffmanDS = textRegionHuffmanFlags >> 2 & 3;\n textRegion.huffmanDT = textRegionHuffmanFlags >> 4 & 3;\n textRegion.huffmanRefinementDW = textRegionHuffmanFlags >> 6 & 3;\n textRegion.huffmanRefinementDH = textRegionHuffmanFlags >> 8 & 3;\n textRegion.huffmanRefinementDX = textRegionHuffmanFlags >> 10 & 3;\n textRegion.huffmanRefinementDY = textRegionHuffmanFlags >> 12 & 3;\n textRegion.huffmanRefinementSizeSelector = !!(textRegionHuffmanFlags & 0x4000);\n }\n if (textRegion.refinement && !textRegion.refinementTemplate) {\n at = [];\n for (i = 0; i < 2; i++) {\n at.push({\n x: (0, _core_utils.readInt8)(data, position),\n y: (0, _core_utils.readInt8)(data, position + 1)\n });\n position += 2;\n }\n textRegion.refinementAt = at;\n }\n textRegion.numberOfSymbolInstances = (0, _core_utils.readUint32)(data, position);\n position += 4;\n args = [textRegion, header.referredTo, data, position, end];\n break;\n case 16:\n const patternDictionary = {};\n const patternDictionaryFlags = data[position++];\n patternDictionary.mmr = !!(patternDictionaryFlags & 1);\n patternDictionary.template = patternDictionaryFlags >> 1 & 3;\n patternDictionary.patternWidth = data[position++];\n patternDictionary.patternHeight = data[position++];\n patternDictionary.maxPatternIndex = (0, _core_utils.readUint32)(data, position);\n position += 4;\n args = [patternDictionary, header.number, data, position, end];\n break;\n case 22:\n case 23:\n const halftoneRegion = {};\n halftoneRegion.info = readRegionSegmentInformation(data, position);\n position += RegionSegmentInformationFieldLength;\n const halftoneRegionFlags = data[position++];\n halftoneRegion.mmr = !!(halftoneRegionFlags & 1);\n halftoneRegion.template = halftoneRegionFlags >> 1 & 3;\n halftoneRegion.enableSkip = !!(halftoneRegionFlags & 8);\n halftoneRegion.combinationOperator = halftoneRegionFlags >> 4 & 7;\n halftoneRegion.defaultPixelValue = halftoneRegionFlags >> 7 & 1;\n halftoneRegion.gridWidth = (0, _core_utils.readUint32)(data, position);\n position += 4;\n halftoneRegion.gridHeight = (0, _core_utils.readUint32)(data, position);\n position += 4;\n halftoneRegion.gridOffsetX = (0, _core_utils.readUint32)(data, position) & 0xffffffff;\n position += 4;\n halftoneRegion.gridOffsetY = (0, _core_utils.readUint32)(data, position) & 0xffffffff;\n position += 4;\n halftoneRegion.gridVectorX = (0, _core_utils.readUint16)(data, position);\n position += 2;\n halftoneRegion.gridVectorY = (0, _core_utils.readUint16)(data, position);\n position += 2;\n args = [halftoneRegion, header.referredTo, data, position, end];\n break;\n case 38:\n case 39:\n const genericRegion = {};\n genericRegion.info = readRegionSegmentInformation(data, position);\n position += RegionSegmentInformationFieldLength;\n const genericRegionSegmentFlags = data[position++];\n genericRegion.mmr = !!(genericRegionSegmentFlags & 1);\n genericRegion.template = genericRegionSegmentFlags >> 1 & 3;\n genericRegion.prediction = !!(genericRegionSegmentFlags & 8);\n if (!genericRegion.mmr) {\n atLength = genericRegion.template === 0 ? 4 : 1;\n at = [];\n for (i = 0; i < atLength; i++) {\n at.push({\n x: (0, _core_utils.readInt8)(data, position),\n y: (0, _core_utils.readInt8)(data, position + 1)\n });\n position += 2;\n }\n genericRegion.at = at;\n }\n args = [genericRegion, data, position, end];\n break;\n case 48:\n const pageInfo = {\n width: (0, _core_utils.readUint32)(data, position),\n height: (0, _core_utils.readUint32)(data, position + 4),\n resolutionX: (0, _core_utils.readUint32)(data, position + 8),\n resolutionY: (0, _core_utils.readUint32)(data, position + 12)\n };\n if (pageInfo.height === 0xffffffff) {\n delete pageInfo.height;\n }\n const pageSegmentFlags = data[position + 16];\n (0, _core_utils.readUint16)(data, position + 17);\n pageInfo.lossless = !!(pageSegmentFlags & 1);\n pageInfo.refinement = !!(pageSegmentFlags & 2);\n pageInfo.defaultPixelValue = pageSegmentFlags >> 2 & 1;\n pageInfo.combinationOperator = pageSegmentFlags >> 3 & 3;\n pageInfo.requiresBuffer = !!(pageSegmentFlags & 32);\n pageInfo.combinationOperatorOverride = !!(pageSegmentFlags & 64);\n args = [pageInfo];\n break;\n case 49:\n break;\n case 50:\n break;\n case 51:\n break;\n case 53:\n args = [header.number, data, position, end];\n break;\n case 62:\n break;\n default:\n throw new Jbig2Error(`segment type ${header.typeName}(${header.type}) is not implemented`);\n }\n const callbackName = \"on\" + header.typeName;\n if (callbackName in visitor) {\n visitor[callbackName].apply(visitor, args);\n }\n}\nfunction processSegments(segments, visitor) {\n for (let i = 0, ii = segments.length; i < ii; i++) {\n processSegment(segments[i], visitor);\n }\n}\nfunction parseJbig2Chunks(chunks) {\n const visitor = new SimpleSegmentVisitor();\n for (let i = 0, ii = chunks.length; i < ii; i++) {\n const chunk = chunks[i];\n const segments = readSegments({}, chunk.data, chunk.start, chunk.end);\n processSegments(segments, visitor);\n }\n return visitor.buffer;\n}\nfunction parseJbig2(data) {\n throw new Error(\"Not implemented: parseJbig2\");\n}\nclass SimpleSegmentVisitor {\n onPageInformation(info) {\n this.currentPageInfo = info;\n const rowSize = info.width + 7 >> 3;\n const buffer = new Uint8ClampedArray(rowSize * info.height);\n if (info.defaultPixelValue) {\n buffer.fill(0xff);\n }\n this.buffer = buffer;\n }\n drawBitmap(regionInfo, bitmap) {\n const pageInfo = this.currentPageInfo;\n const width = regionInfo.width,\n height = regionInfo.height;\n const rowSize = pageInfo.width + 7 >> 3;\n const combinationOperator = pageInfo.combinationOperatorOverride ? regionInfo.combinationOperator : pageInfo.combinationOperator;\n const buffer = this.buffer;\n const mask0 = 128 >> (regionInfo.x & 7);\n let offset0 = regionInfo.y * rowSize + (regionInfo.x >> 3);\n let i, j, mask, offset;\n switch (combinationOperator) {\n case 0:\n for (i = 0; i < height; i++) {\n mask = mask0;\n offset = offset0;\n for (j = 0; j < width; j++) {\n if (bitmap[i][j]) {\n buffer[offset] |= mask;\n }\n mask >>= 1;\n if (!mask) {\n mask = 128;\n offset++;\n }\n }\n offset0 += rowSize;\n }\n break;\n case 2:\n for (i = 0; i < height; i++) {\n mask = mask0;\n offset = offset0;\n for (j = 0; j < width; j++) {\n if (bitmap[i][j]) {\n buffer[offset] ^= mask;\n }\n mask >>= 1;\n if (!mask) {\n mask = 128;\n offset++;\n }\n }\n offset0 += rowSize;\n }\n break;\n default:\n throw new Jbig2Error(`operator ${combinationOperator} is not supported`);\n }\n }\n onImmediateGenericRegion(region, data, start, end) {\n const regionInfo = region.info;\n const decodingContext = new DecodingContext(data, start, end);\n const bitmap = decodeBitmap(region.mmr, regionInfo.width, regionInfo.height, region.template, region.prediction, null, region.at, decodingContext);\n this.drawBitmap(regionInfo, bitmap);\n }\n onImmediateLosslessGenericRegion() {\n this.onImmediateGenericRegion(...arguments);\n }\n onSymbolDictionary(dictionary, currentSegment, referredSegments, data, start, end) {\n let huffmanTables, huffmanInput;\n if (dictionary.huffman) {\n huffmanTables = getSymbolDictionaryHuffmanTables(dictionary, referredSegments, this.customTables);\n huffmanInput = new Reader(data, start, end);\n }\n let symbols = this.symbols;\n if (!symbols) {\n this.symbols = symbols = {};\n }\n const inputSymbols = [];\n for (const referredSegment of referredSegments) {\n const referredSymbols = symbols[referredSegment];\n if (referredSymbols) {\n inputSymbols.push(...referredSymbols);\n }\n }\n const decodingContext = new DecodingContext(data, start, end);\n symbols[currentSegment] = decodeSymbolDictionary(dictionary.huffman, dictionary.refinement, inputSymbols, dictionary.numberOfNewSymbols, dictionary.numberOfExportedSymbols, huffmanTables, dictionary.template, dictionary.at, dictionary.refinementTemplate, dictionary.refinementAt, decodingContext, huffmanInput);\n }\n onImmediateTextRegion(region, referredSegments, data, start, end) {\n const regionInfo = region.info;\n let huffmanTables, huffmanInput;\n const symbols = this.symbols;\n const inputSymbols = [];\n for (const referredSegment of referredSegments) {\n const referredSymbols = symbols[referredSegment];\n if (referredSymbols) {\n inputSymbols.push(...referredSymbols);\n }\n }\n const symbolCodeLength = (0, _core_utils.log2)(inputSymbols.length);\n if (region.huffman) {\n huffmanInput = new Reader(data, start, end);\n huffmanTables = getTextRegionHuffmanTables(region, referredSegments, this.customTables, inputSymbols.length, huffmanInput);\n }\n const decodingContext = new DecodingContext(data, start, end);\n const bitmap = decodeTextRegion(region.huffman, region.refinement, regionInfo.width, regionInfo.height, region.defaultPixelValue, region.numberOfSymbolInstances, region.stripSize, inputSymbols, symbolCodeLength, region.transposed, region.dsOffset, region.referenceCorner, region.combinationOperator, huffmanTables, region.refinementTemplate, region.refinementAt, decodingContext, region.logStripSize, huffmanInput);\n this.drawBitmap(regionInfo, bitmap);\n }\n onImmediateLosslessTextRegion() {\n this.onImmediateTextRegion(...arguments);\n }\n onPatternDictionary(dictionary, currentSegment, data, start, end) {\n let patterns = this.patterns;\n if (!patterns) {\n this.patterns = patterns = {};\n }\n const decodingContext = new DecodingContext(data, start, end);\n patterns[currentSegment] = decodePatternDictionary(dictionary.mmr, dictionary.patternWidth, dictionary.patternHeight, dictionary.maxPatternIndex, dictionary.template, decodingContext);\n }\n onImmediateHalftoneRegion(region, referredSegments, data, start, end) {\n const patterns = this.patterns[referredSegments[0]];\n const regionInfo = region.info;\n const decodingContext = new DecodingContext(data, start, end);\n const bitmap = decodeHalftoneRegion(region.mmr, patterns, region.template, regionInfo.width, regionInfo.height, region.defaultPixelValue, region.enableSkip, region.combinationOperator, region.gridWidth, region.gridHeight, region.gridOffsetX, region.gridOffsetY, region.gridVectorX, region.gridVectorY, decodingContext);\n this.drawBitmap(regionInfo, bitmap);\n }\n onImmediateLosslessHalftoneRegion() {\n this.onImmediateHalftoneRegion(...arguments);\n }\n onTables(currentSegment, data, start, end) {\n let customTables = this.customTables;\n if (!customTables) {\n this.customTables = customTables = {};\n }\n customTables[currentSegment] = decodeTablesSegment(data, start, end);\n }\n}\nclass HuffmanLine {\n constructor(lineData) {\n if (lineData.length === 2) {\n this.isOOB = true;\n this.rangeLow = 0;\n this.prefixLength = lineData[0];\n this.rangeLength = 0;\n this.prefixCode = lineData[1];\n this.isLowerRange = false;\n } else {\n this.isOOB = false;\n this.rangeLow = lineData[0];\n this.prefixLength = lineData[1];\n this.rangeLength = lineData[2];\n this.prefixCode = lineData[3];\n this.isLowerRange = lineData[4] === \"lower\";\n }\n }\n}\nclass HuffmanTreeNode {\n constructor(line) {\n this.children = [];\n if (line) {\n this.isLeaf = true;\n this.rangeLength = line.rangeLength;\n this.rangeLow = line.rangeLow;\n this.isLowerRange = line.isLowerRange;\n this.isOOB = line.isOOB;\n } else {\n this.isLeaf = false;\n }\n }\n buildTree(line, shift) {\n const bit = line.prefixCode >> shift & 1;\n if (shift <= 0) {\n this.children[bit] = new HuffmanTreeNode(line);\n } else {\n let node = this.children[bit];\n if (!node) {\n this.children[bit] = node = new HuffmanTreeNode(null);\n }\n node.buildTree(line, shift - 1);\n }\n }\n decodeNode(reader) {\n if (this.isLeaf) {\n if (this.isOOB) {\n return null;\n }\n const htOffset = reader.readBits(this.rangeLength);\n return this.rangeLow + (this.isLowerRange ? -htOffset : htOffset);\n }\n const node = this.children[reader.readBit()];\n if (!node) {\n throw new Jbig2Error(\"invalid Huffman data\");\n }\n return node.decodeNode(reader);\n }\n}\nclass HuffmanTable {\n constructor(lines, prefixCodesDone) {\n if (!prefixCodesDone) {\n this.assignPrefixCodes(lines);\n }\n this.rootNode = new HuffmanTreeNode(null);\n for (let i = 0, ii = lines.length; i < ii; i++) {\n const line = lines[i];\n if (line.prefixLength > 0) {\n this.rootNode.buildTree(line, line.prefixLength - 1);\n }\n }\n }\n decode(reader) {\n return this.rootNode.decodeNode(reader);\n }\n assignPrefixCodes(lines) {\n const linesLength = lines.length;\n let prefixLengthMax = 0;\n for (let i = 0; i < linesLength; i++) {\n prefixLengthMax = Math.max(prefixLengthMax, lines[i].prefixLength);\n }\n const histogram = new Uint32Array(prefixLengthMax + 1);\n for (let i = 0; i < linesLength; i++) {\n histogram[lines[i].prefixLength]++;\n }\n let currentLength = 1,\n firstCode = 0,\n currentCode,\n currentTemp,\n line;\n histogram[0] = 0;\n while (currentLength <= prefixLengthMax) {\n firstCode = firstCode + histogram[currentLength - 1] << 1;\n currentCode = firstCode;\n currentTemp = 0;\n while (currentTemp < linesLength) {\n line = lines[currentTemp];\n if (line.prefixLength === currentLength) {\n line.prefixCode = currentCode;\n currentCode++;\n }\n currentTemp++;\n }\n currentLength++;\n }\n }\n}\nfunction decodeTablesSegment(data, start, end) {\n const flags = data[start];\n const lowestValue = (0, _core_utils.readUint32)(data, start + 1) & 0xffffffff;\n const highestValue = (0, _core_utils.readUint32)(data, start + 5) & 0xffffffff;\n const reader = new Reader(data, start + 9, end);\n const prefixSizeBits = (flags >> 1 & 7) + 1;\n const rangeSizeBits = (flags >> 4 & 7) + 1;\n const lines = [];\n let prefixLength,\n rangeLength,\n currentRangeLow = lowestValue;\n do {\n prefixLength = reader.readBits(prefixSizeBits);\n rangeLength = reader.readBits(rangeSizeBits);\n lines.push(new HuffmanLine([currentRangeLow, prefixLength, rangeLength, 0]));\n currentRangeLow += 1 << rangeLength;\n } while (currentRangeLow < highestValue);\n prefixLength = reader.readBits(prefixSizeBits);\n lines.push(new HuffmanLine([lowestValue - 1, prefixLength, 32, 0, \"lower\"]));\n prefixLength = reader.readBits(prefixSizeBits);\n lines.push(new HuffmanLine([highestValue, prefixLength, 32, 0]));\n if (flags & 1) {\n prefixLength = reader.readBits(prefixSizeBits);\n lines.push(new HuffmanLine([prefixLength, 0]));\n }\n return new HuffmanTable(lines, false);\n}\nconst standardTablesCache = {};\nfunction getStandardTable(number) {\n let table = standardTablesCache[number];\n if (table) {\n return table;\n }\n let lines;\n switch (number) {\n case 1:\n lines = [[0, 1, 4, 0x0], [16, 2, 8, 0x2], [272, 3, 16, 0x6], [65808, 3, 32, 0x7]];\n break;\n case 2:\n lines = [[0, 1, 0, 0x0], [1, 2, 0, 0x2], [2, 3, 0, 0x6], [3, 4, 3, 0xe], [11, 5, 6, 0x1e], [75, 6, 32, 0x3e], [6, 0x3f]];\n break;\n case 3:\n lines = [[-256, 8, 8, 0xfe], [0, 1, 0, 0x0], [1, 2, 0, 0x2], [2, 3, 0, 0x6], [3, 4, 3, 0xe], [11, 5, 6, 0x1e], [-257, 8, 32, 0xff, \"lower\"], [75, 7, 32, 0x7e], [6, 0x3e]];\n break;\n case 4:\n lines = [[1, 1, 0, 0x0], [2, 2, 0, 0x2], [3, 3, 0, 0x6], [4, 4, 3, 0xe], [12, 5, 6, 0x1e], [76, 5, 32, 0x1f]];\n break;\n case 5:\n lines = [[-255, 7, 8, 0x7e], [1, 1, 0, 0x0], [2, 2, 0, 0x2], [3, 3, 0, 0x6], [4, 4, 3, 0xe], [12, 5, 6, 0x1e], [-256, 7, 32, 0x7f, \"lower\"], [76, 6, 32, 0x3e]];\n break;\n case 6:\n lines = [[-2048, 5, 10, 0x1c], [-1024, 4, 9, 0x8], [-512, 4, 8, 0x9], [-256, 4, 7, 0xa], [-128, 5, 6, 0x1d], [-64, 5, 5, 0x1e], [-32, 4, 5, 0xb], [0, 2, 7, 0x0], [128, 3, 7, 0x2], [256, 3, 8, 0x3], [512, 4, 9, 0xc], [1024, 4, 10, 0xd], [-2049, 6, 32, 0x3e, \"lower\"], [2048, 6, 32, 0x3f]];\n break;\n case 7:\n lines = [[-1024, 4, 9, 0x8], [-512, 3, 8, 0x0], [-256, 4, 7, 0x9], [-128, 5, 6, 0x1a], [-64, 5, 5, 0x1b], [-32, 4, 5, 0xa], [0, 4, 5, 0xb], [32, 5, 5, 0x1c], [64, 5, 6, 0x1d], [128, 4, 7, 0xc], [256, 3, 8, 0x1], [512, 3, 9, 0x2], [1024, 3, 10, 0x3], [-1025, 5, 32, 0x1e, \"lower\"], [2048, 5, 32, 0x1f]];\n break;\n case 8:\n lines = [[-15, 8, 3, 0xfc], [-7, 9, 1, 0x1fc], [-5, 8, 1, 0xfd], [-3, 9, 0, 0x1fd], [-2, 7, 0, 0x7c], [-1, 4, 0, 0xa], [0, 2, 1, 0x0], [2, 5, 0, 0x1a], [3, 6, 0, 0x3a], [4, 3, 4, 0x4], [20, 6, 1, 0x3b], [22, 4, 4, 0xb], [38, 4, 5, 0xc], [70, 5, 6, 0x1b], [134, 5, 7, 0x1c], [262, 6, 7, 0x3c], [390, 7, 8, 0x7d], [646, 6, 10, 0x3d], [-16, 9, 32, 0x1fe, \"lower\"], [1670, 9, 32, 0x1ff], [2, 0x1]];\n break;\n case 9:\n lines = [[-31, 8, 4, 0xfc], [-15, 9, 2, 0x1fc], [-11, 8, 2, 0xfd], [-7, 9, 1, 0x1fd], [-5, 7, 1, 0x7c], [-3, 4, 1, 0xa], [-1, 3, 1, 0x2], [1, 3, 1, 0x3], [3, 5, 1, 0x1a], [5, 6, 1, 0x3a], [7, 3, 5, 0x4], [39, 6, 2, 0x3b], [43, 4, 5, 0xb], [75, 4, 6, 0xc], [139, 5, 7, 0x1b], [267, 5, 8, 0x1c], [523, 6, 8, 0x3c], [779, 7, 9, 0x7d], [1291, 6, 11, 0x3d], [-32, 9, 32, 0x1fe, \"lower\"], [3339, 9, 32, 0x1ff], [2, 0x0]];\n break;\n case 10:\n lines = [[-21, 7, 4, 0x7a], [-5, 8, 0, 0xfc], [-4, 7, 0, 0x7b], [-3, 5, 0, 0x18], [-2, 2, 2, 0x0], [2, 5, 0, 0x19], [3, 6, 0, 0x36], [4, 7, 0, 0x7c], [5, 8, 0, 0xfd], [6, 2, 6, 0x1], [70, 5, 5, 0x1a], [102, 6, 5, 0x37], [134, 6, 6, 0x38], [198, 6, 7, 0x39], [326, 6, 8, 0x3a], [582, 6, 9, 0x3b], [1094, 6, 10, 0x3c], [2118, 7, 11, 0x7d], [-22, 8, 32, 0xfe, \"lower\"], [4166, 8, 32, 0xff], [2, 0x2]];\n break;\n case 11:\n lines = [[1, 1, 0, 0x0], [2, 2, 1, 0x2], [4, 4, 0, 0xc], [5, 4, 1, 0xd], [7, 5, 1, 0x1c], [9, 5, 2, 0x1d], [13, 6, 2, 0x3c], [17, 7, 2, 0x7a], [21, 7, 3, 0x7b], [29, 7, 4, 0x7c], [45, 7, 5, 0x7d], [77, 7, 6, 0x7e], [141, 7, 32, 0x7f]];\n break;\n case 12:\n lines = [[1, 1, 0, 0x0], [2, 2, 0, 0x2], [3, 3, 1, 0x6], [5, 5, 0, 0x1c], [6, 5, 1, 0x1d], [8, 6, 1, 0x3c], [10, 7, 0, 0x7a], [11, 7, 1, 0x7b], [13, 7, 2, 0x7c], [17, 7, 3, 0x7d], [25, 7, 4, 0x7e], [41, 8, 5, 0xfe], [73, 8, 32, 0xff]];\n break;\n case 13:\n lines = [[1, 1, 0, 0x0], [2, 3, 0, 0x4], [3, 4, 0, 0xc], [4, 5, 0, 0x1c], [5, 4, 1, 0xd], [7, 3, 3, 0x5], [15, 6, 1, 0x3a], [17, 6, 2, 0x3b], [21, 6, 3, 0x3c], [29, 6, 4, 0x3d], [45, 6, 5, 0x3e], [77, 7, 6, 0x7e], [141, 7, 32, 0x7f]];\n break;\n case 14:\n lines = [[-2, 3, 0, 0x4], [-1, 3, 0, 0x5], [0, 1, 0, 0x0], [1, 3, 0, 0x6], [2, 3, 0, 0x7]];\n break;\n case 15:\n lines = [[-24, 7, 4, 0x7c], [-8, 6, 2, 0x3c], [-4, 5, 1, 0x1c], [-2, 4, 0, 0xc], [-1, 3, 0, 0x4], [0, 1, 0, 0x0], [1, 3, 0, 0x5], [2, 4, 0, 0xd], [3, 5, 1, 0x1d], [5, 6, 2, 0x3d], [9, 7, 4, 0x7d], [-25, 7, 32, 0x7e, \"lower\"], [25, 7, 32, 0x7f]];\n break;\n default:\n throw new Jbig2Error(`standard table B.${number} does not exist`);\n }\n for (let i = 0, ii = lines.length; i < ii; i++) {\n lines[i] = new HuffmanLine(lines[i]);\n }\n table = new HuffmanTable(lines, true);\n standardTablesCache[number] = table;\n return table;\n}\nclass Reader {\n constructor(data, start, end) {\n this.data = data;\n this.start = start;\n this.end = end;\n this.position = start;\n this.shift = -1;\n this.currentByte = 0;\n }\n readBit() {\n if (this.shift < 0) {\n if (this.position >= this.end) {\n throw new Jbig2Error(\"end of data while reading bit\");\n }\n this.currentByte = this.data[this.position++];\n this.shift = 7;\n }\n const bit = this.currentByte >> this.shift & 1;\n this.shift--;\n return bit;\n }\n readBits(numBits) {\n let result = 0,\n i;\n for (i = numBits - 1; i >= 0; i--) {\n result |= this.readBit() << i;\n }\n return result;\n }\n byteAlign() {\n this.shift = -1;\n }\n next() {\n if (this.position >= this.end) {\n return -1;\n }\n return this.data[this.position++];\n }\n}\nfunction getCustomHuffmanTable(index, referredTo, customTables) {\n let currentIndex = 0;\n for (let i = 0, ii = referredTo.length; i < ii; i++) {\n const table = customTables[referredTo[i]];\n if (table) {\n if (index === currentIndex) {\n return table;\n }\n currentIndex++;\n }\n }\n throw new Jbig2Error(\"can't find custom Huffman table\");\n}\nfunction getTextRegionHuffmanTables(textRegion, referredTo, customTables, numberOfSymbols, reader) {\n const codes = [];\n for (let i = 0; i <= 34; i++) {\n const codeLength = reader.readBits(4);\n codes.push(new HuffmanLine([i, codeLength, 0, 0]));\n }\n const runCodesTable = new HuffmanTable(codes, false);\n codes.length = 0;\n for (let i = 0; i < numberOfSymbols;) {\n const codeLength = runCodesTable.decode(reader);\n if (codeLength >= 32) {\n let repeatedLength, numberOfRepeats, j;\n switch (codeLength) {\n case 32:\n if (i === 0) {\n throw new Jbig2Error(\"no previous value in symbol ID table\");\n }\n numberOfRepeats = reader.readBits(2) + 3;\n repeatedLength = codes[i - 1].prefixLength;\n break;\n case 33:\n numberOfRepeats = reader.readBits(3) + 3;\n repeatedLength = 0;\n break;\n case 34:\n numberOfRepeats = reader.readBits(7) + 11;\n repeatedLength = 0;\n break;\n default:\n throw new Jbig2Error(\"invalid code length in symbol ID table\");\n }\n for (j = 0; j < numberOfRepeats; j++) {\n codes.push(new HuffmanLine([i, repeatedLength, 0, 0]));\n i++;\n }\n } else {\n codes.push(new HuffmanLine([i, codeLength, 0, 0]));\n i++;\n }\n }\n reader.byteAlign();\n const symbolIDTable = new HuffmanTable(codes, false);\n let customIndex = 0,\n tableFirstS,\n tableDeltaS,\n tableDeltaT;\n switch (textRegion.huffmanFS) {\n case 0:\n case 1:\n tableFirstS = getStandardTable(textRegion.huffmanFS + 6);\n break;\n case 3:\n tableFirstS = getCustomHuffmanTable(customIndex, referredTo, customTables);\n customIndex++;\n break;\n default:\n throw new Jbig2Error(\"invalid Huffman FS selector\");\n }\n switch (textRegion.huffmanDS) {\n case 0:\n case 1:\n case 2:\n tableDeltaS = getStandardTable(textRegion.huffmanDS + 8);\n break;\n case 3:\n tableDeltaS = getCustomHuffmanTable(customIndex, referredTo, customTables);\n customIndex++;\n break;\n default:\n throw new Jbig2Error(\"invalid Huffman DS selector\");\n }\n switch (textRegion.huffmanDT) {\n case 0:\n case 1:\n case 2:\n tableDeltaT = getStandardTable(textRegion.huffmanDT + 11);\n break;\n case 3:\n tableDeltaT = getCustomHuffmanTable(customIndex, referredTo, customTables);\n customIndex++;\n break;\n default:\n throw new Jbig2Error(\"invalid Huffman DT selector\");\n }\n if (textRegion.refinement) {\n throw new Jbig2Error(\"refinement with Huffman is not supported\");\n }\n return {\n symbolIDTable,\n tableFirstS,\n tableDeltaS,\n tableDeltaT\n };\n}\nfunction getSymbolDictionaryHuffmanTables(dictionary, referredTo, customTables) {\n let customIndex = 0,\n tableDeltaHeight,\n tableDeltaWidth;\n switch (dictionary.huffmanDHSelector) {\n case 0:\n case 1:\n tableDeltaHeight = getStandardTable(dictionary.huffmanDHSelector + 4);\n break;\n case 3:\n tableDeltaHeight = getCustomHuffmanTable(customIndex, referredTo, customTables);\n customIndex++;\n break;\n default:\n throw new Jbig2Error(\"invalid Huffman DH selector\");\n }\n switch (dictionary.huffmanDWSelector) {\n case 0:\n case 1:\n tableDeltaWidth = getStandardTable(dictionary.huffmanDWSelector + 2);\n break;\n case 3:\n tableDeltaWidth = getCustomHuffmanTable(customIndex, referredTo, customTables);\n customIndex++;\n break;\n default:\n throw new Jbig2Error(\"invalid Huffman DW selector\");\n }\n let tableBitmapSize, tableAggregateInstances;\n if (dictionary.bitmapSizeSelector) {\n tableBitmapSize = getCustomHuffmanTable(customIndex, referredTo, customTables);\n customIndex++;\n } else {\n tableBitmapSize = getStandardTable(1);\n }\n if (dictionary.aggregationInstancesSelector) {\n tableAggregateInstances = getCustomHuffmanTable(customIndex, referredTo, customTables);\n } else {\n tableAggregateInstances = getStandardTable(1);\n }\n return {\n tableDeltaHeight,\n tableDeltaWidth,\n tableBitmapSize,\n tableAggregateInstances\n };\n}\nfunction readUncompressedBitmap(reader, width, height) {\n const bitmap = [];\n for (let y = 0; y < height; y++) {\n const row = new Uint8Array(width);\n bitmap.push(row);\n for (let x = 0; x < width; x++) {\n row[x] = reader.readBit();\n }\n reader.byteAlign();\n }\n return bitmap;\n}\nfunction decodeMMRBitmap(input, width, height, endOfBlock) {\n const params = {\n K: -1,\n Columns: width,\n Rows: height,\n BlackIs1: true,\n EndOfBlock: endOfBlock\n };\n const decoder = new _ccitt.CCITTFaxDecoder(input, params);\n const bitmap = [];\n let currentByte,\n eof = false;\n for (let y = 0; y < height; y++) {\n const row = new Uint8Array(width);\n bitmap.push(row);\n let shift = -1;\n for (let x = 0; x < width; x++) {\n if (shift < 0) {\n currentByte = decoder.readNextChar();\n if (currentByte === -1) {\n currentByte = 0;\n eof = true;\n }\n shift = 7;\n }\n row[x] = currentByte >> shift & 1;\n shift--;\n }\n }\n if (endOfBlock && !eof) {\n const lookForEOFLimit = 5;\n for (let i = 0; i < lookForEOFLimit; i++) {\n if (decoder.readNextChar() === -1) {\n break;\n }\n }\n }\n return bitmap;\n}\nclass Jbig2Image {\n parseChunks(chunks) {\n return parseJbig2Chunks(chunks);\n }\n parse(data) {\n throw new Error(\"Not implemented: Jbig2Image.parse\");\n }\n}\nexports.Jbig2Image = Jbig2Image;\n\n/***/ }),\n/* 25 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ArithmeticDecoder = void 0;\nconst QeTable = [{\n qe: 0x5601,\n nmps: 1,\n nlps: 1,\n switchFlag: 1\n}, {\n qe: 0x3401,\n nmps: 2,\n nlps: 6,\n switchFlag: 0\n}, {\n qe: 0x1801,\n nmps: 3,\n nlps: 9,\n switchFlag: 0\n}, {\n qe: 0x0ac1,\n nmps: 4,\n nlps: 12,\n switchFlag: 0\n}, {\n qe: 0x0521,\n nmps: 5,\n nlps: 29,\n switchFlag: 0\n}, {\n qe: 0x0221,\n nmps: 38,\n nlps: 33,\n switchFlag: 0\n}, {\n qe: 0x5601,\n nmps: 7,\n nlps: 6,\n switchFlag: 1\n}, {\n qe: 0x5401,\n nmps: 8,\n nlps: 14,\n switchFlag: 0\n}, {\n qe: 0x4801,\n nmps: 9,\n nlps: 14,\n switchFlag: 0\n}, {\n qe: 0x3801,\n nmps: 10,\n nlps: 14,\n switchFlag: 0\n}, {\n qe: 0x3001,\n nmps: 11,\n nlps: 17,\n switchFlag: 0\n}, {\n qe: 0x2401,\n nmps: 12,\n nlps: 18,\n switchFlag: 0\n}, {\n qe: 0x1c01,\n nmps: 13,\n nlps: 20,\n switchFlag: 0\n}, {\n qe: 0x1601,\n nmps: 29,\n nlps: 21,\n switchFlag: 0\n}, {\n qe: 0x5601,\n nmps: 15,\n nlps: 14,\n switchFlag: 1\n}, {\n qe: 0x5401,\n nmps: 16,\n nlps: 14,\n switchFlag: 0\n}, {\n qe: 0x5101,\n nmps: 17,\n nlps: 15,\n switchFlag: 0\n}, {\n qe: 0x4801,\n nmps: 18,\n nlps: 16,\n switchFlag: 0\n}, {\n qe: 0x3801,\n nmps: 19,\n nlps: 17,\n switchFlag: 0\n}, {\n qe: 0x3401,\n nmps: 20,\n nlps: 18,\n switchFlag: 0\n}, {\n qe: 0x3001,\n nmps: 21,\n nlps: 19,\n switchFlag: 0\n}, {\n qe: 0x2801,\n nmps: 22,\n nlps: 19,\n switchFlag: 0\n}, {\n qe: 0x2401,\n nmps: 23,\n nlps: 20,\n switchFlag: 0\n}, {\n qe: 0x2201,\n nmps: 24,\n nlps: 21,\n switchFlag: 0\n}, {\n qe: 0x1c01,\n nmps: 25,\n nlps: 22,\n switchFlag: 0\n}, {\n qe: 0x1801,\n nmps: 26,\n nlps: 23,\n switchFlag: 0\n}, {\n qe: 0x1601,\n nmps: 27,\n nlps: 24,\n switchFlag: 0\n}, {\n qe: 0x1401,\n nmps: 28,\n nlps: 25,\n switchFlag: 0\n}, {\n qe: 0x1201,\n nmps: 29,\n nlps: 26,\n switchFlag: 0\n}, {\n qe: 0x1101,\n nmps: 30,\n nlps: 27,\n switchFlag: 0\n}, {\n qe: 0x0ac1,\n nmps: 31,\n nlps: 28,\n switchFlag: 0\n}, {\n qe: 0x09c1,\n nmps: 32,\n nlps: 29,\n switchFlag: 0\n}, {\n qe: 0x08a1,\n nmps: 33,\n nlps: 30,\n switchFlag: 0\n}, {\n qe: 0x0521,\n nmps: 34,\n nlps: 31,\n switchFlag: 0\n}, {\n qe: 0x0441,\n nmps: 35,\n nlps: 32,\n switchFlag: 0\n}, {\n qe: 0x02a1,\n nmps: 36,\n nlps: 33,\n switchFlag: 0\n}, {\n qe: 0x0221,\n nmps: 37,\n nlps: 34,\n switchFlag: 0\n}, {\n qe: 0x0141,\n nmps: 38,\n nlps: 35,\n switchFlag: 0\n}, {\n qe: 0x0111,\n nmps: 39,\n nlps: 36,\n switchFlag: 0\n}, {\n qe: 0x0085,\n nmps: 40,\n nlps: 37,\n switchFlag: 0\n}, {\n qe: 0x0049,\n nmps: 41,\n nlps: 38,\n switchFlag: 0\n}, {\n qe: 0x0025,\n nmps: 42,\n nlps: 39,\n switchFlag: 0\n}, {\n qe: 0x0015,\n nmps: 43,\n nlps: 40,\n switchFlag: 0\n}, {\n qe: 0x0009,\n nmps: 44,\n nlps: 41,\n switchFlag: 0\n}, {\n qe: 0x0005,\n nmps: 45,\n nlps: 42,\n switchFlag: 0\n}, {\n qe: 0x0001,\n nmps: 45,\n nlps: 43,\n switchFlag: 0\n}, {\n qe: 0x5601,\n nmps: 46,\n nlps: 46,\n switchFlag: 0\n}];\nclass ArithmeticDecoder {\n constructor(data, start, end) {\n this.data = data;\n this.bp = start;\n this.dataEnd = end;\n this.chigh = data[start];\n this.clow = 0;\n this.byteIn();\n this.chigh = this.chigh << 7 & 0xffff | this.clow >> 9 & 0x7f;\n this.clow = this.clow << 7 & 0xffff;\n this.ct -= 7;\n this.a = 0x8000;\n }\n byteIn() {\n const data = this.data;\n let bp = this.bp;\n if (data[bp] === 0xff) {\n if (data[bp + 1] > 0x8f) {\n this.clow += 0xff00;\n this.ct = 8;\n } else {\n bp++;\n this.clow += data[bp] << 9;\n this.ct = 7;\n this.bp = bp;\n }\n } else {\n bp++;\n this.clow += bp < this.dataEnd ? data[bp] << 8 : 0xff00;\n this.ct = 8;\n this.bp = bp;\n }\n if (this.clow > 0xffff) {\n this.chigh += this.clow >> 16;\n this.clow &= 0xffff;\n }\n }\n readBit(contexts, pos) {\n let cx_index = contexts[pos] >> 1,\n cx_mps = contexts[pos] & 1;\n const qeTableIcx = QeTable[cx_index];\n const qeIcx = qeTableIcx.qe;\n let d;\n let a = this.a - qeIcx;\n if (this.chigh < qeIcx) {\n if (a < qeIcx) {\n a = qeIcx;\n d = cx_mps;\n cx_index = qeTableIcx.nmps;\n } else {\n a = qeIcx;\n d = 1 ^ cx_mps;\n if (qeTableIcx.switchFlag === 1) {\n cx_mps = d;\n }\n cx_index = qeTableIcx.nlps;\n }\n } else {\n this.chigh -= qeIcx;\n if ((a & 0x8000) !== 0) {\n this.a = a;\n return cx_mps;\n }\n if (a < qeIcx) {\n d = 1 ^ cx_mps;\n if (qeTableIcx.switchFlag === 1) {\n cx_mps = d;\n }\n cx_index = qeTableIcx.nlps;\n } else {\n d = cx_mps;\n cx_index = qeTableIcx.nmps;\n }\n }\n do {\n if (this.ct === 0) {\n this.byteIn();\n }\n a <<= 1;\n this.chigh = this.chigh << 1 & 0xffff | this.clow >> 15 & 1;\n this.clow = this.clow << 1 & 0xffff;\n this.ct--;\n } while ((a & 0x8000) === 0);\n this.a = a;\n contexts[pos] = cx_index << 1 | cx_mps;\n return d;\n }\n}\nexports.ArithmeticDecoder = ArithmeticDecoder;\n\n/***/ }),\n/* 26 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.JpegStream = void 0;\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _primitives = __w_pdfjs_require__(4);\nvar _jpg = __w_pdfjs_require__(27);\nvar _util = __w_pdfjs_require__(2);\nclass JpegStream extends _decode_stream.DecodeStream {\n constructor(stream, maybeLength, params) {\n let ch;\n while ((ch = stream.getByte()) !== -1) {\n if (ch === 0xff) {\n stream.skip(-1);\n break;\n }\n }\n super(maybeLength);\n this.stream = stream;\n this.dict = stream.dict;\n this.maybeLength = maybeLength;\n this.params = params;\n }\n get bytes() {\n return (0, _util.shadow)(this, \"bytes\", this.stream.getBytes(this.maybeLength));\n }\n ensureBuffer(requested) {}\n readBlock() {\n if (this.eof) {\n return;\n }\n const jpegOptions = {\n decodeTransform: undefined,\n colorTransform: undefined\n };\n const decodeArr = this.dict.getArray(\"D\", \"Decode\");\n if ((this.forceRGBA || this.forceRGB) && Array.isArray(decodeArr)) {\n const bitsPerComponent = this.dict.get(\"BPC\", \"BitsPerComponent\") || 8;\n const decodeArrLength = decodeArr.length;\n const transform = new Int32Array(decodeArrLength);\n let transformNeeded = false;\n const maxValue = (1 << bitsPerComponent) - 1;\n for (let i = 0; i < decodeArrLength; i += 2) {\n transform[i] = (decodeArr[i + 1] - decodeArr[i]) * 256 | 0;\n transform[i + 1] = decodeArr[i] * maxValue | 0;\n if (transform[i] !== 256 || transform[i + 1] !== 0) {\n transformNeeded = true;\n }\n }\n if (transformNeeded) {\n jpegOptions.decodeTransform = transform;\n }\n }\n if (this.params instanceof _primitives.Dict) {\n const colorTransform = this.params.get(\"ColorTransform\");\n if (Number.isInteger(colorTransform)) {\n jpegOptions.colorTransform = colorTransform;\n }\n }\n const jpegImage = new _jpg.JpegImage(jpegOptions);\n jpegImage.parse(this.bytes);\n const data = jpegImage.getData({\n width: this.drawWidth,\n height: this.drawHeight,\n forceRGBA: this.forceRGBA,\n forceRGB: this.forceRGB,\n isSourcePDF: true\n });\n this.buffer = data;\n this.bufferLength = data.length;\n this.eof = true;\n }\n}\nexports.JpegStream = JpegStream;\n\n/***/ }),\n/* 27 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.JpegImage = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _image_utils = __w_pdfjs_require__(28);\nvar _core_utils = __w_pdfjs_require__(3);\nclass JpegError extends _util.BaseException {\n constructor(msg) {\n super(`JPEG error: ${msg}`, \"JpegError\");\n }\n}\nclass DNLMarkerError extends _util.BaseException {\n constructor(message, scanLines) {\n super(message, \"DNLMarkerError\");\n this.scanLines = scanLines;\n }\n}\nclass EOIMarkerError extends _util.BaseException {\n constructor(msg) {\n super(msg, \"EOIMarkerError\");\n }\n}\nconst dctZigZag = new Uint8Array([0, 1, 8, 16, 9, 2, 3, 10, 17, 24, 32, 25, 18, 11, 4, 5, 12, 19, 26, 33, 40, 48, 41, 34, 27, 20, 13, 6, 7, 14, 21, 28, 35, 42, 49, 56, 57, 50, 43, 36, 29, 22, 15, 23, 30, 37, 44, 51, 58, 59, 52, 45, 38, 31, 39, 46, 53, 60, 61, 54, 47, 55, 62, 63]);\nconst dctCos1 = 4017;\nconst dctSin1 = 799;\nconst dctCos3 = 3406;\nconst dctSin3 = 2276;\nconst dctCos6 = 1567;\nconst dctSin6 = 3784;\nconst dctSqrt2 = 5793;\nconst dctSqrt1d2 = 2896;\nfunction buildHuffmanTable(codeLengths, values) {\n let k = 0,\n i,\n j,\n length = 16;\n while (length > 0 && !codeLengths[length - 1]) {\n length--;\n }\n const code = [{\n children: [],\n index: 0\n }];\n let p = code[0],\n q;\n for (i = 0; i < length; i++) {\n for (j = 0; j < codeLengths[i]; j++) {\n p = code.pop();\n p.children[p.index] = values[k];\n while (p.index > 0) {\n p = code.pop();\n }\n p.index++;\n code.push(p);\n while (code.length <= i) {\n code.push(q = {\n children: [],\n index: 0\n });\n p.children[p.index] = q.children;\n p = q;\n }\n k++;\n }\n if (i + 1 < length) {\n code.push(q = {\n children: [],\n index: 0\n });\n p.children[p.index] = q.children;\n p = q;\n }\n }\n return code[0].children;\n}\nfunction getBlockBufferOffset(component, row, col) {\n return 64 * ((component.blocksPerLine + 1) * row + col);\n}\nfunction decodeScan(data, offset, frame, components, resetInterval, spectralStart, spectralEnd, successivePrev, successive, parseDNLMarker = false) {\n const mcusPerLine = frame.mcusPerLine;\n const progressive = frame.progressive;\n const startOffset = offset;\n let bitsData = 0,\n bitsCount = 0;\n function readBit() {\n if (bitsCount > 0) {\n bitsCount--;\n return bitsData >> bitsCount & 1;\n }\n bitsData = data[offset++];\n if (bitsData === 0xff) {\n const nextByte = data[offset++];\n if (nextByte) {\n if (nextByte === 0xdc && parseDNLMarker) {\n offset += 2;\n const scanLines = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n if (scanLines > 0 && scanLines !== frame.scanLines) {\n throw new DNLMarkerError(\"Found DNL marker (0xFFDC) while parsing scan data\", scanLines);\n }\n } else if (nextByte === 0xd9) {\n if (parseDNLMarker) {\n const maybeScanLines = blockRow * (frame.precision === 8 ? 8 : 0);\n if (maybeScanLines > 0 && Math.round(frame.scanLines / maybeScanLines) >= 5) {\n throw new DNLMarkerError(\"Found EOI marker (0xFFD9) while parsing scan data, \" + \"possibly caused by incorrect `scanLines` parameter\", maybeScanLines);\n }\n }\n throw new EOIMarkerError(\"Found EOI marker (0xFFD9) while parsing scan data\");\n }\n throw new JpegError(`unexpected marker ${(bitsData << 8 | nextByte).toString(16)}`);\n }\n }\n bitsCount = 7;\n return bitsData >>> 7;\n }\n function decodeHuffman(tree) {\n let node = tree;\n while (true) {\n node = node[readBit()];\n switch (typeof node) {\n case \"number\":\n return node;\n case \"object\":\n continue;\n }\n throw new JpegError(\"invalid huffman sequence\");\n }\n }\n function receive(length) {\n let n = 0;\n while (length > 0) {\n n = n << 1 | readBit();\n length--;\n }\n return n;\n }\n function receiveAndExtend(length) {\n if (length === 1) {\n return readBit() === 1 ? 1 : -1;\n }\n const n = receive(length);\n if (n >= 1 << length - 1) {\n return n;\n }\n return n + (-1 << length) + 1;\n }\n function decodeBaseline(component, blockOffset) {\n const t = decodeHuffman(component.huffmanTableDC);\n const diff = t === 0 ? 0 : receiveAndExtend(t);\n component.blockData[blockOffset] = component.pred += diff;\n let k = 1;\n while (k < 64) {\n const rs = decodeHuffman(component.huffmanTableAC);\n const s = rs & 15,\n r = rs >> 4;\n if (s === 0) {\n if (r < 15) {\n break;\n }\n k += 16;\n continue;\n }\n k += r;\n const z = dctZigZag[k];\n component.blockData[blockOffset + z] = receiveAndExtend(s);\n k++;\n }\n }\n function decodeDCFirst(component, blockOffset) {\n const t = decodeHuffman(component.huffmanTableDC);\n const diff = t === 0 ? 0 : receiveAndExtend(t) << successive;\n component.blockData[blockOffset] = component.pred += diff;\n }\n function decodeDCSuccessive(component, blockOffset) {\n component.blockData[blockOffset] |= readBit() << successive;\n }\n let eobrun = 0;\n function decodeACFirst(component, blockOffset) {\n if (eobrun > 0) {\n eobrun--;\n return;\n }\n let k = spectralStart;\n const e = spectralEnd;\n while (k <= e) {\n const rs = decodeHuffman(component.huffmanTableAC);\n const s = rs & 15,\n r = rs >> 4;\n if (s === 0) {\n if (r < 15) {\n eobrun = receive(r) + (1 << r) - 1;\n break;\n }\n k += 16;\n continue;\n }\n k += r;\n const z = dctZigZag[k];\n component.blockData[blockOffset + z] = receiveAndExtend(s) * (1 << successive);\n k++;\n }\n }\n let successiveACState = 0,\n successiveACNextValue;\n function decodeACSuccessive(component, blockOffset) {\n let k = spectralStart;\n const e = spectralEnd;\n let r = 0;\n let s;\n let rs;\n while (k <= e) {\n const offsetZ = blockOffset + dctZigZag[k];\n const sign = component.blockData[offsetZ] < 0 ? -1 : 1;\n switch (successiveACState) {\n case 0:\n rs = decodeHuffman(component.huffmanTableAC);\n s = rs & 15;\n r = rs >> 4;\n if (s === 0) {\n if (r < 15) {\n eobrun = receive(r) + (1 << r);\n successiveACState = 4;\n } else {\n r = 16;\n successiveACState = 1;\n }\n } else {\n if (s !== 1) {\n throw new JpegError(\"invalid ACn encoding\");\n }\n successiveACNextValue = receiveAndExtend(s);\n successiveACState = r ? 2 : 3;\n }\n continue;\n case 1:\n case 2:\n if (component.blockData[offsetZ]) {\n component.blockData[offsetZ] += sign * (readBit() << successive);\n } else {\n r--;\n if (r === 0) {\n successiveACState = successiveACState === 2 ? 3 : 0;\n }\n }\n break;\n case 3:\n if (component.blockData[offsetZ]) {\n component.blockData[offsetZ] += sign * (readBit() << successive);\n } else {\n component.blockData[offsetZ] = successiveACNextValue << successive;\n successiveACState = 0;\n }\n break;\n case 4:\n if (component.blockData[offsetZ]) {\n component.blockData[offsetZ] += sign * (readBit() << successive);\n }\n break;\n }\n k++;\n }\n if (successiveACState === 4) {\n eobrun--;\n if (eobrun === 0) {\n successiveACState = 0;\n }\n }\n }\n let blockRow = 0;\n function decodeMcu(component, decode, mcu, row, col) {\n const mcuRow = mcu / mcusPerLine | 0;\n const mcuCol = mcu % mcusPerLine;\n blockRow = mcuRow * component.v + row;\n const blockCol = mcuCol * component.h + col;\n const blockOffset = getBlockBufferOffset(component, blockRow, blockCol);\n decode(component, blockOffset);\n }\n function decodeBlock(component, decode, mcu) {\n blockRow = mcu / component.blocksPerLine | 0;\n const blockCol = mcu % component.blocksPerLine;\n const blockOffset = getBlockBufferOffset(component, blockRow, blockCol);\n decode(component, blockOffset);\n }\n const componentsLength = components.length;\n let component, i, j, k, n;\n let decodeFn;\n if (progressive) {\n if (spectralStart === 0) {\n decodeFn = successivePrev === 0 ? decodeDCFirst : decodeDCSuccessive;\n } else {\n decodeFn = successivePrev === 0 ? decodeACFirst : decodeACSuccessive;\n }\n } else {\n decodeFn = decodeBaseline;\n }\n let mcu = 0,\n fileMarker;\n const mcuExpected = componentsLength === 1 ? components[0].blocksPerLine * components[0].blocksPerColumn : mcusPerLine * frame.mcusPerColumn;\n let h, v;\n while (mcu <= mcuExpected) {\n const mcuToRead = resetInterval ? Math.min(mcuExpected - mcu, resetInterval) : mcuExpected;\n if (mcuToRead > 0) {\n for (i = 0; i < componentsLength; i++) {\n components[i].pred = 0;\n }\n eobrun = 0;\n if (componentsLength === 1) {\n component = components[0];\n for (n = 0; n < mcuToRead; n++) {\n decodeBlock(component, decodeFn, mcu);\n mcu++;\n }\n } else {\n for (n = 0; n < mcuToRead; n++) {\n for (i = 0; i < componentsLength; i++) {\n component = components[i];\n h = component.h;\n v = component.v;\n for (j = 0; j < v; j++) {\n for (k = 0; k < h; k++) {\n decodeMcu(component, decodeFn, mcu, j, k);\n }\n }\n }\n mcu++;\n }\n }\n }\n bitsCount = 0;\n fileMarker = findNextFileMarker(data, offset);\n if (!fileMarker) {\n break;\n }\n if (fileMarker.invalid) {\n const partialMsg = mcuToRead > 0 ? \"unexpected\" : \"excessive\";\n (0, _util.warn)(`decodeScan - ${partialMsg} MCU data, current marker is: ${fileMarker.invalid}`);\n offset = fileMarker.offset;\n }\n if (fileMarker.marker >= 0xffd0 && fileMarker.marker <= 0xffd7) {\n offset += 2;\n } else {\n break;\n }\n }\n return offset - startOffset;\n}\nfunction quantizeAndInverse(component, blockBufferOffset, p) {\n const qt = component.quantizationTable,\n blockData = component.blockData;\n let v0, v1, v2, v3, v4, v5, v6, v7;\n let p0, p1, p2, p3, p4, p5, p6, p7;\n let t;\n if (!qt) {\n throw new JpegError(\"missing required Quantization Table.\");\n }\n for (let row = 0; row < 64; row += 8) {\n p0 = blockData[blockBufferOffset + row];\n p1 = blockData[blockBufferOffset + row + 1];\n p2 = blockData[blockBufferOffset + row + 2];\n p3 = blockData[blockBufferOffset + row + 3];\n p4 = blockData[blockBufferOffset + row + 4];\n p5 = blockData[blockBufferOffset + row + 5];\n p6 = blockData[blockBufferOffset + row + 6];\n p7 = blockData[blockBufferOffset + row + 7];\n p0 *= qt[row];\n if ((p1 | p2 | p3 | p4 | p5 | p6 | p7) === 0) {\n t = dctSqrt2 * p0 + 512 >> 10;\n p[row] = t;\n p[row + 1] = t;\n p[row + 2] = t;\n p[row + 3] = t;\n p[row + 4] = t;\n p[row + 5] = t;\n p[row + 6] = t;\n p[row + 7] = t;\n continue;\n }\n p1 *= qt[row + 1];\n p2 *= qt[row + 2];\n p3 *= qt[row + 3];\n p4 *= qt[row + 4];\n p5 *= qt[row + 5];\n p6 *= qt[row + 6];\n p7 *= qt[row + 7];\n v0 = dctSqrt2 * p0 + 128 >> 8;\n v1 = dctSqrt2 * p4 + 128 >> 8;\n v2 = p2;\n v3 = p6;\n v4 = dctSqrt1d2 * (p1 - p7) + 128 >> 8;\n v7 = dctSqrt1d2 * (p1 + p7) + 128 >> 8;\n v5 = p3 << 4;\n v6 = p5 << 4;\n v0 = v0 + v1 + 1 >> 1;\n v1 = v0 - v1;\n t = v2 * dctSin6 + v3 * dctCos6 + 128 >> 8;\n v2 = v2 * dctCos6 - v3 * dctSin6 + 128 >> 8;\n v3 = t;\n v4 = v4 + v6 + 1 >> 1;\n v6 = v4 - v6;\n v7 = v7 + v5 + 1 >> 1;\n v5 = v7 - v5;\n v0 = v0 + v3 + 1 >> 1;\n v3 = v0 - v3;\n v1 = v1 + v2 + 1 >> 1;\n v2 = v1 - v2;\n t = v4 * dctSin3 + v7 * dctCos3 + 2048 >> 12;\n v4 = v4 * dctCos3 - v7 * dctSin3 + 2048 >> 12;\n v7 = t;\n t = v5 * dctSin1 + v6 * dctCos1 + 2048 >> 12;\n v5 = v5 * dctCos1 - v6 * dctSin1 + 2048 >> 12;\n v6 = t;\n p[row] = v0 + v7;\n p[row + 7] = v0 - v7;\n p[row + 1] = v1 + v6;\n p[row + 6] = v1 - v6;\n p[row + 2] = v2 + v5;\n p[row + 5] = v2 - v5;\n p[row + 3] = v3 + v4;\n p[row + 4] = v3 - v4;\n }\n for (let col = 0; col < 8; ++col) {\n p0 = p[col];\n p1 = p[col + 8];\n p2 = p[col + 16];\n p3 = p[col + 24];\n p4 = p[col + 32];\n p5 = p[col + 40];\n p6 = p[col + 48];\n p7 = p[col + 56];\n if ((p1 | p2 | p3 | p4 | p5 | p6 | p7) === 0) {\n t = dctSqrt2 * p0 + 8192 >> 14;\n if (t < -2040) {\n t = 0;\n } else if (t >= 2024) {\n t = 255;\n } else {\n t = t + 2056 >> 4;\n }\n blockData[blockBufferOffset + col] = t;\n blockData[blockBufferOffset + col + 8] = t;\n blockData[blockBufferOffset + col + 16] = t;\n blockData[blockBufferOffset + col + 24] = t;\n blockData[blockBufferOffset + col + 32] = t;\n blockData[blockBufferOffset + col + 40] = t;\n blockData[blockBufferOffset + col + 48] = t;\n blockData[blockBufferOffset + col + 56] = t;\n continue;\n }\n v0 = dctSqrt2 * p0 + 2048 >> 12;\n v1 = dctSqrt2 * p4 + 2048 >> 12;\n v2 = p2;\n v3 = p6;\n v4 = dctSqrt1d2 * (p1 - p7) + 2048 >> 12;\n v7 = dctSqrt1d2 * (p1 + p7) + 2048 >> 12;\n v5 = p3;\n v6 = p5;\n v0 = (v0 + v1 + 1 >> 1) + 4112;\n v1 = v0 - v1;\n t = v2 * dctSin6 + v3 * dctCos6 + 2048 >> 12;\n v2 = v2 * dctCos6 - v3 * dctSin6 + 2048 >> 12;\n v3 = t;\n v4 = v4 + v6 + 1 >> 1;\n v6 = v4 - v6;\n v7 = v7 + v5 + 1 >> 1;\n v5 = v7 - v5;\n v0 = v0 + v3 + 1 >> 1;\n v3 = v0 - v3;\n v1 = v1 + v2 + 1 >> 1;\n v2 = v1 - v2;\n t = v4 * dctSin3 + v7 * dctCos3 + 2048 >> 12;\n v4 = v4 * dctCos3 - v7 * dctSin3 + 2048 >> 12;\n v7 = t;\n t = v5 * dctSin1 + v6 * dctCos1 + 2048 >> 12;\n v5 = v5 * dctCos1 - v6 * dctSin1 + 2048 >> 12;\n v6 = t;\n p0 = v0 + v7;\n p7 = v0 - v7;\n p1 = v1 + v6;\n p6 = v1 - v6;\n p2 = v2 + v5;\n p5 = v2 - v5;\n p3 = v3 + v4;\n p4 = v3 - v4;\n if (p0 < 16) {\n p0 = 0;\n } else if (p0 >= 4080) {\n p0 = 255;\n } else {\n p0 >>= 4;\n }\n if (p1 < 16) {\n p1 = 0;\n } else if (p1 >= 4080) {\n p1 = 255;\n } else {\n p1 >>= 4;\n }\n if (p2 < 16) {\n p2 = 0;\n } else if (p2 >= 4080) {\n p2 = 255;\n } else {\n p2 >>= 4;\n }\n if (p3 < 16) {\n p3 = 0;\n } else if (p3 >= 4080) {\n p3 = 255;\n } else {\n p3 >>= 4;\n }\n if (p4 < 16) {\n p4 = 0;\n } else if (p4 >= 4080) {\n p4 = 255;\n } else {\n p4 >>= 4;\n }\n if (p5 < 16) {\n p5 = 0;\n } else if (p5 >= 4080) {\n p5 = 255;\n } else {\n p5 >>= 4;\n }\n if (p6 < 16) {\n p6 = 0;\n } else if (p6 >= 4080) {\n p6 = 255;\n } else {\n p6 >>= 4;\n }\n if (p7 < 16) {\n p7 = 0;\n } else if (p7 >= 4080) {\n p7 = 255;\n } else {\n p7 >>= 4;\n }\n blockData[blockBufferOffset + col] = p0;\n blockData[blockBufferOffset + col + 8] = p1;\n blockData[blockBufferOffset + col + 16] = p2;\n blockData[blockBufferOffset + col + 24] = p3;\n blockData[blockBufferOffset + col + 32] = p4;\n blockData[blockBufferOffset + col + 40] = p5;\n blockData[blockBufferOffset + col + 48] = p6;\n blockData[blockBufferOffset + col + 56] = p7;\n }\n}\nfunction buildComponentData(frame, component) {\n const blocksPerLine = component.blocksPerLine;\n const blocksPerColumn = component.blocksPerColumn;\n const computationBuffer = new Int16Array(64);\n for (let blockRow = 0; blockRow < blocksPerColumn; blockRow++) {\n for (let blockCol = 0; blockCol < blocksPerLine; blockCol++) {\n const offset = getBlockBufferOffset(component, blockRow, blockCol);\n quantizeAndInverse(component, offset, computationBuffer);\n }\n }\n return component.blockData;\n}\nfunction findNextFileMarker(data, currentPos, startPos = currentPos) {\n const maxPos = data.length - 1;\n let newPos = startPos < currentPos ? startPos : currentPos;\n if (currentPos >= maxPos) {\n return null;\n }\n const currentMarker = (0, _core_utils.readUint16)(data, currentPos);\n if (currentMarker >= 0xffc0 && currentMarker <= 0xfffe) {\n return {\n invalid: null,\n marker: currentMarker,\n offset: currentPos\n };\n }\n let newMarker = (0, _core_utils.readUint16)(data, newPos);\n while (!(newMarker >= 0xffc0 && newMarker <= 0xfffe)) {\n if (++newPos >= maxPos) {\n return null;\n }\n newMarker = (0, _core_utils.readUint16)(data, newPos);\n }\n return {\n invalid: currentMarker.toString(16),\n marker: newMarker,\n offset: newPos\n };\n}\nclass JpegImage {\n constructor({\n decodeTransform = null,\n colorTransform = -1\n } = {}) {\n this._decodeTransform = decodeTransform;\n this._colorTransform = colorTransform;\n }\n parse(data, {\n dnlScanLines = null\n } = {}) {\n function readDataBlock() {\n const length = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n let endOffset = offset + length - 2;\n const fileMarker = findNextFileMarker(data, endOffset, offset);\n if (fileMarker?.invalid) {\n (0, _util.warn)(\"readDataBlock - incorrect length, current marker is: \" + fileMarker.invalid);\n endOffset = fileMarker.offset;\n }\n const array = data.subarray(offset, endOffset);\n offset += array.length;\n return array;\n }\n function prepareComponents(frame) {\n const mcusPerLine = Math.ceil(frame.samplesPerLine / 8 / frame.maxH);\n const mcusPerColumn = Math.ceil(frame.scanLines / 8 / frame.maxV);\n for (const component of frame.components) {\n const blocksPerLine = Math.ceil(Math.ceil(frame.samplesPerLine / 8) * component.h / frame.maxH);\n const blocksPerColumn = Math.ceil(Math.ceil(frame.scanLines / 8) * component.v / frame.maxV);\n const blocksPerLineForMcu = mcusPerLine * component.h;\n const blocksPerColumnForMcu = mcusPerColumn * component.v;\n const blocksBufferSize = 64 * blocksPerColumnForMcu * (blocksPerLineForMcu + 1);\n component.blockData = new Int16Array(blocksBufferSize);\n component.blocksPerLine = blocksPerLine;\n component.blocksPerColumn = blocksPerColumn;\n }\n frame.mcusPerLine = mcusPerLine;\n frame.mcusPerColumn = mcusPerColumn;\n }\n let offset = 0;\n let jfif = null;\n let adobe = null;\n let frame, resetInterval;\n let numSOSMarkers = 0;\n const quantizationTables = [];\n const huffmanTablesAC = [],\n huffmanTablesDC = [];\n let fileMarker = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n if (fileMarker !== 0xffd8) {\n throw new JpegError(\"SOI not found\");\n }\n fileMarker = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n markerLoop: while (fileMarker !== 0xffd9) {\n let i, j, l;\n switch (fileMarker) {\n case 0xffe0:\n case 0xffe1:\n case 0xffe2:\n case 0xffe3:\n case 0xffe4:\n case 0xffe5:\n case 0xffe6:\n case 0xffe7:\n case 0xffe8:\n case 0xffe9:\n case 0xffea:\n case 0xffeb:\n case 0xffec:\n case 0xffed:\n case 0xffee:\n case 0xffef:\n case 0xfffe:\n const appData = readDataBlock();\n if (fileMarker === 0xffe0) {\n if (appData[0] === 0x4a && appData[1] === 0x46 && appData[2] === 0x49 && appData[3] === 0x46 && appData[4] === 0) {\n jfif = {\n version: {\n major: appData[5],\n minor: appData[6]\n },\n densityUnits: appData[7],\n xDensity: appData[8] << 8 | appData[9],\n yDensity: appData[10] << 8 | appData[11],\n thumbWidth: appData[12],\n thumbHeight: appData[13],\n thumbData: appData.subarray(14, 14 + 3 * appData[12] * appData[13])\n };\n }\n }\n if (fileMarker === 0xffee) {\n if (appData[0] === 0x41 && appData[1] === 0x64 && appData[2] === 0x6f && appData[3] === 0x62 && appData[4] === 0x65) {\n adobe = {\n version: appData[5] << 8 | appData[6],\n flags0: appData[7] << 8 | appData[8],\n flags1: appData[9] << 8 | appData[10],\n transformCode: appData[11]\n };\n }\n }\n break;\n case 0xffdb:\n const quantizationTablesLength = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n const quantizationTablesEnd = quantizationTablesLength + offset - 2;\n let z;\n while (offset < quantizationTablesEnd) {\n const quantizationTableSpec = data[offset++];\n const tableData = new Uint16Array(64);\n if (quantizationTableSpec >> 4 === 0) {\n for (j = 0; j < 64; j++) {\n z = dctZigZag[j];\n tableData[z] = data[offset++];\n }\n } else if (quantizationTableSpec >> 4 === 1) {\n for (j = 0; j < 64; j++) {\n z = dctZigZag[j];\n tableData[z] = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n }\n } else {\n throw new JpegError(\"DQT - invalid table spec\");\n }\n quantizationTables[quantizationTableSpec & 15] = tableData;\n }\n break;\n case 0xffc0:\n case 0xffc1:\n case 0xffc2:\n if (frame) {\n throw new JpegError(\"Only single frame JPEGs supported\");\n }\n offset += 2;\n frame = {};\n frame.extended = fileMarker === 0xffc1;\n frame.progressive = fileMarker === 0xffc2;\n frame.precision = data[offset++];\n const sofScanLines = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n frame.scanLines = dnlScanLines || sofScanLines;\n frame.samplesPerLine = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n frame.components = [];\n frame.componentIds = {};\n const componentsCount = data[offset++];\n let maxH = 0,\n maxV = 0;\n for (i = 0; i < componentsCount; i++) {\n const componentId = data[offset];\n const h = data[offset + 1] >> 4;\n const v = data[offset + 1] & 15;\n if (maxH < h) {\n maxH = h;\n }\n if (maxV < v) {\n maxV = v;\n }\n const qId = data[offset + 2];\n l = frame.components.push({\n h,\n v,\n quantizationId: qId,\n quantizationTable: null\n });\n frame.componentIds[componentId] = l - 1;\n offset += 3;\n }\n frame.maxH = maxH;\n frame.maxV = maxV;\n prepareComponents(frame);\n break;\n case 0xffc4:\n const huffmanLength = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n for (i = 2; i < huffmanLength;) {\n const huffmanTableSpec = data[offset++];\n const codeLengths = new Uint8Array(16);\n let codeLengthSum = 0;\n for (j = 0; j < 16; j++, offset++) {\n codeLengthSum += codeLengths[j] = data[offset];\n }\n const huffmanValues = new Uint8Array(codeLengthSum);\n for (j = 0; j < codeLengthSum; j++, offset++) {\n huffmanValues[j] = data[offset];\n }\n i += 17 + codeLengthSum;\n (huffmanTableSpec >> 4 === 0 ? huffmanTablesDC : huffmanTablesAC)[huffmanTableSpec & 15] = buildHuffmanTable(codeLengths, huffmanValues);\n }\n break;\n case 0xffdd:\n offset += 2;\n resetInterval = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n break;\n case 0xffda:\n const parseDNLMarker = ++numSOSMarkers === 1 && !dnlScanLines;\n offset += 2;\n const selectorsCount = data[offset++],\n components = [];\n for (i = 0; i < selectorsCount; i++) {\n const index = data[offset++];\n const componentIndex = frame.componentIds[index];\n const component = frame.components[componentIndex];\n component.index = index;\n const tableSpec = data[offset++];\n component.huffmanTableDC = huffmanTablesDC[tableSpec >> 4];\n component.huffmanTableAC = huffmanTablesAC[tableSpec & 15];\n components.push(component);\n }\n const spectralStart = data[offset++],\n spectralEnd = data[offset++],\n successiveApproximation = data[offset++];\n try {\n const processed = decodeScan(data, offset, frame, components, resetInterval, spectralStart, spectralEnd, successiveApproximation >> 4, successiveApproximation & 15, parseDNLMarker);\n offset += processed;\n } catch (ex) {\n if (ex instanceof DNLMarkerError) {\n (0, _util.warn)(`${ex.message} -- attempting to re-parse the JPEG image.`);\n return this.parse(data, {\n dnlScanLines: ex.scanLines\n });\n } else if (ex instanceof EOIMarkerError) {\n (0, _util.warn)(`${ex.message} -- ignoring the rest of the image data.`);\n break markerLoop;\n }\n throw ex;\n }\n break;\n case 0xffdc:\n offset += 4;\n break;\n case 0xffff:\n if (data[offset] !== 0xff) {\n offset--;\n }\n break;\n default:\n const nextFileMarker = findNextFileMarker(data, offset - 2, offset - 3);\n if (nextFileMarker?.invalid) {\n (0, _util.warn)(\"JpegImage.parse - unexpected data, current marker is: \" + nextFileMarker.invalid);\n offset = nextFileMarker.offset;\n break;\n }\n if (!nextFileMarker || offset >= data.length - 1) {\n (0, _util.warn)(\"JpegImage.parse - reached the end of the image data \" + \"without finding an EOI marker (0xFFD9).\");\n break markerLoop;\n }\n throw new JpegError(\"JpegImage.parse - unknown marker: \" + fileMarker.toString(16));\n }\n fileMarker = (0, _core_utils.readUint16)(data, offset);\n offset += 2;\n }\n this.width = frame.samplesPerLine;\n this.height = frame.scanLines;\n this.jfif = jfif;\n this.adobe = adobe;\n this.components = [];\n for (const component of frame.components) {\n const quantizationTable = quantizationTables[component.quantizationId];\n if (quantizationTable) {\n component.quantizationTable = quantizationTable;\n }\n this.components.push({\n index: component.index,\n output: buildComponentData(frame, component),\n scaleX: component.h / frame.maxH,\n scaleY: component.v / frame.maxV,\n blocksPerLine: component.blocksPerLine,\n blocksPerColumn: component.blocksPerColumn\n });\n }\n this.numComponents = this.components.length;\n return undefined;\n }\n _getLinearizedBlockData(width, height, isSourcePDF = false) {\n const scaleX = this.width / width,\n scaleY = this.height / height;\n let component, componentScaleX, componentScaleY, blocksPerScanline;\n let x, y, i, j, k;\n let index;\n let offset = 0;\n let output;\n const numComponents = this.components.length;\n const dataLength = width * height * numComponents;\n const data = new Uint8ClampedArray(dataLength);\n const xScaleBlockOffset = new Uint32Array(width);\n const mask3LSB = 0xfffffff8;\n let lastComponentScaleX;\n for (i = 0; i < numComponents; i++) {\n component = this.components[i];\n componentScaleX = component.scaleX * scaleX;\n componentScaleY = component.scaleY * scaleY;\n offset = i;\n output = component.output;\n blocksPerScanline = component.blocksPerLine + 1 << 3;\n if (componentScaleX !== lastComponentScaleX) {\n for (x = 0; x < width; x++) {\n j = 0 | x * componentScaleX;\n xScaleBlockOffset[x] = (j & mask3LSB) << 3 | j & 7;\n }\n lastComponentScaleX = componentScaleX;\n }\n for (y = 0; y < height; y++) {\n j = 0 | y * componentScaleY;\n index = blocksPerScanline * (j & mask3LSB) | (j & 7) << 3;\n for (x = 0; x < width; x++) {\n data[offset] = output[index + xScaleBlockOffset[x]];\n offset += numComponents;\n }\n }\n }\n let transform = this._decodeTransform;\n if (!isSourcePDF && numComponents === 4 && !transform) {\n transform = new Int32Array([-256, 255, -256, 255, -256, 255, -256, 255]);\n }\n if (transform) {\n for (i = 0; i < dataLength;) {\n for (j = 0, k = 0; j < numComponents; j++, i++, k += 2) {\n data[i] = (data[i] * transform[k] >> 8) + transform[k + 1];\n }\n }\n }\n return data;\n }\n get _isColorConversionNeeded() {\n if (this.adobe) {\n return !!this.adobe.transformCode;\n }\n if (this.numComponents === 3) {\n if (this._colorTransform === 0) {\n return false;\n } else if (this.components[0].index === 0x52 && this.components[1].index === 0x47 && this.components[2].index === 0x42) {\n return false;\n }\n return true;\n }\n if (this._colorTransform === 1) {\n return true;\n }\n return false;\n }\n _convertYccToRgb(data) {\n let Y, Cb, Cr;\n for (let i = 0, length = data.length; i < length; i += 3) {\n Y = data[i];\n Cb = data[i + 1];\n Cr = data[i + 2];\n data[i] = Y - 179.456 + 1.402 * Cr;\n data[i + 1] = Y + 135.459 - 0.344 * Cb - 0.714 * Cr;\n data[i + 2] = Y - 226.816 + 1.772 * Cb;\n }\n return data;\n }\n _convertYccToRgba(data, out) {\n for (let i = 0, j = 0, length = data.length; i < length; i += 3, j += 4) {\n const Y = data[i];\n const Cb = data[i + 1];\n const Cr = data[i + 2];\n out[j] = Y - 179.456 + 1.402 * Cr;\n out[j + 1] = Y + 135.459 - 0.344 * Cb - 0.714 * Cr;\n out[j + 2] = Y - 226.816 + 1.772 * Cb;\n out[j + 3] = 255;\n }\n return out;\n }\n _convertYcckToRgb(data) {\n let Y, Cb, Cr, k;\n let offset = 0;\n for (let i = 0, length = data.length; i < length; i += 4) {\n Y = data[i];\n Cb = data[i + 1];\n Cr = data[i + 2];\n k = data[i + 3];\n data[offset++] = -122.67195406894 + Cb * (-6.60635669420364e-5 * Cb + 0.000437130475926232 * Cr - 5.4080610064599e-5 * Y + 0.00048449797120281 * k - 0.154362151871126) + Cr * (-0.000957964378445773 * Cr + 0.000817076911346625 * Y - 0.00477271405408747 * k + 1.53380253221734) + Y * (0.000961250184130688 * Y - 0.00266257332283933 * k + 0.48357088451265) + k * (-0.000336197177618394 * k + 0.484791561490776);\n data[offset++] = 107.268039397724 + Cb * (2.19927104525741e-5 * Cb - 0.000640992018297945 * Cr + 0.000659397001245577 * Y + 0.000426105652938837 * k - 0.176491792462875) + Cr * (-0.000778269941513683 * Cr + 0.00130872261408275 * Y + 0.000770482631801132 * k - 0.151051492775562) + Y * (0.00126935368114843 * Y - 0.00265090189010898 * k + 0.25802910206845) + k * (-0.000318913117588328 * k - 0.213742400323665);\n data[offset++] = -20.810012546947 + Cb * (-0.000570115196973677 * Cb - 2.63409051004589e-5 * Cr + 0.0020741088115012 * Y - 0.00288260236853442 * k + 0.814272968359295) + Cr * (-1.53496057440975e-5 * Cr - 0.000132689043961446 * Y + 0.000560833691242812 * k - 0.195152027534049) + Y * (0.00174418132927582 * Y - 0.00255243321439347 * k + 0.116935020465145) + k * (-0.000343531996510555 * k + 0.24165260232407);\n }\n return data.subarray(0, offset);\n }\n _convertYcckToRgba(data) {\n for (let i = 0, length = data.length; i < length; i += 4) {\n const Y = data[i];\n const Cb = data[i + 1];\n const Cr = data[i + 2];\n const k = data[i + 3];\n data[i] = -122.67195406894 + Cb * (-6.60635669420364e-5 * Cb + 0.000437130475926232 * Cr - 5.4080610064599e-5 * Y + 0.00048449797120281 * k - 0.154362151871126) + Cr * (-0.000957964378445773 * Cr + 0.000817076911346625 * Y - 0.00477271405408747 * k + 1.53380253221734) + Y * (0.000961250184130688 * Y - 0.00266257332283933 * k + 0.48357088451265) + k * (-0.000336197177618394 * k + 0.484791561490776);\n data[i + 1] = 107.268039397724 + Cb * (2.19927104525741e-5 * Cb - 0.000640992018297945 * Cr + 0.000659397001245577 * Y + 0.000426105652938837 * k - 0.176491792462875) + Cr * (-0.000778269941513683 * Cr + 0.00130872261408275 * Y + 0.000770482631801132 * k - 0.151051492775562) + Y * (0.00126935368114843 * Y - 0.00265090189010898 * k + 0.25802910206845) + k * (-0.000318913117588328 * k - 0.213742400323665);\n data[i + 2] = -20.810012546947 + Cb * (-0.000570115196973677 * Cb - 2.63409051004589e-5 * Cr + 0.0020741088115012 * Y - 0.00288260236853442 * k + 0.814272968359295) + Cr * (-1.53496057440975e-5 * Cr - 0.000132689043961446 * Y + 0.000560833691242812 * k - 0.195152027534049) + Y * (0.00174418132927582 * Y - 0.00255243321439347 * k + 0.116935020465145) + k * (-0.000343531996510555 * k + 0.24165260232407);\n data[i + 3] = 255;\n }\n return data;\n }\n _convertYcckToCmyk(data) {\n let Y, Cb, Cr;\n for (let i = 0, length = data.length; i < length; i += 4) {\n Y = data[i];\n Cb = data[i + 1];\n Cr = data[i + 2];\n data[i] = 434.456 - Y - 1.402 * Cr;\n data[i + 1] = 119.541 - Y + 0.344 * Cb + 0.714 * Cr;\n data[i + 2] = 481.816 - Y - 1.772 * Cb;\n }\n return data;\n }\n _convertCmykToRgb(data) {\n let c, m, y, k;\n let offset = 0;\n for (let i = 0, length = data.length; i < length; i += 4) {\n c = data[i];\n m = data[i + 1];\n y = data[i + 2];\n k = data[i + 3];\n data[offset++] = 255 + c * (-0.00006747147073602441 * c + 0.0008379262121013727 * m + 0.0002894718188643294 * y + 0.003264231057537806 * k - 1.1185611867203937) + m * (0.000026374107616089405 * m - 0.00008626949158638572 * y - 0.0002748769067499491 * k - 0.02155688794978967) + y * (-0.00003878099212869363 * y - 0.0003267808279485286 * k + 0.0686742238595345) - k * (0.0003361971776183937 * k + 0.7430659151342254);\n data[offset++] = 255 + c * (0.00013596372813588848 * c + 0.000924537132573585 * m + 0.00010567359618683593 * y + 0.0004791864687436512 * k - 0.3109689587515875) + m * (-0.00023545346108370344 * m + 0.0002702845253534714 * y + 0.0020200308977307156 * k - 0.7488052167015494) + y * (0.00006834815998235662 * y + 0.00015168452363460973 * k - 0.09751927774728933) - k * (0.0003189131175883281 * k + 0.7364883807733168);\n data[offset++] = 255 + c * (0.000013598650411385307 * c + 0.00012423956175490851 * m + 0.0004751985097583589 * y - 0.0000036729317476630422 * k - 0.05562186980264034) + m * (0.00016141380598724676 * m + 0.0009692239130725186 * y + 0.0007782692450036253 * k - 0.44015232367526463) + y * (5.068882914068769e-7 * y + 0.0017778369011375071 * k - 0.7591454649749609) - k * (0.0003435319965105553 * k + 0.7063770186160144);\n }\n return data.subarray(0, offset);\n }\n _convertCmykToRgba(data) {\n for (let i = 0, length = data.length; i < length; i += 4) {\n const c = data[i];\n const m = data[i + 1];\n const y = data[i + 2];\n const k = data[i + 3];\n data[i] = 255 + c * (-0.00006747147073602441 * c + 0.0008379262121013727 * m + 0.0002894718188643294 * y + 0.003264231057537806 * k - 1.1185611867203937) + m * (0.000026374107616089405 * m - 0.00008626949158638572 * y - 0.0002748769067499491 * k - 0.02155688794978967) + y * (-0.00003878099212869363 * y - 0.0003267808279485286 * k + 0.0686742238595345) - k * (0.0003361971776183937 * k + 0.7430659151342254);\n data[i + 1] = 255 + c * (0.00013596372813588848 * c + 0.000924537132573585 * m + 0.00010567359618683593 * y + 0.0004791864687436512 * k - 0.3109689587515875) + m * (-0.00023545346108370344 * m + 0.0002702845253534714 * y + 0.0020200308977307156 * k - 0.7488052167015494) + y * (0.00006834815998235662 * y + 0.00015168452363460973 * k - 0.09751927774728933) - k * (0.0003189131175883281 * k + 0.7364883807733168);\n data[i + 2] = 255 + c * (0.000013598650411385307 * c + 0.00012423956175490851 * m + 0.0004751985097583589 * y - 0.0000036729317476630422 * k - 0.05562186980264034) + m * (0.00016141380598724676 * m + 0.0009692239130725186 * y + 0.0007782692450036253 * k - 0.44015232367526463) + y * (5.068882914068769e-7 * y + 0.0017778369011375071 * k - 0.7591454649749609) - k * (0.0003435319965105553 * k + 0.7063770186160144);\n data[i + 3] = 255;\n }\n return data;\n }\n getData({\n width,\n height,\n forceRGBA = false,\n forceRGB = false,\n isSourcePDF = false\n }) {\n if (this.numComponents > 4) {\n throw new JpegError(\"Unsupported color mode\");\n }\n const data = this._getLinearizedBlockData(width, height, isSourcePDF);\n if (this.numComponents === 1 && (forceRGBA || forceRGB)) {\n const len = data.length * (forceRGBA ? 4 : 3);\n const rgbaData = new Uint8ClampedArray(len);\n let offset = 0;\n if (forceRGBA) {\n (0, _image_utils.grayToRGBA)(data, new Uint32Array(rgbaData.buffer));\n } else {\n for (const grayColor of data) {\n rgbaData[offset++] = grayColor;\n rgbaData[offset++] = grayColor;\n rgbaData[offset++] = grayColor;\n }\n }\n return rgbaData;\n } else if (this.numComponents === 3 && this._isColorConversionNeeded) {\n if (forceRGBA) {\n const rgbaData = new Uint8ClampedArray(data.length / 3 * 4);\n return this._convertYccToRgba(data, rgbaData);\n }\n return this._convertYccToRgb(data);\n } else if (this.numComponents === 4) {\n if (this._isColorConversionNeeded) {\n if (forceRGBA) {\n return this._convertYcckToRgba(data);\n }\n if (forceRGB) {\n return this._convertYcckToRgb(data);\n }\n return this._convertYcckToCmyk(data);\n } else if (forceRGBA) {\n return this._convertCmykToRgba(data);\n } else if (forceRGB) {\n return this._convertCmykToRgb(data);\n }\n }\n return data;\n }\n}\nexports.JpegImage = JpegImage;\n\n/***/ }),\n/* 28 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.convertBlackAndWhiteToRGBA = convertBlackAndWhiteToRGBA;\nexports.convertToRGBA = convertToRGBA;\nexports.grayToRGBA = grayToRGBA;\nvar _util = __w_pdfjs_require__(2);\nfunction convertToRGBA(params) {\n switch (params.kind) {\n case _util.ImageKind.GRAYSCALE_1BPP:\n return convertBlackAndWhiteToRGBA(params);\n case _util.ImageKind.RGB_24BPP:\n return convertRGBToRGBA(params);\n }\n return null;\n}\nfunction convertBlackAndWhiteToRGBA({\n src,\n srcPos = 0,\n dest,\n width,\n height,\n nonBlackColor = 0xffffffff,\n inverseDecode = false\n}) {\n const black = _util.FeatureTest.isLittleEndian ? 0xff000000 : 0x000000ff;\n const [zeroMapping, oneMapping] = inverseDecode ? [nonBlackColor, black] : [black, nonBlackColor];\n const widthInSource = width >> 3;\n const widthRemainder = width & 7;\n const srcLength = src.length;\n dest = new Uint32Array(dest.buffer);\n let destPos = 0;\n for (let i = 0; i < height; i++) {\n for (const max = srcPos + widthInSource; srcPos < max; srcPos++) {\n const elem = srcPos < srcLength ? src[srcPos] : 255;\n dest[destPos++] = elem & 0b10000000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1000000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b100000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b10000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b100 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b10 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1 ? oneMapping : zeroMapping;\n }\n if (widthRemainder === 0) {\n continue;\n }\n const elem = srcPos < srcLength ? src[srcPos++] : 255;\n for (let j = 0; j < widthRemainder; j++) {\n dest[destPos++] = elem & 1 << 7 - j ? oneMapping : zeroMapping;\n }\n }\n return {\n srcPos,\n destPos\n };\n}\nfunction convertRGBToRGBA({\n src,\n srcPos = 0,\n dest,\n destPos = 0,\n width,\n height\n}) {\n let i = 0;\n const len32 = src.length >> 2;\n const src32 = new Uint32Array(src.buffer, srcPos, len32);\n if (_util.FeatureTest.isLittleEndian) {\n for (; i < len32 - 2; i += 3, destPos += 4) {\n const s1 = src32[i];\n const s2 = src32[i + 1];\n const s3 = src32[i + 2];\n dest[destPos] = s1 | 0xff000000;\n dest[destPos + 1] = s1 >>> 24 | s2 << 8 | 0xff000000;\n dest[destPos + 2] = s2 >>> 16 | s3 << 16 | 0xff000000;\n dest[destPos + 3] = s3 >>> 8 | 0xff000000;\n }\n for (let j = i * 4, jj = src.length; j < jj; j += 3) {\n dest[destPos++] = src[j] | src[j + 1] << 8 | src[j + 2] << 16 | 0xff000000;\n }\n } else {\n for (; i < len32 - 2; i += 3, destPos += 4) {\n const s1 = src32[i];\n const s2 = src32[i + 1];\n const s3 = src32[i + 2];\n dest[destPos] = s1 | 0xff;\n dest[destPos + 1] = s1 << 24 | s2 >>> 8 | 0xff;\n dest[destPos + 2] = s2 << 16 | s3 >>> 16 | 0xff;\n dest[destPos + 3] = s3 << 8 | 0xff;\n }\n for (let j = i * 4, jj = src.length; j < jj; j += 3) {\n dest[destPos++] = src[j] << 24 | src[j + 1] << 16 | src[j + 2] << 8 | 0xff;\n }\n }\n return {\n srcPos,\n destPos\n };\n}\nfunction grayToRGBA(src, dest) {\n if (_util.FeatureTest.isLittleEndian) {\n for (let i = 0, ii = src.length; i < ii; i++) {\n dest[i] = src[i] * 0x10101 | 0xff000000;\n }\n } else {\n for (let i = 0, ii = src.length; i < ii; i++) {\n dest[i] = src[i] * 0x1010100 | 0x000000ff;\n }\n }\n}\n\n/***/ }),\n/* 29 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.JpxStream = void 0;\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _jpx = __w_pdfjs_require__(30);\nvar _util = __w_pdfjs_require__(2);\nclass JpxStream extends _decode_stream.DecodeStream {\n constructor(stream, maybeLength, params) {\n super(maybeLength);\n this.stream = stream;\n this.dict = stream.dict;\n this.maybeLength = maybeLength;\n this.params = params;\n }\n get bytes() {\n return (0, _util.shadow)(this, \"bytes\", this.stream.getBytes(this.maybeLength));\n }\n ensureBuffer(requested) {}\n readBlock() {\n if (this.eof) {\n return;\n }\n const jpxImage = new _jpx.JpxImage();\n jpxImage.parse(this.bytes);\n const width = jpxImage.width;\n const height = jpxImage.height;\n const componentsCount = jpxImage.componentsCount;\n const tileCount = jpxImage.tiles.length;\n if (tileCount === 1) {\n this.buffer = jpxImage.tiles[0].items;\n } else {\n const data = new Uint8ClampedArray(width * height * componentsCount);\n for (let k = 0; k < tileCount; k++) {\n const tileComponents = jpxImage.tiles[k];\n const tileWidth = tileComponents.width;\n const tileHeight = tileComponents.height;\n const tileLeft = tileComponents.left;\n const tileTop = tileComponents.top;\n const src = tileComponents.items;\n let srcPosition = 0;\n let dataPosition = (width * tileTop + tileLeft) * componentsCount;\n const imgRowSize = width * componentsCount;\n const tileRowSize = tileWidth * componentsCount;\n for (let j = 0; j < tileHeight; j++) {\n const rowBytes = src.subarray(srcPosition, srcPosition + tileRowSize);\n data.set(rowBytes, dataPosition);\n srcPosition += tileRowSize;\n dataPosition += imgRowSize;\n }\n }\n this.buffer = data;\n }\n this.bufferLength = this.buffer.length;\n this.eof = true;\n }\n}\nexports.JpxStream = JpxStream;\n\n/***/ }),\n/* 30 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.JpxImage = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _arithmetic_decoder = __w_pdfjs_require__(25);\nclass JpxError extends _util.BaseException {\n constructor(msg) {\n super(`JPX error: ${msg}`, \"JpxError\");\n }\n}\nconst SubbandsGainLog2 = {\n LL: 0,\n LH: 1,\n HL: 1,\n HH: 2\n};\nclass JpxImage {\n constructor() {\n this.failOnCorruptedImage = false;\n }\n parse(data) {\n const head = (0, _core_utils.readUint16)(data, 0);\n if (head === 0xff4f) {\n this.parseCodestream(data, 0, data.length);\n return;\n }\n const length = data.length;\n let position = 0;\n while (position < length) {\n let headerSize = 8;\n let lbox = (0, _core_utils.readUint32)(data, position);\n const tbox = (0, _core_utils.readUint32)(data, position + 4);\n position += headerSize;\n if (lbox === 1) {\n lbox = (0, _core_utils.readUint32)(data, position) * 4294967296 + (0, _core_utils.readUint32)(data, position + 4);\n position += 8;\n headerSize += 8;\n }\n if (lbox === 0) {\n lbox = length - position + headerSize;\n }\n if (lbox < headerSize) {\n throw new JpxError(\"Invalid box field size\");\n }\n const dataLength = lbox - headerSize;\n let jumpDataLength = true;\n switch (tbox) {\n case 0x6a703268:\n jumpDataLength = false;\n break;\n case 0x636f6c72:\n const method = data[position];\n if (method === 1) {\n const colorspace = (0, _core_utils.readUint32)(data, position + 3);\n switch (colorspace) {\n case 16:\n case 17:\n case 18:\n break;\n default:\n (0, _util.warn)(\"Unknown colorspace \" + colorspace);\n break;\n }\n } else if (method === 2) {\n (0, _util.info)(\"ICC profile not supported\");\n }\n break;\n case 0x6a703263:\n this.parseCodestream(data, position, position + dataLength);\n break;\n case 0x6a502020:\n if ((0, _core_utils.readUint32)(data, position) !== 0x0d0a870a) {\n (0, _util.warn)(\"Invalid JP2 signature\");\n }\n break;\n case 0x6a501a1a:\n case 0x66747970:\n case 0x72726571:\n case 0x72657320:\n case 0x69686472:\n break;\n default:\n const headerType = String.fromCharCode(tbox >> 24 & 0xff, tbox >> 16 & 0xff, tbox >> 8 & 0xff, tbox & 0xff);\n (0, _util.warn)(`Unsupported header type ${tbox} (${headerType}).`);\n break;\n }\n if (jumpDataLength) {\n position += dataLength;\n }\n }\n }\n parseImageProperties(stream) {\n let newByte = stream.getByte();\n while (newByte >= 0) {\n const oldByte = newByte;\n newByte = stream.getByte();\n const code = oldByte << 8 | newByte;\n if (code === 0xff51) {\n stream.skip(4);\n const Xsiz = stream.getInt32() >>> 0;\n const Ysiz = stream.getInt32() >>> 0;\n const XOsiz = stream.getInt32() >>> 0;\n const YOsiz = stream.getInt32() >>> 0;\n stream.skip(16);\n const Csiz = stream.getUint16();\n this.width = Xsiz - XOsiz;\n this.height = Ysiz - YOsiz;\n this.componentsCount = Csiz;\n this.bitsPerComponent = 8;\n return;\n }\n }\n throw new JpxError(\"No size marker found in JPX stream\");\n }\n parseCodestream(data, start, end) {\n const context = {};\n let doNotRecover = false;\n try {\n let position = start;\n while (position + 1 < end) {\n const code = (0, _core_utils.readUint16)(data, position);\n position += 2;\n let length = 0,\n j,\n sqcd,\n spqcds,\n spqcdSize,\n scalarExpounded,\n tile;\n switch (code) {\n case 0xff4f:\n context.mainHeader = true;\n break;\n case 0xffd9:\n break;\n case 0xff51:\n length = (0, _core_utils.readUint16)(data, position);\n const siz = {};\n siz.Xsiz = (0, _core_utils.readUint32)(data, position + 4);\n siz.Ysiz = (0, _core_utils.readUint32)(data, position + 8);\n siz.XOsiz = (0, _core_utils.readUint32)(data, position + 12);\n siz.YOsiz = (0, _core_utils.readUint32)(data, position + 16);\n siz.XTsiz = (0, _core_utils.readUint32)(data, position + 20);\n siz.YTsiz = (0, _core_utils.readUint32)(data, position + 24);\n siz.XTOsiz = (0, _core_utils.readUint32)(data, position + 28);\n siz.YTOsiz = (0, _core_utils.readUint32)(data, position + 32);\n const componentsCount = (0, _core_utils.readUint16)(data, position + 36);\n siz.Csiz = componentsCount;\n const components = [];\n j = position + 38;\n for (let i = 0; i < componentsCount; i++) {\n const component = {\n precision: (data[j] & 0x7f) + 1,\n isSigned: !!(data[j] & 0x80),\n XRsiz: data[j + 1],\n YRsiz: data[j + 2]\n };\n j += 3;\n calculateComponentDimensions(component, siz);\n components.push(component);\n }\n context.SIZ = siz;\n context.components = components;\n calculateTileGrids(context, components);\n context.QCC = [];\n context.COC = [];\n break;\n case 0xff5c:\n length = (0, _core_utils.readUint16)(data, position);\n const qcd = {};\n j = position + 2;\n sqcd = data[j++];\n switch (sqcd & 0x1f) {\n case 0:\n spqcdSize = 8;\n scalarExpounded = true;\n break;\n case 1:\n spqcdSize = 16;\n scalarExpounded = false;\n break;\n case 2:\n spqcdSize = 16;\n scalarExpounded = true;\n break;\n default:\n throw new Error(\"Invalid SQcd value \" + sqcd);\n }\n qcd.noQuantization = spqcdSize === 8;\n qcd.scalarExpounded = scalarExpounded;\n qcd.guardBits = sqcd >> 5;\n spqcds = [];\n while (j < length + position) {\n const spqcd = {};\n if (spqcdSize === 8) {\n spqcd.epsilon = data[j++] >> 3;\n spqcd.mu = 0;\n } else {\n spqcd.epsilon = data[j] >> 3;\n spqcd.mu = (data[j] & 0x7) << 8 | data[j + 1];\n j += 2;\n }\n spqcds.push(spqcd);\n }\n qcd.SPqcds = spqcds;\n if (context.mainHeader) {\n context.QCD = qcd;\n } else {\n context.currentTile.QCD = qcd;\n context.currentTile.QCC = [];\n }\n break;\n case 0xff5d:\n length = (0, _core_utils.readUint16)(data, position);\n const qcc = {};\n j = position + 2;\n let cqcc;\n if (context.SIZ.Csiz < 257) {\n cqcc = data[j++];\n } else {\n cqcc = (0, _core_utils.readUint16)(data, j);\n j += 2;\n }\n sqcd = data[j++];\n switch (sqcd & 0x1f) {\n case 0:\n spqcdSize = 8;\n scalarExpounded = true;\n break;\n case 1:\n spqcdSize = 16;\n scalarExpounded = false;\n break;\n case 2:\n spqcdSize = 16;\n scalarExpounded = true;\n break;\n default:\n throw new Error(\"Invalid SQcd value \" + sqcd);\n }\n qcc.noQuantization = spqcdSize === 8;\n qcc.scalarExpounded = scalarExpounded;\n qcc.guardBits = sqcd >> 5;\n spqcds = [];\n while (j < length + position) {\n const spqcd = {};\n if (spqcdSize === 8) {\n spqcd.epsilon = data[j++] >> 3;\n spqcd.mu = 0;\n } else {\n spqcd.epsilon = data[j] >> 3;\n spqcd.mu = (data[j] & 0x7) << 8 | data[j + 1];\n j += 2;\n }\n spqcds.push(spqcd);\n }\n qcc.SPqcds = spqcds;\n if (context.mainHeader) {\n context.QCC[cqcc] = qcc;\n } else {\n context.currentTile.QCC[cqcc] = qcc;\n }\n break;\n case 0xff52:\n length = (0, _core_utils.readUint16)(data, position);\n const cod = {};\n j = position + 2;\n const scod = data[j++];\n cod.entropyCoderWithCustomPrecincts = !!(scod & 1);\n cod.sopMarkerUsed = !!(scod & 2);\n cod.ephMarkerUsed = !!(scod & 4);\n cod.progressionOrder = data[j++];\n cod.layersCount = (0, _core_utils.readUint16)(data, j);\n j += 2;\n cod.multipleComponentTransform = data[j++];\n cod.decompositionLevelsCount = data[j++];\n cod.xcb = (data[j++] & 0xf) + 2;\n cod.ycb = (data[j++] & 0xf) + 2;\n const blockStyle = data[j++];\n cod.selectiveArithmeticCodingBypass = !!(blockStyle & 1);\n cod.resetContextProbabilities = !!(blockStyle & 2);\n cod.terminationOnEachCodingPass = !!(blockStyle & 4);\n cod.verticallyStripe = !!(blockStyle & 8);\n cod.predictableTermination = !!(blockStyle & 16);\n cod.segmentationSymbolUsed = !!(blockStyle & 32);\n cod.reversibleTransformation = data[j++];\n if (cod.entropyCoderWithCustomPrecincts) {\n const precinctsSizes = [];\n while (j < length + position) {\n const precinctsSize = data[j++];\n precinctsSizes.push({\n PPx: precinctsSize & 0xf,\n PPy: precinctsSize >> 4\n });\n }\n cod.precinctsSizes = precinctsSizes;\n }\n const unsupported = [];\n if (cod.selectiveArithmeticCodingBypass) {\n unsupported.push(\"selectiveArithmeticCodingBypass\");\n }\n if (cod.terminationOnEachCodingPass) {\n unsupported.push(\"terminationOnEachCodingPass\");\n }\n if (cod.verticallyStripe) {\n unsupported.push(\"verticallyStripe\");\n }\n if (cod.predictableTermination) {\n unsupported.push(\"predictableTermination\");\n }\n if (unsupported.length > 0) {\n doNotRecover = true;\n (0, _util.warn)(`JPX: Unsupported COD options (${unsupported.join(\", \")}).`);\n }\n if (context.mainHeader) {\n context.COD = cod;\n } else {\n context.currentTile.COD = cod;\n context.currentTile.COC = [];\n }\n break;\n case 0xff90:\n length = (0, _core_utils.readUint16)(data, position);\n tile = {};\n tile.index = (0, _core_utils.readUint16)(data, position + 2);\n tile.length = (0, _core_utils.readUint32)(data, position + 4);\n tile.dataEnd = tile.length + position - 2;\n tile.partIndex = data[position + 8];\n tile.partsCount = data[position + 9];\n context.mainHeader = false;\n if (tile.partIndex === 0) {\n tile.COD = context.COD;\n tile.COC = context.COC.slice(0);\n tile.QCD = context.QCD;\n tile.QCC = context.QCC.slice(0);\n }\n context.currentTile = tile;\n break;\n case 0xff93:\n tile = context.currentTile;\n if (tile.partIndex === 0) {\n initializeTile(context, tile.index);\n buildPackets(context);\n }\n length = tile.dataEnd - position;\n parseTilePackets(context, data, position, length);\n break;\n case 0xff53:\n (0, _util.warn)(\"JPX: Codestream code 0xFF53 (COC) is not implemented.\");\n case 0xff55:\n case 0xff57:\n case 0xff58:\n case 0xff64:\n length = (0, _core_utils.readUint16)(data, position);\n break;\n default:\n throw new Error(\"Unknown codestream code: \" + code.toString(16));\n }\n position += length;\n }\n } catch (e) {\n if (doNotRecover || this.failOnCorruptedImage) {\n throw new JpxError(e.message);\n } else {\n (0, _util.warn)(`JPX: Trying to recover from: \"${e.message}\".`);\n }\n }\n this.tiles = transformComponents(context);\n this.width = context.SIZ.Xsiz - context.SIZ.XOsiz;\n this.height = context.SIZ.Ysiz - context.SIZ.YOsiz;\n this.componentsCount = context.SIZ.Csiz;\n }\n}\nexports.JpxImage = JpxImage;\nfunction calculateComponentDimensions(component, siz) {\n component.x0 = Math.ceil(siz.XOsiz / component.XRsiz);\n component.x1 = Math.ceil(siz.Xsiz / component.XRsiz);\n component.y0 = Math.ceil(siz.YOsiz / component.YRsiz);\n component.y1 = Math.ceil(siz.Ysiz / component.YRsiz);\n component.width = component.x1 - component.x0;\n component.height = component.y1 - component.y0;\n}\nfunction calculateTileGrids(context, components) {\n const siz = context.SIZ;\n const tiles = [];\n let tile;\n const numXtiles = Math.ceil((siz.Xsiz - siz.XTOsiz) / siz.XTsiz);\n const numYtiles = Math.ceil((siz.Ysiz - siz.YTOsiz) / siz.YTsiz);\n for (let q = 0; q < numYtiles; q++) {\n for (let p = 0; p < numXtiles; p++) {\n tile = {};\n tile.tx0 = Math.max(siz.XTOsiz + p * siz.XTsiz, siz.XOsiz);\n tile.ty0 = Math.max(siz.YTOsiz + q * siz.YTsiz, siz.YOsiz);\n tile.tx1 = Math.min(siz.XTOsiz + (p + 1) * siz.XTsiz, siz.Xsiz);\n tile.ty1 = Math.min(siz.YTOsiz + (q + 1) * siz.YTsiz, siz.Ysiz);\n tile.width = tile.tx1 - tile.tx0;\n tile.height = tile.ty1 - tile.ty0;\n tile.components = [];\n tiles.push(tile);\n }\n }\n context.tiles = tiles;\n const componentsCount = siz.Csiz;\n for (let i = 0, ii = componentsCount; i < ii; i++) {\n const component = components[i];\n for (let j = 0, jj = tiles.length; j < jj; j++) {\n const tileComponent = {};\n tile = tiles[j];\n tileComponent.tcx0 = Math.ceil(tile.tx0 / component.XRsiz);\n tileComponent.tcy0 = Math.ceil(tile.ty0 / component.YRsiz);\n tileComponent.tcx1 = Math.ceil(tile.tx1 / component.XRsiz);\n tileComponent.tcy1 = Math.ceil(tile.ty1 / component.YRsiz);\n tileComponent.width = tileComponent.tcx1 - tileComponent.tcx0;\n tileComponent.height = tileComponent.tcy1 - tileComponent.tcy0;\n tile.components[i] = tileComponent;\n }\n }\n}\nfunction getBlocksDimensions(context, component, r) {\n const codOrCoc = component.codingStyleParameters;\n const result = {};\n if (!codOrCoc.entropyCoderWithCustomPrecincts) {\n result.PPx = 15;\n result.PPy = 15;\n } else {\n result.PPx = codOrCoc.precinctsSizes[r].PPx;\n result.PPy = codOrCoc.precinctsSizes[r].PPy;\n }\n result.xcb_ = r > 0 ? Math.min(codOrCoc.xcb, result.PPx - 1) : Math.min(codOrCoc.xcb, result.PPx);\n result.ycb_ = r > 0 ? Math.min(codOrCoc.ycb, result.PPy - 1) : Math.min(codOrCoc.ycb, result.PPy);\n return result;\n}\nfunction buildPrecincts(context, resolution, dimensions) {\n const precinctWidth = 1 << dimensions.PPx;\n const precinctHeight = 1 << dimensions.PPy;\n const isZeroRes = resolution.resLevel === 0;\n const precinctWidthInSubband = 1 << dimensions.PPx + (isZeroRes ? 0 : -1);\n const precinctHeightInSubband = 1 << dimensions.PPy + (isZeroRes ? 0 : -1);\n const numprecinctswide = resolution.trx1 > resolution.trx0 ? Math.ceil(resolution.trx1 / precinctWidth) - Math.floor(resolution.trx0 / precinctWidth) : 0;\n const numprecinctshigh = resolution.try1 > resolution.try0 ? Math.ceil(resolution.try1 / precinctHeight) - Math.floor(resolution.try0 / precinctHeight) : 0;\n const numprecincts = numprecinctswide * numprecinctshigh;\n resolution.precinctParameters = {\n precinctWidth,\n precinctHeight,\n numprecinctswide,\n numprecinctshigh,\n numprecincts,\n precinctWidthInSubband,\n precinctHeightInSubband\n };\n}\nfunction buildCodeblocks(context, subband, dimensions) {\n const xcb_ = dimensions.xcb_;\n const ycb_ = dimensions.ycb_;\n const codeblockWidth = 1 << xcb_;\n const codeblockHeight = 1 << ycb_;\n const cbx0 = subband.tbx0 >> xcb_;\n const cby0 = subband.tby0 >> ycb_;\n const cbx1 = subband.tbx1 + codeblockWidth - 1 >> xcb_;\n const cby1 = subband.tby1 + codeblockHeight - 1 >> ycb_;\n const precinctParameters = subband.resolution.precinctParameters;\n const codeblocks = [];\n const precincts = [];\n let i, j, codeblock, precinctNumber;\n for (j = cby0; j < cby1; j++) {\n for (i = cbx0; i < cbx1; i++) {\n codeblock = {\n cbx: i,\n cby: j,\n tbx0: codeblockWidth * i,\n tby0: codeblockHeight * j,\n tbx1: codeblockWidth * (i + 1),\n tby1: codeblockHeight * (j + 1)\n };\n codeblock.tbx0_ = Math.max(subband.tbx0, codeblock.tbx0);\n codeblock.tby0_ = Math.max(subband.tby0, codeblock.tby0);\n codeblock.tbx1_ = Math.min(subband.tbx1, codeblock.tbx1);\n codeblock.tby1_ = Math.min(subband.tby1, codeblock.tby1);\n const pi = Math.floor((codeblock.tbx0_ - subband.tbx0) / precinctParameters.precinctWidthInSubband);\n const pj = Math.floor((codeblock.tby0_ - subband.tby0) / precinctParameters.precinctHeightInSubband);\n precinctNumber = pi + pj * precinctParameters.numprecinctswide;\n codeblock.precinctNumber = precinctNumber;\n codeblock.subbandType = subband.type;\n codeblock.Lblock = 3;\n if (codeblock.tbx1_ <= codeblock.tbx0_ || codeblock.tby1_ <= codeblock.tby0_) {\n continue;\n }\n codeblocks.push(codeblock);\n let precinct = precincts[precinctNumber];\n if (precinct !== undefined) {\n if (i < precinct.cbxMin) {\n precinct.cbxMin = i;\n } else if (i > precinct.cbxMax) {\n precinct.cbxMax = i;\n }\n if (j < precinct.cbyMin) {\n precinct.cbxMin = j;\n } else if (j > precinct.cbyMax) {\n precinct.cbyMax = j;\n }\n } else {\n precincts[precinctNumber] = precinct = {\n cbxMin: i,\n cbyMin: j,\n cbxMax: i,\n cbyMax: j\n };\n }\n codeblock.precinct = precinct;\n }\n }\n subband.codeblockParameters = {\n codeblockWidth: xcb_,\n codeblockHeight: ycb_,\n numcodeblockwide: cbx1 - cbx0 + 1,\n numcodeblockhigh: cby1 - cby0 + 1\n };\n subband.codeblocks = codeblocks;\n subband.precincts = precincts;\n}\nfunction createPacket(resolution, precinctNumber, layerNumber) {\n const precinctCodeblocks = [];\n const subbands = resolution.subbands;\n for (let i = 0, ii = subbands.length; i < ii; i++) {\n const subband = subbands[i];\n const codeblocks = subband.codeblocks;\n for (let j = 0, jj = codeblocks.length; j < jj; j++) {\n const codeblock = codeblocks[j];\n if (codeblock.precinctNumber !== precinctNumber) {\n continue;\n }\n precinctCodeblocks.push(codeblock);\n }\n }\n return {\n layerNumber,\n codeblocks: precinctCodeblocks\n };\n}\nfunction LayerResolutionComponentPositionIterator(context) {\n const siz = context.SIZ;\n const tileIndex = context.currentTile.index;\n const tile = context.tiles[tileIndex];\n const layersCount = tile.codingStyleDefaultParameters.layersCount;\n const componentsCount = siz.Csiz;\n let maxDecompositionLevelsCount = 0;\n for (let q = 0; q < componentsCount; q++) {\n maxDecompositionLevelsCount = Math.max(maxDecompositionLevelsCount, tile.components[q].codingStyleParameters.decompositionLevelsCount);\n }\n let l = 0,\n r = 0,\n i = 0,\n k = 0;\n this.nextPacket = function JpxImage_nextPacket() {\n for (; l < layersCount; l++) {\n for (; r <= maxDecompositionLevelsCount; r++) {\n for (; i < componentsCount; i++) {\n const component = tile.components[i];\n if (r > component.codingStyleParameters.decompositionLevelsCount) {\n continue;\n }\n const resolution = component.resolutions[r];\n const numprecincts = resolution.precinctParameters.numprecincts;\n for (; k < numprecincts;) {\n const packet = createPacket(resolution, k, l);\n k++;\n return packet;\n }\n k = 0;\n }\n i = 0;\n }\n r = 0;\n }\n throw new JpxError(\"Out of packets\");\n };\n}\nfunction ResolutionLayerComponentPositionIterator(context) {\n const siz = context.SIZ;\n const tileIndex = context.currentTile.index;\n const tile = context.tiles[tileIndex];\n const layersCount = tile.codingStyleDefaultParameters.layersCount;\n const componentsCount = siz.Csiz;\n let maxDecompositionLevelsCount = 0;\n for (let q = 0; q < componentsCount; q++) {\n maxDecompositionLevelsCount = Math.max(maxDecompositionLevelsCount, tile.components[q].codingStyleParameters.decompositionLevelsCount);\n }\n let r = 0,\n l = 0,\n i = 0,\n k = 0;\n this.nextPacket = function JpxImage_nextPacket() {\n for (; r <= maxDecompositionLevelsCount; r++) {\n for (; l < layersCount; l++) {\n for (; i < componentsCount; i++) {\n const component = tile.components[i];\n if (r > component.codingStyleParameters.decompositionLevelsCount) {\n continue;\n }\n const resolution = component.resolutions[r];\n const numprecincts = resolution.precinctParameters.numprecincts;\n for (; k < numprecincts;) {\n const packet = createPacket(resolution, k, l);\n k++;\n return packet;\n }\n k = 0;\n }\n i = 0;\n }\n l = 0;\n }\n throw new JpxError(\"Out of packets\");\n };\n}\nfunction ResolutionPositionComponentLayerIterator(context) {\n const siz = context.SIZ;\n const tileIndex = context.currentTile.index;\n const tile = context.tiles[tileIndex];\n const layersCount = tile.codingStyleDefaultParameters.layersCount;\n const componentsCount = siz.Csiz;\n let l, r, c, p;\n let maxDecompositionLevelsCount = 0;\n for (c = 0; c < componentsCount; c++) {\n const component = tile.components[c];\n maxDecompositionLevelsCount = Math.max(maxDecompositionLevelsCount, component.codingStyleParameters.decompositionLevelsCount);\n }\n const maxNumPrecinctsInLevel = new Int32Array(maxDecompositionLevelsCount + 1);\n for (r = 0; r <= maxDecompositionLevelsCount; ++r) {\n let maxNumPrecincts = 0;\n for (c = 0; c < componentsCount; ++c) {\n const resolutions = tile.components[c].resolutions;\n if (r < resolutions.length) {\n maxNumPrecincts = Math.max(maxNumPrecincts, resolutions[r].precinctParameters.numprecincts);\n }\n }\n maxNumPrecinctsInLevel[r] = maxNumPrecincts;\n }\n l = 0;\n r = 0;\n c = 0;\n p = 0;\n this.nextPacket = function JpxImage_nextPacket() {\n for (; r <= maxDecompositionLevelsCount; r++) {\n for (; p < maxNumPrecinctsInLevel[r]; p++) {\n for (; c < componentsCount; c++) {\n const component = tile.components[c];\n if (r > component.codingStyleParameters.decompositionLevelsCount) {\n continue;\n }\n const resolution = component.resolutions[r];\n const numprecincts = resolution.precinctParameters.numprecincts;\n if (p >= numprecincts) {\n continue;\n }\n for (; l < layersCount;) {\n const packet = createPacket(resolution, p, l);\n l++;\n return packet;\n }\n l = 0;\n }\n c = 0;\n }\n p = 0;\n }\n throw new JpxError(\"Out of packets\");\n };\n}\nfunction PositionComponentResolutionLayerIterator(context) {\n const siz = context.SIZ;\n const tileIndex = context.currentTile.index;\n const tile = context.tiles[tileIndex];\n const layersCount = tile.codingStyleDefaultParameters.layersCount;\n const componentsCount = siz.Csiz;\n const precinctsSizes = getPrecinctSizesInImageScale(tile);\n const precinctsIterationSizes = precinctsSizes;\n let l = 0,\n r = 0,\n c = 0,\n px = 0,\n py = 0;\n this.nextPacket = function JpxImage_nextPacket() {\n for (; py < precinctsIterationSizes.maxNumHigh; py++) {\n for (; px < precinctsIterationSizes.maxNumWide; px++) {\n for (; c < componentsCount; c++) {\n const component = tile.components[c];\n const decompositionLevelsCount = component.codingStyleParameters.decompositionLevelsCount;\n for (; r <= decompositionLevelsCount; r++) {\n const resolution = component.resolutions[r];\n const sizeInImageScale = precinctsSizes.components[c].resolutions[r];\n const k = getPrecinctIndexIfExist(px, py, sizeInImageScale, precinctsIterationSizes, resolution);\n if (k === null) {\n continue;\n }\n for (; l < layersCount;) {\n const packet = createPacket(resolution, k, l);\n l++;\n return packet;\n }\n l = 0;\n }\n r = 0;\n }\n c = 0;\n }\n px = 0;\n }\n throw new JpxError(\"Out of packets\");\n };\n}\nfunction ComponentPositionResolutionLayerIterator(context) {\n const siz = context.SIZ;\n const tileIndex = context.currentTile.index;\n const tile = context.tiles[tileIndex];\n const layersCount = tile.codingStyleDefaultParameters.layersCount;\n const componentsCount = siz.Csiz;\n const precinctsSizes = getPrecinctSizesInImageScale(tile);\n let l = 0,\n r = 0,\n c = 0,\n px = 0,\n py = 0;\n this.nextPacket = function JpxImage_nextPacket() {\n for (; c < componentsCount; ++c) {\n const component = tile.components[c];\n const precinctsIterationSizes = precinctsSizes.components[c];\n const decompositionLevelsCount = component.codingStyleParameters.decompositionLevelsCount;\n for (; py < precinctsIterationSizes.maxNumHigh; py++) {\n for (; px < precinctsIterationSizes.maxNumWide; px++) {\n for (; r <= decompositionLevelsCount; r++) {\n const resolution = component.resolutions[r];\n const sizeInImageScale = precinctsIterationSizes.resolutions[r];\n const k = getPrecinctIndexIfExist(px, py, sizeInImageScale, precinctsIterationSizes, resolution);\n if (k === null) {\n continue;\n }\n for (; l < layersCount;) {\n const packet = createPacket(resolution, k, l);\n l++;\n return packet;\n }\n l = 0;\n }\n r = 0;\n }\n px = 0;\n }\n py = 0;\n }\n throw new JpxError(\"Out of packets\");\n };\n}\nfunction getPrecinctIndexIfExist(pxIndex, pyIndex, sizeInImageScale, precinctIterationSizes, resolution) {\n const posX = pxIndex * precinctIterationSizes.minWidth;\n const posY = pyIndex * precinctIterationSizes.minHeight;\n if (posX % sizeInImageScale.width !== 0 || posY % sizeInImageScale.height !== 0) {\n return null;\n }\n const startPrecinctRowIndex = posY / sizeInImageScale.width * resolution.precinctParameters.numprecinctswide;\n return posX / sizeInImageScale.height + startPrecinctRowIndex;\n}\nfunction getPrecinctSizesInImageScale(tile) {\n const componentsCount = tile.components.length;\n let minWidth = Number.MAX_VALUE;\n let minHeight = Number.MAX_VALUE;\n let maxNumWide = 0;\n let maxNumHigh = 0;\n const sizePerComponent = new Array(componentsCount);\n for (let c = 0; c < componentsCount; c++) {\n const component = tile.components[c];\n const decompositionLevelsCount = component.codingStyleParameters.decompositionLevelsCount;\n const sizePerResolution = new Array(decompositionLevelsCount + 1);\n let minWidthCurrentComponent = Number.MAX_VALUE;\n let minHeightCurrentComponent = Number.MAX_VALUE;\n let maxNumWideCurrentComponent = 0;\n let maxNumHighCurrentComponent = 0;\n let scale = 1;\n for (let r = decompositionLevelsCount; r >= 0; --r) {\n const resolution = component.resolutions[r];\n const widthCurrentResolution = scale * resolution.precinctParameters.precinctWidth;\n const heightCurrentResolution = scale * resolution.precinctParameters.precinctHeight;\n minWidthCurrentComponent = Math.min(minWidthCurrentComponent, widthCurrentResolution);\n minHeightCurrentComponent = Math.min(minHeightCurrentComponent, heightCurrentResolution);\n maxNumWideCurrentComponent = Math.max(maxNumWideCurrentComponent, resolution.precinctParameters.numprecinctswide);\n maxNumHighCurrentComponent = Math.max(maxNumHighCurrentComponent, resolution.precinctParameters.numprecinctshigh);\n sizePerResolution[r] = {\n width: widthCurrentResolution,\n height: heightCurrentResolution\n };\n scale <<= 1;\n }\n minWidth = Math.min(minWidth, minWidthCurrentComponent);\n minHeight = Math.min(minHeight, minHeightCurrentComponent);\n maxNumWide = Math.max(maxNumWide, maxNumWideCurrentComponent);\n maxNumHigh = Math.max(maxNumHigh, maxNumHighCurrentComponent);\n sizePerComponent[c] = {\n resolutions: sizePerResolution,\n minWidth: minWidthCurrentComponent,\n minHeight: minHeightCurrentComponent,\n maxNumWide: maxNumWideCurrentComponent,\n maxNumHigh: maxNumHighCurrentComponent\n };\n }\n return {\n components: sizePerComponent,\n minWidth,\n minHeight,\n maxNumWide,\n maxNumHigh\n };\n}\nfunction buildPackets(context) {\n const siz = context.SIZ;\n const tileIndex = context.currentTile.index;\n const tile = context.tiles[tileIndex];\n const componentsCount = siz.Csiz;\n for (let c = 0; c < componentsCount; c++) {\n const component = tile.components[c];\n const decompositionLevelsCount = component.codingStyleParameters.decompositionLevelsCount;\n const resolutions = [];\n const subbands = [];\n for (let r = 0; r <= decompositionLevelsCount; r++) {\n const blocksDimensions = getBlocksDimensions(context, component, r);\n const resolution = {};\n const scale = 1 << decompositionLevelsCount - r;\n resolution.trx0 = Math.ceil(component.tcx0 / scale);\n resolution.try0 = Math.ceil(component.tcy0 / scale);\n resolution.trx1 = Math.ceil(component.tcx1 / scale);\n resolution.try1 = Math.ceil(component.tcy1 / scale);\n resolution.resLevel = r;\n buildPrecincts(context, resolution, blocksDimensions);\n resolutions.push(resolution);\n let subband;\n if (r === 0) {\n subband = {};\n subband.type = \"LL\";\n subband.tbx0 = Math.ceil(component.tcx0 / scale);\n subband.tby0 = Math.ceil(component.tcy0 / scale);\n subband.tbx1 = Math.ceil(component.tcx1 / scale);\n subband.tby1 = Math.ceil(component.tcy1 / scale);\n subband.resolution = resolution;\n buildCodeblocks(context, subband, blocksDimensions);\n subbands.push(subband);\n resolution.subbands = [subband];\n } else {\n const bscale = 1 << decompositionLevelsCount - r + 1;\n const resolutionSubbands = [];\n subband = {};\n subband.type = \"HL\";\n subband.tbx0 = Math.ceil(component.tcx0 / bscale - 0.5);\n subband.tby0 = Math.ceil(component.tcy0 / bscale);\n subband.tbx1 = Math.ceil(component.tcx1 / bscale - 0.5);\n subband.tby1 = Math.ceil(component.tcy1 / bscale);\n subband.resolution = resolution;\n buildCodeblocks(context, subband, blocksDimensions);\n subbands.push(subband);\n resolutionSubbands.push(subband);\n subband = {};\n subband.type = \"LH\";\n subband.tbx0 = Math.ceil(component.tcx0 / bscale);\n subband.tby0 = Math.ceil(component.tcy0 / bscale - 0.5);\n subband.tbx1 = Math.ceil(component.tcx1 / bscale);\n subband.tby1 = Math.ceil(component.tcy1 / bscale - 0.5);\n subband.resolution = resolution;\n buildCodeblocks(context, subband, blocksDimensions);\n subbands.push(subband);\n resolutionSubbands.push(subband);\n subband = {};\n subband.type = \"HH\";\n subband.tbx0 = Math.ceil(component.tcx0 / bscale - 0.5);\n subband.tby0 = Math.ceil(component.tcy0 / bscale - 0.5);\n subband.tbx1 = Math.ceil(component.tcx1 / bscale - 0.5);\n subband.tby1 = Math.ceil(component.tcy1 / bscale - 0.5);\n subband.resolution = resolution;\n buildCodeblocks(context, subband, blocksDimensions);\n subbands.push(subband);\n resolutionSubbands.push(subband);\n resolution.subbands = resolutionSubbands;\n }\n }\n component.resolutions = resolutions;\n component.subbands = subbands;\n }\n const progressionOrder = tile.codingStyleDefaultParameters.progressionOrder;\n switch (progressionOrder) {\n case 0:\n tile.packetsIterator = new LayerResolutionComponentPositionIterator(context);\n break;\n case 1:\n tile.packetsIterator = new ResolutionLayerComponentPositionIterator(context);\n break;\n case 2:\n tile.packetsIterator = new ResolutionPositionComponentLayerIterator(context);\n break;\n case 3:\n tile.packetsIterator = new PositionComponentResolutionLayerIterator(context);\n break;\n case 4:\n tile.packetsIterator = new ComponentPositionResolutionLayerIterator(context);\n break;\n default:\n throw new JpxError(`Unsupported progression order ${progressionOrder}`);\n }\n}\nfunction parseTilePackets(context, data, offset, dataLength) {\n let position = 0;\n let buffer,\n bufferSize = 0,\n skipNextBit = false;\n function readBits(count) {\n while (bufferSize < count) {\n const b = data[offset + position];\n position++;\n if (skipNextBit) {\n buffer = buffer << 7 | b;\n bufferSize += 7;\n skipNextBit = false;\n } else {\n buffer = buffer << 8 | b;\n bufferSize += 8;\n }\n if (b === 0xff) {\n skipNextBit = true;\n }\n }\n bufferSize -= count;\n return buffer >>> bufferSize & (1 << count) - 1;\n }\n function skipMarkerIfEqual(value) {\n if (data[offset + position - 1] === 0xff && data[offset + position] === value) {\n skipBytes(1);\n return true;\n } else if (data[offset + position] === 0xff && data[offset + position + 1] === value) {\n skipBytes(2);\n return true;\n }\n return false;\n }\n function skipBytes(count) {\n position += count;\n }\n function alignToByte() {\n bufferSize = 0;\n if (skipNextBit) {\n position++;\n skipNextBit = false;\n }\n }\n function readCodingpasses() {\n if (readBits(1) === 0) {\n return 1;\n }\n if (readBits(1) === 0) {\n return 2;\n }\n let value = readBits(2);\n if (value < 3) {\n return value + 3;\n }\n value = readBits(5);\n if (value < 31) {\n return value + 6;\n }\n value = readBits(7);\n return value + 37;\n }\n const tileIndex = context.currentTile.index;\n const tile = context.tiles[tileIndex];\n const sopMarkerUsed = context.COD.sopMarkerUsed;\n const ephMarkerUsed = context.COD.ephMarkerUsed;\n const packetsIterator = tile.packetsIterator;\n while (position < dataLength) {\n alignToByte();\n if (sopMarkerUsed && skipMarkerIfEqual(0x91)) {\n skipBytes(4);\n }\n const packet = packetsIterator.nextPacket();\n if (!readBits(1)) {\n continue;\n }\n const layerNumber = packet.layerNumber,\n queue = [];\n let codeblock;\n for (let i = 0, ii = packet.codeblocks.length; i < ii; i++) {\n codeblock = packet.codeblocks[i];\n let precinct = codeblock.precinct;\n const codeblockColumn = codeblock.cbx - precinct.cbxMin;\n const codeblockRow = codeblock.cby - precinct.cbyMin;\n let codeblockIncluded = false;\n let firstTimeInclusion = false;\n let valueReady, zeroBitPlanesTree;\n if (codeblock.included !== undefined) {\n codeblockIncluded = !!readBits(1);\n } else {\n precinct = codeblock.precinct;\n let inclusionTree;\n if (precinct.inclusionTree !== undefined) {\n inclusionTree = precinct.inclusionTree;\n } else {\n const width = precinct.cbxMax - precinct.cbxMin + 1;\n const height = precinct.cbyMax - precinct.cbyMin + 1;\n inclusionTree = new InclusionTree(width, height, layerNumber);\n zeroBitPlanesTree = new TagTree(width, height);\n precinct.inclusionTree = inclusionTree;\n precinct.zeroBitPlanesTree = zeroBitPlanesTree;\n for (let l = 0; l < layerNumber; l++) {\n if (readBits(1) !== 0) {\n throw new JpxError(\"Invalid tag tree\");\n }\n }\n }\n if (inclusionTree.reset(codeblockColumn, codeblockRow, layerNumber)) {\n while (true) {\n if (readBits(1)) {\n valueReady = !inclusionTree.nextLevel();\n if (valueReady) {\n codeblock.included = true;\n codeblockIncluded = firstTimeInclusion = true;\n break;\n }\n } else {\n inclusionTree.incrementValue(layerNumber);\n break;\n }\n }\n }\n }\n if (!codeblockIncluded) {\n continue;\n }\n if (firstTimeInclusion) {\n zeroBitPlanesTree = precinct.zeroBitPlanesTree;\n zeroBitPlanesTree.reset(codeblockColumn, codeblockRow);\n while (true) {\n if (readBits(1)) {\n valueReady = !zeroBitPlanesTree.nextLevel();\n if (valueReady) {\n break;\n }\n } else {\n zeroBitPlanesTree.incrementValue();\n }\n }\n codeblock.zeroBitPlanes = zeroBitPlanesTree.value;\n }\n const codingpasses = readCodingpasses();\n while (readBits(1)) {\n codeblock.Lblock++;\n }\n const codingpassesLog2 = (0, _core_utils.log2)(codingpasses);\n const bits = (codingpasses < 1 << codingpassesLog2 ? codingpassesLog2 - 1 : codingpassesLog2) + codeblock.Lblock;\n const codedDataLength = readBits(bits);\n queue.push({\n codeblock,\n codingpasses,\n dataLength: codedDataLength\n });\n }\n alignToByte();\n if (ephMarkerUsed) {\n skipMarkerIfEqual(0x92);\n }\n while (queue.length > 0) {\n const packetItem = queue.shift();\n codeblock = packetItem.codeblock;\n if (codeblock.data === undefined) {\n codeblock.data = [];\n }\n codeblock.data.push({\n data,\n start: offset + position,\n end: offset + position + packetItem.dataLength,\n codingpasses: packetItem.codingpasses\n });\n position += packetItem.dataLength;\n }\n }\n return position;\n}\nfunction copyCoefficients(coefficients, levelWidth, levelHeight, subband, delta, mb, reversible, segmentationSymbolUsed, resetContextProbabilities) {\n const x0 = subband.tbx0;\n const y0 = subband.tby0;\n const width = subband.tbx1 - subband.tbx0;\n const codeblocks = subband.codeblocks;\n const right = subband.type.charAt(0) === \"H\" ? 1 : 0;\n const bottom = subband.type.charAt(1) === \"H\" ? levelWidth : 0;\n for (let i = 0, ii = codeblocks.length; i < ii; ++i) {\n const codeblock = codeblocks[i];\n const blockWidth = codeblock.tbx1_ - codeblock.tbx0_;\n const blockHeight = codeblock.tby1_ - codeblock.tby0_;\n if (blockWidth === 0 || blockHeight === 0) {\n continue;\n }\n if (codeblock.data === undefined) {\n continue;\n }\n const bitModel = new BitModel(blockWidth, blockHeight, codeblock.subbandType, codeblock.zeroBitPlanes, mb);\n let currentCodingpassType = 2;\n const data = codeblock.data;\n let totalLength = 0,\n codingpasses = 0;\n let j, jj, dataItem;\n for (j = 0, jj = data.length; j < jj; j++) {\n dataItem = data[j];\n totalLength += dataItem.end - dataItem.start;\n codingpasses += dataItem.codingpasses;\n }\n const encodedData = new Uint8Array(totalLength);\n let position = 0;\n for (j = 0, jj = data.length; j < jj; j++) {\n dataItem = data[j];\n const chunk = dataItem.data.subarray(dataItem.start, dataItem.end);\n encodedData.set(chunk, position);\n position += chunk.length;\n }\n const decoder = new _arithmetic_decoder.ArithmeticDecoder(encodedData, 0, totalLength);\n bitModel.setDecoder(decoder);\n for (j = 0; j < codingpasses; j++) {\n switch (currentCodingpassType) {\n case 0:\n bitModel.runSignificancePropagationPass();\n break;\n case 1:\n bitModel.runMagnitudeRefinementPass();\n break;\n case 2:\n bitModel.runCleanupPass();\n if (segmentationSymbolUsed) {\n bitModel.checkSegmentationSymbol();\n }\n break;\n }\n if (resetContextProbabilities) {\n bitModel.reset();\n }\n currentCodingpassType = (currentCodingpassType + 1) % 3;\n }\n let offset = codeblock.tbx0_ - x0 + (codeblock.tby0_ - y0) * width;\n const sign = bitModel.coefficentsSign;\n const magnitude = bitModel.coefficentsMagnitude;\n const bitsDecoded = bitModel.bitsDecoded;\n const magnitudeCorrection = reversible ? 0 : 0.5;\n let k, n, nb;\n position = 0;\n const interleave = subband.type !== \"LL\";\n for (j = 0; j < blockHeight; j++) {\n const row = offset / width | 0;\n const levelOffset = 2 * row * (levelWidth - width) + right + bottom;\n for (k = 0; k < blockWidth; k++) {\n n = magnitude[position];\n if (n !== 0) {\n n = (n + magnitudeCorrection) * delta;\n if (sign[position] !== 0) {\n n = -n;\n }\n nb = bitsDecoded[position];\n const pos = interleave ? levelOffset + (offset << 1) : offset;\n coefficients[pos] = reversible && nb >= mb ? n : n * (1 << mb - nb);\n }\n offset++;\n position++;\n }\n offset += width - blockWidth;\n }\n }\n}\nfunction transformTile(context, tile, c) {\n const component = tile.components[c];\n const codingStyleParameters = component.codingStyleParameters;\n const quantizationParameters = component.quantizationParameters;\n const decompositionLevelsCount = codingStyleParameters.decompositionLevelsCount;\n const spqcds = quantizationParameters.SPqcds;\n const scalarExpounded = quantizationParameters.scalarExpounded;\n const guardBits = quantizationParameters.guardBits;\n const segmentationSymbolUsed = codingStyleParameters.segmentationSymbolUsed;\n const resetContextProbabilities = codingStyleParameters.resetContextProbabilities;\n const precision = context.components[c].precision;\n const reversible = codingStyleParameters.reversibleTransformation;\n const transform = reversible ? new ReversibleTransform() : new IrreversibleTransform();\n const subbandCoefficients = [];\n let b = 0;\n for (let i = 0; i <= decompositionLevelsCount; i++) {\n const resolution = component.resolutions[i];\n const width = resolution.trx1 - resolution.trx0;\n const height = resolution.try1 - resolution.try0;\n const coefficients = new Float32Array(width * height);\n for (let j = 0, jj = resolution.subbands.length; j < jj; j++) {\n let mu, epsilon;\n if (!scalarExpounded) {\n mu = spqcds[0].mu;\n epsilon = spqcds[0].epsilon + (i > 0 ? 1 - i : 0);\n } else {\n mu = spqcds[b].mu;\n epsilon = spqcds[b].epsilon;\n b++;\n }\n const subband = resolution.subbands[j];\n const gainLog2 = SubbandsGainLog2[subband.type];\n const delta = reversible ? 1 : 2 ** (precision + gainLog2 - epsilon) * (1 + mu / 2048);\n const mb = guardBits + epsilon - 1;\n copyCoefficients(coefficients, width, height, subband, delta, mb, reversible, segmentationSymbolUsed, resetContextProbabilities);\n }\n subbandCoefficients.push({\n width,\n height,\n items: coefficients\n });\n }\n const result = transform.calculate(subbandCoefficients, component.tcx0, component.tcy0);\n return {\n left: component.tcx0,\n top: component.tcy0,\n width: result.width,\n height: result.height,\n items: result.items\n };\n}\nfunction transformComponents(context) {\n const siz = context.SIZ;\n const components = context.components;\n const componentsCount = siz.Csiz;\n const resultImages = [];\n for (let i = 0, ii = context.tiles.length; i < ii; i++) {\n const tile = context.tiles[i];\n const transformedTiles = [];\n for (let c = 0; c < componentsCount; c++) {\n transformedTiles[c] = transformTile(context, tile, c);\n }\n const tile0 = transformedTiles[0];\n const out = new Uint8ClampedArray(tile0.items.length * componentsCount);\n const result = {\n left: tile0.left,\n top: tile0.top,\n width: tile0.width,\n height: tile0.height,\n items: out\n };\n let shift, offset;\n let pos = 0,\n j,\n jj,\n y0,\n y1,\n y2;\n if (tile.codingStyleDefaultParameters.multipleComponentTransform) {\n const fourComponents = componentsCount === 4;\n const y0items = transformedTiles[0].items;\n const y1items = transformedTiles[1].items;\n const y2items = transformedTiles[2].items;\n const y3items = fourComponents ? transformedTiles[3].items : null;\n shift = components[0].precision - 8;\n offset = (128 << shift) + 0.5;\n const component0 = tile.components[0];\n const alpha01 = componentsCount - 3;\n jj = y0items.length;\n if (!component0.codingStyleParameters.reversibleTransformation) {\n for (j = 0; j < jj; j++, pos += alpha01) {\n y0 = y0items[j] + offset;\n y1 = y1items[j];\n y2 = y2items[j];\n out[pos++] = y0 + 1.402 * y2 >> shift;\n out[pos++] = y0 - 0.34413 * y1 - 0.71414 * y2 >> shift;\n out[pos++] = y0 + 1.772 * y1 >> shift;\n }\n } else {\n for (j = 0; j < jj; j++, pos += alpha01) {\n y0 = y0items[j] + offset;\n y1 = y1items[j];\n y2 = y2items[j];\n const g = y0 - (y2 + y1 >> 2);\n out[pos++] = g + y2 >> shift;\n out[pos++] = g >> shift;\n out[pos++] = g + y1 >> shift;\n }\n }\n if (fourComponents) {\n for (j = 0, pos = 3; j < jj; j++, pos += 4) {\n out[pos] = y3items[j] + offset >> shift;\n }\n }\n } else {\n for (let c = 0; c < componentsCount; c++) {\n const items = transformedTiles[c].items;\n shift = components[c].precision - 8;\n offset = (128 << shift) + 0.5;\n for (pos = c, j = 0, jj = items.length; j < jj; j++) {\n out[pos] = items[j] + offset >> shift;\n pos += componentsCount;\n }\n }\n }\n resultImages.push(result);\n }\n return resultImages;\n}\nfunction initializeTile(context, tileIndex) {\n const siz = context.SIZ;\n const componentsCount = siz.Csiz;\n const tile = context.tiles[tileIndex];\n for (let c = 0; c < componentsCount; c++) {\n const component = tile.components[c];\n const qcdOrQcc = context.currentTile.QCC[c] !== undefined ? context.currentTile.QCC[c] : context.currentTile.QCD;\n component.quantizationParameters = qcdOrQcc;\n const codOrCoc = context.currentTile.COC[c] !== undefined ? context.currentTile.COC[c] : context.currentTile.COD;\n component.codingStyleParameters = codOrCoc;\n }\n tile.codingStyleDefaultParameters = context.currentTile.COD;\n}\nclass TagTree {\n constructor(width, height) {\n const levelsLength = (0, _core_utils.log2)(Math.max(width, height)) + 1;\n this.levels = [];\n for (let i = 0; i < levelsLength; i++) {\n const level = {\n width,\n height,\n items: []\n };\n this.levels.push(level);\n width = Math.ceil(width / 2);\n height = Math.ceil(height / 2);\n }\n }\n reset(i, j) {\n let currentLevel = 0,\n value = 0,\n level;\n while (currentLevel < this.levels.length) {\n level = this.levels[currentLevel];\n const index = i + j * level.width;\n if (level.items[index] !== undefined) {\n value = level.items[index];\n break;\n }\n level.index = index;\n i >>= 1;\n j >>= 1;\n currentLevel++;\n }\n currentLevel--;\n level = this.levels[currentLevel];\n level.items[level.index] = value;\n this.currentLevel = currentLevel;\n delete this.value;\n }\n incrementValue() {\n const level = this.levels[this.currentLevel];\n level.items[level.index]++;\n }\n nextLevel() {\n let currentLevel = this.currentLevel;\n let level = this.levels[currentLevel];\n const value = level.items[level.index];\n currentLevel--;\n if (currentLevel < 0) {\n this.value = value;\n return false;\n }\n this.currentLevel = currentLevel;\n level = this.levels[currentLevel];\n level.items[level.index] = value;\n return true;\n }\n}\nclass InclusionTree {\n constructor(width, height, defaultValue) {\n const levelsLength = (0, _core_utils.log2)(Math.max(width, height)) + 1;\n this.levels = [];\n for (let i = 0; i < levelsLength; i++) {\n const items = new Uint8Array(width * height);\n for (let j = 0, jj = items.length; j < jj; j++) {\n items[j] = defaultValue;\n }\n const level = {\n width,\n height,\n items\n };\n this.levels.push(level);\n width = Math.ceil(width / 2);\n height = Math.ceil(height / 2);\n }\n }\n reset(i, j, stopValue) {\n let currentLevel = 0;\n while (currentLevel < this.levels.length) {\n const level = this.levels[currentLevel];\n const index = i + j * level.width;\n level.index = index;\n const value = level.items[index];\n if (value === 0xff) {\n break;\n }\n if (value > stopValue) {\n this.currentLevel = currentLevel;\n this.propagateValues();\n return false;\n }\n i >>= 1;\n j >>= 1;\n currentLevel++;\n }\n this.currentLevel = currentLevel - 1;\n return true;\n }\n incrementValue(stopValue) {\n const level = this.levels[this.currentLevel];\n level.items[level.index] = stopValue + 1;\n this.propagateValues();\n }\n propagateValues() {\n let levelIndex = this.currentLevel;\n let level = this.levels[levelIndex];\n const currentValue = level.items[level.index];\n while (--levelIndex >= 0) {\n level = this.levels[levelIndex];\n level.items[level.index] = currentValue;\n }\n }\n nextLevel() {\n let currentLevel = this.currentLevel;\n let level = this.levels[currentLevel];\n const value = level.items[level.index];\n level.items[level.index] = 0xff;\n currentLevel--;\n if (currentLevel < 0) {\n return false;\n }\n this.currentLevel = currentLevel;\n level = this.levels[currentLevel];\n level.items[level.index] = value;\n return true;\n }\n}\nclass BitModel {\n static UNIFORM_CONTEXT = 17;\n static RUNLENGTH_CONTEXT = 18;\n static LLAndLHContextsLabel = new Uint8Array([0, 5, 8, 0, 3, 7, 8, 0, 4, 7, 8, 0, 0, 0, 0, 0, 1, 6, 8, 0, 3, 7, 8, 0, 4, 7, 8, 0, 0, 0, 0, 0, 2, 6, 8, 0, 3, 7, 8, 0, 4, 7, 8, 0, 0, 0, 0, 0, 2, 6, 8, 0, 3, 7, 8, 0, 4, 7, 8, 0, 0, 0, 0, 0, 2, 6, 8, 0, 3, 7, 8, 0, 4, 7, 8]);\n static HLContextLabel = new Uint8Array([0, 3, 4, 0, 5, 7, 7, 0, 8, 8, 8, 0, 0, 0, 0, 0, 1, 3, 4, 0, 6, 7, 7, 0, 8, 8, 8, 0, 0, 0, 0, 0, 2, 3, 4, 0, 6, 7, 7, 0, 8, 8, 8, 0, 0, 0, 0, 0, 2, 3, 4, 0, 6, 7, 7, 0, 8, 8, 8, 0, 0, 0, 0, 0, 2, 3, 4, 0, 6, 7, 7, 0, 8, 8, 8]);\n static HHContextLabel = new Uint8Array([0, 1, 2, 0, 1, 2, 2, 0, 2, 2, 2, 0, 0, 0, 0, 0, 3, 4, 5, 0, 4, 5, 5, 0, 5, 5, 5, 0, 0, 0, 0, 0, 6, 7, 7, 0, 7, 7, 7, 0, 7, 7, 7, 0, 0, 0, 0, 0, 8, 8, 8, 0, 8, 8, 8, 0, 8, 8, 8, 0, 0, 0, 0, 0, 8, 8, 8, 0, 8, 8, 8, 0, 8, 8, 8]);\n constructor(width, height, subband, zeroBitPlanes, mb) {\n this.width = width;\n this.height = height;\n let contextLabelTable;\n if (subband === \"HH\") {\n contextLabelTable = BitModel.HHContextLabel;\n } else if (subband === \"HL\") {\n contextLabelTable = BitModel.HLContextLabel;\n } else {\n contextLabelTable = BitModel.LLAndLHContextsLabel;\n }\n this.contextLabelTable = contextLabelTable;\n const coefficientCount = width * height;\n this.neighborsSignificance = new Uint8Array(coefficientCount);\n this.coefficentsSign = new Uint8Array(coefficientCount);\n let coefficentsMagnitude;\n if (mb > 14) {\n coefficentsMagnitude = new Uint32Array(coefficientCount);\n } else if (mb > 6) {\n coefficentsMagnitude = new Uint16Array(coefficientCount);\n } else {\n coefficentsMagnitude = new Uint8Array(coefficientCount);\n }\n this.coefficentsMagnitude = coefficentsMagnitude;\n this.processingFlags = new Uint8Array(coefficientCount);\n const bitsDecoded = new Uint8Array(coefficientCount);\n if (zeroBitPlanes !== 0) {\n for (let i = 0; i < coefficientCount; i++) {\n bitsDecoded[i] = zeroBitPlanes;\n }\n }\n this.bitsDecoded = bitsDecoded;\n this.reset();\n }\n setDecoder(decoder) {\n this.decoder = decoder;\n }\n reset() {\n this.contexts = new Int8Array(19);\n this.contexts[0] = 4 << 1 | 0;\n this.contexts[BitModel.UNIFORM_CONTEXT] = 46 << 1 | 0;\n this.contexts[BitModel.RUNLENGTH_CONTEXT] = 3 << 1 | 0;\n }\n setNeighborsSignificance(row, column, index) {\n const neighborsSignificance = this.neighborsSignificance;\n const width = this.width,\n height = this.height;\n const left = column > 0;\n const right = column + 1 < width;\n let i;\n if (row > 0) {\n i = index - width;\n if (left) {\n neighborsSignificance[i - 1] += 0x10;\n }\n if (right) {\n neighborsSignificance[i + 1] += 0x10;\n }\n neighborsSignificance[i] += 0x04;\n }\n if (row + 1 < height) {\n i = index + width;\n if (left) {\n neighborsSignificance[i - 1] += 0x10;\n }\n if (right) {\n neighborsSignificance[i + 1] += 0x10;\n }\n neighborsSignificance[i] += 0x04;\n }\n if (left) {\n neighborsSignificance[index - 1] += 0x01;\n }\n if (right) {\n neighborsSignificance[index + 1] += 0x01;\n }\n neighborsSignificance[index] |= 0x80;\n }\n runSignificancePropagationPass() {\n const decoder = this.decoder;\n const width = this.width,\n height = this.height;\n const coefficentsMagnitude = this.coefficentsMagnitude;\n const coefficentsSign = this.coefficentsSign;\n const neighborsSignificance = this.neighborsSignificance;\n const processingFlags = this.processingFlags;\n const contexts = this.contexts;\n const labels = this.contextLabelTable;\n const bitsDecoded = this.bitsDecoded;\n const processedInverseMask = ~1;\n const processedMask = 1;\n const firstMagnitudeBitMask = 2;\n for (let i0 = 0; i0 < height; i0 += 4) {\n for (let j = 0; j < width; j++) {\n let index = i0 * width + j;\n for (let i1 = 0; i1 < 4; i1++, index += width) {\n const i = i0 + i1;\n if (i >= height) {\n break;\n }\n processingFlags[index] &= processedInverseMask;\n if (coefficentsMagnitude[index] || !neighborsSignificance[index]) {\n continue;\n }\n const contextLabel = labels[neighborsSignificance[index]];\n const decision = decoder.readBit(contexts, contextLabel);\n if (decision) {\n const sign = this.decodeSignBit(i, j, index);\n coefficentsSign[index] = sign;\n coefficentsMagnitude[index] = 1;\n this.setNeighborsSignificance(i, j, index);\n processingFlags[index] |= firstMagnitudeBitMask;\n }\n bitsDecoded[index]++;\n processingFlags[index] |= processedMask;\n }\n }\n }\n }\n decodeSignBit(row, column, index) {\n const width = this.width,\n height = this.height;\n const coefficentsMagnitude = this.coefficentsMagnitude;\n const coefficentsSign = this.coefficentsSign;\n let contribution, sign0, sign1, significance1;\n let contextLabel, decoded;\n significance1 = column > 0 && coefficentsMagnitude[index - 1] !== 0;\n if (column + 1 < width && coefficentsMagnitude[index + 1] !== 0) {\n sign1 = coefficentsSign[index + 1];\n if (significance1) {\n sign0 = coefficentsSign[index - 1];\n contribution = 1 - sign1 - sign0;\n } else {\n contribution = 1 - sign1 - sign1;\n }\n } else if (significance1) {\n sign0 = coefficentsSign[index - 1];\n contribution = 1 - sign0 - sign0;\n } else {\n contribution = 0;\n }\n const horizontalContribution = 3 * contribution;\n significance1 = row > 0 && coefficentsMagnitude[index - width] !== 0;\n if (row + 1 < height && coefficentsMagnitude[index + width] !== 0) {\n sign1 = coefficentsSign[index + width];\n if (significance1) {\n sign0 = coefficentsSign[index - width];\n contribution = 1 - sign1 - sign0 + horizontalContribution;\n } else {\n contribution = 1 - sign1 - sign1 + horizontalContribution;\n }\n } else if (significance1) {\n sign0 = coefficentsSign[index - width];\n contribution = 1 - sign0 - sign0 + horizontalContribution;\n } else {\n contribution = horizontalContribution;\n }\n if (contribution >= 0) {\n contextLabel = 9 + contribution;\n decoded = this.decoder.readBit(this.contexts, contextLabel);\n } else {\n contextLabel = 9 - contribution;\n decoded = this.decoder.readBit(this.contexts, contextLabel) ^ 1;\n }\n return decoded;\n }\n runMagnitudeRefinementPass() {\n const decoder = this.decoder;\n const width = this.width,\n height = this.height;\n const coefficentsMagnitude = this.coefficentsMagnitude;\n const neighborsSignificance = this.neighborsSignificance;\n const contexts = this.contexts;\n const bitsDecoded = this.bitsDecoded;\n const processingFlags = this.processingFlags;\n const processedMask = 1;\n const firstMagnitudeBitMask = 2;\n const length = width * height;\n const width4 = width * 4;\n for (let index0 = 0, indexNext; index0 < length; index0 = indexNext) {\n indexNext = Math.min(length, index0 + width4);\n for (let j = 0; j < width; j++) {\n for (let index = index0 + j; index < indexNext; index += width) {\n if (!coefficentsMagnitude[index] || (processingFlags[index] & processedMask) !== 0) {\n continue;\n }\n let contextLabel = 16;\n if ((processingFlags[index] & firstMagnitudeBitMask) !== 0) {\n processingFlags[index] ^= firstMagnitudeBitMask;\n const significance = neighborsSignificance[index] & 127;\n contextLabel = significance === 0 ? 15 : 14;\n }\n const bit = decoder.readBit(contexts, contextLabel);\n coefficentsMagnitude[index] = coefficentsMagnitude[index] << 1 | bit;\n bitsDecoded[index]++;\n processingFlags[index] |= processedMask;\n }\n }\n }\n }\n runCleanupPass() {\n const decoder = this.decoder;\n const width = this.width,\n height = this.height;\n const neighborsSignificance = this.neighborsSignificance;\n const coefficentsMagnitude = this.coefficentsMagnitude;\n const coefficentsSign = this.coefficentsSign;\n const contexts = this.contexts;\n const labels = this.contextLabelTable;\n const bitsDecoded = this.bitsDecoded;\n const processingFlags = this.processingFlags;\n const processedMask = 1;\n const firstMagnitudeBitMask = 2;\n const oneRowDown = width;\n const twoRowsDown = width * 2;\n const threeRowsDown = width * 3;\n let iNext;\n for (let i0 = 0; i0 < height; i0 = iNext) {\n iNext = Math.min(i0 + 4, height);\n const indexBase = i0 * width;\n const checkAllEmpty = i0 + 3 < height;\n for (let j = 0; j < width; j++) {\n const index0 = indexBase + j;\n const allEmpty = checkAllEmpty && processingFlags[index0] === 0 && processingFlags[index0 + oneRowDown] === 0 && processingFlags[index0 + twoRowsDown] === 0 && processingFlags[index0 + threeRowsDown] === 0 && neighborsSignificance[index0] === 0 && neighborsSignificance[index0 + oneRowDown] === 0 && neighborsSignificance[index0 + twoRowsDown] === 0 && neighborsSignificance[index0 + threeRowsDown] === 0;\n let i1 = 0,\n index = index0;\n let i = i0,\n sign;\n if (allEmpty) {\n const hasSignificantCoefficent = decoder.readBit(contexts, BitModel.RUNLENGTH_CONTEXT);\n if (!hasSignificantCoefficent) {\n bitsDecoded[index0]++;\n bitsDecoded[index0 + oneRowDown]++;\n bitsDecoded[index0 + twoRowsDown]++;\n bitsDecoded[index0 + threeRowsDown]++;\n continue;\n }\n i1 = decoder.readBit(contexts, BitModel.UNIFORM_CONTEXT) << 1 | decoder.readBit(contexts, BitModel.UNIFORM_CONTEXT);\n if (i1 !== 0) {\n i = i0 + i1;\n index += i1 * width;\n }\n sign = this.decodeSignBit(i, j, index);\n coefficentsSign[index] = sign;\n coefficentsMagnitude[index] = 1;\n this.setNeighborsSignificance(i, j, index);\n processingFlags[index] |= firstMagnitudeBitMask;\n index = index0;\n for (let i2 = i0; i2 <= i; i2++, index += width) {\n bitsDecoded[index]++;\n }\n i1++;\n }\n for (i = i0 + i1; i < iNext; i++, index += width) {\n if (coefficentsMagnitude[index] || (processingFlags[index] & processedMask) !== 0) {\n continue;\n }\n const contextLabel = labels[neighborsSignificance[index]];\n const decision = decoder.readBit(contexts, contextLabel);\n if (decision === 1) {\n sign = this.decodeSignBit(i, j, index);\n coefficentsSign[index] = sign;\n coefficentsMagnitude[index] = 1;\n this.setNeighborsSignificance(i, j, index);\n processingFlags[index] |= firstMagnitudeBitMask;\n }\n bitsDecoded[index]++;\n }\n }\n }\n }\n checkSegmentationSymbol() {\n const decoder = this.decoder;\n const contexts = this.contexts;\n const symbol = decoder.readBit(contexts, BitModel.UNIFORM_CONTEXT) << 3 | decoder.readBit(contexts, BitModel.UNIFORM_CONTEXT) << 2 | decoder.readBit(contexts, BitModel.UNIFORM_CONTEXT) << 1 | decoder.readBit(contexts, BitModel.UNIFORM_CONTEXT);\n if (symbol !== 0xa) {\n throw new JpxError(\"Invalid segmentation symbol\");\n }\n }\n}\nclass Transform {\n constructor() {\n if (this.constructor === Transform) {\n (0, _util.unreachable)(\"Cannot initialize Transform.\");\n }\n }\n calculate(subbands, u0, v0) {\n let ll = subbands[0];\n for (let i = 1, ii = subbands.length; i < ii; i++) {\n ll = this.iterate(ll, subbands[i], u0, v0);\n }\n return ll;\n }\n extend(buffer, offset, size) {\n let i1 = offset - 1,\n j1 = offset + 1;\n let i2 = offset + size - 2,\n j2 = offset + size;\n buffer[i1--] = buffer[j1++];\n buffer[j2++] = buffer[i2--];\n buffer[i1--] = buffer[j1++];\n buffer[j2++] = buffer[i2--];\n buffer[i1--] = buffer[j1++];\n buffer[j2++] = buffer[i2--];\n buffer[i1] = buffer[j1];\n buffer[j2] = buffer[i2];\n }\n filter(x, offset, length) {\n (0, _util.unreachable)(\"Abstract method `filter` called\");\n }\n iterate(ll, hl_lh_hh, u0, v0) {\n const llWidth = ll.width,\n llHeight = ll.height;\n let llItems = ll.items;\n const width = hl_lh_hh.width;\n const height = hl_lh_hh.height;\n const items = hl_lh_hh.items;\n let i, j, k, l, u, v;\n for (k = 0, i = 0; i < llHeight; i++) {\n l = i * 2 * width;\n for (j = 0; j < llWidth; j++, k++, l += 2) {\n items[l] = llItems[k];\n }\n }\n llItems = ll.items = null;\n const bufferPadding = 4;\n const rowBuffer = new Float32Array(width + 2 * bufferPadding);\n if (width === 1) {\n if ((u0 & 1) !== 0) {\n for (v = 0, k = 0; v < height; v++, k += width) {\n items[k] *= 0.5;\n }\n }\n } else {\n for (v = 0, k = 0; v < height; v++, k += width) {\n rowBuffer.set(items.subarray(k, k + width), bufferPadding);\n this.extend(rowBuffer, bufferPadding, width);\n this.filter(rowBuffer, bufferPadding, width);\n items.set(rowBuffer.subarray(bufferPadding, bufferPadding + width), k);\n }\n }\n let numBuffers = 16;\n const colBuffers = [];\n for (i = 0; i < numBuffers; i++) {\n colBuffers.push(new Float32Array(height + 2 * bufferPadding));\n }\n let b,\n currentBuffer = 0;\n ll = bufferPadding + height;\n if (height === 1) {\n if ((v0 & 1) !== 0) {\n for (u = 0; u < width; u++) {\n items[u] *= 0.5;\n }\n }\n } else {\n for (u = 0; u < width; u++) {\n if (currentBuffer === 0) {\n numBuffers = Math.min(width - u, numBuffers);\n for (k = u, l = bufferPadding; l < ll; k += width, l++) {\n for (b = 0; b < numBuffers; b++) {\n colBuffers[b][l] = items[k + b];\n }\n }\n currentBuffer = numBuffers;\n }\n currentBuffer--;\n const buffer = colBuffers[currentBuffer];\n this.extend(buffer, bufferPadding, height);\n this.filter(buffer, bufferPadding, height);\n if (currentBuffer === 0) {\n k = u - numBuffers + 1;\n for (l = bufferPadding; l < ll; k += width, l++) {\n for (b = 0; b < numBuffers; b++) {\n items[k + b] = colBuffers[b][l];\n }\n }\n }\n }\n }\n return {\n width,\n height,\n items\n };\n }\n}\nclass IrreversibleTransform extends Transform {\n filter(x, offset, length) {\n const len = length >> 1;\n offset |= 0;\n let j, n, current, next;\n const alpha = -1.586134342059924;\n const beta = -0.052980118572961;\n const gamma = 0.882911075530934;\n const delta = 0.443506852043971;\n const K = 1.230174104914001;\n const K_ = 1 / K;\n j = offset - 3;\n for (n = len + 4; n--; j += 2) {\n x[j] *= K_;\n }\n j = offset - 2;\n current = delta * x[j - 1];\n for (n = len + 3; n--; j += 2) {\n next = delta * x[j + 1];\n x[j] = K * x[j] - current - next;\n if (n--) {\n j += 2;\n current = delta * x[j + 1];\n x[j] = K * x[j] - current - next;\n } else {\n break;\n }\n }\n j = offset - 1;\n current = gamma * x[j - 1];\n for (n = len + 2; n--; j += 2) {\n next = gamma * x[j + 1];\n x[j] -= current + next;\n if (n--) {\n j += 2;\n current = gamma * x[j + 1];\n x[j] -= current + next;\n } else {\n break;\n }\n }\n j = offset;\n current = beta * x[j - 1];\n for (n = len + 1; n--; j += 2) {\n next = beta * x[j + 1];\n x[j] -= current + next;\n if (n--) {\n j += 2;\n current = beta * x[j + 1];\n x[j] -= current + next;\n } else {\n break;\n }\n }\n if (len !== 0) {\n j = offset + 1;\n current = alpha * x[j - 1];\n for (n = len; n--; j += 2) {\n next = alpha * x[j + 1];\n x[j] -= current + next;\n if (n--) {\n j += 2;\n current = alpha * x[j + 1];\n x[j] -= current + next;\n } else {\n break;\n }\n }\n }\n }\n}\nclass ReversibleTransform extends Transform {\n filter(x, offset, length) {\n const len = length >> 1;\n offset |= 0;\n let j, n;\n for (j = offset, n = len + 1; n--; j += 2) {\n x[j] -= x[j - 1] + x[j + 1] + 2 >> 2;\n }\n for (j = offset + 1, n = len; n--; j += 2) {\n x[j] += x[j - 1] + x[j + 1] >> 1;\n }\n }\n}\n\n/***/ }),\n/* 31 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.LZWStream = void 0;\nvar _decode_stream = __w_pdfjs_require__(18);\nclass LZWStream extends _decode_stream.DecodeStream {\n constructor(str, maybeLength, earlyChange) {\n super(maybeLength);\n this.str = str;\n this.dict = str.dict;\n this.cachedData = 0;\n this.bitsCached = 0;\n const maxLzwDictionarySize = 4096;\n const lzwState = {\n earlyChange,\n codeLength: 9,\n nextCode: 258,\n dictionaryValues: new Uint8Array(maxLzwDictionarySize),\n dictionaryLengths: new Uint16Array(maxLzwDictionarySize),\n dictionaryPrevCodes: new Uint16Array(maxLzwDictionarySize),\n currentSequence: new Uint8Array(maxLzwDictionarySize),\n currentSequenceLength: 0\n };\n for (let i = 0; i < 256; ++i) {\n lzwState.dictionaryValues[i] = i;\n lzwState.dictionaryLengths[i] = 1;\n }\n this.lzwState = lzwState;\n }\n readBits(n) {\n let bitsCached = this.bitsCached;\n let cachedData = this.cachedData;\n while (bitsCached < n) {\n const c = this.str.getByte();\n if (c === -1) {\n this.eof = true;\n return null;\n }\n cachedData = cachedData << 8 | c;\n bitsCached += 8;\n }\n this.bitsCached = bitsCached -= n;\n this.cachedData = cachedData;\n this.lastCode = null;\n return cachedData >>> bitsCached & (1 << n) - 1;\n }\n readBlock() {\n const blockSize = 512,\n decodedSizeDelta = blockSize;\n let estimatedDecodedSize = blockSize * 2;\n let i, j, q;\n const lzwState = this.lzwState;\n if (!lzwState) {\n return;\n }\n const earlyChange = lzwState.earlyChange;\n let nextCode = lzwState.nextCode;\n const dictionaryValues = lzwState.dictionaryValues;\n const dictionaryLengths = lzwState.dictionaryLengths;\n const dictionaryPrevCodes = lzwState.dictionaryPrevCodes;\n let codeLength = lzwState.codeLength;\n let prevCode = lzwState.prevCode;\n const currentSequence = lzwState.currentSequence;\n let currentSequenceLength = lzwState.currentSequenceLength;\n let decodedLength = 0;\n let currentBufferLength = this.bufferLength;\n let buffer = this.ensureBuffer(this.bufferLength + estimatedDecodedSize);\n for (i = 0; i < blockSize; i++) {\n const code = this.readBits(codeLength);\n const hasPrev = currentSequenceLength > 0;\n if (code < 256) {\n currentSequence[0] = code;\n currentSequenceLength = 1;\n } else if (code >= 258) {\n if (code < nextCode) {\n currentSequenceLength = dictionaryLengths[code];\n for (j = currentSequenceLength - 1, q = code; j >= 0; j--) {\n currentSequence[j] = dictionaryValues[q];\n q = dictionaryPrevCodes[q];\n }\n } else {\n currentSequence[currentSequenceLength++] = currentSequence[0];\n }\n } else if (code === 256) {\n codeLength = 9;\n nextCode = 258;\n currentSequenceLength = 0;\n continue;\n } else {\n this.eof = true;\n delete this.lzwState;\n break;\n }\n if (hasPrev) {\n dictionaryPrevCodes[nextCode] = prevCode;\n dictionaryLengths[nextCode] = dictionaryLengths[prevCode] + 1;\n dictionaryValues[nextCode] = currentSequence[0];\n nextCode++;\n codeLength = nextCode + earlyChange & nextCode + earlyChange - 1 ? codeLength : Math.min(Math.log(nextCode + earlyChange) / 0.6931471805599453 + 1, 12) | 0;\n }\n prevCode = code;\n decodedLength += currentSequenceLength;\n if (estimatedDecodedSize < decodedLength) {\n do {\n estimatedDecodedSize += decodedSizeDelta;\n } while (estimatedDecodedSize < decodedLength);\n buffer = this.ensureBuffer(this.bufferLength + estimatedDecodedSize);\n }\n for (j = 0; j < currentSequenceLength; j++) {\n buffer[currentBufferLength++] = currentSequence[j];\n }\n }\n lzwState.nextCode = nextCode;\n lzwState.codeLength = codeLength;\n lzwState.prevCode = prevCode;\n lzwState.currentSequenceLength = currentSequenceLength;\n this.bufferLength = currentBufferLength;\n }\n}\nexports.LZWStream = LZWStream;\n\n/***/ }),\n/* 32 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PredictorStream = void 0;\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _primitives = __w_pdfjs_require__(4);\nvar _util = __w_pdfjs_require__(2);\nclass PredictorStream extends _decode_stream.DecodeStream {\n constructor(str, maybeLength, params) {\n super(maybeLength);\n if (!(params instanceof _primitives.Dict)) {\n return str;\n }\n const predictor = this.predictor = params.get(\"Predictor\") || 1;\n if (predictor <= 1) {\n return str;\n }\n if (predictor !== 2 && (predictor < 10 || predictor > 15)) {\n throw new _util.FormatError(`Unsupported predictor: ${predictor}`);\n }\n this.readBlock = predictor === 2 ? this.readBlockTiff : this.readBlockPng;\n this.str = str;\n this.dict = str.dict;\n const colors = this.colors = params.get(\"Colors\") || 1;\n const bits = this.bits = params.get(\"BPC\", \"BitsPerComponent\") || 8;\n const columns = this.columns = params.get(\"Columns\") || 1;\n this.pixBytes = colors * bits + 7 >> 3;\n this.rowBytes = columns * colors * bits + 7 >> 3;\n return this;\n }\n readBlockTiff() {\n const rowBytes = this.rowBytes;\n const bufferLength = this.bufferLength;\n const buffer = this.ensureBuffer(bufferLength + rowBytes);\n const bits = this.bits;\n const colors = this.colors;\n const rawBytes = this.str.getBytes(rowBytes);\n this.eof = !rawBytes.length;\n if (this.eof) {\n return;\n }\n let inbuf = 0,\n outbuf = 0;\n let inbits = 0,\n outbits = 0;\n let pos = bufferLength;\n let i;\n if (bits === 1 && colors === 1) {\n for (i = 0; i < rowBytes; ++i) {\n let c = rawBytes[i] ^ inbuf;\n c ^= c >> 1;\n c ^= c >> 2;\n c ^= c >> 4;\n inbuf = (c & 1) << 7;\n buffer[pos++] = c;\n }\n } else if (bits === 8) {\n for (i = 0; i < colors; ++i) {\n buffer[pos++] = rawBytes[i];\n }\n for (; i < rowBytes; ++i) {\n buffer[pos] = buffer[pos - colors] + rawBytes[i];\n pos++;\n }\n } else if (bits === 16) {\n const bytesPerPixel = colors * 2;\n for (i = 0; i < bytesPerPixel; ++i) {\n buffer[pos++] = rawBytes[i];\n }\n for (; i < rowBytes; i += 2) {\n const sum = ((rawBytes[i] & 0xff) << 8) + (rawBytes[i + 1] & 0xff) + ((buffer[pos - bytesPerPixel] & 0xff) << 8) + (buffer[pos - bytesPerPixel + 1] & 0xff);\n buffer[pos++] = sum >> 8 & 0xff;\n buffer[pos++] = sum & 0xff;\n }\n } else {\n const compArray = new Uint8Array(colors + 1);\n const bitMask = (1 << bits) - 1;\n let j = 0,\n k = bufferLength;\n const columns = this.columns;\n for (i = 0; i < columns; ++i) {\n for (let kk = 0; kk < colors; ++kk) {\n if (inbits < bits) {\n inbuf = inbuf << 8 | rawBytes[j++] & 0xff;\n inbits += 8;\n }\n compArray[kk] = compArray[kk] + (inbuf >> inbits - bits) & bitMask;\n inbits -= bits;\n outbuf = outbuf << bits | compArray[kk];\n outbits += bits;\n if (outbits >= 8) {\n buffer[k++] = outbuf >> outbits - 8 & 0xff;\n outbits -= 8;\n }\n }\n }\n if (outbits > 0) {\n buffer[k++] = (outbuf << 8 - outbits) + (inbuf & (1 << 8 - outbits) - 1);\n }\n }\n this.bufferLength += rowBytes;\n }\n readBlockPng() {\n const rowBytes = this.rowBytes;\n const pixBytes = this.pixBytes;\n const predictor = this.str.getByte();\n const rawBytes = this.str.getBytes(rowBytes);\n this.eof = !rawBytes.length;\n if (this.eof) {\n return;\n }\n const bufferLength = this.bufferLength;\n const buffer = this.ensureBuffer(bufferLength + rowBytes);\n let prevRow = buffer.subarray(bufferLength - rowBytes, bufferLength);\n if (prevRow.length === 0) {\n prevRow = new Uint8Array(rowBytes);\n }\n let i,\n j = bufferLength,\n up,\n c;\n switch (predictor) {\n case 0:\n for (i = 0; i < rowBytes; ++i) {\n buffer[j++] = rawBytes[i];\n }\n break;\n case 1:\n for (i = 0; i < pixBytes; ++i) {\n buffer[j++] = rawBytes[i];\n }\n for (; i < rowBytes; ++i) {\n buffer[j] = buffer[j - pixBytes] + rawBytes[i] & 0xff;\n j++;\n }\n break;\n case 2:\n for (i = 0; i < rowBytes; ++i) {\n buffer[j++] = prevRow[i] + rawBytes[i] & 0xff;\n }\n break;\n case 3:\n for (i = 0; i < pixBytes; ++i) {\n buffer[j++] = (prevRow[i] >> 1) + rawBytes[i];\n }\n for (; i < rowBytes; ++i) {\n buffer[j] = (prevRow[i] + buffer[j - pixBytes] >> 1) + rawBytes[i] & 0xff;\n j++;\n }\n break;\n case 4:\n for (i = 0; i < pixBytes; ++i) {\n up = prevRow[i];\n c = rawBytes[i];\n buffer[j++] = up + c;\n }\n for (; i < rowBytes; ++i) {\n up = prevRow[i];\n const upLeft = prevRow[i - pixBytes];\n const left = buffer[j - pixBytes];\n const p = left + up - upLeft;\n let pa = p - left;\n if (pa < 0) {\n pa = -pa;\n }\n let pb = p - up;\n if (pb < 0) {\n pb = -pb;\n }\n let pc = p - upLeft;\n if (pc < 0) {\n pc = -pc;\n }\n c = rawBytes[i];\n if (pa <= pb && pa <= pc) {\n buffer[j++] = left + c;\n } else if (pb <= pc) {\n buffer[j++] = up + c;\n } else {\n buffer[j++] = upLeft + c;\n }\n }\n break;\n default:\n throw new _util.FormatError(`Unsupported predictor: ${predictor}`);\n }\n this.bufferLength += rowBytes;\n }\n}\nexports.PredictorStream = PredictorStream;\n\n/***/ }),\n/* 33 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.RunLengthStream = void 0;\nvar _decode_stream = __w_pdfjs_require__(18);\nclass RunLengthStream extends _decode_stream.DecodeStream {\n constructor(str, maybeLength) {\n super(maybeLength);\n this.str = str;\n this.dict = str.dict;\n }\n readBlock() {\n const repeatHeader = this.str.getBytes(2);\n if (!repeatHeader || repeatHeader.length < 2 || repeatHeader[0] === 128) {\n this.eof = true;\n return;\n }\n let buffer;\n let bufferLength = this.bufferLength;\n let n = repeatHeader[0];\n if (n < 128) {\n buffer = this.ensureBuffer(bufferLength + n + 1);\n buffer[bufferLength++] = repeatHeader[1];\n if (n > 0) {\n const source = this.str.getBytes(n);\n buffer.set(source, bufferLength);\n bufferLength += n;\n }\n } else {\n n = 257 - n;\n const b = repeatHeader[1];\n buffer = this.ensureBuffer(bufferLength + n + 1);\n for (let i = 0; i < n; i++) {\n buffer[bufferLength++] = b;\n }\n }\n this.bufferLength = bufferLength;\n }\n}\nexports.RunLengthStream = RunLengthStream;\n\n/***/ }),\n/* 34 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Font = exports.ErrorFont = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _cff_parser = __w_pdfjs_require__(35);\nvar _fonts_utils = __w_pdfjs_require__(38);\nvar _unicode = __w_pdfjs_require__(40);\nvar _glyphlist = __w_pdfjs_require__(39);\nvar _encodings = __w_pdfjs_require__(37);\nvar _standard_fonts = __w_pdfjs_require__(41);\nvar _to_unicode_map = __w_pdfjs_require__(42);\nvar _cff_font = __w_pdfjs_require__(43);\nvar _font_renderer = __w_pdfjs_require__(44);\nvar _metrics = __w_pdfjs_require__(45);\nvar _glyf = __w_pdfjs_require__(46);\nvar _cmap = __w_pdfjs_require__(14);\nvar _opentype_file_builder = __w_pdfjs_require__(47);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _stream = __w_pdfjs_require__(8);\nvar _type1_font = __w_pdfjs_require__(48);\nconst PRIVATE_USE_AREAS = [[0xe000, 0xf8ff], [0x100000, 0x10fffd]];\nconst PDF_GLYPH_SPACE_UNITS = 1000;\nconst EXPORT_DATA_PROPERTIES = [\"ascent\", \"bbox\", \"black\", \"bold\", \"charProcOperatorList\", \"composite\", \"cssFontInfo\", \"data\", \"defaultVMetrics\", \"defaultWidth\", \"descent\", \"fallbackName\", \"fontMatrix\", \"isInvalidPDFjsFont\", \"isType3Font\", \"italic\", \"loadedName\", \"mimetype\", \"missingFile\", \"name\", \"remeasure\", \"subtype\", \"systemFontInfo\", \"type\", \"vertical\"];\nconst EXPORT_DATA_EXTRA_PROPERTIES = [\"cMap\", \"defaultEncoding\", \"differences\", \"isMonospace\", \"isSerifFont\", \"isSymbolicFont\", \"seacMap\", \"toFontChar\", \"toUnicode\", \"vmetrics\", \"widths\"];\nfunction adjustWidths(properties) {\n if (!properties.fontMatrix) {\n return;\n }\n if (properties.fontMatrix[0] === _util.FONT_IDENTITY_MATRIX[0]) {\n return;\n }\n const scale = 0.001 / properties.fontMatrix[0];\n const glyphsWidths = properties.widths;\n for (const glyph in glyphsWidths) {\n glyphsWidths[glyph] *= scale;\n }\n properties.defaultWidth *= scale;\n}\nfunction adjustTrueTypeToUnicode(properties, isSymbolicFont, nameRecords) {\n if (properties.isInternalFont) {\n return;\n }\n if (properties.hasIncludedToUnicodeMap) {\n return;\n }\n if (properties.hasEncoding) {\n return;\n }\n if (properties.toUnicode instanceof _to_unicode_map.IdentityToUnicodeMap) {\n return;\n }\n if (!isSymbolicFont) {\n return;\n }\n if (nameRecords.length === 0) {\n return;\n }\n if (properties.defaultEncoding === _encodings.WinAnsiEncoding) {\n return;\n }\n for (const r of nameRecords) {\n if (!isWinNameRecord(r)) {\n return;\n }\n }\n const encoding = _encodings.WinAnsiEncoding;\n const toUnicode = [],\n glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();\n for (const charCode in encoding) {\n const glyphName = encoding[charCode];\n if (glyphName === \"\") {\n continue;\n }\n const unicode = glyphsUnicodeMap[glyphName];\n if (unicode === undefined) {\n continue;\n }\n toUnicode[charCode] = String.fromCharCode(unicode);\n }\n if (toUnicode.length > 0) {\n properties.toUnicode.amend(toUnicode);\n }\n}\nfunction adjustType1ToUnicode(properties, builtInEncoding) {\n if (properties.isInternalFont) {\n return;\n }\n if (properties.hasIncludedToUnicodeMap) {\n return;\n }\n if (builtInEncoding === properties.defaultEncoding) {\n return;\n }\n if (properties.toUnicode instanceof _to_unicode_map.IdentityToUnicodeMap) {\n return;\n }\n const toUnicode = [],\n glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();\n for (const charCode in builtInEncoding) {\n if (properties.hasEncoding) {\n if (properties.baseEncodingName || properties.differences[charCode] !== undefined) {\n continue;\n }\n }\n const glyphName = builtInEncoding[charCode];\n const unicode = (0, _unicode.getUnicodeForGlyph)(glyphName, glyphsUnicodeMap);\n if (unicode !== -1) {\n toUnicode[charCode] = String.fromCharCode(unicode);\n }\n }\n if (toUnicode.length > 0) {\n properties.toUnicode.amend(toUnicode);\n }\n}\nfunction amendFallbackToUnicode(properties) {\n if (!properties.fallbackToUnicode) {\n return;\n }\n if (properties.toUnicode instanceof _to_unicode_map.IdentityToUnicodeMap) {\n return;\n }\n const toUnicode = [];\n for (const charCode in properties.fallbackToUnicode) {\n if (properties.toUnicode.has(charCode)) {\n continue;\n }\n toUnicode[charCode] = properties.fallbackToUnicode[charCode];\n }\n if (toUnicode.length > 0) {\n properties.toUnicode.amend(toUnicode);\n }\n}\nclass Glyph {\n constructor(originalCharCode, fontChar, unicode, accent, width, vmetric, operatorListId, isSpace, isInFont) {\n this.originalCharCode = originalCharCode;\n this.fontChar = fontChar;\n this.unicode = unicode;\n this.accent = accent;\n this.width = width;\n this.vmetric = vmetric;\n this.operatorListId = operatorListId;\n this.isSpace = isSpace;\n this.isInFont = isInFont;\n }\n get category() {\n return (0, _util.shadow)(this, \"category\", (0, _unicode.getCharUnicodeCategory)(this.unicode), true);\n }\n}\nfunction int16(b0, b1) {\n return (b0 << 8) + b1;\n}\nfunction writeSignedInt16(bytes, index, value) {\n bytes[index + 1] = value;\n bytes[index] = value >>> 8;\n}\nfunction signedInt16(b0, b1) {\n const value = (b0 << 8) + b1;\n return value & 1 << 15 ? value - 0x10000 : value;\n}\nfunction int32(b0, b1, b2, b3) {\n return (b0 << 24) + (b1 << 16) + (b2 << 8) + b3;\n}\nfunction string16(value) {\n return String.fromCharCode(value >> 8 & 0xff, value & 0xff);\n}\nfunction safeString16(value) {\n if (value > 0x7fff) {\n value = 0x7fff;\n } else if (value < -0x8000) {\n value = -0x8000;\n }\n return String.fromCharCode(value >> 8 & 0xff, value & 0xff);\n}\nfunction isTrueTypeFile(file) {\n const header = file.peekBytes(4);\n return (0, _core_utils.readUint32)(header, 0) === 0x00010000 || (0, _util.bytesToString)(header) === \"true\";\n}\nfunction isTrueTypeCollectionFile(file) {\n const header = file.peekBytes(4);\n return (0, _util.bytesToString)(header) === \"ttcf\";\n}\nfunction isOpenTypeFile(file) {\n const header = file.peekBytes(4);\n return (0, _util.bytesToString)(header) === \"OTTO\";\n}\nfunction isType1File(file) {\n const header = file.peekBytes(2);\n if (header[0] === 0x25 && header[1] === 0x21) {\n return true;\n }\n if (header[0] === 0x80 && header[1] === 0x01) {\n return true;\n }\n return false;\n}\nfunction isCFFFile(file) {\n const header = file.peekBytes(4);\n if (header[0] >= 1 && header[3] >= 1 && header[3] <= 4) {\n return true;\n }\n return false;\n}\nfunction getFontFileType(file, {\n type,\n subtype,\n composite\n}) {\n let fileType, fileSubtype;\n if (isTrueTypeFile(file) || isTrueTypeCollectionFile(file)) {\n fileType = composite ? \"CIDFontType2\" : \"TrueType\";\n } else if (isOpenTypeFile(file)) {\n fileType = composite ? \"CIDFontType2\" : \"OpenType\";\n } else if (isType1File(file)) {\n if (composite) {\n fileType = \"CIDFontType0\";\n } else {\n fileType = type === \"MMType1\" ? \"MMType1\" : \"Type1\";\n }\n } else if (isCFFFile(file)) {\n if (composite) {\n fileType = \"CIDFontType0\";\n fileSubtype = \"CIDFontType0C\";\n } else {\n fileType = type === \"MMType1\" ? \"MMType1\" : \"Type1\";\n fileSubtype = \"Type1C\";\n }\n } else {\n (0, _util.warn)(\"getFontFileType: Unable to detect correct font file Type/Subtype.\");\n fileType = type;\n fileSubtype = subtype;\n }\n return [fileType, fileSubtype];\n}\nfunction applyStandardFontGlyphMap(map, glyphMap) {\n for (const charCode in glyphMap) {\n map[+charCode] = glyphMap[charCode];\n }\n}\nfunction buildToFontChar(encoding, glyphsUnicodeMap, differences) {\n const toFontChar = [];\n let unicode;\n for (let i = 0, ii = encoding.length; i < ii; i++) {\n unicode = (0, _unicode.getUnicodeForGlyph)(encoding[i], glyphsUnicodeMap);\n if (unicode !== -1) {\n toFontChar[i] = unicode;\n }\n }\n for (const charCode in differences) {\n unicode = (0, _unicode.getUnicodeForGlyph)(differences[charCode], glyphsUnicodeMap);\n if (unicode !== -1) {\n toFontChar[+charCode] = unicode;\n }\n }\n return toFontChar;\n}\nfunction isMacNameRecord(r) {\n return r.platform === 1 && r.encoding === 0 && r.language === 0;\n}\nfunction isWinNameRecord(r) {\n return r.platform === 3 && r.encoding === 1 && r.language === 0x409;\n}\nfunction convertCidString(charCode, cid, shouldThrow = false) {\n switch (cid.length) {\n case 1:\n return cid.charCodeAt(0);\n case 2:\n return cid.charCodeAt(0) << 8 | cid.charCodeAt(1);\n }\n const msg = `Unsupported CID string (charCode ${charCode}): \"${cid}\".`;\n if (shouldThrow) {\n throw new _util.FormatError(msg);\n }\n (0, _util.warn)(msg);\n return cid;\n}\nfunction adjustMapping(charCodeToGlyphId, hasGlyph, newGlyphZeroId, toUnicode) {\n const newMap = Object.create(null);\n const toUnicodeExtraMap = new Map();\n const toFontChar = [];\n const usedGlyphIds = new Set();\n let privateUseAreaIndex = 0;\n const privateUseOffetStart = PRIVATE_USE_AREAS[privateUseAreaIndex][0];\n let nextAvailableFontCharCode = privateUseOffetStart;\n let privateUseOffetEnd = PRIVATE_USE_AREAS[privateUseAreaIndex][1];\n const isInPrivateArea = code => PRIVATE_USE_AREAS[0][0] <= code && code <= PRIVATE_USE_AREAS[0][1] || PRIVATE_USE_AREAS[1][0] <= code && code <= PRIVATE_USE_AREAS[1][1];\n for (let originalCharCode in charCodeToGlyphId) {\n originalCharCode |= 0;\n let glyphId = charCodeToGlyphId[originalCharCode];\n if (!hasGlyph(glyphId)) {\n continue;\n }\n if (nextAvailableFontCharCode > privateUseOffetEnd) {\n privateUseAreaIndex++;\n if (privateUseAreaIndex >= PRIVATE_USE_AREAS.length) {\n (0, _util.warn)(\"Ran out of space in font private use area.\");\n break;\n }\n nextAvailableFontCharCode = PRIVATE_USE_AREAS[privateUseAreaIndex][0];\n privateUseOffetEnd = PRIVATE_USE_AREAS[privateUseAreaIndex][1];\n }\n const fontCharCode = nextAvailableFontCharCode++;\n if (glyphId === 0) {\n glyphId = newGlyphZeroId;\n }\n let unicode = toUnicode.get(originalCharCode);\n if (typeof unicode === \"string\") {\n unicode = unicode.codePointAt(0);\n }\n if (unicode && !isInPrivateArea(unicode) && !usedGlyphIds.has(glyphId)) {\n toUnicodeExtraMap.set(unicode, glyphId);\n usedGlyphIds.add(glyphId);\n }\n newMap[fontCharCode] = glyphId;\n toFontChar[originalCharCode] = fontCharCode;\n }\n return {\n toFontChar,\n charCodeToGlyphId: newMap,\n toUnicodeExtraMap,\n nextAvailableFontCharCode\n };\n}\nfunction getRanges(glyphs, toUnicodeExtraMap, numGlyphs) {\n const codes = [];\n for (const charCode in glyphs) {\n if (glyphs[charCode] >= numGlyphs) {\n continue;\n }\n codes.push({\n fontCharCode: charCode | 0,\n glyphId: glyphs[charCode]\n });\n }\n if (toUnicodeExtraMap) {\n for (const [unicode, glyphId] of toUnicodeExtraMap) {\n if (glyphId >= numGlyphs) {\n continue;\n }\n codes.push({\n fontCharCode: unicode,\n glyphId\n });\n }\n }\n if (codes.length === 0) {\n codes.push({\n fontCharCode: 0,\n glyphId: 0\n });\n }\n codes.sort(function fontGetRangesSort(a, b) {\n return a.fontCharCode - b.fontCharCode;\n });\n const ranges = [];\n const length = codes.length;\n for (let n = 0; n < length;) {\n const start = codes[n].fontCharCode;\n const codeIndices = [codes[n].glyphId];\n ++n;\n let end = start;\n while (n < length && end + 1 === codes[n].fontCharCode) {\n codeIndices.push(codes[n].glyphId);\n ++end;\n ++n;\n if (end === 0xffff) {\n break;\n }\n }\n ranges.push([start, end, codeIndices]);\n }\n return ranges;\n}\nfunction createCmapTable(glyphs, toUnicodeExtraMap, numGlyphs) {\n const ranges = getRanges(glyphs, toUnicodeExtraMap, numGlyphs);\n const numTables = ranges.at(-1)[1] > 0xffff ? 2 : 1;\n let cmap = \"\\x00\\x00\" + string16(numTables) + \"\\x00\\x03\" + \"\\x00\\x01\" + (0, _util.string32)(4 + numTables * 8);\n let i, ii, j, jj;\n for (i = ranges.length - 1; i >= 0; --i) {\n if (ranges[i][0] <= 0xffff) {\n break;\n }\n }\n const bmpLength = i + 1;\n if (ranges[i][0] < 0xffff && ranges[i][1] === 0xffff) {\n ranges[i][1] = 0xfffe;\n }\n const trailingRangesCount = ranges[i][1] < 0xffff ? 1 : 0;\n const segCount = bmpLength + trailingRangesCount;\n const searchParams = _opentype_file_builder.OpenTypeFileBuilder.getSearchParams(segCount, 2);\n let startCount = \"\";\n let endCount = \"\";\n let idDeltas = \"\";\n let idRangeOffsets = \"\";\n let glyphsIds = \"\";\n let bias = 0;\n let range, start, end, codes;\n for (i = 0, ii = bmpLength; i < ii; i++) {\n range = ranges[i];\n start = range[0];\n end = range[1];\n startCount += string16(start);\n endCount += string16(end);\n codes = range[2];\n let contiguous = true;\n for (j = 1, jj = codes.length; j < jj; ++j) {\n if (codes[j] !== codes[j - 1] + 1) {\n contiguous = false;\n break;\n }\n }\n if (!contiguous) {\n const offset = (segCount - i) * 2 + bias * 2;\n bias += end - start + 1;\n idDeltas += string16(0);\n idRangeOffsets += string16(offset);\n for (j = 0, jj = codes.length; j < jj; ++j) {\n glyphsIds += string16(codes[j]);\n }\n } else {\n const startCode = codes[0];\n idDeltas += string16(startCode - start & 0xffff);\n idRangeOffsets += string16(0);\n }\n }\n if (trailingRangesCount > 0) {\n endCount += \"\\xFF\\xFF\";\n startCount += \"\\xFF\\xFF\";\n idDeltas += \"\\x00\\x01\";\n idRangeOffsets += \"\\x00\\x00\";\n }\n const format314 = \"\\x00\\x00\" + string16(2 * segCount) + string16(searchParams.range) + string16(searchParams.entry) + string16(searchParams.rangeShift) + endCount + \"\\x00\\x00\" + startCount + idDeltas + idRangeOffsets + glyphsIds;\n let format31012 = \"\";\n let header31012 = \"\";\n if (numTables > 1) {\n cmap += \"\\x00\\x03\" + \"\\x00\\x0A\" + (0, _util.string32)(4 + numTables * 8 + 4 + format314.length);\n format31012 = \"\";\n for (i = 0, ii = ranges.length; i < ii; i++) {\n range = ranges[i];\n start = range[0];\n codes = range[2];\n let code = codes[0];\n for (j = 1, jj = codes.length; j < jj; ++j) {\n if (codes[j] !== codes[j - 1] + 1) {\n end = range[0] + j - 1;\n format31012 += (0, _util.string32)(start) + (0, _util.string32)(end) + (0, _util.string32)(code);\n start = end + 1;\n code = codes[j];\n }\n }\n format31012 += (0, _util.string32)(start) + (0, _util.string32)(range[1]) + (0, _util.string32)(code);\n }\n header31012 = \"\\x00\\x0C\" + \"\\x00\\x00\" + (0, _util.string32)(format31012.length + 16) + \"\\x00\\x00\\x00\\x00\" + (0, _util.string32)(format31012.length / 12);\n }\n return cmap + \"\\x00\\x04\" + string16(format314.length + 4) + format314 + header31012 + format31012;\n}\nfunction validateOS2Table(os2, file) {\n file.pos = (file.start || 0) + os2.offset;\n const version = file.getUint16();\n file.skip(60);\n const selection = file.getUint16();\n if (version < 4 && selection & 0x0300) {\n return false;\n }\n const firstChar = file.getUint16();\n const lastChar = file.getUint16();\n if (firstChar > lastChar) {\n return false;\n }\n file.skip(6);\n const usWinAscent = file.getUint16();\n if (usWinAscent === 0) {\n return false;\n }\n os2.data[8] = os2.data[9] = 0;\n return true;\n}\nfunction createOS2Table(properties, charstrings, override) {\n override ||= {\n unitsPerEm: 0,\n yMax: 0,\n yMin: 0,\n ascent: 0,\n descent: 0\n };\n let ulUnicodeRange1 = 0;\n let ulUnicodeRange2 = 0;\n let ulUnicodeRange3 = 0;\n let ulUnicodeRange4 = 0;\n let firstCharIndex = null;\n let lastCharIndex = 0;\n let position = -1;\n if (charstrings) {\n for (let code in charstrings) {\n code |= 0;\n if (firstCharIndex > code || !firstCharIndex) {\n firstCharIndex = code;\n }\n if (lastCharIndex < code) {\n lastCharIndex = code;\n }\n position = (0, _unicode.getUnicodeRangeFor)(code, position);\n if (position < 32) {\n ulUnicodeRange1 |= 1 << position;\n } else if (position < 64) {\n ulUnicodeRange2 |= 1 << position - 32;\n } else if (position < 96) {\n ulUnicodeRange3 |= 1 << position - 64;\n } else if (position < 123) {\n ulUnicodeRange4 |= 1 << position - 96;\n } else {\n throw new _util.FormatError(\"Unicode ranges Bits > 123 are reserved for internal usage\");\n }\n }\n if (lastCharIndex > 0xffff) {\n lastCharIndex = 0xffff;\n }\n } else {\n firstCharIndex = 0;\n lastCharIndex = 255;\n }\n const bbox = properties.bbox || [0, 0, 0, 0];\n const unitsPerEm = override.unitsPerEm || 1 / (properties.fontMatrix || _util.FONT_IDENTITY_MATRIX)[0];\n const scale = properties.ascentScaled ? 1.0 : unitsPerEm / PDF_GLYPH_SPACE_UNITS;\n const typoAscent = override.ascent || Math.round(scale * (properties.ascent || bbox[3]));\n let typoDescent = override.descent || Math.round(scale * (properties.descent || bbox[1]));\n if (typoDescent > 0 && properties.descent > 0 && bbox[1] < 0) {\n typoDescent = -typoDescent;\n }\n const winAscent = override.yMax || typoAscent;\n const winDescent = -override.yMin || -typoDescent;\n return \"\\x00\\x03\" + \"\\x02\\x24\" + \"\\x01\\xF4\" + \"\\x00\\x05\" + \"\\x00\\x00\" + \"\\x02\\x8A\" + \"\\x02\\xBB\" + \"\\x00\\x00\" + \"\\x00\\x8C\" + \"\\x02\\x8A\" + \"\\x02\\xBB\" + \"\\x00\\x00\" + \"\\x01\\xDF\" + \"\\x00\\x31\" + \"\\x01\\x02\" + \"\\x00\\x00\" + \"\\x00\\x00\\x06\" + String.fromCharCode(properties.fixedPitch ? 0x09 : 0x00) + \"\\x00\\x00\\x00\\x00\\x00\\x00\" + (0, _util.string32)(ulUnicodeRange1) + (0, _util.string32)(ulUnicodeRange2) + (0, _util.string32)(ulUnicodeRange3) + (0, _util.string32)(ulUnicodeRange4) + \"\\x2A\\x32\\x31\\x2A\" + string16(properties.italicAngle ? 1 : 0) + string16(firstCharIndex || properties.firstChar) + string16(lastCharIndex || properties.lastChar) + string16(typoAscent) + string16(typoDescent) + \"\\x00\\x64\" + string16(winAscent) + string16(winDescent) + \"\\x00\\x00\\x00\\x00\" + \"\\x00\\x00\\x00\\x00\" + string16(properties.xHeight) + string16(properties.capHeight) + string16(0) + string16(firstCharIndex || properties.firstChar) + \"\\x00\\x03\";\n}\nfunction createPostTable(properties) {\n const angle = Math.floor(properties.italicAngle * 2 ** 16);\n return \"\\x00\\x03\\x00\\x00\" + (0, _util.string32)(angle) + \"\\x00\\x00\" + \"\\x00\\x00\" + (0, _util.string32)(properties.fixedPitch ? 1 : 0) + \"\\x00\\x00\\x00\\x00\" + \"\\x00\\x00\\x00\\x00\" + \"\\x00\\x00\\x00\\x00\" + \"\\x00\\x00\\x00\\x00\";\n}\nfunction createPostscriptName(name) {\n return name.replaceAll(/[^\\x21-\\x7E]|[[\\](){}<>/%]/g, \"\").slice(0, 63);\n}\nfunction createNameTable(name, proto) {\n if (!proto) {\n proto = [[], []];\n }\n const strings = [proto[0][0] || \"Original licence\", proto[0][1] || name, proto[0][2] || \"Unknown\", proto[0][3] || \"uniqueID\", proto[0][4] || name, proto[0][5] || \"Version 0.11\", proto[0][6] || createPostscriptName(name), proto[0][7] || \"Unknown\", proto[0][8] || \"Unknown\", proto[0][9] || \"Unknown\"];\n const stringsUnicode = [];\n let i, ii, j, jj, str;\n for (i = 0, ii = strings.length; i < ii; i++) {\n str = proto[1][i] || strings[i];\n const strBufUnicode = [];\n for (j = 0, jj = str.length; j < jj; j++) {\n strBufUnicode.push(string16(str.charCodeAt(j)));\n }\n stringsUnicode.push(strBufUnicode.join(\"\"));\n }\n const names = [strings, stringsUnicode];\n const platforms = [\"\\x00\\x01\", \"\\x00\\x03\"];\n const encodings = [\"\\x00\\x00\", \"\\x00\\x01\"];\n const languages = [\"\\x00\\x00\", \"\\x04\\x09\"];\n const namesRecordCount = strings.length * platforms.length;\n let nameTable = \"\\x00\\x00\" + string16(namesRecordCount) + string16(namesRecordCount * 12 + 6);\n let strOffset = 0;\n for (i = 0, ii = platforms.length; i < ii; i++) {\n const strs = names[i];\n for (j = 0, jj = strs.length; j < jj; j++) {\n str = strs[j];\n const nameRecord = platforms[i] + encodings[i] + languages[i] + string16(j) + string16(str.length) + string16(strOffset);\n nameTable += nameRecord;\n strOffset += str.length;\n }\n }\n nameTable += strings.join(\"\") + stringsUnicode.join(\"\");\n return nameTable;\n}\nclass Font {\n constructor(name, file, properties) {\n this.name = name;\n this.psName = null;\n this.mimetype = null;\n this.disableFontFace = false;\n this.loadedName = properties.loadedName;\n this.isType3Font = properties.isType3Font;\n this.missingFile = false;\n this.cssFontInfo = properties.cssFontInfo;\n this._charsCache = Object.create(null);\n this._glyphCache = Object.create(null);\n let isSerifFont = !!(properties.flags & _fonts_utils.FontFlags.Serif);\n if (!isSerifFont && !properties.isSimulatedFlags) {\n const baseName = name.replaceAll(/[,_]/g, \"-\").split(\"-\")[0],\n serifFonts = (0, _standard_fonts.getSerifFonts)();\n for (const namePart of baseName.split(\"+\")) {\n if (serifFonts[namePart]) {\n isSerifFont = true;\n break;\n }\n }\n }\n this.isSerifFont = isSerifFont;\n this.isSymbolicFont = !!(properties.flags & _fonts_utils.FontFlags.Symbolic);\n this.isMonospace = !!(properties.flags & _fonts_utils.FontFlags.FixedPitch);\n let {\n type,\n subtype\n } = properties;\n this.type = type;\n this.subtype = subtype;\n this.systemFontInfo = properties.systemFontInfo;\n const matches = name.match(/^InvalidPDFjsFont_(.*)_\\d+$/);\n this.isInvalidPDFjsFont = !!matches;\n if (this.isInvalidPDFjsFont) {\n this.fallbackName = matches[1];\n } else if (this.isMonospace) {\n this.fallbackName = \"monospace\";\n } else if (this.isSerifFont) {\n this.fallbackName = \"serif\";\n } else {\n this.fallbackName = \"sans-serif\";\n }\n if (this.systemFontInfo?.guessFallback) {\n this.systemFontInfo.guessFallback = false;\n this.systemFontInfo.css += `,${this.fallbackName}`;\n }\n this.differences = properties.differences;\n this.widths = properties.widths;\n this.defaultWidth = properties.defaultWidth;\n this.composite = properties.composite;\n this.cMap = properties.cMap;\n this.capHeight = properties.capHeight / PDF_GLYPH_SPACE_UNITS;\n this.ascent = properties.ascent / PDF_GLYPH_SPACE_UNITS;\n this.descent = properties.descent / PDF_GLYPH_SPACE_UNITS;\n this.lineHeight = this.ascent - this.descent;\n this.fontMatrix = properties.fontMatrix;\n this.bbox = properties.bbox;\n this.defaultEncoding = properties.defaultEncoding;\n this.toUnicode = properties.toUnicode;\n this.toFontChar = [];\n if (properties.type === \"Type3\") {\n for (let charCode = 0; charCode < 256; charCode++) {\n this.toFontChar[charCode] = this.differences[charCode] || properties.defaultEncoding[charCode];\n }\n return;\n }\n this.cidEncoding = properties.cidEncoding || \"\";\n this.vertical = !!properties.vertical;\n if (this.vertical) {\n this.vmetrics = properties.vmetrics;\n this.defaultVMetrics = properties.defaultVMetrics;\n }\n if (!file || file.isEmpty) {\n if (file) {\n (0, _util.warn)('Font file is empty in \"' + name + '\" (' + this.loadedName + \")\");\n }\n this.fallbackToSystemFont(properties);\n return;\n }\n [type, subtype] = getFontFileType(file, properties);\n if (type !== this.type || subtype !== this.subtype) {\n (0, _util.info)(\"Inconsistent font file Type/SubType, expected: \" + `${this.type}/${this.subtype} but found: ${type}/${subtype}.`);\n }\n let data;\n try {\n switch (type) {\n case \"MMType1\":\n (0, _util.info)(\"MMType1 font (\" + name + \"), falling back to Type1.\");\n case \"Type1\":\n case \"CIDFontType0\":\n this.mimetype = \"font/opentype\";\n const cff = subtype === \"Type1C\" || subtype === \"CIDFontType0C\" ? new _cff_font.CFFFont(file, properties) : new _type1_font.Type1Font(name, file, properties);\n adjustWidths(properties);\n data = this.convert(name, cff, properties);\n break;\n case \"OpenType\":\n case \"TrueType\":\n case \"CIDFontType2\":\n this.mimetype = \"font/opentype\";\n data = this.checkAndRepair(name, file, properties);\n if (this.isOpenType) {\n adjustWidths(properties);\n type = \"OpenType\";\n }\n break;\n default:\n throw new _util.FormatError(`Font ${type} is not supported`);\n }\n } catch (e) {\n (0, _util.warn)(e);\n this.fallbackToSystemFont(properties);\n return;\n }\n amendFallbackToUnicode(properties);\n this.data = data;\n this.type = type;\n this.subtype = subtype;\n this.fontMatrix = properties.fontMatrix;\n this.widths = properties.widths;\n this.defaultWidth = properties.defaultWidth;\n this.toUnicode = properties.toUnicode;\n this.seacMap = properties.seacMap;\n }\n get renderer() {\n const renderer = _font_renderer.FontRendererFactory.create(this, _fonts_utils.SEAC_ANALYSIS_ENABLED);\n return (0, _util.shadow)(this, \"renderer\", renderer);\n }\n exportData(extraProperties = false) {\n const exportDataProperties = extraProperties ? [...EXPORT_DATA_PROPERTIES, ...EXPORT_DATA_EXTRA_PROPERTIES] : EXPORT_DATA_PROPERTIES;\n const data = Object.create(null);\n let property, value;\n for (property of exportDataProperties) {\n value = this[property];\n if (value !== undefined) {\n data[property] = value;\n }\n }\n return data;\n }\n fallbackToSystemFont(properties) {\n this.missingFile = true;\n const {\n name,\n type\n } = this;\n let fontName = (0, _fonts_utils.normalizeFontName)(name);\n const stdFontMap = (0, _standard_fonts.getStdFontMap)(),\n nonStdFontMap = (0, _standard_fonts.getNonStdFontMap)();\n const isStandardFont = !!stdFontMap[fontName];\n const isMappedToStandardFont = !!(nonStdFontMap[fontName] && stdFontMap[nonStdFontMap[fontName]]);\n fontName = stdFontMap[fontName] || nonStdFontMap[fontName] || fontName;\n const fontBasicMetricsMap = (0, _metrics.getFontBasicMetrics)();\n const metrics = fontBasicMetricsMap[fontName];\n if (metrics) {\n if (isNaN(this.ascent)) {\n this.ascent = metrics.ascent / PDF_GLYPH_SPACE_UNITS;\n }\n if (isNaN(this.descent)) {\n this.descent = metrics.descent / PDF_GLYPH_SPACE_UNITS;\n }\n if (isNaN(this.capHeight)) {\n this.capHeight = metrics.capHeight / PDF_GLYPH_SPACE_UNITS;\n }\n }\n this.bold = /bold/gi.test(fontName);\n this.italic = /oblique|italic/gi.test(fontName);\n this.black = /Black/g.test(name);\n const isNarrow = /Narrow/g.test(name);\n this.remeasure = (!isStandardFont || isNarrow) && Object.keys(this.widths).length > 0;\n if ((isStandardFont || isMappedToStandardFont) && type === \"CIDFontType2\" && this.cidEncoding.startsWith(\"Identity-\")) {\n const cidToGidMap = properties.cidToGidMap;\n const map = [];\n applyStandardFontGlyphMap(map, (0, _standard_fonts.getGlyphMapForStandardFonts)());\n if (/Arial-?Black/i.test(name)) {\n applyStandardFontGlyphMap(map, (0, _standard_fonts.getSupplementalGlyphMapForArialBlack)());\n } else if (/Calibri/i.test(name)) {\n applyStandardFontGlyphMap(map, (0, _standard_fonts.getSupplementalGlyphMapForCalibri)());\n }\n if (cidToGidMap) {\n for (const charCode in map) {\n const cid = map[charCode];\n if (cidToGidMap[cid] !== undefined) {\n map[+charCode] = cidToGidMap[cid];\n }\n }\n if (cidToGidMap.length !== this.toUnicode.length && properties.hasIncludedToUnicodeMap && this.toUnicode instanceof _to_unicode_map.IdentityToUnicodeMap) {\n this.toUnicode.forEach(function (charCode, unicodeCharCode) {\n const cid = map[charCode];\n if (cidToGidMap[cid] === undefined) {\n map[+charCode] = unicodeCharCode;\n }\n });\n }\n }\n if (!(this.toUnicode instanceof _to_unicode_map.IdentityToUnicodeMap)) {\n this.toUnicode.forEach(function (charCode, unicodeCharCode) {\n map[+charCode] = unicodeCharCode;\n });\n }\n this.toFontChar = map;\n this.toUnicode = new _to_unicode_map.ToUnicodeMap(map);\n } else if (/Symbol/i.test(fontName)) {\n this.toFontChar = buildToFontChar(_encodings.SymbolSetEncoding, (0, _glyphlist.getGlyphsUnicode)(), this.differences);\n } else if (/Dingbats/i.test(fontName)) {\n this.toFontChar = buildToFontChar(_encodings.ZapfDingbatsEncoding, (0, _glyphlist.getDingbatsGlyphsUnicode)(), this.differences);\n } else if (isStandardFont) {\n const map = buildToFontChar(this.defaultEncoding, (0, _glyphlist.getGlyphsUnicode)(), this.differences);\n if (type === \"CIDFontType2\" && !this.cidEncoding.startsWith(\"Identity-\") && !(this.toUnicode instanceof _to_unicode_map.IdentityToUnicodeMap)) {\n this.toUnicode.forEach(function (charCode, unicodeCharCode) {\n map[+charCode] = unicodeCharCode;\n });\n }\n this.toFontChar = map;\n } else {\n const glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();\n const map = [];\n this.toUnicode.forEach((charCode, unicodeCharCode) => {\n if (!this.composite) {\n const glyphName = this.differences[charCode] || this.defaultEncoding[charCode];\n const unicode = (0, _unicode.getUnicodeForGlyph)(glyphName, glyphsUnicodeMap);\n if (unicode !== -1) {\n unicodeCharCode = unicode;\n }\n }\n map[+charCode] = unicodeCharCode;\n });\n if (this.composite && this.toUnicode instanceof _to_unicode_map.IdentityToUnicodeMap) {\n if (/Tahoma|Verdana/i.test(name)) {\n applyStandardFontGlyphMap(map, (0, _standard_fonts.getGlyphMapForStandardFonts)());\n }\n }\n this.toFontChar = map;\n }\n amendFallbackToUnicode(properties);\n this.loadedName = fontName.split(\"-\")[0];\n }\n checkAndRepair(name, font, properties) {\n const VALID_TABLES = [\"OS/2\", \"cmap\", \"head\", \"hhea\", \"hmtx\", \"maxp\", \"name\", \"post\", \"loca\", \"glyf\", \"fpgm\", \"prep\", \"cvt \", \"CFF \"];\n function readTables(file, numTables) {\n const tables = Object.create(null);\n tables[\"OS/2\"] = null;\n tables.cmap = null;\n tables.head = null;\n tables.hhea = null;\n tables.hmtx = null;\n tables.maxp = null;\n tables.name = null;\n tables.post = null;\n for (let i = 0; i < numTables; i++) {\n const table = readTableEntry(file);\n if (!VALID_TABLES.includes(table.tag)) {\n continue;\n }\n if (table.length === 0) {\n continue;\n }\n tables[table.tag] = table;\n }\n return tables;\n }\n function readTableEntry(file) {\n const tag = file.getString(4);\n const checksum = file.getInt32() >>> 0;\n const offset = file.getInt32() >>> 0;\n const length = file.getInt32() >>> 0;\n const previousPosition = file.pos;\n file.pos = file.start || 0;\n file.skip(offset);\n const data = file.getBytes(length);\n file.pos = previousPosition;\n if (tag === \"head\") {\n data[8] = data[9] = data[10] = data[11] = 0;\n data[17] |= 0x20;\n }\n return {\n tag,\n checksum,\n length,\n offset,\n data\n };\n }\n function readOpenTypeHeader(ttf) {\n return {\n version: ttf.getString(4),\n numTables: ttf.getUint16(),\n searchRange: ttf.getUint16(),\n entrySelector: ttf.getUint16(),\n rangeShift: ttf.getUint16()\n };\n }\n function readTrueTypeCollectionHeader(ttc) {\n const ttcTag = ttc.getString(4);\n (0, _util.assert)(ttcTag === \"ttcf\", \"Must be a TrueType Collection font.\");\n const majorVersion = ttc.getUint16();\n const minorVersion = ttc.getUint16();\n const numFonts = ttc.getInt32() >>> 0;\n const offsetTable = [];\n for (let i = 0; i < numFonts; i++) {\n offsetTable.push(ttc.getInt32() >>> 0);\n }\n const header = {\n ttcTag,\n majorVersion,\n minorVersion,\n numFonts,\n offsetTable\n };\n switch (majorVersion) {\n case 1:\n return header;\n case 2:\n header.dsigTag = ttc.getInt32() >>> 0;\n header.dsigLength = ttc.getInt32() >>> 0;\n header.dsigOffset = ttc.getInt32() >>> 0;\n return header;\n }\n throw new _util.FormatError(`Invalid TrueType Collection majorVersion: ${majorVersion}.`);\n }\n function readTrueTypeCollectionData(ttc, fontName) {\n const {\n numFonts,\n offsetTable\n } = readTrueTypeCollectionHeader(ttc);\n const fontNameParts = fontName.split(\"+\");\n let fallbackData;\n for (let i = 0; i < numFonts; i++) {\n ttc.pos = (ttc.start || 0) + offsetTable[i];\n const potentialHeader = readOpenTypeHeader(ttc);\n const potentialTables = readTables(ttc, potentialHeader.numTables);\n if (!potentialTables.name) {\n throw new _util.FormatError('TrueType Collection font must contain a \"name\" table.');\n }\n const [nameTable] = readNameTable(potentialTables.name);\n for (let j = 0, jj = nameTable.length; j < jj; j++) {\n for (let k = 0, kk = nameTable[j].length; k < kk; k++) {\n const nameEntry = nameTable[j][k]?.replaceAll(/\\s/g, \"\");\n if (!nameEntry) {\n continue;\n }\n if (nameEntry === fontName) {\n return {\n header: potentialHeader,\n tables: potentialTables\n };\n }\n if (fontNameParts.length < 2) {\n continue;\n }\n for (const part of fontNameParts) {\n if (nameEntry === part) {\n fallbackData = {\n name: part,\n header: potentialHeader,\n tables: potentialTables\n };\n }\n }\n }\n }\n }\n if (fallbackData) {\n (0, _util.warn)(`TrueType Collection does not contain \"${fontName}\" font, ` + `falling back to \"${fallbackData.name}\" font instead.`);\n return {\n header: fallbackData.header,\n tables: fallbackData.tables\n };\n }\n throw new _util.FormatError(`TrueType Collection does not contain \"${fontName}\" font.`);\n }\n function readCmapTable(cmap, file, isSymbolicFont, hasEncoding) {\n if (!cmap) {\n (0, _util.warn)(\"No cmap table available.\");\n return {\n platformId: -1,\n encodingId: -1,\n mappings: [],\n hasShortCmap: false\n };\n }\n let segment;\n let start = (file.start || 0) + cmap.offset;\n file.pos = start;\n file.skip(2);\n const numTables = file.getUint16();\n let potentialTable;\n let canBreak = false;\n for (let i = 0; i < numTables; i++) {\n const platformId = file.getUint16();\n const encodingId = file.getUint16();\n const offset = file.getInt32() >>> 0;\n let useTable = false;\n if (potentialTable?.platformId === platformId && potentialTable?.encodingId === encodingId) {\n continue;\n }\n if (platformId === 0 && (encodingId === 0 || encodingId === 1 || encodingId === 3)) {\n useTable = true;\n } else if (platformId === 1 && encodingId === 0) {\n useTable = true;\n } else if (platformId === 3 && encodingId === 1 && (hasEncoding || !potentialTable)) {\n useTable = true;\n if (!isSymbolicFont) {\n canBreak = true;\n }\n } else if (isSymbolicFont && platformId === 3 && encodingId === 0) {\n useTable = true;\n let correctlySorted = true;\n if (i < numTables - 1) {\n const nextBytes = file.peekBytes(2),\n nextPlatformId = int16(nextBytes[0], nextBytes[1]);\n if (nextPlatformId < platformId) {\n correctlySorted = false;\n }\n }\n if (correctlySorted) {\n canBreak = true;\n }\n }\n if (useTable) {\n potentialTable = {\n platformId,\n encodingId,\n offset\n };\n }\n if (canBreak) {\n break;\n }\n }\n if (potentialTable) {\n file.pos = start + potentialTable.offset;\n }\n if (!potentialTable || file.peekByte() === -1) {\n (0, _util.warn)(\"Could not find a preferred cmap table.\");\n return {\n platformId: -1,\n encodingId: -1,\n mappings: [],\n hasShortCmap: false\n };\n }\n const format = file.getUint16();\n let hasShortCmap = false;\n const mappings = [];\n let j, glyphId;\n if (format === 0) {\n file.skip(2 + 2);\n for (j = 0; j < 256; j++) {\n const index = file.getByte();\n if (!index) {\n continue;\n }\n mappings.push({\n charCode: j,\n glyphId: index\n });\n }\n hasShortCmap = true;\n } else if (format === 2) {\n file.skip(2 + 2);\n const subHeaderKeys = [];\n let maxSubHeaderKey = 0;\n for (let i = 0; i < 256; i++) {\n const subHeaderKey = file.getUint16() >> 3;\n subHeaderKeys.push(subHeaderKey);\n maxSubHeaderKey = Math.max(subHeaderKey, maxSubHeaderKey);\n }\n const subHeaders = [];\n for (let i = 0; i <= maxSubHeaderKey; i++) {\n subHeaders.push({\n firstCode: file.getUint16(),\n entryCount: file.getUint16(),\n idDelta: signedInt16(file.getByte(), file.getByte()),\n idRangePos: file.pos + file.getUint16()\n });\n }\n for (let i = 0; i < 256; i++) {\n if (subHeaderKeys[i] === 0) {\n file.pos = subHeaders[0].idRangePos + 2 * i;\n glyphId = file.getUint16();\n mappings.push({\n charCode: i,\n glyphId\n });\n } else {\n const s = subHeaders[subHeaderKeys[i]];\n for (j = 0; j < s.entryCount; j++) {\n const charCode = (i << 8) + j + s.firstCode;\n file.pos = s.idRangePos + 2 * j;\n glyphId = file.getUint16();\n if (glyphId !== 0) {\n glyphId = (glyphId + s.idDelta) % 65536;\n }\n mappings.push({\n charCode,\n glyphId\n });\n }\n }\n }\n } else if (format === 4) {\n file.skip(2 + 2);\n const segCount = file.getUint16() >> 1;\n file.skip(6);\n const segments = [];\n let segIndex;\n for (segIndex = 0; segIndex < segCount; segIndex++) {\n segments.push({\n end: file.getUint16()\n });\n }\n file.skip(2);\n for (segIndex = 0; segIndex < segCount; segIndex++) {\n segments[segIndex].start = file.getUint16();\n }\n for (segIndex = 0; segIndex < segCount; segIndex++) {\n segments[segIndex].delta = file.getUint16();\n }\n let offsetsCount = 0,\n offsetIndex;\n for (segIndex = 0; segIndex < segCount; segIndex++) {\n segment = segments[segIndex];\n const rangeOffset = file.getUint16();\n if (!rangeOffset) {\n segment.offsetIndex = -1;\n continue;\n }\n offsetIndex = (rangeOffset >> 1) - (segCount - segIndex);\n segment.offsetIndex = offsetIndex;\n offsetsCount = Math.max(offsetsCount, offsetIndex + segment.end - segment.start + 1);\n }\n const offsets = [];\n for (j = 0; j < offsetsCount; j++) {\n offsets.push(file.getUint16());\n }\n for (segIndex = 0; segIndex < segCount; segIndex++) {\n segment = segments[segIndex];\n start = segment.start;\n const end = segment.end;\n const delta = segment.delta;\n offsetIndex = segment.offsetIndex;\n for (j = start; j <= end; j++) {\n if (j === 0xffff) {\n continue;\n }\n glyphId = offsetIndex < 0 ? j : offsets[offsetIndex + j - start];\n glyphId = glyphId + delta & 0xffff;\n mappings.push({\n charCode: j,\n glyphId\n });\n }\n }\n } else if (format === 6) {\n file.skip(2 + 2);\n const firstCode = file.getUint16();\n const entryCount = file.getUint16();\n for (j = 0; j < entryCount; j++) {\n glyphId = file.getUint16();\n const charCode = firstCode + j;\n mappings.push({\n charCode,\n glyphId\n });\n }\n } else if (format === 12) {\n file.skip(2 + 4 + 4);\n const nGroups = file.getInt32() >>> 0;\n for (j = 0; j < nGroups; j++) {\n const startCharCode = file.getInt32() >>> 0;\n const endCharCode = file.getInt32() >>> 0;\n let glyphCode = file.getInt32() >>> 0;\n for (let charCode = startCharCode; charCode <= endCharCode; charCode++) {\n mappings.push({\n charCode,\n glyphId: glyphCode++\n });\n }\n }\n } else {\n (0, _util.warn)(\"cmap table has unsupported format: \" + format);\n return {\n platformId: -1,\n encodingId: -1,\n mappings: [],\n hasShortCmap: false\n };\n }\n mappings.sort(function (a, b) {\n return a.charCode - b.charCode;\n });\n for (let i = 1; i < mappings.length; i++) {\n if (mappings[i - 1].charCode === mappings[i].charCode) {\n mappings.splice(i, 1);\n i--;\n }\n }\n return {\n platformId: potentialTable.platformId,\n encodingId: potentialTable.encodingId,\n mappings,\n hasShortCmap\n };\n }\n function sanitizeMetrics(file, header, metrics, headTable, numGlyphs, dupFirstEntry) {\n if (!header) {\n if (metrics) {\n metrics.data = null;\n }\n return;\n }\n file.pos = (file.start || 0) + header.offset;\n file.pos += 4;\n file.pos += 2;\n file.pos += 2;\n file.pos += 2;\n file.pos += 2;\n file.pos += 2;\n file.pos += 2;\n file.pos += 2;\n file.pos += 2;\n file.pos += 2;\n const caretOffset = file.getUint16();\n file.pos += 8;\n file.pos += 2;\n let numOfMetrics = file.getUint16();\n if (caretOffset !== 0) {\n const macStyle = int16(headTable.data[44], headTable.data[45]);\n if (!(macStyle & 2)) {\n header.data[22] = 0;\n header.data[23] = 0;\n }\n }\n if (numOfMetrics > numGlyphs) {\n (0, _util.info)(`The numOfMetrics (${numOfMetrics}) should not be ` + `greater than the numGlyphs (${numGlyphs}).`);\n numOfMetrics = numGlyphs;\n header.data[34] = (numOfMetrics & 0xff00) >> 8;\n header.data[35] = numOfMetrics & 0x00ff;\n }\n const numOfSidebearings = numGlyphs - numOfMetrics;\n const numMissing = numOfSidebearings - (metrics.length - numOfMetrics * 4 >> 1);\n if (numMissing > 0) {\n const entries = new Uint8Array(metrics.length + numMissing * 2);\n entries.set(metrics.data);\n if (dupFirstEntry) {\n entries[metrics.length] = metrics.data[2];\n entries[metrics.length + 1] = metrics.data[3];\n }\n metrics.data = entries;\n }\n }\n function sanitizeGlyph(source, sourceStart, sourceEnd, dest, destStart, hintsValid) {\n const glyphProfile = {\n length: 0,\n sizeOfInstructions: 0\n };\n if (sourceStart < 0 || sourceStart >= source.length || sourceEnd > source.length || sourceEnd - sourceStart <= 12) {\n return glyphProfile;\n }\n const glyf = source.subarray(sourceStart, sourceEnd);\n const xMin = signedInt16(glyf[2], glyf[3]);\n const yMin = signedInt16(glyf[4], glyf[5]);\n const xMax = signedInt16(glyf[6], glyf[7]);\n const yMax = signedInt16(glyf[8], glyf[9]);\n if (xMin > xMax) {\n writeSignedInt16(glyf, 2, xMax);\n writeSignedInt16(glyf, 6, xMin);\n }\n if (yMin > yMax) {\n writeSignedInt16(glyf, 4, yMax);\n writeSignedInt16(glyf, 8, yMin);\n }\n const contoursCount = signedInt16(glyf[0], glyf[1]);\n if (contoursCount < 0) {\n if (contoursCount < -1) {\n return glyphProfile;\n }\n dest.set(glyf, destStart);\n glyphProfile.length = glyf.length;\n return glyphProfile;\n }\n let i,\n j = 10,\n flagsCount = 0;\n for (i = 0; i < contoursCount; i++) {\n const endPoint = glyf[j] << 8 | glyf[j + 1];\n flagsCount = endPoint + 1;\n j += 2;\n }\n const instructionsStart = j;\n const instructionsLength = glyf[j] << 8 | glyf[j + 1];\n glyphProfile.sizeOfInstructions = instructionsLength;\n j += 2 + instructionsLength;\n const instructionsEnd = j;\n let coordinatesLength = 0;\n for (i = 0; i < flagsCount; i++) {\n const flag = glyf[j++];\n if (flag & 0xc0) {\n glyf[j - 1] = flag & 0x3f;\n }\n let xLength = 2;\n if (flag & 2) {\n xLength = 1;\n } else if (flag & 16) {\n xLength = 0;\n }\n let yLength = 2;\n if (flag & 4) {\n yLength = 1;\n } else if (flag & 32) {\n yLength = 0;\n }\n const xyLength = xLength + yLength;\n coordinatesLength += xyLength;\n if (flag & 8) {\n const repeat = glyf[j++];\n if (repeat === 0) {\n glyf[j - 1] ^= 8;\n }\n i += repeat;\n coordinatesLength += repeat * xyLength;\n }\n }\n if (coordinatesLength === 0) {\n return glyphProfile;\n }\n let glyphDataLength = j + coordinatesLength;\n if (glyphDataLength > glyf.length) {\n return glyphProfile;\n }\n if (!hintsValid && instructionsLength > 0) {\n dest.set(glyf.subarray(0, instructionsStart), destStart);\n dest.set([0, 0], destStart + instructionsStart);\n dest.set(glyf.subarray(instructionsEnd, glyphDataLength), destStart + instructionsStart + 2);\n glyphDataLength -= instructionsLength;\n if (glyf.length - glyphDataLength > 3) {\n glyphDataLength = glyphDataLength + 3 & ~3;\n }\n glyphProfile.length = glyphDataLength;\n return glyphProfile;\n }\n if (glyf.length - glyphDataLength > 3) {\n glyphDataLength = glyphDataLength + 3 & ~3;\n dest.set(glyf.subarray(0, glyphDataLength), destStart);\n glyphProfile.length = glyphDataLength;\n return glyphProfile;\n }\n dest.set(glyf, destStart);\n glyphProfile.length = glyf.length;\n return glyphProfile;\n }\n function sanitizeHead(head, numGlyphs, locaLength) {\n const data = head.data;\n const version = int32(data[0], data[1], data[2], data[3]);\n if (version >> 16 !== 1) {\n (0, _util.info)(\"Attempting to fix invalid version in head table: \" + version);\n data[0] = 0;\n data[1] = 1;\n data[2] = 0;\n data[3] = 0;\n }\n const indexToLocFormat = int16(data[50], data[51]);\n if (indexToLocFormat < 0 || indexToLocFormat > 1) {\n (0, _util.info)(\"Attempting to fix invalid indexToLocFormat in head table: \" + indexToLocFormat);\n const numGlyphsPlusOne = numGlyphs + 1;\n if (locaLength === numGlyphsPlusOne << 1) {\n data[50] = 0;\n data[51] = 0;\n } else if (locaLength === numGlyphsPlusOne << 2) {\n data[50] = 0;\n data[51] = 1;\n } else {\n throw new _util.FormatError(\"Could not fix indexToLocFormat: \" + indexToLocFormat);\n }\n }\n }\n function sanitizeGlyphLocations(loca, glyf, numGlyphs, isGlyphLocationsLong, hintsValid, dupFirstEntry, maxSizeOfInstructions) {\n let itemSize, itemDecode, itemEncode;\n if (isGlyphLocationsLong) {\n itemSize = 4;\n itemDecode = function fontItemDecodeLong(data, offset) {\n return data[offset] << 24 | data[offset + 1] << 16 | data[offset + 2] << 8 | data[offset + 3];\n };\n itemEncode = function fontItemEncodeLong(data, offset, value) {\n data[offset] = value >>> 24 & 0xff;\n data[offset + 1] = value >> 16 & 0xff;\n data[offset + 2] = value >> 8 & 0xff;\n data[offset + 3] = value & 0xff;\n };\n } else {\n itemSize = 2;\n itemDecode = function fontItemDecode(data, offset) {\n return data[offset] << 9 | data[offset + 1] << 1;\n };\n itemEncode = function fontItemEncode(data, offset, value) {\n data[offset] = value >> 9 & 0xff;\n data[offset + 1] = value >> 1 & 0xff;\n };\n }\n const numGlyphsOut = dupFirstEntry ? numGlyphs + 1 : numGlyphs;\n const locaDataSize = itemSize * (1 + numGlyphsOut);\n const locaData = new Uint8Array(locaDataSize);\n locaData.set(loca.data.subarray(0, locaDataSize));\n loca.data = locaData;\n const oldGlyfData = glyf.data;\n const oldGlyfDataLength = oldGlyfData.length;\n const newGlyfData = new Uint8Array(oldGlyfDataLength);\n let i, j;\n const locaEntries = [];\n for (i = 0, j = 0; i < numGlyphs + 1; i++, j += itemSize) {\n let offset = itemDecode(locaData, j);\n if (offset > oldGlyfDataLength) {\n offset = oldGlyfDataLength;\n }\n locaEntries.push({\n index: i,\n offset,\n endOffset: 0\n });\n }\n locaEntries.sort((a, b) => {\n return a.offset - b.offset;\n });\n for (i = 0; i < numGlyphs; i++) {\n locaEntries[i].endOffset = locaEntries[i + 1].offset;\n }\n locaEntries.sort((a, b) => {\n return a.index - b.index;\n });\n for (i = 0; i < numGlyphs; i++) {\n const {\n offset,\n endOffset\n } = locaEntries[i];\n if (offset !== 0 || endOffset !== 0) {\n break;\n }\n const nextOffset = locaEntries[i + 1].offset;\n if (nextOffset === 0) {\n continue;\n }\n locaEntries[i].endOffset = nextOffset;\n break;\n }\n const missingGlyphs = Object.create(null);\n let writeOffset = 0;\n itemEncode(locaData, 0, writeOffset);\n for (i = 0, j = itemSize; i < numGlyphs; i++, j += itemSize) {\n const glyphProfile = sanitizeGlyph(oldGlyfData, locaEntries[i].offset, locaEntries[i].endOffset, newGlyfData, writeOffset, hintsValid);\n const newLength = glyphProfile.length;\n if (newLength === 0) {\n missingGlyphs[i] = true;\n }\n if (glyphProfile.sizeOfInstructions > maxSizeOfInstructions) {\n maxSizeOfInstructions = glyphProfile.sizeOfInstructions;\n }\n writeOffset += newLength;\n itemEncode(locaData, j, writeOffset);\n }\n if (writeOffset === 0) {\n const simpleGlyph = new Uint8Array([0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0]);\n for (i = 0, j = itemSize; i < numGlyphsOut; i++, j += itemSize) {\n itemEncode(locaData, j, simpleGlyph.length);\n }\n glyf.data = simpleGlyph;\n } else if (dupFirstEntry) {\n const firstEntryLength = itemDecode(locaData, itemSize);\n if (newGlyfData.length > firstEntryLength + writeOffset) {\n glyf.data = newGlyfData.subarray(0, firstEntryLength + writeOffset);\n } else {\n glyf.data = new Uint8Array(firstEntryLength + writeOffset);\n glyf.data.set(newGlyfData.subarray(0, writeOffset));\n }\n glyf.data.set(newGlyfData.subarray(0, firstEntryLength), writeOffset);\n itemEncode(loca.data, locaData.length - itemSize, writeOffset + firstEntryLength);\n } else {\n glyf.data = newGlyfData.subarray(0, writeOffset);\n }\n return {\n missingGlyphs,\n maxSizeOfInstructions\n };\n }\n function readPostScriptTable(post, propertiesObj, maxpNumGlyphs) {\n const start = (font.start || 0) + post.offset;\n font.pos = start;\n const length = post.length,\n end = start + length;\n const version = font.getInt32();\n font.skip(28);\n let glyphNames;\n let valid = true;\n let i;\n switch (version) {\n case 0x00010000:\n glyphNames = _fonts_utils.MacStandardGlyphOrdering;\n break;\n case 0x00020000:\n const numGlyphs = font.getUint16();\n if (numGlyphs !== maxpNumGlyphs) {\n valid = false;\n break;\n }\n const glyphNameIndexes = [];\n for (i = 0; i < numGlyphs; ++i) {\n const index = font.getUint16();\n if (index >= 32768) {\n valid = false;\n break;\n }\n glyphNameIndexes.push(index);\n }\n if (!valid) {\n break;\n }\n const customNames = [],\n strBuf = [];\n while (font.pos < end) {\n const stringLength = font.getByte();\n strBuf.length = stringLength;\n for (i = 0; i < stringLength; ++i) {\n strBuf[i] = String.fromCharCode(font.getByte());\n }\n customNames.push(strBuf.join(\"\"));\n }\n glyphNames = [];\n for (i = 0; i < numGlyphs; ++i) {\n const j = glyphNameIndexes[i];\n if (j < 258) {\n glyphNames.push(_fonts_utils.MacStandardGlyphOrdering[j]);\n continue;\n }\n glyphNames.push(customNames[j - 258]);\n }\n break;\n case 0x00030000:\n break;\n default:\n (0, _util.warn)(\"Unknown/unsupported post table version \" + version);\n valid = false;\n if (propertiesObj.defaultEncoding) {\n glyphNames = propertiesObj.defaultEncoding;\n }\n break;\n }\n propertiesObj.glyphNames = glyphNames;\n return valid;\n }\n function readNameTable(nameTable) {\n const start = (font.start || 0) + nameTable.offset;\n font.pos = start;\n const names = [[], []],\n records = [];\n const length = nameTable.length,\n end = start + length;\n const format = font.getUint16();\n const FORMAT_0_HEADER_LENGTH = 6;\n if (format !== 0 || length < FORMAT_0_HEADER_LENGTH) {\n return [names, records];\n }\n const numRecords = font.getUint16();\n const stringsStart = font.getUint16();\n const NAME_RECORD_LENGTH = 12;\n let i, ii;\n for (i = 0; i < numRecords && font.pos + NAME_RECORD_LENGTH <= end; i++) {\n const r = {\n platform: font.getUint16(),\n encoding: font.getUint16(),\n language: font.getUint16(),\n name: font.getUint16(),\n length: font.getUint16(),\n offset: font.getUint16()\n };\n if (isMacNameRecord(r) || isWinNameRecord(r)) {\n records.push(r);\n }\n }\n for (i = 0, ii = records.length; i < ii; i++) {\n const record = records[i];\n if (record.length <= 0) {\n continue;\n }\n const pos = start + stringsStart + record.offset;\n if (pos + record.length > end) {\n continue;\n }\n font.pos = pos;\n const nameIndex = record.name;\n if (record.encoding) {\n let str = \"\";\n for (let j = 0, jj = record.length; j < jj; j += 2) {\n str += String.fromCharCode(font.getUint16());\n }\n names[1][nameIndex] = str;\n } else {\n names[0][nameIndex] = font.getString(record.length);\n }\n }\n return [names, records];\n }\n const TTOpsStackDeltas = [0, 0, 0, 0, 0, 0, 0, 0, -2, -2, -2, -2, 0, 0, -2, -5, -1, -1, -1, -1, -1, -1, -1, -1, 0, 0, -1, 0, -1, -1, -1, -1, 1, -1, -999, 0, 1, 0, -1, -2, 0, -1, -2, -1, -1, 0, -1, -1, 0, 0, -999, -999, -1, -1, -1, -1, -2, -999, -2, -2, -999, 0, -2, -2, 0, 0, -2, 0, -2, 0, 0, 0, -2, -1, -1, 1, 1, 0, 0, -1, -1, -1, -1, -1, -1, -1, 0, 0, -1, 0, -1, -1, 0, -999, -1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2, -999, -999, -999, -999, -999, -1, -1, -2, -2, 0, 0, 0, 0, -1, -1, -999, -2, -2, 0, 0, -1, -2, -2, 0, 0, 0, -1, -1, -1, -2];\n function sanitizeTTProgram(table, ttContext) {\n let data = table.data;\n let i = 0,\n j,\n n,\n b,\n funcId,\n pc,\n lastEndf = 0,\n lastDeff = 0;\n const stack = [];\n const callstack = [];\n const functionsCalled = [];\n let tooComplexToFollowFunctions = ttContext.tooComplexToFollowFunctions;\n let inFDEF = false,\n ifLevel = 0,\n inELSE = 0;\n for (let ii = data.length; i < ii;) {\n const op = data[i++];\n if (op === 0x40) {\n n = data[i++];\n if (inFDEF || inELSE) {\n i += n;\n } else {\n for (j = 0; j < n; j++) {\n stack.push(data[i++]);\n }\n }\n } else if (op === 0x41) {\n n = data[i++];\n if (inFDEF || inELSE) {\n i += n * 2;\n } else {\n for (j = 0; j < n; j++) {\n b = data[i++];\n stack.push(b << 8 | data[i++]);\n }\n }\n } else if ((op & 0xf8) === 0xb0) {\n n = op - 0xb0 + 1;\n if (inFDEF || inELSE) {\n i += n;\n } else {\n for (j = 0; j < n; j++) {\n stack.push(data[i++]);\n }\n }\n } else if ((op & 0xf8) === 0xb8) {\n n = op - 0xb8 + 1;\n if (inFDEF || inELSE) {\n i += n * 2;\n } else {\n for (j = 0; j < n; j++) {\n b = data[i++];\n stack.push(b << 8 | data[i++]);\n }\n }\n } else if (op === 0x2b && !tooComplexToFollowFunctions) {\n if (!inFDEF && !inELSE) {\n funcId = stack.at(-1);\n if (isNaN(funcId)) {\n (0, _util.info)(\"TT: CALL empty stack (or invalid entry).\");\n } else {\n ttContext.functionsUsed[funcId] = true;\n if (funcId in ttContext.functionsStackDeltas) {\n const newStackLength = stack.length + ttContext.functionsStackDeltas[funcId];\n if (newStackLength < 0) {\n (0, _util.warn)(\"TT: CALL invalid functions stack delta.\");\n ttContext.hintsValid = false;\n return;\n }\n stack.length = newStackLength;\n } else if (funcId in ttContext.functionsDefined && !functionsCalled.includes(funcId)) {\n callstack.push({\n data,\n i,\n stackTop: stack.length - 1\n });\n functionsCalled.push(funcId);\n pc = ttContext.functionsDefined[funcId];\n if (!pc) {\n (0, _util.warn)(\"TT: CALL non-existent function\");\n ttContext.hintsValid = false;\n return;\n }\n data = pc.data;\n i = pc.i;\n }\n }\n }\n } else if (op === 0x2c && !tooComplexToFollowFunctions) {\n if (inFDEF || inELSE) {\n (0, _util.warn)(\"TT: nested FDEFs not allowed\");\n tooComplexToFollowFunctions = true;\n }\n inFDEF = true;\n lastDeff = i;\n funcId = stack.pop();\n ttContext.functionsDefined[funcId] = {\n data,\n i\n };\n } else if (op === 0x2d) {\n if (inFDEF) {\n inFDEF = false;\n lastEndf = i;\n } else {\n pc = callstack.pop();\n if (!pc) {\n (0, _util.warn)(\"TT: ENDF bad stack\");\n ttContext.hintsValid = false;\n return;\n }\n funcId = functionsCalled.pop();\n data = pc.data;\n i = pc.i;\n ttContext.functionsStackDeltas[funcId] = stack.length - pc.stackTop;\n }\n } else if (op === 0x89) {\n if (inFDEF || inELSE) {\n (0, _util.warn)(\"TT: nested IDEFs not allowed\");\n tooComplexToFollowFunctions = true;\n }\n inFDEF = true;\n lastDeff = i;\n } else if (op === 0x58) {\n ++ifLevel;\n } else if (op === 0x1b) {\n inELSE = ifLevel;\n } else if (op === 0x59) {\n if (inELSE === ifLevel) {\n inELSE = 0;\n }\n --ifLevel;\n } else if (op === 0x1c) {\n if (!inFDEF && !inELSE) {\n const offset = stack.at(-1);\n if (offset > 0) {\n i += offset - 1;\n }\n }\n }\n if (!inFDEF && !inELSE) {\n let stackDelta = 0;\n if (op <= 0x8e) {\n stackDelta = TTOpsStackDeltas[op];\n } else if (op >= 0xc0 && op <= 0xdf) {\n stackDelta = -1;\n } else if (op >= 0xe0) {\n stackDelta = -2;\n }\n if (op >= 0x71 && op <= 0x75) {\n n = stack.pop();\n if (!isNaN(n)) {\n stackDelta = -n * 2;\n }\n }\n while (stackDelta < 0 && stack.length > 0) {\n stack.pop();\n stackDelta++;\n }\n while (stackDelta > 0) {\n stack.push(NaN);\n stackDelta--;\n }\n }\n }\n ttContext.tooComplexToFollowFunctions = tooComplexToFollowFunctions;\n const content = [data];\n if (i > data.length) {\n content.push(new Uint8Array(i - data.length));\n }\n if (lastDeff > lastEndf) {\n (0, _util.warn)(\"TT: complementing a missing function tail\");\n content.push(new Uint8Array([0x22, 0x2d]));\n }\n foldTTTable(table, content);\n }\n function checkInvalidFunctions(ttContext, maxFunctionDefs) {\n if (ttContext.tooComplexToFollowFunctions) {\n return;\n }\n if (ttContext.functionsDefined.length > maxFunctionDefs) {\n (0, _util.warn)(\"TT: more functions defined than expected\");\n ttContext.hintsValid = false;\n return;\n }\n for (let j = 0, jj = ttContext.functionsUsed.length; j < jj; j++) {\n if (j > maxFunctionDefs) {\n (0, _util.warn)(\"TT: invalid function id: \" + j);\n ttContext.hintsValid = false;\n return;\n }\n if (ttContext.functionsUsed[j] && !ttContext.functionsDefined[j]) {\n (0, _util.warn)(\"TT: undefined function: \" + j);\n ttContext.hintsValid = false;\n return;\n }\n }\n }\n function foldTTTable(table, content) {\n if (content.length > 1) {\n let newLength = 0;\n let j, jj;\n for (j = 0, jj = content.length; j < jj; j++) {\n newLength += content[j].length;\n }\n newLength = newLength + 3 & ~3;\n const result = new Uint8Array(newLength);\n let pos = 0;\n for (j = 0, jj = content.length; j < jj; j++) {\n result.set(content[j], pos);\n pos += content[j].length;\n }\n table.data = result;\n table.length = newLength;\n }\n }\n function sanitizeTTPrograms(fpgm, prep, cvt, maxFunctionDefs) {\n const ttContext = {\n functionsDefined: [],\n functionsUsed: [],\n functionsStackDeltas: [],\n tooComplexToFollowFunctions: false,\n hintsValid: true\n };\n if (fpgm) {\n sanitizeTTProgram(fpgm, ttContext);\n }\n if (prep) {\n sanitizeTTProgram(prep, ttContext);\n }\n if (fpgm) {\n checkInvalidFunctions(ttContext, maxFunctionDefs);\n }\n if (cvt && cvt.length & 1) {\n const cvtData = new Uint8Array(cvt.length + 1);\n cvtData.set(cvt.data);\n cvt.data = cvtData;\n }\n return ttContext.hintsValid;\n }\n font = new _stream.Stream(new Uint8Array(font.getBytes()));\n let header, tables;\n if (isTrueTypeCollectionFile(font)) {\n const ttcData = readTrueTypeCollectionData(font, this.name);\n header = ttcData.header;\n tables = ttcData.tables;\n } else {\n header = readOpenTypeHeader(font);\n tables = readTables(font, header.numTables);\n }\n let cff, cffFile;\n const isTrueType = !tables[\"CFF \"];\n if (!isTrueType) {\n const isComposite = properties.composite && (properties.cidToGidMap?.length > 0 || !(properties.cMap instanceof _cmap.IdentityCMap));\n if (header.version === \"OTTO\" && !isComposite || !tables.head || !tables.hhea || !tables.maxp || !tables.post) {\n cffFile = new _stream.Stream(tables[\"CFF \"].data);\n cff = new _cff_font.CFFFont(cffFile, properties);\n adjustWidths(properties);\n return this.convert(name, cff, properties);\n }\n delete tables.glyf;\n delete tables.loca;\n delete tables.fpgm;\n delete tables.prep;\n delete tables[\"cvt \"];\n this.isOpenType = true;\n } else {\n if (!tables.loca) {\n throw new _util.FormatError('Required \"loca\" table is not found');\n }\n if (!tables.glyf) {\n (0, _util.warn)('Required \"glyf\" table is not found -- trying to recover.');\n tables.glyf = {\n tag: \"glyf\",\n data: new Uint8Array(0)\n };\n }\n this.isOpenType = false;\n }\n if (!tables.maxp) {\n throw new _util.FormatError('Required \"maxp\" table is not found');\n }\n font.pos = (font.start || 0) + tables.maxp.offset;\n const version = font.getInt32();\n const numGlyphs = font.getUint16();\n if (properties.scaleFactors?.length === numGlyphs && isTrueType) {\n const {\n scaleFactors\n } = properties;\n const isGlyphLocationsLong = int16(tables.head.data[50], tables.head.data[51]);\n const glyphs = new _glyf.GlyfTable({\n glyfTable: tables.glyf.data,\n isGlyphLocationsLong,\n locaTable: tables.loca.data,\n numGlyphs\n });\n glyphs.scale(scaleFactors);\n const {\n glyf,\n loca,\n isLocationLong\n } = glyphs.write();\n tables.glyf.data = glyf;\n tables.loca.data = loca;\n if (isLocationLong !== !!isGlyphLocationsLong) {\n tables.head.data[50] = 0;\n tables.head.data[51] = isLocationLong ? 1 : 0;\n }\n const metrics = tables.hmtx.data;\n for (let i = 0; i < numGlyphs; i++) {\n const j = 4 * i;\n const advanceWidth = Math.round(scaleFactors[i] * int16(metrics[j], metrics[j + 1]));\n metrics[j] = advanceWidth >> 8 & 0xff;\n metrics[j + 1] = advanceWidth & 0xff;\n const lsb = Math.round(scaleFactors[i] * signedInt16(metrics[j + 2], metrics[j + 3]));\n writeSignedInt16(metrics, j + 2, lsb);\n }\n }\n let numGlyphsOut = numGlyphs + 1;\n let dupFirstEntry = true;\n if (numGlyphsOut > 0xffff) {\n dupFirstEntry = false;\n numGlyphsOut = numGlyphs;\n (0, _util.warn)(\"Not enough space in glyfs to duplicate first glyph.\");\n }\n let maxFunctionDefs = 0;\n let maxSizeOfInstructions = 0;\n if (version >= 0x00010000 && tables.maxp.length >= 22) {\n font.pos += 8;\n const maxZones = font.getUint16();\n if (maxZones > 2) {\n tables.maxp.data[14] = 0;\n tables.maxp.data[15] = 2;\n }\n font.pos += 4;\n maxFunctionDefs = font.getUint16();\n font.pos += 4;\n maxSizeOfInstructions = font.getUint16();\n }\n tables.maxp.data[4] = numGlyphsOut >> 8;\n tables.maxp.data[5] = numGlyphsOut & 255;\n const hintsValid = sanitizeTTPrograms(tables.fpgm, tables.prep, tables[\"cvt \"], maxFunctionDefs);\n if (!hintsValid) {\n delete tables.fpgm;\n delete tables.prep;\n delete tables[\"cvt \"];\n }\n sanitizeMetrics(font, tables.hhea, tables.hmtx, tables.head, numGlyphsOut, dupFirstEntry);\n if (!tables.head) {\n throw new _util.FormatError('Required \"head\" table is not found');\n }\n sanitizeHead(tables.head, numGlyphs, isTrueType ? tables.loca.length : 0);\n let missingGlyphs = Object.create(null);\n if (isTrueType) {\n const isGlyphLocationsLong = int16(tables.head.data[50], tables.head.data[51]);\n const glyphsInfo = sanitizeGlyphLocations(tables.loca, tables.glyf, numGlyphs, isGlyphLocationsLong, hintsValid, dupFirstEntry, maxSizeOfInstructions);\n missingGlyphs = glyphsInfo.missingGlyphs;\n if (version >= 0x00010000 && tables.maxp.length >= 22) {\n tables.maxp.data[26] = glyphsInfo.maxSizeOfInstructions >> 8;\n tables.maxp.data[27] = glyphsInfo.maxSizeOfInstructions & 255;\n }\n }\n if (!tables.hhea) {\n throw new _util.FormatError('Required \"hhea\" table is not found');\n }\n if (tables.hhea.data[10] === 0 && tables.hhea.data[11] === 0) {\n tables.hhea.data[10] = 0xff;\n tables.hhea.data[11] = 0xff;\n }\n const metricsOverride = {\n unitsPerEm: int16(tables.head.data[18], tables.head.data[19]),\n yMax: signedInt16(tables.head.data[42], tables.head.data[43]),\n yMin: signedInt16(tables.head.data[38], tables.head.data[39]),\n ascent: signedInt16(tables.hhea.data[4], tables.hhea.data[5]),\n descent: signedInt16(tables.hhea.data[6], tables.hhea.data[7]),\n lineGap: signedInt16(tables.hhea.data[8], tables.hhea.data[9])\n };\n this.ascent = metricsOverride.ascent / metricsOverride.unitsPerEm;\n this.descent = metricsOverride.descent / metricsOverride.unitsPerEm;\n this.lineGap = metricsOverride.lineGap / metricsOverride.unitsPerEm;\n if (this.cssFontInfo?.lineHeight) {\n this.lineHeight = this.cssFontInfo.metrics.lineHeight;\n this.lineGap = this.cssFontInfo.metrics.lineGap;\n } else {\n this.lineHeight = this.ascent - this.descent + this.lineGap;\n }\n if (tables.post) {\n readPostScriptTable(tables.post, properties, numGlyphs);\n }\n tables.post = {\n tag: \"post\",\n data: createPostTable(properties)\n };\n const charCodeToGlyphId = [];\n function hasGlyph(glyphId) {\n return !missingGlyphs[glyphId];\n }\n if (properties.composite) {\n const cidToGidMap = properties.cidToGidMap || [];\n const isCidToGidMapEmpty = cidToGidMap.length === 0;\n properties.cMap.forEach(function (charCode, cid) {\n if (typeof cid === \"string\") {\n cid = convertCidString(charCode, cid, true);\n }\n if (cid > 0xffff) {\n throw new _util.FormatError(\"Max size of CID is 65,535\");\n }\n let glyphId = -1;\n if (isCidToGidMapEmpty) {\n glyphId = cid;\n } else if (cidToGidMap[cid] !== undefined) {\n glyphId = cidToGidMap[cid];\n }\n if (glyphId >= 0 && glyphId < numGlyphs && hasGlyph(glyphId)) {\n charCodeToGlyphId[charCode] = glyphId;\n }\n });\n } else {\n const cmapTable = readCmapTable(tables.cmap, font, this.isSymbolicFont, properties.hasEncoding);\n const cmapPlatformId = cmapTable.platformId;\n const cmapEncodingId = cmapTable.encodingId;\n const cmapMappings = cmapTable.mappings;\n let baseEncoding = [],\n forcePostTable = false;\n if (properties.hasEncoding && (properties.baseEncodingName === \"MacRomanEncoding\" || properties.baseEncodingName === \"WinAnsiEncoding\")) {\n baseEncoding = (0, _encodings.getEncoding)(properties.baseEncodingName);\n }\n if (properties.hasEncoding && !this.isSymbolicFont && (cmapPlatformId === 3 && cmapEncodingId === 1 || cmapPlatformId === 1 && cmapEncodingId === 0)) {\n const glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();\n for (let charCode = 0; charCode < 256; charCode++) {\n let glyphName;\n if (this.differences[charCode] !== undefined) {\n glyphName = this.differences[charCode];\n } else if (baseEncoding.length && baseEncoding[charCode] !== \"\") {\n glyphName = baseEncoding[charCode];\n } else {\n glyphName = _encodings.StandardEncoding[charCode];\n }\n if (!glyphName) {\n continue;\n }\n const standardGlyphName = (0, _fonts_utils.recoverGlyphName)(glyphName, glyphsUnicodeMap);\n let unicodeOrCharCode;\n if (cmapPlatformId === 3 && cmapEncodingId === 1) {\n unicodeOrCharCode = glyphsUnicodeMap[standardGlyphName];\n } else if (cmapPlatformId === 1 && cmapEncodingId === 0) {\n unicodeOrCharCode = _encodings.MacRomanEncoding.indexOf(standardGlyphName);\n }\n if (unicodeOrCharCode === undefined) {\n if (!properties.glyphNames && properties.hasIncludedToUnicodeMap && !(this.toUnicode instanceof _to_unicode_map.IdentityToUnicodeMap)) {\n const unicode = this.toUnicode.get(charCode);\n if (unicode) {\n unicodeOrCharCode = unicode.codePointAt(0);\n }\n }\n if (unicodeOrCharCode === undefined) {\n continue;\n }\n }\n for (const mapping of cmapMappings) {\n if (mapping.charCode !== unicodeOrCharCode) {\n continue;\n }\n charCodeToGlyphId[charCode] = mapping.glyphId;\n break;\n }\n }\n } else if (cmapPlatformId === 0) {\n for (const mapping of cmapMappings) {\n charCodeToGlyphId[mapping.charCode] = mapping.glyphId;\n }\n forcePostTable = true;\n } else {\n for (const mapping of cmapMappings) {\n let charCode = mapping.charCode;\n if (cmapPlatformId === 3 && charCode >= 0xf000 && charCode <= 0xf0ff) {\n charCode &= 0xff;\n }\n charCodeToGlyphId[charCode] = mapping.glyphId;\n }\n }\n if (properties.glyphNames && (baseEncoding.length || this.differences.length)) {\n for (let i = 0; i < 256; ++i) {\n if (!forcePostTable && charCodeToGlyphId[i] !== undefined) {\n continue;\n }\n const glyphName = this.differences[i] || baseEncoding[i];\n if (!glyphName) {\n continue;\n }\n const glyphId = properties.glyphNames.indexOf(glyphName);\n if (glyphId > 0 && hasGlyph(glyphId)) {\n charCodeToGlyphId[i] = glyphId;\n }\n }\n }\n }\n if (charCodeToGlyphId.length === 0) {\n charCodeToGlyphId[0] = 0;\n }\n let glyphZeroId = numGlyphsOut - 1;\n if (!dupFirstEntry) {\n glyphZeroId = 0;\n }\n if (!properties.cssFontInfo) {\n const newMapping = adjustMapping(charCodeToGlyphId, hasGlyph, glyphZeroId, this.toUnicode);\n this.toFontChar = newMapping.toFontChar;\n tables.cmap = {\n tag: \"cmap\",\n data: createCmapTable(newMapping.charCodeToGlyphId, newMapping.toUnicodeExtraMap, numGlyphsOut)\n };\n if (!tables[\"OS/2\"] || !validateOS2Table(tables[\"OS/2\"], font)) {\n tables[\"OS/2\"] = {\n tag: \"OS/2\",\n data: createOS2Table(properties, newMapping.charCodeToGlyphId, metricsOverride)\n };\n }\n }\n if (!isTrueType) {\n try {\n cffFile = new _stream.Stream(tables[\"CFF \"].data);\n const parser = new _cff_parser.CFFParser(cffFile, properties, _fonts_utils.SEAC_ANALYSIS_ENABLED);\n cff = parser.parse();\n cff.duplicateFirstGlyph();\n const compiler = new _cff_parser.CFFCompiler(cff);\n tables[\"CFF \"].data = compiler.compile();\n } catch {\n (0, _util.warn)(\"Failed to compile font \" + properties.loadedName);\n }\n }\n if (!tables.name) {\n tables.name = {\n tag: \"name\",\n data: createNameTable(this.name)\n };\n } else {\n const [namePrototype, nameRecords] = readNameTable(tables.name);\n tables.name.data = createNameTable(name, namePrototype);\n this.psName = namePrototype[0][6] || null;\n if (!properties.composite) {\n adjustTrueTypeToUnicode(properties, this.isSymbolicFont, nameRecords);\n }\n }\n const builder = new _opentype_file_builder.OpenTypeFileBuilder(header.version);\n for (const tableTag in tables) {\n builder.addTable(tableTag, tables[tableTag].data);\n }\n return builder.toArray();\n }\n convert(fontName, font, properties) {\n properties.fixedPitch = false;\n if (properties.builtInEncoding) {\n adjustType1ToUnicode(properties, properties.builtInEncoding);\n }\n let glyphZeroId = 1;\n if (font instanceof _cff_font.CFFFont) {\n glyphZeroId = font.numGlyphs - 1;\n }\n const mapping = font.getGlyphMapping(properties);\n let newMapping = null;\n let newCharCodeToGlyphId = mapping;\n let toUnicodeExtraMap = null;\n if (!properties.cssFontInfo) {\n newMapping = adjustMapping(mapping, font.hasGlyphId.bind(font), glyphZeroId, this.toUnicode);\n this.toFontChar = newMapping.toFontChar;\n newCharCodeToGlyphId = newMapping.charCodeToGlyphId;\n toUnicodeExtraMap = newMapping.toUnicodeExtraMap;\n }\n const numGlyphs = font.numGlyphs;\n function getCharCodes(charCodeToGlyphId, glyphId) {\n let charCodes = null;\n for (const charCode in charCodeToGlyphId) {\n if (glyphId === charCodeToGlyphId[charCode]) {\n (charCodes ||= []).push(charCode | 0);\n }\n }\n return charCodes;\n }\n function createCharCode(charCodeToGlyphId, glyphId) {\n for (const charCode in charCodeToGlyphId) {\n if (glyphId === charCodeToGlyphId[charCode]) {\n return charCode | 0;\n }\n }\n newMapping.charCodeToGlyphId[newMapping.nextAvailableFontCharCode] = glyphId;\n return newMapping.nextAvailableFontCharCode++;\n }\n const seacs = font.seacs;\n if (newMapping && _fonts_utils.SEAC_ANALYSIS_ENABLED && seacs?.length) {\n const matrix = properties.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n const charset = font.getCharset();\n const seacMap = Object.create(null);\n for (let glyphId in seacs) {\n glyphId |= 0;\n const seac = seacs[glyphId];\n const baseGlyphName = _encodings.StandardEncoding[seac[2]];\n const accentGlyphName = _encodings.StandardEncoding[seac[3]];\n const baseGlyphId = charset.indexOf(baseGlyphName);\n const accentGlyphId = charset.indexOf(accentGlyphName);\n if (baseGlyphId < 0 || accentGlyphId < 0) {\n continue;\n }\n const accentOffset = {\n x: seac[0] * matrix[0] + seac[1] * matrix[2] + matrix[4],\n y: seac[0] * matrix[1] + seac[1] * matrix[3] + matrix[5]\n };\n const charCodes = getCharCodes(mapping, glyphId);\n if (!charCodes) {\n continue;\n }\n for (const charCode of charCodes) {\n const charCodeToGlyphId = newMapping.charCodeToGlyphId;\n const baseFontCharCode = createCharCode(charCodeToGlyphId, baseGlyphId);\n const accentFontCharCode = createCharCode(charCodeToGlyphId, accentGlyphId);\n seacMap[charCode] = {\n baseFontCharCode,\n accentFontCharCode,\n accentOffset\n };\n }\n }\n properties.seacMap = seacMap;\n }\n const unitsPerEm = 1 / (properties.fontMatrix || _util.FONT_IDENTITY_MATRIX)[0];\n const builder = new _opentype_file_builder.OpenTypeFileBuilder(\"\\x4F\\x54\\x54\\x4F\");\n builder.addTable(\"CFF \", font.data);\n builder.addTable(\"OS/2\", createOS2Table(properties, newCharCodeToGlyphId));\n builder.addTable(\"cmap\", createCmapTable(newCharCodeToGlyphId, toUnicodeExtraMap, numGlyphs));\n builder.addTable(\"head\", \"\\x00\\x01\\x00\\x00\" + \"\\x00\\x00\\x10\\x00\" + \"\\x00\\x00\\x00\\x00\" + \"\\x5F\\x0F\\x3C\\xF5\" + \"\\x00\\x00\" + safeString16(unitsPerEm) + \"\\x00\\x00\\x00\\x00\\x9e\\x0b\\x7e\\x27\" + \"\\x00\\x00\\x00\\x00\\x9e\\x0b\\x7e\\x27\" + \"\\x00\\x00\" + safeString16(properties.descent) + \"\\x0F\\xFF\" + safeString16(properties.ascent) + string16(properties.italicAngle ? 2 : 0) + \"\\x00\\x11\" + \"\\x00\\x00\" + \"\\x00\\x00\" + \"\\x00\\x00\");\n builder.addTable(\"hhea\", \"\\x00\\x01\\x00\\x00\" + safeString16(properties.ascent) + safeString16(properties.descent) + \"\\x00\\x00\" + \"\\xFF\\xFF\" + \"\\x00\\x00\" + \"\\x00\\x00\" + \"\\x00\\x00\" + safeString16(properties.capHeight) + safeString16(Math.tan(properties.italicAngle) * properties.xHeight) + \"\\x00\\x00\" + \"\\x00\\x00\" + \"\\x00\\x00\" + \"\\x00\\x00\" + \"\\x00\\x00\" + \"\\x00\\x00\" + string16(numGlyphs));\n builder.addTable(\"hmtx\", function fontFieldsHmtx() {\n const charstrings = font.charstrings;\n const cffWidths = font.cff ? font.cff.widths : null;\n let hmtx = \"\\x00\\x00\\x00\\x00\";\n for (let i = 1, ii = numGlyphs; i < ii; i++) {\n let width = 0;\n if (charstrings) {\n const charstring = charstrings[i - 1];\n width = \"width\" in charstring ? charstring.width : 0;\n } else if (cffWidths) {\n width = Math.ceil(cffWidths[i] || 0);\n }\n hmtx += string16(width) + string16(0);\n }\n return hmtx;\n }());\n builder.addTable(\"maxp\", \"\\x00\\x00\\x50\\x00\" + string16(numGlyphs));\n builder.addTable(\"name\", createNameTable(fontName));\n builder.addTable(\"post\", createPostTable(properties));\n return builder.toArray();\n }\n get spaceWidth() {\n const possibleSpaceReplacements = [\"space\", \"minus\", \"one\", \"i\", \"I\"];\n let width;\n for (const glyphName of possibleSpaceReplacements) {\n if (glyphName in this.widths) {\n width = this.widths[glyphName];\n break;\n }\n const glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();\n const glyphUnicode = glyphsUnicodeMap[glyphName];\n let charcode = 0;\n if (this.composite && this.cMap.contains(glyphUnicode)) {\n charcode = this.cMap.lookup(glyphUnicode);\n if (typeof charcode === \"string\") {\n charcode = convertCidString(glyphUnicode, charcode);\n }\n }\n if (!charcode && this.toUnicode) {\n charcode = this.toUnicode.charCodeOf(glyphUnicode);\n }\n if (charcode <= 0) {\n charcode = glyphUnicode;\n }\n width = this.widths[charcode];\n if (width) {\n break;\n }\n }\n return (0, _util.shadow)(this, \"spaceWidth\", width || this.defaultWidth);\n }\n _charToGlyph(charcode, isSpace = false) {\n let glyph = this._glyphCache[charcode];\n if (glyph?.isSpace === isSpace) {\n return glyph;\n }\n let fontCharCode, width, operatorListId;\n let widthCode = charcode;\n if (this.cMap?.contains(charcode)) {\n widthCode = this.cMap.lookup(charcode);\n if (typeof widthCode === \"string\") {\n widthCode = convertCidString(charcode, widthCode);\n }\n }\n width = this.widths[widthCode];\n if (typeof width !== \"number\") {\n width = this.defaultWidth;\n }\n const vmetric = this.vmetrics?.[widthCode];\n let unicode = this.toUnicode.get(charcode) || charcode;\n if (typeof unicode === \"number\") {\n unicode = String.fromCharCode(unicode);\n }\n let isInFont = this.toFontChar[charcode] !== undefined;\n fontCharCode = this.toFontChar[charcode] || charcode;\n if (this.missingFile) {\n const glyphName = this.differences[charcode] || this.defaultEncoding[charcode];\n if ((glyphName === \".notdef\" || glyphName === \"\") && this.type === \"Type1\") {\n fontCharCode = 0x20;\n }\n fontCharCode = (0, _unicode.mapSpecialUnicodeValues)(fontCharCode);\n }\n if (this.isType3Font) {\n operatorListId = fontCharCode;\n }\n let accent = null;\n if (this.seacMap?.[charcode]) {\n isInFont = true;\n const seac = this.seacMap[charcode];\n fontCharCode = seac.baseFontCharCode;\n accent = {\n fontChar: String.fromCodePoint(seac.accentFontCharCode),\n offset: seac.accentOffset\n };\n }\n let fontChar = \"\";\n if (typeof fontCharCode === \"number\") {\n if (fontCharCode <= 0x10ffff) {\n fontChar = String.fromCodePoint(fontCharCode);\n } else {\n (0, _util.warn)(`charToGlyph - invalid fontCharCode: ${fontCharCode}`);\n }\n }\n glyph = new Glyph(charcode, fontChar, unicode, accent, width, vmetric, operatorListId, isSpace, isInFont);\n return this._glyphCache[charcode] = glyph;\n }\n charsToGlyphs(chars) {\n let glyphs = this._charsCache[chars];\n if (glyphs) {\n return glyphs;\n }\n glyphs = [];\n if (this.cMap) {\n const c = Object.create(null),\n ii = chars.length;\n let i = 0;\n while (i < ii) {\n this.cMap.readCharCode(chars, i, c);\n const {\n charcode,\n length\n } = c;\n i += length;\n const glyph = this._charToGlyph(charcode, length === 1 && chars.charCodeAt(i - 1) === 0x20);\n glyphs.push(glyph);\n }\n } else {\n for (let i = 0, ii = chars.length; i < ii; ++i) {\n const charcode = chars.charCodeAt(i);\n const glyph = this._charToGlyph(charcode, charcode === 0x20);\n glyphs.push(glyph);\n }\n }\n return this._charsCache[chars] = glyphs;\n }\n getCharPositions(chars) {\n const positions = [];\n if (this.cMap) {\n const c = Object.create(null);\n let i = 0;\n while (i < chars.length) {\n this.cMap.readCharCode(chars, i, c);\n const length = c.length;\n positions.push([i, i + length]);\n i += length;\n }\n } else {\n for (let i = 0, ii = chars.length; i < ii; ++i) {\n positions.push([i, i + 1]);\n }\n }\n return positions;\n }\n get glyphCacheValues() {\n return Object.values(this._glyphCache);\n }\n encodeString(str) {\n const buffers = [];\n const currentBuf = [];\n const hasCurrentBufErrors = () => buffers.length % 2 === 1;\n const getCharCode = this.toUnicode instanceof _to_unicode_map.IdentityToUnicodeMap ? unicode => this.toUnicode.charCodeOf(unicode) : unicode => this.toUnicode.charCodeOf(String.fromCodePoint(unicode));\n for (let i = 0, ii = str.length; i < ii; i++) {\n const unicode = str.codePointAt(i);\n if (unicode > 0xd7ff && (unicode < 0xe000 || unicode > 0xfffd)) {\n i++;\n }\n if (this.toUnicode) {\n const charCode = getCharCode(unicode);\n if (charCode !== -1) {\n if (hasCurrentBufErrors()) {\n buffers.push(currentBuf.join(\"\"));\n currentBuf.length = 0;\n }\n const charCodeLength = this.cMap ? this.cMap.getCharCodeLength(charCode) : 1;\n for (let j = charCodeLength - 1; j >= 0; j--) {\n currentBuf.push(String.fromCharCode(charCode >> 8 * j & 0xff));\n }\n continue;\n }\n }\n if (!hasCurrentBufErrors()) {\n buffers.push(currentBuf.join(\"\"));\n currentBuf.length = 0;\n }\n currentBuf.push(String.fromCodePoint(unicode));\n }\n buffers.push(currentBuf.join(\"\"));\n return buffers;\n }\n}\nexports.Font = Font;\nclass ErrorFont {\n constructor(error) {\n this.error = error;\n this.loadedName = \"g_font_error\";\n this.missingFile = true;\n }\n charsToGlyphs() {\n return [];\n }\n encodeString(chars) {\n return [chars];\n }\n exportData(extraProperties = false) {\n return {\n error: this.error\n };\n }\n}\nexports.ErrorFont = ErrorFont;\n\n/***/ }),\n/* 35 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CFFTopDict = exports.CFFStrings = exports.CFFStandardStrings = exports.CFFPrivateDict = exports.CFFParser = exports.CFFIndex = exports.CFFHeader = exports.CFFFDSelect = exports.CFFCompiler = exports.CFFCharset = exports.CFF = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _charsets = __w_pdfjs_require__(36);\nvar _encodings = __w_pdfjs_require__(37);\nconst MAX_SUBR_NESTING = 10;\nconst CFFStandardStrings = [\".notdef\", \"space\", \"exclam\", \"quotedbl\", \"numbersign\", \"dollar\", \"percent\", \"ampersand\", \"quoteright\", \"parenleft\", \"parenright\", \"asterisk\", \"plus\", \"comma\", \"hyphen\", \"period\", \"slash\", \"zero\", \"one\", \"two\", \"three\", \"four\", \"five\", \"six\", \"seven\", \"eight\", \"nine\", \"colon\", \"semicolon\", \"less\", \"equal\", \"greater\", \"question\", \"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\", \"bracketleft\", \"backslash\", \"bracketright\", \"asciicircum\", \"underscore\", \"quoteleft\", \"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\", \"braceleft\", \"bar\", \"braceright\", \"asciitilde\", \"exclamdown\", \"cent\", \"sterling\", \"fraction\", \"yen\", \"florin\", \"section\", \"currency\", \"quotesingle\", \"quotedblleft\", \"guillemotleft\", \"guilsinglleft\", \"guilsinglright\", \"fi\", \"fl\", \"endash\", \"dagger\", \"daggerdbl\", \"periodcentered\", \"paragraph\", \"bullet\", \"quotesinglbase\", \"quotedblbase\", \"quotedblright\", \"guillemotright\", \"ellipsis\", \"perthousand\", \"questiondown\", \"grave\", \"acute\", \"circumflex\", \"tilde\", \"macron\", \"breve\", \"dotaccent\", \"dieresis\", \"ring\", \"cedilla\", \"hungarumlaut\", \"ogonek\", \"caron\", \"emdash\", \"AE\", \"ordfeminine\", \"Lslash\", \"Oslash\", \"OE\", \"ordmasculine\", \"ae\", \"dotlessi\", \"lslash\", \"oslash\", \"oe\", \"germandbls\", \"onesuperior\", \"logicalnot\", \"mu\", \"trademark\", \"Eth\", \"onehalf\", \"plusminus\", \"Thorn\", \"onequarter\", \"divide\", \"brokenbar\", \"degree\", \"thorn\", \"threequarters\", \"twosuperior\", \"registered\", \"minus\", \"eth\", \"multiply\", \"threesuperior\", \"copyright\", \"Aacute\", \"Acircumflex\", \"Adieresis\", \"Agrave\", \"Aring\", \"Atilde\", \"Ccedilla\", \"Eacute\", \"Ecircumflex\", \"Edieresis\", \"Egrave\", \"Iacute\", \"Icircumflex\", \"Idieresis\", \"Igrave\", \"Ntilde\", \"Oacute\", \"Ocircumflex\", \"Odieresis\", \"Ograve\", \"Otilde\", \"Scaron\", \"Uacute\", \"Ucircumflex\", \"Udieresis\", \"Ugrave\", \"Yacute\", \"Ydieresis\", \"Zcaron\", \"aacute\", \"acircumflex\", \"adieresis\", \"agrave\", \"aring\", \"atilde\", \"ccedilla\", \"eacute\", \"ecircumflex\", \"edieresis\", \"egrave\", \"iacute\", \"icircumflex\", \"idieresis\", \"igrave\", \"ntilde\", \"oacute\", \"ocircumflex\", \"odieresis\", \"ograve\", \"otilde\", \"scaron\", \"uacute\", \"ucircumflex\", \"udieresis\", \"ugrave\", \"yacute\", \"ydieresis\", \"zcaron\", \"exclamsmall\", \"Hungarumlautsmall\", \"dollaroldstyle\", \"dollarsuperior\", \"ampersandsmall\", \"Acutesmall\", \"parenleftsuperior\", \"parenrightsuperior\", \"twodotenleader\", \"onedotenleader\", \"zerooldstyle\", \"oneoldstyle\", \"twooldstyle\", \"threeoldstyle\", \"fouroldstyle\", \"fiveoldstyle\", \"sixoldstyle\", \"sevenoldstyle\", \"eightoldstyle\", \"nineoldstyle\", \"commasuperior\", \"threequartersemdash\", \"periodsuperior\", \"questionsmall\", \"asuperior\", \"bsuperior\", \"centsuperior\", \"dsuperior\", \"esuperior\", \"isuperior\", \"lsuperior\", \"msuperior\", \"nsuperior\", \"osuperior\", \"rsuperior\", \"ssuperior\", \"tsuperior\", \"ff\", \"ffi\", \"ffl\", \"parenleftinferior\", \"parenrightinferior\", \"Circumflexsmall\", \"hyphensuperior\", \"Gravesmall\", \"Asmall\", \"Bsmall\", \"Csmall\", \"Dsmall\", \"Esmall\", \"Fsmall\", \"Gsmall\", \"Hsmall\", \"Ismall\", \"Jsmall\", \"Ksmall\", \"Lsmall\", \"Msmall\", \"Nsmall\", \"Osmall\", \"Psmall\", \"Qsmall\", \"Rsmall\", \"Ssmall\", \"Tsmall\", \"Usmall\", \"Vsmall\", \"Wsmall\", \"Xsmall\", \"Ysmall\", \"Zsmall\", \"colonmonetary\", \"onefitted\", \"rupiah\", \"Tildesmall\", \"exclamdownsmall\", \"centoldstyle\", \"Lslashsmall\", \"Scaronsmall\", \"Zcaronsmall\", \"Dieresissmall\", \"Brevesmall\", \"Caronsmall\", \"Dotaccentsmall\", \"Macronsmall\", \"figuredash\", \"hypheninferior\", \"Ogoneksmall\", \"Ringsmall\", \"Cedillasmall\", \"questiondownsmall\", \"oneeighth\", \"threeeighths\", \"fiveeighths\", \"seveneighths\", \"onethird\", \"twothirds\", \"zerosuperior\", \"foursuperior\", \"fivesuperior\", \"sixsuperior\", \"sevensuperior\", \"eightsuperior\", \"ninesuperior\", \"zeroinferior\", \"oneinferior\", \"twoinferior\", \"threeinferior\", \"fourinferior\", \"fiveinferior\", \"sixinferior\", \"seveninferior\", \"eightinferior\", \"nineinferior\", \"centinferior\", \"dollarinferior\", \"periodinferior\", \"commainferior\", \"Agravesmall\", \"Aacutesmall\", \"Acircumflexsmall\", \"Atildesmall\", \"Adieresissmall\", \"Aringsmall\", \"AEsmall\", \"Ccedillasmall\", \"Egravesmall\", \"Eacutesmall\", \"Ecircumflexsmall\", \"Edieresissmall\", \"Igravesmall\", \"Iacutesmall\", \"Icircumflexsmall\", \"Idieresissmall\", \"Ethsmall\", \"Ntildesmall\", \"Ogravesmall\", \"Oacutesmall\", \"Ocircumflexsmall\", \"Otildesmall\", \"Odieresissmall\", \"OEsmall\", \"Oslashsmall\", \"Ugravesmall\", \"Uacutesmall\", \"Ucircumflexsmall\", \"Udieresissmall\", \"Yacutesmall\", \"Thornsmall\", \"Ydieresissmall\", \"001.000\", \"001.001\", \"001.002\", \"001.003\", \"Black\", \"Bold\", \"Book\", \"Light\", \"Medium\", \"Regular\", \"Roman\", \"Semibold\"];\nexports.CFFStandardStrings = CFFStandardStrings;\nconst NUM_STANDARD_CFF_STRINGS = 391;\nconst CharstringValidationData = [null, {\n id: \"hstem\",\n min: 2,\n stackClearing: true,\n stem: true\n}, null, {\n id: \"vstem\",\n min: 2,\n stackClearing: true,\n stem: true\n}, {\n id: \"vmoveto\",\n min: 1,\n stackClearing: true\n}, {\n id: \"rlineto\",\n min: 2,\n resetStack: true\n}, {\n id: \"hlineto\",\n min: 1,\n resetStack: true\n}, {\n id: \"vlineto\",\n min: 1,\n resetStack: true\n}, {\n id: \"rrcurveto\",\n min: 6,\n resetStack: true\n}, null, {\n id: \"callsubr\",\n min: 1,\n undefStack: true\n}, {\n id: \"return\",\n min: 0,\n undefStack: true\n}, null, null, {\n id: \"endchar\",\n min: 0,\n stackClearing: true\n}, null, null, null, {\n id: \"hstemhm\",\n min: 2,\n stackClearing: true,\n stem: true\n}, {\n id: \"hintmask\",\n min: 0,\n stackClearing: true\n}, {\n id: \"cntrmask\",\n min: 0,\n stackClearing: true\n}, {\n id: \"rmoveto\",\n min: 2,\n stackClearing: true\n}, {\n id: \"hmoveto\",\n min: 1,\n stackClearing: true\n}, {\n id: \"vstemhm\",\n min: 2,\n stackClearing: true,\n stem: true\n}, {\n id: \"rcurveline\",\n min: 8,\n resetStack: true\n}, {\n id: \"rlinecurve\",\n min: 8,\n resetStack: true\n}, {\n id: \"vvcurveto\",\n min: 4,\n resetStack: true\n}, {\n id: \"hhcurveto\",\n min: 4,\n resetStack: true\n}, null, {\n id: \"callgsubr\",\n min: 1,\n undefStack: true\n}, {\n id: \"vhcurveto\",\n min: 4,\n resetStack: true\n}, {\n id: \"hvcurveto\",\n min: 4,\n resetStack: true\n}];\nconst CharstringValidationData12 = [null, null, null, {\n id: \"and\",\n min: 2,\n stackDelta: -1\n}, {\n id: \"or\",\n min: 2,\n stackDelta: -1\n}, {\n id: \"not\",\n min: 1,\n stackDelta: 0\n}, null, null, null, {\n id: \"abs\",\n min: 1,\n stackDelta: 0\n}, {\n id: \"add\",\n min: 2,\n stackDelta: -1,\n stackFn(stack, index) {\n stack[index - 2] = stack[index - 2] + stack[index - 1];\n }\n}, {\n id: \"sub\",\n min: 2,\n stackDelta: -1,\n stackFn(stack, index) {\n stack[index - 2] = stack[index - 2] - stack[index - 1];\n }\n}, {\n id: \"div\",\n min: 2,\n stackDelta: -1,\n stackFn(stack, index) {\n stack[index - 2] = stack[index - 2] / stack[index - 1];\n }\n}, null, {\n id: \"neg\",\n min: 1,\n stackDelta: 0,\n stackFn(stack, index) {\n stack[index - 1] = -stack[index - 1];\n }\n}, {\n id: \"eq\",\n min: 2,\n stackDelta: -1\n}, null, null, {\n id: \"drop\",\n min: 1,\n stackDelta: -1\n}, null, {\n id: \"put\",\n min: 2,\n stackDelta: -2\n}, {\n id: \"get\",\n min: 1,\n stackDelta: 0\n}, {\n id: \"ifelse\",\n min: 4,\n stackDelta: -3\n}, {\n id: \"random\",\n min: 0,\n stackDelta: 1\n}, {\n id: \"mul\",\n min: 2,\n stackDelta: -1,\n stackFn(stack, index) {\n stack[index - 2] = stack[index - 2] * stack[index - 1];\n }\n}, null, {\n id: \"sqrt\",\n min: 1,\n stackDelta: 0\n}, {\n id: \"dup\",\n min: 1,\n stackDelta: 1\n}, {\n id: \"exch\",\n min: 2,\n stackDelta: 0\n}, {\n id: \"index\",\n min: 2,\n stackDelta: 0\n}, {\n id: \"roll\",\n min: 3,\n stackDelta: -2\n}, null, null, null, {\n id: \"hflex\",\n min: 7,\n resetStack: true\n}, {\n id: \"flex\",\n min: 13,\n resetStack: true\n}, {\n id: \"hflex1\",\n min: 9,\n resetStack: true\n}, {\n id: \"flex1\",\n min: 11,\n resetStack: true\n}];\nclass CFFParser {\n constructor(file, properties, seacAnalysisEnabled) {\n this.bytes = file.getBytes();\n this.properties = properties;\n this.seacAnalysisEnabled = !!seacAnalysisEnabled;\n }\n parse() {\n const properties = this.properties;\n const cff = new CFF();\n this.cff = cff;\n const header = this.parseHeader();\n const nameIndex = this.parseIndex(header.endPos);\n const topDictIndex = this.parseIndex(nameIndex.endPos);\n const stringIndex = this.parseIndex(topDictIndex.endPos);\n const globalSubrIndex = this.parseIndex(stringIndex.endPos);\n const topDictParsed = this.parseDict(topDictIndex.obj.get(0));\n const topDict = this.createDict(CFFTopDict, topDictParsed, cff.strings);\n cff.header = header.obj;\n cff.names = this.parseNameIndex(nameIndex.obj);\n cff.strings = this.parseStringIndex(stringIndex.obj);\n cff.topDict = topDict;\n cff.globalSubrIndex = globalSubrIndex.obj;\n this.parsePrivateDict(cff.topDict);\n cff.isCIDFont = topDict.hasName(\"ROS\");\n const charStringOffset = topDict.getByName(\"CharStrings\");\n const charStringIndex = this.parseIndex(charStringOffset).obj;\n const fontMatrix = topDict.getByName(\"FontMatrix\");\n if (fontMatrix) {\n properties.fontMatrix = fontMatrix;\n }\n const fontBBox = topDict.getByName(\"FontBBox\");\n if (fontBBox) {\n properties.ascent = Math.max(fontBBox[3], fontBBox[1]);\n properties.descent = Math.min(fontBBox[1], fontBBox[3]);\n properties.ascentScaled = true;\n }\n let charset, encoding;\n if (cff.isCIDFont) {\n const fdArrayIndex = this.parseIndex(topDict.getByName(\"FDArray\")).obj;\n for (let i = 0, ii = fdArrayIndex.count; i < ii; ++i) {\n const dictRaw = fdArrayIndex.get(i);\n const fontDict = this.createDict(CFFTopDict, this.parseDict(dictRaw), cff.strings);\n this.parsePrivateDict(fontDict);\n cff.fdArray.push(fontDict);\n }\n encoding = null;\n charset = this.parseCharsets(topDict.getByName(\"charset\"), charStringIndex.count, cff.strings, true);\n cff.fdSelect = this.parseFDSelect(topDict.getByName(\"FDSelect\"), charStringIndex.count);\n } else {\n charset = this.parseCharsets(topDict.getByName(\"charset\"), charStringIndex.count, cff.strings, false);\n encoding = this.parseEncoding(topDict.getByName(\"Encoding\"), properties, cff.strings, charset.charset);\n }\n cff.charset = charset;\n cff.encoding = encoding;\n const charStringsAndSeacs = this.parseCharStrings({\n charStrings: charStringIndex,\n localSubrIndex: topDict.privateDict.subrsIndex,\n globalSubrIndex: globalSubrIndex.obj,\n fdSelect: cff.fdSelect,\n fdArray: cff.fdArray,\n privateDict: topDict.privateDict\n });\n cff.charStrings = charStringsAndSeacs.charStrings;\n cff.seacs = charStringsAndSeacs.seacs;\n cff.widths = charStringsAndSeacs.widths;\n return cff;\n }\n parseHeader() {\n let bytes = this.bytes;\n const bytesLength = bytes.length;\n let offset = 0;\n while (offset < bytesLength && bytes[offset] !== 1) {\n ++offset;\n }\n if (offset >= bytesLength) {\n throw new _util.FormatError(\"Invalid CFF header\");\n }\n if (offset !== 0) {\n (0, _util.info)(\"cff data is shifted\");\n bytes = bytes.subarray(offset);\n this.bytes = bytes;\n }\n const major = bytes[0];\n const minor = bytes[1];\n const hdrSize = bytes[2];\n const offSize = bytes[3];\n const header = new CFFHeader(major, minor, hdrSize, offSize);\n return {\n obj: header,\n endPos: hdrSize\n };\n }\n parseDict(dict) {\n let pos = 0;\n function parseOperand() {\n let value = dict[pos++];\n if (value === 30) {\n return parseFloatOperand();\n } else if (value === 28) {\n value = dict[pos++];\n value = (value << 24 | dict[pos++] << 16) >> 16;\n return value;\n } else if (value === 29) {\n value = dict[pos++];\n value = value << 8 | dict[pos++];\n value = value << 8 | dict[pos++];\n value = value << 8 | dict[pos++];\n return value;\n } else if (value >= 32 && value <= 246) {\n return value - 139;\n } else if (value >= 247 && value <= 250) {\n return (value - 247) * 256 + dict[pos++] + 108;\n } else if (value >= 251 && value <= 254) {\n return -((value - 251) * 256) - dict[pos++] - 108;\n }\n (0, _util.warn)('CFFParser_parseDict: \"' + value + '\" is a reserved command.');\n return NaN;\n }\n function parseFloatOperand() {\n let str = \"\";\n const eof = 15;\n const lookup = [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\", \".\", \"E\", \"E-\", null, \"-\"];\n const length = dict.length;\n while (pos < length) {\n const b = dict[pos++];\n const b1 = b >> 4;\n const b2 = b & 15;\n if (b1 === eof) {\n break;\n }\n str += lookup[b1];\n if (b2 === eof) {\n break;\n }\n str += lookup[b2];\n }\n return parseFloat(str);\n }\n let operands = [];\n const entries = [];\n pos = 0;\n const end = dict.length;\n while (pos < end) {\n let b = dict[pos];\n if (b <= 21) {\n if (b === 12) {\n b = b << 8 | dict[++pos];\n }\n entries.push([b, operands]);\n operands = [];\n ++pos;\n } else {\n operands.push(parseOperand());\n }\n }\n return entries;\n }\n parseIndex(pos) {\n const cffIndex = new CFFIndex();\n const bytes = this.bytes;\n const count = bytes[pos++] << 8 | bytes[pos++];\n const offsets = [];\n let end = pos;\n let i, ii;\n if (count !== 0) {\n const offsetSize = bytes[pos++];\n const startPos = pos + (count + 1) * offsetSize - 1;\n for (i = 0, ii = count + 1; i < ii; ++i) {\n let offset = 0;\n for (let j = 0; j < offsetSize; ++j) {\n offset <<= 8;\n offset += bytes[pos++];\n }\n offsets.push(startPos + offset);\n }\n end = offsets[count];\n }\n for (i = 0, ii = offsets.length - 1; i < ii; ++i) {\n const offsetStart = offsets[i];\n const offsetEnd = offsets[i + 1];\n cffIndex.add(bytes.subarray(offsetStart, offsetEnd));\n }\n return {\n obj: cffIndex,\n endPos: end\n };\n }\n parseNameIndex(index) {\n const names = [];\n for (let i = 0, ii = index.count; i < ii; ++i) {\n const name = index.get(i);\n names.push((0, _util.bytesToString)(name));\n }\n return names;\n }\n parseStringIndex(index) {\n const strings = new CFFStrings();\n for (let i = 0, ii = index.count; i < ii; ++i) {\n const data = index.get(i);\n strings.add((0, _util.bytesToString)(data));\n }\n return strings;\n }\n createDict(Type, dict, strings) {\n const cffDict = new Type(strings);\n for (const [key, value] of dict) {\n cffDict.setByKey(key, value);\n }\n return cffDict;\n }\n parseCharString(state, data, localSubrIndex, globalSubrIndex) {\n if (!data || state.callDepth > MAX_SUBR_NESTING) {\n return false;\n }\n let stackSize = state.stackSize;\n const stack = state.stack;\n let length = data.length;\n for (let j = 0; j < length;) {\n const value = data[j++];\n let validationCommand = null;\n if (value === 12) {\n const q = data[j++];\n if (q === 0) {\n data[j - 2] = 139;\n data[j - 1] = 22;\n stackSize = 0;\n } else {\n validationCommand = CharstringValidationData12[q];\n }\n } else if (value === 28) {\n stack[stackSize] = (data[j] << 24 | data[j + 1] << 16) >> 16;\n j += 2;\n stackSize++;\n } else if (value === 14) {\n if (stackSize >= 4) {\n stackSize -= 4;\n if (this.seacAnalysisEnabled) {\n state.seac = stack.slice(stackSize, stackSize + 4);\n return false;\n }\n }\n validationCommand = CharstringValidationData[value];\n } else if (value >= 32 && value <= 246) {\n stack[stackSize] = value - 139;\n stackSize++;\n } else if (value >= 247 && value <= 254) {\n stack[stackSize] = value < 251 ? (value - 247 << 8) + data[j] + 108 : -(value - 251 << 8) - data[j] - 108;\n j++;\n stackSize++;\n } else if (value === 255) {\n stack[stackSize] = (data[j] << 24 | data[j + 1] << 16 | data[j + 2] << 8 | data[j + 3]) / 65536;\n j += 4;\n stackSize++;\n } else if (value === 19 || value === 20) {\n state.hints += stackSize >> 1;\n if (state.hints === 0) {\n data.copyWithin(j - 1, j, -1);\n j -= 1;\n length -= 1;\n continue;\n }\n j += state.hints + 7 >> 3;\n stackSize %= 2;\n validationCommand = CharstringValidationData[value];\n } else if (value === 10 || value === 29) {\n const subrsIndex = value === 10 ? localSubrIndex : globalSubrIndex;\n if (!subrsIndex) {\n validationCommand = CharstringValidationData[value];\n (0, _util.warn)(\"Missing subrsIndex for \" + validationCommand.id);\n return false;\n }\n let bias = 32768;\n if (subrsIndex.count < 1240) {\n bias = 107;\n } else if (subrsIndex.count < 33900) {\n bias = 1131;\n }\n const subrNumber = stack[--stackSize] + bias;\n if (subrNumber < 0 || subrNumber >= subrsIndex.count || isNaN(subrNumber)) {\n validationCommand = CharstringValidationData[value];\n (0, _util.warn)(\"Out of bounds subrIndex for \" + validationCommand.id);\n return false;\n }\n state.stackSize = stackSize;\n state.callDepth++;\n const valid = this.parseCharString(state, subrsIndex.get(subrNumber), localSubrIndex, globalSubrIndex);\n if (!valid) {\n return false;\n }\n state.callDepth--;\n stackSize = state.stackSize;\n continue;\n } else if (value === 11) {\n state.stackSize = stackSize;\n return true;\n } else if (value === 0 && j === data.length) {\n data[j - 1] = 14;\n validationCommand = CharstringValidationData[14];\n } else if (value === 9) {\n data.copyWithin(j - 1, j, -1);\n j -= 1;\n length -= 1;\n continue;\n } else {\n validationCommand = CharstringValidationData[value];\n }\n if (validationCommand) {\n if (validationCommand.stem) {\n state.hints += stackSize >> 1;\n if (value === 3 || value === 23) {\n state.hasVStems = true;\n } else if (state.hasVStems && (value === 1 || value === 18)) {\n (0, _util.warn)(\"CFF stem hints are in wrong order\");\n data[j - 1] = value === 1 ? 3 : 23;\n }\n }\n if (\"min\" in validationCommand) {\n if (!state.undefStack && stackSize < validationCommand.min) {\n (0, _util.warn)(\"Not enough parameters for \" + validationCommand.id + \"; actual: \" + stackSize + \", expected: \" + validationCommand.min);\n if (stackSize === 0) {\n data[j - 1] = 14;\n return true;\n }\n return false;\n }\n }\n if (state.firstStackClearing && validationCommand.stackClearing) {\n state.firstStackClearing = false;\n stackSize -= validationCommand.min;\n if (stackSize >= 2 && validationCommand.stem) {\n stackSize %= 2;\n } else if (stackSize > 1) {\n (0, _util.warn)(\"Found too many parameters for stack-clearing command\");\n }\n if (stackSize > 0) {\n state.width = stack[stackSize - 1];\n }\n }\n if (\"stackDelta\" in validationCommand) {\n if (\"stackFn\" in validationCommand) {\n validationCommand.stackFn(stack, stackSize);\n }\n stackSize += validationCommand.stackDelta;\n } else if (validationCommand.stackClearing) {\n stackSize = 0;\n } else if (validationCommand.resetStack) {\n stackSize = 0;\n state.undefStack = false;\n } else if (validationCommand.undefStack) {\n stackSize = 0;\n state.undefStack = true;\n state.firstStackClearing = false;\n }\n }\n }\n if (length < data.length) {\n data.fill(14, length);\n }\n state.stackSize = stackSize;\n return true;\n }\n parseCharStrings({\n charStrings,\n localSubrIndex,\n globalSubrIndex,\n fdSelect,\n fdArray,\n privateDict\n }) {\n const seacs = [];\n const widths = [];\n const count = charStrings.count;\n for (let i = 0; i < count; i++) {\n const charstring = charStrings.get(i);\n const state = {\n callDepth: 0,\n stackSize: 0,\n stack: [],\n undefStack: true,\n hints: 0,\n firstStackClearing: true,\n seac: null,\n width: null,\n hasVStems: false\n };\n let valid = true;\n let localSubrToUse = null;\n let privateDictToUse = privateDict;\n if (fdSelect && fdArray.length) {\n const fdIndex = fdSelect.getFDIndex(i);\n if (fdIndex === -1) {\n (0, _util.warn)(\"Glyph index is not in fd select.\");\n valid = false;\n }\n if (fdIndex >= fdArray.length) {\n (0, _util.warn)(\"Invalid fd index for glyph index.\");\n valid = false;\n }\n if (valid) {\n privateDictToUse = fdArray[fdIndex].privateDict;\n localSubrToUse = privateDictToUse.subrsIndex;\n }\n } else if (localSubrIndex) {\n localSubrToUse = localSubrIndex;\n }\n if (valid) {\n valid = this.parseCharString(state, charstring, localSubrToUse, globalSubrIndex);\n }\n if (state.width !== null) {\n const nominalWidth = privateDictToUse.getByName(\"nominalWidthX\");\n widths[i] = nominalWidth + state.width;\n } else {\n const defaultWidth = privateDictToUse.getByName(\"defaultWidthX\");\n widths[i] = defaultWidth;\n }\n if (state.seac !== null) {\n seacs[i] = state.seac;\n }\n if (!valid) {\n charStrings.set(i, new Uint8Array([14]));\n }\n }\n return {\n charStrings,\n seacs,\n widths\n };\n }\n emptyPrivateDictionary(parentDict) {\n const privateDict = this.createDict(CFFPrivateDict, [], parentDict.strings);\n parentDict.setByKey(18, [0, 0]);\n parentDict.privateDict = privateDict;\n }\n parsePrivateDict(parentDict) {\n if (!parentDict.hasName(\"Private\")) {\n this.emptyPrivateDictionary(parentDict);\n return;\n }\n const privateOffset = parentDict.getByName(\"Private\");\n if (!Array.isArray(privateOffset) || privateOffset.length !== 2) {\n parentDict.removeByName(\"Private\");\n return;\n }\n const size = privateOffset[0];\n const offset = privateOffset[1];\n if (size === 0 || offset >= this.bytes.length) {\n this.emptyPrivateDictionary(parentDict);\n return;\n }\n const privateDictEnd = offset + size;\n const dictData = this.bytes.subarray(offset, privateDictEnd);\n const dict = this.parseDict(dictData);\n const privateDict = this.createDict(CFFPrivateDict, dict, parentDict.strings);\n parentDict.privateDict = privateDict;\n if (privateDict.getByName(\"ExpansionFactor\") === 0) {\n privateDict.setByName(\"ExpansionFactor\", 0.06);\n }\n if (!privateDict.getByName(\"Subrs\")) {\n return;\n }\n const subrsOffset = privateDict.getByName(\"Subrs\");\n const relativeOffset = offset + subrsOffset;\n if (subrsOffset === 0 || relativeOffset >= this.bytes.length) {\n this.emptyPrivateDictionary(parentDict);\n return;\n }\n const subrsIndex = this.parseIndex(relativeOffset);\n privateDict.subrsIndex = subrsIndex.obj;\n }\n parseCharsets(pos, length, strings, cid) {\n if (pos === 0) {\n return new CFFCharset(true, CFFCharsetPredefinedTypes.ISO_ADOBE, _charsets.ISOAdobeCharset);\n } else if (pos === 1) {\n return new CFFCharset(true, CFFCharsetPredefinedTypes.EXPERT, _charsets.ExpertCharset);\n } else if (pos === 2) {\n return new CFFCharset(true, CFFCharsetPredefinedTypes.EXPERT_SUBSET, _charsets.ExpertSubsetCharset);\n }\n const bytes = this.bytes;\n const start = pos;\n const format = bytes[pos++];\n const charset = [cid ? 0 : \".notdef\"];\n let id, count, i;\n length -= 1;\n switch (format) {\n case 0:\n for (i = 0; i < length; i++) {\n id = bytes[pos++] << 8 | bytes[pos++];\n charset.push(cid ? id : strings.get(id));\n }\n break;\n case 1:\n while (charset.length <= length) {\n id = bytes[pos++] << 8 | bytes[pos++];\n count = bytes[pos++];\n for (i = 0; i <= count; i++) {\n charset.push(cid ? id++ : strings.get(id++));\n }\n }\n break;\n case 2:\n while (charset.length <= length) {\n id = bytes[pos++] << 8 | bytes[pos++];\n count = bytes[pos++] << 8 | bytes[pos++];\n for (i = 0; i <= count; i++) {\n charset.push(cid ? id++ : strings.get(id++));\n }\n }\n break;\n default:\n throw new _util.FormatError(\"Unknown charset format\");\n }\n const end = pos;\n const raw = bytes.subarray(start, end);\n return new CFFCharset(false, format, charset, raw);\n }\n parseEncoding(pos, properties, strings, charset) {\n const encoding = Object.create(null);\n const bytes = this.bytes;\n let predefined = false;\n let format, i, ii;\n let raw = null;\n function readSupplement() {\n const supplementsCount = bytes[pos++];\n for (i = 0; i < supplementsCount; i++) {\n const code = bytes[pos++];\n const sid = (bytes[pos++] << 8) + (bytes[pos++] & 0xff);\n encoding[code] = charset.indexOf(strings.get(sid));\n }\n }\n if (pos === 0 || pos === 1) {\n predefined = true;\n format = pos;\n const baseEncoding = pos ? _encodings.ExpertEncoding : _encodings.StandardEncoding;\n for (i = 0, ii = charset.length; i < ii; i++) {\n const index = baseEncoding.indexOf(charset[i]);\n if (index !== -1) {\n encoding[index] = i;\n }\n }\n } else {\n const dataStart = pos;\n format = bytes[pos++];\n switch (format & 0x7f) {\n case 0:\n const glyphsCount = bytes[pos++];\n for (i = 1; i <= glyphsCount; i++) {\n encoding[bytes[pos++]] = i;\n }\n break;\n case 1:\n const rangesCount = bytes[pos++];\n let gid = 1;\n for (i = 0; i < rangesCount; i++) {\n const start = bytes[pos++];\n const left = bytes[pos++];\n for (let j = start; j <= start + left; j++) {\n encoding[j] = gid++;\n }\n }\n break;\n default:\n throw new _util.FormatError(`Unknown encoding format: ${format} in CFF`);\n }\n const dataEnd = pos;\n if (format & 0x80) {\n bytes[dataStart] &= 0x7f;\n readSupplement();\n }\n raw = bytes.subarray(dataStart, dataEnd);\n }\n format &= 0x7f;\n return new CFFEncoding(predefined, format, encoding, raw);\n }\n parseFDSelect(pos, length) {\n const bytes = this.bytes;\n const format = bytes[pos++];\n const fdSelect = [];\n let i;\n switch (format) {\n case 0:\n for (i = 0; i < length; ++i) {\n const id = bytes[pos++];\n fdSelect.push(id);\n }\n break;\n case 3:\n const rangesCount = bytes[pos++] << 8 | bytes[pos++];\n for (i = 0; i < rangesCount; ++i) {\n let first = bytes[pos++] << 8 | bytes[pos++];\n if (i === 0 && first !== 0) {\n (0, _util.warn)(\"parseFDSelect: The first range must have a first GID of 0\" + \" -- trying to recover.\");\n first = 0;\n }\n const fdIndex = bytes[pos++];\n const next = bytes[pos] << 8 | bytes[pos + 1];\n for (let j = first; j < next; ++j) {\n fdSelect.push(fdIndex);\n }\n }\n pos += 2;\n break;\n default:\n throw new _util.FormatError(`parseFDSelect: Unknown format \"${format}\".`);\n }\n if (fdSelect.length !== length) {\n throw new _util.FormatError(\"parseFDSelect: Invalid font data.\");\n }\n return new CFFFDSelect(format, fdSelect);\n }\n}\nexports.CFFParser = CFFParser;\nclass CFF {\n constructor() {\n this.header = null;\n this.names = [];\n this.topDict = null;\n this.strings = new CFFStrings();\n this.globalSubrIndex = null;\n this.encoding = null;\n this.charset = null;\n this.charStrings = null;\n this.fdArray = [];\n this.fdSelect = null;\n this.isCIDFont = false;\n }\n duplicateFirstGlyph() {\n if (this.charStrings.count >= 65535) {\n (0, _util.warn)(\"Not enough space in charstrings to duplicate first glyph.\");\n return;\n }\n const glyphZero = this.charStrings.get(0);\n this.charStrings.add(glyphZero);\n if (this.isCIDFont) {\n this.fdSelect.fdSelect.push(this.fdSelect.fdSelect[0]);\n }\n }\n hasGlyphId(id) {\n if (id < 0 || id >= this.charStrings.count) {\n return false;\n }\n const glyph = this.charStrings.get(id);\n return glyph.length > 0;\n }\n}\nexports.CFF = CFF;\nclass CFFHeader {\n constructor(major, minor, hdrSize, offSize) {\n this.major = major;\n this.minor = minor;\n this.hdrSize = hdrSize;\n this.offSize = offSize;\n }\n}\nexports.CFFHeader = CFFHeader;\nclass CFFStrings {\n constructor() {\n this.strings = [];\n }\n get(index) {\n if (index >= 0 && index <= NUM_STANDARD_CFF_STRINGS - 1) {\n return CFFStandardStrings[index];\n }\n if (index - NUM_STANDARD_CFF_STRINGS <= this.strings.length) {\n return this.strings[index - NUM_STANDARD_CFF_STRINGS];\n }\n return CFFStandardStrings[0];\n }\n getSID(str) {\n let index = CFFStandardStrings.indexOf(str);\n if (index !== -1) {\n return index;\n }\n index = this.strings.indexOf(str);\n if (index !== -1) {\n return index + NUM_STANDARD_CFF_STRINGS;\n }\n return -1;\n }\n add(value) {\n this.strings.push(value);\n }\n get count() {\n return this.strings.length;\n }\n}\nexports.CFFStrings = CFFStrings;\nclass CFFIndex {\n constructor() {\n this.objects = [];\n this.length = 0;\n }\n add(data) {\n this.length += data.length;\n this.objects.push(data);\n }\n set(index, data) {\n this.length += data.length - this.objects[index].length;\n this.objects[index] = data;\n }\n get(index) {\n return this.objects[index];\n }\n get count() {\n return this.objects.length;\n }\n}\nexports.CFFIndex = CFFIndex;\nclass CFFDict {\n constructor(tables, strings) {\n this.keyToNameMap = tables.keyToNameMap;\n this.nameToKeyMap = tables.nameToKeyMap;\n this.defaults = tables.defaults;\n this.types = tables.types;\n this.opcodes = tables.opcodes;\n this.order = tables.order;\n this.strings = strings;\n this.values = Object.create(null);\n }\n setByKey(key, value) {\n if (!(key in this.keyToNameMap)) {\n return false;\n }\n if (value.length === 0) {\n return true;\n }\n for (const val of value) {\n if (isNaN(val)) {\n (0, _util.warn)(`Invalid CFFDict value: \"${value}\" for key \"${key}\".`);\n return true;\n }\n }\n const type = this.types[key];\n if (type === \"num\" || type === \"sid\" || type === \"offset\") {\n value = value[0];\n }\n this.values[key] = value;\n return true;\n }\n setByName(name, value) {\n if (!(name in this.nameToKeyMap)) {\n throw new _util.FormatError(`Invalid dictionary name \"${name}\"`);\n }\n this.values[this.nameToKeyMap[name]] = value;\n }\n hasName(name) {\n return this.nameToKeyMap[name] in this.values;\n }\n getByName(name) {\n if (!(name in this.nameToKeyMap)) {\n throw new _util.FormatError(`Invalid dictionary name ${name}\"`);\n }\n const key = this.nameToKeyMap[name];\n if (!(key in this.values)) {\n return this.defaults[key];\n }\n return this.values[key];\n }\n removeByName(name) {\n delete this.values[this.nameToKeyMap[name]];\n }\n static createTables(layout) {\n const tables = {\n keyToNameMap: {},\n nameToKeyMap: {},\n defaults: {},\n types: {},\n opcodes: {},\n order: []\n };\n for (const entry of layout) {\n const key = Array.isArray(entry[0]) ? (entry[0][0] << 8) + entry[0][1] : entry[0];\n tables.keyToNameMap[key] = entry[1];\n tables.nameToKeyMap[entry[1]] = key;\n tables.types[key] = entry[2];\n tables.defaults[key] = entry[3];\n tables.opcodes[key] = Array.isArray(entry[0]) ? entry[0] : [entry[0]];\n tables.order.push(key);\n }\n return tables;\n }\n}\nconst CFFTopDictLayout = [[[12, 30], \"ROS\", [\"sid\", \"sid\", \"num\"], null], [[12, 20], \"SyntheticBase\", \"num\", null], [0, \"version\", \"sid\", null], [1, \"Notice\", \"sid\", null], [[12, 0], \"Copyright\", \"sid\", null], [2, \"FullName\", \"sid\", null], [3, \"FamilyName\", \"sid\", null], [4, \"Weight\", \"sid\", null], [[12, 1], \"isFixedPitch\", \"num\", 0], [[12, 2], \"ItalicAngle\", \"num\", 0], [[12, 3], \"UnderlinePosition\", \"num\", -100], [[12, 4], \"UnderlineThickness\", \"num\", 50], [[12, 5], \"PaintType\", \"num\", 0], [[12, 6], \"CharstringType\", \"num\", 2], [[12, 7], \"FontMatrix\", [\"num\", \"num\", \"num\", \"num\", \"num\", \"num\"], [0.001, 0, 0, 0.001, 0, 0]], [13, \"UniqueID\", \"num\", null], [5, \"FontBBox\", [\"num\", \"num\", \"num\", \"num\"], [0, 0, 0, 0]], [[12, 8], \"StrokeWidth\", \"num\", 0], [14, \"XUID\", \"array\", null], [15, \"charset\", \"offset\", 0], [16, \"Encoding\", \"offset\", 0], [17, \"CharStrings\", \"offset\", 0], [18, \"Private\", [\"offset\", \"offset\"], null], [[12, 21], \"PostScript\", \"sid\", null], [[12, 22], \"BaseFontName\", \"sid\", null], [[12, 23], \"BaseFontBlend\", \"delta\", null], [[12, 31], \"CIDFontVersion\", \"num\", 0], [[12, 32], \"CIDFontRevision\", \"num\", 0], [[12, 33], \"CIDFontType\", \"num\", 0], [[12, 34], \"CIDCount\", \"num\", 8720], [[12, 35], \"UIDBase\", \"num\", null], [[12, 37], \"FDSelect\", \"offset\", null], [[12, 36], \"FDArray\", \"offset\", null], [[12, 38], \"FontName\", \"sid\", null]];\nclass CFFTopDict extends CFFDict {\n static get tables() {\n return (0, _util.shadow)(this, \"tables\", this.createTables(CFFTopDictLayout));\n }\n constructor(strings) {\n super(CFFTopDict.tables, strings);\n this.privateDict = null;\n }\n}\nexports.CFFTopDict = CFFTopDict;\nconst CFFPrivateDictLayout = [[6, \"BlueValues\", \"delta\", null], [7, \"OtherBlues\", \"delta\", null], [8, \"FamilyBlues\", \"delta\", null], [9, \"FamilyOtherBlues\", \"delta\", null], [[12, 9], \"BlueScale\", \"num\", 0.039625], [[12, 10], \"BlueShift\", \"num\", 7], [[12, 11], \"BlueFuzz\", \"num\", 1], [10, \"StdHW\", \"num\", null], [11, \"StdVW\", \"num\", null], [[12, 12], \"StemSnapH\", \"delta\", null], [[12, 13], \"StemSnapV\", \"delta\", null], [[12, 14], \"ForceBold\", \"num\", 0], [[12, 17], \"LanguageGroup\", \"num\", 0], [[12, 18], \"ExpansionFactor\", \"num\", 0.06], [[12, 19], \"initialRandomSeed\", \"num\", 0], [20, \"defaultWidthX\", \"num\", 0], [21, \"nominalWidthX\", \"num\", 0], [19, \"Subrs\", \"offset\", null]];\nclass CFFPrivateDict extends CFFDict {\n static get tables() {\n return (0, _util.shadow)(this, \"tables\", this.createTables(CFFPrivateDictLayout));\n }\n constructor(strings) {\n super(CFFPrivateDict.tables, strings);\n this.subrsIndex = null;\n }\n}\nexports.CFFPrivateDict = CFFPrivateDict;\nconst CFFCharsetPredefinedTypes = {\n ISO_ADOBE: 0,\n EXPERT: 1,\n EXPERT_SUBSET: 2\n};\nclass CFFCharset {\n constructor(predefined, format, charset, raw) {\n this.predefined = predefined;\n this.format = format;\n this.charset = charset;\n this.raw = raw;\n }\n}\nexports.CFFCharset = CFFCharset;\nclass CFFEncoding {\n constructor(predefined, format, encoding, raw) {\n this.predefined = predefined;\n this.format = format;\n this.encoding = encoding;\n this.raw = raw;\n }\n}\nclass CFFFDSelect {\n constructor(format, fdSelect) {\n this.format = format;\n this.fdSelect = fdSelect;\n }\n getFDIndex(glyphIndex) {\n if (glyphIndex < 0 || glyphIndex >= this.fdSelect.length) {\n return -1;\n }\n return this.fdSelect[glyphIndex];\n }\n}\nexports.CFFFDSelect = CFFFDSelect;\nclass CFFOffsetTracker {\n constructor() {\n this.offsets = Object.create(null);\n }\n isTracking(key) {\n return key in this.offsets;\n }\n track(key, location) {\n if (key in this.offsets) {\n throw new _util.FormatError(`Already tracking location of ${key}`);\n }\n this.offsets[key] = location;\n }\n offset(value) {\n for (const key in this.offsets) {\n this.offsets[key] += value;\n }\n }\n setEntryLocation(key, values, output) {\n if (!(key in this.offsets)) {\n throw new _util.FormatError(`Not tracking location of ${key}`);\n }\n const data = output.data;\n const dataOffset = this.offsets[key];\n const size = 5;\n for (let i = 0, ii = values.length; i < ii; ++i) {\n const offset0 = i * size + dataOffset;\n const offset1 = offset0 + 1;\n const offset2 = offset0 + 2;\n const offset3 = offset0 + 3;\n const offset4 = offset0 + 4;\n if (data[offset0] !== 0x1d || data[offset1] !== 0 || data[offset2] !== 0 || data[offset3] !== 0 || data[offset4] !== 0) {\n throw new _util.FormatError(\"writing to an offset that is not empty\");\n }\n const value = values[i];\n data[offset0] = 0x1d;\n data[offset1] = value >> 24 & 0xff;\n data[offset2] = value >> 16 & 0xff;\n data[offset3] = value >> 8 & 0xff;\n data[offset4] = value & 0xff;\n }\n }\n}\nclass CFFCompiler {\n constructor(cff) {\n this.cff = cff;\n }\n compile() {\n const cff = this.cff;\n const output = {\n data: [],\n length: 0,\n add(data) {\n try {\n this.data.push(...data);\n } catch {\n this.data = this.data.concat(data);\n }\n this.length = this.data.length;\n }\n };\n const header = this.compileHeader(cff.header);\n output.add(header);\n const nameIndex = this.compileNameIndex(cff.names);\n output.add(nameIndex);\n if (cff.isCIDFont) {\n if (cff.topDict.hasName(\"FontMatrix\")) {\n const base = cff.topDict.getByName(\"FontMatrix\");\n cff.topDict.removeByName(\"FontMatrix\");\n for (const subDict of cff.fdArray) {\n let matrix = base.slice(0);\n if (subDict.hasName(\"FontMatrix\")) {\n matrix = _util.Util.transform(matrix, subDict.getByName(\"FontMatrix\"));\n }\n subDict.setByName(\"FontMatrix\", matrix);\n }\n }\n }\n const xuid = cff.topDict.getByName(\"XUID\");\n if (xuid?.length > 16) {\n cff.topDict.removeByName(\"XUID\");\n }\n cff.topDict.setByName(\"charset\", 0);\n let compiled = this.compileTopDicts([cff.topDict], output.length, cff.isCIDFont);\n output.add(compiled.output);\n const topDictTracker = compiled.trackers[0];\n const stringIndex = this.compileStringIndex(cff.strings.strings);\n output.add(stringIndex);\n const globalSubrIndex = this.compileIndex(cff.globalSubrIndex);\n output.add(globalSubrIndex);\n if (cff.encoding && cff.topDict.hasName(\"Encoding\")) {\n if (cff.encoding.predefined) {\n topDictTracker.setEntryLocation(\"Encoding\", [cff.encoding.format], output);\n } else {\n const encoding = this.compileEncoding(cff.encoding);\n topDictTracker.setEntryLocation(\"Encoding\", [output.length], output);\n output.add(encoding);\n }\n }\n const charset = this.compileCharset(cff.charset, cff.charStrings.count, cff.strings, cff.isCIDFont);\n topDictTracker.setEntryLocation(\"charset\", [output.length], output);\n output.add(charset);\n const charStrings = this.compileCharStrings(cff.charStrings);\n topDictTracker.setEntryLocation(\"CharStrings\", [output.length], output);\n output.add(charStrings);\n if (cff.isCIDFont) {\n topDictTracker.setEntryLocation(\"FDSelect\", [output.length], output);\n const fdSelect = this.compileFDSelect(cff.fdSelect);\n output.add(fdSelect);\n compiled = this.compileTopDicts(cff.fdArray, output.length, true);\n topDictTracker.setEntryLocation(\"FDArray\", [output.length], output);\n output.add(compiled.output);\n const fontDictTrackers = compiled.trackers;\n this.compilePrivateDicts(cff.fdArray, fontDictTrackers, output);\n }\n this.compilePrivateDicts([cff.topDict], [topDictTracker], output);\n output.add([0]);\n return output.data;\n }\n encodeNumber(value) {\n if (Number.isInteger(value)) {\n return this.encodeInteger(value);\n }\n return this.encodeFloat(value);\n }\n static get EncodeFloatRegExp() {\n return (0, _util.shadow)(this, \"EncodeFloatRegExp\", /\\.(\\d*?)(?:9{5,20}|0{5,20})\\d{0,2}(?:e(.+)|$)/);\n }\n encodeFloat(num) {\n let value = num.toString();\n const m = CFFCompiler.EncodeFloatRegExp.exec(value);\n if (m) {\n const epsilon = parseFloat(\"1e\" + ((m[2] ? +m[2] : 0) + m[1].length));\n value = (Math.round(num * epsilon) / epsilon).toString();\n }\n let nibbles = \"\";\n let i, ii;\n for (i = 0, ii = value.length; i < ii; ++i) {\n const a = value[i];\n if (a === \"e\") {\n nibbles += value[++i] === \"-\" ? \"c\" : \"b\";\n } else if (a === \".\") {\n nibbles += \"a\";\n } else if (a === \"-\") {\n nibbles += \"e\";\n } else {\n nibbles += a;\n }\n }\n nibbles += nibbles.length & 1 ? \"f\" : \"ff\";\n const out = [30];\n for (i = 0, ii = nibbles.length; i < ii; i += 2) {\n out.push(parseInt(nibbles.substring(i, i + 2), 16));\n }\n return out;\n }\n encodeInteger(value) {\n let code;\n if (value >= -107 && value <= 107) {\n code = [value + 139];\n } else if (value >= 108 && value <= 1131) {\n value -= 108;\n code = [(value >> 8) + 247, value & 0xff];\n } else if (value >= -1131 && value <= -108) {\n value = -value - 108;\n code = [(value >> 8) + 251, value & 0xff];\n } else if (value >= -32768 && value <= 32767) {\n code = [0x1c, value >> 8 & 0xff, value & 0xff];\n } else {\n code = [0x1d, value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff];\n }\n return code;\n }\n compileHeader(header) {\n return [header.major, header.minor, 4, header.offSize];\n }\n compileNameIndex(names) {\n const nameIndex = new CFFIndex();\n for (const name of names) {\n const length = Math.min(name.length, 127);\n let sanitizedName = new Array(length);\n for (let j = 0; j < length; j++) {\n let char = name[j];\n if (char < \"!\" || char > \"~\" || char === \"[\" || char === \"]\" || char === \"(\" || char === \")\" || char === \"{\" || char === \"}\" || char === \"<\" || char === \">\" || char === \"/\" || char === \"%\") {\n char = \"_\";\n }\n sanitizedName[j] = char;\n }\n sanitizedName = sanitizedName.join(\"\");\n if (sanitizedName === \"\") {\n sanitizedName = \"Bad_Font_Name\";\n }\n nameIndex.add((0, _util.stringToBytes)(sanitizedName));\n }\n return this.compileIndex(nameIndex);\n }\n compileTopDicts(dicts, length, removeCidKeys) {\n const fontDictTrackers = [];\n let fdArrayIndex = new CFFIndex();\n for (const fontDict of dicts) {\n if (removeCidKeys) {\n fontDict.removeByName(\"CIDFontVersion\");\n fontDict.removeByName(\"CIDFontRevision\");\n fontDict.removeByName(\"CIDFontType\");\n fontDict.removeByName(\"CIDCount\");\n fontDict.removeByName(\"UIDBase\");\n }\n const fontDictTracker = new CFFOffsetTracker();\n const fontDictData = this.compileDict(fontDict, fontDictTracker);\n fontDictTrackers.push(fontDictTracker);\n fdArrayIndex.add(fontDictData);\n fontDictTracker.offset(length);\n }\n fdArrayIndex = this.compileIndex(fdArrayIndex, fontDictTrackers);\n return {\n trackers: fontDictTrackers,\n output: fdArrayIndex\n };\n }\n compilePrivateDicts(dicts, trackers, output) {\n for (let i = 0, ii = dicts.length; i < ii; ++i) {\n const fontDict = dicts[i];\n const privateDict = fontDict.privateDict;\n if (!privateDict || !fontDict.hasName(\"Private\")) {\n throw new _util.FormatError(\"There must be a private dictionary.\");\n }\n const privateDictTracker = new CFFOffsetTracker();\n const privateDictData = this.compileDict(privateDict, privateDictTracker);\n let outputLength = output.length;\n privateDictTracker.offset(outputLength);\n if (!privateDictData.length) {\n outputLength = 0;\n }\n trackers[i].setEntryLocation(\"Private\", [privateDictData.length, outputLength], output);\n output.add(privateDictData);\n if (privateDict.subrsIndex && privateDict.hasName(\"Subrs\")) {\n const subrs = this.compileIndex(privateDict.subrsIndex);\n privateDictTracker.setEntryLocation(\"Subrs\", [privateDictData.length], output);\n output.add(subrs);\n }\n }\n }\n compileDict(dict, offsetTracker) {\n const out = [];\n for (const key of dict.order) {\n if (!(key in dict.values)) {\n continue;\n }\n let values = dict.values[key];\n let types = dict.types[key];\n if (!Array.isArray(types)) {\n types = [types];\n }\n if (!Array.isArray(values)) {\n values = [values];\n }\n if (values.length === 0) {\n continue;\n }\n for (let j = 0, jj = types.length; j < jj; ++j) {\n const type = types[j];\n const value = values[j];\n switch (type) {\n case \"num\":\n case \"sid\":\n out.push(...this.encodeNumber(value));\n break;\n case \"offset\":\n const name = dict.keyToNameMap[key];\n if (!offsetTracker.isTracking(name)) {\n offsetTracker.track(name, out.length);\n }\n out.push(0x1d, 0, 0, 0, 0);\n break;\n case \"array\":\n case \"delta\":\n out.push(...this.encodeNumber(value));\n for (let k = 1, kk = values.length; k < kk; ++k) {\n out.push(...this.encodeNumber(values[k]));\n }\n break;\n default:\n throw new _util.FormatError(`Unknown data type of ${type}`);\n }\n }\n out.push(...dict.opcodes[key]);\n }\n return out;\n }\n compileStringIndex(strings) {\n const stringIndex = new CFFIndex();\n for (const string of strings) {\n stringIndex.add((0, _util.stringToBytes)(string));\n }\n return this.compileIndex(stringIndex);\n }\n compileCharStrings(charStrings) {\n const charStringsIndex = new CFFIndex();\n for (let i = 0; i < charStrings.count; i++) {\n const glyph = charStrings.get(i);\n if (glyph.length === 0) {\n charStringsIndex.add(new Uint8Array([0x8b, 0x0e]));\n continue;\n }\n charStringsIndex.add(glyph);\n }\n return this.compileIndex(charStringsIndex);\n }\n compileCharset(charset, numGlyphs, strings, isCIDFont) {\n let out;\n const numGlyphsLessNotDef = numGlyphs - 1;\n if (isCIDFont) {\n out = new Uint8Array([2, 0, 0, numGlyphsLessNotDef >> 8 & 0xff, numGlyphsLessNotDef & 0xff]);\n } else {\n const length = 1 + numGlyphsLessNotDef * 2;\n out = new Uint8Array(length);\n out[0] = 0;\n let charsetIndex = 0;\n const numCharsets = charset.charset.length;\n let warned = false;\n for (let i = 1; i < out.length; i += 2) {\n let sid = 0;\n if (charsetIndex < numCharsets) {\n const name = charset.charset[charsetIndex++];\n sid = strings.getSID(name);\n if (sid === -1) {\n sid = 0;\n if (!warned) {\n warned = true;\n (0, _util.warn)(`Couldn't find ${name} in CFF strings`);\n }\n }\n }\n out[i] = sid >> 8 & 0xff;\n out[i + 1] = sid & 0xff;\n }\n }\n return this.compileTypedArray(out);\n }\n compileEncoding(encoding) {\n return this.compileTypedArray(encoding.raw);\n }\n compileFDSelect(fdSelect) {\n const format = fdSelect.format;\n let out, i;\n switch (format) {\n case 0:\n out = new Uint8Array(1 + fdSelect.fdSelect.length);\n out[0] = format;\n for (i = 0; i < fdSelect.fdSelect.length; i++) {\n out[i + 1] = fdSelect.fdSelect[i];\n }\n break;\n case 3:\n const start = 0;\n let lastFD = fdSelect.fdSelect[0];\n const ranges = [format, 0, 0, start >> 8 & 0xff, start & 0xff, lastFD];\n for (i = 1; i < fdSelect.fdSelect.length; i++) {\n const currentFD = fdSelect.fdSelect[i];\n if (currentFD !== lastFD) {\n ranges.push(i >> 8 & 0xff, i & 0xff, currentFD);\n lastFD = currentFD;\n }\n }\n const numRanges = (ranges.length - 3) / 3;\n ranges[1] = numRanges >> 8 & 0xff;\n ranges[2] = numRanges & 0xff;\n ranges.push(i >> 8 & 0xff, i & 0xff);\n out = new Uint8Array(ranges);\n break;\n }\n return this.compileTypedArray(out);\n }\n compileTypedArray(data) {\n return Array.from(data);\n }\n compileIndex(index, trackers = []) {\n const objects = index.objects;\n const count = objects.length;\n if (count === 0) {\n return [0, 0];\n }\n const data = [count >> 8 & 0xff, count & 0xff];\n let lastOffset = 1,\n i;\n for (i = 0; i < count; ++i) {\n lastOffset += objects[i].length;\n }\n let offsetSize;\n if (lastOffset < 0x100) {\n offsetSize = 1;\n } else if (lastOffset < 0x10000) {\n offsetSize = 2;\n } else if (lastOffset < 0x1000000) {\n offsetSize = 3;\n } else {\n offsetSize = 4;\n }\n data.push(offsetSize);\n let relativeOffset = 1;\n for (i = 0; i < count + 1; i++) {\n if (offsetSize === 1) {\n data.push(relativeOffset & 0xff);\n } else if (offsetSize === 2) {\n data.push(relativeOffset >> 8 & 0xff, relativeOffset & 0xff);\n } else if (offsetSize === 3) {\n data.push(relativeOffset >> 16 & 0xff, relativeOffset >> 8 & 0xff, relativeOffset & 0xff);\n } else {\n data.push(relativeOffset >>> 24 & 0xff, relativeOffset >> 16 & 0xff, relativeOffset >> 8 & 0xff, relativeOffset & 0xff);\n }\n if (objects[i]) {\n relativeOffset += objects[i].length;\n }\n }\n for (i = 0; i < count; i++) {\n if (trackers[i]) {\n trackers[i].offset(data.length);\n }\n data.push(...objects[i]);\n }\n return data;\n }\n}\nexports.CFFCompiler = CFFCompiler;\n\n/***/ }),\n/* 36 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ISOAdobeCharset = exports.ExpertSubsetCharset = exports.ExpertCharset = void 0;\nconst ISOAdobeCharset = [\".notdef\", \"space\", \"exclam\", \"quotedbl\", \"numbersign\", \"dollar\", \"percent\", \"ampersand\", \"quoteright\", \"parenleft\", \"parenright\", \"asterisk\", \"plus\", \"comma\", \"hyphen\", \"period\", \"slash\", \"zero\", \"one\", \"two\", \"three\", \"four\", \"five\", \"six\", \"seven\", \"eight\", \"nine\", \"colon\", \"semicolon\", \"less\", \"equal\", \"greater\", \"question\", \"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\", \"bracketleft\", \"backslash\", \"bracketright\", \"asciicircum\", \"underscore\", \"quoteleft\", \"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\", \"braceleft\", \"bar\", \"braceright\", \"asciitilde\", \"exclamdown\", \"cent\", \"sterling\", \"fraction\", \"yen\", \"florin\", \"section\", \"currency\", \"quotesingle\", \"quotedblleft\", \"guillemotleft\", \"guilsinglleft\", \"guilsinglright\", \"fi\", \"fl\", \"endash\", \"dagger\", \"daggerdbl\", \"periodcentered\", \"paragraph\", \"bullet\", \"quotesinglbase\", \"quotedblbase\", \"quotedblright\", \"guillemotright\", \"ellipsis\", \"perthousand\", \"questiondown\", \"grave\", \"acute\", \"circumflex\", \"tilde\", \"macron\", \"breve\", \"dotaccent\", \"dieresis\", \"ring\", \"cedilla\", \"hungarumlaut\", \"ogonek\", \"caron\", \"emdash\", \"AE\", \"ordfeminine\", \"Lslash\", \"Oslash\", \"OE\", \"ordmasculine\", \"ae\", \"dotlessi\", \"lslash\", \"oslash\", \"oe\", \"germandbls\", \"onesuperior\", \"logicalnot\", \"mu\", \"trademark\", \"Eth\", \"onehalf\", \"plusminus\", \"Thorn\", \"onequarter\", \"divide\", \"brokenbar\", \"degree\", \"thorn\", \"threequarters\", \"twosuperior\", \"registered\", \"minus\", \"eth\", \"multiply\", \"threesuperior\", \"copyright\", \"Aacute\", \"Acircumflex\", \"Adieresis\", \"Agrave\", \"Aring\", \"Atilde\", \"Ccedilla\", \"Eacute\", \"Ecircumflex\", \"Edieresis\", \"Egrave\", \"Iacute\", \"Icircumflex\", \"Idieresis\", \"Igrave\", \"Ntilde\", \"Oacute\", \"Ocircumflex\", \"Odieresis\", \"Ograve\", \"Otilde\", \"Scaron\", \"Uacute\", \"Ucircumflex\", \"Udieresis\", \"Ugrave\", \"Yacute\", \"Ydieresis\", \"Zcaron\", \"aacute\", \"acircumflex\", \"adieresis\", \"agrave\", \"aring\", \"atilde\", \"ccedilla\", \"eacute\", \"ecircumflex\", \"edieresis\", \"egrave\", \"iacute\", \"icircumflex\", \"idieresis\", \"igrave\", \"ntilde\", \"oacute\", \"ocircumflex\", \"odieresis\", \"ograve\", \"otilde\", \"scaron\", \"uacute\", \"ucircumflex\", \"udieresis\", \"ugrave\", \"yacute\", \"ydieresis\", \"zcaron\"];\nexports.ISOAdobeCharset = ISOAdobeCharset;\nconst ExpertCharset = [\".notdef\", \"space\", \"exclamsmall\", \"Hungarumlautsmall\", \"dollaroldstyle\", \"dollarsuperior\", \"ampersandsmall\", \"Acutesmall\", \"parenleftsuperior\", \"parenrightsuperior\", \"twodotenleader\", \"onedotenleader\", \"comma\", \"hyphen\", \"period\", \"fraction\", \"zerooldstyle\", \"oneoldstyle\", \"twooldstyle\", \"threeoldstyle\", \"fouroldstyle\", \"fiveoldstyle\", \"sixoldstyle\", \"sevenoldstyle\", \"eightoldstyle\", \"nineoldstyle\", \"colon\", \"semicolon\", \"commasuperior\", \"threequartersemdash\", \"periodsuperior\", \"questionsmall\", \"asuperior\", \"bsuperior\", \"centsuperior\", \"dsuperior\", \"esuperior\", \"isuperior\", \"lsuperior\", \"msuperior\", \"nsuperior\", \"osuperior\", \"rsuperior\", \"ssuperior\", \"tsuperior\", \"ff\", \"fi\", \"fl\", \"ffi\", \"ffl\", \"parenleftinferior\", \"parenrightinferior\", \"Circumflexsmall\", \"hyphensuperior\", \"Gravesmall\", \"Asmall\", \"Bsmall\", \"Csmall\", \"Dsmall\", \"Esmall\", \"Fsmall\", \"Gsmall\", \"Hsmall\", \"Ismall\", \"Jsmall\", \"Ksmall\", \"Lsmall\", \"Msmall\", \"Nsmall\", \"Osmall\", \"Psmall\", \"Qsmall\", \"Rsmall\", \"Ssmall\", \"Tsmall\", \"Usmall\", \"Vsmall\", \"Wsmall\", \"Xsmall\", \"Ysmall\", \"Zsmall\", \"colonmonetary\", \"onefitted\", \"rupiah\", \"Tildesmall\", \"exclamdownsmall\", \"centoldstyle\", \"Lslashsmall\", \"Scaronsmall\", \"Zcaronsmall\", \"Dieresissmall\", \"Brevesmall\", \"Caronsmall\", \"Dotaccentsmall\", \"Macronsmall\", \"figuredash\", \"hypheninferior\", \"Ogoneksmall\", \"Ringsmall\", \"Cedillasmall\", \"onequarter\", \"onehalf\", \"threequarters\", \"questiondownsmall\", \"oneeighth\", \"threeeighths\", \"fiveeighths\", \"seveneighths\", \"onethird\", \"twothirds\", \"zerosuperior\", \"onesuperior\", \"twosuperior\", \"threesuperior\", \"foursuperior\", \"fivesuperior\", \"sixsuperior\", \"sevensuperior\", \"eightsuperior\", \"ninesuperior\", \"zeroinferior\", \"oneinferior\", \"twoinferior\", \"threeinferior\", \"fourinferior\", \"fiveinferior\", \"sixinferior\", \"seveninferior\", \"eightinferior\", \"nineinferior\", \"centinferior\", \"dollarinferior\", \"periodinferior\", \"commainferior\", \"Agravesmall\", \"Aacutesmall\", \"Acircumflexsmall\", \"Atildesmall\", \"Adieresissmall\", \"Aringsmall\", \"AEsmall\", \"Ccedillasmall\", \"Egravesmall\", \"Eacutesmall\", \"Ecircumflexsmall\", \"Edieresissmall\", \"Igravesmall\", \"Iacutesmall\", \"Icircumflexsmall\", \"Idieresissmall\", \"Ethsmall\", \"Ntildesmall\", \"Ogravesmall\", \"Oacutesmall\", \"Ocircumflexsmall\", \"Otildesmall\", \"Odieresissmall\", \"OEsmall\", \"Oslashsmall\", \"Ugravesmall\", \"Uacutesmall\", \"Ucircumflexsmall\", \"Udieresissmall\", \"Yacutesmall\", \"Thornsmall\", \"Ydieresissmall\"];\nexports.ExpertCharset = ExpertCharset;\nconst ExpertSubsetCharset = [\".notdef\", \"space\", \"dollaroldstyle\", \"dollarsuperior\", \"parenleftsuperior\", \"parenrightsuperior\", \"twodotenleader\", \"onedotenleader\", \"comma\", \"hyphen\", \"period\", \"fraction\", \"zerooldstyle\", \"oneoldstyle\", \"twooldstyle\", \"threeoldstyle\", \"fouroldstyle\", \"fiveoldstyle\", \"sixoldstyle\", \"sevenoldstyle\", \"eightoldstyle\", \"nineoldstyle\", \"colon\", \"semicolon\", \"commasuperior\", \"threequartersemdash\", \"periodsuperior\", \"asuperior\", \"bsuperior\", \"centsuperior\", \"dsuperior\", \"esuperior\", \"isuperior\", \"lsuperior\", \"msuperior\", \"nsuperior\", \"osuperior\", \"rsuperior\", \"ssuperior\", \"tsuperior\", \"ff\", \"fi\", \"fl\", \"ffi\", \"ffl\", \"parenleftinferior\", \"parenrightinferior\", \"hyphensuperior\", \"colonmonetary\", \"onefitted\", \"rupiah\", \"centoldstyle\", \"figuredash\", \"hypheninferior\", \"onequarter\", \"onehalf\", \"threequarters\", \"oneeighth\", \"threeeighths\", \"fiveeighths\", \"seveneighths\", \"onethird\", \"twothirds\", \"zerosuperior\", \"onesuperior\", \"twosuperior\", \"threesuperior\", \"foursuperior\", \"fivesuperior\", \"sixsuperior\", \"sevensuperior\", \"eightsuperior\", \"ninesuperior\", \"zeroinferior\", \"oneinferior\", \"twoinferior\", \"threeinferior\", \"fourinferior\", \"fiveinferior\", \"sixinferior\", \"seveninferior\", \"eightinferior\", \"nineinferior\", \"centinferior\", \"dollarinferior\", \"periodinferior\", \"commainferior\"];\nexports.ExpertSubsetCharset = ExpertSubsetCharset;\n\n/***/ }),\n/* 37 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ZapfDingbatsEncoding = exports.WinAnsiEncoding = exports.SymbolSetEncoding = exports.StandardEncoding = exports.MacRomanEncoding = exports.ExpertEncoding = void 0;\nexports.getEncoding = getEncoding;\nconst ExpertEncoding = [\"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"space\", \"exclamsmall\", \"Hungarumlautsmall\", \"\", \"dollaroldstyle\", \"dollarsuperior\", \"ampersandsmall\", \"Acutesmall\", \"parenleftsuperior\", \"parenrightsuperior\", \"twodotenleader\", \"onedotenleader\", \"comma\", \"hyphen\", \"period\", \"fraction\", \"zerooldstyle\", \"oneoldstyle\", \"twooldstyle\", \"threeoldstyle\", \"fouroldstyle\", \"fiveoldstyle\", \"sixoldstyle\", \"sevenoldstyle\", \"eightoldstyle\", \"nineoldstyle\", \"colon\", \"semicolon\", \"commasuperior\", \"threequartersemdash\", \"periodsuperior\", \"questionsmall\", \"\", \"asuperior\", \"bsuperior\", \"centsuperior\", \"dsuperior\", \"esuperior\", \"\", \"\", \"\", \"isuperior\", \"\", \"\", \"lsuperior\", \"msuperior\", \"nsuperior\", \"osuperior\", \"\", \"\", \"rsuperior\", \"ssuperior\", \"tsuperior\", \"\", \"ff\", \"fi\", \"fl\", \"ffi\", \"ffl\", \"parenleftinferior\", \"\", \"parenrightinferior\", \"Circumflexsmall\", \"hyphensuperior\", \"Gravesmall\", \"Asmall\", \"Bsmall\", \"Csmall\", \"Dsmall\", \"Esmall\", \"Fsmall\", \"Gsmall\", \"Hsmall\", \"Ismall\", \"Jsmall\", \"Ksmall\", \"Lsmall\", \"Msmall\", \"Nsmall\", \"Osmall\", \"Psmall\", \"Qsmall\", \"Rsmall\", \"Ssmall\", \"Tsmall\", \"Usmall\", \"Vsmall\", \"Wsmall\", \"Xsmall\", \"Ysmall\", \"Zsmall\", \"colonmonetary\", \"onefitted\", \"rupiah\", \"Tildesmall\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"exclamdownsmall\", \"centoldstyle\", \"Lslashsmall\", \"\", \"\", \"Scaronsmall\", \"Zcaronsmall\", \"Dieresissmall\", \"Brevesmall\", \"Caronsmall\", \"\", \"Dotaccentsmall\", \"\", \"\", \"Macronsmall\", \"\", \"\", \"figuredash\", \"hypheninferior\", \"\", \"\", \"Ogoneksmall\", \"Ringsmall\", \"Cedillasmall\", \"\", \"\", \"\", \"onequarter\", \"onehalf\", \"threequarters\", \"questiondownsmall\", \"oneeighth\", \"threeeighths\", \"fiveeighths\", \"seveneighths\", \"onethird\", \"twothirds\", \"\", \"\", \"zerosuperior\", \"onesuperior\", \"twosuperior\", \"threesuperior\", \"foursuperior\", \"fivesuperior\", \"sixsuperior\", \"sevensuperior\", \"eightsuperior\", \"ninesuperior\", \"zeroinferior\", \"oneinferior\", \"twoinferior\", \"threeinferior\", \"fourinferior\", \"fiveinferior\", \"sixinferior\", \"seveninferior\", \"eightinferior\", \"nineinferior\", \"centinferior\", \"dollarinferior\", \"periodinferior\", \"commainferior\", \"Agravesmall\", \"Aacutesmall\", \"Acircumflexsmall\", \"Atildesmall\", \"Adieresissmall\", \"Aringsmall\", \"AEsmall\", \"Ccedillasmall\", \"Egravesmall\", \"Eacutesmall\", \"Ecircumflexsmall\", \"Edieresissmall\", \"Igravesmall\", \"Iacutesmall\", \"Icircumflexsmall\", \"Idieresissmall\", \"Ethsmall\", \"Ntildesmall\", \"Ogravesmall\", \"Oacutesmall\", \"Ocircumflexsmall\", \"Otildesmall\", \"Odieresissmall\", \"OEsmall\", \"Oslashsmall\", \"Ugravesmall\", \"Uacutesmall\", \"Ucircumflexsmall\", \"Udieresissmall\", \"Yacutesmall\", \"Thornsmall\", \"Ydieresissmall\"];\nexports.ExpertEncoding = ExpertEncoding;\nconst MacExpertEncoding = [\"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"space\", \"exclamsmall\", \"Hungarumlautsmall\", \"centoldstyle\", \"dollaroldstyle\", \"dollarsuperior\", \"ampersandsmall\", \"Acutesmall\", \"parenleftsuperior\", \"parenrightsuperior\", \"twodotenleader\", \"onedotenleader\", \"comma\", \"hyphen\", \"period\", \"fraction\", \"zerooldstyle\", \"oneoldstyle\", \"twooldstyle\", \"threeoldstyle\", \"fouroldstyle\", \"fiveoldstyle\", \"sixoldstyle\", \"sevenoldstyle\", \"eightoldstyle\", \"nineoldstyle\", \"colon\", \"semicolon\", \"\", \"threequartersemdash\", \"\", \"questionsmall\", \"\", \"\", \"\", \"\", \"Ethsmall\", \"\", \"\", \"onequarter\", \"onehalf\", \"threequarters\", \"oneeighth\", \"threeeighths\", \"fiveeighths\", \"seveneighths\", \"onethird\", \"twothirds\", \"\", \"\", \"\", \"\", \"\", \"\", \"ff\", \"fi\", \"fl\", \"ffi\", \"ffl\", \"parenleftinferior\", \"\", \"parenrightinferior\", \"Circumflexsmall\", \"hypheninferior\", \"Gravesmall\", \"Asmall\", \"Bsmall\", \"Csmall\", \"Dsmall\", \"Esmall\", \"Fsmall\", \"Gsmall\", \"Hsmall\", \"Ismall\", \"Jsmall\", \"Ksmall\", \"Lsmall\", \"Msmall\", \"Nsmall\", \"Osmall\", \"Psmall\", \"Qsmall\", \"Rsmall\", \"Ssmall\", \"Tsmall\", \"Usmall\", \"Vsmall\", \"Wsmall\", \"Xsmall\", \"Ysmall\", \"Zsmall\", \"colonmonetary\", \"onefitted\", \"rupiah\", \"Tildesmall\", \"\", \"\", \"asuperior\", \"centsuperior\", \"\", \"\", \"\", \"\", \"Aacutesmall\", \"Agravesmall\", \"Acircumflexsmall\", \"Adieresissmall\", \"Atildesmall\", \"Aringsmall\", \"Ccedillasmall\", \"Eacutesmall\", \"Egravesmall\", \"Ecircumflexsmall\", \"Edieresissmall\", \"Iacutesmall\", \"Igravesmall\", \"Icircumflexsmall\", \"Idieresissmall\", \"Ntildesmall\", \"Oacutesmall\", \"Ogravesmall\", \"Ocircumflexsmall\", \"Odieresissmall\", \"Otildesmall\", \"Uacutesmall\", \"Ugravesmall\", \"Ucircumflexsmall\", \"Udieresissmall\", \"\", \"eightsuperior\", \"fourinferior\", \"threeinferior\", \"sixinferior\", \"eightinferior\", \"seveninferior\", \"Scaronsmall\", \"\", \"centinferior\", \"twoinferior\", \"\", \"Dieresissmall\", \"\", \"Caronsmall\", \"osuperior\", \"fiveinferior\", \"\", \"commainferior\", \"periodinferior\", \"Yacutesmall\", \"\", \"dollarinferior\", \"\", \"\", \"Thornsmall\", \"\", \"nineinferior\", \"zeroinferior\", \"Zcaronsmall\", \"AEsmall\", \"Oslashsmall\", \"questiondownsmall\", \"oneinferior\", \"Lslashsmall\", \"\", \"\", \"\", \"\", \"\", \"\", \"Cedillasmall\", \"\", \"\", \"\", \"\", \"\", \"OEsmall\", \"figuredash\", \"hyphensuperior\", \"\", \"\", \"\", \"\", \"exclamdownsmall\", \"\", \"Ydieresissmall\", \"\", \"onesuperior\", \"twosuperior\", \"threesuperior\", \"foursuperior\", \"fivesuperior\", \"sixsuperior\", \"sevensuperior\", \"ninesuperior\", \"zerosuperior\", \"\", \"esuperior\", \"rsuperior\", \"tsuperior\", \"\", \"\", \"isuperior\", \"ssuperior\", \"dsuperior\", \"\", \"\", \"\", \"\", \"\", \"lsuperior\", \"Ogoneksmall\", \"Brevesmall\", \"Macronsmall\", \"bsuperior\", \"nsuperior\", \"msuperior\", \"commasuperior\", \"periodsuperior\", \"Dotaccentsmall\", \"Ringsmall\", \"\", \"\", \"\", \"\"];\nconst MacRomanEncoding = [\"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"space\", \"exclam\", \"quotedbl\", \"numbersign\", \"dollar\", \"percent\", \"ampersand\", \"quotesingle\", \"parenleft\", \"parenright\", \"asterisk\", \"plus\", \"comma\", \"hyphen\", \"period\", \"slash\", \"zero\", \"one\", \"two\", \"three\", \"four\", \"five\", \"six\", \"seven\", \"eight\", \"nine\", \"colon\", \"semicolon\", \"less\", \"equal\", \"greater\", \"question\", \"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\", \"bracketleft\", \"backslash\", \"bracketright\", \"asciicircum\", \"underscore\", \"grave\", \"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\", \"braceleft\", \"bar\", \"braceright\", \"asciitilde\", \"\", \"Adieresis\", \"Aring\", \"Ccedilla\", \"Eacute\", \"Ntilde\", \"Odieresis\", \"Udieresis\", \"aacute\", \"agrave\", \"acircumflex\", \"adieresis\", \"atilde\", \"aring\", \"ccedilla\", \"eacute\", \"egrave\", \"ecircumflex\", \"edieresis\", \"iacute\", \"igrave\", \"icircumflex\", \"idieresis\", \"ntilde\", \"oacute\", \"ograve\", \"ocircumflex\", \"odieresis\", \"otilde\", \"uacute\", \"ugrave\", \"ucircumflex\", \"udieresis\", \"dagger\", \"degree\", \"cent\", \"sterling\", \"section\", \"bullet\", \"paragraph\", \"germandbls\", \"registered\", \"copyright\", \"trademark\", \"acute\", \"dieresis\", \"notequal\", \"AE\", \"Oslash\", \"infinity\", \"plusminus\", \"lessequal\", \"greaterequal\", \"yen\", \"mu\", \"partialdiff\", \"summation\", \"product\", \"pi\", \"integral\", \"ordfeminine\", \"ordmasculine\", \"Omega\", \"ae\", \"oslash\", \"questiondown\", \"exclamdown\", \"logicalnot\", \"radical\", \"florin\", \"approxequal\", \"Delta\", \"guillemotleft\", \"guillemotright\", \"ellipsis\", \"space\", \"Agrave\", \"Atilde\", \"Otilde\", \"OE\", \"oe\", \"endash\", \"emdash\", \"quotedblleft\", \"quotedblright\", \"quoteleft\", \"quoteright\", \"divide\", \"lozenge\", \"ydieresis\", \"Ydieresis\", \"fraction\", \"currency\", \"guilsinglleft\", \"guilsinglright\", \"fi\", \"fl\", \"daggerdbl\", \"periodcentered\", \"quotesinglbase\", \"quotedblbase\", \"perthousand\", \"Acircumflex\", \"Ecircumflex\", \"Aacute\", \"Edieresis\", \"Egrave\", \"Iacute\", \"Icircumflex\", \"Idieresis\", \"Igrave\", \"Oacute\", \"Ocircumflex\", \"apple\", \"Ograve\", \"Uacute\", \"Ucircumflex\", \"Ugrave\", \"dotlessi\", \"circumflex\", \"tilde\", \"macron\", \"breve\", \"dotaccent\", \"ring\", \"cedilla\", \"hungarumlaut\", \"ogonek\", \"caron\"];\nexports.MacRomanEncoding = MacRomanEncoding;\nconst StandardEncoding = [\"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"space\", \"exclam\", \"quotedbl\", \"numbersign\", \"dollar\", \"percent\", \"ampersand\", \"quoteright\", \"parenleft\", \"parenright\", \"asterisk\", \"plus\", \"comma\", \"hyphen\", \"period\", \"slash\", \"zero\", \"one\", \"two\", \"three\", \"four\", \"five\", \"six\", \"seven\", \"eight\", \"nine\", \"colon\", \"semicolon\", \"less\", \"equal\", \"greater\", \"question\", \"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\", \"bracketleft\", \"backslash\", \"bracketright\", \"asciicircum\", \"underscore\", \"quoteleft\", \"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\", \"braceleft\", \"bar\", \"braceright\", \"asciitilde\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"exclamdown\", \"cent\", \"sterling\", \"fraction\", \"yen\", \"florin\", \"section\", \"currency\", \"quotesingle\", \"quotedblleft\", \"guillemotleft\", \"guilsinglleft\", \"guilsinglright\", \"fi\", \"fl\", \"\", \"endash\", \"dagger\", \"daggerdbl\", \"periodcentered\", \"\", \"paragraph\", \"bullet\", \"quotesinglbase\", \"quotedblbase\", \"quotedblright\", \"guillemotright\", \"ellipsis\", \"perthousand\", \"\", \"questiondown\", \"\", \"grave\", \"acute\", \"circumflex\", \"tilde\", \"macron\", \"breve\", \"dotaccent\", \"dieresis\", \"\", \"ring\", \"cedilla\", \"\", \"hungarumlaut\", \"ogonek\", \"caron\", \"emdash\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"AE\", \"\", \"ordfeminine\", \"\", \"\", \"\", \"\", \"Lslash\", \"Oslash\", \"OE\", \"ordmasculine\", \"\", \"\", \"\", \"\", \"\", \"ae\", \"\", \"\", \"\", \"dotlessi\", \"\", \"\", \"lslash\", \"oslash\", \"oe\", \"germandbls\", \"\", \"\", \"\", \"\"];\nexports.StandardEncoding = StandardEncoding;\nconst WinAnsiEncoding = [\"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"space\", \"exclam\", \"quotedbl\", \"numbersign\", \"dollar\", \"percent\", \"ampersand\", \"quotesingle\", \"parenleft\", \"parenright\", \"asterisk\", \"plus\", \"comma\", \"hyphen\", \"period\", \"slash\", \"zero\", \"one\", \"two\", \"three\", \"four\", \"five\", \"six\", \"seven\", \"eight\", \"nine\", \"colon\", \"semicolon\", \"less\", \"equal\", \"greater\", \"question\", \"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\", \"bracketleft\", \"backslash\", \"bracketright\", \"asciicircum\", \"underscore\", \"grave\", \"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\", \"braceleft\", \"bar\", \"braceright\", \"asciitilde\", \"bullet\", \"Euro\", \"bullet\", \"quotesinglbase\", \"florin\", \"quotedblbase\", \"ellipsis\", \"dagger\", \"daggerdbl\", \"circumflex\", \"perthousand\", \"Scaron\", \"guilsinglleft\", \"OE\", \"bullet\", \"Zcaron\", \"bullet\", \"bullet\", \"quoteleft\", \"quoteright\", \"quotedblleft\", \"quotedblright\", \"bullet\", \"endash\", \"emdash\", \"tilde\", \"trademark\", \"scaron\", \"guilsinglright\", \"oe\", \"bullet\", \"zcaron\", \"Ydieresis\", \"space\", \"exclamdown\", \"cent\", \"sterling\", \"currency\", \"yen\", \"brokenbar\", \"section\", \"dieresis\", \"copyright\", \"ordfeminine\", \"guillemotleft\", \"logicalnot\", \"hyphen\", \"registered\", \"macron\", \"degree\", \"plusminus\", \"twosuperior\", \"threesuperior\", \"acute\", \"mu\", \"paragraph\", \"periodcentered\", \"cedilla\", \"onesuperior\", \"ordmasculine\", \"guillemotright\", \"onequarter\", \"onehalf\", \"threequarters\", \"questiondown\", \"Agrave\", \"Aacute\", \"Acircumflex\", \"Atilde\", \"Adieresis\", \"Aring\", \"AE\", \"Ccedilla\", \"Egrave\", \"Eacute\", \"Ecircumflex\", \"Edieresis\", \"Igrave\", \"Iacute\", \"Icircumflex\", \"Idieresis\", \"Eth\", \"Ntilde\", \"Ograve\", \"Oacute\", \"Ocircumflex\", \"Otilde\", \"Odieresis\", \"multiply\", \"Oslash\", \"Ugrave\", \"Uacute\", \"Ucircumflex\", \"Udieresis\", \"Yacute\", \"Thorn\", \"germandbls\", \"agrave\", \"aacute\", \"acircumflex\", \"atilde\", \"adieresis\", \"aring\", \"ae\", \"ccedilla\", \"egrave\", \"eacute\", \"ecircumflex\", \"edieresis\", \"igrave\", \"iacute\", \"icircumflex\", \"idieresis\", \"eth\", \"ntilde\", \"ograve\", \"oacute\", \"ocircumflex\", \"otilde\", \"odieresis\", \"divide\", \"oslash\", \"ugrave\", \"uacute\", \"ucircumflex\", \"udieresis\", \"yacute\", \"thorn\", \"ydieresis\"];\nexports.WinAnsiEncoding = WinAnsiEncoding;\nconst SymbolSetEncoding = [\"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"space\", \"exclam\", \"universal\", \"numbersign\", \"existential\", \"percent\", \"ampersand\", \"suchthat\", \"parenleft\", \"parenright\", \"asteriskmath\", \"plus\", \"comma\", \"minus\", \"period\", \"slash\", \"zero\", \"one\", \"two\", \"three\", \"four\", \"five\", \"six\", \"seven\", \"eight\", \"nine\", \"colon\", \"semicolon\", \"less\", \"equal\", \"greater\", \"question\", \"congruent\", \"Alpha\", \"Beta\", \"Chi\", \"Delta\", \"Epsilon\", \"Phi\", \"Gamma\", \"Eta\", \"Iota\", \"theta1\", \"Kappa\", \"Lambda\", \"Mu\", \"Nu\", \"Omicron\", \"Pi\", \"Theta\", \"Rho\", \"Sigma\", \"Tau\", \"Upsilon\", \"sigma1\", \"Omega\", \"Xi\", \"Psi\", \"Zeta\", \"bracketleft\", \"therefore\", \"bracketright\", \"perpendicular\", \"underscore\", \"radicalex\", \"alpha\", \"beta\", \"chi\", \"delta\", \"epsilon\", \"phi\", \"gamma\", \"eta\", \"iota\", \"phi1\", \"kappa\", \"lambda\", \"mu\", \"nu\", \"omicron\", \"pi\", \"theta\", \"rho\", \"sigma\", \"tau\", \"upsilon\", \"omega1\", \"omega\", \"xi\", \"psi\", \"zeta\", \"braceleft\", \"bar\", \"braceright\", \"similar\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"Euro\", \"Upsilon1\", \"minute\", \"lessequal\", \"fraction\", \"infinity\", \"florin\", \"club\", \"diamond\", \"heart\", \"spade\", \"arrowboth\", \"arrowleft\", \"arrowup\", \"arrowright\", \"arrowdown\", \"degree\", \"plusminus\", \"second\", \"greaterequal\", \"multiply\", \"proportional\", \"partialdiff\", \"bullet\", \"divide\", \"notequal\", \"equivalence\", \"approxequal\", \"ellipsis\", \"arrowvertex\", \"arrowhorizex\", \"carriagereturn\", \"aleph\", \"Ifraktur\", \"Rfraktur\", \"weierstrass\", \"circlemultiply\", \"circleplus\", \"emptyset\", \"intersection\", \"union\", \"propersuperset\", \"reflexsuperset\", \"notsubset\", \"propersubset\", \"reflexsubset\", \"element\", \"notelement\", \"angle\", \"gradient\", \"registerserif\", \"copyrightserif\", \"trademarkserif\", \"product\", \"radical\", \"dotmath\", \"logicalnot\", \"logicaland\", \"logicalor\", \"arrowdblboth\", \"arrowdblleft\", \"arrowdblup\", \"arrowdblright\", \"arrowdbldown\", \"lozenge\", \"angleleft\", \"registersans\", \"copyrightsans\", \"trademarksans\", \"summation\", \"parenlefttp\", \"parenleftex\", \"parenleftbt\", \"bracketlefttp\", \"bracketleftex\", \"bracketleftbt\", \"bracelefttp\", \"braceleftmid\", \"braceleftbt\", \"braceex\", \"\", \"angleright\", \"integral\", \"integraltp\", \"integralex\", \"integralbt\", \"parenrighttp\", \"parenrightex\", \"parenrightbt\", \"bracketrighttp\", \"bracketrightex\", \"bracketrightbt\", \"bracerighttp\", \"bracerightmid\", \"bracerightbt\", \"\"];\nexports.SymbolSetEncoding = SymbolSetEncoding;\nconst ZapfDingbatsEncoding = [\"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"space\", \"a1\", \"a2\", \"a202\", \"a3\", \"a4\", \"a5\", \"a119\", \"a118\", \"a117\", \"a11\", \"a12\", \"a13\", \"a14\", \"a15\", \"a16\", \"a105\", \"a17\", \"a18\", \"a19\", \"a20\", \"a21\", \"a22\", \"a23\", \"a24\", \"a25\", \"a26\", \"a27\", \"a28\", \"a6\", \"a7\", \"a8\", \"a9\", \"a10\", \"a29\", \"a30\", \"a31\", \"a32\", \"a33\", \"a34\", \"a35\", \"a36\", \"a37\", \"a38\", \"a39\", \"a40\", \"a41\", \"a42\", \"a43\", \"a44\", \"a45\", \"a46\", \"a47\", \"a48\", \"a49\", \"a50\", \"a51\", \"a52\", \"a53\", \"a54\", \"a55\", \"a56\", \"a57\", \"a58\", \"a59\", \"a60\", \"a61\", \"a62\", \"a63\", \"a64\", \"a65\", \"a66\", \"a67\", \"a68\", \"a69\", \"a70\", \"a71\", \"a72\", \"a73\", \"a74\", \"a203\", \"a75\", \"a204\", \"a76\", \"a77\", \"a78\", \"a79\", \"a81\", \"a82\", \"a83\", \"a84\", \"a97\", \"a98\", \"a99\", \"a100\", \"\", \"a89\", \"a90\", \"a93\", \"a94\", \"a91\", \"a92\", \"a205\", \"a85\", \"a206\", \"a86\", \"a87\", \"a88\", \"a95\", \"a96\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"\", \"a101\", \"a102\", \"a103\", \"a104\", \"a106\", \"a107\", \"a108\", \"a112\", \"a111\", \"a110\", \"a109\", \"a120\", \"a121\", \"a122\", \"a123\", \"a124\", \"a125\", \"a126\", \"a127\", \"a128\", \"a129\", \"a130\", \"a131\", \"a132\", \"a133\", \"a134\", \"a135\", \"a136\", \"a137\", \"a138\", \"a139\", \"a140\", \"a141\", \"a142\", \"a143\", \"a144\", \"a145\", \"a146\", \"a147\", \"a148\", \"a149\", \"a150\", \"a151\", \"a152\", \"a153\", \"a154\", \"a155\", \"a156\", \"a157\", \"a158\", \"a159\", \"a160\", \"a161\", \"a163\", \"a164\", \"a196\", \"a165\", \"a192\", \"a166\", \"a167\", \"a168\", \"a169\", \"a170\", \"a171\", \"a172\", \"a173\", \"a162\", \"a174\", \"a175\", \"a176\", \"a177\", \"a178\", \"a179\", \"a193\", \"a180\", \"a199\", \"a181\", \"a200\", \"a182\", \"\", \"a201\", \"a183\", \"a184\", \"a197\", \"a185\", \"a194\", \"a198\", \"a186\", \"a195\", \"a187\", \"a188\", \"a189\", \"a190\", \"a191\", \"\"];\nexports.ZapfDingbatsEncoding = ZapfDingbatsEncoding;\nfunction getEncoding(encodingName) {\n switch (encodingName) {\n case \"WinAnsiEncoding\":\n return WinAnsiEncoding;\n case \"StandardEncoding\":\n return StandardEncoding;\n case \"MacRomanEncoding\":\n return MacRomanEncoding;\n case \"SymbolSetEncoding\":\n return SymbolSetEncoding;\n case \"ZapfDingbatsEncoding\":\n return ZapfDingbatsEncoding;\n case \"ExpertEncoding\":\n return ExpertEncoding;\n case \"MacExpertEncoding\":\n return MacExpertEncoding;\n default:\n return null;\n }\n}\n\n/***/ }),\n/* 38 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SEAC_ANALYSIS_ENABLED = exports.MacStandardGlyphOrdering = exports.FontFlags = void 0;\nexports.normalizeFontName = normalizeFontName;\nexports.recoverGlyphName = recoverGlyphName;\nexports.type1FontGlyphMapping = type1FontGlyphMapping;\nvar _encodings = __w_pdfjs_require__(37);\nvar _glyphlist = __w_pdfjs_require__(39);\nvar _unicode = __w_pdfjs_require__(40);\nvar _util = __w_pdfjs_require__(2);\nconst SEAC_ANALYSIS_ENABLED = true;\nexports.SEAC_ANALYSIS_ENABLED = SEAC_ANALYSIS_ENABLED;\nconst FontFlags = {\n FixedPitch: 1,\n Serif: 2,\n Symbolic: 4,\n Script: 8,\n Nonsymbolic: 32,\n Italic: 64,\n AllCap: 65536,\n SmallCap: 131072,\n ForceBold: 262144\n};\nexports.FontFlags = FontFlags;\nconst MacStandardGlyphOrdering = [\".notdef\", \".null\", \"nonmarkingreturn\", \"space\", \"exclam\", \"quotedbl\", \"numbersign\", \"dollar\", \"percent\", \"ampersand\", \"quotesingle\", \"parenleft\", \"parenright\", \"asterisk\", \"plus\", \"comma\", \"hyphen\", \"period\", \"slash\", \"zero\", \"one\", \"two\", \"three\", \"four\", \"five\", \"six\", \"seven\", \"eight\", \"nine\", \"colon\", \"semicolon\", \"less\", \"equal\", \"greater\", \"question\", \"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\", \"bracketleft\", \"backslash\", \"bracketright\", \"asciicircum\", \"underscore\", \"grave\", \"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\", \"braceleft\", \"bar\", \"braceright\", \"asciitilde\", \"Adieresis\", \"Aring\", \"Ccedilla\", \"Eacute\", \"Ntilde\", \"Odieresis\", \"Udieresis\", \"aacute\", \"agrave\", \"acircumflex\", \"adieresis\", \"atilde\", \"aring\", \"ccedilla\", \"eacute\", \"egrave\", \"ecircumflex\", \"edieresis\", \"iacute\", \"igrave\", \"icircumflex\", \"idieresis\", \"ntilde\", \"oacute\", \"ograve\", \"ocircumflex\", \"odieresis\", \"otilde\", \"uacute\", \"ugrave\", \"ucircumflex\", \"udieresis\", \"dagger\", \"degree\", \"cent\", \"sterling\", \"section\", \"bullet\", \"paragraph\", \"germandbls\", \"registered\", \"copyright\", \"trademark\", \"acute\", \"dieresis\", \"notequal\", \"AE\", \"Oslash\", \"infinity\", \"plusminus\", \"lessequal\", \"greaterequal\", \"yen\", \"mu\", \"partialdiff\", \"summation\", \"product\", \"pi\", \"integral\", \"ordfeminine\", \"ordmasculine\", \"Omega\", \"ae\", \"oslash\", \"questiondown\", \"exclamdown\", \"logicalnot\", \"radical\", \"florin\", \"approxequal\", \"Delta\", \"guillemotleft\", \"guillemotright\", \"ellipsis\", \"nonbreakingspace\", \"Agrave\", \"Atilde\", \"Otilde\", \"OE\", \"oe\", \"endash\", \"emdash\", \"quotedblleft\", \"quotedblright\", \"quoteleft\", \"quoteright\", \"divide\", \"lozenge\", \"ydieresis\", \"Ydieresis\", \"fraction\", \"currency\", \"guilsinglleft\", \"guilsinglright\", \"fi\", \"fl\", \"daggerdbl\", \"periodcentered\", \"quotesinglbase\", \"quotedblbase\", \"perthousand\", \"Acircumflex\", \"Ecircumflex\", \"Aacute\", \"Edieresis\", \"Egrave\", \"Iacute\", \"Icircumflex\", \"Idieresis\", \"Igrave\", \"Oacute\", \"Ocircumflex\", \"apple\", \"Ograve\", \"Uacute\", \"Ucircumflex\", \"Ugrave\", \"dotlessi\", \"circumflex\", \"tilde\", \"macron\", \"breve\", \"dotaccent\", \"ring\", \"cedilla\", \"hungarumlaut\", \"ogonek\", \"caron\", \"Lslash\", \"lslash\", \"Scaron\", \"scaron\", \"Zcaron\", \"zcaron\", \"brokenbar\", \"Eth\", \"eth\", \"Yacute\", \"yacute\", \"Thorn\", \"thorn\", \"minus\", \"multiply\", \"onesuperior\", \"twosuperior\", \"threesuperior\", \"onehalf\", \"onequarter\", \"threequarters\", \"franc\", \"Gbreve\", \"gbreve\", \"Idotaccent\", \"Scedilla\", \"scedilla\", \"Cacute\", \"cacute\", \"Ccaron\", \"ccaron\", \"dcroat\"];\nexports.MacStandardGlyphOrdering = MacStandardGlyphOrdering;\nfunction recoverGlyphName(name, glyphsUnicodeMap) {\n if (glyphsUnicodeMap[name] !== undefined) {\n return name;\n }\n const unicode = (0, _unicode.getUnicodeForGlyph)(name, glyphsUnicodeMap);\n if (unicode !== -1) {\n for (const key in glyphsUnicodeMap) {\n if (glyphsUnicodeMap[key] === unicode) {\n return key;\n }\n }\n }\n (0, _util.info)(\"Unable to recover a standard glyph name for: \" + name);\n return name;\n}\nfunction type1FontGlyphMapping(properties, builtInEncoding, glyphNames) {\n const charCodeToGlyphId = Object.create(null);\n let glyphId, charCode, baseEncoding;\n const isSymbolicFont = !!(properties.flags & FontFlags.Symbolic);\n if (properties.isInternalFont) {\n baseEncoding = builtInEncoding;\n for (charCode = 0; charCode < baseEncoding.length; charCode++) {\n glyphId = glyphNames.indexOf(baseEncoding[charCode]);\n charCodeToGlyphId[charCode] = glyphId >= 0 ? glyphId : 0;\n }\n } else if (properties.baseEncodingName) {\n baseEncoding = (0, _encodings.getEncoding)(properties.baseEncodingName);\n for (charCode = 0; charCode < baseEncoding.length; charCode++) {\n glyphId = glyphNames.indexOf(baseEncoding[charCode]);\n charCodeToGlyphId[charCode] = glyphId >= 0 ? glyphId : 0;\n }\n } else if (isSymbolicFont) {\n for (charCode in builtInEncoding) {\n charCodeToGlyphId[charCode] = builtInEncoding[charCode];\n }\n } else {\n baseEncoding = _encodings.StandardEncoding;\n for (charCode = 0; charCode < baseEncoding.length; charCode++) {\n glyphId = glyphNames.indexOf(baseEncoding[charCode]);\n charCodeToGlyphId[charCode] = glyphId >= 0 ? glyphId : 0;\n }\n }\n const differences = properties.differences;\n let glyphsUnicodeMap;\n if (differences) {\n for (charCode in differences) {\n const glyphName = differences[charCode];\n glyphId = glyphNames.indexOf(glyphName);\n if (glyphId === -1) {\n if (!glyphsUnicodeMap) {\n glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();\n }\n const standardGlyphName = recoverGlyphName(glyphName, glyphsUnicodeMap);\n if (standardGlyphName !== glyphName) {\n glyphId = glyphNames.indexOf(standardGlyphName);\n }\n }\n charCodeToGlyphId[charCode] = glyphId >= 0 ? glyphId : 0;\n }\n }\n return charCodeToGlyphId;\n}\nfunction normalizeFontName(name) {\n return name.replaceAll(/[,_]/g, \"-\").replaceAll(/\\s/g, \"\");\n}\n\n/***/ }),\n/* 39 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getGlyphsUnicode = exports.getDingbatsGlyphsUnicode = void 0;\nvar _core_utils = __w_pdfjs_require__(3);\nconst getGlyphsUnicode = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.A = 0x0041;\n t.AE = 0x00c6;\n t.AEacute = 0x01fc;\n t.AEmacron = 0x01e2;\n t.AEsmall = 0xf7e6;\n t.Aacute = 0x00c1;\n t.Aacutesmall = 0xf7e1;\n t.Abreve = 0x0102;\n t.Abreveacute = 0x1eae;\n t.Abrevecyrillic = 0x04d0;\n t.Abrevedotbelow = 0x1eb6;\n t.Abrevegrave = 0x1eb0;\n t.Abrevehookabove = 0x1eb2;\n t.Abrevetilde = 0x1eb4;\n t.Acaron = 0x01cd;\n t.Acircle = 0x24b6;\n t.Acircumflex = 0x00c2;\n t.Acircumflexacute = 0x1ea4;\n t.Acircumflexdotbelow = 0x1eac;\n t.Acircumflexgrave = 0x1ea6;\n t.Acircumflexhookabove = 0x1ea8;\n t.Acircumflexsmall = 0xf7e2;\n t.Acircumflextilde = 0x1eaa;\n t.Acute = 0xf6c9;\n t.Acutesmall = 0xf7b4;\n t.Acyrillic = 0x0410;\n t.Adblgrave = 0x0200;\n t.Adieresis = 0x00c4;\n t.Adieresiscyrillic = 0x04d2;\n t.Adieresismacron = 0x01de;\n t.Adieresissmall = 0xf7e4;\n t.Adotbelow = 0x1ea0;\n t.Adotmacron = 0x01e0;\n t.Agrave = 0x00c0;\n t.Agravesmall = 0xf7e0;\n t.Ahookabove = 0x1ea2;\n t.Aiecyrillic = 0x04d4;\n t.Ainvertedbreve = 0x0202;\n t.Alpha = 0x0391;\n t.Alphatonos = 0x0386;\n t.Amacron = 0x0100;\n t.Amonospace = 0xff21;\n t.Aogonek = 0x0104;\n t.Aring = 0x00c5;\n t.Aringacute = 0x01fa;\n t.Aringbelow = 0x1e00;\n t.Aringsmall = 0xf7e5;\n t.Asmall = 0xf761;\n t.Atilde = 0x00c3;\n t.Atildesmall = 0xf7e3;\n t.Aybarmenian = 0x0531;\n t.B = 0x0042;\n t.Bcircle = 0x24b7;\n t.Bdotaccent = 0x1e02;\n t.Bdotbelow = 0x1e04;\n t.Becyrillic = 0x0411;\n t.Benarmenian = 0x0532;\n t.Beta = 0x0392;\n t.Bhook = 0x0181;\n t.Blinebelow = 0x1e06;\n t.Bmonospace = 0xff22;\n t.Brevesmall = 0xf6f4;\n t.Bsmall = 0xf762;\n t.Btopbar = 0x0182;\n t.C = 0x0043;\n t.Caarmenian = 0x053e;\n t.Cacute = 0x0106;\n t.Caron = 0xf6ca;\n t.Caronsmall = 0xf6f5;\n t.Ccaron = 0x010c;\n t.Ccedilla = 0x00c7;\n t.Ccedillaacute = 0x1e08;\n t.Ccedillasmall = 0xf7e7;\n t.Ccircle = 0x24b8;\n t.Ccircumflex = 0x0108;\n t.Cdot = 0x010a;\n t.Cdotaccent = 0x010a;\n t.Cedillasmall = 0xf7b8;\n t.Chaarmenian = 0x0549;\n t.Cheabkhasiancyrillic = 0x04bc;\n t.Checyrillic = 0x0427;\n t.Chedescenderabkhasiancyrillic = 0x04be;\n t.Chedescendercyrillic = 0x04b6;\n t.Chedieresiscyrillic = 0x04f4;\n t.Cheharmenian = 0x0543;\n t.Chekhakassiancyrillic = 0x04cb;\n t.Cheverticalstrokecyrillic = 0x04b8;\n t.Chi = 0x03a7;\n t.Chook = 0x0187;\n t.Circumflexsmall = 0xf6f6;\n t.Cmonospace = 0xff23;\n t.Coarmenian = 0x0551;\n t.Csmall = 0xf763;\n t.D = 0x0044;\n t.DZ = 0x01f1;\n t.DZcaron = 0x01c4;\n t.Daarmenian = 0x0534;\n t.Dafrican = 0x0189;\n t.Dcaron = 0x010e;\n t.Dcedilla = 0x1e10;\n t.Dcircle = 0x24b9;\n t.Dcircumflexbelow = 0x1e12;\n t.Dcroat = 0x0110;\n t.Ddotaccent = 0x1e0a;\n t.Ddotbelow = 0x1e0c;\n t.Decyrillic = 0x0414;\n t.Deicoptic = 0x03ee;\n t.Delta = 0x2206;\n t.Deltagreek = 0x0394;\n t.Dhook = 0x018a;\n t.Dieresis = 0xf6cb;\n t.DieresisAcute = 0xf6cc;\n t.DieresisGrave = 0xf6cd;\n t.Dieresissmall = 0xf7a8;\n t.Digammagreek = 0x03dc;\n t.Djecyrillic = 0x0402;\n t.Dlinebelow = 0x1e0e;\n t.Dmonospace = 0xff24;\n t.Dotaccentsmall = 0xf6f7;\n t.Dslash = 0x0110;\n t.Dsmall = 0xf764;\n t.Dtopbar = 0x018b;\n t.Dz = 0x01f2;\n t.Dzcaron = 0x01c5;\n t.Dzeabkhasiancyrillic = 0x04e0;\n t.Dzecyrillic = 0x0405;\n t.Dzhecyrillic = 0x040f;\n t.E = 0x0045;\n t.Eacute = 0x00c9;\n t.Eacutesmall = 0xf7e9;\n t.Ebreve = 0x0114;\n t.Ecaron = 0x011a;\n t.Ecedillabreve = 0x1e1c;\n t.Echarmenian = 0x0535;\n t.Ecircle = 0x24ba;\n t.Ecircumflex = 0x00ca;\n t.Ecircumflexacute = 0x1ebe;\n t.Ecircumflexbelow = 0x1e18;\n t.Ecircumflexdotbelow = 0x1ec6;\n t.Ecircumflexgrave = 0x1ec0;\n t.Ecircumflexhookabove = 0x1ec2;\n t.Ecircumflexsmall = 0xf7ea;\n t.Ecircumflextilde = 0x1ec4;\n t.Ecyrillic = 0x0404;\n t.Edblgrave = 0x0204;\n t.Edieresis = 0x00cb;\n t.Edieresissmall = 0xf7eb;\n t.Edot = 0x0116;\n t.Edotaccent = 0x0116;\n t.Edotbelow = 0x1eb8;\n t.Efcyrillic = 0x0424;\n t.Egrave = 0x00c8;\n t.Egravesmall = 0xf7e8;\n t.Eharmenian = 0x0537;\n t.Ehookabove = 0x1eba;\n t.Eightroman = 0x2167;\n t.Einvertedbreve = 0x0206;\n t.Eiotifiedcyrillic = 0x0464;\n t.Elcyrillic = 0x041b;\n t.Elevenroman = 0x216a;\n t.Emacron = 0x0112;\n t.Emacronacute = 0x1e16;\n t.Emacrongrave = 0x1e14;\n t.Emcyrillic = 0x041c;\n t.Emonospace = 0xff25;\n t.Encyrillic = 0x041d;\n t.Endescendercyrillic = 0x04a2;\n t.Eng = 0x014a;\n t.Enghecyrillic = 0x04a4;\n t.Enhookcyrillic = 0x04c7;\n t.Eogonek = 0x0118;\n t.Eopen = 0x0190;\n t.Epsilon = 0x0395;\n t.Epsilontonos = 0x0388;\n t.Ercyrillic = 0x0420;\n t.Ereversed = 0x018e;\n t.Ereversedcyrillic = 0x042d;\n t.Escyrillic = 0x0421;\n t.Esdescendercyrillic = 0x04aa;\n t.Esh = 0x01a9;\n t.Esmall = 0xf765;\n t.Eta = 0x0397;\n t.Etarmenian = 0x0538;\n t.Etatonos = 0x0389;\n t.Eth = 0x00d0;\n t.Ethsmall = 0xf7f0;\n t.Etilde = 0x1ebc;\n t.Etildebelow = 0x1e1a;\n t.Euro = 0x20ac;\n t.Ezh = 0x01b7;\n t.Ezhcaron = 0x01ee;\n t.Ezhreversed = 0x01b8;\n t.F = 0x0046;\n t.Fcircle = 0x24bb;\n t.Fdotaccent = 0x1e1e;\n t.Feharmenian = 0x0556;\n t.Feicoptic = 0x03e4;\n t.Fhook = 0x0191;\n t.Fitacyrillic = 0x0472;\n t.Fiveroman = 0x2164;\n t.Fmonospace = 0xff26;\n t.Fourroman = 0x2163;\n t.Fsmall = 0xf766;\n t.G = 0x0047;\n t.GBsquare = 0x3387;\n t.Gacute = 0x01f4;\n t.Gamma = 0x0393;\n t.Gammaafrican = 0x0194;\n t.Gangiacoptic = 0x03ea;\n t.Gbreve = 0x011e;\n t.Gcaron = 0x01e6;\n t.Gcedilla = 0x0122;\n t.Gcircle = 0x24bc;\n t.Gcircumflex = 0x011c;\n t.Gcommaaccent = 0x0122;\n t.Gdot = 0x0120;\n t.Gdotaccent = 0x0120;\n t.Gecyrillic = 0x0413;\n t.Ghadarmenian = 0x0542;\n t.Ghemiddlehookcyrillic = 0x0494;\n t.Ghestrokecyrillic = 0x0492;\n t.Gheupturncyrillic = 0x0490;\n t.Ghook = 0x0193;\n t.Gimarmenian = 0x0533;\n t.Gjecyrillic = 0x0403;\n t.Gmacron = 0x1e20;\n t.Gmonospace = 0xff27;\n t.Grave = 0xf6ce;\n t.Gravesmall = 0xf760;\n t.Gsmall = 0xf767;\n t.Gsmallhook = 0x029b;\n t.Gstroke = 0x01e4;\n t.H = 0x0048;\n t.H18533 = 0x25cf;\n t.H18543 = 0x25aa;\n t.H18551 = 0x25ab;\n t.H22073 = 0x25a1;\n t.HPsquare = 0x33cb;\n t.Haabkhasiancyrillic = 0x04a8;\n t.Hadescendercyrillic = 0x04b2;\n t.Hardsigncyrillic = 0x042a;\n t.Hbar = 0x0126;\n t.Hbrevebelow = 0x1e2a;\n t.Hcedilla = 0x1e28;\n t.Hcircle = 0x24bd;\n t.Hcircumflex = 0x0124;\n t.Hdieresis = 0x1e26;\n t.Hdotaccent = 0x1e22;\n t.Hdotbelow = 0x1e24;\n t.Hmonospace = 0xff28;\n t.Hoarmenian = 0x0540;\n t.Horicoptic = 0x03e8;\n t.Hsmall = 0xf768;\n t.Hungarumlaut = 0xf6cf;\n t.Hungarumlautsmall = 0xf6f8;\n t.Hzsquare = 0x3390;\n t.I = 0x0049;\n t.IAcyrillic = 0x042f;\n t.IJ = 0x0132;\n t.IUcyrillic = 0x042e;\n t.Iacute = 0x00cd;\n t.Iacutesmall = 0xf7ed;\n t.Ibreve = 0x012c;\n t.Icaron = 0x01cf;\n t.Icircle = 0x24be;\n t.Icircumflex = 0x00ce;\n t.Icircumflexsmall = 0xf7ee;\n t.Icyrillic = 0x0406;\n t.Idblgrave = 0x0208;\n t.Idieresis = 0x00cf;\n t.Idieresisacute = 0x1e2e;\n t.Idieresiscyrillic = 0x04e4;\n t.Idieresissmall = 0xf7ef;\n t.Idot = 0x0130;\n t.Idotaccent = 0x0130;\n t.Idotbelow = 0x1eca;\n t.Iebrevecyrillic = 0x04d6;\n t.Iecyrillic = 0x0415;\n t.Ifraktur = 0x2111;\n t.Igrave = 0x00cc;\n t.Igravesmall = 0xf7ec;\n t.Ihookabove = 0x1ec8;\n t.Iicyrillic = 0x0418;\n t.Iinvertedbreve = 0x020a;\n t.Iishortcyrillic = 0x0419;\n t.Imacron = 0x012a;\n t.Imacroncyrillic = 0x04e2;\n t.Imonospace = 0xff29;\n t.Iniarmenian = 0x053b;\n t.Iocyrillic = 0x0401;\n t.Iogonek = 0x012e;\n t.Iota = 0x0399;\n t.Iotaafrican = 0x0196;\n t.Iotadieresis = 0x03aa;\n t.Iotatonos = 0x038a;\n t.Ismall = 0xf769;\n t.Istroke = 0x0197;\n t.Itilde = 0x0128;\n t.Itildebelow = 0x1e2c;\n t.Izhitsacyrillic = 0x0474;\n t.Izhitsadblgravecyrillic = 0x0476;\n t.J = 0x004a;\n t.Jaarmenian = 0x0541;\n t.Jcircle = 0x24bf;\n t.Jcircumflex = 0x0134;\n t.Jecyrillic = 0x0408;\n t.Jheharmenian = 0x054b;\n t.Jmonospace = 0xff2a;\n t.Jsmall = 0xf76a;\n t.K = 0x004b;\n t.KBsquare = 0x3385;\n t.KKsquare = 0x33cd;\n t.Kabashkircyrillic = 0x04a0;\n t.Kacute = 0x1e30;\n t.Kacyrillic = 0x041a;\n t.Kadescendercyrillic = 0x049a;\n t.Kahookcyrillic = 0x04c3;\n t.Kappa = 0x039a;\n t.Kastrokecyrillic = 0x049e;\n t.Kaverticalstrokecyrillic = 0x049c;\n t.Kcaron = 0x01e8;\n t.Kcedilla = 0x0136;\n t.Kcircle = 0x24c0;\n t.Kcommaaccent = 0x0136;\n t.Kdotbelow = 0x1e32;\n t.Keharmenian = 0x0554;\n t.Kenarmenian = 0x053f;\n t.Khacyrillic = 0x0425;\n t.Kheicoptic = 0x03e6;\n t.Khook = 0x0198;\n t.Kjecyrillic = 0x040c;\n t.Klinebelow = 0x1e34;\n t.Kmonospace = 0xff2b;\n t.Koppacyrillic = 0x0480;\n t.Koppagreek = 0x03de;\n t.Ksicyrillic = 0x046e;\n t.Ksmall = 0xf76b;\n t.L = 0x004c;\n t.LJ = 0x01c7;\n t.LL = 0xf6bf;\n t.Lacute = 0x0139;\n t.Lambda = 0x039b;\n t.Lcaron = 0x013d;\n t.Lcedilla = 0x013b;\n t.Lcircle = 0x24c1;\n t.Lcircumflexbelow = 0x1e3c;\n t.Lcommaaccent = 0x013b;\n t.Ldot = 0x013f;\n t.Ldotaccent = 0x013f;\n t.Ldotbelow = 0x1e36;\n t.Ldotbelowmacron = 0x1e38;\n t.Liwnarmenian = 0x053c;\n t.Lj = 0x01c8;\n t.Ljecyrillic = 0x0409;\n t.Llinebelow = 0x1e3a;\n t.Lmonospace = 0xff2c;\n t.Lslash = 0x0141;\n t.Lslashsmall = 0xf6f9;\n t.Lsmall = 0xf76c;\n t.M = 0x004d;\n t.MBsquare = 0x3386;\n t.Macron = 0xf6d0;\n t.Macronsmall = 0xf7af;\n t.Macute = 0x1e3e;\n t.Mcircle = 0x24c2;\n t.Mdotaccent = 0x1e40;\n t.Mdotbelow = 0x1e42;\n t.Menarmenian = 0x0544;\n t.Mmonospace = 0xff2d;\n t.Msmall = 0xf76d;\n t.Mturned = 0x019c;\n t.Mu = 0x039c;\n t.N = 0x004e;\n t.NJ = 0x01ca;\n t.Nacute = 0x0143;\n t.Ncaron = 0x0147;\n t.Ncedilla = 0x0145;\n t.Ncircle = 0x24c3;\n t.Ncircumflexbelow = 0x1e4a;\n t.Ncommaaccent = 0x0145;\n t.Ndotaccent = 0x1e44;\n t.Ndotbelow = 0x1e46;\n t.Nhookleft = 0x019d;\n t.Nineroman = 0x2168;\n t.Nj = 0x01cb;\n t.Njecyrillic = 0x040a;\n t.Nlinebelow = 0x1e48;\n t.Nmonospace = 0xff2e;\n t.Nowarmenian = 0x0546;\n t.Nsmall = 0xf76e;\n t.Ntilde = 0x00d1;\n t.Ntildesmall = 0xf7f1;\n t.Nu = 0x039d;\n t.O = 0x004f;\n t.OE = 0x0152;\n t.OEsmall = 0xf6fa;\n t.Oacute = 0x00d3;\n t.Oacutesmall = 0xf7f3;\n t.Obarredcyrillic = 0x04e8;\n t.Obarreddieresiscyrillic = 0x04ea;\n t.Obreve = 0x014e;\n t.Ocaron = 0x01d1;\n t.Ocenteredtilde = 0x019f;\n t.Ocircle = 0x24c4;\n t.Ocircumflex = 0x00d4;\n t.Ocircumflexacute = 0x1ed0;\n t.Ocircumflexdotbelow = 0x1ed8;\n t.Ocircumflexgrave = 0x1ed2;\n t.Ocircumflexhookabove = 0x1ed4;\n t.Ocircumflexsmall = 0xf7f4;\n t.Ocircumflextilde = 0x1ed6;\n t.Ocyrillic = 0x041e;\n t.Odblacute = 0x0150;\n t.Odblgrave = 0x020c;\n t.Odieresis = 0x00d6;\n t.Odieresiscyrillic = 0x04e6;\n t.Odieresissmall = 0xf7f6;\n t.Odotbelow = 0x1ecc;\n t.Ogoneksmall = 0xf6fb;\n t.Ograve = 0x00d2;\n t.Ogravesmall = 0xf7f2;\n t.Oharmenian = 0x0555;\n t.Ohm = 0x2126;\n t.Ohookabove = 0x1ece;\n t.Ohorn = 0x01a0;\n t.Ohornacute = 0x1eda;\n t.Ohorndotbelow = 0x1ee2;\n t.Ohorngrave = 0x1edc;\n t.Ohornhookabove = 0x1ede;\n t.Ohorntilde = 0x1ee0;\n t.Ohungarumlaut = 0x0150;\n t.Oi = 0x01a2;\n t.Oinvertedbreve = 0x020e;\n t.Omacron = 0x014c;\n t.Omacronacute = 0x1e52;\n t.Omacrongrave = 0x1e50;\n t.Omega = 0x2126;\n t.Omegacyrillic = 0x0460;\n t.Omegagreek = 0x03a9;\n t.Omegaroundcyrillic = 0x047a;\n t.Omegatitlocyrillic = 0x047c;\n t.Omegatonos = 0x038f;\n t.Omicron = 0x039f;\n t.Omicrontonos = 0x038c;\n t.Omonospace = 0xff2f;\n t.Oneroman = 0x2160;\n t.Oogonek = 0x01ea;\n t.Oogonekmacron = 0x01ec;\n t.Oopen = 0x0186;\n t.Oslash = 0x00d8;\n t.Oslashacute = 0x01fe;\n t.Oslashsmall = 0xf7f8;\n t.Osmall = 0xf76f;\n t.Ostrokeacute = 0x01fe;\n t.Otcyrillic = 0x047e;\n t.Otilde = 0x00d5;\n t.Otildeacute = 0x1e4c;\n t.Otildedieresis = 0x1e4e;\n t.Otildesmall = 0xf7f5;\n t.P = 0x0050;\n t.Pacute = 0x1e54;\n t.Pcircle = 0x24c5;\n t.Pdotaccent = 0x1e56;\n t.Pecyrillic = 0x041f;\n t.Peharmenian = 0x054a;\n t.Pemiddlehookcyrillic = 0x04a6;\n t.Phi = 0x03a6;\n t.Phook = 0x01a4;\n t.Pi = 0x03a0;\n t.Piwrarmenian = 0x0553;\n t.Pmonospace = 0xff30;\n t.Psi = 0x03a8;\n t.Psicyrillic = 0x0470;\n t.Psmall = 0xf770;\n t.Q = 0x0051;\n t.Qcircle = 0x24c6;\n t.Qmonospace = 0xff31;\n t.Qsmall = 0xf771;\n t.R = 0x0052;\n t.Raarmenian = 0x054c;\n t.Racute = 0x0154;\n t.Rcaron = 0x0158;\n t.Rcedilla = 0x0156;\n t.Rcircle = 0x24c7;\n t.Rcommaaccent = 0x0156;\n t.Rdblgrave = 0x0210;\n t.Rdotaccent = 0x1e58;\n t.Rdotbelow = 0x1e5a;\n t.Rdotbelowmacron = 0x1e5c;\n t.Reharmenian = 0x0550;\n t.Rfraktur = 0x211c;\n t.Rho = 0x03a1;\n t.Ringsmall = 0xf6fc;\n t.Rinvertedbreve = 0x0212;\n t.Rlinebelow = 0x1e5e;\n t.Rmonospace = 0xff32;\n t.Rsmall = 0xf772;\n t.Rsmallinverted = 0x0281;\n t.Rsmallinvertedsuperior = 0x02b6;\n t.S = 0x0053;\n t.SF010000 = 0x250c;\n t.SF020000 = 0x2514;\n t.SF030000 = 0x2510;\n t.SF040000 = 0x2518;\n t.SF050000 = 0x253c;\n t.SF060000 = 0x252c;\n t.SF070000 = 0x2534;\n t.SF080000 = 0x251c;\n t.SF090000 = 0x2524;\n t.SF100000 = 0x2500;\n t.SF110000 = 0x2502;\n t.SF190000 = 0x2561;\n t.SF200000 = 0x2562;\n t.SF210000 = 0x2556;\n t.SF220000 = 0x2555;\n t.SF230000 = 0x2563;\n t.SF240000 = 0x2551;\n t.SF250000 = 0x2557;\n t.SF260000 = 0x255d;\n t.SF270000 = 0x255c;\n t.SF280000 = 0x255b;\n t.SF360000 = 0x255e;\n t.SF370000 = 0x255f;\n t.SF380000 = 0x255a;\n t.SF390000 = 0x2554;\n t.SF400000 = 0x2569;\n t.SF410000 = 0x2566;\n t.SF420000 = 0x2560;\n t.SF430000 = 0x2550;\n t.SF440000 = 0x256c;\n t.SF450000 = 0x2567;\n t.SF460000 = 0x2568;\n t.SF470000 = 0x2564;\n t.SF480000 = 0x2565;\n t.SF490000 = 0x2559;\n t.SF500000 = 0x2558;\n t.SF510000 = 0x2552;\n t.SF520000 = 0x2553;\n t.SF530000 = 0x256b;\n t.SF540000 = 0x256a;\n t.Sacute = 0x015a;\n t.Sacutedotaccent = 0x1e64;\n t.Sampigreek = 0x03e0;\n t.Scaron = 0x0160;\n t.Scarondotaccent = 0x1e66;\n t.Scaronsmall = 0xf6fd;\n t.Scedilla = 0x015e;\n t.Schwa = 0x018f;\n t.Schwacyrillic = 0x04d8;\n t.Schwadieresiscyrillic = 0x04da;\n t.Scircle = 0x24c8;\n t.Scircumflex = 0x015c;\n t.Scommaaccent = 0x0218;\n t.Sdotaccent = 0x1e60;\n t.Sdotbelow = 0x1e62;\n t.Sdotbelowdotaccent = 0x1e68;\n t.Seharmenian = 0x054d;\n t.Sevenroman = 0x2166;\n t.Shaarmenian = 0x0547;\n t.Shacyrillic = 0x0428;\n t.Shchacyrillic = 0x0429;\n t.Sheicoptic = 0x03e2;\n t.Shhacyrillic = 0x04ba;\n t.Shimacoptic = 0x03ec;\n t.Sigma = 0x03a3;\n t.Sixroman = 0x2165;\n t.Smonospace = 0xff33;\n t.Softsigncyrillic = 0x042c;\n t.Ssmall = 0xf773;\n t.Stigmagreek = 0x03da;\n t.T = 0x0054;\n t.Tau = 0x03a4;\n t.Tbar = 0x0166;\n t.Tcaron = 0x0164;\n t.Tcedilla = 0x0162;\n t.Tcircle = 0x24c9;\n t.Tcircumflexbelow = 0x1e70;\n t.Tcommaaccent = 0x0162;\n t.Tdotaccent = 0x1e6a;\n t.Tdotbelow = 0x1e6c;\n t.Tecyrillic = 0x0422;\n t.Tedescendercyrillic = 0x04ac;\n t.Tenroman = 0x2169;\n t.Tetsecyrillic = 0x04b4;\n t.Theta = 0x0398;\n t.Thook = 0x01ac;\n t.Thorn = 0x00de;\n t.Thornsmall = 0xf7fe;\n t.Threeroman = 0x2162;\n t.Tildesmall = 0xf6fe;\n t.Tiwnarmenian = 0x054f;\n t.Tlinebelow = 0x1e6e;\n t.Tmonospace = 0xff34;\n t.Toarmenian = 0x0539;\n t.Tonefive = 0x01bc;\n t.Tonesix = 0x0184;\n t.Tonetwo = 0x01a7;\n t.Tretroflexhook = 0x01ae;\n t.Tsecyrillic = 0x0426;\n t.Tshecyrillic = 0x040b;\n t.Tsmall = 0xf774;\n t.Twelveroman = 0x216b;\n t.Tworoman = 0x2161;\n t.U = 0x0055;\n t.Uacute = 0x00da;\n t.Uacutesmall = 0xf7fa;\n t.Ubreve = 0x016c;\n t.Ucaron = 0x01d3;\n t.Ucircle = 0x24ca;\n t.Ucircumflex = 0x00db;\n t.Ucircumflexbelow = 0x1e76;\n t.Ucircumflexsmall = 0xf7fb;\n t.Ucyrillic = 0x0423;\n t.Udblacute = 0x0170;\n t.Udblgrave = 0x0214;\n t.Udieresis = 0x00dc;\n t.Udieresisacute = 0x01d7;\n t.Udieresisbelow = 0x1e72;\n t.Udieresiscaron = 0x01d9;\n t.Udieresiscyrillic = 0x04f0;\n t.Udieresisgrave = 0x01db;\n t.Udieresismacron = 0x01d5;\n t.Udieresissmall = 0xf7fc;\n t.Udotbelow = 0x1ee4;\n t.Ugrave = 0x00d9;\n t.Ugravesmall = 0xf7f9;\n t.Uhookabove = 0x1ee6;\n t.Uhorn = 0x01af;\n t.Uhornacute = 0x1ee8;\n t.Uhorndotbelow = 0x1ef0;\n t.Uhorngrave = 0x1eea;\n t.Uhornhookabove = 0x1eec;\n t.Uhorntilde = 0x1eee;\n t.Uhungarumlaut = 0x0170;\n t.Uhungarumlautcyrillic = 0x04f2;\n t.Uinvertedbreve = 0x0216;\n t.Ukcyrillic = 0x0478;\n t.Umacron = 0x016a;\n t.Umacroncyrillic = 0x04ee;\n t.Umacrondieresis = 0x1e7a;\n t.Umonospace = 0xff35;\n t.Uogonek = 0x0172;\n t.Upsilon = 0x03a5;\n t.Upsilon1 = 0x03d2;\n t.Upsilonacutehooksymbolgreek = 0x03d3;\n t.Upsilonafrican = 0x01b1;\n t.Upsilondieresis = 0x03ab;\n t.Upsilondieresishooksymbolgreek = 0x03d4;\n t.Upsilonhooksymbol = 0x03d2;\n t.Upsilontonos = 0x038e;\n t.Uring = 0x016e;\n t.Ushortcyrillic = 0x040e;\n t.Usmall = 0xf775;\n t.Ustraightcyrillic = 0x04ae;\n t.Ustraightstrokecyrillic = 0x04b0;\n t.Utilde = 0x0168;\n t.Utildeacute = 0x1e78;\n t.Utildebelow = 0x1e74;\n t.V = 0x0056;\n t.Vcircle = 0x24cb;\n t.Vdotbelow = 0x1e7e;\n t.Vecyrillic = 0x0412;\n t.Vewarmenian = 0x054e;\n t.Vhook = 0x01b2;\n t.Vmonospace = 0xff36;\n t.Voarmenian = 0x0548;\n t.Vsmall = 0xf776;\n t.Vtilde = 0x1e7c;\n t.W = 0x0057;\n t.Wacute = 0x1e82;\n t.Wcircle = 0x24cc;\n t.Wcircumflex = 0x0174;\n t.Wdieresis = 0x1e84;\n t.Wdotaccent = 0x1e86;\n t.Wdotbelow = 0x1e88;\n t.Wgrave = 0x1e80;\n t.Wmonospace = 0xff37;\n t.Wsmall = 0xf777;\n t.X = 0x0058;\n t.Xcircle = 0x24cd;\n t.Xdieresis = 0x1e8c;\n t.Xdotaccent = 0x1e8a;\n t.Xeharmenian = 0x053d;\n t.Xi = 0x039e;\n t.Xmonospace = 0xff38;\n t.Xsmall = 0xf778;\n t.Y = 0x0059;\n t.Yacute = 0x00dd;\n t.Yacutesmall = 0xf7fd;\n t.Yatcyrillic = 0x0462;\n t.Ycircle = 0x24ce;\n t.Ycircumflex = 0x0176;\n t.Ydieresis = 0x0178;\n t.Ydieresissmall = 0xf7ff;\n t.Ydotaccent = 0x1e8e;\n t.Ydotbelow = 0x1ef4;\n t.Yericyrillic = 0x042b;\n t.Yerudieresiscyrillic = 0x04f8;\n t.Ygrave = 0x1ef2;\n t.Yhook = 0x01b3;\n t.Yhookabove = 0x1ef6;\n t.Yiarmenian = 0x0545;\n t.Yicyrillic = 0x0407;\n t.Yiwnarmenian = 0x0552;\n t.Ymonospace = 0xff39;\n t.Ysmall = 0xf779;\n t.Ytilde = 0x1ef8;\n t.Yusbigcyrillic = 0x046a;\n t.Yusbigiotifiedcyrillic = 0x046c;\n t.Yuslittlecyrillic = 0x0466;\n t.Yuslittleiotifiedcyrillic = 0x0468;\n t.Z = 0x005a;\n t.Zaarmenian = 0x0536;\n t.Zacute = 0x0179;\n t.Zcaron = 0x017d;\n t.Zcaronsmall = 0xf6ff;\n t.Zcircle = 0x24cf;\n t.Zcircumflex = 0x1e90;\n t.Zdot = 0x017b;\n t.Zdotaccent = 0x017b;\n t.Zdotbelow = 0x1e92;\n t.Zecyrillic = 0x0417;\n t.Zedescendercyrillic = 0x0498;\n t.Zedieresiscyrillic = 0x04de;\n t.Zeta = 0x0396;\n t.Zhearmenian = 0x053a;\n t.Zhebrevecyrillic = 0x04c1;\n t.Zhecyrillic = 0x0416;\n t.Zhedescendercyrillic = 0x0496;\n t.Zhedieresiscyrillic = 0x04dc;\n t.Zlinebelow = 0x1e94;\n t.Zmonospace = 0xff3a;\n t.Zsmall = 0xf77a;\n t.Zstroke = 0x01b5;\n t.a = 0x0061;\n t.aabengali = 0x0986;\n t.aacute = 0x00e1;\n t.aadeva = 0x0906;\n t.aagujarati = 0x0a86;\n t.aagurmukhi = 0x0a06;\n t.aamatragurmukhi = 0x0a3e;\n t.aarusquare = 0x3303;\n t.aavowelsignbengali = 0x09be;\n t.aavowelsigndeva = 0x093e;\n t.aavowelsigngujarati = 0x0abe;\n t.abbreviationmarkarmenian = 0x055f;\n t.abbreviationsigndeva = 0x0970;\n t.abengali = 0x0985;\n t.abopomofo = 0x311a;\n t.abreve = 0x0103;\n t.abreveacute = 0x1eaf;\n t.abrevecyrillic = 0x04d1;\n t.abrevedotbelow = 0x1eb7;\n t.abrevegrave = 0x1eb1;\n t.abrevehookabove = 0x1eb3;\n t.abrevetilde = 0x1eb5;\n t.acaron = 0x01ce;\n t.acircle = 0x24d0;\n t.acircumflex = 0x00e2;\n t.acircumflexacute = 0x1ea5;\n t.acircumflexdotbelow = 0x1ead;\n t.acircumflexgrave = 0x1ea7;\n t.acircumflexhookabove = 0x1ea9;\n t.acircumflextilde = 0x1eab;\n t.acute = 0x00b4;\n t.acutebelowcmb = 0x0317;\n t.acutecmb = 0x0301;\n t.acutecomb = 0x0301;\n t.acutedeva = 0x0954;\n t.acutelowmod = 0x02cf;\n t.acutetonecmb = 0x0341;\n t.acyrillic = 0x0430;\n t.adblgrave = 0x0201;\n t.addakgurmukhi = 0x0a71;\n t.adeva = 0x0905;\n t.adieresis = 0x00e4;\n t.adieresiscyrillic = 0x04d3;\n t.adieresismacron = 0x01df;\n t.adotbelow = 0x1ea1;\n t.adotmacron = 0x01e1;\n t.ae = 0x00e6;\n t.aeacute = 0x01fd;\n t.aekorean = 0x3150;\n t.aemacron = 0x01e3;\n t.afii00208 = 0x2015;\n t.afii08941 = 0x20a4;\n t.afii10017 = 0x0410;\n t.afii10018 = 0x0411;\n t.afii10019 = 0x0412;\n t.afii10020 = 0x0413;\n t.afii10021 = 0x0414;\n t.afii10022 = 0x0415;\n t.afii10023 = 0x0401;\n t.afii10024 = 0x0416;\n t.afii10025 = 0x0417;\n t.afii10026 = 0x0418;\n t.afii10027 = 0x0419;\n t.afii10028 = 0x041a;\n t.afii10029 = 0x041b;\n t.afii10030 = 0x041c;\n t.afii10031 = 0x041d;\n t.afii10032 = 0x041e;\n t.afii10033 = 0x041f;\n t.afii10034 = 0x0420;\n t.afii10035 = 0x0421;\n t.afii10036 = 0x0422;\n t.afii10037 = 0x0423;\n t.afii10038 = 0x0424;\n t.afii10039 = 0x0425;\n t.afii10040 = 0x0426;\n t.afii10041 = 0x0427;\n t.afii10042 = 0x0428;\n t.afii10043 = 0x0429;\n t.afii10044 = 0x042a;\n t.afii10045 = 0x042b;\n t.afii10046 = 0x042c;\n t.afii10047 = 0x042d;\n t.afii10048 = 0x042e;\n t.afii10049 = 0x042f;\n t.afii10050 = 0x0490;\n t.afii10051 = 0x0402;\n t.afii10052 = 0x0403;\n t.afii10053 = 0x0404;\n t.afii10054 = 0x0405;\n t.afii10055 = 0x0406;\n t.afii10056 = 0x0407;\n t.afii10057 = 0x0408;\n t.afii10058 = 0x0409;\n t.afii10059 = 0x040a;\n t.afii10060 = 0x040b;\n t.afii10061 = 0x040c;\n t.afii10062 = 0x040e;\n t.afii10063 = 0xf6c4;\n t.afii10064 = 0xf6c5;\n t.afii10065 = 0x0430;\n t.afii10066 = 0x0431;\n t.afii10067 = 0x0432;\n t.afii10068 = 0x0433;\n t.afii10069 = 0x0434;\n t.afii10070 = 0x0435;\n t.afii10071 = 0x0451;\n t.afii10072 = 0x0436;\n t.afii10073 = 0x0437;\n t.afii10074 = 0x0438;\n t.afii10075 = 0x0439;\n t.afii10076 = 0x043a;\n t.afii10077 = 0x043b;\n t.afii10078 = 0x043c;\n t.afii10079 = 0x043d;\n t.afii10080 = 0x043e;\n t.afii10081 = 0x043f;\n t.afii10082 = 0x0440;\n t.afii10083 = 0x0441;\n t.afii10084 = 0x0442;\n t.afii10085 = 0x0443;\n t.afii10086 = 0x0444;\n t.afii10087 = 0x0445;\n t.afii10088 = 0x0446;\n t.afii10089 = 0x0447;\n t.afii10090 = 0x0448;\n t.afii10091 = 0x0449;\n t.afii10092 = 0x044a;\n t.afii10093 = 0x044b;\n t.afii10094 = 0x044c;\n t.afii10095 = 0x044d;\n t.afii10096 = 0x044e;\n t.afii10097 = 0x044f;\n t.afii10098 = 0x0491;\n t.afii10099 = 0x0452;\n t.afii10100 = 0x0453;\n t.afii10101 = 0x0454;\n t.afii10102 = 0x0455;\n t.afii10103 = 0x0456;\n t.afii10104 = 0x0457;\n t.afii10105 = 0x0458;\n t.afii10106 = 0x0459;\n t.afii10107 = 0x045a;\n t.afii10108 = 0x045b;\n t.afii10109 = 0x045c;\n t.afii10110 = 0x045e;\n t.afii10145 = 0x040f;\n t.afii10146 = 0x0462;\n t.afii10147 = 0x0472;\n t.afii10148 = 0x0474;\n t.afii10192 = 0xf6c6;\n t.afii10193 = 0x045f;\n t.afii10194 = 0x0463;\n t.afii10195 = 0x0473;\n t.afii10196 = 0x0475;\n t.afii10831 = 0xf6c7;\n t.afii10832 = 0xf6c8;\n t.afii10846 = 0x04d9;\n t.afii299 = 0x200e;\n t.afii300 = 0x200f;\n t.afii301 = 0x200d;\n t.afii57381 = 0x066a;\n t.afii57388 = 0x060c;\n t.afii57392 = 0x0660;\n t.afii57393 = 0x0661;\n t.afii57394 = 0x0662;\n t.afii57395 = 0x0663;\n t.afii57396 = 0x0664;\n t.afii57397 = 0x0665;\n t.afii57398 = 0x0666;\n t.afii57399 = 0x0667;\n t.afii57400 = 0x0668;\n t.afii57401 = 0x0669;\n t.afii57403 = 0x061b;\n t.afii57407 = 0x061f;\n t.afii57409 = 0x0621;\n t.afii57410 = 0x0622;\n t.afii57411 = 0x0623;\n t.afii57412 = 0x0624;\n t.afii57413 = 0x0625;\n t.afii57414 = 0x0626;\n t.afii57415 = 0x0627;\n t.afii57416 = 0x0628;\n t.afii57417 = 0x0629;\n t.afii57418 = 0x062a;\n t.afii57419 = 0x062b;\n t.afii57420 = 0x062c;\n t.afii57421 = 0x062d;\n t.afii57422 = 0x062e;\n t.afii57423 = 0x062f;\n t.afii57424 = 0x0630;\n t.afii57425 = 0x0631;\n t.afii57426 = 0x0632;\n t.afii57427 = 0x0633;\n t.afii57428 = 0x0634;\n t.afii57429 = 0x0635;\n t.afii57430 = 0x0636;\n t.afii57431 = 0x0637;\n t.afii57432 = 0x0638;\n t.afii57433 = 0x0639;\n t.afii57434 = 0x063a;\n t.afii57440 = 0x0640;\n t.afii57441 = 0x0641;\n t.afii57442 = 0x0642;\n t.afii57443 = 0x0643;\n t.afii57444 = 0x0644;\n t.afii57445 = 0x0645;\n t.afii57446 = 0x0646;\n t.afii57448 = 0x0648;\n t.afii57449 = 0x0649;\n t.afii57450 = 0x064a;\n t.afii57451 = 0x064b;\n t.afii57452 = 0x064c;\n t.afii57453 = 0x064d;\n t.afii57454 = 0x064e;\n t.afii57455 = 0x064f;\n t.afii57456 = 0x0650;\n t.afii57457 = 0x0651;\n t.afii57458 = 0x0652;\n t.afii57470 = 0x0647;\n t.afii57505 = 0x06a4;\n t.afii57506 = 0x067e;\n t.afii57507 = 0x0686;\n t.afii57508 = 0x0698;\n t.afii57509 = 0x06af;\n t.afii57511 = 0x0679;\n t.afii57512 = 0x0688;\n t.afii57513 = 0x0691;\n t.afii57514 = 0x06ba;\n t.afii57519 = 0x06d2;\n t.afii57534 = 0x06d5;\n t.afii57636 = 0x20aa;\n t.afii57645 = 0x05be;\n t.afii57658 = 0x05c3;\n t.afii57664 = 0x05d0;\n t.afii57665 = 0x05d1;\n t.afii57666 = 0x05d2;\n t.afii57667 = 0x05d3;\n t.afii57668 = 0x05d4;\n t.afii57669 = 0x05d5;\n t.afii57670 = 0x05d6;\n t.afii57671 = 0x05d7;\n t.afii57672 = 0x05d8;\n t.afii57673 = 0x05d9;\n t.afii57674 = 0x05da;\n t.afii57675 = 0x05db;\n t.afii57676 = 0x05dc;\n t.afii57677 = 0x05dd;\n t.afii57678 = 0x05de;\n t.afii57679 = 0x05df;\n t.afii57680 = 0x05e0;\n t.afii57681 = 0x05e1;\n t.afii57682 = 0x05e2;\n t.afii57683 = 0x05e3;\n t.afii57684 = 0x05e4;\n t.afii57685 = 0x05e5;\n t.afii57686 = 0x05e6;\n t.afii57687 = 0x05e7;\n t.afii57688 = 0x05e8;\n t.afii57689 = 0x05e9;\n t.afii57690 = 0x05ea;\n t.afii57694 = 0xfb2a;\n t.afii57695 = 0xfb2b;\n t.afii57700 = 0xfb4b;\n t.afii57705 = 0xfb1f;\n t.afii57716 = 0x05f0;\n t.afii57717 = 0x05f1;\n t.afii57718 = 0x05f2;\n t.afii57723 = 0xfb35;\n t.afii57793 = 0x05b4;\n t.afii57794 = 0x05b5;\n t.afii57795 = 0x05b6;\n t.afii57796 = 0x05bb;\n t.afii57797 = 0x05b8;\n t.afii57798 = 0x05b7;\n t.afii57799 = 0x05b0;\n t.afii57800 = 0x05b2;\n t.afii57801 = 0x05b1;\n t.afii57802 = 0x05b3;\n t.afii57803 = 0x05c2;\n t.afii57804 = 0x05c1;\n t.afii57806 = 0x05b9;\n t.afii57807 = 0x05bc;\n t.afii57839 = 0x05bd;\n t.afii57841 = 0x05bf;\n t.afii57842 = 0x05c0;\n t.afii57929 = 0x02bc;\n t.afii61248 = 0x2105;\n t.afii61289 = 0x2113;\n t.afii61352 = 0x2116;\n t.afii61573 = 0x202c;\n t.afii61574 = 0x202d;\n t.afii61575 = 0x202e;\n t.afii61664 = 0x200c;\n t.afii63167 = 0x066d;\n t.afii64937 = 0x02bd;\n t.agrave = 0x00e0;\n t.agujarati = 0x0a85;\n t.agurmukhi = 0x0a05;\n t.ahiragana = 0x3042;\n t.ahookabove = 0x1ea3;\n t.aibengali = 0x0990;\n t.aibopomofo = 0x311e;\n t.aideva = 0x0910;\n t.aiecyrillic = 0x04d5;\n t.aigujarati = 0x0a90;\n t.aigurmukhi = 0x0a10;\n t.aimatragurmukhi = 0x0a48;\n t.ainarabic = 0x0639;\n t.ainfinalarabic = 0xfeca;\n t.aininitialarabic = 0xfecb;\n t.ainmedialarabic = 0xfecc;\n t.ainvertedbreve = 0x0203;\n t.aivowelsignbengali = 0x09c8;\n t.aivowelsigndeva = 0x0948;\n t.aivowelsigngujarati = 0x0ac8;\n t.akatakana = 0x30a2;\n t.akatakanahalfwidth = 0xff71;\n t.akorean = 0x314f;\n t.alef = 0x05d0;\n t.alefarabic = 0x0627;\n t.alefdageshhebrew = 0xfb30;\n t.aleffinalarabic = 0xfe8e;\n t.alefhamzaabovearabic = 0x0623;\n t.alefhamzaabovefinalarabic = 0xfe84;\n t.alefhamzabelowarabic = 0x0625;\n t.alefhamzabelowfinalarabic = 0xfe88;\n t.alefhebrew = 0x05d0;\n t.aleflamedhebrew = 0xfb4f;\n t.alefmaddaabovearabic = 0x0622;\n t.alefmaddaabovefinalarabic = 0xfe82;\n t.alefmaksuraarabic = 0x0649;\n t.alefmaksurafinalarabic = 0xfef0;\n t.alefmaksurainitialarabic = 0xfef3;\n t.alefmaksuramedialarabic = 0xfef4;\n t.alefpatahhebrew = 0xfb2e;\n t.alefqamatshebrew = 0xfb2f;\n t.aleph = 0x2135;\n t.allequal = 0x224c;\n t.alpha = 0x03b1;\n t.alphatonos = 0x03ac;\n t.amacron = 0x0101;\n t.amonospace = 0xff41;\n t.ampersand = 0x0026;\n t.ampersandmonospace = 0xff06;\n t.ampersandsmall = 0xf726;\n t.amsquare = 0x33c2;\n t.anbopomofo = 0x3122;\n t.angbopomofo = 0x3124;\n t.angbracketleft = 0x3008;\n t.angbracketright = 0x3009;\n t.angkhankhuthai = 0x0e5a;\n t.angle = 0x2220;\n t.anglebracketleft = 0x3008;\n t.anglebracketleftvertical = 0xfe3f;\n t.anglebracketright = 0x3009;\n t.anglebracketrightvertical = 0xfe40;\n t.angleleft = 0x2329;\n t.angleright = 0x232a;\n t.angstrom = 0x212b;\n t.anoteleia = 0x0387;\n t.anudattadeva = 0x0952;\n t.anusvarabengali = 0x0982;\n t.anusvaradeva = 0x0902;\n t.anusvaragujarati = 0x0a82;\n t.aogonek = 0x0105;\n t.apaatosquare = 0x3300;\n t.aparen = 0x249c;\n t.apostrophearmenian = 0x055a;\n t.apostrophemod = 0x02bc;\n t.apple = 0xf8ff;\n t.approaches = 0x2250;\n t.approxequal = 0x2248;\n t.approxequalorimage = 0x2252;\n t.approximatelyequal = 0x2245;\n t.araeaekorean = 0x318e;\n t.araeakorean = 0x318d;\n t.arc = 0x2312;\n t.arighthalfring = 0x1e9a;\n t.aring = 0x00e5;\n t.aringacute = 0x01fb;\n t.aringbelow = 0x1e01;\n t.arrowboth = 0x2194;\n t.arrowdashdown = 0x21e3;\n t.arrowdashleft = 0x21e0;\n t.arrowdashright = 0x21e2;\n t.arrowdashup = 0x21e1;\n t.arrowdblboth = 0x21d4;\n t.arrowdbldown = 0x21d3;\n t.arrowdblleft = 0x21d0;\n t.arrowdblright = 0x21d2;\n t.arrowdblup = 0x21d1;\n t.arrowdown = 0x2193;\n t.arrowdownleft = 0x2199;\n t.arrowdownright = 0x2198;\n t.arrowdownwhite = 0x21e9;\n t.arrowheaddownmod = 0x02c5;\n t.arrowheadleftmod = 0x02c2;\n t.arrowheadrightmod = 0x02c3;\n t.arrowheadupmod = 0x02c4;\n t.arrowhorizex = 0xf8e7;\n t.arrowleft = 0x2190;\n t.arrowleftdbl = 0x21d0;\n t.arrowleftdblstroke = 0x21cd;\n t.arrowleftoverright = 0x21c6;\n t.arrowleftwhite = 0x21e6;\n t.arrowright = 0x2192;\n t.arrowrightdblstroke = 0x21cf;\n t.arrowrightheavy = 0x279e;\n t.arrowrightoverleft = 0x21c4;\n t.arrowrightwhite = 0x21e8;\n t.arrowtableft = 0x21e4;\n t.arrowtabright = 0x21e5;\n t.arrowup = 0x2191;\n t.arrowupdn = 0x2195;\n t.arrowupdnbse = 0x21a8;\n t.arrowupdownbase = 0x21a8;\n t.arrowupleft = 0x2196;\n t.arrowupleftofdown = 0x21c5;\n t.arrowupright = 0x2197;\n t.arrowupwhite = 0x21e7;\n t.arrowvertex = 0xf8e6;\n t.asciicircum = 0x005e;\n t.asciicircummonospace = 0xff3e;\n t.asciitilde = 0x007e;\n t.asciitildemonospace = 0xff5e;\n t.ascript = 0x0251;\n t.ascriptturned = 0x0252;\n t.asmallhiragana = 0x3041;\n t.asmallkatakana = 0x30a1;\n t.asmallkatakanahalfwidth = 0xff67;\n t.asterisk = 0x002a;\n t.asteriskaltonearabic = 0x066d;\n t.asteriskarabic = 0x066d;\n t.asteriskmath = 0x2217;\n t.asteriskmonospace = 0xff0a;\n t.asterisksmall = 0xfe61;\n t.asterism = 0x2042;\n t.asuperior = 0xf6e9;\n t.asymptoticallyequal = 0x2243;\n t.at = 0x0040;\n t.atilde = 0x00e3;\n t.atmonospace = 0xff20;\n t.atsmall = 0xfe6b;\n t.aturned = 0x0250;\n t.aubengali = 0x0994;\n t.aubopomofo = 0x3120;\n t.audeva = 0x0914;\n t.augujarati = 0x0a94;\n t.augurmukhi = 0x0a14;\n t.aulengthmarkbengali = 0x09d7;\n t.aumatragurmukhi = 0x0a4c;\n t.auvowelsignbengali = 0x09cc;\n t.auvowelsigndeva = 0x094c;\n t.auvowelsigngujarati = 0x0acc;\n t.avagrahadeva = 0x093d;\n t.aybarmenian = 0x0561;\n t.ayin = 0x05e2;\n t.ayinaltonehebrew = 0xfb20;\n t.ayinhebrew = 0x05e2;\n t.b = 0x0062;\n t.babengali = 0x09ac;\n t.backslash = 0x005c;\n t.backslashmonospace = 0xff3c;\n t.badeva = 0x092c;\n t.bagujarati = 0x0aac;\n t.bagurmukhi = 0x0a2c;\n t.bahiragana = 0x3070;\n t.bahtthai = 0x0e3f;\n t.bakatakana = 0x30d0;\n t.bar = 0x007c;\n t.barmonospace = 0xff5c;\n t.bbopomofo = 0x3105;\n t.bcircle = 0x24d1;\n t.bdotaccent = 0x1e03;\n t.bdotbelow = 0x1e05;\n t.beamedsixteenthnotes = 0x266c;\n t.because = 0x2235;\n t.becyrillic = 0x0431;\n t.beharabic = 0x0628;\n t.behfinalarabic = 0xfe90;\n t.behinitialarabic = 0xfe91;\n t.behiragana = 0x3079;\n t.behmedialarabic = 0xfe92;\n t.behmeeminitialarabic = 0xfc9f;\n t.behmeemisolatedarabic = 0xfc08;\n t.behnoonfinalarabic = 0xfc6d;\n t.bekatakana = 0x30d9;\n t.benarmenian = 0x0562;\n t.bet = 0x05d1;\n t.beta = 0x03b2;\n t.betasymbolgreek = 0x03d0;\n t.betdagesh = 0xfb31;\n t.betdageshhebrew = 0xfb31;\n t.bethebrew = 0x05d1;\n t.betrafehebrew = 0xfb4c;\n t.bhabengali = 0x09ad;\n t.bhadeva = 0x092d;\n t.bhagujarati = 0x0aad;\n t.bhagurmukhi = 0x0a2d;\n t.bhook = 0x0253;\n t.bihiragana = 0x3073;\n t.bikatakana = 0x30d3;\n t.bilabialclick = 0x0298;\n t.bindigurmukhi = 0x0a02;\n t.birusquare = 0x3331;\n t.blackcircle = 0x25cf;\n t.blackdiamond = 0x25c6;\n t.blackdownpointingtriangle = 0x25bc;\n t.blackleftpointingpointer = 0x25c4;\n t.blackleftpointingtriangle = 0x25c0;\n t.blacklenticularbracketleft = 0x3010;\n t.blacklenticularbracketleftvertical = 0xfe3b;\n t.blacklenticularbracketright = 0x3011;\n t.blacklenticularbracketrightvertical = 0xfe3c;\n t.blacklowerlefttriangle = 0x25e3;\n t.blacklowerrighttriangle = 0x25e2;\n t.blackrectangle = 0x25ac;\n t.blackrightpointingpointer = 0x25ba;\n t.blackrightpointingtriangle = 0x25b6;\n t.blacksmallsquare = 0x25aa;\n t.blacksmilingface = 0x263b;\n t.blacksquare = 0x25a0;\n t.blackstar = 0x2605;\n t.blackupperlefttriangle = 0x25e4;\n t.blackupperrighttriangle = 0x25e5;\n t.blackuppointingsmalltriangle = 0x25b4;\n t.blackuppointingtriangle = 0x25b2;\n t.blank = 0x2423;\n t.blinebelow = 0x1e07;\n t.block = 0x2588;\n t.bmonospace = 0xff42;\n t.bobaimaithai = 0x0e1a;\n t.bohiragana = 0x307c;\n t.bokatakana = 0x30dc;\n t.bparen = 0x249d;\n t.bqsquare = 0x33c3;\n t.braceex = 0xf8f4;\n t.braceleft = 0x007b;\n t.braceleftbt = 0xf8f3;\n t.braceleftmid = 0xf8f2;\n t.braceleftmonospace = 0xff5b;\n t.braceleftsmall = 0xfe5b;\n t.bracelefttp = 0xf8f1;\n t.braceleftvertical = 0xfe37;\n t.braceright = 0x007d;\n t.bracerightbt = 0xf8fe;\n t.bracerightmid = 0xf8fd;\n t.bracerightmonospace = 0xff5d;\n t.bracerightsmall = 0xfe5c;\n t.bracerighttp = 0xf8fc;\n t.bracerightvertical = 0xfe38;\n t.bracketleft = 0x005b;\n t.bracketleftbt = 0xf8f0;\n t.bracketleftex = 0xf8ef;\n t.bracketleftmonospace = 0xff3b;\n t.bracketlefttp = 0xf8ee;\n t.bracketright = 0x005d;\n t.bracketrightbt = 0xf8fb;\n t.bracketrightex = 0xf8fa;\n t.bracketrightmonospace = 0xff3d;\n t.bracketrighttp = 0xf8f9;\n t.breve = 0x02d8;\n t.brevebelowcmb = 0x032e;\n t.brevecmb = 0x0306;\n t.breveinvertedbelowcmb = 0x032f;\n t.breveinvertedcmb = 0x0311;\n t.breveinverteddoublecmb = 0x0361;\n t.bridgebelowcmb = 0x032a;\n t.bridgeinvertedbelowcmb = 0x033a;\n t.brokenbar = 0x00a6;\n t.bstroke = 0x0180;\n t.bsuperior = 0xf6ea;\n t.btopbar = 0x0183;\n t.buhiragana = 0x3076;\n t.bukatakana = 0x30d6;\n t.bullet = 0x2022;\n t.bulletinverse = 0x25d8;\n t.bulletoperator = 0x2219;\n t.bullseye = 0x25ce;\n t.c = 0x0063;\n t.caarmenian = 0x056e;\n t.cabengali = 0x099a;\n t.cacute = 0x0107;\n t.cadeva = 0x091a;\n t.cagujarati = 0x0a9a;\n t.cagurmukhi = 0x0a1a;\n t.calsquare = 0x3388;\n t.candrabindubengali = 0x0981;\n t.candrabinducmb = 0x0310;\n t.candrabindudeva = 0x0901;\n t.candrabindugujarati = 0x0a81;\n t.capslock = 0x21ea;\n t.careof = 0x2105;\n t.caron = 0x02c7;\n t.caronbelowcmb = 0x032c;\n t.caroncmb = 0x030c;\n t.carriagereturn = 0x21b5;\n t.cbopomofo = 0x3118;\n t.ccaron = 0x010d;\n t.ccedilla = 0x00e7;\n t.ccedillaacute = 0x1e09;\n t.ccircle = 0x24d2;\n t.ccircumflex = 0x0109;\n t.ccurl = 0x0255;\n t.cdot = 0x010b;\n t.cdotaccent = 0x010b;\n t.cdsquare = 0x33c5;\n t.cedilla = 0x00b8;\n t.cedillacmb = 0x0327;\n t.cent = 0x00a2;\n t.centigrade = 0x2103;\n t.centinferior = 0xf6df;\n t.centmonospace = 0xffe0;\n t.centoldstyle = 0xf7a2;\n t.centsuperior = 0xf6e0;\n t.chaarmenian = 0x0579;\n t.chabengali = 0x099b;\n t.chadeva = 0x091b;\n t.chagujarati = 0x0a9b;\n t.chagurmukhi = 0x0a1b;\n t.chbopomofo = 0x3114;\n t.cheabkhasiancyrillic = 0x04bd;\n t.checkmark = 0x2713;\n t.checyrillic = 0x0447;\n t.chedescenderabkhasiancyrillic = 0x04bf;\n t.chedescendercyrillic = 0x04b7;\n t.chedieresiscyrillic = 0x04f5;\n t.cheharmenian = 0x0573;\n t.chekhakassiancyrillic = 0x04cc;\n t.cheverticalstrokecyrillic = 0x04b9;\n t.chi = 0x03c7;\n t.chieuchacirclekorean = 0x3277;\n t.chieuchaparenkorean = 0x3217;\n t.chieuchcirclekorean = 0x3269;\n t.chieuchkorean = 0x314a;\n t.chieuchparenkorean = 0x3209;\n t.chochangthai = 0x0e0a;\n t.chochanthai = 0x0e08;\n t.chochingthai = 0x0e09;\n t.chochoethai = 0x0e0c;\n t.chook = 0x0188;\n t.cieucacirclekorean = 0x3276;\n t.cieucaparenkorean = 0x3216;\n t.cieuccirclekorean = 0x3268;\n t.cieuckorean = 0x3148;\n t.cieucparenkorean = 0x3208;\n t.cieucuparenkorean = 0x321c;\n t.circle = 0x25cb;\n t.circlecopyrt = 0x00a9;\n t.circlemultiply = 0x2297;\n t.circleot = 0x2299;\n t.circleplus = 0x2295;\n t.circlepostalmark = 0x3036;\n t.circlewithlefthalfblack = 0x25d0;\n t.circlewithrighthalfblack = 0x25d1;\n t.circumflex = 0x02c6;\n t.circumflexbelowcmb = 0x032d;\n t.circumflexcmb = 0x0302;\n t.clear = 0x2327;\n t.clickalveolar = 0x01c2;\n t.clickdental = 0x01c0;\n t.clicklateral = 0x01c1;\n t.clickretroflex = 0x01c3;\n t.club = 0x2663;\n t.clubsuitblack = 0x2663;\n t.clubsuitwhite = 0x2667;\n t.cmcubedsquare = 0x33a4;\n t.cmonospace = 0xff43;\n t.cmsquaredsquare = 0x33a0;\n t.coarmenian = 0x0581;\n t.colon = 0x003a;\n t.colonmonetary = 0x20a1;\n t.colonmonospace = 0xff1a;\n t.colonsign = 0x20a1;\n t.colonsmall = 0xfe55;\n t.colontriangularhalfmod = 0x02d1;\n t.colontriangularmod = 0x02d0;\n t.comma = 0x002c;\n t.commaabovecmb = 0x0313;\n t.commaaboverightcmb = 0x0315;\n t.commaaccent = 0xf6c3;\n t.commaarabic = 0x060c;\n t.commaarmenian = 0x055d;\n t.commainferior = 0xf6e1;\n t.commamonospace = 0xff0c;\n t.commareversedabovecmb = 0x0314;\n t.commareversedmod = 0x02bd;\n t.commasmall = 0xfe50;\n t.commasuperior = 0xf6e2;\n t.commaturnedabovecmb = 0x0312;\n t.commaturnedmod = 0x02bb;\n t.compass = 0x263c;\n t.congruent = 0x2245;\n t.contourintegral = 0x222e;\n t.control = 0x2303;\n t.controlACK = 0x0006;\n t.controlBEL = 0x0007;\n t.controlBS = 0x0008;\n t.controlCAN = 0x0018;\n t.controlCR = 0x000d;\n t.controlDC1 = 0x0011;\n t.controlDC2 = 0x0012;\n t.controlDC3 = 0x0013;\n t.controlDC4 = 0x0014;\n t.controlDEL = 0x007f;\n t.controlDLE = 0x0010;\n t.controlEM = 0x0019;\n t.controlENQ = 0x0005;\n t.controlEOT = 0x0004;\n t.controlESC = 0x001b;\n t.controlETB = 0x0017;\n t.controlETX = 0x0003;\n t.controlFF = 0x000c;\n t.controlFS = 0x001c;\n t.controlGS = 0x001d;\n t.controlHT = 0x0009;\n t.controlLF = 0x000a;\n t.controlNAK = 0x0015;\n t.controlNULL = 0x0000;\n t.controlRS = 0x001e;\n t.controlSI = 0x000f;\n t.controlSO = 0x000e;\n t.controlSOT = 0x0002;\n t.controlSTX = 0x0001;\n t.controlSUB = 0x001a;\n t.controlSYN = 0x0016;\n t.controlUS = 0x001f;\n t.controlVT = 0x000b;\n t.copyright = 0x00a9;\n t.copyrightsans = 0xf8e9;\n t.copyrightserif = 0xf6d9;\n t.cornerbracketleft = 0x300c;\n t.cornerbracketlefthalfwidth = 0xff62;\n t.cornerbracketleftvertical = 0xfe41;\n t.cornerbracketright = 0x300d;\n t.cornerbracketrighthalfwidth = 0xff63;\n t.cornerbracketrightvertical = 0xfe42;\n t.corporationsquare = 0x337f;\n t.cosquare = 0x33c7;\n t.coverkgsquare = 0x33c6;\n t.cparen = 0x249e;\n t.cruzeiro = 0x20a2;\n t.cstretched = 0x0297;\n t.curlyand = 0x22cf;\n t.curlyor = 0x22ce;\n t.currency = 0x00a4;\n t.cyrBreve = 0xf6d1;\n t.cyrFlex = 0xf6d2;\n t.cyrbreve = 0xf6d4;\n t.cyrflex = 0xf6d5;\n t.d = 0x0064;\n t.daarmenian = 0x0564;\n t.dabengali = 0x09a6;\n t.dadarabic = 0x0636;\n t.dadeva = 0x0926;\n t.dadfinalarabic = 0xfebe;\n t.dadinitialarabic = 0xfebf;\n t.dadmedialarabic = 0xfec0;\n t.dagesh = 0x05bc;\n t.dageshhebrew = 0x05bc;\n t.dagger = 0x2020;\n t.daggerdbl = 0x2021;\n t.dagujarati = 0x0aa6;\n t.dagurmukhi = 0x0a26;\n t.dahiragana = 0x3060;\n t.dakatakana = 0x30c0;\n t.dalarabic = 0x062f;\n t.dalet = 0x05d3;\n t.daletdagesh = 0xfb33;\n t.daletdageshhebrew = 0xfb33;\n t.dalethebrew = 0x05d3;\n t.dalfinalarabic = 0xfeaa;\n t.dammaarabic = 0x064f;\n t.dammalowarabic = 0x064f;\n t.dammatanaltonearabic = 0x064c;\n t.dammatanarabic = 0x064c;\n t.danda = 0x0964;\n t.dargahebrew = 0x05a7;\n t.dargalefthebrew = 0x05a7;\n t.dasiapneumatacyrilliccmb = 0x0485;\n t.dblGrave = 0xf6d3;\n t.dblanglebracketleft = 0x300a;\n t.dblanglebracketleftvertical = 0xfe3d;\n t.dblanglebracketright = 0x300b;\n t.dblanglebracketrightvertical = 0xfe3e;\n t.dblarchinvertedbelowcmb = 0x032b;\n t.dblarrowleft = 0x21d4;\n t.dblarrowright = 0x21d2;\n t.dbldanda = 0x0965;\n t.dblgrave = 0xf6d6;\n t.dblgravecmb = 0x030f;\n t.dblintegral = 0x222c;\n t.dbllowline = 0x2017;\n t.dbllowlinecmb = 0x0333;\n t.dbloverlinecmb = 0x033f;\n t.dblprimemod = 0x02ba;\n t.dblverticalbar = 0x2016;\n t.dblverticallineabovecmb = 0x030e;\n t.dbopomofo = 0x3109;\n t.dbsquare = 0x33c8;\n t.dcaron = 0x010f;\n t.dcedilla = 0x1e11;\n t.dcircle = 0x24d3;\n t.dcircumflexbelow = 0x1e13;\n t.dcroat = 0x0111;\n t.ddabengali = 0x09a1;\n t.ddadeva = 0x0921;\n t.ddagujarati = 0x0aa1;\n t.ddagurmukhi = 0x0a21;\n t.ddalarabic = 0x0688;\n t.ddalfinalarabic = 0xfb89;\n t.dddhadeva = 0x095c;\n t.ddhabengali = 0x09a2;\n t.ddhadeva = 0x0922;\n t.ddhagujarati = 0x0aa2;\n t.ddhagurmukhi = 0x0a22;\n t.ddotaccent = 0x1e0b;\n t.ddotbelow = 0x1e0d;\n t.decimalseparatorarabic = 0x066b;\n t.decimalseparatorpersian = 0x066b;\n t.decyrillic = 0x0434;\n t.degree = 0x00b0;\n t.dehihebrew = 0x05ad;\n t.dehiragana = 0x3067;\n t.deicoptic = 0x03ef;\n t.dekatakana = 0x30c7;\n t.deleteleft = 0x232b;\n t.deleteright = 0x2326;\n t.delta = 0x03b4;\n t.deltaturned = 0x018d;\n t.denominatorminusonenumeratorbengali = 0x09f8;\n t.dezh = 0x02a4;\n t.dhabengali = 0x09a7;\n t.dhadeva = 0x0927;\n t.dhagujarati = 0x0aa7;\n t.dhagurmukhi = 0x0a27;\n t.dhook = 0x0257;\n t.dialytikatonos = 0x0385;\n t.dialytikatonoscmb = 0x0344;\n t.diamond = 0x2666;\n t.diamondsuitwhite = 0x2662;\n t.dieresis = 0x00a8;\n t.dieresisacute = 0xf6d7;\n t.dieresisbelowcmb = 0x0324;\n t.dieresiscmb = 0x0308;\n t.dieresisgrave = 0xf6d8;\n t.dieresistonos = 0x0385;\n t.dihiragana = 0x3062;\n t.dikatakana = 0x30c2;\n t.dittomark = 0x3003;\n t.divide = 0x00f7;\n t.divides = 0x2223;\n t.divisionslash = 0x2215;\n t.djecyrillic = 0x0452;\n t.dkshade = 0x2593;\n t.dlinebelow = 0x1e0f;\n t.dlsquare = 0x3397;\n t.dmacron = 0x0111;\n t.dmonospace = 0xff44;\n t.dnblock = 0x2584;\n t.dochadathai = 0x0e0e;\n t.dodekthai = 0x0e14;\n t.dohiragana = 0x3069;\n t.dokatakana = 0x30c9;\n t.dollar = 0x0024;\n t.dollarinferior = 0xf6e3;\n t.dollarmonospace = 0xff04;\n t.dollaroldstyle = 0xf724;\n t.dollarsmall = 0xfe69;\n t.dollarsuperior = 0xf6e4;\n t.dong = 0x20ab;\n t.dorusquare = 0x3326;\n t.dotaccent = 0x02d9;\n t.dotaccentcmb = 0x0307;\n t.dotbelowcmb = 0x0323;\n t.dotbelowcomb = 0x0323;\n t.dotkatakana = 0x30fb;\n t.dotlessi = 0x0131;\n t.dotlessj = 0xf6be;\n t.dotlessjstrokehook = 0x0284;\n t.dotmath = 0x22c5;\n t.dottedcircle = 0x25cc;\n t.doubleyodpatah = 0xfb1f;\n t.doubleyodpatahhebrew = 0xfb1f;\n t.downtackbelowcmb = 0x031e;\n t.downtackmod = 0x02d5;\n t.dparen = 0x249f;\n t.dsuperior = 0xf6eb;\n t.dtail = 0x0256;\n t.dtopbar = 0x018c;\n t.duhiragana = 0x3065;\n t.dukatakana = 0x30c5;\n t.dz = 0x01f3;\n t.dzaltone = 0x02a3;\n t.dzcaron = 0x01c6;\n t.dzcurl = 0x02a5;\n t.dzeabkhasiancyrillic = 0x04e1;\n t.dzecyrillic = 0x0455;\n t.dzhecyrillic = 0x045f;\n t.e = 0x0065;\n t.eacute = 0x00e9;\n t.earth = 0x2641;\n t.ebengali = 0x098f;\n t.ebopomofo = 0x311c;\n t.ebreve = 0x0115;\n t.ecandradeva = 0x090d;\n t.ecandragujarati = 0x0a8d;\n t.ecandravowelsigndeva = 0x0945;\n t.ecandravowelsigngujarati = 0x0ac5;\n t.ecaron = 0x011b;\n t.ecedillabreve = 0x1e1d;\n t.echarmenian = 0x0565;\n t.echyiwnarmenian = 0x0587;\n t.ecircle = 0x24d4;\n t.ecircumflex = 0x00ea;\n t.ecircumflexacute = 0x1ebf;\n t.ecircumflexbelow = 0x1e19;\n t.ecircumflexdotbelow = 0x1ec7;\n t.ecircumflexgrave = 0x1ec1;\n t.ecircumflexhookabove = 0x1ec3;\n t.ecircumflextilde = 0x1ec5;\n t.ecyrillic = 0x0454;\n t.edblgrave = 0x0205;\n t.edeva = 0x090f;\n t.edieresis = 0x00eb;\n t.edot = 0x0117;\n t.edotaccent = 0x0117;\n t.edotbelow = 0x1eb9;\n t.eegurmukhi = 0x0a0f;\n t.eematragurmukhi = 0x0a47;\n t.efcyrillic = 0x0444;\n t.egrave = 0x00e8;\n t.egujarati = 0x0a8f;\n t.eharmenian = 0x0567;\n t.ehbopomofo = 0x311d;\n t.ehiragana = 0x3048;\n t.ehookabove = 0x1ebb;\n t.eibopomofo = 0x311f;\n t.eight = 0x0038;\n t.eightarabic = 0x0668;\n t.eightbengali = 0x09ee;\n t.eightcircle = 0x2467;\n t.eightcircleinversesansserif = 0x2791;\n t.eightdeva = 0x096e;\n t.eighteencircle = 0x2471;\n t.eighteenparen = 0x2485;\n t.eighteenperiod = 0x2499;\n t.eightgujarati = 0x0aee;\n t.eightgurmukhi = 0x0a6e;\n t.eighthackarabic = 0x0668;\n t.eighthangzhou = 0x3028;\n t.eighthnotebeamed = 0x266b;\n t.eightideographicparen = 0x3227;\n t.eightinferior = 0x2088;\n t.eightmonospace = 0xff18;\n t.eightoldstyle = 0xf738;\n t.eightparen = 0x247b;\n t.eightperiod = 0x248f;\n t.eightpersian = 0x06f8;\n t.eightroman = 0x2177;\n t.eightsuperior = 0x2078;\n t.eightthai = 0x0e58;\n t.einvertedbreve = 0x0207;\n t.eiotifiedcyrillic = 0x0465;\n t.ekatakana = 0x30a8;\n t.ekatakanahalfwidth = 0xff74;\n t.ekonkargurmukhi = 0x0a74;\n t.ekorean = 0x3154;\n t.elcyrillic = 0x043b;\n t.element = 0x2208;\n t.elevencircle = 0x246a;\n t.elevenparen = 0x247e;\n t.elevenperiod = 0x2492;\n t.elevenroman = 0x217a;\n t.ellipsis = 0x2026;\n t.ellipsisvertical = 0x22ee;\n t.emacron = 0x0113;\n t.emacronacute = 0x1e17;\n t.emacrongrave = 0x1e15;\n t.emcyrillic = 0x043c;\n t.emdash = 0x2014;\n t.emdashvertical = 0xfe31;\n t.emonospace = 0xff45;\n t.emphasismarkarmenian = 0x055b;\n t.emptyset = 0x2205;\n t.enbopomofo = 0x3123;\n t.encyrillic = 0x043d;\n t.endash = 0x2013;\n t.endashvertical = 0xfe32;\n t.endescendercyrillic = 0x04a3;\n t.eng = 0x014b;\n t.engbopomofo = 0x3125;\n t.enghecyrillic = 0x04a5;\n t.enhookcyrillic = 0x04c8;\n t.enspace = 0x2002;\n t.eogonek = 0x0119;\n t.eokorean = 0x3153;\n t.eopen = 0x025b;\n t.eopenclosed = 0x029a;\n t.eopenreversed = 0x025c;\n t.eopenreversedclosed = 0x025e;\n t.eopenreversedhook = 0x025d;\n t.eparen = 0x24a0;\n t.epsilon = 0x03b5;\n t.epsilontonos = 0x03ad;\n t.equal = 0x003d;\n t.equalmonospace = 0xff1d;\n t.equalsmall = 0xfe66;\n t.equalsuperior = 0x207c;\n t.equivalence = 0x2261;\n t.erbopomofo = 0x3126;\n t.ercyrillic = 0x0440;\n t.ereversed = 0x0258;\n t.ereversedcyrillic = 0x044d;\n t.escyrillic = 0x0441;\n t.esdescendercyrillic = 0x04ab;\n t.esh = 0x0283;\n t.eshcurl = 0x0286;\n t.eshortdeva = 0x090e;\n t.eshortvowelsigndeva = 0x0946;\n t.eshreversedloop = 0x01aa;\n t.eshsquatreversed = 0x0285;\n t.esmallhiragana = 0x3047;\n t.esmallkatakana = 0x30a7;\n t.esmallkatakanahalfwidth = 0xff6a;\n t.estimated = 0x212e;\n t.esuperior = 0xf6ec;\n t.eta = 0x03b7;\n t.etarmenian = 0x0568;\n t.etatonos = 0x03ae;\n t.eth = 0x00f0;\n t.etilde = 0x1ebd;\n t.etildebelow = 0x1e1b;\n t.etnahtafoukhhebrew = 0x0591;\n t.etnahtafoukhlefthebrew = 0x0591;\n t.etnahtahebrew = 0x0591;\n t.etnahtalefthebrew = 0x0591;\n t.eturned = 0x01dd;\n t.eukorean = 0x3161;\n t.euro = 0x20ac;\n t.evowelsignbengali = 0x09c7;\n t.evowelsigndeva = 0x0947;\n t.evowelsigngujarati = 0x0ac7;\n t.exclam = 0x0021;\n t.exclamarmenian = 0x055c;\n t.exclamdbl = 0x203c;\n t.exclamdown = 0x00a1;\n t.exclamdownsmall = 0xf7a1;\n t.exclammonospace = 0xff01;\n t.exclamsmall = 0xf721;\n t.existential = 0x2203;\n t.ezh = 0x0292;\n t.ezhcaron = 0x01ef;\n t.ezhcurl = 0x0293;\n t.ezhreversed = 0x01b9;\n t.ezhtail = 0x01ba;\n t.f = 0x0066;\n t.fadeva = 0x095e;\n t.fagurmukhi = 0x0a5e;\n t.fahrenheit = 0x2109;\n t.fathaarabic = 0x064e;\n t.fathalowarabic = 0x064e;\n t.fathatanarabic = 0x064b;\n t.fbopomofo = 0x3108;\n t.fcircle = 0x24d5;\n t.fdotaccent = 0x1e1f;\n t.feharabic = 0x0641;\n t.feharmenian = 0x0586;\n t.fehfinalarabic = 0xfed2;\n t.fehinitialarabic = 0xfed3;\n t.fehmedialarabic = 0xfed4;\n t.feicoptic = 0x03e5;\n t.female = 0x2640;\n t.ff = 0xfb00;\n t.f_f = 0xfb00;\n t.ffi = 0xfb03;\n t.f_f_i = 0xfb03;\n t.ffl = 0xfb04;\n t.f_f_l = 0xfb04;\n t.fi = 0xfb01;\n t.f_i = 0xfb01;\n t.fifteencircle = 0x246e;\n t.fifteenparen = 0x2482;\n t.fifteenperiod = 0x2496;\n t.figuredash = 0x2012;\n t.filledbox = 0x25a0;\n t.filledrect = 0x25ac;\n t.finalkaf = 0x05da;\n t.finalkafdagesh = 0xfb3a;\n t.finalkafdageshhebrew = 0xfb3a;\n t.finalkafhebrew = 0x05da;\n t.finalmem = 0x05dd;\n t.finalmemhebrew = 0x05dd;\n t.finalnun = 0x05df;\n t.finalnunhebrew = 0x05df;\n t.finalpe = 0x05e3;\n t.finalpehebrew = 0x05e3;\n t.finaltsadi = 0x05e5;\n t.finaltsadihebrew = 0x05e5;\n t.firsttonechinese = 0x02c9;\n t.fisheye = 0x25c9;\n t.fitacyrillic = 0x0473;\n t.five = 0x0035;\n t.fivearabic = 0x0665;\n t.fivebengali = 0x09eb;\n t.fivecircle = 0x2464;\n t.fivecircleinversesansserif = 0x278e;\n t.fivedeva = 0x096b;\n t.fiveeighths = 0x215d;\n t.fivegujarati = 0x0aeb;\n t.fivegurmukhi = 0x0a6b;\n t.fivehackarabic = 0x0665;\n t.fivehangzhou = 0x3025;\n t.fiveideographicparen = 0x3224;\n t.fiveinferior = 0x2085;\n t.fivemonospace = 0xff15;\n t.fiveoldstyle = 0xf735;\n t.fiveparen = 0x2478;\n t.fiveperiod = 0x248c;\n t.fivepersian = 0x06f5;\n t.fiveroman = 0x2174;\n t.fivesuperior = 0x2075;\n t.fivethai = 0x0e55;\n t.fl = 0xfb02;\n t.f_l = 0xfb02;\n t.florin = 0x0192;\n t.fmonospace = 0xff46;\n t.fmsquare = 0x3399;\n t.fofanthai = 0x0e1f;\n t.fofathai = 0x0e1d;\n t.fongmanthai = 0x0e4f;\n t.forall = 0x2200;\n t.four = 0x0034;\n t.fourarabic = 0x0664;\n t.fourbengali = 0x09ea;\n t.fourcircle = 0x2463;\n t.fourcircleinversesansserif = 0x278d;\n t.fourdeva = 0x096a;\n t.fourgujarati = 0x0aea;\n t.fourgurmukhi = 0x0a6a;\n t.fourhackarabic = 0x0664;\n t.fourhangzhou = 0x3024;\n t.fourideographicparen = 0x3223;\n t.fourinferior = 0x2084;\n t.fourmonospace = 0xff14;\n t.fournumeratorbengali = 0x09f7;\n t.fouroldstyle = 0xf734;\n t.fourparen = 0x2477;\n t.fourperiod = 0x248b;\n t.fourpersian = 0x06f4;\n t.fourroman = 0x2173;\n t.foursuperior = 0x2074;\n t.fourteencircle = 0x246d;\n t.fourteenparen = 0x2481;\n t.fourteenperiod = 0x2495;\n t.fourthai = 0x0e54;\n t.fourthtonechinese = 0x02cb;\n t.fparen = 0x24a1;\n t.fraction = 0x2044;\n t.franc = 0x20a3;\n t.g = 0x0067;\n t.gabengali = 0x0997;\n t.gacute = 0x01f5;\n t.gadeva = 0x0917;\n t.gafarabic = 0x06af;\n t.gaffinalarabic = 0xfb93;\n t.gafinitialarabic = 0xfb94;\n t.gafmedialarabic = 0xfb95;\n t.gagujarati = 0x0a97;\n t.gagurmukhi = 0x0a17;\n t.gahiragana = 0x304c;\n t.gakatakana = 0x30ac;\n t.gamma = 0x03b3;\n t.gammalatinsmall = 0x0263;\n t.gammasuperior = 0x02e0;\n t.gangiacoptic = 0x03eb;\n t.gbopomofo = 0x310d;\n t.gbreve = 0x011f;\n t.gcaron = 0x01e7;\n t.gcedilla = 0x0123;\n t.gcircle = 0x24d6;\n t.gcircumflex = 0x011d;\n t.gcommaaccent = 0x0123;\n t.gdot = 0x0121;\n t.gdotaccent = 0x0121;\n t.gecyrillic = 0x0433;\n t.gehiragana = 0x3052;\n t.gekatakana = 0x30b2;\n t.geometricallyequal = 0x2251;\n t.gereshaccenthebrew = 0x059c;\n t.gereshhebrew = 0x05f3;\n t.gereshmuqdamhebrew = 0x059d;\n t.germandbls = 0x00df;\n t.gershayimaccenthebrew = 0x059e;\n t.gershayimhebrew = 0x05f4;\n t.getamark = 0x3013;\n t.ghabengali = 0x0998;\n t.ghadarmenian = 0x0572;\n t.ghadeva = 0x0918;\n t.ghagujarati = 0x0a98;\n t.ghagurmukhi = 0x0a18;\n t.ghainarabic = 0x063a;\n t.ghainfinalarabic = 0xfece;\n t.ghaininitialarabic = 0xfecf;\n t.ghainmedialarabic = 0xfed0;\n t.ghemiddlehookcyrillic = 0x0495;\n t.ghestrokecyrillic = 0x0493;\n t.gheupturncyrillic = 0x0491;\n t.ghhadeva = 0x095a;\n t.ghhagurmukhi = 0x0a5a;\n t.ghook = 0x0260;\n t.ghzsquare = 0x3393;\n t.gihiragana = 0x304e;\n t.gikatakana = 0x30ae;\n t.gimarmenian = 0x0563;\n t.gimel = 0x05d2;\n t.gimeldagesh = 0xfb32;\n t.gimeldageshhebrew = 0xfb32;\n t.gimelhebrew = 0x05d2;\n t.gjecyrillic = 0x0453;\n t.glottalinvertedstroke = 0x01be;\n t.glottalstop = 0x0294;\n t.glottalstopinverted = 0x0296;\n t.glottalstopmod = 0x02c0;\n t.glottalstopreversed = 0x0295;\n t.glottalstopreversedmod = 0x02c1;\n t.glottalstopreversedsuperior = 0x02e4;\n t.glottalstopstroke = 0x02a1;\n t.glottalstopstrokereversed = 0x02a2;\n t.gmacron = 0x1e21;\n t.gmonospace = 0xff47;\n t.gohiragana = 0x3054;\n t.gokatakana = 0x30b4;\n t.gparen = 0x24a2;\n t.gpasquare = 0x33ac;\n t.gradient = 0x2207;\n t.grave = 0x0060;\n t.gravebelowcmb = 0x0316;\n t.gravecmb = 0x0300;\n t.gravecomb = 0x0300;\n t.gravedeva = 0x0953;\n t.gravelowmod = 0x02ce;\n t.gravemonospace = 0xff40;\n t.gravetonecmb = 0x0340;\n t.greater = 0x003e;\n t.greaterequal = 0x2265;\n t.greaterequalorless = 0x22db;\n t.greatermonospace = 0xff1e;\n t.greaterorequivalent = 0x2273;\n t.greaterorless = 0x2277;\n t.greateroverequal = 0x2267;\n t.greatersmall = 0xfe65;\n t.gscript = 0x0261;\n t.gstroke = 0x01e5;\n t.guhiragana = 0x3050;\n t.guillemotleft = 0x00ab;\n t.guillemotright = 0x00bb;\n t.guilsinglleft = 0x2039;\n t.guilsinglright = 0x203a;\n t.gukatakana = 0x30b0;\n t.guramusquare = 0x3318;\n t.gysquare = 0x33c9;\n t.h = 0x0068;\n t.haabkhasiancyrillic = 0x04a9;\n t.haaltonearabic = 0x06c1;\n t.habengali = 0x09b9;\n t.hadescendercyrillic = 0x04b3;\n t.hadeva = 0x0939;\n t.hagujarati = 0x0ab9;\n t.hagurmukhi = 0x0a39;\n t.haharabic = 0x062d;\n t.hahfinalarabic = 0xfea2;\n t.hahinitialarabic = 0xfea3;\n t.hahiragana = 0x306f;\n t.hahmedialarabic = 0xfea4;\n t.haitusquare = 0x332a;\n t.hakatakana = 0x30cf;\n t.hakatakanahalfwidth = 0xff8a;\n t.halantgurmukhi = 0x0a4d;\n t.hamzaarabic = 0x0621;\n t.hamzalowarabic = 0x0621;\n t.hangulfiller = 0x3164;\n t.hardsigncyrillic = 0x044a;\n t.harpoonleftbarbup = 0x21bc;\n t.harpoonrightbarbup = 0x21c0;\n t.hasquare = 0x33ca;\n t.hatafpatah = 0x05b2;\n t.hatafpatah16 = 0x05b2;\n t.hatafpatah23 = 0x05b2;\n t.hatafpatah2f = 0x05b2;\n t.hatafpatahhebrew = 0x05b2;\n t.hatafpatahnarrowhebrew = 0x05b2;\n t.hatafpatahquarterhebrew = 0x05b2;\n t.hatafpatahwidehebrew = 0x05b2;\n t.hatafqamats = 0x05b3;\n t.hatafqamats1b = 0x05b3;\n t.hatafqamats28 = 0x05b3;\n t.hatafqamats34 = 0x05b3;\n t.hatafqamatshebrew = 0x05b3;\n t.hatafqamatsnarrowhebrew = 0x05b3;\n t.hatafqamatsquarterhebrew = 0x05b3;\n t.hatafqamatswidehebrew = 0x05b3;\n t.hatafsegol = 0x05b1;\n t.hatafsegol17 = 0x05b1;\n t.hatafsegol24 = 0x05b1;\n t.hatafsegol30 = 0x05b1;\n t.hatafsegolhebrew = 0x05b1;\n t.hatafsegolnarrowhebrew = 0x05b1;\n t.hatafsegolquarterhebrew = 0x05b1;\n t.hatafsegolwidehebrew = 0x05b1;\n t.hbar = 0x0127;\n t.hbopomofo = 0x310f;\n t.hbrevebelow = 0x1e2b;\n t.hcedilla = 0x1e29;\n t.hcircle = 0x24d7;\n t.hcircumflex = 0x0125;\n t.hdieresis = 0x1e27;\n t.hdotaccent = 0x1e23;\n t.hdotbelow = 0x1e25;\n t.he = 0x05d4;\n t.heart = 0x2665;\n t.heartsuitblack = 0x2665;\n t.heartsuitwhite = 0x2661;\n t.hedagesh = 0xfb34;\n t.hedageshhebrew = 0xfb34;\n t.hehaltonearabic = 0x06c1;\n t.heharabic = 0x0647;\n t.hehebrew = 0x05d4;\n t.hehfinalaltonearabic = 0xfba7;\n t.hehfinalalttwoarabic = 0xfeea;\n t.hehfinalarabic = 0xfeea;\n t.hehhamzaabovefinalarabic = 0xfba5;\n t.hehhamzaaboveisolatedarabic = 0xfba4;\n t.hehinitialaltonearabic = 0xfba8;\n t.hehinitialarabic = 0xfeeb;\n t.hehiragana = 0x3078;\n t.hehmedialaltonearabic = 0xfba9;\n t.hehmedialarabic = 0xfeec;\n t.heiseierasquare = 0x337b;\n t.hekatakana = 0x30d8;\n t.hekatakanahalfwidth = 0xff8d;\n t.hekutaarusquare = 0x3336;\n t.henghook = 0x0267;\n t.herutusquare = 0x3339;\n t.het = 0x05d7;\n t.hethebrew = 0x05d7;\n t.hhook = 0x0266;\n t.hhooksuperior = 0x02b1;\n t.hieuhacirclekorean = 0x327b;\n t.hieuhaparenkorean = 0x321b;\n t.hieuhcirclekorean = 0x326d;\n t.hieuhkorean = 0x314e;\n t.hieuhparenkorean = 0x320d;\n t.hihiragana = 0x3072;\n t.hikatakana = 0x30d2;\n t.hikatakanahalfwidth = 0xff8b;\n t.hiriq = 0x05b4;\n t.hiriq14 = 0x05b4;\n t.hiriq21 = 0x05b4;\n t.hiriq2d = 0x05b4;\n t.hiriqhebrew = 0x05b4;\n t.hiriqnarrowhebrew = 0x05b4;\n t.hiriqquarterhebrew = 0x05b4;\n t.hiriqwidehebrew = 0x05b4;\n t.hlinebelow = 0x1e96;\n t.hmonospace = 0xff48;\n t.hoarmenian = 0x0570;\n t.hohipthai = 0x0e2b;\n t.hohiragana = 0x307b;\n t.hokatakana = 0x30db;\n t.hokatakanahalfwidth = 0xff8e;\n t.holam = 0x05b9;\n t.holam19 = 0x05b9;\n t.holam26 = 0x05b9;\n t.holam32 = 0x05b9;\n t.holamhebrew = 0x05b9;\n t.holamnarrowhebrew = 0x05b9;\n t.holamquarterhebrew = 0x05b9;\n t.holamwidehebrew = 0x05b9;\n t.honokhukthai = 0x0e2e;\n t.hookabovecomb = 0x0309;\n t.hookcmb = 0x0309;\n t.hookpalatalizedbelowcmb = 0x0321;\n t.hookretroflexbelowcmb = 0x0322;\n t.hoonsquare = 0x3342;\n t.horicoptic = 0x03e9;\n t.horizontalbar = 0x2015;\n t.horncmb = 0x031b;\n t.hotsprings = 0x2668;\n t.house = 0x2302;\n t.hparen = 0x24a3;\n t.hsuperior = 0x02b0;\n t.hturned = 0x0265;\n t.huhiragana = 0x3075;\n t.huiitosquare = 0x3333;\n t.hukatakana = 0x30d5;\n t.hukatakanahalfwidth = 0xff8c;\n t.hungarumlaut = 0x02dd;\n t.hungarumlautcmb = 0x030b;\n t.hv = 0x0195;\n t.hyphen = 0x002d;\n t.hypheninferior = 0xf6e5;\n t.hyphenmonospace = 0xff0d;\n t.hyphensmall = 0xfe63;\n t.hyphensuperior = 0xf6e6;\n t.hyphentwo = 0x2010;\n t.i = 0x0069;\n t.iacute = 0x00ed;\n t.iacyrillic = 0x044f;\n t.ibengali = 0x0987;\n t.ibopomofo = 0x3127;\n t.ibreve = 0x012d;\n t.icaron = 0x01d0;\n t.icircle = 0x24d8;\n t.icircumflex = 0x00ee;\n t.icyrillic = 0x0456;\n t.idblgrave = 0x0209;\n t.ideographearthcircle = 0x328f;\n t.ideographfirecircle = 0x328b;\n t.ideographicallianceparen = 0x323f;\n t.ideographiccallparen = 0x323a;\n t.ideographiccentrecircle = 0x32a5;\n t.ideographicclose = 0x3006;\n t.ideographiccomma = 0x3001;\n t.ideographiccommaleft = 0xff64;\n t.ideographiccongratulationparen = 0x3237;\n t.ideographiccorrectcircle = 0x32a3;\n t.ideographicearthparen = 0x322f;\n t.ideographicenterpriseparen = 0x323d;\n t.ideographicexcellentcircle = 0x329d;\n t.ideographicfestivalparen = 0x3240;\n t.ideographicfinancialcircle = 0x3296;\n t.ideographicfinancialparen = 0x3236;\n t.ideographicfireparen = 0x322b;\n t.ideographichaveparen = 0x3232;\n t.ideographichighcircle = 0x32a4;\n t.ideographiciterationmark = 0x3005;\n t.ideographiclaborcircle = 0x3298;\n t.ideographiclaborparen = 0x3238;\n t.ideographicleftcircle = 0x32a7;\n t.ideographiclowcircle = 0x32a6;\n t.ideographicmedicinecircle = 0x32a9;\n t.ideographicmetalparen = 0x322e;\n t.ideographicmoonparen = 0x322a;\n t.ideographicnameparen = 0x3234;\n t.ideographicperiod = 0x3002;\n t.ideographicprintcircle = 0x329e;\n t.ideographicreachparen = 0x3243;\n t.ideographicrepresentparen = 0x3239;\n t.ideographicresourceparen = 0x323e;\n t.ideographicrightcircle = 0x32a8;\n t.ideographicsecretcircle = 0x3299;\n t.ideographicselfparen = 0x3242;\n t.ideographicsocietyparen = 0x3233;\n t.ideographicspace = 0x3000;\n t.ideographicspecialparen = 0x3235;\n t.ideographicstockparen = 0x3231;\n t.ideographicstudyparen = 0x323b;\n t.ideographicsunparen = 0x3230;\n t.ideographicsuperviseparen = 0x323c;\n t.ideographicwaterparen = 0x322c;\n t.ideographicwoodparen = 0x322d;\n t.ideographiczero = 0x3007;\n t.ideographmetalcircle = 0x328e;\n t.ideographmooncircle = 0x328a;\n t.ideographnamecircle = 0x3294;\n t.ideographsuncircle = 0x3290;\n t.ideographwatercircle = 0x328c;\n t.ideographwoodcircle = 0x328d;\n t.ideva = 0x0907;\n t.idieresis = 0x00ef;\n t.idieresisacute = 0x1e2f;\n t.idieresiscyrillic = 0x04e5;\n t.idotbelow = 0x1ecb;\n t.iebrevecyrillic = 0x04d7;\n t.iecyrillic = 0x0435;\n t.ieungacirclekorean = 0x3275;\n t.ieungaparenkorean = 0x3215;\n t.ieungcirclekorean = 0x3267;\n t.ieungkorean = 0x3147;\n t.ieungparenkorean = 0x3207;\n t.igrave = 0x00ec;\n t.igujarati = 0x0a87;\n t.igurmukhi = 0x0a07;\n t.ihiragana = 0x3044;\n t.ihookabove = 0x1ec9;\n t.iibengali = 0x0988;\n t.iicyrillic = 0x0438;\n t.iideva = 0x0908;\n t.iigujarati = 0x0a88;\n t.iigurmukhi = 0x0a08;\n t.iimatragurmukhi = 0x0a40;\n t.iinvertedbreve = 0x020b;\n t.iishortcyrillic = 0x0439;\n t.iivowelsignbengali = 0x09c0;\n t.iivowelsigndeva = 0x0940;\n t.iivowelsigngujarati = 0x0ac0;\n t.ij = 0x0133;\n t.ikatakana = 0x30a4;\n t.ikatakanahalfwidth = 0xff72;\n t.ikorean = 0x3163;\n t.ilde = 0x02dc;\n t.iluyhebrew = 0x05ac;\n t.imacron = 0x012b;\n t.imacroncyrillic = 0x04e3;\n t.imageorapproximatelyequal = 0x2253;\n t.imatragurmukhi = 0x0a3f;\n t.imonospace = 0xff49;\n t.increment = 0x2206;\n t.infinity = 0x221e;\n t.iniarmenian = 0x056b;\n t.integral = 0x222b;\n t.integralbottom = 0x2321;\n t.integralbt = 0x2321;\n t.integralex = 0xf8f5;\n t.integraltop = 0x2320;\n t.integraltp = 0x2320;\n t.intersection = 0x2229;\n t.intisquare = 0x3305;\n t.invbullet = 0x25d8;\n t.invcircle = 0x25d9;\n t.invsmileface = 0x263b;\n t.iocyrillic = 0x0451;\n t.iogonek = 0x012f;\n t.iota = 0x03b9;\n t.iotadieresis = 0x03ca;\n t.iotadieresistonos = 0x0390;\n t.iotalatin = 0x0269;\n t.iotatonos = 0x03af;\n t.iparen = 0x24a4;\n t.irigurmukhi = 0x0a72;\n t.ismallhiragana = 0x3043;\n t.ismallkatakana = 0x30a3;\n t.ismallkatakanahalfwidth = 0xff68;\n t.issharbengali = 0x09fa;\n t.istroke = 0x0268;\n t.isuperior = 0xf6ed;\n t.iterationhiragana = 0x309d;\n t.iterationkatakana = 0x30fd;\n t.itilde = 0x0129;\n t.itildebelow = 0x1e2d;\n t.iubopomofo = 0x3129;\n t.iucyrillic = 0x044e;\n t.ivowelsignbengali = 0x09bf;\n t.ivowelsigndeva = 0x093f;\n t.ivowelsigngujarati = 0x0abf;\n t.izhitsacyrillic = 0x0475;\n t.izhitsadblgravecyrillic = 0x0477;\n t.j = 0x006a;\n t.jaarmenian = 0x0571;\n t.jabengali = 0x099c;\n t.jadeva = 0x091c;\n t.jagujarati = 0x0a9c;\n t.jagurmukhi = 0x0a1c;\n t.jbopomofo = 0x3110;\n t.jcaron = 0x01f0;\n t.jcircle = 0x24d9;\n t.jcircumflex = 0x0135;\n t.jcrossedtail = 0x029d;\n t.jdotlessstroke = 0x025f;\n t.jecyrillic = 0x0458;\n t.jeemarabic = 0x062c;\n t.jeemfinalarabic = 0xfe9e;\n t.jeeminitialarabic = 0xfe9f;\n t.jeemmedialarabic = 0xfea0;\n t.jeharabic = 0x0698;\n t.jehfinalarabic = 0xfb8b;\n t.jhabengali = 0x099d;\n t.jhadeva = 0x091d;\n t.jhagujarati = 0x0a9d;\n t.jhagurmukhi = 0x0a1d;\n t.jheharmenian = 0x057b;\n t.jis = 0x3004;\n t.jmonospace = 0xff4a;\n t.jparen = 0x24a5;\n t.jsuperior = 0x02b2;\n t.k = 0x006b;\n t.kabashkircyrillic = 0x04a1;\n t.kabengali = 0x0995;\n t.kacute = 0x1e31;\n t.kacyrillic = 0x043a;\n t.kadescendercyrillic = 0x049b;\n t.kadeva = 0x0915;\n t.kaf = 0x05db;\n t.kafarabic = 0x0643;\n t.kafdagesh = 0xfb3b;\n t.kafdageshhebrew = 0xfb3b;\n t.kaffinalarabic = 0xfeda;\n t.kafhebrew = 0x05db;\n t.kafinitialarabic = 0xfedb;\n t.kafmedialarabic = 0xfedc;\n t.kafrafehebrew = 0xfb4d;\n t.kagujarati = 0x0a95;\n t.kagurmukhi = 0x0a15;\n t.kahiragana = 0x304b;\n t.kahookcyrillic = 0x04c4;\n t.kakatakana = 0x30ab;\n t.kakatakanahalfwidth = 0xff76;\n t.kappa = 0x03ba;\n t.kappasymbolgreek = 0x03f0;\n t.kapyeounmieumkorean = 0x3171;\n t.kapyeounphieuphkorean = 0x3184;\n t.kapyeounpieupkorean = 0x3178;\n t.kapyeounssangpieupkorean = 0x3179;\n t.karoriisquare = 0x330d;\n t.kashidaautoarabic = 0x0640;\n t.kashidaautonosidebearingarabic = 0x0640;\n t.kasmallkatakana = 0x30f5;\n t.kasquare = 0x3384;\n t.kasraarabic = 0x0650;\n t.kasratanarabic = 0x064d;\n t.kastrokecyrillic = 0x049f;\n t.katahiraprolongmarkhalfwidth = 0xff70;\n t.kaverticalstrokecyrillic = 0x049d;\n t.kbopomofo = 0x310e;\n t.kcalsquare = 0x3389;\n t.kcaron = 0x01e9;\n t.kcedilla = 0x0137;\n t.kcircle = 0x24da;\n t.kcommaaccent = 0x0137;\n t.kdotbelow = 0x1e33;\n t.keharmenian = 0x0584;\n t.kehiragana = 0x3051;\n t.kekatakana = 0x30b1;\n t.kekatakanahalfwidth = 0xff79;\n t.kenarmenian = 0x056f;\n t.kesmallkatakana = 0x30f6;\n t.kgreenlandic = 0x0138;\n t.khabengali = 0x0996;\n t.khacyrillic = 0x0445;\n t.khadeva = 0x0916;\n t.khagujarati = 0x0a96;\n t.khagurmukhi = 0x0a16;\n t.khaharabic = 0x062e;\n t.khahfinalarabic = 0xfea6;\n t.khahinitialarabic = 0xfea7;\n t.khahmedialarabic = 0xfea8;\n t.kheicoptic = 0x03e7;\n t.khhadeva = 0x0959;\n t.khhagurmukhi = 0x0a59;\n t.khieukhacirclekorean = 0x3278;\n t.khieukhaparenkorean = 0x3218;\n t.khieukhcirclekorean = 0x326a;\n t.khieukhkorean = 0x314b;\n t.khieukhparenkorean = 0x320a;\n t.khokhaithai = 0x0e02;\n t.khokhonthai = 0x0e05;\n t.khokhuatthai = 0x0e03;\n t.khokhwaithai = 0x0e04;\n t.khomutthai = 0x0e5b;\n t.khook = 0x0199;\n t.khorakhangthai = 0x0e06;\n t.khzsquare = 0x3391;\n t.kihiragana = 0x304d;\n t.kikatakana = 0x30ad;\n t.kikatakanahalfwidth = 0xff77;\n t.kiroguramusquare = 0x3315;\n t.kiromeetorusquare = 0x3316;\n t.kirosquare = 0x3314;\n t.kiyeokacirclekorean = 0x326e;\n t.kiyeokaparenkorean = 0x320e;\n t.kiyeokcirclekorean = 0x3260;\n t.kiyeokkorean = 0x3131;\n t.kiyeokparenkorean = 0x3200;\n t.kiyeoksioskorean = 0x3133;\n t.kjecyrillic = 0x045c;\n t.klinebelow = 0x1e35;\n t.klsquare = 0x3398;\n t.kmcubedsquare = 0x33a6;\n t.kmonospace = 0xff4b;\n t.kmsquaredsquare = 0x33a2;\n t.kohiragana = 0x3053;\n t.kohmsquare = 0x33c0;\n t.kokaithai = 0x0e01;\n t.kokatakana = 0x30b3;\n t.kokatakanahalfwidth = 0xff7a;\n t.kooposquare = 0x331e;\n t.koppacyrillic = 0x0481;\n t.koreanstandardsymbol = 0x327f;\n t.koroniscmb = 0x0343;\n t.kparen = 0x24a6;\n t.kpasquare = 0x33aa;\n t.ksicyrillic = 0x046f;\n t.ktsquare = 0x33cf;\n t.kturned = 0x029e;\n t.kuhiragana = 0x304f;\n t.kukatakana = 0x30af;\n t.kukatakanahalfwidth = 0xff78;\n t.kvsquare = 0x33b8;\n t.kwsquare = 0x33be;\n t.l = 0x006c;\n t.labengali = 0x09b2;\n t.lacute = 0x013a;\n t.ladeva = 0x0932;\n t.lagujarati = 0x0ab2;\n t.lagurmukhi = 0x0a32;\n t.lakkhangyaothai = 0x0e45;\n t.lamaleffinalarabic = 0xfefc;\n t.lamalefhamzaabovefinalarabic = 0xfef8;\n t.lamalefhamzaaboveisolatedarabic = 0xfef7;\n t.lamalefhamzabelowfinalarabic = 0xfefa;\n t.lamalefhamzabelowisolatedarabic = 0xfef9;\n t.lamalefisolatedarabic = 0xfefb;\n t.lamalefmaddaabovefinalarabic = 0xfef6;\n t.lamalefmaddaaboveisolatedarabic = 0xfef5;\n t.lamarabic = 0x0644;\n t.lambda = 0x03bb;\n t.lambdastroke = 0x019b;\n t.lamed = 0x05dc;\n t.lameddagesh = 0xfb3c;\n t.lameddageshhebrew = 0xfb3c;\n t.lamedhebrew = 0x05dc;\n t.lamfinalarabic = 0xfede;\n t.lamhahinitialarabic = 0xfcca;\n t.laminitialarabic = 0xfedf;\n t.lamjeeminitialarabic = 0xfcc9;\n t.lamkhahinitialarabic = 0xfccb;\n t.lamlamhehisolatedarabic = 0xfdf2;\n t.lammedialarabic = 0xfee0;\n t.lammeemhahinitialarabic = 0xfd88;\n t.lammeeminitialarabic = 0xfccc;\n t.largecircle = 0x25ef;\n t.lbar = 0x019a;\n t.lbelt = 0x026c;\n t.lbopomofo = 0x310c;\n t.lcaron = 0x013e;\n t.lcedilla = 0x013c;\n t.lcircle = 0x24db;\n t.lcircumflexbelow = 0x1e3d;\n t.lcommaaccent = 0x013c;\n t.ldot = 0x0140;\n t.ldotaccent = 0x0140;\n t.ldotbelow = 0x1e37;\n t.ldotbelowmacron = 0x1e39;\n t.leftangleabovecmb = 0x031a;\n t.lefttackbelowcmb = 0x0318;\n t.less = 0x003c;\n t.lessequal = 0x2264;\n t.lessequalorgreater = 0x22da;\n t.lessmonospace = 0xff1c;\n t.lessorequivalent = 0x2272;\n t.lessorgreater = 0x2276;\n t.lessoverequal = 0x2266;\n t.lesssmall = 0xfe64;\n t.lezh = 0x026e;\n t.lfblock = 0x258c;\n t.lhookretroflex = 0x026d;\n t.lira = 0x20a4;\n t.liwnarmenian = 0x056c;\n t.lj = 0x01c9;\n t.ljecyrillic = 0x0459;\n t.ll = 0xf6c0;\n t.lladeva = 0x0933;\n t.llagujarati = 0x0ab3;\n t.llinebelow = 0x1e3b;\n t.llladeva = 0x0934;\n t.llvocalicbengali = 0x09e1;\n t.llvocalicdeva = 0x0961;\n t.llvocalicvowelsignbengali = 0x09e3;\n t.llvocalicvowelsigndeva = 0x0963;\n t.lmiddletilde = 0x026b;\n t.lmonospace = 0xff4c;\n t.lmsquare = 0x33d0;\n t.lochulathai = 0x0e2c;\n t.logicaland = 0x2227;\n t.logicalnot = 0x00ac;\n t.logicalnotreversed = 0x2310;\n t.logicalor = 0x2228;\n t.lolingthai = 0x0e25;\n t.longs = 0x017f;\n t.lowlinecenterline = 0xfe4e;\n t.lowlinecmb = 0x0332;\n t.lowlinedashed = 0xfe4d;\n t.lozenge = 0x25ca;\n t.lparen = 0x24a7;\n t.lslash = 0x0142;\n t.lsquare = 0x2113;\n t.lsuperior = 0xf6ee;\n t.ltshade = 0x2591;\n t.luthai = 0x0e26;\n t.lvocalicbengali = 0x098c;\n t.lvocalicdeva = 0x090c;\n t.lvocalicvowelsignbengali = 0x09e2;\n t.lvocalicvowelsigndeva = 0x0962;\n t.lxsquare = 0x33d3;\n t.m = 0x006d;\n t.mabengali = 0x09ae;\n t.macron = 0x00af;\n t.macronbelowcmb = 0x0331;\n t.macroncmb = 0x0304;\n t.macronlowmod = 0x02cd;\n t.macronmonospace = 0xffe3;\n t.macute = 0x1e3f;\n t.madeva = 0x092e;\n t.magujarati = 0x0aae;\n t.magurmukhi = 0x0a2e;\n t.mahapakhhebrew = 0x05a4;\n t.mahapakhlefthebrew = 0x05a4;\n t.mahiragana = 0x307e;\n t.maichattawalowleftthai = 0xf895;\n t.maichattawalowrightthai = 0xf894;\n t.maichattawathai = 0x0e4b;\n t.maichattawaupperleftthai = 0xf893;\n t.maieklowleftthai = 0xf88c;\n t.maieklowrightthai = 0xf88b;\n t.maiekthai = 0x0e48;\n t.maiekupperleftthai = 0xf88a;\n t.maihanakatleftthai = 0xf884;\n t.maihanakatthai = 0x0e31;\n t.maitaikhuleftthai = 0xf889;\n t.maitaikhuthai = 0x0e47;\n t.maitholowleftthai = 0xf88f;\n t.maitholowrightthai = 0xf88e;\n t.maithothai = 0x0e49;\n t.maithoupperleftthai = 0xf88d;\n t.maitrilowleftthai = 0xf892;\n t.maitrilowrightthai = 0xf891;\n t.maitrithai = 0x0e4a;\n t.maitriupperleftthai = 0xf890;\n t.maiyamokthai = 0x0e46;\n t.makatakana = 0x30de;\n t.makatakanahalfwidth = 0xff8f;\n t.male = 0x2642;\n t.mansyonsquare = 0x3347;\n t.maqafhebrew = 0x05be;\n t.mars = 0x2642;\n t.masoracirclehebrew = 0x05af;\n t.masquare = 0x3383;\n t.mbopomofo = 0x3107;\n t.mbsquare = 0x33d4;\n t.mcircle = 0x24dc;\n t.mcubedsquare = 0x33a5;\n t.mdotaccent = 0x1e41;\n t.mdotbelow = 0x1e43;\n t.meemarabic = 0x0645;\n t.meemfinalarabic = 0xfee2;\n t.meeminitialarabic = 0xfee3;\n t.meemmedialarabic = 0xfee4;\n t.meemmeeminitialarabic = 0xfcd1;\n t.meemmeemisolatedarabic = 0xfc48;\n t.meetorusquare = 0x334d;\n t.mehiragana = 0x3081;\n t.meizierasquare = 0x337e;\n t.mekatakana = 0x30e1;\n t.mekatakanahalfwidth = 0xff92;\n t.mem = 0x05de;\n t.memdagesh = 0xfb3e;\n t.memdageshhebrew = 0xfb3e;\n t.memhebrew = 0x05de;\n t.menarmenian = 0x0574;\n t.merkhahebrew = 0x05a5;\n t.merkhakefulahebrew = 0x05a6;\n t.merkhakefulalefthebrew = 0x05a6;\n t.merkhalefthebrew = 0x05a5;\n t.mhook = 0x0271;\n t.mhzsquare = 0x3392;\n t.middledotkatakanahalfwidth = 0xff65;\n t.middot = 0x00b7;\n t.mieumacirclekorean = 0x3272;\n t.mieumaparenkorean = 0x3212;\n t.mieumcirclekorean = 0x3264;\n t.mieumkorean = 0x3141;\n t.mieumpansioskorean = 0x3170;\n t.mieumparenkorean = 0x3204;\n t.mieumpieupkorean = 0x316e;\n t.mieumsioskorean = 0x316f;\n t.mihiragana = 0x307f;\n t.mikatakana = 0x30df;\n t.mikatakanahalfwidth = 0xff90;\n t.minus = 0x2212;\n t.minusbelowcmb = 0x0320;\n t.minuscircle = 0x2296;\n t.minusmod = 0x02d7;\n t.minusplus = 0x2213;\n t.minute = 0x2032;\n t.miribaarusquare = 0x334a;\n t.mirisquare = 0x3349;\n t.mlonglegturned = 0x0270;\n t.mlsquare = 0x3396;\n t.mmcubedsquare = 0x33a3;\n t.mmonospace = 0xff4d;\n t.mmsquaredsquare = 0x339f;\n t.mohiragana = 0x3082;\n t.mohmsquare = 0x33c1;\n t.mokatakana = 0x30e2;\n t.mokatakanahalfwidth = 0xff93;\n t.molsquare = 0x33d6;\n t.momathai = 0x0e21;\n t.moverssquare = 0x33a7;\n t.moverssquaredsquare = 0x33a8;\n t.mparen = 0x24a8;\n t.mpasquare = 0x33ab;\n t.mssquare = 0x33b3;\n t.msuperior = 0xf6ef;\n t.mturned = 0x026f;\n t.mu = 0x00b5;\n t.mu1 = 0x00b5;\n t.muasquare = 0x3382;\n t.muchgreater = 0x226b;\n t.muchless = 0x226a;\n t.mufsquare = 0x338c;\n t.mugreek = 0x03bc;\n t.mugsquare = 0x338d;\n t.muhiragana = 0x3080;\n t.mukatakana = 0x30e0;\n t.mukatakanahalfwidth = 0xff91;\n t.mulsquare = 0x3395;\n t.multiply = 0x00d7;\n t.mumsquare = 0x339b;\n t.munahhebrew = 0x05a3;\n t.munahlefthebrew = 0x05a3;\n t.musicalnote = 0x266a;\n t.musicalnotedbl = 0x266b;\n t.musicflatsign = 0x266d;\n t.musicsharpsign = 0x266f;\n t.mussquare = 0x33b2;\n t.muvsquare = 0x33b6;\n t.muwsquare = 0x33bc;\n t.mvmegasquare = 0x33b9;\n t.mvsquare = 0x33b7;\n t.mwmegasquare = 0x33bf;\n t.mwsquare = 0x33bd;\n t.n = 0x006e;\n t.nabengali = 0x09a8;\n t.nabla = 0x2207;\n t.nacute = 0x0144;\n t.nadeva = 0x0928;\n t.nagujarati = 0x0aa8;\n t.nagurmukhi = 0x0a28;\n t.nahiragana = 0x306a;\n t.nakatakana = 0x30ca;\n t.nakatakanahalfwidth = 0xff85;\n t.napostrophe = 0x0149;\n t.nasquare = 0x3381;\n t.nbopomofo = 0x310b;\n t.nbspace = 0x00a0;\n t.ncaron = 0x0148;\n t.ncedilla = 0x0146;\n t.ncircle = 0x24dd;\n t.ncircumflexbelow = 0x1e4b;\n t.ncommaaccent = 0x0146;\n t.ndotaccent = 0x1e45;\n t.ndotbelow = 0x1e47;\n t.nehiragana = 0x306d;\n t.nekatakana = 0x30cd;\n t.nekatakanahalfwidth = 0xff88;\n t.newsheqelsign = 0x20aa;\n t.nfsquare = 0x338b;\n t.ngabengali = 0x0999;\n t.ngadeva = 0x0919;\n t.ngagujarati = 0x0a99;\n t.ngagurmukhi = 0x0a19;\n t.ngonguthai = 0x0e07;\n t.nhiragana = 0x3093;\n t.nhookleft = 0x0272;\n t.nhookretroflex = 0x0273;\n t.nieunacirclekorean = 0x326f;\n t.nieunaparenkorean = 0x320f;\n t.nieuncieuckorean = 0x3135;\n t.nieuncirclekorean = 0x3261;\n t.nieunhieuhkorean = 0x3136;\n t.nieunkorean = 0x3134;\n t.nieunpansioskorean = 0x3168;\n t.nieunparenkorean = 0x3201;\n t.nieunsioskorean = 0x3167;\n t.nieuntikeutkorean = 0x3166;\n t.nihiragana = 0x306b;\n t.nikatakana = 0x30cb;\n t.nikatakanahalfwidth = 0xff86;\n t.nikhahitleftthai = 0xf899;\n t.nikhahitthai = 0x0e4d;\n t.nine = 0x0039;\n t.ninearabic = 0x0669;\n t.ninebengali = 0x09ef;\n t.ninecircle = 0x2468;\n t.ninecircleinversesansserif = 0x2792;\n t.ninedeva = 0x096f;\n t.ninegujarati = 0x0aef;\n t.ninegurmukhi = 0x0a6f;\n t.ninehackarabic = 0x0669;\n t.ninehangzhou = 0x3029;\n t.nineideographicparen = 0x3228;\n t.nineinferior = 0x2089;\n t.ninemonospace = 0xff19;\n t.nineoldstyle = 0xf739;\n t.nineparen = 0x247c;\n t.nineperiod = 0x2490;\n t.ninepersian = 0x06f9;\n t.nineroman = 0x2178;\n t.ninesuperior = 0x2079;\n t.nineteencircle = 0x2472;\n t.nineteenparen = 0x2486;\n t.nineteenperiod = 0x249a;\n t.ninethai = 0x0e59;\n t.nj = 0x01cc;\n t.njecyrillic = 0x045a;\n t.nkatakana = 0x30f3;\n t.nkatakanahalfwidth = 0xff9d;\n t.nlegrightlong = 0x019e;\n t.nlinebelow = 0x1e49;\n t.nmonospace = 0xff4e;\n t.nmsquare = 0x339a;\n t.nnabengali = 0x09a3;\n t.nnadeva = 0x0923;\n t.nnagujarati = 0x0aa3;\n t.nnagurmukhi = 0x0a23;\n t.nnnadeva = 0x0929;\n t.nohiragana = 0x306e;\n t.nokatakana = 0x30ce;\n t.nokatakanahalfwidth = 0xff89;\n t.nonbreakingspace = 0x00a0;\n t.nonenthai = 0x0e13;\n t.nonuthai = 0x0e19;\n t.noonarabic = 0x0646;\n t.noonfinalarabic = 0xfee6;\n t.noonghunnaarabic = 0x06ba;\n t.noonghunnafinalarabic = 0xfb9f;\n t.nooninitialarabic = 0xfee7;\n t.noonjeeminitialarabic = 0xfcd2;\n t.noonjeemisolatedarabic = 0xfc4b;\n t.noonmedialarabic = 0xfee8;\n t.noonmeeminitialarabic = 0xfcd5;\n t.noonmeemisolatedarabic = 0xfc4e;\n t.noonnoonfinalarabic = 0xfc8d;\n t.notcontains = 0x220c;\n t.notelement = 0x2209;\n t.notelementof = 0x2209;\n t.notequal = 0x2260;\n t.notgreater = 0x226f;\n t.notgreaternorequal = 0x2271;\n t.notgreaternorless = 0x2279;\n t.notidentical = 0x2262;\n t.notless = 0x226e;\n t.notlessnorequal = 0x2270;\n t.notparallel = 0x2226;\n t.notprecedes = 0x2280;\n t.notsubset = 0x2284;\n t.notsucceeds = 0x2281;\n t.notsuperset = 0x2285;\n t.nowarmenian = 0x0576;\n t.nparen = 0x24a9;\n t.nssquare = 0x33b1;\n t.nsuperior = 0x207f;\n t.ntilde = 0x00f1;\n t.nu = 0x03bd;\n t.nuhiragana = 0x306c;\n t.nukatakana = 0x30cc;\n t.nukatakanahalfwidth = 0xff87;\n t.nuktabengali = 0x09bc;\n t.nuktadeva = 0x093c;\n t.nuktagujarati = 0x0abc;\n t.nuktagurmukhi = 0x0a3c;\n t.numbersign = 0x0023;\n t.numbersignmonospace = 0xff03;\n t.numbersignsmall = 0xfe5f;\n t.numeralsigngreek = 0x0374;\n t.numeralsignlowergreek = 0x0375;\n t.numero = 0x2116;\n t.nun = 0x05e0;\n t.nundagesh = 0xfb40;\n t.nundageshhebrew = 0xfb40;\n t.nunhebrew = 0x05e0;\n t.nvsquare = 0x33b5;\n t.nwsquare = 0x33bb;\n t.nyabengali = 0x099e;\n t.nyadeva = 0x091e;\n t.nyagujarati = 0x0a9e;\n t.nyagurmukhi = 0x0a1e;\n t.o = 0x006f;\n t.oacute = 0x00f3;\n t.oangthai = 0x0e2d;\n t.obarred = 0x0275;\n t.obarredcyrillic = 0x04e9;\n t.obarreddieresiscyrillic = 0x04eb;\n t.obengali = 0x0993;\n t.obopomofo = 0x311b;\n t.obreve = 0x014f;\n t.ocandradeva = 0x0911;\n t.ocandragujarati = 0x0a91;\n t.ocandravowelsigndeva = 0x0949;\n t.ocandravowelsigngujarati = 0x0ac9;\n t.ocaron = 0x01d2;\n t.ocircle = 0x24de;\n t.ocircumflex = 0x00f4;\n t.ocircumflexacute = 0x1ed1;\n t.ocircumflexdotbelow = 0x1ed9;\n t.ocircumflexgrave = 0x1ed3;\n t.ocircumflexhookabove = 0x1ed5;\n t.ocircumflextilde = 0x1ed7;\n t.ocyrillic = 0x043e;\n t.odblacute = 0x0151;\n t.odblgrave = 0x020d;\n t.odeva = 0x0913;\n t.odieresis = 0x00f6;\n t.odieresiscyrillic = 0x04e7;\n t.odotbelow = 0x1ecd;\n t.oe = 0x0153;\n t.oekorean = 0x315a;\n t.ogonek = 0x02db;\n t.ogonekcmb = 0x0328;\n t.ograve = 0x00f2;\n t.ogujarati = 0x0a93;\n t.oharmenian = 0x0585;\n t.ohiragana = 0x304a;\n t.ohookabove = 0x1ecf;\n t.ohorn = 0x01a1;\n t.ohornacute = 0x1edb;\n t.ohorndotbelow = 0x1ee3;\n t.ohorngrave = 0x1edd;\n t.ohornhookabove = 0x1edf;\n t.ohorntilde = 0x1ee1;\n t.ohungarumlaut = 0x0151;\n t.oi = 0x01a3;\n t.oinvertedbreve = 0x020f;\n t.okatakana = 0x30aa;\n t.okatakanahalfwidth = 0xff75;\n t.okorean = 0x3157;\n t.olehebrew = 0x05ab;\n t.omacron = 0x014d;\n t.omacronacute = 0x1e53;\n t.omacrongrave = 0x1e51;\n t.omdeva = 0x0950;\n t.omega = 0x03c9;\n t.omega1 = 0x03d6;\n t.omegacyrillic = 0x0461;\n t.omegalatinclosed = 0x0277;\n t.omegaroundcyrillic = 0x047b;\n t.omegatitlocyrillic = 0x047d;\n t.omegatonos = 0x03ce;\n t.omgujarati = 0x0ad0;\n t.omicron = 0x03bf;\n t.omicrontonos = 0x03cc;\n t.omonospace = 0xff4f;\n t.one = 0x0031;\n t.onearabic = 0x0661;\n t.onebengali = 0x09e7;\n t.onecircle = 0x2460;\n t.onecircleinversesansserif = 0x278a;\n t.onedeva = 0x0967;\n t.onedotenleader = 0x2024;\n t.oneeighth = 0x215b;\n t.onefitted = 0xf6dc;\n t.onegujarati = 0x0ae7;\n t.onegurmukhi = 0x0a67;\n t.onehackarabic = 0x0661;\n t.onehalf = 0x00bd;\n t.onehangzhou = 0x3021;\n t.oneideographicparen = 0x3220;\n t.oneinferior = 0x2081;\n t.onemonospace = 0xff11;\n t.onenumeratorbengali = 0x09f4;\n t.oneoldstyle = 0xf731;\n t.oneparen = 0x2474;\n t.oneperiod = 0x2488;\n t.onepersian = 0x06f1;\n t.onequarter = 0x00bc;\n t.oneroman = 0x2170;\n t.onesuperior = 0x00b9;\n t.onethai = 0x0e51;\n t.onethird = 0x2153;\n t.oogonek = 0x01eb;\n t.oogonekmacron = 0x01ed;\n t.oogurmukhi = 0x0a13;\n t.oomatragurmukhi = 0x0a4b;\n t.oopen = 0x0254;\n t.oparen = 0x24aa;\n t.openbullet = 0x25e6;\n t.option = 0x2325;\n t.ordfeminine = 0x00aa;\n t.ordmasculine = 0x00ba;\n t.orthogonal = 0x221f;\n t.oshortdeva = 0x0912;\n t.oshortvowelsigndeva = 0x094a;\n t.oslash = 0x00f8;\n t.oslashacute = 0x01ff;\n t.osmallhiragana = 0x3049;\n t.osmallkatakana = 0x30a9;\n t.osmallkatakanahalfwidth = 0xff6b;\n t.ostrokeacute = 0x01ff;\n t.osuperior = 0xf6f0;\n t.otcyrillic = 0x047f;\n t.otilde = 0x00f5;\n t.otildeacute = 0x1e4d;\n t.otildedieresis = 0x1e4f;\n t.oubopomofo = 0x3121;\n t.overline = 0x203e;\n t.overlinecenterline = 0xfe4a;\n t.overlinecmb = 0x0305;\n t.overlinedashed = 0xfe49;\n t.overlinedblwavy = 0xfe4c;\n t.overlinewavy = 0xfe4b;\n t.overscore = 0x00af;\n t.ovowelsignbengali = 0x09cb;\n t.ovowelsigndeva = 0x094b;\n t.ovowelsigngujarati = 0x0acb;\n t.p = 0x0070;\n t.paampssquare = 0x3380;\n t.paasentosquare = 0x332b;\n t.pabengali = 0x09aa;\n t.pacute = 0x1e55;\n t.padeva = 0x092a;\n t.pagedown = 0x21df;\n t.pageup = 0x21de;\n t.pagujarati = 0x0aaa;\n t.pagurmukhi = 0x0a2a;\n t.pahiragana = 0x3071;\n t.paiyannoithai = 0x0e2f;\n t.pakatakana = 0x30d1;\n t.palatalizationcyrilliccmb = 0x0484;\n t.palochkacyrillic = 0x04c0;\n t.pansioskorean = 0x317f;\n t.paragraph = 0x00b6;\n t.parallel = 0x2225;\n t.parenleft = 0x0028;\n t.parenleftaltonearabic = 0xfd3e;\n t.parenleftbt = 0xf8ed;\n t.parenleftex = 0xf8ec;\n t.parenleftinferior = 0x208d;\n t.parenleftmonospace = 0xff08;\n t.parenleftsmall = 0xfe59;\n t.parenleftsuperior = 0x207d;\n t.parenlefttp = 0xf8eb;\n t.parenleftvertical = 0xfe35;\n t.parenright = 0x0029;\n t.parenrightaltonearabic = 0xfd3f;\n t.parenrightbt = 0xf8f8;\n t.parenrightex = 0xf8f7;\n t.parenrightinferior = 0x208e;\n t.parenrightmonospace = 0xff09;\n t.parenrightsmall = 0xfe5a;\n t.parenrightsuperior = 0x207e;\n t.parenrighttp = 0xf8f6;\n t.parenrightvertical = 0xfe36;\n t.partialdiff = 0x2202;\n t.paseqhebrew = 0x05c0;\n t.pashtahebrew = 0x0599;\n t.pasquare = 0x33a9;\n t.patah = 0x05b7;\n t.patah11 = 0x05b7;\n t.patah1d = 0x05b7;\n t.patah2a = 0x05b7;\n t.patahhebrew = 0x05b7;\n t.patahnarrowhebrew = 0x05b7;\n t.patahquarterhebrew = 0x05b7;\n t.patahwidehebrew = 0x05b7;\n t.pazerhebrew = 0x05a1;\n t.pbopomofo = 0x3106;\n t.pcircle = 0x24df;\n t.pdotaccent = 0x1e57;\n t.pe = 0x05e4;\n t.pecyrillic = 0x043f;\n t.pedagesh = 0xfb44;\n t.pedageshhebrew = 0xfb44;\n t.peezisquare = 0x333b;\n t.pefinaldageshhebrew = 0xfb43;\n t.peharabic = 0x067e;\n t.peharmenian = 0x057a;\n t.pehebrew = 0x05e4;\n t.pehfinalarabic = 0xfb57;\n t.pehinitialarabic = 0xfb58;\n t.pehiragana = 0x307a;\n t.pehmedialarabic = 0xfb59;\n t.pekatakana = 0x30da;\n t.pemiddlehookcyrillic = 0x04a7;\n t.perafehebrew = 0xfb4e;\n t.percent = 0x0025;\n t.percentarabic = 0x066a;\n t.percentmonospace = 0xff05;\n t.percentsmall = 0xfe6a;\n t.period = 0x002e;\n t.periodarmenian = 0x0589;\n t.periodcentered = 0x00b7;\n t.periodhalfwidth = 0xff61;\n t.periodinferior = 0xf6e7;\n t.periodmonospace = 0xff0e;\n t.periodsmall = 0xfe52;\n t.periodsuperior = 0xf6e8;\n t.perispomenigreekcmb = 0x0342;\n t.perpendicular = 0x22a5;\n t.perthousand = 0x2030;\n t.peseta = 0x20a7;\n t.pfsquare = 0x338a;\n t.phabengali = 0x09ab;\n t.phadeva = 0x092b;\n t.phagujarati = 0x0aab;\n t.phagurmukhi = 0x0a2b;\n t.phi = 0x03c6;\n t.phi1 = 0x03d5;\n t.phieuphacirclekorean = 0x327a;\n t.phieuphaparenkorean = 0x321a;\n t.phieuphcirclekorean = 0x326c;\n t.phieuphkorean = 0x314d;\n t.phieuphparenkorean = 0x320c;\n t.philatin = 0x0278;\n t.phinthuthai = 0x0e3a;\n t.phisymbolgreek = 0x03d5;\n t.phook = 0x01a5;\n t.phophanthai = 0x0e1e;\n t.phophungthai = 0x0e1c;\n t.phosamphaothai = 0x0e20;\n t.pi = 0x03c0;\n t.pieupacirclekorean = 0x3273;\n t.pieupaparenkorean = 0x3213;\n t.pieupcieuckorean = 0x3176;\n t.pieupcirclekorean = 0x3265;\n t.pieupkiyeokkorean = 0x3172;\n t.pieupkorean = 0x3142;\n t.pieupparenkorean = 0x3205;\n t.pieupsioskiyeokkorean = 0x3174;\n t.pieupsioskorean = 0x3144;\n t.pieupsiostikeutkorean = 0x3175;\n t.pieupthieuthkorean = 0x3177;\n t.pieuptikeutkorean = 0x3173;\n t.pihiragana = 0x3074;\n t.pikatakana = 0x30d4;\n t.pisymbolgreek = 0x03d6;\n t.piwrarmenian = 0x0583;\n t.planckover2pi = 0x210f;\n t.planckover2pi1 = 0x210f;\n t.plus = 0x002b;\n t.plusbelowcmb = 0x031f;\n t.pluscircle = 0x2295;\n t.plusminus = 0x00b1;\n t.plusmod = 0x02d6;\n t.plusmonospace = 0xff0b;\n t.plussmall = 0xfe62;\n t.plussuperior = 0x207a;\n t.pmonospace = 0xff50;\n t.pmsquare = 0x33d8;\n t.pohiragana = 0x307d;\n t.pointingindexdownwhite = 0x261f;\n t.pointingindexleftwhite = 0x261c;\n t.pointingindexrightwhite = 0x261e;\n t.pointingindexupwhite = 0x261d;\n t.pokatakana = 0x30dd;\n t.poplathai = 0x0e1b;\n t.postalmark = 0x3012;\n t.postalmarkface = 0x3020;\n t.pparen = 0x24ab;\n t.precedes = 0x227a;\n t.prescription = 0x211e;\n t.primemod = 0x02b9;\n t.primereversed = 0x2035;\n t.product = 0x220f;\n t.projective = 0x2305;\n t.prolongedkana = 0x30fc;\n t.propellor = 0x2318;\n t.propersubset = 0x2282;\n t.propersuperset = 0x2283;\n t.proportion = 0x2237;\n t.proportional = 0x221d;\n t.psi = 0x03c8;\n t.psicyrillic = 0x0471;\n t.psilipneumatacyrilliccmb = 0x0486;\n t.pssquare = 0x33b0;\n t.puhiragana = 0x3077;\n t.pukatakana = 0x30d7;\n t.pvsquare = 0x33b4;\n t.pwsquare = 0x33ba;\n t.q = 0x0071;\n t.qadeva = 0x0958;\n t.qadmahebrew = 0x05a8;\n t.qafarabic = 0x0642;\n t.qaffinalarabic = 0xfed6;\n t.qafinitialarabic = 0xfed7;\n t.qafmedialarabic = 0xfed8;\n t.qamats = 0x05b8;\n t.qamats10 = 0x05b8;\n t.qamats1a = 0x05b8;\n t.qamats1c = 0x05b8;\n t.qamats27 = 0x05b8;\n t.qamats29 = 0x05b8;\n t.qamats33 = 0x05b8;\n t.qamatsde = 0x05b8;\n t.qamatshebrew = 0x05b8;\n t.qamatsnarrowhebrew = 0x05b8;\n t.qamatsqatanhebrew = 0x05b8;\n t.qamatsqatannarrowhebrew = 0x05b8;\n t.qamatsqatanquarterhebrew = 0x05b8;\n t.qamatsqatanwidehebrew = 0x05b8;\n t.qamatsquarterhebrew = 0x05b8;\n t.qamatswidehebrew = 0x05b8;\n t.qarneyparahebrew = 0x059f;\n t.qbopomofo = 0x3111;\n t.qcircle = 0x24e0;\n t.qhook = 0x02a0;\n t.qmonospace = 0xff51;\n t.qof = 0x05e7;\n t.qofdagesh = 0xfb47;\n t.qofdageshhebrew = 0xfb47;\n t.qofhebrew = 0x05e7;\n t.qparen = 0x24ac;\n t.quarternote = 0x2669;\n t.qubuts = 0x05bb;\n t.qubuts18 = 0x05bb;\n t.qubuts25 = 0x05bb;\n t.qubuts31 = 0x05bb;\n t.qubutshebrew = 0x05bb;\n t.qubutsnarrowhebrew = 0x05bb;\n t.qubutsquarterhebrew = 0x05bb;\n t.qubutswidehebrew = 0x05bb;\n t.question = 0x003f;\n t.questionarabic = 0x061f;\n t.questionarmenian = 0x055e;\n t.questiondown = 0x00bf;\n t.questiondownsmall = 0xf7bf;\n t.questiongreek = 0x037e;\n t.questionmonospace = 0xff1f;\n t.questionsmall = 0xf73f;\n t.quotedbl = 0x0022;\n t.quotedblbase = 0x201e;\n t.quotedblleft = 0x201c;\n t.quotedblmonospace = 0xff02;\n t.quotedblprime = 0x301e;\n t.quotedblprimereversed = 0x301d;\n t.quotedblright = 0x201d;\n t.quoteleft = 0x2018;\n t.quoteleftreversed = 0x201b;\n t.quotereversed = 0x201b;\n t.quoteright = 0x2019;\n t.quoterightn = 0x0149;\n t.quotesinglbase = 0x201a;\n t.quotesingle = 0x0027;\n t.quotesinglemonospace = 0xff07;\n t.r = 0x0072;\n t.raarmenian = 0x057c;\n t.rabengali = 0x09b0;\n t.racute = 0x0155;\n t.radeva = 0x0930;\n t.radical = 0x221a;\n t.radicalex = 0xf8e5;\n t.radoverssquare = 0x33ae;\n t.radoverssquaredsquare = 0x33af;\n t.radsquare = 0x33ad;\n t.rafe = 0x05bf;\n t.rafehebrew = 0x05bf;\n t.ragujarati = 0x0ab0;\n t.ragurmukhi = 0x0a30;\n t.rahiragana = 0x3089;\n t.rakatakana = 0x30e9;\n t.rakatakanahalfwidth = 0xff97;\n t.ralowerdiagonalbengali = 0x09f1;\n t.ramiddlediagonalbengali = 0x09f0;\n t.ramshorn = 0x0264;\n t.ratio = 0x2236;\n t.rbopomofo = 0x3116;\n t.rcaron = 0x0159;\n t.rcedilla = 0x0157;\n t.rcircle = 0x24e1;\n t.rcommaaccent = 0x0157;\n t.rdblgrave = 0x0211;\n t.rdotaccent = 0x1e59;\n t.rdotbelow = 0x1e5b;\n t.rdotbelowmacron = 0x1e5d;\n t.referencemark = 0x203b;\n t.reflexsubset = 0x2286;\n t.reflexsuperset = 0x2287;\n t.registered = 0x00ae;\n t.registersans = 0xf8e8;\n t.registerserif = 0xf6da;\n t.reharabic = 0x0631;\n t.reharmenian = 0x0580;\n t.rehfinalarabic = 0xfeae;\n t.rehiragana = 0x308c;\n t.rekatakana = 0x30ec;\n t.rekatakanahalfwidth = 0xff9a;\n t.resh = 0x05e8;\n t.reshdageshhebrew = 0xfb48;\n t.reshhebrew = 0x05e8;\n t.reversedtilde = 0x223d;\n t.reviahebrew = 0x0597;\n t.reviamugrashhebrew = 0x0597;\n t.revlogicalnot = 0x2310;\n t.rfishhook = 0x027e;\n t.rfishhookreversed = 0x027f;\n t.rhabengali = 0x09dd;\n t.rhadeva = 0x095d;\n t.rho = 0x03c1;\n t.rhook = 0x027d;\n t.rhookturned = 0x027b;\n t.rhookturnedsuperior = 0x02b5;\n t.rhosymbolgreek = 0x03f1;\n t.rhotichookmod = 0x02de;\n t.rieulacirclekorean = 0x3271;\n t.rieulaparenkorean = 0x3211;\n t.rieulcirclekorean = 0x3263;\n t.rieulhieuhkorean = 0x3140;\n t.rieulkiyeokkorean = 0x313a;\n t.rieulkiyeoksioskorean = 0x3169;\n t.rieulkorean = 0x3139;\n t.rieulmieumkorean = 0x313b;\n t.rieulpansioskorean = 0x316c;\n t.rieulparenkorean = 0x3203;\n t.rieulphieuphkorean = 0x313f;\n t.rieulpieupkorean = 0x313c;\n t.rieulpieupsioskorean = 0x316b;\n t.rieulsioskorean = 0x313d;\n t.rieulthieuthkorean = 0x313e;\n t.rieultikeutkorean = 0x316a;\n t.rieulyeorinhieuhkorean = 0x316d;\n t.rightangle = 0x221f;\n t.righttackbelowcmb = 0x0319;\n t.righttriangle = 0x22bf;\n t.rihiragana = 0x308a;\n t.rikatakana = 0x30ea;\n t.rikatakanahalfwidth = 0xff98;\n t.ring = 0x02da;\n t.ringbelowcmb = 0x0325;\n t.ringcmb = 0x030a;\n t.ringhalfleft = 0x02bf;\n t.ringhalfleftarmenian = 0x0559;\n t.ringhalfleftbelowcmb = 0x031c;\n t.ringhalfleftcentered = 0x02d3;\n t.ringhalfright = 0x02be;\n t.ringhalfrightbelowcmb = 0x0339;\n t.ringhalfrightcentered = 0x02d2;\n t.rinvertedbreve = 0x0213;\n t.rittorusquare = 0x3351;\n t.rlinebelow = 0x1e5f;\n t.rlongleg = 0x027c;\n t.rlonglegturned = 0x027a;\n t.rmonospace = 0xff52;\n t.rohiragana = 0x308d;\n t.rokatakana = 0x30ed;\n t.rokatakanahalfwidth = 0xff9b;\n t.roruathai = 0x0e23;\n t.rparen = 0x24ad;\n t.rrabengali = 0x09dc;\n t.rradeva = 0x0931;\n t.rragurmukhi = 0x0a5c;\n t.rreharabic = 0x0691;\n t.rrehfinalarabic = 0xfb8d;\n t.rrvocalicbengali = 0x09e0;\n t.rrvocalicdeva = 0x0960;\n t.rrvocalicgujarati = 0x0ae0;\n t.rrvocalicvowelsignbengali = 0x09c4;\n t.rrvocalicvowelsigndeva = 0x0944;\n t.rrvocalicvowelsigngujarati = 0x0ac4;\n t.rsuperior = 0xf6f1;\n t.rtblock = 0x2590;\n t.rturned = 0x0279;\n t.rturnedsuperior = 0x02b4;\n t.ruhiragana = 0x308b;\n t.rukatakana = 0x30eb;\n t.rukatakanahalfwidth = 0xff99;\n t.rupeemarkbengali = 0x09f2;\n t.rupeesignbengali = 0x09f3;\n t.rupiah = 0xf6dd;\n t.ruthai = 0x0e24;\n t.rvocalicbengali = 0x098b;\n t.rvocalicdeva = 0x090b;\n t.rvocalicgujarati = 0x0a8b;\n t.rvocalicvowelsignbengali = 0x09c3;\n t.rvocalicvowelsigndeva = 0x0943;\n t.rvocalicvowelsigngujarati = 0x0ac3;\n t.s = 0x0073;\n t.sabengali = 0x09b8;\n t.sacute = 0x015b;\n t.sacutedotaccent = 0x1e65;\n t.sadarabic = 0x0635;\n t.sadeva = 0x0938;\n t.sadfinalarabic = 0xfeba;\n t.sadinitialarabic = 0xfebb;\n t.sadmedialarabic = 0xfebc;\n t.sagujarati = 0x0ab8;\n t.sagurmukhi = 0x0a38;\n t.sahiragana = 0x3055;\n t.sakatakana = 0x30b5;\n t.sakatakanahalfwidth = 0xff7b;\n t.sallallahoualayhewasallamarabic = 0xfdfa;\n t.samekh = 0x05e1;\n t.samekhdagesh = 0xfb41;\n t.samekhdageshhebrew = 0xfb41;\n t.samekhhebrew = 0x05e1;\n t.saraaathai = 0x0e32;\n t.saraaethai = 0x0e41;\n t.saraaimaimalaithai = 0x0e44;\n t.saraaimaimuanthai = 0x0e43;\n t.saraamthai = 0x0e33;\n t.saraathai = 0x0e30;\n t.saraethai = 0x0e40;\n t.saraiileftthai = 0xf886;\n t.saraiithai = 0x0e35;\n t.saraileftthai = 0xf885;\n t.saraithai = 0x0e34;\n t.saraothai = 0x0e42;\n t.saraueeleftthai = 0xf888;\n t.saraueethai = 0x0e37;\n t.saraueleftthai = 0xf887;\n t.sarauethai = 0x0e36;\n t.sarauthai = 0x0e38;\n t.sarauuthai = 0x0e39;\n t.sbopomofo = 0x3119;\n t.scaron = 0x0161;\n t.scarondotaccent = 0x1e67;\n t.scedilla = 0x015f;\n t.schwa = 0x0259;\n t.schwacyrillic = 0x04d9;\n t.schwadieresiscyrillic = 0x04db;\n t.schwahook = 0x025a;\n t.scircle = 0x24e2;\n t.scircumflex = 0x015d;\n t.scommaaccent = 0x0219;\n t.sdotaccent = 0x1e61;\n t.sdotbelow = 0x1e63;\n t.sdotbelowdotaccent = 0x1e69;\n t.seagullbelowcmb = 0x033c;\n t.second = 0x2033;\n t.secondtonechinese = 0x02ca;\n t.section = 0x00a7;\n t.seenarabic = 0x0633;\n t.seenfinalarabic = 0xfeb2;\n t.seeninitialarabic = 0xfeb3;\n t.seenmedialarabic = 0xfeb4;\n t.segol = 0x05b6;\n t.segol13 = 0x05b6;\n t.segol1f = 0x05b6;\n t.segol2c = 0x05b6;\n t.segolhebrew = 0x05b6;\n t.segolnarrowhebrew = 0x05b6;\n t.segolquarterhebrew = 0x05b6;\n t.segoltahebrew = 0x0592;\n t.segolwidehebrew = 0x05b6;\n t.seharmenian = 0x057d;\n t.sehiragana = 0x305b;\n t.sekatakana = 0x30bb;\n t.sekatakanahalfwidth = 0xff7e;\n t.semicolon = 0x003b;\n t.semicolonarabic = 0x061b;\n t.semicolonmonospace = 0xff1b;\n t.semicolonsmall = 0xfe54;\n t.semivoicedmarkkana = 0x309c;\n t.semivoicedmarkkanahalfwidth = 0xff9f;\n t.sentisquare = 0x3322;\n t.sentosquare = 0x3323;\n t.seven = 0x0037;\n t.sevenarabic = 0x0667;\n t.sevenbengali = 0x09ed;\n t.sevencircle = 0x2466;\n t.sevencircleinversesansserif = 0x2790;\n t.sevendeva = 0x096d;\n t.seveneighths = 0x215e;\n t.sevengujarati = 0x0aed;\n t.sevengurmukhi = 0x0a6d;\n t.sevenhackarabic = 0x0667;\n t.sevenhangzhou = 0x3027;\n t.sevenideographicparen = 0x3226;\n t.seveninferior = 0x2087;\n t.sevenmonospace = 0xff17;\n t.sevenoldstyle = 0xf737;\n t.sevenparen = 0x247a;\n t.sevenperiod = 0x248e;\n t.sevenpersian = 0x06f7;\n t.sevenroman = 0x2176;\n t.sevensuperior = 0x2077;\n t.seventeencircle = 0x2470;\n t.seventeenparen = 0x2484;\n t.seventeenperiod = 0x2498;\n t.seventhai = 0x0e57;\n t.sfthyphen = 0x00ad;\n t.shaarmenian = 0x0577;\n t.shabengali = 0x09b6;\n t.shacyrillic = 0x0448;\n t.shaddaarabic = 0x0651;\n t.shaddadammaarabic = 0xfc61;\n t.shaddadammatanarabic = 0xfc5e;\n t.shaddafathaarabic = 0xfc60;\n t.shaddakasraarabic = 0xfc62;\n t.shaddakasratanarabic = 0xfc5f;\n t.shade = 0x2592;\n t.shadedark = 0x2593;\n t.shadelight = 0x2591;\n t.shademedium = 0x2592;\n t.shadeva = 0x0936;\n t.shagujarati = 0x0ab6;\n t.shagurmukhi = 0x0a36;\n t.shalshelethebrew = 0x0593;\n t.shbopomofo = 0x3115;\n t.shchacyrillic = 0x0449;\n t.sheenarabic = 0x0634;\n t.sheenfinalarabic = 0xfeb6;\n t.sheeninitialarabic = 0xfeb7;\n t.sheenmedialarabic = 0xfeb8;\n t.sheicoptic = 0x03e3;\n t.sheqel = 0x20aa;\n t.sheqelhebrew = 0x20aa;\n t.sheva = 0x05b0;\n t.sheva115 = 0x05b0;\n t.sheva15 = 0x05b0;\n t.sheva22 = 0x05b0;\n t.sheva2e = 0x05b0;\n t.shevahebrew = 0x05b0;\n t.shevanarrowhebrew = 0x05b0;\n t.shevaquarterhebrew = 0x05b0;\n t.shevawidehebrew = 0x05b0;\n t.shhacyrillic = 0x04bb;\n t.shimacoptic = 0x03ed;\n t.shin = 0x05e9;\n t.shindagesh = 0xfb49;\n t.shindageshhebrew = 0xfb49;\n t.shindageshshindot = 0xfb2c;\n t.shindageshshindothebrew = 0xfb2c;\n t.shindageshsindot = 0xfb2d;\n t.shindageshsindothebrew = 0xfb2d;\n t.shindothebrew = 0x05c1;\n t.shinhebrew = 0x05e9;\n t.shinshindot = 0xfb2a;\n t.shinshindothebrew = 0xfb2a;\n t.shinsindot = 0xfb2b;\n t.shinsindothebrew = 0xfb2b;\n t.shook = 0x0282;\n t.sigma = 0x03c3;\n t.sigma1 = 0x03c2;\n t.sigmafinal = 0x03c2;\n t.sigmalunatesymbolgreek = 0x03f2;\n t.sihiragana = 0x3057;\n t.sikatakana = 0x30b7;\n t.sikatakanahalfwidth = 0xff7c;\n t.siluqhebrew = 0x05bd;\n t.siluqlefthebrew = 0x05bd;\n t.similar = 0x223c;\n t.sindothebrew = 0x05c2;\n t.siosacirclekorean = 0x3274;\n t.siosaparenkorean = 0x3214;\n t.sioscieuckorean = 0x317e;\n t.sioscirclekorean = 0x3266;\n t.sioskiyeokkorean = 0x317a;\n t.sioskorean = 0x3145;\n t.siosnieunkorean = 0x317b;\n t.siosparenkorean = 0x3206;\n t.siospieupkorean = 0x317d;\n t.siostikeutkorean = 0x317c;\n t.six = 0x0036;\n t.sixarabic = 0x0666;\n t.sixbengali = 0x09ec;\n t.sixcircle = 0x2465;\n t.sixcircleinversesansserif = 0x278f;\n t.sixdeva = 0x096c;\n t.sixgujarati = 0x0aec;\n t.sixgurmukhi = 0x0a6c;\n t.sixhackarabic = 0x0666;\n t.sixhangzhou = 0x3026;\n t.sixideographicparen = 0x3225;\n t.sixinferior = 0x2086;\n t.sixmonospace = 0xff16;\n t.sixoldstyle = 0xf736;\n t.sixparen = 0x2479;\n t.sixperiod = 0x248d;\n t.sixpersian = 0x06f6;\n t.sixroman = 0x2175;\n t.sixsuperior = 0x2076;\n t.sixteencircle = 0x246f;\n t.sixteencurrencydenominatorbengali = 0x09f9;\n t.sixteenparen = 0x2483;\n t.sixteenperiod = 0x2497;\n t.sixthai = 0x0e56;\n t.slash = 0x002f;\n t.slashmonospace = 0xff0f;\n t.slong = 0x017f;\n t.slongdotaccent = 0x1e9b;\n t.smileface = 0x263a;\n t.smonospace = 0xff53;\n t.sofpasuqhebrew = 0x05c3;\n t.softhyphen = 0x00ad;\n t.softsigncyrillic = 0x044c;\n t.sohiragana = 0x305d;\n t.sokatakana = 0x30bd;\n t.sokatakanahalfwidth = 0xff7f;\n t.soliduslongoverlaycmb = 0x0338;\n t.solidusshortoverlaycmb = 0x0337;\n t.sorusithai = 0x0e29;\n t.sosalathai = 0x0e28;\n t.sosothai = 0x0e0b;\n t.sosuathai = 0x0e2a;\n t.space = 0x0020;\n t.spacehackarabic = 0x0020;\n t.spade = 0x2660;\n t.spadesuitblack = 0x2660;\n t.spadesuitwhite = 0x2664;\n t.sparen = 0x24ae;\n t.squarebelowcmb = 0x033b;\n t.squarecc = 0x33c4;\n t.squarecm = 0x339d;\n t.squarediagonalcrosshatchfill = 0x25a9;\n t.squarehorizontalfill = 0x25a4;\n t.squarekg = 0x338f;\n t.squarekm = 0x339e;\n t.squarekmcapital = 0x33ce;\n t.squareln = 0x33d1;\n t.squarelog = 0x33d2;\n t.squaremg = 0x338e;\n t.squaremil = 0x33d5;\n t.squaremm = 0x339c;\n t.squaremsquared = 0x33a1;\n t.squareorthogonalcrosshatchfill = 0x25a6;\n t.squareupperlefttolowerrightfill = 0x25a7;\n t.squareupperrighttolowerleftfill = 0x25a8;\n t.squareverticalfill = 0x25a5;\n t.squarewhitewithsmallblack = 0x25a3;\n t.srsquare = 0x33db;\n t.ssabengali = 0x09b7;\n t.ssadeva = 0x0937;\n t.ssagujarati = 0x0ab7;\n t.ssangcieuckorean = 0x3149;\n t.ssanghieuhkorean = 0x3185;\n t.ssangieungkorean = 0x3180;\n t.ssangkiyeokkorean = 0x3132;\n t.ssangnieunkorean = 0x3165;\n t.ssangpieupkorean = 0x3143;\n t.ssangsioskorean = 0x3146;\n t.ssangtikeutkorean = 0x3138;\n t.ssuperior = 0xf6f2;\n t.sterling = 0x00a3;\n t.sterlingmonospace = 0xffe1;\n t.strokelongoverlaycmb = 0x0336;\n t.strokeshortoverlaycmb = 0x0335;\n t.subset = 0x2282;\n t.subsetnotequal = 0x228a;\n t.subsetorequal = 0x2286;\n t.succeeds = 0x227b;\n t.suchthat = 0x220b;\n t.suhiragana = 0x3059;\n t.sukatakana = 0x30b9;\n t.sukatakanahalfwidth = 0xff7d;\n t.sukunarabic = 0x0652;\n t.summation = 0x2211;\n t.sun = 0x263c;\n t.superset = 0x2283;\n t.supersetnotequal = 0x228b;\n t.supersetorequal = 0x2287;\n t.svsquare = 0x33dc;\n t.syouwaerasquare = 0x337c;\n t.t = 0x0074;\n t.tabengali = 0x09a4;\n t.tackdown = 0x22a4;\n t.tackleft = 0x22a3;\n t.tadeva = 0x0924;\n t.tagujarati = 0x0aa4;\n t.tagurmukhi = 0x0a24;\n t.taharabic = 0x0637;\n t.tahfinalarabic = 0xfec2;\n t.tahinitialarabic = 0xfec3;\n t.tahiragana = 0x305f;\n t.tahmedialarabic = 0xfec4;\n t.taisyouerasquare = 0x337d;\n t.takatakana = 0x30bf;\n t.takatakanahalfwidth = 0xff80;\n t.tatweelarabic = 0x0640;\n t.tau = 0x03c4;\n t.tav = 0x05ea;\n t.tavdages = 0xfb4a;\n t.tavdagesh = 0xfb4a;\n t.tavdageshhebrew = 0xfb4a;\n t.tavhebrew = 0x05ea;\n t.tbar = 0x0167;\n t.tbopomofo = 0x310a;\n t.tcaron = 0x0165;\n t.tccurl = 0x02a8;\n t.tcedilla = 0x0163;\n t.tcheharabic = 0x0686;\n t.tchehfinalarabic = 0xfb7b;\n t.tchehinitialarabic = 0xfb7c;\n t.tchehmedialarabic = 0xfb7d;\n t.tcircle = 0x24e3;\n t.tcircumflexbelow = 0x1e71;\n t.tcommaaccent = 0x0163;\n t.tdieresis = 0x1e97;\n t.tdotaccent = 0x1e6b;\n t.tdotbelow = 0x1e6d;\n t.tecyrillic = 0x0442;\n t.tedescendercyrillic = 0x04ad;\n t.teharabic = 0x062a;\n t.tehfinalarabic = 0xfe96;\n t.tehhahinitialarabic = 0xfca2;\n t.tehhahisolatedarabic = 0xfc0c;\n t.tehinitialarabic = 0xfe97;\n t.tehiragana = 0x3066;\n t.tehjeeminitialarabic = 0xfca1;\n t.tehjeemisolatedarabic = 0xfc0b;\n t.tehmarbutaarabic = 0x0629;\n t.tehmarbutafinalarabic = 0xfe94;\n t.tehmedialarabic = 0xfe98;\n t.tehmeeminitialarabic = 0xfca4;\n t.tehmeemisolatedarabic = 0xfc0e;\n t.tehnoonfinalarabic = 0xfc73;\n t.tekatakana = 0x30c6;\n t.tekatakanahalfwidth = 0xff83;\n t.telephone = 0x2121;\n t.telephoneblack = 0x260e;\n t.telishagedolahebrew = 0x05a0;\n t.telishaqetanahebrew = 0x05a9;\n t.tencircle = 0x2469;\n t.tenideographicparen = 0x3229;\n t.tenparen = 0x247d;\n t.tenperiod = 0x2491;\n t.tenroman = 0x2179;\n t.tesh = 0x02a7;\n t.tet = 0x05d8;\n t.tetdagesh = 0xfb38;\n t.tetdageshhebrew = 0xfb38;\n t.tethebrew = 0x05d8;\n t.tetsecyrillic = 0x04b5;\n t.tevirhebrew = 0x059b;\n t.tevirlefthebrew = 0x059b;\n t.thabengali = 0x09a5;\n t.thadeva = 0x0925;\n t.thagujarati = 0x0aa5;\n t.thagurmukhi = 0x0a25;\n t.thalarabic = 0x0630;\n t.thalfinalarabic = 0xfeac;\n t.thanthakhatlowleftthai = 0xf898;\n t.thanthakhatlowrightthai = 0xf897;\n t.thanthakhatthai = 0x0e4c;\n t.thanthakhatupperleftthai = 0xf896;\n t.theharabic = 0x062b;\n t.thehfinalarabic = 0xfe9a;\n t.thehinitialarabic = 0xfe9b;\n t.thehmedialarabic = 0xfe9c;\n t.thereexists = 0x2203;\n t.therefore = 0x2234;\n t.theta = 0x03b8;\n t.theta1 = 0x03d1;\n t.thetasymbolgreek = 0x03d1;\n t.thieuthacirclekorean = 0x3279;\n t.thieuthaparenkorean = 0x3219;\n t.thieuthcirclekorean = 0x326b;\n t.thieuthkorean = 0x314c;\n t.thieuthparenkorean = 0x320b;\n t.thirteencircle = 0x246c;\n t.thirteenparen = 0x2480;\n t.thirteenperiod = 0x2494;\n t.thonangmonthothai = 0x0e11;\n t.thook = 0x01ad;\n t.thophuthaothai = 0x0e12;\n t.thorn = 0x00fe;\n t.thothahanthai = 0x0e17;\n t.thothanthai = 0x0e10;\n t.thothongthai = 0x0e18;\n t.thothungthai = 0x0e16;\n t.thousandcyrillic = 0x0482;\n t.thousandsseparatorarabic = 0x066c;\n t.thousandsseparatorpersian = 0x066c;\n t.three = 0x0033;\n t.threearabic = 0x0663;\n t.threebengali = 0x09e9;\n t.threecircle = 0x2462;\n t.threecircleinversesansserif = 0x278c;\n t.threedeva = 0x0969;\n t.threeeighths = 0x215c;\n t.threegujarati = 0x0ae9;\n t.threegurmukhi = 0x0a69;\n t.threehackarabic = 0x0663;\n t.threehangzhou = 0x3023;\n t.threeideographicparen = 0x3222;\n t.threeinferior = 0x2083;\n t.threemonospace = 0xff13;\n t.threenumeratorbengali = 0x09f6;\n t.threeoldstyle = 0xf733;\n t.threeparen = 0x2476;\n t.threeperiod = 0x248a;\n t.threepersian = 0x06f3;\n t.threequarters = 0x00be;\n t.threequartersemdash = 0xf6de;\n t.threeroman = 0x2172;\n t.threesuperior = 0x00b3;\n t.threethai = 0x0e53;\n t.thzsquare = 0x3394;\n t.tihiragana = 0x3061;\n t.tikatakana = 0x30c1;\n t.tikatakanahalfwidth = 0xff81;\n t.tikeutacirclekorean = 0x3270;\n t.tikeutaparenkorean = 0x3210;\n t.tikeutcirclekorean = 0x3262;\n t.tikeutkorean = 0x3137;\n t.tikeutparenkorean = 0x3202;\n t.tilde = 0x02dc;\n t.tildebelowcmb = 0x0330;\n t.tildecmb = 0x0303;\n t.tildecomb = 0x0303;\n t.tildedoublecmb = 0x0360;\n t.tildeoperator = 0x223c;\n t.tildeoverlaycmb = 0x0334;\n t.tildeverticalcmb = 0x033e;\n t.timescircle = 0x2297;\n t.tipehahebrew = 0x0596;\n t.tipehalefthebrew = 0x0596;\n t.tippigurmukhi = 0x0a70;\n t.titlocyrilliccmb = 0x0483;\n t.tiwnarmenian = 0x057f;\n t.tlinebelow = 0x1e6f;\n t.tmonospace = 0xff54;\n t.toarmenian = 0x0569;\n t.tohiragana = 0x3068;\n t.tokatakana = 0x30c8;\n t.tokatakanahalfwidth = 0xff84;\n t.tonebarextrahighmod = 0x02e5;\n t.tonebarextralowmod = 0x02e9;\n t.tonebarhighmod = 0x02e6;\n t.tonebarlowmod = 0x02e8;\n t.tonebarmidmod = 0x02e7;\n t.tonefive = 0x01bd;\n t.tonesix = 0x0185;\n t.tonetwo = 0x01a8;\n t.tonos = 0x0384;\n t.tonsquare = 0x3327;\n t.topatakthai = 0x0e0f;\n t.tortoiseshellbracketleft = 0x3014;\n t.tortoiseshellbracketleftsmall = 0xfe5d;\n t.tortoiseshellbracketleftvertical = 0xfe39;\n t.tortoiseshellbracketright = 0x3015;\n t.tortoiseshellbracketrightsmall = 0xfe5e;\n t.tortoiseshellbracketrightvertical = 0xfe3a;\n t.totaothai = 0x0e15;\n t.tpalatalhook = 0x01ab;\n t.tparen = 0x24af;\n t.trademark = 0x2122;\n t.trademarksans = 0xf8ea;\n t.trademarkserif = 0xf6db;\n t.tretroflexhook = 0x0288;\n t.triagdn = 0x25bc;\n t.triaglf = 0x25c4;\n t.triagrt = 0x25ba;\n t.triagup = 0x25b2;\n t.ts = 0x02a6;\n t.tsadi = 0x05e6;\n t.tsadidagesh = 0xfb46;\n t.tsadidageshhebrew = 0xfb46;\n t.tsadihebrew = 0x05e6;\n t.tsecyrillic = 0x0446;\n t.tsere = 0x05b5;\n t.tsere12 = 0x05b5;\n t.tsere1e = 0x05b5;\n t.tsere2b = 0x05b5;\n t.tserehebrew = 0x05b5;\n t.tserenarrowhebrew = 0x05b5;\n t.tserequarterhebrew = 0x05b5;\n t.tserewidehebrew = 0x05b5;\n t.tshecyrillic = 0x045b;\n t.tsuperior = 0xf6f3;\n t.ttabengali = 0x099f;\n t.ttadeva = 0x091f;\n t.ttagujarati = 0x0a9f;\n t.ttagurmukhi = 0x0a1f;\n t.tteharabic = 0x0679;\n t.ttehfinalarabic = 0xfb67;\n t.ttehinitialarabic = 0xfb68;\n t.ttehmedialarabic = 0xfb69;\n t.tthabengali = 0x09a0;\n t.tthadeva = 0x0920;\n t.tthagujarati = 0x0aa0;\n t.tthagurmukhi = 0x0a20;\n t.tturned = 0x0287;\n t.tuhiragana = 0x3064;\n t.tukatakana = 0x30c4;\n t.tukatakanahalfwidth = 0xff82;\n t.tusmallhiragana = 0x3063;\n t.tusmallkatakana = 0x30c3;\n t.tusmallkatakanahalfwidth = 0xff6f;\n t.twelvecircle = 0x246b;\n t.twelveparen = 0x247f;\n t.twelveperiod = 0x2493;\n t.twelveroman = 0x217b;\n t.twentycircle = 0x2473;\n t.twentyhangzhou = 0x5344;\n t.twentyparen = 0x2487;\n t.twentyperiod = 0x249b;\n t.two = 0x0032;\n t.twoarabic = 0x0662;\n t.twobengali = 0x09e8;\n t.twocircle = 0x2461;\n t.twocircleinversesansserif = 0x278b;\n t.twodeva = 0x0968;\n t.twodotenleader = 0x2025;\n t.twodotleader = 0x2025;\n t.twodotleadervertical = 0xfe30;\n t.twogujarati = 0x0ae8;\n t.twogurmukhi = 0x0a68;\n t.twohackarabic = 0x0662;\n t.twohangzhou = 0x3022;\n t.twoideographicparen = 0x3221;\n t.twoinferior = 0x2082;\n t.twomonospace = 0xff12;\n t.twonumeratorbengali = 0x09f5;\n t.twooldstyle = 0xf732;\n t.twoparen = 0x2475;\n t.twoperiod = 0x2489;\n t.twopersian = 0x06f2;\n t.tworoman = 0x2171;\n t.twostroke = 0x01bb;\n t.twosuperior = 0x00b2;\n t.twothai = 0x0e52;\n t.twothirds = 0x2154;\n t.u = 0x0075;\n t.uacute = 0x00fa;\n t.ubar = 0x0289;\n t.ubengali = 0x0989;\n t.ubopomofo = 0x3128;\n t.ubreve = 0x016d;\n t.ucaron = 0x01d4;\n t.ucircle = 0x24e4;\n t.ucircumflex = 0x00fb;\n t.ucircumflexbelow = 0x1e77;\n t.ucyrillic = 0x0443;\n t.udattadeva = 0x0951;\n t.udblacute = 0x0171;\n t.udblgrave = 0x0215;\n t.udeva = 0x0909;\n t.udieresis = 0x00fc;\n t.udieresisacute = 0x01d8;\n t.udieresisbelow = 0x1e73;\n t.udieresiscaron = 0x01da;\n t.udieresiscyrillic = 0x04f1;\n t.udieresisgrave = 0x01dc;\n t.udieresismacron = 0x01d6;\n t.udotbelow = 0x1ee5;\n t.ugrave = 0x00f9;\n t.ugujarati = 0x0a89;\n t.ugurmukhi = 0x0a09;\n t.uhiragana = 0x3046;\n t.uhookabove = 0x1ee7;\n t.uhorn = 0x01b0;\n t.uhornacute = 0x1ee9;\n t.uhorndotbelow = 0x1ef1;\n t.uhorngrave = 0x1eeb;\n t.uhornhookabove = 0x1eed;\n t.uhorntilde = 0x1eef;\n t.uhungarumlaut = 0x0171;\n t.uhungarumlautcyrillic = 0x04f3;\n t.uinvertedbreve = 0x0217;\n t.ukatakana = 0x30a6;\n t.ukatakanahalfwidth = 0xff73;\n t.ukcyrillic = 0x0479;\n t.ukorean = 0x315c;\n t.umacron = 0x016b;\n t.umacroncyrillic = 0x04ef;\n t.umacrondieresis = 0x1e7b;\n t.umatragurmukhi = 0x0a41;\n t.umonospace = 0xff55;\n t.underscore = 0x005f;\n t.underscoredbl = 0x2017;\n t.underscoremonospace = 0xff3f;\n t.underscorevertical = 0xfe33;\n t.underscorewavy = 0xfe4f;\n t.union = 0x222a;\n t.universal = 0x2200;\n t.uogonek = 0x0173;\n t.uparen = 0x24b0;\n t.upblock = 0x2580;\n t.upperdothebrew = 0x05c4;\n t.upsilon = 0x03c5;\n t.upsilondieresis = 0x03cb;\n t.upsilondieresistonos = 0x03b0;\n t.upsilonlatin = 0x028a;\n t.upsilontonos = 0x03cd;\n t.uptackbelowcmb = 0x031d;\n t.uptackmod = 0x02d4;\n t.uragurmukhi = 0x0a73;\n t.uring = 0x016f;\n t.ushortcyrillic = 0x045e;\n t.usmallhiragana = 0x3045;\n t.usmallkatakana = 0x30a5;\n t.usmallkatakanahalfwidth = 0xff69;\n t.ustraightcyrillic = 0x04af;\n t.ustraightstrokecyrillic = 0x04b1;\n t.utilde = 0x0169;\n t.utildeacute = 0x1e79;\n t.utildebelow = 0x1e75;\n t.uubengali = 0x098a;\n t.uudeva = 0x090a;\n t.uugujarati = 0x0a8a;\n t.uugurmukhi = 0x0a0a;\n t.uumatragurmukhi = 0x0a42;\n t.uuvowelsignbengali = 0x09c2;\n t.uuvowelsigndeva = 0x0942;\n t.uuvowelsigngujarati = 0x0ac2;\n t.uvowelsignbengali = 0x09c1;\n t.uvowelsigndeva = 0x0941;\n t.uvowelsigngujarati = 0x0ac1;\n t.v = 0x0076;\n t.vadeva = 0x0935;\n t.vagujarati = 0x0ab5;\n t.vagurmukhi = 0x0a35;\n t.vakatakana = 0x30f7;\n t.vav = 0x05d5;\n t.vavdagesh = 0xfb35;\n t.vavdagesh65 = 0xfb35;\n t.vavdageshhebrew = 0xfb35;\n t.vavhebrew = 0x05d5;\n t.vavholam = 0xfb4b;\n t.vavholamhebrew = 0xfb4b;\n t.vavvavhebrew = 0x05f0;\n t.vavyodhebrew = 0x05f1;\n t.vcircle = 0x24e5;\n t.vdotbelow = 0x1e7f;\n t.vecyrillic = 0x0432;\n t.veharabic = 0x06a4;\n t.vehfinalarabic = 0xfb6b;\n t.vehinitialarabic = 0xfb6c;\n t.vehmedialarabic = 0xfb6d;\n t.vekatakana = 0x30f9;\n t.venus = 0x2640;\n t.verticalbar = 0x007c;\n t.verticallineabovecmb = 0x030d;\n t.verticallinebelowcmb = 0x0329;\n t.verticallinelowmod = 0x02cc;\n t.verticallinemod = 0x02c8;\n t.vewarmenian = 0x057e;\n t.vhook = 0x028b;\n t.vikatakana = 0x30f8;\n t.viramabengali = 0x09cd;\n t.viramadeva = 0x094d;\n t.viramagujarati = 0x0acd;\n t.visargabengali = 0x0983;\n t.visargadeva = 0x0903;\n t.visargagujarati = 0x0a83;\n t.vmonospace = 0xff56;\n t.voarmenian = 0x0578;\n t.voicediterationhiragana = 0x309e;\n t.voicediterationkatakana = 0x30fe;\n t.voicedmarkkana = 0x309b;\n t.voicedmarkkanahalfwidth = 0xff9e;\n t.vokatakana = 0x30fa;\n t.vparen = 0x24b1;\n t.vtilde = 0x1e7d;\n t.vturned = 0x028c;\n t.vuhiragana = 0x3094;\n t.vukatakana = 0x30f4;\n t.w = 0x0077;\n t.wacute = 0x1e83;\n t.waekorean = 0x3159;\n t.wahiragana = 0x308f;\n t.wakatakana = 0x30ef;\n t.wakatakanahalfwidth = 0xff9c;\n t.wakorean = 0x3158;\n t.wasmallhiragana = 0x308e;\n t.wasmallkatakana = 0x30ee;\n t.wattosquare = 0x3357;\n t.wavedash = 0x301c;\n t.wavyunderscorevertical = 0xfe34;\n t.wawarabic = 0x0648;\n t.wawfinalarabic = 0xfeee;\n t.wawhamzaabovearabic = 0x0624;\n t.wawhamzaabovefinalarabic = 0xfe86;\n t.wbsquare = 0x33dd;\n t.wcircle = 0x24e6;\n t.wcircumflex = 0x0175;\n t.wdieresis = 0x1e85;\n t.wdotaccent = 0x1e87;\n t.wdotbelow = 0x1e89;\n t.wehiragana = 0x3091;\n t.weierstrass = 0x2118;\n t.wekatakana = 0x30f1;\n t.wekorean = 0x315e;\n t.weokorean = 0x315d;\n t.wgrave = 0x1e81;\n t.whitebullet = 0x25e6;\n t.whitecircle = 0x25cb;\n t.whitecircleinverse = 0x25d9;\n t.whitecornerbracketleft = 0x300e;\n t.whitecornerbracketleftvertical = 0xfe43;\n t.whitecornerbracketright = 0x300f;\n t.whitecornerbracketrightvertical = 0xfe44;\n t.whitediamond = 0x25c7;\n t.whitediamondcontainingblacksmalldiamond = 0x25c8;\n t.whitedownpointingsmalltriangle = 0x25bf;\n t.whitedownpointingtriangle = 0x25bd;\n t.whiteleftpointingsmalltriangle = 0x25c3;\n t.whiteleftpointingtriangle = 0x25c1;\n t.whitelenticularbracketleft = 0x3016;\n t.whitelenticularbracketright = 0x3017;\n t.whiterightpointingsmalltriangle = 0x25b9;\n t.whiterightpointingtriangle = 0x25b7;\n t.whitesmallsquare = 0x25ab;\n t.whitesmilingface = 0x263a;\n t.whitesquare = 0x25a1;\n t.whitestar = 0x2606;\n t.whitetelephone = 0x260f;\n t.whitetortoiseshellbracketleft = 0x3018;\n t.whitetortoiseshellbracketright = 0x3019;\n t.whiteuppointingsmalltriangle = 0x25b5;\n t.whiteuppointingtriangle = 0x25b3;\n t.wihiragana = 0x3090;\n t.wikatakana = 0x30f0;\n t.wikorean = 0x315f;\n t.wmonospace = 0xff57;\n t.wohiragana = 0x3092;\n t.wokatakana = 0x30f2;\n t.wokatakanahalfwidth = 0xff66;\n t.won = 0x20a9;\n t.wonmonospace = 0xffe6;\n t.wowaenthai = 0x0e27;\n t.wparen = 0x24b2;\n t.wring = 0x1e98;\n t.wsuperior = 0x02b7;\n t.wturned = 0x028d;\n t.wynn = 0x01bf;\n t.x = 0x0078;\n t.xabovecmb = 0x033d;\n t.xbopomofo = 0x3112;\n t.xcircle = 0x24e7;\n t.xdieresis = 0x1e8d;\n t.xdotaccent = 0x1e8b;\n t.xeharmenian = 0x056d;\n t.xi = 0x03be;\n t.xmonospace = 0xff58;\n t.xparen = 0x24b3;\n t.xsuperior = 0x02e3;\n t.y = 0x0079;\n t.yaadosquare = 0x334e;\n t.yabengali = 0x09af;\n t.yacute = 0x00fd;\n t.yadeva = 0x092f;\n t.yaekorean = 0x3152;\n t.yagujarati = 0x0aaf;\n t.yagurmukhi = 0x0a2f;\n t.yahiragana = 0x3084;\n t.yakatakana = 0x30e4;\n t.yakatakanahalfwidth = 0xff94;\n t.yakorean = 0x3151;\n t.yamakkanthai = 0x0e4e;\n t.yasmallhiragana = 0x3083;\n t.yasmallkatakana = 0x30e3;\n t.yasmallkatakanahalfwidth = 0xff6c;\n t.yatcyrillic = 0x0463;\n t.ycircle = 0x24e8;\n t.ycircumflex = 0x0177;\n t.ydieresis = 0x00ff;\n t.ydotaccent = 0x1e8f;\n t.ydotbelow = 0x1ef5;\n t.yeharabic = 0x064a;\n t.yehbarreearabic = 0x06d2;\n t.yehbarreefinalarabic = 0xfbaf;\n t.yehfinalarabic = 0xfef2;\n t.yehhamzaabovearabic = 0x0626;\n t.yehhamzaabovefinalarabic = 0xfe8a;\n t.yehhamzaaboveinitialarabic = 0xfe8b;\n t.yehhamzaabovemedialarabic = 0xfe8c;\n t.yehinitialarabic = 0xfef3;\n t.yehmedialarabic = 0xfef4;\n t.yehmeeminitialarabic = 0xfcdd;\n t.yehmeemisolatedarabic = 0xfc58;\n t.yehnoonfinalarabic = 0xfc94;\n t.yehthreedotsbelowarabic = 0x06d1;\n t.yekorean = 0x3156;\n t.yen = 0x00a5;\n t.yenmonospace = 0xffe5;\n t.yeokorean = 0x3155;\n t.yeorinhieuhkorean = 0x3186;\n t.yerahbenyomohebrew = 0x05aa;\n t.yerahbenyomolefthebrew = 0x05aa;\n t.yericyrillic = 0x044b;\n t.yerudieresiscyrillic = 0x04f9;\n t.yesieungkorean = 0x3181;\n t.yesieungpansioskorean = 0x3183;\n t.yesieungsioskorean = 0x3182;\n t.yetivhebrew = 0x059a;\n t.ygrave = 0x1ef3;\n t.yhook = 0x01b4;\n t.yhookabove = 0x1ef7;\n t.yiarmenian = 0x0575;\n t.yicyrillic = 0x0457;\n t.yikorean = 0x3162;\n t.yinyang = 0x262f;\n t.yiwnarmenian = 0x0582;\n t.ymonospace = 0xff59;\n t.yod = 0x05d9;\n t.yoddagesh = 0xfb39;\n t.yoddageshhebrew = 0xfb39;\n t.yodhebrew = 0x05d9;\n t.yodyodhebrew = 0x05f2;\n t.yodyodpatahhebrew = 0xfb1f;\n t.yohiragana = 0x3088;\n t.yoikorean = 0x3189;\n t.yokatakana = 0x30e8;\n t.yokatakanahalfwidth = 0xff96;\n t.yokorean = 0x315b;\n t.yosmallhiragana = 0x3087;\n t.yosmallkatakana = 0x30e7;\n t.yosmallkatakanahalfwidth = 0xff6e;\n t.yotgreek = 0x03f3;\n t.yoyaekorean = 0x3188;\n t.yoyakorean = 0x3187;\n t.yoyakthai = 0x0e22;\n t.yoyingthai = 0x0e0d;\n t.yparen = 0x24b4;\n t.ypogegrammeni = 0x037a;\n t.ypogegrammenigreekcmb = 0x0345;\n t.yr = 0x01a6;\n t.yring = 0x1e99;\n t.ysuperior = 0x02b8;\n t.ytilde = 0x1ef9;\n t.yturned = 0x028e;\n t.yuhiragana = 0x3086;\n t.yuikorean = 0x318c;\n t.yukatakana = 0x30e6;\n t.yukatakanahalfwidth = 0xff95;\n t.yukorean = 0x3160;\n t.yusbigcyrillic = 0x046b;\n t.yusbigiotifiedcyrillic = 0x046d;\n t.yuslittlecyrillic = 0x0467;\n t.yuslittleiotifiedcyrillic = 0x0469;\n t.yusmallhiragana = 0x3085;\n t.yusmallkatakana = 0x30e5;\n t.yusmallkatakanahalfwidth = 0xff6d;\n t.yuyekorean = 0x318b;\n t.yuyeokorean = 0x318a;\n t.yyabengali = 0x09df;\n t.yyadeva = 0x095f;\n t.z = 0x007a;\n t.zaarmenian = 0x0566;\n t.zacute = 0x017a;\n t.zadeva = 0x095b;\n t.zagurmukhi = 0x0a5b;\n t.zaharabic = 0x0638;\n t.zahfinalarabic = 0xfec6;\n t.zahinitialarabic = 0xfec7;\n t.zahiragana = 0x3056;\n t.zahmedialarabic = 0xfec8;\n t.zainarabic = 0x0632;\n t.zainfinalarabic = 0xfeb0;\n t.zakatakana = 0x30b6;\n t.zaqefgadolhebrew = 0x0595;\n t.zaqefqatanhebrew = 0x0594;\n t.zarqahebrew = 0x0598;\n t.zayin = 0x05d6;\n t.zayindagesh = 0xfb36;\n t.zayindageshhebrew = 0xfb36;\n t.zayinhebrew = 0x05d6;\n t.zbopomofo = 0x3117;\n t.zcaron = 0x017e;\n t.zcircle = 0x24e9;\n t.zcircumflex = 0x1e91;\n t.zcurl = 0x0291;\n t.zdot = 0x017c;\n t.zdotaccent = 0x017c;\n t.zdotbelow = 0x1e93;\n t.zecyrillic = 0x0437;\n t.zedescendercyrillic = 0x0499;\n t.zedieresiscyrillic = 0x04df;\n t.zehiragana = 0x305c;\n t.zekatakana = 0x30bc;\n t.zero = 0x0030;\n t.zeroarabic = 0x0660;\n t.zerobengali = 0x09e6;\n t.zerodeva = 0x0966;\n t.zerogujarati = 0x0ae6;\n t.zerogurmukhi = 0x0a66;\n t.zerohackarabic = 0x0660;\n t.zeroinferior = 0x2080;\n t.zeromonospace = 0xff10;\n t.zerooldstyle = 0xf730;\n t.zeropersian = 0x06f0;\n t.zerosuperior = 0x2070;\n t.zerothai = 0x0e50;\n t.zerowidthjoiner = 0xfeff;\n t.zerowidthnonjoiner = 0x200c;\n t.zerowidthspace = 0x200b;\n t.zeta = 0x03b6;\n t.zhbopomofo = 0x3113;\n t.zhearmenian = 0x056a;\n t.zhebrevecyrillic = 0x04c2;\n t.zhecyrillic = 0x0436;\n t.zhedescendercyrillic = 0x0497;\n t.zhedieresiscyrillic = 0x04dd;\n t.zihiragana = 0x3058;\n t.zikatakana = 0x30b8;\n t.zinorhebrew = 0x05ae;\n t.zlinebelow = 0x1e95;\n t.zmonospace = 0xff5a;\n t.zohiragana = 0x305e;\n t.zokatakana = 0x30be;\n t.zparen = 0x24b5;\n t.zretroflexhook = 0x0290;\n t.zstroke = 0x01b6;\n t.zuhiragana = 0x305a;\n t.zukatakana = 0x30ba;\n t[\".notdef\"] = 0x0000;\n t.angbracketleftbig = 0x2329;\n t.angbracketleftBig = 0x2329;\n t.angbracketleftbigg = 0x2329;\n t.angbracketleftBigg = 0x2329;\n t.angbracketrightBig = 0x232a;\n t.angbracketrightbig = 0x232a;\n t.angbracketrightBigg = 0x232a;\n t.angbracketrightbigg = 0x232a;\n t.arrowhookleft = 0x21aa;\n t.arrowhookright = 0x21a9;\n t.arrowlefttophalf = 0x21bc;\n t.arrowleftbothalf = 0x21bd;\n t.arrownortheast = 0x2197;\n t.arrownorthwest = 0x2196;\n t.arrowrighttophalf = 0x21c0;\n t.arrowrightbothalf = 0x21c1;\n t.arrowsoutheast = 0x2198;\n t.arrowsouthwest = 0x2199;\n t.backslashbig = 0x2216;\n t.backslashBig = 0x2216;\n t.backslashBigg = 0x2216;\n t.backslashbigg = 0x2216;\n t.bardbl = 0x2016;\n t.bracehtipdownleft = 0xfe37;\n t.bracehtipdownright = 0xfe37;\n t.bracehtipupleft = 0xfe38;\n t.bracehtipupright = 0xfe38;\n t.braceleftBig = 0x007b;\n t.braceleftbig = 0x007b;\n t.braceleftbigg = 0x007b;\n t.braceleftBigg = 0x007b;\n t.bracerightBig = 0x007d;\n t.bracerightbig = 0x007d;\n t.bracerightbigg = 0x007d;\n t.bracerightBigg = 0x007d;\n t.bracketleftbig = 0x005b;\n t.bracketleftBig = 0x005b;\n t.bracketleftbigg = 0x005b;\n t.bracketleftBigg = 0x005b;\n t.bracketrightBig = 0x005d;\n t.bracketrightbig = 0x005d;\n t.bracketrightbigg = 0x005d;\n t.bracketrightBigg = 0x005d;\n t.ceilingleftbig = 0x2308;\n t.ceilingleftBig = 0x2308;\n t.ceilingleftBigg = 0x2308;\n t.ceilingleftbigg = 0x2308;\n t.ceilingrightbig = 0x2309;\n t.ceilingrightBig = 0x2309;\n t.ceilingrightbigg = 0x2309;\n t.ceilingrightBigg = 0x2309;\n t.circledotdisplay = 0x2299;\n t.circledottext = 0x2299;\n t.circlemultiplydisplay = 0x2297;\n t.circlemultiplytext = 0x2297;\n t.circleplusdisplay = 0x2295;\n t.circleplustext = 0x2295;\n t.contintegraldisplay = 0x222e;\n t.contintegraltext = 0x222e;\n t.coproductdisplay = 0x2210;\n t.coproducttext = 0x2210;\n t.floorleftBig = 0x230a;\n t.floorleftbig = 0x230a;\n t.floorleftbigg = 0x230a;\n t.floorleftBigg = 0x230a;\n t.floorrightbig = 0x230b;\n t.floorrightBig = 0x230b;\n t.floorrightBigg = 0x230b;\n t.floorrightbigg = 0x230b;\n t.hatwide = 0x0302;\n t.hatwider = 0x0302;\n t.hatwidest = 0x0302;\n t.intercal = 0x1d40;\n t.integraldisplay = 0x222b;\n t.integraltext = 0x222b;\n t.intersectiondisplay = 0x22c2;\n t.intersectiontext = 0x22c2;\n t.logicalanddisplay = 0x2227;\n t.logicalandtext = 0x2227;\n t.logicalordisplay = 0x2228;\n t.logicalortext = 0x2228;\n t.parenleftBig = 0x0028;\n t.parenleftbig = 0x0028;\n t.parenleftBigg = 0x0028;\n t.parenleftbigg = 0x0028;\n t.parenrightBig = 0x0029;\n t.parenrightbig = 0x0029;\n t.parenrightBigg = 0x0029;\n t.parenrightbigg = 0x0029;\n t.prime = 0x2032;\n t.productdisplay = 0x220f;\n t.producttext = 0x220f;\n t.radicalbig = 0x221a;\n t.radicalBig = 0x221a;\n t.radicalBigg = 0x221a;\n t.radicalbigg = 0x221a;\n t.radicalbt = 0x221a;\n t.radicaltp = 0x221a;\n t.radicalvertex = 0x221a;\n t.slashbig = 0x002f;\n t.slashBig = 0x002f;\n t.slashBigg = 0x002f;\n t.slashbigg = 0x002f;\n t.summationdisplay = 0x2211;\n t.summationtext = 0x2211;\n t.tildewide = 0x02dc;\n t.tildewider = 0x02dc;\n t.tildewidest = 0x02dc;\n t.uniondisplay = 0x22c3;\n t.unionmultidisplay = 0x228e;\n t.unionmultitext = 0x228e;\n t.unionsqdisplay = 0x2294;\n t.unionsqtext = 0x2294;\n t.uniontext = 0x22c3;\n t.vextenddouble = 0x2225;\n t.vextendsingle = 0x2223;\n});\nexports.getGlyphsUnicode = getGlyphsUnicode;\nconst getDingbatsGlyphsUnicode = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 0x0020;\n t.a1 = 0x2701;\n t.a2 = 0x2702;\n t.a202 = 0x2703;\n t.a3 = 0x2704;\n t.a4 = 0x260e;\n t.a5 = 0x2706;\n t.a119 = 0x2707;\n t.a118 = 0x2708;\n t.a117 = 0x2709;\n t.a11 = 0x261b;\n t.a12 = 0x261e;\n t.a13 = 0x270c;\n t.a14 = 0x270d;\n t.a15 = 0x270e;\n t.a16 = 0x270f;\n t.a105 = 0x2710;\n t.a17 = 0x2711;\n t.a18 = 0x2712;\n t.a19 = 0x2713;\n t.a20 = 0x2714;\n t.a21 = 0x2715;\n t.a22 = 0x2716;\n t.a23 = 0x2717;\n t.a24 = 0x2718;\n t.a25 = 0x2719;\n t.a26 = 0x271a;\n t.a27 = 0x271b;\n t.a28 = 0x271c;\n t.a6 = 0x271d;\n t.a7 = 0x271e;\n t.a8 = 0x271f;\n t.a9 = 0x2720;\n t.a10 = 0x2721;\n t.a29 = 0x2722;\n t.a30 = 0x2723;\n t.a31 = 0x2724;\n t.a32 = 0x2725;\n t.a33 = 0x2726;\n t.a34 = 0x2727;\n t.a35 = 0x2605;\n t.a36 = 0x2729;\n t.a37 = 0x272a;\n t.a38 = 0x272b;\n t.a39 = 0x272c;\n t.a40 = 0x272d;\n t.a41 = 0x272e;\n t.a42 = 0x272f;\n t.a43 = 0x2730;\n t.a44 = 0x2731;\n t.a45 = 0x2732;\n t.a46 = 0x2733;\n t.a47 = 0x2734;\n t.a48 = 0x2735;\n t.a49 = 0x2736;\n t.a50 = 0x2737;\n t.a51 = 0x2738;\n t.a52 = 0x2739;\n t.a53 = 0x273a;\n t.a54 = 0x273b;\n t.a55 = 0x273c;\n t.a56 = 0x273d;\n t.a57 = 0x273e;\n t.a58 = 0x273f;\n t.a59 = 0x2740;\n t.a60 = 0x2741;\n t.a61 = 0x2742;\n t.a62 = 0x2743;\n t.a63 = 0x2744;\n t.a64 = 0x2745;\n t.a65 = 0x2746;\n t.a66 = 0x2747;\n t.a67 = 0x2748;\n t.a68 = 0x2749;\n t.a69 = 0x274a;\n t.a70 = 0x274b;\n t.a71 = 0x25cf;\n t.a72 = 0x274d;\n t.a73 = 0x25a0;\n t.a74 = 0x274f;\n t.a203 = 0x2750;\n t.a75 = 0x2751;\n t.a204 = 0x2752;\n t.a76 = 0x25b2;\n t.a77 = 0x25bc;\n t.a78 = 0x25c6;\n t.a79 = 0x2756;\n t.a81 = 0x25d7;\n t.a82 = 0x2758;\n t.a83 = 0x2759;\n t.a84 = 0x275a;\n t.a97 = 0x275b;\n t.a98 = 0x275c;\n t.a99 = 0x275d;\n t.a100 = 0x275e;\n t.a101 = 0x2761;\n t.a102 = 0x2762;\n t.a103 = 0x2763;\n t.a104 = 0x2764;\n t.a106 = 0x2765;\n t.a107 = 0x2766;\n t.a108 = 0x2767;\n t.a112 = 0x2663;\n t.a111 = 0x2666;\n t.a110 = 0x2665;\n t.a109 = 0x2660;\n t.a120 = 0x2460;\n t.a121 = 0x2461;\n t.a122 = 0x2462;\n t.a123 = 0x2463;\n t.a124 = 0x2464;\n t.a125 = 0x2465;\n t.a126 = 0x2466;\n t.a127 = 0x2467;\n t.a128 = 0x2468;\n t.a129 = 0x2469;\n t.a130 = 0x2776;\n t.a131 = 0x2777;\n t.a132 = 0x2778;\n t.a133 = 0x2779;\n t.a134 = 0x277a;\n t.a135 = 0x277b;\n t.a136 = 0x277c;\n t.a137 = 0x277d;\n t.a138 = 0x277e;\n t.a139 = 0x277f;\n t.a140 = 0x2780;\n t.a141 = 0x2781;\n t.a142 = 0x2782;\n t.a143 = 0x2783;\n t.a144 = 0x2784;\n t.a145 = 0x2785;\n t.a146 = 0x2786;\n t.a147 = 0x2787;\n t.a148 = 0x2788;\n t.a149 = 0x2789;\n t.a150 = 0x278a;\n t.a151 = 0x278b;\n t.a152 = 0x278c;\n t.a153 = 0x278d;\n t.a154 = 0x278e;\n t.a155 = 0x278f;\n t.a156 = 0x2790;\n t.a157 = 0x2791;\n t.a158 = 0x2792;\n t.a159 = 0x2793;\n t.a160 = 0x2794;\n t.a161 = 0x2192;\n t.a163 = 0x2194;\n t.a164 = 0x2195;\n t.a196 = 0x2798;\n t.a165 = 0x2799;\n t.a192 = 0x279a;\n t.a166 = 0x279b;\n t.a167 = 0x279c;\n t.a168 = 0x279d;\n t.a169 = 0x279e;\n t.a170 = 0x279f;\n t.a171 = 0x27a0;\n t.a172 = 0x27a1;\n t.a173 = 0x27a2;\n t.a162 = 0x27a3;\n t.a174 = 0x27a4;\n t.a175 = 0x27a5;\n t.a176 = 0x27a6;\n t.a177 = 0x27a7;\n t.a178 = 0x27a8;\n t.a179 = 0x27a9;\n t.a193 = 0x27aa;\n t.a180 = 0x27ab;\n t.a199 = 0x27ac;\n t.a181 = 0x27ad;\n t.a200 = 0x27ae;\n t.a182 = 0x27af;\n t.a201 = 0x27b1;\n t.a183 = 0x27b2;\n t.a184 = 0x27b3;\n t.a197 = 0x27b4;\n t.a185 = 0x27b5;\n t.a194 = 0x27b6;\n t.a198 = 0x27b7;\n t.a186 = 0x27b8;\n t.a195 = 0x27b9;\n t.a187 = 0x27ba;\n t.a188 = 0x27bb;\n t.a189 = 0x27bc;\n t.a190 = 0x27bd;\n t.a191 = 0x27be;\n t.a89 = 0x2768;\n t.a90 = 0x2769;\n t.a93 = 0x276a;\n t.a94 = 0x276b;\n t.a91 = 0x276c;\n t.a92 = 0x276d;\n t.a205 = 0x276e;\n t.a85 = 0x276f;\n t.a206 = 0x2770;\n t.a86 = 0x2771;\n t.a87 = 0x2772;\n t.a88 = 0x2773;\n t.a95 = 0x2774;\n t.a96 = 0x2775;\n t[\".notdef\"] = 0x0000;\n});\nexports.getDingbatsGlyphsUnicode = getDingbatsGlyphsUnicode;\n\n/***/ }),\n/* 40 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.clearUnicodeCaches = clearUnicodeCaches;\nexports.getCharUnicodeCategory = getCharUnicodeCategory;\nexports.getUnicodeForGlyph = getUnicodeForGlyph;\nexports.getUnicodeRangeFor = getUnicodeRangeFor;\nexports.mapSpecialUnicodeValues = mapSpecialUnicodeValues;\nvar _core_utils = __w_pdfjs_require__(3);\nconst getSpecialPUASymbols = (0, _core_utils.getLookupTableFactory)(function (t) {\n t[63721] = 0x00a9;\n t[63193] = 0x00a9;\n t[63720] = 0x00ae;\n t[63194] = 0x00ae;\n t[63722] = 0x2122;\n t[63195] = 0x2122;\n t[63729] = 0x23a7;\n t[63730] = 0x23a8;\n t[63731] = 0x23a9;\n t[63740] = 0x23ab;\n t[63741] = 0x23ac;\n t[63742] = 0x23ad;\n t[63726] = 0x23a1;\n t[63727] = 0x23a2;\n t[63728] = 0x23a3;\n t[63737] = 0x23a4;\n t[63738] = 0x23a5;\n t[63739] = 0x23a6;\n t[63723] = 0x239b;\n t[63724] = 0x239c;\n t[63725] = 0x239d;\n t[63734] = 0x239e;\n t[63735] = 0x239f;\n t[63736] = 0x23a0;\n});\nfunction mapSpecialUnicodeValues(code) {\n if (code >= 0xfff0 && code <= 0xffff) {\n return 0;\n } else if (code >= 0xf600 && code <= 0xf8ff) {\n return getSpecialPUASymbols()[code] || code;\n } else if (code === 0x00ad) {\n return 0x002d;\n }\n return code;\n}\nfunction getUnicodeForGlyph(name, glyphsUnicodeMap) {\n let unicode = glyphsUnicodeMap[name];\n if (unicode !== undefined) {\n return unicode;\n }\n if (!name) {\n return -1;\n }\n if (name[0] === \"u\") {\n const nameLen = name.length;\n let hexStr;\n if (nameLen === 7 && name[1] === \"n\" && name[2] === \"i\") {\n hexStr = name.substring(3);\n } else if (nameLen >= 5 && nameLen <= 7) {\n hexStr = name.substring(1);\n } else {\n return -1;\n }\n if (hexStr === hexStr.toUpperCase()) {\n unicode = parseInt(hexStr, 16);\n if (unicode >= 0) {\n return unicode;\n }\n }\n }\n return -1;\n}\nconst UnicodeRanges = [[0x0000, 0x007f], [0x0080, 0x00ff], [0x0100, 0x017f], [0x0180, 0x024f], [0x0250, 0x02af, 0x1d00, 0x1d7f, 0x1d80, 0x1dbf], [0x02b0, 0x02ff, 0xa700, 0xa71f], [0x0300, 0x036f, 0x1dc0, 0x1dff], [0x0370, 0x03ff], [0x2c80, 0x2cff], [0x0400, 0x04ff, 0x0500, 0x052f, 0x2de0, 0x2dff, 0xa640, 0xa69f], [0x0530, 0x058f], [0x0590, 0x05ff], [0xa500, 0xa63f], [0x0600, 0x06ff, 0x0750, 0x077f], [0x07c0, 0x07ff], [0x0900, 0x097f], [0x0980, 0x09ff], [0x0a00, 0x0a7f], [0x0a80, 0x0aff], [0x0b00, 0x0b7f], [0x0b80, 0x0bff], [0x0c00, 0x0c7f], [0x0c80, 0x0cff], [0x0d00, 0x0d7f], [0x0e00, 0x0e7f], [0x0e80, 0x0eff], [0x10a0, 0x10ff, 0x2d00, 0x2d2f], [0x1b00, 0x1b7f], [0x1100, 0x11ff], [0x1e00, 0x1eff, 0x2c60, 0x2c7f, 0xa720, 0xa7ff], [0x1f00, 0x1fff], [0x2000, 0x206f, 0x2e00, 0x2e7f], [0x2070, 0x209f], [0x20a0, 0x20cf], [0x20d0, 0x20ff], [0x2100, 0x214f], [0x2150, 0x218f], [0x2190, 0x21ff, 0x27f0, 0x27ff, 0x2900, 0x297f, 0x2b00, 0x2bff], [0x2200, 0x22ff, 0x2a00, 0x2aff, 0x27c0, 0x27ef, 0x2980, 0x29ff], [0x2300, 0x23ff], [0x2400, 0x243f], [0x2440, 0x245f], [0x2460, 0x24ff], [0x2500, 0x257f], [0x2580, 0x259f], [0x25a0, 0x25ff], [0x2600, 0x26ff], [0x2700, 0x27bf], [0x3000, 0x303f], [0x3040, 0x309f], [0x30a0, 0x30ff, 0x31f0, 0x31ff], [0x3100, 0x312f, 0x31a0, 0x31bf], [0x3130, 0x318f], [0xa840, 0xa87f], [0x3200, 0x32ff], [0x3300, 0x33ff], [0xac00, 0xd7af], [0xd800, 0xdfff], [0x10900, 0x1091f], [0x4e00, 0x9fff, 0x2e80, 0x2eff, 0x2f00, 0x2fdf, 0x2ff0, 0x2fff, 0x3400, 0x4dbf, 0x20000, 0x2a6df, 0x3190, 0x319f], [0xe000, 0xf8ff], [0x31c0, 0x31ef, 0xf900, 0xfaff, 0x2f800, 0x2fa1f], [0xfb00, 0xfb4f], [0xfb50, 0xfdff], [0xfe20, 0xfe2f], [0xfe10, 0xfe1f], [0xfe50, 0xfe6f], [0xfe70, 0xfeff], [0xff00, 0xffef], [0xfff0, 0xffff], [0x0f00, 0x0fff], [0x0700, 0x074f], [0x0780, 0x07bf], [0x0d80, 0x0dff], [0x1000, 0x109f], [0x1200, 0x137f, 0x1380, 0x139f, 0x2d80, 0x2ddf], [0x13a0, 0x13ff], [0x1400, 0x167f], [0x1680, 0x169f], [0x16a0, 0x16ff], [0x1780, 0x17ff], [0x1800, 0x18af], [0x2800, 0x28ff], [0xa000, 0xa48f], [0x1700, 0x171f, 0x1720, 0x173f, 0x1740, 0x175f, 0x1760, 0x177f], [0x10300, 0x1032f], [0x10330, 0x1034f], [0x10400, 0x1044f], [0x1d000, 0x1d0ff, 0x1d100, 0x1d1ff, 0x1d200, 0x1d24f], [0x1d400, 0x1d7ff], [0xff000, 0xffffd], [0xfe00, 0xfe0f, 0xe0100, 0xe01ef], [0xe0000, 0xe007f], [0x1900, 0x194f], [0x1950, 0x197f], [0x1980, 0x19df], [0x1a00, 0x1a1f], [0x2c00, 0x2c5f], [0x2d30, 0x2d7f], [0x4dc0, 0x4dff], [0xa800, 0xa82f], [0x10000, 0x1007f, 0x10080, 0x100ff, 0x10100, 0x1013f], [0x10140, 0x1018f], [0x10380, 0x1039f], [0x103a0, 0x103df], [0x10450, 0x1047f], [0x10480, 0x104af], [0x10800, 0x1083f], [0x10a00, 0x10a5f], [0x1d300, 0x1d35f], [0x12000, 0x123ff, 0x12400, 0x1247f], [0x1d360, 0x1d37f], [0x1b80, 0x1bbf], [0x1c00, 0x1c4f], [0x1c50, 0x1c7f], [0xa880, 0xa8df], [0xa900, 0xa92f], [0xa930, 0xa95f], [0xaa00, 0xaa5f], [0x10190, 0x101cf], [0x101d0, 0x101ff], [0x102a0, 0x102df, 0x10280, 0x1029f, 0x10920, 0x1093f], [0x1f030, 0x1f09f, 0x1f000, 0x1f02f]];\nfunction getUnicodeRangeFor(value, lastPosition = -1) {\n if (lastPosition !== -1) {\n const range = UnicodeRanges[lastPosition];\n for (let i = 0, ii = range.length; i < ii; i += 2) {\n if (value >= range[i] && value <= range[i + 1]) {\n return lastPosition;\n }\n }\n }\n for (let i = 0, ii = UnicodeRanges.length; i < ii; i++) {\n const range = UnicodeRanges[i];\n for (let j = 0, jj = range.length; j < jj; j += 2) {\n if (value >= range[j] && value <= range[j + 1]) {\n return i;\n }\n }\n }\n return -1;\n}\nconst SpecialCharRegExp = new RegExp(\"^(\\\\s)|(\\\\p{Mn})|(\\\\p{Cf})$\", \"u\");\nconst CategoryCache = new Map();\nfunction getCharUnicodeCategory(char) {\n const cachedCategory = CategoryCache.get(char);\n if (cachedCategory) {\n return cachedCategory;\n }\n const groups = char.match(SpecialCharRegExp);\n const category = {\n isWhitespace: !!groups?.[1],\n isZeroWidthDiacritic: !!groups?.[2],\n isInvisibleFormatMark: !!groups?.[3]\n };\n CategoryCache.set(char, category);\n return category;\n}\nfunction clearUnicodeCaches() {\n CategoryCache.clear();\n}\n\n/***/ }),\n/* 41 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getSerifFonts = exports.getNonStdFontMap = exports.getGlyphMapForStandardFonts = exports.getFontNameToFileMap = void 0;\nexports.getStandardFontName = getStandardFontName;\nexports.getSymbolsFonts = exports.getSupplementalGlyphMapForCalibri = exports.getSupplementalGlyphMapForArialBlack = exports.getStdFontMap = void 0;\nexports.isKnownFontName = isKnownFontName;\nvar _core_utils = __w_pdfjs_require__(3);\nvar _fonts_utils = __w_pdfjs_require__(38);\nconst getStdFontMap = (0, _core_utils.getLookupTableFactory)(function (t) {\n t[\"Times-Roman\"] = \"Times-Roman\";\n t.Helvetica = \"Helvetica\";\n t.Courier = \"Courier\";\n t.Symbol = \"Symbol\";\n t[\"Times-Bold\"] = \"Times-Bold\";\n t[\"Helvetica-Bold\"] = \"Helvetica-Bold\";\n t[\"Courier-Bold\"] = \"Courier-Bold\";\n t.ZapfDingbats = \"ZapfDingbats\";\n t[\"Times-Italic\"] = \"Times-Italic\";\n t[\"Helvetica-Oblique\"] = \"Helvetica-Oblique\";\n t[\"Courier-Oblique\"] = \"Courier-Oblique\";\n t[\"Times-BoldItalic\"] = \"Times-BoldItalic\";\n t[\"Helvetica-BoldOblique\"] = \"Helvetica-BoldOblique\";\n t[\"Courier-BoldOblique\"] = \"Courier-BoldOblique\";\n t.ArialNarrow = \"Helvetica\";\n t[\"ArialNarrow-Bold\"] = \"Helvetica-Bold\";\n t[\"ArialNarrow-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"ArialNarrow-Italic\"] = \"Helvetica-Oblique\";\n t.ArialBlack = \"Helvetica\";\n t[\"ArialBlack-Bold\"] = \"Helvetica-Bold\";\n t[\"ArialBlack-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"ArialBlack-Italic\"] = \"Helvetica-Oblique\";\n t[\"Arial-Black\"] = \"Helvetica\";\n t[\"Arial-Black-Bold\"] = \"Helvetica-Bold\";\n t[\"Arial-Black-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"Arial-Black-Italic\"] = \"Helvetica-Oblique\";\n t.Arial = \"Helvetica\";\n t[\"Arial-Bold\"] = \"Helvetica-Bold\";\n t[\"Arial-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"Arial-Italic\"] = \"Helvetica-Oblique\";\n t.ArialMT = \"Helvetica\";\n t[\"Arial-BoldItalicMT\"] = \"Helvetica-BoldOblique\";\n t[\"Arial-BoldMT\"] = \"Helvetica-Bold\";\n t[\"Arial-ItalicMT\"] = \"Helvetica-Oblique\";\n t[\"Arial-BoldItalicMT-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"Arial-BoldMT-Bold\"] = \"Helvetica-Bold\";\n t[\"Arial-ItalicMT-Italic\"] = \"Helvetica-Oblique\";\n t.ArialUnicodeMS = \"Helvetica\";\n t[\"ArialUnicodeMS-Bold\"] = \"Helvetica-Bold\";\n t[\"ArialUnicodeMS-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"ArialUnicodeMS-Italic\"] = \"Helvetica-Oblique\";\n t[\"Courier-BoldItalic\"] = \"Courier-BoldOblique\";\n t[\"Courier-Italic\"] = \"Courier-Oblique\";\n t.CourierNew = \"Courier\";\n t[\"CourierNew-Bold\"] = \"Courier-Bold\";\n t[\"CourierNew-BoldItalic\"] = \"Courier-BoldOblique\";\n t[\"CourierNew-Italic\"] = \"Courier-Oblique\";\n t[\"CourierNewPS-BoldItalicMT\"] = \"Courier-BoldOblique\";\n t[\"CourierNewPS-BoldMT\"] = \"Courier-Bold\";\n t[\"CourierNewPS-ItalicMT\"] = \"Courier-Oblique\";\n t.CourierNewPSMT = \"Courier\";\n t[\"Helvetica-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"Helvetica-Italic\"] = \"Helvetica-Oblique\";\n t[\"Symbol-Bold\"] = \"Symbol\";\n t[\"Symbol-BoldItalic\"] = \"Symbol\";\n t[\"Symbol-Italic\"] = \"Symbol\";\n t.TimesNewRoman = \"Times-Roman\";\n t[\"TimesNewRoman-Bold\"] = \"Times-Bold\";\n t[\"TimesNewRoman-BoldItalic\"] = \"Times-BoldItalic\";\n t[\"TimesNewRoman-Italic\"] = \"Times-Italic\";\n t.TimesNewRomanPS = \"Times-Roman\";\n t[\"TimesNewRomanPS-Bold\"] = \"Times-Bold\";\n t[\"TimesNewRomanPS-BoldItalic\"] = \"Times-BoldItalic\";\n t[\"TimesNewRomanPS-BoldItalicMT\"] = \"Times-BoldItalic\";\n t[\"TimesNewRomanPS-BoldMT\"] = \"Times-Bold\";\n t[\"TimesNewRomanPS-Italic\"] = \"Times-Italic\";\n t[\"TimesNewRomanPS-ItalicMT\"] = \"Times-Italic\";\n t.TimesNewRomanPSMT = \"Times-Roman\";\n t[\"TimesNewRomanPSMT-Bold\"] = \"Times-Bold\";\n t[\"TimesNewRomanPSMT-BoldItalic\"] = \"Times-BoldItalic\";\n t[\"TimesNewRomanPSMT-Italic\"] = \"Times-Italic\";\n});\nexports.getStdFontMap = getStdFontMap;\nconst getFontNameToFileMap = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.Courier = \"FoxitFixed.pfb\";\n t[\"Courier-Bold\"] = \"FoxitFixedBold.pfb\";\n t[\"Courier-BoldOblique\"] = \"FoxitFixedBoldItalic.pfb\";\n t[\"Courier-Oblique\"] = \"FoxitFixedItalic.pfb\";\n t.Helvetica = \"LiberationSans-Regular.ttf\";\n t[\"Helvetica-Bold\"] = \"LiberationSans-Bold.ttf\";\n t[\"Helvetica-BoldOblique\"] = \"LiberationSans-BoldItalic.ttf\";\n t[\"Helvetica-Oblique\"] = \"LiberationSans-Italic.ttf\";\n t[\"Times-Roman\"] = \"FoxitSerif.pfb\";\n t[\"Times-Bold\"] = \"FoxitSerifBold.pfb\";\n t[\"Times-BoldItalic\"] = \"FoxitSerifBoldItalic.pfb\";\n t[\"Times-Italic\"] = \"FoxitSerifItalic.pfb\";\n t.Symbol = \"FoxitSymbol.pfb\";\n t.ZapfDingbats = \"FoxitDingbats.pfb\";\n t[\"LiberationSans-Regular\"] = \"LiberationSans-Regular.ttf\";\n t[\"LiberationSans-Bold\"] = \"LiberationSans-Bold.ttf\";\n t[\"LiberationSans-Italic\"] = \"LiberationSans-Italic.ttf\";\n t[\"LiberationSans-BoldItalic\"] = \"LiberationSans-BoldItalic.ttf\";\n});\nexports.getFontNameToFileMap = getFontNameToFileMap;\nconst getNonStdFontMap = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.Calibri = \"Helvetica\";\n t[\"Calibri-Bold\"] = \"Helvetica-Bold\";\n t[\"Calibri-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"Calibri-Italic\"] = \"Helvetica-Oblique\";\n t.CenturyGothic = \"Helvetica\";\n t[\"CenturyGothic-Bold\"] = \"Helvetica-Bold\";\n t[\"CenturyGothic-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"CenturyGothic-Italic\"] = \"Helvetica-Oblique\";\n t.ComicSansMS = \"Comic Sans MS\";\n t[\"ComicSansMS-Bold\"] = \"Comic Sans MS-Bold\";\n t[\"ComicSansMS-BoldItalic\"] = \"Comic Sans MS-BoldItalic\";\n t[\"ComicSansMS-Italic\"] = \"Comic Sans MS-Italic\";\n t.Impact = \"Helvetica\";\n t[\"ItcSymbol-Bold\"] = \"Helvetica-Bold\";\n t[\"ItcSymbol-BoldItalic\"] = \"Helvetica-BoldOblique\";\n t[\"ItcSymbol-Book\"] = \"Helvetica\";\n t[\"ItcSymbol-BookItalic\"] = \"Helvetica-Oblique\";\n t[\"ItcSymbol-Medium\"] = \"Helvetica\";\n t[\"ItcSymbol-MediumItalic\"] = \"Helvetica-Oblique\";\n t.LucidaConsole = \"Courier\";\n t[\"LucidaConsole-Bold\"] = \"Courier-Bold\";\n t[\"LucidaConsole-BoldItalic\"] = \"Courier-BoldOblique\";\n t[\"LucidaConsole-Italic\"] = \"Courier-Oblique\";\n t[\"LucidaSans-Demi\"] = \"Helvetica-Bold\";\n t[\"MS-Gothic\"] = \"MS Gothic\";\n t[\"MS-Gothic-Bold\"] = \"MS Gothic-Bold\";\n t[\"MS-Gothic-BoldItalic\"] = \"MS Gothic-BoldItalic\";\n t[\"MS-Gothic-Italic\"] = \"MS Gothic-Italic\";\n t[\"MS-Mincho\"] = \"MS Mincho\";\n t[\"MS-Mincho-Bold\"] = \"MS Mincho-Bold\";\n t[\"MS-Mincho-BoldItalic\"] = \"MS Mincho-BoldItalic\";\n t[\"MS-Mincho-Italic\"] = \"MS Mincho-Italic\";\n t[\"MS-PGothic\"] = \"MS PGothic\";\n t[\"MS-PGothic-Bold\"] = \"MS PGothic-Bold\";\n t[\"MS-PGothic-BoldItalic\"] = \"MS PGothic-BoldItalic\";\n t[\"MS-PGothic-Italic\"] = \"MS PGothic-Italic\";\n t[\"MS-PMincho\"] = \"MS PMincho\";\n t[\"MS-PMincho-Bold\"] = \"MS PMincho-Bold\";\n t[\"MS-PMincho-BoldItalic\"] = \"MS PMincho-BoldItalic\";\n t[\"MS-PMincho-Italic\"] = \"MS PMincho-Italic\";\n t.NuptialScript = \"Times-Italic\";\n t.SegoeUISymbol = \"Helvetica\";\n});\nexports.getNonStdFontMap = getNonStdFontMap;\nconst getSerifFonts = (0, _core_utils.getLookupTableFactory)(function (t) {\n t[\"Adobe Jenson\"] = true;\n t[\"Adobe Text\"] = true;\n t.Albertus = true;\n t.Aldus = true;\n t.Alexandria = true;\n t.Algerian = true;\n t[\"American Typewriter\"] = true;\n t.Antiqua = true;\n t.Apex = true;\n t.Arno = true;\n t.Aster = true;\n t.Aurora = true;\n t.Baskerville = true;\n t.Bell = true;\n t.Bembo = true;\n t[\"Bembo Schoolbook\"] = true;\n t.Benguiat = true;\n t[\"Berkeley Old Style\"] = true;\n t[\"Bernhard Modern\"] = true;\n t[\"Berthold City\"] = true;\n t.Bodoni = true;\n t[\"Bauer Bodoni\"] = true;\n t[\"Book Antiqua\"] = true;\n t.Bookman = true;\n t[\"Bordeaux Roman\"] = true;\n t[\"Californian FB\"] = true;\n t.Calisto = true;\n t.Calvert = true;\n t.Capitals = true;\n t.Cambria = true;\n t.Cartier = true;\n t.Caslon = true;\n t.Catull = true;\n t.Centaur = true;\n t[\"Century Old Style\"] = true;\n t[\"Century Schoolbook\"] = true;\n t.Chaparral = true;\n t[\"Charis SIL\"] = true;\n t.Cheltenham = true;\n t[\"Cholla Slab\"] = true;\n t.Clarendon = true;\n t.Clearface = true;\n t.Cochin = true;\n t.Colonna = true;\n t[\"Computer Modern\"] = true;\n t[\"Concrete Roman\"] = true;\n t.Constantia = true;\n t[\"Cooper Black\"] = true;\n t.Corona = true;\n t.Ecotype = true;\n t.Egyptienne = true;\n t.Elephant = true;\n t.Excelsior = true;\n t.Fairfield = true;\n t[\"FF Scala\"] = true;\n t.Folkard = true;\n t.Footlight = true;\n t.FreeSerif = true;\n t[\"Friz Quadrata\"] = true;\n t.Garamond = true;\n t.Gentium = true;\n t.Georgia = true;\n t.Gloucester = true;\n t[\"Goudy Old Style\"] = true;\n t[\"Goudy Schoolbook\"] = true;\n t[\"Goudy Pro Font\"] = true;\n t.Granjon = true;\n t[\"Guardian Egyptian\"] = true;\n t.Heather = true;\n t.Hercules = true;\n t[\"High Tower Text\"] = true;\n t.Hiroshige = true;\n t[\"Hoefler Text\"] = true;\n t[\"Humana Serif\"] = true;\n t.Imprint = true;\n t[\"Ionic No. 5\"] = true;\n t.Janson = true;\n t.Joanna = true;\n t.Korinna = true;\n t.Lexicon = true;\n t.LiberationSerif = true;\n t[\"Liberation Serif\"] = true;\n t[\"Linux Libertine\"] = true;\n t.Literaturnaya = true;\n t.Lucida = true;\n t[\"Lucida Bright\"] = true;\n t.Melior = true;\n t.Memphis = true;\n t.Miller = true;\n t.Minion = true;\n t.Modern = true;\n t[\"Mona Lisa\"] = true;\n t[\"Mrs Eaves\"] = true;\n t[\"MS Serif\"] = true;\n t[\"Museo Slab\"] = true;\n t[\"New York\"] = true;\n t[\"Nimbus Roman\"] = true;\n t[\"NPS Rawlinson Roadway\"] = true;\n t.NuptialScript = true;\n t.Palatino = true;\n t.Perpetua = true;\n t.Plantin = true;\n t[\"Plantin Schoolbook\"] = true;\n t.Playbill = true;\n t[\"Poor Richard\"] = true;\n t[\"Rawlinson Roadway\"] = true;\n t.Renault = true;\n t.Requiem = true;\n t.Rockwell = true;\n t.Roman = true;\n t[\"Rotis Serif\"] = true;\n t.Sabon = true;\n t.Scala = true;\n t.Seagull = true;\n t.Sistina = true;\n t.Souvenir = true;\n t.STIX = true;\n t[\"Stone Informal\"] = true;\n t[\"Stone Serif\"] = true;\n t.Sylfaen = true;\n t.Times = true;\n t.Trajan = true;\n t[\"Trinité\"] = true;\n t[\"Trump Mediaeval\"] = true;\n t.Utopia = true;\n t[\"Vale Type\"] = true;\n t[\"Bitstream Vera\"] = true;\n t[\"Vera Serif\"] = true;\n t.Versailles = true;\n t.Wanted = true;\n t.Weiss = true;\n t[\"Wide Latin\"] = true;\n t.Windsor = true;\n t.XITS = true;\n});\nexports.getSerifFonts = getSerifFonts;\nconst getSymbolsFonts = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.Dingbats = true;\n t.Symbol = true;\n t.ZapfDingbats = true;\n t.Wingdings = true;\n t[\"Wingdings-Bold\"] = true;\n t[\"Wingdings-Regular\"] = true;\n});\nexports.getSymbolsFonts = getSymbolsFonts;\nconst getGlyphMapForStandardFonts = (0, _core_utils.getLookupTableFactory)(function (t) {\n t[2] = 10;\n t[3] = 32;\n t[4] = 33;\n t[5] = 34;\n t[6] = 35;\n t[7] = 36;\n t[8] = 37;\n t[9] = 38;\n t[10] = 39;\n t[11] = 40;\n t[12] = 41;\n t[13] = 42;\n t[14] = 43;\n t[15] = 44;\n t[16] = 45;\n t[17] = 46;\n t[18] = 47;\n t[19] = 48;\n t[20] = 49;\n t[21] = 50;\n t[22] = 51;\n t[23] = 52;\n t[24] = 53;\n t[25] = 54;\n t[26] = 55;\n t[27] = 56;\n t[28] = 57;\n t[29] = 58;\n t[30] = 894;\n t[31] = 60;\n t[32] = 61;\n t[33] = 62;\n t[34] = 63;\n t[35] = 64;\n t[36] = 65;\n t[37] = 66;\n t[38] = 67;\n t[39] = 68;\n t[40] = 69;\n t[41] = 70;\n t[42] = 71;\n t[43] = 72;\n t[44] = 73;\n t[45] = 74;\n t[46] = 75;\n t[47] = 76;\n t[48] = 77;\n t[49] = 78;\n t[50] = 79;\n t[51] = 80;\n t[52] = 81;\n t[53] = 82;\n t[54] = 83;\n t[55] = 84;\n t[56] = 85;\n t[57] = 86;\n t[58] = 87;\n t[59] = 88;\n t[60] = 89;\n t[61] = 90;\n t[62] = 91;\n t[63] = 92;\n t[64] = 93;\n t[65] = 94;\n t[66] = 95;\n t[67] = 96;\n t[68] = 97;\n t[69] = 98;\n t[70] = 99;\n t[71] = 100;\n t[72] = 101;\n t[73] = 102;\n t[74] = 103;\n t[75] = 104;\n t[76] = 105;\n t[77] = 106;\n t[78] = 107;\n t[79] = 108;\n t[80] = 109;\n t[81] = 110;\n t[82] = 111;\n t[83] = 112;\n t[84] = 113;\n t[85] = 114;\n t[86] = 115;\n t[87] = 116;\n t[88] = 117;\n t[89] = 118;\n t[90] = 119;\n t[91] = 120;\n t[92] = 121;\n t[93] = 122;\n t[94] = 123;\n t[95] = 124;\n t[96] = 125;\n t[97] = 126;\n t[98] = 196;\n t[99] = 197;\n t[100] = 199;\n t[101] = 201;\n t[102] = 209;\n t[103] = 214;\n t[104] = 220;\n t[105] = 225;\n t[106] = 224;\n t[107] = 226;\n t[108] = 228;\n t[109] = 227;\n t[110] = 229;\n t[111] = 231;\n t[112] = 233;\n t[113] = 232;\n t[114] = 234;\n t[115] = 235;\n t[116] = 237;\n t[117] = 236;\n t[118] = 238;\n t[119] = 239;\n t[120] = 241;\n t[121] = 243;\n t[122] = 242;\n t[123] = 244;\n t[124] = 246;\n t[125] = 245;\n t[126] = 250;\n t[127] = 249;\n t[128] = 251;\n t[129] = 252;\n t[130] = 8224;\n t[131] = 176;\n t[132] = 162;\n t[133] = 163;\n t[134] = 167;\n t[135] = 8226;\n t[136] = 182;\n t[137] = 223;\n t[138] = 174;\n t[139] = 169;\n t[140] = 8482;\n t[141] = 180;\n t[142] = 168;\n t[143] = 8800;\n t[144] = 198;\n t[145] = 216;\n t[146] = 8734;\n t[147] = 177;\n t[148] = 8804;\n t[149] = 8805;\n t[150] = 165;\n t[151] = 181;\n t[152] = 8706;\n t[153] = 8721;\n t[154] = 8719;\n t[156] = 8747;\n t[157] = 170;\n t[158] = 186;\n t[159] = 8486;\n t[160] = 230;\n t[161] = 248;\n t[162] = 191;\n t[163] = 161;\n t[164] = 172;\n t[165] = 8730;\n t[166] = 402;\n t[167] = 8776;\n t[168] = 8710;\n t[169] = 171;\n t[170] = 187;\n t[171] = 8230;\n t[179] = 8220;\n t[180] = 8221;\n t[181] = 8216;\n t[182] = 8217;\n t[200] = 193;\n t[203] = 205;\n t[207] = 211;\n t[210] = 218;\n t[223] = 711;\n t[224] = 321;\n t[225] = 322;\n t[226] = 352;\n t[227] = 353;\n t[228] = 381;\n t[229] = 382;\n t[233] = 221;\n t[234] = 253;\n t[252] = 263;\n t[253] = 268;\n t[254] = 269;\n t[258] = 258;\n t[260] = 260;\n t[261] = 261;\n t[265] = 280;\n t[266] = 281;\n t[267] = 282;\n t[268] = 283;\n t[269] = 313;\n t[275] = 323;\n t[276] = 324;\n t[278] = 328;\n t[283] = 344;\n t[284] = 345;\n t[285] = 346;\n t[286] = 347;\n t[292] = 367;\n t[295] = 377;\n t[296] = 378;\n t[298] = 380;\n t[305] = 963;\n t[306] = 964;\n t[307] = 966;\n t[308] = 8215;\n t[309] = 8252;\n t[310] = 8319;\n t[311] = 8359;\n t[312] = 8592;\n t[313] = 8593;\n t[337] = 9552;\n t[493] = 1039;\n t[494] = 1040;\n t[672] = 1488;\n t[673] = 1489;\n t[674] = 1490;\n t[675] = 1491;\n t[676] = 1492;\n t[677] = 1493;\n t[678] = 1494;\n t[679] = 1495;\n t[680] = 1496;\n t[681] = 1497;\n t[682] = 1498;\n t[683] = 1499;\n t[684] = 1500;\n t[685] = 1501;\n t[686] = 1502;\n t[687] = 1503;\n t[688] = 1504;\n t[689] = 1505;\n t[690] = 1506;\n t[691] = 1507;\n t[692] = 1508;\n t[693] = 1509;\n t[694] = 1510;\n t[695] = 1511;\n t[696] = 1512;\n t[697] = 1513;\n t[698] = 1514;\n t[705] = 1524;\n t[706] = 8362;\n t[710] = 64288;\n t[711] = 64298;\n t[759] = 1617;\n t[761] = 1776;\n t[763] = 1778;\n t[775] = 1652;\n t[777] = 1764;\n t[778] = 1780;\n t[779] = 1781;\n t[780] = 1782;\n t[782] = 771;\n t[783] = 64726;\n t[786] = 8363;\n t[788] = 8532;\n t[790] = 768;\n t[791] = 769;\n t[792] = 768;\n t[795] = 803;\n t[797] = 64336;\n t[798] = 64337;\n t[799] = 64342;\n t[800] = 64343;\n t[801] = 64344;\n t[802] = 64345;\n t[803] = 64362;\n t[804] = 64363;\n t[805] = 64364;\n t[2424] = 7821;\n t[2425] = 7822;\n t[2426] = 7823;\n t[2427] = 7824;\n t[2428] = 7825;\n t[2429] = 7826;\n t[2430] = 7827;\n t[2433] = 7682;\n t[2678] = 8045;\n t[2679] = 8046;\n t[2830] = 1552;\n t[2838] = 686;\n t[2840] = 751;\n t[2842] = 753;\n t[2843] = 754;\n t[2844] = 755;\n t[2846] = 757;\n t[2856] = 767;\n t[2857] = 848;\n t[2858] = 849;\n t[2862] = 853;\n t[2863] = 854;\n t[2864] = 855;\n t[2865] = 861;\n t[2866] = 862;\n t[2906] = 7460;\n t[2908] = 7462;\n t[2909] = 7463;\n t[2910] = 7464;\n t[2912] = 7466;\n t[2913] = 7467;\n t[2914] = 7468;\n t[2916] = 7470;\n t[2917] = 7471;\n t[2918] = 7472;\n t[2920] = 7474;\n t[2921] = 7475;\n t[2922] = 7476;\n t[2924] = 7478;\n t[2925] = 7479;\n t[2926] = 7480;\n t[2928] = 7482;\n t[2929] = 7483;\n t[2930] = 7484;\n t[2932] = 7486;\n t[2933] = 7487;\n t[2934] = 7488;\n t[2936] = 7490;\n t[2937] = 7491;\n t[2938] = 7492;\n t[2940] = 7494;\n t[2941] = 7495;\n t[2942] = 7496;\n t[2944] = 7498;\n t[2946] = 7500;\n t[2948] = 7502;\n t[2950] = 7504;\n t[2951] = 7505;\n t[2952] = 7506;\n t[2954] = 7508;\n t[2955] = 7509;\n t[2956] = 7510;\n t[2958] = 7512;\n t[2959] = 7513;\n t[2960] = 7514;\n t[2962] = 7516;\n t[2963] = 7517;\n t[2964] = 7518;\n t[2966] = 7520;\n t[2967] = 7521;\n t[2968] = 7522;\n t[2970] = 7524;\n t[2971] = 7525;\n t[2972] = 7526;\n t[2974] = 7528;\n t[2975] = 7529;\n t[2976] = 7530;\n t[2978] = 1537;\n t[2979] = 1538;\n t[2980] = 1539;\n t[2982] = 1549;\n t[2983] = 1551;\n t[2984] = 1552;\n t[2986] = 1554;\n t[2987] = 1555;\n t[2988] = 1556;\n t[2990] = 1623;\n t[2991] = 1624;\n t[2995] = 1775;\n t[2999] = 1791;\n t[3002] = 64290;\n t[3003] = 64291;\n t[3004] = 64292;\n t[3006] = 64294;\n t[3007] = 64295;\n t[3008] = 64296;\n t[3011] = 1900;\n t[3014] = 8223;\n t[3015] = 8244;\n t[3017] = 7532;\n t[3018] = 7533;\n t[3019] = 7534;\n t[3075] = 7590;\n t[3076] = 7591;\n t[3079] = 7594;\n t[3080] = 7595;\n t[3083] = 7598;\n t[3084] = 7599;\n t[3087] = 7602;\n t[3088] = 7603;\n t[3091] = 7606;\n t[3092] = 7607;\n t[3095] = 7610;\n t[3096] = 7611;\n t[3099] = 7614;\n t[3100] = 7615;\n t[3103] = 7618;\n t[3104] = 7619;\n t[3107] = 8337;\n t[3108] = 8338;\n t[3116] = 1884;\n t[3119] = 1885;\n t[3120] = 1885;\n t[3123] = 1886;\n t[3124] = 1886;\n t[3127] = 1887;\n t[3128] = 1887;\n t[3131] = 1888;\n t[3132] = 1888;\n t[3135] = 1889;\n t[3136] = 1889;\n t[3139] = 1890;\n t[3140] = 1890;\n t[3143] = 1891;\n t[3144] = 1891;\n t[3147] = 1892;\n t[3148] = 1892;\n t[3153] = 580;\n t[3154] = 581;\n t[3157] = 584;\n t[3158] = 585;\n t[3161] = 588;\n t[3162] = 589;\n t[3165] = 891;\n t[3166] = 892;\n t[3169] = 1274;\n t[3170] = 1275;\n t[3173] = 1278;\n t[3174] = 1279;\n t[3181] = 7622;\n t[3182] = 7623;\n t[3282] = 11799;\n t[3316] = 578;\n t[3379] = 42785;\n t[3393] = 1159;\n t[3416] = 8377;\n});\nexports.getGlyphMapForStandardFonts = getGlyphMapForStandardFonts;\nconst getSupplementalGlyphMapForArialBlack = (0, _core_utils.getLookupTableFactory)(function (t) {\n t[227] = 322;\n t[264] = 261;\n t[291] = 346;\n});\nexports.getSupplementalGlyphMapForArialBlack = getSupplementalGlyphMapForArialBlack;\nconst getSupplementalGlyphMapForCalibri = (0, _core_utils.getLookupTableFactory)(function (t) {\n t[1] = 32;\n t[4] = 65;\n t[5] = 192;\n t[6] = 193;\n t[9] = 196;\n t[17] = 66;\n t[18] = 67;\n t[21] = 268;\n t[24] = 68;\n t[28] = 69;\n t[29] = 200;\n t[30] = 201;\n t[32] = 282;\n t[38] = 70;\n t[39] = 71;\n t[44] = 72;\n t[47] = 73;\n t[48] = 204;\n t[49] = 205;\n t[58] = 74;\n t[60] = 75;\n t[62] = 76;\n t[68] = 77;\n t[69] = 78;\n t[75] = 79;\n t[76] = 210;\n t[80] = 214;\n t[87] = 80;\n t[89] = 81;\n t[90] = 82;\n t[92] = 344;\n t[94] = 83;\n t[97] = 352;\n t[100] = 84;\n t[104] = 85;\n t[109] = 220;\n t[115] = 86;\n t[116] = 87;\n t[121] = 88;\n t[122] = 89;\n t[124] = 221;\n t[127] = 90;\n t[129] = 381;\n t[258] = 97;\n t[259] = 224;\n t[260] = 225;\n t[263] = 228;\n t[268] = 261;\n t[271] = 98;\n t[272] = 99;\n t[273] = 263;\n t[275] = 269;\n t[282] = 100;\n t[286] = 101;\n t[287] = 232;\n t[288] = 233;\n t[290] = 283;\n t[295] = 281;\n t[296] = 102;\n t[336] = 103;\n t[346] = 104;\n t[349] = 105;\n t[350] = 236;\n t[351] = 237;\n t[361] = 106;\n t[364] = 107;\n t[367] = 108;\n t[371] = 322;\n t[373] = 109;\n t[374] = 110;\n t[381] = 111;\n t[382] = 242;\n t[383] = 243;\n t[386] = 246;\n t[393] = 112;\n t[395] = 113;\n t[396] = 114;\n t[398] = 345;\n t[400] = 115;\n t[401] = 347;\n t[403] = 353;\n t[410] = 116;\n t[437] = 117;\n t[442] = 252;\n t[448] = 118;\n t[449] = 119;\n t[454] = 120;\n t[455] = 121;\n t[457] = 253;\n t[460] = 122;\n t[462] = 382;\n t[463] = 380;\n t[853] = 44;\n t[855] = 58;\n t[856] = 46;\n t[876] = 47;\n t[878] = 45;\n t[882] = 45;\n t[894] = 40;\n t[895] = 41;\n t[896] = 91;\n t[897] = 93;\n t[923] = 64;\n t[1004] = 48;\n t[1005] = 49;\n t[1006] = 50;\n t[1007] = 51;\n t[1008] = 52;\n t[1009] = 53;\n t[1010] = 54;\n t[1011] = 55;\n t[1012] = 56;\n t[1013] = 57;\n t[1081] = 37;\n t[1085] = 43;\n t[1086] = 45;\n});\nexports.getSupplementalGlyphMapForCalibri = getSupplementalGlyphMapForCalibri;\nfunction getStandardFontName(name) {\n const fontName = (0, _fonts_utils.normalizeFontName)(name);\n const stdFontMap = getStdFontMap();\n return stdFontMap[fontName];\n}\nfunction isKnownFontName(name) {\n const fontName = (0, _fonts_utils.normalizeFontName)(name);\n return !!(getStdFontMap()[fontName] || getNonStdFontMap()[fontName] || getSerifFonts()[fontName] || getSymbolsFonts()[fontName]);\n}\n\n/***/ }),\n/* 42 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ToUnicodeMap = exports.IdentityToUnicodeMap = void 0;\nvar _util = __w_pdfjs_require__(2);\nclass ToUnicodeMap {\n constructor(cmap = []) {\n this._map = cmap;\n }\n get length() {\n return this._map.length;\n }\n forEach(callback) {\n for (const charCode in this._map) {\n callback(charCode, this._map[charCode].charCodeAt(0));\n }\n }\n has(i) {\n return this._map[i] !== undefined;\n }\n get(i) {\n return this._map[i];\n }\n charCodeOf(value) {\n const map = this._map;\n if (map.length <= 0x10000) {\n return map.indexOf(value);\n }\n for (const charCode in map) {\n if (map[charCode] === value) {\n return charCode | 0;\n }\n }\n return -1;\n }\n amend(map) {\n for (const charCode in map) {\n this._map[charCode] = map[charCode];\n }\n }\n}\nexports.ToUnicodeMap = ToUnicodeMap;\nclass IdentityToUnicodeMap {\n constructor(firstChar, lastChar) {\n this.firstChar = firstChar;\n this.lastChar = lastChar;\n }\n get length() {\n return this.lastChar + 1 - this.firstChar;\n }\n forEach(callback) {\n for (let i = this.firstChar, ii = this.lastChar; i <= ii; i++) {\n callback(i, i);\n }\n }\n has(i) {\n return this.firstChar <= i && i <= this.lastChar;\n }\n get(i) {\n if (this.firstChar <= i && i <= this.lastChar) {\n return String.fromCharCode(i);\n }\n return undefined;\n }\n charCodeOf(v) {\n return Number.isInteger(v) && v >= this.firstChar && v <= this.lastChar ? v : -1;\n }\n amend(map) {\n (0, _util.unreachable)(\"Should not call amend()\");\n }\n}\nexports.IdentityToUnicodeMap = IdentityToUnicodeMap;\n\n/***/ }),\n/* 43 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CFFFont = void 0;\nvar _cff_parser = __w_pdfjs_require__(35);\nvar _fonts_utils = __w_pdfjs_require__(38);\nvar _util = __w_pdfjs_require__(2);\nclass CFFFont {\n constructor(file, properties) {\n this.properties = properties;\n const parser = new _cff_parser.CFFParser(file, properties, _fonts_utils.SEAC_ANALYSIS_ENABLED);\n this.cff = parser.parse();\n this.cff.duplicateFirstGlyph();\n const compiler = new _cff_parser.CFFCompiler(this.cff);\n this.seacs = this.cff.seacs;\n try {\n this.data = compiler.compile();\n } catch {\n (0, _util.warn)(\"Failed to compile font \" + properties.loadedName);\n this.data = file;\n }\n this._createBuiltInEncoding();\n }\n get numGlyphs() {\n return this.cff.charStrings.count;\n }\n getCharset() {\n return this.cff.charset.charset;\n }\n getGlyphMapping() {\n const cff = this.cff;\n const properties = this.properties;\n const {\n cidToGidMap,\n cMap\n } = properties;\n const charsets = cff.charset.charset;\n let charCodeToGlyphId;\n let glyphId;\n if (properties.composite) {\n let invCidToGidMap;\n if (cidToGidMap?.length > 0) {\n invCidToGidMap = Object.create(null);\n for (let i = 0, ii = cidToGidMap.length; i < ii; i++) {\n const gid = cidToGidMap[i];\n if (gid !== undefined) {\n invCidToGidMap[gid] = i;\n }\n }\n }\n charCodeToGlyphId = Object.create(null);\n let charCode;\n if (cff.isCIDFont) {\n for (glyphId = 0; glyphId < charsets.length; glyphId++) {\n const cid = charsets[glyphId];\n charCode = cMap.charCodeOf(cid);\n if (invCidToGidMap?.[charCode] !== undefined) {\n charCode = invCidToGidMap[charCode];\n }\n charCodeToGlyphId[charCode] = glyphId;\n }\n } else {\n for (glyphId = 0; glyphId < cff.charStrings.count; glyphId++) {\n charCode = cMap.charCodeOf(glyphId);\n charCodeToGlyphId[charCode] = glyphId;\n }\n }\n return charCodeToGlyphId;\n }\n let encoding = cff.encoding ? cff.encoding.encoding : null;\n if (properties.isInternalFont) {\n encoding = properties.defaultEncoding;\n }\n charCodeToGlyphId = (0, _fonts_utils.type1FontGlyphMapping)(properties, encoding, charsets);\n return charCodeToGlyphId;\n }\n hasGlyphId(id) {\n return this.cff.hasGlyphId(id);\n }\n _createBuiltInEncoding() {\n const {\n charset,\n encoding\n } = this.cff;\n if (!charset || !encoding) {\n return;\n }\n const charsets = charset.charset,\n encodings = encoding.encoding;\n const map = [];\n for (const charCode in encodings) {\n const glyphId = encodings[charCode];\n if (glyphId >= 0) {\n const glyphName = charsets[glyphId];\n if (glyphName) {\n map[charCode] = glyphName;\n }\n }\n }\n if (map.length > 0) {\n this.properties.builtInEncoding = map;\n }\n }\n}\nexports.CFFFont = CFFFont;\n\n/***/ }),\n/* 44 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FontRendererFactory = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _cff_parser = __w_pdfjs_require__(35);\nvar _glyphlist = __w_pdfjs_require__(39);\nvar _encodings = __w_pdfjs_require__(37);\nvar _stream = __w_pdfjs_require__(8);\nfunction getUint32(data, offset) {\n return (data[offset] << 24 | data[offset + 1] << 16 | data[offset + 2] << 8 | data[offset + 3]) >>> 0;\n}\nfunction getUint16(data, offset) {\n return data[offset] << 8 | data[offset + 1];\n}\nfunction getInt16(data, offset) {\n return (data[offset] << 24 | data[offset + 1] << 16) >> 16;\n}\nfunction getInt8(data, offset) {\n return data[offset] << 24 >> 24;\n}\nfunction getFloat214(data, offset) {\n return getInt16(data, offset) / 16384;\n}\nfunction getSubroutineBias(subrs) {\n const numSubrs = subrs.length;\n let bias = 32768;\n if (numSubrs < 1240) {\n bias = 107;\n } else if (numSubrs < 33900) {\n bias = 1131;\n }\n return bias;\n}\nfunction parseCmap(data, start, end) {\n const offset = getUint16(data, start + 2) === 1 ? getUint32(data, start + 8) : getUint32(data, start + 16);\n const format = getUint16(data, start + offset);\n let ranges, p, i;\n if (format === 4) {\n getUint16(data, start + offset + 2);\n const segCount = getUint16(data, start + offset + 6) >> 1;\n p = start + offset + 14;\n ranges = [];\n for (i = 0; i < segCount; i++, p += 2) {\n ranges[i] = {\n end: getUint16(data, p)\n };\n }\n p += 2;\n for (i = 0; i < segCount; i++, p += 2) {\n ranges[i].start = getUint16(data, p);\n }\n for (i = 0; i < segCount; i++, p += 2) {\n ranges[i].idDelta = getUint16(data, p);\n }\n for (i = 0; i < segCount; i++, p += 2) {\n let idOffset = getUint16(data, p);\n if (idOffset === 0) {\n continue;\n }\n ranges[i].ids = [];\n for (let j = 0, jj = ranges[i].end - ranges[i].start + 1; j < jj; j++) {\n ranges[i].ids[j] = getUint16(data, p + idOffset);\n idOffset += 2;\n }\n }\n return ranges;\n } else if (format === 12) {\n const groups = getUint32(data, start + offset + 12);\n p = start + offset + 16;\n ranges = [];\n for (i = 0; i < groups; i++) {\n start = getUint32(data, p);\n ranges.push({\n start,\n end: getUint32(data, p + 4),\n idDelta: getUint32(data, p + 8) - start\n });\n p += 12;\n }\n return ranges;\n }\n throw new _util.FormatError(`unsupported cmap: ${format}`);\n}\nfunction parseCff(data, start, end, seacAnalysisEnabled) {\n const properties = {};\n const parser = new _cff_parser.CFFParser(new _stream.Stream(data, start, end - start), properties, seacAnalysisEnabled);\n const cff = parser.parse();\n return {\n glyphs: cff.charStrings.objects,\n subrs: cff.topDict.privateDict?.subrsIndex?.objects,\n gsubrs: cff.globalSubrIndex?.objects,\n isCFFCIDFont: cff.isCIDFont,\n fdSelect: cff.fdSelect,\n fdArray: cff.fdArray\n };\n}\nfunction parseGlyfTable(glyf, loca, isGlyphLocationsLong) {\n let itemSize, itemDecode;\n if (isGlyphLocationsLong) {\n itemSize = 4;\n itemDecode = getUint32;\n } else {\n itemSize = 2;\n itemDecode = (data, offset) => 2 * getUint16(data, offset);\n }\n const glyphs = [];\n let startOffset = itemDecode(loca, 0);\n for (let j = itemSize; j < loca.length; j += itemSize) {\n const endOffset = itemDecode(loca, j);\n glyphs.push(glyf.subarray(startOffset, endOffset));\n startOffset = endOffset;\n }\n return glyphs;\n}\nfunction lookupCmap(ranges, unicode) {\n const code = unicode.codePointAt(0);\n let gid = 0,\n l = 0,\n r = ranges.length - 1;\n while (l < r) {\n const c = l + r + 1 >> 1;\n if (code < ranges[c].start) {\n r = c - 1;\n } else {\n l = c;\n }\n }\n if (ranges[l].start <= code && code <= ranges[l].end) {\n gid = ranges[l].idDelta + (ranges[l].ids ? ranges[l].ids[code - ranges[l].start] : code) & 0xffff;\n }\n return {\n charCode: code,\n glyphId: gid\n };\n}\nfunction compileGlyf(code, cmds, font) {\n function moveTo(x, y) {\n cmds.push({\n cmd: \"moveTo\",\n args: [x, y]\n });\n }\n function lineTo(x, y) {\n cmds.push({\n cmd: \"lineTo\",\n args: [x, y]\n });\n }\n function quadraticCurveTo(xa, ya, x, y) {\n cmds.push({\n cmd: \"quadraticCurveTo\",\n args: [xa, ya, x, y]\n });\n }\n let i = 0;\n const numberOfContours = getInt16(code, i);\n let flags;\n let x = 0,\n y = 0;\n i += 10;\n if (numberOfContours < 0) {\n do {\n flags = getUint16(code, i);\n const glyphIndex = getUint16(code, i + 2);\n i += 4;\n let arg1, arg2;\n if (flags & 0x01) {\n if (flags & 0x02) {\n arg1 = getInt16(code, i);\n arg2 = getInt16(code, i + 2);\n } else {\n arg1 = getUint16(code, i);\n arg2 = getUint16(code, i + 2);\n }\n i += 4;\n } else if (flags & 0x02) {\n arg1 = getInt8(code, i++);\n arg2 = getInt8(code, i++);\n } else {\n arg1 = code[i++];\n arg2 = code[i++];\n }\n if (flags & 0x02) {\n x = arg1;\n y = arg2;\n } else {\n x = 0;\n y = 0;\n }\n let scaleX = 1,\n scaleY = 1,\n scale01 = 0,\n scale10 = 0;\n if (flags & 0x08) {\n scaleX = scaleY = getFloat214(code, i);\n i += 2;\n } else if (flags & 0x40) {\n scaleX = getFloat214(code, i);\n scaleY = getFloat214(code, i + 2);\n i += 4;\n } else if (flags & 0x80) {\n scaleX = getFloat214(code, i);\n scale01 = getFloat214(code, i + 2);\n scale10 = getFloat214(code, i + 4);\n scaleY = getFloat214(code, i + 6);\n i += 8;\n }\n const subglyph = font.glyphs[glyphIndex];\n if (subglyph) {\n cmds.push({\n cmd: \"save\"\n }, {\n cmd: \"transform\",\n args: [scaleX, scale01, scale10, scaleY, x, y]\n });\n if (!(flags & 0x02)) {}\n compileGlyf(subglyph, cmds, font);\n cmds.push({\n cmd: \"restore\"\n });\n }\n } while (flags & 0x20);\n } else {\n const endPtsOfContours = [];\n let j, jj;\n for (j = 0; j < numberOfContours; j++) {\n endPtsOfContours.push(getUint16(code, i));\n i += 2;\n }\n const instructionLength = getUint16(code, i);\n i += 2 + instructionLength;\n const numberOfPoints = endPtsOfContours.at(-1) + 1;\n const points = [];\n while (points.length < numberOfPoints) {\n flags = code[i++];\n let repeat = 1;\n if (flags & 0x08) {\n repeat += code[i++];\n }\n while (repeat-- > 0) {\n points.push({\n flags\n });\n }\n }\n for (j = 0; j < numberOfPoints; j++) {\n switch (points[j].flags & 0x12) {\n case 0x00:\n x += getInt16(code, i);\n i += 2;\n break;\n case 0x02:\n x -= code[i++];\n break;\n case 0x12:\n x += code[i++];\n break;\n }\n points[j].x = x;\n }\n for (j = 0; j < numberOfPoints; j++) {\n switch (points[j].flags & 0x24) {\n case 0x00:\n y += getInt16(code, i);\n i += 2;\n break;\n case 0x04:\n y -= code[i++];\n break;\n case 0x24:\n y += code[i++];\n break;\n }\n points[j].y = y;\n }\n let startPoint = 0;\n for (i = 0; i < numberOfContours; i++) {\n const endPoint = endPtsOfContours[i];\n const contour = points.slice(startPoint, endPoint + 1);\n if (contour[0].flags & 1) {\n contour.push(contour[0]);\n } else if (contour.at(-1).flags & 1) {\n contour.unshift(contour.at(-1));\n } else {\n const p = {\n flags: 1,\n x: (contour[0].x + contour.at(-1).x) / 2,\n y: (contour[0].y + contour.at(-1).y) / 2\n };\n contour.unshift(p);\n contour.push(p);\n }\n moveTo(contour[0].x, contour[0].y);\n for (j = 1, jj = contour.length; j < jj; j++) {\n if (contour[j].flags & 1) {\n lineTo(contour[j].x, contour[j].y);\n } else if (contour[j + 1].flags & 1) {\n quadraticCurveTo(contour[j].x, contour[j].y, contour[j + 1].x, contour[j + 1].y);\n j++;\n } else {\n quadraticCurveTo(contour[j].x, contour[j].y, (contour[j].x + contour[j + 1].x) / 2, (contour[j].y + contour[j + 1].y) / 2);\n }\n }\n startPoint = endPoint + 1;\n }\n }\n}\nfunction compileCharString(charStringCode, cmds, font, glyphId) {\n function moveTo(x, y) {\n cmds.push({\n cmd: \"moveTo\",\n args: [x, y]\n });\n }\n function lineTo(x, y) {\n cmds.push({\n cmd: \"lineTo\",\n args: [x, y]\n });\n }\n function bezierCurveTo(x1, y1, x2, y2, x, y) {\n cmds.push({\n cmd: \"bezierCurveTo\",\n args: [x1, y1, x2, y2, x, y]\n });\n }\n const stack = [];\n let x = 0,\n y = 0;\n let stems = 0;\n function parse(code) {\n let i = 0;\n while (i < code.length) {\n let stackClean = false;\n let v = code[i++];\n let xa, xb, ya, yb, y1, y2, y3, n, subrCode;\n switch (v) {\n case 1:\n stems += stack.length >> 1;\n stackClean = true;\n break;\n case 3:\n stems += stack.length >> 1;\n stackClean = true;\n break;\n case 4:\n y += stack.pop();\n moveTo(x, y);\n stackClean = true;\n break;\n case 5:\n while (stack.length > 0) {\n x += stack.shift();\n y += stack.shift();\n lineTo(x, y);\n }\n break;\n case 6:\n while (stack.length > 0) {\n x += stack.shift();\n lineTo(x, y);\n if (stack.length === 0) {\n break;\n }\n y += stack.shift();\n lineTo(x, y);\n }\n break;\n case 7:\n while (stack.length > 0) {\n y += stack.shift();\n lineTo(x, y);\n if (stack.length === 0) {\n break;\n }\n x += stack.shift();\n lineTo(x, y);\n }\n break;\n case 8:\n while (stack.length > 0) {\n xa = x + stack.shift();\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb + stack.shift();\n y = yb + stack.shift();\n bezierCurveTo(xa, ya, xb, yb, x, y);\n }\n break;\n case 10:\n n = stack.pop();\n subrCode = null;\n if (font.isCFFCIDFont) {\n const fdIndex = font.fdSelect.getFDIndex(glyphId);\n if (fdIndex >= 0 && fdIndex < font.fdArray.length) {\n const fontDict = font.fdArray[fdIndex];\n let subrs;\n if (fontDict.privateDict?.subrsIndex) {\n subrs = fontDict.privateDict.subrsIndex.objects;\n }\n if (subrs) {\n n += getSubroutineBias(subrs);\n subrCode = subrs[n];\n }\n } else {\n (0, _util.warn)(\"Invalid fd index for glyph index.\");\n }\n } else {\n subrCode = font.subrs[n + font.subrsBias];\n }\n if (subrCode) {\n parse(subrCode);\n }\n break;\n case 11:\n return;\n case 12:\n v = code[i++];\n switch (v) {\n case 34:\n xa = x + stack.shift();\n xb = xa + stack.shift();\n y1 = y + stack.shift();\n x = xb + stack.shift();\n bezierCurveTo(xa, y, xb, y1, x, y1);\n xa = x + stack.shift();\n xb = xa + stack.shift();\n x = xb + stack.shift();\n bezierCurveTo(xa, y1, xb, y, x, y);\n break;\n case 35:\n xa = x + stack.shift();\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb + stack.shift();\n y = yb + stack.shift();\n bezierCurveTo(xa, ya, xb, yb, x, y);\n xa = x + stack.shift();\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb + stack.shift();\n y = yb + stack.shift();\n bezierCurveTo(xa, ya, xb, yb, x, y);\n stack.pop();\n break;\n case 36:\n xa = x + stack.shift();\n y1 = y + stack.shift();\n xb = xa + stack.shift();\n y2 = y1 + stack.shift();\n x = xb + stack.shift();\n bezierCurveTo(xa, y1, xb, y2, x, y2);\n xa = x + stack.shift();\n xb = xa + stack.shift();\n y3 = y2 + stack.shift();\n x = xb + stack.shift();\n bezierCurveTo(xa, y2, xb, y3, x, y);\n break;\n case 37:\n const x0 = x,\n y0 = y;\n xa = x + stack.shift();\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb + stack.shift();\n y = yb + stack.shift();\n bezierCurveTo(xa, ya, xb, yb, x, y);\n xa = x + stack.shift();\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb;\n y = yb;\n if (Math.abs(x - x0) > Math.abs(y - y0)) {\n x += stack.shift();\n } else {\n y += stack.shift();\n }\n bezierCurveTo(xa, ya, xb, yb, x, y);\n break;\n default:\n throw new _util.FormatError(`unknown operator: 12 ${v}`);\n }\n break;\n case 14:\n if (stack.length >= 4) {\n const achar = stack.pop();\n const bchar = stack.pop();\n y = stack.pop();\n x = stack.pop();\n cmds.push({\n cmd: \"save\"\n }, {\n cmd: \"translate\",\n args: [x, y]\n });\n let cmap = lookupCmap(font.cmap, String.fromCharCode(font.glyphNameMap[_encodings.StandardEncoding[achar]]));\n compileCharString(font.glyphs[cmap.glyphId], cmds, font, cmap.glyphId);\n cmds.push({\n cmd: \"restore\"\n });\n cmap = lookupCmap(font.cmap, String.fromCharCode(font.glyphNameMap[_encodings.StandardEncoding[bchar]]));\n compileCharString(font.glyphs[cmap.glyphId], cmds, font, cmap.glyphId);\n }\n return;\n case 18:\n stems += stack.length >> 1;\n stackClean = true;\n break;\n case 19:\n stems += stack.length >> 1;\n i += stems + 7 >> 3;\n stackClean = true;\n break;\n case 20:\n stems += stack.length >> 1;\n i += stems + 7 >> 3;\n stackClean = true;\n break;\n case 21:\n y += stack.pop();\n x += stack.pop();\n moveTo(x, y);\n stackClean = true;\n break;\n case 22:\n x += stack.pop();\n moveTo(x, y);\n stackClean = true;\n break;\n case 23:\n stems += stack.length >> 1;\n stackClean = true;\n break;\n case 24:\n while (stack.length > 2) {\n xa = x + stack.shift();\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb + stack.shift();\n y = yb + stack.shift();\n bezierCurveTo(xa, ya, xb, yb, x, y);\n }\n x += stack.shift();\n y += stack.shift();\n lineTo(x, y);\n break;\n case 25:\n while (stack.length > 6) {\n x += stack.shift();\n y += stack.shift();\n lineTo(x, y);\n }\n xa = x + stack.shift();\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb + stack.shift();\n y = yb + stack.shift();\n bezierCurveTo(xa, ya, xb, yb, x, y);\n break;\n case 26:\n if (stack.length % 2) {\n x += stack.shift();\n }\n while (stack.length > 0) {\n xa = x;\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb;\n y = yb + stack.shift();\n bezierCurveTo(xa, ya, xb, yb, x, y);\n }\n break;\n case 27:\n if (stack.length % 2) {\n y += stack.shift();\n }\n while (stack.length > 0) {\n xa = x + stack.shift();\n ya = y;\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb + stack.shift();\n y = yb;\n bezierCurveTo(xa, ya, xb, yb, x, y);\n }\n break;\n case 28:\n stack.push((code[i] << 24 | code[i + 1] << 16) >> 16);\n i += 2;\n break;\n case 29:\n n = stack.pop() + font.gsubrsBias;\n subrCode = font.gsubrs[n];\n if (subrCode) {\n parse(subrCode);\n }\n break;\n case 30:\n while (stack.length > 0) {\n xa = x;\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb + stack.shift();\n y = yb + (stack.length === 1 ? stack.shift() : 0);\n bezierCurveTo(xa, ya, xb, yb, x, y);\n if (stack.length === 0) {\n break;\n }\n xa = x + stack.shift();\n ya = y;\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n y = yb + stack.shift();\n x = xb + (stack.length === 1 ? stack.shift() : 0);\n bezierCurveTo(xa, ya, xb, yb, x, y);\n }\n break;\n case 31:\n while (stack.length > 0) {\n xa = x + stack.shift();\n ya = y;\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n y = yb + stack.shift();\n x = xb + (stack.length === 1 ? stack.shift() : 0);\n bezierCurveTo(xa, ya, xb, yb, x, y);\n if (stack.length === 0) {\n break;\n }\n xa = x;\n ya = y + stack.shift();\n xb = xa + stack.shift();\n yb = ya + stack.shift();\n x = xb + stack.shift();\n y = yb + (stack.length === 1 ? stack.shift() : 0);\n bezierCurveTo(xa, ya, xb, yb, x, y);\n }\n break;\n default:\n if (v < 32) {\n throw new _util.FormatError(`unknown operator: ${v}`);\n }\n if (v < 247) {\n stack.push(v - 139);\n } else if (v < 251) {\n stack.push((v - 247) * 256 + code[i++] + 108);\n } else if (v < 255) {\n stack.push(-(v - 251) * 256 - code[i++] - 108);\n } else {\n stack.push((code[i] << 24 | code[i + 1] << 16 | code[i + 2] << 8 | code[i + 3]) / 65536);\n i += 4;\n }\n break;\n }\n if (stackClean) {\n stack.length = 0;\n }\n }\n }\n parse(charStringCode);\n}\nconst NOOP = [];\nclass CompiledFont {\n constructor(fontMatrix) {\n if (this.constructor === CompiledFont) {\n (0, _util.unreachable)(\"Cannot initialize CompiledFont.\");\n }\n this.fontMatrix = fontMatrix;\n this.compiledGlyphs = Object.create(null);\n this.compiledCharCodeToGlyphId = Object.create(null);\n }\n getPathJs(unicode) {\n const {\n charCode,\n glyphId\n } = lookupCmap(this.cmap, unicode);\n let fn = this.compiledGlyphs[glyphId];\n if (!fn) {\n try {\n fn = this.compileGlyph(this.glyphs[glyphId], glyphId);\n this.compiledGlyphs[glyphId] = fn;\n } catch (ex) {\n this.compiledGlyphs[glyphId] = NOOP;\n if (this.compiledCharCodeToGlyphId[charCode] === undefined) {\n this.compiledCharCodeToGlyphId[charCode] = glyphId;\n }\n throw ex;\n }\n }\n if (this.compiledCharCodeToGlyphId[charCode] === undefined) {\n this.compiledCharCodeToGlyphId[charCode] = glyphId;\n }\n return fn;\n }\n compileGlyph(code, glyphId) {\n if (!code || code.length === 0 || code[0] === 14) {\n return NOOP;\n }\n let fontMatrix = this.fontMatrix;\n if (this.isCFFCIDFont) {\n const fdIndex = this.fdSelect.getFDIndex(glyphId);\n if (fdIndex >= 0 && fdIndex < this.fdArray.length) {\n const fontDict = this.fdArray[fdIndex];\n fontMatrix = fontDict.getByName(\"FontMatrix\") || _util.FONT_IDENTITY_MATRIX;\n } else {\n (0, _util.warn)(\"Invalid fd index for glyph index.\");\n }\n }\n const cmds = [{\n cmd: \"save\"\n }, {\n cmd: \"transform\",\n args: fontMatrix.slice()\n }, {\n cmd: \"scale\",\n args: [\"size\", \"-size\"]\n }];\n this.compileGlyphImpl(code, cmds, glyphId);\n cmds.push({\n cmd: \"restore\"\n });\n return cmds;\n }\n compileGlyphImpl() {\n (0, _util.unreachable)(\"Children classes should implement this.\");\n }\n hasBuiltPath(unicode) {\n const {\n charCode,\n glyphId\n } = lookupCmap(this.cmap, unicode);\n return this.compiledGlyphs[glyphId] !== undefined && this.compiledCharCodeToGlyphId[charCode] !== undefined;\n }\n}\nclass TrueTypeCompiled extends CompiledFont {\n constructor(glyphs, cmap, fontMatrix) {\n super(fontMatrix || [0.000488, 0, 0, 0.000488, 0, 0]);\n this.glyphs = glyphs;\n this.cmap = cmap;\n }\n compileGlyphImpl(code, cmds) {\n compileGlyf(code, cmds, this);\n }\n}\nclass Type2Compiled extends CompiledFont {\n constructor(cffInfo, cmap, fontMatrix, glyphNameMap) {\n super(fontMatrix || [0.001, 0, 0, 0.001, 0, 0]);\n this.glyphs = cffInfo.glyphs;\n this.gsubrs = cffInfo.gsubrs || [];\n this.subrs = cffInfo.subrs || [];\n this.cmap = cmap;\n this.glyphNameMap = glyphNameMap || (0, _glyphlist.getGlyphsUnicode)();\n this.gsubrsBias = getSubroutineBias(this.gsubrs);\n this.subrsBias = getSubroutineBias(this.subrs);\n this.isCFFCIDFont = cffInfo.isCFFCIDFont;\n this.fdSelect = cffInfo.fdSelect;\n this.fdArray = cffInfo.fdArray;\n }\n compileGlyphImpl(code, cmds, glyphId) {\n compileCharString(code, cmds, this, glyphId);\n }\n}\nclass FontRendererFactory {\n static create(font, seacAnalysisEnabled) {\n const data = new Uint8Array(font.data);\n let cmap, glyf, loca, cff, indexToLocFormat, unitsPerEm;\n const numTables = getUint16(data, 4);\n for (let i = 0, p = 12; i < numTables; i++, p += 16) {\n const tag = (0, _util.bytesToString)(data.subarray(p, p + 4));\n const offset = getUint32(data, p + 8);\n const length = getUint32(data, p + 12);\n switch (tag) {\n case \"cmap\":\n cmap = parseCmap(data, offset, offset + length);\n break;\n case \"glyf\":\n glyf = data.subarray(offset, offset + length);\n break;\n case \"loca\":\n loca = data.subarray(offset, offset + length);\n break;\n case \"head\":\n unitsPerEm = getUint16(data, offset + 18);\n indexToLocFormat = getUint16(data, offset + 50);\n break;\n case \"CFF \":\n cff = parseCff(data, offset, offset + length, seacAnalysisEnabled);\n break;\n }\n }\n if (glyf) {\n const fontMatrix = !unitsPerEm ? font.fontMatrix : [1 / unitsPerEm, 0, 0, 1 / unitsPerEm, 0, 0];\n return new TrueTypeCompiled(parseGlyfTable(glyf, loca, indexToLocFormat), cmap, fontMatrix);\n }\n return new Type2Compiled(cff, cmap, font.fontMatrix, font.glyphNameMap);\n }\n}\nexports.FontRendererFactory = FontRendererFactory;\n\n/***/ }),\n/* 45 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getMetrics = exports.getFontBasicMetrics = void 0;\nvar _core_utils = __w_pdfjs_require__(3);\nconst getMetrics = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.Courier = 600;\n t[\"Courier-Bold\"] = 600;\n t[\"Courier-BoldOblique\"] = 600;\n t[\"Courier-Oblique\"] = 600;\n t.Helvetica = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 278;\n t.exclam = 278;\n t.quotedbl = 355;\n t.numbersign = 556;\n t.dollar = 556;\n t.percent = 889;\n t.ampersand = 667;\n t.quoteright = 222;\n t.parenleft = 333;\n t.parenright = 333;\n t.asterisk = 389;\n t.plus = 584;\n t.comma = 278;\n t.hyphen = 333;\n t.period = 278;\n t.slash = 278;\n t.zero = 556;\n t.one = 556;\n t.two = 556;\n t.three = 556;\n t.four = 556;\n t.five = 556;\n t.six = 556;\n t.seven = 556;\n t.eight = 556;\n t.nine = 556;\n t.colon = 278;\n t.semicolon = 278;\n t.less = 584;\n t.equal = 584;\n t.greater = 584;\n t.question = 556;\n t.at = 1015;\n t.A = 667;\n t.B = 667;\n t.C = 722;\n t.D = 722;\n t.E = 667;\n t.F = 611;\n t.G = 778;\n t.H = 722;\n t.I = 278;\n t.J = 500;\n t.K = 667;\n t.L = 556;\n t.M = 833;\n t.N = 722;\n t.O = 778;\n t.P = 667;\n t.Q = 778;\n t.R = 722;\n t.S = 667;\n t.T = 611;\n t.U = 722;\n t.V = 667;\n t.W = 944;\n t.X = 667;\n t.Y = 667;\n t.Z = 611;\n t.bracketleft = 278;\n t.backslash = 278;\n t.bracketright = 278;\n t.asciicircum = 469;\n t.underscore = 556;\n t.quoteleft = 222;\n t.a = 556;\n t.b = 556;\n t.c = 500;\n t.d = 556;\n t.e = 556;\n t.f = 278;\n t.g = 556;\n t.h = 556;\n t.i = 222;\n t.j = 222;\n t.k = 500;\n t.l = 222;\n t.m = 833;\n t.n = 556;\n t.o = 556;\n t.p = 556;\n t.q = 556;\n t.r = 333;\n t.s = 500;\n t.t = 278;\n t.u = 556;\n t.v = 500;\n t.w = 722;\n t.x = 500;\n t.y = 500;\n t.z = 500;\n t.braceleft = 334;\n t.bar = 260;\n t.braceright = 334;\n t.asciitilde = 584;\n t.exclamdown = 333;\n t.cent = 556;\n t.sterling = 556;\n t.fraction = 167;\n t.yen = 556;\n t.florin = 556;\n t.section = 556;\n t.currency = 556;\n t.quotesingle = 191;\n t.quotedblleft = 333;\n t.guillemotleft = 556;\n t.guilsinglleft = 333;\n t.guilsinglright = 333;\n t.fi = 500;\n t.fl = 500;\n t.endash = 556;\n t.dagger = 556;\n t.daggerdbl = 556;\n t.periodcentered = 278;\n t.paragraph = 537;\n t.bullet = 350;\n t.quotesinglbase = 222;\n t.quotedblbase = 333;\n t.quotedblright = 333;\n t.guillemotright = 556;\n t.ellipsis = 1000;\n t.perthousand = 1000;\n t.questiondown = 611;\n t.grave = 333;\n t.acute = 333;\n t.circumflex = 333;\n t.tilde = 333;\n t.macron = 333;\n t.breve = 333;\n t.dotaccent = 333;\n t.dieresis = 333;\n t.ring = 333;\n t.cedilla = 333;\n t.hungarumlaut = 333;\n t.ogonek = 333;\n t.caron = 333;\n t.emdash = 1000;\n t.AE = 1000;\n t.ordfeminine = 370;\n t.Lslash = 556;\n t.Oslash = 778;\n t.OE = 1000;\n t.ordmasculine = 365;\n t.ae = 889;\n t.dotlessi = 278;\n t.lslash = 222;\n t.oslash = 611;\n t.oe = 944;\n t.germandbls = 611;\n t.Idieresis = 278;\n t.eacute = 556;\n t.abreve = 556;\n t.uhungarumlaut = 556;\n t.ecaron = 556;\n t.Ydieresis = 667;\n t.divide = 584;\n t.Yacute = 667;\n t.Acircumflex = 667;\n t.aacute = 556;\n t.Ucircumflex = 722;\n t.yacute = 500;\n t.scommaaccent = 500;\n t.ecircumflex = 556;\n t.Uring = 722;\n t.Udieresis = 722;\n t.aogonek = 556;\n t.Uacute = 722;\n t.uogonek = 556;\n t.Edieresis = 667;\n t.Dcroat = 722;\n t.commaaccent = 250;\n t.copyright = 737;\n t.Emacron = 667;\n t.ccaron = 500;\n t.aring = 556;\n t.Ncommaaccent = 722;\n t.lacute = 222;\n t.agrave = 556;\n t.Tcommaaccent = 611;\n t.Cacute = 722;\n t.atilde = 556;\n t.Edotaccent = 667;\n t.scaron = 500;\n t.scedilla = 500;\n t.iacute = 278;\n t.lozenge = 471;\n t.Rcaron = 722;\n t.Gcommaaccent = 778;\n t.ucircumflex = 556;\n t.acircumflex = 556;\n t.Amacron = 667;\n t.rcaron = 333;\n t.ccedilla = 500;\n t.Zdotaccent = 611;\n t.Thorn = 667;\n t.Omacron = 778;\n t.Racute = 722;\n t.Sacute = 667;\n t.dcaron = 643;\n t.Umacron = 722;\n t.uring = 556;\n t.threesuperior = 333;\n t.Ograve = 778;\n t.Agrave = 667;\n t.Abreve = 667;\n t.multiply = 584;\n t.uacute = 556;\n t.Tcaron = 611;\n t.partialdiff = 476;\n t.ydieresis = 500;\n t.Nacute = 722;\n t.icircumflex = 278;\n t.Ecircumflex = 667;\n t.adieresis = 556;\n t.edieresis = 556;\n t.cacute = 500;\n t.nacute = 556;\n t.umacron = 556;\n t.Ncaron = 722;\n t.Iacute = 278;\n t.plusminus = 584;\n t.brokenbar = 260;\n t.registered = 737;\n t.Gbreve = 778;\n t.Idotaccent = 278;\n t.summation = 600;\n t.Egrave = 667;\n t.racute = 333;\n t.omacron = 556;\n t.Zacute = 611;\n t.Zcaron = 611;\n t.greaterequal = 549;\n t.Eth = 722;\n t.Ccedilla = 722;\n t.lcommaaccent = 222;\n t.tcaron = 317;\n t.eogonek = 556;\n t.Uogonek = 722;\n t.Aacute = 667;\n t.Adieresis = 667;\n t.egrave = 556;\n t.zacute = 500;\n t.iogonek = 222;\n t.Oacute = 778;\n t.oacute = 556;\n t.amacron = 556;\n t.sacute = 500;\n t.idieresis = 278;\n t.Ocircumflex = 778;\n t.Ugrave = 722;\n t.Delta = 612;\n t.thorn = 556;\n t.twosuperior = 333;\n t.Odieresis = 778;\n t.mu = 556;\n t.igrave = 278;\n t.ohungarumlaut = 556;\n t.Eogonek = 667;\n t.dcroat = 556;\n t.threequarters = 834;\n t.Scedilla = 667;\n t.lcaron = 299;\n t.Kcommaaccent = 667;\n t.Lacute = 556;\n t.trademark = 1000;\n t.edotaccent = 556;\n t.Igrave = 278;\n t.Imacron = 278;\n t.Lcaron = 556;\n t.onehalf = 834;\n t.lessequal = 549;\n t.ocircumflex = 556;\n t.ntilde = 556;\n t.Uhungarumlaut = 722;\n t.Eacute = 667;\n t.emacron = 556;\n t.gbreve = 556;\n t.onequarter = 834;\n t.Scaron = 667;\n t.Scommaaccent = 667;\n t.Ohungarumlaut = 778;\n t.degree = 400;\n t.ograve = 556;\n t.Ccaron = 722;\n t.ugrave = 556;\n t.radical = 453;\n t.Dcaron = 722;\n t.rcommaaccent = 333;\n t.Ntilde = 722;\n t.otilde = 556;\n t.Rcommaaccent = 722;\n t.Lcommaaccent = 556;\n t.Atilde = 667;\n t.Aogonek = 667;\n t.Aring = 667;\n t.Otilde = 778;\n t.zdotaccent = 500;\n t.Ecaron = 667;\n t.Iogonek = 278;\n t.kcommaaccent = 500;\n t.minus = 584;\n t.Icircumflex = 278;\n t.ncaron = 556;\n t.tcommaaccent = 278;\n t.logicalnot = 584;\n t.odieresis = 556;\n t.udieresis = 556;\n t.notequal = 549;\n t.gcommaaccent = 556;\n t.eth = 556;\n t.zcaron = 500;\n t.ncommaaccent = 556;\n t.onesuperior = 333;\n t.imacron = 278;\n t.Euro = 556;\n });\n t[\"Helvetica-Bold\"] = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 278;\n t.exclam = 333;\n t.quotedbl = 474;\n t.numbersign = 556;\n t.dollar = 556;\n t.percent = 889;\n t.ampersand = 722;\n t.quoteright = 278;\n t.parenleft = 333;\n t.parenright = 333;\n t.asterisk = 389;\n t.plus = 584;\n t.comma = 278;\n t.hyphen = 333;\n t.period = 278;\n t.slash = 278;\n t.zero = 556;\n t.one = 556;\n t.two = 556;\n t.three = 556;\n t.four = 556;\n t.five = 556;\n t.six = 556;\n t.seven = 556;\n t.eight = 556;\n t.nine = 556;\n t.colon = 333;\n t.semicolon = 333;\n t.less = 584;\n t.equal = 584;\n t.greater = 584;\n t.question = 611;\n t.at = 975;\n t.A = 722;\n t.B = 722;\n t.C = 722;\n t.D = 722;\n t.E = 667;\n t.F = 611;\n t.G = 778;\n t.H = 722;\n t.I = 278;\n t.J = 556;\n t.K = 722;\n t.L = 611;\n t.M = 833;\n t.N = 722;\n t.O = 778;\n t.P = 667;\n t.Q = 778;\n t.R = 722;\n t.S = 667;\n t.T = 611;\n t.U = 722;\n t.V = 667;\n t.W = 944;\n t.X = 667;\n t.Y = 667;\n t.Z = 611;\n t.bracketleft = 333;\n t.backslash = 278;\n t.bracketright = 333;\n t.asciicircum = 584;\n t.underscore = 556;\n t.quoteleft = 278;\n t.a = 556;\n t.b = 611;\n t.c = 556;\n t.d = 611;\n t.e = 556;\n t.f = 333;\n t.g = 611;\n t.h = 611;\n t.i = 278;\n t.j = 278;\n t.k = 556;\n t.l = 278;\n t.m = 889;\n t.n = 611;\n t.o = 611;\n t.p = 611;\n t.q = 611;\n t.r = 389;\n t.s = 556;\n t.t = 333;\n t.u = 611;\n t.v = 556;\n t.w = 778;\n t.x = 556;\n t.y = 556;\n t.z = 500;\n t.braceleft = 389;\n t.bar = 280;\n t.braceright = 389;\n t.asciitilde = 584;\n t.exclamdown = 333;\n t.cent = 556;\n t.sterling = 556;\n t.fraction = 167;\n t.yen = 556;\n t.florin = 556;\n t.section = 556;\n t.currency = 556;\n t.quotesingle = 238;\n t.quotedblleft = 500;\n t.guillemotleft = 556;\n t.guilsinglleft = 333;\n t.guilsinglright = 333;\n t.fi = 611;\n t.fl = 611;\n t.endash = 556;\n t.dagger = 556;\n t.daggerdbl = 556;\n t.periodcentered = 278;\n t.paragraph = 556;\n t.bullet = 350;\n t.quotesinglbase = 278;\n t.quotedblbase = 500;\n t.quotedblright = 500;\n t.guillemotright = 556;\n t.ellipsis = 1000;\n t.perthousand = 1000;\n t.questiondown = 611;\n t.grave = 333;\n t.acute = 333;\n t.circumflex = 333;\n t.tilde = 333;\n t.macron = 333;\n t.breve = 333;\n t.dotaccent = 333;\n t.dieresis = 333;\n t.ring = 333;\n t.cedilla = 333;\n t.hungarumlaut = 333;\n t.ogonek = 333;\n t.caron = 333;\n t.emdash = 1000;\n t.AE = 1000;\n t.ordfeminine = 370;\n t.Lslash = 611;\n t.Oslash = 778;\n t.OE = 1000;\n t.ordmasculine = 365;\n t.ae = 889;\n t.dotlessi = 278;\n t.lslash = 278;\n t.oslash = 611;\n t.oe = 944;\n t.germandbls = 611;\n t.Idieresis = 278;\n t.eacute = 556;\n t.abreve = 556;\n t.uhungarumlaut = 611;\n t.ecaron = 556;\n t.Ydieresis = 667;\n t.divide = 584;\n t.Yacute = 667;\n t.Acircumflex = 722;\n t.aacute = 556;\n t.Ucircumflex = 722;\n t.yacute = 556;\n t.scommaaccent = 556;\n t.ecircumflex = 556;\n t.Uring = 722;\n t.Udieresis = 722;\n t.aogonek = 556;\n t.Uacute = 722;\n t.uogonek = 611;\n t.Edieresis = 667;\n t.Dcroat = 722;\n t.commaaccent = 250;\n t.copyright = 737;\n t.Emacron = 667;\n t.ccaron = 556;\n t.aring = 556;\n t.Ncommaaccent = 722;\n t.lacute = 278;\n t.agrave = 556;\n t.Tcommaaccent = 611;\n t.Cacute = 722;\n t.atilde = 556;\n t.Edotaccent = 667;\n t.scaron = 556;\n t.scedilla = 556;\n t.iacute = 278;\n t.lozenge = 494;\n t.Rcaron = 722;\n t.Gcommaaccent = 778;\n t.ucircumflex = 611;\n t.acircumflex = 556;\n t.Amacron = 722;\n t.rcaron = 389;\n t.ccedilla = 556;\n t.Zdotaccent = 611;\n t.Thorn = 667;\n t.Omacron = 778;\n t.Racute = 722;\n t.Sacute = 667;\n t.dcaron = 743;\n t.Umacron = 722;\n t.uring = 611;\n t.threesuperior = 333;\n t.Ograve = 778;\n t.Agrave = 722;\n t.Abreve = 722;\n t.multiply = 584;\n t.uacute = 611;\n t.Tcaron = 611;\n t.partialdiff = 494;\n t.ydieresis = 556;\n t.Nacute = 722;\n t.icircumflex = 278;\n t.Ecircumflex = 667;\n t.adieresis = 556;\n t.edieresis = 556;\n t.cacute = 556;\n t.nacute = 611;\n t.umacron = 611;\n t.Ncaron = 722;\n t.Iacute = 278;\n t.plusminus = 584;\n t.brokenbar = 280;\n t.registered = 737;\n t.Gbreve = 778;\n t.Idotaccent = 278;\n t.summation = 600;\n t.Egrave = 667;\n t.racute = 389;\n t.omacron = 611;\n t.Zacute = 611;\n t.Zcaron = 611;\n t.greaterequal = 549;\n t.Eth = 722;\n t.Ccedilla = 722;\n t.lcommaaccent = 278;\n t.tcaron = 389;\n t.eogonek = 556;\n t.Uogonek = 722;\n t.Aacute = 722;\n t.Adieresis = 722;\n t.egrave = 556;\n t.zacute = 500;\n t.iogonek = 278;\n t.Oacute = 778;\n t.oacute = 611;\n t.amacron = 556;\n t.sacute = 556;\n t.idieresis = 278;\n t.Ocircumflex = 778;\n t.Ugrave = 722;\n t.Delta = 612;\n t.thorn = 611;\n t.twosuperior = 333;\n t.Odieresis = 778;\n t.mu = 611;\n t.igrave = 278;\n t.ohungarumlaut = 611;\n t.Eogonek = 667;\n t.dcroat = 611;\n t.threequarters = 834;\n t.Scedilla = 667;\n t.lcaron = 400;\n t.Kcommaaccent = 722;\n t.Lacute = 611;\n t.trademark = 1000;\n t.edotaccent = 556;\n t.Igrave = 278;\n t.Imacron = 278;\n t.Lcaron = 611;\n t.onehalf = 834;\n t.lessequal = 549;\n t.ocircumflex = 611;\n t.ntilde = 611;\n t.Uhungarumlaut = 722;\n t.Eacute = 667;\n t.emacron = 556;\n t.gbreve = 611;\n t.onequarter = 834;\n t.Scaron = 667;\n t.Scommaaccent = 667;\n t.Ohungarumlaut = 778;\n t.degree = 400;\n t.ograve = 611;\n t.Ccaron = 722;\n t.ugrave = 611;\n t.radical = 549;\n t.Dcaron = 722;\n t.rcommaaccent = 389;\n t.Ntilde = 722;\n t.otilde = 611;\n t.Rcommaaccent = 722;\n t.Lcommaaccent = 611;\n t.Atilde = 722;\n t.Aogonek = 722;\n t.Aring = 722;\n t.Otilde = 778;\n t.zdotaccent = 500;\n t.Ecaron = 667;\n t.Iogonek = 278;\n t.kcommaaccent = 556;\n t.minus = 584;\n t.Icircumflex = 278;\n t.ncaron = 611;\n t.tcommaaccent = 333;\n t.logicalnot = 584;\n t.odieresis = 611;\n t.udieresis = 611;\n t.notequal = 549;\n t.gcommaaccent = 611;\n t.eth = 611;\n t.zcaron = 500;\n t.ncommaaccent = 611;\n t.onesuperior = 333;\n t.imacron = 278;\n t.Euro = 556;\n });\n t[\"Helvetica-BoldOblique\"] = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 278;\n t.exclam = 333;\n t.quotedbl = 474;\n t.numbersign = 556;\n t.dollar = 556;\n t.percent = 889;\n t.ampersand = 722;\n t.quoteright = 278;\n t.parenleft = 333;\n t.parenright = 333;\n t.asterisk = 389;\n t.plus = 584;\n t.comma = 278;\n t.hyphen = 333;\n t.period = 278;\n t.slash = 278;\n t.zero = 556;\n t.one = 556;\n t.two = 556;\n t.three = 556;\n t.four = 556;\n t.five = 556;\n t.six = 556;\n t.seven = 556;\n t.eight = 556;\n t.nine = 556;\n t.colon = 333;\n t.semicolon = 333;\n t.less = 584;\n t.equal = 584;\n t.greater = 584;\n t.question = 611;\n t.at = 975;\n t.A = 722;\n t.B = 722;\n t.C = 722;\n t.D = 722;\n t.E = 667;\n t.F = 611;\n t.G = 778;\n t.H = 722;\n t.I = 278;\n t.J = 556;\n t.K = 722;\n t.L = 611;\n t.M = 833;\n t.N = 722;\n t.O = 778;\n t.P = 667;\n t.Q = 778;\n t.R = 722;\n t.S = 667;\n t.T = 611;\n t.U = 722;\n t.V = 667;\n t.W = 944;\n t.X = 667;\n t.Y = 667;\n t.Z = 611;\n t.bracketleft = 333;\n t.backslash = 278;\n t.bracketright = 333;\n t.asciicircum = 584;\n t.underscore = 556;\n t.quoteleft = 278;\n t.a = 556;\n t.b = 611;\n t.c = 556;\n t.d = 611;\n t.e = 556;\n t.f = 333;\n t.g = 611;\n t.h = 611;\n t.i = 278;\n t.j = 278;\n t.k = 556;\n t.l = 278;\n t.m = 889;\n t.n = 611;\n t.o = 611;\n t.p = 611;\n t.q = 611;\n t.r = 389;\n t.s = 556;\n t.t = 333;\n t.u = 611;\n t.v = 556;\n t.w = 778;\n t.x = 556;\n t.y = 556;\n t.z = 500;\n t.braceleft = 389;\n t.bar = 280;\n t.braceright = 389;\n t.asciitilde = 584;\n t.exclamdown = 333;\n t.cent = 556;\n t.sterling = 556;\n t.fraction = 167;\n t.yen = 556;\n t.florin = 556;\n t.section = 556;\n t.currency = 556;\n t.quotesingle = 238;\n t.quotedblleft = 500;\n t.guillemotleft = 556;\n t.guilsinglleft = 333;\n t.guilsinglright = 333;\n t.fi = 611;\n t.fl = 611;\n t.endash = 556;\n t.dagger = 556;\n t.daggerdbl = 556;\n t.periodcentered = 278;\n t.paragraph = 556;\n t.bullet = 350;\n t.quotesinglbase = 278;\n t.quotedblbase = 500;\n t.quotedblright = 500;\n t.guillemotright = 556;\n t.ellipsis = 1000;\n t.perthousand = 1000;\n t.questiondown = 611;\n t.grave = 333;\n t.acute = 333;\n t.circumflex = 333;\n t.tilde = 333;\n t.macron = 333;\n t.breve = 333;\n t.dotaccent = 333;\n t.dieresis = 333;\n t.ring = 333;\n t.cedilla = 333;\n t.hungarumlaut = 333;\n t.ogonek = 333;\n t.caron = 333;\n t.emdash = 1000;\n t.AE = 1000;\n t.ordfeminine = 370;\n t.Lslash = 611;\n t.Oslash = 778;\n t.OE = 1000;\n t.ordmasculine = 365;\n t.ae = 889;\n t.dotlessi = 278;\n t.lslash = 278;\n t.oslash = 611;\n t.oe = 944;\n t.germandbls = 611;\n t.Idieresis = 278;\n t.eacute = 556;\n t.abreve = 556;\n t.uhungarumlaut = 611;\n t.ecaron = 556;\n t.Ydieresis = 667;\n t.divide = 584;\n t.Yacute = 667;\n t.Acircumflex = 722;\n t.aacute = 556;\n t.Ucircumflex = 722;\n t.yacute = 556;\n t.scommaaccent = 556;\n t.ecircumflex = 556;\n t.Uring = 722;\n t.Udieresis = 722;\n t.aogonek = 556;\n t.Uacute = 722;\n t.uogonek = 611;\n t.Edieresis = 667;\n t.Dcroat = 722;\n t.commaaccent = 250;\n t.copyright = 737;\n t.Emacron = 667;\n t.ccaron = 556;\n t.aring = 556;\n t.Ncommaaccent = 722;\n t.lacute = 278;\n t.agrave = 556;\n t.Tcommaaccent = 611;\n t.Cacute = 722;\n t.atilde = 556;\n t.Edotaccent = 667;\n t.scaron = 556;\n t.scedilla = 556;\n t.iacute = 278;\n t.lozenge = 494;\n t.Rcaron = 722;\n t.Gcommaaccent = 778;\n t.ucircumflex = 611;\n t.acircumflex = 556;\n t.Amacron = 722;\n t.rcaron = 389;\n t.ccedilla = 556;\n t.Zdotaccent = 611;\n t.Thorn = 667;\n t.Omacron = 778;\n t.Racute = 722;\n t.Sacute = 667;\n t.dcaron = 743;\n t.Umacron = 722;\n t.uring = 611;\n t.threesuperior = 333;\n t.Ograve = 778;\n t.Agrave = 722;\n t.Abreve = 722;\n t.multiply = 584;\n t.uacute = 611;\n t.Tcaron = 611;\n t.partialdiff = 494;\n t.ydieresis = 556;\n t.Nacute = 722;\n t.icircumflex = 278;\n t.Ecircumflex = 667;\n t.adieresis = 556;\n t.edieresis = 556;\n t.cacute = 556;\n t.nacute = 611;\n t.umacron = 611;\n t.Ncaron = 722;\n t.Iacute = 278;\n t.plusminus = 584;\n t.brokenbar = 280;\n t.registered = 737;\n t.Gbreve = 778;\n t.Idotaccent = 278;\n t.summation = 600;\n t.Egrave = 667;\n t.racute = 389;\n t.omacron = 611;\n t.Zacute = 611;\n t.Zcaron = 611;\n t.greaterequal = 549;\n t.Eth = 722;\n t.Ccedilla = 722;\n t.lcommaaccent = 278;\n t.tcaron = 389;\n t.eogonek = 556;\n t.Uogonek = 722;\n t.Aacute = 722;\n t.Adieresis = 722;\n t.egrave = 556;\n t.zacute = 500;\n t.iogonek = 278;\n t.Oacute = 778;\n t.oacute = 611;\n t.amacron = 556;\n t.sacute = 556;\n t.idieresis = 278;\n t.Ocircumflex = 778;\n t.Ugrave = 722;\n t.Delta = 612;\n t.thorn = 611;\n t.twosuperior = 333;\n t.Odieresis = 778;\n t.mu = 611;\n t.igrave = 278;\n t.ohungarumlaut = 611;\n t.Eogonek = 667;\n t.dcroat = 611;\n t.threequarters = 834;\n t.Scedilla = 667;\n t.lcaron = 400;\n t.Kcommaaccent = 722;\n t.Lacute = 611;\n t.trademark = 1000;\n t.edotaccent = 556;\n t.Igrave = 278;\n t.Imacron = 278;\n t.Lcaron = 611;\n t.onehalf = 834;\n t.lessequal = 549;\n t.ocircumflex = 611;\n t.ntilde = 611;\n t.Uhungarumlaut = 722;\n t.Eacute = 667;\n t.emacron = 556;\n t.gbreve = 611;\n t.onequarter = 834;\n t.Scaron = 667;\n t.Scommaaccent = 667;\n t.Ohungarumlaut = 778;\n t.degree = 400;\n t.ograve = 611;\n t.Ccaron = 722;\n t.ugrave = 611;\n t.radical = 549;\n t.Dcaron = 722;\n t.rcommaaccent = 389;\n t.Ntilde = 722;\n t.otilde = 611;\n t.Rcommaaccent = 722;\n t.Lcommaaccent = 611;\n t.Atilde = 722;\n t.Aogonek = 722;\n t.Aring = 722;\n t.Otilde = 778;\n t.zdotaccent = 500;\n t.Ecaron = 667;\n t.Iogonek = 278;\n t.kcommaaccent = 556;\n t.minus = 584;\n t.Icircumflex = 278;\n t.ncaron = 611;\n t.tcommaaccent = 333;\n t.logicalnot = 584;\n t.odieresis = 611;\n t.udieresis = 611;\n t.notequal = 549;\n t.gcommaaccent = 611;\n t.eth = 611;\n t.zcaron = 500;\n t.ncommaaccent = 611;\n t.onesuperior = 333;\n t.imacron = 278;\n t.Euro = 556;\n });\n t[\"Helvetica-Oblique\"] = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 278;\n t.exclam = 278;\n t.quotedbl = 355;\n t.numbersign = 556;\n t.dollar = 556;\n t.percent = 889;\n t.ampersand = 667;\n t.quoteright = 222;\n t.parenleft = 333;\n t.parenright = 333;\n t.asterisk = 389;\n t.plus = 584;\n t.comma = 278;\n t.hyphen = 333;\n t.period = 278;\n t.slash = 278;\n t.zero = 556;\n t.one = 556;\n t.two = 556;\n t.three = 556;\n t.four = 556;\n t.five = 556;\n t.six = 556;\n t.seven = 556;\n t.eight = 556;\n t.nine = 556;\n t.colon = 278;\n t.semicolon = 278;\n t.less = 584;\n t.equal = 584;\n t.greater = 584;\n t.question = 556;\n t.at = 1015;\n t.A = 667;\n t.B = 667;\n t.C = 722;\n t.D = 722;\n t.E = 667;\n t.F = 611;\n t.G = 778;\n t.H = 722;\n t.I = 278;\n t.J = 500;\n t.K = 667;\n t.L = 556;\n t.M = 833;\n t.N = 722;\n t.O = 778;\n t.P = 667;\n t.Q = 778;\n t.R = 722;\n t.S = 667;\n t.T = 611;\n t.U = 722;\n t.V = 667;\n t.W = 944;\n t.X = 667;\n t.Y = 667;\n t.Z = 611;\n t.bracketleft = 278;\n t.backslash = 278;\n t.bracketright = 278;\n t.asciicircum = 469;\n t.underscore = 556;\n t.quoteleft = 222;\n t.a = 556;\n t.b = 556;\n t.c = 500;\n t.d = 556;\n t.e = 556;\n t.f = 278;\n t.g = 556;\n t.h = 556;\n t.i = 222;\n t.j = 222;\n t.k = 500;\n t.l = 222;\n t.m = 833;\n t.n = 556;\n t.o = 556;\n t.p = 556;\n t.q = 556;\n t.r = 333;\n t.s = 500;\n t.t = 278;\n t.u = 556;\n t.v = 500;\n t.w = 722;\n t.x = 500;\n t.y = 500;\n t.z = 500;\n t.braceleft = 334;\n t.bar = 260;\n t.braceright = 334;\n t.asciitilde = 584;\n t.exclamdown = 333;\n t.cent = 556;\n t.sterling = 556;\n t.fraction = 167;\n t.yen = 556;\n t.florin = 556;\n t.section = 556;\n t.currency = 556;\n t.quotesingle = 191;\n t.quotedblleft = 333;\n t.guillemotleft = 556;\n t.guilsinglleft = 333;\n t.guilsinglright = 333;\n t.fi = 500;\n t.fl = 500;\n t.endash = 556;\n t.dagger = 556;\n t.daggerdbl = 556;\n t.periodcentered = 278;\n t.paragraph = 537;\n t.bullet = 350;\n t.quotesinglbase = 222;\n t.quotedblbase = 333;\n t.quotedblright = 333;\n t.guillemotright = 556;\n t.ellipsis = 1000;\n t.perthousand = 1000;\n t.questiondown = 611;\n t.grave = 333;\n t.acute = 333;\n t.circumflex = 333;\n t.tilde = 333;\n t.macron = 333;\n t.breve = 333;\n t.dotaccent = 333;\n t.dieresis = 333;\n t.ring = 333;\n t.cedilla = 333;\n t.hungarumlaut = 333;\n t.ogonek = 333;\n t.caron = 333;\n t.emdash = 1000;\n t.AE = 1000;\n t.ordfeminine = 370;\n t.Lslash = 556;\n t.Oslash = 778;\n t.OE = 1000;\n t.ordmasculine = 365;\n t.ae = 889;\n t.dotlessi = 278;\n t.lslash = 222;\n t.oslash = 611;\n t.oe = 944;\n t.germandbls = 611;\n t.Idieresis = 278;\n t.eacute = 556;\n t.abreve = 556;\n t.uhungarumlaut = 556;\n t.ecaron = 556;\n t.Ydieresis = 667;\n t.divide = 584;\n t.Yacute = 667;\n t.Acircumflex = 667;\n t.aacute = 556;\n t.Ucircumflex = 722;\n t.yacute = 500;\n t.scommaaccent = 500;\n t.ecircumflex = 556;\n t.Uring = 722;\n t.Udieresis = 722;\n t.aogonek = 556;\n t.Uacute = 722;\n t.uogonek = 556;\n t.Edieresis = 667;\n t.Dcroat = 722;\n t.commaaccent = 250;\n t.copyright = 737;\n t.Emacron = 667;\n t.ccaron = 500;\n t.aring = 556;\n t.Ncommaaccent = 722;\n t.lacute = 222;\n t.agrave = 556;\n t.Tcommaaccent = 611;\n t.Cacute = 722;\n t.atilde = 556;\n t.Edotaccent = 667;\n t.scaron = 500;\n t.scedilla = 500;\n t.iacute = 278;\n t.lozenge = 471;\n t.Rcaron = 722;\n t.Gcommaaccent = 778;\n t.ucircumflex = 556;\n t.acircumflex = 556;\n t.Amacron = 667;\n t.rcaron = 333;\n t.ccedilla = 500;\n t.Zdotaccent = 611;\n t.Thorn = 667;\n t.Omacron = 778;\n t.Racute = 722;\n t.Sacute = 667;\n t.dcaron = 643;\n t.Umacron = 722;\n t.uring = 556;\n t.threesuperior = 333;\n t.Ograve = 778;\n t.Agrave = 667;\n t.Abreve = 667;\n t.multiply = 584;\n t.uacute = 556;\n t.Tcaron = 611;\n t.partialdiff = 476;\n t.ydieresis = 500;\n t.Nacute = 722;\n t.icircumflex = 278;\n t.Ecircumflex = 667;\n t.adieresis = 556;\n t.edieresis = 556;\n t.cacute = 500;\n t.nacute = 556;\n t.umacron = 556;\n t.Ncaron = 722;\n t.Iacute = 278;\n t.plusminus = 584;\n t.brokenbar = 260;\n t.registered = 737;\n t.Gbreve = 778;\n t.Idotaccent = 278;\n t.summation = 600;\n t.Egrave = 667;\n t.racute = 333;\n t.omacron = 556;\n t.Zacute = 611;\n t.Zcaron = 611;\n t.greaterequal = 549;\n t.Eth = 722;\n t.Ccedilla = 722;\n t.lcommaaccent = 222;\n t.tcaron = 317;\n t.eogonek = 556;\n t.Uogonek = 722;\n t.Aacute = 667;\n t.Adieresis = 667;\n t.egrave = 556;\n t.zacute = 500;\n t.iogonek = 222;\n t.Oacute = 778;\n t.oacute = 556;\n t.amacron = 556;\n t.sacute = 500;\n t.idieresis = 278;\n t.Ocircumflex = 778;\n t.Ugrave = 722;\n t.Delta = 612;\n t.thorn = 556;\n t.twosuperior = 333;\n t.Odieresis = 778;\n t.mu = 556;\n t.igrave = 278;\n t.ohungarumlaut = 556;\n t.Eogonek = 667;\n t.dcroat = 556;\n t.threequarters = 834;\n t.Scedilla = 667;\n t.lcaron = 299;\n t.Kcommaaccent = 667;\n t.Lacute = 556;\n t.trademark = 1000;\n t.edotaccent = 556;\n t.Igrave = 278;\n t.Imacron = 278;\n t.Lcaron = 556;\n t.onehalf = 834;\n t.lessequal = 549;\n t.ocircumflex = 556;\n t.ntilde = 556;\n t.Uhungarumlaut = 722;\n t.Eacute = 667;\n t.emacron = 556;\n t.gbreve = 556;\n t.onequarter = 834;\n t.Scaron = 667;\n t.Scommaaccent = 667;\n t.Ohungarumlaut = 778;\n t.degree = 400;\n t.ograve = 556;\n t.Ccaron = 722;\n t.ugrave = 556;\n t.radical = 453;\n t.Dcaron = 722;\n t.rcommaaccent = 333;\n t.Ntilde = 722;\n t.otilde = 556;\n t.Rcommaaccent = 722;\n t.Lcommaaccent = 556;\n t.Atilde = 667;\n t.Aogonek = 667;\n t.Aring = 667;\n t.Otilde = 778;\n t.zdotaccent = 500;\n t.Ecaron = 667;\n t.Iogonek = 278;\n t.kcommaaccent = 500;\n t.minus = 584;\n t.Icircumflex = 278;\n t.ncaron = 556;\n t.tcommaaccent = 278;\n t.logicalnot = 584;\n t.odieresis = 556;\n t.udieresis = 556;\n t.notequal = 549;\n t.gcommaaccent = 556;\n t.eth = 556;\n t.zcaron = 500;\n t.ncommaaccent = 556;\n t.onesuperior = 333;\n t.imacron = 278;\n t.Euro = 556;\n });\n t.Symbol = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 250;\n t.exclam = 333;\n t.universal = 713;\n t.numbersign = 500;\n t.existential = 549;\n t.percent = 833;\n t.ampersand = 778;\n t.suchthat = 439;\n t.parenleft = 333;\n t.parenright = 333;\n t.asteriskmath = 500;\n t.plus = 549;\n t.comma = 250;\n t.minus = 549;\n t.period = 250;\n t.slash = 278;\n t.zero = 500;\n t.one = 500;\n t.two = 500;\n t.three = 500;\n t.four = 500;\n t.five = 500;\n t.six = 500;\n t.seven = 500;\n t.eight = 500;\n t.nine = 500;\n t.colon = 278;\n t.semicolon = 278;\n t.less = 549;\n t.equal = 549;\n t.greater = 549;\n t.question = 444;\n t.congruent = 549;\n t.Alpha = 722;\n t.Beta = 667;\n t.Chi = 722;\n t.Delta = 612;\n t.Epsilon = 611;\n t.Phi = 763;\n t.Gamma = 603;\n t.Eta = 722;\n t.Iota = 333;\n t.theta1 = 631;\n t.Kappa = 722;\n t.Lambda = 686;\n t.Mu = 889;\n t.Nu = 722;\n t.Omicron = 722;\n t.Pi = 768;\n t.Theta = 741;\n t.Rho = 556;\n t.Sigma = 592;\n t.Tau = 611;\n t.Upsilon = 690;\n t.sigma1 = 439;\n t.Omega = 768;\n t.Xi = 645;\n t.Psi = 795;\n t.Zeta = 611;\n t.bracketleft = 333;\n t.therefore = 863;\n t.bracketright = 333;\n t.perpendicular = 658;\n t.underscore = 500;\n t.radicalex = 500;\n t.alpha = 631;\n t.beta = 549;\n t.chi = 549;\n t.delta = 494;\n t.epsilon = 439;\n t.phi = 521;\n t.gamma = 411;\n t.eta = 603;\n t.iota = 329;\n t.phi1 = 603;\n t.kappa = 549;\n t.lambda = 549;\n t.mu = 576;\n t.nu = 521;\n t.omicron = 549;\n t.pi = 549;\n t.theta = 521;\n t.rho = 549;\n t.sigma = 603;\n t.tau = 439;\n t.upsilon = 576;\n t.omega1 = 713;\n t.omega = 686;\n t.xi = 493;\n t.psi = 686;\n t.zeta = 494;\n t.braceleft = 480;\n t.bar = 200;\n t.braceright = 480;\n t.similar = 549;\n t.Euro = 750;\n t.Upsilon1 = 620;\n t.minute = 247;\n t.lessequal = 549;\n t.fraction = 167;\n t.infinity = 713;\n t.florin = 500;\n t.club = 753;\n t.diamond = 753;\n t.heart = 753;\n t.spade = 753;\n t.arrowboth = 1042;\n t.arrowleft = 987;\n t.arrowup = 603;\n t.arrowright = 987;\n t.arrowdown = 603;\n t.degree = 400;\n t.plusminus = 549;\n t.second = 411;\n t.greaterequal = 549;\n t.multiply = 549;\n t.proportional = 713;\n t.partialdiff = 494;\n t.bullet = 460;\n t.divide = 549;\n t.notequal = 549;\n t.equivalence = 549;\n t.approxequal = 549;\n t.ellipsis = 1000;\n t.arrowvertex = 603;\n t.arrowhorizex = 1000;\n t.carriagereturn = 658;\n t.aleph = 823;\n t.Ifraktur = 686;\n t.Rfraktur = 795;\n t.weierstrass = 987;\n t.circlemultiply = 768;\n t.circleplus = 768;\n t.emptyset = 823;\n t.intersection = 768;\n t.union = 768;\n t.propersuperset = 713;\n t.reflexsuperset = 713;\n t.notsubset = 713;\n t.propersubset = 713;\n t.reflexsubset = 713;\n t.element = 713;\n t.notelement = 713;\n t.angle = 768;\n t.gradient = 713;\n t.registerserif = 790;\n t.copyrightserif = 790;\n t.trademarkserif = 890;\n t.product = 823;\n t.radical = 549;\n t.dotmath = 250;\n t.logicalnot = 713;\n t.logicaland = 603;\n t.logicalor = 603;\n t.arrowdblboth = 1042;\n t.arrowdblleft = 987;\n t.arrowdblup = 603;\n t.arrowdblright = 987;\n t.arrowdbldown = 603;\n t.lozenge = 494;\n t.angleleft = 329;\n t.registersans = 790;\n t.copyrightsans = 790;\n t.trademarksans = 786;\n t.summation = 713;\n t.parenlefttp = 384;\n t.parenleftex = 384;\n t.parenleftbt = 384;\n t.bracketlefttp = 384;\n t.bracketleftex = 384;\n t.bracketleftbt = 384;\n t.bracelefttp = 494;\n t.braceleftmid = 494;\n t.braceleftbt = 494;\n t.braceex = 494;\n t.angleright = 329;\n t.integral = 274;\n t.integraltp = 686;\n t.integralex = 686;\n t.integralbt = 686;\n t.parenrighttp = 384;\n t.parenrightex = 384;\n t.parenrightbt = 384;\n t.bracketrighttp = 384;\n t.bracketrightex = 384;\n t.bracketrightbt = 384;\n t.bracerighttp = 494;\n t.bracerightmid = 494;\n t.bracerightbt = 494;\n t.apple = 790;\n });\n t[\"Times-Roman\"] = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 250;\n t.exclam = 333;\n t.quotedbl = 408;\n t.numbersign = 500;\n t.dollar = 500;\n t.percent = 833;\n t.ampersand = 778;\n t.quoteright = 333;\n t.parenleft = 333;\n t.parenright = 333;\n t.asterisk = 500;\n t.plus = 564;\n t.comma = 250;\n t.hyphen = 333;\n t.period = 250;\n t.slash = 278;\n t.zero = 500;\n t.one = 500;\n t.two = 500;\n t.three = 500;\n t.four = 500;\n t.five = 500;\n t.six = 500;\n t.seven = 500;\n t.eight = 500;\n t.nine = 500;\n t.colon = 278;\n t.semicolon = 278;\n t.less = 564;\n t.equal = 564;\n t.greater = 564;\n t.question = 444;\n t.at = 921;\n t.A = 722;\n t.B = 667;\n t.C = 667;\n t.D = 722;\n t.E = 611;\n t.F = 556;\n t.G = 722;\n t.H = 722;\n t.I = 333;\n t.J = 389;\n t.K = 722;\n t.L = 611;\n t.M = 889;\n t.N = 722;\n t.O = 722;\n t.P = 556;\n t.Q = 722;\n t.R = 667;\n t.S = 556;\n t.T = 611;\n t.U = 722;\n t.V = 722;\n t.W = 944;\n t.X = 722;\n t.Y = 722;\n t.Z = 611;\n t.bracketleft = 333;\n t.backslash = 278;\n t.bracketright = 333;\n t.asciicircum = 469;\n t.underscore = 500;\n t.quoteleft = 333;\n t.a = 444;\n t.b = 500;\n t.c = 444;\n t.d = 500;\n t.e = 444;\n t.f = 333;\n t.g = 500;\n t.h = 500;\n t.i = 278;\n t.j = 278;\n t.k = 500;\n t.l = 278;\n t.m = 778;\n t.n = 500;\n t.o = 500;\n t.p = 500;\n t.q = 500;\n t.r = 333;\n t.s = 389;\n t.t = 278;\n t.u = 500;\n t.v = 500;\n t.w = 722;\n t.x = 500;\n t.y = 500;\n t.z = 444;\n t.braceleft = 480;\n t.bar = 200;\n t.braceright = 480;\n t.asciitilde = 541;\n t.exclamdown = 333;\n t.cent = 500;\n t.sterling = 500;\n t.fraction = 167;\n t.yen = 500;\n t.florin = 500;\n t.section = 500;\n t.currency = 500;\n t.quotesingle = 180;\n t.quotedblleft = 444;\n t.guillemotleft = 500;\n t.guilsinglleft = 333;\n t.guilsinglright = 333;\n t.fi = 556;\n t.fl = 556;\n t.endash = 500;\n t.dagger = 500;\n t.daggerdbl = 500;\n t.periodcentered = 250;\n t.paragraph = 453;\n t.bullet = 350;\n t.quotesinglbase = 333;\n t.quotedblbase = 444;\n t.quotedblright = 444;\n t.guillemotright = 500;\n t.ellipsis = 1000;\n t.perthousand = 1000;\n t.questiondown = 444;\n t.grave = 333;\n t.acute = 333;\n t.circumflex = 333;\n t.tilde = 333;\n t.macron = 333;\n t.breve = 333;\n t.dotaccent = 333;\n t.dieresis = 333;\n t.ring = 333;\n t.cedilla = 333;\n t.hungarumlaut = 333;\n t.ogonek = 333;\n t.caron = 333;\n t.emdash = 1000;\n t.AE = 889;\n t.ordfeminine = 276;\n t.Lslash = 611;\n t.Oslash = 722;\n t.OE = 889;\n t.ordmasculine = 310;\n t.ae = 667;\n t.dotlessi = 278;\n t.lslash = 278;\n t.oslash = 500;\n t.oe = 722;\n t.germandbls = 500;\n t.Idieresis = 333;\n t.eacute = 444;\n t.abreve = 444;\n t.uhungarumlaut = 500;\n t.ecaron = 444;\n t.Ydieresis = 722;\n t.divide = 564;\n t.Yacute = 722;\n t.Acircumflex = 722;\n t.aacute = 444;\n t.Ucircumflex = 722;\n t.yacute = 500;\n t.scommaaccent = 389;\n t.ecircumflex = 444;\n t.Uring = 722;\n t.Udieresis = 722;\n t.aogonek = 444;\n t.Uacute = 722;\n t.uogonek = 500;\n t.Edieresis = 611;\n t.Dcroat = 722;\n t.commaaccent = 250;\n t.copyright = 760;\n t.Emacron = 611;\n t.ccaron = 444;\n t.aring = 444;\n t.Ncommaaccent = 722;\n t.lacute = 278;\n t.agrave = 444;\n t.Tcommaaccent = 611;\n t.Cacute = 667;\n t.atilde = 444;\n t.Edotaccent = 611;\n t.scaron = 389;\n t.scedilla = 389;\n t.iacute = 278;\n t.lozenge = 471;\n t.Rcaron = 667;\n t.Gcommaaccent = 722;\n t.ucircumflex = 500;\n t.acircumflex = 444;\n t.Amacron = 722;\n t.rcaron = 333;\n t.ccedilla = 444;\n t.Zdotaccent = 611;\n t.Thorn = 556;\n t.Omacron = 722;\n t.Racute = 667;\n t.Sacute = 556;\n t.dcaron = 588;\n t.Umacron = 722;\n t.uring = 500;\n t.threesuperior = 300;\n t.Ograve = 722;\n t.Agrave = 722;\n t.Abreve = 722;\n t.multiply = 564;\n t.uacute = 500;\n t.Tcaron = 611;\n t.partialdiff = 476;\n t.ydieresis = 500;\n t.Nacute = 722;\n t.icircumflex = 278;\n t.Ecircumflex = 611;\n t.adieresis = 444;\n t.edieresis = 444;\n t.cacute = 444;\n t.nacute = 500;\n t.umacron = 500;\n t.Ncaron = 722;\n t.Iacute = 333;\n t.plusminus = 564;\n t.brokenbar = 200;\n t.registered = 760;\n t.Gbreve = 722;\n t.Idotaccent = 333;\n t.summation = 600;\n t.Egrave = 611;\n t.racute = 333;\n t.omacron = 500;\n t.Zacute = 611;\n t.Zcaron = 611;\n t.greaterequal = 549;\n t.Eth = 722;\n t.Ccedilla = 667;\n t.lcommaaccent = 278;\n t.tcaron = 326;\n t.eogonek = 444;\n t.Uogonek = 722;\n t.Aacute = 722;\n t.Adieresis = 722;\n t.egrave = 444;\n t.zacute = 444;\n t.iogonek = 278;\n t.Oacute = 722;\n t.oacute = 500;\n t.amacron = 444;\n t.sacute = 389;\n t.idieresis = 278;\n t.Ocircumflex = 722;\n t.Ugrave = 722;\n t.Delta = 612;\n t.thorn = 500;\n t.twosuperior = 300;\n t.Odieresis = 722;\n t.mu = 500;\n t.igrave = 278;\n t.ohungarumlaut = 500;\n t.Eogonek = 611;\n t.dcroat = 500;\n t.threequarters = 750;\n t.Scedilla = 556;\n t.lcaron = 344;\n t.Kcommaaccent = 722;\n t.Lacute = 611;\n t.trademark = 980;\n t.edotaccent = 444;\n t.Igrave = 333;\n t.Imacron = 333;\n t.Lcaron = 611;\n t.onehalf = 750;\n t.lessequal = 549;\n t.ocircumflex = 500;\n t.ntilde = 500;\n t.Uhungarumlaut = 722;\n t.Eacute = 611;\n t.emacron = 444;\n t.gbreve = 500;\n t.onequarter = 750;\n t.Scaron = 556;\n t.Scommaaccent = 556;\n t.Ohungarumlaut = 722;\n t.degree = 400;\n t.ograve = 500;\n t.Ccaron = 667;\n t.ugrave = 500;\n t.radical = 453;\n t.Dcaron = 722;\n t.rcommaaccent = 333;\n t.Ntilde = 722;\n t.otilde = 500;\n t.Rcommaaccent = 667;\n t.Lcommaaccent = 611;\n t.Atilde = 722;\n t.Aogonek = 722;\n t.Aring = 722;\n t.Otilde = 722;\n t.zdotaccent = 444;\n t.Ecaron = 611;\n t.Iogonek = 333;\n t.kcommaaccent = 500;\n t.minus = 564;\n t.Icircumflex = 333;\n t.ncaron = 500;\n t.tcommaaccent = 278;\n t.logicalnot = 564;\n t.odieresis = 500;\n t.udieresis = 500;\n t.notequal = 549;\n t.gcommaaccent = 500;\n t.eth = 500;\n t.zcaron = 444;\n t.ncommaaccent = 500;\n t.onesuperior = 300;\n t.imacron = 278;\n t.Euro = 500;\n });\n t[\"Times-Bold\"] = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 250;\n t.exclam = 333;\n t.quotedbl = 555;\n t.numbersign = 500;\n t.dollar = 500;\n t.percent = 1000;\n t.ampersand = 833;\n t.quoteright = 333;\n t.parenleft = 333;\n t.parenright = 333;\n t.asterisk = 500;\n t.plus = 570;\n t.comma = 250;\n t.hyphen = 333;\n t.period = 250;\n t.slash = 278;\n t.zero = 500;\n t.one = 500;\n t.two = 500;\n t.three = 500;\n t.four = 500;\n t.five = 500;\n t.six = 500;\n t.seven = 500;\n t.eight = 500;\n t.nine = 500;\n t.colon = 333;\n t.semicolon = 333;\n t.less = 570;\n t.equal = 570;\n t.greater = 570;\n t.question = 500;\n t.at = 930;\n t.A = 722;\n t.B = 667;\n t.C = 722;\n t.D = 722;\n t.E = 667;\n t.F = 611;\n t.G = 778;\n t.H = 778;\n t.I = 389;\n t.J = 500;\n t.K = 778;\n t.L = 667;\n t.M = 944;\n t.N = 722;\n t.O = 778;\n t.P = 611;\n t.Q = 778;\n t.R = 722;\n t.S = 556;\n t.T = 667;\n t.U = 722;\n t.V = 722;\n t.W = 1000;\n t.X = 722;\n t.Y = 722;\n t.Z = 667;\n t.bracketleft = 333;\n t.backslash = 278;\n t.bracketright = 333;\n t.asciicircum = 581;\n t.underscore = 500;\n t.quoteleft = 333;\n t.a = 500;\n t.b = 556;\n t.c = 444;\n t.d = 556;\n t.e = 444;\n t.f = 333;\n t.g = 500;\n t.h = 556;\n t.i = 278;\n t.j = 333;\n t.k = 556;\n t.l = 278;\n t.m = 833;\n t.n = 556;\n t.o = 500;\n t.p = 556;\n t.q = 556;\n t.r = 444;\n t.s = 389;\n t.t = 333;\n t.u = 556;\n t.v = 500;\n t.w = 722;\n t.x = 500;\n t.y = 500;\n t.z = 444;\n t.braceleft = 394;\n t.bar = 220;\n t.braceright = 394;\n t.asciitilde = 520;\n t.exclamdown = 333;\n t.cent = 500;\n t.sterling = 500;\n t.fraction = 167;\n t.yen = 500;\n t.florin = 500;\n t.section = 500;\n t.currency = 500;\n t.quotesingle = 278;\n t.quotedblleft = 500;\n t.guillemotleft = 500;\n t.guilsinglleft = 333;\n t.guilsinglright = 333;\n t.fi = 556;\n t.fl = 556;\n t.endash = 500;\n t.dagger = 500;\n t.daggerdbl = 500;\n t.periodcentered = 250;\n t.paragraph = 540;\n t.bullet = 350;\n t.quotesinglbase = 333;\n t.quotedblbase = 500;\n t.quotedblright = 500;\n t.guillemotright = 500;\n t.ellipsis = 1000;\n t.perthousand = 1000;\n t.questiondown = 500;\n t.grave = 333;\n t.acute = 333;\n t.circumflex = 333;\n t.tilde = 333;\n t.macron = 333;\n t.breve = 333;\n t.dotaccent = 333;\n t.dieresis = 333;\n t.ring = 333;\n t.cedilla = 333;\n t.hungarumlaut = 333;\n t.ogonek = 333;\n t.caron = 333;\n t.emdash = 1000;\n t.AE = 1000;\n t.ordfeminine = 300;\n t.Lslash = 667;\n t.Oslash = 778;\n t.OE = 1000;\n t.ordmasculine = 330;\n t.ae = 722;\n t.dotlessi = 278;\n t.lslash = 278;\n t.oslash = 500;\n t.oe = 722;\n t.germandbls = 556;\n t.Idieresis = 389;\n t.eacute = 444;\n t.abreve = 500;\n t.uhungarumlaut = 556;\n t.ecaron = 444;\n t.Ydieresis = 722;\n t.divide = 570;\n t.Yacute = 722;\n t.Acircumflex = 722;\n t.aacute = 500;\n t.Ucircumflex = 722;\n t.yacute = 500;\n t.scommaaccent = 389;\n t.ecircumflex = 444;\n t.Uring = 722;\n t.Udieresis = 722;\n t.aogonek = 500;\n t.Uacute = 722;\n t.uogonek = 556;\n t.Edieresis = 667;\n t.Dcroat = 722;\n t.commaaccent = 250;\n t.copyright = 747;\n t.Emacron = 667;\n t.ccaron = 444;\n t.aring = 500;\n t.Ncommaaccent = 722;\n t.lacute = 278;\n t.agrave = 500;\n t.Tcommaaccent = 667;\n t.Cacute = 722;\n t.atilde = 500;\n t.Edotaccent = 667;\n t.scaron = 389;\n t.scedilla = 389;\n t.iacute = 278;\n t.lozenge = 494;\n t.Rcaron = 722;\n t.Gcommaaccent = 778;\n t.ucircumflex = 556;\n t.acircumflex = 500;\n t.Amacron = 722;\n t.rcaron = 444;\n t.ccedilla = 444;\n t.Zdotaccent = 667;\n t.Thorn = 611;\n t.Omacron = 778;\n t.Racute = 722;\n t.Sacute = 556;\n t.dcaron = 672;\n t.Umacron = 722;\n t.uring = 556;\n t.threesuperior = 300;\n t.Ograve = 778;\n t.Agrave = 722;\n t.Abreve = 722;\n t.multiply = 570;\n t.uacute = 556;\n t.Tcaron = 667;\n t.partialdiff = 494;\n t.ydieresis = 500;\n t.Nacute = 722;\n t.icircumflex = 278;\n t.Ecircumflex = 667;\n t.adieresis = 500;\n t.edieresis = 444;\n t.cacute = 444;\n t.nacute = 556;\n t.umacron = 556;\n t.Ncaron = 722;\n t.Iacute = 389;\n t.plusminus = 570;\n t.brokenbar = 220;\n t.registered = 747;\n t.Gbreve = 778;\n t.Idotaccent = 389;\n t.summation = 600;\n t.Egrave = 667;\n t.racute = 444;\n t.omacron = 500;\n t.Zacute = 667;\n t.Zcaron = 667;\n t.greaterequal = 549;\n t.Eth = 722;\n t.Ccedilla = 722;\n t.lcommaaccent = 278;\n t.tcaron = 416;\n t.eogonek = 444;\n t.Uogonek = 722;\n t.Aacute = 722;\n t.Adieresis = 722;\n t.egrave = 444;\n t.zacute = 444;\n t.iogonek = 278;\n t.Oacute = 778;\n t.oacute = 500;\n t.amacron = 500;\n t.sacute = 389;\n t.idieresis = 278;\n t.Ocircumflex = 778;\n t.Ugrave = 722;\n t.Delta = 612;\n t.thorn = 556;\n t.twosuperior = 300;\n t.Odieresis = 778;\n t.mu = 556;\n t.igrave = 278;\n t.ohungarumlaut = 500;\n t.Eogonek = 667;\n t.dcroat = 556;\n t.threequarters = 750;\n t.Scedilla = 556;\n t.lcaron = 394;\n t.Kcommaaccent = 778;\n t.Lacute = 667;\n t.trademark = 1000;\n t.edotaccent = 444;\n t.Igrave = 389;\n t.Imacron = 389;\n t.Lcaron = 667;\n t.onehalf = 750;\n t.lessequal = 549;\n t.ocircumflex = 500;\n t.ntilde = 556;\n t.Uhungarumlaut = 722;\n t.Eacute = 667;\n t.emacron = 444;\n t.gbreve = 500;\n t.onequarter = 750;\n t.Scaron = 556;\n t.Scommaaccent = 556;\n t.Ohungarumlaut = 778;\n t.degree = 400;\n t.ograve = 500;\n t.Ccaron = 722;\n t.ugrave = 556;\n t.radical = 549;\n t.Dcaron = 722;\n t.rcommaaccent = 444;\n t.Ntilde = 722;\n t.otilde = 500;\n t.Rcommaaccent = 722;\n t.Lcommaaccent = 667;\n t.Atilde = 722;\n t.Aogonek = 722;\n t.Aring = 722;\n t.Otilde = 778;\n t.zdotaccent = 444;\n t.Ecaron = 667;\n t.Iogonek = 389;\n t.kcommaaccent = 556;\n t.minus = 570;\n t.Icircumflex = 389;\n t.ncaron = 556;\n t.tcommaaccent = 333;\n t.logicalnot = 570;\n t.odieresis = 500;\n t.udieresis = 556;\n t.notequal = 549;\n t.gcommaaccent = 500;\n t.eth = 500;\n t.zcaron = 444;\n t.ncommaaccent = 556;\n t.onesuperior = 300;\n t.imacron = 278;\n t.Euro = 500;\n });\n t[\"Times-BoldItalic\"] = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 250;\n t.exclam = 389;\n t.quotedbl = 555;\n t.numbersign = 500;\n t.dollar = 500;\n t.percent = 833;\n t.ampersand = 778;\n t.quoteright = 333;\n t.parenleft = 333;\n t.parenright = 333;\n t.asterisk = 500;\n t.plus = 570;\n t.comma = 250;\n t.hyphen = 333;\n t.period = 250;\n t.slash = 278;\n t.zero = 500;\n t.one = 500;\n t.two = 500;\n t.three = 500;\n t.four = 500;\n t.five = 500;\n t.six = 500;\n t.seven = 500;\n t.eight = 500;\n t.nine = 500;\n t.colon = 333;\n t.semicolon = 333;\n t.less = 570;\n t.equal = 570;\n t.greater = 570;\n t.question = 500;\n t.at = 832;\n t.A = 667;\n t.B = 667;\n t.C = 667;\n t.D = 722;\n t.E = 667;\n t.F = 667;\n t.G = 722;\n t.H = 778;\n t.I = 389;\n t.J = 500;\n t.K = 667;\n t.L = 611;\n t.M = 889;\n t.N = 722;\n t.O = 722;\n t.P = 611;\n t.Q = 722;\n t.R = 667;\n t.S = 556;\n t.T = 611;\n t.U = 722;\n t.V = 667;\n t.W = 889;\n t.X = 667;\n t.Y = 611;\n t.Z = 611;\n t.bracketleft = 333;\n t.backslash = 278;\n t.bracketright = 333;\n t.asciicircum = 570;\n t.underscore = 500;\n t.quoteleft = 333;\n t.a = 500;\n t.b = 500;\n t.c = 444;\n t.d = 500;\n t.e = 444;\n t.f = 333;\n t.g = 500;\n t.h = 556;\n t.i = 278;\n t.j = 278;\n t.k = 500;\n t.l = 278;\n t.m = 778;\n t.n = 556;\n t.o = 500;\n t.p = 500;\n t.q = 500;\n t.r = 389;\n t.s = 389;\n t.t = 278;\n t.u = 556;\n t.v = 444;\n t.w = 667;\n t.x = 500;\n t.y = 444;\n t.z = 389;\n t.braceleft = 348;\n t.bar = 220;\n t.braceright = 348;\n t.asciitilde = 570;\n t.exclamdown = 389;\n t.cent = 500;\n t.sterling = 500;\n t.fraction = 167;\n t.yen = 500;\n t.florin = 500;\n t.section = 500;\n t.currency = 500;\n t.quotesingle = 278;\n t.quotedblleft = 500;\n t.guillemotleft = 500;\n t.guilsinglleft = 333;\n t.guilsinglright = 333;\n t.fi = 556;\n t.fl = 556;\n t.endash = 500;\n t.dagger = 500;\n t.daggerdbl = 500;\n t.periodcentered = 250;\n t.paragraph = 500;\n t.bullet = 350;\n t.quotesinglbase = 333;\n t.quotedblbase = 500;\n t.quotedblright = 500;\n t.guillemotright = 500;\n t.ellipsis = 1000;\n t.perthousand = 1000;\n t.questiondown = 500;\n t.grave = 333;\n t.acute = 333;\n t.circumflex = 333;\n t.tilde = 333;\n t.macron = 333;\n t.breve = 333;\n t.dotaccent = 333;\n t.dieresis = 333;\n t.ring = 333;\n t.cedilla = 333;\n t.hungarumlaut = 333;\n t.ogonek = 333;\n t.caron = 333;\n t.emdash = 1000;\n t.AE = 944;\n t.ordfeminine = 266;\n t.Lslash = 611;\n t.Oslash = 722;\n t.OE = 944;\n t.ordmasculine = 300;\n t.ae = 722;\n t.dotlessi = 278;\n t.lslash = 278;\n t.oslash = 500;\n t.oe = 722;\n t.germandbls = 500;\n t.Idieresis = 389;\n t.eacute = 444;\n t.abreve = 500;\n t.uhungarumlaut = 556;\n t.ecaron = 444;\n t.Ydieresis = 611;\n t.divide = 570;\n t.Yacute = 611;\n t.Acircumflex = 667;\n t.aacute = 500;\n t.Ucircumflex = 722;\n t.yacute = 444;\n t.scommaaccent = 389;\n t.ecircumflex = 444;\n t.Uring = 722;\n t.Udieresis = 722;\n t.aogonek = 500;\n t.Uacute = 722;\n t.uogonek = 556;\n t.Edieresis = 667;\n t.Dcroat = 722;\n t.commaaccent = 250;\n t.copyright = 747;\n t.Emacron = 667;\n t.ccaron = 444;\n t.aring = 500;\n t.Ncommaaccent = 722;\n t.lacute = 278;\n t.agrave = 500;\n t.Tcommaaccent = 611;\n t.Cacute = 667;\n t.atilde = 500;\n t.Edotaccent = 667;\n t.scaron = 389;\n t.scedilla = 389;\n t.iacute = 278;\n t.lozenge = 494;\n t.Rcaron = 667;\n t.Gcommaaccent = 722;\n t.ucircumflex = 556;\n t.acircumflex = 500;\n t.Amacron = 667;\n t.rcaron = 389;\n t.ccedilla = 444;\n t.Zdotaccent = 611;\n t.Thorn = 611;\n t.Omacron = 722;\n t.Racute = 667;\n t.Sacute = 556;\n t.dcaron = 608;\n t.Umacron = 722;\n t.uring = 556;\n t.threesuperior = 300;\n t.Ograve = 722;\n t.Agrave = 667;\n t.Abreve = 667;\n t.multiply = 570;\n t.uacute = 556;\n t.Tcaron = 611;\n t.partialdiff = 494;\n t.ydieresis = 444;\n t.Nacute = 722;\n t.icircumflex = 278;\n t.Ecircumflex = 667;\n t.adieresis = 500;\n t.edieresis = 444;\n t.cacute = 444;\n t.nacute = 556;\n t.umacron = 556;\n t.Ncaron = 722;\n t.Iacute = 389;\n t.plusminus = 570;\n t.brokenbar = 220;\n t.registered = 747;\n t.Gbreve = 722;\n t.Idotaccent = 389;\n t.summation = 600;\n t.Egrave = 667;\n t.racute = 389;\n t.omacron = 500;\n t.Zacute = 611;\n t.Zcaron = 611;\n t.greaterequal = 549;\n t.Eth = 722;\n t.Ccedilla = 667;\n t.lcommaaccent = 278;\n t.tcaron = 366;\n t.eogonek = 444;\n t.Uogonek = 722;\n t.Aacute = 667;\n t.Adieresis = 667;\n t.egrave = 444;\n t.zacute = 389;\n t.iogonek = 278;\n t.Oacute = 722;\n t.oacute = 500;\n t.amacron = 500;\n t.sacute = 389;\n t.idieresis = 278;\n t.Ocircumflex = 722;\n t.Ugrave = 722;\n t.Delta = 612;\n t.thorn = 500;\n t.twosuperior = 300;\n t.Odieresis = 722;\n t.mu = 576;\n t.igrave = 278;\n t.ohungarumlaut = 500;\n t.Eogonek = 667;\n t.dcroat = 500;\n t.threequarters = 750;\n t.Scedilla = 556;\n t.lcaron = 382;\n t.Kcommaaccent = 667;\n t.Lacute = 611;\n t.trademark = 1000;\n t.edotaccent = 444;\n t.Igrave = 389;\n t.Imacron = 389;\n t.Lcaron = 611;\n t.onehalf = 750;\n t.lessequal = 549;\n t.ocircumflex = 500;\n t.ntilde = 556;\n t.Uhungarumlaut = 722;\n t.Eacute = 667;\n t.emacron = 444;\n t.gbreve = 500;\n t.onequarter = 750;\n t.Scaron = 556;\n t.Scommaaccent = 556;\n t.Ohungarumlaut = 722;\n t.degree = 400;\n t.ograve = 500;\n t.Ccaron = 667;\n t.ugrave = 556;\n t.radical = 549;\n t.Dcaron = 722;\n t.rcommaaccent = 389;\n t.Ntilde = 722;\n t.otilde = 500;\n t.Rcommaaccent = 667;\n t.Lcommaaccent = 611;\n t.Atilde = 667;\n t.Aogonek = 667;\n t.Aring = 667;\n t.Otilde = 722;\n t.zdotaccent = 389;\n t.Ecaron = 667;\n t.Iogonek = 389;\n t.kcommaaccent = 500;\n t.minus = 606;\n t.Icircumflex = 389;\n t.ncaron = 556;\n t.tcommaaccent = 278;\n t.logicalnot = 606;\n t.odieresis = 500;\n t.udieresis = 556;\n t.notequal = 549;\n t.gcommaaccent = 500;\n t.eth = 500;\n t.zcaron = 389;\n t.ncommaaccent = 556;\n t.onesuperior = 300;\n t.imacron = 278;\n t.Euro = 500;\n });\n t[\"Times-Italic\"] = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 250;\n t.exclam = 333;\n t.quotedbl = 420;\n t.numbersign = 500;\n t.dollar = 500;\n t.percent = 833;\n t.ampersand = 778;\n t.quoteright = 333;\n t.parenleft = 333;\n t.parenright = 333;\n t.asterisk = 500;\n t.plus = 675;\n t.comma = 250;\n t.hyphen = 333;\n t.period = 250;\n t.slash = 278;\n t.zero = 500;\n t.one = 500;\n t.two = 500;\n t.three = 500;\n t.four = 500;\n t.five = 500;\n t.six = 500;\n t.seven = 500;\n t.eight = 500;\n t.nine = 500;\n t.colon = 333;\n t.semicolon = 333;\n t.less = 675;\n t.equal = 675;\n t.greater = 675;\n t.question = 500;\n t.at = 920;\n t.A = 611;\n t.B = 611;\n t.C = 667;\n t.D = 722;\n t.E = 611;\n t.F = 611;\n t.G = 722;\n t.H = 722;\n t.I = 333;\n t.J = 444;\n t.K = 667;\n t.L = 556;\n t.M = 833;\n t.N = 667;\n t.O = 722;\n t.P = 611;\n t.Q = 722;\n t.R = 611;\n t.S = 500;\n t.T = 556;\n t.U = 722;\n t.V = 611;\n t.W = 833;\n t.X = 611;\n t.Y = 556;\n t.Z = 556;\n t.bracketleft = 389;\n t.backslash = 278;\n t.bracketright = 389;\n t.asciicircum = 422;\n t.underscore = 500;\n t.quoteleft = 333;\n t.a = 500;\n t.b = 500;\n t.c = 444;\n t.d = 500;\n t.e = 444;\n t.f = 278;\n t.g = 500;\n t.h = 500;\n t.i = 278;\n t.j = 278;\n t.k = 444;\n t.l = 278;\n t.m = 722;\n t.n = 500;\n t.o = 500;\n t.p = 500;\n t.q = 500;\n t.r = 389;\n t.s = 389;\n t.t = 278;\n t.u = 500;\n t.v = 444;\n t.w = 667;\n t.x = 444;\n t.y = 444;\n t.z = 389;\n t.braceleft = 400;\n t.bar = 275;\n t.braceright = 400;\n t.asciitilde = 541;\n t.exclamdown = 389;\n t.cent = 500;\n t.sterling = 500;\n t.fraction = 167;\n t.yen = 500;\n t.florin = 500;\n t.section = 500;\n t.currency = 500;\n t.quotesingle = 214;\n t.quotedblleft = 556;\n t.guillemotleft = 500;\n t.guilsinglleft = 333;\n t.guilsinglright = 333;\n t.fi = 500;\n t.fl = 500;\n t.endash = 500;\n t.dagger = 500;\n t.daggerdbl = 500;\n t.periodcentered = 250;\n t.paragraph = 523;\n t.bullet = 350;\n t.quotesinglbase = 333;\n t.quotedblbase = 556;\n t.quotedblright = 556;\n t.guillemotright = 500;\n t.ellipsis = 889;\n t.perthousand = 1000;\n t.questiondown = 500;\n t.grave = 333;\n t.acute = 333;\n t.circumflex = 333;\n t.tilde = 333;\n t.macron = 333;\n t.breve = 333;\n t.dotaccent = 333;\n t.dieresis = 333;\n t.ring = 333;\n t.cedilla = 333;\n t.hungarumlaut = 333;\n t.ogonek = 333;\n t.caron = 333;\n t.emdash = 889;\n t.AE = 889;\n t.ordfeminine = 276;\n t.Lslash = 556;\n t.Oslash = 722;\n t.OE = 944;\n t.ordmasculine = 310;\n t.ae = 667;\n t.dotlessi = 278;\n t.lslash = 278;\n t.oslash = 500;\n t.oe = 667;\n t.germandbls = 500;\n t.Idieresis = 333;\n t.eacute = 444;\n t.abreve = 500;\n t.uhungarumlaut = 500;\n t.ecaron = 444;\n t.Ydieresis = 556;\n t.divide = 675;\n t.Yacute = 556;\n t.Acircumflex = 611;\n t.aacute = 500;\n t.Ucircumflex = 722;\n t.yacute = 444;\n t.scommaaccent = 389;\n t.ecircumflex = 444;\n t.Uring = 722;\n t.Udieresis = 722;\n t.aogonek = 500;\n t.Uacute = 722;\n t.uogonek = 500;\n t.Edieresis = 611;\n t.Dcroat = 722;\n t.commaaccent = 250;\n t.copyright = 760;\n t.Emacron = 611;\n t.ccaron = 444;\n t.aring = 500;\n t.Ncommaaccent = 667;\n t.lacute = 278;\n t.agrave = 500;\n t.Tcommaaccent = 556;\n t.Cacute = 667;\n t.atilde = 500;\n t.Edotaccent = 611;\n t.scaron = 389;\n t.scedilla = 389;\n t.iacute = 278;\n t.lozenge = 471;\n t.Rcaron = 611;\n t.Gcommaaccent = 722;\n t.ucircumflex = 500;\n t.acircumflex = 500;\n t.Amacron = 611;\n t.rcaron = 389;\n t.ccedilla = 444;\n t.Zdotaccent = 556;\n t.Thorn = 611;\n t.Omacron = 722;\n t.Racute = 611;\n t.Sacute = 500;\n t.dcaron = 544;\n t.Umacron = 722;\n t.uring = 500;\n t.threesuperior = 300;\n t.Ograve = 722;\n t.Agrave = 611;\n t.Abreve = 611;\n t.multiply = 675;\n t.uacute = 500;\n t.Tcaron = 556;\n t.partialdiff = 476;\n t.ydieresis = 444;\n t.Nacute = 667;\n t.icircumflex = 278;\n t.Ecircumflex = 611;\n t.adieresis = 500;\n t.edieresis = 444;\n t.cacute = 444;\n t.nacute = 500;\n t.umacron = 500;\n t.Ncaron = 667;\n t.Iacute = 333;\n t.plusminus = 675;\n t.brokenbar = 275;\n t.registered = 760;\n t.Gbreve = 722;\n t.Idotaccent = 333;\n t.summation = 600;\n t.Egrave = 611;\n t.racute = 389;\n t.omacron = 500;\n t.Zacute = 556;\n t.Zcaron = 556;\n t.greaterequal = 549;\n t.Eth = 722;\n t.Ccedilla = 667;\n t.lcommaaccent = 278;\n t.tcaron = 300;\n t.eogonek = 444;\n t.Uogonek = 722;\n t.Aacute = 611;\n t.Adieresis = 611;\n t.egrave = 444;\n t.zacute = 389;\n t.iogonek = 278;\n t.Oacute = 722;\n t.oacute = 500;\n t.amacron = 500;\n t.sacute = 389;\n t.idieresis = 278;\n t.Ocircumflex = 722;\n t.Ugrave = 722;\n t.Delta = 612;\n t.thorn = 500;\n t.twosuperior = 300;\n t.Odieresis = 722;\n t.mu = 500;\n t.igrave = 278;\n t.ohungarumlaut = 500;\n t.Eogonek = 611;\n t.dcroat = 500;\n t.threequarters = 750;\n t.Scedilla = 500;\n t.lcaron = 300;\n t.Kcommaaccent = 667;\n t.Lacute = 556;\n t.trademark = 980;\n t.edotaccent = 444;\n t.Igrave = 333;\n t.Imacron = 333;\n t.Lcaron = 611;\n t.onehalf = 750;\n t.lessequal = 549;\n t.ocircumflex = 500;\n t.ntilde = 500;\n t.Uhungarumlaut = 722;\n t.Eacute = 611;\n t.emacron = 444;\n t.gbreve = 500;\n t.onequarter = 750;\n t.Scaron = 500;\n t.Scommaaccent = 500;\n t.Ohungarumlaut = 722;\n t.degree = 400;\n t.ograve = 500;\n t.Ccaron = 667;\n t.ugrave = 500;\n t.radical = 453;\n t.Dcaron = 722;\n t.rcommaaccent = 389;\n t.Ntilde = 667;\n t.otilde = 500;\n t.Rcommaaccent = 611;\n t.Lcommaaccent = 556;\n t.Atilde = 611;\n t.Aogonek = 611;\n t.Aring = 611;\n t.Otilde = 722;\n t.zdotaccent = 389;\n t.Ecaron = 611;\n t.Iogonek = 333;\n t.kcommaaccent = 444;\n t.minus = 675;\n t.Icircumflex = 333;\n t.ncaron = 500;\n t.tcommaaccent = 278;\n t.logicalnot = 675;\n t.odieresis = 500;\n t.udieresis = 500;\n t.notequal = 549;\n t.gcommaaccent = 500;\n t.eth = 500;\n t.zcaron = 389;\n t.ncommaaccent = 500;\n t.onesuperior = 300;\n t.imacron = 278;\n t.Euro = 500;\n });\n t.ZapfDingbats = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.space = 278;\n t.a1 = 974;\n t.a2 = 961;\n t.a202 = 974;\n t.a3 = 980;\n t.a4 = 719;\n t.a5 = 789;\n t.a119 = 790;\n t.a118 = 791;\n t.a117 = 690;\n t.a11 = 960;\n t.a12 = 939;\n t.a13 = 549;\n t.a14 = 855;\n t.a15 = 911;\n t.a16 = 933;\n t.a105 = 911;\n t.a17 = 945;\n t.a18 = 974;\n t.a19 = 755;\n t.a20 = 846;\n t.a21 = 762;\n t.a22 = 761;\n t.a23 = 571;\n t.a24 = 677;\n t.a25 = 763;\n t.a26 = 760;\n t.a27 = 759;\n t.a28 = 754;\n t.a6 = 494;\n t.a7 = 552;\n t.a8 = 537;\n t.a9 = 577;\n t.a10 = 692;\n t.a29 = 786;\n t.a30 = 788;\n t.a31 = 788;\n t.a32 = 790;\n t.a33 = 793;\n t.a34 = 794;\n t.a35 = 816;\n t.a36 = 823;\n t.a37 = 789;\n t.a38 = 841;\n t.a39 = 823;\n t.a40 = 833;\n t.a41 = 816;\n t.a42 = 831;\n t.a43 = 923;\n t.a44 = 744;\n t.a45 = 723;\n t.a46 = 749;\n t.a47 = 790;\n t.a48 = 792;\n t.a49 = 695;\n t.a50 = 776;\n t.a51 = 768;\n t.a52 = 792;\n t.a53 = 759;\n t.a54 = 707;\n t.a55 = 708;\n t.a56 = 682;\n t.a57 = 701;\n t.a58 = 826;\n t.a59 = 815;\n t.a60 = 789;\n t.a61 = 789;\n t.a62 = 707;\n t.a63 = 687;\n t.a64 = 696;\n t.a65 = 689;\n t.a66 = 786;\n t.a67 = 787;\n t.a68 = 713;\n t.a69 = 791;\n t.a70 = 785;\n t.a71 = 791;\n t.a72 = 873;\n t.a73 = 761;\n t.a74 = 762;\n t.a203 = 762;\n t.a75 = 759;\n t.a204 = 759;\n t.a76 = 892;\n t.a77 = 892;\n t.a78 = 788;\n t.a79 = 784;\n t.a81 = 438;\n t.a82 = 138;\n t.a83 = 277;\n t.a84 = 415;\n t.a97 = 392;\n t.a98 = 392;\n t.a99 = 668;\n t.a100 = 668;\n t.a89 = 390;\n t.a90 = 390;\n t.a93 = 317;\n t.a94 = 317;\n t.a91 = 276;\n t.a92 = 276;\n t.a205 = 509;\n t.a85 = 509;\n t.a206 = 410;\n t.a86 = 410;\n t.a87 = 234;\n t.a88 = 234;\n t.a95 = 334;\n t.a96 = 334;\n t.a101 = 732;\n t.a102 = 544;\n t.a103 = 544;\n t.a104 = 910;\n t.a106 = 667;\n t.a107 = 760;\n t.a108 = 760;\n t.a112 = 776;\n t.a111 = 595;\n t.a110 = 694;\n t.a109 = 626;\n t.a120 = 788;\n t.a121 = 788;\n t.a122 = 788;\n t.a123 = 788;\n t.a124 = 788;\n t.a125 = 788;\n t.a126 = 788;\n t.a127 = 788;\n t.a128 = 788;\n t.a129 = 788;\n t.a130 = 788;\n t.a131 = 788;\n t.a132 = 788;\n t.a133 = 788;\n t.a134 = 788;\n t.a135 = 788;\n t.a136 = 788;\n t.a137 = 788;\n t.a138 = 788;\n t.a139 = 788;\n t.a140 = 788;\n t.a141 = 788;\n t.a142 = 788;\n t.a143 = 788;\n t.a144 = 788;\n t.a145 = 788;\n t.a146 = 788;\n t.a147 = 788;\n t.a148 = 788;\n t.a149 = 788;\n t.a150 = 788;\n t.a151 = 788;\n t.a152 = 788;\n t.a153 = 788;\n t.a154 = 788;\n t.a155 = 788;\n t.a156 = 788;\n t.a157 = 788;\n t.a158 = 788;\n t.a159 = 788;\n t.a160 = 894;\n t.a161 = 838;\n t.a163 = 1016;\n t.a164 = 458;\n t.a196 = 748;\n t.a165 = 924;\n t.a192 = 748;\n t.a166 = 918;\n t.a167 = 927;\n t.a168 = 928;\n t.a169 = 928;\n t.a170 = 834;\n t.a171 = 873;\n t.a172 = 828;\n t.a173 = 924;\n t.a162 = 924;\n t.a174 = 917;\n t.a175 = 930;\n t.a176 = 931;\n t.a177 = 463;\n t.a178 = 883;\n t.a179 = 836;\n t.a193 = 836;\n t.a180 = 867;\n t.a199 = 867;\n t.a181 = 696;\n t.a200 = 696;\n t.a182 = 874;\n t.a201 = 874;\n t.a183 = 760;\n t.a184 = 946;\n t.a197 = 771;\n t.a185 = 865;\n t.a194 = 771;\n t.a198 = 888;\n t.a186 = 967;\n t.a195 = 888;\n t.a187 = 831;\n t.a188 = 873;\n t.a189 = 927;\n t.a190 = 970;\n t.a191 = 918;\n });\n});\nexports.getMetrics = getMetrics;\nconst getFontBasicMetrics = (0, _core_utils.getLookupTableFactory)(function (t) {\n t.Courier = {\n ascent: 629,\n descent: -157,\n capHeight: 562,\n xHeight: -426\n };\n t[\"Courier-Bold\"] = {\n ascent: 629,\n descent: -157,\n capHeight: 562,\n xHeight: 439\n };\n t[\"Courier-Oblique\"] = {\n ascent: 629,\n descent: -157,\n capHeight: 562,\n xHeight: 426\n };\n t[\"Courier-BoldOblique\"] = {\n ascent: 629,\n descent: -157,\n capHeight: 562,\n xHeight: 426\n };\n t.Helvetica = {\n ascent: 718,\n descent: -207,\n capHeight: 718,\n xHeight: 523\n };\n t[\"Helvetica-Bold\"] = {\n ascent: 718,\n descent: -207,\n capHeight: 718,\n xHeight: 532\n };\n t[\"Helvetica-Oblique\"] = {\n ascent: 718,\n descent: -207,\n capHeight: 718,\n xHeight: 523\n };\n t[\"Helvetica-BoldOblique\"] = {\n ascent: 718,\n descent: -207,\n capHeight: 718,\n xHeight: 532\n };\n t[\"Times-Roman\"] = {\n ascent: 683,\n descent: -217,\n capHeight: 662,\n xHeight: 450\n };\n t[\"Times-Bold\"] = {\n ascent: 683,\n descent: -217,\n capHeight: 676,\n xHeight: 461\n };\n t[\"Times-Italic\"] = {\n ascent: 683,\n descent: -217,\n capHeight: 653,\n xHeight: 441\n };\n t[\"Times-BoldItalic\"] = {\n ascent: 683,\n descent: -217,\n capHeight: 669,\n xHeight: 462\n };\n t.Symbol = {\n ascent: Math.NaN,\n descent: Math.NaN,\n capHeight: Math.NaN,\n xHeight: Math.NaN\n };\n t.ZapfDingbats = {\n ascent: Math.NaN,\n descent: Math.NaN,\n capHeight: Math.NaN,\n xHeight: Math.NaN\n };\n});\nexports.getFontBasicMetrics = getFontBasicMetrics;\n\n/***/ }),\n/* 46 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.GlyfTable = void 0;\nconst ON_CURVE_POINT = 1 << 0;\nconst X_SHORT_VECTOR = 1 << 1;\nconst Y_SHORT_VECTOR = 1 << 2;\nconst REPEAT_FLAG = 1 << 3;\nconst X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR = 1 << 4;\nconst Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR = 1 << 5;\nconst OVERLAP_SIMPLE = 1 << 6;\nconst ARG_1_AND_2_ARE_WORDS = 1 << 0;\nconst ARGS_ARE_XY_VALUES = 1 << 1;\nconst WE_HAVE_A_SCALE = 1 << 3;\nconst MORE_COMPONENTS = 1 << 5;\nconst WE_HAVE_AN_X_AND_Y_SCALE = 1 << 6;\nconst WE_HAVE_A_TWO_BY_TWO = 1 << 7;\nconst WE_HAVE_INSTRUCTIONS = 1 << 8;\nclass GlyfTable {\n constructor({\n glyfTable,\n isGlyphLocationsLong,\n locaTable,\n numGlyphs\n }) {\n this.glyphs = [];\n const loca = new DataView(locaTable.buffer, locaTable.byteOffset, locaTable.byteLength);\n const glyf = new DataView(glyfTable.buffer, glyfTable.byteOffset, glyfTable.byteLength);\n const offsetSize = isGlyphLocationsLong ? 4 : 2;\n let prev = isGlyphLocationsLong ? loca.getUint32(0) : 2 * loca.getUint16(0);\n let pos = 0;\n for (let i = 0; i < numGlyphs; i++) {\n pos += offsetSize;\n const next = isGlyphLocationsLong ? loca.getUint32(pos) : 2 * loca.getUint16(pos);\n if (next === prev) {\n this.glyphs.push(new Glyph({}));\n continue;\n }\n const glyph = Glyph.parse(prev, glyf);\n this.glyphs.push(glyph);\n prev = next;\n }\n }\n getSize() {\n return this.glyphs.reduce((a, g) => {\n const size = g.getSize();\n return a + (size + 3 & ~3);\n }, 0);\n }\n write() {\n const totalSize = this.getSize();\n const glyfTable = new DataView(new ArrayBuffer(totalSize));\n const isLocationLong = totalSize > 0x1fffe;\n const offsetSize = isLocationLong ? 4 : 2;\n const locaTable = new DataView(new ArrayBuffer((this.glyphs.length + 1) * offsetSize));\n if (isLocationLong) {\n locaTable.setUint32(0, 0);\n } else {\n locaTable.setUint16(0, 0);\n }\n let pos = 0;\n let locaIndex = 0;\n for (const glyph of this.glyphs) {\n pos += glyph.write(pos, glyfTable);\n pos = pos + 3 & ~3;\n locaIndex += offsetSize;\n if (isLocationLong) {\n locaTable.setUint32(locaIndex, pos);\n } else {\n locaTable.setUint16(locaIndex, pos >> 1);\n }\n }\n return {\n isLocationLong,\n loca: new Uint8Array(locaTable.buffer),\n glyf: new Uint8Array(glyfTable.buffer)\n };\n }\n scale(factors) {\n for (let i = 0, ii = this.glyphs.length; i < ii; i++) {\n this.glyphs[i].scale(factors[i]);\n }\n }\n}\nexports.GlyfTable = GlyfTable;\nclass Glyph {\n constructor({\n header = null,\n simple = null,\n composites = null\n }) {\n this.header = header;\n this.simple = simple;\n this.composites = composites;\n }\n static parse(pos, glyf) {\n const [read, header] = GlyphHeader.parse(pos, glyf);\n pos += read;\n if (header.numberOfContours < 0) {\n const composites = [];\n while (true) {\n const [n, composite] = CompositeGlyph.parse(pos, glyf);\n pos += n;\n composites.push(composite);\n if (!(composite.flags & MORE_COMPONENTS)) {\n break;\n }\n }\n return new Glyph({\n header,\n composites\n });\n }\n const simple = SimpleGlyph.parse(pos, glyf, header.numberOfContours);\n return new Glyph({\n header,\n simple\n });\n }\n getSize() {\n if (!this.header) {\n return 0;\n }\n const size = this.simple ? this.simple.getSize() : this.composites.reduce((a, c) => a + c.getSize(), 0);\n return this.header.getSize() + size;\n }\n write(pos, buf) {\n if (!this.header) {\n return 0;\n }\n const spos = pos;\n pos += this.header.write(pos, buf);\n if (this.simple) {\n pos += this.simple.write(pos, buf);\n } else {\n for (const composite of this.composites) {\n pos += composite.write(pos, buf);\n }\n }\n return pos - spos;\n }\n scale(factor) {\n if (!this.header) {\n return;\n }\n const xMiddle = (this.header.xMin + this.header.xMax) / 2;\n this.header.scale(xMiddle, factor);\n if (this.simple) {\n this.simple.scale(xMiddle, factor);\n } else {\n for (const composite of this.composites) {\n composite.scale(xMiddle, factor);\n }\n }\n }\n}\nclass GlyphHeader {\n constructor({\n numberOfContours,\n xMin,\n yMin,\n xMax,\n yMax\n }) {\n this.numberOfContours = numberOfContours;\n this.xMin = xMin;\n this.yMin = yMin;\n this.xMax = xMax;\n this.yMax = yMax;\n }\n static parse(pos, glyf) {\n return [10, new GlyphHeader({\n numberOfContours: glyf.getInt16(pos),\n xMin: glyf.getInt16(pos + 2),\n yMin: glyf.getInt16(pos + 4),\n xMax: glyf.getInt16(pos + 6),\n yMax: glyf.getInt16(pos + 8)\n })];\n }\n getSize() {\n return 10;\n }\n write(pos, buf) {\n buf.setInt16(pos, this.numberOfContours);\n buf.setInt16(pos + 2, this.xMin);\n buf.setInt16(pos + 4, this.yMin);\n buf.setInt16(pos + 6, this.xMax);\n buf.setInt16(pos + 8, this.yMax);\n return 10;\n }\n scale(x, factor) {\n this.xMin = Math.round(x + (this.xMin - x) * factor);\n this.xMax = Math.round(x + (this.xMax - x) * factor);\n }\n}\nclass Contour {\n constructor({\n flags,\n xCoordinates,\n yCoordinates\n }) {\n this.xCoordinates = xCoordinates;\n this.yCoordinates = yCoordinates;\n this.flags = flags;\n }\n}\nclass SimpleGlyph {\n constructor({\n contours,\n instructions\n }) {\n this.contours = contours;\n this.instructions = instructions;\n }\n static parse(pos, glyf, numberOfContours) {\n const endPtsOfContours = [];\n for (let i = 0; i < numberOfContours; i++) {\n const endPt = glyf.getUint16(pos);\n pos += 2;\n endPtsOfContours.push(endPt);\n }\n const numberOfPt = endPtsOfContours[numberOfContours - 1] + 1;\n const instructionLength = glyf.getUint16(pos);\n pos += 2;\n const instructions = new Uint8Array(glyf).slice(pos, pos + instructionLength);\n pos += instructionLength;\n const flags = [];\n for (let i = 0; i < numberOfPt; pos++, i++) {\n let flag = glyf.getUint8(pos);\n flags.push(flag);\n if (flag & REPEAT_FLAG) {\n const count = glyf.getUint8(++pos);\n flag ^= REPEAT_FLAG;\n for (let m = 0; m < count; m++) {\n flags.push(flag);\n }\n i += count;\n }\n }\n const allXCoordinates = [];\n let xCoordinates = [];\n let yCoordinates = [];\n let pointFlags = [];\n const contours = [];\n let endPtsOfContoursIndex = 0;\n let lastCoordinate = 0;\n for (let i = 0; i < numberOfPt; i++) {\n const flag = flags[i];\n if (flag & X_SHORT_VECTOR) {\n const x = glyf.getUint8(pos++);\n lastCoordinate += flag & X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR ? x : -x;\n xCoordinates.push(lastCoordinate);\n } else if (flag & X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR) {\n xCoordinates.push(lastCoordinate);\n } else {\n lastCoordinate += glyf.getInt16(pos);\n pos += 2;\n xCoordinates.push(lastCoordinate);\n }\n if (endPtsOfContours[endPtsOfContoursIndex] === i) {\n endPtsOfContoursIndex++;\n allXCoordinates.push(xCoordinates);\n xCoordinates = [];\n }\n }\n lastCoordinate = 0;\n endPtsOfContoursIndex = 0;\n for (let i = 0; i < numberOfPt; i++) {\n const flag = flags[i];\n if (flag & Y_SHORT_VECTOR) {\n const y = glyf.getUint8(pos++);\n lastCoordinate += flag & Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR ? y : -y;\n yCoordinates.push(lastCoordinate);\n } else if (flag & Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR) {\n yCoordinates.push(lastCoordinate);\n } else {\n lastCoordinate += glyf.getInt16(pos);\n pos += 2;\n yCoordinates.push(lastCoordinate);\n }\n pointFlags.push(flag & ON_CURVE_POINT | flag & OVERLAP_SIMPLE);\n if (endPtsOfContours[endPtsOfContoursIndex] === i) {\n xCoordinates = allXCoordinates[endPtsOfContoursIndex];\n endPtsOfContoursIndex++;\n contours.push(new Contour({\n flags: pointFlags,\n xCoordinates,\n yCoordinates\n }));\n yCoordinates = [];\n pointFlags = [];\n }\n }\n return new SimpleGlyph({\n contours,\n instructions\n });\n }\n getSize() {\n let size = this.contours.length * 2 + 2 + this.instructions.length;\n let lastX = 0;\n let lastY = 0;\n for (const contour of this.contours) {\n size += contour.flags.length;\n for (let i = 0, ii = contour.xCoordinates.length; i < ii; i++) {\n const x = contour.xCoordinates[i];\n const y = contour.yCoordinates[i];\n let abs = Math.abs(x - lastX);\n if (abs > 255) {\n size += 2;\n } else if (abs > 0) {\n size += 1;\n }\n lastX = x;\n abs = Math.abs(y - lastY);\n if (abs > 255) {\n size += 2;\n } else if (abs > 0) {\n size += 1;\n }\n lastY = y;\n }\n }\n return size;\n }\n write(pos, buf) {\n const spos = pos;\n const xCoordinates = [];\n const yCoordinates = [];\n const flags = [];\n let lastX = 0;\n let lastY = 0;\n for (const contour of this.contours) {\n for (let i = 0, ii = contour.xCoordinates.length; i < ii; i++) {\n let flag = contour.flags[i];\n const x = contour.xCoordinates[i];\n let delta = x - lastX;\n if (delta === 0) {\n flag |= X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR;\n xCoordinates.push(0);\n } else {\n const abs = Math.abs(delta);\n if (abs <= 255) {\n flag |= delta >= 0 ? X_SHORT_VECTOR | X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR : X_SHORT_VECTOR;\n xCoordinates.push(abs);\n } else {\n xCoordinates.push(delta);\n }\n }\n lastX = x;\n const y = contour.yCoordinates[i];\n delta = y - lastY;\n if (delta === 0) {\n flag |= Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR;\n yCoordinates.push(0);\n } else {\n const abs = Math.abs(delta);\n if (abs <= 255) {\n flag |= delta >= 0 ? Y_SHORT_VECTOR | Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR : Y_SHORT_VECTOR;\n yCoordinates.push(abs);\n } else {\n yCoordinates.push(delta);\n }\n }\n lastY = y;\n flags.push(flag);\n }\n buf.setUint16(pos, xCoordinates.length - 1);\n pos += 2;\n }\n buf.setUint16(pos, this.instructions.length);\n pos += 2;\n if (this.instructions.length) {\n new Uint8Array(buf.buffer, 0, buf.buffer.byteLength).set(this.instructions, pos);\n pos += this.instructions.length;\n }\n for (const flag of flags) {\n buf.setUint8(pos++, flag);\n }\n for (let i = 0, ii = xCoordinates.length; i < ii; i++) {\n const x = xCoordinates[i];\n const flag = flags[i];\n if (flag & X_SHORT_VECTOR) {\n buf.setUint8(pos++, x);\n } else if (!(flag & X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR)) {\n buf.setInt16(pos, x);\n pos += 2;\n }\n }\n for (let i = 0, ii = yCoordinates.length; i < ii; i++) {\n const y = yCoordinates[i];\n const flag = flags[i];\n if (flag & Y_SHORT_VECTOR) {\n buf.setUint8(pos++, y);\n } else if (!(flag & Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR)) {\n buf.setInt16(pos, y);\n pos += 2;\n }\n }\n return pos - spos;\n }\n scale(x, factor) {\n for (const contour of this.contours) {\n if (contour.xCoordinates.length === 0) {\n continue;\n }\n for (let i = 0, ii = contour.xCoordinates.length; i < ii; i++) {\n contour.xCoordinates[i] = Math.round(x + (contour.xCoordinates[i] - x) * factor);\n }\n }\n }\n}\nclass CompositeGlyph {\n constructor({\n flags,\n glyphIndex,\n argument1,\n argument2,\n transf,\n instructions\n }) {\n this.flags = flags;\n this.glyphIndex = glyphIndex;\n this.argument1 = argument1;\n this.argument2 = argument2;\n this.transf = transf;\n this.instructions = instructions;\n }\n static parse(pos, glyf) {\n const spos = pos;\n const transf = [];\n let flags = glyf.getUint16(pos);\n const glyphIndex = glyf.getUint16(pos + 2);\n pos += 4;\n let argument1, argument2;\n if (flags & ARG_1_AND_2_ARE_WORDS) {\n if (flags & ARGS_ARE_XY_VALUES) {\n argument1 = glyf.getInt16(pos);\n argument2 = glyf.getInt16(pos + 2);\n } else {\n argument1 = glyf.getUint16(pos);\n argument2 = glyf.getUint16(pos + 2);\n }\n pos += 4;\n flags ^= ARG_1_AND_2_ARE_WORDS;\n } else {\n if (flags & ARGS_ARE_XY_VALUES) {\n argument1 = glyf.getInt8(pos);\n argument2 = glyf.getInt8(pos + 1);\n } else {\n argument1 = glyf.getUint8(pos);\n argument2 = glyf.getUint8(pos + 1);\n }\n pos += 2;\n }\n if (flags & WE_HAVE_A_SCALE) {\n transf.push(glyf.getUint16(pos));\n pos += 2;\n } else if (flags & WE_HAVE_AN_X_AND_Y_SCALE) {\n transf.push(glyf.getUint16(pos), glyf.getUint16(pos + 2));\n pos += 4;\n } else if (flags & WE_HAVE_A_TWO_BY_TWO) {\n transf.push(glyf.getUint16(pos), glyf.getUint16(pos + 2), glyf.getUint16(pos + 4), glyf.getUint16(pos + 6));\n pos += 8;\n }\n let instructions = null;\n if (flags & WE_HAVE_INSTRUCTIONS) {\n const instructionLength = glyf.getUint16(pos);\n pos += 2;\n instructions = new Uint8Array(glyf).slice(pos, pos + instructionLength);\n pos += instructionLength;\n }\n return [pos - spos, new CompositeGlyph({\n flags,\n glyphIndex,\n argument1,\n argument2,\n transf,\n instructions\n })];\n }\n getSize() {\n let size = 2 + 2 + this.transf.length * 2;\n if (this.flags & WE_HAVE_INSTRUCTIONS) {\n size += 2 + this.instructions.length;\n }\n size += 2;\n if (this.flags & 2) {\n if (!(this.argument1 >= -128 && this.argument1 <= 127 && this.argument2 >= -128 && this.argument2 <= 127)) {\n size += 2;\n }\n } else if (!(this.argument1 >= 0 && this.argument1 <= 255 && this.argument2 >= 0 && this.argument2 <= 255)) {\n size += 2;\n }\n return size;\n }\n write(pos, buf) {\n const spos = pos;\n if (this.flags & ARGS_ARE_XY_VALUES) {\n if (!(this.argument1 >= -128 && this.argument1 <= 127 && this.argument2 >= -128 && this.argument2 <= 127)) {\n this.flags |= ARG_1_AND_2_ARE_WORDS;\n }\n } else if (!(this.argument1 >= 0 && this.argument1 <= 255 && this.argument2 >= 0 && this.argument2 <= 255)) {\n this.flags |= ARG_1_AND_2_ARE_WORDS;\n }\n buf.setUint16(pos, this.flags);\n buf.setUint16(pos + 2, this.glyphIndex);\n pos += 4;\n if (this.flags & ARG_1_AND_2_ARE_WORDS) {\n if (this.flags & ARGS_ARE_XY_VALUES) {\n buf.setInt16(pos, this.argument1);\n buf.setInt16(pos + 2, this.argument2);\n } else {\n buf.setUint16(pos, this.argument1);\n buf.setUint16(pos + 2, this.argument2);\n }\n pos += 4;\n } else {\n buf.setUint8(pos, this.argument1);\n buf.setUint8(pos + 1, this.argument2);\n pos += 2;\n }\n if (this.flags & WE_HAVE_INSTRUCTIONS) {\n buf.setUint16(pos, this.instructions.length);\n pos += 2;\n if (this.instructions.length) {\n new Uint8Array(buf.buffer, 0, buf.buffer.byteLength).set(this.instructions, pos);\n pos += this.instructions.length;\n }\n }\n return pos - spos;\n }\n scale(x, factor) {}\n}\n\n/***/ }),\n/* 47 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.OpenTypeFileBuilder = void 0;\nvar _core_utils = __w_pdfjs_require__(3);\nvar _util = __w_pdfjs_require__(2);\nfunction writeInt16(dest, offset, num) {\n dest[offset] = num >> 8 & 0xff;\n dest[offset + 1] = num & 0xff;\n}\nfunction writeInt32(dest, offset, num) {\n dest[offset] = num >> 24 & 0xff;\n dest[offset + 1] = num >> 16 & 0xff;\n dest[offset + 2] = num >> 8 & 0xff;\n dest[offset + 3] = num & 0xff;\n}\nfunction writeData(dest, offset, data) {\n if (data instanceof Uint8Array) {\n dest.set(data, offset);\n } else if (typeof data === \"string\") {\n for (let i = 0, ii = data.length; i < ii; i++) {\n dest[offset++] = data.charCodeAt(i) & 0xff;\n }\n } else {\n for (const num of data) {\n dest[offset++] = num & 0xff;\n }\n }\n}\nconst OTF_HEADER_SIZE = 12;\nconst OTF_TABLE_ENTRY_SIZE = 16;\nclass OpenTypeFileBuilder {\n constructor(sfnt) {\n this.sfnt = sfnt;\n this.tables = Object.create(null);\n }\n static getSearchParams(entriesCount, entrySize) {\n let maxPower2 = 1,\n log2 = 0;\n while ((maxPower2 ^ entriesCount) > maxPower2) {\n maxPower2 <<= 1;\n log2++;\n }\n const searchRange = maxPower2 * entrySize;\n return {\n range: searchRange,\n entry: log2,\n rangeShift: entrySize * entriesCount - searchRange\n };\n }\n toArray() {\n let sfnt = this.sfnt;\n const tables = this.tables;\n const tablesNames = Object.keys(tables);\n tablesNames.sort();\n const numTables = tablesNames.length;\n let i, j, jj, table, tableName;\n let offset = OTF_HEADER_SIZE + numTables * OTF_TABLE_ENTRY_SIZE;\n const tableOffsets = [offset];\n for (i = 0; i < numTables; i++) {\n table = tables[tablesNames[i]];\n const paddedLength = (table.length + 3 & ~3) >>> 0;\n offset += paddedLength;\n tableOffsets.push(offset);\n }\n const file = new Uint8Array(offset);\n for (i = 0; i < numTables; i++) {\n table = tables[tablesNames[i]];\n writeData(file, tableOffsets[i], table);\n }\n if (sfnt === \"true\") {\n sfnt = (0, _util.string32)(0x00010000);\n }\n file[0] = sfnt.charCodeAt(0) & 0xff;\n file[1] = sfnt.charCodeAt(1) & 0xff;\n file[2] = sfnt.charCodeAt(2) & 0xff;\n file[3] = sfnt.charCodeAt(3) & 0xff;\n writeInt16(file, 4, numTables);\n const searchParams = OpenTypeFileBuilder.getSearchParams(numTables, 16);\n writeInt16(file, 6, searchParams.range);\n writeInt16(file, 8, searchParams.entry);\n writeInt16(file, 10, searchParams.rangeShift);\n offset = OTF_HEADER_SIZE;\n for (i = 0; i < numTables; i++) {\n tableName = tablesNames[i];\n file[offset] = tableName.charCodeAt(0) & 0xff;\n file[offset + 1] = tableName.charCodeAt(1) & 0xff;\n file[offset + 2] = tableName.charCodeAt(2) & 0xff;\n file[offset + 3] = tableName.charCodeAt(3) & 0xff;\n let checksum = 0;\n for (j = tableOffsets[i], jj = tableOffsets[i + 1]; j < jj; j += 4) {\n const quad = (0, _core_utils.readUint32)(file, j);\n checksum = checksum + quad >>> 0;\n }\n writeInt32(file, offset + 4, checksum);\n writeInt32(file, offset + 8, tableOffsets[i]);\n writeInt32(file, offset + 12, tables[tableName].length);\n offset += OTF_TABLE_ENTRY_SIZE;\n }\n return file;\n }\n addTable(tag, data) {\n if (tag in this.tables) {\n throw new Error(\"Table \" + tag + \" already exists\");\n }\n this.tables[tag] = data;\n }\n}\nexports.OpenTypeFileBuilder = OpenTypeFileBuilder;\n\n/***/ }),\n/* 48 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Type1Font = void 0;\nvar _cff_parser = __w_pdfjs_require__(35);\nvar _util = __w_pdfjs_require__(2);\nvar _fonts_utils = __w_pdfjs_require__(38);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _stream = __w_pdfjs_require__(8);\nvar _type1_parser = __w_pdfjs_require__(49);\nfunction findBlock(streamBytes, signature, startIndex) {\n const streamBytesLength = streamBytes.length;\n const signatureLength = signature.length;\n const scanLength = streamBytesLength - signatureLength;\n let i = startIndex,\n found = false;\n while (i < scanLength) {\n let j = 0;\n while (j < signatureLength && streamBytes[i + j] === signature[j]) {\n j++;\n }\n if (j >= signatureLength) {\n i += j;\n while (i < streamBytesLength && (0, _core_utils.isWhiteSpace)(streamBytes[i])) {\n i++;\n }\n found = true;\n break;\n }\n i++;\n }\n return {\n found,\n length: i\n };\n}\nfunction getHeaderBlock(stream, suggestedLength) {\n const EEXEC_SIGNATURE = [0x65, 0x65, 0x78, 0x65, 0x63];\n const streamStartPos = stream.pos;\n let headerBytes, headerBytesLength, block;\n try {\n headerBytes = stream.getBytes(suggestedLength);\n headerBytesLength = headerBytes.length;\n } catch {}\n if (headerBytesLength === suggestedLength) {\n block = findBlock(headerBytes, EEXEC_SIGNATURE, suggestedLength - 2 * EEXEC_SIGNATURE.length);\n if (block.found && block.length === suggestedLength) {\n return {\n stream: new _stream.Stream(headerBytes),\n length: suggestedLength\n };\n }\n }\n (0, _util.warn)('Invalid \"Length1\" property in Type1 font -- trying to recover.');\n stream.pos = streamStartPos;\n const SCAN_BLOCK_LENGTH = 2048;\n let actualLength;\n while (true) {\n const scanBytes = stream.peekBytes(SCAN_BLOCK_LENGTH);\n block = findBlock(scanBytes, EEXEC_SIGNATURE, 0);\n if (block.length === 0) {\n break;\n }\n stream.pos += block.length;\n if (block.found) {\n actualLength = stream.pos - streamStartPos;\n break;\n }\n }\n stream.pos = streamStartPos;\n if (actualLength) {\n return {\n stream: new _stream.Stream(stream.getBytes(actualLength)),\n length: actualLength\n };\n }\n (0, _util.warn)('Unable to recover \"Length1\" property in Type1 font -- using as is.');\n return {\n stream: new _stream.Stream(stream.getBytes(suggestedLength)),\n length: suggestedLength\n };\n}\nfunction getEexecBlock(stream, suggestedLength) {\n const eexecBytes = stream.getBytes();\n if (eexecBytes.length === 0) {\n throw new _util.FormatError(\"getEexecBlock - no font program found.\");\n }\n return {\n stream: new _stream.Stream(eexecBytes),\n length: eexecBytes.length\n };\n}\nclass Type1Font {\n constructor(name, file, properties) {\n const PFB_HEADER_SIZE = 6;\n let headerBlockLength = properties.length1;\n let eexecBlockLength = properties.length2;\n let pfbHeader = file.peekBytes(PFB_HEADER_SIZE);\n const pfbHeaderPresent = pfbHeader[0] === 0x80 && pfbHeader[1] === 0x01;\n if (pfbHeaderPresent) {\n file.skip(PFB_HEADER_SIZE);\n headerBlockLength = pfbHeader[5] << 24 | pfbHeader[4] << 16 | pfbHeader[3] << 8 | pfbHeader[2];\n }\n const headerBlock = getHeaderBlock(file, headerBlockLength);\n const headerBlockParser = new _type1_parser.Type1Parser(headerBlock.stream, false, _fonts_utils.SEAC_ANALYSIS_ENABLED);\n headerBlockParser.extractFontHeader(properties);\n if (pfbHeaderPresent) {\n pfbHeader = file.getBytes(PFB_HEADER_SIZE);\n eexecBlockLength = pfbHeader[5] << 24 | pfbHeader[4] << 16 | pfbHeader[3] << 8 | pfbHeader[2];\n }\n const eexecBlock = getEexecBlock(file, eexecBlockLength);\n const eexecBlockParser = new _type1_parser.Type1Parser(eexecBlock.stream, true, _fonts_utils.SEAC_ANALYSIS_ENABLED);\n const data = eexecBlockParser.extractFontProgram(properties);\n for (const key in data.properties) {\n properties[key] = data.properties[key];\n }\n const charstrings = data.charstrings;\n const type2Charstrings = this.getType2Charstrings(charstrings);\n const subrs = this.getType2Subrs(data.subrs);\n this.charstrings = charstrings;\n this.data = this.wrap(name, type2Charstrings, this.charstrings, subrs, properties);\n this.seacs = this.getSeacs(data.charstrings);\n }\n get numGlyphs() {\n return this.charstrings.length + 1;\n }\n getCharset() {\n const charset = [\".notdef\"];\n for (const {\n glyphName\n } of this.charstrings) {\n charset.push(glyphName);\n }\n return charset;\n }\n getGlyphMapping(properties) {\n const charstrings = this.charstrings;\n if (properties.composite) {\n const charCodeToGlyphId = Object.create(null);\n for (let glyphId = 0, charstringsLen = charstrings.length; glyphId < charstringsLen; glyphId++) {\n const charCode = properties.cMap.charCodeOf(glyphId);\n charCodeToGlyphId[charCode] = glyphId + 1;\n }\n return charCodeToGlyphId;\n }\n const glyphNames = [\".notdef\"];\n let builtInEncoding, glyphId;\n for (glyphId = 0; glyphId < charstrings.length; glyphId++) {\n glyphNames.push(charstrings[glyphId].glyphName);\n }\n const encoding = properties.builtInEncoding;\n if (encoding) {\n builtInEncoding = Object.create(null);\n for (const charCode in encoding) {\n glyphId = glyphNames.indexOf(encoding[charCode]);\n if (glyphId >= 0) {\n builtInEncoding[charCode] = glyphId;\n }\n }\n }\n return (0, _fonts_utils.type1FontGlyphMapping)(properties, builtInEncoding, glyphNames);\n }\n hasGlyphId(id) {\n if (id < 0 || id >= this.numGlyphs) {\n return false;\n }\n if (id === 0) {\n return true;\n }\n const glyph = this.charstrings[id - 1];\n return glyph.charstring.length > 0;\n }\n getSeacs(charstrings) {\n const seacMap = [];\n for (let i = 0, ii = charstrings.length; i < ii; i++) {\n const charstring = charstrings[i];\n if (charstring.seac) {\n seacMap[i + 1] = charstring.seac;\n }\n }\n return seacMap;\n }\n getType2Charstrings(type1Charstrings) {\n const type2Charstrings = [];\n for (const type1Charstring of type1Charstrings) {\n type2Charstrings.push(type1Charstring.charstring);\n }\n return type2Charstrings;\n }\n getType2Subrs(type1Subrs) {\n let bias = 0;\n const count = type1Subrs.length;\n if (count < 1133) {\n bias = 107;\n } else if (count < 33769) {\n bias = 1131;\n } else {\n bias = 32768;\n }\n const type2Subrs = [];\n let i;\n for (i = 0; i < bias; i++) {\n type2Subrs.push([0x0b]);\n }\n for (i = 0; i < count; i++) {\n type2Subrs.push(type1Subrs[i]);\n }\n return type2Subrs;\n }\n wrap(name, glyphs, charstrings, subrs, properties) {\n const cff = new _cff_parser.CFF();\n cff.header = new _cff_parser.CFFHeader(1, 0, 4, 4);\n cff.names = [name];\n const topDict = new _cff_parser.CFFTopDict();\n topDict.setByName(\"version\", 391);\n topDict.setByName(\"Notice\", 392);\n topDict.setByName(\"FullName\", 393);\n topDict.setByName(\"FamilyName\", 394);\n topDict.setByName(\"Weight\", 395);\n topDict.setByName(\"Encoding\", null);\n topDict.setByName(\"FontMatrix\", properties.fontMatrix);\n topDict.setByName(\"FontBBox\", properties.bbox);\n topDict.setByName(\"charset\", null);\n topDict.setByName(\"CharStrings\", null);\n topDict.setByName(\"Private\", null);\n cff.topDict = topDict;\n const strings = new _cff_parser.CFFStrings();\n strings.add(\"Version 0.11\");\n strings.add(\"See original notice\");\n strings.add(name);\n strings.add(name);\n strings.add(\"Medium\");\n cff.strings = strings;\n cff.globalSubrIndex = new _cff_parser.CFFIndex();\n const count = glyphs.length;\n const charsetArray = [\".notdef\"];\n let i, ii;\n for (i = 0; i < count; i++) {\n const glyphName = charstrings[i].glyphName;\n const index = _cff_parser.CFFStandardStrings.indexOf(glyphName);\n if (index === -1) {\n strings.add(glyphName);\n }\n charsetArray.push(glyphName);\n }\n cff.charset = new _cff_parser.CFFCharset(false, 0, charsetArray);\n const charStringsIndex = new _cff_parser.CFFIndex();\n charStringsIndex.add([0x8b, 0x0e]);\n for (i = 0; i < count; i++) {\n charStringsIndex.add(glyphs[i]);\n }\n cff.charStrings = charStringsIndex;\n const privateDict = new _cff_parser.CFFPrivateDict();\n privateDict.setByName(\"Subrs\", null);\n const fields = [\"BlueValues\", \"OtherBlues\", \"FamilyBlues\", \"FamilyOtherBlues\", \"StemSnapH\", \"StemSnapV\", \"BlueShift\", \"BlueFuzz\", \"BlueScale\", \"LanguageGroup\", \"ExpansionFactor\", \"ForceBold\", \"StdHW\", \"StdVW\"];\n for (i = 0, ii = fields.length; i < ii; i++) {\n const field = fields[i];\n if (!(field in properties.privateData)) {\n continue;\n }\n const value = properties.privateData[field];\n if (Array.isArray(value)) {\n for (let j = value.length - 1; j > 0; j--) {\n value[j] -= value[j - 1];\n }\n }\n privateDict.setByName(field, value);\n }\n cff.topDict.privateDict = privateDict;\n const subrIndex = new _cff_parser.CFFIndex();\n for (i = 0, ii = subrs.length; i < ii; i++) {\n subrIndex.add(subrs[i]);\n }\n privateDict.subrsIndex = subrIndex;\n const compiler = new _cff_parser.CFFCompiler(cff);\n return compiler.compile();\n }\n}\nexports.Type1Font = Type1Font;\n\n/***/ }),\n/* 49 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Type1Parser = void 0;\nvar _encodings = __w_pdfjs_require__(37);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _stream = __w_pdfjs_require__(8);\nvar _util = __w_pdfjs_require__(2);\nconst HINTING_ENABLED = false;\nconst COMMAND_MAP = {\n hstem: [1],\n vstem: [3],\n vmoveto: [4],\n rlineto: [5],\n hlineto: [6],\n vlineto: [7],\n rrcurveto: [8],\n callsubr: [10],\n flex: [12, 35],\n drop: [12, 18],\n endchar: [14],\n rmoveto: [21],\n hmoveto: [22],\n vhcurveto: [30],\n hvcurveto: [31]\n};\nclass Type1CharString {\n constructor() {\n this.width = 0;\n this.lsb = 0;\n this.flexing = false;\n this.output = [];\n this.stack = [];\n }\n convert(encoded, subrs, seacAnalysisEnabled) {\n const count = encoded.length;\n let error = false;\n let wx, sbx, subrNumber;\n for (let i = 0; i < count; i++) {\n let value = encoded[i];\n if (value < 32) {\n if (value === 12) {\n value = (value << 8) + encoded[++i];\n }\n switch (value) {\n case 1:\n if (!HINTING_ENABLED) {\n this.stack = [];\n break;\n }\n error = this.executeCommand(2, COMMAND_MAP.hstem);\n break;\n case 3:\n if (!HINTING_ENABLED) {\n this.stack = [];\n break;\n }\n error = this.executeCommand(2, COMMAND_MAP.vstem);\n break;\n case 4:\n if (this.flexing) {\n if (this.stack.length < 1) {\n error = true;\n break;\n }\n const dy = this.stack.pop();\n this.stack.push(0, dy);\n break;\n }\n error = this.executeCommand(1, COMMAND_MAP.vmoveto);\n break;\n case 5:\n error = this.executeCommand(2, COMMAND_MAP.rlineto);\n break;\n case 6:\n error = this.executeCommand(1, COMMAND_MAP.hlineto);\n break;\n case 7:\n error = this.executeCommand(1, COMMAND_MAP.vlineto);\n break;\n case 8:\n error = this.executeCommand(6, COMMAND_MAP.rrcurveto);\n break;\n case 9:\n this.stack = [];\n break;\n case 10:\n if (this.stack.length < 1) {\n error = true;\n break;\n }\n subrNumber = this.stack.pop();\n if (!subrs[subrNumber]) {\n error = true;\n break;\n }\n error = this.convert(subrs[subrNumber], subrs, seacAnalysisEnabled);\n break;\n case 11:\n return error;\n case 13:\n if (this.stack.length < 2) {\n error = true;\n break;\n }\n wx = this.stack.pop();\n sbx = this.stack.pop();\n this.lsb = sbx;\n this.width = wx;\n this.stack.push(wx, sbx);\n error = this.executeCommand(2, COMMAND_MAP.hmoveto);\n break;\n case 14:\n this.output.push(COMMAND_MAP.endchar[0]);\n break;\n case 21:\n if (this.flexing) {\n break;\n }\n error = this.executeCommand(2, COMMAND_MAP.rmoveto);\n break;\n case 22:\n if (this.flexing) {\n this.stack.push(0);\n break;\n }\n error = this.executeCommand(1, COMMAND_MAP.hmoveto);\n break;\n case 30:\n error = this.executeCommand(4, COMMAND_MAP.vhcurveto);\n break;\n case 31:\n error = this.executeCommand(4, COMMAND_MAP.hvcurveto);\n break;\n case (12 << 8) + 0:\n this.stack = [];\n break;\n case (12 << 8) + 1:\n if (!HINTING_ENABLED) {\n this.stack = [];\n break;\n }\n error = this.executeCommand(2, COMMAND_MAP.vstem);\n break;\n case (12 << 8) + 2:\n if (!HINTING_ENABLED) {\n this.stack = [];\n break;\n }\n error = this.executeCommand(2, COMMAND_MAP.hstem);\n break;\n case (12 << 8) + 6:\n if (seacAnalysisEnabled) {\n const asb = this.stack.at(-5);\n this.seac = this.stack.splice(-4, 4);\n this.seac[0] += this.lsb - asb;\n error = this.executeCommand(0, COMMAND_MAP.endchar);\n } else {\n error = this.executeCommand(4, COMMAND_MAP.endchar);\n }\n break;\n case (12 << 8) + 7:\n if (this.stack.length < 4) {\n error = true;\n break;\n }\n this.stack.pop();\n wx = this.stack.pop();\n const sby = this.stack.pop();\n sbx = this.stack.pop();\n this.lsb = sbx;\n this.width = wx;\n this.stack.push(wx, sbx, sby);\n error = this.executeCommand(3, COMMAND_MAP.rmoveto);\n break;\n case (12 << 8) + 12:\n if (this.stack.length < 2) {\n error = true;\n break;\n }\n const num2 = this.stack.pop();\n const num1 = this.stack.pop();\n this.stack.push(num1 / num2);\n break;\n case (12 << 8) + 16:\n if (this.stack.length < 2) {\n error = true;\n break;\n }\n subrNumber = this.stack.pop();\n const numArgs = this.stack.pop();\n if (subrNumber === 0 && numArgs === 3) {\n const flexArgs = this.stack.splice(-17, 17);\n this.stack.push(flexArgs[2] + flexArgs[0], flexArgs[3] + flexArgs[1], flexArgs[4], flexArgs[5], flexArgs[6], flexArgs[7], flexArgs[8], flexArgs[9], flexArgs[10], flexArgs[11], flexArgs[12], flexArgs[13], flexArgs[14]);\n error = this.executeCommand(13, COMMAND_MAP.flex, true);\n this.flexing = false;\n this.stack.push(flexArgs[15], flexArgs[16]);\n } else if (subrNumber === 1 && numArgs === 0) {\n this.flexing = true;\n }\n break;\n case (12 << 8) + 17:\n break;\n case (12 << 8) + 33:\n this.stack = [];\n break;\n default:\n (0, _util.warn)('Unknown type 1 charstring command of \"' + value + '\"');\n break;\n }\n if (error) {\n break;\n }\n continue;\n } else if (value <= 246) {\n value -= 139;\n } else if (value <= 250) {\n value = (value - 247) * 256 + encoded[++i] + 108;\n } else if (value <= 254) {\n value = -((value - 251) * 256) - encoded[++i] - 108;\n } else {\n value = (encoded[++i] & 0xff) << 24 | (encoded[++i] & 0xff) << 16 | (encoded[++i] & 0xff) << 8 | (encoded[++i] & 0xff) << 0;\n }\n this.stack.push(value);\n }\n return error;\n }\n executeCommand(howManyArgs, command, keepStack) {\n const stackLength = this.stack.length;\n if (howManyArgs > stackLength) {\n return true;\n }\n const start = stackLength - howManyArgs;\n for (let i = start; i < stackLength; i++) {\n let value = this.stack[i];\n if (Number.isInteger(value)) {\n this.output.push(28, value >> 8 & 0xff, value & 0xff);\n } else {\n value = 65536 * value | 0;\n this.output.push(255, value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);\n }\n }\n this.output.push(...command);\n if (keepStack) {\n this.stack.splice(start, howManyArgs);\n } else {\n this.stack.length = 0;\n }\n return false;\n }\n}\nconst EEXEC_ENCRYPT_KEY = 55665;\nconst CHAR_STRS_ENCRYPT_KEY = 4330;\nfunction isHexDigit(code) {\n return code >= 48 && code <= 57 || code >= 65 && code <= 70 || code >= 97 && code <= 102;\n}\nfunction decrypt(data, key, discardNumber) {\n if (discardNumber >= data.length) {\n return new Uint8Array(0);\n }\n const c1 = 52845,\n c2 = 22719;\n let r = key | 0,\n i,\n j;\n for (i = 0; i < discardNumber; i++) {\n r = (data[i] + r) * c1 + c2 & (1 << 16) - 1;\n }\n const count = data.length - discardNumber;\n const decrypted = new Uint8Array(count);\n for (i = discardNumber, j = 0; j < count; i++, j++) {\n const value = data[i];\n decrypted[j] = value ^ r >> 8;\n r = (value + r) * c1 + c2 & (1 << 16) - 1;\n }\n return decrypted;\n}\nfunction decryptAscii(data, key, discardNumber) {\n const c1 = 52845,\n c2 = 22719;\n let r = key | 0;\n const count = data.length,\n maybeLength = count >>> 1;\n const decrypted = new Uint8Array(maybeLength);\n let i, j;\n for (i = 0, j = 0; i < count; i++) {\n const digit1 = data[i];\n if (!isHexDigit(digit1)) {\n continue;\n }\n i++;\n let digit2;\n while (i < count && !isHexDigit(digit2 = data[i])) {\n i++;\n }\n if (i < count) {\n const value = parseInt(String.fromCharCode(digit1, digit2), 16);\n decrypted[j++] = value ^ r >> 8;\n r = (value + r) * c1 + c2 & (1 << 16) - 1;\n }\n }\n return decrypted.slice(discardNumber, j);\n}\nfunction isSpecial(c) {\n return c === 0x2f || c === 0x5b || c === 0x5d || c === 0x7b || c === 0x7d || c === 0x28 || c === 0x29;\n}\nclass Type1Parser {\n constructor(stream, encrypted, seacAnalysisEnabled) {\n if (encrypted) {\n const data = stream.getBytes();\n const isBinary = !((isHexDigit(data[0]) || (0, _core_utils.isWhiteSpace)(data[0])) && isHexDigit(data[1]) && isHexDigit(data[2]) && isHexDigit(data[3]) && isHexDigit(data[4]) && isHexDigit(data[5]) && isHexDigit(data[6]) && isHexDigit(data[7]));\n stream = new _stream.Stream(isBinary ? decrypt(data, EEXEC_ENCRYPT_KEY, 4) : decryptAscii(data, EEXEC_ENCRYPT_KEY, 4));\n }\n this.seacAnalysisEnabled = !!seacAnalysisEnabled;\n this.stream = stream;\n this.nextChar();\n }\n readNumberArray() {\n this.getToken();\n const array = [];\n while (true) {\n const token = this.getToken();\n if (token === null || token === \"]\" || token === \"}\") {\n break;\n }\n array.push(parseFloat(token || 0));\n }\n return array;\n }\n readNumber() {\n const token = this.getToken();\n return parseFloat(token || 0);\n }\n readInt() {\n const token = this.getToken();\n return parseInt(token || 0, 10) | 0;\n }\n readBoolean() {\n const token = this.getToken();\n return token === \"true\" ? 1 : 0;\n }\n nextChar() {\n return this.currentChar = this.stream.getByte();\n }\n prevChar() {\n this.stream.skip(-2);\n return this.currentChar = this.stream.getByte();\n }\n getToken() {\n let comment = false;\n let ch = this.currentChar;\n while (true) {\n if (ch === -1) {\n return null;\n }\n if (comment) {\n if (ch === 0x0a || ch === 0x0d) {\n comment = false;\n }\n } else if (ch === 0x25) {\n comment = true;\n } else if (!(0, _core_utils.isWhiteSpace)(ch)) {\n break;\n }\n ch = this.nextChar();\n }\n if (isSpecial(ch)) {\n this.nextChar();\n return String.fromCharCode(ch);\n }\n let token = \"\";\n do {\n token += String.fromCharCode(ch);\n ch = this.nextChar();\n } while (ch >= 0 && !(0, _core_utils.isWhiteSpace)(ch) && !isSpecial(ch));\n return token;\n }\n readCharStrings(bytes, lenIV) {\n if (lenIV === -1) {\n return bytes;\n }\n return decrypt(bytes, CHAR_STRS_ENCRYPT_KEY, lenIV);\n }\n extractFontProgram(properties) {\n const stream = this.stream;\n const subrs = [],\n charstrings = [];\n const privateData = Object.create(null);\n privateData.lenIV = 4;\n const program = {\n subrs: [],\n charstrings: [],\n properties: {\n privateData\n }\n };\n let token, length, data, lenIV;\n while ((token = this.getToken()) !== null) {\n if (token !== \"/\") {\n continue;\n }\n token = this.getToken();\n switch (token) {\n case \"CharStrings\":\n this.getToken();\n this.getToken();\n this.getToken();\n this.getToken();\n while (true) {\n token = this.getToken();\n if (token === null || token === \"end\") {\n break;\n }\n if (token !== \"/\") {\n continue;\n }\n const glyph = this.getToken();\n length = this.readInt();\n this.getToken();\n data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);\n lenIV = program.properties.privateData.lenIV;\n const encoded = this.readCharStrings(data, lenIV);\n this.nextChar();\n token = this.getToken();\n if (token === \"noaccess\") {\n this.getToken();\n } else if (token === \"/\") {\n this.prevChar();\n }\n charstrings.push({\n glyph,\n encoded\n });\n }\n break;\n case \"Subrs\":\n this.readInt();\n this.getToken();\n while (this.getToken() === \"dup\") {\n const index = this.readInt();\n length = this.readInt();\n this.getToken();\n data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);\n lenIV = program.properties.privateData.lenIV;\n const encoded = this.readCharStrings(data, lenIV);\n this.nextChar();\n token = this.getToken();\n if (token === \"noaccess\") {\n this.getToken();\n }\n subrs[index] = encoded;\n }\n break;\n case \"BlueValues\":\n case \"OtherBlues\":\n case \"FamilyBlues\":\n case \"FamilyOtherBlues\":\n const blueArray = this.readNumberArray();\n if (blueArray.length > 0 && blueArray.length % 2 === 0 && HINTING_ENABLED) {\n program.properties.privateData[token] = blueArray;\n }\n break;\n case \"StemSnapH\":\n case \"StemSnapV\":\n program.properties.privateData[token] = this.readNumberArray();\n break;\n case \"StdHW\":\n case \"StdVW\":\n program.properties.privateData[token] = this.readNumberArray()[0];\n break;\n case \"BlueShift\":\n case \"lenIV\":\n case \"BlueFuzz\":\n case \"BlueScale\":\n case \"LanguageGroup\":\n program.properties.privateData[token] = this.readNumber();\n break;\n case \"ExpansionFactor\":\n program.properties.privateData[token] = this.readNumber() || 0.06;\n break;\n case \"ForceBold\":\n program.properties.privateData[token] = this.readBoolean();\n break;\n }\n }\n for (const {\n encoded,\n glyph\n } of charstrings) {\n const charString = new Type1CharString();\n const error = charString.convert(encoded, subrs, this.seacAnalysisEnabled);\n let output = charString.output;\n if (error) {\n output = [14];\n }\n const charStringObject = {\n glyphName: glyph,\n charstring: output,\n width: charString.width,\n lsb: charString.lsb,\n seac: charString.seac\n };\n if (glyph === \".notdef\") {\n program.charstrings.unshift(charStringObject);\n } else {\n program.charstrings.push(charStringObject);\n }\n if (properties.builtInEncoding) {\n const index = properties.builtInEncoding.indexOf(glyph);\n if (index > -1 && properties.widths[index] === undefined && index >= properties.firstChar && index <= properties.lastChar) {\n properties.widths[index] = charString.width;\n }\n }\n }\n return program;\n }\n extractFontHeader(properties) {\n let token;\n while ((token = this.getToken()) !== null) {\n if (token !== \"/\") {\n continue;\n }\n token = this.getToken();\n switch (token) {\n case \"FontMatrix\":\n const matrix = this.readNumberArray();\n properties.fontMatrix = matrix;\n break;\n case \"Encoding\":\n const encodingArg = this.getToken();\n let encoding;\n if (!/^\\d+$/.test(encodingArg)) {\n encoding = (0, _encodings.getEncoding)(encodingArg);\n } else {\n encoding = [];\n const size = parseInt(encodingArg, 10) | 0;\n this.getToken();\n for (let j = 0; j < size; j++) {\n token = this.getToken();\n while (token !== \"dup\" && token !== \"def\") {\n token = this.getToken();\n if (token === null) {\n return;\n }\n }\n if (token === \"def\") {\n break;\n }\n const index = this.readInt();\n this.getToken();\n const glyph = this.getToken();\n encoding[index] = glyph;\n this.getToken();\n }\n }\n properties.builtInEncoding = encoding;\n break;\n case \"FontBBox\":\n const fontBBox = this.readNumberArray();\n properties.ascent = Math.max(fontBBox[3], fontBBox[1]);\n properties.descent = Math.min(fontBBox[1], fontBBox[3]);\n properties.ascentScaled = true;\n break;\n }\n }\n }\n}\nexports.Type1Parser = Type1Parser;\n\n/***/ }),\n/* 50 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Pattern = void 0;\nexports.clearPatternCaches = clearPatternCaches;\nexports.getTilingPatternIR = getTilingPatternIR;\nvar _util = __w_pdfjs_require__(2);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _colorspace = __w_pdfjs_require__(12);\nvar _core_utils = __w_pdfjs_require__(3);\nconst ShadingType = {\n FUNCTION_BASED: 1,\n AXIAL: 2,\n RADIAL: 3,\n FREE_FORM_MESH: 4,\n LATTICE_FORM_MESH: 5,\n COONS_PATCH_MESH: 6,\n TENSOR_PATCH_MESH: 7\n};\nclass Pattern {\n constructor() {\n (0, _util.unreachable)(\"Cannot initialize Pattern.\");\n }\n static parseShading(shading, xref, res, pdfFunctionFactory, localColorSpaceCache) {\n const dict = shading instanceof _base_stream.BaseStream ? shading.dict : shading;\n const type = dict.get(\"ShadingType\");\n try {\n switch (type) {\n case ShadingType.AXIAL:\n case ShadingType.RADIAL:\n return new RadialAxialShading(dict, xref, res, pdfFunctionFactory, localColorSpaceCache);\n case ShadingType.FREE_FORM_MESH:\n case ShadingType.LATTICE_FORM_MESH:\n case ShadingType.COONS_PATCH_MESH:\n case ShadingType.TENSOR_PATCH_MESH:\n return new MeshShading(shading, xref, res, pdfFunctionFactory, localColorSpaceCache);\n default:\n throw new _util.FormatError(\"Unsupported ShadingType: \" + type);\n }\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(ex);\n return new DummyShading();\n }\n }\n}\nexports.Pattern = Pattern;\nclass BaseShading {\n static SMALL_NUMBER = 1e-6;\n constructor() {\n if (this.constructor === BaseShading) {\n (0, _util.unreachable)(\"Cannot initialize BaseShading.\");\n }\n }\n getIR() {\n (0, _util.unreachable)(\"Abstract method `getIR` called.\");\n }\n}\nclass RadialAxialShading extends BaseShading {\n constructor(dict, xref, resources, pdfFunctionFactory, localColorSpaceCache) {\n super();\n this.coordsArr = dict.getArray(\"Coords\");\n this.shadingType = dict.get(\"ShadingType\");\n const cs = _colorspace.ColorSpace.parse({\n cs: dict.getRaw(\"CS\") || dict.getRaw(\"ColorSpace\"),\n xref,\n resources,\n pdfFunctionFactory,\n localColorSpaceCache\n });\n const bbox = dict.getArray(\"BBox\");\n this.bbox = Array.isArray(bbox) && bbox.length === 4 ? _util.Util.normalizeRect(bbox) : null;\n let t0 = 0.0,\n t1 = 1.0;\n if (dict.has(\"Domain\")) {\n const domainArr = dict.getArray(\"Domain\");\n t0 = domainArr[0];\n t1 = domainArr[1];\n }\n let extendStart = false,\n extendEnd = false;\n if (dict.has(\"Extend\")) {\n const extendArr = dict.getArray(\"Extend\");\n extendStart = extendArr[0];\n extendEnd = extendArr[1];\n }\n if (this.shadingType === ShadingType.RADIAL && (!extendStart || !extendEnd)) {\n const [x1, y1, r1, x2, y2, r2] = this.coordsArr;\n const distance = Math.hypot(x1 - x2, y1 - y2);\n if (r1 <= r2 + distance && r2 <= r1 + distance) {\n (0, _util.warn)(\"Unsupported radial gradient.\");\n }\n }\n this.extendStart = extendStart;\n this.extendEnd = extendEnd;\n const fnObj = dict.getRaw(\"Function\");\n const fn = pdfFunctionFactory.createFromArray(fnObj);\n const NUMBER_OF_SAMPLES = 840;\n const step = (t1 - t0) / NUMBER_OF_SAMPLES;\n const colorStops = this.colorStops = [];\n if (t0 >= t1 || step <= 0) {\n (0, _util.info)(\"Bad shading domain.\");\n return;\n }\n const color = new Float32Array(cs.numComps),\n ratio = new Float32Array(1);\n let rgbColor;\n let iBase = 0;\n ratio[0] = t0;\n fn(ratio, 0, color, 0);\n let rgbBase = cs.getRgb(color, 0);\n const cssColorBase = _util.Util.makeHexColor(rgbBase[0], rgbBase[1], rgbBase[2]);\n colorStops.push([0, cssColorBase]);\n let iPrev = 1;\n ratio[0] = t0 + step;\n fn(ratio, 0, color, 0);\n let rgbPrev = cs.getRgb(color, 0);\n let maxSlopeR = rgbPrev[0] - rgbBase[0] + 1;\n let maxSlopeG = rgbPrev[1] - rgbBase[1] + 1;\n let maxSlopeB = rgbPrev[2] - rgbBase[2] + 1;\n let minSlopeR = rgbPrev[0] - rgbBase[0] - 1;\n let minSlopeG = rgbPrev[1] - rgbBase[1] - 1;\n let minSlopeB = rgbPrev[2] - rgbBase[2] - 1;\n for (let i = 2; i < NUMBER_OF_SAMPLES; i++) {\n ratio[0] = t0 + i * step;\n fn(ratio, 0, color, 0);\n rgbColor = cs.getRgb(color, 0);\n const run = i - iBase;\n maxSlopeR = Math.min(maxSlopeR, (rgbColor[0] - rgbBase[0] + 1) / run);\n maxSlopeG = Math.min(maxSlopeG, (rgbColor[1] - rgbBase[1] + 1) / run);\n maxSlopeB = Math.min(maxSlopeB, (rgbColor[2] - rgbBase[2] + 1) / run);\n minSlopeR = Math.max(minSlopeR, (rgbColor[0] - rgbBase[0] - 1) / run);\n minSlopeG = Math.max(minSlopeG, (rgbColor[1] - rgbBase[1] - 1) / run);\n minSlopeB = Math.max(minSlopeB, (rgbColor[2] - rgbBase[2] - 1) / run);\n const slopesExist = minSlopeR <= maxSlopeR && minSlopeG <= maxSlopeG && minSlopeB <= maxSlopeB;\n if (!slopesExist) {\n const cssColor = _util.Util.makeHexColor(rgbPrev[0], rgbPrev[1], rgbPrev[2]);\n colorStops.push([iPrev / NUMBER_OF_SAMPLES, cssColor]);\n maxSlopeR = rgbColor[0] - rgbPrev[0] + 1;\n maxSlopeG = rgbColor[1] - rgbPrev[1] + 1;\n maxSlopeB = rgbColor[2] - rgbPrev[2] + 1;\n minSlopeR = rgbColor[0] - rgbPrev[0] - 1;\n minSlopeG = rgbColor[1] - rgbPrev[1] - 1;\n minSlopeB = rgbColor[2] - rgbPrev[2] - 1;\n iBase = iPrev;\n rgbBase = rgbPrev;\n }\n iPrev = i;\n rgbPrev = rgbColor;\n }\n const cssColor = _util.Util.makeHexColor(rgbPrev[0], rgbPrev[1], rgbPrev[2]);\n colorStops.push([1, cssColor]);\n let background = \"transparent\";\n if (dict.has(\"Background\")) {\n rgbColor = cs.getRgb(dict.get(\"Background\"), 0);\n background = _util.Util.makeHexColor(rgbColor[0], rgbColor[1], rgbColor[2]);\n }\n if (!extendStart) {\n colorStops.unshift([0, background]);\n colorStops[1][0] += BaseShading.SMALL_NUMBER;\n }\n if (!extendEnd) {\n colorStops.at(-1)[0] -= BaseShading.SMALL_NUMBER;\n colorStops.push([1, background]);\n }\n this.colorStops = colorStops;\n }\n getIR() {\n const coordsArr = this.coordsArr;\n const shadingType = this.shadingType;\n let type, p0, p1, r0, r1;\n if (shadingType === ShadingType.AXIAL) {\n p0 = [coordsArr[0], coordsArr[1]];\n p1 = [coordsArr[2], coordsArr[3]];\n r0 = null;\n r1 = null;\n type = \"axial\";\n } else if (shadingType === ShadingType.RADIAL) {\n p0 = [coordsArr[0], coordsArr[1]];\n p1 = [coordsArr[3], coordsArr[4]];\n r0 = coordsArr[2];\n r1 = coordsArr[5];\n type = \"radial\";\n } else {\n (0, _util.unreachable)(`getPattern type unknown: ${shadingType}`);\n }\n return [\"RadialAxial\", type, this.bbox, this.colorStops, p0, p1, r0, r1];\n }\n}\nclass MeshStreamReader {\n constructor(stream, context) {\n this.stream = stream;\n this.context = context;\n this.buffer = 0;\n this.bufferLength = 0;\n const numComps = context.numComps;\n this.tmpCompsBuf = new Float32Array(numComps);\n const csNumComps = context.colorSpace.numComps;\n this.tmpCsCompsBuf = context.colorFn ? new Float32Array(csNumComps) : this.tmpCompsBuf;\n }\n get hasData() {\n if (this.stream.end) {\n return this.stream.pos < this.stream.end;\n }\n if (this.bufferLength > 0) {\n return true;\n }\n const nextByte = this.stream.getByte();\n if (nextByte < 0) {\n return false;\n }\n this.buffer = nextByte;\n this.bufferLength = 8;\n return true;\n }\n readBits(n) {\n let buffer = this.buffer;\n let bufferLength = this.bufferLength;\n if (n === 32) {\n if (bufferLength === 0) {\n return (this.stream.getByte() << 24 | this.stream.getByte() << 16 | this.stream.getByte() << 8 | this.stream.getByte()) >>> 0;\n }\n buffer = buffer << 24 | this.stream.getByte() << 16 | this.stream.getByte() << 8 | this.stream.getByte();\n const nextByte = this.stream.getByte();\n this.buffer = nextByte & (1 << bufferLength) - 1;\n return (buffer << 8 - bufferLength | (nextByte & 0xff) >> bufferLength) >>> 0;\n }\n if (n === 8 && bufferLength === 0) {\n return this.stream.getByte();\n }\n while (bufferLength < n) {\n buffer = buffer << 8 | this.stream.getByte();\n bufferLength += 8;\n }\n bufferLength -= n;\n this.bufferLength = bufferLength;\n this.buffer = buffer & (1 << bufferLength) - 1;\n return buffer >> bufferLength;\n }\n align() {\n this.buffer = 0;\n this.bufferLength = 0;\n }\n readFlag() {\n return this.readBits(this.context.bitsPerFlag);\n }\n readCoordinate() {\n const bitsPerCoordinate = this.context.bitsPerCoordinate;\n const xi = this.readBits(bitsPerCoordinate);\n const yi = this.readBits(bitsPerCoordinate);\n const decode = this.context.decode;\n const scale = bitsPerCoordinate < 32 ? 1 / ((1 << bitsPerCoordinate) - 1) : 2.3283064365386963e-10;\n return [xi * scale * (decode[1] - decode[0]) + decode[0], yi * scale * (decode[3] - decode[2]) + decode[2]];\n }\n readComponents() {\n const numComps = this.context.numComps;\n const bitsPerComponent = this.context.bitsPerComponent;\n const scale = bitsPerComponent < 32 ? 1 / ((1 << bitsPerComponent) - 1) : 2.3283064365386963e-10;\n const decode = this.context.decode;\n const components = this.tmpCompsBuf;\n for (let i = 0, j = 4; i < numComps; i++, j += 2) {\n const ci = this.readBits(bitsPerComponent);\n components[i] = ci * scale * (decode[j + 1] - decode[j]) + decode[j];\n }\n const color = this.tmpCsCompsBuf;\n if (this.context.colorFn) {\n this.context.colorFn(components, 0, color, 0);\n }\n return this.context.colorSpace.getRgb(color, 0);\n }\n}\nlet bCache = Object.create(null);\nfunction buildB(count) {\n const lut = [];\n for (let i = 0; i <= count; i++) {\n const t = i / count,\n t_ = 1 - t;\n lut.push(new Float32Array([t_ ** 3, 3 * t * t_ ** 2, 3 * t ** 2 * t_, t ** 3]));\n }\n return lut;\n}\nfunction getB(count) {\n return bCache[count] ||= buildB(count);\n}\nfunction clearPatternCaches() {\n bCache = Object.create(null);\n}\nclass MeshShading extends BaseShading {\n static MIN_SPLIT_PATCH_CHUNKS_AMOUNT = 3;\n static MAX_SPLIT_PATCH_CHUNKS_AMOUNT = 20;\n static TRIANGLE_DENSITY = 20;\n constructor(stream, xref, resources, pdfFunctionFactory, localColorSpaceCache) {\n super();\n if (!(stream instanceof _base_stream.BaseStream)) {\n throw new _util.FormatError(\"Mesh data is not a stream\");\n }\n const dict = stream.dict;\n this.shadingType = dict.get(\"ShadingType\");\n const bbox = dict.getArray(\"BBox\");\n this.bbox = Array.isArray(bbox) && bbox.length === 4 ? _util.Util.normalizeRect(bbox) : null;\n const cs = _colorspace.ColorSpace.parse({\n cs: dict.getRaw(\"CS\") || dict.getRaw(\"ColorSpace\"),\n xref,\n resources,\n pdfFunctionFactory,\n localColorSpaceCache\n });\n this.background = dict.has(\"Background\") ? cs.getRgb(dict.get(\"Background\"), 0) : null;\n const fnObj = dict.getRaw(\"Function\");\n const fn = fnObj ? pdfFunctionFactory.createFromArray(fnObj) : null;\n this.coords = [];\n this.colors = [];\n this.figures = [];\n const decodeContext = {\n bitsPerCoordinate: dict.get(\"BitsPerCoordinate\"),\n bitsPerComponent: dict.get(\"BitsPerComponent\"),\n bitsPerFlag: dict.get(\"BitsPerFlag\"),\n decode: dict.getArray(\"Decode\"),\n colorFn: fn,\n colorSpace: cs,\n numComps: fn ? 1 : cs.numComps\n };\n const reader = new MeshStreamReader(stream, decodeContext);\n let patchMesh = false;\n switch (this.shadingType) {\n case ShadingType.FREE_FORM_MESH:\n this._decodeType4Shading(reader);\n break;\n case ShadingType.LATTICE_FORM_MESH:\n const verticesPerRow = dict.get(\"VerticesPerRow\") | 0;\n if (verticesPerRow < 2) {\n throw new _util.FormatError(\"Invalid VerticesPerRow\");\n }\n this._decodeType5Shading(reader, verticesPerRow);\n break;\n case ShadingType.COONS_PATCH_MESH:\n this._decodeType6Shading(reader);\n patchMesh = true;\n break;\n case ShadingType.TENSOR_PATCH_MESH:\n this._decodeType7Shading(reader);\n patchMesh = true;\n break;\n default:\n (0, _util.unreachable)(\"Unsupported mesh type.\");\n break;\n }\n if (patchMesh) {\n this._updateBounds();\n for (let i = 0, ii = this.figures.length; i < ii; i++) {\n this._buildFigureFromPatch(i);\n }\n }\n this._updateBounds();\n this._packData();\n }\n _decodeType4Shading(reader) {\n const coords = this.coords;\n const colors = this.colors;\n const operators = [];\n const ps = [];\n let verticesLeft = 0;\n while (reader.hasData) {\n const f = reader.readFlag();\n const coord = reader.readCoordinate();\n const color = reader.readComponents();\n if (verticesLeft === 0) {\n if (!(0 <= f && f <= 2)) {\n throw new _util.FormatError(\"Unknown type4 flag\");\n }\n switch (f) {\n case 0:\n verticesLeft = 3;\n break;\n case 1:\n ps.push(ps.at(-2), ps.at(-1));\n verticesLeft = 1;\n break;\n case 2:\n ps.push(ps.at(-3), ps.at(-1));\n verticesLeft = 1;\n break;\n }\n operators.push(f);\n }\n ps.push(coords.length);\n coords.push(coord);\n colors.push(color);\n verticesLeft--;\n reader.align();\n }\n this.figures.push({\n type: \"triangles\",\n coords: new Int32Array(ps),\n colors: new Int32Array(ps)\n });\n }\n _decodeType5Shading(reader, verticesPerRow) {\n const coords = this.coords;\n const colors = this.colors;\n const ps = [];\n while (reader.hasData) {\n const coord = reader.readCoordinate();\n const color = reader.readComponents();\n ps.push(coords.length);\n coords.push(coord);\n colors.push(color);\n }\n this.figures.push({\n type: \"lattice\",\n coords: new Int32Array(ps),\n colors: new Int32Array(ps),\n verticesPerRow\n });\n }\n _decodeType6Shading(reader) {\n const coords = this.coords;\n const colors = this.colors;\n const ps = new Int32Array(16);\n const cs = new Int32Array(4);\n while (reader.hasData) {\n const f = reader.readFlag();\n if (!(0 <= f && f <= 3)) {\n throw new _util.FormatError(\"Unknown type6 flag\");\n }\n const pi = coords.length;\n for (let i = 0, ii = f !== 0 ? 8 : 12; i < ii; i++) {\n coords.push(reader.readCoordinate());\n }\n const ci = colors.length;\n for (let i = 0, ii = f !== 0 ? 2 : 4; i < ii; i++) {\n colors.push(reader.readComponents());\n }\n let tmp1, tmp2, tmp3, tmp4;\n switch (f) {\n case 0:\n ps[12] = pi + 3;\n ps[13] = pi + 4;\n ps[14] = pi + 5;\n ps[15] = pi + 6;\n ps[8] = pi + 2;\n ps[11] = pi + 7;\n ps[4] = pi + 1;\n ps[7] = pi + 8;\n ps[0] = pi;\n ps[1] = pi + 11;\n ps[2] = pi + 10;\n ps[3] = pi + 9;\n cs[2] = ci + 1;\n cs[3] = ci + 2;\n cs[0] = ci;\n cs[1] = ci + 3;\n break;\n case 1:\n tmp1 = ps[12];\n tmp2 = ps[13];\n tmp3 = ps[14];\n tmp4 = ps[15];\n ps[12] = tmp4;\n ps[13] = pi + 0;\n ps[14] = pi + 1;\n ps[15] = pi + 2;\n ps[8] = tmp3;\n ps[11] = pi + 3;\n ps[4] = tmp2;\n ps[7] = pi + 4;\n ps[0] = tmp1;\n ps[1] = pi + 7;\n ps[2] = pi + 6;\n ps[3] = pi + 5;\n tmp1 = cs[2];\n tmp2 = cs[3];\n cs[2] = tmp2;\n cs[3] = ci;\n cs[0] = tmp1;\n cs[1] = ci + 1;\n break;\n case 2:\n tmp1 = ps[15];\n tmp2 = ps[11];\n ps[12] = ps[3];\n ps[13] = pi + 0;\n ps[14] = pi + 1;\n ps[15] = pi + 2;\n ps[8] = ps[7];\n ps[11] = pi + 3;\n ps[4] = tmp2;\n ps[7] = pi + 4;\n ps[0] = tmp1;\n ps[1] = pi + 7;\n ps[2] = pi + 6;\n ps[3] = pi + 5;\n tmp1 = cs[3];\n cs[2] = cs[1];\n cs[3] = ci;\n cs[0] = tmp1;\n cs[1] = ci + 1;\n break;\n case 3:\n ps[12] = ps[0];\n ps[13] = pi + 0;\n ps[14] = pi + 1;\n ps[15] = pi + 2;\n ps[8] = ps[1];\n ps[11] = pi + 3;\n ps[4] = ps[2];\n ps[7] = pi + 4;\n ps[0] = ps[3];\n ps[1] = pi + 7;\n ps[2] = pi + 6;\n ps[3] = pi + 5;\n cs[2] = cs[0];\n cs[3] = ci;\n cs[0] = cs[1];\n cs[1] = ci + 1;\n break;\n }\n ps[5] = coords.length;\n coords.push([(-4 * coords[ps[0]][0] - coords[ps[15]][0] + 6 * (coords[ps[4]][0] + coords[ps[1]][0]) - 2 * (coords[ps[12]][0] + coords[ps[3]][0]) + 3 * (coords[ps[13]][0] + coords[ps[7]][0])) / 9, (-4 * coords[ps[0]][1] - coords[ps[15]][1] + 6 * (coords[ps[4]][1] + coords[ps[1]][1]) - 2 * (coords[ps[12]][1] + coords[ps[3]][1]) + 3 * (coords[ps[13]][1] + coords[ps[7]][1])) / 9]);\n ps[6] = coords.length;\n coords.push([(-4 * coords[ps[3]][0] - coords[ps[12]][0] + 6 * (coords[ps[2]][0] + coords[ps[7]][0]) - 2 * (coords[ps[0]][0] + coords[ps[15]][0]) + 3 * (coords[ps[4]][0] + coords[ps[14]][0])) / 9, (-4 * coords[ps[3]][1] - coords[ps[12]][1] + 6 * (coords[ps[2]][1] + coords[ps[7]][1]) - 2 * (coords[ps[0]][1] + coords[ps[15]][1]) + 3 * (coords[ps[4]][1] + coords[ps[14]][1])) / 9]);\n ps[9] = coords.length;\n coords.push([(-4 * coords[ps[12]][0] - coords[ps[3]][0] + 6 * (coords[ps[8]][0] + coords[ps[13]][0]) - 2 * (coords[ps[0]][0] + coords[ps[15]][0]) + 3 * (coords[ps[11]][0] + coords[ps[1]][0])) / 9, (-4 * coords[ps[12]][1] - coords[ps[3]][1] + 6 * (coords[ps[8]][1] + coords[ps[13]][1]) - 2 * (coords[ps[0]][1] + coords[ps[15]][1]) + 3 * (coords[ps[11]][1] + coords[ps[1]][1])) / 9]);\n ps[10] = coords.length;\n coords.push([(-4 * coords[ps[15]][0] - coords[ps[0]][0] + 6 * (coords[ps[11]][0] + coords[ps[14]][0]) - 2 * (coords[ps[12]][0] + coords[ps[3]][0]) + 3 * (coords[ps[2]][0] + coords[ps[8]][0])) / 9, (-4 * coords[ps[15]][1] - coords[ps[0]][1] + 6 * (coords[ps[11]][1] + coords[ps[14]][1]) - 2 * (coords[ps[12]][1] + coords[ps[3]][1]) + 3 * (coords[ps[2]][1] + coords[ps[8]][1])) / 9]);\n this.figures.push({\n type: \"patch\",\n coords: new Int32Array(ps),\n colors: new Int32Array(cs)\n });\n }\n }\n _decodeType7Shading(reader) {\n const coords = this.coords;\n const colors = this.colors;\n const ps = new Int32Array(16);\n const cs = new Int32Array(4);\n while (reader.hasData) {\n const f = reader.readFlag();\n if (!(0 <= f && f <= 3)) {\n throw new _util.FormatError(\"Unknown type7 flag\");\n }\n const pi = coords.length;\n for (let i = 0, ii = f !== 0 ? 12 : 16; i < ii; i++) {\n coords.push(reader.readCoordinate());\n }\n const ci = colors.length;\n for (let i = 0, ii = f !== 0 ? 2 : 4; i < ii; i++) {\n colors.push(reader.readComponents());\n }\n let tmp1, tmp2, tmp3, tmp4;\n switch (f) {\n case 0:\n ps[12] = pi + 3;\n ps[13] = pi + 4;\n ps[14] = pi + 5;\n ps[15] = pi + 6;\n ps[8] = pi + 2;\n ps[9] = pi + 13;\n ps[10] = pi + 14;\n ps[11] = pi + 7;\n ps[4] = pi + 1;\n ps[5] = pi + 12;\n ps[6] = pi + 15;\n ps[7] = pi + 8;\n ps[0] = pi;\n ps[1] = pi + 11;\n ps[2] = pi + 10;\n ps[3] = pi + 9;\n cs[2] = ci + 1;\n cs[3] = ci + 2;\n cs[0] = ci;\n cs[1] = ci + 3;\n break;\n case 1:\n tmp1 = ps[12];\n tmp2 = ps[13];\n tmp3 = ps[14];\n tmp4 = ps[15];\n ps[12] = tmp4;\n ps[13] = pi + 0;\n ps[14] = pi + 1;\n ps[15] = pi + 2;\n ps[8] = tmp3;\n ps[9] = pi + 9;\n ps[10] = pi + 10;\n ps[11] = pi + 3;\n ps[4] = tmp2;\n ps[5] = pi + 8;\n ps[6] = pi + 11;\n ps[7] = pi + 4;\n ps[0] = tmp1;\n ps[1] = pi + 7;\n ps[2] = pi + 6;\n ps[3] = pi + 5;\n tmp1 = cs[2];\n tmp2 = cs[3];\n cs[2] = tmp2;\n cs[3] = ci;\n cs[0] = tmp1;\n cs[1] = ci + 1;\n break;\n case 2:\n tmp1 = ps[15];\n tmp2 = ps[11];\n ps[12] = ps[3];\n ps[13] = pi + 0;\n ps[14] = pi + 1;\n ps[15] = pi + 2;\n ps[8] = ps[7];\n ps[9] = pi + 9;\n ps[10] = pi + 10;\n ps[11] = pi + 3;\n ps[4] = tmp2;\n ps[5] = pi + 8;\n ps[6] = pi + 11;\n ps[7] = pi + 4;\n ps[0] = tmp1;\n ps[1] = pi + 7;\n ps[2] = pi + 6;\n ps[3] = pi + 5;\n tmp1 = cs[3];\n cs[2] = cs[1];\n cs[3] = ci;\n cs[0] = tmp1;\n cs[1] = ci + 1;\n break;\n case 3:\n ps[12] = ps[0];\n ps[13] = pi + 0;\n ps[14] = pi + 1;\n ps[15] = pi + 2;\n ps[8] = ps[1];\n ps[9] = pi + 9;\n ps[10] = pi + 10;\n ps[11] = pi + 3;\n ps[4] = ps[2];\n ps[5] = pi + 8;\n ps[6] = pi + 11;\n ps[7] = pi + 4;\n ps[0] = ps[3];\n ps[1] = pi + 7;\n ps[2] = pi + 6;\n ps[3] = pi + 5;\n cs[2] = cs[0];\n cs[3] = ci;\n cs[0] = cs[1];\n cs[1] = ci + 1;\n break;\n }\n this.figures.push({\n type: \"patch\",\n coords: new Int32Array(ps),\n colors: new Int32Array(cs)\n });\n }\n }\n _buildFigureFromPatch(index) {\n const figure = this.figures[index];\n (0, _util.assert)(figure.type === \"patch\", \"Unexpected patch mesh figure\");\n const coords = this.coords,\n colors = this.colors;\n const pi = figure.coords;\n const ci = figure.colors;\n const figureMinX = Math.min(coords[pi[0]][0], coords[pi[3]][0], coords[pi[12]][0], coords[pi[15]][0]);\n const figureMinY = Math.min(coords[pi[0]][1], coords[pi[3]][1], coords[pi[12]][1], coords[pi[15]][1]);\n const figureMaxX = Math.max(coords[pi[0]][0], coords[pi[3]][0], coords[pi[12]][0], coords[pi[15]][0]);\n const figureMaxY = Math.max(coords[pi[0]][1], coords[pi[3]][1], coords[pi[12]][1], coords[pi[15]][1]);\n let splitXBy = Math.ceil((figureMaxX - figureMinX) * MeshShading.TRIANGLE_DENSITY / (this.bounds[2] - this.bounds[0]));\n splitXBy = Math.max(MeshShading.MIN_SPLIT_PATCH_CHUNKS_AMOUNT, Math.min(MeshShading.MAX_SPLIT_PATCH_CHUNKS_AMOUNT, splitXBy));\n let splitYBy = Math.ceil((figureMaxY - figureMinY) * MeshShading.TRIANGLE_DENSITY / (this.bounds[3] - this.bounds[1]));\n splitYBy = Math.max(MeshShading.MIN_SPLIT_PATCH_CHUNKS_AMOUNT, Math.min(MeshShading.MAX_SPLIT_PATCH_CHUNKS_AMOUNT, splitYBy));\n const verticesPerRow = splitXBy + 1;\n const figureCoords = new Int32Array((splitYBy + 1) * verticesPerRow);\n const figureColors = new Int32Array((splitYBy + 1) * verticesPerRow);\n let k = 0;\n const cl = new Uint8Array(3),\n cr = new Uint8Array(3);\n const c0 = colors[ci[0]],\n c1 = colors[ci[1]],\n c2 = colors[ci[2]],\n c3 = colors[ci[3]];\n const bRow = getB(splitYBy),\n bCol = getB(splitXBy);\n for (let row = 0; row <= splitYBy; row++) {\n cl[0] = (c0[0] * (splitYBy - row) + c2[0] * row) / splitYBy | 0;\n cl[1] = (c0[1] * (splitYBy - row) + c2[1] * row) / splitYBy | 0;\n cl[2] = (c0[2] * (splitYBy - row) + c2[2] * row) / splitYBy | 0;\n cr[0] = (c1[0] * (splitYBy - row) + c3[0] * row) / splitYBy | 0;\n cr[1] = (c1[1] * (splitYBy - row) + c3[1] * row) / splitYBy | 0;\n cr[2] = (c1[2] * (splitYBy - row) + c3[2] * row) / splitYBy | 0;\n for (let col = 0; col <= splitXBy; col++, k++) {\n if ((row === 0 || row === splitYBy) && (col === 0 || col === splitXBy)) {\n continue;\n }\n let x = 0,\n y = 0;\n let q = 0;\n for (let i = 0; i <= 3; i++) {\n for (let j = 0; j <= 3; j++, q++) {\n const m = bRow[row][i] * bCol[col][j];\n x += coords[pi[q]][0] * m;\n y += coords[pi[q]][1] * m;\n }\n }\n figureCoords[k] = coords.length;\n coords.push([x, y]);\n figureColors[k] = colors.length;\n const newColor = new Uint8Array(3);\n newColor[0] = (cl[0] * (splitXBy - col) + cr[0] * col) / splitXBy | 0;\n newColor[1] = (cl[1] * (splitXBy - col) + cr[1] * col) / splitXBy | 0;\n newColor[2] = (cl[2] * (splitXBy - col) + cr[2] * col) / splitXBy | 0;\n colors.push(newColor);\n }\n }\n figureCoords[0] = pi[0];\n figureColors[0] = ci[0];\n figureCoords[splitXBy] = pi[3];\n figureColors[splitXBy] = ci[1];\n figureCoords[verticesPerRow * splitYBy] = pi[12];\n figureColors[verticesPerRow * splitYBy] = ci[2];\n figureCoords[verticesPerRow * splitYBy + splitXBy] = pi[15];\n figureColors[verticesPerRow * splitYBy + splitXBy] = ci[3];\n this.figures[index] = {\n type: \"lattice\",\n coords: figureCoords,\n colors: figureColors,\n verticesPerRow\n };\n }\n _updateBounds() {\n let minX = this.coords[0][0],\n minY = this.coords[0][1],\n maxX = minX,\n maxY = minY;\n for (let i = 1, ii = this.coords.length; i < ii; i++) {\n const x = this.coords[i][0],\n y = this.coords[i][1];\n minX = minX > x ? x : minX;\n minY = minY > y ? y : minY;\n maxX = maxX < x ? x : maxX;\n maxY = maxY < y ? y : maxY;\n }\n this.bounds = [minX, minY, maxX, maxY];\n }\n _packData() {\n let i, ii, j, jj;\n const coords = this.coords;\n const coordsPacked = new Float32Array(coords.length * 2);\n for (i = 0, j = 0, ii = coords.length; i < ii; i++) {\n const xy = coords[i];\n coordsPacked[j++] = xy[0];\n coordsPacked[j++] = xy[1];\n }\n this.coords = coordsPacked;\n const colors = this.colors;\n const colorsPacked = new Uint8Array(colors.length * 3);\n for (i = 0, j = 0, ii = colors.length; i < ii; i++) {\n const c = colors[i];\n colorsPacked[j++] = c[0];\n colorsPacked[j++] = c[1];\n colorsPacked[j++] = c[2];\n }\n this.colors = colorsPacked;\n const figures = this.figures;\n for (i = 0, ii = figures.length; i < ii; i++) {\n const figure = figures[i],\n ps = figure.coords,\n cs = figure.colors;\n for (j = 0, jj = ps.length; j < jj; j++) {\n ps[j] *= 2;\n cs[j] *= 3;\n }\n }\n }\n getIR() {\n return [\"Mesh\", this.shadingType, this.coords, this.colors, this.figures, this.bounds, this.bbox, this.background];\n }\n}\nclass DummyShading extends BaseShading {\n getIR() {\n return [\"Dummy\"];\n }\n}\nfunction getTilingPatternIR(operatorList, dict, color) {\n const matrix = dict.getArray(\"Matrix\");\n const bbox = _util.Util.normalizeRect(dict.getArray(\"BBox\"));\n const xstep = dict.get(\"XStep\");\n const ystep = dict.get(\"YStep\");\n const paintType = dict.get(\"PaintType\");\n const tilingType = dict.get(\"TilingType\");\n if (bbox[2] - bbox[0] === 0 || bbox[3] - bbox[1] === 0) {\n throw new _util.FormatError(`Invalid getTilingPatternIR /BBox array: [${bbox}].`);\n }\n return [\"TilingPattern\", color, operatorList, matrix, bbox, xstep, ystep, paintType, tilingType];\n}\n\n/***/ }),\n/* 51 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getXfaFontDict = getXfaFontDict;\nexports.getXfaFontName = getXfaFontName;\nvar _calibri_factors = __w_pdfjs_require__(52);\nvar _primitives = __w_pdfjs_require__(4);\nvar _helvetica_factors = __w_pdfjs_require__(53);\nvar _liberationsans_widths = __w_pdfjs_require__(54);\nvar _myriadpro_factors = __w_pdfjs_require__(55);\nvar _segoeui_factors = __w_pdfjs_require__(56);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _fonts_utils = __w_pdfjs_require__(38);\nconst getXFAFontMap = (0, _core_utils.getLookupTableFactory)(function (t) {\n t[\"MyriadPro-Regular\"] = t[\"PdfJS-Fallback-Regular\"] = {\n name: \"LiberationSans-Regular\",\n factors: _myriadpro_factors.MyriadProRegularFactors,\n baseWidths: _liberationsans_widths.LiberationSansRegularWidths,\n baseMapping: _liberationsans_widths.LiberationSansRegularMapping,\n metrics: _myriadpro_factors.MyriadProRegularMetrics\n };\n t[\"MyriadPro-Bold\"] = t[\"PdfJS-Fallback-Bold\"] = {\n name: \"LiberationSans-Bold\",\n factors: _myriadpro_factors.MyriadProBoldFactors,\n baseWidths: _liberationsans_widths.LiberationSansBoldWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldMapping,\n metrics: _myriadpro_factors.MyriadProBoldMetrics\n };\n t[\"MyriadPro-It\"] = t[\"MyriadPro-Italic\"] = t[\"PdfJS-Fallback-Italic\"] = {\n name: \"LiberationSans-Italic\",\n factors: _myriadpro_factors.MyriadProItalicFactors,\n baseWidths: _liberationsans_widths.LiberationSansItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansItalicMapping,\n metrics: _myriadpro_factors.MyriadProItalicMetrics\n };\n t[\"MyriadPro-BoldIt\"] = t[\"MyriadPro-BoldItalic\"] = t[\"PdfJS-Fallback-BoldItalic\"] = {\n name: \"LiberationSans-BoldItalic\",\n factors: _myriadpro_factors.MyriadProBoldItalicFactors,\n baseWidths: _liberationsans_widths.LiberationSansBoldItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldItalicMapping,\n metrics: _myriadpro_factors.MyriadProBoldItalicMetrics\n };\n t.ArialMT = t.Arial = t[\"Arial-Regular\"] = {\n name: \"LiberationSans-Regular\",\n baseWidths: _liberationsans_widths.LiberationSansRegularWidths,\n baseMapping: _liberationsans_widths.LiberationSansRegularMapping\n };\n t[\"Arial-BoldMT\"] = t[\"Arial-Bold\"] = {\n name: \"LiberationSans-Bold\",\n baseWidths: _liberationsans_widths.LiberationSansBoldWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldMapping\n };\n t[\"Arial-ItalicMT\"] = t[\"Arial-Italic\"] = {\n name: \"LiberationSans-Italic\",\n baseWidths: _liberationsans_widths.LiberationSansItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansItalicMapping\n };\n t[\"Arial-BoldItalicMT\"] = t[\"Arial-BoldItalic\"] = {\n name: \"LiberationSans-BoldItalic\",\n baseWidths: _liberationsans_widths.LiberationSansBoldItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldItalicMapping\n };\n t[\"Calibri-Regular\"] = {\n name: \"LiberationSans-Regular\",\n factors: _calibri_factors.CalibriRegularFactors,\n baseWidths: _liberationsans_widths.LiberationSansRegularWidths,\n baseMapping: _liberationsans_widths.LiberationSansRegularMapping,\n metrics: _calibri_factors.CalibriRegularMetrics\n };\n t[\"Calibri-Bold\"] = {\n name: \"LiberationSans-Bold\",\n factors: _calibri_factors.CalibriBoldFactors,\n baseWidths: _liberationsans_widths.LiberationSansBoldWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldMapping,\n metrics: _calibri_factors.CalibriBoldMetrics\n };\n t[\"Calibri-Italic\"] = {\n name: \"LiberationSans-Italic\",\n factors: _calibri_factors.CalibriItalicFactors,\n baseWidths: _liberationsans_widths.LiberationSansItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansItalicMapping,\n metrics: _calibri_factors.CalibriItalicMetrics\n };\n t[\"Calibri-BoldItalic\"] = {\n name: \"LiberationSans-BoldItalic\",\n factors: _calibri_factors.CalibriBoldItalicFactors,\n baseWidths: _liberationsans_widths.LiberationSansBoldItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldItalicMapping,\n metrics: _calibri_factors.CalibriBoldItalicMetrics\n };\n t[\"Segoeui-Regular\"] = {\n name: \"LiberationSans-Regular\",\n factors: _segoeui_factors.SegoeuiRegularFactors,\n baseWidths: _liberationsans_widths.LiberationSansRegularWidths,\n baseMapping: _liberationsans_widths.LiberationSansRegularMapping,\n metrics: _segoeui_factors.SegoeuiRegularMetrics\n };\n t[\"Segoeui-Bold\"] = {\n name: \"LiberationSans-Bold\",\n factors: _segoeui_factors.SegoeuiBoldFactors,\n baseWidths: _liberationsans_widths.LiberationSansBoldWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldMapping,\n metrics: _segoeui_factors.SegoeuiBoldMetrics\n };\n t[\"Segoeui-Italic\"] = {\n name: \"LiberationSans-Italic\",\n factors: _segoeui_factors.SegoeuiItalicFactors,\n baseWidths: _liberationsans_widths.LiberationSansItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansItalicMapping,\n metrics: _segoeui_factors.SegoeuiItalicMetrics\n };\n t[\"Segoeui-BoldItalic\"] = {\n name: \"LiberationSans-BoldItalic\",\n factors: _segoeui_factors.SegoeuiBoldItalicFactors,\n baseWidths: _liberationsans_widths.LiberationSansBoldItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldItalicMapping,\n metrics: _segoeui_factors.SegoeuiBoldItalicMetrics\n };\n t[\"Helvetica-Regular\"] = t.Helvetica = {\n name: \"LiberationSans-Regular\",\n factors: _helvetica_factors.HelveticaRegularFactors,\n baseWidths: _liberationsans_widths.LiberationSansRegularWidths,\n baseMapping: _liberationsans_widths.LiberationSansRegularMapping,\n metrics: _helvetica_factors.HelveticaRegularMetrics\n };\n t[\"Helvetica-Bold\"] = {\n name: \"LiberationSans-Bold\",\n factors: _helvetica_factors.HelveticaBoldFactors,\n baseWidths: _liberationsans_widths.LiberationSansBoldWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldMapping,\n metrics: _helvetica_factors.HelveticaBoldMetrics\n };\n t[\"Helvetica-Italic\"] = {\n name: \"LiberationSans-Italic\",\n factors: _helvetica_factors.HelveticaItalicFactors,\n baseWidths: _liberationsans_widths.LiberationSansItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansItalicMapping,\n metrics: _helvetica_factors.HelveticaItalicMetrics\n };\n t[\"Helvetica-BoldItalic\"] = {\n name: \"LiberationSans-BoldItalic\",\n factors: _helvetica_factors.HelveticaBoldItalicFactors,\n baseWidths: _liberationsans_widths.LiberationSansBoldItalicWidths,\n baseMapping: _liberationsans_widths.LiberationSansBoldItalicMapping,\n metrics: _helvetica_factors.HelveticaBoldItalicMetrics\n };\n});\nfunction getXfaFontName(name) {\n const fontName = (0, _fonts_utils.normalizeFontName)(name);\n const fontMap = getXFAFontMap();\n return fontMap[fontName];\n}\nfunction getXfaFontWidths(name) {\n const info = getXfaFontName(name);\n if (!info) {\n return null;\n }\n const {\n baseWidths,\n baseMapping,\n factors\n } = info;\n const rescaledBaseWidths = !factors ? baseWidths : baseWidths.map((w, i) => w * factors[i]);\n let currentCode = -2;\n let currentArray;\n const newWidths = [];\n for (const [unicode, glyphIndex] of baseMapping.map((charUnicode, index) => [charUnicode, index]).sort(([unicode1], [unicode2]) => unicode1 - unicode2)) {\n if (unicode === -1) {\n continue;\n }\n if (unicode === currentCode + 1) {\n currentArray.push(rescaledBaseWidths[glyphIndex]);\n currentCode += 1;\n } else {\n currentCode = unicode;\n currentArray = [rescaledBaseWidths[glyphIndex]];\n newWidths.push(unicode, currentArray);\n }\n }\n return newWidths;\n}\nfunction getXfaFontDict(name) {\n const widths = getXfaFontWidths(name);\n const dict = new _primitives.Dict(null);\n dict.set(\"BaseFont\", _primitives.Name.get(name));\n dict.set(\"Type\", _primitives.Name.get(\"Font\"));\n dict.set(\"Subtype\", _primitives.Name.get(\"CIDFontType2\"));\n dict.set(\"Encoding\", _primitives.Name.get(\"Identity-H\"));\n dict.set(\"CIDToGIDMap\", _primitives.Name.get(\"Identity\"));\n dict.set(\"W\", widths);\n dict.set(\"FirstChar\", widths[0]);\n dict.set(\"LastChar\", widths.at(-2) + widths.at(-1).length - 1);\n const descriptor = new _primitives.Dict(null);\n dict.set(\"FontDescriptor\", descriptor);\n const systemInfo = new _primitives.Dict(null);\n systemInfo.set(\"Ordering\", \"Identity\");\n systemInfo.set(\"Registry\", \"Adobe\");\n systemInfo.set(\"Supplement\", 0);\n dict.set(\"CIDSystemInfo\", systemInfo);\n return dict;\n}\n\n/***/ }),\n/* 52 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CalibriRegularMetrics = exports.CalibriRegularFactors = exports.CalibriItalicMetrics = exports.CalibriItalicFactors = exports.CalibriBoldMetrics = exports.CalibriBoldItalicMetrics = exports.CalibriBoldItalicFactors = exports.CalibriBoldFactors = void 0;\nconst CalibriBoldFactors = [1.3877, 1, 1, 1, 0.97801, 0.92482, 0.89552, 0.91133, 0.81988, 0.97566, 0.98152, 0.93548, 0.93548, 1.2798, 0.85284, 0.92794, 1, 0.96134, 1.54657, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.82845, 0.82845, 0.85284, 0.85284, 0.85284, 0.75859, 0.92138, 0.83908, 0.7762, 0.73293, 0.87289, 0.73133, 0.7514, 0.81921, 0.87356, 0.95958, 0.59526, 0.75727, 0.69225, 1.04924, 0.9121, 0.86943, 0.79795, 0.88198, 0.77958, 0.70864, 0.81055, 0.90399, 0.88653, 0.96017, 0.82577, 0.77892, 0.78257, 0.97507, 1.54657, 0.97507, 0.85284, 0.89552, 0.90176, 0.88762, 0.8785, 0.75241, 0.8785, 0.90518, 0.95015, 0.77618, 0.8785, 0.88401, 0.91916, 0.86304, 0.88401, 0.91488, 0.8785, 0.8801, 0.8785, 0.8785, 0.91343, 0.7173, 1.04106, 0.8785, 0.85075, 0.95794, 0.82616, 0.85162, 0.79492, 0.88331, 1.69808, 0.88331, 0.85284, 0.97801, 0.89552, 0.91133, 0.89552, 0.91133, 1.7801, 0.89552, 1.24487, 1.13254, 1.12401, 0.96839, 0.85284, 0.68787, 0.70645, 0.85592, 0.90747, 1.01466, 1.0088, 0.90323, 1, 1.07463, 1, 0.91056, 0.75806, 1.19118, 0.96839, 0.78864, 0.82845, 0.84133, 0.75859, 0.83908, 0.83908, 0.83908, 0.83908, 0.83908, 0.83908, 0.77539, 0.73293, 0.73133, 0.73133, 0.73133, 0.73133, 0.95958, 0.95958, 0.95958, 0.95958, 0.88506, 0.9121, 0.86943, 0.86943, 0.86943, 0.86943, 0.86943, 0.85284, 0.87508, 0.90399, 0.90399, 0.90399, 0.90399, 0.77892, 0.79795, 0.90807, 0.88762, 0.88762, 0.88762, 0.88762, 0.88762, 0.88762, 0.8715, 0.75241, 0.90518, 0.90518, 0.90518, 0.90518, 0.88401, 0.88401, 0.88401, 0.88401, 0.8785, 0.8785, 0.8801, 0.8801, 0.8801, 0.8801, 0.8801, 0.90747, 0.89049, 0.8785, 0.8785, 0.8785, 0.8785, 0.85162, 0.8785, 0.85162, 0.83908, 0.88762, 0.83908, 0.88762, 0.83908, 0.88762, 0.73293, 0.75241, 0.73293, 0.75241, 0.73293, 0.75241, 0.73293, 0.75241, 0.87289, 0.83016, 0.88506, 0.93125, 0.73133, 0.90518, 0.73133, 0.90518, 0.73133, 0.90518, 0.73133, 0.90518, 0.73133, 0.90518, 0.81921, 0.77618, 0.81921, 0.77618, 0.81921, 0.77618, 1, 1, 0.87356, 0.8785, 0.91075, 0.89608, 0.95958, 0.88401, 0.95958, 0.88401, 0.95958, 0.88401, 0.95958, 0.88401, 0.95958, 0.88401, 0.76229, 0.90167, 0.59526, 0.91916, 1, 1, 0.86304, 0.69225, 0.88401, 1, 1, 0.70424, 0.79468, 0.91926, 0.88175, 0.70823, 0.94903, 0.9121, 0.8785, 1, 1, 0.9121, 0.8785, 0.87802, 0.88656, 0.8785, 0.86943, 0.8801, 0.86943, 0.8801, 0.86943, 0.8801, 0.87402, 0.89291, 0.77958, 0.91343, 1, 1, 0.77958, 0.91343, 0.70864, 0.7173, 0.70864, 0.7173, 0.70864, 0.7173, 0.70864, 0.7173, 1, 1, 0.81055, 0.75841, 0.81055, 1.06452, 0.90399, 0.8785, 0.90399, 0.8785, 0.90399, 0.8785, 0.90399, 0.8785, 0.90399, 0.8785, 0.90399, 0.8785, 0.96017, 0.95794, 0.77892, 0.85162, 0.77892, 0.78257, 0.79492, 0.78257, 0.79492, 0.78257, 0.79492, 0.9297, 0.56892, 0.83908, 0.88762, 0.77539, 0.8715, 0.87508, 0.89049, 1, 1, 0.81055, 1.04106, 1.20528, 1.20528, 1, 1.15543, 0.70674, 0.98387, 0.94721, 1.33431, 1.45894, 0.95161, 1.06303, 0.83908, 0.80352, 0.57184, 0.6965, 0.56289, 0.82001, 0.56029, 0.81235, 1.02988, 0.83908, 0.7762, 0.68156, 0.80367, 0.73133, 0.78257, 0.87356, 0.86943, 0.95958, 0.75727, 0.89019, 1.04924, 0.9121, 0.7648, 0.86943, 0.87356, 0.79795, 0.78275, 0.81055, 0.77892, 0.9762, 0.82577, 0.99819, 0.84896, 0.95958, 0.77892, 0.96108, 1.01407, 0.89049, 1.02988, 0.94211, 0.96108, 0.8936, 0.84021, 0.87842, 0.96399, 0.79109, 0.89049, 1.00813, 1.02988, 0.86077, 0.87445, 0.92099, 0.84723, 0.86513, 0.8801, 0.75638, 0.85714, 0.78216, 0.79586, 0.87965, 0.94211, 0.97747, 0.78287, 0.97926, 0.84971, 1.02988, 0.94211, 0.8801, 0.94211, 0.84971, 0.73133, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.90264, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.90518, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.90548, 1, 1, 1, 1, 1, 1, 0.96017, 0.95794, 0.96017, 0.95794, 0.96017, 0.95794, 0.77892, 0.85162, 1, 1, 0.89552, 0.90527, 1, 0.90363, 0.92794, 0.92794, 0.92794, 0.92794, 0.87012, 0.87012, 0.87012, 0.89552, 0.89552, 1.42259, 0.71143, 1.06152, 1, 1, 1.03372, 1.03372, 0.97171, 1.4956, 2.2807, 0.93835, 0.83406, 0.91133, 0.84107, 0.91133, 1, 1, 1, 0.72021, 1, 1.23108, 0.83489, 0.88525, 0.88525, 0.81499, 0.90527, 1.81055, 0.90527, 1.81055, 1.31006, 1.53711, 0.94434, 1.08696, 1, 0.95018, 0.77192, 0.85284, 0.90747, 1.17534, 0.69825, 0.9716, 1.37077, 0.90747, 0.90747, 0.85356, 0.90747, 0.90747, 1.44947, 0.85284, 0.8941, 0.8941, 0.70572, 0.8, 0.70572, 0.70572, 0.70572, 0.70572, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.99862, 0.99862, 1, 1, 1, 1, 1, 1.08004, 0.91027, 1, 1, 1, 0.99862, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.90727, 0.90727, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.CalibriBoldFactors = CalibriBoldFactors;\nconst CalibriBoldMetrics = {\n lineHeight: 1.2207,\n lineGap: 0.2207\n};\nexports.CalibriBoldMetrics = CalibriBoldMetrics;\nconst CalibriBoldItalicFactors = [1.3877, 1, 1, 1, 0.97801, 0.92482, 0.89552, 0.91133, 0.81988, 0.97566, 0.98152, 0.93548, 0.93548, 1.2798, 0.85284, 0.92794, 1, 0.96134, 1.56239, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.82845, 0.82845, 0.85284, 0.85284, 0.85284, 0.75859, 0.92138, 0.83908, 0.7762, 0.71805, 0.87289, 0.73133, 0.7514, 0.81921, 0.87356, 0.95958, 0.59526, 0.75727, 0.69225, 1.04924, 0.90872, 0.85938, 0.79795, 0.87068, 0.77958, 0.69766, 0.81055, 0.90399, 0.88653, 0.96068, 0.82577, 0.77892, 0.78257, 0.97507, 1.529, 0.97507, 0.85284, 0.89552, 0.90176, 0.94908, 0.86411, 0.74012, 0.86411, 0.88323, 0.95015, 0.86411, 0.86331, 0.88401, 0.91916, 0.86304, 0.88401, 0.9039, 0.86331, 0.86331, 0.86411, 0.86411, 0.90464, 0.70852, 1.04106, 0.86331, 0.84372, 0.95794, 0.82616, 0.84548, 0.79492, 0.88331, 1.69808, 0.88331, 0.85284, 0.97801, 0.89552, 0.91133, 0.89552, 0.91133, 1.7801, 0.89552, 1.24487, 1.13254, 1.19129, 0.96839, 0.85284, 0.68787, 0.70645, 0.85592, 0.90747, 1.01466, 1.0088, 0.90323, 1, 1.07463, 1, 0.91056, 0.75806, 1.19118, 0.96839, 0.78864, 0.82845, 0.84133, 0.75859, 0.83908, 0.83908, 0.83908, 0.83908, 0.83908, 0.83908, 0.77539, 0.71805, 0.73133, 0.73133, 0.73133, 0.73133, 0.95958, 0.95958, 0.95958, 0.95958, 0.88506, 0.90872, 0.85938, 0.85938, 0.85938, 0.85938, 0.85938, 0.85284, 0.87068, 0.90399, 0.90399, 0.90399, 0.90399, 0.77892, 0.79795, 0.90807, 0.94908, 0.94908, 0.94908, 0.94908, 0.94908, 0.94908, 0.85887, 0.74012, 0.88323, 0.88323, 0.88323, 0.88323, 0.88401, 0.88401, 0.88401, 0.88401, 0.8785, 0.86331, 0.86331, 0.86331, 0.86331, 0.86331, 0.86331, 0.90747, 0.89049, 0.86331, 0.86331, 0.86331, 0.86331, 0.84548, 0.86411, 0.84548, 0.83908, 0.94908, 0.83908, 0.94908, 0.83908, 0.94908, 0.71805, 0.74012, 0.71805, 0.74012, 0.71805, 0.74012, 0.71805, 0.74012, 0.87289, 0.79538, 0.88506, 0.92726, 0.73133, 0.88323, 0.73133, 0.88323, 0.73133, 0.88323, 0.73133, 0.88323, 0.73133, 0.88323, 0.81921, 0.86411, 0.81921, 0.86411, 0.81921, 0.86411, 1, 1, 0.87356, 0.86331, 0.91075, 0.8777, 0.95958, 0.88401, 0.95958, 0.88401, 0.95958, 0.88401, 0.95958, 0.88401, 0.95958, 0.88401, 0.76467, 0.90167, 0.59526, 0.91916, 1, 1, 0.86304, 0.69225, 0.88401, 1, 1, 0.70424, 0.77312, 0.91926, 0.88175, 0.70823, 0.94903, 0.90872, 0.86331, 1, 1, 0.90872, 0.86331, 0.86906, 0.88116, 0.86331, 0.85938, 0.86331, 0.85938, 0.86331, 0.85938, 0.86331, 0.87402, 0.86549, 0.77958, 0.90464, 1, 1, 0.77958, 0.90464, 0.69766, 0.70852, 0.69766, 0.70852, 0.69766, 0.70852, 0.69766, 0.70852, 1, 1, 0.81055, 0.75841, 0.81055, 1.06452, 0.90399, 0.86331, 0.90399, 0.86331, 0.90399, 0.86331, 0.90399, 0.86331, 0.90399, 0.86331, 0.90399, 0.86331, 0.96068, 0.95794, 0.77892, 0.84548, 0.77892, 0.78257, 0.79492, 0.78257, 0.79492, 0.78257, 0.79492, 0.9297, 0.56892, 0.83908, 0.94908, 0.77539, 0.85887, 0.87068, 0.89049, 1, 1, 0.81055, 1.04106, 1.20528, 1.20528, 1, 1.15543, 0.70088, 0.98387, 0.94721, 1.33431, 1.45894, 0.95161, 1.48387, 0.83908, 0.80352, 0.57118, 0.6965, 0.56347, 0.79179, 0.55853, 0.80346, 1.02988, 0.83908, 0.7762, 0.67174, 0.86036, 0.73133, 0.78257, 0.87356, 0.86441, 0.95958, 0.75727, 0.89019, 1.04924, 0.90872, 0.74889, 0.85938, 0.87891, 0.79795, 0.7957, 0.81055, 0.77892, 0.97447, 0.82577, 0.97466, 0.87179, 0.95958, 0.77892, 0.94252, 0.95612, 0.8753, 1.02988, 0.92733, 0.94252, 0.87411, 0.84021, 0.8728, 0.95612, 0.74081, 0.8753, 1.02189, 1.02988, 0.84814, 0.87445, 0.91822, 0.84723, 0.85668, 0.86331, 0.81344, 0.87581, 0.76422, 0.82046, 0.96057, 0.92733, 0.99375, 0.78022, 0.95452, 0.86015, 1.02988, 0.92733, 0.86331, 0.92733, 0.86015, 0.73133, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.90631, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.88323, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.85174, 1, 1, 1, 1, 1, 1, 0.96068, 0.95794, 0.96068, 0.95794, 0.96068, 0.95794, 0.77892, 0.84548, 1, 1, 0.89552, 0.90527, 1, 0.90363, 0.92794, 0.92794, 0.92794, 0.89807, 0.87012, 0.87012, 0.87012, 0.89552, 0.89552, 1.42259, 0.71094, 1.06152, 1, 1, 1.03372, 1.03372, 0.97171, 1.4956, 2.2807, 0.92972, 0.83406, 0.91133, 0.83326, 0.91133, 1, 1, 1, 0.72021, 1, 1.23108, 0.83489, 0.88525, 0.88525, 0.81499, 0.90616, 1.81055, 0.90527, 1.81055, 1.3107, 1.53711, 0.94434, 1.08696, 1, 0.95018, 0.77192, 0.85284, 0.90747, 1.17534, 0.69825, 0.9716, 1.37077, 0.90747, 0.90747, 0.85356, 0.90747, 0.90747, 1.44947, 0.85284, 0.8941, 0.8941, 0.70572, 0.8, 0.70572, 0.70572, 0.70572, 0.70572, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.99862, 0.99862, 1, 1, 1, 1, 1, 1.08004, 0.91027, 1, 1, 1, 0.99862, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.90727, 0.90727, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.CalibriBoldItalicFactors = CalibriBoldItalicFactors;\nconst CalibriBoldItalicMetrics = {\n lineHeight: 1.2207,\n lineGap: 0.2207\n};\nexports.CalibriBoldItalicMetrics = CalibriBoldItalicMetrics;\nconst CalibriItalicFactors = [1.3877, 1, 1, 1, 1.17223, 1.1293, 0.89552, 0.91133, 0.80395, 1.02269, 1.15601, 0.91056, 0.91056, 1.2798, 0.85284, 0.89807, 1, 0.90861, 1.39543, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.96309, 0.96309, 0.85284, 0.85284, 0.85284, 0.83319, 0.88071, 0.8675, 0.81552, 0.72346, 0.85193, 0.73206, 0.7522, 0.81105, 0.86275, 0.90685, 0.6377, 0.77892, 0.75593, 1.02638, 0.89249, 0.84118, 0.77452, 0.85374, 0.75186, 0.67789, 0.79776, 0.88844, 0.85066, 0.94309, 0.77818, 0.7306, 0.76659, 1.10369, 1.38313, 1.10369, 1.06139, 0.89552, 0.8739, 0.9245, 0.9245, 0.83203, 0.9245, 0.85865, 1.09842, 0.9245, 0.9245, 1.03297, 1.07692, 0.90918, 1.03297, 0.94959, 0.9245, 0.92274, 0.9245, 0.9245, 1.02933, 0.77832, 1.20562, 0.9245, 0.8916, 0.98986, 0.86621, 0.89453, 0.79004, 0.94152, 1.77256, 0.94152, 0.85284, 0.97801, 0.89552, 0.91133, 0.89552, 0.91133, 1.91729, 0.89552, 1.17889, 1.13254, 1.16359, 0.92098, 0.85284, 0.68787, 0.71353, 0.84737, 0.90747, 1.0088, 1.0044, 0.87683, 1, 1.09091, 1, 0.92229, 0.739, 1.15642, 0.92098, 0.76288, 0.80504, 0.80972, 0.75859, 0.8675, 0.8675, 0.8675, 0.8675, 0.8675, 0.8675, 0.76318, 0.72346, 0.73206, 0.73206, 0.73206, 0.73206, 0.90685, 0.90685, 0.90685, 0.90685, 0.86477, 0.89249, 0.84118, 0.84118, 0.84118, 0.84118, 0.84118, 0.85284, 0.84557, 0.88844, 0.88844, 0.88844, 0.88844, 0.7306, 0.77452, 0.86331, 0.9245, 0.9245, 0.9245, 0.9245, 0.9245, 0.9245, 0.84843, 0.83203, 0.85865, 0.85865, 0.85865, 0.85865, 0.82601, 0.82601, 0.82601, 0.82601, 0.94469, 0.9245, 0.92274, 0.92274, 0.92274, 0.92274, 0.92274, 0.90747, 0.86651, 0.9245, 0.9245, 0.9245, 0.9245, 0.89453, 0.9245, 0.89453, 0.8675, 0.9245, 0.8675, 0.9245, 0.8675, 0.9245, 0.72346, 0.83203, 0.72346, 0.83203, 0.72346, 0.83203, 0.72346, 0.83203, 0.85193, 0.8875, 0.86477, 0.99034, 0.73206, 0.85865, 0.73206, 0.85865, 0.73206, 0.85865, 0.73206, 0.85865, 0.73206, 0.85865, 0.81105, 0.9245, 0.81105, 0.9245, 0.81105, 0.9245, 1, 1, 0.86275, 0.9245, 0.90872, 0.93591, 0.90685, 0.82601, 0.90685, 0.82601, 0.90685, 0.82601, 0.90685, 1.03297, 0.90685, 0.82601, 0.77896, 1.05611, 0.6377, 1.07692, 1, 1, 0.90918, 0.75593, 1.03297, 1, 1, 0.76032, 0.9375, 0.98156, 0.93407, 0.77261, 1.11429, 0.89249, 0.9245, 1, 1, 0.89249, 0.9245, 0.92534, 0.86698, 0.9245, 0.84118, 0.92274, 0.84118, 0.92274, 0.84118, 0.92274, 0.8667, 0.86291, 0.75186, 1.02933, 1, 1, 0.75186, 1.02933, 0.67789, 0.77832, 0.67789, 0.77832, 0.67789, 0.77832, 0.67789, 0.77832, 1, 1, 0.79776, 0.97655, 0.79776, 1.23023, 0.88844, 0.9245, 0.88844, 0.9245, 0.88844, 0.9245, 0.88844, 0.9245, 0.88844, 0.9245, 0.88844, 0.9245, 0.94309, 0.98986, 0.7306, 0.89453, 0.7306, 0.76659, 0.79004, 0.76659, 0.79004, 0.76659, 0.79004, 1.09231, 0.54873, 0.8675, 0.9245, 0.76318, 0.84843, 0.84557, 0.86651, 1, 1, 0.79776, 1.20562, 1.18622, 1.18622, 1, 1.1437, 0.67009, 0.96334, 0.93695, 1.35191, 1.40909, 0.95161, 1.48387, 0.8675, 0.90861, 0.6192, 0.7363, 0.64824, 0.82411, 0.56321, 0.85696, 1.23516, 0.8675, 0.81552, 0.7286, 0.84134, 0.73206, 0.76659, 0.86275, 0.84369, 0.90685, 0.77892, 0.85871, 1.02638, 0.89249, 0.75828, 0.84118, 0.85984, 0.77452, 0.76466, 0.79776, 0.7306, 0.90782, 0.77818, 0.903, 0.87291, 0.90685, 0.7306, 0.99058, 1.03667, 0.94635, 1.23516, 0.9849, 0.99058, 0.92393, 0.8916, 0.942, 1.03667, 0.75026, 0.94635, 1.0297, 1.23516, 0.90918, 0.94048, 0.98217, 0.89746, 0.84153, 0.92274, 0.82507, 0.88832, 0.84438, 0.88178, 1.03525, 0.9849, 1.00225, 0.78086, 0.97248, 0.89404, 1.23516, 0.9849, 0.92274, 0.9849, 0.89404, 0.73206, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.89693, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.85865, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.90933, 1, 1, 1, 1, 1, 1, 0.94309, 0.98986, 0.94309, 0.98986, 0.94309, 0.98986, 0.7306, 0.89453, 1, 1, 0.89552, 0.90527, 1, 0.90186, 1.12308, 1.12308, 1.12308, 1.12308, 1.2566, 1.2566, 1.2566, 0.89552, 0.89552, 1.42259, 0.68994, 1.03809, 1, 1, 1.0176, 1.0176, 1.11523, 1.4956, 2.01462, 0.97858, 0.82616, 0.91133, 0.83437, 0.91133, 1, 1, 1, 0.70508, 1, 1.23108, 0.79801, 0.84426, 0.84426, 0.774, 0.90572, 1.81055, 0.90749, 1.81055, 1.28809, 1.55469, 0.94434, 1.07806, 1, 0.97094, 0.7589, 0.85284, 0.90747, 1.19658, 0.69825, 0.97622, 1.33512, 0.90747, 0.90747, 0.85284, 0.90747, 0.90747, 1.44947, 0.85284, 0.8941, 0.8941, 0.70572, 0.8, 0.70572, 0.70572, 0.70572, 0.70572, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.99862, 0.99862, 1, 1, 1, 1, 1, 1.0336, 0.91027, 1, 1, 1, 0.99862, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.05859, 1.05859, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.CalibriItalicFactors = CalibriItalicFactors;\nconst CalibriItalicMetrics = {\n lineHeight: 1.2207,\n lineGap: 0.2207\n};\nexports.CalibriItalicMetrics = CalibriItalicMetrics;\nconst CalibriRegularFactors = [1.3877, 1, 1, 1, 1.17223, 1.1293, 0.89552, 0.91133, 0.80395, 1.02269, 1.15601, 0.91056, 0.91056, 1.2798, 0.85284, 0.89807, 1, 0.90861, 1.39016, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.91133, 0.96309, 0.96309, 0.85284, 0.85284, 0.85284, 0.83319, 0.88071, 0.8675, 0.81552, 0.73834, 0.85193, 0.73206, 0.7522, 0.81105, 0.86275, 0.90685, 0.6377, 0.77892, 0.75593, 1.02638, 0.89385, 0.85122, 0.77452, 0.86503, 0.75186, 0.68887, 0.79776, 0.88844, 0.85066, 0.94258, 0.77818, 0.7306, 0.76659, 1.10369, 1.39016, 1.10369, 1.06139, 0.89552, 0.8739, 0.86128, 0.94469, 0.8457, 0.94469, 0.89464, 1.09842, 0.84636, 0.94469, 1.03297, 1.07692, 0.90918, 1.03297, 0.95897, 0.94469, 0.9482, 0.94469, 0.94469, 1.04692, 0.78223, 1.20562, 0.94469, 0.90332, 0.98986, 0.86621, 0.90527, 0.79004, 0.94152, 1.77256, 0.94152, 0.85284, 0.97801, 0.89552, 0.91133, 0.89552, 0.91133, 1.91729, 0.89552, 1.17889, 1.13254, 1.08707, 0.92098, 0.85284, 0.68787, 0.71353, 0.84737, 0.90747, 1.0088, 1.0044, 0.87683, 1, 1.09091, 1, 0.92229, 0.739, 1.15642, 0.92098, 0.76288, 0.80504, 0.80972, 0.75859, 0.8675, 0.8675, 0.8675, 0.8675, 0.8675, 0.8675, 0.76318, 0.73834, 0.73206, 0.73206, 0.73206, 0.73206, 0.90685, 0.90685, 0.90685, 0.90685, 0.86477, 0.89385, 0.85122, 0.85122, 0.85122, 0.85122, 0.85122, 0.85284, 0.85311, 0.88844, 0.88844, 0.88844, 0.88844, 0.7306, 0.77452, 0.86331, 0.86128, 0.86128, 0.86128, 0.86128, 0.86128, 0.86128, 0.8693, 0.8457, 0.89464, 0.89464, 0.89464, 0.89464, 0.82601, 0.82601, 0.82601, 0.82601, 0.94469, 0.94469, 0.9482, 0.9482, 0.9482, 0.9482, 0.9482, 0.90747, 0.86651, 0.94469, 0.94469, 0.94469, 0.94469, 0.90527, 0.94469, 0.90527, 0.8675, 0.86128, 0.8675, 0.86128, 0.8675, 0.86128, 0.73834, 0.8457, 0.73834, 0.8457, 0.73834, 0.8457, 0.73834, 0.8457, 0.85193, 0.92454, 0.86477, 0.9921, 0.73206, 0.89464, 0.73206, 0.89464, 0.73206, 0.89464, 0.73206, 0.89464, 0.73206, 0.89464, 0.81105, 0.84636, 0.81105, 0.84636, 0.81105, 0.84636, 1, 1, 0.86275, 0.94469, 0.90872, 0.95786, 0.90685, 0.82601, 0.90685, 0.82601, 0.90685, 0.82601, 0.90685, 1.03297, 0.90685, 0.82601, 0.77741, 1.05611, 0.6377, 1.07692, 1, 1, 0.90918, 0.75593, 1.03297, 1, 1, 0.76032, 0.90452, 0.98156, 1.11842, 0.77261, 1.11429, 0.89385, 0.94469, 1, 1, 0.89385, 0.94469, 0.95877, 0.86901, 0.94469, 0.85122, 0.9482, 0.85122, 0.9482, 0.85122, 0.9482, 0.8667, 0.90016, 0.75186, 1.04692, 1, 1, 0.75186, 1.04692, 0.68887, 0.78223, 0.68887, 0.78223, 0.68887, 0.78223, 0.68887, 0.78223, 1, 1, 0.79776, 0.92188, 0.79776, 1.23023, 0.88844, 0.94469, 0.88844, 0.94469, 0.88844, 0.94469, 0.88844, 0.94469, 0.88844, 0.94469, 0.88844, 0.94469, 0.94258, 0.98986, 0.7306, 0.90527, 0.7306, 0.76659, 0.79004, 0.76659, 0.79004, 0.76659, 0.79004, 1.09231, 0.54873, 0.8675, 0.86128, 0.76318, 0.8693, 0.85311, 0.86651, 1, 1, 0.79776, 1.20562, 1.18622, 1.18622, 1, 1.1437, 0.67742, 0.96334, 0.93695, 1.35191, 1.40909, 0.95161, 1.48387, 0.86686, 0.90861, 0.62267, 0.74359, 0.65649, 0.85498, 0.56963, 0.88254, 1.23516, 0.8675, 0.81552, 0.75443, 0.84503, 0.73206, 0.76659, 0.86275, 0.85122, 0.90685, 0.77892, 0.85746, 1.02638, 0.89385, 0.75657, 0.85122, 0.86275, 0.77452, 0.74171, 0.79776, 0.7306, 0.95165, 0.77818, 0.89772, 0.88831, 0.90685, 0.7306, 0.98142, 1.02191, 0.96576, 1.23516, 0.99018, 0.98142, 0.9236, 0.89258, 0.94035, 1.02191, 0.78848, 0.96576, 0.9561, 1.23516, 0.90918, 0.92578, 0.95424, 0.89746, 0.83969, 0.9482, 0.80113, 0.89442, 0.85208, 0.86155, 0.98022, 0.99018, 1.00452, 0.81209, 0.99247, 0.89181, 1.23516, 0.99018, 0.9482, 0.99018, 0.89181, 0.73206, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.88844, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.89464, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.96766, 1, 1, 1, 1, 1, 1, 0.94258, 0.98986, 0.94258, 0.98986, 0.94258, 0.98986, 0.7306, 0.90527, 1, 1, 0.89552, 0.90527, 1, 0.90186, 1.12308, 1.12308, 1.12308, 1.12308, 1.2566, 1.2566, 1.2566, 0.89552, 0.89552, 1.42259, 0.69043, 1.03809, 1, 1, 1.0176, 1.0176, 1.11523, 1.4956, 2.01462, 0.99331, 0.82616, 0.91133, 0.84286, 0.91133, 1, 1, 1, 0.70508, 1, 1.23108, 0.79801, 0.84426, 0.84426, 0.774, 0.90527, 1.81055, 0.90527, 1.81055, 1.28809, 1.55469, 0.94434, 1.07806, 1, 0.97094, 0.7589, 0.85284, 0.90747, 1.19658, 0.69825, 0.97622, 1.33512, 0.90747, 0.90747, 0.85356, 0.90747, 0.90747, 1.44947, 0.85284, 0.8941, 0.8941, 0.70572, 0.8, 0.70572, 0.70572, 0.70572, 0.70572, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.99862, 0.99862, 1, 1, 1, 1, 1, 1.0336, 0.91027, 1, 1, 1, 0.99862, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.05859, 1.05859, 1, 1, 1, 1.07185, 0.99413, 0.96334, 1.08065, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.CalibriRegularFactors = CalibriRegularFactors;\nconst CalibriRegularMetrics = {\n lineHeight: 1.2207,\n lineGap: 0.2207\n};\nexports.CalibriRegularMetrics = CalibriRegularMetrics;\n\n/***/ }),\n/* 53 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.HelveticaRegularMetrics = exports.HelveticaRegularFactors = exports.HelveticaItalicMetrics = exports.HelveticaItalicFactors = exports.HelveticaBoldMetrics = exports.HelveticaBoldItalicMetrics = exports.HelveticaBoldItalicFactors = exports.HelveticaBoldFactors = void 0;\nconst HelveticaBoldFactors = [0.76116, 1, 1, 1.0006, 0.99998, 0.99974, 0.99973, 0.99973, 0.99982, 0.99977, 1.00087, 0.99998, 0.99998, 0.99959, 1.00003, 1.0006, 0.99998, 1.0006, 1.0006, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99998, 1, 1.00003, 1.00003, 1.00003, 1.00026, 0.9999, 0.99977, 0.99977, 0.99977, 0.99977, 1.00001, 1.00026, 1.00022, 0.99977, 1.0006, 0.99973, 0.99977, 1.00026, 0.99999, 0.99977, 1.00022, 1.00001, 1.00022, 0.99977, 1.00001, 1.00026, 0.99977, 1.00001, 1.00016, 1.00001, 1.00001, 1.00026, 0.99998, 1.0006, 0.99998, 1.00003, 0.99973, 0.99998, 0.99973, 1.00026, 0.99973, 1.00026, 0.99973, 0.99998, 1.00026, 1.00026, 1.0006, 1.0006, 0.99973, 1.0006, 0.99982, 1.00026, 1.00026, 1.00026, 1.00026, 0.99959, 0.99973, 0.99998, 1.00026, 0.99973, 1.00022, 0.99973, 0.99973, 1, 0.99959, 1.00077, 0.99959, 1.00003, 0.99998, 0.99973, 0.99973, 0.99973, 0.99973, 1.00077, 0.99973, 0.99998, 1.00025, 0.99968, 0.99973, 1.00003, 1.00025, 0.60299, 1.00024, 1.06409, 1, 1, 0.99998, 1, 0.99973, 1.0006, 0.99998, 1, 0.99936, 0.99973, 1.00002, 1.00002, 1.00002, 1.00026, 0.99977, 0.99977, 0.99977, 0.99977, 0.99977, 0.99977, 1, 0.99977, 1.00001, 1.00001, 1.00001, 1.00001, 1.0006, 1.0006, 1.0006, 1.0006, 0.99977, 0.99977, 1.00022, 1.00022, 1.00022, 1.00022, 1.00022, 1.00003, 1.00022, 0.99977, 0.99977, 0.99977, 0.99977, 1.00001, 1.00001, 1.00026, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99982, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 1.0006, 1.0006, 1.0006, 1.0006, 1.00026, 1.00026, 1.00026, 1.00026, 1.00026, 1.00026, 1.00026, 1.06409, 1.00026, 1.00026, 1.00026, 1.00026, 1.00026, 0.99973, 1.00026, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 1.03374, 0.99977, 1.00026, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00022, 1.00026, 1.00022, 1.00026, 1.00022, 1.00026, 1.00022, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.00042, 0.99973, 0.99973, 1.0006, 0.99977, 0.99973, 0.99973, 1.00026, 1.0006, 1.00026, 1.0006, 1.00026, 1.03828, 1.00026, 0.99999, 1.00026, 1.0006, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 0.9993, 0.9998, 1.00026, 1.00022, 1.00026, 1.00022, 1.00026, 1.00022, 1.00026, 1, 1.00016, 0.99977, 0.99959, 0.99977, 0.99959, 0.99977, 0.99959, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00026, 0.99998, 1.00026, 0.8121, 1.00026, 0.99998, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 1.00016, 1.00022, 1.00001, 0.99973, 1.00001, 1.00026, 1, 1.00026, 1, 1.00026, 1, 1.0006, 0.99973, 0.99977, 0.99973, 1, 0.99982, 1.00022, 1.00026, 1.00001, 0.99973, 1.00026, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 1.00034, 0.99977, 1, 0.99997, 1.00026, 1.00078, 1.00036, 0.99973, 1.00013, 1.0006, 0.99977, 0.99977, 0.99988, 0.85148, 1.00001, 1.00026, 0.99977, 1.00022, 1.0006, 0.99977, 1.00001, 0.99999, 0.99977, 1.00069, 1.00022, 0.99977, 1.00001, 0.99984, 1.00026, 1.00001, 1.00024, 1.00001, 0.9999, 1, 1.0006, 1.00001, 1.00041, 0.99962, 1.00026, 1.0006, 0.99995, 1.00041, 0.99942, 0.99973, 0.99927, 1.00082, 0.99902, 1.00026, 1.00087, 1.0006, 1.00069, 0.99973, 0.99867, 0.99973, 0.9993, 1.00026, 1.00049, 1.00056, 1, 0.99988, 0.99935, 0.99995, 0.99954, 1.00055, 0.99945, 1.00032, 1.0006, 0.99995, 1.00026, 0.99995, 1.00032, 1.00001, 1.00008, 0.99971, 1.00019, 0.9994, 1.00001, 1.0006, 1.00044, 0.99973, 1.00023, 1.00047, 1, 0.99942, 0.99561, 0.99989, 1.00035, 0.99977, 1.00035, 0.99977, 1.00019, 0.99944, 1.00001, 1.00021, 0.99926, 1.00035, 1.00035, 0.99942, 1.00048, 0.99999, 0.99977, 1.00022, 1.00035, 1.00001, 0.99977, 1.00026, 0.99989, 1.00057, 1.00001, 0.99936, 1.00052, 1.00012, 0.99996, 1.00043, 1, 1.00035, 0.9994, 0.99976, 1.00035, 0.99973, 1.00052, 1.00041, 1.00119, 1.00037, 0.99973, 1.00002, 0.99986, 1.00041, 1.00041, 0.99902, 0.9996, 1.00034, 0.99999, 1.00026, 0.99999, 1.00026, 0.99973, 1.00052, 0.99973, 1, 0.99973, 1.00041, 1.00075, 0.9994, 1.0003, 0.99999, 1, 1.00041, 0.99955, 1, 0.99915, 0.99973, 0.99973, 1.00026, 1.00119, 0.99955, 0.99973, 1.0006, 0.99911, 1.0006, 1.00026, 0.99972, 1.00026, 0.99902, 1.00041, 0.99973, 0.99999, 1, 1, 1.00038, 1.0005, 1.00016, 1.00022, 1.00016, 1.00022, 1.00016, 1.00022, 1.00001, 0.99973, 1, 1, 0.99973, 1, 1, 0.99955, 1.0006, 1.0006, 1.0006, 1.0006, 1, 1, 1, 0.99973, 0.99973, 0.99972, 1, 1, 1.00106, 0.99999, 0.99998, 0.99998, 0.99999, 0.99998, 1.66475, 1, 0.99973, 0.99973, 1.00023, 0.99973, 0.99971, 1.00047, 1.00023, 1, 0.99991, 0.99984, 1.00002, 1.00002, 1.00002, 1.00002, 1, 1, 1, 1, 1, 1, 1, 0.99972, 1, 1.20985, 1.39713, 1.00003, 1.00031, 1.00015, 1, 0.99561, 1.00027, 1.00031, 1.00031, 0.99915, 1.00031, 1.00031, 0.99999, 1.00003, 0.99999, 0.99999, 1.41144, 1.6, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.40579, 1.40579, 1.36625, 0.99999, 1, 0.99861, 0.99861, 1, 1.00026, 1.00026, 1.00026, 1.00026, 0.99972, 0.99999, 0.99999, 0.99999, 0.99999, 1.40483, 1, 0.99977, 1.00054, 1, 1, 0.99953, 0.99962, 1.00042, 0.9995, 1, 1, 1, 1, 1, 1, 1, 1, 0.99998, 0.99998, 0.99998, 0.99998, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.HelveticaBoldFactors = HelveticaBoldFactors;\nconst HelveticaBoldMetrics = {\n lineHeight: 1.2,\n lineGap: 0.2\n};\nexports.HelveticaBoldMetrics = HelveticaBoldMetrics;\nconst HelveticaBoldItalicFactors = [0.76116, 1, 1, 1.0006, 0.99998, 0.99974, 0.99973, 0.99973, 0.99982, 0.99977, 1.00087, 0.99998, 0.99998, 0.99959, 1.00003, 1.0006, 0.99998, 1.0006, 1.0006, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99998, 1, 1.00003, 1.00003, 1.00003, 1.00026, 0.9999, 0.99977, 0.99977, 0.99977, 0.99977, 1.00001, 1.00026, 1.00022, 0.99977, 1.0006, 0.99973, 0.99977, 1.00026, 0.99999, 0.99977, 1.00022, 1.00001, 1.00022, 0.99977, 1.00001, 1.00026, 0.99977, 1.00001, 1.00016, 1.00001, 1.00001, 1.00026, 0.99998, 1.0006, 0.99998, 1.00003, 0.99973, 0.99998, 0.99973, 1.00026, 0.99973, 1.00026, 0.99973, 0.99998, 1.00026, 1.00026, 1.0006, 1.0006, 0.99973, 1.0006, 0.99982, 1.00026, 1.00026, 1.00026, 1.00026, 0.99959, 0.99973, 0.99998, 1.00026, 0.99973, 1.00022, 0.99973, 0.99973, 1, 0.99959, 1.00077, 0.99959, 1.00003, 0.99998, 0.99973, 0.99973, 0.99973, 0.99973, 1.00077, 0.99973, 0.99998, 1.00025, 0.99968, 0.99973, 1.00003, 1.00025, 0.60299, 1.00024, 1.06409, 1, 1, 0.99998, 1, 0.99973, 1.0006, 0.99998, 1, 0.99936, 0.99973, 1.00002, 1.00002, 1.00002, 1.00026, 0.99977, 0.99977, 0.99977, 0.99977, 0.99977, 0.99977, 1, 0.99977, 1.00001, 1.00001, 1.00001, 1.00001, 1.0006, 1.0006, 1.0006, 1.0006, 0.99977, 0.99977, 1.00022, 1.00022, 1.00022, 1.00022, 1.00022, 1.00003, 1.00022, 0.99977, 0.99977, 0.99977, 0.99977, 1.00001, 1.00001, 1.00026, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99982, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 1.0006, 1.0006, 1.0006, 1.0006, 1.00026, 1.00026, 1.00026, 1.00026, 1.00026, 1.00026, 1.00026, 1.06409, 1.00026, 1.00026, 1.00026, 1.00026, 1.00026, 0.99973, 1.00026, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 1.0044, 0.99977, 1.00026, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00022, 1.00026, 1.00022, 1.00026, 1.00022, 1.00026, 1.00022, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 0.99971, 0.99973, 0.99973, 1.0006, 0.99977, 0.99973, 0.99973, 1.00026, 1.0006, 1.00026, 1.0006, 1.00026, 1.01011, 1.00026, 0.99999, 1.00026, 1.0006, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 0.9993, 0.9998, 1.00026, 1.00022, 1.00026, 1.00022, 1.00026, 1.00022, 1.00026, 1, 1.00016, 0.99977, 0.99959, 0.99977, 0.99959, 0.99977, 0.99959, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00026, 0.99998, 1.00026, 0.8121, 1.00026, 0.99998, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 0.99977, 1.00026, 1.00016, 1.00022, 1.00001, 0.99973, 1.00001, 1.00026, 1, 1.00026, 1, 1.00026, 1, 1.0006, 0.99973, 0.99977, 0.99973, 1, 0.99982, 1.00022, 1.00026, 1.00001, 0.99973, 1.00026, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99977, 1, 1, 1.00026, 0.99969, 0.99972, 0.99981, 0.9998, 1.0006, 0.99977, 0.99977, 1.00022, 0.91155, 1.00001, 1.00026, 0.99977, 1.00022, 1.0006, 0.99977, 1.00001, 0.99999, 0.99977, 0.99966, 1.00022, 1.00032, 1.00001, 0.99944, 1.00026, 1.00001, 0.99968, 1.00001, 1.00047, 1, 1.0006, 1.00001, 0.99981, 1.00101, 1.00026, 1.0006, 0.99948, 0.99981, 1.00064, 0.99973, 0.99942, 1.00101, 1.00061, 1.00026, 1.00069, 1.0006, 1.00014, 0.99973, 1.01322, 0.99973, 1.00065, 1.00026, 1.00012, 0.99923, 1, 1.00064, 1.00076, 0.99948, 1.00055, 1.00063, 1.00007, 0.99943, 1.0006, 0.99948, 1.00026, 0.99948, 0.99943, 1.00001, 1.00001, 1.00029, 1.00038, 1.00035, 1.00001, 1.0006, 1.0006, 0.99973, 0.99978, 1.00001, 1.00057, 0.99989, 0.99967, 0.99964, 0.99967, 0.99977, 0.99999, 0.99977, 1.00038, 0.99977, 1.00001, 0.99973, 1.00066, 0.99967, 0.99967, 1.00041, 0.99998, 0.99999, 0.99977, 1.00022, 0.99967, 1.00001, 0.99977, 1.00026, 0.99964, 1.00031, 1.00001, 0.99999, 0.99999, 1, 1.00023, 1, 1, 0.99999, 1.00035, 1.00001, 0.99999, 0.99973, 0.99977, 0.99999, 1.00058, 0.99973, 0.99973, 0.99955, 0.9995, 1.00026, 1.00026, 1.00032, 0.99989, 1.00034, 0.99999, 1.00026, 1.00026, 1.00026, 0.99973, 0.45998, 0.99973, 1.00026, 0.99973, 1.00001, 0.99999, 0.99982, 0.99994, 0.99996, 1, 1.00042, 1.00044, 1.00029, 1.00023, 0.99973, 0.99973, 1.00026, 0.99949, 1.00002, 0.99973, 1.0006, 1.0006, 1.0006, 0.99975, 1.00026, 1.00026, 1.00032, 0.98685, 0.99973, 1.00026, 1, 1, 0.99966, 1.00044, 1.00016, 1.00022, 1.00016, 1.00022, 1.00016, 1.00022, 1.00001, 0.99973, 1, 1, 0.99973, 1, 1, 0.99955, 1.0006, 1.0006, 1.0006, 1.0006, 1, 1, 1, 0.99973, 0.99973, 0.99972, 1, 1, 1.00106, 0.99999, 0.99998, 0.99998, 0.99999, 0.99998, 1.66475, 1, 0.99973, 0.99973, 1, 0.99973, 0.99971, 0.99978, 1, 1, 0.99991, 0.99984, 1.00002, 1.00002, 1.00002, 1.00002, 1.00098, 1, 1, 1, 1.00049, 1, 1, 0.99972, 1, 1.20985, 1.39713, 1.00003, 1.00031, 1.00015, 1, 0.99561, 1.00027, 1.00031, 1.00031, 0.99915, 1.00031, 1.00031, 0.99999, 1.00003, 0.99999, 0.99999, 1.41144, 1.6, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.40579, 1.40579, 1.36625, 0.99999, 1, 0.99861, 0.99861, 1, 1.00026, 1.00026, 1.00026, 1.00026, 0.99972, 0.99999, 0.99999, 0.99999, 0.99999, 1.40483, 1, 0.99977, 1.00054, 1, 1, 0.99953, 0.99962, 1.00042, 0.9995, 1, 1, 1, 1, 1, 1, 1, 1, 0.99998, 0.99998, 0.99998, 0.99998, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.HelveticaBoldItalicFactors = HelveticaBoldItalicFactors;\nconst HelveticaBoldItalicMetrics = {\n lineHeight: 1.35,\n lineGap: 0.2\n};\nexports.HelveticaBoldItalicMetrics = HelveticaBoldItalicMetrics;\nconst HelveticaItalicFactors = [0.76116, 1, 1, 1.0006, 1.0006, 1.00006, 0.99973, 0.99973, 0.99982, 1.00001, 1.00043, 0.99998, 0.99998, 0.99959, 1.00003, 1.0006, 0.99998, 1.0006, 1.0006, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 1.0006, 1, 1.00003, 1.00003, 1.00003, 0.99973, 0.99987, 1.00001, 1.00001, 0.99977, 0.99977, 1.00001, 1.00026, 1.00022, 0.99977, 1.0006, 1, 1.00001, 0.99973, 0.99999, 0.99977, 1.00022, 1.00001, 1.00022, 0.99977, 1.00001, 1.00026, 0.99977, 1.00001, 1.00016, 1.00001, 1.00001, 1.00026, 1.0006, 1.0006, 1.0006, 0.99949, 0.99973, 0.99998, 0.99973, 0.99973, 1, 0.99973, 0.99973, 1.0006, 0.99973, 0.99973, 0.99924, 0.99924, 1, 0.99924, 0.99999, 0.99973, 0.99973, 0.99973, 0.99973, 0.99998, 1, 1.0006, 0.99973, 1, 0.99977, 1, 1, 1, 1.00005, 1.0009, 1.00005, 1.00003, 0.99998, 0.99973, 0.99973, 0.99973, 0.99973, 1.0009, 0.99973, 0.99998, 1.00025, 0.99968, 0.99973, 1.00003, 1.00025, 0.60299, 1.00024, 1.06409, 1, 1, 0.99998, 1, 0.9998, 1.0006, 0.99998, 1, 0.99936, 0.99973, 1.00002, 1.00002, 1.00002, 1.00026, 1.00001, 1.00001, 1.00001, 1.00001, 1.00001, 1.00001, 1, 0.99977, 1.00001, 1.00001, 1.00001, 1.00001, 1.0006, 1.0006, 1.0006, 1.0006, 0.99977, 0.99977, 1.00022, 1.00022, 1.00022, 1.00022, 1.00022, 1.00003, 1.00022, 0.99977, 0.99977, 0.99977, 0.99977, 1.00001, 1.00001, 1.00026, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99982, 1, 0.99973, 0.99973, 0.99973, 0.99973, 1.0006, 1.0006, 1.0006, 1.0006, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 1.06409, 1.00026, 0.99973, 0.99973, 0.99973, 0.99973, 1, 0.99973, 1, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 0.99977, 1, 0.99977, 1, 0.99977, 1, 0.99977, 1, 0.99977, 1.0288, 0.99977, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 0.99924, 1.0006, 1.0006, 0.99946, 1.00034, 1, 0.99924, 1.00001, 1, 1, 0.99973, 0.99924, 0.99973, 0.99924, 0.99973, 1.06311, 0.99973, 1.00024, 0.99973, 0.99924, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 1.00041, 0.9998, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 1, 1.00016, 0.99977, 0.99998, 0.99977, 0.99998, 0.99977, 0.99998, 1.00001, 1, 1.00001, 1, 1.00001, 1, 1.00001, 1, 1.00026, 1.0006, 1.00026, 0.89547, 1.00026, 1.0006, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 1.00016, 0.99977, 1.00001, 1, 1.00001, 1.00026, 1, 1.00026, 1, 1.00026, 1, 0.99924, 0.99973, 1.00001, 0.99973, 1, 0.99982, 1.00022, 1.00026, 1.00001, 1, 1.00026, 1.0006, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 1.00001, 1, 1.00054, 0.99977, 1.00084, 1.00007, 0.99973, 1.00013, 0.99924, 1.00001, 1.00001, 0.99945, 0.91221, 1.00001, 1.00026, 0.99977, 1.00022, 1.0006, 1.00001, 1.00001, 0.99999, 0.99977, 0.99933, 1.00022, 1.00054, 1.00001, 1.00065, 1.00026, 1.00001, 1.0001, 1.00001, 1.00052, 1, 1.0006, 1.00001, 0.99945, 0.99897, 0.99968, 0.99924, 1.00036, 0.99945, 0.99949, 1, 1.0006, 0.99897, 0.99918, 0.99968, 0.99911, 0.99924, 1, 0.99962, 1.01487, 1, 1.0005, 0.99973, 1.00012, 1.00043, 1, 0.99995, 0.99994, 1.00036, 0.99947, 1.00019, 1.00063, 1.00025, 0.99924, 1.00036, 0.99973, 1.00036, 1.00025, 1.00001, 1.00001, 1.00027, 1.0001, 1.00068, 1.00001, 1.0006, 1.0006, 1, 1.00008, 0.99957, 0.99972, 0.9994, 0.99954, 0.99975, 1.00051, 1.00001, 1.00019, 1.00001, 1.0001, 0.99986, 1.00001, 1.00001, 1.00038, 0.99954, 0.99954, 0.9994, 1.00066, 0.99999, 0.99977, 1.00022, 1.00054, 1.00001, 0.99977, 1.00026, 0.99975, 1.0001, 1.00001, 0.99993, 0.9995, 0.99955, 1.00016, 0.99978, 0.99974, 1.00019, 1.00022, 0.99955, 1.00053, 0.99973, 1.00089, 1.00005, 0.99967, 1.00048, 0.99973, 1.00002, 1.00034, 0.99973, 0.99973, 0.99964, 1.00006, 1.00066, 0.99947, 0.99973, 0.98894, 0.99973, 1, 0.44898, 1, 0.99946, 1, 1.00039, 1.00082, 0.99991, 0.99991, 0.99985, 1.00022, 1.00023, 1.00061, 1.00006, 0.99966, 0.99973, 0.99973, 0.99973, 1.00019, 1.0008, 1, 0.99924, 0.99924, 0.99924, 0.99983, 1.00044, 0.99973, 0.99964, 0.98332, 1, 0.99973, 1, 1, 0.99962, 0.99895, 1.00016, 0.99977, 1.00016, 0.99977, 1.00016, 0.99977, 1.00001, 1, 1, 1, 0.99973, 1, 1, 0.99955, 0.99924, 0.99924, 0.99924, 0.99924, 0.99998, 0.99998, 0.99998, 0.99973, 0.99973, 0.99972, 1, 1, 1.00267, 0.99999, 0.99998, 0.99998, 1, 0.99998, 1.66475, 1, 0.99973, 0.99973, 1.00023, 0.99973, 1.00423, 0.99925, 0.99999, 1, 0.99991, 0.99984, 1.00002, 1.00002, 1.00002, 1.00002, 1.00049, 1, 1.00245, 1, 1, 1, 1, 0.96329, 1, 1.20985, 1.39713, 1.00003, 0.8254, 1.00015, 1, 1.00035, 1.00027, 1.00031, 1.00031, 1.00003, 1.00031, 1.00031, 0.99999, 1.00003, 0.99999, 0.99999, 1.41144, 1.6, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.40579, 1.40579, 1.36625, 0.99999, 1, 0.99861, 0.99861, 1, 1.00026, 1.00026, 1.00026, 1.00026, 0.95317, 0.99999, 0.99999, 0.99999, 0.99999, 1.40483, 1, 0.99977, 1.00054, 1, 1, 0.99953, 0.99962, 1.00042, 0.9995, 1, 1, 1, 1, 1, 1, 1, 1, 0.99998, 0.99998, 0.99998, 0.99998, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.HelveticaItalicFactors = HelveticaItalicFactors;\nconst HelveticaItalicMetrics = {\n lineHeight: 1.35,\n lineGap: 0.2\n};\nexports.HelveticaItalicMetrics = HelveticaItalicMetrics;\nconst HelveticaRegularFactors = [0.76116, 1, 1, 1.0006, 1.0006, 1.00006, 0.99973, 0.99973, 0.99982, 1.00001, 1.00043, 0.99998, 0.99998, 0.99959, 1.00003, 1.0006, 0.99998, 1.0006, 1.0006, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 1.0006, 1, 1.00003, 1.00003, 1.00003, 0.99973, 0.99987, 1.00001, 1.00001, 0.99977, 0.99977, 1.00001, 1.00026, 1.00022, 0.99977, 1.0006, 1, 1.00001, 0.99973, 0.99999, 0.99977, 1.00022, 1.00001, 1.00022, 0.99977, 1.00001, 1.00026, 0.99977, 1.00001, 1.00016, 1.00001, 1.00001, 1.00026, 1.0006, 1.0006, 1.0006, 0.99949, 0.99973, 0.99998, 0.99973, 0.99973, 1, 0.99973, 0.99973, 1.0006, 0.99973, 0.99973, 0.99924, 0.99924, 1, 0.99924, 0.99999, 0.99973, 0.99973, 0.99973, 0.99973, 0.99998, 1, 1.0006, 0.99973, 1, 0.99977, 1, 1, 1, 1.00005, 1.0009, 1.00005, 1.00003, 0.99998, 0.99973, 0.99973, 0.99973, 0.99973, 1.0009, 0.99973, 0.99998, 1.00025, 0.99968, 0.99973, 1.00003, 1.00025, 0.60299, 1.00024, 1.06409, 1, 1, 0.99998, 1, 0.9998, 1.0006, 0.99998, 1, 0.99936, 0.99973, 1.00002, 1.00002, 1.00002, 1.00026, 1.00001, 1.00001, 1.00001, 1.00001, 1.00001, 1.00001, 1, 0.99977, 1.00001, 1.00001, 1.00001, 1.00001, 1.0006, 1.0006, 1.0006, 1.0006, 0.99977, 0.99977, 1.00022, 1.00022, 1.00022, 1.00022, 1.00022, 1.00003, 1.00022, 0.99977, 0.99977, 0.99977, 0.99977, 1.00001, 1.00001, 1.00026, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99982, 1, 0.99973, 0.99973, 0.99973, 0.99973, 1.0006, 1.0006, 1.0006, 1.0006, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 0.99973, 1.06409, 1.00026, 0.99973, 0.99973, 0.99973, 0.99973, 1, 0.99973, 1, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 0.99977, 1, 0.99977, 1, 0.99977, 1, 0.99977, 1, 0.99977, 1.04596, 0.99977, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00001, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 1.0006, 0.99924, 1.0006, 1.0006, 1.00019, 1.00034, 1, 0.99924, 1.00001, 1, 1, 0.99973, 0.99924, 0.99973, 0.99924, 0.99973, 1.02572, 0.99973, 1.00005, 0.99973, 0.99924, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99999, 0.9998, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 1.00022, 0.99973, 1, 1.00016, 0.99977, 0.99998, 0.99977, 0.99998, 0.99977, 0.99998, 1.00001, 1, 1.00001, 1, 1.00001, 1, 1.00001, 1, 1.00026, 1.0006, 1.00026, 0.84533, 1.00026, 1.0006, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 0.99977, 0.99973, 1.00016, 0.99977, 1.00001, 1, 1.00001, 1.00026, 1, 1.00026, 1, 1.00026, 1, 0.99924, 0.99973, 1.00001, 0.99973, 1, 0.99982, 1.00022, 1.00026, 1.00001, 1, 1.00026, 1.0006, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99998, 0.99928, 1, 0.99977, 1.00013, 1.00055, 0.99947, 0.99945, 0.99941, 0.99924, 1.00001, 1.00001, 1.0004, 0.91621, 1.00001, 1.00026, 0.99977, 1.00022, 1.0006, 1.00001, 1.00005, 0.99999, 0.99977, 1.00015, 1.00022, 0.99977, 1.00001, 0.99973, 1.00026, 1.00001, 1.00019, 1.00001, 0.99946, 1, 1.0006, 1.00001, 0.99978, 1.00045, 0.99973, 0.99924, 1.00023, 0.99978, 0.99966, 1, 1.00065, 1.00045, 1.00019, 0.99973, 0.99973, 0.99924, 1, 1, 0.96499, 1, 1.00055, 0.99973, 1.00008, 1.00027, 1, 0.9997, 0.99995, 1.00023, 0.99933, 1.00019, 1.00015, 1.00031, 0.99924, 1.00023, 0.99973, 1.00023, 1.00031, 1.00001, 0.99928, 1.00029, 1.00092, 1.00035, 1.00001, 1.0006, 1.0006, 1, 0.99988, 0.99975, 1, 1.00082, 0.99561, 0.9996, 1.00035, 1.00001, 0.99962, 1.00001, 1.00092, 0.99964, 1.00001, 0.99963, 0.99999, 1.00035, 1.00035, 1.00082, 0.99962, 0.99999, 0.99977, 1.00022, 1.00035, 1.00001, 0.99977, 1.00026, 0.9996, 0.99967, 1.00001, 1.00034, 1.00074, 1.00054, 1.00053, 1.00063, 0.99971, 0.99962, 1.00035, 0.99975, 0.99977, 0.99973, 1.00043, 0.99953, 1.0007, 0.99915, 0.99973, 1.00008, 0.99892, 1.00073, 1.00073, 1.00114, 0.99915, 1.00073, 0.99955, 0.99973, 1.00092, 0.99973, 1, 0.99998, 1, 1.0003, 1, 1.00043, 1.00001, 0.99969, 1.0003, 1, 1.00035, 1.00001, 0.9995, 1, 1.00092, 0.99973, 0.99973, 0.99973, 1.0007, 0.9995, 1, 0.99924, 1.0006, 0.99924, 0.99972, 1.00062, 0.99973, 1.00114, 1.00073, 1, 0.99955, 1, 1, 1.00047, 0.99968, 1.00016, 0.99977, 1.00016, 0.99977, 1.00016, 0.99977, 1.00001, 1, 1, 1, 0.99973, 1, 1, 0.99955, 0.99924, 0.99924, 0.99924, 0.99924, 0.99998, 0.99998, 0.99998, 0.99973, 0.99973, 0.99972, 1, 1, 1.00267, 0.99999, 0.99998, 0.99998, 1, 0.99998, 1.66475, 1, 0.99973, 0.99973, 1.00023, 0.99973, 0.99971, 0.99925, 1.00023, 1, 0.99991, 0.99984, 1.00002, 1.00002, 1.00002, 1.00002, 1, 1, 1, 1, 1, 1, 1, 0.96329, 1, 1.20985, 1.39713, 1.00003, 0.8254, 1.00015, 1, 1.00035, 1.00027, 1.00031, 1.00031, 0.99915, 1.00031, 1.00031, 0.99999, 1.00003, 0.99999, 0.99999, 1.41144, 1.6, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.41144, 1.40579, 1.40579, 1.36625, 0.99999, 1, 0.99861, 0.99861, 1, 1.00026, 1.00026, 1.00026, 1.00026, 0.95317, 0.99999, 0.99999, 0.99999, 0.99999, 1.40483, 1, 0.99977, 1.00054, 1, 1, 0.99953, 0.99962, 1.00042, 0.9995, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.HelveticaRegularFactors = HelveticaRegularFactors;\nconst HelveticaRegularMetrics = {\n lineHeight: 1.2,\n lineGap: 0.2\n};\nexports.HelveticaRegularMetrics = HelveticaRegularMetrics;\n\n/***/ }),\n/* 54 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.LiberationSansRegularWidths = exports.LiberationSansRegularMapping = exports.LiberationSansItalicWidths = exports.LiberationSansItalicMapping = exports.LiberationSansBoldWidths = exports.LiberationSansBoldMapping = exports.LiberationSansBoldItalicWidths = exports.LiberationSansBoldItalicMapping = void 0;\nconst LiberationSansBoldWidths = [365, 0, 333, 278, 333, 474, 556, 556, 889, 722, 238, 333, 333, 389, 584, 278, 333, 278, 278, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 333, 333, 584, 584, 584, 611, 975, 722, 722, 722, 722, 667, 611, 778, 722, 278, 556, 722, 611, 833, 722, 778, 667, 778, 722, 667, 611, 722, 667, 944, 667, 667, 611, 333, 278, 333, 584, 556, 333, 556, 611, 556, 611, 556, 333, 611, 611, 278, 278, 556, 278, 889, 611, 611, 611, 611, 389, 556, 333, 611, 556, 778, 556, 556, 500, 389, 280, 389, 584, 333, 556, 556, 556, 556, 280, 556, 333, 737, 370, 556, 584, 737, 552, 400, 549, 333, 333, 333, 576, 556, 278, 333, 333, 365, 556, 834, 834, 834, 611, 722, 722, 722, 722, 722, 722, 1000, 722, 667, 667, 667, 667, 278, 278, 278, 278, 722, 722, 778, 778, 778, 778, 778, 584, 778, 722, 722, 722, 722, 667, 667, 611, 556, 556, 556, 556, 556, 556, 889, 556, 556, 556, 556, 556, 278, 278, 278, 278, 611, 611, 611, 611, 611, 611, 611, 549, 611, 611, 611, 611, 611, 556, 611, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 719, 722, 611, 667, 556, 667, 556, 667, 556, 667, 556, 667, 556, 778, 611, 778, 611, 778, 611, 778, 611, 722, 611, 722, 611, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 785, 556, 556, 278, 722, 556, 556, 611, 278, 611, 278, 611, 385, 611, 479, 611, 278, 722, 611, 722, 611, 722, 611, 708, 723, 611, 778, 611, 778, 611, 778, 611, 1000, 944, 722, 389, 722, 389, 722, 389, 667, 556, 667, 556, 667, 556, 667, 556, 611, 333, 611, 479, 611, 333, 722, 611, 722, 611, 722, 611, 722, 611, 722, 611, 722, 611, 944, 778, 667, 556, 667, 611, 500, 611, 500, 611, 500, 278, 556, 722, 556, 1000, 889, 778, 611, 667, 556, 611, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 465, 722, 333, 853, 906, 474, 825, 927, 838, 278, 722, 722, 601, 719, 667, 611, 722, 778, 278, 722, 667, 833, 722, 644, 778, 722, 667, 600, 611, 667, 821, 667, 809, 802, 278, 667, 615, 451, 611, 278, 582, 615, 610, 556, 606, 475, 460, 611, 541, 278, 558, 556, 612, 556, 445, 611, 766, 619, 520, 684, 446, 582, 715, 576, 753, 845, 278, 582, 611, 582, 845, 667, 669, 885, 567, 711, 667, 278, 276, 556, 1094, 1062, 875, 610, 722, 622, 719, 722, 719, 722, 567, 712, 667, 904, 626, 719, 719, 610, 702, 833, 722, 778, 719, 667, 722, 611, 622, 854, 667, 730, 703, 1005, 1019, 870, 979, 719, 711, 1031, 719, 556, 618, 615, 417, 635, 556, 709, 497, 615, 615, 500, 635, 740, 604, 611, 604, 611, 556, 490, 556, 875, 556, 615, 581, 833, 844, 729, 854, 615, 552, 854, 583, 556, 556, 611, 417, 552, 556, 278, 281, 278, 969, 906, 611, 500, 615, 556, 604, 778, 611, 487, 447, 944, 778, 944, 778, 944, 778, 667, 556, 333, 333, 556, 1000, 1000, 552, 278, 278, 278, 278, 500, 500, 500, 556, 556, 350, 1000, 1000, 240, 479, 333, 333, 604, 333, 167, 396, 556, 556, 1094, 556, 885, 489, 1115, 1000, 768, 600, 834, 834, 834, 834, 1000, 500, 1000, 500, 1000, 500, 500, 494, 612, 823, 713, 584, 549, 713, 979, 722, 274, 549, 549, 583, 549, 549, 604, 584, 604, 604, 708, 625, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 729, 604, 604, 354, 354, 1000, 990, 990, 990, 990, 494, 604, 604, 604, 604, 354, 1021, 1052, 917, 750, 750, 531, 656, 594, 510, 500, 750, 750, 611, 611, 333, 333, 333, 333, 333, 333, 333, 333, 222, 222, 333, 333, 333, 333, 333, 333, 333, 333];\nexports.LiberationSansBoldWidths = LiberationSansBoldWidths;\nconst LiberationSansBoldMapping = [-1, -1, -1, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 402, 506, 507, 508, 509, 510, 511, 536, 537, 538, 539, 710, 711, 713, 728, 729, 730, 731, 732, 733, 900, 901, 902, 903, 904, 905, 906, 908, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1138, 1139, 1168, 1169, 7808, 7809, 7810, 7811, 7812, 7813, 7922, 7923, 8208, 8209, 8211, 8212, 8213, 8215, 8216, 8217, 8218, 8219, 8220, 8221, 8222, 8224, 8225, 8226, 8230, 8240, 8242, 8243, 8249, 8250, 8252, 8254, 8260, 8319, 8355, 8356, 8359, 8364, 8453, 8467, 8470, 8482, 8486, 8494, 8539, 8540, 8541, 8542, 8592, 8593, 8594, 8595, 8596, 8597, 8616, 8706, 8710, 8719, 8721, 8722, 8730, 8734, 8735, 8745, 8747, 8776, 8800, 8801, 8804, 8805, 8962, 8976, 8992, 8993, 9472, 9474, 9484, 9488, 9492, 9496, 9500, 9508, 9516, 9524, 9532, 9552, 9553, 9554, 9555, 9556, 9557, 9558, 9559, 9560, 9561, 9562, 9563, 9564, 9565, 9566, 9567, 9568, 9569, 9570, 9571, 9572, 9573, 9574, 9575, 9576, 9577, 9578, 9579, 9580, 9600, 9604, 9608, 9612, 9616, 9617, 9618, 9619, 9632, 9633, 9642, 9643, 9644, 9650, 9658, 9660, 9668, 9674, 9675, 9679, 9688, 9689, 9702, 9786, 9787, 9788, 9792, 9794, 9824, 9827, 9829, 9830, 9834, 9835, 9836, 61441, 61442, 61445, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1];\nexports.LiberationSansBoldMapping = LiberationSansBoldMapping;\nconst LiberationSansBoldItalicWidths = [365, 0, 333, 278, 333, 474, 556, 556, 889, 722, 238, 333, 333, 389, 584, 278, 333, 278, 278, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 333, 333, 584, 584, 584, 611, 975, 722, 722, 722, 722, 667, 611, 778, 722, 278, 556, 722, 611, 833, 722, 778, 667, 778, 722, 667, 611, 722, 667, 944, 667, 667, 611, 333, 278, 333, 584, 556, 333, 556, 611, 556, 611, 556, 333, 611, 611, 278, 278, 556, 278, 889, 611, 611, 611, 611, 389, 556, 333, 611, 556, 778, 556, 556, 500, 389, 280, 389, 584, 333, 556, 556, 556, 556, 280, 556, 333, 737, 370, 556, 584, 737, 552, 400, 549, 333, 333, 333, 576, 556, 278, 333, 333, 365, 556, 834, 834, 834, 611, 722, 722, 722, 722, 722, 722, 1000, 722, 667, 667, 667, 667, 278, 278, 278, 278, 722, 722, 778, 778, 778, 778, 778, 584, 778, 722, 722, 722, 722, 667, 667, 611, 556, 556, 556, 556, 556, 556, 889, 556, 556, 556, 556, 556, 278, 278, 278, 278, 611, 611, 611, 611, 611, 611, 611, 549, 611, 611, 611, 611, 611, 556, 611, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 740, 722, 611, 667, 556, 667, 556, 667, 556, 667, 556, 667, 556, 778, 611, 778, 611, 778, 611, 778, 611, 722, 611, 722, 611, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 782, 556, 556, 278, 722, 556, 556, 611, 278, 611, 278, 611, 396, 611, 479, 611, 278, 722, 611, 722, 611, 722, 611, 708, 723, 611, 778, 611, 778, 611, 778, 611, 1000, 944, 722, 389, 722, 389, 722, 389, 667, 556, 667, 556, 667, 556, 667, 556, 611, 333, 611, 479, 611, 333, 722, 611, 722, 611, 722, 611, 722, 611, 722, 611, 722, 611, 944, 778, 667, 556, 667, 611, 500, 611, 500, 611, 500, 278, 556, 722, 556, 1000, 889, 778, 611, 667, 556, 611, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 722, 333, 854, 906, 473, 844, 930, 847, 278, 722, 722, 610, 671, 667, 611, 722, 778, 278, 722, 667, 833, 722, 657, 778, 718, 667, 590, 611, 667, 822, 667, 829, 781, 278, 667, 620, 479, 611, 278, 591, 620, 621, 556, 610, 479, 492, 611, 558, 278, 566, 556, 603, 556, 450, 611, 712, 605, 532, 664, 409, 591, 704, 578, 773, 834, 278, 591, 611, 591, 834, 667, 667, 886, 614, 719, 667, 278, 278, 556, 1094, 1042, 854, 622, 719, 677, 719, 722, 708, 722, 614, 722, 667, 927, 643, 719, 719, 615, 687, 833, 722, 778, 719, 667, 722, 611, 677, 781, 667, 729, 708, 979, 989, 854, 1000, 708, 719, 1042, 729, 556, 619, 604, 534, 618, 556, 736, 510, 611, 611, 507, 622, 740, 604, 611, 611, 611, 556, 889, 556, 885, 556, 646, 583, 889, 935, 707, 854, 594, 552, 865, 589, 556, 556, 611, 469, 563, 556, 278, 278, 278, 969, 906, 611, 507, 619, 556, 611, 778, 611, 575, 467, 944, 778, 944, 778, 944, 778, 667, 556, 333, 333, 556, 1000, 1000, 552, 278, 278, 278, 278, 500, 500, 500, 556, 556, 350, 1000, 1000, 240, 479, 333, 333, 604, 333, 167, 396, 556, 556, 1104, 556, 885, 516, 1146, 1000, 768, 600, 834, 834, 834, 834, 999, 500, 1000, 500, 1000, 500, 500, 494, 612, 823, 713, 584, 549, 713, 979, 722, 274, 549, 549, 583, 549, 549, 604, 584, 604, 604, 708, 625, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 729, 604, 604, 354, 354, 1000, 990, 990, 990, 990, 494, 604, 604, 604, 604, 354, 1021, 1052, 917, 750, 750, 531, 656, 594, 510, 500, 750, 750, 611, 611, 333, 333, 333, 333, 333, 333, 333, 333, 222, 222, 333, 333, 333, 333, 333, 333, 333, 333];\nexports.LiberationSansBoldItalicWidths = LiberationSansBoldItalicWidths;\nconst LiberationSansBoldItalicMapping = [-1, -1, -1, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 402, 506, 507, 508, 509, 510, 511, 536, 537, 538, 539, 710, 711, 713, 728, 729, 730, 731, 732, 733, 900, 901, 902, 903, 904, 905, 906, 908, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1138, 1139, 1168, 1169, 7808, 7809, 7810, 7811, 7812, 7813, 7922, 7923, 8208, 8209, 8211, 8212, 8213, 8215, 8216, 8217, 8218, 8219, 8220, 8221, 8222, 8224, 8225, 8226, 8230, 8240, 8242, 8243, 8249, 8250, 8252, 8254, 8260, 8319, 8355, 8356, 8359, 8364, 8453, 8467, 8470, 8482, 8486, 8494, 8539, 8540, 8541, 8542, 8592, 8593, 8594, 8595, 8596, 8597, 8616, 8706, 8710, 8719, 8721, 8722, 8730, 8734, 8735, 8745, 8747, 8776, 8800, 8801, 8804, 8805, 8962, 8976, 8992, 8993, 9472, 9474, 9484, 9488, 9492, 9496, 9500, 9508, 9516, 9524, 9532, 9552, 9553, 9554, 9555, 9556, 9557, 9558, 9559, 9560, 9561, 9562, 9563, 9564, 9565, 9566, 9567, 9568, 9569, 9570, 9571, 9572, 9573, 9574, 9575, 9576, 9577, 9578, 9579, 9580, 9600, 9604, 9608, 9612, 9616, 9617, 9618, 9619, 9632, 9633, 9642, 9643, 9644, 9650, 9658, 9660, 9668, 9674, 9675, 9679, 9688, 9689, 9702, 9786, 9787, 9788, 9792, 9794, 9824, 9827, 9829, 9830, 9834, 9835, 9836, 61441, 61442, 61445, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1];\nexports.LiberationSansBoldItalicMapping = LiberationSansBoldItalicMapping;\nconst LiberationSansItalicWidths = [365, 0, 333, 278, 278, 355, 556, 556, 889, 667, 191, 333, 333, 389, 584, 278, 333, 278, 278, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 278, 278, 584, 584, 584, 556, 1015, 667, 667, 722, 722, 667, 611, 778, 722, 278, 500, 667, 556, 833, 722, 778, 667, 778, 722, 667, 611, 722, 667, 944, 667, 667, 611, 278, 278, 278, 469, 556, 333, 556, 556, 500, 556, 556, 278, 556, 556, 222, 222, 500, 222, 833, 556, 556, 556, 556, 333, 500, 278, 556, 500, 722, 500, 500, 500, 334, 260, 334, 584, 333, 556, 556, 556, 556, 260, 556, 333, 737, 370, 556, 584, 737, 552, 400, 549, 333, 333, 333, 576, 537, 278, 333, 333, 365, 556, 834, 834, 834, 611, 667, 667, 667, 667, 667, 667, 1000, 722, 667, 667, 667, 667, 278, 278, 278, 278, 722, 722, 778, 778, 778, 778, 778, 584, 778, 722, 722, 722, 722, 667, 667, 611, 556, 556, 556, 556, 556, 556, 889, 500, 556, 556, 556, 556, 278, 278, 278, 278, 556, 556, 556, 556, 556, 556, 556, 549, 611, 556, 556, 556, 556, 500, 556, 500, 667, 556, 667, 556, 667, 556, 722, 500, 722, 500, 722, 500, 722, 500, 722, 625, 722, 556, 667, 556, 667, 556, 667, 556, 667, 556, 667, 556, 778, 556, 778, 556, 778, 556, 778, 556, 722, 556, 722, 556, 278, 278, 278, 278, 278, 278, 278, 222, 278, 278, 733, 444, 500, 222, 667, 500, 500, 556, 222, 556, 222, 556, 281, 556, 400, 556, 222, 722, 556, 722, 556, 722, 556, 615, 723, 556, 778, 556, 778, 556, 778, 556, 1000, 944, 722, 333, 722, 333, 722, 333, 667, 500, 667, 500, 667, 500, 667, 500, 611, 278, 611, 354, 611, 278, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 944, 722, 667, 500, 667, 611, 500, 611, 500, 611, 500, 222, 556, 667, 556, 1000, 889, 778, 611, 667, 500, 611, 278, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 667, 278, 789, 846, 389, 794, 865, 775, 222, 667, 667, 570, 671, 667, 611, 722, 778, 278, 667, 667, 833, 722, 648, 778, 725, 667, 600, 611, 667, 837, 667, 831, 761, 278, 667, 570, 439, 555, 222, 550, 570, 571, 500, 556, 439, 463, 555, 542, 222, 500, 492, 548, 500, 447, 556, 670, 573, 486, 603, 374, 550, 652, 546, 728, 779, 222, 550, 556, 550, 779, 667, 667, 843, 544, 708, 667, 278, 278, 500, 1066, 982, 844, 589, 715, 639, 724, 667, 651, 667, 544, 704, 667, 917, 614, 715, 715, 589, 686, 833, 722, 778, 725, 667, 722, 611, 639, 795, 667, 727, 673, 920, 923, 805, 886, 651, 694, 1022, 682, 556, 562, 522, 493, 553, 556, 688, 465, 556, 556, 472, 564, 686, 550, 556, 556, 556, 500, 833, 500, 835, 500, 572, 518, 830, 851, 621, 736, 526, 492, 752, 534, 556, 556, 556, 378, 496, 500, 222, 222, 222, 910, 828, 556, 472, 565, 500, 556, 778, 556, 492, 339, 944, 722, 944, 722, 944, 722, 667, 500, 333, 333, 556, 1000, 1000, 552, 222, 222, 222, 222, 333, 333, 333, 556, 556, 350, 1000, 1000, 188, 354, 333, 333, 500, 333, 167, 365, 556, 556, 1094, 556, 885, 323, 1083, 1000, 768, 600, 834, 834, 834, 834, 1000, 500, 998, 500, 1000, 500, 500, 494, 612, 823, 713, 584, 549, 713, 979, 719, 274, 549, 549, 584, 549, 549, 604, 584, 604, 604, 708, 625, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 729, 604, 604, 354, 354, 1000, 990, 990, 990, 990, 494, 604, 604, 604, 604, 354, 1021, 1052, 917, 750, 750, 531, 656, 594, 510, 500, 750, 750, 500, 500, 333, 333, 333, 333, 333, 333, 333, 333, 222, 222, 294, 294, 324, 324, 316, 328, 398, 285];\nexports.LiberationSansItalicWidths = LiberationSansItalicWidths;\nconst LiberationSansItalicMapping = [-1, -1, -1, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 402, 506, 507, 508, 509, 510, 511, 536, 537, 538, 539, 710, 711, 713, 728, 729, 730, 731, 732, 733, 900, 901, 902, 903, 904, 905, 906, 908, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1138, 1139, 1168, 1169, 7808, 7809, 7810, 7811, 7812, 7813, 7922, 7923, 8208, 8209, 8211, 8212, 8213, 8215, 8216, 8217, 8218, 8219, 8220, 8221, 8222, 8224, 8225, 8226, 8230, 8240, 8242, 8243, 8249, 8250, 8252, 8254, 8260, 8319, 8355, 8356, 8359, 8364, 8453, 8467, 8470, 8482, 8486, 8494, 8539, 8540, 8541, 8542, 8592, 8593, 8594, 8595, 8596, 8597, 8616, 8706, 8710, 8719, 8721, 8722, 8730, 8734, 8735, 8745, 8747, 8776, 8800, 8801, 8804, 8805, 8962, 8976, 8992, 8993, 9472, 9474, 9484, 9488, 9492, 9496, 9500, 9508, 9516, 9524, 9532, 9552, 9553, 9554, 9555, 9556, 9557, 9558, 9559, 9560, 9561, 9562, 9563, 9564, 9565, 9566, 9567, 9568, 9569, 9570, 9571, 9572, 9573, 9574, 9575, 9576, 9577, 9578, 9579, 9580, 9600, 9604, 9608, 9612, 9616, 9617, 9618, 9619, 9632, 9633, 9642, 9643, 9644, 9650, 9658, 9660, 9668, 9674, 9675, 9679, 9688, 9689, 9702, 9786, 9787, 9788, 9792, 9794, 9824, 9827, 9829, 9830, 9834, 9835, 9836, 61441, 61442, 61445, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1];\nexports.LiberationSansItalicMapping = LiberationSansItalicMapping;\nconst LiberationSansRegularWidths = [365, 0, 333, 278, 278, 355, 556, 556, 889, 667, 191, 333, 333, 389, 584, 278, 333, 278, 278, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 278, 278, 584, 584, 584, 556, 1015, 667, 667, 722, 722, 667, 611, 778, 722, 278, 500, 667, 556, 833, 722, 778, 667, 778, 722, 667, 611, 722, 667, 944, 667, 667, 611, 278, 278, 278, 469, 556, 333, 556, 556, 500, 556, 556, 278, 556, 556, 222, 222, 500, 222, 833, 556, 556, 556, 556, 333, 500, 278, 556, 500, 722, 500, 500, 500, 334, 260, 334, 584, 333, 556, 556, 556, 556, 260, 556, 333, 737, 370, 556, 584, 737, 552, 400, 549, 333, 333, 333, 576, 537, 278, 333, 333, 365, 556, 834, 834, 834, 611, 667, 667, 667, 667, 667, 667, 1000, 722, 667, 667, 667, 667, 278, 278, 278, 278, 722, 722, 778, 778, 778, 778, 778, 584, 778, 722, 722, 722, 722, 667, 667, 611, 556, 556, 556, 556, 556, 556, 889, 500, 556, 556, 556, 556, 278, 278, 278, 278, 556, 556, 556, 556, 556, 556, 556, 549, 611, 556, 556, 556, 556, 500, 556, 500, 667, 556, 667, 556, 667, 556, 722, 500, 722, 500, 722, 500, 722, 500, 722, 615, 722, 556, 667, 556, 667, 556, 667, 556, 667, 556, 667, 556, 778, 556, 778, 556, 778, 556, 778, 556, 722, 556, 722, 556, 278, 278, 278, 278, 278, 278, 278, 222, 278, 278, 735, 444, 500, 222, 667, 500, 500, 556, 222, 556, 222, 556, 292, 556, 334, 556, 222, 722, 556, 722, 556, 722, 556, 604, 723, 556, 778, 556, 778, 556, 778, 556, 1000, 944, 722, 333, 722, 333, 722, 333, 667, 500, 667, 500, 667, 500, 667, 500, 611, 278, 611, 375, 611, 278, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 722, 556, 944, 722, 667, 500, 667, 611, 500, 611, 500, 611, 500, 222, 556, 667, 556, 1000, 889, 778, 611, 667, 500, 611, 278, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 667, 278, 784, 838, 384, 774, 855, 752, 222, 667, 667, 551, 668, 667, 611, 722, 778, 278, 667, 668, 833, 722, 650, 778, 722, 667, 618, 611, 667, 798, 667, 835, 748, 278, 667, 578, 446, 556, 222, 547, 578, 575, 500, 557, 446, 441, 556, 556, 222, 500, 500, 576, 500, 448, 556, 690, 569, 482, 617, 395, 547, 648, 525, 713, 781, 222, 547, 556, 547, 781, 667, 667, 865, 542, 719, 667, 278, 278, 500, 1057, 1010, 854, 583, 722, 635, 719, 667, 656, 667, 542, 677, 667, 923, 604, 719, 719, 583, 656, 833, 722, 778, 719, 667, 722, 611, 635, 760, 667, 740, 667, 917, 938, 792, 885, 656, 719, 1010, 722, 556, 573, 531, 365, 583, 556, 669, 458, 559, 559, 438, 583, 688, 552, 556, 542, 556, 500, 458, 500, 823, 500, 573, 521, 802, 823, 625, 719, 521, 510, 750, 542, 556, 556, 556, 365, 510, 500, 222, 278, 222, 906, 812, 556, 438, 559, 500, 552, 778, 556, 489, 411, 944, 722, 944, 722, 944, 722, 667, 500, 333, 333, 556, 1000, 1000, 552, 222, 222, 222, 222, 333, 333, 333, 556, 556, 350, 1000, 1000, 188, 354, 333, 333, 500, 333, 167, 365, 556, 556, 1094, 556, 885, 323, 1073, 1000, 768, 600, 834, 834, 834, 834, 1000, 500, 1000, 500, 1000, 500, 500, 494, 612, 823, 713, 584, 549, 713, 979, 719, 274, 549, 549, 583, 549, 549, 604, 584, 604, 604, 708, 625, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 729, 604, 604, 354, 354, 1000, 990, 990, 990, 990, 494, 604, 604, 604, 604, 354, 1021, 1052, 917, 750, 750, 531, 656, 594, 510, 500, 750, 750, 500, 500, 333, 333, 333, 333, 333, 333, 333, 333, 222, 222, 294, 294, 324, 324, 316, 328, 398, 285];\nexports.LiberationSansRegularWidths = LiberationSansRegularWidths;\nconst LiberationSansRegularMapping = [-1, -1, -1, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 402, 506, 507, 508, 509, 510, 511, 536, 537, 538, 539, 710, 711, 713, 728, 729, 730, 731, 732, 733, 900, 901, 902, 903, 904, 905, 906, 908, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1138, 1139, 1168, 1169, 7808, 7809, 7810, 7811, 7812, 7813, 7922, 7923, 8208, 8209, 8211, 8212, 8213, 8215, 8216, 8217, 8218, 8219, 8220, 8221, 8222, 8224, 8225, 8226, 8230, 8240, 8242, 8243, 8249, 8250, 8252, 8254, 8260, 8319, 8355, 8356, 8359, 8364, 8453, 8467, 8470, 8482, 8486, 8494, 8539, 8540, 8541, 8542, 8592, 8593, 8594, 8595, 8596, 8597, 8616, 8706, 8710, 8719, 8721, 8722, 8730, 8734, 8735, 8745, 8747, 8776, 8800, 8801, 8804, 8805, 8962, 8976, 8992, 8993, 9472, 9474, 9484, 9488, 9492, 9496, 9500, 9508, 9516, 9524, 9532, 9552, 9553, 9554, 9555, 9556, 9557, 9558, 9559, 9560, 9561, 9562, 9563, 9564, 9565, 9566, 9567, 9568, 9569, 9570, 9571, 9572, 9573, 9574, 9575, 9576, 9577, 9578, 9579, 9580, 9600, 9604, 9608, 9612, 9616, 9617, 9618, 9619, 9632, 9633, 9642, 9643, 9644, 9650, 9658, 9660, 9668, 9674, 9675, 9679, 9688, 9689, 9702, 9786, 9787, 9788, 9792, 9794, 9824, 9827, 9829, 9830, 9834, 9835, 9836, 61441, 61442, 61445, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1];\nexports.LiberationSansRegularMapping = LiberationSansRegularMapping;\n\n/***/ }),\n/* 55 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.MyriadProRegularMetrics = exports.MyriadProRegularFactors = exports.MyriadProItalicMetrics = exports.MyriadProItalicFactors = exports.MyriadProBoldMetrics = exports.MyriadProBoldItalicMetrics = exports.MyriadProBoldItalicFactors = exports.MyriadProBoldFactors = void 0;\nconst MyriadProBoldFactors = [1.36898, 1, 1, 0.72706, 0.80479, 0.83734, 0.98894, 0.99793, 0.9897, 0.93884, 0.86209, 0.94292, 0.94292, 1.16661, 1.02058, 0.93582, 0.96694, 0.93582, 1.19137, 0.99793, 0.99793, 0.99793, 0.99793, 0.99793, 0.99793, 0.99793, 0.99793, 0.99793, 0.99793, 0.78076, 0.78076, 1.02058, 1.02058, 1.02058, 0.72851, 0.78966, 0.90838, 0.83637, 0.82391, 0.96376, 0.80061, 0.86275, 0.8768, 0.95407, 1.0258, 0.73901, 0.85022, 0.83655, 1.0156, 0.95546, 0.92179, 0.87107, 0.92179, 0.82114, 0.8096, 0.89713, 0.94438, 0.95353, 0.94083, 0.91905, 0.90406, 0.9446, 0.94292, 1.18777, 0.94292, 1.02058, 0.89903, 0.90088, 0.94938, 0.97898, 0.81093, 0.97571, 0.94938, 1.024, 0.9577, 0.95933, 0.98621, 1.0474, 0.97455, 0.98981, 0.9672, 0.95933, 0.9446, 0.97898, 0.97407, 0.97646, 0.78036, 1.10208, 0.95442, 0.95298, 0.97579, 0.9332, 0.94039, 0.938, 0.80687, 1.01149, 0.80687, 1.02058, 0.80479, 0.99793, 0.99793, 0.99793, 0.99793, 1.01149, 1.00872, 0.90088, 0.91882, 1.0213, 0.8361, 1.02058, 0.62295, 0.54324, 0.89022, 1.08595, 1, 1, 0.90088, 1, 0.97455, 0.93582, 0.90088, 1, 1.05686, 0.8361, 0.99642, 0.99642, 0.99642, 0.72851, 0.90838, 0.90838, 0.90838, 0.90838, 0.90838, 0.90838, 0.868, 0.82391, 0.80061, 0.80061, 0.80061, 0.80061, 1.0258, 1.0258, 1.0258, 1.0258, 0.97484, 0.95546, 0.92179, 0.92179, 0.92179, 0.92179, 0.92179, 1.02058, 0.92179, 0.94438, 0.94438, 0.94438, 0.94438, 0.90406, 0.86958, 0.98225, 0.94938, 0.94938, 0.94938, 0.94938, 0.94938, 0.94938, 0.9031, 0.81093, 0.94938, 0.94938, 0.94938, 0.94938, 0.98621, 0.98621, 0.98621, 0.98621, 0.93969, 0.95933, 0.9446, 0.9446, 0.9446, 0.9446, 0.9446, 1.08595, 0.9446, 0.95442, 0.95442, 0.95442, 0.95442, 0.94039, 0.97898, 0.94039, 0.90838, 0.94938, 0.90838, 0.94938, 0.90838, 0.94938, 0.82391, 0.81093, 0.82391, 0.81093, 0.82391, 0.81093, 0.82391, 0.81093, 0.96376, 0.84313, 0.97484, 0.97571, 0.80061, 0.94938, 0.80061, 0.94938, 0.80061, 0.94938, 0.80061, 0.94938, 0.80061, 0.94938, 0.8768, 0.9577, 0.8768, 0.9577, 0.8768, 0.9577, 1, 1, 0.95407, 0.95933, 0.97069, 0.95933, 1.0258, 0.98621, 1.0258, 0.98621, 1.0258, 0.98621, 1.0258, 0.98621, 1.0258, 0.98621, 0.887, 1.01591, 0.73901, 1.0474, 1, 1, 0.97455, 0.83655, 0.98981, 1, 1, 0.83655, 0.73977, 0.83655, 0.73903, 0.84638, 1.033, 0.95546, 0.95933, 1, 1, 0.95546, 0.95933, 0.8271, 0.95417, 0.95933, 0.92179, 0.9446, 0.92179, 0.9446, 0.92179, 0.9446, 0.936, 0.91964, 0.82114, 0.97646, 1, 1, 0.82114, 0.97646, 0.8096, 0.78036, 0.8096, 0.78036, 1, 1, 0.8096, 0.78036, 1, 1, 0.89713, 0.77452, 0.89713, 1.10208, 0.94438, 0.95442, 0.94438, 0.95442, 0.94438, 0.95442, 0.94438, 0.95442, 0.94438, 0.95442, 0.94438, 0.95442, 0.94083, 0.97579, 0.90406, 0.94039, 0.90406, 0.9446, 0.938, 0.9446, 0.938, 0.9446, 0.938, 1, 0.99793, 0.90838, 0.94938, 0.868, 0.9031, 0.92179, 0.9446, 1, 1, 0.89713, 1.10208, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90989, 0.9358, 0.91945, 0.83181, 0.75261, 0.87992, 0.82976, 0.96034, 0.83689, 0.97268, 1.0078, 0.90838, 0.83637, 0.8019, 0.90157, 0.80061, 0.9446, 0.95407, 0.92436, 1.0258, 0.85022, 0.97153, 1.0156, 0.95546, 0.89192, 0.92179, 0.92361, 0.87107, 0.96318, 0.89713, 0.93704, 0.95638, 0.91905, 0.91709, 0.92796, 1.0258, 0.93704, 0.94836, 1.0373, 0.95933, 1.0078, 0.95871, 0.94836, 0.96174, 0.92601, 0.9498, 0.98607, 0.95776, 0.95933, 1.05453, 1.0078, 0.98275, 0.9314, 0.95617, 0.91701, 1.05993, 0.9446, 0.78367, 0.9553, 1, 0.86832, 1.0128, 0.95871, 0.99394, 0.87548, 0.96361, 0.86774, 1.0078, 0.95871, 0.9446, 0.95871, 0.86774, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.94083, 0.97579, 0.94083, 0.97579, 0.94083, 0.97579, 0.90406, 0.94039, 0.96694, 1, 0.89903, 1, 1, 1, 0.93582, 0.93582, 0.93582, 1, 0.908, 0.908, 0.918, 0.94219, 0.94219, 0.96544, 1, 1.285, 1, 1, 0.81079, 0.81079, 1, 1, 0.74854, 1, 1, 1, 1, 0.99793, 1, 1, 1, 0.65, 1, 1.36145, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.17173, 1, 0.80535, 0.76169, 1.02058, 1.0732, 1.05486, 1, 1, 1.30692, 1.08595, 1.08595, 1, 1.08595, 1.08595, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.16161, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.MyriadProBoldFactors = MyriadProBoldFactors;\nconst MyriadProBoldMetrics = {\n lineHeight: 1.2,\n lineGap: 0.2\n};\nexports.MyriadProBoldMetrics = MyriadProBoldMetrics;\nconst MyriadProBoldItalicFactors = [1.36898, 1, 1, 0.66227, 0.80779, 0.81625, 0.97276, 0.97276, 0.97733, 0.92222, 0.83266, 0.94292, 0.94292, 1.16148, 1.02058, 0.93582, 0.96694, 0.93582, 1.17337, 0.97276, 0.97276, 0.97276, 0.97276, 0.97276, 0.97276, 0.97276, 0.97276, 0.97276, 0.97276, 0.78076, 0.78076, 1.02058, 1.02058, 1.02058, 0.71541, 0.76813, 0.85576, 0.80591, 0.80729, 0.94299, 0.77512, 0.83655, 0.86523, 0.92222, 0.98621, 0.71743, 0.81698, 0.79726, 0.98558, 0.92222, 0.90637, 0.83809, 0.90637, 0.80729, 0.76463, 0.86275, 0.90699, 0.91605, 0.9154, 0.85308, 0.85458, 0.90531, 0.94292, 1.21296, 0.94292, 1.02058, 0.89903, 1.18616, 0.99613, 0.91677, 0.78216, 0.91677, 0.90083, 0.98796, 0.9135, 0.92168, 0.95381, 0.98981, 0.95298, 0.95381, 0.93459, 0.92168, 0.91513, 0.92004, 0.91677, 0.95077, 0.748, 1.04502, 0.91677, 0.92061, 0.94236, 0.89544, 0.89364, 0.9, 0.80687, 0.8578, 0.80687, 1.02058, 0.80779, 0.97276, 0.97276, 0.97276, 0.97276, 0.8578, 0.99973, 1.18616, 0.91339, 1.08074, 0.82891, 1.02058, 0.55509, 0.71526, 0.89022, 1.08595, 1, 1, 1.18616, 1, 0.96736, 0.93582, 1.18616, 1, 1.04864, 0.82711, 0.99043, 0.99043, 0.99043, 0.71541, 0.85576, 0.85576, 0.85576, 0.85576, 0.85576, 0.85576, 0.845, 0.80729, 0.77512, 0.77512, 0.77512, 0.77512, 0.98621, 0.98621, 0.98621, 0.98621, 0.95961, 0.92222, 0.90637, 0.90637, 0.90637, 0.90637, 0.90637, 1.02058, 0.90251, 0.90699, 0.90699, 0.90699, 0.90699, 0.85458, 0.83659, 0.94951, 0.99613, 0.99613, 0.99613, 0.99613, 0.99613, 0.99613, 0.85811, 0.78216, 0.90083, 0.90083, 0.90083, 0.90083, 0.95381, 0.95381, 0.95381, 0.95381, 0.9135, 0.92168, 0.91513, 0.91513, 0.91513, 0.91513, 0.91513, 1.08595, 0.91677, 0.91677, 0.91677, 0.91677, 0.91677, 0.89364, 0.92332, 0.89364, 0.85576, 0.99613, 0.85576, 0.99613, 0.85576, 0.99613, 0.80729, 0.78216, 0.80729, 0.78216, 0.80729, 0.78216, 0.80729, 0.78216, 0.94299, 0.76783, 0.95961, 0.91677, 0.77512, 0.90083, 0.77512, 0.90083, 0.77512, 0.90083, 0.77512, 0.90083, 0.77512, 0.90083, 0.86523, 0.9135, 0.86523, 0.9135, 0.86523, 0.9135, 1, 1, 0.92222, 0.92168, 0.92222, 0.92168, 0.98621, 0.95381, 0.98621, 0.95381, 0.98621, 0.95381, 0.98621, 0.95381, 0.98621, 0.95381, 0.86036, 0.97096, 0.71743, 0.98981, 1, 1, 0.95298, 0.79726, 0.95381, 1, 1, 0.79726, 0.6894, 0.79726, 0.74321, 0.81691, 1.0006, 0.92222, 0.92168, 1, 1, 0.92222, 0.92168, 0.79464, 0.92098, 0.92168, 0.90637, 0.91513, 0.90637, 0.91513, 0.90637, 0.91513, 0.909, 0.87514, 0.80729, 0.95077, 1, 1, 0.80729, 0.95077, 0.76463, 0.748, 0.76463, 0.748, 1, 1, 0.76463, 0.748, 1, 1, 0.86275, 0.72651, 0.86275, 1.04502, 0.90699, 0.91677, 0.90699, 0.91677, 0.90699, 0.91677, 0.90699, 0.91677, 0.90699, 0.91677, 0.90699, 0.91677, 0.9154, 0.94236, 0.85458, 0.89364, 0.85458, 0.90531, 0.9, 0.90531, 0.9, 0.90531, 0.9, 1, 0.97276, 0.85576, 0.99613, 0.845, 0.85811, 0.90251, 0.91677, 1, 1, 0.86275, 1.04502, 1.18616, 1.18616, 1.18616, 1.18616, 1.18616, 1.18616, 1.18616, 1.18616, 1.18616, 1.00899, 1.30628, 0.85576, 0.80178, 0.66862, 0.7927, 0.69323, 0.88127, 0.72459, 0.89711, 0.95381, 0.85576, 0.80591, 0.7805, 0.94729, 0.77512, 0.90531, 0.92222, 0.90637, 0.98621, 0.81698, 0.92655, 0.98558, 0.92222, 0.85359, 0.90637, 0.90976, 0.83809, 0.94523, 0.86275, 0.83509, 0.93157, 0.85308, 0.83392, 0.92346, 0.98621, 0.83509, 0.92886, 0.91324, 0.92168, 0.95381, 0.90646, 0.92886, 0.90557, 0.86847, 0.90276, 0.91324, 0.86842, 0.92168, 0.99531, 0.95381, 0.9224, 0.85408, 0.92699, 0.86847, 1.0051, 0.91513, 0.80487, 0.93481, 1, 0.88159, 1.05214, 0.90646, 0.97355, 0.81539, 0.89398, 0.85923, 0.95381, 0.90646, 0.91513, 0.90646, 0.85923, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.9154, 0.94236, 0.9154, 0.94236, 0.9154, 0.94236, 0.85458, 0.89364, 0.96694, 1, 0.89903, 1, 1, 1, 0.91782, 0.91782, 0.91782, 1, 0.896, 0.896, 0.896, 0.9332, 0.9332, 0.95973, 1, 1.26, 1, 1, 0.80479, 0.80178, 1, 1, 0.85633, 1, 1, 1, 1, 0.97276, 1, 1, 1, 0.698, 1, 1.36145, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.14542, 1, 0.79199, 0.78694, 1.02058, 1.03493, 1.05486, 1, 1, 1.23026, 1.08595, 1.08595, 1, 1.08595, 1.08595, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.20006, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.MyriadProBoldItalicFactors = MyriadProBoldItalicFactors;\nconst MyriadProBoldItalicMetrics = {\n lineHeight: 1.2,\n lineGap: 0.2\n};\nexports.MyriadProBoldItalicMetrics = MyriadProBoldItalicMetrics;\nconst MyriadProItalicFactors = [1.36898, 1, 1, 0.65507, 0.84943, 0.85639, 0.88465, 0.88465, 0.86936, 0.88307, 0.86948, 0.85283, 0.85283, 1.06383, 1.02058, 0.75945, 0.9219, 0.75945, 1.17337, 0.88465, 0.88465, 0.88465, 0.88465, 0.88465, 0.88465, 0.88465, 0.88465, 0.88465, 0.88465, 0.75945, 0.75945, 1.02058, 1.02058, 1.02058, 0.69046, 0.70926, 0.85158, 0.77812, 0.76852, 0.89591, 0.70466, 0.76125, 0.80094, 0.86822, 0.83864, 0.728, 0.77212, 0.79475, 0.93637, 0.87514, 0.8588, 0.76013, 0.8588, 0.72421, 0.69866, 0.77598, 0.85991, 0.80811, 0.87832, 0.78112, 0.77512, 0.8562, 1.0222, 1.18417, 1.0222, 1.27014, 0.89903, 1.15012, 0.93859, 0.94399, 0.846, 0.94399, 0.81453, 1.0186, 0.94219, 0.96017, 1.03075, 1.02175, 0.912, 1.03075, 0.96998, 0.96017, 0.93859, 0.94399, 0.94399, 0.95493, 0.746, 1.12658, 0.94578, 0.91, 0.979, 0.882, 0.882, 0.83, 0.85034, 0.83537, 0.85034, 1.02058, 0.70869, 0.88465, 0.88465, 0.88465, 0.88465, 0.83537, 0.90083, 1.15012, 0.9161, 0.94565, 0.73541, 1.02058, 0.53609, 0.69353, 0.79519, 1.08595, 1, 1, 1.15012, 1, 0.91974, 0.75945, 1.15012, 1, 0.9446, 0.73361, 0.9005, 0.9005, 0.9005, 0.62864, 0.85158, 0.85158, 0.85158, 0.85158, 0.85158, 0.85158, 0.773, 0.76852, 0.70466, 0.70466, 0.70466, 0.70466, 0.83864, 0.83864, 0.83864, 0.83864, 0.90561, 0.87514, 0.8588, 0.8588, 0.8588, 0.8588, 0.8588, 1.02058, 0.85751, 0.85991, 0.85991, 0.85991, 0.85991, 0.77512, 0.76013, 0.88075, 0.93859, 0.93859, 0.93859, 0.93859, 0.93859, 0.93859, 0.8075, 0.846, 0.81453, 0.81453, 0.81453, 0.81453, 0.82424, 0.82424, 0.82424, 0.82424, 0.9278, 0.96017, 0.93859, 0.93859, 0.93859, 0.93859, 0.93859, 1.08595, 0.8562, 0.94578, 0.94578, 0.94578, 0.94578, 0.882, 0.94578, 0.882, 0.85158, 0.93859, 0.85158, 0.93859, 0.85158, 0.93859, 0.76852, 0.846, 0.76852, 0.846, 0.76852, 0.846, 0.76852, 0.846, 0.89591, 0.8544, 0.90561, 0.94399, 0.70466, 0.81453, 0.70466, 0.81453, 0.70466, 0.81453, 0.70466, 0.81453, 0.70466, 0.81453, 0.80094, 0.94219, 0.80094, 0.94219, 0.80094, 0.94219, 1, 1, 0.86822, 0.96017, 0.86822, 0.96017, 0.83864, 0.82424, 0.83864, 0.82424, 0.83864, 0.82424, 0.83864, 1.03075, 0.83864, 0.82424, 0.81402, 1.02738, 0.728, 1.02175, 1, 1, 0.912, 0.79475, 1.03075, 1, 1, 0.79475, 0.83911, 0.79475, 0.66266, 0.80553, 1.06676, 0.87514, 0.96017, 1, 1, 0.87514, 0.96017, 0.86865, 0.87396, 0.96017, 0.8588, 0.93859, 0.8588, 0.93859, 0.8588, 0.93859, 0.867, 0.84759, 0.72421, 0.95493, 1, 1, 0.72421, 0.95493, 0.69866, 0.746, 0.69866, 0.746, 1, 1, 0.69866, 0.746, 1, 1, 0.77598, 0.88417, 0.77598, 1.12658, 0.85991, 0.94578, 0.85991, 0.94578, 0.85991, 0.94578, 0.85991, 0.94578, 0.85991, 0.94578, 0.85991, 0.94578, 0.87832, 0.979, 0.77512, 0.882, 0.77512, 0.8562, 0.83, 0.8562, 0.83, 0.8562, 0.83, 1, 0.88465, 0.85158, 0.93859, 0.773, 0.8075, 0.85751, 0.8562, 1, 1, 0.77598, 1.12658, 1.15012, 1.15012, 1.15012, 1.15012, 1.15012, 1.15313, 1.15012, 1.15012, 1.15012, 1.08106, 1.03901, 0.85158, 0.77025, 0.62264, 0.7646, 0.65351, 0.86026, 0.69461, 0.89947, 1.03075, 0.85158, 0.77812, 0.76449, 0.88836, 0.70466, 0.8562, 0.86822, 0.8588, 0.83864, 0.77212, 0.85308, 0.93637, 0.87514, 0.82352, 0.8588, 0.85701, 0.76013, 0.89058, 0.77598, 0.8156, 0.82565, 0.78112, 0.77899, 0.89386, 0.83864, 0.8156, 0.9486, 0.92388, 0.96186, 1.03075, 0.91123, 0.9486, 0.93298, 0.878, 0.93942, 0.92388, 0.84596, 0.96186, 0.95119, 1.03075, 0.922, 0.88787, 0.95829, 0.88, 0.93559, 0.93859, 0.78815, 0.93758, 1, 0.89217, 1.03737, 0.91123, 0.93969, 0.77487, 0.85769, 0.86799, 1.03075, 0.91123, 0.93859, 0.91123, 0.86799, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.87832, 0.979, 0.87832, 0.979, 0.87832, 0.979, 0.77512, 0.882, 0.9219, 1, 0.89903, 1, 1, 1, 0.87321, 0.87321, 0.87321, 1, 1.027, 1.027, 1.027, 0.86847, 0.86847, 0.79121, 1, 1.124, 1, 1, 0.73572, 0.73572, 1, 1, 0.85034, 1, 1, 1, 1, 0.88465, 1, 1, 1, 0.669, 1, 1.36145, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.04828, 1, 0.74948, 0.75187, 1.02058, 0.98391, 1.02119, 1, 1, 1.06233, 1.08595, 1.08595, 1, 1.08595, 1.08595, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.05233, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.MyriadProItalicFactors = MyriadProItalicFactors;\nconst MyriadProItalicMetrics = {\n lineHeight: 1.2,\n lineGap: 0.2\n};\nexports.MyriadProItalicMetrics = MyriadProItalicMetrics;\nconst MyriadProRegularFactors = [1.36898, 1, 1, 0.76305, 0.82784, 0.94935, 0.89364, 0.92241, 0.89073, 0.90706, 0.98472, 0.85283, 0.85283, 1.0664, 1.02058, 0.74505, 0.9219, 0.74505, 1.23456, 0.92241, 0.92241, 0.92241, 0.92241, 0.92241, 0.92241, 0.92241, 0.92241, 0.92241, 0.92241, 0.74505, 0.74505, 1.02058, 1.02058, 1.02058, 0.73002, 0.72601, 0.91755, 0.8126, 0.80314, 0.92222, 0.73764, 0.79726, 0.83051, 0.90284, 0.86023, 0.74, 0.8126, 0.84869, 0.96518, 0.91115, 0.8858, 0.79761, 0.8858, 0.74498, 0.73914, 0.81363, 0.89591, 0.83659, 0.89633, 0.85608, 0.8111, 0.90531, 1.0222, 1.22736, 1.0222, 1.27014, 0.89903, 0.90088, 0.86667, 1.0231, 0.896, 1.01411, 0.90083, 1.05099, 1.00512, 0.99793, 1.05326, 1.09377, 0.938, 1.06226, 1.00119, 0.99793, 0.98714, 1.0231, 1.01231, 0.98196, 0.792, 1.19137, 0.99074, 0.962, 1.01915, 0.926, 0.942, 0.856, 0.85034, 0.92006, 0.85034, 1.02058, 0.69067, 0.92241, 0.92241, 0.92241, 0.92241, 0.92006, 0.9332, 0.90088, 0.91882, 0.93484, 0.75339, 1.02058, 0.56866, 0.54324, 0.79519, 1.08595, 1, 1, 0.90088, 1, 0.95325, 0.74505, 0.90088, 1, 0.97198, 0.75339, 0.91009, 0.91009, 0.91009, 0.66466, 0.91755, 0.91755, 0.91755, 0.91755, 0.91755, 0.91755, 0.788, 0.80314, 0.73764, 0.73764, 0.73764, 0.73764, 0.86023, 0.86023, 0.86023, 0.86023, 0.92915, 0.91115, 0.8858, 0.8858, 0.8858, 0.8858, 0.8858, 1.02058, 0.8858, 0.89591, 0.89591, 0.89591, 0.89591, 0.8111, 0.79611, 0.89713, 0.86667, 0.86667, 0.86667, 0.86667, 0.86667, 0.86667, 0.86936, 0.896, 0.90083, 0.90083, 0.90083, 0.90083, 0.84224, 0.84224, 0.84224, 0.84224, 0.97276, 0.99793, 0.98714, 0.98714, 0.98714, 0.98714, 0.98714, 1.08595, 0.89876, 0.99074, 0.99074, 0.99074, 0.99074, 0.942, 1.0231, 0.942, 0.91755, 0.86667, 0.91755, 0.86667, 0.91755, 0.86667, 0.80314, 0.896, 0.80314, 0.896, 0.80314, 0.896, 0.80314, 0.896, 0.92222, 0.93372, 0.92915, 1.01411, 0.73764, 0.90083, 0.73764, 0.90083, 0.73764, 0.90083, 0.73764, 0.90083, 0.73764, 0.90083, 0.83051, 1.00512, 0.83051, 1.00512, 0.83051, 1.00512, 1, 1, 0.90284, 0.99793, 0.90976, 0.99793, 0.86023, 0.84224, 0.86023, 0.84224, 0.86023, 0.84224, 0.86023, 1.05326, 0.86023, 0.84224, 0.82873, 1.07469, 0.74, 1.09377, 1, 1, 0.938, 0.84869, 1.06226, 1, 1, 0.84869, 0.83704, 0.84869, 0.81441, 0.85588, 1.08927, 0.91115, 0.99793, 1, 1, 0.91115, 0.99793, 0.91887, 0.90991, 0.99793, 0.8858, 0.98714, 0.8858, 0.98714, 0.8858, 0.98714, 0.894, 0.91434, 0.74498, 0.98196, 1, 1, 0.74498, 0.98196, 0.73914, 0.792, 0.73914, 0.792, 1, 1, 0.73914, 0.792, 1, 1, 0.81363, 0.904, 0.81363, 1.19137, 0.89591, 0.99074, 0.89591, 0.99074, 0.89591, 0.99074, 0.89591, 0.99074, 0.89591, 0.99074, 0.89591, 0.99074, 0.89633, 1.01915, 0.8111, 0.942, 0.8111, 0.90531, 0.856, 0.90531, 0.856, 0.90531, 0.856, 1, 0.92241, 0.91755, 0.86667, 0.788, 0.86936, 0.8858, 0.89876, 1, 1, 0.81363, 1.19137, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90088, 0.90388, 1.03901, 0.92138, 0.78105, 0.7154, 0.86169, 0.80513, 0.94007, 0.82528, 0.98612, 1.06226, 0.91755, 0.8126, 0.81884, 0.92819, 0.73764, 0.90531, 0.90284, 0.8858, 0.86023, 0.8126, 0.91172, 0.96518, 0.91115, 0.83089, 0.8858, 0.87791, 0.79761, 0.89297, 0.81363, 0.88157, 0.89992, 0.85608, 0.81992, 0.94307, 0.86023, 0.88157, 0.95308, 0.98699, 0.99793, 1.06226, 0.95817, 0.95308, 0.97358, 0.928, 0.98088, 0.98699, 0.92761, 0.99793, 0.96017, 1.06226, 0.986, 0.944, 0.95978, 0.938, 0.96705, 0.98714, 0.80442, 0.98972, 1, 0.89762, 1.04552, 0.95817, 0.99007, 0.87064, 0.91879, 0.88888, 1.06226, 0.95817, 0.98714, 0.95817, 0.88888, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.89633, 1.01915, 0.89633, 1.01915, 0.89633, 1.01915, 0.8111, 0.942, 0.9219, 1, 0.89903, 1, 1, 1, 0.93173, 0.93173, 0.93173, 1, 1.06304, 1.06304, 1.06904, 0.89903, 0.89903, 0.80549, 1, 1.156, 1, 1, 0.76575, 0.76575, 1, 1, 0.72458, 1, 1, 1, 1, 0.92241, 1, 1, 1, 0.619, 1, 1.36145, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.07257, 1, 0.74705, 0.71119, 1.02058, 1.024, 1.02119, 1, 1, 1.1536, 1.08595, 1.08595, 1, 1.08595, 1.08595, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.05638, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.MyriadProRegularFactors = MyriadProRegularFactors;\nconst MyriadProRegularMetrics = {\n lineHeight: 1.2,\n lineGap: 0.2\n};\nexports.MyriadProRegularMetrics = MyriadProRegularMetrics;\n\n/***/ }),\n/* 56 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SegoeuiRegularMetrics = exports.SegoeuiRegularFactors = exports.SegoeuiItalicMetrics = exports.SegoeuiItalicFactors = exports.SegoeuiBoldMetrics = exports.SegoeuiBoldItalicMetrics = exports.SegoeuiBoldItalicFactors = exports.SegoeuiBoldFactors = void 0;\nconst SegoeuiBoldFactors = [1.76738, 1, 1, 0.99297, 0.9824, 1.04016, 1.06497, 1.03424, 0.97529, 1.17647, 1.23203, 1.1085, 1.1085, 1.16939, 1.2107, 0.9754, 1.21408, 0.9754, 1.59578, 1.03424, 1.03424, 1.03424, 1.03424, 1.03424, 1.03424, 1.03424, 1.03424, 1.03424, 1.03424, 0.81378, 0.81378, 1.2107, 1.2107, 1.2107, 0.71703, 0.97847, 0.97363, 0.88776, 0.8641, 1.02096, 0.79795, 0.85132, 0.914, 1.06085, 1.1406, 0.8007, 0.89858, 0.83693, 1.14889, 1.09398, 0.97489, 0.92094, 0.97489, 0.90399, 0.84041, 0.95923, 1.00135, 1, 1.06467, 0.98243, 0.90996, 0.99361, 1.1085, 1.56942, 1.1085, 1.2107, 0.74627, 0.94282, 0.96752, 1.01519, 0.86304, 1.01359, 0.97278, 1.15103, 1.01359, 0.98561, 1.02285, 1.02285, 1.00527, 1.02285, 1.0302, 0.99041, 1.0008, 1.01519, 1.01359, 1.02258, 0.79104, 1.16862, 0.99041, 0.97454, 1.02511, 0.99298, 0.96752, 0.95801, 0.94856, 1.16579, 0.94856, 1.2107, 0.9824, 1.03424, 1.03424, 1, 1.03424, 1.16579, 0.8727, 1.3871, 1.18622, 1.10818, 1.04478, 1.2107, 1.18622, 0.75155, 0.94994, 1.28826, 1.21408, 1.21408, 0.91056, 1, 0.91572, 0.9754, 0.64663, 1.18328, 1.24866, 1.04478, 1.14169, 1.15749, 1.17389, 0.71703, 0.97363, 0.97363, 0.97363, 0.97363, 0.97363, 0.97363, 0.93506, 0.8641, 0.79795, 0.79795, 0.79795, 0.79795, 1.1406, 1.1406, 1.1406, 1.1406, 1.02096, 1.09398, 0.97426, 0.97426, 0.97426, 0.97426, 0.97426, 1.2107, 0.97489, 1.00135, 1.00135, 1.00135, 1.00135, 0.90996, 0.92094, 1.02798, 0.96752, 0.96752, 0.96752, 0.96752, 0.96752, 0.96752, 0.93136, 0.86304, 0.97278, 0.97278, 0.97278, 0.97278, 1.02285, 1.02285, 1.02285, 1.02285, 0.97122, 0.99041, 1, 1, 1, 1, 1, 1.28826, 1.0008, 0.99041, 0.99041, 0.99041, 0.99041, 0.96752, 1.01519, 0.96752, 0.97363, 0.96752, 0.97363, 0.96752, 0.97363, 0.96752, 0.8641, 0.86304, 0.8641, 0.86304, 0.8641, 0.86304, 0.8641, 0.86304, 1.02096, 1.03057, 1.02096, 1.03517, 0.79795, 0.97278, 0.79795, 0.97278, 0.79795, 0.97278, 0.79795, 0.97278, 0.79795, 0.97278, 0.914, 1.01359, 0.914, 1.01359, 0.914, 1.01359, 1, 1, 1.06085, 0.98561, 1.06085, 1.00879, 1.1406, 1.02285, 1.1406, 1.02285, 1.1406, 1.02285, 1.1406, 1.02285, 1.1406, 1.02285, 0.97138, 1.08692, 0.8007, 1.02285, 1, 1, 1.00527, 0.83693, 1.02285, 1, 1, 0.83693, 0.9455, 0.83693, 0.90418, 0.83693, 1.13005, 1.09398, 0.99041, 1, 1, 1.09398, 0.99041, 0.96692, 1.09251, 0.99041, 0.97489, 1.0008, 0.97489, 1.0008, 0.97489, 1.0008, 0.93994, 0.97931, 0.90399, 1.02258, 1, 1, 0.90399, 1.02258, 0.84041, 0.79104, 0.84041, 0.79104, 0.84041, 0.79104, 0.84041, 0.79104, 1, 1, 0.95923, 1.07034, 0.95923, 1.16862, 1.00135, 0.99041, 1.00135, 0.99041, 1.00135, 0.99041, 1.00135, 0.99041, 1.00135, 0.99041, 1.00135, 0.99041, 1.06467, 1.02511, 0.90996, 0.96752, 0.90996, 0.99361, 0.95801, 0.99361, 0.95801, 0.99361, 0.95801, 1.07733, 1.03424, 0.97363, 0.96752, 0.93506, 0.93136, 0.97489, 1.0008, 1, 1, 0.95923, 1.16862, 1.15103, 1.15103, 1.01173, 1.03959, 0.75953, 0.81378, 0.79912, 1.15103, 1.21994, 0.95161, 0.87815, 1.01149, 0.81525, 0.7676, 0.98167, 1.01134, 1.02546, 0.84097, 1.03089, 1.18102, 0.97363, 0.88776, 0.85134, 0.97826, 0.79795, 0.99361, 1.06085, 0.97489, 1.1406, 0.89858, 1.0388, 1.14889, 1.09398, 0.86039, 0.97489, 1.0595, 0.92094, 0.94793, 0.95923, 0.90996, 0.99346, 0.98243, 1.02112, 0.95493, 1.1406, 0.90996, 1.03574, 1.02597, 1.0008, 1.18102, 1.06628, 1.03574, 1.0192, 1.01932, 1.00886, 0.97531, 1.0106, 1.0008, 1.13189, 1.18102, 1.02277, 0.98683, 1.0016, 0.99561, 1.07237, 1.0008, 0.90434, 0.99921, 0.93803, 0.8965, 1.23085, 1.06628, 1.04983, 0.96268, 1.0499, 0.98439, 1.18102, 1.06628, 1.0008, 1.06628, 0.98439, 0.79795, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.09466, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.97278, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.02065, 1, 1, 1, 1, 1, 1, 1.06467, 1.02511, 1.06467, 1.02511, 1.06467, 1.02511, 0.90996, 0.96752, 1, 1.21408, 0.89903, 1, 1, 0.75155, 1.04394, 1.04394, 1.04394, 1.04394, 0.98633, 0.98633, 0.98633, 0.73047, 0.73047, 1.20642, 0.91211, 1.25635, 1.222, 1.02956, 1.03372, 1.03372, 0.96039, 1.24633, 1, 1.12454, 0.93503, 1.03424, 1.19687, 1.03424, 1, 1, 1, 0.771, 1, 1, 1.15749, 1.15749, 1.15749, 1.10948, 0.86279, 0.94434, 0.86279, 0.94434, 0.86182, 1, 1, 1.16897, 1, 0.96085, 0.90137, 1.2107, 1.18416, 1.13973, 0.69825, 0.9716, 2.10339, 1.29004, 1.29004, 1.21172, 1.29004, 1.29004, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.42603, 1, 0.99862, 0.99862, 1, 0.87025, 0.87025, 0.87025, 0.87025, 1.18874, 1.42603, 1, 1.42603, 1.42603, 0.99862, 1, 1, 1, 1, 1, 1.2886, 1.04315, 1.15296, 1.34163, 1, 1, 1, 1.09193, 1.09193, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.SegoeuiBoldFactors = SegoeuiBoldFactors;\nconst SegoeuiBoldMetrics = {\n lineHeight: 1.33008,\n lineGap: 0\n};\nexports.SegoeuiBoldMetrics = SegoeuiBoldMetrics;\nconst SegoeuiBoldItalicFactors = [1.76738, 1, 1, 0.98946, 1.03959, 1.04016, 1.02809, 1.036, 0.97639, 1.10953, 1.23203, 1.11144, 1.11144, 1.16939, 1.21237, 0.9754, 1.21261, 0.9754, 1.59754, 1.036, 1.036, 1.036, 1.036, 1.036, 1.036, 1.036, 1.036, 1.036, 1.036, 0.81378, 0.81378, 1.21237, 1.21237, 1.21237, 0.73541, 0.97847, 0.97363, 0.89723, 0.87897, 1.0426, 0.79429, 0.85292, 0.91149, 1.05815, 1.1406, 0.79631, 0.90128, 0.83853, 1.04396, 1.10615, 0.97552, 0.94436, 0.97552, 0.88641, 0.80527, 0.96083, 1.00135, 1, 1.06777, 0.9817, 0.91142, 0.99361, 1.11144, 1.57293, 1.11144, 1.21237, 0.74627, 1.31818, 1.06585, 0.97042, 0.83055, 0.97042, 0.93503, 1.1261, 0.97042, 0.97922, 1.14236, 0.94552, 1.01054, 1.14236, 1.02471, 0.97922, 0.94165, 0.97042, 0.97042, 1.0276, 0.78929, 1.1261, 0.97922, 0.95874, 1.02197, 0.98507, 0.96752, 0.97168, 0.95107, 1.16579, 0.95107, 1.21237, 1.03959, 1.036, 1.036, 1, 1.036, 1.16579, 0.87357, 1.31818, 1.18754, 1.26781, 1.05356, 1.21237, 1.18622, 0.79487, 0.94994, 1.29004, 1.24047, 1.24047, 1.31818, 1, 0.91484, 0.9754, 1.31818, 1.1349, 1.24866, 1.05356, 1.13934, 1.15574, 1.17389, 0.73541, 0.97363, 0.97363, 0.97363, 0.97363, 0.97363, 0.97363, 0.94385, 0.87897, 0.79429, 0.79429, 0.79429, 0.79429, 1.1406, 1.1406, 1.1406, 1.1406, 1.0426, 1.10615, 0.97552, 0.97552, 0.97552, 0.97552, 0.97552, 1.21237, 0.97552, 1.00135, 1.00135, 1.00135, 1.00135, 0.91142, 0.94436, 0.98721, 1.06585, 1.06585, 1.06585, 1.06585, 1.06585, 1.06585, 0.96705, 0.83055, 0.93503, 0.93503, 0.93503, 0.93503, 1.14236, 1.14236, 1.14236, 1.14236, 0.93125, 0.97922, 0.94165, 0.94165, 0.94165, 0.94165, 0.94165, 1.29004, 0.94165, 0.97922, 0.97922, 0.97922, 0.97922, 0.96752, 0.97042, 0.96752, 0.97363, 1.06585, 0.97363, 1.06585, 0.97363, 1.06585, 0.87897, 0.83055, 0.87897, 0.83055, 0.87897, 0.83055, 0.87897, 0.83055, 1.0426, 1.0033, 1.0426, 0.97042, 0.79429, 0.93503, 0.79429, 0.93503, 0.79429, 0.93503, 0.79429, 0.93503, 0.79429, 0.93503, 0.91149, 0.97042, 0.91149, 0.97042, 0.91149, 0.97042, 1, 1, 1.05815, 0.97922, 1.05815, 0.97922, 1.1406, 1.14236, 1.1406, 1.14236, 1.1406, 1.14236, 1.1406, 1.14236, 1.1406, 1.14236, 0.97441, 1.04302, 0.79631, 1.01582, 1, 1, 1.01054, 0.83853, 1.14236, 1, 1, 0.83853, 1.09125, 0.83853, 0.90418, 0.83853, 1.19508, 1.10615, 0.97922, 1, 1, 1.10615, 0.97922, 1.01034, 1.10466, 0.97922, 0.97552, 0.94165, 0.97552, 0.94165, 0.97552, 0.94165, 0.91602, 0.91981, 0.88641, 1.0276, 1, 1, 0.88641, 1.0276, 0.80527, 0.78929, 0.80527, 0.78929, 0.80527, 0.78929, 0.80527, 0.78929, 1, 1, 0.96083, 1.05403, 0.95923, 1.16862, 1.00135, 0.97922, 1.00135, 0.97922, 1.00135, 0.97922, 1.00135, 0.97922, 1.00135, 0.97922, 1.00135, 0.97922, 1.06777, 1.02197, 0.91142, 0.96752, 0.91142, 0.99361, 0.97168, 0.99361, 0.97168, 0.99361, 0.97168, 1.23199, 1.036, 0.97363, 1.06585, 0.94385, 0.96705, 0.97552, 0.94165, 1, 1, 0.96083, 1.1261, 1.31818, 1.31818, 1.31818, 1.31818, 1.31818, 1.31818, 1.31818, 1.31818, 1.31818, 0.95161, 1.27126, 1.00811, 0.83284, 0.77702, 0.99137, 0.95253, 1.0347, 0.86142, 1.07205, 1.14236, 0.97363, 0.89723, 0.86869, 1.09818, 0.79429, 0.99361, 1.05815, 0.97552, 1.1406, 0.90128, 1.06662, 1.04396, 1.10615, 0.84918, 0.97552, 1.04694, 0.94436, 0.98015, 0.96083, 0.91142, 1.00356, 0.9817, 1.01945, 0.98999, 1.1406, 0.91142, 1.04961, 0.9898, 1.00639, 1.14236, 1.07514, 1.04961, 0.99607, 1.02897, 1.008, 0.9898, 0.95134, 1.00639, 1.11121, 1.14236, 1.00518, 0.97981, 1.02186, 1, 1.08578, 0.94165, 0.99314, 0.98387, 0.93028, 0.93377, 1.35125, 1.07514, 1.10687, 0.93491, 1.04232, 1.00351, 1.14236, 1.07514, 0.94165, 1.07514, 1.00351, 0.79429, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.09097, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.93503, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.96609, 1, 1, 1, 1, 1, 1, 1.06777, 1.02197, 1.06777, 1.02197, 1.06777, 1.02197, 0.91142, 0.96752, 1, 1.21261, 0.89903, 1, 1, 0.75155, 1.04745, 1.04745, 1.04745, 1.04394, 0.98633, 0.98633, 0.98633, 0.72959, 0.72959, 1.20502, 0.91406, 1.26514, 1.222, 1.02956, 1.03372, 1.03372, 0.96039, 1.24633, 1, 1.09125, 0.93327, 1.03336, 1.16541, 1.036, 1, 1, 1, 0.771, 1, 1, 1.15574, 1.15574, 1.15574, 1.15574, 0.86364, 0.94434, 0.86279, 0.94434, 0.86224, 1, 1, 1.16798, 1, 0.96085, 0.90068, 1.21237, 1.18416, 1.13904, 0.69825, 0.9716, 2.10339, 1.29004, 1.29004, 1.21339, 1.29004, 1.29004, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.42603, 1, 0.99862, 0.99862, 1, 0.87025, 0.87025, 0.87025, 0.87025, 1.18775, 1.42603, 1, 1.42603, 1.42603, 0.99862, 1, 1, 1, 1, 1, 1.2886, 1.04315, 1.15296, 1.34163, 1, 1, 1, 1.13269, 1.13269, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.SegoeuiBoldItalicFactors = SegoeuiBoldItalicFactors;\nconst SegoeuiBoldItalicMetrics = {\n lineHeight: 1.33008,\n lineGap: 0\n};\nexports.SegoeuiBoldItalicMetrics = SegoeuiBoldItalicMetrics;\nconst SegoeuiItalicFactors = [1.76738, 1, 1, 0.98946, 1.14763, 1.05365, 1.06234, 0.96927, 0.92586, 1.15373, 1.18414, 0.91349, 0.91349, 1.07403, 1.17308, 0.78383, 1.20088, 0.78383, 1.42531, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.78383, 0.78383, 1.17308, 1.17308, 1.17308, 0.77349, 0.94565, 0.94729, 0.85944, 0.88506, 0.9858, 0.74817, 0.80016, 0.88449, 0.98039, 0.95782, 0.69238, 0.89898, 0.83231, 0.98183, 1.03989, 0.96924, 0.86237, 0.96924, 0.80595, 0.74524, 0.86091, 0.95402, 0.94143, 0.98448, 0.8858, 0.83089, 0.93285, 1.0949, 1.39016, 1.0949, 1.45994, 0.74627, 1.04839, 0.97454, 0.97454, 0.87207, 0.97454, 0.87533, 1.06151, 0.97454, 1.00176, 1.16484, 1.08132, 0.98047, 1.16484, 1.02989, 1.01054, 0.96225, 0.97454, 0.97454, 1.06598, 0.79004, 1.16344, 1.00351, 0.94629, 0.9973, 0.91016, 0.96777, 0.9043, 0.91082, 0.92481, 0.91082, 1.17308, 0.95748, 0.96927, 0.96927, 1, 0.96927, 0.92481, 0.80597, 1.04839, 1.23393, 1.1781, 0.9245, 1.17308, 1.20808, 0.63218, 0.94261, 1.24822, 1.09971, 1.09971, 1.04839, 1, 0.85273, 0.78032, 1.04839, 1.09971, 1.22326, 0.9245, 1.09836, 1.13525, 1.15222, 0.70424, 0.94729, 0.94729, 0.94729, 0.94729, 0.94729, 0.94729, 0.85498, 0.88506, 0.74817, 0.74817, 0.74817, 0.74817, 0.95782, 0.95782, 0.95782, 0.95782, 0.9858, 1.03989, 0.96924, 0.96924, 0.96924, 0.96924, 0.96924, 1.17308, 0.96924, 0.95402, 0.95402, 0.95402, 0.95402, 0.83089, 0.86237, 0.88409, 0.97454, 0.97454, 0.97454, 0.97454, 0.97454, 0.97454, 0.92916, 0.87207, 0.87533, 0.87533, 0.87533, 0.87533, 0.93146, 0.93146, 0.93146, 0.93146, 0.93854, 1.01054, 0.96225, 0.96225, 0.96225, 0.96225, 0.96225, 1.24822, 0.8761, 1.00351, 1.00351, 1.00351, 1.00351, 0.96777, 0.97454, 0.96777, 0.94729, 0.97454, 0.94729, 0.97454, 0.94729, 0.97454, 0.88506, 0.87207, 0.88506, 0.87207, 0.88506, 0.87207, 0.88506, 0.87207, 0.9858, 0.95391, 0.9858, 0.97454, 0.74817, 0.87533, 0.74817, 0.87533, 0.74817, 0.87533, 0.74817, 0.87533, 0.74817, 0.87533, 0.88449, 0.97454, 0.88449, 0.97454, 0.88449, 0.97454, 1, 1, 0.98039, 1.00176, 0.98039, 1.00176, 0.95782, 0.93146, 0.95782, 0.93146, 0.95782, 0.93146, 0.95782, 1.16484, 0.95782, 0.93146, 0.84421, 1.12761, 0.69238, 1.08132, 1, 1, 0.98047, 0.83231, 1.16484, 1, 1, 0.84723, 1.04861, 0.84723, 0.78755, 0.83231, 1.23736, 1.03989, 1.01054, 1, 1, 1.03989, 1.01054, 0.9857, 1.03849, 1.01054, 0.96924, 0.96225, 0.96924, 0.96225, 0.96924, 0.96225, 0.92383, 0.90171, 0.80595, 1.06598, 1, 1, 0.80595, 1.06598, 0.74524, 0.79004, 0.74524, 0.79004, 0.74524, 0.79004, 0.74524, 0.79004, 1, 1, 0.86091, 1.02759, 0.85771, 1.16344, 0.95402, 1.00351, 0.95402, 1.00351, 0.95402, 1.00351, 0.95402, 1.00351, 0.95402, 1.00351, 0.95402, 1.00351, 0.98448, 0.9973, 0.83089, 0.96777, 0.83089, 0.93285, 0.9043, 0.93285, 0.9043, 0.93285, 0.9043, 1.31868, 0.96927, 0.94729, 0.97454, 0.85498, 0.92916, 0.96924, 0.8761, 1, 1, 0.86091, 1.16344, 1.04839, 1.04839, 1.04839, 1.04839, 1.04839, 1.04839, 1.04839, 1.04839, 1.04839, 0.81965, 0.81965, 0.94729, 0.78032, 0.71022, 0.90883, 0.84171, 0.99877, 0.77596, 1.05734, 1.2, 0.94729, 0.85944, 0.82791, 0.9607, 0.74817, 0.93285, 0.98039, 0.96924, 0.95782, 0.89898, 0.98316, 0.98183, 1.03989, 0.78614, 0.96924, 0.97642, 0.86237, 0.86075, 0.86091, 0.83089, 0.90082, 0.8858, 0.97296, 1.01284, 0.95782, 0.83089, 1.0976, 1.04, 1.03342, 1.2, 1.0675, 1.0976, 0.98205, 1.03809, 1.05097, 1.04, 0.95364, 1.03342, 1.05401, 1.2, 1.02148, 1.0119, 1.04724, 1.0127, 1.02732, 0.96225, 0.8965, 0.97783, 0.93574, 0.94818, 1.30679, 1.0675, 1.11826, 0.99821, 1.0557, 1.0326, 1.2, 1.0675, 0.96225, 1.0675, 1.0326, 0.74817, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.03754, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.87533, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.98705, 1, 1, 1, 1, 1, 1, 0.98448, 0.9973, 0.98448, 0.9973, 0.98448, 0.9973, 0.83089, 0.96777, 1, 1.20088, 0.89903, 1, 1, 0.75155, 0.94945, 0.94945, 0.94945, 0.94945, 1.12317, 1.12317, 1.12317, 0.67603, 0.67603, 1.15621, 0.73584, 1.21191, 1.22135, 1.06483, 0.94868, 0.94868, 0.95996, 1.24633, 1, 1.07497, 0.87709, 0.96927, 1.01473, 0.96927, 1, 1, 1, 0.77295, 1, 1, 1.09836, 1.09836, 1.09836, 1.01522, 0.86321, 0.94434, 0.8649, 0.94434, 0.86182, 1, 1, 1.083, 1, 0.91578, 0.86438, 1.17308, 1.18416, 1.14589, 0.69825, 0.97622, 1.96791, 1.24822, 1.24822, 1.17308, 1.24822, 1.24822, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.42603, 1, 0.99862, 0.99862, 1, 0.87025, 0.87025, 0.87025, 0.87025, 1.17984, 1.42603, 1, 1.42603, 1.42603, 0.99862, 1, 1, 1, 1, 1, 1.2886, 1.04315, 1.15296, 1.34163, 1, 1, 1, 1.10742, 1.10742, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.SegoeuiItalicFactors = SegoeuiItalicFactors;\nconst SegoeuiItalicMetrics = {\n lineHeight: 1.33008,\n lineGap: 0\n};\nexports.SegoeuiItalicMetrics = SegoeuiItalicMetrics;\nconst SegoeuiRegularFactors = [1.76738, 1, 1, 0.98594, 1.02285, 1.10454, 1.06234, 0.96927, 0.92037, 1.19985, 1.2046, 0.90616, 0.90616, 1.07152, 1.1714, 0.78032, 1.20088, 0.78032, 1.40246, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.96927, 0.78032, 0.78032, 1.1714, 1.1714, 1.1714, 0.80597, 0.94084, 0.96706, 0.85944, 0.85734, 0.97093, 0.75842, 0.79936, 0.88198, 0.9831, 0.95782, 0.71387, 0.86969, 0.84636, 1.07796, 1.03584, 0.96924, 0.83968, 0.96924, 0.82826, 0.79649, 0.85771, 0.95132, 0.93119, 0.98965, 0.88433, 0.8287, 0.93365, 1.08612, 1.3638, 1.08612, 1.45786, 0.74627, 0.80499, 0.91484, 1.05707, 0.92383, 1.05882, 0.9403, 1.12654, 1.05882, 1.01756, 1.09011, 1.09011, 0.99414, 1.09011, 1.034, 1.01756, 1.05356, 1.05707, 1.05882, 1.04399, 0.84863, 1.21968, 1.01756, 0.95801, 1.00068, 0.91797, 0.96777, 0.9043, 0.90351, 0.92105, 0.90351, 1.1714, 0.85337, 0.96927, 0.96927, 0.99912, 0.96927, 0.92105, 0.80597, 1.2434, 1.20808, 1.05937, 0.90957, 1.1714, 1.20808, 0.75155, 0.94261, 1.24644, 1.09971, 1.09971, 0.84751, 1, 0.85273, 0.78032, 0.61584, 1.05425, 1.17914, 0.90957, 1.08665, 1.11593, 1.14169, 0.73381, 0.96706, 0.96706, 0.96706, 0.96706, 0.96706, 0.96706, 0.86035, 0.85734, 0.75842, 0.75842, 0.75842, 0.75842, 0.95782, 0.95782, 0.95782, 0.95782, 0.97093, 1.03584, 0.96924, 0.96924, 0.96924, 0.96924, 0.96924, 1.1714, 0.96924, 0.95132, 0.95132, 0.95132, 0.95132, 0.8287, 0.83968, 0.89049, 0.91484, 0.91484, 0.91484, 0.91484, 0.91484, 0.91484, 0.93575, 0.92383, 0.9403, 0.9403, 0.9403, 0.9403, 0.8717, 0.8717, 0.8717, 0.8717, 1.00527, 1.01756, 1.05356, 1.05356, 1.05356, 1.05356, 1.05356, 1.24644, 0.95923, 1.01756, 1.01756, 1.01756, 1.01756, 0.96777, 1.05707, 0.96777, 0.96706, 0.91484, 0.96706, 0.91484, 0.96706, 0.91484, 0.85734, 0.92383, 0.85734, 0.92383, 0.85734, 0.92383, 0.85734, 0.92383, 0.97093, 1.0969, 0.97093, 1.05882, 0.75842, 0.9403, 0.75842, 0.9403, 0.75842, 0.9403, 0.75842, 0.9403, 0.75842, 0.9403, 0.88198, 1.05882, 0.88198, 1.05882, 0.88198, 1.05882, 1, 1, 0.9831, 1.01756, 0.9831, 1.01756, 0.95782, 0.8717, 0.95782, 0.8717, 0.95782, 0.8717, 0.95782, 1.09011, 0.95782, 0.8717, 0.84784, 1.11551, 0.71387, 1.09011, 1, 1, 0.99414, 0.84636, 1.09011, 1, 1, 0.84636, 1.0536, 0.84636, 0.94298, 0.84636, 1.23297, 1.03584, 1.01756, 1, 1, 1.03584, 1.01756, 1.00323, 1.03444, 1.01756, 0.96924, 1.05356, 0.96924, 1.05356, 0.96924, 1.05356, 0.93066, 0.98293, 0.82826, 1.04399, 1, 1, 0.82826, 1.04399, 0.79649, 0.84863, 0.79649, 0.84863, 0.79649, 0.84863, 0.79649, 0.84863, 1, 1, 0.85771, 1.17318, 0.85771, 1.21968, 0.95132, 1.01756, 0.95132, 1.01756, 0.95132, 1.01756, 0.95132, 1.01756, 0.95132, 1.01756, 0.95132, 1.01756, 0.98965, 1.00068, 0.8287, 0.96777, 0.8287, 0.93365, 0.9043, 0.93365, 0.9043, 0.93365, 0.9043, 1.08571, 0.96927, 0.96706, 0.91484, 0.86035, 0.93575, 0.96924, 0.95923, 1, 1, 0.85771, 1.21968, 1.11437, 1.11437, 0.93109, 0.91202, 0.60411, 0.84164, 0.55572, 1.01173, 0.97361, 0.81818, 0.81818, 0.96635, 0.78032, 0.72727, 0.92366, 0.98601, 1.03405, 0.77968, 1.09799, 1.2, 0.96706, 0.85944, 0.85638, 0.96491, 0.75842, 0.93365, 0.9831, 0.96924, 0.95782, 0.86969, 0.94152, 1.07796, 1.03584, 0.78437, 0.96924, 0.98715, 0.83968, 0.83491, 0.85771, 0.8287, 0.94492, 0.88433, 0.9287, 1.0098, 0.95782, 0.8287, 1.0625, 0.98248, 1.03424, 1.2, 1.01071, 1.0625, 0.95246, 1.03809, 1.04912, 0.98248, 1.00221, 1.03424, 1.05443, 1.2, 1.04785, 0.99609, 1.00169, 1.05176, 0.99346, 1.05356, 0.9087, 1.03004, 0.95542, 0.93117, 1.23362, 1.01071, 1.07831, 1.02512, 1.05205, 1.03502, 1.2, 1.01071, 1.05356, 1.01071, 1.03502, 0.75842, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.03719, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.9403, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.04021, 1, 1, 1, 1, 1, 1, 0.98965, 1.00068, 0.98965, 1.00068, 0.98965, 1.00068, 0.8287, 0.96777, 1, 1.20088, 0.89903, 1, 1, 0.75155, 1.03077, 1.03077, 1.03077, 1.03077, 1.13196, 1.13196, 1.13196, 0.67428, 0.67428, 1.16039, 0.73291, 1.20996, 1.22135, 1.06483, 0.94868, 0.94868, 0.95996, 1.24633, 1, 1.07497, 0.87796, 0.96927, 1.01518, 0.96927, 1, 1, 1, 0.77295, 1, 1, 1.10539, 1.10539, 1.11358, 1.06967, 0.86279, 0.94434, 0.86279, 0.94434, 0.86182, 1, 1, 1.083, 1, 0.91578, 0.86507, 1.1714, 1.18416, 1.14589, 0.69825, 0.97622, 1.9697, 1.24822, 1.24822, 1.17238, 1.24822, 1.24822, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.42603, 1, 0.99862, 0.99862, 1, 0.87025, 0.87025, 0.87025, 0.87025, 1.18083, 1.42603, 1, 1.42603, 1.42603, 0.99862, 1, 1, 1, 1, 1, 1.2886, 1.04315, 1.15296, 1.34163, 1, 1, 1, 1.10938, 1.10938, 1, 1, 1, 1.05425, 1.09971, 1.09971, 1.09971, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\nexports.SegoeuiRegularFactors = SegoeuiRegularFactors;\nconst SegoeuiRegularMetrics = {\n lineHeight: 1.33008,\n lineGap: 0\n};\nexports.SegoeuiRegularMetrics = SegoeuiRegularMetrics;\n\n/***/ }),\n/* 57 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PostScriptEvaluator = exports.PostScriptCompiler = exports.PDFFunctionFactory = void 0;\nexports.isPDFFunction = isPDFFunction;\nvar _primitives = __w_pdfjs_require__(4);\nvar _util = __w_pdfjs_require__(2);\nvar _ps_parser = __w_pdfjs_require__(58);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _image_utils = __w_pdfjs_require__(59);\nclass PDFFunctionFactory {\n constructor({\n xref,\n isEvalSupported = true\n }) {\n this.xref = xref;\n this.isEvalSupported = isEvalSupported !== false;\n }\n create(fn) {\n const cachedFunction = this.getCached(fn);\n if (cachedFunction) {\n return cachedFunction;\n }\n const parsedFunction = PDFFunction.parse({\n xref: this.xref,\n isEvalSupported: this.isEvalSupported,\n fn: fn instanceof _primitives.Ref ? this.xref.fetch(fn) : fn\n });\n this._cache(fn, parsedFunction);\n return parsedFunction;\n }\n createFromArray(fnObj) {\n const cachedFunction = this.getCached(fnObj);\n if (cachedFunction) {\n return cachedFunction;\n }\n const parsedFunction = PDFFunction.parseArray({\n xref: this.xref,\n isEvalSupported: this.isEvalSupported,\n fnObj: fnObj instanceof _primitives.Ref ? this.xref.fetch(fnObj) : fnObj\n });\n this._cache(fnObj, parsedFunction);\n return parsedFunction;\n }\n getCached(cacheKey) {\n let fnRef;\n if (cacheKey instanceof _primitives.Ref) {\n fnRef = cacheKey;\n } else if (cacheKey instanceof _primitives.Dict) {\n fnRef = cacheKey.objId;\n } else if (cacheKey instanceof _base_stream.BaseStream) {\n fnRef = cacheKey.dict?.objId;\n }\n if (fnRef) {\n const localFunction = this._localFunctionCache.getByRef(fnRef);\n if (localFunction) {\n return localFunction;\n }\n }\n return null;\n }\n _cache(cacheKey, parsedFunction) {\n if (!parsedFunction) {\n throw new Error('PDFFunctionFactory._cache - expected \"parsedFunction\" argument.');\n }\n let fnRef;\n if (cacheKey instanceof _primitives.Ref) {\n fnRef = cacheKey;\n } else if (cacheKey instanceof _primitives.Dict) {\n fnRef = cacheKey.objId;\n } else if (cacheKey instanceof _base_stream.BaseStream) {\n fnRef = cacheKey.dict?.objId;\n }\n if (fnRef) {\n this._localFunctionCache.set(null, fnRef, parsedFunction);\n }\n }\n get _localFunctionCache() {\n return (0, _util.shadow)(this, \"_localFunctionCache\", new _image_utils.LocalFunctionCache());\n }\n}\nexports.PDFFunctionFactory = PDFFunctionFactory;\nfunction toNumberArray(arr) {\n if (!Array.isArray(arr)) {\n return null;\n }\n const length = arr.length;\n for (let i = 0; i < length; i++) {\n if (typeof arr[i] !== \"number\") {\n const result = new Array(length);\n for (let j = 0; j < length; j++) {\n result[j] = +arr[j];\n }\n return result;\n }\n }\n return arr;\n}\nclass PDFFunction {\n static getSampleArray(size, outputSize, bps, stream) {\n let i, ii;\n let length = 1;\n for (i = 0, ii = size.length; i < ii; i++) {\n length *= size[i];\n }\n length *= outputSize;\n const array = new Array(length);\n let codeSize = 0;\n let codeBuf = 0;\n const sampleMul = 1.0 / (2.0 ** bps - 1);\n const strBytes = stream.getBytes((length * bps + 7) / 8);\n let strIdx = 0;\n for (i = 0; i < length; i++) {\n while (codeSize < bps) {\n codeBuf <<= 8;\n codeBuf |= strBytes[strIdx++];\n codeSize += 8;\n }\n codeSize -= bps;\n array[i] = (codeBuf >> codeSize) * sampleMul;\n codeBuf &= (1 << codeSize) - 1;\n }\n return array;\n }\n static parse({\n xref,\n isEvalSupported,\n fn\n }) {\n const dict = fn.dict || fn;\n const typeNum = dict.get(\"FunctionType\");\n switch (typeNum) {\n case 0:\n return this.constructSampled({\n xref,\n isEvalSupported,\n fn,\n dict\n });\n case 1:\n break;\n case 2:\n return this.constructInterpolated({\n xref,\n isEvalSupported,\n dict\n });\n case 3:\n return this.constructStiched({\n xref,\n isEvalSupported,\n dict\n });\n case 4:\n return this.constructPostScript({\n xref,\n isEvalSupported,\n fn,\n dict\n });\n }\n throw new _util.FormatError(\"Unknown type of function\");\n }\n static parseArray({\n xref,\n isEvalSupported,\n fnObj\n }) {\n if (!Array.isArray(fnObj)) {\n return this.parse({\n xref,\n isEvalSupported,\n fn: fnObj\n });\n }\n const fnArray = [];\n for (const fn of fnObj) {\n fnArray.push(this.parse({\n xref,\n isEvalSupported,\n fn: xref.fetchIfRef(fn)\n }));\n }\n return function (src, srcOffset, dest, destOffset) {\n for (let i = 0, ii = fnArray.length; i < ii; i++) {\n fnArray[i](src, srcOffset, dest, destOffset + i);\n }\n };\n }\n static constructSampled({\n xref,\n isEvalSupported,\n fn,\n dict\n }) {\n function toMultiArray(arr) {\n const inputLength = arr.length;\n const out = [];\n let index = 0;\n for (let i = 0; i < inputLength; i += 2) {\n out[index++] = [arr[i], arr[i + 1]];\n }\n return out;\n }\n function interpolate(x, xmin, xmax, ymin, ymax) {\n return ymin + (x - xmin) * ((ymax - ymin) / (xmax - xmin));\n }\n let domain = toNumberArray(dict.getArray(\"Domain\"));\n let range = toNumberArray(dict.getArray(\"Range\"));\n if (!domain || !range) {\n throw new _util.FormatError(\"No domain or range\");\n }\n const inputSize = domain.length / 2;\n const outputSize = range.length / 2;\n domain = toMultiArray(domain);\n range = toMultiArray(range);\n const size = toNumberArray(dict.getArray(\"Size\"));\n const bps = dict.get(\"BitsPerSample\");\n const order = dict.get(\"Order\") || 1;\n if (order !== 1) {\n (0, _util.info)(\"No support for cubic spline interpolation: \" + order);\n }\n let encode = toNumberArray(dict.getArray(\"Encode\"));\n if (!encode) {\n encode = [];\n for (let i = 0; i < inputSize; ++i) {\n encode.push([0, size[i] - 1]);\n }\n } else {\n encode = toMultiArray(encode);\n }\n let decode = toNumberArray(dict.getArray(\"Decode\"));\n decode = !decode ? range : toMultiArray(decode);\n const samples = this.getSampleArray(size, outputSize, bps, fn);\n return function constructSampledFn(src, srcOffset, dest, destOffset) {\n const cubeVertices = 1 << inputSize;\n const cubeN = new Float64Array(cubeVertices);\n const cubeVertex = new Uint32Array(cubeVertices);\n let i, j;\n for (j = 0; j < cubeVertices; j++) {\n cubeN[j] = 1;\n }\n let k = outputSize,\n pos = 1;\n for (i = 0; i < inputSize; ++i) {\n const domain_2i = domain[i][0];\n const domain_2i_1 = domain[i][1];\n const xi = Math.min(Math.max(src[srcOffset + i], domain_2i), domain_2i_1);\n let e = interpolate(xi, domain_2i, domain_2i_1, encode[i][0], encode[i][1]);\n const size_i = size[i];\n e = Math.min(Math.max(e, 0), size_i - 1);\n const e0 = e < size_i - 1 ? Math.floor(e) : e - 1;\n const n0 = e0 + 1 - e;\n const n1 = e - e0;\n const offset0 = e0 * k;\n const offset1 = offset0 + k;\n for (j = 0; j < cubeVertices; j++) {\n if (j & pos) {\n cubeN[j] *= n1;\n cubeVertex[j] += offset1;\n } else {\n cubeN[j] *= n0;\n cubeVertex[j] += offset0;\n }\n }\n k *= size_i;\n pos <<= 1;\n }\n for (j = 0; j < outputSize; ++j) {\n let rj = 0;\n for (i = 0; i < cubeVertices; i++) {\n rj += samples[cubeVertex[i] + j] * cubeN[i];\n }\n rj = interpolate(rj, 0, 1, decode[j][0], decode[j][1]);\n dest[destOffset + j] = Math.min(Math.max(rj, range[j][0]), range[j][1]);\n }\n };\n }\n static constructInterpolated({\n xref,\n isEvalSupported,\n dict\n }) {\n const c0 = toNumberArray(dict.getArray(\"C0\")) || [0];\n const c1 = toNumberArray(dict.getArray(\"C1\")) || [1];\n const n = dict.get(\"N\");\n const diff = [];\n for (let i = 0, ii = c0.length; i < ii; ++i) {\n diff.push(c1[i] - c0[i]);\n }\n const length = diff.length;\n return function constructInterpolatedFn(src, srcOffset, dest, destOffset) {\n const x = n === 1 ? src[srcOffset] : src[srcOffset] ** n;\n for (let j = 0; j < length; ++j) {\n dest[destOffset + j] = c0[j] + x * diff[j];\n }\n };\n }\n static constructStiched({\n xref,\n isEvalSupported,\n dict\n }) {\n const domain = toNumberArray(dict.getArray(\"Domain\"));\n if (!domain) {\n throw new _util.FormatError(\"No domain\");\n }\n const inputSize = domain.length / 2;\n if (inputSize !== 1) {\n throw new _util.FormatError(\"Bad domain for stiched function\");\n }\n const fns = [];\n for (const fn of dict.get(\"Functions\")) {\n fns.push(this.parse({\n xref,\n isEvalSupported,\n fn: xref.fetchIfRef(fn)\n }));\n }\n const bounds = toNumberArray(dict.getArray(\"Bounds\"));\n const encode = toNumberArray(dict.getArray(\"Encode\"));\n const tmpBuf = new Float32Array(1);\n return function constructStichedFn(src, srcOffset, dest, destOffset) {\n const clip = function constructStichedFromIRClip(v, min, max) {\n if (v > max) {\n v = max;\n } else if (v < min) {\n v = min;\n }\n return v;\n };\n const v = clip(src[srcOffset], domain[0], domain[1]);\n const length = bounds.length;\n let i;\n for (i = 0; i < length; ++i) {\n if (v < bounds[i]) {\n break;\n }\n }\n let dmin = domain[0];\n if (i > 0) {\n dmin = bounds[i - 1];\n }\n let dmax = domain[1];\n if (i < bounds.length) {\n dmax = bounds[i];\n }\n const rmin = encode[2 * i];\n const rmax = encode[2 * i + 1];\n tmpBuf[0] = dmin === dmax ? rmin : rmin + (v - dmin) * (rmax - rmin) / (dmax - dmin);\n fns[i](tmpBuf, 0, dest, destOffset);\n };\n }\n static constructPostScript({\n xref,\n isEvalSupported,\n fn,\n dict\n }) {\n const domain = toNumberArray(dict.getArray(\"Domain\"));\n const range = toNumberArray(dict.getArray(\"Range\"));\n if (!domain) {\n throw new _util.FormatError(\"No domain.\");\n }\n if (!range) {\n throw new _util.FormatError(\"No range.\");\n }\n const lexer = new _ps_parser.PostScriptLexer(fn);\n const parser = new _ps_parser.PostScriptParser(lexer);\n const code = parser.parse();\n if (isEvalSupported && _util.FeatureTest.isEvalSupported) {\n const compiled = new PostScriptCompiler().compile(code, domain, range);\n if (compiled) {\n return new Function(\"src\", \"srcOffset\", \"dest\", \"destOffset\", compiled);\n }\n }\n (0, _util.info)(\"Unable to compile PS function\");\n const numOutputs = range.length >> 1;\n const numInputs = domain.length >> 1;\n const evaluator = new PostScriptEvaluator(code);\n const cache = Object.create(null);\n const MAX_CACHE_SIZE = 2048 * 4;\n let cache_available = MAX_CACHE_SIZE;\n const tmpBuf = new Float32Array(numInputs);\n return function constructPostScriptFn(src, srcOffset, dest, destOffset) {\n let i, value;\n let key = \"\";\n const input = tmpBuf;\n for (i = 0; i < numInputs; i++) {\n value = src[srcOffset + i];\n input[i] = value;\n key += value + \"_\";\n }\n const cachedValue = cache[key];\n if (cachedValue !== undefined) {\n dest.set(cachedValue, destOffset);\n return;\n }\n const output = new Float32Array(numOutputs);\n const stack = evaluator.execute(input);\n const stackIndex = stack.length - numOutputs;\n for (i = 0; i < numOutputs; i++) {\n value = stack[stackIndex + i];\n let bound = range[i * 2];\n if (value < bound) {\n value = bound;\n } else {\n bound = range[i * 2 + 1];\n if (value > bound) {\n value = bound;\n }\n }\n output[i] = value;\n }\n if (cache_available > 0) {\n cache_available--;\n cache[key] = output;\n }\n dest.set(output, destOffset);\n };\n }\n}\nfunction isPDFFunction(v) {\n let fnDict;\n if (v instanceof _primitives.Dict) {\n fnDict = v;\n } else if (v instanceof _base_stream.BaseStream) {\n fnDict = v.dict;\n } else {\n return false;\n }\n return fnDict.has(\"FunctionType\");\n}\nclass PostScriptStack {\n static MAX_STACK_SIZE = 100;\n constructor(initialStack) {\n this.stack = initialStack ? Array.from(initialStack) : [];\n }\n push(value) {\n if (this.stack.length >= PostScriptStack.MAX_STACK_SIZE) {\n throw new Error(\"PostScript function stack overflow.\");\n }\n this.stack.push(value);\n }\n pop() {\n if (this.stack.length <= 0) {\n throw new Error(\"PostScript function stack underflow.\");\n }\n return this.stack.pop();\n }\n copy(n) {\n if (this.stack.length + n >= PostScriptStack.MAX_STACK_SIZE) {\n throw new Error(\"PostScript function stack overflow.\");\n }\n const stack = this.stack;\n for (let i = stack.length - n, j = n - 1; j >= 0; j--, i++) {\n stack.push(stack[i]);\n }\n }\n index(n) {\n this.push(this.stack[this.stack.length - n - 1]);\n }\n roll(n, p) {\n const stack = this.stack;\n const l = stack.length - n;\n const r = stack.length - 1;\n const c = l + (p - Math.floor(p / n) * n);\n for (let i = l, j = r; i < j; i++, j--) {\n const t = stack[i];\n stack[i] = stack[j];\n stack[j] = t;\n }\n for (let i = l, j = c - 1; i < j; i++, j--) {\n const t = stack[i];\n stack[i] = stack[j];\n stack[j] = t;\n }\n for (let i = c, j = r; i < j; i++, j--) {\n const t = stack[i];\n stack[i] = stack[j];\n stack[j] = t;\n }\n }\n}\nclass PostScriptEvaluator {\n constructor(operators) {\n this.operators = operators;\n }\n execute(initialStack) {\n const stack = new PostScriptStack(initialStack);\n let counter = 0;\n const operators = this.operators;\n const length = operators.length;\n let operator, a, b;\n while (counter < length) {\n operator = operators[counter++];\n if (typeof operator === \"number\") {\n stack.push(operator);\n continue;\n }\n switch (operator) {\n case \"jz\":\n b = stack.pop();\n a = stack.pop();\n if (!a) {\n counter = b;\n }\n break;\n case \"j\":\n a = stack.pop();\n counter = a;\n break;\n case \"abs\":\n a = stack.pop();\n stack.push(Math.abs(a));\n break;\n case \"add\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a + b);\n break;\n case \"and\":\n b = stack.pop();\n a = stack.pop();\n if (typeof a === \"boolean\" && typeof b === \"boolean\") {\n stack.push(a && b);\n } else {\n stack.push(a & b);\n }\n break;\n case \"atan\":\n b = stack.pop();\n a = stack.pop();\n a = Math.atan2(a, b) / Math.PI * 180;\n if (a < 0) {\n a += 360;\n }\n stack.push(a);\n break;\n case \"bitshift\":\n b = stack.pop();\n a = stack.pop();\n if (a > 0) {\n stack.push(a << b);\n } else {\n stack.push(a >> b);\n }\n break;\n case \"ceiling\":\n a = stack.pop();\n stack.push(Math.ceil(a));\n break;\n case \"copy\":\n a = stack.pop();\n stack.copy(a);\n break;\n case \"cos\":\n a = stack.pop();\n stack.push(Math.cos(a % 360 / 180 * Math.PI));\n break;\n case \"cvi\":\n a = stack.pop() | 0;\n stack.push(a);\n break;\n case \"cvr\":\n break;\n case \"div\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a / b);\n break;\n case \"dup\":\n stack.copy(1);\n break;\n case \"eq\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a === b);\n break;\n case \"exch\":\n stack.roll(2, 1);\n break;\n case \"exp\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a ** b);\n break;\n case \"false\":\n stack.push(false);\n break;\n case \"floor\":\n a = stack.pop();\n stack.push(Math.floor(a));\n break;\n case \"ge\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a >= b);\n break;\n case \"gt\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a > b);\n break;\n case \"idiv\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a / b | 0);\n break;\n case \"index\":\n a = stack.pop();\n stack.index(a);\n break;\n case \"le\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a <= b);\n break;\n case \"ln\":\n a = stack.pop();\n stack.push(Math.log(a));\n break;\n case \"log\":\n a = stack.pop();\n stack.push(Math.log10(a));\n break;\n case \"lt\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a < b);\n break;\n case \"mod\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a % b);\n break;\n case \"mul\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a * b);\n break;\n case \"ne\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a !== b);\n break;\n case \"neg\":\n a = stack.pop();\n stack.push(-a);\n break;\n case \"not\":\n a = stack.pop();\n if (typeof a === \"boolean\") {\n stack.push(!a);\n } else {\n stack.push(~a);\n }\n break;\n case \"or\":\n b = stack.pop();\n a = stack.pop();\n if (typeof a === \"boolean\" && typeof b === \"boolean\") {\n stack.push(a || b);\n } else {\n stack.push(a | b);\n }\n break;\n case \"pop\":\n stack.pop();\n break;\n case \"roll\":\n b = stack.pop();\n a = stack.pop();\n stack.roll(a, b);\n break;\n case \"round\":\n a = stack.pop();\n stack.push(Math.round(a));\n break;\n case \"sin\":\n a = stack.pop();\n stack.push(Math.sin(a % 360 / 180 * Math.PI));\n break;\n case \"sqrt\":\n a = stack.pop();\n stack.push(Math.sqrt(a));\n break;\n case \"sub\":\n b = stack.pop();\n a = stack.pop();\n stack.push(a - b);\n break;\n case \"true\":\n stack.push(true);\n break;\n case \"truncate\":\n a = stack.pop();\n a = a < 0 ? Math.ceil(a) : Math.floor(a);\n stack.push(a);\n break;\n case \"xor\":\n b = stack.pop();\n a = stack.pop();\n if (typeof a === \"boolean\" && typeof b === \"boolean\") {\n stack.push(a !== b);\n } else {\n stack.push(a ^ b);\n }\n break;\n default:\n throw new _util.FormatError(`Unknown operator ${operator}`);\n }\n }\n return stack.stack;\n }\n}\nexports.PostScriptEvaluator = PostScriptEvaluator;\nclass AstNode {\n constructor(type) {\n this.type = type;\n }\n visit(visitor) {\n (0, _util.unreachable)(\"abstract method\");\n }\n}\nclass AstArgument extends AstNode {\n constructor(index, min, max) {\n super(\"args\");\n this.index = index;\n this.min = min;\n this.max = max;\n }\n visit(visitor) {\n visitor.visitArgument(this);\n }\n}\nclass AstLiteral extends AstNode {\n constructor(number) {\n super(\"literal\");\n this.number = number;\n this.min = number;\n this.max = number;\n }\n visit(visitor) {\n visitor.visitLiteral(this);\n }\n}\nclass AstBinaryOperation extends AstNode {\n constructor(op, arg1, arg2, min, max) {\n super(\"binary\");\n this.op = op;\n this.arg1 = arg1;\n this.arg2 = arg2;\n this.min = min;\n this.max = max;\n }\n visit(visitor) {\n visitor.visitBinaryOperation(this);\n }\n}\nclass AstMin extends AstNode {\n constructor(arg, max) {\n super(\"max\");\n this.arg = arg;\n this.min = arg.min;\n this.max = max;\n }\n visit(visitor) {\n visitor.visitMin(this);\n }\n}\nclass AstVariable extends AstNode {\n constructor(index, min, max) {\n super(\"var\");\n this.index = index;\n this.min = min;\n this.max = max;\n }\n visit(visitor) {\n visitor.visitVariable(this);\n }\n}\nclass AstVariableDefinition extends AstNode {\n constructor(variable, arg) {\n super(\"definition\");\n this.variable = variable;\n this.arg = arg;\n }\n visit(visitor) {\n visitor.visitVariableDefinition(this);\n }\n}\nclass ExpressionBuilderVisitor {\n constructor() {\n this.parts = [];\n }\n visitArgument(arg) {\n this.parts.push(\"Math.max(\", arg.min, \", Math.min(\", arg.max, \", src[srcOffset + \", arg.index, \"]))\");\n }\n visitVariable(variable) {\n this.parts.push(\"v\", variable.index);\n }\n visitLiteral(literal) {\n this.parts.push(literal.number);\n }\n visitBinaryOperation(operation) {\n this.parts.push(\"(\");\n operation.arg1.visit(this);\n this.parts.push(\" \", operation.op, \" \");\n operation.arg2.visit(this);\n this.parts.push(\")\");\n }\n visitVariableDefinition(definition) {\n this.parts.push(\"var \");\n definition.variable.visit(this);\n this.parts.push(\" = \");\n definition.arg.visit(this);\n this.parts.push(\";\");\n }\n visitMin(max) {\n this.parts.push(\"Math.min(\");\n max.arg.visit(this);\n this.parts.push(\", \", max.max, \")\");\n }\n toString() {\n return this.parts.join(\"\");\n }\n}\nfunction buildAddOperation(num1, num2) {\n if (num2.type === \"literal\" && num2.number === 0) {\n return num1;\n }\n if (num1.type === \"literal\" && num1.number === 0) {\n return num2;\n }\n if (num2.type === \"literal\" && num1.type === \"literal\") {\n return new AstLiteral(num1.number + num2.number);\n }\n return new AstBinaryOperation(\"+\", num1, num2, num1.min + num2.min, num1.max + num2.max);\n}\nfunction buildMulOperation(num1, num2) {\n if (num2.type === \"literal\") {\n if (num2.number === 0) {\n return new AstLiteral(0);\n } else if (num2.number === 1) {\n return num1;\n } else if (num1.type === \"literal\") {\n return new AstLiteral(num1.number * num2.number);\n }\n }\n if (num1.type === \"literal\") {\n if (num1.number === 0) {\n return new AstLiteral(0);\n } else if (num1.number === 1) {\n return num2;\n }\n }\n const min = Math.min(num1.min * num2.min, num1.min * num2.max, num1.max * num2.min, num1.max * num2.max);\n const max = Math.max(num1.min * num2.min, num1.min * num2.max, num1.max * num2.min, num1.max * num2.max);\n return new AstBinaryOperation(\"*\", num1, num2, min, max);\n}\nfunction buildSubOperation(num1, num2) {\n if (num2.type === \"literal\") {\n if (num2.number === 0) {\n return num1;\n } else if (num1.type === \"literal\") {\n return new AstLiteral(num1.number - num2.number);\n }\n }\n if (num2.type === \"binary\" && num2.op === \"-\" && num1.type === \"literal\" && num1.number === 1 && num2.arg1.type === \"literal\" && num2.arg1.number === 1) {\n return num2.arg2;\n }\n return new AstBinaryOperation(\"-\", num1, num2, num1.min - num2.max, num1.max - num2.min);\n}\nfunction buildMinOperation(num1, max) {\n if (num1.min >= max) {\n return new AstLiteral(max);\n } else if (num1.max <= max) {\n return num1;\n }\n return new AstMin(num1, max);\n}\nclass PostScriptCompiler {\n compile(code, domain, range) {\n const stack = [];\n const instructions = [];\n const inputSize = domain.length >> 1,\n outputSize = range.length >> 1;\n let lastRegister = 0;\n let n, j;\n let num1, num2, ast1, ast2, tmpVar, item;\n for (let i = 0; i < inputSize; i++) {\n stack.push(new AstArgument(i, domain[i * 2], domain[i * 2 + 1]));\n }\n for (let i = 0, ii = code.length; i < ii; i++) {\n item = code[i];\n if (typeof item === \"number\") {\n stack.push(new AstLiteral(item));\n continue;\n }\n switch (item) {\n case \"add\":\n if (stack.length < 2) {\n return null;\n }\n num2 = stack.pop();\n num1 = stack.pop();\n stack.push(buildAddOperation(num1, num2));\n break;\n case \"cvr\":\n if (stack.length < 1) {\n return null;\n }\n break;\n case \"mul\":\n if (stack.length < 2) {\n return null;\n }\n num2 = stack.pop();\n num1 = stack.pop();\n stack.push(buildMulOperation(num1, num2));\n break;\n case \"sub\":\n if (stack.length < 2) {\n return null;\n }\n num2 = stack.pop();\n num1 = stack.pop();\n stack.push(buildSubOperation(num1, num2));\n break;\n case \"exch\":\n if (stack.length < 2) {\n return null;\n }\n ast1 = stack.pop();\n ast2 = stack.pop();\n stack.push(ast1, ast2);\n break;\n case \"pop\":\n if (stack.length < 1) {\n return null;\n }\n stack.pop();\n break;\n case \"index\":\n if (stack.length < 1) {\n return null;\n }\n num1 = stack.pop();\n if (num1.type !== \"literal\") {\n return null;\n }\n n = num1.number;\n if (n < 0 || !Number.isInteger(n) || stack.length < n) {\n return null;\n }\n ast1 = stack[stack.length - n - 1];\n if (ast1.type === \"literal\" || ast1.type === \"var\") {\n stack.push(ast1);\n break;\n }\n tmpVar = new AstVariable(lastRegister++, ast1.min, ast1.max);\n stack[stack.length - n - 1] = tmpVar;\n stack.push(tmpVar);\n instructions.push(new AstVariableDefinition(tmpVar, ast1));\n break;\n case \"dup\":\n if (stack.length < 1) {\n return null;\n }\n if (typeof code[i + 1] === \"number\" && code[i + 2] === \"gt\" && code[i + 3] === i + 7 && code[i + 4] === \"jz\" && code[i + 5] === \"pop\" && code[i + 6] === code[i + 1]) {\n num1 = stack.pop();\n stack.push(buildMinOperation(num1, code[i + 1]));\n i += 6;\n break;\n }\n ast1 = stack.at(-1);\n if (ast1.type === \"literal\" || ast1.type === \"var\") {\n stack.push(ast1);\n break;\n }\n tmpVar = new AstVariable(lastRegister++, ast1.min, ast1.max);\n stack[stack.length - 1] = tmpVar;\n stack.push(tmpVar);\n instructions.push(new AstVariableDefinition(tmpVar, ast1));\n break;\n case \"roll\":\n if (stack.length < 2) {\n return null;\n }\n num2 = stack.pop();\n num1 = stack.pop();\n if (num2.type !== \"literal\" || num1.type !== \"literal\") {\n return null;\n }\n j = num2.number;\n n = num1.number;\n if (n <= 0 || !Number.isInteger(n) || !Number.isInteger(j) || stack.length < n) {\n return null;\n }\n j = (j % n + n) % n;\n if (j === 0) {\n break;\n }\n stack.push(...stack.splice(stack.length - n, n - j));\n break;\n default:\n return null;\n }\n }\n if (stack.length !== outputSize) {\n return null;\n }\n const result = [];\n for (const instruction of instructions) {\n const statementBuilder = new ExpressionBuilderVisitor();\n instruction.visit(statementBuilder);\n result.push(statementBuilder.toString());\n }\n for (let i = 0, ii = stack.length; i < ii; i++) {\n const expr = stack[i],\n statementBuilder = new ExpressionBuilderVisitor();\n expr.visit(statementBuilder);\n const min = range[i * 2],\n max = range[i * 2 + 1];\n const out = [statementBuilder.toString()];\n if (min > expr.min) {\n out.unshift(\"Math.max(\", min, \", \");\n out.push(\")\");\n }\n if (max < expr.max) {\n out.unshift(\"Math.min(\", max, \", \");\n out.push(\")\");\n }\n out.unshift(\"dest[destOffset + \", i, \"] = \");\n out.push(\";\");\n result.push(out.join(\"\"));\n }\n return result.join(\"\\n\");\n }\n}\nexports.PostScriptCompiler = PostScriptCompiler;\n\n/***/ }),\n/* 58 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PostScriptParser = exports.PostScriptLexer = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _core_utils = __w_pdfjs_require__(3);\nclass PostScriptParser {\n constructor(lexer) {\n this.lexer = lexer;\n this.operators = [];\n this.token = null;\n this.prev = null;\n }\n nextToken() {\n this.prev = this.token;\n this.token = this.lexer.getToken();\n }\n accept(type) {\n if (this.token.type === type) {\n this.nextToken();\n return true;\n }\n return false;\n }\n expect(type) {\n if (this.accept(type)) {\n return true;\n }\n throw new _util.FormatError(`Unexpected symbol: found ${this.token.type} expected ${type}.`);\n }\n parse() {\n this.nextToken();\n this.expect(PostScriptTokenTypes.LBRACE);\n this.parseBlock();\n this.expect(PostScriptTokenTypes.RBRACE);\n return this.operators;\n }\n parseBlock() {\n while (true) {\n if (this.accept(PostScriptTokenTypes.NUMBER)) {\n this.operators.push(this.prev.value);\n } else if (this.accept(PostScriptTokenTypes.OPERATOR)) {\n this.operators.push(this.prev.value);\n } else if (this.accept(PostScriptTokenTypes.LBRACE)) {\n this.parseCondition();\n } else {\n return;\n }\n }\n }\n parseCondition() {\n const conditionLocation = this.operators.length;\n this.operators.push(null, null);\n this.parseBlock();\n this.expect(PostScriptTokenTypes.RBRACE);\n if (this.accept(PostScriptTokenTypes.IF)) {\n this.operators[conditionLocation] = this.operators.length;\n this.operators[conditionLocation + 1] = \"jz\";\n } else if (this.accept(PostScriptTokenTypes.LBRACE)) {\n const jumpLocation = this.operators.length;\n this.operators.push(null, null);\n const endOfTrue = this.operators.length;\n this.parseBlock();\n this.expect(PostScriptTokenTypes.RBRACE);\n this.expect(PostScriptTokenTypes.IFELSE);\n this.operators[jumpLocation] = this.operators.length;\n this.operators[jumpLocation + 1] = \"j\";\n this.operators[conditionLocation] = endOfTrue;\n this.operators[conditionLocation + 1] = \"jz\";\n } else {\n throw new _util.FormatError(\"PS Function: error parsing conditional.\");\n }\n }\n}\nexports.PostScriptParser = PostScriptParser;\nconst PostScriptTokenTypes = {\n LBRACE: 0,\n RBRACE: 1,\n NUMBER: 2,\n OPERATOR: 3,\n IF: 4,\n IFELSE: 5\n};\nclass PostScriptToken {\n static get opCache() {\n return (0, _util.shadow)(this, \"opCache\", Object.create(null));\n }\n constructor(type, value) {\n this.type = type;\n this.value = value;\n }\n static getOperator(op) {\n return PostScriptToken.opCache[op] ||= new PostScriptToken(PostScriptTokenTypes.OPERATOR, op);\n }\n static get LBRACE() {\n return (0, _util.shadow)(this, \"LBRACE\", new PostScriptToken(PostScriptTokenTypes.LBRACE, \"{\"));\n }\n static get RBRACE() {\n return (0, _util.shadow)(this, \"RBRACE\", new PostScriptToken(PostScriptTokenTypes.RBRACE, \"}\"));\n }\n static get IF() {\n return (0, _util.shadow)(this, \"IF\", new PostScriptToken(PostScriptTokenTypes.IF, \"IF\"));\n }\n static get IFELSE() {\n return (0, _util.shadow)(this, \"IFELSE\", new PostScriptToken(PostScriptTokenTypes.IFELSE, \"IFELSE\"));\n }\n}\nclass PostScriptLexer {\n constructor(stream) {\n this.stream = stream;\n this.nextChar();\n this.strBuf = [];\n }\n nextChar() {\n return this.currentChar = this.stream.getByte();\n }\n getToken() {\n let comment = false;\n let ch = this.currentChar;\n while (true) {\n if (ch < 0) {\n return _primitives.EOF;\n }\n if (comment) {\n if (ch === 0x0a || ch === 0x0d) {\n comment = false;\n }\n } else if (ch === 0x25) {\n comment = true;\n } else if (!(0, _core_utils.isWhiteSpace)(ch)) {\n break;\n }\n ch = this.nextChar();\n }\n switch (ch | 0) {\n case 0x30:\n case 0x31:\n case 0x32:\n case 0x33:\n case 0x34:\n case 0x35:\n case 0x36:\n case 0x37:\n case 0x38:\n case 0x39:\n case 0x2b:\n case 0x2d:\n case 0x2e:\n return new PostScriptToken(PostScriptTokenTypes.NUMBER, this.getNumber());\n case 0x7b:\n this.nextChar();\n return PostScriptToken.LBRACE;\n case 0x7d:\n this.nextChar();\n return PostScriptToken.RBRACE;\n }\n const strBuf = this.strBuf;\n strBuf.length = 0;\n strBuf[0] = String.fromCharCode(ch);\n while ((ch = this.nextChar()) >= 0 && (ch >= 0x41 && ch <= 0x5a || ch >= 0x61 && ch <= 0x7a)) {\n strBuf.push(String.fromCharCode(ch));\n }\n const str = strBuf.join(\"\");\n switch (str.toLowerCase()) {\n case \"if\":\n return PostScriptToken.IF;\n case \"ifelse\":\n return PostScriptToken.IFELSE;\n default:\n return PostScriptToken.getOperator(str);\n }\n }\n getNumber() {\n let ch = this.currentChar;\n const strBuf = this.strBuf;\n strBuf.length = 0;\n strBuf[0] = String.fromCharCode(ch);\n while ((ch = this.nextChar()) >= 0) {\n if (ch >= 0x30 && ch <= 0x39 || ch === 0x2d || ch === 0x2e) {\n strBuf.push(String.fromCharCode(ch));\n } else {\n break;\n }\n }\n const value = parseFloat(strBuf.join(\"\"));\n if (isNaN(value)) {\n throw new _util.FormatError(`Invalid floating point number: ${value}`);\n }\n return value;\n }\n}\nexports.PostScriptLexer = PostScriptLexer;\n\n/***/ }),\n/* 59 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.RegionalImageCache = exports.LocalTilingPatternCache = exports.LocalImageCache = exports.LocalGStateCache = exports.LocalFunctionCache = exports.LocalColorSpaceCache = exports.GlobalImageCache = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nclass BaseLocalCache {\n constructor(options) {\n if (this.constructor === BaseLocalCache) {\n (0, _util.unreachable)(\"Cannot initialize BaseLocalCache.\");\n }\n this._onlyRefs = options?.onlyRefs === true;\n if (!this._onlyRefs) {\n this._nameRefMap = new Map();\n this._imageMap = new Map();\n }\n this._imageCache = new _primitives.RefSetCache();\n }\n getByName(name) {\n if (this._onlyRefs) {\n (0, _util.unreachable)(\"Should not call `getByName` method.\");\n }\n const ref = this._nameRefMap.get(name);\n if (ref) {\n return this.getByRef(ref);\n }\n return this._imageMap.get(name) || null;\n }\n getByRef(ref) {\n return this._imageCache.get(ref) || null;\n }\n set(name, ref, data) {\n (0, _util.unreachable)(\"Abstract method `set` called.\");\n }\n}\nclass LocalImageCache extends BaseLocalCache {\n set(name, ref = null, data) {\n if (typeof name !== \"string\") {\n throw new Error('LocalImageCache.set - expected \"name\" argument.');\n }\n if (ref) {\n if (this._imageCache.has(ref)) {\n return;\n }\n this._nameRefMap.set(name, ref);\n this._imageCache.put(ref, data);\n return;\n }\n if (this._imageMap.has(name)) {\n return;\n }\n this._imageMap.set(name, data);\n }\n}\nexports.LocalImageCache = LocalImageCache;\nclass LocalColorSpaceCache extends BaseLocalCache {\n set(name = null, ref = null, data) {\n if (typeof name !== \"string\" && !ref) {\n throw new Error('LocalColorSpaceCache.set - expected \"name\" and/or \"ref\" argument.');\n }\n if (ref) {\n if (this._imageCache.has(ref)) {\n return;\n }\n if (name !== null) {\n this._nameRefMap.set(name, ref);\n }\n this._imageCache.put(ref, data);\n return;\n }\n if (this._imageMap.has(name)) {\n return;\n }\n this._imageMap.set(name, data);\n }\n}\nexports.LocalColorSpaceCache = LocalColorSpaceCache;\nclass LocalFunctionCache extends BaseLocalCache {\n constructor(options) {\n super({\n onlyRefs: true\n });\n }\n set(name = null, ref, data) {\n if (!ref) {\n throw new Error('LocalFunctionCache.set - expected \"ref\" argument.');\n }\n if (this._imageCache.has(ref)) {\n return;\n }\n this._imageCache.put(ref, data);\n }\n}\nexports.LocalFunctionCache = LocalFunctionCache;\nclass LocalGStateCache extends BaseLocalCache {\n set(name, ref = null, data) {\n if (typeof name !== \"string\") {\n throw new Error('LocalGStateCache.set - expected \"name\" argument.');\n }\n if (ref) {\n if (this._imageCache.has(ref)) {\n return;\n }\n this._nameRefMap.set(name, ref);\n this._imageCache.put(ref, data);\n return;\n }\n if (this._imageMap.has(name)) {\n return;\n }\n this._imageMap.set(name, data);\n }\n}\nexports.LocalGStateCache = LocalGStateCache;\nclass LocalTilingPatternCache extends BaseLocalCache {\n constructor(options) {\n super({\n onlyRefs: true\n });\n }\n set(name = null, ref, data) {\n if (!ref) {\n throw new Error('LocalTilingPatternCache.set - expected \"ref\" argument.');\n }\n if (this._imageCache.has(ref)) {\n return;\n }\n this._imageCache.put(ref, data);\n }\n}\nexports.LocalTilingPatternCache = LocalTilingPatternCache;\nclass RegionalImageCache extends BaseLocalCache {\n constructor(options) {\n super({\n onlyRefs: true\n });\n }\n set(name = null, ref, data) {\n if (!ref) {\n throw new Error('RegionalImageCache.set - expected \"ref\" argument.');\n }\n if (this._imageCache.has(ref)) {\n return;\n }\n this._imageCache.put(ref, data);\n }\n}\nexports.RegionalImageCache = RegionalImageCache;\nclass GlobalImageCache {\n static NUM_PAGES_THRESHOLD = 2;\n static MIN_IMAGES_TO_CACHE = 10;\n static MAX_BYTE_SIZE = 5 * _util.MAX_IMAGE_SIZE_TO_CACHE;\n constructor() {\n this._refCache = new _primitives.RefSetCache();\n this._imageCache = new _primitives.RefSetCache();\n }\n get _byteSize() {\n let byteSize = 0;\n for (const imageData of this._imageCache) {\n byteSize += imageData.byteSize;\n }\n return byteSize;\n }\n get _cacheLimitReached() {\n if (this._imageCache.size < GlobalImageCache.MIN_IMAGES_TO_CACHE) {\n return false;\n }\n if (this._byteSize < GlobalImageCache.MAX_BYTE_SIZE) {\n return false;\n }\n return true;\n }\n shouldCache(ref, pageIndex) {\n let pageIndexSet = this._refCache.get(ref);\n if (!pageIndexSet) {\n pageIndexSet = new Set();\n this._refCache.put(ref, pageIndexSet);\n }\n pageIndexSet.add(pageIndex);\n if (pageIndexSet.size < GlobalImageCache.NUM_PAGES_THRESHOLD) {\n return false;\n }\n if (!this._imageCache.has(ref) && this._cacheLimitReached) {\n return false;\n }\n return true;\n }\n addByteSize(ref, byteSize) {\n const imageData = this._imageCache.get(ref);\n if (!imageData) {\n return;\n }\n if (imageData.byteSize) {\n return;\n }\n imageData.byteSize = byteSize;\n }\n getData(ref, pageIndex) {\n const pageIndexSet = this._refCache.get(ref);\n if (!pageIndexSet) {\n return null;\n }\n if (pageIndexSet.size < GlobalImageCache.NUM_PAGES_THRESHOLD) {\n return null;\n }\n const imageData = this._imageCache.get(ref);\n if (!imageData) {\n return null;\n }\n pageIndexSet.add(pageIndex);\n return imageData;\n }\n setData(ref, data) {\n if (!this._refCache.has(ref)) {\n throw new Error('GlobalImageCache.setData - expected \"shouldCache\" to have been called.');\n }\n if (this._imageCache.has(ref)) {\n return;\n }\n if (this._cacheLimitReached) {\n (0, _util.warn)(\"GlobalImageCache.setData - cache limit reached.\");\n return;\n }\n this._imageCache.put(ref, data);\n }\n clear(onlyData = false) {\n if (!onlyData) {\n this._refCache.clear();\n }\n this._imageCache.clear();\n }\n}\nexports.GlobalImageCache = GlobalImageCache;\n\n/***/ }),\n/* 60 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.bidi = bidi;\nvar _util = __w_pdfjs_require__(2);\nconst baseTypes = [\"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"S\", \"B\", \"S\", \"WS\", \"B\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"B\", \"B\", \"B\", \"S\", \"WS\", \"ON\", \"ON\", \"ET\", \"ET\", \"ET\", \"ON\", \"ON\", \"ON\", \"ON\", \"ON\", \"ES\", \"CS\", \"ES\", \"CS\", \"CS\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"CS\", \"ON\", \"ON\", \"ON\", \"ON\", \"ON\", \"ON\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"ON\", \"ON\", \"ON\", \"ON\", \"ON\", \"ON\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"ON\", \"ON\", \"ON\", \"ON\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"B\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"BN\", \"CS\", \"ON\", \"ET\", \"ET\", \"ET\", \"ET\", \"ON\", \"ON\", \"ON\", \"ON\", \"L\", \"ON\", \"ON\", \"BN\", \"ON\", \"ON\", \"ET\", \"ET\", \"EN\", \"EN\", \"ON\", \"L\", \"ON\", \"ON\", \"ON\", \"EN\", \"L\", \"ON\", \"ON\", \"ON\", \"ON\", \"ON\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"ON\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"ON\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\", \"L\"];\nconst arabicTypes = [\"AN\", \"AN\", \"AN\", \"AN\", \"AN\", \"AN\", \"ON\", \"ON\", \"AL\", \"ET\", \"ET\", \"AL\", \"CS\", \"AL\", \"ON\", \"ON\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"AL\", \"AL\", \"\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"AN\", \"AN\", \"AN\", \"AN\", \"AN\", \"AN\", \"AN\", \"AN\", \"AN\", \"AN\", \"ET\", \"AN\", \"AN\", \"AL\", \"AL\", \"AL\", \"NSM\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"AN\", \"ON\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"AL\", \"AL\", \"NSM\", \"NSM\", \"ON\", \"NSM\", \"NSM\", \"NSM\", \"NSM\", \"AL\", \"AL\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"EN\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\", \"AL\"];\nfunction isOdd(i) {\n return (i & 1) !== 0;\n}\nfunction isEven(i) {\n return (i & 1) === 0;\n}\nfunction findUnequal(arr, start, value) {\n let j, jj;\n for (j = start, jj = arr.length; j < jj; ++j) {\n if (arr[j] !== value) {\n return j;\n }\n }\n return j;\n}\nfunction setValues(arr, start, end, value) {\n for (let j = start; j < end; ++j) {\n arr[j] = value;\n }\n}\nfunction reverseValues(arr, start, end) {\n for (let i = start, j = end - 1; i < j; ++i, --j) {\n const temp = arr[i];\n arr[i] = arr[j];\n arr[j] = temp;\n }\n}\nfunction createBidiText(str, isLTR, vertical = false) {\n let dir = \"ltr\";\n if (vertical) {\n dir = \"ttb\";\n } else if (!isLTR) {\n dir = \"rtl\";\n }\n return {\n str,\n dir\n };\n}\nconst chars = [];\nconst types = [];\nfunction bidi(str, startLevel = -1, vertical = false) {\n let isLTR = true;\n const strLength = str.length;\n if (strLength === 0 || vertical) {\n return createBidiText(str, isLTR, vertical);\n }\n chars.length = strLength;\n types.length = strLength;\n let numBidi = 0;\n let i, ii;\n for (i = 0; i < strLength; ++i) {\n chars[i] = str.charAt(i);\n const charCode = str.charCodeAt(i);\n let charType = \"L\";\n if (charCode <= 0x00ff) {\n charType = baseTypes[charCode];\n } else if (0x0590 <= charCode && charCode <= 0x05f4) {\n charType = \"R\";\n } else if (0x0600 <= charCode && charCode <= 0x06ff) {\n charType = arabicTypes[charCode & 0xff];\n if (!charType) {\n (0, _util.warn)(\"Bidi: invalid Unicode character \" + charCode.toString(16));\n }\n } else if (0x0700 <= charCode && charCode <= 0x08ac || 0xfb50 <= charCode && charCode <= 0xfdff || 0xfe70 <= charCode && charCode <= 0xfeff) {\n charType = \"AL\";\n }\n if (charType === \"R\" || charType === \"AL\" || charType === \"AN\") {\n numBidi++;\n }\n types[i] = charType;\n }\n if (numBidi === 0) {\n isLTR = true;\n return createBidiText(str, isLTR);\n }\n if (startLevel === -1) {\n if (numBidi / strLength < 0.3 && strLength > 4) {\n isLTR = true;\n startLevel = 0;\n } else {\n isLTR = false;\n startLevel = 1;\n }\n }\n const levels = [];\n for (i = 0; i < strLength; ++i) {\n levels[i] = startLevel;\n }\n const e = isOdd(startLevel) ? \"R\" : \"L\";\n const sor = e;\n const eor = sor;\n let lastType = sor;\n for (i = 0; i < strLength; ++i) {\n if (types[i] === \"NSM\") {\n types[i] = lastType;\n } else {\n lastType = types[i];\n }\n }\n lastType = sor;\n let t;\n for (i = 0; i < strLength; ++i) {\n t = types[i];\n if (t === \"EN\") {\n types[i] = lastType === \"AL\" ? \"AN\" : \"EN\";\n } else if (t === \"R\" || t === \"L\" || t === \"AL\") {\n lastType = t;\n }\n }\n for (i = 0; i < strLength; ++i) {\n t = types[i];\n if (t === \"AL\") {\n types[i] = \"R\";\n }\n }\n for (i = 1; i < strLength - 1; ++i) {\n if (types[i] === \"ES\" && types[i - 1] === \"EN\" && types[i + 1] === \"EN\") {\n types[i] = \"EN\";\n }\n if (types[i] === \"CS\" && (types[i - 1] === \"EN\" || types[i - 1] === \"AN\") && types[i + 1] === types[i - 1]) {\n types[i] = types[i - 1];\n }\n }\n for (i = 0; i < strLength; ++i) {\n if (types[i] === \"EN\") {\n for (let j = i - 1; j >= 0; --j) {\n if (types[j] !== \"ET\") {\n break;\n }\n types[j] = \"EN\";\n }\n for (let j = i + 1; j < strLength; ++j) {\n if (types[j] !== \"ET\") {\n break;\n }\n types[j] = \"EN\";\n }\n }\n }\n for (i = 0; i < strLength; ++i) {\n t = types[i];\n if (t === \"WS\" || t === \"ES\" || t === \"ET\" || t === \"CS\") {\n types[i] = \"ON\";\n }\n }\n lastType = sor;\n for (i = 0; i < strLength; ++i) {\n t = types[i];\n if (t === \"EN\") {\n types[i] = lastType === \"L\" ? \"L\" : \"EN\";\n } else if (t === \"R\" || t === \"L\") {\n lastType = t;\n }\n }\n for (i = 0; i < strLength; ++i) {\n if (types[i] === \"ON\") {\n const end = findUnequal(types, i + 1, \"ON\");\n let before = sor;\n if (i > 0) {\n before = types[i - 1];\n }\n let after = eor;\n if (end + 1 < strLength) {\n after = types[end + 1];\n }\n if (before !== \"L\") {\n before = \"R\";\n }\n if (after !== \"L\") {\n after = \"R\";\n }\n if (before === after) {\n setValues(types, i, end, before);\n }\n i = end - 1;\n }\n }\n for (i = 0; i < strLength; ++i) {\n if (types[i] === \"ON\") {\n types[i] = e;\n }\n }\n for (i = 0; i < strLength; ++i) {\n t = types[i];\n if (isEven(levels[i])) {\n if (t === \"R\") {\n levels[i] += 1;\n } else if (t === \"AN\" || t === \"EN\") {\n levels[i] += 2;\n }\n } else if (t === \"L\" || t === \"AN\" || t === \"EN\") {\n levels[i] += 1;\n }\n }\n let highestLevel = -1;\n let lowestOddLevel = 99;\n let level;\n for (i = 0, ii = levels.length; i < ii; ++i) {\n level = levels[i];\n if (highestLevel < level) {\n highestLevel = level;\n }\n if (lowestOddLevel > level && isOdd(level)) {\n lowestOddLevel = level;\n }\n }\n for (level = highestLevel; level >= lowestOddLevel; --level) {\n let start = -1;\n for (i = 0, ii = levels.length; i < ii; ++i) {\n if (levels[i] < level) {\n if (start >= 0) {\n reverseValues(chars, start, i);\n start = -1;\n }\n } else if (start < 0) {\n start = i;\n }\n }\n if (start >= 0) {\n reverseValues(chars, start, levels.length);\n }\n }\n for (i = 0, ii = chars.length; i < ii; ++i) {\n const ch = chars[i];\n if (ch === \"<\" || ch === \">\") {\n chars[i] = \"\";\n }\n }\n return createBidiText(chars.join(\"\"), isLTR);\n}\n\n/***/ }),\n/* 61 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getFontSubstitution = getFontSubstitution;\nvar _fonts_utils = __w_pdfjs_require__(38);\nvar _core_utils = __w_pdfjs_require__(3);\nconst NORMAL = {\n style: \"normal\",\n weight: \"normal\"\n};\nconst BOLD = {\n style: \"normal\",\n weight: \"bold\"\n};\nconst ITALIC = {\n style: \"italic\",\n weight: \"normal\"\n};\nconst BOLDITALIC = {\n style: \"italic\",\n weight: \"bold\"\n};\nconst substitutionMap = new Map([[\"Times-Roman\", {\n local: [\"Times New Roman\", \"Times-Roman\", \"Times\", \"Liberation Serif\", \"Nimbus Roman\", \"Nimbus Roman L\", \"Tinos\", \"Thorndale\", \"TeX Gyre Termes\", \"FreeSerif\", \"DejaVu Serif\", \"Bitstream Vera Serif\", \"Ubuntu\"],\n style: NORMAL,\n ultimate: \"serif\"\n}], [\"Times-Bold\", {\n alias: \"Times-Roman\",\n style: BOLD,\n ultimate: \"serif\"\n}], [\"Times-Italic\", {\n alias: \"Times-Roman\",\n style: ITALIC,\n ultimate: \"serif\"\n}], [\"Times-BoldItalic\", {\n alias: \"Times-Roman\",\n style: BOLDITALIC,\n ultimate: \"serif\"\n}], [\"Helvetica\", {\n local: [\"Helvetica\", \"Helvetica Neue\", \"Arial\", \"Arial Nova\", \"Liberation Sans\", \"Arimo\", \"Nimbus Sans\", \"Nimbus Sans L\", \"A030\", \"TeX Gyre Heros\", \"FreeSans\", \"DejaVu Sans\", \"Albany\", \"Bitstream Vera Sans\", \"Arial Unicode MS\", \"Microsoft Sans Serif\", \"Apple Symbols\", \"Cantarell\"],\n path: \"LiberationSans-Regular.ttf\",\n style: NORMAL,\n ultimate: \"sans-serif\"\n}], [\"Helvetica-Bold\", {\n alias: \"Helvetica\",\n path: \"LiberationSans-Bold.ttf\",\n style: BOLD,\n ultimate: \"sans-serif\"\n}], [\"Helvetica-Oblique\", {\n alias: \"Helvetica\",\n path: \"LiberationSans-Italic.ttf\",\n style: ITALIC,\n ultimate: \"sans-serif\"\n}], [\"Helvetica-BoldOblique\", {\n alias: \"Helvetica\",\n path: \"LiberationSans-BoldItalic.ttf\",\n style: BOLDITALIC,\n ultimate: \"sans-serif\"\n}], [\"Courier\", {\n local: [\"Courier\", \"Courier New\", \"Liberation Mono\", \"Nimbus Mono\", \"Nimbus Mono L\", \"Cousine\", \"Cumberland\", \"TeX Gyre Cursor\", \"FreeMono\"],\n style: NORMAL,\n ultimate: \"monospace\"\n}], [\"Courier-Bold\", {\n alias: \"Courier\",\n style: BOLD,\n ultimate: \"monospace\"\n}], [\"Courier-Oblique\", {\n alias: \"Courier\",\n style: ITALIC,\n ultimate: \"monospace\"\n}], [\"Courier-BoldOblique\", {\n alias: \"Courier\",\n style: BOLDITALIC,\n ultimate: \"monospace\"\n}], [\"ArialBlack\", {\n local: [\"Arial Black\"],\n style: {\n style: \"normal\",\n weight: \"900\"\n },\n fallback: \"Helvetica-Bold\"\n}], [\"ArialBlack-Bold\", {\n alias: \"ArialBlack\"\n}], [\"ArialBlack-Italic\", {\n alias: \"ArialBlack\",\n style: {\n style: \"italic\",\n weight: \"900\"\n },\n fallback: \"Helvetica-BoldOblique\"\n}], [\"ArialBlack-BoldItalic\", {\n alias: \"ArialBlack-Italic\"\n}], [\"ArialNarrow\", {\n local: [\"Arial Narrow\", \"Liberation Sans Narrow\", \"Helvetica Condensed\", \"Nimbus Sans Narrow\", \"TeX Gyre Heros Cn\"],\n style: NORMAL,\n fallback: \"Helvetica\"\n}], [\"ArialNarrow-Bold\", {\n alias: \"ArialNarrow\",\n style: BOLD,\n fallback: \"Helvetica-Bold\"\n}], [\"ArialNarrow-Italic\", {\n alias: \"ArialNarrow\",\n style: ITALIC,\n fallback: \"Helvetica-Oblique\"\n}], [\"ArialNarrow-BoldItalic\", {\n alias: \"ArialNarrow\",\n style: BOLDITALIC,\n fallback: \"Helvetica-BoldOblique\"\n}], [\"Calibri\", {\n local: [\"Calibri\", \"Carlito\"],\n style: NORMAL,\n fallback: \"Helvetica\"\n}], [\"Calibri-Bold\", {\n alias: \"Calibri\",\n style: BOLD,\n fallback: \"Helvetica-Bold\"\n}], [\"Calibri-Italic\", {\n alias: \"Calibri\",\n style: ITALIC,\n fallback: \"Helvetica-Oblique\"\n}], [\"Calibri-BoldItalic\", {\n alias: \"Calibri\",\n style: BOLDITALIC,\n fallback: \"Helvetica-BoldOblique\"\n}], [\"Wingdings\", {\n local: [\"Wingdings\", \"URW Dingbats\"],\n style: NORMAL\n}], [\"Wingdings-Regular\", {\n alias: \"Wingdings\"\n}], [\"Wingdings-Bold\", {\n alias: \"Wingdings\"\n}]]);\nconst fontAliases = new Map([[\"Arial-Black\", \"ArialBlack\"]]);\nfunction getStyleToAppend(style) {\n switch (style) {\n case BOLD:\n return \"Bold\";\n case ITALIC:\n return \"Italic\";\n case BOLDITALIC:\n return \"Bold Italic\";\n default:\n if (style?.weight === \"bold\") {\n return \"Bold\";\n }\n if (style?.style === \"italic\") {\n return \"Italic\";\n }\n }\n return \"\";\n}\nfunction generateFont({\n alias,\n local,\n path,\n fallback,\n style,\n ultimate\n}, src, localFontPath, useFallback = true, usePath = true, append = \"\") {\n const result = {\n style: null,\n ultimate: null\n };\n if (local) {\n const extra = append ? ` ${append}` : \"\";\n for (const name of local) {\n src.push(`local(${name}${extra})`);\n }\n }\n if (alias) {\n const substitution = substitutionMap.get(alias);\n const aliasAppend = append || getStyleToAppend(style);\n Object.assign(result, generateFont(substitution, src, localFontPath, useFallback && !fallback, usePath && !path, aliasAppend));\n }\n if (style) {\n result.style = style;\n }\n if (ultimate) {\n result.ultimate = ultimate;\n }\n if (useFallback && fallback) {\n const fallbackInfo = substitutionMap.get(fallback);\n const {\n ultimate: fallbackUltimate\n } = generateFont(fallbackInfo, src, localFontPath, useFallback, usePath && !path, append);\n result.ultimate ||= fallbackUltimate;\n }\n if (usePath && path && localFontPath) {\n src.push(`url(${localFontPath}${path})`);\n }\n return result;\n}\nfunction getFontSubstitution(systemFontCache, idFactory, localFontPath, baseFontName, standardFontName) {\n baseFontName = (0, _fonts_utils.normalizeFontName)(baseFontName);\n const key = baseFontName;\n let substitutionInfo = systemFontCache.get(key);\n if (substitutionInfo) {\n return substitutionInfo;\n }\n let substitution = substitutionMap.get(baseFontName);\n if (!substitution) {\n for (const [alias, subst] of fontAliases) {\n if (baseFontName.startsWith(alias)) {\n baseFontName = `${subst}${baseFontName.substring(alias.length)}`;\n substitution = substitutionMap.get(baseFontName);\n break;\n }\n }\n }\n let mustAddBaseFont = false;\n if (!substitution) {\n substitution = substitutionMap.get(standardFontName);\n mustAddBaseFont = true;\n }\n const loadedName = `${idFactory.getDocId()}_s${idFactory.createFontId()}`;\n if (!substitution) {\n if (!(0, _core_utils.validateFontName)(baseFontName)) {\n systemFontCache.set(key, null);\n return null;\n }\n const bold = /bold/gi.test(baseFontName);\n const italic = /oblique|italic/gi.test(baseFontName);\n const style = bold && italic && BOLDITALIC || bold && BOLD || italic && ITALIC || NORMAL;\n substitutionInfo = {\n css: loadedName,\n guessFallback: true,\n loadedName,\n baseFontName,\n src: `local(${baseFontName})`,\n style\n };\n systemFontCache.set(key, substitutionInfo);\n return substitutionInfo;\n }\n const src = [];\n if (mustAddBaseFont && (0, _core_utils.validateFontName)(baseFontName)) {\n src.push(`local(${baseFontName})`);\n }\n const {\n style,\n ultimate\n } = generateFont(substitution, src, localFontPath);\n const guessFallback = ultimate === null;\n const fallback = guessFallback ? \"\" : `,${ultimate}`;\n substitutionInfo = {\n css: `${loadedName}${fallback}`,\n guessFallback,\n loadedName,\n baseFontName,\n src: src.join(\",\"),\n style\n };\n systemFontCache.set(key, substitutionInfo);\n return substitutionInfo;\n}\n\n/***/ }),\n/* 62 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ImageResizer = void 0;\nvar _util = __w_pdfjs_require__(2);\nconst MIN_IMAGE_DIM = 2048;\nconst MAX_IMAGE_DIM = 65537;\nconst MAX_ERROR = 128;\nclass ImageResizer {\n constructor(imgData, isMask) {\n this._imgData = imgData;\n this._isMask = isMask;\n }\n static needsToBeResized(width, height) {\n if (width <= this._goodSquareLength && height <= this._goodSquareLength) {\n return false;\n }\n const {\n MAX_DIM\n } = this;\n if (width > MAX_DIM || height > MAX_DIM) {\n return true;\n }\n const area = width * height;\n if (this._hasMaxArea) {\n return area > this.MAX_AREA;\n }\n if (area < this._goodSquareLength ** 2) {\n return false;\n }\n if (this._areGoodDims(width, height)) {\n this._goodSquareLength = Math.max(this._goodSquareLength, Math.floor(Math.sqrt(width * height)));\n return false;\n }\n this._goodSquareLength = this._guessMax(this._goodSquareLength, MAX_DIM, MAX_ERROR, 0);\n const maxArea = this.MAX_AREA = this._goodSquareLength ** 2;\n return area > maxArea;\n }\n static get MAX_DIM() {\n return (0, _util.shadow)(this, \"MAX_DIM\", this._guessMax(MIN_IMAGE_DIM, MAX_IMAGE_DIM, 0, 1));\n }\n static get MAX_AREA() {\n this._hasMaxArea = true;\n return (0, _util.shadow)(this, \"MAX_AREA\", this._guessMax(ImageResizer._goodSquareLength, this.MAX_DIM, MAX_ERROR, 0) ** 2);\n }\n static set MAX_AREA(area) {\n if (area >= 0) {\n this._hasMaxArea = true;\n (0, _util.shadow)(this, \"MAX_AREA\", area);\n }\n }\n static setMaxArea(area) {\n if (!this._hasMaxArea) {\n this.MAX_AREA = area >> 2;\n }\n }\n static _areGoodDims(width, height) {\n try {\n const canvas = new OffscreenCanvas(width, height);\n const ctx = canvas.getContext(\"2d\");\n ctx.fillRect(0, 0, 1, 1);\n const opacity = ctx.getImageData(0, 0, 1, 1).data[3];\n canvas.width = canvas.height = 1;\n return opacity !== 0;\n } catch {\n return false;\n }\n }\n static _guessMax(start, end, tolerance, defaultHeight) {\n while (start + tolerance + 1 < end) {\n const middle = Math.floor((start + end) / 2);\n const height = defaultHeight || middle;\n if (this._areGoodDims(middle, height)) {\n start = middle;\n } else {\n end = middle;\n }\n }\n return start;\n }\n static async createImage(imgData, isMask = false) {\n return new ImageResizer(imgData, isMask)._createImage();\n }\n async _createImage() {\n const data = this._encodeBMP();\n const blob = new Blob([data.buffer], {\n type: \"image/bmp\"\n });\n const bitmapPromise = createImageBitmap(blob);\n const {\n MAX_AREA,\n MAX_DIM\n } = ImageResizer;\n const {\n _imgData: imgData\n } = this;\n const {\n width,\n height\n } = imgData;\n const minFactor = Math.max(width / MAX_DIM, height / MAX_DIM, Math.sqrt(width * height / MAX_AREA));\n const firstFactor = Math.max(minFactor, 2);\n const factor = Math.round(10 * (minFactor + 1.25)) / 10 / firstFactor;\n const N = Math.floor(Math.log2(factor));\n const steps = new Array(N + 2).fill(2);\n steps[0] = firstFactor;\n steps.splice(-1, 1, factor / (1 << N));\n let newWidth = width;\n let newHeight = height;\n let bitmap = await bitmapPromise;\n for (const step of steps) {\n const prevWidth = newWidth;\n const prevHeight = newHeight;\n newWidth = Math.floor(newWidth / step) - 1;\n newHeight = Math.floor(newHeight / step) - 1;\n const canvas = new OffscreenCanvas(newWidth, newHeight);\n const ctx = canvas.getContext(\"2d\");\n ctx.drawImage(bitmap, 0, 0, prevWidth, prevHeight, 0, 0, newWidth, newHeight);\n bitmap = canvas.transferToImageBitmap();\n }\n imgData.data = null;\n imgData.bitmap = bitmap;\n imgData.width = newWidth;\n imgData.height = newHeight;\n return imgData;\n }\n _encodeBMP() {\n const {\n width,\n height,\n kind\n } = this._imgData;\n let data = this._imgData.data;\n let bitPerPixel;\n let colorTable = new Uint8Array(0);\n let maskTable = colorTable;\n let compression = 0;\n switch (kind) {\n case _util.ImageKind.GRAYSCALE_1BPP:\n {\n bitPerPixel = 1;\n colorTable = new Uint8Array(this._isMask ? [255, 255, 255, 255, 0, 0, 0, 0] : [0, 0, 0, 0, 255, 255, 255, 255]);\n const rowLen = width + 7 >> 3;\n const rowSize = rowLen + 3 & -4;\n if (rowLen !== rowSize) {\n const newData = new Uint8Array(rowSize * height);\n let k = 0;\n for (let i = 0, ii = height * rowLen; i < ii; i += rowLen, k += rowSize) {\n newData.set(data.subarray(i, i + rowLen), k);\n }\n data = newData;\n }\n break;\n }\n case _util.ImageKind.RGB_24BPP:\n {\n bitPerPixel = 24;\n if (width & 3) {\n const rowLen = 3 * width;\n const rowSize = rowLen + 3 & -4;\n const extraLen = rowSize - rowLen;\n const newData = new Uint8Array(rowSize * height);\n let k = 0;\n for (let i = 0, ii = height * rowLen; i < ii; i += rowLen) {\n const row = data.subarray(i, i + rowLen);\n for (let j = 0; j < rowLen; j += 3) {\n newData[k++] = row[j + 2];\n newData[k++] = row[j + 1];\n newData[k++] = row[j];\n }\n k += extraLen;\n }\n data = newData;\n } else {\n for (let i = 0, ii = data.length; i < ii; i += 3) {\n const tmp = data[i];\n data[i] = data[i + 2];\n data[i + 2] = tmp;\n }\n }\n break;\n }\n case _util.ImageKind.RGBA_32BPP:\n bitPerPixel = 32;\n compression = 3;\n maskTable = new Uint8Array(4 + 4 + 4 + 4 + 52);\n const view = new DataView(maskTable.buffer);\n if (_util.FeatureTest.isLittleEndian) {\n view.setUint32(0, 0x000000ff, true);\n view.setUint32(4, 0x0000ff00, true);\n view.setUint32(8, 0x00ff0000, true);\n view.setUint32(12, 0xff000000, true);\n } else {\n view.setUint32(0, 0xff000000, true);\n view.setUint32(4, 0x00ff0000, true);\n view.setUint32(8, 0x0000ff00, true);\n view.setUint32(12, 0x000000ff, true);\n }\n break;\n default:\n throw new Error(\"invalid format\");\n }\n let i = 0;\n const headerLength = 40 + maskTable.length;\n const fileLength = 14 + headerLength + colorTable.length + data.length;\n const bmpData = new Uint8Array(fileLength);\n const view = new DataView(bmpData.buffer);\n view.setUint16(i, 0x4d42, true);\n i += 2;\n view.setUint32(i, fileLength, true);\n i += 4;\n view.setUint32(i, 0, true);\n i += 4;\n view.setUint32(i, 14 + headerLength + colorTable.length, true);\n i += 4;\n view.setUint32(i, headerLength, true);\n i += 4;\n view.setInt32(i, width, true);\n i += 4;\n view.setInt32(i, -height, true);\n i += 4;\n view.setUint16(i, 1, true);\n i += 2;\n view.setUint16(i, bitPerPixel, true);\n i += 2;\n view.setUint32(i, compression, true);\n i += 4;\n view.setUint32(i, 0, true);\n i += 4;\n view.setInt32(i, 0, true);\n i += 4;\n view.setInt32(i, 0, true);\n i += 4;\n view.setUint32(i, colorTable.length / 4, true);\n i += 4;\n view.setUint32(i, 0, true);\n i += 4;\n bmpData.set(maskTable, i);\n i += maskTable.length;\n bmpData.set(colorTable, i);\n i += colorTable.length;\n bmpData.set(data, i);\n return bmpData;\n }\n}\nexports.ImageResizer = ImageResizer;\nImageResizer._goodSquareLength = MIN_IMAGE_DIM;\n\n/***/ }),\n/* 63 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.MurmurHash3_64 = void 0;\nvar _util = __w_pdfjs_require__(2);\nconst SEED = 0xc3d2e1f0;\nconst MASK_HIGH = 0xffff0000;\nconst MASK_LOW = 0xffff;\nclass MurmurHash3_64 {\n constructor(seed) {\n this.h1 = seed ? seed & 0xffffffff : SEED;\n this.h2 = seed ? seed & 0xffffffff : SEED;\n }\n update(input) {\n let data, length;\n if (typeof input === \"string\") {\n data = new Uint8Array(input.length * 2);\n length = 0;\n for (let i = 0, ii = input.length; i < ii; i++) {\n const code = input.charCodeAt(i);\n if (code <= 0xff) {\n data[length++] = code;\n } else {\n data[length++] = code >>> 8;\n data[length++] = code & 0xff;\n }\n }\n } else if ((0, _util.isArrayBuffer)(input)) {\n data = input.slice();\n length = data.byteLength;\n } else {\n throw new Error(\"Wrong data format in MurmurHash3_64_update. \" + \"Input must be a string or array.\");\n }\n const blockCounts = length >> 2;\n const tailLength = length - blockCounts * 4;\n const dataUint32 = new Uint32Array(data.buffer, 0, blockCounts);\n let k1 = 0,\n k2 = 0;\n let h1 = this.h1,\n h2 = this.h2;\n const C1 = 0xcc9e2d51,\n C2 = 0x1b873593;\n const C1_LOW = C1 & MASK_LOW,\n C2_LOW = C2 & MASK_LOW;\n for (let i = 0; i < blockCounts; i++) {\n if (i & 1) {\n k1 = dataUint32[i];\n k1 = k1 * C1 & MASK_HIGH | k1 * C1_LOW & MASK_LOW;\n k1 = k1 << 15 | k1 >>> 17;\n k1 = k1 * C2 & MASK_HIGH | k1 * C2_LOW & MASK_LOW;\n h1 ^= k1;\n h1 = h1 << 13 | h1 >>> 19;\n h1 = h1 * 5 + 0xe6546b64;\n } else {\n k2 = dataUint32[i];\n k2 = k2 * C1 & MASK_HIGH | k2 * C1_LOW & MASK_LOW;\n k2 = k2 << 15 | k2 >>> 17;\n k2 = k2 * C2 & MASK_HIGH | k2 * C2_LOW & MASK_LOW;\n h2 ^= k2;\n h2 = h2 << 13 | h2 >>> 19;\n h2 = h2 * 5 + 0xe6546b64;\n }\n }\n k1 = 0;\n switch (tailLength) {\n case 3:\n k1 ^= data[blockCounts * 4 + 2] << 16;\n case 2:\n k1 ^= data[blockCounts * 4 + 1] << 8;\n case 1:\n k1 ^= data[blockCounts * 4];\n k1 = k1 * C1 & MASK_HIGH | k1 * C1_LOW & MASK_LOW;\n k1 = k1 << 15 | k1 >>> 17;\n k1 = k1 * C2 & MASK_HIGH | k1 * C2_LOW & MASK_LOW;\n if (blockCounts & 1) {\n h1 ^= k1;\n } else {\n h2 ^= k1;\n }\n }\n this.h1 = h1;\n this.h2 = h2;\n }\n hexdigest() {\n let h1 = this.h1,\n h2 = this.h2;\n h1 ^= h2 >>> 1;\n h1 = h1 * 0xed558ccd & MASK_HIGH | h1 * 0x8ccd & MASK_LOW;\n h2 = h2 * 0xff51afd7 & MASK_HIGH | ((h2 << 16 | h1 >>> 16) * 0xafd7ed55 & MASK_HIGH) >>> 16;\n h1 ^= h2 >>> 1;\n h1 = h1 * 0x1a85ec53 & MASK_HIGH | h1 * 0xec53 & MASK_LOW;\n h2 = h2 * 0xc4ceb9fe & MASK_HIGH | ((h2 << 16 | h1 >>> 16) * 0xb9fe1a85 & MASK_HIGH) >>> 16;\n h1 ^= h2 >>> 1;\n return (h1 >>> 0).toString(16).padStart(8, \"0\") + (h2 >>> 0).toString(16).padStart(8, \"0\");\n }\n}\nexports.MurmurHash3_64 = MurmurHash3_64;\n\n/***/ }),\n/* 64 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.OperatorList = void 0;\nvar _util = __w_pdfjs_require__(2);\nfunction addState(parentState, pattern, checkFn, iterateFn, processFn) {\n let state = parentState;\n for (let i = 0, ii = pattern.length - 1; i < ii; i++) {\n const item = pattern[i];\n state = state[item] ||= [];\n }\n state[pattern.at(-1)] = {\n checkFn,\n iterateFn,\n processFn\n };\n}\nconst InitialState = [];\naddState(InitialState, [_util.OPS.save, _util.OPS.transform, _util.OPS.paintInlineImageXObject, _util.OPS.restore], null, function iterateInlineImageGroup(context, i) {\n const fnArray = context.fnArray;\n const iFirstSave = context.iCurr - 3;\n const pos = (i - iFirstSave) % 4;\n switch (pos) {\n case 0:\n return fnArray[i] === _util.OPS.save;\n case 1:\n return fnArray[i] === _util.OPS.transform;\n case 2:\n return fnArray[i] === _util.OPS.paintInlineImageXObject;\n case 3:\n return fnArray[i] === _util.OPS.restore;\n }\n throw new Error(`iterateInlineImageGroup - invalid pos: ${pos}`);\n}, function foundInlineImageGroup(context, i) {\n const MIN_IMAGES_IN_INLINE_IMAGES_BLOCK = 10;\n const MAX_IMAGES_IN_INLINE_IMAGES_BLOCK = 200;\n const MAX_WIDTH = 1000;\n const IMAGE_PADDING = 1;\n const fnArray = context.fnArray,\n argsArray = context.argsArray;\n const curr = context.iCurr;\n const iFirstSave = curr - 3;\n const iFirstTransform = curr - 2;\n const iFirstPIIXO = curr - 1;\n const count = Math.min(Math.floor((i - iFirstSave) / 4), MAX_IMAGES_IN_INLINE_IMAGES_BLOCK);\n if (count < MIN_IMAGES_IN_INLINE_IMAGES_BLOCK) {\n return i - (i - iFirstSave) % 4;\n }\n let maxX = 0;\n const map = [];\n let maxLineHeight = 0;\n let currentX = IMAGE_PADDING,\n currentY = IMAGE_PADDING;\n for (let q = 0; q < count; q++) {\n const transform = argsArray[iFirstTransform + (q << 2)];\n const img = argsArray[iFirstPIIXO + (q << 2)][0];\n if (currentX + img.width > MAX_WIDTH) {\n maxX = Math.max(maxX, currentX);\n currentY += maxLineHeight + 2 * IMAGE_PADDING;\n currentX = 0;\n maxLineHeight = 0;\n }\n map.push({\n transform,\n x: currentX,\n y: currentY,\n w: img.width,\n h: img.height\n });\n currentX += img.width + 2 * IMAGE_PADDING;\n maxLineHeight = Math.max(maxLineHeight, img.height);\n }\n const imgWidth = Math.max(maxX, currentX) + IMAGE_PADDING;\n const imgHeight = currentY + maxLineHeight + IMAGE_PADDING;\n const imgData = new Uint8Array(imgWidth * imgHeight * 4);\n const imgRowSize = imgWidth << 2;\n for (let q = 0; q < count; q++) {\n const data = argsArray[iFirstPIIXO + (q << 2)][0].data;\n const rowSize = map[q].w << 2;\n let dataOffset = 0;\n let offset = map[q].x + map[q].y * imgWidth << 2;\n imgData.set(data.subarray(0, rowSize), offset - imgRowSize);\n for (let k = 0, kk = map[q].h; k < kk; k++) {\n imgData.set(data.subarray(dataOffset, dataOffset + rowSize), offset);\n dataOffset += rowSize;\n offset += imgRowSize;\n }\n imgData.set(data.subarray(dataOffset - rowSize, dataOffset), offset);\n while (offset >= 0) {\n data[offset - 4] = data[offset];\n data[offset - 3] = data[offset + 1];\n data[offset - 2] = data[offset + 2];\n data[offset - 1] = data[offset + 3];\n data[offset + rowSize] = data[offset + rowSize - 4];\n data[offset + rowSize + 1] = data[offset + rowSize - 3];\n data[offset + rowSize + 2] = data[offset + rowSize - 2];\n data[offset + rowSize + 3] = data[offset + rowSize - 1];\n offset -= imgRowSize;\n }\n }\n const img = {\n width: imgWidth,\n height: imgHeight\n };\n if (context.isOffscreenCanvasSupported) {\n const canvas = new OffscreenCanvas(imgWidth, imgHeight);\n const ctx = canvas.getContext(\"2d\");\n ctx.putImageData(new ImageData(new Uint8ClampedArray(imgData.buffer), imgWidth, imgHeight), 0, 0);\n img.bitmap = canvas.transferToImageBitmap();\n img.data = null;\n } else {\n img.kind = _util.ImageKind.RGBA_32BPP;\n img.data = imgData;\n }\n fnArray.splice(iFirstSave, count * 4, _util.OPS.paintInlineImageXObjectGroup);\n argsArray.splice(iFirstSave, count * 4, [img, map]);\n return iFirstSave + 1;\n});\naddState(InitialState, [_util.OPS.save, _util.OPS.transform, _util.OPS.paintImageMaskXObject, _util.OPS.restore], null, function iterateImageMaskGroup(context, i) {\n const fnArray = context.fnArray;\n const iFirstSave = context.iCurr - 3;\n const pos = (i - iFirstSave) % 4;\n switch (pos) {\n case 0:\n return fnArray[i] === _util.OPS.save;\n case 1:\n return fnArray[i] === _util.OPS.transform;\n case 2:\n return fnArray[i] === _util.OPS.paintImageMaskXObject;\n case 3:\n return fnArray[i] === _util.OPS.restore;\n }\n throw new Error(`iterateImageMaskGroup - invalid pos: ${pos}`);\n}, function foundImageMaskGroup(context, i) {\n const MIN_IMAGES_IN_MASKS_BLOCK = 10;\n const MAX_IMAGES_IN_MASKS_BLOCK = 100;\n const MAX_SAME_IMAGES_IN_MASKS_BLOCK = 1000;\n const fnArray = context.fnArray,\n argsArray = context.argsArray;\n const curr = context.iCurr;\n const iFirstSave = curr - 3;\n const iFirstTransform = curr - 2;\n const iFirstPIMXO = curr - 1;\n let count = Math.floor((i - iFirstSave) / 4);\n if (count < MIN_IMAGES_IN_MASKS_BLOCK) {\n return i - (i - iFirstSave) % 4;\n }\n let isSameImage = false;\n let iTransform, transformArgs;\n const firstPIMXOArg0 = argsArray[iFirstPIMXO][0];\n const firstTransformArg0 = argsArray[iFirstTransform][0],\n firstTransformArg1 = argsArray[iFirstTransform][1],\n firstTransformArg2 = argsArray[iFirstTransform][2],\n firstTransformArg3 = argsArray[iFirstTransform][3];\n if (firstTransformArg1 === firstTransformArg2) {\n isSameImage = true;\n iTransform = iFirstTransform + 4;\n let iPIMXO = iFirstPIMXO + 4;\n for (let q = 1; q < count; q++, iTransform += 4, iPIMXO += 4) {\n transformArgs = argsArray[iTransform];\n if (argsArray[iPIMXO][0] !== firstPIMXOArg0 || transformArgs[0] !== firstTransformArg0 || transformArgs[1] !== firstTransformArg1 || transformArgs[2] !== firstTransformArg2 || transformArgs[3] !== firstTransformArg3) {\n if (q < MIN_IMAGES_IN_MASKS_BLOCK) {\n isSameImage = false;\n } else {\n count = q;\n }\n break;\n }\n }\n }\n if (isSameImage) {\n count = Math.min(count, MAX_SAME_IMAGES_IN_MASKS_BLOCK);\n const positions = new Float32Array(count * 2);\n iTransform = iFirstTransform;\n for (let q = 0; q < count; q++, iTransform += 4) {\n transformArgs = argsArray[iTransform];\n positions[q << 1] = transformArgs[4];\n positions[(q << 1) + 1] = transformArgs[5];\n }\n fnArray.splice(iFirstSave, count * 4, _util.OPS.paintImageMaskXObjectRepeat);\n argsArray.splice(iFirstSave, count * 4, [firstPIMXOArg0, firstTransformArg0, firstTransformArg1, firstTransformArg2, firstTransformArg3, positions]);\n } else {\n count = Math.min(count, MAX_IMAGES_IN_MASKS_BLOCK);\n const images = [];\n for (let q = 0; q < count; q++) {\n transformArgs = argsArray[iFirstTransform + (q << 2)];\n const maskParams = argsArray[iFirstPIMXO + (q << 2)][0];\n images.push({\n data: maskParams.data,\n width: maskParams.width,\n height: maskParams.height,\n interpolate: maskParams.interpolate,\n count: maskParams.count,\n transform: transformArgs\n });\n }\n fnArray.splice(iFirstSave, count * 4, _util.OPS.paintImageMaskXObjectGroup);\n argsArray.splice(iFirstSave, count * 4, [images]);\n }\n return iFirstSave + 1;\n});\naddState(InitialState, [_util.OPS.save, _util.OPS.transform, _util.OPS.paintImageXObject, _util.OPS.restore], function (context) {\n const argsArray = context.argsArray;\n const iFirstTransform = context.iCurr - 2;\n return argsArray[iFirstTransform][1] === 0 && argsArray[iFirstTransform][2] === 0;\n}, function iterateImageGroup(context, i) {\n const fnArray = context.fnArray,\n argsArray = context.argsArray;\n const iFirstSave = context.iCurr - 3;\n const pos = (i - iFirstSave) % 4;\n switch (pos) {\n case 0:\n return fnArray[i] === _util.OPS.save;\n case 1:\n if (fnArray[i] !== _util.OPS.transform) {\n return false;\n }\n const iFirstTransform = context.iCurr - 2;\n const firstTransformArg0 = argsArray[iFirstTransform][0];\n const firstTransformArg3 = argsArray[iFirstTransform][3];\n if (argsArray[i][0] !== firstTransformArg0 || argsArray[i][1] !== 0 || argsArray[i][2] !== 0 || argsArray[i][3] !== firstTransformArg3) {\n return false;\n }\n return true;\n case 2:\n if (fnArray[i] !== _util.OPS.paintImageXObject) {\n return false;\n }\n const iFirstPIXO = context.iCurr - 1;\n const firstPIXOArg0 = argsArray[iFirstPIXO][0];\n if (argsArray[i][0] !== firstPIXOArg0) {\n return false;\n }\n return true;\n case 3:\n return fnArray[i] === _util.OPS.restore;\n }\n throw new Error(`iterateImageGroup - invalid pos: ${pos}`);\n}, function (context, i) {\n const MIN_IMAGES_IN_BLOCK = 3;\n const MAX_IMAGES_IN_BLOCK = 1000;\n const fnArray = context.fnArray,\n argsArray = context.argsArray;\n const curr = context.iCurr;\n const iFirstSave = curr - 3;\n const iFirstTransform = curr - 2;\n const iFirstPIXO = curr - 1;\n const firstPIXOArg0 = argsArray[iFirstPIXO][0];\n const firstTransformArg0 = argsArray[iFirstTransform][0];\n const firstTransformArg3 = argsArray[iFirstTransform][3];\n const count = Math.min(Math.floor((i - iFirstSave) / 4), MAX_IMAGES_IN_BLOCK);\n if (count < MIN_IMAGES_IN_BLOCK) {\n return i - (i - iFirstSave) % 4;\n }\n const positions = new Float32Array(count * 2);\n let iTransform = iFirstTransform;\n for (let q = 0; q < count; q++, iTransform += 4) {\n const transformArgs = argsArray[iTransform];\n positions[q << 1] = transformArgs[4];\n positions[(q << 1) + 1] = transformArgs[5];\n }\n const args = [firstPIXOArg0, firstTransformArg0, firstTransformArg3, positions];\n fnArray.splice(iFirstSave, count * 4, _util.OPS.paintImageXObjectRepeat);\n argsArray.splice(iFirstSave, count * 4, args);\n return iFirstSave + 1;\n});\naddState(InitialState, [_util.OPS.beginText, _util.OPS.setFont, _util.OPS.setTextMatrix, _util.OPS.showText, _util.OPS.endText], null, function iterateShowTextGroup(context, i) {\n const fnArray = context.fnArray,\n argsArray = context.argsArray;\n const iFirstSave = context.iCurr - 4;\n const pos = (i - iFirstSave) % 5;\n switch (pos) {\n case 0:\n return fnArray[i] === _util.OPS.beginText;\n case 1:\n return fnArray[i] === _util.OPS.setFont;\n case 2:\n return fnArray[i] === _util.OPS.setTextMatrix;\n case 3:\n if (fnArray[i] !== _util.OPS.showText) {\n return false;\n }\n const iFirstSetFont = context.iCurr - 3;\n const firstSetFontArg0 = argsArray[iFirstSetFont][0];\n const firstSetFontArg1 = argsArray[iFirstSetFont][1];\n if (argsArray[i][0] !== firstSetFontArg0 || argsArray[i][1] !== firstSetFontArg1) {\n return false;\n }\n return true;\n case 4:\n return fnArray[i] === _util.OPS.endText;\n }\n throw new Error(`iterateShowTextGroup - invalid pos: ${pos}`);\n}, function (context, i) {\n const MIN_CHARS_IN_BLOCK = 3;\n const MAX_CHARS_IN_BLOCK = 1000;\n const fnArray = context.fnArray,\n argsArray = context.argsArray;\n const curr = context.iCurr;\n const iFirstBeginText = curr - 4;\n const iFirstSetFont = curr - 3;\n const iFirstSetTextMatrix = curr - 2;\n const iFirstShowText = curr - 1;\n const iFirstEndText = curr;\n const firstSetFontArg0 = argsArray[iFirstSetFont][0];\n const firstSetFontArg1 = argsArray[iFirstSetFont][1];\n let count = Math.min(Math.floor((i - iFirstBeginText) / 5), MAX_CHARS_IN_BLOCK);\n if (count < MIN_CHARS_IN_BLOCK) {\n return i - (i - iFirstBeginText) % 5;\n }\n let iFirst = iFirstBeginText;\n if (iFirstBeginText >= 4 && fnArray[iFirstBeginText - 4] === fnArray[iFirstSetFont] && fnArray[iFirstBeginText - 3] === fnArray[iFirstSetTextMatrix] && fnArray[iFirstBeginText - 2] === fnArray[iFirstShowText] && fnArray[iFirstBeginText - 1] === fnArray[iFirstEndText] && argsArray[iFirstBeginText - 4][0] === firstSetFontArg0 && argsArray[iFirstBeginText - 4][1] === firstSetFontArg1) {\n count++;\n iFirst -= 5;\n }\n let iEndText = iFirst + 4;\n for (let q = 1; q < count; q++) {\n fnArray.splice(iEndText, 3);\n argsArray.splice(iEndText, 3);\n iEndText += 2;\n }\n return iEndText + 1;\n});\nclass NullOptimizer {\n constructor(queue) {\n this.queue = queue;\n }\n _optimize() {}\n push(fn, args) {\n this.queue.fnArray.push(fn);\n this.queue.argsArray.push(args);\n this._optimize();\n }\n flush() {}\n reset() {}\n}\nclass QueueOptimizer extends NullOptimizer {\n constructor(queue) {\n super(queue);\n this.state = null;\n this.context = {\n iCurr: 0,\n fnArray: queue.fnArray,\n argsArray: queue.argsArray,\n isOffscreenCanvasSupported: false\n };\n this.match = null;\n this.lastProcessed = 0;\n }\n set isOffscreenCanvasSupported(value) {\n this.context.isOffscreenCanvasSupported = value;\n }\n _optimize() {\n const fnArray = this.queue.fnArray;\n let i = this.lastProcessed,\n ii = fnArray.length;\n let state = this.state;\n let match = this.match;\n if (!state && !match && i + 1 === ii && !InitialState[fnArray[i]]) {\n this.lastProcessed = ii;\n return;\n }\n const context = this.context;\n while (i < ii) {\n if (match) {\n const iterate = (0, match.iterateFn)(context, i);\n if (iterate) {\n i++;\n continue;\n }\n i = (0, match.processFn)(context, i + 1);\n ii = fnArray.length;\n match = null;\n state = null;\n if (i >= ii) {\n break;\n }\n }\n state = (state || InitialState)[fnArray[i]];\n if (!state || Array.isArray(state)) {\n i++;\n continue;\n }\n context.iCurr = i;\n i++;\n if (state.checkFn && !(0, state.checkFn)(context)) {\n state = null;\n continue;\n }\n match = state;\n state = null;\n }\n this.state = state;\n this.match = match;\n this.lastProcessed = i;\n }\n flush() {\n while (this.match) {\n const length = this.queue.fnArray.length;\n this.lastProcessed = (0, this.match.processFn)(this.context, length);\n this.match = null;\n this.state = null;\n this._optimize();\n }\n }\n reset() {\n this.state = null;\n this.match = null;\n this.lastProcessed = 0;\n }\n}\nclass OperatorList {\n static CHUNK_SIZE = 1000;\n static CHUNK_SIZE_ABOUT = this.CHUNK_SIZE - 5;\n constructor(intent = 0, streamSink) {\n this._streamSink = streamSink;\n this.fnArray = [];\n this.argsArray = [];\n this.optimizer = streamSink && !(intent & _util.RenderingIntentFlag.OPLIST) ? new QueueOptimizer(this) : new NullOptimizer(this);\n this.dependencies = new Set();\n this._totalLength = 0;\n this.weight = 0;\n this._resolved = streamSink ? null : Promise.resolve();\n }\n set isOffscreenCanvasSupported(value) {\n this.optimizer.isOffscreenCanvasSupported = value;\n }\n get length() {\n return this.argsArray.length;\n }\n get ready() {\n return this._resolved || this._streamSink.ready;\n }\n get totalLength() {\n return this._totalLength + this.length;\n }\n addOp(fn, args) {\n this.optimizer.push(fn, args);\n this.weight++;\n if (this._streamSink) {\n if (this.weight >= OperatorList.CHUNK_SIZE) {\n this.flush();\n } else if (this.weight >= OperatorList.CHUNK_SIZE_ABOUT && (fn === _util.OPS.restore || fn === _util.OPS.endText)) {\n this.flush();\n }\n }\n }\n addImageOps(fn, args, optionalContent) {\n if (optionalContent !== undefined) {\n this.addOp(_util.OPS.beginMarkedContentProps, [\"OC\", optionalContent]);\n }\n this.addOp(fn, args);\n if (optionalContent !== undefined) {\n this.addOp(_util.OPS.endMarkedContent, []);\n }\n }\n addDependency(dependency) {\n if (this.dependencies.has(dependency)) {\n return;\n }\n this.dependencies.add(dependency);\n this.addOp(_util.OPS.dependency, [dependency]);\n }\n addDependencies(dependencies) {\n for (const dependency of dependencies) {\n this.addDependency(dependency);\n }\n }\n addOpList(opList) {\n if (!(opList instanceof OperatorList)) {\n (0, _util.warn)('addOpList - ignoring invalid \"opList\" parameter.');\n return;\n }\n for (const dependency of opList.dependencies) {\n this.dependencies.add(dependency);\n }\n for (let i = 0, ii = opList.length; i < ii; i++) {\n this.addOp(opList.fnArray[i], opList.argsArray[i]);\n }\n }\n getIR() {\n return {\n fnArray: this.fnArray,\n argsArray: this.argsArray,\n length: this.length\n };\n }\n get _transfers() {\n const transfers = [];\n const {\n fnArray,\n argsArray,\n length\n } = this;\n for (let i = 0; i < length; i++) {\n switch (fnArray[i]) {\n case _util.OPS.paintInlineImageXObject:\n case _util.OPS.paintInlineImageXObjectGroup:\n case _util.OPS.paintImageMaskXObject:\n const arg = argsArray[i][0];\n if (!arg.cached && arg.data?.buffer instanceof ArrayBuffer) {\n transfers.push(arg.data.buffer);\n }\n break;\n }\n }\n return transfers;\n }\n flush(lastChunk = false, separateAnnots = null) {\n this.optimizer.flush();\n const length = this.length;\n this._totalLength += length;\n this._streamSink.enqueue({\n fnArray: this.fnArray,\n argsArray: this.argsArray,\n lastChunk,\n separateAnnots,\n length\n }, 1, this._transfers);\n this.dependencies.clear();\n this.fnArray.length = 0;\n this.argsArray.length = 0;\n this.weight = 0;\n this.optimizer.reset();\n }\n}\nexports.OperatorList = OperatorList;\n\n/***/ }),\n/* 65 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFImage = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _image_utils = __w_pdfjs_require__(28);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _colorspace = __w_pdfjs_require__(12);\nvar _decode_stream = __w_pdfjs_require__(18);\nvar _image_resizer = __w_pdfjs_require__(62);\nvar _jpeg_stream = __w_pdfjs_require__(26);\nvar _jpx = __w_pdfjs_require__(30);\nvar _primitives = __w_pdfjs_require__(4);\nfunction decodeAndClamp(value, addend, coefficient, max) {\n value = addend + value * coefficient;\n if (value < 0) {\n value = 0;\n } else if (value > max) {\n value = max;\n }\n return value;\n}\nfunction resizeImageMask(src, bpc, w1, h1, w2, h2) {\n const length = w2 * h2;\n let dest;\n if (bpc <= 8) {\n dest = new Uint8Array(length);\n } else if (bpc <= 16) {\n dest = new Uint16Array(length);\n } else {\n dest = new Uint32Array(length);\n }\n const xRatio = w1 / w2;\n const yRatio = h1 / h2;\n let i,\n j,\n py,\n newIndex = 0,\n oldIndex;\n const xScaled = new Uint16Array(w2);\n const w1Scanline = w1;\n for (i = 0; i < w2; i++) {\n xScaled[i] = Math.floor(i * xRatio);\n }\n for (i = 0; i < h2; i++) {\n py = Math.floor(i * yRatio) * w1Scanline;\n for (j = 0; j < w2; j++) {\n oldIndex = py + xScaled[j];\n dest[newIndex++] = src[oldIndex];\n }\n }\n return dest;\n}\nclass PDFImage {\n constructor({\n xref,\n res,\n image,\n isInline = false,\n smask = null,\n mask = null,\n isMask = false,\n pdfFunctionFactory,\n localColorSpaceCache\n }) {\n this.image = image;\n const dict = image.dict;\n const filter = dict.get(\"F\", \"Filter\");\n let filterName;\n if (filter instanceof _primitives.Name) {\n filterName = filter.name;\n } else if (Array.isArray(filter)) {\n const filterZero = xref.fetchIfRef(filter[0]);\n if (filterZero instanceof _primitives.Name) {\n filterName = filterZero.name;\n }\n }\n switch (filterName) {\n case \"JPXDecode\":\n const jpxImage = new _jpx.JpxImage();\n jpxImage.parseImageProperties(image.stream);\n image.stream.reset();\n image.width = jpxImage.width;\n image.height = jpxImage.height;\n image.bitsPerComponent = jpxImage.bitsPerComponent;\n image.numComps = jpxImage.componentsCount;\n break;\n case \"JBIG2Decode\":\n image.bitsPerComponent = 1;\n image.numComps = 1;\n break;\n }\n let width = dict.get(\"W\", \"Width\");\n let height = dict.get(\"H\", \"Height\");\n if (Number.isInteger(image.width) && image.width > 0 && Number.isInteger(image.height) && image.height > 0 && (image.width !== width || image.height !== height)) {\n (0, _util.warn)(\"PDFImage - using the Width/Height of the image data, \" + \"rather than the image dictionary.\");\n width = image.width;\n height = image.height;\n }\n if (width < 1 || height < 1) {\n throw new _util.FormatError(`Invalid image width: ${width} or height: ${height}`);\n }\n this.width = width;\n this.height = height;\n this.interpolate = dict.get(\"I\", \"Interpolate\");\n this.imageMask = dict.get(\"IM\", \"ImageMask\") || false;\n this.matte = dict.get(\"Matte\") || false;\n let bitsPerComponent = image.bitsPerComponent;\n if (!bitsPerComponent) {\n bitsPerComponent = dict.get(\"BPC\", \"BitsPerComponent\");\n if (!bitsPerComponent) {\n if (this.imageMask) {\n bitsPerComponent = 1;\n } else {\n throw new _util.FormatError(`Bits per component missing in image: ${this.imageMask}`);\n }\n }\n }\n this.bpc = bitsPerComponent;\n if (!this.imageMask) {\n let colorSpace = dict.getRaw(\"CS\") || dict.getRaw(\"ColorSpace\");\n if (!colorSpace) {\n (0, _util.info)(\"JPX images (which do not require color spaces)\");\n switch (image.numComps) {\n case 1:\n colorSpace = _primitives.Name.get(\"DeviceGray\");\n break;\n case 3:\n colorSpace = _primitives.Name.get(\"DeviceRGB\");\n break;\n case 4:\n colorSpace = _primitives.Name.get(\"DeviceCMYK\");\n break;\n default:\n throw new Error(`JPX images with ${image.numComps} color components not supported.`);\n }\n }\n this.colorSpace = _colorspace.ColorSpace.parse({\n cs: colorSpace,\n xref,\n resources: isInline ? res : null,\n pdfFunctionFactory,\n localColorSpaceCache\n });\n this.numComps = this.colorSpace.numComps;\n }\n this.decode = dict.getArray(\"D\", \"Decode\");\n this.needsDecode = false;\n if (this.decode && (this.colorSpace && !this.colorSpace.isDefaultDecode(this.decode, bitsPerComponent) || isMask && !_colorspace.ColorSpace.isDefaultDecode(this.decode, 1))) {\n this.needsDecode = true;\n const max = (1 << bitsPerComponent) - 1;\n this.decodeCoefficients = [];\n this.decodeAddends = [];\n const isIndexed = this.colorSpace?.name === \"Indexed\";\n for (let i = 0, j = 0; i < this.decode.length; i += 2, ++j) {\n const dmin = this.decode[i];\n const dmax = this.decode[i + 1];\n this.decodeCoefficients[j] = isIndexed ? (dmax - dmin) / max : dmax - dmin;\n this.decodeAddends[j] = isIndexed ? dmin : max * dmin;\n }\n }\n if (smask) {\n this.smask = new PDFImage({\n xref,\n res,\n image: smask,\n isInline,\n pdfFunctionFactory,\n localColorSpaceCache\n });\n } else if (mask) {\n if (mask instanceof _base_stream.BaseStream) {\n const maskDict = mask.dict,\n imageMask = maskDict.get(\"IM\", \"ImageMask\");\n if (!imageMask) {\n (0, _util.warn)(\"Ignoring /Mask in image without /ImageMask.\");\n } else {\n this.mask = new PDFImage({\n xref,\n res,\n image: mask,\n isInline,\n isMask: true,\n pdfFunctionFactory,\n localColorSpaceCache\n });\n }\n } else {\n this.mask = mask;\n }\n }\n }\n static async buildImage({\n xref,\n res,\n image,\n isInline = false,\n pdfFunctionFactory,\n localColorSpaceCache\n }) {\n const imageData = image;\n let smaskData = null;\n let maskData = null;\n const smask = image.dict.get(\"SMask\");\n const mask = image.dict.get(\"Mask\");\n if (smask) {\n if (smask instanceof _base_stream.BaseStream) {\n smaskData = smask;\n } else {\n (0, _util.warn)(\"Unsupported /SMask format.\");\n }\n } else if (mask) {\n if (mask instanceof _base_stream.BaseStream || Array.isArray(mask)) {\n maskData = mask;\n } else {\n (0, _util.warn)(\"Unsupported /Mask format.\");\n }\n }\n return new PDFImage({\n xref,\n res,\n image: imageData,\n isInline,\n smask: smaskData,\n mask: maskData,\n pdfFunctionFactory,\n localColorSpaceCache\n });\n }\n static createRawMask({\n imgArray,\n width,\n height,\n imageIsFromDecodeStream,\n inverseDecode,\n interpolate\n }) {\n const computedLength = (width + 7 >> 3) * height;\n const actualLength = imgArray.byteLength;\n const haveFullData = computedLength === actualLength;\n let data, i;\n if (imageIsFromDecodeStream && (!inverseDecode || haveFullData)) {\n data = imgArray;\n } else if (!inverseDecode) {\n data = new Uint8Array(imgArray);\n } else {\n data = new Uint8Array(computedLength);\n data.set(imgArray);\n data.fill(0xff, actualLength);\n }\n if (inverseDecode) {\n for (i = 0; i < actualLength; i++) {\n data[i] ^= 0xff;\n }\n }\n return {\n data,\n width,\n height,\n interpolate\n };\n }\n static async createMask({\n imgArray,\n width,\n height,\n imageIsFromDecodeStream,\n inverseDecode,\n interpolate,\n isOffscreenCanvasSupported = false\n }) {\n const isSingleOpaquePixel = width === 1 && height === 1 && inverseDecode === (imgArray.length === 0 || !!(imgArray[0] & 128));\n if (isSingleOpaquePixel) {\n return {\n isSingleOpaquePixel\n };\n }\n if (isOffscreenCanvasSupported) {\n if (_image_resizer.ImageResizer.needsToBeResized(width, height)) {\n const data = new Uint8ClampedArray(width * height * 4);\n (0, _image_utils.convertBlackAndWhiteToRGBA)({\n src: imgArray,\n dest: data,\n width,\n height,\n nonBlackColor: 0,\n inverseDecode\n });\n return _image_resizer.ImageResizer.createImage({\n kind: _util.ImageKind.RGBA_32BPP,\n data,\n width,\n height,\n interpolate\n });\n }\n const canvas = new OffscreenCanvas(width, height);\n const ctx = canvas.getContext(\"2d\");\n const imgData = ctx.createImageData(width, height);\n (0, _image_utils.convertBlackAndWhiteToRGBA)({\n src: imgArray,\n dest: imgData.data,\n width,\n height,\n nonBlackColor: 0,\n inverseDecode\n });\n ctx.putImageData(imgData, 0, 0);\n const bitmap = canvas.transferToImageBitmap();\n return {\n data: null,\n width,\n height,\n interpolate,\n bitmap\n };\n }\n return this.createRawMask({\n imgArray,\n width,\n height,\n inverseDecode,\n imageIsFromDecodeStream,\n interpolate\n });\n }\n get drawWidth() {\n return Math.max(this.width, this.smask?.width || 0, this.mask?.width || 0);\n }\n get drawHeight() {\n return Math.max(this.height, this.smask?.height || 0, this.mask?.height || 0);\n }\n decodeBuffer(buffer) {\n const bpc = this.bpc;\n const numComps = this.numComps;\n const decodeAddends = this.decodeAddends;\n const decodeCoefficients = this.decodeCoefficients;\n const max = (1 << bpc) - 1;\n let i, ii;\n if (bpc === 1) {\n for (i = 0, ii = buffer.length; i < ii; i++) {\n buffer[i] = +!buffer[i];\n }\n return;\n }\n let index = 0;\n for (i = 0, ii = this.width * this.height; i < ii; i++) {\n for (let j = 0; j < numComps; j++) {\n buffer[index] = decodeAndClamp(buffer[index], decodeAddends[j], decodeCoefficients[j], max);\n index++;\n }\n }\n }\n getComponents(buffer) {\n const bpc = this.bpc;\n if (bpc === 8) {\n return buffer;\n }\n const width = this.width;\n const height = this.height;\n const numComps = this.numComps;\n const length = width * height * numComps;\n let bufferPos = 0;\n let output;\n if (bpc <= 8) {\n output = new Uint8Array(length);\n } else if (bpc <= 16) {\n output = new Uint16Array(length);\n } else {\n output = new Uint32Array(length);\n }\n const rowComps = width * numComps;\n const max = (1 << bpc) - 1;\n let i = 0,\n ii,\n buf;\n if (bpc === 1) {\n let mask, loop1End, loop2End;\n for (let j = 0; j < height; j++) {\n loop1End = i + (rowComps & ~7);\n loop2End = i + rowComps;\n while (i < loop1End) {\n buf = buffer[bufferPos++];\n output[i] = buf >> 7 & 1;\n output[i + 1] = buf >> 6 & 1;\n output[i + 2] = buf >> 5 & 1;\n output[i + 3] = buf >> 4 & 1;\n output[i + 4] = buf >> 3 & 1;\n output[i + 5] = buf >> 2 & 1;\n output[i + 6] = buf >> 1 & 1;\n output[i + 7] = buf & 1;\n i += 8;\n }\n if (i < loop2End) {\n buf = buffer[bufferPos++];\n mask = 128;\n while (i < loop2End) {\n output[i++] = +!!(buf & mask);\n mask >>= 1;\n }\n }\n }\n } else {\n let bits = 0;\n buf = 0;\n for (i = 0, ii = length; i < ii; ++i) {\n if (i % rowComps === 0) {\n buf = 0;\n bits = 0;\n }\n while (bits < bpc) {\n buf = buf << 8 | buffer[bufferPos++];\n bits += 8;\n }\n const remainingBits = bits - bpc;\n let value = buf >> remainingBits;\n if (value < 0) {\n value = 0;\n } else if (value > max) {\n value = max;\n }\n output[i] = value;\n buf &= (1 << remainingBits) - 1;\n bits = remainingBits;\n }\n }\n return output;\n }\n fillOpacity(rgbaBuf, width, height, actualHeight, image) {\n const smask = this.smask;\n const mask = this.mask;\n let alphaBuf, sw, sh, i, ii, j;\n if (smask) {\n sw = smask.width;\n sh = smask.height;\n alphaBuf = new Uint8ClampedArray(sw * sh);\n smask.fillGrayBuffer(alphaBuf);\n if (sw !== width || sh !== height) {\n alphaBuf = resizeImageMask(alphaBuf, smask.bpc, sw, sh, width, height);\n }\n } else if (mask) {\n if (mask instanceof PDFImage) {\n sw = mask.width;\n sh = mask.height;\n alphaBuf = new Uint8ClampedArray(sw * sh);\n mask.numComps = 1;\n mask.fillGrayBuffer(alphaBuf);\n for (i = 0, ii = sw * sh; i < ii; ++i) {\n alphaBuf[i] = 255 - alphaBuf[i];\n }\n if (sw !== width || sh !== height) {\n alphaBuf = resizeImageMask(alphaBuf, mask.bpc, sw, sh, width, height);\n }\n } else if (Array.isArray(mask)) {\n alphaBuf = new Uint8ClampedArray(width * height);\n const numComps = this.numComps;\n for (i = 0, ii = width * height; i < ii; ++i) {\n let opacity = 0;\n const imageOffset = i * numComps;\n for (j = 0; j < numComps; ++j) {\n const color = image[imageOffset + j];\n const maskOffset = j * 2;\n if (color < mask[maskOffset] || color > mask[maskOffset + 1]) {\n opacity = 255;\n break;\n }\n }\n alphaBuf[i] = opacity;\n }\n } else {\n throw new _util.FormatError(\"Unknown mask format.\");\n }\n }\n if (alphaBuf) {\n for (i = 0, j = 3, ii = width * actualHeight; i < ii; ++i, j += 4) {\n rgbaBuf[j] = alphaBuf[i];\n }\n } else {\n for (i = 0, j = 3, ii = width * actualHeight; i < ii; ++i, j += 4) {\n rgbaBuf[j] = 255;\n }\n }\n }\n undoPreblend(buffer, width, height) {\n const matte = this.smask?.matte;\n if (!matte) {\n return;\n }\n const matteRgb = this.colorSpace.getRgb(matte, 0);\n const matteR = matteRgb[0];\n const matteG = matteRgb[1];\n const matteB = matteRgb[2];\n const length = width * height * 4;\n for (let i = 0; i < length; i += 4) {\n const alpha = buffer[i + 3];\n if (alpha === 0) {\n buffer[i] = 255;\n buffer[i + 1] = 255;\n buffer[i + 2] = 255;\n continue;\n }\n const k = 255 / alpha;\n buffer[i] = (buffer[i] - matteR) * k + matteR;\n buffer[i + 1] = (buffer[i + 1] - matteG) * k + matteG;\n buffer[i + 2] = (buffer[i + 2] - matteB) * k + matteB;\n }\n }\n async createImageData(forceRGBA = false, isOffscreenCanvasSupported = false) {\n const drawWidth = this.drawWidth;\n const drawHeight = this.drawHeight;\n const imgData = {\n width: drawWidth,\n height: drawHeight,\n interpolate: this.interpolate,\n kind: 0,\n data: null\n };\n const numComps = this.numComps;\n const originalWidth = this.width;\n const originalHeight = this.height;\n const bpc = this.bpc;\n const rowBytes = originalWidth * numComps * bpc + 7 >> 3;\n const mustBeResized = isOffscreenCanvasSupported && _image_resizer.ImageResizer.needsToBeResized(drawWidth, drawHeight);\n if (!forceRGBA) {\n let kind;\n if (this.colorSpace.name === \"DeviceGray\" && bpc === 1) {\n kind = _util.ImageKind.GRAYSCALE_1BPP;\n } else if (this.colorSpace.name === \"DeviceRGB\" && bpc === 8 && !this.needsDecode) {\n kind = _util.ImageKind.RGB_24BPP;\n }\n if (kind && !this.smask && !this.mask && drawWidth === originalWidth && drawHeight === originalHeight) {\n const data = this.getImageBytes(originalHeight * rowBytes, {});\n if (isOffscreenCanvasSupported) {\n if (mustBeResized) {\n return _image_resizer.ImageResizer.createImage({\n data,\n kind,\n width: drawWidth,\n height: drawHeight,\n interpolate: this.interpolate\n }, this.needsDecode);\n }\n return this.createBitmap(kind, originalWidth, originalHeight, data);\n }\n imgData.kind = kind;\n imgData.data = data;\n if (this.needsDecode) {\n (0, _util.assert)(kind === _util.ImageKind.GRAYSCALE_1BPP, \"PDFImage.createImageData: The image must be grayscale.\");\n const buffer = imgData.data;\n for (let i = 0, ii = buffer.length; i < ii; i++) {\n buffer[i] ^= 0xff;\n }\n }\n return imgData;\n }\n if (this.image instanceof _jpeg_stream.JpegStream && !this.smask && !this.mask && !this.needsDecode) {\n let imageLength = originalHeight * rowBytes;\n if (isOffscreenCanvasSupported && !mustBeResized) {\n let isHandled = false;\n switch (this.colorSpace.name) {\n case \"DeviceGray\":\n imageLength *= 4;\n isHandled = true;\n break;\n case \"DeviceRGB\":\n imageLength = imageLength / 3 * 4;\n isHandled = true;\n break;\n case \"DeviceCMYK\":\n isHandled = true;\n break;\n }\n if (isHandled) {\n const rgba = this.getImageBytes(imageLength, {\n drawWidth,\n drawHeight,\n forceRGBA: true\n });\n return this.createBitmap(_util.ImageKind.RGBA_32BPP, drawWidth, drawHeight, rgba);\n }\n } else {\n switch (this.colorSpace.name) {\n case \"DeviceGray\":\n imageLength *= 3;\n case \"DeviceRGB\":\n case \"DeviceCMYK\":\n imgData.kind = _util.ImageKind.RGB_24BPP;\n imgData.data = this.getImageBytes(imageLength, {\n drawWidth,\n drawHeight,\n forceRGB: true\n });\n if (mustBeResized) {\n return _image_resizer.ImageResizer.createImage(imgData);\n }\n return imgData;\n }\n }\n }\n }\n const imgArray = this.getImageBytes(originalHeight * rowBytes, {\n internal: true\n });\n const actualHeight = 0 | imgArray.length / rowBytes * drawHeight / originalHeight;\n const comps = this.getComponents(imgArray);\n let alpha01, maybeUndoPreblend;\n let canvas, ctx, canvasImgData, data;\n if (isOffscreenCanvasSupported && !mustBeResized) {\n canvas = new OffscreenCanvas(drawWidth, drawHeight);\n ctx = canvas.getContext(\"2d\");\n canvasImgData = ctx.createImageData(drawWidth, drawHeight);\n data = canvasImgData.data;\n }\n imgData.kind = _util.ImageKind.RGBA_32BPP;\n if (!forceRGBA && !this.smask && !this.mask) {\n if (!isOffscreenCanvasSupported || mustBeResized) {\n imgData.kind = _util.ImageKind.RGB_24BPP;\n data = new Uint8ClampedArray(drawWidth * drawHeight * 3);\n alpha01 = 0;\n } else {\n const arr = new Uint32Array(data.buffer);\n arr.fill(_util.FeatureTest.isLittleEndian ? 0xff000000 : 0x000000ff);\n alpha01 = 1;\n }\n maybeUndoPreblend = false;\n } else {\n if (!isOffscreenCanvasSupported || mustBeResized) {\n data = new Uint8ClampedArray(drawWidth * drawHeight * 4);\n }\n alpha01 = 1;\n maybeUndoPreblend = true;\n this.fillOpacity(data, drawWidth, drawHeight, actualHeight, comps);\n }\n if (this.needsDecode) {\n this.decodeBuffer(comps);\n }\n this.colorSpace.fillRgb(data, originalWidth, originalHeight, drawWidth, drawHeight, actualHeight, bpc, comps, alpha01);\n if (maybeUndoPreblend) {\n this.undoPreblend(data, drawWidth, actualHeight);\n }\n if (isOffscreenCanvasSupported && !mustBeResized) {\n ctx.putImageData(canvasImgData, 0, 0);\n const bitmap = canvas.transferToImageBitmap();\n return {\n data: null,\n width: drawWidth,\n height: drawHeight,\n bitmap,\n interpolate: this.interpolate\n };\n }\n imgData.data = data;\n if (mustBeResized) {\n return _image_resizer.ImageResizer.createImage(imgData);\n }\n return imgData;\n }\n fillGrayBuffer(buffer) {\n const numComps = this.numComps;\n if (numComps !== 1) {\n throw new _util.FormatError(`Reading gray scale from a color image: ${numComps}`);\n }\n const width = this.width;\n const height = this.height;\n const bpc = this.bpc;\n const rowBytes = width * numComps * bpc + 7 >> 3;\n const imgArray = this.getImageBytes(height * rowBytes, {\n internal: true\n });\n const comps = this.getComponents(imgArray);\n let i, length;\n if (bpc === 1) {\n length = width * height;\n if (this.needsDecode) {\n for (i = 0; i < length; ++i) {\n buffer[i] = comps[i] - 1 & 255;\n }\n } else {\n for (i = 0; i < length; ++i) {\n buffer[i] = -comps[i] & 255;\n }\n }\n return;\n }\n if (this.needsDecode) {\n this.decodeBuffer(comps);\n }\n length = width * height;\n const scale = 255 / ((1 << bpc) - 1);\n for (i = 0; i < length; ++i) {\n buffer[i] = scale * comps[i];\n }\n }\n createBitmap(kind, width, height, src) {\n const canvas = new OffscreenCanvas(width, height);\n const ctx = canvas.getContext(\"2d\");\n let imgData;\n if (kind === _util.ImageKind.RGBA_32BPP) {\n imgData = new ImageData(src, width, height);\n } else {\n imgData = ctx.createImageData(width, height);\n (0, _image_utils.convertToRGBA)({\n kind,\n src,\n dest: new Uint32Array(imgData.data.buffer),\n width,\n height,\n inverseDecode: this.needsDecode\n });\n }\n ctx.putImageData(imgData, 0, 0);\n const bitmap = canvas.transferToImageBitmap();\n return {\n data: null,\n width,\n height,\n bitmap,\n interpolate: this.interpolate\n };\n }\n getImageBytes(length, {\n drawWidth,\n drawHeight,\n forceRGBA = false,\n forceRGB = false,\n internal = false\n }) {\n this.image.reset();\n this.image.drawWidth = drawWidth || this.width;\n this.image.drawHeight = drawHeight || this.height;\n this.image.forceRGBA = !!forceRGBA;\n this.image.forceRGB = !!forceRGB;\n const imageBytes = this.image.getBytes(length);\n if (internal || this.image instanceof _decode_stream.DecodeStream) {\n return imageBytes;\n }\n (0, _util.assert)(imageBytes instanceof Uint8Array, 'PDFImage.getImageBytes: Unsupported \"imageBytes\" type.');\n return new Uint8Array(imageBytes);\n }\n}\nexports.PDFImage = PDFImage;\n\n/***/ }),\n/* 66 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Catalog = void 0;\nvar _core_utils = __w_pdfjs_require__(3);\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _name_number_tree = __w_pdfjs_require__(67);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _cleanup_helper = __w_pdfjs_require__(68);\nvar _colorspace = __w_pdfjs_require__(12);\nvar _file_spec = __w_pdfjs_require__(69);\nvar _image_utils = __w_pdfjs_require__(59);\nvar _metadata_parser = __w_pdfjs_require__(70);\nvar _struct_tree = __w_pdfjs_require__(72);\nfunction fetchDestination(dest) {\n if (dest instanceof _primitives.Dict) {\n dest = dest.get(\"D\");\n }\n return Array.isArray(dest) ? dest : null;\n}\nclass Catalog {\n constructor(pdfManager, xref) {\n this.pdfManager = pdfManager;\n this.xref = xref;\n this._catDict = xref.getCatalogObj();\n if (!(this._catDict instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"Catalog object is not a dictionary.\");\n }\n this.toplevelPagesDict;\n this._actualNumPages = null;\n this.fontCache = new _primitives.RefSetCache();\n this.builtInCMapCache = new Map();\n this.standardFontDataCache = new Map();\n this.globalImageCache = new _image_utils.GlobalImageCache();\n this.pageKidsCountCache = new _primitives.RefSetCache();\n this.pageIndexCache = new _primitives.RefSetCache();\n this.nonBlendModesSet = new _primitives.RefSet();\n this.systemFontCache = new Map();\n }\n cloneDict() {\n return this._catDict.clone();\n }\n get version() {\n const version = this._catDict.get(\"Version\");\n if (version instanceof _primitives.Name) {\n if (_core_utils.PDF_VERSION_REGEXP.test(version.name)) {\n return (0, _util.shadow)(this, \"version\", version.name);\n }\n (0, _util.warn)(`Invalid PDF catalog version: ${version.name}`);\n }\n return (0, _util.shadow)(this, \"version\", null);\n }\n get lang() {\n const lang = this._catDict.get(\"Lang\");\n return (0, _util.shadow)(this, \"lang\", typeof lang === \"string\" ? (0, _util.stringToPDFString)(lang) : null);\n }\n get needsRendering() {\n const needsRendering = this._catDict.get(\"NeedsRendering\");\n return (0, _util.shadow)(this, \"needsRendering\", typeof needsRendering === \"boolean\" ? needsRendering : false);\n }\n get collection() {\n let collection = null;\n try {\n const obj = this._catDict.get(\"Collection\");\n if (obj instanceof _primitives.Dict && obj.size > 0) {\n collection = obj;\n }\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.info)(\"Cannot fetch Collection entry; assuming no collection is present.\");\n }\n return (0, _util.shadow)(this, \"collection\", collection);\n }\n get acroForm() {\n let acroForm = null;\n try {\n const obj = this._catDict.get(\"AcroForm\");\n if (obj instanceof _primitives.Dict && obj.size > 0) {\n acroForm = obj;\n }\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.info)(\"Cannot fetch AcroForm entry; assuming no forms are present.\");\n }\n return (0, _util.shadow)(this, \"acroForm\", acroForm);\n }\n get acroFormRef() {\n const value = this._catDict.getRaw(\"AcroForm\");\n return (0, _util.shadow)(this, \"acroFormRef\", value instanceof _primitives.Ref ? value : null);\n }\n get metadata() {\n const streamRef = this._catDict.getRaw(\"Metadata\");\n if (!(streamRef instanceof _primitives.Ref)) {\n return (0, _util.shadow)(this, \"metadata\", null);\n }\n let metadata = null;\n try {\n const stream = this.xref.fetch(streamRef, !this.xref.encrypt?.encryptMetadata);\n if (stream instanceof _base_stream.BaseStream && stream.dict instanceof _primitives.Dict) {\n const type = stream.dict.get(\"Type\");\n const subtype = stream.dict.get(\"Subtype\");\n if ((0, _primitives.isName)(type, \"Metadata\") && (0, _primitives.isName)(subtype, \"XML\")) {\n const data = (0, _util.stringToUTF8String)(stream.getString());\n if (data) {\n metadata = new _metadata_parser.MetadataParser(data).serializable;\n }\n }\n }\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.info)(`Skipping invalid Metadata: \"${ex}\".`);\n }\n return (0, _util.shadow)(this, \"metadata\", metadata);\n }\n get markInfo() {\n let markInfo = null;\n try {\n markInfo = this._readMarkInfo();\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(\"Unable to read mark info.\");\n }\n return (0, _util.shadow)(this, \"markInfo\", markInfo);\n }\n _readMarkInfo() {\n const obj = this._catDict.get(\"MarkInfo\");\n if (!(obj instanceof _primitives.Dict)) {\n return null;\n }\n const markInfo = {\n Marked: false,\n UserProperties: false,\n Suspects: false\n };\n for (const key in markInfo) {\n const value = obj.get(key);\n if (typeof value === \"boolean\") {\n markInfo[key] = value;\n }\n }\n return markInfo;\n }\n get structTreeRoot() {\n let structTree = null;\n try {\n structTree = this._readStructTreeRoot();\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(\"Unable read to structTreeRoot info.\");\n }\n return (0, _util.shadow)(this, \"structTreeRoot\", structTree);\n }\n _readStructTreeRoot() {\n const rawObj = this._catDict.getRaw(\"StructTreeRoot\");\n const obj = this.xref.fetchIfRef(rawObj);\n if (!(obj instanceof _primitives.Dict)) {\n return null;\n }\n const root = new _struct_tree.StructTreeRoot(obj, rawObj);\n root.init();\n return root;\n }\n get toplevelPagesDict() {\n const pagesObj = this._catDict.get(\"Pages\");\n if (!(pagesObj instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"Invalid top-level pages dictionary.\");\n }\n return (0, _util.shadow)(this, \"toplevelPagesDict\", pagesObj);\n }\n get documentOutline() {\n let obj = null;\n try {\n obj = this._readDocumentOutline();\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(\"Unable to read document outline.\");\n }\n return (0, _util.shadow)(this, \"documentOutline\", obj);\n }\n _readDocumentOutline() {\n let obj = this._catDict.get(\"Outlines\");\n if (!(obj instanceof _primitives.Dict)) {\n return null;\n }\n obj = obj.getRaw(\"First\");\n if (!(obj instanceof _primitives.Ref)) {\n return null;\n }\n const root = {\n items: []\n };\n const queue = [{\n obj,\n parent: root\n }];\n const processed = new _primitives.RefSet();\n processed.put(obj);\n const xref = this.xref,\n blackColor = new Uint8ClampedArray(3);\n while (queue.length > 0) {\n const i = queue.shift();\n const outlineDict = xref.fetchIfRef(i.obj);\n if (outlineDict === null) {\n continue;\n }\n if (!outlineDict.has(\"Title\")) {\n throw new _util.FormatError(\"Invalid outline item encountered.\");\n }\n const data = {\n url: null,\n dest: null,\n action: null\n };\n Catalog.parseDestDictionary({\n destDict: outlineDict,\n resultObj: data,\n docBaseUrl: this.baseUrl,\n docAttachments: this.attachments\n });\n const title = outlineDict.get(\"Title\");\n const flags = outlineDict.get(\"F\") || 0;\n const color = outlineDict.getArray(\"C\");\n const count = outlineDict.get(\"Count\");\n let rgbColor = blackColor;\n if (Array.isArray(color) && color.length === 3 && (color[0] !== 0 || color[1] !== 0 || color[2] !== 0)) {\n rgbColor = _colorspace.ColorSpace.singletons.rgb.getRgb(color, 0);\n }\n const outlineItem = {\n action: data.action,\n attachment: data.attachment,\n dest: data.dest,\n url: data.url,\n unsafeUrl: data.unsafeUrl,\n newWindow: data.newWindow,\n setOCGState: data.setOCGState,\n title: (0, _util.stringToPDFString)(title),\n color: rgbColor,\n count: Number.isInteger(count) ? count : undefined,\n bold: !!(flags & 2),\n italic: !!(flags & 1),\n items: []\n };\n i.parent.items.push(outlineItem);\n obj = outlineDict.getRaw(\"First\");\n if (obj instanceof _primitives.Ref && !processed.has(obj)) {\n queue.push({\n obj,\n parent: outlineItem\n });\n processed.put(obj);\n }\n obj = outlineDict.getRaw(\"Next\");\n if (obj instanceof _primitives.Ref && !processed.has(obj)) {\n queue.push({\n obj,\n parent: i.parent\n });\n processed.put(obj);\n }\n }\n return root.items.length > 0 ? root.items : null;\n }\n get permissions() {\n let permissions = null;\n try {\n permissions = this._readPermissions();\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(\"Unable to read permissions.\");\n }\n return (0, _util.shadow)(this, \"permissions\", permissions);\n }\n _readPermissions() {\n const encrypt = this.xref.trailer.get(\"Encrypt\");\n if (!(encrypt instanceof _primitives.Dict)) {\n return null;\n }\n let flags = encrypt.get(\"P\");\n if (typeof flags !== \"number\") {\n return null;\n }\n flags += 2 ** 32;\n const permissions = [];\n for (const key in _util.PermissionFlag) {\n const value = _util.PermissionFlag[key];\n if (flags & value) {\n permissions.push(value);\n }\n }\n return permissions;\n }\n get optionalContentConfig() {\n let config = null;\n try {\n const properties = this._catDict.get(\"OCProperties\");\n if (!properties) {\n return (0, _util.shadow)(this, \"optionalContentConfig\", null);\n }\n const defaultConfig = properties.get(\"D\");\n if (!defaultConfig) {\n return (0, _util.shadow)(this, \"optionalContentConfig\", null);\n }\n const groupsData = properties.get(\"OCGs\");\n if (!Array.isArray(groupsData)) {\n return (0, _util.shadow)(this, \"optionalContentConfig\", null);\n }\n const groups = [];\n const groupRefs = [];\n for (const groupRef of groupsData) {\n if (!(groupRef instanceof _primitives.Ref)) {\n continue;\n }\n groupRefs.push(groupRef);\n const group = this.xref.fetchIfRef(groupRef);\n groups.push({\n id: groupRef.toString(),\n name: typeof group.get(\"Name\") === \"string\" ? (0, _util.stringToPDFString)(group.get(\"Name\")) : null,\n intent: typeof group.get(\"Intent\") === \"string\" ? (0, _util.stringToPDFString)(group.get(\"Intent\")) : null\n });\n }\n config = this._readOptionalContentConfig(defaultConfig, groupRefs);\n config.groups = groups;\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(`Unable to read optional content config: ${ex}`);\n }\n return (0, _util.shadow)(this, \"optionalContentConfig\", config);\n }\n _readOptionalContentConfig(config, contentGroupRefs) {\n function parseOnOff(refs) {\n const onParsed = [];\n if (Array.isArray(refs)) {\n for (const value of refs) {\n if (!(value instanceof _primitives.Ref)) {\n continue;\n }\n if (contentGroupRefs.includes(value)) {\n onParsed.push(value.toString());\n }\n }\n }\n return onParsed;\n }\n function parseOrder(refs, nestedLevels = 0) {\n if (!Array.isArray(refs)) {\n return null;\n }\n const order = [];\n for (const value of refs) {\n if (value instanceof _primitives.Ref && contentGroupRefs.includes(value)) {\n parsedOrderRefs.put(value);\n order.push(value.toString());\n continue;\n }\n const nestedOrder = parseNestedOrder(value, nestedLevels);\n if (nestedOrder) {\n order.push(nestedOrder);\n }\n }\n if (nestedLevels > 0) {\n return order;\n }\n const hiddenGroups = [];\n for (const groupRef of contentGroupRefs) {\n if (parsedOrderRefs.has(groupRef)) {\n continue;\n }\n hiddenGroups.push(groupRef.toString());\n }\n if (hiddenGroups.length) {\n order.push({\n name: null,\n order: hiddenGroups\n });\n }\n return order;\n }\n function parseNestedOrder(ref, nestedLevels) {\n if (++nestedLevels > MAX_NESTED_LEVELS) {\n (0, _util.warn)(\"parseNestedOrder - reached MAX_NESTED_LEVELS.\");\n return null;\n }\n const value = xref.fetchIfRef(ref);\n if (!Array.isArray(value)) {\n return null;\n }\n const nestedName = xref.fetchIfRef(value[0]);\n if (typeof nestedName !== \"string\") {\n return null;\n }\n const nestedOrder = parseOrder(value.slice(1), nestedLevels);\n if (!nestedOrder || !nestedOrder.length) {\n return null;\n }\n return {\n name: (0, _util.stringToPDFString)(nestedName),\n order: nestedOrder\n };\n }\n const xref = this.xref,\n parsedOrderRefs = new _primitives.RefSet(),\n MAX_NESTED_LEVELS = 10;\n return {\n name: typeof config.get(\"Name\") === \"string\" ? (0, _util.stringToPDFString)(config.get(\"Name\")) : null,\n creator: typeof config.get(\"Creator\") === \"string\" ? (0, _util.stringToPDFString)(config.get(\"Creator\")) : null,\n baseState: config.get(\"BaseState\") instanceof _primitives.Name ? config.get(\"BaseState\").name : null,\n on: parseOnOff(config.get(\"ON\")),\n off: parseOnOff(config.get(\"OFF\")),\n order: parseOrder(config.get(\"Order\")),\n groups: null\n };\n }\n setActualNumPages(num = null) {\n this._actualNumPages = num;\n }\n get hasActualNumPages() {\n return this._actualNumPages !== null;\n }\n get _pagesCount() {\n const obj = this.toplevelPagesDict.get(\"Count\");\n if (!Number.isInteger(obj)) {\n throw new _util.FormatError(\"Page count in top-level pages dictionary is not an integer.\");\n }\n return (0, _util.shadow)(this, \"_pagesCount\", obj);\n }\n get numPages() {\n return this.hasActualNumPages ? this._actualNumPages : this._pagesCount;\n }\n get destinations() {\n const obj = this._readDests(),\n dests = Object.create(null);\n if (obj instanceof _name_number_tree.NameTree) {\n for (const [key, value] of obj.getAll()) {\n const dest = fetchDestination(value);\n if (dest) {\n dests[(0, _util.stringToPDFString)(key)] = dest;\n }\n }\n } else if (obj instanceof _primitives.Dict) {\n obj.forEach(function (key, value) {\n const dest = fetchDestination(value);\n if (dest) {\n dests[key] = dest;\n }\n });\n }\n return (0, _util.shadow)(this, \"destinations\", dests);\n }\n getDestination(id) {\n const obj = this._readDests();\n if (obj instanceof _name_number_tree.NameTree) {\n const dest = fetchDestination(obj.get(id));\n if (dest) {\n return dest;\n }\n const allDest = this.destinations[id];\n if (allDest) {\n (0, _util.warn)(`Found \"${id}\" at an incorrect position in the NameTree.`);\n return allDest;\n }\n } else if (obj instanceof _primitives.Dict) {\n const dest = fetchDestination(obj.get(id));\n if (dest) {\n return dest;\n }\n }\n return null;\n }\n _readDests() {\n const obj = this._catDict.get(\"Names\");\n if (obj?.has(\"Dests\")) {\n return new _name_number_tree.NameTree(obj.getRaw(\"Dests\"), this.xref);\n } else if (this._catDict.has(\"Dests\")) {\n return this._catDict.get(\"Dests\");\n }\n return undefined;\n }\n get pageLabels() {\n let obj = null;\n try {\n obj = this._readPageLabels();\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(\"Unable to read page labels.\");\n }\n return (0, _util.shadow)(this, \"pageLabels\", obj);\n }\n _readPageLabels() {\n const obj = this._catDict.getRaw(\"PageLabels\");\n if (!obj) {\n return null;\n }\n const pageLabels = new Array(this.numPages);\n let style = null,\n prefix = \"\";\n const numberTree = new _name_number_tree.NumberTree(obj, this.xref);\n const nums = numberTree.getAll();\n let currentLabel = \"\",\n currentIndex = 1;\n for (let i = 0, ii = this.numPages; i < ii; i++) {\n const labelDict = nums.get(i);\n if (labelDict !== undefined) {\n if (!(labelDict instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"PageLabel is not a dictionary.\");\n }\n if (labelDict.has(\"Type\") && !(0, _primitives.isName)(labelDict.get(\"Type\"), \"PageLabel\")) {\n throw new _util.FormatError(\"Invalid type in PageLabel dictionary.\");\n }\n if (labelDict.has(\"S\")) {\n const s = labelDict.get(\"S\");\n if (!(s instanceof _primitives.Name)) {\n throw new _util.FormatError(\"Invalid style in PageLabel dictionary.\");\n }\n style = s.name;\n } else {\n style = null;\n }\n if (labelDict.has(\"P\")) {\n const p = labelDict.get(\"P\");\n if (typeof p !== \"string\") {\n throw new _util.FormatError(\"Invalid prefix in PageLabel dictionary.\");\n }\n prefix = (0, _util.stringToPDFString)(p);\n } else {\n prefix = \"\";\n }\n if (labelDict.has(\"St\")) {\n const st = labelDict.get(\"St\");\n if (!(Number.isInteger(st) && st >= 1)) {\n throw new _util.FormatError(\"Invalid start in PageLabel dictionary.\");\n }\n currentIndex = st;\n } else {\n currentIndex = 1;\n }\n }\n switch (style) {\n case \"D\":\n currentLabel = currentIndex;\n break;\n case \"R\":\n case \"r\":\n currentLabel = (0, _core_utils.toRomanNumerals)(currentIndex, style === \"r\");\n break;\n case \"A\":\n case \"a\":\n const LIMIT = 26;\n const A_UPPER_CASE = 0x41,\n A_LOWER_CASE = 0x61;\n const baseCharCode = style === \"a\" ? A_LOWER_CASE : A_UPPER_CASE;\n const letterIndex = currentIndex - 1;\n const character = String.fromCharCode(baseCharCode + letterIndex % LIMIT);\n currentLabel = character.repeat(Math.floor(letterIndex / LIMIT) + 1);\n break;\n default:\n if (style) {\n throw new _util.FormatError(`Invalid style \"${style}\" in PageLabel dictionary.`);\n }\n currentLabel = \"\";\n }\n pageLabels[i] = prefix + currentLabel;\n currentIndex++;\n }\n return pageLabels;\n }\n get pageLayout() {\n const obj = this._catDict.get(\"PageLayout\");\n let pageLayout = \"\";\n if (obj instanceof _primitives.Name) {\n switch (obj.name) {\n case \"SinglePage\":\n case \"OneColumn\":\n case \"TwoColumnLeft\":\n case \"TwoColumnRight\":\n case \"TwoPageLeft\":\n case \"TwoPageRight\":\n pageLayout = obj.name;\n }\n }\n return (0, _util.shadow)(this, \"pageLayout\", pageLayout);\n }\n get pageMode() {\n const obj = this._catDict.get(\"PageMode\");\n let pageMode = \"UseNone\";\n if (obj instanceof _primitives.Name) {\n switch (obj.name) {\n case \"UseNone\":\n case \"UseOutlines\":\n case \"UseThumbs\":\n case \"FullScreen\":\n case \"UseOC\":\n case \"UseAttachments\":\n pageMode = obj.name;\n }\n }\n return (0, _util.shadow)(this, \"pageMode\", pageMode);\n }\n get viewerPreferences() {\n const obj = this._catDict.get(\"ViewerPreferences\");\n if (!(obj instanceof _primitives.Dict)) {\n return (0, _util.shadow)(this, \"viewerPreferences\", null);\n }\n let prefs = null;\n for (const key of obj.getKeys()) {\n const value = obj.get(key);\n let prefValue;\n switch (key) {\n case \"HideToolbar\":\n case \"HideMenubar\":\n case \"HideWindowUI\":\n case \"FitWindow\":\n case \"CenterWindow\":\n case \"DisplayDocTitle\":\n case \"PickTrayByPDFSize\":\n if (typeof value === \"boolean\") {\n prefValue = value;\n }\n break;\n case \"NonFullScreenPageMode\":\n if (value instanceof _primitives.Name) {\n switch (value.name) {\n case \"UseNone\":\n case \"UseOutlines\":\n case \"UseThumbs\":\n case \"UseOC\":\n prefValue = value.name;\n break;\n default:\n prefValue = \"UseNone\";\n }\n }\n break;\n case \"Direction\":\n if (value instanceof _primitives.Name) {\n switch (value.name) {\n case \"L2R\":\n case \"R2L\":\n prefValue = value.name;\n break;\n default:\n prefValue = \"L2R\";\n }\n }\n break;\n case \"ViewArea\":\n case \"ViewClip\":\n case \"PrintArea\":\n case \"PrintClip\":\n if (value instanceof _primitives.Name) {\n switch (value.name) {\n case \"MediaBox\":\n case \"CropBox\":\n case \"BleedBox\":\n case \"TrimBox\":\n case \"ArtBox\":\n prefValue = value.name;\n break;\n default:\n prefValue = \"CropBox\";\n }\n }\n break;\n case \"PrintScaling\":\n if (value instanceof _primitives.Name) {\n switch (value.name) {\n case \"None\":\n case \"AppDefault\":\n prefValue = value.name;\n break;\n default:\n prefValue = \"AppDefault\";\n }\n }\n break;\n case \"Duplex\":\n if (value instanceof _primitives.Name) {\n switch (value.name) {\n case \"Simplex\":\n case \"DuplexFlipShortEdge\":\n case \"DuplexFlipLongEdge\":\n prefValue = value.name;\n break;\n default:\n prefValue = \"None\";\n }\n }\n break;\n case \"PrintPageRange\":\n if (Array.isArray(value) && value.length % 2 === 0) {\n const isValid = value.every((page, i, arr) => {\n return Number.isInteger(page) && page > 0 && (i === 0 || page >= arr[i - 1]) && page <= this.numPages;\n });\n if (isValid) {\n prefValue = value;\n }\n }\n break;\n case \"NumCopies\":\n if (Number.isInteger(value) && value > 0) {\n prefValue = value;\n }\n break;\n default:\n (0, _util.warn)(`Ignoring non-standard key in ViewerPreferences: ${key}.`);\n continue;\n }\n if (prefValue === undefined) {\n (0, _util.warn)(`Bad value, for key \"${key}\", in ViewerPreferences: ${value}.`);\n continue;\n }\n if (!prefs) {\n prefs = Object.create(null);\n }\n prefs[key] = prefValue;\n }\n return (0, _util.shadow)(this, \"viewerPreferences\", prefs);\n }\n get openAction() {\n const obj = this._catDict.get(\"OpenAction\");\n const openAction = Object.create(null);\n if (obj instanceof _primitives.Dict) {\n const destDict = new _primitives.Dict(this.xref);\n destDict.set(\"A\", obj);\n const resultObj = {\n url: null,\n dest: null,\n action: null\n };\n Catalog.parseDestDictionary({\n destDict,\n resultObj\n });\n if (Array.isArray(resultObj.dest)) {\n openAction.dest = resultObj.dest;\n } else if (resultObj.action) {\n openAction.action = resultObj.action;\n }\n } else if (Array.isArray(obj)) {\n openAction.dest = obj;\n }\n return (0, _util.shadow)(this, \"openAction\", (0, _util.objectSize)(openAction) > 0 ? openAction : null);\n }\n get attachments() {\n const obj = this._catDict.get(\"Names\");\n let attachments = null;\n if (obj instanceof _primitives.Dict && obj.has(\"EmbeddedFiles\")) {\n const nameTree = new _name_number_tree.NameTree(obj.getRaw(\"EmbeddedFiles\"), this.xref);\n for (const [key, value] of nameTree.getAll()) {\n const fs = new _file_spec.FileSpec(value, this.xref);\n if (!attachments) {\n attachments = Object.create(null);\n }\n attachments[(0, _util.stringToPDFString)(key)] = fs.serializable;\n }\n }\n return (0, _util.shadow)(this, \"attachments\", attachments);\n }\n get xfaImages() {\n const obj = this._catDict.get(\"Names\");\n let xfaImages = null;\n if (obj instanceof _primitives.Dict && obj.has(\"XFAImages\")) {\n const nameTree = new _name_number_tree.NameTree(obj.getRaw(\"XFAImages\"), this.xref);\n for (const [key, value] of nameTree.getAll()) {\n if (!xfaImages) {\n xfaImages = new _primitives.Dict(this.xref);\n }\n xfaImages.set((0, _util.stringToPDFString)(key), value);\n }\n }\n return (0, _util.shadow)(this, \"xfaImages\", xfaImages);\n }\n _collectJavaScript() {\n const obj = this._catDict.get(\"Names\");\n let javaScript = null;\n function appendIfJavaScriptDict(name, jsDict) {\n if (!(jsDict instanceof _primitives.Dict)) {\n return;\n }\n if (!(0, _primitives.isName)(jsDict.get(\"S\"), \"JavaScript\")) {\n return;\n }\n let js = jsDict.get(\"JS\");\n if (js instanceof _base_stream.BaseStream) {\n js = js.getString();\n } else if (typeof js !== \"string\") {\n return;\n }\n js = (0, _util.stringToPDFString)(js).replaceAll(\"\\x00\", \"\");\n if (js) {\n (javaScript ||= new Map()).set(name, js);\n }\n }\n if (obj instanceof _primitives.Dict && obj.has(\"JavaScript\")) {\n const nameTree = new _name_number_tree.NameTree(obj.getRaw(\"JavaScript\"), this.xref);\n for (const [key, value] of nameTree.getAll()) {\n appendIfJavaScriptDict((0, _util.stringToPDFString)(key), value);\n }\n }\n const openAction = this._catDict.get(\"OpenAction\");\n if (openAction) {\n appendIfJavaScriptDict(\"OpenAction\", openAction);\n }\n return javaScript;\n }\n get jsActions() {\n const javaScript = this._collectJavaScript();\n let actions = (0, _core_utils.collectActions)(this.xref, this._catDict, _util.DocumentActionEventType);\n if (javaScript) {\n actions ||= Object.create(null);\n for (const [key, val] of javaScript) {\n if (key in actions) {\n actions[key].push(val);\n } else {\n actions[key] = [val];\n }\n }\n }\n return (0, _util.shadow)(this, \"jsActions\", actions);\n }\n async fontFallback(id, handler) {\n const translatedFonts = await Promise.all(this.fontCache);\n for (const translatedFont of translatedFonts) {\n if (translatedFont.loadedName === id) {\n translatedFont.fallback(handler);\n return;\n }\n }\n }\n async cleanup(manuallyTriggered = false) {\n (0, _cleanup_helper.clearGlobalCaches)();\n this.globalImageCache.clear(manuallyTriggered);\n this.pageKidsCountCache.clear();\n this.pageIndexCache.clear();\n this.nonBlendModesSet.clear();\n const translatedFonts = await Promise.all(this.fontCache);\n for (const {\n dict\n } of translatedFonts) {\n delete dict.cacheKey;\n }\n this.fontCache.clear();\n this.builtInCMapCache.clear();\n this.standardFontDataCache.clear();\n this.systemFontCache.clear();\n }\n async getPageDict(pageIndex) {\n const nodesToVisit = [this.toplevelPagesDict];\n const visitedNodes = new _primitives.RefSet();\n const pagesRef = this._catDict.getRaw(\"Pages\");\n if (pagesRef instanceof _primitives.Ref) {\n visitedNodes.put(pagesRef);\n }\n const xref = this.xref,\n pageKidsCountCache = this.pageKidsCountCache,\n pageIndexCache = this.pageIndexCache;\n let currentPageIndex = 0;\n while (nodesToVisit.length) {\n const currentNode = nodesToVisit.pop();\n if (currentNode instanceof _primitives.Ref) {\n const count = pageKidsCountCache.get(currentNode);\n if (count >= 0 && currentPageIndex + count <= pageIndex) {\n currentPageIndex += count;\n continue;\n }\n if (visitedNodes.has(currentNode)) {\n throw new _util.FormatError(\"Pages tree contains circular reference.\");\n }\n visitedNodes.put(currentNode);\n const obj = await xref.fetchAsync(currentNode);\n if (obj instanceof _primitives.Dict) {\n let type = obj.getRaw(\"Type\");\n if (type instanceof _primitives.Ref) {\n type = await xref.fetchAsync(type);\n }\n if ((0, _primitives.isName)(type, \"Page\") || !obj.has(\"Kids\")) {\n if (!pageKidsCountCache.has(currentNode)) {\n pageKidsCountCache.put(currentNode, 1);\n }\n if (!pageIndexCache.has(currentNode)) {\n pageIndexCache.put(currentNode, currentPageIndex);\n }\n if (currentPageIndex === pageIndex) {\n return [obj, currentNode];\n }\n currentPageIndex++;\n continue;\n }\n }\n nodesToVisit.push(obj);\n continue;\n }\n if (!(currentNode instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"Page dictionary kid reference points to wrong type of object.\");\n }\n const {\n objId\n } = currentNode;\n let count = currentNode.getRaw(\"Count\");\n if (count instanceof _primitives.Ref) {\n count = await xref.fetchAsync(count);\n }\n if (Number.isInteger(count) && count >= 0) {\n if (objId && !pageKidsCountCache.has(objId)) {\n pageKidsCountCache.put(objId, count);\n }\n if (currentPageIndex + count <= pageIndex) {\n currentPageIndex += count;\n continue;\n }\n }\n let kids = currentNode.getRaw(\"Kids\");\n if (kids instanceof _primitives.Ref) {\n kids = await xref.fetchAsync(kids);\n }\n if (!Array.isArray(kids)) {\n let type = currentNode.getRaw(\"Type\");\n if (type instanceof _primitives.Ref) {\n type = await xref.fetchAsync(type);\n }\n if ((0, _primitives.isName)(type, \"Page\") || !currentNode.has(\"Kids\")) {\n if (currentPageIndex === pageIndex) {\n return [currentNode, null];\n }\n currentPageIndex++;\n continue;\n }\n throw new _util.FormatError(\"Page dictionary kids object is not an array.\");\n }\n for (let last = kids.length - 1; last >= 0; last--) {\n nodesToVisit.push(kids[last]);\n }\n }\n throw new Error(`Page index ${pageIndex} not found.`);\n }\n async getAllPageDicts(recoveryMode = false) {\n const {\n ignoreErrors\n } = this.pdfManager.evaluatorOptions;\n const queue = [{\n currentNode: this.toplevelPagesDict,\n posInKids: 0\n }];\n const visitedNodes = new _primitives.RefSet();\n const pagesRef = this._catDict.getRaw(\"Pages\");\n if (pagesRef instanceof _primitives.Ref) {\n visitedNodes.put(pagesRef);\n }\n const map = new Map(),\n xref = this.xref,\n pageIndexCache = this.pageIndexCache;\n let pageIndex = 0;\n function addPageDict(pageDict, pageRef) {\n if (pageRef && !pageIndexCache.has(pageRef)) {\n pageIndexCache.put(pageRef, pageIndex);\n }\n map.set(pageIndex++, [pageDict, pageRef]);\n }\n function addPageError(error) {\n if (error instanceof _core_utils.XRefEntryException && !recoveryMode) {\n throw error;\n }\n if (recoveryMode && ignoreErrors && pageIndex === 0) {\n (0, _util.warn)(`getAllPageDicts - Skipping invalid first page: \"${error}\".`);\n error = _primitives.Dict.empty;\n }\n map.set(pageIndex++, [error, null]);\n }\n while (queue.length > 0) {\n const queueItem = queue.at(-1);\n const {\n currentNode,\n posInKids\n } = queueItem;\n let kids = currentNode.getRaw(\"Kids\");\n if (kids instanceof _primitives.Ref) {\n try {\n kids = await xref.fetchAsync(kids);\n } catch (ex) {\n addPageError(ex);\n break;\n }\n }\n if (!Array.isArray(kids)) {\n addPageError(new _util.FormatError(\"Page dictionary kids object is not an array.\"));\n break;\n }\n if (posInKids >= kids.length) {\n queue.pop();\n continue;\n }\n const kidObj = kids[posInKids];\n let obj;\n if (kidObj instanceof _primitives.Ref) {\n if (visitedNodes.has(kidObj)) {\n addPageError(new _util.FormatError(\"Pages tree contains circular reference.\"));\n break;\n }\n visitedNodes.put(kidObj);\n try {\n obj = await xref.fetchAsync(kidObj);\n } catch (ex) {\n addPageError(ex);\n break;\n }\n } else {\n obj = kidObj;\n }\n if (!(obj instanceof _primitives.Dict)) {\n addPageError(new _util.FormatError(\"Page dictionary kid reference points to wrong type of object.\"));\n break;\n }\n let type = obj.getRaw(\"Type\");\n if (type instanceof _primitives.Ref) {\n try {\n type = await xref.fetchAsync(type);\n } catch (ex) {\n addPageError(ex);\n break;\n }\n }\n if ((0, _primitives.isName)(type, \"Page\") || !obj.has(\"Kids\")) {\n addPageDict(obj, kidObj instanceof _primitives.Ref ? kidObj : null);\n } else {\n queue.push({\n currentNode: obj,\n posInKids: 0\n });\n }\n queueItem.posInKids++;\n }\n return map;\n }\n getPageIndex(pageRef) {\n const cachedPageIndex = this.pageIndexCache.get(pageRef);\n if (cachedPageIndex !== undefined) {\n return Promise.resolve(cachedPageIndex);\n }\n const xref = this.xref;\n function pagesBeforeRef(kidRef) {\n let total = 0,\n parentRef;\n return xref.fetchAsync(kidRef).then(function (node) {\n if ((0, _primitives.isRefsEqual)(kidRef, pageRef) && !(0, _primitives.isDict)(node, \"Page\") && !(node instanceof _primitives.Dict && !node.has(\"Type\") && node.has(\"Contents\"))) {\n throw new _util.FormatError(\"The reference does not point to a /Page dictionary.\");\n }\n if (!node) {\n return null;\n }\n if (!(node instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"Node must be a dictionary.\");\n }\n parentRef = node.getRaw(\"Parent\");\n return node.getAsync(\"Parent\");\n }).then(function (parent) {\n if (!parent) {\n return null;\n }\n if (!(parent instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"Parent must be a dictionary.\");\n }\n return parent.getAsync(\"Kids\");\n }).then(function (kids) {\n if (!kids) {\n return null;\n }\n const kidPromises = [];\n let found = false;\n for (const kid of kids) {\n if (!(kid instanceof _primitives.Ref)) {\n throw new _util.FormatError(\"Kid must be a reference.\");\n }\n if ((0, _primitives.isRefsEqual)(kid, kidRef)) {\n found = true;\n break;\n }\n kidPromises.push(xref.fetchAsync(kid).then(function (obj) {\n if (!(obj instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"Kid node must be a dictionary.\");\n }\n if (obj.has(\"Count\")) {\n total += obj.get(\"Count\");\n } else {\n total++;\n }\n }));\n }\n if (!found) {\n throw new _util.FormatError(\"Kid reference not found in parent's kids.\");\n }\n return Promise.all(kidPromises).then(function () {\n return [total, parentRef];\n });\n });\n }\n let total = 0;\n const next = ref => pagesBeforeRef(ref).then(args => {\n if (!args) {\n this.pageIndexCache.put(pageRef, total);\n return total;\n }\n const [count, parentRef] = args;\n total += count;\n return next(parentRef);\n });\n return next(pageRef);\n }\n get baseUrl() {\n const uri = this._catDict.get(\"URI\");\n if (uri instanceof _primitives.Dict) {\n const base = uri.get(\"Base\");\n if (typeof base === \"string\") {\n const absoluteUrl = (0, _util.createValidAbsoluteUrl)(base, null, {\n tryConvertEncoding: true\n });\n if (absoluteUrl) {\n return (0, _util.shadow)(this, \"baseUrl\", absoluteUrl.href);\n }\n }\n }\n return (0, _util.shadow)(this, \"baseUrl\", this.pdfManager.docBaseUrl);\n }\n static parseDestDictionary({\n destDict,\n resultObj,\n docBaseUrl = null,\n docAttachments = null\n }) {\n if (!(destDict instanceof _primitives.Dict)) {\n (0, _util.warn)(\"parseDestDictionary: `destDict` must be a dictionary.\");\n return;\n }\n let action = destDict.get(\"A\"),\n url,\n dest;\n if (!(action instanceof _primitives.Dict)) {\n if (destDict.has(\"Dest\")) {\n action = destDict.get(\"Dest\");\n } else {\n action = destDict.get(\"AA\");\n if (action instanceof _primitives.Dict) {\n if (action.has(\"D\")) {\n action = action.get(\"D\");\n } else if (action.has(\"U\")) {\n action = action.get(\"U\");\n }\n }\n }\n }\n if (action instanceof _primitives.Dict) {\n const actionType = action.get(\"S\");\n if (!(actionType instanceof _primitives.Name)) {\n (0, _util.warn)(\"parseDestDictionary: Invalid type in Action dictionary.\");\n return;\n }\n const actionName = actionType.name;\n switch (actionName) {\n case \"ResetForm\":\n const flags = action.get(\"Flags\");\n const include = ((typeof flags === \"number\" ? flags : 0) & 1) === 0;\n const fields = [];\n const refs = [];\n for (const obj of action.get(\"Fields\") || []) {\n if (obj instanceof _primitives.Ref) {\n refs.push(obj.toString());\n } else if (typeof obj === \"string\") {\n fields.push((0, _util.stringToPDFString)(obj));\n }\n }\n resultObj.resetForm = {\n fields,\n refs,\n include\n };\n break;\n case \"URI\":\n url = action.get(\"URI\");\n if (url instanceof _primitives.Name) {\n url = \"/\" + url.name;\n }\n break;\n case \"GoTo\":\n dest = action.get(\"D\");\n break;\n case \"Launch\":\n case \"GoToR\":\n const urlDict = action.get(\"F\");\n if (urlDict instanceof _primitives.Dict) {\n url = urlDict.get(\"F\") || null;\n } else if (typeof urlDict === \"string\") {\n url = urlDict;\n }\n let remoteDest = action.get(\"D\");\n if (remoteDest) {\n if (remoteDest instanceof _primitives.Name) {\n remoteDest = remoteDest.name;\n }\n if (typeof url === \"string\") {\n const baseUrl = url.split(\"#\")[0];\n if (typeof remoteDest === \"string\") {\n url = baseUrl + \"#\" + remoteDest;\n } else if (Array.isArray(remoteDest)) {\n url = baseUrl + \"#\" + JSON.stringify(remoteDest);\n }\n }\n }\n const newWindow = action.get(\"NewWindow\");\n if (typeof newWindow === \"boolean\") {\n resultObj.newWindow = newWindow;\n }\n break;\n case \"GoToE\":\n const target = action.get(\"T\");\n let attachment;\n if (docAttachments && target instanceof _primitives.Dict) {\n const relationship = target.get(\"R\");\n const name = target.get(\"N\");\n if ((0, _primitives.isName)(relationship, \"C\") && typeof name === \"string\") {\n attachment = docAttachments[(0, _util.stringToPDFString)(name)];\n }\n }\n if (attachment) {\n resultObj.attachment = attachment;\n } else {\n (0, _util.warn)(`parseDestDictionary - unimplemented \"GoToE\" action.`);\n }\n break;\n case \"Named\":\n const namedAction = action.get(\"N\");\n if (namedAction instanceof _primitives.Name) {\n resultObj.action = namedAction.name;\n }\n break;\n case \"SetOCGState\":\n const state = action.get(\"State\");\n const preserveRB = action.get(\"PreserveRB\");\n if (!Array.isArray(state) || state.length === 0) {\n break;\n }\n const stateArr = [];\n for (const elem of state) {\n if (elem instanceof _primitives.Name) {\n switch (elem.name) {\n case \"ON\":\n case \"OFF\":\n case \"Toggle\":\n stateArr.push(elem.name);\n break;\n }\n } else if (elem instanceof _primitives.Ref) {\n stateArr.push(elem.toString());\n }\n }\n if (stateArr.length !== state.length) {\n break;\n }\n resultObj.setOCGState = {\n state: stateArr,\n preserveRB: typeof preserveRB === \"boolean\" ? preserveRB : true\n };\n break;\n case \"JavaScript\":\n const jsAction = action.get(\"JS\");\n let js;\n if (jsAction instanceof _base_stream.BaseStream) {\n js = jsAction.getString();\n } else if (typeof jsAction === \"string\") {\n js = jsAction;\n }\n const jsURL = js && (0, _core_utils.recoverJsURL)((0, _util.stringToPDFString)(js));\n if (jsURL) {\n url = jsURL.url;\n resultObj.newWindow = jsURL.newWindow;\n break;\n }\n default:\n if (actionName === \"JavaScript\" || actionName === \"SubmitForm\") {\n break;\n }\n (0, _util.warn)(`parseDestDictionary - unsupported action: \"${actionName}\".`);\n break;\n }\n } else if (destDict.has(\"Dest\")) {\n dest = destDict.get(\"Dest\");\n }\n if (typeof url === \"string\") {\n const absoluteUrl = (0, _util.createValidAbsoluteUrl)(url, docBaseUrl, {\n addDefaultProtocol: true,\n tryConvertEncoding: true\n });\n if (absoluteUrl) {\n resultObj.url = absoluteUrl.href;\n }\n resultObj.unsafeUrl = url;\n }\n if (dest) {\n if (dest instanceof _primitives.Name) {\n dest = dest.name;\n }\n if (typeof dest === \"string\") {\n resultObj.dest = (0, _util.stringToPDFString)(dest);\n } else if (Array.isArray(dest)) {\n resultObj.dest = dest;\n }\n }\n }\n}\nexports.Catalog = Catalog;\n\n/***/ }),\n/* 67 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.NumberTree = exports.NameTree = void 0;\nvar _primitives = __w_pdfjs_require__(4);\nvar _util = __w_pdfjs_require__(2);\nclass NameOrNumberTree {\n constructor(root, xref, type) {\n if (this.constructor === NameOrNumberTree) {\n (0, _util.unreachable)(\"Cannot initialize NameOrNumberTree.\");\n }\n this.root = root;\n this.xref = xref;\n this._type = type;\n }\n getAll() {\n const map = new Map();\n if (!this.root) {\n return map;\n }\n const xref = this.xref;\n const processed = new _primitives.RefSet();\n processed.put(this.root);\n const queue = [this.root];\n while (queue.length > 0) {\n const obj = xref.fetchIfRef(queue.shift());\n if (!(obj instanceof _primitives.Dict)) {\n continue;\n }\n if (obj.has(\"Kids\")) {\n const kids = obj.get(\"Kids\");\n if (!Array.isArray(kids)) {\n continue;\n }\n for (const kid of kids) {\n if (processed.has(kid)) {\n throw new _util.FormatError(`Duplicate entry in \"${this._type}\" tree.`);\n }\n queue.push(kid);\n processed.put(kid);\n }\n continue;\n }\n const entries = obj.get(this._type);\n if (!Array.isArray(entries)) {\n continue;\n }\n for (let i = 0, ii = entries.length; i < ii; i += 2) {\n map.set(xref.fetchIfRef(entries[i]), xref.fetchIfRef(entries[i + 1]));\n }\n }\n return map;\n }\n get(key) {\n if (!this.root) {\n return null;\n }\n const xref = this.xref;\n let kidsOrEntries = xref.fetchIfRef(this.root);\n let loopCount = 0;\n const MAX_LEVELS = 10;\n while (kidsOrEntries.has(\"Kids\")) {\n if (++loopCount > MAX_LEVELS) {\n (0, _util.warn)(`Search depth limit reached for \"${this._type}\" tree.`);\n return null;\n }\n const kids = kidsOrEntries.get(\"Kids\");\n if (!Array.isArray(kids)) {\n return null;\n }\n let l = 0,\n r = kids.length - 1;\n while (l <= r) {\n const m = l + r >> 1;\n const kid = xref.fetchIfRef(kids[m]);\n const limits = kid.get(\"Limits\");\n if (key < xref.fetchIfRef(limits[0])) {\n r = m - 1;\n } else if (key > xref.fetchIfRef(limits[1])) {\n l = m + 1;\n } else {\n kidsOrEntries = kid;\n break;\n }\n }\n if (l > r) {\n return null;\n }\n }\n const entries = kidsOrEntries.get(this._type);\n if (Array.isArray(entries)) {\n let l = 0,\n r = entries.length - 2;\n while (l <= r) {\n const tmp = l + r >> 1,\n m = tmp + (tmp & 1);\n const currentKey = xref.fetchIfRef(entries[m]);\n if (key < currentKey) {\n r = m - 2;\n } else if (key > currentKey) {\n l = m + 2;\n } else {\n return xref.fetchIfRef(entries[m + 1]);\n }\n }\n }\n return null;\n }\n}\nclass NameTree extends NameOrNumberTree {\n constructor(root, xref) {\n super(root, xref, \"Names\");\n }\n}\nexports.NameTree = NameTree;\nclass NumberTree extends NameOrNumberTree {\n constructor(root, xref) {\n super(root, xref, \"Nums\");\n }\n}\nexports.NumberTree = NumberTree;\n\n/***/ }),\n/* 68 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.clearGlobalCaches = clearGlobalCaches;\nvar _pattern = __w_pdfjs_require__(50);\nvar _primitives = __w_pdfjs_require__(4);\nvar _unicode = __w_pdfjs_require__(40);\nfunction clearGlobalCaches() {\n (0, _pattern.clearPatternCaches)();\n (0, _primitives.clearPrimitiveCaches)();\n (0, _unicode.clearUnicodeCaches)();\n}\n\n/***/ }),\n/* 69 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FileSpec = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _primitives = __w_pdfjs_require__(4);\nfunction pickPlatformItem(dict) {\n if (dict.has(\"UF\")) {\n return dict.get(\"UF\");\n } else if (dict.has(\"F\")) {\n return dict.get(\"F\");\n } else if (dict.has(\"Unix\")) {\n return dict.get(\"Unix\");\n } else if (dict.has(\"Mac\")) {\n return dict.get(\"Mac\");\n } else if (dict.has(\"DOS\")) {\n return dict.get(\"DOS\");\n }\n return null;\n}\nclass FileSpec {\n constructor(root, xref) {\n if (!(root instanceof _primitives.Dict)) {\n return;\n }\n this.xref = xref;\n this.root = root;\n if (root.has(\"FS\")) {\n this.fs = root.get(\"FS\");\n }\n this.description = root.has(\"Desc\") ? (0, _util.stringToPDFString)(root.get(\"Desc\")) : \"\";\n if (root.has(\"RF\")) {\n (0, _util.warn)(\"Related file specifications are not supported\");\n }\n this.contentAvailable = true;\n if (!root.has(\"EF\")) {\n this.contentAvailable = false;\n (0, _util.warn)(\"Non-embedded file specifications are not supported\");\n }\n }\n get filename() {\n if (!this._filename && this.root) {\n const filename = pickPlatformItem(this.root) || \"unnamed\";\n this._filename = (0, _util.stringToPDFString)(filename).replaceAll(\"\\\\\\\\\", \"\\\\\").replaceAll(\"\\\\/\", \"/\").replaceAll(\"\\\\\", \"/\");\n }\n return this._filename;\n }\n get content() {\n if (!this.contentAvailable) {\n return null;\n }\n if (!this.contentRef && this.root) {\n this.contentRef = pickPlatformItem(this.root.get(\"EF\"));\n }\n let content = null;\n if (this.contentRef) {\n const fileObj = this.xref.fetchIfRef(this.contentRef);\n if (fileObj instanceof _base_stream.BaseStream) {\n content = fileObj.getBytes();\n } else {\n (0, _util.warn)(\"Embedded file specification points to non-existing/invalid content\");\n }\n } else {\n (0, _util.warn)(\"Embedded file specification does not have a content\");\n }\n return content;\n }\n get serializable() {\n return {\n filename: this.filename,\n content: this.content\n };\n }\n}\nexports.FileSpec = FileSpec;\n\n/***/ }),\n/* 70 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.MetadataParser = void 0;\nvar _xml_parser = __w_pdfjs_require__(71);\nclass MetadataParser {\n constructor(data) {\n data = this._repair(data);\n const parser = new _xml_parser.SimpleXMLParser({\n lowerCaseName: true\n });\n const xmlDocument = parser.parseFromString(data);\n this._metadataMap = new Map();\n this._data = data;\n if (xmlDocument) {\n this._parse(xmlDocument);\n }\n }\n _repair(data) {\n return data.replace(/^[^<]+/, \"\").replaceAll(/>\\\\376\\\\377([^<]+)/g, function (all, codes) {\n const bytes = codes.replaceAll(/\\\\([0-3])([0-7])([0-7])/g, function (code, d1, d2, d3) {\n return String.fromCharCode(d1 * 64 + d2 * 8 + d3 * 1);\n }).replaceAll(/&(amp|apos|gt|lt|quot);/g, function (str, name) {\n switch (name) {\n case \"amp\":\n return \"&\";\n case \"apos\":\n return \"'\";\n case \"gt\":\n return \">\";\n case \"lt\":\n return \"<\";\n case \"quot\":\n return '\"';\n }\n throw new Error(`_repair: ${name} isn't defined.`);\n });\n const charBuf = [\">\"];\n for (let i = 0, ii = bytes.length; i < ii; i += 2) {\n const code = bytes.charCodeAt(i) * 256 + bytes.charCodeAt(i + 1);\n if (code >= 32 && code < 127 && code !== 60 && code !== 62 && code !== 38) {\n charBuf.push(String.fromCharCode(code));\n } else {\n charBuf.push(\"&#x\" + (0x10000 + code).toString(16).substring(1) + \";\");\n }\n }\n return charBuf.join(\"\");\n });\n }\n _getSequence(entry) {\n const name = entry.nodeName;\n if (name !== \"rdf:bag\" && name !== \"rdf:seq\" && name !== \"rdf:alt\") {\n return null;\n }\n return entry.childNodes.filter(node => node.nodeName === \"rdf:li\");\n }\n _parseArray(entry) {\n if (!entry.hasChildNodes()) {\n return;\n }\n const [seqNode] = entry.childNodes;\n const sequence = this._getSequence(seqNode) || [];\n this._metadataMap.set(entry.nodeName, sequence.map(node => node.textContent.trim()));\n }\n _parse(xmlDocument) {\n let rdf = xmlDocument.documentElement;\n if (rdf.nodeName !== \"rdf:rdf\") {\n rdf = rdf.firstChild;\n while (rdf && rdf.nodeName !== \"rdf:rdf\") {\n rdf = rdf.nextSibling;\n }\n }\n if (!rdf || rdf.nodeName !== \"rdf:rdf\" || !rdf.hasChildNodes()) {\n return;\n }\n for (const desc of rdf.childNodes) {\n if (desc.nodeName !== \"rdf:description\") {\n continue;\n }\n for (const entry of desc.childNodes) {\n const name = entry.nodeName;\n switch (name) {\n case \"#text\":\n continue;\n case \"dc:creator\":\n case \"dc:subject\":\n this._parseArray(entry);\n continue;\n }\n this._metadataMap.set(name, entry.textContent.trim());\n }\n }\n }\n get serializable() {\n return {\n parsedData: this._metadataMap,\n rawData: this._data\n };\n }\n}\nexports.MetadataParser = MetadataParser;\n\n/***/ }),\n/* 71 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XMLParserErrorCode = exports.XMLParserBase = exports.SimpleXMLParser = exports.SimpleDOMNode = void 0;\nvar _core_utils = __w_pdfjs_require__(3);\nconst XMLParserErrorCode = {\n NoError: 0,\n EndOfDocument: -1,\n UnterminatedCdat: -2,\n UnterminatedXmlDeclaration: -3,\n UnterminatedDoctypeDeclaration: -4,\n UnterminatedComment: -5,\n MalformedElement: -6,\n OutOfMemory: -7,\n UnterminatedAttributeValue: -8,\n UnterminatedElement: -9,\n ElementNeverBegun: -10\n};\nexports.XMLParserErrorCode = XMLParserErrorCode;\nfunction isWhitespace(s, index) {\n const ch = s[index];\n return ch === \" \" || ch === \"\\n\" || ch === \"\\r\" || ch === \"\\t\";\n}\nfunction isWhitespaceString(s) {\n for (let i = 0, ii = s.length; i < ii; i++) {\n if (!isWhitespace(s, i)) {\n return false;\n }\n }\n return true;\n}\nclass XMLParserBase {\n _resolveEntities(s) {\n return s.replaceAll(/&([^;]+);/g, (all, entity) => {\n if (entity.substring(0, 2) === \"#x\") {\n return String.fromCodePoint(parseInt(entity.substring(2), 16));\n } else if (entity.substring(0, 1) === \"#\") {\n return String.fromCodePoint(parseInt(entity.substring(1), 10));\n }\n switch (entity) {\n case \"lt\":\n return \"<\";\n case \"gt\":\n return \">\";\n case \"amp\":\n return \"&\";\n case \"quot\":\n return '\"';\n case \"apos\":\n return \"'\";\n }\n return this.onResolveEntity(entity);\n });\n }\n _parseContent(s, start) {\n const attributes = [];\n let pos = start;\n function skipWs() {\n while (pos < s.length && isWhitespace(s, pos)) {\n ++pos;\n }\n }\n while (pos < s.length && !isWhitespace(s, pos) && s[pos] !== \">\" && s[pos] !== \"/\") {\n ++pos;\n }\n const name = s.substring(start, pos);\n skipWs();\n while (pos < s.length && s[pos] !== \">\" && s[pos] !== \"/\" && s[pos] !== \"?\") {\n skipWs();\n let attrName = \"\",\n attrValue = \"\";\n while (pos < s.length && !isWhitespace(s, pos) && s[pos] !== \"=\") {\n attrName += s[pos];\n ++pos;\n }\n skipWs();\n if (s[pos] !== \"=\") {\n return null;\n }\n ++pos;\n skipWs();\n const attrEndChar = s[pos];\n if (attrEndChar !== '\"' && attrEndChar !== \"'\") {\n return null;\n }\n const attrEndIndex = s.indexOf(attrEndChar, ++pos);\n if (attrEndIndex < 0) {\n return null;\n }\n attrValue = s.substring(pos, attrEndIndex);\n attributes.push({\n name: attrName,\n value: this._resolveEntities(attrValue)\n });\n pos = attrEndIndex + 1;\n skipWs();\n }\n return {\n name,\n attributes,\n parsed: pos - start\n };\n }\n _parseProcessingInstruction(s, start) {\n let pos = start;\n function skipWs() {\n while (pos < s.length && isWhitespace(s, pos)) {\n ++pos;\n }\n }\n while (pos < s.length && !isWhitespace(s, pos) && s[pos] !== \">\" && s[pos] !== \"?\" && s[pos] !== \"/\") {\n ++pos;\n }\n const name = s.substring(start, pos);\n skipWs();\n const attrStart = pos;\n while (pos < s.length && (s[pos] !== \"?\" || s[pos + 1] !== \">\")) {\n ++pos;\n }\n const value = s.substring(attrStart, pos);\n return {\n name,\n value,\n parsed: pos - start\n };\n }\n parseXml(s) {\n let i = 0;\n while (i < s.length) {\n const ch = s[i];\n let j = i;\n if (ch === \"<\") {\n ++j;\n const ch2 = s[j];\n let q;\n switch (ch2) {\n case \"/\":\n ++j;\n q = s.indexOf(\">\", j);\n if (q < 0) {\n this.onError(XMLParserErrorCode.UnterminatedElement);\n return;\n }\n this.onEndElement(s.substring(j, q));\n j = q + 1;\n break;\n case \"?\":\n ++j;\n const pi = this._parseProcessingInstruction(s, j);\n if (s.substring(j + pi.parsed, j + pi.parsed + 2) !== \"?>\") {\n this.onError(XMLParserErrorCode.UnterminatedXmlDeclaration);\n return;\n }\n this.onPi(pi.name, pi.value);\n j += pi.parsed + 2;\n break;\n case \"!\":\n if (s.substring(j + 1, j + 3) === \"--\") {\n q = s.indexOf(\"-->\", j + 3);\n if (q < 0) {\n this.onError(XMLParserErrorCode.UnterminatedComment);\n return;\n }\n this.onComment(s.substring(j + 3, q));\n j = q + 3;\n } else if (s.substring(j + 1, j + 8) === \"[CDATA[\") {\n q = s.indexOf(\"]]>\", j + 8);\n if (q < 0) {\n this.onError(XMLParserErrorCode.UnterminatedCdat);\n return;\n }\n this.onCdata(s.substring(j + 8, q));\n j = q + 3;\n } else if (s.substring(j + 1, j + 8) === \"DOCTYPE\") {\n const q2 = s.indexOf(\"[\", j + 8);\n let complexDoctype = false;\n q = s.indexOf(\">\", j + 8);\n if (q < 0) {\n this.onError(XMLParserErrorCode.UnterminatedDoctypeDeclaration);\n return;\n }\n if (q2 > 0 && q > q2) {\n q = s.indexOf(\"]>\", j + 8);\n if (q < 0) {\n this.onError(XMLParserErrorCode.UnterminatedDoctypeDeclaration);\n return;\n }\n complexDoctype = true;\n }\n const doctypeContent = s.substring(j + 8, q + (complexDoctype ? 1 : 0));\n this.onDoctype(doctypeContent);\n j = q + (complexDoctype ? 2 : 1);\n } else {\n this.onError(XMLParserErrorCode.MalformedElement);\n return;\n }\n break;\n default:\n const content = this._parseContent(s, j);\n if (content === null) {\n this.onError(XMLParserErrorCode.MalformedElement);\n return;\n }\n let isClosed = false;\n if (s.substring(j + content.parsed, j + content.parsed + 2) === \"/>\") {\n isClosed = true;\n } else if (s.substring(j + content.parsed, j + content.parsed + 1) !== \">\") {\n this.onError(XMLParserErrorCode.UnterminatedElement);\n return;\n }\n this.onBeginElement(content.name, content.attributes, isClosed);\n j += content.parsed + (isClosed ? 2 : 1);\n break;\n }\n } else {\n while (j < s.length && s[j] !== \"<\") {\n j++;\n }\n const text = s.substring(i, j);\n this.onText(this._resolveEntities(text));\n }\n i = j;\n }\n }\n onResolveEntity(name) {\n return `&${name};`;\n }\n onPi(name, value) {}\n onComment(text) {}\n onCdata(text) {}\n onDoctype(doctypeContent) {}\n onText(text) {}\n onBeginElement(name, attributes, isEmpty) {}\n onEndElement(name) {}\n onError(code) {}\n}\nexports.XMLParserBase = XMLParserBase;\nclass SimpleDOMNode {\n constructor(nodeName, nodeValue) {\n this.nodeName = nodeName;\n this.nodeValue = nodeValue;\n Object.defineProperty(this, \"parentNode\", {\n value: null,\n writable: true\n });\n }\n get firstChild() {\n return this.childNodes?.[0];\n }\n get nextSibling() {\n const childNodes = this.parentNode.childNodes;\n if (!childNodes) {\n return undefined;\n }\n const index = childNodes.indexOf(this);\n if (index === -1) {\n return undefined;\n }\n return childNodes[index + 1];\n }\n get textContent() {\n if (!this.childNodes) {\n return this.nodeValue || \"\";\n }\n return this.childNodes.map(function (child) {\n return child.textContent;\n }).join(\"\");\n }\n get children() {\n return this.childNodes || [];\n }\n hasChildNodes() {\n return this.childNodes?.length > 0;\n }\n searchNode(paths, pos) {\n if (pos >= paths.length) {\n return this;\n }\n const component = paths[pos];\n if (component.name.startsWith(\"#\") && pos < paths.length - 1) {\n return this.searchNode(paths, pos + 1);\n }\n const stack = [];\n let node = this;\n while (true) {\n if (component.name === node.nodeName) {\n if (component.pos === 0) {\n const res = node.searchNode(paths, pos + 1);\n if (res !== null) {\n return res;\n }\n } else if (stack.length === 0) {\n return null;\n } else {\n const [parent] = stack.pop();\n let siblingPos = 0;\n for (const child of parent.childNodes) {\n if (component.name === child.nodeName) {\n if (siblingPos === component.pos) {\n return child.searchNode(paths, pos + 1);\n }\n siblingPos++;\n }\n }\n return node.searchNode(paths, pos + 1);\n }\n }\n if (node.childNodes?.length > 0) {\n stack.push([node, 0]);\n node = node.childNodes[0];\n } else if (stack.length === 0) {\n return null;\n } else {\n while (stack.length !== 0) {\n const [parent, currentPos] = stack.pop();\n const newPos = currentPos + 1;\n if (newPos < parent.childNodes.length) {\n stack.push([parent, newPos]);\n node = parent.childNodes[newPos];\n break;\n }\n }\n if (stack.length === 0) {\n return null;\n }\n }\n }\n }\n dump(buffer) {\n if (this.nodeName === \"#text\") {\n buffer.push((0, _core_utils.encodeToXmlString)(this.nodeValue));\n return;\n }\n buffer.push(`<${this.nodeName}`);\n if (this.attributes) {\n for (const attribute of this.attributes) {\n buffer.push(` ${attribute.name}=\"${(0, _core_utils.encodeToXmlString)(attribute.value)}\"`);\n }\n }\n if (this.hasChildNodes()) {\n buffer.push(\">\");\n for (const child of this.childNodes) {\n child.dump(buffer);\n }\n buffer.push(``);\n } else if (this.nodeValue) {\n buffer.push(`>${(0, _core_utils.encodeToXmlString)(this.nodeValue)}`);\n } else {\n buffer.push(\"/>\");\n }\n }\n}\nexports.SimpleDOMNode = SimpleDOMNode;\nclass SimpleXMLParser extends XMLParserBase {\n constructor({\n hasAttributes = false,\n lowerCaseName = false\n }) {\n super();\n this._currentFragment = null;\n this._stack = null;\n this._errorCode = XMLParserErrorCode.NoError;\n this._hasAttributes = hasAttributes;\n this._lowerCaseName = lowerCaseName;\n }\n parseFromString(data) {\n this._currentFragment = [];\n this._stack = [];\n this._errorCode = XMLParserErrorCode.NoError;\n this.parseXml(data);\n if (this._errorCode !== XMLParserErrorCode.NoError) {\n return undefined;\n }\n const [documentElement] = this._currentFragment;\n if (!documentElement) {\n return undefined;\n }\n return {\n documentElement\n };\n }\n onText(text) {\n if (isWhitespaceString(text)) {\n return;\n }\n const node = new SimpleDOMNode(\"#text\", text);\n this._currentFragment.push(node);\n }\n onCdata(text) {\n const node = new SimpleDOMNode(\"#text\", text);\n this._currentFragment.push(node);\n }\n onBeginElement(name, attributes, isEmpty) {\n if (this._lowerCaseName) {\n name = name.toLowerCase();\n }\n const node = new SimpleDOMNode(name);\n node.childNodes = [];\n if (this._hasAttributes) {\n node.attributes = attributes;\n }\n this._currentFragment.push(node);\n if (isEmpty) {\n return;\n }\n this._stack.push(this._currentFragment);\n this._currentFragment = node.childNodes;\n }\n onEndElement(name) {\n this._currentFragment = this._stack.pop() || [];\n const lastElement = this._currentFragment.at(-1);\n if (!lastElement) {\n return null;\n }\n for (const childNode of lastElement.childNodes) {\n childNode.parentNode = lastElement;\n }\n return lastElement;\n }\n onError(code) {\n this._errorCode = code;\n }\n}\nexports.SimpleXMLParser = SimpleXMLParser;\n\n/***/ }),\n/* 72 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StructTreeRoot = exports.StructTreePage = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _name_number_tree = __w_pdfjs_require__(67);\nvar _writer = __w_pdfjs_require__(73);\nconst MAX_DEPTH = 40;\nconst StructElementType = {\n PAGE_CONTENT: 1,\n STREAM_CONTENT: 2,\n OBJECT: 3,\n ANNOTATION: 4,\n ELEMENT: 5\n};\nclass StructTreeRoot {\n constructor(rootDict, rootRef) {\n this.dict = rootDict;\n this.ref = rootRef instanceof _primitives.Ref ? rootRef : null;\n this.roleMap = new Map();\n this.structParentIds = null;\n }\n init() {\n this.readRoleMap();\n }\n #addIdToPage(pageRef, id, type) {\n if (!(pageRef instanceof _primitives.Ref) || id < 0) {\n return;\n }\n this.structParentIds ||= new _primitives.RefSetCache();\n let ids = this.structParentIds.get(pageRef);\n if (!ids) {\n ids = [];\n this.structParentIds.put(pageRef, ids);\n }\n ids.push([id, type]);\n }\n addAnnotationIdToPage(pageRef, id) {\n this.#addIdToPage(pageRef, id, StructElementType.ANNOTATION);\n }\n readRoleMap() {\n const roleMapDict = this.dict.get(\"RoleMap\");\n if (!(roleMapDict instanceof _primitives.Dict)) {\n return;\n }\n roleMapDict.forEach((key, value) => {\n if (!(value instanceof _primitives.Name)) {\n return;\n }\n this.roleMap.set(key, value.name);\n });\n }\n static async canCreateStructureTree({\n catalogRef,\n pdfManager,\n newAnnotationsByPage\n }) {\n if (!(catalogRef instanceof _primitives.Ref)) {\n (0, _util.warn)(\"Cannot save the struct tree: no catalog reference.\");\n return false;\n }\n let nextKey = 0;\n let hasNothingToUpdate = true;\n for (const [pageIndex, elements] of newAnnotationsByPage) {\n const {\n ref: pageRef\n } = await pdfManager.getPage(pageIndex);\n if (!(pageRef instanceof _primitives.Ref)) {\n (0, _util.warn)(`Cannot save the struct tree: page ${pageIndex} has no ref.`);\n hasNothingToUpdate = true;\n break;\n }\n for (const element of elements) {\n if (element.accessibilityData?.type) {\n element.parentTreeId = nextKey++;\n hasNothingToUpdate = false;\n }\n }\n }\n if (hasNothingToUpdate) {\n for (const elements of newAnnotationsByPage.values()) {\n for (const element of elements) {\n delete element.parentTreeId;\n }\n }\n return false;\n }\n return true;\n }\n static async createStructureTree({\n newAnnotationsByPage,\n xref,\n catalogRef,\n pdfManager,\n newRefs\n }) {\n const root = pdfManager.catalog.cloneDict();\n const structTreeRootRef = xref.getNewTemporaryRef();\n root.set(\"StructTreeRoot\", structTreeRootRef);\n const buffer = [];\n await (0, _writer.writeObject)(catalogRef, root, buffer, xref);\n newRefs.push({\n ref: catalogRef,\n data: buffer.join(\"\")\n });\n const structTreeRoot = new _primitives.Dict(xref);\n structTreeRoot.set(\"Type\", _primitives.Name.get(\"StructTreeRoot\"));\n const parentTreeRef = xref.getNewTemporaryRef();\n structTreeRoot.set(\"ParentTree\", parentTreeRef);\n const kids = [];\n structTreeRoot.set(\"K\", kids);\n const parentTree = new _primitives.Dict(xref);\n const nums = [];\n parentTree.set(\"Nums\", nums);\n const nextKey = await this.#writeKids({\n newAnnotationsByPage,\n structTreeRootRef,\n kids,\n nums,\n xref,\n pdfManager,\n newRefs,\n buffer\n });\n structTreeRoot.set(\"ParentTreeNextKey\", nextKey);\n buffer.length = 0;\n await (0, _writer.writeObject)(parentTreeRef, parentTree, buffer, xref);\n newRefs.push({\n ref: parentTreeRef,\n data: buffer.join(\"\")\n });\n buffer.length = 0;\n await (0, _writer.writeObject)(structTreeRootRef, structTreeRoot, buffer, xref);\n newRefs.push({\n ref: structTreeRootRef,\n data: buffer.join(\"\")\n });\n }\n async canUpdateStructTree({\n pdfManager,\n newAnnotationsByPage\n }) {\n if (!this.ref) {\n (0, _util.warn)(\"Cannot update the struct tree: no root reference.\");\n return false;\n }\n let nextKey = this.dict.get(\"ParentTreeNextKey\");\n if (!Number.isInteger(nextKey) || nextKey < 0) {\n (0, _util.warn)(\"Cannot update the struct tree: invalid next key.\");\n return false;\n }\n const parentTree = this.dict.get(\"ParentTree\");\n if (!(parentTree instanceof _primitives.Dict)) {\n (0, _util.warn)(\"Cannot update the struct tree: ParentTree isn't a dict.\");\n return false;\n }\n const nums = parentTree.get(\"Nums\");\n if (!Array.isArray(nums)) {\n (0, _util.warn)(\"Cannot update the struct tree: nums isn't an array.\");\n return false;\n }\n const {\n numPages\n } = pdfManager.catalog;\n for (const pageIndex of newAnnotationsByPage.keys()) {\n const {\n pageDict,\n ref: pageRef\n } = await pdfManager.getPage(pageIndex);\n if (!(pageRef instanceof _primitives.Ref)) {\n (0, _util.warn)(`Cannot save the struct tree: page ${pageIndex} has no ref.`);\n return false;\n }\n const id = pageDict.get(\"StructParents\");\n if (!Number.isInteger(id) || id < 0 || id >= numPages) {\n (0, _util.warn)(`Cannot save the struct tree: page ${pageIndex} has no id.`);\n return false;\n }\n }\n let hasNothingToUpdate = true;\n for (const [pageIndex, elements] of newAnnotationsByPage) {\n const {\n pageDict\n } = await pdfManager.getPage(pageIndex);\n StructTreeRoot.#collectParents({\n elements,\n xref: this.dict.xref,\n pageDict,\n parentTree\n });\n for (const element of elements) {\n if (element.accessibilityData?.type) {\n element.parentTreeId = nextKey++;\n hasNothingToUpdate = false;\n }\n }\n }\n if (hasNothingToUpdate) {\n for (const elements of newAnnotationsByPage.values()) {\n for (const element of elements) {\n delete element.parentTreeId;\n delete element.structTreeParent;\n }\n }\n return false;\n }\n return true;\n }\n async updateStructureTree({\n newAnnotationsByPage,\n pdfManager,\n newRefs\n }) {\n const xref = this.dict.xref;\n const structTreeRoot = this.dict.clone();\n const structTreeRootRef = this.ref;\n let parentTreeRef = structTreeRoot.getRaw(\"ParentTree\");\n let parentTree;\n if (parentTreeRef instanceof _primitives.Ref) {\n parentTree = xref.fetch(parentTreeRef);\n } else {\n parentTree = parentTreeRef;\n parentTreeRef = xref.getNewTemporaryRef();\n structTreeRoot.set(\"ParentTree\", parentTreeRef);\n }\n parentTree = parentTree.clone();\n let nums = parentTree.getRaw(\"Nums\");\n let numsRef = null;\n if (nums instanceof _primitives.Ref) {\n numsRef = nums;\n nums = xref.fetch(numsRef);\n }\n nums = nums.slice();\n if (!numsRef) {\n parentTree.set(\"Nums\", nums);\n }\n let kids = structTreeRoot.getRaw(\"K\");\n let kidsRef = null;\n if (kids instanceof _primitives.Ref) {\n kidsRef = kids;\n kids = xref.fetch(kidsRef);\n } else {\n kidsRef = xref.getNewTemporaryRef();\n structTreeRoot.set(\"K\", kidsRef);\n }\n kids = Array.isArray(kids) ? kids.slice() : [kids];\n const buffer = [];\n const newNextkey = await StructTreeRoot.#writeKids({\n newAnnotationsByPage,\n structTreeRootRef,\n kids,\n nums,\n xref,\n pdfManager,\n newRefs,\n buffer\n });\n structTreeRoot.set(\"ParentTreeNextKey\", newNextkey);\n buffer.length = 0;\n await (0, _writer.writeObject)(kidsRef, kids, buffer, xref);\n newRefs.push({\n ref: kidsRef,\n data: buffer.join(\"\")\n });\n if (numsRef) {\n buffer.length = 0;\n await (0, _writer.writeObject)(numsRef, nums, buffer, xref);\n newRefs.push({\n ref: numsRef,\n data: buffer.join(\"\")\n });\n }\n buffer.length = 0;\n await (0, _writer.writeObject)(parentTreeRef, parentTree, buffer, xref);\n newRefs.push({\n ref: parentTreeRef,\n data: buffer.join(\"\")\n });\n buffer.length = 0;\n await (0, _writer.writeObject)(structTreeRootRef, structTreeRoot, buffer, xref);\n newRefs.push({\n ref: structTreeRootRef,\n data: buffer.join(\"\")\n });\n }\n static async #writeKids({\n newAnnotationsByPage,\n structTreeRootRef,\n kids,\n nums,\n xref,\n pdfManager,\n newRefs,\n buffer\n }) {\n const objr = _primitives.Name.get(\"OBJR\");\n let nextKey = -Infinity;\n for (const [pageIndex, elements] of newAnnotationsByPage) {\n const {\n ref: pageRef\n } = await pdfManager.getPage(pageIndex);\n for (const {\n accessibilityData: {\n type,\n title,\n lang,\n alt,\n expanded,\n actualText\n },\n ref,\n parentTreeId,\n structTreeParent\n } of elements) {\n nextKey = Math.max(nextKey, parentTreeId);\n const tagRef = xref.getNewTemporaryRef();\n const tagDict = new _primitives.Dict(xref);\n tagDict.set(\"S\", _primitives.Name.get(type));\n if (title) {\n tagDict.set(\"T\", title);\n }\n if (lang) {\n tagDict.set(\"Lang\", lang);\n }\n if (alt) {\n tagDict.set(\"Alt\", alt);\n }\n if (expanded) {\n tagDict.set(\"E\", expanded);\n }\n if (actualText) {\n tagDict.set(\"ActualText\", actualText);\n }\n if (structTreeParent) {\n await this.#updateParentTag({\n structTreeParent,\n tagDict,\n newTagRef: tagRef,\n fallbackRef: structTreeRootRef,\n xref,\n newRefs,\n buffer\n });\n } else {\n tagDict.set(\"P\", structTreeRootRef);\n }\n const objDict = new _primitives.Dict(xref);\n tagDict.set(\"K\", objDict);\n objDict.set(\"Type\", objr);\n objDict.set(\"Pg\", pageRef);\n objDict.set(\"Obj\", ref);\n buffer.length = 0;\n await (0, _writer.writeObject)(tagRef, tagDict, buffer, xref);\n newRefs.push({\n ref: tagRef,\n data: buffer.join(\"\")\n });\n nums.push(parentTreeId, tagRef);\n kids.push(tagRef);\n }\n }\n return nextKey + 1;\n }\n static #collectParents({\n elements,\n xref,\n pageDict,\n parentTree\n }) {\n const idToElement = new Map();\n for (const element of elements) {\n if (element.structTreeParentId) {\n const id = parseInt(element.structTreeParentId.split(\"_mc\")[1], 10);\n idToElement.set(id, element);\n }\n }\n const id = pageDict.get(\"StructParents\");\n const numberTree = new _name_number_tree.NumberTree(parentTree, xref);\n const parentArray = numberTree.get(id);\n if (!Array.isArray(parentArray)) {\n return;\n }\n const updateElement = (kid, pageKid, kidRef) => {\n const element = idToElement.get(kid);\n if (element) {\n const parentRef = pageKid.getRaw(\"P\");\n const parentDict = xref.fetchIfRef(parentRef);\n if (parentRef instanceof _primitives.Ref && parentDict instanceof _primitives.Dict) {\n element.structTreeParent = {\n ref: kidRef,\n dict: pageKid\n };\n }\n return true;\n }\n return false;\n };\n for (const kidRef of parentArray) {\n if (!(kidRef instanceof _primitives.Ref)) {\n continue;\n }\n const pageKid = xref.fetch(kidRef);\n const k = pageKid.get(\"K\");\n if (Number.isInteger(k)) {\n updateElement(k, pageKid, kidRef);\n continue;\n }\n if (!Array.isArray(k)) {\n continue;\n }\n for (let kid of k) {\n kid = xref.fetchIfRef(kid);\n if (Number.isInteger(kid) && updateElement(kid, pageKid, kidRef)) {\n break;\n }\n }\n }\n }\n static async #updateParentTag({\n structTreeParent: {\n ref,\n dict\n },\n tagDict,\n newTagRef,\n fallbackRef,\n xref,\n newRefs,\n buffer\n }) {\n const parentRef = dict.getRaw(\"P\");\n let parentDict = xref.fetchIfRef(parentRef);\n tagDict.set(\"P\", parentRef);\n let saveParentDict = false;\n let parentKids;\n let parentKidsRef = parentDict.getRaw(\"K\");\n if (!(parentKidsRef instanceof _primitives.Ref)) {\n parentKids = parentKidsRef;\n parentKidsRef = xref.getNewTemporaryRef();\n parentDict = parentDict.clone();\n parentDict.set(\"K\", parentKidsRef);\n saveParentDict = true;\n } else {\n parentKids = xref.fetch(parentKidsRef);\n }\n if (Array.isArray(parentKids)) {\n const index = parentKids.indexOf(ref);\n if (index >= 0) {\n parentKids = parentKids.slice();\n parentKids.splice(index + 1, 0, newTagRef);\n } else {\n (0, _util.warn)(\"Cannot update the struct tree: parent kid not found.\");\n tagDict.set(\"P\", fallbackRef);\n return;\n }\n } else if (parentKids instanceof _primitives.Dict) {\n parentKids = [parentKidsRef, newTagRef];\n parentKidsRef = xref.getNewTemporaryRef();\n parentDict.set(\"K\", parentKidsRef);\n saveParentDict = true;\n }\n buffer.length = 0;\n await (0, _writer.writeObject)(parentKidsRef, parentKids, buffer, xref);\n newRefs.push({\n ref: parentKidsRef,\n data: buffer.join(\"\")\n });\n if (!saveParentDict) {\n return;\n }\n buffer.length = 0;\n await (0, _writer.writeObject)(parentRef, parentDict, buffer, xref);\n newRefs.push({\n ref: parentRef,\n data: buffer.join(\"\")\n });\n }\n}\nexports.StructTreeRoot = StructTreeRoot;\nclass StructElementNode {\n constructor(tree, dict) {\n this.tree = tree;\n this.dict = dict;\n this.kids = [];\n this.parseKids();\n }\n get role() {\n const nameObj = this.dict.get(\"S\");\n const name = nameObj instanceof _primitives.Name ? nameObj.name : \"\";\n const {\n root\n } = this.tree;\n if (root.roleMap.has(name)) {\n return root.roleMap.get(name);\n }\n return name;\n }\n parseKids() {\n let pageObjId = null;\n const objRef = this.dict.getRaw(\"Pg\");\n if (objRef instanceof _primitives.Ref) {\n pageObjId = objRef.toString();\n }\n const kids = this.dict.get(\"K\");\n if (Array.isArray(kids)) {\n for (const kid of kids) {\n const element = this.parseKid(pageObjId, kid);\n if (element) {\n this.kids.push(element);\n }\n }\n } else {\n const element = this.parseKid(pageObjId, kids);\n if (element) {\n this.kids.push(element);\n }\n }\n }\n parseKid(pageObjId, kid) {\n if (Number.isInteger(kid)) {\n if (this.tree.pageDict.objId !== pageObjId) {\n return null;\n }\n return new StructElement({\n type: StructElementType.PAGE_CONTENT,\n mcid: kid,\n pageObjId\n });\n }\n let kidDict = null;\n if (kid instanceof _primitives.Ref) {\n kidDict = this.dict.xref.fetch(kid);\n } else if (kid instanceof _primitives.Dict) {\n kidDict = kid;\n }\n if (!kidDict) {\n return null;\n }\n const pageRef = kidDict.getRaw(\"Pg\");\n if (pageRef instanceof _primitives.Ref) {\n pageObjId = pageRef.toString();\n }\n const type = kidDict.get(\"Type\") instanceof _primitives.Name ? kidDict.get(\"Type\").name : null;\n if (type === \"MCR\") {\n if (this.tree.pageDict.objId !== pageObjId) {\n return null;\n }\n const kidRef = kidDict.getRaw(\"Stm\");\n return new StructElement({\n type: StructElementType.STREAM_CONTENT,\n refObjId: kidRef instanceof _primitives.Ref ? kidRef.toString() : null,\n pageObjId,\n mcid: kidDict.get(\"MCID\")\n });\n }\n if (type === \"OBJR\") {\n if (this.tree.pageDict.objId !== pageObjId) {\n return null;\n }\n const kidRef = kidDict.getRaw(\"Obj\");\n return new StructElement({\n type: StructElementType.OBJECT,\n refObjId: kidRef instanceof _primitives.Ref ? kidRef.toString() : null,\n pageObjId\n });\n }\n return new StructElement({\n type: StructElementType.ELEMENT,\n dict: kidDict\n });\n }\n}\nclass StructElement {\n constructor({\n type,\n dict = null,\n mcid = null,\n pageObjId = null,\n refObjId = null\n }) {\n this.type = type;\n this.dict = dict;\n this.mcid = mcid;\n this.pageObjId = pageObjId;\n this.refObjId = refObjId;\n this.parentNode = null;\n }\n}\nclass StructTreePage {\n constructor(structTreeRoot, pageDict) {\n this.root = structTreeRoot;\n this.rootDict = structTreeRoot ? structTreeRoot.dict : null;\n this.pageDict = pageDict;\n this.nodes = [];\n }\n parse(pageRef) {\n if (!this.root || !this.rootDict) {\n return;\n }\n const parentTree = this.rootDict.get(\"ParentTree\");\n if (!parentTree) {\n return;\n }\n const id = this.pageDict.get(\"StructParents\");\n const ids = pageRef instanceof _primitives.Ref && this.root.structParentIds?.get(pageRef);\n if (!Number.isInteger(id) && !ids) {\n return;\n }\n const map = new Map();\n const numberTree = new _name_number_tree.NumberTree(parentTree, this.rootDict.xref);\n if (Number.isInteger(id)) {\n const parentArray = numberTree.get(id);\n if (Array.isArray(parentArray)) {\n for (const ref of parentArray) {\n if (ref instanceof _primitives.Ref) {\n this.addNode(this.rootDict.xref.fetch(ref), map);\n }\n }\n }\n }\n if (!ids) {\n return;\n }\n for (const [elemId, type] of ids) {\n const obj = numberTree.get(elemId);\n if (obj) {\n const elem = this.addNode(this.rootDict.xref.fetchIfRef(obj), map);\n if (elem?.kids?.length === 1 && elem.kids[0].type === StructElementType.OBJECT) {\n elem.kids[0].type = type;\n }\n }\n }\n }\n addNode(dict, map, level = 0) {\n if (level > MAX_DEPTH) {\n (0, _util.warn)(\"StructTree MAX_DEPTH reached.\");\n return null;\n }\n if (map.has(dict)) {\n return map.get(dict);\n }\n const element = new StructElementNode(this, dict);\n map.set(dict, element);\n const parent = dict.get(\"P\");\n if (!parent || (0, _primitives.isName)(parent.get(\"Type\"), \"StructTreeRoot\")) {\n if (!this.addTopLevelNode(dict, element)) {\n map.delete(dict);\n }\n return element;\n }\n const parentNode = this.addNode(parent, map, level + 1);\n if (!parentNode) {\n return element;\n }\n let save = false;\n for (const kid of parentNode.kids) {\n if (kid.type === StructElementType.ELEMENT && kid.dict === dict) {\n kid.parentNode = element;\n save = true;\n }\n }\n if (!save) {\n map.delete(dict);\n }\n return element;\n }\n addTopLevelNode(dict, element) {\n const obj = this.rootDict.get(\"K\");\n if (!obj) {\n return false;\n }\n if (obj instanceof _primitives.Dict) {\n if (obj.objId !== dict.objId) {\n return false;\n }\n this.nodes[0] = element;\n return true;\n }\n if (!Array.isArray(obj)) {\n return true;\n }\n let save = false;\n for (let i = 0; i < obj.length; i++) {\n const kidRef = obj[i];\n if (kidRef?.toString() === dict.objId) {\n this.nodes[i] = element;\n save = true;\n }\n }\n return save;\n }\n get serializable() {\n function nodeToSerializable(node, parent, level = 0) {\n if (level > MAX_DEPTH) {\n (0, _util.warn)(\"StructTree too deep to be fully serialized.\");\n return;\n }\n const obj = Object.create(null);\n obj.role = node.role;\n obj.children = [];\n parent.children.push(obj);\n const alt = node.dict.get(\"Alt\");\n if (typeof alt === \"string\") {\n obj.alt = (0, _util.stringToPDFString)(alt);\n }\n const lang = node.dict.get(\"Lang\");\n if (typeof lang === \"string\") {\n obj.lang = (0, _util.stringToPDFString)(lang);\n }\n for (const kid of node.kids) {\n const kidElement = kid.type === StructElementType.ELEMENT ? kid.parentNode : null;\n if (kidElement) {\n nodeToSerializable(kidElement, obj, level + 1);\n continue;\n } else if (kid.type === StructElementType.PAGE_CONTENT || kid.type === StructElementType.STREAM_CONTENT) {\n obj.children.push({\n type: \"content\",\n id: `p${kid.pageObjId}_mc${kid.mcid}`\n });\n } else if (kid.type === StructElementType.OBJECT) {\n obj.children.push({\n type: \"object\",\n id: kid.refObjId\n });\n } else if (kid.type === StructElementType.ANNOTATION) {\n obj.children.push({\n type: \"annotation\",\n id: `${_util.AnnotationPrefix}${kid.refObjId}`\n });\n }\n }\n }\n const root = Object.create(null);\n root.children = [];\n root.role = \"Root\";\n for (const child of this.nodes) {\n if (!child) {\n continue;\n }\n nodeToSerializable(child, root);\n }\n return root;\n }\n}\nexports.StructTreePage = StructTreePage;\n\n/***/ }),\n/* 73 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.incrementalUpdate = incrementalUpdate;\nexports.writeDict = writeDict;\nexports.writeObject = writeObject;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _xml_parser = __w_pdfjs_require__(71);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _crypto = __w_pdfjs_require__(74);\nasync function writeObject(ref, obj, buffer, {\n encrypt = null\n}) {\n const transform = encrypt?.createCipherTransform(ref.num, ref.gen);\n buffer.push(`${ref.num} ${ref.gen} obj\\n`);\n if (obj instanceof _primitives.Dict) {\n await writeDict(obj, buffer, transform);\n } else if (obj instanceof _base_stream.BaseStream) {\n await writeStream(obj, buffer, transform);\n } else if (Array.isArray(obj)) {\n await writeArray(obj, buffer, transform);\n }\n buffer.push(\"\\nendobj\\n\");\n}\nasync function writeDict(dict, buffer, transform) {\n buffer.push(\"<<\");\n for (const key of dict.getKeys()) {\n buffer.push(` /${(0, _core_utils.escapePDFName)(key)} `);\n await writeValue(dict.getRaw(key), buffer, transform);\n }\n buffer.push(\">>\");\n}\nasync function writeStream(stream, buffer, transform) {\n let string = stream.getString();\n const {\n dict\n } = stream;\n const [filter, params] = await Promise.all([dict.getAsync(\"Filter\"), dict.getAsync(\"DecodeParms\")]);\n const filterZero = Array.isArray(filter) ? await dict.xref.fetchIfRefAsync(filter[0]) : filter;\n const isFilterZeroFlateDecode = (0, _primitives.isName)(filterZero, \"FlateDecode\");\n const MIN_LENGTH_FOR_COMPRESSING = 256;\n if (typeof CompressionStream !== \"undefined\" && (string.length >= MIN_LENGTH_FOR_COMPRESSING || isFilterZeroFlateDecode)) {\n try {\n const byteArray = (0, _util.stringToBytes)(string);\n const cs = new CompressionStream(\"deflate\");\n const writer = cs.writable.getWriter();\n writer.write(byteArray);\n writer.close();\n const buf = await new Response(cs.readable).arrayBuffer();\n string = (0, _util.bytesToString)(new Uint8Array(buf));\n let newFilter, newParams;\n if (!filter) {\n newFilter = _primitives.Name.get(\"FlateDecode\");\n } else if (!isFilterZeroFlateDecode) {\n newFilter = Array.isArray(filter) ? [_primitives.Name.get(\"FlateDecode\"), ...filter] : [_primitives.Name.get(\"FlateDecode\"), filter];\n if (params) {\n newParams = Array.isArray(params) ? [null, ...params] : [null, params];\n }\n }\n if (newFilter) {\n dict.set(\"Filter\", newFilter);\n }\n if (newParams) {\n dict.set(\"DecodeParms\", newParams);\n }\n } catch (ex) {\n (0, _util.info)(`writeStream - cannot compress data: \"${ex}\".`);\n }\n }\n if (transform) {\n string = transform.encryptString(string);\n }\n dict.set(\"Length\", string.length);\n await writeDict(dict, buffer, transform);\n buffer.push(\" stream\\n\", string, \"\\nendstream\");\n}\nasync function writeArray(array, buffer, transform) {\n buffer.push(\"[\");\n let first = true;\n for (const val of array) {\n if (!first) {\n buffer.push(\" \");\n } else {\n first = false;\n }\n await writeValue(val, buffer, transform);\n }\n buffer.push(\"]\");\n}\nasync function writeValue(value, buffer, transform) {\n if (value instanceof _primitives.Name) {\n buffer.push(`/${(0, _core_utils.escapePDFName)(value.name)}`);\n } else if (value instanceof _primitives.Ref) {\n buffer.push(`${value.num} ${value.gen} R`);\n } else if (Array.isArray(value)) {\n await writeArray(value, buffer, transform);\n } else if (typeof value === \"string\") {\n if (transform) {\n value = transform.encryptString(value);\n }\n buffer.push(`(${(0, _core_utils.escapeString)(value)})`);\n } else if (typeof value === \"number\") {\n buffer.push((0, _core_utils.numberToString)(value));\n } else if (typeof value === \"boolean\") {\n buffer.push(value.toString());\n } else if (value instanceof _primitives.Dict) {\n await writeDict(value, buffer, transform);\n } else if (value instanceof _base_stream.BaseStream) {\n await writeStream(value, buffer, transform);\n } else if (value === null) {\n buffer.push(\"null\");\n } else {\n (0, _util.warn)(`Unhandled value in writer: ${typeof value}, please file a bug.`);\n }\n}\nfunction writeInt(number, size, offset, buffer) {\n for (let i = size + offset - 1; i > offset - 1; i--) {\n buffer[i] = number & 0xff;\n number >>= 8;\n }\n return offset + size;\n}\nfunction writeString(string, offset, buffer) {\n for (let i = 0, len = string.length; i < len; i++) {\n buffer[offset + i] = string.charCodeAt(i) & 0xff;\n }\n}\nfunction computeMD5(filesize, xrefInfo) {\n const time = Math.floor(Date.now() / 1000);\n const filename = xrefInfo.filename || \"\";\n const md5Buffer = [time.toString(), filename, filesize.toString()];\n let md5BufferLen = md5Buffer.reduce((a, str) => a + str.length, 0);\n for (const value of Object.values(xrefInfo.info)) {\n md5Buffer.push(value);\n md5BufferLen += value.length;\n }\n const array = new Uint8Array(md5BufferLen);\n let offset = 0;\n for (const str of md5Buffer) {\n writeString(str, offset, array);\n offset += str.length;\n }\n return (0, _util.bytesToString)((0, _crypto.calculateMD5)(array));\n}\nfunction writeXFADataForAcroform(str, newRefs) {\n const xml = new _xml_parser.SimpleXMLParser({\n hasAttributes: true\n }).parseFromString(str);\n for (const {\n xfa\n } of newRefs) {\n if (!xfa) {\n continue;\n }\n const {\n path,\n value\n } = xfa;\n if (!path) {\n continue;\n }\n const nodePath = (0, _core_utils.parseXFAPath)(path);\n let node = xml.documentElement.searchNode(nodePath, 0);\n if (!node && nodePath.length > 1) {\n node = xml.documentElement.searchNode([nodePath.at(-1)], 0);\n }\n if (node) {\n node.childNodes = Array.isArray(value) ? value.map(val => new _xml_parser.SimpleDOMNode(\"value\", val)) : [new _xml_parser.SimpleDOMNode(\"#text\", value)];\n } else {\n (0, _util.warn)(`Node not found for path: ${path}`);\n }\n }\n const buffer = [];\n xml.documentElement.dump(buffer);\n return buffer.join(\"\");\n}\nasync function updateAcroform({\n xref,\n acroForm,\n acroFormRef,\n hasXfa,\n hasXfaDatasetsEntry,\n xfaDatasetsRef,\n needAppearances,\n newRefs\n}) {\n if (hasXfa && !hasXfaDatasetsEntry && !xfaDatasetsRef) {\n (0, _util.warn)(\"XFA - Cannot save it\");\n }\n if (!needAppearances && (!hasXfa || !xfaDatasetsRef || hasXfaDatasetsEntry)) {\n return;\n }\n const dict = acroForm.clone();\n if (hasXfa && !hasXfaDatasetsEntry) {\n const newXfa = acroForm.get(\"XFA\").slice();\n newXfa.splice(2, 0, \"datasets\");\n newXfa.splice(3, 0, xfaDatasetsRef);\n dict.set(\"XFA\", newXfa);\n }\n if (needAppearances) {\n dict.set(\"NeedAppearances\", true);\n }\n const buffer = [];\n await writeObject(acroFormRef, dict, buffer, xref);\n newRefs.push({\n ref: acroFormRef,\n data: buffer.join(\"\")\n });\n}\nfunction updateXFA({\n xfaData,\n xfaDatasetsRef,\n newRefs,\n xref\n}) {\n if (xfaData === null) {\n const datasets = xref.fetchIfRef(xfaDatasetsRef);\n xfaData = writeXFADataForAcroform(datasets.getString(), newRefs);\n }\n const encrypt = xref.encrypt;\n if (encrypt) {\n const transform = encrypt.createCipherTransform(xfaDatasetsRef.num, xfaDatasetsRef.gen);\n xfaData = transform.encryptString(xfaData);\n }\n const data = `${xfaDatasetsRef.num} ${xfaDatasetsRef.gen} obj\\n` + `<< /Type /EmbeddedFile /Length ${xfaData.length}>>\\nstream\\n` + xfaData + \"\\nendstream\\nendobj\\n\";\n newRefs.push({\n ref: xfaDatasetsRef,\n data\n });\n}\nasync function incrementalUpdate({\n originalData,\n xrefInfo,\n newRefs,\n xref = null,\n hasXfa = false,\n xfaDatasetsRef = null,\n hasXfaDatasetsEntry = false,\n needAppearances,\n acroFormRef = null,\n acroForm = null,\n xfaData = null\n}) {\n await updateAcroform({\n xref,\n acroForm,\n acroFormRef,\n hasXfa,\n hasXfaDatasetsEntry,\n xfaDatasetsRef,\n needAppearances,\n newRefs\n });\n if (hasXfa) {\n updateXFA({\n xfaData,\n xfaDatasetsRef,\n newRefs,\n xref\n });\n }\n const newXref = new _primitives.Dict(null);\n const refForXrefTable = xrefInfo.newRef;\n let buffer, baseOffset;\n const lastByte = originalData.at(-1);\n if (lastByte === 0x0a || lastByte === 0x0d) {\n buffer = [];\n baseOffset = originalData.length;\n } else {\n buffer = [\"\\n\"];\n baseOffset = originalData.length + 1;\n }\n newXref.set(\"Size\", refForXrefTable.num + 1);\n newXref.set(\"Prev\", xrefInfo.startXRef);\n newXref.set(\"Type\", _primitives.Name.get(\"XRef\"));\n if (xrefInfo.rootRef !== null) {\n newXref.set(\"Root\", xrefInfo.rootRef);\n }\n if (xrefInfo.infoRef !== null) {\n newXref.set(\"Info\", xrefInfo.infoRef);\n }\n if (xrefInfo.encryptRef !== null) {\n newXref.set(\"Encrypt\", xrefInfo.encryptRef);\n }\n newRefs.push({\n ref: refForXrefTable,\n data: \"\"\n });\n newRefs = newRefs.sort((a, b) => {\n return a.ref.num - b.ref.num;\n });\n const xrefTableData = [[0, 1, 0xffff]];\n const indexes = [0, 1];\n let maxOffset = 0;\n for (const {\n ref,\n data\n } of newRefs) {\n maxOffset = Math.max(maxOffset, baseOffset);\n xrefTableData.push([1, baseOffset, Math.min(ref.gen, 0xffff)]);\n baseOffset += data.length;\n indexes.push(ref.num, 1);\n buffer.push(data);\n }\n newXref.set(\"Index\", indexes);\n if (Array.isArray(xrefInfo.fileIds) && xrefInfo.fileIds.length > 0) {\n const md5 = computeMD5(baseOffset, xrefInfo);\n newXref.set(\"ID\", [xrefInfo.fileIds[0], md5]);\n }\n const offsetSize = Math.ceil(Math.log2(maxOffset) / 8);\n const sizes = [1, offsetSize, 2];\n const structSize = sizes[0] + sizes[1] + sizes[2];\n const tableLength = structSize * xrefTableData.length;\n newXref.set(\"W\", sizes);\n newXref.set(\"Length\", tableLength);\n buffer.push(`${refForXrefTable.num} ${refForXrefTable.gen} obj\\n`);\n await writeDict(newXref, buffer, null);\n buffer.push(\" stream\\n\");\n const bufferLen = buffer.reduce((a, str) => a + str.length, 0);\n const footer = `\\nendstream\\nendobj\\nstartxref\\n${baseOffset}\\n%%EOF\\n`;\n const array = new Uint8Array(originalData.length + bufferLen + tableLength + footer.length);\n array.set(originalData);\n let offset = originalData.length;\n for (const str of buffer) {\n writeString(str, offset, array);\n offset += str.length;\n }\n for (const [type, objOffset, gen] of xrefTableData) {\n offset = writeInt(type, sizes[0], offset, array);\n offset = writeInt(objOffset, sizes[1], offset, array);\n offset = writeInt(gen, sizes[2], offset, array);\n }\n writeString(footer, offset, array);\n return array;\n}\n\n/***/ }),\n/* 74 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.calculateSHA256 = exports.calculateMD5 = exports.PDF20 = exports.PDF17 = exports.CipherTransformFactory = exports.ARCFourCipher = exports.AES256Cipher = exports.AES128Cipher = void 0;\nexports.calculateSHA384 = calculateSHA384;\nexports.calculateSHA512 = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _decrypt_stream = __w_pdfjs_require__(75);\nclass ARCFourCipher {\n constructor(key) {\n this.a = 0;\n this.b = 0;\n const s = new Uint8Array(256);\n const keyLength = key.length;\n for (let i = 0; i < 256; ++i) {\n s[i] = i;\n }\n for (let i = 0, j = 0; i < 256; ++i) {\n const tmp = s[i];\n j = j + tmp + key[i % keyLength] & 0xff;\n s[i] = s[j];\n s[j] = tmp;\n }\n this.s = s;\n }\n encryptBlock(data) {\n let a = this.a,\n b = this.b;\n const s = this.s;\n const n = data.length;\n const output = new Uint8Array(n);\n for (let i = 0; i < n; ++i) {\n a = a + 1 & 0xff;\n const tmp = s[a];\n b = b + tmp & 0xff;\n const tmp2 = s[b];\n s[a] = tmp2;\n s[b] = tmp;\n output[i] = data[i] ^ s[tmp + tmp2 & 0xff];\n }\n this.a = a;\n this.b = b;\n return output;\n }\n decryptBlock(data) {\n return this.encryptBlock(data);\n }\n encrypt(data) {\n return this.encryptBlock(data);\n }\n}\nexports.ARCFourCipher = ARCFourCipher;\nconst calculateMD5 = function calculateMD5Closure() {\n const r = new Uint8Array([7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22, 5, 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21]);\n const k = new Int32Array([-680876936, -389564586, 606105819, -1044525330, -176418897, 1200080426, -1473231341, -45705983, 1770035416, -1958414417, -42063, -1990404162, 1804603682, -40341101, -1502002290, 1236535329, -165796510, -1069501632, 643717713, -373897302, -701558691, 38016083, -660478335, -405537848, 568446438, -1019803690, -187363961, 1163531501, -1444681467, -51403784, 1735328473, -1926607734, -378558, -2022574463, 1839030562, -35309556, -1530992060, 1272893353, -155497632, -1094730640, 681279174, -358537222, -722521979, 76029189, -640364487, -421815835, 530742520, -995338651, -198630844, 1126891415, -1416354905, -57434055, 1700485571, -1894986606, -1051523, -2054922799, 1873313359, -30611744, -1560198380, 1309151649, -145523070, -1120210379, 718787259, -343485551]);\n function hash(data, offset, length) {\n let h0 = 1732584193,\n h1 = -271733879,\n h2 = -1732584194,\n h3 = 271733878;\n const paddedLength = length + 72 & ~63;\n const padded = new Uint8Array(paddedLength);\n let i, j;\n for (i = 0; i < length; ++i) {\n padded[i] = data[offset++];\n }\n padded[i++] = 0x80;\n const n = paddedLength - 8;\n while (i < n) {\n padded[i++] = 0;\n }\n padded[i++] = length << 3 & 0xff;\n padded[i++] = length >> 5 & 0xff;\n padded[i++] = length >> 13 & 0xff;\n padded[i++] = length >> 21 & 0xff;\n padded[i++] = length >>> 29 & 0xff;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n const w = new Int32Array(16);\n for (i = 0; i < paddedLength;) {\n for (j = 0; j < 16; ++j, i += 4) {\n w[j] = padded[i] | padded[i + 1] << 8 | padded[i + 2] << 16 | padded[i + 3] << 24;\n }\n let a = h0,\n b = h1,\n c = h2,\n d = h3,\n f,\n g;\n for (j = 0; j < 64; ++j) {\n if (j < 16) {\n f = b & c | ~b & d;\n g = j;\n } else if (j < 32) {\n f = d & b | ~d & c;\n g = 5 * j + 1 & 15;\n } else if (j < 48) {\n f = b ^ c ^ d;\n g = 3 * j + 5 & 15;\n } else {\n f = c ^ (b | ~d);\n g = 7 * j & 15;\n }\n const tmp = d,\n rotateArg = a + f + k[j] + w[g] | 0,\n rotate = r[j];\n d = c;\n c = b;\n b = b + (rotateArg << rotate | rotateArg >>> 32 - rotate) | 0;\n a = tmp;\n }\n h0 = h0 + a | 0;\n h1 = h1 + b | 0;\n h2 = h2 + c | 0;\n h3 = h3 + d | 0;\n }\n return new Uint8Array([h0 & 0xFF, h0 >> 8 & 0xFF, h0 >> 16 & 0xFF, h0 >>> 24 & 0xFF, h1 & 0xFF, h1 >> 8 & 0xFF, h1 >> 16 & 0xFF, h1 >>> 24 & 0xFF, h2 & 0xFF, h2 >> 8 & 0xFF, h2 >> 16 & 0xFF, h2 >>> 24 & 0xFF, h3 & 0xFF, h3 >> 8 & 0xFF, h3 >> 16 & 0xFF, h3 >>> 24 & 0xFF]);\n }\n return hash;\n}();\nexports.calculateMD5 = calculateMD5;\nclass Word64 {\n constructor(highInteger, lowInteger) {\n this.high = highInteger | 0;\n this.low = lowInteger | 0;\n }\n and(word) {\n this.high &= word.high;\n this.low &= word.low;\n }\n xor(word) {\n this.high ^= word.high;\n this.low ^= word.low;\n }\n or(word) {\n this.high |= word.high;\n this.low |= word.low;\n }\n shiftRight(places) {\n if (places >= 32) {\n this.low = this.high >>> places - 32 | 0;\n this.high = 0;\n } else {\n this.low = this.low >>> places | this.high << 32 - places;\n this.high = this.high >>> places | 0;\n }\n }\n shiftLeft(places) {\n if (places >= 32) {\n this.high = this.low << places - 32;\n this.low = 0;\n } else {\n this.high = this.high << places | this.low >>> 32 - places;\n this.low <<= places;\n }\n }\n rotateRight(places) {\n let low, high;\n if (places & 32) {\n high = this.low;\n low = this.high;\n } else {\n low = this.low;\n high = this.high;\n }\n places &= 31;\n this.low = low >>> places | high << 32 - places;\n this.high = high >>> places | low << 32 - places;\n }\n not() {\n this.high = ~this.high;\n this.low = ~this.low;\n }\n add(word) {\n const lowAdd = (this.low >>> 0) + (word.low >>> 0);\n let highAdd = (this.high >>> 0) + (word.high >>> 0);\n if (lowAdd > 0xffffffff) {\n highAdd += 1;\n }\n this.low = lowAdd | 0;\n this.high = highAdd | 0;\n }\n copyTo(bytes, offset) {\n bytes[offset] = this.high >>> 24 & 0xff;\n bytes[offset + 1] = this.high >> 16 & 0xff;\n bytes[offset + 2] = this.high >> 8 & 0xff;\n bytes[offset + 3] = this.high & 0xff;\n bytes[offset + 4] = this.low >>> 24 & 0xff;\n bytes[offset + 5] = this.low >> 16 & 0xff;\n bytes[offset + 6] = this.low >> 8 & 0xff;\n bytes[offset + 7] = this.low & 0xff;\n }\n assign(word) {\n this.high = word.high;\n this.low = word.low;\n }\n}\nconst calculateSHA256 = function calculateSHA256Closure() {\n function rotr(x, n) {\n return x >>> n | x << 32 - n;\n }\n function ch(x, y, z) {\n return x & y ^ ~x & z;\n }\n function maj(x, y, z) {\n return x & y ^ x & z ^ y & z;\n }\n function sigma(x) {\n return rotr(x, 2) ^ rotr(x, 13) ^ rotr(x, 22);\n }\n function sigmaPrime(x) {\n return rotr(x, 6) ^ rotr(x, 11) ^ rotr(x, 25);\n }\n function littleSigma(x) {\n return rotr(x, 7) ^ rotr(x, 18) ^ x >>> 3;\n }\n function littleSigmaPrime(x) {\n return rotr(x, 17) ^ rotr(x, 19) ^ x >>> 10;\n }\n const k = [0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2];\n function hash(data, offset, length) {\n let h0 = 0x6a09e667,\n h1 = 0xbb67ae85,\n h2 = 0x3c6ef372,\n h3 = 0xa54ff53a,\n h4 = 0x510e527f,\n h5 = 0x9b05688c,\n h6 = 0x1f83d9ab,\n h7 = 0x5be0cd19;\n const paddedLength = Math.ceil((length + 9) / 64) * 64;\n const padded = new Uint8Array(paddedLength);\n let i, j;\n for (i = 0; i < length; ++i) {\n padded[i] = data[offset++];\n }\n padded[i++] = 0x80;\n const n = paddedLength - 8;\n while (i < n) {\n padded[i++] = 0;\n }\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = length >>> 29 & 0xff;\n padded[i++] = length >> 21 & 0xff;\n padded[i++] = length >> 13 & 0xff;\n padded[i++] = length >> 5 & 0xff;\n padded[i++] = length << 3 & 0xff;\n const w = new Uint32Array(64);\n for (i = 0; i < paddedLength;) {\n for (j = 0; j < 16; ++j) {\n w[j] = padded[i] << 24 | padded[i + 1] << 16 | padded[i + 2] << 8 | padded[i + 3];\n i += 4;\n }\n for (j = 16; j < 64; ++j) {\n w[j] = littleSigmaPrime(w[j - 2]) + w[j - 7] + littleSigma(w[j - 15]) + w[j - 16] | 0;\n }\n let a = h0,\n b = h1,\n c = h2,\n d = h3,\n e = h4,\n f = h5,\n g = h6,\n h = h7,\n t1,\n t2;\n for (j = 0; j < 64; ++j) {\n t1 = h + sigmaPrime(e) + ch(e, f, g) + k[j] + w[j];\n t2 = sigma(a) + maj(a, b, c);\n h = g;\n g = f;\n f = e;\n e = d + t1 | 0;\n d = c;\n c = b;\n b = a;\n a = t1 + t2 | 0;\n }\n h0 = h0 + a | 0;\n h1 = h1 + b | 0;\n h2 = h2 + c | 0;\n h3 = h3 + d | 0;\n h4 = h4 + e | 0;\n h5 = h5 + f | 0;\n h6 = h6 + g | 0;\n h7 = h7 + h | 0;\n }\n return new Uint8Array([h0 >> 24 & 0xFF, h0 >> 16 & 0xFF, h0 >> 8 & 0xFF, h0 & 0xFF, h1 >> 24 & 0xFF, h1 >> 16 & 0xFF, h1 >> 8 & 0xFF, h1 & 0xFF, h2 >> 24 & 0xFF, h2 >> 16 & 0xFF, h2 >> 8 & 0xFF, h2 & 0xFF, h3 >> 24 & 0xFF, h3 >> 16 & 0xFF, h3 >> 8 & 0xFF, h3 & 0xFF, h4 >> 24 & 0xFF, h4 >> 16 & 0xFF, h4 >> 8 & 0xFF, h4 & 0xFF, h5 >> 24 & 0xFF, h5 >> 16 & 0xFF, h5 >> 8 & 0xFF, h5 & 0xFF, h6 >> 24 & 0xFF, h6 >> 16 & 0xFF, h6 >> 8 & 0xFF, h6 & 0xFF, h7 >> 24 & 0xFF, h7 >> 16 & 0xFF, h7 >> 8 & 0xFF, h7 & 0xFF]);\n }\n return hash;\n}();\nexports.calculateSHA256 = calculateSHA256;\nconst calculateSHA512 = function calculateSHA512Closure() {\n function ch(result, x, y, z, tmp) {\n result.assign(x);\n result.and(y);\n tmp.assign(x);\n tmp.not();\n tmp.and(z);\n result.xor(tmp);\n }\n function maj(result, x, y, z, tmp) {\n result.assign(x);\n result.and(y);\n tmp.assign(x);\n tmp.and(z);\n result.xor(tmp);\n tmp.assign(y);\n tmp.and(z);\n result.xor(tmp);\n }\n function sigma(result, x, tmp) {\n result.assign(x);\n result.rotateRight(28);\n tmp.assign(x);\n tmp.rotateRight(34);\n result.xor(tmp);\n tmp.assign(x);\n tmp.rotateRight(39);\n result.xor(tmp);\n }\n function sigmaPrime(result, x, tmp) {\n result.assign(x);\n result.rotateRight(14);\n tmp.assign(x);\n tmp.rotateRight(18);\n result.xor(tmp);\n tmp.assign(x);\n tmp.rotateRight(41);\n result.xor(tmp);\n }\n function littleSigma(result, x, tmp) {\n result.assign(x);\n result.rotateRight(1);\n tmp.assign(x);\n tmp.rotateRight(8);\n result.xor(tmp);\n tmp.assign(x);\n tmp.shiftRight(7);\n result.xor(tmp);\n }\n function littleSigmaPrime(result, x, tmp) {\n result.assign(x);\n result.rotateRight(19);\n tmp.assign(x);\n tmp.rotateRight(61);\n result.xor(tmp);\n tmp.assign(x);\n tmp.shiftRight(6);\n result.xor(tmp);\n }\n const k = [new Word64(0x428a2f98, 0xd728ae22), new Word64(0x71374491, 0x23ef65cd), new Word64(0xb5c0fbcf, 0xec4d3b2f), new Word64(0xe9b5dba5, 0x8189dbbc), new Word64(0x3956c25b, 0xf348b538), new Word64(0x59f111f1, 0xb605d019), new Word64(0x923f82a4, 0xaf194f9b), new Word64(0xab1c5ed5, 0xda6d8118), new Word64(0xd807aa98, 0xa3030242), new Word64(0x12835b01, 0x45706fbe), new Word64(0x243185be, 0x4ee4b28c), new Word64(0x550c7dc3, 0xd5ffb4e2), new Word64(0x72be5d74, 0xf27b896f), new Word64(0x80deb1fe, 0x3b1696b1), new Word64(0x9bdc06a7, 0x25c71235), new Word64(0xc19bf174, 0xcf692694), new Word64(0xe49b69c1, 0x9ef14ad2), new Word64(0xefbe4786, 0x384f25e3), new Word64(0x0fc19dc6, 0x8b8cd5b5), new Word64(0x240ca1cc, 0x77ac9c65), new Word64(0x2de92c6f, 0x592b0275), new Word64(0x4a7484aa, 0x6ea6e483), new Word64(0x5cb0a9dc, 0xbd41fbd4), new Word64(0x76f988da, 0x831153b5), new Word64(0x983e5152, 0xee66dfab), new Word64(0xa831c66d, 0x2db43210), new Word64(0xb00327c8, 0x98fb213f), new Word64(0xbf597fc7, 0xbeef0ee4), new Word64(0xc6e00bf3, 0x3da88fc2), new Word64(0xd5a79147, 0x930aa725), new Word64(0x06ca6351, 0xe003826f), new Word64(0x14292967, 0x0a0e6e70), new Word64(0x27b70a85, 0x46d22ffc), new Word64(0x2e1b2138, 0x5c26c926), new Word64(0x4d2c6dfc, 0x5ac42aed), new Word64(0x53380d13, 0x9d95b3df), new Word64(0x650a7354, 0x8baf63de), new Word64(0x766a0abb, 0x3c77b2a8), new Word64(0x81c2c92e, 0x47edaee6), new Word64(0x92722c85, 0x1482353b), new Word64(0xa2bfe8a1, 0x4cf10364), new Word64(0xa81a664b, 0xbc423001), new Word64(0xc24b8b70, 0xd0f89791), new Word64(0xc76c51a3, 0x0654be30), new Word64(0xd192e819, 0xd6ef5218), new Word64(0xd6990624, 0x5565a910), new Word64(0xf40e3585, 0x5771202a), new Word64(0x106aa070, 0x32bbd1b8), new Word64(0x19a4c116, 0xb8d2d0c8), new Word64(0x1e376c08, 0x5141ab53), new Word64(0x2748774c, 0xdf8eeb99), new Word64(0x34b0bcb5, 0xe19b48a8), new Word64(0x391c0cb3, 0xc5c95a63), new Word64(0x4ed8aa4a, 0xe3418acb), new Word64(0x5b9cca4f, 0x7763e373), new Word64(0x682e6ff3, 0xd6b2b8a3), new Word64(0x748f82ee, 0x5defb2fc), new Word64(0x78a5636f, 0x43172f60), new Word64(0x84c87814, 0xa1f0ab72), new Word64(0x8cc70208, 0x1a6439ec), new Word64(0x90befffa, 0x23631e28), new Word64(0xa4506ceb, 0xde82bde9), new Word64(0xbef9a3f7, 0xb2c67915), new Word64(0xc67178f2, 0xe372532b), new Word64(0xca273ece, 0xea26619c), new Word64(0xd186b8c7, 0x21c0c207), new Word64(0xeada7dd6, 0xcde0eb1e), new Word64(0xf57d4f7f, 0xee6ed178), new Word64(0x06f067aa, 0x72176fba), new Word64(0x0a637dc5, 0xa2c898a6), new Word64(0x113f9804, 0xbef90dae), new Word64(0x1b710b35, 0x131c471b), new Word64(0x28db77f5, 0x23047d84), new Word64(0x32caab7b, 0x40c72493), new Word64(0x3c9ebe0a, 0x15c9bebc), new Word64(0x431d67c4, 0x9c100d4c), new Word64(0x4cc5d4be, 0xcb3e42b6), new Word64(0x597f299c, 0xfc657e2a), new Word64(0x5fcb6fab, 0x3ad6faec), new Word64(0x6c44198c, 0x4a475817)];\n function hash(data, offset, length, mode384 = false) {\n let h0, h1, h2, h3, h4, h5, h6, h7;\n if (!mode384) {\n h0 = new Word64(0x6a09e667, 0xf3bcc908);\n h1 = new Word64(0xbb67ae85, 0x84caa73b);\n h2 = new Word64(0x3c6ef372, 0xfe94f82b);\n h3 = new Word64(0xa54ff53a, 0x5f1d36f1);\n h4 = new Word64(0x510e527f, 0xade682d1);\n h5 = new Word64(0x9b05688c, 0x2b3e6c1f);\n h6 = new Word64(0x1f83d9ab, 0xfb41bd6b);\n h7 = new Word64(0x5be0cd19, 0x137e2179);\n } else {\n h0 = new Word64(0xcbbb9d5d, 0xc1059ed8);\n h1 = new Word64(0x629a292a, 0x367cd507);\n h2 = new Word64(0x9159015a, 0x3070dd17);\n h3 = new Word64(0x152fecd8, 0xf70e5939);\n h4 = new Word64(0x67332667, 0xffc00b31);\n h5 = new Word64(0x8eb44a87, 0x68581511);\n h6 = new Word64(0xdb0c2e0d, 0x64f98fa7);\n h7 = new Word64(0x47b5481d, 0xbefa4fa4);\n }\n const paddedLength = Math.ceil((length + 17) / 128) * 128;\n const padded = new Uint8Array(paddedLength);\n let i, j;\n for (i = 0; i < length; ++i) {\n padded[i] = data[offset++];\n }\n padded[i++] = 0x80;\n const n = paddedLength - 16;\n while (i < n) {\n padded[i++] = 0;\n }\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = 0;\n padded[i++] = length >>> 29 & 0xff;\n padded[i++] = length >> 21 & 0xff;\n padded[i++] = length >> 13 & 0xff;\n padded[i++] = length >> 5 & 0xff;\n padded[i++] = length << 3 & 0xff;\n const w = new Array(80);\n for (i = 0; i < 80; i++) {\n w[i] = new Word64(0, 0);\n }\n let a = new Word64(0, 0),\n b = new Word64(0, 0),\n c = new Word64(0, 0);\n let d = new Word64(0, 0),\n e = new Word64(0, 0),\n f = new Word64(0, 0);\n let g = new Word64(0, 0),\n h = new Word64(0, 0);\n const t1 = new Word64(0, 0),\n t2 = new Word64(0, 0);\n const tmp1 = new Word64(0, 0),\n tmp2 = new Word64(0, 0);\n let tmp3;\n for (i = 0; i < paddedLength;) {\n for (j = 0; j < 16; ++j) {\n w[j].high = padded[i] << 24 | padded[i + 1] << 16 | padded[i + 2] << 8 | padded[i + 3];\n w[j].low = padded[i + 4] << 24 | padded[i + 5] << 16 | padded[i + 6] << 8 | padded[i + 7];\n i += 8;\n }\n for (j = 16; j < 80; ++j) {\n tmp3 = w[j];\n littleSigmaPrime(tmp3, w[j - 2], tmp2);\n tmp3.add(w[j - 7]);\n littleSigma(tmp1, w[j - 15], tmp2);\n tmp3.add(tmp1);\n tmp3.add(w[j - 16]);\n }\n a.assign(h0);\n b.assign(h1);\n c.assign(h2);\n d.assign(h3);\n e.assign(h4);\n f.assign(h5);\n g.assign(h6);\n h.assign(h7);\n for (j = 0; j < 80; ++j) {\n t1.assign(h);\n sigmaPrime(tmp1, e, tmp2);\n t1.add(tmp1);\n ch(tmp1, e, f, g, tmp2);\n t1.add(tmp1);\n t1.add(k[j]);\n t1.add(w[j]);\n sigma(t2, a, tmp2);\n maj(tmp1, a, b, c, tmp2);\n t2.add(tmp1);\n tmp3 = h;\n h = g;\n g = f;\n f = e;\n d.add(t1);\n e = d;\n d = c;\n c = b;\n b = a;\n tmp3.assign(t1);\n tmp3.add(t2);\n a = tmp3;\n }\n h0.add(a);\n h1.add(b);\n h2.add(c);\n h3.add(d);\n h4.add(e);\n h5.add(f);\n h6.add(g);\n h7.add(h);\n }\n let result;\n if (!mode384) {\n result = new Uint8Array(64);\n h0.copyTo(result, 0);\n h1.copyTo(result, 8);\n h2.copyTo(result, 16);\n h3.copyTo(result, 24);\n h4.copyTo(result, 32);\n h5.copyTo(result, 40);\n h6.copyTo(result, 48);\n h7.copyTo(result, 56);\n } else {\n result = new Uint8Array(48);\n h0.copyTo(result, 0);\n h1.copyTo(result, 8);\n h2.copyTo(result, 16);\n h3.copyTo(result, 24);\n h4.copyTo(result, 32);\n h5.copyTo(result, 40);\n }\n return result;\n }\n return hash;\n}();\nexports.calculateSHA512 = calculateSHA512;\nfunction calculateSHA384(data, offset, length) {\n return calculateSHA512(data, offset, length, true);\n}\nclass NullCipher {\n decryptBlock(data) {\n return data;\n }\n encrypt(data) {\n return data;\n }\n}\nclass AESBaseCipher {\n constructor() {\n if (this.constructor === AESBaseCipher) {\n (0, _util.unreachable)(\"Cannot initialize AESBaseCipher.\");\n }\n this._s = new Uint8Array([0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5, 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76, 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0, 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0, 0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc, 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15, 0x04, 0xc7, 0x23, 0xc3, 0x18, 0x96, 0x05, 0x9a, 0x07, 0x12, 0x80, 0xe2, 0xeb, 0x27, 0xb2, 0x75, 0x09, 0x83, 0x2c, 0x1a, 0x1b, 0x6e, 0x5a, 0xa0, 0x52, 0x3b, 0xd6, 0xb3, 0x29, 0xe3, 0x2f, 0x84, 0x53, 0xd1, 0x00, 0xed, 0x20, 0xfc, 0xb1, 0x5b, 0x6a, 0xcb, 0xbe, 0x39, 0x4a, 0x4c, 0x58, 0xcf, 0xd0, 0xef, 0xaa, 0xfb, 0x43, 0x4d, 0x33, 0x85, 0x45, 0xf9, 0x02, 0x7f, 0x50, 0x3c, 0x9f, 0xa8, 0x51, 0xa3, 0x40, 0x8f, 0x92, 0x9d, 0x38, 0xf5, 0xbc, 0xb6, 0xda, 0x21, 0x10, 0xff, 0xf3, 0xd2, 0xcd, 0x0c, 0x13, 0xec, 0x5f, 0x97, 0x44, 0x17, 0xc4, 0xa7, 0x7e, 0x3d, 0x64, 0x5d, 0x19, 0x73, 0x60, 0x81, 0x4f, 0xdc, 0x22, 0x2a, 0x90, 0x88, 0x46, 0xee, 0xb8, 0x14, 0xde, 0x5e, 0x0b, 0xdb, 0xe0, 0x32, 0x3a, 0x0a, 0x49, 0x06, 0x24, 0x5c, 0xc2, 0xd3, 0xac, 0x62, 0x91, 0x95, 0xe4, 0x79, 0xe7, 0xc8, 0x37, 0x6d, 0x8d, 0xd5, 0x4e, 0xa9, 0x6c, 0x56, 0xf4, 0xea, 0x65, 0x7a, 0xae, 0x08, 0xba, 0x78, 0x25, 0x2e, 0x1c, 0xa6, 0xb4, 0xc6, 0xe8, 0xdd, 0x74, 0x1f, 0x4b, 0xbd, 0x8b, 0x8a, 0x70, 0x3e, 0xb5, 0x66, 0x48, 0x03, 0xf6, 0x0e, 0x61, 0x35, 0x57, 0xb9, 0x86, 0xc1, 0x1d, 0x9e, 0xe1, 0xf8, 0x98, 0x11, 0x69, 0xd9, 0x8e, 0x94, 0x9b, 0x1e, 0x87, 0xe9, 0xce, 0x55, 0x28, 0xdf, 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68, 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16]);\n this._inv_s = new Uint8Array([0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38, 0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb, 0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87, 0x34, 0x8e, 0x43, 0x44, 0xc4, 0xde, 0xe9, 0xcb, 0x54, 0x7b, 0x94, 0x32, 0xa6, 0xc2, 0x23, 0x3d, 0xee, 0x4c, 0x95, 0x0b, 0x42, 0xfa, 0xc3, 0x4e, 0x08, 0x2e, 0xa1, 0x66, 0x28, 0xd9, 0x24, 0xb2, 0x76, 0x5b, 0xa2, 0x49, 0x6d, 0x8b, 0xd1, 0x25, 0x72, 0xf8, 0xf6, 0x64, 0x86, 0x68, 0x98, 0x16, 0xd4, 0xa4, 0x5c, 0xcc, 0x5d, 0x65, 0xb6, 0x92, 0x6c, 0x70, 0x48, 0x50, 0xfd, 0xed, 0xb9, 0xda, 0x5e, 0x15, 0x46, 0x57, 0xa7, 0x8d, 0x9d, 0x84, 0x90, 0xd8, 0xab, 0x00, 0x8c, 0xbc, 0xd3, 0x0a, 0xf7, 0xe4, 0x58, 0x05, 0xb8, 0xb3, 0x45, 0x06, 0xd0, 0x2c, 0x1e, 0x8f, 0xca, 0x3f, 0x0f, 0x02, 0xc1, 0xaf, 0xbd, 0x03, 0x01, 0x13, 0x8a, 0x6b, 0x3a, 0x91, 0x11, 0x41, 0x4f, 0x67, 0xdc, 0xea, 0x97, 0xf2, 0xcf, 0xce, 0xf0, 0xb4, 0xe6, 0x73, 0x96, 0xac, 0x74, 0x22, 0xe7, 0xad, 0x35, 0x85, 0xe2, 0xf9, 0x37, 0xe8, 0x1c, 0x75, 0xdf, 0x6e, 0x47, 0xf1, 0x1a, 0x71, 0x1d, 0x29, 0xc5, 0x89, 0x6f, 0xb7, 0x62, 0x0e, 0xaa, 0x18, 0xbe, 0x1b, 0xfc, 0x56, 0x3e, 0x4b, 0xc6, 0xd2, 0x79, 0x20, 0x9a, 0xdb, 0xc0, 0xfe, 0x78, 0xcd, 0x5a, 0xf4, 0x1f, 0xdd, 0xa8, 0x33, 0x88, 0x07, 0xc7, 0x31, 0xb1, 0x12, 0x10, 0x59, 0x27, 0x80, 0xec, 0x5f, 0x60, 0x51, 0x7f, 0xa9, 0x19, 0xb5, 0x4a, 0x0d, 0x2d, 0xe5, 0x7a, 0x9f, 0x93, 0xc9, 0x9c, 0xef, 0xa0, 0xe0, 0x3b, 0x4d, 0xae, 0x2a, 0xf5, 0xb0, 0xc8, 0xeb, 0xbb, 0x3c, 0x83, 0x53, 0x99, 0x61, 0x17, 0x2b, 0x04, 0x7e, 0xba, 0x77, 0xd6, 0x26, 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d]);\n this._mix = new Uint32Array([0x00000000, 0x0e090d0b, 0x1c121a16, 0x121b171d, 0x3824342c, 0x362d3927, 0x24362e3a, 0x2a3f2331, 0x70486858, 0x7e416553, 0x6c5a724e, 0x62537f45, 0x486c5c74, 0x4665517f, 0x547e4662, 0x5a774b69, 0xe090d0b0, 0xee99ddbb, 0xfc82caa6, 0xf28bc7ad, 0xd8b4e49c, 0xd6bde997, 0xc4a6fe8a, 0xcaaff381, 0x90d8b8e8, 0x9ed1b5e3, 0x8ccaa2fe, 0x82c3aff5, 0xa8fc8cc4, 0xa6f581cf, 0xb4ee96d2, 0xbae79bd9, 0xdb3bbb7b, 0xd532b670, 0xc729a16d, 0xc920ac66, 0xe31f8f57, 0xed16825c, 0xff0d9541, 0xf104984a, 0xab73d323, 0xa57ade28, 0xb761c935, 0xb968c43e, 0x9357e70f, 0x9d5eea04, 0x8f45fd19, 0x814cf012, 0x3bab6bcb, 0x35a266c0, 0x27b971dd, 0x29b07cd6, 0x038f5fe7, 0x0d8652ec, 0x1f9d45f1, 0x119448fa, 0x4be30393, 0x45ea0e98, 0x57f11985, 0x59f8148e, 0x73c737bf, 0x7dce3ab4, 0x6fd52da9, 0x61dc20a2, 0xad766df6, 0xa37f60fd, 0xb16477e0, 0xbf6d7aeb, 0x955259da, 0x9b5b54d1, 0x894043cc, 0x87494ec7, 0xdd3e05ae, 0xd33708a5, 0xc12c1fb8, 0xcf2512b3, 0xe51a3182, 0xeb133c89, 0xf9082b94, 0xf701269f, 0x4de6bd46, 0x43efb04d, 0x51f4a750, 0x5ffdaa5b, 0x75c2896a, 0x7bcb8461, 0x69d0937c, 0x67d99e77, 0x3daed51e, 0x33a7d815, 0x21bccf08, 0x2fb5c203, 0x058ae132, 0x0b83ec39, 0x1998fb24, 0x1791f62f, 0x764dd68d, 0x7844db86, 0x6a5fcc9b, 0x6456c190, 0x4e69e2a1, 0x4060efaa, 0x527bf8b7, 0x5c72f5bc, 0x0605bed5, 0x080cb3de, 0x1a17a4c3, 0x141ea9c8, 0x3e218af9, 0x302887f2, 0x223390ef, 0x2c3a9de4, 0x96dd063d, 0x98d40b36, 0x8acf1c2b, 0x84c61120, 0xaef93211, 0xa0f03f1a, 0xb2eb2807, 0xbce2250c, 0xe6956e65, 0xe89c636e, 0xfa877473, 0xf48e7978, 0xdeb15a49, 0xd0b85742, 0xc2a3405f, 0xccaa4d54, 0x41ecdaf7, 0x4fe5d7fc, 0x5dfec0e1, 0x53f7cdea, 0x79c8eedb, 0x77c1e3d0, 0x65daf4cd, 0x6bd3f9c6, 0x31a4b2af, 0x3fadbfa4, 0x2db6a8b9, 0x23bfa5b2, 0x09808683, 0x07898b88, 0x15929c95, 0x1b9b919e, 0xa17c0a47, 0xaf75074c, 0xbd6e1051, 0xb3671d5a, 0x99583e6b, 0x97513360, 0x854a247d, 0x8b432976, 0xd134621f, 0xdf3d6f14, 0xcd267809, 0xc32f7502, 0xe9105633, 0xe7195b38, 0xf5024c25, 0xfb0b412e, 0x9ad7618c, 0x94de6c87, 0x86c57b9a, 0x88cc7691, 0xa2f355a0, 0xacfa58ab, 0xbee14fb6, 0xb0e842bd, 0xea9f09d4, 0xe49604df, 0xf68d13c2, 0xf8841ec9, 0xd2bb3df8, 0xdcb230f3, 0xcea927ee, 0xc0a02ae5, 0x7a47b13c, 0x744ebc37, 0x6655ab2a, 0x685ca621, 0x42638510, 0x4c6a881b, 0x5e719f06, 0x5078920d, 0x0a0fd964, 0x0406d46f, 0x161dc372, 0x1814ce79, 0x322bed48, 0x3c22e043, 0x2e39f75e, 0x2030fa55, 0xec9ab701, 0xe293ba0a, 0xf088ad17, 0xfe81a01c, 0xd4be832d, 0xdab78e26, 0xc8ac993b, 0xc6a59430, 0x9cd2df59, 0x92dbd252, 0x80c0c54f, 0x8ec9c844, 0xa4f6eb75, 0xaaffe67e, 0xb8e4f163, 0xb6edfc68, 0x0c0a67b1, 0x02036aba, 0x10187da7, 0x1e1170ac, 0x342e539d, 0x3a275e96, 0x283c498b, 0x26354480, 0x7c420fe9, 0x724b02e2, 0x605015ff, 0x6e5918f4, 0x44663bc5, 0x4a6f36ce, 0x587421d3, 0x567d2cd8, 0x37a10c7a, 0x39a80171, 0x2bb3166c, 0x25ba1b67, 0x0f853856, 0x018c355d, 0x13972240, 0x1d9e2f4b, 0x47e96422, 0x49e06929, 0x5bfb7e34, 0x55f2733f, 0x7fcd500e, 0x71c45d05, 0x63df4a18, 0x6dd64713, 0xd731dcca, 0xd938d1c1, 0xcb23c6dc, 0xc52acbd7, 0xef15e8e6, 0xe11ce5ed, 0xf307f2f0, 0xfd0efffb, 0xa779b492, 0xa970b999, 0xbb6bae84, 0xb562a38f, 0x9f5d80be, 0x91548db5, 0x834f9aa8, 0x8d4697a3]);\n this._mixCol = new Uint8Array(256);\n for (let i = 0; i < 256; i++) {\n this._mixCol[i] = i < 128 ? i << 1 : i << 1 ^ 0x1b;\n }\n this.buffer = new Uint8Array(16);\n this.bufferPosition = 0;\n }\n _expandKey(cipherKey) {\n (0, _util.unreachable)(\"Cannot call `_expandKey` on the base class\");\n }\n _decrypt(input, key) {\n let t, u, v;\n const state = new Uint8Array(16);\n state.set(input);\n for (let j = 0, k = this._keySize; j < 16; ++j, ++k) {\n state[j] ^= key[k];\n }\n for (let i = this._cyclesOfRepetition - 1; i >= 1; --i) {\n t = state[13];\n state[13] = state[9];\n state[9] = state[5];\n state[5] = state[1];\n state[1] = t;\n t = state[14];\n u = state[10];\n state[14] = state[6];\n state[10] = state[2];\n state[6] = t;\n state[2] = u;\n t = state[15];\n u = state[11];\n v = state[7];\n state[15] = state[3];\n state[11] = t;\n state[7] = u;\n state[3] = v;\n for (let j = 0; j < 16; ++j) {\n state[j] = this._inv_s[state[j]];\n }\n for (let j = 0, k = i * 16; j < 16; ++j, ++k) {\n state[j] ^= key[k];\n }\n for (let j = 0; j < 16; j += 4) {\n const s0 = this._mix[state[j]];\n const s1 = this._mix[state[j + 1]];\n const s2 = this._mix[state[j + 2]];\n const s3 = this._mix[state[j + 3]];\n t = s0 ^ s1 >>> 8 ^ s1 << 24 ^ s2 >>> 16 ^ s2 << 16 ^ s3 >>> 24 ^ s3 << 8;\n state[j] = t >>> 24 & 0xff;\n state[j + 1] = t >> 16 & 0xff;\n state[j + 2] = t >> 8 & 0xff;\n state[j + 3] = t & 0xff;\n }\n }\n t = state[13];\n state[13] = state[9];\n state[9] = state[5];\n state[5] = state[1];\n state[1] = t;\n t = state[14];\n u = state[10];\n state[14] = state[6];\n state[10] = state[2];\n state[6] = t;\n state[2] = u;\n t = state[15];\n u = state[11];\n v = state[7];\n state[15] = state[3];\n state[11] = t;\n state[7] = u;\n state[3] = v;\n for (let j = 0; j < 16; ++j) {\n state[j] = this._inv_s[state[j]];\n state[j] ^= key[j];\n }\n return state;\n }\n _encrypt(input, key) {\n const s = this._s;\n let t, u, v;\n const state = new Uint8Array(16);\n state.set(input);\n for (let j = 0; j < 16; ++j) {\n state[j] ^= key[j];\n }\n for (let i = 1; i < this._cyclesOfRepetition; i++) {\n for (let j = 0; j < 16; ++j) {\n state[j] = s[state[j]];\n }\n v = state[1];\n state[1] = state[5];\n state[5] = state[9];\n state[9] = state[13];\n state[13] = v;\n v = state[2];\n u = state[6];\n state[2] = state[10];\n state[6] = state[14];\n state[10] = v;\n state[14] = u;\n v = state[3];\n u = state[7];\n t = state[11];\n state[3] = state[15];\n state[7] = v;\n state[11] = u;\n state[15] = t;\n for (let j = 0; j < 16; j += 4) {\n const s0 = state[j + 0];\n const s1 = state[j + 1];\n const s2 = state[j + 2];\n const s3 = state[j + 3];\n t = s0 ^ s1 ^ s2 ^ s3;\n state[j + 0] ^= t ^ this._mixCol[s0 ^ s1];\n state[j + 1] ^= t ^ this._mixCol[s1 ^ s2];\n state[j + 2] ^= t ^ this._mixCol[s2 ^ s3];\n state[j + 3] ^= t ^ this._mixCol[s3 ^ s0];\n }\n for (let j = 0, k = i * 16; j < 16; ++j, ++k) {\n state[j] ^= key[k];\n }\n }\n for (let j = 0; j < 16; ++j) {\n state[j] = s[state[j]];\n }\n v = state[1];\n state[1] = state[5];\n state[5] = state[9];\n state[9] = state[13];\n state[13] = v;\n v = state[2];\n u = state[6];\n state[2] = state[10];\n state[6] = state[14];\n state[10] = v;\n state[14] = u;\n v = state[3];\n u = state[7];\n t = state[11];\n state[3] = state[15];\n state[7] = v;\n state[11] = u;\n state[15] = t;\n for (let j = 0, k = this._keySize; j < 16; ++j, ++k) {\n state[j] ^= key[k];\n }\n return state;\n }\n _decryptBlock2(data, finalize) {\n const sourceLength = data.length;\n let buffer = this.buffer,\n bufferLength = this.bufferPosition;\n const result = [];\n let iv = this.iv;\n for (let i = 0; i < sourceLength; ++i) {\n buffer[bufferLength] = data[i];\n ++bufferLength;\n if (bufferLength < 16) {\n continue;\n }\n const plain = this._decrypt(buffer, this._key);\n for (let j = 0; j < 16; ++j) {\n plain[j] ^= iv[j];\n }\n iv = buffer;\n result.push(plain);\n buffer = new Uint8Array(16);\n bufferLength = 0;\n }\n this.buffer = buffer;\n this.bufferLength = bufferLength;\n this.iv = iv;\n if (result.length === 0) {\n return new Uint8Array(0);\n }\n let outputLength = 16 * result.length;\n if (finalize) {\n const lastBlock = result.at(-1);\n let psLen = lastBlock[15];\n if (psLen <= 16) {\n for (let i = 15, ii = 16 - psLen; i >= ii; --i) {\n if (lastBlock[i] !== psLen) {\n psLen = 0;\n break;\n }\n }\n outputLength -= psLen;\n result[result.length - 1] = lastBlock.subarray(0, 16 - psLen);\n }\n }\n const output = new Uint8Array(outputLength);\n for (let i = 0, j = 0, ii = result.length; i < ii; ++i, j += 16) {\n output.set(result[i], j);\n }\n return output;\n }\n decryptBlock(data, finalize, iv = null) {\n const sourceLength = data.length;\n const buffer = this.buffer;\n let bufferLength = this.bufferPosition;\n if (iv) {\n this.iv = iv;\n } else {\n for (let i = 0; bufferLength < 16 && i < sourceLength; ++i, ++bufferLength) {\n buffer[bufferLength] = data[i];\n }\n if (bufferLength < 16) {\n this.bufferLength = bufferLength;\n return new Uint8Array(0);\n }\n this.iv = buffer;\n data = data.subarray(16);\n }\n this.buffer = new Uint8Array(16);\n this.bufferLength = 0;\n this.decryptBlock = this._decryptBlock2;\n return this.decryptBlock(data, finalize);\n }\n encrypt(data, iv) {\n const sourceLength = data.length;\n let buffer = this.buffer,\n bufferLength = this.bufferPosition;\n const result = [];\n if (!iv) {\n iv = new Uint8Array(16);\n }\n for (let i = 0; i < sourceLength; ++i) {\n buffer[bufferLength] = data[i];\n ++bufferLength;\n if (bufferLength < 16) {\n continue;\n }\n for (let j = 0; j < 16; ++j) {\n buffer[j] ^= iv[j];\n }\n const cipher = this._encrypt(buffer, this._key);\n iv = cipher;\n result.push(cipher);\n buffer = new Uint8Array(16);\n bufferLength = 0;\n }\n this.buffer = buffer;\n this.bufferLength = bufferLength;\n this.iv = iv;\n if (result.length === 0) {\n return new Uint8Array(0);\n }\n const outputLength = 16 * result.length;\n const output = new Uint8Array(outputLength);\n for (let i = 0, j = 0, ii = result.length; i < ii; ++i, j += 16) {\n output.set(result[i], j);\n }\n return output;\n }\n}\nclass AES128Cipher extends AESBaseCipher {\n constructor(key) {\n super();\n this._cyclesOfRepetition = 10;\n this._keySize = 160;\n this._rcon = new Uint8Array([0x8d, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36, 0x6c, 0xd8, 0xab, 0x4d, 0x9a, 0x2f, 0x5e, 0xbc, 0x63, 0xc6, 0x97, 0x35, 0x6a, 0xd4, 0xb3, 0x7d, 0xfa, 0xef, 0xc5, 0x91, 0x39, 0x72, 0xe4, 0xd3, 0xbd, 0x61, 0xc2, 0x9f, 0x25, 0x4a, 0x94, 0x33, 0x66, 0xcc, 0x83, 0x1d, 0x3a, 0x74, 0xe8, 0xcb, 0x8d, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36, 0x6c, 0xd8, 0xab, 0x4d, 0x9a, 0x2f, 0x5e, 0xbc, 0x63, 0xc6, 0x97, 0x35, 0x6a, 0xd4, 0xb3, 0x7d, 0xfa, 0xef, 0xc5, 0x91, 0x39, 0x72, 0xe4, 0xd3, 0xbd, 0x61, 0xc2, 0x9f, 0x25, 0x4a, 0x94, 0x33, 0x66, 0xcc, 0x83, 0x1d, 0x3a, 0x74, 0xe8, 0xcb, 0x8d, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36, 0x6c, 0xd8, 0xab, 0x4d, 0x9a, 0x2f, 0x5e, 0xbc, 0x63, 0xc6, 0x97, 0x35, 0x6a, 0xd4, 0xb3, 0x7d, 0xfa, 0xef, 0xc5, 0x91, 0x39, 0x72, 0xe4, 0xd3, 0xbd, 0x61, 0xc2, 0x9f, 0x25, 0x4a, 0x94, 0x33, 0x66, 0xcc, 0x83, 0x1d, 0x3a, 0x74, 0xe8, 0xcb, 0x8d, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36, 0x6c, 0xd8, 0xab, 0x4d, 0x9a, 0x2f, 0x5e, 0xbc, 0x63, 0xc6, 0x97, 0x35, 0x6a, 0xd4, 0xb3, 0x7d, 0xfa, 0xef, 0xc5, 0x91, 0x39, 0x72, 0xe4, 0xd3, 0xbd, 0x61, 0xc2, 0x9f, 0x25, 0x4a, 0x94, 0x33, 0x66, 0xcc, 0x83, 0x1d, 0x3a, 0x74, 0xe8, 0xcb, 0x8d, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36, 0x6c, 0xd8, 0xab, 0x4d, 0x9a, 0x2f, 0x5e, 0xbc, 0x63, 0xc6, 0x97, 0x35, 0x6a, 0xd4, 0xb3, 0x7d, 0xfa, 0xef, 0xc5, 0x91, 0x39, 0x72, 0xe4, 0xd3, 0xbd, 0x61, 0xc2, 0x9f, 0x25, 0x4a, 0x94, 0x33, 0x66, 0xcc, 0x83, 0x1d, 0x3a, 0x74, 0xe8, 0xcb, 0x8d]);\n this._key = this._expandKey(key);\n }\n _expandKey(cipherKey) {\n const b = 176;\n const s = this._s;\n const rcon = this._rcon;\n const result = new Uint8Array(b);\n result.set(cipherKey);\n for (let j = 16, i = 1; j < b; ++i) {\n let t1 = result[j - 3];\n let t2 = result[j - 2];\n let t3 = result[j - 1];\n let t4 = result[j - 4];\n t1 = s[t1];\n t2 = s[t2];\n t3 = s[t3];\n t4 = s[t4];\n t1 ^= rcon[i];\n for (let n = 0; n < 4; ++n) {\n result[j] = t1 ^= result[j - 16];\n j++;\n result[j] = t2 ^= result[j - 16];\n j++;\n result[j] = t3 ^= result[j - 16];\n j++;\n result[j] = t4 ^= result[j - 16];\n j++;\n }\n }\n return result;\n }\n}\nexports.AES128Cipher = AES128Cipher;\nclass AES256Cipher extends AESBaseCipher {\n constructor(key) {\n super();\n this._cyclesOfRepetition = 14;\n this._keySize = 224;\n this._key = this._expandKey(key);\n }\n _expandKey(cipherKey) {\n const b = 240;\n const s = this._s;\n const result = new Uint8Array(b);\n result.set(cipherKey);\n let r = 1;\n let t1, t2, t3, t4;\n for (let j = 32, i = 1; j < b; ++i) {\n if (j % 32 === 16) {\n t1 = s[t1];\n t2 = s[t2];\n t3 = s[t3];\n t4 = s[t4];\n } else if (j % 32 === 0) {\n t1 = result[j - 3];\n t2 = result[j - 2];\n t3 = result[j - 1];\n t4 = result[j - 4];\n t1 = s[t1];\n t2 = s[t2];\n t3 = s[t3];\n t4 = s[t4];\n t1 ^= r;\n if ((r <<= 1) >= 256) {\n r = (r ^ 0x1b) & 0xff;\n }\n }\n for (let n = 0; n < 4; ++n) {\n result[j] = t1 ^= result[j - 32];\n j++;\n result[j] = t2 ^= result[j - 32];\n j++;\n result[j] = t3 ^= result[j - 32];\n j++;\n result[j] = t4 ^= result[j - 32];\n j++;\n }\n }\n return result;\n }\n}\nexports.AES256Cipher = AES256Cipher;\nclass PDF17 {\n checkOwnerPassword(password, ownerValidationSalt, userBytes, ownerPassword) {\n const hashData = new Uint8Array(password.length + 56);\n hashData.set(password, 0);\n hashData.set(ownerValidationSalt, password.length);\n hashData.set(userBytes, password.length + ownerValidationSalt.length);\n const result = calculateSHA256(hashData, 0, hashData.length);\n return (0, _util.isArrayEqual)(result, ownerPassword);\n }\n checkUserPassword(password, userValidationSalt, userPassword) {\n const hashData = new Uint8Array(password.length + 8);\n hashData.set(password, 0);\n hashData.set(userValidationSalt, password.length);\n const result = calculateSHA256(hashData, 0, hashData.length);\n return (0, _util.isArrayEqual)(result, userPassword);\n }\n getOwnerKey(password, ownerKeySalt, userBytes, ownerEncryption) {\n const hashData = new Uint8Array(password.length + 56);\n hashData.set(password, 0);\n hashData.set(ownerKeySalt, password.length);\n hashData.set(userBytes, password.length + ownerKeySalt.length);\n const key = calculateSHA256(hashData, 0, hashData.length);\n const cipher = new AES256Cipher(key);\n return cipher.decryptBlock(ownerEncryption, false, new Uint8Array(16));\n }\n getUserKey(password, userKeySalt, userEncryption) {\n const hashData = new Uint8Array(password.length + 8);\n hashData.set(password, 0);\n hashData.set(userKeySalt, password.length);\n const key = calculateSHA256(hashData, 0, hashData.length);\n const cipher = new AES256Cipher(key);\n return cipher.decryptBlock(userEncryption, false, new Uint8Array(16));\n }\n}\nexports.PDF17 = PDF17;\nclass PDF20 {\n _hash(password, input, userBytes) {\n let k = calculateSHA256(input, 0, input.length).subarray(0, 32);\n let e = [0];\n let i = 0;\n while (i < 64 || e.at(-1) > i - 32) {\n const combinedLength = password.length + k.length + userBytes.length,\n combinedArray = new Uint8Array(combinedLength);\n let writeOffset = 0;\n combinedArray.set(password, writeOffset);\n writeOffset += password.length;\n combinedArray.set(k, writeOffset);\n writeOffset += k.length;\n combinedArray.set(userBytes, writeOffset);\n const k1 = new Uint8Array(combinedLength * 64);\n for (let j = 0, pos = 0; j < 64; j++, pos += combinedLength) {\n k1.set(combinedArray, pos);\n }\n const cipher = new AES128Cipher(k.subarray(0, 16));\n e = cipher.encrypt(k1, k.subarray(16, 32));\n const remainder = e.slice(0, 16).reduce((a, b) => a + b, 0) % 3;\n if (remainder === 0) {\n k = calculateSHA256(e, 0, e.length);\n } else if (remainder === 1) {\n k = calculateSHA384(e, 0, e.length);\n } else if (remainder === 2) {\n k = calculateSHA512(e, 0, e.length);\n }\n i++;\n }\n return k.subarray(0, 32);\n }\n checkOwnerPassword(password, ownerValidationSalt, userBytes, ownerPassword) {\n const hashData = new Uint8Array(password.length + 56);\n hashData.set(password, 0);\n hashData.set(ownerValidationSalt, password.length);\n hashData.set(userBytes, password.length + ownerValidationSalt.length);\n const result = this._hash(password, hashData, userBytes);\n return (0, _util.isArrayEqual)(result, ownerPassword);\n }\n checkUserPassword(password, userValidationSalt, userPassword) {\n const hashData = new Uint8Array(password.length + 8);\n hashData.set(password, 0);\n hashData.set(userValidationSalt, password.length);\n const result = this._hash(password, hashData, []);\n return (0, _util.isArrayEqual)(result, userPassword);\n }\n getOwnerKey(password, ownerKeySalt, userBytes, ownerEncryption) {\n const hashData = new Uint8Array(password.length + 56);\n hashData.set(password, 0);\n hashData.set(ownerKeySalt, password.length);\n hashData.set(userBytes, password.length + ownerKeySalt.length);\n const key = this._hash(password, hashData, userBytes);\n const cipher = new AES256Cipher(key);\n return cipher.decryptBlock(ownerEncryption, false, new Uint8Array(16));\n }\n getUserKey(password, userKeySalt, userEncryption) {\n const hashData = new Uint8Array(password.length + 8);\n hashData.set(password, 0);\n hashData.set(userKeySalt, password.length);\n const key = this._hash(password, hashData, []);\n const cipher = new AES256Cipher(key);\n return cipher.decryptBlock(userEncryption, false, new Uint8Array(16));\n }\n}\nexports.PDF20 = PDF20;\nclass CipherTransform {\n constructor(stringCipherConstructor, streamCipherConstructor) {\n this.StringCipherConstructor = stringCipherConstructor;\n this.StreamCipherConstructor = streamCipherConstructor;\n }\n createStream(stream, length) {\n const cipher = new this.StreamCipherConstructor();\n return new _decrypt_stream.DecryptStream(stream, length, function cipherTransformDecryptStream(data, finalize) {\n return cipher.decryptBlock(data, finalize);\n });\n }\n decryptString(s) {\n const cipher = new this.StringCipherConstructor();\n let data = (0, _util.stringToBytes)(s);\n data = cipher.decryptBlock(data, true);\n return (0, _util.bytesToString)(data);\n }\n encryptString(s) {\n const cipher = new this.StringCipherConstructor();\n if (cipher instanceof AESBaseCipher) {\n const strLen = s.length;\n const pad = 16 - strLen % 16;\n s += String.fromCharCode(pad).repeat(pad);\n const iv = new Uint8Array(16);\n if (typeof crypto !== \"undefined\") {\n crypto.getRandomValues(iv);\n } else {\n for (let i = 0; i < 16; i++) {\n iv[i] = Math.floor(256 * Math.random());\n }\n }\n let data = (0, _util.stringToBytes)(s);\n data = cipher.encrypt(data, iv);\n const buf = new Uint8Array(16 + data.length);\n buf.set(iv);\n buf.set(data, 16);\n return (0, _util.bytesToString)(buf);\n }\n let data = (0, _util.stringToBytes)(s);\n data = cipher.encrypt(data);\n return (0, _util.bytesToString)(data);\n }\n}\nclass CipherTransformFactory {\n static #defaultPasswordBytes = new Uint8Array([0x28, 0xbf, 0x4e, 0x5e, 0x4e, 0x75, 0x8a, 0x41, 0x64, 0x00, 0x4e, 0x56, 0xff, 0xfa, 0x01, 0x08, 0x2e, 0x2e, 0x00, 0xb6, 0xd0, 0x68, 0x3e, 0x80, 0x2f, 0x0c, 0xa9, 0xfe, 0x64, 0x53, 0x69, 0x7a]);\n #createEncryptionKey20(revision, password, ownerPassword, ownerValidationSalt, ownerKeySalt, uBytes, userPassword, userValidationSalt, userKeySalt, ownerEncryption, userEncryption, perms) {\n if (password) {\n const passwordLength = Math.min(127, password.length);\n password = password.subarray(0, passwordLength);\n } else {\n password = [];\n }\n const pdfAlgorithm = revision === 6 ? new PDF20() : new PDF17();\n if (pdfAlgorithm.checkUserPassword(password, userValidationSalt, userPassword)) {\n return pdfAlgorithm.getUserKey(password, userKeySalt, userEncryption);\n } else if (password.length && pdfAlgorithm.checkOwnerPassword(password, ownerValidationSalt, uBytes, ownerPassword)) {\n return pdfAlgorithm.getOwnerKey(password, ownerKeySalt, uBytes, ownerEncryption);\n }\n return null;\n }\n #prepareKeyData(fileId, password, ownerPassword, userPassword, flags, revision, keyLength, encryptMetadata) {\n const hashDataSize = 40 + ownerPassword.length + fileId.length;\n const hashData = new Uint8Array(hashDataSize);\n let i = 0,\n j,\n n;\n if (password) {\n n = Math.min(32, password.length);\n for (; i < n; ++i) {\n hashData[i] = password[i];\n }\n }\n j = 0;\n while (i < 32) {\n hashData[i++] = CipherTransformFactory.#defaultPasswordBytes[j++];\n }\n for (j = 0, n = ownerPassword.length; j < n; ++j) {\n hashData[i++] = ownerPassword[j];\n }\n hashData[i++] = flags & 0xff;\n hashData[i++] = flags >> 8 & 0xff;\n hashData[i++] = flags >> 16 & 0xff;\n hashData[i++] = flags >>> 24 & 0xff;\n for (j = 0, n = fileId.length; j < n; ++j) {\n hashData[i++] = fileId[j];\n }\n if (revision >= 4 && !encryptMetadata) {\n hashData[i++] = 0xff;\n hashData[i++] = 0xff;\n hashData[i++] = 0xff;\n hashData[i++] = 0xff;\n }\n let hash = calculateMD5(hashData, 0, i);\n const keyLengthInBytes = keyLength >> 3;\n if (revision >= 3) {\n for (j = 0; j < 50; ++j) {\n hash = calculateMD5(hash, 0, keyLengthInBytes);\n }\n }\n const encryptionKey = hash.subarray(0, keyLengthInBytes);\n let cipher, checkData;\n if (revision >= 3) {\n for (i = 0; i < 32; ++i) {\n hashData[i] = CipherTransformFactory.#defaultPasswordBytes[i];\n }\n for (j = 0, n = fileId.length; j < n; ++j) {\n hashData[i++] = fileId[j];\n }\n cipher = new ARCFourCipher(encryptionKey);\n checkData = cipher.encryptBlock(calculateMD5(hashData, 0, i));\n n = encryptionKey.length;\n const derivedKey = new Uint8Array(n);\n for (j = 1; j <= 19; ++j) {\n for (let k = 0; k < n; ++k) {\n derivedKey[k] = encryptionKey[k] ^ j;\n }\n cipher = new ARCFourCipher(derivedKey);\n checkData = cipher.encryptBlock(checkData);\n }\n for (j = 0, n = checkData.length; j < n; ++j) {\n if (userPassword[j] !== checkData[j]) {\n return null;\n }\n }\n } else {\n cipher = new ARCFourCipher(encryptionKey);\n checkData = cipher.encryptBlock(CipherTransformFactory.#defaultPasswordBytes);\n for (j = 0, n = checkData.length; j < n; ++j) {\n if (userPassword[j] !== checkData[j]) {\n return null;\n }\n }\n }\n return encryptionKey;\n }\n #decodeUserPassword(password, ownerPassword, revision, keyLength) {\n const hashData = new Uint8Array(32);\n let i = 0;\n const n = Math.min(32, password.length);\n for (; i < n; ++i) {\n hashData[i] = password[i];\n }\n let j = 0;\n while (i < 32) {\n hashData[i++] = CipherTransformFactory.#defaultPasswordBytes[j++];\n }\n let hash = calculateMD5(hashData, 0, i);\n const keyLengthInBytes = keyLength >> 3;\n if (revision >= 3) {\n for (j = 0; j < 50; ++j) {\n hash = calculateMD5(hash, 0, hash.length);\n }\n }\n let cipher, userPassword;\n if (revision >= 3) {\n userPassword = ownerPassword;\n const derivedKey = new Uint8Array(keyLengthInBytes);\n for (j = 19; j >= 0; j--) {\n for (let k = 0; k < keyLengthInBytes; ++k) {\n derivedKey[k] = hash[k] ^ j;\n }\n cipher = new ARCFourCipher(derivedKey);\n userPassword = cipher.encryptBlock(userPassword);\n }\n } else {\n cipher = new ARCFourCipher(hash.subarray(0, keyLengthInBytes));\n userPassword = cipher.encryptBlock(ownerPassword);\n }\n return userPassword;\n }\n #buildObjectKey(num, gen, encryptionKey, isAes = false) {\n const key = new Uint8Array(encryptionKey.length + 9);\n const n = encryptionKey.length;\n let i;\n for (i = 0; i < n; ++i) {\n key[i] = encryptionKey[i];\n }\n key[i++] = num & 0xff;\n key[i++] = num >> 8 & 0xff;\n key[i++] = num >> 16 & 0xff;\n key[i++] = gen & 0xff;\n key[i++] = gen >> 8 & 0xff;\n if (isAes) {\n key[i++] = 0x73;\n key[i++] = 0x41;\n key[i++] = 0x6c;\n key[i++] = 0x54;\n }\n const hash = calculateMD5(key, 0, i);\n return hash.subarray(0, Math.min(encryptionKey.length + 5, 16));\n }\n #buildCipherConstructor(cf, name, num, gen, key) {\n if (!(name instanceof _primitives.Name)) {\n throw new _util.FormatError(\"Invalid crypt filter name.\");\n }\n const self = this;\n const cryptFilter = cf.get(name.name);\n const cfm = cryptFilter?.get(\"CFM\");\n if (!cfm || cfm.name === \"None\") {\n return function () {\n return new NullCipher();\n };\n }\n if (cfm.name === \"V2\") {\n return function () {\n return new ARCFourCipher(self.#buildObjectKey(num, gen, key, false));\n };\n }\n if (cfm.name === \"AESV2\") {\n return function () {\n return new AES128Cipher(self.#buildObjectKey(num, gen, key, true));\n };\n }\n if (cfm.name === \"AESV3\") {\n return function () {\n return new AES256Cipher(key);\n };\n }\n throw new _util.FormatError(\"Unknown crypto method\");\n }\n constructor(dict, fileId, password) {\n const filter = dict.get(\"Filter\");\n if (!(0, _primitives.isName)(filter, \"Standard\")) {\n throw new _util.FormatError(\"unknown encryption method\");\n }\n this.filterName = filter.name;\n this.dict = dict;\n const algorithm = dict.get(\"V\");\n if (!Number.isInteger(algorithm) || algorithm !== 1 && algorithm !== 2 && algorithm !== 4 && algorithm !== 5) {\n throw new _util.FormatError(\"unsupported encryption algorithm\");\n }\n this.algorithm = algorithm;\n let keyLength = dict.get(\"Length\");\n if (!keyLength) {\n if (algorithm <= 3) {\n keyLength = 40;\n } else {\n const cfDict = dict.get(\"CF\");\n const streamCryptoName = dict.get(\"StmF\");\n if (cfDict instanceof _primitives.Dict && streamCryptoName instanceof _primitives.Name) {\n cfDict.suppressEncryption = true;\n const handlerDict = cfDict.get(streamCryptoName.name);\n keyLength = handlerDict?.get(\"Length\") || 128;\n if (keyLength < 40) {\n keyLength <<= 3;\n }\n }\n }\n }\n if (!Number.isInteger(keyLength) || keyLength < 40 || keyLength % 8 !== 0) {\n throw new _util.FormatError(\"invalid key length\");\n }\n const ownerBytes = (0, _util.stringToBytes)(dict.get(\"O\")),\n userBytes = (0, _util.stringToBytes)(dict.get(\"U\"));\n const ownerPassword = ownerBytes.subarray(0, 32);\n const userPassword = userBytes.subarray(0, 32);\n const flags = dict.get(\"P\");\n const revision = dict.get(\"R\");\n const encryptMetadata = (algorithm === 4 || algorithm === 5) && dict.get(\"EncryptMetadata\") !== false;\n this.encryptMetadata = encryptMetadata;\n const fileIdBytes = (0, _util.stringToBytes)(fileId);\n let passwordBytes;\n if (password) {\n if (revision === 6) {\n try {\n password = (0, _util.utf8StringToString)(password);\n } catch {\n (0, _util.warn)(\"CipherTransformFactory: Unable to convert UTF8 encoded password.\");\n }\n }\n passwordBytes = (0, _util.stringToBytes)(password);\n }\n let encryptionKey;\n if (algorithm !== 5) {\n encryptionKey = this.#prepareKeyData(fileIdBytes, passwordBytes, ownerPassword, userPassword, flags, revision, keyLength, encryptMetadata);\n } else {\n const ownerValidationSalt = ownerBytes.subarray(32, 40);\n const ownerKeySalt = ownerBytes.subarray(40, 48);\n const uBytes = userBytes.subarray(0, 48);\n const userValidationSalt = userBytes.subarray(32, 40);\n const userKeySalt = userBytes.subarray(40, 48);\n const ownerEncryption = (0, _util.stringToBytes)(dict.get(\"OE\"));\n const userEncryption = (0, _util.stringToBytes)(dict.get(\"UE\"));\n const perms = (0, _util.stringToBytes)(dict.get(\"Perms\"));\n encryptionKey = this.#createEncryptionKey20(revision, passwordBytes, ownerPassword, ownerValidationSalt, ownerKeySalt, uBytes, userPassword, userValidationSalt, userKeySalt, ownerEncryption, userEncryption, perms);\n }\n if (!encryptionKey && !password) {\n throw new _util.PasswordException(\"No password given\", _util.PasswordResponses.NEED_PASSWORD);\n } else if (!encryptionKey && password) {\n const decodedPassword = this.#decodeUserPassword(passwordBytes, ownerPassword, revision, keyLength);\n encryptionKey = this.#prepareKeyData(fileIdBytes, decodedPassword, ownerPassword, userPassword, flags, revision, keyLength, encryptMetadata);\n }\n if (!encryptionKey) {\n throw new _util.PasswordException(\"Incorrect Password\", _util.PasswordResponses.INCORRECT_PASSWORD);\n }\n this.encryptionKey = encryptionKey;\n if (algorithm >= 4) {\n const cf = dict.get(\"CF\");\n if (cf instanceof _primitives.Dict) {\n cf.suppressEncryption = true;\n }\n this.cf = cf;\n this.stmf = dict.get(\"StmF\") || _primitives.Name.get(\"Identity\");\n this.strf = dict.get(\"StrF\") || _primitives.Name.get(\"Identity\");\n this.eff = dict.get(\"EFF\") || this.stmf;\n }\n }\n createCipherTransform(num, gen) {\n if (this.algorithm === 4 || this.algorithm === 5) {\n return new CipherTransform(this.#buildCipherConstructor(this.cf, this.strf, num, gen, this.encryptionKey), this.#buildCipherConstructor(this.cf, this.stmf, num, gen, this.encryptionKey));\n }\n const key = this.#buildObjectKey(num, gen, this.encryptionKey, false);\n const cipherConstructor = function () {\n return new ARCFourCipher(key);\n };\n return new CipherTransform(cipherConstructor, cipherConstructor);\n }\n}\nexports.CipherTransformFactory = CipherTransformFactory;\n\n/***/ }),\n/* 75 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.DecryptStream = void 0;\nvar _decode_stream = __w_pdfjs_require__(18);\nconst chunkSize = 512;\nclass DecryptStream extends _decode_stream.DecodeStream {\n constructor(str, maybeLength, decrypt) {\n super(maybeLength);\n this.str = str;\n this.dict = str.dict;\n this.decrypt = decrypt;\n this.nextChunk = null;\n this.initialized = false;\n }\n readBlock() {\n let chunk;\n if (this.initialized) {\n chunk = this.nextChunk;\n } else {\n chunk = this.str.getBytes(chunkSize);\n this.initialized = true;\n }\n if (!chunk || chunk.length === 0) {\n this.eof = true;\n return;\n }\n this.nextChunk = this.str.getBytes(chunkSize);\n const hasMoreData = this.nextChunk?.length > 0;\n const decrypt = this.decrypt;\n chunk = decrypt(chunk, !hasMoreData);\n const bufferLength = this.bufferLength,\n newLength = bufferLength + chunk.length,\n buffer = this.ensureBuffer(newLength);\n buffer.set(chunk, bufferLength);\n this.bufferLength = newLength;\n }\n}\nexports.DecryptStream = DecryptStream;\n\n/***/ }),\n/* 76 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ObjectLoader = void 0;\nvar _primitives = __w_pdfjs_require__(4);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _util = __w_pdfjs_require__(2);\nfunction mayHaveChildren(value) {\n return value instanceof _primitives.Ref || value instanceof _primitives.Dict || value instanceof _base_stream.BaseStream || Array.isArray(value);\n}\nfunction addChildren(node, nodesToVisit) {\n if (node instanceof _primitives.Dict) {\n node = node.getRawValues();\n } else if (node instanceof _base_stream.BaseStream) {\n node = node.dict.getRawValues();\n } else if (!Array.isArray(node)) {\n return;\n }\n for (const rawValue of node) {\n if (mayHaveChildren(rawValue)) {\n nodesToVisit.push(rawValue);\n }\n }\n}\nclass ObjectLoader {\n constructor(dict, keys, xref) {\n this.dict = dict;\n this.keys = keys;\n this.xref = xref;\n this.refSet = null;\n }\n async load() {\n if (this.xref.stream.isDataLoaded) {\n return undefined;\n }\n const {\n keys,\n dict\n } = this;\n this.refSet = new _primitives.RefSet();\n const nodesToVisit = [];\n for (const key of keys) {\n const rawValue = dict.getRaw(key);\n if (rawValue !== undefined) {\n nodesToVisit.push(rawValue);\n }\n }\n return this._walk(nodesToVisit);\n }\n async _walk(nodesToVisit) {\n const nodesToRevisit = [];\n const pendingRequests = [];\n while (nodesToVisit.length) {\n let currentNode = nodesToVisit.pop();\n if (currentNode instanceof _primitives.Ref) {\n if (this.refSet.has(currentNode)) {\n continue;\n }\n try {\n this.refSet.put(currentNode);\n currentNode = this.xref.fetch(currentNode);\n } catch (ex) {\n if (!(ex instanceof _core_utils.MissingDataException)) {\n (0, _util.warn)(`ObjectLoader._walk - requesting all data: \"${ex}\".`);\n this.refSet = null;\n const {\n manager\n } = this.xref.stream;\n return manager.requestAllChunks();\n }\n nodesToRevisit.push(currentNode);\n pendingRequests.push({\n begin: ex.begin,\n end: ex.end\n });\n }\n }\n if (currentNode instanceof _base_stream.BaseStream) {\n const baseStreams = currentNode.getBaseStreams();\n if (baseStreams) {\n let foundMissingData = false;\n for (const stream of baseStreams) {\n if (stream.isDataLoaded) {\n continue;\n }\n foundMissingData = true;\n pendingRequests.push({\n begin: stream.start,\n end: stream.end\n });\n }\n if (foundMissingData) {\n nodesToRevisit.push(currentNode);\n }\n }\n }\n addChildren(currentNode, nodesToVisit);\n }\n if (pendingRequests.length) {\n await this.xref.stream.manager.requestRanges(pendingRequests);\n for (const node of nodesToRevisit) {\n if (node instanceof _primitives.Ref) {\n this.refSet.remove(node);\n }\n }\n return this._walk(nodesToRevisit);\n }\n this.refSet = null;\n return undefined;\n }\n}\nexports.ObjectLoader = ObjectLoader;\n\n/***/ }),\n/* 77 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XFAFactory = void 0;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _bind = __w_pdfjs_require__(79);\nvar _data = __w_pdfjs_require__(89);\nvar _fonts = __w_pdfjs_require__(85);\nvar _utils = __w_pdfjs_require__(84);\nvar _util = __w_pdfjs_require__(2);\nvar _parser = __w_pdfjs_require__(90);\nvar _xhtml = __w_pdfjs_require__(100);\nclass XFAFactory {\n constructor(data) {\n try {\n this.root = new _parser.XFAParser().parse(XFAFactory._createDocument(data));\n const binder = new _bind.Binder(this.root);\n this.form = binder.bind();\n this.dataHandler = new _data.DataHandler(this.root, binder.getData());\n this.form[_symbol_utils.$globalData].template = this.form;\n } catch (e) {\n (0, _util.warn)(`XFA - an error occurred during parsing and binding: ${e}`);\n }\n }\n isValid() {\n return this.root && this.form;\n }\n _createPagesHelper() {\n const iterator = this.form[_symbol_utils.$toPages]();\n return new Promise((resolve, reject) => {\n const nextIteration = () => {\n try {\n const value = iterator.next();\n if (value.done) {\n resolve(value.value);\n } else {\n setTimeout(nextIteration, 0);\n }\n } catch (e) {\n reject(e);\n }\n };\n setTimeout(nextIteration, 0);\n });\n }\n async _createPages() {\n try {\n this.pages = await this._createPagesHelper();\n this.dims = this.pages.children.map(c => {\n const {\n width,\n height\n } = c.attributes.style;\n return [0, 0, parseInt(width), parseInt(height)];\n });\n } catch (e) {\n (0, _util.warn)(`XFA - an error occurred during layout: ${e}`);\n }\n }\n getBoundingBox(pageIndex) {\n return this.dims[pageIndex];\n }\n async getNumPages() {\n if (!this.pages) {\n await this._createPages();\n }\n return this.dims.length;\n }\n setImages(images) {\n this.form[_symbol_utils.$globalData].images = images;\n }\n setFonts(fonts) {\n this.form[_symbol_utils.$globalData].fontFinder = new _fonts.FontFinder(fonts);\n const missingFonts = [];\n for (let typeface of this.form[_symbol_utils.$globalData].usedTypefaces) {\n typeface = (0, _utils.stripQuotes)(typeface);\n const font = this.form[_symbol_utils.$globalData].fontFinder.find(typeface);\n if (!font) {\n missingFonts.push(typeface);\n }\n }\n if (missingFonts.length > 0) {\n return missingFonts;\n }\n return null;\n }\n appendFonts(fonts, reallyMissingFonts) {\n this.form[_symbol_utils.$globalData].fontFinder.add(fonts, reallyMissingFonts);\n }\n async getPages() {\n if (!this.pages) {\n await this._createPages();\n }\n const pages = this.pages;\n this.pages = null;\n return pages;\n }\n serializeData(storage) {\n return this.dataHandler.serialize(storage);\n }\n static _createDocument(data) {\n if (!data[\"/xdp:xdp\"]) {\n return data[\"xdp:xdp\"];\n }\n return Object.values(data).join(\"\");\n }\n static getRichTextAsHtml(rc) {\n if (!rc || typeof rc !== \"string\") {\n return null;\n }\n try {\n let root = new _parser.XFAParser(_xhtml.XhtmlNamespace, true).parse(rc);\n if (![\"body\", \"xhtml\"].includes(root[_symbol_utils.$nodeName])) {\n const newRoot = _xhtml.XhtmlNamespace.body({});\n newRoot[_symbol_utils.$appendChild](root);\n root = newRoot;\n }\n const result = root[_symbol_utils.$toHTML]();\n if (!result.success) {\n return null;\n }\n const {\n html\n } = result;\n const {\n attributes\n } = html;\n if (attributes) {\n if (attributes.class) {\n attributes.class = attributes.class.filter(attr => !attr.startsWith(\"xfa\"));\n }\n attributes.dir = \"auto\";\n }\n return {\n html,\n str: root[_symbol_utils.$text]()\n };\n } catch (e) {\n (0, _util.warn)(`XFA - an error occurred during parsing of rich text: ${e}`);\n }\n return null;\n }\n}\nexports.XFAFactory = XFAFactory;\n\n/***/ }),\n/* 78 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.$uid = exports.$toStyle = exports.$toString = exports.$toPages = exports.$toHTML = exports.$text = exports.$tabIndex = exports.$setValue = exports.$setSetAttributes = exports.$setId = exports.$searchNode = exports.$root = exports.$resolvePrototypes = exports.$removeChild = exports.$pushPara = exports.$pushGlyphs = exports.$popPara = exports.$onText = exports.$onChildCheck = exports.$onChild = exports.$nsAttributes = exports.$nodeName = exports.$namespaceId = exports.$lastAttribute = exports.$isUsable = exports.$isTransparent = exports.$isThereMoreWidth = exports.$isSplittable = exports.$isNsAgnostic = exports.$isDescendent = exports.$isDataValue = exports.$isCDATAXml = exports.$isBindable = exports.$insertAt = exports.$indexOf = exports.$ids = exports.$hasSettableValue = exports.$globalData = exports.$getTemplateRoot = exports.$getSubformParent = exports.$getRealChildrenByNameIt = exports.$getParent = exports.$getNextPage = exports.$getExtra = exports.$getDataValue = exports.$getContainedChildren = exports.$getChildrenByNameIt = exports.$getChildrenByName = exports.$getChildrenByClass = exports.$getChildren = exports.$getAvailableSpace = exports.$getAttributes = exports.$getAttributeIt = exports.$flushHTML = exports.$finalize = exports.$extra = exports.$dump = exports.$data = exports.$content = exports.$consumed = exports.$clone = exports.$cleanup = exports.$cleanPage = exports.$clean = exports.$childrenToHTML = exports.$appendChild = exports.$addHTML = exports.$acceptWhitespace = void 0;\nconst $acceptWhitespace = Symbol();\nexports.$acceptWhitespace = $acceptWhitespace;\nconst $addHTML = Symbol();\nexports.$addHTML = $addHTML;\nconst $appendChild = Symbol();\nexports.$appendChild = $appendChild;\nconst $childrenToHTML = Symbol();\nexports.$childrenToHTML = $childrenToHTML;\nconst $clean = Symbol();\nexports.$clean = $clean;\nconst $cleanPage = Symbol();\nexports.$cleanPage = $cleanPage;\nconst $cleanup = Symbol();\nexports.$cleanup = $cleanup;\nconst $clone = Symbol();\nexports.$clone = $clone;\nconst $consumed = Symbol();\nexports.$consumed = $consumed;\nconst $content = Symbol(\"content\");\nexports.$content = $content;\nconst $data = Symbol(\"data\");\nexports.$data = $data;\nconst $dump = Symbol();\nexports.$dump = $dump;\nconst $extra = Symbol(\"extra\");\nexports.$extra = $extra;\nconst $finalize = Symbol();\nexports.$finalize = $finalize;\nconst $flushHTML = Symbol();\nexports.$flushHTML = $flushHTML;\nconst $getAttributeIt = Symbol();\nexports.$getAttributeIt = $getAttributeIt;\nconst $getAttributes = Symbol();\nexports.$getAttributes = $getAttributes;\nconst $getAvailableSpace = Symbol();\nexports.$getAvailableSpace = $getAvailableSpace;\nconst $getChildrenByClass = Symbol();\nexports.$getChildrenByClass = $getChildrenByClass;\nconst $getChildrenByName = Symbol();\nexports.$getChildrenByName = $getChildrenByName;\nconst $getChildrenByNameIt = Symbol();\nexports.$getChildrenByNameIt = $getChildrenByNameIt;\nconst $getDataValue = Symbol();\nexports.$getDataValue = $getDataValue;\nconst $getExtra = Symbol();\nexports.$getExtra = $getExtra;\nconst $getRealChildrenByNameIt = Symbol();\nexports.$getRealChildrenByNameIt = $getRealChildrenByNameIt;\nconst $getChildren = Symbol();\nexports.$getChildren = $getChildren;\nconst $getContainedChildren = Symbol();\nexports.$getContainedChildren = $getContainedChildren;\nconst $getNextPage = Symbol();\nexports.$getNextPage = $getNextPage;\nconst $getSubformParent = Symbol();\nexports.$getSubformParent = $getSubformParent;\nconst $getParent = Symbol();\nexports.$getParent = $getParent;\nconst $getTemplateRoot = Symbol();\nexports.$getTemplateRoot = $getTemplateRoot;\nconst $globalData = Symbol();\nexports.$globalData = $globalData;\nconst $hasSettableValue = Symbol();\nexports.$hasSettableValue = $hasSettableValue;\nconst $ids = Symbol();\nexports.$ids = $ids;\nconst $indexOf = Symbol();\nexports.$indexOf = $indexOf;\nconst $insertAt = Symbol();\nexports.$insertAt = $insertAt;\nconst $isCDATAXml = Symbol();\nexports.$isCDATAXml = $isCDATAXml;\nconst $isBindable = Symbol();\nexports.$isBindable = $isBindable;\nconst $isDataValue = Symbol();\nexports.$isDataValue = $isDataValue;\nconst $isDescendent = Symbol();\nexports.$isDescendent = $isDescendent;\nconst $isNsAgnostic = Symbol();\nexports.$isNsAgnostic = $isNsAgnostic;\nconst $isSplittable = Symbol();\nexports.$isSplittable = $isSplittable;\nconst $isThereMoreWidth = Symbol();\nexports.$isThereMoreWidth = $isThereMoreWidth;\nconst $isTransparent = Symbol();\nexports.$isTransparent = $isTransparent;\nconst $isUsable = Symbol();\nexports.$isUsable = $isUsable;\nconst $lastAttribute = Symbol();\nexports.$lastAttribute = $lastAttribute;\nconst $namespaceId = Symbol(\"namespaceId\");\nexports.$namespaceId = $namespaceId;\nconst $nodeName = Symbol(\"nodeName\");\nexports.$nodeName = $nodeName;\nconst $nsAttributes = Symbol();\nexports.$nsAttributes = $nsAttributes;\nconst $onChild = Symbol();\nexports.$onChild = $onChild;\nconst $onChildCheck = Symbol();\nexports.$onChildCheck = $onChildCheck;\nconst $onText = Symbol();\nexports.$onText = $onText;\nconst $pushGlyphs = Symbol();\nexports.$pushGlyphs = $pushGlyphs;\nconst $popPara = Symbol();\nexports.$popPara = $popPara;\nconst $pushPara = Symbol();\nexports.$pushPara = $pushPara;\nconst $removeChild = Symbol();\nexports.$removeChild = $removeChild;\nconst $root = Symbol(\"root\");\nexports.$root = $root;\nconst $resolvePrototypes = Symbol();\nexports.$resolvePrototypes = $resolvePrototypes;\nconst $searchNode = Symbol();\nexports.$searchNode = $searchNode;\nconst $setId = Symbol();\nexports.$setId = $setId;\nconst $setSetAttributes = Symbol();\nexports.$setSetAttributes = $setSetAttributes;\nconst $setValue = Symbol();\nexports.$setValue = $setValue;\nconst $tabIndex = Symbol();\nexports.$tabIndex = $tabIndex;\nconst $text = Symbol();\nexports.$text = $text;\nconst $toPages = Symbol();\nexports.$toPages = $toPages;\nconst $toHTML = Symbol();\nexports.$toHTML = $toHTML;\nconst $toString = Symbol();\nexports.$toString = $toString;\nconst $toStyle = Symbol();\nexports.$toStyle = $toStyle;\nconst $uid = Symbol(\"uid\");\nexports.$uid = $uid;\n\n/***/ }),\n/* 79 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Binder = void 0;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _template = __w_pdfjs_require__(80);\nvar _som = __w_pdfjs_require__(88);\nvar _xfa_object = __w_pdfjs_require__(87);\nvar _namespaces = __w_pdfjs_require__(81);\nvar _util = __w_pdfjs_require__(2);\nconst NS_DATASETS = _namespaces.NamespaceIds.datasets.id;\nfunction createText(content) {\n const node = new _template.Text({});\n node[_symbol_utils.$content] = content;\n return node;\n}\nclass Binder {\n constructor(root) {\n this.root = root;\n this.datasets = root.datasets;\n this.data = root.datasets?.data || new _xfa_object.XmlObject(_namespaces.NamespaceIds.datasets.id, \"data\");\n this.emptyMerge = this.data[_symbol_utils.$getChildren]().length === 0;\n this.root.form = this.form = root.template[_symbol_utils.$clone]();\n }\n _isConsumeData() {\n return !this.emptyMerge && this._mergeMode;\n }\n _isMatchTemplate() {\n return !this._isConsumeData();\n }\n bind() {\n this._bindElement(this.form, this.data);\n return this.form;\n }\n getData() {\n return this.data;\n }\n _bindValue(formNode, data, picture) {\n formNode[_symbol_utils.$data] = data;\n if (formNode[_symbol_utils.$hasSettableValue]()) {\n if (data[_symbol_utils.$isDataValue]()) {\n const value = data[_symbol_utils.$getDataValue]();\n formNode[_symbol_utils.$setValue](createText(value));\n } else if (formNode instanceof _template.Field && formNode.ui?.choiceList?.open === \"multiSelect\") {\n const value = data[_symbol_utils.$getChildren]().map(child => child[_symbol_utils.$content].trim()).join(\"\\n\");\n formNode[_symbol_utils.$setValue](createText(value));\n } else if (this._isConsumeData()) {\n (0, _util.warn)(`XFA - Nodes haven't the same type.`);\n }\n } else if (!data[_symbol_utils.$isDataValue]() || this._isMatchTemplate()) {\n this._bindElement(formNode, data);\n } else {\n (0, _util.warn)(`XFA - Nodes haven't the same type.`);\n }\n }\n _findDataByNameToConsume(name, isValue, dataNode, global) {\n if (!name) {\n return null;\n }\n let generator, match;\n for (let i = 0; i < 3; i++) {\n generator = dataNode[_symbol_utils.$getRealChildrenByNameIt](name, false, true);\n while (true) {\n match = generator.next().value;\n if (!match) {\n break;\n }\n if (isValue === match[_symbol_utils.$isDataValue]()) {\n return match;\n }\n }\n if (dataNode[_symbol_utils.$namespaceId] === _namespaces.NamespaceIds.datasets.id && dataNode[_symbol_utils.$nodeName] === \"data\") {\n break;\n }\n dataNode = dataNode[_symbol_utils.$getParent]();\n }\n if (!global) {\n return null;\n }\n generator = this.data[_symbol_utils.$getRealChildrenByNameIt](name, true, false);\n match = generator.next().value;\n if (match) {\n return match;\n }\n generator = this.data[_symbol_utils.$getAttributeIt](name, true);\n match = generator.next().value;\n if (match?.[_symbol_utils.$isDataValue]()) {\n return match;\n }\n return null;\n }\n _setProperties(formNode, dataNode) {\n if (!formNode.hasOwnProperty(\"setProperty\")) {\n return;\n }\n for (const {\n ref,\n target,\n connection\n } of formNode.setProperty.children) {\n if (connection) {\n continue;\n }\n if (!ref) {\n continue;\n }\n const nodes = (0, _som.searchNode)(this.root, dataNode, ref, false, false);\n if (!nodes) {\n (0, _util.warn)(`XFA - Invalid reference: ${ref}.`);\n continue;\n }\n const [node] = nodes;\n if (!node[_symbol_utils.$isDescendent](this.data)) {\n (0, _util.warn)(`XFA - Invalid node: must be a data node.`);\n continue;\n }\n const targetNodes = (0, _som.searchNode)(this.root, formNode, target, false, false);\n if (!targetNodes) {\n (0, _util.warn)(`XFA - Invalid target: ${target}.`);\n continue;\n }\n const [targetNode] = targetNodes;\n if (!targetNode[_symbol_utils.$isDescendent](formNode)) {\n (0, _util.warn)(`XFA - Invalid target: must be a property or subproperty.`);\n continue;\n }\n const targetParent = targetNode[_symbol_utils.$getParent]();\n if (targetNode instanceof _template.SetProperty || targetParent instanceof _template.SetProperty) {\n (0, _util.warn)(`XFA - Invalid target: cannot be a setProperty or one of its properties.`);\n continue;\n }\n if (targetNode instanceof _template.BindItems || targetParent instanceof _template.BindItems) {\n (0, _util.warn)(`XFA - Invalid target: cannot be a bindItems or one of its properties.`);\n continue;\n }\n const content = node[_symbol_utils.$text]();\n const name = targetNode[_symbol_utils.$nodeName];\n if (targetNode instanceof _xfa_object.XFAAttribute) {\n const attrs = Object.create(null);\n attrs[name] = content;\n const obj = Reflect.construct(Object.getPrototypeOf(targetParent).constructor, [attrs]);\n targetParent[name] = obj[name];\n continue;\n }\n if (!targetNode.hasOwnProperty(_symbol_utils.$content)) {\n (0, _util.warn)(`XFA - Invalid node to use in setProperty`);\n continue;\n }\n targetNode[_symbol_utils.$data] = node;\n targetNode[_symbol_utils.$content] = content;\n targetNode[_symbol_utils.$finalize]();\n }\n }\n _bindItems(formNode, dataNode) {\n if (!formNode.hasOwnProperty(\"items\") || !formNode.hasOwnProperty(\"bindItems\") || formNode.bindItems.isEmpty()) {\n return;\n }\n for (const item of formNode.items.children) {\n formNode[_symbol_utils.$removeChild](item);\n }\n formNode.items.clear();\n const labels = new _template.Items({});\n const values = new _template.Items({});\n formNode[_symbol_utils.$appendChild](labels);\n formNode.items.push(labels);\n formNode[_symbol_utils.$appendChild](values);\n formNode.items.push(values);\n for (const {\n ref,\n labelRef,\n valueRef,\n connection\n } of formNode.bindItems.children) {\n if (connection) {\n continue;\n }\n if (!ref) {\n continue;\n }\n const nodes = (0, _som.searchNode)(this.root, dataNode, ref, false, false);\n if (!nodes) {\n (0, _util.warn)(`XFA - Invalid reference: ${ref}.`);\n continue;\n }\n for (const node of nodes) {\n if (!node[_symbol_utils.$isDescendent](this.datasets)) {\n (0, _util.warn)(`XFA - Invalid ref (${ref}): must be a datasets child.`);\n continue;\n }\n const labelNodes = (0, _som.searchNode)(this.root, node, labelRef, true, false);\n if (!labelNodes) {\n (0, _util.warn)(`XFA - Invalid label: ${labelRef}.`);\n continue;\n }\n const [labelNode] = labelNodes;\n if (!labelNode[_symbol_utils.$isDescendent](this.datasets)) {\n (0, _util.warn)(`XFA - Invalid label: must be a datasets child.`);\n continue;\n }\n const valueNodes = (0, _som.searchNode)(this.root, node, valueRef, true, false);\n if (!valueNodes) {\n (0, _util.warn)(`XFA - Invalid value: ${valueRef}.`);\n continue;\n }\n const [valueNode] = valueNodes;\n if (!valueNode[_symbol_utils.$isDescendent](this.datasets)) {\n (0, _util.warn)(`XFA - Invalid value: must be a datasets child.`);\n continue;\n }\n const label = createText(labelNode[_symbol_utils.$text]());\n const value = createText(valueNode[_symbol_utils.$text]());\n labels[_symbol_utils.$appendChild](label);\n labels.text.push(label);\n values[_symbol_utils.$appendChild](value);\n values.text.push(value);\n }\n }\n }\n _bindOccurrences(formNode, matches, picture) {\n let baseClone;\n if (matches.length > 1) {\n baseClone = formNode[_symbol_utils.$clone]();\n baseClone[_symbol_utils.$removeChild](baseClone.occur);\n baseClone.occur = null;\n }\n this._bindValue(formNode, matches[0], picture);\n this._setProperties(formNode, matches[0]);\n this._bindItems(formNode, matches[0]);\n if (matches.length === 1) {\n return;\n }\n const parent = formNode[_symbol_utils.$getParent]();\n const name = formNode[_symbol_utils.$nodeName];\n const pos = parent[_symbol_utils.$indexOf](formNode);\n for (let i = 1, ii = matches.length; i < ii; i++) {\n const match = matches[i];\n const clone = baseClone[_symbol_utils.$clone]();\n parent[name].push(clone);\n parent[_symbol_utils.$insertAt](pos + i, clone);\n this._bindValue(clone, match, picture);\n this._setProperties(clone, match);\n this._bindItems(clone, match);\n }\n }\n _createOccurrences(formNode) {\n if (!this.emptyMerge) {\n return;\n }\n const {\n occur\n } = formNode;\n if (!occur || occur.initial <= 1) {\n return;\n }\n const parent = formNode[_symbol_utils.$getParent]();\n const name = formNode[_symbol_utils.$nodeName];\n if (!(parent[name] instanceof _xfa_object.XFAObjectArray)) {\n return;\n }\n let currentNumber;\n if (formNode.name) {\n currentNumber = parent[name].children.filter(e => e.name === formNode.name).length;\n } else {\n currentNumber = parent[name].children.length;\n }\n const pos = parent[_symbol_utils.$indexOf](formNode) + 1;\n const ii = occur.initial - currentNumber;\n if (ii) {\n const nodeClone = formNode[_symbol_utils.$clone]();\n nodeClone[_symbol_utils.$removeChild](nodeClone.occur);\n nodeClone.occur = null;\n parent[name].push(nodeClone);\n parent[_symbol_utils.$insertAt](pos, nodeClone);\n for (let i = 1; i < ii; i++) {\n const clone = nodeClone[_symbol_utils.$clone]();\n parent[name].push(clone);\n parent[_symbol_utils.$insertAt](pos + i, clone);\n }\n }\n }\n _getOccurInfo(formNode) {\n const {\n name,\n occur\n } = formNode;\n if (!occur || !name) {\n return [1, 1];\n }\n const max = occur.max === -1 ? Infinity : occur.max;\n return [occur.min, max];\n }\n _setAndBind(formNode, dataNode) {\n this._setProperties(formNode, dataNode);\n this._bindItems(formNode, dataNode);\n this._bindElement(formNode, dataNode);\n }\n _bindElement(formNode, dataNode) {\n const uselessNodes = [];\n this._createOccurrences(formNode);\n for (const child of formNode[_symbol_utils.$getChildren]()) {\n if (child[_symbol_utils.$data]) {\n continue;\n }\n if (this._mergeMode === undefined && child[_symbol_utils.$nodeName] === \"subform\") {\n this._mergeMode = child.mergeMode === \"consumeData\";\n const dataChildren = dataNode[_symbol_utils.$getChildren]();\n if (dataChildren.length > 0) {\n this._bindOccurrences(child, [dataChildren[0]], null);\n } else if (this.emptyMerge) {\n const nsId = dataNode[_symbol_utils.$namespaceId] === NS_DATASETS ? -1 : dataNode[_symbol_utils.$namespaceId];\n const dataChild = child[_symbol_utils.$data] = new _xfa_object.XmlObject(nsId, child.name || \"root\");\n dataNode[_symbol_utils.$appendChild](dataChild);\n this._bindElement(child, dataChild);\n }\n continue;\n }\n if (!child[_symbol_utils.$isBindable]()) {\n continue;\n }\n let global = false;\n let picture = null;\n let ref = null;\n let match = null;\n if (child.bind) {\n switch (child.bind.match) {\n case \"none\":\n this._setAndBind(child, dataNode);\n continue;\n case \"global\":\n global = true;\n break;\n case \"dataRef\":\n if (!child.bind.ref) {\n (0, _util.warn)(`XFA - ref is empty in node ${child[_symbol_utils.$nodeName]}.`);\n this._setAndBind(child, dataNode);\n continue;\n }\n ref = child.bind.ref;\n break;\n default:\n break;\n }\n if (child.bind.picture) {\n picture = child.bind.picture[_symbol_utils.$content];\n }\n }\n const [min, max] = this._getOccurInfo(child);\n if (ref) {\n match = (0, _som.searchNode)(this.root, dataNode, ref, true, false);\n if (match === null) {\n match = (0, _som.createDataNode)(this.data, dataNode, ref);\n if (!match) {\n continue;\n }\n if (this._isConsumeData()) {\n match[_symbol_utils.$consumed] = true;\n }\n this._setAndBind(child, match);\n continue;\n } else {\n if (this._isConsumeData()) {\n match = match.filter(node => !node[_symbol_utils.$consumed]);\n }\n if (match.length > max) {\n match = match.slice(0, max);\n } else if (match.length === 0) {\n match = null;\n }\n if (match && this._isConsumeData()) {\n match.forEach(node => {\n node[_symbol_utils.$consumed] = true;\n });\n }\n }\n } else {\n if (!child.name) {\n this._setAndBind(child, dataNode);\n continue;\n }\n if (this._isConsumeData()) {\n const matches = [];\n while (matches.length < max) {\n const found = this._findDataByNameToConsume(child.name, child[_symbol_utils.$hasSettableValue](), dataNode, global);\n if (!found) {\n break;\n }\n found[_symbol_utils.$consumed] = true;\n matches.push(found);\n }\n match = matches.length > 0 ? matches : null;\n } else {\n match = dataNode[_symbol_utils.$getRealChildrenByNameIt](child.name, false, this.emptyMerge).next().value;\n if (!match) {\n if (min === 0) {\n uselessNodes.push(child);\n continue;\n }\n const nsId = dataNode[_symbol_utils.$namespaceId] === NS_DATASETS ? -1 : dataNode[_symbol_utils.$namespaceId];\n match = child[_symbol_utils.$data] = new _xfa_object.XmlObject(nsId, child.name);\n if (this.emptyMerge) {\n match[_symbol_utils.$consumed] = true;\n }\n dataNode[_symbol_utils.$appendChild](match);\n this._setAndBind(child, match);\n continue;\n }\n if (this.emptyMerge) {\n match[_symbol_utils.$consumed] = true;\n }\n match = [match];\n }\n }\n if (match) {\n this._bindOccurrences(child, match, picture);\n } else if (min > 0) {\n this._setAndBind(child, dataNode);\n } else {\n uselessNodes.push(child);\n }\n }\n uselessNodes.forEach(node => node[_symbol_utils.$getParent]()[_symbol_utils.$removeChild](node));\n }\n}\nexports.Binder = Binder;\n\n/***/ }),\n/* 80 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Value = exports.Text = exports.TemplateNamespace = exports.Template = exports.SetProperty = exports.Items = exports.Field = exports.BindItems = void 0;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _namespaces = __w_pdfjs_require__(81);\nvar _layout = __w_pdfjs_require__(82);\nvar _html_utils = __w_pdfjs_require__(83);\nvar _xfa_object = __w_pdfjs_require__(87);\nvar _utils = __w_pdfjs_require__(84);\nvar _util = __w_pdfjs_require__(2);\nvar _fonts = __w_pdfjs_require__(85);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _som = __w_pdfjs_require__(88);\nconst TEMPLATE_NS_ID = _namespaces.NamespaceIds.template.id;\nconst SVG_NS = \"http://www.w3.org/2000/svg\";\nconst MAX_ATTEMPTS_FOR_LRTB_LAYOUT = 2;\nconst MAX_EMPTY_PAGES = 3;\nconst DEFAULT_TAB_INDEX = 5000;\nconst HEADING_PATTERN = /^H(\\d+)$/;\nconst MIMES = new Set([\"image/gif\", \"image/jpeg\", \"image/jpg\", \"image/pjpeg\", \"image/png\", \"image/apng\", \"image/x-png\", \"image/bmp\", \"image/x-ms-bmp\", \"image/tiff\", \"image/tif\", \"application/octet-stream\"]);\nconst IMAGES_HEADERS = [[[0x42, 0x4d], \"image/bmp\"], [[0xff, 0xd8, 0xff], \"image/jpeg\"], [[0x49, 0x49, 0x2a, 0x00], \"image/tiff\"], [[0x4d, 0x4d, 0x00, 0x2a], \"image/tiff\"], [[0x47, 0x49, 0x46, 0x38, 0x39, 0x61], \"image/gif\"], [[0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a], \"image/png\"]];\nfunction getBorderDims(node) {\n if (!node || !node.border) {\n return {\n w: 0,\n h: 0\n };\n }\n const borderExtra = node.border[_symbol_utils.$getExtra]();\n if (!borderExtra) {\n return {\n w: 0,\n h: 0\n };\n }\n return {\n w: borderExtra.widths[0] + borderExtra.widths[2] + borderExtra.insets[0] + borderExtra.insets[2],\n h: borderExtra.widths[1] + borderExtra.widths[3] + borderExtra.insets[1] + borderExtra.insets[3]\n };\n}\nfunction hasMargin(node) {\n return node.margin && (node.margin.topInset || node.margin.rightInset || node.margin.bottomInset || node.margin.leftInset);\n}\nfunction _setValue(templateNode, value) {\n if (!templateNode.value) {\n const nodeValue = new Value({});\n templateNode[_symbol_utils.$appendChild](nodeValue);\n templateNode.value = nodeValue;\n }\n templateNode.value[_symbol_utils.$setValue](value);\n}\nfunction* getContainedChildren(node) {\n for (const child of node[_symbol_utils.$getChildren]()) {\n if (child instanceof SubformSet) {\n yield* child[_symbol_utils.$getContainedChildren]();\n continue;\n }\n yield child;\n }\n}\nfunction isRequired(node) {\n return node.validate?.nullTest === \"error\";\n}\nfunction setTabIndex(node) {\n while (node) {\n if (!node.traversal) {\n node[_symbol_utils.$tabIndex] = node[_symbol_utils.$getParent]()[_symbol_utils.$tabIndex];\n return;\n }\n if (node[_symbol_utils.$tabIndex]) {\n return;\n }\n let next = null;\n for (const child of node.traversal[_symbol_utils.$getChildren]()) {\n if (child.operation === \"next\") {\n next = child;\n break;\n }\n }\n if (!next || !next.ref) {\n node[_symbol_utils.$tabIndex] = node[_symbol_utils.$getParent]()[_symbol_utils.$tabIndex];\n return;\n }\n const root = node[_symbol_utils.$getTemplateRoot]();\n node[_symbol_utils.$tabIndex] = ++root[_symbol_utils.$tabIndex];\n const ref = root[_symbol_utils.$searchNode](next.ref, node);\n if (!ref) {\n return;\n }\n node = ref[0];\n }\n}\nfunction applyAssist(obj, attributes) {\n const assist = obj.assist;\n if (assist) {\n const assistTitle = assist[_symbol_utils.$toHTML]();\n if (assistTitle) {\n attributes.title = assistTitle;\n }\n const role = assist.role;\n const match = role.match(HEADING_PATTERN);\n if (match) {\n const ariaRole = \"heading\";\n const ariaLevel = match[1];\n attributes.role = ariaRole;\n attributes[\"aria-level\"] = ariaLevel;\n }\n }\n if (obj.layout === \"table\") {\n attributes.role = \"table\";\n } else if (obj.layout === \"row\") {\n attributes.role = \"row\";\n } else {\n const parent = obj[_symbol_utils.$getParent]();\n if (parent.layout === \"row\") {\n attributes.role = parent.assist?.role === \"TH\" ? \"columnheader\" : \"cell\";\n }\n }\n}\nfunction ariaLabel(obj) {\n if (!obj.assist) {\n return null;\n }\n const assist = obj.assist;\n if (assist.speak && assist.speak[_symbol_utils.$content] !== \"\") {\n return assist.speak[_symbol_utils.$content];\n }\n if (assist.toolTip) {\n return assist.toolTip[_symbol_utils.$content];\n }\n return null;\n}\nfunction valueToHtml(value) {\n return _utils.HTMLResult.success({\n name: \"div\",\n attributes: {\n class: [\"xfaRich\"],\n style: Object.create(null)\n },\n children: [{\n name: \"span\",\n attributes: {\n style: Object.create(null)\n },\n value\n }]\n });\n}\nfunction setFirstUnsplittable(node) {\n const root = node[_symbol_utils.$getTemplateRoot]();\n if (root[_symbol_utils.$extra].firstUnsplittable === null) {\n root[_symbol_utils.$extra].firstUnsplittable = node;\n root[_symbol_utils.$extra].noLayoutFailure = true;\n }\n}\nfunction unsetFirstUnsplittable(node) {\n const root = node[_symbol_utils.$getTemplateRoot]();\n if (root[_symbol_utils.$extra].firstUnsplittable === node) {\n root[_symbol_utils.$extra].noLayoutFailure = false;\n }\n}\nfunction handleBreak(node) {\n if (node[_symbol_utils.$extra]) {\n return false;\n }\n node[_symbol_utils.$extra] = Object.create(null);\n if (node.targetType === \"auto\") {\n return false;\n }\n const root = node[_symbol_utils.$getTemplateRoot]();\n let target = null;\n if (node.target) {\n target = root[_symbol_utils.$searchNode](node.target, node[_symbol_utils.$getParent]());\n if (!target) {\n return false;\n }\n target = target[0];\n }\n const {\n currentPageArea,\n currentContentArea\n } = root[_symbol_utils.$extra];\n if (node.targetType === \"pageArea\") {\n if (!(target instanceof PageArea)) {\n target = null;\n }\n if (node.startNew) {\n node[_symbol_utils.$extra].target = target || currentPageArea;\n return true;\n } else if (target && target !== currentPageArea) {\n node[_symbol_utils.$extra].target = target;\n return true;\n }\n return false;\n }\n if (!(target instanceof ContentArea)) {\n target = null;\n }\n const pageArea = target && target[_symbol_utils.$getParent]();\n let index;\n let nextPageArea = pageArea;\n if (node.startNew) {\n if (target) {\n const contentAreas = pageArea.contentArea.children;\n const indexForCurrent = contentAreas.indexOf(currentContentArea);\n const indexForTarget = contentAreas.indexOf(target);\n if (indexForCurrent !== -1 && indexForCurrent < indexForTarget) {\n nextPageArea = null;\n }\n index = indexForTarget - 1;\n } else {\n index = currentPageArea.contentArea.children.indexOf(currentContentArea);\n }\n } else if (target && target !== currentContentArea) {\n const contentAreas = pageArea.contentArea.children;\n index = contentAreas.indexOf(target) - 1;\n nextPageArea = pageArea === currentPageArea ? null : pageArea;\n } else {\n return false;\n }\n node[_symbol_utils.$extra].target = nextPageArea;\n node[_symbol_utils.$extra].index = index;\n return true;\n}\nfunction handleOverflow(node, extraNode, space) {\n const root = node[_symbol_utils.$getTemplateRoot]();\n const saved = root[_symbol_utils.$extra].noLayoutFailure;\n const savedMethod = extraNode[_symbol_utils.$getSubformParent];\n extraNode[_symbol_utils.$getSubformParent] = () => node;\n root[_symbol_utils.$extra].noLayoutFailure = true;\n const res = extraNode[_symbol_utils.$toHTML](space);\n node[_symbol_utils.$addHTML](res.html, res.bbox);\n root[_symbol_utils.$extra].noLayoutFailure = saved;\n extraNode[_symbol_utils.$getSubformParent] = savedMethod;\n}\nclass AppearanceFilter extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"appearanceFilter\");\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Arc extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"arc\", true);\n this.circular = (0, _utils.getInteger)({\n data: attributes.circular,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.hand = (0, _utils.getStringOption)(attributes.hand, [\"even\", \"left\", \"right\"]);\n this.id = attributes.id || \"\";\n this.startAngle = (0, _utils.getFloat)({\n data: attributes.startAngle,\n defaultValue: 0,\n validate: x => true\n });\n this.sweepAngle = (0, _utils.getFloat)({\n data: attributes.sweepAngle,\n defaultValue: 360,\n validate: x => true\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.edge = null;\n this.fill = null;\n }\n [_symbol_utils.$toHTML]() {\n const edge = this.edge || new Edge({});\n const edgeStyle = edge[_symbol_utils.$toStyle]();\n const style = Object.create(null);\n if (this.fill?.presence === \"visible\") {\n Object.assign(style, this.fill[_symbol_utils.$toStyle]());\n } else {\n style.fill = \"transparent\";\n }\n style.strokeWidth = (0, _html_utils.measureToString)(edge.presence === \"visible\" ? edge.thickness : 0);\n style.stroke = edgeStyle.color;\n let arc;\n const attributes = {\n xmlns: SVG_NS,\n style: {\n width: \"100%\",\n height: \"100%\",\n overflow: \"visible\"\n }\n };\n if (this.sweepAngle === 360) {\n arc = {\n name: \"ellipse\",\n attributes: {\n xmlns: SVG_NS,\n cx: \"50%\",\n cy: \"50%\",\n rx: \"50%\",\n ry: \"50%\",\n style\n }\n };\n } else {\n const startAngle = this.startAngle * Math.PI / 180;\n const sweepAngle = this.sweepAngle * Math.PI / 180;\n const largeArc = this.sweepAngle > 180 ? 1 : 0;\n const [x1, y1, x2, y2] = [50 * (1 + Math.cos(startAngle)), 50 * (1 - Math.sin(startAngle)), 50 * (1 + Math.cos(startAngle + sweepAngle)), 50 * (1 - Math.sin(startAngle + sweepAngle))];\n arc = {\n name: \"path\",\n attributes: {\n xmlns: SVG_NS,\n d: `M ${x1} ${y1} A 50 50 0 ${largeArc} 0 ${x2} ${y2}`,\n vectorEffect: \"non-scaling-stroke\",\n style\n }\n };\n Object.assign(attributes, {\n viewBox: \"0 0 100 100\",\n preserveAspectRatio: \"none\"\n });\n }\n const svg = {\n name: \"svg\",\n children: [arc],\n attributes\n };\n const parent = this[_symbol_utils.$getParent]()[_symbol_utils.$getParent]();\n if (hasMargin(parent)) {\n return _utils.HTMLResult.success({\n name: \"div\",\n attributes: {\n style: {\n display: \"inline\",\n width: \"100%\",\n height: \"100%\"\n }\n },\n children: [svg]\n });\n }\n svg.attributes.style.position = \"absolute\";\n return _utils.HTMLResult.success(svg);\n }\n}\nclass Area extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"area\", true);\n this.colSpan = (0, _utils.getInteger)({\n data: attributes.colSpan,\n defaultValue: 1,\n validate: n => n >= 1 || n === -1\n });\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.x = (0, _utils.getMeasurement)(attributes.x, \"0pt\");\n this.y = (0, _utils.getMeasurement)(attributes.y, \"0pt\");\n this.desc = null;\n this.extras = null;\n this.area = new _xfa_object.XFAObjectArray();\n this.draw = new _xfa_object.XFAObjectArray();\n this.exObject = new _xfa_object.XFAObjectArray();\n this.exclGroup = new _xfa_object.XFAObjectArray();\n this.field = new _xfa_object.XFAObjectArray();\n this.subform = new _xfa_object.XFAObjectArray();\n this.subformSet = new _xfa_object.XFAObjectArray();\n }\n *[_symbol_utils.$getContainedChildren]() {\n yield* getContainedChildren(this);\n }\n [_symbol_utils.$isTransparent]() {\n return true;\n }\n [_symbol_utils.$isBindable]() {\n return true;\n }\n [_symbol_utils.$addHTML](html, bbox) {\n const [x, y, w, h] = bbox;\n this[_symbol_utils.$extra].width = Math.max(this[_symbol_utils.$extra].width, x + w);\n this[_symbol_utils.$extra].height = Math.max(this[_symbol_utils.$extra].height, y + h);\n this[_symbol_utils.$extra].children.push(html);\n }\n [_symbol_utils.$getAvailableSpace]() {\n return this[_symbol_utils.$extra].availableSpace;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const style = (0, _html_utils.toStyle)(this, \"position\");\n const attributes = {\n style,\n id: this[_symbol_utils.$uid],\n class: [\"xfaArea\"]\n };\n if ((0, _html_utils.isPrintOnly)(this)) {\n attributes.class.push(\"xfaPrintOnly\");\n }\n if (this.name) {\n attributes.xfaName = this.name;\n }\n const children = [];\n this[_symbol_utils.$extra] = {\n children,\n width: 0,\n height: 0,\n availableSpace\n };\n const result = this[_symbol_utils.$childrenToHTML]({\n filter: new Set([\"area\", \"draw\", \"field\", \"exclGroup\", \"subform\", \"subformSet\"]),\n include: true\n });\n if (!result.success) {\n if (result.isBreak()) {\n return result;\n }\n delete this[_symbol_utils.$extra];\n return _utils.HTMLResult.FAILURE;\n }\n style.width = (0, _html_utils.measureToString)(this[_symbol_utils.$extra].width);\n style.height = (0, _html_utils.measureToString)(this[_symbol_utils.$extra].height);\n const html = {\n name: \"div\",\n attributes,\n children\n };\n const bbox = [this.x, this.y, this[_symbol_utils.$extra].width, this[_symbol_utils.$extra].height];\n delete this[_symbol_utils.$extra];\n return _utils.HTMLResult.success(html, bbox);\n }\n}\nclass Assist extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"assist\", true);\n this.id = attributes.id || \"\";\n this.role = attributes.role || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.speak = null;\n this.toolTip = null;\n }\n [_symbol_utils.$toHTML]() {\n return this.toolTip?.[_symbol_utils.$content] || null;\n }\n}\nclass Barcode extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"barcode\", true);\n this.charEncoding = (0, _utils.getKeyword)({\n data: attributes.charEncoding ? attributes.charEncoding.toLowerCase() : \"\",\n defaultValue: \"\",\n validate: k => [\"utf-8\", \"big-five\", \"fontspecific\", \"gbk\", \"gb-18030\", \"gb-2312\", \"ksc-5601\", \"none\", \"shift-jis\", \"ucs-2\", \"utf-16\"].includes(k) || k.match(/iso-8859-\\d{2}/)\n });\n this.checksum = (0, _utils.getStringOption)(attributes.checksum, [\"none\", \"1mod10\", \"1mod10_1mod11\", \"2mod10\", \"auto\"]);\n this.dataColumnCount = (0, _utils.getInteger)({\n data: attributes.dataColumnCount,\n defaultValue: -1,\n validate: x => x >= 0\n });\n this.dataLength = (0, _utils.getInteger)({\n data: attributes.dataLength,\n defaultValue: -1,\n validate: x => x >= 0\n });\n this.dataPrep = (0, _utils.getStringOption)(attributes.dataPrep, [\"none\", \"flateCompress\"]);\n this.dataRowCount = (0, _utils.getInteger)({\n data: attributes.dataRowCount,\n defaultValue: -1,\n validate: x => x >= 0\n });\n this.endChar = attributes.endChar || \"\";\n this.errorCorrectionLevel = (0, _utils.getInteger)({\n data: attributes.errorCorrectionLevel,\n defaultValue: -1,\n validate: x => x >= 0 && x <= 8\n });\n this.id = attributes.id || \"\";\n this.moduleHeight = (0, _utils.getMeasurement)(attributes.moduleHeight, \"5mm\");\n this.moduleWidth = (0, _utils.getMeasurement)(attributes.moduleWidth, \"0.25mm\");\n this.printCheckDigit = (0, _utils.getInteger)({\n data: attributes.printCheckDigit,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.rowColumnRatio = (0, _utils.getRatio)(attributes.rowColumnRatio);\n this.startChar = attributes.startChar || \"\";\n this.textLocation = (0, _utils.getStringOption)(attributes.textLocation, [\"below\", \"above\", \"aboveEmbedded\", \"belowEmbedded\", \"none\"]);\n this.truncate = (0, _utils.getInteger)({\n data: attributes.truncate,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.type = (0, _utils.getStringOption)(attributes.type ? attributes.type.toLowerCase() : \"\", [\"aztec\", \"codabar\", \"code2of5industrial\", \"code2of5interleaved\", \"code2of5matrix\", \"code2of5standard\", \"code3of9\", \"code3of9extended\", \"code11\", \"code49\", \"code93\", \"code128\", \"code128a\", \"code128b\", \"code128c\", \"code128sscc\", \"datamatrix\", \"ean8\", \"ean8add2\", \"ean8add5\", \"ean13\", \"ean13add2\", \"ean13add5\", \"ean13pwcd\", \"fim\", \"logmars\", \"maxicode\", \"msi\", \"pdf417\", \"pdf417macro\", \"plessey\", \"postauscust2\", \"postauscust3\", \"postausreplypaid\", \"postausstandard\", \"postukrm4scc\", \"postusdpbc\", \"postusimb\", \"postusstandard\", \"postus5zip\", \"qrcode\", \"rfid\", \"rss14\", \"rss14expanded\", \"rss14limited\", \"rss14stacked\", \"rss14stackedomni\", \"rss14truncated\", \"telepen\", \"ucc128\", \"ucc128random\", \"ucc128sscc\", \"upca\", \"upcaadd2\", \"upcaadd5\", \"upcapwcd\", \"upce\", \"upceadd2\", \"upceadd5\", \"upcean2\", \"upcean5\", \"upsmaxicode\"]);\n this.upsMode = (0, _utils.getStringOption)(attributes.upsMode, [\"usCarrier\", \"internationalCarrier\", \"secureSymbol\", \"standardSymbol\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.wideNarrowRatio = (0, _utils.getRatio)(attributes.wideNarrowRatio);\n this.encrypt = null;\n this.extras = null;\n }\n}\nclass Bind extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"bind\", true);\n this.match = (0, _utils.getStringOption)(attributes.match, [\"once\", \"dataRef\", \"global\", \"none\"]);\n this.ref = attributes.ref || \"\";\n this.picture = null;\n }\n}\nclass BindItems extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"bindItems\");\n this.connection = attributes.connection || \"\";\n this.labelRef = attributes.labelRef || \"\";\n this.ref = attributes.ref || \"\";\n this.valueRef = attributes.valueRef || \"\";\n }\n}\nexports.BindItems = BindItems;\nclass Bookend extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"bookend\");\n this.id = attributes.id || \"\";\n this.leader = attributes.leader || \"\";\n this.trailer = attributes.trailer || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass BooleanElement extends _xfa_object.Option01 {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"boolean\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$toHTML](availableSpace) {\n return valueToHtml(this[_symbol_utils.$content] === 1 ? \"1\" : \"0\");\n }\n}\nclass Border extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"border\", true);\n this.break = (0, _utils.getStringOption)(attributes.break, [\"close\", \"open\"]);\n this.hand = (0, _utils.getStringOption)(attributes.hand, [\"even\", \"left\", \"right\"]);\n this.id = attributes.id || \"\";\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.corner = new _xfa_object.XFAObjectArray(4);\n this.edge = new _xfa_object.XFAObjectArray(4);\n this.extras = null;\n this.fill = null;\n this.margin = null;\n }\n [_symbol_utils.$getExtra]() {\n if (!this[_symbol_utils.$extra]) {\n const edges = this.edge.children.slice();\n if (edges.length < 4) {\n const defaultEdge = edges.at(-1) || new Edge({});\n for (let i = edges.length; i < 4; i++) {\n edges.push(defaultEdge);\n }\n }\n const widths = edges.map(edge => edge.thickness);\n const insets = [0, 0, 0, 0];\n if (this.margin) {\n insets[0] = this.margin.topInset;\n insets[1] = this.margin.rightInset;\n insets[2] = this.margin.bottomInset;\n insets[3] = this.margin.leftInset;\n }\n this[_symbol_utils.$extra] = {\n widths,\n insets,\n edges\n };\n }\n return this[_symbol_utils.$extra];\n }\n [_symbol_utils.$toStyle]() {\n const {\n edges\n } = this[_symbol_utils.$getExtra]();\n const edgeStyles = edges.map(node => {\n const style = node[_symbol_utils.$toStyle]();\n style.color ||= \"#000000\";\n return style;\n });\n const style = Object.create(null);\n if (this.margin) {\n Object.assign(style, this.margin[_symbol_utils.$toStyle]());\n }\n if (this.fill?.presence === \"visible\") {\n Object.assign(style, this.fill[_symbol_utils.$toStyle]());\n }\n if (this.corner.children.some(node => node.radius !== 0)) {\n const cornerStyles = this.corner.children.map(node => node[_symbol_utils.$toStyle]());\n if (cornerStyles.length === 2 || cornerStyles.length === 3) {\n const last = cornerStyles.at(-1);\n for (let i = cornerStyles.length; i < 4; i++) {\n cornerStyles.push(last);\n }\n }\n style.borderRadius = cornerStyles.map(s => s.radius).join(\" \");\n }\n switch (this.presence) {\n case \"invisible\":\n case \"hidden\":\n style.borderStyle = \"\";\n break;\n case \"inactive\":\n style.borderStyle = \"none\";\n break;\n default:\n style.borderStyle = edgeStyles.map(s => s.style).join(\" \");\n break;\n }\n style.borderWidth = edgeStyles.map(s => s.width).join(\" \");\n style.borderColor = edgeStyles.map(s => s.color).join(\" \");\n return style;\n }\n}\nclass Break extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"break\", true);\n this.after = (0, _utils.getStringOption)(attributes.after, [\"auto\", \"contentArea\", \"pageArea\", \"pageEven\", \"pageOdd\"]);\n this.afterTarget = attributes.afterTarget || \"\";\n this.before = (0, _utils.getStringOption)(attributes.before, [\"auto\", \"contentArea\", \"pageArea\", \"pageEven\", \"pageOdd\"]);\n this.beforeTarget = attributes.beforeTarget || \"\";\n this.bookendLeader = attributes.bookendLeader || \"\";\n this.bookendTrailer = attributes.bookendTrailer || \"\";\n this.id = attributes.id || \"\";\n this.overflowLeader = attributes.overflowLeader || \"\";\n this.overflowTarget = attributes.overflowTarget || \"\";\n this.overflowTrailer = attributes.overflowTrailer || \"\";\n this.startNew = (0, _utils.getInteger)({\n data: attributes.startNew,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n }\n}\nclass BreakAfter extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"breakAfter\", true);\n this.id = attributes.id || \"\";\n this.leader = attributes.leader || \"\";\n this.startNew = (0, _utils.getInteger)({\n data: attributes.startNew,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.target = attributes.target || \"\";\n this.targetType = (0, _utils.getStringOption)(attributes.targetType, [\"auto\", \"contentArea\", \"pageArea\"]);\n this.trailer = attributes.trailer || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.script = null;\n }\n}\nclass BreakBefore extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"breakBefore\", true);\n this.id = attributes.id || \"\";\n this.leader = attributes.leader || \"\";\n this.startNew = (0, _utils.getInteger)({\n data: attributes.startNew,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.target = attributes.target || \"\";\n this.targetType = (0, _utils.getStringOption)(attributes.targetType, [\"auto\", \"contentArea\", \"pageArea\"]);\n this.trailer = attributes.trailer || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.script = null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n this[_symbol_utils.$extra] = {};\n return _utils.HTMLResult.FAILURE;\n }\n}\nclass Button extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"button\", true);\n this.highlight = (0, _utils.getStringOption)(attributes.highlight, [\"inverted\", \"none\", \"outline\", \"push\"]);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const parent = this[_symbol_utils.$getParent]();\n const grandpa = parent[_symbol_utils.$getParent]();\n const htmlButton = {\n name: \"button\",\n attributes: {\n id: this[_symbol_utils.$uid],\n class: [\"xfaButton\"],\n style: {}\n },\n children: []\n };\n for (const event of grandpa.event.children) {\n if (event.activity !== \"click\" || !event.script) {\n continue;\n }\n const jsURL = (0, _core_utils.recoverJsURL)(event.script[_symbol_utils.$content]);\n if (!jsURL) {\n continue;\n }\n const href = (0, _html_utils.fixURL)(jsURL.url);\n if (!href) {\n continue;\n }\n htmlButton.children.push({\n name: \"a\",\n attributes: {\n id: \"link\" + this[_symbol_utils.$uid],\n href,\n newWindow: jsURL.newWindow,\n class: [\"xfaLink\"],\n style: {}\n },\n children: []\n });\n }\n return _utils.HTMLResult.success(htmlButton);\n }\n}\nclass Calculate extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"calculate\", true);\n this.id = attributes.id || \"\";\n this.override = (0, _utils.getStringOption)(attributes.override, [\"disabled\", \"error\", \"ignore\", \"warning\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.message = null;\n this.script = null;\n }\n}\nclass Caption extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"caption\", true);\n this.id = attributes.id || \"\";\n this.placement = (0, _utils.getStringOption)(attributes.placement, [\"left\", \"bottom\", \"inline\", \"right\", \"top\"]);\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.reserve = Math.ceil((0, _utils.getMeasurement)(attributes.reserve));\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.font = null;\n this.margin = null;\n this.para = null;\n this.value = null;\n }\n [_symbol_utils.$setValue](value) {\n _setValue(this, value);\n }\n [_symbol_utils.$getExtra](availableSpace) {\n if (!this[_symbol_utils.$extra]) {\n let {\n width,\n height\n } = availableSpace;\n switch (this.placement) {\n case \"left\":\n case \"right\":\n case \"inline\":\n width = this.reserve <= 0 ? width : this.reserve;\n break;\n case \"top\":\n case \"bottom\":\n height = this.reserve <= 0 ? height : this.reserve;\n break;\n }\n this[_symbol_utils.$extra] = (0, _html_utils.layoutNode)(this, {\n width,\n height\n });\n }\n return this[_symbol_utils.$extra];\n }\n [_symbol_utils.$toHTML](availableSpace) {\n if (!this.value) {\n return _utils.HTMLResult.EMPTY;\n }\n this[_symbol_utils.$pushPara]();\n const value = this.value[_symbol_utils.$toHTML](availableSpace).html;\n if (!value) {\n this[_symbol_utils.$popPara]();\n return _utils.HTMLResult.EMPTY;\n }\n const savedReserve = this.reserve;\n if (this.reserve <= 0) {\n const {\n w,\n h\n } = this[_symbol_utils.$getExtra](availableSpace);\n switch (this.placement) {\n case \"left\":\n case \"right\":\n case \"inline\":\n this.reserve = w;\n break;\n case \"top\":\n case \"bottom\":\n this.reserve = h;\n break;\n }\n }\n const children = [];\n if (typeof value === \"string\") {\n children.push({\n name: \"#text\",\n value\n });\n } else {\n children.push(value);\n }\n const style = (0, _html_utils.toStyle)(this, \"font\", \"margin\", \"visibility\");\n switch (this.placement) {\n case \"left\":\n case \"right\":\n if (this.reserve > 0) {\n style.width = (0, _html_utils.measureToString)(this.reserve);\n }\n break;\n case \"top\":\n case \"bottom\":\n if (this.reserve > 0) {\n style.height = (0, _html_utils.measureToString)(this.reserve);\n }\n break;\n }\n (0, _html_utils.setPara)(this, null, value);\n this[_symbol_utils.$popPara]();\n this.reserve = savedReserve;\n return _utils.HTMLResult.success({\n name: \"div\",\n attributes: {\n style,\n class: [\"xfaCaption\"]\n },\n children\n });\n }\n}\nclass Certificate extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"certificate\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Certificates extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"certificates\", true);\n this.credentialServerPolicy = (0, _utils.getStringOption)(attributes.credentialServerPolicy, [\"optional\", \"required\"]);\n this.id = attributes.id || \"\";\n this.url = attributes.url || \"\";\n this.urlPolicy = attributes.urlPolicy || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.encryption = null;\n this.issuers = null;\n this.keyUsage = null;\n this.oids = null;\n this.signing = null;\n this.subjectDNs = null;\n }\n}\nclass CheckButton extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"checkButton\", true);\n this.id = attributes.id || \"\";\n this.mark = (0, _utils.getStringOption)(attributes.mark, [\"default\", \"check\", \"circle\", \"cross\", \"diamond\", \"square\", \"star\"]);\n this.shape = (0, _utils.getStringOption)(attributes.shape, [\"square\", \"round\"]);\n this.size = (0, _utils.getMeasurement)(attributes.size, \"10pt\");\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.border = null;\n this.extras = null;\n this.margin = null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const style = (0, _html_utils.toStyle)(\"margin\");\n const size = (0, _html_utils.measureToString)(this.size);\n style.width = style.height = size;\n let type;\n let className;\n let groupId;\n const field = this[_symbol_utils.$getParent]()[_symbol_utils.$getParent]();\n const items = field.items.children.length && field.items.children[0][_symbol_utils.$toHTML]().html || [];\n const exportedValue = {\n on: (items[0] !== undefined ? items[0] : \"on\").toString(),\n off: (items[1] !== undefined ? items[1] : \"off\").toString()\n };\n const value = field.value?.[_symbol_utils.$text]() || \"off\";\n const checked = value === exportedValue.on || undefined;\n const container = field[_symbol_utils.$getSubformParent]();\n const fieldId = field[_symbol_utils.$uid];\n let dataId;\n if (container instanceof ExclGroup) {\n groupId = container[_symbol_utils.$uid];\n type = \"radio\";\n className = \"xfaRadio\";\n dataId = container[_symbol_utils.$data]?.[_symbol_utils.$uid] || container[_symbol_utils.$uid];\n } else {\n type = \"checkbox\";\n className = \"xfaCheckbox\";\n dataId = field[_symbol_utils.$data]?.[_symbol_utils.$uid] || field[_symbol_utils.$uid];\n }\n const input = {\n name: \"input\",\n attributes: {\n class: [className],\n style,\n fieldId,\n dataId,\n type,\n checked,\n xfaOn: exportedValue.on,\n xfaOff: exportedValue.off,\n \"aria-label\": ariaLabel(field),\n \"aria-required\": false\n }\n };\n if (groupId) {\n input.attributes.name = groupId;\n }\n if (isRequired(field)) {\n input.attributes[\"aria-required\"] = true;\n input.attributes.required = true;\n }\n return _utils.HTMLResult.success({\n name: \"label\",\n attributes: {\n class: [\"xfaLabel\"]\n },\n children: [input]\n });\n }\n}\nclass ChoiceList extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"choiceList\", true);\n this.commitOn = (0, _utils.getStringOption)(attributes.commitOn, [\"select\", \"exit\"]);\n this.id = attributes.id || \"\";\n this.open = (0, _utils.getStringOption)(attributes.open, [\"userControl\", \"always\", \"multiSelect\", \"onEntry\"]);\n this.textEntry = (0, _utils.getInteger)({\n data: attributes.textEntry,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.border = null;\n this.extras = null;\n this.margin = null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const style = (0, _html_utils.toStyle)(this, \"border\", \"margin\");\n const ui = this[_symbol_utils.$getParent]();\n const field = ui[_symbol_utils.$getParent]();\n const fontSize = field.font?.size || 10;\n const optionStyle = {\n fontSize: `calc(${fontSize}px * var(--scale-factor))`\n };\n const children = [];\n if (field.items.children.length > 0) {\n const items = field.items;\n let displayedIndex = 0;\n let saveIndex = 0;\n if (items.children.length === 2) {\n displayedIndex = items.children[0].save;\n saveIndex = 1 - displayedIndex;\n }\n const displayed = items.children[displayedIndex][_symbol_utils.$toHTML]().html;\n const values = items.children[saveIndex][_symbol_utils.$toHTML]().html;\n let selected = false;\n const value = field.value?.[_symbol_utils.$text]() || \"\";\n for (let i = 0, ii = displayed.length; i < ii; i++) {\n const option = {\n name: \"option\",\n attributes: {\n value: values[i] || displayed[i],\n style: optionStyle\n },\n value: displayed[i]\n };\n if (values[i] === value) {\n option.attributes.selected = selected = true;\n }\n children.push(option);\n }\n if (!selected) {\n children.splice(0, 0, {\n name: \"option\",\n attributes: {\n hidden: true,\n selected: true\n },\n value: \" \"\n });\n }\n }\n const selectAttributes = {\n class: [\"xfaSelect\"],\n fieldId: field[_symbol_utils.$uid],\n dataId: field[_symbol_utils.$data]?.[_symbol_utils.$uid] || field[_symbol_utils.$uid],\n style,\n \"aria-label\": ariaLabel(field),\n \"aria-required\": false\n };\n if (isRequired(field)) {\n selectAttributes[\"aria-required\"] = true;\n selectAttributes.required = true;\n }\n if (this.open === \"multiSelect\") {\n selectAttributes.multiple = true;\n }\n return _utils.HTMLResult.success({\n name: \"label\",\n attributes: {\n class: [\"xfaLabel\"]\n },\n children: [{\n name: \"select\",\n children,\n attributes: selectAttributes\n }]\n });\n }\n}\nclass Color extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"color\", true);\n this.cSpace = (0, _utils.getStringOption)(attributes.cSpace, [\"SRGB\"]);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.value = attributes.value ? (0, _utils.getColor)(attributes.value) : \"\";\n this.extras = null;\n }\n [_symbol_utils.$hasSettableValue]() {\n return false;\n }\n [_symbol_utils.$toStyle]() {\n return this.value ? _util.Util.makeHexColor(this.value.r, this.value.g, this.value.b) : null;\n }\n}\nclass Comb extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"comb\");\n this.id = attributes.id || \"\";\n this.numberOfCells = (0, _utils.getInteger)({\n data: attributes.numberOfCells,\n defaultValue: 0,\n validate: x => x >= 0\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Connect extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"connect\", true);\n this.connection = attributes.connection || \"\";\n this.id = attributes.id || \"\";\n this.ref = attributes.ref || \"\";\n this.usage = (0, _utils.getStringOption)(attributes.usage, [\"exportAndImport\", \"exportOnly\", \"importOnly\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.picture = null;\n }\n}\nclass ContentArea extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"contentArea\", true);\n this.h = (0, _utils.getMeasurement)(attributes.h);\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.w = (0, _utils.getMeasurement)(attributes.w);\n this.x = (0, _utils.getMeasurement)(attributes.x, \"0pt\");\n this.y = (0, _utils.getMeasurement)(attributes.y, \"0pt\");\n this.desc = null;\n this.extras = null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const left = (0, _html_utils.measureToString)(this.x);\n const top = (0, _html_utils.measureToString)(this.y);\n const style = {\n left,\n top,\n width: (0, _html_utils.measureToString)(this.w),\n height: (0, _html_utils.measureToString)(this.h)\n };\n const classNames = [\"xfaContentarea\"];\n if ((0, _html_utils.isPrintOnly)(this)) {\n classNames.push(\"xfaPrintOnly\");\n }\n return _utils.HTMLResult.success({\n name: \"div\",\n children: [],\n attributes: {\n style,\n class: classNames,\n id: this[_symbol_utils.$uid]\n }\n });\n }\n}\nclass Corner extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"corner\", true);\n this.id = attributes.id || \"\";\n this.inverted = (0, _utils.getInteger)({\n data: attributes.inverted,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.join = (0, _utils.getStringOption)(attributes.join, [\"square\", \"round\"]);\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.radius = (0, _utils.getMeasurement)(attributes.radius);\n this.stroke = (0, _utils.getStringOption)(attributes.stroke, [\"solid\", \"dashDot\", \"dashDotDot\", \"dashed\", \"dotted\", \"embossed\", \"etched\", \"lowered\", \"raised\"]);\n this.thickness = (0, _utils.getMeasurement)(attributes.thickness, \"0.5pt\");\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.color = null;\n this.extras = null;\n }\n [_symbol_utils.$toStyle]() {\n const style = (0, _html_utils.toStyle)(this, \"visibility\");\n style.radius = (0, _html_utils.measureToString)(this.join === \"square\" ? 0 : this.radius);\n return style;\n }\n}\nclass DateElement extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"date\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$finalize]() {\n const date = this[_symbol_utils.$content].trim();\n this[_symbol_utils.$content] = date ? new Date(date) : null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n return valueToHtml(this[_symbol_utils.$content] ? this[_symbol_utils.$content].toString() : \"\");\n }\n}\nclass DateTime extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"dateTime\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$finalize]() {\n const date = this[_symbol_utils.$content].trim();\n this[_symbol_utils.$content] = date ? new Date(date) : null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n return valueToHtml(this[_symbol_utils.$content] ? this[_symbol_utils.$content].toString() : \"\");\n }\n}\nclass DateTimeEdit extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"dateTimeEdit\", true);\n this.hScrollPolicy = (0, _utils.getStringOption)(attributes.hScrollPolicy, [\"auto\", \"off\", \"on\"]);\n this.id = attributes.id || \"\";\n this.picker = (0, _utils.getStringOption)(attributes.picker, [\"host\", \"none\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.border = null;\n this.comb = null;\n this.extras = null;\n this.margin = null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const style = (0, _html_utils.toStyle)(this, \"border\", \"font\", \"margin\");\n const field = this[_symbol_utils.$getParent]()[_symbol_utils.$getParent]();\n const html = {\n name: \"input\",\n attributes: {\n type: \"text\",\n fieldId: field[_symbol_utils.$uid],\n dataId: field[_symbol_utils.$data]?.[_symbol_utils.$uid] || field[_symbol_utils.$uid],\n class: [\"xfaTextfield\"],\n style,\n \"aria-label\": ariaLabel(field),\n \"aria-required\": false\n }\n };\n if (isRequired(field)) {\n html.attributes[\"aria-required\"] = true;\n html.attributes.required = true;\n }\n return _utils.HTMLResult.success({\n name: \"label\",\n attributes: {\n class: [\"xfaLabel\"]\n },\n children: [html]\n });\n }\n}\nclass Decimal extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"decimal\");\n this.fracDigits = (0, _utils.getInteger)({\n data: attributes.fracDigits,\n defaultValue: 2,\n validate: x => true\n });\n this.id = attributes.id || \"\";\n this.leadDigits = (0, _utils.getInteger)({\n data: attributes.leadDigits,\n defaultValue: -1,\n validate: x => true\n });\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$finalize]() {\n const number = parseFloat(this[_symbol_utils.$content].trim());\n this[_symbol_utils.$content] = isNaN(number) ? null : number;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n return valueToHtml(this[_symbol_utils.$content] !== null ? this[_symbol_utils.$content].toString() : \"\");\n }\n}\nclass DefaultUi extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"defaultUi\", true);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n }\n}\nclass Desc extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"desc\", true);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.boolean = new _xfa_object.XFAObjectArray();\n this.date = new _xfa_object.XFAObjectArray();\n this.dateTime = new _xfa_object.XFAObjectArray();\n this.decimal = new _xfa_object.XFAObjectArray();\n this.exData = new _xfa_object.XFAObjectArray();\n this.float = new _xfa_object.XFAObjectArray();\n this.image = new _xfa_object.XFAObjectArray();\n this.integer = new _xfa_object.XFAObjectArray();\n this.text = new _xfa_object.XFAObjectArray();\n this.time = new _xfa_object.XFAObjectArray();\n }\n}\nclass DigestMethod extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"digestMethod\", [\"\", \"SHA1\", \"SHA256\", \"SHA512\", \"RIPEMD160\"]);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass DigestMethods extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"digestMethods\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.digestMethod = new _xfa_object.XFAObjectArray();\n }\n}\nclass Draw extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"draw\", true);\n this.anchorType = (0, _utils.getStringOption)(attributes.anchorType, [\"topLeft\", \"bottomCenter\", \"bottomLeft\", \"bottomRight\", \"middleCenter\", \"middleLeft\", \"middleRight\", \"topCenter\", \"topRight\"]);\n this.colSpan = (0, _utils.getInteger)({\n data: attributes.colSpan,\n defaultValue: 1,\n validate: n => n >= 1 || n === -1\n });\n this.h = attributes.h ? (0, _utils.getMeasurement)(attributes.h) : \"\";\n this.hAlign = (0, _utils.getStringOption)(attributes.hAlign, [\"left\", \"center\", \"justify\", \"justifyAll\", \"radix\", \"right\"]);\n this.id = attributes.id || \"\";\n this.locale = attributes.locale || \"\";\n this.maxH = (0, _utils.getMeasurement)(attributes.maxH, \"0pt\");\n this.maxW = (0, _utils.getMeasurement)(attributes.maxW, \"0pt\");\n this.minH = (0, _utils.getMeasurement)(attributes.minH, \"0pt\");\n this.minW = (0, _utils.getMeasurement)(attributes.minW, \"0pt\");\n this.name = attributes.name || \"\";\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.rotate = (0, _utils.getInteger)({\n data: attributes.rotate,\n defaultValue: 0,\n validate: x => x % 90 === 0\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.w = attributes.w ? (0, _utils.getMeasurement)(attributes.w) : \"\";\n this.x = (0, _utils.getMeasurement)(attributes.x, \"0pt\");\n this.y = (0, _utils.getMeasurement)(attributes.y, \"0pt\");\n this.assist = null;\n this.border = null;\n this.caption = null;\n this.desc = null;\n this.extras = null;\n this.font = null;\n this.keep = null;\n this.margin = null;\n this.para = null;\n this.traversal = null;\n this.ui = null;\n this.value = null;\n this.setProperty = new _xfa_object.XFAObjectArray();\n }\n [_symbol_utils.$setValue](value) {\n _setValue(this, value);\n }\n [_symbol_utils.$toHTML](availableSpace) {\n setTabIndex(this);\n if (this.presence === \"hidden\" || this.presence === \"inactive\") {\n return _utils.HTMLResult.EMPTY;\n }\n (0, _html_utils.fixDimensions)(this);\n this[_symbol_utils.$pushPara]();\n const savedW = this.w;\n const savedH = this.h;\n const {\n w,\n h,\n isBroken\n } = (0, _html_utils.layoutNode)(this, availableSpace);\n if (w && this.w === \"\") {\n if (isBroken && this[_symbol_utils.$getSubformParent]()[_symbol_utils.$isThereMoreWidth]()) {\n this[_symbol_utils.$popPara]();\n return _utils.HTMLResult.FAILURE;\n }\n this.w = w;\n }\n if (h && this.h === \"\") {\n this.h = h;\n }\n setFirstUnsplittable(this);\n if (!(0, _layout.checkDimensions)(this, availableSpace)) {\n this.w = savedW;\n this.h = savedH;\n this[_symbol_utils.$popPara]();\n return _utils.HTMLResult.FAILURE;\n }\n unsetFirstUnsplittable(this);\n const style = (0, _html_utils.toStyle)(this, \"font\", \"hAlign\", \"dimensions\", \"position\", \"presence\", \"rotate\", \"anchorType\", \"border\", \"margin\");\n (0, _html_utils.setMinMaxDimensions)(this, style);\n if (style.margin) {\n style.padding = style.margin;\n delete style.margin;\n }\n const classNames = [\"xfaDraw\"];\n if (this.font) {\n classNames.push(\"xfaFont\");\n }\n if ((0, _html_utils.isPrintOnly)(this)) {\n classNames.push(\"xfaPrintOnly\");\n }\n const attributes = {\n style,\n id: this[_symbol_utils.$uid],\n class: classNames\n };\n if (this.name) {\n attributes.xfaName = this.name;\n }\n const html = {\n name: \"div\",\n attributes,\n children: []\n };\n applyAssist(this, attributes);\n const bbox = (0, _html_utils.computeBbox)(this, html, availableSpace);\n const value = this.value ? this.value[_symbol_utils.$toHTML](availableSpace).html : null;\n if (value === null) {\n this.w = savedW;\n this.h = savedH;\n this[_symbol_utils.$popPara]();\n return _utils.HTMLResult.success((0, _html_utils.createWrapper)(this, html), bbox);\n }\n html.children.push(value);\n (0, _html_utils.setPara)(this, style, value);\n this.w = savedW;\n this.h = savedH;\n this[_symbol_utils.$popPara]();\n return _utils.HTMLResult.success((0, _html_utils.createWrapper)(this, html), bbox);\n }\n}\nclass Edge extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"edge\", true);\n this.cap = (0, _utils.getStringOption)(attributes.cap, [\"square\", \"butt\", \"round\"]);\n this.id = attributes.id || \"\";\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.stroke = (0, _utils.getStringOption)(attributes.stroke, [\"solid\", \"dashDot\", \"dashDotDot\", \"dashed\", \"dotted\", \"embossed\", \"etched\", \"lowered\", \"raised\"]);\n this.thickness = (0, _utils.getMeasurement)(attributes.thickness, \"0.5pt\");\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.color = null;\n this.extras = null;\n }\n [_symbol_utils.$toStyle]() {\n const style = (0, _html_utils.toStyle)(this, \"visibility\");\n Object.assign(style, {\n linecap: this.cap,\n width: (0, _html_utils.measureToString)(this.thickness),\n color: this.color ? this.color[_symbol_utils.$toStyle]() : \"#000000\",\n style: \"\"\n });\n if (this.presence !== \"visible\") {\n style.style = \"none\";\n } else {\n switch (this.stroke) {\n case \"solid\":\n style.style = \"solid\";\n break;\n case \"dashDot\":\n style.style = \"dashed\";\n break;\n case \"dashDotDot\":\n style.style = \"dashed\";\n break;\n case \"dashed\":\n style.style = \"dashed\";\n break;\n case \"dotted\":\n style.style = \"dotted\";\n break;\n case \"embossed\":\n style.style = \"ridge\";\n break;\n case \"etched\":\n style.style = \"groove\";\n break;\n case \"lowered\":\n style.style = \"inset\";\n break;\n case \"raised\":\n style.style = \"outset\";\n break;\n }\n }\n return style;\n }\n}\nclass Encoding extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"encoding\", [\"adbe.x509.rsa_sha1\", \"adbe.pkcs7.detached\", \"adbe.pkcs7.sha1\"]);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Encodings extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"encodings\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.encoding = new _xfa_object.XFAObjectArray();\n }\n}\nclass Encrypt extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"encrypt\", true);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.certificate = null;\n }\n}\nclass EncryptData extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"encryptData\", true);\n this.id = attributes.id || \"\";\n this.operation = (0, _utils.getStringOption)(attributes.operation, [\"encrypt\", \"decrypt\"]);\n this.target = attributes.target || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.filter = null;\n this.manifest = null;\n }\n}\nclass Encryption extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"encryption\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.certificate = new _xfa_object.XFAObjectArray();\n }\n}\nclass EncryptionMethod extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"encryptionMethod\", [\"\", \"AES256-CBC\", \"TRIPLEDES-CBC\", \"AES128-CBC\", \"AES192-CBC\"]);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass EncryptionMethods extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"encryptionMethods\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.encryptionMethod = new _xfa_object.XFAObjectArray();\n }\n}\nclass Event extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"event\", true);\n this.activity = (0, _utils.getStringOption)(attributes.activity, [\"click\", \"change\", \"docClose\", \"docReady\", \"enter\", \"exit\", \"full\", \"indexChange\", \"initialize\", \"mouseDown\", \"mouseEnter\", \"mouseExit\", \"mouseUp\", \"postExecute\", \"postOpen\", \"postPrint\", \"postSave\", \"postSign\", \"postSubmit\", \"preExecute\", \"preOpen\", \"prePrint\", \"preSave\", \"preSign\", \"preSubmit\", \"ready\", \"validationState\"]);\n this.id = attributes.id || \"\";\n this.listen = (0, _utils.getStringOption)(attributes.listen, [\"refOnly\", \"refAndDescendents\"]);\n this.name = attributes.name || \"\";\n this.ref = attributes.ref || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.encryptData = null;\n this.execute = null;\n this.script = null;\n this.signData = null;\n this.submit = null;\n }\n}\nclass ExData extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"exData\");\n this.contentType = attributes.contentType || \"\";\n this.href = attributes.href || \"\";\n this.id = attributes.id || \"\";\n this.maxLength = (0, _utils.getInteger)({\n data: attributes.maxLength,\n defaultValue: -1,\n validate: x => x >= -1\n });\n this.name = attributes.name || \"\";\n this.rid = attributes.rid || \"\";\n this.transferEncoding = (0, _utils.getStringOption)(attributes.transferEncoding, [\"none\", \"base64\", \"package\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$isCDATAXml]() {\n return this.contentType === \"text/html\";\n }\n [_symbol_utils.$onChild](child) {\n if (this.contentType === \"text/html\" && child[_symbol_utils.$namespaceId] === _namespaces.NamespaceIds.xhtml.id) {\n this[_symbol_utils.$content] = child;\n return true;\n }\n if (this.contentType === \"text/xml\") {\n this[_symbol_utils.$content] = child;\n return true;\n }\n return false;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n if (this.contentType !== \"text/html\" || !this[_symbol_utils.$content]) {\n return _utils.HTMLResult.EMPTY;\n }\n return this[_symbol_utils.$content][_symbol_utils.$toHTML](availableSpace);\n }\n}\nclass ExObject extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"exObject\", true);\n this.archive = attributes.archive || \"\";\n this.classId = attributes.classId || \"\";\n this.codeBase = attributes.codeBase || \"\";\n this.codeType = attributes.codeType || \"\";\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.boolean = new _xfa_object.XFAObjectArray();\n this.date = new _xfa_object.XFAObjectArray();\n this.dateTime = new _xfa_object.XFAObjectArray();\n this.decimal = new _xfa_object.XFAObjectArray();\n this.exData = new _xfa_object.XFAObjectArray();\n this.exObject = new _xfa_object.XFAObjectArray();\n this.float = new _xfa_object.XFAObjectArray();\n this.image = new _xfa_object.XFAObjectArray();\n this.integer = new _xfa_object.XFAObjectArray();\n this.text = new _xfa_object.XFAObjectArray();\n this.time = new _xfa_object.XFAObjectArray();\n }\n}\nclass ExclGroup extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"exclGroup\", true);\n this.access = (0, _utils.getStringOption)(attributes.access, [\"open\", \"nonInteractive\", \"protected\", \"readOnly\"]);\n this.accessKey = attributes.accessKey || \"\";\n this.anchorType = (0, _utils.getStringOption)(attributes.anchorType, [\"topLeft\", \"bottomCenter\", \"bottomLeft\", \"bottomRight\", \"middleCenter\", \"middleLeft\", \"middleRight\", \"topCenter\", \"topRight\"]);\n this.colSpan = (0, _utils.getInteger)({\n data: attributes.colSpan,\n defaultValue: 1,\n validate: n => n >= 1 || n === -1\n });\n this.h = attributes.h ? (0, _utils.getMeasurement)(attributes.h) : \"\";\n this.hAlign = (0, _utils.getStringOption)(attributes.hAlign, [\"left\", \"center\", \"justify\", \"justifyAll\", \"radix\", \"right\"]);\n this.id = attributes.id || \"\";\n this.layout = (0, _utils.getStringOption)(attributes.layout, [\"position\", \"lr-tb\", \"rl-row\", \"rl-tb\", \"row\", \"table\", \"tb\"]);\n this.maxH = (0, _utils.getMeasurement)(attributes.maxH, \"0pt\");\n this.maxW = (0, _utils.getMeasurement)(attributes.maxW, \"0pt\");\n this.minH = (0, _utils.getMeasurement)(attributes.minH, \"0pt\");\n this.minW = (0, _utils.getMeasurement)(attributes.minW, \"0pt\");\n this.name = attributes.name || \"\";\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.w = attributes.w ? (0, _utils.getMeasurement)(attributes.w) : \"\";\n this.x = (0, _utils.getMeasurement)(attributes.x, \"0pt\");\n this.y = (0, _utils.getMeasurement)(attributes.y, \"0pt\");\n this.assist = null;\n this.bind = null;\n this.border = null;\n this.calculate = null;\n this.caption = null;\n this.desc = null;\n this.extras = null;\n this.margin = null;\n this.para = null;\n this.traversal = null;\n this.validate = null;\n this.connect = new _xfa_object.XFAObjectArray();\n this.event = new _xfa_object.XFAObjectArray();\n this.field = new _xfa_object.XFAObjectArray();\n this.setProperty = new _xfa_object.XFAObjectArray();\n }\n [_symbol_utils.$isBindable]() {\n return true;\n }\n [_symbol_utils.$hasSettableValue]() {\n return true;\n }\n [_symbol_utils.$setValue](value) {\n for (const field of this.field.children) {\n if (!field.value) {\n const nodeValue = new Value({});\n field[_symbol_utils.$appendChild](nodeValue);\n field.value = nodeValue;\n }\n field.value[_symbol_utils.$setValue](value);\n }\n }\n [_symbol_utils.$isThereMoreWidth]() {\n return this.layout.endsWith(\"-tb\") && this[_symbol_utils.$extra].attempt === 0 && this[_symbol_utils.$extra].numberInLine > 0 || this[_symbol_utils.$getParent]()[_symbol_utils.$isThereMoreWidth]();\n }\n [_symbol_utils.$isSplittable]() {\n const parent = this[_symbol_utils.$getSubformParent]();\n if (!parent[_symbol_utils.$isSplittable]()) {\n return false;\n }\n if (this[_symbol_utils.$extra]._isSplittable !== undefined) {\n return this[_symbol_utils.$extra]._isSplittable;\n }\n if (this.layout === \"position\" || this.layout.includes(\"row\")) {\n this[_symbol_utils.$extra]._isSplittable = false;\n return false;\n }\n if (parent.layout?.endsWith(\"-tb\") && parent[_symbol_utils.$extra].numberInLine !== 0) {\n return false;\n }\n this[_symbol_utils.$extra]._isSplittable = true;\n return true;\n }\n [_symbol_utils.$flushHTML]() {\n return (0, _layout.flushHTML)(this);\n }\n [_symbol_utils.$addHTML](html, bbox) {\n (0, _layout.addHTML)(this, html, bbox);\n }\n [_symbol_utils.$getAvailableSpace]() {\n return (0, _layout.getAvailableSpace)(this);\n }\n [_symbol_utils.$toHTML](availableSpace) {\n setTabIndex(this);\n if (this.presence === \"hidden\" || this.presence === \"inactive\" || this.h === 0 || this.w === 0) {\n return _utils.HTMLResult.EMPTY;\n }\n (0, _html_utils.fixDimensions)(this);\n const children = [];\n const attributes = {\n id: this[_symbol_utils.$uid],\n class: []\n };\n (0, _html_utils.setAccess)(this, attributes.class);\n if (!this[_symbol_utils.$extra]) {\n this[_symbol_utils.$extra] = Object.create(null);\n }\n Object.assign(this[_symbol_utils.$extra], {\n children,\n attributes,\n attempt: 0,\n line: null,\n numberInLine: 0,\n availableSpace: {\n width: Math.min(this.w || Infinity, availableSpace.width),\n height: Math.min(this.h || Infinity, availableSpace.height)\n },\n width: 0,\n height: 0,\n prevHeight: 0,\n currentWidth: 0\n });\n const isSplittable = this[_symbol_utils.$isSplittable]();\n if (!isSplittable) {\n setFirstUnsplittable(this);\n }\n if (!(0, _layout.checkDimensions)(this, availableSpace)) {\n return _utils.HTMLResult.FAILURE;\n }\n const filter = new Set([\"field\"]);\n if (this.layout.includes(\"row\")) {\n const columnWidths = this[_symbol_utils.$getSubformParent]().columnWidths;\n if (Array.isArray(columnWidths) && columnWidths.length > 0) {\n this[_symbol_utils.$extra].columnWidths = columnWidths;\n this[_symbol_utils.$extra].currentColumn = 0;\n }\n }\n const style = (0, _html_utils.toStyle)(this, \"anchorType\", \"dimensions\", \"position\", \"presence\", \"border\", \"margin\", \"hAlign\");\n const classNames = [\"xfaExclgroup\"];\n const cl = (0, _html_utils.layoutClass)(this);\n if (cl) {\n classNames.push(cl);\n }\n if ((0, _html_utils.isPrintOnly)(this)) {\n classNames.push(\"xfaPrintOnly\");\n }\n attributes.style = style;\n attributes.class = classNames;\n if (this.name) {\n attributes.xfaName = this.name;\n }\n this[_symbol_utils.$pushPara]();\n const isLrTb = this.layout === \"lr-tb\" || this.layout === \"rl-tb\";\n const maxRun = isLrTb ? MAX_ATTEMPTS_FOR_LRTB_LAYOUT : 1;\n for (; this[_symbol_utils.$extra].attempt < maxRun; this[_symbol_utils.$extra].attempt++) {\n if (isLrTb && this[_symbol_utils.$extra].attempt === MAX_ATTEMPTS_FOR_LRTB_LAYOUT - 1) {\n this[_symbol_utils.$extra].numberInLine = 0;\n }\n const result = this[_symbol_utils.$childrenToHTML]({\n filter,\n include: true\n });\n if (result.success) {\n break;\n }\n if (result.isBreak()) {\n this[_symbol_utils.$popPara]();\n return result;\n }\n if (isLrTb && this[_symbol_utils.$extra].attempt === 0 && this[_symbol_utils.$extra].numberInLine === 0 && !this[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].noLayoutFailure) {\n this[_symbol_utils.$extra].attempt = maxRun;\n break;\n }\n }\n this[_symbol_utils.$popPara]();\n if (!isSplittable) {\n unsetFirstUnsplittable(this);\n }\n if (this[_symbol_utils.$extra].attempt === maxRun) {\n if (!isSplittable) {\n delete this[_symbol_utils.$extra];\n }\n return _utils.HTMLResult.FAILURE;\n }\n let marginH = 0;\n let marginV = 0;\n if (this.margin) {\n marginH = this.margin.leftInset + this.margin.rightInset;\n marginV = this.margin.topInset + this.margin.bottomInset;\n }\n const width = Math.max(this[_symbol_utils.$extra].width + marginH, this.w || 0);\n const height = Math.max(this[_symbol_utils.$extra].height + marginV, this.h || 0);\n const bbox = [this.x, this.y, width, height];\n if (this.w === \"\") {\n style.width = (0, _html_utils.measureToString)(width);\n }\n if (this.h === \"\") {\n style.height = (0, _html_utils.measureToString)(height);\n }\n const html = {\n name: \"div\",\n attributes,\n children\n };\n applyAssist(this, attributes);\n delete this[_symbol_utils.$extra];\n return _utils.HTMLResult.success((0, _html_utils.createWrapper)(this, html), bbox);\n }\n}\nclass Execute extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"execute\");\n this.connection = attributes.connection || \"\";\n this.executeType = (0, _utils.getStringOption)(attributes.executeType, [\"import\", \"remerge\"]);\n this.id = attributes.id || \"\";\n this.runAt = (0, _utils.getStringOption)(attributes.runAt, [\"client\", \"both\", \"server\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Extras extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"extras\", true);\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.boolean = new _xfa_object.XFAObjectArray();\n this.date = new _xfa_object.XFAObjectArray();\n this.dateTime = new _xfa_object.XFAObjectArray();\n this.decimal = new _xfa_object.XFAObjectArray();\n this.exData = new _xfa_object.XFAObjectArray();\n this.extras = new _xfa_object.XFAObjectArray();\n this.float = new _xfa_object.XFAObjectArray();\n this.image = new _xfa_object.XFAObjectArray();\n this.integer = new _xfa_object.XFAObjectArray();\n this.text = new _xfa_object.XFAObjectArray();\n this.time = new _xfa_object.XFAObjectArray();\n }\n}\nclass Field extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"field\", true);\n this.access = (0, _utils.getStringOption)(attributes.access, [\"open\", \"nonInteractive\", \"protected\", \"readOnly\"]);\n this.accessKey = attributes.accessKey || \"\";\n this.anchorType = (0, _utils.getStringOption)(attributes.anchorType, [\"topLeft\", \"bottomCenter\", \"bottomLeft\", \"bottomRight\", \"middleCenter\", \"middleLeft\", \"middleRight\", \"topCenter\", \"topRight\"]);\n this.colSpan = (0, _utils.getInteger)({\n data: attributes.colSpan,\n defaultValue: 1,\n validate: n => n >= 1 || n === -1\n });\n this.h = attributes.h ? (0, _utils.getMeasurement)(attributes.h) : \"\";\n this.hAlign = (0, _utils.getStringOption)(attributes.hAlign, [\"left\", \"center\", \"justify\", \"justifyAll\", \"radix\", \"right\"]);\n this.id = attributes.id || \"\";\n this.locale = attributes.locale || \"\";\n this.maxH = (0, _utils.getMeasurement)(attributes.maxH, \"0pt\");\n this.maxW = (0, _utils.getMeasurement)(attributes.maxW, \"0pt\");\n this.minH = (0, _utils.getMeasurement)(attributes.minH, \"0pt\");\n this.minW = (0, _utils.getMeasurement)(attributes.minW, \"0pt\");\n this.name = attributes.name || \"\";\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.rotate = (0, _utils.getInteger)({\n data: attributes.rotate,\n defaultValue: 0,\n validate: x => x % 90 === 0\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.w = attributes.w ? (0, _utils.getMeasurement)(attributes.w) : \"\";\n this.x = (0, _utils.getMeasurement)(attributes.x, \"0pt\");\n this.y = (0, _utils.getMeasurement)(attributes.y, \"0pt\");\n this.assist = null;\n this.bind = null;\n this.border = null;\n this.calculate = null;\n this.caption = null;\n this.desc = null;\n this.extras = null;\n this.font = null;\n this.format = null;\n this.items = new _xfa_object.XFAObjectArray(2);\n this.keep = null;\n this.margin = null;\n this.para = null;\n this.traversal = null;\n this.ui = null;\n this.validate = null;\n this.value = null;\n this.bindItems = new _xfa_object.XFAObjectArray();\n this.connect = new _xfa_object.XFAObjectArray();\n this.event = new _xfa_object.XFAObjectArray();\n this.setProperty = new _xfa_object.XFAObjectArray();\n }\n [_symbol_utils.$isBindable]() {\n return true;\n }\n [_symbol_utils.$setValue](value) {\n _setValue(this, value);\n }\n [_symbol_utils.$toHTML](availableSpace) {\n setTabIndex(this);\n if (!this.ui) {\n this.ui = new Ui({});\n this.ui[_symbol_utils.$globalData] = this[_symbol_utils.$globalData];\n this[_symbol_utils.$appendChild](this.ui);\n let node;\n switch (this.items.children.length) {\n case 0:\n node = new TextEdit({});\n this.ui.textEdit = node;\n break;\n case 1:\n node = new CheckButton({});\n this.ui.checkButton = node;\n break;\n case 2:\n node = new ChoiceList({});\n this.ui.choiceList = node;\n break;\n }\n this.ui[_symbol_utils.$appendChild](node);\n }\n if (!this.ui || this.presence === \"hidden\" || this.presence === \"inactive\" || this.h === 0 || this.w === 0) {\n return _utils.HTMLResult.EMPTY;\n }\n if (this.caption) {\n delete this.caption[_symbol_utils.$extra];\n }\n this[_symbol_utils.$pushPara]();\n const caption = this.caption ? this.caption[_symbol_utils.$toHTML](availableSpace).html : null;\n const savedW = this.w;\n const savedH = this.h;\n let marginH = 0;\n let marginV = 0;\n if (this.margin) {\n marginH = this.margin.leftInset + this.margin.rightInset;\n marginV = this.margin.topInset + this.margin.bottomInset;\n }\n let borderDims = null;\n if (this.w === \"\" || this.h === \"\") {\n let width = null;\n let height = null;\n let uiW = 0;\n let uiH = 0;\n if (this.ui.checkButton) {\n uiW = uiH = this.ui.checkButton.size;\n } else {\n const {\n w,\n h\n } = (0, _html_utils.layoutNode)(this, availableSpace);\n if (w !== null) {\n uiW = w;\n uiH = h;\n } else {\n uiH = (0, _fonts.getMetrics)(this.font, true).lineNoGap;\n }\n }\n borderDims = getBorderDims(this.ui[_symbol_utils.$getExtra]());\n uiW += borderDims.w;\n uiH += borderDims.h;\n if (this.caption) {\n const {\n w,\n h,\n isBroken\n } = this.caption[_symbol_utils.$getExtra](availableSpace);\n if (isBroken && this[_symbol_utils.$getSubformParent]()[_symbol_utils.$isThereMoreWidth]()) {\n this[_symbol_utils.$popPara]();\n return _utils.HTMLResult.FAILURE;\n }\n width = w;\n height = h;\n switch (this.caption.placement) {\n case \"left\":\n case \"right\":\n case \"inline\":\n width += uiW;\n break;\n case \"top\":\n case \"bottom\":\n height += uiH;\n break;\n }\n } else {\n width = uiW;\n height = uiH;\n }\n if (width && this.w === \"\") {\n width += marginH;\n this.w = Math.min(this.maxW <= 0 ? Infinity : this.maxW, this.minW + 1 < width ? width : this.minW);\n }\n if (height && this.h === \"\") {\n height += marginV;\n this.h = Math.min(this.maxH <= 0 ? Infinity : this.maxH, this.minH + 1 < height ? height : this.minH);\n }\n }\n this[_symbol_utils.$popPara]();\n (0, _html_utils.fixDimensions)(this);\n setFirstUnsplittable(this);\n if (!(0, _layout.checkDimensions)(this, availableSpace)) {\n this.w = savedW;\n this.h = savedH;\n this[_symbol_utils.$popPara]();\n return _utils.HTMLResult.FAILURE;\n }\n unsetFirstUnsplittable(this);\n const style = (0, _html_utils.toStyle)(this, \"font\", \"dimensions\", \"position\", \"rotate\", \"anchorType\", \"presence\", \"margin\", \"hAlign\");\n (0, _html_utils.setMinMaxDimensions)(this, style);\n const classNames = [\"xfaField\"];\n if (this.font) {\n classNames.push(\"xfaFont\");\n }\n if ((0, _html_utils.isPrintOnly)(this)) {\n classNames.push(\"xfaPrintOnly\");\n }\n const attributes = {\n style,\n id: this[_symbol_utils.$uid],\n class: classNames\n };\n if (style.margin) {\n style.padding = style.margin;\n delete style.margin;\n }\n (0, _html_utils.setAccess)(this, classNames);\n if (this.name) {\n attributes.xfaName = this.name;\n }\n const children = [];\n const html = {\n name: \"div\",\n attributes,\n children\n };\n applyAssist(this, attributes);\n const borderStyle = this.border ? this.border[_symbol_utils.$toStyle]() : null;\n const bbox = (0, _html_utils.computeBbox)(this, html, availableSpace);\n const ui = this.ui[_symbol_utils.$toHTML]().html;\n if (!ui) {\n Object.assign(style, borderStyle);\n return _utils.HTMLResult.success((0, _html_utils.createWrapper)(this, html), bbox);\n }\n if (this[_symbol_utils.$tabIndex]) {\n if (ui.children?.[0]) {\n ui.children[0].attributes.tabindex = this[_symbol_utils.$tabIndex];\n } else {\n ui.attributes.tabindex = this[_symbol_utils.$tabIndex];\n }\n }\n if (!ui.attributes.style) {\n ui.attributes.style = Object.create(null);\n }\n let aElement = null;\n if (this.ui.button) {\n if (ui.children.length === 1) {\n [aElement] = ui.children.splice(0, 1);\n }\n Object.assign(ui.attributes.style, borderStyle);\n } else {\n Object.assign(style, borderStyle);\n }\n children.push(ui);\n if (this.value) {\n if (this.ui.imageEdit) {\n ui.children.push(this.value[_symbol_utils.$toHTML]().html);\n } else if (!this.ui.button) {\n let value = \"\";\n if (this.value.exData) {\n value = this.value.exData[_symbol_utils.$text]();\n } else if (this.value.text) {\n value = this.value.text[_symbol_utils.$getExtra]();\n } else {\n const htmlValue = this.value[_symbol_utils.$toHTML]().html;\n if (htmlValue !== null) {\n value = htmlValue.children[0].value;\n }\n }\n if (this.ui.textEdit && this.value.text?.maxChars) {\n ui.children[0].attributes.maxLength = this.value.text.maxChars;\n }\n if (value) {\n if (this.ui.numericEdit) {\n value = parseFloat(value);\n value = isNaN(value) ? \"\" : value.toString();\n }\n if (ui.children[0].name === \"textarea\") {\n ui.children[0].attributes.textContent = value;\n } else {\n ui.children[0].attributes.value = value;\n }\n }\n }\n }\n if (!this.ui.imageEdit && ui.children?.[0] && this.h) {\n borderDims = borderDims || getBorderDims(this.ui[_symbol_utils.$getExtra]());\n let captionHeight = 0;\n if (this.caption && [\"top\", \"bottom\"].includes(this.caption.placement)) {\n captionHeight = this.caption.reserve;\n if (captionHeight <= 0) {\n captionHeight = this.caption[_symbol_utils.$getExtra](availableSpace).h;\n }\n const inputHeight = this.h - captionHeight - marginV - borderDims.h;\n ui.children[0].attributes.style.height = (0, _html_utils.measureToString)(inputHeight);\n } else {\n ui.children[0].attributes.style.height = \"100%\";\n }\n }\n if (aElement) {\n ui.children.push(aElement);\n }\n if (!caption) {\n if (ui.attributes.class) {\n ui.attributes.class.push(\"xfaLeft\");\n }\n this.w = savedW;\n this.h = savedH;\n return _utils.HTMLResult.success((0, _html_utils.createWrapper)(this, html), bbox);\n }\n if (this.ui.button) {\n if (style.padding) {\n delete style.padding;\n }\n if (caption.name === \"div\") {\n caption.name = \"span\";\n }\n ui.children.push(caption);\n return _utils.HTMLResult.success(html, bbox);\n } else if (this.ui.checkButton) {\n caption.attributes.class[0] = \"xfaCaptionForCheckButton\";\n }\n if (!ui.attributes.class) {\n ui.attributes.class = [];\n }\n ui.children.splice(0, 0, caption);\n switch (this.caption.placement) {\n case \"left\":\n ui.attributes.class.push(\"xfaLeft\");\n break;\n case \"right\":\n ui.attributes.class.push(\"xfaRight\");\n break;\n case \"top\":\n ui.attributes.class.push(\"xfaTop\");\n break;\n case \"bottom\":\n ui.attributes.class.push(\"xfaBottom\");\n break;\n case \"inline\":\n ui.attributes.class.push(\"xfaLeft\");\n break;\n }\n this.w = savedW;\n this.h = savedH;\n return _utils.HTMLResult.success((0, _html_utils.createWrapper)(this, html), bbox);\n }\n}\nexports.Field = Field;\nclass Fill extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"fill\", true);\n this.id = attributes.id || \"\";\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.color = null;\n this.extras = null;\n this.linear = null;\n this.pattern = null;\n this.radial = null;\n this.solid = null;\n this.stipple = null;\n }\n [_symbol_utils.$toStyle]() {\n const parent = this[_symbol_utils.$getParent]();\n const grandpa = parent[_symbol_utils.$getParent]();\n const ggrandpa = grandpa[_symbol_utils.$getParent]();\n const style = Object.create(null);\n let propName = \"color\";\n let altPropName = propName;\n if (parent instanceof Border) {\n propName = \"background-color\";\n altPropName = \"background\";\n if (ggrandpa instanceof Ui) {\n style.backgroundColor = \"white\";\n }\n }\n if (parent instanceof Rectangle || parent instanceof Arc) {\n propName = altPropName = \"fill\";\n style.fill = \"white\";\n }\n for (const name of Object.getOwnPropertyNames(this)) {\n if (name === \"extras\" || name === \"color\") {\n continue;\n }\n const obj = this[name];\n if (!(obj instanceof _xfa_object.XFAObject)) {\n continue;\n }\n const color = obj[_symbol_utils.$toStyle](this.color);\n if (color) {\n style[color.startsWith(\"#\") ? propName : altPropName] = color;\n }\n return style;\n }\n if (this.color?.value) {\n const color = this.color[_symbol_utils.$toStyle]();\n style[color.startsWith(\"#\") ? propName : altPropName] = color;\n }\n return style;\n }\n}\nclass Filter extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"filter\", true);\n this.addRevocationInfo = (0, _utils.getStringOption)(attributes.addRevocationInfo, [\"\", \"required\", \"optional\", \"none\"]);\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.version = (0, _utils.getInteger)({\n data: this.version,\n defaultValue: 5,\n validate: x => x >= 1 && x <= 5\n });\n this.appearanceFilter = null;\n this.certificates = null;\n this.digestMethods = null;\n this.encodings = null;\n this.encryptionMethods = null;\n this.handler = null;\n this.lockDocument = null;\n this.mdp = null;\n this.reasons = null;\n this.timeStamp = null;\n }\n}\nclass Float extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"float\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$finalize]() {\n const number = parseFloat(this[_symbol_utils.$content].trim());\n this[_symbol_utils.$content] = isNaN(number) ? null : number;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n return valueToHtml(this[_symbol_utils.$content] !== null ? this[_symbol_utils.$content].toString() : \"\");\n }\n}\nclass Font extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"font\", true);\n this.baselineShift = (0, _utils.getMeasurement)(attributes.baselineShift);\n this.fontHorizontalScale = (0, _utils.getFloat)({\n data: attributes.fontHorizontalScale,\n defaultValue: 100,\n validate: x => x >= 0\n });\n this.fontVerticalScale = (0, _utils.getFloat)({\n data: attributes.fontVerticalScale,\n defaultValue: 100,\n validate: x => x >= 0\n });\n this.id = attributes.id || \"\";\n this.kerningMode = (0, _utils.getStringOption)(attributes.kerningMode, [\"none\", \"pair\"]);\n this.letterSpacing = (0, _utils.getMeasurement)(attributes.letterSpacing, \"0\");\n this.lineThrough = (0, _utils.getInteger)({\n data: attributes.lineThrough,\n defaultValue: 0,\n validate: x => x === 1 || x === 2\n });\n this.lineThroughPeriod = (0, _utils.getStringOption)(attributes.lineThroughPeriod, [\"all\", \"word\"]);\n this.overline = (0, _utils.getInteger)({\n data: attributes.overline,\n defaultValue: 0,\n validate: x => x === 1 || x === 2\n });\n this.overlinePeriod = (0, _utils.getStringOption)(attributes.overlinePeriod, [\"all\", \"word\"]);\n this.posture = (0, _utils.getStringOption)(attributes.posture, [\"normal\", \"italic\"]);\n this.size = (0, _utils.getMeasurement)(attributes.size, \"10pt\");\n this.typeface = attributes.typeface || \"Courier\";\n this.underline = (0, _utils.getInteger)({\n data: attributes.underline,\n defaultValue: 0,\n validate: x => x === 1 || x === 2\n });\n this.underlinePeriod = (0, _utils.getStringOption)(attributes.underlinePeriod, [\"all\", \"word\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.weight = (0, _utils.getStringOption)(attributes.weight, [\"normal\", \"bold\"]);\n this.extras = null;\n this.fill = null;\n }\n [_symbol_utils.$clean](builder) {\n super[_symbol_utils.$clean](builder);\n this[_symbol_utils.$globalData].usedTypefaces.add(this.typeface);\n }\n [_symbol_utils.$toStyle]() {\n const style = (0, _html_utils.toStyle)(this, \"fill\");\n const color = style.color;\n if (color) {\n if (color === \"#000000\") {\n delete style.color;\n } else if (!color.startsWith(\"#\")) {\n style.background = color;\n style.backgroundClip = \"text\";\n style.color = \"transparent\";\n }\n }\n if (this.baselineShift) {\n style.verticalAlign = (0, _html_utils.measureToString)(this.baselineShift);\n }\n style.fontKerning = this.kerningMode === \"none\" ? \"none\" : \"normal\";\n style.letterSpacing = (0, _html_utils.measureToString)(this.letterSpacing);\n if (this.lineThrough !== 0) {\n style.textDecoration = \"line-through\";\n if (this.lineThrough === 2) {\n style.textDecorationStyle = \"double\";\n }\n }\n if (this.overline !== 0) {\n style.textDecoration = \"overline\";\n if (this.overline === 2) {\n style.textDecorationStyle = \"double\";\n }\n }\n style.fontStyle = this.posture;\n style.fontSize = (0, _html_utils.measureToString)(0.99 * this.size);\n (0, _html_utils.setFontFamily)(this, this, this[_symbol_utils.$globalData].fontFinder, style);\n if (this.underline !== 0) {\n style.textDecoration = \"underline\";\n if (this.underline === 2) {\n style.textDecorationStyle = \"double\";\n }\n }\n style.fontWeight = this.weight;\n return style;\n }\n}\nclass Format extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"format\", true);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.picture = null;\n }\n}\nclass Handler extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"handler\");\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Hyphenation extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"hyphenation\");\n this.excludeAllCaps = (0, _utils.getInteger)({\n data: attributes.excludeAllCaps,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.excludeInitialCap = (0, _utils.getInteger)({\n data: attributes.excludeInitialCap,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.hyphenate = (0, _utils.getInteger)({\n data: attributes.hyphenate,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.id = attributes.id || \"\";\n this.pushCharacterCount = (0, _utils.getInteger)({\n data: attributes.pushCharacterCount,\n defaultValue: 3,\n validate: x => x >= 0\n });\n this.remainCharacterCount = (0, _utils.getInteger)({\n data: attributes.remainCharacterCount,\n defaultValue: 3,\n validate: x => x >= 0\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.wordCharacterCount = (0, _utils.getInteger)({\n data: attributes.wordCharacterCount,\n defaultValue: 7,\n validate: x => x >= 0\n });\n }\n}\nclass Image extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"image\");\n this.aspect = (0, _utils.getStringOption)(attributes.aspect, [\"fit\", \"actual\", \"height\", \"none\", \"width\"]);\n this.contentType = attributes.contentType || \"\";\n this.href = attributes.href || \"\";\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.transferEncoding = (0, _utils.getStringOption)(attributes.transferEncoding, [\"base64\", \"none\", \"package\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$toHTML]() {\n if (this.contentType && !MIMES.has(this.contentType.toLowerCase())) {\n return _utils.HTMLResult.EMPTY;\n }\n let buffer = this[_symbol_utils.$globalData].images && this[_symbol_utils.$globalData].images.get(this.href);\n if (!buffer && (this.href || !this[_symbol_utils.$content])) {\n return _utils.HTMLResult.EMPTY;\n }\n if (!buffer && this.transferEncoding === \"base64\") {\n buffer = (0, _util.stringToBytes)(atob(this[_symbol_utils.$content]));\n }\n if (!buffer) {\n return _utils.HTMLResult.EMPTY;\n }\n if (!this.contentType) {\n for (const [header, type] of IMAGES_HEADERS) {\n if (buffer.length > header.length && header.every((x, i) => x === buffer[i])) {\n this.contentType = type;\n break;\n }\n }\n if (!this.contentType) {\n return _utils.HTMLResult.EMPTY;\n }\n }\n const blob = new Blob([buffer], {\n type: this.contentType\n });\n let style;\n switch (this.aspect) {\n case \"fit\":\n case \"actual\":\n break;\n case \"height\":\n style = {\n height: \"100%\",\n objectFit: \"fill\"\n };\n break;\n case \"none\":\n style = {\n width: \"100%\",\n height: \"100%\",\n objectFit: \"fill\"\n };\n break;\n case \"width\":\n style = {\n width: \"100%\",\n objectFit: \"fill\"\n };\n break;\n }\n const parent = this[_symbol_utils.$getParent]();\n return _utils.HTMLResult.success({\n name: \"img\",\n attributes: {\n class: [\"xfaImage\"],\n style,\n src: URL.createObjectURL(blob),\n alt: parent ? ariaLabel(parent[_symbol_utils.$getParent]()) : null\n }\n });\n }\n}\nclass ImageEdit extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"imageEdit\", true);\n this.data = (0, _utils.getStringOption)(attributes.data, [\"link\", \"embed\"]);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.border = null;\n this.extras = null;\n this.margin = null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n if (this.data === \"embed\") {\n return _utils.HTMLResult.success({\n name: \"div\",\n children: [],\n attributes: {}\n });\n }\n return _utils.HTMLResult.EMPTY;\n }\n}\nclass Integer extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"integer\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$finalize]() {\n const number = parseInt(this[_symbol_utils.$content].trim(), 10);\n this[_symbol_utils.$content] = isNaN(number) ? null : number;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n return valueToHtml(this[_symbol_utils.$content] !== null ? this[_symbol_utils.$content].toString() : \"\");\n }\n}\nclass Issuers extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"issuers\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.certificate = new _xfa_object.XFAObjectArray();\n }\n}\nclass Items extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"items\", true);\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.ref = attributes.ref || \"\";\n this.save = (0, _utils.getInteger)({\n data: attributes.save,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.boolean = new _xfa_object.XFAObjectArray();\n this.date = new _xfa_object.XFAObjectArray();\n this.dateTime = new _xfa_object.XFAObjectArray();\n this.decimal = new _xfa_object.XFAObjectArray();\n this.exData = new _xfa_object.XFAObjectArray();\n this.float = new _xfa_object.XFAObjectArray();\n this.image = new _xfa_object.XFAObjectArray();\n this.integer = new _xfa_object.XFAObjectArray();\n this.text = new _xfa_object.XFAObjectArray();\n this.time = new _xfa_object.XFAObjectArray();\n }\n [_symbol_utils.$toHTML]() {\n const output = [];\n for (const child of this[_symbol_utils.$getChildren]()) {\n output.push(child[_symbol_utils.$text]());\n }\n return _utils.HTMLResult.success(output);\n }\n}\nexports.Items = Items;\nclass Keep extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"keep\", true);\n this.id = attributes.id || \"\";\n const options = [\"none\", \"contentArea\", \"pageArea\"];\n this.intact = (0, _utils.getStringOption)(attributes.intact, options);\n this.next = (0, _utils.getStringOption)(attributes.next, options);\n this.previous = (0, _utils.getStringOption)(attributes.previous, options);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n }\n}\nclass KeyUsage extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"keyUsage\");\n const options = [\"\", \"yes\", \"no\"];\n this.crlSign = (0, _utils.getStringOption)(attributes.crlSign, options);\n this.dataEncipherment = (0, _utils.getStringOption)(attributes.dataEncipherment, options);\n this.decipherOnly = (0, _utils.getStringOption)(attributes.decipherOnly, options);\n this.digitalSignature = (0, _utils.getStringOption)(attributes.digitalSignature, options);\n this.encipherOnly = (0, _utils.getStringOption)(attributes.encipherOnly, options);\n this.id = attributes.id || \"\";\n this.keyAgreement = (0, _utils.getStringOption)(attributes.keyAgreement, options);\n this.keyCertSign = (0, _utils.getStringOption)(attributes.keyCertSign, options);\n this.keyEncipherment = (0, _utils.getStringOption)(attributes.keyEncipherment, options);\n this.nonRepudiation = (0, _utils.getStringOption)(attributes.nonRepudiation, options);\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Line extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"line\", true);\n this.hand = (0, _utils.getStringOption)(attributes.hand, [\"even\", \"left\", \"right\"]);\n this.id = attributes.id || \"\";\n this.slope = (0, _utils.getStringOption)(attributes.slope, [\"\\\\\", \"/\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.edge = null;\n }\n [_symbol_utils.$toHTML]() {\n const parent = this[_symbol_utils.$getParent]()[_symbol_utils.$getParent]();\n const edge = this.edge || new Edge({});\n const edgeStyle = edge[_symbol_utils.$toStyle]();\n const style = Object.create(null);\n const thickness = edge.presence === \"visible\" ? edge.thickness : 0;\n style.strokeWidth = (0, _html_utils.measureToString)(thickness);\n style.stroke = edgeStyle.color;\n let x1, y1, x2, y2;\n let width = \"100%\";\n let height = \"100%\";\n if (parent.w <= thickness) {\n [x1, y1, x2, y2] = [\"50%\", 0, \"50%\", \"100%\"];\n width = style.strokeWidth;\n } else if (parent.h <= thickness) {\n [x1, y1, x2, y2] = [0, \"50%\", \"100%\", \"50%\"];\n height = style.strokeWidth;\n } else if (this.slope === \"\\\\\") {\n [x1, y1, x2, y2] = [0, 0, \"100%\", \"100%\"];\n } else {\n [x1, y1, x2, y2] = [0, \"100%\", \"100%\", 0];\n }\n const line = {\n name: \"line\",\n attributes: {\n xmlns: SVG_NS,\n x1,\n y1,\n x2,\n y2,\n style\n }\n };\n const svg = {\n name: \"svg\",\n children: [line],\n attributes: {\n xmlns: SVG_NS,\n width,\n height,\n style: {\n overflow: \"visible\"\n }\n }\n };\n if (hasMargin(parent)) {\n return _utils.HTMLResult.success({\n name: \"div\",\n attributes: {\n style: {\n display: \"inline\",\n width: \"100%\",\n height: \"100%\"\n }\n },\n children: [svg]\n });\n }\n svg.attributes.style.position = \"absolute\";\n return _utils.HTMLResult.success(svg);\n }\n}\nclass Linear extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"linear\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"toRight\", \"toBottom\", \"toLeft\", \"toTop\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.color = null;\n this.extras = null;\n }\n [_symbol_utils.$toStyle](startColor) {\n startColor = startColor ? startColor[_symbol_utils.$toStyle]() : \"#FFFFFF\";\n const transf = this.type.replace(/([RBLT])/, \" $1\").toLowerCase();\n const endColor = this.color ? this.color[_symbol_utils.$toStyle]() : \"#000000\";\n return `linear-gradient(${transf}, ${startColor}, ${endColor})`;\n }\n}\nclass LockDocument extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"lockDocument\");\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = (0, _utils.getStringOption)(this[_symbol_utils.$content], [\"auto\", \"0\", \"1\"]);\n }\n}\nclass Manifest extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"manifest\", true);\n this.action = (0, _utils.getStringOption)(attributes.action, [\"include\", \"all\", \"exclude\"]);\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.ref = new _xfa_object.XFAObjectArray();\n }\n}\nclass Margin extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"margin\", true);\n this.bottomInset = (0, _utils.getMeasurement)(attributes.bottomInset, \"0\");\n this.id = attributes.id || \"\";\n this.leftInset = (0, _utils.getMeasurement)(attributes.leftInset, \"0\");\n this.rightInset = (0, _utils.getMeasurement)(attributes.rightInset, \"0\");\n this.topInset = (0, _utils.getMeasurement)(attributes.topInset, \"0\");\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n }\n [_symbol_utils.$toStyle]() {\n return {\n margin: (0, _html_utils.measureToString)(this.topInset) + \" \" + (0, _html_utils.measureToString)(this.rightInset) + \" \" + (0, _html_utils.measureToString)(this.bottomInset) + \" \" + (0, _html_utils.measureToString)(this.leftInset)\n };\n }\n}\nclass Mdp extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"mdp\");\n this.id = attributes.id || \"\";\n this.permissions = (0, _utils.getInteger)({\n data: attributes.permissions,\n defaultValue: 2,\n validate: x => x === 1 || x === 3\n });\n this.signatureType = (0, _utils.getStringOption)(attributes.signatureType, [\"filler\", \"author\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Medium extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"medium\");\n this.id = attributes.id || \"\";\n this.imagingBBox = (0, _utils.getBBox)(attributes.imagingBBox);\n this.long = (0, _utils.getMeasurement)(attributes.long);\n this.orientation = (0, _utils.getStringOption)(attributes.orientation, [\"portrait\", \"landscape\"]);\n this.short = (0, _utils.getMeasurement)(attributes.short);\n this.stock = attributes.stock || \"\";\n this.trayIn = (0, _utils.getStringOption)(attributes.trayIn, [\"auto\", \"delegate\", \"pageFront\"]);\n this.trayOut = (0, _utils.getStringOption)(attributes.trayOut, [\"auto\", \"delegate\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Message extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"message\", true);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.text = new _xfa_object.XFAObjectArray();\n }\n}\nclass NumericEdit extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"numericEdit\", true);\n this.hScrollPolicy = (0, _utils.getStringOption)(attributes.hScrollPolicy, [\"auto\", \"off\", \"on\"]);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.border = null;\n this.comb = null;\n this.extras = null;\n this.margin = null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const style = (0, _html_utils.toStyle)(this, \"border\", \"font\", \"margin\");\n const field = this[_symbol_utils.$getParent]()[_symbol_utils.$getParent]();\n const html = {\n name: \"input\",\n attributes: {\n type: \"text\",\n fieldId: field[_symbol_utils.$uid],\n dataId: field[_symbol_utils.$data]?.[_symbol_utils.$uid] || field[_symbol_utils.$uid],\n class: [\"xfaTextfield\"],\n style,\n \"aria-label\": ariaLabel(field),\n \"aria-required\": false\n }\n };\n if (isRequired(field)) {\n html.attributes[\"aria-required\"] = true;\n html.attributes.required = true;\n }\n return _utils.HTMLResult.success({\n name: \"label\",\n attributes: {\n class: [\"xfaLabel\"]\n },\n children: [html]\n });\n }\n}\nclass Occur extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"occur\", true);\n this.id = attributes.id || \"\";\n this.initial = attributes.initial !== \"\" ? (0, _utils.getInteger)({\n data: attributes.initial,\n defaultValue: \"\",\n validate: x => true\n }) : \"\";\n this.max = attributes.max !== \"\" ? (0, _utils.getInteger)({\n data: attributes.max,\n defaultValue: 1,\n validate: x => true\n }) : \"\";\n this.min = attributes.min !== \"\" ? (0, _utils.getInteger)({\n data: attributes.min,\n defaultValue: 1,\n validate: x => true\n }) : \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n }\n [_symbol_utils.$clean]() {\n const parent = this[_symbol_utils.$getParent]();\n const originalMin = this.min;\n if (this.min === \"\") {\n this.min = parent instanceof PageArea || parent instanceof PageSet ? 0 : 1;\n }\n if (this.max === \"\") {\n if (originalMin === \"\") {\n this.max = parent instanceof PageArea || parent instanceof PageSet ? -1 : 1;\n } else {\n this.max = this.min;\n }\n }\n if (this.max !== -1 && this.max < this.min) {\n this.max = this.min;\n }\n if (this.initial === \"\") {\n this.initial = parent instanceof Template ? 1 : this.min;\n }\n }\n}\nclass Oid extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"oid\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Oids extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"oids\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.oid = new _xfa_object.XFAObjectArray();\n }\n}\nclass Overflow extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"overflow\");\n this.id = attributes.id || \"\";\n this.leader = attributes.leader || \"\";\n this.target = attributes.target || \"\";\n this.trailer = attributes.trailer || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$getExtra]() {\n if (!this[_symbol_utils.$extra]) {\n const parent = this[_symbol_utils.$getParent]();\n const root = this[_symbol_utils.$getTemplateRoot]();\n const target = root[_symbol_utils.$searchNode](this.target, parent);\n const leader = root[_symbol_utils.$searchNode](this.leader, parent);\n const trailer = root[_symbol_utils.$searchNode](this.trailer, parent);\n this[_symbol_utils.$extra] = {\n target: target?.[0] || null,\n leader: leader?.[0] || null,\n trailer: trailer?.[0] || null,\n addLeader: false,\n addTrailer: false\n };\n }\n return this[_symbol_utils.$extra];\n }\n}\nclass PageArea extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"pageArea\", true);\n this.blankOrNotBlank = (0, _utils.getStringOption)(attributes.blankOrNotBlank, [\"any\", \"blank\", \"notBlank\"]);\n this.id = attributes.id || \"\";\n this.initialNumber = (0, _utils.getInteger)({\n data: attributes.initialNumber,\n defaultValue: 1,\n validate: x => true\n });\n this.name = attributes.name || \"\";\n this.numbered = (0, _utils.getInteger)({\n data: attributes.numbered,\n defaultValue: 1,\n validate: x => true\n });\n this.oddOrEven = (0, _utils.getStringOption)(attributes.oddOrEven, [\"any\", \"even\", \"odd\"]);\n this.pagePosition = (0, _utils.getStringOption)(attributes.pagePosition, [\"any\", \"first\", \"last\", \"only\", \"rest\"]);\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.desc = null;\n this.extras = null;\n this.medium = null;\n this.occur = null;\n this.area = new _xfa_object.XFAObjectArray();\n this.contentArea = new _xfa_object.XFAObjectArray();\n this.draw = new _xfa_object.XFAObjectArray();\n this.exclGroup = new _xfa_object.XFAObjectArray();\n this.field = new _xfa_object.XFAObjectArray();\n this.subform = new _xfa_object.XFAObjectArray();\n }\n [_symbol_utils.$isUsable]() {\n if (!this[_symbol_utils.$extra]) {\n this[_symbol_utils.$extra] = {\n numberOfUse: 0\n };\n return true;\n }\n return !this.occur || this.occur.max === -1 || this[_symbol_utils.$extra].numberOfUse < this.occur.max;\n }\n [_symbol_utils.$cleanPage]() {\n delete this[_symbol_utils.$extra];\n }\n [_symbol_utils.$getNextPage]() {\n if (!this[_symbol_utils.$extra]) {\n this[_symbol_utils.$extra] = {\n numberOfUse: 0\n };\n }\n const parent = this[_symbol_utils.$getParent]();\n if (parent.relation === \"orderedOccurrence\") {\n if (this[_symbol_utils.$isUsable]()) {\n this[_symbol_utils.$extra].numberOfUse += 1;\n return this;\n }\n }\n return parent[_symbol_utils.$getNextPage]();\n }\n [_symbol_utils.$getAvailableSpace]() {\n return this[_symbol_utils.$extra].space || {\n width: 0,\n height: 0\n };\n }\n [_symbol_utils.$toHTML]() {\n if (!this[_symbol_utils.$extra]) {\n this[_symbol_utils.$extra] = {\n numberOfUse: 1\n };\n }\n const children = [];\n this[_symbol_utils.$extra].children = children;\n const style = Object.create(null);\n if (this.medium && this.medium.short && this.medium.long) {\n style.width = (0, _html_utils.measureToString)(this.medium.short);\n style.height = (0, _html_utils.measureToString)(this.medium.long);\n this[_symbol_utils.$extra].space = {\n width: this.medium.short,\n height: this.medium.long\n };\n if (this.medium.orientation === \"landscape\") {\n const x = style.width;\n style.width = style.height;\n style.height = x;\n this[_symbol_utils.$extra].space = {\n width: this.medium.long,\n height: this.medium.short\n };\n }\n } else {\n (0, _util.warn)(\"XFA - No medium specified in pageArea: please file a bug.\");\n }\n this[_symbol_utils.$childrenToHTML]({\n filter: new Set([\"area\", \"draw\", \"field\", \"subform\"]),\n include: true\n });\n this[_symbol_utils.$childrenToHTML]({\n filter: new Set([\"contentArea\"]),\n include: true\n });\n return _utils.HTMLResult.success({\n name: \"div\",\n children,\n attributes: {\n class: [\"xfaPage\"],\n id: this[_symbol_utils.$uid],\n style,\n xfaName: this.name\n }\n });\n }\n}\nclass PageSet extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"pageSet\", true);\n this.duplexImposition = (0, _utils.getStringOption)(attributes.duplexImposition, [\"longEdge\", \"shortEdge\"]);\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.relation = (0, _utils.getStringOption)(attributes.relation, [\"orderedOccurrence\", \"duplexPaginated\", \"simplexPaginated\"]);\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.occur = null;\n this.pageArea = new _xfa_object.XFAObjectArray();\n this.pageSet = new _xfa_object.XFAObjectArray();\n }\n [_symbol_utils.$cleanPage]() {\n for (const page of this.pageArea.children) {\n page[_symbol_utils.$cleanPage]();\n }\n for (const page of this.pageSet.children) {\n page[_symbol_utils.$cleanPage]();\n }\n }\n [_symbol_utils.$isUsable]() {\n return !this.occur || this.occur.max === -1 || this[_symbol_utils.$extra].numberOfUse < this.occur.max;\n }\n [_symbol_utils.$getNextPage]() {\n if (!this[_symbol_utils.$extra]) {\n this[_symbol_utils.$extra] = {\n numberOfUse: 1,\n pageIndex: -1,\n pageSetIndex: -1\n };\n }\n if (this.relation === \"orderedOccurrence\") {\n if (this[_symbol_utils.$extra].pageIndex + 1 < this.pageArea.children.length) {\n this[_symbol_utils.$extra].pageIndex += 1;\n const pageArea = this.pageArea.children[this[_symbol_utils.$extra].pageIndex];\n return pageArea[_symbol_utils.$getNextPage]();\n }\n if (this[_symbol_utils.$extra].pageSetIndex + 1 < this.pageSet.children.length) {\n this[_symbol_utils.$extra].pageSetIndex += 1;\n return this.pageSet.children[this[_symbol_utils.$extra].pageSetIndex][_symbol_utils.$getNextPage]();\n }\n if (this[_symbol_utils.$isUsable]()) {\n this[_symbol_utils.$extra].numberOfUse += 1;\n this[_symbol_utils.$extra].pageIndex = -1;\n this[_symbol_utils.$extra].pageSetIndex = -1;\n return this[_symbol_utils.$getNextPage]();\n }\n const parent = this[_symbol_utils.$getParent]();\n if (parent instanceof PageSet) {\n return parent[_symbol_utils.$getNextPage]();\n }\n this[_symbol_utils.$cleanPage]();\n return this[_symbol_utils.$getNextPage]();\n }\n const pageNumber = this[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].pageNumber;\n const parity = pageNumber % 2 === 0 ? \"even\" : \"odd\";\n const position = pageNumber === 0 ? \"first\" : \"rest\";\n let page = this.pageArea.children.find(p => p.oddOrEven === parity && p.pagePosition === position);\n if (page) {\n return page;\n }\n page = this.pageArea.children.find(p => p.oddOrEven === \"any\" && p.pagePosition === position);\n if (page) {\n return page;\n }\n page = this.pageArea.children.find(p => p.oddOrEven === \"any\" && p.pagePosition === \"any\");\n if (page) {\n return page;\n }\n return this.pageArea.children[0];\n }\n}\nclass Para extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"para\", true);\n this.hAlign = (0, _utils.getStringOption)(attributes.hAlign, [\"left\", \"center\", \"justify\", \"justifyAll\", \"radix\", \"right\"]);\n this.id = attributes.id || \"\";\n this.lineHeight = attributes.lineHeight ? (0, _utils.getMeasurement)(attributes.lineHeight, \"0pt\") : \"\";\n this.marginLeft = attributes.marginLeft ? (0, _utils.getMeasurement)(attributes.marginLeft, \"0pt\") : \"\";\n this.marginRight = attributes.marginRight ? (0, _utils.getMeasurement)(attributes.marginRight, \"0pt\") : \"\";\n this.orphans = (0, _utils.getInteger)({\n data: attributes.orphans,\n defaultValue: 0,\n validate: x => x >= 0\n });\n this.preserve = attributes.preserve || \"\";\n this.radixOffset = attributes.radixOffset ? (0, _utils.getMeasurement)(attributes.radixOffset, \"0pt\") : \"\";\n this.spaceAbove = attributes.spaceAbove ? (0, _utils.getMeasurement)(attributes.spaceAbove, \"0pt\") : \"\";\n this.spaceBelow = attributes.spaceBelow ? (0, _utils.getMeasurement)(attributes.spaceBelow, \"0pt\") : \"\";\n this.tabDefault = attributes.tabDefault ? (0, _utils.getMeasurement)(this.tabDefault) : \"\";\n this.tabStops = (attributes.tabStops || \"\").trim().split(/\\s+/).map((x, i) => i % 2 === 1 ? (0, _utils.getMeasurement)(x) : x);\n this.textIndent = attributes.textIndent ? (0, _utils.getMeasurement)(attributes.textIndent, \"0pt\") : \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.vAlign = (0, _utils.getStringOption)(attributes.vAlign, [\"top\", \"bottom\", \"middle\"]);\n this.widows = (0, _utils.getInteger)({\n data: attributes.widows,\n defaultValue: 0,\n validate: x => x >= 0\n });\n this.hyphenation = null;\n }\n [_symbol_utils.$toStyle]() {\n const style = (0, _html_utils.toStyle)(this, \"hAlign\");\n if (this.marginLeft !== \"\") {\n style.paddingLeft = (0, _html_utils.measureToString)(this.marginLeft);\n }\n if (this.marginRight !== \"\") {\n style.paddingight = (0, _html_utils.measureToString)(this.marginRight);\n }\n if (this.spaceAbove !== \"\") {\n style.paddingTop = (0, _html_utils.measureToString)(this.spaceAbove);\n }\n if (this.spaceBelow !== \"\") {\n style.paddingBottom = (0, _html_utils.measureToString)(this.spaceBelow);\n }\n if (this.textIndent !== \"\") {\n style.textIndent = (0, _html_utils.measureToString)(this.textIndent);\n (0, _html_utils.fixTextIndent)(style);\n }\n if (this.lineHeight > 0) {\n style.lineHeight = (0, _html_utils.measureToString)(this.lineHeight);\n }\n if (this.tabDefault !== \"\") {\n style.tabSize = (0, _html_utils.measureToString)(this.tabDefault);\n }\n if (this.tabStops.length > 0) {}\n if (this.hyphenatation) {\n Object.assign(style, this.hyphenatation[_symbol_utils.$toStyle]());\n }\n return style;\n }\n}\nclass PasswordEdit extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"passwordEdit\", true);\n this.hScrollPolicy = (0, _utils.getStringOption)(attributes.hScrollPolicy, [\"auto\", \"off\", \"on\"]);\n this.id = attributes.id || \"\";\n this.passwordChar = attributes.passwordChar || \"*\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.border = null;\n this.extras = null;\n this.margin = null;\n }\n}\nclass Pattern extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"pattern\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"crossHatch\", \"crossDiagonal\", \"diagonalLeft\", \"diagonalRight\", \"horizontal\", \"vertical\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.color = null;\n this.extras = null;\n }\n [_symbol_utils.$toStyle](startColor) {\n startColor = startColor ? startColor[_symbol_utils.$toStyle]() : \"#FFFFFF\";\n const endColor = this.color ? this.color[_symbol_utils.$toStyle]() : \"#000000\";\n const width = 5;\n const cmd = \"repeating-linear-gradient\";\n const colors = `${startColor},${startColor} ${width}px,${endColor} ${width}px,${endColor} ${2 * width}px`;\n switch (this.type) {\n case \"crossHatch\":\n return `${cmd}(to top,${colors}) ${cmd}(to right,${colors})`;\n case \"crossDiagonal\":\n return `${cmd}(45deg,${colors}) ${cmd}(-45deg,${colors})`;\n case \"diagonalLeft\":\n return `${cmd}(45deg,${colors})`;\n case \"diagonalRight\":\n return `${cmd}(-45deg,${colors})`;\n case \"horizontal\":\n return `${cmd}(to top,${colors})`;\n case \"vertical\":\n return `${cmd}(to right,${colors})`;\n }\n return \"\";\n }\n}\nclass Picture extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"picture\");\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Proto extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"proto\", true);\n this.appearanceFilter = new _xfa_object.XFAObjectArray();\n this.arc = new _xfa_object.XFAObjectArray();\n this.area = new _xfa_object.XFAObjectArray();\n this.assist = new _xfa_object.XFAObjectArray();\n this.barcode = new _xfa_object.XFAObjectArray();\n this.bindItems = new _xfa_object.XFAObjectArray();\n this.bookend = new _xfa_object.XFAObjectArray();\n this.boolean = new _xfa_object.XFAObjectArray();\n this.border = new _xfa_object.XFAObjectArray();\n this.break = new _xfa_object.XFAObjectArray();\n this.breakAfter = new _xfa_object.XFAObjectArray();\n this.breakBefore = new _xfa_object.XFAObjectArray();\n this.button = new _xfa_object.XFAObjectArray();\n this.calculate = new _xfa_object.XFAObjectArray();\n this.caption = new _xfa_object.XFAObjectArray();\n this.certificate = new _xfa_object.XFAObjectArray();\n this.certificates = new _xfa_object.XFAObjectArray();\n this.checkButton = new _xfa_object.XFAObjectArray();\n this.choiceList = new _xfa_object.XFAObjectArray();\n this.color = new _xfa_object.XFAObjectArray();\n this.comb = new _xfa_object.XFAObjectArray();\n this.connect = new _xfa_object.XFAObjectArray();\n this.contentArea = new _xfa_object.XFAObjectArray();\n this.corner = new _xfa_object.XFAObjectArray();\n this.date = new _xfa_object.XFAObjectArray();\n this.dateTime = new _xfa_object.XFAObjectArray();\n this.dateTimeEdit = new _xfa_object.XFAObjectArray();\n this.decimal = new _xfa_object.XFAObjectArray();\n this.defaultUi = new _xfa_object.XFAObjectArray();\n this.desc = new _xfa_object.XFAObjectArray();\n this.digestMethod = new _xfa_object.XFAObjectArray();\n this.digestMethods = new _xfa_object.XFAObjectArray();\n this.draw = new _xfa_object.XFAObjectArray();\n this.edge = new _xfa_object.XFAObjectArray();\n this.encoding = new _xfa_object.XFAObjectArray();\n this.encodings = new _xfa_object.XFAObjectArray();\n this.encrypt = new _xfa_object.XFAObjectArray();\n this.encryptData = new _xfa_object.XFAObjectArray();\n this.encryption = new _xfa_object.XFAObjectArray();\n this.encryptionMethod = new _xfa_object.XFAObjectArray();\n this.encryptionMethods = new _xfa_object.XFAObjectArray();\n this.event = new _xfa_object.XFAObjectArray();\n this.exData = new _xfa_object.XFAObjectArray();\n this.exObject = new _xfa_object.XFAObjectArray();\n this.exclGroup = new _xfa_object.XFAObjectArray();\n this.execute = new _xfa_object.XFAObjectArray();\n this.extras = new _xfa_object.XFAObjectArray();\n this.field = new _xfa_object.XFAObjectArray();\n this.fill = new _xfa_object.XFAObjectArray();\n this.filter = new _xfa_object.XFAObjectArray();\n this.float = new _xfa_object.XFAObjectArray();\n this.font = new _xfa_object.XFAObjectArray();\n this.format = new _xfa_object.XFAObjectArray();\n this.handler = new _xfa_object.XFAObjectArray();\n this.hyphenation = new _xfa_object.XFAObjectArray();\n this.image = new _xfa_object.XFAObjectArray();\n this.imageEdit = new _xfa_object.XFAObjectArray();\n this.integer = new _xfa_object.XFAObjectArray();\n this.issuers = new _xfa_object.XFAObjectArray();\n this.items = new _xfa_object.XFAObjectArray();\n this.keep = new _xfa_object.XFAObjectArray();\n this.keyUsage = new _xfa_object.XFAObjectArray();\n this.line = new _xfa_object.XFAObjectArray();\n this.linear = new _xfa_object.XFAObjectArray();\n this.lockDocument = new _xfa_object.XFAObjectArray();\n this.manifest = new _xfa_object.XFAObjectArray();\n this.margin = new _xfa_object.XFAObjectArray();\n this.mdp = new _xfa_object.XFAObjectArray();\n this.medium = new _xfa_object.XFAObjectArray();\n this.message = new _xfa_object.XFAObjectArray();\n this.numericEdit = new _xfa_object.XFAObjectArray();\n this.occur = new _xfa_object.XFAObjectArray();\n this.oid = new _xfa_object.XFAObjectArray();\n this.oids = new _xfa_object.XFAObjectArray();\n this.overflow = new _xfa_object.XFAObjectArray();\n this.pageArea = new _xfa_object.XFAObjectArray();\n this.pageSet = new _xfa_object.XFAObjectArray();\n this.para = new _xfa_object.XFAObjectArray();\n this.passwordEdit = new _xfa_object.XFAObjectArray();\n this.pattern = new _xfa_object.XFAObjectArray();\n this.picture = new _xfa_object.XFAObjectArray();\n this.radial = new _xfa_object.XFAObjectArray();\n this.reason = new _xfa_object.XFAObjectArray();\n this.reasons = new _xfa_object.XFAObjectArray();\n this.rectangle = new _xfa_object.XFAObjectArray();\n this.ref = new _xfa_object.XFAObjectArray();\n this.script = new _xfa_object.XFAObjectArray();\n this.setProperty = new _xfa_object.XFAObjectArray();\n this.signData = new _xfa_object.XFAObjectArray();\n this.signature = new _xfa_object.XFAObjectArray();\n this.signing = new _xfa_object.XFAObjectArray();\n this.solid = new _xfa_object.XFAObjectArray();\n this.speak = new _xfa_object.XFAObjectArray();\n this.stipple = new _xfa_object.XFAObjectArray();\n this.subform = new _xfa_object.XFAObjectArray();\n this.subformSet = new _xfa_object.XFAObjectArray();\n this.subjectDN = new _xfa_object.XFAObjectArray();\n this.subjectDNs = new _xfa_object.XFAObjectArray();\n this.submit = new _xfa_object.XFAObjectArray();\n this.text = new _xfa_object.XFAObjectArray();\n this.textEdit = new _xfa_object.XFAObjectArray();\n this.time = new _xfa_object.XFAObjectArray();\n this.timeStamp = new _xfa_object.XFAObjectArray();\n this.toolTip = new _xfa_object.XFAObjectArray();\n this.traversal = new _xfa_object.XFAObjectArray();\n this.traverse = new _xfa_object.XFAObjectArray();\n this.ui = new _xfa_object.XFAObjectArray();\n this.validate = new _xfa_object.XFAObjectArray();\n this.value = new _xfa_object.XFAObjectArray();\n this.variables = new _xfa_object.XFAObjectArray();\n }\n}\nclass Radial extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"radial\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"toEdge\", \"toCenter\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.color = null;\n this.extras = null;\n }\n [_symbol_utils.$toStyle](startColor) {\n startColor = startColor ? startColor[_symbol_utils.$toStyle]() : \"#FFFFFF\";\n const endColor = this.color ? this.color[_symbol_utils.$toStyle]() : \"#000000\";\n const colors = this.type === \"toEdge\" ? `${startColor},${endColor}` : `${endColor},${startColor}`;\n return `radial-gradient(circle at center, ${colors})`;\n }\n}\nclass Reason extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"reason\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Reasons extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"reasons\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.reason = new _xfa_object.XFAObjectArray();\n }\n}\nclass Rectangle extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"rectangle\", true);\n this.hand = (0, _utils.getStringOption)(attributes.hand, [\"even\", \"left\", \"right\"]);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.corner = new _xfa_object.XFAObjectArray(4);\n this.edge = new _xfa_object.XFAObjectArray(4);\n this.fill = null;\n }\n [_symbol_utils.$toHTML]() {\n const edge = this.edge.children.length ? this.edge.children[0] : new Edge({});\n const edgeStyle = edge[_symbol_utils.$toStyle]();\n const style = Object.create(null);\n if (this.fill?.presence === \"visible\") {\n Object.assign(style, this.fill[_symbol_utils.$toStyle]());\n } else {\n style.fill = \"transparent\";\n }\n style.strokeWidth = (0, _html_utils.measureToString)(edge.presence === \"visible\" ? edge.thickness : 0);\n style.stroke = edgeStyle.color;\n const corner = this.corner.children.length ? this.corner.children[0] : new Corner({});\n const cornerStyle = corner[_symbol_utils.$toStyle]();\n const rect = {\n name: \"rect\",\n attributes: {\n xmlns: SVG_NS,\n width: \"100%\",\n height: \"100%\",\n x: 0,\n y: 0,\n rx: cornerStyle.radius,\n ry: cornerStyle.radius,\n style\n }\n };\n const svg = {\n name: \"svg\",\n children: [rect],\n attributes: {\n xmlns: SVG_NS,\n style: {\n overflow: \"visible\"\n },\n width: \"100%\",\n height: \"100%\"\n }\n };\n const parent = this[_symbol_utils.$getParent]()[_symbol_utils.$getParent]();\n if (hasMargin(parent)) {\n return _utils.HTMLResult.success({\n name: \"div\",\n attributes: {\n style: {\n display: \"inline\",\n width: \"100%\",\n height: \"100%\"\n }\n },\n children: [svg]\n });\n }\n svg.attributes.style.position = \"absolute\";\n return _utils.HTMLResult.success(svg);\n }\n}\nclass RefElement extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"ref\");\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Script extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"script\");\n this.binding = attributes.binding || \"\";\n this.contentType = attributes.contentType || \"\";\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.runAt = (0, _utils.getStringOption)(attributes.runAt, [\"client\", \"both\", \"server\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass SetProperty extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"setProperty\");\n this.connection = attributes.connection || \"\";\n this.ref = attributes.ref || \"\";\n this.target = attributes.target || \"\";\n }\n}\nexports.SetProperty = SetProperty;\nclass SignData extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"signData\", true);\n this.id = attributes.id || \"\";\n this.operation = (0, _utils.getStringOption)(attributes.operation, [\"sign\", \"clear\", \"verify\"]);\n this.ref = attributes.ref || \"\";\n this.target = attributes.target || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.filter = null;\n this.manifest = null;\n }\n}\nclass Signature extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"signature\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"PDF1.3\", \"PDF1.6\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.border = null;\n this.extras = null;\n this.filter = null;\n this.manifest = null;\n this.margin = null;\n }\n}\nclass Signing extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"signing\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.certificate = new _xfa_object.XFAObjectArray();\n }\n}\nclass Solid extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"solid\", true);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n }\n [_symbol_utils.$toStyle](startColor) {\n return startColor ? startColor[_symbol_utils.$toStyle]() : \"#FFFFFF\";\n }\n}\nclass Speak extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"speak\");\n this.disable = (0, _utils.getInteger)({\n data: attributes.disable,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.id = attributes.id || \"\";\n this.priority = (0, _utils.getStringOption)(attributes.priority, [\"custom\", \"caption\", \"name\", \"toolTip\"]);\n this.rid = attributes.rid || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Stipple extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"stipple\", true);\n this.id = attributes.id || \"\";\n this.rate = (0, _utils.getInteger)({\n data: attributes.rate,\n defaultValue: 50,\n validate: x => x >= 0 && x <= 100\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.color = null;\n this.extras = null;\n }\n [_symbol_utils.$toStyle](bgColor) {\n const alpha = this.rate / 100;\n return _util.Util.makeHexColor(Math.round(bgColor.value.r * (1 - alpha) + this.value.r * alpha), Math.round(bgColor.value.g * (1 - alpha) + this.value.g * alpha), Math.round(bgColor.value.b * (1 - alpha) + this.value.b * alpha));\n }\n}\nclass Subform extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"subform\", true);\n this.access = (0, _utils.getStringOption)(attributes.access, [\"open\", \"nonInteractive\", \"protected\", \"readOnly\"]);\n this.allowMacro = (0, _utils.getInteger)({\n data: attributes.allowMacro,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.anchorType = (0, _utils.getStringOption)(attributes.anchorType, [\"topLeft\", \"bottomCenter\", \"bottomLeft\", \"bottomRight\", \"middleCenter\", \"middleLeft\", \"middleRight\", \"topCenter\", \"topRight\"]);\n this.colSpan = (0, _utils.getInteger)({\n data: attributes.colSpan,\n defaultValue: 1,\n validate: n => n >= 1 || n === -1\n });\n this.columnWidths = (attributes.columnWidths || \"\").trim().split(/\\s+/).map(x => x === \"-1\" ? -1 : (0, _utils.getMeasurement)(x));\n this.h = attributes.h ? (0, _utils.getMeasurement)(attributes.h) : \"\";\n this.hAlign = (0, _utils.getStringOption)(attributes.hAlign, [\"left\", \"center\", \"justify\", \"justifyAll\", \"radix\", \"right\"]);\n this.id = attributes.id || \"\";\n this.layout = (0, _utils.getStringOption)(attributes.layout, [\"position\", \"lr-tb\", \"rl-row\", \"rl-tb\", \"row\", \"table\", \"tb\"]);\n this.locale = attributes.locale || \"\";\n this.maxH = (0, _utils.getMeasurement)(attributes.maxH, \"0pt\");\n this.maxW = (0, _utils.getMeasurement)(attributes.maxW, \"0pt\");\n this.mergeMode = (0, _utils.getStringOption)(attributes.mergeMode, [\"consumeData\", \"matchTemplate\"]);\n this.minH = (0, _utils.getMeasurement)(attributes.minH, \"0pt\");\n this.minW = (0, _utils.getMeasurement)(attributes.minW, \"0pt\");\n this.name = attributes.name || \"\";\n this.presence = (0, _utils.getStringOption)(attributes.presence, [\"visible\", \"hidden\", \"inactive\", \"invisible\"]);\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.restoreState = (0, _utils.getStringOption)(attributes.restoreState, [\"manual\", \"auto\"]);\n this.scope = (0, _utils.getStringOption)(attributes.scope, [\"name\", \"none\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.w = attributes.w ? (0, _utils.getMeasurement)(attributes.w) : \"\";\n this.x = (0, _utils.getMeasurement)(attributes.x, \"0pt\");\n this.y = (0, _utils.getMeasurement)(attributes.y, \"0pt\");\n this.assist = null;\n this.bind = null;\n this.bookend = null;\n this.border = null;\n this.break = null;\n this.calculate = null;\n this.desc = null;\n this.extras = null;\n this.keep = null;\n this.margin = null;\n this.occur = null;\n this.overflow = null;\n this.pageSet = null;\n this.para = null;\n this.traversal = null;\n this.validate = null;\n this.variables = null;\n this.area = new _xfa_object.XFAObjectArray();\n this.breakAfter = new _xfa_object.XFAObjectArray();\n this.breakBefore = new _xfa_object.XFAObjectArray();\n this.connect = new _xfa_object.XFAObjectArray();\n this.draw = new _xfa_object.XFAObjectArray();\n this.event = new _xfa_object.XFAObjectArray();\n this.exObject = new _xfa_object.XFAObjectArray();\n this.exclGroup = new _xfa_object.XFAObjectArray();\n this.field = new _xfa_object.XFAObjectArray();\n this.proto = new _xfa_object.XFAObjectArray();\n this.setProperty = new _xfa_object.XFAObjectArray();\n this.subform = new _xfa_object.XFAObjectArray();\n this.subformSet = new _xfa_object.XFAObjectArray();\n }\n [_symbol_utils.$getSubformParent]() {\n const parent = this[_symbol_utils.$getParent]();\n if (parent instanceof SubformSet) {\n return parent[_symbol_utils.$getSubformParent]();\n }\n return parent;\n }\n [_symbol_utils.$isBindable]() {\n return true;\n }\n [_symbol_utils.$isThereMoreWidth]() {\n return this.layout.endsWith(\"-tb\") && this[_symbol_utils.$extra].attempt === 0 && this[_symbol_utils.$extra].numberInLine > 0 || this[_symbol_utils.$getParent]()[_symbol_utils.$isThereMoreWidth]();\n }\n *[_symbol_utils.$getContainedChildren]() {\n yield* getContainedChildren(this);\n }\n [_symbol_utils.$flushHTML]() {\n return (0, _layout.flushHTML)(this);\n }\n [_symbol_utils.$addHTML](html, bbox) {\n (0, _layout.addHTML)(this, html, bbox);\n }\n [_symbol_utils.$getAvailableSpace]() {\n return (0, _layout.getAvailableSpace)(this);\n }\n [_symbol_utils.$isSplittable]() {\n const parent = this[_symbol_utils.$getSubformParent]();\n if (!parent[_symbol_utils.$isSplittable]()) {\n return false;\n }\n if (this[_symbol_utils.$extra]._isSplittable !== undefined) {\n return this[_symbol_utils.$extra]._isSplittable;\n }\n if (this.layout === \"position\" || this.layout.includes(\"row\")) {\n this[_symbol_utils.$extra]._isSplittable = false;\n return false;\n }\n if (this.keep && this.keep.intact !== \"none\") {\n this[_symbol_utils.$extra]._isSplittable = false;\n return false;\n }\n if (parent.layout?.endsWith(\"-tb\") && parent[_symbol_utils.$extra].numberInLine !== 0) {\n return false;\n }\n this[_symbol_utils.$extra]._isSplittable = true;\n return true;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n setTabIndex(this);\n if (this.break) {\n if (this.break.after !== \"auto\" || this.break.afterTarget !== \"\") {\n const node = new BreakAfter({\n targetType: this.break.after,\n target: this.break.afterTarget,\n startNew: this.break.startNew.toString()\n });\n node[_symbol_utils.$globalData] = this[_symbol_utils.$globalData];\n this[_symbol_utils.$appendChild](node);\n this.breakAfter.push(node);\n }\n if (this.break.before !== \"auto\" || this.break.beforeTarget !== \"\") {\n const node = new BreakBefore({\n targetType: this.break.before,\n target: this.break.beforeTarget,\n startNew: this.break.startNew.toString()\n });\n node[_symbol_utils.$globalData] = this[_symbol_utils.$globalData];\n this[_symbol_utils.$appendChild](node);\n this.breakBefore.push(node);\n }\n if (this.break.overflowTarget !== \"\") {\n const node = new Overflow({\n target: this.break.overflowTarget,\n leader: this.break.overflowLeader,\n trailer: this.break.overflowTrailer\n });\n node[_symbol_utils.$globalData] = this[_symbol_utils.$globalData];\n this[_symbol_utils.$appendChild](node);\n this.overflow.push(node);\n }\n this[_symbol_utils.$removeChild](this.break);\n this.break = null;\n }\n if (this.presence === \"hidden\" || this.presence === \"inactive\") {\n return _utils.HTMLResult.EMPTY;\n }\n if (this.breakBefore.children.length > 1 || this.breakAfter.children.length > 1) {\n (0, _util.warn)(\"XFA - Several breakBefore or breakAfter in subforms: please file a bug.\");\n }\n if (this.breakBefore.children.length >= 1) {\n const breakBefore = this.breakBefore.children[0];\n if (handleBreak(breakBefore)) {\n return _utils.HTMLResult.breakNode(breakBefore);\n }\n }\n if (this[_symbol_utils.$extra]?.afterBreakAfter) {\n return _utils.HTMLResult.EMPTY;\n }\n (0, _html_utils.fixDimensions)(this);\n const children = [];\n const attributes = {\n id: this[_symbol_utils.$uid],\n class: []\n };\n (0, _html_utils.setAccess)(this, attributes.class);\n if (!this[_symbol_utils.$extra]) {\n this[_symbol_utils.$extra] = Object.create(null);\n }\n Object.assign(this[_symbol_utils.$extra], {\n children,\n line: null,\n attributes,\n attempt: 0,\n numberInLine: 0,\n availableSpace: {\n width: Math.min(this.w || Infinity, availableSpace.width),\n height: Math.min(this.h || Infinity, availableSpace.height)\n },\n width: 0,\n height: 0,\n prevHeight: 0,\n currentWidth: 0\n });\n const root = this[_symbol_utils.$getTemplateRoot]();\n const savedNoLayoutFailure = root[_symbol_utils.$extra].noLayoutFailure;\n const isSplittable = this[_symbol_utils.$isSplittable]();\n if (!isSplittable) {\n setFirstUnsplittable(this);\n }\n if (!(0, _layout.checkDimensions)(this, availableSpace)) {\n return _utils.HTMLResult.FAILURE;\n }\n const filter = new Set([\"area\", \"draw\", \"exclGroup\", \"field\", \"subform\", \"subformSet\"]);\n if (this.layout.includes(\"row\")) {\n const columnWidths = this[_symbol_utils.$getSubformParent]().columnWidths;\n if (Array.isArray(columnWidths) && columnWidths.length > 0) {\n this[_symbol_utils.$extra].columnWidths = columnWidths;\n this[_symbol_utils.$extra].currentColumn = 0;\n }\n }\n const style = (0, _html_utils.toStyle)(this, \"anchorType\", \"dimensions\", \"position\", \"presence\", \"border\", \"margin\", \"hAlign\");\n const classNames = [\"xfaSubform\"];\n const cl = (0, _html_utils.layoutClass)(this);\n if (cl) {\n classNames.push(cl);\n }\n attributes.style = style;\n attributes.class = classNames;\n if (this.name) {\n attributes.xfaName = this.name;\n }\n if (this.overflow) {\n const overflowExtra = this.overflow[_symbol_utils.$getExtra]();\n if (overflowExtra.addLeader) {\n overflowExtra.addLeader = false;\n handleOverflow(this, overflowExtra.leader, availableSpace);\n }\n }\n this[_symbol_utils.$pushPara]();\n const isLrTb = this.layout === \"lr-tb\" || this.layout === \"rl-tb\";\n const maxRun = isLrTb ? MAX_ATTEMPTS_FOR_LRTB_LAYOUT : 1;\n for (; this[_symbol_utils.$extra].attempt < maxRun; this[_symbol_utils.$extra].attempt++) {\n if (isLrTb && this[_symbol_utils.$extra].attempt === MAX_ATTEMPTS_FOR_LRTB_LAYOUT - 1) {\n this[_symbol_utils.$extra].numberInLine = 0;\n }\n const result = this[_symbol_utils.$childrenToHTML]({\n filter,\n include: true\n });\n if (result.success) {\n break;\n }\n if (result.isBreak()) {\n this[_symbol_utils.$popPara]();\n return result;\n }\n if (isLrTb && this[_symbol_utils.$extra].attempt === 0 && this[_symbol_utils.$extra].numberInLine === 0 && !root[_symbol_utils.$extra].noLayoutFailure) {\n this[_symbol_utils.$extra].attempt = maxRun;\n break;\n }\n }\n this[_symbol_utils.$popPara]();\n if (!isSplittable) {\n unsetFirstUnsplittable(this);\n }\n root[_symbol_utils.$extra].noLayoutFailure = savedNoLayoutFailure;\n if (this[_symbol_utils.$extra].attempt === maxRun) {\n if (this.overflow) {\n this[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].overflowNode = this.overflow;\n }\n if (!isSplittable) {\n delete this[_symbol_utils.$extra];\n }\n return _utils.HTMLResult.FAILURE;\n }\n if (this.overflow) {\n const overflowExtra = this.overflow[_symbol_utils.$getExtra]();\n if (overflowExtra.addTrailer) {\n overflowExtra.addTrailer = false;\n handleOverflow(this, overflowExtra.trailer, availableSpace);\n }\n }\n let marginH = 0;\n let marginV = 0;\n if (this.margin) {\n marginH = this.margin.leftInset + this.margin.rightInset;\n marginV = this.margin.topInset + this.margin.bottomInset;\n }\n const width = Math.max(this[_symbol_utils.$extra].width + marginH, this.w || 0);\n const height = Math.max(this[_symbol_utils.$extra].height + marginV, this.h || 0);\n const bbox = [this.x, this.y, width, height];\n if (this.w === \"\") {\n style.width = (0, _html_utils.measureToString)(width);\n }\n if (this.h === \"\") {\n style.height = (0, _html_utils.measureToString)(height);\n }\n if ((style.width === \"0px\" || style.height === \"0px\") && children.length === 0) {\n return _utils.HTMLResult.EMPTY;\n }\n const html = {\n name: \"div\",\n attributes,\n children\n };\n applyAssist(this, attributes);\n const result = _utils.HTMLResult.success((0, _html_utils.createWrapper)(this, html), bbox);\n if (this.breakAfter.children.length >= 1) {\n const breakAfter = this.breakAfter.children[0];\n if (handleBreak(breakAfter)) {\n this[_symbol_utils.$extra].afterBreakAfter = result;\n return _utils.HTMLResult.breakNode(breakAfter);\n }\n }\n delete this[_symbol_utils.$extra];\n return result;\n }\n}\nclass SubformSet extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"subformSet\", true);\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.relation = (0, _utils.getStringOption)(attributes.relation, [\"ordered\", \"choice\", \"unordered\"]);\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.bookend = null;\n this.break = null;\n this.desc = null;\n this.extras = null;\n this.occur = null;\n this.overflow = null;\n this.breakAfter = new _xfa_object.XFAObjectArray();\n this.breakBefore = new _xfa_object.XFAObjectArray();\n this.subform = new _xfa_object.XFAObjectArray();\n this.subformSet = new _xfa_object.XFAObjectArray();\n }\n *[_symbol_utils.$getContainedChildren]() {\n yield* getContainedChildren(this);\n }\n [_symbol_utils.$getSubformParent]() {\n let parent = this[_symbol_utils.$getParent]();\n while (!(parent instanceof Subform)) {\n parent = parent[_symbol_utils.$getParent]();\n }\n return parent;\n }\n [_symbol_utils.$isBindable]() {\n return true;\n }\n}\nclass SubjectDN extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"subjectDN\");\n this.delimiter = attributes.delimiter || \",\";\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = new Map(this[_symbol_utils.$content].split(this.delimiter).map(kv => {\n kv = kv.split(\"=\", 2);\n kv[0] = kv[0].trim();\n return kv;\n }));\n }\n}\nclass SubjectDNs extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"subjectDNs\", true);\n this.id = attributes.id || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.subjectDN = new _xfa_object.XFAObjectArray();\n }\n}\nclass Submit extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"submit\", true);\n this.embedPDF = (0, _utils.getInteger)({\n data: attributes.embedPDF,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.format = (0, _utils.getStringOption)(attributes.format, [\"xdp\", \"formdata\", \"pdf\", \"urlencoded\", \"xfd\", \"xml\"]);\n this.id = attributes.id || \"\";\n this.target = attributes.target || \"\";\n this.textEncoding = (0, _utils.getKeyword)({\n data: attributes.textEncoding ? attributes.textEncoding.toLowerCase() : \"\",\n defaultValue: \"\",\n validate: k => [\"utf-8\", \"big-five\", \"fontspecific\", \"gbk\", \"gb-18030\", \"gb-2312\", \"ksc-5601\", \"none\", \"shift-jis\", \"ucs-2\", \"utf-16\"].includes(k) || k.match(/iso-8859-\\d{2}/)\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.xdpContent = attributes.xdpContent || \"\";\n this.encrypt = null;\n this.encryptData = new _xfa_object.XFAObjectArray();\n this.signData = new _xfa_object.XFAObjectArray();\n }\n}\nclass Template extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"template\", true);\n this.baseProfile = (0, _utils.getStringOption)(attributes.baseProfile, [\"full\", \"interactiveForms\"]);\n this.extras = null;\n this.subform = new _xfa_object.XFAObjectArray();\n }\n [_symbol_utils.$finalize]() {\n if (this.subform.children.length === 0) {\n (0, _util.warn)(\"XFA - No subforms in template node.\");\n }\n if (this.subform.children.length >= 2) {\n (0, _util.warn)(\"XFA - Several subforms in template node: please file a bug.\");\n }\n this[_symbol_utils.$tabIndex] = DEFAULT_TAB_INDEX;\n }\n [_symbol_utils.$isSplittable]() {\n return true;\n }\n [_symbol_utils.$searchNode](expr, container) {\n if (expr.startsWith(\"#\")) {\n return [this[_symbol_utils.$ids].get(expr.slice(1))];\n }\n return (0, _som.searchNode)(this, container, expr, true, true);\n }\n *[_symbol_utils.$toPages]() {\n if (!this.subform.children.length) {\n return _utils.HTMLResult.success({\n name: \"div\",\n children: []\n });\n }\n this[_symbol_utils.$extra] = {\n overflowNode: null,\n firstUnsplittable: null,\n currentContentArea: null,\n currentPageArea: null,\n noLayoutFailure: false,\n pageNumber: 1,\n pagePosition: \"first\",\n oddOrEven: \"odd\",\n blankOrNotBlank: \"nonBlank\",\n paraStack: []\n };\n const root = this.subform.children[0];\n root.pageSet[_symbol_utils.$cleanPage]();\n const pageAreas = root.pageSet.pageArea.children;\n const mainHtml = {\n name: \"div\",\n children: []\n };\n let pageArea = null;\n let breakBefore = null;\n let breakBeforeTarget = null;\n if (root.breakBefore.children.length >= 1) {\n breakBefore = root.breakBefore.children[0];\n breakBeforeTarget = breakBefore.target;\n } else if (root.subform.children.length >= 1 && root.subform.children[0].breakBefore.children.length >= 1) {\n breakBefore = root.subform.children[0].breakBefore.children[0];\n breakBeforeTarget = breakBefore.target;\n } else if (root.break?.beforeTarget) {\n breakBefore = root.break;\n breakBeforeTarget = breakBefore.beforeTarget;\n } else if (root.subform.children.length >= 1 && root.subform.children[0].break?.beforeTarget) {\n breakBefore = root.subform.children[0].break;\n breakBeforeTarget = breakBefore.beforeTarget;\n }\n if (breakBefore) {\n const target = this[_symbol_utils.$searchNode](breakBeforeTarget, breakBefore[_symbol_utils.$getParent]());\n if (target instanceof PageArea) {\n pageArea = target;\n breakBefore[_symbol_utils.$extra] = {};\n }\n }\n if (!pageArea) {\n pageArea = pageAreas[0];\n }\n pageArea[_symbol_utils.$extra] = {\n numberOfUse: 1\n };\n const pageAreaParent = pageArea[_symbol_utils.$getParent]();\n pageAreaParent[_symbol_utils.$extra] = {\n numberOfUse: 1,\n pageIndex: pageAreaParent.pageArea.children.indexOf(pageArea),\n pageSetIndex: 0\n };\n let targetPageArea;\n let leader = null;\n let trailer = null;\n let hasSomething = true;\n let hasSomethingCounter = 0;\n let startIndex = 0;\n while (true) {\n if (!hasSomething) {\n mainHtml.children.pop();\n if (++hasSomethingCounter === MAX_EMPTY_PAGES) {\n (0, _util.warn)(\"XFA - Something goes wrong: please file a bug.\");\n return mainHtml;\n }\n } else {\n hasSomethingCounter = 0;\n }\n targetPageArea = null;\n this[_symbol_utils.$extra].currentPageArea = pageArea;\n const page = pageArea[_symbol_utils.$toHTML]().html;\n mainHtml.children.push(page);\n if (leader) {\n this[_symbol_utils.$extra].noLayoutFailure = true;\n page.children.push(leader[_symbol_utils.$toHTML](pageArea[_symbol_utils.$extra].space).html);\n leader = null;\n }\n if (trailer) {\n this[_symbol_utils.$extra].noLayoutFailure = true;\n page.children.push(trailer[_symbol_utils.$toHTML](pageArea[_symbol_utils.$extra].space).html);\n trailer = null;\n }\n const contentAreas = pageArea.contentArea.children;\n const htmlContentAreas = page.children.filter(node => node.attributes.class.includes(\"xfaContentarea\"));\n hasSomething = false;\n this[_symbol_utils.$extra].firstUnsplittable = null;\n this[_symbol_utils.$extra].noLayoutFailure = false;\n const flush = index => {\n const html = root[_symbol_utils.$flushHTML]();\n if (html) {\n hasSomething ||= html.children?.length > 0;\n htmlContentAreas[index].children.push(html);\n }\n };\n for (let i = startIndex, ii = contentAreas.length; i < ii; i++) {\n const contentArea = this[_symbol_utils.$extra].currentContentArea = contentAreas[i];\n const space = {\n width: contentArea.w,\n height: contentArea.h\n };\n startIndex = 0;\n if (leader) {\n htmlContentAreas[i].children.push(leader[_symbol_utils.$toHTML](space).html);\n leader = null;\n }\n if (trailer) {\n htmlContentAreas[i].children.push(trailer[_symbol_utils.$toHTML](space).html);\n trailer = null;\n }\n const html = root[_symbol_utils.$toHTML](space);\n if (html.success) {\n if (html.html) {\n hasSomething ||= html.html.children?.length > 0;\n htmlContentAreas[i].children.push(html.html);\n } else if (!hasSomething && mainHtml.children.length > 1) {\n mainHtml.children.pop();\n }\n return mainHtml;\n }\n if (html.isBreak()) {\n const node = html.breakNode;\n flush(i);\n if (node.targetType === \"auto\") {\n continue;\n }\n if (node.leader) {\n leader = this[_symbol_utils.$searchNode](node.leader, node[_symbol_utils.$getParent]());\n leader = leader ? leader[0] : null;\n }\n if (node.trailer) {\n trailer = this[_symbol_utils.$searchNode](node.trailer, node[_symbol_utils.$getParent]());\n trailer = trailer ? trailer[0] : null;\n }\n if (node.targetType === \"pageArea\") {\n targetPageArea = node[_symbol_utils.$extra].target;\n i = Infinity;\n } else if (!node[_symbol_utils.$extra].target) {\n i = node[_symbol_utils.$extra].index;\n } else {\n targetPageArea = node[_symbol_utils.$extra].target;\n startIndex = node[_symbol_utils.$extra].index + 1;\n i = Infinity;\n }\n continue;\n }\n if (this[_symbol_utils.$extra].overflowNode) {\n const node = this[_symbol_utils.$extra].overflowNode;\n this[_symbol_utils.$extra].overflowNode = null;\n const overflowExtra = node[_symbol_utils.$getExtra]();\n const target = overflowExtra.target;\n overflowExtra.addLeader = overflowExtra.leader !== null;\n overflowExtra.addTrailer = overflowExtra.trailer !== null;\n flush(i);\n const currentIndex = i;\n i = Infinity;\n if (target instanceof PageArea) {\n targetPageArea = target;\n } else if (target instanceof ContentArea) {\n const index = contentAreas.indexOf(target);\n if (index !== -1) {\n if (index > currentIndex) {\n i = index - 1;\n } else {\n startIndex = index;\n }\n } else {\n targetPageArea = target[_symbol_utils.$getParent]();\n startIndex = targetPageArea.contentArea.children.indexOf(target);\n }\n }\n continue;\n }\n flush(i);\n }\n this[_symbol_utils.$extra].pageNumber += 1;\n if (targetPageArea) {\n if (targetPageArea[_symbol_utils.$isUsable]()) {\n targetPageArea[_symbol_utils.$extra].numberOfUse += 1;\n } else {\n targetPageArea = null;\n }\n }\n pageArea = targetPageArea || pageArea[_symbol_utils.$getNextPage]();\n yield null;\n }\n }\n}\nexports.Template = Template;\nclass Text extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"text\");\n this.id = attributes.id || \"\";\n this.maxChars = (0, _utils.getInteger)({\n data: attributes.maxChars,\n defaultValue: 0,\n validate: x => x >= 0\n });\n this.name = attributes.name || \"\";\n this.rid = attributes.rid || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$acceptWhitespace]() {\n return true;\n }\n [_symbol_utils.$onChild](child) {\n if (child[_symbol_utils.$namespaceId] === _namespaces.NamespaceIds.xhtml.id) {\n this[_symbol_utils.$content] = child;\n return true;\n }\n (0, _util.warn)(`XFA - Invalid content in Text: ${child[_symbol_utils.$nodeName]}.`);\n return false;\n }\n [_symbol_utils.$onText](str) {\n if (this[_symbol_utils.$content] instanceof _xfa_object.XFAObject) {\n return;\n }\n super[_symbol_utils.$onText](str);\n }\n [_symbol_utils.$finalize]() {\n if (typeof this[_symbol_utils.$content] === \"string\") {\n this[_symbol_utils.$content] = this[_symbol_utils.$content].replaceAll(\"\\r\\n\", \"\\n\");\n }\n }\n [_symbol_utils.$getExtra]() {\n if (typeof this[_symbol_utils.$content] === \"string\") {\n return this[_symbol_utils.$content].split(/[\\u2029\\u2028\\n]/).reduce((acc, line) => {\n if (line) {\n acc.push(line);\n }\n return acc;\n }, []).join(\"\\n\");\n }\n return this[_symbol_utils.$content][_symbol_utils.$text]();\n }\n [_symbol_utils.$toHTML](availableSpace) {\n if (typeof this[_symbol_utils.$content] === \"string\") {\n const html = valueToHtml(this[_symbol_utils.$content]).html;\n if (this[_symbol_utils.$content].includes(\"\\u2029\")) {\n html.name = \"div\";\n html.children = [];\n this[_symbol_utils.$content].split(\"\\u2029\").map(para => para.split(/[\\u2028\\n]/).reduce((acc, line) => {\n acc.push({\n name: \"span\",\n value: line\n }, {\n name: \"br\"\n });\n return acc;\n }, [])).forEach(lines => {\n html.children.push({\n name: \"p\",\n children: lines\n });\n });\n } else if (/[\\u2028\\n]/.test(this[_symbol_utils.$content])) {\n html.name = \"div\";\n html.children = [];\n this[_symbol_utils.$content].split(/[\\u2028\\n]/).forEach(line => {\n html.children.push({\n name: \"span\",\n value: line\n }, {\n name: \"br\"\n });\n });\n }\n return _utils.HTMLResult.success(html);\n }\n return this[_symbol_utils.$content][_symbol_utils.$toHTML](availableSpace);\n }\n}\nexports.Text = Text;\nclass TextEdit extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"textEdit\", true);\n this.allowRichText = (0, _utils.getInteger)({\n data: attributes.allowRichText,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.hScrollPolicy = (0, _utils.getStringOption)(attributes.hScrollPolicy, [\"auto\", \"off\", \"on\"]);\n this.id = attributes.id || \"\";\n this.multiLine = (0, _utils.getInteger)({\n data: attributes.multiLine,\n defaultValue: \"\",\n validate: x => x === 0 || x === 1\n });\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.vScrollPolicy = (0, _utils.getStringOption)(attributes.vScrollPolicy, [\"auto\", \"off\", \"on\"]);\n this.border = null;\n this.comb = null;\n this.extras = null;\n this.margin = null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const style = (0, _html_utils.toStyle)(this, \"border\", \"font\", \"margin\");\n let html;\n const field = this[_symbol_utils.$getParent]()[_symbol_utils.$getParent]();\n if (this.multiLine === \"\") {\n this.multiLine = field instanceof Draw ? 1 : 0;\n }\n if (this.multiLine === 1) {\n html = {\n name: \"textarea\",\n attributes: {\n dataId: field[_symbol_utils.$data]?.[_symbol_utils.$uid] || field[_symbol_utils.$uid],\n fieldId: field[_symbol_utils.$uid],\n class: [\"xfaTextfield\"],\n style,\n \"aria-label\": ariaLabel(field),\n \"aria-required\": false\n }\n };\n } else {\n html = {\n name: \"input\",\n attributes: {\n type: \"text\",\n dataId: field[_symbol_utils.$data]?.[_symbol_utils.$uid] || field[_symbol_utils.$uid],\n fieldId: field[_symbol_utils.$uid],\n class: [\"xfaTextfield\"],\n style,\n \"aria-label\": ariaLabel(field),\n \"aria-required\": false\n }\n };\n }\n if (isRequired(field)) {\n html.attributes[\"aria-required\"] = true;\n html.attributes.required = true;\n }\n return _utils.HTMLResult.success({\n name: \"label\",\n attributes: {\n class: [\"xfaLabel\"]\n },\n children: [html]\n });\n }\n}\nclass Time extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"time\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n [_symbol_utils.$finalize]() {\n const date = this[_symbol_utils.$content].trim();\n this[_symbol_utils.$content] = date ? new Date(date) : null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n return valueToHtml(this[_symbol_utils.$content] ? this[_symbol_utils.$content].toString() : \"\");\n }\n}\nclass TimeStamp extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"timeStamp\");\n this.id = attributes.id || \"\";\n this.server = attributes.server || \"\";\n this.type = (0, _utils.getStringOption)(attributes.type, [\"optional\", \"required\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass ToolTip extends _xfa_object.StringObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"toolTip\");\n this.id = attributes.id || \"\";\n this.rid = attributes.rid || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Traversal extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"traversal\", true);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.traverse = new _xfa_object.XFAObjectArray();\n }\n}\nclass Traverse extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"traverse\", true);\n this.id = attributes.id || \"\";\n this.operation = (0, _utils.getStringOption)(attributes.operation, [\"next\", \"back\", \"down\", \"first\", \"left\", \"right\", \"up\"]);\n this.ref = attributes.ref || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.script = null;\n }\n get name() {\n return this.operation;\n }\n [_symbol_utils.$isTransparent]() {\n return false;\n }\n}\nclass Ui extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"ui\", true);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.picture = null;\n this.barcode = null;\n this.button = null;\n this.checkButton = null;\n this.choiceList = null;\n this.dateTimeEdit = null;\n this.defaultUi = null;\n this.imageEdit = null;\n this.numericEdit = null;\n this.passwordEdit = null;\n this.signature = null;\n this.textEdit = null;\n }\n [_symbol_utils.$getExtra]() {\n if (this[_symbol_utils.$extra] === undefined) {\n for (const name of Object.getOwnPropertyNames(this)) {\n if (name === \"extras\" || name === \"picture\") {\n continue;\n }\n const obj = this[name];\n if (!(obj instanceof _xfa_object.XFAObject)) {\n continue;\n }\n this[_symbol_utils.$extra] = obj;\n return obj;\n }\n this[_symbol_utils.$extra] = null;\n }\n return this[_symbol_utils.$extra];\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const obj = this[_symbol_utils.$getExtra]();\n if (obj) {\n return obj[_symbol_utils.$toHTML](availableSpace);\n }\n return _utils.HTMLResult.EMPTY;\n }\n}\nclass Validate extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"validate\", true);\n this.formatTest = (0, _utils.getStringOption)(attributes.formatTest, [\"warning\", \"disabled\", \"error\"]);\n this.id = attributes.id || \"\";\n this.nullTest = (0, _utils.getStringOption)(attributes.nullTest, [\"disabled\", \"error\", \"warning\"]);\n this.scriptTest = (0, _utils.getStringOption)(attributes.scriptTest, [\"error\", \"disabled\", \"warning\"]);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.extras = null;\n this.message = null;\n this.picture = null;\n this.script = null;\n }\n}\nclass Value extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"value\", true);\n this.id = attributes.id || \"\";\n this.override = (0, _utils.getInteger)({\n data: attributes.override,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.relevant = (0, _utils.getRelevant)(attributes.relevant);\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.arc = null;\n this.boolean = null;\n this.date = null;\n this.dateTime = null;\n this.decimal = null;\n this.exData = null;\n this.float = null;\n this.image = null;\n this.integer = null;\n this.line = null;\n this.rectangle = null;\n this.text = null;\n this.time = null;\n }\n [_symbol_utils.$setValue](value) {\n const parent = this[_symbol_utils.$getParent]();\n if (parent instanceof Field) {\n if (parent.ui?.imageEdit) {\n if (!this.image) {\n this.image = new Image({});\n this[_symbol_utils.$appendChild](this.image);\n }\n this.image[_symbol_utils.$content] = value[_symbol_utils.$content];\n return;\n }\n }\n const valueName = value[_symbol_utils.$nodeName];\n if (this[valueName] !== null) {\n this[valueName][_symbol_utils.$content] = value[_symbol_utils.$content];\n return;\n }\n for (const name of Object.getOwnPropertyNames(this)) {\n const obj = this[name];\n if (obj instanceof _xfa_object.XFAObject) {\n this[name] = null;\n this[_symbol_utils.$removeChild](obj);\n }\n }\n this[value[_symbol_utils.$nodeName]] = value;\n this[_symbol_utils.$appendChild](value);\n }\n [_symbol_utils.$text]() {\n if (this.exData) {\n if (typeof this.exData[_symbol_utils.$content] === \"string\") {\n return this.exData[_symbol_utils.$content].trim();\n }\n return this.exData[_symbol_utils.$content][_symbol_utils.$text]().trim();\n }\n for (const name of Object.getOwnPropertyNames(this)) {\n if (name === \"image\") {\n continue;\n }\n const obj = this[name];\n if (obj instanceof _xfa_object.XFAObject) {\n return (obj[_symbol_utils.$content] || \"\").toString().trim();\n }\n }\n return null;\n }\n [_symbol_utils.$toHTML](availableSpace) {\n for (const name of Object.getOwnPropertyNames(this)) {\n const obj = this[name];\n if (!(obj instanceof _xfa_object.XFAObject)) {\n continue;\n }\n return obj[_symbol_utils.$toHTML](availableSpace);\n }\n return _utils.HTMLResult.EMPTY;\n }\n}\nexports.Value = Value;\nclass Variables extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(TEMPLATE_NS_ID, \"variables\", true);\n this.id = attributes.id || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n this.boolean = new _xfa_object.XFAObjectArray();\n this.date = new _xfa_object.XFAObjectArray();\n this.dateTime = new _xfa_object.XFAObjectArray();\n this.decimal = new _xfa_object.XFAObjectArray();\n this.exData = new _xfa_object.XFAObjectArray();\n this.float = new _xfa_object.XFAObjectArray();\n this.image = new _xfa_object.XFAObjectArray();\n this.integer = new _xfa_object.XFAObjectArray();\n this.manifest = new _xfa_object.XFAObjectArray();\n this.script = new _xfa_object.XFAObjectArray();\n this.text = new _xfa_object.XFAObjectArray();\n this.time = new _xfa_object.XFAObjectArray();\n }\n [_symbol_utils.$isTransparent]() {\n return true;\n }\n}\nclass TemplateNamespace {\n static [_namespaces.$buildXFAObject](name, attributes) {\n if (TemplateNamespace.hasOwnProperty(name)) {\n const node = TemplateNamespace[name](attributes);\n node[_symbol_utils.$setSetAttributes](attributes);\n return node;\n }\n return undefined;\n }\n static appearanceFilter(attrs) {\n return new AppearanceFilter(attrs);\n }\n static arc(attrs) {\n return new Arc(attrs);\n }\n static area(attrs) {\n return new Area(attrs);\n }\n static assist(attrs) {\n return new Assist(attrs);\n }\n static barcode(attrs) {\n return new Barcode(attrs);\n }\n static bind(attrs) {\n return new Bind(attrs);\n }\n static bindItems(attrs) {\n return new BindItems(attrs);\n }\n static bookend(attrs) {\n return new Bookend(attrs);\n }\n static boolean(attrs) {\n return new BooleanElement(attrs);\n }\n static border(attrs) {\n return new Border(attrs);\n }\n static break(attrs) {\n return new Break(attrs);\n }\n static breakAfter(attrs) {\n return new BreakAfter(attrs);\n }\n static breakBefore(attrs) {\n return new BreakBefore(attrs);\n }\n static button(attrs) {\n return new Button(attrs);\n }\n static calculate(attrs) {\n return new Calculate(attrs);\n }\n static caption(attrs) {\n return new Caption(attrs);\n }\n static certificate(attrs) {\n return new Certificate(attrs);\n }\n static certificates(attrs) {\n return new Certificates(attrs);\n }\n static checkButton(attrs) {\n return new CheckButton(attrs);\n }\n static choiceList(attrs) {\n return new ChoiceList(attrs);\n }\n static color(attrs) {\n return new Color(attrs);\n }\n static comb(attrs) {\n return new Comb(attrs);\n }\n static connect(attrs) {\n return new Connect(attrs);\n }\n static contentArea(attrs) {\n return new ContentArea(attrs);\n }\n static corner(attrs) {\n return new Corner(attrs);\n }\n static date(attrs) {\n return new DateElement(attrs);\n }\n static dateTime(attrs) {\n return new DateTime(attrs);\n }\n static dateTimeEdit(attrs) {\n return new DateTimeEdit(attrs);\n }\n static decimal(attrs) {\n return new Decimal(attrs);\n }\n static defaultUi(attrs) {\n return new DefaultUi(attrs);\n }\n static desc(attrs) {\n return new Desc(attrs);\n }\n static digestMethod(attrs) {\n return new DigestMethod(attrs);\n }\n static digestMethods(attrs) {\n return new DigestMethods(attrs);\n }\n static draw(attrs) {\n return new Draw(attrs);\n }\n static edge(attrs) {\n return new Edge(attrs);\n }\n static encoding(attrs) {\n return new Encoding(attrs);\n }\n static encodings(attrs) {\n return new Encodings(attrs);\n }\n static encrypt(attrs) {\n return new Encrypt(attrs);\n }\n static encryptData(attrs) {\n return new EncryptData(attrs);\n }\n static encryption(attrs) {\n return new Encryption(attrs);\n }\n static encryptionMethod(attrs) {\n return new EncryptionMethod(attrs);\n }\n static encryptionMethods(attrs) {\n return new EncryptionMethods(attrs);\n }\n static event(attrs) {\n return new Event(attrs);\n }\n static exData(attrs) {\n return new ExData(attrs);\n }\n static exObject(attrs) {\n return new ExObject(attrs);\n }\n static exclGroup(attrs) {\n return new ExclGroup(attrs);\n }\n static execute(attrs) {\n return new Execute(attrs);\n }\n static extras(attrs) {\n return new Extras(attrs);\n }\n static field(attrs) {\n return new Field(attrs);\n }\n static fill(attrs) {\n return new Fill(attrs);\n }\n static filter(attrs) {\n return new Filter(attrs);\n }\n static float(attrs) {\n return new Float(attrs);\n }\n static font(attrs) {\n return new Font(attrs);\n }\n static format(attrs) {\n return new Format(attrs);\n }\n static handler(attrs) {\n return new Handler(attrs);\n }\n static hyphenation(attrs) {\n return new Hyphenation(attrs);\n }\n static image(attrs) {\n return new Image(attrs);\n }\n static imageEdit(attrs) {\n return new ImageEdit(attrs);\n }\n static integer(attrs) {\n return new Integer(attrs);\n }\n static issuers(attrs) {\n return new Issuers(attrs);\n }\n static items(attrs) {\n return new Items(attrs);\n }\n static keep(attrs) {\n return new Keep(attrs);\n }\n static keyUsage(attrs) {\n return new KeyUsage(attrs);\n }\n static line(attrs) {\n return new Line(attrs);\n }\n static linear(attrs) {\n return new Linear(attrs);\n }\n static lockDocument(attrs) {\n return new LockDocument(attrs);\n }\n static manifest(attrs) {\n return new Manifest(attrs);\n }\n static margin(attrs) {\n return new Margin(attrs);\n }\n static mdp(attrs) {\n return new Mdp(attrs);\n }\n static medium(attrs) {\n return new Medium(attrs);\n }\n static message(attrs) {\n return new Message(attrs);\n }\n static numericEdit(attrs) {\n return new NumericEdit(attrs);\n }\n static occur(attrs) {\n return new Occur(attrs);\n }\n static oid(attrs) {\n return new Oid(attrs);\n }\n static oids(attrs) {\n return new Oids(attrs);\n }\n static overflow(attrs) {\n return new Overflow(attrs);\n }\n static pageArea(attrs) {\n return new PageArea(attrs);\n }\n static pageSet(attrs) {\n return new PageSet(attrs);\n }\n static para(attrs) {\n return new Para(attrs);\n }\n static passwordEdit(attrs) {\n return new PasswordEdit(attrs);\n }\n static pattern(attrs) {\n return new Pattern(attrs);\n }\n static picture(attrs) {\n return new Picture(attrs);\n }\n static proto(attrs) {\n return new Proto(attrs);\n }\n static radial(attrs) {\n return new Radial(attrs);\n }\n static reason(attrs) {\n return new Reason(attrs);\n }\n static reasons(attrs) {\n return new Reasons(attrs);\n }\n static rectangle(attrs) {\n return new Rectangle(attrs);\n }\n static ref(attrs) {\n return new RefElement(attrs);\n }\n static script(attrs) {\n return new Script(attrs);\n }\n static setProperty(attrs) {\n return new SetProperty(attrs);\n }\n static signData(attrs) {\n return new SignData(attrs);\n }\n static signature(attrs) {\n return new Signature(attrs);\n }\n static signing(attrs) {\n return new Signing(attrs);\n }\n static solid(attrs) {\n return new Solid(attrs);\n }\n static speak(attrs) {\n return new Speak(attrs);\n }\n static stipple(attrs) {\n return new Stipple(attrs);\n }\n static subform(attrs) {\n return new Subform(attrs);\n }\n static subformSet(attrs) {\n return new SubformSet(attrs);\n }\n static subjectDN(attrs) {\n return new SubjectDN(attrs);\n }\n static subjectDNs(attrs) {\n return new SubjectDNs(attrs);\n }\n static submit(attrs) {\n return new Submit(attrs);\n }\n static template(attrs) {\n return new Template(attrs);\n }\n static text(attrs) {\n return new Text(attrs);\n }\n static textEdit(attrs) {\n return new TextEdit(attrs);\n }\n static time(attrs) {\n return new Time(attrs);\n }\n static timeStamp(attrs) {\n return new TimeStamp(attrs);\n }\n static toolTip(attrs) {\n return new ToolTip(attrs);\n }\n static traversal(attrs) {\n return new Traversal(attrs);\n }\n static traverse(attrs) {\n return new Traverse(attrs);\n }\n static ui(attrs) {\n return new Ui(attrs);\n }\n static validate(attrs) {\n return new Validate(attrs);\n }\n static value(attrs) {\n return new Value(attrs);\n }\n static variables(attrs) {\n return new Variables(attrs);\n }\n}\nexports.TemplateNamespace = TemplateNamespace;\n\n/***/ }),\n/* 81 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.NamespaceIds = exports.$buildXFAObject = void 0;\nconst $buildXFAObject = Symbol();\nexports.$buildXFAObject = $buildXFAObject;\nconst NamespaceIds = {\n config: {\n id: 0,\n check: ns => ns.startsWith(\"http://www.xfa.org/schema/xci/\")\n },\n connectionSet: {\n id: 1,\n check: ns => ns.startsWith(\"http://www.xfa.org/schema/xfa-connection-set/\")\n },\n datasets: {\n id: 2,\n check: ns => ns.startsWith(\"http://www.xfa.org/schema/xfa-data/\")\n },\n form: {\n id: 3,\n check: ns => ns.startsWith(\"http://www.xfa.org/schema/xfa-form/\")\n },\n localeSet: {\n id: 4,\n check: ns => ns.startsWith(\"http://www.xfa.org/schema/xfa-locale-set/\")\n },\n pdf: {\n id: 5,\n check: ns => ns === \"http://ns.adobe.com/xdp/pdf/\"\n },\n signature: {\n id: 6,\n check: ns => ns === \"http://www.w3.org/2000/09/xmldsig#\"\n },\n sourceSet: {\n id: 7,\n check: ns => ns.startsWith(\"http://www.xfa.org/schema/xfa-source-set/\")\n },\n stylesheet: {\n id: 8,\n check: ns => ns === \"http://www.w3.org/1999/XSL/Transform\"\n },\n template: {\n id: 9,\n check: ns => ns.startsWith(\"http://www.xfa.org/schema/xfa-template/\")\n },\n xdc: {\n id: 10,\n check: ns => ns.startsWith(\"http://www.xfa.org/schema/xdc/\")\n },\n xdp: {\n id: 11,\n check: ns => ns === \"http://ns.adobe.com/xdp/\"\n },\n xfdf: {\n id: 12,\n check: ns => ns === \"http://ns.adobe.com/xfdf/\"\n },\n xhtml: {\n id: 13,\n check: ns => ns === \"http://www.w3.org/1999/xhtml\"\n },\n xmpmeta: {\n id: 14,\n check: ns => ns === \"http://ns.adobe.com/xmpmeta/\"\n }\n};\nexports.NamespaceIds = NamespaceIds;\n\n/***/ }),\n/* 82 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.addHTML = addHTML;\nexports.checkDimensions = checkDimensions;\nexports.flushHTML = flushHTML;\nexports.getAvailableSpace = getAvailableSpace;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _html_utils = __w_pdfjs_require__(83);\nfunction createLine(node, children) {\n return {\n name: \"div\",\n attributes: {\n class: [node.layout === \"lr-tb\" ? \"xfaLr\" : \"xfaRl\"]\n },\n children\n };\n}\nfunction flushHTML(node) {\n if (!node[_symbol_utils.$extra]) {\n return null;\n }\n const attributes = node[_symbol_utils.$extra].attributes;\n const html = {\n name: \"div\",\n attributes,\n children: node[_symbol_utils.$extra].children\n };\n if (node[_symbol_utils.$extra].failingNode) {\n const htmlFromFailing = node[_symbol_utils.$extra].failingNode[_symbol_utils.$flushHTML]();\n if (htmlFromFailing) {\n if (node.layout.endsWith(\"-tb\")) {\n html.children.push(createLine(node, [htmlFromFailing]));\n } else {\n html.children.push(htmlFromFailing);\n }\n }\n }\n if (html.children.length === 0) {\n return null;\n }\n return html;\n}\nfunction addHTML(node, html, bbox) {\n const extra = node[_symbol_utils.$extra];\n const availableSpace = extra.availableSpace;\n const [x, y, w, h] = bbox;\n switch (node.layout) {\n case \"position\":\n {\n extra.width = Math.max(extra.width, x + w);\n extra.height = Math.max(extra.height, y + h);\n extra.children.push(html);\n break;\n }\n case \"lr-tb\":\n case \"rl-tb\":\n if (!extra.line || extra.attempt === 1) {\n extra.line = createLine(node, []);\n extra.children.push(extra.line);\n extra.numberInLine = 0;\n }\n extra.numberInLine += 1;\n extra.line.children.push(html);\n if (extra.attempt === 0) {\n extra.currentWidth += w;\n extra.height = Math.max(extra.height, extra.prevHeight + h);\n } else {\n extra.currentWidth = w;\n extra.prevHeight = extra.height;\n extra.height += h;\n extra.attempt = 0;\n }\n extra.width = Math.max(extra.width, extra.currentWidth);\n break;\n case \"rl-row\":\n case \"row\":\n {\n extra.children.push(html);\n extra.width += w;\n extra.height = Math.max(extra.height, h);\n const height = (0, _html_utils.measureToString)(extra.height);\n for (const child of extra.children) {\n child.attributes.style.height = height;\n }\n break;\n }\n case \"table\":\n {\n extra.width = Math.min(availableSpace.width, Math.max(extra.width, w));\n extra.height += h;\n extra.children.push(html);\n break;\n }\n case \"tb\":\n {\n extra.width = Math.min(availableSpace.width, Math.max(extra.width, w));\n extra.height += h;\n extra.children.push(html);\n break;\n }\n }\n}\nfunction getAvailableSpace(node) {\n const availableSpace = node[_symbol_utils.$extra].availableSpace;\n const marginV = node.margin ? node.margin.topInset + node.margin.bottomInset : 0;\n const marginH = node.margin ? node.margin.leftInset + node.margin.rightInset : 0;\n switch (node.layout) {\n case \"lr-tb\":\n case \"rl-tb\":\n if (node[_symbol_utils.$extra].attempt === 0) {\n return {\n width: availableSpace.width - marginH - node[_symbol_utils.$extra].currentWidth,\n height: availableSpace.height - marginV - node[_symbol_utils.$extra].prevHeight\n };\n }\n return {\n width: availableSpace.width - marginH,\n height: availableSpace.height - marginV - node[_symbol_utils.$extra].height\n };\n case \"rl-row\":\n case \"row\":\n const width = node[_symbol_utils.$extra].columnWidths.slice(node[_symbol_utils.$extra].currentColumn).reduce((a, x) => a + x);\n return {\n width,\n height: availableSpace.height - marginH\n };\n case \"table\":\n case \"tb\":\n return {\n width: availableSpace.width - marginH,\n height: availableSpace.height - marginV - node[_symbol_utils.$extra].height\n };\n case \"position\":\n default:\n return availableSpace;\n }\n}\nfunction getTransformedBBox(node) {\n let w = node.w === \"\" ? NaN : node.w;\n let h = node.h === \"\" ? NaN : node.h;\n let [centerX, centerY] = [0, 0];\n switch (node.anchorType || \"\") {\n case \"bottomCenter\":\n [centerX, centerY] = [w / 2, h];\n break;\n case \"bottomLeft\":\n [centerX, centerY] = [0, h];\n break;\n case \"bottomRight\":\n [centerX, centerY] = [w, h];\n break;\n case \"middleCenter\":\n [centerX, centerY] = [w / 2, h / 2];\n break;\n case \"middleLeft\":\n [centerX, centerY] = [0, h / 2];\n break;\n case \"middleRight\":\n [centerX, centerY] = [w, h / 2];\n break;\n case \"topCenter\":\n [centerX, centerY] = [w / 2, 0];\n break;\n case \"topRight\":\n [centerX, centerY] = [w, 0];\n break;\n }\n let x, y;\n switch (node.rotate || 0) {\n case 0:\n [x, y] = [-centerX, -centerY];\n break;\n case 90:\n [x, y] = [-centerY, centerX];\n [w, h] = [h, -w];\n break;\n case 180:\n [x, y] = [centerX, centerY];\n [w, h] = [-w, -h];\n break;\n case 270:\n [x, y] = [centerY, -centerX];\n [w, h] = [-h, w];\n break;\n }\n return [node.x + x + Math.min(0, w), node.y + y + Math.min(0, h), Math.abs(w), Math.abs(h)];\n}\nfunction checkDimensions(node, space) {\n if (node[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].firstUnsplittable === null) {\n return true;\n }\n if (node.w === 0 || node.h === 0) {\n return true;\n }\n const ERROR = 2;\n const parent = node[_symbol_utils.$getSubformParent]();\n const attempt = parent[_symbol_utils.$extra]?.attempt || 0;\n const [, y, w, h] = getTransformedBBox(node);\n switch (parent.layout) {\n case \"lr-tb\":\n case \"rl-tb\":\n if (attempt === 0) {\n if (!node[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].noLayoutFailure) {\n if (node.h !== \"\" && Math.round(h - space.height) > ERROR) {\n return false;\n }\n if (node.w !== \"\") {\n if (Math.round(w - space.width) <= ERROR) {\n return true;\n }\n if (parent[_symbol_utils.$extra].numberInLine === 0) {\n return space.height > ERROR;\n }\n return false;\n }\n return space.width > ERROR;\n }\n if (node.w !== \"\") {\n return Math.round(w - space.width) <= ERROR;\n }\n return space.width > ERROR;\n }\n if (node[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].noLayoutFailure) {\n return true;\n }\n if (node.h !== \"\" && Math.round(h - space.height) > ERROR) {\n return false;\n }\n if (node.w === \"\" || Math.round(w - space.width) <= ERROR) {\n return space.height > ERROR;\n }\n if (parent[_symbol_utils.$isThereMoreWidth]()) {\n return false;\n }\n return space.height > ERROR;\n case \"table\":\n case \"tb\":\n if (node[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].noLayoutFailure) {\n return true;\n }\n if (node.h !== \"\" && !node[_symbol_utils.$isSplittable]()) {\n return Math.round(h - space.height) <= ERROR;\n }\n if (node.w === \"\" || Math.round(w - space.width) <= ERROR) {\n return space.height > ERROR;\n }\n if (parent[_symbol_utils.$isThereMoreWidth]()) {\n return false;\n }\n return space.height > ERROR;\n case \"position\":\n if (node[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].noLayoutFailure) {\n return true;\n }\n if (node.h === \"\" || Math.round(h + y - space.height) <= ERROR) {\n return true;\n }\n const area = node[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].currentContentArea;\n return h + y > area.h;\n case \"rl-row\":\n case \"row\":\n if (node[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].noLayoutFailure) {\n return true;\n }\n if (node.h !== \"\") {\n return Math.round(h - space.height) <= ERROR;\n }\n return true;\n default:\n return true;\n }\n}\n\n/***/ }),\n/* 83 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.computeBbox = computeBbox;\nexports.createWrapper = createWrapper;\nexports.fixDimensions = fixDimensions;\nexports.fixTextIndent = fixTextIndent;\nexports.fixURL = fixURL;\nexports.isPrintOnly = isPrintOnly;\nexports.layoutClass = layoutClass;\nexports.layoutNode = layoutNode;\nexports.measureToString = measureToString;\nexports.setAccess = setAccess;\nexports.setFontFamily = setFontFamily;\nexports.setMinMaxDimensions = setMinMaxDimensions;\nexports.setPara = setPara;\nexports.toStyle = toStyle;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _util = __w_pdfjs_require__(2);\nvar _utils = __w_pdfjs_require__(84);\nvar _fonts = __w_pdfjs_require__(85);\nvar _text = __w_pdfjs_require__(86);\nvar _xfa_object = __w_pdfjs_require__(87);\nfunction measureToString(m) {\n if (typeof m === \"string\") {\n return \"0px\";\n }\n return Number.isInteger(m) ? `${m}px` : `${m.toFixed(2)}px`;\n}\nconst converters = {\n anchorType(node, style) {\n const parent = node[_symbol_utils.$getSubformParent]();\n if (!parent || parent.layout && parent.layout !== \"position\") {\n return;\n }\n if (!(\"transform\" in style)) {\n style.transform = \"\";\n }\n switch (node.anchorType) {\n case \"bottomCenter\":\n style.transform += \"translate(-50%, -100%)\";\n break;\n case \"bottomLeft\":\n style.transform += \"translate(0,-100%)\";\n break;\n case \"bottomRight\":\n style.transform += \"translate(-100%,-100%)\";\n break;\n case \"middleCenter\":\n style.transform += \"translate(-50%,-50%)\";\n break;\n case \"middleLeft\":\n style.transform += \"translate(0,-50%)\";\n break;\n case \"middleRight\":\n style.transform += \"translate(-100%,-50%)\";\n break;\n case \"topCenter\":\n style.transform += \"translate(-50%,0)\";\n break;\n case \"topRight\":\n style.transform += \"translate(-100%,0)\";\n break;\n }\n },\n dimensions(node, style) {\n const parent = node[_symbol_utils.$getSubformParent]();\n let width = node.w;\n const height = node.h;\n if (parent.layout?.includes(\"row\")) {\n const extra = parent[_symbol_utils.$extra];\n const colSpan = node.colSpan;\n let w;\n if (colSpan === -1) {\n w = extra.columnWidths.slice(extra.currentColumn).reduce((a, x) => a + x, 0);\n extra.currentColumn = 0;\n } else {\n w = extra.columnWidths.slice(extra.currentColumn, extra.currentColumn + colSpan).reduce((a, x) => a + x, 0);\n extra.currentColumn = (extra.currentColumn + node.colSpan) % extra.columnWidths.length;\n }\n if (!isNaN(w)) {\n width = node.w = w;\n }\n }\n style.width = width !== \"\" ? measureToString(width) : \"auto\";\n style.height = height !== \"\" ? measureToString(height) : \"auto\";\n },\n position(node, style) {\n const parent = node[_symbol_utils.$getSubformParent]();\n if (parent?.layout && parent.layout !== \"position\") {\n return;\n }\n style.position = \"absolute\";\n style.left = measureToString(node.x);\n style.top = measureToString(node.y);\n },\n rotate(node, style) {\n if (node.rotate) {\n if (!(\"transform\" in style)) {\n style.transform = \"\";\n }\n style.transform += `rotate(-${node.rotate}deg)`;\n style.transformOrigin = \"top left\";\n }\n },\n presence(node, style) {\n switch (node.presence) {\n case \"invisible\":\n style.visibility = \"hidden\";\n break;\n case \"hidden\":\n case \"inactive\":\n style.display = \"none\";\n break;\n }\n },\n hAlign(node, style) {\n if (node[_symbol_utils.$nodeName] === \"para\") {\n switch (node.hAlign) {\n case \"justifyAll\":\n style.textAlign = \"justify-all\";\n break;\n case \"radix\":\n style.textAlign = \"left\";\n break;\n default:\n style.textAlign = node.hAlign;\n }\n } else {\n switch (node.hAlign) {\n case \"left\":\n style.alignSelf = \"start\";\n break;\n case \"center\":\n style.alignSelf = \"center\";\n break;\n case \"right\":\n style.alignSelf = \"end\";\n break;\n }\n }\n },\n margin(node, style) {\n if (node.margin) {\n style.margin = node.margin[_symbol_utils.$toStyle]().margin;\n }\n }\n};\nfunction setMinMaxDimensions(node, style) {\n const parent = node[_symbol_utils.$getSubformParent]();\n if (parent.layout === \"position\") {\n if (node.minW > 0) {\n style.minWidth = measureToString(node.minW);\n }\n if (node.maxW > 0) {\n style.maxWidth = measureToString(node.maxW);\n }\n if (node.minH > 0) {\n style.minHeight = measureToString(node.minH);\n }\n if (node.maxH > 0) {\n style.maxHeight = measureToString(node.maxH);\n }\n }\n}\nfunction layoutText(text, xfaFont, margin, lineHeight, fontFinder, width) {\n const measure = new _text.TextMeasure(xfaFont, margin, lineHeight, fontFinder);\n if (typeof text === \"string\") {\n measure.addString(text);\n } else {\n text[_symbol_utils.$pushGlyphs](measure);\n }\n return measure.compute(width);\n}\nfunction layoutNode(node, availableSpace) {\n let height = null;\n let width = null;\n let isBroken = false;\n if ((!node.w || !node.h) && node.value) {\n let marginH = 0;\n let marginV = 0;\n if (node.margin) {\n marginH = node.margin.leftInset + node.margin.rightInset;\n marginV = node.margin.topInset + node.margin.bottomInset;\n }\n let lineHeight = null;\n let margin = null;\n if (node.para) {\n margin = Object.create(null);\n lineHeight = node.para.lineHeight === \"\" ? null : node.para.lineHeight;\n margin.top = node.para.spaceAbove === \"\" ? 0 : node.para.spaceAbove;\n margin.bottom = node.para.spaceBelow === \"\" ? 0 : node.para.spaceBelow;\n margin.left = node.para.marginLeft === \"\" ? 0 : node.para.marginLeft;\n margin.right = node.para.marginRight === \"\" ? 0 : node.para.marginRight;\n }\n let font = node.font;\n if (!font) {\n const root = node[_symbol_utils.$getTemplateRoot]();\n let parent = node[_symbol_utils.$getParent]();\n while (parent && parent !== root) {\n if (parent.font) {\n font = parent.font;\n break;\n }\n parent = parent[_symbol_utils.$getParent]();\n }\n }\n const maxWidth = (node.w || availableSpace.width) - marginH;\n const fontFinder = node[_symbol_utils.$globalData].fontFinder;\n if (node.value.exData && node.value.exData[_symbol_utils.$content] && node.value.exData.contentType === \"text/html\") {\n const res = layoutText(node.value.exData[_symbol_utils.$content], font, margin, lineHeight, fontFinder, maxWidth);\n width = res.width;\n height = res.height;\n isBroken = res.isBroken;\n } else {\n const text = node.value[_symbol_utils.$text]();\n if (text) {\n const res = layoutText(text, font, margin, lineHeight, fontFinder, maxWidth);\n width = res.width;\n height = res.height;\n isBroken = res.isBroken;\n }\n }\n if (width !== null && !node.w) {\n width += marginH;\n }\n if (height !== null && !node.h) {\n height += marginV;\n }\n }\n return {\n w: width,\n h: height,\n isBroken\n };\n}\nfunction computeBbox(node, html, availableSpace) {\n let bbox;\n if (node.w !== \"\" && node.h !== \"\") {\n bbox = [node.x, node.y, node.w, node.h];\n } else {\n if (!availableSpace) {\n return null;\n }\n let width = node.w;\n if (width === \"\") {\n if (node.maxW === 0) {\n const parent = node[_symbol_utils.$getSubformParent]();\n width = parent.layout === \"position\" && parent.w !== \"\" ? 0 : node.minW;\n } else {\n width = Math.min(node.maxW, availableSpace.width);\n }\n html.attributes.style.width = measureToString(width);\n }\n let height = node.h;\n if (height === \"\") {\n if (node.maxH === 0) {\n const parent = node[_symbol_utils.$getSubformParent]();\n height = parent.layout === \"position\" && parent.h !== \"\" ? 0 : node.minH;\n } else {\n height = Math.min(node.maxH, availableSpace.height);\n }\n html.attributes.style.height = measureToString(height);\n }\n bbox = [node.x, node.y, width, height];\n }\n return bbox;\n}\nfunction fixDimensions(node) {\n const parent = node[_symbol_utils.$getSubformParent]();\n if (parent.layout?.includes(\"row\")) {\n const extra = parent[_symbol_utils.$extra];\n const colSpan = node.colSpan;\n let width;\n if (colSpan === -1) {\n width = extra.columnWidths.slice(extra.currentColumn).reduce((a, w) => a + w, 0);\n } else {\n width = extra.columnWidths.slice(extra.currentColumn, extra.currentColumn + colSpan).reduce((a, w) => a + w, 0);\n }\n if (!isNaN(width)) {\n node.w = width;\n }\n }\n if (parent.layout && parent.layout !== \"position\") {\n node.x = node.y = 0;\n }\n if (node.layout === \"table\") {\n if (node.w === \"\" && Array.isArray(node.columnWidths)) {\n node.w = node.columnWidths.reduce((a, x) => a + x, 0);\n }\n }\n}\nfunction layoutClass(node) {\n switch (node.layout) {\n case \"position\":\n return \"xfaPosition\";\n case \"lr-tb\":\n return \"xfaLrTb\";\n case \"rl-row\":\n return \"xfaRlRow\";\n case \"rl-tb\":\n return \"xfaRlTb\";\n case \"row\":\n return \"xfaRow\";\n case \"table\":\n return \"xfaTable\";\n case \"tb\":\n return \"xfaTb\";\n default:\n return \"xfaPosition\";\n }\n}\nfunction toStyle(node, ...names) {\n const style = Object.create(null);\n for (const name of names) {\n const value = node[name];\n if (value === null) {\n continue;\n }\n if (converters.hasOwnProperty(name)) {\n converters[name](node, style);\n continue;\n }\n if (value instanceof _xfa_object.XFAObject) {\n const newStyle = value[_symbol_utils.$toStyle]();\n if (newStyle) {\n Object.assign(style, newStyle);\n } else {\n (0, _util.warn)(`(DEBUG) - XFA - style for ${name} not implemented yet`);\n }\n }\n }\n return style;\n}\nfunction createWrapper(node, html) {\n const {\n attributes\n } = html;\n const {\n style\n } = attributes;\n const wrapper = {\n name: \"div\",\n attributes: {\n class: [\"xfaWrapper\"],\n style: Object.create(null)\n },\n children: []\n };\n attributes.class.push(\"xfaWrapped\");\n if (node.border) {\n const {\n widths,\n insets\n } = node.border[_symbol_utils.$extra];\n let width, height;\n let top = insets[0];\n let left = insets[3];\n const insetsH = insets[0] + insets[2];\n const insetsW = insets[1] + insets[3];\n switch (node.border.hand) {\n case \"even\":\n top -= widths[0] / 2;\n left -= widths[3] / 2;\n width = `calc(100% + ${(widths[1] + widths[3]) / 2 - insetsW}px)`;\n height = `calc(100% + ${(widths[0] + widths[2]) / 2 - insetsH}px)`;\n break;\n case \"left\":\n top -= widths[0];\n left -= widths[3];\n width = `calc(100% + ${widths[1] + widths[3] - insetsW}px)`;\n height = `calc(100% + ${widths[0] + widths[2] - insetsH}px)`;\n break;\n case \"right\":\n width = insetsW ? `calc(100% - ${insetsW}px)` : \"100%\";\n height = insetsH ? `calc(100% - ${insetsH}px)` : \"100%\";\n break;\n }\n const classNames = [\"xfaBorder\"];\n if (isPrintOnly(node.border)) {\n classNames.push(\"xfaPrintOnly\");\n }\n const border = {\n name: \"div\",\n attributes: {\n class: classNames,\n style: {\n top: `${top}px`,\n left: `${left}px`,\n width,\n height\n }\n },\n children: []\n };\n for (const key of [\"border\", \"borderWidth\", \"borderColor\", \"borderRadius\", \"borderStyle\"]) {\n if (style[key] !== undefined) {\n border.attributes.style[key] = style[key];\n delete style[key];\n }\n }\n wrapper.children.push(border, html);\n } else {\n wrapper.children.push(html);\n }\n for (const key of [\"background\", \"backgroundClip\", \"top\", \"left\", \"width\", \"height\", \"minWidth\", \"minHeight\", \"maxWidth\", \"maxHeight\", \"transform\", \"transformOrigin\", \"visibility\"]) {\n if (style[key] !== undefined) {\n wrapper.attributes.style[key] = style[key];\n delete style[key];\n }\n }\n wrapper.attributes.style.position = style.position === \"absolute\" ? \"absolute\" : \"relative\";\n delete style.position;\n if (style.alignSelf) {\n wrapper.attributes.style.alignSelf = style.alignSelf;\n delete style.alignSelf;\n }\n return wrapper;\n}\nfunction fixTextIndent(styles) {\n const indent = (0, _utils.getMeasurement)(styles.textIndent, \"0px\");\n if (indent >= 0) {\n return;\n }\n const align = styles.textAlign === \"right\" ? \"right\" : \"left\";\n const name = \"padding\" + (align === \"left\" ? \"Left\" : \"Right\");\n const padding = (0, _utils.getMeasurement)(styles[name], \"0px\");\n styles[name] = `${padding - indent}px`;\n}\nfunction setAccess(node, classNames) {\n switch (node.access) {\n case \"nonInteractive\":\n classNames.push(\"xfaNonInteractive\");\n break;\n case \"readOnly\":\n classNames.push(\"xfaReadOnly\");\n break;\n case \"protected\":\n classNames.push(\"xfaDisabled\");\n break;\n }\n}\nfunction isPrintOnly(node) {\n return node.relevant.length > 0 && !node.relevant[0].excluded && node.relevant[0].viewname === \"print\";\n}\nfunction getCurrentPara(node) {\n const stack = node[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].paraStack;\n return stack.length ? stack.at(-1) : null;\n}\nfunction setPara(node, nodeStyle, value) {\n if (value.attributes.class?.includes(\"xfaRich\")) {\n if (nodeStyle) {\n if (node.h === \"\") {\n nodeStyle.height = \"auto\";\n }\n if (node.w === \"\") {\n nodeStyle.width = \"auto\";\n }\n }\n const para = getCurrentPara(node);\n if (para) {\n const valueStyle = value.attributes.style;\n valueStyle.display = \"flex\";\n valueStyle.flexDirection = \"column\";\n switch (para.vAlign) {\n case \"top\":\n valueStyle.justifyContent = \"start\";\n break;\n case \"bottom\":\n valueStyle.justifyContent = \"end\";\n break;\n case \"middle\":\n valueStyle.justifyContent = \"center\";\n break;\n }\n const paraStyle = para[_symbol_utils.$toStyle]();\n for (const [key, val] of Object.entries(paraStyle)) {\n if (!(key in valueStyle)) {\n valueStyle[key] = val;\n }\n }\n }\n }\n}\nfunction setFontFamily(xfaFont, node, fontFinder, style) {\n if (!fontFinder) {\n delete style.fontFamily;\n return;\n }\n const name = (0, _utils.stripQuotes)(xfaFont.typeface);\n style.fontFamily = `\"${name}\"`;\n const typeface = fontFinder.find(name);\n if (typeface) {\n const {\n fontFamily\n } = typeface.regular.cssFontInfo;\n if (fontFamily !== name) {\n style.fontFamily = `\"${fontFamily}\"`;\n }\n const para = getCurrentPara(node);\n if (para && para.lineHeight !== \"\") {\n return;\n }\n if (style.lineHeight) {\n return;\n }\n const pdfFont = (0, _fonts.selectFont)(xfaFont, typeface);\n if (pdfFont) {\n style.lineHeight = Math.max(1.2, pdfFont.lineHeight);\n }\n }\n}\nfunction fixURL(str) {\n const absoluteUrl = (0, _util.createValidAbsoluteUrl)(str, null, {\n addDefaultProtocol: true,\n tryConvertEncoding: true\n });\n return absoluteUrl ? absoluteUrl.href : null;\n}\n\n/***/ }),\n/* 84 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.HTMLResult = void 0;\nexports.getBBox = getBBox;\nexports.getColor = getColor;\nexports.getFloat = getFloat;\nexports.getInteger = getInteger;\nexports.getKeyword = getKeyword;\nexports.getMeasurement = getMeasurement;\nexports.getRatio = getRatio;\nexports.getRelevant = getRelevant;\nexports.getStringOption = getStringOption;\nexports.stripQuotes = stripQuotes;\nvar _util = __w_pdfjs_require__(2);\nconst dimConverters = {\n pt: x => x,\n cm: x => x / 2.54 * 72,\n mm: x => x / (10 * 2.54) * 72,\n in: x => x * 72,\n px: x => x\n};\nconst measurementPattern = /([+-]?\\d+\\.?\\d*)(.*)/;\nfunction stripQuotes(str) {\n if (str.startsWith(\"'\") || str.startsWith('\"')) {\n return str.slice(1, -1);\n }\n return str;\n}\nfunction getInteger({\n data,\n defaultValue,\n validate\n}) {\n if (!data) {\n return defaultValue;\n }\n data = data.trim();\n const n = parseInt(data, 10);\n if (!isNaN(n) && validate(n)) {\n return n;\n }\n return defaultValue;\n}\nfunction getFloat({\n data,\n defaultValue,\n validate\n}) {\n if (!data) {\n return defaultValue;\n }\n data = data.trim();\n const n = parseFloat(data);\n if (!isNaN(n) && validate(n)) {\n return n;\n }\n return defaultValue;\n}\nfunction getKeyword({\n data,\n defaultValue,\n validate\n}) {\n if (!data) {\n return defaultValue;\n }\n data = data.trim();\n if (validate(data)) {\n return data;\n }\n return defaultValue;\n}\nfunction getStringOption(data, options) {\n return getKeyword({\n data,\n defaultValue: options[0],\n validate: k => options.includes(k)\n });\n}\nfunction getMeasurement(str, def = \"0\") {\n def ||= \"0\";\n if (!str) {\n return getMeasurement(def);\n }\n const match = str.trim().match(measurementPattern);\n if (!match) {\n return getMeasurement(def);\n }\n const [, valueStr, unit] = match;\n const value = parseFloat(valueStr);\n if (isNaN(value)) {\n return getMeasurement(def);\n }\n if (value === 0) {\n return 0;\n }\n const conv = dimConverters[unit];\n if (conv) {\n return conv(value);\n }\n return value;\n}\nfunction getRatio(data) {\n if (!data) {\n return {\n num: 1,\n den: 1\n };\n }\n const ratio = data.trim().split(/\\s*:\\s*/).map(x => parseFloat(x)).filter(x => !isNaN(x));\n if (ratio.length === 1) {\n ratio.push(1);\n }\n if (ratio.length === 0) {\n return {\n num: 1,\n den: 1\n };\n }\n const [num, den] = ratio;\n return {\n num,\n den\n };\n}\nfunction getRelevant(data) {\n if (!data) {\n return [];\n }\n return data.trim().split(/\\s+/).map(e => {\n return {\n excluded: e[0] === \"-\",\n viewname: e.substring(1)\n };\n });\n}\nfunction getColor(data, def = [0, 0, 0]) {\n let [r, g, b] = def;\n if (!data) {\n return {\n r,\n g,\n b\n };\n }\n const color = data.trim().split(/\\s*,\\s*/).map(c => Math.min(Math.max(0, parseInt(c.trim(), 10)), 255)).map(c => isNaN(c) ? 0 : c);\n if (color.length < 3) {\n return {\n r,\n g,\n b\n };\n }\n [r, g, b] = color;\n return {\n r,\n g,\n b\n };\n}\nfunction getBBox(data) {\n const def = -1;\n if (!data) {\n return {\n x: def,\n y: def,\n width: def,\n height: def\n };\n }\n const bbox = data.trim().split(/\\s*,\\s*/).map(m => getMeasurement(m, \"-1\"));\n if (bbox.length < 4 || bbox[2] < 0 || bbox[3] < 0) {\n return {\n x: def,\n y: def,\n width: def,\n height: def\n };\n }\n const [x, y, width, height] = bbox;\n return {\n x,\n y,\n width,\n height\n };\n}\nclass HTMLResult {\n static get FAILURE() {\n return (0, _util.shadow)(this, \"FAILURE\", new HTMLResult(false, null, null, null));\n }\n static get EMPTY() {\n return (0, _util.shadow)(this, \"EMPTY\", new HTMLResult(true, null, null, null));\n }\n constructor(success, html, bbox, breakNode) {\n this.success = success;\n this.html = html;\n this.bbox = bbox;\n this.breakNode = breakNode;\n }\n isBreak() {\n return !!this.breakNode;\n }\n static breakNode(node) {\n return new HTMLResult(false, null, null, node);\n }\n static success(html, bbox = null) {\n return new HTMLResult(true, html, bbox, null);\n }\n}\nexports.HTMLResult = HTMLResult;\n\n/***/ }),\n/* 85 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FontFinder = void 0;\nexports.getMetrics = getMetrics;\nexports.selectFont = selectFont;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _utils = __w_pdfjs_require__(84);\nvar _util = __w_pdfjs_require__(2);\nclass FontFinder {\n constructor(pdfFonts) {\n this.fonts = new Map();\n this.cache = new Map();\n this.warned = new Set();\n this.defaultFont = null;\n this.add(pdfFonts);\n }\n add(pdfFonts, reallyMissingFonts = null) {\n for (const pdfFont of pdfFonts) {\n this.addPdfFont(pdfFont);\n }\n for (const pdfFont of this.fonts.values()) {\n if (!pdfFont.regular) {\n pdfFont.regular = pdfFont.italic || pdfFont.bold || pdfFont.bolditalic;\n }\n }\n if (!reallyMissingFonts || reallyMissingFonts.size === 0) {\n return;\n }\n const myriad = this.fonts.get(\"PdfJS-Fallback-PdfJS-XFA\");\n for (const missing of reallyMissingFonts) {\n this.fonts.set(missing, myriad);\n }\n }\n addPdfFont(pdfFont) {\n const cssFontInfo = pdfFont.cssFontInfo;\n const name = cssFontInfo.fontFamily;\n let font = this.fonts.get(name);\n if (!font) {\n font = Object.create(null);\n this.fonts.set(name, font);\n if (!this.defaultFont) {\n this.defaultFont = font;\n }\n }\n let property = \"\";\n const fontWeight = parseFloat(cssFontInfo.fontWeight);\n if (parseFloat(cssFontInfo.italicAngle) !== 0) {\n property = fontWeight >= 700 ? \"bolditalic\" : \"italic\";\n } else if (fontWeight >= 700) {\n property = \"bold\";\n }\n if (!property) {\n if (pdfFont.name.includes(\"Bold\") || pdfFont.psName?.includes(\"Bold\")) {\n property = \"bold\";\n }\n if (pdfFont.name.includes(\"Italic\") || pdfFont.name.endsWith(\"It\") || pdfFont.psName?.includes(\"Italic\") || pdfFont.psName?.endsWith(\"It\")) {\n property += \"italic\";\n }\n }\n if (!property) {\n property = \"regular\";\n }\n font[property] = pdfFont;\n }\n getDefault() {\n return this.defaultFont;\n }\n find(fontName, mustWarn = true) {\n let font = this.fonts.get(fontName) || this.cache.get(fontName);\n if (font) {\n return font;\n }\n const pattern = /,|-|_| |bolditalic|bold|italic|regular|it/gi;\n let name = fontName.replaceAll(pattern, \"\");\n font = this.fonts.get(name);\n if (font) {\n this.cache.set(fontName, font);\n return font;\n }\n name = name.toLowerCase();\n const maybe = [];\n for (const [family, pdfFont] of this.fonts.entries()) {\n if (family.replaceAll(pattern, \"\").toLowerCase().startsWith(name)) {\n maybe.push(pdfFont);\n }\n }\n if (maybe.length === 0) {\n for (const [, pdfFont] of this.fonts.entries()) {\n if (pdfFont.regular.name?.replaceAll(pattern, \"\").toLowerCase().startsWith(name)) {\n maybe.push(pdfFont);\n }\n }\n }\n if (maybe.length === 0) {\n name = name.replaceAll(/psmt|mt/gi, \"\");\n for (const [family, pdfFont] of this.fonts.entries()) {\n if (family.replaceAll(pattern, \"\").toLowerCase().startsWith(name)) {\n maybe.push(pdfFont);\n }\n }\n }\n if (maybe.length === 0) {\n for (const pdfFont of this.fonts.values()) {\n if (pdfFont.regular.name?.replaceAll(pattern, \"\").toLowerCase().startsWith(name)) {\n maybe.push(pdfFont);\n }\n }\n }\n if (maybe.length >= 1) {\n if (maybe.length !== 1 && mustWarn) {\n (0, _util.warn)(`XFA - Too many choices to guess the correct font: ${fontName}`);\n }\n this.cache.set(fontName, maybe[0]);\n return maybe[0];\n }\n if (mustWarn && !this.warned.has(fontName)) {\n this.warned.add(fontName);\n (0, _util.warn)(`XFA - Cannot find the font: ${fontName}`);\n }\n return null;\n }\n}\nexports.FontFinder = FontFinder;\nfunction selectFont(xfaFont, typeface) {\n if (xfaFont.posture === \"italic\") {\n if (xfaFont.weight === \"bold\") {\n return typeface.bolditalic;\n }\n return typeface.italic;\n } else if (xfaFont.weight === \"bold\") {\n return typeface.bold;\n }\n return typeface.regular;\n}\nfunction getMetrics(xfaFont, real = false) {\n let pdfFont = null;\n if (xfaFont) {\n const name = (0, _utils.stripQuotes)(xfaFont.typeface);\n const typeface = xfaFont[_symbol_utils.$globalData].fontFinder.find(name);\n pdfFont = selectFont(xfaFont, typeface);\n }\n if (!pdfFont) {\n return {\n lineHeight: 12,\n lineGap: 2,\n lineNoGap: 10\n };\n }\n const size = xfaFont.size || 10;\n const lineHeight = pdfFont.lineHeight ? Math.max(real ? 0 : 1.2, pdfFont.lineHeight) : 1.2;\n const lineGap = pdfFont.lineGap === undefined ? 0.2 : pdfFont.lineGap;\n return {\n lineHeight: lineHeight * size,\n lineGap: lineGap * size,\n lineNoGap: Math.max(1, lineHeight - lineGap) * size\n };\n}\n\n/***/ }),\n/* 86 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.TextMeasure = void 0;\nvar _fonts = __w_pdfjs_require__(85);\nconst WIDTH_FACTOR = 1.02;\nclass FontInfo {\n constructor(xfaFont, margin, lineHeight, fontFinder) {\n this.lineHeight = lineHeight;\n this.paraMargin = margin || {\n top: 0,\n bottom: 0,\n left: 0,\n right: 0\n };\n if (!xfaFont) {\n [this.pdfFont, this.xfaFont] = this.defaultFont(fontFinder);\n return;\n }\n this.xfaFont = {\n typeface: xfaFont.typeface,\n posture: xfaFont.posture,\n weight: xfaFont.weight,\n size: xfaFont.size,\n letterSpacing: xfaFont.letterSpacing\n };\n const typeface = fontFinder.find(xfaFont.typeface);\n if (!typeface) {\n [this.pdfFont, this.xfaFont] = this.defaultFont(fontFinder);\n return;\n }\n this.pdfFont = (0, _fonts.selectFont)(xfaFont, typeface);\n if (!this.pdfFont) {\n [this.pdfFont, this.xfaFont] = this.defaultFont(fontFinder);\n }\n }\n defaultFont(fontFinder) {\n const font = fontFinder.find(\"Helvetica\", false) || fontFinder.find(\"Myriad Pro\", false) || fontFinder.find(\"Arial\", false) || fontFinder.getDefault();\n if (font?.regular) {\n const pdfFont = font.regular;\n const info = pdfFont.cssFontInfo;\n const xfaFont = {\n typeface: info.fontFamily,\n posture: \"normal\",\n weight: \"normal\",\n size: 10,\n letterSpacing: 0\n };\n return [pdfFont, xfaFont];\n }\n const xfaFont = {\n typeface: \"Courier\",\n posture: \"normal\",\n weight: \"normal\",\n size: 10,\n letterSpacing: 0\n };\n return [null, xfaFont];\n }\n}\nclass FontSelector {\n constructor(defaultXfaFont, defaultParaMargin, defaultLineHeight, fontFinder) {\n this.fontFinder = fontFinder;\n this.stack = [new FontInfo(defaultXfaFont, defaultParaMargin, defaultLineHeight, fontFinder)];\n }\n pushData(xfaFont, margin, lineHeight) {\n const lastFont = this.stack.at(-1);\n for (const name of [\"typeface\", \"posture\", \"weight\", \"size\", \"letterSpacing\"]) {\n if (!xfaFont[name]) {\n xfaFont[name] = lastFont.xfaFont[name];\n }\n }\n for (const name of [\"top\", \"bottom\", \"left\", \"right\"]) {\n if (isNaN(margin[name])) {\n margin[name] = lastFont.paraMargin[name];\n }\n }\n const fontInfo = new FontInfo(xfaFont, margin, lineHeight || lastFont.lineHeight, this.fontFinder);\n if (!fontInfo.pdfFont) {\n fontInfo.pdfFont = lastFont.pdfFont;\n }\n this.stack.push(fontInfo);\n }\n popFont() {\n this.stack.pop();\n }\n topFont() {\n return this.stack.at(-1);\n }\n}\nclass TextMeasure {\n constructor(defaultXfaFont, defaultParaMargin, defaultLineHeight, fonts) {\n this.glyphs = [];\n this.fontSelector = new FontSelector(defaultXfaFont, defaultParaMargin, defaultLineHeight, fonts);\n this.extraHeight = 0;\n }\n pushData(xfaFont, margin, lineHeight) {\n this.fontSelector.pushData(xfaFont, margin, lineHeight);\n }\n popFont(xfaFont) {\n return this.fontSelector.popFont();\n }\n addPara() {\n const lastFont = this.fontSelector.topFont();\n this.extraHeight += lastFont.paraMargin.top + lastFont.paraMargin.bottom;\n }\n addString(str) {\n if (!str) {\n return;\n }\n const lastFont = this.fontSelector.topFont();\n const fontSize = lastFont.xfaFont.size;\n if (lastFont.pdfFont) {\n const letterSpacing = lastFont.xfaFont.letterSpacing;\n const pdfFont = lastFont.pdfFont;\n const fontLineHeight = pdfFont.lineHeight || 1.2;\n const lineHeight = lastFont.lineHeight || Math.max(1.2, fontLineHeight) * fontSize;\n const lineGap = pdfFont.lineGap === undefined ? 0.2 : pdfFont.lineGap;\n const noGap = fontLineHeight - lineGap;\n const firstLineHeight = Math.max(1, noGap) * fontSize;\n const scale = fontSize / 1000;\n const fallbackWidth = pdfFont.defaultWidth || pdfFont.charsToGlyphs(\" \")[0].width;\n for (const line of str.split(/[\\u2029\\n]/)) {\n const encodedLine = pdfFont.encodeString(line).join(\"\");\n const glyphs = pdfFont.charsToGlyphs(encodedLine);\n for (const glyph of glyphs) {\n const width = glyph.width || fallbackWidth;\n this.glyphs.push([width * scale + letterSpacing, lineHeight, firstLineHeight, glyph.unicode, false]);\n }\n this.glyphs.push([0, 0, 0, \"\\n\", true]);\n }\n this.glyphs.pop();\n return;\n }\n for (const line of str.split(/[\\u2029\\n]/)) {\n for (const char of line.split(\"\")) {\n this.glyphs.push([fontSize, 1.2 * fontSize, fontSize, char, false]);\n }\n this.glyphs.push([0, 0, 0, \"\\n\", true]);\n }\n this.glyphs.pop();\n }\n compute(maxWidth) {\n let lastSpacePos = -1,\n lastSpaceWidth = 0,\n width = 0,\n height = 0,\n currentLineWidth = 0,\n currentLineHeight = 0;\n let isBroken = false;\n let isFirstLine = true;\n for (let i = 0, ii = this.glyphs.length; i < ii; i++) {\n const [glyphWidth, lineHeight, firstLineHeight, char, isEOL] = this.glyphs[i];\n const isSpace = char === \" \";\n const glyphHeight = isFirstLine ? firstLineHeight : lineHeight;\n if (isEOL) {\n width = Math.max(width, currentLineWidth);\n currentLineWidth = 0;\n height += currentLineHeight;\n currentLineHeight = glyphHeight;\n lastSpacePos = -1;\n lastSpaceWidth = 0;\n isFirstLine = false;\n continue;\n }\n if (isSpace) {\n if (currentLineWidth + glyphWidth > maxWidth) {\n width = Math.max(width, currentLineWidth);\n currentLineWidth = 0;\n height += currentLineHeight;\n currentLineHeight = glyphHeight;\n lastSpacePos = -1;\n lastSpaceWidth = 0;\n isBroken = true;\n isFirstLine = false;\n } else {\n currentLineHeight = Math.max(glyphHeight, currentLineHeight);\n lastSpaceWidth = currentLineWidth;\n currentLineWidth += glyphWidth;\n lastSpacePos = i;\n }\n continue;\n }\n if (currentLineWidth + glyphWidth > maxWidth) {\n height += currentLineHeight;\n currentLineHeight = glyphHeight;\n if (lastSpacePos !== -1) {\n i = lastSpacePos;\n width = Math.max(width, lastSpaceWidth);\n currentLineWidth = 0;\n lastSpacePos = -1;\n lastSpaceWidth = 0;\n } else {\n width = Math.max(width, currentLineWidth);\n currentLineWidth = glyphWidth;\n }\n isBroken = true;\n isFirstLine = false;\n continue;\n }\n currentLineWidth += glyphWidth;\n currentLineHeight = Math.max(glyphHeight, currentLineHeight);\n }\n width = Math.max(width, currentLineWidth);\n height += currentLineHeight + this.extraHeight;\n return {\n width: WIDTH_FACTOR * width,\n height,\n isBroken\n };\n }\n}\nexports.TextMeasure = TextMeasure;\n\n/***/ }),\n/* 87 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XmlObject = exports.XFAObjectArray = exports.XFAObject = exports.XFAAttribute = exports.StringObject = exports.OptionObject = exports.Option10 = exports.Option01 = exports.IntegerObject = exports.ContentObject = void 0;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _utils = __w_pdfjs_require__(84);\nvar _util = __w_pdfjs_require__(2);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _namespaces = __w_pdfjs_require__(81);\nvar _som = __w_pdfjs_require__(88);\nconst _applyPrototype = Symbol();\nconst _attributes = Symbol();\nconst _attributeNames = Symbol();\nconst _children = Symbol(\"_children\");\nconst _cloneAttribute = Symbol();\nconst _dataValue = Symbol();\nconst _defaultValue = Symbol();\nconst _filteredChildrenGenerator = Symbol();\nconst _getPrototype = Symbol();\nconst _getUnsetAttributes = Symbol();\nconst _hasChildren = Symbol();\nconst _max = Symbol();\nconst _options = Symbol();\nconst _parent = Symbol(\"parent\");\nconst _resolvePrototypesHelper = Symbol();\nconst _setAttributes = Symbol();\nconst _validator = Symbol();\nlet uid = 0;\nconst NS_DATASETS = _namespaces.NamespaceIds.datasets.id;\nclass XFAObject {\n constructor(nsId, name, hasChildren = false) {\n this[_symbol_utils.$namespaceId] = nsId;\n this[_symbol_utils.$nodeName] = name;\n this[_hasChildren] = hasChildren;\n this[_parent] = null;\n this[_children] = [];\n this[_symbol_utils.$uid] = `${name}${uid++}`;\n this[_symbol_utils.$globalData] = null;\n }\n get isXFAObject() {\n return true;\n }\n get isXFAObjectArray() {\n return false;\n }\n createNodes(path) {\n let root = this,\n node = null;\n for (const {\n name,\n index\n } of path) {\n for (let i = 0, ii = isFinite(index) ? index : 0; i <= ii; i++) {\n const nsId = root[_symbol_utils.$namespaceId] === NS_DATASETS ? -1 : root[_symbol_utils.$namespaceId];\n node = new XmlObject(nsId, name);\n root[_symbol_utils.$appendChild](node);\n }\n root = node;\n }\n return node;\n }\n [_symbol_utils.$onChild](child) {\n if (!this[_hasChildren] || !this[_symbol_utils.$onChildCheck](child)) {\n return false;\n }\n const name = child[_symbol_utils.$nodeName];\n const node = this[name];\n if (node instanceof XFAObjectArray) {\n if (node.push(child)) {\n this[_symbol_utils.$appendChild](child);\n return true;\n }\n } else {\n if (node !== null) {\n this[_symbol_utils.$removeChild](node);\n }\n this[name] = child;\n this[_symbol_utils.$appendChild](child);\n return true;\n }\n let id = \"\";\n if (this.id) {\n id = ` (id: ${this.id})`;\n } else if (this.name) {\n id = ` (name: ${this.name} ${this.h.value})`;\n }\n (0, _util.warn)(`XFA - node \"${this[_symbol_utils.$nodeName]}\"${id} has already enough \"${name}\"!`);\n return false;\n }\n [_symbol_utils.$onChildCheck](child) {\n return this.hasOwnProperty(child[_symbol_utils.$nodeName]) && child[_symbol_utils.$namespaceId] === this[_symbol_utils.$namespaceId];\n }\n [_symbol_utils.$isNsAgnostic]() {\n return false;\n }\n [_symbol_utils.$acceptWhitespace]() {\n return false;\n }\n [_symbol_utils.$isCDATAXml]() {\n return false;\n }\n [_symbol_utils.$isBindable]() {\n return false;\n }\n [_symbol_utils.$popPara]() {\n if (this.para) {\n this[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].paraStack.pop();\n }\n }\n [_symbol_utils.$pushPara]() {\n this[_symbol_utils.$getTemplateRoot]()[_symbol_utils.$extra].paraStack.push(this.para);\n }\n [_symbol_utils.$setId](ids) {\n if (this.id && this[_symbol_utils.$namespaceId] === _namespaces.NamespaceIds.template.id) {\n ids.set(this.id, this);\n }\n }\n [_symbol_utils.$getTemplateRoot]() {\n return this[_symbol_utils.$globalData].template;\n }\n [_symbol_utils.$isSplittable]() {\n return false;\n }\n [_symbol_utils.$isThereMoreWidth]() {\n return false;\n }\n [_symbol_utils.$appendChild](child) {\n child[_parent] = this;\n this[_children].push(child);\n if (!child[_symbol_utils.$globalData] && this[_symbol_utils.$globalData]) {\n child[_symbol_utils.$globalData] = this[_symbol_utils.$globalData];\n }\n }\n [_symbol_utils.$removeChild](child) {\n const i = this[_children].indexOf(child);\n this[_children].splice(i, 1);\n }\n [_symbol_utils.$hasSettableValue]() {\n return this.hasOwnProperty(\"value\");\n }\n [_symbol_utils.$setValue](_) {}\n [_symbol_utils.$onText](_) {}\n [_symbol_utils.$finalize]() {}\n [_symbol_utils.$clean](builder) {\n delete this[_hasChildren];\n if (this[_symbol_utils.$cleanup]) {\n builder.clean(this[_symbol_utils.$cleanup]);\n delete this[_symbol_utils.$cleanup];\n }\n }\n [_symbol_utils.$indexOf](child) {\n return this[_children].indexOf(child);\n }\n [_symbol_utils.$insertAt](i, child) {\n child[_parent] = this;\n this[_children].splice(i, 0, child);\n if (!child[_symbol_utils.$globalData] && this[_symbol_utils.$globalData]) {\n child[_symbol_utils.$globalData] = this[_symbol_utils.$globalData];\n }\n }\n [_symbol_utils.$isTransparent]() {\n return !this.name;\n }\n [_symbol_utils.$lastAttribute]() {\n return \"\";\n }\n [_symbol_utils.$text]() {\n if (this[_children].length === 0) {\n return this[_symbol_utils.$content];\n }\n return this[_children].map(c => c[_symbol_utils.$text]()).join(\"\");\n }\n get [_attributeNames]() {\n const proto = Object.getPrototypeOf(this);\n if (!proto._attributes) {\n const attributes = proto._attributes = new Set();\n for (const name of Object.getOwnPropertyNames(this)) {\n if (this[name] === null || this[name] instanceof XFAObject || this[name] instanceof XFAObjectArray) {\n break;\n }\n attributes.add(name);\n }\n }\n return (0, _util.shadow)(this, _attributeNames, proto._attributes);\n }\n [_symbol_utils.$isDescendent](parent) {\n let node = this;\n while (node) {\n if (node === parent) {\n return true;\n }\n node = node[_symbol_utils.$getParent]();\n }\n return false;\n }\n [_symbol_utils.$getParent]() {\n return this[_parent];\n }\n [_symbol_utils.$getSubformParent]() {\n return this[_symbol_utils.$getParent]();\n }\n [_symbol_utils.$getChildren](name = null) {\n if (!name) {\n return this[_children];\n }\n return this[name];\n }\n [_symbol_utils.$dump]() {\n const dumped = Object.create(null);\n if (this[_symbol_utils.$content]) {\n dumped.$content = this[_symbol_utils.$content];\n }\n for (const name of Object.getOwnPropertyNames(this)) {\n const value = this[name];\n if (value === null) {\n continue;\n }\n if (value instanceof XFAObject) {\n dumped[name] = value[_symbol_utils.$dump]();\n } else if (value instanceof XFAObjectArray) {\n if (!value.isEmpty()) {\n dumped[name] = value.dump();\n }\n } else {\n dumped[name] = value;\n }\n }\n return dumped;\n }\n [_symbol_utils.$toStyle]() {\n return null;\n }\n [_symbol_utils.$toHTML]() {\n return _utils.HTMLResult.EMPTY;\n }\n *[_symbol_utils.$getContainedChildren]() {\n for (const node of this[_symbol_utils.$getChildren]()) {\n yield node;\n }\n }\n *[_filteredChildrenGenerator](filter, include) {\n for (const node of this[_symbol_utils.$getContainedChildren]()) {\n if (!filter || include === filter.has(node[_symbol_utils.$nodeName])) {\n const availableSpace = this[_symbol_utils.$getAvailableSpace]();\n const res = node[_symbol_utils.$toHTML](availableSpace);\n if (!res.success) {\n this[_symbol_utils.$extra].failingNode = node;\n }\n yield res;\n }\n }\n }\n [_symbol_utils.$flushHTML]() {\n return null;\n }\n [_symbol_utils.$addHTML](html, bbox) {\n this[_symbol_utils.$extra].children.push(html);\n }\n [_symbol_utils.$getAvailableSpace]() {}\n [_symbol_utils.$childrenToHTML]({\n filter = null,\n include = true\n }) {\n if (!this[_symbol_utils.$extra].generator) {\n this[_symbol_utils.$extra].generator = this[_filteredChildrenGenerator](filter, include);\n } else {\n const availableSpace = this[_symbol_utils.$getAvailableSpace]();\n const res = this[_symbol_utils.$extra].failingNode[_symbol_utils.$toHTML](availableSpace);\n if (!res.success) {\n return res;\n }\n if (res.html) {\n this[_symbol_utils.$addHTML](res.html, res.bbox);\n }\n delete this[_symbol_utils.$extra].failingNode;\n }\n while (true) {\n const gen = this[_symbol_utils.$extra].generator.next();\n if (gen.done) {\n break;\n }\n const res = gen.value;\n if (!res.success) {\n return res;\n }\n if (res.html) {\n this[_symbol_utils.$addHTML](res.html, res.bbox);\n }\n }\n this[_symbol_utils.$extra].generator = null;\n return _utils.HTMLResult.EMPTY;\n }\n [_symbol_utils.$setSetAttributes](attributes) {\n this[_setAttributes] = new Set(Object.keys(attributes));\n }\n [_getUnsetAttributes](protoAttributes) {\n const allAttr = this[_attributeNames];\n const setAttr = this[_setAttributes];\n return [...protoAttributes].filter(x => allAttr.has(x) && !setAttr.has(x));\n }\n [_symbol_utils.$resolvePrototypes](ids, ancestors = new Set()) {\n for (const child of this[_children]) {\n child[_resolvePrototypesHelper](ids, ancestors);\n }\n }\n [_resolvePrototypesHelper](ids, ancestors) {\n const proto = this[_getPrototype](ids, ancestors);\n if (proto) {\n this[_applyPrototype](proto, ids, ancestors);\n } else {\n this[_symbol_utils.$resolvePrototypes](ids, ancestors);\n }\n }\n [_getPrototype](ids, ancestors) {\n const {\n use,\n usehref\n } = this;\n if (!use && !usehref) {\n return null;\n }\n let proto = null;\n let somExpression = null;\n let id = null;\n let ref = use;\n if (usehref) {\n ref = usehref;\n if (usehref.startsWith(\"#som(\") && usehref.endsWith(\")\")) {\n somExpression = usehref.slice(\"#som(\".length, -1);\n } else if (usehref.startsWith(\".#som(\") && usehref.endsWith(\")\")) {\n somExpression = usehref.slice(\".#som(\".length, -1);\n } else if (usehref.startsWith(\"#\")) {\n id = usehref.slice(1);\n } else if (usehref.startsWith(\".#\")) {\n id = usehref.slice(2);\n }\n } else if (use.startsWith(\"#\")) {\n id = use.slice(1);\n } else {\n somExpression = use;\n }\n this.use = this.usehref = \"\";\n if (id) {\n proto = ids.get(id);\n } else {\n proto = (0, _som.searchNode)(ids.get(_symbol_utils.$root), this, somExpression, true, false);\n if (proto) {\n proto = proto[0];\n }\n }\n if (!proto) {\n (0, _util.warn)(`XFA - Invalid prototype reference: ${ref}.`);\n return null;\n }\n if (proto[_symbol_utils.$nodeName] !== this[_symbol_utils.$nodeName]) {\n (0, _util.warn)(`XFA - Incompatible prototype: ${proto[_symbol_utils.$nodeName]} !== ${this[_symbol_utils.$nodeName]}.`);\n return null;\n }\n if (ancestors.has(proto)) {\n (0, _util.warn)(`XFA - Cycle detected in prototypes use.`);\n return null;\n }\n ancestors.add(proto);\n const protoProto = proto[_getPrototype](ids, ancestors);\n if (protoProto) {\n proto[_applyPrototype](protoProto, ids, ancestors);\n }\n proto[_symbol_utils.$resolvePrototypes](ids, ancestors);\n ancestors.delete(proto);\n return proto;\n }\n [_applyPrototype](proto, ids, ancestors) {\n if (ancestors.has(proto)) {\n (0, _util.warn)(`XFA - Cycle detected in prototypes use.`);\n return;\n }\n if (!this[_symbol_utils.$content] && proto[_symbol_utils.$content]) {\n this[_symbol_utils.$content] = proto[_symbol_utils.$content];\n }\n const newAncestors = new Set(ancestors);\n newAncestors.add(proto);\n for (const unsetAttrName of this[_getUnsetAttributes](proto[_setAttributes])) {\n this[unsetAttrName] = proto[unsetAttrName];\n if (this[_setAttributes]) {\n this[_setAttributes].add(unsetAttrName);\n }\n }\n for (const name of Object.getOwnPropertyNames(this)) {\n if (this[_attributeNames].has(name)) {\n continue;\n }\n const value = this[name];\n const protoValue = proto[name];\n if (value instanceof XFAObjectArray) {\n for (const child of value[_children]) {\n child[_resolvePrototypesHelper](ids, ancestors);\n }\n for (let i = value[_children].length, ii = protoValue[_children].length; i < ii; i++) {\n const child = proto[_children][i][_symbol_utils.$clone]();\n if (value.push(child)) {\n child[_parent] = this;\n this[_children].push(child);\n child[_resolvePrototypesHelper](ids, ancestors);\n } else {\n break;\n }\n }\n continue;\n }\n if (value !== null) {\n value[_symbol_utils.$resolvePrototypes](ids, ancestors);\n if (protoValue) {\n value[_applyPrototype](protoValue, ids, ancestors);\n }\n continue;\n }\n if (protoValue !== null) {\n const child = protoValue[_symbol_utils.$clone]();\n child[_parent] = this;\n this[name] = child;\n this[_children].push(child);\n child[_resolvePrototypesHelper](ids, ancestors);\n }\n }\n }\n static [_cloneAttribute](obj) {\n if (Array.isArray(obj)) {\n return obj.map(x => XFAObject[_cloneAttribute](x));\n }\n if (typeof obj === \"object\" && obj !== null) {\n return Object.assign({}, obj);\n }\n return obj;\n }\n [_symbol_utils.$clone]() {\n const clone = Object.create(Object.getPrototypeOf(this));\n for (const $symbol of Object.getOwnPropertySymbols(this)) {\n try {\n clone[$symbol] = this[$symbol];\n } catch {\n (0, _util.shadow)(clone, $symbol, this[$symbol]);\n }\n }\n clone[_symbol_utils.$uid] = `${clone[_symbol_utils.$nodeName]}${uid++}`;\n clone[_children] = [];\n for (const name of Object.getOwnPropertyNames(this)) {\n if (this[_attributeNames].has(name)) {\n clone[name] = XFAObject[_cloneAttribute](this[name]);\n continue;\n }\n const value = this[name];\n clone[name] = value instanceof XFAObjectArray ? new XFAObjectArray(value[_max]) : null;\n }\n for (const child of this[_children]) {\n const name = child[_symbol_utils.$nodeName];\n const clonedChild = child[_symbol_utils.$clone]();\n clone[_children].push(clonedChild);\n clonedChild[_parent] = clone;\n if (clone[name] === null) {\n clone[name] = clonedChild;\n } else {\n clone[name][_children].push(clonedChild);\n }\n }\n return clone;\n }\n [_symbol_utils.$getChildren](name = null) {\n if (!name) {\n return this[_children];\n }\n return this[_children].filter(c => c[_symbol_utils.$nodeName] === name);\n }\n [_symbol_utils.$getChildrenByClass](name) {\n return this[name];\n }\n [_symbol_utils.$getChildrenByName](name, allTransparent, first = true) {\n return Array.from(this[_symbol_utils.$getChildrenByNameIt](name, allTransparent, first));\n }\n *[_symbol_utils.$getChildrenByNameIt](name, allTransparent, first = true) {\n if (name === \"parent\") {\n yield this[_parent];\n return;\n }\n for (const child of this[_children]) {\n if (child[_symbol_utils.$nodeName] === name) {\n yield child;\n }\n if (child.name === name) {\n yield child;\n }\n if (allTransparent || child[_symbol_utils.$isTransparent]()) {\n yield* child[_symbol_utils.$getChildrenByNameIt](name, allTransparent, false);\n }\n }\n if (first && this[_attributeNames].has(name)) {\n yield new XFAAttribute(this, name, this[name]);\n }\n }\n}\nexports.XFAObject = XFAObject;\nclass XFAObjectArray {\n constructor(max = Infinity) {\n this[_max] = max;\n this[_children] = [];\n }\n get isXFAObject() {\n return false;\n }\n get isXFAObjectArray() {\n return true;\n }\n push(child) {\n const len = this[_children].length;\n if (len <= this[_max]) {\n this[_children].push(child);\n return true;\n }\n (0, _util.warn)(`XFA - node \"${child[_symbol_utils.$nodeName]}\" accepts no more than ${this[_max]} children`);\n return false;\n }\n isEmpty() {\n return this[_children].length === 0;\n }\n dump() {\n return this[_children].length === 1 ? this[_children][0][_symbol_utils.$dump]() : this[_children].map(x => x[_symbol_utils.$dump]());\n }\n [_symbol_utils.$clone]() {\n const clone = new XFAObjectArray(this[_max]);\n clone[_children] = this[_children].map(c => c[_symbol_utils.$clone]());\n return clone;\n }\n get children() {\n return this[_children];\n }\n clear() {\n this[_children].length = 0;\n }\n}\nexports.XFAObjectArray = XFAObjectArray;\nclass XFAAttribute {\n constructor(node, name, value) {\n this[_parent] = node;\n this[_symbol_utils.$nodeName] = name;\n this[_symbol_utils.$content] = value;\n this[_symbol_utils.$consumed] = false;\n this[_symbol_utils.$uid] = `attribute${uid++}`;\n }\n [_symbol_utils.$getParent]() {\n return this[_parent];\n }\n [_symbol_utils.$isDataValue]() {\n return true;\n }\n [_symbol_utils.$getDataValue]() {\n return this[_symbol_utils.$content].trim();\n }\n [_symbol_utils.$setValue](value) {\n value = value.value || \"\";\n this[_symbol_utils.$content] = value.toString();\n }\n [_symbol_utils.$text]() {\n return this[_symbol_utils.$content];\n }\n [_symbol_utils.$isDescendent](parent) {\n return this[_parent] === parent || this[_parent][_symbol_utils.$isDescendent](parent);\n }\n}\nexports.XFAAttribute = XFAAttribute;\nclass XmlObject extends XFAObject {\n constructor(nsId, name, attributes = {}) {\n super(nsId, name);\n this[_symbol_utils.$content] = \"\";\n this[_dataValue] = null;\n if (name !== \"#text\") {\n const map = new Map();\n this[_attributes] = map;\n for (const [attrName, value] of Object.entries(attributes)) {\n map.set(attrName, new XFAAttribute(this, attrName, value));\n }\n if (attributes.hasOwnProperty(_symbol_utils.$nsAttributes)) {\n const dataNode = attributes[_symbol_utils.$nsAttributes].xfa.dataNode;\n if (dataNode !== undefined) {\n if (dataNode === \"dataGroup\") {\n this[_dataValue] = false;\n } else if (dataNode === \"dataValue\") {\n this[_dataValue] = true;\n }\n }\n }\n }\n this[_symbol_utils.$consumed] = false;\n }\n [_symbol_utils.$toString](buf) {\n const tagName = this[_symbol_utils.$nodeName];\n if (tagName === \"#text\") {\n buf.push((0, _core_utils.encodeToXmlString)(this[_symbol_utils.$content]));\n return;\n }\n const utf8TagName = (0, _util.utf8StringToString)(tagName);\n const prefix = this[_symbol_utils.$namespaceId] === NS_DATASETS ? \"xfa:\" : \"\";\n buf.push(`<${prefix}${utf8TagName}`);\n for (const [name, value] of this[_attributes].entries()) {\n const utf8Name = (0, _util.utf8StringToString)(name);\n buf.push(` ${utf8Name}=\"${(0, _core_utils.encodeToXmlString)(value[_symbol_utils.$content])}\"`);\n }\n if (this[_dataValue] !== null) {\n if (this[_dataValue]) {\n buf.push(` xfa:dataNode=\"dataValue\"`);\n } else {\n buf.push(` xfa:dataNode=\"dataGroup\"`);\n }\n }\n if (!this[_symbol_utils.$content] && this[_children].length === 0) {\n buf.push(\"/>\");\n return;\n }\n buf.push(\">\");\n if (this[_symbol_utils.$content]) {\n if (typeof this[_symbol_utils.$content] === \"string\") {\n buf.push((0, _core_utils.encodeToXmlString)(this[_symbol_utils.$content]));\n } else {\n this[_symbol_utils.$content][_symbol_utils.$toString](buf);\n }\n } else {\n for (const child of this[_children]) {\n child[_symbol_utils.$toString](buf);\n }\n }\n buf.push(``);\n }\n [_symbol_utils.$onChild](child) {\n if (this[_symbol_utils.$content]) {\n const node = new XmlObject(this[_symbol_utils.$namespaceId], \"#text\");\n this[_symbol_utils.$appendChild](node);\n node[_symbol_utils.$content] = this[_symbol_utils.$content];\n this[_symbol_utils.$content] = \"\";\n }\n this[_symbol_utils.$appendChild](child);\n return true;\n }\n [_symbol_utils.$onText](str) {\n this[_symbol_utils.$content] += str;\n }\n [_symbol_utils.$finalize]() {\n if (this[_symbol_utils.$content] && this[_children].length > 0) {\n const node = new XmlObject(this[_symbol_utils.$namespaceId], \"#text\");\n this[_symbol_utils.$appendChild](node);\n node[_symbol_utils.$content] = this[_symbol_utils.$content];\n delete this[_symbol_utils.$content];\n }\n }\n [_symbol_utils.$toHTML]() {\n if (this[_symbol_utils.$nodeName] === \"#text\") {\n return _utils.HTMLResult.success({\n name: \"#text\",\n value: this[_symbol_utils.$content]\n });\n }\n return _utils.HTMLResult.EMPTY;\n }\n [_symbol_utils.$getChildren](name = null) {\n if (!name) {\n return this[_children];\n }\n return this[_children].filter(c => c[_symbol_utils.$nodeName] === name);\n }\n [_symbol_utils.$getAttributes]() {\n return this[_attributes];\n }\n [_symbol_utils.$getChildrenByClass](name) {\n const value = this[_attributes].get(name);\n if (value !== undefined) {\n return value;\n }\n return this[_symbol_utils.$getChildren](name);\n }\n *[_symbol_utils.$getChildrenByNameIt](name, allTransparent) {\n const value = this[_attributes].get(name);\n if (value) {\n yield value;\n }\n for (const child of this[_children]) {\n if (child[_symbol_utils.$nodeName] === name) {\n yield child;\n }\n if (allTransparent) {\n yield* child[_symbol_utils.$getChildrenByNameIt](name, allTransparent);\n }\n }\n }\n *[_symbol_utils.$getAttributeIt](name, skipConsumed) {\n const value = this[_attributes].get(name);\n if (value && (!skipConsumed || !value[_symbol_utils.$consumed])) {\n yield value;\n }\n for (const child of this[_children]) {\n yield* child[_symbol_utils.$getAttributeIt](name, skipConsumed);\n }\n }\n *[_symbol_utils.$getRealChildrenByNameIt](name, allTransparent, skipConsumed) {\n for (const child of this[_children]) {\n if (child[_symbol_utils.$nodeName] === name && (!skipConsumed || !child[_symbol_utils.$consumed])) {\n yield child;\n }\n if (allTransparent) {\n yield* child[_symbol_utils.$getRealChildrenByNameIt](name, allTransparent, skipConsumed);\n }\n }\n }\n [_symbol_utils.$isDataValue]() {\n if (this[_dataValue] === null) {\n return this[_children].length === 0 || this[_children][0][_symbol_utils.$namespaceId] === _namespaces.NamespaceIds.xhtml.id;\n }\n return this[_dataValue];\n }\n [_symbol_utils.$getDataValue]() {\n if (this[_dataValue] === null) {\n if (this[_children].length === 0) {\n return this[_symbol_utils.$content].trim();\n }\n if (this[_children][0][_symbol_utils.$namespaceId] === _namespaces.NamespaceIds.xhtml.id) {\n return this[_children][0][_symbol_utils.$text]().trim();\n }\n return null;\n }\n return this[_symbol_utils.$content].trim();\n }\n [_symbol_utils.$setValue](value) {\n value = value.value || \"\";\n this[_symbol_utils.$content] = value.toString();\n }\n [_symbol_utils.$dump](hasNS = false) {\n const dumped = Object.create(null);\n if (hasNS) {\n dumped.$ns = this[_symbol_utils.$namespaceId];\n }\n if (this[_symbol_utils.$content]) {\n dumped.$content = this[_symbol_utils.$content];\n }\n dumped.$name = this[_symbol_utils.$nodeName];\n dumped.children = [];\n for (const child of this[_children]) {\n dumped.children.push(child[_symbol_utils.$dump](hasNS));\n }\n dumped.attributes = Object.create(null);\n for (const [name, value] of this[_attributes]) {\n dumped.attributes[name] = value[_symbol_utils.$content];\n }\n return dumped;\n }\n}\nexports.XmlObject = XmlObject;\nclass ContentObject extends XFAObject {\n constructor(nsId, name) {\n super(nsId, name);\n this[_symbol_utils.$content] = \"\";\n }\n [_symbol_utils.$onText](text) {\n this[_symbol_utils.$content] += text;\n }\n [_symbol_utils.$finalize]() {}\n}\nexports.ContentObject = ContentObject;\nclass OptionObject extends ContentObject {\n constructor(nsId, name, options) {\n super(nsId, name);\n this[_options] = options;\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = (0, _utils.getKeyword)({\n data: this[_symbol_utils.$content],\n defaultValue: this[_options][0],\n validate: k => this[_options].includes(k)\n });\n }\n [_symbol_utils.$clean](builder) {\n super[_symbol_utils.$clean](builder);\n delete this[_options];\n }\n}\nexports.OptionObject = OptionObject;\nclass StringObject extends ContentObject {\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = this[_symbol_utils.$content].trim();\n }\n}\nexports.StringObject = StringObject;\nclass IntegerObject extends ContentObject {\n constructor(nsId, name, defaultValue, validator) {\n super(nsId, name);\n this[_defaultValue] = defaultValue;\n this[_validator] = validator;\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = (0, _utils.getInteger)({\n data: this[_symbol_utils.$content],\n defaultValue: this[_defaultValue],\n validate: this[_validator]\n });\n }\n [_symbol_utils.$clean](builder) {\n super[_symbol_utils.$clean](builder);\n delete this[_defaultValue];\n delete this[_validator];\n }\n}\nexports.IntegerObject = IntegerObject;\nclass Option01 extends IntegerObject {\n constructor(nsId, name) {\n super(nsId, name, 0, n => n === 1);\n }\n}\nexports.Option01 = Option01;\nclass Option10 extends IntegerObject {\n constructor(nsId, name) {\n super(nsId, name, 1, n => n === 0);\n }\n}\nexports.Option10 = Option10;\n\n/***/ }),\n/* 88 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.createDataNode = createDataNode;\nexports.searchNode = searchNode;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _util = __w_pdfjs_require__(2);\nconst namePattern = /^[^.[]+/;\nconst indexPattern = /^[^\\]]+/;\nconst operators = {\n dot: 0,\n dotDot: 1,\n dotHash: 2,\n dotBracket: 3,\n dotParen: 4\n};\nconst shortcuts = new Map([[\"$data\", (root, current) => root.datasets ? root.datasets.data : root], [\"$record\", (root, current) => (root.datasets ? root.datasets.data : root)[_symbol_utils.$getChildren]()[0]], [\"$template\", (root, current) => root.template], [\"$connectionSet\", (root, current) => root.connectionSet], [\"$form\", (root, current) => root.form], [\"$layout\", (root, current) => root.layout], [\"$host\", (root, current) => root.host], [\"$dataWindow\", (root, current) => root.dataWindow], [\"$event\", (root, current) => root.event], [\"!\", (root, current) => root.datasets], [\"$xfa\", (root, current) => root], [\"xfa\", (root, current) => root], [\"$\", (root, current) => current]]);\nconst somCache = new WeakMap();\nfunction parseIndex(index) {\n index = index.trim();\n if (index === \"*\") {\n return Infinity;\n }\n return parseInt(index, 10) || 0;\n}\nfunction parseExpression(expr, dotDotAllowed, noExpr = true) {\n let match = expr.match(namePattern);\n if (!match) {\n return null;\n }\n let [name] = match;\n const parsed = [{\n name,\n cacheName: \".\" + name,\n index: 0,\n js: null,\n formCalc: null,\n operator: operators.dot\n }];\n let pos = name.length;\n while (pos < expr.length) {\n const spos = pos;\n const char = expr.charAt(pos++);\n if (char === \"[\") {\n match = expr.slice(pos).match(indexPattern);\n if (!match) {\n (0, _util.warn)(\"XFA - Invalid index in SOM expression\");\n return null;\n }\n parsed.at(-1).index = parseIndex(match[0]);\n pos += match[0].length + 1;\n continue;\n }\n let operator;\n switch (expr.charAt(pos)) {\n case \".\":\n if (!dotDotAllowed) {\n return null;\n }\n pos++;\n operator = operators.dotDot;\n break;\n case \"#\":\n pos++;\n operator = operators.dotHash;\n break;\n case \"[\":\n if (noExpr) {\n (0, _util.warn)(\"XFA - SOM expression contains a FormCalc subexpression which is not supported for now.\");\n return null;\n }\n operator = operators.dotBracket;\n break;\n case \"(\":\n if (noExpr) {\n (0, _util.warn)(\"XFA - SOM expression contains a JavaScript subexpression which is not supported for now.\");\n return null;\n }\n operator = operators.dotParen;\n break;\n default:\n operator = operators.dot;\n break;\n }\n match = expr.slice(pos).match(namePattern);\n if (!match) {\n break;\n }\n [name] = match;\n pos += name.length;\n parsed.push({\n name,\n cacheName: expr.slice(spos, pos),\n operator,\n index: 0,\n js: null,\n formCalc: null\n });\n }\n return parsed;\n}\nfunction searchNode(root, container, expr, dotDotAllowed = true, useCache = true) {\n const parsed = parseExpression(expr, dotDotAllowed);\n if (!parsed) {\n return null;\n }\n const fn = shortcuts.get(parsed[0].name);\n let i = 0;\n let isQualified;\n if (fn) {\n isQualified = true;\n root = [fn(root, container)];\n i = 1;\n } else {\n isQualified = container === null;\n root = [container || root];\n }\n for (let ii = parsed.length; i < ii; i++) {\n const {\n name,\n cacheName,\n operator,\n index\n } = parsed[i];\n const nodes = [];\n for (const node of root) {\n if (!node.isXFAObject) {\n continue;\n }\n let children, cached;\n if (useCache) {\n cached = somCache.get(node);\n if (!cached) {\n cached = new Map();\n somCache.set(node, cached);\n }\n children = cached.get(cacheName);\n }\n if (!children) {\n switch (operator) {\n case operators.dot:\n children = node[_symbol_utils.$getChildrenByName](name, false);\n break;\n case operators.dotDot:\n children = node[_symbol_utils.$getChildrenByName](name, true);\n break;\n case operators.dotHash:\n children = node[_symbol_utils.$getChildrenByClass](name);\n children = children.isXFAObjectArray ? children.children : [children];\n break;\n default:\n break;\n }\n if (useCache) {\n cached.set(cacheName, children);\n }\n }\n if (children.length > 0) {\n nodes.push(children);\n }\n }\n if (nodes.length === 0 && !isQualified && i === 0) {\n const parent = container[_symbol_utils.$getParent]();\n container = parent;\n if (!container) {\n return null;\n }\n i = -1;\n root = [container];\n continue;\n }\n root = isFinite(index) ? nodes.filter(node => index < node.length).map(node => node[index]) : nodes.flat();\n }\n if (root.length === 0) {\n return null;\n }\n return root;\n}\nfunction createDataNode(root, container, expr) {\n const parsed = parseExpression(expr);\n if (!parsed) {\n return null;\n }\n if (parsed.some(x => x.operator === operators.dotDot)) {\n return null;\n }\n const fn = shortcuts.get(parsed[0].name);\n let i = 0;\n if (fn) {\n root = fn(root, container);\n i = 1;\n } else {\n root = container || root;\n }\n for (let ii = parsed.length; i < ii; i++) {\n const {\n name,\n operator,\n index\n } = parsed[i];\n if (!isFinite(index)) {\n parsed[i].index = 0;\n return root.createNodes(parsed.slice(i));\n }\n let children;\n switch (operator) {\n case operators.dot:\n children = root[_symbol_utils.$getChildrenByName](name, false);\n break;\n case operators.dotDot:\n children = root[_symbol_utils.$getChildrenByName](name, true);\n break;\n case operators.dotHash:\n children = root[_symbol_utils.$getChildrenByClass](name);\n children = children.isXFAObjectArray ? children.children : [children];\n break;\n default:\n break;\n }\n if (children.length === 0) {\n return root.createNodes(parsed.slice(i));\n }\n if (index < children.length) {\n const child = children[index];\n if (!child.isXFAObject) {\n (0, _util.warn)(`XFA - Cannot create a node.`);\n return null;\n }\n root = child;\n } else {\n parsed[i].index = index - children.length;\n return root.createNodes(parsed.slice(i));\n }\n }\n return null;\n}\n\n/***/ }),\n/* 89 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.DataHandler = void 0;\nvar _symbol_utils = __w_pdfjs_require__(78);\nclass DataHandler {\n constructor(root, data) {\n this.data = data;\n this.dataset = root.datasets || null;\n }\n serialize(storage) {\n const stack = [[-1, this.data[_symbol_utils.$getChildren]()]];\n while (stack.length > 0) {\n const last = stack.at(-1);\n const [i, children] = last;\n if (i + 1 === children.length) {\n stack.pop();\n continue;\n }\n const child = children[++last[0]];\n const storageEntry = storage.get(child[_symbol_utils.$uid]);\n if (storageEntry) {\n child[_symbol_utils.$setValue](storageEntry);\n } else {\n const attributes = child[_symbol_utils.$getAttributes]();\n for (const value of attributes.values()) {\n const entry = storage.get(value[_symbol_utils.$uid]);\n if (entry) {\n value[_symbol_utils.$setValue](entry);\n break;\n }\n }\n }\n const nodes = child[_symbol_utils.$getChildren]();\n if (nodes.length > 0) {\n stack.push([-1, nodes]);\n }\n }\n const buf = [``];\n if (this.dataset) {\n for (const child of this.dataset[_symbol_utils.$getChildren]()) {\n if (child[_symbol_utils.$nodeName] !== \"data\") {\n child[_symbol_utils.$toString](buf);\n }\n }\n }\n this.data[_symbol_utils.$toString](buf);\n buf.push(\"\");\n return buf.join(\"\");\n }\n}\nexports.DataHandler = DataHandler;\n\n/***/ }),\n/* 90 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XFAParser = void 0;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _xml_parser = __w_pdfjs_require__(71);\nvar _builder = __w_pdfjs_require__(91);\nvar _util = __w_pdfjs_require__(2);\nclass XFAParser extends _xml_parser.XMLParserBase {\n constructor(rootNameSpace = null, richText = false) {\n super();\n this._builder = new _builder.Builder(rootNameSpace);\n this._stack = [];\n this._globalData = {\n usedTypefaces: new Set()\n };\n this._ids = new Map();\n this._current = this._builder.buildRoot(this._ids);\n this._errorCode = _xml_parser.XMLParserErrorCode.NoError;\n this._whiteRegex = /^\\s+$/;\n this._nbsps = /\\xa0+/g;\n this._richText = richText;\n }\n parse(data) {\n this.parseXml(data);\n if (this._errorCode !== _xml_parser.XMLParserErrorCode.NoError) {\n return undefined;\n }\n this._current[_symbol_utils.$finalize]();\n return this._current.element;\n }\n onText(text) {\n text = text.replace(this._nbsps, match => match.slice(1) + \" \");\n if (this._richText || this._current[_symbol_utils.$acceptWhitespace]()) {\n this._current[_symbol_utils.$onText](text, this._richText);\n return;\n }\n if (this._whiteRegex.test(text)) {\n return;\n }\n this._current[_symbol_utils.$onText](text.trim());\n }\n onCdata(text) {\n this._current[_symbol_utils.$onText](text);\n }\n _mkAttributes(attributes, tagName) {\n let namespace = null;\n let prefixes = null;\n const attributeObj = Object.create({});\n for (const {\n name,\n value\n } of attributes) {\n if (name === \"xmlns\") {\n if (!namespace) {\n namespace = value;\n } else {\n (0, _util.warn)(`XFA - multiple namespace definition in <${tagName}>`);\n }\n } else if (name.startsWith(\"xmlns:\")) {\n const prefix = name.substring(\"xmlns:\".length);\n if (!prefixes) {\n prefixes = [];\n }\n prefixes.push({\n prefix,\n value\n });\n } else {\n const i = name.indexOf(\":\");\n if (i === -1) {\n attributeObj[name] = value;\n } else {\n let nsAttrs = attributeObj[_symbol_utils.$nsAttributes];\n if (!nsAttrs) {\n nsAttrs = attributeObj[_symbol_utils.$nsAttributes] = Object.create(null);\n }\n const [ns, attrName] = [name.slice(0, i), name.slice(i + 1)];\n const attrs = nsAttrs[ns] ||= Object.create(null);\n attrs[attrName] = value;\n }\n }\n }\n return [namespace, prefixes, attributeObj];\n }\n _getNameAndPrefix(name, nsAgnostic) {\n const i = name.indexOf(\":\");\n if (i === -1) {\n return [name, null];\n }\n return [name.substring(i + 1), nsAgnostic ? \"\" : name.substring(0, i)];\n }\n onBeginElement(tagName, attributes, isEmpty) {\n const [namespace, prefixes, attributesObj] = this._mkAttributes(attributes, tagName);\n const [name, nsPrefix] = this._getNameAndPrefix(tagName, this._builder.isNsAgnostic());\n const node = this._builder.build({\n nsPrefix,\n name,\n attributes: attributesObj,\n namespace,\n prefixes\n });\n node[_symbol_utils.$globalData] = this._globalData;\n if (isEmpty) {\n node[_symbol_utils.$finalize]();\n if (this._current[_symbol_utils.$onChild](node)) {\n node[_symbol_utils.$setId](this._ids);\n }\n node[_symbol_utils.$clean](this._builder);\n return;\n }\n this._stack.push(this._current);\n this._current = node;\n }\n onEndElement(name) {\n const node = this._current;\n if (node[_symbol_utils.$isCDATAXml]() && typeof node[_symbol_utils.$content] === \"string\") {\n const parser = new XFAParser();\n parser._globalData = this._globalData;\n const root = parser.parse(node[_symbol_utils.$content]);\n node[_symbol_utils.$content] = null;\n node[_symbol_utils.$onChild](root);\n }\n node[_symbol_utils.$finalize]();\n this._current = this._stack.pop();\n if (this._current[_symbol_utils.$onChild](node)) {\n node[_symbol_utils.$setId](this._ids);\n }\n node[_symbol_utils.$clean](this._builder);\n }\n onError(code) {\n this._errorCode = code;\n }\n}\nexports.XFAParser = XFAParser;\n\n/***/ }),\n/* 91 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Builder = void 0;\nvar _namespaces = __w_pdfjs_require__(81);\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _setup = __w_pdfjs_require__(92);\nvar _template = __w_pdfjs_require__(80);\nvar _unknown = __w_pdfjs_require__(101);\nvar _util = __w_pdfjs_require__(2);\nvar _xfa_object = __w_pdfjs_require__(87);\nclass Root extends _xfa_object.XFAObject {\n constructor(ids) {\n super(-1, \"root\", Object.create(null));\n this.element = null;\n this[_symbol_utils.$ids] = ids;\n }\n [_symbol_utils.$onChild](child) {\n this.element = child;\n return true;\n }\n [_symbol_utils.$finalize]() {\n super[_symbol_utils.$finalize]();\n if (this.element.template instanceof _template.Template) {\n this[_symbol_utils.$ids].set(_symbol_utils.$root, this.element);\n this.element.template[_symbol_utils.$resolvePrototypes](this[_symbol_utils.$ids]);\n this.element.template[_symbol_utils.$ids] = this[_symbol_utils.$ids];\n }\n }\n}\nclass Empty extends _xfa_object.XFAObject {\n constructor() {\n super(-1, \"\", Object.create(null));\n }\n [_symbol_utils.$onChild](_) {\n return false;\n }\n}\nclass Builder {\n constructor(rootNameSpace = null) {\n this._namespaceStack = [];\n this._nsAgnosticLevel = 0;\n this._namespacePrefixes = new Map();\n this._namespaces = new Map();\n this._nextNsId = Math.max(...Object.values(_namespaces.NamespaceIds).map(({\n id\n }) => id));\n this._currentNamespace = rootNameSpace || new _unknown.UnknownNamespace(++this._nextNsId);\n }\n buildRoot(ids) {\n return new Root(ids);\n }\n build({\n nsPrefix,\n name,\n attributes,\n namespace,\n prefixes\n }) {\n const hasNamespaceDef = namespace !== null;\n if (hasNamespaceDef) {\n this._namespaceStack.push(this._currentNamespace);\n this._currentNamespace = this._searchNamespace(namespace);\n }\n if (prefixes) {\n this._addNamespacePrefix(prefixes);\n }\n if (attributes.hasOwnProperty(_symbol_utils.$nsAttributes)) {\n const dataTemplate = _setup.NamespaceSetUp.datasets;\n const nsAttrs = attributes[_symbol_utils.$nsAttributes];\n let xfaAttrs = null;\n for (const [ns, attrs] of Object.entries(nsAttrs)) {\n const nsToUse = this._getNamespaceToUse(ns);\n if (nsToUse === dataTemplate) {\n xfaAttrs = {\n xfa: attrs\n };\n break;\n }\n }\n if (xfaAttrs) {\n attributes[_symbol_utils.$nsAttributes] = xfaAttrs;\n } else {\n delete attributes[_symbol_utils.$nsAttributes];\n }\n }\n const namespaceToUse = this._getNamespaceToUse(nsPrefix);\n const node = namespaceToUse?.[_namespaces.$buildXFAObject](name, attributes) || new Empty();\n if (node[_symbol_utils.$isNsAgnostic]()) {\n this._nsAgnosticLevel++;\n }\n if (hasNamespaceDef || prefixes || node[_symbol_utils.$isNsAgnostic]()) {\n node[_symbol_utils.$cleanup] = {\n hasNamespace: hasNamespaceDef,\n prefixes,\n nsAgnostic: node[_symbol_utils.$isNsAgnostic]()\n };\n }\n return node;\n }\n isNsAgnostic() {\n return this._nsAgnosticLevel > 0;\n }\n _searchNamespace(nsName) {\n let ns = this._namespaces.get(nsName);\n if (ns) {\n return ns;\n }\n for (const [name, {\n check\n }] of Object.entries(_namespaces.NamespaceIds)) {\n if (check(nsName)) {\n ns = _setup.NamespaceSetUp[name];\n if (ns) {\n this._namespaces.set(nsName, ns);\n return ns;\n }\n break;\n }\n }\n ns = new _unknown.UnknownNamespace(++this._nextNsId);\n this._namespaces.set(nsName, ns);\n return ns;\n }\n _addNamespacePrefix(prefixes) {\n for (const {\n prefix,\n value\n } of prefixes) {\n const namespace = this._searchNamespace(value);\n let prefixStack = this._namespacePrefixes.get(prefix);\n if (!prefixStack) {\n prefixStack = [];\n this._namespacePrefixes.set(prefix, prefixStack);\n }\n prefixStack.push(namespace);\n }\n }\n _getNamespaceToUse(prefix) {\n if (!prefix) {\n return this._currentNamespace;\n }\n const prefixStack = this._namespacePrefixes.get(prefix);\n if (prefixStack?.length > 0) {\n return prefixStack.at(-1);\n }\n (0, _util.warn)(`Unknown namespace prefix: ${prefix}.`);\n return null;\n }\n clean(data) {\n const {\n hasNamespace,\n prefixes,\n nsAgnostic\n } = data;\n if (hasNamespace) {\n this._currentNamespace = this._namespaceStack.pop();\n }\n if (prefixes) {\n prefixes.forEach(({\n prefix\n }) => {\n this._namespacePrefixes.get(prefix).pop();\n });\n }\n if (nsAgnostic) {\n this._nsAgnosticLevel--;\n }\n }\n}\nexports.Builder = Builder;\n\n/***/ }),\n/* 92 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.NamespaceSetUp = void 0;\nvar _config = __w_pdfjs_require__(93);\nvar _connection_set = __w_pdfjs_require__(94);\nvar _datasets = __w_pdfjs_require__(95);\nvar _locale_set = __w_pdfjs_require__(96);\nvar _signature = __w_pdfjs_require__(97);\nvar _stylesheet = __w_pdfjs_require__(98);\nvar _template = __w_pdfjs_require__(80);\nvar _xdp = __w_pdfjs_require__(99);\nvar _xhtml = __w_pdfjs_require__(100);\nconst NamespaceSetUp = {\n config: _config.ConfigNamespace,\n connection: _connection_set.ConnectionSetNamespace,\n datasets: _datasets.DatasetsNamespace,\n localeSet: _locale_set.LocaleSetNamespace,\n signature: _signature.SignatureNamespace,\n stylesheet: _stylesheet.StylesheetNamespace,\n template: _template.TemplateNamespace,\n xdp: _xdp.XdpNamespace,\n xhtml: _xhtml.XhtmlNamespace\n};\nexports.NamespaceSetUp = NamespaceSetUp;\n\n/***/ }),\n/* 93 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ConfigNamespace = void 0;\nvar _namespaces = __w_pdfjs_require__(81);\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _xfa_object = __w_pdfjs_require__(87);\nvar _utils = __w_pdfjs_require__(84);\nvar _util = __w_pdfjs_require__(2);\nconst CONFIG_NS_ID = _namespaces.NamespaceIds.config.id;\nclass Acrobat extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"acrobat\", true);\n this.acrobat7 = null;\n this.autoSave = null;\n this.common = null;\n this.validate = null;\n this.validateApprovalSignatures = null;\n this.submitUrl = new _xfa_object.XFAObjectArray();\n }\n}\nclass Acrobat7 extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"acrobat7\", true);\n this.dynamicRender = null;\n }\n}\nclass ADBE_JSConsole extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"ADBE_JSConsole\", [\"delegate\", \"Enable\", \"Disable\"]);\n }\n}\nclass ADBE_JSDebugger extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"ADBE_JSDebugger\", [\"delegate\", \"Enable\", \"Disable\"]);\n }\n}\nclass AddSilentPrint extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"addSilentPrint\");\n }\n}\nclass AddViewerPreferences extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"addViewerPreferences\");\n }\n}\nclass AdjustData extends _xfa_object.Option10 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"adjustData\");\n }\n}\nclass AdobeExtensionLevel extends _xfa_object.IntegerObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"adobeExtensionLevel\", 0, n => n >= 1 && n <= 8);\n }\n}\nclass Agent extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"agent\", true);\n this.name = attributes.name ? attributes.name.trim() : \"\";\n this.common = new _xfa_object.XFAObjectArray();\n }\n}\nclass AlwaysEmbed extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"alwaysEmbed\");\n }\n}\nclass Amd extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"amd\");\n }\n}\nclass Area extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"area\");\n this.level = (0, _utils.getInteger)({\n data: attributes.level,\n defaultValue: 0,\n validate: n => n >= 1 && n <= 3\n });\n this.name = (0, _utils.getStringOption)(attributes.name, [\"\", \"barcode\", \"coreinit\", \"deviceDriver\", \"font\", \"general\", \"layout\", \"merge\", \"script\", \"signature\", \"sourceSet\", \"templateCache\"]);\n }\n}\nclass Attributes extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"attributes\", [\"preserve\", \"delegate\", \"ignore\"]);\n }\n}\nclass AutoSave extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"autoSave\", [\"disabled\", \"enabled\"]);\n }\n}\nclass Base extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"base\");\n }\n}\nclass BatchOutput extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"batchOutput\");\n this.format = (0, _utils.getStringOption)(attributes.format, [\"none\", \"concat\", \"zip\", \"zipCompress\"]);\n }\n}\nclass BehaviorOverride extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"behaviorOverride\");\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = new Map(this[_symbol_utils.$content].trim().split(/\\s+/).filter(x => x.includes(\":\")).map(x => x.split(\":\", 2)));\n }\n}\nclass Cache extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"cache\", true);\n this.templateCache = null;\n }\n}\nclass Change extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"change\");\n }\n}\nclass Common extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"common\", true);\n this.data = null;\n this.locale = null;\n this.localeSet = null;\n this.messaging = null;\n this.suppressBanner = null;\n this.template = null;\n this.validationMessaging = null;\n this.versionControl = null;\n this.log = new _xfa_object.XFAObjectArray();\n }\n}\nclass Compress extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"compress\");\n this.scope = (0, _utils.getStringOption)(attributes.scope, [\"imageOnly\", \"document\"]);\n }\n}\nclass CompressLogicalStructure extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"compressLogicalStructure\");\n }\n}\nclass CompressObjectStream extends _xfa_object.Option10 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"compressObjectStream\");\n }\n}\nclass Compression extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"compression\", true);\n this.compressLogicalStructure = null;\n this.compressObjectStream = null;\n this.level = null;\n this.type = null;\n }\n}\nclass Config extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"config\", true);\n this.acrobat = null;\n this.present = null;\n this.trace = null;\n this.agent = new _xfa_object.XFAObjectArray();\n }\n}\nclass Conformance extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"conformance\", [\"A\", \"B\"]);\n }\n}\nclass ContentCopy extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"contentCopy\");\n }\n}\nclass Copies extends _xfa_object.IntegerObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"copies\", 1, n => n >= 1);\n }\n}\nclass Creator extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"creator\");\n }\n}\nclass CurrentPage extends _xfa_object.IntegerObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"currentPage\", 0, n => n >= 0);\n }\n}\nclass Data extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"data\", true);\n this.adjustData = null;\n this.attributes = null;\n this.incrementalLoad = null;\n this.outputXSL = null;\n this.range = null;\n this.record = null;\n this.startNode = null;\n this.uri = null;\n this.window = null;\n this.xsl = null;\n this.excludeNS = new _xfa_object.XFAObjectArray();\n this.transform = new _xfa_object.XFAObjectArray();\n }\n}\nclass Debug extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"debug\", true);\n this.uri = null;\n }\n}\nclass DefaultTypeface extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"defaultTypeface\");\n this.writingScript = (0, _utils.getStringOption)(attributes.writingScript, [\"*\", \"Arabic\", \"Cyrillic\", \"EastEuropeanRoman\", \"Greek\", \"Hebrew\", \"Japanese\", \"Korean\", \"Roman\", \"SimplifiedChinese\", \"Thai\", \"TraditionalChinese\", \"Vietnamese\"]);\n }\n}\nclass Destination extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"destination\", [\"pdf\", \"pcl\", \"ps\", \"webClient\", \"zpl\"]);\n }\n}\nclass DocumentAssembly extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"documentAssembly\");\n }\n}\nclass Driver extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"driver\", true);\n this.name = attributes.name ? attributes.name.trim() : \"\";\n this.fontInfo = null;\n this.xdc = null;\n }\n}\nclass DuplexOption extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"duplexOption\", [\"simplex\", \"duplexFlipLongEdge\", \"duplexFlipShortEdge\"]);\n }\n}\nclass DynamicRender extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"dynamicRender\", [\"forbidden\", \"required\"]);\n }\n}\nclass Embed extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"embed\");\n }\n}\nclass Encrypt extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"encrypt\");\n }\n}\nclass Encryption extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"encryption\", true);\n this.encrypt = null;\n this.encryptionLevel = null;\n this.permissions = null;\n }\n}\nclass EncryptionLevel extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"encryptionLevel\", [\"40bit\", \"128bit\"]);\n }\n}\nclass Enforce extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"enforce\");\n }\n}\nclass Equate extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"equate\");\n this.force = (0, _utils.getInteger)({\n data: attributes.force,\n defaultValue: 1,\n validate: n => n === 0\n });\n this.from = attributes.from || \"\";\n this.to = attributes.to || \"\";\n }\n}\nclass EquateRange extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"equateRange\");\n this.from = attributes.from || \"\";\n this.to = attributes.to || \"\";\n this._unicodeRange = attributes.unicodeRange || \"\";\n }\n get unicodeRange() {\n const ranges = [];\n const unicodeRegex = /U\\+([0-9a-fA-F]+)/;\n const unicodeRange = this._unicodeRange;\n for (let range of unicodeRange.split(\",\").map(x => x.trim()).filter(x => !!x)) {\n range = range.split(\"-\", 2).map(x => {\n const found = x.match(unicodeRegex);\n if (!found) {\n return 0;\n }\n return parseInt(found[1], 16);\n });\n if (range.length === 1) {\n range.push(range[0]);\n }\n ranges.push(range);\n }\n return (0, _util.shadow)(this, \"unicodeRange\", ranges);\n }\n}\nclass Exclude extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"exclude\");\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = this[_symbol_utils.$content].trim().split(/\\s+/).filter(x => x && [\"calculate\", \"close\", \"enter\", \"exit\", \"initialize\", \"ready\", \"validate\"].includes(x));\n }\n}\nclass ExcludeNS extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"excludeNS\");\n }\n}\nclass FlipLabel extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"flipLabel\", [\"usePrinterSetting\", \"on\", \"off\"]);\n }\n}\nclass FontInfo extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"fontInfo\", true);\n this.embed = null;\n this.map = null;\n this.subsetBelow = null;\n this.alwaysEmbed = new _xfa_object.XFAObjectArray();\n this.defaultTypeface = new _xfa_object.XFAObjectArray();\n this.neverEmbed = new _xfa_object.XFAObjectArray();\n }\n}\nclass FormFieldFilling extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"formFieldFilling\");\n }\n}\nclass GroupParent extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"groupParent\");\n }\n}\nclass IfEmpty extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"ifEmpty\", [\"dataValue\", \"dataGroup\", \"ignore\", \"remove\"]);\n }\n}\nclass IncludeXDPContent extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"includeXDPContent\");\n }\n}\nclass IncrementalLoad extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"incrementalLoad\", [\"none\", \"forwardOnly\"]);\n }\n}\nclass IncrementalMerge extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"incrementalMerge\");\n }\n}\nclass Interactive extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"interactive\");\n }\n}\nclass Jog extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"jog\", [\"usePrinterSetting\", \"none\", \"pageSet\"]);\n }\n}\nclass LabelPrinter extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"labelPrinter\", true);\n this.name = (0, _utils.getStringOption)(attributes.name, [\"zpl\", \"dpl\", \"ipl\", \"tcpl\"]);\n this.batchOutput = null;\n this.flipLabel = null;\n this.fontInfo = null;\n this.xdc = null;\n }\n}\nclass Layout extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"layout\", [\"paginate\", \"panel\"]);\n }\n}\nclass Level extends _xfa_object.IntegerObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"level\", 0, n => n > 0);\n }\n}\nclass Linearized extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"linearized\");\n }\n}\nclass Locale extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"locale\");\n }\n}\nclass LocaleSet extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"localeSet\");\n }\n}\nclass Log extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"log\", true);\n this.mode = null;\n this.threshold = null;\n this.to = null;\n this.uri = null;\n }\n}\nclass MapElement extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"map\", true);\n this.equate = new _xfa_object.XFAObjectArray();\n this.equateRange = new _xfa_object.XFAObjectArray();\n }\n}\nclass MediumInfo extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"mediumInfo\", true);\n this.map = null;\n }\n}\nclass Message extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"message\", true);\n this.msgId = null;\n this.severity = null;\n }\n}\nclass Messaging extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"messaging\", true);\n this.message = new _xfa_object.XFAObjectArray();\n }\n}\nclass Mode extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"mode\", [\"append\", \"overwrite\"]);\n }\n}\nclass ModifyAnnots extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"modifyAnnots\");\n }\n}\nclass MsgId extends _xfa_object.IntegerObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"msgId\", 1, n => n >= 1);\n }\n}\nclass NameAttr extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"nameAttr\");\n }\n}\nclass NeverEmbed extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"neverEmbed\");\n }\n}\nclass NumberOfCopies extends _xfa_object.IntegerObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"numberOfCopies\", null, n => n >= 2 && n <= 5);\n }\n}\nclass OpenAction extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"openAction\", true);\n this.destination = null;\n }\n}\nclass Output extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"output\", true);\n this.to = null;\n this.type = null;\n this.uri = null;\n }\n}\nclass OutputBin extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"outputBin\");\n }\n}\nclass OutputXSL extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"outputXSL\", true);\n this.uri = null;\n }\n}\nclass Overprint extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"overprint\", [\"none\", \"both\", \"draw\", \"field\"]);\n }\n}\nclass Packets extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"packets\");\n }\n [_symbol_utils.$finalize]() {\n if (this[_symbol_utils.$content] === \"*\") {\n return;\n }\n this[_symbol_utils.$content] = this[_symbol_utils.$content].trim().split(/\\s+/).filter(x => [\"config\", \"datasets\", \"template\", \"xfdf\", \"xslt\"].includes(x));\n }\n}\nclass PageOffset extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"pageOffset\");\n this.x = (0, _utils.getInteger)({\n data: attributes.x,\n defaultValue: \"useXDCSetting\",\n validate: n => true\n });\n this.y = (0, _utils.getInteger)({\n data: attributes.y,\n defaultValue: \"useXDCSetting\",\n validate: n => true\n });\n }\n}\nclass PageRange extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"pageRange\");\n }\n [_symbol_utils.$finalize]() {\n const numbers = this[_symbol_utils.$content].trim().split(/\\s+/).map(x => parseInt(x, 10));\n const ranges = [];\n for (let i = 0, ii = numbers.length; i < ii; i += 2) {\n ranges.push(numbers.slice(i, i + 2));\n }\n this[_symbol_utils.$content] = ranges;\n }\n}\nclass Pagination extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"pagination\", [\"simplex\", \"duplexShortEdge\", \"duplexLongEdge\"]);\n }\n}\nclass PaginationOverride extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"paginationOverride\", [\"none\", \"forceDuplex\", \"forceDuplexLongEdge\", \"forceDuplexShortEdge\", \"forceSimplex\"]);\n }\n}\nclass Part extends _xfa_object.IntegerObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"part\", 1, n => false);\n }\n}\nclass Pcl extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"pcl\", true);\n this.name = attributes.name || \"\";\n this.batchOutput = null;\n this.fontInfo = null;\n this.jog = null;\n this.mediumInfo = null;\n this.outputBin = null;\n this.pageOffset = null;\n this.staple = null;\n this.xdc = null;\n }\n}\nclass Pdf extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"pdf\", true);\n this.name = attributes.name || \"\";\n this.adobeExtensionLevel = null;\n this.batchOutput = null;\n this.compression = null;\n this.creator = null;\n this.encryption = null;\n this.fontInfo = null;\n this.interactive = null;\n this.linearized = null;\n this.openAction = null;\n this.pdfa = null;\n this.producer = null;\n this.renderPolicy = null;\n this.scriptModel = null;\n this.silentPrint = null;\n this.submitFormat = null;\n this.tagged = null;\n this.version = null;\n this.viewerPreferences = null;\n this.xdc = null;\n }\n}\nclass Pdfa extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"pdfa\", true);\n this.amd = null;\n this.conformance = null;\n this.includeXDPContent = null;\n this.part = null;\n }\n}\nclass Permissions extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"permissions\", true);\n this.accessibleContent = null;\n this.change = null;\n this.contentCopy = null;\n this.documentAssembly = null;\n this.formFieldFilling = null;\n this.modifyAnnots = null;\n this.plaintextMetadata = null;\n this.print = null;\n this.printHighQuality = null;\n }\n}\nclass PickTrayByPDFSize extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"pickTrayByPDFSize\");\n }\n}\nclass Picture extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"picture\");\n }\n}\nclass PlaintextMetadata extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"plaintextMetadata\");\n }\n}\nclass Presence extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"presence\", [\"preserve\", \"dissolve\", \"dissolveStructure\", \"ignore\", \"remove\"]);\n }\n}\nclass Present extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"present\", true);\n this.behaviorOverride = null;\n this.cache = null;\n this.common = null;\n this.copies = null;\n this.destination = null;\n this.incrementalMerge = null;\n this.layout = null;\n this.output = null;\n this.overprint = null;\n this.pagination = null;\n this.paginationOverride = null;\n this.script = null;\n this.validate = null;\n this.xdp = null;\n this.driver = new _xfa_object.XFAObjectArray();\n this.labelPrinter = new _xfa_object.XFAObjectArray();\n this.pcl = new _xfa_object.XFAObjectArray();\n this.pdf = new _xfa_object.XFAObjectArray();\n this.ps = new _xfa_object.XFAObjectArray();\n this.submitUrl = new _xfa_object.XFAObjectArray();\n this.webClient = new _xfa_object.XFAObjectArray();\n this.zpl = new _xfa_object.XFAObjectArray();\n }\n}\nclass Print extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"print\");\n }\n}\nclass PrintHighQuality extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"printHighQuality\");\n }\n}\nclass PrintScaling extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"printScaling\", [\"appdefault\", \"noScaling\"]);\n }\n}\nclass PrinterName extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"printerName\");\n }\n}\nclass Producer extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"producer\");\n }\n}\nclass Ps extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"ps\", true);\n this.name = attributes.name || \"\";\n this.batchOutput = null;\n this.fontInfo = null;\n this.jog = null;\n this.mediumInfo = null;\n this.outputBin = null;\n this.staple = null;\n this.xdc = null;\n }\n}\nclass Range extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"range\");\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = this[_symbol_utils.$content].trim().split(/\\s*,\\s*/, 2).map(range => range.split(\"-\").map(x => parseInt(x.trim(), 10))).filter(range => range.every(x => !isNaN(x))).map(range => {\n if (range.length === 1) {\n range.push(range[0]);\n }\n return range;\n });\n }\n}\nclass Record extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"record\");\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = this[_symbol_utils.$content].trim();\n const n = parseInt(this[_symbol_utils.$content], 10);\n if (!isNaN(n) && n >= 0) {\n this[_symbol_utils.$content] = n;\n }\n }\n}\nclass Relevant extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"relevant\");\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = this[_symbol_utils.$content].trim().split(/\\s+/);\n }\n}\nclass Rename extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"rename\");\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = this[_symbol_utils.$content].trim();\n if (this[_symbol_utils.$content].toLowerCase().startsWith(\"xml\") || new RegExp(\"[\\\\p{L}_][\\\\p{L}\\\\d._\\\\p{M}-]*\", \"u\").test(this[_symbol_utils.$content])) {\n (0, _util.warn)(\"XFA - Rename: invalid XFA name\");\n }\n }\n}\nclass RenderPolicy extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"renderPolicy\", [\"server\", \"client\"]);\n }\n}\nclass RunScripts extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"runScripts\", [\"both\", \"client\", \"none\", \"server\"]);\n }\n}\nclass Script extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"script\", true);\n this.currentPage = null;\n this.exclude = null;\n this.runScripts = null;\n }\n}\nclass ScriptModel extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"scriptModel\", [\"XFA\", \"none\"]);\n }\n}\nclass Severity extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"severity\", [\"ignore\", \"error\", \"information\", \"trace\", \"warning\"]);\n }\n}\nclass SilentPrint extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"silentPrint\", true);\n this.addSilentPrint = null;\n this.printerName = null;\n }\n}\nclass Staple extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"staple\");\n this.mode = (0, _utils.getStringOption)(attributes.mode, [\"usePrinterSetting\", \"on\", \"off\"]);\n }\n}\nclass StartNode extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"startNode\");\n }\n}\nclass StartPage extends _xfa_object.IntegerObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"startPage\", 0, n => true);\n }\n}\nclass SubmitFormat extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"submitFormat\", [\"html\", \"delegate\", \"fdf\", \"xml\", \"pdf\"]);\n }\n}\nclass SubmitUrl extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"submitUrl\");\n }\n}\nclass SubsetBelow extends _xfa_object.IntegerObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"subsetBelow\", 100, n => n >= 0 && n <= 100);\n }\n}\nclass SuppressBanner extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"suppressBanner\");\n }\n}\nclass Tagged extends _xfa_object.Option01 {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"tagged\");\n }\n}\nclass Template extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"template\", true);\n this.base = null;\n this.relevant = null;\n this.startPage = null;\n this.uri = null;\n this.xsl = null;\n }\n}\nclass Threshold extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"threshold\", [\"trace\", \"error\", \"information\", \"warning\"]);\n }\n}\nclass To extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"to\", [\"null\", \"memory\", \"stderr\", \"stdout\", \"system\", \"uri\"]);\n }\n}\nclass TemplateCache extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"templateCache\");\n this.maxEntries = (0, _utils.getInteger)({\n data: attributes.maxEntries,\n defaultValue: 5,\n validate: n => n >= 0\n });\n }\n}\nclass Trace extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"trace\", true);\n this.area = new _xfa_object.XFAObjectArray();\n }\n}\nclass Transform extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"transform\", true);\n this.groupParent = null;\n this.ifEmpty = null;\n this.nameAttr = null;\n this.picture = null;\n this.presence = null;\n this.rename = null;\n this.whitespace = null;\n }\n}\nclass Type extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"type\", [\"none\", \"ascii85\", \"asciiHex\", \"ccittfax\", \"flate\", \"lzw\", \"runLength\", \"native\", \"xdp\", \"mergedXDP\"]);\n }\n}\nclass Uri extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"uri\");\n }\n}\nclass Validate extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"validate\", [\"preSubmit\", \"prePrint\", \"preExecute\", \"preSave\"]);\n }\n}\nclass ValidateApprovalSignatures extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"validateApprovalSignatures\");\n }\n [_symbol_utils.$finalize]() {\n this[_symbol_utils.$content] = this[_symbol_utils.$content].trim().split(/\\s+/).filter(x => [\"docReady\", \"postSign\"].includes(x));\n }\n}\nclass ValidationMessaging extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"validationMessaging\", [\"allMessagesIndividually\", \"allMessagesTogether\", \"firstMessageOnly\", \"noMessages\"]);\n }\n}\nclass Version extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"version\", [\"1.7\", \"1.6\", \"1.5\", \"1.4\", \"1.3\", \"1.2\"]);\n }\n}\nclass VersionControl extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"VersionControl\");\n this.outputBelow = (0, _utils.getStringOption)(attributes.outputBelow, [\"warn\", \"error\", \"update\"]);\n this.sourceAbove = (0, _utils.getStringOption)(attributes.sourceAbove, [\"warn\", \"error\"]);\n this.sourceBelow = (0, _utils.getStringOption)(attributes.sourceBelow, [\"update\", \"maintain\"]);\n }\n}\nclass ViewerPreferences extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"viewerPreferences\", true);\n this.ADBE_JSConsole = null;\n this.ADBE_JSDebugger = null;\n this.addViewerPreferences = null;\n this.duplexOption = null;\n this.enforce = null;\n this.numberOfCopies = null;\n this.pageRange = null;\n this.pickTrayByPDFSize = null;\n this.printScaling = null;\n }\n}\nclass WebClient extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"webClient\", true);\n this.name = attributes.name ? attributes.name.trim() : \"\";\n this.fontInfo = null;\n this.xdc = null;\n }\n}\nclass Whitespace extends _xfa_object.OptionObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"whitespace\", [\"preserve\", \"ltrim\", \"normalize\", \"rtrim\", \"trim\"]);\n }\n}\nclass Window extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"window\");\n }\n [_symbol_utils.$finalize]() {\n const pair = this[_symbol_utils.$content].trim().split(/\\s*,\\s*/, 2).map(x => parseInt(x, 10));\n if (pair.some(x => isNaN(x))) {\n this[_symbol_utils.$content] = [0, 0];\n return;\n }\n if (pair.length === 1) {\n pair.push(pair[0]);\n }\n this[_symbol_utils.$content] = pair;\n }\n}\nclass Xdc extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"xdc\", true);\n this.uri = new _xfa_object.XFAObjectArray();\n this.xsl = new _xfa_object.XFAObjectArray();\n }\n}\nclass Xdp extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"xdp\", true);\n this.packets = null;\n }\n}\nclass Xsl extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"xsl\", true);\n this.debug = null;\n this.uri = null;\n }\n}\nclass Zpl extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONFIG_NS_ID, \"zpl\", true);\n this.name = attributes.name ? attributes.name.trim() : \"\";\n this.batchOutput = null;\n this.flipLabel = null;\n this.fontInfo = null;\n this.xdc = null;\n }\n}\nclass ConfigNamespace {\n static [_namespaces.$buildXFAObject](name, attributes) {\n if (ConfigNamespace.hasOwnProperty(name)) {\n return ConfigNamespace[name](attributes);\n }\n return undefined;\n }\n static acrobat(attrs) {\n return new Acrobat(attrs);\n }\n static acrobat7(attrs) {\n return new Acrobat7(attrs);\n }\n static ADBE_JSConsole(attrs) {\n return new ADBE_JSConsole(attrs);\n }\n static ADBE_JSDebugger(attrs) {\n return new ADBE_JSDebugger(attrs);\n }\n static addSilentPrint(attrs) {\n return new AddSilentPrint(attrs);\n }\n static addViewerPreferences(attrs) {\n return new AddViewerPreferences(attrs);\n }\n static adjustData(attrs) {\n return new AdjustData(attrs);\n }\n static adobeExtensionLevel(attrs) {\n return new AdobeExtensionLevel(attrs);\n }\n static agent(attrs) {\n return new Agent(attrs);\n }\n static alwaysEmbed(attrs) {\n return new AlwaysEmbed(attrs);\n }\n static amd(attrs) {\n return new Amd(attrs);\n }\n static area(attrs) {\n return new Area(attrs);\n }\n static attributes(attrs) {\n return new Attributes(attrs);\n }\n static autoSave(attrs) {\n return new AutoSave(attrs);\n }\n static base(attrs) {\n return new Base(attrs);\n }\n static batchOutput(attrs) {\n return new BatchOutput(attrs);\n }\n static behaviorOverride(attrs) {\n return new BehaviorOverride(attrs);\n }\n static cache(attrs) {\n return new Cache(attrs);\n }\n static change(attrs) {\n return new Change(attrs);\n }\n static common(attrs) {\n return new Common(attrs);\n }\n static compress(attrs) {\n return new Compress(attrs);\n }\n static compressLogicalStructure(attrs) {\n return new CompressLogicalStructure(attrs);\n }\n static compressObjectStream(attrs) {\n return new CompressObjectStream(attrs);\n }\n static compression(attrs) {\n return new Compression(attrs);\n }\n static config(attrs) {\n return new Config(attrs);\n }\n static conformance(attrs) {\n return new Conformance(attrs);\n }\n static contentCopy(attrs) {\n return new ContentCopy(attrs);\n }\n static copies(attrs) {\n return new Copies(attrs);\n }\n static creator(attrs) {\n return new Creator(attrs);\n }\n static currentPage(attrs) {\n return new CurrentPage(attrs);\n }\n static data(attrs) {\n return new Data(attrs);\n }\n static debug(attrs) {\n return new Debug(attrs);\n }\n static defaultTypeface(attrs) {\n return new DefaultTypeface(attrs);\n }\n static destination(attrs) {\n return new Destination(attrs);\n }\n static documentAssembly(attrs) {\n return new DocumentAssembly(attrs);\n }\n static driver(attrs) {\n return new Driver(attrs);\n }\n static duplexOption(attrs) {\n return new DuplexOption(attrs);\n }\n static dynamicRender(attrs) {\n return new DynamicRender(attrs);\n }\n static embed(attrs) {\n return new Embed(attrs);\n }\n static encrypt(attrs) {\n return new Encrypt(attrs);\n }\n static encryption(attrs) {\n return new Encryption(attrs);\n }\n static encryptionLevel(attrs) {\n return new EncryptionLevel(attrs);\n }\n static enforce(attrs) {\n return new Enforce(attrs);\n }\n static equate(attrs) {\n return new Equate(attrs);\n }\n static equateRange(attrs) {\n return new EquateRange(attrs);\n }\n static exclude(attrs) {\n return new Exclude(attrs);\n }\n static excludeNS(attrs) {\n return new ExcludeNS(attrs);\n }\n static flipLabel(attrs) {\n return new FlipLabel(attrs);\n }\n static fontInfo(attrs) {\n return new FontInfo(attrs);\n }\n static formFieldFilling(attrs) {\n return new FormFieldFilling(attrs);\n }\n static groupParent(attrs) {\n return new GroupParent(attrs);\n }\n static ifEmpty(attrs) {\n return new IfEmpty(attrs);\n }\n static includeXDPContent(attrs) {\n return new IncludeXDPContent(attrs);\n }\n static incrementalLoad(attrs) {\n return new IncrementalLoad(attrs);\n }\n static incrementalMerge(attrs) {\n return new IncrementalMerge(attrs);\n }\n static interactive(attrs) {\n return new Interactive(attrs);\n }\n static jog(attrs) {\n return new Jog(attrs);\n }\n static labelPrinter(attrs) {\n return new LabelPrinter(attrs);\n }\n static layout(attrs) {\n return new Layout(attrs);\n }\n static level(attrs) {\n return new Level(attrs);\n }\n static linearized(attrs) {\n return new Linearized(attrs);\n }\n static locale(attrs) {\n return new Locale(attrs);\n }\n static localeSet(attrs) {\n return new LocaleSet(attrs);\n }\n static log(attrs) {\n return new Log(attrs);\n }\n static map(attrs) {\n return new MapElement(attrs);\n }\n static mediumInfo(attrs) {\n return new MediumInfo(attrs);\n }\n static message(attrs) {\n return new Message(attrs);\n }\n static messaging(attrs) {\n return new Messaging(attrs);\n }\n static mode(attrs) {\n return new Mode(attrs);\n }\n static modifyAnnots(attrs) {\n return new ModifyAnnots(attrs);\n }\n static msgId(attrs) {\n return new MsgId(attrs);\n }\n static nameAttr(attrs) {\n return new NameAttr(attrs);\n }\n static neverEmbed(attrs) {\n return new NeverEmbed(attrs);\n }\n static numberOfCopies(attrs) {\n return new NumberOfCopies(attrs);\n }\n static openAction(attrs) {\n return new OpenAction(attrs);\n }\n static output(attrs) {\n return new Output(attrs);\n }\n static outputBin(attrs) {\n return new OutputBin(attrs);\n }\n static outputXSL(attrs) {\n return new OutputXSL(attrs);\n }\n static overprint(attrs) {\n return new Overprint(attrs);\n }\n static packets(attrs) {\n return new Packets(attrs);\n }\n static pageOffset(attrs) {\n return new PageOffset(attrs);\n }\n static pageRange(attrs) {\n return new PageRange(attrs);\n }\n static pagination(attrs) {\n return new Pagination(attrs);\n }\n static paginationOverride(attrs) {\n return new PaginationOverride(attrs);\n }\n static part(attrs) {\n return new Part(attrs);\n }\n static pcl(attrs) {\n return new Pcl(attrs);\n }\n static pdf(attrs) {\n return new Pdf(attrs);\n }\n static pdfa(attrs) {\n return new Pdfa(attrs);\n }\n static permissions(attrs) {\n return new Permissions(attrs);\n }\n static pickTrayByPDFSize(attrs) {\n return new PickTrayByPDFSize(attrs);\n }\n static picture(attrs) {\n return new Picture(attrs);\n }\n static plaintextMetadata(attrs) {\n return new PlaintextMetadata(attrs);\n }\n static presence(attrs) {\n return new Presence(attrs);\n }\n static present(attrs) {\n return new Present(attrs);\n }\n static print(attrs) {\n return new Print(attrs);\n }\n static printHighQuality(attrs) {\n return new PrintHighQuality(attrs);\n }\n static printScaling(attrs) {\n return new PrintScaling(attrs);\n }\n static printerName(attrs) {\n return new PrinterName(attrs);\n }\n static producer(attrs) {\n return new Producer(attrs);\n }\n static ps(attrs) {\n return new Ps(attrs);\n }\n static range(attrs) {\n return new Range(attrs);\n }\n static record(attrs) {\n return new Record(attrs);\n }\n static relevant(attrs) {\n return new Relevant(attrs);\n }\n static rename(attrs) {\n return new Rename(attrs);\n }\n static renderPolicy(attrs) {\n return new RenderPolicy(attrs);\n }\n static runScripts(attrs) {\n return new RunScripts(attrs);\n }\n static script(attrs) {\n return new Script(attrs);\n }\n static scriptModel(attrs) {\n return new ScriptModel(attrs);\n }\n static severity(attrs) {\n return new Severity(attrs);\n }\n static silentPrint(attrs) {\n return new SilentPrint(attrs);\n }\n static staple(attrs) {\n return new Staple(attrs);\n }\n static startNode(attrs) {\n return new StartNode(attrs);\n }\n static startPage(attrs) {\n return new StartPage(attrs);\n }\n static submitFormat(attrs) {\n return new SubmitFormat(attrs);\n }\n static submitUrl(attrs) {\n return new SubmitUrl(attrs);\n }\n static subsetBelow(attrs) {\n return new SubsetBelow(attrs);\n }\n static suppressBanner(attrs) {\n return new SuppressBanner(attrs);\n }\n static tagged(attrs) {\n return new Tagged(attrs);\n }\n static template(attrs) {\n return new Template(attrs);\n }\n static templateCache(attrs) {\n return new TemplateCache(attrs);\n }\n static threshold(attrs) {\n return new Threshold(attrs);\n }\n static to(attrs) {\n return new To(attrs);\n }\n static trace(attrs) {\n return new Trace(attrs);\n }\n static transform(attrs) {\n return new Transform(attrs);\n }\n static type(attrs) {\n return new Type(attrs);\n }\n static uri(attrs) {\n return new Uri(attrs);\n }\n static validate(attrs) {\n return new Validate(attrs);\n }\n static validateApprovalSignatures(attrs) {\n return new ValidateApprovalSignatures(attrs);\n }\n static validationMessaging(attrs) {\n return new ValidationMessaging(attrs);\n }\n static version(attrs) {\n return new Version(attrs);\n }\n static versionControl(attrs) {\n return new VersionControl(attrs);\n }\n static viewerPreferences(attrs) {\n return new ViewerPreferences(attrs);\n }\n static webClient(attrs) {\n return new WebClient(attrs);\n }\n static whitespace(attrs) {\n return new Whitespace(attrs);\n }\n static window(attrs) {\n return new Window(attrs);\n }\n static xdc(attrs) {\n return new Xdc(attrs);\n }\n static xdp(attrs) {\n return new Xdp(attrs);\n }\n static xsl(attrs) {\n return new Xsl(attrs);\n }\n static zpl(attrs) {\n return new Zpl(attrs);\n }\n}\nexports.ConfigNamespace = ConfigNamespace;\n\n/***/ }),\n/* 94 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ConnectionSetNamespace = void 0;\nvar _namespaces = __w_pdfjs_require__(81);\nvar _xfa_object = __w_pdfjs_require__(87);\nconst CONNECTION_SET_NS_ID = _namespaces.NamespaceIds.connectionSet.id;\nclass ConnectionSet extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"connectionSet\", true);\n this.wsdlConnection = new _xfa_object.XFAObjectArray();\n this.xmlConnection = new _xfa_object.XFAObjectArray();\n this.xsdConnection = new _xfa_object.XFAObjectArray();\n }\n}\nclass EffectiveInputPolicy extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"effectiveInputPolicy\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass EffectiveOutputPolicy extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"effectiveOutputPolicy\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Operation extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"operation\");\n this.id = attributes.id || \"\";\n this.input = attributes.input || \"\";\n this.name = attributes.name || \"\";\n this.output = attributes.output || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass RootElement extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"rootElement\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass SoapAction extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"soapAction\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass SoapAddress extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"soapAddress\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass Uri extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"uri\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass WsdlAddress extends _xfa_object.StringObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"wsdlAddress\");\n this.id = attributes.id || \"\";\n this.name = attributes.name || \"\";\n this.use = attributes.use || \"\";\n this.usehref = attributes.usehref || \"\";\n }\n}\nclass WsdlConnection extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"wsdlConnection\", true);\n this.dataDescription = attributes.dataDescription || \"\";\n this.name = attributes.name || \"\";\n this.effectiveInputPolicy = null;\n this.effectiveOutputPolicy = null;\n this.operation = null;\n this.soapAction = null;\n this.soapAddress = null;\n this.wsdlAddress = null;\n }\n}\nclass XmlConnection extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"xmlConnection\", true);\n this.dataDescription = attributes.dataDescription || \"\";\n this.name = attributes.name || \"\";\n this.uri = null;\n }\n}\nclass XsdConnection extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(CONNECTION_SET_NS_ID, \"xsdConnection\", true);\n this.dataDescription = attributes.dataDescription || \"\";\n this.name = attributes.name || \"\";\n this.rootElement = null;\n this.uri = null;\n }\n}\nclass ConnectionSetNamespace {\n static [_namespaces.$buildXFAObject](name, attributes) {\n if (ConnectionSetNamespace.hasOwnProperty(name)) {\n return ConnectionSetNamespace[name](attributes);\n }\n return undefined;\n }\n static connectionSet(attrs) {\n return new ConnectionSet(attrs);\n }\n static effectiveInputPolicy(attrs) {\n return new EffectiveInputPolicy(attrs);\n }\n static effectiveOutputPolicy(attrs) {\n return new EffectiveOutputPolicy(attrs);\n }\n static operation(attrs) {\n return new Operation(attrs);\n }\n static rootElement(attrs) {\n return new RootElement(attrs);\n }\n static soapAction(attrs) {\n return new SoapAction(attrs);\n }\n static soapAddress(attrs) {\n return new SoapAddress(attrs);\n }\n static uri(attrs) {\n return new Uri(attrs);\n }\n static wsdlAddress(attrs) {\n return new WsdlAddress(attrs);\n }\n static wsdlConnection(attrs) {\n return new WsdlConnection(attrs);\n }\n static xmlConnection(attrs) {\n return new XmlConnection(attrs);\n }\n static xsdConnection(attrs) {\n return new XsdConnection(attrs);\n }\n}\nexports.ConnectionSetNamespace = ConnectionSetNamespace;\n\n/***/ }),\n/* 95 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.DatasetsNamespace = void 0;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _namespaces = __w_pdfjs_require__(81);\nvar _xfa_object = __w_pdfjs_require__(87);\nconst DATASETS_NS_ID = _namespaces.NamespaceIds.datasets.id;\nclass Data extends _xfa_object.XmlObject {\n constructor(attributes) {\n super(DATASETS_NS_ID, \"data\", attributes);\n }\n [_symbol_utils.$isNsAgnostic]() {\n return true;\n }\n}\nclass Datasets extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(DATASETS_NS_ID, \"datasets\", true);\n this.data = null;\n this.Signature = null;\n }\n [_symbol_utils.$onChild](child) {\n const name = child[_symbol_utils.$nodeName];\n if (name === \"data\" && child[_symbol_utils.$namespaceId] === DATASETS_NS_ID || name === \"Signature\" && child[_symbol_utils.$namespaceId] === _namespaces.NamespaceIds.signature.id) {\n this[name] = child;\n }\n this[_symbol_utils.$appendChild](child);\n }\n}\nclass DatasetsNamespace {\n static [_namespaces.$buildXFAObject](name, attributes) {\n if (DatasetsNamespace.hasOwnProperty(name)) {\n return DatasetsNamespace[name](attributes);\n }\n return undefined;\n }\n static datasets(attributes) {\n return new Datasets(attributes);\n }\n static data(attributes) {\n return new Data(attributes);\n }\n}\nexports.DatasetsNamespace = DatasetsNamespace;\n\n/***/ }),\n/* 96 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.LocaleSetNamespace = void 0;\nvar _namespaces = __w_pdfjs_require__(81);\nvar _xfa_object = __w_pdfjs_require__(87);\nvar _utils = __w_pdfjs_require__(84);\nconst LOCALE_SET_NS_ID = _namespaces.NamespaceIds.localeSet.id;\nclass CalendarSymbols extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"calendarSymbols\", true);\n this.name = \"gregorian\";\n this.dayNames = new _xfa_object.XFAObjectArray(2);\n this.eraNames = null;\n this.meridiemNames = null;\n this.monthNames = new _xfa_object.XFAObjectArray(2);\n }\n}\nclass CurrencySymbol extends _xfa_object.StringObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"currencySymbol\");\n this.name = (0, _utils.getStringOption)(attributes.name, [\"symbol\", \"isoname\", \"decimal\"]);\n }\n}\nclass CurrencySymbols extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"currencySymbols\", true);\n this.currencySymbol = new _xfa_object.XFAObjectArray(3);\n }\n}\nclass DatePattern extends _xfa_object.StringObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"datePattern\");\n this.name = (0, _utils.getStringOption)(attributes.name, [\"full\", \"long\", \"med\", \"short\"]);\n }\n}\nclass DatePatterns extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"datePatterns\", true);\n this.datePattern = new _xfa_object.XFAObjectArray(4);\n }\n}\nclass DateTimeSymbols extends _xfa_object.ContentObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"dateTimeSymbols\");\n }\n}\nclass Day extends _xfa_object.StringObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"day\");\n }\n}\nclass DayNames extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"dayNames\", true);\n this.abbr = (0, _utils.getInteger)({\n data: attributes.abbr,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.day = new _xfa_object.XFAObjectArray(7);\n }\n}\nclass Era extends _xfa_object.StringObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"era\");\n }\n}\nclass EraNames extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"eraNames\", true);\n this.era = new _xfa_object.XFAObjectArray(2);\n }\n}\nclass Locale extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"locale\", true);\n this.desc = attributes.desc || \"\";\n this.name = \"isoname\";\n this.calendarSymbols = null;\n this.currencySymbols = null;\n this.datePatterns = null;\n this.dateTimeSymbols = null;\n this.numberPatterns = null;\n this.numberSymbols = null;\n this.timePatterns = null;\n this.typeFaces = null;\n }\n}\nclass LocaleSet extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"localeSet\", true);\n this.locale = new _xfa_object.XFAObjectArray();\n }\n}\nclass Meridiem extends _xfa_object.StringObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"meridiem\");\n }\n}\nclass MeridiemNames extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"meridiemNames\", true);\n this.meridiem = new _xfa_object.XFAObjectArray(2);\n }\n}\nclass Month extends _xfa_object.StringObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"month\");\n }\n}\nclass MonthNames extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"monthNames\", true);\n this.abbr = (0, _utils.getInteger)({\n data: attributes.abbr,\n defaultValue: 0,\n validate: x => x === 1\n });\n this.month = new _xfa_object.XFAObjectArray(12);\n }\n}\nclass NumberPattern extends _xfa_object.StringObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"numberPattern\");\n this.name = (0, _utils.getStringOption)(attributes.name, [\"full\", \"long\", \"med\", \"short\"]);\n }\n}\nclass NumberPatterns extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"numberPatterns\", true);\n this.numberPattern = new _xfa_object.XFAObjectArray(4);\n }\n}\nclass NumberSymbol extends _xfa_object.StringObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"numberSymbol\");\n this.name = (0, _utils.getStringOption)(attributes.name, [\"decimal\", \"grouping\", \"percent\", \"minus\", \"zero\"]);\n }\n}\nclass NumberSymbols extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"numberSymbols\", true);\n this.numberSymbol = new _xfa_object.XFAObjectArray(5);\n }\n}\nclass TimePattern extends _xfa_object.StringObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"timePattern\");\n this.name = (0, _utils.getStringOption)(attributes.name, [\"full\", \"long\", \"med\", \"short\"]);\n }\n}\nclass TimePatterns extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"timePatterns\", true);\n this.timePattern = new _xfa_object.XFAObjectArray(4);\n }\n}\nclass TypeFace extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"typeFace\", true);\n this.name = attributes.name | \"\";\n }\n}\nclass TypeFaces extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(LOCALE_SET_NS_ID, \"typeFaces\", true);\n this.typeFace = new _xfa_object.XFAObjectArray();\n }\n}\nclass LocaleSetNamespace {\n static [_namespaces.$buildXFAObject](name, attributes) {\n if (LocaleSetNamespace.hasOwnProperty(name)) {\n return LocaleSetNamespace[name](attributes);\n }\n return undefined;\n }\n static calendarSymbols(attrs) {\n return new CalendarSymbols(attrs);\n }\n static currencySymbol(attrs) {\n return new CurrencySymbol(attrs);\n }\n static currencySymbols(attrs) {\n return new CurrencySymbols(attrs);\n }\n static datePattern(attrs) {\n return new DatePattern(attrs);\n }\n static datePatterns(attrs) {\n return new DatePatterns(attrs);\n }\n static dateTimeSymbols(attrs) {\n return new DateTimeSymbols(attrs);\n }\n static day(attrs) {\n return new Day(attrs);\n }\n static dayNames(attrs) {\n return new DayNames(attrs);\n }\n static era(attrs) {\n return new Era(attrs);\n }\n static eraNames(attrs) {\n return new EraNames(attrs);\n }\n static locale(attrs) {\n return new Locale(attrs);\n }\n static localeSet(attrs) {\n return new LocaleSet(attrs);\n }\n static meridiem(attrs) {\n return new Meridiem(attrs);\n }\n static meridiemNames(attrs) {\n return new MeridiemNames(attrs);\n }\n static month(attrs) {\n return new Month(attrs);\n }\n static monthNames(attrs) {\n return new MonthNames(attrs);\n }\n static numberPattern(attrs) {\n return new NumberPattern(attrs);\n }\n static numberPatterns(attrs) {\n return new NumberPatterns(attrs);\n }\n static numberSymbol(attrs) {\n return new NumberSymbol(attrs);\n }\n static numberSymbols(attrs) {\n return new NumberSymbols(attrs);\n }\n static timePattern(attrs) {\n return new TimePattern(attrs);\n }\n static timePatterns(attrs) {\n return new TimePatterns(attrs);\n }\n static typeFace(attrs) {\n return new TypeFace(attrs);\n }\n static typeFaces(attrs) {\n return new TypeFaces(attrs);\n }\n}\nexports.LocaleSetNamespace = LocaleSetNamespace;\n\n/***/ }),\n/* 97 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SignatureNamespace = void 0;\nvar _namespaces = __w_pdfjs_require__(81);\nvar _xfa_object = __w_pdfjs_require__(87);\nconst SIGNATURE_NS_ID = _namespaces.NamespaceIds.signature.id;\nclass Signature extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(SIGNATURE_NS_ID, \"signature\", true);\n }\n}\nclass SignatureNamespace {\n static [_namespaces.$buildXFAObject](name, attributes) {\n if (SignatureNamespace.hasOwnProperty(name)) {\n return SignatureNamespace[name](attributes);\n }\n return undefined;\n }\n static signature(attributes) {\n return new Signature(attributes);\n }\n}\nexports.SignatureNamespace = SignatureNamespace;\n\n/***/ }),\n/* 98 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StylesheetNamespace = void 0;\nvar _namespaces = __w_pdfjs_require__(81);\nvar _xfa_object = __w_pdfjs_require__(87);\nconst STYLESHEET_NS_ID = _namespaces.NamespaceIds.stylesheet.id;\nclass Stylesheet extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(STYLESHEET_NS_ID, \"stylesheet\", true);\n }\n}\nclass StylesheetNamespace {\n static [_namespaces.$buildXFAObject](name, attributes) {\n if (StylesheetNamespace.hasOwnProperty(name)) {\n return StylesheetNamespace[name](attributes);\n }\n return undefined;\n }\n static stylesheet(attributes) {\n return new Stylesheet(attributes);\n }\n}\nexports.StylesheetNamespace = StylesheetNamespace;\n\n/***/ }),\n/* 99 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XdpNamespace = void 0;\nvar _namespaces = __w_pdfjs_require__(81);\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _xfa_object = __w_pdfjs_require__(87);\nconst XDP_NS_ID = _namespaces.NamespaceIds.xdp.id;\nclass Xdp extends _xfa_object.XFAObject {\n constructor(attributes) {\n super(XDP_NS_ID, \"xdp\", true);\n this.uuid = attributes.uuid || \"\";\n this.timeStamp = attributes.timeStamp || \"\";\n this.config = null;\n this.connectionSet = null;\n this.datasets = null;\n this.localeSet = null;\n this.stylesheet = new _xfa_object.XFAObjectArray();\n this.template = null;\n }\n [_symbol_utils.$onChildCheck](child) {\n const ns = _namespaces.NamespaceIds[child[_symbol_utils.$nodeName]];\n return ns && child[_symbol_utils.$namespaceId] === ns.id;\n }\n}\nclass XdpNamespace {\n static [_namespaces.$buildXFAObject](name, attributes) {\n if (XdpNamespace.hasOwnProperty(name)) {\n return XdpNamespace[name](attributes);\n }\n return undefined;\n }\n static xdp(attributes) {\n return new Xdp(attributes);\n }\n}\nexports.XdpNamespace = XdpNamespace;\n\n/***/ }),\n/* 100 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XhtmlNamespace = void 0;\nvar _symbol_utils = __w_pdfjs_require__(78);\nvar _namespaces = __w_pdfjs_require__(81);\nvar _html_utils = __w_pdfjs_require__(83);\nvar _utils = __w_pdfjs_require__(84);\nvar _xfa_object = __w_pdfjs_require__(87);\nconst XHTML_NS_ID = _namespaces.NamespaceIds.xhtml.id;\nconst $richText = Symbol();\nconst VALID_STYLES = new Set([\"color\", \"font\", \"font-family\", \"font-size\", \"font-stretch\", \"font-style\", \"font-weight\", \"margin\", \"margin-bottom\", \"margin-left\", \"margin-right\", \"margin-top\", \"letter-spacing\", \"line-height\", \"orphans\", \"page-break-after\", \"page-break-before\", \"page-break-inside\", \"tab-interval\", \"tab-stop\", \"text-align\", \"text-decoration\", \"text-indent\", \"vertical-align\", \"widows\", \"kerning-mode\", \"xfa-font-horizontal-scale\", \"xfa-font-vertical-scale\", \"xfa-spacerun\", \"xfa-tab-stops\"]);\nconst StyleMapping = new Map([[\"page-break-after\", \"breakAfter\"], [\"page-break-before\", \"breakBefore\"], [\"page-break-inside\", \"breakInside\"], [\"kerning-mode\", value => value === \"none\" ? \"none\" : \"normal\"], [\"xfa-font-horizontal-scale\", value => `scaleX(${Math.max(0, Math.min(parseInt(value) / 100)).toFixed(2)})`], [\"xfa-font-vertical-scale\", value => `scaleY(${Math.max(0, Math.min(parseInt(value) / 100)).toFixed(2)})`], [\"xfa-spacerun\", \"\"], [\"xfa-tab-stops\", \"\"], [\"font-size\", (value, original) => {\n value = original.fontSize = (0, _utils.getMeasurement)(value);\n return (0, _html_utils.measureToString)(0.99 * value);\n}], [\"letter-spacing\", value => (0, _html_utils.measureToString)((0, _utils.getMeasurement)(value))], [\"line-height\", value => (0, _html_utils.measureToString)((0, _utils.getMeasurement)(value))], [\"margin\", value => (0, _html_utils.measureToString)((0, _utils.getMeasurement)(value))], [\"margin-bottom\", value => (0, _html_utils.measureToString)((0, _utils.getMeasurement)(value))], [\"margin-left\", value => (0, _html_utils.measureToString)((0, _utils.getMeasurement)(value))], [\"margin-right\", value => (0, _html_utils.measureToString)((0, _utils.getMeasurement)(value))], [\"margin-top\", value => (0, _html_utils.measureToString)((0, _utils.getMeasurement)(value))], [\"text-indent\", value => (0, _html_utils.measureToString)((0, _utils.getMeasurement)(value))], [\"font-family\", value => value], [\"vertical-align\", value => (0, _html_utils.measureToString)((0, _utils.getMeasurement)(value))]]);\nconst spacesRegExp = /\\s+/g;\nconst crlfRegExp = /[\\r\\n]+/g;\nconst crlfForRichTextRegExp = /\\r\\n?/g;\nfunction mapStyle(styleStr, node, richText) {\n const style = Object.create(null);\n if (!styleStr) {\n return style;\n }\n const original = Object.create(null);\n for (const [key, value] of styleStr.split(\";\").map(s => s.split(\":\", 2))) {\n const mapping = StyleMapping.get(key);\n if (mapping === \"\") {\n continue;\n }\n let newValue = value;\n if (mapping) {\n newValue = typeof mapping === \"string\" ? mapping : mapping(value, original);\n }\n if (key.endsWith(\"scale\")) {\n style.transform = style.transform ? `${style[key]} ${newValue}` : newValue;\n } else {\n style[key.replaceAll(/-([a-zA-Z])/g, (_, x) => x.toUpperCase())] = newValue;\n }\n }\n if (style.fontFamily) {\n (0, _html_utils.setFontFamily)({\n typeface: style.fontFamily,\n weight: style.fontWeight || \"normal\",\n posture: style.fontStyle || \"normal\",\n size: original.fontSize || 0\n }, node, node[_symbol_utils.$globalData].fontFinder, style);\n }\n if (richText && style.verticalAlign && style.verticalAlign !== \"0px\" && style.fontSize) {\n const SUB_SUPER_SCRIPT_FACTOR = 0.583;\n const VERTICAL_FACTOR = 0.333;\n const fontSize = (0, _utils.getMeasurement)(style.fontSize);\n style.fontSize = (0, _html_utils.measureToString)(fontSize * SUB_SUPER_SCRIPT_FACTOR);\n style.verticalAlign = (0, _html_utils.measureToString)(Math.sign((0, _utils.getMeasurement)(style.verticalAlign)) * fontSize * VERTICAL_FACTOR);\n }\n if (richText && style.fontSize) {\n style.fontSize = `calc(${style.fontSize} * var(--scale-factor))`;\n }\n (0, _html_utils.fixTextIndent)(style);\n return style;\n}\nfunction checkStyle(node) {\n if (!node.style) {\n return \"\";\n }\n return node.style.trim().split(/\\s*;\\s*/).filter(s => !!s).map(s => s.split(/\\s*:\\s*/, 2)).filter(([key, value]) => {\n if (key === \"font-family\") {\n node[_symbol_utils.$globalData].usedTypefaces.add(value);\n }\n return VALID_STYLES.has(key);\n }).map(kv => kv.join(\":\")).join(\";\");\n}\nconst NoWhites = new Set([\"body\", \"html\"]);\nclass XhtmlObject extends _xfa_object.XmlObject {\n constructor(attributes, name) {\n super(XHTML_NS_ID, name);\n this[$richText] = false;\n this.style = attributes.style || \"\";\n }\n [_symbol_utils.$clean](builder) {\n super[_symbol_utils.$clean](builder);\n this.style = checkStyle(this);\n }\n [_symbol_utils.$acceptWhitespace]() {\n return !NoWhites.has(this[_symbol_utils.$nodeName]);\n }\n [_symbol_utils.$onText](str, richText = false) {\n if (!richText) {\n str = str.replaceAll(crlfRegExp, \"\");\n if (!this.style.includes(\"xfa-spacerun:yes\")) {\n str = str.replaceAll(spacesRegExp, \" \");\n }\n } else {\n this[$richText] = true;\n }\n if (str) {\n this[_symbol_utils.$content] += str;\n }\n }\n [_symbol_utils.$pushGlyphs](measure, mustPop = true) {\n const xfaFont = Object.create(null);\n const margin = {\n top: NaN,\n bottom: NaN,\n left: NaN,\n right: NaN\n };\n let lineHeight = null;\n for (const [key, value] of this.style.split(\";\").map(s => s.split(\":\", 2))) {\n switch (key) {\n case \"font-family\":\n xfaFont.typeface = (0, _utils.stripQuotes)(value);\n break;\n case \"font-size\":\n xfaFont.size = (0, _utils.getMeasurement)(value);\n break;\n case \"font-weight\":\n xfaFont.weight = value;\n break;\n case \"font-style\":\n xfaFont.posture = value;\n break;\n case \"letter-spacing\":\n xfaFont.letterSpacing = (0, _utils.getMeasurement)(value);\n break;\n case \"margin\":\n const values = value.split(/ \\t/).map(x => (0, _utils.getMeasurement)(x));\n switch (values.length) {\n case 1:\n margin.top = margin.bottom = margin.left = margin.right = values[0];\n break;\n case 2:\n margin.top = margin.bottom = values[0];\n margin.left = margin.right = values[1];\n break;\n case 3:\n margin.top = values[0];\n margin.bottom = values[2];\n margin.left = margin.right = values[1];\n break;\n case 4:\n margin.top = values[0];\n margin.left = values[1];\n margin.bottom = values[2];\n margin.right = values[3];\n break;\n }\n break;\n case \"margin-top\":\n margin.top = (0, _utils.getMeasurement)(value);\n break;\n case \"margin-bottom\":\n margin.bottom = (0, _utils.getMeasurement)(value);\n break;\n case \"margin-left\":\n margin.left = (0, _utils.getMeasurement)(value);\n break;\n case \"margin-right\":\n margin.right = (0, _utils.getMeasurement)(value);\n break;\n case \"line-height\":\n lineHeight = (0, _utils.getMeasurement)(value);\n break;\n }\n }\n measure.pushData(xfaFont, margin, lineHeight);\n if (this[_symbol_utils.$content]) {\n measure.addString(this[_symbol_utils.$content]);\n } else {\n for (const child of this[_symbol_utils.$getChildren]()) {\n if (child[_symbol_utils.$nodeName] === \"#text\") {\n measure.addString(child[_symbol_utils.$content]);\n continue;\n }\n child[_symbol_utils.$pushGlyphs](measure);\n }\n }\n if (mustPop) {\n measure.popFont();\n }\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const children = [];\n this[_symbol_utils.$extra] = {\n children\n };\n this[_symbol_utils.$childrenToHTML]({});\n if (children.length === 0 && !this[_symbol_utils.$content]) {\n return _utils.HTMLResult.EMPTY;\n }\n let value;\n if (this[$richText]) {\n value = this[_symbol_utils.$content] ? this[_symbol_utils.$content].replaceAll(crlfForRichTextRegExp, \"\\n\") : undefined;\n } else {\n value = this[_symbol_utils.$content] || undefined;\n }\n return _utils.HTMLResult.success({\n name: this[_symbol_utils.$nodeName],\n attributes: {\n href: this.href,\n style: mapStyle(this.style, this, this[$richText])\n },\n children,\n value\n });\n }\n}\nclass A extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"a\");\n this.href = (0, _html_utils.fixURL)(attributes.href) || \"\";\n }\n}\nclass B extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"b\");\n }\n [_symbol_utils.$pushGlyphs](measure) {\n measure.pushFont({\n weight: \"bold\"\n });\n super[_symbol_utils.$pushGlyphs](measure);\n measure.popFont();\n }\n}\nclass Body extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"body\");\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const res = super[_symbol_utils.$toHTML](availableSpace);\n const {\n html\n } = res;\n if (!html) {\n return _utils.HTMLResult.EMPTY;\n }\n html.name = \"div\";\n html.attributes.class = [\"xfaRich\"];\n return res;\n }\n}\nclass Br extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"br\");\n }\n [_symbol_utils.$text]() {\n return \"\\n\";\n }\n [_symbol_utils.$pushGlyphs](measure) {\n measure.addString(\"\\n\");\n }\n [_symbol_utils.$toHTML](availableSpace) {\n return _utils.HTMLResult.success({\n name: \"br\"\n });\n }\n}\nclass Html extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"html\");\n }\n [_symbol_utils.$toHTML](availableSpace) {\n const children = [];\n this[_symbol_utils.$extra] = {\n children\n };\n this[_symbol_utils.$childrenToHTML]({});\n if (children.length === 0) {\n return _utils.HTMLResult.success({\n name: \"div\",\n attributes: {\n class: [\"xfaRich\"],\n style: {}\n },\n value: this[_symbol_utils.$content] || \"\"\n });\n }\n if (children.length === 1) {\n const child = children[0];\n if (child.attributes?.class.includes(\"xfaRich\")) {\n return _utils.HTMLResult.success(child);\n }\n }\n return _utils.HTMLResult.success({\n name: \"div\",\n attributes: {\n class: [\"xfaRich\"],\n style: {}\n },\n children\n });\n }\n}\nclass I extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"i\");\n }\n [_symbol_utils.$pushGlyphs](measure) {\n measure.pushFont({\n posture: \"italic\"\n });\n super[_symbol_utils.$pushGlyphs](measure);\n measure.popFont();\n }\n}\nclass Li extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"li\");\n }\n}\nclass Ol extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"ol\");\n }\n}\nclass P extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"p\");\n }\n [_symbol_utils.$pushGlyphs](measure) {\n super[_symbol_utils.$pushGlyphs](measure, false);\n measure.addString(\"\\n\");\n measure.addPara();\n measure.popFont();\n }\n [_symbol_utils.$text]() {\n const siblings = this[_symbol_utils.$getParent]()[_symbol_utils.$getChildren]();\n if (siblings.at(-1) === this) {\n return super[_symbol_utils.$text]();\n }\n return super[_symbol_utils.$text]() + \"\\n\";\n }\n}\nclass Span extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"span\");\n }\n}\nclass Sub extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"sub\");\n }\n}\nclass Sup extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"sup\");\n }\n}\nclass Ul extends XhtmlObject {\n constructor(attributes) {\n super(attributes, \"ul\");\n }\n}\nclass XhtmlNamespace {\n static [_namespaces.$buildXFAObject](name, attributes) {\n if (XhtmlNamespace.hasOwnProperty(name)) {\n return XhtmlNamespace[name](attributes);\n }\n return undefined;\n }\n static a(attributes) {\n return new A(attributes);\n }\n static b(attributes) {\n return new B(attributes);\n }\n static body(attributes) {\n return new Body(attributes);\n }\n static br(attributes) {\n return new Br(attributes);\n }\n static html(attributes) {\n return new Html(attributes);\n }\n static i(attributes) {\n return new I(attributes);\n }\n static li(attributes) {\n return new Li(attributes);\n }\n static ol(attributes) {\n return new Ol(attributes);\n }\n static p(attributes) {\n return new P(attributes);\n }\n static span(attributes) {\n return new Span(attributes);\n }\n static sub(attributes) {\n return new Sub(attributes);\n }\n static sup(attributes) {\n return new Sup(attributes);\n }\n static ul(attributes) {\n return new Ul(attributes);\n }\n}\nexports.XhtmlNamespace = XhtmlNamespace;\n\n/***/ }),\n/* 101 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.UnknownNamespace = void 0;\nvar _namespaces = __w_pdfjs_require__(81);\nvar _xfa_object = __w_pdfjs_require__(87);\nclass UnknownNamespace {\n constructor(nsId) {\n this.namespaceId = nsId;\n }\n [_namespaces.$buildXFAObject](name, attributes) {\n return new _xfa_object.XmlObject(this.namespaceId, name, attributes);\n }\n}\nexports.UnknownNamespace = UnknownNamespace;\n\n/***/ }),\n/* 102 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.DatasetReader = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _xml_parser = __w_pdfjs_require__(71);\nfunction decodeString(str) {\n try {\n return (0, _util.stringToUTF8String)(str);\n } catch (ex) {\n (0, _util.warn)(`UTF-8 decoding failed: \"${ex}\".`);\n return str;\n }\n}\nclass DatasetXMLParser extends _xml_parser.SimpleXMLParser {\n constructor(options) {\n super(options);\n this.node = null;\n }\n onEndElement(name) {\n const node = super.onEndElement(name);\n if (node && name === \"xfa:datasets\") {\n this.node = node;\n throw new Error(\"Aborting DatasetXMLParser.\");\n }\n }\n}\nclass DatasetReader {\n constructor(data) {\n if (data.datasets) {\n this.node = new _xml_parser.SimpleXMLParser({\n hasAttributes: true\n }).parseFromString(data.datasets).documentElement;\n } else {\n const parser = new DatasetXMLParser({\n hasAttributes: true\n });\n try {\n parser.parseFromString(data[\"xdp:xdp\"]);\n } catch {}\n this.node = parser.node;\n }\n }\n getValue(path) {\n if (!this.node || !path) {\n return \"\";\n }\n const node = this.node.searchNode((0, _core_utils.parseXFAPath)(path), 0);\n if (!node) {\n return \"\";\n }\n const first = node.firstChild;\n if (first?.nodeName === \"value\") {\n return node.children.map(child => decodeString(child.textContent));\n }\n return decodeString(node.textContent);\n }\n}\nexports.DatasetReader = DatasetReader;\n\n/***/ }),\n/* 103 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XRef = void 0;\nvar _util = __w_pdfjs_require__(2);\nvar _primitives = __w_pdfjs_require__(4);\nvar _parser = __w_pdfjs_require__(16);\nvar _core_utils = __w_pdfjs_require__(3);\nvar _base_stream = __w_pdfjs_require__(5);\nvar _crypto = __w_pdfjs_require__(74);\nclass XRef {\n #firstXRefStmPos = null;\n constructor(stream, pdfManager) {\n this.stream = stream;\n this.pdfManager = pdfManager;\n this.entries = [];\n this._xrefStms = new Set();\n this._cacheMap = new Map();\n this._pendingRefs = new _primitives.RefSet();\n this._newPersistentRefNum = null;\n this._newTemporaryRefNum = null;\n }\n getNewPersistentRef(obj) {\n if (this._newPersistentRefNum === null) {\n this._newPersistentRefNum = this.entries.length || 1;\n }\n const num = this._newPersistentRefNum++;\n this._cacheMap.set(num, obj);\n return _primitives.Ref.get(num, 0);\n }\n getNewTemporaryRef() {\n if (this._newTemporaryRefNum === null) {\n this._newTemporaryRefNum = this.entries.length || 1;\n }\n return _primitives.Ref.get(this._newTemporaryRefNum++, 0);\n }\n resetNewTemporaryRef() {\n this._newTemporaryRefNum = null;\n }\n setStartXRef(startXRef) {\n this.startXRefQueue = [startXRef];\n }\n parse(recoveryMode = false) {\n let trailerDict;\n if (!recoveryMode) {\n trailerDict = this.readXRef();\n } else {\n (0, _util.warn)(\"Indexing all PDF objects\");\n trailerDict = this.indexObjects();\n }\n trailerDict.assignXref(this);\n this.trailer = trailerDict;\n let encrypt;\n try {\n encrypt = trailerDict.get(\"Encrypt\");\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(`XRef.parse - Invalid \"Encrypt\" reference: \"${ex}\".`);\n }\n if (encrypt instanceof _primitives.Dict) {\n const ids = trailerDict.get(\"ID\");\n const fileId = ids?.length ? ids[0] : \"\";\n encrypt.suppressEncryption = true;\n this.encrypt = new _crypto.CipherTransformFactory(encrypt, fileId, this.pdfManager.password);\n }\n let root;\n try {\n root = trailerDict.get(\"Root\");\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(`XRef.parse - Invalid \"Root\" reference: \"${ex}\".`);\n }\n if (root instanceof _primitives.Dict) {\n try {\n const pages = root.get(\"Pages\");\n if (pages instanceof _primitives.Dict) {\n this.root = root;\n return;\n }\n } catch (ex) {\n if (ex instanceof _core_utils.MissingDataException) {\n throw ex;\n }\n (0, _util.warn)(`XRef.parse - Invalid \"Pages\" reference: \"${ex}\".`);\n }\n }\n if (!recoveryMode) {\n throw new _core_utils.XRefParseException();\n }\n throw new _util.InvalidPDFException(\"Invalid Root reference.\");\n }\n processXRefTable(parser) {\n if (!(\"tableState\" in this)) {\n this.tableState = {\n entryNum: 0,\n streamPos: parser.lexer.stream.pos,\n parserBuf1: parser.buf1,\n parserBuf2: parser.buf2\n };\n }\n const obj = this.readXRefTable(parser);\n if (!(0, _primitives.isCmd)(obj, \"trailer\")) {\n throw new _util.FormatError(\"Invalid XRef table: could not find trailer dictionary\");\n }\n let dict = parser.getObj();\n if (!(dict instanceof _primitives.Dict) && dict.dict) {\n dict = dict.dict;\n }\n if (!(dict instanceof _primitives.Dict)) {\n throw new _util.FormatError(\"Invalid XRef table: could not parse trailer dictionary\");\n }\n delete this.tableState;\n return dict;\n }\n readXRefTable(parser) {\n const stream = parser.lexer.stream;\n const tableState = this.tableState;\n stream.pos = tableState.streamPos;\n parser.buf1 = tableState.parserBuf1;\n parser.buf2 = tableState.parserBuf2;\n let obj;\n while (true) {\n if (!(\"firstEntryNum\" in tableState) || !(\"entryCount\" in tableState)) {\n if ((0, _primitives.isCmd)(obj = parser.getObj(), \"trailer\")) {\n break;\n }\n tableState.firstEntryNum = obj;\n tableState.entryCount = parser.getObj();\n }\n let first = tableState.firstEntryNum;\n const count = tableState.entryCount;\n if (!Number.isInteger(first) || !Number.isInteger(count)) {\n throw new _util.FormatError(\"Invalid XRef table: wrong types in subsection header\");\n }\n for (let i = tableState.entryNum; i < count; i++) {\n tableState.streamPos = stream.pos;\n tableState.entryNum = i;\n tableState.parserBuf1 = parser.buf1;\n tableState.parserBuf2 = parser.buf2;\n const entry = {};\n entry.offset = parser.getObj();\n entry.gen = parser.getObj();\n const type = parser.getObj();\n if (type instanceof _primitives.Cmd) {\n switch (type.cmd) {\n case \"f\":\n entry.free = true;\n break;\n case \"n\":\n entry.uncompressed = true;\n break;\n }\n }\n if (!Number.isInteger(entry.offset) || !Number.isInteger(entry.gen) || !(entry.free || entry.uncompressed)) {\n throw new _util.FormatError(`Invalid entry in XRef subsection: ${first}, ${count}`);\n }\n if (i === 0 && entry.free && first === 1) {\n first = 0;\n }\n if (!this.entries[i + first]) {\n this.entries[i + first] = entry;\n }\n }\n tableState.entryNum = 0;\n tableState.streamPos = stream.pos;\n tableState.parserBuf1 = parser.buf1;\n tableState.parserBuf2 = parser.buf2;\n delete tableState.firstEntryNum;\n delete tableState.entryCount;\n }\n if (this.entries[0] && !this.entries[0].free) {\n throw new _util.FormatError(\"Invalid XRef table: unexpected first object\");\n }\n return obj;\n }\n processXRefStream(stream) {\n if (!(\"streamState\" in this)) {\n const streamParameters = stream.dict;\n const byteWidths = streamParameters.get(\"W\");\n let range = streamParameters.get(\"Index\");\n if (!range) {\n range = [0, streamParameters.get(\"Size\")];\n }\n this.streamState = {\n entryRanges: range,\n byteWidths,\n entryNum: 0,\n streamPos: stream.pos\n };\n }\n this.readXRefStream(stream);\n delete this.streamState;\n return stream.dict;\n }\n readXRefStream(stream) {\n const streamState = this.streamState;\n stream.pos = streamState.streamPos;\n const [typeFieldWidth, offsetFieldWidth, generationFieldWidth] = streamState.byteWidths;\n const entryRanges = streamState.entryRanges;\n while (entryRanges.length > 0) {\n const [first, n] = entryRanges;\n if (!Number.isInteger(first) || !Number.isInteger(n)) {\n throw new _util.FormatError(`Invalid XRef range fields: ${first}, ${n}`);\n }\n if (!Number.isInteger(typeFieldWidth) || !Number.isInteger(offsetFieldWidth) || !Number.isInteger(generationFieldWidth)) {\n throw new _util.FormatError(`Invalid XRef entry fields length: ${first}, ${n}`);\n }\n for (let i = streamState.entryNum; i < n; ++i) {\n streamState.entryNum = i;\n streamState.streamPos = stream.pos;\n let type = 0,\n offset = 0,\n generation = 0;\n for (let j = 0; j < typeFieldWidth; ++j) {\n const typeByte = stream.getByte();\n if (typeByte === -1) {\n throw new _util.FormatError(\"Invalid XRef byteWidths 'type'.\");\n }\n type = type << 8 | typeByte;\n }\n if (typeFieldWidth === 0) {\n type = 1;\n }\n for (let j = 0; j < offsetFieldWidth; ++j) {\n const offsetByte = stream.getByte();\n if (offsetByte === -1) {\n throw new _util.FormatError(\"Invalid XRef byteWidths 'offset'.\");\n }\n offset = offset << 8 | offsetByte;\n }\n for (let j = 0; j < generationFieldWidth; ++j) {\n const generationByte = stream.getByte();\n if (generationByte === -1) {\n throw new _util.FormatError(\"Invalid XRef byteWidths 'generation'.\");\n }\n generation = generation << 8 | generationByte;\n }\n const entry = {};\n entry.offset = offset;\n entry.gen = generation;\n switch (type) {\n case 0:\n entry.free = true;\n break;\n case 1:\n entry.uncompressed = true;\n break;\n case 2:\n break;\n default:\n throw new _util.FormatError(`Invalid XRef entry type: ${type}`);\n }\n if (!this.entries[first + i]) {\n this.entries[first + i] = entry;\n }\n }\n streamState.entryNum = 0;\n streamState.streamPos = stream.pos;\n entryRanges.splice(0, 2);\n }\n }\n indexObjects() {\n const TAB = 0x9,\n LF = 0xa,\n CR = 0xd,\n SPACE = 0x20;\n const PERCENT = 0x25,\n LT = 0x3c;\n function readToken(data, offset) {\n let token = \"\",\n ch = data[offset];\n while (ch !== LF && ch !== CR && ch !== LT) {\n if (++offset >= data.length) {\n break;\n }\n token += String.fromCharCode(ch);\n ch = data[offset];\n }\n return token;\n }\n function skipUntil(data, offset, what) {\n const length = what.length,\n dataLength = data.length;\n let skipped = 0;\n while (offset < dataLength) {\n let i = 0;\n while (i < length && data[offset + i] === what[i]) {\n ++i;\n }\n if (i >= length) {\n break;\n }\n offset++;\n skipped++;\n }\n return skipped;\n }\n const gEndobjRegExp = /\\b(endobj|\\d+\\s+\\d+\\s+obj|xref|trailer\\s*<<)\\b/g;\n const gStartxrefRegExp = /\\b(startxref|\\d+\\s+\\d+\\s+obj)\\b/g;\n const objRegExp = /^(\\d+)\\s+(\\d+)\\s+obj\\b/;\n const trailerBytes = new Uint8Array([116, 114, 97, 105, 108, 101, 114]);\n const startxrefBytes = new Uint8Array([115, 116, 97, 114, 116, 120, 114, 101, 102]);\n const xrefBytes = new Uint8Array([47, 88, 82, 101, 102]);\n this.entries.length = 0;\n this._cacheMap.clear();\n const stream = this.stream;\n stream.pos = 0;\n const buffer = stream.getBytes(),\n bufferStr = (0, _util.bytesToString)(buffer),\n length = buffer.length;\n let position = stream.start;\n const trailers = [],\n xrefStms = [];\n while (position < length) {\n let ch = buffer[position];\n if (ch === TAB || ch === LF || ch === CR || ch === SPACE) {\n ++position;\n continue;\n }\n if (ch === PERCENT) {\n do {\n ++position;\n if (position >= length) {\n break;\n }\n ch = buffer[position];\n } while (ch !== LF && ch !== CR);\n continue;\n }\n const token = readToken(buffer, position);\n let m;\n if (token.startsWith(\"xref\") && (token.length === 4 || /\\s/.test(token[4]))) {\n position += skipUntil(buffer, position, trailerBytes);\n trailers.push(position);\n position += skipUntil(buffer, position, startxrefBytes);\n } else if (m = objRegExp.exec(token)) {\n const num = m[1] | 0,\n gen = m[2] | 0;\n const startPos = position + token.length;\n let contentLength,\n updateEntries = false;\n if (!this.entries[num]) {\n updateEntries = true;\n } else if (this.entries[num].gen === gen) {\n try {\n const parser = new _parser.Parser({\n lexer: new _parser.Lexer(stream.makeSubStream(startPos))\n });\n parser.getObj();\n updateEntries = true;\n } catch (ex) {\n if (ex instanceof _core_utils.ParserEOFException) {\n (0, _util.warn)(`indexObjects -- checking object (${token}): \"${ex}\".`);\n } else {\n updateEntries = true;\n }\n }\n }\n if (updateEntries) {\n this.entries[num] = {\n offset: position - stream.start,\n gen,\n uncompressed: true\n };\n }\n gEndobjRegExp.lastIndex = startPos;\n const match = gEndobjRegExp.exec(bufferStr);\n if (match) {\n const endPos = gEndobjRegExp.lastIndex + 1;\n contentLength = endPos - position;\n if (match[1] !== \"endobj\") {\n (0, _util.warn)(`indexObjects: Found \"${match[1]}\" inside of another \"obj\", ` + 'caused by missing \"endobj\" -- trying to recover.');\n contentLength -= match[1].length + 1;\n }\n } else {\n contentLength = length - position;\n }\n const content = buffer.subarray(position, position + contentLength);\n const xrefTagOffset = skipUntil(content, 0, xrefBytes);\n if (xrefTagOffset < contentLength && content[xrefTagOffset + 5] < 64) {\n xrefStms.push(position - stream.start);\n this._xrefStms.add(position - stream.start);\n }\n position += contentLength;\n } else if (token.startsWith(\"trailer\") && (token.length === 7 || /\\s/.test(token[7]))) {\n trailers.push(position);\n const startPos = position + token.length;\n let contentLength;\n gStartxrefRegExp.lastIndex = startPos;\n const match = gStartxrefRegExp.exec(bufferStr);\n if (match) {\n const endPos = gStartxrefRegExp.lastIndex + 1;\n contentLength = endPos - position;\n if (match[1] !== \"startxref\") {\n (0, _util.warn)(`indexObjects: Found \"${match[1]}\" after \"trailer\", ` + 'caused by missing \"startxref\" -- trying to recover.');\n contentLength -= match[1].length + 1;\n }\n } else {\n contentLength = length - position;\n }\n position += contentLength;\n } else {\n position += token.length + 1;\n }\n }\n for (const xrefStm of xrefStms) {\n this.startXRefQueue.push(xrefStm);\n this.readXRef(true);\n }\n const trailerDicts = [];\n let isEncrypted = false;\n for (const trailer of trailers) {\n stream.pos = trailer;\n const parser = new _parser.Parser({\n lexer: new _parser.Lexer(stream),\n xref: this,\n allowStreams: true,\n recoveryMode: true\n });\n const obj = parser.getObj();\n if (!(0, _primitives.isCmd)(obj, \"trailer\")) {\n continue;\n }\n const dict = parser.getObj();\n if (!(dict instanceof _primitives.Dict)) {\n continue;\n }\n trailerDicts.push(dict);\n if (dict.has(\"Encrypt\")) {\n isEncrypted = true;\n }\n }\n let trailerDict, trailerError;\n for (const dict of [...trailerDicts, \"genFallback\", ...trailerDicts]) {\n if (dict === \"genFallback\") {\n if (!trailerError) {\n break;\n }\n this._generationFallback = true;\n continue;\n }\n let validPagesDict = false;\n try {\n const rootDict = dict.get(\"Root\");\n if (!(rootDict instanceof _primitives.Dict)) {\n continue;\n }\n const pagesDict = rootDict.get(\"Pages\");\n if (!(pagesDict instanceof _primitives.Dict)) {\n continue;\n }\n const pagesCount = pagesDict.get(\"Count\");\n if (Number.isInteger(pagesCount)) {\n validPagesDict = true;\n }\n } catch (ex) {\n trailerError = ex;\n continue;\n }\n if (validPagesDict && (!isEncrypted || dict.has(\"Encrypt\")) && dict.has(\"ID\")) {\n return dict;\n }\n trailerDict = dict;\n }\n if (trailerDict) {\n return trailerDict;\n }\n if (this.topDict) {\n return this.topDict;\n }\n throw new _util.InvalidPDFException(\"Invalid PDF structure.\");\n }\n readXRef(recoveryMode = false) {\n const stream = this.stream;\n const startXRefParsedCache = new Set();\n while (this.startXRefQueue.length) {\n try {\n const startXRef = this.startXRefQueue[0];\n if (startXRefParsedCache.has(startXRef)) {\n (0, _util.warn)(\"readXRef - skipping XRef table since it was already parsed.\");\n this.startXRefQueue.shift();\n continue;\n }\n startXRefParsedCache.add(startXRef);\n stream.pos = startXRef + stream.start;\n const parser = new _parser.Parser({\n lexer: new _parser.Lexer(stream),\n xref: this,\n allowStreams: true\n });\n let obj = parser.getObj();\n let dict;\n if ((0, _primitives.isCmd)(obj, \"xref\")) {\n dict = this.processXRefTable(parser);\n if (!this.topDict) {\n this.topDict = dict;\n }\n obj = dict.get(\"XRefStm\");\n if (Number.isInteger(obj) && !this._xrefStms.has(obj)) {\n this._xrefStms.add(obj);\n this.startXRefQueue.push(obj);\n this.#firstXRefStmPos ??= obj;\n }\n } else if (Number.isInteger(obj)) {\n if (!Number.isInteger(parser.getObj()) || !(0, _primitives.isCmd)(parser.getObj(), \"obj\") || !((obj = parser.getObj()) instanceof _base_stream.BaseStream)) {\n throw new _util.FormatError(\"Invalid XRef stream\");\n }\n dict = this.processXRefStream(obj);\n if (!this.topDict) {\n this.topDict = dict;\n }\n if (!dict) {\n throw new _util.FormatError(\"Failed to read XRef stream\");\n }\n } else {\n throw new _util.FormatError(\"Invalid XRef stream header\");\n }\n obj = dict.get(\"Prev\");\n if (Number.isInteger(obj)) {\n this.startXRefQueue.push(obj);\n } else if (obj instanceof _primitives.Ref) {\n this.startXRefQueue.push(obj.num);\n }\n } catch (e) {\n if (e instanceof _core_utils.MissingDataException) {\n throw e;\n }\n (0, _util.info)(\"(while reading XRef): \" + e);\n }\n this.startXRefQueue.shift();\n }\n if (this.topDict) {\n return this.topDict;\n }\n if (recoveryMode) {\n return undefined;\n }\n throw new _core_utils.XRefParseException();\n }\n get lastXRefStreamPos() {\n return this.#firstXRefStmPos ?? (this._xrefStms.size > 0 ? Math.max(...this._xrefStms) : null);\n }\n getEntry(i) {\n const xrefEntry = this.entries[i];\n if (xrefEntry && !xrefEntry.free && xrefEntry.offset) {\n return xrefEntry;\n }\n return null;\n }\n fetchIfRef(obj, suppressEncryption = false) {\n if (obj instanceof _primitives.Ref) {\n return this.fetch(obj, suppressEncryption);\n }\n return obj;\n }\n fetch(ref, suppressEncryption = false) {\n if (!(ref instanceof _primitives.Ref)) {\n throw new Error(\"ref object is not a reference\");\n }\n const num = ref.num;\n const cacheEntry = this._cacheMap.get(num);\n if (cacheEntry !== undefined) {\n if (cacheEntry instanceof _primitives.Dict && !cacheEntry.objId) {\n cacheEntry.objId = ref.toString();\n }\n return cacheEntry;\n }\n let xrefEntry = this.getEntry(num);\n if (xrefEntry === null) {\n this._cacheMap.set(num, xrefEntry);\n return xrefEntry;\n }\n if (this._pendingRefs.has(ref)) {\n this._pendingRefs.remove(ref);\n (0, _util.warn)(`Ignoring circular reference: ${ref}.`);\n return _primitives.CIRCULAR_REF;\n }\n this._pendingRefs.put(ref);\n try {\n xrefEntry = xrefEntry.uncompressed ? this.fetchUncompressed(ref, xrefEntry, suppressEncryption) : this.fetchCompressed(ref, xrefEntry, suppressEncryption);\n this._pendingRefs.remove(ref);\n } catch (ex) {\n this._pendingRefs.remove(ref);\n throw ex;\n }\n if (xrefEntry instanceof _primitives.Dict) {\n xrefEntry.objId = ref.toString();\n } else if (xrefEntry instanceof _base_stream.BaseStream) {\n xrefEntry.dict.objId = ref.toString();\n }\n return xrefEntry;\n }\n fetchUncompressed(ref, xrefEntry, suppressEncryption = false) {\n const gen = ref.gen;\n let num = ref.num;\n if (xrefEntry.gen !== gen) {\n const msg = `Inconsistent generation in XRef: ${ref}`;\n if (this._generationFallback && xrefEntry.gen < gen) {\n (0, _util.warn)(msg);\n return this.fetchUncompressed(_primitives.Ref.get(num, xrefEntry.gen), xrefEntry, suppressEncryption);\n }\n throw new _core_utils.XRefEntryException(msg);\n }\n const stream = this.stream.makeSubStream(xrefEntry.offset + this.stream.start);\n const parser = new _parser.Parser({\n lexer: new _parser.Lexer(stream),\n xref: this,\n allowStreams: true\n });\n const obj1 = parser.getObj();\n const obj2 = parser.getObj();\n const obj3 = parser.getObj();\n if (obj1 !== num || obj2 !== gen || !(obj3 instanceof _primitives.Cmd)) {\n throw new _core_utils.XRefEntryException(`Bad (uncompressed) XRef entry: ${ref}`);\n }\n if (obj3.cmd !== \"obj\") {\n if (obj3.cmd.startsWith(\"obj\")) {\n num = parseInt(obj3.cmd.substring(3), 10);\n if (!Number.isNaN(num)) {\n return num;\n }\n }\n throw new _core_utils.XRefEntryException(`Bad (uncompressed) XRef entry: ${ref}`);\n }\n xrefEntry = this.encrypt && !suppressEncryption ? parser.getObj(this.encrypt.createCipherTransform(num, gen)) : parser.getObj();\n if (!(xrefEntry instanceof _base_stream.BaseStream)) {\n this._cacheMap.set(num, xrefEntry);\n }\n return xrefEntry;\n }\n fetchCompressed(ref, xrefEntry, suppressEncryption = false) {\n const tableOffset = xrefEntry.offset;\n const stream = this.fetch(_primitives.Ref.get(tableOffset, 0));\n if (!(stream instanceof _base_stream.BaseStream)) {\n throw new _util.FormatError(\"bad ObjStm stream\");\n }\n const first = stream.dict.get(\"First\");\n const n = stream.dict.get(\"N\");\n if (!Number.isInteger(first) || !Number.isInteger(n)) {\n throw new _util.FormatError(\"invalid first and n parameters for ObjStm stream\");\n }\n let parser = new _parser.Parser({\n lexer: new _parser.Lexer(stream),\n xref: this,\n allowStreams: true\n });\n const nums = new Array(n);\n const offsets = new Array(n);\n for (let i = 0; i < n; ++i) {\n const num = parser.getObj();\n if (!Number.isInteger(num)) {\n throw new _util.FormatError(`invalid object number in the ObjStm stream: ${num}`);\n }\n const offset = parser.getObj();\n if (!Number.isInteger(offset)) {\n throw new _util.FormatError(`invalid object offset in the ObjStm stream: ${offset}`);\n }\n nums[i] = num;\n offsets[i] = offset;\n }\n const start = (stream.start || 0) + first;\n const entries = new Array(n);\n for (let i = 0; i < n; ++i) {\n const length = i < n - 1 ? offsets[i + 1] - offsets[i] : undefined;\n if (length < 0) {\n throw new _util.FormatError(\"Invalid offset in the ObjStm stream.\");\n }\n parser = new _parser.Parser({\n lexer: new _parser.Lexer(stream.makeSubStream(start + offsets[i], length, stream.dict)),\n xref: this,\n allowStreams: true\n });\n const obj = parser.getObj();\n entries[i] = obj;\n if (obj instanceof _base_stream.BaseStream) {\n continue;\n }\n const num = nums[i],\n entry = this.entries[num];\n if (entry && entry.offset === tableOffset && entry.gen === i) {\n this._cacheMap.set(num, obj);\n }\n }\n xrefEntry = entries[xrefEntry.gen];\n if (xrefEntry === undefined) {\n throw new _core_utils.XRefEntryException(`Bad (compressed) XRef entry: ${ref}`);\n }\n return xrefEntry;\n }\n async fetchIfRefAsync(obj, suppressEncryption) {\n if (obj instanceof _primitives.Ref) {\n return this.fetchAsync(obj, suppressEncryption);\n }\n return obj;\n }\n async fetchAsync(ref, suppressEncryption) {\n try {\n return this.fetch(ref, suppressEncryption);\n } catch (ex) {\n if (!(ex instanceof _core_utils.MissingDataException)) {\n throw ex;\n }\n await this.pdfManager.requestRange(ex.begin, ex.end);\n return this.fetchAsync(ref, suppressEncryption);\n }\n }\n getCatalogObj() {\n return this.root;\n }\n}\nexports.XRef = XRef;\n\n/***/ }),\n/* 104 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.MessageHandler = void 0;\nvar _util = __w_pdfjs_require__(2);\nconst CallbackKind = {\n UNKNOWN: 0,\n DATA: 1,\n ERROR: 2\n};\nconst StreamKind = {\n UNKNOWN: 0,\n CANCEL: 1,\n CANCEL_COMPLETE: 2,\n CLOSE: 3,\n ENQUEUE: 4,\n ERROR: 5,\n PULL: 6,\n PULL_COMPLETE: 7,\n START_COMPLETE: 8\n};\nfunction wrapReason(reason) {\n if (!(reason instanceof Error || typeof reason === \"object\" && reason !== null)) {\n (0, _util.unreachable)('wrapReason: Expected \"reason\" to be a (possibly cloned) Error.');\n }\n switch (reason.name) {\n case \"AbortException\":\n return new _util.AbortException(reason.message);\n case \"MissingPDFException\":\n return new _util.MissingPDFException(reason.message);\n case \"PasswordException\":\n return new _util.PasswordException(reason.message, reason.code);\n case \"UnexpectedResponseException\":\n return new _util.UnexpectedResponseException(reason.message, reason.status);\n case \"UnknownErrorException\":\n return new _util.UnknownErrorException(reason.message, reason.details);\n default:\n return new _util.UnknownErrorException(reason.message, reason.toString());\n }\n}\nclass MessageHandler {\n constructor(sourceName, targetName, comObj) {\n this.sourceName = sourceName;\n this.targetName = targetName;\n this.comObj = comObj;\n this.callbackId = 1;\n this.streamId = 1;\n this.streamSinks = Object.create(null);\n this.streamControllers = Object.create(null);\n this.callbackCapabilities = Object.create(null);\n this.actionHandler = Object.create(null);\n this._onComObjOnMessage = event => {\n const data = event.data;\n if (data.targetName !== this.sourceName) {\n return;\n }\n if (data.stream) {\n this.#processStreamMessage(data);\n return;\n }\n if (data.callback) {\n const callbackId = data.callbackId;\n const capability = this.callbackCapabilities[callbackId];\n if (!capability) {\n throw new Error(`Cannot resolve callback ${callbackId}`);\n }\n delete this.callbackCapabilities[callbackId];\n if (data.callback === CallbackKind.DATA) {\n capability.resolve(data.data);\n } else if (data.callback === CallbackKind.ERROR) {\n capability.reject(wrapReason(data.reason));\n } else {\n throw new Error(\"Unexpected callback case\");\n }\n return;\n }\n const action = this.actionHandler[data.action];\n if (!action) {\n throw new Error(`Unknown action from worker: ${data.action}`);\n }\n if (data.callbackId) {\n const cbSourceName = this.sourceName;\n const cbTargetName = data.sourceName;\n new Promise(function (resolve) {\n resolve(action(data.data));\n }).then(function (result) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.DATA,\n callbackId: data.callbackId,\n data: result\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.ERROR,\n callbackId: data.callbackId,\n reason: wrapReason(reason)\n });\n });\n return;\n }\n if (data.streamId) {\n this.#createStreamSink(data);\n return;\n }\n action(data.data);\n };\n comObj.addEventListener(\"message\", this._onComObjOnMessage);\n }\n on(actionName, handler) {\n const ah = this.actionHandler;\n if (ah[actionName]) {\n throw new Error(`There is already an actionName called \"${actionName}\"`);\n }\n ah[actionName] = handler;\n }\n send(actionName, data, transfers) {\n this.comObj.postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n data\n }, transfers);\n }\n sendWithPromise(actionName, data, transfers) {\n const callbackId = this.callbackId++;\n const capability = new _util.PromiseCapability();\n this.callbackCapabilities[callbackId] = capability;\n try {\n this.comObj.postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n callbackId,\n data\n }, transfers);\n } catch (ex) {\n capability.reject(ex);\n }\n return capability.promise;\n }\n sendWithStream(actionName, data, queueingStrategy, transfers) {\n const streamId = this.streamId++,\n sourceName = this.sourceName,\n targetName = this.targetName,\n comObj = this.comObj;\n return new ReadableStream({\n start: controller => {\n const startCapability = new _util.PromiseCapability();\n this.streamControllers[streamId] = {\n controller,\n startCall: startCapability,\n pullCall: null,\n cancelCall: null,\n isClosed: false\n };\n comObj.postMessage({\n sourceName,\n targetName,\n action: actionName,\n streamId,\n data,\n desiredSize: controller.desiredSize\n }, transfers);\n return startCapability.promise;\n },\n pull: controller => {\n const pullCapability = new _util.PromiseCapability();\n this.streamControllers[streamId].pullCall = pullCapability;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL,\n streamId,\n desiredSize: controller.desiredSize\n });\n return pullCapability.promise;\n },\n cancel: reason => {\n (0, _util.assert)(reason instanceof Error, \"cancel must have a valid reason\");\n const cancelCapability = new _util.PromiseCapability();\n this.streamControllers[streamId].cancelCall = cancelCapability;\n this.streamControllers[streamId].isClosed = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL,\n streamId,\n reason: wrapReason(reason)\n });\n return cancelCapability.promise;\n }\n }, queueingStrategy);\n }\n #createStreamSink(data) {\n const streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n const self = this,\n action = this.actionHandler[data.action];\n const streamSink = {\n enqueue(chunk, size = 1, transfers) {\n if (this.isCancelled) {\n return;\n }\n const lastDesiredSize = this.desiredSize;\n this.desiredSize -= size;\n if (lastDesiredSize > 0 && this.desiredSize <= 0) {\n this.sinkCapability = new _util.PromiseCapability();\n this.ready = this.sinkCapability.promise;\n }\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.ENQUEUE,\n streamId,\n chunk\n }, transfers);\n },\n close() {\n if (this.isCancelled) {\n return;\n }\n this.isCancelled = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CLOSE,\n streamId\n });\n delete self.streamSinks[streamId];\n },\n error(reason) {\n (0, _util.assert)(reason instanceof Error, \"error must have a valid reason\");\n if (this.isCancelled) {\n return;\n }\n this.isCancelled = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.ERROR,\n streamId,\n reason: wrapReason(reason)\n });\n },\n sinkCapability: new _util.PromiseCapability(),\n onPull: null,\n onCancel: null,\n isCancelled: false,\n desiredSize: data.desiredSize,\n ready: null\n };\n streamSink.sinkCapability.resolve();\n streamSink.ready = streamSink.sinkCapability.promise;\n this.streamSinks[streamId] = streamSink;\n new Promise(function (resolve) {\n resolve(action(data.data, streamSink));\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.START_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.START_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n }\n #processStreamMessage(data) {\n const streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n const streamController = this.streamControllers[streamId],\n streamSink = this.streamSinks[streamId];\n switch (data.stream) {\n case StreamKind.START_COMPLETE:\n if (data.success) {\n streamController.startCall.resolve();\n } else {\n streamController.startCall.reject(wrapReason(data.reason));\n }\n break;\n case StreamKind.PULL_COMPLETE:\n if (data.success) {\n streamController.pullCall.resolve();\n } else {\n streamController.pullCall.reject(wrapReason(data.reason));\n }\n break;\n case StreamKind.PULL:\n if (!streamSink) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n success: true\n });\n break;\n }\n if (streamSink.desiredSize <= 0 && data.desiredSize > 0) {\n streamSink.sinkCapability.resolve();\n }\n streamSink.desiredSize = data.desiredSize;\n new Promise(function (resolve) {\n resolve(streamSink.onPull?.());\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n break;\n case StreamKind.ENQUEUE:\n (0, _util.assert)(streamController, \"enqueue should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.controller.enqueue(data.chunk);\n break;\n case StreamKind.CLOSE:\n (0, _util.assert)(streamController, \"close should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.isClosed = true;\n streamController.controller.close();\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.ERROR:\n (0, _util.assert)(streamController, \"error should have stream controller\");\n streamController.controller.error(wrapReason(data.reason));\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL_COMPLETE:\n if (data.success) {\n streamController.cancelCall.resolve();\n } else {\n streamController.cancelCall.reject(wrapReason(data.reason));\n }\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL:\n if (!streamSink) {\n break;\n }\n new Promise(function (resolve) {\n resolve(streamSink.onCancel?.(wrapReason(data.reason)));\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n streamSink.sinkCapability.reject(wrapReason(data.reason));\n streamSink.isCancelled = true;\n delete this.streamSinks[streamId];\n break;\n default:\n throw new Error(\"Unexpected stream case\");\n }\n }\n async #deleteStreamController(streamController, streamId) {\n await Promise.allSettled([streamController.startCall?.promise, streamController.pullCall?.promise, streamController.cancelCall?.promise]);\n delete this.streamControllers[streamId];\n }\n destroy() {\n this.comObj.removeEventListener(\"message\", this._onComObjOnMessage);\n }\n}\nexports.MessageHandler = MessageHandler;\n\n/***/ }),\n/* 105 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFWorkerStream = void 0;\nvar _util = __w_pdfjs_require__(2);\nclass PDFWorkerStream {\n constructor(msgHandler) {\n this._msgHandler = msgHandler;\n this._contentLength = null;\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFWorkerStream.getFullReader can only be called once.\");\n this._fullRequestReader = new PDFWorkerStreamReader(this._msgHandler);\n return this._fullRequestReader;\n }\n getRangeReader(begin, end) {\n const reader = new PDFWorkerStreamRangeReader(begin, end, this._msgHandler);\n this._rangeRequestReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nexports.PDFWorkerStream = PDFWorkerStream;\nclass PDFWorkerStreamReader {\n constructor(msgHandler) {\n this._msgHandler = msgHandler;\n this.onProgress = null;\n this._contentLength = null;\n this._isRangeSupported = false;\n this._isStreamingSupported = false;\n const readableStream = this._msgHandler.sendWithStream(\"GetReader\");\n this._reader = readableStream.getReader();\n this._headersReady = this._msgHandler.sendWithPromise(\"ReaderHeadersReady\").then(data => {\n this._isStreamingSupported = data.isStreamingSupported;\n this._isRangeSupported = data.isRangeSupported;\n this._contentLength = data.contentLength;\n });\n }\n get headersReady() {\n return this._headersReady;\n }\n get contentLength() {\n return this._contentLength;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n async read() {\n const {\n value,\n done\n } = await this._reader.read();\n if (done) {\n return {\n value: undefined,\n done: true\n };\n }\n return {\n value: value.buffer,\n done: false\n };\n }\n cancel(reason) {\n this._reader.cancel(reason);\n }\n}\nclass PDFWorkerStreamRangeReader {\n constructor(begin, end, msgHandler) {\n this._msgHandler = msgHandler;\n this.onProgress = null;\n const readableStream = this._msgHandler.sendWithStream(\"GetRangeReader\", {\n begin,\n end\n });\n this._reader = readableStream.getReader();\n }\n get isStreamingSupported() {\n return false;\n }\n async read() {\n const {\n value,\n done\n } = await this._reader.read();\n if (done) {\n return {\n value: undefined,\n done: true\n };\n }\n return {\n value: value.buffer,\n done: false\n };\n }\n cancel(reason) {\n this._reader.cancel(reason);\n }\n}\n\n/***/ })\n/******/ \t]);\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __w_pdfjs_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __w_pdfjs_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n(() => {\nvar exports = __webpack_exports__;\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"WorkerMessageHandler\", ({\n enumerable: true,\n get: function () {\n return _worker.WorkerMessageHandler;\n }\n}));\nvar _worker = __w_pdfjs_require__(1);\nconst pdfjsVersion = '3.11.174';\nconst pdfjsBuild = 'ce8716743';\n})();\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=pdf.worker.js.map","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * @license React\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),ca=require(\"scheduler\");function p(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;cb}return!1}function v(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var z={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){z[a]=new v(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];z[b]=new v(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){z[a]=new v(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){z[a]=new v(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){z[a]=new v(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){z[a]=new v(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){z[a]=new v(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){z[a]=new v(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){z[a]=new v(a,5,!1,a.toLowerCase(),null,!1,!1)});var ra=/[\\-:]([a-z])/g;function sa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(ra,\nsa);z[b]=new v(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!1,!1)});\nz.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction ta(a,b,c,d){var e=z.hasOwnProperty(b)?z[b]:null;if(null!==e?0!==e.type:d||!(2h||e[g]!==f[h]){var k=\"\\n\"+e[g].replace(\" at new \",\" at \");a.displayName&&k.includes(\"\")&&(k=k.replace(\"\",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{Na=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Ma(a):\"\"}\nfunction Pa(a){switch(a.tag){case 5:return Ma(a.type);case 16:return Ma(\"Lazy\");case 13:return Ma(\"Suspense\");case 19:return Ma(\"SuspenseList\");case 0:case 2:case 15:return a=Oa(a.type,!1),a;case 11:return a=Oa(a.type.render,!1),a;case 1:return a=Oa(a.type,!0),a;default:return\"\"}}\nfunction Qa(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ya:return\"Fragment\";case wa:return\"Portal\";case Aa:return\"Profiler\";case za:return\"StrictMode\";case Ea:return\"Suspense\";case Fa:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case Ca:return(a.displayName||\"Context\")+\".Consumer\";case Ba:return(a._context.displayName||\"Context\")+\".Provider\";case Da:var b=a.render;a=a.displayName;a||(a=b.displayName||\nb.name||\"\",a=\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");return a;case Ga:return b=a.displayName||null,null!==b?b:Qa(a.type)||\"Memo\";case Ha:b=a._payload;a=a._init;try{return Qa(a(b))}catch(c){}}return null}\nfunction Ra(a){var b=a.type;switch(a.tag){case 24:return\"Cache\";case 9:return(b.displayName||\"Context\")+\".Consumer\";case 10:return(b._context.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return a=b.render,a=a.displayName||a.name||\"\",b.displayName||(\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 5:return b;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return Qa(b);case 8:return b===za?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";\ncase 12:return\"Profiler\";case 21:return\"Scope\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 25:return\"TracingMarker\";case 1:case 0:case 17:case 2:case 14:case 15:if(\"function\"===typeof b)return b.displayName||b.name||null;if(\"string\"===typeof b)return b}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"string\":case \"undefined\":return a;case \"object\":return a;default:return\"\"}}\nfunction Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return A({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function ab(a,b){b=b.checked;null!=b&&ta(a,\"checked\",b,!1)}\nfunction bb(a,b){ab(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?cb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&cb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction db(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction cb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}var eb=Array.isArray;\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e\"+b.valueOf().toString()+\"\";for(b=mb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction ob(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar pb={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,\nzoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(pb).forEach(function(a){qb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);pb[b]=pb[a]})});function rb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||pb.hasOwnProperty(a)&&pb[a]?(\"\"+b).trim():b+\"px\"}\nfunction sb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=rb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var tb=A({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction ub(a,b){if(b){if(tb[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(p(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(p(60));if(\"object\"!==typeof b.dangerouslySetInnerHTML||!(\"__html\"in b.dangerouslySetInnerHTML))throw Error(p(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(p(62));}}\nfunction vb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}var wb=null;function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(p(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a>>=0;return 0===a?32:31-(pc(a)/qc|0)|0}var rc=64,sc=4194304;\nfunction tc(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;\ndefault:return a}}function uc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=tc(h):(f&=g,0!==f&&(d=tc(f)))}else g=c&~e,0!==g?d=tc(g):0!==f&&(d=tc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0c;c++)b.push(a);return b}\nfunction Ac(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-oc(b);a[b]=c}function Bc(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;0=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Je(c)}}function Le(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Le(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Me(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Ne(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nfunction Oe(a){var b=Me(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Le(c.ownerDocument.documentElement,c)){if(null!==d&&Ne(c))if(b=d.start,a=d.end,void 0===a&&(a=b),\"selectionStart\"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Ke(c,f);var g=Ke(c,\nd);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});\"function\"===typeof c.focus&&c.focus();for(c=0;c=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Ne(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Ie(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0Tf||(a.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(a,b){Tf++;Sf[Tf]=a.current;a.current=b}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(a,b){var c=a.type.contextTypes;if(!c)return Vf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}\nfunction Zf(a){a=a.childContextTypes;return null!==a&&void 0!==a}function $f(){E(Wf);E(H)}function ag(a,b,c){if(H.current!==Vf)throw Error(p(168));G(H,b);G(Wf,c)}function bg(a,b,c){var d=a.stateNode;b=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(p(108,Ra(a)||\"Unknown\",e));return A({},c,d)}\nfunction cg(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Vf;Xf=H.current;G(H,a);G(Wf,Wf.current);return!0}function dg(a,b,c){var d=a.stateNode;if(!d)throw Error(p(169));c?(a=bg(a,b,Xf),d.__reactInternalMemoizedMergedChildContext=a,E(Wf),E(H),G(H,a)):E(Wf);G(Wf,c)}var eg=null,fg=!1,gg=!1;function hg(a){null===eg?eg=[a]:eg.push(a)}function ig(a){fg=!0;hg(a)}\nfunction jg(){if(!gg&&null!==eg){gg=!0;var a=0,b=C;try{var c=eg;for(C=1;a>=g;e-=g;rg=1<<32-oc(b)+e|c<w?(x=u,u=null):x=u.sibling;var n=r(e,u,h[w],k);if(null===n){null===u&&(u=x);break}a&&u&&null===n.alternate&&b(e,u);g=f(n,g,w);null===m?l=n:m.sibling=n;m=n;u=x}if(w===h.length)return c(e,u),I&&tg(e,w),l;if(null===u){for(;ww?(x=m,m=null):x=m.sibling;var t=r(e,m,n.value,k);if(null===t){null===m&&(m=x);break}a&&m&&null===t.alternate&&b(e,m);g=f(t,g,w);null===u?l=t:u.sibling=t;u=t;m=x}if(n.done)return c(e,\nm),I&&tg(e,w),l;if(null===m){for(;!n.done;w++,n=h.next())n=q(e,n.value,k),null!==n&&(g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);I&&tg(e,w);return l}for(m=d(e,m);!n.done;w++,n=h.next())n=y(m,e,w,n.value,k),null!==n&&(a&&null!==n.alternate&&m.delete(null===n.key?w:n.key),g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);a&&m.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function J(a,d,f,h){\"object\"===typeof f&&null!==f&&f.type===ya&&null===f.key&&(f=f.props.children);if(\"object\"===typeof f&&null!==f){switch(f.$$typeof){case va:a:{for(var k=\nf.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===ya){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||\"object\"===typeof k&&null!==k&&k.$$typeof===Ha&&uh(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=sh(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===ya?(d=Ah(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=yh(f.type,f.key,f.props,null,a.mode,h),h.ref=sh(a,d,f),h.return=a,a=h)}return g(a);case wa:a:{for(l=f.key;null!==\nd;){if(d.key===l)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=zh(f,a.mode,h);d.return=a;a=d}return g(a);case Ha:return l=f._init,J(a,d,l(f._payload),h)}if(eb(f))return n(a,d,f,h);if(Ka(f))return t(a,d,f,h);th(a,f)}return\"string\"===typeof f&&\"\"!==f||\"number\"===typeof f?(f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):\n(c(a,d),d=xh(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return J}var Bh=vh(!0),Ch=vh(!1),Dh={},Eh=Uf(Dh),Fh=Uf(Dh),Gh=Uf(Dh);function Hh(a){if(a===Dh)throw Error(p(174));return a}function Ih(a,b){G(Gh,b);G(Fh,a);G(Eh,Dh);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:lb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=lb(b,a)}E(Eh);G(Eh,b)}function Jh(){E(Eh);E(Fh);E(Gh)}\nfunction Kh(a){Hh(Gh.current);var b=Hh(Eh.current);var c=lb(b,a.type);b!==c&&(G(Fh,a),G(Eh,c))}function Lh(a){Fh.current===a&&(E(Eh),E(Fh))}var M=Uf(0);\nfunction Mh(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&128))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var Nh=[];\nfunction Oh(){for(var a=0;ac?c:4;a(!0);var d=Qh.transition;Qh.transition={};try{a(!1),b()}finally{C=c,Qh.transition=d}}function Fi(){return di().memoizedState}\nfunction Gi(a,b,c){var d=lh(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(Hi(a))Ii(b,c);else if(c=Yg(a,b,c,d),null!==c){var e=L();mh(c,a,d,e);Ji(c,b,d)}}\nfunction ri(a,b,c){var d=lh(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(Hi(a))Ii(b,e);else{var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(He(h,g)){var k=b.interleaved;null===k?(e.next=e,Xg(b)):(e.next=k.next,k.next=e);b.interleaved=e;return}}catch(l){}finally{}c=Yg(a,b,e,d);null!==c&&(e=L(),mh(c,a,d,e),Ji(c,b,d))}}\nfunction Hi(a){var b=a.alternate;return a===N||null!==b&&b===N}function Ii(a,b){Th=Sh=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function Ji(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nvar ai={readContext:Vg,useCallback:Q,useContext:Q,useEffect:Q,useImperativeHandle:Q,useInsertionEffect:Q,useLayoutEffect:Q,useMemo:Q,useReducer:Q,useRef:Q,useState:Q,useDebugValue:Q,useDeferredValue:Q,useTransition:Q,useMutableSource:Q,useSyncExternalStore:Q,useId:Q,unstable_isNewReconciler:!1},Yh={readContext:Vg,useCallback:function(a,b){ci().memoizedState=[a,void 0===b?null:b];return a},useContext:Vg,useEffect:vi,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return ti(4194308,\n4,yi.bind(null,b,a),c)},useLayoutEffect:function(a,b){return ti(4194308,4,a,b)},useInsertionEffect:function(a,b){return ti(4,2,a,b)},useMemo:function(a,b){var c=ci();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=ci();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=Gi.bind(null,N,a);return[d.memoizedState,a]},useRef:function(a){var b=\nci();a={current:a};return b.memoizedState=a},useState:qi,useDebugValue:Ai,useDeferredValue:function(a){return ci().memoizedState=a},useTransition:function(){var a=qi(!1),b=a[0];a=Ei.bind(null,a[1]);ci().memoizedState=a;return[b,a]},useMutableSource:function(){},useSyncExternalStore:function(a,b,c){var d=N,e=ci();if(I){if(void 0===c)throw Error(p(407));c=c()}else{c=b();if(null===R)throw Error(p(349));0!==(Rh&30)||ni(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;vi(ki.bind(null,d,\nf,a),[a]);d.flags|=2048;li(9,mi.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=ci(),b=R.identifierPrefix;if(I){var c=sg;var d=rg;c=(d&~(1<<32-oc(d)-1)).toString(32)+c;b=\":\"+b+\"R\"+c;c=Uh++;0\\x3c/script>\",a=a.removeChild(a.firstChild)):\n\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[Of]=b;a[Pf]=d;Aj(a,b,!1,!1);b.stateNode=a;a:{g=vb(c,d);switch(c){case \"dialog\":D(\"cancel\",a);D(\"close\",a);e=d;break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;eHj&&(b.flags|=128,d=!0,Ej(f,!1),b.lanes=4194304)}else{if(!d)if(a=Mh(g),null!==a){if(b.flags|=128,d=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Ej(f,!0),null===f.tail&&\"hidden\"===f.tailMode&&!g.alternate&&!I)return S(b),null}else 2*B()-f.renderingStartTime>Hj&&1073741824!==c&&(b.flags|=128,d=!0,Ej(f,!1),b.lanes=4194304);f.isBackwards?(g.sibling=b.child,b.child=g):(c=f.last,null!==c?c.sibling=g:b.child=g,f.last=g)}if(null!==f.tail)return b=f.tail,f.rendering=\nb,f.tail=b.sibling,f.renderingStartTime=B(),b.sibling=null,c=M.current,G(M,d?c&1|2:c&1),b;S(b);return null;case 22:case 23:return Ij(),d=null!==b.memoizedState,null!==a&&null!==a.memoizedState!==d&&(b.flags|=8192),d&&0!==(b.mode&1)?0!==(gj&1073741824)&&(S(b),b.subtreeFlags&6&&(b.flags|=8192)):S(b),null;case 24:return null;case 25:return null}throw Error(p(156,b.tag));}\nfunction Jj(a,b){wg(b);switch(b.tag){case 1:return Zf(b.type)&&$f(),a=b.flags,a&65536?(b.flags=a&-65537|128,b):null;case 3:return Jh(),E(Wf),E(H),Oh(),a=b.flags,0!==(a&65536)&&0===(a&128)?(b.flags=a&-65537|128,b):null;case 5:return Lh(b),null;case 13:E(M);a=b.memoizedState;if(null!==a&&null!==a.dehydrated){if(null===b.alternate)throw Error(p(340));Ig()}a=b.flags;return a&65536?(b.flags=a&-65537|128,b):null;case 19:return E(M),null;case 4:return Jh(),null;case 10:return Rg(b.type._context),null;case 22:case 23:return Ij(),\nnull;case 24:return null;default:return null}}var Kj=!1,U=!1,Lj=\"function\"===typeof WeakSet?WeakSet:Set,V=null;function Mj(a,b){var c=a.ref;if(null!==c)if(\"function\"===typeof c)try{c(null)}catch(d){W(a,b,d)}else c.current=null}function Nj(a,b,c){try{c()}catch(d){W(a,b,d)}}var Oj=!1;\nfunction Pj(a,b){Cf=dd;a=Me();if(Ne(a)){if(\"selectionStart\"in a)var c={start:a.selectionStart,end:a.selectionEnd};else a:{c=(c=a.ownerDocument)&&c.defaultView||window;var d=c.getSelection&&c.getSelection();if(d&&0!==d.rangeCount){c=d.anchorNode;var e=d.anchorOffset,f=d.focusNode;d=d.focusOffset;try{c.nodeType,f.nodeType}catch(F){c=null;break a}var g=0,h=-1,k=-1,l=0,m=0,q=a,r=null;b:for(;;){for(var y;;){q!==c||0!==e&&3!==q.nodeType||(h=g+e);q!==f||0!==d&&3!==q.nodeType||(k=g+d);3===q.nodeType&&(g+=\nq.nodeValue.length);if(null===(y=q.firstChild))break;r=q;q=y}for(;;){if(q===a)break b;r===c&&++l===e&&(h=g);r===f&&++m===d&&(k=g);if(null!==(y=q.nextSibling))break;q=r;r=q.parentNode}q=y}c=-1===h||-1===k?null:{start:h,end:k}}else c=null}c=c||{start:0,end:0}}else c=null;Df={focusedElem:a,selectionRange:c};dd=!1;for(V=b;null!==V;)if(b=V,a=b.child,0!==(b.subtreeFlags&1028)&&null!==a)a.return=b,V=a;else for(;null!==V;){b=V;try{var n=b.alternate;if(0!==(b.flags&1024))switch(b.tag){case 0:case 11:case 15:break;\ncase 1:if(null!==n){var t=n.memoizedProps,J=n.memoizedState,x=b.stateNode,w=x.getSnapshotBeforeUpdate(b.elementType===b.type?t:Lg(b.type,t),J);x.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var u=b.stateNode.containerInfo;1===u.nodeType?u.textContent=\"\":9===u.nodeType&&u.documentElement&&u.removeChild(u.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p(163));}}catch(F){W(b,b.return,F)}a=b.sibling;if(null!==a){a.return=b.return;V=a;break}V=b.return}n=Oj;Oj=!1;return n}\nfunction Qj(a,b,c){var d=b.updateQueue;d=null!==d?d.lastEffect:null;if(null!==d){var e=d=d.next;do{if((e.tag&a)===a){var f=e.destroy;e.destroy=void 0;void 0!==f&&Nj(b,c,f)}e=e.next}while(e!==d)}}function Rj(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}function Sj(a){var b=a.ref;if(null!==b){var c=a.stateNode;switch(a.tag){case 5:a=c;break;default:a=c}\"function\"===typeof b?b(a):b.current=a}}\nfunction Tj(a){var b=a.alternate;null!==b&&(a.alternate=null,Tj(b));a.child=null;a.deletions=null;a.sibling=null;5===a.tag&&(b=a.stateNode,null!==b&&(delete b[Of],delete b[Pf],delete b[of],delete b[Qf],delete b[Rf]));a.stateNode=null;a.return=null;a.dependencies=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.stateNode=null;a.updateQueue=null}function Uj(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction Vj(a){a:for(;;){for(;null===a.sibling;){if(null===a.return||Uj(a.return))return null;a=a.return}a.sibling.return=a.return;for(a=a.sibling;5!==a.tag&&6!==a.tag&&18!==a.tag;){if(a.flags&2)continue a;if(null===a.child||4===a.tag)continue a;else a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}\nfunction Wj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=Bf));else if(4!==d&&(a=a.child,null!==a))for(Wj(a,b,c),a=a.sibling;null!==a;)Wj(a,b,c),a=a.sibling}\nfunction Xj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Xj(a,b,c),a=a.sibling;null!==a;)Xj(a,b,c),a=a.sibling}var X=null,Yj=!1;function Zj(a,b,c){for(c=c.child;null!==c;)ak(a,b,c),c=c.sibling}\nfunction ak(a,b,c){if(lc&&\"function\"===typeof lc.onCommitFiberUnmount)try{lc.onCommitFiberUnmount(kc,c)}catch(h){}switch(c.tag){case 5:U||Mj(c,b);case 6:var d=X,e=Yj;X=null;Zj(a,b,c);X=d;Yj=e;null!==X&&(Yj?(a=X,c=c.stateNode,8===a.nodeType?a.parentNode.removeChild(c):a.removeChild(c)):X.removeChild(c.stateNode));break;case 18:null!==X&&(Yj?(a=X,c=c.stateNode,8===a.nodeType?Kf(a.parentNode,c):1===a.nodeType&&Kf(a,c),bd(a)):Kf(X,c.stateNode));break;case 4:d=X;e=Yj;X=c.stateNode.containerInfo;Yj=!0;\nZj(a,b,c);X=d;Yj=e;break;case 0:case 11:case 14:case 15:if(!U&&(d=c.updateQueue,null!==d&&(d=d.lastEffect,null!==d))){e=d=d.next;do{var f=e,g=f.destroy;f=f.tag;void 0!==g&&(0!==(f&2)?Nj(c,b,g):0!==(f&4)&&Nj(c,b,g));e=e.next}while(e!==d)}Zj(a,b,c);break;case 1:if(!U&&(Mj(c,b),d=c.stateNode,\"function\"===typeof d.componentWillUnmount))try{d.props=c.memoizedProps,d.state=c.memoizedState,d.componentWillUnmount()}catch(h){W(c,b,h)}Zj(a,b,c);break;case 21:Zj(a,b,c);break;case 22:c.mode&1?(U=(d=U)||null!==\nc.memoizedState,Zj(a,b,c),U=d):Zj(a,b,c);break;default:Zj(a,b,c)}}function bk(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Lj);b.forEach(function(b){var d=ck.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction dk(a,b){var c=b.deletions;if(null!==c)for(var d=0;de&&(e=g);d&=~f}d=e;d=B()-d;d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*mk(d/1960))-d;if(10a?16:a;if(null===xk)var d=!1;else{a=xk;xk=null;yk=0;if(0!==(K&6))throw Error(p(331));var e=K;K|=4;for(V=a.current;null!==V;){var f=V,g=f.child;if(0!==(V.flags&16)){var h=f.deletions;if(null!==h){for(var k=0;kB()-gk?Lk(a,0):sk|=c);Ek(a,b)}function Zk(a,b){0===b&&(0===(a.mode&1)?b=1:(b=sc,sc<<=1,0===(sc&130023424)&&(sc=4194304)));var c=L();a=Zg(a,b);null!==a&&(Ac(a,b,c),Ek(a,c))}function vj(a){var b=a.memoizedState,c=0;null!==b&&(c=b.retryLane);Zk(a,c)}\nfunction ck(a,b){var c=0;switch(a.tag){case 13:var d=a.stateNode;var e=a.memoizedState;null!==e&&(c=e.retryLane);break;case 19:d=a.stateNode;break;default:throw Error(p(314));}null!==d&&d.delete(b);Zk(a,c)}var Wk;\nWk=function(a,b,c){if(null!==a)if(a.memoizedProps!==b.pendingProps||Wf.current)Ug=!0;else{if(0===(a.lanes&c)&&0===(b.flags&128))return Ug=!1,zj(a,b,c);Ug=0!==(a.flags&131072)?!0:!1}else Ug=!1,I&&0!==(b.flags&1048576)&&ug(b,ng,b.index);b.lanes=0;switch(b.tag){case 2:var d=b.type;jj(a,b);a=b.pendingProps;var e=Yf(b,H.current);Tg(b,c);e=Xh(null,b,d,a,e,c);var f=bi();b.flags|=1;\"object\"===typeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof?(b.tag=1,b.memoizedState=null,b.updateQueue=\nnull,Zf(d)?(f=!0,cg(b)):f=!1,b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,ah(b),e.updater=nh,b.stateNode=e,e._reactInternals=b,rh(b,d,a,c),b=kj(null,b,d,!0,f,c)):(b.tag=0,I&&f&&vg(b),Yi(null,b,e,c),b=b.child);return b;case 16:d=b.elementType;a:{jj(a,b);a=b.pendingProps;e=d._init;d=e(d._payload);b.type=d;e=b.tag=$k(d);a=Lg(d,a);switch(e){case 0:b=dj(null,b,d,a,c);break a;case 1:b=ij(null,b,d,a,c);break a;case 11:b=Zi(null,b,d,a,c);break a;case 14:b=aj(null,b,d,Lg(d.type,a),c);break a}throw Error(p(306,\nd,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),dj(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),ij(a,b,d,e,c);case 3:a:{lj(b);if(null===a)throw Error(p(387));d=b.pendingProps;f=b.memoizedState;e=f.element;bh(a,b);gh(b,d,null,c);var g=b.memoizedState;d=g.element;if(f.isDehydrated)if(f={element:d,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},b.updateQueue.baseState=\nf,b.memoizedState=f,b.flags&256){e=Ki(Error(p(423)),b);b=mj(a,b,d,c,e);break a}else if(d!==e){e=Ki(Error(p(424)),b);b=mj(a,b,d,c,e);break a}else for(yg=Lf(b.stateNode.containerInfo.firstChild),xg=b,I=!0,zg=null,c=Ch(b,null,d,c),b.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{Ig();if(d===e){b=$i(a,b,c);break a}Yi(a,b,d,c)}b=b.child}return b;case 5:return Kh(b),null===a&&Eg(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,Ef(d,e)?g=null:null!==f&&Ef(d,f)&&(b.flags|=32),\nhj(a,b),Yi(a,b,g,c),b.child;case 6:return null===a&&Eg(b),null;case 13:return pj(a,b,c);case 4:return Ih(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Bh(b,null,d,c):Yi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),Zi(a,b,d,e,c);case 7:return Yi(a,b,b.pendingProps,c),b.child;case 8:return Yi(a,b,b.pendingProps.children,c),b.child;case 12:return Yi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;f=b.memoizedProps;\ng=e.value;G(Mg,d._currentValue);d._currentValue=g;if(null!==f)if(He(f.value,g)){if(f.children===e.children&&!Wf.current){b=$i(a,b,c);break a}}else for(f=b.child,null!==f&&(f.return=b);null!==f;){var h=f.dependencies;if(null!==h){g=f.child;for(var k=h.firstContext;null!==k;){if(k.context===d){if(1===f.tag){k=ch(-1,c&-c);k.tag=2;var l=f.updateQueue;if(null!==l){l=l.shared;var m=l.pending;null===m?k.next=k:(k.next=m.next,m.next=k);l.pending=k}}f.lanes|=c;k=f.alternate;null!==k&&(k.lanes|=c);Sg(f.return,\nc,b);h.lanes|=c;break}k=k.next}}else if(10===f.tag)g=f.type===b.type?null:f.child;else if(18===f.tag){g=f.return;if(null===g)throw Error(p(341));g.lanes|=c;h=g.alternate;null!==h&&(h.lanes|=c);Sg(g,c,b);g=f.sibling}else g=f.child;if(null!==g)g.return=f;else for(g=f;null!==g;){if(g===b){g=null;break}f=g.sibling;if(null!==f){f.return=g.return;g=f;break}g=g.return}f=g}Yi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,d=b.pendingProps.children,Tg(b,c),e=Vg(e),d=d(e),b.flags|=1,Yi(a,b,d,c),\nb.child;case 14:return d=b.type,e=Lg(d,b.pendingProps),e=Lg(d.type,e),aj(a,b,d,e,c);case 15:return cj(a,b,b.type,b.pendingProps,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),jj(a,b),b.tag=1,Zf(d)?(a=!0,cg(b)):a=!1,Tg(b,c),ph(b,d,e),rh(b,d,e,c),kj(null,b,d,!0,a,c);case 19:return yj(a,b,c);case 22:return ej(a,b,c)}throw Error(p(156,b.tag));};function Gk(a,b){return ac(a,b)}\nfunction al(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.subtreeFlags=this.flags=0;this.deletions=null;this.childLanes=this.lanes=0;this.alternate=null}function Bg(a,b,c,d){return new al(a,b,c,d)}function bj(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction $k(a){if(\"function\"===typeof a)return bj(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Da)return 11;if(a===Ga)return 14}return 2}\nfunction wh(a,b){var c=a.alternate;null===c?(c=Bg(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.subtreeFlags=0,c.deletions=null);c.flags=a.flags&14680064;c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction yh(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)bj(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ya:return Ah(c.children,e,f,b);case za:g=8;e|=8;break;case Aa:return a=Bg(12,c,b,e|2),a.elementType=Aa,a.lanes=f,a;case Ea:return a=Bg(13,c,b,e),a.elementType=Ea,a.lanes=f,a;case Fa:return a=Bg(19,c,b,e),a.elementType=Fa,a.lanes=f,a;case Ia:return qj(c,e,f,b);default:if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case Ba:g=10;break a;case Ca:g=9;break a;case Da:g=11;\nbreak a;case Ga:g=14;break a;case Ha:g=16;d=null;break a}throw Error(p(130,null==a?a:typeof a,\"\"));}b=Bg(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Ah(a,b,c,d){a=Bg(7,a,d,b);a.lanes=c;return a}function qj(a,b,c,d){a=Bg(22,a,d,b);a.elementType=Ia;a.lanes=c;a.stateNode={isHidden:!1};return a}function xh(a,b,c){a=Bg(6,a,null,b);a.lanes=c;return a}\nfunction zh(a,b,c){b=Bg(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction bl(a,b,c,d,e){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.callbackNode=this.pendingContext=this.context=null;this.callbackPriority=0;this.eventTimes=zc(0);this.expirationTimes=zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=zc(0);this.identifierPrefix=d;this.onRecoverableError=e;this.mutableSourceEagerHydrationData=\nnull}function cl(a,b,c,d,e,f,g,h,k){a=new bl(a,b,c,h,k);1===b?(b=1,!0===f&&(b|=8)):b=0;f=Bg(3,null,null,b);a.current=f;f.stateNode=a;f.memoizedState={element:d,isDehydrated:c,cache:null,transitions:null,pendingSuspenseBoundaries:null};ah(f);return a}function dl(a,b,c){var d=3= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nvar instances = {}; // Lazily require to not cause bug\n// https://github.com/ctrlplusb/react-sizeme/issues/6\n\nfunction resizeDetector() {\n var strategy = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'scroll';\n\n if (!instances[strategy]) {\n instances[strategy] = createResizeDetector__default['default']({\n strategy: strategy\n });\n }\n\n return instances[strategy];\n}\n\nvar _excluded$1 = [\"explicitRef\", \"className\", \"style\", \"size\", \"disablePlaceholder\", \"onSize\"];\nvar errMsg = 'react-sizeme: an error occurred whilst stopping to listen to node size changes';\nvar defaultConfig = {\n monitorWidth: true,\n monitorHeight: false,\n refreshRate: 16,\n refreshMode: 'throttle',\n noPlaceholder: false,\n resizeDetectorStrategy: 'scroll'\n};\n\nfunction getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n}\n/**\n * This is a utility wrapper component that will allow our higher order\n * component to get a ref handle on our wrapped components html.\n * @see https://gist.github.com/jimfb/32b587ee6177665fb4cf\n */\n\n\nvar ReferenceWrapper = /*#__PURE__*/function (_Component) {\n _inherits(ReferenceWrapper, _Component);\n\n var _super = _createSuper(ReferenceWrapper);\n\n function ReferenceWrapper() {\n _classCallCheck(this, ReferenceWrapper);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(ReferenceWrapper, [{\n key: \"render\",\n value: function render() {\n return React.Children.only(this.props.children);\n }\n }]);\n\n return ReferenceWrapper;\n}(React.Component);\n\n_defineProperty(ReferenceWrapper, \"displayName\", 'SizeMeReferenceWrapper');\n\nfunction Placeholder(_ref) {\n var className = _ref.className,\n style = _ref.style;\n // Lets create the props for the temp element.\n var phProps = {}; // We will use any provided className/style or else make the temp\n // container take the full available space.\n\n if (!className && !style) {\n phProps.style = {\n width: '100%',\n height: '100%'\n };\n } else {\n if (className) {\n phProps.className = className;\n }\n\n if (style) {\n phProps.style = style;\n }\n }\n\n return /*#__PURE__*/React__default['default'].createElement(\"div\", phProps);\n}\n\nPlaceholder.displayName = 'SizeMePlaceholder';\n/**\n * As we need to maintain a ref on the root node that is rendered within our\n * SizeMe component we need to wrap our entire render in a sub component.\n * Without this, we lose the DOM ref after the placeholder is removed from\n * the render and the actual component is rendered.\n * It took me forever to figure this out, so tread extra careful on this one!\n */\n\nvar renderWrapper = function renderWrapper(WrappedComponent) {\n function SizeMeRenderer(props) {\n var explicitRef = props.explicitRef,\n className = props.className,\n style = props.style,\n size = props.size,\n disablePlaceholder = props.disablePlaceholder;\n props.onSize;\n var restProps = _objectWithoutProperties(props, _excluded$1);\n\n var noSizeData = size == null || size.width == null && size.height == null;\n var renderPlaceholder = noSizeData && !disablePlaceholder;\n var renderProps = {\n className: className,\n style: style\n };\n\n if (size != null) {\n renderProps.size = size;\n }\n\n var toRender = renderPlaceholder ? /*#__PURE__*/React__default['default'].createElement(Placeholder, {\n className: className,\n style: style\n }) : /*#__PURE__*/React__default['default'].createElement(WrappedComponent, _extends({}, renderProps, restProps));\n return /*#__PURE__*/React__default['default'].createElement(ReferenceWrapper, {\n ref: explicitRef\n }, toRender);\n }\n\n SizeMeRenderer.displayName = \"SizeMeRenderer(\".concat(getDisplayName(WrappedComponent), \")\");\n return SizeMeRenderer;\n};\n/**\n * :: config -> Component -> WrappedComponent\n *\n * Higher order component that allows the wrapped component to become aware\n * of it's size, by receiving it as an object within it's props.\n *\n * @param monitorWidth\n * Default true, whether changes in the element's width should be monitored,\n * causing a size property to be broadcast.\n * @param monitorHeight\n * Default false, whether changes in the element's height should be monitored,\n * causing a size property to be broadcast.\n *\n * @return The wrapped component.\n */\n\n\nfunction withSize() {\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultConfig;\n var _config$monitorWidth = config.monitorWidth,\n monitorWidth = _config$monitorWidth === void 0 ? defaultConfig.monitorWidth : _config$monitorWidth,\n _config$monitorHeight = config.monitorHeight,\n monitorHeight = _config$monitorHeight === void 0 ? defaultConfig.monitorHeight : _config$monitorHeight,\n _config$refreshRate = config.refreshRate,\n refreshRate = _config$refreshRate === void 0 ? defaultConfig.refreshRate : _config$refreshRate,\n _config$refreshMode = config.refreshMode,\n refreshMode = _config$refreshMode === void 0 ? defaultConfig.refreshMode : _config$refreshMode,\n _config$noPlaceholder = config.noPlaceholder,\n noPlaceholder = _config$noPlaceholder === void 0 ? defaultConfig.noPlaceholder : _config$noPlaceholder,\n _config$resizeDetecto = config.resizeDetectorStrategy,\n resizeDetectorStrategy = _config$resizeDetecto === void 0 ? defaultConfig.resizeDetectorStrategy : _config$resizeDetecto;\n invariant__default['default'](monitorWidth || monitorHeight, 'You have to monitor at least one of the width or height when using \"sizeMe\"');\n invariant__default['default'](refreshRate >= 16, \"It is highly recommended that you don't put your refreshRate lower than \" + '16 as this may cause layout thrashing.');\n invariant__default['default'](refreshMode === 'throttle' || refreshMode === 'debounce', 'The refreshMode should have a value of \"throttle\" or \"debounce\"');\n var refreshDelayStrategy = refreshMode === 'throttle' ? throttleDebounce.throttle : throttleDebounce.debounce;\n return function WrapComponent(WrappedComponent) {\n var SizeMeRenderWrapper = renderWrapper(WrappedComponent);\n\n var SizeAwareComponent = /*#__PURE__*/function (_React$Component) {\n _inherits(SizeAwareComponent, _React$Component);\n\n var _super2 = _createSuper(SizeAwareComponent);\n\n function SizeAwareComponent() {\n var _this;\n\n _classCallCheck(this, SizeAwareComponent);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super2.call.apply(_super2, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"domEl\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n width: undefined,\n height: undefined\n });\n\n _defineProperty(_assertThisInitialized(_this), \"uninstall\", function () {\n if (_this.domEl) {\n try {\n _this.detector.uninstall(_this.domEl);\n } catch (err) {\n // eslint-disable-next-line no-console\n console.warn(errMsg);\n }\n\n _this.domEl = null;\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"determineStrategy\", function (props) {\n if (props.onSize) {\n if (!_this.callbackState) {\n _this.callbackState = _objectSpread2({}, _this.state);\n }\n\n _this.strategy = 'callback';\n } else {\n _this.strategy = 'render';\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"strategisedSetState\", function (state) {\n if (_this.strategy === 'callback') {\n _this.callbackState = state;\n\n _this.props.onSize(state);\n }\n\n _this.setState(state);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"strategisedGetState\", function () {\n return _this.strategy === 'callback' ? _this.callbackState : _this.state;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"refCallback\", function (element) {\n _this.element = element;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"hasSizeChanged\", function (current, next) {\n var c = current;\n var n = next;\n return monitorWidth && c.width !== n.width || monitorHeight && c.height !== n.height;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"checkIfSizeChanged\", refreshDelayStrategy(refreshRate, function (el) {\n var _el$getBoundingClient = el.getBoundingClientRect(),\n width = _el$getBoundingClient.width,\n height = _el$getBoundingClient.height;\n\n var next = {\n width: monitorWidth ? width : null,\n height: monitorHeight ? height : null\n };\n\n if (_this.hasSizeChanged(_this.strategisedGetState(), next)) {\n _this.strategisedSetState(next);\n }\n }));\n\n return _this;\n }\n\n _createClass(SizeAwareComponent, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.detector = resizeDetector(resizeDetectorStrategy);\n this.determineStrategy(this.props);\n this.handleDOMNode();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n this.determineStrategy(this.props);\n this.handleDOMNode();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n // Change our size checker to a noop just in case we have some\n // late running events.\n this.hasSizeChanged = function () {\n return undefined;\n };\n\n this.checkIfSizeChanged = function () {\n return undefined;\n };\n\n this.uninstall();\n }\n }, {\n key: \"handleDOMNode\",\n value: function handleDOMNode() {\n var found = this.element && ReactDOM__default['default'].findDOMNode(this.element);\n\n if (!found) {\n // If we previously had a dom node then we need to ensure that\n // we remove any existing listeners to avoid memory leaks.\n this.uninstall();\n return;\n }\n\n if (!this.domEl) {\n this.domEl = found;\n this.detector.listenTo(this.domEl, this.checkIfSizeChanged);\n } else if (this.domEl.isSameNode && !this.domEl.isSameNode(found) || this.domEl !== found) {\n this.uninstall();\n this.domEl = found;\n this.detector.listenTo(this.domEl, this.checkIfSizeChanged);\n } else ;\n }\n }, {\n key: \"render\",\n value: function render() {\n var disablePlaceholder = withSize.enableSSRBehaviour || withSize.noPlaceholders || noPlaceholder || this.strategy === 'callback';\n\n var size = _objectSpread2({}, this.state);\n\n return /*#__PURE__*/React__default['default'].createElement(SizeMeRenderWrapper, _extends({\n explicitRef: this.refCallback,\n size: this.strategy === 'callback' ? null : size,\n disablePlaceholder: disablePlaceholder\n }, this.props));\n }\n }]);\n\n return SizeAwareComponent;\n }(React__default['default'].Component);\n\n _defineProperty(SizeAwareComponent, \"displayName\", \"SizeMe(\".concat(getDisplayName(WrappedComponent), \")\"));\n\n SizeAwareComponent.WrappedComponent = WrappedComponent;\n return SizeAwareComponent;\n };\n}\n/**\n * Allow SizeMe to run within SSR environments. This is a \"global\" behaviour\n * flag that should be set within the initialisation phase of your application.\n *\n * Warning: don't set this flag unless you need to as using it may cause\n * extra render cycles to happen within your components depending on the logic\n * contained within them around the usage of the `size` data.\n *\n * DEPRECATED: Please use the global noPlaceholders\n */\n\n\nwithSize.enableSSRBehaviour = false;\n/**\n * Global configuration allowing to disable placeholder rendering for all\n * sizeMe components.\n */\n\nwithSize.noPlaceholders = false;\n\nvar _excluded = [\"children\", \"render\"],\n _excluded2 = [\"children\", \"render\"],\n _excluded3 = [\"children\", \"render\"];\n\nvar SizeMe = /*#__PURE__*/function (_Component) {\n _inherits(SizeMe, _Component);\n\n var _super = _createSuper(SizeMe);\n\n function SizeMe(props) {\n var _this;\n\n _classCallCheck(this, SizeMe);\n\n _this = _super.call(this, props);\n\n _defineProperty(_assertThisInitialized(_this), \"createComponent\", function (config) {\n _this.SizeAware = withSize(config)(function (_ref) {\n var children = _ref.children;\n return children;\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onSize\", function (size) {\n return _this.setState({\n size: size\n });\n });\n\n props.children;\n props.render;\n var sizeMeConfig = _objectWithoutProperties(props, _excluded);\n\n _this.createComponent(sizeMeConfig);\n\n _this.state = {\n size: {\n width: undefined,\n height: undefined\n }\n };\n return _this;\n }\n\n _createClass(SizeMe, [{\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n var _this$props = this.props;\n _this$props.children;\n _this$props.render;\n var currentSizeMeConfig = _objectWithoutProperties(_this$props, _excluded2);\n\n prevProps.children;\n prevProps.render;\n var prevSizeMeConfig = _objectWithoutProperties(prevProps, _excluded3);\n\n if (!isShallowEqual__default['default'](currentSizeMeConfig, prevSizeMeConfig)) {\n this.createComponent(currentSizeMeConfig);\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var SizeAware = this.SizeAware;\n var render = this.props.children || this.props.render;\n return /*#__PURE__*/React__default['default'].createElement(SizeAware, {\n onSize: this.onSize\n }, render({\n size: this.state.size\n }));\n }\n }]);\n\n return SizeMe;\n}(React.Component);\n\n_defineProperty(SizeMe, \"defaultProps\", {\n children: undefined,\n render: undefined\n});\n\nwithSize.SizeMe = SizeMe;\nwithSize.withSize = withSize;\n\nmodule.exports = withSize;\n//# sourceMappingURL=react-sizeme.js.map\n","/**\n * @license React\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var l=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p=Symbol.for(\"react.fragment\"),q=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v=Symbol.for(\"react.forward_ref\"),w=Symbol.for(\"react.suspense\"),x=Symbol.for(\"react.memo\"),y=Symbol.for(\"react.lazy\"),z=Symbol.iterator;function A(a){if(null===a||\"object\"!==typeof a)return null;a=z&&a[z]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}\nvar B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}E.prototype.isReactComponent={};\nE.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,a,b,\"setState\")};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}var H=G.prototype=new F;\nH.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1>>1,e=a[d];if(0>>1;dg(C,c))ng(x,C)?(a[d]=x,a[n]=c,d=n):(a[d]=C,a[m]=c,d=m);else if(ng(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Qa||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","//\n\nmodule.exports = function shallowEqual(objA, objB, compare, compareContext) {\n var ret = compare ? compare.call(compareContext, objA, objB) : void 0;\n\n if (ret !== void 0) {\n return !!ret;\n }\n\n if (objA === objB) {\n return true;\n }\n\n if (typeof objA !== \"object\" || !objA || typeof objB !== \"object\" || !objB) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);\n\n // Test for A's keys different from B.\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n\n if (!bHasOwnProperty(key)) {\n return false;\n }\n\n var valueA = objA[key];\n var valueB = objB[key];\n\n ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n\n if (ret === false || (ret === void 0 && valueA !== valueB)) {\n return false;\n }\n }\n\n return true;\n};\n","/**\n* Tom Select v2.2.2\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n*/\n\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.TomSelect = factory());\n})(this, (function () { 'use strict';\n\n\t/**\n\t * MicroEvent - to make any js object an event emitter\n\t *\n\t * - pure javascript - server compatible, browser compatible\n\t * - dont rely on the browser doms\n\t * - super simple - you get it immediatly, no mistery, no magic involved\n\t *\n\t * @author Jerome Etienne (https://github.com/jeromeetienne)\n\t */\n\n\t/**\n\t * Execute callback for each event in space separated list of event names\n\t *\n\t */\n\tfunction forEvents(events, callback) {\n\t events.split(/\\s+/).forEach(event => {\n\t callback(event);\n\t });\n\t}\n\n\tclass MicroEvent {\n\t constructor() {\n\t this._events = void 0;\n\t this._events = {};\n\t }\n\n\t on(events, fct) {\n\t forEvents(events, event => {\n\t const event_array = this._events[event] || [];\n\t event_array.push(fct);\n\t this._events[event] = event_array;\n\t });\n\t }\n\n\t off(events, fct) {\n\t var n = arguments.length;\n\n\t if (n === 0) {\n\t this._events = {};\n\t return;\n\t }\n\n\t forEvents(events, event => {\n\t if (n === 1) {\n\t delete this._events[event];\n\t return;\n\t }\n\n\t const event_array = this._events[event];\n\t if (event_array === undefined) return;\n\t event_array.splice(event_array.indexOf(fct), 1);\n\t this._events[event] = event_array;\n\t });\n\t }\n\n\t trigger(events, ...args) {\n\t var self = this;\n\t forEvents(events, event => {\n\t const event_array = self._events[event];\n\t if (event_array === undefined) return;\n\t event_array.forEach(fct => {\n\t fct.apply(self, args);\n\t });\n\t });\n\t }\n\n\t}\n\n\t/**\n\t * microplugin.js\n\t * Copyright (c) 2013 Brian Reavis & contributors\n\t *\n\t * Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this\n\t * file except in compliance with the License. You may obtain a copy of the License at:\n\t * http://www.apache.org/licenses/LICENSE-2.0\n\t *\n\t * Unless required by applicable law or agreed to in writing, software distributed under\n\t * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF\n\t * ANY KIND, either express or implied. See the License for the specific language\n\t * governing permissions and limitations under the License.\n\t *\n\t * @author Brian Reavis \n\t */\n\tfunction MicroPlugin(Interface) {\n\t Interface.plugins = {};\n\t return class extends Interface {\n\t constructor(...args) {\n\t super(...args);\n\t this.plugins = {\n\t names: [],\n\t settings: {},\n\t requested: {},\n\t loaded: {}\n\t };\n\t }\n\n\t /**\n\t * Registers a plugin.\n\t *\n\t * @param {function} fn\n\t */\n\t static define(name, fn) {\n\t Interface.plugins[name] = {\n\t 'name': name,\n\t 'fn': fn\n\t };\n\t }\n\t /**\n\t * Initializes the listed plugins (with options).\n\t * Acceptable formats:\n\t *\n\t * List (without options):\n\t * ['a', 'b', 'c']\n\t *\n\t * List (with options):\n\t * [{'name': 'a', options: {}}, {'name': 'b', options: {}}]\n\t *\n\t * Hash (with options):\n\t * {'a': { ... }, 'b': { ... }, 'c': { ... }}\n\t *\n\t * @param {array|object} plugins\n\t */\n\n\n\t initializePlugins(plugins) {\n\t var key, name;\n\t const self = this;\n\t const queue = [];\n\n\t if (Array.isArray(plugins)) {\n\t plugins.forEach(plugin => {\n\t if (typeof plugin === 'string') {\n\t queue.push(plugin);\n\t } else {\n\t self.plugins.settings[plugin.name] = plugin.options;\n\t queue.push(plugin.name);\n\t }\n\t });\n\t } else if (plugins) {\n\t for (key in plugins) {\n\t if (plugins.hasOwnProperty(key)) {\n\t self.plugins.settings[key] = plugins[key];\n\t queue.push(key);\n\t }\n\t }\n\t }\n\n\t while (name = queue.shift()) {\n\t self.require(name);\n\t }\n\t }\n\n\t loadPlugin(name) {\n\t var self = this;\n\t var plugins = self.plugins;\n\t var plugin = Interface.plugins[name];\n\n\t if (!Interface.plugins.hasOwnProperty(name)) {\n\t throw new Error('Unable to find \"' + name + '\" plugin');\n\t }\n\n\t plugins.requested[name] = true;\n\t plugins.loaded[name] = plugin.fn.apply(self, [self.plugins.settings[name] || {}]);\n\t plugins.names.push(name);\n\t }\n\t /**\n\t * Initializes a plugin.\n\t *\n\t */\n\n\n\t require(name) {\n\t var self = this;\n\t var plugins = self.plugins;\n\n\t if (!self.plugins.loaded.hasOwnProperty(name)) {\n\t if (plugins.requested[name]) {\n\t throw new Error('Plugin has circular dependency (\"' + name + '\")');\n\t }\n\n\t self.loadPlugin(name);\n\t }\n\n\t return plugins.loaded[name];\n\t }\n\n\t };\n\t}\n\n\t/*! @orchidjs/unicode-variants | https://github.com/orchidjs/unicode-variants | Apache License (v2) */\n\t/**\n\t * Convert array of strings to a regular expression\n\t *\tex ['ab','a'] => (?:ab|a)\n\t * \tex ['a','b'] => [ab]\n\t * @param {string[]} chars\n\t * @return {string}\n\t */\n\tconst arrayToPattern = chars => {\n\t chars = chars.filter(Boolean);\n\n\t if (chars.length < 2) {\n\t return chars[0] || '';\n\t }\n\n\t return maxValueLength(chars) == 1 ? '[' + chars.join('') + ']' : '(?:' + chars.join('|') + ')';\n\t};\n\t/**\n\t * @param {string[]} array\n\t * @return {string}\n\t */\n\n\tconst sequencePattern = array => {\n\t if (!hasDuplicates(array)) {\n\t return array.join('');\n\t }\n\n\t let pattern = '';\n\t let prev_char_count = 0;\n\n\t const prev_pattern = () => {\n\t if (prev_char_count > 1) {\n\t pattern += '{' + prev_char_count + '}';\n\t }\n\t };\n\n\t array.forEach((char, i) => {\n\t if (char === array[i - 1]) {\n\t prev_char_count++;\n\t return;\n\t }\n\n\t prev_pattern();\n\t pattern += char;\n\t prev_char_count = 1;\n\t });\n\t prev_pattern();\n\t return pattern;\n\t};\n\t/**\n\t * Convert array of strings to a regular expression\n\t *\tex ['ab','a'] => (?:ab|a)\n\t * \tex ['a','b'] => [ab]\n\t * @param {Set} chars\n\t * @return {string}\n\t */\n\n\tconst setToPattern = chars => {\n\t let array = toArray(chars);\n\t return arrayToPattern(array);\n\t};\n\t/**\n\t *\n\t * https://stackoverflow.com/questions/7376598/in-javascript-how-do-i-check-if-an-array-has-duplicate-values\n\t * @param {any[]} array\n\t */\n\n\tconst hasDuplicates = array => {\n\t return new Set(array).size !== array.length;\n\t};\n\t/**\n\t * https://stackoverflow.com/questions/63006601/why-does-u-throw-an-invalid-escape-error\n\t * @param {string} str\n\t * @return {string}\n\t */\n\n\tconst escape_regex = str => {\n\t return (str + '').replace(/([\\$\\(\\)\\*\\+\\.\\?\\[\\]\\^\\{\\|\\}\\\\])/gu, '\\\\$1');\n\t};\n\t/**\n\t * Return the max length of array values\n\t * @param {string[]} array\n\t *\n\t */\n\n\tconst maxValueLength = array => {\n\t return array.reduce((longest, value) => Math.max(longest, unicodeLength(value)), 0);\n\t};\n\t/**\n\t * @param {string} str\n\t */\n\n\tconst unicodeLength = str => {\n\t return toArray(str).length;\n\t};\n\t/**\n\t * @param {any} p\n\t * @return {any[]}\n\t */\n\n\tconst toArray = p => Array.from(p);\n\n\t/*! @orchidjs/unicode-variants | https://github.com/orchidjs/unicode-variants | Apache License (v2) */\n\t/**\n\t * Get all possible combinations of substrings that add up to the given string\n\t * https://stackoverflow.com/questions/30169587/find-all-the-combination-of-substrings-that-add-up-to-the-given-string\n\t * @param {string} input\n\t * @return {string[][]}\n\t */\n\tconst allSubstrings = input => {\n\t if (input.length === 1) return [[input]];\n\t /** @type {string[][]} */\n\n\t let result = [];\n\t const start = input.substring(1);\n\t const suba = allSubstrings(start);\n\t suba.forEach(function (subresult) {\n\t let tmp = subresult.slice(0);\n\t tmp[0] = input.charAt(0) + tmp[0];\n\t result.push(tmp);\n\t tmp = subresult.slice(0);\n\t tmp.unshift(input.charAt(0));\n\t result.push(tmp);\n\t });\n\t return result;\n\t};\n\n\t/*! @orchidjs/unicode-variants | https://github.com/orchidjs/unicode-variants | Apache License (v2) */\n\n\t/**\n\t * @typedef {{[key:string]:string}} TUnicodeMap\n\t * @typedef {{[key:string]:Set}} TUnicodeSets\n\t * @typedef {[[number,number]]} TCodePoints\n\t * @typedef {{folded:string,composed:string,code_point:number}} TCodePointObj\n\t * @typedef {{start:number,end:number,length:number,substr:string}} TSequencePart\n\t */\n\t/** @type {TCodePoints} */\n\n\tconst code_points = [[0, 65535]];\n\tconst accent_pat = '[\\u0300-\\u036F\\u{b7}\\u{2be}\\u{2bc}]';\n\t/** @type {TUnicodeMap} */\n\n\tlet unicode_map;\n\t/** @type {RegExp} */\n\n\tlet multi_char_reg;\n\tconst max_char_length = 3;\n\t/** @type {TUnicodeMap} */\n\n\tconst latin_convert = {};\n\t/** @type {TUnicodeMap} */\n\n\tconst latin_condensed = {\n\t '/': '⁄∕',\n\t '0': '߀',\n\t \"a\": \"ⱥɐɑ\",\n\t \"aa\": \"ꜳ\",\n\t \"ae\": \"æǽǣ\",\n\t \"ao\": \"ꜵ\",\n\t \"au\": \"ꜷ\",\n\t \"av\": \"ꜹꜻ\",\n\t \"ay\": \"ꜽ\",\n\t \"b\": \"ƀɓƃ\",\n\t \"c\": \"ꜿƈȼↄ\",\n\t \"d\": \"đɗɖᴅƌꮷԁɦ\",\n\t \"e\": \"ɛǝᴇɇ\",\n\t \"f\": \"ꝼƒ\",\n\t \"g\": \"ǥɠꞡᵹꝿɢ\",\n\t \"h\": \"ħⱨⱶɥ\",\n\t \"i\": \"ɨı\",\n\t \"j\": \"ɉȷ\",\n\t \"k\": \"ƙⱪꝁꝃꝅꞣ\",\n\t \"l\": \"łƚɫⱡꝉꝇꞁɭ\",\n\t \"m\": \"ɱɯϻ\",\n\t \"n\": \"ꞥƞɲꞑᴎлԉ\",\n\t \"o\": \"øǿɔɵꝋꝍᴑ\",\n\t \"oe\": \"œ\",\n\t \"oi\": \"ƣ\",\n\t \"oo\": \"ꝏ\",\n\t \"ou\": \"ȣ\",\n\t \"p\": \"ƥᵽꝑꝓꝕρ\",\n\t \"q\": \"ꝗꝙɋ\",\n\t \"r\": \"ɍɽꝛꞧꞃ\",\n\t \"s\": \"ßȿꞩꞅʂ\",\n\t \"t\": \"ŧƭʈⱦꞇ\",\n\t \"th\": \"þ\",\n\t \"tz\": \"ꜩ\",\n\t \"u\": \"ʉ\",\n\t \"v\": \"ʋꝟʌ\",\n\t \"vy\": \"ꝡ\",\n\t \"w\": \"ⱳ\",\n\t \"y\": \"ƴɏỿ\",\n\t \"z\": \"ƶȥɀⱬꝣ\",\n\t \"hv\": \"ƕ\"\n\t};\n\n\tfor (let latin in latin_condensed) {\n\t let unicode = latin_condensed[latin] || '';\n\n\t for (let i = 0; i < unicode.length; i++) {\n\t let char = unicode.substring(i, i + 1);\n\t latin_convert[char] = latin;\n\t }\n\t}\n\n\tconst convert_pat = new RegExp(Object.keys(latin_convert).join('|') + '|' + accent_pat, 'gu');\n\t/**\n\t * Initialize the unicode_map from the give code point ranges\n\t *\n\t * @param {TCodePoints=} _code_points\n\t */\n\n\tconst initialize = _code_points => {\n\t if (unicode_map !== undefined) return;\n\t unicode_map = generateMap(_code_points || code_points);\n\t};\n\t/**\n\t * Helper method for normalize a string\n\t * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/normalize\n\t * @param {string} str\n\t * @param {string} form\n\t */\n\n\tconst normalize = (str, form = 'NFKD') => str.normalize(form);\n\t/**\n\t * Remove accents without reordering string\n\t * calling str.normalize('NFKD') on \\u{594}\\u{595}\\u{596} becomes \\u{596}\\u{594}\\u{595}\n\t * via https://github.com/krisk/Fuse/issues/133#issuecomment-318692703\n\t * @param {string} str\n\t * @return {string}\n\t */\n\n\tconst asciifold = str => {\n\t return toArray(str).reduce(\n\t /**\n\t * @param {string} result\n\t * @param {string} char\n\t */\n\t (result, char) => {\n\t return result + _asciifold(char);\n\t }, '');\n\t};\n\t/**\n\t * @param {string} str\n\t * @return {string}\n\t */\n\n\tconst _asciifold = str => {\n\t str = normalize(str).toLowerCase().replace(convert_pat, (\n\t /** @type {string} */\n\t char) => {\n\t return latin_convert[char] || '';\n\t }); //return str;\n\n\t return normalize(str, 'NFC');\n\t};\n\t/**\n\t * Generate a list of unicode variants from the list of code points\n\t * @param {TCodePoints} code_points\n\t * @yield {TCodePointObj}\n\t */\n\n\tfunction* generator(code_points) {\n\t for (const [code_point_min, code_point_max] of code_points) {\n\t for (let i = code_point_min; i <= code_point_max; i++) {\n\t let composed = String.fromCharCode(i);\n\t let folded = asciifold(composed);\n\n\t if (folded == composed.toLowerCase()) {\n\t continue;\n\t } // skip when folded is a string longer than 3 characters long\n\t // bc the resulting regex patterns will be long\n\t // eg:\n\t // folded صلى الله عليه وسلم length 18 code point 65018\n\t // folded جل جلاله length 8 code point 65019\n\n\n\t if (folded.length > max_char_length) {\n\t continue;\n\t }\n\n\t if (folded.length == 0) {\n\t continue;\n\t }\n\n\t yield {\n\t folded: folded,\n\t composed: composed,\n\t code_point: i\n\t };\n\t }\n\t }\n\t}\n\t/**\n\t * Generate a unicode map from the list of code points\n\t * @param {TCodePoints} code_points\n\t * @return {TUnicodeSets}\n\t */\n\n\tconst generateSets = code_points => {\n\t /** @type {{[key:string]:Set}} */\n\t const unicode_sets = {};\n\t /**\n\t * @param {string} folded\n\t * @param {string} to_add\n\t */\n\n\t const addMatching = (folded, to_add) => {\n\t /** @type {Set} */\n\t const folded_set = unicode_sets[folded] || new Set();\n\t const patt = new RegExp('^' + setToPattern(folded_set) + '$', 'iu');\n\n\t if (to_add.match(patt)) {\n\t return;\n\t }\n\n\t folded_set.add(escape_regex(to_add));\n\t unicode_sets[folded] = folded_set;\n\t };\n\n\t for (let value of generator(code_points)) {\n\t addMatching(value.folded, value.folded);\n\t addMatching(value.folded, value.composed);\n\t }\n\n\t return unicode_sets;\n\t};\n\t/**\n\t * Generate a unicode map from the list of code points\n\t * ae => (?:(?:ae|Æ|Ǽ|Ǣ)|(?:A|Ⓐ|A...)(?:E|ɛ|Ⓔ...))\n\t *\n\t * @param {TCodePoints} code_points\n\t * @return {TUnicodeMap}\n\t */\n\n\tconst generateMap = code_points => {\n\t /** @type {TUnicodeSets} */\n\t const unicode_sets = generateSets(code_points);\n\t /** @type {TUnicodeMap} */\n\n\t const unicode_map = {};\n\t /** @type {string[]} */\n\n\t let multi_char = [];\n\n\t for (let folded in unicode_sets) {\n\t let set = unicode_sets[folded];\n\n\t if (set) {\n\t unicode_map[folded] = setToPattern(set);\n\t }\n\n\t if (folded.length > 1) {\n\t multi_char.push(escape_regex(folded));\n\t }\n\t }\n\n\t multi_char.sort((a, b) => b.length - a.length);\n\t const multi_char_patt = arrayToPattern(multi_char);\n\t multi_char_reg = new RegExp('^' + multi_char_patt, 'u');\n\t return unicode_map;\n\t};\n\t/**\n\t * Map each element of an array from it's folded value to all possible unicode matches\n\t * @param {string[]} strings\n\t * @param {number} min_replacement\n\t * @return {string}\n\t */\n\n\tconst mapSequence = (strings, min_replacement = 1) => {\n\t let chars_replaced = 0;\n\t strings = strings.map(str => {\n\t if (unicode_map[str]) {\n\t chars_replaced += str.length;\n\t }\n\n\t return unicode_map[str] || str;\n\t });\n\n\t if (chars_replaced >= min_replacement) {\n\t return sequencePattern(strings);\n\t }\n\n\t return '';\n\t};\n\t/**\n\t * Convert a short string and split it into all possible patterns\n\t * Keep a pattern only if min_replacement is met\n\t *\n\t * 'abc'\n\t * \t\t=> [['abc'],['ab','c'],['a','bc'],['a','b','c']]\n\t *\t\t=> ['abc-pattern','ab-c-pattern'...]\n\t *\n\t *\n\t * @param {string} str\n\t * @param {number} min_replacement\n\t * @return {string}\n\t */\n\n\tconst substringsToPattern = (str, min_replacement = 1) => {\n\t min_replacement = Math.max(min_replacement, str.length - 1);\n\t return arrayToPattern(allSubstrings(str).map(sub_pat => {\n\t return mapSequence(sub_pat, min_replacement);\n\t }));\n\t};\n\t/**\n\t * Convert an array of sequences into a pattern\n\t * [{start:0,end:3,length:3,substr:'iii'}...] => (?:iii...)\n\t *\n\t * @param {Sequence[]} sequences\n\t * @param {boolean} all\n\t */\n\n\tconst sequencesToPattern = (sequences, all = true) => {\n\t let min_replacement = sequences.length > 1 ? 1 : 0;\n\t return arrayToPattern(sequences.map(sequence => {\n\t let seq = [];\n\t const len = all ? sequence.length() : sequence.length() - 1;\n\n\t for (let j = 0; j < len; j++) {\n\t seq.push(substringsToPattern(sequence.substrs[j] || '', min_replacement));\n\t }\n\n\t return sequencePattern(seq);\n\t }));\n\t};\n\t/**\n\t * Return true if the sequence is already in the sequences\n\t * @param {Sequence} needle_seq\n\t * @param {Sequence[]} sequences\n\t */\n\n\n\tconst inSequences = (needle_seq, sequences) => {\n\t for (const seq of sequences) {\n\t if (seq.start != needle_seq.start || seq.end != needle_seq.end) {\n\t continue;\n\t }\n\n\t if (seq.substrs.join('') !== needle_seq.substrs.join('')) {\n\t continue;\n\t }\n\n\t let needle_parts = needle_seq.parts;\n\t /**\n\t * @param {TSequencePart} part\n\t */\n\n\t const filter = part => {\n\t for (const needle_part of needle_parts) {\n\t if (needle_part.start === part.start && needle_part.substr === part.substr) {\n\t return false;\n\t }\n\n\t if (part.length == 1 || needle_part.length == 1) {\n\t continue;\n\t } // check for overlapping parts\n\t // a = ['::=','==']\n\t // b = ['::','===']\n\t // a = ['r','sm']\n\t // b = ['rs','m']\n\n\n\t if (part.start < needle_part.start && part.end > needle_part.start) {\n\t return true;\n\t }\n\n\t if (needle_part.start < part.start && needle_part.end > part.start) {\n\t return true;\n\t }\n\t }\n\n\t return false;\n\t };\n\n\t let filtered = seq.parts.filter(filter);\n\n\t if (filtered.length > 0) {\n\t continue;\n\t }\n\n\t return true;\n\t }\n\n\t return false;\n\t};\n\n\tclass Sequence {\n\t constructor() {\n\t /** @type {TSequencePart[]} */\n\t this.parts = [];\n\t /** @type {string[]} */\n\n\t this.substrs = [];\n\t this.start = 0;\n\t this.end = 0;\n\t }\n\t /**\n\t * @param {TSequencePart|undefined} part\n\t */\n\n\n\t add(part) {\n\t if (part) {\n\t this.parts.push(part);\n\t this.substrs.push(part.substr);\n\t this.start = Math.min(part.start, this.start);\n\t this.end = Math.max(part.end, this.end);\n\t }\n\t }\n\n\t last() {\n\t return this.parts[this.parts.length - 1];\n\t }\n\n\t length() {\n\t return this.parts.length;\n\t }\n\t /**\n\t * @param {number} position\n\t * @param {TSequencePart} last_piece\n\t */\n\n\n\t clone(position, last_piece) {\n\t let clone = new Sequence();\n\t let parts = JSON.parse(JSON.stringify(this.parts));\n\t let last_part = parts.pop();\n\n\t for (const part of parts) {\n\t clone.add(part);\n\t }\n\n\t let last_substr = last_piece.substr.substring(0, position - last_part.start);\n\t let clone_last_len = last_substr.length;\n\t clone.add({\n\t start: last_part.start,\n\t end: last_part.start + clone_last_len,\n\t length: clone_last_len,\n\t substr: last_substr\n\t });\n\t return clone;\n\t }\n\n\t}\n\t/**\n\t * Expand a regular expression pattern to include unicode variants\n\t * \teg /a/ becomes /aⓐaẚàáâầấẫẩãāăằắẵẳȧǡäǟảåǻǎȁȃạậặḁąⱥɐɑAⒶAÀÁÂẦẤẪẨÃĀĂẰẮẴẲȦǠÄǞẢÅǺǍȀȂẠẬẶḀĄȺⱯ/\n\t *\n\t * Issue:\n\t * ﺊﺋ [ 'ﺊ = \\\\u{fe8a}', 'ﺋ = \\\\u{fe8b}' ]\n\t *\tbecomes:\tئئ [ 'ي = \\\\u{64a}', 'ٔ = \\\\u{654}', 'ي = \\\\u{64a}', 'ٔ = \\\\u{654}' ]\n\t *\n\t *\tİIJ = IIJ = ⅡJ\n\t *\n\t * \t1/2/4\n\t *\n\t * @param {string} str\n\t * @return {string|undefined}\n\t */\n\n\n\tconst getPattern = str => {\n\t initialize();\n\t str = asciifold(str);\n\t let pattern = '';\n\t let sequences = [new Sequence()];\n\n\t for (let i = 0; i < str.length; i++) {\n\t let substr = str.substring(i);\n\t let match = substr.match(multi_char_reg);\n\t const char = str.substring(i, i + 1);\n\t const match_str = match ? match[0] : null; // loop through sequences\n\t // add either the char or multi_match\n\n\t let overlapping = [];\n\t let added_types = new Set();\n\n\t for (const sequence of sequences) {\n\t const last_piece = sequence.last();\n\n\t if (!last_piece || last_piece.length == 1 || last_piece.end <= i) {\n\t // if we have a multi match\n\t if (match_str) {\n\t const len = match_str.length;\n\t sequence.add({\n\t start: i,\n\t end: i + len,\n\t length: len,\n\t substr: match_str\n\t });\n\t added_types.add('1');\n\t } else {\n\t sequence.add({\n\t start: i,\n\t end: i + 1,\n\t length: 1,\n\t substr: char\n\t });\n\t added_types.add('2');\n\t }\n\t } else if (match_str) {\n\t let clone = sequence.clone(i, last_piece);\n\t const len = match_str.length;\n\t clone.add({\n\t start: i,\n\t end: i + len,\n\t length: len,\n\t substr: match_str\n\t });\n\t overlapping.push(clone);\n\t } else {\n\t // don't add char\n\t // adding would create invalid patterns: 234 => [2,34,4]\n\t added_types.add('3');\n\t }\n\t } // if we have overlapping\n\n\n\t if (overlapping.length > 0) {\n\t // ['ii','iii'] before ['i','i','iii']\n\t overlapping = overlapping.sort((a, b) => {\n\t return a.length() - b.length();\n\t });\n\n\t for (let clone of overlapping) {\n\t // don't add if we already have an equivalent sequence\n\t if (inSequences(clone, sequences)) {\n\t continue;\n\t }\n\n\t sequences.push(clone);\n\t }\n\n\t continue;\n\t } // if we haven't done anything unique\n\t // clean up the patterns\n\t // helps keep patterns smaller\n\t // if str = 'r₨㎧aarss', pattern will be 446 instead of 655\n\n\n\t if (i > 0 && added_types.size == 1 && !added_types.has('3')) {\n\t pattern += sequencesToPattern(sequences, false);\n\t let new_seq = new Sequence();\n\t const old_seq = sequences[0];\n\n\t if (old_seq) {\n\t new_seq.add(old_seq.last());\n\t }\n\n\t sequences = [new_seq];\n\t }\n\t }\n\n\t pattern += sequencesToPattern(sequences, true);\n\t return pattern;\n\t};\n\n\t/*! sifter.js | https://github.com/orchidjs/sifter.js | Apache License (v2) */\n\n\t/**\n\t * A property getter resolving dot-notation\n\t * @param {Object} obj The root object to fetch property on\n\t * @param {String} name The optionally dotted property name to fetch\n\t * @return {Object} The resolved property value\n\t */\n\tconst getAttr = (obj, name) => {\n\t if (!obj) return;\n\t return obj[name];\n\t};\n\t/**\n\t * A property getter resolving dot-notation\n\t * @param {Object} obj The root object to fetch property on\n\t * @param {String} name The optionally dotted property name to fetch\n\t * @return {Object} The resolved property value\n\t */\n\n\tconst getAttrNesting = (obj, name) => {\n\t if (!obj) return;\n\t var part,\n\t names = name.split(\".\");\n\n\t while ((part = names.shift()) && (obj = obj[part]));\n\n\t return obj;\n\t};\n\t/**\n\t * Calculates how close of a match the\n\t * given value is against a search token.\n\t *\n\t */\n\n\tconst scoreValue = (value, token, weight) => {\n\t var score, pos;\n\t if (!value) return 0;\n\t value = value + '';\n\t if (token.regex == null) return 0;\n\t pos = value.search(token.regex);\n\t if (pos === -1) return 0;\n\t score = token.string.length / value.length;\n\t if (pos === 0) score += 0.5;\n\t return score * weight;\n\t};\n\t/**\n\t * Cast object property to an array if it exists and has a value\n\t *\n\t */\n\n\tconst propToArray = (obj, key) => {\n\t var value = obj[key];\n\t if (typeof value == 'function') return value;\n\n\t if (value && !Array.isArray(value)) {\n\t obj[key] = [value];\n\t }\n\t};\n\t/**\n\t * Iterates over arrays and hashes.\n\t *\n\t * ```\n\t * iterate(this.items, function(item, id) {\n\t * // invoked for each item\n\t * });\n\t * ```\n\t *\n\t */\n\n\tconst iterate$1 = (object, callback) => {\n\t if (Array.isArray(object)) {\n\t object.forEach(callback);\n\t } else {\n\t for (var key in object) {\n\t if (object.hasOwnProperty(key)) {\n\t callback(object[key], key);\n\t }\n\t }\n\t }\n\t};\n\tconst cmp = (a, b) => {\n\t if (typeof a === 'number' && typeof b === 'number') {\n\t return a > b ? 1 : a < b ? -1 : 0;\n\t }\n\n\t a = asciifold(a + '').toLowerCase();\n\t b = asciifold(b + '').toLowerCase();\n\t if (a > b) return 1;\n\t if (b > a) return -1;\n\t return 0;\n\t};\n\n\t/*! sifter.js | https://github.com/orchidjs/sifter.js | Apache License (v2) */\n\n\t/**\n\t * sifter.js\n\t * Copyright (c) 2013–2020 Brian Reavis & contributors\n\t *\n\t * Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this\n\t * file except in compliance with the License. You may obtain a copy of the License at:\n\t * http://www.apache.org/licenses/LICENSE-2.0\n\t *\n\t * Unless required by applicable law or agreed to in writing, software distributed under\n\t * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF\n\t * ANY KIND, either express or implied. See the License for the specific language\n\t * governing permissions and limitations under the License.\n\t *\n\t * @author Brian Reavis \n\t */\n\n\tclass Sifter {\n\t // []|{};\n\n\t /**\n\t * Textually searches arrays and hashes of objects\n\t * by property (or multiple properties). Designed\n\t * specifically for autocomplete.\n\t *\n\t */\n\t constructor(items, settings) {\n\t this.items = void 0;\n\t this.settings = void 0;\n\t this.items = items;\n\t this.settings = settings || {\n\t diacritics: true\n\t };\n\t }\n\n\t /**\n\t * Splits a search string into an array of individual\n\t * regexps to be used to match results.\n\t *\n\t */\n\t tokenize(query, respect_word_boundaries, weights) {\n\t if (!query || !query.length) return [];\n\t const tokens = [];\n\t const words = query.split(/\\s+/);\n\t var field_regex;\n\n\t if (weights) {\n\t field_regex = new RegExp('^(' + Object.keys(weights).map(escape_regex).join('|') + ')\\:(.*)$');\n\t }\n\n\t words.forEach(word => {\n\t let field_match;\n\t let field = null;\n\t let regex = null; // look for \"field:query\" tokens\n\n\t if (field_regex && (field_match = word.match(field_regex))) {\n\t field = field_match[1];\n\t word = field_match[2];\n\t }\n\n\t if (word.length > 0) {\n\t if (this.settings.diacritics) {\n\t regex = getPattern(word) || null;\n\t } else {\n\t regex = escape_regex(word);\n\t }\n\n\t if (regex && respect_word_boundaries) regex = \"\\\\b\" + regex;\n\t }\n\n\t tokens.push({\n\t string: word,\n\t regex: regex ? new RegExp(regex, 'iu') : null,\n\t field: field\n\t });\n\t });\n\t return tokens;\n\t }\n\n\t /**\n\t * Returns a function to be used to score individual results.\n\t *\n\t * Good matches will have a higher score than poor matches.\n\t * If an item is not a match, 0 will be returned by the function.\n\t *\n\t * @returns {T.ScoreFn}\n\t */\n\t getScoreFunction(query, options) {\n\t var search = this.prepareSearch(query, options);\n\t return this._getScoreFunction(search);\n\t }\n\t /**\n\t * @returns {T.ScoreFn}\n\t *\n\t */\n\n\n\t _getScoreFunction(search) {\n\t const tokens = search.tokens,\n\t token_count = tokens.length;\n\n\t if (!token_count) {\n\t return function () {\n\t return 0;\n\t };\n\t }\n\n\t const fields = search.options.fields,\n\t weights = search.weights,\n\t field_count = fields.length,\n\t getAttrFn = search.getAttrFn;\n\n\t if (!field_count) {\n\t return function () {\n\t return 1;\n\t };\n\t }\n\t /**\n\t * Calculates the score of an object\n\t * against the search query.\n\t *\n\t */\n\n\n\t const scoreObject = function () {\n\t if (field_count === 1) {\n\t return function (token, data) {\n\t const field = fields[0].field;\n\t return scoreValue(getAttrFn(data, field), token, weights[field] || 1);\n\t };\n\t }\n\n\t return function (token, data) {\n\t var sum = 0; // is the token specific to a field?\n\n\t if (token.field) {\n\t const value = getAttrFn(data, token.field);\n\n\t if (!token.regex && value) {\n\t sum += 1 / field_count;\n\t } else {\n\t sum += scoreValue(value, token, 1);\n\t }\n\t } else {\n\t iterate$1(weights, (weight, field) => {\n\t sum += scoreValue(getAttrFn(data, field), token, weight);\n\t });\n\t }\n\n\t return sum / field_count;\n\t };\n\t }();\n\n\t if (token_count === 1) {\n\t return function (data) {\n\t return scoreObject(tokens[0], data);\n\t };\n\t }\n\n\t if (search.options.conjunction === 'and') {\n\t return function (data) {\n\t var score,\n\t sum = 0;\n\n\t for (let token of tokens) {\n\t score = scoreObject(token, data);\n\t if (score <= 0) return 0;\n\t sum += score;\n\t }\n\n\t return sum / token_count;\n\t };\n\t } else {\n\t return function (data) {\n\t var sum = 0;\n\t iterate$1(tokens, token => {\n\t sum += scoreObject(token, data);\n\t });\n\t return sum / token_count;\n\t };\n\t }\n\t }\n\n\t /**\n\t * Returns a function that can be used to compare two\n\t * results, for sorting purposes. If no sorting should\n\t * be performed, `null` will be returned.\n\t *\n\t * @return function(a,b)\n\t */\n\t getSortFunction(query, options) {\n\t var search = this.prepareSearch(query, options);\n\t return this._getSortFunction(search);\n\t }\n\n\t _getSortFunction(search) {\n\t var implicit_score,\n\t sort_flds = [];\n\t const self = this,\n\t options = search.options,\n\t sort = !search.query && options.sort_empty ? options.sort_empty : options.sort;\n\n\t if (typeof sort == 'function') {\n\t return sort.bind(this);\n\t }\n\t /**\n\t * Fetches the specified sort field value\n\t * from a search result item.\n\t *\n\t */\n\n\n\t const get_field = function get_field(name, result) {\n\t if (name === '$score') return result.score;\n\t return search.getAttrFn(self.items[result.id], name);\n\t }; // parse options\n\n\n\t if (sort) {\n\t for (let s of sort) {\n\t if (search.query || s.field !== '$score') {\n\t sort_flds.push(s);\n\t }\n\t }\n\t } // the \"$score\" field is implied to be the primary\n\t // sort field, unless it's manually specified\n\n\n\t if (search.query) {\n\t implicit_score = true;\n\n\t for (let fld of sort_flds) {\n\t if (fld.field === '$score') {\n\t implicit_score = false;\n\t break;\n\t }\n\t }\n\n\t if (implicit_score) {\n\t sort_flds.unshift({\n\t field: '$score',\n\t direction: 'desc'\n\t });\n\t } // without a search.query, all items will have the same score\n\n\t } else {\n\t sort_flds = sort_flds.filter(fld => fld.field !== '$score');\n\t } // build function\n\n\n\t const sort_flds_count = sort_flds.length;\n\n\t if (!sort_flds_count) {\n\t return null;\n\t }\n\n\t return function (a, b) {\n\t var result, field;\n\n\t for (let sort_fld of sort_flds) {\n\t field = sort_fld.field;\n\t let multiplier = sort_fld.direction === 'desc' ? -1 : 1;\n\t result = multiplier * cmp(get_field(field, a), get_field(field, b));\n\t if (result) return result;\n\t }\n\n\t return 0;\n\t };\n\t }\n\n\t /**\n\t * Parses a search query and returns an object\n\t * with tokens and fields ready to be populated\n\t * with results.\n\t *\n\t */\n\t prepareSearch(query, optsUser) {\n\t const weights = {};\n\t var options = Object.assign({}, optsUser);\n\t propToArray(options, 'sort');\n\t propToArray(options, 'sort_empty'); // convert fields to new format\n\n\t if (options.fields) {\n\t propToArray(options, 'fields');\n\t const fields = [];\n\t options.fields.forEach(field => {\n\t if (typeof field == 'string') {\n\t field = {\n\t field: field,\n\t weight: 1\n\t };\n\t }\n\n\t fields.push(field);\n\t weights[field.field] = 'weight' in field ? field.weight : 1;\n\t });\n\t options.fields = fields;\n\t }\n\n\t return {\n\t options: options,\n\t query: query.toLowerCase().trim(),\n\t tokens: this.tokenize(query, options.respect_word_boundaries, weights),\n\t total: 0,\n\t items: [],\n\t weights: weights,\n\t getAttrFn: options.nesting ? getAttrNesting : getAttr\n\t };\n\t }\n\n\t /**\n\t * Searches through all items and returns a sorted array of matches.\n\t *\n\t */\n\t search(query, options) {\n\t var self = this,\n\t score,\n\t search;\n\t search = this.prepareSearch(query, options);\n\t options = search.options;\n\t query = search.query; // generate result scoring function\n\n\t const fn_score = options.score || self._getScoreFunction(search); // perform search and sort\n\n\n\t if (query.length) {\n\t iterate$1(self.items, (item, id) => {\n\t score = fn_score(item);\n\n\t if (options.filter === false || score > 0) {\n\t search.items.push({\n\t 'score': score,\n\t 'id': id\n\t });\n\t }\n\t });\n\t } else {\n\t iterate$1(self.items, (_, id) => {\n\t search.items.push({\n\t 'score': 1,\n\t 'id': id\n\t });\n\t });\n\t }\n\n\t const fn_sort = self._getSortFunction(search);\n\n\t if (fn_sort) search.items.sort(fn_sort); // apply limits\n\n\t search.total = search.items.length;\n\n\t if (typeof options.limit === 'number') {\n\t search.items = search.items.slice(0, options.limit);\n\t }\n\n\t return search;\n\t }\n\n\t}\n\n\t/**\n\t * Iterates over arrays and hashes.\n\t *\n\t * ```\n\t * iterate(this.items, function(item, id) {\n\t * // invoked for each item\n\t * });\n\t * ```\n\t *\n\t */\n\n\tconst iterate = (object, callback) => {\n\t if (Array.isArray(object)) {\n\t object.forEach(callback);\n\t } else {\n\t for (var key in object) {\n\t if (object.hasOwnProperty(key)) {\n\t callback(object[key], key);\n\t }\n\t }\n\t }\n\t};\n\n\t/**\n\t * Return a dom element from either a dom query string, jQuery object, a dom element or html string\n\t * https://stackoverflow.com/questions/494143/creating-a-new-dom-element-from-an-html-string-using-built-in-dom-methods-or-pro/35385518#35385518\n\t *\n\t * param query should be {}\n\t */\n\n\tconst getDom = query => {\n\t if (query.jquery) {\n\t return query[0];\n\t }\n\n\t if (query instanceof HTMLElement) {\n\t return query;\n\t }\n\n\t if (isHtmlString(query)) {\n\t var tpl = document.createElement('template');\n\t tpl.innerHTML = query.trim(); // Never return a text node of whitespace as the result\n\n\t return tpl.content.firstChild;\n\t }\n\n\t return document.querySelector(query);\n\t};\n\tconst isHtmlString = arg => {\n\t if (typeof arg === 'string' && arg.indexOf('<') > -1) {\n\t return true;\n\t }\n\n\t return false;\n\t};\n\tconst escapeQuery = query => {\n\t return query.replace(/['\"\\\\]/g, '\\\\$&');\n\t};\n\t/**\n\t * Dispatch an event\n\t *\n\t */\n\n\tconst triggerEvent = (dom_el, event_name) => {\n\t var event = document.createEvent('HTMLEvents');\n\t event.initEvent(event_name, true, false);\n\t dom_el.dispatchEvent(event);\n\t};\n\t/**\n\t * Apply CSS rules to a dom element\n\t *\n\t */\n\n\tconst applyCSS = (dom_el, css) => {\n\t Object.assign(dom_el.style, css);\n\t};\n\t/**\n\t * Add css classes\n\t *\n\t */\n\n\tconst addClasses = (elmts, ...classes) => {\n\t var norm_classes = classesArray(classes);\n\t elmts = castAsArray(elmts);\n\t elmts.map(el => {\n\t norm_classes.map(cls => {\n\t el.classList.add(cls);\n\t });\n\t });\n\t};\n\t/**\n\t * Remove css classes\n\t *\n\t */\n\n\tconst removeClasses = (elmts, ...classes) => {\n\t var norm_classes = classesArray(classes);\n\t elmts = castAsArray(elmts);\n\t elmts.map(el => {\n\t norm_classes.map(cls => {\n\t el.classList.remove(cls);\n\t });\n\t });\n\t};\n\t/**\n\t * Return arguments\n\t *\n\t */\n\n\tconst classesArray = args => {\n\t var classes = [];\n\t iterate(args, _classes => {\n\t if (typeof _classes === 'string') {\n\t _classes = _classes.trim().split(/[\\11\\12\\14\\15\\40]/);\n\t }\n\n\t if (Array.isArray(_classes)) {\n\t classes = classes.concat(_classes);\n\t }\n\t });\n\t return classes.filter(Boolean);\n\t};\n\t/**\n\t * Create an array from arg if it's not already an array\n\t *\n\t */\n\n\tconst castAsArray = arg => {\n\t if (!Array.isArray(arg)) {\n\t arg = [arg];\n\t }\n\n\t return arg;\n\t};\n\t/**\n\t * Get the closest node to the evt.target matching the selector\n\t * Stops at wrapper\n\t *\n\t */\n\n\tconst parentMatch = (target, selector, wrapper) => {\n\t if (wrapper && !wrapper.contains(target)) {\n\t return;\n\t }\n\n\t while (target && target.matches) {\n\t if (target.matches(selector)) {\n\t return target;\n\t }\n\n\t target = target.parentNode;\n\t }\n\t};\n\t/**\n\t * Get the first or last item from an array\n\t *\n\t * > 0 - right (last)\n\t * <= 0 - left (first)\n\t *\n\t */\n\n\tconst getTail = (list, direction = 0) => {\n\t if (direction > 0) {\n\t return list[list.length - 1];\n\t }\n\n\t return list[0];\n\t};\n\t/**\n\t * Return true if an object is empty\n\t *\n\t */\n\n\tconst isEmptyObject = obj => {\n\t return Object.keys(obj).length === 0;\n\t};\n\t/**\n\t * Get the index of an element amongst sibling nodes of the same type\n\t *\n\t */\n\n\tconst nodeIndex = (el, amongst) => {\n\t if (!el) return -1;\n\t amongst = amongst || el.nodeName;\n\t var i = 0;\n\n\t while (el = el.previousElementSibling) {\n\t if (el.matches(amongst)) {\n\t i++;\n\t }\n\t }\n\n\t return i;\n\t};\n\t/**\n\t * Set attributes of an element\n\t *\n\t */\n\n\tconst setAttr = (el, attrs) => {\n\t iterate(attrs, (val, attr) => {\n\t if (val == null) {\n\t el.removeAttribute(attr);\n\t } else {\n\t el.setAttribute(attr, '' + val);\n\t }\n\t });\n\t};\n\t/**\n\t * Replace a node\n\t */\n\n\tconst replaceNode = (existing, replacement) => {\n\t if (existing.parentNode) existing.parentNode.replaceChild(replacement, existing);\n\t};\n\n\t/**\n\t * highlight v3 | MIT license | Johann Burkard \n\t * Highlights arbitrary terms in a node.\n\t *\n\t * - Modified by Marshal 2011-6-24 (added regex)\n\t * - Modified by Brian Reavis 2012-8-27 (cleanup)\n\t */\n\tconst highlight = (element, regex) => {\n\t if (regex === null) return; // convet string to regex\n\n\t if (typeof regex === 'string') {\n\t if (!regex.length) return;\n\t regex = new RegExp(regex, 'i');\n\t } // Wrap matching part of text node with highlighting , e.g.\n\t // Soccer -> Soccer for regex = /soc/i\n\n\n\t const highlightText = node => {\n\t var match = node.data.match(regex);\n\n\t if (match && node.data.length > 0) {\n\t var spannode = document.createElement('span');\n\t spannode.className = 'highlight';\n\t var middlebit = node.splitText(match.index);\n\t middlebit.splitText(match[0].length);\n\t var middleclone = middlebit.cloneNode(true);\n\t spannode.appendChild(middleclone);\n\t replaceNode(middlebit, spannode);\n\t return 1;\n\t }\n\n\t return 0;\n\t }; // Recurse element node, looking for child text nodes to highlight, unless element\n\t // is childless,