diff --git a/.all-contributorsrc b/.all-contributorsrc
new file mode 100644
index 000000000..14082287a
--- /dev/null
+++ b/.all-contributorsrc
@@ -0,0 +1,201 @@
+{
+ "projectName": "liquidjs",
+ "projectOwner": "harttle",
+ "repoType": "github",
+ "repoHost": "https://github.com",
+ "files": [
+ "README.md"
+ ],
+ "imageSize": 100,
+ "commit": true,
+ "commitConvention": "eslint",
+ "contributors": [
+ {
+ "login": "harttle",
+ "name": "Jun Yang",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/4427974?v=4",
+ "profile": "https://harttle.land",
+ "contributions": [
+ "maintenance",
+ "code"
+ ]
+ },
+ {
+ "login": "chenos",
+ "name": "chenos",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/2993310?v=4",
+ "profile": "https://github.com/chenos",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "zachleat",
+ "name": "Zach Leatherman",
+ "avatar_url": "https://avatars2.githubusercontent.com/u/39355?v=4",
+ "profile": "https://zachleat.com/",
+ "contributions": [
+ "bug"
+ ]
+ },
+ {
+ "login": "thardy",
+ "name": "Tim Hardy",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/120636?v=4",
+ "profile": "https://github.com/thardy",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "paulrobertlloyd",
+ "name": "Paul Robert Lloyd",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/813383?v=4",
+ "profile": "https://paulrobertlloyd.com/",
+ "contributions": [
+ "code",
+ "bug"
+ ]
+ },
+ {
+ "login": "aleclarson",
+ "name": "Alec Larson",
+ "avatar_url": "https://avatars2.githubusercontent.com/u/1925840?v=4",
+ "profile": "https://twitter.com/alecdotbiz",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "pmalouin",
+ "name": "Patrick Malouin",
+ "avatar_url": "https://avatars1.githubusercontent.com/u/1411117?v=4",
+ "profile": "https://github.com/pmalouin",
+ "contributions": [
+ "code", "doc"
+ ]
+ },
+ {
+ "login": "jaswrks",
+ "name": "jaswrks",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/1563559?v=4",
+ "profile": "https://jaswrks.com",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "oott123",
+ "name": "δΈδΈ",
+ "avatar_url": "https://avatars2.githubusercontent.com/u/905663?v=4",
+ "profile": "https://oott123.com",
+ "contributions": [
+ "code",
+ "ideas"
+ ]
+ },
+ {
+ "login": "ssendev",
+ "name": "ssendev",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/450793?v=4",
+ "profile": "https://github.com/ssendev",
+ "contributions": [
+ "code",
+ "doc"
+ ]
+ },
+ {
+ "login": "wojtask9",
+ "name": "wojtask9",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/6099236?v=4",
+ "profile": "https://github.com/wojtask9",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "thelornenelson",
+ "name": "Andrew Barclay",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/24596583?v=4",
+ "profile": "https://github.com/thelornenelson",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "cmawhorter",
+ "name": "Cory Mawhorter",
+ "avatar_url": "https://avatars2.githubusercontent.com/u/142338?v=4",
+ "profile": "https://www.stam.pr/",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "thehappybug",
+ "name": "Mehdi Jaffery",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/3393530?v=4",
+ "profile": "https://github.com/thehappybug",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "robinbijlani",
+ "name": "Robin Bijlani",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/2503108?v=4",
+ "profile": "https://github.com/robinbijlani",
+ "contributions": [
+ "code",
+ "bug"
+ ]
+ },
+ {
+ "login": "ryaninvents",
+ "name": "Ryan Kennedy",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/8356669?v=4",
+ "profile": "https://www.rmkennedy.com",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "strax",
+ "name": "Sami Kukkonen",
+ "avatar_url": "https://avatars2.githubusercontent.com/u/587213?v=4",
+ "profile": "https://github.com/strax",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "ScottFreeCode",
+ "name": "Scott Santucci",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/16506071?v=4",
+ "profile": "https://ScottFreeCode.github.io/",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "stevenanthonyrevo",
+ "name": "Steven ",
+ "avatar_url": "https://avatars3.githubusercontent.com/u/8505293?v=4",
+ "profile": "http://stevenrescigno.com",
+ "contributions": [
+ "example",
+ "code"
+ ]
+ },
+ {
+ "login": "azu",
+ "name": "azu",
+ "avatar_url": "https://avatars1.githubusercontent.com/u/19714?v=4",
+ "profile": "https://efcl.info/",
+ "contributions": [
+ "doc"
+ ]
+ }
+ ],
+ "contributorsPerLine": 7
+}
diff --git a/README.md b/README.md
index 779c5737f..39df1e8f9 100644
--- a/README.md
+++ b/README.md
@@ -1,23 +1,43 @@
# liquidjs
-
-[](https://www.npmjs.org/package/liquidjs)
-[](https://www.npmjs.org/package/liquidjs)
+[](https://www.npmjs.org/package/liquidjs)
+[](https://www.npmjs.org/package/liquidjs)
[](https://travis-ci.org/harttle/liquidjs)
[](https://coveralls.io/github/harttle/liquidjs?branch=master)
+[](https://david-dm.org/harttle/liquidjs)
+[](#contributors-)
+[](https://github.com/harttle/liquidjs)
[](https://github.com/harttle/liquidjs/issues)
[](https://github.com/harttle/liquidjs/graphs/contributors)
[](https://david-dm.org/harttle/liquidjs)
[](https://david-dm.org/harttle/liquidjs?type=dev)
-[](https://github.com/harttle/liquidjs/blob/master/LICENSE)
-[](http://github.com/harttle/liquidjs)
-[](https://github.com/harttle/liquidjs)
+[](https://github.com/harttle/liquidjs/blob/master/LICENSE)
+[](https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#commits)
+[](https://opencollective.com/liquidjs)
-A [shopify][shopify/liquid] compatible [Liquid][tutorial] template engine in pure JavaScript. Install via npm:
+A [shopify][shopify/liquid] compatible [Liquid][tutorial] template engine in pure JavaScript.
+**The purpose of this repo** is to provide a standard Liquid implementation for the JavaScript community.
+All features, filters and tags in [shopify/liquid](https://github.com/Shopify/liquid) are supposed to be built in LiquidJS,
+though there are still some differences and limitations (see below).
+
+[Donate to our collective](https://opencollective.com/liquidjs/donate) if you like liquidjs.
+
+## Get Started
+
+Install via npm:
```bash
npm install --save liquidjs
```
+```javascript
+var Liquid = require('liquidjs');
+var engine = new Liquid();
+
+engine
+ .parseAndRender('{{name | capitalize}}', {name: 'alice'})
+ .then(console.log); // outputs 'Alice'
+```
+
Or include the UMD build (You may need a [Promise polyfill][pp] for Node.js < 4 and ES5 browsers like [IE and Android UC][caniuse-promises]):
```html
@@ -25,9 +45,15 @@ Or include the UMD build (You may need a [Promise polyfill][pp] for Node.js <
```
-**The purpose of this repo** is to provide a standard Liquid implementation for the JavaScript community.
-All features, filters and tags in [shopify/liquid](https://github.com/Shopify/liquid) are supposed to be supported here,
-though there are still some differences:
+Also available from CLI:
+
+```bash
+echo '{{"hello" | capitalize}}' | npx liquidjs
+```
+
+For more tutorials and the full API, refer to the [wiki page](https://github.com/harttle/liquidjs/wiki).
+
+## Differences and Limitations
* Dynamic file locating (enabled by default), that means layout/partial names are treated as variables in liquidjs. See [#51](https://github.com/harttle/liquidjs/issues/51).
* Truthy and Falsy. All values except `undefined`, `null`, `false` are truthy, whereas in Ruby Liquid all except `nil` and `false` are truthy. See [#26](https://github.com/harttle/liquidjs/pull/26).
@@ -41,231 +67,51 @@ but there're some plugins available (feel free to add yours):
* color filters: https://github.com/harttle/liquidjs-color-filters
* sections tags (WIP): https://github.com/harttle/liquidjs-section-tags
-## TOC
+## Contributors β¨
-* Get Started
- * [Render from String](#render-from-string)
- * [Render from File](#render-from-file)
- * [Use with Express.js](#use-with-expressjs)
- * [Include Partials](#include-partials)
- * [Layout Templates (Extends)](#layout-templates-extends)
-* Demos
- * Node.js: [/demo/nodejs/](demo/nodejs/)
- * Browser: , [/demo/browser/](demo/browser/).
- * Express.js: [/demo/express/](demo/express/)
- * TypeScript: [/demo/typescript/](demo/typescript/)
- * React JS: [/demo/reactjs/](demo/reactjs/)
-* Advanced
- * [Options](#options)
- * [Register Filters](#register-filters), [Builtin Filters](https://github.com/harttle/liquidjs/wiki/Builtin-Filters)
- * [Register Tags](#register-tags), [Builtin Tags](https://github.com/harttle/liquidjs/wiki/Builtin-Tags)
- * [Operators](https://github.com/harttle/liquidjs/wiki/Operators)
- * [Whitespace Control](https://github.com/harttle/liquidjs/wiki/Whitespace-Control)
- * [Plugin API](#plugin-api)
-* [Contribute Guidelines](#contribute-guidelines)
+This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification.
+Contributions of any [kind](https://allcontributors.org/docs/en/emoji-key) are welcome!
+Thanks goes to these wonderful people:
-## Render from String
+
+
+
+
-Just render a template string with a context:
+
+
+
-```javascript
-var Liquid = require('liquidjs');
-var engine = new Liquid();
+[](https://opencollective.com/liquidjs/donate)
-engine
- .parseAndRender('{{name | capitalize}}', {name: 'alice'})
- .then(console.log); // outputs 'Alice'
-```
-
-Caching parsed templates:
-
-```javascript
-var tpl = engine.parse('{{name | capitalize}}');
-engine
- .render(tpl, {name: 'alice'})
- .then(console.log); // outputs 'Alice'
-```
-
-## Render from File
-
-```javascript
-var engine = new Liquid({
- root: path.resolve(__dirname, 'views/'), // root for layouts/includes lookup
- extname: '.liquid' // used for layouts/includes, defaults ""
-});
-engine
- .renderFile("hello", {name: 'alice'}) // will read and render `views/hello.liquid`
- .then(console.log) // outputs "Alice"
-```
-
-Or from the CLI:
-
-```bash
-echo '{{ "hello" | capitalize }}' | liquidjs
-```
-
-## Use with Express.js
-
-```javascript
-// register liquid engine
-app.engine('liquid', engine.express());
-app.set('views', './views'); // specify the views directory
-app.set('view engine', 'liquid'); // set to default
-```
-
-[`views`][express-views] in express.js will be included when looking up
-partials(includes and layouts).
-
-## Include Partials
-
-```
-// file: color.liquid
-color: '{{ color }}' shape: '{{ shape }}'
-
-// file: theme.liquid
-{% assign shape = 'circle' %}
-{% include 'color' %}
-{% include 'color' with 'red' %}
-{% include 'color', color: 'yellow', shape: 'square' %}
-```
-
-The output will be:
-
-```
-color: '' shape: 'circle'
-color: 'red' shape: 'circle'
-color: 'yellow' shape: 'square'
-```
-
-## Layout Templates (Extends)
-
-```
-// file: default-layout.liquid
-Header
-{% block content %}My default content{% endblock %}
-Footer
-
-// file: page.liquid
-{% layout "default-layout" %}
-{% block content %}My page content{% endblock %}
-```
-
-The output of `page.liquid`:
-
-```
-Header
-My page content
-Footer
-```
-
-* It's possible to define multiple blocks.
-* block name is optional when there's only one block.
-
-## Options
-
-The full list of options for `Liquid()` is listed as following:
-
-* `root` is a directory or an array of directories to resolve layouts and includes, as well as the filename passed in when calling `.renderFile()`.
-If an array, the files are looked up in the order they occur in the array.
-Defaults to `["."]`
-
-* `extname` is used to lookup the template file when filepath doesn't include an extension name. Eg: setting to `".html"` will allow including file by basename. Defaults to `""`.
-
-* `cache` indicates whether or not to cache resolved templates. Defaults to `false`.
-
-* `dynamicPartials`: if set, treat `` parameter in `{%include filepath %}`, `{%layout filepath%}` as a variable, otherwise as a literal value. Defaults to `true`.
-
-* `strictFilters` is used to enable strict filter existence. If set to `false`, undefined filters will be rendered as empty string. Otherwise, undefined filters will cause an exception. Defaults to `false`.
-
-* `strictVariables` is used to enable strict variable derivation.
-If set to `false`, undefined variables will be rendered as empty string.
-Otherwise, undefined variables will cause an exception. Defaults to `false`.
-
-* `trimTagRight` is used to strip blank characters (including ` `, `\t`, and `\r`) from the right of tags (`{% %}`) until `\n` (inclusive). Defaults to `false`.
-
-* `trimTagLeft` is similiar to `trimTagRight`, whereas the `\n` is exclusive. Defaults to `false`. See [Whitespace Control][whitespace control] for details.
-
-* `trimOutputRight` is used to strip blank characters (including ` `, `\t`, and `\r`) from the right of values (`{{ }}`) until `\n` (inclusive). Defaults to `false`.
-
-* `trimOutputLeft` is similiar to `trimOutputRight`, whereas the `\n` is exclusive. Defaults to `false`. See [Whitespace Control][whitespace control] for details.
-
-* `tagDelimiterLeft` and `tagDelimiterRight` are used to override the delimiter for liquid tags.
-
-* `outputDelimiterLeft` and `outputDelimiterRight` are used to override the delimiter for liquid outputs.
-
-* `greedy` is used to specify whether `trim*Left`/`trim*Right` is greedy. When set to `true`, all consecutive blank characters including `\n` will be trimed regardless of line breaks. Defaults to `true`.
-
-* `fs` is used to override the default file-system module with a custom implementation.
-
-## Register Filters
-
-```javascript
-// Usage: {{ name | uppper }}
-engine.registerFilter('upper', v => v.toUpperCase())
-```
-
-Filter arguments will be passed to the registered filter function, for example:
-
-```javascript
-// Usage: {{ 1 | add: 2, 3 }}
-engine.registerFilter('add', (initial, arg1, arg2) => initial + arg1 + arg2)
-```
-
-See existing filter implementations here:
-
-## Register Tags
-
-```javascript
-// Usage: {% upper name%}
-engine.registerTag('upper', {
- parse: function(tagToken, remainTokens) {
- this.str = tagToken.args; // name
- },
- render: async function(scope, hash) {
- var str = await Liquid.evalValue(this.str, scope); // 'alice'
- return str.toUpperCase() // 'Alice'
- }
-});
-```
-
-* `parse`: Read tokens from `remainTokens` until your end token.
-* `render`: Combine scope data with your parsed tokens into HTML string.
-
-See existing tag implementations here:
-
-## Plugin API
-
-A pack of tags or filters can be encapsulated into a **plugin**, which will be typically installed via npm.
-
-```javascript
-engine.plugin(require('./some-plugin'));
-
-// some-plugin.js
-module.exports = function (Liquid) {
- // here `this` refers to the engine instance
- // `Liquid` provides facilities to implement tags and filters
- this.registerFilter('foo', x => x);
-}
-```
-
-## Contribute Guidelines
-
-This repo uses [eslint](https://eslint.org/) to check code style, [semantic-release](https://github.com/semantic-release/semantic-release) to generate changelog and publish to npm and Github Releases.
-
-* Code Style: , `npm run lint` to check locally.
-* Commit Message:
-
-[nunjucks]: http://mozilla.github.io/nunjucks/
-[liquid-node]: https://github.com/sirlantis/liquid-node
[shopify/liquid]: https://shopify.github.io/liquid/
-[jekyll]: http://jekyllrb.com/
-[gh]: https://pages.github.com/
-[any-promise]: https://github.com/kevinbeaty/any-promise
-[test]: https://github.com/harttle/liquidjs/tree/master/test
[caniuse-promises]: http://caniuse.com/#feat=promises
-[whitespace control]: https://github.com/harttle/liquidjs/wiki/Whitespace-Control
-[tags]: https://github.com/harttle/liquidjs/wiki/Builtin-Tags
-[filters]: https://github.com/harttle/liquidjs/wiki/Builtin-Filters
-[express-views]: http://expressjs.com/en/guide/using-template-engines.html
[pp]: https://github.com/taylorhakes/promise-polyfill
-[tutorial]: https://shopify.github.io/liquid/basics/introduction/
+[tutorial]: https://shopify.github.io/liquid/basics/introduction/
\ No newline at end of file
diff --git a/docs/assets/css/main.css b/docs/assets/css/main.css
new file mode 100644
index 000000000..c771b8436
--- /dev/null
+++ b/docs/assets/css/main.css
@@ -0,0 +1,2333 @@
+/*! normalize.css v1.1.3 | MIT License | git.io/normalize */
+/* ==========================================================================
+ * HTML5 display definitions
+ * ========================================================================== */
+/**
+ * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3. */
+article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
+ display: block; }
+
+/**
+ * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. */
+audio, canvas, video {
+ display: inline-block;
+ *display: inline;
+ *zoom: 1; }
+
+/**
+ * Prevent modern browsers from displaying `audio` without controls.
+ * Remove excess height in iOS 5 devices. */
+audio:not([controls]) {
+ display: none;
+ height: 0; }
+
+/**
+ * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
+ * Known issue: no IE 6 support. */
+[hidden] {
+ display: none; }
+
+/* ==========================================================================
+ * Base
+ * ========================================================================== */
+/**
+ * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
+ * `em` units.
+ * 2. Prevent iOS text size adjust after orientation change, without disabling
+ * user zoom. */
+html {
+ font-size: 100%;
+ /* 1 */
+ -ms-text-size-adjust: 100%;
+ /* 2 */
+ -webkit-text-size-adjust: 100%;
+ /* 2 */
+ font-family: sans-serif; }
+
+/**
+ * Address `font-family` inconsistency between `textarea` and other form
+ * elements. */
+button, input, select, textarea {
+ font-family: sans-serif; }
+
+/**
+ * Address margins handled incorrectly in IE 6/7. */
+body {
+ margin: 0; }
+
+/* ==========================================================================
+ * Links
+ * ========================================================================== */
+/**
+ * Address `outline` inconsistency between Chrome and other browsers. */
+a:focus {
+ outline: thin dotted; }
+
+a:active, a:hover {
+ outline: 0; }
+
+/**
+ * Improve readability when focused and also mouse hovered in all browsers. */
+/* ==========================================================================
+ * Typography
+ * ========================================================================== */
+/**
+ * Address font sizes and margins set differently in IE 6/7.
+ * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
+ * and Chrome. */
+h1 {
+ font-size: 2em;
+ margin: 0.67em 0; }
+
+h2 {
+ font-size: 1.5em;
+ margin: 0.83em 0; }
+
+h3 {
+ font-size: 1.17em;
+ margin: 1em 0; }
+
+h4, .tsd-index-panel h3 {
+ font-size: 1em;
+ margin: 1.33em 0; }
+
+h5 {
+ font-size: 0.83em;
+ margin: 1.67em 0; }
+
+h6 {
+ font-size: 0.67em;
+ margin: 2.33em 0; }
+
+/**
+ * Address styling not present in IE 7/8/9, Safari 5, and Chrome. */
+abbr[title] {
+ border-bottom: 1px dotted; }
+
+/**
+ * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. */
+b, strong {
+ font-weight: bold; }
+
+blockquote {
+ margin: 1em 40px; }
+
+/**
+ * Address styling not present in Safari 5 and Chrome. */
+dfn {
+ font-style: italic; }
+
+/**
+ * Address differences between Firefox and other browsers.
+ * Known issue: no IE 6/7 normalization. */
+hr {
+ box-sizing: content-box;
+ height: 0; }
+
+/**
+ * Address styling not present in IE 6/7/8/9. */
+mark {
+ background: #ff0;
+ color: #000; }
+
+/**
+ * Address margins set differently in IE 6/7. */
+p, pre {
+ margin: 1em 0; }
+
+/**
+ * Correct font family set oddly in IE 6, Safari 4/5, and Chrome. */
+code, kbd, pre, samp {
+ font-family: monospace, serif;
+ _font-family: 'courier new', monospace;
+ font-size: 1em; }
+
+/**
+ * Improve readability of pre-formatted text in all browsers. */
+pre {
+ white-space: pre;
+ white-space: pre-wrap;
+ word-wrap: break-word; }
+
+/**
+ * Address CSS quotes not supported in IE 6/7. */
+q {
+ quotes: none; }
+ q:before, q:after {
+ content: '';
+ content: none; }
+
+/**
+ * Address `quotes` property not supported in Safari 4. */
+/**
+ * Address inconsistent and variable font size in all browsers. */
+small {
+ font-size: 80%; }
+
+/**
+ * Prevent `sub` and `sup` affecting `line-height` in all browsers. */
+sub {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline; }
+
+sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline;
+ top: -0.5em; }
+
+sub {
+ bottom: -0.25em; }
+
+/* ==========================================================================
+ * Lists
+ * ========================================================================== */
+/**
+ * Address margins set differently in IE 6/7. */
+dl, menu, ol, ul {
+ margin: 1em 0; }
+
+dd {
+ margin: 0 0 0 40px; }
+
+/**
+ * Address paddings set differently in IE 6/7. */
+menu, ol, ul {
+ padding: 0 0 0 40px; }
+
+/**
+ * Correct list images handled incorrectly in IE 7. */
+nav ul, nav ol {
+ list-style: none;
+ list-style-image: none; }
+
+/* ==========================================================================
+ * Embedded content
+ * ========================================================================== */
+/**
+ * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
+ * 2. Improve image quality when scaled in IE 7. */
+img {
+ border: 0;
+ /* 1 */
+ -ms-interpolation-mode: bicubic; }
+
+/* 2 */
+/**
+ * Correct overflow displayed oddly in IE 9. */
+svg:not(:root) {
+ overflow: hidden; }
+
+/* ==========================================================================
+ * Figures
+ * ========================================================================== */
+/**
+ * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. */
+figure, form {
+ margin: 0; }
+
+/* ==========================================================================
+ * Forms
+ * ========================================================================== */
+/**
+ * Correct margin displayed oddly in IE 6/7. */
+/**
+ * Define consistent border, margin, and padding. */
+fieldset {
+ border: 1px solid #c0c0c0;
+ margin: 0 2px;
+ padding: 0.35em 0.625em 0.75em; }
+
+/**
+ * 1. Correct color not being inherited in IE 6/7/8/9.
+ * 2. Correct text not wrapping in Firefox 3.
+ * 3. Correct alignment displayed oddly in IE 6/7. */
+legend {
+ border: 0;
+ /* 1 */
+ padding: 0;
+ white-space: normal;
+ /* 2 */
+ *margin-left: -7px; }
+
+/* 3 */
+/**
+ * 1. Correct font size not being inherited in all browsers.
+ * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
+ * and Chrome.
+ * 3. Improve appearance and consistency in all browsers. */
+button, input, select, textarea {
+ font-size: 100%;
+ /* 1 */
+ margin: 0;
+ /* 2 */
+ vertical-align: baseline;
+ /* 3 */
+ *vertical-align: middle; }
+
+/* 3 */
+/**
+ * Address Firefox 3+ setting `line-height` on `input` using `!important` in
+ * the UA stylesheet. */
+button, input {
+ line-height: normal; }
+
+/**
+ * Address inconsistent `text-transform` inheritance for `button` and `select`.
+ * All other form control elements do not inherit `text-transform` values.
+ * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
+ * Correct `select` style inheritance in Firefox 4+ and Opera. */
+button, select {
+ text-transform: none; }
+
+/**
+ * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
+ * and `video` controls.
+ * 2. Correct inability to style clickable `input` types in iOS.
+ * 3. Improve usability and consistency of cursor style between image-type
+ * `input` and others.
+ * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
+ * Known issue: inner spacing remains in IE 6. */
+button, html input[type="button"] {
+ -webkit-appearance: button;
+ /* 2 */
+ cursor: pointer;
+ /* 3 */
+ *overflow: visible; }
+
+/* 4 */
+input[type="reset"], input[type="submit"] {
+ -webkit-appearance: button;
+ /* 2 */
+ cursor: pointer;
+ /* 3 */
+ *overflow: visible; }
+
+/* 4 */
+/**
+ * Re-set default cursor for disabled elements. */
+button[disabled], html input[disabled] {
+ cursor: default; }
+
+/**
+ * 1. Address box sizing set to content-box in IE 8/9.
+ * 2. Remove excess padding in IE 8/9.
+ * 3. Remove excess padding in IE 7.
+ * Known issue: excess padding remains in IE 6. */
+input {
+ /* 3 */ }
+ input[type="checkbox"], input[type="radio"] {
+ box-sizing: border-box;
+ /* 1 */
+ padding: 0;
+ /* 2 */
+ *height: 13px;
+ /* 3 */
+ *width: 13px; }
+ input[type="search"] {
+ -webkit-appearance: textfield;
+ /* 1 */
+ /* 2 */
+ box-sizing: content-box; }
+ input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none; }
+
+/**
+ * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
+ * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
+ * (include `-moz` to future-proof). */
+/**
+ * Remove inner padding and search cancel button in Safari 5 and Chrome
+ * on OS X. */
+/**
+ * Remove inner padding and border in Firefox 3+. */
+button::-moz-focus-inner, input::-moz-focus-inner {
+ border: 0;
+ padding: 0; }
+
+/**
+ * 1. Remove default vertical scrollbar in IE 6/7/8/9.
+ * 2. Improve readability and alignment in all browsers. */
+textarea {
+ overflow: auto;
+ /* 1 */
+ vertical-align: top; }
+
+/* 2 */
+/* ==========================================================================
+ * Tables
+ * ========================================================================== */
+/**
+ * Remove most spacing between table cells. */
+table {
+ border-collapse: collapse;
+ border-spacing: 0; }
+
+/*
+ *
+ *Visual Studio-like style based on original C# coloring by Jason Diamond */
+.hljs {
+ display: inline-block;
+ padding: 0.5em;
+ background: white;
+ color: black; }
+
+.hljs-comment, .hljs-annotation, .hljs-template_comment, .diff .hljs-header, .hljs-chunk, .apache .hljs-cbracket {
+ color: #008000; }
+
+.hljs-keyword, .hljs-id, .hljs-built_in, .css .smalltalk .hljs-class, .hljs-winutils, .bash .hljs-variable, .tex .hljs-command, .hljs-request, .hljs-status, .nginx .hljs-title {
+ color: #00f; }
+
+.xml .hljs-tag {
+ color: #00f; }
+ .xml .hljs-tag .hljs-value {
+ color: #00f; }
+
+.hljs-string, .hljs-title, .hljs-parent, .hljs-tag .hljs-value, .hljs-rules .hljs-value {
+ color: #a31515; }
+
+.ruby .hljs-symbol {
+ color: #a31515; }
+ .ruby .hljs-symbol .hljs-string {
+ color: #a31515; }
+
+.hljs-template_tag, .django .hljs-variable, .hljs-addition, .hljs-flow, .hljs-stream, .apache .hljs-tag, .hljs-date, .tex .hljs-formula, .coffeescript .hljs-attribute {
+ color: #a31515; }
+
+.ruby .hljs-string, .hljs-decorator, .hljs-filter .hljs-argument, .hljs-localvars, .hljs-array, .hljs-attr_selector, .hljs-pseudo, .hljs-pi, .hljs-doctype, .hljs-deletion, .hljs-envvar, .hljs-shebang, .hljs-preprocessor, .hljs-pragma, .userType, .apache .hljs-sqbracket, .nginx .hljs-built_in, .tex .hljs-special, .hljs-prompt {
+ color: #2b91af; }
+
+.hljs-phpdoc, .hljs-javadoc, .hljs-xmlDocTag {
+ color: #808080; }
+
+.vhdl .hljs-typename {
+ font-weight: bold; }
+
+.vhdl .hljs-string {
+ color: #666666; }
+
+.vhdl .hljs-literal {
+ color: #a31515; }
+
+.vhdl .hljs-attribute {
+ color: #00b0e8; }
+
+.xml .hljs-attribute {
+ color: #f00; }
+
+.col > :first-child, .col-1 > :first-child, .col-2 > :first-child, .col-3 > :first-child, .col-4 > :first-child, .col-5 > :first-child, .col-6 > :first-child, .col-7 > :first-child, .col-8 > :first-child, .col-9 > :first-child, .col-10 > :first-child, .col-11 > :first-child, .tsd-panel > :first-child, ul.tsd-descriptions > li > :first-child,
+.col > :first-child > :first-child,
+.col-1 > :first-child > :first-child,
+.col-2 > :first-child > :first-child,
+.col-3 > :first-child > :first-child,
+.col-4 > :first-child > :first-child,
+.col-5 > :first-child > :first-child,
+.col-6 > :first-child > :first-child,
+.col-7 > :first-child > :first-child,
+.col-8 > :first-child > :first-child,
+.col-9 > :first-child > :first-child,
+.col-10 > :first-child > :first-child,
+.col-11 > :first-child > :first-child,
+.tsd-panel > :first-child > :first-child,
+ul.tsd-descriptions > li > :first-child > :first-child,
+.col > :first-child > :first-child > :first-child,
+.col-1 > :first-child > :first-child > :first-child,
+.col-2 > :first-child > :first-child > :first-child,
+.col-3 > :first-child > :first-child > :first-child,
+.col-4 > :first-child > :first-child > :first-child,
+.col-5 > :first-child > :first-child > :first-child,
+.col-6 > :first-child > :first-child > :first-child,
+.col-7 > :first-child > :first-child > :first-child,
+.col-8 > :first-child > :first-child > :first-child,
+.col-9 > :first-child > :first-child > :first-child,
+.col-10 > :first-child > :first-child > :first-child,
+.col-11 > :first-child > :first-child > :first-child,
+.tsd-panel > :first-child > :first-child > :first-child,
+ul.tsd-descriptions > li > :first-child > :first-child > :first-child {
+ margin-top: 0; }
+
+.col > :last-child, .col-1 > :last-child, .col-2 > :last-child, .col-3 > :last-child, .col-4 > :last-child, .col-5 > :last-child, .col-6 > :last-child, .col-7 > :last-child, .col-8 > :last-child, .col-9 > :last-child, .col-10 > :last-child, .col-11 > :last-child, .tsd-panel > :last-child, ul.tsd-descriptions > li > :last-child,
+.col > :last-child > :last-child,
+.col-1 > :last-child > :last-child,
+.col-2 > :last-child > :last-child,
+.col-3 > :last-child > :last-child,
+.col-4 > :last-child > :last-child,
+.col-5 > :last-child > :last-child,
+.col-6 > :last-child > :last-child,
+.col-7 > :last-child > :last-child,
+.col-8 > :last-child > :last-child,
+.col-9 > :last-child > :last-child,
+.col-10 > :last-child > :last-child,
+.col-11 > :last-child > :last-child,
+.tsd-panel > :last-child > :last-child,
+ul.tsd-descriptions > li > :last-child > :last-child,
+.col > :last-child > :last-child > :last-child,
+.col-1 > :last-child > :last-child > :last-child,
+.col-2 > :last-child > :last-child > :last-child,
+.col-3 > :last-child > :last-child > :last-child,
+.col-4 > :last-child > :last-child > :last-child,
+.col-5 > :last-child > :last-child > :last-child,
+.col-6 > :last-child > :last-child > :last-child,
+.col-7 > :last-child > :last-child > :last-child,
+.col-8 > :last-child > :last-child > :last-child,
+.col-9 > :last-child > :last-child > :last-child,
+.col-10 > :last-child > :last-child > :last-child,
+.col-11 > :last-child > :last-child > :last-child,
+.tsd-panel > :last-child > :last-child > :last-child,
+ul.tsd-descriptions > li > :last-child > :last-child > :last-child {
+ margin-bottom: 0; }
+
+.container {
+ max-width: 1200px;
+ margin: 0 auto;
+ padding: 0 40px; }
+ @media (max-width: 640px) {
+ .container {
+ padding: 0 20px; } }
+
+.container-main {
+ padding-bottom: 200px; }
+
+.row {
+ position: relative;
+ margin: 0 -10px; }
+ .row:after {
+ visibility: hidden;
+ display: block;
+ content: "";
+ clear: both;
+ height: 0; }
+
+.col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11 {
+ box-sizing: border-box;
+ float: left;
+ padding: 0 10px; }
+
+.col-1 {
+ width: 8.3333333333%; }
+
+.offset-1 {
+ margin-left: 8.3333333333%; }
+
+.col-2 {
+ width: 16.6666666667%; }
+
+.offset-2 {
+ margin-left: 16.6666666667%; }
+
+.col-3 {
+ width: 25%; }
+
+.offset-3 {
+ margin-left: 25%; }
+
+.col-4 {
+ width: 33.3333333333%; }
+
+.offset-4 {
+ margin-left: 33.3333333333%; }
+
+.col-5 {
+ width: 41.6666666667%; }
+
+.offset-5 {
+ margin-left: 41.6666666667%; }
+
+.col-6 {
+ width: 50%; }
+
+.offset-6 {
+ margin-left: 50%; }
+
+.col-7 {
+ width: 58.3333333333%; }
+
+.offset-7 {
+ margin-left: 58.3333333333%; }
+
+.col-8 {
+ width: 66.6666666667%; }
+
+.offset-8 {
+ margin-left: 66.6666666667%; }
+
+.col-9 {
+ width: 75%; }
+
+.offset-9 {
+ margin-left: 75%; }
+
+.col-10 {
+ width: 83.3333333333%; }
+
+.offset-10 {
+ margin-left: 83.3333333333%; }
+
+.col-11 {
+ width: 91.6666666667%; }
+
+.offset-11 {
+ margin-left: 91.6666666667%; }
+
+.tsd-kind-icon {
+ display: block;
+ position: relative;
+ padding-left: 20px;
+ text-indent: -20px; }
+ .tsd-kind-icon:before {
+ content: '';
+ display: inline-block;
+ vertical-align: middle;
+ width: 17px;
+ height: 17px;
+ margin: 0 3px 2px 0;
+ background-image: url(../images/icons.png); }
+ @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) {
+ .tsd-kind-icon:before {
+ background-image: url(../images/icons@2x.png);
+ background-size: 238px 204px; } }
+
+.tsd-signature.tsd-kind-icon:before {
+ background-position: 0 -153px; }
+
+.tsd-kind-object-literal > .tsd-kind-icon:before {
+ background-position: 0px -17px; }
+
+.tsd-kind-object-literal.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -17px; }
+
+.tsd-kind-object-literal.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -17px; }
+
+.tsd-kind-class > .tsd-kind-icon:before {
+ background-position: 0px -34px; }
+
+.tsd-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -34px; }
+
+.tsd-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -34px; }
+
+.tsd-kind-class.tsd-has-type-parameter > .tsd-kind-icon:before {
+ background-position: 0px -51px; }
+
+.tsd-kind-class.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -51px; }
+
+.tsd-kind-class.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -51px; }
+
+.tsd-kind-interface > .tsd-kind-icon:before {
+ background-position: 0px -68px; }
+
+.tsd-kind-interface.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -68px; }
+
+.tsd-kind-interface.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -68px; }
+
+.tsd-kind-interface.tsd-has-type-parameter > .tsd-kind-icon:before {
+ background-position: 0px -85px; }
+
+.tsd-kind-interface.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -85px; }
+
+.tsd-kind-interface.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -85px; }
+
+.tsd-kind-module > .tsd-kind-icon:before {
+ background-position: 0px -102px; }
+
+.tsd-kind-module.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -102px; }
+
+.tsd-kind-module.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -102px; }
+
+.tsd-kind-external-module > .tsd-kind-icon:before {
+ background-position: 0px -102px; }
+
+.tsd-kind-external-module.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -102px; }
+
+.tsd-kind-external-module.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -102px; }
+
+.tsd-kind-enum > .tsd-kind-icon:before {
+ background-position: 0px -119px; }
+
+.tsd-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -119px; }
+
+.tsd-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -119px; }
+
+.tsd-kind-enum-member > .tsd-kind-icon:before {
+ background-position: 0px -136px; }
+
+.tsd-kind-enum-member.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -136px; }
+
+.tsd-kind-enum-member.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -136px; }
+
+.tsd-kind-signature > .tsd-kind-icon:before {
+ background-position: 0px -153px; }
+
+.tsd-kind-signature.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -153px; }
+
+.tsd-kind-signature.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -153px; }
+
+.tsd-kind-type-alias > .tsd-kind-icon:before {
+ background-position: 0px -170px; }
+
+.tsd-kind-type-alias.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -170px; }
+
+.tsd-kind-type-alias.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -170px; }
+
+.tsd-kind-type-alias.tsd-has-type-parameter > .tsd-kind-icon:before {
+ background-position: 0px -187px; }
+
+.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -17px -187px; }
+
+.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -34px -187px; }
+
+.tsd-kind-variable > .tsd-kind-icon:before {
+ background-position: -136px -0px; }
+
+.tsd-kind-variable.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -0px; }
+
+.tsd-kind-variable.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -0px; }
+
+.tsd-kind-variable.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -0px; }
+
+.tsd-kind-property > .tsd-kind-icon:before {
+ background-position: -136px -0px; }
+
+.tsd-kind-property.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -0px; }
+
+.tsd-kind-property.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -0px; }
+
+.tsd-kind-property.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -0px; }
+
+.tsd-kind-get-signature > .tsd-kind-icon:before {
+ background-position: -136px -17px; }
+
+.tsd-kind-get-signature.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -17px; }
+
+.tsd-kind-get-signature.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -17px; }
+
+.tsd-kind-get-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -17px; }
+
+.tsd-kind-set-signature > .tsd-kind-icon:before {
+ background-position: -136px -34px; }
+
+.tsd-kind-set-signature.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -34px; }
+
+.tsd-kind-set-signature.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -34px; }
+
+.tsd-kind-set-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -34px; }
+
+.tsd-kind-accessor > .tsd-kind-icon:before {
+ background-position: -136px -51px; }
+
+.tsd-kind-accessor.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -51px; }
+
+.tsd-kind-accessor.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -51px; }
+
+.tsd-kind-accessor.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -51px; }
+
+.tsd-kind-function > .tsd-kind-icon:before {
+ background-position: -136px -68px; }
+
+.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -68px; }
+
+.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -68px; }
+
+.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -68px; }
+
+.tsd-kind-method > .tsd-kind-icon:before {
+ background-position: -136px -68px; }
+
+.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -68px; }
+
+.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -68px; }
+
+.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -68px; }
+
+.tsd-kind-call-signature > .tsd-kind-icon:before {
+ background-position: -136px -68px; }
+
+.tsd-kind-call-signature.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -68px; }
+
+.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -68px; }
+
+.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -68px; }
+
+.tsd-kind-function.tsd-has-type-parameter > .tsd-kind-icon:before {
+ background-position: -136px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -85px; }
+
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter > .tsd-kind-icon:before {
+ background-position: -136px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -85px; }
+
+.tsd-kind-constructor > .tsd-kind-icon:before {
+ background-position: -136px -102px; }
+
+.tsd-kind-constructor.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -102px; }
+
+.tsd-kind-constructor.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -102px; }
+
+.tsd-kind-constructor.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -102px; }
+
+.tsd-kind-constructor-signature > .tsd-kind-icon:before {
+ background-position: -136px -102px; }
+
+.tsd-kind-constructor-signature.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -102px; }
+
+.tsd-kind-constructor-signature.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -102px; }
+
+.tsd-kind-constructor-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -102px; }
+
+.tsd-kind-index-signature > .tsd-kind-icon:before {
+ background-position: -136px -119px; }
+
+.tsd-kind-index-signature.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -119px; }
+
+.tsd-kind-index-signature.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -119px; }
+
+.tsd-kind-index-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -119px; }
+
+.tsd-kind-event > .tsd-kind-icon:before {
+ background-position: -136px -136px; }
+
+.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -136px; }
+
+.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -136px; }
+
+.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -136px; }
+
+.tsd-is-static > .tsd-kind-icon:before {
+ background-position: -136px -153px; }
+
+.tsd-is-static.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -153px; }
+
+.tsd-is-static.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -153px; }
+
+.tsd-is-static.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -153px; }
+
+.tsd-is-static.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -153px; }
+
+.tsd-is-static.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -153px; }
+
+.tsd-is-static.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -153px; }
+
+.tsd-is-static.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -153px; }
+
+.tsd-is-static.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -153px; }
+
+.tsd-is-static.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -153px; }
+
+.tsd-is-static.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -153px; }
+
+.tsd-is-static.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -153px; }
+
+.tsd-is-static.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -153px; }
+
+.tsd-is-static.tsd-kind-function > .tsd-kind-icon:before {
+ background-position: -136px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -170px; }
+
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -170px; }
+
+.tsd-is-static.tsd-kind-method > .tsd-kind-icon:before {
+ background-position: -136px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -170px; }
+
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature > .tsd-kind-icon:before {
+ background-position: -136px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -170px; }
+
+.tsd-is-static.tsd-kind-event > .tsd-kind-icon:before {
+ background-position: -136px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -153px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before {
+ background-position: -51px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -68px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -85px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -102px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before {
+ background-position: -170px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before {
+ background-position: -187px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before {
+ background-position: -119px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface > .tsd-kind-icon:before {
+ background-position: -204px -187px; }
+
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before {
+ background-position: -221px -187px; }
+
+.no-transition {
+ transition: none !important; }
+
+@keyframes fade-in {
+ from {
+ opacity: 0; }
+ to {
+ opacity: 1; } }
+
+@keyframes fade-out {
+ from {
+ opacity: 1;
+ visibility: visible; }
+ to {
+ opacity: 0; } }
+
+@keyframes fade-in-delayed {
+ 0% {
+ opacity: 0; }
+ 33% {
+ opacity: 0; }
+ 100% {
+ opacity: 1; } }
+
+@keyframes fade-out-delayed {
+ 0% {
+ opacity: 1;
+ visibility: visible; }
+ 66% {
+ opacity: 0; }
+ 100% {
+ opacity: 0; } }
+
+@keyframes shift-to-left {
+ from {
+ transform: translate(0, 0); }
+ to {
+ transform: translate(-25%, 0); } }
+
+@keyframes unshift-to-left {
+ from {
+ transform: translate(-25%, 0); }
+ to {
+ transform: translate(0, 0); } }
+
+@keyframes pop-in-from-right {
+ from {
+ transform: translate(100%, 0); }
+ to {
+ transform: translate(0, 0); } }
+
+@keyframes pop-out-to-right {
+ from {
+ transform: translate(0, 0);
+ visibility: visible; }
+ to {
+ transform: translate(100%, 0); } }
+
+body {
+ background: #fdfdfd;
+ font-family: "Segoe UI", sans-serif;
+ font-size: 16px;
+ color: #222; }
+
+a {
+ color: #4da6ff;
+ text-decoration: none; }
+ a:hover {
+ text-decoration: underline; }
+
+code, pre {
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
+ padding: 0.2em;
+ margin: 0;
+ font-size: 14px;
+ background-color: rgba(0, 0, 0, 0.04); }
+
+pre {
+ padding: 10px; }
+ pre code {
+ padding: 0;
+ font-size: 100%;
+ background-color: transparent; }
+
+.tsd-typography {
+ line-height: 1.333em; }
+ .tsd-typography ul {
+ list-style: square;
+ padding: 0 0 0 20px;
+ margin: 0; }
+ .tsd-typography h4, .tsd-typography .tsd-index-panel h3, .tsd-index-panel .tsd-typography h3, .tsd-typography h5, .tsd-typography h6 {
+ font-size: 1em;
+ margin: 0; }
+ .tsd-typography h5, .tsd-typography h6 {
+ font-weight: normal; }
+ .tsd-typography p, .tsd-typography ul, .tsd-typography ol {
+ margin: 1em 0; }
+
+@media (min-width: 901px) and (max-width: 1024px) {
+ html.default .col-content {
+ width: 72%; }
+ html.default .col-menu {
+ width: 28%; }
+ html.default .tsd-navigation {
+ padding-left: 10px; } }
+
+@media (max-width: 900px) {
+ html.default .col-content {
+ float: none;
+ width: 100%; }
+ html.default .col-menu {
+ position: fixed !important;
+ overflow: auto;
+ -webkit-overflow-scrolling: touch;
+ overflow-scrolling: touch;
+ z-index: 1024;
+ top: 0 !important;
+ bottom: 0 !important;
+ left: auto !important;
+ right: 0 !important;
+ width: 100%;
+ padding: 20px 20px 0 0;
+ max-width: 450px;
+ visibility: hidden;
+ background-color: #fff;
+ transform: translate(100%, 0); }
+ html.default .col-menu > *:last-child {
+ padding-bottom: 20px; }
+ html.default .overlay {
+ content: '';
+ display: block;
+ position: fixed;
+ z-index: 1023;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ background-color: rgba(0, 0, 0, 0.75);
+ visibility: hidden; }
+ html.default.to-has-menu .overlay {
+ animation: fade-in 0.4s; }
+ html.default.to-has-menu header,
+ html.default.to-has-menu footer,
+ html.default.to-has-menu .col-content {
+ animation: shift-to-left 0.4s; }
+ html.default.to-has-menu .col-menu {
+ animation: pop-in-from-right 0.4s; }
+ html.default.from-has-menu .overlay {
+ animation: fade-out 0.4s; }
+ html.default.from-has-menu header,
+ html.default.from-has-menu footer,
+ html.default.from-has-menu .col-content {
+ animation: unshift-to-left 0.4s; }
+ html.default.from-has-menu .col-menu {
+ animation: pop-out-to-right 0.4s; }
+ html.default.has-menu body {
+ overflow: hidden; }
+ html.default.has-menu .overlay {
+ visibility: visible; }
+ html.default.has-menu header,
+ html.default.has-menu footer,
+ html.default.has-menu .col-content {
+ transform: translate(-25%, 0); }
+ html.default.has-menu .col-menu {
+ visibility: visible;
+ transform: translate(0, 0); } }
+
+.tsd-page-title {
+ padding: 70px 0 20px 0;
+ margin: 0 0 40px 0;
+ background: #fff;
+ box-shadow: 0 0 5px rgba(0, 0, 0, 0.35); }
+ .tsd-page-title h1 {
+ margin: 0; }
+
+.tsd-breadcrumb {
+ margin: 0;
+ padding: 0;
+ color: #808080; }
+ .tsd-breadcrumb a {
+ color: #808080;
+ text-decoration: none; }
+ .tsd-breadcrumb a:hover {
+ text-decoration: underline; }
+ .tsd-breadcrumb li {
+ display: inline; }
+ .tsd-breadcrumb li:after {
+ content: ' / '; }
+
+html.minimal .container {
+ margin: 0; }
+
+html.minimal .container-main {
+ padding-top: 50px;
+ padding-bottom: 0; }
+
+html.minimal .content-wrap {
+ padding-left: 300px; }
+
+html.minimal .tsd-navigation {
+ position: fixed !important;
+ overflow: auto;
+ -webkit-overflow-scrolling: touch;
+ overflow-scrolling: touch;
+ box-sizing: border-box;
+ z-index: 1;
+ left: 0;
+ top: 40px;
+ bottom: 0;
+ width: 300px;
+ padding: 20px;
+ margin: 0; }
+
+html.minimal .tsd-member .tsd-member {
+ margin-left: 0; }
+
+html.minimal .tsd-page-toolbar {
+ position: fixed;
+ z-index: 2; }
+
+html.minimal #tsd-filter .tsd-filter-group {
+ right: 0;
+ transform: none; }
+
+html.minimal footer {
+ background-color: transparent; }
+ html.minimal footer .container {
+ padding: 0; }
+
+html.minimal .tsd-generator {
+ padding: 0; }
+
+@media (max-width: 900px) {
+ html.minimal .tsd-navigation {
+ display: none; }
+ html.minimal .content-wrap {
+ padding-left: 0; } }
+
+dl.tsd-comment-tags {
+ overflow: hidden; }
+ dl.tsd-comment-tags dt {
+ float: left;
+ padding: 1px 5px;
+ margin: 0 10px 0 0;
+ border-radius: 4px;
+ border: 1px solid #808080;
+ color: #808080;
+ font-size: 0.8em;
+ font-weight: normal; }
+ dl.tsd-comment-tags dd {
+ margin: 0 0 10px 0; }
+ dl.tsd-comment-tags dd:before, dl.tsd-comment-tags dd:after {
+ display: table;
+ content: " "; }
+ dl.tsd-comment-tags dd pre, dl.tsd-comment-tags dd:after {
+ clear: both; }
+ dl.tsd-comment-tags p {
+ margin: 0; }
+
+.tsd-panel.tsd-comment .lead {
+ font-size: 1.1em;
+ line-height: 1.333em;
+ margin-bottom: 2em; }
+ .tsd-panel.tsd-comment .lead:last-child {
+ margin-bottom: 0; }
+
+.toggle-protected .tsd-is-private {
+ display: none; }
+
+.toggle-public .tsd-is-private,
+.toggle-public .tsd-is-protected,
+.toggle-public .tsd-is-private-protected {
+ display: none; }
+
+.toggle-inherited .tsd-is-inherited {
+ display: none; }
+
+.toggle-only-exported .tsd-is-not-exported {
+ display: none; }
+
+.toggle-externals .tsd-is-external {
+ display: none; }
+
+#tsd-filter {
+ position: relative;
+ display: inline-block;
+ height: 40px;
+ vertical-align: bottom; }
+ .no-filter #tsd-filter {
+ display: none; }
+ #tsd-filter .tsd-filter-group {
+ display: inline-block;
+ height: 40px;
+ vertical-align: bottom;
+ white-space: nowrap; }
+ #tsd-filter input {
+ display: none; }
+ @media (max-width: 900px) {
+ #tsd-filter .tsd-filter-group {
+ display: block;
+ position: absolute;
+ top: 40px;
+ right: 20px;
+ height: auto;
+ background-color: #fff;
+ visibility: hidden;
+ transform: translate(50%, 0);
+ box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); }
+ .has-options #tsd-filter .tsd-filter-group {
+ visibility: visible; }
+ .to-has-options #tsd-filter .tsd-filter-group {
+ animation: fade-in 0.2s; }
+ .from-has-options #tsd-filter .tsd-filter-group {
+ animation: fade-out 0.2s; }
+ #tsd-filter label,
+ #tsd-filter .tsd-select {
+ display: block;
+ padding-right: 20px; } }
+
+footer {
+ border-top: 1px solid #eee;
+ background-color: #fff; }
+ footer.with-border-bottom {
+ border-bottom: 1px solid #eee; }
+ footer .tsd-legend-group {
+ font-size: 0; }
+ footer .tsd-legend {
+ display: inline-block;
+ width: 25%;
+ padding: 0;
+ font-size: 16px;
+ list-style: none;
+ line-height: 1.333em;
+ vertical-align: top; }
+ @media (max-width: 900px) {
+ footer .tsd-legend {
+ width: 50%; } }
+
+.tsd-hierarchy {
+ list-style: square;
+ padding: 0 0 0 20px;
+ margin: 0; }
+ .tsd-hierarchy .target {
+ font-weight: bold; }
+
+.tsd-index-panel .tsd-index-content {
+ margin-bottom: -30px !important; }
+
+.tsd-index-panel .tsd-index-section {
+ margin-bottom: 30px !important; }
+
+.tsd-index-panel h3 {
+ margin: 0 -20px 10px -20px;
+ padding: 0 20px 10px 20px;
+ border-bottom: 1px solid #eee; }
+
+.tsd-index-panel ul.tsd-index-list {
+ -moz-column-count: 3;
+ -ms-column-count: 3;
+ -o-column-count: 3;
+ column-count: 3;
+ -moz-column-gap: 20px;
+ -ms-column-gap: 20px;
+ -o-column-gap: 20px;
+ column-gap: 20px;
+ padding: 0;
+ list-style: none;
+ line-height: 1.333em; }
+ @media (max-width: 900px) {
+ .tsd-index-panel ul.tsd-index-list {
+ -moz-column-count: 1;
+ -ms-column-count: 1;
+ -o-column-count: 1;
+ column-count: 1; } }
+ @media (min-width: 901px) and (max-width: 1024px) {
+ .tsd-index-panel ul.tsd-index-list {
+ -moz-column-count: 2;
+ -ms-column-count: 2;
+ -o-column-count: 2;
+ column-count: 2; } }
+ .tsd-index-panel ul.tsd-index-list li {
+ -webkit-column-break-inside: avoid;
+ -moz-column-break-inside: avoid;
+ -ms-column-break-inside: avoid;
+ -o-column-break-inside: avoid;
+ column-break-inside: avoid;
+ -webkit-page-break-inside: avoid;
+ -moz-page-break-inside: avoid;
+ -ms-page-break-inside: avoid;
+ -o-page-break-inside: avoid;
+ page-break-inside: avoid; }
+
+.tsd-index-panel a,
+.tsd-index-panel .tsd-parent-kind-module a {
+ color: #9600ff; }
+
+.tsd-index-panel .tsd-parent-kind-interface a {
+ color: #7da01f; }
+
+.tsd-index-panel .tsd-parent-kind-enum a {
+ color: #cc9900; }
+
+.tsd-index-panel .tsd-parent-kind-class a {
+ color: #4da6ff; }
+
+.tsd-index-panel .tsd-kind-module a {
+ color: #9600ff; }
+
+.tsd-index-panel .tsd-kind-interface a {
+ color: #7da01f; }
+
+.tsd-index-panel .tsd-kind-enum a {
+ color: #cc9900; }
+
+.tsd-index-panel .tsd-kind-class a {
+ color: #4da6ff; }
+
+.tsd-index-panel .tsd-is-private a {
+ color: #808080; }
+
+.tsd-flag {
+ display: inline-block;
+ padding: 1px 5px;
+ border-radius: 4px;
+ color: #fff;
+ background-color: #808080;
+ text-indent: 0;
+ font-size: 14px;
+ font-weight: normal; }
+
+.tsd-anchor {
+ position: absolute;
+ top: -100px; }
+
+.tsd-member {
+ position: relative; }
+ .tsd-member .tsd-anchor + h3 {
+ margin-top: 0;
+ margin-bottom: 0;
+ border-bottom: none; }
+
+.tsd-navigation {
+ padding: 0 0 0 40px; }
+ .tsd-navigation a {
+ display: block;
+ padding-top: 2px;
+ padding-bottom: 2px;
+ border-left: 2px solid transparent;
+ color: #222;
+ text-decoration: none;
+ transition: border-left-color 0.1s; }
+ .tsd-navigation a:hover {
+ text-decoration: underline; }
+ .tsd-navigation ul {
+ margin: 0;
+ padding: 0;
+ list-style: none; }
+ .tsd-navigation li {
+ padding: 0; }
+
+.tsd-navigation.primary {
+ padding-bottom: 40px; }
+ .tsd-navigation.primary a {
+ display: block;
+ padding-top: 6px;
+ padding-bottom: 6px; }
+ .tsd-navigation.primary ul li a {
+ padding-left: 5px; }
+ .tsd-navigation.primary ul li li a {
+ padding-left: 25px; }
+ .tsd-navigation.primary ul li li li a {
+ padding-left: 45px; }
+ .tsd-navigation.primary ul li li li li a {
+ padding-left: 65px; }
+ .tsd-navigation.primary ul li li li li li a {
+ padding-left: 85px; }
+ .tsd-navigation.primary ul li li li li li li a {
+ padding-left: 105px; }
+ .tsd-navigation.primary > ul {
+ border-bottom: 1px solid #eee; }
+ .tsd-navigation.primary li {
+ border-top: 1px solid #eee; }
+ .tsd-navigation.primary li.current > a {
+ font-weight: bold; }
+ .tsd-navigation.primary li.label span {
+ display: block;
+ padding: 20px 0 6px 5px;
+ color: #808080; }
+ .tsd-navigation.primary li.globals + li > span,
+ .tsd-navigation.primary li.globals + li > a {
+ padding-top: 20px; }
+
+.tsd-navigation.secondary ul {
+ transition: opacity 0.2s; }
+ .tsd-navigation.secondary ul li a {
+ padding-left: 25px; }
+ .tsd-navigation.secondary ul li li a {
+ padding-left: 45px; }
+ .tsd-navigation.secondary ul li li li a {
+ padding-left: 65px; }
+ .tsd-navigation.secondary ul li li li li a {
+ padding-left: 85px; }
+ .tsd-navigation.secondary ul li li li li li a {
+ padding-left: 105px; }
+ .tsd-navigation.secondary ul li li li li li li a {
+ padding-left: 125px; }
+ .tsd-navigation.secondary ul.current a {
+ border-left-color: #eee; }
+
+.tsd-navigation.secondary li.focus > a,
+.tsd-navigation.secondary ul.current li.focus > a {
+ border-left-color: #000; }
+
+.tsd-navigation.secondary li.current {
+ margin-top: 20px;
+ margin-bottom: 20px;
+ border-left-color: #eee; }
+ .tsd-navigation.secondary li.current > a {
+ font-weight: bold; }
+
+@media (min-width: 901px) {
+ .menu-sticky-wrap {
+ position: static; }
+ .no-csspositionsticky .menu-sticky-wrap.sticky {
+ position: fixed; }
+ .no-csspositionsticky .menu-sticky-wrap.sticky-current {
+ position: fixed; }
+ .no-csspositionsticky .menu-sticky-wrap.sticky-current ul.before-current,
+ .no-csspositionsticky .menu-sticky-wrap.sticky-current ul.after-current {
+ opacity: 0; }
+ .no-csspositionsticky .menu-sticky-wrap.sticky-bottom {
+ position: absolute;
+ top: auto !important;
+ left: auto !important;
+ bottom: 0;
+ right: 0; }
+ .csspositionsticky .menu-sticky-wrap.sticky {
+ position: -webkit-sticky;
+ position: sticky; }
+ .csspositionsticky .menu-sticky-wrap.sticky-current {
+ position: -webkit-sticky;
+ position: sticky; } }
+
+.tsd-panel {
+ margin: 20px 0;
+ padding: 20px;
+ background-color: #fff;
+ box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); }
+ .tsd-panel:empty {
+ display: none; }
+ .tsd-panel > h1, .tsd-panel > h2, .tsd-panel > h3 {
+ margin: 1.5em -20px 10px -20px;
+ padding: 0 20px 10px 20px;
+ border-bottom: 1px solid #eee; }
+ .tsd-panel > h1.tsd-before-signature, .tsd-panel > h2.tsd-before-signature, .tsd-panel > h3.tsd-before-signature {
+ margin-bottom: 0;
+ border-bottom: 0; }
+ .tsd-panel table {
+ display: block;
+ width: 100%;
+ overflow: auto;
+ margin-top: 10px;
+ word-break: normal;
+ word-break: keep-all; }
+ .tsd-panel table th {
+ font-weight: bold; }
+ .tsd-panel table th, .tsd-panel table td {
+ padding: 6px 13px;
+ border: 1px solid #ddd; }
+ .tsd-panel table tr {
+ background-color: #fff;
+ border-top: 1px solid #ccc; }
+ .tsd-panel table tr:nth-child(2n) {
+ background-color: #f8f8f8; }
+
+.tsd-panel-group {
+ margin: 60px 0; }
+ .tsd-panel-group > h1, .tsd-panel-group > h2, .tsd-panel-group > h3 {
+ padding-left: 20px;
+ padding-right: 20px; }
+
+#tsd-search {
+ transition: background-color 0.2s; }
+ #tsd-search .title {
+ position: relative;
+ z-index: 2; }
+ #tsd-search .field {
+ position: absolute;
+ left: 0;
+ top: 0;
+ right: 40px;
+ height: 40px; }
+ #tsd-search .field input {
+ box-sizing: border-box;
+ position: relative;
+ top: -50px;
+ z-index: 1;
+ width: 100%;
+ padding: 0 10px;
+ opacity: 0;
+ outline: 0;
+ border: 0;
+ background: transparent;
+ color: #222; }
+ #tsd-search .field label {
+ position: absolute;
+ overflow: hidden;
+ right: -40px; }
+ #tsd-search .field input,
+ #tsd-search .title {
+ transition: opacity 0.2s; }
+ #tsd-search .results {
+ position: absolute;
+ visibility: hidden;
+ top: 40px;
+ width: 100%;
+ margin: 0;
+ padding: 0;
+ list-style: none;
+ box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); }
+ #tsd-search .results li {
+ padding: 0 10px;
+ background-color: #fdfdfd; }
+ #tsd-search .results li:nth-child(even) {
+ background-color: #fff; }
+ #tsd-search .results li.state {
+ display: none; }
+ #tsd-search .results li.current,
+ #tsd-search .results li:hover {
+ background-color: #eee; }
+ #tsd-search .results a {
+ display: block; }
+ #tsd-search .results a:before {
+ top: 10px; }
+ #tsd-search .results span.parent {
+ color: #808080;
+ font-weight: normal; }
+ #tsd-search.has-focus {
+ background-color: #eee; }
+ #tsd-search.has-focus .field input {
+ top: 0;
+ opacity: 1; }
+ #tsd-search.has-focus .title {
+ z-index: 0;
+ opacity: 0; }
+ #tsd-search.has-focus .results {
+ visibility: visible; }
+ #tsd-search.loading .results li.state.loading {
+ display: block; }
+ #tsd-search.failure .results li.state.failure {
+ display: block; }
+
+.tsd-signature {
+ margin: 0 0 1em 0;
+ padding: 10px;
+ border: 1px solid #eee;
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
+ font-size: 14px; }
+ .tsd-signature.tsd-kind-icon {
+ padding-left: 30px; }
+ .tsd-signature.tsd-kind-icon:before {
+ top: 10px;
+ left: 10px; }
+ .tsd-panel > .tsd-signature {
+ margin-left: -20px;
+ margin-right: -20px;
+ border-width: 1px 0; }
+ .tsd-panel > .tsd-signature.tsd-kind-icon {
+ padding-left: 40px; }
+ .tsd-panel > .tsd-signature.tsd-kind-icon:before {
+ left: 20px; }
+
+.tsd-signature-symbol {
+ color: #808080;
+ font-weight: normal; }
+
+.tsd-signature-type {
+ font-style: italic;
+ font-weight: normal; }
+
+.tsd-signatures {
+ padding: 0;
+ margin: 0 0 1em 0;
+ border: 1px solid #eee; }
+ .tsd-signatures .tsd-signature {
+ margin: 0;
+ border-width: 1px 0 0 0;
+ transition: background-color 0.1s; }
+ .tsd-signatures .tsd-signature:first-child {
+ border-top-width: 0; }
+ .tsd-signatures .tsd-signature.current {
+ background-color: #eee; }
+ .tsd-signatures.active > .tsd-signature {
+ cursor: pointer; }
+ .tsd-panel > .tsd-signatures {
+ margin-left: -20px;
+ margin-right: -20px;
+ border-width: 1px 0; }
+ .tsd-panel > .tsd-signatures .tsd-signature.tsd-kind-icon {
+ padding-left: 40px; }
+ .tsd-panel > .tsd-signatures .tsd-signature.tsd-kind-icon:before {
+ left: 20px; }
+ .tsd-panel > a.anchor + .tsd-signatures {
+ border-top-width: 0;
+ margin-top: -20px; }
+
+ul.tsd-descriptions {
+ position: relative;
+ overflow: hidden;
+ transition: height 0.3s;
+ padding: 0;
+ list-style: none; }
+ ul.tsd-descriptions.active > .tsd-description {
+ display: none; }
+ ul.tsd-descriptions.active > .tsd-description.current {
+ display: block; }
+ ul.tsd-descriptions.active > .tsd-description.fade-in {
+ animation: fade-in-delayed 0.3s; }
+ ul.tsd-descriptions.active > .tsd-description.fade-out {
+ animation: fade-out-delayed 0.3s;
+ position: absolute;
+ display: block;
+ top: 0;
+ left: 0;
+ right: 0;
+ opacity: 0;
+ visibility: hidden; }
+ ul.tsd-descriptions h4, ul.tsd-descriptions .tsd-index-panel h3, .tsd-index-panel ul.tsd-descriptions h3 {
+ font-size: 16px;
+ margin: 1em 0 0.5em 0; }
+
+ul.tsd-parameters,
+ul.tsd-type-parameters {
+ list-style: square;
+ margin: 0;
+ padding-left: 20px; }
+ ul.tsd-parameters > li.tsd-parameter-siganture,
+ ul.tsd-type-parameters > li.tsd-parameter-siganture {
+ list-style: none;
+ margin-left: -20px; }
+ ul.tsd-parameters h5,
+ ul.tsd-type-parameters h5 {
+ font-size: 16px;
+ margin: 1em 0 0.5em 0; }
+ ul.tsd-parameters .tsd-comment,
+ ul.tsd-type-parameters .tsd-comment {
+ margin-top: -0.5em; }
+
+.tsd-sources {
+ font-size: 14px;
+ color: #808080;
+ margin: 0 0 1em 0; }
+ .tsd-sources a {
+ color: #808080;
+ text-decoration: underline; }
+ .tsd-sources ul, .tsd-sources p {
+ margin: 0 !important; }
+ .tsd-sources ul {
+ list-style: none;
+ padding: 0; }
+
+.tsd-page-toolbar {
+ position: absolute;
+ z-index: 1;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 40px;
+ color: #333;
+ background: #fff;
+ border-bottom: 1px solid #eee; }
+ .tsd-page-toolbar a {
+ color: #333;
+ text-decoration: none; }
+ .tsd-page-toolbar a.title {
+ font-weight: bold; }
+ .tsd-page-toolbar a.title:hover {
+ text-decoration: underline; }
+ .tsd-page-toolbar .table-wrap {
+ display: table;
+ width: 100%;
+ height: 40px; }
+ .tsd-page-toolbar .table-cell {
+ display: table-cell;
+ position: relative;
+ white-space: nowrap;
+ line-height: 40px; }
+ .tsd-page-toolbar .table-cell:first-child {
+ width: 100%; }
+
+.tsd-widget:before, .tsd-select .tsd-select-label:before, .tsd-select .tsd-select-list li:before {
+ content: '';
+ display: inline-block;
+ width: 40px;
+ height: 40px;
+ margin: 0 -8px 0 0;
+ background-image: url(../images/widgets.png);
+ background-repeat: no-repeat;
+ text-indent: -1024px;
+ vertical-align: bottom; }
+ @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) {
+ .tsd-widget:before, .tsd-select .tsd-select-label:before, .tsd-select .tsd-select-list li:before {
+ background-image: url(../images/widgets@2x.png);
+ background-size: 320px 40px; } }
+
+.tsd-widget {
+ display: inline-block;
+ overflow: hidden;
+ opacity: 0.6;
+ height: 40px;
+ transition: opacity 0.1s, background-color 0.2s;
+ vertical-align: bottom;
+ cursor: pointer; }
+ .tsd-widget:hover {
+ opacity: 0.8; }
+ .tsd-widget.active {
+ opacity: 1;
+ background-color: #eee; }
+ .tsd-widget.no-caption {
+ width: 40px; }
+ .tsd-widget.no-caption:before {
+ margin: 0; }
+ .tsd-widget.search:before {
+ background-position: 0 0; }
+ .tsd-widget.menu:before {
+ background-position: -40px 0; }
+ .tsd-widget.options:before {
+ background-position: -80px 0; }
+ .tsd-widget.options, .tsd-widget.menu {
+ display: none; }
+ @media (max-width: 900px) {
+ .tsd-widget.options, .tsd-widget.menu {
+ display: inline-block; } }
+ input[type=checkbox] + .tsd-widget:before {
+ background-position: -120px 0; }
+ input[type=checkbox]:checked + .tsd-widget:before {
+ background-position: -160px 0; }
+
+.tsd-select {
+ position: relative;
+ display: inline-block;
+ height: 40px;
+ transition: opacity 0.1s, background-color 0.2s;
+ vertical-align: bottom;
+ cursor: pointer; }
+ .tsd-select .tsd-select-label {
+ opacity: 0.6;
+ transition: opacity 0.2s; }
+ .tsd-select .tsd-select-label:before {
+ background-position: -240px 0; }
+ .tsd-select.active .tsd-select-label {
+ opacity: 0.8; }
+ .tsd-select.active .tsd-select-list {
+ visibility: visible;
+ opacity: 1;
+ transition-delay: 0s; }
+ .tsd-select .tsd-select-list {
+ position: absolute;
+ visibility: hidden;
+ top: 40px;
+ left: 0;
+ margin: 0;
+ padding: 0;
+ opacity: 0;
+ list-style: none;
+ box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
+ transition: visibility 0s 0.2s, opacity 0.2s; }
+ .tsd-select .tsd-select-list li {
+ padding: 0 20px 0 0;
+ background-color: #fdfdfd; }
+ .tsd-select .tsd-select-list li:before {
+ background-position: 40px 0; }
+ .tsd-select .tsd-select-list li:nth-child(even) {
+ background-color: #fff; }
+ .tsd-select .tsd-select-list li:hover {
+ background-color: #eee; }
+ .tsd-select .tsd-select-list li.selected:before {
+ background-position: -200px 0; }
+ @media (max-width: 900px) {
+ .tsd-select .tsd-select-list {
+ top: 0;
+ left: auto;
+ right: 100%;
+ margin-right: -5px; }
+ .tsd-select .tsd-select-label:before {
+ background-position: -280px 0; } }
+
+img {
+ max-width: 100%; }
diff --git a/docs/assets/images/icons.png b/docs/assets/images/icons.png
new file mode 100644
index 000000000..3836d5fe4
Binary files /dev/null and b/docs/assets/images/icons.png differ
diff --git a/docs/assets/images/icons@2x.png b/docs/assets/images/icons@2x.png
new file mode 100644
index 000000000..5a209e2f6
Binary files /dev/null and b/docs/assets/images/icons@2x.png differ
diff --git a/docs/assets/images/widgets.png b/docs/assets/images/widgets.png
new file mode 100644
index 000000000..c7380532a
Binary files /dev/null and b/docs/assets/images/widgets.png differ
diff --git a/docs/assets/images/widgets@2x.png b/docs/assets/images/widgets@2x.png
new file mode 100644
index 000000000..4bbbd5727
Binary files /dev/null and b/docs/assets/images/widgets@2x.png differ
diff --git a/docs/assets/js/main.js b/docs/assets/js/main.js
new file mode 100644
index 000000000..667b26945
--- /dev/null
+++ b/docs/assets/js/main.js
@@ -0,0 +1 @@
+!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";function x(e){return null!=e&&e===e.window}var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0>10|55296,1023&r|56320)}function oe(){T()}var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,k="sizzle"+1*new Date,m=n.document,S=0,r=0,p=ue(),x=ue(),N=ue(),A=ue(),D=function(e,t){return e===t&&(l=!0),0},j={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"οΏ½":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){for((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;o--;)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){for(var n=e.split("|"),r=n.length;r--;)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){for(var n,r=a([],e.length,o),i=r.length;i--;)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if(void 0!==t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if(void 0!==t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"!==e)return o;for(;n=o[i++];)1===n.nodeType&&r.push(n);return r},b.find.CLASS=d.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"!=typeof e)return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this);if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,""],col:[2,""],tr:[2,""],td:[3,""],_default:[0,"",""]};function ve(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v)for(n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return void 0!==k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;l--;)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){for(l=(t=(t||"").match(R)||[""]).length;l--;)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){for(f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;o--;)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/
+
+