{"version":3,"file":"npm.react-view-pager.js?version=5254a7e0946e5aa7386e","mappings":"gqBAEAA,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QACA,SAAuBE,EAAGC,EAAGC,GAC3B,IAAK,IAAIC,KAAKF,EACPA,EAAEG,eAAeD,KAAMD,EAASC,KACrCH,EAAEG,GAAKF,EAAEE,IAEX,OAAOH,CACT,EACAK,EAAOP,QAAUA,EAAiB,O,sDCXlCF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAGT,IAAIO,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMnB,OAAOC,eAAeW,EAAQI,EAAWI,IAAKJ,EAAa,CAAE,CAAE,OAAO,SAAUK,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYX,EAAiBU,EAAYG,UAAWF,GAAiBC,GAAaZ,EAAiBU,EAAaE,GAAqBF,CAAa,CAAG,CAA7hB,GAEfI,EAAS,EAAQ,wBAMjBC,GAJUC,EAAuBF,GAInBE,EAFD,EAAQ,0BAMrBC,EAAUD,EAFD,EAAQ,yBAIrB,SAASA,EAAuBE,GAAO,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CAAEE,QAASF,EAAO,CAU9F,IAAIG,EAAY,SAAUC,GAGxB,SAASD,EAAUnB,IATrB,SAAyBqB,EAAUb,GAAe,KAAMa,aAAoBb,GAAgB,MAAM,IAAIc,UAAU,oCAAwC,CAUpJC,CAAgBC,KAAML,GAEtB,IAAIM,EAVR,SAAoCC,EAAMC,GAAQ,IAAKD,EAAQ,MAAM,IAAIE,eAAe,6DAAgE,OAAOD,GAAyB,kBAATA,GAAqC,oBAATA,EAA8BD,EAAPC,CAAa,CAU/NE,CAA2BL,MAAOL,EAAUW,WAAa3C,OAAO4C,eAAeZ,IAAYQ,KAAKH,KAAMxB,IAE9GgC,EAAQ,IAAIjB,EAAQG,QACpBe,EAAc,WAChB,OAAOR,EAAMQ,aACf,EAOA,OAJAD,EAAME,GAAG,aAAcD,GACvBD,EAAME,GAAG,WAAYD,GAErBR,EAAMU,OAASH,EACRP,CACT,CAmCA,OAxDF,SAAmBW,EAAUC,GAAc,GAA0B,oBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIf,UAAU,kEAAoEe,GAAeD,EAASzB,UAAYxB,OAAOmD,OAAOD,GAAcA,EAAW1B,UAAW,CAAE4B,YAAa,CAAEjD,MAAO8C,EAAUhC,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAegC,IAAYlD,OAAOqD,eAAiBrD,OAAOqD,eAAeJ,EAAUC,GAAcD,EAASN,UAAYO,EAAY,CAG3eI,CAAUtB,EAAWC,GAoBrBvB,EAAasB,EAAW,CAAC,CACvBZ,IAAK,kBACLjB,MAAO,WACL,MAAO,CACL0C,MAAOR,KAAKW,OAEhB,GACC,CACD5B,IAAK,oBACLjB,MAAO,WACL,IAAIoD,EAASlB,KAGbmB,sBAAsB,WACpBD,EAAOP,OAAOS,SAChB,EACF,GACC,CACDrC,IAAK,cACLjB,MAAO,WACL,OAAOkC,KAAKW,MACd,GACC,CACD5B,IAAK,SACLjB,MAAO,WACL,IAAIuD,EAASrB,KAAKxB,MACd8C,EAAMD,EAAOC,IACbC,EAxDV,SAAkC/B,EAAKgC,GAAQ,IAAIjD,EAAS,CAAC,EAAG,IAAK,IAAIE,KAAKe,EAAWgC,EAAKC,QAAQhD,IAAM,GAAkBd,OAAOwB,UAAUhB,eAAegC,KAAKX,EAAKf,KAAcF,EAAOE,GAAKe,EAAIf,IAAM,OAAOF,CAAQ,CAwDrMmD,CAAyBL,EAAQ,CAAC,QAElD,OAAO,EAAIjC,EAAOuC,eAAeL,EAAKC,EACxC,KAGK5B,CACT,CAvDgB,CAuDdP,EAAOwC,WAETjC,EAAUkC,kBAAoB,CAC5BrB,MAAOnB,EAAYK,QAAQoC,WAAWvC,EAAQG,UAEhDC,EAAUoC,UAAY,CACpBT,IAAKjC,EAAYK,QAAQsC,QAE3BrC,EAAUsC,aAAe,CACvBX,IAAK,OAEPzD,EAAA,QAAkB8B,EAClBvB,EAAOP,QAAUA,EAAiB,O,yCChG8BO,EAAOP,QAG/D,WAAe,aASvB,IAAIqE,EAAU,WACV,GAAmB,qBAARC,IACP,OAAOA,IAUX,SAASC,EAASC,EAAKtD,GACnB,IAAIuD,GAAU,EAYd,OAVAD,EAAIE,KAAK,SAAUC,EAAOC,GACtB,OAAID,EAAM,KAAOzD,IACbuD,EAASG,GAEF,EAIf,GAEOH,CACX,CAEA,OAAQ,WACJ,SAASI,IACL1C,KAAK2C,YAAc,EACvB,CAEA,IAAIC,EAAqB,CAAEC,KAAM,CAAEhE,cAAc,IAiFjD,OA5EA+D,EAAmBC,KAAKC,IAAM,WAC1B,OAAO9C,KAAK2C,YAAYjE,MAC5B,EAMAgE,EAAUvD,UAAU2D,IAAM,SAAU/D,GAChC,IAAI0D,EAAQL,EAASpC,KAAK2C,YAAa5D,GACnCyD,EAAQxC,KAAK2C,YAAYF,GAE7B,OAAOD,GAASA,EAAM,EAC1B,EAOAE,EAAUvD,UAAU4D,IAAM,SAAUhE,EAAKjB,GACrC,IAAI2E,EAAQL,EAASpC,KAAK2C,YAAa5D,IAElC0D,EACDzC,KAAK2C,YAAYF,GAAO,GAAK3E,EAE7BkC,KAAK2C,YAAYK,KAAK,CAACjE,EAAKjB,GAEpC,EAMA4E,EAAUvD,UAAU8D,OAAS,SAAUlE,GACnC,IAAImE,EAAUlD,KAAK2C,YACfF,EAAQL,EAASc,EAASnE,IAEzB0D,GACDS,EAAQC,OAAOV,EAAO,EAE9B,EAMAC,EAAUvD,UAAUiE,IAAM,SAAUrE,GAChC,SAAUqD,EAASpC,KAAK2C,YAAa5D,EACzC,EAKA2D,EAAUvD,UAAUkE,MAAQ,WACxBrD,KAAK2C,YAAYQ,OAAO,EAC5B,EAOAT,EAAUvD,UAAUmE,QAAU,SAAUC,EAAUC,QAEjC,IAARA,IAAiBA,EAAM,MAE5B,IAAK,IAAI/E,EAAI,EAAGgF,EAHHzD,KAGiB2C,YAAalE,EAAIgF,EAAK/E,OAAQD,GAAK,EAAG,CAChE,IAAI+D,EAAQiB,EAAKhF,GAEjB8E,EAASpD,KAAKqD,EAAKhB,EAAM,GAAIA,EAAM,GACvC,CACJ,EAEA7E,OAAOW,iBAAkBoE,EAAUvD,UAAWyD,GAEvCF,CACX,CAvFO,EAwFV,CApHa,GAyHVgB,EAA8B,qBAAXC,QAA8C,qBAAbC,UAA4BD,OAAOC,WAAaA,SAGpGC,EACsB,qBAAX,EAAAC,GAA0B,EAAAA,EAAOC,OAASA,KAC1C,EAAAD,EAGS,qBAAT5D,MAAwBA,KAAK6D,OAASA,KACtC7D,KAGW,qBAAXyD,QAA0BA,OAAOI,OAASA,KAC1CJ,OAIJK,SAAS,cAATA,GASPC,EACqC,oBAA1B9C,sBAIAA,sBAAsB+C,KAAKL,GAG/B,SAAUN,GAAY,OAAOY,WAAW,WAAc,OAAOZ,EAASa,KAAKC,MAAQ,EAAG,IAAO,GAAK,EAIzGC,EAAkB,EAUlBC,EAAW,SAAUhB,EAAUiB,GAC/B,IAAIC,GAAc,EACdC,GAAe,EACfC,EAAe,EAQnB,SAASC,IACDH,IACAA,GAAc,EAEdlB,KAGAmB,GACAG,GAER,CASA,SAASC,IACLb,EAAwBW,EAC5B,CAOA,SAASC,IACL,IAAIE,EAAYX,KAAKC,MAErB,GAAII,EAAa,CAEb,GAAIM,EAAYJ,EAAeL,EAC3B,OAOJI,GAAe,CACnB,MACID,GAAc,EACdC,GAAe,EAEfP,WAAWW,EAAiBN,GAGhCG,EAAeI,CACnB,CAEA,OAAOF,CACX,EAGIG,EAAgB,GAIhBC,EAAiB,CAAC,MAAO,QAAS,SAAU,OAAQ,QAAS,SAAU,OAAQ,UAG/EC,EAAwD,qBAArBC,iBAKnCC,EAA2B,WAC3BpF,KAAKqF,YAAa,EAClBrF,KAAKsF,sBAAuB,EAC5BtF,KAAKuF,mBAAqB,KAC1BvF,KAAKwF,WAAa,GAElBxF,KAAKyF,iBAAmBzF,KAAKyF,iBAAiBvB,KAAKlE,MACnDA,KAAK0F,QAAUnB,EAASvE,KAAK0F,QAAQxB,KAAKlE,MAAOgF,EACrD,EA4BAI,EAAyBjG,UAAUwG,YAAc,SAAUC,IACjD5F,KAAKwF,WAAW/D,QAAQmE,IAC1B5F,KAAKwF,WAAWxC,KAAK4C,GAIpB5F,KAAKqF,YACNrF,KAAK6F,UAEb,EAQAT,EAAyBjG,UAAU2G,eAAiB,SAAUF,GAC1D,IAAIG,EAAY/F,KAAKwF,WACjB/C,EAAQsD,EAAUtE,QAAQmE,IAGzBnD,GACDsD,EAAU5C,OAAOV,EAAO,IAIvBsD,EAAUrH,QAAUsB,KAAKqF,YAC1BrF,KAAKgG,aAEb,EAQAZ,EAAyBjG,UAAUuG,QAAU,WACnB1F,KAAKiG,oBAKvBjG,KAAK0F,SAEb,EAUAN,EAAyBjG,UAAU8G,iBAAmB,WAElD,IAAIC,EAAkBlG,KAAKwF,WAAWW,OAAO,SAAUP,GACnD,OAAOA,EAASQ,eAAgBR,EAASS,WAC7C,GASA,OAFAH,EAAgB5C,QAAQ,SAAUsC,GAAY,OAAOA,EAASU,iBAAmB,GAE1EJ,EAAgBxH,OAAS,CACpC,EAQA0G,EAAyBjG,UAAU0G,SAAW,WAGrCnC,IAAa1D,KAAKqF,aAOvBzB,SAAS2C,iBAAiB,gBAAiBvG,KAAKyF,kBAEhD9B,OAAO4C,iBAAiB,SAAUvG,KAAK0F,SAEnCR,GACAlF,KAAKuF,mBAAqB,IAAIJ,iBAAiBnF,KAAK0F,SAEpD1F,KAAKuF,mBAAmBiB,QAAQ5C,SAAU,CACtC6C,YAAY,EACZC,WAAW,EACXC,eAAe,EACfC,SAAS,MAGbhD,SAAS2C,iBAAiB,qBAAsBvG,KAAK0F,SAErD1F,KAAKsF,sBAAuB,GAGhCtF,KAAKqF,YAAa,EACtB,EAQAD,EAAyBjG,UAAU6G,YAAc,WAGxCtC,GAAc1D,KAAKqF,aAIxBzB,SAASiD,oBAAoB,gBAAiB7G,KAAKyF,kBACnD9B,OAAOkD,oBAAoB,SAAU7G,KAAK0F,SAEtC1F,KAAKuF,oBACLvF,KAAKuF,mBAAmBuB,aAGxB9G,KAAKsF,sBACL1B,SAASiD,oBAAoB,qBAAsB7G,KAAK0F,SAG5D1F,KAAKuF,mBAAqB,KAC1BvF,KAAKsF,sBAAuB,EAC5BtF,KAAKqF,YAAa,EACtB,EASAD,EAAyBjG,UAAUsG,iBAAmB,SAAUsB,GACxD,IAAIC,EAAeD,EAAIC,kBAAoC,IAAjBA,IAA0BA,EAAe,IAGhE/B,EAAe1C,KAAK,SAAUxD,GACjD,SAAUiI,EAAavF,QAAQ1C,EACnC,IAGIiB,KAAK0F,SAEb,EAOAN,EAAyB6B,YAAc,WAKnC,OAJKjH,KAAKkH,YACNlH,KAAKkH,UAAY,IAAI9B,GAGlBpF,KAAKkH,SAChB,EAEA9B,EAAyB8B,UAAY,KASrC,IAAIC,EAAqB,SAAW5I,EAAQC,GACxC,IAAK,IAAIC,EAAI,EAAGgF,EAAO9F,OAAO6D,KAAKhD,GAAQC,EAAIgF,EAAK/E,OAAQD,GAAK,EAAG,CAChE,IAAIM,EAAM0E,EAAKhF,GAEfd,OAAOC,eAAeW,EAAQQ,EAAK,CAC/BjB,MAAOU,EAAMO,GACbH,YAAY,EACZE,UAAU,EACVD,cAAc,GAEtB,CAEA,OAAON,CACV,EAQG6I,EAAc,SAAW7I,GAQzB,OAJkBA,GAAUA,EAAO8I,eAAiB9I,EAAO8I,cAAcC,aAInDzD,CACzB,EAGG0D,EAAYC,EAAe,EAAG,EAAG,EAAG,GAQxC,SAASC,EAAQ3J,GACb,OAAO4J,WAAW5J,IAAU,CAChC,CASA,SAAS6J,EAAeC,GAEpB,IADA,IAAIC,EAAY,GAAIC,EAAMC,UAAUrJ,OAAS,EACrCoJ,KAAQ,GAAID,EAAWC,GAAQC,UAAWD,EAAM,GAExD,OAAOD,EAAUG,OAAO,SAAUnF,EAAMoF,GAGpC,OAAOpF,EAAO4E,EAFFG,EAAO,UAAYK,EAAW,UAG9C,EAAG,EACP,CAQA,SAASC,EAAYN,GAIjB,IAHA,IACIO,EAAW,CAAC,EAEP1J,EAAI,EAAGgF,EAHA,CAAC,MAAO,QAAS,SAAU,QAGThF,EAAIgF,EAAK/E,OAAQD,GAAK,EAAG,CACvD,IAAIwJ,EAAWxE,EAAKhF,GAEhBX,EAAQ8J,EAAO,WAAaK,GAEhCE,EAASF,GAAYR,EAAQ3J,EACjC,CAEA,OAAOqK,CACX,CASA,SAASC,EAAkB7J,GACvB,IAAI8J,EAAO9J,EAAO+J,UAElB,OAAOd,EAAe,EAAG,EAAGa,EAAKE,MAAOF,EAAKG,OACjD,CAQA,SAASC,EAA0BlK,GAG/B,IAAImK,EAAcnK,EAAOmK,YACrBC,EAAepK,EAAOoK,aAU1B,IAAKD,IAAgBC,EACjB,OAAOpB,EAGX,IAAIK,EAASR,EAAY7I,GAAQqK,iBAAiBrK,GAC9C4J,EAAWD,EAAYN,GACvBiB,EAAWV,EAASW,KAAOX,EAASY,MACpCC,EAAUb,EAASc,IAAMd,EAASe,OAMlCX,EAAQd,EAAQG,EAAOW,OACvBC,EAASf,EAAQG,EAAOY,QAwB5B,GApByB,eAArBZ,EAAOuB,YAOHpF,KAAKqF,MAAMb,EAAQM,KAAcH,IACjCH,GAASZ,EAAeC,EAAQ,OAAQ,SAAWiB,GAGnD9E,KAAKqF,MAAMZ,EAASQ,KAAaL,IACjCH,GAAUb,EAAeC,EAAQ,MAAO,UAAYoB,KAQvDK,EAAkB9K,GAAS,CAK5B,IAAI+K,EAAgBvF,KAAKqF,MAAMb,EAAQM,GAAYH,EAC/Ca,EAAiBxF,KAAKqF,MAAMZ,EAASQ,GAAWL,EAOpB,IAA5B5E,KAAKyF,IAAIF,KACTf,GAASe,GAGoB,IAA7BvF,KAAKyF,IAAID,KACTf,GAAUe,EAElB,CAEA,OAAO/B,EAAeW,EAASW,KAAMX,EAASc,IAAKV,EAAOC,EAC9D,CAQA,IAAIiB,EAGkC,qBAAvBC,mBACA,SAAUnL,GAAU,OAAOA,aAAkB6I,EAAY7I,GAAQmL,kBAAoB,EAMzF,SAAUnL,GAAU,OAAOA,aAAkB6I,EAAY7I,GAAQoL,YAAwC,oBAAnBpL,EAAO+J,OAAwB,EAShI,SAASe,EAAkB9K,GACvB,OAAOA,IAAW6I,EAAY7I,GAAQqF,SAASgG,eACnD,CAQA,SAASC,EAAetL,GACpB,OAAKmF,EAID+F,EAAqBlL,GACd6J,EAAkB7J,GAGtBkK,EAA0BlK,GAPtBgJ,CAQf,CASA,SAASuC,EAAmB/C,GACxB,IAAI7I,EAAI6I,EAAI7I,EACR6L,EAAIhD,EAAIgD,EACRxB,EAAQxB,EAAIwB,MACZC,EAASzB,EAAIyB,OAGbwB,EAAoC,qBAApBC,gBAAkCA,gBAAkBtM,OACpEuM,EAAOvM,OAAOmD,OAAOkJ,EAAO7K,WAWhC,OARAgI,EAAmB+C,EAAM,CACrBhM,EAAGA,EAAG6L,EAAGA,EAAGxB,MAAOA,EAAOC,OAAQA,EAClCS,IAAKc,EACLhB,MAAO7K,EAAIqK,EACXW,OAAQV,EAASuB,EACjBjB,KAAM5K,IAGHgM,CACX,CAYA,SAAS1C,EAAetJ,EAAG6L,EAAGxB,EAAOC,GACjC,MAAO,CAAEtK,EAAGA,EAAG6L,EAAGA,EAAGxB,MAAOA,EAAOC,OAAQA,EAC/C,CAMA,IAAI2B,EAAoB,SAAS5L,GAC7ByB,KAAKoK,eAAiB,EACtBpK,KAAKqK,gBAAkB,EACvBrK,KAAKsK,aAAe9C,EAAe,EAAG,EAAG,EAAG,GAE5CxH,KAAKzB,OAASA,CAClB,EAsBA4L,EAAkBhL,UAAUoL,SAAW,WACnC,IAAIL,EAAOL,EAAe7J,KAAKzB,QAI/B,OAFAyB,KAAKsK,aAAeJ,EAEbA,EAAK3B,QAAUvI,KAAKoK,gBAAkBF,EAAK1B,SAAWxI,KAAKqK,eACtE,EAQAF,EAAkBhL,UAAUqL,cAAgB,WACxC,IAAIN,EAAOlK,KAAKsK,aAKhB,OAHAtK,KAAKoK,eAAiBF,EAAK3B,MAC3BvI,KAAKqK,gBAAkBH,EAAK1B,OAErB0B,CACX,EAEA,IAAIO,EAAsB,SAASlM,EAAQmM,GACvC,IAAIC,EAAcb,EAAmBY,GAQrCvD,EAAmBnH,KAAM,CAAEzB,OAAQA,EAAQoM,YAAaA,GAC5D,EAEIC,EAAoB,SAASrH,EAAUsH,EAAYC,GAInD,GAHA9K,KAAK+K,oBAAsB,GAC3B/K,KAAKgL,cAAgB,IAAI9I,EAED,oBAAbqB,EACP,MAAM,IAAIzD,UAAU,2DAGxBE,KAAKiL,UAAY1H,EACjBvD,KAAKkL,YAAcL,EACnB7K,KAAKmL,aAAeL,CACxB,EA8BAF,EAAkBzL,UAAUqH,QAAU,SAAUjI,GAC5C,IAAKwJ,UAAUrJ,OACX,MAAM,IAAIoB,UAAU,4CAIxB,GAAuB,qBAAZsL,SAA6BA,mBAAmBzN,OAA3D,CAIA,KAAMY,aAAkB6I,EAAY7I,GAAQ6M,SACxC,MAAM,IAAItL,UAAU,yCAGxB,IAAIuL,EAAerL,KAAKgL,cAGpBK,EAAajI,IAAI7E,KAIrB8M,EAAatI,IAAIxE,EAAQ,IAAI4L,EAAkB5L,IAE/CyB,KAAKkL,YAAYvF,YAAY3F,MAG7BA,KAAKkL,YAAYxF,UAlBjB,CAmBJ,EAQAkF,EAAkBzL,UAAUmM,UAAY,SAAU/M,GAC9C,IAAKwJ,UAAUrJ,OACX,MAAM,IAAIoB,UAAU,4CAIxB,GAAuB,qBAAZsL,SAA6BA,mBAAmBzN,OAA3D,CAIA,KAAMY,aAAkB6I,EAAY7I,GAAQ6M,SACxC,MAAM,IAAItL,UAAU,yCAGxB,IAAIuL,EAAerL,KAAKgL,cAGnBK,EAAajI,IAAI7E,KAItB8M,EAAapI,OAAO1E,GAEf8M,EAAaxI,MACd7C,KAAKkL,YAAYpF,eAAe9F,MAhBpC,CAkBJ,EAOA4K,EAAkBzL,UAAU2H,WAAa,WACrC9G,KAAKuL,cACLvL,KAAKgL,cAAc3H,QACnBrD,KAAKkL,YAAYpF,eAAe9F,KACpC,EAQA4K,EAAkBzL,UAAUiH,aAAe,WACnC,IAAIoF,EAASxL,KAEjBA,KAAKuL,cAELvL,KAAKgL,cAAc1H,QAAQ,SAAUmI,GAC7BA,EAAYlB,YACZiB,EAAOT,oBAAoB/H,KAAKyI,EAExC,EACJ,EAQAb,EAAkBzL,UAAUmH,gBAAkB,WAE1C,GAAKtG,KAAKqG,YAAV,CAIA,IAAI7C,EAAMxD,KAAKmL,aAGXjI,EAAUlD,KAAK+K,oBAAoBW,IAAI,SAAUD,GACjD,OAAO,IAAIhB,EAAoBgB,EAAYlN,OAAQkN,EAAYjB,gBACnE,GAEAxK,KAAKiL,UAAU9K,KAAKqD,EAAKN,EAASM,GAClCxD,KAAKuL,aAVL,CAWJ,EAOAX,EAAkBzL,UAAUoM,YAAc,WACtCvL,KAAK+K,oBAAoB5H,OAAO,EACpC,EAOAyH,EAAkBzL,UAAUkH,UAAY,WACpC,OAAOrG,KAAK+K,oBAAoBrM,OAAS,CAC7C,EAKA,IAAIqH,EAA+B,qBAAZ4F,QAA0B,IAAIA,QAAY,IAAIzJ,EAMjE0J,EAAiB,SAASrI,GAC1B,KAAMvD,gBAAgB4L,GAClB,MAAM,IAAI9L,UAAU,sCAExB,IAAKiI,UAAUrJ,OACX,MAAM,IAAIoB,UAAU,4CAGxB,IAAI+K,EAAazF,EAAyB6B,cACtCrB,EAAW,IAAIgF,EAAkBrH,EAAUsH,EAAY7K,MAE3D+F,EAAUhD,IAAI/C,KAAM4F,EACxB,EAmBA,MAhBA,CAAC,UAAW,YAAa,cAActC,QAAQ,SAAUuI,GACrDD,EAAezM,UAAU0M,GAAU,WAC/B,OAAQ9E,EAAMhB,EAAUjD,IAAI9C,OAAO6L,GAAQC,MAAM/E,EAAKgB,WACtD,KACJ,CACJ,GAI2C,qBAA5BlE,EAAS+H,eACT/H,EAAS+H,eAGbA,CAKV,CAtgCgFG,E,oDCCjFpO,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAGT,IAAIO,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMnB,OAAOC,eAAeW,EAAQI,EAAWI,IAAKJ,EAAa,CAAE,CAAE,OAAO,SAAUK,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYX,EAAiBU,EAAYG,UAAWF,GAAiBC,GAAaZ,EAAiBU,EAAaE,GAAqBF,CAAa,CAAG,CAA7hB,GAInB,SAASgN,EAAcC,GACrB,OAAOA,EAAEC,SAAWD,EAAEC,QAAQ,IAAMD,CACtC,CAEA,IAAIE,EAAQ,WACV,SAASA,EAAM3L,GACb,IAAIP,EAAQD,MARhB,SAAyBH,EAAUb,GAAe,KAAMa,aAAoBb,GAAgB,MAAM,IAAIc,UAAU,oCAAwC,CAUpJC,CAAgBC,KAAMmM,GAEtBnM,KAAKoM,cAAgB,SAAUH,GAC7B,IAAII,EAAiBL,EAAcC,GAC/BK,EAAQD,EAAeC,MACvBC,EAAQF,EAAeE,MAK3BtM,EAAMO,MAAMgM,WAAY,EAGxBvM,EAAMwM,YAAc,CAClBvO,EAAGoO,EACHvC,EAAGwC,GAGHtM,EAAMyM,WAAa,CACnBxO,EAAG,EACH6L,EAAG,GAGH9J,EAAM0M,UAAW,EAEnBxI,WAAW,WACTlE,EAAM0M,UAAW,CACnB,EAAG1M,EAAMO,MAAMoM,QAAQC,cAEvB5M,EAAMO,MAAMsM,KAAK,aACnB,EAEA9M,KAAK+M,aAAe,SAAUd,GAE5B,GAAKhM,EAAMO,MAAMgM,UAAjB,CAEA,IAAIQ,EAAiB/M,EAAMO,MAAMoM,QAC7BK,EAAiBD,EAAeC,eAChCC,EAAOF,EAAeE,KAEtBC,EAAkBnB,EAAcC,GAChCK,EAAQa,EAAgBb,MACxBC,EAAQY,EAAgBZ,MAe5B,GAVKtM,EAAMmN,cACTnN,EAAMmN,YAAcnN,EAAMO,MAAM6M,cAIlCpN,EAAMyM,WAAa,CACjBxO,EAAG+B,EAAMwM,YAAYvO,EAAIoO,EACzBvC,EAAG9J,EAAMwM,YAAY1C,EAAIwC,GAGvBtM,EAAMqN,SAASL,GAAiB,CAClChB,EAAEsB,iBACFtB,EAAEuB,kBAEF,IAAIC,EAAYxN,EAAMyM,WAAWQ,GAC7BQ,EAAgBzN,EAAMmN,YAAcK,EAExCxN,EAAMO,MAAMmN,iBAAiBD,GAE7BzN,EAAMO,MAAMsM,KAAK,YACnB,CAjCkC,CAkCpC,EAEA9M,KAAK4N,YAAc,WACjB,IAAIC,EAAkB5N,EAAMO,MAAMoM,QAC9BK,EAAiBY,EAAgBZ,eACjCa,EAAcD,EAAgBC,YAC9BZ,EAAOW,EAAgBX,KAGvBa,GAFWF,EAAgBG,SAEf/N,EAAM0M,SAAWM,EAAiBhN,EAAMO,MAAMyN,YAAYC,UAAYJ,EAAcb,GAGpGhN,EAAMO,MAAMgM,WAAY,EAGxBvM,EAAMmN,aAAc,GAGhBnN,EAAMyM,WAAWxO,GAAK+B,EAAMyM,WAAW3C,KAErC9J,EAAMqN,SAASS,GACb9N,EAAMyM,WAAWQ,GAAQ,EAC3BjN,EAAMO,MAAM2N,OAEZlO,EAAMO,MAAM4N,OAKZnO,EAAMO,MAAMmN,oBAIlB1N,EAAMO,MAAMsM,KAAK,WACnB,EAEA9M,KAAKqO,aAAe,WAEdpO,EAAMO,MAAMgM,WACdvM,EAAM2N,aAEV,EAEA5N,KAAKQ,MAAQA,EACbR,KAAKoN,aAAc,EACnBpN,KAAKyM,YAAczM,KAAK0M,WAAa,CACnCxO,EAAG,EACH6L,EAAG,EAEP,CAmCA,OAjCA1L,EAAa8N,EAAO,CAAC,CACnBpN,IAAK,WACLjB,MAAO,SAAkBiQ,GACvB,IAAIrB,EAAa1M,KAAK0M,WAClBxO,EAAIwO,EAAWxO,EACf6L,EAAI2C,EAAW3C,EAEnB,MAAmC,MAA5B/J,KAAKQ,MAAMoM,QAAQM,KAAenJ,KAAKyF,IAAItL,GAAK6F,KAAKuK,IAAIP,EAAWhK,KAAKyF,IAAIO,IAAMhG,KAAKyF,IAAItL,GAAK6F,KAAKuK,IAAIP,EAAWhK,KAAKyF,IAAIO,GACvI,GACC,CACDhL,IAAK,YACLjB,MAAO,WACL,IAAIyQ,EAAQvO,KAAKQ,MAAMoM,QAAQ2B,MAE3BC,EAAc,CAAC,EAenB,OAbc,IAAVD,GAA4B,UAAVA,IACpBC,EAAYC,YAAczO,KAAKoM,cAC/BoC,EAAYE,YAAc1O,KAAK+M,aAC/ByB,EAAYG,UAAY3O,KAAK4N,YAC7BY,EAAYI,aAAe5O,KAAKqO,eAGpB,IAAVE,GAA4B,UAAVA,IACpBC,EAAYK,aAAe7O,KAAKoM,cAChCoC,EAAYM,YAAc9O,KAAK+M,aAC/ByB,EAAYO,WAAa/O,KAAK4N,aAGzBY,CACT,KAGKrC,CACT,CA7JY,GA+JZtO,EAAA,QAAkBsO,EAClB/N,EAAOP,QAAUA,EAAiB,O,oDCjKlC,SAASmR,EAAOC,EAAKX,GACnB,OAAQW,EAAMX,EAAMA,GAAOA,CAC7B,CAbA3Q,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQmR,OAASA,EACjBnR,EAAQqR,MAWR,SAAeD,EAAKE,EAAKb,GACvB,OAAOvK,KAAKoL,IAAIpL,KAAKuK,IAAIa,EAAKF,GAAMX,EACtC,EAZAzQ,EAAQuR,IAcR,SAAa/M,GACX,OAAOA,EAAI2F,OAAO,SAAUjK,EAAGC,GAC7B,OAAOD,EAAIC,CACb,EAAG,EACL,EAjBAH,EAAQyQ,IAmBR,SAAajM,GACX,OAAO0B,KAAKuK,IAAIxC,MAAM,KAAMzJ,EAC9B,EApBAxE,EAAQwR,MAsBR,SAAeC,EAAOC,EAAKjB,GACzB,MAAO,GAAGkB,OArBZ,SAA4BnN,GAAO,GAAIoN,MAAMC,QAAQrN,GAAM,CAAE,IAAK,IAAI5D,EAAI,EAAGkR,EAAOF,MAAMpN,EAAI3D,QAASD,EAAI4D,EAAI3D,OAAQD,IAAOkR,EAAKlR,GAAK4D,EAAI5D,GAAM,OAAOkR,CAAM,CAAS,OAAOF,MAAMG,KAAKvN,EAAQ,CAqB/KwN,CAAmBJ,MAAM,EAAIF,EAAMD,KAAS5D,IAAI,SAAUuD,GACzE,OAAOX,EAAMU,EAAOM,EAAQL,EAAKX,GAAOgB,EAAQL,CAClD,EACF,C,sDCjCAtR,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAGT,IAAIgS,EAAWnS,OAAOoS,QAAU,SAAUxR,GAAU,IAAK,IAAIE,EAAI,EAAGA,EAAIsJ,UAAUrJ,OAAQD,IAAK,CAAE,IAAIuR,EAASjI,UAAUtJ,GAAI,IAAK,IAAIM,KAAOiR,EAAcrS,OAAOwB,UAAUhB,eAAegC,KAAK6P,EAAQjR,KAAQR,EAAOQ,GAAOiR,EAAOjR,GAAU,CAAE,OAAOR,CAAQ,EAE3PF,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMnB,OAAOC,eAAeW,EAAQI,EAAWI,IAAKJ,EAAa,CAAE,CAAE,OAAO,SAAUK,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYX,EAAiBU,EAAYG,UAAWF,GAAiBC,GAAaZ,EAAiBU,EAAaE,GAAqBF,CAAa,CAAG,CAA7hB,GAEfI,EAAS,EAAQ,wBAMjBC,GAJUC,EAAuBF,GAInBE,EAFD,EAAQ,0BAMrB2Q,EAAiB3Q,EAFD,EAAQ,yBAMxBC,EAAUD,EAFD,EAAQ,yBAMjB4Q,EAAkB5Q,EAFD,EAAQ,yBAI7B,SAASA,EAAuBE,GAAO,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CAAEE,QAASF,EAAO,CAU9F,IAAI2Q,EAAe,CACjB7O,IAAKjC,EAAYK,QAAQsC,OACzBS,MAAOpD,EAAYK,QAAQ0Q,OAC3BC,WAAYhR,EAAYK,QAAQ4Q,OAG9BC,EAAe,SAAU3Q,GAG3B,SAAS2Q,IAGP,OAlBJ,SAAyB1Q,EAAUb,GAAe,KAAMa,aAAoBb,GAAgB,MAAM,IAAIc,UAAU,oCAAwC,CAgBpJC,CAAgBC,KAAMuQ,GAd1B,SAAoCrQ,EAAMC,GAAQ,IAAKD,EAAQ,MAAM,IAAIE,eAAe,6DAAgE,OAAOD,GAAyB,kBAATA,GAAqC,oBAATA,EAA8BD,EAAPC,CAAa,CAgBpOE,CAA2BL,MAAOuQ,EAAajQ,WAAa3C,OAAO4C,eAAegQ,IAAezE,MAAM9L,KAAM+H,WACtH,CAsCA,OArDF,SAAmBnH,EAAUC,GAAc,GAA0B,oBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIf,UAAU,kEAAoEe,GAAeD,EAASzB,UAAYxB,OAAOmD,OAAOD,GAAcA,EAAW1B,UAAW,CAAE4B,YAAa,CAAEjD,MAAO8C,EAAUhC,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAegC,IAAYlD,OAAOqD,eAAiBrD,OAAOqD,eAAeJ,EAAUC,GAAcD,EAASN,UAAYO,EAAY,CAS3eI,CAAUsP,EAAc3Q,GAQxBvB,EAAakS,EAAc,CAAC,CAC1BxR,IAAK,qBACLjB,MAAO,WACL,IAAIuS,EAAarQ,KAAKxB,MAAM6R,WAGxBA,EAAW3R,SACbsB,KAAKwQ,cAAgB,IAAIP,EAAevQ,QAAQ,CAC9C2Q,WAAYA,EACZI,OAAQ,SAAgBC,GACtB,OAAOA,EAAKD,MACd,IAGN,GACC,CACD1R,IAAK,SACLjB,MAAO,WACL,IAAIuD,EAASrB,KAAKxB,MACd8C,EAAMD,EAAOC,IACbmB,EAAQpB,EAAOoB,MACflB,EA5CV,SAAkC/B,EAAKgC,GAAQ,IAAIjD,EAAS,CAAC,EAAG,IAAK,IAAIE,KAAKe,EAAWgC,EAAKC,QAAQhD,IAAM,GAAkBd,OAAOwB,UAAUhB,eAAegC,KAAKX,EAAKf,KAAcF,EAAOE,GAAKe,EAAIf,IAAM,OAAOF,CAAQ,CA4CrMmD,CAAyBL,EAAQ,CAAC,MAAO,UAErDsP,EAAQb,EAAS,CAAC,EAAGvO,EAAUoP,OAEnC,GAAI3Q,KAAKwQ,cAAe,CACtB,IAAIE,EAAO1Q,KAAK4Q,QAAQF,MAAQ1Q,KAAK4Q,QAAQpQ,MAAMqQ,QAAQpO,GACvDiO,IACFC,EAAQb,EAAS,CAAC,EAAGvO,EAAUoP,MAAO3Q,KAAKwQ,cAAcM,UAAUJ,IAEvE,CAEA,OAAO,EAAItR,EAAOuC,eAAeL,GAAK,EAAI4O,EAAgBxQ,SAAS,CAAEiR,MAAOA,GAAS3Q,KAAKxB,MAAO2R,GACnG,KAGKI,CACT,CA9CmB,CA8CjBnR,EAAOwC,WAET2O,EAAaQ,aAAe,CAC1BvQ,MAAOnB,EAAYK,QAAQoC,WAAWvC,EAAQG,SAC9CgR,KAAMrR,EAAYK,QAAQsR,KAE5BT,EAAaxO,UAAYoO,EACzBI,EAAatO,aAAe,CAC1BX,IAAK,MACL+O,WAAY,IAEdxS,EAAA,QAAkB0S,EAClBnS,EAAOP,QAAUA,EAAiB,O,sDCtGlCF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAGT,IAAIO,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMnB,OAAOC,eAAeW,EAAQI,EAAWI,IAAKJ,EAAa,CAAE,CAAE,OAAO,SAAUK,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYX,EAAiBU,EAAYG,UAAWF,GAAiBC,GAAaZ,EAAiBU,EAAaE,GAAqBF,CAAa,CAAG,CAA7hB,GAEfiS,EAAS,EAAQ,wBAIrB,IAAIC,EAAW,WACb,SAASA,EAAS1Q,GAChB,IAAIP,EAAQD,MAJhB,SAAyBH,EAAUb,GAAe,KAAMa,aAAoBb,GAAgB,MAAM,IAAIc,UAAU,oCAAwC,CAMpJC,CAAgBC,KAAMkR,GAEtBlR,KAAKmR,eAAiB,SAAUlF,GAE9B,OAAQA,EAAElN,KAER,IAAK,UACL,IAAK,YAEH,YADAkB,EAAMO,MAAM2N,OAId,IAAK,YACL,IAAK,aACL,IAAK,IAEH,YADAlO,EAAMO,MAAM4N,OAId,IAAK,OAEH,YADAnO,EAAMO,MAAM4Q,eAAe,CAAE3O,MAAO,IAItC,IAAK,MAEH,YADAxC,EAAMO,MAAM4Q,eAAe,CAAE3O,MAAOxC,EAAMO,MAAM6Q,MAAM3S,OAAS,IAOnE,IAFA,IAAI4S,GAAY,EAAIL,EAAO/B,OAAOjP,EAAMO,MAAM6Q,MAAM3S,OAAQ,EAAG,GAEtDD,EAAI,EAAGA,GAAK6S,EAAW7S,KACzBwN,EAAElN,MAAQN,GACbwB,EAAMO,MAAM4Q,eAAe,CAAE3O,MAAOhE,EAAI,GAG9C,EAEAuB,KAAKQ,MAAQA,CACf,CAeA,OAbAnC,EAAa6S,EAAU,CAAC,CACtBnS,IAAK,YACLjB,MAAO,WACL,IAAIyT,EAAiB,CAAC,EAMtB,OAJIvR,KAAKQ,MAAMoM,QAAQ4E,gBACrBD,EAAeE,UAAYzR,KAAKmR,gBAG3BI,CACT,KAGKL,CACT,CA5De,GA8DfrT,EAAA,QAAkBqT,EAClB9S,EAAOP,QAAUA,EAAiB,O,sDCzElCF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAGT,IAAIgS,EAAWnS,OAAOoS,QAAU,SAAUxR,GAAU,IAAK,IAAIE,EAAI,EAAGA,EAAIsJ,UAAUrJ,OAAQD,IAAK,CAAE,IAAIuR,EAASjI,UAAUtJ,GAAI,IAAK,IAAIM,KAAOiR,EAAcrS,OAAOwB,UAAUhB,eAAegC,KAAK6P,EAAQjR,KAAQR,EAAOQ,GAAOiR,EAAOjR,GAAU,CAAE,OAAOR,CAAQ,EAE3PF,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMnB,OAAOC,eAAeW,EAAQI,EAAWI,IAAKJ,EAAa,CAAE,CAAE,OAAO,SAAUK,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYX,EAAiBU,EAAYG,UAAWF,GAAiBC,GAAaZ,EAAiBU,EAAaE,GAAqBF,CAAa,CAAG,CAA7hB,GAEfI,EAAS,EAAQ,wBAMjBC,GAJUC,EAAuBF,GAInBE,EAFD,EAAQ,0BAIrBoS,EAAY,EAAQ,wBAIpBnS,EAAUD,EAFD,EAAQ,yBAIrB,SAASA,EAAuBE,GAAO,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CAAEE,QAASF,EAAO,CAM9F,SAASa,EAA2BH,EAAMC,GAAQ,IAAKD,EAAQ,MAAM,IAAIE,eAAe,6DAAgE,OAAOD,GAAyB,kBAATA,GAAqC,oBAATA,EAA8BD,EAAPC,CAAa,CAI/O,IAAIwR,EAAO,SAAU/R,GAGnB,SAAS+R,IACP,IAAIC,EAEAC,EAAO5R,GAZf,SAAyBJ,EAAUb,GAAe,KAAMa,aAAoBb,GAAgB,MAAM,IAAIc,UAAU,oCAAwC,CAcpJC,CAAgBC,KAAM2R,GAEtB,IAAK,IAAIG,EAAO/J,UAAUrJ,OAAQqT,EAAOtC,MAAMqC,GAAOE,EAAO,EAAGA,EAAOF,EAAME,IAC3ED,EAAKC,GAAQjK,UAAUiK,GAGzB,OAAeH,EAAS5R,EAAQI,EAA2BL,MAAO4R,EAAOD,EAAKrR,WAAa3C,OAAO4C,eAAeoR,IAAOxR,KAAK2L,MAAM8F,EAAM,CAAC5R,MAAMwP,OAAOuC,KAAiB9R,EAAMgS,YAAa,EAAOhS,EAAMiS,cAAgB,KAAc7R,EAA2BJ,EAAnC4R,EAChO,CAmDA,OApEF,SAAmBjR,EAAUC,GAAc,GAA0B,oBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIf,UAAU,kEAAoEe,GAAeD,EAASzB,UAAYxB,OAAOmD,OAAOD,GAAcA,EAAW1B,UAAW,CAAE4B,YAAa,CAAEjD,MAAO8C,EAAUhC,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAegC,IAAYlD,OAAOqD,eAAiBrD,OAAOqD,eAAeJ,EAAUC,GAAcD,EAASN,UAAYO,EAAY,CAG3eI,CAAU0Q,EAAM/R,GAgBhBvB,EAAasT,EAAM,CAAC,CAClB5S,IAAK,kBACLjB,MAAO,WACL,MAAO,CACL4S,KAAM1Q,KAAKkS,cAEf,GACC,CACDnT,IAAK,oBACLjB,MAAO,WACLkC,KAAKkS,cAAgBlS,KAAK4Q,QAAQpQ,MAAM2R,SAAQ,EAAIT,EAAUU,aAAapS,OAC3EA,KAAKiS,YAAa,EAClBjS,KAAKS,aACP,GACC,CACD1B,IAAK,uBACLjB,MAAO,WACLkC,KAAK4Q,QAAQpQ,MAAM6R,WAAWrS,KAAKkS,cACrC,GACC,CACDnT,IAAK,SACLjB,MAAO,WACL,IACIkP,EADQhN,KAAK4Q,QAAQpQ,MACEoM,QAIvBvL,GAHc2L,EAAesF,YACtBtF,EAAeE,KAEblN,KAAKxB,OACd8C,EAAMD,EAAOC,IAEbC,GADYF,EAAOkR,UAtD7B,SAAkC/S,EAAKgC,GAAQ,IAAIjD,EAAS,CAAC,EAAG,IAAK,IAAIE,KAAKe,EAAWgC,EAAKC,QAAQhD,IAAM,GAAkBd,OAAOwB,UAAUhB,eAAegC,KAAKX,EAAKf,KAAcF,EAAOE,GAAKe,EAAIf,IAAM,OAAOF,CAAQ,CAuDrMmD,CAAyBL,EAAQ,CAAC,MAAO,eAErDsP,EAAQb,EAAS,CAAC,EAAGvO,EAAUoP,OAanC,OATK3Q,KAAKiS,aACRtB,EAAM6B,WAAa,SACnB7B,EAAM8B,cAAgB,QAGpBzS,KAAKkS,gBACPvB,EAAQb,EAAS,CAAC,EAAGa,EAAO3Q,KAAKkS,cAAcpB,eAG1C,EAAI1R,EAAOuC,eAAeL,EAAKwO,EAAS,CAAC,EAAGvO,EAAW,CAAEoP,MAAOA,IACzE,KAGKgB,CACT,CAnEW,CAmETvS,EAAOwC,WAET+P,EAAKZ,aAAe,CAClBvQ,MAAOnB,EAAYK,QAAQoC,WAAWvC,EAAQG,UAEhDiS,EAAK9P,kBAAoB,CACvB6O,KAAMrR,EAAYK,QAAQsR,KAE5BW,EAAK5P,UAAY,CACfT,IAAKjC,EAAYK,QAAQsR,KAE3BW,EAAK1P,aAAe,CAClBX,IAAK,OAEPzD,EAAA,QAAkB8T,EAClBvT,EAAOP,QAAUA,EAAiB,O,sDClHlCF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAGT,IAAIgS,EAAWnS,OAAOoS,QAAU,SAAUxR,GAAU,IAAK,IAAIE,EAAI,EAAGA,EAAIsJ,UAAUrJ,OAAQD,IAAK,CAAE,IAAIuR,EAASjI,UAAUtJ,GAAI,IAAK,IAAIM,KAAOiR,EAAcrS,OAAOwB,UAAUhB,eAAegC,KAAK6P,EAAQjR,KAAQR,EAAOQ,GAAOiR,EAAOjR,GAAU,CAAE,OAAOR,CAAQ,EAE3PF,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMnB,OAAOC,eAAeW,EAAQI,EAAWI,IAAKJ,EAAa,CAAE,CAAE,OAAO,SAAUK,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYX,EAAiBU,EAAYG,UAAWF,GAAiBC,GAAaZ,EAAiBU,EAAaE,GAAqBF,CAAa,CAAG,CAA7hB,GAEfI,EAAS,EAAQ,wBAEjBsT,EAAUpT,EAAuBF,GAIjCC,EAAcC,EAFD,EAAQ,yBAIrBoS,EAAY,EAAQ,wBAEpBiB,EAAe,EAAQ,wBAIvBpT,EAAUD,EAFD,EAAQ,yBAMjBsT,EAAUtT,EAFD,EAAQ,yBAMjBuT,EAAavT,EAFD,EAAQ,yBAMpB4Q,EAAkB5Q,EAFD,EAAQ,yBAI7B,SAASA,EAAuBE,GAAO,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CAAEE,QAASF,EAAO,CAQ9F,IAAI2Q,EAAe,CACjB7O,IAAKjC,EAAYK,QAAQsR,IACzB8B,SAAUzT,EAAYK,QAAQqT,MAAM,EAAC,GAAM,EAAO,QAAS,WAC3DvB,cAAenS,EAAYK,QAAQsT,KACnCC,aAAc5T,EAAYK,QAAQwT,SAAS7T,EAAYK,QAAQ0Q,SAG7D+C,EAAQ,SAAUvT,GAGpB,SAASuT,EAAM3U,IAhBjB,SAAyBqB,EAAUb,GAAe,KAAMa,aAAoBb,GAAgB,MAAM,IAAIc,UAAU,oCAAwC,CAiBpJC,CAAgBC,KAAMmT,GAEtB,IAAIlT,EAjBR,SAAoCC,EAAMC,GAAQ,IAAKD,EAAQ,MAAM,IAAIE,eAAe,6DAAgE,OAAOD,GAAyB,kBAATA,GAAqC,oBAATA,EAA8BD,EAAPC,CAAa,CAiB/NE,CAA2BL,MAAOmT,EAAM7S,WAAa3C,OAAO4C,eAAe4S,IAAQhT,KAAKH,KAAMxB,IAqB1G,OAnBAyB,EAAMmT,cAAgB,WACpB,IAAIC,EAAYpT,EAAM2Q,QAAQpQ,MAAM8S,aAAa,CAAEC,UAAU,IAEzDF,EAAU9K,OAAS8K,EAAU7K,QAC/BvI,EAAMuT,SAASH,EAAW,WAEpBpT,EAAMwT,MAAMC,SACdzT,EAAMuT,SAAS,CAAEE,SAAS,GAE9B,EAEJ,EAEAzT,EAAMwT,MAAQ,CACZlL,MAAO,EACPC,OAAQ,EACRkL,SAAS,GAEXzT,EAAM0T,UAAW,EACV1T,CACT,CAgHA,OArJF,SAAmBW,EAAUC,GAAc,GAA0B,oBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIf,UAAU,kEAAoEe,GAAeD,EAASzB,UAAYxB,OAAOmD,OAAOD,GAAcA,EAAW1B,UAAW,CAAE4B,YAAa,CAAEjD,MAAO8C,EAAUhC,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAegC,IAAYlD,OAAOqD,eAAiBrD,OAAOqD,eAAeJ,EAAUC,GAAcD,EAASN,UAAYO,EAAY,CAU3eI,CAAUkS,EAAOvT,GA6BjBvB,EAAa8U,EAAO,CAAC,CACnBpU,IAAK,qBACLjB,MAAO,WACL,IAAI0C,EAAQR,KAAK4Q,QAAQpQ,MACrBa,EAASrB,KAAKxB,MACdsU,EAAWzR,EAAOyR,SAClBtB,EAAgBnQ,EAAOmQ,cAG3BhR,EAAMoT,WAAW,CAAEd,SAAUA,EAAUtB,cAAeA,IAEtDxR,KAAK6T,OAAS,IAAIjB,EAAQlT,QAAQc,GAClCR,KAAK8T,UAAY,IAAIjB,EAAWnT,QAAQc,EAC1C,GACC,CACDzB,IAAK,oBACLjB,MAAO,WACL,IAAI0C,EAAQR,KAAK4Q,QAAQpQ,MAGzBA,EAAMuT,UAAS,EAAIrC,EAAUU,aAAapS,OAG1CA,KAAKoT,gBACL5S,EAAME,GAAG,aAAcV,KAAKoT,eAC5B5S,EAAME,GAAG,WAAYV,KAAKoT,cAC5B,GACC,CACDrU,IAAK,4BACLjB,MAAO,SAAmC8T,GACxC,IAAIkB,EAAWlB,EAAKkB,SAChBtB,EAAgBI,EAAKJ,cAGrBxR,KAAKxB,MAAMsU,WAAaA,GAAY9S,KAAKxB,MAAMgT,gBAAkBA,IACnExR,KAAK4Q,QAAQpQ,MAAMoT,WAAW,CAAEd,SAAUA,EAAUtB,cAAeA,IACnExR,KAAK2T,UAAW,EAEpB,GACC,CACD5U,IAAK,qBACLjB,MAAO,SAA4BkW,GAC7BhU,KAAK2T,WACP3T,KAAK4Q,QAAQpQ,MAAMY,UACnBpB,KAAK2T,UAAW,EAEpB,GACC,CACD5U,IAAK,iBACLjB,MAAO,WACL,IAAImV,EAAejT,KAAKxB,MAAMyU,aAC1BgB,EAASjU,KAAKyT,MACdlL,EAAQ0L,EAAO1L,MACfC,EAASyL,EAAOzL,OAChBkL,EAAUO,EAAOP,QAErB,MAAO,CACLQ,SAAUR,EAAUnL,GAAQ,EAAIoK,EAAawB,QAAQ5L,EAAO0K,GAC5DzK,OAAQkL,EAAUlL,GAAS,EAAImK,EAAawB,QAAQ3L,EAAQyK,GAEhE,GACC,CACDlU,IAAK,eACLjB,MAAO,SAAsB6S,GACf3Q,KAAK4Q,QAAQpQ,MAAzB,IACI4T,EAAUpU,KAAKxB,MACf8C,EAAM8S,EAAQ9S,IACdkQ,EAAgB4C,EAAQ5C,cAExBhT,GAAQ,EAAI0R,EAAgBxQ,SAASoQ,EAAS,CAAC,EAAG9P,KAAK6T,OAAOQ,YAAarU,KAAK8T,UAAUO,YAAa,CACzGC,SAAU9C,EAAgB,EAAI,OAC5BxR,KAAKxB,MAAO2R,GAEhB,OAAO,EAAI/Q,EAAOuC,eAAeL,EAAKwO,EAAS,CAAC,EAAGtR,EAAO,CACxDmS,MAAOb,EAAS,CAAC,EAAGa,EAAOnS,EAAMmS,SAErC,GACC,CACD5R,IAAK,SACLjB,MAAO,WACL,IAAIoD,EAASlB,KAET8S,EAAW9S,KAAKxB,MAAMsU,SAGtBnC,GAFS3Q,KAAKyT,MAAMjL,OAEZ,CACVP,SAAU,WACVsM,SAAU,WAGZ,OAAIzB,EACKJ,EAAQhT,QAAQiC,cACrBgR,EAAa6B,OACb,CAAE7D,MAAO3Q,KAAKyU,kBACd,SAAUC,GAOR,OANkB,IAAb5B,GAAkC,UAAbA,IAAyB4B,EAAWR,WAC5DvD,EAAMuD,SAAWQ,EAAWR,WAEZ,IAAbpB,GAAkC,WAAbA,IAA0B4B,EAAWlM,SAC7DmI,EAAMnI,OAASkM,EAAWlM,QAErBtH,EAAOyT,aAAahE,EAC7B,GAGK3Q,KAAK2U,aAAahE,EAE7B,KAGKwC,CACT,CA7IY,CA6IV/T,EAAOwC,WAETuR,EAAMpC,aAAe,CACnBvQ,MAAOnB,EAAYK,QAAQoC,WAAWvC,EAAQG,UAEhDyT,EAAMpR,UAAYoO,EAClBgD,EAAMlR,aAAe,CACnBX,IAAK,MACLwR,UAAU,EACVtB,eAAe,EACfyB,aAAcN,EAAaiC,QAAQC,UAErChX,EAAA,QAAkBsV,EAClB/U,EAAOP,QAAUA,EAAiB,O,oDC7MlCF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QAIA,SAAkBkB,EAAK+V,GACrB,IAAIrS,EAAQ,KASZ,OAPArD,EAAO2V,SAASzR,QAAQwR,EAAU,SAAUE,EAAOC,GAC7CD,EAAMjW,MAAQA,GAAOkW,IAAWlW,IAClC0D,EAAQwS,EAGZ,GAEOxS,CACT,EAbA,IAAIrD,EAAS,EAAQ,wBAcrBhB,EAAOP,QAAUA,EAAiB,O,oDCnBlCF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAGT,IAAIgS,EAAWnS,OAAOoS,QAAU,SAAUxR,GAAU,IAAK,IAAIE,EAAI,EAAGA,EAAIsJ,UAAUrJ,OAAQD,IAAK,CAAE,IAAIuR,EAASjI,UAAUtJ,GAAI,IAAK,IAAIM,KAAOiR,EAAcrS,OAAOwB,UAAUhB,eAAegC,KAAK6P,EAAQjR,KAAQR,EAAOQ,GAAOiR,EAAOjR,GAAU,CAAE,OAAOR,CAAQ,EAE3PF,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMnB,OAAOC,eAAeW,EAAQI,EAAWI,IAAKJ,EAAa,CAAE,CAAE,OAAO,SAAUK,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYX,EAAiBU,EAAYG,UAAWF,GAAiBC,GAAaZ,EAAiBU,EAAaE,GAAqBF,CAAa,CAAG,CAA7hB,GAIfkW,EAAS5V,EAFD,EAAQ,yBAMhB6V,EAAa7V,EAFD,EAAQ,yBAMpB2Q,EAAiB3Q,EAFD,EAAQ,yBAMxB8V,EAA2B9V,EAFD,EAAQ,yBAMlC+V,EAAiB/V,EAFA,EAAQ,yBAIzB2R,EAAS,EAAQ,wBAErB,SAAS3R,EAAuBE,GAAO,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CAAEE,QAASF,EAAO,CAM9F,SAASO,EAAgBF,EAAUb,GAAe,KAAMa,aAAoBb,GAAgB,MAAM,IAAIc,UAAU,oCAAwC,CAExJ,SAASO,EAA2BH,EAAMC,GAAQ,IAAKD,EAAQ,MAAM,IAAIE,eAAe,6DAAgE,OAAOD,GAAyB,kBAATA,GAAqC,oBAATA,EAA8BD,EAAPC,CAAa,CAE/O,SAASc,EAAUL,EAAUC,GAAc,GAA0B,oBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIf,UAAU,kEAAoEe,GAAeD,EAASzB,UAAYxB,OAAOmD,OAAOD,GAAcA,EAAW1B,UAAW,CAAE4B,YAAa,CAAEjD,MAAO8C,EAAUhC,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAegC,IAAYlD,OAAOqD,eAAiBrD,OAAOqD,eAAeJ,EAAUC,GAAcD,EAASN,UAAYO,EAAY,CAE7e,IAAIyU,EAAY,EAAQ,uBAAR,CAAsB,aAClCC,EAAoC,qBAAX5R,OAEzB6R,EAAQ,SAAUC,GAGpB,SAASD,IAGP,OAFAzV,EAAgBC,KAAMwV,GAEfnV,EAA2BL,MAAOwV,EAAMlV,WAAa3C,OAAO4C,eAAeiV,IAAQ1J,MAAM9L,KAAM+H,WACxG,CA0BA,OAhCA9G,EAAUuU,EAAOC,GAQjBpX,EAAamX,EAAO,CAAC,CACnBzW,IAAK,YACLjB,MAAO,SAAmB4P,GACxB,IAvBmBlO,EAAKT,EAAKjB,EAuBzB4X,EAAwB1V,KAAKQ,MAAMmV,iBAAiBjI,GACpDxP,EAAIwX,EAAsBxX,EAC1B6L,EAAI2L,EAAsB3L,EAE1BwI,EAAYvS,KAAKQ,MAAMoV,eACvBjF,GA5ByB7S,EA4Bc,eAAiBI,EAAI,OAAS6L,EAAI,UA5BrDhL,EA4BQuW,KA5Bb9V,EA4BS,CAAC,GA5B2B7B,OAAOC,eAAe4B,EAAKT,EAAK,CAAEjB,MAAOA,EAAOc,YAAY,EAAMC,cAAc,EAAMC,UAAU,IAAkBU,EAAIT,GAAOjB,EAAgB0B,GA8BrM,GAAI+S,EAAW,CACb,IAAIvF,EAAiBhN,KAAKQ,MAAMoM,QAC5BM,EAAOF,EAAeE,KACtBoF,EAActF,EAAesF,YAIjC3B,EAFyB,MAATzD,EAAe,QAAU,UAEN,SAAhBoF,EAAyBC,EAAYvS,KAAKQ,MAAM6Q,MAAM3S,OAAS4T,EAAc,IAAM,GACxG,CAEA,OAAO3B,CACT,KAGK6E,CACT,CAlCY,CAkCVH,EAAe3V,SAEbiS,EAAO,SAAUkE,GAGnB,SAASlE,EAAKC,GACZ,IAAInP,EAAQmP,EAAKnP,MACbqT,EAtDR,SAAkCtW,EAAKgC,GAAQ,IAAIjD,EAAS,CAAC,EAAG,IAAK,IAAIE,KAAKe,EAAWgC,EAAKC,QAAQhD,IAAM,GAAkBd,OAAOwB,UAAUhB,eAAegC,KAAKX,EAAKf,KAAcF,EAAOE,GAAKe,EAAIf,IAAM,OAAOF,CAAQ,CAsDrMmD,CAAyBkQ,EAAM,CAAC,UAElD7R,EAAgBC,KAAM2R,GAEtB,IAAIzQ,EAASb,EAA2BL,MAAO2R,EAAKrR,WAAa3C,OAAO4C,eAAeoR,IAAOxR,KAAKH,KAAM8V,IAiBzG,OAfA5U,EAAOuB,MAAQA,EACfvB,EAAO6U,UAAW,EAClB7U,EAAO8U,iBAAmB,GAC1B9U,EAAO+U,YAAW,GAClB/U,EAAOgV,YAAW,GAClBhV,EAAOiV,YACPjV,EAAOkV,YAKPjS,WAAW,WACTjD,EAAO8U,kBAAmB,EAAIb,EAAWzV,SAASwB,EAAOmV,MACzDnV,EAAOoV,qBACT,GACOpV,CACT,CA2EA,OArGAD,EAAU0Q,EAAMkE,GA4BhBxX,EAAasT,EAAM,CAAC,CAClB5S,IAAK,aACLjB,MAAO,SAAoByY,GACzBvW,KAAKuW,UAAYA,CACnB,GACC,CACDxX,IAAK,aACLjB,MAAO,SAAoB0Y,GACzBxW,KAAKwW,UAAYA,EACjBxW,KAAKsW,qBACP,GACC,CACDvX,IAAK,sBACLjB,MAAO,WAEL,IAAK,IAAIW,EAAI,EAAGA,EAAIuB,KAAKgW,iBAAiBtX,OAAQD,IAChDuB,KAAKgW,iBAAiBvX,GAAG6V,SAAWtU,KAAKuW,UAAY,GAAK,CAE9D,GACC,CACDxX,IAAK,YACLjB,MAAO,WACL,IAAI+P,EAAkB7N,KAAKQ,MAAMoM,QAC7B6J,EAAQ5I,EAAgB4I,MAGxBlY,GAFcsP,EAAgByE,YAErBtS,KAAKQ,MAAMkW,eAAe1W,KAAKyC,QAExCgU,IACFlY,GAAUyB,KAAKQ,MAAMmW,eAAe3W,OAGtCA,KAAKzB,OAASA,CAChB,GACC,CACDQ,IAAK,YACLjB,MAAO,WACL,IAAI4P,EAAgB3F,UAAUrJ,OAAS,QAAsBkY,IAAjB7O,UAAU,GAAmBA,UAAU,GAAK/H,KAAKQ,MAAMkN,cAEnG1N,KAAKyQ,OAASzQ,KAAKzB,OAASmP,CAC9B,GACC,CACD3O,IAAK,YACLjB,MAAO,WACL,IAAI+Y,EAAkB7W,KAAKQ,MAAMoM,QAC7BM,EAAO2J,EAAgB3J,KACvBoF,EAAcuE,EAAgBvE,YAC9BtE,EAAW6I,EAAgB7I,SAE3B2C,EAAQ,CAAC,EAoBb,MAjBa,MAATzD,IACFyD,EAAMmG,QAAU,eAChBnG,EAAMoG,cAAgB,OAIJ,SAAhBzE,IACF3B,EAAe,MAATzD,EAAe,QAAU,UAAY,IAAMlN,KAAKQ,MAAM6Q,MAAM3S,OAAS,KAIzEsP,IAAahO,KAAK+V,WACpBpF,EAAM1I,SAAW,WACjB0I,EAAe,MAATzD,EAAe,MAAQ,QAAUlN,KAAKgX,eAIvClH,EAAS,CAAC,EAAGa,EAAO3Q,KAAKQ,MAAMyW,aAAanG,UAAU9Q,MAC/D,KAGK2R,CACT,CAvGW,CAuGT0D,EAAe3V,SAEbwX,EAAiB,CACnB5E,YAAa,EACbxE,YAAa,EACb2I,MAAO,EACPU,SAAS,EACTjK,KAAM,IACN4F,UAAU,EACVzC,WAAY,GACZrC,UAAU,EACV0F,SAAS,EACTnF,OAAO,EACPtB,eAAgB,GAChBJ,aAAc,IACd2E,eAAe,GAGb4F,EAAQ,WACV,SAASA,IACP,IAAIC,EAASrX,KAET4M,EAAU7E,UAAUrJ,OAAS,QAAsBkY,IAAjB7O,UAAU,GAAmBA,UAAU,GAAK,CAAC,EAEnFhI,EAAgBC,KAAMoX,GAEtBpX,KAAKoB,QAAU,WACbiW,EAAOC,MAAMC,UACbF,EAAOG,MAAMD,UACbF,EAAOhG,MAAM/N,QAAQ,SAAUoN,GAC7BA,EAAK6G,UACL7G,EAAKyF,WACP,GACAkB,EAAO1J,mBACP0J,EAAOI,gBACPJ,EAAOvK,KAAK,WACd,EAEA,IAAI4K,GAAU,EAAIxC,EAAOxV,WAEzBM,KAAKU,GAAKgX,EAAQhX,GAClBV,KAAK8M,KAAO4K,EAAQ5K,KACpB9M,KAAK2X,IAAMD,EAAQC,IAEnB3X,KAAKqR,MAAQ,GACbrR,KAAK4X,aAAe,EACpB5X,KAAKiO,YAAc,KACnBjO,KAAKqN,aAAe,EACpBrN,KAAK0N,cAAgB,EACrB1N,KAAKwM,WAAY,EAEjBxM,KAAK4M,QAAUkD,EAAS,CAAC,EAAGoH,EAAgBtK,GAE5C5M,KAAKiX,aAAe,IAAIhH,EAAevQ,QAAQ,CAC7C2Q,WAAYrQ,KAAK4M,QAAQyD,WACzBI,OAAQ,SAAgBC,GACtB,OAAOA,EAAKD,MACd,IAGE8E,IACFvV,KAAK6X,eAAiB,IAAIzC,EAAyB1V,QAAQ,WACzD2X,EAAOjW,SACT,GAEJ,CA2WA,OAzWA/C,EAAa+Y,EAAO,CAAC,CACnBrY,IAAK,aACLjB,MAAO,SAAoB8O,GACzB,IAAIkL,EAAc9X,KAAK4M,QAGvB5M,KAAK4M,QAAUkD,EAAS,CAAC,EAAG9P,KAAK4M,QAASA,GAG1C5M,KAAKiX,aAAa5G,WAAarQ,KAAK4M,QAAQyD,WAGxCyH,EAAYxF,cAAgBtS,KAAK4M,QAAQ0F,aAC3CtS,KAAK8M,KAAK,aAAc9M,KAAK+X,qBAEjC,GACC,CACDhZ,IAAK,WACLjB,MAAO,SAAkBuY,GACvBrW,KAAKsX,MAAQ,IAAIjC,EAAe3V,QAAQ,CACtC2W,KAAMA,EACN7V,MAAOR,MAEX,GACC,CACDjB,IAAK,WACLjB,MAAO,SAAkBuY,GACvBrW,KAAKwX,MAAQ,IAAIhC,EAAM,CACrBa,KAAMA,EACN7V,MAAOR,MAEX,GACC,CACDjB,IAAK,UACLjB,MAAO,SAAiBuY,GACtB,IAAI5T,EAAQzC,KAAKqR,MAAM3S,OACnBgS,EAAO,IAAIiB,EAAK,CAClB0E,KAAMA,EACN5T,MAAOA,EACPjC,MAAOR,OAsBT,OAlBAA,KAAKqR,MAAMrO,KAAK0N,GAGX1Q,KAAKiO,aACRjO,KAAKoR,eAAe,CAClB3O,MAAOA,EACPuV,eAAe,IAKfzC,GACFvV,KAAK6X,eAAerR,QAAQ6P,GAI9BrW,KAAK8M,KAAK,aAEH4D,CACT,GACC,CACD3R,IAAK,aACLjB,MAAO,SAAoB4S,GAEzB1Q,KAAKqR,MAAQrR,KAAKqR,MAAMlL,OAAO,SAAU8R,GACvC,OAAOvH,IAASuH,CAClB,GAGI1C,GACFvV,KAAK6X,eAAe/Q,WAAW4J,EAAK2F,MAItCrW,KAAK8M,KAAK,cACZ,GACC,CACD/N,IAAK,OACLjB,MAAO,WACLkC,KAAKoR,eAAe,CAAE8G,WAAY,GACpC,GACC,CACDnZ,IAAK,OACLjB,MAAO,WACLkC,KAAKoR,eAAe,CAAE8G,UAAW,GACnC,GACC,CACDnZ,IAAK,iBACLjB,MAAO,SAAwBqa,GAC7B,IAAIC,EAAkBD,EAAMD,UACxBA,OAAgCtB,IAApBwB,EAAgC,EAAIA,EAChDC,EAAcF,EAAM1V,MACpBA,OAAwBmU,IAAhByB,EAA4BrY,KAAK4X,aAAeS,EACxDC,EAAsBH,EAAMH,cAC5BA,OAAwCpB,IAAxB0B,GAA4CA,EAC5DC,EAAWvY,KAAK4M,QAChBkB,EAAcyK,EAASzK,YACvBE,EAAWuK,EAASvK,SAEpBwK,EAAW/V,EAAQyV,EAAYpK,EAE/B2K,EAAgBzY,KAAK4X,aACrBA,EAAe5J,EAAWwK,GAAW,EAAIvH,EAAO/B,OAAOsJ,EAAU,EAAGxY,KAAKqR,MAAM3S,OAAS,GAExFga,EAAe1Y,KAAK6Q,QAAQ4H,GAC5BxK,EAAcjO,KAAK6Q,QAAQ+G,GAG/B5X,KAAK4X,aAAeA,EACpB5X,KAAKiO,YAAcA,EAGnByK,EAAazC,YAAW,GACxBhI,EAAYgI,YAAW,GAEvB,IAAI0C,EAAaf,EACbgB,EAAWhB,EAAe9J,EAAc,GAC5B,EAAImD,EAAO5B,OAAOsJ,EAAYC,EAAU5Y,KAAKqR,MAAM3S,QAGnEsB,KAAKqR,MAAM/N,QAAQ,SAAUoN,EAAMjO,GACjCiO,EAAKwF,WAAWzT,IAAUmV,EAC5B,GAGA5X,KAAK2N,mBAEAqK,GACHhY,KAAK8M,KAAK,aAAc9M,KAAK+X,qBAEjC,GACC,CACDhZ,IAAK,mBACLjB,MAAO,WACL,IAAI4P,EAAgB3F,UAAUrJ,OAAS,QAAsBkY,IAAjB7O,UAAU,GAAmBA,UAAU,GAAK/H,KAAKiO,YAAcjO,KAAKiO,YAAY1P,OAAS,EAErI,IAAKyB,KAAKwM,UAAW,CACnB,IAAIqM,EAAY7Y,KAAK4M,QACjB0F,EAAcuG,EAAUvG,YACxBQ,EAAW+F,EAAU/F,SACrB9E,EAAW6K,EAAU7K,SACrBmJ,EAAU0B,EAAU1B,QAEpB5E,EAAYvS,KAAK4V,eASrB,GAPI5H,IAIFN,IAAkB3J,KAAK+U,MAAM9Y,KAAK4X,aAAe5X,KAAKqR,MAAM3S,SAAW,GAAK6T,GAG1E4E,EAAS,CACX,IAAI4B,EAAiC,SAAhBzG,GAA0BQ,GAAYR,GAAe,EAAI,EAAItS,KAAKsT,aAAa,CAAER,UAAU,IAChHpF,GAAgB,EAAIuD,EAAO/B,OAAOxB,EAAeqL,EAAiBxG,EAAW,EAC/E,CACF,CAEAvS,KAAK0N,cAAgBA,CACvB,GACC,CACD3O,IAAK,gBACLjB,MAAO,WACL,IAAI4P,EAAgB3F,UAAUrJ,OAAS,QAAsBkY,IAAjB7O,UAAU,GAAmBA,UAAU,GAAK,EACpFiR,EAAYhZ,KAAK4M,QACjBoB,EAAWgL,EAAUhL,SACrByI,EAAQuC,EAAUvC,MAGlBlE,GADYvS,KAAKsT,eACLtT,KAAK4V,gBACjBqD,GAAuB,EAAIhI,EAAOjC,QAAQtB,GAAgB6E,GAE9DvS,KAAKqR,MAAMrJ,OAAO,SAAUkR,EAAcxI,EAAMjO,GAC9C,IAAI0W,EAAWzI,EAAKxC,UAChBkL,EAAeF,EAAeC,EAC9BlR,EAAWiR,EAef,OAbIE,EAAeD,EAAW1C,EAAQ1S,KAAKyF,IAAIyP,IAEzCjL,IACF/F,GAAYsK,EAAY2G,GAE1BxI,EAAKqF,UAAW,GAEhBrF,EAAKqF,UAAW,EAGlBrF,EAAK2I,YAAYpR,GACjByI,EAAK0F,UAAU1I,GAER0L,CACT,EAAG,EACL,GACC,CACDra,IAAK,wBACLjB,MAAO,WACL,OAAOwb,MAAMtZ,KAAK4M,QAAQ0F,aAAe,EAAItS,KAAK4M,QAAQ0F,WAC5D,GACC,CACDvT,IAAK,mBACLjB,MAAO,SAA0Byb,GAC/B,IAAIC,EAASxZ,KAETkN,EAAOlN,KAAK4M,QAAQM,KAEpBuM,EAAS,GACTC,EAAU,GAQd,OANAH,EAAQjW,QAAQ,SAAUb,GACxB,IAAIiO,EAAO4I,MAAM7W,GAASA,EAAQ+W,EAAO3I,QAAQpO,GACjDgX,EAAOzW,KAAK0N,EAAKxC,QAAQ,UACzBwL,EAAQ1W,KAAK0N,EAAKxC,QAAQ,UAC5B,GAEO,CACL3F,MAAgB,MAAT2E,GAAe,EAAI+D,EAAO7B,KAAKqK,IAAU,EAAIxI,EAAO3C,KAAKmL,GAChEjR,OAAiB,MAAT0E,GAAe,EAAI+D,EAAO7B,KAAKsK,IAAW,EAAIzI,EAAO3C,KAAKoL,GAEtE,GACC,CACD3a,IAAK,qBACLjB,MAAO,WACL,IAAI6b,EAAY3Z,KAAK4M,QACjBoB,EAAW2L,EAAU3L,SACrBmJ,EAAUwC,EAAUxC,QAEpByC,EAAe,GACftH,EAAcgH,MAAMtZ,KAAK4M,QAAQ0F,aAAe,EAAItS,KAAK4M,QAAQ0F,YACjEuH,EAAW7Z,KAAK4X,aAChBkC,EAAW9Z,KAAK4X,cAAgBtF,EAAc,GAElD,GAAI6E,EAAS,CAEX0C,GAAW,EAAI5I,EAAO/B,OAAO2K,EAAU,EAAG7Z,KAAKqR,MAAM3S,OAAS4T,GAC9DwH,GAAW,EAAI7I,EAAO/B,OAAO4K,EAAU,EAAG9Z,KAAKqR,MAAM3S,OAAS,GAC9D,IAAK,IAAID,EAAIob,EAAUpb,GAAKqb,EAAUrb,IACpCmb,EAAa5W,KAAKvE,EAEtB,MACE,IAAK,IAAIsb,EAAKF,EAAUE,GAAMD,EAAUC,IACtCH,EAAa5W,KAAKgL,GAAW,EAAIiD,EAAOjC,QAAQ+K,EAAI/Z,KAAKqR,MAAM3S,SAAU,EAAIuS,EAAO/B,OAAO6K,EAAI,EAAG/Z,KAAKqR,MAAM3S,OAAS,IAI1H,OAAOkb,CACT,GACC,CACD7a,IAAK,eACLjB,MAAO,WACL,IAAIkc,EAAQjS,UAAUrJ,OAAS,QAAsBkY,IAAjB7O,UAAU,GAAmBA,UAAU,GAAK,CAAC,EAC7EkS,EAAiBD,EAAMlH,SACvBA,OAA8B8D,IAAnBqD,EAA+Bja,KAAK4M,QAAQkG,SAAWmH,EAClEC,EAAiBF,EAAMzG,SACvBA,OAA8BqD,IAAnBsD,GAAuCA,EAElDxF,EAAa,CACfnM,MAAO,EACPC,OAAQ,GAGV,GAAIxI,KAAKqR,MAAM3S,OACb,GAAIoU,EAAU,CACZ,IAAI8G,EAAe5Z,KAAK+X,qBACxBrD,EAAa1U,KAAKma,iBAAiBP,EACrC,MAAW5Z,KAAKsX,QACd5C,EAAa,CACXnM,MAAOvI,KAAKsX,MAAMpJ,QAAQ,SAC1B1F,OAAQxI,KAAKsX,MAAMpJ,QAAQ,YAKjC,OAAIqF,EACKmB,EAEAA,EAAiC,MAAtB1U,KAAK4M,QAAQM,KAAe,QAAU,SAE5D,GACC,CACDnO,IAAK,eACLjB,MAAO,WACL,IAEIsc,IAFmBrS,UAAUrJ,OAAS,QAAsBkY,IAAjB7O,UAAU,KAAmBA,UAAU,GAEnD/H,KAAKqR,MAAM3S,OAASsB,KAAKqR,MAAM3S,OAAS,EACvEmE,EAAO,EAIX,OAHA7C,KAAKqR,MAAMgJ,MAAM,EAAGD,GAAW9W,QAAQ,SAAUoN,GAC/C7N,GAAQ6N,EAAKxC,SACf,GACOrL,CACT,GACC,CACD9D,IAAK,UACLjB,MAAO,SAAiB2E,GACtB,OAAOzC,KAAKqR,OAAM,EAAIJ,EAAOjC,QAAQvM,EAAOzC,KAAKqR,MAAM3S,QACzD,GAIC,CACDK,IAAK,iBACLjB,MAAO,SAAwB2E,GAC7B,IAAIlE,EAAS,EAIb,OAHAyB,KAAKqR,MAAMgJ,MAAM,EAAG5X,GAAOa,QAAQ,SAAUoN,GAC3CnS,GAAUmS,EAAKxC,SACjB,GACO3P,CACT,GAIC,CACDQ,IAAK,iBACLjB,MAAO,SAAwB4S,GAG7B,OAFgB1Q,KAAKsT,aAAa,CAAER,UAAU,IAC/BpC,EAAKxC,WACYlO,KAAK4M,QAAQ6J,KAC/C,GACC,CACD1X,IAAK,mBACLjB,MAAO,WACL,IAAI4P,EAAgB3F,UAAUrJ,OAAS,QAAsBkY,IAAjB7O,UAAU,GAAmBA,UAAU,GAAK/H,KAAK0N,cACzF4M,EAAYta,KAAK4M,QACjBoB,EAAWsM,EAAUtM,SAGrB/F,GAFUqS,EAAUnD,QAET,CAAEjZ,EAAG,EAAG6L,EAAG,IAM1B,GAHE/J,KAAKqN,aAAeK,EAGlBM,EAAU,CACZ,IAAIuE,EAAYvS,KAAK4V,eACrBlI,GAAgB,EAAIuD,EAAOjC,QAAQtB,GAAgB6E,IAAc,CACnE,CAWA,OARAvS,KAAK8M,KAAK,SAAU,CAClByN,SAAU7M,EAAgB1N,KAAK4V,cAAa,GAC5C3N,SAAUyF,IAIZzF,EAASjI,KAAK4M,QAAQM,MAAQQ,EAEvBzF,CACT,GACC,CACDlJ,IAAK,iBACLjB,MAAO,WAELkC,KAAKoR,eAAe,CAClB3O,OAAO,EAAIwO,EAAOjC,QAAQhP,KAAK4X,aAAc5X,KAAKqR,MAAM3S,QACxDsZ,eAAe,GAEnB,KAGKZ,CACT,CA3ZY,GA6ZZvZ,EAAA,QAAkBuZ,EAClBhZ,EAAOP,QAAUA,EAAiB,O,oDCrmBKA,EAAQ,GAAOA,EAAQ,GAAQA,EAAQ,GAAQA,EAAQ,QAAY+Y,EAE1G,IAEI4D,EAAclb,EAFA,EAAQ,yBAMtBmb,EAAUnb,EAFA,EAAQ,yBAMlBob,EAAUpb,EAFA,EAAQ,yBAMlBqb,EAASrb,EAFA,EAAQ,yBAMjBsb,EAAiBtb,EAFA,EAAQ,yBAMzBub,EAAUvb,EAFA,EAAQ,yBAItB,SAASA,EAAuBE,GAAO,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CAAEE,QAASF,EAAO,CAE9F3B,EAAQ,GAAY2c,EAAY9a,QAChC7B,EAAQ,GAAQ4c,EAAQ/a,QACxB7B,EAAQ,GAAQ6c,EAAQhb,QACxB7B,EAAQ,GAAO8c,EAAOjb,QACCkb,EAAelb,QACtBmb,EAAQnb,O,kDCpCxB/B,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAGT,IAAIO,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMnB,OAAOC,eAAeW,EAAQI,EAAWI,IAAKJ,EAAa,CAAE,CAAE,OAAO,SAAUK,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYX,EAAiBU,EAAYG,UAAWF,GAAiBC,GAAaZ,EAAiBU,EAAaE,GAAqBF,CAAa,CAAG,CAA7hB,GAInB,IAAI8b,EAAe,WACjB,SAASA,EAAalJ,GACpB,IAAIyE,EAAOzE,EAAKyE,KACZ7V,EAAQoR,EAAKpR,MACb+H,EAAQqJ,EAAKrJ,MACbC,EAASoJ,EAAKpJ,QAPtB,SAAyB3I,EAAUb,GAAe,KAAMa,aAAoBb,GAAgB,MAAM,IAAIc,UAAU,oCAAwC,CASpJC,CAAgBC,KAAM8a,GAEtB9a,KAAKqW,KAAOA,EACZrW,KAAKQ,MAAQA,EACbR,KAAK9B,EAAI8B,KAAK+J,EAAI,EAClB/J,KAAKuX,QAAQhP,EAAOC,EACtB,CA8BA,OA5BAnK,EAAayc,EAAc,CAAC,CAC1B/b,IAAK,UACLjB,MAAO,SAAiByK,EAAOC,GAC7BxI,KAAKuI,MAAQA,GAASvI,KAAKqW,KAAK0E,YAChC/a,KAAKwI,OAASA,GAAUxI,KAAKqW,KAAK2E,YACpC,GACC,CACDjc,IAAK,cACLjB,MAAO,SAAqBmK,GAC1BjI,KAAKA,KAAKQ,MAAMoM,QAAQM,MAAQjF,CAClC,GACC,CACDlJ,IAAK,UACLjB,MAAO,SAAiBmd,GACtB,MAAkB,UAAdA,GAAuC,WAAdA,EACpBjb,KAAKib,GAGLjb,KAAc,MADVA,KAAKQ,MAAMoM,QAAQM,KACH,QAAU,SAEzC,GACC,CACDnO,IAAK,cACLjB,MAAO,WACL,OAAOkC,KAAKA,KAAKQ,MAAMoM,QAAQM,KACjC,KAGK4N,CACT,CA5CmB,GA8CnBjd,EAAA,QAAkBid,EAClB1c,EAAOP,QAAUA,EAAiB,O,oDCvDlCF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAGT,IAAIod,EAA4B,oBAAXC,QAAoD,kBAApBA,OAAOC,SAAwB,SAAU5b,GAAO,cAAcA,CAAK,EAAI,SAAUA,GAAO,OAAOA,GAAyB,oBAAX2b,QAAyB3b,EAAIuB,cAAgBoa,QAAU3b,IAAQ2b,OAAOhc,UAAY,gBAAkBK,CAAK,EAEvQsQ,EAAWnS,OAAOoS,QAAU,SAAUxR,GAAU,IAAK,IAAIE,EAAI,EAAGA,EAAIsJ,UAAUrJ,OAAQD,IAAK,CAAE,IAAIuR,EAASjI,UAAUtJ,GAAI,IAAK,IAAIM,KAAOiR,EAAcrS,OAAOwB,UAAUhB,eAAegC,KAAK6P,EAAQjR,KAAQR,EAAOQ,GAAOiR,EAAOjR,GAAU,CAAE,OAAOR,CAAQ,EAE3PF,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMnB,OAAOC,eAAeW,EAAQI,EAAWI,IAAKJ,EAAa,CAAE,CAAE,OAAO,SAAUK,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYX,EAAiBU,EAAYG,UAAWF,GAAiBC,GAAaZ,EAAiBU,EAAaE,GAAqBF,CAAa,CAAG,CAA7hB,GAEfI,EAAS,EAAQ,wBAEjBsT,EAAUpT,EAAuBF,GAIjCC,EAAcC,EAFD,EAAQ,yBAIrBoS,EAAY,EAAQ,wBAEpBiB,EAAe,EAAQ,wBAIvBpT,EAAUD,EAFD,EAAQ,yBAMjB+b,EAAa/b,EAFD,EAAQ,yBAMpB4Q,EAAkB5Q,EAFD,EAAQ,yBAI7B,SAASA,EAAuBE,GAAO,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CAAEE,QAASF,EAAO,CAE9F,SAASkC,EAAyBlC,EAAKgC,GAAQ,IAAIjD,EAAS,CAAC,EAAG,IAAK,IAAIE,KAAKe,EAAWgC,EAAKC,QAAQhD,IAAM,GAAkBd,OAAOwB,UAAUhB,eAAegC,KAAKX,EAAKf,KAAcF,EAAOE,GAAKe,EAAIf,IAAM,OAAOF,CAAQ,CAE3N,SAASwB,EAAgBF,EAAUb,GAAe,KAAMa,aAAoBb,GAAgB,MAAM,IAAIc,UAAU,oCAAwC,CAExJ,SAASO,EAA2BH,EAAMC,GAAQ,IAAKD,EAAQ,MAAM,IAAIE,eAAe,6DAAgE,OAAOD,GAAyB,kBAATA,GAAqC,oBAATA,EAA8BD,EAAPC,CAAa,CAE/O,SAASc,EAAUL,EAAUC,GAAc,GAA0B,oBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIf,UAAU,kEAAoEe,GAAeD,EAASzB,UAAYxB,OAAOmD,OAAOD,GAAcA,EAAW1B,UAAW,CAAE4B,YAAa,CAAEjD,MAAO8C,EAAUhC,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAegC,IAAYlD,OAAOqD,eAAiBrD,OAAOqD,eAAeJ,EAAUC,GAAcD,EAASN,UAAYO,EAAY,CAE7e,IAAIya,EAAO,WACT,OAAO,IACT,EACInL,EAAe,CACjB7O,IAAKjC,EAAYK,QAAQsR,IACzB/C,YAAa5O,EAAYK,QAAQsR,IACjCsB,YAAajT,EAAYK,QAAQ6b,UAAU,CAAClc,EAAYK,QAAQ0Q,OAAQ/Q,EAAYK,QAAQqT,MAAM,CAAC,WACnGjF,YAAazO,EAAYK,QAAQ0Q,OACjCqG,MAAOpX,EAAYK,QAAQ0Q,OAC3B+G,QAAS9X,EAAYK,QAAQsT,KAC7B9F,KAAM7N,EAAYK,QAAQqT,MAAM,CAAC,IAAK,MACtC1C,WAAYhR,EAAYK,QAAQ4Q,MAChCtC,SAAU3O,EAAYK,QAAQsT,KAC9BU,QAASrU,EAAYK,QAAQsT,KAC7BzE,MAAOlP,EAAYK,QAAQqT,MAAM,EAAC,GAAM,EAAO,QAAS,UACxD9F,eAAgB5N,EAAYK,QAAQ0Q,OACpCvD,aAAcxN,EAAYK,QAAQ0Q,OAGlC6C,aAAc5T,EAAYK,QAAQwT,SAAS7T,EAAYK,QAAQ0Q,QAC/DoL,aAAcnc,EAAYK,QAAQ+b,KAClCC,YAAarc,EAAYK,QAAQ+b,KACjCE,WAAYtc,EAAYK,QAAQ+b,KAChCG,SAAUvc,EAAYK,QAAQ+b,KAC9BI,aAAcxc,EAAYK,QAAQ+b,KAClCK,OAAQzc,EAAYK,QAAQ+b,MAS1BM,EAAgB,SAAUnc,GAG5B,SAASmc,IACP,IAAInK,EAEAC,EAAO5R,EAEXF,EAAgBC,KAAM+b,GAEtB,IAAK,IAAIjK,EAAO/J,UAAUrJ,OAAQqT,EAAOtC,MAAMqC,GAAOE,EAAO,EAAGA,EAAOF,EAAME,IAC3ED,EAAKC,GAAQjK,UAAUiK,GAGzB,OAAeH,EAAS5R,EAAQI,EAA2BL,MAAO4R,EAAOmK,EAAczb,WAAa3C,OAAO4C,eAAewb,IAAgB5b,KAAK2L,MAAM8F,EAAM,CAAC5R,MAAMwP,OAAOuC,KAAiB9R,EAAMwT,MAAQ,CACtMvV,EAAG,EACH6L,EAAG,GACM1J,EAA2BJ,EAAnC4R,EACL,CAwDA,OAzEA5Q,EAAU8a,EAAenc,GAmBzBvB,EAAa0d,EAAe,CAAC,CAC3Bhd,IAAK,4BACLjB,MAAO,SAAmCqa,GACxC,IAAIjX,EAASlB,KAET0N,EAAgByK,EAAMzK,cACtBlN,EAAQR,KAAK4Q,QAAQpQ,MAKzBA,EAAMiX,cAAc/J,GAKhB1N,KAAKxB,MAAMkP,gBAAkBA,GAC/BvM,sBAAsB,WACpB,OAAOD,EAAO1C,MAAMod,SAASlO,EAAgBlN,EAAMoV,cAAa,IAAU,EAAGlI,EAC/E,EAEJ,GACC,CACD3O,IAAK,eACLjB,MAAO,WAGL,OAAOsB,EAAO2V,SAASrJ,IAAI1L,KAAKxB,MAAMsW,SAAU,SAAUE,GACxD,OAAOA,CACT,EACF,GACC,CACDjW,IAAK,SACLjB,MAAO,WACL,IAAI0C,EAAQR,KAAK4Q,QAAQpQ,MAErBa,EAASrB,KAAKxB,MACd8C,EAAMD,EAAOC,IACboM,EAAgBrM,EAAOqM,cAEvBnM,GADWF,EAAOyT,SACNpT,EAAyBL,EAAQ,CAAC,MAAO,gBAAiB,cAEtEsP,EAAQb,EAAS,CAAC,EAAGvO,EAAUoP,OAMnC,OAJInQ,EAAMgX,QACR7G,EAAQb,EAAS,CAAC,EAAGa,EAAOnQ,EAAMgX,MAAM1G,UAAUpD,MAG7C,EAAItO,EAAOuC,eAAeL,EAAKwO,EAAS,CAAC,EAAGvO,EAAW,CAC5DoP,MAAOA,IACL3Q,KAAKgc,eACX,KAGKD,CACT,CA3EoB,CA2ElB3c,EAAOwC,WAETma,EAAcha,UAAYoO,EAC1B4L,EAAchL,aAAe,CAC3BvQ,MAAOnB,EAAYK,QAAQoC,WAAWvC,EAAQG,UAGhD,IAAI8V,EAAQ,SAAUyG,GAGpB,SAASzG,IACP,IAAIwE,EAEAkC,EAAQ7E,EAEZtX,EAAgBC,KAAMwV,GAEtB,IAAK,IAAI2G,EAAQpU,UAAUrJ,OAAQqT,EAAOtC,MAAM0M,GAAQC,EAAQ,EAAGA,EAAQD,EAAOC,IAChFrK,EAAKqK,GAASrU,UAAUqU,GAG1B,OAAgBF,EAAU7E,EAAShX,EAA2BL,MAAOga,EAAQxE,EAAMlV,WAAa3C,OAAO4C,eAAeiV,IAAQrV,KAAK2L,MAAMkO,EAAO,CAACha,MAAMwP,OAAOuC,KAAkBsF,EAAO5D,MAAQ,CAC7LC,SAAS,GACR2D,EAAOgF,cAAgB,EAAGhF,EAAO1D,UAAW,EAAO0D,EAAOiF,cAAgB,WACvEjF,EAAO7Y,MAAMwP,WAAaqJ,EAAO5D,MAAMC,UAEzC2D,EAAOzG,QAAQpQ,MAAM+b,iBAGrBlF,EAAOmF,oBAAmB,GAAM,IAGlCnF,EAAO7Y,MAAMsd,QACf,EAAYzb,EAA2BgX,EAApC6E,EACL,CAgIA,OA1JAjb,EAAUuU,EAAOyG,GA4BjB5d,EAAamX,EAAO,CAAC,CACnBzW,IAAK,qBACLjB,MAAO,WACLkC,KAAK4Q,QAAQpQ,MAAMoT,WAAW5T,KAAKxB,MACrC,GACC,CACDO,IAAK,oBACLjB,MAAO,WACL,IAAI0b,EAASxZ,KAETQ,EAAQR,KAAK4Q,QAAQpQ,MAIzBA,EAAMic,UAAS,EAAI/K,EAAUU,aAAapS,OAG1CA,KAAK0c,UAAS,EAAIrB,EAAW3b,SAASM,KAAKxB,MAAMyP,YAAajO,KAAKxB,MAAMsW,WAGzEtU,EAAME,GAAG,WAAY,WACnB,OAAO8Y,EAAOgD,oBAAmB,GAAM,EACzC,GACAhc,EAAME,GAAG,YAAa,WACpB,OAAO8Y,EAAOgD,oBAAmB,EACnC,GACAhc,EAAME,GAAG,WAAY,WACnB,OAAO8Y,EAAOgD,oBAAmB,EACnC,GAGAhc,EAAME,GAAG,aAAcV,KAAKxB,MAAMgd,cAClChb,EAAME,GAAG,YAAaV,KAAKxB,MAAMkd,aACjClb,EAAME,GAAG,WAAYV,KAAKxB,MAAMmd,YAChCnb,EAAME,GAAG,aAAcV,KAAKxB,MAAMqd,aACpC,GACC,CACD9c,IAAK,4BACLjB,MAAO,SAAmCkW,GACxC,IA7J+B2I,EAASvO,EA6JpCH,EAAc+F,EAAU/F,YACxByF,EAAUM,EAAUN,QACpBoB,EAAWd,EAAUc,SAIrB9U,KAAKxB,MAAMkV,UAAYA,GACzB1T,KAAKwc,mBAAmB9I,QAIwDkD,KAAtD,qBAAhB3I,EAA8B,YAAciN,EAAQjN,KAA+BjO,KAAKxB,MAAMyP,cAAgBA,GACxHjO,KAAK0c,UAAS,EAAIrB,EAAW3b,SAASuO,EAAa6G,IAzKtB6H,EA6KhB3c,KAAKxB,MA7KoB4P,EA6Kb4F,GA5KxB2I,EAAQrK,cAAgBlE,EAAKkE,aAAeqK,EAAQ7O,cAAgBM,EAAKN,aAAe6O,EAAQlG,QAAUrI,EAAKqI,OAASkG,EAAQzP,OAASkB,EAAKlB,MAAQyP,EAAQtM,aAAejC,EAAKiC,YAAcsM,EAAQ3O,WAAaI,EAAKJ,UAAY2O,EAAQpO,QAAUH,EAAKG,OAASoO,EAAQ1P,iBAAmBmB,EAAKnB,gBAAkB0P,EAAQ9P,eAAiBuB,EAAKvB,gBA6KvV7M,KAAK4Q,QAAQpQ,MAAMoT,WAAWI,GAC9BhU,KAAK2T,UAAW,EAEpB,GACC,CACD5U,IAAK,qBACLjB,MAAO,SAA4BkW,GAC7BhU,KAAK2T,WACP3T,KAAK4Q,QAAQpQ,MAAMY,UACnBpB,KAAK2T,UAAW,EAEpB,GACC,CACD5U,IAAK,OACLjB,MAAO,WACLkC,KAAK4Q,QAAQpQ,MAAM2N,MACrB,GACC,CACDpP,IAAK,OACLjB,MAAO,WACLkC,KAAK4Q,QAAQpQ,MAAM4N,MACrB,GACC,CACDrP,IAAK,WACLjB,MAAO,SAAkB2E,GACvBzC,KAAK4Q,QAAQpQ,MAAM4Q,eAAe,CAAE3O,MAAOA,GAC7C,GACC,CACD1D,IAAK,qBACLjB,MAAO,SAA4B4V,EAASkJ,GAC1C,IAAIC,EAAS7c,KAEbA,KAAKwT,SAAS,CAAEE,QAASA,GAAW,WAC9BkJ,GACFC,EAAOrJ,SAAS,CAAEE,SAAS,GAE/B,EACF,GACC,CACD3U,IAAK,iBACLjB,MAAO,WACL,IAAI4P,EAAgB1N,KAAK4Q,QAAQpQ,MAAMkN,cAKvC,OAHK1N,KAAKyT,MAAMC,UACdhG,GAAgB,EAAIiF,EAAawB,QAAQzG,EAAe1N,KAAKxB,MAAMyU,eAE9D,CAAEvF,cAAeA,EAC1B,GACC,CACD3O,IAAK,SACLjB,MAAO,WACL,IAAIsW,EAAUpU,KAAKxB,MACf8C,EAAM8S,EAAQ9S,IACdsa,EAAWxH,EAAQwH,SACnBra,EAAYG,EAAyB0S,EAAS,CAAC,MAAO,aAE1D,OAAO1B,EAAQhT,QAAQiC,cACrBgR,EAAa6B,OACb,CACE7D,MAAO3Q,KAAK8c,iBACZhB,OAAQ9b,KAAKsc,eAEf,SAAUS,GACR,IAAIrP,EAAgBqP,EAAMrP,cAC1B,OAAO,EAAItO,EAAOuC,eAAeoa,GAAe,EAAI7L,EAAgBxQ,SAAS,CAAEgO,cAAeA,EAAepM,IAAKA,EAAKsa,SAAUA,GAAYra,EAAW4O,GAC1J,EAEJ,KAGKqF,CACT,CA5JY,CA4JVpW,EAAOwC,WAET4T,EAAMzT,UAAYoO,EAClBqF,EAAMvT,aAAe,CACnBX,IAAK,MACL2M,YAAa,EACbqE,YAAa,EACbxE,YAAa,EACb2I,MAAO,EACPU,SAAS,EACTjK,KAAM,IACNc,UAAU,EACV0F,SAAS,EACTnF,OAAO,EACPtB,eAAgB,GAChBJ,aAAc,IACdoG,aAAcN,EAAaiC,QAAQC,SACnC2G,aAAcF,EACdI,YAAaJ,EACbK,WAAYL,EACZM,SAAUN,EACVO,aAAcP,EACdQ,OAAQR,GAEV9F,EAAMzE,aAAe,CACnBvQ,MAAOnB,EAAYK,QAAQoC,WAAWvC,EAAQG,UAEhD7B,EAAA,QAAkB2X,EAClBpX,EAAOP,QAAUA,EAAiB,O","sources":["webpack://garage-app/./node_modules/react-view-pager/lib/special-assign.js","webpack://garage-app/./node_modules/react-view-pager/lib/ViewPager.js","webpack://garage-app/./node_modules/react-view-pager/node_modules/resize-observer-polyfill/dist/ResizeObserver.js","webpack://garage-app/./node_modules/react-view-pager/lib/Swipe.js","webpack://garage-app/./node_modules/react-view-pager/lib/utils.js","webpack://garage-app/./node_modules/react-view-pager/lib/AnimatedView.js","webpack://garage-app/./node_modules/react-view-pager/lib/Keyboard.js","webpack://garage-app/./node_modules/react-view-pager/lib/View.js","webpack://garage-app/./node_modules/react-view-pager/lib/Frame.js","webpack://garage-app/./node_modules/react-view-pager/lib/get-index.js","webpack://garage-app/./node_modules/react-view-pager/lib/Pager.js","webpack://garage-app/./node_modules/react-view-pager/lib/react-view-pager.js","webpack://garage-app/./node_modules/react-view-pager/lib/PagerElement.js","webpack://garage-app/./node_modules/react-view-pager/lib/Track.js"],"sourcesContent":["\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = specialAssign;\nfunction specialAssign(a, b, reserved) {\n  for (var x in b) {\n    if (!b.hasOwnProperty(x) || reserved[x]) continue;\n    a[x] = b[x];\n  }\n  return a;\n}\nmodule.exports = exports[\"default\"];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _Pager = require('./Pager');\n\nvar _Pager2 = _interopRequireDefault(_Pager);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar ViewPager = function (_Component) {\n  _inherits(ViewPager, _Component);\n\n  function ViewPager(props) {\n    _classCallCheck(this, ViewPager);\n\n    var _this = _possibleConstructorReturn(this, (ViewPager.__proto__ || Object.getPrototypeOf(ViewPager)).call(this, props));\n\n    var pager = new _Pager2.default();\n    var forceUpdate = function forceUpdate() {\n      return _this.forceUpdate();\n    };\n\n    // re-render the whole tree to update components on certain events\n    pager.on('viewChange', forceUpdate);\n    pager.on('hydrated', forceUpdate);\n\n    _this._pager = pager;\n    return _this;\n  }\n\n  _createClass(ViewPager, [{\n    key: 'getChildContext',\n    value: function getChildContext() {\n      return {\n        pager: this._pager\n      };\n    }\n  }, {\n    key: 'componentDidMount',\n    value: function componentDidMount() {\n      var _this2 = this;\n\n      // run a hydration on the next animation frame to obtain proper targets and positioning\n      requestAnimationFrame(function () {\n        _this2._pager.hydrate();\n      });\n    }\n  }, {\n    key: 'getInstance',\n    value: function getInstance() {\n      return this._pager;\n    }\n  }, {\n    key: 'render',\n    value: function render() {\n      var _props = this.props,\n          tag = _props.tag,\n          restProps = _objectWithoutProperties(_props, ['tag']);\n\n      return (0, _react.createElement)(tag, restProps);\n    }\n  }]);\n\n  return ViewPager;\n}(_react.Component);\n\nViewPager.childContextTypes = {\n  pager: _propTypes2.default.instanceOf(_Pager2.default)\n};\nViewPager.propTypes = {\n  tag: _propTypes2.default.string\n};\nViewPager.defaultProps = {\n  tag: 'div'\n};\nexports.default = ViewPager;\nmodule.exports = exports['default'];","(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(global.ResizeObserver = factory());\n}(this, (function () { 'use strict';\n\n/**\r\n * A collection of shims that provide minimal functionality of the ES6 collections.\r\n *\r\n * These implementations are not meant to be used outside of the ResizeObserver\r\n * modules as they cover only a limited range of use cases.\r\n */\n/* eslint-disable require-jsdoc, valid-jsdoc */\nvar MapShim = (function () {\n    if (typeof Map !== 'undefined') {\n        return Map;\n    }\n\n    /**\r\n     * Returns index in provided array that matches the specified key.\r\n     *\r\n     * @param {Array<Array>} arr\r\n     * @param {*} key\r\n     * @returns {number}\r\n     */\n    function getIndex(arr, key) {\n        var result = -1;\n\n        arr.some(function (entry, index) {\n            if (entry[0] === key) {\n                result = index;\n\n                return true;\n            }\n\n            return false;\n        });\n\n        return result;\n    }\n\n    return (function () {\n        function anonymous() {\n            this.__entries__ = [];\n        }\n\n        var prototypeAccessors = { size: { configurable: true } };\n\n        /**\r\n         * @returns {boolean}\r\n         */\n        prototypeAccessors.size.get = function () {\n            return this.__entries__.length;\n        };\n\n        /**\r\n         * @param {*} key\r\n         * @returns {*}\r\n         */\n        anonymous.prototype.get = function (key) {\n            var index = getIndex(this.__entries__, key);\n            var entry = this.__entries__[index];\n\n            return entry && entry[1];\n        };\n\n        /**\r\n         * @param {*} key\r\n         * @param {*} value\r\n         * @returns {void}\r\n         */\n        anonymous.prototype.set = function (key, value) {\n            var index = getIndex(this.__entries__, key);\n\n            if (~index) {\n                this.__entries__[index][1] = value;\n            } else {\n                this.__entries__.push([key, value]);\n            }\n        };\n\n        /**\r\n         * @param {*} key\r\n         * @returns {void}\r\n         */\n        anonymous.prototype.delete = function (key) {\n            var entries = this.__entries__;\n            var index = getIndex(entries, key);\n\n            if (~index) {\n                entries.splice(index, 1);\n            }\n        };\n\n        /**\r\n         * @param {*} key\r\n         * @returns {void}\r\n         */\n        anonymous.prototype.has = function (key) {\n            return !!~getIndex(this.__entries__, key);\n        };\n\n        /**\r\n         * @returns {void}\r\n         */\n        anonymous.prototype.clear = function () {\n            this.__entries__.splice(0);\n        };\n\n        /**\r\n         * @param {Function} callback\r\n         * @param {*} [ctx=null]\r\n         * @returns {void}\r\n         */\n        anonymous.prototype.forEach = function (callback, ctx) {\n            var this$1 = this;\n            if ( ctx === void 0 ) ctx = null;\n\n            for (var i = 0, list = this$1.__entries__; i < list.length; i += 1) {\n                var entry = list[i];\n\n                callback.call(ctx, entry[1], entry[0]);\n            }\n        };\n\n        Object.defineProperties( anonymous.prototype, prototypeAccessors );\n\n        return anonymous;\n    }());\n})();\n\n/**\r\n * Detects whether window and document objects are available in current environment.\r\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;\n\n// Returns global object of a current environment.\nvar global$1 = (function () {\n    if (typeof global !== 'undefined' && global.Math === Math) {\n        return global;\n    }\n\n    if (typeof self !== 'undefined' && self.Math === Math) {\n        return self;\n    }\n\n    if (typeof window !== 'undefined' && window.Math === Math) {\n        return window;\n    }\n\n    // eslint-disable-next-line no-new-func\n    return Function('return this')();\n})();\n\n/**\r\n * A shim for the requestAnimationFrame which falls back to the setTimeout if\r\n * first one is not supported.\r\n *\r\n * @returns {number} Requests' identifier.\r\n */\nvar requestAnimationFrame$1 = (function () {\n    if (typeof requestAnimationFrame === 'function') {\n        // It's required to use a bounded function because IE sometimes throws\n        // an \"Invalid calling object\" error if rAF is invoked without the global\n        // object on the left hand side.\n        return requestAnimationFrame.bind(global$1);\n    }\n\n    return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };\n})();\n\n// Defines minimum timeout before adding a trailing call.\nvar trailingTimeout = 2;\n\n/**\r\n * Creates a wrapper function which ensures that provided callback will be\r\n * invoked only once during the specified delay period.\r\n *\r\n * @param {Function} callback - Function to be invoked after the delay period.\r\n * @param {number} delay - Delay after which to invoke callback.\r\n * @returns {Function}\r\n */\nvar throttle = function (callback, delay) {\n    var leadingCall = false,\n        trailingCall = false,\n        lastCallTime = 0;\n\n    /**\r\n     * Invokes the original callback function and schedules new invocation if\r\n     * the \"proxy\" was called during current request.\r\n     *\r\n     * @returns {void}\r\n     */\n    function resolvePending() {\n        if (leadingCall) {\n            leadingCall = false;\n\n            callback();\n        }\n\n        if (trailingCall) {\n            proxy();\n        }\n    }\n\n    /**\r\n     * Callback invoked after the specified delay. It will further postpone\r\n     * invocation of the original function delegating it to the\r\n     * requestAnimationFrame.\r\n     *\r\n     * @returns {void}\r\n     */\n    function timeoutCallback() {\n        requestAnimationFrame$1(resolvePending);\n    }\n\n    /**\r\n     * Schedules invocation of the original function.\r\n     *\r\n     * @returns {void}\r\n     */\n    function proxy() {\n        var timeStamp = Date.now();\n\n        if (leadingCall) {\n            // Reject immediately following calls.\n            if (timeStamp - lastCallTime < trailingTimeout) {\n                return;\n            }\n\n            // Schedule new call to be in invoked when the pending one is resolved.\n            // This is important for \"transitions\" which never actually start\n            // immediately so there is a chance that we might miss one if change\n            // happens amids the pending invocation.\n            trailingCall = true;\n        } else {\n            leadingCall = true;\n            trailingCall = false;\n\n            setTimeout(timeoutCallback, delay);\n        }\n\n        lastCallTime = timeStamp;\n    }\n\n    return proxy;\n};\n\n// Minimum delay before invoking the update of observers.\nvar REFRESH_DELAY = 20;\n\n// A list of substrings of CSS properties used to find transition events that\n// might affect dimensions of observed elements.\nvar transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];\n\n// Check if MutationObserver is available.\nvar mutationObserverSupported = typeof MutationObserver !== 'undefined';\n\n/**\r\n * Singleton controller class which handles updates of ResizeObserver instances.\r\n */\nvar ResizeObserverController = function() {\n    this.connected_ = false;\n    this.mutationEventsAdded_ = false;\n    this.mutationsObserver_ = null;\n    this.observers_ = [];\n\n    this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);\n    this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);\n};\n\n/**\r\n * Adds observer to observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be added.\r\n * @returns {void}\r\n */\n\n\n/**\r\n * Holds reference to the controller's instance.\r\n *\r\n * @private {ResizeObserverController}\r\n */\n\n\n/**\r\n * Keeps reference to the instance of MutationObserver.\r\n *\r\n * @private {MutationObserver}\r\n */\n\n/**\r\n * Indicates whether DOM listeners have been added.\r\n *\r\n * @private {boolean}\r\n */\nResizeObserverController.prototype.addObserver = function (observer) {\n    if (!~this.observers_.indexOf(observer)) {\n        this.observers_.push(observer);\n    }\n\n    // Add listeners if they haven't been added yet.\n    if (!this.connected_) {\n        this.connect_();\n    }\n};\n\n/**\r\n * Removes observer from observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be removed.\r\n * @returns {void}\r\n */\nResizeObserverController.prototype.removeObserver = function (observer) {\n    var observers = this.observers_;\n    var index = observers.indexOf(observer);\n\n    // Remove observer if it's present in registry.\n    if (~index) {\n        observers.splice(index, 1);\n    }\n\n    // Remove listeners if controller has no connected observers.\n    if (!observers.length && this.connected_) {\n        this.disconnect_();\n    }\n};\n\n/**\r\n * Invokes the update of observers. It will continue running updates insofar\r\n * it detects changes.\r\n *\r\n * @returns {void}\r\n */\nResizeObserverController.prototype.refresh = function () {\n    var changesDetected = this.updateObservers_();\n\n    // Continue running updates if changes have been detected as there might\n    // be future ones caused by CSS transitions.\n    if (changesDetected) {\n        this.refresh();\n    }\n};\n\n/**\r\n * Updates every observer from observers list and notifies them of queued\r\n * entries.\r\n *\r\n * @private\r\n * @returns {boolean} Returns \"true\" if any observer has detected changes in\r\n *  dimensions of it's elements.\r\n */\nResizeObserverController.prototype.updateObservers_ = function () {\n    // Collect observers that have active observations.\n    var activeObservers = this.observers_.filter(function (observer) {\n        return observer.gatherActive(), observer.hasActive();\n    });\n\n    // Deliver notifications in a separate cycle in order to avoid any\n    // collisions between observers, e.g. when multiple instances of\n    // ResizeObserver are tracking the same element and the callback of one\n    // of them changes content dimensions of the observed target. Sometimes\n    // this may result in notifications being blocked for the rest of observers.\n    activeObservers.forEach(function (observer) { return observer.broadcastActive(); });\n\n    return activeObservers.length > 0;\n};\n\n/**\r\n * Initializes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\nResizeObserverController.prototype.connect_ = function () {\n    // Do nothing if running in a non-browser environment or if listeners\n    // have been already added.\n    if (!isBrowser || this.connected_) {\n        return;\n    }\n\n    // Subscription to the \"Transitionend\" event is used as a workaround for\n    // delayed transitions. This way it's possible to capture at least the\n    // final state of an element.\n    document.addEventListener('transitionend', this.onTransitionEnd_);\n\n    window.addEventListener('resize', this.refresh);\n\n    if (mutationObserverSupported) {\n        this.mutationsObserver_ = new MutationObserver(this.refresh);\n\n        this.mutationsObserver_.observe(document, {\n            attributes: true,\n            childList: true,\n            characterData: true,\n            subtree: true\n        });\n    } else {\n        document.addEventListener('DOMSubtreeModified', this.refresh);\n\n        this.mutationEventsAdded_ = true;\n    }\n\n    this.connected_ = true;\n};\n\n/**\r\n * Removes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\nResizeObserverController.prototype.disconnect_ = function () {\n    // Do nothing if running in a non-browser environment or if listeners\n    // have been already removed.\n    if (!isBrowser || !this.connected_) {\n        return;\n    }\n\n    document.removeEventListener('transitionend', this.onTransitionEnd_);\n    window.removeEventListener('resize', this.refresh);\n\n    if (this.mutationsObserver_) {\n        this.mutationsObserver_.disconnect();\n    }\n\n    if (this.mutationEventsAdded_) {\n        document.removeEventListener('DOMSubtreeModified', this.refresh);\n    }\n\n    this.mutationsObserver_ = null;\n    this.mutationEventsAdded_ = false;\n    this.connected_ = false;\n};\n\n/**\r\n * \"Transitionend\" event handler.\r\n *\r\n * @private\r\n * @param {TransitionEvent} event\r\n * @returns {void}\r\n */\nResizeObserverController.prototype.onTransitionEnd_ = function (ref) {\n        var propertyName = ref.propertyName; if ( propertyName === void 0 ) propertyName = '';\n\n    // Detect whether transition may affect dimensions of an element.\n    var isReflowProperty = transitionKeys.some(function (key) {\n        return !!~propertyName.indexOf(key);\n    });\n\n    if (isReflowProperty) {\n        this.refresh();\n    }\n};\n\n/**\r\n * Returns instance of the ResizeObserverController.\r\n *\r\n * @returns {ResizeObserverController}\r\n */\nResizeObserverController.getInstance = function () {\n    if (!this.instance_) {\n        this.instance_ = new ResizeObserverController();\n    }\n\n    return this.instance_;\n};\n\nResizeObserverController.instance_ = null;\n\n/**\r\n * Defines non-writable/enumerable properties of the provided target object.\r\n *\r\n * @param {Object} target - Object for which to define properties.\r\n * @param {Object} props - Properties to be defined.\r\n * @returns {Object} Target object.\r\n */\nvar defineConfigurable = (function (target, props) {\n    for (var i = 0, list = Object.keys(props); i < list.length; i += 1) {\n        var key = list[i];\n\n        Object.defineProperty(target, key, {\n            value: props[key],\n            enumerable: false,\n            writable: false,\n            configurable: true\n        });\n    }\n\n    return target;\n});\n\n/**\r\n * Returns the global object associated with provided element.\r\n *\r\n * @param {Object} target\r\n * @returns {Object}\r\n */\nvar getWindowOf = (function (target) {\n    // Assume that the element is an instance of Node, which means that it\n    // has the \"ownerDocument\" property from which we can retrieve a\n    // corresponding global object.\n    var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;\n\n    // Return the local global object if it's not possible extract one from\n    // provided element.\n    return ownerGlobal || global$1;\n});\n\n// Placeholder of an empty content rectangle.\nvar emptyRect = createRectInit(0, 0, 0, 0);\n\n/**\r\n * Converts provided string to a number.\r\n *\r\n * @param {number|string} value\r\n * @returns {number}\r\n */\nfunction toFloat(value) {\n    return parseFloat(value) || 0;\n}\n\n/**\r\n * Extracts borders size from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @param {...string} positions - Borders positions (top, right, ...)\r\n * @returns {number}\r\n */\nfunction getBordersSize(styles) {\n    var positions = [], len = arguments.length - 1;\n    while ( len-- > 0 ) positions[ len ] = arguments[ len + 1 ];\n\n    return positions.reduce(function (size, position) {\n        var value = styles['border-' + position + '-width'];\n\n        return size + toFloat(value);\n    }, 0);\n}\n\n/**\r\n * Extracts paddings sizes from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @returns {Object} Paddings box.\r\n */\nfunction getPaddings(styles) {\n    var positions = ['top', 'right', 'bottom', 'left'];\n    var paddings = {};\n\n    for (var i = 0, list = positions; i < list.length; i += 1) {\n        var position = list[i];\n\n        var value = styles['padding-' + position];\n\n        paddings[position] = toFloat(value);\n    }\n\n    return paddings;\n}\n\n/**\r\n * Calculates content rectangle of provided SVG element.\r\n *\r\n * @param {SVGGraphicsElement} target - Element content rectangle of which needs\r\n *      to be calculated.\r\n * @returns {DOMRectInit}\r\n */\nfunction getSVGContentRect(target) {\n    var bbox = target.getBBox();\n\n    return createRectInit(0, 0, bbox.width, bbox.height);\n}\n\n/**\r\n * Calculates content rectangle of provided HTMLElement.\r\n *\r\n * @param {HTMLElement} target - Element for which to calculate the content rectangle.\r\n * @returns {DOMRectInit}\r\n */\nfunction getHTMLElementContentRect(target) {\n    // Client width & height properties can't be\n    // used exclusively as they provide rounded values.\n    var clientWidth = target.clientWidth;\n    var clientHeight = target.clientHeight;\n\n    // By this condition we can catch all non-replaced inline, hidden and\n    // detached elements. Though elements with width & height properties less\n    // than 0.5 will be discarded as well.\n    //\n    // Without it we would need to implement separate methods for each of\n    // those cases and it's not possible to perform a precise and performance\n    // effective test for hidden elements. E.g. even jQuery's ':visible' filter\n    // gives wrong results for elements with width & height less than 0.5.\n    if (!clientWidth && !clientHeight) {\n        return emptyRect;\n    }\n\n    var styles = getWindowOf(target).getComputedStyle(target);\n    var paddings = getPaddings(styles);\n    var horizPad = paddings.left + paddings.right;\n    var vertPad = paddings.top + paddings.bottom;\n\n    // Computed styles of width & height are being used because they are the\n    // only dimensions available to JS that contain non-rounded values. It could\n    // be possible to utilize the getBoundingClientRect if only it's data wasn't\n    // affected by CSS transformations let alone paddings, borders and scroll bars.\n    var width = toFloat(styles.width),\n        height = toFloat(styles.height);\n\n    // Width & height include paddings and borders when the 'border-box' box\n    // model is applied (except for IE).\n    if (styles.boxSizing === 'border-box') {\n        // Following conditions are required to handle Internet Explorer which\n        // doesn't include paddings and borders to computed CSS dimensions.\n        //\n        // We can say that if CSS dimensions + paddings are equal to the \"client\"\n        // properties then it's either IE, and thus we don't need to subtract\n        // anything, or an element merely doesn't have paddings/borders styles.\n        if (Math.round(width + horizPad) !== clientWidth) {\n            width -= getBordersSize(styles, 'left', 'right') + horizPad;\n        }\n\n        if (Math.round(height + vertPad) !== clientHeight) {\n            height -= getBordersSize(styles, 'top', 'bottom') + vertPad;\n        }\n    }\n\n    // Following steps can't be applied to the document's root element as its\n    // client[Width/Height] properties represent viewport area of the window.\n    // Besides, it's as well not necessary as the <html> itself neither has\n    // rendered scroll bars nor it can be clipped.\n    if (!isDocumentElement(target)) {\n        // In some browsers (only in Firefox, actually) CSS width & height\n        // include scroll bars size which can be removed at this step as scroll\n        // bars are the only difference between rounded dimensions + paddings\n        // and \"client\" properties, though that is not always true in Chrome.\n        var vertScrollbar = Math.round(width + horizPad) - clientWidth;\n        var horizScrollbar = Math.round(height + vertPad) - clientHeight;\n\n        // Chrome has a rather weird rounding of \"client\" properties.\n        // E.g. for an element with content width of 314.2px it sometimes gives\n        // the client width of 315px and for the width of 314.7px it may give\n        // 314px. And it doesn't happen all the time. So just ignore this delta\n        // as a non-relevant.\n        if (Math.abs(vertScrollbar) !== 1) {\n            width -= vertScrollbar;\n        }\n\n        if (Math.abs(horizScrollbar) !== 1) {\n            height -= horizScrollbar;\n        }\n    }\n\n    return createRectInit(paddings.left, paddings.top, width, height);\n}\n\n/**\r\n * Checks whether provided element is an instance of the SVGGraphicsElement.\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\nvar isSVGGraphicsElement = (function () {\n    // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement\n    // interface.\n    if (typeof SVGGraphicsElement !== 'undefined') {\n        return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };\n    }\n\n    // If it's so, then check that element is at least an instance of the\n    // SVGElement and that it has the \"getBBox\" method.\n    // eslint-disable-next-line no-extra-parens\n    return function (target) { return target instanceof getWindowOf(target).SVGElement && typeof target.getBBox === 'function'; };\n})();\n\n/**\r\n * Checks whether provided element is a document element (<html>).\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\nfunction isDocumentElement(target) {\n    return target === getWindowOf(target).document.documentElement;\n}\n\n/**\r\n * Calculates an appropriate content rectangle for provided html or svg element.\r\n *\r\n * @param {Element} target - Element content rectangle of which needs to be calculated.\r\n * @returns {DOMRectInit}\r\n */\nfunction getContentRect(target) {\n    if (!isBrowser) {\n        return emptyRect;\n    }\n\n    if (isSVGGraphicsElement(target)) {\n        return getSVGContentRect(target);\n    }\n\n    return getHTMLElementContentRect(target);\n}\n\n/**\r\n * Creates rectangle with an interface of the DOMRectReadOnly.\r\n * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly\r\n *\r\n * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.\r\n * @returns {DOMRectReadOnly}\r\n */\nfunction createReadOnlyRect(ref) {\n    var x = ref.x;\n    var y = ref.y;\n    var width = ref.width;\n    var height = ref.height;\n\n    // If DOMRectReadOnly is available use it as a prototype for the rectangle.\n    var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;\n    var rect = Object.create(Constr.prototype);\n\n    // Rectangle's properties are not writable and non-enumerable.\n    defineConfigurable(rect, {\n        x: x, y: y, width: width, height: height,\n        top: y,\n        right: x + width,\n        bottom: height + y,\n        left: x\n    });\n\n    return rect;\n}\n\n/**\r\n * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.\r\n * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit\r\n *\r\n * @param {number} x - X coordinate.\r\n * @param {number} y - Y coordinate.\r\n * @param {number} width - Rectangle's width.\r\n * @param {number} height - Rectangle's height.\r\n * @returns {DOMRectInit}\r\n */\nfunction createRectInit(x, y, width, height) {\n    return { x: x, y: y, width: width, height: height };\n}\n\n/**\r\n * Class that is responsible for computations of the content rectangle of\r\n * provided DOM element and for keeping track of it's changes.\r\n */\nvar ResizeObservation = function(target) {\n    this.broadcastWidth = 0;\n    this.broadcastHeight = 0;\n    this.contentRect_ = createRectInit(0, 0, 0, 0);\n\n    this.target = target;\n};\n\n/**\r\n * Updates content rectangle and tells whether it's width or height properties\r\n * have changed since the last broadcast.\r\n *\r\n * @returns {boolean}\r\n */\n\n\n/**\r\n * Reference to the last observed content rectangle.\r\n *\r\n * @private {DOMRectInit}\r\n */\n\n\n/**\r\n * Broadcasted width of content rectangle.\r\n *\r\n * @type {number}\r\n */\nResizeObservation.prototype.isActive = function () {\n    var rect = getContentRect(this.target);\n\n    this.contentRect_ = rect;\n\n    return rect.width !== this.broadcastWidth || rect.height !== this.broadcastHeight;\n};\n\n/**\r\n * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data\r\n * from the corresponding properties of the last observed content rectangle.\r\n *\r\n * @returns {DOMRectInit} Last observed content rectangle.\r\n */\nResizeObservation.prototype.broadcastRect = function () {\n    var rect = this.contentRect_;\n\n    this.broadcastWidth = rect.width;\n    this.broadcastHeight = rect.height;\n\n    return rect;\n};\n\nvar ResizeObserverEntry = function(target, rectInit) {\n    var contentRect = createReadOnlyRect(rectInit);\n\n    // According to the specification following properties are not writable\n    // and are also not enumerable in the native implementation.\n    //\n    // Property accessors are not being used as they'd require to define a\n    // private WeakMap storage which may cause memory leaks in browsers that\n    // don't support this type of collections.\n    defineConfigurable(this, { target: target, contentRect: contentRect });\n};\n\nvar ResizeObserverSPI = function(callback, controller, callbackCtx) {\n    this.activeObservations_ = [];\n    this.observations_ = new MapShim();\n\n    if (typeof callback !== 'function') {\n        throw new TypeError('The callback provided as parameter 1 is not a function.');\n    }\n\n    this.callback_ = callback;\n    this.controller_ = controller;\n    this.callbackCtx_ = callbackCtx;\n};\n\n/**\r\n * Starts observing provided element.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n * @returns {void}\r\n */\n\n\n/**\r\n * Registry of the ResizeObservation instances.\r\n *\r\n * @private {Map<Element, ResizeObservation>}\r\n */\n\n\n/**\r\n * Public ResizeObserver instance which will be passed to the callback\r\n * function and used as a value of it's \"this\" binding.\r\n *\r\n * @private {ResizeObserver}\r\n */\n\n/**\r\n * Collection of resize observations that have detected changes in dimensions\r\n * of elements.\r\n *\r\n * @private {Array<ResizeObservation>}\r\n */\nResizeObserverSPI.prototype.observe = function (target) {\n    if (!arguments.length) {\n        throw new TypeError('1 argument required, but only 0 present.');\n    }\n\n    // Do nothing if current environment doesn't have the Element interface.\n    if (typeof Element === 'undefined' || !(Element instanceof Object)) {\n        return;\n    }\n\n    if (!(target instanceof getWindowOf(target).Element)) {\n        throw new TypeError('parameter 1 is not of type \"Element\".');\n    }\n\n    var observations = this.observations_;\n\n    // Do nothing if element is already being observed.\n    if (observations.has(target)) {\n        return;\n    }\n\n    observations.set(target, new ResizeObservation(target));\n\n    this.controller_.addObserver(this);\n\n    // Force the update of observations.\n    this.controller_.refresh();\n};\n\n/**\r\n * Stops observing provided element.\r\n *\r\n * @param {Element} target - Element to stop observing.\r\n * @returns {void}\r\n */\nResizeObserverSPI.prototype.unobserve = function (target) {\n    if (!arguments.length) {\n        throw new TypeError('1 argument required, but only 0 present.');\n    }\n\n    // Do nothing if current environment doesn't have the Element interface.\n    if (typeof Element === 'undefined' || !(Element instanceof Object)) {\n        return;\n    }\n\n    if (!(target instanceof getWindowOf(target).Element)) {\n        throw new TypeError('parameter 1 is not of type \"Element\".');\n    }\n\n    var observations = this.observations_;\n\n    // Do nothing if element is not being observed.\n    if (!observations.has(target)) {\n        return;\n    }\n\n    observations.delete(target);\n\n    if (!observations.size) {\n        this.controller_.removeObserver(this);\n    }\n};\n\n/**\r\n * Stops observing all elements.\r\n *\r\n * @returns {void}\r\n */\nResizeObserverSPI.prototype.disconnect = function () {\n    this.clearActive();\n    this.observations_.clear();\n    this.controller_.removeObserver(this);\n};\n\n/**\r\n * Collects observation instances the associated element of which has changed\r\n * it's content rectangle.\r\n *\r\n * @returns {void}\r\n */\nResizeObserverSPI.prototype.gatherActive = function () {\n        var this$1 = this;\n\n    this.clearActive();\n\n    this.observations_.forEach(function (observation) {\n        if (observation.isActive()) {\n            this$1.activeObservations_.push(observation);\n        }\n    });\n};\n\n/**\r\n * Invokes initial callback function with a list of ResizeObserverEntry\r\n * instances collected from active resize observations.\r\n *\r\n * @returns {void}\r\n */\nResizeObserverSPI.prototype.broadcastActive = function () {\n    // Do nothing if observer doesn't have active observations.\n    if (!this.hasActive()) {\n        return;\n    }\n\n    var ctx = this.callbackCtx_;\n\n    // Create ResizeObserverEntry instance for every active observation.\n    var entries = this.activeObservations_.map(function (observation) {\n        return new ResizeObserverEntry(observation.target, observation.broadcastRect());\n    });\n\n    this.callback_.call(ctx, entries, ctx);\n    this.clearActive();\n};\n\n/**\r\n * Clears the collection of active observations.\r\n *\r\n * @returns {void}\r\n */\nResizeObserverSPI.prototype.clearActive = function () {\n    this.activeObservations_.splice(0);\n};\n\n/**\r\n * Tells whether observer has active observations.\r\n *\r\n * @returns {boolean}\r\n */\nResizeObserverSPI.prototype.hasActive = function () {\n    return this.activeObservations_.length > 0;\n};\n\n// Registry of internal observers. If WeakMap is not available use current shim\n// for the Map collection as it has all required methods and because WeakMap\n// can't be fully polyfilled anyway.\nvar observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();\n\n/**\r\n * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation\r\n * exposing only those methods and properties that are defined in the spec.\r\n */\nvar ResizeObserver = function(callback) {\n    if (!(this instanceof ResizeObserver)) {\n        throw new TypeError('Cannot call a class as a function.');\n    }\n    if (!arguments.length) {\n        throw new TypeError('1 argument required, but only 0 present.');\n    }\n\n    var controller = ResizeObserverController.getInstance();\n    var observer = new ResizeObserverSPI(callback, controller, this);\n\n    observers.set(this, observer);\n};\n\n// Expose public methods of ResizeObserver.\n['observe', 'unobserve', 'disconnect'].forEach(function (method) {\n    ResizeObserver.prototype[method] = function () {\n        return (ref = observers.get(this))[method].apply(ref, arguments);\n        var ref;\n    };\n});\n\nvar index = (function () {\n    // Export existing implementation if available.\n    if (typeof global$1.ResizeObserver !== 'undefined') {\n        return global$1.ResizeObserver;\n    }\n\n    return ResizeObserver;\n})();\n\nreturn index;\n\n})));\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction getTouchEvent(e) {\n  return e.touches && e.touches[0] || e;\n}\n\nvar Swipe = function () {\n  function Swipe(pager) {\n    var _this = this;\n\n    _classCallCheck(this, Swipe);\n\n    this._onSwipeStart = function (e) {\n      var _getTouchEvent = getTouchEvent(e),\n          pageX = _getTouchEvent.pageX,\n          pageY = _getTouchEvent.pageY;\n\n      // we're now swiping\n\n\n      _this.pager.isSwiping = true;\n\n      // store the initial starting coordinates\n      _this._swipeStart = {\n        x: pageX,\n        y: pageY\n\n        // reset swipeDiff\n      };_this._swipeDiff = {\n        x: 0,\n        y: 0\n\n        // determine if a flick or not\n      };_this._isFlick = true;\n\n      setTimeout(function () {\n        _this._isFlick = false;\n      }, _this.pager.options.flickTimeout);\n\n      _this.pager.emit('swipeStart');\n    };\n\n    this._onSwipeMove = function (e) {\n      // bail if we aren't swiping\n      if (!_this.pager.isSwiping) return;\n\n      var _pager$options = _this.pager.options,\n          swipeThreshold = _pager$options.swipeThreshold,\n          axis = _pager$options.axis;\n\n      var _getTouchEvent2 = getTouchEvent(e),\n          pageX = _getTouchEvent2.pageX,\n          pageY = _getTouchEvent2.pageY;\n\n      // grab the current position of the track before\n\n\n      if (!_this._trackStart) {\n        _this._trackStart = _this.pager.currentTween;\n      }\n\n      // determine how much we have moved\n      _this._swipeDiff = {\n        x: _this._swipeStart.x - pageX,\n        y: _this._swipeStart.y - pageY\n      };\n\n      if (_this._isSwipe(swipeThreshold)) {\n        e.preventDefault();\n        e.stopPropagation();\n\n        var swipeDiff = _this._swipeDiff[axis];\n        var trackPosition = _this._trackStart - swipeDiff;\n\n        _this.pager.setPositionValue(trackPosition);\n\n        _this.pager.emit('swipeMove');\n      }\n    };\n\n    this._onSwipeEnd = function () {\n      var _pager$options2 = _this.pager.options,\n          swipeThreshold = _pager$options2.swipeThreshold,\n          viewsToMove = _pager$options2.viewsToMove,\n          axis = _pager$options2.axis,\n          infinite = _pager$options2.infinite;\n\n      var threshold = _this._isFlick ? swipeThreshold : _this.pager.currentView.getSize() * viewsToMove * swipeThreshold;\n\n      // we've stopped swiping\n      _this.pager.isSwiping = false;\n\n      // reset start track so we can grab it again on the next swipe\n      _this._trackStart = false;\n\n      // don't move anything if there hasn't been an attempted swipe\n      if (_this._swipeDiff.x || _this._swipeDiff.y) {\n        // determine if we've passed the defined threshold\n        if (_this._isSwipe(threshold)) {\n          if (_this._swipeDiff[axis] < 0) {\n            _this.pager.prev();\n          } else {\n            _this.pager.next();\n          }\n        }\n        // if we didn't, reset back to original view\n        else {\n            _this.pager.setPositionValue();\n          }\n      }\n\n      _this.pager.emit('swipeEnd');\n    };\n\n    this._onSwipePast = function () {\n      // perform a swipe end if we swiped past the component\n      if (_this.pager.isSwiping) {\n        _this._onSwipeEnd();\n      }\n    };\n\n    this.pager = pager;\n    this._trackStart = false;\n    this._swipeStart = this._swipeDiff = {\n      x: 0,\n      y: 0\n    };\n  }\n\n  _createClass(Swipe, [{\n    key: '_isSwipe',\n    value: function _isSwipe(threshold) {\n      var _swipeDiff = this._swipeDiff,\n          x = _swipeDiff.x,\n          y = _swipeDiff.y;\n\n      return this.pager.options.axis === 'x' ? Math.abs(x) > Math.max(threshold, Math.abs(y)) : Math.abs(x) < Math.max(threshold, Math.abs(y));\n    }\n  }, {\n    key: 'getEvents',\n    value: function getEvents() {\n      var swipe = this.pager.options.swipe;\n\n      var swipeEvents = {};\n\n      if (swipe === true || swipe === 'mouse') {\n        swipeEvents.onMouseDown = this._onSwipeStart;\n        swipeEvents.onMouseMove = this._onSwipeMove;\n        swipeEvents.onMouseUp = this._onSwipeEnd;\n        swipeEvents.onMouseLeave = this._onSwipePast;\n      }\n\n      if (swipe === true || swipe === 'touch') {\n        swipeEvents.onTouchStart = this._onSwipeStart;\n        swipeEvents.onTouchMove = this._onSwipeMove;\n        swipeEvents.onTouchEnd = this._onSwipeEnd;\n      }\n\n      return swipeEvents;\n    }\n  }]);\n\n  return Swipe;\n}();\n\nexports.default = Swipe;\nmodule.exports = exports['default'];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.modulo = modulo;\nexports.clamp = clamp;\nexports.sum = sum;\nexports.max = max;\nexports.range = range;\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nfunction modulo(val, max) {\n  return (val % max + max) % max;\n}\n\nfunction clamp(val, min, max) {\n  return Math.min(Math.max(min, val), max);\n}\n\nfunction sum(arr) {\n  return arr.reduce(function (a, b) {\n    return a + b;\n  }, 0);\n}\n\nfunction max(arr) {\n  return Math.max.apply(null, arr);\n}\n\nfunction range(start, end, max) {\n  return [].concat(_toConsumableArray(Array(1 + end - start))).map(function (val) {\n    return max ? modulo(start + val, max) : start + val;\n  });\n}","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _animationBus = require('animation-bus');\n\nvar _animationBus2 = _interopRequireDefault(_animationBus);\n\nvar _Pager = require('./Pager');\n\nvar _Pager2 = _interopRequireDefault(_Pager);\n\nvar _specialAssign = require('./special-assign');\n\nvar _specialAssign2 = _interopRequireDefault(_specialAssign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar checkedProps = {\n  tag: _propTypes2.default.string,\n  index: _propTypes2.default.number,\n  animations: _propTypes2.default.array\n};\n\nvar AnimatedView = function (_Component) {\n  _inherits(AnimatedView, _Component);\n\n  function AnimatedView() {\n    _classCallCheck(this, AnimatedView);\n\n    return _possibleConstructorReturn(this, (AnimatedView.__proto__ || Object.getPrototypeOf(AnimatedView)).apply(this, arguments));\n  }\n\n  _createClass(AnimatedView, [{\n    key: 'componentWillMount',\n    value: function componentWillMount() {\n      var animations = this.props.animations;\n\n\n      if (animations.length) {\n        this._animationBus = new _animationBus2.default({\n          animations: animations,\n          origin: function origin(view) {\n            return view.origin;\n          }\n        });\n      }\n    }\n  }, {\n    key: 'render',\n    value: function render() {\n      var _props = this.props,\n          tag = _props.tag,\n          index = _props.index,\n          restProps = _objectWithoutProperties(_props, ['tag', 'index']);\n\n      var style = _extends({}, restProps.style);\n\n      if (this._animationBus) {\n        var view = this.context.view || this.context.pager.getView(index);\n        if (view) {\n          style = _extends({}, restProps.style, this._animationBus.getStyles(view));\n        }\n      }\n\n      return (0, _react.createElement)(tag, (0, _specialAssign2.default)({ style: style }, this.props, checkedProps));\n    }\n  }]);\n\n  return AnimatedView;\n}(_react.Component);\n\nAnimatedView.contextTypes = {\n  pager: _propTypes2.default.instanceOf(_Pager2.default),\n  view: _propTypes2.default.any\n};\nAnimatedView.propTypes = checkedProps;\nAnimatedView.defaultProps = {\n  tag: 'div',\n  animations: []\n};\nexports.default = AnimatedView;\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _utils = require('./utils');\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Keyboard = function () {\n  function Keyboard(pager) {\n    var _this = this;\n\n    _classCallCheck(this, Keyboard);\n\n    this._handleKeyDown = function (e) {\n      // handle respective key controls\n      switch (e.key) {\n        // move to the previous view\n        case 'ArrowUp':\n        case 'ArrowLeft':\n          _this.pager.prev();\n          return;\n\n        // move to the next view\n        case 'ArrowDown':\n        case 'ArrowRight':\n        case ' ':\n          _this.pager.next();\n          return;\n\n        // move to first view\n        case 'Home':\n          _this.pager.setCurrentView({ index: 0 });\n          return;\n\n        // move to last view\n        case 'End':\n          _this.pager.setCurrentView({ index: _this.pager.views.length - 1 });\n          return;\n      }\n\n      // 1 - 9 keys mapped to respective slide number\n      var maxNumKey = (0, _utils.clamp)(_this.pager.views.length, 0, 9);\n\n      for (var i = 1; i <= maxNumKey; i++) {\n        if (+e.key === i) {\n          _this.pager.setCurrentView({ index: i - 1 });\n        }\n      }\n    };\n\n    this.pager = pager;\n  }\n\n  _createClass(Keyboard, [{\n    key: 'getEvents',\n    value: function getEvents() {\n      var keyboardEvents = {};\n\n      if (this.pager.options.accessibility) {\n        keyboardEvents.onKeyDown = this._handleKeyDown;\n      }\n\n      return keyboardEvents;\n    }\n  }]);\n\n  return Keyboard;\n}();\n\nexports.default = Keyboard;\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactDom = require('react-dom');\n\nvar _Pager = require('./Pager');\n\nvar _Pager2 = _interopRequireDefault(_Pager);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar View = function (_Component) {\n  _inherits(View, _Component);\n\n  function View() {\n    var _ref;\n\n    var _temp, _this, _ret;\n\n    _classCallCheck(this, View);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = View.__proto__ || Object.getPrototypeOf(View)).call.apply(_ref, [this].concat(args))), _this), _this._viewAdded = false, _this._viewInstance = null, _temp), _possibleConstructorReturn(_this, _ret);\n  }\n\n  _createClass(View, [{\n    key: 'getChildContext',\n    value: function getChildContext() {\n      return {\n        view: this._viewInstance\n      };\n    }\n  }, {\n    key: 'componentDidMount',\n    value: function componentDidMount() {\n      this._viewInstance = this.context.pager.addView((0, _reactDom.findDOMNode)(this));\n      this._viewAdded = true;\n      this.forceUpdate();\n    }\n  }, {\n    key: 'componentWillUnmount',\n    value: function componentWillUnmount() {\n      this.context.pager.removeView(this._viewInstance);\n    }\n  }, {\n    key: 'render',\n    value: function render() {\n      var pager = this.context.pager;\n      var _pager$options = pager.options,\n          viewsToShow = _pager$options.viewsToShow,\n          axis = _pager$options.axis;\n\n      var _props = this.props,\n          tag = _props.tag,\n          trackSize = _props.trackSize,\n          restProps = _objectWithoutProperties(_props, ['tag', 'trackSize']);\n\n      var style = _extends({}, restProps.style);\n\n      // hide view visually until it has been added to the pager\n      // this should help avoid FOUC\n      if (!this._viewAdded) {\n        style.visibility = 'hidden';\n        style.pointerEvents = 'none';\n      }\n\n      if (this._viewInstance) {\n        style = _extends({}, style, this._viewInstance.getStyles());\n      }\n\n      return (0, _react.createElement)(tag, _extends({}, restProps, { style: style }));\n    }\n  }]);\n\n  return View;\n}(_react.Component);\n\nView.contextTypes = {\n  pager: _propTypes2.default.instanceOf(_Pager2.default)\n};\nView.childContextTypes = {\n  view: _propTypes2.default.any\n};\nView.propTypes = {\n  tag: _propTypes2.default.any\n};\nView.defaultProps = {\n  tag: 'div'\n};\nexports.default = View;\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactDom = require('react-dom');\n\nvar _reactMotion = require('react-motion');\n\nvar _Pager = require('./Pager');\n\nvar _Pager2 = _interopRequireDefault(_Pager);\n\nvar _Swipe = require('./Swipe');\n\nvar _Swipe2 = _interopRequireDefault(_Swipe);\n\nvar _Keyboard = require('./Keyboard');\n\nvar _Keyboard2 = _interopRequireDefault(_Keyboard);\n\nvar _specialAssign = require('./special-assign');\n\nvar _specialAssign2 = _interopRequireDefault(_specialAssign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar checkedProps = {\n  tag: _propTypes2.default.any,\n  autoSize: _propTypes2.default.oneOf([true, false, 'width', 'height']),\n  accessibility: _propTypes2.default.bool,\n  springConfig: _propTypes2.default.objectOf(_propTypes2.default.number)\n};\n\nvar Frame = function (_Component) {\n  _inherits(Frame, _Component);\n\n  function Frame(props) {\n    _classCallCheck(this, Frame);\n\n    var _this = _possibleConstructorReturn(this, (Frame.__proto__ || Object.getPrototypeOf(Frame)).call(this, props));\n\n    _this._setFrameSize = function () {\n      var frameSize = _this.context.pager.getFrameSize({ fullSize: true });\n\n      if (frameSize.width && frameSize.height) {\n        _this.setState(frameSize, function () {\n          // we need to unset the instant flag now that React Motion has dimensions to animate to\n          if (_this.state.instant) {\n            _this.setState({ instant: false });\n          }\n        });\n      }\n    };\n\n    _this.state = {\n      width: 0,\n      height: 0,\n      instant: true\n    };\n    _this._hydrate = false;\n    return _this;\n  }\n\n  _createClass(Frame, [{\n    key: 'componentWillMount',\n    value: function componentWillMount() {\n      var pager = this.context.pager;\n      var _props = this.props,\n          autoSize = _props.autoSize,\n          accessibility = _props.accessibility;\n\n\n      pager.setOptions({ autoSize: autoSize, accessibility: accessibility });\n\n      this._swipe = new _Swipe2.default(pager);\n      this._keyboard = new _Keyboard2.default(pager);\n    }\n  }, {\n    key: 'componentDidMount',\n    value: function componentDidMount() {\n      var pager = this.context.pager;\n\n\n      pager.addFrame((0, _reactDom.findDOMNode)(this));\n\n      // set frame size initially and then based on certain pager events\n      this._setFrameSize();\n      pager.on('viewChange', this._setFrameSize);\n      pager.on('hydrated', this._setFrameSize);\n    }\n  }, {\n    key: 'componentWillReceiveProps',\n    value: function componentWillReceiveProps(_ref) {\n      var autoSize = _ref.autoSize,\n          accessibility = _ref.accessibility;\n\n      // update any options that have changed\n      if (this.props.autoSize !== autoSize || this.props.accessibility !== accessibility) {\n        this.context.pager.setOptions({ autoSize: autoSize, accessibility: accessibility });\n        this._hydrate = true;\n      }\n    }\n  }, {\n    key: 'componentDidUpdate',\n    value: function componentDidUpdate(nextProps) {\n      if (this._hydrate) {\n        this.context.pager.hydrate();\n        this._hydrate = false;\n      }\n    }\n  }, {\n    key: '_getFrameStyle',\n    value: function _getFrameStyle() {\n      var springConfig = this.props.springConfig;\n      var _state = this.state,\n          width = _state.width,\n          height = _state.height,\n          instant = _state.instant;\n\n      return {\n        maxWidth: instant ? width : (0, _reactMotion.spring)(width, springConfig),\n        height: instant ? height : (0, _reactMotion.spring)(height, springConfig)\n      };\n    }\n  }, {\n    key: '_renderFrame',\n    value: function _renderFrame(style) {\n      var pager = this.context.pager;\n      var _props2 = this.props,\n          tag = _props2.tag,\n          accessibility = _props2.accessibility;\n\n      var props = (0, _specialAssign2.default)(_extends({}, this._swipe.getEvents(), this._keyboard.getEvents(), {\n        tabIndex: accessibility ? 0 : null\n      }), this.props, checkedProps);\n\n      return (0, _react.createElement)(tag, _extends({}, props, {\n        style: _extends({}, style, props.style)\n      }));\n    }\n  }, {\n    key: 'render',\n    value: function render() {\n      var _this2 = this;\n\n      var autoSize = this.props.autoSize;\n      var height = this.state.height;\n\n      var style = {\n        position: 'relative',\n        overflow: 'hidden'\n      };\n\n      if (autoSize) {\n        return _react2.default.createElement(\n          _reactMotion.Motion,\n          { style: this._getFrameStyle() },\n          function (dimensions) {\n            if ((autoSize === true || autoSize === 'width') && dimensions.maxWidth) {\n              style.maxWidth = dimensions.maxWidth;\n            }\n            if ((autoSize === true || autoSize === 'height') && dimensions.height) {\n              style.height = dimensions.height;\n            }\n            return _this2._renderFrame(style);\n          }\n        );\n      } else {\n        return this._renderFrame(style);\n      }\n    }\n  }]);\n\n  return Frame;\n}(_react.Component);\n\nFrame.contextTypes = {\n  pager: _propTypes2.default.instanceOf(_Pager2.default)\n};\nFrame.propTypes = checkedProps;\nFrame.defaultProps = {\n  tag: 'div',\n  autoSize: false,\n  accessibility: true,\n  springConfig: _reactMotion.presets.noWobble\n};\nexports.default = Frame;\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = getIndex;\n\nvar _react = require('react');\n\nfunction getIndex(key, children) {\n  var index = null;\n\n  _react.Children.forEach(children, function (child, _index) {\n    if (child.key === key || _index === key) {\n      index = _index;\n      return;\n    }\n  });\n\n  return index;\n}\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _mitt = require('mitt');\n\nvar _mitt2 = _interopRequireDefault(_mitt);\n\nvar _tabbable = require('tabbable');\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nvar _animationBus = require('animation-bus');\n\nvar _animationBus2 = _interopRequireDefault(_animationBus);\n\nvar _resizeObserverPolyfill = require('resize-observer-polyfill');\n\nvar _resizeObserverPolyfill2 = _interopRequireDefault(_resizeObserverPolyfill);\n\nvar _PagerElement3 = require('./PagerElement');\n\nvar _PagerElement4 = _interopRequireDefault(_PagerElement3);\n\nvar _utils = require('./utils');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar TRANSFORM = require('get-prefix')('transform');\nvar isWindowDefined = typeof window !== 'undefined';\n\nvar Track = function (_PagerElement) {\n  _inherits(Track, _PagerElement);\n\n  function Track() {\n    _classCallCheck(this, Track);\n\n    return _possibleConstructorReturn(this, (Track.__proto__ || Object.getPrototypeOf(Track)).apply(this, arguments));\n  }\n\n  _createClass(Track, [{\n    key: 'getStyles',\n    value: function getStyles(trackPosition) {\n      var _pager$getPositionVal = this.pager.getPositionValue(trackPosition),\n          x = _pager$getPositionVal.x,\n          y = _pager$getPositionVal.y;\n\n      var trackSize = this.pager.getTrackSize();\n      var style = _defineProperty({}, TRANSFORM, 'translate3d(' + x + 'px, ' + y + 'px, 0)');\n\n      if (trackSize) {\n        var _pager$options = this.pager.options,\n            axis = _pager$options.axis,\n            viewsToShow = _pager$options.viewsToShow;\n\n        var dimension = axis === 'x' ? 'width' : 'height';\n\n        style[dimension] = viewsToShow === 'auto' ? trackSize : this.pager.views.length / viewsToShow * 100 + '%';\n      }\n\n      return style;\n    }\n  }]);\n\n  return Track;\n}(_PagerElement4.default);\n\nvar View = function (_PagerElement2) {\n  _inherits(View, _PagerElement2);\n\n  function View(_ref) {\n    var index = _ref.index,\n        restOptions = _objectWithoutProperties(_ref, ['index']);\n\n    _classCallCheck(this, View);\n\n    var _this2 = _possibleConstructorReturn(this, (View.__proto__ || Object.getPrototypeOf(View)).call(this, restOptions));\n\n    _this2.index = index;\n    _this2.inBounds = true;\n    _this2.tabbableChildren = [];\n    _this2.setCurrent(false);\n    _this2.setVisible(false);\n    _this2.setTarget();\n    _this2.setOrigin();\n\n    // TODO: look into getting rid of setTimeout\n    // not sure the reason for needing setTimeout in order to get proper children,\n    // might be due to something in React that we're not doing at the right time\n    setTimeout(function () {\n      _this2.tabbableChildren = (0, _tabbable2.default)(_this2.node);\n      _this2.setTabbableChildren();\n    });\n    return _this2;\n  }\n\n  _createClass(View, [{\n    key: 'setCurrent',\n    value: function setCurrent(isCurrent) {\n      this.isCurrent = isCurrent;\n    }\n  }, {\n    key: 'setVisible',\n    value: function setVisible(isVisible) {\n      this.isVisible = isVisible;\n      this.setTabbableChildren();\n    }\n  }, {\n    key: 'setTabbableChildren',\n    value: function setTabbableChildren() {\n      // only allow tabbing in current slides\n      for (var i = 0; i < this.tabbableChildren.length; i++) {\n        this.tabbableChildren[i].tabIndex = this.isCurrent ? 0 : -1;\n      }\n    }\n  }, {\n    key: 'setTarget',\n    value: function setTarget() {\n      var _pager$options2 = this.pager.options,\n          align = _pager$options2.align,\n          viewsToShow = _pager$options2.viewsToShow;\n\n      var target = this.pager.getStartCoords(this.index);\n\n      if (align) {\n        target += this.pager.getAlignOffset(this);\n      }\n\n      this.target = target;\n    }\n  }, {\n    key: 'setOrigin',\n    value: function setOrigin() {\n      var trackPosition = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.pager.trackPosition;\n\n      this.origin = this.target - trackPosition;\n    }\n  }, {\n    key: 'getStyles',\n    value: function getStyles() {\n      var _pager$options3 = this.pager.options,\n          axis = _pager$options3.axis,\n          viewsToShow = _pager$options3.viewsToShow,\n          infinite = _pager$options3.infinite;\n\n      var style = {};\n\n      // we need to position views inline when using the x axis\n      if (axis === 'x') {\n        style.display = 'inline-block';\n        style.verticalAlign = 'top';\n      }\n\n      // set width or height on view when viewsToShow is not auto\n      if (viewsToShow !== 'auto') {\n        style[axis === 'x' ? 'width' : 'height'] = 100 / this.pager.views.length + '%';\n      }\n\n      // make sure view stays in frame when using infinite option\n      if (infinite && !this.inBounds) {\n        style.position = 'relative';\n        style[axis === 'y' ? 'top' : 'left'] = this.getPosition();\n      }\n\n      // finally, apply any animations\n      return _extends({}, style, this.pager.animationBus.getStyles(this));\n    }\n  }]);\n\n  return View;\n}(_PagerElement4.default);\n\nvar defaultOptions = {\n  viewsToShow: 1,\n  viewsToMove: 1,\n  align: 0,\n  contain: false,\n  axis: 'x',\n  autoSize: false,\n  animations: [],\n  infinite: false,\n  instant: false,\n  swipe: true,\n  swipeThreshold: 0.5,\n  flickTimeout: 300,\n  accessibility: true\n};\n\nvar Pager = function () {\n  function Pager() {\n    var _this3 = this;\n\n    var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n    _classCallCheck(this, Pager);\n\n    this.hydrate = function () {\n      _this3.frame.setSize();\n      _this3.track.setSize();\n      _this3.views.forEach(function (view) {\n        view.setSize();\n        view.setTarget();\n      });\n      _this3.setPositionValue();\n      _this3.setViewStyles();\n      _this3.emit('hydrated');\n    };\n\n    var emitter = (0, _mitt2.default)();\n\n    this.on = emitter.on;\n    this.emit = emitter.emit;\n    this.off = emitter.off;\n\n    this.views = [];\n    this.currentIndex = 0;\n    this.currentView = null;\n    this.currentTween = 0;\n    this.trackPosition = 0;\n    this.isSwiping = false;\n\n    this.options = _extends({}, defaultOptions, options);\n\n    this.animationBus = new _animationBus2.default({\n      animations: this.options.animations,\n      origin: function origin(view) {\n        return view.origin;\n      }\n    });\n\n    if (isWindowDefined) {\n      this.resizeObserver = new _resizeObserverPolyfill2.default(function () {\n        _this3.hydrate();\n      });\n    }\n  }\n\n  _createClass(Pager, [{\n    key: 'setOptions',\n    value: function setOptions(options) {\n      var lastOptions = this.options;\n\n      // spread new options over the old ones\n      this.options = _extends({}, this.options, options);\n\n      // merge animations into animation bus\n      this.animationBus.animations = this.options.animations;\n\n      // fire a viewChange event with the new indicies if viewsToShow has changed\n      if (lastOptions.viewsToShow !== this.options.viewsToShow) {\n        this.emit('viewChange', this.getCurrentIndicies());\n      }\n    }\n  }, {\n    key: 'addFrame',\n    value: function addFrame(node) {\n      this.frame = new _PagerElement4.default({\n        node: node,\n        pager: this\n      });\n    }\n  }, {\n    key: 'addTrack',\n    value: function addTrack(node) {\n      this.track = new Track({\n        node: node,\n        pager: this\n      });\n    }\n  }, {\n    key: 'addView',\n    value: function addView(node) {\n      var index = this.views.length;\n      var view = new View({\n        node: node,\n        index: index,\n        pager: this\n      });\n\n      // add view to collection\n      this.views.push(view);\n\n      // set this as the first view if there isn't one yet\n      if (!this.currentView) {\n        this.setCurrentView({\n          index: index,\n          suppressEvent: true\n        });\n      }\n\n      // listen for width and height changes\n      if (isWindowDefined) {\n        this.resizeObserver.observe(node);\n      }\n\n      // fire an event\n      this.emit('viewAdded');\n\n      return view;\n    }\n  }, {\n    key: 'removeView',\n    value: function removeView(view) {\n      // filter out view\n      this.views = this.views.filter(function (_view) {\n        return view !== _view;\n      });\n\n      // stop observing node\n      if (isWindowDefined) {\n        this.resizeObserver.disconnect(view.node);\n      }\n\n      // fire an event\n      this.emit('viewRemoved');\n    }\n  }, {\n    key: 'prev',\n    value: function prev() {\n      this.setCurrentView({ direction: -1 });\n    }\n  }, {\n    key: 'next',\n    value: function next() {\n      this.setCurrentView({ direction: 1 });\n    }\n  }, {\n    key: 'setCurrentView',\n    value: function setCurrentView(_ref2) {\n      var _ref2$direction = _ref2.direction,\n          direction = _ref2$direction === undefined ? 0 : _ref2$direction,\n          _ref2$index = _ref2.index,\n          index = _ref2$index === undefined ? this.currentIndex : _ref2$index,\n          _ref2$suppressEvent = _ref2.suppressEvent,\n          suppressEvent = _ref2$suppressEvent === undefined ? false : _ref2$suppressEvent;\n      var _options = this.options,\n          viewsToMove = _options.viewsToMove,\n          infinite = _options.infinite;\n\n      var newIndex = index + direction * viewsToMove;\n\n      var previousIndex = this.currentIndex;\n      var currentIndex = infinite ? newIndex : (0, _utils.clamp)(newIndex, 0, this.views.length - 1);\n\n      var previousView = this.getView(previousIndex);\n      var currentView = this.getView(currentIndex);\n\n      // set current index and view\n      this.currentIndex = currentIndex;\n      this.currentView = currentView;\n\n      // swap current view flags\n      previousView.setCurrent(false);\n      currentView.setCurrent(true);\n\n      var rangeStart = currentIndex;\n      var rangeEnd = currentIndex + viewsToMove - 1;\n      var viewRange = (0, _utils.range)(rangeStart, rangeEnd, this.views.length);\n\n      // set flags for which views are currently showing\n      this.views.forEach(function (view, index) {\n        view.setVisible(index === currentIndex);\n      });\n\n      // set the track position to the new view\n      this.setPositionValue();\n\n      if (!suppressEvent) {\n        this.emit('viewChange', this.getCurrentIndicies());\n      }\n    }\n  }, {\n    key: 'setPositionValue',\n    value: function setPositionValue() {\n      var trackPosition = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.currentView ? this.currentView.target : 0;\n\n      if (!this.isSwiping) {\n        var _options2 = this.options,\n            viewsToShow = _options2.viewsToShow,\n            autoSize = _options2.autoSize,\n            infinite = _options2.infinite,\n            contain = _options2.contain;\n\n        var trackSize = this.getTrackSize();\n\n        if (infinite) {\n          // we offset by a track multiplier so infinite animation can take advantage of\n          // physics by animating to a large value, the final value provided in getTransformValue\n          // will return the proper wrapped value\n          trackPosition -= (Math.floor(this.currentIndex / this.views.length) || 0) * trackSize;\n        }\n\n        if (contain) {\n          var trackEndOffset = viewsToShow === 'auto' && autoSize || viewsToShow <= 1 ? 0 : this.getFrameSize({ autoSize: false });\n          trackPosition = (0, _utils.clamp)(trackPosition, trackEndOffset - trackSize, 0);\n        }\n      }\n\n      this.trackPosition = trackPosition;\n    }\n  }, {\n    key: 'setViewStyles',\n    value: function setViewStyles() {\n      var trackPosition = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n      var _options3 = this.options,\n          infinite = _options3.infinite,\n          align = _options3.align;\n\n      var frameSize = this.getFrameSize();\n      var trackSize = this.getTrackSize();\n      var wrappedtrackPosition = (0, _utils.modulo)(trackPosition, -trackSize);\n\n      this.views.reduce(function (lastPosition, view, index) {\n        var viewSize = view.getSize();\n        var nextPosition = lastPosition + viewSize;\n        var position = lastPosition;\n\n        if (nextPosition + viewSize * align < Math.abs(wrappedtrackPosition)) {\n          // shift views around so they are always visible in frame\n          if (infinite) {\n            position += trackSize - lastPosition;\n          }\n          view.inBounds = false;\n        } else {\n          view.inBounds = true;\n        }\n\n        view.setPosition(position);\n        view.setOrigin(trackPosition);\n\n        return nextPosition;\n      }, 0);\n    }\n  }, {\n    key: 'getNumericViewsToShow',\n    value: function getNumericViewsToShow() {\n      return isNaN(this.options.viewsToShow) ? 1 : this.options.viewsToShow;\n    }\n  }, {\n    key: 'getMaxDimensions',\n    value: function getMaxDimensions(indices) {\n      var _this4 = this;\n\n      var axis = this.options.axis;\n\n      var widths = [];\n      var heights = [];\n\n      indices.forEach(function (index) {\n        var view = isNaN(index) ? index : _this4.getView(index);\n        widths.push(view.getSize('width'));\n        heights.push(view.getSize('height'));\n      });\n\n      return {\n        width: axis === 'x' ? (0, _utils.sum)(widths) : (0, _utils.max)(widths),\n        height: axis === 'y' ? (0, _utils.sum)(heights) : (0, _utils.max)(heights)\n      };\n    }\n  }, {\n    key: 'getCurrentIndicies',\n    value: function getCurrentIndicies() {\n      var _options4 = this.options,\n          infinite = _options4.infinite,\n          contain = _options4.contain;\n\n      var currentViews = [];\n      var viewsToShow = isNaN(this.options.viewsToShow) ? 1 : this.options.viewsToShow;\n      var minIndex = this.currentIndex;\n      var maxIndex = this.currentIndex + (viewsToShow - 1);\n\n      if (contain) {\n        // if containing, we need to clamp the start and end indexes so we only return what's in view\n        minIndex = (0, _utils.clamp)(minIndex, 0, this.views.length - viewsToShow);\n        maxIndex = (0, _utils.clamp)(maxIndex, 0, this.views.length - 1);\n        for (var i = minIndex; i <= maxIndex; i++) {\n          currentViews.push(i);\n        }\n      } else {\n        for (var _i = minIndex; _i <= maxIndex; _i++) {\n          currentViews.push(infinite ? (0, _utils.modulo)(_i, this.views.length) : (0, _utils.clamp)(_i, 0, this.views.length - 1));\n        }\n      }\n\n      return currentViews;\n    }\n  }, {\n    key: 'getFrameSize',\n    value: function getFrameSize() {\n      var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n          _ref3$autoSize = _ref3.autoSize,\n          autoSize = _ref3$autoSize === undefined ? this.options.autoSize : _ref3$autoSize,\n          _ref3$fullSize = _ref3.fullSize,\n          fullSize = _ref3$fullSize === undefined ? false : _ref3$fullSize;\n\n      var dimensions = {\n        width: 0,\n        height: 0\n      };\n\n      if (this.views.length) {\n        if (autoSize) {\n          var currentViews = this.getCurrentIndicies();\n          dimensions = this.getMaxDimensions(currentViews);\n        } else if (this.frame) {\n          dimensions = {\n            width: this.frame.getSize('width'),\n            height: this.frame.getSize('height')\n          };\n        }\n      }\n\n      if (fullSize) {\n        return dimensions;\n      } else {\n        return dimensions[this.options.axis === 'x' ? 'width' : 'height'];\n      }\n    }\n  }, {\n    key: 'getTrackSize',\n    value: function getTrackSize() {\n      var includeLastSlide = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n      var lastIndex = includeLastSlide ? this.views.length : this.views.length - 1;\n      var size = 0;\n      this.views.slice(0, lastIndex).forEach(function (view) {\n        size += view.getSize();\n      });\n      return size;\n    }\n  }, {\n    key: 'getView',\n    value: function getView(index) {\n      return this.views[(0, _utils.modulo)(index, this.views.length)];\n    }\n\n    // where the view should start\n\n  }, {\n    key: 'getStartCoords',\n    value: function getStartCoords(index) {\n      var target = 0;\n      this.views.slice(0, index).forEach(function (view) {\n        target -= view.getSize();\n      });\n      return target;\n    }\n\n    // how much to offset the view defined by the align option\n\n  }, {\n    key: 'getAlignOffset',\n    value: function getAlignOffset(view) {\n      var frameSize = this.getFrameSize({ autoSize: false });\n      var viewSize = view.getSize();\n      return (frameSize - viewSize) * this.options.align;\n    }\n  }, {\n    key: 'getPositionValue',\n    value: function getPositionValue() {\n      var trackPosition = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.trackPosition;\n      var _options5 = this.options,\n          infinite = _options5.infinite,\n          contain = _options5.contain;\n\n      var position = { x: 0, y: 0\n\n        // store the current animated value so we can reference it later\n      };this.currentTween = trackPosition;\n\n      // wrap the track position if this is an infinite track\n      if (infinite) {\n        var trackSize = this.getTrackSize();\n        trackPosition = (0, _utils.modulo)(trackPosition, -trackSize) || 0;\n      }\n\n      // emit a \"scroll\" event so we can do things based on the progress of the track\n      this.emit('scroll', {\n        progress: trackPosition / this.getTrackSize(false),\n        position: trackPosition\n      });\n\n      // set the proper transform axis based on our options\n      position[this.options.axis] = trackPosition;\n\n      return position;\n    }\n  }, {\n    key: 'resetViewIndex',\n    value: function resetViewIndex() {\n      // reset back to a normal index\n      this.setCurrentView({\n        index: (0, _utils.modulo)(this.currentIndex, this.views.length),\n        suppressEvent: true\n      });\n    }\n  }]);\n\n  return Pager;\n}();\n\nexports.default = Pager;\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.utils = exports.AnimatedView = exports.View = exports.Track = exports.Frame = exports.ViewPager = undefined;\n\nvar _ViewPager2 = require('./ViewPager');\n\nvar _ViewPager3 = _interopRequireDefault(_ViewPager2);\n\nvar _Frame2 = require('./Frame');\n\nvar _Frame3 = _interopRequireDefault(_Frame2);\n\nvar _Track2 = require('./Track');\n\nvar _Track3 = _interopRequireDefault(_Track2);\n\nvar _View2 = require('./View');\n\nvar _View3 = _interopRequireDefault(_View2);\n\nvar _AnimatedView2 = require('./AnimatedView');\n\nvar _AnimatedView3 = _interopRequireDefault(_AnimatedView2);\n\nvar _utils2 = require('./utils');\n\nvar _utils3 = _interopRequireDefault(_utils2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.ViewPager = _ViewPager3.default;\nexports.Frame = _Frame3.default;\nexports.Track = _Track3.default;\nexports.View = _View3.default;\nexports.AnimatedView = _AnimatedView3.default;\nexports.utils = _utils3.default;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar PagerElement = function () {\n  function PagerElement(_ref) {\n    var node = _ref.node,\n        pager = _ref.pager,\n        width = _ref.width,\n        height = _ref.height;\n\n    _classCallCheck(this, PagerElement);\n\n    this.node = node;\n    this.pager = pager;\n    this.x = this.y = 0;\n    this.setSize(width, height);\n  }\n\n  _createClass(PagerElement, [{\n    key: 'setSize',\n    value: function setSize(width, height) {\n      this.width = width || this.node.offsetWidth;\n      this.height = height || this.node.offsetHeight;\n    }\n  }, {\n    key: 'setPosition',\n    value: function setPosition(position) {\n      this[this.pager.options.axis] = position;\n    }\n  }, {\n    key: 'getSize',\n    value: function getSize(dimension) {\n      if (dimension === 'width' || dimension === 'height') {\n        return this[dimension];\n      } else {\n        var axis = this.pager.options.axis;\n        return this[axis === 'x' ? 'width' : 'height'];\n      }\n    }\n  }, {\n    key: 'getPosition',\n    value: function getPosition() {\n      return this[this.pager.options.axis];\n    }\n  }]);\n\n  return PagerElement;\n}();\n\nexports.default = PagerElement;\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactDom = require('react-dom');\n\nvar _reactMotion = require('react-motion');\n\nvar _Pager = require('./Pager');\n\nvar _Pager2 = _interopRequireDefault(_Pager);\n\nvar _getIndex = require('./get-index');\n\nvar _getIndex2 = _interopRequireDefault(_getIndex);\n\nvar _specialAssign = require('./special-assign');\n\nvar _specialAssign2 = _interopRequireDefault(_specialAssign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar noop = function noop() {\n  return null;\n};\nvar checkedProps = {\n  tag: _propTypes2.default.any,\n  currentView: _propTypes2.default.any,\n  viewsToShow: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.oneOf(['auto'])]),\n  viewsToMove: _propTypes2.default.number,\n  align: _propTypes2.default.number,\n  contain: _propTypes2.default.bool,\n  axis: _propTypes2.default.oneOf(['x', 'y']),\n  animations: _propTypes2.default.array,\n  infinite: _propTypes2.default.bool,\n  instant: _propTypes2.default.bool,\n  swipe: _propTypes2.default.oneOf([true, false, 'mouse', 'touch']),\n  swipeThreshold: _propTypes2.default.number,\n  flickTimeout: _propTypes2.default.number,\n  // rightToLeft: PropTypes.bool,\n  // lazyLoad: PropTypes.bool,\n  springConfig: _propTypes2.default.objectOf(_propTypes2.default.number),\n  onSwipeStart: _propTypes2.default.func,\n  onSwipeMove: _propTypes2.default.func,\n  onSwipeEnd: _propTypes2.default.func,\n  onScroll: _propTypes2.default.func,\n  onViewChange: _propTypes2.default.func,\n  onRest: _propTypes2.default.func\n};\nvar isNotEqual = function isNotEqual(current, next) {\n  return current.viewsToShow !== next.viewsToShow || current.viewsToMove !== next.viewsToMove || current.align !== next.align || current.axis !== next.axis || current.animations !== next.animations || current.infinite !== next.infinite || current.swipe !== next.swipe || current.swipeThreshold !== next.swipeThreshold || current.flickTimeout !== next.flickTimeout;\n};\n\n// Track scroller is an intermediate component that allows us to provide the\n// React Motion value to onScroll and lets any user of onScroll use setState\n\nvar TrackScroller = function (_Component) {\n  _inherits(TrackScroller, _Component);\n\n  function TrackScroller() {\n    var _ref;\n\n    var _temp, _this, _ret;\n\n    _classCallCheck(this, TrackScroller);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = TrackScroller.__proto__ || Object.getPrototypeOf(TrackScroller)).call.apply(_ref, [this].concat(args))), _this), _this.state = {\n      x: 0,\n      y: 0\n    }, _temp), _possibleConstructorReturn(_this, _ret);\n  }\n\n  _createClass(TrackScroller, [{\n    key: 'componentWillReceiveProps',\n    value: function componentWillReceiveProps(_ref2) {\n      var _this2 = this;\n\n      var trackPosition = _ref2.trackPosition;\n      var pager = this.context.pager;\n\n      // update view styles with current position tween\n      // this method can get called hundreds of times, let's make sure to optimize as much as we can\n\n      pager.setViewStyles(trackPosition);\n\n      // update onScroll callback, we use requestAnimationFrame to avoid bouncing\n      // back from updates from onScroll while React Motion is trying to update it's own tree\n      // https://github.com/chenglou/react-motion/issues/357#issuecomment-262393424\n      if (this.props.trackPosition !== trackPosition) {\n        requestAnimationFrame(function () {\n          return _this2.props.onScroll(trackPosition / pager.getTrackSize(false) * -1, trackPosition);\n        });\n      }\n    }\n  }, {\n    key: '_renderViews',\n    value: function _renderViews() {\n      // we need Children map in order for the infinite option to work\n      // not actually sure why this is the case\n      return _react.Children.map(this.props.children, function (child) {\n        return child;\n      });\n    }\n  }, {\n    key: 'render',\n    value: function render() {\n      var pager = this.context.pager;\n\n      var _props = this.props,\n          tag = _props.tag,\n          trackPosition = _props.trackPosition,\n          children = _props.children,\n          restProps = _objectWithoutProperties(_props, ['tag', 'trackPosition', 'children']);\n\n      var style = _extends({}, restProps.style);\n\n      if (pager.track) {\n        style = _extends({}, style, pager.track.getStyles(trackPosition));\n      }\n\n      return (0, _react.createElement)(tag, _extends({}, restProps, {\n        style: style\n      }), this._renderViews());\n    }\n  }]);\n\n  return TrackScroller;\n}(_react.Component);\n\nTrackScroller.propTypes = checkedProps;\nTrackScroller.contextTypes = {\n  pager: _propTypes2.default.instanceOf(_Pager2.default)\n};\n\nvar Track = function (_Component2) {\n  _inherits(Track, _Component2);\n\n  function Track() {\n    var _ref3;\n\n    var _temp2, _this3, _ret2;\n\n    _classCallCheck(this, Track);\n\n    for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n      args[_key2] = arguments[_key2];\n    }\n\n    return _ret2 = (_temp2 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Track.__proto__ || Object.getPrototypeOf(Track)).call.apply(_ref3, [this].concat(args))), _this3), _this3.state = {\n      instant: false\n    }, _this3._currentTween = 0, _this3._hydrate = false, _this3._handleOnRest = function () {\n      if (_this3.props.infinite && !_this3.state.instant) {\n        // reset back to a normal index\n        _this3.context.pager.resetViewIndex();\n\n        // set instant flag so we can prime track for next move\n        _this3._setValueInstantly(true, true);\n      }\n\n      _this3.props.onRest();\n    }, _temp2), _possibleConstructorReturn(_this3, _ret2);\n  }\n\n  _createClass(Track, [{\n    key: 'componentWillMount',\n    value: function componentWillMount() {\n      this.context.pager.setOptions(this.props);\n    }\n  }, {\n    key: 'componentDidMount',\n    value: function componentDidMount() {\n      var _this4 = this;\n\n      var pager = this.context.pager;\n\n      // add track to pager\n\n      pager.addTrack((0, _reactDom.findDOMNode)(this));\n\n      // set initial view index and listen for any incoming view index changes\n      this.scrollTo((0, _getIndex2.default)(this.props.currentView, this.props.children));\n\n      // set values instantly on respective events\n      pager.on('hydrated', function () {\n        return _this4._setValueInstantly(true, true);\n      });\n      pager.on('swipeMove', function () {\n        return _this4._setValueInstantly(true);\n      });\n      pager.on('swipeEnd', function () {\n        return _this4._setValueInstantly(false);\n      });\n\n      // prop callbacks\n      pager.on('swipeStart', this.props.onSwipeStart);\n      pager.on('swipeMove', this.props.onSwipeMove);\n      pager.on('swipeEnd', this.props.onSwipeEnd);\n      pager.on('viewChange', this.props.onViewChange);\n    }\n  }, {\n    key: 'componentWillReceiveProps',\n    value: function componentWillReceiveProps(nextProps) {\n      var currentView = nextProps.currentView,\n          instant = nextProps.instant,\n          children = nextProps.children;\n\n      // update instant state from props\n\n      if (this.props.instant !== instant) {\n        this._setValueInstantly(instant);\n      }\n\n      // update state with new index if necessary\n      if ((typeof currentView === 'undefined' ? 'undefined' : _typeof(currentView)) !== undefined && this.props.currentView !== currentView) {\n        this.scrollTo((0, _getIndex2.default)(currentView, children));\n      }\n\n      // update any options that have changed\n      if (isNotEqual(this.props, nextProps)) {\n        this.context.pager.setOptions(nextProps);\n        this._hydrate = true;\n      }\n    }\n  }, {\n    key: 'componentDidUpdate',\n    value: function componentDidUpdate(nextProps) {\n      if (this._hydrate) {\n        this.context.pager.hydrate();\n        this._hydrate = false;\n      }\n    }\n  }, {\n    key: 'prev',\n    value: function prev() {\n      this.context.pager.prev();\n    }\n  }, {\n    key: 'next',\n    value: function next() {\n      this.context.pager.next();\n    }\n  }, {\n    key: 'scrollTo',\n    value: function scrollTo(index) {\n      this.context.pager.setCurrentView({ index: index });\n    }\n  }, {\n    key: '_setValueInstantly',\n    value: function _setValueInstantly(instant, reset) {\n      var _this5 = this;\n\n      this.setState({ instant: instant }, function () {\n        if (reset) {\n          _this5.setState({ instant: false });\n        }\n      });\n    }\n  }, {\n    key: '_getTrackStyle',\n    value: function _getTrackStyle() {\n      var trackPosition = this.context.pager.trackPosition;\n\n      if (!this.state.instant) {\n        trackPosition = (0, _reactMotion.spring)(trackPosition, this.props.springConfig);\n      }\n      return { trackPosition: trackPosition };\n    }\n  }, {\n    key: 'render',\n    value: function render() {\n      var _props2 = this.props,\n          tag = _props2.tag,\n          onScroll = _props2.onScroll,\n          restProps = _objectWithoutProperties(_props2, ['tag', 'onScroll']);\n\n      return _react2.default.createElement(\n        _reactMotion.Motion,\n        {\n          style: this._getTrackStyle(),\n          onRest: this._handleOnRest\n        },\n        function (_ref4) {\n          var trackPosition = _ref4.trackPosition;\n          return (0, _react.createElement)(TrackScroller, (0, _specialAssign2.default)({ trackPosition: trackPosition, tag: tag, onScroll: onScroll }, restProps, checkedProps));\n        }\n      );\n    }\n  }]);\n\n  return Track;\n}(_react.Component);\n\nTrack.propTypes = checkedProps;\nTrack.defaultProps = {\n  tag: 'div',\n  currentView: 0,\n  viewsToShow: 1,\n  viewsToMove: 1,\n  align: 0,\n  contain: false,\n  axis: 'x',\n  infinite: false,\n  instant: false,\n  swipe: true,\n  swipeThreshold: 0.5,\n  flickTimeout: 300,\n  springConfig: _reactMotion.presets.noWobble,\n  onSwipeStart: noop,\n  onSwipeMove: noop,\n  onSwipeEnd: noop,\n  onScroll: noop,\n  onViewChange: noop,\n  onRest: noop\n};\nTrack.contextTypes = {\n  pager: _propTypes2.default.instanceOf(_Pager2.default)\n};\nexports.default = Track;\nmodule.exports = exports['default'];"],"names":["Object","defineProperty","exports","value","a","b","reserved","x","hasOwnProperty","module","_createClass","defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","key","Constructor","protoProps","staticProps","prototype","_react","_propTypes2","_interopRequireDefault","_Pager2","obj","__esModule","default","ViewPager","_Component","instance","TypeError","_classCallCheck","this","_this","self","call","ReferenceError","_possibleConstructorReturn","__proto__","getPrototypeOf","pager","forceUpdate","on","_pager","subClass","superClass","create","constructor","setPrototypeOf","_inherits","_this2","requestAnimationFrame","hydrate","_props","tag","restProps","keys","indexOf","_objectWithoutProperties","createElement","Component","childContextTypes","instanceOf","propTypes","string","defaultProps","MapShim","Map","getIndex","arr","result","some","entry","index","anonymous","__entries__","prototypeAccessors","size","get","set","push","delete","entries","splice","has","clear","forEach","callback","ctx","list","isBrowser","window","document","global$1","g","Math","Function","requestAnimationFrame$1","bind","setTimeout","Date","now","trailingTimeout","throttle","delay","leadingCall","trailingCall","lastCallTime","resolvePending","proxy","timeoutCallback","timeStamp","REFRESH_DELAY","transitionKeys","mutationObserverSupported","MutationObserver","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","addObserver","observer","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","filter","gatherActive","hasActive","broadcastActive","addEventListener","observe","attributes","childList","characterData","subtree","removeEventListener","disconnect","ref","propertyName","getInstance","instance_","defineConfigurable","getWindowOf","ownerDocument","defaultView","emptyRect","createRectInit","toFloat","parseFloat","getBordersSize","styles","positions","len","arguments","reduce","position","getPaddings","paddings","getSVGContentRect","bbox","getBBox","width","height","getHTMLElementContentRect","clientWidth","clientHeight","getComputedStyle","horizPad","left","right","vertPad","top","bottom","boxSizing","round","isDocumentElement","vertScrollbar","horizScrollbar","abs","isSVGGraphicsElement","SVGGraphicsElement","SVGElement","documentElement","getContentRect","createReadOnlyRect","y","Constr","DOMRectReadOnly","rect","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","isActive","broadcastRect","ResizeObserverEntry","rectInit","contentRect","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","callback_","controller_","callbackCtx_","Element","observations","unobserve","clearActive","this$1","observation","map","WeakMap","ResizeObserver","method","apply","factory","getTouchEvent","e","touches","Swipe","_onSwipeStart","_getTouchEvent","pageX","pageY","isSwiping","_swipeStart","_swipeDiff","_isFlick","options","flickTimeout","emit","_onSwipeMove","_pager$options","swipeThreshold","axis","_getTouchEvent2","_trackStart","currentTween","_isSwipe","preventDefault","stopPropagation","swipeDiff","trackPosition","setPositionValue","_onSwipeEnd","_pager$options2","viewsToMove","threshold","infinite","currentView","getSize","prev","next","_onSwipePast","max","swipe","swipeEvents","onMouseDown","onMouseMove","onMouseUp","onMouseLeave","onTouchStart","onTouchMove","onTouchEnd","modulo","val","clamp","min","sum","range","start","end","concat","Array","isArray","arr2","from","_toConsumableArray","_extends","assign","source","_animationBus2","_specialAssign2","checkedProps","number","animations","array","AnimatedView","_animationBus","origin","view","style","context","getView","getStyles","contextTypes","any","_utils","Keyboard","_handleKeyDown","setCurrentView","views","maxNumKey","keyboardEvents","accessibility","onKeyDown","_reactDom","View","_ref","_temp","_len","args","_key","_viewAdded","_viewInstance","addView","findDOMNode","removeView","viewsToShow","trackSize","visibility","pointerEvents","_react2","_reactMotion","_Swipe2","_Keyboard2","autoSize","oneOf","bool","springConfig","objectOf","Frame","_setFrameSize","frameSize","getFrameSize","fullSize","setState","state","instant","_hydrate","setOptions","_swipe","_keyboard","addFrame","nextProps","_state","maxWidth","spring","_props2","getEvents","tabIndex","overflow","Motion","_getFrameStyle","dimensions","_renderFrame","presets","noWobble","children","Children","child","_index","_mitt2","_tabbable2","_resizeObserverPolyfill2","_PagerElement4","TRANSFORM","isWindowDefined","Track","_PagerElement","_pager$getPositionVal","getPositionValue","getTrackSize","_PagerElement2","restOptions","inBounds","tabbableChildren","setCurrent","setVisible","setTarget","setOrigin","node","setTabbableChildren","isCurrent","isVisible","align","getStartCoords","getAlignOffset","undefined","_pager$options3","display","verticalAlign","getPosition","animationBus","defaultOptions","contain","Pager","_this3","frame","setSize","track","setViewStyles","emitter","off","currentIndex","resizeObserver","lastOptions","getCurrentIndicies","suppressEvent","_view","direction","_ref2","_ref2$direction","_ref2$index","_ref2$suppressEvent","_options","newIndex","previousIndex","previousView","rangeStart","rangeEnd","_options2","floor","trackEndOffset","_options3","wrappedtrackPosition","lastPosition","viewSize","nextPosition","setPosition","isNaN","indices","_this4","widths","heights","_options4","currentViews","minIndex","maxIndex","_i","_ref3","_ref3$autoSize","_ref3$fullSize","getMaxDimensions","lastIndex","slice","_options5","progress","_ViewPager3","_Frame3","_Track3","_View3","_AnimatedView3","_utils3","PagerElement","offsetWidth","offsetHeight","dimension","_typeof","Symbol","iterator","_getIndex2","noop","oneOfType","onSwipeStart","func","onSwipeMove","onSwipeEnd","onScroll","onViewChange","onRest","TrackScroller","_renderViews","_Component2","_temp2","_len2","_key2","_currentTween","_handleOnRest","resetViewIndex","_setValueInstantly","addTrack","scrollTo","current","reset","_this5","_getTrackStyle","_ref4"],"ignoreList":[],"sourceRoot":""}