mo实现表白按钮动画效果代码

代码语言:html

所属分类:动画

代码描述:mo实现表白按钮动画效果代码

代码标签: 按钮 动画 效果

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<html lang="en" class=" -webkit-"><head>

 
<meta charset="UTF-8">



 
 
 
<style>
body
, html {
 
padding: 0;
 
margin:  0;
 
width: 100%;
 
height: 100%;
 
overflow: hidden;
}

body
{
 
background: rgba(241, 226, 215, 0.2);
 
position: relative;
 
background: #FD5061;
 
font-family: Arial, Open Sans, sans-serif;
}

.character {
 
color: white;
 
font-size: 68px;
 
position: absolute;
 
left:0;
 
top: 0;
 
bottom: 0;
 
right:0;
 
text-align: center;
 
line-height: .475;
 
font-family: Oswald, monospace;
}

.add-button {
 
overflow: hidden;
 
border-radius: 50%;
}

.modal-wrapper {
 
position: absolute;
 
width: 248px;
 
height: 184px;
 
margin-left: -124px;
 
margin-top: -92px;
 
left: 50%;
 
top: 50%;
 
z-index: 1;
}

.modal,
.modal__shake {
 
position: absolute;
 
left: 0;
 
top: 0;
 
width: 100%;
 
height: 100%;
}

.modal-shape {
 
border-radius:  35px;
 
box-shadow:     5px 5px 0 rgba(0,0,0,.25);
 
overflow:       hidden;
}

.modal__inner {
 
position: absolute;
 
left: 0;
 
top: 0;
 
width: 100%;
 
height: 100%;
 
z-index: 1;
 
opacity: 0;
}

.modal__text  {
 
text-align: center;
 
font-size: 16px;
 
position: absolute;
 
width: 100%;
 
height: 50px;
 
padding-top: 34px;
 
color: #29363B;
 
letter-spacing: 1px;
 
backface-visibility: hidden;
}

.modal__buttons {
 
position: absolute;
 
bottom: 25px;
 
left: 0;
 
width: 100%;
 
text-align: center;
}

.modal__button {
 
background: white;
 
border-radius: 40px;
 
display: inline-block;
 
padding: 5px 10px;
 
width: 65px;
 
text-align: center;
 
font-size: 14px;
 
cursor: pointer;
 
color: #29363B;
 
letter-spacing: 1px;
 
backface-visibility: hidden;
}

.modal__button:hover {
 
opacity: 0.95;
}

.modal__button--love {
 
transform: rotate(3deg);
}

.modal__button--hate {
 
margin-left: 15px;
 
transform: rotate(-2deg);
}

.layer {
 
position: absolute;
 
left: 0;
 
top: 0;
 
width: 100%;
 
height: 100%;
 
transform: scale(0);
}

.layer--modal {
 
z-index: 5;
}

.layer--modal-hide {
 
z-index: 10;
}
</style>



<style type="text/css">._handle_q1som_5 {
 
width:          13px;
 
width:          13px;
 
width:          0.8125rem;
 
height:          13px;
 
height:          13px;
 
height:         0.8125rem;
 
 
cursor:         pointer;
 
-webkit-transform:      translateX(0);
         
transform:      translateX(0)
 
/*backface-visibility: hidden;*/
}
._handle__inner_q1som_1, ._handle__shadow_q1som_1 {
 
position:          absolute;
 
left:          0;
 
top:          0;
 
z-index:          1;
 
width:          100%;
 
height:          100%;
 
border-radius:          50%;
 
cursor:          pointer;
 
/*transform:      translateZ(0);*/
 
-webkit-backface-visibility:          hidden;
         
backface-visibility:          hidden
}
._handle__inner_q1som_1 {
 
background:          #FFF
}
._handle__shadow_q1som_1 {
 
box-shadow:          0.0625rem 0.0625rem 0.125rem black;
 
opacity:          .35;
 
z-index:          0
}
._handle_q1som_5:hover ._handle__inner_q1som_1, ._handle_q1som_5:hover ._handle__shadow_q1som_1 {
 
-webkit-transform:          scale(1.1);
         
transform:          scale(1.1)
}
._handle_q1som_5:active ._handle__inner_q1som_1 {
 
-webkit-transform:          scale(1.2);
         
transform:          scale(1.2)
 
/*box-shadow:     calc( $PX ) calc( $PX ) calc( 1*$PX ) rgba(0,0,0,.35);*/
}
._handle_q1som_5:active ._handle__shadow_q1som_1 {
 
opacity:          .85;
 
-webkit-transform:          scale(1);
         
transform:          scale(1)
}
._handle_q1som_5._is-bound_q1som_54 {
 
width:          9px;
 
width:          9px;
 
width:          0.5625rem;
 
height:          20px;
 
height:          20px;
 
height:          1.25rem;
 
margin-left:          -9px;
 
margin-left:          -9px;
 
margin-left:          -0.5625rem;
 
margin-top:          -10px;
 
margin-top:          -10px;
 
margin-top:          -0.625rem
}
._handle_q1som_5._is-bound_q1som_54 ._handle__inner_q1som_1 {
 
background:          #FF512F
}
._handle_q1som_5._is-bound_q1som_54 ._handle__inner_q1som_1:after {
 
content:          '';
 
position:          absolute;
 
right:          0;
 
top:          50%;
 
margin-top:          -20px;
 
margin-top:          -20px;
 
margin-top:          -1.25rem;
 
width:          1px;
 
width:          1px;
 
width:          0.0625rem;
 
height:          40px;
 
height:          40px;
 
height:          2.5rem;
 
background:          #FF512F
}
._handle_q1som_5._is-bound_q1som_54 ._handle__inner_q1som_1, ._handle_q1som_5._is-bound_q1som_54 ._handle__shadow_q1som_1 {
 
border-top-left-radius:          3px;
 
border-top-left-radius:          3px;
 
border-top-left-radius:          0.1875rem;
 
border-bottom-left-radius:          3px;
 
border-bottom-left-radius:          3px;
 
border-bottom-left-radius:          0.1875rem;
 
border-top-right-radius:          0;
 
border-bottom-right-radius:          0
}
._handle_q1som_5._is-inversed_q1som_82 {
 
margin-left:          0
}
._handle_q1som_5._is-inversed_q1som_82 ._handle__shadow_q1som_1 {
 
box-shadow:          -0.0625rem 0.0625rem 0.125rem black
}
._handle_q1som_5._is-inversed_q1som_82 ._handle__inner_q1som_1 {
 
border-top-left-radius:          0;
 
border-bottom-left-radius:          0;
 
border-top-right-radius:          3px;
 
border-top-right-radius:          3px;
 
border-top-right-radius:          0.1875rem;
 
border-bottom-right-radius:          3px;
 
border-bottom-right-radius:          3px;
 
border-bottom-right-radius:          0.1875rem
}
._handle_q1som_5._is-inversed_q1som_82 ._handle__inner_q1som_1:after {
 
right:          auto;
 
left:          0
}

</style><style type="text/css">._track_1inlw_5 {
 
position:           relative;
 
height:             100%


}
._track__track_1inlw_1 {
 
position:           absolute;
 
top:           50%;
 
left:           0;
 
width:           100%;
 
height:           1px;
 
height:           1px;
 
height:           0.0625rem;
 
background:           #FFF;
 
box-shadow:           0.0625rem 0.0625rem 0.0625rem rgba(0,0,0,.5)


}
._track__track_1inlw_1:after {
 
content:           '';
 
position:           absolute;
 
left:           0;
 
top:           -20px;
 
top:           -20px;
 
top:           -1.25rem;
 
width:           100%;
 
height:           40px;
 
height:           40px;
 
height:           2.5rem;
 
cursor:           pointer
 
/*background-color: yellow;*/


}
._track__track-progress_1inlw_1 {
 
position:           absolute;
 
left:           0;
 
top:           50%;
 
margin-top:           -1px;
 
margin-top:           -1px;
 
margin-top:           -0.0625rem;
 
height:           3px;
 
height:           3px;
 
height:           0.1875rem;
 
width:           1px;
 
/*background:       $c-orange;*/
 
background:           #FFFFFF;
 
z-index:           1;
 
-webkit-transform-origin:           left center;
         
transform-origin:           left center


}
._track__track-progress_1inlw_1:after {
 
content:           '';
 
position:           absolute;
 
left:           0;
 
top:           -20px;
 
top:           -20px;
 
top:           -1.25rem;
 
width:           100%;
 
height:           40px;
 
height:           40px;
 
height:           2.5rem;
 
cursor:           pointer
 
/*background-color: yellow;*/


}
._track__ripple_1inlw_1 {
 
position:           absolute;
 
left:           0;
 
top:           0;
 
right:           0;
 
bottom:           0;
 
overflow:           hidden;
 
z-index:           1


}
._track_1inlw_5._is-inversed_1inlw_65 {
 
left:           auto;
 
right:           0


}
._track_1inlw_5._is-inversed_1inlw_65 ._track__track-progress_1inlw_1 {
 
-webkit-transform-origin:           right center;
         
transform-origin:           right center


}
._track_1inlw_5._is-bound_1inlw_74 ._track__track-progress_1inlw_1 {
 
background:           #FF512F


}
._track_1inlw_5._is-y_1inlw_78 ._track__track_1inlw_1 {
 
top:           0;
 
left:           50%;
 
height:           100%;
 
width:           1px;
 
width:           1px;
 
width:           0.0625rem
 
/*box-shadow:       calc( $PX ) calc( $PX ) calc( $PX ) rgba(0,0,0,.5); */


}

</style><style type="text/css">/*@import './handle.postcss.css';*/
._slider_14t9x_6 {
 
position:           relative;
 
width:              100%;
 
height:           30px;
 
height:           30px;
 
height:             1.875rem
}
._slider__inner_14t9x_1 {
 
width:           100%;
 
height:           100%;
 
position:           relative
}
._slider_14t9x_6 ._handle_14t9x_17, ._slider_14t9x_6 ._progress-handle_14t9x_18 {
 
z-index:           3;
 
position:           absolute;
 
top:           50%
}
._slider_14t9x_6 ._progress-handle_14t9x_18 {
 
left:           0;
 
margin-left:           -6.5px;
 
margin-left:           -6.5px;
 
margin-left:           -0.40625rem;
 
margin-top:           -6.5px;
 
margin-top:           -6.5px;
 
margin-top:           -0.40625rem
}
._slider_14t9x_6 ._track_14t9x_30 {
 
z-index:           2
}
._slider_14t9x_6._is-y_14t9x_34 {
 
width:           30px;
 
width:           30px;
 
width:           1.875rem;
 
height:           100%;
}
._slider_14t9x_6._is-y_14t9x_34 ._handle_14t9x_17 {
 
left:           50%;
 
top:           auto;
 
bottom:           0;
 
margin-top:           0;
 
margin-bottom:           -6.5px;
 
margin-bottom:           -6.5px;
 
margin-bottom:           -0.40625rem
}

</style><style type="text/css">/*@import './handle.postcss.css';*/
._player-slider_1t00q_6 {
 
/*overflow:     hidden;*/
 
height:       40px;
 
height:       40px;
 
height:       2.5rem

}
._player-slider_1t00q_6 > div {
 
position:       absolute;
 
left:       0;
 
top:       0;
 
z-index:       2

}
._player-slider_1t00q_6 ._slider_1t00q_15 {
 
z-index:       1;
 
height:       100%

}

</style><style type="text/css">._icon_y498a_5 {
 
position:     relative;
 
width:     12px;
 
width:     12px;
 
width:        0.75rem;
 
height:     12px;
 
height:     12px;
 
height:       0.75rem;
 
cursor:       pointer
}
._icon_y498a_5 > svg {
 
position:     absolute;
 
left:     0;
 
top:     0;
 
width:     100%;
 
height:     100%;
 
fill:     inherit
}
._icon_y498a_5 > svg > use {
 
fill:     inherit
}
._icon_y498a_5:after {
 
content:     '';
 
position:     absolute;
 
left:     0;
 
top:     0;
 
right:     0;
 
bottom:     0;
 
z-index:     1
}
._icon_y498a_5._is-x2_y498a_33 {
 
width:     16px;
 
width:     16px;
 
width:     1rem;
 
height:     16px;
 
height:     16px;
 
height:     1rem
}

</style><style type="text/css">._button_r3ni6_4 {
 
position:   relative;
 
width:   35px;
 
width:   35px;
 
width:      2.1875rem;
 
height:   40px;
 
height:   40px;
 
height:     2.5rem;
 
cursor:     pointer;
 
fill:       #FFF;
 
display:    inline-block
}
._button__ripple_r3ni6_1 {
 
position:   absolute;
 
left:   0;
 
right:   0;
 
top:   0;
 
bottom:   0;
 
z-index:   5;
 
overflow:   hidden
}
._button__ripple_r3ni6_1:after {
 
content:   "";
 
position:   absolute;
 
left:   0;
 
right:   0;
 
top:   0;
 
bottom:   0;
 
z-index:   1;
 
cursor:   pointer
}
._button_r3ni6_4:hover {
 
opacity:   .85
}
._button_r3ni6_4:active {
 
opacity:   1
}

</style><style type="text/css">._icon-button_1yshr_4 {
 
/* styles */
}
._icon-button_1yshr_4 ._icon_1yshr_4 {
 
position: absolute;
 
left: 50%;
 
top: 50%;
 
-webkit-transform: translate( -50%, -50% );
         
transform: translate( -50%, -50% )
}

</style><style type="text/css">._button-switch_1g5lg_4 {
 
position:     relative;
 
display:      inline-block
}
._button-switch_1g5lg_4 > ._icon_1g5lg_8 {
 
position:     absolute
}
._button-switch_1g5lg_4:after {
 
content:     "";
 
position:     absolute;
 
left:     0;
 
top:     0;
 
right:     0;
 
bottom:     0;
 
z-index:     1
}

</style><style type="text/css">._label-button_1cxps_4 {
 
font-family:        Arial, sans-serif;
 
font-size:        9px;
 
font-size:        9px;
 
font-size:          0.5625rem;
 
letter-spacing:        0.5px;
 
letter-spacing:        0.5px;
 
letter-spacing:     0.03125rem;
 
color:              white
}
._label-button__label_1cxps_1 {
 
position:        absolute;
 
left:        50%;
 
top:        50%;
 
-webkit-transform:        translate( -50%, -50% );
         
transform:        translate( -50%, -50% )
}
</style><style type="text/css">._speed-control_1svrw_4 {
 
position:       relative;
 
display:        inline-block;
 
height:       40px;
 
height:       40px;
 
height:         2.5rem
}
._speed-control__slider_1svrw_1 {
 
position:       absolute;
 
bottom:       100%;
 
left:       3px;
 
left:       3px;
 
left:       0.1875rem;
 
width:       30px;
 
width:       30px;
 
width:       1.875rem;
 
height:       80px;
 
height:       80px;
 
height:       5rem;
 
padding-top:       20px;
 
padding-top:       20px;
 
padding-top:       1.25rem;
 
padding-bottom:       20px;
 
padding-bottom:       20px;
 
padding-bottom:       1.25rem;
 
border-top-right-radius:       3px;
 
border-top-right-radius:       3px;
 
border-top-right-radius:       0.1875rem;
 
border-top-left-radius:       3px;
 
border-top-left-radius:       3px;
 
border-top-left-radius:       0.1875rem;
 
background:       #3A0839;
 
-webkit-transform:       translate(-6249999.9375rem, -6249999.9375rem);
         
transform:       translate(-6249999.9375rem, -6249999.9375rem);
 
-webkit-backface-visibility:       hidden;
         
backface-visibility:       hidden
}
._speed-control__slider_1svrw_1:before, ._speed-control__slider_1svrw_1:after {
 
content:       '';
 
position:       absolute;
 
top:       50%;
 
width:       3px;
 
width:       3px;
 
width:       0.1875rem;
 
height:       1px;
 
height:       1px;
 
height:       0.0625rem;
 
background:       #FFF
}
._speed-control__slider_1svrw_1:before {
 
left:       5px;
 
left:       5px;
 
left:       0.3125rem
}
._speed-control__slider_1svrw_1:after {
 
right:       5px;
 
right:       5px;
 
right:       0.3125rem
}
._speed-control__button_1svrw_1 {
 
border:       1px solid cyan
}
._speed-control_1svrw_4._is-on_1svrw_48 ._speed-control__slider_1svrw_1 {
 
-webkit-transform:       translate(0, 0);
         
transform:       translate(0, 0)
}

</style><style type="text/css">._icon-fork_csg7t_4 {
}
._icon-fork_csg7t_4 > ._icon_csg7t_4 {
   
/*position:   absolute;*/
   
opacity: 0;
   
position: absolute;
   
top: 50%;
   
left: 50%;
   
-webkit-transform: translate( -50%, -50% );
           
transform: translate( -50%, -50% )
}
._icon-fork_csg7t_4 > ._icon_csg7t_4:nth-of-type(3) {
   
position: absolute;
   
opacity: 1
}
._icon-fork_csg7t_4._is-on_csg7t_18 > ._icon_csg7t_4:nth-of-type(2) {
   
opacity: 1
}
._icon-fork_csg7t_4._is-on_csg7t_18 > ._icon_csg7t_4:nth-of-type(3) {
   
opacity: 0
}

</style><style type="text/css">._play-button_16uj5_4 {
 
/* styles */
}
</style><style type="text/css">._stop-button_lpa7l_4 {
 
/* styles */
}
</style><style type="text/css">._opacity-switch_17z5s_4 {
 
opacity:      .5;




}
._opacity-switch_17z5s_4 ._icon_17z5s_6 {
 
position:   absolute;
 
left:       50%;
 
top:        50%;
 
-webkit-transform:  translate(-50%, -50%);
         
transform:  translate(-50%, -50%);




}
._opacity-switch_17z5s_4:hover {
 
opacity:      .4;




}
._opacity-switch_17z5s_4._is-on_17z5s_15 {
 
opacity:      1;




}
._opacity-switch_17z5s_4._is-on_17z5s_15:hover {
 
opacity:      .85;




}
</style><style type="text/css">._repeat-button_1ce74_4 {
 
/* styles */
}

