{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap 4bb91fa1d64e6fc6e739","webpack:///./src/deck.js","webpack:///./~/babel-runtime/helpers/objectWithoutProperties.js","webpack:///./~/babel-runtime/helpers/defineProperty.js","webpack:///./~/babel-runtime/core-js/object/define-property.js","webpack:///./~/babel-runtime/~/core-js/library/fn/object/define-property.js","webpack:///./~/babel-runtime/~/core-js/library/modules/es6.object.define-property.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_export.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_global.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_core.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_ctx.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_a-function.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_hide.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-dp.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_an-object.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_is-object.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_ie8-dom-define.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_descriptors.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_fails.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_dom-create.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_to-primitive.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_property-desc.js","webpack:///./~/babel-runtime/core-js/object/get-prototype-of.js","webpack:///./~/babel-runtime/~/core-js/library/fn/object/get-prototype-of.js","webpack:///./~/babel-runtime/~/core-js/library/modules/es6.object.get-prototype-of.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_to-object.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_defined.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-gpo.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_has.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_shared-key.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_shared.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_uid.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-sap.js","webpack:///./~/babel-runtime/helpers/classCallCheck.js","webpack:///./~/babel-runtime/helpers/createClass.js","webpack:///./~/babel-runtime/helpers/possibleConstructorReturn.js","webpack:///./~/babel-runtime/helpers/typeof.js","webpack:///./~/babel-runtime/core-js/symbol/iterator.js","webpack:///./~/babel-runtime/~/core-js/library/fn/symbol/iterator.js","webpack:///./~/babel-runtime/~/core-js/library/modules/es6.string.iterator.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_string-at.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_to-integer.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_iter-define.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_library.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_redefine.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_iterators.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_iter-create.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-create.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-dps.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-keys.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-keys-internal.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_to-iobject.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_iobject.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_cof.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_array-includes.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_to-length.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_to-index.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_enum-bug-keys.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_html.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_set-to-string-tag.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_wks.js","webpack:///./~/babel-runtime/~/core-js/library/modules/web.dom.iterable.js","webpack:///./~/babel-runtime/~/core-js/library/modules/es6.array.iterator.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_add-to-unscopables.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_iter-step.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_wks-ext.js","webpack:///./~/babel-runtime/core-js/symbol.js","webpack:///./~/babel-runtime/~/core-js/library/fn/symbol/index.js","webpack:///./~/babel-runtime/~/core-js/library/modules/es6.symbol.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_meta.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_wks-define.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_keyof.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_enum-keys.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-gops.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-pie.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_is-array.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-gopn-ext.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-gopn.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_object-gopd.js","webpack:///./~/babel-runtime/~/core-js/library/modules/es7.symbol.async-iterator.js","webpack:///./~/babel-runtime/~/core-js/library/modules/es7.symbol.observable.js","webpack:///./~/babel-runtime/helpers/inherits.js","webpack:///./~/babel-runtime/core-js/object/set-prototype-of.js","webpack:///./~/babel-runtime/~/core-js/library/fn/object/set-prototype-of.js","webpack:///./~/babel-runtime/~/core-js/library/modules/es6.object.set-prototype-of.js","webpack:///./~/babel-runtime/~/core-js/library/modules/_set-proto.js","webpack:///./~/babel-runtime/core-js/object/create.js","webpack:///./~/babel-runtime/~/core-js/library/fn/object/create.js","webpack:///./~/babel-runtime/~/core-js/library/modules/es6.object.create.js","webpack:///external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\",\"umd\":\"react\"}","webpack:///external {\"root\":\"ReactDOM\",\"commonjs2\":\"react-dom\",\"commonjs\":\"react-dom\",\"amd\":\"react-dom\",\"umd\":\"react-dom\"}","webpack:///./src/tween.js","webpack:///./src/flat-event.js","webpack:///./~/raf/index.js","webpack:///./~/raf/~/performance-now/lib/performance-now.js","webpack:///(webpack)/~/node-libs-browser/~/process/browser.js","webpack:///./src/ease.js","webpack:///./~/classnames/index.js","webpack:///./src/slide.js","webpack:///./src/style.scss?0fca","webpack:///./src/style.scss","webpack:///./~/css-loader/lib/css-base.js","webpack:///./~/style-loader/addStyles.js"],"names":[],"mappings":"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A;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAW;AACX,UAAS;AACT;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,gDAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,eAAc;AACd,eAAc;AACd,eAAc;AACd,eAAc;AACd,gBAAe;AACf,gBAAe;AACf,gBAAe;AACf,iBAAgB;AAChB,0B;;;;;;AC5DA;AACA;AACA;AACA,wCAAuC,gC;;;;;;ACHvC,8BAA6B;AAC7B,sCAAqC,gC;;;;;;ACDrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACnBA;AACA;AACA;AACA,G;;;;;;ACHA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA,G;;;;;;ACPA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG,UAAU;AACb;AACA;AACA;AACA,G;;;;;;ACfA;AACA;AACA;AACA;AACA,G;;;;;;ACJA;AACA;AACA,G;;;;;;ACFA;AACA,sEAAsE,gBAAgB,UAAU,GAAG;AACnG,EAAC,E;;;;;;ACFD;AACA;AACA,kCAAiC,QAAQ,gBAAgB,UAAU,GAAG;AACtE,EAAC,E;;;;;;ACHD;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,G;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACPA,mBAAkB,wD;;;;;;ACAlB;AACA,+D;;;;;;ACDA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC,E;;;;;;ACRD;AACA;AACA;AACA;AACA,G;;;;;;ACJA;AACA;AACA;AACA;AACA,G;;;;;;ACJA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,G;;;;;;ACZA,wBAAuB;AACvB;AACA;AACA,G;;;;;;ACHA;AACA;AACA;AACA;AACA,G;;;;;;ACJA;AACA;AACA,oDAAmD;AACnD;AACA,wCAAuC;AACvC,G;;;;;;ACLA;AACA;AACA;AACA;AACA,G;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA,+BAA8B;AAC9B;AACA;AACA,oDAAmD,OAAO,EAAE;AAC5D,G;;;;;;ACTA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,G;;;;;;ACRA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA,oBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAC,G;;;;;;AC1BD;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;;AAEA;AACA,G;;;;;;AChBA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,kHAAiH,mBAAmB,EAAE,mBAAmB,sHAAsH;;AAE/Q,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA,EAAC;AACD;AACA,G;;;;;;ACpBA,mBAAkB,wD;;;;;;ACAlB;AACA;AACA,wD;;;;;;ACFA;AACA;;AAEA;AACA;AACA,8BAA6B;AAC7B,eAAc;AACd;AACA,EAAC;AACD;AACA;AACA;AACA,gCAA+B;AAC/B;AACA;AACA,WAAU;AACV,EAAC,E;;;;;;AChBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,6BAA4B,aAAa;;AAEzC;AACA;AACA;AACA;AACA;AACA,yCAAwC,oCAAoC;AAC5E,6CAA4C,oCAAoC;AAChF,MAAK,2BAA2B,oCAAoC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAgB,mBAAmB;AACnC;AACA;AACA,kCAAiC,2BAA2B;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,G;;;;;;ACrEA,uB;;;;;;ACAA,0C;;;;;;ACAA,qB;;;;;;ACAA;AACA;AACA;AACA;AACA;;AAEA;AACA,4FAAgF,aAAa,EAAE;;AAE/F;AACA,sDAAqD,0BAA0B;AAC/E;AACA,G;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA,8BAA6B;AAC7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,G;;;;;;ACvCA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACZA;AACA;AACA;;AAEA;AACA;AACA,G;;;;;;ACNA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACLA;AACA;AACA;AACA;AACA,G;;;;;;ACJA,kBAAiB;;AAEjB;AACA;AACA,G;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK,WAAW,eAAe;AAC/B;AACA,MAAK;AACL;AACA,G;;;;;;ACpBA;AACA;AACA;AACA;AACA,4DAA2D;AAC3D,G;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACNA;AACA;AACA;AACA,c;;;;;;ACHA,8E;;;;;;ACAA;AACA;AACA;;AAEA;AACA,mEAAkE,+BAA+B;AACjG,G;;;;;;ACNA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,wB;;;;;;ACVA;AACA;AACA;AACA;AACA;;AAEA,yGAAwG,OAAO;AAC/G;AACA;AACA;AACA;AACA;AACA,E;;;;;;ACZA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iCAAgC;AAChC,eAAc;AACd,kBAAiB;AACjB;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA,6B;;;;;;ACjCA,6BAA4B,e;;;;;;ACA5B;AACA,WAAU;AACV,G;;;;;;ACFA,qC;;;;;;ACAA,mBAAkB,wD;;;;;;ACAlB;AACA;AACA;AACA;AACA,gD;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,uBAAsB;AACtB,qBAAoB,uBAAuB,SAAS,IAAI;AACxD,IAAG;AACH,EAAC;AACD;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAAyD;AACzD;AACA,MAAK;AACL;AACA,uBAAsB,iCAAiC;AACvD,MAAK;AACL,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA8D,8BAA8B;AAC5F;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,2DAA0D,gBAAgB;;AAE1E;AACA;AACA;AACA,qBAAoB,oBAAoB;;AAExC,2CAA0C,oBAAoB;;AAE9D;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA,IAAG;AACH,yBAAwB,eAAe,EAAE;AACzC,yBAAwB,gBAAgB;AACxC,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,qDAAoD,KAAK,QAAQ,iCAAiC;AAClG,EAAC;AACD;AACA,gDAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2C;;;;;;AC1OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAiD;AACjD,EAAC;AACD;AACA,sBAAqB;AACrB;AACA,UAAS;AACT,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA0D,sBAAsB;AAChF,iFAAgF,sBAAsB;AACtG,G;;;;;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,G;;;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A;AACA,MAAK;AACL;AACA;;AAEA;AACA,mBAAkB,kBAAkB;AACpC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACvEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;;AAEA,EAAC;;;;;;;;AC/BD;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,4BAA2B;AAC3B;AACA;AACA;AACA,6BAA4B,UAAU;;;;;;;;;;;;ACtHtC,KAAI,OAAO,EAAX;AACA,MAAK,MAAL,GAAc,UAAS,CAAT,EAAW;AACvB,UAAO,CAAP;AACD,EAFD;;AAIA,MAAK,MAAL,GAAc,UAAS,CAAT,EAAW;AACvB,UAAO,IAAI,CAAX;AACD,EAFD;;AAIA,MAAK,OAAL,GAAe,UAAS,CAAT,EAAW;AACxB,UAAO,KAAK,IAAI,CAAT,CAAP;AACD,EAFD;;AAIA,MAAK,SAAL,GAAiB,UA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CA;AACA,iCAAgC,UAAU,EAAE;AAC5C,E;;;;;;ACpBA;AACA;;;AAGA;AACA,iDAAgD,uBAAuB,qBAAqB,EAAE,2BAA2B,uBAAuB,YAAY,WAAW,gBAAgB,iBAAiB,wCAAwC,wCAAwC,qBAAqB,EAAE,kCAAkC,4CAA4C,4CAA4C,mBAAmB,EAAE,kEAAkE,gDAAgD,gDAAgD,EAAE,iEAAiE,+CAA+C,+CAA+C,EAAE,gEAAgE,gDAAgD,gDAAgD,EAAE,+DAA+D,+CAA+C,+CAA+C,EAAE;;AAEpkC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAgB,iBAAiB;AACjC;AACA;AACA,yCAAwC,gBAAgB;AACxD,KAAI;AACJ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA,aAAY,oBAAoB;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACjDA;AACA;AACA;AACA;AACA,qBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAgB,mBAAmB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAgB,sBAAsB;AACtC;AACA;AACA,mBAAkB,2BAA2B;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAe,mBAAmB;AAClC;AACA;AACA;AACA;AACA,kBAAiB,2BAA2B;AAC5C;AACA;AACA,SAAQ,uBAAuB;AAC/B;AACA;AACA,IAAG;AACH;AACA,kBAAiB,uBAAuB;AACxC;AACA;AACA,4BAA2B;AAC3B;AACA;AACA;;AAEA;AACA;AACA;AACA,gBAAe,iBAAiB;AAChC;AACA;AACA;AACA;AACA;AACA,eAAc;AACd;AACA,iCAAgC,sBAAsB;AACtD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,IAAG;AACH;AACA;AACA;AACA,GAAE;AACF;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,wDAAuD;AACvD;;AAEA,8BAA6B,mBAAmB;;AAEhD;;AAEA;;AAEA;AACA;AACA","file":"deck.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"react-dom\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"react-dom\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ReactDeck\"] = factory(require(\"react\"), require(\"react-dom\"));\n\telse\n\t\troot[\"ReactDeck\"] = factory(root[\"React\"], root[\"ReactDOM\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_89__, __WEBPACK_EXTERNAL_MODULE_90__) {\nreturn \n\n\n/** WEBPACK FOOTER **\n ** webpack/universalModuleDefinition\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap 4bb91fa1d64e6fc6e739\n **/","/**\n * <Deck\n *    horizontal={true|false}\n *    loop\n *    swipe\n *    wheel\n *    slideClasses\n *    animate\n *    dura=1400\n *    factor=0.4\n *    current=2\n *    easing=function(currentTime/duration)||string\n *    onSwitching\n *    onSwitchDone\n *  >\n *  <Deck.Slide>\n *  </Deck.Slide>\n *\n *  <Deck.Slide>\n *  </Deck.Slide>\n * </Deck>\n *\n */\nimport React, { Component, Children } from 'react';\nimport ReactDOM from 'react-dom';\nimport Tween from './tween';\nimport cx from 'classnames';\nimport raf from 'raf';\nimport Slide from './slide';\nimport styles from './style.scss';\n// import throttle from 'utils/throttle';\n\nconst SWIPE_DURA = 1000; // default transition duration\nconst SWIPE_MIN_DISTANCE = 0;\nconst SWIPE_FACTOR = 0.22;\nconst FORWARD_SPEED = 6;\nconst CURRENT_SLIDE_REF = Symbol('current slide');\n\n// really hacky to disable wheel event during scrolling\nconst WHEELABLE_AFTER_SCROLL_MS = 100;\nconst SCROLL_THROTTLE_MS = 100;\n\nconst STATUS = {\n  NORMAL: 0,\n  SWIPE_STARTED:1,\n  SWIPING: 2,\n  FORWARDING: 4,\n  CANCELING: 8,\n  UP: 16,\n  DOWN: 32,\n  SWIPED: 64,\n  WHEELING: 128\n};\n\nclass Deck extends Component {\n  constructor(props, context) {\n    super(props, context);\n    const { current, easing, dura = SWIPE_DURA } = props;\n    this.state = { current, prev: this.normalizeIndex(current + 1), status: STATUS.NORMAL };\n\n    this.handleTouchStart = ::this.handleTouchStart;\n    this.handleTouchMove = ::this.handleTouchMove;\n    this.handleTouchEnd = ::this.handleTouchEnd;\n    this.handleWheel = ::this.handleWheel;\n    this.calcDimension = ::this.calcDimension;\n    //this.handleScroll = throttle(::this.handleScroll, SCROLL_THROTTLE_MS);\n    this.handleScroll = ::this.handleScroll;\n\n    this.tween = new Tween();\n    this.tween.ease(easing).duration(dura)\n      .on('started', ::this.onSwitchStarted)\n      .on('updating', ::this.onSwitching)\n      .on('stopped', ::this.onSwitchStopped)\n      .on('paused', ::this.onSwitchPaused)\n      .on('done', ::this.onSwitchDone);\n  }\n  componentDidMount() {\n    this.calcDimension();\n    window.addEventListener('resize', this.calcDimension);\n  }\n  componentWillUnmount() {\n    window.removeEventListener('resize', this.calcDimension)\n  }\n  shouldComponentUpdate(nextProps, nextState) {\n    if (nextState.status & STATUS.SWIPE_STARTED) return false;\n    return true;\n  }\n  componentWillReceiveProps(nextProps) {\n    const { current: prev, status: prevStatus } = this.state;\n    if (prevStatus & STATUS.SWIPED || prevStatus & STATUS.WHEELING) return;\n    const current = this.normalizeIndex(nextProps.current);\n    if (prev === current) return;\n    if (prevStatus === STATUS.NORMAL && nextProps.animate !== false) {\n      const status = STATUS.FORWARDING | (prev < current ? STATUS.DOWN : STATUS.UP);\n      this.setState({ prev, current, status });\n      this.startTran(0, (status & STATUS.DOWN ? -1 : 1) * (nextProps.horizontal ? this.state.width : this.state.height));\n    } else {\n      this.setState({ prev, current, status: STATUS.NORMAL });\n      this.onSwitchDone();\n    }\n  }\n  normalizeIndex(index) {\n    const slidesCount = Children.count(this.props.children);\n    return (index + slidesCount) % slidesCount;\n  }\n  calcDimension() {\n    const dom = ReactDOM.findDOMNode(this);\n    this.setState({\n      width: dom.offsetWidth,\n      height: dom.offsetHeight\n    });\n  }\n  onSwitchStarted() {\n    const { onSwitchStarted: callback } = this.props;\n    callback && raf(() => callback.call(this, this.state));\n  }\n  onSwitching({ distance, factor }) {\n    this.setState({ distance });\n    const { onSwitching: callback } = this.props;\n    callback && raf(() => {\n      const progress = factor || Math.abs(distance) / (this.props.horizontal ? this.state.width : this.state.height);\n      return callback.call(this, progress, this);\n    });\n  }\n  onSwitchDone(props) {\n    this.setState({ distance: 0, status: STATUS.NORMAL });\n    const { onSwitchDone: callback } = this.props;\n    callback && raf(() => callback.call(this, this.state));\n  }\n  onSwitchPaused(props) {\n    const { onSwitchPaused: callback } = this.props;\n    callback && callback.call(this, this.state);\n  }\n  onSwitchStopped(props) {\n    const { onSwitchStopped: callback } = this.props;\n    callback && callback.call(this, this.state);\n  }\n  startTran(from, to) {\n    this.tween.reset({ distance: from }).to({ distance: to }).start();\n  }\n  backTran() {\n    this.tween.back();\n  }\n  reverseTran() {\n    const { distance, width, height } = this.state;\n    const total = (distance > 0 ? 1 : -1) * (this.props.horizontal ? width : height);\n    this.tween.reset({ distance: this.state.distance - total }).to({ distance: -total }).start();\n  }\n  resumeTran() {\n    const status = this.state.status & (~STATUS.SWIPE_STARTED);\n    this.setState({ status });\n    this.tween.resume();\n  }\n  isCurrentSlideScrolling({ delta, horizontal = false }) {\n    const currentSlideDom = ReactDOM.findDOMNode(this.refs[CURRENT_SLIDE_REF]);\n    const { offsetWidth, scrollLeft, scrollWidth, offsetHeight, scrollTop, scrollHeight } = currentSlideDom;\n    const sizes = horizontal ? [offsetWidth, scrollLeft, scrollWidth] : [offsetHeight, scrollTop, scrollHeight];\n\n    if (delta > 0 && sizes[0] + sizes[1] < sizes[2]) return true;\n    if (delta < 0 && sizes[1] > 0) return true;\n\n    return false;\n  }\n  handleWheel(e) {\n    const { children: slides, loop, horizontal } = this.props;\n    const delta = horizontal ? e.deltaX : e.deltaY;\n    const { status: prevStatus, prevWheelDelta } = this.state;\n    const status = STATUS.WHEELING | STATUS.FORWARDING | (delta > 0 ? STATUS.DOWN : STATUS.UP);\n    (Math.abs(delta) > 0) && this.setState({ prevWheelDelta: delta });\n\n    if (Date.now() - this.latestScroll <= WHEELABLE_AFTER_SCROLL_MS) {\n      return;\n    }\n\n    if ((prevStatus & STATUS.WHEELING) && delta * prevWheelDelta < 0) {\n      this.setState({\n        prev: this.state.current,\n        current: this.state.prev,\n        status\n      });\n      this.reverseTran();\n      return;\n    }\n    if (prevWheelDelta !== undefined && Math.abs(delta) / Math.abs(prevWheelDelta) <= 2) return;\n\n    if (prevStatus !== STATUS.NORMAL || delta === 0 || this.isCurrentSlideScrolling({ delta, horizontal })) return;\n\n    const slidesCount = Children.count(slides);\n    const prev = this.state.current;\n    let current = prev + (delta > 0 ? 1 : -1);\n    current = loop ? (current + slidesCount) % slidesCount : current;\n\n    if (current >= 0 && current < slidesCount) {\n      this.setState({ prev, current, status });\n      this.startTran(0, (status & STATUS.DOWN ? -1 : 1) * (horizontal ? this.state.width : this.state.height));\n    }\n  }\n  handleSwipeStart({ x, y }) {\n    this.tween.stop();\n    this.setState({ oriX: x, oriY: y, status: this.state.status | STATUS.SWIPE_STARTED });\n  }\n  handleSwipeMove({ x, y }) {\n    let status = this.state.status;\n    if (!(status & STATUS.SWIPING || status & STATUS.SWIPE_STARTED)) return;\n\n    let { prev, current, oriX, oriY, width, height, distance = 0 } = this.state;\n    const { horizontal } = this.props;\n    const slidesCount = Children.count(this.props.children);\n    const distanceDimen = horizontal ? width : height;\n\n    // new swipe started during Canceling or Forwarding tweening\n    if (status & STATUS.SWIPE_STARTED && distance !== 0) {\n      horizontal ? (oriX = x - distance) : (oriY = y - distance);\n    }\n    distance = horizontal ? x - oriX : y - oriY;\n    const gear = distance - (this.state.distance || 0);\n\n    // swipe direction detection, if not corresponds with this.props;\n    // or if current slide can swipe;\n    // then return false to cancel this swipe\n    const xDiff = Math.abs(x - oriX);\n    const yDiff = Math.abs(y - oriY);\n    const swipeDirectionOk = (xDiff >= SWIPE_MIN_DISTANCE || yDiff >= SWIPE_MIN_DISTANCE) && (xDiff >= yDiff ? horizontal : !horizontal);\n    if (!swipeDirectionOk) return false;\n    if (this.isCurrentSlideScrolling({ delta: (gear > 0 ? -1 : 1) * (horizontal ? yDiff: xDiff), horizontal })) return false;\n\n    if (status === STATUS.SWIPE_STARTED || status & STATUS.CANCELING) {\n      prev = current;\n    }\n\n    if (Math.abs(distance) >= distanceDimen) {\n      distance %= distanceDimen;\n      horizontal ? (oriX = x - distance) : (oriY = y - distance);\n      prev = current;\n    }\n\n    current = prev + (distance > 0 ? -1 : 1);\n    current = this.props.loop ? (current + slidesCount) % slidesCount : current;\n\n    if (current < 0 || current >= slidesCount) {\n      return;\n    }\n\n    status = STATUS.SWIPING | (distance < 0 ? STATUS.DOWN : STATUS.UP);\n    this.setState({ prev, current, status, oriX, oriY, gear });\n    this.onSwitching({ distance, factor: Math.abs(distance) / (horizontal ? width : height) });\n  }\n  handleSwipeEnd({ x, y }) {\n    const { horizontal, factor = SWIPE_FACTOR, speed = FORWARD_SPEED } = this.props;\n    let { prev, current, width, height, status, distance = 0, gear = 0 } = this.state;\n    gear = Math.floor(gear);\n\n    if (distance == 0) return;\n    if (status & STATUS.SWIPE_STARTED) return this.resumeTran();\n\n    const shouldForward = distance * gear >= 0 && (Math.abs(distance) / (horizontal ? width : height) >= factor || Math.abs(gear) >= speed);\n\n    if (!shouldForward) [current, prev] = [prev, current];\n    status = STATUS.SWIPED | (shouldForward ? STATUS.FORWARDING : STATUS.CANCELING) | (distance > 0 ? STATUS.UP : STATUS.DOWN);\n\n    this.setState({ prev, current, status });\n    this.startTran(distance, shouldForward ? (distance > 0 ? 1 : -1)  * (horizontal ? width : height) : 0);\n  }\n  handleSwipeCancel() {\n    this.setState({ status: STATUS.NORMAL });\n  }\n\n  // For touch events\n  handleTouchStart(e) {\n    const touch = e.changedTouches[0];\n    this.handleSwipeStart({ x: touch.clientX, y: touch.clientY });\n  }\n  handleTouchMove(e) {\n    //e.preventDefault();\n    const touch = e.changedTouches[0];\n    this.handleSwipeMove({ x: touch.clientX, y: touch.clientY }) === undefined && e.preventDefault();\n  }\n  handleTouchEnd(e) {\n    const touch = e.changedTouches[0];\n    this.handleSwipeEnd({ x: touch.clientX, y: touch.clientY });\n  }\n  handleTouchCancel(e) {\n    this.handleSwipeCancel();\n  }\n\n  genSlideStyle(factor) {\n    const { horizontal, loop, swipe } = this.props;\n    const { prev, current, status, distance, width, height } = this.state;\n    const dx = horizontal ? distance + factor * width : 0;\n    const dy = !horizontal ? distance + factor * height : 0;\n    const transform = `translate3d(${dx}px, ${dy}px, 0)`;\n    return { transform, WebkitTransform: transform };\n  }\n\n  renderSlides() {\n    const { children, horizontal, loop, slideClasses } = this.props;\n    const { prev, current, status } = this.state;\n    // const slides = Children.toArray(children);\n    const slides = Array.isArray(children) ? children :  [children];\n    const slidesCount = Children.count(slides), lastIndex = slidesCount - 1;\n\n    const isSwiping = status & STATUS.SWIPING,\n      isForwarding = status & STATUS.FORWARDING,\n      isCanceling = status & STATUS.CANCELING,\n      isUping = status & STATUS.UP,\n      isDowning = status & STATUS.DOWN,\n      isNormal = status === STATUS.NORMAL;\n\n    const slidesProps = Children.map(slides, (slide, index) => ({\n      key: index, done: isNormal, classes: slideClasses,\n      [index === current ? 'current' : index < current ? 'before' : 'after']: true\n    }));\n    const prevSlideProps = slidesProps[prev];\n    const currentSlideProps = slidesProps[current];\n    prevSlideProps.prev = true;\n\n    // compute transform style for current and prev Slide\n    if (prev !== current && !isNormal) {\n      let prevFactor = 0;\n      let currentFactor = current > prev ? 1 : -1;\n      if (isCanceling && isDowning) {\n        currentFactor = 0;\n        prevFactor = 1;\n      } else if (isCanceling && isUping) {\n        currentFactor = 0;\n        prevFactor = -1;\n      }\n      if (loop) {\n        if (isSwiping && isDowning) {\n          currentFactor = 1;\n        } else if (isSwiping && isUping) {\n          currentFactor = -1;\n        } else if (isForwarding && isDowning) {\n          currentFactor = 1;\n        } else if (isForwarding && isUping) {\n          currentFactor = -1;\n        }\n      }\n      prevSlideProps.style = this.genSlideStyle(prevFactor);\n      currentSlideProps.style = this.genSlideStyle(currentFactor);\n    }\n\n    currentSlideProps.ref = CURRENT_SLIDE_REF;\n    return slidesProps.map((props, index) => React.cloneElement(slides[index], props));\n  }\n\n  handleScroll() {\n    this.latestScroll = Date.now();\n  }\n\n  render() {\n    const { children, current, horizontal, loop, swipe, wheel, slideClasses, ...props } = this.props;\n    if (wheel) {\n      props.onWheel = this.handleWheel;\n    }\n    if (swipe) {\n      props.onTouchStart = this.handleTouchStart;\n      props.onTouchMove = this.handleTouchMove;\n      props.onTouchEnd = this.handleTouchEnd;\n    }\n    props.onScroll = this.handleScroll;\n    props.className = cx({\n      [styles.horizontalDeck]: horizontal,\n      [styles.verticalDeck] : !horizontal,\n    }, styles.deck, props.className);\n    return (\n      <div {...props}>\n        {this.renderSlides()}\n      </div>\n    );\n  }\n}\n\nDeck.STATUS = STATUS;\nDeck.Slide = Slide;\n\nexport default Deck;\n\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/deck.js\n **/","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (obj, keys) {\n  var target = {};\n\n  for (var i in obj) {\n    if (keys.indexOf(i) >= 0) continue;\n    if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n    target[i] = obj[i];\n  }\n\n  return target;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/helpers/objectWithoutProperties.js\n ** module id = 1\n ** module chunks = 0\n **/","\"use strict\";\n\nexports.__esModule = true;\n\nvar _defineProperty = require(\"../core-js/object/define-property\");\n\nvar _defineProperty2 = _interopRequireDefault(_defineProperty);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (obj, key, value) {\n  if (key in obj) {\n    (0, _defineProperty2.default)(obj, key, {\n      value: value,\n      enumerable: true,\n      configurable: true,\n      writable: true\n    });\n  } else {\n    obj[key] = value;\n  }\n\n  return obj;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/helpers/defineProperty.js\n ** module id = 2\n ** module chunks = 0\n **/","module.exports = { \"default\": require(\"core-js/library/fn/object/define-property\"), __esModule: true };\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/core-js/object/define-property.js\n ** module id = 3\n ** module chunks = 0\n **/","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc){\n  return $Object.defineProperty(it, key, desc);\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/fn/object/define-property.js\n ** module id = 4\n ** module chunks = 0\n **/","var $export = require('./_export');\r\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\r\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', {defineProperty: require('./_object-dp').f});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/es6.object.define-property.js\n ** module id = 5\n ** module chunks = 0\n **/","var global    = require('./_global')\n  , core      = require('./_core')\n  , ctx       = require('./_ctx')\n  , hide      = require('./_hide')\n  , PROTOTYPE = 'prototype';\n\nvar $export = function(type, name, source){\n  var IS_FORCED = type & $export.F\n    , IS_GLOBAL = type & $export.G\n    , IS_STATIC = type & $export.S\n    , IS_PROTO  = type & $export.P\n    , IS_BIND   = type & $export.B\n    , IS_WRAP   = type & $export.W\n    , exports   = IS_GLOBAL ? core : core[name] || (core[name] = {})\n    , expProto  = exports[PROTOTYPE]\n    , target    = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]\n    , key, own, out;\n  if(IS_GLOBAL)source = name;\n  for(key in source){\n    // contains in native\n    own = !IS_FORCED && target && target[key] !== undefined;\n    if(own && key in exports)continue;\n    // export native or passed\n    out = own ? target[key] : source[key];\n    // prevent global pollution for namespaces\n    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]\n    // bind timers to global for call from export context\n    : IS_BIND && own ? ctx(out, global)\n    // wrap global constructors for prevent change them in library\n    : IS_WRAP && target[key] == out ? (function(C){\n      var F = function(a, b, c){\n        if(this instanceof C){\n          switch(arguments.length){\n            case 0: return new C;\n            case 1: return new C(a);\n            case 2: return new C(a, b);\n          } return new C(a, b, c);\n        } return C.apply(this, arguments);\n      };\n      F[PROTOTYPE] = C[PROTOTYPE];\n      return F;\n    // make static versions for prototype methods\n    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%\n    if(IS_PROTO){\n      (exports.virtual || (exports.virtual = {}))[key] = out;\n      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%\n      if(type & $export.R && expProto && !expProto[key])hide(expProto, key, out);\n    }\n  }\n};\n// type bitmap\n$export.F = 1;   // forced\n$export.G = 2;   // global\n$export.S = 4;   // static\n$export.P = 8;   // proto\n$export.B = 16;  // bind\n$export.W = 32;  // wrap\n$export.U = 64;  // safe\n$export.R = 128; // real proto method for `library` \nmodule.exports = $export;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_export.js\n ** module id = 6\n ** module chunks = 0\n **/","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n  ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();\nif(typeof __g == 'number')__g = global; // eslint-disable-line no-undef\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_global.js\n ** module id = 7\n ** module chunks = 0\n **/","var core = module.exports = {version: '2.4.0'};\nif(typeof __e == 'number')__e = core; // eslint-disable-line no-undef\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_core.js\n ** module id = 8\n ** module chunks = 0\n **/","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function(fn, that, length){\n  aFunction(fn);\n  if(that === undefined)return fn;\n  switch(length){\n    case 1: return function(a){\n      return fn.call(that, a);\n    };\n    case 2: return function(a, b){\n      return fn.call(that, a, b);\n    };\n    case 3: return function(a, b, c){\n      return fn.call(that, a, b, c);\n    };\n  }\n  return function(/* ...args */){\n    return fn.apply(that, arguments);\n  };\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_ctx.js\n ** module id = 9\n ** module chunks = 0\n **/","module.exports = function(it){\n  if(typeof it != 'function')throw TypeError(it + ' is not a function!');\n  return it;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_a-function.js\n ** module id = 10\n ** module chunks = 0\n **/","var dP         = require('./_object-dp')\n  , createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function(object, key, value){\n  return dP.f(object, key, createDesc(1, value));\n} : function(object, key, value){\n  object[key] = value;\n  return object;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_hide.js\n ** module id = 11\n ** module chunks = 0\n **/","var anObject       = require('./_an-object')\n  , IE8_DOM_DEFINE = require('./_ie8-dom-define')\n  , toPrimitive    = require('./_to-primitive')\n  , dP             = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes){\n  anObject(O);\n  P = toPrimitive(P, true);\n  anObject(Attributes);\n  if(IE8_DOM_DEFINE)try {\n    return dP(O, P, Attributes);\n  } catch(e){ /* empty */ }\n  if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');\n  if('value' in Attributes)O[P] = Attributes.value;\n  return O;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-dp.js\n ** module id = 12\n ** module chunks = 0\n **/","var isObject = require('./_is-object');\nmodule.exports = function(it){\n  if(!isObject(it))throw TypeError(it + ' is not an object!');\n  return it;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_an-object.js\n ** module id = 13\n ** module chunks = 0\n **/","module.exports = function(it){\n  return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_is-object.js\n ** module id = 14\n ** module chunks = 0\n **/","module.exports = !require('./_descriptors') && !require('./_fails')(function(){\r\n  return Object.defineProperty(require('./_dom-create')('div'), 'a', {get: function(){ return 7; }}).a != 7;\r\n});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_ie8-dom-define.js\n ** module id = 15\n ** module chunks = 0\n **/","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function(){\n  return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;\n});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_descriptors.js\n ** module id = 16\n ** module chunks = 0\n **/","module.exports = function(exec){\n  try {\n    return !!exec();\n  } catch(e){\n    return true;\n  }\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_fails.js\n ** module id = 17\n ** module chunks = 0\n **/","var isObject = require('./_is-object')\n  , document = require('./_global').document\n  // in old IE typeof document.createElement is 'object'\n  , is = isObject(document) && isObject(document.createElement);\nmodule.exports = function(it){\n  return is ? document.createElement(it) : {};\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_dom-create.js\n ** module id = 18\n ** module chunks = 0\n **/","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function(it, S){\n  if(!isObject(it))return it;\n  var fn, val;\n  if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;\n  if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;\n  if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;\n  throw TypeError(\"Can't convert object to primitive value\");\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_to-primitive.js\n ** module id = 19\n ** module chunks = 0\n **/","module.exports = function(bitmap, value){\n  return {\n    enumerable  : !(bitmap & 1),\n    configurable: !(bitmap & 2),\n    writable    : !(bitmap & 4),\n    value       : value\n  };\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_property-desc.js\n ** module id = 20\n ** module chunks = 0\n **/","module.exports = { \"default\": require(\"core-js/library/fn/object/get-prototype-of\"), __esModule: true };\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/core-js/object/get-prototype-of.js\n ** module id = 21\n ** module chunks = 0\n **/","require('../../modules/es6.object.get-prototype-of');\nmodule.exports = require('../../modules/_core').Object.getPrototypeOf;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/fn/object/get-prototype-of.js\n ** module id = 22\n ** module chunks = 0\n **/","// 19.1.2.9 Object.getPrototypeOf(O)\nvar toObject        = require('./_to-object')\n  , $getPrototypeOf = require('./_object-gpo');\n\nrequire('./_object-sap')('getPrototypeOf', function(){\n  return function getPrototypeOf(it){\n    return $getPrototypeOf(toObject(it));\n  };\n});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/es6.object.get-prototype-of.js\n ** module id = 23\n ** module chunks = 0\n **/","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function(it){\n  return Object(defined(it));\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_to-object.js\n ** module id = 24\n ** module chunks = 0\n **/","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function(it){\n  if(it == undefined)throw TypeError(\"Can't call method on  \" + it);\n  return it;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_defined.js\n ** module id = 25\n ** module chunks = 0\n **/","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\r\nvar has         = require('./_has')\r\n  , toObject    = require('./_to-object')\r\n  , IE_PROTO    = require('./_shared-key')('IE_PROTO')\r\n  , ObjectProto = Object.prototype;\r\n\r\nmodule.exports = Object.getPrototypeOf || function(O){\r\n  O = toObject(O);\r\n  if(has(O, IE_PROTO))return O[IE_PROTO];\r\n  if(typeof O.constructor == 'function' && O instanceof O.constructor){\r\n    return O.constructor.prototype;\r\n  } return O instanceof Object ? ObjectProto : null;\r\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-gpo.js\n ** module id = 26\n ** module chunks = 0\n **/","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function(it, key){\n  return hasOwnProperty.call(it, key);\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_has.js\n ** module id = 27\n ** module chunks = 0\n **/","var shared = require('./_shared')('keys')\r\n  , uid    = require('./_uid');\r\nmodule.exports = function(key){\r\n  return shared[key] || (shared[key] = uid(key));\r\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_shared-key.js\n ** module id = 28\n ** module chunks = 0\n **/","var global = require('./_global')\n  , SHARED = '__core-js_shared__'\n  , store  = global[SHARED] || (global[SHARED] = {});\nmodule.exports = function(key){\n  return store[key] || (store[key] = {});\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_shared.js\n ** module id = 29\n ** module chunks = 0\n **/","var id = 0\n  , px = Math.random();\nmodule.exports = function(key){\n  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_uid.js\n ** module id = 30\n ** module chunks = 0\n **/","// most Object methods by ES6 should accept primitives\nvar $export = require('./_export')\n  , core    = require('./_core')\n  , fails   = require('./_fails');\nmodule.exports = function(KEY, exec){\n  var fn  = (core.Object || {})[KEY] || Object[KEY]\n    , exp = {};\n  exp[KEY] = exec(fn);\n  $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-sap.js\n ** module id = 31\n ** module chunks = 0\n **/","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (instance, Constructor) {\n  if (!(instance instanceof Constructor)) {\n    throw new TypeError(\"Cannot call a class as a function\");\n  }\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/helpers/classCallCheck.js\n ** module id = 32\n ** module chunks = 0\n **/","\"use strict\";\n\nexports.__esModule = true;\n\nvar _defineProperty = require(\"../core-js/object/define-property\");\n\nvar _defineProperty2 = _interopRequireDefault(_defineProperty);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n  function defineProperties(target, props) {\n    for (var i = 0; i < props.length; i++) {\n      var descriptor = props[i];\n      descriptor.enumerable = descriptor.enumerable || false;\n      descriptor.configurable = true;\n      if (\"value\" in descriptor) descriptor.writable = true;\n      (0, _defineProperty2.default)(target, descriptor.key, descriptor);\n    }\n  }\n\n  return function (Constructor, protoProps, staticProps) {\n    if (protoProps) defineProperties(Constructor.prototype, protoProps);\n    if (staticProps) defineProperties(Constructor, staticProps);\n    return Constructor;\n  };\n}();\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/helpers/createClass.js\n ** module id = 33\n ** module chunks = 0\n **/","\"use strict\";\n\nexports.__esModule = true;\n\nvar _typeof2 = require(\"../helpers/typeof\");\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (self, call) {\n  if (!self) {\n    throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n  }\n\n  return call && ((typeof call === \"undefined\" ? \"undefined\" : (0, _typeof3.default)(call)) === \"object\" || typeof call === \"function\") ? call : self;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/helpers/possibleConstructorReturn.js\n ** module id = 34\n ** module chunks = 0\n **/","\"use strict\";\n\nexports.__esModule = true;\n\nvar _iterator = require(\"../core-js/symbol/iterator\");\n\nvar _iterator2 = _interopRequireDefault(_iterator);\n\nvar _symbol = require(\"../core-js/symbol\");\n\nvar _symbol2 = _interopRequireDefault(_symbol);\n\nvar _typeof = typeof _symbol2.default === \"function\" && typeof _iterator2.default === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default ? \"symbol\" : typeof obj; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = typeof _symbol2.default === \"function\" && _typeof(_iterator2.default) === \"symbol\" ? function (obj) {\n  return typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n} : function (obj) {\n  return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default ? \"symbol\" : typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/helpers/typeof.js\n ** module id = 35\n ** module chunks = 0\n **/","module.exports = { \"default\": require(\"core-js/library/fn/symbol/iterator\"), __esModule: true };\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/core-js/symbol/iterator.js\n ** module id = 36\n ** module chunks = 0\n **/","require('../../modules/es6.string.iterator');\nrequire('../../modules/web.dom.iterable');\nmodule.exports = require('../../modules/_wks-ext').f('iterator');\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/fn/symbol/iterator.js\n ** module id = 37\n ** module chunks = 0\n **/","'use strict';\nvar $at  = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(String, 'String', function(iterated){\n  this._t = String(iterated); // target\n  this._i = 0;                // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function(){\n  var O     = this._t\n    , index = this._i\n    , point;\n  if(index >= O.length)return {value: undefined, done: true};\n  point = $at(O, index);\n  this._i += point.length;\n  return {value: point, done: false};\n});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/es6.string.iterator.js\n ** module id = 38\n ** module chunks = 0\n **/","var toInteger = require('./_to-integer')\n  , defined   = require('./_defined');\n// true  -> String#at\n// false -> String#codePointAt\nmodule.exports = function(TO_STRING){\n  return function(that, pos){\n    var s = String(defined(that))\n      , i = toInteger(pos)\n      , l = s.length\n      , a, b;\n    if(i < 0 || i >= l)return TO_STRING ? '' : undefined;\n    a = s.charCodeAt(i);\n    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n      ? TO_STRING ? s.charAt(i) : a\n      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n  };\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_string-at.js\n ** module id = 39\n ** module chunks = 0\n **/","// 7.1.4 ToInteger\nvar ceil  = Math.ceil\n  , floor = Math.floor;\nmodule.exports = function(it){\n  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_to-integer.js\n ** module id = 40\n ** module chunks = 0\n **/","'use strict';\nvar LIBRARY        = require('./_library')\n  , $export        = require('./_export')\n  , redefine       = require('./_redefine')\n  , hide           = require('./_hide')\n  , has            = require('./_has')\n  , Iterators      = require('./_iterators')\n  , $iterCreate    = require('./_iter-create')\n  , setToStringTag = require('./_set-to-string-tag')\n  , getPrototypeOf = require('./_object-gpo')\n  , ITERATOR       = require('./_wks')('iterator')\n  , BUGGY          = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`\n  , FF_ITERATOR    = '@@iterator'\n  , KEYS           = 'keys'\n  , VALUES         = 'values';\n\nvar returnThis = function(){ return this; };\n\nmodule.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){\n  $iterCreate(Constructor, NAME, next);\n  var getMethod = function(kind){\n    if(!BUGGY && kind in proto)return proto[kind];\n    switch(kind){\n      case KEYS: return function keys(){ return new Constructor(this, kind); };\n      case VALUES: return function values(){ return new Constructor(this, kind); };\n    } return function entries(){ return new Constructor(this, kind); };\n  };\n  var TAG        = NAME + ' Iterator'\n    , DEF_VALUES = DEFAULT == VALUES\n    , VALUES_BUG = false\n    , proto      = Base.prototype\n    , $native    = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]\n    , $default   = $native || getMethod(DEFAULT)\n    , $entries   = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined\n    , $anyNative = NAME == 'Array' ? proto.entries || $native : $native\n    , methods, key, IteratorPrototype;\n  // Fix native\n  if($anyNative){\n    IteratorPrototype = getPrototypeOf($anyNative.call(new Base));\n    if(IteratorPrototype !== Object.prototype){\n      // Set @@toStringTag to native iterators\n      setToStringTag(IteratorPrototype, TAG, true);\n      // fix for some old engines\n      if(!LIBRARY && !has(IteratorPrototype, ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);\n    }\n  }\n  // fix Array#{values, @@iterator}.name in V8 / FF\n  if(DEF_VALUES && $native && $native.name !== VALUES){\n    VALUES_BUG = true;\n    $default = function values(){ return $native.call(this); };\n  }\n  // Define iterator\n  if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){\n    hide(proto, ITERATOR, $default);\n  }\n  // Plug for library\n  Iterators[NAME] = $default;\n  Iterators[TAG]  = returnThis;\n  if(DEFAULT){\n    methods = {\n      values:  DEF_VALUES ? $default : getMethod(VALUES),\n      keys:    IS_SET     ? $default : getMethod(KEYS),\n      entries: $entries\n    };\n    if(FORCED)for(key in methods){\n      if(!(key in proto))redefine(proto, key, methods[key]);\n    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n  }\n  return methods;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_iter-define.js\n ** module id = 41\n ** module chunks = 0\n **/","module.exports = true;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_library.js\n ** module id = 42\n ** module chunks = 0\n **/","module.exports = require('./_hide');\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_redefine.js\n ** module id = 43\n ** module chunks = 0\n **/","module.exports = {};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_iterators.js\n ** module id = 44\n ** module chunks = 0\n **/","'use strict';\nvar create         = require('./_object-create')\n  , descriptor     = require('./_property-desc')\n  , setToStringTag = require('./_set-to-string-tag')\n  , IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function(){ return this; });\n\nmodule.exports = function(Constructor, NAME, next){\n  Constructor.prototype = create(IteratorPrototype, {next: descriptor(1, next)});\n  setToStringTag(Constructor, NAME + ' Iterator');\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_iter-create.js\n ** module id = 45\n ** module chunks = 0\n **/","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\r\nvar anObject    = require('./_an-object')\r\n  , dPs         = require('./_object-dps')\r\n  , enumBugKeys = require('./_enum-bug-keys')\r\n  , IE_PROTO    = require('./_shared-key')('IE_PROTO')\r\n  , Empty       = function(){ /* empty */ }\r\n  , PROTOTYPE   = 'prototype';\r\n\r\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\r\nvar createDict = function(){\r\n  // Thrash, waste and sodomy: IE GC bug\r\n  var iframe = require('./_dom-create')('iframe')\r\n    , i      = enumBugKeys.length\r\n    , gt     = '>'\r\n    , iframeDocument;\r\n  iframe.style.display = 'none';\r\n  require('./_html').appendChild(iframe);\r\n  iframe.src = 'javascript:'; // eslint-disable-line no-script-url\r\n  // createDict = iframe.contentWindow.Object;\r\n  // html.removeChild(iframe);\r\n  iframeDocument = iframe.contentWindow.document;\r\n  iframeDocument.open();\r\n  iframeDocument.write('<script>document.F=Object</script' + gt);\r\n  iframeDocument.close();\r\n  createDict = iframeDocument.F;\r\n  while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];\r\n  return createDict();\r\n};\r\n\r\nmodule.exports = Object.create || function create(O, Properties){\r\n  var result;\r\n  if(O !== null){\r\n    Empty[PROTOTYPE] = anObject(O);\r\n    result = new Empty;\r\n    Empty[PROTOTYPE] = null;\r\n    // add \"__proto__\" for Object.getPrototypeOf polyfill\r\n    result[IE_PROTO] = O;\r\n  } else result = createDict();\r\n  return Properties === undefined ? result : dPs(result, Properties);\r\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-create.js\n ** module id = 46\n ** module chunks = 0\n **/","var dP       = require('./_object-dp')\r\n  , anObject = require('./_an-object')\r\n  , getKeys  = require('./_object-keys');\r\n\r\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties){\r\n  anObject(O);\r\n  var keys   = getKeys(Properties)\r\n    , length = keys.length\r\n    , i = 0\r\n    , P;\r\n  while(length > i)dP.f(O, P = keys[i++], Properties[P]);\r\n  return O;\r\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-dps.js\n ** module id = 47\n ** module chunks = 0\n **/","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\r\nvar $keys       = require('./_object-keys-internal')\r\n  , enumBugKeys = require('./_enum-bug-keys');\r\n\r\nmodule.exports = Object.keys || function keys(O){\r\n  return $keys(O, enumBugKeys);\r\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-keys.js\n ** module id = 48\n ** module chunks = 0\n **/","var has          = require('./_has')\r\n  , toIObject    = require('./_to-iobject')\r\n  , arrayIndexOf = require('./_array-includes')(false)\r\n  , IE_PROTO     = require('./_shared-key')('IE_PROTO');\r\n\r\nmodule.exports = function(object, names){\r\n  var O      = toIObject(object)\r\n    , i      = 0\r\n    , result = []\r\n    , key;\r\n  for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);\r\n  // Don't enum bug & hidden keys\r\n  while(names.length > i)if(has(O, key = names[i++])){\r\n    ~arrayIndexOf(result, key) || result.push(key);\r\n  }\r\n  return result;\r\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-keys-internal.js\n ** module id = 49\n ** module chunks = 0\n **/","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject')\n  , defined = require('./_defined');\nmodule.exports = function(it){\n  return IObject(defined(it));\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_to-iobject.js\n ** module id = 50\n ** module chunks = 0\n **/","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){\n  return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_iobject.js\n ** module id = 51\n ** module chunks = 0\n **/","var toString = {}.toString;\n\nmodule.exports = function(it){\n  return toString.call(it).slice(8, -1);\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_cof.js\n ** module id = 52\n ** module chunks = 0\n **/","// false -> Array#indexOf\n// true  -> Array#includes\nvar toIObject = require('./_to-iobject')\n  , toLength  = require('./_to-length')\n  , toIndex   = require('./_to-index');\nmodule.exports = function(IS_INCLUDES){\n  return function($this, el, fromIndex){\n    var O      = toIObject($this)\n      , length = toLength(O.length)\n      , index  = toIndex(fromIndex, length)\n      , value;\n    // Array#includes uses SameValueZero equality algorithm\n    if(IS_INCLUDES && el != el)while(length > index){\n      value = O[index++];\n      if(value != value)return true;\n    // Array#toIndex ignores holes, Array#includes - not\n    } else for(;length > index; index++)if(IS_INCLUDES || index in O){\n      if(O[index] === el)return IS_INCLUDES || index || 0;\n    } return !IS_INCLUDES && -1;\n  };\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_array-includes.js\n ** module id = 53\n ** module chunks = 0\n **/","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer')\n  , min       = Math.min;\nmodule.exports = function(it){\n  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_to-length.js\n ** module id = 54\n ** module chunks = 0\n **/","var toInteger = require('./_to-integer')\n  , max       = Math.max\n  , min       = Math.min;\nmodule.exports = function(index, length){\n  index = toInteger(index);\n  return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_to-index.js\n ** module id = 55\n ** module chunks = 0\n **/","// IE 8- don't enum bug keys\r\nmodule.exports = (\r\n  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\r\n).split(',');\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_enum-bug-keys.js\n ** module id = 56\n ** module chunks = 0\n **/","module.exports = require('./_global').document && document.documentElement;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_html.js\n ** module id = 57\n ** module chunks = 0\n **/","var def = require('./_object-dp').f\n  , has = require('./_has')\n  , TAG = require('./_wks')('toStringTag');\n\nmodule.exports = function(it, tag, stat){\n  if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_set-to-string-tag.js\n ** module id = 58\n ** module chunks = 0\n **/","var store      = require('./_shared')('wks')\n  , uid        = require('./_uid')\n  , Symbol     = require('./_global').Symbol\n  , USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function(name){\n  return store[name] || (store[name] =\n    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_wks.js\n ** module id = 59\n ** module chunks = 0\n **/","require('./es6.array.iterator');\nvar global        = require('./_global')\n  , hide          = require('./_hide')\n  , Iterators     = require('./_iterators')\n  , TO_STRING_TAG = require('./_wks')('toStringTag');\n\nfor(var collections = ['NodeList', 'DOMTokenList', 'MediaList', 'StyleSheetList', 'CSSRuleList'], i = 0; i < 5; i++){\n  var NAME       = collections[i]\n    , Collection = global[NAME]\n    , proto      = Collection && Collection.prototype;\n  if(proto && !proto[TO_STRING_TAG])hide(proto, TO_STRING_TAG, NAME);\n  Iterators[NAME] = Iterators.Array;\n}\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/web.dom.iterable.js\n ** module id = 60\n ** module chunks = 0\n **/","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables')\n  , step             = require('./_iter-step')\n  , Iterators        = require('./_iterators')\n  , toIObject        = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function(iterated, kind){\n  this._t = toIObject(iterated); // target\n  this._i = 0;                   // next index\n  this._k = kind;                // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function(){\n  var O     = this._t\n    , kind  = this._k\n    , index = this._i++;\n  if(!O || index >= O.length){\n    this._t = undefined;\n    return step(1);\n  }\n  if(kind == 'keys'  )return step(0, index);\n  if(kind == 'values')return step(0, O[index]);\n  return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/es6.array.iterator.js\n ** module id = 61\n ** module chunks = 0\n **/","module.exports = function(){ /* empty */ };\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_add-to-unscopables.js\n ** module id = 62\n ** module chunks = 0\n **/","module.exports = function(done, value){\n  return {value: value, done: !!done};\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_iter-step.js\n ** module id = 63\n ** module chunks = 0\n **/","exports.f = require('./_wks');\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_wks-ext.js\n ** module id = 64\n ** module chunks = 0\n **/","module.exports = { \"default\": require(\"core-js/library/fn/symbol\"), __esModule: true };\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/core-js/symbol.js\n ** module id = 65\n ** module chunks = 0\n **/","require('../../modules/es6.symbol');\nrequire('../../modules/es6.object.to-string');\nrequire('../../modules/es7.symbol.async-iterator');\nrequire('../../modules/es7.symbol.observable');\nmodule.exports = require('../../modules/_core').Symbol;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/fn/symbol/index.js\n ** module id = 66\n ** module chunks = 0\n **/","'use strict';\n// ECMAScript 6 symbols shim\nvar global         = require('./_global')\n  , has            = require('./_has')\n  , DESCRIPTORS    = require('./_descriptors')\n  , $export        = require('./_export')\n  , redefine       = require('./_redefine')\n  , META           = require('./_meta').KEY\n  , $fails         = require('./_fails')\n  , shared         = require('./_shared')\n  , setToStringTag = require('./_set-to-string-tag')\n  , uid            = require('./_uid')\n  , wks            = require('./_wks')\n  , wksExt         = require('./_wks-ext')\n  , wksDefine      = require('./_wks-define')\n  , keyOf          = require('./_keyof')\n  , enumKeys       = require('./_enum-keys')\n  , isArray        = require('./_is-array')\n  , anObject       = require('./_an-object')\n  , toIObject      = require('./_to-iobject')\n  , toPrimitive    = require('./_to-primitive')\n  , createDesc     = require('./_property-desc')\n  , _create        = require('./_object-create')\n  , gOPNExt        = require('./_object-gopn-ext')\n  , $GOPD          = require('./_object-gopd')\n  , $DP            = require('./_object-dp')\n  , $keys          = require('./_object-keys')\n  , gOPD           = $GOPD.f\n  , dP             = $DP.f\n  , gOPN           = gOPNExt.f\n  , $Symbol        = global.Symbol\n  , $JSON          = global.JSON\n  , _stringify     = $JSON && $JSON.stringify\n  , PROTOTYPE      = 'prototype'\n  , HIDDEN         = wks('_hidden')\n  , TO_PRIMITIVE   = wks('toPrimitive')\n  , isEnum         = {}.propertyIsEnumerable\n  , SymbolRegistry = shared('symbol-registry')\n  , AllSymbols     = shared('symbols')\n  , OPSymbols      = shared('op-symbols')\n  , ObjectProto    = Object[PROTOTYPE]\n  , USE_NATIVE     = typeof $Symbol == 'function'\n  , QObject        = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function(){\n  return _create(dP({}, 'a', {\n    get: function(){ return dP(this, 'a', {value: 7}).a; }\n  })).a != 7;\n}) ? function(it, key, D){\n  var protoDesc = gOPD(ObjectProto, key);\n  if(protoDesc)delete ObjectProto[key];\n  dP(it, key, D);\n  if(protoDesc && it !== ObjectProto)dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function(tag){\n  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n  sym._k = tag;\n  return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function(it){\n  return typeof it == 'symbol';\n} : function(it){\n  return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D){\n  if(it === ObjectProto)$defineProperty(OPSymbols, key, D);\n  anObject(it);\n  key = toPrimitive(key, true);\n  anObject(D);\n  if(has(AllSymbols, key)){\n    if(!D.enumerable){\n      if(!has(it, HIDDEN))dP(it, HIDDEN, createDesc(1, {}));\n      it[HIDDEN][key] = true;\n    } else {\n      if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;\n      D = _create(D, {enumerable: createDesc(0, false)});\n    } return setSymbolDesc(it, key, D);\n  } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P){\n  anObject(it);\n  var keys = enumKeys(P = toIObject(P))\n    , i    = 0\n    , l = keys.length\n    , key;\n  while(l > i)$defineProperty(it, key = keys[i++], P[key]);\n  return it;\n};\nvar $create = function create(it, P){\n  return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key){\n  var E = isEnum.call(this, key = toPrimitive(key, true));\n  if(this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return false;\n  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){\n  it  = toIObject(it);\n  key = toPrimitive(key, true);\n  if(it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return;\n  var D = gOPD(it, key);\n  if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;\n  return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it){\n  var names  = gOPN(toIObject(it))\n    , result = []\n    , i      = 0\n    , key;\n  while(names.length > i){\n    if(!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META)result.push(key);\n  } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it){\n  var IS_OP  = it === ObjectProto\n    , names  = gOPN(IS_OP ? OPSymbols : toIObject(it))\n    , result = []\n    , i      = 0\n    , key;\n  while(names.length > i){\n    if(has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true))result.push(AllSymbols[key]);\n  } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif(!USE_NATIVE){\n  $Symbol = function Symbol(){\n    if(this instanceof $Symbol)throw TypeError('Symbol is not a constructor!');\n    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n    var $set = function(value){\n      if(this === ObjectProto)$set.call(OPSymbols, value);\n      if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;\n      setSymbolDesc(this, tag, createDesc(1, value));\n    };\n    if(DESCRIPTORS && setter)setSymbolDesc(ObjectProto, tag, {configurable: true, set: $set});\n    return wrap(tag);\n  };\n  redefine($Symbol[PROTOTYPE], 'toString', function toString(){\n    return this._k;\n  });\n\n  $GOPD.f = $getOwnPropertyDescriptor;\n  $DP.f   = $defineProperty;\n  require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n  require('./_object-pie').f  = $propertyIsEnumerable;\n  require('./_object-gops').f = $getOwnPropertySymbols;\n\n  if(DESCRIPTORS && !require('./_library')){\n    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n  }\n\n  wksExt.f = function(name){\n    return wrap(wks(name));\n  }\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, {Symbol: $Symbol});\n\nfor(var symbols = (\n  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), i = 0; symbols.length > i; )wks(symbols[i++]);\n\nfor(var symbols = $keys(wks.store), i = 0; symbols.length > i; )wksDefine(symbols[i++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n  // 19.4.2.1 Symbol.for(key)\n  'for': function(key){\n    return has(SymbolRegistry, key += '')\n      ? SymbolRegistry[key]\n      : SymbolRegistry[key] = $Symbol(key);\n  },\n  // 19.4.2.5 Symbol.keyFor(sym)\n  keyFor: function keyFor(key){\n    if(isSymbol(key))return keyOf(SymbolRegistry, key);\n    throw TypeError(key + ' is not a symbol!');\n  },\n  useSetter: function(){ setter = true; },\n  useSimple: function(){ setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n  // 19.1.2.2 Object.create(O [, Properties])\n  create: $create,\n  // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n  defineProperty: $defineProperty,\n  // 19.1.2.3 Object.defineProperties(O, Properties)\n  defineProperties: $defineProperties,\n  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n  // 19.1.2.7 Object.getOwnPropertyNames(O)\n  getOwnPropertyNames: $getOwnPropertyNames,\n  // 19.1.2.8 Object.getOwnPropertySymbols(O)\n  getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function(){\n  var S = $Symbol();\n  // MS Edge converts symbol values to JSON as {}\n  // WebKit converts symbol values to JSON as null\n  // V8 throws on boxed symbols\n  return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n  stringify: function stringify(it){\n    if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined\n    var args = [it]\n      , i    = 1\n      , replacer, $replacer;\n    while(arguments.length > i)args.push(arguments[i++]);\n    replacer = args[1];\n    if(typeof replacer == 'function')$replacer = replacer;\n    if($replacer || !isArray(replacer))replacer = function(key, value){\n      if($replacer)value = $replacer.call(this, key, value);\n      if(!isSymbol(value))return value;\n    };\n    args[1] = replacer;\n    return _stringify.apply($JSON, args);\n  }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/es6.symbol.js\n ** module id = 67\n ** module chunks = 0\n **/","var META     = require('./_uid')('meta')\n  , isObject = require('./_is-object')\n  , has      = require('./_has')\n  , setDesc  = require('./_object-dp').f\n  , id       = 0;\nvar isExtensible = Object.isExtensible || function(){\n  return true;\n};\nvar FREEZE = !require('./_fails')(function(){\n  return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function(it){\n  setDesc(it, META, {value: {\n    i: 'O' + ++id, // object ID\n    w: {}          // weak collections IDs\n  }});\n};\nvar fastKey = function(it, create){\n  // return primitive with prefix\n  if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n  if(!has(it, META)){\n    // can't set metadata to uncaught frozen object\n    if(!isExtensible(it))return 'F';\n    // not necessary to add metadata\n    if(!create)return 'E';\n    // add missing metadata\n    setMeta(it);\n  // return object ID\n  } return it[META].i;\n};\nvar getWeak = function(it, create){\n  if(!has(it, META)){\n    // can't set metadata to uncaught frozen object\n    if(!isExtensible(it))return true;\n    // not necessary to add metadata\n    if(!create)return false;\n    // add missing metadata\n    setMeta(it);\n  // return hash weak collections IDs\n  } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function(it){\n  if(FREEZE && meta.NEED && isExtensible(it) && !has(it, META))setMeta(it);\n  return it;\n};\nvar meta = module.exports = {\n  KEY:      META,\n  NEED:     false,\n  fastKey:  fastKey,\n  getWeak:  getWeak,\n  onFreeze: onFreeze\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_meta.js\n ** module id = 68\n ** module chunks = 0\n **/","var global         = require('./_global')\r\n  , core           = require('./_core')\r\n  , LIBRARY        = require('./_library')\r\n  , wksExt         = require('./_wks-ext')\r\n  , defineProperty = require('./_object-dp').f;\r\nmodule.exports = function(name){\r\n  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\r\n  if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)});\r\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_wks-define.js\n ** module id = 69\n ** module chunks = 0\n **/","var getKeys   = require('./_object-keys')\n  , toIObject = require('./_to-iobject');\nmodule.exports = function(object, el){\n  var O      = toIObject(object)\n    , keys   = getKeys(O)\n    , length = keys.length\n    , index  = 0\n    , key;\n  while(length > index)if(O[key = keys[index++]] === el)return key;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_keyof.js\n ** module id = 70\n ** module chunks = 0\n **/","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys')\n  , gOPS    = require('./_object-gops')\n  , pIE     = require('./_object-pie');\nmodule.exports = function(it){\n  var result     = getKeys(it)\n    , getSymbols = gOPS.f;\n  if(getSymbols){\n    var symbols = getSymbols(it)\n      , isEnum  = pIE.f\n      , i       = 0\n      , key;\n    while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))result.push(key);\n  } return result;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_enum-keys.js\n ** module id = 71\n ** module chunks = 0\n **/","exports.f = Object.getOwnPropertySymbols;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-gops.js\n ** module id = 72\n ** module chunks = 0\n **/","exports.f = {}.propertyIsEnumerable;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-pie.js\n ** module id = 73\n ** module chunks = 0\n **/","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg){\n  return cof(arg) == 'Array';\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_is-array.js\n ** module id = 74\n ** module chunks = 0\n **/","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject')\n  , gOPN      = require('./_object-gopn').f\n  , toString  = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n  ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function(it){\n  try {\n    return gOPN(it);\n  } catch(e){\n    return windowNames.slice();\n  }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it){\n  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-gopn-ext.js\n ** module id = 75\n ** module chunks = 0\n **/","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\r\nvar $keys      = require('./_object-keys-internal')\r\n  , hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\r\n\r\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O){\r\n  return $keys(O, hiddenKeys);\r\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-gopn.js\n ** module id = 76\n ** module chunks = 0\n **/","var pIE            = require('./_object-pie')\r\n  , createDesc     = require('./_property-desc')\r\n  , toIObject      = require('./_to-iobject')\r\n  , toPrimitive    = require('./_to-primitive')\r\n  , has            = require('./_has')\r\n  , IE8_DOM_DEFINE = require('./_ie8-dom-define')\r\n  , gOPD           = Object.getOwnPropertyDescriptor;\r\n\r\nexports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P){\r\n  O = toIObject(O);\r\n  P = toPrimitive(P, true);\r\n  if(IE8_DOM_DEFINE)try {\r\n    return gOPD(O, P);\r\n  } catch(e){ /* empty */ }\r\n  if(has(O, P))return createDesc(!pIE.f.call(O, P), O[P]);\r\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_object-gopd.js\n ** module id = 77\n ** module chunks = 0\n **/","require('./_wks-define')('asyncIterator');\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/es7.symbol.async-iterator.js\n ** module id = 79\n ** module chunks = 0\n **/","require('./_wks-define')('observable');\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/es7.symbol.observable.js\n ** module id = 80\n ** module chunks = 0\n **/","\"use strict\";\n\nexports.__esModule = true;\n\nvar _setPrototypeOf = require(\"../core-js/object/set-prototype-of\");\n\nvar _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf);\n\nvar _create = require(\"../core-js/object/create\");\n\nvar _create2 = _interopRequireDefault(_create);\n\nvar _typeof2 = require(\"../helpers/typeof\");\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (subClass, superClass) {\n  if (typeof superClass !== \"function\" && superClass !== null) {\n    throw new TypeError(\"Super expression must either be null or a function, not \" + (typeof superClass === \"undefined\" ? \"undefined\" : (0, _typeof3.default)(superClass)));\n  }\n\n  subClass.prototype = (0, _create2.default)(superClass && superClass.prototype, {\n    constructor: {\n      value: subClass,\n      enumerable: false,\n      writable: true,\n      configurable: true\n    }\n  });\n  if (superClass) _setPrototypeOf2.default ? (0, _setPrototypeOf2.default)(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/helpers/inherits.js\n ** module id = 81\n ** module chunks = 0\n **/","module.exports = { \"default\": require(\"core-js/library/fn/object/set-prototype-of\"), __esModule: true };\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/core-js/object/set-prototype-of.js\n ** module id = 82\n ** module chunks = 0\n **/","require('../../modules/es6.object.set-prototype-of');\nmodule.exports = require('../../modules/_core').Object.setPrototypeOf;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/fn/object/set-prototype-of.js\n ** module id = 83\n ** module chunks = 0\n **/","// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = require('./_export');\n$export($export.S, 'Object', {setPrototypeOf: require('./_set-proto').set});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/es6.object.set-prototype-of.js\n ** module id = 84\n ** module chunks = 0\n **/","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object')\n  , anObject = require('./_an-object');\nvar check = function(O, proto){\n  anObject(O);\n  if(!isObject(proto) && proto !== null)throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n    function(test, buggy, set){\n      try {\n        set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);\n        set(test, []);\n        buggy = !(test instanceof Array);\n      } catch(e){ buggy = true; }\n      return function setPrototypeOf(O, proto){\n        check(O, proto);\n        if(buggy)O.__proto__ = proto;\n        else set(O, proto);\n        return O;\n      };\n    }({}, false) : undefined),\n  check: check\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/_set-proto.js\n ** module id = 85\n ** module chunks = 0\n **/","module.exports = { \"default\": require(\"core-js/library/fn/object/create\"), __esModule: true };\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/core-js/object/create.js\n ** module id = 86\n ** module chunks = 0\n **/","require('../../modules/es6.object.create');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function create(P, D){\n  return $Object.create(P, D);\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/fn/object/create.js\n ** module id = 87\n ** module chunks = 0\n **/","var $export = require('./_export')\r\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\r\n$export($export.S, 'Object', {create: require('./_object-create')});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/babel-runtime/~/core-js/library/modules/es6.object.create.js\n ** module id = 88\n ** module chunks = 0\n **/","module.exports = __WEBPACK_EXTERNAL_MODULE_89__;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\",\"umd\":\"react\"}\n ** module id = 89\n ** module chunks = 0\n **/","module.exports = __WEBPACK_EXTERNAL_MODULE_90__;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** external {\"root\":\"ReactDOM\",\"commonjs2\":\"react-dom\",\"commonjs\":\"react-dom\",\"amd\":\"react-dom\",\"umd\":\"react-dom\"}\n ** module id = 90\n ** module chunks = 0\n **/","/**\n * let tween = new Tween({});\n * tween.reset({})\n *      .to({})\n *      .on('update', function(){})\n *      .on('end', function(){});\n */\nimport FlatEvent from './flat-event';\nimport raf from 'raf';\nimport ease from './ease';\nconst STATUS = {\n  INIT: 0,\n  DONE: 1,\n  RUNNING: 2,\n  STOPPED: 3,\n  PAUSED: 4\n};\nclass Tween extends FlatEvent {\n  constructor(from, easing, duration) {\n    super();\n    this.reset(from).ease(easing).duration(duration);\n    this.iterate = ::this.iterate;\n  }\n  reset(from) {\n    this.stop();\n    this.from(from);\n    this._curr = this._from;\n    this._lasted = 0;\n    this._start = this._latest = 0;\n    this._status = STATUS.INIT;\n    return this;\n  }\n  from(_from) {\n    this._origin_from = this._from = _from;\n    return this;\n  }\n  to(_to) {\n    this._origin_to = this._to = _to;\n    return this;\n  }\n  duration(ms = 1600) {\n    this._duration = ms;\n    return this;\n  }\n  ease(fn = ease.outQuint) {\n    fn = typeof fn === 'function' ? fn : ease[fn];\n    if (!fn) throw new TypeError('invalid easing function');\n    this._ease = fn;\n    return this;\n  }\n  stop() {\n    if (this._status !== STATUS.RUNNING) return;\n    raf.cancel(this._raf);\n    this._status = STATUS.STOPPED;\n    this.emit('stopped', this._curr);\n    return this;\n  }\n  pause() {\n    if (this._status !== STATUS.RUNNING) return;\n    raf.cancel(this._raf);\n    this._status = STATUS.PAUSED;\n    this.emit('paused', this._curr);\n    return this;\n  }\n  iterate() {\n    const now = Date.now();\n    const lasted = now - this._latest + this._lasted;\n    const progress = lasted / this._duration;\n    this._latest = now;\n    this._lasted = lasted;\n    if (progress >= 1) {\n      this._status = STATUS.DONE;\n      this._curr = this._to;\n      this.emit('updating', this._curr);\n      this.emit('done', this._curr);\n    } else {\n      const from = this._from, to = this._to, curr = this._curr = {};\n      const factor = this._ease(progress);\n      for (let prop in from) {\n        curr[prop] = from[prop] + (to[prop] - from[prop]) * factor;\n      }\n      this.emit('updating', curr);\n      this._raf = raf(this.iterate);\n    }\n    return this;\n  }\n  resume(p) {\n    if (this._status === STATUS.RUNNING) return;\n    if (p >= 0) this._lasted = p * this._duration;\n\n    this._status = STATUS.RUNNING;\n    this._latest = Date.now();\n    this._raf = raf(this.iterate);\n    this.emit('resumed');\n    return this;\n  }\n  start() {\n    if (this._status === STATUS.RUNNING) return;\n\n    this._start = Date.now();\n    this._latest = this._start;\n\n    this._status = STATUS.RUNNING;\n    this._raf = raf(this.iterate);\n    this.emit('started');\n    return this;\n  }\n  back() {\n    this.stop();\n    const to = this._to === this._origin_to ? this._origin_from : this._origin_to;\n    this._from = this._curr;\n    this._to = to;\n    this._lasted = 0;\n    this._status = STATUS.INIT;\n    this.start();\n  }\n}\nTween.ease = ease;\n\nexport default Tween;\n\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/tween.js\n **/","class FlatEvent {\n  constructor() {\n    this.$events = {};\n  }\n  on(event, fn) {\n    const listeners = this.$events[event] || (this.$events[event] = []);\n    listeners.push(fn);\n    return this;\n  }\n  off (event, fn) {\n    if (event === undefined) {\n      this.$events = {};\n    } else if (fn === undefined) {\n      delete this.$events[event];\n    } else {\n      const listeners = this.$events[event];\n      if (Array.isArray(listeners)) {\n        const index = listeners.indexOf(fn);\n        (index !== -1) && listeners.splice(index, 1);\n      }\n    }\n    return this;\n  }\n  emit(event, ...params) {\n    const listeners = this.$events[event];\n    if (!Array.isArray(listeners)) return;\n    listeners.forEach(listener => listener.apply(this, params));\n    return this;\n  }\n}\n\nexport default FlatEvent;\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/flat-event.js\n **/","var now = require('performance-now')\n  , root = typeof window === 'undefined' ? global : window\n  , vendors = ['moz', 'webkit']\n  , suffix = 'AnimationFrame'\n  , raf = root['request' + suffix]\n  , caf = root['cancel' + suffix] || root['cancelRequest' + suffix]\n\nfor(var i = 0; !raf && i < vendors.length; i++) {\n  raf = root[vendors[i] + 'Request' + suffix]\n  caf = root[vendors[i] + 'Cancel' + suffix]\n      || root[vendors[i] + 'CancelRequest' + suffix]\n}\n\n// Some versions of FF have rAF but not cAF\nif(!raf || !caf) {\n  var last = 0\n    , id = 0\n    , queue = []\n    , frameDuration = 1000 / 60\n\n  raf = function(callback) {\n    if(queue.length === 0) {\n      var _now = now()\n        , next = Math.max(0, frameDuration - (_now - last))\n      last = next + _now\n      setTimeout(function() {\n        var cp = queue.slice(0)\n        // Clear queue here to prevent\n        // callbacks from appending listeners\n        // to the current frame's queue\n        queue.length = 0\n        for(var i = 0; i < cp.length; i++) {\n          if(!cp[i].cancelled) {\n            try{\n              cp[i].callback(last)\n            } catch(e) {\n              setTimeout(function() { throw e }, 0)\n            }\n          }\n        }\n      }, Math.round(next))\n    }\n    queue.push({\n      handle: ++id,\n      callback: callback,\n      cancelled: false\n    })\n    return id\n  }\n\n  caf = function(handle) {\n    for(var i = 0; i < queue.length; i++) {\n      if(queue[i].handle === handle) {\n        queue[i].cancelled = true\n      }\n    }\n  }\n}\n\nmodule.exports = function(fn) {\n  // Wrap in a new function to prevent\n  // `cancel` potentially being assigned\n  // to the native rAF function\n  return raf.call(root, fn)\n}\nmodule.exports.cancel = function() {\n  caf.apply(root, arguments)\n}\nmodule.exports.polyfill = function() {\n  root.requestAnimationFrame = raf\n  root.cancelAnimationFrame = caf\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/raf/index.js\n ** module id = 93\n ** module chunks = 0\n **/","// Generated by CoffeeScript 1.7.1\n(function() {\n  var getNanoSeconds, hrtime, loadTime;\n\n  if ((typeof performance !== \"undefined\" && performance !== null) && performance.now) {\n    module.exports = function() {\n      return performance.now();\n    };\n  } else if ((typeof process !== \"undefined\" && process !== null) && process.hrtime) {\n    module.exports = function() {\n      return (getNanoSeconds() - loadTime) / 1e6;\n    };\n    hrtime = process.hrtime;\n    getNanoSeconds = function() {\n      var hr;\n      hr = hrtime();\n      return hr[0] * 1e9 + hr[1];\n    };\n    loadTime = getNanoSeconds();\n  } else if (Date.now) {\n    module.exports = function() {\n      return Date.now() - loadTime;\n    };\n    loadTime = Date.now();\n  } else {\n    module.exports = function() {\n      return new Date().getTime() - loadTime;\n    };\n    loadTime = new Date().getTime();\n  }\n\n}).call(this);\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/raf/~/performance-now/lib/performance-now.js\n ** module id = 94\n ** module chunks = 0\n **/","// shim for using process in browser\n\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things.  But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals.  It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\n(function () {\n  try {\n    cachedSetTimeout = setTimeout;\n  } catch (e) {\n    cachedSetTimeout = function () {\n      throw new Error('setTimeout is not defined');\n    }\n  }\n  try {\n    cachedClearTimeout = clearTimeout;\n  } catch (e) {\n    cachedClearTimeout = function () {\n      throw new Error('clearTimeout is not defined');\n    }\n  }\n} ())\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n    if (!draining || !currentQueue) {\n        return;\n    }\n    draining = false;\n    if (currentQueue.length) {\n        queue = currentQueue.concat(queue);\n    } else {\n        queueIndex = -1;\n    }\n    if (queue.length) {\n        drainQueue();\n    }\n}\n\nfunction drainQueue() {\n    if (draining) {\n        return;\n    }\n    var timeout = cachedSetTimeout(cleanUpNextTick);\n    draining = true;\n\n    var len = queue.length;\n    while(len) {\n        currentQueue = queue;\n        queue = [];\n        while (++queueIndex < len) {\n            if (currentQueue) {\n                currentQueue[queueIndex].run();\n            }\n        }\n        queueIndex = -1;\n        len = queue.length;\n    }\n    currentQueue = null;\n    draining = false;\n    cachedClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n    var args = new Array(arguments.length - 1);\n    if (arguments.length > 1) {\n        for (var i = 1; i < arguments.length; i++) {\n            args[i - 1] = arguments[i];\n        }\n    }\n    queue.push(new Item(fun, args));\n    if (queue.length === 1 && !draining) {\n        cachedSetTimeout(drainQueue, 0);\n    }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n    this.fun = fun;\n    this.array = array;\n}\nItem.prototype.run = function () {\n    this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\n\nprocess.binding = function (name) {\n    throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n    throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** (webpack)/~/node-libs-browser/~/process/browser.js\n ** module id = 95\n ** module chunks = 0\n **/","let ease = {};\nease.linear = function(n){\n  return n;\n};\n\nease.inQuad = function(n){\n  return n * n;\n};\n\nease.outQuad = function(n){\n  return n * (2 - n);\n};\n\nease.inOutQuad = function(n){\n  n *= 2;\n  if (n < 1) return 0.5 * n * n;\n  return - 0.5 * (--n * (n - 2) - 1);\n};\n\nease.inCube = function(n){\n  return n * n * n;\n};\n\nease.outCube = function(n){\n  return --n * n * n + 1;\n};\n\nease.inOutCube = function(n){\n  n *= 2;\n  if (n < 1) return 0.5 * n * n * n;\n  return 0.5 * ((n -= 2 ) * n * n + 2);\n};\n\nease.inQuart = function(n){\n  return n * n * n * n;\n};\n\nease.outQuart = function(n){\n  return 1 - (--n * n * n * n);\n};\n\nease.inOutQuart = function(n){\n  n *= 2;\n  if (n < 1) return 0.5 * n * n * n * n;\n  return -0.5 * ((n -= 2) * n * n * n - 2);\n};\n\nease.inQuint = function(n){\n  return n * n * n * n * n;\n}\n\nease.outQuint = function(n){\n  return --n * n * n * n * n + 1;\n}\n\nease.inOutQuint = function(n){\n  n *= 2;\n  if (n < 1) return 0.5 * n * n * n * n * n;\n  return 0.5 * ((n -= 2) * n * n * n * n + 2);\n};\n\nease.inSine = function(n){\n  return 1 - Math.cos(n * Math.PI / 2 );\n};\n\nease.outSine = function(n){\n  return Math.sin(n * Math.PI / 2);\n};\n\nease.inOutSine = function(n){\n  return .5 * (1 - Math.cos(Math.PI * n));\n};\n\nease.inExpo = function(n){\n  return 0 == n ? 0 : Math.pow(1024, n - 1);\n};\n\nease.outExpo = function(n){\n  return 1 == n ? n : 1 - Math.pow(2, -10 * n);\n};\n\nease.inOutExpo = function(n){\n  if (0 == n) return 0;\n  if (1 == n) return 1;\n  if ((n *= 2) < 1) return .5 * Math.pow(1024, n - 1);\n  return .5 * (-Math.pow(2, -10 * (n - 1)) + 2);\n};\n\nease.inCirc = function(n){\n  return 1 - Math.sqrt(1 - n * n);\n};\n\nease.outCirc = function(n){\n  return Math.sqrt(1 - (--n * n));\n};\n\nease.inOutCirc = function(n){\n  n *= 2\n  if (n < 1) return -0.5 * (Math.sqrt(1 - n * n) - 1);\n  return 0.5 * (Math.sqrt(1 - (n -= 2) * n) + 1);\n};\n\nease.inBack = function(n){\n  var s = 1.70158;\n  return n * n * (( s + 1 ) * n - s);\n};\n\nease.outBack = function(n){\n  var s = 1.70158;\n  return --n * n * ((s + 1) * n + s) + 1;\n};\n\nease.inOutBack = function(n){\n  var s = 1.70158 * 1.525;\n  if ( ( n *= 2 ) < 1 ) return 0.5 * ( n * n * ( ( s + 1 ) * n - s ) );\n  return 0.5 * ( ( n -= 2 ) * n * ( ( s + 1 ) * n + s ) + 2 );\n};\n\nease.inBounce = function(n){\n  return 1 - ease.outBounce(1 - n);\n};\n\nease.outBounce = function(n){\n  if ( n < ( 1 / 2.75 ) ) {\n    return 7.5625 * n * n;\n  } else if ( n < ( 2 / 2.75 ) ) {\n    return 7.5625 * ( n -= ( 1.5 / 2.75 ) ) * n + 0.75;\n  } else if ( n < ( 2.5 / 2.75 ) ) {\n    return 7.5625 * ( n -= ( 2.25 / 2.75 ) ) * n + 0.9375;\n  } else {\n    return 7.5625 * ( n -= ( 2.625 / 2.75 ) ) * n + 0.984375;\n  }\n};\n\nease.inOutBounce = function(n){\n  if (n < .5) return ease.inBounce(n * 2) * .5;\n  return ease.outBounce(n * 2 - 1) * .5 + .5;\n};\n\nease.inElastic = function(n){\n  var s, a = 0.1, p = 0.4;\n  if ( n === 0 ) return 0;\n  if ( n === 1 ) return 1;\n  if ( !a || a < 1 ) { a = 1; s = p / 4; }\n  else s = p * Math.asin( 1 / a ) / ( 2 * Math.PI );\n  return - ( a * Math.pow( 2, 10 * ( n -= 1 ) ) * Math.sin( ( n - s ) * ( 2 * Math.PI ) / p ) );\n};\n\nease.outElastic = function(n){\n  var s, a = 0.1, p = 0.4;\n  if ( n === 0 ) return 0;\n  if ( n === 1 ) return 1;\n  if ( !a || a < 1 ) { a = 1; s = p / 4; }\n  else s = p * Math.asin( 1 / a ) / ( 2 * Math.PI );\n  return ( a * Math.pow( 2, - 10 * n) * Math.sin( ( n - s ) * ( 2 * Math.PI ) / p ) + 1 );\n};\n\nease.inOutElastic = function(n){\n  var s, a = 0.1, p = 0.4;\n  if ( n === 0 ) return 0;\n  if ( n === 1 ) return 1;\n  if ( !a || a < 1 ) { a = 1; s = p / 4; }\n  else s = p * Math.asin( 1 / a ) / ( 2 * Math.PI );\n  if ( ( n *= 2 ) < 1 ) return - 0.5 * ( a * Math.pow( 2, 10 * ( n -= 1 ) ) * Math.sin( ( n - s ) * ( 2 * Math.PI ) / p ) );\n  return a * Math.pow( 2, -10 * ( n -= 1 ) ) * Math.sin( ( n - s ) * ( 2 * Math.PI ) / p ) * 0.5 + 1;\n};\n\nease.outCirc = function (n) {\n  return Math.sqrt(1 - --n * n);\n};\nease.outExpo = function (n) {\n  return n === 1 ? n : -Math.pow(2, -10 * n) + 1\n};\n\nexport default ease;\n\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/ease.js\n **/","/*!\n  Copyright (c) 2016 Jed Watson.\n  Licensed under the MIT License (MIT), see\n  http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tclasses.push(classNames.apply(null, arg));\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/classnames/index.js\n ** module id = 97\n ** module chunks = 0\n **/","import React, { Component } from 'react';\nimport cx from 'classnames';\nimport styles from './style.scss';\n\nclass Slide extends Component {\n  render() {\n    const {\n      component = 'div', current, before, prev, after, done,\n      classes = {},\n      ...props\n    } = this.props;\n    props.className = cx({\n      [styles.currentSlide]: current && done,\n      [styles.slideBefore]: before,\n      [styles.slideAfter]: after,\n\n      // custom classes\n      [classes.current]: classes.current && current && done,\n      [classes.entering]: classes.entering && current && !done,\n      [classes.prev]: classes.prev && prev && done,\n      [classes.leaving]: classes.leaving && prev && !done,\n      [classes.before]: classes.before && before,\n      [classes.after]: classes.after && after,\n    }, styles.slide, props.className);\n    return React.createElement(component, props);\n  }\n}\n\nexport default Slide;\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/slide.js\n **/","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!./../node_modules/css-loader/index.js?importLoaders=2&modules&localIdentName=[name]__[local]___[hash:base64:5]!./../node_modules/autoprefixer-loader/index.js?{browsers:[\\\"last 5 version\\\"]}!./../node_modules/sass-loader/index.js!./style.scss\");\nif(typeof content === 'string') content = [[module.id, content, '']];\n// add the styles to the DOM\nvar update = require(\"!./../node_modules/style-loader/addStyles.js\")(content, {});\nif(content.locals) module.exports = content.locals;\n// Hot Module Replacement\nif(module.hot) {\n\t// When the styles change, update the <style> tags\n\tif(!content.locals) {\n\t\tmodule.hot.accept(\"!!./../node_modules/css-loader/index.js?importLoaders=2&modules&localIdentName=[name]__[local]___[hash:base64:5]!./../node_modules/autoprefixer-loader/index.js?{browsers:[\\\"last 5 version\\\"]}!./../node_modules/sass-loader/index.js!./style.scss\", function() {\n\t\t\tvar newContent = require(\"!!./../node_modules/css-loader/index.js?importLoaders=2&modules&localIdentName=[name]__[local]___[hash:base64:5]!./../node_modules/autoprefixer-loader/index.js?{browsers:[\\\"last 5 version\\\"]}!./../node_modules/sass-loader/index.js!./style.scss\");\n\t\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\t\t\tupdate(newContent);\n\t\t});\n\t}\n\t// When the module is disposed, remove the <style> tags\n\tmodule.hot.dispose(function() { update(); });\n}\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./src/style.scss\n ** module id = 99\n ** module chunks = 0\n **/","exports = module.exports = require(\"./../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".style__deck___3GxuK {\\n  position: relative;\\n  overflow: hidden; }\\n\\n.style__slide___jy-my {\\n  position: absolute;\\n  left: 0;\\n  top: 0;\\n  width: 100%;\\n  height: 100%;\\n  -webkit-backface-visibility: hidden;\\n          backface-visibility: hidden;\\n  overflow: hidden; }\\n\\n.style__currentSlide___1yXCC {\\n  -webkit-transform: translate3d(0, 0, 0);\\n          transform: translate3d(0, 0, 0);\\n  overflow: auto; }\\n\\n.style__horizontalDeck___2PWmZ > .style__slideBefore___6l7TA {\\n  -webkit-transform: translate3d(-100%, 0, 0);\\n          transform: translate3d(-100%, 0, 0); }\\n\\n.style__horizontalDeck___2PWmZ > .style__slideAfter___1dREn {\\n  -webkit-transform: translate3d(100%, 0, 0);\\n          transform: translate3d(100%, 0, 0); }\\n\\n.style__verticalDeck___1PjcF > .style__slideBefore___6l7TA {\\n  -webkit-transform: translate3d(0, -100%, 0);\\n          transform: translate3d(0, -100%, 0); }\\n\\n.style__verticalDeck___1PjcF > .style__slideAfter___1dREn {\\n  -webkit-transform: translate3d(0, 100%, 0);\\n          transform: translate3d(0, 100%, 0); }\\n\", \"\"]);\n\n// exports\nexports.locals = {\n\t\"deck\": \"style__deck___3GxuK\",\n\t\"slide\": \"style__slide___jy-my\",\n\t\"currentSlide\": \"style__currentSlide___1yXCC\",\n\t\"horizontalDeck\": \"style__horizontalDeck___2PWmZ\",\n\t\"slideBefore\": \"style__slideBefore___6l7TA\",\n\t\"slideAfter\": \"style__slideAfter___1dREn\",\n\t\"verticalDeck\": \"style__verticalDeck___1PjcF\"\n};\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/css-loader?importLoaders=2&modules&localIdentName=[name]__[local]___[hash:base64:5]!./~/autoprefixer-loader?{browsers:[\"last 5 version\"]}!./~/sass-loader!./src/style.scss\n ** module id = 100\n ** module chunks = 0\n **/","/*\r\n\tMIT License http://www.opensource.org/licenses/mit-license.php\r\n\tAuthor Tobias Koppers @sokra\r\n*/\r\n// css base code, injected by the css-loader\r\nmodule.exports = function() {\r\n\tvar list = [];\r\n\r\n\t// return the list of modules as css string\r\n\tlist.toString = function toString() {\r\n\t\tvar result = [];\r\n\t\tfor(var i = 0; i < this.length; i++) {\r\n\t\t\tvar item = this[i];\r\n\t\t\tif(item[2]) {\r\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\r\n\t\t\t} else {\r\n\t\t\t\tresult.push(item[1]);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn result.join(\"\");\r\n\t};\r\n\r\n\t// import a list of modules into the list\r\n\tlist.i = function(modules, mediaQuery) {\r\n\t\tif(typeof modules === \"string\")\r\n\t\t\tmodules = [[null, modules, \"\"]];\r\n\t\tvar alreadyImportedModules = {};\r\n\t\tfor(var i = 0; i < this.length; i++) {\r\n\t\t\tvar id = this[i][0];\r\n\t\t\tif(typeof id === \"number\")\r\n\t\t\t\talreadyImportedModules[id] = true;\r\n\t\t}\r\n\t\tfor(i = 0; i < modules.length; i++) {\r\n\t\t\tvar item = modules[i];\r\n\t\t\t// skip already imported module\r\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\r\n\t\t\t//  when a module is imported multiple times with different media queries.\r\n\t\t\t//  I hope this will never occur (Hey this way we have smaller bundles)\r\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\r\n\t\t\t\tif(mediaQuery && !item[2]) {\r\n\t\t\t\t\titem[2] = mediaQuery;\r\n\t\t\t\t} else if(mediaQuery) {\r\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\r\n\t\t\t\t}\r\n\t\t\t\tlist.push(item);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\treturn list;\r\n};\r\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/css-loader/lib/css-base.js\n ** module id = 101\n ** module chunks = 0\n **/","/*\r\n\tMIT License http://www.opensource.org/licenses/mit-license.php\r\n\tAuthor Tobias Koppers @sokra\r\n*/\r\nvar stylesInDom = {},\r\n\tmemoize = function(fn) {\r\n\t\tvar memo;\r\n\t\treturn function () {\r\n\t\t\tif (typeof memo === \"undefined\") memo = fn.apply(this, arguments);\r\n\t\t\treturn memo;\r\n\t\t};\r\n\t},\r\n\tisOldIE = memoize(function() {\r\n\t\treturn /msie [6-9]\\b/.test(window.navigator.userAgent.toLowerCase());\r\n\t}),\r\n\tgetHeadElement = memoize(function () {\r\n\t\treturn document.head || document.getElementsByTagName(\"head\")[0];\r\n\t}),\r\n\tsingletonElement = null,\r\n\tsingletonCounter = 0,\r\n\tstyleElementsInsertedAtTop = [];\r\n\r\nmodule.exports = function(list, options) {\r\n\tif(typeof DEBUG !== \"undefined\" && DEBUG) {\r\n\t\tif(typeof document !== \"object\") throw new Error(\"The style-loader cannot be used in a non-browser environment\");\r\n\t}\r\n\r\n\toptions = options || {};\r\n\t// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\r\n\t// tags it will allow on a page\r\n\tif (typeof options.singleton === \"undefined\") options.singleton = isOldIE();\r\n\r\n\t// By default, add <style> tags to the bottom of <head>.\r\n\tif (typeof options.insertAt === \"undefined\") options.insertAt = \"bottom\";\r\n\r\n\tvar styles = listToStyles(list);\r\n\taddStylesToDom(styles, options);\r\n\r\n\treturn function update(newList) {\r\n\t\tvar mayRemove = [];\r\n\t\tfor(var i = 0; i < styles.length; i++) {\r\n\t\t\tvar item = styles[i];\r\n\t\t\tvar domStyle = stylesInDom[item.id];\r\n\t\t\tdomStyle.refs--;\r\n\t\t\tmayRemove.push(domStyle);\r\n\t\t}\r\n\t\tif(newList) {\r\n\t\t\tvar newStyles = listToStyles(newList);\r\n\t\t\taddStylesToDom(newStyles, options);\r\n\t\t}\r\n\t\tfor(var i = 0; i < mayRemove.length; i++) {\r\n\t\t\tvar domStyle = mayRemove[i];\r\n\t\t\tif(domStyle.refs === 0) {\r\n\t\t\t\tfor(var j = 0; j < domStyle.parts.length; j++)\r\n\t\t\t\t\tdomStyle.parts[j]();\r\n\t\t\t\tdelete stylesInDom[domStyle.id];\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n}\r\n\r\nfunction addStylesToDom(styles, options) {\r\n\tfor(var i = 0; i < styles.length; i++) {\r\n\t\tvar item = styles[i];\r\n\t\tvar domStyle = stylesInDom[item.id];\r\n\t\tif(domStyle) {\r\n\t\t\tdomStyle.refs++;\r\n\t\t\tfor(var j = 0; j < domStyle.parts.length; j++) {\r\n\t\t\t\tdomStyle.parts[j](item.parts[j]);\r\n\t\t\t}\r\n\t\t\tfor(; j < item.parts.length; j++) {\r\n\t\t\t\tdomStyle.parts.push(addStyle(item.parts[j], options));\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tvar parts = [];\r\n\t\t\tfor(var j = 0; j < item.parts.length; j++) {\r\n\t\t\t\tparts.push(addStyle(item.parts[j], options));\r\n\t\t\t}\r\n\t\t\tstylesInDom[item.id] = {id: item.id, refs: 1, parts: parts};\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction listToStyles(list) {\r\n\tvar styles = [];\r\n\tvar newStyles = {};\r\n\tfor(var i = 0; i < list.length; i++) {\r\n\t\tvar item = list[i];\r\n\t\tvar id = item[0];\r\n\t\tvar css = item[1];\r\n\t\tvar media = item[2];\r\n\t\tvar sourceMap = item[3];\r\n\t\tvar part = {css: css, media: media, sourceMap: sourceMap};\r\n\t\tif(!newStyles[id])\r\n\t\t\tstyles.push(newStyles[id] = {id: id, parts: [part]});\r\n\t\telse\r\n\t\t\tnewStyles[id].parts.push(part);\r\n\t}\r\n\treturn styles;\r\n}\r\n\r\nfunction insertStyleElement(options, styleElement) {\r\n\tvar head = getHeadElement();\r\n\tvar lastStyleElementInsertedAtTop = styleElementsInsertedAtTop[styleElementsInsertedAtTop.length - 1];\r\n\tif (options.insertAt === \"top\") {\r\n\t\tif(!lastStyleElementInsertedAtTop) {\r\n\t\t\thead.insertBefore(styleElement, head.firstChild);\r\n\t\t} else if(lastStyleElementInsertedAtTop.nextSibling) {\r\n\t\t\thead.insertBefore(styleElement, lastStyleElementInsertedAtTop.nextSibling);\r\n\t\t} else {\r\n\t\t\thead.appendChild(styleElement);\r\n\t\t}\r\n\t\tstyleElementsInsertedAtTop.push(styleElement);\r\n\t} else if (options.insertAt === \"bottom\") {\r\n\t\thead.appendChild(styleElement);\r\n\t} else {\r\n\t\tthrow new Error(\"Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.\");\r\n\t}\r\n}\r\n\r\nfunction removeStyleElement(styleElement) {\r\n\tstyleElement.parentNode.removeChild(styleElement);\r\n\tvar idx = styleElementsInsertedAtTop.indexOf(styleElement);\r\n\tif(idx >= 0) {\r\n\t\tstyleElementsInsertedAtTop.splice(idx, 1);\r\n\t}\r\n}\r\n\r\nfunction createStyleElement(options) {\r\n\tvar styleElement = document.createElement(\"style\");\r\n\tstyleElement.type = \"text/css\";\r\n\tinsertStyleElement(options, styleElement);\r\n\treturn styleElement;\r\n}\r\n\r\nfunction createLinkElement(options) {\r\n\tvar linkElement = document.createElement(\"link\");\r\n\tlinkElement.rel = \"stylesheet\";\r\n\tinsertStyleElement(options, linkElement);\r\n\treturn linkElement;\r\n}\r\n\r\nfunction addStyle(obj, options) {\r\n\tvar styleElement, update, remove;\r\n\r\n\tif (options.singleton) {\r\n\t\tvar styleIndex = singletonCounter++;\r\n\t\tstyleElement = singletonElement || (singletonElement = createStyleElement(options));\r\n\t\tupdate = applyToSingletonTag.bind(null, styleElement, styleIndex, false);\r\n\t\tremove = applyToSingletonTag.bind(null, styleElement, styleIndex, true);\r\n\t} else if(obj.sourceMap &&\r\n\t\ttypeof URL === \"function\" &&\r\n\t\ttypeof URL.createObjectURL === \"function\" &&\r\n\t\ttypeof URL.revokeObjectURL === \"function\" &&\r\n\t\ttypeof Blob === \"function\" &&\r\n\t\ttypeof btoa === \"function\") {\r\n\t\tstyleElement = createLinkElement(options);\r\n\t\tupdate = updateLink.bind(null, styleElement);\r\n\t\tremove = function() {\r\n\t\t\tremoveStyleElement(styleElement);\r\n\t\t\tif(styleElement.href)\r\n\t\t\t\tURL.revokeObjectURL(styleElement.href);\r\n\t\t};\r\n\t} else {\r\n\t\tstyleElement = createStyleElement(options);\r\n\t\tupdate = applyToTag.bind(null, styleElement);\r\n\t\tremove = function() {\r\n\t\t\tremoveStyleElement(styleElement);\r\n\t\t};\r\n\t}\r\n\r\n\tupdate(obj);\r\n\r\n\treturn function updateStyle(newObj) {\r\n\t\tif(newObj) {\r\n\t\t\tif(newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap)\r\n\t\t\t\treturn;\r\n\t\t\tupdate(obj = newObj);\r\n\t\t} else {\r\n\t\t\tremove();\r\n\t\t}\r\n\t};\r\n}\r\n\r\nvar replaceText = (function () {\r\n\tvar textStore = [];\r\n\r\n\treturn function (index, replacement) {\r\n\t\ttextStore[index] = replacement;\r\n\t\treturn textStore.filter(Boolean).join('\\n');\r\n\t};\r\n})();\r\n\r\nfunction applyToSingletonTag(styleElement, index, remove, obj) {\r\n\tvar css = remove ? \"\" : obj.css;\r\n\r\n\tif (styleElement.styleSheet) {\r\n\t\tstyleElement.styleSheet.cssText = replaceText(index, css);\r\n\t} else {\r\n\t\tvar cssNode = document.createTextNode(css);\r\n\t\tvar childNodes = styleElement.childNodes;\r\n\t\tif (childNodes[index]) styleElement.removeChild(childNodes[index]);\r\n\t\tif (childNodes.length) {\r\n\t\t\tstyleElement.insertBefore(cssNode, childNodes[index]);\r\n\t\t} else {\r\n\t\t\tstyleElement.appendChild(cssNode);\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction applyToTag(styleElement, obj) {\r\n\tvar css = obj.css;\r\n\tvar media = obj.media;\r\n\r\n\tif(media) {\r\n\t\tstyleElement.setAttribute(\"media\", media)\r\n\t}\r\n\r\n\tif(styleElement.styleSheet) {\r\n\t\tstyleElement.styleSheet.cssText = css;\r\n\t} else {\r\n\t\twhile(styleElement.firstChild) {\r\n\t\t\tstyleElement.removeChild(styleElement.firstChild);\r\n\t\t}\r\n\t\tstyleElement.appendChild(document.createTextNode(css));\r\n\t}\r\n}\r\n\r\nfunction updateLink(linkElement, obj) {\r\n\tvar css = obj.css;\r\n\tvar sourceMap = obj.sourceMap;\r\n\r\n\tif(sourceMap) {\r\n\t\t// http://stackoverflow.com/a/26603875\r\n\t\tcss += \"\\n/*# sourceMappingURL=data:application/json;base64,\" + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + \" */\";\r\n\t}\r\n\r\n\tvar blob = new Blob([css], { type: \"text/css\" });\r\n\r\n\tvar oldSrc = linkElement.href;\r\n\r\n\tlinkElement.href = URL.createObjectURL(blob);\r\n\r\n\tif(oldSrc)\r\n\t\tURL.revokeObjectURL(oldSrc);\r\n}\r\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/style-loader/addStyles.js\n ** module id = 102\n ** module chunks = 0\n **/"],"sourceRoot":""}