@live-codes/browser-compilers 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/.editorconfig +17 -0
  2. package/.eslintignore +9 -0
  3. package/.eslintrc.js +198 -0
  4. package/.github/workflows/CI.yml +29 -0
  5. package/.prettierignore +3 -0
  6. package/.stylelintrc.json +11 -0
  7. package/CHANGELOG.md +0 -0
  8. package/LICENSE +21 -0
  9. package/README.md +10 -0
  10. package/package.json +90 -0
  11. package/scripts/vendors.js +308 -0
  12. package/tsconfig.eslint.json +12 -0
  13. package/tsconfig.json +49 -0
  14. package/vendor-licenses.md +71 -0
  15. package/vendor_modules/imports/autoprefixer.ts +3 -0
  16. package/vendor_modules/imports/babel-preset-solid.js +2 -0
  17. package/vendor_modules/imports/less.js +5 -0
  18. package/vendor_modules/imports/mdx.ts +2 -0
  19. package/vendor_modules/imports/monaco-editor.ts +1 -0
  20. package/vendor_modules/imports/postcss-preset-env.ts +3 -0
  21. package/vendor_modules/imports/postcss.ts +3 -0
  22. package/vendor_modules/imports/react-native-web.js +32 -0
  23. package/vendor_modules/imports/typescript.js +1 -0
  24. package/vendor_modules/imports/wast-refmt.ts +3 -0
  25. package/vendor_modules/src/asciidoctor.css/asciidoctor.css +407 -0
  26. package/vendor_modules/src/asciidoctor.css/readme.md +1 -0
  27. package/vendor_modules/src/clientside-haml-js/haml.js +22 -0
  28. package/vendor_modules/src/clientside-haml-js/readme.md +4 -0
  29. package/vendor_modules/src/coffeescript/coffeescript.js +8 -0
  30. package/vendor_modules/src/coffeescript/readme.md +1 -0
  31. package/vendor_modules/src/jszip/jszip.js +17 -0
  32. package/vendor_modules/src/jszip/readme.md +1 -0
  33. package/vendor_modules/src/livescript/livescript-min.js +1646 -0
  34. package/vendor_modules/src/livescript/prelude-browser-min.js +18 -0
  35. package/vendor_modules/src/livescript/readme.md +3 -0
  36. package/vendor_modules/src/perlito/perlito5.js +30663 -0
  37. package/vendor_modules/src/perlito/readme.md +1 -0
  38. package/vendor_modules/src/pug/pug.min.js +104 -0
  39. package/vendor_modules/src/stylus/stylus.min.js +6 -0
  40. package/vendor_modules/src/svelte/compiler.js +31611 -0
  41. package/vendor_modules/src/svelte/readme.md +1 -0
  42. package/vendor_modules/src/tailwindcss/tailwindcss.js +203 -0
  43. package/vendor_modules/src/typescript/typescriptServices.js +156785 -0
  44. package/vendor_modules/types/assemblyscript.d.ts +2304 -0
  45. package/vendor_modules/types/solid-js.d.ts +4304 -0
  46. package/vendor_modules/types/stencil-core.d.ts +6040 -0