</style><style type="text/css">._hide-button_1hqr2_4 {
 
 
width:        22px;
 
 
width:        22px;
 
 
width:        1.375rem;
 
height:        16px;
 
height:        16px;
 
height:       1rem;
 
 
background:   #3A0839;

 
border-top-left-radius:        3px;
 
border-top-left-radius:        3px;
 
border-top-left-radius:  0.1875rem;
 
border-top-right-radius:        3px;
 
border-top-right-radius:        3px;
 
border-top-right-radius: 0.1875rem
}
._hide-button__icon_1hqr2_1 {
 
 
position:        absolute;
 
 
left:        50%;
 
 
top:        50%;
 
 
width:        8px;
 
 
width:        8px;
 
 
width:        0.5rem;
 
 
height:        8px;
 
 
height:        8px;
 
 
height:        0.5rem;
 
 
margin-top:        1px;
 
 
margin-top:        1px;
 
 
margin-top:        0.0625rem;
 
 
-webkit-transform:        translate( -50%, -50% );
 
         
transform:        translate( -50%, -50% )
}
._hide-button_1hqr2_4._is-hidden_1hqr2_24 ._hide-button__icon_1hqr2_1 {
 
 
-webkit-transform:        translate( -50%, -65% ) rotate( 180deg );
 
         
transform:        translate( -50%, -65% ) rotate( 180deg )
}

</style><style type="text/css">._mojs-player_tes6w_4 {
 
position:       fixed;
 
left:           0;
 
bottom:         0;
 
width:          100%;
 
height:       40px;
 
height:       40px;
 
height:         2.5rem;
 
background:     rgba( 58, 8, 57, .85 );
 
z-index:        100
}
._mojs-player__left_tes6w_1 {
 
position:       absolute;
 
left:       0;
 
width:       175px;
 
width:       175px;
 
width:       10.9375rem
}
._mojs-player__mid_tes6w_1 {
 
position:       absolute;
 
left:       175px;
 
left:       175px;
 
left:       10.9375rem;
 
right:       35px;
 
right:       35px;
 
right:       2.1875rem;
 
overflow:       hidden;
 
padding:       0 20px;
 
padding:       0 20px;
 
padding:       0 1.25rem
}
._mojs-player__right_tes6w_1 {
 
position:       absolute;
 
right:       0
}
._mojs-player__hide-button_tes6w_1 {
 
position:       absolute;
 
right:       6px;
 
right:       6px;
 
right:       0.375rem;
 
bottom:       100%
}
._mojs-player_tes6w_4._is-hidden_tes6w_41 {
 
-webkit-transform:       translateY(100%);
         
transform:       translateY(100%)
}
._mojs-player_tes6w_4._is-transition_tes6w_44 {
 
-webkit-transition:       all .15s ease-out;
 
transition:       all .15s ease-out
}

</style></head>

<body >
<div id="js-modal-layer" class="layer layer--modal"></div>
   
<div id="js-modal-hide-layer" class="layer layer--modal-hide"></div>

   
<div class="scene" id="js-scene"></div>

   
<script id="js-modal-template" type="text/template">
     
<div class="modal__text" id="js-modal-text">
       
The web + motion <br /> is
     
</div>
      <div class="modal__buttons">
        <div class="modal__button modal__button--love" id="js-button-love">love</
div>
       
<div class="modal__button modal__button--hate" id="js-button-hate">hate</div>
      </
div>
   
</script>





















<!-- ABOUT LINK -->
<style> .what:hover { cursor: pointer; opacity: .75; } .what {display: block;width: 28px;height: 28px;position: fixed;right: 20px;bottom: 20px;background-size: 100% 100%; background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PHN2ZyB3aWR0aD0iMjNweCIgaGVpZ2h0PSIyM3B4IiB2aWV3Qm94PSIwIDAgMjMgMjMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+ICAgICAgICA8dGl0bGU+U2xpY2UgMTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZGVmcz48L2RlZnM+ICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPHBhdGggZD0iTTExLjUsMjIgQzE3LjI5ODk4OTksMjIgMjIsMTcuMjk4OTg5OSAyMiwxMS41IEMyMiw1LjcwMTAxMDEzIDE3LjI5ODk4OTksMSAxMS41LDEgQzUuNzAxMDEwMTMsMSAxLDUuNzAxMDEwMTMgMSwxMS41IEMxLDE3LjI5ODk4OTkgNS43MDEwMTAxMywyMiAxMS41LDIyIFoiIGlkPSJPdmFsIiBzdHJva2U9IiMzQTA1M0EiIGZpbGw9IiNGRkZGRkYiPjwvcGF0aD4gICAgICAgIDxwYXRoIGQ9Ik0xMi4yNzkyOTY5LDEzLjQ2Mjg5MDYgTDEwLjc4NTE1NjIsMTMuNDYyODkwNiBDMTAuNzgxMjUsMTMuMjQ4MDQ1OCAxMC43NzkyOTY5LDEzLjExNzE4NzcgMTAuNzc5Mjk2OSwxMy4wNzAzMTI1IEMxMC43NzkyOTY5LDEyLjU4NTkzNTEgMTAuODU5Mzc0MiwxMi4xODc1MDE2IDExLjAxOTUzMTIsMTEuODc1IEMxMS4xNzk2ODgzLDExLjU2MjQ5ODQgMTEuNDk5OTk3NiwxMS4yMTA5Mzk1IDExLjk4MDQ2ODgsMTAuODIwMzEyNSBDMTIuNDYwOTM5OSwxMC40Mjk2ODU1IDEyLjc0ODA0NjQsMTAuMTczODI4NyAxMi44NDE3OTY5LDEwLjA1MjczNDQgQzEyLjk4NjMyODgsOS44NjEzMjcxNyAxMy4wNTg1OTM4LDkuNjUwMzkxNzggMTMuMDU4NTkzOCw5LjQxOTkyMTg4IEMxMy4wNTg1OTM4LDkuMDk5NjA3NzcgMTIuOTMwNjY1Myw4LjgyNTE5NjQ2IDEyLjY3NDgwNDcsOC41OTY2Nzk2OSBDMTIuNDE4OTQ0LDguMzY4MTYyOTIgMTIuMDc0MjIwOSw4LjI1MzkwNjI1IDExLjY0MDYyNSw4LjI1MzkwNjI1IEMxMS4yMjI2NTQyLDguMjUzOTA2MjUgMTAuODczMDQ4Myw4LjM3MzA0NTY4IDEwLjU5MTc5NjksOC42MTEzMjgxMiBDMTAuMzEwNTQ1NSw4Ljg0OTYxMDU3IDEwLjExNzE4OCw5LjIxMjg4ODE4IDEwLjAxMTcxODgsOS43MDExNzE4OCBMOC41LDkuNTEzNjcxODggQzguNTQyOTY4OTYsOC44MTQ0NDk2MyA4Ljg0MDgxNzU1LDguMjIwNzA1NTcgOS4zOTM1NTQ2OSw3LjczMjQyMTg4IEM5Ljk0NjI5MTgzLDcuMjQ0MTM4MTggMTAuNjcxODcwNSw3IDExLjU3MDMxMjUsNyBDMTIuNTE1NjI5Nyw3IDEzLjI2NzU3NTMsNy4yNDcwNjc4NCAxMy44MjYxNzE5LDcuNzQxMjEwOTQgQzE0LjM4NDc2ODQsOC4yMzUzNTQwMyAxNC42NjQwNjI1LDguODEwNTQzNTkgMTQuNjY0MDYyNSw5LjQ2Njc5Njg4IEMxNC42NjQwNjI1LDkuODMwMDc5OTQgMTQuNTYxNTI0NSwxMC4xNzM4MjY1IDE0LjM1NjQ0NTMsMTAuNDk4MDQ2OSBDMTQuMTUxMzY2MiwxMC44MjIyNjcyIDEzLjcxMjg5NCwxMS4yNjM2NjkxIDEzLjA0MTAxNTYsMTEuODIyMjY1NiBDMTIuNjkzMzU3NiwxMi4xMTEzMjk2IDEyLjQ3NzUzOTUsMTIuMzQzNzQ5MSAxMi4zOTM1NTQ3LDEyLjUxOTUzMTIgQzEyLjMwOTU2OTksMTIuNjk1MzEzNCAxMi4yNzE0ODQzLDEzLjAwOTc2MzQgMTIuMjc5Mjk2OSwxMy40NjI4OTA2IEwxMi4yNzkyOTY5LDEzLjQ2Mjg5MDYgWiBNMTAuNzg1MTU2MiwxNS42Nzc3MzQ0IEwxMC43ODUxNTYyLDE0LjAzMTI1IEwxMi40MzE2NDA2LDE0LjAzMTI1IEwxMi40MzE2NDA2LDE1LjY3NzczNDQgTDEwLjc4NTE1NjIsMTUuNjc3NzM0NCBaIiBpZD0iPyIgZmlsbD0iIzNBMDUzQSI+PC9wYXRoPiAgICA8L2c+PC9zdmc+);}</style><a href="http://mojs.io/tutorials/shape/" class="what" title="tutorial" target="_blank"></a>
<!-- ABOUT LINK -->

<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/mo.min.js"></script>
     
<script type="module">
// the readable code is here: https://github.com/legomushroom/shape-demo3

/******/ (function(modules) { // webpackBootstrap
/******/  // The module cache
/******/  var installedModules = {};

/******/  // The require function
/******/  function __webpack_require__(moduleId) {

/******/    // Check if module is in cache
/******/    if(installedModules[moduleId])
/******/      return installedModules[moduleId].exports;

/******/    // Create a new module (and put it into the cache)
/******/    var module = installedModules[moduleId] = {
/******/      exports: {},
/******/      id: moduleId,
/******/      loaded: false
/******/    };

/******/    // Execute the module function
/******/    modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);

/******/    // Flag the module as loaded
/******/    module.loaded = true;

/******/    // Return the exports of the module
/******/    return module.exports;
/******/  }


/******/  // expose the modules object (__webpack_modules__)
/******/  __webpack_require__.m = modules;

/******/  // expose the module cache
/******/  __webpack_require__.c = installedModules;

/******/  // __webpack_public_path__
/******/  __webpack_require__.p = "build/";

/******/  // Load entry module and return exports
/******/  return __webpack_require__(0);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ function(module, exports, __webpack_require__) {

  module
.exports = __webpack_require__(1);


/***/ },
/* 1 */
/***/ function(module, exports, __webpack_require__) {

 
'use strict';

  exports
.__esModule = true;

 
var _classCallCheck2 = __webpack_require__(2);

 
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);

 
var _possibleConstructorReturn2 = __webpack_require__(3);

 
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);

 
var _inherits2 = __webpack_require__(72);

 
var _inherits3 = _interopRequireDefault(_inherits2);

 
var _classlistPolyfill = __webpack_require__(80);

 
var _classlistPolyfill2 = _interopRequireDefault(_classlistPolyfill);

 
var _mojsPlayer = __webpack_require__(81);

 
var _mojsPlayer2 = _interopRequireDefault(_mojsPlayer);

 
var _module = __webpack_require__(82);

 
var _module2 = _interopRequireDefault(_module);

 
var _colors = __webpack_require__(83);

 
var _colors2 = _interopRequireDefault(_colors);

 
var _showButton = __webpack_require__(84);

 
var _showButton2 = _interopRequireDefault(_showButton);

 
var _modal = __webpack_require__(87);

 
var _modal2 = _interopRequireDefault(_modal);

 
var _modalHide = __webpack_require__(100);

 
var _modalHide2 = _interopRequireDefault(_modalHide);

 
var _characters = __webpack_require__(101);

 
var _characters2 = _interopRequireDefault(_characters);

 
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

 
// require('../css/main.postcss.css');
 
// const CLASSES = require('../css/main.postcss.css.json');

 
// import AddButton  from './components/add-button/add-button';

 
var Demo = function (_Module) {
   
(0, _inherits3.default)(Demo, _Module);

   
function Demo() {
     
(0, _classCallCheck3.default)(this, Demo);
     
return (0, _possibleConstructorReturn3.default)(this, _Module.apply(this, arguments));
   
}

   
/*
      Method for initial module's render.
      @private
    */


   
Demo.prototype._render = function _render() {
     
// super._render();

     
var mainTimeline = new mojs.Timeline();

      mainTimeline
.add(new _showButton2.default()
     
// new ModalHide
     
// new Characters({ delay: 200 })
     
// new Modal
     
).play();

     
// this._findEl( '#js-modal-hide-layer' ).style['transform'] = 'none';

     
// ;( new MojsPlayer({ add: mainTimeline }) )
     
//   .el.style[ 'z-index' ] = 10;
   
};

   
return Demo;
 
}(_module2.default);
 
// import Vibro      from './components/add-button/vibro-button';


 
new Demo();

  exports
.default = Demo;

/***/ },
/* 2 */
/***/ function(module, exports) {

 
"use strict";

  exports
.__esModule = true;

  exports
.default = function (instance, Constructor) {
   
if (!(instance instanceof Constructor)) {
     
throw new TypeError("Cannot call a class as a function");
   
}
 
};

/***/ },
/* 3 */
/***/ function(module, exports, __webpack_require__) {

 
"use strict";

  exports
.__esModule = true;

 
var _typeof2 = __webpack_require__(4);

 
var _typeof3 = _interopRequireDefault(_typeof2);

 
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

  exports
.default = function (self, call) {
   
if (!self) {
     
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
   
}

   
return call && ((typeof call === "undefined" ? "undefined" : (0, _typeof3.default)(call)) === "object" || typeof call === "function") ? call : self;
 
};

/***/ },
/* 4 */
/***/ function(module, exports, __webpack_require__) {

 
"use strict";

  exports
.__esModule = true;

 
var _iterator = __webpack_require__(5);

 
var _iterator2 = _interopRequireDefault(_iterator);

 
var _symbol = __webpack_require__(56);

 
var _symbol2 = _interopRequireDefault(_symbol);

 
var _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; };

 
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

  exports
.default = typeof _symbol2.default === "function" && _typeof(_iterator2.default) === "symbol" ? function (obj) {
   
return typeof obj === "undefined" ? "undefined" : _typeof(obj);
 
} : function (obj) {
   
return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj);
 
};

