diff --git a/about/index.html b/about/index.html index 901c5c9abd..aaa762a0b4 100644 --- a/about/index.html +++ b/about/index.html @@ -1,405 +1,2 @@ - - - - - - - - - - - - - - About · Bootstrap - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Skip to main content
- - Aww yeah, Bootstrap 4 is coming! - - - - - - -
-
-

About

-

Learn about the project's history, meet the maintaining teams, and find out how to use the Bootstrap brand.

-
- -
-
- -
- -
-
- -
-

History

- -

Originally created by a designer and a developer at Twitter, Bootstrap has become one of the most popular front-end frameworks and open source projects in the world.

-

Bootstrap was created at Twitter in mid-2010 by @mdo and @fat. Prior to being an open-sourced framework, Bootstrap was known as Twitter Blueprint. A few months into development, Twitter held its first Hack Week and the project exploded as developers of all skill levels jumped in without any external guidance. It served as the style guide for internal tools development at the company for over a year before its public release, and continues to do so today.

-

Originally released on , we've since had over twenty releases, including two major rewrites with v2 and v3. With Bootstrap 2, we added responsive functionality to the entire framework as an optional stylesheet. Building on that with Bootstrap 3, we rewrote the library once more to make it responsive by default with a mobile first approach.

-
- - - -
-

Team

- -

Bootstrap is maintained by the founding team and a small group of invaluable core contributors, with the massive support and involvement of our community.

- -

Core team

- -

Get involved with Bootstrap development by opening an issue or submitting a pull request. Read our contributing guidelines for information on how we develop.

- -

Sass team

- -

The official Sass port of Bootstrap was created and is maintained by this team. It became part of Bootstrap's organization with v3.1.0. Read the Sass contributing guidelines for information on how the Sass port is developed.

-
- - - -
-

Brand guidelines

- -

Have a need for Bootstrap's brand resources? Great! We have only a few guidelines we follow, and in turn ask you to follow as well. These guidelines were inspired by MailChimp's Brand Assets.

- -

Mark and logo

-

Use either the Bootstrap mark (a capital B) or the standard logo (just Bootstrap). It should always appear in Helvetica Neue Bold. Do not use the Twitter bird in association with Bootstrap.

-
-
-
B
-
-
-
B
-
-
-
-
-

Bootstrap

-
-
-

Bootstrap

-
-
- -

Download mark

-

Download the Bootstrap mark in one of three styles, each available as an SVG file. Right click, Save as.

-
-
- Bootstrap -
-
- Bootstrap -
-
- Bootstrap -
-
- -

Name

-

The project and framework should always be referred to as Bootstrap. No Twitter before it, no capital s, and no abbreviations except for one, a capital B.

-
-
-

Bootstrap

- - (correct) -
-
-

BootStrap

- - (incorrect) -
-
-

Twitter Bootstrap

- - (incorrect) -
-
- -

Colors

-

Our docs and branding use a handful of primary colors to differentiate what is Bootstrap from what is in Bootstrap. In other words, if it's purple, it's representative of Bootstrap.

-
-
-
-
-
-
-
-
-
- -
- - - -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - + About · Bootstrap
Skip to main content

About

Learn about the project's history, meet the maintaining teams, and find out how to use the Bootstrap brand.

History

Originally created by a designer and a developer at Twitter, Bootstrap has become one of the most popular front-end frameworks and open source projects in the world.

Bootstrap was created at Twitter in mid-2010 by @mdo and @fat. Prior to being an open-sourced framework, Bootstrap was known as Twitter Blueprint. A few months into development, Twitter held its first Hack Week and the project exploded as developers of all skill levels jumped in without any external guidance. It served as the style guide for internal tools development at the company for over a year before its public release, and continues to do so today.

Originally released on , we've since had over twenty releases, including two major rewrites with v2 and v3. With Bootstrap 2, we added responsive functionality to the entire framework as an optional stylesheet. Building on that with Bootstrap 3, we rewrote the library once more to make it responsive by default with a mobile first approach.

Team

Bootstrap is maintained by the founding team and a small group of invaluable core contributors, with the massive support and involvement of our community.

Core team

Get involved with Bootstrap development by opening an issue or submitting a pull request. Read our contributing guidelines for information on how we develop.

Sass team

The official Sass port of Bootstrap was created and is maintained by this team. It became part of Bootstrap's organization with v3.1.0. Read the Sass contributing guidelines for information on how the Sass port is developed.

Brand guidelines

Have a need for Bootstrap's brand resources? Great! We have only a few guidelines we follow, and in turn ask you to follow as well. These guidelines were inspired by MailChimp's Brand Assets.

Mark and logo

Use either the Bootstrap mark (a capital B) or the standard logo (just Bootstrap). It should always appear in Helvetica Neue Bold. Do not use the Twitter bird in association with Bootstrap.

B
B

Bootstrap

Bootstrap

Download mark

Download the Bootstrap mark in one of three styles, each available as an SVG file. Right click, Save as.

Bootstrap
Bootstrap
Bootstrap

Name

The project and framework should always be referred to as Bootstrap. No Twitter before it, no capital s, and no abbreviations except for one, a capital B.

Bootstrap

(correct)

BootStrap

(incorrect)

Twitter Bootstrap

(incorrect)

Colors

Our docs and branding use a handful of primary colors to differentiate what is Bootstrap from what is in Bootstrap. In other words, if it's purple, it's representative of Bootstrap.

\ No newline at end of file diff --git a/assets/css/docs.min.css b/assets/css/docs.min.css index aaa3fad398..e07f2677d7 100644 --- a/assets/css/docs.min.css +++ b/assets/css/docs.min.css @@ -1,20 +1,11 @@ -.hll{background-color:#ffc}.c{color:#999}.err{color:#A00;background-color:#FAA}.k{color:#069}.o{color:#555}.cm{color:#999}.cp{color:#099}.c1{color:#999}.cs{color:#999}.gd{background-color:#FCC;border:1px solid #C00}.ge{font-style:italic}.gr{color:red}.gh{color:#030}.gi{background-color:#CFC;border:1px solid #0C0}.go{color:#AAA}.gp{color:#009}.gu{color:#030}.gt{color:#9C6}.kc{color:#069}.kd{color:#069}.kn{color:#069}.kp{color:#069}.kr{color:#069}.kt{color:#078}.m{color:#F60}.s{color:#d44950}.na{color:#4f9fcf}.nb{color:#366}.nc{color:#0A8}.no{color:#360}.nd{color:#99F}.ni{color:#999}.ne{color:#C00}.nf{color:#C0F}.nl{color:#99F}.nn{color:#0CF}.nt{color:#2f6f9f}.nv{color:#033}.ow{color:#000}.w{color:#bbb}.mf{color:#F60}.mh{color:#F60}.mi{color:#F60}.mo{color:#F60}.sb{color:#C30}.sc{color:#C30}.sd{color:#C30;font-style:italic}.s2{color:#C30}.se{color:#C30}.sh{color:#C30}.si{color:#A00}.sx{color:#C30}.sr{color:#3AA}.s1{color:#C30}.ss{color:#FC3}.bp{color:#366}.vc{color:#033}.vg{color:#033}.vi{color:#033}.il{color:#F60}.css .nt+.nt,.css .o,.css .o+.nt{color:#999}/*! +/*! + * IE10 viewport hack for Surface/desktop Windows 8 bug + * Copyright 2014-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */@-ms-viewport{width:device-width}@-o-viewport{width:device-width}@viewport{width:device-width}.hll{background-color:#ffc}.c{color:#999}.err{color:#A00;background-color:#FAA}.k{color:#069}.o{color:#555}.cm{color:#999}.cp{color:#099}.c1{color:#999}.cs{color:#999}.gd{background-color:#FCC;border:1px solid #C00}.ge{font-style:italic}.gr{color:red}.gh{color:#030}.gi{background-color:#CFC;border:1px solid #0C0}.go{color:#AAA}.gp{color:#009}.gu{color:#030}.gt{color:#9C6}.kc{color:#069}.kd{color:#069}.kn{color:#069}.kp{color:#069}.kr{color:#069}.kt{color:#078}.m{color:#F60}.s{color:#d44950}.na{color:#4f9fcf}.nb{color:#366}.nc{color:#0A8}.no{color:#360}.nd{color:#99F}.ni{color:#999}.ne{color:#C00}.nf{color:#C0F}.nl{color:#99F}.nn{color:#0CF}.nt{color:#2f6f9f}.nv{color:#033}.ow{color:#000}.w{color:#bbb}.mf{color:#F60}.mh{color:#F60}.mi{color:#F60}.mo{color:#F60}.sb{color:#C30}.sc{color:#C30}.sd{color:#C30;font-style:italic}.s2{color:#C30}.se{color:#C30}.sh{color:#C30}.si{color:#A00}.sx{color:#C30}.sr{color:#3AA}.s1{color:#C30}.ss{color:#FC3}.bp{color:#366}.vc{color:#033}.vg{color:#033}.vi{color:#033}.il{color:#F60}.css .nt+.nt,.css .o,.css .o+.nt{color:#999}/*! * Bootstrap Docs (http://getbootstrap.com) * Copyright 2011-2015 Twitter, Inc. * Licensed under the Creative Commons Attribution 3.0 Unported License. For * details, see https://creativecommons.org/licenses/by/3.0/. - */body{position:relative}.table code{font-size:13px;font-weight:400}h2 code,h3 code,h4 code{background-color:inherit}.btn-outline{color:#563d7c;background-color:transparent;border-color:#563d7c}.btn-outline:active,.btn-outline:focus,.btn-outline:hover{color:#fff;background-color:#563d7c;border-color:#563d7c}.btn-outline-inverse{color:#fff;background-color:transparent;border-color:#cdbfe3}.btn-outline-inverse:active,.btn-outline-inverse:focus,.btn-outline-inverse:hover{color:#563d7c;text-shadow:none;background-color:#fff;border-color:#fff}.bs-docs-booticon{display:block;font-weight:500;color:#fff;text-align:center;cursor:default;background-color:#563d7c;border-radius:15%}.bs-docs-booticon-sm{width:30px;height:30px;font-size:20px;line-height:28px}.bs-docs-booticon-lg{width:144px;height:144px;font-size:108px;line-height:140px}.bs-docs-booticon-inverse{color:#563d7c;background-color:#fff}.bs-docs-booticon-outline{background-color:transparent;border:1px solid #cdbfe3}#skippy{display:block;padding:1em;color:#fff;background-color:#6f5499;outline:0}#skippy .skiplink-text{padding:.5em;outline:1px dotted}#content:focus{outline:0}.bs-docs-nav{margin-bottom:0;background-color:#fff;border-bottom:0}.bs-home-nav .bs-nav-b{display:none}.bs-docs-nav .navbar-brand,.bs-docs-nav .navbar-nav>li>a{font-weight:500;color:#563d7c}.bs-docs-nav .navbar-nav>.active>a,.bs-docs-nav .navbar-nav>.active>a:hover,.bs-docs-nav .navbar-nav>li>a:hover{color:#463265;background-color:#f9f9f9}.bs-docs-nav .navbar-toggle .icon-bar{background-color:#563d7c}.bs-docs-nav .navbar-header .navbar-toggle{border-color:#fff}.bs-docs-nav .navbar-header .navbar-toggle:focus,.bs-docs-nav .navbar-header .navbar-toggle:hover{background-color:#f9f9f9;border-color:#f9f9f9}.bs-docs-footer{padding-top:40px;padding-bottom:40px;margin-top:100px;color:#767676;text-align:center;border-top:1px solid #e5e5e5}.bs-docs-footer-links{padding-left:0;margin-top:20px}.bs-docs-footer-links li{display:inline;padding:0 2px}.bs-docs-footer-links li:first-child{padding-left:0}@media (min-width:768px){.bs-docs-footer p{margin-bottom:0}}.bs-docs-social{margin-bottom:20px;text-align:center}.bs-docs-social-buttons{display:inline-block;padding-left:0;margin-bottom:0;list-style:none}.bs-docs-social-buttons li{display:inline-block;padding:5px 8px;line-height:1}.bs-docs-social-buttons .twitter-follow-button{width:225px!important}.bs-docs-social-buttons .twitter-share-button{width:98px!important}.github-btn{overflow:hidden;border:0}.bs-docs-header,.bs-docs-masthead{position:relative;padding:30px 0;color:#cdbfe3;text-align:center;text-shadow:0 1px 0 rgba(0,0,0,.1);background-color:#6f5499;background-image:-webkit-gradient(linear,left top,left bottom,from(#563d7c),to(#6f5499));background-image:-webkit-linear-gradient(top,#563d7c 0,#6f5499 100%);background-image:-o-linear-gradient(top,#563d7c 0,#6f5499 100%);background-image:linear-gradient(to bottom,#563d7c 0,#6f5499 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#563d7c', endColorstr='#6F5499', GradientType=0);background-repeat:repeat-x}.bs-docs-masthead .bs-docs-booticon{margin:0 auto 30px}.bs-docs-masthead h1{font-weight:300;line-height:1;color:#fff}.bs-docs-masthead .lead{margin:0 auto 30px;font-size:20px;color:#fff}.bs-docs-masthead .version{margin-top:-15px;margin-bottom:30px;color:#9783b9}.bs-docs-masthead .btn{width:100%;padding:15px 30px;font-size:20px}@media (min-width:480px){.bs-docs-masthead .btn{width:auto}}@media (min-width:768px){.bs-docs-masthead{padding:80px 0}.bs-docs-masthead h1{font-size:60px}.bs-docs-masthead .lead{font-size:24px}}@media (min-width:992px){.bs-docs-masthead .lead{width:80%;font-size:30px}}.bs-docs-header{margin-bottom:40px;font-size:20px}.bs-docs-header h1{margin-top:0;color:#fff}.bs-docs-header p{margin-bottom:0;font-weight:300;line-height:1.4}.bs-docs-header .container{position:relative}@media (min-width:768px){.bs-docs-header{padding-top:60px;padding-bottom:60px;font-size:24px;text-align:left}.bs-docs-header h1{font-size:60px;line-height:1}}@media (min-width:992px){.bs-docs-header h1,.bs-docs-header p{margin-right:380px}}.carbonad{width:auto!important;height:auto!important;padding:20px!important;margin:30px -15px -31px!important;overflow:hidden;font-size:13px!important;line-height:16px!important;text-align:left;background:0 0!important;border:solid #866ab3!important;border-width:1px 0!important}.carbonad-img{margin:0!important}.carbonad-tag,.carbonad-text{display:block!important;float:none!important;width:auto!important;height:auto!important;margin-left:145px!important;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important}.carbonad-text{padding-top:0!important}.carbonad-tag{color:inherit!important;text-align:left!important}.carbonad-tag a,.carbonad-text a{color:#fff!important}.carbonad #azcarbon>img{display:none}@media (min-width:480px){.carbonad{width:330px!important;margin:20px auto!important;border-width:1px!important;border-radius:4px}.bs-docs-masthead .carbonad{margin:50px auto 0!important}}@media (min-width:768px){.carbonad{margin-right:0!important;margin-left:0!important}}@media (min-width:992px){.carbonad{position:absolute;top:0;right:15px;width:330px!important;padding:15px!important;margin:0!important}.bs-docs-masthead .carbonad{position:static}}.bs-docs-featurette{padding-top:40px;padding-bottom:40px;font-size:16px;line-height:1.5;color:#555;text-align:center;background-color:#fff;border-bottom:1px solid #e5e5e5}.bs-docs-featurette+.bs-docs-footer{margin-top:0;border-top:0}.bs-docs-featurette-title{margin-bottom:5px;font-size:30px;font-weight:400;color:#333}.half-rule{width:100px;margin:40px auto}.bs-docs-featurette h3{margin-bottom:5px;font-weight:400;color:#333}.bs-docs-featurette-img{display:block;margin-bottom:20px;color:#333}.bs-docs-featurette-img:hover{color:#337ab7;text-decoration:none}.bs-docs-featurette-img img{display:block;margin-bottom:15px}@media (min-width:480px){.bs-docs-featurette .img-responsive{margin-top:30px}}@media (min-width:768px){.bs-docs-featurette{padding-top:100px;padding-bottom:100px}.bs-docs-featurette-title{font-size:40px}.bs-docs-featurette .lead{max-width:80%;margin-right:auto;margin-left:auto}.bs-docs-featurette .img-responsive{margin-top:0}}.bs-docs-featured-sites{margin-right:-1px;margin-left:-1px}.bs-docs-featured-sites .col-xs-6{padding:1px}.bs-docs-featured-sites .img-responsive{margin-top:0}@media (min-width:768px){.bs-docs-featured-sites .col-sm-3:first-child img{border-top-left-radius:4px;border-bottom-left-radius:4px}.bs-docs-featured-sites .col-sm-3:last-child img{border-top-right-radius:4px;border-bottom-right-radius:4px}}.bs-examples .thumbnail{margin-bottom:10px}.bs-examples h4{margin-bottom:5px}.bs-examples p{margin-bottom:20px}@media (max-width:480px){.bs-examples{margin-right:-10px;margin-left:-10px}.bs-examples>[class^=col-]{padding-right:10px;padding-left:10px}}.bs-docs-sidebar.affix{position:static}@media (min-width:768px){.bs-docs-sidebar{padding-left:20px}}.bs-docs-sidenav{margin-top:20px;margin-bottom:20px}.bs-docs-sidebar .nav>li>a{display:block;padding:4px 20px;font-size:13px;font-weight:500;color:#767676}.bs-docs-sidebar .nav>li>a:focus,.bs-docs-sidebar .nav>li>a:hover{padding-left:19px;color:#563d7c;text-decoration:none;background-color:transparent;border-left:1px solid #563d7c}.bs-docs-sidebar .nav>.active:focus>a,.bs-docs-sidebar .nav>.active:hover>a,.bs-docs-sidebar .nav>.active>a{padding-left:18px;font-weight:700;color:#563d7c;background-color:transparent;border-left:2px solid #563d7c}.bs-docs-sidebar .nav .nav{display:none;padding-bottom:10px}.bs-docs-sidebar .nav .nav>li>a{padding-top:1px;padding-bottom:1px;padding-left:30px;font-size:12px;font-weight:400}.bs-docs-sidebar .nav .nav>li>a:focus,.bs-docs-sidebar .nav .nav>li>a:hover{padding-left:29px}.bs-docs-sidebar .nav .nav>.active:focus>a,.bs-docs-sidebar .nav .nav>.active:hover>a,.bs-docs-sidebar .nav .nav>.active>a{padding-left:28px;font-weight:500}.back-to-top,.bs-docs-theme-toggle{display:none;padding:4px 10px;margin-top:10px;margin-left:10px;font-size:12px;font-weight:500;color:#999}.back-to-top:hover,.bs-docs-theme-toggle:hover{color:#563d7c;text-decoration:none}.bs-docs-theme-toggle{margin-top:0}@media (min-width:768px){.back-to-top,.bs-docs-theme-toggle{display:block}}@media (min-width:992px){.bs-docs-sidebar .nav>.active>ul{display:block}.bs-docs-sidebar.affix,.bs-docs-sidebar.affix-bottom{width:213px}.bs-docs-sidebar.affix{position:fixed;top:20px}.bs-docs-sidebar.affix-bottom{position:absolute}.bs-docs-sidebar.affix .bs-docs-sidenav,.bs-docs-sidebar.affix-bottom .bs-docs-sidenav{margin-top:0;margin-bottom:0}}@media (min-width:1200px){.bs-docs-sidebar.affix,.bs-docs-sidebar.affix-bottom{width:263px}}.bs-docs-section{margin-bottom:60px}.bs-docs-section:last-child{margin-bottom:0}h1[id]{padding-top:20px;margin-top:0}.bs-callout{padding:20px;margin:20px 0;border:1px solid #eee;border-left-width:5px;border-radius:3px}.bs-callout h4{margin-top:0;margin-bottom:5px}.bs-callout p:last-child{margin-bottom:0}.bs-callout code{border-radius:3px}.bs-callout+.bs-callout{margin-top:-5px}.bs-callout-danger{border-left-color:#ce4844}.bs-callout-danger h4{color:#ce4844}.bs-callout-warning{border-left-color:#aa6708}.bs-callout-warning h4{color:#aa6708}.bs-callout-info{border-left-color:#1b809e}.bs-callout-info h4{color:#1b809e}.color-swatches{margin:0 -5px;overflow:hidden}.color-swatch{float:left;width:60px;height:60px;margin:0 5px;border-radius:3px}@media (min-width:768px){.color-swatch{width:100px;height:100px}}.color-swatches .gray-darker{background-color:#222}.color-swatches .gray-dark{background-color:#333}.color-swatches .gray{background-color:#555}.color-swatches .gray-light{background-color:#999}.color-swatches .gray-lighter{background-color:#eee}.color-swatches .brand-primary{background-color:#337ab7}.color-swatches .brand-success{background-color:#5cb85c}.color-swatches .brand-warning{background-color:#f0ad4e}.color-swatches .brand-danger{background-color:#d9534f}.color-swatches .brand-info{background-color:#5bc0de}.color-swatches .bs-purple{background-color:#563d7c}.color-swatches .bs-purple-light{background-color:#c7bfd3}.color-swatches .bs-purple-lighter{background-color:#e5e1ea}.color-swatches .bs-gray{background-color:#f9f9f9}.bs-team .team-member{line-height:32px;color:#555}.bs-team .team-member:hover{color:#333;text-decoration:none}.bs-team .github-btn{float:right;width:180px;height:20px;margin-top:6px}.bs-team img{float:left;width:32px;margin-right:10px;border-radius:4px}.bs-docs-browser-bugs td p{margin-bottom:0}.bs-docs-browser-bugs th:first-child{width:18%}.show-grid{margin-bottom:15px}.show-grid [class^=col-]{padding-top:10px;padding-bottom:10px;background-color:#eee;background-color:rgba(86,61,124,.15);border:1px solid #ddd;border:1px solid rgba(86,61,124,.2)}.bs-example{position:relative;padding:45px 15px 15px;margin:0 -15px 15px;border-color:#e5e5e5 #eee #eee;border-style:solid;border-width:1px 0;-webkit-box-shadow:inset 0 3px 6px rgba(0,0,0,.05);box-shadow:inset 0 3px 6px rgba(0,0,0,.05)}.bs-example:after{position:absolute;top:15px;left:15px;font-size:12px;font-weight:700;color:#959595;text-transform:uppercase;letter-spacing:1px;content:"Example"}.bs-example-padded-bottom{padding-bottom:24px}.bs-example+.highlight,.bs-example+.zero-clipboard+.highlight{margin:-15px -15px 15px;border-width:0 0 1px;border-radius:0}@media (min-width:768px){.bs-example{margin-right:0;margin-left:0;background-color:#fff;border-color:#ddd;border-width:1px;border-radius:4px 4px 0 0;-webkit-box-shadow:none;box-shadow:none}.bs-example+.highlight,.bs-example+.zero-clipboard+.highlight{margin-top:-16px;margin-right:0;margin-left:0;border-width:1px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.bs-example-standalone{border-radius:4px}}.bs-example .container{width:auto}.bs-example>.alert:last-child,.bs-example>.form-control:last-child,.bs-example>.jumbotron:last-child,.bs-example>.list-group:last-child,.bs-example>.navbar:last-child,.bs-example>.panel:last-child,.bs-example>.progress:last-child,.bs-example>.table-responsive:last-child>.table,.bs-example>.table:last-child,.bs-example>.well:last-child,.bs-example>blockquote:last-child,.bs-example>ol:last-child,.bs-example>p:last-child,.bs-example>ul:last-child{margin-bottom:0}.bs-example>p>.close{float:none}.bs-example-type .table .type-info{color:#767676;vertical-align:middle}.bs-example-type .table td{padding:15px 0;border-color:#eee}.bs-example-type .table tr:first-child td{border-top:0}.bs-example-type h1,.bs-example-type h2,.bs-example-type h3,.bs-example-type h4,.bs-example-type h5,.bs-example-type h6{margin:0}.bs-example-bg-classes p{padding:15px}.bs-example>.img-circle,.bs-example>.img-rounded,.bs-example>.img-thumbnail{margin:5px}.bs-example>.table-responsive>.table{background-color:#fff}.bs-example>.btn,.bs-example>.btn-group{margin-top:5px;margin-bottom:5px}.bs-example>.btn-toolbar+.btn-toolbar{margin-top:10px}.bs-example-control-sizing input[type=text]+input[type=text],.bs-example-control-sizing select{margin-top:10px}.bs-example-form .input-group{margin-bottom:10px}.bs-example>textarea.form-control{resize:vertical}.bs-example>.list-group{max-width:400px}.bs-example .navbar:last-child{margin-bottom:0}.bs-navbar-bottom-example,.bs-navbar-top-example{z-index:1;padding:0;overflow:hidden}.bs-navbar-bottom-example .navbar-header,.bs-navbar-top-example .navbar-header{margin-left:0}.bs-navbar-bottom-example .navbar-fixed-bottom,.bs-navbar-top-example .navbar-fixed-top{position:relative;margin-right:0;margin-left:0}.bs-navbar-top-example{padding-bottom:45px}.bs-navbar-top-example:after{top:auto;bottom:15px}.bs-navbar-top-example .navbar-fixed-top{top:-1px}.bs-navbar-bottom-example{padding-top:45px}.bs-navbar-bottom-example .navbar-fixed-bottom{bottom:-1px}.bs-navbar-bottom-example .navbar{margin-bottom:0}@media (min-width:768px){.bs-navbar-bottom-example .navbar-fixed-bottom,.bs-navbar-top-example .navbar-fixed-top{position:absolute}}.bs-example .pagination{margin-top:10px;margin-bottom:10px}.bs-example>.pager{margin-top:0}.bs-example-modal{background-color:#f5f5f5}.bs-example-modal .modal{position:relative;top:auto;right:auto;bottom:auto;left:auto;z-index:1;display:block}.bs-example-modal .modal-dialog{left:auto;margin-right:auto;margin-left:auto}.bs-example>.dropdown>.dropdown-toggle{float:left}.bs-example>.dropdown>.dropdown-menu{position:static;display:block;margin-bottom:5px;clear:left}.bs-example-tabs .nav-tabs{margin-bottom:15px}.bs-example-tooltips{text-align:center}.bs-example-tooltips>.btn{margin-top:5px;margin-bottom:5px}.bs-example-tooltip .tooltip{position:relative;display:inline-block;margin:10px 20px;opacity:1}.bs-example-popover{padding-bottom:24px;background-color:#f9f9f9}.bs-example-popover .popover{position:relative;display:block;float:left;width:260px;margin:20px}.scrollspy-example{position:relative;height:200px;margin-top:10px;overflow:auto}.bs-example>.nav-pills-stacked-example{max-width:300px}#collapseExample .well{margin-bottom:0}.bs-events-table>tbody>tr>td:first-child,.bs-events-table>thead>tr>th:first-child{white-space:nowrap}.bs-events-table>thead>tr>th:first-child{width:150px}.js-options-table>thead>tr>th:nth-child(1),.js-options-table>thead>tr>th:nth-child(2){width:100px}.js-options-table>thead>tr>th:nth-child(3){width:50px}.highlight{padding:9px 14px;margin-bottom:14px;background-color:#f7f7f9;border:1px solid #e1e1e8;border-radius:4px}.highlight pre{padding:0;margin-top:0;margin-bottom:0;word-break:normal;white-space:nowrap;background-color:transparent;border:0}.highlight pre code{font-size:inherit;color:#333}.highlight pre code:first-child{display:inline-block;padding-right:45px}.table-responsive .highlight pre{white-space:normal}.bs-table th small,.responsive-utilities th small{display:block;font-weight:400;color:#999}.responsive-utilities tbody th{font-weight:400}.responsive-utilities td{text-align:center}.responsive-utilities td.is-visible{color:#468847;background-color:#dff0d8!important}.responsive-utilities td.is-hidden{color:#ccc;background-color:#f9f9f9!important}.responsive-utilities-test{margin-top:5px}.responsive-utilities-test .col-xs-6{margin-bottom:10px}.responsive-utilities-test span{display:block;padding:15px 10px;font-size:14px;font-weight:700;line-height:1.1;text-align:center;border-radius:4px}.hidden-on .col-xs-6 .hidden-lg,.hidden-on .col-xs-6 .hidden-md,.hidden-on .col-xs-6 .hidden-sm,.hidden-on .col-xs-6 .hidden-xs,.visible-on .col-xs-6 .hidden-lg,.visible-on .col-xs-6 .hidden-md,.visible-on .col-xs-6 .hidden-sm,.visible-on .col-xs-6 .hidden-xs{color:#999;border:1px solid #ddd}.hidden-on .col-xs-6 .visible-lg-block,.hidden-on .col-xs-6 .visible-md-block,.hidden-on .col-xs-6 .visible-sm-block,.hidden-on .col-xs-6 .visible-xs-block,.visible-on .col-xs-6 .visible-lg-block,.visible-on .col-xs-6 .visible-md-block,.visible-on .col-xs-6 .visible-sm-block,.visible-on .col-xs-6 .visible-xs-block{color:#468847;background-color:#dff0d8;border:1px solid #d6e9c6}.bs-glyphicons{margin:0 -10px 20px;overflow:hidden}.bs-glyphicons-list{padding-left:0;list-style:none}.bs-glyphicons li{float:left;width:25%;height:115px;padding:10px;font-size:10px;line-height:1.4;text-align:center;background-color:#f9f9f9;border:1px solid #fff}.bs-glyphicons .glyphicon{margin-top:5px;margin-bottom:10px;font-size:24px}.bs-glyphicons .glyphicon-class{display:block;text-align:center;word-wrap:break-word}.bs-glyphicons li:hover{color:#fff;background-color:#563d7c}@media (min-width:768px){.bs-glyphicons{margin-right:0;margin-left:0}.bs-glyphicons li{width:12.5%;font-size:12px}}.bs-customizer .toggle{float:right;margin-top:25px}.bs-customizer label{margin-top:10px;font-weight:500;color:#555}.bs-customizer h2{padding-top:30px;margin-top:0;margin-bottom:5px}.bs-customizer h3{margin-bottom:0}.bs-customizer h4{margin-top:15px;margin-bottom:0}.bs-customizer .bs-callout h4{margin-top:0;margin-bottom:5px}.bs-customizer input[type=text]{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;background-color:#fafafa}.bs-customizer .help-block{margin-bottom:5px;font-size:12px}#less-section label{font-weight:400}.bs-customize-download .btn-outline{padding:20px}.bs-customizer-alert{position:fixed;top:0;right:0;left:0;z-index:1030;padding:15px 0;color:#fff;background-color:#d9534f;border-bottom:1px solid #b94441;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25);box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}.bs-customizer-alert .close{margin-top:-4px;font-size:24px}.bs-customizer-alert p{margin-bottom:0}.bs-customizer-alert .glyphicon{margin-right:5px}.bs-customizer-alert pre{margin:10px 0 0;color:#fff;background-color:#a83c3a;border-color:#973634;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 2px 4px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)}.bs-dropzone{position:relative;padding:20px;margin-bottom:20px;color:#777;text-align:center;border:2px dashed #eee;border-radius:4px}.bs-dropzone .import-header{margin-bottom:5px}.bs-dropzone .glyphicon-download-alt{font-size:40px}.bs-dropzone hr{width:100px}.bs-dropzone .lead{margin-bottom:10px;font-weight:400;color:#333}#import-manual-trigger{cursor:pointer}.bs-dropzone p:last-child{margin-bottom:0}.bs-brand-logos{display:table;width:100%;margin-bottom:15px;overflow:hidden;color:#563d7c;background-color:#f9f9f9;border-radius:4px}.bs-brand-item{padding:60px 0;text-align:center}.bs-brand-item+.bs-brand-item{border-top:1px solid #fff}.bs-brand-logos .inverse{color:#fff;background-color:#563d7c}.bs-brand-item h1,.bs-brand-item h3{margin-top:0;margin-bottom:0}.bs-brand-item .bs-docs-booticon{margin-right:auto;margin-left:auto}.bs-brand-item .glyphicon{width:30px;height:30px;margin:10px auto -10px;line-height:30px;color:#fff;border-radius:50%}.bs-brand-item .glyphicon-ok{background-color:#5cb85c}.bs-brand-item .glyphicon-remove{background-color:#d9534f}@media (min-width:768px){.bs-brand-item{display:table-cell;width:1%}.bs-brand-item+.bs-brand-item{border-top:0;border-left:1px solid #fff}.bs-brand-item h1{font-size:60px}}.zero-clipboard{position:relative;display:none}.btn-clipboard{position:absolute;top:0;right:0;z-index:10;display:block;padding:5px 8px;font-size:12px;color:#767676;cursor:pointer;background-color:#fff;border:1px solid #e1e1e8;border-radius:0 4px 0 4px}.btn-clipboard-hover{color:#fff;background-color:#563d7c;border-color:#563d7c}@media (min-width:768px){.zero-clipboard{display:block}.bs-example+.zero-clipboard .btn-clipboard{top:-16px;border-top-right-radius:0}}.anchorjs-link{color:inherit}@media (max-width:480px){.anchorjs-link{display:none}}:hover>.anchorjs-link{opacity:.75;-webkit-transition:color .16s linear;-o-transition:color .16s linear;transition:color .16s linear}.anchorjs-link:focus,:hover>.anchorjs-link:hover{text-decoration:none;opacity:1}#focusedInput{border-color:#ccc;border-color:rgba(82,168,236,.8);outline:0;outline:thin dotted\9;-webkit-box-shadow:0 0 8px rgba(82,168,236,.6);box-shadow:0 0 8px rgba(82,168,236,.6)} - -.v4-tease { - display: block; - padding: 15px 20px; - font-weight: bold; - color: #fff; - text-align: center; - background-color: #0275d8; -} -.v4-tease:hover { - color: #fff; - text-decoration: none; - background-color: #0269c2; -} + */body{position:relative}.table code{font-size:13px;font-weight:400}h2 code,h3 code,h4 code{background-color:inherit}.btn-outline{color:#563d7c;background-color:transparent;border-color:#563d7c}.btn-outline:active,.btn-outline:focus,.btn-outline:hover{color:#fff;background-color:#563d7c;border-color:#563d7c}.btn-outline-inverse{color:#fff;background-color:transparent;border-color:#cdbfe3}.btn-outline-inverse:active,.btn-outline-inverse:focus,.btn-outline-inverse:hover{color:#563d7c;text-shadow:none;background-color:#fff;border-color:#fff}.bs-docs-booticon{display:block;font-weight:500;color:#fff;text-align:center;cursor:default;background-color:#563d7c;border-radius:15%}.bs-docs-booticon-sm{width:30px;height:30px;font-size:20px;line-height:28px}.bs-docs-booticon-lg{width:144px;height:144px;font-size:108px;line-height:140px}.bs-docs-booticon-inverse{color:#563d7c;background-color:#fff}.bs-docs-booticon-outline{background-color:transparent;border:1px solid #cdbfe3}#skippy{display:block;padding:1em;color:#fff;background-color:#6f5499;outline:0}#skippy .skiplink-text{padding:.5em;outline:1px dotted}#content:focus{outline:0}.bs-docs-nav{margin-bottom:0;background-color:#fff;border-bottom:0}.bs-home-nav .bs-nav-b{display:none}.bs-docs-nav .navbar-brand,.bs-docs-nav .navbar-nav>li>a{font-weight:500;color:#563d7c}.bs-docs-nav .navbar-nav>.active>a,.bs-docs-nav .navbar-nav>.active>a:hover,.bs-docs-nav .navbar-nav>li>a:hover{color:#463265;background-color:#f9f9f9}.bs-docs-nav .navbar-toggle .icon-bar{background-color:#563d7c}.bs-docs-nav .navbar-header .navbar-toggle{border-color:#fff}.bs-docs-nav .navbar-header .navbar-toggle:focus,.bs-docs-nav .navbar-header .navbar-toggle:hover{background-color:#f9f9f9;border-color:#f9f9f9}.bs-docs-footer{padding-top:50px;padding-bottom:50px;margin-top:100px;color:#99979c;text-align:center;background-color:#2a2730}.bs-docs-footer a{color:#fff}.bs-docs-footer-links{padding-left:0;margin-bottom:20px}.bs-docs-footer-links li{display:inline-block}.bs-docs-footer-links li+li{margin-left:15px}@media (min-width:768px){.bs-docs-footer{text-align:left}.bs-docs-footer p{margin-bottom:0}}.bs-docs-header,.bs-docs-masthead{position:relative;padding:30px 0;color:#cdbfe3;text-align:center;text-shadow:0 1px 0 rgba(0,0,0,.1);background-color:#6f5499;background-image:-webkit-gradient(linear,left top,left bottom,from(#563d7c),to(#6f5499));background-image:-webkit-linear-gradient(top,#563d7c 0,#6f5499 100%);background-image:-o-linear-gradient(top,#563d7c 0,#6f5499 100%);background-image:linear-gradient(to bottom,#563d7c 0,#6f5499 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#563d7c', endColorstr='#6F5499', GradientType=0);background-repeat:repeat-x}.bs-docs-masthead .bs-docs-booticon{margin:0 auto 30px}.bs-docs-masthead h1{font-weight:300;line-height:1;color:#fff}.bs-docs-masthead .lead{margin:0 auto 30px;font-size:20px;color:#fff}.bs-docs-masthead .version{margin-top:-15px;margin-bottom:30px;color:#9783b9}.bs-docs-masthead .btn{width:100%;padding:15px 30px;font-size:20px}@media (min-width:480px){.bs-docs-masthead .btn{width:auto}}@media (min-width:768px){.bs-docs-masthead{padding:80px 0}.bs-docs-masthead h1{font-size:60px}.bs-docs-masthead .lead{font-size:24px}}@media (min-width:992px){.bs-docs-masthead .lead{width:80%;font-size:30px}}.bs-docs-header{margin-bottom:40px;font-size:20px}.bs-docs-header h1{margin-top:0;color:#fff}.bs-docs-header p{margin-bottom:0;font-weight:300;line-height:1.4}.bs-docs-header .container{position:relative}@media (min-width:768px){.bs-docs-header{padding-top:60px;padding-bottom:60px;font-size:24px;text-align:left}.bs-docs-header h1{font-size:60px;line-height:1}}@media (min-width:992px){.bs-docs-header h1,.bs-docs-header p{margin-right:380px}}.carbonad{width:auto!important;height:auto!important;padding:20px!important;margin:30px -15px -31px!important;overflow:hidden;font-size:13px!important;line-height:16px!important;text-align:left;background:0 0!important;border:solid #866ab3!important;border-width:1px 0!important}.carbonad-img{margin:0!important}.carbonad-tag,.carbonad-text{display:block!important;float:none!important;width:auto!important;height:auto!important;margin-left:145px!important;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important}.carbonad-text{padding-top:0!important}.carbonad-tag{color:inherit!important;text-align:left!important}.carbonad-tag a,.carbonad-text a{color:#fff!important}.carbonad #azcarbon>img{display:none}@media (min-width:480px){.carbonad{width:330px!important;margin:20px auto!important;border-width:1px!important;border-radius:4px}.bs-docs-masthead .carbonad{margin:50px auto 0!important}}@media (min-width:768px){.carbonad{margin-right:0!important;margin-left:0!important}}@media (min-width:992px){.carbonad{position:absolute;top:0;right:15px;width:330px!important;padding:15px!important;margin:0!important}.bs-docs-masthead .carbonad{position:static}}.bs-docs-featurette{padding-top:40px;padding-bottom:40px;font-size:16px;line-height:1.5;color:#555;text-align:center;background-color:#fff;border-bottom:1px solid #e5e5e5}.bs-docs-featurette+.bs-docs-footer{margin-top:0;border-top:0}.bs-docs-featurette-title{margin-bottom:5px;font-size:30px;font-weight:400;color:#333}.half-rule{width:100px;margin:40px auto}.bs-docs-featurette h3{margin-bottom:5px;font-weight:400;color:#333}.bs-docs-featurette-img{display:block;margin-bottom:20px;color:#333}.bs-docs-featurette-img:hover{color:#337ab7;text-decoration:none}.bs-docs-featurette-img img{display:block;margin-bottom:15px}@media (min-width:480px){.bs-docs-featurette .img-responsive{margin-top:30px}}@media (min-width:768px){.bs-docs-featurette{padding-top:100px;padding-bottom:100px}.bs-docs-featurette-title{font-size:40px}.bs-docs-featurette .lead{max-width:80%;margin-right:auto;margin-left:auto}.bs-docs-featurette .img-responsive{margin-top:0}}.bs-docs-featured-sites{margin-right:-1px;margin-left:-1px}.bs-docs-featured-sites .col-xs-6{padding:1px}.bs-docs-featured-sites .img-responsive{margin-top:0}@media (min-width:768px){.bs-docs-featured-sites .col-sm-3:first-child img{border-top-left-radius:4px;border-bottom-left-radius:4px}.bs-docs-featured-sites .col-sm-3:last-child img{border-top-right-radius:4px;border-bottom-right-radius:4px}}.bs-examples .thumbnail{margin-bottom:10px}.bs-examples h4{margin-bottom:5px}.bs-examples p{margin-bottom:20px}@media (max-width:480px){.bs-examples{margin-right:-10px;margin-left:-10px}.bs-examples>[class^=col-]{padding-right:10px;padding-left:10px}}.bs-docs-sidebar.affix{position:static}@media (min-width:768px){.bs-docs-sidebar{padding-left:20px}}.bs-docs-sidenav{margin-top:20px;margin-bottom:20px}.bs-docs-sidebar .nav>li>a{display:block;padding:4px 20px;font-size:13px;font-weight:500;color:#767676}.bs-docs-sidebar .nav>li>a:focus,.bs-docs-sidebar .nav>li>a:hover{padding-left:19px;color:#563d7c;text-decoration:none;background-color:transparent;border-left:1px solid #563d7c}.bs-docs-sidebar .nav>.active:focus>a,.bs-docs-sidebar .nav>.active:hover>a,.bs-docs-sidebar .nav>.active>a{padding-left:18px;font-weight:700;color:#563d7c;background-color:transparent;border-left:2px solid #563d7c}.bs-docs-sidebar .nav .nav{display:none;padding-bottom:10px}.bs-docs-sidebar .nav .nav>li>a{padding-top:1px;padding-bottom:1px;padding-left:30px;font-size:12px;font-weight:400}.bs-docs-sidebar .nav .nav>li>a:focus,.bs-docs-sidebar .nav .nav>li>a:hover{padding-left:29px}.bs-docs-sidebar .nav .nav>.active:focus>a,.bs-docs-sidebar .nav .nav>.active:hover>a,.bs-docs-sidebar .nav .nav>.active>a{padding-left:28px;font-weight:500}.back-to-top,.bs-docs-theme-toggle{display:none;padding:4px 10px;margin-top:10px;margin-left:10px;font-size:12px;font-weight:500;color:#999}.back-to-top:hover,.bs-docs-theme-toggle:hover{color:#563d7c;text-decoration:none}.bs-docs-theme-toggle{margin-top:0}@media (min-width:768px){.back-to-top,.bs-docs-theme-toggle{display:block}}@media (min-width:992px){.bs-docs-sidebar .nav>.active>ul{display:block}.bs-docs-sidebar.affix,.bs-docs-sidebar.affix-bottom{width:213px}.bs-docs-sidebar.affix{position:fixed;top:20px}.bs-docs-sidebar.affix-bottom{position:absolute}.bs-docs-sidebar.affix .bs-docs-sidenav,.bs-docs-sidebar.affix-bottom .bs-docs-sidenav{margin-top:0;margin-bottom:0}}@media (min-width:1200px){.bs-docs-sidebar.affix,.bs-docs-sidebar.affix-bottom{width:263px}}.bs-docs-section{margin-bottom:60px}.bs-docs-section:last-child{margin-bottom:0}h1[id]{padding-top:20px;margin-top:0}.bs-callout{padding:20px;margin:20px 0;border:1px solid #eee;border-left-width:5px;border-radius:3px}.bs-callout h4{margin-top:0;margin-bottom:5px}.bs-callout p:last-child{margin-bottom:0}.bs-callout code{border-radius:3px}.bs-callout+.bs-callout{margin-top:-5px}.bs-callout-danger{border-left-color:#ce4844}.bs-callout-danger h4{color:#ce4844}.bs-callout-warning{border-left-color:#aa6708}.bs-callout-warning h4{color:#aa6708}.bs-callout-info{border-left-color:#1b809e}.bs-callout-info h4{color:#1b809e}.color-swatches{margin:0 -5px;overflow:hidden}.color-swatch{float:left;width:60px;height:60px;margin:0 5px;border-radius:3px}@media (min-width:768px){.color-swatch{width:100px;height:100px}}.color-swatches .gray-darker{background-color:#222}.color-swatches .gray-dark{background-color:#333}.color-swatches .gray{background-color:#555}.color-swatches .gray-light{background-color:#999}.color-swatches .gray-lighter{background-color:#eee}.color-swatches .brand-primary{background-color:#337ab7}.color-swatches .brand-success{background-color:#5cb85c}.color-swatches .brand-warning{background-color:#f0ad4e}.color-swatches .brand-danger{background-color:#d9534f}.color-swatches .brand-info{background-color:#5bc0de}.color-swatches .bs-purple{background-color:#563d7c}.color-swatches .bs-purple-light{background-color:#c7bfd3}.color-swatches .bs-purple-lighter{background-color:#e5e1ea}.color-swatches .bs-gray{background-color:#f9f9f9}.bs-team .team-member{line-height:32px;color:#555}.bs-team .team-member:hover{color:#333;text-decoration:none}.bs-team .github-btn{float:right;width:180px;height:20px;margin-top:6px}.bs-team img{float:left;width:32px;margin-right:10px;border-radius:4px}.bs-docs-browser-bugs td p{margin-bottom:0}.bs-docs-browser-bugs th:first-child{width:18%}.show-grid{margin-bottom:15px}.show-grid [class^=col-]{padding-top:10px;padding-bottom:10px;background-color:#eee;background-color:rgba(86,61,124,.15);border:1px solid #ddd;border:1px solid rgba(86,61,124,.2)}.bs-example{position:relative;padding:45px 15px 15px;margin:0 -15px 15px;border-color:#e5e5e5 #eee #eee;border-style:solid;border-width:1px 0;-webkit-box-shadow:inset 0 3px 6px rgba(0,0,0,.05);box-shadow:inset 0 3px 6px rgba(0,0,0,.05)}.bs-example:after{position:absolute;top:15px;left:15px;font-size:12px;font-weight:700;color:#959595;text-transform:uppercase;letter-spacing:1px;content:"Example"}.bs-example-padded-bottom{padding-bottom:24px}.bs-example+.highlight,.bs-example+.zero-clipboard+.highlight{margin:-15px -15px 15px;border-width:0 0 1px;border-radius:0}@media (min-width:768px){.bs-example{margin-right:0;margin-left:0;background-color:#fff;border-color:#ddd;border-width:1px;border-radius:4px 4px 0 0;-webkit-box-shadow:none;box-shadow:none}.bs-example+.highlight,.bs-example+.zero-clipboard+.highlight{margin-top:-16px;margin-right:0;margin-left:0;border-width:1px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.bs-example-standalone{border-radius:4px}}.bs-example .container{width:auto}.bs-example>.alert:last-child,.bs-example>.form-control:last-child,.bs-example>.jumbotron:last-child,.bs-example>.list-group:last-child,.bs-example>.navbar:last-child,.bs-example>.panel:last-child,.bs-example>.progress:last-child,.bs-example>.table-responsive:last-child>.table,.bs-example>.table:last-child,.bs-example>.well:last-child,.bs-example>blockquote:last-child,.bs-example>ol:last-child,.bs-example>p:last-child,.bs-example>ul:last-child{margin-bottom:0}.bs-example>p>.close{float:none}.bs-example-type .table .type-info{color:#767676;vertical-align:middle}.bs-example-type .table td{padding:15px 0;border-color:#eee}.bs-example-type .table tr:first-child td{border-top:0}.bs-example-type h1,.bs-example-type h2,.bs-example-type h3,.bs-example-type h4,.bs-example-type h5,.bs-example-type h6{margin:0}.bs-example-bg-classes p{padding:15px}.bs-example>.img-circle,.bs-example>.img-rounded,.bs-example>.img-thumbnail{margin:5px}.bs-example>.table-responsive>.table{background-color:#fff}.bs-example>.btn,.bs-example>.btn-group{margin-top:5px;margin-bottom:5px}.bs-example>.btn-toolbar+.btn-toolbar{margin-top:10px}.bs-example-control-sizing input[type=text]+input[type=text],.bs-example-control-sizing select{margin-top:10px}.bs-example-form .input-group{margin-bottom:10px}.bs-example>textarea.form-control{resize:vertical}.bs-example>.list-group{max-width:400px}.bs-example .navbar:last-child{margin-bottom:0}.bs-navbar-bottom-example,.bs-navbar-top-example{z-index:1;padding:0;overflow:hidden}.bs-navbar-bottom-example .navbar-header,.bs-navbar-top-example .navbar-header{margin-left:0}.bs-navbar-bottom-example .navbar-fixed-bottom,.bs-navbar-top-example .navbar-fixed-top{position:relative;margin-right:0;margin-left:0}.bs-navbar-top-example{padding-bottom:45px}.bs-navbar-top-example:after{top:auto;bottom:15px}.bs-navbar-top-example .navbar-fixed-top{top:-1px}.bs-navbar-bottom-example{padding-top:45px}.bs-navbar-bottom-example .navbar-fixed-bottom{bottom:-1px}.bs-navbar-bottom-example .navbar{margin-bottom:0}@media (min-width:768px){.bs-navbar-bottom-example .navbar-fixed-bottom,.bs-navbar-top-example .navbar-fixed-top{position:absolute}}.bs-example .pagination{margin-top:10px;margin-bottom:10px}.bs-example>.pager{margin-top:0}.bs-example-modal{background-color:#f5f5f5}.bs-example-modal .modal{position:relative;top:auto;right:auto;bottom:auto;left:auto;z-index:1;display:block}.bs-example-modal .modal-dialog{left:auto;margin-right:auto;margin-left:auto}.bs-example>.dropdown>.dropdown-toggle{float:left}.bs-example>.dropdown>.dropdown-menu{position:static;display:block;margin-bottom:5px;clear:left}.bs-example-tabs .nav-tabs{margin-bottom:15px}.bs-example-tooltips{text-align:center}.bs-example-tooltips>.btn{margin-top:5px;margin-bottom:5px}.bs-example-tooltip .tooltip{position:relative;display:inline-block;margin:10px 20px;opacity:1}.bs-example-popover{padding-bottom:24px;background-color:#f9f9f9}.bs-example-popover .popover{position:relative;display:block;float:left;width:260px;margin:20px}.scrollspy-example{position:relative;height:200px;margin-top:10px;overflow:auto}.bs-example>.nav-pills-stacked-example{max-width:300px}#collapseExample .well{margin-bottom:0}.bs-events-table>tbody>tr>td:first-child,.bs-events-table>thead>tr>th:first-child{white-space:nowrap}.bs-events-table>thead>tr>th:first-child{width:150px}.js-options-table>thead>tr>th:nth-child(1),.js-options-table>thead>tr>th:nth-child(2){width:100px}.js-options-table>thead>tr>th:nth-child(3){width:50px}.highlight{padding:9px 14px;margin-bottom:14px;background-color:#f7f7f9;border:1px solid #e1e1e8;border-radius:4px}.highlight pre{padding:0;margin-top:0;margin-bottom:0;word-break:normal;white-space:nowrap;background-color:transparent;border:0}.highlight pre code{font-size:inherit;color:#333}.highlight pre code:first-child{display:inline-block;padding-right:45px}.table-responsive .highlight pre{white-space:normal}.bs-table th small,.responsive-utilities th small{display:block;font-weight:400;color:#999}.responsive-utilities tbody th{font-weight:400}.responsive-utilities td{text-align:center}.responsive-utilities td.is-visible{color:#468847;background-color:#dff0d8!important}.responsive-utilities td.is-hidden{color:#ccc;background-color:#f9f9f9!important}.responsive-utilities-test{margin-top:5px}.responsive-utilities-test .col-xs-6{margin-bottom:10px}.responsive-utilities-test span{display:block;padding:15px 10px;font-size:14px;font-weight:700;line-height:1.1;text-align:center;border-radius:4px}.hidden-on .col-xs-6 .hidden-lg,.hidden-on .col-xs-6 .hidden-md,.hidden-on .col-xs-6 .hidden-sm,.hidden-on .col-xs-6 .hidden-xs,.visible-on .col-xs-6 .hidden-lg,.visible-on .col-xs-6 .hidden-md,.visible-on .col-xs-6 .hidden-sm,.visible-on .col-xs-6 .hidden-xs{color:#999;border:1px solid #ddd}.hidden-on .col-xs-6 .visible-lg-block,.hidden-on .col-xs-6 .visible-md-block,.hidden-on .col-xs-6 .visible-sm-block,.hidden-on .col-xs-6 .visible-xs-block,.visible-on .col-xs-6 .visible-lg-block,.visible-on .col-xs-6 .visible-md-block,.visible-on .col-xs-6 .visible-sm-block,.visible-on .col-xs-6 .visible-xs-block{color:#468847;background-color:#dff0d8;border:1px solid #d6e9c6}.bs-glyphicons{margin:0 -10px 20px;overflow:hidden}.bs-glyphicons-list{padding-left:0;list-style:none}.bs-glyphicons li{float:left;width:25%;height:115px;padding:10px;font-size:10px;line-height:1.4;text-align:center;background-color:#f9f9f9;border:1px solid #fff}.bs-glyphicons .glyphicon{margin-top:5px;margin-bottom:10px;font-size:24px}.bs-glyphicons .glyphicon-class{display:block;text-align:center;word-wrap:break-word}.bs-glyphicons li:hover{color:#fff;background-color:#563d7c}@media (min-width:768px){.bs-glyphicons{margin-right:0;margin-left:0}.bs-glyphicons li{width:12.5%;font-size:12px}}.bs-customizer .toggle{float:right;margin-top:25px}.bs-customizer label{margin-top:10px;font-weight:500;color:#555}.bs-customizer h2{padding-top:30px;margin-top:0;margin-bottom:5px}.bs-customizer h3{margin-bottom:0}.bs-customizer h4{margin-top:15px;margin-bottom:0}.bs-customizer .bs-callout h4{margin-top:0;margin-bottom:5px}.bs-customizer input[type=text]{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;background-color:#fafafa}.bs-customizer .help-block{margin-bottom:5px;font-size:12px}#less-section label{font-weight:400}.bs-customize-download .btn-outline{padding:20px}.bs-customizer-alert{position:fixed;top:0;right:0;left:0;z-index:1030;padding:15px 0;color:#fff;background-color:#d9534f;border-bottom:1px solid #b94441;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25);box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}.bs-customizer-alert .close{margin-top:-4px;font-size:24px}.bs-customizer-alert p{margin-bottom:0}.bs-customizer-alert .glyphicon{margin-right:5px}.bs-customizer-alert pre{margin:10px 0 0;color:#fff;background-color:#a83c3a;border-color:#973634;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 2px 4px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)}.bs-dropzone{position:relative;padding:20px;margin-bottom:20px;color:#777;text-align:center;border:2px dashed #eee;border-radius:4px}.bs-dropzone .import-header{margin-bottom:5px}.bs-dropzone .glyphicon-download-alt{font-size:40px}.bs-dropzone hr{width:100px}.bs-dropzone .lead{margin-bottom:10px;font-weight:400;color:#333}#import-manual-trigger{cursor:pointer}.bs-dropzone p:last-child{margin-bottom:0}.bs-brand-logos{display:table;width:100%;margin-bottom:15px;overflow:hidden;color:#563d7c;background-color:#f9f9f9;border-radius:4px}.bs-brand-item{padding:60px 0;text-align:center}.bs-brand-item+.bs-brand-item{border-top:1px solid #fff}.bs-brand-logos .inverse{color:#fff;background-color:#563d7c}.bs-brand-item h1,.bs-brand-item h3{margin-top:0;margin-bottom:0}.bs-brand-item .bs-docs-booticon{margin-right:auto;margin-left:auto}.bs-brand-item .glyphicon{width:30px;height:30px;margin:10px auto -10px;line-height:30px;color:#fff;border-radius:50%}.bs-brand-item .glyphicon-ok{background-color:#5cb85c}.bs-brand-item .glyphicon-remove{background-color:#d9534f}@media (min-width:768px){.bs-brand-item{display:table-cell;width:1%}.bs-brand-item+.bs-brand-item{border-top:0;border-left:1px solid #fff}.bs-brand-item h1{font-size:60px}}.zero-clipboard{position:relative;display:none}.btn-clipboard{position:absolute;top:0;right:0;z-index:10;display:block;padding:5px 8px;font-size:12px;color:#767676;cursor:pointer;background-color:#fff;border:1px solid #e1e1e8;border-radius:0 4px 0 4px}.btn-clipboard-hover{color:#fff;background-color:#563d7c;border-color:#563d7c}@media (min-width:768px){.zero-clipboard{display:block}.bs-example+.zero-clipboard .btn-clipboard{top:-16px;border-top-right-radius:0}}.anchorjs-link{color:inherit}@media (max-width:480px){.anchorjs-link{display:none}}:hover>.anchorjs-link{opacity:.75;-webkit-transition:color .16s linear;-o-transition:color .16s linear;transition:color .16s linear}.anchorjs-link:focus,:hover>.anchorjs-link:hover{text-decoration:none;opacity:1}#focusedInput{border-color:#ccc;border-color:rgba(82,168,236,.8);outline:0;outline:thin dotted\9;-webkit-box-shadow:0 0 8px rgba(82,168,236,.6);box-shadow:0 0 8px rgba(82,168,236,.6)} +/*# sourceMappingURL=docs.min.css.map */ \ No newline at end of file diff --git a/assets/css/docs.min.css.map b/assets/css/docs.min.css.map new file mode 100644 index 0000000000..db5a270e21 --- /dev/null +++ b/assets/css/docs.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["docs/assets/css/ie10-viewport-bug-workaround.css","docs/assets/css/src/pygments-manni.css","docs/assets/css/src/docs.css"],"names":[],"mappings":";;;;AAYA,cAAoB,MAAO,aAC3B,aAAoB,MAAO,aAC3B,UAAoB,MAAO,aCd3B,KAAO,iBAAkB,KAEzB,GAAK,MAAO,KACZ,KAAO,MAAO,KAAS,iBAAkB,KACzC,GAAK,MAAO,KACZ,GAAK,MAAO,KACZ,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,iBAAkB,KAAS,OAAQ,IAAI,MAAM,KACnD,IAAM,WAAY,OAClB,IAAM,MAAO,IACb,IAAM,MAAO,KACb,IAAM,iBAAkB,KAAS,OAAQ,IAAI,MAAM,KACnD,IAAM,MAAO,KACb,IAAM,MAAO,KAEb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,GAAK,MAAO,KACZ,GAAK,MAAO,QACZ,IAAM,MAAO,QACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,QACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,GAAK,MAAO,KACZ,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KAAS,WAAY,OAClC,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KACb,IAAM,MAAO,KAIb,aAFA,QACA,YACiB,MAAO;;;;;AC7CxB,KACE,SAAU,SAIZ,YACE,UAAW,KACX,YAAa,IAIf,QACA,QACA,QACE,iBAAkB,QAIpB,aACE,MAAO,QACP,iBAAkB,YAClB,aAAc,QAIhB,oBADA,mBADA,mBAGE,MAAO,KACP,iBAAkB,QAClB,aAAc,QAIhB,qBACE,MAAO,KACP,iBAAkB,YAClB,aAAc,QAIhB,4BADA,2BADA,2BAGE,MAAO,QACP,YAAa,KACb,iBAAkB,KAClB,aAAc,KAIhB,kBACE,QAAS,MACT,YAAa,IACb,MAAO,KACP,WAAY,OACZ,OAAQ,QACR,iBAAkB,QAClB,cAAe,IAEjB,qBACE,MAAO,KACP,OAAQ,KACR,UAAW,KACX,YAAa,KAEf,qBACE,MAAO,MACP,OAAQ,MACR,UAAW,MACX,YAAa,MAEf,0BACE,MAAO,QACP,iBAAkB,KAEpB,0BACE,iBAAkB,YAClB,OAAQ,IAAI,MAAM,QAWpB,QACE,QAAS,MACT,QAAS,IACT,MAAO,KACP,iBAAkB,QAClB,QAAS,EAGX,uBACE,QAAS,KACT,QAAS,IAAI,OAGf,eACE,QAAS,EAUX,aACE,cAAe,EACf,iBAAkB,KAClB,cAAe,EAEjB,uBACE,QAAS,KAEX,2BACA,8BACE,YAAa,IACb,MAAO,QAGT,mCACA,yCAFA,oCAGE,MAAO,QACP,iBAAkB,QAEpB,sCACE,iBAAkB,QAEpB,2CACE,aAAc,KAGhB,iDADA,iDAEE,iBAAkB,QAClB,aAAc,QAUhB,gBACE,YAAa,KACb,eAAgB,KAChB,WAAY,MACZ,MAAO,QACP,WAAY,OACZ,iBAAkB,QAEpB,kBACE,MAAO,KAET,sBACE,aAAc,EACd,cAAe,KAEjB,yBACE,QAAS,aAEX,4BACE,YAAa,KAGf,yBACE,gBACE,WAAY,KAEd,kBACE,cAAe,GAanB,gBADA,kBAEE,SAAU,SACV,QAAS,KAAK,EACd,MAAO,QACP,WAAY,OACZ,YAAa,EAAE,IAAI,EAAE,eACrB,iBAAkB,QAClB,iBAAkB,wEAClB,iBAAkB,oDAClB,iBAAiB,+CACjB,iBAAiB,kDACjB,OAAQ,2GACR,kBAAmB,SAIrB,oCACE,OAAQ,EAAE,KAAK,KAEjB,qBACE,YAAa,IACb,YAAa,EACb,MAAO,KAET,wBACE,OAAQ,EAAE,KAAK,KACf,UAAW,KACX,MAAO,KAET,2BACE,WAAY,MACZ,cAAe,KACf,MAAO,QAET,uBACE,MAAO,KACP,QAAS,KAAK,KACd,UAAW,KAGb,yBACE,uBACE,MAAO,MAIX,yBACE,kBACE,QAAS,KAAK,EAEhB,qBACE,UAAW,KAEb,wBACE,UAAW,MAIf,yBACE,wBACE,MAAO,IACP,UAAW,MAYf,gBACE,cAAe,KACf,UAAW,KAEb,mBACE,WAAY,EACZ,MAAO,KAET,kBACE,cAAe,EACf,YAAa,IACb,YAAa,IAEf,2BACE,SAAU,SAGZ,yBACE,gBACE,YAAa,KACb,eAAgB,KAChB,UAAW,KACX,WAAY,KAEd,mBACE,UAAW,KACX,YAAa,GAIjB,yBACE,mBACA,kBACE,aAAc,OAYlB,UACE,MAAO,eACP,OAAQ,eACR,QAAS,eACT,OAAQ,KAAK,MAAM,gBACnB,SAAU,OACV,UAA6B,eAC7B,YAAa,eACb,WAAY,KACZ,WAAY,cACZ,OAAQ,MAAM,kBACd,aAAc,IAAI,YAEpB,cACE,OAAQ,YAGV,cADA,eAEE,QAAS,gBACT,MAAO,eACP,MAAO,eACP,OAAQ,eACR,YAAa,gBACb,YAAa,iBAAkB,UAAW,MAAO,qBAEnD,eACE,YAAa,YAEf,cACE,MAAO,kBACP,WAAY,eAGd,gBADA,iBAEE,MAAO,eAET,wBACE,QAAS,KAGX,yBACE,UACE,MAAO,gBACP,OAAQ,KAAK,eACb,aAAc,cACd,cAAe,IAEjB,4BACE,OAAQ,KAAK,KAAK,aAItB,yBACE,UACE,aAAc,YACd,YAAa,aAIjB,yBACE,UACE,SAAU,SACV,IAAK,EACL,MAAO,KACP,MAA+G,gBAC/G,QAAS,eACT,OAAQ,YAEV,4BACE,SAAU,QAWd,oBACE,YAAa,KACb,eAAgB,KAChB,UAAW,KACX,YAAa,IACb,MAAO,KACP,WAAY,OACZ,iBAAkB,KAClB,cAAe,IAAI,MAAM,QAE3B,oCACE,WAAY,EACZ,WAAY,EAGd,0BACE,cAAe,IACf,UAAW,KACX,YAAa,IACb,MAAO,KAET,WACE,MAAO,MACP,OAAQ,KAAK,KAEf,uBACE,cAAe,IACf,YAAa,IACb,MAAO,KAET,wBACE,QAAS,MACT,cAAe,KACf,MAAO,KAET,8BACE,MAAO,QACP,gBAAiB,KAEnB,4BACE,QAAS,MACT,cAAe,KAGjB,yBACE,oCACE,WAAY,MAGhB,yBACE,oBACE,YAAa,MACb,eAAgB,MAElB,0BACE,UAAW,KAEb,0BACE,UAAW,IACX,aAAc,KACd,YAAa,KAEf,oCACE,WAAY,GAWhB,wBACE,aAAc,KACd,YAAa,KAEf,kCACE,QAAS,IAEX,wCACE,WAAY,EAGd,yBACE,kDACE,uBAAwB,IACxB,0BAA2B,IAE7B,iDACE,wBAAyB,IACzB,2BAA4B,KAWhC,wBACE,cAAe,KAEjB,gBACE,cAAe,IAEjB,eACE,cAAe,KAGjB,yBACE,aACE,aAAc,MACd,YAAa,MAEf,2BACE,cAAe,KACf,aAAc,MAalB,uBACE,SAAU,OAEZ,yBACE,iBACE,aAAc,MAKlB,iBACE,WAAY,KACZ,cAAe,KAIjB,2BACE,QAAS,MACT,QAAS,IAAI,KACb,UAAW,KACX,YAAa,IACb,MAAO,QAGT,iCADA,iCAEE,aAAc,KACd,MAAO,QACP,gBAAiB,KACjB,iBAAkB,YAClB,YAAa,IAAI,MAAM,QAIzB,sCADA,sCADA,gCAGE,aAAc,KACd,YAAa,IACb,MAAO,QACP,iBAAkB,YAClB,YAAa,IAAI,MAAM,QAIzB,2BACE,QAAS,KACT,eAA6N,KAE/N,gCACE,YAAa,IACb,eAAgB,IAChB,aAAc,KACd,UAAW,KACX,YAAa,IAGf,sCADA,sCAEE,aAAc,KAIhB,2CADA,2CADA,qCAGE,aAAc,KACd,YAAa,IAIf,aACA,sBACE,QAAS,KACT,QAAS,IAAI,KACb,WAAY,KACZ,YAAa,KACb,UAAW,KACX,YAAa,IACb,MAAO,KAET,mBACA,4BACE,MAAO,QACP,gBAAiB,KAEnB,sBACE,WAAY,EAGd,yBACE,aACA,sBACE,QAAS,OAKb,yBACE,iCACE,QAAS,MAGX,uBACA,8BACE,MAAO,MAET,uBACE,SAAU,MACV,IAA6X,KAE/X,8BACE,SAAU,SAGZ,wCADA,+CAEE,WAAY,EACZ,cAAe,GAGnB,0BAGE,uBADA,8BAEE,MAAO,OAYX,iBACE,cAAe,KAEjB,4BACE,cAAe,EAGjB,OACE,YAAa,KACb,WAAY,EAYd,YACE,QAAS,KACT,OAAQ,KAAK,EACb,OAAQ,IAAI,MAAM,KAClB,kBAAmB,IACnB,cAAe,IAEjB,eACE,WAAY,EACZ,cAAe,IAEjB,yBACE,cAAe,EAEjB,iBACE,cAAe,IAIjB,wBACE,WAAY,KAId,mBACE,kBAAmB,QAErB,sBACE,MAAO,QAET,oBACE,kBAAmB,QAErB,uBACE,MAAO,QAET,iBACE,kBAAmB,QAErB,oBACE,MAAO,QAUT,gBACE,OAAQ,EAAE,KACV,SAAU,OAEZ,cACE,MAAO,KACP,MAAO,KACP,OAAQ,KACR,OAAQ,EAAE,IACV,cAAe,IAGjB,yBACE,cACE,MAAO,MACP,OAAQ,OAKZ,6BACE,iBAAkB,KAEpB,2BACE,iBAAkB,KAEpB,sBACE,iBAAkB,KAEpB,4BACE,iBAAkB,KAEpB,8BACE,iBAAkB,KAEpB,+BACE,iBAAkB,QAEpB,+BACE,iBAAkB,QAEpB,+BACE,iBAAkB,QAEpB,8BACE,iBAAkB,QAEpB,4BACE,iBAAkB,QAIpB,2BACE,iBAAkB,QAEpB,iCACE,iBAAkB,QAEpB,mCACE,iBAAkB,QAEpB,yBACE,iBAAkB,QAUpB,sBACE,YAAa,KACb,MAAO,KAET,4BACE,MAAO,KACP,gBAAiB,KAEnB,qBACE,MAAO,MACP,MAAO,MACP,OAAQ,KACR,WAAY,IAEd,aACE,MAAO,KACP,MAAO,KACP,aAAc,KACd,cAAe,IAUjB,2BACE,cAAe,EAGjB,qCACE,MAAO,IAWT,WACE,cAAe,KAEjB,yBACE,YAAa,KACb,eAAgB,KAChB,iBAAkB,KAClB,iBAAkB,oBAClB,OAAQ,IAAI,MAAM,KAClB,OAAQ,IAAI,MAAM,mBAWpB,YACE,SAAU,SACV,QAAS,KAAK,KAAK,KACnB,OAAQ,EAAE,MAAM,KAChB,aAAc,QAAQ,KAAK,KAC3B,aAAc,MACd,aAAc,IAAI,EAClB,mBAAoB,MAAM,EAAE,IAAI,IAAI,gBAC5B,WAAY,MAAM,EAAE,IAAI,IAAI,gBAGtC,kBACE,SAAU,SACV,IAAK,KACL,KAAM,KACN,UAAW,KACX,YAAa,IACb,MAAO,QACP,eAAgB,UAChB,eAAgB,IAChB,QAAS,UAGX,0BACE,eAAgB,KAIlB,uBACA,uCACE,OAAQ,MAAM,MAAM,KACpB,aAAc,EAAE,EAAE,IAClB,cAAe,EAIjB,yBACE,YACE,aAAc,EACd,YAAa,EACb,iBAAkB,KAClB,aAAc,KACd,aAAc,IACd,cAAe,IAAI,IAAI,EAAE,EACzB,mBAAoB,KACZ,WAAY,KAEtB,uBACA,uCACE,WAAY,MACZ,aAAc,EACd,YAAa,EACb,aAAc,IACd,2BAA4B,IAC5B,0BAA2B,IAE7B,uBACE,cAAe,KAKnB,uBACE,MAAO,KAYT,8BAJA,qCAGA,kCAGA,mCAJA,+BAGA,8BAGA,iCACA,gDARA,8BAMA,6BARA,kCADA,0BAFA,yBACA,0BAaE,cAAe,EAEjB,qBACE,MAAO,KAIT,mCACE,MAAO,QACP,eAAgB,OAElB,2BACE,QAAS,KAAK,EACd,aAAc,KAEhB,0CACE,WAAY,EAEd,oBACA,oBACA,oBACA,oBACA,oBACA,oBACE,OAAQ,EAIV,yBACE,QAAS,KAIX,wBACA,yBACA,2BACE,OAAQ,IAIV,qCACE,iBAAkB,KAIpB,iBACA,uBACE,WAAY,IACZ,cAAe,IAEjB,sCACE,WAAY,KAKd,6DADA,kCAEE,WAAY,KAEd,8BACE,cAAe,KAEjB,kCACE,OAAQ,SAIV,wBACE,UAAW,MAIb,+BACE,cAAe,EAGjB,0BADA,uBAEE,QAAS,EACT,QAAS,EACT,SAAU,OAGZ,yCADA,sCAEE,YAAa,EAGf,+CADA,yCAEE,SAAU,SACV,aAAc,EACd,YAAa,EAEf,uBACE,eAAgB,KAElB,6BACE,IAAK,KACL,OAAQ,KAEV,yCACE,IAAK,KAEP,0BACE,YAAa,KAEf,+CACE,OAAQ,KAEV,kCACE,cAAe,EAEjB,yBAEE,+CADA,yCAEE,SAAU,UAKd,wBACE,WAAY,KACZ,cAAe,KAIjB,mBACE,WAAY,EAId,kBACE,iBAAkB,QAEpB,yBACE,SAAU,SACV,IAAK,KACL,MAAO,KACP,OAAQ,KACR,KAAM,KACN,QAAS,EACT,QAAS,MAEX,gCACE,KAAM,KACN,aAAc,KACd,YAAa,KAIf,uCACE,MAAO,KAET,qCACE,SAAU,OACV,QAAS,MACT,cAAe,IACf,MAAO,KAIT,2BACE,cAAe,KAIjB,qBACE,WAAY,OAEd,0BACE,WAAY,IACZ,cAAe,IAEjB,6BACE,SAAU,SACV,QAAS,aACT,OAAQ,KAAK,KACb,QAAS,EAIX,oBACE,eAAgB,KAChB,iBAAkB,QAEpB,6BACE,SAAU,SACV,QAAS,MACT,MAAO,KACP,MAAO,MACP,OAAQ,KAIV,mBACE,SAAU,SACV,OAAQ,MACR,WAAY,KACZ,SAAU,KAGZ,uCACE,UAAW,MAIb,uBACE,cAAe,EAKjB,yCADA,yCAEE,YAAa,OAGf,yCACE,MAAO,MAGT,2CACA,2CACE,MAAO,MAGT,2CACE,MAAO,KAST,WACE,QAAS,IAAI,KACb,cAAe,KACf,iBAAkB,QAClB,OAAQ,IAAI,MAAM,QAClB,cAAe,IAEjB,eACE,QAAS,EACT,WAAY,EACZ,cAAe,EACf,WAAY,OACZ,YAAa,OACb,iBAAkB,YAClB,OAAQ,EAEV,oBACE,UAAW,QACX,MAAO,KAET,gCACE,QAAS,aACT,cAAe,KAWjB,iCACE,YAAa,OAIf,mBACA,+BACE,QAAS,MACT,YAAa,IACb,MAAO,KAET,+BACE,YAAa,IAEf,yBACE,WAAY,OAEd,oCACE,MAAO,QACP,iBAAkB,kBAEpB,mCACE,MAAO,KACP,iBAAkB,kBAIpB,2BACE,WAAY,IAEd,qCACE,cAAe,KAEjB,gCACE,QAAS,MACT,QAAS,KAAK,KACd,UAAW,KACX,YAAa,IACb,YAAa,IACb,WAAY,OACZ,cAAe,IASjB,gCADA,gCADA,gCADA,gCADA,iCADA,iCADA,iCADA,iCAQE,MAAO,KACP,OAAQ,IAAI,MAAM,KASpB,uCADA,uCADA,uCADA,uCADA,wCADA,wCADA,wCADA,wCAQE,MAAO,QACP,iBAAkB,QAClB,OAAQ,IAAI,MAAM,QAUpB,eACE,OAAQ,EAAE,MAAM,KAChB,SAAU,OAEZ,oBACE,aAAc,EACd,WAAY,KAEd,kBACE,MAAO,KACP,MAAO,IACP,OAAQ,MACR,QAAS,KACT,UAAW,KACX,YAAa,IACb,WAAY,OACZ,iBAAkB,QAClB,OAAQ,IAAI,MAAM,KAEpB,0BACE,WAAY,IACZ,cAAe,KACf,UAAW,KAEb,gCACE,QAAS,MACT,WAAY,OACZ,UAAW,WAEb,wBACE,MAAO,KACP,iBAAkB,QAGpB,yBACE,eACE,aAAc,EACd,YAAa,EAEf,kBACE,MAAO,MACP,UAAW,MAaf,uBACE,MAAO,MACP,WAAY,KAId,qBACE,WAAY,KACZ,YAAa,IACb,MAAO,KAET,kBACE,YAAa,KACb,WAAY,EACZ,cAAe,IAEjB,kBACE,cAAe,EAEjB,kBACE,WAAY,KACZ,cAAe,EAEjB,8BACE,WAAY,EACZ,cAA0G,IAE5G,gCACE,YAAa,MAAO,OAAQ,SAAU,cAAe,UACrD,iBAAkB,QAEpB,2BACE,cAAe,IACf,UAAW,KAIb,oBACE,YAAa,IAIf,oCACE,QAAS,KAIX,qBACE,SAAU,MACV,IAAK,EACL,MAAO,EACP,KAAM,EACN,QAAS,KACT,QAAS,KAAK,EACd,MAAO,KACP,iBAAkB,QAClB,cAAe,IAAI,MAAM,QACzB,mBAAoB,MAAM,EAAE,IAAI,EAAE,sBAC1B,WAAY,MAAM,EAAE,IAAI,EAAE,sBAEpC,4BACE,WAAY,KACZ,UAAW,KAEb,uBACE,cAAe,EAEjB,gCACE,aAAc,IAEhB,yBACE,OAAQ,KAAK,EAAE,EACf,MAAO,KACP,iBAAkB,QAClB,aAAc,QACd,mBAAoB,MAAM,EAAE,IAAI,IAAI,gBAAiB,EAAE,IAAI,EAAE,qBACrD,WAAY,MAAM,EAAE,IAAI,IAAI,gBAAiB,EAAE,IAAI,EAAE,qBAG/D,aACE,SAAU,SACV,QAAS,KACT,cAAe,KACf,MAAO,KACP,WAAY,OACZ,OAAQ,IAAI,OAAO,KACnB,cAAe,IAEjB,4BACE,cAAe,IAEjB,qCACE,UAAW,KAEb,gBACE,MAAO,MAET,mBACE,cAAe,KACf,YAAa,IACb,MAAO,KAEqL,uBAC5L,OAAQ,QAEV,0BACE,cAAe,EAUjB,gBACE,QAAS,MACT,MAAO,KACP,cAAe,KACf,SAAU,OACV,MAAO,QACP,iBAAkB,QAClB,cAAe,IAIjB,eACE,QAAS,KAAK,EACd,WAAY,OAEd,8BACE,WAAY,IAAI,MAAM,KAExB,yBACE,MAAO,KACP,iBAAkB,QAIpB,kBACA,kBACE,WAAY,EACZ,cAAe,EAEjB,iCACE,aAAc,KACd,YAAa,KAIf,0BACE,MAAO,KACP,OAAQ,KACR,OAAQ,KAAK,KAAK,MAClB,YAAa,KACb,MAAO,KACP,cAAe,IAEjB,6BACE,iBAAkB,QAEpB,iCACE,iBAAkB,QAGpB,yBACE,eACE,QAAS,WACT,MAAO,GAET,8BACE,WAAY,EACZ,YAAa,IAAI,MAAM,KAEzB,kBACE,UAAW,MASf,gBACE,SAAU,SACV,QAAS,KAEX,eACE,SAAU,SACV,IAAK,EACL,MAAO,EACP,QAAS,GACT,QAAS,MACT,QAAS,IAAI,IACb,UAAW,KACX,MAAO,QACP,OAAQ,QACR,iBAAkB,KAClB,OAAQ,IAAI,MAAM,QAClB,cAAe,EAAE,IAAI,EAAE,IAEzB,qBACE,MAAO,KACP,iBAAkB,QAClB,aAAc,QAGhB,yBACE,gBACE,QAAS,MAEX,2CACE,IAAK,MACL,wBAAyB,GAO7B,eACE,MAAO,QAGT,yBACE,eACE,QAAS,MAIb,sBACE,QAAS,IACT,mBAAoB,MAAM,KAAK,OAC1B,cAAe,MAAM,KAAK,OACvB,WAAY,MAAM,KAAK,OAIjC,qBADA,4BAEE,gBAAiB,KACjB,QAAS,EAUX,cACE,aAAc,KACd,aAAoK,oBACpK,QAAS,EACT,QAAS,KAAK,SACd,mBAAsL,EAAE,EAAE,IAAI,oBACtL,WAAY,EAAE,EAAE,IAAI"} \ No newline at end of file diff --git a/assets/css/ie10-viewport-bug-workaround.css b/assets/css/ie10-viewport-bug-workaround.css new file mode 100644 index 0000000000..8b3803b48d --- /dev/null +++ b/assets/css/ie10-viewport-bug-workaround.css @@ -0,0 +1,15 @@ +/*! + * IE10 viewport hack for Surface/desktop Windows 8 bug + * Copyright 2014-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ + +/* + * See the Getting Started docs for more information: + * http://getbootstrap.com/getting-started/#support-ie10-width + */ +@-webkit-viewport { width: device-width; } +@-moz-viewport { width: device-width; } +@-ms-viewport { width: device-width; } +@-o-viewport { width: device-width; } +@viewport { width: device-width; } diff --git a/assets/css/src/docs.css b/assets/css/src/docs.css index 622b3e577f..c0c2452b08 100644 --- a/assets/css/src/docs.css +++ b/assets/css/src/docs.css @@ -166,66 +166,37 @@ h4 code { */ .bs-docs-footer { - padding-top: 40px; - padding-bottom: 40px; + padding-top: 50px; + padding-bottom: 50px; margin-top: 100px; - color: #767676; + color: #99979c; text-align: center; - border-top: 1px solid #e5e5e5; + background-color: #2a2730; +} +.bs-docs-footer a { + color: #fff; } .bs-docs-footer-links { padding-left: 0; - margin-top: 20px; + margin-bottom: 20px; } .bs-docs-footer-links li { - display: inline; - padding: 0 2px; + display: inline-block; } -.bs-docs-footer-links li:first-child { - padding-left: 0; +.bs-docs-footer-links li + li { + margin-left: 15px; } @media (min-width: 768px) { + .bs-docs-footer { + text-align: left; + } .bs-docs-footer p { margin-bottom: 0; } } -/* - * Social buttons - * - * Twitter and GitHub social action buttons (for homepage and footer). - */ - -.bs-docs-social { - margin-bottom: 20px; - text-align: center; -} -.bs-docs-social-buttons { - display: inline-block; - padding-left: 0; - margin-bottom: 0; - list-style: none; -} -.bs-docs-social-buttons li { - display: inline-block; - padding: 5px 8px; - line-height: 1; -} -.bs-docs-social-buttons .twitter-follow-button { - width: 225px !important; -} -.bs-docs-social-buttons .twitter-share-button { - width: 98px !important; -} -/* Style the GitHub buttons via CSS instead of inline attributes */ -.github-btn { - overflow: hidden; - border: 0; -} - - /* * Homepage * diff --git a/assets/img/expo-lyft.jpg b/assets/img/expo-lyft.jpg new file mode 100644 index 0000000000..0a7d622ce5 Binary files /dev/null and b/assets/img/expo-lyft.jpg differ diff --git a/assets/img/expo-newsweek.jpg b/assets/img/expo-newsweek.jpg new file mode 100644 index 0000000000..5a45929f78 Binary files /dev/null and b/assets/img/expo-newsweek.jpg differ diff --git a/assets/img/expo-riot.jpg b/assets/img/expo-riot.jpg new file mode 100644 index 0000000000..e9ab163def Binary files /dev/null and b/assets/img/expo-riot.jpg differ diff --git a/assets/img/expo-vogue.jpg b/assets/img/expo-vogue.jpg new file mode 100644 index 0000000000..196a21eaef Binary files /dev/null and b/assets/img/expo-vogue.jpg differ diff --git a/assets/js/customize.min.js b/assets/js/customize.min.js index 090f511553..b28cc3187f 100644 --- a/assets/js/customize.min.js +++ b/assets/js/customize.min.js @@ -28,7 +28,7 @@ status:"unoff",links:[{url:"https://developer.mozilla.org/en-US/docs/Web/CSS/fon 4.1:"n","4.2-4.3":"n",4.4:"n","4.4.3-4.4.4":"n",40:"n"},bb:{7:"y x",10:"y x"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"n",24:"n"},and_chr:{41:"n"},and_ff:{36:"n"},ie_mob:{10:"n",11:"n"},and_uc:{9.9:"n"}},notes:"Chrome, Safari and Firefox also support the unofficial `grab` and `grabbing` values (with prefix)",notes_by_num:{},usage_perc_y:51.62,usage_perc_a:0,ucprefix:!1,parent:"",keywords:"cursors, pointers",ie_id:"",chrome_id:"",shown:!0}},{}],80:[function(a,b,c){b.exports={title:"CSS3 tab-size",description:"Method of customizing the width of the tab character. Only effective using 'white-space: pre' or 'white-space: pre-wrap'.",spec:"http://www.w3.org/TR/css3-text/#tab-size1",status:"wd",links:[{url:"https://developer.mozilla.org/en-US/docs/Web/CSS/tab-size",title:"MDN article"}],bugs:[{description:"Firefox [does not yet](https://bugzilla.mozilla.org/show_bug.cgi?id=943918) support `` values"}],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",TP:"n"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"a x #1",5:"a x #1",6:"a x #1",7:"a x #1",8:"a x #1",9:"a x #1",10:"a x #1",11:"a x #1",12:"a x #1",13:"a x #1",14:"a x #1",15:"a x #1",16:"a x #1",17:"a x #1",18:"a x #1",19:"a x #1",20:"a x #1",21:"a x #1",22:"a x #1",23:"a x #1",24:"a x #1",25:"a x #1",26:"a x #1",27:"a x #1",28:"a x #1",29:"a x #1",30:"a x #1",31:"a x #1",32:"a x #1",33:"a x #1",34:"a x #1",35:"a x #1",36:"a x #1",37:"a x #1",38:"a x #1",39:"a x #1",40:"a x #1"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"a #1",22:"a #1",23:"a #1",24:"a #1",25:"a #1",26:"a #1",27:"a #1",28:"a #1",29:"a #1",30:"a #1",31:"a #1",32:"a #1",33:"a #1",34:"a #1",35:"a #1",36:"a #1",37:"a #1",38:"a #1",39:"a #1",40:"a #1",41:"a #1",42:"y",43:"y",44:"y"},safari:{3.1:"n",3.2:"n",4:"n",5:"n",5.1:"n",6:"n",6.1:"a #1",7:"a #1",7.1:"a #1",8:"a #1"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"a x #1",11:"a x #1",11.1:"a x #1",11.5:"a x #1",11.6:"a x #1",12:"a x #1",12.1:"a x #1",15:"a #1",16:"a #1",17:"a #1",18:"a #1",19:"a #1",20:"a #1",21:"a #1",22:"a #1",23:"a #1",24:"a #1",25:"a #1",26:"a #1",27:"a #1",28:"a #1",29:"y"},ios_saf:{3.2:"n","4.0-4.1":"n","4.2-4.3":"n","5.0-5.1":"n","6.0-6.1":"n","7.0-7.1":"a #1",8:"a #1","8.1-8.3":"a #1"},op_mini:{"5.0-8.0":"a x #1"},android:{2.1:"n",2.2:"n",2.3:"n",3:"n",4:"n",4.1:"n","4.2-4.3":"n",4.4:"a #1","4.4.3-4.4.4":"a #1",40:"a #1"},bb:{7:"a #1",10:"a #1"},op_mob:{10:"n",11:"a x #1",11.1:"a x #1",11.5:"a x #1",12:"a x #1",12.1:"a x #1",24:"a #1"},and_chr:{41:"a #1"},and_ff:{36:"a x #1"},ie_mob:{10:"n",11:"n"},and_uc:{9.9:"n"}},notes:"",notes_by_num:{1:"Partial refers to supporting `` but not `` values."},usage_perc_y:.27,usage_perc_a:74.79,ucprefix:!1,parent:"",keywords:"tab-size,tab-width",ie_id:"",chrome_id:"",shown:!0}},{}],81:[function(a,b,c){b.exports={title:"Flexible Box Layout Module",description:"Method of positioning elements in horizontal or vertical stacks. Support includes the support for the all properties prefixed with `flex` as well as `align-content`, `align-items`, `align-self`, and `justify-content`.",spec:"http://www.w3.org/TR/css3-flexbox/",status:"wd",links:[{url:"http://bennettfeely.com/flexplorer/",title:"Flexbox CSS generator"},{url:"http://www.adobe.com/devnet/html5/articles/working-with-flexbox-the-new-spec.html",title:"Article on using the latest spec"},{url:"https://dev.opera.com/articles/view/advanced-cross-browser-flexbox/",title:"Tutorial on cross-browser support"},{url:"http://philipwalton.github.io/solved-by-flexbox/",title:"Examples on how to solve common layout problems with flexbox"},{url:"http://css-tricks.com/snippets/css/a-guide-to-flexbox/",title:"A Complete Guide to Flexbox"},{url:"http://the-echoplex.net/flexyboxes/",title:"Flexbox playground and code generator"}],bugs:[{description:"IE10 and IE11 default values for `flex` are `0 0 auto` rather than `0 1 auto`, as per the draft spec, as of September 2013."},{description:"In IE10 and IE11, containers with `display: flex` and `flex-direction: column` will not properly calculate their flexed childrens' sizes if the container has `min-height` but no explicit `height` property. [See bug](https://connect.microsoft.com/IE/feedback/details/802625/min-height-and-flexbox-flex-direction-column-dont-work-together-in-ie-10-11-preview)."},{description:"In Chrome and Safari, the height of (non flex) children are not recognized in percentages. However Firefox and IE recognize and scale the children based on percentage heights. [Chrome bug](http://crbug.com/341310)"},{description:"Firefox does not support [Flexbox in button elements](https://bugzilla.mozilla.org/show_bug.cgi?id=984869#c2)"},{description:"[Flexbugs](https://github.com/philipwalton/flexbugs): community-curated list of flexbox issues and cross-browser workarounds for them"},{description:"IE11 does not [wrap long paragraphs of text](http://jsfiddle.net/y1do9cx8/1/)"},{description:"IE11 will not apply flexbox on pseudo-elements. [See bug](https://connect.microsoft.com/IE/feedbackdetail/view/1058330/ie11-will-not-apply-flexbox-on-pseudo-elements)."}],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"a x #2",11:"y",TP:"y"},firefox:{2:"a x #1",3:"a x #1",3.5:"a x #1",3.6:"a x #1",4:"a x #1",5:"a x #1",6:"a x #1",7:"a x #1",8:"a x #1",9:"a x #1",10:"a x #1",11:"a x #1",12:"a x #1",13:"a x #1",14:"a x #1",15:"a x #1",16:"a x #1",17:"a x #1",18:"a x #1",19:"a x #1",20:"a x #1",21:"a x #1",22:"a #3",23:"a #3",24:"a #3",25:"a #3",26:"a #3",27:"a #3",28:"y",29:"y",30:"y",31:"y",32:"y",33:"y",34:"y",35:"y",36:"y",37:"y",38:"y",39:"y",40:"y"},chrome:{4:"a x #1",5:"a x #1",6:"a x #1",7:"a x #1",8:"a x #1",9:"a x #1",10:"a x #1",11:"a x #1",12:"a x #1",13:"a x #1",14:"a x #1",15:"a x #1",16:"a x #1",17:"a x #1",18:"a x #1",19:"a x #1",20:"a x #1",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y",30:"y",31:"y",32:"y",33:"y",34:"y",35:"y",36:"y",37:"y",38:"y",39:"y",40:"y",41:"y",42:"y",43:"y",44:"y"},safari:{3.1:"a x #1",3.2:"a x #1",4:"a x #1",5:"a x #1",5.1:"a x #1",6:"a x #1",6.1:"y x",7:"y x",7.1:"y x",8:"y x"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"y",15:"y x",16:"y x",17:"y",18:"y",19:"y",20:"y",21:"y",22:"y",23:"y",24:"y",25:"y",26:"y",27:"y",28:"y",29:"y"},ios_saf:{3.2:"a x #1","4.0-4.1":"a x #1","4.2-4.3":"a x #1","5.0-5.1":"a x #1","6.0-6.1":"a x #1","7.0-7.1":"y x",8:"y x","8.1-8.3":"y x"},op_mini:{"5.0-8.0":"y"},android:{2.1:"a x #1",2.2:"a x #1",2.3:"a x #1",3:"a x #1",4:"a x #1",4.1:"a x #1","4.2-4.3":"a x #1",4.4:"y","4.4.3-4.4.4":"y",40:"y"},bb:{7:"a x #1",10:"y"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"y",24:"y"},and_chr:{41:"y"},and_ff:{36:"y"},ie_mob:{10:"a x #2",11:"y"},and_uc:{9.9:"a x #1"}},notes:"Most partial support refers to supporting an [older version](http://www.w3.org/TR/2009/WD-css3-flexbox-20090723/) of the specification or an [older syntax](http://www.w3.org/TR/2012/WD-css3-flexbox-20120322/).",notes_by_num:{1:"Only supports the [old flexbox](http://www.w3.org/TR/2009/WD-css3-flexbox-20090723) specification and does not support wrapping.",2:"Only supports the [2012 syntax](http://www.w3.org/TR/2012/WD-css3-flexbox-20120322/)",3:"Does not support flex-wrap or flex-flow properties"},usage_perc_y:82.47,usage_perc_a:10.5,ucprefix:!1,parent:"",keywords:"flex-box,flex-direction,flex-wrap,flex-flow,flex-grow,flex-basis",ie_id:"flexbox",chrome_id:"4837301406400512",shown:!0}},{}],82:[function(a,b,c){b.exports={title:"Font feature settings",description:"Method of applying advanced typographic and language-specific font features to supported OpenType fonts.",spec:"http://w3.org/TR/css3-fonts/#font-rend-props",status:"wd",links:[{url:"http://ie.microsoft.com/testdrive/Graphics/opentype/",title:"Demo pages (IE/Firefox only)"},{url:"http://hacks.mozilla.org/2010/11/firefox-4-font-feature-support/",title:"Mozilla hacks article"},{url:"http://html5accessibility.com/",title:"Detailed tables on accessability support"},{url:"http://docs.webplatform.org/wiki/css/properties/font-feature-settings",title:"WebPlatform Docs"}],bugs:[],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"y",11:"y",TP:"y"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"a x",5:"a x",6:"a x",7:"a x",8:"a x",9:"a x",10:"a x",11:"a x",12:"a x",13:"a x",14:"a x",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x",30:"y x",31:"y x",32:"y x",33:"y x",34:"y",35:"y",36:"y",37:"y",38:"y",39:"y",40:"y"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"a x",17:"a x",18:"a x",19:"a x",20:"a x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x",30:"y x",31:"y x",32:"y x",33:"y x",34:"y x",35:"y x",36:"y x",37:"y x",38:"y x",39:"y x",40:"y x",41:"y x",42:"y x",43:"y x",44:"y x"},safari:{3.1:"n",3.2:"n",4:"a",5:"a",5.1:"a",6:"a",6.1:"n",7:"n",7.1:"n",8:"n"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"n",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x"},ios_saf:{3.2:"a","4.0-4.1":"a","4.2-4.3":"a","5.0-5.1":"a","6.0-6.1":"a","7.0-7.1":"n",8:"n","8.1-8.3":"n"},op_mini:{"5.0-8.0":"n"},android:{2.1:"n",2.2:"n",2.3:"n",3:"n",4:"n",4.1:"n","4.2-4.3":"n",4.4:"y x","4.4.3-4.4.4":"y x",40:"y x"},bb:{7:"n",10:"y x"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"n",24:"y x"},and_chr:{41:"y x"},and_ff:{36:"y"},ie_mob:{10:"n",11:"n"},and_uc:{9.9:"y x"}},notes:"Partial support in older Firefox versions refers to using an older syntax. Partial support in older Chrome versions refers to lacking support in Mac OS X. ",notes_by_num:{},usage_perc_y:74.95,usage_perc_a:1.02,ucprefix:!1,parent:"",keywords:"font-feature,font-feature-settings,kern,kerning,font-variant-alternates,ligatures,font-variant-ligatures",ie_id:"",chrome_id:"",shown:!0}},{}],83:[function(a,b,c){b.exports={title:"Full Screen API",description:"API for allowing content (like a video or canvas element) to take up the entire screen.",spec:"http://www.w3.org/TR/fullscreen/",status:"wd",links:[{url:"https://developer.mozilla.org/en/DOM/Using_full-screen_mode",title:"MDN article"},{url:"http://jlongster.com/2011/11/21/canvas.html",title:"Blog post"},{url:"http://hacks.mozilla.org/2012/01/using-the-fullscreen-api-in-web-browsers/",title:"Mozilla hacks article"},{url:"http://docs.webplatform.org/wiki/dom/Element/requestFullscreen",title:"WebPlatform Docs"}],bugs:[{description:"IE 11 doesn't allow going to fullscreen mode when the event that triggers `msRequestFullscreen()` is a `keydown` or `pointerdown` event (`keypress` and `click` do work)"},{description:"Safari blocks access to keyboard events in fullscreen mode (as a security measure)."},{description:"IE 11 does not allow scrolling when document.documentElement is set to full screen."},{description:"IE 11 does not properly support fullscreen when opening from an iframe."},{description:"Opera 12.1 uses the older specificaton's `:fullscreen-ancestor` pseudo-class instead of the the `::backdrop` pseudo-element."}],categories:["JS API"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"y x",TP:"y"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"a x #1",11:"a x #1",12:"a x #1",13:"a x #1",14:"a x #1",15:"a x #1",16:"a x #1",17:"a x #1",18:"a x #1",19:"a x #1",20:"a x #1",21:"a x #1",22:"a x #1",23:"a x #1",24:"a x #1",25:"a x #1",26:"a x #1",27:"a x #1",28:"a x #1",29:"a x #1",30:"a x #1",31:"a x #1",32:"a x #1",33:"a x #1",34:"a x #1",35:"a x #1",36:"a x #1",37:"a x #1",38:"a x #1",39:"a x #1",40:"a x #1"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"a x #1",16:"a x #1",17:"a x #1",18:"a x #1",19:"a x #1",20:"a x #2",21:"a x #2",22:"a x #2",23:"a x #2",24:"a x #2",25:"a x #2",26:"a x #2",27:"a x #2",28:"a x #2",29:"a x #2",30:"a x #2",31:"a x #2",32:"a x #2",33:"a x #2",34:"a x #2",35:"a x #2",36:"a x #2",37:"a x #2",38:"a x #2",39:"a x #2",40:"a x #2",41:"a x #2",42:"a x #2",43:"a x #2",44:"a x #2"},safari:{3.1:"n",3.2:"n",4:"n",5:"n",5.1:"a x #1",6:"a x #2",6.1:"a x #2",7:"a x #2",7.1:"a x #2",8:"a x #2"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"y",15:"a x #2",16:"a x #2",17:"a x #2",18:"a x #2",19:"a x #2",20:"a x #2",21:"a x #2",22:"a x #2",23:"a x #2",24:"a x #2",25:"a x #2",26:"a x #2",27:"a x #2",28:"a x #2",29:"a x #2"},ios_saf:{3.2:"n","4.0-4.1":"n","4.2-4.3":"n","5.0-5.1":"n","6.0-6.1":"n","7.0-7.1":"n",8:"n","8.1-8.3":"n"},op_mini:{"5.0-8.0":"n"},android:{2.1:"n",2.2:"n",2.3:"n",3:"n",4:"n",4.1:"n","4.2-4.3":"n",4.4:"n","4.4.3-4.4.4":"n",40:"n"},bb:{7:"n",10:"a x #2"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"n",24:"a x #2"},and_chr:{41:"a x #2"},and_ff:{36:"a x #1"},ie_mob:{10:"n",11:"y x"},and_uc:{9.9:"n"}},notes:"",notes_by_num:{1:"Partial support refers to supporting an earlier draft of the spec.",2:"Partial support refers to not supporting `::backdrop`, and supporting the old `:full-screen` syntax rather than the standard `:fullscreen`."},usage_perc_y:8.7,usage_perc_a:61.74,ucprefix:!1,parent:"",keywords:"full-screen",ie_id:"fullscreenapi",chrome_id:"5259513871466496",shown:!0}},{}],84:[function(a,b,c){b.exports={title:"Intrinsic & Extrinsic Sizing",description:"Allows for the heights and widths to be specified in intrinsic values using the fill-available, max-content, min-content, and fit-content properties.",spec:"http://www.w3.org/TR/css3-sizing/",status:"wd",links:[{url:"http://demosthenes.info/blog/662/Design-From-the-Inside-Out-With-CSS-MinContent",title:"Min-Content tutorial"}],bugs:[],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",TP:"n"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"y x",5:"y x",6:"y x",7:"y x",8:"y x",9:"y x",10:"y x",11:"y x",12:"y x",13:"y x",14:"y x",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x",30:"y x",31:"y x",32:"y x",33:"y x",34:"y x",35:"y x",36:"y x",37:"y x",38:"y x",39:"y x",40:"y x"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x",30:"y x",31:"y x",32:"y x",33:"y x",34:"y x",35:"y x",36:"y x",37:"y x",38:"y x",39:"y x",40:"y x",41:"y x",42:"y x",43:"y x",44:"y x"},safari:{3.1:"n",3.2:"n",4:"n",5:"n",5.1:"n",6:"n",6.1:"y x",7:"y x",7.1:"y x",8:"y x"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"n",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x"},ios_saf:{3.2:"n","4.0-4.1":"n","4.2-4.3":"n","5.0-5.1":"n","6.0-6.1":"n","7.0-7.1":"y x",8:"y x","8.1-8.3":"y x"},op_mini:{"5.0-8.0":"n"},android:{2.1:"n",2.2:"n",2.3:"n",3:"n",4:"n",4.1:"n","4.2-4.3":"n",4.4:"y x","4.4.3-4.4.4":"y x",40:"y x"},bb:{7:"n",10:"y x"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"n",24:"y x"},and_chr:{41:"y x"},and_ff:{36:"y x"},ie_mob:{10:"n",11:"n"},and_uc:{9.9:"n"}},notes:'Prefixes are on the values, not the property names (e.g. -webkit-min-content) Firefox currently supports the "-moz-available" property rather than "-moz-fill-available".',notes_by_num:{},usage_perc_y:71.82,usage_perc_a:0,ucprefix:!1,parent:"",keywords:"fill-available,max-content,min-content,fit-content,contain-floats",ie_id:"cssintrinsicsizing",chrome_id:"5901353784180736",shown:!0}},{}],85:[function(a,b,c){b.exports={title:"CSS3 Multiple column layout",description:"Method of flowing information in multiple columns",spec:"http://www.w3.org/TR/css3-multicol/",status:"cr",links:[{url:"https://dev.opera.com/articles/view/css3-multi-column-layout/",title:"Dev.Opera article"},{url:"http://webdesign.tutsplus.com/tutorials/htmlcss-tutorials/an-introduction-to-the-css3-multiple-column-layout-module/",title:"Introduction page"},{url:"http://docs.webplatform.org/wiki/css/properties/column-width",title:"WebPlatform Docs"},{url:"https://github.com/BetleyWhitehorne/CSS3MultiColumn",title:"Polyfill"}],bugs:[{description:"In Firefox, the property `column-span` (or `-moz-column-span`) does not yet work. See [the bug](https://bugzilla.mozilla.org/show_bug.cgi?id=616436)."},{description:"In Chrome, the `-webkit-column-count` directive does not yet work with print stylesheets. See the [following bug in Chromium](https://code.google.com/p/chromium/issues/detail?id=99358)."},{description:"Chrome is reported to incorrectly calculate the container height, and often breaks on margins, padding, and can display 1px of the next column at the bottom of the previous column."},{description:"Browsers behave differently when flowing `ol` list numbers in columns: IE and Safari only show numbers for the first column. Chrome does not show any numbers. Only Firefox behaves as expected with numbers showing for all items."}],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"y",11:"y",TP:"y"},firefox:{2:"a x",3:"a x",3.5:"a x",3.6:"a x",4:"a x",5:"a x",6:"a x",7:"a x",8:"a x",9:"a x",10:"a x",11:"a x",12:"a x",13:"a x",14:"a x",15:"a x",16:"a x",17:"a x",18:"a x",19:"a x",20:"a x",21:"a x",22:"a x",23:"a x",24:"a x",25:"a x",26:"a x",27:"a x",28:"a x",29:"a x",30:"a x",31:"a x",32:"a x",33:"a x",34:"a x",35:"a x",36:"a x",37:"a x",38:"a x",39:"a x",40:"a x"},chrome:{4:"a x",5:"a x",6:"a x",7:"a x",8:"a x",9:"a x",10:"a x",11:"a x",12:"a x",13:"a x",14:"a x",15:"a x",16:"a x",17:"a x",18:"a x",19:"a x",20:"a x",21:"a x",22:"a x",23:"a x",24:"a x",25:"a x",26:"a x",27:"a x",28:"a x",29:"a x",30:"a x",31:"a x",32:"a x",33:"a x",34:"a x",35:"a x",36:"a x",37:"a x",38:"a x",39:"a x",40:"a x",41:"a x",42:"a x",43:"a x",44:"a x"},safari:{3.1:"a x",3.2:"a x",4:"a x",5:"a x",5.1:"a x",6:"a x",6.1:"a x",7:"a x",7.1:"a x",8:"a x"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"y",11.5:"y",11.6:"y",12:"y",12.1:"y",15:"a x",16:"a x",17:"a x",18:"a x",19:"a x",20:"a x",21:"a x",22:"a x",23:"a x",24:"a x",25:"a x",26:"a x",27:"a x",28:"a x",29:"a x"},ios_saf:{3.2:"a x","4.0-4.1":"a x","4.2-4.3":"a x","5.0-5.1":"a x","6.0-6.1":"a x","7.0-7.1":"a x",8:"a x","8.1-8.3":"a x"},op_mini:{"5.0-8.0":"y"},android:{2.1:"a x",2.2:"a x",2.3:"a x",3:"a x",4:"a x",4.1:"a x","4.2-4.3":"a x",4.4:"a x","4.4.3-4.4.4":"a x",40:"a x"},bb:{7:"a x",10:"a x"},op_mob:{10:"n",11:"n",11.1:"y",11.5:"y",12:"y",12.1:"y",24:"a x"},and_chr:{41:"a x"},and_ff:{36:"a x"},ie_mob:{10:"y",11:"y"},and_uc:{9.9:"a x"}},notes:"Partial support refers to not supporting the `break-before`, `break-after`, `break-inside` properties. Webkit browsers do have equivalent support for the non-standard `-webkit-column-break-*` properties while Firefox supports `page-break-*` to accomplish the same result (but only the `auto` and `always' values).",notes_by_num:{},usage_perc_y:13.06,usage_perc_a:79.98,ucprefix:!1,parent:"",keywords:"column-count",ie_id:"multicolumnfullsupport",chrome_id:"6526151266664448",shown:!0}},{}],86:[function(a,b,c){b.exports={title:"CSS3 object-fit/object-position",description:'Method of specifying how an object (image or video) should fit inside its box. object-fit options include "contain" (fit according to aspect ratio), "fill" (stretches object to fill) and "cover" (overflows box but maintains ratio), where object-position allows the object to be repositioned like background-image does.',spec:"http://www.w3.org/TR/css3-images/",status:"cr",links:[{url:"https://dev.opera.com/articles/view/css3-object-fit-object-position/",title:"Dev.Opera article"},{url:"http://docs.webplatform.org/wiki/css/properties/object-fit",title:"WebPlatform Docs"},{url:"https://github.com/anselmh/object-fit",title:"object-fit JavaScript-Polyfill"}],bugs:[],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",TP:"n"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"n",23:"n",24:"n",25:"n",26:"n",27:"n",28:"n",29:"n",30:"n",31:"n",32:"n",33:"n",34:"n",35:"n",36:"y",37:"y",38:"y",39:"y",40:"y"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"n",23:"n",24:"n",25:"n",26:"n",27:"n",28:"n",29:"n",30:"n",31:"y",32:"y",33:"y",34:"y",35:"y",36:"y",37:"y",38:"y",39:"y",40:"y",41:"y",42:"y",43:"y",44:"y"},safari:{3.1:"n",3.2:"n",4:"n",5:"n",5.1:"n",6:"n",6.1:"n",7:"n",7.1:"a #1",8:"a #1"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"y x",11:"y x",11.1:"y x",11.5:"y x",11.6:"y x",12:"y x",12.1:"y x",15:"n",16:"n",17:"n",18:"n",19:"y",20:"y",21:"y",22:"y",23:"y",24:"y",25:"y",26:"y",27:"y",28:"y",29:"y"},ios_saf:{3.2:"n","4.0-4.1":"n","4.2-4.3":"n","5.0-5.1":"n","6.0-6.1":"n","7.0-7.1":"n",8:"a #1","8.1-8.3":"a #1"},op_mini:{"5.0-8.0":"y x"},android:{2.1:"n",2.2:"n",2.3:"n",3:"n",4:"n",4.1:"n","4.2-4.3":"n",4.4:"n","4.4.3-4.4.4":"y",40:"y"},bb:{7:"n",10:"n"},op_mob:{10:"n",11:"y x",11.1:"y x",11.5:"y x",12:"y x",12.1:"y x",24:"y"},and_chr:{41:"y"},and_ff:{36:"y"},ie_mob:{10:"n",11:"n"},and_uc:{9.9:"n"}},notes:"",notes_by_num:{1:"Partial support in Safari refers to support for `object-fit` but not `object-position`."},usage_perc_y:57.56,usage_perc_a:7.96,ucprefix:!1,parent:"",keywords:"objectfit,objectposition",ie_id:"objectfitandobjectposition",chrome_id:"5302669702856704",shown:!0}},{}],87:[function(a,b,c){b.exports={title:"Pointer events",description:'This specification integrates various inputs from mice, touchscreens, and pens, making separate implementations no longer necessary and authoring for cross-device pointers easier. Not to be mistaken with the unrelated "pointer-events" CSS property.',spec:"http://www.w3.org/TR/pointerevents/",status:"rec",links:[{url:"http://blogs.msdn.com/b/ie/archive/2011/09/20/touch-input-for-ie10-and-metro-style-apps.aspx",title:"Implementation of Pointer Events in IE10"},{url:"http://blogs.msdn.com/b/eternalcoding/archive/2013/01/16/hand-js-a-polyfill-for-supporting-pointer-events-on-every-browser.aspx",title:"Hand.js, the polyfill for browsers only supporting Touch Events"},{url:"http://blogs.msdn.com/b/davrous/archive/2013/02/20/handling-touch-in-your-html5-apps-thanks-to-the-pointer-events-of-ie10-and-windows-8.aspx",title:"Article & tutorial"}],bugs:[],categories:["DOM","JS API"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"a x",11:"y",TP:"y"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"n",5:"n",6:"p",7:"p",8:"p",9:"p",10:"p",11:"p",12:"p",13:"p",14:"p",15:"p",16:"p",17:"p",18:"p",19:"p",20:"p",21:"p",22:"p",23:"p",24:"p",25:"p",26:"p",27:"p",28:"p",29:"p",30:"p",31:"p",32:"p",33:"p",34:"p",35:"p",36:"p",37:"p",38:"p",39:"p",40:"p"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"p",23:"p",24:"p",25:"p",26:"p",27:"p",28:"p",29:"p",30:"p",31:"p",32:"p",33:"p",34:"p",35:"p",36:"p",37:"p",38:"p",39:"p",40:"p",41:"p",42:"p",43:"p",44:"p"},safari:{3.1:"n",3.2:"n",4:"n",5:"n",5.1:"n",6:"n",6.1:"p",7:"p",7.1:"p",8:"p"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"n",15:"p",16:"p",17:"p",18:"p",19:"p",20:"p",21:"p",22:"p",23:"p",24:"p",25:"p",26:"p",27:"p",28:"p",29:"p"},ios_saf:{3.2:"p","4.0-4.1":"p","4.2-4.3":"p","5.0-5.1":"p","6.0-6.1":"p","7.0-7.1":"p",8:"p","8.1-8.3":"p"},op_mini:{"5.0-8.0":"n"},android:{2.1:"p",2.2:"p",2.3:"p",3:"p",4:"p",4.1:"p","4.2-4.3":"p",4.4:"p","4.4.3-4.4.4":"p",40:"p"},bb:{7:"p",10:"p"},op_mob:{10:"n",11:"p",11.1:"p",11.5:"p",12:"p",12.1:"p",24:"p"},and_chr:{41:"p"},and_ff:{36:"p"},ie_mob:{10:"a x",11:"y"},and_uc:{9.9:"p"}},notes:"Partial support in IE10 refers the lack of pointerenter and pointerleave events. Firefox Nightly provides 'dom.w3c_pointer_events.enabled' option to support this specification starting with version 28.",notes_by_num:{},usage_perc_y:8.49,usage_perc_a:1.5,ucprefix:!1,parent:"",keywords:"pointerdown,pointermove,pointerup,pointercancel,pointerover,pointerout,pointerenter,pointerleave",ie_id:"pointerevents",chrome_id:"4504699138998272",shown:!0}},{}],88:[function(a,b,c){b.exports={title:"text-decoration styling",description:"Method of defining the type, style and color of lines in the text-decoration property. These can be defined as shorthand (e.g. `text-decoration: line-through dashed blue`) or as single properties (e.g. `text-decoration-color: blue`)",spec:"http://www.w3.org/TR/css-text-decor-3/#line-decoration",status:"cr",links:[{url:"https://developer.mozilla.org/en-US/docs/Web/CSS/text-decoration-style",title:"MDN Documentation for text-decoration-style"},{url:"https://developer.mozilla.org/en-US/docs/Web/CSS/text-decoration-color",title:"MDN Documentation for text-decoration-color"},{url:"https://developer.mozilla.org/en-US/docs/Web/CSS/text-decoration-line",title:"MDN Documentation for text-decoration-line"}],bugs:[],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",TP:"n"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"n",5:"n",6:"y x",7:"y x",8:"y x",9:"y x",10:"y x",11:"y x",12:"y x",13:"y x",14:"y x",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x",30:"y x",31:"y x",32:"y x",33:"y x",34:"y x",35:"y x",36:"y",37:"y",38:"y",39:"y",40:"y"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"n",23:"n",24:"n",25:"n",26:"n x d #1",27:"n x d #1",28:"n x d #1",29:"n x d #1",30:"n x d #1",31:"n x d #1",32:"n x d #1",33:"n x d #1",34:"n x d #1",35:"n x d #1",36:"n x d #1",37:"n x d #1",38:"n x d #1",39:"n x d #1",40:"n x d #1",41:"n x d #1",42:"n x d #1",43:"n x d #1",44:"n x d #1"},safari:{3.1:"n",3.2:"n",4:"n",5:"n",5.1:"n",6:"n",6.1:"n",7:"n",7.1:"a x #2",8:"a x #2"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"n",23:"n",24:"n",25:"n",26:"n",27:"n",28:"n",29:"n"},ios_saf:{3.2:"n","4.0-4.1":"n","4.2-4.3":"n","5.0-5.1":"n","6.0-6.1":"n","7.0-7.1":"n",8:"a x #2","8.1-8.3":"a x #2"},op_mini:{"5.0-8.0":"n"},android:{2.1:"n",2.2:"n",2.3:"n",3:"n",4:"n",4.1:"n","4.2-4.3":"n",4.4:"n","4.4.3-4.4.4":"n",40:"n"},bb:{7:"n",10:"n"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"n",24:"n"},and_chr:{41:"n"},and_ff:{36:"y"},ie_mob:{10:"n",11:"n"},and_uc:{9.9:"n"}},notes:"All browsers support the CSS2 version of `text-decoration`, which matches only the `text-decoration-line` values (`underline`, etc.)",notes_by_num:{1:'Enabled in Chrome through the "experimental Web Platform features" flag in chrome://flags',2:"Partial support in Safari refers to not supporting the text-decoration-style property."},usage_perc_y:12.21,usage_perc_a:7.96,ucprefix:!1,parent:"",keywords:"text-decoration-line,text-decoration-style,text-decoration-color",ie_id:"",chrome_id:"",shown:!0}},{}],89:[function(a,b,c){b.exports={title:"text-emphasis styling",description:"Method of using small symbols next to each glyph to emphasize a run of text, commonly used in East Asian languages. The `text-emphasis` shorthand, and its `text-emphasis-style` and `text-emphasis-color` longhands, can be used to apply marks to the text. The `text-emphasis-position` property, which inherits separately, allows setting the emphasis marks' position with respect to the text.",spec:"http://www.w3.org/TR/css-text-decor-3/#text-emphasis",status:"cr",links:[{url:"https://github.com/zmmbreeze/jquery.emphasis/",title:"A javascript fallback for CSS3 emphasis mark."}],bugs:[{description:"Chrome on Android occasionally has issues rendering emphasis glyphs correctly."}],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",TP:"n"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"n",23:"n",24:"n",25:"n",26:"n",27:"n",28:"n",29:"n",30:"n",31:"n",32:"n",33:"n",34:"n",35:"n",36:"n",37:"n",38:"n",39:"n",40:"n"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"n",23:"n",24:"n",25:"a x #1",26:"a x #1",27:"a x #1",28:"a x #1",29:"a x #1",30:"a x #1",31:"a x #1",32:"a x #1",33:"a x #1",34:"a x #1",35:"a x #1",36:"a x #1",37:"a x #1",38:"a x #1",39:"a x #1",40:"a x #1",41:"a x #1",42:"a x #1",43:"a x #1",44:"a x #1"},safari:{3.1:"n",3.2:"n",4:"n",5:"n",5.1:"n",6:"n",6.1:"a x #1",7:"a x #1",7.1:"y",8:"y"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"n",15:"a x #1",16:"a x #1",17:"a x #1",18:"a x #1",19:"a x #1",20:"a x #1",21:"a x #1",22:"a x #1",23:"a x #1",24:"a x #1",25:"a x #1",26:"a x #1",27:"a x #1",28:"a x #1",29:"a x #1"},ios_saf:{3.2:"n","4.0-4.1":"n","4.2-4.3":"n","5.0-5.1":"n","6.0-6.1":"n","7.0-7.1":"y",8:"y","8.1-8.3":"y"},op_mini:{"5.0-8.0":"n"},android:{2.1:"n",2.2:"n",2.3:"n",3:"n",4:"n",4.1:"n","4.2-4.3":"n",4.4:"a x #1","4.4.3-4.4.4":"a x #1",40:"a x #1"},bb:{7:"n",10:"a x #1"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"n",24:"a x #1"},and_chr:{41:"a x #1"},and_ff:{36:"n"},ie_mob:{10:"n",11:"n"},and_uc:{9.9:"a x #1"}},notes:"Some old webkit browsers (like Chrome 24) support `-webkit-text-emphasis`, but does not support CJK languages and is therefore considered unsupported.",notes_by_num:{1:"Partial support refers to incorrect support for `-webkit-text-emphasis-position`. These browsers support `over` and `under` as values, but not the added `left` and `right` values required by the spec."},usage_perc_y:9.21,usage_perc_a:54.43,ucprefix:!1,parent:"",keywords:"text-emphasis,text-emphasis-position,text-emphasis-style,text-emphasis-color",ie_id:"",chrome_id:"",shown:!0}},{}],90:[function(a,b,c){b.exports={title:"CSS3 Text-overflow",description:"Append ellipsis when text overflows its containing element",spec:"http://www.w3.org/TR/css3-ui/#text-overflow0",status:"wd",links:[{url:"https://github.com/rmorse/AutoEllipsis",title:"jQuery polyfill for Firefox"},{url:"https://developer.mozilla.org/En/CSS/Text-overflow",title:"MDN article"},{url:"http://www.css3files.com/text/",title:"Information page"},{url:"https://raw.github.com/phiggins42/has.js/master/detect/css.js#css-text-overflow",title:"has.js test"},{url:"http://docs.webplatform.org/wiki/css/properties/text-overflow",title:"WebPlatform Docs"}],bugs:[{description:"Does not work on `select` elements work in Chrome and IE, only Firefox."},{description:"Some Samsung-based browsers, have a bug with overflowing text when ellipsis is set and if `text-rendering` is not `auto`."},{description:'Does not work in IE8 and IE9 on ``'}],categories:["CSS3"],stats:{ie:{5.5:"n",6:"y",7:"y",8:"y",9:"y",10:"y",11:"y",TP:"y"},firefox:{2:"p",3:"p",3.5:"p",3.6:"p",4:"p",5:"p",6:"p",7:"y",8:"y",9:"y",10:"y",11:"y",12:"y",13:"y",14:"y",15:"y",16:"y",17:"y",18:"y",19:"y",20:"y",21:"y",22:"y",23:"y",24:"y",25:"y",26:"y",27:"y",28:"y",29:"y",30:"y",31:"y",32:"y",33:"y",34:"y",35:"y",36:"y",37:"y",38:"y",39:"y",40:"y"},chrome:{4:"y",5:"y",6:"y",7:"y",8:"y",9:"y",10:"y",11:"y",12:"y",13:"y",14:"y",15:"y",16:"y",17:"y",18:"y",19:"y",20:"y",21:"y",22:"y",23:"y",24:"y",25:"y",26:"y",27:"y",28:"y",29:"y",30:"y",31:"y",32:"y",33:"y",34:"y",35:"y",36:"y",37:"y",38:"y",39:"y",40:"y",41:"y",42:"y",43:"y",44:"y"},safari:{3.1:"y",3.2:"y",4:"y", 5:"y",5.1:"y",6:"y",6.1:"y",7:"y",7.1:"y",8:"y"},opera:{9:"y x","9.5-9.6":"y x","10.0-10.1":"y x",10.5:"y x",10.6:"y x",11:"y",11.1:"y",11.5:"y",11.6:"y",12:"y",12.1:"y",15:"y",16:"y",17:"y",18:"y",19:"y",20:"y",21:"y",22:"y",23:"y",24:"y",25:"y",26:"y",27:"y",28:"y",29:"y"},ios_saf:{3.2:"y","4.0-4.1":"y","4.2-4.3":"y","5.0-5.1":"y","6.0-6.1":"y","7.0-7.1":"y",8:"y","8.1-8.3":"y"},op_mini:{"5.0-8.0":"y"},android:{2.1:"y",2.2:"y",2.3:"y",3:"y",4:"y",4.1:"y","4.2-4.3":"y",4.4:"y","4.4.3-4.4.4":"y",40:"y"},bb:{7:"y",10:"y"},op_mob:{10:"y x",11:"y x",11.1:"y x",11.5:"y x",12:"y x",12.1:"y",24:"y"},and_chr:{41:"y"},and_ff:{36:"y"},ie_mob:{10:"y",11:"y"},and_uc:{9.9:"y"}},notes:"",notes_by_num:{},usage_perc_y:97.04,usage_perc_a:0,ucprefix:!1,parent:"",keywords:"textoverflow,ellipsis",ie_id:"",chrome_id:"",shown:!0}},{}],91:[function(a,b,c){b.exports={title:"CSS text-size-adjust",description:"On mobile devices, the text-size-adjust CSS property allows Web authors to control if and how the text-inflating algorithm is applied to the textual content of the element it is applied to.",spec:"http://dev.w3.org/csswg/css-size-adjust/",status:"wd",links:[{url:"https://developer.mozilla.org/en-US/docs/Web/CSS/text-size-adjust",title:"MDN Docs"}],bugs:[{description:"There is a bug in Webkit-based desktop browsers. If -webkit-text-size-adjust is explicitely set to none, Webkit-based desktop browsers, like Chrome or Safari, instead of ignoring the property, will prevent the user to zoom in or out the Web page."},{description:"If the viewport in IE Phone is set using element, the value of the CSS text-size-adjust property is ignored."}],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",TP:"n"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"n",23:"n",24:"n",25:"n",26:"n",27:"n",28:"n",29:"n",30:"n",31:"n",32:"n",33:"n",34:"n",35:"n",36:"n",37:"n",38:"n",39:"n",40:"n"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"n",13:"n",14:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"n",23:"n",24:"n",25:"n",26:"n",27:"n",28:"n",29:"n",30:"n",31:"n",32:"n",33:"n",34:"n",35:"n",36:"n",37:"n",38:"n",39:"n",40:"n",41:"n",42:"n",43:"n",44:"n"},safari:{3.1:"n",3.2:"n",4:"n",5:"n",5.1:"n",6:"n",6.1:"n",7:"n",7.1:"n",8:"n"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"n",15:"n",16:"n",17:"n",18:"n",19:"n",20:"n",21:"n",22:"n",23:"n",24:"n",25:"n",26:"n",27:"n",28:"n",29:"n"},ios_saf:{3.2:"n","4.0-4.1":"n","4.2-4.3":"n","5.0-5.1":"y x","6.0-6.1":"y x","7.0-7.1":"y x",8:"y x","8.1-8.3":"y x"},op_mini:{"5.0-8.0":"n"},android:{2.1:"n",2.2:"n",2.3:"n",3:"n",4:"n",4.1:"n","4.2-4.3":"n",4.4:"n","4.4.3-4.4.4":"n",40:"n"},bb:{7:"n",10:"n"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"n",24:"n"},and_chr:{41:"n"},and_ff:{36:"y x"},ie_mob:{10:"y x",11:"y x"},and_uc:{9.9:"y x"}},notes:"",notes_by_num:{},usage_perc_y:12.17,usage_perc_a:0,ucprefix:!1,parent:"",keywords:"",ie_id:"",chrome_id:"",shown:!0}},{}],92:[function(a,b,c){b.exports={title:"CSS3 Transforms",description:"Method of transforming an element including rotating, scaling, etc.",spec:"http://www.w3.org/TR/css3-2d-transforms/",status:"wd",links:[{url:"http://www.westciv.com/tools/transforms/",title:"Live editor"},{url:"https://developer.mozilla.org/en/CSS/-moz-transform",title:"MDN article"},{url:"http://www.webresourcesdepot.com/cross-browser-css-transforms-csssandpaper/",title:"Workaround script for IE"},{url:"http://www.css3files.com/transform/",title:"Information page"},{url:"http://www.useragentman.com/IETransformsTranslator/",title:"Converter for IE"},{url:"https://raw.github.com/phiggins42/has.js/master/detect/css.js#css-transform",title:"has.js test"},{url:"http://docs.webplatform.org/wiki/css/transforms/transform",title:"WebPlatform Docs"}],bugs:[{description:"Scaling transforms in Android 2.3 fails to scale element background images."},{description:"IE 10 and below does not support CSS transforms on SVG elements (though SVG transform attributes do work)."},{description:"Transforms may break position:fixed styles of contained elements"}],categories:["CSS3"],stats:{ie:{5.5:"n",6:"p",7:"p",8:"p",9:"y x",10:"y",11:"y",TP:"y"},firefox:{2:"n",3:"n",3.5:"y x",3.6:"y x",4:"y x",5:"y x",6:"y x",7:"y x",8:"y x",9:"y x",10:"y x",11:"y x",12:"y x",13:"y x",14:"y x",15:"y x",16:"y",17:"y",18:"y",19:"y",20:"y",21:"y",22:"y",23:"y",24:"y",25:"y",26:"y",27:"y",28:"y",29:"y",30:"y",31:"y",32:"y",33:"y",34:"y",35:"y",36:"y",37:"y",38:"y",39:"y",40:"y"},chrome:{4:"y x",5:"y x",6:"y x",7:"y x",8:"y x",9:"y x",10:"y x",11:"y x",12:"y x",13:"y x",14:"y x",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x",30:"y x",31:"y x",32:"y x",33:"y x",34:"y x",35:"y x",36:"y",37:"y",38:"y",39:"y",40:"y",41:"y",42:"y",43:"y",44:"y"},safari:{3.1:"y x",3.2:"y x",4:"y x",5:"y x",5.1:"y x",6:"y x",6.1:"y x",7:"y x",7.1:"y x",8:"y x"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"y x",10.6:"y x",11:"y x",11.1:"y x",11.5:"y x",11.6:"y x",12:"y x",12.1:"y",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y",24:"y",25:"y",26:"y",27:"y",28:"y",29:"y"},ios_saf:{3.2:"y x","4.0-4.1":"y x","4.2-4.3":"y x","5.0-5.1":"y x","6.0-6.1":"y x","7.0-7.1":"y x",8:"y x","8.1-8.3":"y x"},op_mini:{"5.0-8.0":"n"},android:{2.1:"y x",2.2:"y x",2.3:"y x",3:"y x",4:"y x",4.1:"y x","4.2-4.3":"y x",4.4:"y x","4.4.3-4.4.4":"y x",40:"y"},bb:{7:"y x",10:"y x"},op_mob:{10:"n",11:"y",11.1:"y",11.5:"y",12:"y",12.1:"y",24:"y"},and_chr:{41:"y"},and_ff:{36:"y"},ie_mob:{10:"y",11:"y"},and_uc:{9.9:"y x"}},notes:'The scale transform can be emulated in IE < 9 using Microsoft\'s "zoom" extension, others are (not easily) possible using the MS Matrix filter',notes_by_num:{},usage_perc_y:91.85,usage_perc_a:0,ucprefix:!1,parent:"",keywords:"transformation,translate,rotation,rotate,scale,css-transforms",ie_id:"transforms",chrome_id:"6437640580628480",shown:!0}},{}],93:[function(a,b,c){b.exports={title:"CSS3 3D Transforms",description:"Method of transforming an element in the third dimension using the `transform` property. Includes support for the `perspective` property to set the perspective in z-space and the `backface-visibility` property to toggle display of the reverse side of a 3D-transformed element.",spec:"http://www.w3.org/TR/css3-3d-transforms/",status:"wd",links:[{url:"http://css3.bradshawenterprises.com/flip/",title:"Multi-browser demo"},{url:"http://hacks.mozilla.org/2011/10/css-3d-transformations-in-firefox-nightly/",title:"Mozilla hacks article"},{url:"http://thewebrocks.com/demos/3D-css-tester/",title:"3D CSS Tester"},{url:"https://raw.github.com/phiggins42/has.js/master/detect/css.js#css-transform",title:"has.js test"},{url:"http://docs.webplatform.org/wiki/css/transforms/transform",title:"WebPlatform Docs"},{url:"http://desandro.github.io/3dtransforms/",title:"Intro to CSS 3D transforms"}],bugs:[{description:"Some configurations of Linux and older Windows machines (those without WebGL support) have trouble with 3D transforms and will treat them as if `perspective` was set as `none`."},{description:"Firefox on Windows [incorrectly renders plugin content within no-op 3D transforms](https://bugzilla.mozilla.org/show_bug.cgi?id=1048279)."},{description:"The `perspective` property doesn't work on the `body` element in Firefox, it must be used on an inner element."}],categories:["CSS3"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"a",11:"a",TP:"y"},firefox:{2:"n",3:"n",3.5:"n",3.6:"n",4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"y x",11:"y x",12:"y x",13:"y x",14:"y x",15:"y x",16:"y",17:"y",18:"y",19:"y",20:"y",21:"y",22:"y",23:"y",24:"y",25:"y",26:"y",27:"y",28:"y",29:"y",30:"y",31:"y",32:"y",33:"y",34:"y",35:"y",36:"y",37:"y",38:"y",39:"y",40:"y"},chrome:{4:"n",5:"n",6:"n",7:"n",8:"n",9:"n",10:"n",11:"n",12:"y x",13:"y x",14:"y x",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x",30:"y x",31:"y x",32:"y x",33:"y x",34:"y x",35:"y x",36:"y",37:"y",38:"y",39:"y",40:"y",41:"y",42:"y",43:"y",44:"y"},safari:{3.1:"n",3.2:"n",4:"y x",5:"y x",5.1:"y x",6:"y x",6.1:"y x",7:"y x",7.1:"y x",8:"y x"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"n",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y",24:"y",25:"y",26:"y",27:"y",28:"y",29:"y"},ios_saf:{3.2:"y x","4.0-4.1":"y x","4.2-4.3":"y x","5.0-5.1":"y x","6.0-6.1":"y x","7.0-7.1":"y x",8:"y x","8.1-8.3":"y x"},op_mini:{"5.0-8.0":"n"},android:{2.1:"n",2.2:"n",2.3:"n",3:"y x",4:"y x",4.1:"y x","4.2-4.3":"y x",4.4:"y x","4.4.3-4.4.4":"y x",40:"y"},bb:{7:"y x",10:"y x"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"n",24:"y"},and_chr:{41:"y"},and_ff:{36:"y"},ie_mob:{10:"a",11:"a"},and_uc:{9.9:"y x"}},notes:"Partial support in IE refers to not supporting [the transform-style: preserve-3d property](http://msdn.microsoft.com/en-us/library/ie/hh673529%28v=vs.85%29.aspx#the_ms_transform_style_property). This prevents nesting 3D transformed elements.",notes_by_num:{},usage_perc_y:79.45,usage_perc_a:9.99,ucprefix:!1,parent:"",keywords:"css 3d,3dtransforms,translate3d,backface visibility,perspective",ie_id:"transforms,csstransformspreserve3d",chrome_id:"6437640580628480",shown:!0}},{}],94:[function(a,b,c){b.exports={title:"CSS user-select: none",description:"Method of preventing text/element selection using CSS. ",spec:"https://developer.mozilla.org/en-US/docs/CSS/user-select",status:"unoff",links:[{url:"https://developer.mozilla.org/en-US/docs/CSS/user-select",title:"MDN article"},{url:"http://css-tricks.com/almanac/properties/u/user-select/",title:"CSS Tricks article"},{url:"http://msdn.microsoft.com/en-us/library/ie/hh781492(v=vs.85).aspx",title:"MSDN Documentation"}],bugs:[],categories:["CSS"],stats:{ie:{5.5:"n",6:"n",7:"n",8:"n",9:"n",10:"y x",11:"y x",TP:"y x"},firefox:{2:"y x",3:"y x",3.5:"y x",3.6:"y x",4:"y x",5:"y x",6:"y x",7:"y x",8:"y x",9:"y x",10:"y x",11:"y x",12:"y x",13:"y x",14:"y x",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x",30:"y x",31:"y x",32:"y x",33:"y x",34:"y x",35:"y x",36:"y x",37:"y x",38:"y x",39:"y x",40:"y x"},chrome:{4:"u",5:"u",6:"y x",7:"y x",8:"y x",9:"y x",10:"y x",11:"y x",12:"y x",13:"y x",14:"y x",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x",30:"y x",31:"y x",32:"y x",33:"y x",34:"y x",35:"y x",36:"y x",37:"y x",38:"y x",39:"y x",40:"y x",41:"y x",42:"y x",43:"y x",44:"y x"},safari:{3.1:"y x",3.2:"y x",4:"y x",5:"y x",5.1:"y x",6:"y x",6.1:"y x",7:"y x",7.1:"y x",8:"y x"},opera:{9:"n","9.5-9.6":"n","10.0-10.1":"n",10.5:"n",10.6:"n",11:"n",11.1:"n",11.5:"n",11.6:"n",12:"n",12.1:"n",15:"y x",16:"y x",17:"y x",18:"y x",19:"y x",20:"y x",21:"y x",22:"y x",23:"y x",24:"y x",25:"y x",26:"y x",27:"y x",28:"y x",29:"y x"},ios_saf:{3.2:"y x","4.0-4.1":"y x","4.2-4.3":"y x","5.0-5.1":"y x","6.0-6.1":"y x","7.0-7.1":"y x",8:"y x","8.1-8.3":"y x"},op_mini:{"5.0-8.0":"n"},android:{2.1:"y x",2.2:"y x",2.3:"y x",3:"y x",4:"y x",4.1:"y x","4.2-4.3":"y x",4.4:"y x","4.4.3-4.4.4":"y x",40:"y x"},bb:{7:"y x",10:"y x"},op_mob:{10:"n",11:"n",11.1:"n",11.5:"n",12:"n",12.1:"n",24:"y x"},and_chr:{41:"y x"},and_ff:{36:"y x"},ie_mob:{10:"y x",11:"y x"},and_uc:{9.9:"y x"}},notes:'Currently the user-select property does not appear in any W3C specification. Support information here is only for "none" value, not others.',notes_by_num:{},usage_perc_y:89.94,usage_perc_a:0,ucprefix:!1,parent:"",keywords:"",ie_id:"",chrome_id:"",shown:!0}},{}],95:[function(a,b,c){function d(a,b){return 0===b?a:d(b,a%b)}function e(a){for(var b=1;Math.round(a*b)/b!==a;)b*=10;return b}function f(a){if(0===a)return 0;"string"==typeof a&&(a=parseFloat(a));var b=e(a),c=a*b,f=d(c,b),g=c/f,h=b/f;return g+"/"+h}b.exports=f},{}],96:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},f=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},g=d(a("./container")),h=function(a){function b(c){f(this,b),this.type="atrule",a.call(this,c)}return e(b,a),b.prototype.stringify=function(a,b){var c="@"+this.name,d=this.params?this.stringifyRaw("params"):"";if("undefined"!=typeof this.afterName?c+=this.afterName:d&&(c+=" "),this.nodes)this.stringifyBlock(a,c+d);else{var e=this.style("before");e&&a(e);var f=(this.between||"")+(b?";":"");a(c+d+f,this)}},b.prototype.append=function(b){return this.nodes||(this.nodes=[]),a.prototype.append.call(this,b)},b.prototype.prepend=function(b){return this.nodes||(this.nodes=[]),a.prototype.prepend.call(this,b)},b.prototype.insertBefore=function(b,c){return this.nodes||(this.nodes=[]),a.prototype.insertBefore.call(this,b,c)},b.prototype.insertAfter=function(b,c){return this.nodes||(this.nodes=[]),a.prototype.insertAfter.call(this,b,c)},b}(g);b.exports=h},{"./container":98}],97:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},f=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},g=d(a("./node")),h=function(a){function b(c){f(this,b),this.type="comment",a.call(this,c)}return e(b,a),b.prototype.stringify=function(a){var b=this.style("before");b&&a(b);var c=this.style("left","commentLeft"),d=this.style("right","commentRight");a("/*"+c+this.text+d+"*/",this)},b}(g);b.exports=h},{"./node":104}],98:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},f=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},g=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},h=d(a("./declaration")),i=d(a("./comment")),j=d(a("./node")),k=function(b){function c(){g(this,c),null!=b&&b.apply(this,arguments)}return f(c,b),c.prototype.stringifyContent=function(a){if(this.nodes){for(var b,c=this.nodes.length-1;c>0&&"comment"==this.nodes[c].type;)c-=1;var d=this.style("semicolon");for(b=0;b=c.length)break;f=c[e++]}else{if(e=c.next(),e.done)break;f=e.value}var g=f;this.nodes.push(g)}return this},c.prototype.prepend=function(a){for(var b=this.normalize(a,this.first,"prepend").reverse(),c=b,d=Array.isArray(c),e=0,c=d?c:c[Symbol.iterator]();;){var f;if(d){if(e>=c.length)break;f=c[e++]}else{if(e=c.next(),e.done)break;f=e.value}var g=f;this.nodes.unshift(g)}for(var h in this.indexes)this.indexes[h]=this.indexes[h]+b.length;return this},c.prototype.insertBefore=function(a,b){a=this.index(a);for(var c=0===a?"prepend":!1,d=this.normalize(b,this.nodes[a],c).reverse(),e=d,f=Array.isArray(e),g=0,e=f?e:e[Symbol.iterator]();;){var h;if(f){if(g>=e.length)break;h=e[g++]}else{if(g=e.next(),g.done)break;h=g.value}var i=h;this.nodes.splice(a,0,i)}var j;for(var k in this.indexes)j=this.indexes[k],j>=a&&(this.indexes[k]=j+d.length);return this},c.prototype.insertAfter=function(a,b){a=this.index(a);for(var c=this.normalize(b,this.nodes[a]).reverse(),d=c,e=Array.isArray(d),f=0,d=e?d:d[Symbol.iterator]();;){var g;if(e){if(f>=d.length)break;g=d[f++]}else{if(f=d.next(),f.done)break;g=f.value}var h=g;this.nodes.splice(a+1,0,h)}var i;for(var j in this.indexes)i=this.indexes[j],i>a&&(this.indexes[j]=i+c.length);return this},c.prototype.remove=function(a){a=this.index(a),this.nodes[a].parent=void 0,this.nodes.splice(a,1);var b;for(var c in this.indexes)b=this.indexes[c],b>=a&&(this.indexes[c]=b-1);return this},c.prototype.removeAll=function(){for(var a=this.nodes,b=Array.isArray(a),c=0,a=b?a:a[Symbol.iterator]();;){var d;if(b){if(c>=a.length)break;d=a[c++]}else{if(c=a.next(),c.done)break;d=c.value}var e=d;e.parent=void 0}return this.nodes=[],this},c.prototype.replaceValues=function(a,b,c){return c||(c=b,b={}),this.eachDecl(function(d){b.props&&-1==b.props.indexOf(d.prop)||b.fast&&-1==d.value.indexOf(b.fast)||(d.value=d.value.replace(a,c))}),this},c.prototype.every=function(a){return this.nodes.every(a)},c.prototype.some=function(a){return this.nodes.some(a)},c.prototype.index=function(a){return"number"==typeof a?a:this.nodes.indexOf(a)},c.prototype.normalize=function(b,c){var e=this;if(!Array.isArray(b))if("root"==b.type)b=b.nodes;else if(b.type)b=[b];else if(b.prop)b=[new h(b)];else if(b.selector){var f=d(a("./rule"));b=[new f(b)]}else if(b.name){var g=d(a("./at-rule"));b=[new g(b)]}else b.text&&(b=[new i(b)]);var j=b.map(function(a){return a.parent&&(a=a.clone()),"undefined"==typeof a.before&&c&&"undefined"!=typeof c.before&&(a.before=c.before.replace(/[^\s]/g,"")),a.parent=e,a});return j},e(c,null,{first:{get:function(){return this.nodes?this.nodes[0]:void 0},configurable:!0},last:{get:function(){return this.nodes?this.nodes[this.nodes.length-1]:void 0},configurable:!0}}),c}(j);b.exports=k},{"./at-rule":96,"./comment":97,"./declaration":100,"./node":104,"./rule":111}],99:[function(a,b,c){(function(c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},f=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},g=(d(a("./previous-map")),d(a("path")),function(a){function b(a,c,d,e,g){f(this,b),this.reason=a,this.message=g?g:"","undefined"!=typeof c&&"undefined"!=typeof d?(this.line=c,this.column=d,this.message+=":"+c+":"+d+": "+a):this.message+=": "+a,g&&(this.file=g),e&&(this.source=e),Error.captureStackTrace&&Error.captureStackTrace(this,b)}return e(b,a),b.prototype.highlight=function(a){for(var b=this.line-1,d=this.source.split("\n"),e=b>0?d[b-1]+"\n":"",f=d[b],g=b",this.from=this.id),this.map&&(this.map.file=this.from)}return a.prototype.error=function(a){var b=function(){return a.apply(this,arguments)};return b.toString=function(){return a.toString()},b}(function(a,b,c){var d=new f(a),e=this.origin(b,c);return e?(d=new f(a,e.line,e.column,e.source,e.file),d.generated={line:b,column:c,source:this.css},this.file&&(d.generated.file=this.file)):d=new f(a,b,c,this.css,this.file),d}),a.prototype.origin=function(a,b){if(!this.map)return!1;var c=this.map.consumer(),d=c.originalPositionFor({line:a,column:b});if(!d.source)return!1;var e={file:this.mapResolve(d.source),line:d.line,column:d.column},f=c.sourceContentFor(e.file);return f&&(e.source=f),e},a.prototype.mapResolve=function(a){return h.resolve(this.map.consumer().sourceRoot||".",a)},a}();b.exports=j},{"./css-syntax-error":99,"./parser":106,"./previous-map":108,path:53}],102:[function(a,b,c){"use strict";b.exports={split:function d(a,b,c){for(var e=[],f="",d=!1,g=0,h=!1,i=!1,j=0;j0&&(g-=1);else if(0===g)for(var l=0;l0},a.prototype.previous=function(){var a=this;return this.previousMaps||(this.previousMaps=[],this.root.eachInside(function(b){if(b.source&&b.source.input.map){var c=b.source.input.map;-1==a.previousMaps.indexOf(c)&&a.previousMaps.push(c)}})),this.previousMaps},a.prototype.isInline=function(){if("undefined"!=typeof this.mapOpts.inline)return this.mapOpts.inline;var a=this.mapOpts.annotation;return"undefined"!=typeof a&&a!==!0?!1:this.previous().length?this.previous().some(function(a){return a.inline}):!0},a.prototype.isSourcesContent=function(){return"undefined"!=typeof this.mapOpts.sourcesContent?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(function(a){return a.withContent()}):!0},a.prototype.clearAnnotation=function(){if(this.mapOpts.annotation!==!1)for(var a,b=this.root.nodes.length-1;b>=0;b--)if(a=this.root.nodes[b],"comment"==a.type&&a.text.match(/^# sourceMappingURL=/))return void this.root.remove(b)},a.prototype.setSourcesContent=function(){var a=this,b={};this.root.eachInside(function(c){if(c.source){var d=c.source.input.from;if(d&&!b[d]){b[d]=!0;var e=a.relative(d);a.map.setSourceContent(e,c.source.input.css)}}})},a.prototype.applyPrevMaps=function(){for(var a=this.previous(),b=Array.isArray(a),c=0,a=b?a:a[Symbol.iterator]();;){var d;if(b){if(c>=a.length)break;d=a[c++]}else{if(c=a.next(),c.done)break;d=c.value}var e,f=d,i=this.relative(f.file),j=f.root||h.dirname(f.file);this.mapOpts.sourcesContent===!1?(e=new g.SourceMapConsumer(f.text),e.sourcesContent=e.sourcesContent.map(function(a){return null})):e=f.consumer(),this.map.applySourceMap(e,i,this.relative(j))}},a.prototype.isAnnotation=function(){return this.isInline()?!0:"undefined"!=typeof this.mapOpts.annotation?this.mapOpts.annotation:this.previous().length?this.previous().some(function(a){return a.annotation}):!0},a.prototype.addAnnotation=function(){var a;a=this.isInline()?"data:application/json;base64,"+f.encode(this.map.toString()):"string"==typeof this.mapOpts.annotation?this.mapOpts.annotation:this.outputFile()+".map",this.css+="\n/*# sourceMappingURL="+a+" */"},a.prototype.outputFile=function(){return this.opts.to?this.relative(this.opts.to):this.opts.from?this.relative(this.opts.from):"to.css"},a.prototype.generateMap=function(){return this.stringify(),this.isSourcesContent()&&this.setSourcesContent(),this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]},a.prototype.relative=function(a){var b=this.opts.to?h.dirname(this.opts.to):".";return"string"==typeof this.mapOpts.annotation&&(b=h.dirname(h.resolve(b,this.mapOpts.annotation))),a=h.relative(b,a),"\\"==h.sep?a.replace(/\\/g,"/"):a},a.prototype.sourcePath=function(a){return this.relative(a.source.input.from)},a.prototype.stringify=function(){var a=this;this.css="",this.map=new g.SourceMapGenerator({file:this.outputFile()});var b,c,d=1,e=1,f=function(f,g,h){a.css+=f,g&&g.source&&g.source.start&&"end"!=h&&a.map.addMapping({source:a.sourcePath(g),original:{line:g.source.start.line,column:g.source.start.column-1},generated:{line:d,column:e-1}}),b=f.match(/\n/g),b?(d+=b.length,c=f.lastIndexOf("\n"),e=f.length-c):e+=f.length,g&&g.source&&g.source.end&&"start"!=h&&a.map.addMapping({source:a.sourcePath(g),original:{line:g.source.end.line,column:g.source.end.column},generated:{line:d,column:e}})};this.root.stringify(f)},a.prototype.generate=function(){return this.clearAnnotation(),this.isMap()?this.generateMap():[this.root.toString()]},a}();b.exports=i},{"./result":109,"js-base64":114,path:53,"source-map":115}],104:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},f=d(a("./css-syntax-error")),g={colon:": ",indent:" ",beforeDecl:"\n",beforeRule:"\n",beforeOpen:" ",beforeClose:"\n",beforeComment:"\n",after:"\n",emptyBody:"",commentLeft:" ",commentRight:" "},h=function(a){var b=function(){return a.apply(this,arguments)};return b.toString=function(){return a.toString()},b}(function(a,b){if("object"!=typeof a)return a;var c=new a.constructor;for(var d in a)if(a.hasOwnProperty(d)){var e=a[d];"parent"==d&&"object"==typeof e?b&&(c[d]=b):"source"==d?c[d]=e:e instanceof Array?c[d]=e.map(function(a){return h(a,c)}):"before"!=d&&"after"!=d&&"between"!=d&&"semicolon"!=d&&(c[d]=h(e,c))}return c}),i=function(){function a(){var b=void 0===arguments[0]?{}:arguments[0];e(this,a);for(var c in b)this[c]=b[c]}return a.prototype.error=function(a){if(this.source){var b=this.source.start;return this.source.input.error(a,b.line,b.column)}return new f(a)},a.prototype.removeSelf=function(){return this.parent&&this.parent.remove(this),this.parent=void 0,this},a.prototype.replace=function(a){return this.parent.insertBefore(this,a),this.parent.remove(this),this},a.prototype.toString=function(){var a="",b=function(b){return a+=b};return this.stringify(b),a},a.prototype.clone=function(){var a=void 0===arguments[0]?{}:arguments[0],b=h(this);for(var c in a)b[c]=a[c];return b},a.prototype.cloneBefore=function(){var a=void 0===arguments[0]?{}:arguments[0],b=this.clone(a);return this.parent.insertBefore(this,b),b},a.prototype.cloneAfter=function(){var a=void 0===arguments[0]?{}:arguments[0],b=this.clone(a);return this.parent.insertAfter(this,b),b},a.prototype.replaceWith=function(a){return this.parent.insertBefore(this,a),this.removeSelf(),this},a.prototype.moveTo=function(a){return this.cleanStyles(this.root()==a.root()),this.removeSelf(),a.append(this),this},a.prototype.moveBefore=function(a){return this.cleanStyles(this.root()==a.root()),this.removeSelf(),a.parent.insertBefore(a,this),this},a.prototype.moveAfter=function(a){return this.cleanStyles(this.root()==a.root()),this.removeSelf(),a.parent.insertAfter(a,this),this},a.prototype.next=function(){var a=this.parent.index(this);return this.parent.nodes[a+1]},a.prototype.prev=function(){var a=this.parent.index(this);return this.parent.nodes[a-1]},a.prototype.toJSON=function(){var a={};for(var b in this)if(this.hasOwnProperty(b)&&"parent"!=b){var c=this[b];c instanceof Array?a[b]=c.map(function(a){return"object"==typeof a&&a.toJSON?a.toJSON():a}):"object"==typeof c&&c.toJSON?a[b]=c.toJSON():a[b]=c}return a},a.prototype.style=function(a,b){var c;if(b||(b=a),a&&(c=this[a],"undefined"!=typeof c))return c;var d=this.parent;if("before"==b&&(!d||"root"==d.type&&d.first==this))return"";if(!d)return g[b];var e=this.root();if(e.styleCache||(e.styleCache={}),"undefined"!=typeof e.styleCache[b])return e.styleCache[b];if("semicolon"==b)e.eachInside(function(a){return a.nodes&&a.nodes.length&&"decl"==a.last.type&&(c=a.semicolon,"undefined"!=typeof c)?!1:void 0});else if("emptyBody"==b)e.eachInside(function(a){return a.nodes&&0===a.nodes.length&&(c=a.after,"undefined"!=typeof c)?!1:void 0});else if("indent"==b)e.eachInside(function(a){var b=a.parent;if(b&&b!=e&&b.parent&&b.parent==e&&"undefined"!=typeof a.before){ var d=a.before.split("\n");return c=d[d.length-1],c=c.replace(/[^\s]/g,""),!1}});else if("beforeComment"==b)e.eachComment(function(a){return"undefined"!=typeof a.before?(c=a.before,-1!=c.indexOf("\n")&&(c=c.replace(/[^\n]+$/,"")),!1):void 0}),"undefined"==typeof c&&(c=this.style(null,"beforeDecl"));else if("beforeDecl"==b)e.eachDecl(function(a){return"undefined"!=typeof a.before?(c=a.before,-1!=c.indexOf("\n")&&(c=c.replace(/[^\n]+$/,"")),!1):void 0}),"undefined"==typeof c&&(c=this.style(null,"beforeRule"));else if("beforeRule"==b)e.eachInside(function(a){return!a.nodes||a.parent==e&&e.first==a||"undefined"==typeof a.before?void 0:(c=a.before,-1!=c.indexOf("\n")&&(c=c.replace(/[^\n]+$/,"")),!1)});else if("beforeClose"==b)e.eachInside(function(a){return a.nodes&&a.nodes.length>0&&"undefined"!=typeof a.after?(c=a.after,-1!=c.indexOf("\n")&&(c=c.replace(/[^\n]+$/,"")),!1):void 0});else{if("before"==b||"after"==b){c="decl"==this.type?this.style(null,"beforeDecl"):"comment"==this.type?this.style(null,"beforeComment"):"before"==b?this.style(null,"beforeRule"):this.style(null,"beforeClose");for(var f=this.parent,h=0;f&&"root"!=f.type;)h+=1,f=f.parent;if(-1!=c.indexOf("\n")){var i=this.style(null,"indent");if(i.length)for(var j=0;h>j;j++)c+=i}return c}"colon"==b?e.eachDecl(function(a){return"undefined"!=typeof a.between?(c=a.between.replace(/[^\s:]/g,""),!1):void 0}):"beforeOpen"==b?e.eachInside(function(a){return"decl"!=a.type&&(c=a.between,"undefined"!=typeof c)?!1:void 0}):e.eachInside(function(b){return c=b[a],"undefined"!=typeof c?!1:void 0})}return"undefined"==typeof c&&(c=g[b]),e.styleCache[b]=c,c},a.prototype.root=function(){for(var a=this;a.parent;)a=a.parent;return a},a.prototype.cleanStyles=function(a){if(delete this.before,delete this.after,a||delete this.between,this.nodes)for(var b=this.nodes,c=Array.isArray(b),d=0,b=c?b:b[Symbol.iterator]();;){var e;if(c){if(d>=b.length)break;e=b[d++]}else{if(d=b.next(),d.done)break;e=d.value}var f=e;f.cleanStyles(a)}},a.prototype.stringifyRaw=function(a){var b=this[a],c=this["_"+a];return c&&c.value===b?c.raw:b},a}();b.exports=i},{"./css-syntax-error":99}],105:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=d(a("./parser")),f=d(a("./input"));b.exports=function(a,b){var c=new f(a,b),d=new e(c);return d.tokenize(),d.loop(),d.root}},{"./input":101,"./parser":106}],106:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},f=d(a("./declaration")),g=d(a("./tokenize")),h=d(a("./comment")),i=d(a("./at-rule")),j=d(a("./root")),k=d(a("./rule")),l=function(){function a(b){e(this,a),this.input=b,this.pos=0,this.root=new j,this.current=this.root,this.spaces="",this.semicolon=!1,this.root.source={input:b},b.map&&(this.root.prevMap=b.map)}return a.prototype.tokenize=function(){this.tokens=g(this.input)},a.prototype.loop=function(){for(var a;this.pos0&&!this.input.safe)throw this.input.error("Unclosed bracket",e[2],e[3]);if(b&&d){for(;this.pos>g&&(a=this.tokens[this.pos][0],"space"==a||"comment"==a);)this.pos-=1;return void this.decl(this.tokens.slice(g,this.pos+1))}if(!this.input.safe)throw a=this.tokens[g],this.input.error("Unknown word",a[2],a[3]);var h=this.tokens.slice(g,this.pos+1);this.spaces+=h.map(function(a){return a[1]}).join("")},a.prototype.rule=function(a){a.pop();var b=new k;this.init(b,a[0][2],a[0][3]),b.between=this.spacesFromEnd(a),this.raw(b,"selector",a),this.current=b},a.prototype.decl=function(a){var b=new f;this.init(b);var c=a[a.length-1];for(";"==c[0]&&(this.semicolon=!0,a.pop()),c[4]?b.source.end={line:c[4],column:c[5]}:b.source.end={line:c[2],column:c[3]};"word"!=a[0][0];)b.before+=a.shift()[1];b.source.start={line:a[0][2],column:a[0][3]},b.prop=a.shift()[1],b.between="";for(var d;a.length;){if(d=a.shift(),":"==d[0]){b.between+=d[1];break}"space"!=d[0]&&"comment"!=d[0]?this.unknownWord(b,d,a):b.between+=d[1]}("_"==b.prop[0]||"*"==b.prop[0])&&(b.before+=b.prop[0],b.prop=b.prop.slice(1)),b.between+=this.spacesFromStart(a),this.input.safe&&this.checkMissedSemicolon(a);for(var e=a.length-1;e>0;e--){if(d=a[e],"!important"==d[1]){b.important=!0;var g=this.stringFrom(a,e);g=this.spacesFromEnd(a)+g," !important"!=g&&(b._important=g);break}if("space"!=d[0]&&"comment"!=d[0])break}this.raw(b,"value",a),-1==b.value.indexOf(":")||this.input.safe||this.checkMissedSemicolon(a)},a.prototype.atrule=function(a){var b=new i;if(b.name=a[1].slice(1),""===b.name){if(!this.input.safe)throw this.input.error("At-rule without name",a[2],a[3]);b.name=""}this.init(b,a[2],a[3]);for(var c=!1,d=!1,e=[];;){if(this.pos+=1,a=this.tokens[this.pos],!a){c=!0;break}if(";"==a[0]){b.source.end={line:a[2],column:a[3]},this.semicolon=!0;break}if("{"==a[0]){d=!0;break}e.push(a)}b.between=this.spacesFromEnd(e),e.length?(b.afterName=this.spacesFromStart(e),this.raw(b,"params",e),c&&(a=e[e.length-1],b.source.end={line:a[4],column:a[5]},this.spaces=b.between,b.between="")):(b.afterName="",b.params=""),d&&(b.nodes=[],this.current=b)},a.prototype.end=function(a){if(this.current.nodes&&this.current.nodes.length&&(this.current.semicolon=this.semicolon),this.semicolon=!1,this.current.after=(this.current.after||"")+this.spaces,this.spaces="",this.current.parent)this.current.source.end={line:a[2],column:a[3]},this.current=this.current.parent;else{if(!this.input.safe)throw this.input.error("Unexpected }",a[2],a[3]);this.current.after+="}"}},a.prototype.endFile=function(){if(this.current.parent&&!this.input.safe){var a=this.current.source.start;throw this.input.error("Unclosed block",a.line,a.column)}for(this.current.nodes&&this.current.nodes.length&&(this.current.semicolon=this.semicolon),this.current.after=(this.current.after||"")+this.spaces;this.current.parent;)this.current=this.current.parent,this.current.after=""},a.prototype.unknownWord=function(a,b){if(!this.input.safe)throw this.input.error("Unknown word",b[2],b[3]);a.source.start={line:b[2],column:b[3]},a.before+=a.prop+a.between,a.prop=b[1],a.between=""},a.prototype.checkMissedSemicolon=function(a){for(var b,c,d=null,e=!1,f=0,g=0;g=0&&(c=a[i],"space"==c[0]||(h+=1,2!=h));i--);throw this.input.error("Missed semicolon",c[4],c[5])}var j;for(j=e-1;j>=0&&"word"!=a[j][0];j--);for(j-=1;j>=0;j--)if("space"!=a[j][0]){j+=1;break}var k=a.splice(j,a.length-j);this.decl(k)}},a.prototype.init=function(a,b,c){this.current.push(a),a.source={start:{line:b,column:c},input:this.input},a.before=this.spaces,this.spaces="","comment"!=a.type&&(this.semicolon=!1)},a.prototype.raw=function(a,b,c){for(var d,e="",f=!0,g=c,h=Array.isArray(g),i=0,g=h?g:g[Symbol.iterator]();;){if(h){if(i>=g.length)break;d=g[i++]}else{if(i=g.next(),i.done)break;d=i.value}"comment"==d[0]?f=!1:e+=d[1]}if(!f){for(var j="",k=c,l=Array.isArray(k),m=0,k=l?k:k[Symbol.iterator]();;){if(l){if(m>=k.length)break;d=k[m++]}else{if(m=k.next(),m.done)break;d=m.value}j+=d[1]}a["_"+b]={value:e,raw:j}}a[b]=e},a.prototype.spacesFromEnd=function(a){for(var b,c="";a.length&&(b=a[a.length-1][0],"space"==b||"comment"==b);)c+=a.pop()[1];return c},a.prototype.spacesFromStart=function(a){for(var b,c="";a.length&&(b=a[0][0],"space"==b||"comment"==b);)c+=a.shift()[1];return c},a.prototype.stringFrom=function(a,b){for(var c="",d=b;d=d.length)break;g=d[f++]}else{if(f=d.next(),f.done)break;g=f.value}var h=g,j=h(b,c);j instanceof l&&(b=j)}return b.toResult(c)},a.prototype.normalize=function(a){var b=typeof a;return"object"!=b&&"function"!=b||!a.postcss?a:a.postcss},a}(),n=function(){for(var a=arguments.length,b=Array(a),c=0;a>c;c++)b[c]=arguments[c];return 1==b.length&&Array.isArray(b[0])&&(b=b[0]),new m(b)};n.parse=j,n.comment=function(a){return new g(a)},n.atRule=function(a){return new h(a)},n.decl=function(a){return new f(a)},n.rule=function(a){return new k(a)},n.root=function(a){return new l(a)},b.exports=n},{"./at-rule":96,"./comment":97,"./declaration":100,"./parse":105,"./result":109,"./root":110,"./rule":111}],108:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},f=a("js-base64").Base64,g=d(a("source-map")),h=d(a("path")),i=d(a("fs")),j=function(){function a(b,c){e(this,a),this.loadAnnotation(b),this.inline=this.startWith(this.annotation,"data:");var d=c.map?c.map.prev:void 0,f=this.loadMap(c.from,d);f&&(this.text=f)}return a.prototype.consumer=function(){return this.consumerCache||(this.consumerCache=new g.SourceMapConsumer(this.text)),this.consumerCache},a.prototype.withContent=function(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)},a.prototype.startWith=function(a,b){return a?a.substr(0,b.length)==b:!1},a.prototype.loadAnnotation=function(a){var b=a.match(/\/\*\s*# sourceMappingURL=(.*)\s*\*\//);b&&(this.annotation=b[1].trim())},a.prototype.decodeInline=function(a){var b="data:application/json,",c="data:application/json;base64,";if(this.startWith(a,b))return decodeURIComponent(a.substr(b.length));if(this.startWith(a,c))return f.decode(a.substr(c.length));var d=a.match(/data:application\/json;([^,]+),/)[1];throw new Error("Unsupported source map encoding "+d)},a.prototype.loadMap=function(a,b){if(b!==!1){if(b){if("string"==typeof b)return b;if(b instanceof g.SourceMapConsumer)return g.SourceMapGenerator.fromSourceMap(b).toString();if(b instanceof g.SourceMapGenerator)return b.toString();if("object"==typeof b&&b.mappings)return JSON.stringify(b);throw new Error("Unsupported previous source map format: "+b.toString())}if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){var c=this.annotation;if(a&&(c=h.join(h.dirname(a),c)),this.root=h.dirname(c),i.existsSync&&i.existsSync(c))return i.readFileSync(c,"utf-8").toString().trim()}}},a}();b.exports=j},{fs:48,"js-base64":114,path:53,"source-map":115}],109:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},f=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},g=d(a("./map-generator")),h=function(){function a(b){var c=void 0===arguments[1]?{}:arguments[1];f(this,a),this.root=b,this.opts=c}return a.prototype.toString=function(){return this.css},a.prototype.stringify=function(){var a=new g(this.root,this.opts),b=a.generate();this.cssCached=b[0],this.mapCached=b[1]},e(a,null,{map:{get:function(){return this.cssCached||this.stringify(),this.mapCached},configurable:!0},css:{get:function(){return this.cssCached||this.stringify(),this.cssCached},configurable:!0}}),a}();b.exports=h},{"./map-generator":103}],110:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},f=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},g=(d(a("./declaration")),d(a("./container"))),h=(d(a("./comment")),d(a("./at-rule")),d(a("./result"))),i=(d(a("./rule")),function(a){function b(c){f(this,b),this.type="root",this.nodes=[],a.call(this,c)}return e(b,a),b.prototype.remove=function(b){return b=this.index(b),0===b&&this.nodes.length>1&&(this.nodes[1].before=this.nodes[b].before),a.prototype.remove.call(this,b)},b.prototype.normalize=function(b,c,d){var e=a.prototype.normalize.call(this,b);if(c)if("prepend"==d)this.nodes.length>1?c.before=this.nodes[1].before:delete c.before;else for(var f=e,g=Array.isArray(f),h=0,f=g?f:f[Symbol.iterator]();;){var i;if(g){if(h>=f.length)break;i=f[h++]}else{if(h=f.next(),h.done)break;i=h.value}var j=i;this.first!=c&&(j.before=c.before)}return e},b.prototype.stringify=function(a){this.stringifyContent(a),this.after&&a(this.after)},b.prototype.toResult=function(){var a=void 0===arguments[0]?{}:arguments[0];return new h(this,a)},b}(g));b.exports=i},{"./at-rule":96,"./comment":97,"./container":98,"./declaration":100,"./result":109,"./rule":111}],111:[function(a,b,c){"use strict";var d=function(a){return a&&a.__esModule?a["default"]:a},e=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},f=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(a.__proto__=b)},g=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")},h=(d(a("./declaration")),d(a("./container"))),i=d(a("./list")),j=function(a){function b(c){g(this,b),this.type="rule",this.nodes=[],a.call(this,c)}return f(b,a),b.prototype.stringify=function(a){this.stringifyBlock(a,this.stringifyRaw("selector"))},e(b,null,{selectors:{get:function(){return i.comma(this.selector)},set:function(a){this.selector=a.join(", ")},configurable:!0}}),b}(h);b.exports=j},{"./container":98,"./declaration":100,"./list":102}],112:[function(a,b,c){"use strict";var d="'".charCodeAt(0),e='"'.charCodeAt(0),f="\\".charCodeAt(0),g="/".charCodeAt(0),h="\n".charCodeAt(0),i=" ".charCodeAt(0),j="\f".charCodeAt(0),k=" ".charCodeAt(0),l="\r".charCodeAt(0),m="(".charCodeAt(0),n=")".charCodeAt(0),o="{".charCodeAt(0),p="}".charCodeAt(0),q=";".charCodeAt(0),r="*".charCodeAt(0),s=":".charCodeAt(0),t="@".charCodeAt(0),u=/[ \n\t\r\{\(\)'"\\/]/g,v=/[ \n\t\r\(\)\{\}:;@!'"\\]|\/(?=\*)/g,w=/.[\\\/\("'\n]/;b.exports=function(a){for(var b,c,x,y,z,A,B,C,D,E,F,G=[],H=a.css.valueOf(),I=H.length,J=-1,K=1,L=0,M=function(b,d){if(!a.safe)throw a.error("Unclosed "+b,K,L-J);H+=d,c=H.length-1};I>L;){switch(b=H.charCodeAt(L),b==h&&(J=L,K+=1),b){case h:case i:case k:case l:case j:c=L;do c+=1,b=H.charCodeAt(c),b==h&&(J=c,K+=1);while(b==i||b==h||b==k||b==l||b==j);G.push(["space",H.slice(L,c)]),L=c-1;break;case o:G.push(["{","{",K,L-J]);break;case p:G.push(["}","}",K,L-J]);break;case s:G.push([":",":",K,L-J]);break;case q:G.push([";",";",K,L-J]);break;case m:c=H.indexOf(")",L+1),A=H.slice(L,c+1),-1==c||w.test(A)?G.push(["(","(",K,L-J]):(G.push(["brackets",A,K,L-J,K,c-J]),L=c);break;case n:G.push([")",")",K,L-J]);break;case d:case e:x=b==d?"'":'"',c=L;do for(E=!1,c=H.indexOf(x,c+1),-1==c&&M("quote",x),F=c;H.charCodeAt(F-1)==f;)F-=1,E=!E;while(E);G.push(["string",H.slice(L,c+1),K,L-J,K,c-J]),L=c;break;case t:u.lastIndex=L+1,u.test(H),c=0===u.lastIndex?H.length-1:u.lastIndex-2,G.push(["at-word",H.slice(L,c+1),K,L-J,K,c-J]),L=c;break;case f:for(c=L,B=!0;H.charCodeAt(c+1)==f;)c+=1,B=!B;b=H.charCodeAt(c+1),B&&b!=g&&b!=i&&b!=h&&b!=k&&b!=l&&b!=j&&(c+=1),G.push(["word",H.slice(L,c+1),K,L-J,K,c-J]),L=c;break;default:b==g&&H.charCodeAt(L+1)==r?(c=H.indexOf("*/",L+2)+1,0===c&&M("comment","*/"),A=H.slice(L,c+1),y=A.split("\n"),z=y.length-1,z>0?(C=K+z,D=c-y[z].length):(C=K,D=J),G.push(["comment",A,K,L-J,C,c-D]),J=D,K=C,L=c):(v.lastIndex=L+1,v.test(H),c=0===v.lastIndex?H.length-1:v.lastIndex-2,G.push(["word",H.slice(L,c+1),K,L-J,K,c-J]),L=c)}L++}return G}},{}],113:[function(a,b,c){"use strict";b.exports={prefix:function(a){if("-"==a[0]){var b=a.indexOf("-",1);return a.substr(0,b+1)}return""},unprefixed:function(a){if("-"==a[0]){var b=a.indexOf("-",1);return a.substr(b+1)}return a}}},{}],114:[function(a,b,c){!function(c){"use strict";var d,e=c.Base64,f="2.1.8";"undefined"!=typeof b&&b.exports&&(d=a("buffer").Buffer);var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",h=function(a){for(var b={},c=0,d=a.length;d>c;c++)b[a.charAt(c)]=c;return b}(g),i=String.fromCharCode,j=function(a){if(a.length<2){var b=a.charCodeAt(0);return 128>b?a:2048>b?i(192|b>>>6)+i(128|63&b):i(224|b>>>12&15)+i(128|b>>>6&63)+i(128|63&b)}var b=65536+1024*(a.charCodeAt(0)-55296)+(a.charCodeAt(1)-56320);return i(240|b>>>18&7)+i(128|b>>>12&63)+i(128|b>>>6&63)+i(128|63&b)},k=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,l=function(a){return a.replace(k,j)},m=function(a){var b=[0,2,1][a.length%3],c=a.charCodeAt(0)<<16|(a.length>1?a.charCodeAt(1):0)<<8|(a.length>2?a.charCodeAt(2):0),d=[g.charAt(c>>>18),g.charAt(c>>>12&63),b>=2?"=":g.charAt(c>>>6&63),b>=1?"=":g.charAt(63&c)];return d.join("")},n=c.btoa?function(a){return c.btoa(a)}:function(a){return a.replace(/[\s\S]{1,3}/g,m)},o=d?function(a){return(a.constructor===d.constructor?a:new d(a)).toString("base64")}:function(a){return n(l(a))},p=function(a,b){return b?o(String(a)).replace(/[+\/]/g,function(a){return"+"==a?"-":"_"}).replace(/=/g,""):o(String(a))},q=function(a){return p(a,!0)},r=new RegExp(["[À-ß][€-¿]","[à-ï][€-¿]{2}","[ð-÷][€-¿]{3}"].join("|"),"g"),s=function(a){switch(a.length){case 4:var b=(7&a.charCodeAt(0))<<18|(63&a.charCodeAt(1))<<12|(63&a.charCodeAt(2))<<6|63&a.charCodeAt(3),c=b-65536;return i((c>>>10)+55296)+i((1023&c)+56320);case 3:return i((15&a.charCodeAt(0))<<12|(63&a.charCodeAt(1))<<6|63&a.charCodeAt(2));default:return i((31&a.charCodeAt(0))<<6|63&a.charCodeAt(1))}},t=function(a){return a.replace(r,s)},u=function(a){var b=a.length,c=b%4,d=(b>0?h[a.charAt(0)]<<18:0)|(b>1?h[a.charAt(1)]<<12:0)|(b>2?h[a.charAt(2)]<<6:0)|(b>3?h[a.charAt(3)]:0),e=[i(d>>>16),i(d>>>8&255),i(255&d)];return e.length-=[0,0,2,1][c],e.join("")},v=c.atob?function(a){return c.atob(a)}:function(a){return a.replace(/[\s\S]{1,4}/g,u)},w=d?function(a){return(a.constructor===d.constructor?a:new d(a,"base64")).toString()}:function(a){return t(v(a))},x=function(a){return w(String(a).replace(/[-_]/g,function(a){return"-"==a?"+":"/"}).replace(/[^A-Za-z0-9\+\/]/g,""))},y=function(){var a=c.Base64;return c.Base64=e,a};if(c.Base64={VERSION:f,atob:v,btoa:n,fromBase64:x,toBase64:p,utob:l,encode:p,encodeURI:q,btou:t,decode:x,noConflict:y},"function"==typeof Object.defineProperty){var z=function(a){return{value:a,enumerable:!1,writable:!0,configurable:!0}};c.Base64.extendString=function(){Object.defineProperty(String.prototype,"fromBase64",z(function(){return x(this)})),Object.defineProperty(String.prototype,"toBase64",z(function(a){return p(this,a)})),Object.defineProperty(String.prototype,"toBase64URI",z(function(){return p(this,!0)}))}}c.Meteor&&(Base64=c.Base64)}(this)},{buffer:49}],115:[function(a,b,c){c.SourceMapGenerator=a("./source-map/source-map-generator").SourceMapGenerator,c.SourceMapConsumer=a("./source-map/source-map-consumer").SourceMapConsumer,c.SourceNode=a("./source-map/source-node").SourceNode},{"./source-map/source-map-consumer":123,"./source-map/source-map-generator":124,"./source-map/source-node":125}],116:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(){this._array=[],this._set={}}var e=a("./util");d.fromArray=function(a,b){for(var c=new d,e=0,f=a.length;f>e;e++)c.add(a[e],b);return c},d.prototype.add=function(a,b){var c=this.has(a),d=this._array.length;(!c||b)&&this._array.push(a),c||(this._set[e.toSetString(a)]=d)},d.prototype.has=function(a){return Object.prototype.hasOwnProperty.call(this._set,e.toSetString(a))},d.prototype.indexOf=function(a){if(this.has(a))return this._set[e.toSetString(a)];throw new Error('"'+a+'" is not in the set.')},d.prototype.at=function(a){if(a>=0&&aa?(-a<<1)+1:(a<<1)+0}function e(a){var b=1===(1&a),c=a>>1;return b?-c:c}var f=a("./base64"),g=5,h=1<>>=g,e>0&&(b|=j),c+=f.encode(b);while(e>0);return c},b.decode=function(a,b){var c,d,h=0,k=a.length,l=0,m=0;do{if(h>=k)throw new Error("Expected more digits in base 64 VLQ value.");d=f.decode(a.charAt(h++)),c=!!(d&j),d&=i,l+=d<0;)if(";"===l.charAt(0))d++,l=l.slice(1),f=0;else if(","===l.charAt(0))l=l.slice(1);else{if(c={},c.generatedLine=d,h.decode(l,m),c.generatedColumn=f+m.value,f=c.generatedColumn,l=m.rest,l.length>0&&!this._nextCharIsMappingSeparator(l)){if(h.decode(l,m),c.source=this._sources.at(j+m.value),j+=m.value,l=m.rest,0===l.length||this._nextCharIsMappingSeparator(l))throw new Error("Found a source, but no line and column");if(h.decode(l,m),c.originalLine=g+m.value,g=c.originalLine,c.originalLine+=1,l=m.rest,0===l.length||this._nextCharIsMappingSeparator(l))throw new Error("Found a source and line, but no column");h.decode(l,m),c.originalColumn=i+m.value,i=c.originalColumn,l=m.rest,l.length>0&&!this._nextCharIsMappingSeparator(l)&&(h.decode(l,m),c.name=this._names.at(k+m.value),k+=m.value,l=m.rest)}this.__generatedMappings.push(c),"number"==typeof c.originalLine&&this.__originalMappings.push(c)}this.__generatedMappings.sort(e.compareByGeneratedPositions),this.__originalMappings.sort(e.compareByOriginalPositions)},d.prototype._findMapping=function(a,b,c,d,e){if(a[c]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+a[c]);if(a[d]<0)throw new TypeError("Column must be greater than or equal to 0, got "+a[d]);return f.search(a,b,e)},d.prototype.computeColumnSpans=function(){for(var a=0;a=0){var d=this._generatedMappings[c];if(d.generatedLine===b.generatedLine){var f=e.getArg(d,"source",null);return null!=f&&null!=this.sourceRoot&&(f=e.join(this.sourceRoot,f)),{source:f,line:e.getArg(d,"originalLine",null),column:e.getArg(d,"originalColumn",null),name:e.getArg(d,"name",null)}}}return{source:null,line:null,column:null,name:null}},d.prototype.sourceContentFor=function(a,b){if(!this.sourcesContent)return null;if(null!=this.sourceRoot&&(a=e.relative(this.sourceRoot,a)),this._sources.has(a))return this.sourcesContent[this._sources.indexOf(a)];var c;if(null!=this.sourceRoot&&(c=e.urlParse(this.sourceRoot))){var d=a.replace(/^file:\/\//,"");if("file"==c.scheme&&this._sources.has(d))return this.sourcesContent[this._sources.indexOf(d)];if((!c.path||"/"==c.path)&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(b)return null;throw new Error('"'+a+'" is not in the SourceMap.')},d.prototype.generatedPositionFor=function(a){var b={source:e.getArg(a,"source"),originalLine:e.getArg(a,"line"),originalColumn:e.getArg(a,"column")};null!=this.sourceRoot&&(b.source=e.relative(this.sourceRoot,b.source));var c=this._findMapping(b,this._originalMappings,"originalLine","originalColumn",e.compareByOriginalPositions);if(c>=0){var d=this._originalMappings[c];return{line:e.getArg(d,"generatedLine",null),column:e.getArg(d,"generatedColumn",null),lastColumn:e.getArg(d,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},b.BasicSourceMapConsumer=d})},{"./array-set":116,"./base64-vlq":117,"./binary-search":120,"./source-map-consumer":123,"./util":126,amdefine:127}],120:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(a,b,c,e,f){var g=Math.floor((b-a)/2)+a,h=f(c,e[g],!0);return 0===h?g:h>0?b-g>1?d(g,b,c,e,f):g:g-a>1?d(a,g,c,e,f):0>a?-1:a}b.search=function(a,b,c){return 0===b.length?-1:d(-1,b.length,a,b,c)}})},{amdefine:127}],121:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(a){var b=a;"string"==typeof a&&(b=JSON.parse(a.replace(/^\)\]\}'/,"")));var c=e.getArg(b,"version"),d=e.getArg(b,"sections");if(c!=this._version)throw new Error("Unsupported version: "+c);var f={line:-1,column:0};this._sections=d.map(function(a){if(a.url)throw new Error("Support for url field in sections not implemented.");var b=e.getArg(a,"offset"),c=e.getArg(b,"line"),d=e.getArg(b,"column");if(cc||d==c&&g>=e||f.compareByGeneratedPositions(a,b)<=0}function e(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}var f=a("./util");e.prototype.unsortedForEach=function(a,b){ -this._array.forEach(a,b)},e.prototype.add=function(a){d(this._last,a)?(this._last=a,this._array.push(a)):(this._sorted=!1,this._array.push(a))},e.prototype.toArray=function(){return this._sorted||(this._array.sort(f.compareByGeneratedPositions),this._sorted=!0),this._array},b.MappingList=e})},{"./util":126,amdefine:127}],123:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(b){var c=b;if("string"==typeof b&&(c=JSON.parse(b.replace(/^\)\]\}'/,""))),null!=c.sections){var d=a("./indexed-source-map-consumer");return new d.IndexedSourceMapConsumer(c)}var e=a("./basic-source-map-consumer");return new e.BasicSourceMapConsumer(c)}var e=a("./util");d.fromSourceMap=function(b){var c=a("./basic-source-map-consumer");return c.BasicSourceMapConsumer.fromSourceMap(b)},d.prototype._version=3,d.prototype.__generatedMappings=null,Object.defineProperty(d.prototype,"_generatedMappings",{get:function(){return this.__generatedMappings||(this.__generatedMappings=[],this.__originalMappings=[],this._parseMappings(this._mappings,this.sourceRoot)),this.__generatedMappings}}),d.prototype.__originalMappings=null,Object.defineProperty(d.prototype,"_originalMappings",{get:function(){return this.__originalMappings||(this.__generatedMappings=[],this.__originalMappings=[],this._parseMappings(this._mappings,this.sourceRoot)),this.__originalMappings}}),d.prototype._nextCharIsMappingSeparator=function(a){var b=a.charAt(0);return";"===b||","===b},d.prototype._parseMappings=function(a,b){throw new Error("Subclasses must implement _parseMappings")},d.GENERATED_ORDER=1,d.ORIGINAL_ORDER=2,d.prototype.eachMapping=function(a,b,c){var f,g=b||null,h=c||d.GENERATED_ORDER;switch(h){case d.GENERATED_ORDER:f=this._generatedMappings;break;case d.ORIGINAL_ORDER:f=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var i=this.sourceRoot;f.map(function(a){var b=a.source;return null!=b&&null!=i&&(b=e.join(i,b)),{source:b,generatedLine:a.generatedLine,generatedColumn:a.generatedColumn,originalLine:a.originalLine,originalColumn:a.originalColumn,name:a.name}}).forEach(a,g)},d.prototype.allGeneratedPositionsFor=function(a){var b={source:e.getArg(a,"source"),originalLine:e.getArg(a,"line"),originalColumn:1/0};null!=this.sourceRoot&&(b.source=e.relative(this.sourceRoot,b.source));var c=[],d=this._findMapping(b,this._originalMappings,"originalLine","originalColumn",e.compareByOriginalPositions);if(d>=0)for(var f=this._originalMappings[d];f&&f.originalLine===b.originalLine;)c.push({line:e.getArg(f,"generatedLine",null),column:e.getArg(f,"generatedColumn",null),lastColumn:e.getArg(f,"lastGeneratedColumn",null)}),f=this._originalMappings[--d];return c.reverse()},b.SourceMapConsumer=d})},{"./basic-source-map-consumer":119,"./indexed-source-map-consumer":121,"./util":126,amdefine:127}],124:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(a){a||(a={}),this._file=f.getArg(a,"file",null),this._sourceRoot=f.getArg(a,"sourceRoot",null),this._skipValidation=f.getArg(a,"skipValidation",!1),this._sources=new g,this._names=new g,this._mappings=new h,this._sourcesContents=null}var e=a("./base64-vlq"),f=a("./util"),g=a("./array-set").ArraySet,h=a("./mapping-list").MappingList;d.prototype._version=3,d.fromSourceMap=function(a){var b=a.sourceRoot,c=new d({file:a.file,sourceRoot:b});return a.eachMapping(function(a){var d={generated:{line:a.generatedLine,column:a.generatedColumn}};null!=a.source&&(d.source=a.source,null!=b&&(d.source=f.relative(b,d.source)),d.original={line:a.originalLine,column:a.originalColumn},null!=a.name&&(d.name=a.name)),c.addMapping(d)}),a.sources.forEach(function(b){var d=a.sourceContentFor(b);null!=d&&c.setSourceContent(b,d)}),c},d.prototype.addMapping=function(a){var b=f.getArg(a,"generated"),c=f.getArg(a,"original",null),d=f.getArg(a,"source",null),e=f.getArg(a,"name",null);this._skipValidation||this._validateMapping(b,c,d,e),null==d||this._sources.has(d)||this._sources.add(d),null==e||this._names.has(e)||this._names.add(e),this._mappings.add({generatedLine:b.line,generatedColumn:b.column,originalLine:null!=c&&c.line,originalColumn:null!=c&&c.column,source:d,name:e})},d.prototype.setSourceContent=function(a,b){var c=a;null!=this._sourceRoot&&(c=f.relative(this._sourceRoot,c)),null!=b?(this._sourcesContents||(this._sourcesContents={}),this._sourcesContents[f.toSetString(c)]=b):this._sourcesContents&&(delete this._sourcesContents[f.toSetString(c)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},d.prototype.applySourceMap=function(a,b,c){var d=b;if(null==b){if(null==a.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');d=a.file}var e=this._sourceRoot;null!=e&&(d=f.relative(e,d));var h=new g,i=new g;this._mappings.unsortedForEach(function(b){if(b.source===d&&null!=b.originalLine){var g=a.originalPositionFor({line:b.originalLine,column:b.originalColumn});null!=g.source&&(b.source=g.source,null!=c&&(b.source=f.join(c,b.source)),null!=e&&(b.source=f.relative(e,b.source)),b.originalLine=g.line,b.originalColumn=g.column,null!=g.name&&(b.name=g.name))}var j=b.source;null==j||h.has(j)||h.add(j);var k=b.name;null==k||i.has(k)||i.add(k)},this),this._sources=h,this._names=i,a.sources.forEach(function(b){var d=a.sourceContentFor(b);null!=d&&(null!=c&&(b=f.join(c,b)),null!=e&&(b=f.relative(e,b)),this.setSourceContent(b,d))},this)},d.prototype._validateMapping=function(a,b,c,d){if(!(a&&"line"in a&&"column"in a&&a.line>0&&a.column>=0&&!b&&!c&&!d||a&&"line"in a&&"column"in a&&b&&"line"in b&&"column"in b&&a.line>0&&a.column>=0&&b.line>0&&b.column>=0&&c))throw new Error("Invalid mapping: "+JSON.stringify({generated:a,source:c,original:b,name:d}))},d.prototype._serializeMappings=function(){for(var a,b=0,c=1,d=0,g=0,h=0,i=0,j="",k=this._mappings.toArray(),l=0,m=k.length;m>l;l++){if(a=k[l],a.generatedLine!==c)for(b=0;a.generatedLine!==c;)j+=";",c++;else if(l>0){if(!f.compareByGeneratedPositions(a,k[l-1]))continue;j+=","}j+=e.encode(a.generatedColumn-b),b=a.generatedColumn,null!=a.source&&(j+=e.encode(this._sources.indexOf(a.source)-i),i=this._sources.indexOf(a.source),j+=e.encode(a.originalLine-1-g),g=a.originalLine-1,j+=e.encode(a.originalColumn-d),d=a.originalColumn,null!=a.name&&(j+=e.encode(this._names.indexOf(a.name)-h),h=this._names.indexOf(a.name)))}return j},d.prototype._generateSourcesContent=function(a,b){return a.map(function(a){if(!this._sourcesContents)return null;null!=b&&(a=f.relative(b,a));var c=f.toSetString(a);return Object.prototype.hasOwnProperty.call(this._sourcesContents,c)?this._sourcesContents[c]:null},this)},d.prototype.toJSON=function(){var a={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(a.file=this._file),null!=this._sourceRoot&&(a.sourceRoot=this._sourceRoot),this._sourcesContents&&(a.sourcesContent=this._generateSourcesContent(a.sources,a.sourceRoot)),a},d.prototype.toString=function(){return JSON.stringify(this)},b.SourceMapGenerator=d})},{"./array-set":116,"./base64-vlq":117,"./mapping-list":122,"./util":126,amdefine:127}],125:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(a,b,c,d,e){this.children=[],this.sourceContents={},this.line=null==a?null:a,this.column=null==b?null:b,this.source=null==c?null:c,this.name=null==e?null:e,this[i]=!0,null!=d&&this.add(d)}var e=a("./source-map-generator").SourceMapGenerator,f=a("./util"),g=/(\r?\n)/,h=10,i="$$$isSourceNode$$$";d.fromStringWithSourceMap=function(a,b,c){function e(a,b){if(null===a||void 0===a.source)h.add(b);else{var e=c?f.join(c,a.source):a.source;h.add(new d(a.originalLine,a.originalColumn,e,b,a.name))}}var h=new d,i=a.split(g),j=function(){var a=i.shift(),b=i.shift()||"";return a+b},k=1,l=0,m=null;return b.eachMapping(function(a){if(null!==m){if(!(k0&&(m&&e(m,j()),h.add(i.join(""))),b.sources.forEach(function(a){var d=b.sourceContentFor(a);null!=d&&(null!=c&&(a=f.join(c,a)),h.setSourceContent(a,d))}),h},d.prototype.add=function(a){if(Array.isArray(a))a.forEach(function(a){this.add(a)},this);else{if(!a[i]&&"string"!=typeof a)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+a);a&&this.children.push(a)}return this},d.prototype.prepend=function(a){if(Array.isArray(a))for(var b=a.length-1;b>=0;b--)this.prepend(a[b]);else{if(!a[i]&&"string"!=typeof a)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+a);this.children.unshift(a)}return this},d.prototype.walk=function(a){for(var b,c=0,d=this.children.length;d>c;c++)b=this.children[c],b[i]?b.walk(a):""!==b&&a(b,{source:this.source,line:this.line,column:this.column,name:this.name})},d.prototype.join=function(a){var b,c,d=this.children.length;if(d>0){for(b=[],c=0;d-1>c;c++)b.push(this.children[c]),b.push(a);b.push(this.children[c]),this.children=b}return this},d.prototype.replaceRight=function(a,b){var c=this.children[this.children.length-1];return c[i]?c.replaceRight(a,b):"string"==typeof c?this.children[this.children.length-1]=c.replace(a,b):this.children.push("".replace(a,b)),this},d.prototype.setSourceContent=function(a,b){this.sourceContents[f.toSetString(a)]=b},d.prototype.walkSourceContents=function(a){for(var b=0,c=this.children.length;c>b;b++)this.children[b][i]&&this.children[b].walkSourceContents(a);for(var d=Object.keys(this.sourceContents),b=0,c=d.length;c>b;b++)a(f.fromSetString(d[b]),this.sourceContents[d[b]])},d.prototype.toString=function(){var a="";return this.walk(function(b){a+=b}),a},d.prototype.toStringWithSourceMap=function(a){var b={code:"",line:1,column:0},c=new e(a),d=!1,f=null,g=null,i=null,j=null;return this.walk(function(a,e){b.code+=a,null!==e.source&&null!==e.line&&null!==e.column?((f!==e.source||g!==e.line||i!==e.column||j!==e.name)&&c.addMapping({source:e.source,original:{line:e.line,column:e.column},generated:{line:b.line,column:b.column},name:e.name}),f=e.source,g=e.line,i=e.column,j=e.name,d=!0):d&&(c.addMapping({generated:{line:b.line,column:b.column}}),f=null,d=!1);for(var k=0,l=a.length;l>k;k++)a.charCodeAt(k)===h?(b.line++,b.column=0,k+1===l?(f=null,d=!1):d&&c.addMapping({source:e.source,original:{line:e.line,column:e.column},generated:{line:b.line,column:b.column},name:e.name})):b.column++}),this.walkSourceContents(function(a,b){c.setSourceContent(a,b)}),{code:b.code,map:c}},b.SourceNode=d})},{"./source-map-generator":124,"./util":126,amdefine:127}],126:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(a,b,c){if(b in a)return a[b];if(3===arguments.length)return c;throw new Error('"'+b+'" is a required argument.')}function e(a){var b=a.match(o);return b?{scheme:b[1],auth:b[2],host:b[3],port:b[4],path:b[5]}:null}function f(a){var b="";return a.scheme&&(b+=a.scheme+":"),b+="//",a.auth&&(b+=a.auth+"@"),a.host&&(b+=a.host),a.port&&(b+=":"+a.port),a.path&&(b+=a.path),b}function g(a){var b=a,c=e(a);if(c){if(!c.path)return a;b=c.path}for(var d,g="/"===b.charAt(0),h=b.split(/\/+/),i=0,j=h.length-1;j>=0;j--)d=h[j],"."===d?h.splice(j,1):".."===d?i++:i>0&&(""===d?(h.splice(j+1,i),i=0):(h.splice(j,2),i--));return b=h.join("/"),""===b&&(b=g?"/":"."),c?(c.path=b,f(c)):b}function h(a,b){""===a&&(a="."),""===b&&(b=".");var c=e(b),d=e(a);if(d&&(a=d.path||"/"),c&&!c.scheme)return d&&(c.scheme=d.scheme),f(c);if(c||b.match(p))return b;if(d&&!d.host&&!d.path)return d.host=b,f(d);var h="/"===b.charAt(0)?b:g(a.replace(/\/+$/,"")+"/"+b);return d?(d.path=h,f(d)):h}function i(a,b){""===a&&(a="."),a=a.replace(/\/$/,"");var c=e(a);return"/"==b.charAt(0)&&c&&"/"==c.path?b.slice(1):0===b.indexOf(a+"/")?b.substr(a.length+1):b}function j(a){return"$"+a}function k(a){return a.substr(1)}function l(a,b){var c=a||"",d=b||"";return(c>d)-(d>c)}function m(a,b,c){var d;return(d=l(a.source,b.source))?d:(d=a.originalLine-b.originalLine)?d:(d=a.originalColumn-b.originalColumn,d||c?d:(d=l(a.name,b.name))?d:(d=a.generatedLine-b.generatedLine,d?d:a.generatedColumn-b.generatedColumn))}function n(a,b,c){var d;return(d=a.generatedLine-b.generatedLine)?d:(d=a.generatedColumn-b.generatedColumn,d||c?d:(d=l(a.source,b.source))?d:(d=a.originalLine-b.originalLine)?d:(d=a.originalColumn-b.originalColumn,d?d:l(a.name,b.name)))}b.getArg=d;var o=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/,p=/^data:.+\,.+$/;b.urlParse=e,b.urlGenerate=f,b.normalize=g,b.join=h,b.relative=i,b.toSetString=j,b.fromSetString=k,b.compareByOriginalPositions=m,b.compareByGeneratedPositions=n})},{amdefine:127}],127:[function(a,b,c){(function(c,d){/** vim: et:ts=4:sw=4:sts=4 +this._array.forEach(a,b)},e.prototype.add=function(a){d(this._last,a)?(this._last=a,this._array.push(a)):(this._sorted=!1,this._array.push(a))},e.prototype.toArray=function(){return this._sorted||(this._array.sort(f.compareByGeneratedPositions),this._sorted=!0),this._array},b.MappingList=e})},{"./util":126,amdefine:127}],123:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(b){var c=b;if("string"==typeof b&&(c=JSON.parse(b.replace(/^\)\]\}'/,""))),null!=c.sections){var d=a("./indexed-source-map-consumer");return new d.IndexedSourceMapConsumer(c)}var e=a("./basic-source-map-consumer");return new e.BasicSourceMapConsumer(c)}var e=a("./util");d.fromSourceMap=function(b){var c=a("./basic-source-map-consumer");return c.BasicSourceMapConsumer.fromSourceMap(b)},d.prototype._version=3,d.prototype.__generatedMappings=null,Object.defineProperty(d.prototype,"_generatedMappings",{get:function(){return this.__generatedMappings||(this.__generatedMappings=[],this.__originalMappings=[],this._parseMappings(this._mappings,this.sourceRoot)),this.__generatedMappings}}),d.prototype.__originalMappings=null,Object.defineProperty(d.prototype,"_originalMappings",{get:function(){return this.__originalMappings||(this.__generatedMappings=[],this.__originalMappings=[],this._parseMappings(this._mappings,this.sourceRoot)),this.__originalMappings}}),d.prototype._nextCharIsMappingSeparator=function(a){var b=a.charAt(0);return";"===b||","===b},d.prototype._parseMappings=function(a,b){throw new Error("Subclasses must implement _parseMappings")},d.GENERATED_ORDER=1,d.ORIGINAL_ORDER=2,d.prototype.eachMapping=function(a,b,c){var f,g=b||null,h=c||d.GENERATED_ORDER;switch(h){case d.GENERATED_ORDER:f=this._generatedMappings;break;case d.ORIGINAL_ORDER:f=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var i=this.sourceRoot;f.map(function(a){var b=a.source;return null!=b&&null!=i&&(b=e.join(i,b)),{source:b,generatedLine:a.generatedLine,generatedColumn:a.generatedColumn,originalLine:a.originalLine,originalColumn:a.originalColumn,name:a.name}}).forEach(a,g)},d.prototype.allGeneratedPositionsFor=function(a){var b={source:e.getArg(a,"source"),originalLine:e.getArg(a,"line"),originalColumn:1/0};null!=this.sourceRoot&&(b.source=e.relative(this.sourceRoot,b.source));var c=[],d=this._findMapping(b,this._originalMappings,"originalLine","originalColumn",e.compareByOriginalPositions);if(d>=0)for(var f=this._originalMappings[d];f&&f.originalLine===b.originalLine;)c.push({line:e.getArg(f,"generatedLine",null),column:e.getArg(f,"generatedColumn",null),lastColumn:e.getArg(f,"lastGeneratedColumn",null)}),f=this._originalMappings[--d];return c.reverse()},b.SourceMapConsumer=d})},{"./basic-source-map-consumer":119,"./indexed-source-map-consumer":121,"./util":126,amdefine:127}],124:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(a){a||(a={}),this._file=f.getArg(a,"file",null),this._sourceRoot=f.getArg(a,"sourceRoot",null),this._skipValidation=f.getArg(a,"skipValidation",!1),this._sources=new g,this._names=new g,this._mappings=new h,this._sourcesContents=null}var e=a("./base64-vlq"),f=a("./util"),g=a("./array-set").ArraySet,h=a("./mapping-list").MappingList;d.prototype._version=3,d.fromSourceMap=function(a){var b=a.sourceRoot,c=new d({file:a.file,sourceRoot:b});return a.eachMapping(function(a){var d={generated:{line:a.generatedLine,column:a.generatedColumn}};null!=a.source&&(d.source=a.source,null!=b&&(d.source=f.relative(b,d.source)),d.original={line:a.originalLine,column:a.originalColumn},null!=a.name&&(d.name=a.name)),c.addMapping(d)}),a.sources.forEach(function(b){var d=a.sourceContentFor(b);null!=d&&c.setSourceContent(b,d)}),c},d.prototype.addMapping=function(a){var b=f.getArg(a,"generated"),c=f.getArg(a,"original",null),d=f.getArg(a,"source",null),e=f.getArg(a,"name",null);this._skipValidation||this._validateMapping(b,c,d,e),null==d||this._sources.has(d)||this._sources.add(d),null==e||this._names.has(e)||this._names.add(e),this._mappings.add({generatedLine:b.line,generatedColumn:b.column,originalLine:null!=c&&c.line,originalColumn:null!=c&&c.column,source:d,name:e})},d.prototype.setSourceContent=function(a,b){var c=a;null!=this._sourceRoot&&(c=f.relative(this._sourceRoot,c)),null!=b?(this._sourcesContents||(this._sourcesContents={}),this._sourcesContents[f.toSetString(c)]=b):this._sourcesContents&&(delete this._sourcesContents[f.toSetString(c)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},d.prototype.applySourceMap=function(a,b,c){var d=b;if(null==b){if(null==a.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');d=a.file}var e=this._sourceRoot;null!=e&&(d=f.relative(e,d));var h=new g,i=new g;this._mappings.unsortedForEach(function(b){if(b.source===d&&null!=b.originalLine){var g=a.originalPositionFor({line:b.originalLine,column:b.originalColumn});null!=g.source&&(b.source=g.source,null!=c&&(b.source=f.join(c,b.source)),null!=e&&(b.source=f.relative(e,b.source)),b.originalLine=g.line,b.originalColumn=g.column,null!=g.name&&(b.name=g.name))}var j=b.source;null==j||h.has(j)||h.add(j);var k=b.name;null==k||i.has(k)||i.add(k)},this),this._sources=h,this._names=i,a.sources.forEach(function(b){var d=a.sourceContentFor(b);null!=d&&(null!=c&&(b=f.join(c,b)),null!=e&&(b=f.relative(e,b)),this.setSourceContent(b,d))},this)},d.prototype._validateMapping=function(a,b,c,d){if((!(a&&"line"in a&&"column"in a&&a.line>0&&a.column>=0)||b||c||d)&&!(a&&"line"in a&&"column"in a&&b&&"line"in b&&"column"in b&&a.line>0&&a.column>=0&&b.line>0&&b.column>=0&&c))throw new Error("Invalid mapping: "+JSON.stringify({generated:a,source:c,original:b,name:d}))},d.prototype._serializeMappings=function(){for(var a,b=0,c=1,d=0,g=0,h=0,i=0,j="",k=this._mappings.toArray(),l=0,m=k.length;m>l;l++){if(a=k[l],a.generatedLine!==c)for(b=0;a.generatedLine!==c;)j+=";",c++;else if(l>0){if(!f.compareByGeneratedPositions(a,k[l-1]))continue;j+=","}j+=e.encode(a.generatedColumn-b),b=a.generatedColumn,null!=a.source&&(j+=e.encode(this._sources.indexOf(a.source)-i),i=this._sources.indexOf(a.source),j+=e.encode(a.originalLine-1-g),g=a.originalLine-1,j+=e.encode(a.originalColumn-d),d=a.originalColumn,null!=a.name&&(j+=e.encode(this._names.indexOf(a.name)-h),h=this._names.indexOf(a.name)))}return j},d.prototype._generateSourcesContent=function(a,b){return a.map(function(a){if(!this._sourcesContents)return null;null!=b&&(a=f.relative(b,a));var c=f.toSetString(a);return Object.prototype.hasOwnProperty.call(this._sourcesContents,c)?this._sourcesContents[c]:null},this)},d.prototype.toJSON=function(){var a={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(a.file=this._file),null!=this._sourceRoot&&(a.sourceRoot=this._sourceRoot),this._sourcesContents&&(a.sourcesContent=this._generateSourcesContent(a.sources,a.sourceRoot)),a},d.prototype.toString=function(){return JSON.stringify(this)},b.SourceMapGenerator=d})},{"./array-set":116,"./base64-vlq":117,"./mapping-list":122,"./util":126,amdefine:127}],125:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(a,b,c,d,e){this.children=[],this.sourceContents={},this.line=null==a?null:a,this.column=null==b?null:b,this.source=null==c?null:c,this.name=null==e?null:e,this[i]=!0,null!=d&&this.add(d)}var e=a("./source-map-generator").SourceMapGenerator,f=a("./util"),g=/(\r?\n)/,h=10,i="$$$isSourceNode$$$";d.fromStringWithSourceMap=function(a,b,c){function e(a,b){if(null===a||void 0===a.source)h.add(b);else{var e=c?f.join(c,a.source):a.source;h.add(new d(a.originalLine,a.originalColumn,e,b,a.name))}}var h=new d,i=a.split(g),j=function(){var a=i.shift(),b=i.shift()||"";return a+b},k=1,l=0,m=null;return b.eachMapping(function(a){if(null!==m){if(!(k0&&(m&&e(m,j()),h.add(i.join(""))),b.sources.forEach(function(a){var d=b.sourceContentFor(a);null!=d&&(null!=c&&(a=f.join(c,a)),h.setSourceContent(a,d))}),h},d.prototype.add=function(a){if(Array.isArray(a))a.forEach(function(a){this.add(a)},this);else{if(!a[i]&&"string"!=typeof a)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+a);a&&this.children.push(a)}return this},d.prototype.prepend=function(a){if(Array.isArray(a))for(var b=a.length-1;b>=0;b--)this.prepend(a[b]);else{if(!a[i]&&"string"!=typeof a)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+a);this.children.unshift(a)}return this},d.prototype.walk=function(a){for(var b,c=0,d=this.children.length;d>c;c++)b=this.children[c],b[i]?b.walk(a):""!==b&&a(b,{source:this.source,line:this.line,column:this.column,name:this.name})},d.prototype.join=function(a){var b,c,d=this.children.length;if(d>0){for(b=[],c=0;d-1>c;c++)b.push(this.children[c]),b.push(a);b.push(this.children[c]),this.children=b}return this},d.prototype.replaceRight=function(a,b){var c=this.children[this.children.length-1];return c[i]?c.replaceRight(a,b):"string"==typeof c?this.children[this.children.length-1]=c.replace(a,b):this.children.push("".replace(a,b)),this},d.prototype.setSourceContent=function(a,b){this.sourceContents[f.toSetString(a)]=b},d.prototype.walkSourceContents=function(a){for(var b=0,c=this.children.length;c>b;b++)this.children[b][i]&&this.children[b].walkSourceContents(a);for(var d=Object.keys(this.sourceContents),b=0,c=d.length;c>b;b++)a(f.fromSetString(d[b]),this.sourceContents[d[b]])},d.prototype.toString=function(){var a="";return this.walk(function(b){a+=b}),a},d.prototype.toStringWithSourceMap=function(a){var b={code:"",line:1,column:0},c=new e(a),d=!1,f=null,g=null,i=null,j=null;return this.walk(function(a,e){b.code+=a,null!==e.source&&null!==e.line&&null!==e.column?((f!==e.source||g!==e.line||i!==e.column||j!==e.name)&&c.addMapping({source:e.source,original:{line:e.line,column:e.column},generated:{line:b.line,column:b.column},name:e.name}),f=e.source,g=e.line,i=e.column,j=e.name,d=!0):d&&(c.addMapping({generated:{line:b.line,column:b.column}}),f=null,d=!1);for(var k=0,l=a.length;l>k;k++)a.charCodeAt(k)===h?(b.line++,b.column=0,k+1===l?(f=null,d=!1):d&&c.addMapping({source:e.source,original:{line:e.line,column:e.column},generated:{line:b.line,column:b.column},name:e.name})):b.column++}),this.walkSourceContents(function(a,b){c.setSourceContent(a,b)}),{code:b.code,map:c}},b.SourceNode=d})},{"./source-map-generator":124,"./util":126,amdefine:127}],126:[function(a,b,c){if("function"!=typeof d)var d=a("amdefine")(b,a);d(function(a,b,c){function d(a,b,c){if(b in a)return a[b];if(3===arguments.length)return c;throw new Error('"'+b+'" is a required argument.')}function e(a){var b=a.match(o);return b?{scheme:b[1],auth:b[2],host:b[3],port:b[4],path:b[5]}:null}function f(a){var b="";return a.scheme&&(b+=a.scheme+":"),b+="//",a.auth&&(b+=a.auth+"@"),a.host&&(b+=a.host),a.port&&(b+=":"+a.port),a.path&&(b+=a.path),b}function g(a){var b=a,c=e(a);if(c){if(!c.path)return a;b=c.path}for(var d,g="/"===b.charAt(0),h=b.split(/\/+/),i=0,j=h.length-1;j>=0;j--)d=h[j],"."===d?h.splice(j,1):".."===d?i++:i>0&&(""===d?(h.splice(j+1,i),i=0):(h.splice(j,2),i--));return b=h.join("/"),""===b&&(b=g?"/":"."),c?(c.path=b,f(c)):b}function h(a,b){""===a&&(a="."),""===b&&(b=".");var c=e(b),d=e(a);if(d&&(a=d.path||"/"),c&&!c.scheme)return d&&(c.scheme=d.scheme),f(c);if(c||b.match(p))return b;if(d&&!d.host&&!d.path)return d.host=b,f(d);var h="/"===b.charAt(0)?b:g(a.replace(/\/+$/,"")+"/"+b);return d?(d.path=h,f(d)):h}function i(a,b){""===a&&(a="."),a=a.replace(/\/$/,"");var c=e(a);return"/"==b.charAt(0)&&c&&"/"==c.path?b.slice(1):0===b.indexOf(a+"/")?b.substr(a.length+1):b}function j(a){return"$"+a}function k(a){return a.substr(1)}function l(a,b){var c=a||"",d=b||"";return(c>d)-(d>c)}function m(a,b,c){var d;return(d=l(a.source,b.source))?d:(d=a.originalLine-b.originalLine)?d:(d=a.originalColumn-b.originalColumn,d||c?d:(d=l(a.name,b.name))?d:(d=a.generatedLine-b.generatedLine,d?d:a.generatedColumn-b.generatedColumn))}function n(a,b,c){var d;return(d=a.generatedLine-b.generatedLine)?d:(d=a.generatedColumn-b.generatedColumn,d||c?d:(d=l(a.source,b.source))?d:(d=a.originalLine-b.originalLine)?d:(d=a.originalColumn-b.originalColumn,d?d:l(a.name,b.name)))}b.getArg=d;var o=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/,p=/^data:.+\,.+$/;b.urlParse=e,b.urlGenerate=f,b.normalize=g,b.join=h,b.relative=i,b.toSetString=j,b.fromSetString=k,b.compareByOriginalPositions=m,b.compareByGeneratedPositions=n})},{amdefine:127}],127:[function(a,b,c){(function(c,d){/** vim: et:ts=4:sw=4:sts=4 * @license amdefine 0.1.0 Copyright (c) 2011, The Dojo Foundation All Rights Reserved. * Available via the MIT or new BSD license. * see: http://github.com/jrburke/amdefine for details @@ -59,25 +59,25 @@ https://github.com/nodeca/pako/blob/master/LICENSE */ !function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;"undefined"!=typeof window?b=window:"undefined"!=typeof global?b=global:"undefined"!=typeof self&&(b=self),b.JSZip=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);throw new Error("Cannot find module '"+g+"'")}var j=c[g]={exports:{}};b[g][0].call(j.exports,function(a){var c=b[g][1][a];return e(c?c:a)},j,j.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g>2,g=(3&b)<<4|c>>4,h=(15&c)<<2|e>>6,i=63&e,isNaN(c)?h=i=64:isNaN(e)&&(i=64),j=j+d.charAt(f)+d.charAt(g)+d.charAt(h)+d.charAt(i);return j},c.decode=function(a){var b,c,e,f,g,h,i,j="",k=0;for(a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");k>4,c=(15&g)<<4|h>>2,e=(3&h)<<6|i,j+=String.fromCharCode(b),64!=h&&(j+=String.fromCharCode(c)),64!=i&&(j+=String.fromCharCode(e));return j}},{}],2:[function(a,b){"use strict";function c(){this.compressedSize=0,this.uncompressedSize=0,this.crc32=0,this.compressionMethod=null,this.compressedContent=null}c.prototype={getContent:function(){return null},getCompressedContent:function(){return null}},b.exports=c},{}],3:[function(a,b,c){"use strict";c.STORE={magic:"\x00\x00",compress:function(a){return a},uncompress:function(a){return a},compressInputType:null,uncompressInputType:null},c.DEFLATE=a("./flate")},{"./flate":8}],4:[function(a,b){"use strict";var c=a("./utils"),d=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];b.exports=function(a,b){if("undefined"==typeof a||!a.length)return 0;var e="string"!==c.getTypeOf(a);"undefined"==typeof b&&(b=0);var f=0,g=0,h=0;b=-1^b;for(var i=0,j=a.length;j>i;i++)h=e?a[i]:a.charCodeAt(i),g=255&(b^h),f=d[g],b=b>>>8^f;return-1^b}},{"./utils":21}],5:[function(a,b){"use strict";function c(){this.data=null,this.length=0,this.index=0}var d=a("./utils");c.prototype={checkOffset:function(a){this.checkIndex(this.index+a)},checkIndex:function(a){if(this.lengtha)throw new Error("End of data reached (data length = "+this.length+", asked index = "+a+"). Corrupted zip ?")},setIndex:function(a){this.checkIndex(a),this.index=a},skip:function(a){this.setIndex(this.index+a)},byteAt:function(){},readInt:function(a){var b,c=0;for(this.checkOffset(a),b=this.index+a-1;b>=this.index;b--)c=(c<<8)+this.byteAt(b);return this.index+=a,c},readString:function(a){return d.transformTo("string",this.readData(a))},readData:function(){},lastIndexOfSignature:function(){},readDate:function(){var a=this.readInt(4);return new Date((a>>25&127)+1980,(a>>21&15)-1,a>>16&31,a>>11&31,a>>5&63,(31&a)<<1)}},b.exports=c},{"./utils":21}],6:[function(a,b,c){"use strict";c.base64=!1,c.binary=!1,c.dir=!1,c.createFolders=!1,c.date=null,c.compression=null,c.compressionOptions=null,c.comment=null,c.unixPermissions=null,c.dosPermissions=null},{}],7:[function(a,b,c){"use strict";var d=a("./utils");c.string2binary=function(a){return d.string2binary(a)},c.string2Uint8Array=function(a){return d.transformTo("uint8array",a)},c.uint8Array2String=function(a){return d.transformTo("string",a)},c.string2Blob=function(a){var b=d.transformTo("arraybuffer",a);return d.arrayBuffer2Blob(b)},c.arrayBuffer2Blob=function(a){return d.arrayBuffer2Blob(a)},c.transformTo=function(a,b){return d.transformTo(a,b)},c.getTypeOf=function(a){return d.getTypeOf(a)},c.checkSupport=function(a){return d.checkSupport(a)},c.MAX_VALUE_16BITS=d.MAX_VALUE_16BITS,c.MAX_VALUE_32BITS=d.MAX_VALUE_32BITS,c.pretty=function(a){return d.pretty(a)},c.findCompression=function(a){return d.findCompression(a)},c.isRegExp=function(a){return d.isRegExp(a)}},{"./utils":21}],8:[function(a,b,c){"use strict";var d="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,e=a("pako");c.uncompressInputType=d?"uint8array":"array",c.compressInputType=d?"uint8array":"array",c.magic="\b\x00",c.compress=function(a,b){return e.deflateRaw(a,{level:b.level||-1})},c.uncompress=function(a){return e.inflateRaw(a)}},{pako:24}],9:[function(a,b){"use strict";function c(a,b){return this instanceof c?(this.files={},this.comment=null,this.root="",a&&this.load(a,b),void(this.clone=function(){var a=new c;for(var b in this)"function"!=typeof this[b]&&(a[b]=this[b]);return a})):new c(a,b)}var d=a("./base64");c.prototype=a("./object"),c.prototype.load=a("./load"),c.support=a("./support"),c.defaults=a("./defaults"),c.utils=a("./deprecatedPublicUtils"),c.base64={encode:function(a){return d.encode(a)},decode:function(a){return d.decode(a)}},c.compressions=a("./compressions"),b.exports=c},{"./base64":1,"./compressions":3,"./defaults":6,"./deprecatedPublicUtils":7,"./load":10,"./object":13,"./support":17}],10:[function(a,b){"use strict";var c=a("./base64"),d=a("./zipEntries");b.exports=function(a,b){var e,f,g,h;for(b=b||{},b.base64&&(a=c.decode(a)),f=new d(a,b),e=f.files,g=0;gc;c++)d+=String.fromCharCode(255&a),a>>>=8;return d},t=function(){var a,b,c={};for(a=0;a0?a.substring(0,b):""},x=function(a){return"/"!=a.slice(-1)&&(a+="/"),a},y=function(a,b){return b="undefined"!=typeof b?b:!1,a=x(a),this.files[a]||v.call(this,a,null,{dir:!0,createFolders:b}),this.files[a]},z=function(a,b,c){var f,g=new j;return a._data instanceof j?(g.uncompressedSize=a._data.uncompressedSize,g.crc32=a._data.crc32,0===g.uncompressedSize||a.dir?(b=i.STORE,g.compressedContent="",g.crc32=0):a._data.compressionMethod===b.magic?g.compressedContent=a._data.getCompressedContent():(f=a._data.getContent(),g.compressedContent=b.compress(d.transformTo(b.compressInputType,f),c))):(f=p(a),(!f||0===f.length||a.dir)&&(b=i.STORE,f=""),g.uncompressedSize=f.length,g.crc32=e(f),g.compressedContent=b.compress(d.transformTo(b.compressInputType,f),c)),g.compressedSize=g.compressedContent.length,g.compressionMethod=b.magic,g},A=function(a,b){var c=a;return a||(c=b?16893:33204),(65535&c)<<16},B=function(a){return 63&(a||0)},C=function(a,b,c,g,h){var i,j,k,m,n=(c.compressedContent,d.transformTo("string",l.utf8encode(b.name))),o=b.comment||"",p=d.transformTo("string",l.utf8encode(o)),q=n.length!==b.name.length,r=p.length!==o.length,t=b.options,u="",v="",w="";k=b._initialMetadata.dir!==b.dir?b.dir:t.dir,m=b._initialMetadata.date!==b.date?b.date:t.date;var x=0,y=0;k&&(x|=16),"UNIX"===h?(y=798,x|=A(b.unixPermissions,k)):(y=20,x|=B(b.dosPermissions,k)),i=m.getHours(),i<<=6,i|=m.getMinutes(),i<<=5,i|=m.getSeconds()/2,j=m.getFullYear()-1980,j<<=4,j|=m.getMonth()+1,j<<=5,j|=m.getDate(),q&&(v=s(1,1)+s(e(n),4)+n,u+="up"+s(v.length,2)+v),r&&(w=s(1,1)+s(this.crc32(p),4)+p,u+="uc"+s(w.length,2)+w);var z="";z+="\n\x00",z+=q||r?"\x00\b":"\x00\x00",z+=c.compressionMethod,z+=s(i,2),z+=s(j,2),z+=s(c.crc32,4),z+=s(c.compressedSize,4),z+=s(c.uncompressedSize,4),z+=s(n.length,2),z+=s(u.length,2);var C=f.LOCAL_FILE_HEADER+z+n+u,D=f.CENTRAL_FILE_HEADER+s(y,2)+z+s(p.length,2)+"\x00\x00\x00\x00"+s(x,4)+s(g,4)+n+u+p;return{fileRecord:C,dirRecord:D,compressedObject:c}},D={load:function(){throw new Error("Load method is not defined. Is the file jszip-load.js included ?")},filter:function(a){var b,c,d,e,f=[];for(b in this.files)this.files.hasOwnProperty(b)&&(d=this.files[b],e=new r(d.name,d._data,t(d.options)),c=b.slice(this.root.length,b.length),b.slice(0,this.root.length)===this.root&&a(c,e)&&f.push(e));return f},file:function(a,b,c){if(1===arguments.length){if(d.isRegExp(a)){var e=a;return this.filter(function(a,b){return!b.dir&&e.test(a)})}return this.filter(function(b,c){return!c.dir&&b===a})[0]||null}return a=this.root+a,v.call(this,a,b,c),this},folder:function(a){if(!a)return this;if(d.isRegExp(a))return this.filter(function(b,c){return c.dir&&a.test(b)});var b=this.root+a,c=y.call(this,b),e=this.clone();return e.root=c.name,e},remove:function(a){a=this.root+a;var b=this.files[a];if(b||("/"!=a.slice(-1)&&(a+="/"),b=this.files[a]),b&&!b.dir)delete this.files[a];else for(var c=this.filter(function(b,c){return c.name.slice(0,a.length)===a}),d=0;d=0;--f)if(this.data[f]===b&&this.data[f+1]===c&&this.data[f+2]===d&&this.data[f+3]===e)return f;return-1},c.prototype.readData=function(a){if(this.checkOffset(a),0===a)return new Uint8Array(0);var b=this.data.subarray(this.index,this.index+a);return this.index+=a,b},b.exports=c},{"./dataReader":5}],19:[function(a,b){"use strict";var c=a("./utils"),d=function(a){this.data=new Uint8Array(a),this.index=0};d.prototype={append:function(a){0!==a.length&&(a=c.transformTo("uint8array",a),this.data.set(a,this.index),this.index+=a.length)},finalize:function(){return this.data}},b.exports=d},{"./utils":21}],20:[function(a,b,c){"use strict";for(var d=a("./utils"),e=a("./support"),f=a("./nodeBuffer"),g=new Array(256),h=0;256>h;h++)g[h]=h>=252?6:h>=248?5:h>=240?4:h>=224?3:h>=192?2:1;g[254]=g[254]=1;var i=function(a){var b,c,d,f,g,h=a.length,i=0;for(f=0;h>f;f++)c=a.charCodeAt(f),55296===(64512&c)&&h>f+1&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),i+=128>c?1:2048>c?2:65536>c?3:4;for(b=e.uint8array?new Uint8Array(i):new Array(i),g=0,f=0;i>g;f++)c=a.charCodeAt(f),55296===(64512&c)&&h>f+1&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),128>c?b[g++]=c:2048>c?(b[g++]=192|c>>>6,b[g++]=128|63&c):65536>c?(b[g++]=224|c>>>12,b[g++]=128|c>>>6&63,b[g++]=128|63&c):(b[g++]=240|c>>>18,b[g++]=128|c>>>12&63,b[g++]=128|c>>>6&63,b[g++]=128|63&c);return b},j=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return 0>c?b:0===c?b:c+g[a[c]]>b?c:b},k=function(a){var b,c,e,f,h=a.length,i=new Array(2*h);for(c=0,b=0;h>b;)if(e=a[b++],128>e)i[c++]=e;else if(f=g[e],f>4)i[c++]=65533,b+=f-1;else{for(e&=2===f?31:3===f?15:7;f>1&&h>b;)e=e<<6|63&a[b++],f--;f>1?i[c++]=65533:65536>e?i[c++]=e:(e-=65536,i[c++]=55296|e>>10&1023,i[c++]=56320|1023&e)}return i.length!==c&&(i.subarray?i=i.subarray(0,c):i.length=c),d.applyFromCharCode(i)};c.utf8encode=function(a){return e.nodebuffer?f(a,"utf-8"):i(a)},c.utf8decode=function(a){if(e.nodebuffer)return d.transformTo("nodebuffer",a).toString("utf-8");a=d.transformTo(e.uint8array?"uint8array":"array",a);for(var b=[],c=0,f=a.length,g=65536;f>c;){var h=j(a,Math.min(c+g,f));b.push(k(e.uint8array?a.subarray(c,h):a.slice(c,h))),c=h}return b.join("")}},{"./nodeBuffer":11,"./support":17,"./utils":21}],21:[function(a,b,c){"use strict";function d(a){return a}function e(a,b){for(var c=0;cg&&b>1;)try{d.push("array"===f||"nodebuffer"===f?String.fromCharCode.apply(null,a.slice(g,Math.min(g+b,e))):String.fromCharCode.apply(null,a.subarray(g,Math.min(g+b,e)))),g+=b}catch(i){b=Math.floor(b/2)}return d.join("")}function g(a,b){for(var c=0;cb?"0":"")+b.toString(16).toUpperCase();return d},c.findCompression=function(a){for(var b in i)if(i.hasOwnProperty(b)&&i[b].magic===a)return i[b];return null},c.isRegExp=function(a){return"[object RegExp]"===Object.prototype.toString.call(a)}},{"./compressions":3,"./nodeBuffer":11,"./support":17}],22:[function(a,b){"use strict";function c(a,b){this.files=[],this.loadOptions=b,a&&this.load(a)}var d=a("./stringReader"),e=a("./nodeBufferReader"),f=a("./uint8ArrayReader"),g=a("./utils"),h=a("./signature"),i=a("./zipEntry"),j=a("./support"),k=a("./object");c.prototype={checkSignature:function(a){var b=this.reader.readString(4);if(b!==a)throw new Error("Corrupted zip or bug : unexpected signature ("+g.pretty(b)+", expected "+g.pretty(a)+")")},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2),this.zipComment=this.reader.readString(this.zipCommentLength),this.zipComment=k.utf8decode(this.zipComment)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.versionMadeBy=this.reader.readString(2),this.versionNeeded=this.reader.readInt(2),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var a,b,c,d=this.zip64EndOfCentralSize-44,e=0;d>e;)a=this.reader.readInt(2),b=this.reader.readInt(4),c=this.reader.readString(b),this.zip64ExtensibleData[a]={id:a,length:b,value:c}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var a,b;for(a=0;a>8;this.dir=16&this.externalFileAttributes?!0:!1,a===h&&(this.dosPermissions=63&this.externalFileAttributes),a===i&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileName.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var a=new d(this.extraFields[1].value);this.uncompressedSize===e.MAX_VALUE_32BITS&&(this.uncompressedSize=a.readInt(8)),this.compressedSize===e.MAX_VALUE_32BITS&&(this.compressedSize=a.readInt(8)),this.localHeaderOffset===e.MAX_VALUE_32BITS&&(this.localHeaderOffset=a.readInt(8)),this.diskNumberStart===e.MAX_VALUE_32BITS&&(this.diskNumberStart=a.readInt(4))}},readExtraFields:function(a){var b,c,d,e=a.index;for(this.extraFields=this.extraFields||{};a.index0?b.windowBits=-b.windowBits:b.gzip&&b.windowBits>0&&b.windowBits<16&&(b.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new k,this.strm.avail_out=0;var c=g.deflateInit2(this.strm,b.level,b.method,b.windowBits,b.memLevel,b.strategy);if(c!==n)throw new Error(j[c]);b.header&&g.deflateSetHeader(this.strm,b.header)};s.prototype.push=function(a,b){var c,d,e=this.strm,f=this.options.chunkSize;if(this.ended)return!1;d=b===~~b?b:b===!0?m:l,e.input="string"==typeof a?i.string2buf(a):a,e.next_in=0,e.avail_in=e.input.length;do{if(0===e.avail_out&&(e.output=new h.Buf8(f),e.next_out=0,e.avail_out=f),c=g.deflate(e,d),c!==o&&c!==n)return this.onEnd(c),this.ended=!0,!1;(0===e.avail_out||0===e.avail_in&&d===m)&&this.onData("string"===this.options.to?i.buf2binstring(h.shrinkBuf(e.output,e.next_out)):h.shrinkBuf(e.output,e.next_out))}while((e.avail_in>0||0===e.avail_out)&&c!==o);return d===m?(c=g.deflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===n):!0},s.prototype.onData=function(a){this.chunks.push(a)},s.prototype.onEnd=function(a){a===n&&(this.result="string"===this.options.to?this.chunks.join(""):h.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Deflate=s,c.deflate=d,c.deflateRaw=e,c.gzip=f},{"./utils/common":27,"./utils/strings":28,"./zlib/deflate.js":32,"./zlib/messages":37,"./zlib/zstream":39}],26:[function(a,b,c){"use strict";function d(a,b){var c=new m(b);if(c.push(a,!0),c.err)throw c.msg;return c.result}function e(a,b){return b=b||{},b.raw=!0,d(a,b)}var f=a("./zlib/inflate.js"),g=a("./utils/common"),h=a("./utils/strings"),i=a("./zlib/constants"),j=a("./zlib/messages"),k=a("./zlib/zstream"),l=a("./zlib/gzheader"),m=function(a){this.options=g.assign({chunkSize:16384,windowBits:0,to:""},a||{});var b=this.options;b.raw&&b.windowBits>=0&&b.windowBits<16&&(b.windowBits=-b.windowBits,0===b.windowBits&&(b.windowBits=-15)),!(b.windowBits>=0&&b.windowBits<16)||a&&a.windowBits||(b.windowBits+=32),b.windowBits>15&&b.windowBits<48&&0===(15&b.windowBits)&&(b.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new k,this.strm.avail_out=0;var c=f.inflateInit2(this.strm,b.windowBits);if(c!==i.Z_OK)throw new Error(j[c]);this.header=new l,f.inflateGetHeader(this.strm,this.header)};m.prototype.push=function(a,b){var c,d,e,j,k,l=this.strm,m=this.options.chunkSize;if(this.ended)return!1;d=b===~~b?b:b===!0?i.Z_FINISH:i.Z_NO_FLUSH,l.input="string"==typeof a?h.binstring2buf(a):a,l.next_in=0,l.avail_in=l.input.length;do{if(0===l.avail_out&&(l.output=new g.Buf8(m),l.next_out=0,l.avail_out=m),c=f.inflate(l,i.Z_NO_FLUSH),c!==i.Z_STREAM_END&&c!==i.Z_OK)return this.onEnd(c),this.ended=!0,!1;l.next_out&&(0===l.avail_out||c===i.Z_STREAM_END||0===l.avail_in&&d===i.Z_FINISH)&&("string"===this.options.to?(e=h.utf8border(l.output,l.next_out),j=l.next_out-e,k=h.buf2string(l.output,e),l.next_out=j,l.avail_out=m-j,j&&g.arraySet(l.output,l.output,e,j,0),this.onData(k)):this.onData(g.shrinkBuf(l.output,l.next_out)))}while(l.avail_in>0&&c!==i.Z_STREAM_END);return c===i.Z_STREAM_END&&(d=i.Z_FINISH),d===i.Z_FINISH?(c=f.inflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===i.Z_OK):!0},m.prototype.onData=function(a){this.chunks.push(a)},m.prototype.onEnd=function(a){a===i.Z_OK&&(this.result="string"===this.options.to?this.chunks.join(""):g.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Inflate=m,c.inflate=d,c.inflateRaw=e,c.ungzip=d},{"./utils/common":27,"./utils/strings":28,"./zlib/constants":30,"./zlib/gzheader":33,"./zlib/inflate.js":35,"./zlib/messages":37,"./zlib/zstream":39}],27:[function(a,b,c){"use strict";var d="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;c.assign=function(a){for(var b=Array.prototype.slice.call(arguments,1);b.length;){var c=b.shift();if(c){if("object"!=typeof c)throw new TypeError(c+"must be non-object");for(var d in c)c.hasOwnProperty(d)&&(a[d]=c[d])}}return a},c.shrinkBuf=function(a,b){return a.length===b?a:a.subarray?a.subarray(0,b):(a.length=b,a)};var e={arraySet:function(a,b,c,d,e){if(b.subarray&&a.subarray)return void a.set(b.subarray(c,c+d),e);for(var f=0;d>f;f++)a[e+f]=b[c+f]},flattenChunks:function(a){var b,c,d,e,f,g;for(d=0,b=0,c=a.length;c>b;b++)d+=a[b].length;for(g=new Uint8Array(d),e=0,b=0,c=a.length;c>b;b++)f=a[b],g.set(f,e),e+=f.length;return g}},f={arraySet:function(a,b,c,d,e){for(var f=0;d>f;f++)a[e+f]=b[c+f]},flattenChunks:function(a){return[].concat.apply([],a)}};c.setTyped=function(a){a?(c.Buf8=Uint8Array,c.Buf16=Uint16Array,c.Buf32=Int32Array,c.assign(c,e)):(c.Buf8=Array,c.Buf16=Array,c.Buf32=Array,c.assign(c,f))},c.setTyped(d)},{}],28:[function(a,b,c){"use strict";function d(a,b){if(65537>b&&(a.subarray&&g||!a.subarray&&f))return String.fromCharCode.apply(null,e.shrinkBuf(a,b));for(var c="",d=0;b>d;d++)c+=String.fromCharCode(a[d]);return c}var e=a("./common"),f=!0,g=!0;try{String.fromCharCode.apply(null,[0])}catch(h){f=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(h){g=!1}for(var i=new e.Buf8(256),j=0;256>j;j++)i[j]=j>=252?6:j>=248?5:j>=240?4:j>=224?3:j>=192?2:1;i[254]=i[254]=1,c.string2buf=function(a){var b,c,d,f,g,h=a.length,i=0;for(f=0;h>f;f++)c=a.charCodeAt(f),55296===(64512&c)&&h>f+1&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),i+=128>c?1:2048>c?2:65536>c?3:4;for(b=new e.Buf8(i),g=0,f=0;i>g;f++)c=a.charCodeAt(f),55296===(64512&c)&&h>f+1&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),128>c?b[g++]=c:2048>c?(b[g++]=192|c>>>6,b[g++]=128|63&c):65536>c?(b[g++]=224|c>>>12,b[g++]=128|c>>>6&63,b[g++]=128|63&c):(b[g++]=240|c>>>18,b[g++]=128|c>>>12&63,b[g++]=128|c>>>6&63,b[g++]=128|63&c);return b},c.buf2binstring=function(a){return d(a,a.length)},c.binstring2buf=function(a){for(var b=new e.Buf8(a.length),c=0,d=b.length;d>c;c++)b[c]=a.charCodeAt(c);return b},c.buf2string=function(a,b){var c,e,f,g,h=b||a.length,j=new Array(2*h);for(e=0,c=0;h>c;)if(f=a[c++],128>f)j[e++]=f;else if(g=i[f],g>4)j[e++]=65533,c+=g-1;else{for(f&=2===g?31:3===g?15:7;g>1&&h>c;)f=f<<6|63&a[c++],g--;g>1?j[e++]=65533:65536>f?j[e++]=f:(f-=65536,j[e++]=55296|f>>10&1023,j[e++]=56320|1023&f)}return d(j,e)},c.utf8border=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return 0>c?b:0===c?b:c+i[a[c]]>b?c:b}},{"./common":27}],29:[function(a,b){"use strict";function c(a,b,c,d){for(var e=65535&a|0,f=a>>>16&65535|0,g=0;0!==c;){g=c>2e3?2e3:c,c-=g;do e=e+b[d++]|0,f=f+e|0;while(--g);e%=65521,f%=65521}return e|f<<16|0}b.exports=c},{}],30:[function(a,b){b.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],31:[function(a,b){"use strict";function c(){for(var a,b=[],c=0;256>c;c++){a=c;for(var d=0;8>d;d++)a=1&a?3988292384^a>>>1:a>>>1;b[c]=a}return b}function d(a,b,c,d){var f=e,g=d+c;a=-1^a;for(var h=d;g>h;h++)a=a>>>8^f[255&(a^b[h])];return-1^a}var e=c();b.exports=d},{}],32:[function(a,b,c){"use strict";function d(a,b){return a.msg=G[b],b}function e(a){return(a<<1)-(a>4?9:0)}function f(a){for(var b=a.length;--b>=0;)a[b]=0}function g(a){var b=a.state,c=b.pending;c>a.avail_out&&(c=a.avail_out),0!==c&&(C.arraySet(a.output,b.pending_buf,b.pending_out,c,a.next_out),a.next_out+=c,b.pending_out+=c,a.total_out+=c,a.avail_out-=c,b.pending-=c,0===b.pending&&(b.pending_out=0))}function h(a,b){D._tr_flush_block(a,a.block_start>=0?a.block_start:-1,a.strstart-a.block_start,b),a.block_start=a.strstart,g(a.strm)}function i(a,b){a.pending_buf[a.pending++]=b}function j(a,b){a.pending_buf[a.pending++]=b>>>8&255,a.pending_buf[a.pending++]=255&b}function k(a,b,c,d){var e=a.avail_in;return e>d&&(e=d),0===e?0:(a.avail_in-=e,C.arraySet(b,a.input,a.next_in,e,c),1===a.state.wrap?a.adler=E(a.adler,b,e,c):2===a.state.wrap&&(a.adler=F(a.adler,b,e,c)),a.next_in+=e,a.total_in+=e,e)}function l(a,b){var c,d,e=a.max_chain_length,f=a.strstart,g=a.prev_length,h=a.nice_match,i=a.strstart>a.w_size-ja?a.strstart-(a.w_size-ja):0,j=a.window,k=a.w_mask,l=a.prev,m=a.strstart+ia,n=j[f+g-1],o=j[f+g];a.prev_length>=a.good_match&&(e>>=2),h>a.lookahead&&(h=a.lookahead);do if(c=b,j[c+g]===o&&j[c+g-1]===n&&j[c]===j[f]&&j[++c]===j[f+1]){f+=2,c++;do;while(j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&m>f);if(d=ia-(m-f),f=m-ia,d>g){if(a.match_start=b,g=d,d>=h)break;n=j[f+g-1],o=j[f+g]}}while((b=l[b&k])>i&&0!==--e);return g<=a.lookahead?g:a.lookahead}function m(a){var b,c,d,e,f,g=a.w_size;do{if(e=a.window_size-a.lookahead-a.strstart,a.strstart>=g+(g-ja)){C.arraySet(a.window,a.window,g,g,0),a.match_start-=g,a.strstart-=g,a.block_start-=g,c=a.hash_size,b=c;do d=a.head[--b],a.head[b]=d>=g?d-g:0;while(--c);c=g,b=c;do d=a.prev[--b],a.prev[b]=d>=g?d-g:0;while(--c);e+=g}if(0===a.strm.avail_in)break;if(c=k(a.strm,a.window,a.strstart+a.lookahead,e),a.lookahead+=c,a.lookahead+a.insert>=ha)for(f=a.strstart-a.insert,a.ins_h=a.window[f],a.ins_h=(a.ins_h<a.pending_buf_size-5&&(c=a.pending_buf_size-5);;){if(a.lookahead<=1){if(m(a),0===a.lookahead&&b===H)return sa;if(0===a.lookahead)break}a.strstart+=a.lookahead,a.lookahead=0;var d=a.block_start+c;if((0===a.strstart||a.strstart>=d)&&(a.lookahead=a.strstart-d,a.strstart=d,h(a,!1),0===a.strm.avail_out))return sa;if(a.strstart-a.block_start>=a.w_size-ja&&(h(a,!1),0===a.strm.avail_out))return sa}return a.insert=0,b===K?(h(a,!0),0===a.strm.avail_out?ua:va):a.strstart>a.block_start&&(h(a,!1),0===a.strm.avail_out)?sa:sa}function o(a,b){for(var c,d;;){if(a.lookahead=ha&&(a.ins_h=(a.ins_h<=ha)if(d=D._tr_tally(a,a.strstart-a.match_start,a.match_length-ha),a.lookahead-=a.match_length,a.match_length<=a.max_lazy_match&&a.lookahead>=ha){a.match_length--;do a.strstart++,a.ins_h=(a.ins_h<=ha&&(a.ins_h=(a.ins_h<4096)&&(a.match_length=ha-1)),a.prev_length>=ha&&a.match_length<=a.prev_length){e=a.strstart+a.lookahead-ha,d=D._tr_tally(a,a.strstart-1-a.prev_match,a.prev_length-ha),a.lookahead-=a.prev_length-1,a.prev_length-=2;do++a.strstart<=e&&(a.ins_h=(a.ins_h<=ha&&a.strstart>0&&(e=a.strstart-1,d=g[e],d===g[++e]&&d===g[++e]&&d===g[++e])){f=a.strstart+ia;do;while(d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&f>e);a.match_length=ia-(f-e),a.match_length>a.lookahead&&(a.match_length=a.lookahead)}if(a.match_length>=ha?(c=D._tr_tally(a,1,a.match_length-ha),a.lookahead-=a.match_length,a.strstart+=a.match_length,a.match_length=0):(c=D._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++),c&&(h(a,!1),0===a.strm.avail_out))return sa}return a.insert=0,b===K?(h(a,!0),0===a.strm.avail_out?ua:va):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?sa:ta}function r(a,b){for(var c;;){if(0===a.lookahead&&(m(a),0===a.lookahead)){if(b===H)return sa;break}if(a.match_length=0,c=D._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++,c&&(h(a,!1),0===a.strm.avail_out))return sa}return a.insert=0,b===K?(h(a,!0),0===a.strm.avail_out?ua:va):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?sa:ta}function s(a){a.window_size=2*a.w_size,f(a.head),a.max_lazy_match=B[a.level].max_lazy,a.good_match=B[a.level].good_length,a.nice_match=B[a.level].nice_length,a.max_chain_length=B[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=ha-1,a.match_available=0,a.ins_h=0}function t(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Y,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new C.Buf16(2*fa),this.dyn_dtree=new C.Buf16(2*(2*da+1)),this.bl_tree=new C.Buf16(2*(2*ea+1)),f(this.dyn_ltree),f(this.dyn_dtree),f(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new C.Buf16(ga+1),this.heap=new C.Buf16(2*ca+1),f(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new C.Buf16(2*ca+1),f(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function u(a){var b;return a&&a.state?(a.total_in=a.total_out=0,a.data_type=X,b=a.state,b.pending=0,b.pending_out=0,b.wrap<0&&(b.wrap=-b.wrap),b.status=b.wrap?la:qa,a.adler=2===b.wrap?0:1,b.last_flush=H,D._tr_init(b),M):d(a,O)}function v(a){var b=u(a);return b===M&&s(a.state),b}function w(a,b){return a&&a.state?2!==a.state.wrap?O:(a.state.gzhead=b,M):O}function x(a,b,c,e,f,g){if(!a)return O;var h=1;if(b===R&&(b=6),0>e?(h=0,e=-e):e>15&&(h=2,e-=16),1>f||f>Z||c!==Y||8>e||e>15||0>b||b>9||0>g||g>V)return d(a,O);8===e&&(e=9);var i=new t;return a.state=i,i.strm=a,i.wrap=h,i.gzhead=null,i.w_bits=e,i.w_size=1<>1,i.l_buf=3*i.lit_bufsize,i.level=b,i.strategy=g,i.method=c,v(a)}function y(a,b){return x(a,b,Y,$,_,W)}function z(a,b){var c,h,k,l;if(!a||!a.state||b>L||0>b)return a?d(a,O):O;if(h=a.state,!a.output||!a.input&&0!==a.avail_in||h.status===ra&&b!==K)return d(a,0===a.avail_out?Q:O);if(h.strm=a,c=h.last_flush,h.last_flush=b,h.status===la)if(2===h.wrap)a.adler=0,i(h,31),i(h,139),i(h,8),h.gzhead?(i(h,(h.gzhead.text?1:0)+(h.gzhead.hcrc?2:0)+(h.gzhead.extra?4:0)+(h.gzhead.name?8:0)+(h.gzhead.comment?16:0)),i(h,255&h.gzhead.time),i(h,h.gzhead.time>>8&255),i(h,h.gzhead.time>>16&255),i(h,h.gzhead.time>>24&255),i(h,9===h.level?2:h.strategy>=T||h.level<2?4:0),i(h,255&h.gzhead.os),h.gzhead.extra&&h.gzhead.extra.length&&(i(h,255&h.gzhead.extra.length),i(h,h.gzhead.extra.length>>8&255)),h.gzhead.hcrc&&(a.adler=F(a.adler,h.pending_buf,h.pending,0)),h.gzindex=0,h.status=ma):(i(h,0),i(h,0),i(h,0),i(h,0),i(h,0),i(h,9===h.level?2:h.strategy>=T||h.level<2?4:0),i(h,wa),h.status=qa);else{var m=Y+(h.w_bits-8<<4)<<8,n=-1;n=h.strategy>=T||h.level<2?0:h.level<6?1:6===h.level?2:3,m|=n<<6,0!==h.strstart&&(m|=ka),m+=31-m%31,h.status=qa,j(h,m),0!==h.strstart&&(j(h,a.adler>>>16),j(h,65535&a.adler)),a.adler=1}if(h.status===ma)if(h.gzhead.extra){for(k=h.pending;h.gzindex<(65535&h.gzhead.extra.length)&&(h.pending!==h.pending_buf_size||(h.gzhead.hcrc&&h.pending>k&&(a.adler=F(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending!==h.pending_buf_size));)i(h,255&h.gzhead.extra[h.gzindex]),h.gzindex++;h.gzhead.hcrc&&h.pending>k&&(a.adler=F(a.adler,h.pending_buf,h.pending-k,k)),h.gzindex===h.gzhead.extra.length&&(h.gzindex=0,h.status=na)}else h.status=na;if(h.status===na)if(h.gzhead.name){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=F(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindexk&&(a.adler=F(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.gzindex=0,h.status=oa)}else h.status=oa;if(h.status===oa)if(h.gzhead.comment){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=F(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindexk&&(a.adler=F(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.status=pa)}else h.status=pa;if(h.status===pa&&(h.gzhead.hcrc?(h.pending+2>h.pending_buf_size&&g(a),h.pending+2<=h.pending_buf_size&&(i(h,255&a.adler),i(h,a.adler>>8&255),a.adler=0,h.status=qa)):h.status=qa),0!==h.pending){if(g(a),0===a.avail_out)return h.last_flush=-1,M}else if(0===a.avail_in&&e(b)<=e(c)&&b!==K)return d(a,Q);if(h.status===ra&&0!==a.avail_in)return d(a,Q);if(0!==a.avail_in||0!==h.lookahead||b!==H&&h.status!==ra){var o=h.strategy===T?r(h,b):h.strategy===U?q(h,b):B[h.level].func(h,b);if((o===ua||o===va)&&(h.status=ra),o===sa||o===ua)return 0===a.avail_out&&(h.last_flush=-1),M;if(o===ta&&(b===I?D._tr_align(h):b!==L&&(D._tr_stored_block(h,0,0,!1),b===J&&(f(h.head),0===h.lookahead&&(h.strstart=0,h.block_start=0,h.insert=0))),g(a),0===a.avail_out))return h.last_flush=-1,M}return b!==K?M:h.wrap<=0?N:(2===h.wrap?(i(h,255&a.adler),i(h,a.adler>>8&255),i(h,a.adler>>16&255),i(h,a.adler>>24&255),i(h,255&a.total_in),i(h,a.total_in>>8&255),i(h,a.total_in>>16&255),i(h,a.total_in>>24&255)):(j(h,a.adler>>>16),j(h,65535&a.adler)),g(a),h.wrap>0&&(h.wrap=-h.wrap),0!==h.pending?M:N)}function A(a){var b;return a&&a.state?(b=a.state.status,b!==la&&b!==ma&&b!==na&&b!==oa&&b!==pa&&b!==qa&&b!==ra?d(a,O):(a.state=null,b===qa?d(a,P):M)):O}var B,C=a("../utils/common"),D=a("./trees"),E=a("./adler32"),F=a("./crc32"),G=a("./messages"),H=0,I=1,J=3,K=4,L=5,M=0,N=1,O=-2,P=-3,Q=-5,R=-1,S=1,T=2,U=3,V=4,W=0,X=2,Y=8,Z=9,$=15,_=8,aa=29,ba=256,ca=ba+1+aa,da=30,ea=19,fa=2*ca+1,ga=15,ha=3,ia=258,ja=ia+ha+1,ka=32,la=42,ma=69,na=73,oa=91,pa=103,qa=113,ra=666,sa=1,ta=2,ua=3,va=4,wa=3,xa=function(a,b,c,d,e){this.good_length=a,this.max_lazy=b,this.nice_length=c,this.max_chain=d,this.func=e};B=[new xa(0,0,0,0,n),new xa(4,4,8,4,o),new xa(4,5,16,8,o),new xa(4,6,32,32,o),new xa(4,4,16,16,p),new xa(8,16,32,32,p),new xa(8,16,128,128,p),new xa(8,32,128,256,p),new xa(32,128,258,1024,p),new xa(32,258,258,4096,p)],c.deflateInit=y,c.deflateInit2=x,c.deflateReset=v,c.deflateResetKeep=u,c.deflateSetHeader=w,c.deflate=z,c.deflateEnd=A,c.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":27,"./adler32":29,"./crc32":31,"./messages":37,"./trees":38}],33:[function(a,b){"use strict";function c(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}b.exports=c},{}],34:[function(a,b){"use strict";var c=30,d=12;b.exports=function(a,b){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C;e=a.state,f=a.next_in,B=a.input,g=f+(a.avail_in-5),h=a.next_out,C=a.output,i=h-(b-a.avail_out),j=h+(a.avail_out-257),k=e.dmax,l=e.wsize,m=e.whave,n=e.wnext,o=e.window,p=e.hold,q=e.bits,r=e.lencode,s=e.distcode,t=(1<q&&(p+=B[f++]<>>24,p>>>=w,q-=w,w=v>>>16&255,0===w)C[h++]=65535&v;else{if(!(16&w)){if(0===(64&w)){v=r[(65535&v)+(p&(1<q&&(p+=B[f++]<>>=w,q-=w),15>q&&(p+=B[f++]<>>24,p>>>=w,q-=w,w=v>>>16&255,!(16&w)){if(0===(64&w)){v=s[(65535&v)+(p&(1<q&&(p+=B[f++]<q&&(p+=B[f++]<k){a.msg="invalid distance too far back",e.mode=c;break a}if(p>>>=w,q-=w,w=h-i,y>w){if(w=y-w,w>m&&e.sane){a.msg="invalid distance too far back",e.mode=c;break a}if(z=0,A=o,0===n){if(z+=l-w,x>w){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}else if(w>n){if(z+=l+n-w,w-=n,x>w){x-=w;do C[h++]=o[z++];while(--w);if(z=0,x>n){w=n,x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}}else if(z+=n-w,x>w){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}for(;x>2;)C[h++]=A[z++],C[h++]=A[z++],C[h++]=A[z++],x-=3;x&&(C[h++]=A[z++],x>1&&(C[h++]=A[z++]))}else{z=h-y;do C[h++]=C[z++],C[h++]=C[z++],C[h++]=C[z++],x-=3;while(x>2);x&&(C[h++]=C[z++],x>1&&(C[h++]=C[z++]))}break}}break}}while(g>f&&j>h);x=q>>3,f-=x,q-=x<<3,p&=(1<f?5+(g-f):5-(f-g),a.avail_out=j>h?257+(j-h):257-(h-j),e.hold=p,e.bits=q}},{}],35:[function(a,b,c){"use strict";function d(a){return(a>>>24&255)+(a>>>8&65280)+((65280&a)<<8)+((255&a)<<24)}function e(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function f(a){var b;return a&&a.state?(b=a.state,a.total_in=a.total_out=b.total=0,a.msg="",b.wrap&&(a.adler=1&b.wrap),b.mode=K,b.last=0,b.havedict=0,b.dmax=32768,b.head=null,b.hold=0,b.bits=0,b.lencode=b.lendyn=new r.Buf32(oa),b.distcode=b.distdyn=new r.Buf32(pa),b.sane=1,b.back=-1,C):F}function g(a){var b;return a&&a.state?(b=a.state,b.wsize=0,b.whave=0,b.wnext=0,f(a)):F}function h(a,b){var c,d;return a&&a.state?(d=a.state,0>b?(c=0,b=-b):(c=(b>>4)+1,48>b&&(b&=15)),b&&(8>b||b>15)?F:(null!==d.window&&d.wbits!==b&&(d.window=null),d.wrap=c,d.wbits=b,g(a))):F}function i(a,b){var c,d;return a?(d=new e,a.state=d,d.window=null,c=h(a,b),c!==C&&(a.state=null),c):F}function j(a){return i(a,ra)}function k(a){if(sa){var b;for(p=new r.Buf32(512),q=new r.Buf32(32),b=0;144>b;)a.lens[b++]=8;for(;256>b;)a.lens[b++]=9;for(;280>b;)a.lens[b++]=7;for(;288>b;)a.lens[b++]=8;for(v(x,a.lens,0,288,p,0,a.work,{bits:9}),b=0;32>b;)a.lens[b++]=5;v(y,a.lens,0,32,q,0,a.work,{bits:5}),sa=!1}a.lencode=p,a.lenbits=9,a.distcode=q,a.distbits=5}function l(a,b,c,d){var e,f=a.state;return null===f.window&&(f.wsize=1<=f.wsize?(r.arraySet(f.window,b,c-f.wsize,f.wsize,0),f.wnext=0,f.whave=f.wsize):(e=f.wsize-f.wnext,e>d&&(e=d),r.arraySet(f.window,b,c-d,e,f.wnext),d-=e,d?(r.arraySet(f.window,b,c-d,d,0),f.wnext=d,f.whave=f.wsize):(f.wnext+=e,f.wnext===f.wsize&&(f.wnext=0),f.whaven;){if(0===i)break a;i--,m+=e[g++]<>>8&255,c.check=t(c.check,Ba,2,0),m=0,n=0,c.mode=L;break}if(c.flags=0,c.head&&(c.head.done=!1),!(1&c.wrap)||(((255&m)<<8)+(m>>8))%31){a.msg="incorrect header check",c.mode=la;break}if((15&m)!==J){a.msg="unknown compression method",c.mode=la;break}if(m>>>=4,n-=4,wa=(15&m)+8,0===c.wbits)c.wbits=wa;else if(wa>c.wbits){a.msg="invalid window size",c.mode=la;break}c.dmax=1<n;){if(0===i)break a;i--,m+=e[g++]<>8&1),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=t(c.check,Ba,2,0)),m=0,n=0,c.mode=M;case M:for(;32>n;){if(0===i)break a;i--,m+=e[g++]<>>8&255,Ba[2]=m>>>16&255,Ba[3]=m>>>24&255,c.check=t(c.check,Ba,4,0)),m=0,n=0,c.mode=N;case N:for(;16>n;){if(0===i)break a;i--,m+=e[g++]<>8),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=t(c.check,Ba,2,0)),m=0,n=0,c.mode=O;case O:if(1024&c.flags){for(;16>n;){if(0===i)break a;i--,m+=e[g++]<>>8&255,c.check=t(c.check,Ba,2,0)),m=0,n=0}else c.head&&(c.head.extra=null);c.mode=P;case P:if(1024&c.flags&&(q=c.length,q>i&&(q=i),q&&(c.head&&(wa=c.head.extra_len-c.length,c.head.extra||(c.head.extra=new Array(c.head.extra_len)),r.arraySet(c.head.extra,e,g,q,wa)),512&c.flags&&(c.check=t(c.check,e,q,g)),i-=q,g+=q,c.length-=q),c.length))break a;c.length=0,c.mode=Q;case Q:if(2048&c.flags){if(0===i)break a;q=0;do wa=e[g+q++],c.head&&wa&&c.length<65536&&(c.head.name+=String.fromCharCode(wa));while(wa&&i>q);if(512&c.flags&&(c.check=t(c.check,e,q,g)),i-=q,g+=q,wa)break a}else c.head&&(c.head.name=null);c.length=0,c.mode=R;case R:if(4096&c.flags){if(0===i)break a;q=0;do wa=e[g+q++],c.head&&wa&&c.length<65536&&(c.head.comment+=String.fromCharCode(wa));while(wa&&i>q);if(512&c.flags&&(c.check=t(c.check,e,q,g)),i-=q,g+=q,wa)break a}else c.head&&(c.head.comment=null);c.mode=S;case S:if(512&c.flags){for(;16>n;){if(0===i)break a;i--,m+=e[g++]<>9&1,c.head.done=!0),a.adler=c.check=0,c.mode=V;break;case T:for(;32>n;){if(0===i)break a;i--,m+=e[g++]<>>=7&n,n-=7&n,c.mode=ia;break}for(;3>n;){if(0===i)break a;i--,m+=e[g++]<>>=1,n-=1,3&m){case 0:c.mode=X;break;case 1:if(k(c),c.mode=ba,b===B){m>>>=2,n-=2;break a}break;case 2:c.mode=$;break;case 3:a.msg="invalid block type",c.mode=la}m>>>=2,n-=2;break;case X:for(m>>>=7&n,n-=7&n;32>n;){if(0===i)break a;i--,m+=e[g++]<>>16^65535)){a.msg="invalid stored block lengths",c.mode=la;break}if(c.length=65535&m,m=0,n=0,c.mode=Y,b===B)break a;case Y:c.mode=Z;case Z:if(q=c.length){if(q>i&&(q=i),q>j&&(q=j),0===q)break a;r.arraySet(f,e,g,q,h),i-=q,g+=q,j-=q,h+=q,c.length-=q;break}c.mode=V;break;case $:for(;14>n;){if(0===i)break a;i--,m+=e[g++]<>>=5,n-=5,c.ndist=(31&m)+1,m>>>=5,n-=5,c.ncode=(15&m)+4,m>>>=4,n-=4,c.nlen>286||c.ndist>30){a.msg="too many length or distance symbols",c.mode=la;break}c.have=0,c.mode=_;case _:for(;c.haven;){if(0===i)break a;i--,m+=e[g++]<>>=3,n-=3}for(;c.have<19;)c.lens[Ca[c.have++]]=0;if(c.lencode=c.lendyn,c.lenbits=7,ya={bits:c.lenbits},xa=v(w,c.lens,0,19,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg="invalid code lengths set",c.mode=la;break}c.have=0,c.mode=aa;case aa:for(;c.have>>24,ra=Aa>>>16&255,sa=65535&Aa,!(n>=qa);){if(0===i)break a;i--,m+=e[g++]<sa)m>>>=qa,n-=qa,c.lens[c.have++]=sa;else{if(16===sa){for(za=qa+2;za>n;){if(0===i)break a;i--,m+=e[g++]<>>=qa,n-=qa,0===c.have){a.msg="invalid bit length repeat",c.mode=la;break}wa=c.lens[c.have-1],q=3+(3&m),m>>>=2,n-=2}else if(17===sa){for(za=qa+3;za>n;){if(0===i)break a;i--,m+=e[g++]<>>=qa,n-=qa,wa=0,q=3+(7&m),m>>>=3,n-=3}else{for(za=qa+7;za>n;){if(0===i)break a;i--,m+=e[g++]<>>=qa,n-=qa,wa=0,q=11+(127&m),m>>>=7,n-=7}if(c.have+q>c.nlen+c.ndist){a.msg="invalid bit length repeat",c.mode=la;break}for(;q--;)c.lens[c.have++]=wa}}if(c.mode===la)break;if(0===c.lens[256]){a.msg="invalid code -- missing end-of-block",c.mode=la;break}if(c.lenbits=9,ya={bits:c.lenbits},xa=v(x,c.lens,0,c.nlen,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg="invalid literal/lengths set",c.mode=la;break}if(c.distbits=6,c.distcode=c.distdyn,ya={bits:c.distbits},xa=v(y,c.lens,c.nlen,c.ndist,c.distcode,0,c.work,ya),c.distbits=ya.bits,xa){a.msg="invalid distances set",c.mode=la;break}if(c.mode=ba,b===B)break a;case ba:c.mode=ca;case ca:if(i>=6&&j>=258){a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,u(a,p),h=a.next_out,f=a.output,j=a.avail_out,g=a.next_in,e=a.input,i=a.avail_in,m=c.hold, -n=c.bits,c.mode===V&&(c.back=-1);break}for(c.back=0;Aa=c.lencode[m&(1<>>24,ra=Aa>>>16&255,sa=65535&Aa,!(n>=qa);){if(0===i)break a;i--,m+=e[g++]<>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(n>=ta+qa);){if(0===i)break a;i--,m+=e[g++]<>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,c.length=sa,0===ra){c.mode=ha;break}if(32&ra){c.back=-1,c.mode=V;break}if(64&ra){a.msg="invalid literal/length code",c.mode=la;break}c.extra=15&ra,c.mode=da;case da:if(c.extra){for(za=c.extra;za>n;){if(0===i)break a;i--,m+=e[g++]<>>=c.extra,n-=c.extra,c.back+=c.extra}c.was=c.length,c.mode=ea;case ea:for(;Aa=c.distcode[m&(1<>>24,ra=Aa>>>16&255,sa=65535&Aa,!(n>=qa);){if(0===i)break a;i--,m+=e[g++]<>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(n>=ta+qa);){if(0===i)break a;i--,m+=e[g++]<>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,64&ra){a.msg="invalid distance code",c.mode=la;break}c.offset=sa,c.extra=15&ra,c.mode=fa;case fa:if(c.extra){for(za=c.extra;za>n;){if(0===i)break a;i--,m+=e[g++]<>>=c.extra,n-=c.extra,c.back+=c.extra}if(c.offset>c.dmax){a.msg="invalid distance too far back",c.mode=la;break}c.mode=ga;case ga:if(0===j)break a;if(q=p-j,c.offset>q){if(q=c.offset-q,q>c.whave&&c.sane){a.msg="invalid distance too far back",c.mode=la;break}q>c.wnext?(q-=c.wnext,oa=c.wsize-q):oa=c.wnext-q,q>c.length&&(q=c.length),pa=c.window}else pa=f,oa=h-c.offset,q=c.length;q>j&&(q=j),j-=q,c.length-=q;do f[h++]=pa[oa++];while(--q);0===c.length&&(c.mode=ca);break;case ha:if(0===j)break a;f[h++]=c.length,j--,c.mode=ca;break;case ia:if(c.wrap){for(;32>n;){if(0===i)break a;i--,m|=e[g++]<n;){if(0===i)break a;i--,m+=e[g++]<=D;D++)P[D]=0;for(E=0;o>E;E++)P[b[n+E]]++;for(H=C,G=d;G>=1&&0===P[G];G--);if(H>G&&(H=G),0===G)return p[q++]=20971520,p[q++]=20971520,s.bits=1,0;for(F=1;G>F&&0===P[F];F++);for(F>H&&(H=F),K=1,D=1;d>=D;D++)if(K<<=1,K-=P[D],0>K)return-1;if(K>0&&(a===g||1!==G))return-1;for(Q[1]=0,D=1;d>D;D++)Q[D+1]=Q[D]+P[D];for(E=0;o>E;E++)0!==b[n+E]&&(r[Q[b[n+E]]++]=E);if(a===g?(N=R=r,y=19):a===h?(N=j,O-=257,R=k,S-=257,y=256):(N=l,R=m,y=-1),M=0,E=0,D=F,x=q,I=H,J=0,v=-1,L=1<e||a===i&&L>f)return 1;for(var T=0;;){T++,z=D-J,r[E]y?(A=R[S+r[E]],B=N[O+r[E]]):(A=96,B=0),t=1<>J)+u]=z<<24|A<<16|B|0;while(0!==u);for(t=1<>=1;if(0!==t?(M&=t-1,M+=t):M=0,E++,0===--P[D]){if(D===G)break;D=b[n+r[E]]}if(D>H&&(M&w)!==v){for(0===J&&(J=H),x+=F,I=D-J,K=1<I+J&&(K-=P[I+J],!(0>=K));)I++,K<<=1;if(L+=1<e||a===i&&L>f)return 1;v=M&w,p[v]=H<<24|I<<16|x-q|0}}return 0!==M&&(p[x+M]=D-J<<24|64<<16|0),s.bits=H,0}},{"../utils/common":27}],37:[function(a,b){"use strict";b.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],38:[function(a,b,c){"use strict";function d(a){for(var b=a.length;--b>=0;)a[b]=0}function e(a){return 256>a?ga[a]:ga[256+(a>>>7)]}function f(a,b){a.pending_buf[a.pending++]=255&b,a.pending_buf[a.pending++]=b>>>8&255}function g(a,b,c){a.bi_valid>V-c?(a.bi_buf|=b<>V-a.bi_valid,a.bi_valid+=c-V):(a.bi_buf|=b<>>=1,c<<=1;while(--b>0);return c>>>1}function j(a){16===a.bi_valid?(f(a,a.bi_buf),a.bi_buf=0,a.bi_valid=0):a.bi_valid>=8&&(a.pending_buf[a.pending++]=255&a.bi_buf,a.bi_buf>>=8,a.bi_valid-=8)}function k(a,b){var c,d,e,f,g,h,i=b.dyn_tree,j=b.max_code,k=b.stat_desc.static_tree,l=b.stat_desc.has_stree,m=b.stat_desc.extra_bits,n=b.stat_desc.extra_base,o=b.stat_desc.max_length,p=0;for(f=0;U>=f;f++)a.bl_count[f]=0;for(i[2*a.heap[a.heap_max]+1]=0,c=a.heap_max+1;T>c;c++)d=a.heap[c],f=i[2*i[2*d+1]+1]+1,f>o&&(f=o,p++),i[2*d+1]=f,d>j||(a.bl_count[f]++,g=0,d>=n&&(g=m[d-n]),h=i[2*d],a.opt_len+=h*(f+g),l&&(a.static_len+=h*(k[2*d+1]+g)));if(0!==p){do{for(f=o-1;0===a.bl_count[f];)f--;a.bl_count[f]--,a.bl_count[f+1]+=2,a.bl_count[o]--,p-=2}while(p>0);for(f=o;0!==f;f--)for(d=a.bl_count[f];0!==d;)e=a.heap[--c],e>j||(i[2*e+1]!==f&&(a.opt_len+=(f-i[2*e+1])*i[2*e],i[2*e+1]=f),d--)}}function l(a,b,c){var d,e,f=new Array(U+1),g=0;for(d=1;U>=d;d++)f[d]=g=g+c[d-1]<<1;for(e=0;b>=e;e++){var h=a[2*e+1];0!==h&&(a[2*e]=i(f[h]++,h))}}function m(){var a,b,c,d,e,f=new Array(U+1);for(c=0,d=0;O-1>d;d++)for(ia[d]=c,a=0;a<1<<_[d];a++)ha[c++]=d;for(ha[c-1]=d,e=0,d=0;16>d;d++)for(ja[d]=e,a=0;a<1<>=7;R>d;d++)for(ja[d]=e<<7,a=0;a<1<=b;b++)f[b]=0;for(a=0;143>=a;)ea[2*a+1]=8,a++,f[8]++;for(;255>=a;)ea[2*a+1]=9,a++,f[9]++;for(;279>=a;)ea[2*a+1]=7,a++,f[7]++;for(;287>=a;)ea[2*a+1]=8,a++,f[8]++;for(l(ea,Q+1,f),a=0;R>a;a++)fa[2*a+1]=5,fa[2*a]=i(a,5);ka=new na(ea,_,P+1,Q,U),la=new na(fa,aa,0,R,U),ma=new na(new Array(0),ba,0,S,W)}function n(a){var b;for(b=0;Q>b;b++)a.dyn_ltree[2*b]=0;for(b=0;R>b;b++)a.dyn_dtree[2*b]=0;for(b=0;S>b;b++)a.bl_tree[2*b]=0;a.dyn_ltree[2*X]=1,a.opt_len=a.static_len=0,a.last_lit=a.matches=0}function o(a){a.bi_valid>8?f(a,a.bi_buf):a.bi_valid>0&&(a.pending_buf[a.pending++]=a.bi_buf),a.bi_buf=0,a.bi_valid=0}function p(a,b,c,d){o(a),d&&(f(a,c),f(a,~c)),E.arraySet(a.pending_buf,a.window,b,c,a.pending),a.pending+=c}function q(a,b,c,d){var e=2*b,f=2*c;return a[e]c;c++)0!==f[2*c]?(a.heap[++a.heap_len]=j=c,a.depth[c]=0):f[2*c+1]=0;for(;a.heap_len<2;)e=a.heap[++a.heap_len]=2>j?++j:0,f[2*e]=1,a.depth[e]=0,a.opt_len--,h&&(a.static_len-=g[2*e+1]);for(b.max_code=j,c=a.heap_len>>1;c>=1;c--)r(a,f,c);e=i;do c=a.heap[1],a.heap[1]=a.heap[a.heap_len--],r(a,f,1),d=a.heap[1],a.heap[--a.heap_max]=c,a.heap[--a.heap_max]=d,f[2*e]=f[2*c]+f[2*d],a.depth[e]=(a.depth[c]>=a.depth[d]?a.depth[c]:a.depth[d])+1,f[2*c+1]=f[2*d+1]=e,a.heap[1]=e++,r(a,f,1);while(a.heap_len>=2);a.heap[--a.heap_max]=a.heap[1],k(a,b),l(f,j,a.bl_count)}function u(a,b,c){var d,e,f=-1,g=b[1],h=0,i=7,j=4;for(0===g&&(i=138,j=3),b[2*(c+1)+1]=65535,d=0;c>=d;d++)e=g,g=b[2*(d+1)+1],++hh?a.bl_tree[2*e]+=h:0!==e?(e!==f&&a.bl_tree[2*e]++,a.bl_tree[2*Y]++):10>=h?a.bl_tree[2*Z]++:a.bl_tree[2*$]++,h=0,f=e,0===g?(i=138,j=3):e===g?(i=6,j=3):(i=7,j=4))}function v(a,b,c){var d,e,f=-1,i=b[1],j=0,k=7,l=4;for(0===i&&(k=138,l=3),d=0;c>=d;d++)if(e=i,i=b[2*(d+1)+1],!(++jj){do h(a,e,a.bl_tree);while(0!==--j)}else 0!==e?(e!==f&&(h(a,e,a.bl_tree),j--),h(a,Y,a.bl_tree),g(a,j-3,2)):10>=j?(h(a,Z,a.bl_tree),g(a,j-3,3)):(h(a,$,a.bl_tree),g(a,j-11,7));j=0,f=e,0===i?(k=138,l=3):e===i?(k=6,l=3):(k=7,l=4)}}function w(a){var b;for(u(a,a.dyn_ltree,a.l_desc.max_code),u(a,a.dyn_dtree,a.d_desc.max_code),t(a,a.bl_desc),b=S-1;b>=3&&0===a.bl_tree[2*ca[b]+1];b--);return a.opt_len+=3*(b+1)+5+5+4,b}function x(a,b,c,d){var e;for(g(a,b-257,5),g(a,c-1,5),g(a,d-4,4),e=0;d>e;e++)g(a,a.bl_tree[2*ca[e]+1],3);v(a,a.dyn_ltree,b-1),v(a,a.dyn_dtree,c-1)}function y(a){var b,c=4093624447;for(b=0;31>=b;b++,c>>>=1)if(1&c&&0!==a.dyn_ltree[2*b])return G;if(0!==a.dyn_ltree[18]||0!==a.dyn_ltree[20]||0!==a.dyn_ltree[26])return H;for(b=32;P>b;b++)if(0!==a.dyn_ltree[2*b])return H;return G}function z(a){pa||(m(),pa=!0),a.l_desc=new oa(a.dyn_ltree,ka),a.d_desc=new oa(a.dyn_dtree,la),a.bl_desc=new oa(a.bl_tree,ma),a.bi_buf=0,a.bi_valid=0,n(a)}function A(a,b,c,d){g(a,(J<<1)+(d?1:0),3),p(a,b,c,!0)}function B(a){g(a,K<<1,3),h(a,X,ea),j(a)}function C(a,b,c,d){var e,f,h=0;a.level>0?(a.strm.data_type===I&&(a.strm.data_type=y(a)),t(a,a.l_desc),t(a,a.d_desc),h=w(a),e=a.opt_len+3+7>>>3,f=a.static_len+3+7>>>3,e>=f&&(e=f)):e=f=c+5,e>=c+4&&-1!==b?A(a,b,c,d):a.strategy===F||f===e?(g(a,(K<<1)+(d?1:0),3),s(a,ea,fa)):(g(a,(L<<1)+(d?1:0),3),x(a,a.l_desc.max_code+1,a.d_desc.max_code+1,h+1),s(a,a.dyn_ltree,a.dyn_dtree)),n(a),d&&o(a)}function D(a,b,c){return a.pending_buf[a.d_buf+2*a.last_lit]=b>>>8&255,a.pending_buf[a.d_buf+2*a.last_lit+1]=255&b,a.pending_buf[a.l_buf+a.last_lit]=255&c,a.last_lit++,0===b?a.dyn_ltree[2*c]++:(a.matches++,b--,a.dyn_ltree[2*(ha[c]+P+1)]++,a.dyn_dtree[2*e(b)]++),a.last_lit===a.lit_bufsize-1}var E=a("../utils/common"),F=4,G=0,H=1,I=2,J=0,K=1,L=2,M=3,N=258,O=29,P=256,Q=P+1+O,R=30,S=19,T=2*Q+1,U=15,V=16,W=7,X=256,Y=16,Z=17,$=18,_=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],aa=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],ba=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],ca=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],da=512,ea=new Array(2*(Q+2));d(ea);var fa=new Array(2*R);d(fa);var ga=new Array(da);d(ga);var ha=new Array(N-M+1);d(ha);var ia=new Array(O);d(ia);var ja=new Array(R);d(ja);var ka,la,ma,na=function(a,b,c,d,e){this.static_tree=a,this.extra_bits=b,this.extra_base=c,this.elems=d,this.max_length=e,this.has_stree=a&&a.length},oa=function(a,b){this.dyn_tree=a,this.max_code=0,this.stat_desc=b},pa=!1;c._tr_init=z,c._tr_stored_block=A,c._tr_flush_block=C,c._tr_tally=D,c._tr_align=B},{"../utils/common":27}],39:[function(a,b){"use strict";function c(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}b.exports=c},{}]},{},[9])(9)}),function(a,b){function c(a){for(var b=Object.create(null),c=0;c=0;)if(b[c]==a)return!0;return!1}function g(a,b){for(var c=0,d=b.length;d>c;++c)if(a(b[c]))return b[c]}function h(a,b){if(0>=b)return"";if(1==b)return a;var c=h(a,b>>1);return c+=c,1&b&&(c+=a),c}function i(a,b){Error.call(this,a),this.msg=a,this.defs=b}function j(a,b,c){a===!0&&(a={});var d=a||{};if(c)for(var e in d)d.hasOwnProperty(e)&&!b.hasOwnProperty(e)&&i.croak("`"+e+"` is not a supported option",b);for(var e in b)b.hasOwnProperty(e)&&(d[e]=a&&a.hasOwnProperty(e)?a[e]:b[e]);return d}function k(a,b){var c=0;for(var d in b)b.hasOwnProperty(d)&&(a[d]=b[d],c++);return c}function l(){}function m(a,b){a.indexOf(b)<0&&a.push(b)}function n(a,b){return a.replace(/\{(.+?)\}/g,function(a,c){return b[c]})}function o(a,b){for(var c=a.length;--c>=0;)a[c]===b&&a.splice(c,1)}function p(a,b){function c(a,c){for(var d=[],e=0,f=0,g=0;e=0})}function s(a){function b(a){if(1==a.length)return c+="return str === "+JSON.stringify(a[0])+";";c+="switch(str){";for(var b=0;b3){d.sort(function(a,b){return b.length-a.length}),c+="switch(str.length){";for(var e=0;e=0;)if(!b(a[c]))return!1;return!0}function u(){this._values=Object.create(null),this._size=0}function v(a,b,c,d){arguments.length<4&&(d=X),b=b?b.split(/\s+/):[];var e=b;d&&d.PROPS&&(b=b.concat(d.PROPS));for(var f="return function AST_"+a+"(props){ if (props) { ",g=b.length;--g>=0;)f+="this."+b[g]+" = props."+b[g]+";";var h=d&&new d;(h&&h.initialize||c&&c.initialize)&&(f+="this.initialize();"),f+="}}";var i=new Function(f)();if(h&&(i.prototype=h,i.BASE=d),d&&d.SUBCLASSES.push(i),i.prototype.CTOR=i,i.PROPS=b||null,i.SELF_PROPS=e,i.SUBCLASSES=[],a&&(i.prototype.TYPE=i.TYPE=a),c)for(g in c)c.hasOwnProperty(g)&&(/^\$/.test(g)?i[g.substr(1)]=c[g]:i.prototype[g]=c[g]);return i.DEFMETHOD=function(a,b){this.prototype[a]=b},i}function w(a,b){a.body instanceof Y?a.body._walk(b):a.body.forEach(function(a){a._walk(b)})}function x(a){this.visit=a,this.stack=[]}function y(a){return a>=97&&122>=a||a>=65&&90>=a||a>=170&&Ob.letter.test(String.fromCharCode(a))}function z(a){return a>=48&&57>=a}function A(a){return z(a)||y(a)}function B(a){return Ob.digit.test(String.fromCharCode(a))}function C(a){return Ob.non_spacing_mark.test(a)||Ob.space_combining_mark.test(a)}function D(a){return Ob.connector_punctuation.test(a)}function E(a){return!Db(a)&&/^[a-z_$][a-z0-9_$]*$/i.test(a)}function F(a){return 36==a||95==a||y(a)}function G(a){var b=a.charCodeAt(0);return F(b)||z(b)||8204==b||8205==b||C(a)||D(a)||B(b)}function H(a){return/^[a-z_$][a-z0-9_$]*$/i.test(a)}function I(a){return Gb.test(a)?parseInt(a.substr(2),16):Hb.test(a)?parseInt(a.substr(1),8):Ib.test(a)?parseFloat(a):void 0}function J(a,b,c,d,e){this.message=a,this.filename=b,this.line=c,this.col=d,this.pos=e,this.stack=(new Error).stack}function K(a,b,c,d,e){throw new J(a,b,c,d,e)}function L(a,b,c){return a.type==b&&(null==c||a.value==c)}function M(a,b,c){function d(){return y.text.charAt(y.pos)}function e(a,b){var c=y.text.charAt(y.pos++);if(a&&!c)throw Pb;return"\r\n\u2028\u2029".indexOf(c)>=0?(y.newline_before=y.newline_before||!b,++y.line,y.col=0,b||"\r"!=c||"\n"!=d()||(++y.pos,c="\n")):++y.col,c}function f(a){for(;a-->0;)e()}function g(a){return y.text.substr(y.pos,a.length)==a}function h(a,b){var c=y.text.indexOf(a,y.pos);if(b&&-1==c)throw Pb;return c}function i(){y.tokline=y.line,y.tokcol=y.col,y.tokpos=y.pos}function j(a,c,d){y.regex_allowed="operator"==a&&!Rb(c)||"keyword"==a&&Eb(c)||"punc"==a&&Lb(c),B="punc"==a&&"."==c;var e={type:a,value:c,line:y.tokline,col:y.tokcol,pos:y.tokpos,endline:y.line,endcol:y.col,endpos:y.pos,nlb:y.newline_before,file:b};if(!d){e.comments_before=y.comments_before,y.comments_before=[];for(var f=0,g=e.comments_before.length;g>f;f++)e.nlb=e.nlb||e.comments_before[f].nlb}return y.newline_before=!1,new W(e)}function k(){for(var a;Kb(a=d())||"\u2028"==a||"\u2029"==a;)e()}function l(a){for(var b,c="",f=0;(b=d())&&a(b,f++);)c+=e();return c}function m(a){K(a,b,y.tokline,y.tokcol,y.tokpos)}function n(a){var b=!1,c=!1,d=!1,e="."==a,f=l(function(f,g){var h=f.charCodeAt(0);switch(h){case 120:case 88:return d?!1:d=!0;case 101:case 69:return d?!0:b?!1:b=c=!0;case 45:return c||0==g&&!a;case 43:return c;case c=!1,46:return e||d||b?!1:e=!0}return A(h)});a&&(f=a+f);var g=I(f);return isNaN(g)?void m("Invalid syntax: "+f):j("num",g)}function o(a){var b=e(!0,a);switch(b.charCodeAt(0)){case 110:return"\n";case 114:return"\r";case 116:return" ";case 98:return"\b";case 118:return" ";case 102:return"\f";case 48:return"\x00";case 120:return String.fromCharCode(p(2));case 117:return String.fromCharCode(p(4));case 10:return"";case 13:if("\n"==d())return e(!0,a),""}return b}function p(a){for(var b=0;a>0;--a){var c=parseInt(e(!0),16);isNaN(c)&&m("Invalid hex-character pattern in string"),b=b<<4|c}return b}function q(a){var b,c=y.regex_allowed,d=h("\n");return-1==d?(b=y.text.substr(y.pos),y.pos=y.text.length):(b=y.text.substring(y.pos,d),y.pos=d),y.col=y.tokcol+(y.pos-y.tokpos),y.comments_before.push(j(a,b,!0)),y.regex_allowed=c,x()}function r(){for(var a,b,c=!1,f="",g=!1;null!=(a=d());)if(c)"u"!=a&&m("Expecting UnicodeEscapeSequence -- uXXXX"),a=o(),G(a)||m("Unicode char: "+a.charCodeAt(0)+" is not valid in identifier"),f+=a,c=!1;else if("\\"==a)g=c=!0,e();else{if(!G(a))break;f+=e()}return Bb(f)&&g&&(b=f.charCodeAt(0).toString(16).toUpperCase(),f="\\u"+"0000".substr(b.length)+b+f.slice(1)),f}function s(a){function b(a){if(!d())return a;var c=a+d();return Jb(c)?(e(),b(c)):a}return j("operator",b(a||e()))}function t(){switch(e(),d()){case"/":return e(),q("comment1");case"*":return e(),D()}return y.regex_allowed?E(""):s("/")}function u(){return e(),z(d().charCodeAt(0))?n("."):j("punc",".")}function v(){var a=r();return B?j("name",a):Cb(a)?j("atom",a):Bb(a)?Jb(a)?j("operator",a):j("keyword",a):j("name",a)}function w(a,b){return function(c){try{return b(c)}catch(d){if(d!==Pb)throw d;m(a)}}}function x(a){if(null!=a)return E(a);if(k(),i(),c){if(g("")&&y.newline_before)return f(3),q("comment4")}var b=d();if(!b)return j("eof");var h=b.charCodeAt(0);switch(h){case 34:case 39:return C(b);case 46:return u();case 47:return t()}return z(h)?n():Mb(b)?j("punc",e()):Fb(b)?s():92==h||F(h)?v():void m("Unexpected character '"+b+"'")}var y={text:a,filename:b,pos:0,tokpos:0,line:1,tokline:0,col:0,tokcol:0,newline_before:!1,regex_allowed:!1,comments_before:[]},B=!1,C=w("Unterminated string constant",function(a){for(var b=e(),c="";;){var d=e(!0,!0);if("\\"==d){var f=0,g=null;d=l(function(a){if(a>="0"&&"7">=a){if(!g)return g=a,++f;if("3">=g&&2>=f)return++f;if(g>="4"&&1>=f)return++f}return!1}),d=f>0?String.fromCharCode(parseInt(d,8)):o(!0)}else if(d==b)break;c+=d}var h=j("string",c);return h.quote=a,h}),D=w("Unterminated multiline comment",function(){var a=y.regex_allowed,b=h("*/",!0),c=y.text.substring(y.pos,b),d=c.split("\n"),e=d.length;y.pos=b+2,y.line+=e-1,e>1?y.col=d[e-1].length:y.col+=d[e-1].length,y.col+=2;var f=y.newline_before=y.newline_before||c.indexOf("\n")>=0;return y.comments_before.push(j("comment2",c,!0)),y.regex_allowed=a,y.newline_before=f,x()}),E=w("Unterminated regular expression",function(a){for(var b,c=!1,d=!1;b=e(!0);)if(c)a+="\\"+b,c=!1;else if("["==b)d=!0,a+=b;else if("]"==b&&d)d=!1,a+=b;else{if("/"==b&&!d)break;"\\"==b?c=!0:a+=b}var f=r();return j("regexp",new RegExp(a,f))});return x.context=function(a){return a&&(y=a),y},x}function N(a,b){function c(a,b){return L(Q.token,a,b)}function d(){return Q.peeked||(Q.peeked=Q.input())}function e(){return Q.prev=Q.token,Q.peeked?(Q.token=Q.peeked,Q.peeked=null):Q.token=Q.input(),Q.in_directives=Q.in_directives&&("string"==Q.token.type||c("punc",";")),Q.token}function f(){return Q.prev}function h(a,b,c,d){var e=Q.input.context();K(a,e.filename,null!=b?b:e.tokline,null!=c?c:e.tokcol,null!=d?d:e.tokpos)}function i(a,b){h(b,a.line,a.col)}function k(a){null==a&&(a=Q.token),i(a,"Unexpected token: "+a.type+" ("+a.value+")")}function l(a,b){return c(a,b)?e():void i(Q.token,"Unexpected token "+Q.token.type+" «"+Q.token.value+"», expected "+a+" «"+b+"»")}function m(a){return l("punc",a)}function n(){return!b.strict&&(Q.token.nlb||c("eof")||c("punc","}"))}function o(){c("punc",";")?e():n()||k()}function p(){m("(");var a=sa(!0);return m(")"),a}function q(a){return function(){var b=Q.token,c=a(),d=f();return c.start=b,c.end=d,c}}function r(){(c("operator","/")||c("operator","/="))&&(Q.peeked=null,Q.token=Q.input(Q.token.value.substr(1)))}function s(){var a=I(kb);g(function(b){return b.name==a.name},Q.labels)&&h("Label "+a.name+" defined twice"),m(":"),Q.labels.push(a);var b=R();return Q.labels.pop(),b instanceof fa||a.references.forEach(function(b){b instanceof ya&&(b=b.label.start,h("Continue label `"+a.name+"` refers to non-IterationStatement.",b.line,b.col,b.pos))}),new ea({body:b,label:a})}function t(a){return new _({body:(a=sa(!0),o(),a)})}function u(a){var b,c=null;n()||(c=I(mb,!0)),null!=c?(b=g(function(a){return a.name==c.name},Q.labels),b||h("Undefined label "+c.name),c.thedef=b):0==Q.in_loop&&h(a.TYPE+" not inside a loop or switch"),o();var d=new a({label:c});return b&&b.references.push(d),d}function v(){m("(");var a=null;return!c("punc",";")&&(a=c("keyword","var")?(e(),T(!0)):sa(!0,!0),c("operator","in"))?(a instanceof Ia&&a.definitions.length>1&&h("Only one variable declaration allowed in for..in loop"),e(),x(a)):w(a)}function w(a){m(";");var b=c("punc",";")?null:sa(!0);m(";");var d=c("punc",")")?null:sa(!0);return m(")"),new ja({init:a,condition:b,step:d,body:P(R)})}function x(a){var b=a instanceof Ia?a.definitions[0].name:null,c=sa(!0);return m(")"),new ka({init:a,name:b,object:c,body:P(R)})}function y(){var a=p(),b=R(),d=null;return c("keyword","else")&&(e(),d=R()),new za({condition:a,body:b,alternative:d})}function z(){m("{");for(var a=[];!c("punc","}");)c("eof")&&k(),a.push(R());return e(),a}function A(){m("{");for(var a,b=[],d=null,g=null;!c("punc","}");)c("eof")&&k(),c("keyword","case")?(g&&(g.end=f()),d=[],g=new Da({start:(a=Q.token,e(),a),expression:sa(!0),body:d}),b.push(g),m(":")):c("keyword","default")?(g&&(g.end=f()),d=[],g=new Ca({start:(a=Q.token,e(),m(":"),a),body:d}),b.push(g)):(d||k(),d.push(R()));return g&&(g.end=f()),e(),b}function B(){var a=z(),b=null,d=null;if(c("keyword","catch")){var g=Q.token;e(),m("(");var i=I(jb);m(")"),b=new Fa({start:g,argname:i,body:z(),end:f()})}if(c("keyword","finally")){var g=Q.token;e(),d=new Ga({start:g,body:z(),end:f()})}return b||d||h("Missing catch/finally blocks"),new Ea({body:a,bcatch:b,bfinally:d})}function C(a,b){for(var d=[];d.push(new Ka({start:Q.token,name:I(b?fb:eb),value:c("operator","=")?(e(),sa(!1,a)):null,end:f()})),c("punc",",");)e();return d}function D(){var a,b=Q.token;switch(b.type){case"name":case"keyword":a=H(lb);break;case"num":a=new qb({start:b,end:b,value:b.value});break;case"string":a=new pb({start:b,end:b,value:b.value,quote:b.quote});break;case"regexp":a=new rb({start:b,end:b,value:b.value});break;case"atom":switch(b.value){case"false":a=new zb({start:b,end:b});break;case"true":a=new Ab({start:b,end:b});break;case"null":a=new tb({start:b,end:b})}}return e(),a}function E(a,b,d){for(var f=!0,g=[];!c("punc",a)&&(f?f=!1:m(","),!b||!c("punc",a));)c("punc",",")&&d?g.push(new wb({start:Q.token,end:Q.token})):g.push(sa(!1));return e(),g}function F(){var a=Q.token;switch(e(),a.type){case"num":case"string":case"name":case"operator":case"keyword":case"atom":return a.value;default:k()}}function G(){var a=Q.token;switch(e(),a.type){case"name":case"operator":case"keyword":case"atom":return a.value;default:k()}}function H(a){var b=Q.token.value;return new("this"==b?nb:a)({name:String(b),start:Q.token,end:Q.token})}function I(a,b){if(!c("name"))return b||h("Name expected"),null;var d=H(a);return e(),d}function J(a,b,c){return"++"!=b&&"--"!=b||O(c)||h("Invalid use of "+b+" operator"),new a({operator:b,expression:c})}function N(a){return ga(da(!0),0,a)}function O(a){return b.strict?a instanceof nb?!1:a instanceof Oa||a instanceof bb:!0}function P(a){++Q.in_loop;var b=a();return--Q.in_loop,b}b=j(b,{strict:!1,filename:null,toplevel:null,expression:!1,html5_comments:!0,bare_returns:!1});var Q={input:"string"==typeof a?M(a,b.filename,b.html5_comments):a,token:null,prev:null,peeked:null,in_function:0,in_directives:!0,in_loop:0,labels:[]};Q.token=e();var R=q(function(){var a;switch(r(),Q.token.type){case"string":var g=Q.in_directives,i=t();return g&&i.body instanceof pb&&!c("punc",",")?new $({start:i.body.start,end:i.body.end,quote:i.body.quote,value:i.body.value}):i;case"num":case"regexp":case"operator":case"atom":return t();case"name":return L(d(),"punc",":")?s():t();case"punc":switch(Q.token.value){case"{":return new ba({start:Q.token,body:z(),end:f()});case"[":case"(":return t();case";":return e(),new ca;default:k()}case"keyword":switch(a=Q.token.value,e(),a){case"break":return u(xa);case"continue":return u(ya);case"debugger":return o(),new Z;case"do":return new ha({body:P(R),condition:(l("keyword","while"),a=p(),o(),a)});case"while":return new ia({condition:p(),body:P(R)});case"for":return v();case"function":return S(ra);case"if":return y();case"return":return 0!=Q.in_function||b.bare_returns||h("'return' outside of function"),new ua({value:c("punc",";")?(e(),null):n()?null:(a=sa(!0),o(),a)});case"switch":return new Aa({expression:p(),body:P(A)});case"throw":return Q.token.nlb&&h("Illegal newline after 'throw'"),new va({value:(a=sa(!0),o(),a)});case"try":return B();case"var":return a=T(),o(),a;case"const":return a=U(),o(),a;case"with":return new la({expression:p(),body:R()});default:k()}}}),S=function(a){var b=a===ra,d=c("name")?I(b?hb:ib):null;return b&&!d&&k(),m("("),new a({name:d,argnames:function(a,b){for(;!c("punc",")");)a?a=!1:m(","),b.push(I(gb));return e(),b}(!0,[]),body:function(a,b){++Q.in_function,Q.in_directives=!0,Q.in_loop=0,Q.labels=[];var c=z();return--Q.in_function,Q.in_loop=a,Q.labels=b,c}(Q.in_loop,Q.labels)})},T=function(a){return new Ia({start:f(),definitions:C(a,!1),end:f()})},U=function(){return new Ja({start:f(),definitions:C(!1,!0),end:f()})},V=function(){var a=Q.token;l("operator","new");var b,d=W(!1);return c("punc","(")?(e(),b=E(")")):b=[],aa(new Ma({start:a,expression:d,args:b,end:f()}),!0)},W=function(a){if(c("operator","new"))return V();var b=Q.token;if(c("punc")){switch(b.value){case"(":e();var d=sa(!0);return d.start=b,d.end=Q.token,m(")"),aa(d,a);case"[":return aa(X(),a);case"{":return aa(Y(),a)}k()}if(c("keyword","function")){e();var g=S(qa);return g.start=b,g.end=f(),aa(g,a)}return Vb[Q.token.type]?aa(D(),a):void k()},X=q(function(){return m("["),new Xa({elements:E("]",!b.strict,!0)})}),Y=q(function(){m("{");for(var a=!0,d=[];!c("punc","}")&&(a?a=!1:m(","),b.strict||!c("punc","}"));){var g=Q.token,h=g.type,i=F();if("name"==h&&!c("punc",":")){if("get"==i){d.push(new ab({start:g,key:D(),value:S(pa),end:f()}));continue}if("set"==i){d.push(new _a({start:g,key:D(),value:S(pa),end:f()}));continue}}m(":"),d.push(new $a({start:g,quote:g.quote,key:i,value:sa(!1),end:f()}))}return e(),new Ya({properties:d})}),aa=function(a,b){var d=a.start;if(c("punc","."))return e(),aa(new Pa({start:d,expression:a,property:G(),end:f()}),b);if(c("punc","[")){e();var g=sa(!0);return m("]"),aa(new Qa({start:d,expression:a,property:g,end:f()}),b)}return b&&c("punc","(")?(e(),aa(new La({start:d,expression:a,args:E(")"),end:f()}),!0)):a},da=function(a){var b=Q.token;if(c("operator")&&Qb(b.value)){e(),r();var d=J(Sa,b.value,da(a));return d.start=b,d.end=f(),d}for(var g=W(a);c("operator")&&Rb(Q.token.value)&&!Q.token.nlb;)g=J(Ta,Q.token.value,g),g.start=b,g.end=Q.token,e();return g},ga=function(a,b,d){var f=c("operator")?Q.token.value:null;"in"==f&&d&&(f=null);var g=null!=f?Tb[f]:null;if(null!=g&&g>b){e();var h=ga(da(!0),g,d);return ga(new Ua({start:a.start,left:a,operator:f,right:h,end:h.end}),b,d)}return a},ma=function(a){var b=Q.token,d=N(a);if(c("operator","?")){e();var g=sa(!1);return m(":"),new Va({start:b,condition:d,consequent:g,alternative:sa(!1,a),end:f()})}return d},oa=function(a){var b=Q.token,d=ma(a),g=Q.token.value;if(c("operator")&&Sb(g)){if(O(d))return e(),new Wa({start:b,left:d,operator:g,right:oa(a),end:f()});h("Invalid assignment")}return d},sa=function(a,b){var f=Q.token,g=oa(b);return a&&c("punc",",")?(e(),new Na({start:f,car:g,cdr:sa(!0,b),end:d()})):g};return b.expression?sa(!0):function(){for(var a=Q.token,d=[];!c("eof");)d.push(R());var e=f(),g=b.toplevel;return g?(g.body=g.body.concat(d),g.end=e):g=new na({start:a,body:d,end:e}),g}()}function O(a,b){x.call(this),this.before=a,this.after=b}function P(a,b,c){this.name=c.name,this.orig=[c],this.scope=a,this.references=[],this.global=!1,this.mangled_name=null,this.undeclared=!1,this.constant=!1,this.index=b}function Q(a){function b(a,b){return a.replace(/[\u0080-\uffff]/g,function(a){var c=a.charCodeAt(0).toString(16);if(c.length<=2&&!b){for(;c.length<2;)c="0"+c;return"\\x"+c}for(;c.length<4;)c="0"+c;return"\\u"+c})}function c(c,d){function e(){return"'"+c.replace(/\x27/g,"\\'")+"'"}function f(){return'"'+c.replace(/\x22/g,'\\"')+'"'}var g=0,h=0;switch(c=c.replace(/[\\\b\f\n\r\t\x22\x27\u2028\u2029\0\ufeff]/g,function(a){switch(a){case"\\":return"\\\\";case"\b":return"\\b";case"\f":return"\\f";case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";case'"':return++g,'"';case"'":return++h,"'";case"\x00":return"\\x00";case"\ufeff":return"\\ufeff"}return a}),a.ascii_only&&(c=b(c)),a.quote_style){case 1:return e();case 2:return f();case 3:return"'"==d?e():f();default:return g>h?e():f()}}function d(b,d){var e=c(b,d);return a.inline_script&&(e=e.replace(/<\x2fscript([>\/\t\n\f\r ])/gi,"<\\/script$1")),e}function e(c){return c=c.toString(),a.ascii_only&&(c=b(c,!0)),c}function f(b){return h(" ",a.indent_start+v-b*a.indent_level)}function g(){return C.charAt(C.length-1)}function i(){a.max_line_len&&w>a.max_line_len&&k("\n")}function k(b){b=String(b);var c=b.charAt(0);if(B&&(c&&!(";}".indexOf(c)<0)||/[;]$/.test(C)||(a.semicolons||D(c)?(z+=";",w++,y++):(z+="\n",y++,x++,w=0),a.beautify||(A=!1)),B=!1),!a.beautify&&a.preserve_line&&L[L.length-1])for(var d=L[L.length-1].start.line;d>x;)z+="\n",y++,x++,w=0,A=!1;if(A){var e=g();(G(e)&&(G(c)||"\\"==c)||/^[\+\-\/]$/.test(c)&&c==e)&&(z+=" ",w++,y++),A=!1}var f=b.split(/\r?\n/),h=f.length-1;x+=h,0==h?w+=f[h].length:w=f[h].length,y+=b.length,C=b,z+=b}function m(){B=!1,k(";")}function n(){ -return v+a.indent_level}function o(a){var b;return k("{"),I(),H(n(),function(){b=a()}),F(),k("}"),b}function p(a){k("(");var b=a();return k(")"),b}function q(a){k("[");var b=a();return k("]"),b}function r(){k(","),E()}function t(){k(":"),a.space_colon&&E()}function u(){return z}a=j(a,{indent_start:0,indent_level:4,quote_keys:!1,space_colon:!0,ascii_only:!1,unescape_regexps:!1,inline_script:!1,width:80,max_line_len:32e3,beautify:!1,source_map:null,bracketize:!1,semicolons:!0,comments:!1,preserve_line:!1,screw_ie8:!1,preamble:null,quote_style:0},!0);var v=0,w=0,x=1,y=0,z="",A=!1,B=!1,C=null,D=s("( [ + * / - , ."),E=a.beautify?function(){k(" ")}:function(){A=!0},F=a.beautify?function(b){a.beautify&&k(f(b?.5:0))}:l,H=a.beautify?function(a,b){a===!0&&(a=n());var c=v;v=a;var d=b();return v=c,d}:function(a,b){return b()},I=a.beautify?function(){k("\n")}:i,J=a.beautify?function(){k(";")}:function(){B=!0},K=a.source_map?function(b,c){try{b&&a.source_map.add(b.file||"?",x,w,b.line,b.col,c||"name"!=b.type?c:b.value)}catch(d){X.warn("Couldn't figure out mapping for {file}:{line},{col} → {cline},{ccol} [{name}]",{file:b.file,line:b.line,col:b.col,cline:x,ccol:w,name:c||""})}}:l;a.preamble&&k(a.preamble.replace(/\r\n?|[\n\u2028\u2029]|\s*$/g,"\n"));var L=[];return{get:u,toString:u,indent:F,indentation:function(){return v},current_width:function(){return w-v},should_break:function(){return a.width&&this.current_width()>=a.width},newline:I,print:k,space:E,comma:r,colon:t,last:function(){return C},semicolon:J,force_semicolon:m,to_ascii:b,print_name:function(a){k(e(a))},print_string:function(a,b){k(d(a,b))},next_indent:n,with_indent:H,with_block:o,with_parens:p,with_square:q,add_mapping:K,option:function(b){return a[b]},line:function(){return x},col:function(){return w},pos:function(){return y},push_node:function(a){L.push(a)},pop_node:function(){return L.pop()},stack:function(){return L},parent:function(a){return L[L.length-2-(a||0)]}}}function R(a,b){return this instanceof R?(O.call(this,this.before,this.after),void(this.options=j(a,{sequences:!b,properties:!b,dead_code:!b,drop_debugger:!b,unsafe:!1,unsafe_comps:!1,conditionals:!b,comparisons:!b,evaluate:!b,booleans:!b,loops:!b,unused:!b,hoist_funs:!b,keep_fargs:!1,keep_fnames:!1,hoist_vars:!1,if_return:!b,join_vars:!b,cascade:!b,side_effects:!b,pure_getters:!1,pure_funcs:null,negate_iife:!b,screw_ie8:!1,drop_console:!1,angular:!1,warnings:!0,global_defs:{}},!0))):new R(a,b)}function S(a){function b(b,e,f,g,h,i){if(d){var j=d.originalPositionFor({line:g,column:h});if(null===j.source)return;b=j.source,g=j.line,h=j.column,i=j.name||i}c.addMapping({generated:{line:e+a.dest_line_diff,column:f},original:{line:g+a.orig_line_diff,column:h},source:b,name:i})}a=j(a,{file:null,root:null,orig:null,orig_line_diff:0,dest_line_diff:0});var c,d=a.orig&&new MOZ_SourceMap.SourceMapConsumer(a.orig);return c=d?MOZ_SourceMap.SourceMapGenerator.fromSourceMap(d):new MOZ_SourceMap.SourceMapGenerator({file:a.file,sourceRoot:a.root}),{add:b,get:function(){return c},toString:function(){return JSON.stringify(c.toJSON())}}}function T(){function a(a){m(b,a)}var b=[];return[Object,Array,Function,Number,String,Boolean,Error,Math,Date,RegExp].forEach(function(b){Object.getOwnPropertyNames(b).map(a),b.prototype&&Object.getOwnPropertyNames(b.prototype).map(a)}),b}function U(a,b){function c(a){return i.indexOf(a)>=0?!1:b.only_cache?k.props.has(a):/^[0-9.]+$/.test(a)?!1:!0}function d(a){return i.indexOf(a)>=0?!1:k.props.has(a)||l.indexOf(a)>=0}function e(a){c(a)&&m(l,a)}function f(a){var b=k.props.get(a);if(!b){do b=Wb(++k.cname);while(!c(b));k.props.set(a,b)}return b}function g(a){var b={};try{!function d(a){a.walk(new x(function(a){if(a instanceof Na)return d(a.cdr),!0;if(a instanceof pb)return e(a.value),!0;if(a instanceof Va)return d(a.consequent),d(a.alternative),!0;throw b}))}(a)}catch(c){if(c!==b)throw c}}function h(a){return a.transform(new O(function(a){return a instanceof Na?a.cdr=h(a.cdr):a instanceof pb?d(a.value)&&(a.value=f(a.value)):a instanceof Va&&(a.consequent=h(a.consequent),a.alternative=h(a.alternative)),a}))}b=j(b,{reserved:null,cache:null,only_cache:!1});var i=b.reserved;null==i&&(i=T());var k=b.cache;null==k&&(k={cname:-1,props:new u});var l=[];return a.walk(new x(function(a){a instanceof $a?e(a.key):a instanceof Za?e(a.key.name):a instanceof Pa?this.parent()instanceof Wa&&e(a.property):a instanceof Qa&&this.parent()instanceof Wa&&g(a.property)})),a.transform(new O(function(a){a instanceof $a?d(a.key)&&(a.key=f(a.key)):a instanceof Za?d(a.key.name)&&(a.key.name=f(a.key.name)):a instanceof Pa?d(a.property)&&(a.property=f(a.property)):a instanceof Qa&&(a.property=h(a.property))}))}b.UglifyJS=a,i.prototype=Object.create(Error.prototype),i.prototype.constructor=i,i.croak=function(a,b){throw new i(a,b)};var V=function(){function a(a,f,g){function h(){var h=f(a[i],i),l=h instanceof d;return l&&(h=h.v),h instanceof b?(h=h.v,h instanceof c?k.push.apply(k,g?h.v.slice().reverse():h.v):k.push(h)):h!==e&&(h instanceof c?j.push.apply(j,g?h.v.slice().reverse():h.v):j.push(h)),l}var i,j=[],k=[];if(a instanceof Array)if(g){for(i=a.length;--i>=0&&!h(););j.reverse(),k.reverse()}else for(i=0;i SymbolDef for all variables/functions defined in this scope",functions:"[Object/S] like `variables`, but only lists function declarations",uses_with:"[boolean/S] tells whether this scope uses the `with` statement",uses_eval:"[boolean/S] tells whether this scope contains a direct call to the global `eval`",parent_scope:"[AST_Scope?/S] link to the parent scope",enclosed:"[SymbolDef*/S] a list of all symbol definitions that are accessed from this scope or any subscopes",cname:"[integer/S] current index for mangling variables (used internally by the mangler)"}},aa),na=v("Toplevel","globals",{$documentation:"The toplevel scope",$propdoc:{globals:"[Object/S] a map of name -> SymbolDef for all undeclared names"},wrap_enclose:function(a){var b=this,c=[],d=[];a.forEach(function(a){var b=a.lastIndexOf(":");c.push(a.substr(0,b)),d.push(a.substr(b+1))});var e="(function("+d.join(",")+"){ '$ORIG'; })("+c.join(",")+")";return e=N(e),e=e.transform(new O(function(a){return a instanceof $&&"$ORIG"==a.value?V.splice(b.body):void 0}))},wrap_commonjs:function(a,b){var c=this,d=[];b&&(c.figure_out_scope(),c.walk(new x(function(a){a instanceof db&&a.definition().global&&(g(function(b){return b.name==a.name},d)||d.push(a))})));var e="(function(exports, global){ global['"+a+"'] = exports; '$ORIG'; '$EXPORTS'; }({}, (function(){return this}())))";return e=N(e),e=e.transform(new O(function(a){if(a instanceof _&&(a=a.body,a instanceof pb))switch(a.getValue()){case"$ORIG":return V.splice(c.body);case"$EXPORTS":var b=[];return d.forEach(function(a){b.push(new _({body:new Wa({left:new Qa({expression:new lb({name:"exports"}),property:new pb({value:a.name})}),operator:"=",right:new lb(a)})}))}),V.splice(b)}}))}},ma),oa=v("Lambda","name argnames uses_arguments",{$documentation:"Base class for functions",$propdoc:{name:"[AST_SymbolDeclaration?] the name of this function",argnames:"[AST_SymbolFunarg*] array of function arguments",uses_arguments:"[boolean/S] tells whether this function accesses the arguments array"},_walk:function(a){return a._visit(this,function(){this.name&&this.name._walk(a),this.argnames.forEach(function(b){b._walk(a)}),w(this,a)})}},ma),pa=v("Accessor",null,{$documentation:"A setter/getter function. The `name` property is always null."},oa),qa=v("Function",null,{$documentation:"A function expression"},oa),ra=v("Defun",null,{$documentation:"A function definition"},oa),sa=v("Jump",null,{$documentation:"Base class for “jumps” (for now that's `return`, `throw`, `break` and `continue`)"},Y),ta=v("Exit","value",{$documentation:"Base class for “exits” (`return` and `throw`)",$propdoc:{value:"[AST_Node?] the value returned or thrown by this statement; could be null for AST_Return"},_walk:function(a){return a._visit(this,this.value&&function(){this.value._walk(a)})}},sa),ua=v("Return",null,{$documentation:"A `return` statement"},ta),va=v("Throw",null,{$documentation:"A `throw` statement"},ta),wa=v("LoopControl","label",{$documentation:"Base class for loop control statements (`break` and `continue`)",$propdoc:{label:"[AST_LabelRef?] the label, or null if none"},_walk:function(a){return a._visit(this,this.label&&function(){this.label._walk(a)})}},sa),xa=v("Break",null,{$documentation:"A `break` statement"},wa),ya=v("Continue",null,{$documentation:"A `continue` statement"},wa),za=v("If","condition alternative",{$documentation:"A `if` statement",$propdoc:{condition:"[AST_Node] the `if` condition",alternative:"[AST_Statement?] the `else` part, or null if not present"},_walk:function(a){return a._visit(this,function(){this.condition._walk(a),this.body._walk(a),this.alternative&&this.alternative._walk(a)})}},da),Aa=v("Switch","expression",{$documentation:"A `switch` statement",$propdoc:{expression:"[AST_Node] the `switch` “discriminant”"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),w(this,a)})}},aa),Ba=v("SwitchBranch",null,{$documentation:"Base class for `switch` branches"},aa),Ca=v("Default",null,{$documentation:"A `default` switch branch"},Ba),Da=v("Case","expression",{$documentation:"A `case` switch branch",$propdoc:{expression:"[AST_Node] the `case` expression"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),w(this,a)})}},Ba),Ea=v("Try","bcatch bfinally",{$documentation:"A `try` statement",$propdoc:{bcatch:"[AST_Catch?] the catch block, or null if not present",bfinally:"[AST_Finally?] the finally block, or null if not present"},_walk:function(a){return a._visit(this,function(){w(this,a),this.bcatch&&this.bcatch._walk(a),this.bfinally&&this.bfinally._walk(a)})}},aa),Fa=v("Catch","argname",{$documentation:"A `catch` node; only makes sense as part of a `try` statement",$propdoc:{argname:"[AST_SymbolCatch] symbol for the exception"},_walk:function(a){return a._visit(this,function(){this.argname._walk(a),w(this,a)})}},aa),Ga=v("Finally",null,{$documentation:"A `finally` node; only makes sense as part of a `try` statement"},aa),Ha=v("Definitions","definitions",{$documentation:"Base class for `var` or `const` nodes (variable declarations/initializations)",$propdoc:{definitions:"[AST_VarDef*] array of variable definitions"},_walk:function(a){return a._visit(this,function(){this.definitions.forEach(function(b){b._walk(a)})})}},Y),Ia=v("Var",null,{$documentation:"A `var` statement"},Ha),Ja=v("Const",null,{$documentation:"A `const` statement"},Ha),Ka=v("VarDef","name value",{$documentation:"A variable declaration; only appears in a AST_Definitions node",$propdoc:{name:"[AST_SymbolVar|AST_SymbolConst] name of the variable",value:"[AST_Node?] initializer, or null of there's no initializer"},_walk:function(a){return a._visit(this,function(){this.name._walk(a),this.value&&this.value._walk(a)})}}),La=v("Call","expression args",{$documentation:"A function call expression",$propdoc:{expression:"[AST_Node] expression to invoke as function",args:"[AST_Node*] array of arguments"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),this.args.forEach(function(b){b._walk(a)})})}}),Ma=v("New",null,{$documentation:"An object instantiation. Derives from a function call since it has exactly the same properties"},La),Na=v("Seq","car cdr",{$documentation:"A sequence expression (two comma-separated expressions)",$propdoc:{car:"[AST_Node] first element in sequence",cdr:"[AST_Node] second element in sequence"},$cons:function(a,b){var c=new Na(a);return c.car=a,c.cdr=b,c},$from_array:function(a){if(0==a.length)return null;if(1==a.length)return a[0].clone();for(var b=null,c=a.length;--c>=0;)b=Na.cons(a[c],b);for(var d=b;d;){if(d.cdr&&!d.cdr.cdr){d.cdr=d.cdr.car;break}d=d.cdr}return b},to_array:function(){for(var a=this,b=[];a;){if(b.push(a.car),a.cdr&&!(a.cdr instanceof Na)){b.push(a.cdr);break}a=a.cdr}return b},add:function(a){for(var b=this;b;){if(!(b.cdr instanceof Na)){var c=Na.cons(b.cdr,a);return b.cdr=c}b=b.cdr}},_walk:function(a){return a._visit(this,function(){this.car._walk(a),this.cdr&&this.cdr._walk(a)})}}),Oa=v("PropAccess","expression property",{$documentation:'Base class for property access expressions, i.e. `a.foo` or `a["foo"]`',$propdoc:{expression:"[AST_Node] the “container” expression",property:"[AST_Node|string] the property to access. For AST_Dot this is always a plain string, while for AST_Sub it's an arbitrary AST_Node"}}),Pa=v("Dot",null,{$documentation:"A dotted property access expression",_walk:function(a){return a._visit(this,function(){this.expression._walk(a)})}},Oa),Qa=v("Sub",null,{$documentation:'Index-style property access, i.e. `a["foo"]`',_walk:function(a){return a._visit(this,function(){this.expression._walk(a),this.property._walk(a)})}},Oa),Ra=v("Unary","operator expression",{$documentation:"Base class for unary expressions",$propdoc:{operator:"[string] the operator",expression:"[AST_Node] expression that this unary operator applies to"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a)})}}),Sa=v("UnaryPrefix",null,{$documentation:"Unary prefix expression, i.e. `typeof i` or `++i`"},Ra),Ta=v("UnaryPostfix",null,{$documentation:"Unary postfix expression, i.e. `i++`"},Ra),Ua=v("Binary","left operator right",{$documentation:"Binary expression, i.e. `a + b`",$propdoc:{left:"[AST_Node] left-hand side expression",operator:"[string] the operator",right:"[AST_Node] right-hand side expression"},_walk:function(a){return a._visit(this,function(){this.left._walk(a),this.right._walk(a)})}}),Va=v("Conditional","condition consequent alternative",{$documentation:"Conditional expression using the ternary operator, i.e. `a ? b : c`",$propdoc:{condition:"[AST_Node]",consequent:"[AST_Node]",alternative:"[AST_Node]"},_walk:function(a){return a._visit(this,function(){this.condition._walk(a),this.consequent._walk(a),this.alternative._walk(a)})}}),Wa=v("Assign",null,{$documentation:"An assignment expression — `a = b + 5`"},Ua),Xa=v("Array","elements",{$documentation:"An array literal",$propdoc:{elements:"[AST_Node*] array of elements"},_walk:function(a){return a._visit(this,function(){this.elements.forEach(function(b){b._walk(a)})})}}),Ya=v("Object","properties",{$documentation:"An object literal",$propdoc:{properties:"[AST_ObjectProperty*] array of properties"},_walk:function(a){return a._visit(this,function(){this.properties.forEach(function(b){b._walk(a)})})}}),Za=v("ObjectProperty","key value",{$documentation:"Base class for literal object properties",$propdoc:{key:"[string] the property name converted to a string for ObjectKeyVal. For setters and getters this is an arbitrary AST_Node.",value:"[AST_Node] property value. For setters and getters this is an AST_Function."},_walk:function(a){return a._visit(this,function(){this.value._walk(a)})}}),$a=v("ObjectKeyVal","quote",{$documentation:"A key: value object property",$propdoc:{quote:"[string] the original quote character"}},Za),_a=v("ObjectSetter",null,{$documentation:"An object setter property"},Za),ab=v("ObjectGetter",null,{$documentation:"An object getter property"},Za),bb=v("Symbol","scope name thedef",{$propdoc:{name:"[string] name of this symbol",scope:"[AST_Scope/S] the current scope (not necessarily the definition scope)",thedef:"[SymbolDef/S] the definition of this symbol"},$documentation:"Base class for all symbols"}),cb=v("SymbolAccessor",null,{$documentation:"The name of a property accessor (setter/getter function)"},bb),db=v("SymbolDeclaration","init",{$documentation:"A declaration symbol (symbol in var/const, function name or argument, symbol in catch)",$propdoc:{init:"[AST_Node*/S] array of initializers for this declaration."}},bb),eb=v("SymbolVar",null,{$documentation:"Symbol defining a variable"},db),fb=v("SymbolConst",null,{$documentation:"A constant declaration"},db),gb=v("SymbolFunarg",null,{$documentation:"Symbol naming a function argument"},eb),hb=v("SymbolDefun",null,{$documentation:"Symbol defining a function"},db),ib=v("SymbolLambda",null,{$documentation:"Symbol naming a function expression"},db),jb=v("SymbolCatch",null,{$documentation:"Symbol naming the exception in catch"},db),kb=v("Label","references",{$documentation:"Symbol naming a label (declaration)",$propdoc:{references:"[AST_LoopControl*] a list of nodes referring to this label"},initialize:function(){this.references=[],this.thedef=this}},bb),lb=v("SymbolRef",null,{$documentation:"Reference to some symbol (not definition/declaration)"},bb),mb=v("LabelRef",null,{$documentation:"Reference to a label symbol"},bb),nb=v("This",null,{$documentation:"The `this` symbol"},bb),ob=v("Constant",null,{$documentation:"Base class for all constants",getValue:function(){return this.value}}),pb=v("String","value quote",{$documentation:"A string literal",$propdoc:{value:"[string] the contents of this string",quote:"[string] the original quote character"}},ob),qb=v("Number","value",{$documentation:"A number literal",$propdoc:{value:"[number] the numeric value"}},ob),rb=v("RegExp","value",{$documentation:"A regexp literal",$propdoc:{value:"[RegExp] the actual regexp"}},ob),sb=v("Atom",null,{$documentation:"Base class for atoms"},ob),tb=v("Null",null,{$documentation:"The `null` atom",value:null},sb),ub=v("NaN",null,{$documentation:"The impossible value",value:NaN},sb),vb=v("Undefined",null,{$documentation:"The `undefined` value",value:void 0},sb),wb=v("Hole",null,{$documentation:"A hole in an array",value:void 0},sb),xb=v("Infinity",null,{$documentation:"The `Infinity` value",value:1/0},sb),yb=v("Boolean",null,{$documentation:"Base class for booleans"},sb),zb=v("False",null,{$documentation:"The `false` atom",value:!1},yb),Ab=v("True",null,{$documentation:"The `true` atom",value:!0},yb);x.prototype={_visit:function(a,b){this.stack.push(a);var c=this.visit(a,b?function(){b.call(a)}:l);return!c&&b&&b.call(a),this.stack.pop(),c},parent:function(a){return this.stack[this.stack.length-2-(a||0)]},push:function(a){this.stack.push(a)},pop:function(){return this.stack.pop()},self:function(){return this.stack[this.stack.length-1]},find_parent:function(a){for(var b=this.stack,c=b.length;--c>=0;){var d=b[c];if(d instanceof a)return d}},has_directive:function(a){return this.find_parent(ma).has_directive(a)},in_boolean_context:function(){for(var a=this.stack,b=a.length,c=a[--b];b>0;){var d=a[--b];if(d instanceof za&&d.condition===c||d instanceof Va&&d.condition===c||d instanceof ga&&d.condition===c||d instanceof ja&&d.condition===c||d instanceof Sa&&"!"==d.operator&&d.expression===c)return!0;if(!(d instanceof Ua)||"&&"!=d.operator&&"||"!=d.operator)return!1;c=d}},loopcontrol_target:function(a){var b=this.stack;if(a)for(var c=b.length;--c>=0;){var d=b[c];if(d instanceof ea&&d.label.name==a.name)return d.body}else for(var c=b.length;--c>=0;){var d=b[c];if(d instanceof Aa||d instanceof fa)return d}}};var Bb="break case catch const continue debugger default delete do else finally for function if in instanceof new return switch throw try typeof var void while with",Cb="false null true",Db="abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized this throws transient volatile yield "+Cb+" "+Bb,Eb="return new delete throw else case";Bb=s(Bb),Db=s(Db),Eb=s(Eb),Cb=s(Cb);var Fb=s(e("+-*&%=<>!?|~^")),Gb=/^0x[0-9a-f]+$/i,Hb=/^0[0-7]+$/,Ib=/^\d*\.?\d*(?:e[+-]?\d*(?:\d\.?|\.?\d)\d*)?$/i,Jb=s(["in","instanceof","typeof","new","void","delete","++","--","+","-","!","~","&","|","^","*","/","%",">>","<<",">>>","<",">","<=",">=","==","===","!=","!==","?","=","+=","-=","/=","*=","%=",">>=","<<=",">>>=","|=","^=","&=","&&","||"]),Kb=s(e("  \n\r \f ​᠎              \ufeff")),Lb=s(e("[{(,.;:")),Mb=s(e("[]{}(),;:")),Nb=s(e("gmsiy")),Ob={letter:new RegExp("[\\u0041-\\u005A\\u0061-\\u007A\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B2\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]"),digit:new RegExp("[\\u0030-\\u0039\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0BE6-\\u0BEF\\u0C66-\\u0C6F\\u0CE6-\\u0CEF\\u0D66-\\u0D6F\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F29\\u1040-\\u1049\\u1090-\\u1099\\u17E0-\\u17E9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19D9\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\uA620-\\uA629\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19]"),non_spacing_mark:new RegExp("[\\u0300-\\u036F\\u0483-\\u0487\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u0610-\\u061A\\u064B-\\u065E\\u0670\\u06D6-\\u06DC\\u06DF-\\u06E4\\u06E7\\u06E8\\u06EA-\\u06ED\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0900-\\u0902\\u093C\\u0941-\\u0948\\u094D\\u0951-\\u0955\\u0962\\u0963\\u0981\\u09BC\\u09C1-\\u09C4\\u09CD\\u09E2\\u09E3\\u0A01\\u0A02\\u0A3C\\u0A41\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70\\u0A71\\u0A75\\u0A81\\u0A82\\u0ABC\\u0AC1-\\u0AC5\\u0AC7\\u0AC8\\u0ACD\\u0AE2\\u0AE3\\u0B01\\u0B3C\\u0B3F\\u0B41-\\u0B44\\u0B4D\\u0B56\\u0B62\\u0B63\\u0B82\\u0BC0\\u0BCD\\u0C3E-\\u0C40\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C62\\u0C63\\u0CBC\\u0CBF\\u0CC6\\u0CCC\\u0CCD\\u0CE2\\u0CE3\\u0D41-\\u0D44\\u0D4D\\u0D62\\u0D63\\u0DCA\\u0DD2-\\u0DD4\\u0DD6\\u0E31\\u0E34-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB4-\\u0EB9\\u0EBB\\u0EBC\\u0EC8-\\u0ECD\\u0F18\\u0F19\\u0F35\\u0F37\\u0F39\\u0F71-\\u0F7E\\u0F80-\\u0F84\\u0F86\\u0F87\\u0F90-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102D-\\u1030\\u1032-\\u1037\\u1039\\u103A\\u103D\\u103E\\u1058\\u1059\\u105E-\\u1060\\u1071-\\u1074\\u1082\\u1085\\u1086\\u108D\\u109D\\u135F\\u1712-\\u1714\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17B7-\\u17BD\\u17C6\\u17C9-\\u17D3\\u17DD\\u180B-\\u180D\\u18A9\\u1920-\\u1922\\u1927\\u1928\\u1932\\u1939-\\u193B\\u1A17\\u1A18\\u1A56\\u1A58-\\u1A5E\\u1A60\\u1A62\\u1A65-\\u1A6C\\u1A73-\\u1A7C\\u1A7F\\u1B00-\\u1B03\\u1B34\\u1B36-\\u1B3A\\u1B3C\\u1B42\\u1B6B-\\u1B73\\u1B80\\u1B81\\u1BA2-\\u1BA5\\u1BA8\\u1BA9\\u1C2C-\\u1C33\\u1C36\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE0\\u1CE2-\\u1CE8\\u1CED\\u1DC0-\\u1DE6\\u1DFD-\\u1DFF\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2CEF-\\u2CF1\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099\\u309A\\uA66F\\uA67C\\uA67D\\uA6F0\\uA6F1\\uA802\\uA806\\uA80B\\uA825\\uA826\\uA8C4\\uA8E0-\\uA8F1\\uA926-\\uA92D\\uA947-\\uA951\\uA980-\\uA982\\uA9B3\\uA9B6-\\uA9B9\\uA9BC\\uAA29-\\uAA2E\\uAA31\\uAA32\\uAA35\\uAA36\\uAA43\\uAA4C\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uABE5\\uABE8\\uABED\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE26]"), +n=c.bits,c.mode===V&&(c.back=-1);break}for(c.back=0;Aa=c.lencode[m&(1<>>24,ra=Aa>>>16&255,sa=65535&Aa,!(n>=qa);){if(0===i)break a;i--,m+=e[g++]<>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(n>=ta+qa);){if(0===i)break a;i--,m+=e[g++]<>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,c.length=sa,0===ra){c.mode=ha;break}if(32&ra){c.back=-1,c.mode=V;break}if(64&ra){a.msg="invalid literal/length code",c.mode=la;break}c.extra=15&ra,c.mode=da;case da:if(c.extra){for(za=c.extra;za>n;){if(0===i)break a;i--,m+=e[g++]<>>=c.extra,n-=c.extra,c.back+=c.extra}c.was=c.length,c.mode=ea;case ea:for(;Aa=c.distcode[m&(1<>>24,ra=Aa>>>16&255,sa=65535&Aa,!(n>=qa);){if(0===i)break a;i--,m+=e[g++]<>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(n>=ta+qa);){if(0===i)break a;i--,m+=e[g++]<>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,64&ra){a.msg="invalid distance code",c.mode=la;break}c.offset=sa,c.extra=15&ra,c.mode=fa;case fa:if(c.extra){for(za=c.extra;za>n;){if(0===i)break a;i--,m+=e[g++]<>>=c.extra,n-=c.extra,c.back+=c.extra}if(c.offset>c.dmax){a.msg="invalid distance too far back",c.mode=la;break}c.mode=ga;case ga:if(0===j)break a;if(q=p-j,c.offset>q){if(q=c.offset-q,q>c.whave&&c.sane){a.msg="invalid distance too far back",c.mode=la;break}q>c.wnext?(q-=c.wnext,oa=c.wsize-q):oa=c.wnext-q,q>c.length&&(q=c.length),pa=c.window}else pa=f,oa=h-c.offset,q=c.length;q>j&&(q=j),j-=q,c.length-=q;do f[h++]=pa[oa++];while(--q);0===c.length&&(c.mode=ca);break;case ha:if(0===j)break a;f[h++]=c.length,j--,c.mode=ca;break;case ia:if(c.wrap){for(;32>n;){if(0===i)break a;i--,m|=e[g++]<n;){if(0===i)break a;i--,m+=e[g++]<=D;D++)P[D]=0;for(E=0;o>E;E++)P[b[n+E]]++;for(H=C,G=d;G>=1&&0===P[G];G--);if(H>G&&(H=G),0===G)return p[q++]=20971520,p[q++]=20971520,s.bits=1,0;for(F=1;G>F&&0===P[F];F++);for(F>H&&(H=F),K=1,D=1;d>=D;D++)if(K<<=1,K-=P[D],0>K)return-1;if(K>0&&(a===g||1!==G))return-1;for(Q[1]=0,D=1;d>D;D++)Q[D+1]=Q[D]+P[D];for(E=0;o>E;E++)0!==b[n+E]&&(r[Q[b[n+E]]++]=E);if(a===g?(N=R=r,y=19):a===h?(N=j,O-=257,R=k,S-=257,y=256):(N=l,R=m,y=-1),M=0,E=0,D=F,x=q,I=H,J=0,v=-1,L=1<e||a===i&&L>f)return 1;for(var T=0;;){T++,z=D-J,r[E]y?(A=R[S+r[E]],B=N[O+r[E]]):(A=96,B=0),t=1<>J)+u]=z<<24|A<<16|B|0;while(0!==u);for(t=1<>=1;if(0!==t?(M&=t-1,M+=t):M=0,E++,0===--P[D]){if(D===G)break;D=b[n+r[E]]}if(D>H&&(M&w)!==v){for(0===J&&(J=H),x+=F,I=D-J,K=1<I+J&&(K-=P[I+J],!(0>=K));)I++,K<<=1;if(L+=1<e||a===i&&L>f)return 1;v=M&w,p[v]=H<<24|I<<16|x-q|0}}return 0!==M&&(p[x+M]=D-J<<24|64<<16|0),s.bits=H,0}},{"../utils/common":27}],37:[function(a,b){"use strict";b.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],38:[function(a,b,c){"use strict";function d(a){for(var b=a.length;--b>=0;)a[b]=0}function e(a){return 256>a?ga[a]:ga[256+(a>>>7)]}function f(a,b){a.pending_buf[a.pending++]=255&b,a.pending_buf[a.pending++]=b>>>8&255}function g(a,b,c){a.bi_valid>V-c?(a.bi_buf|=b<>V-a.bi_valid,a.bi_valid+=c-V):(a.bi_buf|=b<>>=1,c<<=1;while(--b>0);return c>>>1}function j(a){16===a.bi_valid?(f(a,a.bi_buf),a.bi_buf=0,a.bi_valid=0):a.bi_valid>=8&&(a.pending_buf[a.pending++]=255&a.bi_buf,a.bi_buf>>=8,a.bi_valid-=8)}function k(a,b){var c,d,e,f,g,h,i=b.dyn_tree,j=b.max_code,k=b.stat_desc.static_tree,l=b.stat_desc.has_stree,m=b.stat_desc.extra_bits,n=b.stat_desc.extra_base,o=b.stat_desc.max_length,p=0;for(f=0;U>=f;f++)a.bl_count[f]=0;for(i[2*a.heap[a.heap_max]+1]=0,c=a.heap_max+1;T>c;c++)d=a.heap[c],f=i[2*i[2*d+1]+1]+1,f>o&&(f=o,p++),i[2*d+1]=f,d>j||(a.bl_count[f]++,g=0,d>=n&&(g=m[d-n]),h=i[2*d],a.opt_len+=h*(f+g),l&&(a.static_len+=h*(k[2*d+1]+g)));if(0!==p){do{for(f=o-1;0===a.bl_count[f];)f--;a.bl_count[f]--,a.bl_count[f+1]+=2,a.bl_count[o]--,p-=2}while(p>0);for(f=o;0!==f;f--)for(d=a.bl_count[f];0!==d;)e=a.heap[--c],e>j||(i[2*e+1]!==f&&(a.opt_len+=(f-i[2*e+1])*i[2*e],i[2*e+1]=f),d--)}}function l(a,b,c){var d,e,f=new Array(U+1),g=0;for(d=1;U>=d;d++)f[d]=g=g+c[d-1]<<1;for(e=0;b>=e;e++){var h=a[2*e+1];0!==h&&(a[2*e]=i(f[h]++,h))}}function m(){var a,b,c,d,e,f=new Array(U+1);for(c=0,d=0;O-1>d;d++)for(ia[d]=c,a=0;a<1<<_[d];a++)ha[c++]=d;for(ha[c-1]=d,e=0,d=0;16>d;d++)for(ja[d]=e,a=0;a<1<>=7;R>d;d++)for(ja[d]=e<<7,a=0;a<1<=b;b++)f[b]=0;for(a=0;143>=a;)ea[2*a+1]=8,a++,f[8]++;for(;255>=a;)ea[2*a+1]=9,a++,f[9]++;for(;279>=a;)ea[2*a+1]=7,a++,f[7]++;for(;287>=a;)ea[2*a+1]=8,a++,f[8]++;for(l(ea,Q+1,f),a=0;R>a;a++)fa[2*a+1]=5,fa[2*a]=i(a,5);ka=new na(ea,_,P+1,Q,U),la=new na(fa,aa,0,R,U),ma=new na(new Array(0),ba,0,S,W)}function n(a){var b;for(b=0;Q>b;b++)a.dyn_ltree[2*b]=0;for(b=0;R>b;b++)a.dyn_dtree[2*b]=0;for(b=0;S>b;b++)a.bl_tree[2*b]=0;a.dyn_ltree[2*X]=1,a.opt_len=a.static_len=0,a.last_lit=a.matches=0}function o(a){a.bi_valid>8?f(a,a.bi_buf):a.bi_valid>0&&(a.pending_buf[a.pending++]=a.bi_buf),a.bi_buf=0,a.bi_valid=0}function p(a,b,c,d){o(a),d&&(f(a,c),f(a,~c)),E.arraySet(a.pending_buf,a.window,b,c,a.pending),a.pending+=c}function q(a,b,c,d){var e=2*b,f=2*c;return a[e]c;c++)0!==f[2*c]?(a.heap[++a.heap_len]=j=c,a.depth[c]=0):f[2*c+1]=0;for(;a.heap_len<2;)e=a.heap[++a.heap_len]=2>j?++j:0,f[2*e]=1,a.depth[e]=0,a.opt_len--,h&&(a.static_len-=g[2*e+1]);for(b.max_code=j,c=a.heap_len>>1;c>=1;c--)r(a,f,c);e=i;do c=a.heap[1],a.heap[1]=a.heap[a.heap_len--],r(a,f,1),d=a.heap[1],a.heap[--a.heap_max]=c,a.heap[--a.heap_max]=d,f[2*e]=f[2*c]+f[2*d],a.depth[e]=(a.depth[c]>=a.depth[d]?a.depth[c]:a.depth[d])+1,f[2*c+1]=f[2*d+1]=e,a.heap[1]=e++,r(a,f,1);while(a.heap_len>=2);a.heap[--a.heap_max]=a.heap[1],k(a,b),l(f,j,a.bl_count)}function u(a,b,c){var d,e,f=-1,g=b[1],h=0,i=7,j=4;for(0===g&&(i=138,j=3),b[2*(c+1)+1]=65535,d=0;c>=d;d++)e=g,g=b[2*(d+1)+1],++hh?a.bl_tree[2*e]+=h:0!==e?(e!==f&&a.bl_tree[2*e]++,a.bl_tree[2*Y]++):10>=h?a.bl_tree[2*Z]++:a.bl_tree[2*$]++,h=0,f=e,0===g?(i=138,j=3):e===g?(i=6,j=3):(i=7,j=4))}function v(a,b,c){var d,e,f=-1,i=b[1],j=0,k=7,l=4;for(0===i&&(k=138,l=3),d=0;c>=d;d++)if(e=i,i=b[2*(d+1)+1],!(++jj){do h(a,e,a.bl_tree);while(0!==--j)}else 0!==e?(e!==f&&(h(a,e,a.bl_tree),j--),h(a,Y,a.bl_tree),g(a,j-3,2)):10>=j?(h(a,Z,a.bl_tree),g(a,j-3,3)):(h(a,$,a.bl_tree),g(a,j-11,7));j=0,f=e,0===i?(k=138,l=3):e===i?(k=6,l=3):(k=7,l=4)}}function w(a){var b;for(u(a,a.dyn_ltree,a.l_desc.max_code),u(a,a.dyn_dtree,a.d_desc.max_code),t(a,a.bl_desc),b=S-1;b>=3&&0===a.bl_tree[2*ca[b]+1];b--);return a.opt_len+=3*(b+1)+5+5+4,b}function x(a,b,c,d){var e;for(g(a,b-257,5),g(a,c-1,5),g(a,d-4,4),e=0;d>e;e++)g(a,a.bl_tree[2*ca[e]+1],3);v(a,a.dyn_ltree,b-1),v(a,a.dyn_dtree,c-1)}function y(a){var b,c=4093624447;for(b=0;31>=b;b++,c>>>=1)if(1&c&&0!==a.dyn_ltree[2*b])return G;if(0!==a.dyn_ltree[18]||0!==a.dyn_ltree[20]||0!==a.dyn_ltree[26])return H;for(b=32;P>b;b++)if(0!==a.dyn_ltree[2*b])return H;return G}function z(a){pa||(m(),pa=!0),a.l_desc=new oa(a.dyn_ltree,ka),a.d_desc=new oa(a.dyn_dtree,la),a.bl_desc=new oa(a.bl_tree,ma),a.bi_buf=0,a.bi_valid=0,n(a)}function A(a,b,c,d){g(a,(J<<1)+(d?1:0),3),p(a,b,c,!0)}function B(a){g(a,K<<1,3),h(a,X,ea),j(a)}function C(a,b,c,d){var e,f,h=0;a.level>0?(a.strm.data_type===I&&(a.strm.data_type=y(a)),t(a,a.l_desc),t(a,a.d_desc),h=w(a),e=a.opt_len+3+7>>>3,f=a.static_len+3+7>>>3,e>=f&&(e=f)):e=f=c+5,e>=c+4&&-1!==b?A(a,b,c,d):a.strategy===F||f===e?(g(a,(K<<1)+(d?1:0),3),s(a,ea,fa)):(g(a,(L<<1)+(d?1:0),3),x(a,a.l_desc.max_code+1,a.d_desc.max_code+1,h+1),s(a,a.dyn_ltree,a.dyn_dtree)),n(a),d&&o(a)}function D(a,b,c){return a.pending_buf[a.d_buf+2*a.last_lit]=b>>>8&255,a.pending_buf[a.d_buf+2*a.last_lit+1]=255&b,a.pending_buf[a.l_buf+a.last_lit]=255&c,a.last_lit++,0===b?a.dyn_ltree[2*c]++:(a.matches++,b--,a.dyn_ltree[2*(ha[c]+P+1)]++,a.dyn_dtree[2*e(b)]++),a.last_lit===a.lit_bufsize-1}var E=a("../utils/common"),F=4,G=0,H=1,I=2,J=0,K=1,L=2,M=3,N=258,O=29,P=256,Q=P+1+O,R=30,S=19,T=2*Q+1,U=15,V=16,W=7,X=256,Y=16,Z=17,$=18,_=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],aa=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],ba=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],ca=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],da=512,ea=new Array(2*(Q+2));d(ea);var fa=new Array(2*R);d(fa);var ga=new Array(da);d(ga);var ha=new Array(N-M+1);d(ha);var ia=new Array(O);d(ia);var ja=new Array(R);d(ja);var ka,la,ma,na=function(a,b,c,d,e){this.static_tree=a,this.extra_bits=b,this.extra_base=c,this.elems=d,this.max_length=e,this.has_stree=a&&a.length},oa=function(a,b){this.dyn_tree=a,this.max_code=0,this.stat_desc=b},pa=!1;c._tr_init=z,c._tr_stored_block=A,c._tr_flush_block=C,c._tr_tally=D,c._tr_align=B},{"../utils/common":27}],39:[function(a,b){"use strict";function c(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}b.exports=c},{}]},{},[9])(9)}),function(a,b){function c(a){for(var b=Object.create(null),c=0;c=0;)if(b[c]==a)return!0;return!1}function g(a,b){for(var c=0,d=b.length;d>c;++c)if(a(b[c]))return b[c]}function h(a,b){if(0>=b)return"";if(1==b)return a;var c=h(a,b>>1);return c+=c,1&b&&(c+=a),c}function i(a,b){Error.call(this,a),this.msg=a,this.defs=b}function j(a,b,c){a===!0&&(a={});var d=a||{};if(c)for(var e in d)d.hasOwnProperty(e)&&!b.hasOwnProperty(e)&&i.croak("`"+e+"` is not a supported option",b);for(var e in b)b.hasOwnProperty(e)&&(d[e]=a&&a.hasOwnProperty(e)?a[e]:b[e]);return d}function k(a,b){var c=0;for(var d in b)b.hasOwnProperty(d)&&(a[d]=b[d],c++);return c}function l(){}function m(a,b){a.indexOf(b)<0&&a.push(b)}function n(a,b){return a.replace(/\{(.+?)\}/g,function(a,c){return b[c]})}function o(a,b){for(var c=a.length;--c>=0;)a[c]===b&&a.splice(c,1)}function p(a,b){function c(a,c){for(var d=[],e=0,f=0,g=0;e=0})}function s(a){function b(a){if(1==a.length)return c+="return str === "+JSON.stringify(a[0])+";";c+="switch(str){";for(var b=0;b3){d.sort(function(a,b){return b.length-a.length}),c+="switch(str.length){";for(var e=0;e=0;)if(!b(a[c]))return!1;return!0}function u(){this._values=Object.create(null),this._size=0}function v(a,b,c,d){arguments.length<4&&(d=X),b=b?b.split(/\s+/):[];var e=b;d&&d.PROPS&&(b=b.concat(d.PROPS));for(var f="return function AST_"+a+"(props){ if (props) { ",g=b.length;--g>=0;)f+="this."+b[g]+" = props."+b[g]+";";var h=d&&new d;(h&&h.initialize||c&&c.initialize)&&(f+="this.initialize();"),f+="}}";var i=new Function(f)();if(h&&(i.prototype=h,i.BASE=d),d&&d.SUBCLASSES.push(i),i.prototype.CTOR=i,i.PROPS=b||null,i.SELF_PROPS=e,i.SUBCLASSES=[],a&&(i.prototype.TYPE=i.TYPE=a),c)for(g in c)c.hasOwnProperty(g)&&(/^\$/.test(g)?i[g.substr(1)]=c[g]:i.prototype[g]=c[g]);return i.DEFMETHOD=function(a,b){this.prototype[a]=b},i}function w(a,b){a.body instanceof Y?a.body._walk(b):a.body.forEach(function(a){a._walk(b)})}function x(a){this.visit=a,this.stack=[]}function y(a){return a>=97&&122>=a||a>=65&&90>=a||a>=170&&Ob.letter.test(String.fromCharCode(a))}function z(a){return a>=48&&57>=a}function A(a){return z(a)||y(a)}function B(a){return Ob.digit.test(String.fromCharCode(a))}function C(a){return Ob.non_spacing_mark.test(a)||Ob.space_combining_mark.test(a)}function D(a){return Ob.connector_punctuation.test(a)}function E(a){return!Db(a)&&/^[a-z_$][a-z0-9_$]*$/i.test(a)}function F(a){return 36==a||95==a||y(a)}function G(a){var b=a.charCodeAt(0);return F(b)||z(b)||8204==b||8205==b||C(a)||D(a)||B(b)}function H(a){return/^[a-z_$][a-z0-9_$]*$/i.test(a)}function I(a){return Gb.test(a)?parseInt(a.substr(2),16):Hb.test(a)?parseInt(a.substr(1),8):Ib.test(a)?parseFloat(a):void 0}function J(a,b,c,d,e){this.message=a,this.filename=b,this.line=c,this.col=d,this.pos=e,this.stack=(new Error).stack}function K(a,b,c,d,e){throw new J(a,b,c,d,e)}function L(a,b,c){return a.type==b&&(null==c||a.value==c)}function M(a,b,c){function d(){return y.text.charAt(y.pos)}function e(a,b){var c=y.text.charAt(y.pos++);if(a&&!c)throw Pb;return"\r\n\u2028\u2029".indexOf(c)>=0?(y.newline_before=y.newline_before||!b,++y.line,y.col=0,b||"\r"!=c||"\n"!=d()||(++y.pos,c="\n")):++y.col,c}function f(a){for(;a-- >0;)e()}function g(a){return y.text.substr(y.pos,a.length)==a}function h(a,b){var c=y.text.indexOf(a,y.pos);if(b&&-1==c)throw Pb;return c}function i(){y.tokline=y.line,y.tokcol=y.col,y.tokpos=y.pos}function j(a,c,d){y.regex_allowed="operator"==a&&!Rb(c)||"keyword"==a&&Eb(c)||"punc"==a&&Lb(c),B="punc"==a&&"."==c;var e={type:a,value:c,line:y.tokline,col:y.tokcol,pos:y.tokpos,endline:y.line,endcol:y.col,endpos:y.pos,nlb:y.newline_before,file:b};if(!d){e.comments_before=y.comments_before,y.comments_before=[];for(var f=0,g=e.comments_before.length;g>f;f++)e.nlb=e.nlb||e.comments_before[f].nlb}return y.newline_before=!1,new W(e)}function k(){for(var a;Kb(a=d())||"\u2028"==a||"\u2029"==a;)e()}function l(a){for(var b,c="",f=0;(b=d())&&a(b,f++);)c+=e();return c}function m(a){K(a,b,y.tokline,y.tokcol,y.tokpos)}function n(a){var b=!1,c=!1,d=!1,e="."==a,f=l(function(f,g){var h=f.charCodeAt(0);switch(h){case 120:case 88:return d?!1:d=!0;case 101:case 69:return d?!0:b?!1:b=c=!0;case 45:return c||0==g&&!a;case 43:return c;case c=!1,46:return e||d||b?!1:e=!0}return A(h)});a&&(f=a+f);var g=I(f);return isNaN(g)?void m("Invalid syntax: "+f):j("num",g)}function o(a){var b=e(!0,a);switch(b.charCodeAt(0)){case 110:return"\n";case 114:return"\r";case 116:return" ";case 98:return"\b";case 118:return"\x0B";case 102:return"\f";case 48:return"\x00";case 120:return String.fromCharCode(p(2));case 117:return String.fromCharCode(p(4));case 10:return"";case 13:if("\n"==d())return e(!0,a),""}return b}function p(a){for(var b=0;a>0;--a){var c=parseInt(e(!0),16);isNaN(c)&&m("Invalid hex-character pattern in string"),b=b<<4|c}return b}function q(a){var b,c=y.regex_allowed,d=h("\n");return-1==d?(b=y.text.substr(y.pos),y.pos=y.text.length):(b=y.text.substring(y.pos,d),y.pos=d),y.col=y.tokcol+(y.pos-y.tokpos),y.comments_before.push(j(a,b,!0)),y.regex_allowed=c,x()}function r(){for(var a,b,c=!1,f="",g=!1;null!=(a=d());)if(c)"u"!=a&&m("Expecting UnicodeEscapeSequence -- uXXXX"),a=o(),G(a)||m("Unicode char: "+a.charCodeAt(0)+" is not valid in identifier"),f+=a,c=!1;else if("\\"==a)g=c=!0,e();else{if(!G(a))break;f+=e()}return Bb(f)&&g&&(b=f.charCodeAt(0).toString(16).toUpperCase(),f="\\u"+"0000".substr(b.length)+b+f.slice(1)),f}function s(a){function b(a){if(!d())return a;var c=a+d();return Jb(c)?(e(),b(c)):a}return j("operator",b(a||e()))}function t(){switch(e(),d()){case"/":return e(),q("comment1");case"*":return e(),D()}return y.regex_allowed?E(""):s("/")}function u(){return e(),z(d().charCodeAt(0))?n("."):j("punc",".")}function v(){var a=r();return B?j("name",a):Cb(a)?j("atom",a):Bb(a)?Jb(a)?j("operator",a):j("keyword",a):j("name",a)}function w(a,b){return function(c){try{return b(c)}catch(d){if(d!==Pb)throw d;m(a)}}}function x(a){if(null!=a)return E(a);if(k(),i(),c){if(g("")&&y.newline_before)return f(3),q("comment4")}var b=d();if(!b)return j("eof");var h=b.charCodeAt(0);switch(h){case 34:case 39:return C(b);case 46:return u();case 47:return t()}return z(h)?n():Mb(b)?j("punc",e()):Fb(b)?s():92==h||F(h)?v():void m("Unexpected character '"+b+"'")}var y={text:a,filename:b,pos:0,tokpos:0,line:1,tokline:0,col:0,tokcol:0,newline_before:!1,regex_allowed:!1,comments_before:[]},B=!1,C=w("Unterminated string constant",function(a){for(var b=e(),c="";;){var d=e(!0,!0);if("\\"==d){var f=0,g=null;d=l(function(a){if(a>="0"&&"7">=a){if(!g)return g=a,++f;if("3">=g&&2>=f)return++f;if(g>="4"&&1>=f)return++f}return!1}),d=f>0?String.fromCharCode(parseInt(d,8)):o(!0)}else if(d==b)break;c+=d}var h=j("string",c);return h.quote=a,h}),D=w("Unterminated multiline comment",function(){var a=y.regex_allowed,b=h("*/",!0),c=y.text.substring(y.pos,b),d=c.split("\n"),e=d.length;y.pos=b+2,y.line+=e-1,e>1?y.col=d[e-1].length:y.col+=d[e-1].length,y.col+=2;var f=y.newline_before=y.newline_before||c.indexOf("\n")>=0;return y.comments_before.push(j("comment2",c,!0)),y.regex_allowed=a,y.newline_before=f,x()}),E=w("Unterminated regular expression",function(a){for(var b,c=!1,d=!1;b=e(!0);)if(c)a+="\\"+b,c=!1;else if("["==b)d=!0,a+=b;else if("]"==b&&d)d=!1,a+=b;else{if("/"==b&&!d)break;"\\"==b?c=!0:a+=b}var f=r();return j("regexp",new RegExp(a,f))});return x.context=function(a){return a&&(y=a),y},x}function N(a,b){function c(a,b){return L(Q.token,a,b)}function d(){return Q.peeked||(Q.peeked=Q.input())}function e(){return Q.prev=Q.token,Q.peeked?(Q.token=Q.peeked,Q.peeked=null):Q.token=Q.input(),Q.in_directives=Q.in_directives&&("string"==Q.token.type||c("punc",";")),Q.token}function f(){return Q.prev}function h(a,b,c,d){var e=Q.input.context();K(a,e.filename,null!=b?b:e.tokline,null!=c?c:e.tokcol,null!=d?d:e.tokpos)}function i(a,b){h(b,a.line,a.col)}function k(a){null==a&&(a=Q.token),i(a,"Unexpected token: "+a.type+" ("+a.value+")")}function l(a,b){return c(a,b)?e():void i(Q.token,"Unexpected token "+Q.token.type+" «"+Q.token.value+"», expected "+a+" «"+b+"»")}function m(a){return l("punc",a)}function n(){return!b.strict&&(Q.token.nlb||c("eof")||c("punc","}"))}function o(){c("punc",";")?e():n()||k()}function p(){m("(");var a=sa(!0);return m(")"),a}function q(a){return function(){var b=Q.token,c=a(),d=f();return c.start=b,c.end=d,c}}function r(){(c("operator","/")||c("operator","/="))&&(Q.peeked=null,Q.token=Q.input(Q.token.value.substr(1)))}function s(){var a=I(kb);g(function(b){return b.name==a.name},Q.labels)&&h("Label "+a.name+" defined twice"),m(":"),Q.labels.push(a);var b=R();return Q.labels.pop(),b instanceof fa||a.references.forEach(function(b){b instanceof ya&&(b=b.label.start,h("Continue label `"+a.name+"` refers to non-IterationStatement.",b.line,b.col,b.pos))}),new ea({body:b,label:a})}function t(a){return new _({body:(a=sa(!0),o(),a)})}function u(a){var b,c=null;n()||(c=I(mb,!0)),null!=c?(b=g(function(a){return a.name==c.name},Q.labels),b||h("Undefined label "+c.name),c.thedef=b):0==Q.in_loop&&h(a.TYPE+" not inside a loop or switch"),o();var d=new a({label:c});return b&&b.references.push(d),d}function v(){m("(");var a=null;return!c("punc",";")&&(a=c("keyword","var")?(e(),T(!0)):sa(!0,!0),c("operator","in"))?(a instanceof Ia&&a.definitions.length>1&&h("Only one variable declaration allowed in for..in loop"),e(),x(a)):w(a)}function w(a){m(";");var b=c("punc",";")?null:sa(!0);m(";");var d=c("punc",")")?null:sa(!0);return m(")"),new ja({init:a,condition:b,step:d,body:P(R)})}function x(a){var b=a instanceof Ia?a.definitions[0].name:null,c=sa(!0);return m(")"),new ka({init:a,name:b,object:c,body:P(R)})}function y(){var a=p(),b=R(),d=null;return c("keyword","else")&&(e(),d=R()),new za({condition:a,body:b,alternative:d})}function z(){m("{");for(var a=[];!c("punc","}");)c("eof")&&k(),a.push(R());return e(),a}function A(){m("{");for(var a,b=[],d=null,g=null;!c("punc","}");)c("eof")&&k(),c("keyword","case")?(g&&(g.end=f()),d=[],g=new Da({start:(a=Q.token,e(),a),expression:sa(!0),body:d}),b.push(g),m(":")):c("keyword","default")?(g&&(g.end=f()),d=[],g=new Ca({start:(a=Q.token,e(),m(":"),a),body:d}),b.push(g)):(d||k(),d.push(R()));return g&&(g.end=f()),e(),b}function B(){var a=z(),b=null,d=null;if(c("keyword","catch")){var g=Q.token;e(),m("(");var i=I(jb);m(")"),b=new Fa({start:g,argname:i,body:z(),end:f()})}if(c("keyword","finally")){var g=Q.token;e(),d=new Ga({start:g,body:z(),end:f()})}return b||d||h("Missing catch/finally blocks"),new Ea({body:a,bcatch:b,bfinally:d})}function C(a,b){for(var d=[];d.push(new Ka({start:Q.token,name:I(b?fb:eb),value:c("operator","=")?(e(),sa(!1,a)):null,end:f()})),c("punc",",");)e();return d}function D(){var a,b=Q.token;switch(b.type){case"name":case"keyword":a=H(lb);break;case"num":a=new qb({start:b,end:b,value:b.value});break;case"string":a=new pb({start:b,end:b,value:b.value,quote:b.quote});break;case"regexp":a=new rb({start:b,end:b,value:b.value});break;case"atom":switch(b.value){case"false":a=new zb({start:b,end:b});break;case"true":a=new Ab({start:b,end:b});break;case"null":a=new tb({start:b,end:b})}}return e(),a}function E(a,b,d){for(var f=!0,g=[];!c("punc",a)&&(f?f=!1:m(","),!b||!c("punc",a));)c("punc",",")&&d?g.push(new wb({start:Q.token,end:Q.token})):g.push(sa(!1));return e(),g}function F(){var a=Q.token;switch(e(),a.type){case"num":case"string":case"name":case"operator":case"keyword":case"atom":return a.value;default:k()}}function G(){var a=Q.token;switch(e(),a.type){case"name":case"operator":case"keyword":case"atom":return a.value;default:k()}}function H(a){var b=Q.token.value;return new("this"==b?nb:a)({name:String(b),start:Q.token,end:Q.token})}function I(a,b){if(!c("name"))return b||h("Name expected"),null;var d=H(a);return e(),d}function J(a,b,c){return"++"!=b&&"--"!=b||O(c)||h("Invalid use of "+b+" operator"),new a({operator:b,expression:c})}function N(a){return ga(da(!0),0,a)}function O(a){return b.strict?a instanceof nb?!1:a instanceof Oa||a instanceof bb:!0}function P(a){++Q.in_loop;var b=a();return--Q.in_loop,b}b=j(b,{strict:!1,filename:null,toplevel:null,expression:!1,html5_comments:!0,bare_returns:!1});var Q={input:"string"==typeof a?M(a,b.filename,b.html5_comments):a,token:null,prev:null,peeked:null,in_function:0,in_directives:!0,in_loop:0,labels:[]};Q.token=e();var R=q(function(){var a;switch(r(),Q.token.type){case"string":var g=Q.in_directives,i=t();return g&&i.body instanceof pb&&!c("punc",",")?new $({start:i.body.start,end:i.body.end,quote:i.body.quote,value:i.body.value}):i;case"num":case"regexp":case"operator":case"atom":return t();case"name":return L(d(),"punc",":")?s():t();case"punc":switch(Q.token.value){case"{":return new ba({start:Q.token,body:z(),end:f()});case"[":case"(":return t();case";":return e(),new ca;default:k()}case"keyword":switch(a=Q.token.value,e(),a){case"break":return u(xa);case"continue":return u(ya);case"debugger":return o(),new Z;case"do":return new ha({body:P(R),condition:(l("keyword","while"),a=p(),o(),a)});case"while":return new ia({condition:p(),body:P(R)});case"for":return v();case"function":return S(ra);case"if":return y();case"return":return 0!=Q.in_function||b.bare_returns||h("'return' outside of function"),new ua({value:c("punc",";")?(e(),null):n()?null:(a=sa(!0),o(),a)});case"switch":return new Aa({expression:p(),body:P(A)});case"throw":return Q.token.nlb&&h("Illegal newline after 'throw'"),new va({value:(a=sa(!0),o(),a)});case"try":return B();case"var":return a=T(),o(),a;case"const":return a=U(),o(),a;case"with":return new la({expression:p(),body:R()});default:k()}}}),S=function(a){var b=a===ra,d=c("name")?I(b?hb:ib):null;return b&&!d&&k(),m("("),new a({name:d,argnames:function(a,b){for(;!c("punc",")");)a?a=!1:m(","),b.push(I(gb));return e(),b}(!0,[]),body:function(a,b){++Q.in_function,Q.in_directives=!0,Q.in_loop=0,Q.labels=[];var c=z();return--Q.in_function,Q.in_loop=a,Q.labels=b,c}(Q.in_loop,Q.labels)})},T=function(a){return new Ia({start:f(),definitions:C(a,!1),end:f()})},U=function(){return new Ja({start:f(),definitions:C(!1,!0),end:f()})},V=function(){var a=Q.token;l("operator","new");var b,d=W(!1);return c("punc","(")?(e(),b=E(")")):b=[],aa(new Ma({start:a,expression:d,args:b,end:f()}),!0)},W=function(a){if(c("operator","new"))return V();var b=Q.token;if(c("punc")){switch(b.value){case"(":e();var d=sa(!0);return d.start=b,d.end=Q.token,m(")"),aa(d,a);case"[":return aa(X(),a);case"{":return aa(Y(),a)}k()}if(c("keyword","function")){e();var g=S(qa);return g.start=b,g.end=f(),aa(g,a)}return Vb[Q.token.type]?aa(D(),a):void k()},X=q(function(){return m("["),new Xa({elements:E("]",!b.strict,!0)})}),Y=q(function(){m("{");for(var a=!0,d=[];!c("punc","}")&&(a?a=!1:m(","),b.strict||!c("punc","}"));){var g=Q.token,h=g.type,i=F();if("name"==h&&!c("punc",":")){if("get"==i){d.push(new ab({start:g,key:D(),value:S(pa),end:f()}));continue}if("set"==i){d.push(new _a({start:g,key:D(),value:S(pa),end:f()}));continue}}m(":"),d.push(new $a({start:g,quote:g.quote,key:i,value:sa(!1),end:f()}))}return e(),new Ya({properties:d})}),aa=function(a,b){var d=a.start;if(c("punc","."))return e(),aa(new Pa({start:d,expression:a,property:G(),end:f()}),b);if(c("punc","[")){e();var g=sa(!0);return m("]"),aa(new Qa({start:d,expression:a,property:g,end:f()}),b)}return b&&c("punc","(")?(e(),aa(new La({start:d,expression:a,args:E(")"),end:f()}),!0)):a},da=function(a){var b=Q.token;if(c("operator")&&Qb(b.value)){e(),r();var d=J(Sa,b.value,da(a));return d.start=b,d.end=f(),d}for(var g=W(a);c("operator")&&Rb(Q.token.value)&&!Q.token.nlb;)g=J(Ta,Q.token.value,g),g.start=b,g.end=Q.token,e();return g},ga=function(a,b,d){var f=c("operator")?Q.token.value:null;"in"==f&&d&&(f=null);var g=null!=f?Tb[f]:null;if(null!=g&&g>b){e();var h=ga(da(!0),g,d);return ga(new Ua({start:a.start,left:a,operator:f,right:h,end:h.end}),b,d)}return a},ma=function(a){var b=Q.token,d=N(a);if(c("operator","?")){e();var g=sa(!1);return m(":"),new Va({start:b,condition:d,consequent:g,alternative:sa(!1,a),end:f()})}return d},oa=function(a){var b=Q.token,d=ma(a),g=Q.token.value;if(c("operator")&&Sb(g)){if(O(d))return e(),new Wa({start:b,left:d,operator:g,right:oa(a),end:f()});h("Invalid assignment")}return d},sa=function(a,b){var f=Q.token,g=oa(b);return a&&c("punc",",")?(e(),new Na({start:f,car:g,cdr:sa(!0,b),end:d()})):g};return b.expression?sa(!0):function(){for(var a=Q.token,d=[];!c("eof");)d.push(R());var e=f(),g=b.toplevel;return g?(g.body=g.body.concat(d),g.end=e):g=new na({start:a,body:d,end:e}),g}()}function O(a,b){x.call(this),this.before=a,this.after=b}function P(a,b,c){this.name=c.name,this.orig=[c],this.scope=a,this.references=[],this.global=!1,this.mangled_name=null,this.undeclared=!1,this.constant=!1,this.index=b}function Q(a){function b(a,b){return a.replace(/[\u0080-\uffff]/g,function(a){var c=a.charCodeAt(0).toString(16);if(c.length<=2&&!b){for(;c.length<2;)c="0"+c;return"\\x"+c}for(;c.length<4;)c="0"+c;return"\\u"+c})}function c(c,d){function e(){return"'"+c.replace(/\x27/g,"\\'")+"'"}function f(){return'"'+c.replace(/\x22/g,'\\"')+'"'}var g=0,h=0;switch(c=c.replace(/[\\\b\f\n\r\t\x22\x27\u2028\u2029\0\ufeff]/g,function(a){switch(a){case"\\":return"\\\\";case"\b":return"\\b";case"\f":return"\\f";case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";case'"':return++g,'"';case"'":return++h,"'";case"\x00":return"\\x00";case"\ufeff":return"\\ufeff"}return a}),a.ascii_only&&(c=b(c)),a.quote_style){case 1:return e();case 2:return f();case 3:return"'"==d?e():f();default:return g>h?e():f()}}function d(b,d){var e=c(b,d);return a.inline_script&&(e=e.replace(/<\x2fscript([>\/\t\n\f\r ])/gi,"<\\/script$1")),e}function e(c){return c=c.toString(),a.ascii_only&&(c=b(c,!0)),c}function f(b){return h(" ",a.indent_start+v-b*a.indent_level)}function g(){return C.charAt(C.length-1)}function i(){a.max_line_len&&w>a.max_line_len&&k("\n")}function k(b){b=String(b);var c=b.charAt(0);if(B&&(c&&!(";}".indexOf(c)<0)||/[;]$/.test(C)||(a.semicolons||D(c)?(z+=";",w++,y++):(z+="\n",y++,x++,w=0),a.beautify||(A=!1)),B=!1),!a.beautify&&a.preserve_line&&L[L.length-1])for(var d=L[L.length-1].start.line;d>x;)z+="\n",y++,x++,w=0,A=!1;if(A){var e=g();(G(e)&&(G(c)||"\\"==c)||/^[\+\-\/]$/.test(c)&&c==e)&&(z+=" ",w++,y++),A=!1}var f=b.split(/\r?\n/),h=f.length-1;x+=h,0==h?w+=f[h].length:w=f[h].length,y+=b.length,C=b,z+=b}function m(){B=!1,k(";")}function n(){ +return v+a.indent_level}function o(a){var b;return k("{"),I(),H(n(),function(){b=a()}),F(),k("}"),b}function p(a){k("(");var b=a();return k(")"),b}function q(a){k("[");var b=a();return k("]"),b}function r(){k(","),E()}function t(){k(":"),a.space_colon&&E()}function u(){return z}a=j(a,{indent_start:0,indent_level:4,quote_keys:!1,space_colon:!0,ascii_only:!1,unescape_regexps:!1,inline_script:!1,width:80,max_line_len:32e3,beautify:!1,source_map:null,bracketize:!1,semicolons:!0,comments:!1,preserve_line:!1,screw_ie8:!1,preamble:null,quote_style:0},!0);var v=0,w=0,x=1,y=0,z="",A=!1,B=!1,C=null,D=s("( [ + * / - , ."),E=a.beautify?function(){k(" ")}:function(){A=!0},F=a.beautify?function(b){a.beautify&&k(f(b?.5:0))}:l,H=a.beautify?function(a,b){a===!0&&(a=n());var c=v;v=a;var d=b();return v=c,d}:function(a,b){return b()},I=a.beautify?function(){k("\n")}:i,J=a.beautify?function(){k(";")}:function(){B=!0},K=a.source_map?function(b,c){try{b&&a.source_map.add(b.file||"?",x,w,b.line,b.col,c||"name"!=b.type?c:b.value)}catch(d){X.warn("Couldn't figure out mapping for {file}:{line},{col} → {cline},{ccol} [{name}]",{file:b.file,line:b.line,col:b.col,cline:x,ccol:w,name:c||""})}}:l;a.preamble&&k(a.preamble.replace(/\r\n?|[\n\u2028\u2029]|\s*$/g,"\n"));var L=[];return{get:u,toString:u,indent:F,indentation:function(){return v},current_width:function(){return w-v},should_break:function(){return a.width&&this.current_width()>=a.width},newline:I,print:k,space:E,comma:r,colon:t,last:function(){return C},semicolon:J,force_semicolon:m,to_ascii:b,print_name:function(a){k(e(a))},print_string:function(a,b){k(d(a,b))},next_indent:n,with_indent:H,with_block:o,with_parens:p,with_square:q,add_mapping:K,option:function(b){return a[b]},line:function(){return x},col:function(){return w},pos:function(){return y},push_node:function(a){L.push(a)},pop_node:function(){return L.pop()},stack:function(){return L},parent:function(a){return L[L.length-2-(a||0)]}}}function R(a,b){return this instanceof R?(O.call(this,this.before,this.after),void(this.options=j(a,{sequences:!b,properties:!b,dead_code:!b,drop_debugger:!b,unsafe:!1,unsafe_comps:!1,conditionals:!b,comparisons:!b,evaluate:!b,booleans:!b,loops:!b,unused:!b,hoist_funs:!b,keep_fargs:!1,keep_fnames:!1,hoist_vars:!1,if_return:!b,join_vars:!b,cascade:!b,side_effects:!b,pure_getters:!1,pure_funcs:null,negate_iife:!b,screw_ie8:!1,drop_console:!1,angular:!1,warnings:!0,global_defs:{}},!0))):new R(a,b)}function S(a){function b(b,e,f,g,h,i){if(d){var j=d.originalPositionFor({line:g,column:h});if(null===j.source)return;b=j.source,g=j.line,h=j.column,i=j.name||i}c.addMapping({generated:{line:e+a.dest_line_diff,column:f},original:{line:g+a.orig_line_diff,column:h},source:b,name:i})}a=j(a,{file:null,root:null,orig:null,orig_line_diff:0,dest_line_diff:0});var c,d=a.orig&&new MOZ_SourceMap.SourceMapConsumer(a.orig);return c=d?MOZ_SourceMap.SourceMapGenerator.fromSourceMap(d):new MOZ_SourceMap.SourceMapGenerator({file:a.file,sourceRoot:a.root}),{add:b,get:function(){return c},toString:function(){return JSON.stringify(c.toJSON())}}}function T(){function a(a){m(b,a)}var b=[];return[Object,Array,Function,Number,String,Boolean,Error,Math,Date,RegExp].forEach(function(b){Object.getOwnPropertyNames(b).map(a),b.prototype&&Object.getOwnPropertyNames(b.prototype).map(a)}),b}function U(a,b){function c(a){return i.indexOf(a)>=0?!1:b.only_cache?k.props.has(a):/^[0-9.]+$/.test(a)?!1:!0}function d(a){return i.indexOf(a)>=0?!1:k.props.has(a)||l.indexOf(a)>=0}function e(a){c(a)&&m(l,a)}function f(a){var b=k.props.get(a);if(!b){do b=Wb(++k.cname);while(!c(b));k.props.set(a,b)}return b}function g(a){var b={};try{!function d(a){a.walk(new x(function(a){if(a instanceof Na)return d(a.cdr),!0;if(a instanceof pb)return e(a.value),!0;if(a instanceof Va)return d(a.consequent),d(a.alternative),!0;throw b}))}(a)}catch(c){if(c!==b)throw c}}function h(a){return a.transform(new O(function(a){return a instanceof Na?a.cdr=h(a.cdr):a instanceof pb?d(a.value)&&(a.value=f(a.value)):a instanceof Va&&(a.consequent=h(a.consequent),a.alternative=h(a.alternative)),a}))}b=j(b,{reserved:null,cache:null,only_cache:!1});var i=b.reserved;null==i&&(i=T());var k=b.cache;null==k&&(k={cname:-1,props:new u});var l=[];return a.walk(new x(function(a){a instanceof $a?e(a.key):a instanceof Za?e(a.key.name):a instanceof Pa?this.parent()instanceof Wa&&e(a.property):a instanceof Qa&&this.parent()instanceof Wa&&g(a.property)})),a.transform(new O(function(a){a instanceof $a?d(a.key)&&(a.key=f(a.key)):a instanceof Za?d(a.key.name)&&(a.key.name=f(a.key.name)):a instanceof Pa?d(a.property)&&(a.property=f(a.property)):a instanceof Qa&&(a.property=h(a.property))}))}b.UglifyJS=a,i.prototype=Object.create(Error.prototype),i.prototype.constructor=i,i.croak=function(a,b){throw new i(a,b)};var V=function(){function a(a,f,g){function h(){var h=f(a[i],i),l=h instanceof d;return l&&(h=h.v),h instanceof b?(h=h.v,h instanceof c?k.push.apply(k,g?h.v.slice().reverse():h.v):k.push(h)):h!==e&&(h instanceof c?j.push.apply(j,g?h.v.slice().reverse():h.v):j.push(h)),l}var i,j=[],k=[];if(a instanceof Array)if(g){for(i=a.length;--i>=0&&!h(););j.reverse(),k.reverse()}else for(i=0;i SymbolDef for all variables/functions defined in this scope",functions:"[Object/S] like `variables`, but only lists function declarations",uses_with:"[boolean/S] tells whether this scope uses the `with` statement",uses_eval:"[boolean/S] tells whether this scope contains a direct call to the global `eval`",parent_scope:"[AST_Scope?/S] link to the parent scope",enclosed:"[SymbolDef*/S] a list of all symbol definitions that are accessed from this scope or any subscopes",cname:"[integer/S] current index for mangling variables (used internally by the mangler)"}},aa),na=v("Toplevel","globals",{$documentation:"The toplevel scope",$propdoc:{globals:"[Object/S] a map of name -> SymbolDef for all undeclared names"},wrap_enclose:function(a){var b=this,c=[],d=[];a.forEach(function(a){var b=a.lastIndexOf(":");c.push(a.substr(0,b)),d.push(a.substr(b+1))});var e="(function("+d.join(",")+"){ '$ORIG'; })("+c.join(",")+")";return e=N(e),e=e.transform(new O(function(a){return a instanceof $&&"$ORIG"==a.value?V.splice(b.body):void 0}))},wrap_commonjs:function(a,b){var c=this,d=[];b&&(c.figure_out_scope(),c.walk(new x(function(a){a instanceof db&&a.definition().global&&(g(function(b){return b.name==a.name},d)||d.push(a))})));var e="(function(exports, global){ global['"+a+"'] = exports; '$ORIG'; '$EXPORTS'; }({}, (function(){return this}())))";return e=N(e),e=e.transform(new O(function(a){if(a instanceof _&&(a=a.body,a instanceof pb))switch(a.getValue()){case"$ORIG":return V.splice(c.body);case"$EXPORTS":var b=[];return d.forEach(function(a){b.push(new _({body:new Wa({left:new Qa({expression:new lb({name:"exports"}),property:new pb({value:a.name})}),operator:"=",right:new lb(a)})}))}),V.splice(b)}}))}},ma),oa=v("Lambda","name argnames uses_arguments",{$documentation:"Base class for functions",$propdoc:{name:"[AST_SymbolDeclaration?] the name of this function",argnames:"[AST_SymbolFunarg*] array of function arguments",uses_arguments:"[boolean/S] tells whether this function accesses the arguments array"},_walk:function(a){return a._visit(this,function(){this.name&&this.name._walk(a),this.argnames.forEach(function(b){b._walk(a)}),w(this,a)})}},ma),pa=v("Accessor",null,{$documentation:"A setter/getter function. The `name` property is always null."},oa),qa=v("Function",null,{$documentation:"A function expression"},oa),ra=v("Defun",null,{$documentation:"A function definition"},oa),sa=v("Jump",null,{$documentation:"Base class for “jumps” (for now that's `return`, `throw`, `break` and `continue`)"},Y),ta=v("Exit","value",{$documentation:"Base class for “exits” (`return` and `throw`)",$propdoc:{value:"[AST_Node?] the value returned or thrown by this statement; could be null for AST_Return"},_walk:function(a){return a._visit(this,this.value&&function(){this.value._walk(a)})}},sa),ua=v("Return",null,{$documentation:"A `return` statement"},ta),va=v("Throw",null,{$documentation:"A `throw` statement"},ta),wa=v("LoopControl","label",{$documentation:"Base class for loop control statements (`break` and `continue`)",$propdoc:{label:"[AST_LabelRef?] the label, or null if none"},_walk:function(a){return a._visit(this,this.label&&function(){this.label._walk(a)})}},sa),xa=v("Break",null,{$documentation:"A `break` statement"},wa),ya=v("Continue",null,{$documentation:"A `continue` statement"},wa),za=v("If","condition alternative",{$documentation:"A `if` statement",$propdoc:{condition:"[AST_Node] the `if` condition",alternative:"[AST_Statement?] the `else` part, or null if not present"},_walk:function(a){return a._visit(this,function(){this.condition._walk(a),this.body._walk(a),this.alternative&&this.alternative._walk(a)})}},da),Aa=v("Switch","expression",{$documentation:"A `switch` statement",$propdoc:{expression:"[AST_Node] the `switch` “discriminant”"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),w(this,a)})}},aa),Ba=v("SwitchBranch",null,{$documentation:"Base class for `switch` branches"},aa),Ca=v("Default",null,{$documentation:"A `default` switch branch"},Ba),Da=v("Case","expression",{$documentation:"A `case` switch branch",$propdoc:{expression:"[AST_Node] the `case` expression"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),w(this,a)})}},Ba),Ea=v("Try","bcatch bfinally",{$documentation:"A `try` statement",$propdoc:{bcatch:"[AST_Catch?] the catch block, or null if not present",bfinally:"[AST_Finally?] the finally block, or null if not present"},_walk:function(a){return a._visit(this,function(){w(this,a),this.bcatch&&this.bcatch._walk(a),this.bfinally&&this.bfinally._walk(a)})}},aa),Fa=v("Catch","argname",{$documentation:"A `catch` node; only makes sense as part of a `try` statement",$propdoc:{argname:"[AST_SymbolCatch] symbol for the exception"},_walk:function(a){return a._visit(this,function(){this.argname._walk(a),w(this,a)})}},aa),Ga=v("Finally",null,{$documentation:"A `finally` node; only makes sense as part of a `try` statement"},aa),Ha=v("Definitions","definitions",{$documentation:"Base class for `var` or `const` nodes (variable declarations/initializations)",$propdoc:{definitions:"[AST_VarDef*] array of variable definitions"},_walk:function(a){return a._visit(this,function(){this.definitions.forEach(function(b){b._walk(a)})})}},Y),Ia=v("Var",null,{$documentation:"A `var` statement"},Ha),Ja=v("Const",null,{$documentation:"A `const` statement"},Ha),Ka=v("VarDef","name value",{$documentation:"A variable declaration; only appears in a AST_Definitions node",$propdoc:{name:"[AST_SymbolVar|AST_SymbolConst] name of the variable",value:"[AST_Node?] initializer, or null of there's no initializer"},_walk:function(a){return a._visit(this,function(){this.name._walk(a),this.value&&this.value._walk(a)})}}),La=v("Call","expression args",{$documentation:"A function call expression",$propdoc:{expression:"[AST_Node] expression to invoke as function",args:"[AST_Node*] array of arguments"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),this.args.forEach(function(b){b._walk(a)})})}}),Ma=v("New",null,{$documentation:"An object instantiation. Derives from a function call since it has exactly the same properties"},La),Na=v("Seq","car cdr",{$documentation:"A sequence expression (two comma-separated expressions)",$propdoc:{car:"[AST_Node] first element in sequence",cdr:"[AST_Node] second element in sequence"},$cons:function(a,b){var c=new Na(a);return c.car=a,c.cdr=b,c},$from_array:function(a){if(0==a.length)return null;if(1==a.length)return a[0].clone();for(var b=null,c=a.length;--c>=0;)b=Na.cons(a[c],b);for(var d=b;d;){if(d.cdr&&!d.cdr.cdr){d.cdr=d.cdr.car;break}d=d.cdr}return b},to_array:function(){for(var a=this,b=[];a;){if(b.push(a.car),a.cdr&&!(a.cdr instanceof Na)){b.push(a.cdr);break}a=a.cdr}return b},add:function(a){for(var b=this;b;){if(!(b.cdr instanceof Na)){var c=Na.cons(b.cdr,a);return b.cdr=c}b=b.cdr}},_walk:function(a){return a._visit(this,function(){this.car._walk(a),this.cdr&&this.cdr._walk(a)})}}),Oa=v("PropAccess","expression property",{$documentation:'Base class for property access expressions, i.e. `a.foo` or `a["foo"]`',$propdoc:{expression:"[AST_Node] the “container” expression",property:"[AST_Node|string] the property to access. For AST_Dot this is always a plain string, while for AST_Sub it's an arbitrary AST_Node"}}),Pa=v("Dot",null,{$documentation:"A dotted property access expression",_walk:function(a){return a._visit(this,function(){this.expression._walk(a)})}},Oa),Qa=v("Sub",null,{$documentation:'Index-style property access, i.e. `a["foo"]`',_walk:function(a){return a._visit(this,function(){this.expression._walk(a),this.property._walk(a)})}},Oa),Ra=v("Unary","operator expression",{$documentation:"Base class for unary expressions",$propdoc:{operator:"[string] the operator",expression:"[AST_Node] expression that this unary operator applies to"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a)})}}),Sa=v("UnaryPrefix",null,{$documentation:"Unary prefix expression, i.e. `typeof i` or `++i`"},Ra),Ta=v("UnaryPostfix",null,{$documentation:"Unary postfix expression, i.e. `i++`"},Ra),Ua=v("Binary","left operator right",{$documentation:"Binary expression, i.e. `a + b`",$propdoc:{left:"[AST_Node] left-hand side expression",operator:"[string] the operator",right:"[AST_Node] right-hand side expression"},_walk:function(a){return a._visit(this,function(){this.left._walk(a),this.right._walk(a)})}}),Va=v("Conditional","condition consequent alternative",{$documentation:"Conditional expression using the ternary operator, i.e. `a ? b : c`",$propdoc:{condition:"[AST_Node]",consequent:"[AST_Node]",alternative:"[AST_Node]"},_walk:function(a){return a._visit(this,function(){this.condition._walk(a),this.consequent._walk(a),this.alternative._walk(a)})}}),Wa=v("Assign",null,{$documentation:"An assignment expression — `a = b + 5`"},Ua),Xa=v("Array","elements",{$documentation:"An array literal",$propdoc:{elements:"[AST_Node*] array of elements"},_walk:function(a){return a._visit(this,function(){this.elements.forEach(function(b){b._walk(a)})})}}),Ya=v("Object","properties",{$documentation:"An object literal",$propdoc:{properties:"[AST_ObjectProperty*] array of properties"},_walk:function(a){return a._visit(this,function(){this.properties.forEach(function(b){b._walk(a)})})}}),Za=v("ObjectProperty","key value",{$documentation:"Base class for literal object properties",$propdoc:{key:"[string] the property name converted to a string for ObjectKeyVal. For setters and getters this is an arbitrary AST_Node.",value:"[AST_Node] property value. For setters and getters this is an AST_Function."},_walk:function(a){return a._visit(this,function(){this.value._walk(a)})}}),$a=v("ObjectKeyVal","quote",{$documentation:"A key: value object property",$propdoc:{quote:"[string] the original quote character"}},Za),_a=v("ObjectSetter",null,{$documentation:"An object setter property"},Za),ab=v("ObjectGetter",null,{$documentation:"An object getter property"},Za),bb=v("Symbol","scope name thedef",{$propdoc:{name:"[string] name of this symbol",scope:"[AST_Scope/S] the current scope (not necessarily the definition scope)",thedef:"[SymbolDef/S] the definition of this symbol"},$documentation:"Base class for all symbols"}),cb=v("SymbolAccessor",null,{$documentation:"The name of a property accessor (setter/getter function)"},bb),db=v("SymbolDeclaration","init",{$documentation:"A declaration symbol (symbol in var/const, function name or argument, symbol in catch)",$propdoc:{init:"[AST_Node*/S] array of initializers for this declaration."}},bb),eb=v("SymbolVar",null,{$documentation:"Symbol defining a variable"},db),fb=v("SymbolConst",null,{$documentation:"A constant declaration"},db),gb=v("SymbolFunarg",null,{$documentation:"Symbol naming a function argument"},eb),hb=v("SymbolDefun",null,{$documentation:"Symbol defining a function"},db),ib=v("SymbolLambda",null,{$documentation:"Symbol naming a function expression"},db),jb=v("SymbolCatch",null,{$documentation:"Symbol naming the exception in catch"},db),kb=v("Label","references",{$documentation:"Symbol naming a label (declaration)",$propdoc:{references:"[AST_LoopControl*] a list of nodes referring to this label"},initialize:function(){this.references=[],this.thedef=this}},bb),lb=v("SymbolRef",null,{$documentation:"Reference to some symbol (not definition/declaration)"},bb),mb=v("LabelRef",null,{$documentation:"Reference to a label symbol"},bb),nb=v("This",null,{$documentation:"The `this` symbol"},bb),ob=v("Constant",null,{$documentation:"Base class for all constants",getValue:function(){return this.value}}),pb=v("String","value quote",{$documentation:"A string literal",$propdoc:{value:"[string] the contents of this string",quote:"[string] the original quote character"}},ob),qb=v("Number","value",{$documentation:"A number literal",$propdoc:{value:"[number] the numeric value"}},ob),rb=v("RegExp","value",{$documentation:"A regexp literal",$propdoc:{value:"[RegExp] the actual regexp"}},ob),sb=v("Atom",null,{$documentation:"Base class for atoms"},ob),tb=v("Null",null,{$documentation:"The `null` atom",value:null},sb),ub=v("NaN",null,{$documentation:"The impossible value",value:NaN},sb),vb=v("Undefined",null,{$documentation:"The `undefined` value",value:void 0},sb),wb=v("Hole",null,{$documentation:"A hole in an array",value:void 0},sb),xb=v("Infinity",null,{$documentation:"The `Infinity` value",value:1/0},sb),yb=v("Boolean",null,{$documentation:"Base class for booleans"},sb),zb=v("False",null,{$documentation:"The `false` atom",value:!1},yb),Ab=v("True",null,{$documentation:"The `true` atom",value:!0},yb);x.prototype={_visit:function(a,b){this.stack.push(a);var c=this.visit(a,b?function(){b.call(a)}:l);return!c&&b&&b.call(a),this.stack.pop(),c},parent:function(a){return this.stack[this.stack.length-2-(a||0)]},push:function(a){this.stack.push(a)},pop:function(){return this.stack.pop()},self:function(){return this.stack[this.stack.length-1]},find_parent:function(a){for(var b=this.stack,c=b.length;--c>=0;){var d=b[c];if(d instanceof a)return d}},has_directive:function(a){return this.find_parent(ma).has_directive(a)},in_boolean_context:function(){for(var a=this.stack,b=a.length,c=a[--b];b>0;){var d=a[--b];if(d instanceof za&&d.condition===c||d instanceof Va&&d.condition===c||d instanceof ga&&d.condition===c||d instanceof ja&&d.condition===c||d instanceof Sa&&"!"==d.operator&&d.expression===c)return!0;if(!(d instanceof Ua)||"&&"!=d.operator&&"||"!=d.operator)return!1;c=d}},loopcontrol_target:function(a){var b=this.stack;if(a)for(var c=b.length;--c>=0;){var d=b[c];if(d instanceof ea&&d.label.name==a.name)return d.body}else for(var c=b.length;--c>=0;){var d=b[c];if(d instanceof Aa||d instanceof fa)return d}}};var Bb="break case catch const continue debugger default delete do else finally for function if in instanceof new return switch throw try typeof var void while with",Cb="false null true",Db="abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized this throws transient volatile yield "+Cb+" "+Bb,Eb="return new delete throw else case";Bb=s(Bb),Db=s(Db),Eb=s(Eb),Cb=s(Cb);var Fb=s(e("+-*&%=<>!?|~^")),Gb=/^0x[0-9a-f]+$/i,Hb=/^0[0-7]+$/,Ib=/^\d*\.?\d*(?:e[+-]?\d*(?:\d\.?|\.?\d)\d*)?$/i,Jb=s(["in","instanceof","typeof","new","void","delete","++","--","+","-","!","~","&","|","^","*","/","%",">>","<<",">>>","<",">","<=",">=","==","===","!=","!==","?","=","+=","-=","/=","*=","%=",">>=","<<=",">>>=","|=","^=","&=","&&","||"]),Kb=s(e("  \n\r \f\x0B​᠎              \ufeff")),Lb=s(e("[{(,.;:")),Mb=s(e("[]{}(),;:")),Nb=s(e("gmsiy")),Ob={letter:new RegExp("[\\u0041-\\u005A\\u0061-\\u007A\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B2\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]"),digit:new RegExp("[\\u0030-\\u0039\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0BE6-\\u0BEF\\u0C66-\\u0C6F\\u0CE6-\\u0CEF\\u0D66-\\u0D6F\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F29\\u1040-\\u1049\\u1090-\\u1099\\u17E0-\\u17E9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19D9\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\uA620-\\uA629\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19]"),non_spacing_mark:new RegExp("[\\u0300-\\u036F\\u0483-\\u0487\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u0610-\\u061A\\u064B-\\u065E\\u0670\\u06D6-\\u06DC\\u06DF-\\u06E4\\u06E7\\u06E8\\u06EA-\\u06ED\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0900-\\u0902\\u093C\\u0941-\\u0948\\u094D\\u0951-\\u0955\\u0962\\u0963\\u0981\\u09BC\\u09C1-\\u09C4\\u09CD\\u09E2\\u09E3\\u0A01\\u0A02\\u0A3C\\u0A41\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70\\u0A71\\u0A75\\u0A81\\u0A82\\u0ABC\\u0AC1-\\u0AC5\\u0AC7\\u0AC8\\u0ACD\\u0AE2\\u0AE3\\u0B01\\u0B3C\\u0B3F\\u0B41-\\u0B44\\u0B4D\\u0B56\\u0B62\\u0B63\\u0B82\\u0BC0\\u0BCD\\u0C3E-\\u0C40\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C62\\u0C63\\u0CBC\\u0CBF\\u0CC6\\u0CCC\\u0CCD\\u0CE2\\u0CE3\\u0D41-\\u0D44\\u0D4D\\u0D62\\u0D63\\u0DCA\\u0DD2-\\u0DD4\\u0DD6\\u0E31\\u0E34-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB4-\\u0EB9\\u0EBB\\u0EBC\\u0EC8-\\u0ECD\\u0F18\\u0F19\\u0F35\\u0F37\\u0F39\\u0F71-\\u0F7E\\u0F80-\\u0F84\\u0F86\\u0F87\\u0F90-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102D-\\u1030\\u1032-\\u1037\\u1039\\u103A\\u103D\\u103E\\u1058\\u1059\\u105E-\\u1060\\u1071-\\u1074\\u1082\\u1085\\u1086\\u108D\\u109D\\u135F\\u1712-\\u1714\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17B7-\\u17BD\\u17C6\\u17C9-\\u17D3\\u17DD\\u180B-\\u180D\\u18A9\\u1920-\\u1922\\u1927\\u1928\\u1932\\u1939-\\u193B\\u1A17\\u1A18\\u1A56\\u1A58-\\u1A5E\\u1A60\\u1A62\\u1A65-\\u1A6C\\u1A73-\\u1A7C\\u1A7F\\u1B00-\\u1B03\\u1B34\\u1B36-\\u1B3A\\u1B3C\\u1B42\\u1B6B-\\u1B73\\u1B80\\u1B81\\u1BA2-\\u1BA5\\u1BA8\\u1BA9\\u1C2C-\\u1C33\\u1C36\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE0\\u1CE2-\\u1CE8\\u1CED\\u1DC0-\\u1DE6\\u1DFD-\\u1DFF\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2CEF-\\u2CF1\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099\\u309A\\uA66F\\uA67C\\uA67D\\uA6F0\\uA6F1\\uA802\\uA806\\uA80B\\uA825\\uA826\\uA8C4\\uA8E0-\\uA8F1\\uA926-\\uA92D\\uA947-\\uA951\\uA980-\\uA982\\uA9B3\\uA9B6-\\uA9B9\\uA9BC\\uAA29-\\uAA2E\\uAA31\\uAA32\\uAA35\\uAA36\\uAA43\\uAA4C\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uABE5\\uABE8\\uABED\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE26]"), space_combining_mark:new RegExp("[\\u0903\\u093E-\\u0940\\u0949-\\u094C\\u094E\\u0982\\u0983\\u09BE-\\u09C0\\u09C7\\u09C8\\u09CB\\u09CC\\u09D7\\u0A03\\u0A3E-\\u0A40\\u0A83\\u0ABE-\\u0AC0\\u0AC9\\u0ACB\\u0ACC\\u0B02\\u0B03\\u0B3E\\u0B40\\u0B47\\u0B48\\u0B4B\\u0B4C\\u0B57\\u0BBE\\u0BBF\\u0BC1\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCC\\u0BD7\\u0C01-\\u0C03\\u0C41-\\u0C44\\u0C82\\u0C83\\u0CBE\\u0CC0-\\u0CC4\\u0CC7\\u0CC8\\u0CCA\\u0CCB\\u0CD5\\u0CD6\\u0D02\\u0D03\\u0D3E-\\u0D40\\u0D46-\\u0D48\\u0D4A-\\u0D4C\\u0D57\\u0D82\\u0D83\\u0DCF-\\u0DD1\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0F3E\\u0F3F\\u0F7F\\u102B\\u102C\\u1031\\u1038\\u103B\\u103C\\u1056\\u1057\\u1062-\\u1064\\u1067-\\u106D\\u1083\\u1084\\u1087-\\u108C\\u108F\\u109A-\\u109C\\u17B6\\u17BE-\\u17C5\\u17C7\\u17C8\\u1923-\\u1926\\u1929-\\u192B\\u1930\\u1931\\u1933-\\u1938\\u19B0-\\u19C0\\u19C8\\u19C9\\u1A19-\\u1A1B\\u1A55\\u1A57\\u1A61\\u1A63\\u1A64\\u1A6D-\\u1A72\\u1B04\\u1B35\\u1B3B\\u1B3D-\\u1B41\\u1B43\\u1B44\\u1B82\\u1BA1\\u1BA6\\u1BA7\\u1BAA\\u1C24-\\u1C2B\\u1C34\\u1C35\\u1CE1\\u1CF2\\uA823\\uA824\\uA827\\uA880\\uA881\\uA8B4-\\uA8C3\\uA952\\uA953\\uA983\\uA9B4\\uA9B5\\uA9BA\\uA9BB\\uA9BD-\\uA9C0\\uAA2F\\uAA30\\uAA33\\uAA34\\uAA4D\\uAA7B\\uABE3\\uABE4\\uABE6\\uABE7\\uABE9\\uABEA\\uABEC]"),connector_punctuation:new RegExp("[\\u005F\\u203F\\u2040\\u2054\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFF3F]")};J.prototype.toString=function(){return this.message+" (line: "+this.line+", col: "+this.col+", pos: "+this.pos+")\n\n"+this.stack};var Pb={},Qb=s(["typeof","void","delete","--","++","!","~","-","+"]),Rb=s(["--","++"]),Sb=s(["=","+=","-=","/=","*=","%=",">>=","<<=",">>>=","|=","^=","&="]),Tb=function(a,b){for(var c=0;c","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]],{}),Ub=c(["for","do","while","switch"]),Vb=c(["atom","num","string","regexp","name"]);O.prototype=new x,function(a){function b(b,c){b.DEFMETHOD("transform",function(b,d){var e,f;return b.push(this),b.before&&(e=b.before(this,c,d)),e===a&&(b.after?(b.stack[b.stack.length-1]=e=this.clone(),c(e,b),f=b.after(e,d),f!==a&&(e=f)):(e=this,c(e,b))),b.pop(),e})}function c(a,b){return V(a,function(a){return a.transform(b,!0)})}b(X,l),b(ea,function(a,b){a.label=a.label.transform(b),a.body=a.body.transform(b)}),b(_,function(a,b){a.body=a.body.transform(b)}),b(aa,function(a,b){a.body=c(a.body,b)}),b(ga,function(a,b){a.condition=a.condition.transform(b),a.body=a.body.transform(b)}),b(ja,function(a,b){a.init&&(a.init=a.init.transform(b)),a.condition&&(a.condition=a.condition.transform(b)),a.step&&(a.step=a.step.transform(b)),a.body=a.body.transform(b)}),b(ka,function(a,b){a.init=a.init.transform(b),a.object=a.object.transform(b),a.body=a.body.transform(b)}),b(la,function(a,b){a.expression=a.expression.transform(b),a.body=a.body.transform(b)}),b(ta,function(a,b){a.value&&(a.value=a.value.transform(b))}),b(wa,function(a,b){a.label&&(a.label=a.label.transform(b))}),b(za,function(a,b){a.condition=a.condition.transform(b),a.body=a.body.transform(b),a.alternative&&(a.alternative=a.alternative.transform(b))}),b(Aa,function(a,b){a.expression=a.expression.transform(b),a.body=c(a.body,b)}),b(Da,function(a,b){a.expression=a.expression.transform(b),a.body=c(a.body,b)}),b(Ea,function(a,b){a.body=c(a.body,b),a.bcatch&&(a.bcatch=a.bcatch.transform(b)),a.bfinally&&(a.bfinally=a.bfinally.transform(b))}),b(Fa,function(a,b){a.argname=a.argname.transform(b),a.body=c(a.body,b)}),b(Ha,function(a,b){a.definitions=c(a.definitions,b)}),b(Ka,function(a,b){a.name=a.name.transform(b),a.value&&(a.value=a.value.transform(b))}),b(oa,function(a,b){a.name&&(a.name=a.name.transform(b)),a.argnames=c(a.argnames,b),a.body=c(a.body,b)}),b(La,function(a,b){a.expression=a.expression.transform(b),a.args=c(a.args,b)}),b(Na,function(a,b){a.car=a.car.transform(b),a.cdr=a.cdr.transform(b)}),b(Pa,function(a,b){a.expression=a.expression.transform(b)}),b(Qa,function(a,b){a.expression=a.expression.transform(b),a.property=a.property.transform(b)}),b(Ra,function(a,b){a.expression=a.expression.transform(b)}),b(Ua,function(a,b){a.left=a.left.transform(b),a.right=a.right.transform(b)}),b(Va,function(a,b){a.condition=a.condition.transform(b),a.consequent=a.consequent.transform(b),a.alternative=a.alternative.transform(b)}),b(Xa,function(a,b){a.elements=c(a.elements,b)}),b(Ya,function(a,b){a.properties=c(a.properties,b)}),b(Za,function(a,b){a.value=a.value.transform(b)})}(),P.prototype={unmangleable:function(a){return a||(a={}),this.global&&!a.toplevel||this.undeclared||!a.eval&&(this.scope.uses_eval||this.scope.uses_with)||a.keep_fnames&&(this.orig[0]instanceof ib||this.orig[0]instanceof hb)},mangle:function(a){var b=a.cache&&a.cache.props;if(this.global&&b&&b.has(this.name))this.mangled_name=b.get(this.name);else if(!this.mangled_name&&!this.unmangleable(a)){var c=this.scope;!a.screw_ie8&&this.orig[0]instanceof ib&&(c=c.parent_scope),this.mangled_name=c.next_mangled(a,this),this.global&&b&&b.set(this.name,this.mangled_name)}}},na.DEFMETHOD("figure_out_scope",function(a){a=j(a,{screw_ie8:!1,cache:null});var b=this,c=b.parent_scope=null,d=null,e=0,f=new x(function(b,g){if(a.screw_ie8&&b instanceof Fa){var h=c;return c=new ma(b),c.init_scope_vars(e),c.parent_scope=h,g(),c=h,!0}if(b instanceof ma){b.init_scope_vars(e);var h=b.parent_scope=c,i=d;return d=c=b,++e,g(),--e,c=h,d=i,!0}if(b instanceof $)return b.scope=c,m(c.directives,b.value),!0;if(b instanceof la)for(var j=c;j;j=j.parent_scope)j.uses_with=!0;else if(b instanceof bb&&(b.scope=c),b instanceof ib)d.def_function(b);else if(b instanceof hb)(b.scope=d.parent_scope).def_function(b);else if(b instanceof eb||b instanceof fb){var k=d.def_variable(b);k.constant=b instanceof fb,k.init=f.parent().value}else b instanceof jb&&(a.screw_ie8?c:d).def_variable(b)});b.walk(f);var g=null,h=b.globals=new u,f=new x(function(a,c){if(a instanceof oa){var d=g;return g=a,c(),g=d,!0}if(a instanceof lb){var e=a.name,i=a.scope.find_variable(e);if(i)a.thedef=i;else{var j;if(h.has(e)?j=h.get(e):(j=new P(b,h.size(),a),j.undeclared=!0,j.global=!0,h.set(e,j)),a.thedef=j,"eval"==e&&f.parent()instanceof La)for(var k=a.scope;k&&!k.uses_eval;k=k.parent_scope)k.uses_eval=!0;g&&"arguments"==e&&(g.uses_arguments=!0)}return a.reference(),!0}});b.walk(f),a.cache&&(this.cname=a.cache.cname)}),ma.DEFMETHOD("init_scope_vars",function(a){this.directives=[],this.variables=new u,this.functions=new u,this.uses_with=!1,this.uses_eval=!1,this.parent_scope=null,this.enclosed=[],this.cname=-1,this.nesting=a}),ma.DEFMETHOD("strict",function(){return this.has_directive("use strict")}),oa.DEFMETHOD("init_scope_vars",function(){ma.prototype.init_scope_vars.apply(this,arguments),this.uses_arguments=!1}),lb.DEFMETHOD("reference",function(){var a=this.definition();a.references.push(this);for(var b=this.scope;b&&(m(b.enclosed,a),b!==a.scope);)b=b.parent_scope;this.frame=this.scope.nesting-a.scope.nesting}),ma.DEFMETHOD("find_variable",function(a){return a instanceof bb&&(a=a.name),this.variables.get(a)||this.parent_scope&&this.parent_scope.find_variable(a)}),ma.DEFMETHOD("has_directive",function(a){return this.parent_scope&&this.parent_scope.has_directive(a)||(this.directives.indexOf(a)>=0?this:null)}),ma.DEFMETHOD("def_function",function(a){this.functions.set(a.name,this.def_variable(a))}),ma.DEFMETHOD("def_variable",function(a){var b;return this.variables.has(a.name)?(b=this.variables.get(a.name),b.orig.push(a)):(b=new P(this,this.variables.size(),a),this.variables.set(a.name,b),b.global=!this.parent_scope),a.thedef=b}),ma.DEFMETHOD("next_mangled",function(a){var b=this.enclosed;a:for(;;){var c=Wb(++this.cname);if(E(c)&&!(a.except.indexOf(c)>=0)){for(var d=b.length;--d>=0;){var e=b[d],f=e.mangled_name||e.unmangleable(a)&&e.name;if(c==f)continue a}return c}}}),qa.DEFMETHOD("next_mangled",function(a,b){for(var c=b.orig[0]instanceof gb&&this.name&&this.name.definition();;){var d=oa.prototype.next_mangled.call(this,a,b);if(!c||c.mangled_name!=d)return d}}),ma.DEFMETHOD("references",function(a){return a instanceof bb&&(a=a.definition()),this.enclosed.indexOf(a)<0?null:a}),bb.DEFMETHOD("unmangleable",function(a){return this.definition().unmangleable(a)}),cb.DEFMETHOD("unmangleable",function(){return!0}),kb.DEFMETHOD("unmangleable",function(){return!1}),bb.DEFMETHOD("unreferenced",function(){return 0==this.definition().references.length&&!(this.scope.uses_eval||this.scope.uses_with)}),bb.DEFMETHOD("undeclared",function(){return this.definition().undeclared}),mb.DEFMETHOD("undeclared",function(){return!1}),kb.DEFMETHOD("undeclared",function(){return!1}),bb.DEFMETHOD("definition",function(){return this.thedef}),bb.DEFMETHOD("global",function(){return this.definition().global}),na.DEFMETHOD("_default_mangler_options",function(a){return j(a,{except:[],eval:!1,sort:!1,toplevel:!1,screw_ie8:!1,keep_fnames:!1})}),na.DEFMETHOD("mangle_names",function(a){a=this._default_mangler_options(a);var b=-1,c=[];a.cache&&this.globals.each(function(b){a.except.indexOf(b.name)<0&&c.push(b)});var d=new x(function(e,f){if(e instanceof ea){var g=b;return f(),b=g,!0}if(e instanceof ma){var h=(d.parent(),[]);return e.variables.each(function(b){a.except.indexOf(b.name)<0&&h.push(b)}),a.sort&&h.sort(function(a,b){return b.references.length-a.references.length}),void c.push.apply(c,h)}if(e instanceof kb){var i;do i=Wb(++b);while(!E(i));return e.mangled_name=i,!0}return a.screw_ie8&&e instanceof jb?void c.push(e.definition()):void 0});this.walk(d),c.forEach(function(b){b.mangle(a)}),a.cache&&(a.cache.cname=this.cname)}),na.DEFMETHOD("compute_char_frequency",function(a){a=this._default_mangler_options(a);var b=new x(function(b){b instanceof ob?Wb.consider(b.print_to_string()):b instanceof ua?Wb.consider("return"):b instanceof va?Wb.consider("throw"):b instanceof ya?Wb.consider("continue"):b instanceof xa?Wb.consider("break"):b instanceof Z?Wb.consider("debugger"):b instanceof $?Wb.consider(b.value):b instanceof ia?Wb.consider("while"):b instanceof ha?Wb.consider("do while"):b instanceof za?(Wb.consider("if"),b.alternative&&Wb.consider("else")):b instanceof Ia?Wb.consider("var"):b instanceof Ja?Wb.consider("const"):b instanceof oa?Wb.consider("function"):b instanceof ja?Wb.consider("for"):b instanceof ka?Wb.consider("for in"):b instanceof Aa?Wb.consider("switch"):b instanceof Da?Wb.consider("case"):b instanceof Ca?Wb.consider("default"):b instanceof la?Wb.consider("with"):b instanceof _a?Wb.consider("set"+b.key):b instanceof ab?Wb.consider("get"+b.key):b instanceof $a?Wb.consider(b.key):b instanceof Ma?Wb.consider("new"):b instanceof nb?Wb.consider("this"):b instanceof Ea?Wb.consider("try"):b instanceof Fa?Wb.consider("catch"):b instanceof Ga?Wb.consider("finally"):b instanceof bb&&b.unmangleable(a)?Wb.consider(b.name):b instanceof Ra||b instanceof Ua?Wb.consider(b.operator):b instanceof Pa&&Wb.consider(b.property)});this.walk(b),Wb.sort()});var Wb=function(){function a(){d=Object.create(null),c=e.split("").map(function(a){return a.charCodeAt(0)}),c.forEach(function(a){d[a]=0})}function b(a){var b="",d=54;a++;do a--,b+=String.fromCharCode(c[a%d]),a=Math.floor(a/d),d=64;while(a>0);return b}var c,d,e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$_0123456789";return b.consider=function(a){for(var b=a.length;--b>=0;){var c=a.charCodeAt(b);c in d&&++d[c]}},b.sort=function(){c=p(c,function(a,b){return z(a)&&!z(b)?1:z(b)&&!z(a)?-1:d[b]-d[a]})},b.reset=a,a(),b.get=function(){return c},b.freq=function(){return d},b}();na.DEFMETHOD("scope_warnings",function(a){a=j(a,{undeclared:!1,unreferenced:!0,assign_to_global:!0,func_arguments:!0,nested_defuns:!0,eval:!0});var b=new x(function(c){if(a.undeclared&&c instanceof lb&&c.undeclared()&&X.warn("Undeclared symbol: {name} [{file}:{line},{col}]",{name:c.name,file:c.start.file,line:c.start.line,col:c.start.col}),a.assign_to_global){var d=null;c instanceof Wa&&c.left instanceof lb?d=c.left:c instanceof ka&&c.init instanceof lb&&(d=c.init),d&&(d.undeclared()||d.global()&&d.scope!==d.definition().scope)&&X.warn("{msg}: {name} [{file}:{line},{col}]",{msg:d.undeclared()?"Accidental global?":"Assignment to global",name:d.name,file:d.start.file,line:d.start.line,col:d.start.col})}a.eval&&c instanceof lb&&c.undeclared()&&"eval"==c.name&&X.warn("Eval is used [{file}:{line},{col}]",c.start),a.unreferenced&&(c instanceof db||c instanceof kb)&&!(c instanceof jb)&&c.unreferenced()&&X.warn("{type} {name} is declared but not referenced [{file}:{line},{col}]",{type:c instanceof kb?"Label":"Symbol",name:c.name,file:c.start.file,line:c.start.line,col:c.start.col}),a.func_arguments&&c instanceof oa&&c.uses_arguments&&X.warn("arguments used in function {name} [{file}:{line},{col}]",{name:c.name?c.name.name:"anonymous",file:c.start.file,line:c.start.line,col:c.start.col}),a.nested_defuns&&c instanceof ra&&!(b.parent()instanceof ma)&&X.warn('Function {name} declared in nested statement "{type}" [{file}:{line},{col}]',{name:c.name.name,type:b.parent().TYPE,file:c.start.file,line:c.start.line,col:c.start.col})});this.walk(b)}),function(){function a(a,b){a.DEFMETHOD("_codegen",b)}function b(a,c){Array.isArray(a)?a.forEach(function(a){b(a,c)}):a.DEFMETHOD("needs_parens",c)}function c(a,b,c){var d=a.length-1;a.forEach(function(a,e){a instanceof ca||(c.indent(),a.print(c),e==d&&b||(c.newline(),b&&c.newline()))})}function d(a,b){a.length>0?b.with_block(function(){c(a,!1,b)}):b.print("{}")}function e(a,b){if(b.option("bracketize"))return void n(a.body,b);if(!a.body)return b.force_semicolon();if(a.body instanceof ha&&!b.option("screw_ie8"))return void n(a.body,b);for(var c=a.body;;)if(c instanceof za){if(!c.alternative)return void n(a.body,b);c=c.alternative}else{if(!(c instanceof da))break;c=c.body}h(a.body,b)}function f(a,b,c){if(c)try{a.walk(new x(function(a){if(a instanceof Ua&&"in"==a.operator)throw b})),a.print(b)}catch(d){if(d!==b)throw d;a.print(b,!0)}else a.print(b)}function g(a){return[92,47,46,43,42,63,40,41,91,93,123,125,36,94,58,124,33,10,13,0,65279,8232,8233].indexOf(a)<0}function h(a,b){b.option("bracketize")?!a||a instanceof ca?b.print("{}"):a instanceof ba?a.print(b):b.with_block(function(){b.indent(),a.print(b),b.newline()}):!a||a instanceof ca?b.force_semicolon():a.print(b)}function i(a){for(var b=a.stack(),c=b.length,d=b[--c],e=b[--c];c>0;){if(e instanceof Y&&e.body===d)return!0;if(!(e instanceof Na&&e.car===d||e instanceof La&&e.expression===d&&!(e instanceof Ma)||e instanceof Pa&&e.expression===d||e instanceof Qa&&e.expression===d||e instanceof Va&&e.condition===d||e instanceof Ua&&e.left===d||e instanceof Ta&&e.expression===d))return!1;d=e,e=b[--c]}}function j(a,b){return 0==a.args.length&&!b.option("beautify")}function k(a){for(var b=a[0],c=b.length,d=1;d=0?d.push("0x"+a.toString(16).toLowerCase(),"0"+a.toString(8)):d.push("-0x"+(-a).toString(16).toLowerCase(),"-0"+(-a).toString(8)),(b=/^(.*?)(0+)$/.exec(a))&&d.push(b[1]+"e"+b[2].length)):(b=/^0?\.(0+)(.*)$/.exec(a))&&d.push(b[2]+"e-"+(b[1].length+b[2].length),c.substr(c.indexOf("."))),k(d)}function n(a,b){return a instanceof ba?void a.print(b):void b.with_block(function(){b.indent(),a.print(b),b.newline()})}function o(a,b){a.DEFMETHOD("add_source_map",function(a){b(this,a)})}function p(a,b){b.add_mapping(a.start)}X.DEFMETHOD("print",function(a,b){function c(){d.add_comments(a),d.add_source_map(a),e(d,a)}var d=this,e=d._codegen;a.push_node(d),b||d.needs_parens(a)?a.with_parens(c):c(),a.pop_node()}),X.DEFMETHOD("print_to_string",function(a){var b=Q(a);return this.print(b),b.get()}),X.DEFMETHOD("add_comments",function(a){var b=a.option("comments"),c=this;if(b){var d=c.start;if(d&&!d._comments_dumped){d._comments_dumped=!0;var e=d.comments_before||[];c instanceof ta&&c.value&&c.value.walk(new x(function(a){return a.start&&a.start.comments_before&&(e=e.concat(a.start.comments_before),a.start.comments_before=[]),a instanceof qa||a instanceof Xa||a instanceof Ya?!0:void 0})),b.test?e=e.filter(function(a){return b.test(a.value)}):"function"==typeof b&&(e=e.filter(function(a){return b(c,a)})),!a.option("beautify")&&e.length>0&&/comment[134]/.test(e[0].type)&&0!==a.col()&&e[0].nlb&&a.print("\n"),e.forEach(function(b){/comment[134]/.test(b.type)?(a.print("//"+b.value+"\n"),a.indent()):"comment2"==b.type&&(a.print("/*"+b.value+"*/"),d.nlb?(a.print("\n"),a.indent()):a.space())})}}}),b(X,function(){return!1}),b(qa,function(a){return i(a)}),b(Ya,function(a){return i(a)}),b([Ra,vb],function(a){var b=a.parent();return b instanceof Oa&&b.expression===this}),b(Na,function(a){var b=a.parent();return b instanceof La||b instanceof Ra||b instanceof Ua||b instanceof Ka||b instanceof Oa||b instanceof Xa||b instanceof Za||b instanceof Va}),b(Ua,function(a){var b=a.parent();if(b instanceof La&&b.expression===this)return!0;if(b instanceof Ra)return!0;if(b instanceof Oa&&b.expression===this)return!0;if(b instanceof Ua){var c=b.operator,d=Tb[c],e=this.operator,f=Tb[e];if(d>f||d==f&&this===b.right)return!0}}),b(Oa,function(a){var b=a.parent();if(b instanceof Ma&&b.expression===this)try{this.walk(new x(function(a){if(a instanceof La)throw b}))}catch(c){if(c!==b)throw c;return!0}}),b(La,function(a){var b,c=a.parent();return c instanceof Ma&&c.expression===this?!0:this.expression instanceof qa&&c instanceof Oa&&c.expression===this&&(b=a.parent(1))instanceof Wa&&b.left===c}),b(Ma,function(a){var b=a.parent();return j(this,a)&&(b instanceof Oa||b instanceof La&&b.expression===this)?!0:void 0}),b(qb,function(a){var b=a.parent();return this.getValue()<0&&b instanceof Oa&&b.expression===this?!0:void 0}),b([Wa,Va],function(a){var b=a.parent();return b instanceof Ra?!0:b instanceof Ua&&!(b instanceof Wa)?!0:b instanceof La&&b.expression===this?!0:b instanceof Va&&b.condition===this?!0:b instanceof Oa&&b.expression===this?!0:void 0}),a($,function(a,b){b.print_string(a.value,a.quote),b.semicolon()}),a(Z,function(a,b){b.print("debugger"),b.semicolon()}),da.DEFMETHOD("_do_print_body",function(a){h(this.body,a)}),a(Y,function(a,b){a.body.print(b),b.semicolon()}),a(na,function(a,b){c(a.body,!0,b),b.print("")}),a(ea,function(a,b){a.label.print(b),b.colon(),a.body.print(b)}),a(_,function(a,b){a.body.print(b),b.semicolon()}),a(ba,function(a,b){d(a.body,b)}),a(ca,function(a,b){b.semicolon()}),a(ha,function(a,b){b.print("do"),b.space(),a._do_print_body(b),b.space(),b.print("while"),b.space(),b.with_parens(function(){a.condition.print(b)}),b.semicolon()}),a(ia,function(a,b){b.print("while"),b.space(),b.with_parens(function(){a.condition.print(b)}),b.space(),a._do_print_body(b)}),a(ja,function(a,b){b.print("for"),b.space(),b.with_parens(function(){!a.init||a.init instanceof ca?b.print(";"):(a.init instanceof Ha?a.init.print(b):f(a.init,b,!0),b.print(";"),b.space()),a.condition?(a.condition.print(b),b.print(";"),b.space()):b.print(";"),a.step&&a.step.print(b)}),b.space(),a._do_print_body(b)}),a(ka,function(a,b){b.print("for"),b.space(),b.with_parens(function(){a.init.print(b),b.space(),b.print("in"),b.space(),a.object.print(b)}),b.space(),a._do_print_body(b)}),a(la,function(a,b){b.print("with"),b.space(),b.with_parens(function(){a.expression.print(b)}),b.space(),a._do_print_body(b)}),oa.DEFMETHOD("_do_print",function(a,b){var c=this;b||a.print("function"),c.name&&(a.space(),c.name.print(a)),a.with_parens(function(){c.argnames.forEach(function(b,c){c&&a.comma(),b.print(a)})}),a.space(),d(c.body,a)}),a(oa,function(a,b){a._do_print(b)}),ta.DEFMETHOD("_do_print",function(a,b){a.print(b),this.value&&(a.space(),this.value.print(a)),a.semicolon()}),a(ua,function(a,b){a._do_print(b,"return")}),a(va,function(a,b){a._do_print(b,"throw")}),wa.DEFMETHOD("_do_print",function(a,b){a.print(b),this.label&&(a.space(),this.label.print(a)),a.semicolon()}),a(xa,function(a,b){a._do_print(b,"break")}),a(ya,function(a,b){a._do_print(b,"continue")}),a(za,function(a,b){b.print("if"),b.space(),b.with_parens(function(){a.condition.print(b)}),b.space(),a.alternative?(e(a,b),b.space(),b.print("else"),b.space(),h(a.alternative,b)):a._do_print_body(b)}),a(Aa,function(a,b){b.print("switch"),b.space(),b.with_parens(function(){a.expression.print(b)}),b.space(),a.body.length>0?b.with_block(function(){a.body.forEach(function(a,c){c&&b.newline(),b.indent(!0),a.print(b)})}):b.print("{}")}),Ba.DEFMETHOD("_do_print_body",function(a){this.body.length>0&&(a.newline(),this.body.forEach(function(b){a.indent(),b.print(a),a.newline()}))}),a(Ca,function(a,b){b.print("default:"),a._do_print_body(b)}),a(Da,function(a,b){b.print("case"),b.space(),a.expression.print(b),b.print(":"),a._do_print_body(b)}),a(Ea,function(a,b){b.print("try"),b.space(),d(a.body,b),a.bcatch&&(b.space(),a.bcatch.print(b)),a.bfinally&&(b.space(),a.bfinally.print(b))}),a(Fa,function(a,b){b.print("catch"),b.space(),b.with_parens(function(){a.argname.print(b)}),b.space(),d(a.body,b)}),a(Ga,function(a,b){b.print("finally"),b.space(),d(a.body,b)}),Ha.DEFMETHOD("_do_print",function(a,b){a.print(b),a.space(),this.definitions.forEach(function(b,c){c&&a.comma(),b.print(a)});var c=a.parent(),d=c instanceof ja||c instanceof ka,e=d&&c.init===this;e||a.semicolon()}),a(Ia,function(a,b){a._do_print(b,"var")}),a(Ja,function(a,b){a._do_print(b,"const")}),a(Ka,function(a,b){if(a.name.print(b),a.value){b.space(),b.print("="),b.space();var c=b.parent(1),d=c instanceof ja||c instanceof ka;f(a.value,b,d)}}),a(La,function(a,b){a.expression.print(b),a instanceof Ma&&j(a,b)||b.with_parens(function(){a.args.forEach(function(a,c){c&&b.comma(),a.print(b)})})}),a(Ma,function(a,b){b.print("new"),b.space(),La.prototype._codegen(a,b)}),Na.DEFMETHOD("_do_print",function(a){this.car.print(a),this.cdr&&(a.comma(),a.should_break()&&(a.newline(),a.indent()),this.cdr.print(a))}),a(Na,function(a,b){a._do_print(b)}),a(Pa,function(a,b){var c=a.expression;c.print(b),c instanceof qb&&c.getValue()>=0&&(/[xa-f.]/i.test(b.last())||b.print(".")),b.print("."),b.add_mapping(a.end),b.print_name(a.property)}),a(Qa,function(a,b){a.expression.print(b),b.print("["),a.property.print(b),b.print("]")}),a(Sa,function(a,b){var c=a.operator;b.print(c),(/^[a-z]/i.test(c)||/[+-]$/.test(c)&&a.expression instanceof Sa&&/^[+-]/.test(a.expression.operator))&&b.space(),a.expression.print(b)}),a(Ta,function(a,b){a.expression.print(b),b.print(a.operator)}),a(Ua,function(a,b){a.left.print(b),b.space(),b.print(a.operator),"<"==a.operator&&a.right instanceof Sa&&"!"==a.right.operator&&a.right.expression instanceof Sa&&"--"==a.right.expression.operator?b.print(" "):b.space(),a.right.print(b)}),a(Va,function(a,b){a.condition.print(b),b.space(),b.print("?"),b.space(),a.consequent.print(b),b.space(),b.colon(),a.alternative.print(b)}),a(Xa,function(a,b){b.with_square(function(){var c=a.elements,d=c.length;d>0&&b.space(),c.forEach(function(a,c){c&&b.comma(),a.print(b),c===d-1&&a instanceof wb&&b.comma()}),d>0&&b.space()})}),a(Ya,function(a,b){a.properties.length>0?b.with_block(function(){a.properties.forEach(function(a,c){c&&(b.print(","),b.newline()),b.indent(),a.print(b)}),b.newline()}):b.print("{}")}),a($a,function(a,b){var c=a.key,d=a.quote;b.option("quote_keys")?b.print_string(c+""):("number"==typeof c||!b.option("beautify")&&+c+""==c)&&parseFloat(c)>=0?b.print(m(c)):(Db(c)?b.option("screw_ie8"):H(c))?b.print_name(c):b.print_string(c,d),b.colon(),a.value.print(b)}),a(_a,function(a,b){b.print("set"),b.space(),a.key.print(b),a.value._do_print(b,!0)}),a(ab,function(a,b){b.print("get"),b.space(),a.key.print(b),a.value._do_print(b,!0)}),a(bb,function(a,b){var c=a.definition();b.print_name(c?c.mangled_name||c.name:a.name)}),a(vb,function(a,b){b.print("void 0")}),a(wb,l),a(xb,function(a,b){b.print("Infinity")}),a(ub,function(a,b){b.print("NaN")}),a(nb,function(a,b){b.print("this")}),a(ob,function(a,b){b.print(a.getValue())}),a(pb,function(a,b){b.print_string(a.getValue(),a.quote)}),a(qb,function(a,b){b.print(m(a.getValue()))}),a(rb,function(a,b){var c=a.getValue().toString();b.option("ascii_only")?c=b.to_ascii(c):b.option("unescape_regexps")&&(c=c.split("\\\\").map(function(a){return a.replace(/\\u[0-9a-fA-F]{4}|\\x[0-9a-fA-F]{2}/g,function(a){var b=parseInt(a.substr(2),16);return g(b)?String.fromCharCode(b):a})}).join("\\\\")),b.print(c);var d=b.parent();d instanceof Ua&&/^in/.test(d.operator)&&d.left===a&&b.print(" ")}),o(X,l),o($,p),o(Z,p),o(bb,p),o(sa,p),o(da,p),o(ea,l),o(oa,p),o(Aa,p),o(Ba,p),o(ba,p),o(na,l),o(Ma,p),o(Ea,p),o(Fa,p),o(Ga,p),o(Ha,p),o(ob,p),o(Za,function(a,b){b.add_mapping(a.start,a.key)})}(),R.prototype=new O,k(R.prototype,{option:function(a){return this.options[a]},warn:function(){this.options.warnings&&X.warn.apply(X,arguments)},before:function(a,b,c){if(a._squeezed)return a;var d=!1;return a instanceof ma&&(a=a.hoist_declarations(this),d=!0),b(a,this),a=a.optimize(this),d&&a instanceof ma&&(a.drop_unused(this),b(a,this)),a._squeezed=!0,a}}),function(){function a(a,b){a.DEFMETHOD("optimize",function(a){var c=this;if(c._optimized)return c;var d=b(c,a);return d._optimized=!0,d===c?d:d.transform(a)})}function b(a,b,c){return c||(c={}),b&&(c.start||(c.start=b.start),c.end||(c.end=b.end)),new a(c)}function c(a,c,d){if(c instanceof X)return c.transform(a);switch(typeof c){case"string":return b(pb,d,{value:c}).optimize(a);case"number":return b(isNaN(c)?ub:qb,d,{value:c}).optimize(a);case"boolean":return b(c?Ab:zb,d).optimize(a);case"undefined":return b(vb,d).optimize(a);default:if(null===c)return b(tb,d,{value:null}).optimize(a);if(c instanceof RegExp)return b(rb,d,{value:c}).optimize(a);throw new Error(n("Can't handle constant of type: {type}",{type:typeof c}))}}function d(a){if(null===a)return[];if(a instanceof ba)return a.body;if(a instanceof ca)return[];if(a instanceof Y)return[a];throw new Error("Can't convert thing to statement array")}function e(a){return null===a?!0:a instanceof ca?!0:a instanceof ba?0==a.body.length:!1}function h(a){return a instanceof Aa?a:(a instanceof ja||a instanceof ka||a instanceof ga)&&a.body instanceof ba?a.body:a}function i(a,c){function e(a){function d(a){return/@ngInject/.test(a.value)}function e(a){return a.argnames.map(function(a){return b(pb,a,{value:a.name})})}function f(a,c){return b(Xa,a,{elements:c})}function g(a,c){return b(_,a,{body:b(Wa,a,{operator:"=",left:b(Pa,c,{expression:b(lb,c,c),property:"$inject"}),right:f(a,e(a))})})}function h(a){a&&a.args&&(a.args.forEach(function(a,b,c){var g=a.start.comments_before;a instanceof oa&&g.length&&d(g[0])&&(c[b]=f(a,e(a).concat(a)))}),a.expression&&a.expression.expression&&h(a.expression.expression))}return a.reduce(function(a,b){if(a.push(b),b.body&&b.body.args)h(b.body);else{var e=b.start,f=e.comments_before;if(f&&f.length>0){var i=f.pop();d(i)&&(b instanceof ra?a.push(g(b,b.name)):b instanceof Ha?b.definitions.forEach(function(b){b.value&&b.value instanceof oa&&a.push(g(b.value,b.name))}):c.warn("Unknown statement marked with @ngInject [{file}:{line},{col}]",e))}}return a},[])}function f(a){var b=[];return a.reduce(function(a,c){return c instanceof ba?(p=!0,a.push.apply(a,f(c.body))):c instanceof ca?p=!0:c instanceof $?b.indexOf(c.value)<0?(a.push(c),b.push(c.value)):p=!0:a.push(c),a},[])}function g(a,c){var e=c.self(),f=e instanceof oa,g=[];a:for(var i=a.length;--i>=0;){var j=a[i];switch(!0){case f&&j instanceof ua&&!j.value&&0==g.length:p=!0;continue a;case j instanceof za:if(j.body instanceof ua){if((f&&0==g.length||g[0]instanceof ua&&!g[0].value)&&!j.body.value&&!j.alternative){p=!0;var k=b(_,j.condition,{body:j.condition});g.unshift(k);continue a}if(g[0]instanceof ua&&j.body.value&&g[0].value&&!j.alternative){p=!0,j=j.clone(),j.alternative=g[0],g[0]=j.transform(c);continue a}if((0==g.length||g[0]instanceof ua)&&j.body.value&&!j.alternative&&f){p=!0,j=j.clone(),j.alternative=g[0]||b(ua,j,{value:b(vb,j)}),g[0]=j.transform(c);continue a}if(!j.body.value&&f){p=!0,j=j.clone(),j.condition=j.condition.negate(c),j.body=b(ba,j,{body:d(j.alternative).concat(g)}),j.alternative=null,g=[j.transform(c)];continue a}if(1==g.length&&f&&g[0]instanceof _&&(!j.alternative||j.alternative instanceof _)){p=!0,g.push(b(ua,g[0],{value:b(vb,g[0])}).transform(c)),g=d(j.alternative).concat(g),g.unshift(j);continue a}}var l=q(j.body),m=l instanceof wa?c.loopcontrol_target(l.label):null;if(l&&(l instanceof ua&&!l.value&&f||l instanceof ya&&e===h(m)||l instanceof xa&&m instanceof ba&&e===m)){l.label&&o(l.label.thedef.references,l),p=!0;var n=d(j.body).slice(0,-1);j=j.clone(),j.condition=j.condition.negate(c),j.body=b(ba,j,{body:d(j.alternative).concat(g)}),j.alternative=b(ba,j,{body:n}),g=[j.transform(c)];continue a}var l=q(j.alternative),m=l instanceof wa?c.loopcontrol_target(l.label):null;if(l&&(l instanceof ua&&!l.value&&f||l instanceof ya&&e===h(m)||l instanceof xa&&m instanceof ba&&e===m)){l.label&&o(l.label.thedef.references,l),p=!0,j=j.clone(),j.body=b(ba,j.body,{body:d(j.body).concat(g)}),j.alternative=b(ba,j.alternative,{body:d(j.alternative).slice(0,-1)}),g=[j.transform(c)];continue a}g.unshift(j);break;default:g.unshift(j)}}return g}function i(a,b){var c=!1,d=a.length,e=b.self();return a=a.reduce(function(a,d){if(c)j(b,d,a);else{if(d instanceof wa){var f=b.loopcontrol_target(d.label);d instanceof xa&&f instanceof ba&&h(f)===e||d instanceof ya&&h(f)===e?d.label&&o(d.label.thedef.references,d):a.push(d)}else a.push(d);q(d)&&(c=!0)}return a},[]),p=a.length!=d,a}function k(a,c){function d(){e=Na.from_array(e),e&&f.push(b(_,e,{body:e})),e=[]}if(a.length<2)return a;var e=[],f=[];return a.forEach(function(a){a instanceof _&&e.length<2e3?e.push(a.body):(d(),f.push(a))}),d(),f=l(f,c),p=f.length!=a.length,f}function l(a,c){function d(a){e.pop();var b=f.body;return b instanceof Na?b.add(a):b=Na.cons(b,a),b.transform(c)}var e=[],f=null;return a.forEach(function(a){if(f)if(a instanceof ja){var c={};try{f.body.walk(new x(function(a){if(a instanceof Ua&&"in"==a.operator)throw c})),!a.init||a.init instanceof Ha?a.init||(a.init=f.body,e.pop()):a.init=d(a.init)}catch(g){if(g!==c)throw g}}else a instanceof za?a.condition=d(a.condition):a instanceof la?a.expression=d(a.expression):a instanceof ta&&a.value?a.value=d(a.value):a instanceof ta?a.value=d(b(vb,a)):a instanceof Aa&&(a.expression=d(a.expression));e.push(a),f=a instanceof _?a:null}),e}function m(a,b){var c=null;return a.reduce(function(a,b){return b instanceof Ha&&c&&c.TYPE==b.TYPE?(c.definitions=c.definitions.concat(b.definitions),p=!0):b instanceof ja&&c instanceof Ha&&(!b.init||b.init.TYPE==c.TYPE)?(p=!0,a.pop(),b.init?b.init.definitions=c.definitions.concat(b.init.definitions):b.init=c,a.push(b),c=b):(c=b,a.push(b)),a},[])}function n(a,c){a.forEach(function(a){a instanceof _&&(a.body=function c(a){return a.transform(new O(function(a){if(a instanceof La&&a.expression instanceof qa)return b(Sa,a,{operator:"!",expression:a});if(a instanceof La)a.expression=c(a.expression);else if(a instanceof Na)a.car=c(a.car);else if(a instanceof Va){var d=c(a.condition);if(d!==a.condition){a.condition=d;var e=a.consequent;a.consequent=a.alternative,a.alternative=e}}return a}))}(a.body))})}var p;do p=!1,c.option("angular")&&(a=e(a)),a=f(a),c.option("dead_code")&&(a=i(a,c)),c.option("if_return")&&(a=g(a,c)),c.option("sequences")&&(a=k(a,c)),c.option("join_vars")&&(a=m(a,c));while(p);return c.option("negate_iife")&&n(a,c),a}function j(a,b,c){a.warn("Dropping unreachable code [{file}:{line},{col}]",b.start),b.walk(new x(function(b){return b instanceof Ha?(a.warn("Declarations in unreachable code! [{file}:{line},{col}]",b.start),b.remove_initializers(),c.push(b),!0):b instanceof ra?(c.push(b),!0):b instanceof ma?!0:void 0}))}function k(a,b){return a.print_to_string().length>b.print_to_string().length?b:a}function q(a){return a&&a.aborts()}function r(a,c){function e(e){e=d(e),a.body instanceof ba?(a.body=a.body.clone(),a.body.body=e.concat(a.body.body.slice(1)),a.body=a.body.transform(c)):a.body=b(ba,a.body,{ body:e}).transform(c),r(a,c)}var f=a.body instanceof ba?a.body.body[0]:a.body;f instanceof za&&(f.body instanceof xa&&c.loopcontrol_target(f.body.label)===a?(a.condition?a.condition=b(Ua,a.condition,{left:a.condition,operator:"&&",right:f.condition.negate(c)}):a.condition=f.condition.negate(c),e(f.alternative)):f.alternative instanceof xa&&c.loopcontrol_target(f.alternative.label)===a&&(a.condition?a.condition=b(Ua,a.condition,{left:a.condition,operator:"&&",right:f.condition}):a.condition=f.condition,e(f.body)))}function v(a,b){var c=b.option("pure_getters");b.options.pure_getters=!1;var d=a.has_side_effects(b);return b.options.pure_getters=c,d}function w(a,c){return c.option("booleans")&&c.in_boolean_context()&&!a.has_side_effects(c)?b(Ab,a):a}a(X,function(a,b){return a}),X.DEFMETHOD("equivalent_to",function(a){return this.print_to_string()==a.print_to_string()}),function(a){var b=["!","delete"],c=["in","instanceof","==","!=","===","!==","<","<=",">=",">"];a(X,function(){return!1}),a(Sa,function(){return f(this.operator,b)}),a(Ua,function(){return f(this.operator,c)||("&&"==this.operator||"||"==this.operator)&&this.left.is_boolean()&&this.right.is_boolean()}),a(Va,function(){return this.consequent.is_boolean()&&this.alternative.is_boolean()}),a(Wa,function(){return"="==this.operator&&this.right.is_boolean()}),a(Na,function(){return this.cdr.is_boolean()}),a(Ab,function(){return!0}),a(zb,function(){return!0})}(function(a,b){a.DEFMETHOD("is_boolean",b)}),function(a){a(X,function(){return!1}),a(pb,function(){return!0}),a(Sa,function(){return"typeof"==this.operator}),a(Ua,function(a){return"+"==this.operator&&(this.left.is_string(a)||this.right.is_string(a))}),a(Wa,function(a){return("="==this.operator||"+="==this.operator)&&this.right.is_string(a)}),a(Na,function(a){return this.cdr.is_string(a)}),a(Va,function(a){return this.consequent.is_string(a)&&this.alternative.is_string(a)}),a(La,function(a){return a.option("unsafe")&&this.expression instanceof lb&&"String"==this.expression.name&&this.expression.undeclared()})}(function(a,b){a.DEFMETHOD("is_string",b)}),function(a){function b(a,b){if(!b)throw new Error("Compressor must be passed");return a._eval(b)}X.DEFMETHOD("evaluate",function(b){if(!b.option("evaluate"))return[this];try{var d=this._eval(b);return[k(c(b,d,this),this),d]}catch(e){if(e!==a)throw e;return[this]}}),a(Y,function(){throw new Error(n("Cannot evaluate a statement [{file}:{line},{col}]",this.start))}),a(qa,function(){throw a}),a(X,function(){throw a}),a(ob,function(){return this.getValue()}),a(Sa,function(c){var d=this.expression;switch(this.operator){case"!":return!b(d,c);case"typeof":if(d instanceof qa)return"function";if(d=b(d,c),d instanceof RegExp)throw a;return typeof d;case"void":return void b(d,c);case"~":return~b(d,c);case"-":if(d=b(d,c),0===d)throw a;return-d;case"+":return+b(d,c)}throw a}),a(Ua,function(c){var d=this.left,e=this.right;switch(this.operator){case"&&":return b(d,c)&&b(e,c);case"||":return b(d,c)||b(e,c);case"|":return b(d,c)|b(e,c);case"&":return b(d,c)&b(e,c);case"^":return b(d,c)^b(e,c);case"+":return b(d,c)+b(e,c);case"*":return b(d,c)*b(e,c);case"/":return b(d,c)/b(e,c);case"%":return b(d,c)%b(e,c);case"-":return b(d,c)-b(e,c);case"<<":return b(d,c)<>":return b(d,c)>>b(e,c);case">>>":return b(d,c)>>>b(e,c);case"==":return b(d,c)==b(e,c);case"===":return b(d,c)===b(e,c);case"!=":return b(d,c)!=b(e,c);case"!==":return b(d,c)!==b(e,c);case"<":return b(d,c)":return b(d,c)>b(e,c);case">=":return b(d,c)>=b(e,c);case"in":return b(d,c)in b(e,c);case"instanceof":return b(d,c)instanceof b(e,c)}throw a}),a(Va,function(a){return b(this.condition,a)?b(this.consequent,a):b(this.alternative,a)}),a(lb,function(c){var d=this.definition();if(d&&d.constant&&d.init)return b(d.init,c);throw a}),a(Pa,function(c){if(c.option("unsafe")&&"length"==this.property){var d=b(this.expression,c);if("string"==typeof d)return d.length}throw a})}(function(a,b){a.DEFMETHOD("_eval",b)}),function(a){function c(a){return b(Sa,a,{operator:"!",expression:a})}a(X,function(){return c(this)}),a(Y,function(){throw new Error("Cannot negate a statement")}),a(qa,function(){return c(this)}),a(Sa,function(){return"!"==this.operator?this.expression:c(this)}),a(Na,function(a){var b=this.clone();return b.cdr=b.cdr.negate(a),b}),a(Va,function(a){var b=this.clone();return b.consequent=b.consequent.negate(a),b.alternative=b.alternative.negate(a),k(c(this),b)}),a(Ua,function(a){var b=this.clone(),d=this.operator;if(a.option("unsafe_comps"))switch(d){case"<=":return b.operator=">",b;case"<":return b.operator=">=",b;case">=":return b.operator="<",b;case">":return b.operator="<=",b}switch(d){case"==":return b.operator="!=",b;case"!=":return b.operator="==",b;case"===":return b.operator="!==",b;case"!==":return b.operator="===",b;case"&&":return b.operator="||",b.left=b.left.negate(a),b.right=b.right.negate(a),k(c(this),b);case"||":return b.operator="&&",b.left=b.left.negate(a),b.right=b.right.negate(a),k(c(this),b)}return c(this)})}(function(a,b){a.DEFMETHOD("negate",function(a){return b.call(this,a)})}),function(a){a(X,function(a){return!0}),a(ca,function(a){return!1}),a(ob,function(a){return!1}),a(nb,function(a){return!1}),a(La,function(a){var b=a.option("pure_funcs");return b?b.indexOf(this.expression.print_to_string())<0:!0}),a(aa,function(a){for(var b=this.body.length;--b>=0;)if(this.body[b].has_side_effects(a))return!0;return!1}),a(_,function(a){return this.body.has_side_effects(a)}),a(ra,function(a){return!0}),a(qa,function(a){return!1}),a(Ua,function(a){return this.left.has_side_effects(a)||this.right.has_side_effects(a)}),a(Wa,function(a){return!0}),a(Va,function(a){return this.condition.has_side_effects(a)||this.consequent.has_side_effects(a)||this.alternative.has_side_effects(a)}),a(Ra,function(a){return"delete"==this.operator||"++"==this.operator||"--"==this.operator||this.expression.has_side_effects(a)}),a(lb,function(a){return this.global()&&this.undeclared()}),a(Ya,function(a){for(var b=this.properties.length;--b>=0;)if(this.properties[b].has_side_effects(a))return!0;return!1}),a(Za,function(a){return this.value.has_side_effects(a)}),a(Xa,function(a){for(var b=this.elements.length;--b>=0;)if(this.elements[b].has_side_effects(a))return!0;return!1}),a(Pa,function(a){return a.option("pure_getters")?this.expression.has_side_effects(a):!0}),a(Qa,function(a){return a.option("pure_getters")?this.expression.has_side_effects(a)||this.property.has_side_effects(a):!0}),a(Oa,function(a){return!a.option("pure_getters")}),a(Na,function(a){return this.car.has_side_effects(a)||this.cdr.has_side_effects(a)})}(function(a,b){a.DEFMETHOD("has_side_effects",b)}),function(a){function b(){var a=this.body.length;return a>0&&q(this.body[a-1])}a(Y,function(){return null}),a(sa,function(){return this}),a(ba,b),a(Ba,b),a(za,function(){return this.alternative&&q(this.body)&&q(this.alternative)&&this})}(function(a,b){a.DEFMETHOD("aborts",b)}),a($,function(a,c){return a.scope.has_directive(a.value)!==a.scope?b(ca,a):a}),a(Z,function(a,c){return c.option("drop_debugger")?b(ca,a):a}),a(ea,function(a,c){return a.body instanceof xa&&c.loopcontrol_target(a.body.label)===a.body?b(ca,a):0==a.label.references.length?a.body:a}),a(aa,function(a,b){return a.body=i(a.body,b),a}),a(ba,function(a,c){switch(a.body=i(a.body,c),a.body.length){case 1:return a.body[0];case 0:return b(ca,a)}return a}),ma.DEFMETHOD("drop_unused",function(a){var c=this;if(a.option("unused")&&!(c instanceof na)&&!c.uses_eval){var d=[],e=new u,g=this,h=new x(function(b,f){if(b!==c){if(b instanceof ra)return e.add(b.name.name,b),!0;if(b instanceof Ha&&g===c)return b.definitions.forEach(function(b){b.value&&(e.add(b.name.name,b.value),b.value.has_side_effects(a)&&b.value.walk(h))}),!0;if(b instanceof lb)return m(d,b.definition()),!0;if(b instanceof ma){var i=g;return g=b,f(),g=i,!0}}});c.walk(h);for(var i=0;i=0;){var l=i[k];if(!l.unreferenced())break;i.pop(),a.warn("Dropping unused function argument {name} [{file}:{line},{col}]",{name:l.name,file:l.start.file,line:l.start.line,col:l.start.col})}if(e instanceof ra&&e!==c)return f(e.name.definition(),d)?e:(a.warn("Dropping unused function {name} [{file}:{line},{col}]",{name:e.name.name,file:e.name.start.file,line:e.name.start.line,col:e.name.start.col}),b(ca,e));if(e instanceof Ha&&!(j.parent()instanceof ka)){var m=e.definitions.filter(function(b){if(f(b.name.definition(),d))return!0;var c={name:b.name.name,file:b.name.start.file,line:b.name.start.line,col:b.name.start.col};return b.value&&b.value.has_side_effects(a)?(b._unused_side_effects=!0,a.warn("Side effects in initialization of unused variable {name} [{file}:{line},{col}]",c),!0):(a.warn("Dropping unused variable {name} [{file}:{line},{col}]",c),!1)});m=p(m,function(a,b){return!a.value&&b.value?-1:!b.value&&a.value?1:0});for(var n=[],k=0;k0&&(n.push(o.value),o.value=Na.from_array(n),n=[]),++k)}return n=n.length>0?b(ba,e,{body:[b(_,e,{body:Na.from_array(n)})]}):null,0!=m.length||n?0==m.length?h?V.splice(n.body):n:(e.definitions=m,n?(n.body.unshift(e),h?V.splice(n.body):n):e):b(ca,e)}if(e instanceof ja&&(g(e,this),e.init instanceof ba)){var q=e.init.body.slice(0,-1);return e.init=e.init.body.slice(-1)[0].body,q.push(e),h?V.splice(q):b(ba,e,{body:q})}return e instanceof ma&&e!==c?e:void 0});c.transform(j)}}),ma.DEFMETHOD("hoist_declarations",function(a){var c=a.option("hoist_funs"),d=a.option("hoist_vars"),e=this;if(c||d){var f=[],h=[],i=new u,j=0,k=0;e.walk(new x(function(a){return a instanceof ma&&a!==e?!0:a instanceof Ia?(++k,!0):void 0})),d=d&&k>1;var l=new O(function(a){if(a!==e){if(a instanceof $)return f.push(a),b(ca,a);if(a instanceof ra&&c)return h.push(a),b(ca,a);if(a instanceof Ia&&d){a.definitions.forEach(function(a){i.set(a.name.name,a),++j});var g=a.to_assignments(),k=l.parent();return k instanceof ka&&k.init===a?null==g?a.definitions[0].name:g:k instanceof ja&&k.init===a?g:g?b(_,a,{body:g}):b(ca,a)}if(a instanceof ma)return a}});if(e=e.transform(l),j>0){var m=[];if(i.each(function(a,b){e instanceof oa&&g(function(b){return b.name==a.name.name},e.argnames)?i.del(b):(a=a.clone(),a.value=null,m.push(a),i.set(b,a))}),m.length>0){for(var n=0;n1){if(d[1])return b(ja,a,{body:a.body});if(a instanceof ia&&c.option("dead_code")){var e=[];return j(c,a.body,e),b(ba,a,{body:e})}}return a}),a(ia,function(a,c){return c.option("loops")?(a=ga.prototype.optimize.call(a,c),a instanceof ia&&(r(a,c),a=b(ja,a,a).transform(c)),a):a}),a(ja,function(a,c){var d=a.condition;if(d&&(d=d.evaluate(c),a.condition=d[0]),!c.option("loops"))return a;if(d&&d.length>1&&!d[1]&&c.option("dead_code")){var e=[];return a.init instanceof Y?e.push(a.init):a.init&&e.push(b(_,a.init,{body:a.init})),j(c,a.body,e),b(ba,a,{body:e})}return r(a,c),a}),a(za,function(a,c){if(!c.option("conditionals"))return a;var d=a.condition.evaluate(c);if(a.condition=d[0],d.length>1)if(d[1]){if(c.warn("Condition always true [{file}:{line},{col}]",a.condition.start),c.option("dead_code")){var f=[];return a.alternative&&j(c,a.alternative,f),f.push(a.body),b(ba,a,{body:f}).transform(c)}}else if(c.warn("Condition always false [{file}:{line},{col}]",a.condition.start),c.option("dead_code")){var f=[];return j(c,a.body,f),a.alternative&&f.push(a.alternative),b(ba,a,{body:f}).transform(c)}e(a.alternative)&&(a.alternative=null);var g=a.condition.negate(c),h=k(a.condition,g)===g;if(a.alternative&&h){h=!1,a.condition=g;var i=a.body;a.body=a.alternative||b(ca),a.alternative=i}if(e(a.body)&&e(a.alternative))return b(_,a.condition,{body:a.condition}).transform(c);if(a.body instanceof _&&a.alternative instanceof _)return b(_,a,{body:b(Va,a,{condition:a.condition,consequent:a.body.body,alternative:a.alternative.body})}).transform(c);if(e(a.alternative)&&a.body instanceof _)return h?b(_,a,{body:b(Ua,a,{operator:"||",left:g,right:a.body.body})}).transform(c):b(_,a,{body:b(Ua,a,{operator:"&&",left:a.condition,right:a.body.body})}).transform(c);if(a.body instanceof ca&&a.alternative&&a.alternative instanceof _)return b(_,a,{body:b(Ua,a,{operator:"||",left:a.condition,right:a.alternative.body})}).transform(c);if(a.body instanceof ta&&a.alternative instanceof ta&&a.body.TYPE==a.alternative.TYPE)return b(a.body.CTOR,a,{value:b(Va,a,{condition:a.condition,consequent:a.body.value||b(vb,a.body).optimize(c),alternative:a.alternative.value||b(vb,a.alternative).optimize(c)})}).transform(c);if(a.body instanceof za&&!a.body.alternative&&!a.alternative&&(a.condition=b(Ua,a.condition,{operator:"&&",left:a.condition,right:a.body.condition}).transform(c),a.body=a.body.body),q(a.body)&&a.alternative){var l=a.alternative;return a.alternative=null,b(ba,a,{body:[a,l]}).transform(c)}if(q(a.alternative)){var m=a.body;return a.body=a.alternative,a.condition=h?g:a.condition.negate(c),a.alternative=null,b(ba,a,{body:[a,m]}).transform(c)}return a}),a(Aa,function(a,c){if(0==a.body.length&&c.option("conditionals"))return b(_,a,{body:a.expression}).transform(c);for(;;){var d=a.body[a.body.length-1];if(d){var e=d.body[d.body.length-1];if(e instanceof xa&&h(c.loopcontrol_target(e.label))===a&&d.body.pop(),d instanceof Ca&&0==d.body.length){a.body.pop();continue}}break}var f=a.expression.evaluate(c);a:if(2==f.length)try{if(a.expression=f[0],!c.option("dead_code"))break a;var g=f[1],i=!1,j=!1,k=!1,l=!1,m=!1,n=new O(function(d,e,f){if(d instanceof oa||d instanceof _)return d;if(d instanceof Aa&&d===a)return d=d.clone(),e(d,this),m?d:b(ba,d,{body:d.body.reduce(function(a,b){return a.concat(b.body)},[])}).transform(c);if(d instanceof za||d instanceof Ea){var h=i;return i=!j,e(d,this),i=h,d}if(d instanceof da||d instanceof Aa){var h=j;return j=!0,e(d,this),j=h,d}if(d instanceof xa&&this.loopcontrol_target(d.label)===a)return i?(m=!0,d):j?d:(l=!0,f?V.skip:b(ca,d));if(d instanceof Ba&&this.parent()===a){if(l)return V.skip;if(d instanceof Da){var n=d.expression.evaluate(c);if(n.length<2)throw a;return n[1]===g||k?(k=!0,q(d)&&(l=!0),e(d,this),d):V.skip}return e(d,this),d}});n.stack=c.stack.slice(),a=a.transform(n)}catch(o){if(o!==a)throw o}return a}),a(Da,function(a,b){return a.body=i(a.body,b),a}),a(Ea,function(a,b){return a.body=i(a.body,b),a}),Ha.DEFMETHOD("remove_initializers",function(){this.definitions.forEach(function(a){a.value=null})}),Ha.DEFMETHOD("to_assignments",function(){var a=this.definitions.reduce(function(a,c){if(c.value){var d=b(lb,c.name,c.name);a.push(b(Wa,c,{operator:"=",left:d,right:c.value}))}return a},[]);return 0==a.length?null:Na.from_array(a)}),a(Ha,function(a,c){return 0==a.definitions.length?b(ca,a):a}),a(qa,function(a,b){return a=oa.prototype.optimize.call(a,b),b.option("unused")&&!b.option("keep_fnames")&&a.name&&a.name.unreferenced()&&(a.name=null),a}),a(La,function(a,d){if(d.option("unsafe")){var e=a.expression;if(e instanceof lb&&e.undeclared())switch(e.name){case"Array":if(1!=a.args.length)return b(Xa,a,{elements:a.args}).transform(d);break;case"Object":if(0==a.args.length)return b(Ya,a,{properties:[]});break;case"String":if(0==a.args.length)return b(pb,a,{value:""});if(a.args.length<=1)return b(Ua,a,{left:a.args[0],operator:"+",right:b(pb,a,{value:""})}).transform(d);break;case"Number":if(0==a.args.length)return b(qb,a,{value:0});if(1==a.args.length)return b(Sa,a,{expression:a.args[0],operator:"+"}).transform(d);case"Boolean":if(0==a.args.length)return b(zb,a);if(1==a.args.length)return b(Sa,a,{expression:b(Sa,null,{expression:a.args[0],operator:"!"}),operator:"!"}).transform(d);break;case"Function":if(0==a.args.length)return b(qa,a,{argnames:[],body:[]});if(t(a.args,function(a){return a instanceof pb}))try{var f="(function("+a.args.slice(0,-1).map(function(a){return a.value}).join(",")+"){"+a.args[a.args.length-1].value+"})()",g=N(f);g.figure_out_scope({screw_ie8:d.option("screw_ie8")});var h=new R(d.options);g=g.transform(h),g.figure_out_scope({screw_ie8:d.option("screw_ie8")}),g.mangle_names();var i;try{g.walk(new x(function(a){if(a instanceof oa)throw i=a,g}))}catch(j){if(j!==g)throw j}if(!i)return a;var l=i.argnames.map(function(c,d){return b(pb,a.args[d],{value:c.print_to_string()})}),f=Q();return ba.prototype._codegen.call(i,i,f),f=f.toString().replace(/^\{|\}$/g,""),l.push(b(pb,a.args[a.args.length-1],{value:f})),a.args=l,a}catch(j){if(!(j instanceof J))throw console.log(j),j;d.warn("Error parsing code passed to new Function [{file}:{line},{col}]",a.args[a.args.length-1].start),d.warn(j.toString())}}else{if(e instanceof Pa&&"toString"==e.property&&0==a.args.length)return b(Ua,a,{left:b(pb,a,{value:""}),operator:"+",right:e.expression}).transform(d);if(e instanceof Pa&&e.expression instanceof Xa&&"join"==e.property){var m=0==a.args.length?",":a.args[0].evaluate(d)[1];if(null!=m){var n=e.expression.elements.reduce(function(a,b){if(b=b.evaluate(d),0==a.length||1==b.length)a.push(b);else{var e=a[a.length-1];if(2==e.length){var f=""+e[1]+m+b[1];a[a.length-1]=[c(d,f,e[0]),f]}else a.push(b)}return a},[]);if(0==n.length)return b(pb,a,{value:""});if(1==n.length)return n[0][0];if(""==m){var o;return o=n[0][0]instanceof pb||n[1][0]instanceof pb?n.shift()[0]:b(pb,a,{value:""}),n.reduce(function(a,c){return b(Ua,c[0],{operator:"+",left:a,right:c[0]})},o).transform(d)}var p=a.clone();return p.expression=p.expression.clone(),p.expression.expression=p.expression.expression.clone(),p.expression.expression.elements=n.map(function(a){return a[0]}),k(a,p)}}}}if(d.option("side_effects")&&a.expression instanceof qa&&0==a.args.length&&!aa.prototype.has_side_effects.call(a.expression,d))return b(vb,a).transform(d);if(d.option("drop_console")&&a.expression instanceof Oa){for(var q=a.expression.expression;q.expression;)q=q.expression;if(q instanceof lb&&"console"==q.name&&q.undeclared())return b(vb,a).transform(d)}return a.evaluate(d)[0]}),a(Ma,function(a,c){if(c.option("unsafe")){var d=a.expression;if(d instanceof lb&&d.undeclared())switch(d.name){case"Object":case"RegExp":case"Function":case"Error":case"Array":return b(La,a,a).transform(c)}}return a}),a(Na,function(a,c){if(!c.option("side_effects"))return a;if(!a.car.has_side_effects(c)){var d;if(!(a.cdr instanceof lb&&"eval"==a.cdr.name&&a.cdr.undeclared()&&(d=c.parent())instanceof La&&d.expression===a))return a.cdr}if(c.option("cascade")){if(a.car instanceof Wa&&!a.car.left.has_side_effects(c)){if(a.car.left.equivalent_to(a.cdr))return a.car;if(a.cdr instanceof La&&a.cdr.expression.equivalent_to(a.car.left))return a.cdr.expression=a.car,a.cdr}if(!a.car.has_side_effects(c)&&!a.cdr.has_side_effects(c)&&a.car.equivalent_to(a.cdr))return a.car}return a.cdr instanceof Sa&&"void"==a.cdr.operator&&!a.cdr.expression.has_side_effects(c)?(a.cdr.expression=a.car,a.cdr):a.cdr instanceof vb?b(Sa,a,{operator:"void",expression:a.car}):a}),Ra.DEFMETHOD("lift_sequences",function(a){if(a.option("sequences")&&this.expression instanceof Na){var b=this.expression,c=b.to_array();return this.expression=c.pop(),c.push(this),b=Na.from_array(c).transform(a)}return this}),a(Ta,function(a,b){return a.lift_sequences(b)}),a(Sa,function(a,c){a=a.lift_sequences(c);var d=a.expression;if(c.option("booleans")&&c.in_boolean_context()){switch(a.operator){case"!":if(d instanceof Sa&&"!"==d.operator)return d.expression;break;case"typeof":return c.warn("Boolean expression always true [{file}:{line},{col}]",a.start),b(Ab,a)}d instanceof Ua&&"!"==a.operator&&(a=k(a,d.negate(c)))}return a.evaluate(c)[0]}),Ua.DEFMETHOD("lift_sequences",function(a){if(a.option("sequences")){if(this.left instanceof Na){var b=this.left,c=b.to_array();return this.left=c.pop(),c.push(this),b=Na.from_array(c).transform(a)}if(this.right instanceof Na&&this instanceof Wa&&!v(this.left,a)){var b=this.right,c=b.to_array();return this.right=c.pop(),c.push(this),b=Na.from_array(c).transform(a)}}return this});var y=s("== === != !== * & | ^");a(Ua,function(a,c){var d=c.has_directive("use asm")?l:function(b,d){if(d||!a.left.has_side_effects(c)&&!a.right.has_side_effects(c)){b&&(a.operator=b);var e=a.left;a.left=a.right,a.right=e}};if(y(a.operator)&&(a.right instanceof ob&&!(a.left instanceof ob)&&(a.left instanceof Ua&&Tb[a.left.operator]>=Tb[a.operator]||d(null,!0)),/^[!=]==?$/.test(a.operator))){if(a.left instanceof lb&&a.right instanceof Va){if(a.right.consequent instanceof lb&&a.right.consequent.definition()===a.left.definition()){if(/^==/.test(a.operator))return a.right.condition;if(/^!=/.test(a.operator))return a.right.condition.negate(c)}if(a.right.alternative instanceof lb&&a.right.alternative.definition()===a.left.definition()){if(/^==/.test(a.operator))return a.right.condition.negate(c);if(/^!=/.test(a.operator))return a.right.condition}}if(a.right instanceof lb&&a.left instanceof Va){if(a.left.consequent instanceof lb&&a.left.consequent.definition()===a.right.definition()){if(/^==/.test(a.operator))return a.left.condition;if(/^!=/.test(a.operator))return a.left.condition.negate(c)}if(a.left.alternative instanceof lb&&a.left.alternative.definition()===a.right.definition()){if(/^==/.test(a.operator))return a.left.condition.negate(c);if(/^!=/.test(a.operator))return a.left.condition}}}if(a=a.lift_sequences(c),c.option("comparisons"))switch(a.operator){case"===":case"!==":(a.left.is_string(c)&&a.right.is_string(c)||a.left.is_boolean()&&a.right.is_boolean())&&(a.operator=a.operator.substr(0,2));case"==":case"!=":a.left instanceof pb&&"undefined"==a.left.value&&a.right instanceof Sa&&"typeof"==a.right.operator&&c.option("unsafe")&&(a.right.expression instanceof lb&&a.right.expression.undeclared()||(a.right=a.right.expression,a.left=b(vb,a.left).optimize(c),2==a.operator.length&&(a.operator+="=")))}if(c.option("booleans")&&c.in_boolean_context())switch(a.operator){case"&&":var e=a.left.evaluate(c),f=a.right.evaluate(c);if(e.length>1&&!e[1]||f.length>1&&!f[1])return c.warn("Boolean && always false [{file}:{line},{col}]",a.start),a.left.has_side_effects(c)?b(Na,a,{car:a.left,cdr:b(zb)}).optimize(c):b(zb,a);if(e.length>1&&e[1])return f[0];if(f.length>1&&f[1])return e[0];break;case"||":var e=a.left.evaluate(c),f=a.right.evaluate(c);if(e.length>1&&e[1]||f.length>1&&f[1])return c.warn("Boolean || always true [{file}:{line},{col}]",a.start),a.left.has_side_effects(c)?b(Na,a,{car:a.left,cdr:b(Ab)}).optimize(c):b(Ab,a);if(e.length>1&&!e[1])return f[0];if(f.length>1&&!f[1])return e[0];break;case"+":var e=a.left.evaluate(c),f=a.right.evaluate(c);if(e.length>1&&e[0]instanceof pb&&e[1]||f.length>1&&f[0]instanceof pb&&f[1])return c.warn("+ in boolean context always true [{file}:{line},{col}]",a.start),b(Ab,a)}if(c.option("comparisons")){if(!(c.parent()instanceof Ua)||c.parent()instanceof Wa){var g=b(Sa,a,{operator:"!",expression:a.negate(c)});a=k(a,g)}switch(a.operator){case"<":d(">");break;case"<=":d(">=")}}return"+"==a.operator&&a.right instanceof pb&&""===a.right.getValue()&&a.left instanceof Ua&&"+"==a.left.operator&&a.left.is_string(c)?a.left:(c.option("evaluate")&&"+"==a.operator&&(a.left instanceof ob&&a.right instanceof Ua&&"+"==a.right.operator&&a.right.left instanceof ob&&a.right.is_string(c)&&(a=b(Ua,a,{operator:"+",left:b(pb,null,{value:""+a.left.getValue()+a.right.left.getValue(),start:a.left.start,end:a.right.left.end}),right:a.right.right})),a.right instanceof ob&&a.left instanceof Ua&&"+"==a.left.operator&&a.left.right instanceof ob&&a.left.is_string(c)&&(a=b(Ua,a,{operator:"+",left:a.left.left,right:b(pb,null,{value:""+a.left.right.getValue()+a.right.getValue(),start:a.left.right.start,end:a.right.end})})),a.left instanceof Ua&&"+"==a.left.operator&&a.left.is_string(c)&&a.left.right instanceof ob&&a.right instanceof Ua&&"+"==a.right.operator&&a.right.left instanceof ob&&a.right.is_string(c)&&(a=b(Ua,a,{operator:"+",left:b(Ua,a.left,{operator:"+",left:a.left.left,right:b(pb,null,{value:""+a.left.right.getValue()+a.right.left.getValue(),start:a.left.right.start,end:a.right.left.end})}),right:a.right.right}))),a.right instanceof Ua&&a.right.operator==a.operator&&("*"==a.operator||"&&"==a.operator||"||"==a.operator)?(a.left=b(Ua,a.left,{operator:a.operator,left:a.left,right:a.right.left}),a.right=a.right.right,a.transform(c)):a.evaluate(c)[0])}),a(lb,function(a,d){if(a.undeclared()){var e=d.option("global_defs");if(e&&e.hasOwnProperty(a.name))return c(d,e[a.name],a);switch(a.name){case"undefined":return b(vb,a);case"NaN":return b(ub,a).transform(d);case"Infinity":return b(xb,a).transform(d)}}return a}),a(xb,function(a,c){return b(Ua,a,{operator:"/",left:b(qb,a,{value:1}),right:b(qb,a,{value:0})})}),a(vb,function(a,c){if(c.option("unsafe")){var d=c.find_parent(ma),e=d.find_variable("undefined");if(e){var f=b(lb,a,{name:"undefined",scope:d,thedef:e});return f.reference(),f}}return a});var z=["+","-","/","*","%",">>","<<",">>>","|","^","&"];a(Wa,function(a,b){return a=a.lift_sequences(b),"="==a.operator&&a.left instanceof lb&&a.right instanceof Ua&&a.right.left instanceof lb&&a.right.left.name==a.left.name&&f(a.right.operator,z)&&(a.operator=a.right.operator+"=",a.right=a.right.right),a}),a(Va,function(a,d){if(!d.option("conditionals"))return a;if(a.condition instanceof Na){var e=a.condition.car;return a.condition=a.condition.cdr,Na.cons(e,a)}var f=a.condition.evaluate(d);if(f.length>1)return f[1]?(d.warn("Condition always true [{file}:{line},{col}]",a.start),a.consequent):(d.warn("Condition always false [{file}:{line},{col}]",a.start),a.alternative);var g=f[0].negate(d);k(f[0],g)===g&&(a=b(Va,a,{condition:g,consequent:a.alternative,alternative:a.consequent}));var h=a.consequent,i=a.alternative;if(h instanceof Wa&&i instanceof Wa&&h.operator==i.operator&&h.left.equivalent_to(i.left)&&!h.left.has_side_effects(d))return b(Wa,a,{operator:h.operator,left:h.left,right:b(Va,a,{condition:a.condition,consequent:h.right,alternative:i.right})});if(h instanceof La&&i.TYPE===h.TYPE&&h.args.length==i.args.length&&!h.expression.has_side_effects(d)&&h.expression.equivalent_to(i.expression)){if(0==h.args.length)return b(Na,a,{car:a.condition,cdr:h});if(1==h.args.length)return h.args[0]=b(Va,a,{condition:a.condition,consequent:h.args[0],alternative:i.args[0]}),h}return h instanceof Va&&h.alternative.equivalent_to(i)?b(Va,a,{condition:b(Ua,a,{left:a.condition,operator:"&&",right:h.condition}),consequent:h.consequent,alternative:i}):h instanceof ob&&i instanceof ob&&h.equivalent_to(i)?a.condition.has_side_effects(d)?Na.from_array([a.condition,c(d,h.value,a)]):c(d,h.value,a):h instanceof Ab&&i instanceof zb?(a.condition=a.condition.negate(d),b(Sa,a.condition,{operator:"!",expression:a.condition})):h instanceof zb&&i instanceof Ab?a.condition.negate(d):a}),a(yb,function(a,c){if(c.option("booleans")){var d=c.parent();return d instanceof Ua&&("=="==d.operator||"!="==d.operator)?(c.warn("Non-strict equality against boolean: {operator} {value} [{file}:{line},{col}]",{operator:d.operator,value:a.value,file:d.start.file,line:d.start.line,col:d.start.col}),b(qb,a,{value:+a.value})):b(Sa,a,{operator:"!",expression:b(qb,a,{value:1-a.value})})}return a}),a(Qa,function(a,c){var d=a.property;if(d instanceof pb&&c.option("properties")){if(d=d.getValue(),Db(d)?c.option("screw_ie8"):H(d))return b(Pa,a,{expression:a.expression,property:d}).optimize(c);var e=parseFloat(d);isNaN(e)||e.toString()!=d||(a.property=b(qb,a.property,{value:e}))}return a}),a(Pa,function(a,c){var d=a.property;return Db(d)&&!c.option("screw_ie8")?b(Qa,a,{expression:a.expression,property:b(pb,a,{value:d})}).optimize(c):a.evaluate(c)[0]}),a(Xa,w),a(Ya,w),a(rb,w)}(),function(){function a(a){var b=a.loc,c=b&&b.start,d=a.range;return new W({file:b&&b.source,line:c&&c.line,col:c&&c.column,pos:d?d[0]:a.start,endline:c&&c.line,endcol:c&&c.column,endpos:d?d[0]:a.start})}function b(a){var b=a.loc,c=b&&b.end,d=a.range;return new W({file:b&&b.source,line:c&&c.line,col:c&&c.column,pos:d?d[1]:a.end,endline:c&&c.line,endcol:c&&c.column,endpos:d?d[1]:a.end})}function c(c,e,j){var k="function From_Moz_"+c+"(M){\n";k+="return new "+e.name+"({\nstart: my_start_token(M),\nend: my_end_token(M)";var l="function To_Moz_"+c+"(M){\n";l+="return {\ntype: "+JSON.stringify(c),j&&j.split(/\s*,\s*/).forEach(function(a){var b=/([a-z0-9$_]+)(=|@|>|%)([a-z0-9$_]+)/i.exec(a);if(!b)throw new Error("Can't understand property map: "+a);var c=b[1],d=b[2],e=b[3];switch(k+=",\n"+e+": ",l+=",\n"+c+": ",d){case"@":k+="M."+c+".map(from_moz)",l+="M."+e+".map(to_moz)";break;case">":k+="from_moz(M."+c+")",l+="to_moz(M."+e+")";break;case"=":k+="M."+c,l+="M."+e;break;case"%":k+="from_moz(M."+c+").body",l+="to_moz_block(M)";break;default:throw new Error("Can't understand operator in propmap: "+a)}}),k+="\n})\n}",l+="\n}\n}",k=new Function("my_start_token","my_end_token","from_moz","return("+k+")")(a,b,d),l=new Function("to_moz","to_moz_block","return("+l+")")(g,h),i[c]=k,f(e,l)}function d(a){j.push(a);var b=null!=a?i[a.type](a):null;return j.pop(),b}function e(a,b,c){var d=a.start,e=a.end;return null!=d.pos&&null!=e.endpos&&(b.range=[d.pos,e.endpos]),d.line&&(b.loc={start:{line:d.line,column:d.col},end:e.endline?{line:e.endline,column:e.endcol}:null},d.file&&(b.loc.source=d.file)),b}function f(a,b){a.DEFMETHOD("to_mozilla_ast",function(){return e(this,b(this))})}function g(a){return null!=a?a.to_mozilla_ast():null}function h(a){return{type:"BlockStatement",body:a.body.map(g)}}var i={ExpressionStatement:function(c){var e=c.expression;return"Literal"===e.type&&"string"==typeof e.value?new $({start:a(c),end:b(c),value:e.value}):new _({start:a(c),end:b(c),body:d(e)})},TryStatement:function(c){var e=c.handlers||[c.handler];if(e.length>1||c.guardedHandlers&&c.guardedHandlers.length)throw new Error("Multiple catch clauses are not supported.");return new Ea({start:a(c),end:b(c),body:d(c.block).body,bcatch:d(e[0]),bfinally:c.finalizer?new Ga(d(c.finalizer)):null})},Property:function(c){var e=c.key,f="Identifier"==e.type?e.name:e.value,g={start:a(e),end:b(c.value),key:f,value:d(c.value)};switch(c.kind){case"init":return new $a(g);case"set":return g.value.name=d(e),new _a(g);case"get":return g.value.name=d(e),new ab(g)}},ObjectExpression:function(c){return new Ya({start:a(c),end:b(c),properties:c.properties.map(function(a){return a.type="Property",d(a)})})},SequenceExpression:function(a){return Na.from_array(a.expressions.map(d))},MemberExpression:function(c){return new(c.computed?Qa:Pa)({start:a(c),end:b(c),property:c.computed?d(c.property):c.property.name,expression:d(c.object)})},SwitchCase:function(c){return new(c.test?Da:Ca)({start:a(c),end:b(c),expression:d(c.test),body:c.consequent.map(d)})},VariableDeclaration:function(c){return new("const"===c.kind?Ja:Ia)({start:a(c),end:b(c),definitions:c.declarations.map(d)})},Literal:function(c){var d=c.value,e={start:a(c),end:b(c)};if(null===d)return new tb(e); switch(typeof d){case"string":return e.value=d,new pb(e);case"number":return e.value=d,new qb(e);case"boolean":return new(d?Ab:zb)(e);default:return e.value=d,new rb(e)}},Identifier:function(c){var d=j[j.length-2];return new("LabeledStatement"==d.type?kb:"VariableDeclarator"==d.type&&d.id===c?"const"==d.kind?fb:eb:"FunctionExpression"==d.type?d.id===c?ib:gb:"FunctionDeclaration"==d.type?d.id===c?hb:gb:"CatchClause"==d.type?jb:"BreakStatement"==d.type||"ContinueStatement"==d.type?mb:lb)({start:a(c),end:b(c),name:c.name})}};i.UpdateExpression=i.UnaryExpression=function(c){var e="prefix"in c?c.prefix:"UnaryExpression"==c.type?!0:!1;return new(e?Sa:Ta)({start:a(c),end:b(c),operator:c.operator,expression:d(c.argument)})},c("Program",na,"body@body"),c("EmptyStatement",ca),c("BlockStatement",ba,"body@body"),c("IfStatement",za,"test>condition, consequent>body, alternate>alternative"),c("LabeledStatement",ea,"label>label, body>body"),c("BreakStatement",xa,"label>label"),c("ContinueStatement",ya,"label>label"),c("WithStatement",la,"object>expression, body>body"),c("SwitchStatement",Aa,"discriminant>expression, cases@body"),c("ReturnStatement",ua,"argument>value"),c("ThrowStatement",va,"argument>value"),c("WhileStatement",ia,"test>condition, body>body"),c("DoWhileStatement",ha,"test>condition, body>body"),c("ForStatement",ja,"init>init, test>condition, update>step, body>body"),c("ForInStatement",ka,"left>init, right>object, body>body"),c("DebuggerStatement",Z),c("FunctionDeclaration",ra,"id>name, params@argnames, body%body"),c("VariableDeclarator",Ka,"id>name, init>value"),c("CatchClause",Fa,"param>argname, body%body"),c("ThisExpression",nb),c("ArrayExpression",Xa,"elements@elements"),c("FunctionExpression",qa,"id>name, params@argnames, body%body"),c("BinaryExpression",Ua,"operator=operator, left>left, right>right"),c("LogicalExpression",Ua,"operator=operator, left>left, right>right"),c("AssignmentExpression",Wa,"operator=operator, left>left, right>right"),c("ConditionalExpression",Va,"test>condition, consequent>consequent, alternate>alternative"),c("NewExpression",Ma,"callee>expression, arguments@args"),c("CallExpression",La,"callee>expression, arguments@args"),f($,function(a){return{type:"ExpressionStatement",expression:{type:"Literal",value:a.value}}}),f(_,function(a){return{type:"ExpressionStatement",expression:g(a.body)}}),f(Ba,function(a){return{type:"SwitchCase",test:g(a.expression),consequent:a.body.map(g)}}),f(Ea,function(a){return{type:"TryStatement",block:h(a),handler:g(a.bcatch),guardedHandlers:[],finalizer:g(a.bfinally)}}),f(Fa,function(a){return{type:"CatchClause",param:g(a.argname),guard:null,body:h(a)}}),f(Ha,function(a){return{type:"VariableDeclaration",kind:a instanceof Ja?"const":"var",declarations:a.definitions.map(g)}}),f(Na,function(a){return{type:"SequenceExpression",expressions:a.to_array().map(g)}}),f(Oa,function(a){var b=a instanceof Qa;return{type:"MemberExpression",object:g(a.expression),computed:b,property:b?g(a.property):{type:"Identifier",name:a.property}}}),f(Ra,function(a){return{type:"++"==a.operator||"--"==a.operator?"UpdateExpression":"UnaryExpression",operator:a.operator,prefix:a instanceof Sa,argument:g(a.expression)}}),f(Ua,function(a){return{type:"&&"==a.operator||"||"==a.operator?"LogicalExpression":"BinaryExpression",left:g(a.left),operator:a.operator,right:g(a.right)}}),f(Ya,function(a){return{type:"ObjectExpression",properties:a.properties.map(g)}}),f(Za,function(a){var b,c=E(a.key)?{type:"Identifier",name:a.key}:{type:"Literal",value:a.key};return a instanceof $a?b="init":a instanceof ab?b="get":a instanceof _a&&(b="set"),{type:"Property",kind:b,key:c,value:g(a.value)}}),f(bb,function(a){var b=a.definition();return{type:"Identifier",name:b?b.mangled_name||b.name:a.name}}),f(ob,function(a){var b=a.value;return"number"==typeof b&&(0>b||0===b&&0>1/b)?{type:"UnaryExpression",operator:"-",prefix:!0,argument:{type:"Literal",value:-b}}:{type:"Literal",value:b}}),f(sb,function(a){return{type:"Identifier",name:String(a.value)}}),yb.DEFMETHOD("to_mozilla_ast",ob.prototype.to_mozilla_ast),tb.DEFMETHOD("to_mozilla_ast",ob.prototype.to_mozilla_ast),wb.DEFMETHOD("to_mozilla_ast",function(){return null}),aa.DEFMETHOD("to_mozilla_ast",ba.prototype.to_mozilla_ast),oa.DEFMETHOD("to_mozilla_ast",qa.prototype.to_mozilla_ast);var j=null;X.from_mozilla_ast=function(a){var b=j;j=[];var c=d(a);return j=b,c}}(),a.array_to_hash=c,a.slice=d,a.characters=e,a.member=f,a.find_if=g,a.repeat_string=h,a.DefaultsError=i,a.defaults=j,a.merge=k,a.noop=l,a.MAP=V,a.push_uniq=m,a.string_template=n,a.remove=o,a.mergeSort=p,a.set_difference=q,a.set_intersection=r,a.makePredicate=s,a.all=t,a.Dictionary=u,a.DEFNODE=v,a.AST_Token=W,a.AST_Node=X,a.AST_Statement=Y,a.AST_Debugger=Z,a.AST_Directive=$,a.AST_SimpleStatement=_,a.walk_body=w,a.AST_Block=aa,a.AST_BlockStatement=ba,a.AST_EmptyStatement=ca,a.AST_StatementWithBody=da,a.AST_LabeledStatement=ea,a.AST_IterationStatement=fa,a.AST_DWLoop=ga,a.AST_Do=ha,a.AST_While=ia,a.AST_For=ja,a.AST_ForIn=ka,a.AST_With=la,a.AST_Scope=ma,a.AST_Toplevel=na,a.AST_Lambda=oa,a.AST_Accessor=pa,a.AST_Function=qa,a.AST_Defun=ra,a.AST_Jump=sa,a.AST_Exit=ta,a.AST_Return=ua,a.AST_Throw=va,a.AST_LoopControl=wa,a.AST_Break=xa,a.AST_Continue=ya,a.AST_If=za,a.AST_Switch=Aa,a.AST_SwitchBranch=Ba,a.AST_Default=Ca,a.AST_Case=Da,a.AST_Try=Ea,a.AST_Catch=Fa,a.AST_Finally=Ga,a.AST_Definitions=Ha,a.AST_Var=Ia,a.AST_Const=Ja,a.AST_VarDef=Ka,a.AST_Call=La,a.AST_New=Ma,a.AST_Seq=Na,a.AST_PropAccess=Oa,a.AST_Dot=Pa,a.AST_Sub=Qa,a.AST_Unary=Ra,a.AST_UnaryPrefix=Sa,a.AST_UnaryPostfix=Ta,a.AST_Binary=Ua,a.AST_Conditional=Va,a.AST_Assign=Wa,a.AST_Array=Xa,a.AST_Object=Ya,a.AST_ObjectProperty=Za,a.AST_ObjectKeyVal=$a,a.AST_ObjectSetter=_a,a.AST_ObjectGetter=ab,a.AST_Symbol=bb,a.AST_SymbolAccessor=cb,a.AST_SymbolDeclaration=db,a.AST_SymbolVar=eb,a.AST_SymbolConst=fb,a.AST_SymbolFunarg=gb,a.AST_SymbolDefun=hb,a.AST_SymbolLambda=ib,a.AST_SymbolCatch=jb,a.AST_Label=kb,a.AST_SymbolRef=lb,a.AST_LabelRef=mb,a.AST_This=nb,a.AST_Constant=ob,a.AST_String=pb,a.AST_Number=qb,a.AST_RegExp=rb,a.AST_Atom=sb,a.AST_Null=tb,a.AST_NaN=ub,a.AST_Undefined=vb,a.AST_Hole=wb,a.AST_Infinity=xb,a.AST_Boolean=yb,a.AST_False=zb,a.AST_True=Ab,a.TreeWalker=x,a.KEYWORDS=Bb,a.KEYWORDS_ATOM=Cb,a.RESERVED_WORDS=Db,a.KEYWORDS_BEFORE_EXPRESSION=Eb,a.OPERATOR_CHARS=Fb,a.RE_HEX_NUMBER=Gb,a.RE_OCT_NUMBER=Hb,a.RE_DEC_NUMBER=Ib,a.OPERATORS=Jb,a.WHITESPACE_CHARS=Kb,a.PUNC_BEFORE_EXPRESSION=Lb,a.PUNC_CHARS=Mb,a.REGEXP_MODIFIERS=Nb,a.UNICODE=Ob,a.is_letter=y,a.is_digit=z,a.is_alphanumeric_char=A,a.is_unicode_digit=B,a.is_unicode_combining_mark=C,a.is_unicode_connector_punctuation=D,a.is_identifier=E,a.is_identifier_start=F,a.is_identifier_char=G,a.is_identifier_string=H,a.parse_js_number=I,a.JS_Parse_Error=J,a.js_error=K,a.is_token=L,a.EX_EOF=Pb,a.tokenizer=M,a.UNARY_PREFIX=Qb,a.UNARY_POSTFIX=Rb,a.ASSIGNMENT=Sb,a.PRECEDENCE=Tb,a.STATEMENTS_WITH_LABELS=Ub,a.ATOMIC_START_TOKEN=Vb,a.parse=N,a.TreeTransformer=O,a.SymbolDef=P,a.base54=Wb,a.OutputStream=Q,a.Compressor=R,a.SourceMap=S,a.find_builtins=T,a.mangle_properties=U}({},function(){return this}()),/*! @source http://purl.eligrey.com/github/Blob.js/blob/master/Blob.js */ function(a){"use strict";if(a.URL=a.URL||a.webkitURL,a.Blob&&a.URL)try{return void new Blob}catch(b){}var c=a.BlobBuilder||a.WebKitBlobBuilder||a.MozBlobBuilder||function(a){var b=function(a){return Object.prototype.toString.call(a).match(/^\[object\s(.*)\]$/)[1]},c=function(){this.data=[]},d=function(a,b,c){this.data=a,this.size=a.length,this.type=b,this.encoding=c},e=c.prototype,f=d.prototype,g=a.FileReaderSync,h=function(a){this.code=this[this.name=a]},i="NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR".split(" "),j=i.length,k=a.URL||a.webkitURL||a,l=k.createObjectURL,m=k.revokeObjectURL,n=k,o=a.btoa,p=a.atob,q=a.ArrayBuffer,r=a.Uint8Array,s=/^[\w-]+:\/*\[?[\w\.:-]+\]?(?::[0-9]+)?/;for(d.fake=f.fake=!0;j--;)h.prototype[i[j]]=j+1;return k.createObjectURL||(n=a.URL=function(a){var b,c=document.createElementNS("http://www.w3.org/1999/xhtml","a");return c.href=a,"origin"in c||("data:"===c.protocol.toLowerCase()?c.origin=null:(b=a.match(s),c.origin=b&&b[1])),c}),n.createObjectURL=function(a){var b,c=a.type;return null===c&&(c="application/octet-stream"),a instanceof d?(b="data:"+c,"base64"===a.encoding?b+";base64,"+a.data:"URI"===a.encoding?b+","+decodeURIComponent(a.data):o?b+";base64,"+o(a.data):b+","+encodeURIComponent(a.data)):l?l.call(k,a):void 0},n.revokeObjectURL=function(a){"data:"!==a.substring(0,5)&&m&&m.call(k,a)},e.append=function(a){var c=this.data;if(r&&(a instanceof q||a instanceof r)){for(var e="",f=new r(a),i=0,j=f.length;j>i;i++)e+=String.fromCharCode(f[i]);c.push(e)}else if("Blob"===b(a)||"File"===b(a)){if(!g)throw new h("NOT_READABLE_ERR");var k=new g;c.push(k.readAsBinaryString(a))}else a instanceof d?"base64"===a.encoding&&p?c.push(p(a.data)):"URI"===a.encoding?c.push(decodeURIComponent(a.data)):"raw"===a.encoding&&c.push(a.data):("string"!=typeof a&&(a+=""),c.push(unescape(encodeURIComponent(a))))},e.getBlob=function(a){return arguments.length||(a=null),new d(this.data.join(""),a,"raw")},e.toString=function(){return"[object BlobBuilder]"},f.slice=function(a,b,c){var e=arguments.length;return 3>e&&(c=null),new d(this.data.slice(a,e>1?b:this.data.length),c,this.encoding)},f.toString=function(){return"[object Blob]"},f.close=function(){this.size=0,delete this.data},c}(a);a.Blob=function(a,b){var d=b?b.type||"":"",e=new c;if(a)for(var f=0,g=a.length;g>f;f++)Uint8Array&&a[f]instanceof Uint8Array?e.append(a[f].buffer):e.append(a[f]);var h=e.getBlob(d);return!h.slice&&h.webkitSlice&&(h.slice=h.webkitSlice),h};var d=Object.getPrototypeOf||function(a){return a.__proto__};a.Blob.prototype=d(new a.Blob)}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||this.content||this);/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */ var saveAs=saveAs||"undefined"!=typeof navigator&&navigator.msSaveOrOpenBlob&&navigator.msSaveOrOpenBlob.bind(navigator)||function(a){"use strict";if("undefined"==typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var b=a.document,c=function(){return a.URL||a.webkitURL||a},d=b.createElementNS("http://www.w3.org/1999/xhtml","a"),e="download"in d,f=function(c){var d=b.createEvent("MouseEvents");d.initMouseEvent("click",!0,!1,a,0,0,0,0,0,!1,!1,!1,!1,0,null),c.dispatchEvent(d)},g=a.webkitRequestFileSystem,h=a.requestFileSystem||g||a.mozRequestFileSystem,i=function(b){(a.setImmediate||a.setTimeout)(function(){throw b},0)},j="application/octet-stream",k=0,l=500,m=function(b){var d=function(){"string"==typeof b?c().revokeObjectURL(b):b.remove()};a.chrome?d():setTimeout(d,l)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"==typeof e)try{e.call(a,c||a)}catch(f){i(f)}}},o=function(b,i){var l,o,p,q=this,r=b.type,s=!1,t=function(){n(q,"writestart progress write writeend".split(" "))},u=function(){if((s||!l)&&(l=c().createObjectURL(b)),o)o.location.href=l;else{var d=a.open(l,"_blank");void 0==d&&"undefined"!=typeof safari&&(a.location.href=l)}q.readyState=q.DONE,t(),m(l)},v=function(a){return function(){return q.readyState!==q.DONE?a.apply(this,arguments):void 0}},w={create:!0,exclusive:!1};return q.readyState=q.INIT,i||(i="download"),e?(l=c().createObjectURL(b),d.href=l,d.download=i,f(d),q.readyState=q.DONE,t(),void m(l)):(/^\s*(?:text\/(?:plain|xml)|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(b.type)&&(b=new Blob(["\ufeff",b],{type:b.type})),a.chrome&&r&&r!==j&&(p=b.slice||b.webkitSlice,b=p.call(b,0,b.size,j),s=!0),g&&"download"!==i&&(i+=".download"),(r===j||g)&&(o=a),h?(k+=b.size,void h(a.TEMPORARY,k,v(function(a){a.root.getDirectory("saved",w,v(function(a){var c=function(){a.getFile(i,w,v(function(a){a.createWriter(v(function(c){c.onwriteend=function(b){o.location.href=a.toURL(),q.readyState=q.DONE,n(q,"writeend",b),m(a)},c.onerror=function(){var a=c.error;a.code!==a.ABORT_ERR&&u()},"writestart progress write abort".split(" ").forEach(function(a){c["on"+a]=q["on"+a]}),c.write(b),q.abort=function(){c.abort(),q.readyState=q.DONE},q.readyState=q.WRITING}),u)}),u)};a.getFile(i,{create:!1},v(function(a){a.remove(),c()}),v(function(a){a.code===a.NOT_FOUND_ERR?c():u()}))}),u)}),u)):void u())},p=o.prototype,q=function(a,b){return new o(a,b)};return p.abort=function(){var a=this;a.readyState=a.DONE,n(a,"abort")},p.readyState=p.INIT=0,p.WRITING=1,p.DONE=2,p.error=p.onwritestart=p.onprogress=p.onwrite=p.onabort=p.onerror=p.onwriteend=null,q}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||this.content);"undefined"!=typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!=typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});/*! - * Bootstrap v3.3.5 (http://getbootstrap.com) + * Bootstrap v3.3.6 (http://getbootstrap.com) * Copyright 2011-2015 Twitter, Inc. * Licensed under the MIT license */ -var __js={"affix.js":"/* ========================================================================\n * Bootstrap: affix.js v3.3.5\n * http://getbootstrap.com/javascript/#affix\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // AFFIX CLASS DEFINITION\n // ======================\n\n var Affix = function (element, options) {\n this.options = $.extend({}, Affix.DEFAULTS, options)\n\n this.$target = $(this.options.target)\n .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))\n .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))\n\n this.$element = $(element)\n this.affixed = null\n this.unpin = null\n this.pinnedOffset = null\n\n this.checkPosition()\n }\n\n Affix.VERSION = '3.3.5'\n\n Affix.RESET = 'affix affix-top affix-bottom'\n\n Affix.DEFAULTS = {\n offset: 0,\n target: window\n }\n\n Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) {\n var scrollTop = this.$target.scrollTop()\n var position = this.$element.offset()\n var targetHeight = this.$target.height()\n\n if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false\n\n if (this.affixed == 'bottom') {\n if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom'\n return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom'\n }\n\n var initializing = this.affixed == null\n var colliderTop = initializing ? scrollTop : position.top\n var colliderHeight = initializing ? targetHeight : height\n\n if (offsetTop != null && scrollTop <= offsetTop) return 'top'\n if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom'\n\n return false\n }\n\n Affix.prototype.getPinnedOffset = function () {\n if (this.pinnedOffset) return this.pinnedOffset\n this.$element.removeClass(Affix.RESET).addClass('affix')\n var scrollTop = this.$target.scrollTop()\n var position = this.$element.offset()\n return (this.pinnedOffset = position.top - scrollTop)\n }\n\n Affix.prototype.checkPositionWithEventLoop = function () {\n setTimeout($.proxy(this.checkPosition, this), 1)\n }\n\n Affix.prototype.checkPosition = function () {\n if (!this.$element.is(':visible')) return\n\n var height = this.$element.height()\n var offset = this.options.offset\n var offsetTop = offset.top\n var offsetBottom = offset.bottom\n var scrollHeight = Math.max($(document).height(), $(document.body).height())\n\n if (typeof offset != 'object') offsetBottom = offsetTop = offset\n if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element)\n if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element)\n\n var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom)\n\n if (this.affixed != affix) {\n if (this.unpin != null) this.$element.css('top', '')\n\n var affixType = 'affix' + (affix ? '-' + affix : '')\n var e = $.Event(affixType + '.bs.affix')\n\n this.$element.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n this.affixed = affix\n this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null\n\n this.$element\n .removeClass(Affix.RESET)\n .addClass(affixType)\n .trigger(affixType.replace('affix', 'affixed') + '.bs.affix')\n }\n\n if (affix == 'bottom') {\n this.$element.offset({\n top: scrollHeight - height - offsetBottom\n })\n }\n }\n\n\n // AFFIX PLUGIN DEFINITION\n // =======================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.affix')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.affix', (data = new Affix(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.affix\n\n $.fn.affix = Plugin\n $.fn.affix.Constructor = Affix\n\n\n // AFFIX NO CONFLICT\n // =================\n\n $.fn.affix.noConflict = function () {\n $.fn.affix = old\n return this\n }\n\n\n // AFFIX DATA-API\n // ==============\n\n $(window).on('load', function () {\n $('[data-spy=\"affix\"]').each(function () {\n var $spy = $(this)\n var data = $spy.data()\n\n data.offset = data.offset || {}\n\n if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom\n if (data.offsetTop != null) data.offset.top = data.offsetTop\n\n Plugin.call($spy, data)\n })\n })\n\n}(jQuery);\n","alert.js":"/* ========================================================================\n * Bootstrap: alert.js v3.3.5\n * http://getbootstrap.com/javascript/#alerts\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // ALERT CLASS DEFINITION\n // ======================\n\n var dismiss = '[data-dismiss=\"alert\"]'\n var Alert = function (el) {\n $(el).on('click', dismiss, this.close)\n }\n\n Alert.VERSION = '3.3.5'\n\n Alert.TRANSITION_DURATION = 150\n\n Alert.prototype.close = function (e) {\n var $this = $(this)\n var selector = $this.attr('data-target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n }\n\n var $parent = $(selector)\n\n if (e) e.preventDefault()\n\n if (!$parent.length) {\n $parent = $this.closest('.alert')\n }\n\n $parent.trigger(e = $.Event('close.bs.alert'))\n\n if (e.isDefaultPrevented()) return\n\n $parent.removeClass('in')\n\n function removeElement() {\n // detach from parent, fire event then clean up data\n $parent.detach().trigger('closed.bs.alert').remove()\n }\n\n $.support.transition && $parent.hasClass('fade') ?\n $parent\n .one('bsTransitionEnd', removeElement)\n .emulateTransitionEnd(Alert.TRANSITION_DURATION) :\n removeElement()\n }\n\n\n // ALERT PLUGIN DEFINITION\n // =======================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.alert')\n\n if (!data) $this.data('bs.alert', (data = new Alert(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\n var old = $.fn.alert\n\n $.fn.alert = Plugin\n $.fn.alert.Constructor = Alert\n\n\n // ALERT NO CONFLICT\n // =================\n\n $.fn.alert.noConflict = function () {\n $.fn.alert = old\n return this\n }\n\n\n // ALERT DATA-API\n // ==============\n\n $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close)\n\n}(jQuery);\n","button.js":"/* ========================================================================\n * Bootstrap: button.js v3.3.5\n * http://getbootstrap.com/javascript/#buttons\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // BUTTON PUBLIC CLASS DEFINITION\n // ==============================\n\n var Button = function (element, options) {\n this.$element = $(element)\n this.options = $.extend({}, Button.DEFAULTS, options)\n this.isLoading = false\n }\n\n Button.VERSION = '3.3.5'\n\n Button.DEFAULTS = {\n loadingText: 'loading...'\n }\n\n Button.prototype.setState = function (state) {\n var d = 'disabled'\n var $el = this.$element\n var val = $el.is('input') ? 'val' : 'html'\n var data = $el.data()\n\n state += 'Text'\n\n if (data.resetText == null) $el.data('resetText', $el[val]())\n\n // push to event loop to allow forms to submit\n setTimeout($.proxy(function () {\n $el[val](data[state] == null ? this.options[state] : data[state])\n\n if (state == 'loadingText') {\n this.isLoading = true\n $el.addClass(d).attr(d, d)\n } else if (this.isLoading) {\n this.isLoading = false\n $el.removeClass(d).removeAttr(d)\n }\n }, this), 0)\n }\n\n Button.prototype.toggle = function () {\n var changed = true\n var $parent = this.$element.closest('[data-toggle=\"buttons\"]')\n\n if ($parent.length) {\n var $input = this.$element.find('input')\n if ($input.prop('type') == 'radio') {\n if ($input.prop('checked')) changed = false\n $parent.find('.active').removeClass('active')\n this.$element.addClass('active')\n } else if ($input.prop('type') == 'checkbox') {\n if (($input.prop('checked')) !== this.$element.hasClass('active')) changed = false\n this.$element.toggleClass('active')\n }\n $input.prop('checked', this.$element.hasClass('active'))\n if (changed) $input.trigger('change')\n } else {\n this.$element.attr('aria-pressed', !this.$element.hasClass('active'))\n this.$element.toggleClass('active')\n }\n }\n\n\n // BUTTON PLUGIN DEFINITION\n // ========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.button')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.button', (data = new Button(this, options)))\n\n if (option == 'toggle') data.toggle()\n else if (option) data.setState(option)\n })\n }\n\n var old = $.fn.button\n\n $.fn.button = Plugin\n $.fn.button.Constructor = Button\n\n\n // BUTTON NO CONFLICT\n // ==================\n\n $.fn.button.noConflict = function () {\n $.fn.button = old\n return this\n }\n\n\n // BUTTON DATA-API\n // ===============\n\n $(document)\n .on('click.bs.button.data-api', '[data-toggle^=\"button\"]', function (e) {\n var $btn = $(e.target)\n if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')\n Plugin.call($btn, 'toggle')\n if (!($(e.target).is('input[type=\"radio\"]') || $(e.target).is('input[type=\"checkbox\"]'))) e.preventDefault()\n })\n .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^=\"button\"]', function (e) {\n $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type))\n })\n\n}(jQuery);\n","carousel.js":"/* ========================================================================\n * Bootstrap: carousel.js v3.3.5\n * http://getbootstrap.com/javascript/#carousel\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // CAROUSEL CLASS DEFINITION\n // =========================\n\n var Carousel = function (element, options) {\n this.$element = $(element)\n this.$indicators = this.$element.find('.carousel-indicators')\n this.options = options\n this.paused = null\n this.sliding = null\n this.interval = null\n this.$active = null\n this.$items = null\n\n this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this))\n\n this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element\n .on('mouseenter.bs.carousel', $.proxy(this.pause, this))\n .on('mouseleave.bs.carousel', $.proxy(this.cycle, this))\n }\n\n Carousel.VERSION = '3.3.5'\n\n Carousel.TRANSITION_DURATION = 600\n\n Carousel.DEFAULTS = {\n interval: 5000,\n pause: 'hover',\n wrap: true,\n keyboard: true\n }\n\n Carousel.prototype.keydown = function (e) {\n if (/input|textarea/i.test(e.target.tagName)) return\n switch (e.which) {\n case 37: this.prev(); break\n case 39: this.next(); break\n default: return\n }\n\n e.preventDefault()\n }\n\n Carousel.prototype.cycle = function (e) {\n e || (this.paused = false)\n\n this.interval && clearInterval(this.interval)\n\n this.options.interval\n && !this.paused\n && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))\n\n return this\n }\n\n Carousel.prototype.getItemIndex = function (item) {\n this.$items = item.parent().children('.item')\n return this.$items.index(item || this.$active)\n }\n\n Carousel.prototype.getItemForDirection = function (direction, active) {\n var activeIndex = this.getItemIndex(active)\n var willWrap = (direction == 'prev' && activeIndex === 0)\n || (direction == 'next' && activeIndex == (this.$items.length - 1))\n if (willWrap && !this.options.wrap) return active\n var delta = direction == 'prev' ? -1 : 1\n var itemIndex = (activeIndex + delta) % this.$items.length\n return this.$items.eq(itemIndex)\n }\n\n Carousel.prototype.to = function (pos) {\n var that = this\n var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active'))\n\n if (pos > (this.$items.length - 1) || pos < 0) return\n\n if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, \"slid\"\n if (activeIndex == pos) return this.pause().cycle()\n\n return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos))\n }\n\n Carousel.prototype.pause = function (e) {\n e || (this.paused = true)\n\n if (this.$element.find('.next, .prev').length && $.support.transition) {\n this.$element.trigger($.support.transition.end)\n this.cycle(true)\n }\n\n this.interval = clearInterval(this.interval)\n\n return this\n }\n\n Carousel.prototype.next = function () {\n if (this.sliding) return\n return this.slide('next')\n }\n\n Carousel.prototype.prev = function () {\n if (this.sliding) return\n return this.slide('prev')\n }\n\n Carousel.prototype.slide = function (type, next) {\n var $active = this.$element.find('.item.active')\n var $next = next || this.getItemForDirection(type, $active)\n var isCycling = this.interval\n var direction = type == 'next' ? 'left' : 'right'\n var that = this\n\n if ($next.hasClass('active')) return (this.sliding = false)\n\n var relatedTarget = $next[0]\n var slideEvent = $.Event('slide.bs.carousel', {\n relatedTarget: relatedTarget,\n direction: direction\n })\n this.$element.trigger(slideEvent)\n if (slideEvent.isDefaultPrevented()) return\n\n this.sliding = true\n\n isCycling && this.pause()\n\n if (this.$indicators.length) {\n this.$indicators.find('.active').removeClass('active')\n var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)])\n $nextIndicator && $nextIndicator.addClass('active')\n }\n\n var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, \"slid\"\n if ($.support.transition && this.$element.hasClass('slide')) {\n $next.addClass(type)\n $next[0].offsetWidth // force reflow\n $active.addClass(direction)\n $next.addClass(direction)\n $active\n .one('bsTransitionEnd', function () {\n $next.removeClass([type, direction].join(' ')).addClass('active')\n $active.removeClass(['active', direction].join(' '))\n that.sliding = false\n setTimeout(function () {\n that.$element.trigger(slidEvent)\n }, 0)\n })\n .emulateTransitionEnd(Carousel.TRANSITION_DURATION)\n } else {\n $active.removeClass('active')\n $next.addClass('active')\n this.sliding = false\n this.$element.trigger(slidEvent)\n }\n\n isCycling && this.cycle()\n\n return this\n }\n\n\n // CAROUSEL PLUGIN DEFINITION\n // ==========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.carousel')\n var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option)\n var action = typeof option == 'string' ? option : options.slide\n\n if (!data) $this.data('bs.carousel', (data = new Carousel(this, options)))\n if (typeof option == 'number') data.to(option)\n else if (action) data[action]()\n else if (options.interval) data.pause().cycle()\n })\n }\n\n var old = $.fn.carousel\n\n $.fn.carousel = Plugin\n $.fn.carousel.Constructor = Carousel\n\n\n // CAROUSEL NO CONFLICT\n // ====================\n\n $.fn.carousel.noConflict = function () {\n $.fn.carousel = old\n return this\n }\n\n\n // CAROUSEL DATA-API\n // =================\n\n var clickHandler = function (e) {\n var href\n var $this = $(this)\n var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '')) // strip for ie7\n if (!$target.hasClass('carousel')) return\n var options = $.extend({}, $target.data(), $this.data())\n var slideIndex = $this.attr('data-slide-to')\n if (slideIndex) options.interval = false\n\n Plugin.call($target, options)\n\n if (slideIndex) {\n $target.data('bs.carousel').to(slideIndex)\n }\n\n e.preventDefault()\n }\n\n $(document)\n .on('click.bs.carousel.data-api', '[data-slide]', clickHandler)\n .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler)\n\n $(window).on('load', function () {\n $('[data-ride=\"carousel\"]').each(function () {\n var $carousel = $(this)\n Plugin.call($carousel, $carousel.data())\n })\n })\n\n}(jQuery);\n","collapse.js":"/* ========================================================================\n * Bootstrap: collapse.js v3.3.5\n * http://getbootstrap.com/javascript/#collapse\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // COLLAPSE PUBLIC CLASS DEFINITION\n // ================================\n\n var Collapse = function (element, options) {\n this.$element = $(element)\n this.options = $.extend({}, Collapse.DEFAULTS, options)\n this.$trigger = $('[data-toggle=\"collapse\"][href=\"#' + element.id + '\"],' +\n '[data-toggle=\"collapse\"][data-target=\"#' + element.id + '\"]')\n this.transitioning = null\n\n if (this.options.parent) {\n this.$parent = this.getParent()\n } else {\n this.addAriaAndCollapsedClass(this.$element, this.$trigger)\n }\n\n if (this.options.toggle) this.toggle()\n }\n\n Collapse.VERSION = '3.3.5'\n\n Collapse.TRANSITION_DURATION = 350\n\n Collapse.DEFAULTS = {\n toggle: true\n }\n\n Collapse.prototype.dimension = function () {\n var hasWidth = this.$element.hasClass('width')\n return hasWidth ? 'width' : 'height'\n }\n\n Collapse.prototype.show = function () {\n if (this.transitioning || this.$element.hasClass('in')) return\n\n var activesData\n var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing')\n\n if (actives && actives.length) {\n activesData = actives.data('bs.collapse')\n if (activesData && activesData.transitioning) return\n }\n\n var startEvent = $.Event('show.bs.collapse')\n this.$element.trigger(startEvent)\n if (startEvent.isDefaultPrevented()) return\n\n if (actives && actives.length) {\n Plugin.call(actives, 'hide')\n activesData || actives.data('bs.collapse', null)\n }\n\n var dimension = this.dimension()\n\n this.$element\n .removeClass('collapse')\n .addClass('collapsing')[dimension](0)\n .attr('aria-expanded', true)\n\n this.$trigger\n .removeClass('collapsed')\n .attr('aria-expanded', true)\n\n this.transitioning = 1\n\n var complete = function () {\n this.$element\n .removeClass('collapsing')\n .addClass('collapse in')[dimension]('')\n this.transitioning = 0\n this.$element\n .trigger('shown.bs.collapse')\n }\n\n if (!$.support.transition) return complete.call(this)\n\n var scrollSize = $.camelCase(['scroll', dimension].join('-'))\n\n this.$element\n .one('bsTransitionEnd', $.proxy(complete, this))\n .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize])\n }\n\n Collapse.prototype.hide = function () {\n if (this.transitioning || !this.$element.hasClass('in')) return\n\n var startEvent = $.Event('hide.bs.collapse')\n this.$element.trigger(startEvent)\n if (startEvent.isDefaultPrevented()) return\n\n var dimension = this.dimension()\n\n this.$element[dimension](this.$element[dimension]())[0].offsetHeight\n\n this.$element\n .addClass('collapsing')\n .removeClass('collapse in')\n .attr('aria-expanded', false)\n\n this.$trigger\n .addClass('collapsed')\n .attr('aria-expanded', false)\n\n this.transitioning = 1\n\n var complete = function () {\n this.transitioning = 0\n this.$element\n .removeClass('collapsing')\n .addClass('collapse')\n .trigger('hidden.bs.collapse')\n }\n\n if (!$.support.transition) return complete.call(this)\n\n this.$element\n [dimension](0)\n .one('bsTransitionEnd', $.proxy(complete, this))\n .emulateTransitionEnd(Collapse.TRANSITION_DURATION)\n }\n\n Collapse.prototype.toggle = function () {\n this[this.$element.hasClass('in') ? 'hide' : 'show']()\n }\n\n Collapse.prototype.getParent = function () {\n return $(this.options.parent)\n .find('[data-toggle=\"collapse\"][data-parent=\"' + this.options.parent + '\"]')\n .each($.proxy(function (i, element) {\n var $element = $(element)\n this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element)\n }, this))\n .end()\n }\n\n Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) {\n var isOpen = $element.hasClass('in')\n\n $element.attr('aria-expanded', isOpen)\n $trigger\n .toggleClass('collapsed', !isOpen)\n .attr('aria-expanded', isOpen)\n }\n\n function getTargetFromTrigger($trigger) {\n var href\n var target = $trigger.attr('data-target')\n || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '') // strip for ie7\n\n return $(target)\n }\n\n\n // COLLAPSE PLUGIN DEFINITION\n // ==========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.collapse')\n var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false\n if (!data) $this.data('bs.collapse', (data = new Collapse(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.collapse\n\n $.fn.collapse = Plugin\n $.fn.collapse.Constructor = Collapse\n\n\n // COLLAPSE NO CONFLICT\n // ====================\n\n $.fn.collapse.noConflict = function () {\n $.fn.collapse = old\n return this\n }\n\n\n // COLLAPSE DATA-API\n // =================\n\n $(document).on('click.bs.collapse.data-api', '[data-toggle=\"collapse\"]', function (e) {\n var $this = $(this)\n\n if (!$this.attr('data-target')) e.preventDefault()\n\n var $target = getTargetFromTrigger($this)\n var data = $target.data('bs.collapse')\n var option = data ? 'toggle' : $this.data()\n\n Plugin.call($target, option)\n })\n\n}(jQuery);\n","dropdown.js":"/* ========================================================================\n * Bootstrap: dropdown.js v3.3.5\n * http://getbootstrap.com/javascript/#dropdowns\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // DROPDOWN CLASS DEFINITION\n // =========================\n\n var backdrop = '.dropdown-backdrop'\n var toggle = '[data-toggle=\"dropdown\"]'\n var Dropdown = function (element) {\n $(element).on('click.bs.dropdown', this.toggle)\n }\n\n Dropdown.VERSION = '3.3.5'\n\n function getParent($this) {\n var selector = $this.attr('data-target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n }\n\n var $parent = selector && $(selector)\n\n return $parent && $parent.length ? $parent : $this.parent()\n }\n\n function clearMenus(e) {\n if (e && e.which === 3) return\n $(backdrop).remove()\n $(toggle).each(function () {\n var $this = $(this)\n var $parent = getParent($this)\n var relatedTarget = { relatedTarget: this }\n\n if (!$parent.hasClass('open')) return\n\n if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return\n\n $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))\n\n if (e.isDefaultPrevented()) return\n\n $this.attr('aria-expanded', 'false')\n $parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)\n })\n }\n\n Dropdown.prototype.toggle = function (e) {\n var $this = $(this)\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n clearMenus()\n\n if (!isActive) {\n if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {\n // if mobile we use a backdrop because click events don't delegate\n $(document.createElement('div'))\n .addClass('dropdown-backdrop')\n .insertAfter($(this))\n .on('click', clearMenus)\n }\n\n var relatedTarget = { relatedTarget: this }\n $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))\n\n if (e.isDefaultPrevented()) return\n\n $this\n .trigger('focus')\n .attr('aria-expanded', 'true')\n\n $parent\n .toggleClass('open')\n .trigger('shown.bs.dropdown', relatedTarget)\n }\n\n return false\n }\n\n Dropdown.prototype.keydown = function (e) {\n if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return\n\n var $this = $(this)\n\n e.preventDefault()\n e.stopPropagation()\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n if (!isActive && e.which != 27 || isActive && e.which == 27) {\n if (e.which == 27) $parent.find(toggle).trigger('focus')\n return $this.trigger('click')\n }\n\n var desc = ' li:not(.disabled):visible a'\n var $items = $parent.find('.dropdown-menu' + desc)\n\n if (!$items.length) return\n\n var index = $items.index(e.target)\n\n if (e.which == 38 && index > 0) index-- // up\n if (e.which == 40 && index < $items.length - 1) index++ // down\n if (!~index) index = 0\n\n $items.eq(index).trigger('focus')\n }\n\n\n // DROPDOWN PLUGIN DEFINITION\n // ==========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.dropdown')\n\n if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\n var old = $.fn.dropdown\n\n $.fn.dropdown = Plugin\n $.fn.dropdown.Constructor = Dropdown\n\n\n // DROPDOWN NO CONFLICT\n // ====================\n\n $.fn.dropdown.noConflict = function () {\n $.fn.dropdown = old\n return this\n }\n\n\n // APPLY TO STANDARD DROPDOWN ELEMENTS\n // ===================================\n\n $(document)\n .on('click.bs.dropdown.data-api', clearMenus)\n .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })\n .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)\n .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown)\n .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown)\n\n}(jQuery);\n","modal.js":"/* ========================================================================\n * Bootstrap: modal.js v3.3.5\n * http://getbootstrap.com/javascript/#modals\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // MODAL CLASS DEFINITION\n // ======================\n\n var Modal = function (element, options) {\n this.options = options\n this.$body = $(document.body)\n this.$element = $(element)\n this.$dialog = this.$element.find('.modal-dialog')\n this.$backdrop = null\n this.isShown = null\n this.originalBodyPad = null\n this.scrollbarWidth = 0\n this.ignoreBackdropClick = false\n\n if (this.options.remote) {\n this.$element\n .find('.modal-content')\n .load(this.options.remote, $.proxy(function () {\n this.$element.trigger('loaded.bs.modal')\n }, this))\n }\n }\n\n Modal.VERSION = '3.3.5'\n\n Modal.TRANSITION_DURATION = 300\n Modal.BACKDROP_TRANSITION_DURATION = 150\n\n Modal.DEFAULTS = {\n backdrop: true,\n keyboard: true,\n show: true\n }\n\n Modal.prototype.toggle = function (_relatedTarget) {\n return this.isShown ? this.hide() : this.show(_relatedTarget)\n }\n\n Modal.prototype.show = function (_relatedTarget) {\n var that = this\n var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget })\n\n this.$element.trigger(e)\n\n if (this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = true\n\n this.checkScrollbar()\n this.setScrollbar()\n this.$body.addClass('modal-open')\n\n this.escape()\n this.resize()\n\n this.$element.on('click.dismiss.bs.modal', '[data-dismiss=\"modal\"]', $.proxy(this.hide, this))\n\n this.$dialog.on('mousedown.dismiss.bs.modal', function () {\n that.$element.one('mouseup.dismiss.bs.modal', function (e) {\n if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true\n })\n })\n\n this.backdrop(function () {\n var transition = $.support.transition && that.$element.hasClass('fade')\n\n if (!that.$element.parent().length) {\n that.$element.appendTo(that.$body) // don't move modals dom position\n }\n\n that.$element\n .show()\n .scrollTop(0)\n\n that.adjustDialog()\n\n if (transition) {\n that.$element[0].offsetWidth // force reflow\n }\n\n that.$element.addClass('in')\n\n that.enforceFocus()\n\n var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })\n\n transition ?\n that.$dialog // wait for modal to slide in\n .one('bsTransitionEnd', function () {\n that.$element.trigger('focus').trigger(e)\n })\n .emulateTransitionEnd(Modal.TRANSITION_DURATION) :\n that.$element.trigger('focus').trigger(e)\n })\n }\n\n Modal.prototype.hide = function (e) {\n if (e) e.preventDefault()\n\n e = $.Event('hide.bs.modal')\n\n this.$element.trigger(e)\n\n if (!this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = false\n\n this.escape()\n this.resize()\n\n $(document).off('focusin.bs.modal')\n\n this.$element\n .removeClass('in')\n .off('click.dismiss.bs.modal')\n .off('mouseup.dismiss.bs.modal')\n\n this.$dialog.off('mousedown.dismiss.bs.modal')\n\n $.support.transition && this.$element.hasClass('fade') ?\n this.$element\n .one('bsTransitionEnd', $.proxy(this.hideModal, this))\n .emulateTransitionEnd(Modal.TRANSITION_DURATION) :\n this.hideModal()\n }\n\n Modal.prototype.enforceFocus = function () {\n $(document)\n .off('focusin.bs.modal') // guard against infinite focus loop\n .on('focusin.bs.modal', $.proxy(function (e) {\n if (this.$element[0] !== e.target && !this.$element.has(e.target).length) {\n this.$element.trigger('focus')\n }\n }, this))\n }\n\n Modal.prototype.escape = function () {\n if (this.isShown && this.options.keyboard) {\n this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) {\n e.which == 27 && this.hide()\n }, this))\n } else if (!this.isShown) {\n this.$element.off('keydown.dismiss.bs.modal')\n }\n }\n\n Modal.prototype.resize = function () {\n if (this.isShown) {\n $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this))\n } else {\n $(window).off('resize.bs.modal')\n }\n }\n\n Modal.prototype.hideModal = function () {\n var that = this\n this.$element.hide()\n this.backdrop(function () {\n that.$body.removeClass('modal-open')\n that.resetAdjustments()\n that.resetScrollbar()\n that.$element.trigger('hidden.bs.modal')\n })\n }\n\n Modal.prototype.removeBackdrop = function () {\n this.$backdrop && this.$backdrop.remove()\n this.$backdrop = null\n }\n\n Modal.prototype.backdrop = function (callback) {\n var that = this\n var animate = this.$element.hasClass('fade') ? 'fade' : ''\n\n if (this.isShown && this.options.backdrop) {\n var doAnimate = $.support.transition && animate\n\n this.$backdrop = $(document.createElement('div'))\n .addClass('modal-backdrop ' + animate)\n .appendTo(this.$body)\n\n this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {\n if (this.ignoreBackdropClick) {\n this.ignoreBackdropClick = false\n return\n }\n if (e.target !== e.currentTarget) return\n this.options.backdrop == 'static'\n ? this.$element[0].focus()\n : this.hide()\n }, this))\n\n if (doAnimate) this.$backdrop[0].offsetWidth // force reflow\n\n this.$backdrop.addClass('in')\n\n if (!callback) return\n\n doAnimate ?\n this.$backdrop\n .one('bsTransitionEnd', callback)\n .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :\n callback()\n\n } else if (!this.isShown && this.$backdrop) {\n this.$backdrop.removeClass('in')\n\n var callbackRemove = function () {\n that.removeBackdrop()\n callback && callback()\n }\n $.support.transition && this.$element.hasClass('fade') ?\n this.$backdrop\n .one('bsTransitionEnd', callbackRemove)\n .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :\n callbackRemove()\n\n } else if (callback) {\n callback()\n }\n }\n\n // these following methods are used to handle overflowing modals\n\n Modal.prototype.handleUpdate = function () {\n this.adjustDialog()\n }\n\n Modal.prototype.adjustDialog = function () {\n var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight\n\n this.$element.css({\n paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '',\n paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : ''\n })\n }\n\n Modal.prototype.resetAdjustments = function () {\n this.$element.css({\n paddingLeft: '',\n paddingRight: ''\n })\n }\n\n Modal.prototype.checkScrollbar = function () {\n var fullWindowWidth = window.innerWidth\n if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8\n var documentElementRect = document.documentElement.getBoundingClientRect()\n fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left)\n }\n this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth\n this.scrollbarWidth = this.measureScrollbar()\n }\n\n Modal.prototype.setScrollbar = function () {\n var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10)\n this.originalBodyPad = document.body.style.paddingRight || ''\n if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth)\n }\n\n Modal.prototype.resetScrollbar = function () {\n this.$body.css('padding-right', this.originalBodyPad)\n }\n\n Modal.prototype.measureScrollbar = function () { // thx walsh\n var scrollDiv = document.createElement('div')\n scrollDiv.className = 'modal-scrollbar-measure'\n this.$body.append(scrollDiv)\n var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth\n this.$body[0].removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n\n // MODAL PLUGIN DEFINITION\n // =======================\n\n function Plugin(option, _relatedTarget) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.modal')\n var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n if (!data) $this.data('bs.modal', (data = new Modal(this, options)))\n if (typeof option == 'string') data[option](_relatedTarget)\n else if (options.show) data.show(_relatedTarget)\n })\n }\n\n var old = $.fn.modal\n\n $.fn.modal = Plugin\n $.fn.modal.Constructor = Modal\n\n\n // MODAL NO CONFLICT\n // =================\n\n $.fn.modal.noConflict = function () {\n $.fn.modal = old\n return this\n }\n\n\n // MODAL DATA-API\n // ==============\n\n $(document).on('click.bs.modal.data-api', '[data-toggle=\"modal\"]', function (e) {\n var $this = $(this)\n var href = $this.attr('href')\n var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\\s]+$)/, ''))) // strip for ie7\n var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())\n\n if ($this.is('a')) e.preventDefault()\n\n $target.one('show.bs.modal', function (showEvent) {\n if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown\n $target.one('hidden.bs.modal', function () {\n $this.is(':visible') && $this.trigger('focus')\n })\n })\n Plugin.call($target, option, this)\n })\n\n}(jQuery);\n", -"popover.js":"/* ========================================================================\n * Bootstrap: popover.js v3.3.5\n * http://getbootstrap.com/javascript/#popovers\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // POPOVER PUBLIC CLASS DEFINITION\n // ===============================\n\n var Popover = function (element, options) {\n this.init('popover', element, options)\n }\n\n if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')\n\n Popover.VERSION = '3.3.5'\n\n Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {\n placement: 'right',\n trigger: 'click',\n content: '',\n template: '

'\n })\n\n\n // NOTE: POPOVER EXTENDS tooltip.js\n // ================================\n\n Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype)\n\n Popover.prototype.constructor = Popover\n\n Popover.prototype.getDefaults = function () {\n return Popover.DEFAULTS\n }\n\n Popover.prototype.setContent = function () {\n var $tip = this.tip()\n var title = this.getTitle()\n var content = this.getContent()\n\n $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)\n $tip.find('.popover-content').children().detach().end()[ // we use append for html objects to maintain js events\n this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text'\n ](content)\n\n $tip.removeClass('fade top bottom left right in')\n\n // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do\n // this manually by checking the contents.\n if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide()\n }\n\n Popover.prototype.hasContent = function () {\n return this.getTitle() || this.getContent()\n }\n\n Popover.prototype.getContent = function () {\n var $e = this.$element\n var o = this.options\n\n return $e.attr('data-content')\n || (typeof o.content == 'function' ?\n o.content.call($e[0]) :\n o.content)\n }\n\n Popover.prototype.arrow = function () {\n return (this.$arrow = this.$arrow || this.tip().find('.arrow'))\n }\n\n\n // POPOVER PLUGIN DEFINITION\n // =========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.popover')\n var options = typeof option == 'object' && option\n\n if (!data && /destroy|hide/.test(option)) return\n if (!data) $this.data('bs.popover', (data = new Popover(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.popover\n\n $.fn.popover = Plugin\n $.fn.popover.Constructor = Popover\n\n\n // POPOVER NO CONFLICT\n // ===================\n\n $.fn.popover.noConflict = function () {\n $.fn.popover = old\n return this\n }\n\n}(jQuery);\n","scrollspy.js":"/* ========================================================================\n * Bootstrap: scrollspy.js v3.3.5\n * http://getbootstrap.com/javascript/#scrollspy\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // SCROLLSPY CLASS DEFINITION\n // ==========================\n\n function ScrollSpy(element, options) {\n this.$body = $(document.body)\n this.$scrollElement = $(element).is(document.body) ? $(window) : $(element)\n this.options = $.extend({}, ScrollSpy.DEFAULTS, options)\n this.selector = (this.options.target || '') + ' .nav li > a'\n this.offsets = []\n this.targets = []\n this.activeTarget = null\n this.scrollHeight = 0\n\n this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this))\n this.refresh()\n this.process()\n }\n\n ScrollSpy.VERSION = '3.3.5'\n\n ScrollSpy.DEFAULTS = {\n offset: 10\n }\n\n ScrollSpy.prototype.getScrollHeight = function () {\n return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight)\n }\n\n ScrollSpy.prototype.refresh = function () {\n var that = this\n var offsetMethod = 'offset'\n var offsetBase = 0\n\n this.offsets = []\n this.targets = []\n this.scrollHeight = this.getScrollHeight()\n\n if (!$.isWindow(this.$scrollElement[0])) {\n offsetMethod = 'position'\n offsetBase = this.$scrollElement.scrollTop()\n }\n\n this.$body\n .find(this.selector)\n .map(function () {\n var $el = $(this)\n var href = $el.data('target') || $el.attr('href')\n var $href = /^#./.test(href) && $(href)\n\n return ($href\n && $href.length\n && $href.is(':visible')\n && [[$href[offsetMethod]().top + offsetBase, href]]) || null\n })\n .sort(function (a, b) { return a[0] - b[0] })\n .each(function () {\n that.offsets.push(this[0])\n that.targets.push(this[1])\n })\n }\n\n ScrollSpy.prototype.process = function () {\n var scrollTop = this.$scrollElement.scrollTop() + this.options.offset\n var scrollHeight = this.getScrollHeight()\n var maxScroll = this.options.offset + scrollHeight - this.$scrollElement.height()\n var offsets = this.offsets\n var targets = this.targets\n var activeTarget = this.activeTarget\n var i\n\n if (this.scrollHeight != scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n return activeTarget != (i = targets[targets.length - 1]) && this.activate(i)\n }\n\n if (activeTarget && scrollTop < offsets[0]) {\n this.activeTarget = null\n return this.clear()\n }\n\n for (i = offsets.length; i--;) {\n activeTarget != targets[i]\n && scrollTop >= offsets[i]\n && (offsets[i + 1] === undefined || scrollTop < offsets[i + 1])\n && this.activate(targets[i])\n }\n }\n\n ScrollSpy.prototype.activate = function (target) {\n this.activeTarget = target\n\n this.clear()\n\n var selector = this.selector +\n '[data-target=\"' + target + '\"],' +\n this.selector + '[href=\"' + target + '\"]'\n\n var active = $(selector)\n .parents('li')\n .addClass('active')\n\n if (active.parent('.dropdown-menu').length) {\n active = active\n .closest('li.dropdown')\n .addClass('active')\n }\n\n active.trigger('activate.bs.scrollspy')\n }\n\n ScrollSpy.prototype.clear = function () {\n $(this.selector)\n .parentsUntil(this.options.target, '.active')\n .removeClass('active')\n }\n\n\n // SCROLLSPY PLUGIN DEFINITION\n // ===========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.scrollspy')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.scrollspy\n\n $.fn.scrollspy = Plugin\n $.fn.scrollspy.Constructor = ScrollSpy\n\n\n // SCROLLSPY NO CONFLICT\n // =====================\n\n $.fn.scrollspy.noConflict = function () {\n $.fn.scrollspy = old\n return this\n }\n\n\n // SCROLLSPY DATA-API\n // ==================\n\n $(window).on('load.bs.scrollspy.data-api', function () {\n $('[data-spy=\"scroll\"]').each(function () {\n var $spy = $(this)\n Plugin.call($spy, $spy.data())\n })\n })\n\n}(jQuery);\n","tab.js":"/* ========================================================================\n * Bootstrap: tab.js v3.3.5\n * http://getbootstrap.com/javascript/#tabs\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // TAB CLASS DEFINITION\n // ====================\n\n var Tab = function (element) {\n // jscs:disable requireDollarBeforejQueryAssignment\n this.element = $(element)\n // jscs:enable requireDollarBeforejQueryAssignment\n }\n\n Tab.VERSION = '3.3.5'\n\n Tab.TRANSITION_DURATION = 150\n\n Tab.prototype.show = function () {\n var $this = this.element\n var $ul = $this.closest('ul:not(.dropdown-menu)')\n var selector = $this.data('target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n }\n\n if ($this.parent('li').hasClass('active')) return\n\n var $previous = $ul.find('.active:last a')\n var hideEvent = $.Event('hide.bs.tab', {\n relatedTarget: $this[0]\n })\n var showEvent = $.Event('show.bs.tab', {\n relatedTarget: $previous[0]\n })\n\n $previous.trigger(hideEvent)\n $this.trigger(showEvent)\n\n if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return\n\n var $target = $(selector)\n\n this.activate($this.closest('li'), $ul)\n this.activate($target, $target.parent(), function () {\n $previous.trigger({\n type: 'hidden.bs.tab',\n relatedTarget: $this[0]\n })\n $this.trigger({\n type: 'shown.bs.tab',\n relatedTarget: $previous[0]\n })\n })\n }\n\n Tab.prototype.activate = function (element, container, callback) {\n var $active = container.find('> .active')\n var transition = callback\n && $.support.transition\n && ($active.length && $active.hasClass('fade') || !!container.find('> .fade').length)\n\n function next() {\n $active\n .removeClass('active')\n .find('> .dropdown-menu > .active')\n .removeClass('active')\n .end()\n .find('[data-toggle=\"tab\"]')\n .attr('aria-expanded', false)\n\n element\n .addClass('active')\n .find('[data-toggle=\"tab\"]')\n .attr('aria-expanded', true)\n\n if (transition) {\n element[0].offsetWidth // reflow for transition\n element.addClass('in')\n } else {\n element.removeClass('fade')\n }\n\n if (element.parent('.dropdown-menu').length) {\n element\n .closest('li.dropdown')\n .addClass('active')\n .end()\n .find('[data-toggle=\"tab\"]')\n .attr('aria-expanded', true)\n }\n\n callback && callback()\n }\n\n $active.length && transition ?\n $active\n .one('bsTransitionEnd', next)\n .emulateTransitionEnd(Tab.TRANSITION_DURATION) :\n next()\n\n $active.removeClass('in')\n }\n\n\n // TAB PLUGIN DEFINITION\n // =====================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.tab')\n\n if (!data) $this.data('bs.tab', (data = new Tab(this)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.tab\n\n $.fn.tab = Plugin\n $.fn.tab.Constructor = Tab\n\n\n // TAB NO CONFLICT\n // ===============\n\n $.fn.tab.noConflict = function () {\n $.fn.tab = old\n return this\n }\n\n\n // TAB DATA-API\n // ============\n\n var clickHandler = function (e) {\n e.preventDefault()\n Plugin.call($(this), 'show')\n }\n\n $(document)\n .on('click.bs.tab.data-api', '[data-toggle=\"tab\"]', clickHandler)\n .on('click.bs.tab.data-api', '[data-toggle=\"pill\"]', clickHandler)\n\n}(jQuery);\n","tooltip.js":"/* ========================================================================\n * Bootstrap: tooltip.js v3.3.5\n * http://getbootstrap.com/javascript/#tooltip\n * Inspired by the original jQuery.tipsy by Jason Frame\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // TOOLTIP PUBLIC CLASS DEFINITION\n // ===============================\n\n var Tooltip = function (element, options) {\n this.type = null\n this.options = null\n this.enabled = null\n this.timeout = null\n this.hoverState = null\n this.$element = null\n this.inState = null\n\n this.init('tooltip', element, options)\n }\n\n Tooltip.VERSION = '3.3.5'\n\n Tooltip.TRANSITION_DURATION = 150\n\n Tooltip.DEFAULTS = {\n animation: true,\n placement: 'top',\n selector: false,\n template: '
',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n container: false,\n viewport: {\n selector: 'body',\n padding: 0\n }\n }\n\n Tooltip.prototype.init = function (type, element, options) {\n this.enabled = true\n this.type = type\n this.$element = $(element)\n this.options = this.getOptions(options)\n this.$viewport = this.options.viewport && $($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport))\n this.inState = { click: false, hover: false, focus: false }\n\n if (this.$element[0] instanceof document.constructor && !this.options.selector) {\n throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!')\n }\n\n var triggers = this.options.trigger.split(' ')\n\n for (var i = triggers.length; i--;) {\n var trigger = triggers[i]\n\n if (trigger == 'click') {\n this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))\n } else if (trigger != 'manual') {\n var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin'\n var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout'\n\n this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))\n this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))\n }\n }\n\n this.options.selector ?\n (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :\n this.fixTitle()\n }\n\n Tooltip.prototype.getDefaults = function () {\n return Tooltip.DEFAULTS\n }\n\n Tooltip.prototype.getOptions = function (options) {\n options = $.extend({}, this.getDefaults(), this.$element.data(), options)\n\n if (options.delay && typeof options.delay == 'number') {\n options.delay = {\n show: options.delay,\n hide: options.delay\n }\n }\n\n return options\n }\n\n Tooltip.prototype.getDelegateOptions = function () {\n var options = {}\n var defaults = this.getDefaults()\n\n this._options && $.each(this._options, function (key, value) {\n if (defaults[key] != value) options[key] = value\n })\n\n return options\n }\n\n Tooltip.prototype.enter = function (obj) {\n var self = obj instanceof this.constructor ?\n obj : $(obj.currentTarget).data('bs.' + this.type)\n\n if (!self) {\n self = new this.constructor(obj.currentTarget, this.getDelegateOptions())\n $(obj.currentTarget).data('bs.' + this.type, self)\n }\n\n if (obj instanceof $.Event) {\n self.inState[obj.type == 'focusin' ? 'focus' : 'hover'] = true\n }\n\n if (self.tip().hasClass('in') || self.hoverState == 'in') {\n self.hoverState = 'in'\n return\n }\n\n clearTimeout(self.timeout)\n\n self.hoverState = 'in'\n\n if (!self.options.delay || !self.options.delay.show) return self.show()\n\n self.timeout = setTimeout(function () {\n if (self.hoverState == 'in') self.show()\n }, self.options.delay.show)\n }\n\n Tooltip.prototype.isInStateTrue = function () {\n for (var key in this.inState) {\n if (this.inState[key]) return true\n }\n\n return false\n }\n\n Tooltip.prototype.leave = function (obj) {\n var self = obj instanceof this.constructor ?\n obj : $(obj.currentTarget).data('bs.' + this.type)\n\n if (!self) {\n self = new this.constructor(obj.currentTarget, this.getDelegateOptions())\n $(obj.currentTarget).data('bs.' + this.type, self)\n }\n\n if (obj instanceof $.Event) {\n self.inState[obj.type == 'focusout' ? 'focus' : 'hover'] = false\n }\n\n if (self.isInStateTrue()) return\n\n clearTimeout(self.timeout)\n\n self.hoverState = 'out'\n\n if (!self.options.delay || !self.options.delay.hide) return self.hide()\n\n self.timeout = setTimeout(function () {\n if (self.hoverState == 'out') self.hide()\n }, self.options.delay.hide)\n }\n\n Tooltip.prototype.show = function () {\n var e = $.Event('show.bs.' + this.type)\n\n if (this.hasContent() && this.enabled) {\n this.$element.trigger(e)\n\n var inDom = $.contains(this.$element[0].ownerDocument.documentElement, this.$element[0])\n if (e.isDefaultPrevented() || !inDom) return\n var that = this\n\n var $tip = this.tip()\n\n var tipId = this.getUID(this.type)\n\n this.setContent()\n $tip.attr('id', tipId)\n this.$element.attr('aria-describedby', tipId)\n\n if (this.options.animation) $tip.addClass('fade')\n\n var placement = typeof this.options.placement == 'function' ?\n this.options.placement.call(this, $tip[0], this.$element[0]) :\n this.options.placement\n\n var autoToken = /\\s?auto?\\s?/i\n var autoPlace = autoToken.test(placement)\n if (autoPlace) placement = placement.replace(autoToken, '') || 'top'\n\n $tip\n .detach()\n .css({ top: 0, left: 0, display: 'block' })\n .addClass(placement)\n .data('bs.' + this.type, this)\n\n this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)\n this.$element.trigger('inserted.bs.' + this.type)\n\n var pos = this.getPosition()\n var actualWidth = $tip[0].offsetWidth\n var actualHeight = $tip[0].offsetHeight\n\n if (autoPlace) {\n var orgPlacement = placement\n var viewportDim = this.getPosition(this.$viewport)\n\n placement = placement == 'bottom' && pos.bottom + actualHeight > viewportDim.bottom ? 'top' :\n placement == 'top' && pos.top - actualHeight < viewportDim.top ? 'bottom' :\n placement == 'right' && pos.right + actualWidth > viewportDim.width ? 'left' :\n placement == 'left' && pos.left - actualWidth < viewportDim.left ? 'right' :\n placement\n\n $tip\n .removeClass(orgPlacement)\n .addClass(placement)\n }\n\n var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight)\n\n this.applyPlacement(calculatedOffset, placement)\n\n var complete = function () {\n var prevHoverState = that.hoverState\n that.$element.trigger('shown.bs.' + that.type)\n that.hoverState = null\n\n if (prevHoverState == 'out') that.leave(that)\n }\n\n $.support.transition && this.$tip.hasClass('fade') ?\n $tip\n .one('bsTransitionEnd', complete)\n .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) :\n complete()\n }\n }\n\n Tooltip.prototype.applyPlacement = function (offset, placement) {\n var $tip = this.tip()\n var width = $tip[0].offsetWidth\n var height = $tip[0].offsetHeight\n\n // manually read margins because getBoundingClientRect includes difference\n var marginTop = parseInt($tip.css('margin-top'), 10)\n var marginLeft = parseInt($tip.css('margin-left'), 10)\n\n // we must check for NaN for ie 8/9\n if (isNaN(marginTop)) marginTop = 0\n if (isNaN(marginLeft)) marginLeft = 0\n\n offset.top += marginTop\n offset.left += marginLeft\n\n // $.fn.offset doesn't round pixel values\n // so we use setOffset directly with our own function B-0\n $.offset.setOffset($tip[0], $.extend({\n using: function (props) {\n $tip.css({\n top: Math.round(props.top),\n left: Math.round(props.left)\n })\n }\n }, offset), 0)\n\n $tip.addClass('in')\n\n // check to see if placing tip in new offset caused the tip to resize itself\n var actualWidth = $tip[0].offsetWidth\n var actualHeight = $tip[0].offsetHeight\n\n if (placement == 'top' && actualHeight != height) {\n offset.top = offset.top + height - actualHeight\n }\n\n var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight)\n\n if (delta.left) offset.left += delta.left\n else offset.top += delta.top\n\n var isVertical = /top|bottom/.test(placement)\n var arrowDelta = isVertical ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight\n var arrowOffsetPosition = isVertical ? 'offsetWidth' : 'offsetHeight'\n\n $tip.offset(offset)\n this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical)\n }\n\n Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) {\n this.arrow()\n .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%')\n .css(isVertical ? 'top' : 'left', '')\n }\n\n Tooltip.prototype.setContent = function () {\n var $tip = this.tip()\n var title = this.getTitle()\n\n $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)\n $tip.removeClass('fade in top bottom left right')\n }\n\n Tooltip.prototype.hide = function (callback) {\n var that = this\n var $tip = $(this.$tip)\n var e = $.Event('hide.bs.' + this.type)\n\n function complete() {\n if (that.hoverState != 'in') $tip.detach()\n that.$element\n .removeAttr('aria-describedby')\n .trigger('hidden.bs.' + that.type)\n callback && callback()\n }\n\n this.$element.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n $tip.removeClass('in')\n\n $.support.transition && $tip.hasClass('fade') ?\n $tip\n .one('bsTransitionEnd', complete)\n .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) :\n complete()\n\n this.hoverState = null\n\n return this\n }\n\n Tooltip.prototype.fixTitle = function () {\n var $e = this.$element\n if ($e.attr('title') || typeof $e.attr('data-original-title') != 'string') {\n $e.attr('data-original-title', $e.attr('title') || '').attr('title', '')\n }\n }\n\n Tooltip.prototype.hasContent = function () {\n return this.getTitle()\n }\n\n Tooltip.prototype.getPosition = function ($element) {\n $element = $element || this.$element\n\n var el = $element[0]\n var isBody = el.tagName == 'BODY'\n\n var elRect = el.getBoundingClientRect()\n if (elRect.width == null) {\n // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093\n elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top })\n }\n var elOffset = isBody ? { top: 0, left: 0 } : $element.offset()\n var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() }\n var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null\n\n return $.extend({}, elRect, scroll, outerDims, elOffset)\n }\n\n Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {\n return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } :\n placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } :\n placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :\n /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width }\n\n }\n\n Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) {\n var delta = { top: 0, left: 0 }\n if (!this.$viewport) return delta\n\n var viewportPadding = this.options.viewport && this.options.viewport.padding || 0\n var viewportDimensions = this.getPosition(this.$viewport)\n\n if (/right|left/.test(placement)) {\n var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll\n var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight\n if (topEdgeOffset < viewportDimensions.top) { // top overflow\n delta.top = viewportDimensions.top - topEdgeOffset\n } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow\n delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset\n }\n } else {\n var leftEdgeOffset = pos.left - viewportPadding\n var rightEdgeOffset = pos.left + viewportPadding + actualWidth\n if (leftEdgeOffset < viewportDimensions.left) { // left overflow\n delta.left = viewportDimensions.left - leftEdgeOffset\n } else if (rightEdgeOffset > viewportDimensions.right) { // right overflow\n delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset\n }\n }\n\n return delta\n }\n\n Tooltip.prototype.getTitle = function () {\n var title\n var $e = this.$element\n var o = this.options\n\n title = $e.attr('data-original-title')\n || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)\n\n return title\n }\n\n Tooltip.prototype.getUID = function (prefix) {\n do prefix += ~~(Math.random() * 1000000)\n while (document.getElementById(prefix))\n return prefix\n }\n\n Tooltip.prototype.tip = function () {\n if (!this.$tip) {\n this.$tip = $(this.options.template)\n if (this.$tip.length != 1) {\n throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!')\n }\n }\n return this.$tip\n }\n\n Tooltip.prototype.arrow = function () {\n return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow'))\n }\n\n Tooltip.prototype.enable = function () {\n this.enabled = true\n }\n\n Tooltip.prototype.disable = function () {\n this.enabled = false\n }\n\n Tooltip.prototype.toggleEnabled = function () {\n this.enabled = !this.enabled\n }\n\n Tooltip.prototype.toggle = function (e) {\n var self = this\n if (e) {\n self = $(e.currentTarget).data('bs.' + this.type)\n if (!self) {\n self = new this.constructor(e.currentTarget, this.getDelegateOptions())\n $(e.currentTarget).data('bs.' + this.type, self)\n }\n }\n\n if (e) {\n self.inState.click = !self.inState.click\n if (self.isInStateTrue()) self.enter(self)\n else self.leave(self)\n } else {\n self.tip().hasClass('in') ? self.leave(self) : self.enter(self)\n }\n }\n\n Tooltip.prototype.destroy = function () {\n var that = this\n clearTimeout(this.timeout)\n this.hide(function () {\n that.$element.off('.' + that.type).removeData('bs.' + that.type)\n if (that.$tip) {\n that.$tip.detach()\n }\n that.$tip = null\n that.$arrow = null\n that.$viewport = null\n })\n }\n\n\n // TOOLTIP PLUGIN DEFINITION\n // =========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.tooltip')\n var options = typeof option == 'object' && option\n\n if (!data && /destroy|hide/.test(option)) return\n if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.tooltip\n\n $.fn.tooltip = Plugin\n $.fn.tooltip.Constructor = Tooltip\n\n\n // TOOLTIP NO CONFLICT\n // ===================\n\n $.fn.tooltip.noConflict = function () {\n $.fn.tooltip = old\n return this\n }\n\n}(jQuery);\n","transition.js":"/* ========================================================================\n * Bootstrap: transition.js v3.3.5\n * http://getbootstrap.com/javascript/#transitions\n * ========================================================================\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)\n // ============================================================\n\n function transitionEnd() {\n var el = document.createElement('bootstrap')\n\n var transEndEventNames = {\n WebkitTransition : 'webkitTransitionEnd',\n MozTransition : 'transitionend',\n OTransition : 'oTransitionEnd otransitionend',\n transition : 'transitionend'\n }\n\n for (var name in transEndEventNames) {\n if (el.style[name] !== undefined) {\n return { end: transEndEventNames[name] }\n }\n }\n\n return false // explicit for ie8 ( ._.)\n }\n\n // http://blog.alexmaccaw.com/css-transitions\n $.fn.emulateTransitionEnd = function (duration) {\n var called = false\n var $el = this\n $(this).one('bsTransitionEnd', function () { called = true })\n var callback = function () { if (!called) $($el).trigger($.support.transition.end) }\n setTimeout(callback, duration)\n return this\n }\n\n $(function () {\n $.support.transition = transitionEnd()\n\n if (!$.support.transition) return\n\n $.event.special.bsTransitionEnd = {\n bindType: $.support.transition.end,\n delegateType: $.support.transition.end,\n handle: function (e) {\n if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments)\n }\n }\n })\n\n}(jQuery);\n"},__less={"alerts.less":"//\n// Alerts\n// --------------------------------------------------\n\n\n// Base styles\n// -------------------------\n\n.alert {\n padding: @alert-padding;\n margin-bottom: @line-height-computed;\n border: 1px solid transparent;\n border-radius: @alert-border-radius;\n\n // Headings for larger alerts\n h4 {\n margin-top: 0;\n // Specified for the h4 to prevent conflicts of changing @headings-color\n color: inherit;\n }\n\n // Provide class for links that match alerts\n .alert-link {\n font-weight: @alert-link-font-weight;\n }\n\n // Improve alignment and spacing of inner content\n > p,\n > ul {\n margin-bottom: 0;\n }\n\n > p + p {\n margin-top: 5px;\n }\n}\n\n// Dismissible alerts\n//\n// Expand the right padding and account for the close button's positioning.\n\n.alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0.\n.alert-dismissible {\n padding-right: (@alert-padding + 20);\n\n // Adjust close link position\n .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n }\n}\n\n// Alternate styles\n//\n// Generate contextual modifier classes for colorizing the alert.\n\n.alert-success {\n .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text);\n}\n\n.alert-info {\n .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text);\n}\n\n.alert-warning {\n .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text);\n}\n\n.alert-danger {\n .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text);\n}\n", -"badges.less":"//\n// Badges\n// --------------------------------------------------\n\n\n// Base class\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: @font-size-small;\n font-weight: @badge-font-weight;\n color: @badge-color;\n line-height: @badge-line-height;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: @badge-bg;\n border-radius: @badge-border-radius;\n\n // Empty badges collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for badges in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n\n .btn-xs &,\n .btn-group-xs > .btn & {\n top: 0;\n padding: 1px 5px;\n }\n\n // Hover state, but only for links\n a& {\n &:hover,\n &:focus {\n color: @badge-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Account for badges in navs\n .list-group-item.active > &,\n .nav-pills > .active > a > & {\n color: @badge-active-color;\n background-color: @badge-active-bg;\n }\n\n .list-group-item > & {\n float: right;\n }\n\n .list-group-item > & + & {\n margin-right: 5px;\n }\n\n .nav-pills > li > a > & {\n margin-left: 3px;\n }\n}\n","bootstrap.less":'/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n// Core variables and mixins\n@import "variables.less";\n@import "mixins.less";\n\n// Reset and dependencies\n@import "normalize.less";\n@import "print.less";\n@import "glyphicons.less";\n\n// Core CSS\n@import "scaffolding.less";\n@import "type.less";\n@import "code.less";\n@import "grid.less";\n@import "tables.less";\n@import "forms.less";\n@import "buttons.less";\n\n// Components\n@import "component-animations.less";\n@import "dropdowns.less";\n@import "button-groups.less";\n@import "input-groups.less";\n@import "navs.less";\n@import "navbar.less";\n@import "breadcrumbs.less";\n@import "pagination.less";\n@import "pager.less";\n@import "labels.less";\n@import "badges.less";\n@import "jumbotron.less";\n@import "thumbnails.less";\n@import "alerts.less";\n@import "progress-bars.less";\n@import "media.less";\n@import "list-group.less";\n@import "panels.less";\n@import "responsive-embed.less";\n@import "wells.less";\n@import "close.less";\n\n// Components w/ JavaScript\n@import "modals.less";\n@import "tooltip.less";\n@import "popovers.less";\n@import "carousel.less";\n\n// Utility classes\n@import "utilities.less";\n@import "responsive-utilities.less";\n',"breadcrumbs.less":'//\n// Breadcrumbs\n// --------------------------------------------------\n\n\n.breadcrumb {\n padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal;\n margin-bottom: @line-height-computed;\n list-style: none;\n background-color: @breadcrumb-bg;\n border-radius: @border-radius-base;\n\n > li {\n display: inline-block;\n\n + li:before {\n content: "@{breadcrumb-separator}\\00a0"; // Unicode space added since inline-block means non-collapsing white-space\n padding: 0 5px;\n color: @breadcrumb-color;\n }\n }\n\n > .active {\n color: @breadcrumb-active-color;\n }\n}\n',"button-groups.less":'//\n// Button groups\n// --------------------------------------------------\n\n// Make the div behave like a button\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle; // match .btn alignment given font-size hack above\n > .btn {\n position: relative;\n float: left;\n // Bring the "active" button to the front\n &:hover,\n &:focus,\n &:active,\n &.active {\n z-index: 2;\n }\n }\n}\n\n// Prevent double borders when buttons are next to each other\n.btn-group {\n .btn + .btn,\n .btn + .btn-group,\n .btn-group + .btn,\n .btn-group + .btn-group {\n margin-left: -1px;\n }\n}\n\n// Optional: Group multiple button groups together for a toolbar\n.btn-toolbar {\n margin-left: -5px; // Offset the first child\'s margin\n &:extend(.clearfix all);\n\n .btn,\n .btn-group,\n .input-group {\n float: left;\n }\n > .btn,\n > .btn-group,\n > .input-group {\n margin-left: 5px;\n }\n}\n\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n\n// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match\n.btn-group > .btn:first-child {\n margin-left: 0;\n &:not(:last-child):not(.dropdown-toggle) {\n .border-right-radius(0);\n }\n}\n// Need .dropdown-toggle since :last-child doesn\'t apply given a .dropdown-menu immediately after it\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n .border-left-radius(0);\n}\n\n// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-right-radius(0);\n }\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-left-radius(0);\n}\n\n// On active and open, don\'t show outline\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n\n\n// Sizing\n//\n// Remix the default button sizing classes into new ones for easier manipulation.\n\n.btn-group-xs > .btn { &:extend(.btn-xs); }\n.btn-group-sm > .btn { &:extend(.btn-sm); }\n.btn-group-lg > .btn { &:extend(.btn-lg); }\n\n\n// Split button dropdowns\n// ----------------------\n\n// Give the line between buttons some depth\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n\n// The clickable button for toggling the menu\n// Remove the gradient and set the same inset shadow as the :active state\n.btn-group.open .dropdown-toggle {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n\n // Show no shadow for `.btn-link` since it has no other button styles.\n &.btn-link {\n .box-shadow(none);\n }\n}\n\n\n// Reposition the caret\n.btn .caret {\n margin-left: 0;\n}\n// Carets in other button sizes\n.btn-lg .caret {\n border-width: @caret-width-large @caret-width-large 0;\n border-bottom-width: 0;\n}\n// Upside down carets for .dropup\n.dropup .btn-lg .caret {\n border-width: 0 @caret-width-large @caret-width-large;\n}\n\n\n// Vertical button groups\n// ----------------------\n\n.btn-group-vertical {\n > .btn,\n > .btn-group,\n > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n }\n\n // Clear floats so dropdown menus can be properly placed\n > .btn-group {\n &:extend(.clearfix all);\n > .btn {\n float: none;\n }\n }\n\n > .btn + .btn,\n > .btn + .btn-group,\n > .btn-group + .btn,\n > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n }\n}\n\n.btn-group-vertical > .btn {\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n &:first-child:not(:last-child) {\n border-top-right-radius: @btn-border-radius-base;\n .border-bottom-radius(0);\n }\n &:last-child:not(:first-child) {\n border-bottom-left-radius: @btn-border-radius-base;\n .border-top-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-bottom-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-top-radius(0);\n}\n\n\n// Justified button groups\n// ----------------------\n\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n > .btn,\n > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n }\n > .btn-group .btn {\n width: 100%;\n }\n\n > .btn-group .dropdown-menu {\n left: auto;\n }\n}\n\n\n// Checkbox and radio options\n//\n// In order to support the browser\'s form validation feedback, powered by the\n// `required` attribute, we have to "hide" the inputs via `clip`. We cannot use\n// `display: none;` or `visibility: hidden;` as that also hides the popover.\n// Simply visually hiding the inputs via `opacity` would leave them clickable in\n// certain cases which is prevented by using `clip` and `pointer-events`.\n// This way, we ensure a DOM element is visible to position the popover from.\n//\n// See https://github.com/twbs/bootstrap/pull/12794 and\n// https://github.com/twbs/bootstrap/pull/14559 for more information.\n\n[data-toggle="buttons"] {\n > .btn,\n > .btn-group > .btn {\n input[type="radio"],\n input[type="checkbox"] {\n position: absolute;\n clip: rect(0,0,0,0);\n pointer-events: none;\n }\n }\n}\n',"buttons.less":'//\n// Buttons\n// --------------------------------------------------\n\n\n// Base styles\n// --------------------------------------------------\n\n.btn {\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: @btn-font-weight;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @btn-border-radius-base);\n .user-select(none);\n\n &,\n &:active,\n &.active {\n &:focus,\n &.focus {\n .tab-focus();\n }\n }\n\n &:hover,\n &:focus,\n &.focus {\n color: @btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n .opacity(.65);\n .box-shadow(none);\n }\n\n a& {\n &.disabled,\n fieldset[disabled] & {\n pointer-events: none; // Future-proof disabling of clicks on `` elements\n }\n }\n}\n\n\n// Alternate buttons\n// --------------------------------------------------\n\n.btn-default {\n .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);\n}\n.btn-primary {\n .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);\n}\n// Success appears as green\n.btn-success {\n .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);\n}\n// Info appears as blue-green\n.btn-info {\n .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);\n}\n// Warning appears as orange\n.btn-warning {\n .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);\n}\n// Danger and error appear as red\n.btn-danger {\n .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);\n}\n\n\n// Link buttons\n// -------------------------\n\n// Make a button look and behave like a link\n.btn-link {\n color: @link-color;\n font-weight: normal;\n border-radius: 0;\n\n &,\n &:active,\n &.active,\n &[disabled],\n fieldset[disabled] & {\n background-color: transparent;\n .box-shadow(none);\n }\n &,\n &:hover,\n &:focus,\n &:active {\n border-color: transparent;\n }\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n background-color: transparent;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @btn-link-disabled-color;\n text-decoration: none;\n }\n }\n}\n\n\n// Button Sizes\n// --------------------------------------------------\n\n.btn-lg {\n // line-height: ensure even-numbered height of button next to large input\n .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @btn-border-radius-large);\n}\n.btn-sm {\n // line-height: ensure proper height of button next to small input\n .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n.btn-xs {\n .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n\n\n// Block button\n// --------------------------------------------------\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n// Vertically space out multiple block buttons\n.btn-block + .btn-block {\n margin-top: 5px;\n}\n\n// Specificity overrides\ninput[type="submit"],\ninput[type="reset"],\ninput[type="button"] {\n &.btn-block {\n width: 100%;\n }\n}\n',"carousel.less":"//\n// Carousel\n// --------------------------------------------------\n\n\n// Wrapper for the slide container and indicators\n.carousel {\n position: relative;\n}\n\n.carousel-inner {\n position: relative;\n overflow: hidden;\n width: 100%;\n\n > .item {\n display: none;\n position: relative;\n .transition(.6s ease-in-out left);\n\n // Account for jankitude on images\n > img,\n > a > img {\n &:extend(.img-responsive);\n line-height: 1;\n }\n\n // WebKit CSS3 transforms for supported devices\n @media all and (transform-3d), (-webkit-transform-3d) {\n .transition-transform(~'0.6s ease-in-out');\n .backface-visibility(~'hidden');\n .perspective(1000px);\n\n &.next,\n &.active.right {\n .translate3d(100%, 0, 0);\n left: 0;\n }\n &.prev,\n &.active.left {\n .translate3d(-100%, 0, 0);\n left: 0;\n }\n &.next.left,\n &.prev.right,\n &.active {\n .translate3d(0, 0, 0);\n left: 0;\n }\n }\n }\n\n > .active,\n > .next,\n > .prev {\n display: block;\n }\n\n > .active {\n left: 0;\n }\n\n > .next,\n > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n }\n\n > .next {\n left: 100%;\n }\n > .prev {\n left: -100%;\n }\n > .next.left,\n > .prev.right {\n left: 0;\n }\n\n > .active.left {\n left: -100%;\n }\n > .active.right {\n left: 100%;\n }\n\n}\n\n// Left/right controls for nav\n// ---------------------------\n\n.carousel-control {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: @carousel-control-width;\n .opacity(@carousel-control-opacity);\n font-size: @carousel-control-font-size;\n color: @carousel-control-color;\n text-align: center;\n text-shadow: @carousel-text-shadow;\n // We can't have this transition here because WebKit cancels the carousel\n // animation if you trip this while in the middle of another animation.\n\n // Set gradients for backgrounds\n &.left {\n #gradient > .horizontal(@start-color: rgba(0,0,0,.5); @end-color: rgba(0,0,0,.0001));\n }\n &.right {\n left: auto;\n right: 0;\n #gradient > .horizontal(@start-color: rgba(0,0,0,.0001); @end-color: rgba(0,0,0,.5));\n }\n\n // Hover/focus state\n &:hover,\n &:focus {\n outline: 0;\n color: @carousel-control-color;\n text-decoration: none;\n .opacity(.9);\n }\n\n // Toggles\n .icon-prev,\n .icon-next,\n .glyphicon-chevron-left,\n .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n margin-top: -10px;\n z-index: 5;\n display: inline-block;\n }\n .icon-prev,\n .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n }\n .icon-next,\n .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n }\n .icon-prev,\n .icon-next {\n width: 20px;\n height: 20px;\n line-height: 1;\n font-family: serif;\n }\n\n\n .icon-prev {\n &:before {\n content: '\\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039)\n }\n }\n .icon-next {\n &:before {\n content: '\\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A)\n }\n }\n}\n\n// Optional indicator pips\n//\n// Add an unordered list with the following class and add a list item for each\n// slide your carousel holds.\n\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n margin-left: -30%;\n padding-left: 0;\n list-style: none;\n text-align: center;\n\n li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n border: 1px solid @carousel-indicator-border-color;\n border-radius: 10px;\n cursor: pointer;\n\n // IE8-9 hack for event handling\n //\n // Internet Explorer 8-9 does not support clicks on elements without a set\n // `background-color`. We cannot use `filter` since that's not viewed as a\n // background color by the browser. Thus, a hack is needed.\n // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Internet_Explorer\n //\n // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we\n // set alpha transparency for the best results possible.\n background-color: #000 \\9; // IE8\n background-color: rgba(0,0,0,0); // IE9\n }\n .active {\n margin: 0;\n width: 12px;\n height: 12px;\n background-color: @carousel-indicator-active-bg;\n }\n}\n\n// Optional captions\n// -----------------------------\n// Hidden by default for smaller viewports\n.carousel-caption {\n position: absolute;\n left: 15%;\n right: 15%;\n bottom: 20px;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: @carousel-caption-color;\n text-align: center;\n text-shadow: @carousel-text-shadow;\n & .btn {\n text-shadow: none; // No shadow for button elements in carousel-caption\n }\n}\n\n\n// Scale up controls for tablets and up\n@media screen and (min-width: @screen-sm-min) {\n\n // Scale up the controls a smidge\n .carousel-control {\n .glyphicon-chevron-left,\n .glyphicon-chevron-right,\n .icon-prev,\n .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -15px;\n font-size: 30px;\n }\n .glyphicon-chevron-left,\n .icon-prev {\n margin-left: -15px;\n }\n .glyphicon-chevron-right,\n .icon-next {\n margin-right: -15px;\n }\n }\n\n // Show and left align the captions\n .carousel-caption {\n left: 20%;\n right: 20%;\n padding-bottom: 30px;\n }\n\n // Move up the indicators\n .carousel-indicators {\n bottom: 20px;\n }\n}\n","close.less":'//\n// Close icons\n// --------------------------------------------------\n\n\n.close {\n float: right;\n font-size: (@font-size-base * 1.5);\n font-weight: @close-font-weight;\n line-height: 1;\n color: @close-color;\n text-shadow: @close-text-shadow;\n .opacity(.2);\n\n &:hover,\n &:focus {\n color: @close-color;\n text-decoration: none;\n cursor: pointer;\n .opacity(.5);\n }\n\n // Additional properties for button version\n // iOS requires the button element instead of an anchor tag.\n // If you want the anchor version, it requires `href="#"`.\n // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n button& {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n }\n}\n',"code.less":"//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n }\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n word-break: break-all;\n word-wrap: break-word;\n color: @pre-color;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","component-animations.less":'//\n// Component animations\n// --------------------------------------------------\n\n// Heads up!\n//\n// We don\'t use the `.opacity()` mixin here since it causes a bug with text\n// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552.\n\n.fade {\n opacity: 0;\n .transition(opacity .15s linear);\n &.in {\n opacity: 1;\n }\n}\n\n.collapse {\n display: none;\n\n &.in { display: block; }\n tr&.in { display: table-row; }\n tbody&.in { display: table-row-group; }\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n .transition-property(~"height, visibility");\n .transition-duration(.35s);\n .transition-timing-function(ease);\n}\n',"dropdowns.less":'//\n// Dropdown menus\n// --------------------------------------------------\n\n\n// Dropdown arrow/caret\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: @caret-width-base dashed;\n border-top: @caret-width-base solid ~"\\9"; // IE8\n border-right: @caret-width-base solid transparent;\n border-left: @caret-width-base solid transparent;\n}\n\n// The dropdown wrapper (div)\n.dropup,\n.dropdown {\n position: relative;\n}\n\n// Prevent the focus on the dropdown toggle when closing dropdowns\n.dropdown-toggle:focus {\n outline: 0;\n}\n\n// The dropdown menu (ul)\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: @zindex-dropdown;\n display: none; // none by default, but block on "open" of the menu\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0; // override default ul\n list-style: none;\n font-size: @font-size-base;\n text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)\n background-color: @dropdown-bg;\n border: 1px solid @dropdown-fallback-border; // IE8 fallback\n border: 1px solid @dropdown-border;\n border-radius: @border-radius-base;\n .box-shadow(0 6px 12px rgba(0,0,0,.175));\n background-clip: padding-box;\n\n // Aligns the dropdown menu to right\n //\n // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]`\n &.pull-right {\n right: 0;\n left: auto;\n }\n\n // Dividers (basically an hr) within the dropdown\n .divider {\n .nav-divider(@dropdown-divider-bg);\n }\n\n // Links within the dropdown menu\n > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: @line-height-base;\n color: @dropdown-link-color;\n white-space: nowrap; // prevent links from randomly breaking onto new lines\n }\n}\n\n// Hover/Focus state\n.dropdown-menu > li > a {\n &:hover,\n &:focus {\n text-decoration: none;\n color: @dropdown-link-hover-color;\n background-color: @dropdown-link-hover-bg;\n }\n}\n\n// Active state\n.dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-active-color;\n text-decoration: none;\n outline: 0;\n background-color: @dropdown-link-active-bg;\n }\n}\n\n// Disabled state\n//\n// Gray out text and ensure the hover/focus state remains gray\n\n.dropdown-menu > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-disabled-color;\n }\n\n // Nuke hover/focus effects\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none; // Remove CSS gradient\n .reset-filter();\n cursor: @cursor-disabled;\n }\n}\n\n// Open state for the dropdown\n.open {\n // Show the menu\n > .dropdown-menu {\n display: block;\n }\n\n // Remove the outline when :focus is triggered\n > a {\n outline: 0;\n }\n}\n\n// Menu positioning\n//\n// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown\n// menu with the parent.\n.dropdown-menu-right {\n left: auto; // Reset the default from `.dropdown-menu`\n right: 0;\n}\n// With v3, we enabled auto-flipping if you have a dropdown within a right\n// aligned nav component. To enable the undoing of that, we provide an override\n// to restore the default dropdown menu alignment.\n//\n// This is only for left-aligning a dropdown menu within a `.navbar-right` or\n// `.pull-right` nav component.\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n\n// Dropdown section headers\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: @font-size-small;\n line-height: @line-height-base;\n color: @dropdown-header-color;\n white-space: nowrap; // as with > li > a\n}\n\n// Backdrop to catch body clicks on mobile, etc.\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: (@zindex-dropdown - 10);\n}\n\n// Right aligned dropdowns\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n\n// Allow for dropdowns to go bottom up (aka, dropup-menu)\n//\n// Just add .dropup after the standard .dropdown class and you\'re set, bro.\n// TODO: abstract this so that the navbar fixed styles are not placed here?\n\n.dropup,\n.navbar-fixed-bottom .dropdown {\n // Reverse the caret\n .caret {\n border-top: 0;\n border-bottom: @caret-width-base dashed;\n border-bottom: @caret-width-base solid ~"\\9"; // IE8\n content: "";\n }\n // Different positioning for bottom up menu\n .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n }\n}\n\n\n// Component alignment\n//\n// Reiterate per navbar.less and the modified component alignment there.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-right {\n .dropdown-menu {\n .dropdown-menu-right();\n }\n // Necessary for overrides of the default right aligned menu.\n // Will remove come v4 in all likelihood.\n .dropdown-menu-left {\n .dropdown-menu-left();\n }\n }\n}\n',"forms.less":'//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\n// Override content-box in Normalize (* isn\'t specific enough)\ninput[type="search"] {\n .box-sizing(border-box);\n}\n\n// Position radios and checkboxes better\ninput[type="radio"],\ninput[type="checkbox"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n}\n\ninput[type="file"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type="range"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type="file"]:focus,\ninput[type="radio"]:focus,\ninput[type="checkbox"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type="text"]\n// input[type="password"]\n// input[type="datetime"]\n// input[type="datetime-local"]\n// input[type="date"]\n// input[type="month"]\n// input[type="time"]\n// input[type="week"]\n// input[type="number"]\n// input[type="email"]\n// input[type="url"]\n// input[type="search"]\n// input[type="tel"]\n// input[type="color"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius; // Note: This has no effect on s in CSS.\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));\n .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Disabled and read-only inputs\n //\n // HTML5 says that controls under a fieldset > legend:first-child won\'t be\n // disabled if the fieldset is disabled. Due to implementation difficulty, we\n // don\'t honor that edge case; we style them as disabled anyway.\n &[disabled],\n &[readonly],\n fieldset[disabled] & {\n background-color: @input-bg-disabled;\n opacity: 1; // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655\n }\n\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n }\n\n // Reset height for `textarea`s\n textarea& {\n height: auto;\n }\n}\n\n\n// Search inputs in iOS\n//\n// This overrides the extra rounded corners on search inputs in iOS so that our\n// `.form-control` class can properly style them. Note that this cannot simply\n// be added to `.form-control` as it\'s not specific enough. For details, see\n// https://github.com/twbs/bootstrap/issues/11586.\n\ninput[type="search"] {\n -webkit-appearance: none;\n}\n\n\n// Special styles for iOS temporal inputs\n//\n// In Mobile Safari, setting `display: block` on temporal inputs causes the\n// text within the input to become vertically misaligned. As a workaround, we\n// set a pixel line-height that matches the given height of the input, but only\n// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848\n//\n// Note that as of 8.3, iOS doesn\'t support `datetime` or `week`.\n\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type="date"],\n input[type="time"],\n input[type="datetime-local"],\n input[type="month"] {\n &.form-control {\n line-height: @input-height-base;\n }\n\n &.input-sm,\n .input-group-sm & {\n line-height: @input-height-small;\n }\n\n &.input-lg,\n .input-group-lg & {\n line-height: @input-height-large;\n }\n }\n}\n\n\n// Form groups\n//\n// Designed to help with the organization and spacing of vertical forms. For\n// horizontal forms, use the predefined grid classes.\n\n.form-group {\n margin-bottom: @form-group-margin-bottom;\n}\n\n\n// Checkboxes and radios\n//\n// Indent the labels to position radios/checkboxes as hanging controls.\n\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n\n label {\n min-height: @line-height-computed; // Ensure the input doesn\'t jump when there is no text\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: normal;\n cursor: pointer;\n }\n}\n.radio input[type="radio"],\n.radio-inline input[type="radio"],\n.checkbox input[type="checkbox"],\n.checkbox-inline input[type="checkbox"] {\n position: absolute;\n margin-left: -20px;\n margin-top: 4px \\9;\n}\n\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing\n}\n\n// Radios and checkboxes on same line\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px; // space out consecutive inline controls\n}\n\n// Apply same disabled cursor tweak as for inputs\n// Some special care is needed because Star\n\n// Import the fonts\n@font-face {\n font-family: \'Glyphicons Halflings\';\n src: url(\'@{icon-font-path}@{icon-font-name}.eot\');\n src: url(\'@{icon-font-path}@{icon-font-name}.eot?#iefix\') format(\'embedded-opentype\'),\n url(\'@{icon-font-path}@{icon-font-name}.woff2\') format(\'woff2\'),\n url(\'@{icon-font-path}@{icon-font-name}.woff\') format(\'woff\'),\n url(\'@{icon-font-path}@{icon-font-name}.ttf\') format(\'truetype\'),\n url(\'@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}\') format(\'svg\');\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \'Glyphicons Halflings\';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: "\\2a"; } }\n.glyphicon-plus { &:before { content: "\\2b"; } }\n.glyphicon-euro,\n.glyphicon-eur { &:before { content: "\\20ac"; } }\n.glyphicon-minus { &:before { content: "\\2212"; } }\n.glyphicon-cloud { &:before { content: "\\2601"; } }\n.glyphicon-envelope { &:before { content: "\\2709"; } }\n.glyphicon-pencil { &:before { content: "\\270f"; } }\n.glyphicon-glass { &:before { content: "\\e001"; } }\n.glyphicon-music { &:before { content: "\\e002"; } }\n.glyphicon-search { &:before { content: "\\e003"; } }\n.glyphicon-heart { &:before { content: "\\e005"; } }\n.glyphicon-star { &:before { content: "\\e006"; } }\n.glyphicon-star-empty { &:before { content: "\\e007"; } }\n.glyphicon-user { &:before { content: "\\e008"; } }\n.glyphicon-film { &:before { content: "\\e009"; } }\n.glyphicon-th-large { &:before { content: "\\e010"; } }\n.glyphicon-th { &:before { content: "\\e011"; } }\n.glyphicon-th-list { &:before { content: "\\e012"; } }\n.glyphicon-ok { &:before { content: "\\e013"; } }\n.glyphicon-remove { &:before { content: "\\e014"; } }\n.glyphicon-zoom-in { &:before { content: "\\e015"; } }\n.glyphicon-zoom-out { &:before { content: "\\e016"; } }\n.glyphicon-off { &:before { content: "\\e017"; } }\n.glyphicon-signal { &:before { content: "\\e018"; } }\n.glyphicon-cog { &:before { content: "\\e019"; } }\n.glyphicon-trash { &:before { content: "\\e020"; } }\n.glyphicon-home { &:before { content: "\\e021"; } }\n.glyphicon-file { &:before { content: "\\e022"; } }\n.glyphicon-time { &:before { content: "\\e023"; } }\n.glyphicon-road { &:before { content: "\\e024"; } }\n.glyphicon-download-alt { &:before { content: "\\e025"; } }\n.glyphicon-download { &:before { content: "\\e026"; } }\n.glyphicon-upload { &:before { content: "\\e027"; } }\n.glyphicon-inbox { &:before { content: "\\e028"; } }\n.glyphicon-play-circle { &:before { content: "\\e029"; } }\n.glyphicon-repeat { &:before { content: "\\e030"; } }\n.glyphicon-refresh { &:before { content: "\\e031"; } }\n.glyphicon-list-alt { &:before { content: "\\e032"; } }\n.glyphicon-lock { &:before { content: "\\e033"; } }\n.glyphicon-flag { &:before { content: "\\e034"; } }\n.glyphicon-headphones { &:before { content: "\\e035"; } }\n.glyphicon-volume-off { &:before { content: "\\e036"; } }\n.glyphicon-volume-down { &:before { content: "\\e037"; } }\n.glyphicon-volume-up { &:before { content: "\\e038"; } }\n.glyphicon-qrcode { &:before { content: "\\e039"; } }\n.glyphicon-barcode { &:before { content: "\\e040"; } }\n.glyphicon-tag { &:before { content: "\\e041"; } }\n.glyphicon-tags { &:before { content: "\\e042"; } }\n.glyphicon-book { &:before { content: "\\e043"; } }\n.glyphicon-bookmark { &:before { content: "\\e044"; } }\n.glyphicon-print { &:before { content: "\\e045"; } }\n.glyphicon-camera { &:before { content: "\\e046"; } }\n.glyphicon-font { &:before { content: "\\e047"; } }\n.glyphicon-bold { &:before { content: "\\e048"; } }\n.glyphicon-italic { &:before { content: "\\e049"; } }\n.glyphicon-text-height { &:before { content: "\\e050"; } }\n.glyphicon-text-width { &:before { content: "\\e051"; } }\n.glyphicon-align-left { &:before { content: "\\e052"; } }\n.glyphicon-align-center { &:before { content: "\\e053"; } }\n.glyphicon-align-right { &:before { content: "\\e054"; } }\n.glyphicon-align-justify { &:before { content: "\\e055"; } }\n.glyphicon-list { &:before { content: "\\e056"; } }\n.glyphicon-indent-left { &:before { content: "\\e057"; } }\n.glyphicon-indent-right { &:before { content: "\\e058"; } }\n.glyphicon-facetime-video { &:before { content: "\\e059"; } }\n.glyphicon-picture { &:before { content: "\\e060"; } }\n.glyphicon-map-marker { &:before { content: "\\e062"; } }\n.glyphicon-adjust { &:before { content: "\\e063"; } }\n.glyphicon-tint { &:before { content: "\\e064"; } }\n.glyphicon-edit { &:before { content: "\\e065"; } }\n.glyphicon-share { &:before { content: "\\e066"; } }\n.glyphicon-check { &:before { content: "\\e067"; } }\n.glyphicon-move { &:before { content: "\\e068"; } }\n.glyphicon-step-backward { &:before { content: "\\e069"; } }\n.glyphicon-fast-backward { &:before { content: "\\e070"; } }\n.glyphicon-backward { &:before { content: "\\e071"; } }\n.glyphicon-play { &:before { content: "\\e072"; } }\n.glyphicon-pause { &:before { content: "\\e073"; } }\n.glyphicon-stop { &:before { content: "\\e074"; } }\n.glyphicon-forward { &:before { content: "\\e075"; } }\n.glyphicon-fast-forward { &:before { content: "\\e076"; } }\n.glyphicon-step-forward { &:before { content: "\\e077"; } }\n.glyphicon-eject { &:before { content: "\\e078"; } }\n.glyphicon-chevron-left { &:before { content: "\\e079"; } }\n.glyphicon-chevron-right { &:before { content: "\\e080"; } }\n.glyphicon-plus-sign { &:before { content: "\\e081"; } }\n.glyphicon-minus-sign { &:before { content: "\\e082"; } }\n.glyphicon-remove-sign { &:before { content: "\\e083"; } }\n.glyphicon-ok-sign { &:before { content: "\\e084"; } }\n.glyphicon-question-sign { &:before { content: "\\e085"; } }\n.glyphicon-info-sign { &:before { content: "\\e086"; } }\n.glyphicon-screenshot { &:before { content: "\\e087"; } }\n.glyphicon-remove-circle { &:before { content: "\\e088"; } }\n.glyphicon-ok-circle { &:before { content: "\\e089"; } }\n.glyphicon-ban-circle { &:before { content: "\\e090"; } }\n.glyphicon-arrow-left { &:before { content: "\\e091"; } }\n.glyphicon-arrow-right { &:before { content: "\\e092"; } }\n.glyphicon-arrow-up { &:before { content: "\\e093"; } }\n.glyphicon-arrow-down { &:before { content: "\\e094"; } }\n.glyphicon-share-alt { &:before { content: "\\e095"; } }\n.glyphicon-resize-full { &:before { content: "\\e096"; } }\n.glyphicon-resize-small { &:before { content: "\\e097"; } }\n.glyphicon-exclamation-sign { &:before { content: "\\e101"; } }\n.glyphicon-gift { &:before { content: "\\e102"; } }\n.glyphicon-leaf { &:before { content: "\\e103"; } }\n.glyphicon-fire { &:before { content: "\\e104"; } }\n.glyphicon-eye-open { &:before { content: "\\e105"; } }\n.glyphicon-eye-close { &:before { content: "\\e106"; } }\n.glyphicon-warning-sign { &:before { content: "\\e107"; } }\n.glyphicon-plane { &:before { content: "\\e108"; } }\n.glyphicon-calendar { &:before { content: "\\e109"; } }\n.glyphicon-random { &:before { content: "\\e110"; } }\n.glyphicon-comment { &:before { content: "\\e111"; } }\n.glyphicon-magnet { &:before { content: "\\e112"; } }\n.glyphicon-chevron-up { &:before { content: "\\e113"; } }\n.glyphicon-chevron-down { &:before { content: "\\e114"; } }\n.glyphicon-retweet { &:before { content: "\\e115"; } }\n.glyphicon-shopping-cart { &:before { content: "\\e116"; } }\n.glyphicon-folder-close { &:before { content: "\\e117"; } }\n.glyphicon-folder-open { &:before { content: "\\e118"; } }\n.glyphicon-resize-vertical { &:before { content: "\\e119"; } }\n.glyphicon-resize-horizontal { &:before { content: "\\e120"; } }\n.glyphicon-hdd { &:before { content: "\\e121"; } }\n.glyphicon-bullhorn { &:before { content: "\\e122"; } }\n.glyphicon-bell { &:before { content: "\\e123"; } }\n.glyphicon-certificate { &:before { content: "\\e124"; } }\n.glyphicon-thumbs-up { &:before { content: "\\e125"; } }\n.glyphicon-thumbs-down { &:before { content: "\\e126"; } }\n.glyphicon-hand-right { &:before { content: "\\e127"; } }\n.glyphicon-hand-left { &:before { content: "\\e128"; } }\n.glyphicon-hand-up { &:before { content: "\\e129"; } }\n.glyphicon-hand-down { &:before { content: "\\e130"; } }\n.glyphicon-circle-arrow-right { &:before { content: "\\e131"; } }\n.glyphicon-circle-arrow-left { &:before { content: "\\e132"; } }\n.glyphicon-circle-arrow-up { &:before { content: "\\e133"; } }\n.glyphicon-circle-arrow-down { &:before { content: "\\e134"; } }\n.glyphicon-globe { &:before { content: "\\e135"; } }\n.glyphicon-wrench { &:before { content: "\\e136"; } }\n.glyphicon-tasks { &:before { content: "\\e137"; } }\n.glyphicon-filter { &:before { content: "\\e138"; } }\n.glyphicon-briefcase { &:before { content: "\\e139"; } }\n.glyphicon-fullscreen { &:before { content: "\\e140"; } }\n.glyphicon-dashboard { &:before { content: "\\e141"; } }\n.glyphicon-paperclip { &:before { content: "\\e142"; } }\n.glyphicon-heart-empty { &:before { content: "\\e143"; } }\n.glyphicon-link { &:before { content: "\\e144"; } }\n.glyphicon-phone { &:before { content: "\\e145"; } }\n.glyphicon-pushpin { &:before { content: "\\e146"; } }\n.glyphicon-usd { &:before { content: "\\e148"; } }\n.glyphicon-gbp { &:before { content: "\\e149"; } }\n.glyphicon-sort { &:before { content: "\\e150"; } }\n.glyphicon-sort-by-alphabet { &:before { content: "\\e151"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: "\\e152"; } }\n.glyphicon-sort-by-order { &:before { content: "\\e153"; } }\n.glyphicon-sort-by-order-alt { &:before { content: "\\e154"; } }\n.glyphicon-sort-by-attributes { &:before { content: "\\e155"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: "\\e156"; } }\n.glyphicon-unchecked { &:before { content: "\\e157"; } }\n.glyphicon-expand { &:before { content: "\\e158"; } }\n.glyphicon-collapse-down { &:before { content: "\\e159"; } }\n.glyphicon-collapse-up { &:before { content: "\\e160"; } }\n.glyphicon-log-in { &:before { content: "\\e161"; } }\n.glyphicon-flash { &:before { content: "\\e162"; } }\n.glyphicon-log-out { &:before { content: "\\e163"; } }\n.glyphicon-new-window { &:before { content: "\\e164"; } }\n.glyphicon-record { &:before { content: "\\e165"; } }\n.glyphicon-save { &:before { content: "\\e166"; } }\n.glyphicon-open { &:before { content: "\\e167"; } }\n.glyphicon-saved { &:before { content: "\\e168"; } }\n.glyphicon-import { &:before { content: "\\e169"; } }\n.glyphicon-export { &:before { content: "\\e170"; } }\n.glyphicon-send { &:before { content: "\\e171"; } }\n.glyphicon-floppy-disk { &:before { content: "\\e172"; } }\n.glyphicon-floppy-saved { &:before { content: "\\e173"; } }\n.glyphicon-floppy-remove { &:before { content: "\\e174"; } }\n.glyphicon-floppy-save { &:before { content: "\\e175"; } }\n.glyphicon-floppy-open { &:before { content: "\\e176"; } }\n.glyphicon-credit-card { &:before { content: "\\e177"; } }\n.glyphicon-transfer { &:before { content: "\\e178"; } }\n.glyphicon-cutlery { &:before { content: "\\e179"; } }\n.glyphicon-header { &:before { content: "\\e180"; } }\n.glyphicon-compressed { &:before { content: "\\e181"; } }\n.glyphicon-earphone { &:before { content: "\\e182"; } }\n.glyphicon-phone-alt { &:before { content: "\\e183"; } }\n.glyphicon-tower { &:before { content: "\\e184"; } }\n.glyphicon-stats { &:before { content: "\\e185"; } }\n.glyphicon-sd-video { &:before { content: "\\e186"; } }\n.glyphicon-hd-video { &:before { content: "\\e187"; } }\n.glyphicon-subtitles { &:before { content: "\\e188"; } }\n.glyphicon-sound-stereo { &:before { content: "\\e189"; } }\n.glyphicon-sound-dolby { &:before { content: "\\e190"; } }\n.glyphicon-sound-5-1 { &:before { content: "\\e191"; } }\n.glyphicon-sound-6-1 { &:before { content: "\\e192"; } }\n.glyphicon-sound-7-1 { &:before { content: "\\e193"; } }\n.glyphicon-copyright-mark { &:before { content: "\\e194"; } }\n.glyphicon-registration-mark { &:before { content: "\\e195"; } }\n.glyphicon-cloud-download { &:before { content: "\\e197"; } }\n.glyphicon-cloud-upload { &:before { content: "\\e198"; } }\n.glyphicon-tree-conifer { &:before { content: "\\e199"; } }\n.glyphicon-tree-deciduous { &:before { content: "\\e200"; } }\n.glyphicon-cd { &:before { content: "\\e201"; } }\n.glyphicon-save-file { &:before { content: "\\e202"; } }\n.glyphicon-open-file { &:before { content: "\\e203"; } }\n.glyphicon-level-up { &:before { content: "\\e204"; } }\n.glyphicon-copy { &:before { content: "\\e205"; } }\n.glyphicon-paste { &:before { content: "\\e206"; } }\n// The following 2 Glyphicons are omitted for the time being because\n// they currently use Unicode codepoints that are outside the\n// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can\'t handle\n// non-BMP codepoints in CSS string escapes, and thus can\'t display these two icons.\n// Notably, the bug affects some older versions of the Android Browser.\n// More info: https://github.com/twbs/bootstrap/issues/10106\n// .glyphicon-door { &:before { content: "\\1f6aa"; } }\n// .glyphicon-key { &:before { content: "\\1f511"; } }\n.glyphicon-alert { &:before { content: "\\e209"; } }\n.glyphicon-equalizer { &:before { content: "\\e210"; } }\n.glyphicon-king { &:before { content: "\\e211"; } }\n.glyphicon-queen { &:before { content: "\\e212"; } }\n.glyphicon-pawn { &:before { content: "\\e213"; } }\n.glyphicon-bishop { &:before { content: "\\e214"; } }\n.glyphicon-knight { &:before { content: "\\e215"; } }\n.glyphicon-baby-formula { &:before { content: "\\e216"; } }\n.glyphicon-tent { &:before { content: "\\26fa"; } }\n.glyphicon-blackboard { &:before { content: "\\e218"; } }\n.glyphicon-bed { &:before { content: "\\e219"; } }\n.glyphicon-apple { &:before { content: "\\f8ff"; } }\n.glyphicon-erase { &:before { content: "\\e221"; } }\n.glyphicon-hourglass { &:before { content: "\\231b"; } }\n.glyphicon-lamp { &:before { content: "\\e223"; } }\n.glyphicon-duplicate { &:before { content: "\\e224"; } }\n.glyphicon-piggy-bank { &:before { content: "\\e225"; } }\n.glyphicon-scissors { &:before { content: "\\e226"; } }\n.glyphicon-bitcoin { &:before { content: "\\e227"; } }\n.glyphicon-btc { &:before { content: "\\e227"; } }\n.glyphicon-xbt { &:before { content: "\\e227"; } }\n.glyphicon-yen { &:before { content: "\\00a5"; } }\n.glyphicon-jpy { &:before { content: "\\00a5"; } }\n.glyphicon-ruble { &:before { content: "\\20bd"; } }\n.glyphicon-rub { &:before { content: "\\20bd"; } }\n.glyphicon-scale { &:before { content: "\\e230"; } }\n.glyphicon-ice-lolly { &:before { content: "\\e231"; } }\n.glyphicon-ice-lolly-tasted { &:before { content: "\\e232"; } }\n.glyphicon-education { &:before { content: "\\e233"; } }\n.glyphicon-option-horizontal { &:before { content: "\\e234"; } }\n.glyphicon-option-vertical { &:before { content: "\\e235"; } }\n.glyphicon-menu-hamburger { &:before { content: "\\e236"; } }\n.glyphicon-modal-window { &:before { content: "\\e237"; } }\n.glyphicon-oil { &:before { content: "\\e238"; } }\n.glyphicon-grain { &:before { content: "\\e239"; } }\n.glyphicon-sunglasses { &:before { content: "\\e240"; } }\n.glyphicon-text-size { &:before { content: "\\e241"; } }\n.glyphicon-text-color { &:before { content: "\\e242"; } }\n.glyphicon-text-background { &:before { content: "\\e243"; } }\n.glyphicon-object-align-top { &:before { content: "\\e244"; } }\n.glyphicon-object-align-bottom { &:before { content: "\\e245"; } }\n.glyphicon-object-align-horizontal{ &:before { content: "\\e246"; } }\n.glyphicon-object-align-left { &:before { content: "\\e247"; } }\n.glyphicon-object-align-vertical { &:before { content: "\\e248"; } }\n.glyphicon-object-align-right { &:before { content: "\\e249"; } }\n.glyphicon-triangle-right { &:before { content: "\\e250"; } }\n.glyphicon-triangle-left { &:before { content: "\\e251"; } }\n.glyphicon-triangle-bottom { &:before { content: "\\e252"; } }\n.glyphicon-triangle-top { &:before { content: "\\e253"; } }\n.glyphicon-console { &:before { content: "\\e254"; } }\n.glyphicon-superscript { &:before { content: "\\e255"; } }\n.glyphicon-subscript { &:before { content: "\\e256"; } }\n.glyphicon-menu-left { &:before { content: "\\e257"; } }\n.glyphicon-menu-right { &:before { content: "\\e258"; } }\n.glyphicon-menu-down { &:before { content: "\\e259"; } }\n.glyphicon-menu-up { &:before { content: "\\e260"; } }\n',"grid.less":"//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","input-groups.less":'//\n// Input groups\n// --------------------------------------------------\n\n// Base styles\n// -------------------------\n.input-group {\n position: relative; // For dropdowns\n display: table;\n border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table\n\n // Undo padding and float of grid classes\n &[class*="col-"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n }\n\n .form-control {\n // Ensure that the input is always above the *appended* addon button for\n // proper border colors.\n position: relative;\n z-index: 2;\n\n // IE9 fubars the placeholder attribute in text inputs and the arrows on\n // select elements in input groups. To fix it, we float the input. Details:\n // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855\n float: left;\n\n width: 100%;\n margin-bottom: 0;\n }\n}\n\n// Sizing options\n//\n// Remix the default form control sizing classes into new ones for easier\n// manipulation.\n\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n .input-lg();\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n .input-sm();\n}\n\n\n// Display as table-cell\n// -------------------------\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n}\n// Addon and addon wrapper for buttons\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle; // Match the inputs\n}\n\n// Text input groups\n// -------------------------\n.input-group-addon {\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n font-weight: normal;\n line-height: 1;\n color: @input-color;\n text-align: center;\n background-color: @input-group-addon-bg;\n border: 1px solid @input-group-addon-border-color;\n border-radius: @border-radius-base;\n\n // Sizing\n &.input-sm {\n padding: @padding-small-vertical @padding-small-horizontal;\n font-size: @font-size-small;\n border-radius: @border-radius-small;\n }\n &.input-lg {\n padding: @padding-large-vertical @padding-large-horizontal;\n font-size: @font-size-large;\n border-radius: @border-radius-large;\n }\n\n // Nuke default margins from checkboxes and radios to vertically center within.\n input[type="radio"],\n input[type="checkbox"] {\n margin-top: 0;\n }\n}\n\n// Reset rounded corners\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n .border-right-radius(0);\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n .border-left-radius(0);\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n\n// Button input groups\n// -------------------------\n.input-group-btn {\n position: relative;\n // Jankily prevent input button groups from wrapping with `white-space` and\n // `font-size` in combination with `inline-block` on buttons.\n font-size: 0;\n white-space: nowrap;\n\n // Negative margin for spacing, position for bringing hovered/focused/actived\n // element above the siblings.\n > .btn {\n position: relative;\n + .btn {\n margin-left: -1px;\n }\n // Bring the "active" button to the front\n &:hover,\n &:focus,\n &:active {\n z-index: 2;\n }\n }\n\n // Negative margin to only have a 1px border between the two\n &:first-child {\n > .btn,\n > .btn-group {\n margin-right: -1px;\n }\n }\n &:last-child {\n > .btn,\n > .btn-group {\n z-index: 2;\n margin-left: -1px;\n }\n }\n}\n',"jumbotron.less":"//\n// Jumbotron\n// --------------------------------------------------\n\n\n.jumbotron {\n padding-top: @jumbotron-padding;\n padding-bottom: @jumbotron-padding;\n margin-bottom: @jumbotron-padding;\n color: @jumbotron-color;\n background-color: @jumbotron-bg;\n\n h1,\n .h1 {\n color: @jumbotron-heading-color;\n }\n\n p {\n margin-bottom: (@jumbotron-padding / 2);\n font-size: @jumbotron-font-size;\n font-weight: 200;\n }\n\n > hr {\n border-top-color: darken(@jumbotron-bg, 10%);\n }\n\n .container &,\n .container-fluid & {\n border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container\n }\n\n .container {\n max-width: 100%;\n }\n\n @media screen and (min-width: @screen-sm-min) {\n padding-top: (@jumbotron-padding * 1.6);\n padding-bottom: (@jumbotron-padding * 1.6);\n\n .container &,\n .container-fluid & {\n padding-left: (@jumbotron-padding * 2);\n padding-right: (@jumbotron-padding * 2);\n }\n\n h1,\n .h1 {\n font-size: @jumbotron-heading-font-size;\n }\n }\n}\n","labels.less":"//\n// Labels\n// --------------------------------------------------\n\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: @label-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n\n // Add hover effects, but only for links\n a& {\n &:hover,\n &:focus {\n color: @label-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Empty labels collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for labels in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n}\n\n// Colors\n// Contextual variations (linked labels get darker on :hover)\n\n.label-default {\n .label-variant(@label-default-bg);\n}\n\n.label-primary {\n .label-variant(@label-primary-bg);\n}\n\n.label-success {\n .label-variant(@label-success-bg);\n}\n\n.label-info {\n .label-variant(@label-info-bg);\n}\n\n.label-warning {\n .label-variant(@label-warning-bg);\n}\n\n.label-danger {\n .label-variant(@label-danger-bg);\n}\n","list-group.less":"//\n// List groups\n// --------------------------------------------------\n\n\n// Base class\n//\n// Easily usable on