{"version":3,"file":"js/3005-cd91858a2d1a5ce7b9db.js","mappings":"yFAAAA,EAAOC,QAAU,EAAjBD,M,wBCAA,IAAIE,EAAa,WACb,aAEA,IA8EIC,EA9EAC,EAAc,OACdC,EAAY,aACZC,EAAa,MAEjB,SAASC,EAAOC,GACZ,IAAKA,IAAMA,EAAEC,OAAQ,OAAO,EAC5B,IAAK,IAAIC,EAAI,EAAGC,EAAI,EAAGD,EAAIF,EAAEC,OAAQC,IACjCC,GAAMA,GAAK,GAAKA,EAAKH,EAAEI,WAAWF,GAAK,EACzC,OAAOC,CACb,CAEA,SAASE,EAAIL,EAAGM,GAAK,OAAON,EAAEO,qBAAqBD,EAAI,CACvD,SAASE,EAAKR,EAAGM,GAAK,OAAON,EAAES,aAAaH,EAAI,CAChD,SAASI,EAAMV,EAAGM,GAAK,OAAOK,WAAWH,EAAKR,EAAGM,GAAK,CAEtD,SAASM,EAAKZ,EAAGM,GAAK,IAAIO,EAAIR,EAAIL,EAAGM,GAAI,OAAOO,EAAEZ,OAASY,EAAE,GAAK,IAAM,CAIxE,SAASC,EAASd,GACd,IAAK,IAAIe,EAAI,EAAGC,EAAI,GAAID,EAAIf,EAAEC,OAAQc,IAAOC,EAAED,GAAKJ,WAAWX,EAAEe,IACjE,OAAOC,CACX,CAEA,SAASC,EAAQjB,GAPjB,IAAckB,EASV,OADIlB,IARMkB,EAQIlB,GARSmB,WAAaD,EAAGC,YAS/BnB,GAAKA,EAAEoB,aAAgB,EACnC,CAEA,SAASC,EAASrB,EAAGsB,GACjB,IAAYT,EAAGU,EAAXP,EAAI,CAAC,EACT,IAAKO,EAAI,EAAGA,EAAID,EAAGrB,OAAQsB,KACvBV,EAAID,EAAKZ,EAAGsB,EAAGC,OACRP,EAAEM,EAAGC,IAAMN,EAAQJ,IAE9B,OAAOG,CACX,CAEA,SAASQ,EAAOxB,EAAGM,GAAK,IAAK,IAAIiB,KAAKjB,EAAGN,EAAEuB,GAAKjB,EAAEiB,EAAI,CAEtD,SAASE,EAAOC,GAAK,OAAOZ,EAASY,EAAEC,QAAQ/B,EAAa,IAAIgC,MAAM,KAAO,CAE7E,SAASC,EAAMH,GAGX,IAFA,IAAII,EAASJ,EAAEC,QAAQ9B,EAAW,IAAI+B,MAAM9B,GACxCkB,EAAI,GACCd,EAAI,EAAGA,EAAI4B,EAAO7B,OAAQC,IAC/Bc,EAAEe,KAAKN,EAAOK,EAAO5B,KAEzB,OAAOc,CACX,CACA,SAASgB,EAAUhC,GACf,IAKIiC,EALAC,EAAK,CAACxB,EAAMV,EAAG,OAAQU,EAAMV,EAAG,QAChCmC,EAAMvB,EAAKZ,EAAG,OAEdoC,EAAYxB,EAAKZ,EAAG,cAAgBY,EAAKZ,EAAG,MAC5CqC,EAAOzB,EAAKZ,EAAG,QAQnB,OANImC,IACAF,EAAItB,WAAWM,EAAQkB,IAClBG,MAAML,IACPC,EAAGH,KAAKE,IAGT,CACHM,YAAaL,EACbG,KAAMA,EAAOpB,EAAQoB,GAAQ,KAC7BD,UAAWA,EAAYzB,WAAWM,EAAQmB,IAAc,KAEhE,CAkBA,SAASI,EAAQC,GAIb,YAAgBC,IAAZD,EAAIE,IAA0BF,EAAIE,IAC/BhD,EAAWiD,kBAAkBH,EACxC,CAuUA,MApV6B,qBAAlBI,cAEPlD,EAAa,IAAIkD,cAEwC,kBAAZC,SAAyBA,QAAQC,UAC9EpD,EAAa,IAAKqD,EAAAA,KAA+B,gBAU7C,CACJC,IAAK,SAASC,GAeV,IAbA,IAAIC,EAzBD,CACHC,KAAM,oBACNC,SAAU,IAyBNC,EAAa,CAAC,EAAGC,EAAc,CAAC,EAEhCC,EAAgB,CAAC,EAGjBC,EAAW,CAAC,UAAW,aAAc,QAAS,QAAS,YAEvDC,EAAarD,EAAI6C,EAAK,aACtBS,EAAStD,EAAI6C,EAAK,SAClBU,EAAYvD,EAAI6C,EAAK,YAEhB3B,EAAI,EAAGA,EAAIoC,EAAO1D,OAAQsB,IAAK,CACpC,IAAIsC,EAAO9D,EAAOyC,EAAQmB,EAAOpC,KAAKuC,SAAS,IAC/CR,EAAW,IAAM9C,EAAKmD,EAAOpC,GAAI,OAASsC,EAC1CN,EAAYM,GAAQF,EAAOpC,EAC/B,CACA,IAAK,IAAIwC,EAAI,EAAGA,EAAIH,EAAU3D,OAAQ8D,IAAK,CACvCT,EAAW,IAAM9C,EAAKoD,EAAUG,GAAI,OAAShE,EAAOyC,EAAQoB,EAAUG,KAAKD,SAAS,IAGpF,IAFA,IAAIE,EAAQ3D,EAAIuD,EAAUG,GAAI,QAC1BE,EAAW,CAAC,EACPC,EAAI,EAAGA,EAAIF,EAAM/D,OAAQiE,IAC9BD,EAAShD,EAAQL,EAAKoD,EAAME,GAAI,SAAWjD,EAAQL,EAAKoD,EAAME,GAAI,aAEtEV,EAAc,IAAMhD,EAAKoD,EAAUG,GAAI,OAASE,CAEpD,CACA,IAAK,IAAIlD,EAAI,EAAGA,EAAI2C,EAAWzD,OAAQc,IACnCoC,EAAGE,SAAWF,EAAGE,SAASc,OAAOC,EAAaV,EAAW3C,KAE7D,SAASsD,EAAS3C,GACd,IAAI4C,EAAOC,EAUX,MARuB,OADvB7C,EAAIA,GAAK,IACH8C,OAAO,EAAG,KAAc9C,EAAIA,EAAE8C,OAAO,IAC1B,IAAb9C,EAAEzB,QAA6B,IAAbyB,EAAEzB,SAAgBqE,EAAQ5C,GAC/B,IAAbA,EAAEzB,SACFsE,EAAUE,SAAS/C,EAAE8C,OAAO,EAAG,GAAI,IAAM,IACzCF,EAAQ,IAAM5C,EAAE8C,OAAO,EAAG,GACtB9C,EAAE8C,OAAO,EAAG,GACZ9C,EAAE8C,OAAO,EAAG,IAEb,CAACF,EAAOhC,MAAMiC,QAAW7B,EAAY6B,EAChD,CAEA,SAASG,EAASC,GACd,IAAIC,EAAQvE,EAAIsE,EAAM,SAAgB7C,EAAS,GAAI+C,EAAQ,GACtC,IAAjBD,EAAM3E,SAAc2E,EAAQvE,EAAIsE,EAAM,aAC1C,IAAK,IAAIzE,EAAI,EAAGA,EAAI0E,EAAM3E,OAAQC,IAAK4B,EAAOC,KAJrBjB,EAIkCG,EAAQ2D,EAAM1E,IAJrC0B,MAAM,OAM1C,IADA,IAAIkD,EAAYzE,EAAIsE,EAAM,QACjB5D,EAAI,EAAGA,EAAI+D,EAAU7E,OAAQc,IAAK8D,EAAM9C,KAAKd,EAAQ6D,EAAU/D,KACxE,MAAO,CACHe,OAAQA,EACR+C,MAAOA,EAEf,CACA,SAASE,EAAYJ,GACjB,IAAIK,EAAUC,EAAW/E,EAAGa,EAAGQ,EAAG2D,EAAQ,GAAIC,EAAa,GAC3D,GAAIvE,EAAK+D,EAAM,iBAAoB,OAAOI,EAAYnE,EAAK+D,EAAM,kBACjE,GAAI/D,EAAK+D,EAAM,cAAiB,OAAOI,EAAYnE,EAAK+D,EAAM,eAC9D,GAAI/D,EAAK+D,EAAM,iBAAoB,OAAOI,EAAYnE,EAAK+D,EAAM,kBACjE,IAAKzE,EAAI,EAAGA,EAAIuD,EAASxD,OAAQC,IAE7B,GADA+E,EAAY5E,EAAIsE,EAAMlB,EAASvD,IAE3B,IAAKa,EAAI,EAAGA,EAAIkE,EAAUhF,OAAQc,IAE9B,GADAiE,EAAWC,EAAUlE,GACD,UAAhB0C,EAASvD,GACTgF,EAAMnD,KAAK,CACPqB,KAAM,QACNb,YAAad,EAAOR,EAAQL,EAAKoE,EAAU,wBAE5C,GAAoB,eAAhBvB,EAASvD,GAChBgF,EAAMnD,KAAK,CACPqB,KAAM,aACNb,YAAaV,EAAMZ,EAAQL,EAAKoE,EAAU,wBAE3C,GAAoB,YAAhBvB,EAASvD,GAAkB,CAClC,IAAIkF,EAAQ/E,EAAI2E,EAAU,cACtBlD,EAAS,GACb,IAAKP,EAAI,EAAGA,EAAI6D,EAAMnF,OAAQsB,IAC1BO,EAAOC,KAAKF,EAAMZ,EAAQL,EAAKwE,EAAM7D,GAAI,kBAE7C2D,EAAMnD,KAAK,CACPqB,KAAM,UACNb,YAAaT,GAErB,MAAO,GAAoB,UAAhB2B,EAASvD,IACA,aAAhBuD,EAASvD,GAAmB,CAC5B,IAAImF,EAAQX,EAASM,GACrBE,EAAMnD,KAAK,CACPqB,KAAM,aACNb,YAAa8C,EAAMvD,SAEnBuD,EAAMR,MAAM5E,QAAQkF,EAAWpD,KAAKsD,EAAMR,MAClD,CAIZ,MAAO,CACHK,MAAOA,EACPC,WAAYA,EAEpB,CACA,SAASf,EAAaO,GAClB,IAAuCzE,EAAnCoF,EAAgBP,EAAYJ,GAAUY,EAAa,CAAC,EACpDC,EAAOvE,EAAQL,EAAK+D,EAAM,SAC1Bc,EAAUxE,EAAQL,EAAK+D,EAAM,YAC7Be,EAAWzE,EAAQL,EAAK+D,EAAM,aAC9BgB,EAAc1E,EAAQL,EAAK+D,EAAM,gBACjCiB,EAAWhF,EAAK+D,EAAM,YACtBkB,EAAYjF,EAAK+D,EAAM,aACvBmB,EAAelF,EAAK+D,EAAM,gBAC1BoB,EAAYnF,EAAK+D,EAAM,aACvBqB,EAAYpF,EAAK+D,EAAM,aACvBsB,EAAarF,EAAK+D,EAAM,cAE5B,IAAKW,EAAcJ,MAAMjF,OAAQ,MAAO,GAGxC,GAFIuF,IAAMD,EAAWC,KAAOA,GACxBC,IAASF,EAAWE,QAAUA,GAC9BC,EAAU,CACU,MAAhBA,EAAS,KACTA,EAAW,IAAMA,GAGrBH,EAAWG,SAAWA,EAClBpC,EAAWoC,KACXH,EAAWW,UAAY5C,EAAWoC,IAElClC,EAAckC,KACdH,EAAWY,aAAe3C,EAAckC,GACxCH,EAAWW,UAAY5C,EAAWE,EAAckC,GAAUU,SAG9D,IAAIC,EAAQ9C,EAAYgC,EAAWW,WAC/BG,IACKN,IAAWA,EAAYnF,EAAKyF,EAAO,cACnCL,IAAWA,EAAYpF,EAAKyF,EAAO,cAEhD,CAEA,GADIV,IAAaJ,EAAWI,YAAcA,GACtCC,EAAU,CACV,IAAIU,EAAQrF,EAAQL,EAAKgF,EAAU,UAC/BW,EAAMtF,EAAQL,EAAKgF,EAAU,QACjCL,EAAWiB,SAAW,CAAEF,MAAOA,EAAOC,IAAKA,EAC/C,CAIA,GAHIV,IACAN,EAAWkB,UAAYxF,EAAQL,EAAKiF,EAAW,UAE/CE,EAAW,CACX,IAAIW,EAAarC,EAASpD,EAAQL,EAAKmF,EAAW,WAC9CzB,EAAQoC,EAAW,GACnBnC,EAAUmC,EAAW,GACrBC,EAAQhG,WAAWM,EAAQL,EAAKmF,EAAW,WAC3CzB,IAAOiB,EAAWqB,OAAStC,GAC1BhC,MAAMiC,KAAUgB,EAAW,kBAAoBhB,GAC/CjC,MAAMqE,KAAQpB,EAAW,gBAAkBoB,EACpD,CACA,GAAIX,EAAW,CACX,IAAIa,EAAaxC,EAASpD,EAAQL,EAAKoF,EAAW,WAC9Cc,EAASD,EAAW,GACpBE,EAAWF,EAAW,GACtBG,EAAO/F,EAAQL,EAAKoF,EAAW,SAC/BiB,EAAUhG,EAAQL,EAAKoF,EAAW,YAClCc,IAAQvB,EAAWyB,KAAOF,GACzBxE,MAAMyE,KAAWxB,EAAW,gBAAkBwB,GAC/CC,IAAMzB,EAAW,gBAA2B,MAATyB,EAAezB,EAAW,iBAAmB,EAAI,GACpF0B,IAAS1B,EAAW,kBAAgC,MAAZ0B,EAAkB1B,EAAW,mBAAqB,EAAI,EACtG,CACA,GAAIO,EAAc,CACd,IAAIoB,EAAQ7G,EAAIyF,EAAc,QAC1BqB,EAAc9G,EAAIyF,EAAc,cAEpC,IAAK5F,EAAI,EAAGA,EAAIgH,EAAMjH,OAAQC,IAC1BqF,EAAW2B,EAAMhH,GAAGO,aAAa,SAAWQ,EAAQL,EAAKsG,EAAMhH,GAAI,UAEvE,IAAKA,EAAI,EAAGA,EAAIiH,EAAYlH,OAAQC,IAChCqF,EAAW4B,EAAYjH,GAAGO,aAAa,SAAWQ,EAAQkG,EAAYjH,GAE9E,CACI+F,IACAV,EAAWU,WAAahF,EAAQgF,IAEhCX,EAAcH,WAAWlF,SACzBsF,EAAWJ,WAAkD,IAApCG,EAAcH,WAAWlF,OAC9CqF,EAAcH,WAAW,GAAKG,EAAcH,YAEpD,IAAIiC,EAAU,CACVhE,KAAM,UACNiE,SAA0C,IAA/B/B,EAAcJ,MAAMjF,OAAgBqF,EAAcJ,MAAM,GAAK,CACpE9B,KAAM,qBACNkE,WAAYhC,EAAcJ,OAE9BK,WAAYA,GAGhB,OADI/E,EAAKmE,EAAM,QAAOyC,EAAQG,GAAK/G,EAAKmE,EAAM,OACvC,CAACyC,EACZ,CACA,OAAOjE,CACX,EACAqE,IAAK,SAAStE,GACV,IAAIhD,EAMAkH,EALAK,EAASpH,EAAI6C,EAAK,OAClBwE,EAASrH,EAAI6C,EAAK,OAClByE,EAAYtH,EAAI6C,EAAK,OAErBC,EAtOD,CACHC,KAAM,oBACNC,SAAU,IAsOV,IAAKnD,EAAI,EAAGA,EAAIuH,EAAOxH,OAAQC,KAC3BkH,EAAUQ,EAASH,EAAOvH,MACbiD,EAAGE,SAAStB,KAAKqF,GAElC,IAAKlH,EAAI,EAAGA,EAAIwH,EAAOzH,OAAQC,KAC3BkH,EAAUS,EAASH,EAAOxH,MACbiD,EAAGE,SAAStB,KAAKqF,GAElC,IAAKlH,EAAI,EAAGA,EAAIyH,EAAU1H,OAAQC,IAC9BiD,EAAGE,SAAStB,KAAK+F,EAASH,EAAUzH,KAExC,SAAS6H,EAAUC,EAAMC,GACrB,IAAIC,EAAM7H,EAAI2H,EAAMC,GAChBE,EAAO,GACPtD,EAAQ,GACRuD,EAAa,GACbrE,EAAImE,EAAIjI,OACZ,GAAI8D,EAAI,EAAG,MAAO,CAAC,EACnB,IAAK,IAAI7D,EAAI,EAAGA,EAAI6D,EAAG7D,IAAK,CACxB,IAAImI,EAAIrG,EAAUkG,EAAIhI,IACtBiI,EAAKpG,KAAKsG,EAAE9F,aACR8F,EAAEhG,MAAMwC,EAAM9C,KAAKsG,EAAEhG,MACrBgG,EAAEjG,WAAWgG,EAAWrG,KAAKsG,EAAEjG,UACvC,CACA,MAAO,CACH+F,KAAMA,EACNtD,MAAOA,EACPuD,WAAYA,EAEpB,CACA,SAASR,EAASI,GAMd,IALA,IAIIG,EAJAG,EAAWjI,EAAI2H,EAAM,UACrB3C,EAAQ,GACRR,EAAQ,GACRuD,EAAa,GAERlI,EAAI,EAAGA,EAAIoI,EAASrI,OAAQC,KACjCiI,EAAOJ,EAAUO,EAASpI,GAAI,YAEtBiI,EAAKA,MAAM9C,EAAMtD,KAAKoG,EAAKA,MAC3BA,EAAKtD,OAASsD,EAAKtD,MAAM5E,QAAQ4E,EAAM9C,KAAKoG,EAAKtD,OACjDsD,EAAKC,YAAcD,EAAKC,WAAWnI,QAAQmI,EAAWrG,KAAKoG,EAAKC,aAG5E,GAAqB,IAAjB/C,EAAMpF,OAAV,CACA,IAAIsF,EAAagD,EAAcP,GAI/B,OAHAxG,EAAO+D,EAAYiD,EAAa5H,EAAKoH,EAAM,gBACvCnD,EAAM5E,SAAQsF,EAAWJ,WAA8B,IAAjBE,EAAMpF,OAAe4E,EAAM,GAAKA,GACtEuD,EAAWnI,SAAQsF,EAAW6C,WAA8B,IAAjB/C,EAAMpF,OAAemI,EAAW,GAAKA,GAC7E,CACHhF,KAAM,UACNmC,WAAYA,EACZ8B,SAAU,CACNjE,KAAuB,IAAjBiC,EAAMpF,OAAe,aAAe,kBAC1CsC,YAA8B,IAAjB8C,EAAMpF,OAAeoF,EAAM,GAAKA,GAVvB,CAalC,CACA,SAASwC,EAASG,GACd,IAAIG,EAAOJ,EAAUC,EAAM,SAC3B,GAAKG,EAAKA,KAAV,CACA,IAAIM,EAAOF,EAAcP,GAUzB,OATAxG,EAAOiH,EAAMD,EAAa5H,EAAKoH,EAAM,gBACtB,CACX5E,KAAM,UACNmC,WAAYkD,EACZpB,SAAU,CACNjE,KAAM,aACNb,YAAa4F,EAAKA,MARJ,CAY1B,CACA,SAASL,EAASE,GACd,IAAIS,EAAOF,EAAcP,GAEzB,OADAxG,EAAOiH,EAAMpH,EAAS2G,EAAM,CAAC,SACtB,CACH5E,KAAM,UACNmC,WAAYkD,EACZpB,SAAU,CACNjE,KAAM,QACNb,YAAaP,EAAUgG,GAAMzF,aAGzC,CACA,SAASiG,EAAaE,GAClB,IAAIrC,EAAQ,CAAC,EACb,GAAIqC,EAAY,CACZ,IAAI3C,EAAYnF,EAAK8H,EAAY,QACjC,GAAI3C,EAAW,CACX,IAAIzB,EAAQrD,EAAQL,EAAKmF,EAAW,UAChCxB,EAAU5D,WAAWM,EAAQL,EAAKmF,EAAW,aAC7CY,EAAQhG,WAAWM,EAAQL,EAAKmF,EAAW,WAC3CzB,IAAO+B,EAAMO,OAAStC,GACrBhC,MAAMiC,KAAU8B,EAAM,kBAAoB9B,GAE1CjC,MAAMqE,KAAQN,EAAM,gBAA0B,GAARM,EAAa,KAC5D,CACJ,CACA,OAAON,CACX,CACA,SAASkC,EAAcP,GACnB,IAAIS,EAAOpH,EAAS2G,EAAM,CAAC,OAAQ,MAAO,OAAQ,OAAQ,OAAQ,aAC9DW,EAAQtI,EAAI2H,EAAM,QAClBW,EAAM1I,SAAQwI,EAAKE,MAAQ,IAC/B,IAAK,IAAWC,EAAP1I,EAAI,EAASA,EAAIyI,EAAM1I,OAAQC,IAEpCsB,EADAoH,EAAO,CAAEC,KAAMrI,EAAKmI,EAAMzI,GAAI,SACjBmB,EAASsH,EAAMzI,GAAI,CAAC,OAAQ,UACzCuI,EAAKE,MAAM5G,KAAK6G,GAEpB,OAAOH,CACX,CACA,OAAOtF,CACX,EAGR,CAvaiB,GAyakB3D,EAAOC,QAAUC,C,wBCzapD,IAAIoJ,EAAU,WAAWC,KAAKC,UAAU,GAAGD,KAAKE,SAAS,CAAC,EAAEF,KAAKpB,UAAU,GAAGoB,KAAKtB,OAAO,GAAGsB,KAAKrB,OAAO,EAAE,EAAEoB,EAAUI,UAAUC,MAAM,SAASlH,GAAG,IAAImH,EAAEL,KAAKhF,EAAE,IAAIsF,OAAOC,UAAUP,KAAKC,UAAUjF,EAAEwF,gBAAgBtH,EAAE,YAAY,IAAIuH,EAAET,KAAKC,UAAUS,cAAc,YAAY,GAAG,MAAMD,EAAE,CAACT,KAAKE,SAASzD,KAAKuD,KAAKW,gBAAgBF,EAAE,QAAQT,KAAKE,SAASU,KAAKZ,KAAKW,gBAAgBF,EAAE,QAAQT,KAAKE,SAAS5G,KAAK0G,KAAKW,gBAAgBF,EAAE,QAAQ,IAAIvH,EAAE,CAAC,EAAEmH,EAAEI,EAAEC,cAAc,UAAU,GAAG,MAAML,EAAE,CAACnH,EAAEuD,KAAKuD,KAAKW,gBAAgBN,EAAE,QAAQnH,EAAE2H,MAAM,CAAC,EAAE,IAAI7F,EAAEqF,EAAEK,cAAc,SAAS,MAAM1F,IAAI9B,EAAE2H,MAAMrC,GAAGxD,EAAEtD,aAAa,MAAMwB,EAAE2H,MAAMC,OAAO9F,EAAEtD,aAAa,WAAW,IAAI+I,EAAE,CAAC,EAAEM,EAAEV,EAAEK,cAAc,QAAQ,MAAMK,IAAIN,EAAEX,KAAKiB,EAAErJ,aAAa,QAAQ+I,EAAEO,KAAKhB,KAAKW,gBAAgBI,EAAE,QAAQN,EAAEpG,KAAK2F,KAAKW,gBAAgBI,EAAE,SAAS7H,EAAE2G,KAAKY,CAAC,CAACT,KAAKE,SAASe,OAAO/H,EAAE,IAAI8B,EAAE,CAAC,EAAE+F,EAAEf,KAAKkB,oBAAoBT,EAAE,QAAQ,MAAMM,IAAI/F,EAAE8E,KAAKiB,EAAErJ,aAAa,QAAQsD,EAAEgG,KAAKhB,KAAKW,gBAAgBI,EAAE,QAAQ/F,EAAEX,KAAK2F,KAAKW,gBAAgBI,EAAE,QAAQf,KAAKE,SAASL,KAAK7E,EAAE,CAAC,IAAI+F,EAAE,GAAGI,MAAMC,KAAKpB,KAAKC,UAAUoB,iBAAiB,QAAQ,IAAI,IAAInI,KAAK6H,EAAE,CAAC,IAAIjJ,EAAEiJ,EAAE7H,GAAG,IAAI8B,EAAE,CAAC,EAAEA,EAAEyB,KAAK4D,EAAEM,gBAAgB7I,EAAE,QAAQkD,EAAEsG,IAAIjB,EAAEM,gBAAgB7I,EAAE,OAAOkD,EAAEuG,IAAI3J,WAAWE,EAAEJ,aAAa,QAAQsD,EAAEwG,IAAI5J,WAAWE,EAAEJ,aAAa,QAAQ,IAAI+I,EAAE7I,WAAWyI,EAAEM,gBAAgB7I,EAAE,QAAQkD,EAAE5B,IAAIG,MAAMkH,GAAG,KAAKA,EAAEzF,EAAEyG,IAAIpB,EAAEM,gBAAgB7I,EAAE,OAAOkD,EAAE4F,KAAKP,EAAEM,gBAAgB7I,EAAE,QAAQ,IAAIX,EAAEkJ,EAAEM,gBAAgB7I,EAAE,QAAQkD,EAAE1B,KAAK,MAAMnC,EAAE,KAAK,IAAIuK,KAAKvK,GAAGkJ,EAAEzB,UAAU5F,KAAKgC,EAAE,CAAC,IAAI7D,EAAE,GAAGgK,MAAMC,KAAKpB,KAAKC,UAAUoB,iBAAiB,QAAQ,IAAI,IAAInI,KAAK/B,EAAE,CAAC,IAAI6D,EAAE7D,EAAE+B,GAAGuH,EAAE,CAAC,EAAEA,EAAEhE,KAAK4D,EAAEM,gBAAgB3F,EAAE,QAAQyF,EAAEgB,IAAIpB,EAAEM,gBAAgB3F,EAAE,OAAOyF,EAAEG,KAAKP,EAAEM,gBAAgB3F,EAAE,QAAQyF,EAAEkB,IAAItB,EAAEM,gBAAgB3F,EAAE,OAAOyF,EAAEmB,OAAOvB,EAAEM,gBAAgB3F,EAAE,UAAU,IAAI+F,EAAEV,EAAEa,oBAAoBlG,EAAE,QAAQyF,EAAEpG,KAAK,MAAM0G,EAAEA,EAAEc,UAAU,KAAK,IAAI/J,EAAE,CAAC,EAAEG,EAAE+C,EAAE0F,cAAc,QAAQ,MAAMzI,IAAIH,EAAEgI,KAAK7H,EAAEP,aAAa,QAAQI,EAAEkJ,KAAKX,EAAEM,gBAAgB1I,EAAE,QAAQH,EAAEuC,KAAKgG,EAAEM,gBAAgB1I,EAAE,SAASwI,EAAEZ,KAAK/H,EAAE,IAAIgK,EAAE,GAAG,IAAIC,EAAE,GAAGZ,MAAMC,KAAKpG,EAAEqG,iBAAiB,UAAU,IAAI,IAAInI,KAAK6I,EAAE,CAAC,IAAI/G,EAAE+G,EAAE7I,GAAGuH,EAAE,CAAC,EAAEA,EAAEc,IAAI3J,WAAWoD,EAAEtD,aAAa,QAAQ+I,EAAEe,IAAI5J,WAAWoD,EAAEtD,aAAa,QAAQ,IAAIqJ,EAAEnJ,WAAWyI,EAAEM,gBAAgB3F,EAAE,QAAQyF,EAAErH,IAAIG,MAAMwH,GAAG,KAAKA,EAAE,IAAIjJ,EAAEuI,EAAEM,gBAAgB3F,EAAE,QAAQyF,EAAEnH,KAAK,MAAMxB,EAAE,KAAK,IAAI4J,KAAK5J,GAAGgK,EAAE9I,KAAKyH,EAAE,CAACA,EAAEuB,SAAS3B,EAAE4B,eAAeH,GAAGrB,EAAEyB,UAAU7B,EAAE8B,cAAcL,GAAGrB,EAAE2B,OAAO/B,EAAEgC,YAAYP,EAAErB,EAAEuB,SAASM,OAAO7B,EAAE8B,OAAOT,EAAEzB,EAAE1B,OAAO3F,KAAKyH,EAAE,CAAC,IAAIxI,EAAE,GAAGkJ,MAAMC,KAAKpB,KAAKC,UAAUoB,iBAAiB,QAAQ,IAAI,IAAInI,KAAKjB,EAAE,CAAC,IAAI+C,EAAE/C,EAAEiB,GAAGuH,EAAE,CAAC,EAAEA,EAAEhE,KAAK4D,EAAEM,gBAAgB3F,EAAE,QAAQyF,EAAEgB,IAAIpB,EAAEM,gBAAgB3F,EAAE,OAAOyF,EAAEG,KAAKP,EAAEM,gBAAgB3F,EAAE,QAAQyF,EAAEkB,IAAItB,EAAEM,gBAAgB3F,EAAE,OAAOyF,EAAEmB,OAAOvB,EAAEM,gBAAgB3F,EAAE,UAAU,IAAI+F,EAAEV,EAAEa,oBAAoBlG,EAAE,QAAQyF,EAAEpG,KAAK,MAAM0G,EAAEA,EAAEc,UAAU,KAAK,IAAI/J,EAAE,CAAC,EAAEX,EAAE6D,EAAE0F,cAAc,QAAQ,MAAMvJ,IAAIW,EAAEgI,KAAK3I,EAAEO,aAAa,QAAQI,EAAEkJ,KAAKX,EAAEM,gBAAgBxJ,EAAE,QAAQW,EAAEuC,KAAKgG,EAAEM,gBAAgBxJ,EAAE,SAASsJ,EAAEZ,KAAK/H,EAAE,IAAIiK,EAAE,GAAGS,EAAE,GAAGrB,MAAMC,KAAKpG,EAAEqG,iBAAiB,UAAU,IAAI,IAAInI,KAAKsJ,EAAE,CAAC,IAAIV,EAAEU,EAAEtJ,GAAG,IAAI8B,EAAE,CAAC,EAAEA,EAAEuG,IAAI3J,WAAWkK,EAAEpK,aAAa,QAAQsD,EAAEwG,IAAI5J,WAAWkK,EAAEpK,aAAa,QAAQ,IAAI+I,EAAE7I,WAAWyI,EAAEM,gBAAgBmB,EAAE,QAAQ9G,EAAE5B,IAAIG,MAAMkH,GAAG,KAAKA,EAAE,IAAIM,EAAEV,EAAEM,gBAAgBmB,EAAE,QAAQ9G,EAAE1B,KAAK,MAAMyH,EAAE,KAAK,IAAIW,KAAKX,GAAGgB,EAAE/I,KAAKgC,EAAE,CAACyF,EAAEuB,SAAS3B,EAAE4B,eAAeF,GAAGtB,EAAEyB,UAAU7B,EAAE8B,cAAcJ,GAAGtB,EAAE2B,OAAO/B,EAAEgC,YAAYN,EAAEtB,EAAEuB,SAASM,OAAO7B,EAAE8B,OAAOR,EAAE1B,EAAE3B,OAAO1F,KAAKyH,EAAE,CAAC,EAAEV,EAAUI,UAAUQ,gBAAgB,SAASzH,EAAEmH,GAAG,IAAIrF,EAAE9B,EAAEwH,cAAcL,GAAG,OAAO,MAAMrF,EAAE,MAAMA,EAAE6G,UAAU7G,EAAE6G,UAAU7G,EAAEyH,WAAW,GAAGC,KAAK1H,CAAC,EAAE+E,EAAUI,UAAUe,oBAAoB,SAAShI,EAAEmH,GAAG,IAAIrF,EAAE9B,EAAEmI,iBAAiBhB,GAAGI,EAAEzF,EAAE,GAAG,GAAGA,EAAE9D,OAAO,EAAE,CAAC,IAAI8D,EAAE9B,EAAEuJ,WAAW,IAAIE,OAAO3H,EAAE4H,KAAK5H,EAAE2H,KAAKC,KAAKC,UAAUxC,IAAII,EAAEmC,KAAK,CAAC,OAAOnC,CAAC,EAAEV,EAAUI,UAAU8B,eAAe,SAAS/I,GAAG,IAAImH,EAAE,CAAC,EAAErF,EAAE,EAAEyF,EAAE,GAAG,IAAI,IAAIM,EAAE,EAAEA,EAAE7H,EAAEhC,OAAO,EAAE6J,IAAI/F,GAAGgF,KAAK8C,oBAAoB5J,EAAE6H,GAAG7H,EAAE6H,EAAE,IAAIN,EAAEM,GAAG/F,EAAE,OAAOyF,EAAEvH,EAAEhC,OAAO,GAAG8D,EAAEqF,EAAE0C,MAAM/H,EAAEqF,EAAEiC,MAAM7B,EAAEJ,CAAC,EAAEN,EAAUI,UAAU2C,oBAAoB,SAAS5J,EAAEmH,GAAG,IAAIrF,EAAE,CAAC,EAAEA,EAAEuG,IAAIrI,EAAEqI,IAAIvG,EAAEwG,IAAItI,EAAEsI,IAAI,IAAIf,EAAE,CAAC,EAAEA,EAAEc,IAAIlB,EAAEkB,IAAId,EAAEe,IAAInB,EAAEmB,IAAI,IAAIT,EAAEiC,KAAKC,GAAG,IAAInL,EAAEkD,EAAEuG,IAAIR,EAAE5J,EAAEsJ,EAAEc,IAAIR,EAAEgB,EAAEiB,KAAKE,KAAKzC,EAAEc,IAAIvG,EAAEuG,KAAKR,EAAE,GAAG9I,EAAE+K,KAAKE,KAAKzC,EAAEe,IAAIxG,EAAEwG,KAAKT,EAAE,GAAGe,EAAEC,EAAEA,EAAEiB,KAAKG,IAAIrL,GAAGkL,KAAKG,IAAIhM,GAAGc,EAAEA,EAAE,OAAe,EAAE+K,KAAKI,MAAMJ,KAAKK,KAAKvB,GAAGkB,KAAKK,KAAK,EAAEvB,IAA9C,MAAkD,EAAE/B,EAAUI,UAAUgC,cAAc,SAASjJ,GAAG,IAAI,IAAImH,EAAE,EAAErF,EAAE,EAAEyF,EAAE,CAAC,EAAEM,EAAE,EAAEA,EAAE7H,EAAEhC,OAAO,EAAE6J,IAAI,CAAC,IAAIN,EAAEvH,EAAE6H,EAAE,GAAG3H,IAAItB,EAAEoB,EAAE6H,GAAG3H,IAAI,GAAG,OAAOqH,GAAG,OAAO3I,EAAE,CAAC,IAAIoB,EAAEtB,WAAW6I,GAAG7I,WAAWE,GAAGoB,EAAE,EAAE8B,GAAG9B,EAAEA,EAAE,IAAImH,GAAGnH,EAAE,CAAC,CAAC,IAAI,IAAIpB,EAAE,GAAGX,EAAE,EAAE4K,GAAGhB,EAAE,EAAE7H,EAAEhC,QAAQ6J,EAAEgB,EAAEhB,IAAK,GAAG,OAAO7H,EAAE6H,GAAG3H,IAAI,CAAC,IAAInB,EAAEL,WAAWsB,EAAE6H,GAAG3H,KAAKtB,EAAEkB,KAAKf,GAAGd,GAAGc,CAAC,CAAE,OAAOwI,EAAE6C,IAAIN,KAAKM,IAAIC,MAAM,KAAKzL,IAAI,KAAK2I,EAAE+C,IAAIR,KAAKQ,IAAID,MAAM,KAAKzL,IAAI,KAAK2I,EAAEgD,IAAIT,KAAKU,IAAIrD,IAAI,KAAKI,EAAEkD,IAAIX,KAAKU,IAAI1I,IAAI,KAAKyF,EAAEmD,IAAIzM,EAAEW,EAAEZ,QAAQ,KAAKuJ,CAAC,EAAEV,EAAUI,UAAUkC,YAAY,SAASnJ,EAAEmH,GAAG,IAAIrF,EAAE,GAAG,IAAI,IAAIyF,EAAE,EAAEA,EAAEvH,EAAEhC,OAAO,EAAEuJ,IAAI,CAAC,IAAIM,EAAE7H,EAAEuH,GAAG3I,EAAE,KAAKoB,EAAEuH,EAAE,GAAGrH,IAAI2H,EAAE3H,MAAMiH,EAAEI,EAAE,GAAGJ,EAAEI,IAAIzF,EAAEhC,KAAKlB,EAAE,CAAC,OAAOkD,CAAC,EAAE+E,EAAUI,UAAUxJ,UAAU,WAAW,IAAIuC,EAAE,CAACmB,KAAK,oBAAoBC,SAAS,GAAGkC,WAAW,CAACC,KAAKuD,KAAKE,SAASzD,KAAKmE,KAAKZ,KAAKE,SAASU,KAAKtH,KAAK0G,KAAKE,SAAS5G,KAAK2H,OAAOjB,KAAKE,SAASe,OAAOpB,KAAKG,KAAKE,SAASL,OAAO,IAAI8C,OAAO3C,KAAKtB,OAAO,CAAC,IAAI+B,EAAET,KAAKtB,OAAOiE,KAAK,IAAItC,EAAE,CAAChG,KAAK,UAAUiE,SAAS,CAACjE,KAAK,aAAab,YAAY,IAAIgD,WAAW,CAAC,GAAG,IAAImG,OAAOtC,EAAE7D,WAAWC,KAAKgE,EAAEhE,KAAK4D,EAAE7D,WAAWiF,IAAIhB,EAAEgB,IAAIpB,EAAE7D,WAAWoE,KAAKH,EAAEG,KAAKP,EAAE7D,WAAWmF,IAAIlB,EAAEkB,IAAItB,EAAE7D,WAAWoF,OAAOnB,EAAEmB,OAAOvB,EAAE7D,WAAWqD,KAAKY,EAAEZ,KAAKQ,EAAE7D,WAAWnC,KAAKoG,EAAEpG,KAAKoG,EAAE8B,OAAO,CAAC,IAAIrJ,EAAEuH,EAAE8B,OAAOI,MAAM3H,EAAE,IAAIhC,KAAKE,EAAEsI,KAAKxG,EAAEhC,KAAKE,EAAEqI,KAAKvG,EAAEhC,KAAKE,EAAEE,KAAKiH,EAAE/B,SAAS9E,YAAYR,KAAKgC,EAAE,CAAC9B,EAAEoB,SAAStB,KAAKqH,EAAE,CAAC,IAAIsC,OAAO3C,KAAKrB,OAAO,CAAC,IAAI8B,EAAET,KAAKrB,OAAOgE,KAAkF,IAAIA,OAAjFtC,EAAE,CAAChG,KAAK,UAAUiE,SAAS,CAACjE,KAAK,aAAab,YAAY,IAAIgD,WAAW,CAAC,IAAgBA,WAAWC,KAAKgE,EAAEhE,KAAK4D,EAAE7D,WAAWiF,IAAIhB,EAAEgB,IAAIpB,EAAE7D,WAAWoE,KAAKH,EAAEG,KAAKP,EAAE7D,WAAWmF,IAAIlB,EAAEkB,IAAItB,EAAE7D,WAAWoF,OAAOnB,EAAEmB,OAAOvB,EAAE7D,WAAWqD,KAAKY,EAAEZ,KAAKQ,EAAE7D,WAAWnC,KAAKoG,EAAEpG,KAAKoG,EAAE8B,OAAO,CAAC,IAAIrJ,EAAEuH,EAAE8B,OAAOI,KAAK,IAAI3H,GAAGA,EAAE,IAAIhC,KAAKE,EAAEsI,KAAKxG,EAAEhC,KAAKE,EAAEqI,KAAKvG,EAAEhC,KAAKE,EAAEE,KAAKiH,EAAE/B,SAAS9E,YAAYR,KAAKgC,EAAE,CAAC9B,EAAEoB,SAAStB,KAAKqH,EAAE,CAAC,IAAIsC,OAAO3C,KAAKpB,UAAU,CAAC,IAAI5D,EAAEgF,KAAKpB,UAAU+D,MAAMtC,EAAE,CAAChG,KAAK,UAAUiE,SAAS,CAACjE,KAAK,QAAQb,YAAY,IAAIgD,WAAW,CAAC,IAAIA,WAAWC,KAAKzB,EAAEyB,KAAK4D,EAAE7D,WAAW8E,IAAItG,EAAEsG,IAAIjB,EAAE7D,WAAWiF,IAAIzG,EAAEyG,IAAIpB,EAAE7D,WAAWoE,KAAK5F,EAAE4F,KAAKP,EAAE/B,SAAS9E,YAAY,CAACwB,EAAEwG,IAAIxG,EAAEuG,IAAIvG,EAAE5B,KAAKF,EAAEoB,SAAStB,KAAKqH,EAAE,CAAC,OAAOnH,CAAC,EAA+Be,EAAQ,MAARA,GAA0BxD,EAAOC,QAAQqJ,C,oBCS1nM,SAAS8D,IAAU,CAJnBpN,EAAOC,QAAU,WACf,OAAOmN,CACT,C,wBCPA,qBAAuB,YAAY,WAAY,IAAIxD,EAAE,GAAGc,MAAMnB,KAAK8D,UAAU,CAACC,OAAO,CAAC,EAAEC,IAAI,WAAW,OAAOhE,KAAKiE,gBAAgBC,iBAAiB,EAAEnK,QAAQ,WAAW,IAAIb,EAAEpB,EAAE2I,EAAEM,EAAE,IAAiDN,EAAE,EAAEM,GAAjDjJ,EAAE,GAAGqM,UAAUjN,OAAOmJ,EAAEe,KAAK+C,UAAU,GAAG,IAAWjN,OAAOuJ,EAAEM,EAAEN,IAAIvH,EAAEpB,EAAE2I,GAAGT,KAAKiE,gBAAgBG,eAAelL,GAAG,OAAOpB,EAAEZ,MAAM,EAAE+M,cAAc,WAAW,OAAO,MAAMjE,KAAKqE,WAAWrE,KAAKqE,WAAWrE,KAAKqE,WAAW,IAAInL,EAAEoL,UAAU,EAAG,GAAElD,KAAKpB,KAAM,GAAEoB,KAAlapB,MAA0a,IAAI9G,EAA9a8G,KAAkb8D,WAAU,YAAY,WAAY5K,EAAE6K,OAAOQ,KAAK,CAACC,GAAG,CAACC,KAAK,CAACC,SAAS,CAAC,SAAS,SAAS,UAAU,YAAY,WAAW,SAAS,YAAYC,aAAa,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAOC,WAAW,CAAC,UAAU,WAAW,QAAQ,QAAQ,MAAM,OAAO,OAAO,SAAS,YAAY,UAAU,WAAW,YAAYC,eAAe,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAOC,UAAU,YAAYC,MAAM,QAAQC,SAAS,WAAWC,GAAG,YAAYC,QAAQ,CAAC,QAAU,YAAYC,SAAS,UAAU7L,KAAK,CAAC8L,GAAG,KAAKC,GAAG,KAAKC,SAAS,WAAWC,WAAW,YAAYC,QAAQ,aAAaC,OAAO,SAASC,QAAQ,UAAUC,OAAO,SAASC,QAAQ,UAAUC,KAAK,OAAOC,MAAM,QAAQZ,QAAQ,CAAC,QAAU,YAAYa,SAAS,CAACC,GAAG,mBAAmBd,QAAQ,CAAC,QAAU,6BAA8B,GAAE9D,KAAKpB,MAAM,WAAW9G,EAAE6K,OAAOkC,OAAO,KAAK/M,EAAE6K,OAAOmC,cAAc,IAAI,EAAE9E,KAAKpB,MAAM,WAAW9G,EAAE6K,OAAOoC,cAAc,GAAG,EAAE/E,KAAKpB,MAAM,WAAW,IAAIK,EAAEvI,EAAE2I,EAAEA,GAAGlH,MAAMmI,KAAKtB,MAAM,8BAA8BlH,EAAEkN,UAAU,SAAS/F,GAAG,OAAOA,EAAEA,EAAEtF,WAAW0F,IAAIJ,EAAEvI,EAAEuI,IAAI,IAAIqB,KAAKA,KAAKtB,MAAMC,GAAG,EAAEA,EAAE,mEAAmEvI,EAAE,SAASoB,GAAG,IAAIpB,EAAE2I,EAAEM,EAAE5J,EAAEc,EAAE8J,EAAED,EAAExC,EAAEtE,EAAE,GAAG+F,EAAE7H,EAAEmN,MAAMhG,GAAG,OAAOU,EAAE,GAAGzB,EAAEyB,EAAE,GAAG9I,EAAE8I,EAAE,GAAGjJ,EAAEiJ,EAAE,GAAGN,EAAEM,EAAE,GAAG5J,EAAE4J,EAAE,GAAGe,EAAEf,EAAE,GAAU,OAAP/F,EAAE+F,EAAE,MAAagB,EAAE/G,EAAEpC,QAAQ,IAAI,KAAK0G,EAAE,IAAIrH,EAAE,IAAIH,EAAE,IAAI2I,EAAE,IAAItJ,EAAE,IAAI2K,EAAE,OAAO,CAACC,EAAE,CAAC,EAAEX,KAAKpB,MAAM,WAAW9G,EAAEoN,uBAAuB,WAAW,IAAIjG,EAAEnH,EAAEpB,EAAE2I,EAAEM,EAAE5J,EAAE,OAAOkJ,EAAEkG,SAASC,gBAAgBtN,EAAE,OAAOpB,EAAE,OAAO2I,EAAE,OAAOM,EAAE,OAAO5J,EAAEkJ,EAAEoG,SAAStP,EAAEkJ,EAAEqG,iBAAiB3F,EAAEV,EAAEsG,uBAAuBlG,EAAEJ,EAAEuG,oBAAoB9O,EAAEuI,EAAEwG,kBAAkB,SAASxG,EAAEvI,GAAG,IAAI,MAAMuI,EAAEA,EAAEyG,cAAS,KAAUC,KAAKC,aAAa,OAAO9N,EAAEkI,KAAKf,EAAEvI,EAAE,CAAC,CAAhS,EAAmS,EAAEsJ,KAAKpB,MAAM,WAAW,IAAIK,EAAEvI,EAAE2I,EAAEJ,EAAEnH,EAAE6K,OAAOtD,EAAEJ,EAAEkE,KAAKrL,EAAE+N,aAAa,SAASlG,EAAE5J,GAAG,IAAIc,EAAE8J,EAAE,OAAO,MAAMhB,IAAIA,EAAE,IAAI9I,GAAG,MAAMd,EAAEA,EAAE,CAAC8O,OAAO5F,EAAE4F,SAASA,OAAmB,OAAZlE,EAAEjK,EAAE2I,EAAExI,GAAG8I,IAAWgB,EAAE9J,IAAIoI,EAAE6F,cAAchN,EAAE+N,aAAalG,EAAE,CAACkF,OAAO5F,EAAE6F,qBAAgB,CAAM,EAAEhN,EAAEgO,UAAU,SAAS7G,EAAEvI,EAAE2I,GAAG,IAAIM,EAAE5J,EAAEc,EAAwC,IAAI8I,KAA1C,MAAMjJ,IAAIA,EAAE,CAAC,GAAGG,EAAEiB,EAAE+N,aAAa5G,EAAEI,GAAY3I,EAAEX,EAAEW,EAAEiJ,GAAG9I,EAAEA,EAAEW,QAAQ,IAAImI,EAAE,IAAI5J,GAAG,OAAOc,CAAC,EAAEH,EAAE,SAASuI,EAAEnH,GAAG,IAAIpB,EAAE2I,EAAEM,EAAE5J,EAAEc,EAAE,IAAIA,EAAEoI,EAAiBvI,EAAE,EAAEiJ,GAAnB5J,EAAE+B,EAAEL,MAAM,MAAa3B,OAAOY,EAAEiJ,EAAEjJ,IAAI,CAAC,GAAU,MAAMG,EAAbwI,EAAEtJ,EAAEW,IAAc,OAAO,KAAKG,EAAEA,EAAEwI,EAAE,CAAC,OAAOxI,CAAC,CAAC,EAAEmJ,KAAKpB,MAAM,WAAW,IAAIK,EAAEvI,EAAE2I,EAAEM,EAAE5J,EAAEkJ,EAAEnH,EAAE+N,aAAa9P,EAAE+B,EAAEgO,UAAUhO,EAAEiO,SAASpG,EAAE,SAAS7H,EAAEjB,GAAG,IAAI8J,EAAED,EAAExC,EAAEtE,EAAEoM,EAAEhQ,EAAEiQ,EAAE,OAAOvF,EAAE5I,EAAEoO,SAASvF,EAAE7I,EAAEqO,UAAUH,EAAElO,EAAEsO,WAAWH,EAAEnO,EAAEuO,cAAcnI,EAAEpG,EAAEwO,WAAW1M,EAAE9B,EAAEyO,aAAavQ,EAAE8B,EAAE0O,aAAa3P,EAAEW,QAAQ,kCAAiC,SAASX,EAAEkD,EAAEqH,GAAG,OAAOA,GAAG,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,OAAOnC,EAAE,qBAAqByB,GAAG,IAAI,IAAI,OAAOzB,EAAE,iBAAiByB,GAAG,IAAI,IAAI,OAAOzB,EAAE,uBAAuB+G,GAAG,IAAI,IAAI,OAAO/G,EAAE,mBAAmB+G,GAAG,IAAI,IAAI,OAAOlO,EAAE6B,WAAW,IAAI,IAAI,OAAOjD,EAAEiK,EAAE5G,GAAG,IAAI,IAAI,OAAO4G,EAAE,IAAI,IAAI,OAAOjK,EAAEwH,EAAEnE,GAAG,IAAI,IAAI,OAAOrD,EAAEiJ,EAAE7H,EAAE,MAAMiC,GAAG,IAAI,IAAI,OAAO,IAAImE,GAAG,KAAKA,EAAE,IAAIA,EAAE,IAAI,GAAG,IAAI,IAAI,OAAOxH,EAAEsP,EAAE,EAAEjM,GAAG,IAAI,IAAI,OAAOrD,EAAEkD,EAAEG,GAAG,IAAI,IAAI,OAAOhE,EAAE,SAASmI,EAAE,GAAG,KAAK,OAAOuI,cAAc,IAAI,IAAI,OAAO1Q,EAAE,SAASmI,EAAE,GAAG,KAAK,OAAO,IAAI,IAAI,OAAOxH,EAAEV,EAAE+D,GAAG,IAAI,IAAI,OAAO2G,EAAE,IAAI,IAAI,OAAOhK,EAAEuP,EAAE,IAAIlM,GAAG,IAAI,IAAI,OAAOkM,EAAE,IAAI,IAAI,OAAO5G,EAAEvH,GAAG,GAAE,EAAEpB,EAAE,SAASuI,EAAEnH,GAAG,MAAc,MAAPA,EAAkBmH,GAAiB,IAAIA,GAAGc,OAAO,EAAG,EAAEV,EAAE,SAASJ,GAAG,IAAInH,EAAEpB,EAAE2I,EAAEM,EAAE5J,EAAE,OAAuB+B,EAAE,OAAOpB,GAAzBX,EAAEkJ,EAAEtF,YAAyBsL,MAAM,mBAAmBvO,EAAE,QAAG,GAAQ,KAAKgQ,KAAK5O,GAAGA,EAAEmN,MAAM,WAAW0B,KAAK,IAAI7O,GAAGA,EAAE,OAAOuH,EAAEtJ,EAAEkP,MAAM,sBAAsB5F,EAAE,QAAG,KAAWvH,EAAE,OAAO6H,EAAE5J,EAAEkP,MAAM,mBAAmBtF,EAAE,QAAG,GAA9C7H,EAAwD,EAAE,CAAC,EAAEkI,KAAKpB,MAAM,WAAW9G,EAAE8O,aAAa,WAAW,SAAS3H,EAAEA,EAAEnH,EAAEpB,GAAGkI,KAAKyE,KAAK,IAAI/C,KAAKA,KAAKuG,IAAI5H,EAAEnH,EAAE,IAAI8G,KAAKyE,KAAKyD,WAAWpQ,GAAGkI,KAAKmI,KAAKnI,KAAKyE,KAAK2D,iBAAiBpI,KAAKqI,MAAMrI,KAAKyE,KAAK6D,cAAc,EAAEtI,KAAKuI,IAAIvI,KAAKyE,KAAK+D,aAAaxI,KAAKyI,MAAMzI,KAAKyE,KAAKiE,SAAS,CAAC,OAAOrI,EAAEsI,SAAS,SAAStI,GAAG,OAAO,IAAIL,KAAKK,EAAEoH,cAAcpH,EAAEmH,WAAW,EAAEnH,EAAEkH,UAAU,EAAElH,EAAE0E,MAAM,WAAW,OAAO/E,KAAK2I,SAAS,IAAIjH,KAAK,EAAErB,EAAEF,UAAUyI,OAAO,SAASvI,GAAG,OAAO,MAAMA,EAAEA,EAAEoI,WAAM,KAAUzI,KAAKyI,KAAK,EAAEpI,EAAEF,UAAU0I,GAAG,SAASxI,GAAG,OAAOL,KAAK4I,OAAOvI,EAAE,EAAEA,EAAEF,UAAU2I,QAAQ,WAAW,OAAO9I,KAAK6I,GAAG7I,KAAK+I,YAAYhE,QAAQ,EAAE1E,EAAEF,UAAU6I,mBAAmB,SAAS3I,GAAG,OAAOL,KAAKmI,QAAQ,MAAM9H,EAAEA,EAAE8H,UAAK,EAAO,EAAE9H,EAAEF,UAAU8I,eAAe,WAAW,OAAOjJ,KAAKgJ,mBAAmBhJ,KAAK+I,YAAYhE,QAAQ,EAAE1E,EAAEF,UAAU+I,UAAU,SAAS7I,GAAG,GAAGA,EAAE,OAAOL,KAAKyE,KAAKpE,EAAEoE,MAAM,KAAK,EAAEpE,EAAEF,UAAUgJ,WAAW,WAAW,OAAOnJ,KAAK+I,YAAYhE,QAAQmE,UAAUlJ,KAAK,EAAEK,CAAC,CAAz4B,EAA44B,EAAEe,KAAKpB,MAAM,WAAW,IAAIK,EAAEvI,EAAE2I,EAAE3I,EAAEoB,EAAEiO,SAAS1G,EAAEvH,EAAEgO,UAAU7G,EAAEnH,EAAE+N,aAAa/N,EAAEkQ,aAAa,WAAW,SAASrI,EAAEV,GAAGL,KAAKyE,KAAKpE,EAAEL,KAAKqJ,aAAanQ,EAAE8O,aAAaW,SAAS3I,KAAKyE,KAAK,CAAC,OAAO1D,EAAEZ,UAAUpF,SAAS,WAAW,IAAIsF,EAAEnH,EAAE,OAAOA,EAAE8G,KAAKsJ,uBAAuB7I,EAAE,eAAe,CAACnH,KAAKJ,KAAKmH,EAAEL,KAAKuJ,oBAAoBrQ,EAAE8G,KAAKwJ,eAAe/I,EAAE,cAAc,CAACgE,KAAKpE,EAAE/G,KAAKJ,KAAKuH,EAAE,UAAU,CAACgE,KAAKzE,KAAKyJ,gBAAgB,EAAE1I,EAAEZ,UAAUuJ,mBAAmB,WAAW,OAAO1J,KAAKqJ,aAAaP,UAAU9I,KAAKwJ,eAAexJ,KAAKyJ,cAAc,EAAE1I,EAAEZ,UAAUmJ,oBAAoB,WAAW,IAAIjJ,EAAEnH,EAAEpB,EAAEiJ,EAAE5J,EAAE,OAAOW,GAAG,IAAI4J,MAAMgH,UAAU1I,KAAKyE,KAAKiE,UAAU3H,EAAEiC,KAAK2G,MAAM7R,EAAE,KAAKoB,EAAE8J,KAAK2G,MAAM5I,EAAE,IAAIV,EAAE2C,KAAK2G,MAAMzQ,EAAE,IAAIpB,EAAE,EAAE,KAAKiJ,EAAE,IAAI5J,EAAEsJ,EAAE,eAAeA,EAAE,gBAAgB,CAACnH,KAAKnC,KAAK4J,EAAE,GAAGA,EAAE,IAAIN,EAAE,gBAAgBM,EAAE,IAAI5J,EAAEsJ,EAAE,eAAeA,EAAE,gBAAgB,CAACnH,KAAKnC,KAAK+B,EAAE,GAAGA,EAAE,IAAIuH,EAAE,gBAAgBvH,EAAE,IAAI/B,EAAEsJ,EAAE,aAAaA,EAAE,kBAAkB,CAACnH,KAAKnC,KAAKkJ,EAAE,GAAGA,EAAE,IAAII,EAAE,cAAc,EAAE,EAAEM,EAAEZ,UAAUoJ,gBAAgB,WAAW,OAAOvJ,KAAKqJ,aAAaF,cAAc,KAAK,EAAE,OAAO1I,EAAE,cAAc,KAAK,EAAE,OAAOA,EAAE,kBAAkB,KAAK,EAAE,OAAOA,EAAE,iBAAiB,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO3I,EAAEkI,KAAKyE,KAAK,MAAM,QAAQ,MAAM,GAAG,EAAE1D,EAAEZ,UAAUsJ,aAAa,WAAW,IAAIvQ,EAAE,OAAOA,EAAEmH,EAAEL,KAAKqJ,aAAaJ,iBAAiB,wBAAwB,wBAAwBnR,EAAEkI,KAAKyE,KAAKvL,EAAE,EAAE6H,EAAEZ,UAAUqJ,aAAa,WAAW,OAAO1R,EAAEkI,KAAKyE,KAAKpE,EAAE,wBAAwB,EAAEU,CAAC,CAA/0C,EAAk1C,EAAEK,KAAKpB,MAAM,WAAW,IAAIK,EAAEvI,EAAE,SAASuI,EAAEnH,GAAG,OAAO,WAAW,OAAOmH,EAAEkD,MAAMrK,EAAEiL,UAAU,CAAC,EAAE9D,EAAEnH,EAAEoN,uBAAuBpN,EAAE0Q,aAAa,WAAW,SAAS1Q,EAAEmH,EAAEnH,GAAG8G,KAAK6J,SAASxJ,EAAEL,KAAK8J,SAAS5Q,EAAE8G,KAAK+J,iBAAiBjS,EAAEkI,KAAK+J,iBAAiB/J,MAAMA,KAAKgK,iBAAiBlS,EAAEkI,KAAKgK,iBAAiBhK,KAAK,CAAC,OAAO9G,EAAEiH,UAAU8J,MAAM,WAAW,IAAIjK,KAAKkK,QAAQ,OAAOlK,KAAKmK,+BAA+BnK,KAAKoK,2BAA2BpK,KAAKkK,SAAQ,CAAE,EAAEhR,EAAEiH,UAAUgK,4BAA4B,WAAiB,GAAG,oBAAoBE,kBAAkB,OAAOA,iBAAiB,OAAS,IAAIA,iBAAiBrK,KAAKgK,kBAAoBM,QAAQ/D,SAASC,gBAAgB,CAAC+D,WAAU,EAAGC,SAAQ,KAAK,CAAE,EAAEtR,EAAEiH,UAAUiK,yBAAyB,WAAW,OAAOK,iBAAiB,kBAAkBzK,KAAK+J,kBAAiB,IAAI,CAAE,EAAE7Q,EAAEiH,UAAUuK,wBAAwB,SAASxR,GAAG,IAAIpB,EAAE,OAAOA,EAAE,IAAI,MAAMoB,EAAEA,EAAE4N,cAAS,KAAUC,KAAKC,eAAe3G,EAAEnH,EAAE8G,KAAK6J,WAAW/R,EAAEkB,KAAKE,GAAGpB,EAAEkB,KAAKuK,MAAMzL,EAAEoB,EAAEmI,iBAAiBrB,KAAK6J,YAAY/R,CAAC,EAAEoB,EAAEiH,UAAU6J,iBAAiB,SAAS3J,GAAG,IAAInH,EAAEpB,EAAE2I,EAAEM,EAAE5J,EAAEc,EAAE8J,EAAED,EAAE,IAAI5I,EAAE,GAAGpB,EAAE,EAAEiJ,EAAEV,EAAEnJ,OAAOY,EAAEiJ,EAAEjJ,IAAI,GAA0B,eAAnBG,EAAEoI,EAAEvI,IAAKuC,KAAsB,IAAmBoG,EAAE,EAAEtJ,GAAnB2K,EAAE7J,EAAE0S,YAAmBzT,OAAOuJ,EAAEtJ,EAAEsJ,IAAIsB,EAAED,EAAErB,GAAGvH,EAAEF,KAAKuK,MAAMrK,EAAE8G,KAAK0K,wBAAwB3I,IAAI,OAAO/B,KAAK4K,OAAO1R,EAAE,EAAEA,EAAEiH,UAAU4J,iBAAiB,SAAS1J,GAAG,IAAInH,EAAE,OAAOA,EAAE8G,KAAK0K,wBAAwBrK,EAAEwK,QAAQ7K,KAAK4K,OAAO1R,EAAE,EAAEA,EAAEiH,UAAUyK,OAAO,SAASvK,GAAG,GAAG,MAAMA,EAAEA,EAAEnJ,YAAO,EAAO,MAAM,mBAAmB8I,KAAK8J,SAAS9J,KAAK8J,SAASzJ,QAAG,CAAM,EAAEnH,CAAC,CAA10C,EAA60C,EAAEkI,KAAKpB,MAAM,WAAW,IAAIK,EAAEvI,EAAE2I,EAAEM,EAAkEN,EAAEvH,EAAEkN,UAAUrF,EAAE7H,EAAEiO,SAASrP,EAAEoB,EAAE+N,aAAa5G,EAAEnH,EAAE6K,OAAO7K,EAAEoL,WAAW,WAAW,SAASrM,IAAI+H,KAAKkE,gBAA/J,SAAS7D,EAAEnH,GAAG,OAAO,WAAW,OAAOmH,EAAEkD,MAAMrK,EAAEiL,UAAU,CAAC,CAAmHhN,CAAE6I,KAAKkE,gBAAgBlE,MAAMA,KAAK8K,aAAa,IAAI5R,EAAE0Q,aAAa7H,EAAE/B,KAAKkE,gBAAgB,CAAC,IAAInC,EAAED,EAAExC,EAAE,OAAOyC,EAAE,yCAAyC9J,EAAEkI,UAAU8J,MAAM,WAAW,IAAIjK,KAAKkK,QAAQ,OAAOlK,KAAKkE,kBAAkBlE,KAAK+K,aAAa/K,KAAK8K,aAAab,QAAQjK,KAAKkK,SAAQ,CAAE,EAAEjS,EAAEkI,UAAU4K,WAAW,WAAW,IAAI7R,EAAE,GAAGA,EAAEmH,EAAE8F,cAAc,OAAO,MAAMnG,KAAKgL,MAAMhL,KAAKgL,MAAMhL,KAAKgL,MAAMC,YAAYjL,KAAKkE,gBAAgBhL,EAAE,EAAEjB,EAAEkI,UAAU+D,gBAAgB,SAAS7D,GAAG,IAAInH,EAAEpB,EAAE2I,EAAE,IAAI,MAAMJ,IAAIA,EAAEkG,SAASlF,iBAAiBU,IAAIjK,EAAE,EAAE2I,EAAEJ,EAAEnJ,OAAOY,EAAE2I,EAAE3I,IAAIoB,EAAEmH,EAAEvI,GAAGkI,KAAKoE,eAAelL,GAAG,OAAOmH,EAAEnJ,MAAM,EAAEe,EAAEkI,UAAUiE,eAAe,SAAS/D,GAAG,IAAInH,EAAE/B,EAAEc,EAAE8J,EAAE/G,EAAEoM,EAAE,GAAGjQ,EAAEkJ,EAAE3I,aAAa,YAAYO,EAAEoI,EAAE3I,aAAa,eAAeqK,EAAE1B,EAAE3I,aAAa,cAAcsD,EAAEyF,EAAEtJ,IAAIoC,MAAMyB,GAAG,OAAOqF,EAAE6K,aAAa,WAAW9D,EAAErG,EAAE/F,EAAElD,EAAE,6BAA6BuI,EAAE8K,aAAa,QAAQ/D,IAAI/G,EAAEhI,YAAYa,EAAE,WAAW,OAAO6I,GAAG,IAAI,OAAO,OAAOD,EAAEzB,GAAGU,EAAE/F,EAAE/C,GAAG,IAAI,OAAO,OAAO6J,EAAEzB,GAAGf,EAAEtE,GAAGyO,eAAe,IAAI,WAAW,OAAOnK,EAAEtE,GAAGD,WAAW,IAAI,eAAe,OAAOuE,EAAEtE,GAAG0O,qBAAqB,IAAI,UAAU,OAAOpK,EAAEtE,GAAGuO,kBAAkB,IAAI,kBAAkB,OAAOjK,EAAEtE,GAAGuO,mBAAmBjK,EAAEtE,GAAGyO,eAAe,CAA7S,GAAiTpJ,EAAE6K,aAAa,mBAAc,EAAO7K,EAAE8K,aAAa,aAAajS,EAAE,EAAE4I,EAAE,SAASzB,GAAG,OAAOA,EAAE8K,aAAa,iBAAiB,GAAG,EAAE7L,EAAE,SAASe,GAAG,OAAO,IAAInH,EAAEkQ,aAAa/I,EAAE,EAAEpI,CAAC,CAAt3C,EAAy3C,EAAEmJ,KAAKpB,MAAM,WAAW,IAAIK,EAAEvI,EAAE2I,EAAEM,EAAEA,GAAE,EAAGV,EAAE,WAAW,OAAOkG,SAAS6E,YAAY,aAAa7E,SAAS8E,WAAW,YAAY9E,SAAS8E,UAAU,EAAEvT,EAAE,SAASuI,GAAG,IAAInH,EAAE,OAAO,OAAOA,EAAE,mBAAmBoS,sBAAsBA,sBAAsBjL,QAAG,GAAQnH,EAAEqS,WAAWlL,EAAE,GAAG,EAAEI,EAAE,WAAiB,OAASvH,EAAE+K,gBAAkBgG,OAAO,EAAE/Q,EAAE+Q,MAAM,WAAW,IAAIlJ,EAAE,OAAOA,GAAE,EAAG,oBAAoBsJ,kBAAkB,OAAOA,kBAAkBhK,IAAII,IAAI3I,EAAE2I,EAAE,EAAEH,OAAOwD,YAAY5K,GAAGA,EAAE+Q,OAAO,EAAE7I,KAAKpB,KAAM,GAAEoB,KAAKpB,MAA+BvJ,EAAOC,QAAQD,EAAOC,QAAQwC,OAAiD,2BAARsS,EAAAA,GAAQ,iCAAE,GAAEpK,KAAKpB,K,8FCSlvT,IAAIyL,EAAgB,EAQhBC,EAA4B,SAQ5BC,EAAyB,SAEzBC,EAAI,GACJC,EAAI,GACJC,EAAI,GACJC,EAAI,GACJC,EAAI,GAeD,SAASC,EAAQ9S,EAAI+S,GAE1B,OADAA,EAAWA,GAAY,EA6TzB,SAAgBC,EAAKD,GAEnB,IAAIE,EAAW,QAAUD,EAAIE,QAC3BC,EAAY,QAAUH,EAAII,SAE5B,OAAOJ,EAAIK,WAAaL,EAAIM,YAaXJ,EAbkCF,EAAIE,QAa7BE,EAbsCJ,EAAII,SAahCC,EAb0CL,EAAIK,WAc9EE,EAAUC,EAAkBH,GAC5BI,EAAY5J,KAAK6J,MAAMR,EAAU,KACjCS,EAAS9J,KAAK6J,MAAMN,EAAW,KAAU,GAoCtBQ,EAnCAH,EAmCQI,EAnCGF,EAmCEG,EAnCMP,EAqCtCQ,EAAQD,EAAO,EACfE,EAAYzB,EAA0BrU,WAAW6V,GACjDE,EAAYzB,EAAuBtU,WAAW6V,GAG9CG,EAASF,EAAYJ,EAAS,EAC9BO,EAASF,EAAYJ,EACrBO,GAAW,EAEXF,EAASrB,IACXqB,EAASA,EAASrB,EAAIJ,EAAI,EAC1B2B,GAAW,IAGTF,IAAWxB,GAAMsB,EAAYtB,GAAKwB,EAASxB,IAAQwB,EAASxB,GAAKsB,EAAYtB,IAAM0B,IACrFF,KAGEA,IAAWvB,GAAMqB,EAAYrB,GAAKuB,EAASvB,IAAQuB,EAASvB,GAAKqB,EAAYrB,IAAMyB,MACrFF,IAEexB,GACbwB,IAIAA,EAASrB,IACXqB,EAASA,EAASrB,EAAIJ,EAAI,GAGxB0B,EAASvB,GACXuB,EAASA,EAASvB,EAAIH,EAAI,EAC1B2B,GAAW,GAGXA,GAAW,GAGPD,IAAWzB,GAAQuB,EAAYvB,GAAOyB,EAASzB,IAAWyB,EAASzB,GAAOuB,EAAYvB,IAAO0B,IACjGD,KAGIA,IAAWxB,GAAQsB,EAAYtB,GAAOwB,EAASxB,IAAWwB,EAASxB,GAAOsB,EAAYtB,IAAOyB,MACjGD,IAEezB,GACbyB,IAIAA,EAASvB,IACXuB,EAASA,EAASvB,EAAIH,EAAI,GAGZ4B,OAAOC,aAAaJ,GAAUG,OAAOC,aAAaH,IA5G8BlB,EAAS3Q,OAAO2Q,EAASlV,OAAS,EAAGgV,GAAYI,EAAU7Q,OAAO6Q,EAAUpV,OAAS,EAAGgV,GAoD1L,IAAyBa,EAAQC,EAAKC,EAEhCC,EACAC,EACAC,EAGAC,EACAC,EACAC,EAhDN,IAAmBlB,EAASE,EAAUC,EAChCE,EACAE,EACAE,CAfN,CAlUSY,CA8DT,SAAiBvU,GACf,IAMIwU,EACAC,EAAGC,EAAGC,EAAGlC,EAAGmC,EAGZC,EACAC,EAXAC,EAAM/U,EAAGoI,IACT4M,EAAOhV,EAAGqI,IACVT,EAAI,QACJqN,EAAa,UACbC,EAAK,MAILC,EAASC,EAASL,GAClBM,EAAUD,EAASJ,GAIvBF,EAAajL,KAAK6J,OAAOsB,EAAO,KAAO,GAAK,EAG/B,MAATA,IACFF,EAAa,IAIXC,GAAO,IAAQA,EAAM,IAAQC,GAAQ,GAAOA,EAAO,KACrDF,EAAa,IAIXC,GAAO,IAAQA,EAAM,KACnBC,GAAQ,GAAOA,EAAO,EACxBF,EAAa,GAENE,GAAQ,GAAOA,EAAO,GAC7BF,EAAa,GAENE,GAAQ,IAAQA,EAAO,GAC9BF,EAAa,GAENE,GAAQ,IAAQA,EAAO,KAC9BF,EAAa,KAOjBD,EAAgBO,EAHgB,GAAlBN,EAAa,GAAS,IAAM,GAK1CN,EAAmBS,GAAe,EAAIA,GAEtCR,EAAI7M,EAAIiC,KAAKK,KAAK,EAAI+K,EAAapL,KAAKE,IAAIoL,GAAUtL,KAAKE,IAAIoL,IAC/DT,EAAI7K,KAAKyL,IAAIH,GAAUtL,KAAKyL,IAAIH,GAChCR,EAAIH,EAAkB3K,KAAKG,IAAImL,GAAUtL,KAAKG,IAAImL,GAClD1C,EAAI5I,KAAKG,IAAImL,IAAWE,EAAUR,GAElCD,EAAIhN,IAAM,EAAIqN,EAAa,EAAI,EAAIA,EAAaA,EAAa,GAAK,EAAIA,EAAaA,EAAaA,EAAa,KAAOE,GAAU,EAAIF,EAAa,EAAI,EAAIA,EAAaA,EAAa,GAAK,GAAKA,EAAaA,EAAaA,EAAa,MAAQpL,KAAKE,IAAI,EAAIoL,IAAW,GAAKF,EAAaA,EAAa,IAAM,GAAKA,EAAaA,EAAaA,EAAa,MAAQpL,KAAKE,IAAI,EAAIoL,GAAW,GAAKF,EAAaA,EAAaA,EAAa,KAAQpL,KAAKE,IAAI,EAAIoL,IAEpb,IAAII,EAAcL,EAAKT,GAAKhC,GAAK,EAAIiC,EAAIC,GAAKlC,EAAIA,EAAIA,EAAI,GAAO,EAAI,GAAKiC,EAAIA,EAAIA,EAAI,GAAKC,EAAI,GAAKH,GAAmB/B,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,KAAS,IAEhJ+C,EAAeN,GAAMN,EAAIH,EAAI5K,KAAKyL,IAAIH,IAAW1C,EAAIA,EAAI,GAAK,EAAIiC,EAAI,EAAIC,EAAI,EAAIA,EAAIA,GAAKlC,EAAIA,EAAIA,EAAIA,EAAI,IAAQ,GAAK,GAAKiC,EAAIA,EAAIA,EAAI,IAAMC,EAAI,IAAMH,GAAmB/B,EAAIA,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,MACpMsC,EAAM,IACRS,GAAe,KAIjB,MAAO,CACLpC,SAAUvJ,KAAK2G,MAAMgF,GACrBtC,QAASrJ,KAAK2G,MAAM+E,GACpBlC,WAAYyB,EACZxB,WAAYmC,EAAoBV,GAEpC,CApIgBW,CAAQ,CACpBtN,IAAKpI,EAAG,GACRqI,IAAKrI,EAAG,KACN+S,EACN,CAkBO,SAAS4C,EAAQC,GACtB,IAAIC,EAAOC,EAAQC,EAAOH,EAAKlH,gBAC/B,OAAImH,EAAKzN,KAAOyN,EAAKxN,IACZ,CAACwN,EAAKxN,IAAKwN,EAAKzN,KAElB,EAAEyN,EAAKG,KAAOH,EAAKI,OAAS,GAAIJ,EAAKK,IAAML,EAAKM,QAAU,EACnE,CAQA,SAASf,EAASgB,GAChB,OAAQA,GAAOvM,KAAKC,GAAK,IAC3B,CASA,SAASuM,EAASC,GAChB,OAAiBA,EAAMzM,KAAKC,GAApB,GACV,CAoGA,SAASgM,EAAQ9C,GAEf,IAAIwC,EAAcxC,EAAII,SAClBmC,EAAavC,EAAIE,QACjBI,EAAaN,EAAIM,WACjBD,EAAaL,EAAIK,WAErB,GAAIA,EAAa,GAAKA,EAAa,GACjC,OAAO,KAGT,IAGImB,EAEA+B,EAAIC,EAAIC,EAAIC,EAAIC,EAChBC,EACAC,EAAIC,EAPJ5B,EAAK,MACLtN,EAAI,QACJqN,EAAa,UAEb8B,GAAM,EAAIlN,KAAKK,KAAK,aAAoB,EAAIL,KAAKK,KAAK,YAMtDpM,EAAIyX,EAAa,IACjBnX,EAAIoX,EAMJlC,EAAa,MACflV,GAAK,KAKPwY,EAAgC,GAAlBvD,EAAa,GAAS,IAAM,EAI1CmB,EAAmBS,oBAKnB6B,GAFAD,EADIzY,EAAI8W,EACC,oBAEO,EAAI6B,EAAK,EAAI,GAAKA,EAAKA,EAAKA,EAAK,IAAMlN,KAAKE,IAAI,EAAI8M,IAAO,GAAKE,EAAKA,EAAK,GAAK,GAAKA,EAAKA,EAAKA,EAAKA,EAAK,IAAMlN,KAAKE,IAAI,EAAI8M,GAAO,IAAME,EAAKA,EAAKA,EAAK,GAAMlN,KAAKE,IAAI,EAAI8M,GAG1LN,EAAK3O,EAAIiC,KAAKK,KAAK,EAAI+K,EAAapL,KAAKE,IAAI+M,GAAWjN,KAAKE,IAAI+M,IACjEN,EAAK3M,KAAKyL,IAAIwB,GAAWjN,KAAKyL,IAAIwB,GAClCL,EAAKjC,EAAkB3K,KAAKG,IAAI8M,GAAWjN,KAAKG,IAAI8M,GACpDJ,EAAS,UAAJ9O,EAAuBiC,KAAKmN,IAAI,EAAI/B,EAAapL,KAAKE,IAAI+M,GAAWjN,KAAKE,IAAI+M,GAAU,KAC7FH,EAAI7Y,GAAKyY,EAAKrB,GAEd,IAAI9M,EAAM0O,EAAWP,EAAK1M,KAAKyL,IAAIwB,GAAWJ,GAAOC,EAAIA,EAAI,GAAK,EAAI,EAAIH,EAAK,GAAKC,EAAK,EAAIA,EAAKA,EAAK,EAAIjC,GAAmBmC,EAAIA,EAAIA,EAAIA,EAAI,IAAM,GAAK,GAAKH,EAAK,IAAMC,EAAK,GAAKD,EAAKA,EAAK,mBAAwB,EAAIC,EAAKA,GAAME,EAAIA,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,KAC5PvO,EAAMiO,EAASjO,GAEf,IAGI6O,EAHA5O,GAAOsO,GAAK,EAAI,EAAIH,EAAKC,GAAME,EAAIA,EAAIA,EAAI,GAAK,EAAI,EAAIF,EAAK,GAAKD,EAAK,EAAIC,EAAKA,EAAK,EAAIjC,EAAkB,GAAKgC,EAAKA,GAAMG,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,KAAO9M,KAAKG,IAAI8M,GAInK,GAHAzO,EAAMuO,EAAaP,EAAShO,GAGxB2K,EAAID,SAAU,CAChB,IAAImE,EAAWpB,EAAQ,CACrB1C,SAAUJ,EAAII,SAAWJ,EAAID,SAC7BG,QAASF,EAAIE,QAAUF,EAAID,SAC3BO,WAAYN,EAAIM,WAChBD,WAAYL,EAAIK,aAElB4D,EAAS,CACPf,IAAKgB,EAAS9O,IACd6N,MAAOiB,EAAS7O,IAChB8N,OAAQ/N,EACR4N,KAAM3N,EAEV,MAEE4O,EAAS,CACP7O,IAAKA,EACLC,IAAKA,GAGT,OAAO4O,CACT,CAUA,SAASxB,EAAoBrN,GAG3B,IAAI+O,EAAmB,IA8DvB,OA5DK,IAAM/O,GAASA,GAAO,GACzB+O,EAAmB,IAEX,GAAK/O,GAASA,GAAO,GAC7B+O,EAAmB,IAEX,GAAK/O,GAASA,GAAO,GAC7B+O,EAAmB,IAEX,GAAK/O,GAASA,GAAO,GAC7B+O,EAAmB,IAEX,GAAK/O,GAASA,GAAO,GAC7B+O,EAAmB,IAEX,GAAK/O,GAASA,GAAO,GAC7B+O,EAAmB,IAEX,GAAK/O,GAASA,GAAO,GAC7B+O,EAAmB,IAEX,GAAK/O,GAASA,GAAO,GAC7B+O,EAAmB,IAEX,GAAK/O,GAASA,GAAO,EAC7B+O,EAAmB,IAEX,EAAI/O,GAASA,GAAO,EAC5B+O,EAAmB,IAEX,EAAI/O,GAASA,IAAQ,EAC7B+O,EAAmB,KAEV,EAAI/O,GAASA,IAAQ,GAC9B+O,EAAmB,KAEV,GAAK/O,GAASA,IAAQ,GAC/B+O,EAAmB,KAEV,GAAK/O,GAASA,IAAQ,GAC/B+O,EAAmB,KAEV,GAAK/O,GAASA,IAAQ,GAC/B+O,EAAmB,KAEV,GAAK/O,GAASA,IAAQ,GAC/B+O,EAAmB,KAEV,GAAK/O,GAASA,IAAQ,GAC/B+O,EAAmB,KAEV,GAAK/O,GAASA,IAAQ,GAC/B+O,EAAmB,KAEV,GAAK/O,GAASA,IAAQ,GAC/B+O,EAAmB,KAEV,GAAK/O,GAASA,IAAQ,KAC/B+O,EAAmB,KAEdA,CACT,CA2CA,SAAS3D,EAAkBxV,GACzB,IAAIuV,EAAUvV,EAAIsU,EAKlB,OAJgB,IAAZiB,IACFA,EAAUjB,GAGLiB,CACT,CAsFA,SAASwC,EAAOqB,GAEd,GAAIA,GAAoC,IAAtBA,EAAWrZ,OAC3B,KAAO,mCAWT,IARA,IAIIsZ,EAJAtZ,EAASqZ,EAAWrZ,OAEpBuZ,EAAO,KACPC,EAAK,GAELvZ,EAAI,GAGC,QAAS2Q,KAAK0I,EAAWD,EAAWI,OAAOxZ,KAAK,CACvD,GAAIA,GAAK,EACP,KAAO,kCAAoCoZ,EAE7CG,GAAMF,EACNrZ,GACF,CAEA,IAAIqV,EAAa9Q,SAASgV,EAAI,IAE9B,GAAU,IAANvZ,GAAWA,EAAI,EAAID,EAGrB,KAAO,kCAAoCqZ,EAG7C,IAAI9D,EAAa8D,EAAWI,OAAOxZ,KAGnC,GAAIsV,GAAc,KAAsB,MAAfA,GAAqC,MAAfA,GAAsBA,GAAc,KAAsB,MAAfA,GAAqC,MAAfA,EAC9G,KAAO,yBAA2BA,EAAa,iBAAmB8D,EAGpEE,EAAOF,EAAWK,UAAUzZ,EAAGA,GAAK,GAWpC,IATA,IAAI0Z,EAAMlE,EAAkBH,GAExBsE,EAqDN,SAA4B5X,EAAG2X,GAG7B,IAAIE,EAASrF,EAA0BrU,WAAWwZ,EAAM,GACpDG,EAAe,IACfC,GAAe,EAEnB,KAAOF,IAAW7X,EAAE7B,WAAW,IAAI,CAQjC,KAPA0Z,IACelF,GACbkF,IAEEA,IAAWjF,GACbiF,IAEEA,EAAS/E,EAAG,CACd,GAAIiF,EACF,KAAO,kBAAoB/X,EAE7B6X,EAASnF,EACTqF,GAAe,CACjB,CACAD,GAAgB,GAClB,CAEA,OAAOA,CACT,CA/EiBE,CAAmBT,EAAKE,OAAO,GAAIE,GAC9CM,EAgGN,SAA6BrZ,EAAG+Y,GAE9B,GAAI/Y,EAAI,IACN,KAAO,oCAAsCA,EAK/C,IAAIsZ,EAASzF,EAAuBtU,WAAWwZ,EAAM,GACjDQ,EAAgB,EAChBJ,GAAe,EAEnB,KAAOG,IAAWtZ,EAAET,WAAW,IAAI,CAUjC,KATA+Z,IACevF,GACbuF,IAEEA,IAAWtF,GACbsF,IAIEA,EAASrF,EAAG,CACd,GAAIkF,EACF,KAAO,kBAAoBnZ,EAE7BsZ,EAASxF,EACTqF,GAAe,CACjB,CACAI,GAAiB,GACnB,CAEA,OAAOA,CACT,CAjIkBC,CAAoBb,EAAKE,OAAO,GAAIE,GAM7CM,EAAYI,EAAe9E,IAChC0E,GAAa,IAIf,IAAIK,EAAYta,EAASC,EAEzB,GAAIqa,EAAY,IAAM,EACpB,KAAO,oKAAsKjB,EAG/K,IAIIkB,EAAeC,EAAkBC,EAJjCC,EAAMJ,EAAY,EAElBK,EAAa,EACbC,EAAc,EAalB,OAXIF,EAAM,IACRH,EAAgB,IAAWzO,KAAKmN,IAAI,GAAIyB,GACxCF,EAAmBnB,EAAWK,UAAUzZ,EAAGA,EAAIya,GAC/CC,EAAaja,WAAW8Z,GAAoBD,EAC5CE,EAAoBpB,EAAWK,UAAUzZ,EAAIya,GAC7CE,EAAcla,WAAW+Z,GAAqBF,GAMzC,CACLpF,QAJQwF,EAAaf,EAKrBvE,SAJSuF,EAAcX,EAKvB1E,WAAYA,EACZD,WAAYA,EACZN,SAAUuF,EAEd,CAqGA,SAASF,EAAe9E,GACtB,IAAIF,EACJ,OAAQE,GACR,IAAK,IACHF,EAAW,KACX,MACF,IAAK,IACHA,EAAW,IACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,EACX,MACF,IAAK,IACHA,EAAW,IACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,IAAK,IACHA,EAAW,IACX,MACF,IAAK,IACHA,EAAW,KACX,MACF,QACEA,GAAY,EAEd,GAAIA,GAAY,EACd,OAAOA,EAGP,KAAO,wBAA0BE,CAGrC,CAzsBA,MACER,QAASA,EACT8F,QA4BK,SAAiBhD,GACtB,IAAIC,EAAOC,EAAQC,EAAOH,EAAKlH,gBAC/B,GAAImH,EAAKzN,KAAOyN,EAAKxN,IACnB,MAAO,CAACwN,EAAKxN,IAAKwN,EAAKzN,IAAKyN,EAAKxN,IAAKwN,EAAKzN,KAE7C,MAAO,CAACyN,EAAKG,KAAMH,EAAKM,OAAQN,EAAKI,MAAOJ,EAAKK,IACnD,EAjCEP,QAASA,E","sources":["webpack://app/./node_modules/@bugsnag/js/browser/notifier.js","webpack://app/./node_modules/@mapbox/togeojson/togeojson.js","webpack://app/./node_modules/gpxparser/dist/GPXParser.min.js","webpack://app/./node_modules/jsdom-global/browser.js","webpack://app/./node_modules/local-time/app/assets/javascripts/local-time.js","webpack://app/./node_modules/mgrs/mgrs.js"],"sourcesContent":["module.exports = require('@bugsnag/browser')\n","var toGeoJSON = (function() {\n 'use strict';\n\n var removeSpace = /\\s*/g,\n trimSpace = /^\\s*|\\s*$/g,\n splitSpace = /\\s+/;\n // generate a short, numeric hash of a string\n function okhash(x) {\n if (!x || !x.length) return 0;\n for (var i = 0, h = 0; i < x.length; i++) {\n h = ((h << 5) - h) + x.charCodeAt(i) | 0;\n } return h;\n }\n // all Y children of X\n function get(x, y) { return x.getElementsByTagName(y); }\n function attr(x, y) { return x.getAttribute(y); }\n function attrf(x, y) { return parseFloat(attr(x, y)); }\n // one Y child of X, if any, otherwise null\n function get1(x, y) { var n = get(x, y); return n.length ? n[0] : null; }\n // https://developer.mozilla.org/en-US/docs/Web/API/Node.normalize\n function norm(el) { if (el.normalize) { el.normalize(); } return el; }\n // cast array x into numbers\n function numarray(x) {\n for (var j = 0, o = []; j < x.length; j++) { o[j] = parseFloat(x[j]); }\n return o;\n }\n // get the content of a text node, if any\n function nodeVal(x) {\n if (x) { norm(x); }\n return (x && x.textContent) || '';\n }\n // get the contents of multiple text nodes, if present\n function getMulti(x, ys) {\n var o = {}, n, k;\n for (k = 0; k < ys.length; k++) {\n n = get1(x, ys[k]);\n if (n) o[ys[k]] = nodeVal(n);\n }\n return o;\n }\n // add properties of Y to X, overwriting if present in both\n function extend(x, y) { for (var k in y) x[k] = y[k]; }\n // get one coordinate from a coordinate array, if any\n function coord1(v) { return numarray(v.replace(removeSpace, '').split(',')); }\n // get all coordinates from a coordinate array as [[],[]]\n function coord(v) {\n var coords = v.replace(trimSpace, '').split(splitSpace),\n o = [];\n for (var i = 0; i < coords.length; i++) {\n o.push(coord1(coords[i]));\n }\n return o;\n }\n function coordPair(x) {\n var ll = [attrf(x, 'lon'), attrf(x, 'lat')],\n ele = get1(x, 'ele'),\n // handle namespaced attribute in browser\n heartRate = get1(x, 'gpxtpx:hr') || get1(x, 'hr'),\n time = get1(x, 'time'),\n e;\n if (ele) {\n e = parseFloat(nodeVal(ele));\n if (!isNaN(e)) {\n ll.push(e);\n }\n }\n return {\n coordinates: ll,\n time: time ? nodeVal(time) : null,\n heartRate: heartRate ? parseFloat(nodeVal(heartRate)) : null\n };\n }\n\n // create a new feature collection parent object\n function fc() {\n return {\n type: 'FeatureCollection',\n features: []\n };\n }\n\n var serializer;\n if (typeof XMLSerializer !== 'undefined') {\n /* istanbul ignore next */\n serializer = new XMLSerializer();\n // only require xmldom in a node environment\n } else if (typeof exports === 'object' && typeof process === 'object' && !process.browser) {\n serializer = new (require('xmldom').XMLSerializer)();\n }\n function xml2str(str) {\n // IE9 will create a new XMLSerializer but it'll crash immediately.\n // This line is ignored because we don't run coverage tests in IE9\n /* istanbul ignore next */\n if (str.xml !== undefined) return str.xml;\n return serializer.serializeToString(str);\n }\n\n var t = {\n kml: function(doc) {\n\n var gj = fc(),\n // styleindex keeps track of hashed styles in order to match features\n styleIndex = {}, styleByHash = {},\n // stylemapindex keeps track of style maps to expose in properties\n styleMapIndex = {},\n // atomic geospatial types supported by KML - MultiGeometry is\n // handled separately\n geotypes = ['Polygon', 'LineString', 'Point', 'Track', 'gx:Track'],\n // all root placemarks in the file\n placemarks = get(doc, 'Placemark'),\n styles = get(doc, 'Style'),\n styleMaps = get(doc, 'StyleMap');\n\n for (var k = 0; k < styles.length; k++) {\n var hash = okhash(xml2str(styles[k])).toString(16);\n styleIndex['#' + attr(styles[k], 'id')] = hash;\n styleByHash[hash] = styles[k];\n }\n for (var l = 0; l < styleMaps.length; l++) {\n styleIndex['#' + attr(styleMaps[l], 'id')] = okhash(xml2str(styleMaps[l])).toString(16);\n var pairs = get(styleMaps[l], 'Pair');\n var pairsMap = {};\n for (var m = 0; m < pairs.length; m++) {\n pairsMap[nodeVal(get1(pairs[m], 'key'))] = nodeVal(get1(pairs[m], 'styleUrl'));\n }\n styleMapIndex['#' + attr(styleMaps[l], 'id')] = pairsMap;\n\n }\n for (var j = 0; j < placemarks.length; j++) {\n gj.features = gj.features.concat(getPlacemark(placemarks[j]));\n }\n function kmlColor(v) {\n var color, opacity;\n v = v || '';\n if (v.substr(0, 1) === '#') { v = v.substr(1); }\n if (v.length === 6 || v.length === 3) { color = v; }\n if (v.length === 8) {\n opacity = parseInt(v.substr(0, 2), 16) / 255;\n color = '#' + v.substr(6, 2) +\n v.substr(4, 2) +\n v.substr(2, 2);\n }\n return [color, isNaN(opacity) ? undefined : opacity];\n }\n function gxCoord(v) { return numarray(v.split(' ')); }\n function gxCoords(root) {\n var elems = get(root, 'coord', 'gx'), coords = [], times = [];\n if (elems.length === 0) elems = get(root, 'gx:coord');\n for (var i = 0; i < elems.length; i++) coords.push(gxCoord(nodeVal(elems[i])));\n var timeElems = get(root, 'when');\n for (var j = 0; j < timeElems.length; j++) times.push(nodeVal(timeElems[j]));\n return {\n coords: coords,\n times: times\n };\n }\n function getGeometry(root) {\n var geomNode, geomNodes, i, j, k, geoms = [], coordTimes = [];\n if (get1(root, 'MultiGeometry')) { return getGeometry(get1(root, 'MultiGeometry')); }\n if (get1(root, 'MultiTrack')) { return getGeometry(get1(root, 'MultiTrack')); }\n if (get1(root, 'gx:MultiTrack')) { return getGeometry(get1(root, 'gx:MultiTrack')); }\n for (i = 0; i < geotypes.length; i++) {\n geomNodes = get(root, geotypes[i]);\n if (geomNodes) {\n for (j = 0; j < geomNodes.length; j++) {\n geomNode = geomNodes[j];\n if (geotypes[i] === 'Point') {\n geoms.push({\n type: 'Point',\n coordinates: coord1(nodeVal(get1(geomNode, 'coordinates')))\n });\n } else if (geotypes[i] === 'LineString') {\n geoms.push({\n type: 'LineString',\n coordinates: coord(nodeVal(get1(geomNode, 'coordinates')))\n });\n } else if (geotypes[i] === 'Polygon') {\n var rings = get(geomNode, 'LinearRing'),\n coords = [];\n for (k = 0; k < rings.length; k++) {\n coords.push(coord(nodeVal(get1(rings[k], 'coordinates'))));\n }\n geoms.push({\n type: 'Polygon',\n coordinates: coords\n });\n } else if (geotypes[i] === 'Track' ||\n geotypes[i] === 'gx:Track') {\n var track = gxCoords(geomNode);\n geoms.push({\n type: 'LineString',\n coordinates: track.coords\n });\n if (track.times.length) coordTimes.push(track.times);\n }\n }\n }\n }\n return {\n geoms: geoms,\n coordTimes: coordTimes\n };\n }\n function getPlacemark(root) {\n var geomsAndTimes = getGeometry(root), i, properties = {},\n name = nodeVal(get1(root, 'name')),\n address = nodeVal(get1(root, 'address')),\n styleUrl = nodeVal(get1(root, 'styleUrl')),\n description = nodeVal(get1(root, 'description')),\n timeSpan = get1(root, 'TimeSpan'),\n timeStamp = get1(root, 'TimeStamp'),\n extendedData = get1(root, 'ExtendedData'),\n lineStyle = get1(root, 'LineStyle'),\n polyStyle = get1(root, 'PolyStyle'),\n visibility = get1(root, 'visibility');\n\n if (!geomsAndTimes.geoms.length) return [];\n if (name) properties.name = name;\n if (address) properties.address = address;\n if (styleUrl) {\n if (styleUrl[0] !== '#') {\n styleUrl = '#' + styleUrl;\n }\n\n properties.styleUrl = styleUrl;\n if (styleIndex[styleUrl]) {\n properties.styleHash = styleIndex[styleUrl];\n }\n if (styleMapIndex[styleUrl]) {\n properties.styleMapHash = styleMapIndex[styleUrl];\n properties.styleHash = styleIndex[styleMapIndex[styleUrl].normal];\n }\n // Try to populate the lineStyle or polyStyle since we got the style hash\n var style = styleByHash[properties.styleHash];\n if (style) {\n if (!lineStyle) lineStyle = get1(style, 'LineStyle');\n if (!polyStyle) polyStyle = get1(style, 'PolyStyle');\n }\n }\n if (description) properties.description = description;\n if (timeSpan) {\n var begin = nodeVal(get1(timeSpan, 'begin'));\n var end = nodeVal(get1(timeSpan, 'end'));\n properties.timespan = { begin: begin, end: end };\n }\n if (timeStamp) {\n properties.timestamp = nodeVal(get1(timeStamp, 'when'));\n }\n if (lineStyle) {\n var linestyles = kmlColor(nodeVal(get1(lineStyle, 'color'))),\n color = linestyles[0],\n opacity = linestyles[1],\n width = parseFloat(nodeVal(get1(lineStyle, 'width')));\n if (color) properties.stroke = color;\n if (!isNaN(opacity)) properties['stroke-opacity'] = opacity;\n if (!isNaN(width)) properties['stroke-width'] = width;\n }\n if (polyStyle) {\n var polystyles = kmlColor(nodeVal(get1(polyStyle, 'color'))),\n pcolor = polystyles[0],\n popacity = polystyles[1],\n fill = nodeVal(get1(polyStyle, 'fill')),\n outline = nodeVal(get1(polyStyle, 'outline'));\n if (pcolor) properties.fill = pcolor;\n if (!isNaN(popacity)) properties['fill-opacity'] = popacity;\n if (fill) properties['fill-opacity'] = fill === '1' ? properties['fill-opacity'] || 1 : 0;\n if (outline) properties['stroke-opacity'] = outline === '1' ? properties['stroke-opacity'] || 1 : 0;\n }\n if (extendedData) {\n var datas = get(extendedData, 'Data'),\n simpleDatas = get(extendedData, 'SimpleData');\n\n for (i = 0; i < datas.length; i++) {\n properties[datas[i].getAttribute('name')] = nodeVal(get1(datas[i], 'value'));\n }\n for (i = 0; i < simpleDatas.length; i++) {\n properties[simpleDatas[i].getAttribute('name')] = nodeVal(simpleDatas[i]);\n }\n }\n if (visibility) {\n properties.visibility = nodeVal(visibility);\n }\n if (geomsAndTimes.coordTimes.length) {\n properties.coordTimes = (geomsAndTimes.coordTimes.length === 1) ?\n geomsAndTimes.coordTimes[0] : geomsAndTimes.coordTimes;\n }\n var feature = {\n type: 'Feature',\n geometry: (geomsAndTimes.geoms.length === 1) ? geomsAndTimes.geoms[0] : {\n type: 'GeometryCollection',\n geometries: geomsAndTimes.geoms\n },\n properties: properties\n };\n if (attr(root, 'id')) feature.id = attr(root, 'id');\n return [feature];\n }\n return gj;\n },\n gpx: function(doc) {\n var i,\n tracks = get(doc, 'trk'),\n routes = get(doc, 'rte'),\n waypoints = get(doc, 'wpt'),\n // a feature collection\n gj = fc(),\n feature;\n for (i = 0; i < tracks.length; i++) {\n feature = getTrack(tracks[i]);\n if (feature) gj.features.push(feature);\n }\n for (i = 0; i < routes.length; i++) {\n feature = getRoute(routes[i]);\n if (feature) gj.features.push(feature);\n }\n for (i = 0; i < waypoints.length; i++) {\n gj.features.push(getPoint(waypoints[i]));\n }\n function getPoints(node, pointname) {\n var pts = get(node, pointname),\n line = [],\n times = [],\n heartRates = [],\n l = pts.length;\n if (l < 2) return {}; // Invalid line in GeoJSON\n for (var i = 0; i < l; i++) {\n var c = coordPair(pts[i]);\n line.push(c.coordinates);\n if (c.time) times.push(c.time);\n if (c.heartRate) heartRates.push(c.heartRate);\n }\n return {\n line: line,\n times: times,\n heartRates: heartRates\n };\n }\n function getTrack(node) {\n var segments = get(node, 'trkseg'),\n track = [],\n times = [],\n heartRates = [],\n line;\n for (var i = 0; i < segments.length; i++) {\n line = getPoints(segments[i], 'trkpt');\n if (line) {\n if (line.line) track.push(line.line);\n if (line.times && line.times.length) times.push(line.times);\n if (line.heartRates && line.heartRates.length) heartRates.push(line.heartRates);\n }\n }\n if (track.length === 0) return;\n var properties = getProperties(node);\n extend(properties, getLineStyle(get1(node, 'extensions')));\n if (times.length) properties.coordTimes = track.length === 1 ? times[0] : times;\n if (heartRates.length) properties.heartRates = track.length === 1 ? heartRates[0] : heartRates;\n return {\n type: 'Feature',\n properties: properties,\n geometry: {\n type: track.length === 1 ? 'LineString' : 'MultiLineString',\n coordinates: track.length === 1 ? track[0] : track\n }\n };\n }\n function getRoute(node) {\n var line = getPoints(node, 'rtept');\n if (!line.line) return;\n var prop = getProperties(node);\n extend(prop, getLineStyle(get1(node, 'extensions')));\n var routeObj = {\n type: 'Feature',\n properties: prop,\n geometry: {\n type: 'LineString',\n coordinates: line.line\n }\n };\n return routeObj;\n }\n function getPoint(node) {\n var prop = getProperties(node);\n extend(prop, getMulti(node, ['sym']));\n return {\n type: 'Feature',\n properties: prop,\n geometry: {\n type: 'Point',\n coordinates: coordPair(node).coordinates\n }\n };\n }\n function getLineStyle(extensions) {\n var style = {};\n if (extensions) {\n var lineStyle = get1(extensions, 'line');\n if (lineStyle) {\n var color = nodeVal(get1(lineStyle, 'color')),\n opacity = parseFloat(nodeVal(get1(lineStyle, 'opacity'))),\n width = parseFloat(nodeVal(get1(lineStyle, 'width')));\n if (color) style.stroke = color;\n if (!isNaN(opacity)) style['stroke-opacity'] = opacity;\n // GPX width is in mm, convert to px with 96 px per inch\n if (!isNaN(width)) style['stroke-width'] = width * 96 / 25.4;\n }\n }\n return style;\n }\n function getProperties(node) {\n var prop = getMulti(node, ['name', 'cmt', 'desc', 'type', 'time', 'keywords']),\n links = get(node, 'link');\n if (links.length) prop.links = [];\n for (var i = 0, link; i < links.length; i++) {\n link = { href: attr(links[i], 'href') };\n extend(link, getMulti(links[i], ['text', 'type']));\n prop.links.push(link);\n }\n return prop;\n }\n return gj;\n }\n };\n return t;\n})();\n\nif (typeof module !== 'undefined') module.exports = toGeoJSON;","let gpxParser=function(){this.xmlSource=\"\",this.metadata={},this.waypoints=[],this.tracks=[],this.routes=[]};gpxParser.prototype.parse=function(e){let t=this,l=new window.DOMParser;this.xmlSource=l.parseFromString(e,\"text/xml\");let r=this.xmlSource.querySelector(\"metadata\");if(null!=r){this.metadata.name=this.getElementValue(r,\"name\"),this.metadata.desc=this.getElementValue(r,\"desc\"),this.metadata.time=this.getElementValue(r,\"time\");let e={},t=r.querySelector(\"author\");if(null!=t){e.name=this.getElementValue(t,\"name\"),e.email={};let l=t.querySelector(\"email\");null!=l&&(e.email.id=l.getAttribute(\"id\"),e.email.domain=l.getAttribute(\"domain\"));let r={},a=t.querySelector(\"link\");null!=a&&(r.href=a.getAttribute(\"href\"),r.text=this.getElementValue(a,\"text\"),r.type=this.getElementValue(a,\"type\")),e.link=r}this.metadata.author=e;let l={},a=this.queryDirectSelector(r,\"link\");null!=a&&(l.href=a.getAttribute(\"href\"),l.text=this.getElementValue(a,\"text\"),l.type=this.getElementValue(a,\"type\"),this.metadata.link=l)}var a=[].slice.call(this.xmlSource.querySelectorAll(\"wpt\"));for(let e in a){var n=a[e];let l={};l.name=t.getElementValue(n,\"name\"),l.sym=t.getElementValue(n,\"sym\"),l.lat=parseFloat(n.getAttribute(\"lat\")),l.lon=parseFloat(n.getAttribute(\"lon\"));let r=parseFloat(t.getElementValue(n,\"ele\"));l.ele=isNaN(r)?null:r,l.cmt=t.getElementValue(n,\"cmt\"),l.desc=t.getElementValue(n,\"desc\");let i=t.getElementValue(n,\"time\");l.time=null==i?null:new Date(i),t.waypoints.push(l)}var i=[].slice.call(this.xmlSource.querySelectorAll(\"rte\"));for(let e in i){let l=i[e],r={};r.name=t.getElementValue(l,\"name\"),r.cmt=t.getElementValue(l,\"cmt\"),r.desc=t.getElementValue(l,\"desc\"),r.src=t.getElementValue(l,\"src\"),r.number=t.getElementValue(l,\"number\");let a=t.queryDirectSelector(l,\"type\");r.type=null!=a?a.innerHTML:null;let n={},o=l.querySelector(\"link\");null!=o&&(n.href=o.getAttribute(\"href\"),n.text=t.getElementValue(o,\"text\"),n.type=t.getElementValue(o,\"type\")),r.link=n;let u=[];var s=[].slice.call(l.querySelectorAll(\"rtept\"));for(let e in s){let l=s[e],r={};r.lat=parseFloat(l.getAttribute(\"lat\")),r.lon=parseFloat(l.getAttribute(\"lon\"));let a=parseFloat(t.getElementValue(l,\"ele\"));r.ele=isNaN(a)?null:a;let n=t.getElementValue(l,\"time\");r.time=null==n?null:new Date(n),u.push(r)}r.distance=t.calculDistance(u),r.elevation=t.calcElevation(u),r.slopes=t.calculSlope(u,r.distance.cumul),r.points=u,t.routes.push(r)}var o=[].slice.call(this.xmlSource.querySelectorAll(\"trk\"));for(let e in o){let l=o[e],r={};r.name=t.getElementValue(l,\"name\"),r.cmt=t.getElementValue(l,\"cmt\"),r.desc=t.getElementValue(l,\"desc\"),r.src=t.getElementValue(l,\"src\"),r.number=t.getElementValue(l,\"number\");let a=t.queryDirectSelector(l,\"type\");r.type=null!=a?a.innerHTML:null;let n={},i=l.querySelector(\"link\");null!=i&&(n.href=i.getAttribute(\"href\"),n.text=t.getElementValue(i,\"text\"),n.type=t.getElementValue(i,\"type\")),r.link=n;let s=[],p=[].slice.call(l.querySelectorAll(\"trkpt\"));for(let e in p){var u=p[e];let l={};l.lat=parseFloat(u.getAttribute(\"lat\")),l.lon=parseFloat(u.getAttribute(\"lon\"));let r=parseFloat(t.getElementValue(u,\"ele\"));l.ele=isNaN(r)?null:r;let a=t.getElementValue(u,\"time\");l.time=null==a?null:new Date(a),s.push(l)}r.distance=t.calculDistance(s),r.elevation=t.calcElevation(s),r.slopes=t.calculSlope(s,r.distance.cumul),r.points=s,t.tracks.push(r)}},gpxParser.prototype.getElementValue=function(e,t){let l=e.querySelector(t);return null!=l?null!=l.innerHTML?l.innerHTML:l.childNodes[0].data:l},gpxParser.prototype.queryDirectSelector=function(e,t){let l=e.querySelectorAll(t),r=l[0];if(l.length>1){let l=e.childNodes;for(idx in l)elem=l[idx],elem.tagName===t&&(r=elem)}return r},gpxParser.prototype.calculDistance=function(e){let t={},l=0,r=[];for(var a=0;a0&&(t+=e)}}for(var n=[],i=0,s=(a=0,e.length);a11?\"pm\":\"am\")).toUpperCase();case\"P\":return i(\"time.\"+(c>11?\"pm\":\"am\"));case\"S\":return n(h,m);case\"w\":return u;case\"y\":return n(f%100,m);case\"Y\":return f;case\"Z\":return r(e)}})},n=function(t,e){switch(e){case\"-\":return t;default:return(\"0\"+t).slice(-2)}},r=function(t){var e,n,r,a,i;return i=t.toString(),(e=null!=(n=i.match(/\\(([\\w\\s]+)\\)$/))?n[1]:void 0)?/\\s/.test(e)?e.match(/\\b(\\w)/g).join(\"\"):e:(e=null!=(r=i.match(/(\\w{3,4})\\s\\d{4}$/))?r[1]:void 0)?e:(e=null!=(a=i.match(/(UTC[\\+\\-]\\d+)/))?a[1]:void 0)?e:\"\"}}.call(this),function(){e.CalendarDate=function(){function t(t,e,n){this.date=new Date(Date.UTC(t,e-1)),this.date.setUTCDate(n),this.year=this.date.getUTCFullYear(),this.month=this.date.getUTCMonth()+1,this.day=this.date.getUTCDate(),this.value=this.date.getTime()}return t.fromDate=function(t){return new this(t.getFullYear(),t.getMonth()+1,t.getDate())},t.today=function(){return this.fromDate(new Date)},t.prototype.equals=function(t){return(null!=t?t.value:void 0)===this.value},t.prototype.is=function(t){return this.equals(t)},t.prototype.isToday=function(){return this.is(this.constructor.today())},t.prototype.occursOnSameYearAs=function(t){return this.year===(null!=t?t.year:void 0)},t.prototype.occursThisYear=function(){return this.occursOnSameYearAs(this.constructor.today())},t.prototype.daysSince=function(t){if(t)return(this.date-t.date)/864e5},t.prototype.daysPassed=function(){return this.constructor.today().daysSince(this)},t}()}.call(this),function(){var t,n,r;n=e.strftime,r=e.translate,t=e.getI18nValue,e.RelativeTime=function(){function a(t){this.date=t,this.calendarDate=e.CalendarDate.fromDate(this.date)}return a.prototype.toString=function(){var t,e;return(e=this.toTimeElapsedString())?r(\"time.elapsed\",{time:e}):(t=this.toWeekdayString())?(e=this.toTimeString(),r(\"datetime.at\",{date:t,time:e})):r(\"date.on\",{date:this.toDateString()})},a.prototype.toTimeOrDateString=function(){return this.calendarDate.isToday()?this.toTimeString():this.toDateString()},a.prototype.toTimeElapsedString=function(){var t,e,n,a,i;return n=(new Date).getTime()-this.date.getTime(),a=Math.round(n/1e3),e=Math.round(a/60),t=Math.round(e/60),n<0?null:a<10?(i=r(\"time.second\"),r(\"time.singular\",{time:i})):a<45?a+\" \"+r(\"time.seconds\"):a<90?(i=r(\"time.minute\"),r(\"time.singular\",{time:i})):e<45?e+\" \"+r(\"time.minutes\"):e<90?(i=r(\"time.hour\"),r(\"time.singularAn\",{time:i})):t<24?t+\" \"+r(\"time.hours\"):\"\"},a.prototype.toWeekdayString=function(){switch(this.calendarDate.daysPassed()){case 0:return r(\"date.today\");case 1:return r(\"date.yesterday\");case-1:return r(\"date.tomorrow\");case 2:case 3:case 4:case 5:case 6:return n(this.date,\"%A\");default:return\"\"}},a.prototype.toDateString=function(){var e;return e=t(this.calendarDate.occursThisYear()?\"date.formats.thisYear\":\"date.formats.default\"),n(this.date,e)},a.prototype.toTimeString=function(){return n(this.date,t(\"time.formats.default\"))},a}()}.call(this),function(){var t,n=function(t,e){return function(){return t.apply(e,arguments)}};t=e.elementMatchesSelector,e.PageObserver=function(){function e(t,e){this.selector=t,this.callback=e,this.processInsertion=n(this.processInsertion,this),this.processMutations=n(this.processMutations,this)}return e.prototype.start=function(){if(!this.started)return this.observeWithMutationObserver()||this.observeWithMutationEvent(),this.started=!0},e.prototype.observeWithMutationObserver=function(){var t;if(\"undefined\"!=typeof MutationObserver&&null!==MutationObserver)return t=new MutationObserver(this.processMutations),t.observe(document.documentElement,{childList:!0,subtree:!0}),!0},e.prototype.observeWithMutationEvent=function(){return addEventListener(\"DOMNodeInserted\",this.processInsertion,!1),!0},e.prototype.findSignificantElements=function(e){var n;return n=[],(null!=e?e.nodeType:void 0)===Node.ELEMENT_NODE&&(t(e,this.selector)&&n.push(e),n.push.apply(n,e.querySelectorAll(this.selector))),n},e.prototype.processMutations=function(t){var e,n,r,a,i,o,s,u;for(e=[],n=0,a=t.length;n= 56.0 && Lat < 64.0 && Long >= 3.0 && Long < 12.0) {\n ZoneNumber = 32;\n }\n\n // Special zones for Svalbard\n if (Lat >= 72.0 && Lat < 84.0) {\n if (Long >= 0.0 && Long < 9.0) {\n ZoneNumber = 31;\n }\n else if (Long >= 9.0 && Long < 21.0) {\n ZoneNumber = 33;\n }\n else if (Long >= 21.0 && Long < 33.0) {\n ZoneNumber = 35;\n }\n else if (Long >= 33.0 && Long < 42.0) {\n ZoneNumber = 37;\n }\n }\n\n LongOrigin = (ZoneNumber - 1) * 6 - 180 + 3; //+3 puts origin\n // in middle of\n // zone\n LongOriginRad = degToRad(LongOrigin);\n\n eccPrimeSquared = (eccSquared) / (1 - eccSquared);\n\n N = a / Math.sqrt(1 - eccSquared * Math.sin(LatRad) * Math.sin(LatRad));\n T = Math.tan(LatRad) * Math.tan(LatRad);\n C = eccPrimeSquared * Math.cos(LatRad) * Math.cos(LatRad);\n A = Math.cos(LatRad) * (LongRad - LongOriginRad);\n\n M = a * ((1 - eccSquared / 4 - 3 * eccSquared * eccSquared / 64 - 5 * eccSquared * eccSquared * eccSquared / 256) * LatRad - (3 * eccSquared / 8 + 3 * eccSquared * eccSquared / 32 + 45 * eccSquared * eccSquared * eccSquared / 1024) * Math.sin(2 * LatRad) + (15 * eccSquared * eccSquared / 256 + 45 * eccSquared * eccSquared * eccSquared / 1024) * Math.sin(4 * LatRad) - (35 * eccSquared * eccSquared * eccSquared / 3072) * Math.sin(6 * LatRad));\n\n var UTMEasting = (k0 * N * (A + (1 - T + C) * A * A * A / 6.0 + (5 - 18 * T + T * T + 72 * C - 58 * eccPrimeSquared) * A * A * A * A * A / 120.0) + 500000.0);\n\n var UTMNorthing = (k0 * (M + N * Math.tan(LatRad) * (A * A / 2 + (5 - T + 9 * C + 4 * C * C) * A * A * A * A / 24.0 + (61 - 58 * T + T * T + 600 * C - 330 * eccPrimeSquared) * A * A * A * A * A * A / 720.0)));\n if (Lat < 0.0) {\n UTMNorthing += 10000000.0; //10000000 meter offset for\n // southern hemisphere\n }\n\n return {\n northing: Math.round(UTMNorthing),\n easting: Math.round(UTMEasting),\n zoneNumber: ZoneNumber,\n zoneLetter: getLetterDesignator(Lat)\n };\n}\n\n/**\n * Converts UTM coords to lat/long, using the WGS84 ellipsoid. This is a convenience\n * class where the Zone can be specified as a single string eg.\"60N\" which\n * is then broken down into the ZoneNumber and ZoneLetter.\n *\n * @private\n * @param {object} utm An object literal with northing, easting, zoneNumber\n * and zoneLetter properties. If an optional accuracy property is\n * provided (in meters), a bounding box will be returned instead of\n * latitude and longitude.\n * @return {object} An object literal containing either lat and lon values\n * (if no accuracy was provided), or top, right, bottom and left values\n * for the bounding box calculated according to the provided accuracy.\n * Returns null if the conversion failed.\n */\nfunction UTMtoLL(utm) {\n\n var UTMNorthing = utm.northing;\n var UTMEasting = utm.easting;\n var zoneLetter = utm.zoneLetter;\n var zoneNumber = utm.zoneNumber;\n // check the ZoneNummber is valid\n if (zoneNumber < 0 || zoneNumber > 60) {\n return null;\n }\n\n var k0 = 0.9996;\n var a = 6378137.0; //ellip.radius;\n var eccSquared = 0.00669438; //ellip.eccsq;\n var eccPrimeSquared;\n var e1 = (1 - Math.sqrt(1 - eccSquared)) / (1 + Math.sqrt(1 - eccSquared));\n var N1, T1, C1, R1, D, M;\n var LongOrigin;\n var mu, phi1Rad;\n\n // remove 500,000 meter offset for longitude\n var x = UTMEasting - 500000.0;\n var y = UTMNorthing;\n\n // We must know somehow if we are in the Northern or Southern\n // hemisphere, this is the only time we use the letter So even\n // if the Zone letter isn't exactly correct it should indicate\n // the hemisphere correctly\n if (zoneLetter < 'N') {\n y -= 10000000.0; // remove 10,000,000 meter offset used\n // for southern hemisphere\n }\n\n // There are 60 zones with zone 1 being at West -180 to -174\n LongOrigin = (zoneNumber - 1) * 6 - 180 + 3; // +3 puts origin\n // in middle of\n // zone\n\n eccPrimeSquared = (eccSquared) / (1 - eccSquared);\n\n M = y / k0;\n mu = M / (a * (1 - eccSquared / 4 - 3 * eccSquared * eccSquared / 64 - 5 * eccSquared * eccSquared * eccSquared / 256));\n\n phi1Rad = mu + (3 * e1 / 2 - 27 * e1 * e1 * e1 / 32) * Math.sin(2 * mu) + (21 * e1 * e1 / 16 - 55 * e1 * e1 * e1 * e1 / 32) * Math.sin(4 * mu) + (151 * e1 * e1 * e1 / 96) * Math.sin(6 * mu);\n // double phi1 = ProjMath.radToDeg(phi1Rad);\n\n N1 = a / Math.sqrt(1 - eccSquared * Math.sin(phi1Rad) * Math.sin(phi1Rad));\n T1 = Math.tan(phi1Rad) * Math.tan(phi1Rad);\n C1 = eccPrimeSquared * Math.cos(phi1Rad) * Math.cos(phi1Rad);\n R1 = a * (1 - eccSquared) / Math.pow(1 - eccSquared * Math.sin(phi1Rad) * Math.sin(phi1Rad), 1.5);\n D = x / (N1 * k0);\n\n var lat = phi1Rad - (N1 * Math.tan(phi1Rad) / R1) * (D * D / 2 - (5 + 3 * T1 + 10 * C1 - 4 * C1 * C1 - 9 * eccPrimeSquared) * D * D * D * D / 24 + (61 + 90 * T1 + 298 * C1 + 45 * T1 * T1 - 252 * eccPrimeSquared - 3 * C1 * C1) * D * D * D * D * D * D / 720);\n lat = radToDeg(lat);\n\n var lon = (D - (1 + 2 * T1 + C1) * D * D * D / 6 + (5 - 2 * C1 + 28 * T1 - 3 * C1 * C1 + 8 * eccPrimeSquared + 24 * T1 * T1) * D * D * D * D * D / 120) / Math.cos(phi1Rad);\n lon = LongOrigin + radToDeg(lon);\n\n var result;\n if (utm.accuracy) {\n var topRight = UTMtoLL({\n northing: utm.northing + utm.accuracy,\n easting: utm.easting + utm.accuracy,\n zoneLetter: utm.zoneLetter,\n zoneNumber: utm.zoneNumber\n });\n result = {\n top: topRight.lat,\n right: topRight.lon,\n bottom: lat,\n left: lon\n };\n }\n else {\n result = {\n lat: lat,\n lon: lon\n };\n }\n return result;\n}\n\n/**\n * Calculates the MGRS letter designator for the given latitude.\n *\n * @private\n * @param {number} lat The latitude in WGS84 to get the letter designator\n * for.\n * @return {char} The letter designator.\n */\nfunction getLetterDesignator(lat) {\n //This is here as an error flag to show that the Latitude is\n //outside MGRS limits\n var LetterDesignator = 'Z';\n\n if ((84 >= lat) && (lat >= 72)) {\n LetterDesignator = 'X';\n }\n else if ((72 > lat) && (lat >= 64)) {\n LetterDesignator = 'W';\n }\n else if ((64 > lat) && (lat >= 56)) {\n LetterDesignator = 'V';\n }\n else if ((56 > lat) && (lat >= 48)) {\n LetterDesignator = 'U';\n }\n else if ((48 > lat) && (lat >= 40)) {\n LetterDesignator = 'T';\n }\n else if ((40 > lat) && (lat >= 32)) {\n LetterDesignator = 'S';\n }\n else if ((32 > lat) && (lat >= 24)) {\n LetterDesignator = 'R';\n }\n else if ((24 > lat) && (lat >= 16)) {\n LetterDesignator = 'Q';\n }\n else if ((16 > lat) && (lat >= 8)) {\n LetterDesignator = 'P';\n }\n else if ((8 > lat) && (lat >= 0)) {\n LetterDesignator = 'N';\n }\n else if ((0 > lat) && (lat >= -8)) {\n LetterDesignator = 'M';\n }\n else if ((-8 > lat) && (lat >= -16)) {\n LetterDesignator = 'L';\n }\n else if ((-16 > lat) && (lat >= -24)) {\n LetterDesignator = 'K';\n }\n else if ((-24 > lat) && (lat >= -32)) {\n LetterDesignator = 'J';\n }\n else if ((-32 > lat) && (lat >= -40)) {\n LetterDesignator = 'H';\n }\n else if ((-40 > lat) && (lat >= -48)) {\n LetterDesignator = 'G';\n }\n else if ((-48 > lat) && (lat >= -56)) {\n LetterDesignator = 'F';\n }\n else if ((-56 > lat) && (lat >= -64)) {\n LetterDesignator = 'E';\n }\n else if ((-64 > lat) && (lat >= -72)) {\n LetterDesignator = 'D';\n }\n else if ((-72 > lat) && (lat >= -80)) {\n LetterDesignator = 'C';\n }\n return LetterDesignator;\n}\n\n/**\n * Encodes a UTM location as MGRS string.\n *\n * @private\n * @param {object} utm An object literal with easting, northing,\n * zoneLetter, zoneNumber\n * @param {number} accuracy Accuracy in digits (1-5).\n * @return {string} MGRS string for the given UTM location.\n */\nfunction encode(utm, accuracy) {\n // prepend with leading zeroes\n var seasting = \"00000\" + utm.easting,\n snorthing = \"00000\" + utm.northing;\n\n return utm.zoneNumber + utm.zoneLetter + get100kID(utm.easting, utm.northing, utm.zoneNumber) + seasting.substr(seasting.length - 5, accuracy) + snorthing.substr(snorthing.length - 5, accuracy);\n}\n\n/**\n * Get the two letter 100k designator for a given UTM easting,\n * northing and zone number value.\n *\n * @private\n * @param {number} easting\n * @param {number} northing\n * @param {number} zoneNumber\n * @return the two letter 100k designator for the given UTM location.\n */\nfunction get100kID(easting, northing, zoneNumber) {\n var setParm = get100kSetForZone(zoneNumber);\n var setColumn = Math.floor(easting / 100000);\n var setRow = Math.floor(northing / 100000) % 20;\n return getLetter100kID(setColumn, setRow, setParm);\n}\n\n/**\n * Given a UTM zone number, figure out the MGRS 100K set it is in.\n *\n * @private\n * @param {number} i An UTM zone number.\n * @return {number} the 100k set the UTM zone is in.\n */\nfunction get100kSetForZone(i) {\n var setParm = i % NUM_100K_SETS;\n if (setParm === 0) {\n setParm = NUM_100K_SETS;\n }\n\n return setParm;\n}\n\n/**\n * Get the two-letter MGRS 100k designator given information\n * translated from the UTM northing, easting and zone number.\n *\n * @private\n * @param {number} column the column index as it relates to the MGRS\n * 100k set spreadsheet, created from the UTM easting.\n * Values are 1-8.\n * @param {number} row the row index as it relates to the MGRS 100k set\n * spreadsheet, created from the UTM northing value. Values\n * are from 0-19.\n * @param {number} parm the set block, as it relates to the MGRS 100k set\n * spreadsheet, created from the UTM zone. Values are from\n * 1-60.\n * @return two letter MGRS 100k code.\n */\nfunction getLetter100kID(column, row, parm) {\n // colOrigin and rowOrigin are the letters at the origin of the set\n var index = parm - 1;\n var colOrigin = SET_ORIGIN_COLUMN_LETTERS.charCodeAt(index);\n var rowOrigin = SET_ORIGIN_ROW_LETTERS.charCodeAt(index);\n\n // colInt and rowInt are the letters to build to return\n var colInt = colOrigin + column - 1;\n var rowInt = rowOrigin + row;\n var rollover = false;\n\n if (colInt > Z) {\n colInt = colInt - Z + A - 1;\n rollover = true;\n }\n\n if (colInt === I || (colOrigin < I && colInt > I) || ((colInt > I || colOrigin < I) && rollover)) {\n colInt++;\n }\n\n if (colInt === O || (colOrigin < O && colInt > O) || ((colInt > O || colOrigin < O) && rollover)) {\n colInt++;\n\n if (colInt === I) {\n colInt++;\n }\n }\n\n if (colInt > Z) {\n colInt = colInt - Z + A - 1;\n }\n\n if (rowInt > V) {\n rowInt = rowInt - V + A - 1;\n rollover = true;\n }\n else {\n rollover = false;\n }\n\n if (((rowInt === I) || ((rowOrigin < I) && (rowInt > I))) || (((rowInt > I) || (rowOrigin < I)) && rollover)) {\n rowInt++;\n }\n\n if (((rowInt === O) || ((rowOrigin < O) && (rowInt > O))) || (((rowInt > O) || (rowOrigin < O)) && rollover)) {\n rowInt++;\n\n if (rowInt === I) {\n rowInt++;\n }\n }\n\n if (rowInt > V) {\n rowInt = rowInt - V + A - 1;\n }\n\n var twoLetter = String.fromCharCode(colInt) + String.fromCharCode(rowInt);\n return twoLetter;\n}\n\n/**\n * Decode the UTM parameters from a MGRS string.\n *\n * @private\n * @param {string} mgrsString an UPPERCASE coordinate string is expected.\n * @return {object} An object literal with easting, northing, zoneLetter,\n * zoneNumber and accuracy (in meters) properties.\n */\nfunction decode(mgrsString) {\n\n if (mgrsString && mgrsString.length === 0) {\n throw (\"MGRSPoint coverting from nothing\");\n }\n\n var length = mgrsString.length;\n\n var hunK = null;\n var sb = \"\";\n var testChar;\n var i = 0;\n\n // get Zone number\n while (!(/[A-Z]/).test(testChar = mgrsString.charAt(i))) {\n if (i >= 2) {\n throw (\"MGRSPoint bad conversion from: \" + mgrsString);\n }\n sb += testChar;\n i++;\n }\n\n var zoneNumber = parseInt(sb, 10);\n\n if (i === 0 || i + 3 > length) {\n // A good MGRS string has to be 4-5 digits long,\n // ##AAA/#AAA at least.\n throw (\"MGRSPoint bad conversion from: \" + mgrsString);\n }\n\n var zoneLetter = mgrsString.charAt(i++);\n\n // Should we check the zone letter here? Why not.\n if (zoneLetter <= 'A' || zoneLetter === 'B' || zoneLetter === 'Y' || zoneLetter >= 'Z' || zoneLetter === 'I' || zoneLetter === 'O') {\n throw (\"MGRSPoint zone letter \" + zoneLetter + \" not handled: \" + mgrsString);\n }\n\n hunK = mgrsString.substring(i, i += 2);\n\n var set = get100kSetForZone(zoneNumber);\n\n var east100k = getEastingFromChar(hunK.charAt(0), set);\n var north100k = getNorthingFromChar(hunK.charAt(1), set);\n\n // We have a bug where the northing may be 2000000 too low.\n // How\n // do we know when to roll over?\n\n while (north100k < getMinNorthing(zoneLetter)) {\n north100k += 2000000;\n }\n\n // calculate the char index for easting/northing separator\n var remainder = length - i;\n\n if (remainder % 2 !== 0) {\n throw (\"MGRSPoint has to have an even number \\nof digits after the zone letter and two 100km letters - front \\nhalf for easting meters, second half for \\nnorthing meters\" + mgrsString);\n }\n\n var sep = remainder / 2;\n\n var sepEasting = 0.0;\n var sepNorthing = 0.0;\n var accuracyBonus, sepEastingString, sepNorthingString, easting, northing;\n if (sep > 0) {\n accuracyBonus = 100000.0 / Math.pow(10, sep);\n sepEastingString = mgrsString.substring(i, i + sep);\n sepEasting = parseFloat(sepEastingString) * accuracyBonus;\n sepNorthingString = mgrsString.substring(i + sep);\n sepNorthing = parseFloat(sepNorthingString) * accuracyBonus;\n }\n\n easting = sepEasting + east100k;\n northing = sepNorthing + north100k;\n\n return {\n easting: easting,\n northing: northing,\n zoneLetter: zoneLetter,\n zoneNumber: zoneNumber,\n accuracy: accuracyBonus\n };\n}\n\n/**\n * Given the first letter from a two-letter MGRS 100k zone, and given the\n * MGRS table set for the zone number, figure out the easting value that\n * should be added to the other, secondary easting value.\n *\n * @private\n * @param {char} e The first letter from a two-letter MGRS 100´k zone.\n * @param {number} set The MGRS table set for the zone number.\n * @return {number} The easting value for the given letter and set.\n */\nfunction getEastingFromChar(e, set) {\n // colOrigin is the letter at the origin of the set for the\n // column\n var curCol = SET_ORIGIN_COLUMN_LETTERS.charCodeAt(set - 1);\n var eastingValue = 100000.0;\n var rewindMarker = false;\n\n while (curCol !== e.charCodeAt(0)) {\n curCol++;\n if (curCol === I) {\n curCol++;\n }\n if (curCol === O) {\n curCol++;\n }\n if (curCol > Z) {\n if (rewindMarker) {\n throw (\"Bad character: \" + e);\n }\n curCol = A;\n rewindMarker = true;\n }\n eastingValue += 100000.0;\n }\n\n return eastingValue;\n}\n\n/**\n * Given the second letter from a two-letter MGRS 100k zone, and given the\n * MGRS table set for the zone number, figure out the northing value that\n * should be added to the other, secondary northing value. You have to\n * remember that Northings are determined from the equator, and the vertical\n * cycle of letters mean a 2000000 additional northing meters. This happens\n * approx. every 18 degrees of latitude. This method does *NOT* count any\n * additional northings. You have to figure out how many 2000000 meters need\n * to be added for the zone letter of the MGRS coordinate.\n *\n * @private\n * @param {char} n Second letter of the MGRS 100k zone\n * @param {number} set The MGRS table set number, which is dependent on the\n * UTM zone number.\n * @return {number} The northing value for the given letter and set.\n */\nfunction getNorthingFromChar(n, set) {\n\n if (n > 'V') {\n throw (\"MGRSPoint given invalid Northing \" + n);\n }\n\n // rowOrigin is the letter at the origin of the set for the\n // column\n var curRow = SET_ORIGIN_ROW_LETTERS.charCodeAt(set - 1);\n var northingValue = 0.0;\n var rewindMarker = false;\n\n while (curRow !== n.charCodeAt(0)) {\n curRow++;\n if (curRow === I) {\n curRow++;\n }\n if (curRow === O) {\n curRow++;\n }\n // fixing a bug making whole application hang in this loop\n // when 'n' is a wrong character\n if (curRow > V) {\n if (rewindMarker) { // making sure that this loop ends\n throw (\"Bad character: \" + n);\n }\n curRow = A;\n rewindMarker = true;\n }\n northingValue += 100000.0;\n }\n\n return northingValue;\n}\n\n/**\n * The function getMinNorthing returns the minimum northing value of a MGRS\n * zone.\n *\n * Ported from Geotrans' c Lattitude_Band_Value structure table.\n *\n * @private\n * @param {char} zoneLetter The MGRS zone to get the min northing for.\n * @return {number}\n */\nfunction getMinNorthing(zoneLetter) {\n var northing;\n switch (zoneLetter) {\n case 'C':\n northing = 1100000.0;\n break;\n case 'D':\n northing = 2000000.0;\n break;\n case 'E':\n northing = 2800000.0;\n break;\n case 'F':\n northing = 3700000.0;\n break;\n case 'G':\n northing = 4600000.0;\n break;\n case 'H':\n northing = 5500000.0;\n break;\n case 'J':\n northing = 6400000.0;\n break;\n case 'K':\n northing = 7300000.0;\n break;\n case 'L':\n northing = 8200000.0;\n break;\n case 'M':\n northing = 9100000.0;\n break;\n case 'N':\n northing = 0.0;\n break;\n case 'P':\n northing = 800000.0;\n break;\n case 'Q':\n northing = 1700000.0;\n break;\n case 'R':\n northing = 2600000.0;\n break;\n case 'S':\n northing = 3500000.0;\n break;\n case 'T':\n northing = 4400000.0;\n break;\n case 'U':\n northing = 5300000.0;\n break;\n case 'V':\n northing = 6200000.0;\n break;\n case 'W':\n northing = 7000000.0;\n break;\n case 'X':\n northing = 7900000.0;\n break;\n default:\n northing = -1.0;\n }\n if (northing >= 0.0) {\n return northing;\n }\n else {\n throw (\"Invalid zone letter: \" + zoneLetter);\n }\n\n}\n"],"names":["module","exports","toGeoJSON","serializer","removeSpace","trimSpace","splitSpace","okhash","x","length","i","h","charCodeAt","get","y","getElementsByTagName","attr","getAttribute","attrf","parseFloat","get1","n","numarray","j","o","nodeVal","el","normalize","textContent","getMulti","ys","k","extend","coord1","v","replace","split","coord","coords","push","coordPair","e","ll","ele","heartRate","time","isNaN","coordinates","xml2str","str","undefined","xml","serializeToString","XMLSerializer","process","browser","require","kml","doc","gj","type","features","styleIndex","styleByHash","styleMapIndex","geotypes","placemarks","styles","styleMaps","hash","toString","l","pairs","pairsMap","m","concat","getPlacemark","kmlColor","color","opacity","substr","parseInt","gxCoords","root","elems","times","timeElems","getGeometry","geomNode","geomNodes","geoms","coordTimes","rings","track","geomsAndTimes","properties","name","address","styleUrl","description","timeSpan","timeStamp","extendedData","lineStyle","polyStyle","visibility","styleHash","styleMapHash","normal","style","begin","end","timespan","timestamp","linestyles","width","stroke","polystyles","pcolor","popacity","fill","outline","datas","simpleDatas","feature","geometry","geometries","id","gpx","tracks","routes","waypoints","getTrack","getRoute","getPoint","getPoints","node","pointname","pts","line","heartRates","c","segments","getProperties","getLineStyle","prop","extensions","links","link","href","gpxParser","this","xmlSource","metadata","prototype","parse","t","window","DOMParser","parseFromString","r","querySelector","getElementValue","desc","email","domain","a","text","author","queryDirectSelector","slice","call","querySelectorAll","sym","lat","lon","cmt","Date","src","number","innerHTML","u","s","distance","calculDistance","elevation","calcElevation","slopes","calculSlope","cumul","points","p","childNodes","data","idx","elem","tagName","calcDistanceBetween","total","Math","PI","sin","cos","atan2","sqrt","max","apply","min","pos","abs","neg","avg","noop","LocalTime","config","run","getController","processElements","arguments","processElement","controller","Controller","i18n","en","date","dayNames","abbrDayNames","monthNames","abbrMonthNames","yesterday","today","tomorrow","on","formats","thisYear","am","pm","singular","singularAn","elapsed","second","seconds","minute","minutes","hour","hours","datetime","at","locale","defaultLocale","timerInterval","parseDate","match","elementMatchesSelector","document","documentElement","matches","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","nodeType","Node","ELEMENT_NODE","getI18nValue","translate","strftime","d","f","getDay","getDate","getMonth","getFullYear","getHours","getMinutes","getSeconds","toUpperCase","test","join","CalendarDate","UTC","setUTCDate","year","getUTCFullYear","month","getUTCMonth","day","getUTCDate","value","getTime","fromDate","equals","is","isToday","constructor","occursOnSameYearAs","occursThisYear","daysSince","daysPassed","RelativeTime","calendarDate","toTimeElapsedString","toWeekdayString","toTimeString","toDateString","toTimeOrDateString","round","PageObserver","selector","callback","processInsertion","processMutations","start","started","observeWithMutationObserver","observeWithMutationEvent","MutationObserver","observe","childList","subtree","addEventListener","findSignificantElements","addedNodes","notify","target","pageObserver","startTimer","timer","setInterval","hasAttribute","setAttribute","attachEvent","readyState","requestAnimationFrame","setTimeout","define","NUM_100K_SETS","SET_ORIGIN_COLUMN_LETTERS","SET_ORIGIN_ROW_LETTERS","A","I","O","V","Z","forward","accuracy","utm","seasting","easting","snorthing","northing","zoneNumber","zoneLetter","setParm","get100kSetForZone","setColumn","floor","setRow","column","row","parm","index","colOrigin","rowOrigin","colInt","rowInt","rollover","String","fromCharCode","encode","eccPrimeSquared","N","T","C","M","LongOriginRad","ZoneNumber","Lat","Long","eccSquared","k0","LatRad","degToRad","LongRad","tan","UTMEasting","UTMNorthing","getLetterDesignator","LLtoUTM","toPoint","mgrs","bbox","UTMtoLL","decode","left","right","top","bottom","deg","radToDeg","rad","N1","T1","C1","R1","D","LongOrigin","mu","phi1Rad","e1","pow","result","topRight","LetterDesignator","mgrsString","testChar","hunK","sb","charAt","substring","set","east100k","curCol","eastingValue","rewindMarker","getEastingFromChar","north100k","curRow","northingValue","getNorthingFromChar","getMinNorthing","remainder","accuracyBonus","sepEastingString","sepNorthingString","sep","sepEasting","sepNorthing","inverse"],"sourceRoot":""}