/***/ },
/* 5 */
/***/ function(module, exports, __webpack_require__) {

  module
.exports = { "default": __webpack_require__(6), __esModule: true };

/***/ },
/* 6 */
/***/ function(module, exports, __webpack_require__) {

  __webpack_require__
(7);
  __webpack_require__
(51);
  module
.exports = __webpack_require__(55).f('iterator');

/***/ },
/* 7 */
/***/ function(module, exports, __webpack_require__) {

 
'use strict';
 
var $at  = __webpack_require__(8)(true);

 
// 21.1.3.27 String.prototype[@@iterator]()
  __webpack_require__
(11)(String, 'String', function(iterated){
   
this._t = String(iterated); // target
   
this._i = 0;                // next index
 
// 21.1.5.2.1 %StringIteratorPrototype%.next()
 
}, function(){
   
var O     = this._t
     
, index = this._i
     
, point;
   
if(index >= O.length)return {value: undefined, done: true};
    point
= $at(O, index);
   
this._i += point.length;
   
return {value: point, done: false};
 
});

/***/ },
/* 8 */
/***/ function(module, exports, __webpack_require__) {

 
var toInteger = __webpack_require__(9)
   
, defined   = __webpack_require__(10);
 
// true  -> String#at
 
// false -> String#codePointAt
  module
.exports = function(TO_STRING){
   
return function(that, pos){
     
var s = String(defined(that))
       
, i = toInteger(pos)
       
, l = s.length
       
, a, b;
     
if(i < 0 || i >= l)return TO_STRING ? '' : undefined;
      a
= s.charCodeAt(i);
     
return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
       
? TO_STRING ? s.charAt(i) : a
       
: TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
   
};
 
};

/***/ },
/* 9 */
/***/ function(module, exports) {

 
// 7.1.4 ToInteger
 
var ceil  = Math.ceil
   
, floor = Math.floor;
  module
.exports = function(it){
   
return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
 
};

/***/ },
/* 10 */
/***/ function(module, exports) {

 
// 7.2.1 RequireObjectCoercible(argument)
  module
.exports = function(it){
   
if(it == undefined)throw TypeError("Can't call method on  " + it);
   
return it;
 
};

/***/ },
/* 11 */
/***/ function(module, exports, __webpack_require__) {

 
'use strict';
 
var LIBRARY        = __webpack_require__(12)
   
, $export        = __webpack_require__(13)
   
, redefine       = __webpack_require__(28)
   
, hide           = __webpack_require__(18)
   
, has            = __webpack_require__(29)
   
, Iterators      = __webpack_require__(30)
   
, $iterCreate    = __webpack_require__(31)
   
, setToStringTag = __webpack_require__(47)
   
, getPrototypeOf = __webpack_require__(49)
   
, ITERATOR       = __webpack_require__(48)('iterator')
   
, BUGGY          = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
   
, FF_ITERATOR    = '@@iterator'
   
, KEYS           = 'keys'
   
, VALUES         = 'values';

 
var returnThis = function(){ return this; };

  module
.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
    $iterCreate
(Constructor, NAME, next);
   
var getMethod = function(kind){
     
if(!BUGGY && kind in proto)return proto[kind];
     
switch(kind){
       
case KEYS: return function keys(){ return new Constructor(this, kind); };
       
case VALUES: return function values(){ return new Constructor(this, kind); };
     
} return function entries(){ return new Constructor(this, kind); };
   
};
   
var TAG        = NAME + ' Iterator'
     
, DEF_VALUES = DEFAULT == VALUES
     
, VALUES_BUG = false
     
, proto      = Base.prototype
     
, $native    = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
     
, $default   = $native || getMethod(DEFAULT)
     
, $entries   = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined
     
, $anyNative = NAME == 'Array' ? proto.entries || $native : $native
     
, methods, key, IteratorPrototype;
   
// Fix native
   
if($anyNative){
     
IteratorPrototype = getPrototypeOf($anyNative.call(new Base));
     
if(IteratorPrototype !== Object.prototype){
       
// Set @@toStringTag to native iterators
        setToStringTag
(IteratorPrototype, TAG, true);
       
// fix for some old engines
       
if(!LIBRARY && !has(IteratorPrototype, ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
     
}
   
}
   
// fix Array#{values, @@iterator}.name in V8 / FF
   
if(DEF_VALUES && $native && $native.name !== VALUES){
      VALUES_BUG
= true;
      $default
= function values(){ return $native.call(this); };
   
}
   
// Define iterator
   
if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
      hide
(proto, ITERATOR, $default);
   
}
   
// Plug for library
   
Iterators[NAME] = $default;
   
Iterators[TAG]  = returnThis;
   
if(DEFAULT){
      methods
= {
        values
:  DEF_VALUES ? $default : getMethod(VALUES),
        keys
:    IS_SET     ? $default : getMethod(KEYS),
        entries
: $entries
     
};
     
if(FORCED)for(key in methods){
       
if(!(key in proto))redefine(proto, key, methods[key]);
     
} else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
   
}
   
return methods;
 
};

/***/ },
/* 12 */
/***/ function(module, exports) {

  module
.exports = true;

/***/ },
/* 13 */
/***/ function(module, exports, __webpack_require__) {

 
var global    = __webpack_require__(14)
   
, core      = __webpack_require__(15)
   
, ctx       = __webpack_require__(16)
   
, hide      = __webpack_require__(18)
   
, PROTOTYPE = 'prototype';

 
var $export = function(type, name, source){
   
var IS_FORCED = type & $export.F
     
, IS_GLOBAL = type & $export.G
     
, IS_STATIC = type & $export.S
     
, IS_PROTO  = type & $export.P
     
, IS_BIND   = type & $export.B
     
, IS_WRAP   = type & $export.W
     
, exports   = IS_GLOBAL ? core : core[name] || (core[name] = {})
     
, expProto  = exports[PROTOTYPE]
     
, target    = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]
     
, key, own, out;
   
if(IS_GLOBAL)source = name;
   
for(key in source){
     
// contains in native
      own
= !IS_FORCED && target && target[key] !== undefined;
     
if(own && key in exports)continue;
     
// export native or passed
      out
= own ? target[key] : source[key];
     
// prevent global pollution for namespaces
      exports
[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
     
// bind timers to global for call from export context
     
: IS_BIND && own ? ctx(out, global)
     
// wrap global constructors for prevent change them in library
     
: IS_WRAP && target[key] == out ? (function(C){
       
var F = function(a, b, c){
         
if(this instanceof C){
           
switch(arguments.length){
             
case 0: return new C;
             
case 1: return new C(a);
             
case 2: return new C(a, b);
           
} return new C(a, b, c);
         
} return C.apply(this, arguments);
       
};
        F
[PROTOTYPE] = C[PROTOTYPE];
       
return F;
     
// make static versions for prototype methods
     
})(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
     
// export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
     
if(IS_PROTO){
       
(exports.virtual || (exports.virtual = {}))[key] = out;
       
// export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
       
if(type & $export.R && expProto && !expProto[key])hide(expProto, key, out);
     
}
   
}
 
};
 
// type bitmap
  $export
.F = 1;   // forced
  $export
.G = 2;   // global
  $export
.S = 4;   // static
  $export
.P = 8;   // proto
  $export
.B = 16;  // bind
  $export
.W = 32;  // wrap
  $export
.U = 64;  // safe
  $export
.R = 128; // real proto method for `library`
  module
.exports = $export;

/***/ },
/* 14 */
/***/ function(module, exports) {

 
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
 
var global = module.exports = typeof window != 'undefined' && window.Math == Math
   
? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
 
if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef

/***/ },
/* 15 */
/***/ function(module, exports) {

 
var core = module.exports = {version: '2.4.0'};
 
if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef

/***/ },
/* 16 */
/***/ function(module, exports, __webpack_require__) {

 
// optional / simple context binding
 
var aFunction = __webpack_require__(17);
  module
.exports = function(fn, that, length){
    aFunction
(fn);
   
if(that === undefined)return fn;
   
switch(length){
     
case 1: return function(a){
       
return fn.call(that, a);
     
};
     
case 2: return function(a, b){
       
return fn.call(that, a, b);
     
};
     
case 3: return function(a, b, c){
       
return fn.call(that, a, b, c);
     
};
   
}
   
return function(/* ...args */){
     
return fn.apply(that, arguments);
   
};
 
};

/***/ },
/* 17 */
/***/ function(module, exports) {

  module
.exports = function(it){
   
if(typeof it != 'function')throw TypeError(it + ' is not a function!');
   
return it;
 
};

/***/ },
/* 18 */
/***/ function(module, exports, __webpack_require__) {

 
var dP         = __webpack_require__(19)
   
, createDesc = __webpack_require__(27);
  module
.exports = __webpack_require__(23) ? function(object, key, value){
   
return dP.f(object, key, createDesc(1, value));
 
} : function(object, key, value){
    object
[key] = value;
   
return object;
 
};

/***/ },
/* 19 */
/***/ function(module, exports, __webpack_require__) {

 
var anObject       = __webpack_require__(20)
   
, IE8_DOM_DEFINE = __webpack_require__(22)
   
, toPrimitive    = __webpack_require__(26)
   
, dP             = Object.defineProperty;

  exports
.f = __webpack_require__(23) ? Object.defineProperty : function defineProperty(O, P, Attributes){
    anObject
(O);
    P
= toPrimitive(P, true);
    anObject
(Attributes);
   
if(IE8_DOM_DEFINE)try {
     
return dP(O, P, Attributes);
   
} catch(e){ /* empty */ }
   
if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');
   
if('value' in Attributes)O[P] = Attributes.value;
   
return O;
 
};

/***/ },
/* 20 */
/***/ function(module, exports, __webpack_require__) {

 
var isObject = __webpack_require__(21);
  module
.exports = function(it){
   
if(!isObject(it))throw TypeError(it + ' is not an object!');
   
return it;
 
};

/***/ },
/* 21 */
/***/ function(module, exports) {

  module
.exports = function(it){
   
return typeof it === 'object' ? it !== null : typeof it === 'function';
 
};

/***/ },
/* 22 */
/***/ function(module, exports, __webpack_require__) {

  module
.exports = !__webpack_require__(23) && !__webpack_require__(24)(function(){
   
return Object.defineProperty(__webpack_require__(25)('div'), 'a', {get: function(){ return 7; }}).a != 7;
 
});

/***/ },
/* 23 */
/***/ function(module, exports, __webpack_require__) {

 
// Thank's IE8 for his funny defineProperty
  module
.exports = !__webpack_require__(24)(function(){
   
return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
 
});

/***/ },
/* 24 */
/***/ function(module, exports) {

  module
.exports = function(exec){
   
try {
     
return !!exec();
   
} catch(e){
     
return true;
   
}
 
};

/***/ },
/* 25 */
/***/ function(module, exports, __webpack_require__) {

 
var isObject = __webpack_require__(21)
   
, document = __webpack_require__(14).document
   
// in old IE typeof document.createElement is 'object'
   
, is = isObject(document) && isObject(document.createElement);
  module
.exports = function(it){
   
return is ? document.createElement(it) : {};
 
};

/***/ },
/* 26 */
/***/ function(module, exports, __webpack_require__) {

 
// 7.1.1 ToPrimitive(input [, PreferredType])
 
var isObject = __webpack_require__(21);
 
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
 
// and the second argument - flag - preferred type is a string
  module
.exports = function(it, S){
   
if(!isObject(it))return it;
   
var fn, val;
   
if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
   
if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;
   
if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
   
throw TypeError("Can't convert object to primitive value");
 
};

/***/ },
/* 27 */
/***/ function(module, exports) {

  module
.exports = function(bitmap, value){
   
return {
      enumerable  
: !(bitmap & 1),
      configurable
: !(bitmap & 2),
      writable    
: !(bitmap & 4),
      value      
: value
   
};
 
};

/***/ },
/* 28 */
/***/ function(module, exports, __webpack_require__) {

  module
.exports = __webpack_require__(18);

/***/ },
/* 29 */
/***/ function(module, exports) {

 
var hasOwnProperty = {}.hasOwnProperty;
  module
.exports = function(it, key){
   
return hasOwnProperty.call(it, key);
 
};

/***/ },
/* 30 */
/***/ function(module, exports) {

  module
.exports = {};

/***/ },
/* 31 */
/***/ function(module, exports, __webpack_require__) {

 
'use strict';
 
var create         = __webpack_require__(32)
   
, descriptor     = __webpack_require__(27)
   
, setToStringTag = __webpack_require__(47)
   
, IteratorPrototype = {};

 
// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
  __webpack_require__
(18)(IteratorPrototype, __webpack_require__(48)('iterator'), function(){ return this; });

  module
.exports = function(Constructor, NAME, next){
   
Constructor.prototype = create(IteratorPrototype, {next: descriptor(1, next)});
    setToStringTag
(Constructor, NAME + ' Iterator');
 
};

/***/ },
/* 32 */
/***/ function(module, exports, __webpack_require__) {

 
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
 
var anObject    = __webpack_require__(20)
   
, dPs         = __webpack_require__(33)
   
, enumBugKeys = __webpack_require__(45)
   
, IE_PROTO    = __webpack_require__(42)('IE_PROTO')
   
, Empty       = function(){ /* empty */ }
   
, PROTOTYPE   = 'prototype';

 
// Create object with fake `null` prototype: use iframe Object with cleared prototype
 
var createDict = function(){
   
// Thrash, waste and sodomy: IE GC bug
   
var iframe = __webpack_require__(25)('iframe')
     
, i      = enumBugKeys.length
     
, gt     = '>'
     
, iframeDocument;
    iframe
.style.display = 'none';
    __webpack_require__
(46).appendChild(iframe);
    iframe
.src = 'javascript:'; // eslint-disable-line no-script-url
   
// createDict = iframe.contentWindow.Object;
   
// html.removeChild(iframe);
    iframeDocument
= iframe.contentWindow.document;
    iframeDocument
.open();
    iframeDocument
.write('<script>document.F=Object</script' + gt);
    iframeDocument.close();
    createDict = iframeDocument.F;
    while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];
    return createDict();
  };

  module.exports = Object.create || function create(O, Properties){
    var result;
    if(O !== null){
      Empty[PROTOTYPE] = anObject(O);
      result = new Empty;
      Empty[PROTOTYPE] = null;
      // add "__proto__" for Object.getPrototypeOf polyfill
      result[IE_PROTO] = O;
    } else result = createDict();
    return Properties === undefined ? result : dPs(result, Properties);
  };

/***/ },
/* 33 */
/***/ function(module, exports, __webpack_require__) {

  var dP       = __webpack_require__(19)
    , anObject = __webpack_require__(20)
    , getKeys  = __webpack_require__(34);

  module.exports = __webpack_require__(23) ? Object.defineProperties : function defineProperties(O, Properties){
    anObject(O);
    var keys   = getKeys(Properties)
      , length = keys.length
      , i = 0
      , P;
    while(length >
i)dP.f(O, P = keys[i++], Properties[P]);
    return O;
  };

/***/ },
/* 34 */
/***/ function(module, exports, __webpack_require__) {

  // 19.1.2.14 / 15.2.3.14 Object.keys(O)
  var $keys       = __webpack_require__(35)
    , enumBugKeys = __webpack_require__(45);

  module.exports = Object.keys || function keys(O){
    return $keys(O, enumBugKeys);
  };

/***/ },
/* 35 */
/***/ function(module, exports, __webpack_require__) {

  var has          = __webpack_require__(29)
    , toIObject    = __webpack_require__(36)
    , arrayIndexOf = __webpack_require__(39)(false)
    , IE_PROTO     = __webpack_require__(42)('IE_PROTO');

  module.exports = function(object, names){
    var O      = toIObject(object)
      , i      = 0
      , result = []
      , key;
    for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);
    // Don't enum bug & hidden keys
    while(names.length > i)if(has(O, key = names[i++])){
      ~arrayIndexOf(result, key) || result.push(key);
    }
    return result;
  };

/***/ },
/* 36 */
/***/ function(module, exports, __webpack_require__) {

  // to indexed object, toObject with fallback for non-array-like ES3 strings
  var IObject = __webpack_require__(37)
    , defined = __webpack_require__(10);
  module.exports = function(it){
    return IObject(defined(it));
  };

/***/ },
/* 37 */
/***/ function(module, exports, __webpack_require__) {

  // fallback for non-array-like ES3 and non-enumerable old V8 strings
  var cof = __webpack_require__(38);
  module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
    return cof(it) == 'String' ? it.split('') : Object(it);
  };