@@ -0,0 +1,407 @@
1
+ /* Asciidoctor default stylesheet | MIT License | https://asciidoctor.org */
2
+ /* Remove comment around @import statement below when using as a custom stylesheet */
3
+ /*@import url("//fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700");*/
4
+ article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}
5
+ audio,canvas,video{display:inline-block}
6
+ audio:not([controls]){display:none;height:0}
7
+ [hidden],template{display:none}
8
+ script{display:none!important}
9
+ html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}
10
+ body{margin:0}
11
+ a{background:transparent}
12
+ a:focus{outline:thin dotted}
13
+ a:active,a:hover{outline:0}
14
+ h1{font-size:2em;margin:.67em 0}
15
+ abbr[title]{border-bottom:1px dotted}
16
+ b,strong{font-weight:bold}
17
+ dfn{font-style:italic}
18
+ hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}
19
+ mark{background:#ff0;color:#000}
20
+ code,kbd,pre,samp{font-family:monospace;font-size:1em}
21
+ pre{white-space:pre-wrap}
22
+ q{quotes:"\201C" "\201D" "\2018" "\2019"}
23
+ small{font-size:80%}
24
+ sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
25
+ sup{top:-.5em}
26
+ sub{bottom:-.25em}
27
+ img{border:0}
28
+ svg:not(:root){overflow:hidden}
29
+ figure{margin:0}
30
+ fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
31
+ legend{border:0;padding:0}
32
+ button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}
33
+ button,input{line-height:normal}
34
+ button,select{text-transform:none}
35
+ button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}
36
+ button[disabled],html input[disabled]{cursor:default}
37
+ input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}
38
+ input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}
39
+ input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}
40
+ button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
41
+ textarea{overflow:auto;vertical-align:top}
42
+ table{border-collapse:collapse;border-spacing:0}
43
+ *,*:before,*:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}
44
+ html,body{font-size:100%}
45
+ body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto}
46
+ a:hover{cursor:pointer}
47
+ img,object,embed{max-width:100%;height:auto}
48
+ object,embed{height:100%}
49
+ img{-ms-interpolation-mode:bicubic}
50
+ .left{float:left!important}
51
+ .right{float:right!important}
52
+ .text-left{text-align:left!important}
53
+ .text-right{text-align:right!important}
54
+ .text-center{text-align:center!important}
55
+ .text-justify{text-align:justify!important}
56
+ .hide{display:none}
57
+ body{-webkit-font-smoothing:antialiased}
58
+ img,object,svg{display:inline-block;vertical-align:middle}
59
+ textarea{height:auto;min-height:50px}
60
+ select{width:100%}
61
+ .center{margin-left:auto;margin-right:auto}
62
+ .spread{width:100%}
63
+ p.lead,.paragraph.lead>p,#preamble>.sectionbody>.paragraph:first-of-type p{font-size:1.21875em;line-height:1.6}
64
+ .subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}
65
+ div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;direction:ltr}
66
+ a{color:#2156a5;text-decoration:underline;line-height:inherit}
67
+ a:hover,a:focus{color:#1d4b8f}
68
+ a img{border:none}
69
+ p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}
70
+ p aside{font-size:.875em;line-height:1.35;font-style:italic}
71
+ h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open Sans","DejaVu Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}
72
+ h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0}
73
+ h1{font-size:2.125em}
74
+ h2{font-size:1.6875em}
75
+ h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em}
76
+ h4,h5{font-size:1.125em}
77
+ h6{font-size:1em}
78
+ hr{border:solid #ddddd8;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}
79
+ em,i{font-style:italic;line-height:inherit}
80
+ strong,b{font-weight:bold;line-height:inherit}
81
+ small{font-size:60%;line-height:inherit}
82
+ code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)}
83
+ ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}
84
+ ul,ol,ul.no-bullet,ol.no-bullet{margin-left:1.5em}
85
+ ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em}
86
+ ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit}
87
+ ul.square{list-style-type:square}
88
+ ul.circle{list-style-type:circle}
89
+ ul.disc{list-style-type:disc}
90
+ ul.no-bullet{list-style:none}
91
+ ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}
92
+ dl dt{margin-bottom:.3125em;font-weight:bold}
93
+ dl dd{margin-bottom:1.25em}
94
+ abbr,acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}
95
+ abbr{text-transform:none}
96
+ blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}
97
+ blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}
98
+ blockquote cite:before{content:"\2014 \0020"}
99
+ blockquote cite a,blockquote cite a:visited{color:rgba(0,0,0,.6)}
100
+ blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}
101
+ @media only screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2}
102
+ h1{font-size:2.75em}
103
+ h2{font-size:2.3125em}
104
+ h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em}
105
+ h4{font-size:1.4375em}}
106
+ table{background:#fff;margin-bottom:1.25em;border:solid 1px #dedede}
107
+ table thead,table tfoot{background:#f7f8f7;font-weight:bold}
108
+ table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}
109
+ table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}
110
+ table tr.even,table tr.alt,table tr:nth-of-type(even){background:#f8f8f7}
111
+ table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;line-height:1.6}
112
+ body{tab-size:4}
113
+ h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em}
114
+ h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400}
115
+ .clearfix:before,.clearfix:after,.float-group:before,.float-group:after{content:" ";display:table}
116
+ .clearfix:after,.float-group:after{clear:both}
117
+ *:not(pre)>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background-color:#f7f7f8;-webkit-border-radius:4px;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed}
118
+ pre,pre>code{line-height:1.45;color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;text-rendering:optimizeSpeed}
119
+ .keyseq{color:rgba(51,51,51,.8)}
120
+ kbd{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background-color:#f7f7f7;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em white inset;box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em #fff inset;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}
121
+ .keyseq kbd:first-child{margin-left:0}
122
+ .keyseq kbd:last-child{margin-right:0}
123
+ .menuseq,.menu{color:rgba(0,0,0,.8)}
124
+ b.button:before,b.button:after{position:relative;top:-1px;font-weight:400}
125
+ b.button:before{content:"[";padding:0 3px 0 2px}
126
+ b.button:after{content:"]";padding:0 2px 0 3px}
127
+ p a>code:hover{color:rgba(0,0,0,.9)}
128
+ #header,#content,#footnotes,#footer{width:100%;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}
129
+ #header:before,#header:after,#content:before,#content:after,#footnotes:before,#footnotes:after,#footer:before,#footer:after{content:" ";display:table}
130
+ #header:after,#content:after,#footnotes:after,#footer:after{clear:both}
131
+ #content{margin-top:1.25em}
132
+ #content:before{content:none}
133
+ #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}
134
+ #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #ddddd8}
135
+ #header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #ddddd8;padding-bottom:8px}
136
+ #header .details{border-bottom:1px solid #ddddd8;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap}
137
+ #header .details span:first-child{margin-left:-.125em}
138
+ #header .details span.email a{color:rgba(0,0,0,.85)}
139
+ #header .details br{display:none}
140
+ #header .details br+span:before{content:"\00a0\2013\00a0"}
141
+ #header .details br+span.author:before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)}
142
+ #header .details br+span#revremark:before{content:"\00a0|\00a0"}
143
+ #header #revnumber{text-transform:capitalize}
144
+ #header #revnumber:after{content:"\00a0"}
145
+ #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #ddddd8;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}
146
+ #toc{border-bottom:1px solid #efefed;padding-bottom:.5em}
147
+ #toc>ul{margin-left:.125em}
148
+ #toc ul.sectlevel0>li>a{font-style:italic}
149
+ #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}
150
+ #toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none}
151
+ #toc li{line-height:1.3334;margin-top:.3334em}
152
+ #toc a{text-decoration:none}
153
+ #toc a:active{text-decoration:underline}
154
+ #toctitle{color:#7a2518;font-size:1.2em}
155
+ @media only screen and (min-width:768px){#toctitle{font-size:1.375em}
156
+ body.toc2{padding-left:15em;padding-right:0}
157
+ #toc.toc2{margin-top:0!important;background-color:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}
158
+ #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}
159
+ #toc.toc2>ul{font-size:.9em;margin-bottom:0}
160
+ #toc.toc2 ul ul{margin-left:0;padding-left:1em}
161
+ #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}
162
+ body.toc2.toc-right{padding-left:0;padding-right:15em}
163
+ body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #efefed;left:auto;right:0}}
164
+ @media only screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0}
165
+ #toc.toc2{width:20em}
166
+ #toc.toc2 #toctitle{font-size:1.375em}
167
+ #toc.toc2>ul{font-size:.95em}
168
+ #toc.toc2 ul ul{padding-left:1.25em}
169
+ body.toc2.toc-right{padding-left:0;padding-right:20em}}
170
+ #content #toc{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px}
171
+ #content #toc>:first-child{margin-top:0}
172
+ #content #toc>:last-child{margin-bottom:0}
173
+ #footer{max-width:100%;background-color:rgba(0,0,0,.8);padding:1.25em}
174
+ #footer-text{color:rgba(255,255,255,.8);line-height:1.44}
175
+ .sect1{padding-bottom:.625em}
176
+ @media only screen and (min-width:768px){.sect1{padding-bottom:1.25em}}
177
+ .sect1+.sect1{border-top:1px solid #efefed}
178
+ #content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}
179
+ #content h1>a.anchor:before,h2>a.anchor:before,h3>a.anchor:before,#toctitle>a.anchor:before,.sidebarblock>.content>.title>a.anchor:before,h4>a.anchor:before,h5>a.anchor:before,h6>a.anchor:before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em}
180
+ #content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible}
181
+ #content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none}
182
+ #content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221}
183
+ .audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}
184
+ .admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}
185
+ table.tableblock>caption.title{white-space:nowrap;overflow:visible;max-width:0}
186
+ .paragraph.lead>p,#preamble>.sectionbody>.paragraph:first-of-type p{color:rgba(0,0,0,.85)}
187
+ table.tableblock #preamble>.sectionbody>.paragraph:first-of-type p{font-size:inherit}
188
+ .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}
189
+ .admonitionblock>table td.icon{text-align:center;width:80px}
190
+ .admonitionblock>table td.icon img{max-width:none}
191
+ .admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase}
192
+ .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #ddddd8;color:rgba(0,0,0,.6)}
193
+ .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}
194
+ .exampleblock>.content{border-style:solid;border-width:1px;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;-webkit-border-radius:4px;border-radius:4px}
195
+ .exampleblock>.content>:first-child{margin-top:0}
196
+ .exampleblock>.content>:last-child{margin-bottom:0}
197
+ .sidebarblock{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px}
198
+ .sidebarblock>:first-child{margin-top:0}
199
+ .sidebarblock>:last-child{margin-bottom:0}
200
+ .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}
201
+ .exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0}
202
+ .literalblock pre,.listingblock pre:not(.highlight),.listingblock pre[class="highlight"],.listingblock pre[class^="highlight "],.listingblock pre.CodeRay,.listingblock pre.prettyprint{background:#f7f7f8}
203
+ .sidebarblock .literalblock pre,.sidebarblock .listingblock pre:not(.highlight),.sidebarblock .listingblock pre[class="highlight"],.sidebarblock .listingblock pre[class^="highlight "],.sidebarblock .listingblock pre.CodeRay,.sidebarblock .listingblock pre.prettyprint{background:#f2f1f1}
204
+ .literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{-webkit-border-radius:4px;border-radius:4px;word-wrap:break-word;padding:1em;font-size:.8125em}
205
+ .literalblock pre.nowrap,.literalblock pre[class].nowrap,.listingblock pre.nowrap,.listingblock pre[class].nowrap{overflow-x:auto;white-space:pre;word-wrap:normal}
206
+ @media only screen and (min-width:768px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:.90625em}}
207
+ @media only screen and (min-width:1280px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:1em}}
208
+ .literalblock.output pre{color:#f7f7f8;background-color:rgba(0,0,0,.9)}
209
+ .listingblock pre.highlightjs{padding:0}
210
+ .listingblock pre.highlightjs>code{padding:1em;-webkit-border-radius:4px;border-radius:4px}
211
+ .listingblock pre.prettyprint{border-width:0}
212
+ .listingblock>.content{position:relative}
213
+ .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:#999}
214
+ .listingblock:hover code[data-lang]:before{display:block}
215
+ .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:#999}
216
+ .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}
217
+ table.pyhltable{border-collapse:separate;border:0;margin-bottom:0;background:none}
218
+ table.pyhltable td{vertical-align:top;padding-top:0;padding-bottom:0;line-height:1.45}
219
+ table.pyhltable td.code{padding-left:.75em;padding-right:0}
220
+ pre.pygments .lineno,table.pyhltable td:not(.code){color:#999;padding-left:0;padding-right:.5em;border-right:1px solid #ddddd8}
221
+ pre.pygments .lineno{display:inline-block;margin-right:.25em}
222
+ table.pyhltable .linenodiv{background:none!important;padding-right:0!important}
223
+ .quoteblock{margin:0 1em 1.25em 1.5em;display:table}
224
+ .quoteblock>.title{margin-left:-1.5em;margin-bottom:.75em}
225
+ .quoteblock blockquote,.quoteblock blockquote p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}
226
+ .quoteblock blockquote{margin:0;padding:0;border:0}
227
+ .quoteblock blockquote:before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}
228
+ .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}
229
+ .quoteblock .attribution{margin-top:.5em;margin-right:.5ex;text-align:right}
230
+ .quoteblock .quoteblock{margin-left:0;margin-right:0;padding:.5em 0;border-left:3px solid rgba(0,0,0,.6)}
231
+ .quoteblock .quoteblock blockquote{padding:0 0 0 .75em}
232
+ .quoteblock .quoteblock blockquote:before{display:none}
233
+ .verseblock{margin:0 1em 1.25em 1em}
234
+ .verseblock pre{font-family:"Open Sans","DejaVu Sans",sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}
235
+ .verseblock pre strong{font-weight:400}
236
+ .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}
237
+ .quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}
238
+ .quoteblock .attribution br,.verseblock .attribution br{display:none}
239
+ .quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}
240
+ .quoteblock.abstract{margin:0 0 1.25em 0;display:block}
241
+ .quoteblock.abstract blockquote,.quoteblock.abstract blockquote p{text-align:left;word-spacing:0}
242
+ .quoteblock.abstract blockquote:before,.quoteblock.abstract blockquote p:first-of-type:before{display:none}
243
+ table.tableblock{max-width:100%;border-collapse:separate}
244
+ table.tableblock td>.paragraph:last-child p>p:last-child,table.tableblock th>p:last-child,table.tableblock td>p:last-child{margin-bottom:0}
245
+ table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede}
246
+ table.grid-all th.tableblock,table.grid-all td.tableblock{border-width:0 1px 1px 0}
247
+ table.grid-all tfoot>tr>th.tableblock,table.grid-all tfoot>tr>td.tableblock{border-width:1px 1px 0 0}
248
+ table.grid-cols th.tableblock,table.grid-cols td.tableblock{border-width:0 1px 0 0}
249
+ table.grid-all *>tr>.tableblock:last-child,table.grid-cols *>tr>.tableblock:last-child{border-right-width:0}
250
+ table.grid-rows th.tableblock,table.grid-rows td.tableblock{border-width:0 0 1px 0}
251
+ table.grid-all tbody>tr:last-child>th.tableblock,table.grid-all tbody>tr:last-child>td.tableblock,table.grid-all thead:last-child>tr>th.tableblock,table.grid-rows tbody>tr:last-child>th.tableblock,table.grid-rows tbody>tr:last-child>td.tableblock,table.grid-rows thead:last-child>tr>th.tableblock{border-bottom-width:0}
252
+ table.grid-rows tfoot>tr>th.tableblock,table.grid-rows tfoot>tr>td.tableblock{border-width:1px 0 0 0}
253
+ table.frame-all{border-width:1px}
254
+ table.frame-sides{border-width:0 1px}
255
+ table.frame-topbot{border-width:1px 0}
256
+ th.halign-left,td.halign-left{text-align:left}
257
+ th.halign-right,td.halign-right{text-align:right}
258
+ th.halign-center,td.halign-center{text-align:center}
259
+ th.valign-top,td.valign-top{vertical-align:top}
260
+ th.valign-bottom,td.valign-bottom{vertical-align:bottom}
261
+ th.valign-middle,td.valign-middle{vertical-align:middle}
262
+ table thead th,table tfoot th{font-weight:bold}
263
+ tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}
264
+ tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold}
265
+ p.tableblock>code:only-child{background:none;padding:0}
266
+ p.tableblock{font-size:1em}
267
+ td>div.verse{white-space:pre}
268
+ ol{margin-left:1.75em}
269
+ ul li ol{margin-left:1.5em}
270
+ dl dd{margin-left:1.125em}
271
+ dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}
272
+ ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em}
273
+ ul.unstyled,ol.unnumbered,ul.checklist,ul.none{list-style-type:none}
274
+ ul.unstyled,ol.unnumbered,ul.checklist{margin-left:.625em}
275
+ ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist li>p:first-child>.fa-check-square-o:first-child{width:1em;font-size:.85em}
276
+ ul.checklist li>p:first-child>input[type="checkbox"]:first-child{width:1em;position:relative;top:1px}
277
+ ul.inline{margin:0 auto .625em auto;margin-left:-1.375em;margin-right:0;padding:0;list-style:none;overflow:hidden}
278
+ ul.inline>li{list-style:none;float:left;margin-left:1.375em;display:block}
279
+ ul.inline>li>*{display:block}
280
+ .unstyled dl dt{font-weight:400;font-style:normal}
281
+ ol.arabic{list-style-type:decimal}
282
+ ol.decimal{list-style-type:decimal-leading-zero}
283
+ ol.loweralpha{list-style-type:lower-alpha}
284
+ ol.upperalpha{list-style-type:upper-alpha}
285
+ ol.lowerroman{list-style-type:lower-roman}
286
+ ol.upperroman{list-style-type:upper-roman}
287
+ ol.lowergreek{list-style-type:lower-greek}
288
+ .hdlist>table,.colist>table{border:0;background:none}
289
+ .hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none}
290
+ td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em}
291
+ td.hdlist1{font-weight:bold;padding-bottom:1.25em}
292
+ .literalblock+.colist,.listingblock+.colist{margin-top:-.5em}
293
+ .colist>table tr>td:first-of-type{padding:0 .75em;line-height:1}
294
+ .colist>table tr>td:last-of-type{padding:.25em 0}
295
+ .thumb,.th{line-height:0;display:inline-block;border:solid 4px #fff;-webkit-box-shadow:0 0 0 1px #ddd;box-shadow:0 0 0 1px #ddd}
296
+ .imageblock.left,.imageblock[style*="float: left"]{margin:.25em .625em 1.25em 0}
297
+ .imageblock.right,.imageblock[style*="float: right"]{margin:.25em 0 1.25em .625em}
298
+ .imageblock>.title{margin-bottom:0}
299
+ .imageblock.thumb,.imageblock.th{border-width:6px}
300
+ .imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em}
301
+ .image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}
302
+ .image.left{margin-right:.625em}
303
+ .image.right{margin-left:.625em}
304
+ a.image{text-decoration:none;display:inline-block}
305
+ a.image object{pointer-events:none}
306
+ sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super}
307
+ sup.footnote a,sup.footnoteref a{text-decoration:none}
308
+ sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline}
309
+ #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}
310
+ #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em 0;border-width:1px 0 0 0}
311
+ #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;text-indent:-1.05em;margin-bottom:.2em}
312
+ #footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none}
313
+ #footnotes .footnote:last-of-type{margin-bottom:0}
314
+ #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}
315
+ .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}
316
+ .gist .file-data>table td.line-data{width:99%}
317
+ div.unbreakable{page-break-inside:avoid}
318
+ .big{font-size:larger}
319
+ .small{font-size:smaller}
320
+ .underline{text-decoration:underline}
321
+ .overline{text-decoration:overline}
322
+ .line-through{text-decoration:line-through}
323
+ .aqua{color:#00bfbf}
324
+ .aqua-background{background-color:#00fafa}
325
+ .black{color:#000}
326
+ .black-background{background-color:#000}
327
+ .blue{color:#0000bf}
328
+ .blue-background{background-color:#0000fa}
329
+ .fuchsia{color:#bf00bf}
330
+ .fuchsia-background{background-color:#fa00fa}
331
+ .gray{color:#606060}
332
+ .gray-background{background-color:#7d7d7d}
333
+ .green{color:#006000}
334
+ .green-background{background-color:#007d00}
335
+ .lime{color:#00bf00}
336
+ .lime-background{background-color:#00fa00}
337
+ .maroon{color:#600000}
338
+ .maroon-background{background-color:#7d0000}
339
+ .navy{color:#000060}
340
+ .navy-background{background-color:#00007d}
341
+ .olive{color:#606000}
342
+ .olive-background{background-color:#7d7d00}
343
+ .purple{color:#600060}
344
+ .purple-background{background-color:#7d007d}
345
+ .red{color:#bf0000}
346
+ .red-background{background-color:#fa0000}
347
+ .silver{color:#909090}
348
+ .silver-background{background-color:#bcbcbc}
349
+ .teal{color:#006060}
350
+ .teal-background{background-color:#007d7d}
351
+ .white{color:#bfbfbf}
352
+ .white-background{background-color:#fafafa}
353
+ .yellow{color:#bfbf00}
354
+ .yellow-background{background-color:#fafa00}
355
+ span.icon>.fa{cursor:default}
356
+ .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}
357
+ .admonitionblock td.icon .icon-note:before{content:"\f05a";color:#19407c}
358
+ .admonitionblock td.icon .icon-tip:before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}
359
+ .admonitionblock td.icon .icon-warning:before{content:"\f071";color:#bf6900}
360
+ .admonitionblock td.icon .icon-caution:before{content:"\f06d";color:#bf3400}
361
+ .admonitionblock td.icon .icon-important:before{content:"\f06a";color:#bf0000}
362
+ .conum[data-value]{display:inline-block;color:#fff!important;background-color:rgba(0,0,0,.8);-webkit-border-radius:100px;border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold}
363
+ .conum[data-value] *{color:#fff!important}
364
+ .conum[data-value]+b{display:none}
365
+ .conum[data-value]:after{content:attr(data-value)}
366
+ pre .conum[data-value]{position:relative;top:-.125em}
367
+ b.conum *{color:inherit!important}
368
+ .conum:not([data-value]):empty{display:none}
369
+ dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility}
370
+ h1,h2,p,td.content,span.alt{letter-spacing:-.01em}
371
+ p strong,td.content strong,div.footnote strong{letter-spacing:-.005em}
372
+ p,blockquote,dt,td.content,span.alt{font-size:1.0625rem}
373
+ p{margin-bottom:1.25rem}
374
+ .sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em}
375
+ .exampleblock>.content{background-color:#fffef7;border-color:#e0e0dc;-webkit-box-shadow:0 1px 4px #e0e0dc;box-shadow:0 1px 4px #e0e0dc}
376
+ .print-only{display:none!important}
377
+ @media print{@page{margin:1.25cm .75cm}
378
+ *{-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important}
379
+ a{color:inherit!important;text-decoration:underline!important}
380
+ a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important}
381
+ a[href^=";http:"]:not(.bare):after,a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}
382
+ abbr[title]:after{content:" (" attr(title) ")"}
383
+ pre,blockquote,tr,img,object,svg{page-break-inside:avoid}
384
+ thead{display:table-header-group}
385
+ svg{max-width:100%}
386
+ p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3}
387
+ h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid}
388
+ #toc,.sidebarblock,.exampleblock>.content{background:none!important}
389
+ #toc{border-bottom:1px solid #ddddd8!important;padding-bottom:0!important}
390
+ .sect1{padding-bottom:0!important}
391
+ .sect1+.sect1{border:0!important}
392
+ #header>h1:first-child{margin-top:1.25rem}
393
+ body.book #header{text-align:center}
394
+ body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em 0}
395
+ body.book #header .details{border:0!important;display:block;padding:0!important}
396
+ body.book #header .details span:first-child{margin-left:0!important}
397
+ body.book #header .details br{display:block}
398
+ body.book #header .details br+span:before{content:none!important}
399
+ body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}
400
+ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always}
401
+ .listingblock code[data-lang]:before{display:block}
402
+ #footer{background:none!important;padding:0 .9375em}
403
+ #footer-text{color:rgba(0,0,0,.6)!important;font-size:.9em}
404
+ .hide-on-print{display:none!important}
405
+ .print-only{display:block!important}
406
+ .hide-for-print{display:none!important}
407
+ .show-for-print{display:inherit!important}}
@@ -0,0 +1 @@
1
+ from https://github.com/darshandsoni/asciidoctor-skins
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Minified by jsDelivr using Terser v5.3.5.
3
+ * Original file: /npm/underscore@1.13.1/underscore-umd.js
4
+ *
5
+ * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
6
+ */
7
+ !function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define("underscore",r):(n="undefined"!=typeof globalThis?globalThis:n||self,function(){var t=n._,e=n._=r();e.noConflict=function(){return n._=t,e}}())}(this,(function(){var n="1.13.1",r="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},t=Array.prototype,e=Object.prototype,u="undefined"!=typeof Symbol?Symbol.prototype:null,o=t.push,i=t.slice,a=e.toString,f=e.hasOwnProperty,c="undefined"!=typeof ArrayBuffer,l="undefined"!=typeof DataView,s=Array.isArray,p=Object.keys,v=Object.create,h=c&&ArrayBuffer.isView,y=isNaN,d=isFinite,g=!{toString:null}.propertyIsEnumerable("toString"),b=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],m=Math.pow(2,53)-1;function j(n,r){return r=null==r?n.length-1:+r,function(){for(var t=Math.max(arguments.length-r,0),e=Array(t),u=0;u<t;u++)e[u]=arguments[u+r];switch(r){case 0:return n.call(this,e);case 1:return n.call(this,arguments[0],e);case 2:return n.call(this,arguments[0],arguments[1],e)}var o=Array(r+1);for(u=0;u<r;u++)o[u]=arguments[u];return o[r]=e,n.apply(this,o)}}function _(n){var r=typeof n;return"function"===r||"object"===r&&!!n}function w(n){return void 0===n}function A(n){return!0===n||!1===n||"[object Boolean]"===a.call(n)}function x(n){var r="[object "+n+"]";return function(n){return a.call(n)===r}}var S=x("String"),O=x("Number"),M=x("Date"),E=x("RegExp"),B=x("Error"),N=x("Symbol"),I=x("ArrayBuffer"),T=x("Function"),k=r.document&&r.document.childNodes;"function"!=typeof/./&&"object"!=typeof Int8Array&&"function"!=typeof k&&(T=function(n){return"function"==typeof n||!1});var D=T,R=x("Object"),F=l&&R(new DataView(new ArrayBuffer(8))),V="undefined"!=typeof Map&&R(new Map),P=x("DataView");var q=F?function(n){return null!=n&&D(n.getInt8)&&I(n.buffer)}:P,U=s||x("Array");function W(n,r){return null!=n&&f.call(n,r)}var z=x("Arguments");!function(){z(arguments)||(z=function(n){return W(n,"callee")})}();var L=z;function $(n){return O(n)&&y(n)}function C(n){return function(){return n}}function K(n){return function(r){var t=n(r);return"number"==typeof t&&t>=0&&t<=m}}function J(n){return function(r){return null==r?void 0:r[n]}}var G=J("byteLength"),H=K(G),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var X=c?function(n){return h?h(n)&&!q(n):H(n)&&Q.test(a.call(n))}:C(!1),Y=J("length");function Z(n,r){r=function(n){for(var r={},t=n.length,e=0;e<t;++e)r[n[e]]=!0;return{contains:function(n){return r[n]},push:function(t){return r[t]=!0,n.push(t)}}}(r);var t=b.length,u=n.constructor,o=D(u)&&u.prototype||e,i="constructor";for(W(n,i)&&!r.contains(i)&&r.push(i);t--;)(i=b[t])in n&&n[i]!==o[i]&&!r.contains(i)&&r.push(i)}function nn(n){if(!_(n))return[];if(p)return p(n);var r=[];for(var t in n)W(n,t)&&r.push(t);return g&&Z(n,r),r}function rn(n,r){var t=nn(r),e=t.length;if(null==n)return!e;for(var u=Object(n),o=0;o<e;o++){var i=t[o];if(r[i]!==u[i]||!(i in u))return!1}return!0}function tn(n){return n instanceof tn?n:this instanceof tn?void(this._wrapped=n):new tn(n)}function en(n){return new Uint8Array(n.buffer||n,n.byteOffset||0,G(n))}tn.VERSION=n,tn.prototype.value=function(){return this._wrapped},tn.prototype.valueOf=tn.prototype.toJSON=tn.prototype.value,tn.prototype.toString=function(){return String(this._wrapped)};var un="[object DataView]";function on(n,r,t,e){if(n===r)return 0!==n||1/n==1/r;if(null==n||null==r)return!1;if(n!=n)return r!=r;var u=typeof n;return("function"===u||"object"===u||"object"==typeof r)&&an(n,r,t,e)}function an(n,r,t,e){n instanceof tn&&(n=n._wrapped),r instanceof tn&&(r=r._wrapped);var o=a.call(n);if(o!==a.call(r))return!1;if(F&&"[object Object]"==o&&q(n)){if(!q(r))return!1;o=un}switch(o){case"[object RegExp]":case"[object String]":return""+n==""+r;case"[object Number]":return+n!=+n?+r!=+r:0==+n?1/+n==1/r:+n==+r;case"[object Date]":case"[object Boolean]":return+n==+r;case"[object Symbol]":return u.valueOf.call(n)===u.valueOf.call(r);case"[object ArrayBuffer]":case un:return an(en(n),en(r),t,e)}var i="[object Array]"===o;if(!i&&X(n)){if(G(n)!==G(r))return!1;if(n.buffer===r.buffer&&n.byteOffset===r.byteOffset)return!0;i=!0}if(!i){if("object"!=typeof n||"object"!=typeof r)return!1;var f=n.constructor,c=r.constructor;if(f!==c&&!(D(f)&&f instanceof f&&D(c)&&c instanceof c)&&"constructor"in n&&"constructor"in r)return!1}e=e||[];for(var l=(t=t||[]).length;l--;)if(t[l]===n)return e[l]===r;if(t.push(n),e.push(r),i){if((l=n.length)!==r.length)return!1;for(;l--;)if(!on(n[l],r[l],t,e))return!1}else{var s,p=nn(n);if(l=p.length,nn(r).length!==l)return!1;for(;l--;)if(!W(r,s=p[l])||!on(n[s],r[s],t,e))return!1}return t.pop(),e.pop(),!0}function fn(n){if(!_(n))return[];var r=[];for(var t in n)r.push(t);return g&&Z(n,r),r}function cn(n){var r=Y(n);return function(t){if(null==t)return!1;var e=fn(t);if(Y(e))return!1;for(var u=0;u<r;u++)if(!D(t[n[u]]))return!1;return n!==hn||!D(t[ln])}}var ln="forEach",sn=["clear","delete"],pn=["get","has","set"],vn=sn.concat(ln,pn),hn=sn.concat(pn),yn=["add"].concat(sn,ln,"has"),dn=V?cn(vn):x("Map"),gn=V?cn(hn):x("WeakMap"),bn=V?cn(yn):x("Set"),mn=x("WeakSet");function jn(n){for(var r=nn(n),t=r.length,e=Array(t),u=0;u<t;u++)e[u]=n[r[u]];return e}function _n(n){for(var r={},t=nn(n),e=0,u=t.length;e<u;e++)r[n[t[e]]]=t[e];return r}function wn(n){var r=[];for(var t in n)D(n[t])&&r.push(t);return r.sort()}function An(n,r){return function(t){var e=arguments.length;if(r&&(t=Object(t)),e<2||null==t)return t;for(var u=1;u<e;u++)for(var o=arguments[u],i=n(o),a=i.length,f=0;f<a;f++){var c=i[f];r&&void 0!==t[c]||(t[c]=o[c])}return t}}var xn=An(fn),Sn=An(nn),On=An(fn,!0);function Mn(n){if(!_(n))return{};if(v)return v(n);var r=function(){};r.prototype=n;var t=new r;return r.prototype=null,t}function En(n){return _(n)?U(n)?n.slice():xn({},n):n}function Bn(n){return U(n)?n:[n]}function Nn(n){return tn.toPath(n)}function In(n,r){for(var t=r.length,e=0;e<t;e++){if(null==n)return;n=n[r[e]]}return t?n:void 0}function Tn(n,r,t){var e=In(n,Nn(r));return w(e)?t:e}function kn(n){return n}function Dn(n){return n=Sn({},n),function(r){return rn(r,n)}}function Rn(n){return n=Nn(n),function(r){return In(r,n)}}function Fn(n,r,t){if(void 0===r)return n;switch(null==t?3:t){case 1:return function(t){return n.call(r,t)};case 3:return function(t,e,u){return n.call(r,t,e,u)};case 4:return function(t,e,u,o){return n.call(r,t,e,u,o)}}return function(){return n.apply(r,arguments)}}function Vn(n,r,t){return null==n?kn:D(n)?Fn(n,r,t):_(n)&&!U(n)?Dn(n):Rn(n)}function Pn(n,r){return Vn(n,r,1/0)}function qn(n,r,t){return tn.iteratee!==Pn?tn.iteratee(n,r):Vn(n,r,t)}function Un(){}function Wn(n,r){return null==r&&(r=n,n=0),n+Math.floor(Math.random()*(r-n+1))}tn.toPath=Bn,tn.iteratee=Pn;var zn=Date.now||function(){return(new Date).getTime()};function Ln(n){var r=function(r){return n[r]},t="(?:"+nn(n).join("|")+")",e=RegExp(t),u=RegExp(t,"g");return function(n){return n=null==n?"":""+n,e.test(n)?n.replace(u,r):n}}var $n={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},Cn=Ln($n),Kn=Ln(_n($n)),Jn=tn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Gn=/(.)^/,Hn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Qn=/\\|'|\r|\n|\u2028|\u2029/g;function Xn(n){return"\\"+Hn[n]}var Yn=/^\s*(\w|\$)+\s*$/;var Zn=0;function nr(n,r,t,e,u){if(!(e instanceof r))return n.apply(t,u);var o=Mn(n.prototype),i=n.apply(o,u);return _(i)?i:o}var rr=j((function(n,r){var t=rr.placeholder,e=function(){for(var u=0,o=r.length,i=Array(o),a=0;a<o;a++)i[a]=r[a]===t?arguments[u++]:r[a];for(;u<arguments.length;)i.push(arguments[u++]);return nr(n,e,this,this,i)};return e}));rr.placeholder=tn;var tr=j((function(n,r,t){if(!D(n))throw new TypeError("Bind must be called on a function");var e=j((function(u){return nr(n,e,r,this,t.concat(u))}));return e})),er=K(Y);function ur(n,r,t,e){if(e=e||[],r||0===r){if(r<=0)return e.concat(n)}else r=1/0;for(var u=e.length,o=0,i=Y(n);o<i;o++){var a=n[o];if(er(a)&&(U(a)||L(a)))if(r>1)ur(a,r-1,t,e),u=e.length;else for(var f=0,c=a.length;f<c;)e[u++]=a[f++];else t||(e[u++]=a)}return e}var or=j((function(n,r){var t=(r=ur(r,!1,!1)).length;if(t<1)throw new Error("bindAll must be passed function names");for(;t--;){var e=r[t];n[e]=tr(n[e],n)}return n}));var ir=j((function(n,r,t){return setTimeout((function(){return n.apply(null,t)}),r)})),ar=rr(ir,tn,1);function fr(n){return function(){return!n.apply(this,arguments)}}function cr(n,r){var t;return function(){return--n>0&&(t=r.apply(this,arguments)),n<=1&&(r=null),t}}var lr=rr(cr,2);function sr(n,r,t){r=qn(r,t);for(var e,u=nn(n),o=0,i=u.length;o<i;o++)if(r(n[e=u[o]],e,n))return e}function pr(n){return function(r,t,e){t=qn(t,e);for(var u=Y(r),o=n>0?0:u-1;o>=0&&o<u;o+=n)if(t(r[o],o,r))return o;return-1}}var vr=pr(1),hr=pr(-1);function yr(n,r,t,e){for(var u=(t=qn(t,e,1))(r),o=0,i=Y(n);o<i;){var a=Math.floor((o+i)/2);t(n[a])<u?o=a+1:i=a}return o}function dr(n,r,t){return function(e,u,o){var a=0,f=Y(e);if("number"==typeof o)n>0?a=o>=0?o:Math.max(o+f,a):f=o>=0?Math.min(o+1,f):o+f+1;else if(t&&o&&f)return e[o=t(e,u)]===u?o:-1;if(u!=u)return(o=r(i.call(e,a,f),$))>=0?o+a:-1;for(o=n>0?a:f-1;o>=0&&o<f;o+=n)if(e[o]===u)return o;return-1}}var gr=dr(1,vr,yr),br=dr(-1,hr);function mr(n,r,t){var e=(er(n)?vr:sr)(n,r,t);if(void 0!==e&&-1!==e)return n[e]}function jr(n,r,t){var e,u;if(r=Fn(r,t),er(n))for(e=0,u=n.length;e<u;e++)r(n[e],e,n);else{var o=nn(n);for(e=0,u=o.length;e<u;e++)r(n[o[e]],o[e],n)}return n}function _r(n,r,t){r=qn(r,t);for(var e=!er(n)&&nn(n),u=(e||n).length,o=Array(u),i=0;i<u;i++){var a=e?e[i]:i;o[i]=r(n[a],a,n)}return o}function wr(n){var r=function(r,t,e,u){var o=!er(r)&&nn(r),i=(o||r).length,a=n>0?0:i-1;for(u||(e=r[o?o[a]:a],a+=n);a>=0&&a<i;a+=n){var f=o?o[a]:a;e=t(e,r[f],f,r)}return e};return function(n,t,e,u){var o=arguments.length>=3;return r(n,Fn(t,u,4),e,o)}}var Ar=wr(1),xr=wr(-1);function Sr(n,r,t){var e=[];return r=qn(r,t),jr(n,(function(n,t,u){r(n,t,u)&&e.push(n)})),e}function Or(n,r,t){r=qn(r,t);for(var e=!er(n)&&nn(n),u=(e||n).length,o=0;o<u;o++){var i=e?e[o]:o;if(!r(n[i],i,n))return!1}return!0}function Mr(n,r,t){r=qn(r,t);for(var e=!er(n)&&nn(n),u=(e||n).length,o=0;o<u;o++){var i=e?e[o]:o;if(r(n[i],i,n))return!0}return!1}function Er(n,r,t,e){return er(n)||(n=jn(n)),("number"!=typeof t||e)&&(t=0),gr(n,r,t)>=0}var Br=j((function(n,r,t){var e,u;return D(r)?u=r:(r=Nn(r),e=r.slice(0,-1),r=r[r.length-1]),_r(n,(function(n){var o=u;if(!o){if(e&&e.length&&(n=In(n,e)),null==n)return;o=n[r]}return null==o?o:o.apply(n,t)}))}));function Nr(n,r){return _r(n,Rn(r))}function Ir(n,r,t){var e,u,o=-1/0,i=-1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;a<f;a++)null!=(e=n[a])&&e>o&&(o=e);else r=qn(r,t),jr(n,(function(n,t,e){((u=r(n,t,e))>i||u===-1/0&&o===-1/0)&&(o=n,i=u)}));return o}function Tr(n,r,t){if(null==r||t)return er(n)||(n=jn(n)),n[Wn(n.length-1)];var e=er(n)?En(n):jn(n),u=Y(e);r=Math.max(Math.min(r,u),0);for(var o=u-1,i=0;i<r;i++){var a=Wn(i,o),f=e[i];e[i]=e[a],e[a]=f}return e.slice(0,r)}function kr(n,r){return function(t,e,u){var o=r?[[],[]]:{};return e=qn(e,u),jr(t,(function(r,u){var i=e(r,u,t);n(o,r,i)})),o}}var Dr=kr((function(n,r,t){W(n,t)?n[t].push(r):n[t]=[r]})),Rr=kr((function(n,r,t){n[t]=r})),Fr=kr((function(n,r,t){W(n,t)?n[t]++:n[t]=1})),Vr=kr((function(n,r,t){n[t?0:1].push(r)}),!0),Pr=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;function qr(n,r,t){return r in t}var Ur=j((function(n,r){var t={},e=r[0];if(null==n)return t;D(e)?(r.length>1&&(e=Fn(e,r[1])),r=fn(n)):(e=qr,r=ur(r,!1,!1),n=Object(n));for(var u=0,o=r.length;u<o;u++){var i=r[u],a=n[i];e(a,i,n)&&(t[i]=a)}return t})),Wr=j((function(n,r){var t,e=r[0];return D(e)?(e=fr(e),r.length>1&&(t=r[1])):(r=_r(ur(r,!1,!1),String),e=function(n,t){return!Er(r,t)}),Ur(n,e,t)}));function zr(n,r,t){return i.call(n,0,Math.max(0,n.length-(null==r||t?1:r)))}function Lr(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[0]:zr(n,n.length-r)}function $r(n,r,t){return i.call(n,null==r||t?1:r)}var Cr=j((function(n,r){return r=ur(r,!0,!0),Sr(n,(function(n){return!Er(r,n)}))})),Kr=j((function(n,r){return Cr(n,r)}));function Jr(n,r,t,e){A(r)||(e=t,t=r,r=!1),null!=t&&(t=qn(t,e));for(var u=[],o=[],i=0,a=Y(n);i<a;i++){var f=n[i],c=t?t(f,i,n):f;r&&!t?(i&&o===c||u.push(f),o=c):t?Er(o,c)||(o.push(c),u.push(f)):Er(u,f)||u.push(f)}return u}var Gr=j((function(n){return Jr(ur(n,!0,!0))}));function Hr(n){for(var r=n&&Ir(n,Y).length||0,t=Array(r),e=0;e<r;e++)t[e]=Nr(n,e);return t}var Qr=j(Hr);function Xr(n,r){return n._chain?tn(r).chain():r}function Yr(n){return jr(wn(n),(function(r){var t=tn[r]=n[r];tn.prototype[r]=function(){var n=[this._wrapped];return o.apply(n,arguments),Xr(this,t.apply(tn,n))}})),tn}jr(["pop","push","reverse","shift","sort","splice","unshift"],(function(n){var r=t[n];tn.prototype[n]=function(){var t=this._wrapped;return null!=t&&(r.apply(t,arguments),"shift"!==n&&"splice"!==n||0!==t.length||delete t[0]),Xr(this,t)}})),jr(["concat","join","slice"],(function(n){var r=t[n];tn.prototype[n]=function(){var n=this._wrapped;return null!=n&&(n=r.apply(n,arguments)),Xr(this,n)}}));var Zr=Yr({__proto__:null,VERSION:n,restArguments:j,isObject:_,isNull:function(n){return null===n},isUndefined:w,isBoolean:A,isElement:function(n){return!(!n||1!==n.nodeType)},isString:S,isNumber:O,isDate:M,isRegExp:E,isError:B,isSymbol:N,isArrayBuffer:I,isDataView:q,isArray:U,isFunction:D,isArguments:L,isFinite:function(n){return!N(n)&&d(n)&&!isNaN(parseFloat(n))},isNaN:$,isTypedArray:X,isEmpty:function(n){if(null==n)return!0;var r=Y(n);return"number"==typeof r&&(U(n)||S(n)||L(n))?0===r:0===Y(nn(n))},isMatch:rn,isEqual:function(n,r){return on(n,r)},isMap:dn,isWeakMap:gn,isSet:bn,isWeakSet:mn,keys:nn,allKeys:fn,values:jn,pairs:function(n){for(var r=nn(n),t=r.length,e=Array(t),u=0;u<t;u++)e[u]=[r[u],n[r[u]]];return e},invert:_n,functions:wn,methods:wn,extend:xn,extendOwn:Sn,assign:Sn,defaults:On,create:function(n,r){var t=Mn(n);return r&&Sn(t,r),t},clone:En,tap:function(n,r){return r(n),n},get:Tn,has:function(n,r){for(var t=(r=Nn(r)).length,e=0;e<t;e++){var u=r[e];if(!W(n,u))return!1;n=n[u]}return!!t},mapObject:function(n,r,t){r=qn(r,t);for(var e=nn(n),u=e.length,o={},i=0;i<u;i++){var a=e[i];o[a]=r(n[a],a,n)}return o},identity:kn,constant:C,noop:Un,toPath:Bn,property:Rn,propertyOf:function(n){return null==n?Un:function(r){return Tn(n,r)}},matcher:Dn,matches:Dn,times:function(n,r,t){var e=Array(Math.max(0,n));r=Fn(r,t,1);for(var u=0;u<n;u++)e[u]=r(u);return e},random:Wn,now:zn,escape:Cn,unescape:Kn,templateSettings:Jn,template:function(n,r,t){!r&&t&&(r=t),r=On({},r,tn.templateSettings);var e=RegExp([(r.escape||Gn).source,(r.interpolate||Gn).source,(r.evaluate||Gn).source].join("|")+"|$","g"),u=0,o="__p+='";n.replace(e,(function(r,t,e,i,a){return o+=n.slice(u,a).replace(Qn,Xn),u=a+r.length,t?o+="'+\n((__t=("+t+"))==null?'':_.escape(__t))+\n'":e?o+="'+\n((__t=("+e+"))==null?'':__t)+\n'":i&&(o+="';\n"+i+"\n__p+='"),r})),o+="';\n";var i,a=r.variable;if(a){if(!Yn.test(a))throw new Error("variable is not a bare identifier: "+a)}else o="with(obj||{}){\n"+o+"}\n",a="obj";o="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+o+"return __p;\n";try{i=new Function(a,"_",o)}catch(n){throw n.source=o,n}var f=function(n){return i.call(this,n,tn)};return f.source="function("+a+"){\n"+o+"}",f},result:function(n,r,t){var e=(r=Nn(r)).length;if(!e)return D(t)?t.call(n):t;for(var u=0;u<e;u++){var o=null==n?void 0:n[r[u]];void 0===o&&(o=t,u=e),n=D(o)?o.call(n):o}return n},uniqueId:function(n){var r=++Zn+"";return n?n+r:r},chain:function(n){var r=tn(n);return r._chain=!0,r},iteratee:Pn,partial:rr,bind:tr,bindAll:or,memoize:function(n,r){var t=function(e){var u=t.cache,o=""+(r?r.apply(this,arguments):e);return W(u,o)||(u[o]=n.apply(this,arguments)),u[o]};return t.cache={},t},delay:ir,defer:ar,throttle:function(n,r,t){var e,u,o,i,a=0;t||(t={});var f=function(){a=!1===t.leading?0:zn(),e=null,i=n.apply(u,o),e||(u=o=null)},c=function(){var c=zn();a||!1!==t.leading||(a=c);var l=r-(c-a);return u=this,o=arguments,l<=0||l>r?(e&&(clearTimeout(e),e=null),a=c,i=n.apply(u,o),e||(u=o=null)):e||!1===t.trailing||(e=setTimeout(f,l)),i};return c.cancel=function(){clearTimeout(e),a=0,e=u=o=null},c},debounce:function(n,r,t){var e,u,o,i,a,f=function(){var c=zn()-u;r>c?e=setTimeout(f,r-c):(e=null,t||(i=n.apply(a,o)),e||(o=a=null))},c=j((function(c){return a=this,o=c,u=zn(),e||(e=setTimeout(f,r),t&&(i=n.apply(a,o))),i}));return c.cancel=function(){clearTimeout(e),e=o=a=null},c},wrap:function(n,r){return rr(r,n)},negate:fr,compose:function(){var n=arguments,r=n.length-1;return function(){for(var t=r,e=n[r].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},after:function(n,r){return function(){if(--n<1)return r.apply(this,arguments)}},before:cr,once:lr,findKey:sr,findIndex:vr,findLastIndex:hr,sortedIndex:yr,indexOf:gr,lastIndexOf:br,find:mr,detect:mr,findWhere:function(n,r){return mr(n,Dn(r))},each:jr,forEach:jr,map:_r,collect:_r,reduce:Ar,foldl:Ar,inject:Ar,reduceRight:xr,foldr:xr,filter:Sr,select:Sr,reject:function(n,r,t){return Sr(n,fr(qn(r)),t)},every:Or,all:Or,some:Mr,any:Mr,contains:Er,includes:Er,include:Er,invoke:Br,pluck:Nr,where:function(n,r){return Sr(n,Dn(r))},max:Ir,min:function(n,r,t){var e,u,o=1/0,i=1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;a<f;a++)null!=(e=n[a])&&e<o&&(o=e);else r=qn(r,t),jr(n,(function(n,t,e){((u=r(n,t,e))<i||u===1/0&&o===1/0)&&(o=n,i=u)}));return o},shuffle:function(n){return Tr(n,1/0)},sample:Tr,sortBy:function(n,r,t){var e=0;return r=qn(r,t),Nr(_r(n,(function(n,t,u){return{value:n,index:e++,criteria:r(n,t,u)}})).sort((function(n,r){var t=n.criteria,e=r.criteria;if(t!==e){if(t>e||void 0===t)return 1;if(t<e||void 0===e)return-1}return n.index-r.index})),"value")},groupBy:Dr,indexBy:Rr,countBy:Fr,partition:Vr,toArray:function(n){return n?U(n)?i.call(n):S(n)?n.match(Pr):er(n)?_r(n,kn):jn(n):[]},size:function(n){return null==n?0:er(n)?n.length:nn(n).length},pick:Ur,omit:Wr,first:Lr,head:Lr,take:Lr,initial:zr,last:function(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[n.length-1]:$r(n,Math.max(0,n.length-r))},rest:$r,tail:$r,drop:$r,compact:function(n){return Sr(n,Boolean)},flatten:function(n,r){return ur(n,r,!1)},without:Kr,uniq:Jr,unique:Jr,union:Gr,intersection:function(n){for(var r=[],t=arguments.length,e=0,u=Y(n);e<u;e++){var o=n[e];if(!Er(r,o)){var i;for(i=1;i<t&&Er(arguments[i],o);i++);i===t&&r.push(o)}}return r},difference:Cr,unzip:Hr,transpose:Hr,zip:Qr,object:function(n,r){for(var t={},e=0,u=Y(n);e<u;e++)r?t[n[e]]=r[e]:t[n[e][0]]=n[e][1];return t},range:function(n,r,t){null==r&&(r=n||0,n=0),t||(t=r<n?-1:1);for(var e=Math.max(Math.ceil((r-n)/t),0),u=Array(e),o=0;o<e;o++,n+=t)u[o]=n;return u},chunk:function(n,r){if(null==r||r<1)return[];for(var t=[],e=0,u=n.length;e<u;)t.push(i.call(n,e,e+=r));return t},mixin:Yr,default:tn});return Zr._=Zr,Zr}));
8
+ /**
9
+ * Minified by jsDelivr using UglifyJS v3.1.10.
10
+ * Original file: /npm/underscore.string@2.4.0/lib/underscore.string.js
11
+ *
12
+ * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
13
+ */
14
+ !function(e,n){"use strict";function r(e,n){var r,t,u=e.toLowerCase();for(n=[].concat(n),r=0;r<n.length;r+=1)if(t=n[r]){if(t.test&&t.test(e))return!0;if(t.toLowerCase()===u)return!0}}var t=n.prototype.trim,u=n.prototype.trimRight,i=n.prototype.trimLeft,l=function(e){return 1*e||0},o=function(e,n){if(n<1)return"";for(var r="";n>0;)1&n&&(r+=e),n>>=1,e+=e;return r},a=[].slice,c=function(e){return null==e?"\\s":e.source?e.source:"["+g.escapeRegExp(e)+"]"},s={lt:"<",gt:">",quot:'"',amp:"&",apos:"'"},f={};for(var p in s)f[s[p]]=p;f["'"]="#39";var h=function(){function e(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()}var r=o,t=function(){return t.cache.hasOwnProperty(arguments[0])||(t.cache[arguments[0]]=t.parse(arguments[0])),t.format.call(null,t.cache[arguments[0]],arguments)};return t.format=function(t,u){var i,l,o,a,c,s,f,p=1,g=t.length,d="",m=[];for(l=0;l<g;l++)if("string"===(d=e(t[l])))m.push(t[l]);else if("array"===d){if((a=t[l])[2])for(i=u[p],o=0;o<a[2].length;o++){if(!i.hasOwnProperty(a[2][o]))throw new Error(h('[_.sprintf] property "%s" does not exist',a[2][o]));i=i[a[2][o]]}else i=a[1]?u[a[1]]:u[p++];if(/[^s]/.test(a[8])&&"number"!=e(i))throw new Error(h("[_.sprintf] expecting number but found %s",e(i)));switch(a[8]){case"b":i=i.toString(2);break;case"c":i=n.fromCharCode(i);break;case"d":i=parseInt(i,10);break;case"e":i=a[7]?i.toExponential(a[7]):i.toExponential();break;case"f":i=a[7]?parseFloat(i).toFixed(a[7]):parseFloat(i);break;case"o":i=i.toString(8);break;case"s":i=(i=n(i))&&a[7]?i.substring(0,a[7]):i;break;case"u":i=Math.abs(i);break;case"x":i=i.toString(16);break;case"X":i=i.toString(16).toUpperCase()}i=/[def]/.test(a[8])&&a[3]&&i>=0?"+"+i:i,s=a[4]?"0"==a[4]?"0":a[4].charAt(1):" ",f=a[6]-n(i).length,c=a[6]?r(s,f):"",m.push(a[5]?i+c:c+i)}return m.join("")},t.cache={},t.parse=function(e){for(var n=e,r=[],t=[],u=0;n;){if(null!==(r=/^[^\x25]+/.exec(n)))t.push(r[0]);else if(null!==(r=/^\x25{2}/.exec(n)))t.push("%");else{if(null===(r=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(n)))throw new Error("[_.sprintf] huh?");if(r[2]){u|=1;var i=[],l=r[2],o=[];if(null===(o=/^([a-z_][a-z_\d]*)/i.exec(l)))throw new Error("[_.sprintf] huh?");for(i.push(o[1]);""!==(l=l.substring(o[0].length));)if(null!==(o=/^\.([a-z_][a-z_\d]*)/i.exec(l)))i.push(o[1]);else{if(null===(o=/^\[(\d+)\]/.exec(l)))throw new Error("[_.sprintf] huh?");i.push(o[1])}r[2]=i}else u|=2;if(3===u)throw new Error("[_.sprintf] mixing positional and named placeholders is not (yet) supported");t.push(r)}n=n.substring(r[0].length)}return t},t}(),g={VERSION:"2.4.0",isBlank:function(e){return null==e&&(e=""),/^\s*$/.test(e)},stripTags:function(e){return null==e?"":n(e).replace(/<\/?[^>]+>/g,"")},capitalize:function(e){return(e=null==e?"":n(e)).charAt(0).toUpperCase()+e.slice(1)},chop:function(e,r){return null==e?[]:(e=n(e),(r=~~r)>0?e.match(new RegExp(".{1,"+r+"}","g")):[e])},clean:function(e){return g.strip(e).replace(/\s+/g," ")},count:function(e,r){if(null==e||null==r)return 0;e=n(e);for(var t=0,u=0,i=(r=n(r)).length;;){if(-1===(u=e.indexOf(r,u)))break;t++,u+=i}return t},chars:function(e){return null==e?[]:n(e).split("")},swapCase:function(e){return null==e?"":n(e).replace(/\S/g,function(e){return e===e.toUpperCase()?e.toLowerCase():e.toUpperCase()})},escapeHTML:function(e){return null==e?"":n(e).replace(/[&<>"']/g,function(e){return"&"+f[e]+";"})},unescapeHTML:function(e){return null==e?"":n(e).replace(/\&([^;]+);/g,function(e,r){var t;return r in s?s[r]:(t=r.match(/^#x([\da-fA-F]+)$/))?n.fromCharCode(parseInt(t[1],16)):(t=r.match(/^#(\d+)$/))?n.fromCharCode(~~t[1]):e})},escapeRegExp:function(e){return null==e?"":n(e).replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")},splice:function(e,n,r,t){var u=g.chars(e);return u.splice(~~n,~~r,t),u.join("")},insert:function(e,n,r){return g.splice(e,n,0,r)},include:function(e,r){return""===r||null!=e&&-1!==n(e).indexOf(r)},join:function(){var e=a.call(arguments),n=e.shift();return null==n&&(n=""),e.join(n)},lines:function(e){return null==e?[]:n(e).split("\n")},reverse:function(e){return g.chars(e).reverse().join("")},startsWith:function(e,r){return""===r||null!=e&&null!=r&&(e=n(e),r=n(r),e.length>=r.length&&e.slice(0,r.length)===r)},endsWith:function(e,r){return""===r||null!=e&&null!=r&&(e=n(e),r=n(r),e.length>=r.length&&e.slice(e.length-r.length)===r)},succ:function(e){return null==e?"":(e=n(e)).slice(0,-1)+n.fromCharCode(e.charCodeAt(e.length-1)+1)},titleize:function(e){return null==e?"":(e=n(e).toLowerCase()).replace(/(?:^|\s|-)\S/g,function(e){return e.toUpperCase()})},camelize:function(e){return g.trim(e).replace(/[-_\s]+(.)?/g,function(e,n){return n?n.toUpperCase():""})},underscored:function(e){return g.trim(e).replace(/([a-z\d])([A-Z]+)/g,"$1_$2").replace(/[-\s]+/g,"_").toLowerCase()},dasherize:function(e){return g.trim(e).replace(/([A-Z])/g,"-$1").replace(/[-_\s]+/g,"-").toLowerCase()},classify:function(e){return g.capitalize(g.camelize(n(e).replace(/[\W_]/g," ")).replace(/\s/g,""))},humanize:function(e){return g.capitalize(g.underscored(e).replace(/_id$/,"").replace(/_/g," "))},trim:function(e,r){return null==e?"":!r&&t?t.call(e):(r=c(r),n(e).replace(new RegExp("^"+r+"+|"+r+"+$","g"),""))},ltrim:function(e,r){return null==e?"":!r&&i?i.call(e):(r=c(r),n(e).replace(new RegExp("^"+r+"+"),""))},rtrim:function(e,r){return null==e?"":!r&&u?u.call(e):(r=c(r),n(e).replace(new RegExp(r+"+$"),""))},truncate:function(e,r,t){return null==e?"":(e=n(e),t=t||"...",r=~~r,e.length>r?e.slice(0,r)+t:e)},prune:function(e,r,t){if(null==e)return"";if(e=n(e),r=~~r,t=null!=t?n(t):"...",e.length<=r)return e;var u=e.slice(0,r+1).replace(/.(?=\W*\w*$)/g,function(e){return e.toUpperCase()!==e.toLowerCase()?"A":" "});return((u=u.slice(u.length-2).match(/\w\w/)?u.replace(/\s*\S+$/,""):g.rtrim(u.slice(0,u.length-1)))+t).length>e.length?e:e.slice(0,u.length)+t},words:function(e,n){return g.isBlank(e)?[]:g.trim(e,n).split(n||/\s+/)},pad:function(e,r,t,u){e=null==e?"":n(e),r=~~r;var i=0;switch(t?t.length>1&&(t=t.charAt(0)):t=" ",u){case"right":return i=r-e.length,e+o(t,i);case"both":return i=r-e.length,o(t,Math.ceil(i/2))+e+o(t,Math.floor(i/2));default:return i=r-e.length,o(t,i)+e}},lpad:function(e,n,r){return g.pad(e,n,r)},rpad:function(e,n,r){return g.pad(e,n,r,"right")},lrpad:function(e,n,r){return g.pad(e,n,r,"both")},sprintf:h,vsprintf:function(e,n){return n.unshift(e),h.apply(null,n)},toNumber:function(e,n){return e?(e=g.trim(e)).match(/^-?\d+(?:\.\d+)?$/)?l(l(e).toFixed(~~n)):NaN:0},numberFormat:function(e,n,r,t){if(isNaN(e)||null==e)return"";e=e.toFixed(~~n),t="string"==typeof t?t:",";var u=e.split("."),i=u[0],l=u[1]?(r||".")+u[1]:"";return i.replace(/(\d)(?=(?:\d{3})+$)/g,"$1"+t)+l},strRight:function(e,r){if(null==e)return"";e=n(e);var t=(r=null!=r?n(r):r)?e.indexOf(r):-1;return~t?e.slice(t+r.length,e.length):e},strRightBack:function(e,r){if(null==e)return"";e=n(e);var t=(r=null!=r?n(r):r)?e.lastIndexOf(r):-1;return~t?e.slice(t+r.length,e.length):e},strLeft:function(e,r){if(null==e)return"";e=n(e);var t=(r=null!=r?n(r):r)?e.indexOf(r):-1;return~t?e.slice(0,t):e},strLeftBack:function(e,n){if(null==e)return"";e+="",n=null!=n?""+n:n;var r=e.lastIndexOf(n);return~r?e.slice(0,r):e},toSentence:function(e,n,r,t){n=n||", ",r=r||" and ";var u=e.slice(),i=u.pop();return e.length>2&&t&&(r=g.rtrim(n)+r),u.length?u.join(n)+r+i:i},toSentenceSerial:function(){var e=a.call(arguments);return e[3]=!0,g.toSentence.apply(g,e)},slugify:function(e){if(null==e)return"";var r="ąàáäâãåæăćęèéëêìíïîłńòóöôõøśșțùúüûñçżź",t=new RegExp(c(r),"g");return e=n(e).toLowerCase().replace(t,function(e){var n=r.indexOf(e);return"aaaaaaaaaceeeeeiiiilnoooooosstuuuunczz".charAt(n)||"-"}),g.dasherize(e.replace(/[^\w\s-]/g,""))},surround:function(e,n){return[n,e,n].join("")},quote:function(e,n){return g.surround(e,n||'"')},unquote:function(e,n){return n=n||'"',e[0]===n&&e[e.length-1]===n?e.slice(1,e.length-1):e},exports:function(){var e={};for(var n in this)this.hasOwnProperty(n)&&!n.match(/^(?:include|contains|reverse)$/)&&(e[n]=this[n]);return e},repeat:function(e,r,t){if(null==e)return"";if(r=~~r,null==t)return o(n(e),r);for(var u=[];r>0;u[--r]=e);return u.join(t)},naturalCmp:function(e,r){if(e==r)return 0;if(!e)return-1;if(!r)return 1;for(var t=/(\.\d+)|(\d+)|(\D+)/g,u=n(e).toLowerCase().match(t),i=n(r).toLowerCase().match(t),l=Math.min(u.length,i.length),o=0;o<l;o++){var a=u[o],c=i[o];if(a!==c){var s=parseInt(a,10);if(!isNaN(s)){var f=parseInt(c,10);if(!isNaN(f)&&s-f)return s-f}return a<c?-1:1}}return u.length===i.length?u.length-i.length:e<r?-1:1},levenshtein:function(e,r){if(null==e&&null==r)return 0;if(null==e)return n(r).length;if(null==r)return n(e).length;e=n(e),r=n(r);for(var t,u,i=[],l=0;l<=r.length;l++)for(var o=0;o<=e.length;o++)u=l&&o?e.charAt(o-1)===r.charAt(l-1)?t:Math.min(i[o],i[o-1],t)+1:l+o,t=i[o],i[o]=u;return i.pop()},toBoolean:function(e,n,t){return"number"==typeof e&&(e=""+e),"string"!=typeof e?!!e:(e=g.trim(e),!!r(e,n||["true","1"])||!r(e,t||["false","0"])&&void 0)}};g.strip=g.trim,g.lstrip=g.ltrim,g.rstrip=g.rtrim,g.center=g.lrpad,g.rjust=g.lpad,g.ljust=g.rpad,g.contains=g.include,g.q=g.quote,g.toBool=g.toBoolean,"undefined"!=typeof exports&&("undefined"!=typeof module&&module.exports&&(module.exports=g),exports._s=g),"function"==typeof define&&define.amd&&define("underscore.string",[],function(){return g}),e._=e._||{},e._.string=e._.str=g}(this,String);
15
+ // Generated by CoffeeScript 1.6.2
16
+ /*
17
+ clientside HAML compiler for Javascript and Coffeescript (Version 5)
18
+
19
+ Copyright 2011-12, Ronald Holshausen (https://github.com/uglyog)
20
+ Released under the MIT License (http://www.opensource.org/licenses/MIT)
21
+ */(function(){var e,t,n,r,i,s,o,u,a,f,l,c={}.hasOwnProperty,h=function(e,t){function r(){this.constructor=e}for(var n in t)c.call(t,n)&&(e[n]=t[n]);return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e};f=this,r={escapeHTML:function(e){return String(e||"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")},perserveWhitespace:function(e){var t,n,r,i;r=/<[a-zA-Z]+>[^<]*<\/[a-zA-Z]+>/g,n="",t=0,i=r.exec(e);if(i){while(i)n+=e.substring(t,i.index),n+=i[0].replace(/\n/g,"&#x000A;"),t=i.index+i[0].length,i=r.exec(e);n+=e.substring(t)}else n=e;return n},templateError:function(e,t,n,r){var i,s;s=r+" at line "+e+" and character "+t+":\n"+n+"\n",i=0;while(i<t-1)s+="-",i++;return s+="^",s},generateElementAttributes:function(e,t,n,r,i,s,o,u,f,l){var h,p,d,v,m,g,y,b,w,E;l==null&&(l=this._raiseError),p={},p=this.combineAttributes(p,"id",t),n.length>0&&n[0].length>0&&(p=this.combineAttributes(p,"class",n));if(i!=null)for(h in i){if(!c.call(i,h))continue;E=i[h],p=this.combineAttributes(p,h,E)}if(r!=null)try{b=r.call(e,e),b!=null&&(w=null,b.id!=null?w=b.id:b.get&&(w=b.get("id")),p=this.combineAttributes(p,"id",w),d=null,b["class"]?d=b["class"]:b.get&&(d=b.get("class")),p=this.combineAttributes(p,"class",d))}catch(S){v=S,l(a.HamlRuntime.templateError(o,u,f,"Error evaluating object reference - "+v))}if(s!=null)try{g=s.call(e,e);if(g!=null){g=this._flattenHash(null,g);for(h in g){if(!c.call(g,h))continue;E=g[h],p=this.combineAttributes(p,h,E)}}}catch(S){m=S,l(a.HamlRuntime.templateError(o,u,f,"Error evaluating attribute hash - "+m))}y="";if(p)for(h in p){if(!c.call(p,h))continue;a.hasValue(p[h])&&((h==="id"||h==="for")&&p[h]instanceof Array?y+=" "+h+'="'+_(p[h]).flatten().join("-")+'"':h==="class"&&p[h]instanceof Array?y+=" "+h+'="'+_(p[h]).flatten().join(" ")+'"':y+=" "+h+'="'+a.attrValue(h,p[h])+'"')}return y},indentText:function(e){var t,n;n="",t=0;while(t<e)n+=" ",t++;return n},combineAttributes:function(e,t,n){var r;return a.hasValue(n)&&(t==="id"&&n.toString().length>0?e&&e.id instanceof Array?e.id.unshift(n):e&&e.id?e.id=[e.id,n]:e?e.id=n:e={id:n}:t==="for"&&n.toString().length>0?e&&e["for"]instanceof Array?e["for"].unshift(n):e&&e["for"]?e["for"]=[e["for"],n]:e?e["for"]=n:e={"for":n}:t==="class"?(r=[],n instanceof Array?r=r.concat(n):r.push(n),e&&e["class"]?e["class"]=e["class"].concat(r):e?e["class"]=r:e={"class":r}):t!=="id"&&(e||(e={}),e[t]=n)),e},_flattenHash:function(e,t){var n,r,i,s,o,u,a,f;a={};if(this._isHash(t))for(n in t){if(!c.call(t,n))continue;f=t[n],s=[],e!=null&&s.push(e),s.push(n),i=s.join("-"),r=this._flattenHash(i,f);if(this._isHash(r))for(o in r){if(!c.call(r,o))continue;u=r[o],a[o]=u}else a[i]=r}else e!=null?a[e]=t:a=t;return a},_isHash:function(e){return e!=null&&typeof e=="object"&&!(e instanceof Array||e instanceof Date)},_logError:function(e){return typeof console!="undefined"&&console!==null?console.log(e):void 0},_raiseError:function(e){throw new Error(e)},trim:function(e,t){return e.substring(t)}},o=function(){function e(e){var t,n,r,i=this;this.buffer=null,this.bufferIndex=null,this.prevToken=null,this.token=null;if(e.templateId!=null){r=document.getElementById(e.templateId);if(!r)throw"Did not find a template with ID '"+e.templateId+"'";this.buffer=r.text,this.bufferIndex=0}else e.template!=null?(this.buffer=e.template,this.bufferIndex=0):e.templateUrl!=null&&(t=function(t,n,r){throw"Failed to fetch haml template at URL "+e.templateUrl+": "+n+" "+r},n=function(e){return i.buffer=e,i.bufferIndex=0},jQuery.ajax({url:e.templateUrl,success:n,error:t,dataType:"text",async:!1,beforeSend:function(e){return e.withCredentials=!0}}))}return e.prototype.currentLineMatcher=/[^\n]*/g,e.prototype.tokenMatchers={whitespace:/[ \t]+/g,element:/%[a-zA-Z][a-zA-Z0-9]*/g,idSelector:/#[a-zA-Z_\-][a-zA-Z0-9_\-]*/g,classSelector:/\.[a-zA-Z0-9_\-]+/g,identifier:/[a-zA-Z][a-zA-Z0-9\-]*/g,quotedString:/[\'][^\'\n]*[\']/g,quotedString2:/[\"][^\"\n]*[\"]/g,comment:/\-#/g,escapeHtml:/\&=/g,unescapeHtml:/\!=/g,objectReference:/\[[a-zA-Z_@][a-zA-Z0-9_]*\]/g,doctype:/!!!/g,continueLine:/\|\s*\n/g,filter:/:\w+/g},e.prototype.matchToken=function(e){var t;e.lastIndex=this.bufferIndex,t=e.exec(this.buffer);if((t!=null?t.index:void 0)===this.bufferIndex)return t[0]},e.prototype.matchMultiCharToken=function(e,t,n){var r,i;if(!this.token){r=this.matchToken(e);if(r)return this.token=t,this.token.tokenString=(i=typeof n==="function"?n(r):void 0)!=null?i:r,this.token.matched=r,this.advanceCharsInBuffer(r.length)}},e.prototype.matchSingleCharToken=function(e,t){if(!this.token&&this.buffer.charAt(this.bufferIndex)===e)return this.token=t,this.token.tokenString=e,this.token.matched=e,this.advanceCharsInBuffer(1)},e.prototype.getNextToken=function(){var e,t,n;if(isNaN(this.bufferIndex))throw a.HamlRuntime.templateError(this.lineNumber,this.characterNumber,this.currentLine,"An internal parser error has occurred in the HAML parser");this.prevToken=this.token,this.token=null;if(this.buffer===null||this.buffer.length===this.bufferIndex)this.token={eof:!0,token:"EOF"};else{this.initLine();if(!this.token){e=this.buffer.charCodeAt(this.bufferIndex),t=this.buffer.charCodeAt(this.bufferIndex+1);if(e===10||e===13&&t===10)this.token={eol:!0,token:"EOL"},e===13&&t===10?(this.advanceCharsInBuffer(2),this.token.matched=String.fromCharCode(e)+String.fromCharCode(t)):(this.advanceCharsInBuffer(1),this.token.matched=String.fromCharCode(e)),this.characterNumber=0,this.currentLine=this.getCurrentLine()}this.matchMultiCharToken(this.tokenMatchers.whitespace,{ws:!0,token:"WS"}),this.matchMultiCharToken(this.tokenMatchers.continueLine,{continueLine:!0,token:"CONTINUELINE"}),this.matchMultiCharToken(this.tokenMatchers.element,{element:!0,token:"ELEMENT"},function(e){return e.substring(1)}),this.matchMultiCharToken(this.tokenMatchers.idSelector,{idSelector:!0,token:"ID"},function(e){return e.substring(1)}),this.matchMultiCharToken(this.tokenMatchers.classSelector,{classSelector:!0,token:"CLASS"},function(e){return e.substring(1)}),this.matchMultiCharToken(this.tokenMatchers.identifier,{identifier:!0,token:"IDENTIFIER"}),this.matchMultiCharToken(this.tokenMatchers.doctype,{doctype:!0,token:"DOCTYPE"}),this.matchMultiCharToken(this.tokenMatchers.filter,{filter:!0,token:"FILTER"},function(e){return e.substring(1)}),this.token||(n=this.matchToken(this.tokenMatchers.quotedString),n||(n=this.matchToken(this.tokenMatchers.quotedString2)),n&&(this.token={string:!0,token:"STRING",tokenString:n.substring(1,n.length-1),matched:n},this.advanceCharsInBuffer(n.length))),this.matchMultiCharToken(this.tokenMatchers.comment,{comment:!0,token:"COMMENT"}),this.matchMultiCharToken(this.tokenMatchers.escapeHtml,{escapeHtml:!0,token:"ESCAPEHTML"}),this.matchMultiCharToken(this.tokenMatchers.unescapeHtml,{unescapeHtml:!0,token:"UNESCAPEHTML"}),this.matchMultiCharToken(this.tokenMatchers.objectReference,{objectReference:!0,token:"OBJECTREFERENCE"},function(e){return e.substring(1,e.length-1)}),!this.token&&this.buffer&&this.buffer.charAt(this.bufferIndex)==="{"&&this.matchJavascriptHash(),this.matchSingleCharToken("(",{openBracket:!0,token:"OPENBRACKET"}),this.matchSingleCharToken(")",{closeBracket:!0,token:"CLOSEBRACKET"}),this.matchSingleCharToken("=",{equal:!0,token:"EQUAL"}),this.matchSingleCharToken("/",{slash:!0,token:"SLASH"}),this.matchSingleCharToken("!",{exclamation:!0,token:"EXCLAMATION"}),this.matchSingleCharToken("-",{minus:!0,token:"MINUS"}),this.matchSingleCharToken("&",{amp:!0,token:"AMP"}),this.matchSingleCharToken("<",{lt:!0,token:"LT"}),this.matchSingleCharToken(">",{gt:!0,token:"GT"}),this.matchSingleCharToken("~",{tilde:!0,token:"TILDE"}),this.token===null&&(this.token={unknown:!0,token:"UNKNOWN",matched:this.buffer.charAt(this.bufferIndex)},this.advanceCharsInBuffer(1))}return this.token},e.prototype.lookAhead=function(e){var t,n,r,i,s,o,u,a;a=null;if(e>0){i=this.token,u=this.prevToken,r=this.currentLine,o=this.lineNumber,n=this.characterNumber,t=this.bufferIndex,s=0;while(s++<e)a=this.getNextToken();this.token=i,this.prevToken=u,this.currentLine=r,this.lineNumber=o,this.characterNumber=n,this.bufferIndex=t}return a},e.prototype.initLine=function(){if(!this.currentLine&&this.currentLine!=="")return this.currentLine=this.getCurrentLine(),this.lineNumber=1,this.characterNumber=0},e.prototype.getCurrentLine=function(e){var t;return this.currentLineMatcher.lastIndex=this.bufferIndex+(e!=null?e:0),t=this.currentLineMatcher.exec(this.buffer),t?t[0]:""},e.prototype.parseError=function(e){return a.HamlRuntime.templateError(this.lineNumber,this.characterNumber,this.currentLine,e)},e.prototype.skipToEOLorEOF=function(){var e,t,n;return n="",!this.token.eof&&!this.token.eol&&(this.token.matched!=null&&(n+=this.token.matched),this.currentLineMatcher.lastIndex=this.bufferIndex,t=this.currentLineMatcher.exec(this.buffer),t&&t.index===this.bufferIndex&&(e=(_.str||_).rtrim(t[0]),(_.str||_).endsWith(e,"|")?(n+=e.substring(0,e.length-1),this.advanceCharsInBuffer(e.length-1),this.getNextToken(),n+=this.parseMultiLine()):(n+=t[0],this.advanceCharsInBuffer(t[0].length),this.getNextToken()))),n},e.prototype.parseMultiLine=function(){var e,t,n;n="";while(this.token.continueLine)this.currentLineMatcher.lastIndex=this.bufferIndex,t=this.currentLineMatcher.exec(this.buffer),t&&t.index===this.bufferIndex&&(e=(_.str||_).rtrim(t[0]),(_.str||_).endsWith(e,"|")&&(n+=e.substring(0,e.length-1),this.advanceCharsInBuffer(e.length-1)),this.getNextToken());return n},e.prototype.advanceCharsInBuffer=function(e){var t,n,r;r=0;while(r<e)t=this.buffer.charCodeAt(this.bufferIndex+r),n=this.buffer.charCodeAt(this.bufferIndex+r+1),t===13&&n===10?(this.lineNumber++,this.characterNumber=0,this.currentLine=this.getCurrentLine(r),r++):t===10?(this.lineNumber++,this.characterNumber=0,this.currentLine=this.getCurrentLine(r)):this.characterNumber++,r++;return this.bufferIndex+=e},e.prototype.currentParsePoint=function(){return{lineNumber:this.lineNumber,characterNumber:this.characterNumber,currentLine:this.currentLine}},e.prototype.pushBackToken=function(){if(!this.token.eof)return this.bufferIndex-=this.token.matched.length,this.token=this.prevToken},e.prototype.isEolOrEof=function(){return this.token.eol||this.token.eof},e.prototype.matchJavascriptHash=function(){var e,t,n,r,i,s,o;i=this.calculateCurrentIndent(),s=this.bufferIndex+1,r=this.characterNumber,o=this.lineNumber,e=1;while(s<this.buffer.length&&(e>1||this.buffer.charAt(s)!=="}"))t=this.buffer.charAt(s),n=this.buffer.charCodeAt(s),t==="{"?(e++,s++):t==="}"?(e--,s++):n===10||n===13?s++:s++;if(s===this.buffer.length)throw this.characterNumber=r+1,this.lineNumber=o,this.parseError('Error parsing attribute hash - Did not find a terminating "}"');return this.token={attributeHash:!0,token:"ATTRHASH",tokenString:this.buffer.substring(this.bufferIndex,s+1),matched:this.buffer.substring(this.bufferIndex,s+1)},this.advanceCharsInBuffer(s-this.bufferIndex+1)},e.prototype.calculateCurrentIndent=function(){var e;return this.tokenMatchers.whitespace.lastIndex=0,e=this.tokenMatchers.whitespace.exec(this.currentLine),(e!=null?e.index:void 0)===0?this.calculateIndent(e[0]):0},e.prototype.calculateIndent=function(e){var t,n;n=0,t=0;while(t<e.length)e.charCodeAt(t)===9?n+=2:n++,t++;return Math.floor((n+1)/2)},e}(),e=function(){function e(e){this.generator=e,this.buffer="",this.outputBuffer=""}return e.prototype.append=function(e){this.generator!=null&&this.buffer.length===0&&this.generator.mark();if((e!=null?e.length:void 0)>0)return this.buffer+=e},e.prototype.appendToOutputBuffer=function(e){if((e!=null?e.length:void 0)>0)return this.flush(),this.outputBuffer+=e},e.prototype.flush=function(){var e;return((e=this.buffer)!=null?e.length:void 0)>0&&(this.outputBuffer+=this.generator.generateFlush(this.buffer)),this.buffer=""},e.prototype.output=function(){return this.outputBuffer},e.prototype.trimWhitespace=function(){var e,t;if(this.buffer.length>0){t=this.buffer.length-1;while(t>0){e=this.buffer.charAt(t);if(this._isWhitespace(e))t--;else{if(!(t>1)||e!=="n"&&e!=="t"||this.buffer.charAt(t-1)!=="\\")break;t-=2}}if(t>0&&t<this.buffer.length-1)return this.buffer=this.buffer.substring(0,t+1);if(t===0&&this._isWhitespace(this.buffer.charAt(0)))return this.buffer=""}},e.prototype._isWhitespace=function(e){return e===" "||e===" "||e==="\n"},e}(),t=function(){function e(){}return e.prototype.embeddedCodeBlockMatcher=/#{([^}]*)}/g,e}(),i=function(e){function t(e){this.options=e,this.outputBuffer=new a.Buffer(this)}return h(t,e),t.prototype.appendEmbeddedCode=function(e,t,n,r,i){return this.outputBuffer.flush(),this.outputBuffer.appendToOutputBuffer(e+"try {\n"),this.outputBuffer.appendToOutputBuffer(e+' var value = eval("'+(_.str||_).trim(t).replace(/"/g,'\\"').replace(/\\n/g,"\\\\n")+'");\n'),this.outputBuffer.appendToOutputBuffer(e+' value = value === null ? "" : value;'),n?this.outputBuffer.appendToOutputBuffer(e+" html.push(haml.HamlRuntime.escapeHTML(String(value)));\n"):r?this.outputBuffer.appendToOutputBuffer(e+" html.push(haml.HamlRuntime.perserveWhitespace(String(value)));\n"):this.outputBuffer.appendToOutputBuffer(e+" html.push(String(value));\n"),this.outputBuffer.appendToOutputBuffer(e+"} catch (e) {\n"),this.outputBuffer.appendToOutputBuffer(e+" handleError(haml.HamlRuntime.templateError("+i.lineNumber+", "+i.characterNumber+', "'+this.escapeCode(i.currentLine)+'",\n'),this.outputBuffer.appendToOutputBuffer(e+' "Error evaluating expression - " + e));\n'),this.outputBuffer.appendToOutputBuffer(e+"}\n")},t.prototype.initOutput=function(){var e;return((e=this.options)!=null?e.tolerateFaults:void 0)?this.outputBuffer.appendToOutputBuffer(" var handleError = haml.HamlRuntime._logError;"):this.outputBuffer.appendToOutputBuffer(" var handleError = haml.HamlRuntime._raiseError;"),this.outputBuffer.appendToOutputBuffer("var html = [];\nvar hashFunction = null, hashObject = null, objRef = null, objRefFn = null;\nwith (context || {}) {")},t.prototype.closeAndReturnOutput=function(){return this.outputBuffer.flush(),this.outputBuffer.output()+' }\n return html.join("");\n'},t.prototype.appendCodeLine=function(e,t){return this.outputBuffer.flush(),this.outputBuffer.appendToOutputBuffer(r.indentText(this.indent)),this.outputBuffer.appendToOutputBuffer(e),this.outputBuffer.appendToOutputBuffer(t)},t.prototype.lineMatchesStartFunctionBlock=function(e){return e.match(/function\s*\((,?\s*\w+)*\)\s*\{\s*$/)},t.prototype.lineMatchesStartBlock=function(e){return e.match(/\{\s*$/)},t.prototype.closeOffCodeBlock=function(e){if(!e.token.minus||!e.matchToken(/\s*\}/g))return this.outputBuffer.flush(),this.outputBuffer.appendToOutputBuffer(r.indentText(this.indent)+"}\n")},t.prototype.closeOffFunctionBlock=function(e){if(!e.token.minus||!e.matchToken(/\s*\}/g))return this.outputBuffer.flush(),this.outputBuffer.appendToOutputBuffer(r.indentText(this.indent)+"});\n")},t.prototype.generateCodeForDynamicAttributes=function(e,t,n,r,i,s){return this.outputBuffer.flush(),r.length>0?(r=this.replaceReservedWordsInHash(r),this.outputBuffer.appendToOutputBuffer(' hashFunction = function () { return eval("hashObject = '+r.replace(/"/g,'\\"').replace(/\n/g,"\\n")+'"); };\n')):this.outputBuffer.appendToOutputBuffer(" hashFunction = null;\n"),i.length>0?this.outputBuffer.appendToOutputBuffer(' objRefFn = function () { return eval("objRef = '+i.replace(/"/g,'\\"')+'"); };\n'):this.outputBuffer.appendToOutputBuffer(" objRefFn = null;\n"),this.outputBuffer.appendToOutputBuffer(' html.push(haml.HamlRuntime.generateElementAttributes(context, "'+e+'", ["'+t.join('","')+'"], objRefFn, '+JSON.stringify(n)+", hashFunction, "+s.lineNumber+", "+s.characterNumber+', "'+this.escapeCode(s.currentLine)+'", handleError));\n')},t.prototype.replaceReservedWordsInHash=function(e){var t,n,r,i,s;n=e,s=["class","for"];for(r=0,i=s.length;r<i;r++)t=s[r],n=n.replace(t+":",'"'+t+'":');return n},t.prototype.escapeCode=function(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r")},t.prototype.generateJsFunction=function(e){var t;try{return new Function("context",e)}catch(n){throw t=n,"Incorrect embedded code has resulted in an invalid Haml function - "+t+"\nGenerated Function:\n"+e}},t.prototype.generateFlush=function(e){return' html.push("'+this.escapeCode(e)+'");\n'},t.prototype.setIndent=function(e){return this.indent=e},t.prototype.mark=function(){},t.prototype.appendTextContents=function(e,t,n,r){return r==null&&(r={}),t&&e.match(/#{[^}]*}/)?this.interpolateString(e,n,r):this.outputBuffer.append(this.processText(e,r))},t.prototype.interpolateString=function(e,t,n){var i,s,o,u;i=0,u=this.embeddedCodeBlockMatcher.exec(e);while(u)u.index>0&&(s=e.charAt(u.index-1)),u.index>1&&(o=e.charAt(u.index-2)),s==="\\"&&o!=="\\"?(u.index!==0&&this.outputBuffer.append(this.processText(e.substring(i,u.index-1),n)),this.outputBuffer.append(this.processText(u[0]),n)):(this.outputBuffer.append(this.processText(e.substring(i,u.index)),n),this.appendEmbeddedCode(r.indentText(this.indent+1),u[1],n.escapeHTML,n.perserveWhitespace,t)),i=this.embeddedCodeBlockMatcher.lastIndex,u=this.embeddedCodeBlockMatcher.exec(e);if(i<e.length)return this.outputBuffer.append(this.processText(e.substring(i),n))},t.prototype.processText=function(e,t){return(t!=null?t.escapeHTML:void 0)?a.HamlRuntime.escapeHTML(e):(t!=null?t.perserveWhitespace:void 0)?a.HamlRuntime.perserveWhitespace(e):e},t}(t),s=function(e){function t(){return l=t.__super__.constructor.apply(this,arguments),l}return h(t,e),t.prototype.appendEmbeddedCode=function(e,t,n,r,i){return this.outputBuffer.flush(),this.outputBuffer.appendToOutputBuffer(e+" value = "+(_.str||_).trim(t)+";\n"),this.outputBuffer.appendToOutputBuffer(e+' value = value === null ? "" : value;'),n?this.outputBuffer.appendToOutputBuffer(e+" html.push(haml.HamlRuntime.escapeHTML(String(value)));\n"):r?this.outputBuffer.appendToOutputBuffer(e+" html.push(haml.HamlRuntime.perserveWhitespace(String(value)));\n"):this.outputBuffer.appendToOutputBuffer(e+" html.push(String(value));\n")},t.prototype.generateCodeForDynamicAttributes=function(e,t,n,r,i,s){return this.outputBuffer.flush(),r.length>0?(r=this.replaceReservedWordsInHash(r),this.outputBuffer.appendToOutputBuffer(" hashFunction = function () { return "+r+"; };\n")):this.outputBuffer.appendToOutputBuffer(" hashFunction = null;\n"),i.length>0?this.outputBuffer.appendToOutputBuffer(" objRefFn = function () { return "+i+"; };\n"):this.outputBuffer.appendToOutputBuffer(" objRefFn = null;\n"),this.outputBuffer.appendToOutputBuffer(' html.push(haml.HamlRuntime.generateElementAttributes(context, "'+e+'", ["'+t.join('","')+'"], objRefFn, '+JSON.stringify(n)+", hashFunction, "+s.lineNumber+", "+s.characterNumber+', "'+this.escapeCode(s.currentLine)+'"));\n')},t.prototype.initOutput=function(){return this.outputBuffer.appendToOutputBuffer(" var html = [];\n var hashFunction = null, hashObject = null, objRef = null, objRefFn = null, value= null;\n with (context || {}) {\n")},t}(i),n=function(e){function t(e){this.options=e,this.outputBuffer=new a.Buffer(this)}return h(t,e),t.prototype.appendEmbeddedCode=function(e,t,n,r,i){var s;return this.outputBuffer.flush(),s=this.calcCodeIndent(),this.outputBuffer.appendToOutputBuffer(s+"try\n"),this.outputBuffer.appendToOutputBuffer(s+" exp = CoffeeScript.compile('"+t.replace(/'/g,"\\'").replace(/\\n/g,"\\\\n")+"', bare: true)\n"),this.outputBuffer.appendToOutputBuffer(s+" value = eval(exp)\n"),this.outputBuffer.appendToOutputBuffer(s+" value ?= ''\n"),n?this.outputBuffer.appendToOutputBuffer(s+" html.push(haml.HamlRuntime.escapeHTML(String(value)))\n"):r?this.outputBuffer.appendToOutputBuffer(s+" html.push(haml.HamlRuntime.perserveWhitespace(String(value)))\n"):this.outputBuffer.appendToOutputBuffer(s+" html.push(String(value))\n"),this.outputBuffer.appendToOutputBuffer(s+"catch e \n"),this.outputBuffer.appendToOutputBuffer(s+" handleError new Error(haml.HamlRuntime.templateError("+i.lineNumber+", "+i.characterNumber+", '"+this.escapeCode(i.currentLine)+"',\n"),this.outputBuffer.appendToOutputBuffer(s+" 'Error evaluating expression - ' + e))\n")},t.prototype.initOutput=function(){var e;return((e=this.options)!=null?e.tolerateFaults:void 0)?this.outputBuffer.appendToOutputBuffer("handleError = haml.HamlRuntime._logError\n"):this.outputBuffer.appendToOutputBuffer("handleError = haml.HamlRuntime._raiseError\n"),this.outputBuffer.appendToOutputBuffer("html = []\n")},t.prototype.closeAndReturnOutput=function(){return this.outputBuffer.flush(),this.outputBuffer.output()+'return html.join("")\n'},t.prototype.appendCodeLine=function(e,t){return this.outputBuffer.flush(),this.outputBuffer.appendToOutputBuffer(this.calcCodeIndent()),this.outputBuffer.appendToOutputBuffer((_.str||_).trim(e)),this.outputBuffer.appendToOutputBuffer(t),this.prevCodeIndent=this.indent},t.prototype.lineMatchesStartFunctionBlock=function(e){return e.match(/\) [\-=]>\s*$/)},t.prototype.lineMatchesStartBlock=function(e){return!0},t.prototype.closeOffCodeBlock=function(e){return this.outputBuffer.flush()},t.prototype.closeOffFunctionBlock=function(e){return this.outputBuffer.flush()},t.prototype.generateCodeForDynamicAttributes=function(e,t,n,r,i,s){var o;return this.outputBuffer.flush(),o=this.calcCodeIndent(),r.length>0?(r=this.replaceReservedWordsInHash(r),this.outputBuffer.appendToOutputBuffer(o+"hashFunction = () -> s = CoffeeScript.compile('"+r.replace(/'/g,"\\'").replace(/\n/g,"\\n")+"', bare: true); eval 'hashObject = ' + s\n")):this.outputBuffer.appendToOutputBuffer(o+"hashFunction = null\n"),i.length>0?this.outputBuffer.appendToOutputBuffer(o+"objRefFn = () -> s = CoffeeScript.compile('"+i.replace(/'/g,"\\'")+"', bare: true); eval 'objRef = ' + s\n"):this.outputBuffer.appendToOutputBuffer(o+"objRefFn = null\n"),this.outputBuffer.appendToOutputBuffer(o+"html.push(haml.HamlRuntime.generateElementAttributes(this, '"+e+"', ['"+t.join("','")+"'], objRefFn ? null, "+JSON.stringify(n)+", hashFunction ? null, "+s.lineNumber+", "+s.characterNumber+", '"+this.escapeCode(s.currentLine)+"', handleError))\n")},t.prototype.replaceReservedWordsInHash=function(e){var t,n,r,i,s;n=e,s=["class","for"];for(r=0,i=s.length;r<i;r++)t=s[r],n=n.replace(t+":","'"+t+"':");return n},t.prototype.escapeCode=function(e){var t,n,r,i,s;n="",t=0,s=this.embeddedCodeBlockMatcher.exec(e);while(s)s.index>0&&(r=e.charAt(s.index-1)),s.index>1&&(i=e.charAt(s.index-2)),r==="\\"&&i!=="\\"?(s.index!==0&&(n+=this._escapeText(e.substring(t,s.index-1))),n+=this._escapeText("\\"+s[0])):(n+=this._escapeText(e.substring(t,s.index)),n+=s[0]),t=this.embeddedCodeBlockMatcher.lastIndex,s=this.embeddedCodeBlockMatcher.exec(e);return t<e.length&&(n+=this._escapeText(e.substring(t))),n},t.prototype._escapeText=function(e){return e.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/(^|[^\\]{2})\\\\#{/g,"$1\\#{")},t.prototype.generateJsFunction=function(e){var t,n;try{return n=CoffeeScript.compile(e,{bare:!0}),new Function(n)}catch(r){throw t=r,"Incorrect embedded code has resulted in an invalid Haml function - "+t+"\nGenerated Function:\n"+n}},t.prototype.generateFlush=function(e){return this.calcCodeIndent()+"html.push('"+this.escapeCode(e)+"')\n"},t.prototype.setIndent=function(e){return this.indent=e},t.prototype.mark=function(){return this.prevIndent=this.indent},t.prototype.calcCodeIndent=function(){var e,t,n,i,s,o;e=0;for(t=n=0,i=this.indent;0<=i?n<=i:n>=i;t=0<=i?++n:--n)if(((s=this.elementStack[t])!=null?s.block:void 0)||((o=this.elementStack[t])!=null?o.fnBlock:void 0))e+=1;return r.indentText(e)},t.prototype.appendTextContents=function(e,t,n,r){var i,s;if(t&&e.match(/#{[^}]*}/)){this.outputBuffer.flush(),i=s="";if(r!=null?r.escapeHTML:void 0)i="haml.HamlRuntime.escapeHTML(",s=")";else if(r!=null?r.perserveWhitespace:void 0)i="haml.HamlRuntime.perserveWhitespace(",s=")";return this.outputBuffer.appendToOutputBuffer(this.calcCodeIndent()+"html.push("+i+'"'+this.escapeCode(e)+'"'+s+")\n")}if(r!=null?r.escapeHTML:void 0)e=a.HamlRuntime.escapeHTML(e);if(r!=null?r.perserveWhitespace:void 0)e=a.HamlRuntime.perserveWhitespace(e);return this.outputBuffer.append(e)},t}(t),u={plain:function(e,t,n,r){var i,s,o;for(s=0,o=e.length;s<o;s++)i=e[s],t.appendTextContents(a.HamlRuntime.indentText(n-1)+i+"\n",!0,r);return!0},javascript:function(e,t,n,r){var i,s,o;t.outputBuffer.append(a.HamlRuntime.indentText(n)+'<script type="text/javascript">\n'),t.outputBuffer.append(a.HamlRuntime.indentText(n+1)+"//<![CDATA[\n");for(s=0,o=e.length;s<o;s++)i=e[s],t.appendTextContents(a.HamlRuntime.indentText(n+1)+i+"\n",!0,r);return t.outputBuffer.append(a.HamlRuntime.indentText(n+1)+"//]]>\n"),t.outputBuffer.append(a.HamlRuntime.indentText(n)+"</script>\n")},css:function(e,t,n,r){var i,s,o;t.outputBuffer.append(a.HamlRuntime.indentText(n)+'<style type="text/css">\n'),t.outputBuffer.append(a.HamlRuntime.indentText(n+1)+"/*<![CDATA[*/\n");for(s=0,o=e.length;s<o;s++)i=e[s],t.appendTextContents(a.HamlRuntime.indentText(n+1)+i+"\n",!0,r);return t.outputBuffer.append(a.HamlRuntime.indentText(n+1)+"/*]]>*/\n"),t.outputBuffer.append(a.HamlRuntime.indentText(n)+"</style>\n")},cdata:function(e,t,n,r){var i,s,o;t.outputBuffer.append(a.HamlRuntime.indentText(n)+"<![CDATA[\n");for(s=0,o=e.length;s<o;s++)i=e[s],t.appendTextContents(a.HamlRuntime.indentText(n)+i+"\n",!0,r);return t.outputBuffer.append(a.HamlRuntime.indentText(n)+"]]>\n")},preserve:function(e,t,n,r){var i;return t.appendTextContents(a.HamlRuntime.indentText(n),!1,r),t.appendTextContents(function(){var t,n,r;r=[];for(t=0,n=e.length;t<n;t++)i=e[t],r.push(a.HamlRuntime.trim(i,2));return r}().join("&#x000A; ")+"\n",!0,r)},escaped:function(e,t,n,r){var i,s,o;for(s=0,o=e.length;s<o;s++)i=e[s],t.appendTextContents(a.HamlRuntime.indentText(n-1)+i+"\n",!0,r,{escapeHTML:!0});return!0}},a={compileHaml:function(e){var t,n,r;if(typeof e=="string")return this._compileHamlTemplate(e,new a.JsCodeGenerator);t=function(){switch(e.generator){case"coffeescript":return new a.CoffeeCodeGenerator(e);case"productionjavascript":return new a.ProductionJsCodeGenerator(e);default:return new a.JsCodeGenerator(e)}}();if(e.source!=null)r=new a.Tokeniser({template:e.source});else if(e.sourceId!=null)r=new a.Tokeniser({templateId:e.sourceId});else{if(e.sourceUrl==null)throw"No template source specified for compileHaml. You need to provide a source, sourceId or sourceUrl option";r=new a.Tokeniser({templateUrl:e.sourceUrl})}return n=this._compileHamlToJs(r,t,e),e.outputFormat!=="string"?t.generateJsFunction(n):"function (context) {\n"+n+"}\n"},compileCoffeeHaml:function(e){return this._compileHamlTemplate(e,new a.CoffeeCodeGenerator)},compileStringToJs:function(e){var t,n;return t=new a.JsCodeGenerator,n=this._compileHamlToJs(new a.Tokeniser({template:e}),t),t.generateJsFunction(n)},compileCoffeeHamlFromString:function(e){var t,n;return t=new a.CoffeeCodeGenerator,n=this._compileHamlToJs(new a.Tokeniser({template:e}),t),t.generateJsFunction(n)},compileHamlToJsString:function(e){var t;return t="function (context) {\n",t+=this._compileHamlToJs(new a.Tokeniser({template:e}),new a.JsCodeGenerator),t+="}\n"},_compileHamlTemplate:function(e,t){var n,r;return a.cache||(a.cache={}),a.cache[e]?a.cache[e]:(r=this._compileHamlToJs(new a.Tokeniser({templateId:e}),t),n=t.generateJsFunction(r),a.cache[e]=n,n)},_compileHamlToJs:function(e,t,n){var i,s;n==null&&(n={}),t.elementStack=[],t.initOutput(),e.getNextToken();while(!e.token.eof)if(!e.token.eol)try{s=this._whitespace(e),t.setIndent(s),e.token.eol?(t.outputBuffer.append(r.indentText(s)+e.token.matched),e.getNextToken()):e.token.doctype?this._doctype(e,s,t):e.token.exclamation?this._ignoredLine(e,s,t.elementStack,t):e.token.equal||e.token.escapeHtml||e.token.unescapeHtml||e.token.tilde?this._embeddedJs(e,s,t.elementStack,{innerWhitespace:!0},t):e.token.minus?this._jsLine(e,s,t.elementStack,t):e.token.comment||e.token.slash?this._commentLine(e,s,t.elementStack,t):e.token.amp?this._escapedLine(e,s,t.elementStack,t):e.token.filter?this._filter(e,s,t,n):this._templateLine(e,t.elementStack,s,t,n)}catch(o){i=o,this._handleError(n,{skipTo:!0},e,i)}else t.outputBuffer.append(e.token.matched),e.getNextToken();return this._closeElements(0,t.elementStack,e,t),t.closeAndReturnOutput()},_doctype:function(e,t,n){var i,s;if(e.token.doctype){n.outputBuffer.append(r.indentText(t)),e.getNextToken(),e.token.ws&&e.getNextToken(),i=e.skipToEOLorEOF();if(i&&i.length>0){s=i.split(/\s+/);switch(s[0]){case"XML":s.length>1?n.outputBuffer.append("<?xml version='1.0' encoding='"+s[1]+"' ?>"):n.outputBuffer.append("<?xml version='1.0' encoding='utf-8' ?>");break;case"Strict":n.outputBuffer.append('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">');break;case"Frameset":n.outputBuffer.append('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">');break;case"5":n.outputBuffer.append("<!DOCTYPE html>");break;case"1.1":n.outputBuffer.append('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">');break;case"Basic":n.outputBuffer.append('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">');break;case"Mobile":n.outputBuffer.append('<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN" "http://www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd">');break;case"RDFa":n.outputBuffer.append('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">')}}else n.outputBuffer.append("<!DOCTYPE html>");return n.outputBuffer.append(this._newline(e)),e.getNextToken()}},_filter:function(e,t,n,i){var s,o,u,f;if(e.token.filter){s=e.token.tokenString;if(!a.filters[s]){this._handleError(i,{skipTo:t},e,e.parseError("Filter '"+s+"' not registered. Filter functions need to be added to 'haml.filters'."));return}e.skipToEOLorEOF(),e.getNextToken(),u=a._whitespace(e),o=[];while(!e.token.eof&&u>t)e.pushBackToken(),f=e.skipToEOLorEOF(),o.push(r.trim(f,2*t)),e.getNextToken(),u=a._whitespace(e);return a.filters[s](o,n,t,e.currentParsePoint()),e.pushBackToken()}},_commentLine:function(e,t,n,i){var s,o;if(e.token.comment){e.skipToEOLorEOF(),e.getNextToken(),o=this._whitespace(e);while(!e.token.eof&&o>t)e.skipToEOLorEOF(),e.getNextToken(),o=this._whitespace(e);if(o>0)return e.pushBackToken()}else if(e.token.slash)return a._closeElements(t,n,e,i),i.outputBuffer.append(r.indentText(t)),i.outputBuffer.append("<!--"),e.getNextToken(),s=e.skipToEOLorEOF(),s&&s.length>0&&i.outputBuffer.append(s),s&&(_.str||_).startsWith(s,"[")&&s.match(/\]\s*$/)?(n[t]={htmlConditionalComment:!0,eol:this._newline(e)},i.outputBuffer.append(">")):n[t]={htmlComment:!0,eol:this._newline(e)},a._tagHasContents(t,e)&&i.outputBuffer.append("\n"),e.getNextToken()},_escapedLine:function(e,t,n,i){var s;if(e.token.amp)return a._closeElements(t,n,e,i),i.outputBuffer.append(r.indentText(t)),e.getNextToken(),s=e.skipToEOLorEOF(),s&&s.length>0&&i.outputBuffer.append(a.HamlRuntime.escapeHTML(s)),i.outputBuffer.append(this._newline(e)),e.getNextToken()},_ignoredLine:function(e,t,n,i){var s;if(e.token.exclamation)return e.getNextToken(),e.token.ws&&(t+=a._whitespace(e)),a._closeElements(t,n,e,i),s=e.skipToEOLorEOF(),i.outputBuffer.append(r.indentText(t)+s)},_embeddedJs:function(e,t,n,i,s){var o,u,f,l,c;n&&a._closeElements(t,n,e,s);if(e.token.equal||e.token.escapeHtml||e.token.unescapeHtml||e.token.tilde){u=e.token.escapeHtml||e.token.equal,c=e.token.tilde,o=e.currentParsePoint(),e.getNextToken(),f=e.skipToEOLorEOF(),l=r.indentText(t),(!i||i.innerWhitespace)&&s.outputBuffer.append(l),s.appendEmbeddedCode(l,f,u,c,o);if(!i||i.innerWhitespace){s.outputBuffer.append(this._newline(e));if(e.token.eol)return e.getNextToken()}}},_jsLine:function(e,t,n,r){var i;if(e.token.minus){a._closeElements(t,n,e,r),e.getNextToken(),i=e.skipToEOLorEOF(),r.setIndent(t),r.appendCodeLine(i,this._newline(e)),e.token.eol&&e.getNextToken();if(r.lineMatchesStartFunctionBlock(i))return n[t]={fnBlock:!0};if(r.lineMatchesStartBlock(i))return n[t]={block:!0}}},_templateLine:function(e,t,n,i,s){var o,u,f,l,c,h,p,d,v,m,g,y,b;e.token.eol||this._closeElements(n,t,e,i),d=this._element(e),p=this._idSelector(e),f=
22
+ this._classSelector(e),g=this._objectReference(e),o=this._attributeList(e,s),c=e.currentParsePoint(),u=this._attributeHash(e),b={selfClosingTag:!1,innerWhitespace:!0,outerWhitespace:!0},m=this._lineHasElement(d,p,f),e.token.slash&&(b.selfClosingTag=!0,e.getNextToken()),e.token.gt&&m&&(b.outerWhitespace=!1,e.getNextToken()),e.token.lt&&m&&(b.innerWhitespace=!1,e.getNextToken()),m&&(b.selfClosingTag||(b.selfClosingTag=a._isSelfClosingTag(d)&&!a._tagHasContents(n,e)),this._openElement(c,n,d,p,f,g,o,u,t,b,i)),h=!1,e.token.ws&&e.getNextToken(),e.token.equal||e.token.escapeHtml||e.token.unescapeHtml?(this._embeddedJs(e,n+1,null,b,i),h=!0):(l="",y=!1,e.token.exclamation?(e.getNextToken(),l=e.skipToEOLorEOF()):(l=e.skipToEOLorEOF(),l.match(/^\\/)&&(l=l.substring(1)),y=!0),h=l.length>0,h&&(b.innerWhitespace&&m||!m&&a._parentInnerWhitespace(t,n)?v=r.indentText(d.length>0?n+1:n):(v="",l=(_.str||_).trim(l)),i.appendTextContents(v+l,y,c),i.outputBuffer.append(this._newline(e))),this._eolOrEof(e));if(b.selfClosingTag&&h)return this._handleError(s,null,e,a.HamlRuntime.templateError(c.lineNumber,c.characterNumber,c.currentLine,"A self-closing tag can not have any contents"))},_attributeHash:function(e){var t;return t="",e.token.attributeHash&&(t=e.token.tokenString,e.getNextToken()),t},_objectReference:function(e){var t;return t="",e.token.objectReference&&(t=e.token.tokenString,e.getNextToken()),t},_attributeList:function(e,t){var n,r;r={};if(e.token.openBracket){e.getNextToken();while(!e.token.closeBracket){n=a._attribute(e);if(n)r[n.name]=n.value;else if(e.token.ws||e.token.eol)e.getNextToken();else if(!e.token.closeBracket&&!e.token.identifier)return this._handleError(t,null,e,e.parseError("Expecting either an attribute name to continue the attibutes or a closing bracket to end")),r}e.getNextToken()}return r},_attribute:function(e){var t,n;t=null;if(e.token.identifier){n=e.token.tokenString,e.getNextToken(),a._whitespace(e);if(!e.token.equal)throw e.parseError("Expected '=' after attribute name");e.getNextToken(),a._whitespace(e);if(!e.token.string&&!e.token.identifier)throw e.parseError("Expected a quoted string or an identifier for the attribute value");t={name:n,value:e.token.tokenString},e.getNextToken()}return t},_closeElement:function(e,t,n,i){var s,o;if(t[e])return i.setIndent(e),t[e].htmlComment?i.outputBuffer.append(r.indentText(e)+"-->"+t[e].eol):t[e].htmlConditionalComment?i.outputBuffer.append(r.indentText(e)+"<![endif]-->"+t[e].eol):t[e].block?i.closeOffCodeBlock(n):t[e].fnBlock?i.closeOffFunctionBlock(n):(s=!t[e].tagOptions||t[e].tagOptions.innerWhitespace,s?i.outputBuffer.append(r.indentText(e)):i.outputBuffer.trimWhitespace(),i.outputBuffer.append("</"+t[e].tag+">"),o=!t[e].tagOptions||t[e].tagOptions.outerWhitespace,a._parentInnerWhitespace(t,e)&&o&&i.outputBuffer.append("\n")),t[e]=null,i.mark()},_closeElements:function(e,t,n,r){var i,s;i=t.length-1,s=[];while(i>=e)s.push(this._closeElement(i--,t,n,r));return s},_openElement:function(e,t,n,i,s,o,u,a,f,l,c){var h,p,d;h=n.length===0?"div":n,p=this._parentInnerWhitespace(f,t),d=!l||l.outerWhitespace,d||c.outputBuffer.trimWhitespace(),t>0&&p&&d&&c.outputBuffer.append(r.indentText(t)),c.outputBuffer.append("<"+h),a.length>0||o.length>0?c.generateCodeForDynamicAttributes(i,s,u,a,o,e):c.outputBuffer.append(r.generateElementAttributes(null,i,s,null,u,null,e.lineNumber,e.characterNumber,e.currentLine));if(l.selfClosingTag){c.outputBuffer.append("/>");if(l.outerWhitespace)return c.outputBuffer.append("\n")}else{c.outputBuffer.append(">"),f[t]={tag:h,tagOptions:l};if(l.innerWhitespace)return c.outputBuffer.append("\n")}},_isSelfClosingTag:function(e){return e==="meta"||e==="img"||e==="link"||e==="script"||e==="br"||e==="hr"},_tagHasContents:function(e,t){var n;return t.isEolOrEof()?(n=t.lookAhead(1),n.ws&&n.tokenString.length/2>e):!0},_parentInnerWhitespace:function(e,t){return t===0||!e[t-1]||!e[t-1].tagOptions||e[t-1].tagOptions.innerWhitespace},_lineHasElement:function(e,t,n){return e.length>0||t.length>0||n.length>0},hasValue:function(e){return e!=null&&e!==!1},attrValue:function(e,t){return e==="selected"||e==="checked"||e==="disabled"?e:t},_whitespace:function(e){var t;return t=0,e.token.ws&&(t=e.calculateIndent(e.token.tokenString),e.getNextToken()),t},_element:function(e){var t;return t="",e.token.element&&(t=e.token.tokenString,e.getNextToken()),t},_eolOrEof:function(e){if(e.token.eol||e.token.continueLine)return e.getNextToken();if(!e.token.eof)throw e.parseError("Expected EOL or EOF")},_idSelector:function(e){var t;return t="",e.token.idSelector&&(t=e.token.tokenString,e.getNextToken()),t},_classSelector:function(e){var t;t=[];while(e.token.classSelector)t.push(e.token.tokenString),e.getNextToken();return t},_newline:function(e){return e.token.eol?e.token.matched:e.token.continueLine?e.token.matched.substring(1):"\n"},_handleError:function(e,t,n,r){if(e!=null?!e.tolerateFaults:!void 0)throw r;console.log(r);if(t!=null?t.skipTo:void 0)return this._skipToNextLineWithIndent(n,t.skipTo)},_skipToNextLineWithIndent:function(e,t){var n;e.skipToEOLorEOF(),e.getNextToken(),n=this._whitespace(e);while(n>t)e.skipToEOLorEOF(),e.getNextToken(),n=this._whitespace(e);return e.pushBackToken()}},a.Tokeniser=o,a.Buffer=e,a.JsCodeGenerator=i,a.ProductionJsCodeGenerator=s,a.CoffeeCodeGenerator=n,a.HamlRuntime=r,a.filters=u,(typeof module!=="undefined"&&module!==null?module.exports:void 0)!=null?module.exports=a:f.haml=a}).call(this);
@@ -0,0 +1,4 @@
1
+ concatenated from:
2
+ https://cdn.jsdelivr.net/npm/underscore@1.13.1/underscore-umd.min.js
3
+ https://cdn.jsdelivr.net/npm/underscore.string@2.4.0/lib/underscore.string.min.js
4
+ https://cdn.jsdelivr.net/gh/uglyog/clientside-haml-js@release_5_4/lib/haml.min.js