/***/ },
/* 38 */
/***/ function(module, exports) {

  var toString = {}.toString;

  module.exports = function(it){
    return toString.call(it).slice(8, -1);
  };

/***/ },
/* 39 */
/***/ function(module, exports, __webpack_require__) {

  // false -> Array#indexOf
  // true  -> Array#includes
  var toIObject = __webpack_require__(36)
    , toLength  = __webpack_require__(40)
    , toIndex   = __webpack_require__(41);
  module.exports = function(IS_INCLUDES){
    return function($this, el, fromIndex){
      var O      = toIObject($this)
        , length = toLength(O.length)
        , index  = toIndex(fromIndex, length)
        , value;
      // Array#includes uses SameValueZero equality algorithm
      if(IS_INCLUDES && el != el)while(length > index){
        value = O[index++];
        if(value != value)return true;
      // Array#toIndex ignores holes, Array#includes - not
      } else for(;length > index; index++)if(IS_INCLUDES || index in O){
        if(O[index] === el)return IS_INCLUDES || index || 0;
      } return !IS_INCLUDES && -1;
    };
  };

/***/ },
/* 40 */
/***/ function(module, exports, __webpack_require__) {

  // 7.1.15 ToLength
  var toInteger = __webpack_require__(9)
    , min       = Math.min;
  module.exports = function(it){
    return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
  };

/***/ },
/* 41 */
/***/ function(module, exports, __webpack_require__) {

  var toInteger = __webpack_require__(9)
    , max       = Math.max
    , min       = Math.min;
  module.exports = function(index, length){
    index = toInteger(index);
    return index < 0 ? max(index + length, 0) : min(index, length);
  };

/***/ },
/* 42 */
/***/ function(module, exports, __webpack_require__) {

  var shared = __webpack_require__(43)('keys')
    , uid    = __webpack_require__(44);
  module.exports = function(key){
    return shared[key] || (shared[key] = uid(key));
  };

/***/ },
/* 43 */
/***/ function(module, exports, __webpack_require__) {

  var global = __webpack_require__(14)
    , SHARED = '__core-js_shared__'
    , store  = global[SHARED] || (global[SHARED] = {});
  module.exports = function(key){
    return store[key] || (store[key] = {});
  };

/***/ },
/* 44 */
/***/ function(module, exports) {

  var id = 0
    , px = Math.random();
  module.exports = function(key){
    return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
  };

/***/ },
/* 45 */
/***/ function(module, exports) {

  // IE 8- don't enum bug keys
  module.exports = (
    'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
  ).split(',');

/***/ },
/* 46 */
/***/ function(module, exports, __webpack_require__) {

  module.exports = __webpack_require__(14).document && document.documentElement;

/***/ },
/* 47 */
/***/ function(module, exports, __webpack_require__) {

  var def = __webpack_require__(19).f
    , has = __webpack_require__(29)
    , TAG = __webpack_require__(48)('toStringTag');

  module.exports = function(it, tag, stat){
    if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
  };

/***/ },
/* 48 */
/***/ function(module, exports, __webpack_require__) {

  var store      = __webpack_require__(43)('wks')
    , uid        = __webpack_require__(44)
    , Symbol     = __webpack_require__(14).Symbol
    , USE_SYMBOL = typeof Symbol == 'function';

  var $exports = module.exports = function(name){
    return store[name] || (store[name] =
      USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
  };

  $exports.store = store;

/***/ },
/* 49 */
/***/ function(module, exports, __webpack_require__) {

  // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
  var has         = __webpack_require__(29)
    , toObject    = __webpack_require__(50)
    , IE_PROTO    = __webpack_require__(42)('IE_PROTO')
    , ObjectProto = Object.prototype;

  module.exports = Object.getPrototypeOf || function(O){
    O = toObject(O);
    if(has(O, IE_PROTO))return O[IE_PROTO];
    if(typeof O.constructor == 'function' && O instanceof O.constructor){
      return O.constructor.prototype;
    } return O instanceof Object ? ObjectProto : null;
  };

/***/ },
/* 50 */
/***/ function(module, exports, __webpack_require__) {

  // 7.1.13 ToObject(argument)
  var defined = __webpack_require__(10);
  module.exports = function(it){
    return Object(defined(it));
  };

/***/ },
/* 51 */
/***/ function(module, exports, __webpack_require__) {

  __webpack_require__(52);
  var global        = __webpack_require__(14)
    , hide          = __webpack_require__(18)
    , Iterators     = __webpack_require__(30)
    , TO_STRING_TAG = __webpack_require__(48)('toStringTag');

  for(var collections = ['NodeList', 'DOMTokenList', 'MediaList', 'StyleSheetList', 'CSSRuleList'], i = 0; i < 5; i++){
    var NAME       = collections[i]
      , Collection = global[NAME]
      , proto      = Collection && Collection.prototype;
    if(proto && !proto[TO_STRING_TAG])hide(proto, TO_STRING_TAG, NAME);
    Iterators[NAME] = Iterators.Array;
  }

/***/ },
/* 52 */
/***/ function(module, exports, __webpack_require__) {

  'use strict';
  var addToUnscopables = __webpack_require__(53)
    , step             = __webpack_require__(54)
    , Iterators        = __webpack_require__(30)
    , toIObject        = __webpack_require__(36);

  // 22.1.3.4 Array.prototype.entries()
  // 22.1.3.13 Array.prototype.keys()
  // 22.1.3.29 Array.prototype.values()
  // 22.1.3.30 Array.prototype[@@iterator]()
  module.exports = __webpack_require__(11)(Array, 'Array', function(iterated, kind){
    this._t = toIObject(iterated); // target
    this._i = 0;                   // next index
    this._k = kind;                // kind
  // 22.1.5.2.1 %ArrayIteratorPrototype%.next()
  }, function(){
    var O     = this._t
      , kind  = this._k
      , index = this._i++;
    if(!O || index >= O.length){
      this._t = undefined;
      return step(1);
    }
    if(kind == 'keys'  )return step(0, index);
    if(kind == 'values')return step(0, O[index]);
    return step(0, [index, O[index]]);
  }, 'values');

  // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
  Iterators.Arguments = Iterators.Array;

  addToUnscopables('keys');
  addToUnscopables('values');
  addToUnscopables('entries');

/***/ },
/* 53 */
/***/ function(module, exports) {

  module.exports = function(){ /* empty */ };

/***/ },
/* 54 */
/***/ function(module, exports) {

  module.exports = function(done, value){
    return {value: value, done: !!done};
  };

/***/ },
/* 55 */
/***/ function(module, exports, __webpack_require__) {

  exports.f = __webpack_require__(48);

/***/ },
/* 56 */
/***/ function(module, exports, __webpack_require__) {

  module.exports = { "default": __webpack_require__(57), __esModule: true };

/***/ },
/* 57 */
/***/ function(module, exports, __webpack_require__) {

  __webpack_require__(58);
  __webpack_require__(69);
  __webpack_require__(70);
  __webpack_require__(71);
  module.exports = __webpack_require__(15).Symbol;

/***/ },
/* 58 */
/***/ function(module, exports, __webpack_require__) {

  'use strict';
  // ECMAScript 6 symbols shim
  var global         = __webpack_require__(14)
    , has            = __webpack_require__(29)
    , DESCRIPTORS    = __webpack_require__(23)
    , $export        = __webpack_require__(13)
    , redefine       = __webpack_require__(28)
    , META           = __webpack_require__(59).KEY
    , $fails         = __webpack_require__(24)
    , shared         = __webpack_require__(43)
    , setToStringTag = __webpack_require__(47)
    , uid            = __webpack_require__(44)
    , wks            = __webpack_require__(48)
    , wksExt         = __webpack_require__(55)
    , wksDefine      = __webpack_require__(60)
    , keyOf          = __webpack_require__(61)
    , enumKeys       = __webpack_require__(62)
    , isArray        = __webpack_require__(65)
    , anObject       = __webpack_require__(20)
    , toIObject      = __webpack_require__(36)
    , toPrimitive    = __webpack_require__(26)
    , createDesc     = __webpack_require__(27)
    , _create        = __webpack_require__(32)
    , gOPNExt        = __webpack_require__(66)
    , $GOPD          = __webpack_require__(68)
    , $DP            = __webpack_require__(19)
    , $keys          = __webpack_require__(34)
    , gOPD           = $GOPD.f
    , dP             = $DP.f
    , gOPN           = gOPNExt.f
    , $Symbol        = global.Symbol
    , $JSON          = global.JSON
    , _stringify     = $JSON && $JSON.stringify
    , PROTOTYPE      = 'prototype'
    , HIDDEN         = wks('_hidden')
    , TO_PRIMITIVE   = wks('toPrimitive')
    , isEnum         = {}.propertyIsEnumerable
    , SymbolRegistry = shared('symbol-registry')
    , AllSymbols     = shared('symbols')
    , OPSymbols      = shared('op-symbols')
    , ObjectProto    = Object[PROTOTYPE]
    , USE_NATIVE     = typeof $Symbol == 'function'
    , QObject        = global.QObject;
  // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
  var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

  // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
  var setSymbolDesc = DESCRIPTORS && $fails(function(){
    return _create(dP({}, 'a', {
      get: function(){ return dP(this, 'a', {value: 7}).a; }
    })).a != 7;
  }) ? function(it, key, D){
    var protoDesc = gOPD(ObjectProto, key);
    if(protoDesc)delete ObjectProto[key];
    dP(it, key, D);
    if(protoDesc && it !== ObjectProto)dP(ObjectProto, key, protoDesc);
  } : dP;

  var wrap = function(tag){
    var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
    sym._k = tag;
    return sym;
  };

  var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function(it){
    return typeof it == 'symbol';
  } : function(it){
    return it instanceof $Symbol;
  };

  var $defineProperty = function defineProperty(it, key, D){
    if(it === ObjectProto)$defineProperty(OPSymbols, key, D);
    anObject(it);
    key = toPrimitive(key, true);
    anObject(D);
    if(has(AllSymbols, key)){
      if(!D.enumerable){
        if(!has(it, HIDDEN))dP(it, HIDDEN, createDesc(1, {}));
        it[HIDDEN][key] = true;
      } else {
        if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
        D = _create(D, {enumerable: createDesc(0, false)});
      } return setSymbolDesc(it, key, D);
    } return dP(it, key, D);
  };
  var $defineProperties = function defineProperties(it, P){
    anObject(it);
    var keys = enumKeys(P = toIObject(P))
      , i    = 0
      , l = keys.length
      , key;
    while(l > i)$defineProperty(it, key = keys[i++], P[key]);
    return it;
  };
  var $create = function create(it, P){
    return P === undefined ? _create(it) : $defineProperties(_create(it), P);
  };
  var $propertyIsEnumerable = function propertyIsEnumerable(key){
    var E = isEnum.call(this, key = toPrimitive(key, true));
    if(this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return false;
    return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
  };
  var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){
    it  = toIObject(it);
    key = toPrimitive(key, true);
    if(it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return;
    var D = gOPD(it, key);
    if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;
    return D;
  };
  var $getOwnPropertyNames = function getOwnPropertyNames(it){
    var names  = gOPN(toIObject(it))
      , result = []
      , i      = 0
      , key;
    while(names.length > i){
      if(!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META)result.push(key);
    } return result;
  };
  var $getOwnPropertySymbols = function getOwnPropertySymbols(it){
    var IS_OP  = it === ObjectProto
      , names  = gOPN(IS_OP ? OPSymbols : toIObject(it))
      , result = []
      , i      = 0
      , key;
    while(names.length > i){
      if(has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true))result.push(AllSymbols[key]);
    } return result;
  };

  // 19.4.1.1 Symbol([description])
  if(!USE_NATIVE){
    $Symbol = function Symbol(){
      if(this instanceof $Symbol)throw TypeError('Symbol is not a constructor!');
      var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
      var $set = function(value){
        if(this === ObjectProto)$set.call(OPSymbols, value);
        if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
        setSymbolDesc(this, tag, createDesc(1, value));
      };
      if(DESCRIPTORS && setter)setSymbolDesc(ObjectProto, tag, {configurable: true, set: $set});
      return wrap(tag);
    };
    redefine($Symbol[PROTOTYPE], 'toString', function toString(){
      return this._k;
    });

    $GOPD.f = $getOwnPropertyDescriptor;
    $DP.f   = $defineProperty;
    __webpack_require__(67).f = gOPNExt.f = $getOwnPropertyNames;
    __webpack_require__(64).f  = $propertyIsEnumerable;
    __webpack_require__(63).f = $getOwnPropertySymbols;

    if(DESCRIPTORS && !__webpack_require__(12)){
      redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
    }

    wksExt.f = function(name){
      return wrap(wks(name));
    }
  }

  $export($export.G + $export.W + $export.F * !USE_NATIVE, {Symbol: $Symbol});

  for(var symbols = (
    // 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
    'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
  ).split(','), i = 0; symbols.length > i; )wks(symbols[i++]);

  for(var symbols = $keys(wks.store), i = 0; symbols.length > i; )wksDefine(symbols[i++]);

  $export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
    // 19.4.2.1 Symbol.for(key)
    'for': function(key){
      return has(SymbolRegistry, key += '')
        ? SymbolRegistry[key]
        : SymbolRegistry[key] = $Symbol(key);
    },
    // 19.4.2.5 Symbol.keyFor(sym)
    keyFor: function keyFor(key){
      if(isSymbol(key))return keyOf(SymbolRegistry, key);
      throw TypeError(key + ' is not a symbol!');
    },
    useSetter: function(){ setter = true; },
    useSimple: function(){ setter = false; }
  });

  $export($export.S + $export.F * !USE_NATIVE, 'Object', {
    // 19.1.2.2 Object.create(O [, Properties])
    create: $create,
    // 19.1.2.4 Object.defineProperty(O, P, Attributes)
    defineProperty: $defineProperty,
    // 19.1.2.3 Object.defineProperties(O, Properties)
    defineProperties: $defineProperties,
    // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
    getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
    // 19.1.2.7 Object.getOwnPropertyNames(O)
    getOwnPropertyNames: $getOwnPropertyNames,
    // 19.1.2.8 Object.getOwnPropertySymbols(O)
    getOwnPropertySymbols: $getOwnPropertySymbols
  });

  // 24.3.2 JSON.stringify(value [, replacer [, space]])
  $JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function(){
    var S = $Symbol();
    // MS Edge converts symbol values to JSON as {}
    // WebKit converts symbol values to JSON as null
    // V8 throws on boxed symbols
    return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';
  })), 'JSON', {
    stringify: function stringify(it){
      if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined
      var args = [it]
        , i    = 1
        , replacer, $replacer;
      while(arguments.length > i)args.push(arguments[i++]);
      replacer = args[1];
      if(typeof replacer == 'function')$replacer = replacer;
      if($replacer || !isArray(replacer))replacer = function(key, value){
        if($replacer)value = $replacer.call(this, key, value);
        if(!isSymbol(value))return value;
      };
      args[1] = replacer;
      return _stringify.apply($JSON, args);
    }
  });

  // 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
  $Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(18)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
  // 19.4.3.5 Symbol.prototype[@@toStringTag]
  setToStringTag($Symbol, 'Symbol');
  // 20.2.1.9 Math[@@toStringTag]
  setToStringTag(Math, 'Math', true);
  // 24.3.3 JSON[@@toStringTag]
  setToStringTag(global.JSON, 'JSON', true);

/***/ },
/* 59 */
/***/ function(module, exports, __webpack_require__) {

  var META     = __webpack_require__(44)('meta')
    , isObject = __webpack_require__(21)
    , has      = __webpack_require__(29)
    , setDesc  = __webpack_require__(19).f
    , id       = 0;
  var isExtensible = Object.isExtensible || function(){
    return true;
  };
  var FREEZE = !__webpack_require__(24)(function(){
    return isExtensible(Object.preventExtensions({}));
  });
  var setMeta = function(it){
    setDesc(it, META, {value: {
      i: 'O' + ++id, // object ID
      w: {}          // weak collections IDs
    }});
  };
  var fastKey = function(it, create){
    // return primitive with prefix
    if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
    if(!has(it, META)){
      // can't set metadata to uncaught frozen object
      if(!isExtensible(it))return 'F';
      // not necessary to add metadata
      if(!create)return 'E';
      // add missing metadata
      setMeta(it);
    // return object ID
    } return it[META].i;
  };
  var getWeak = function(it, create){
    if(!has(it, META)){
      // can't set metadata to uncaught frozen object
      if(!isExtensible(it))return true;
      // not necessary to add metadata
      if(!create)return false;
      // add missing metadata
      setMeta(it);
    // return hash weak collections IDs
    } return it[META].w;
  };
  // add metadata on freeze-family methods calling
  var onFreeze = function(it){
    if(FREEZE && meta.NEED && isExtensible(it) && !has(it, META))setMeta(it);
    return it;
  };
  var meta = module.exports = {
    KEY:      META,
    NEED:     false,
    fastKey:  fastKey,
    getWeak:  getWeak,
    onFreeze: onFreeze
  };

/***/ },
/* 60 */
/***/ function(module, exports, __webpack_require__) {

  var global         = __webpack_require__(14)
    , core           = __webpack_require__(15)
    , LIBRARY        = __webpack_require__(12)
    , wksExt         = __webpack_require__(55)
    , defineProperty = __webpack_require__(19).f;
  module.exports = function(name){
    var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
    if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)});
  };

/***/ },
/* 61 */
/***/ function(module, exports, __webpack_require__) {

  var getKeys   = __webpack_require__(34)
    , toIObject = __webpack_require__(36);
  module.exports = function(object, el){
    var O      = toIObject(object)
      , keys   = getKeys(O)
      , length = keys.length
      , index  = 0
      , key;
    while(length > index)if(O[key = keys[index++]] === el)return key;
  };

/***/ },
/* 62 */
/***/ function(module, exports, __webpack_require__) {

  // all enumerable object keys, includes symbols
  var getKeys = __webpack_require__(34)
    , gOPS    = __webpack_require__(63)
    , pIE     = __webpack_require__(64);
  module.exports = function(it){
    var result     = getKeys(it)
      , getSymbols = gOPS.f;
    if(getSymbols){
      var symbols = getSymbols(it)
        , isEnum  = pIE.f
        , i       = 0
        , key;
      while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))result.push(key);
    } return result;
  };

/***/ },
/* 63 */
/***/ function(module, exports) {

  exports.f = Object.getOwnPropertySymbols;

/***/ },
/* 64 */
/***/ function(module, exports) {

  exports.f = {}.propertyIsEnumerable;

/***/ },
/* 65 */
/***/ function(module, exports, __webpack_require__) {

  // 7.2.2 IsArray(argument)
  var cof = __webpack_require__(38);
  module.exports = Array.isArray || function isArray(arg){
    return cof(arg) == 'Array';
  };

/***/ },
/* 66 */
/***/ function(module, exports, __webpack_require__) {

  // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
  var toIObject = __webpack_require__(36)
    , gOPN      = __webpack_require__(67).f
    , toString  = {}.toString;

  var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
    ? Object.getOwnPropertyNames(window) : [];

  var getWindowNames = function(it){
    try {
      return gOPN(it);
    } catch(e){
      return windowNames.slice();
    }
  };

  module.exports.f = function getOwnPropertyNames(it){
    return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
  };


/***/ },
/* 67 */
/***/ function(module, exports, __webpack_require__) {

  // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
  var $keys      = __webpack_require__(35)
    , hiddenKeys = __webpack_require__(45).concat('length', 'prototype');

  exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O){
    return $keys(O, hiddenKeys);
  };

/***/ },
/* 68 */
/***/ function(module, exports, __webpack_require__) {

  var pIE            = __webpack_require__(64)
    , createDesc     = __webpack_require__(27)
    , toIObject      = __webpack_require__(36)
    , toPrimitive    = __webpack_require__(26)
    , has            = __webpack_require__(29)
    , IE8_DOM_DEFINE = __webpack_require__(22)
    , gOPD           = Object.getOwnPropertyDescriptor;

  exports.f = __webpack_require__(23) ? gOPD : function getOwnPropertyDescriptor(O, P){
    O = toIObject(O);
    P = toPrimitive(P, true);
    if(IE8_DOM_DEFINE)try {
      return gOPD(O, P);
    } catch(e){ /* empty */ }
    if(has(O, P))return createDesc(!pIE.f.call(O, P), O[P]);
  };

/***/ },
/* 69 */
/***/ function(module, exports) {

 

/***/ },
/* 70 */
/***/ function(module, exports, __webpack_require__) {

  __webpack_require__(60)('asyncIterator');

/***/ },
/* 71 */
/***/ function(module, exports, __webpack_require__) {

  __webpack_require__(60)('observable');

/***/ },
/* 72 */
/***/ function(module, exports, __webpack_require__) {

  "use strict";

  exports.__esModule = true;

  var _setPrototypeOf = __webpack_require__(73);

  var _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf);

  var _create = __webpack_require__(77);

  var _create2 = _interopRequireDefault(_create);

  var _typeof2 = __webpack_require__(4);

  var _typeof3 = _interopRequireDefault(_typeof2);

  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

  exports.default = function (subClass, superClass) {
    if (typeof superClass !== "function" && superClass !== null) {
      throw new TypeError("Super expression must either be null or a function, not " + (typeof superClass === "undefined" ? "undefined" : (0, _typeof3.default)(superClass)));
    }

    subClass.prototype = (0, _create2.default)(superClass && superClass.prototype, {
      constructor: {
        value: subClass,
        enumerable: false,
        writable: true,
        configurable: true
      }
    });
    if (superClass) _setPrototypeOf2.default ? (0, _setPrototypeOf2.default)(subClass, superClass) : subClass.__proto__ = superClass;
  };

/***/ },
/* 73 */
/***/ function(module, exports, __webpack_require__) {

  module.exports = { "default": __webpack_require__(74), __esModule: true };

/***/ },
/* 74 */
/***/ function(module, exports, __webpack_require__) {

  __webpack_require__(75);
  module.exports = __webpack_require__(15).Object.setPrototypeOf;

/***/ },
/* 75 */
/***/ function(module, exports, __webpack_require__) {

  // 19.1.3.19 Object.setPrototypeOf(O, proto)
  var $export = __webpack_require__(13);
  $export($export.S, 'Object', {setPrototypeOf: __webpack_require__(76).set});

/***/ },
/* 76 */
/***/ function(module, exports, __webpack_require__) {

  // Works with __proto__ only. Old v8 can't work with null proto objects.
  /* eslint-disable no-proto */
  var isObject = __webpack_require__(21)
    , anObject = __webpack_require__(20);
  var check = function(O, proto){
    anObject(O);
    if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
  };
  module.exports = {
    set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
      function(test, buggy, set){
        try {
          set = __webpack_require__(16)(Function.call, __webpack_require__(68).f(Object.prototype, '__proto__').set, 2);
          set(test, []);
          buggy = !(test instanceof Array);
        } catch(e){ buggy = true; }
        return function setPrototypeOf(O, proto){
          check(O, proto);
          if(buggy)O.__proto__ = proto;
          else set(O, proto);
          return O;
        };
      }({}, false) : undefined),
    check: check
  };

/***/ },
/* 77 */
/***/ function(module, exports, __webpack_require__) {

  module.exports = { "default": __webpack_require__(78), __esModule: true };

/***/ },
/* 78 */
/***/ function(module, exports, __webpack_require__) {

  __webpack_require__(79);
  var $Object = __webpack_require__(15).Object;
  module.exports = function create(P, D){
    return $Object.create(P, D);
  };

/***/ },
/* 79 */
/***/ function(module, exports, __webpack_require__) {

  var $export = __webpack_require__(13)
  // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
  $export($export.S, 'Object', {create: __webpack_require__(32)});

/***/ },
/* 80 */
/***/ function(module, exports) {

  /*
   * classList.js: Cross-browser full element.classList implementation.
   * 2014-07-23
   *
   * By Eli Grey, https://eligrey.com
   * Public Domain.
   * NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
   */

  /*global self, document, DOMException */

  /*! @source https://purl.eligrey.com/github/classList.js/blob/master/classList.js*/

  /* Copied from MDN:
   * https://developer.mozilla.org/en-US/docs/Web/API/Element/classList
   */

  if ("document" in window.self) {

    // Full polyfill for browsers with no classList support
    // Including IE < Edge missing SVGElement.classList
    if (!("classList" in document.createElement("_"))
      || document.createElementNS && !("classList" in document.createElementNS("http://www.w3.org/2000/svg","g"))) {

    (function (view) {

      "use strict";

      if (!('Element' in view)) return;

      var
          classListProp = "classList"
        , protoProp = "prototype"
        , elemCtrProto = view.Element[protoProp]
        , objCtr = Object
        , strTrim = String[protoProp].trim || function () {
          return this.replace(/^\s+|\s+$/g, "");
        }
        , arrIndexOf = Array[protoProp].indexOf || function (item) {
          var
              i = 0
            , len = this.length
          ;
          for (; i < len; i++) {
            if (i in this && this[i] === item) {
              return i;
            }
          }
          return -1;
        }
        // Vendors: please allow content code to instantiate DOMExceptions
        , DOMEx = function (type, message) {
          this.name = type;
          this.code = DOMException[type];
          this.message = message;
        }
        , checkTokenAndGetIndex = function (classList, token) {
          if (token === "") {
            throw new DOMEx(
                "SYNTAX_ERR"
              , "An invalid or illegal string was specified"
            );
          }
          if (/\s/.test(token)) {
            throw new DOMEx(
                "INVALID_CHARACTER_ERR"
              , "String contains an invalid character"
            );
          }
          return arrIndexOf.call(classList, token);
        }
        , ClassList = function (elem) {
          var
              trimmedClasses = strTrim.call(elem.getAttribute("class") || "")
            , classes = trimmedClasses ? trimmedClasses.split(/\s+/) : []
            , i = 0
            , len = classes.length
          ;
          for (; i < len; i++) {
            this.push(classes[i]);
          }
          this._updateClassName = function () {
            elem.setAttribute("class", this.toString());
          };
        }
        , classListProto = ClassList[protoProp] = []
        , classListGetter = function () {
          return new ClassList(this);
        }
      ;
      // Most DOMException implementations don't allow calling DOMException's toString()
      // on non-DOMExceptions. Error's toString() is sufficient here.
      DOMEx[protoProp] = Error[protoProp];
      classListProto.item = function (i) {
        return this[i] || null;
      };
      classListProto.contains = function (token) {
        token += "";
        return checkTokenAndGetIndex(this, token) !== -1;
      };
      classListProto.add = function () {
        var
            tokens = arguments
          , i = 0
          , l = tokens.length
          , token
          , updated = false
        ;
        do {
          token = tokens[i] + "";
          if (checkTokenAndGetIndex(this, token) === -1) {
            this.push(token);
            updated = true;
          }
        }
        while (++i < l);

        if (updated) {
          this._updateClassName();
        }
      };
      classListProto.remove = function () {
        var
            tokens = arguments
          , i = 0
          , l = tokens.length
          , token
          , updated = false
          , index
        ;
        do {
          token = tokens[i] + "";
          index = checkTokenAndGetIndex(this, token);
          while (index !== -1) {
            this.splice(index, 1);
            updated = true;
            index = checkTokenAndGetIndex(this, token);
          }
        }
        while (++i < l);

        if (updated) {
          this._updateClassName();
        }
      };
      classListProto.toggle = function (token, force) {
        token += "";

        var
            result = this.contains(token)
          , method = result ?
            force !== true && "remove"
          :
            force !== false && "add"
        ;

        if (method) {
          this[method](token);
        }

        if (force === true || force === false) {
          return force;
        } else {
          return !result;
        }
      };
      classListProto.toString = function () {
        return this.join(" ");
      };

      if (objCtr.defineProperty) {
        var classListPropDesc = {
            get: classListGetter
          , enumerable: true
          , configurable: true
        };
        try {
          objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);
        } catch (ex) { // IE 8 doesn't support enumerable:true
          if (ex.number === -0x7FF5EC54) {
            classListPropDesc.enumerable = false;
            objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);
          }
        }
      } else if (objCtr[protoProp].__defineGetter__) {
        elemCtrProto.__defineGetter__(classListProp, classListGetter);
      }

      }(window.self));

      } else {
      // There is full or partial native classList support, so just check if we need
      // to normalize the add/remove and toggle APIs.

      (function () {
        "use strict";

        var testElement = document.createElement("_");

        testElement.classList.add("c1", "c2");

        // Polyfill for IE 10/11 and Firefox <26, where classList.add and
        // classList.remove exist but support only one argument at a time.
        if (!testElement.classList.contains("c2")) {
          var createMethod = function(method) {
            var original = DOMTokenList.prototype[method];

            DOMTokenList.prototype[method] = function(token) {
              var i, len = arguments.length;

              for (i = 0; i < len; i++) {
                token = arguments[i];
                original.call(this, token);
              }
            };
          };
          createMethod('add');
          createMethod('remove');
        }

        testElement.classList.toggle("c3", false);

        // Polyfill for IE 10 and Firefox <24, where classList.toggle does not
        // support the second argument.
        if (testElement.classList.contains("c3")) {
          var _toggle = DOMTokenList.prototype.toggle;

          DOMTokenList.prototype.toggle = function(token, force) {
            if (1 in arguments && !this.contains(token) === !force) {
              return force;
            } else {
              return _toggle.call(this, token);
            }
          };

        }

        testElement = null;
      }());
    }
  }


/***/ },
/* 81 */
/***/ function(module, exports, __webpack_require__) {

  /*!
    :: MojsPlayer :: Player controls for [mojs](mojs.io). Intended to help you to craft `mojs` animation sequences.
    Oleg Solomka @LegoMushroom 2016 MIT
    0.43.15
  */

  (function webpackUniversalModuleDefinition(root, factory) {
    if(true)
      module.exports = factory();
    else if(typeof define === 'function' && define.amd)
      define("mojs-player", [], factory);
    else if(typeof exports === 'object')
      exports["mojs-player"] = factory();
    else
      root["mojs-player"] = factory();
  })(this, function() {
  return /******/ (function(modules) { // webpackBootstrap
  /******/  // The module cache
  /******/  var installedModules = {};

  /******/  // The require function
  /******/  function __webpack_require__(moduleId) {

  /******/    // Check if module is in cache
  /******/    if(installedModules[moduleId])
  /******/      return installedModules[moduleId].exports;

  /******/    // Create a new module (and put it into the cache)
  /******/    var module = installedModules[moduleId] = {
  /******/      exports: {},
  /******/      id: moduleId,
  /******/      loaded: false
  /******/    };

  /******/    // Execute the module function
  /******/    modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);

  /******/    // Flag the module as loaded
  /******/    module.loaded = true;

  /******/    // Return the exports of the module
  /******/    return module.exports;
  /******/  }


  /******/  // expose the modules object (__webpack_modules__)
  /******/  __webpack_require__.m = modules;

  /******/  // expose the module cache
  /******/  __webpack_require__.c = installedModules;

  /******/  // __webpack_public_path__
  /******/  __webpack_require__.p = "build/";

  /******/  // Load entry module and return exports
  /******/  return __webpack_require__(0);
  /******/ })
  /************************************************************************/
  /******/ ([
  /* 0 */
  /***/ function(module, exports, __webpack_require__) {

    module.exports = __webpack_require__(1);


  /***/ },
  /* 1 */
  /***/ function(module, exports, __webpack_require__) {

    var __WEBPACK_AMD_DEFINE_RESULT__;/* WEBPACK VAR INJECTION */(function(module, global) {'use strict';

    exports.__esModule = true;

    var _typeof2 = __webpack_require__(3);

    var _typeof3 = _interopRequireDefault(_typeof2);

    var _stringify = __webpack_require__(71);

    var _stringify2 = _interopRequireDefault(_stringify);

    var _extends2 = __webpack_require__(73);

    var _extends3 = _interopRequireDefault(_extends2);

    var _classCallCheck2 = __webpack_require__(78);

    var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);

    var _possibleConstructorReturn2 = __webpack_require__(79);

    var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);

    var _inherits2 = __webpack_require__(80);

    var _inherits3 = _interopRequireDefault(_inherits2);

    var _classlistPolyfill = __webpack_require__(88);

    var _classlistPolyfill2 = _interopRequireDefault(_classlistPolyfill);

    var _icons = __webpack_require__(89);

    var _icons2 = _interopRequireDefault(_icons);

    var _module = __webpack_require__(90);

    var _module2 = _interopRequireDefault(_module);

    var _playerSlider = __webpack_require__(91);

    var _playerSlider2 = _interopRequireDefault(_playerSlider);

    var _iconButton = __webpack_require__(111);

    var _iconButton2 = _interopRequireDefault(_iconButton);

    var _speedControl = __webpack_require__(123);

    var _speedControl2 = _interopRequireDefault(_speedControl);

    var _playButton = __webpack_require__(135);

    var _playButton2 = _interopRequireDefault(_playButton);

    var _stopButton = __webpack_require__(143);

    var _stopButton2 = _interopRequireDefault(_stopButton);

    var _repeatButton = __webpack_require__(147);

    var _repeatButton2 = _interopRequireDefault(_repeatButton);

    var _boundsButton = __webpack_require__(155);

    var _boundsButton2 = _interopRequireDefault(_boundsButton);

    var _hideButton = __webpack_require__(156);

    var _hideButton2 = _interopRequireDefault(_hideButton);

    function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

    // TODO
    // fix timeline reset if progress === 1

    __webpack_require__(160);
    var CLASSES = __webpack_require__(162);

    var MojsPlayer = function (_Module) {
      (0, _inherits3.default)(MojsPlayer, _Module);

      function MojsPlayer(o) {
        (0, _classCallCheck3.default)(this, MojsPlayer);

        if (typeof mojs === 'undefined') {
          throw new Error('MojsPlayer relies on mojs^0.225.2, please include it before player initialization. [ https://github.com/legomushroom/mojs ] ');
        }
        return (0, _possibleConstructorReturn3.default)(this, _Module.call(this, o));
      }
      /*
        Method to declare defaults.
        @private
        @overrides @ Module
      */


      MojsPlayer.prototype._declareDefaults = function _declareDefaults() {
        _Module.prototype._declareDefaults.call(this);

        this._defaults.isSaveState = true;
        this._defaults.isPlaying = false;
        this._defaults.progress = 0;
        this._defaults.isRepeat = false;
        this._defaults.isBounds = false;
        this._defaults.leftBound = 0;
        this._defaults.rightBound = 1;
        this._defaults.isSpeed = false;
        this._defaults.speed = 1;
        this._defaults.isHidden = false;
        this._defaults.precision = 0.1;
        this._defaults.name = 'mojs-player';

        this.revision = '0.43.15';

        var str = this._fallbackTo(this._o.name, this._defaults.name);
        str += str === this._defaults.name ? '' : '__' + this._defaults.name;
        this._localStorage = str + '__' + this._hashCode(str);
      };
      /*
        Method to copy `_o` options to `_props` object
        with fallback to `localStorage` and `_defaults`.
        @private
      */


      MojsPlayer.prototype._extendDefaults = function _extendDefaults() {
        this._props = {};
        var p = this._props,
            o = this._o,
            defs = this._defaults;

        // get localstorage regarding isSaveState option
        p.isSaveState = this._fallbackTo(o.isSaveState, defs.isSaveState);
        var m = p.isSaveState ? JSON.parse(localStorage.getItem(this._localStorage)) || {} : {};

        for (var key in defs) {
          var value = this._fallbackTo(m[key], o[key]);
          this._assignProp(key, this._fallbackTo(value, defs[key]));
        }
        // get raw-speed option
        this._props['raw-speed'] = this._fallbackTo(m['raw-speed'], .5);
      };
      /*
        Callback for keyup on document.
        @private
        @param {Object} Original event object.
      */


      MojsPlayer.prototype._keyUp = function _keyUp(e) {
        if (e.altKey) {
          switch (e.keyCode) {
            case 80:
              // alt + P => PLAY/PAUSE TOGGLE
              this._props.isPlaying = !this._props.isPlaying;
              this._onPlayStateChange(this._props.isPlaying);
              break;
            case 189:
              // alt + - => DECREASE PROGRESS
              this.playButton.off();
              this.playerSlider.decreaseProgress(e.shiftKey ? .1 : .01);
              break;
            case 187:
              // alt + + => INCREASE PROGRESS
              this.playButton.off();
              this.playerSlider.increaseProgress(e.shiftKey ? .1 : .01);
              break;
            case 83:
              // alt + S => STOP
              this._onStop();
              break;
            case 82:
              // alt + R => REPEAT TOGGLE
              this._props.isRepeat = !this._props.isRepeat;
              var method = this._props.isRepeat ? 'on' : 'off';
              this.repeatButton[method]();
              break;
            case 66:
              // alt + B => BOUNDS TOGGLE
              this._props.isBounds = !this._props.isBounds;
              var method = this._props.isBounds ? 'on' : 'off';
              this.boundsButton[method]();
              break;
            case 72:
              // alt + H => HIDE PLAYER TOGGLE
              this._props.isHidden = !this._props.isHidden;
              this._onHideStateChange(this._props.isHidden);
              var method = this._props.isHidden ? 'on' : 'off';
              this.hideButton[method]();
              break;
            // case 49: // alt + 1 => RESET SPEED TO 1x
            case 81:
              // alt + q => RESET SPEED TO 1x
              this.speedControl.reset();
              break;
            case 50:
              // alt + 2 => DECREASE SPEEED by .05
              this.speedControl.decreaseSpeed(e.shiftKey ? .05 : .01);
              break;
            case 51:
              // alt + 3 => INCREASE SPEED by .05
              this.speedControl.increaseSpeed(e.shiftKey ? .05 : .01);
              break;
          }
        }
      };
      /*
        Method to declare properties.
        @private
        @overrides @ Module
      */


      MojsPlayer.prototype._vars = function _vars() {
        this._hideCount = 0;
      };
      /*
        Method to render the module.
        @private
        @overrides @ Module
      */


      MojsPlayer.prototype._render = function _render() {
        this._initTimeline();
        var p = this._props,
            className = 'mojs-player',
            icons = new _icons2.default({ prefix: this._props.prefix });
        _Module.prototype._render.call(this);
        // this.el.classList.add(p.classNAme );
        this.el.classList.add(CLASSES[className]);
        this.el.setAttribute('id', 'js-mojs-player');

        var left = this._createChild('div', CLASSES[className + '__left']),
            mid = this._createChild('div', CLASSES[className + '__mid']),
            right = this._createChild('div', CLASSES[className + '__right']);

        this.repeatButton = new _repeatButton2.default({
          parent: left,
          isOn: p.isRepeat,
          onStateChange: this._onRepeatStateChange.bind(this),
          prefix: this._props.prefix
        });

        this.playerSlider = new _playerSlider2.default({
          parent: mid,
          isBounds: p.isBounds,
          leftProgress: p.leftBound,
          rightProgress: p.rightBound,
          progress: p.progress,
          onLeftProgress: this._onLeftProgress.bind(this),
          onProgress: this._onProgress.bind(this),
          onRightProgress: this._onRightProgress.bind(this),
          onSeekStart: this._onSeekStart.bind(this),
          onSeekEnd: this._onSeekEnd.bind(this)
        });

        this.boundsButton = new _boundsButton2.default({
          isOn: p.isBounds,
          parent: left,
          onStateChange: this._boundsStateChange.bind(this),
          prefix: this._props.prefix
        });

        this.speedControl = new _speedControl2.default({
          parent: left,
          // progress:       p.speed,
          speed: p.speed,
          isOn: p.isSpeed,
          onSpeedChange: this._onSpeedChange.bind(this),
          onIsSpeed: this._onIsSpeed.bind(this),
          prefix: this._props.prefix
        });

        var proc = 0,
            progress = [],
            procToSpeed = [],
            speedToProc = [];

        this.stopButton = new _stopButton2.default({
          parent: left,
          isPrepend: true,
          onPointerUp: this._onStop.bind(this),
          prefix: this._props.prefix
        });

        this.playButton = new _playButton2.default({
          parent: left,
          isOn: p.isPlaying,
          isPrepend: true,
          onStateChange: this._onPlayStateChange.bind(this),
          prefix: this._props.prefix
        });

        this.mojsButton = new _iconButton2.default({
          parent: right,
          icon: 'mojs',
          target: '_blank',
          link: 'https://github.com/legomushroom/mojs-player',
          title: 'mo • js',
          prefix: this._props.prefix
        });

        this.hideButton = new _hideButton2.default({
          parent: this.el,
          className: CLASSES[className + '__hide-button'],
          isOn: p.isHidden,
          onStateChange: this._onHideStateChange.bind(this),
          prefix: this._props.prefix
        });

        this._listen();
      };
      /*
        Method to initialize event listeners.
        @private
      */


      MojsPlayer.prototype._listen = function _listen() {
        var unloadEvent = 'onpagehide' in window ? 'pagehide' : 'beforeunload';
        window.addEventListener(unloadEvent, this._onUnload.bind(this));
        document.addEventListener('keyup', this._keyUp.bind(this));
      };
      /*
        Method that is invoked when user touches the track.
        @private
        @param {Object} Original event object.
      */


      MojsPlayer.prototype._onSeekStart = function _onSeekStart(e) {
        this._sysTween.pause();
      };
      /*
        Method that is invoked when user touches the track.
        @private
        @param {Object} Original event object.
      */


      MojsPlayer.prototype._onSeekEnd = function _onSeekEnd(e) {
        var _this2 = this;

        clearTimeout(this._endTimer);
        this._endTimer = setTimeout(function () {
          _this2._props.isPlaying && _this2._play();
        }, 20);
      };
      /*
        Method to init timeline.
        @private
      */


      MojsPlayer.prototype._initTimeline = function _initTimeline() {
        var _this3 = this;

        this.timeline = new mojs.Timeline({});

        var add = this._o.add;
        // check whether the `add` option meets the next criterias:
        var isUndefined = typeof add === 'undefined';

        if (!isUndefined) {
          add = add.timeline || add;
        }

        var isTween = add instanceof mojs.Tween;
        var isTimeline = add instanceof mojs.Timeline;

        if (isUndefined || !(isTween || isTimeline)) {
          throw new Error('MojsPlayer expects Tween/Timeline/Module as `add` option in constructor call. [ new MojsPlayer({ add: new mojs.Tween }); ]');
          return;
        }

        this.timeline.add(this._o.add);

        this._sysTween = new mojs.Tween({
          easing: 'linear.none',
          duration: this.timeline._props.repeatTime,
          onProgress: this._onSysProgress.bind(this),
          onComplete: this._onSysTweenComplete.bind(this),
          onPlaybackStop: function onPlaybackStop() {
            _this3._setPlayState('off');
          },
          onPlaybackPause: function onPlaybackPause() {
            _this3._setPlayState('off');
          },
          onPlaybackStart: function onPlaybackStart() {
            _this3._setPlayState('on');
          }
        });
      };
      /*
        Method that is invoked on system tween progress.
        @private
        @param {Number} Progress value [0...1].
      */


      MojsPlayer.prototype._onSysProgress = function _onSysProgress(p) {
        this.playerSlider.setTrackProgress(p);

        var rightBound = this._props.isBounds ? this._props.rightBound : 1,
            leftBound = this._props.isBounds ? this._props.leftBound : -1;

        // since js is really bed in numbers precision,
        // if we set a progress in the `_play` method it returns slighly
        // different when piped thru tween, so add `0.01` gap to soften that
        if (p < leftBound - 0.01 && p !== 0) {
          this._reset();
          requestAnimationFrame(this._play.bind(this));
        }

        if (p >= rightBound) {

          this._reset(rightBound === 1);

          // if ( rightBound === 1 ) { this._sysTween.stop( ); }
          // else { this._reset() }

          if (this._props.isRepeat) {
            requestAnimationFrame(this._play.bind(this));
          } else {
            this._props.isPlaying = false;
          }
        }
      };
      /*
        Method to play system tween from progress.
        @private
      */


      MojsPlayer.prototype._play = function _play() {
        var p = this._props,
            leftBound = p.isBounds ? p.leftBound : p.progress,
            progress = p.progress >= this._getBound('right') ? leftBound : p.progress;

        if (progress === 1) {
          progress = p.isBounds ? p.leftBound : 0;
        };
        if (progress !== 0) {
          this._sysTween.setProgress(progress);
        };

        this._sysTween.play();
      };
      /*
        Method to reset sysTween and timeline.
        @param {Boolean} If should not set progress to 0.
        @private
      */


      MojsPlayer.prototype._reset = function _reset(isPause) {
        this._sysTween.reset();

        if (!isPause) {
          // this.timeline.pause();
          var p = this._props,
              progress = p.progress;

          var start = progress,
              leftBound = p.isBounds ? p.leftBound : 0;

          while (start - p.precision >= leftBound) {
            start -= p.precision;
            this.timeline.setProgress(start);
          }
        }

        this.timeline.reset();
      };
      /*
        Method to set play button state.
        @private
        @param {String} Method name to call it on playButton.
      */


      MojsPlayer.prototype._setPlayState = function _setPlayState(method) {
        var _this4 = this;

        clearTimeout(this._playTimeout);
        this._playTimeout = setTimeout(function () {
          _this4.playButton && _this4.playButton[method](false);
        }, 20);
      };
      /*
        Method that is invoked on system tween completion.
        @private
        @param {Boolean} If forward direction.
      */


      MojsPlayer.prototype._onSysTweenComplete = function _onSysTweenComplete(isForward) {}
      // console.log(' complete ', this._props.isPlaying, isForward, this._props.isRepeat);
      // if ( this._props.isPlaying && isForward ) {
      //   if ( this._props.isRepeat ) {
      //     console.log('reset 2')
      //     // this._sysTween.reset();
      //     // this._play();
      //   }
      // }

      /*
        Method that is invoked play button state change.
        @private
        @param {Boolean} Repeat button state.
      */
      ;

      MojsPlayer.prototype._onPlayStateChange = function _onPlayStateChange(isPlay) {
        this._props.isPlaying = isPlay;
        if (isPlay) {
          this._play();
        } else {
          this._sysTween.pause();
        }
      };
      /*
        Callback for hide button change state.
        @private
        @param {Boolean}
      */


      MojsPlayer.prototype._onHideStateChange = function _onHideStateChange(isHidden) {
        this._props.isHidden = isHidden;
        var method = isHidden ? 'add' : 'remove';
        this.el.classList[method](CLASSES['is-hidden']);
        // enable CSS transition on subsequent calls
        if (this._hideCount++ === 1) {
          this.el.classList.add(CLASSES['is-transition']);
        }
      };
      /*
        Method that is invoked on stop button tap.
        @private
      */


      MojsPlayer.prototype._onStop = function _onStop() {
        var p = this._props;
        p.isPlaying = false;

        var leftBound = p.isBounds ? p.leftBound : 0;
        // set sysTween progress twice because it could be _reset already
        this._sysTween.setProgress(leftBound + 0.01);
        this._sysTween.setProgress(leftBound);

        this._reset();
      };
      /*
        Method that is invoked on repeat switch state change.
        @private
        @param {Boolean} Repeat button state.
      */


      MojsPlayer.prototype._onRepeatStateChange = function _onRepeatStateChange(isOn) {
        this._props.isRepeat = isOn;
      };
      /*
        Method that is invoked on bounds switch state change.
        @private
        @param {Boolean} Bounds state.
      */


      MojsPlayer.prototype._boundsStateChange = function _boundsStateChange(isOn) {
        this.playerSlider._props.isBounds = isOn;
        this.playerSlider[(isOn ? 'enable' : 'disable') + 'Bounds']();
        this._props.isBounds = isOn;
      };
      /*
        Method that is invoked on speed value change.
        @private
        @param {Number} Speed value.
        @param {Number} Slider progress.
      */


      MojsPlayer.prototype._onSpeedChange = function _onSpeedChange(speed, progress) {
        this._props['raw-speed'] = progress;
        this._props.speed = speed;
        this._sysTween.setSpeed(speed);
      };
      /*
        Method that is invoked on speed state change.
        @private
        @param {Boolean} Speed control state.
      */


      MojsPlayer.prototype._onIsSpeed = function _onIsSpeed(isOn) {
        this._props.isSpeed = isOn;
      };
      /*
        Method that is invoked on timeline's left bound progress.
        @private
        @param {Number} Progress value [0...1].
      */


      MojsPlayer.prototype._onLeftProgress = function _onLeftProgress(progress) {
        this._props.leftBound = progress;
      };
      /*
        Method that is invoked on timeline progress.
        @private
        @param {Number} Progress value [0...1].
      */


      MojsPlayer.prototype._onProgress = function _onProgress(progress) {
        this._props.progress = progress;
        // if timeline was reset - refresh it's state
        // by incremental updates until progress (0 always)
        if (!this.timeline._prevTime && progress > 0) {
          var start = 0;
          do {
            this.timeline.setProgress(start);
            start += this._props.precision;
          } while (start + this._props.precision < progress);
        }
        this.timeline.setProgress(progress);
      };
      /*
        Method that is invoked on timeline's right bound progress.
        @private
        @param {Number} Progress value [0...1].
      */


      MojsPlayer.prototype._onRightProgress = function _onRightProgress(progress) {
        this._props.rightBound = progress;
      };
      /*
        Method that is invoked on window unload.
        @private
        @param {Object} Original even object.
      */


      MojsPlayer.prototype._onUnload = function _onUnload(e) {
        if (!this._props.isSaveState) {
          return localStorage.removeItem(this._localStorage);
        }

        var props = (0, _extends3.default)({}, this._props);
        delete props.parent;
        delete props.className;
        delete props.isSaveState;
        delete props.precision;

        localStorage.setItem(this._localStorage, (0, _stringify2.default)(props));
      };
      /*
        Method that returns the second argument if the first one isn't set.
        @private
        @param {Any} Property to set.
        @param {Any} Property to return as fallback.
        @returns {Any} If set - the first property, if not - the second.
      */


      MojsPlayer.prototype._fallbackTo = function _fallbackTo(prop, fallback) {
        return prop != null ? prop : fallback;
      };
      /*
        Method to get bound regarding isBound option.
        @private
        @param {String} Bound name.
      */


      MojsPlayer.prototype._getBound = function _getBound(boundName) {
        var p = this._props,
            fallback = boundName === 'left' ? 0 : 1;

        return p.isBounds ? p[boundName + 'Bound'] : fallback;
      };
      /*
        Method to defer a method.
        @private
        @param {Function} Function that should be defered.
      */


      MojsPlayer.prototype._defer = function _defer(fn) {
        setTimeout(fn.bind(this), 1);
      };
      /*
        Method to generate hash code.
        @private
        @return {String} Hash code.
      */


      MojsPlayer.prototype._hashCode = function _hashCode(str) {
        var hash = 0,
            i,
            chr,
            len;
        if (str.length === 0) return hash;
        for (i = 0, len = str.length; i < len; i++) {
          chr = str.charCodeAt(i);
          hash = (hash << 5) - hash + chr;
          hash |= 0; // Convert to 32bit integer
        }
        return Math.abs(hash);
      };

      return MojsPlayer;
    }(_module2.default);

    if (true) {
      !(__WEBPACK_AMD_DEFINE_RESULT__ = function () {
        return MojsPlayer;
      }.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
    }
    if (( false ? 'undefined' : (0, _typeof3.default)(module)) === "object" && (0, _typeof3.default)(module.exports) === "object") {
      module.exports = MojsPlayer;
    }

    var _global = typeof global !== 'undefined' ? global : window;
    _global.MojsPlayer = MojsPlayer;

    exports.default = MojsPlayer;
    /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2)(module), (function() { return this; }())))

  /***/ },
  /* 2 */
  /***/ function(module, exports) {

    module.exports = function(module) {
      if(!module.webpackPolyfill) {
        module.deprecate = function() {};
        module.paths = [];
        // module.parent = undefined by default
        module.children = [];
        module.webpackPolyfill = 1;
      }
      return module;
    }


  /***/ },
  /* 3 */
  /***/ function(module, exports, __webpack_require__) {

    "use strict";

    exports.__esModule = true;

    var _iterator = __webpack_require__(4);

    var _iterator2 = _interopRequireDefault(_iterator);

    var _symbol = __webpack_require__(55);

    var _symbol2 = _interopRequireDefault(_symbol);

    var _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; };

    function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

    exports.default = typeof _symbol2.default === "function" && _typeof(_iterator2.default) === "symbol" ? function (obj) {
      return typeof obj === "undefined" ? "undefined" : _typeof(obj);
    } : function (obj) {
      return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj);
    };

  /***/ },
  /* 4 */
  /***/ function(module, exports, __webpack_require__) {

    module.exports = { "default": __webpack_require__(5), __esModule: true };

  /***/ },
  /* 5 */
  /***/ function(module, exports, __webpack_require__) {

    __webpack_require__(6);
    __webpack_require__(50);
    module.exports = __webpack_require__(54).f('iterator');

  /***/ },
  /* 6 */
  /***/ function(module, exports, __webpack_require__) {

    'use strict';
    var $at  = __webpack_require__(7)(true);

    // 21.1.3.27 String.prototype[@@iterator]()
    __webpack_require__(10)(String, 'String', function(iterated){
      this._t = String(iterated); // target
      this._i = 0;                // next index
    // 21.1.5.2.1 %StringIteratorPrototype%.next()
    }, function(){
      var O     = this._t
        , index = this._i
        , point;
      if(index >= O.length)return {value: undefined, done: true};
      point = $at(O, index);
      this._i += point.length;
      return {value: point, done: false};
    });

  /***/ },
  /* 7 */
  /***/ function(module, exports, __webpack_require__) {

    var toInteger = __webpack_require__(8)
      , defined   = __webpack_require__(9);
    // true  -> String#at
    // false -> String#codePointAt
    module.exports = function(TO_STRING){
      return function(that, pos){
        var s = String(defined(that))
          , i = toInteger(pos)
          , l = s.length
          , a, b;
        if(i < 0 || i >= l)return TO_STRING ? '' : undefined;
        a = s.charCodeAt(i);
        return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
          ? TO_STRING ? s.charAt(i) : a
          : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
      };
    };

  /***/ },
  /* 8 */
  /***/ function(module, exports) {

    // 7.1.4 ToInteger
    var ceil  = Math.ceil
      , floor = Math.floor;
    module.exports = function(it){
      return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
    };

  /***/ },
  /* 9 */
  /***/ function(module, exports) {

    // 7.2.1 RequireObjectCoercible(argument)
    module.exports = function(it){
      if(it == undefined)throw TypeError("Can't call method on  " + it);
      return it;
    };

  /***/ },
  /* 10 */
  /***/ function(module, exports, __webpack_require__) {

    'use strict';
    var LIBRARY        = __webpack_require__(11)
      , $export        = __webpack_require__(12)
      , redefine       = __webpack_require__(27)
      , hide           = __webpack_require__(17)
      , has            = __webpack_require__(28)
      , Iterators      = __webpack_require__(29)
      , $iterCreate    = __webpack_require__(30)
      , setToStringTag = __webpack_require__(46)
      , getPrototypeOf = __webpack_require__(48)
      , ITERATOR       = __webpack_require__(47)('iterator')
      , BUGGY          = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
      , FF_ITERATOR    = '@@iterator'
      , KEYS           = 'keys'
      , VALUES         = 'values';

    var returnThis = function(){ return this; };

    module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
      $iterCreate(Constructor, NAME, next);
      var getMethod = function(kind){
        if(!BUGGY && kind in proto)return proto[kind];
        switch(kind){
          case KEYS: return function keys(){ return new Constructor(this, kind); };
          case VALUES: return function values(){ return new Constructor(this, kind); };
        } return function entries(){ return new Constructor(this, kind); };
      };
      var TAG        = NAME + ' Iterator'
        , DEF_VALUES = DEFAULT == VALUES
        , VALUES_BUG = false
        , proto      = Base.prototype
        , $native    = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
        , $default   = $native || getMethod(DEFAULT)
        , $entries   = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined
        , $anyNative = NAME == 'Array' ? proto.entries || $native : $native
        , methods, key, IteratorPrototype;
      // Fix native
      if($anyNative){
        IteratorPrototype = getPrototypeOf($anyNative.call(new Base));
        if(IteratorPrototype !== Object.prototype){
          // Set @@toStringTag to native iterators
          setToStringTag(IteratorPrototype, TAG, true);
          // fix for some old engines
          if(!LIBRARY && !has(IteratorPrototype, ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
        }
      }
      // fix Array#{values, @@iterator}.name in V8 / FF
      if(DEF_VALUES && $native && $native.name !== VALUES){
        VALUES_BUG = true;
        $default = function values(){ return $native.call(this); };
      }
      // Define iterator
      if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
        hide(proto, ITERATOR, $default);
      }
      // Plug for library
      Iterators[NAME] = $default;
      Iterators[TAG]  = returnThis;
      if(DEFAULT){
        methods = {
          values:  DEF_VALUES ? $default : getMethod(VALUES),
          keys:    IS_SET     ? $default : getMethod(KEYS),
          entries: $entries
        };
        if(FORCED)for(key in methods){
          if(!(key in proto))redefine(proto, key, methods[key]);
        } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
      }
      return methods;
    };

  /***/ },
  /* 11 */
  /***/ function(module, exports) {

    module.exports = true;

  /***/ },
  /* 12 */
  /***/ function(module, exports, __webpack_require__) {

    var global    = __webpack_require__(13)
      , core      = __webpack_require__(14)
      , ctx       = __webpack_require__(15)
      , hide      = __webpack_require__(17)
      , PROTOTYPE = 'prototype';

    var $export = function(type, name, source){
      var IS_FORCED = type & $export.F
        , IS_GLOBAL = type & $export.G
        , IS_STATIC = type & $export.S
        , IS_PROTO  = type & $export.P
        , IS_BIND   = type & $export.B
        , IS_WRAP   = type & $export.W
        , exports   = IS_GLOBAL ? core : core[name] || (core[name] = {})
        , expProto  = exports[PROTOTYPE]
        , target    = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]
        , key, own, out;
      if(IS_GLOBAL)source = name;
      for(key in source){
        // contains in native
        own = !IS_FORCED && target && target[key] !== undefined;
        if(own && key in exports)continue;
        // export native or passed
        out = own ? target[key] : source[key];
        // prevent global pollution for namespaces
        exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
        // bind timers to global for call from export context
        : IS_BIND && own ? ctx(out, global)
        // wrap global constructors for prevent change them in library
        : IS_WRAP && target[key] == out ? (function(C){
          var F = function(a, b, c){
            if(this instanceof C){
              switch(arguments.length){
                case 0: return new C;
                case 1: return new C(a);
                case 2: return new C(a, b);
              } return new C(a, b, c);
            } return C.apply(this, arguments);
          };
          F[PROTOTYPE] = C[PROTOTYPE];
          return F;
        // make static versions for prototype methods
        })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
        // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
        if(IS_PROTO){
          (exports.virtual || (exports.virtual = {}))[key] = out;
          // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
          if(type & $export.R && expProto && !expProto[key])hide(expProto, key, out);
        }
      }
    };
    // type bitmap
    $export.F = 1;   // forced
    $export.G = 2;   // global
    $export.S = 4;   // static
    $export.P = 8;   // proto
    $export.B = 16;  // bind
    $export.W = 32;  // wrap
    $export.U = 64;  // safe
    $export.R = 128; // real proto method for `library`
    module.exports = $export;

  /***/ },
  /* 13 */
  /***/ function(module, exports) {

    // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
    var global = module.exports = typeof window != 'undefined' && window.Math == Math
      ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
    if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef

  /***/ },
  /* 14 */
  /***/ function(module, exports) {

    var core = module.exports = {version: '2.4.0'};
    if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef

  /***/ },
  /* 15 */
  /***/ function(module, exports, __webpack_require__) {

    // optional / simple context binding
    var aFunction = __webpack_require__(16);
    module.exports = function(fn, that, length){
      aFunction(fn);
      if(that === undefined)return fn;
      switch(length){
        case 1: return function(a){
          return fn.call(that, a);
        };
        case 2: return function(a, b){
          return fn.call(that, a, b);
        };
        case 3: return function(a, b, c){
          return fn.call(that, a, b, c);
        };
      }
      return function(/* ...args */){
        return fn.apply(that, arguments);
      };
    };

  /***/ },
  /* 16 */
  /***/ function(module, exports) {

    module.exports = function(it){
      if(typeof it != 'function')throw TypeError(it + ' is not a function!');
      return it;
    };

  /***/ },
  /* 17 */
  /***/ function(module, exports, __webpack_require__) {

    var dP         = __webpack_require__(18)
      , createDesc = __webpack_require__(26);
    module.exports = __webpack_require__(22) ? function(object, key, value){
      return dP.f(object, key, createDesc(1, value));
    } : function(object, key, value){
      object[key] = value;
      return object;
    };

  /***/ },
  /* 18 */
  /***/ function(module, exports, __webpack_require__) {

    var anObject       = __webpack_require__(19)
      , IE8_DOM_DEFINE = __webpack_require__(21)
      , toPrimitive    = __webpack_require__(25)
      , dP             = Object.defineProperty;

    exports.f = __webpack_require__(22) ? Object.defineProperty : function defineProperty(O, P, Attributes){
      anObject(O);
      P = toPrimitive(P, true);
      anObject(Attributes);
      if(IE8_DOM_DEFINE)try {
        return dP(O, P, Attributes);
      } catch(e){ /* empty */ }
      if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');
      if('value' in Attributes)O[P] = Attributes.value;
      return O;
    };

  /***/ },
  /* 19 */
  /***/ function(module, exports, __webpack_require__) {

    var isObject = __webpack_require__(20);
    module.exports = function(it){
      if(!isObject(it))throw TypeError(it + ' is not an object!');
      return it;
    };

  /***/ },
  /* 20 */
  /***/ function(module, exports) {

    module.exports = function(it){
      return typeof it === 'object' ? it !== null : typeof it === 'function';
    };

  /***/ },
  /* 21 */
  /***/ function(module, exports, __webpack_require__) {

    module.exports = !__webpack_require__(22) && !__webpack_require__(23)(function(){
      return Object.defineProperty(__webpack_require__(24)('div'), 'a', {get: function(){ return 7; }}).a != 7;
    });

  /***/ },
  /* 22 */
  /***/ function(module, exports, __webpack_require__) {

    // Thank's IE8 for his funny defineProperty
    module.exports = !__webpack_require__(23)(function(){
      return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
    });

  /***/ },
  /* 23 */
  /***/ function(module, exports) {

    module.exports = function(exec){
      try {
        return !!exec();
      } catch(e){
        return true;
      }
    };

  /***/ },
  /* 24 */
  /***/ function(module, exports, __webpack_require__) {

    var isObject = __webpack_require__(20)
      , document = __webpack_require__(13).document
      // in old IE typeof document.createElement is 'object'
      , is = isObject(document) && isObject(document.createElement);
    module.exports = function(it){
      return is ? document.createElement(it) : {};
    };

  /***/ },
  /* 25 */
  /***/ function(module, exports, __webpack_require__) {

    // 7.1.1 ToPrimitive(input [, PreferredType])
    var isObject = __webpack_require__(20);
    // instead of the ES6 spec version, we didn't implement @@toPrimitive case
    // and the second argument - flag - preferred type is a string
    module.exports = function(it, S){
      if(!isObject(it))return it;
      var fn, val;
      if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
      if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;
      if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
      throw TypeError("Can't convert object to primitive value");
    };

  /***/ },
  /* 26 */
  /***/ function(module, exports) {

    module.exports = function(bitmap, value){
      return {
        enumerable  : !(bitmap & 1),
        configurable: !(bitmap & 2),
        writable    : !(bitmap & 4),
        value       : value
      };
    };

  /***/ },
  /* 27 */
  /***/ function(module, exports, __webpack_require__) {

    module.exports = __webpack_require__(17);

  /***/ },
  /* 28 */
  /***/ function(module, exports) {

    var hasOwnProperty = {}.hasOwnProperty;
    module.exports = function(it, key){
      return hasOwnProperty.call(it, key);
    };

  /***/ },
  /* 29 */
  /***/ function(module, exports) {

    module.exports = {};

  /***/ },
  /* 30 */
  /***/ function(module, exports, __webpack_require__) {

    'use strict';
    var create         = __webpack_require__(31)
      , descriptor     = __webpack_require__(26)
      , setToStringTag = __webpack_require__(46)
      , IteratorPrototype = {};

    // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
    __webpack_require__(17)(IteratorPrototype, __webpack_require__(47)('iterator'), function(){ return this; });

    module.exports = function(Constructor, NAME, next){
      Constructor.prototype = create(IteratorPrototype, {next: descriptor(1, next)});
      setToStringTag(Constructor, NAME + ' Iterator');
    };

  /***/ },
  /* 31 */
  /***/ function(module, exports, __webpack_require__) {

    // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
    var anObject    = __webpack_require__(19)
      , dPs         = __webpack_require__(32)
      , enumBugKeys = __webpack_require__(44)
      , IE_PROTO    = __webpack_require__(41)('IE_PROTO')
      , Empty       = function(){ /* empty */ }
      , PROTOTYPE   = 'prototype';

    // Create object with fake `null` prototype: use iframe Object with cleared prototype
    var createDict = function(){
      // Thrash, waste and sodomy: IE GC bug
      var iframe = __webpack_require__(24)('iframe')
        , i      = enumBugKeys.length
        , gt     = '>'
        , iframeDocument;
      iframe.style.display = 'none';
      __webpack_require__(45).appendChild(iframe);
      iframe.src = 'javascript:'; // eslint-disable-line no-script-url
      // createDict = iframe.contentWindow.Object;
      // html.removeChild(iframe);
      iframeDocument = iframe.contentWindow.document;
      iframeDocument.open();
      iframeDocument.write('
<script>document.F=Object</script' + gt);
      iframeDocument.close();
      createDict = iframeDocument.F;
      while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];
      return createDict();
    };

    module.exports = Object.create || function create(O, Properties){
      var result;
      if(O !== null){
        Empty[PROTOTYPE] = anObject(O);
        result = new Empty;
        Empty[PROTOTYPE] = null;
        // add "__proto__" for Object.getPrototypeOf polyfill
        result[IE_PROTO] = O;
      } else result = createDict();
      return Properties === undefined ? result : dPs(result, Properties);
    };

  /***/ },
  /* 32 */
  /***/ function(module, exports, __webpack_require__) {

    var dP       = __webpack_require__(18)
      , anObject = __webpack_require__(19)
      , getKeys  = __webpack_require__(33);

    module.exports = __webpack_require__(22) ? Object.defineProperties : function defineProperties(O, Properties){
      anObject(O);
      var keys   = getKeys(Properties)
        , length = keys.length
        , i = 0
        , P;
      while(length >
i)dP.f(O, P = keys[i++], Properties[P]);
      return O;
    };

  /***/ },
  /* 33 */
  /***/ function(module, exports, __webpack_require__) {

    // 19.1.2.14 / 15.2.3.14 Object.keys(O)
    var $keys       = __webpack_require__(34)
      , enumBugKeys = __webpack_require__(44);

    module.exports = Object.keys || function keys(O){
      return $keys(O, enumBugKeys);
    };

  /***/ },
  /* 34 */
  /***/ function(module, exports, __webpack_require__) {

    var has          = __webpack_require__(28)
      , toIObject    = __webpack_require__(35)
      , arrayIndexOf = __webpack_require__(38)(false)
      , IE_PROTO     = __webpack_require__(41)('IE_PROTO');

    module.exports = function(object, names){
      var O      = toIObject(object)
        , i      = 0
        , result = []
        , key;
      for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);
      // Don't enum bug & hidden keys
      while(names.length > i)if(has(O, key = names[i++])){
        ~arrayIndexOf(result, key) || result.push(key);
      }
      return result;
    };

  /***/ },
  /* 35 */
  /***/ function(module, exports, __webpack_require__) {

    // to indexed object, toObject with fallback for non-array-like ES3 strings
    var IObject = __webpack_require__(36)
      , defined = __webpack_require__(9);
    module.exports = function(it){
      return IObject(defined(it));
    };

  /***/ },
  /* 36 */
  /***/ function(module, exports, __webpack_require__) {

    // fallback for non-array-like ES3 and non-enumerable old V8 strings
    var cof = __webpack_require__(37);
    module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
      return cof(it) == 'String' ? it.split('') : Object(it);
    };

  /***/ },
  /* 37 */
  /***/ function(module, exports) {

    var toString = {}.toString;

    module.exports = function(it){
      return toString.call(it).slice(8, -1);
    };

  /***/ },
  /* 38 */
  /***/ function(module, exports, __webpack_require__) {

    // false -> Array#indexOf
    // true  -> Array#includes
    var toIObject = __webpack_require__(35)
      , toLength  = __webpack_require__(39)
      , toIndex   = __webpack_require__(40);
    module.exports = function(IS_INCLUDES){
      return function($this, el, fromIndex){
        var O      = toIObject($this)
          , length = toLength(O.length)
          , index  = toIndex(fromIndex, length)
          , value;
        // Array#includes uses SameValueZero equality algorithm
        if(IS_INCLUDES && el != el)while(length > index){
          value = O[index++];
          if(value != value)return true;
        // Array#toIndex ignores holes, Array#includes - not
        } else for(;length > index; index++)if(IS_INCLUDES || index in O){
          if(O[index] === el)return IS_INCLUDES || index || 0;
        } return !IS_INCLUDES && -1;
      };
    };

  /***/ },
  /* 39 */
  /***/ function(module, exports, __webpack_require__) {

    // 7.1.15 ToLength
    var toInteger = __webpack_require__(8)
      , min       = Math.min;
    module.exports = function(it){
      return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
    };

  /***/ },
  /* 40 */
  /***/ function(module, exports, __webpack_require__) {

    var toInteger = __webpack_require__(8)
      , max       = Math.max
      , min       = Math.min;
    module.exports = function(index, length){
      index = toInteger(index);
      return index < 0 ? max(index + length, 0) : min(index, length);
    };

  /***/ },
  /* 41 */
  /***/ function(module, exports, __webpack_require__) {

    var shared = __webpack_require__(42)('keys')
      , uid    = __webpack_require__(43);
    module.exports = function(key){
      return shared[key] || (shared[key] = uid(key));
    };

  /***/ },
  /* 42 */
  /***/ function(module, exports, __webpack_require__) {

    var global = __webpack_require__(13)
      , SHARED = '__core-js_shared__'
      , store  = global[SHARED] || (global[SHARED] = {});
    module.exports = function(key){
      return store[key] || (store[key] = {});
    };

  /***/ },
  /* 43 */
  /***/ function(module, exports) {

    var id = 0
      , px = Math.random();
    module.exports = function(key){
      return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
    };

  /***/ },
  /* 44 */
  /***/ function(module, exports) {

    // IE 8- don't enum bug keys
    module.exports = (
      'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
    ).split(',');

  /***/ },
  /* 45 */
  /***/ function(module, exports, __webpack_require__) {

    module.exports = __webpack_require__(13).document && document.documentElement;

  /***/ },
  /* 46 */
  /***/ function(module, exports, __webpack_require__) {

    var def = __webpack_require__(18).f
      , has = __webpack_require__(28)
      , TAG = __webpack_require__(47)('toStringTag');

    module.exports = function(it, tag, stat){
      if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
    };

  /***/ },
  /* 47 */
  /***/ function(module, exports, __webpack_require__) {

    var store      = __webpack_require__(42)('wks')
      , uid        = __webpack_require__(43)
      , Symbol     = __webpack_require__(13).Symbol
      , USE_SYMBOL = typeof Symbol == 'function';

    var $exports = module.exports = function(name){
      return store[name] || (store[name] =
        USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
    };

    $exports.store = store;

  /***/ },
  /* 48 */
  /***/ function(module, exports, __webpack_require__) {

    // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
    var has         = __webpack_require__(28)
      , toObject    = __webpack_require__(49)
      , IE_PROTO    = __webpack_require__(41)('IE_PROTO')
      , ObjectProto = Object.prototype;

    module.exports = Object.getPrototypeOf || function(O){
      O = toObject(O);
      if(has(O, IE_PROTO))return O[IE_PROTO];
      if(typeof O.constructor == 'function' && O instanceof O.constructor){
        return O.constructor.prototype;
      } return O instanceof Object ? ObjectProto : null;
    };

  /***/ },
  /* 49 */
  /***/ function(module, exports, __webpack_require__) {

    // 7.1.13 ToObject(argument)
    var defined = __webpack_require__(9);
    module.exports = function(it){
      return Object(defined(it));
    };

  /***/ },
  /* 50 */
  /***/ function(module, exports, __webpack_require__) {

    __webpack_require__(51);
    var global        = __webpack_require__(13)
      , hide          = __webpack_require__(17)
      , Iterators     = __webpack_require__(29)
      , TO_STRING_TAG = __webpack_require__(47)('toStringTag');

    for(var collections = ['NodeList', 'DOMTokenList', 'MediaList', 'StyleSheetList', 'CSSRuleList'], i = 0; i < 5; i++){
      var NAME       = collections[i]
        , Collection = global[NAME]
        , proto      = Collection && Collection.prototype;
      if(proto && !proto[TO_STRING_TAG])hide(proto, TO_STRING_TAG, NAME);
      Iterators[NAME] = Iterators.Array;
    }

  /***/ },
  /* 51 */
  /***/ function(module, exports, __webpack_require__) {

    'use strict';
    var addToUnscopables = __webpack_require__(52)
      , step             = __webpack_require__(53)
      , Iterators        = __webpack_require__(29)
      , toIObject        = __webpack_require__(35);

    // 22.1.3.4 Array.prototype.entries()
    // 22.1.3.13 Array.prototype.keys()
    // 22.1.3.29 Array.prototype.values()
    // 22.1.3.30 Array.prototype[@@iterator]()
    module.exports = __webpack_require__(10)(Array, 'Array', function(iterated, kind){
      this._t = toIObject(iterated); // target
      this._i = 0;                   // next index
      this._k = kind;                // kind
    // 22.1.5.2.1 %ArrayIteratorPrototype%.next()
    }, function(){
      var O     = this._t
        , kind  = this._k
        , index = this._i++;
      if(!O || index >= O.length){
        this._t = undefined;
        return step(1);
      }
      if(kind == 'keys'  )return step(0, index);
      if(kind == 'values')return step(0, O[index]);
      return step(0, [index, O[index]]);
    }, 'values');

    // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
    Iterators.Arguments = Iterators.Array;

    addToUnscopables('keys');
    addToUnscopables('values');
    addToUnscopables('entries');

  /***/ },
  /* 52 */
  /***/ function(module, exports) {

    module.exports = function(){ /* empty */ };

  /***/ },
  /* 53 */
  /***/ function(module, exports) {

    module.exports = function(done, value){
      return {value: value, done: !!done};
    };

  /***/ },
  /* 54 */
  /***/ function(module, exports, __webpack_require__) {

    exports.f = __webpack_require__(47);

  /***/ },
  /* 55 */
  /***/ function(module, exports, __webpack_require__) {

    module.exports = { "default": __webpack_require__(56), __esModule: true };

  /***/ },
  /* 56 */
  /***/ function(module, exports, __webpack_require__) {

    __webpack_require__(57);
    __webpack_require__(68);
    __webpack_require__(69);
    __webpack_require__(70);
    module.exports = __webpack_require__(14).Symbol;

  /***/ },
  /* 57 */
  /***/ function(module, exports, __webpack_require__) {

    'use strict';
    // ECMAScript 6 symbols shim
    var global         = __webpack_require__(13)
      , has            = __webpack_require__(28)
      , DESCRIPTORS    = __webpack_require__(22)
      , $export        = __webpack_require__(12)
      , redefine       = __webpack_require__(27)
      , META           = __webpack_require__(58).KEY
      , $fails         = __webpack_require__(23)
      , shared         = __webpack_require__(42)
      , setToStringTag = __webpack_require__(46)
      , uid            = __webpack_require__(43)
      , wks            = __webpack_require__(47)
      , wksExt         = __webpack_require__(54)
      , wksDefine      = __webpack_require__(59)
      , keyOf          = __webpack_require__(60)
      , enumKeys       = __webpack_require__(61)
      , isArray        = __webpack_require__(64)
      , anObject       = __webpack_require__(19)
      , toIObject      = __webpack_require__(35)
      , toPrimitive    = __webpack_require__(25)
      , createDesc     = __webpack_require__(26)
      , _create        = __webpack_require__(31)
      , gOPNExt        = __webpack_require__(65)
      , $GOPD          = __webpack_require__(67)
      , $DP            = __webpack_require__(18)
      , $keys          = __webpack_require__(33)
      , gOPD           = $GOPD.f
      , dP             = $DP.f
      , gOPN           = gOPNExt.f
      , $Symbol        = global.Symbol
      , $JSON          = global.JSON
      , _stringify     = $JSON && $JSON.stringify
      , PROTOTYPE      = 'prototype'
      , HIDDEN         = wks('_hidden')
      , TO_PRIMITIVE   = wks('toPrimitive')
      , isEnum         = {}.propertyIsEnumerable
      , SymbolRegistry = shared('symbol-registry')
      , AllSymbols     = shared('symbols')
      , OPSymbols      = shared('op-symbols')
      , ObjectProto    = Object[PROTOTYPE]
      , USE_NATIVE     = typeof $Symbol == 'function'
      , QObject        = global.QObject;
    // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
    var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

    // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
    var setSymbolDesc = DESCRIPTORS && $fails(function(){
      return _create(dP({}, 'a', {
        get: function(){ return dP(this, 'a', {value: 7}).a; }
      })).a != 7;
    }) ? function(it, key, D){
      var protoDesc = gOPD(ObjectProto, key);
      if(protoDesc)delete ObjectProto[key];
      dP(it, key, D);
      if(protoDesc && it !== ObjectProto)dP(ObjectProto, key, protoDesc);
    } : dP;

    var wrap = function(tag){
      var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
      sym._k = tag;
      return sym;
    };

    var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function(it){
      return typeof it == 'symbol';
    } : function(it){
      return it instanceof $Symbol;
    };

    var $defineProperty = function defineProperty(it, key, D){
      if(it === ObjectProto)$defineProperty(OPSymbols, key, D);
      anObject(it);
      key = toPrimitive(key, true);
      anObject(D);
      if(has(AllSymbols, key)){
        if(!D.enumerable){
          if(!has(it, HIDDEN))dP(it, HIDDEN, createDesc(1, {}));
          it[HIDDEN][key] = true;
        } else {
          if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
          D = _create(D, {enumerable: createDesc(0, false)});
        } return setSymbolDesc(it, key, D);
      } return dP(it, key, D);
    };
    var $defineProperties = function defineProperties(it, P){
      anObject(it);
      var keys = enumKeys(P = toIObject(P))
        , i    = 0
        , l = keys.length
        , key;
      while(l > i)$defineProperty(it, key = keys[i++], P[key]);
      return it;
    };
    var $create = function create(it, P){
      return P === undefined ? _create(it) : $defineProperties(_create(it), P);
    };
    var $propertyIsEnumerable = function propertyIsEnumerable(key){
      var E = isEnum.call(this, key = toPrimitive(key, true));
      if(this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return false;
      return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
    };
    var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){
      it  = toIObject(it);
      key = toPrimitive(key, true);
      if(it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return;
      var D = gOPD(it, key);
      if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;
      return D;
    };
    var $getOwnPropertyNames = function getOwnPropertyNames(it){
      var names  = gOPN(toIObject(it))
        , result = []
        , i      = 0
        , key;
      while(names.length > i){
        if(!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META)result.push(key);
      } return result;
    };
    var $getOwnPropertySymbols = function getOwnPropertySymbols(it){
      var IS_OP  = it === ObjectProto
        , names  = gOPN(IS_OP ? OPSymbols : toIObject(it))
        , result = []
        , i      = 0
        , key;
      while(names.length > i){
        if(has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true))result.push(AllSymbols[key]);
      } return result;
    };

    // 19.4.1.1 Symbol([description])
    if(!USE_NATIVE){
      $Symbol = function Symbol(){
        if(this instanceof $Symbol)throw TypeError('Symbol is not a constructor!');
        var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
        var $set = function(value){
          if(this === ObjectProto)$set.call(OPSymbols, value);
          if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
          setSymbolDesc(this, tag, createDesc(1, value));
        };
        if(DESCRIPTORS && setter)setSymbolDesc(ObjectProto, tag, {configurable: true, set: $set});
        return wrap(tag);
      };
      redefine($Symbol[PROTOTYPE], 'toString', function toString(){
        return this._k;
      });

      $GOPD.f = $getOwnPropertyDescriptor;
      $DP.f   = $defineProperty;
      __webpack_require__(66).f = gOPNExt.f = $getOwnPropertyNames;
      __webpack_require__(63).f  = $propertyIsEnumerable;
      __webpack_require__(62).f = $getOwnPropertySymbols;

      if(DESCRIPTORS && !__webpack_require__(11)){
        redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
      }

      wksExt.f = function(name){
        return wrap(wks(name));
      }
    }

    $export($export.G + $export.W + $export.F * !USE_NATIVE, {Symbol: $Symbol});

    for(var symbols = (
      // 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
      'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
    ).split(','), i = 0; symbols.length > i; )wks(symbols[i++]);

    for(var symbols = $keys(wks.store), i = 0; symbols.length > i; )wksDefine(symbols[i++]);

    $export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
      // 19.4.2.1 Symbol.for(key)
      'for': function(key){
        return has(SymbolRegistry, key += '')
          ? SymbolRegistry[key]
          : SymbolRegistry[key] = $Symbol(key);
      },
      // 19.4.2.5 Symbol.keyFor(sym)
      keyFor: function keyFor(key){
        if(isSymbol(key))return keyOf(SymbolRegistry, key);
        throw TypeError(key + ' is not a symbol!');
      },
      useSetter: function(){ setter = true; },
      useSimple: function(){ setter = false; }
    });

    $export($export.S + $export.F * !USE_NATIVE, 'Object', {
      // 19.1.2.2 Object.create(O [, Properties])
      create: $create,
      // 19.1.2.4 Object.defineProperty(O, P, Attributes)
      defineProperty: $defineProperty,
      // 19.1.2.3 Object.defineProperties(O, Properties)
      defineProperties: $defineProperties,
      // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
      getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
      // 19.1.2.7 Object.getOwnPropertyNames(O)
      getOwnPropertyNames: $getOwnPropertyNames,
      // 19.1.2.8 Object.getOwnPropertySymbols(O)
      getOwnPropertySymbols: $getOwnPropertySymbols
    });

    // 24.3.2 JSON.stringify(value [, replacer [, space]])
    $JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function(){
      var S = $Symbol();
      // MS Edge converts symbol values to JSON as {}
      // WebKit converts symbol values to JSON as null
      // V8 throws on boxed symbols
      return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';
    })), 'JSON', {
      stringify: function stringify(it){
        if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined
        var args = [it]
          , i    = 1
          , replacer, $replacer;
        while(arguments.length > i)args.push(arguments[i++]);
        replacer = args[1];
        if(typeof replacer == 'function')$replacer = replacer;
        if($replacer || !isArray(replacer))replacer = function(key, value){
          if($replacer)value = $replacer.call(this, key, value);
          if(!isSymbol(value))return value;
        };
        args[1] = replacer;
        return _stringify.apply($JSON, args);
      }
    });

    // 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
    $Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(17)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
    // 19.4.3.5 Symbol.prototype[@@toStringTag]
    setToStringTag($Symbol, 'Symbol');
    // 20.2.1.9 Math[@@toStringTag]
    setToStringTag(Math, 'Math', true);
    // 24.3.3 JSON[@@toStringTag]
    setToStringTag(global.JSON, 'JSON', true);

  /***/ },
  /* 58 */
  /***/ function(module, exports, __webpack_require__) {

    var META     = __webpack_require__(43)('meta')
      , isObject = __webpack_require__(20)
      , has      = __webpack_require__(28)
      , setDesc  = __webpack_require__(18).f
      , id       = 0;
    var isExtensible = Object.isExtensible || function(){
      return true;
    };
    var FREEZE = !__webpack_require__(23)(function(){
      return isExtensible(Object.preventExtensions({}));
    });
    var setMeta = function(it){
      setDesc(it, META, {value: {
        i: 'O' + ++id, // object ID
        w: {}          // weak collections IDs
      }});
    };
    var fastKey = function(it, create){
      // return primitive with prefix
      if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
      if(!has(it, META)){
        // can't set metadata to uncaught frozen object
        if(!isExtensible(it))return 'F';
        // not necessary to add metadata
        if(!create)return 'E';
        // add missing metadata
        setMeta(it);
      // return object ID
      } return it[META].i;
    };
    var getWeak = function(it, create){
      if(!has(it, META)){
        // can't set metadata to uncaught frozen object
        if(!isExtensible(it))return true;
        // not necessary to add metadata
        if(!create)return false;
        // add missing metadata
        setMeta(it);
      // return hash weak collections IDs
      } return it[META].w;
    };
    // add metadata on freeze-family methods calling
    var onFreeze = function(it){
      if(FREEZE && meta.NEED && isExtensible(it) && !has(it, META))setMeta(it);
      return it;
    };
    var meta = module.exports = {
      KEY:      META,
      NEED:     false,
      fastKey:  fastKey,
      getWeak:  getWeak,
      onFreeze: onFreeze
    };

  /***/ },
  /* 59 */
  /***/ function(module, exports, __webpack_require__) {

    var global         = __webpack_require__(13)
      , core           = __webpack_require__(14)
      , LIBRARY        = __webpack_require__(11)
      , wksExt         = __webpack_require__(54)
      , defineProperty = __webpack_require__(18).f;
    module.exports = function(name){
      var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
      if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)});
    };

  /***/ },
  /* 60 */
  /***/ function(module, exports, __webpack_require__) {

    var getKeys   = __webpack_require__(33)
      , toIObject = __webpack_require__(35);
    module.exports = function(object, el){
      var O      = toIObject(object)
        , keys   = getKeys(O)
        , length = keys.length
        , index  = 0
        , key;
      while(length > index)if(O[key = keys[index++]] === el)return key;
    };

  /***/ },
  /* 61 */
  /***/ function(module, exports, __webpack_require__) {

    // all enumerable object keys, includes symbols
    var getKeys = __webpack_require__(33)
      , gOPS    = __webpack_require__(62)
      , pIE     = __webpack_require__(63);
    module.exports = function(it){
      var result     = getKeys(it)
        , getSymbols = gOPS.f;
      if(getSymbols){
        var symbols = getSymbols(it)
          , isEnum  = pIE.f
          , i       = 0
          , key;
        while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))result.push(key);
      } return result;
    };

  /***/ },
  /* 62 */
  /***/ function(module, exports) {

    exports.f = Object.getOwnPropertySymbols;

  /***/ },
  /* 63 */
  /***/ function(module, exports) {

    exports.f = {}.propertyIsEnumerable;

  /***/ },
  /* 64 */
  /***/ function(module, exports, __webpack_require__) {

    // 7.2.2 IsArray(argument)
    var cof = __webpack_require__(37);
    module.exports = Array.isArray || function isArray(arg){
      return cof(arg) == 'Array';
    };

  /***/ },
  /* 65 */
  /***/ function(module, exports, __webpack_require__) {

    // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
    var toIObject = __webpack_require__(35)
      , gOPN      = __webpack_require__(66).f
      , toString  = {}.toString;

    var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
      ? Object.getOwnPropertyNames(window) : [];

    var getWindowNames = function(it){
      try {
        return gOPN(it);
      } catch(e){
        return windowNames.slice();
      }
    };

    module.exports.f = function getOwnPropertyNames(it){
      return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
    };


  /***/ },
  /* 66 */
  /***/ function(module, exports, __webpack_require__) {

    // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
    var $keys      = __webpack_require__(34)
      , hiddenKeys = __webpack_require__(44).concat('length', 'prototype');

    exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O){
      return $keys(O, hiddenKeys);
    };

  /***/ },
  /* 67 */
  /***/ function(module, exports, __webpack_require__) {

    var pIE            = __webpack_require__(63)
      , createDesc     = __webpack_require__(26)
      , toIObject      = __webpack_require__(35)
      , toPrimitive    = __webpack_require__(25)
      , has            = __webpack_require__(28)
      , IE8_DOM_DEFINE = __webpack_require__(21)
      , gOPD           = Object.getOwnPropertyDescriptor;

    exports.f = __webpack_require__(22) ? gOPD : function getOwnPropertyDescriptor(O, P){
      O = toIObject(O);
      P = toPrimitive(P, true);
      if(IE8_DOM_DEFINE)try {
        return gOPD(O, P);
      } catch(e){ /* empty */ }
      if(has(O, P))return createDesc(!pIE.f.call(O, P), O[P]);
    };

  /***/ },
  /* 68 */
  /***/ function(module, exports) {

   

  /***/ },
  /* 69 */
  /***/ function(module, exports, __webpack_require__) {

    __webpack_require__(59)('asyncIterator');

  /***/ },
  /* 70 */
  /***/ function(module, exports, __webpack_require__) {

    __webpack_require__(59)('observable');

  /***/ },
  /* 71 */
  /***/ function(module, exports, __webpack_require__) {

    module.exports = { "default": __webpack_require__(72), __esModule: true };

  /***/ },
  /* 72 */
  /***/ function(module, exports, __webpack_require__) {

    var core  = __webpack_require__(14)
      , $JSON = core.JSON || (core.JSON = {stringify: JSON.stringify});
    module.exports = function stringify(it){ // eslint-disable-line no-unused-vars
      return $JSON.stringify.apply($JSON, arguments);
    };

  /***/ },
  /* 73 */
  /***/ function(module, exports, __webpack_require__) {

    "use strict";

    exports.__esModule = true;

    var _assign = __webpack_require__(74);

    var _assign2 = _interopRequireDefault(_assign);

    function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

    exports.default = _assign2.default || function (target) {
      for (var i = 1; i < arguments.length; i++) {
        var source = arguments[i];

        for (var key in source) {
          if (Object.prototype.hasOwnProperty.call(source, key)) {
            target[key] = source[key];
          }
        }
      }

      return target;
    };

  /***/ },
  /* 74 */
  /***/ function(module, exports, __webpack_require__) {

    module.exports = { "default": __webpack_require__(75), __esModule: true };

  /***/ },
  /* 75 */
  /***/ function(module, exports, __webpack_require__) {

    __webpack_require__(76);
    module.exports = __webpack_require__(14).Object.assign;

  /***/ },
  /* 76 */
  /***/ function(module, exports, __webpack_require__) {

    // 19.1.3.1 Object.assign(target, source)
    var $export = __webpack_require__(12);

    $export($export.S + $export.F, 'Object', {assign: __webpack_require__(77)});

  /***/ },
  /* 77 */
  /***/ function(module, exports, __webpack_require__) {

    'use strict';
    // 19.1.2.1 Object.assign(target, source, ...)
    var getKeys  = __webpack_require__(33)
      , gOPS     = __webpack_require__(62)
      , pIE      = __webpack_require__(63)
      , toObject = __webpack_require__(49)
      , IObject  = __webpack_require__(36)
      , $assign  = Object.assign;

    // should work with symbols and should have deterministic property order (V8 bug)
    module.exports = !$assign || __webpack_require__(23)(function(){
      var A = {}
        , B = {}
        , S = Symbol()
        , K = 'abcdefghijklmnopqrst';
      A[S] = 7;
      K.split('').forEach(function(k){ B[k] = k; });
      return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
    }) ? function assign(target, source){ // eslint-disable-line no-unused-vars
      var T     = toObject(target)
        , aLen  = arguments.length
        , index = 1
        , getSymbols = gOPS.f
        , isEnum     = pIE.f;
      while(aLen > index){
        var S      = IObject(arguments[index++])
          , keys   = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)
          , length = keys.length
          , j      = 0
          , key;
        while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];
      } return T;
    } : $assign;

  /***/ },
  /* 78 */
  /***/ function(module, exports) {

    "use strict";

    exports.__esModule = true;

    exports.default = function (instance, Constructor) {
      if (!(instance instanceof Constructor)) {
        throw new TypeError("Cannot call a class as a function");
      }
    };

  /***/ },
  /* 79 */
  /***/ function(module, exports, __webpack_require__) {

    "use strict";

    exports.__esModule = true;

    var _typeof2 = __webpack_require__(3);

    var _typeof3 = _interopRequireDefault(_typeof2);

    function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

    exports.default = function (self, call) {
      if (!self) {
        throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
      }

      return call && ((typeof call === "undefined" ? "undefined" : (0, _typeof3.default)(call)) === "object" || typeof call === "function") ? call : self;
    };

  /***/ },
  /* 80 */
  /***/ function(module, exports, __webpack_require__) {

    "use strict";

    exports.__esModule = true;

    var _setPrototypeOf = __webpack_require__(81);

    var _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf);

    var _create = __webpack_require__(85);

    var _create2 = _interopRequireDefault(_create);

    var _typeof2 = __webpack_require__(3);

    var _typeof3 = _interopRequireDefault(_typeof2);

    function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

    exports.default = function (subClass, superClass) {
      if (typeof superClass !== "function" && superClass !== null) {
        throw new TypeError("Super expression must either be null or a function, not " + (typeof superClass === "undefined" ? "undefined" : (0, _typeof3.default)(superClass)));
      }

      subClass.prototype = (0, _create2.default)(superClass && superClass.prototype, {
        constructor: {
          value: subClass,
          enumerable: false,
          writable: true,
          configurable: true
        }
      });
      if (superClass) _setPrototypeOf2.default ? (0, _setPrototypeOf2.default)(subClass, superClass) : subClass.__proto__ = superClass;
    };

  /***/ },
  /* 81 */
  /***/ function(module, exports, __webpack_require__) {

    module.exports = { "default": __webpack_require__(82), __esModule: true };

  /***/ },
  /* 82 */
  /***/ function(module, exports, __webpack_require__) {

    __webpack_require__(83);
    module.exports = __webpack_require__(14).Object.setPrototypeOf;

  /***/ },
  /* 83 */
  /***/ function(module, exports, __webpack_require__) {

    // 19.1.3.19 Object.setPrototypeOf(O, proto)
    var $export = __webpack_require__(12);
    $export($export.S, 'Object', {setPrototypeOf: __webpack_require__(84).set});

  /***/ },
  /* 84 */
  /***/ function(module, exports, __webpack_require__) {

    // Works with __proto__ only. Old v8 can't work with null proto objects.
    /* eslint-disable no-proto */
    var isObject = __webpack_require__(20)
      , anObject = __webpack_require__(19);
    var check = function(O, proto){
      anObject(O);
      if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
    };
    module.exports = {
      se.........完整代码请登录后点击上方下载按钮下载查看

网友评论0