diff --git a/CHANGELOG.md b/CHANGELOG.md
index d4a8a7425..2859b2762 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,13 @@
 
+3.3.0 / 2017-03-07
+==================
+
+  * add front-matter plugin
+  * add external-script plugin
+  * Fix nav showing while loading (#112)
+  * Fix a typo (#111)
+  * Update changelog
+
 3.2.0 / 2017-02-28
 ==================
 
diff --git a/build/build.js b/build/build.js
index 6834167cc..d1d2d63b7 100644
--- a/build/build.js
+++ b/build/build.js
@@ -35,8 +35,8 @@ var plugins = [
   { name: 'search', entry: 'search/index.js', moduleName: 'Search' },
   { name: 'ga', entry: 'ga.js', moduleName: 'GA' },
   { name: 'emoji', entry: 'emoji.js', moduleName: 'Emoji' },
-  { name: 'external-script', entry: 'external-script.js', moduleName: 'ExternalScript' }
-  // { name: 'front-matter', entry: 'front-matter/index.js', moduleName: 'FrontMatter' }
+  { name: 'external-script', entry: 'external-script.js', moduleName: 'ExternalScript' },
+  { name: 'front-matter', entry: 'front-matter/index.js', moduleName: 'FrontMatter' }
 ]
 
 plugins.forEach(item => {
diff --git a/docs/_coverpage.md b/docs/_coverpage.md
index 0f74e8ffa..3958c72f3 100644
--- a/docs/_coverpage.md
+++ b/docs/_coverpage.md
@@ -1,6 +1,6 @@
 ![logo](_media/icon.svg)
 
-# docsify <small>3.2</small>
+# docsify <small>3.3</small>
 
 > A magical documentation site generator.
 
diff --git a/lib/plugins/external-script.min.js b/lib/plugins/external-script.min.js
index def9d5905..6f7712b2c 100644
--- a/lib/plugins/external-script.min.js
+++ b/lib/plugins/external-script.min.js
@@ -1 +1 @@
-this.D=this.D||{},function(){"use strict";function i(){var i=Docsify.dom.getNode("#main"),n=Docsify.dom.find(i,"script");if(n && n.src){var c=document.createElement("script");["src","async","defer"].forEach(function(i){c[i]=n[i]}),n.parentNode.removeChild(n),i.appendChild(c)}}var n=function(n){n.doneEach(i)};window.$docsify.plugins=[].concat(n,window.$docsify.plugins)}();
+this.D=this.D||{},function(){"use strict";function i(){var i=Docsify.dom.getNode("#main"),n=Docsify.dom.find(i,"script");if(n&&n.src){var c=document.createElement("script");["src","async","defer"].forEach(function(i){c[i]=n[i]}),n.parentNode.removeChild(n),i.appendChild(c)}}var n=function(n){n.doneEach(i)};window.$docsify.plugins=[].concat(n,window.$docsify.plugins)}();
diff --git a/lib/plugins/front-matter.js b/lib/plugins/front-matter.js
new file mode 100644
index 000000000..0c996aa8e
--- /dev/null
+++ b/lib/plugins/front-matter.js
@@ -0,0 +1,503 @@
+this.D = this.D || {};
+(function () {
+'use strict';
+
+/**
+ * Fork https://github.com/egoist/docute/blob/master/src/utils/yaml.js
+ */
+/* eslint-disable */
+/*
+YAML parser for Javascript
+Author: Diogo Costa
+This program is released under the MIT License as follows:
+Copyright (c) 2011 Diogo Costa (costa.h4evr@gmail.com)
+Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+
+/**
+ * @name YAML
+ * @namespace
+*/
+
+
+var errors = [];
+var reference_blocks = [];
+var processing_time = 0;
+var regex$1 =
+    {
+        "regLevel" : new RegExp("^([\\s\\-]+)"),
+        "invalidLine" : new RegExp("^\\-\\-\\-|^\\.\\.\\.|^\\s*#.*|^\\s*$"),
+        "dashesString" : new RegExp("^\\s*\\\"([^\\\"]*)\\\"\\s*$"),
+        "quotesString" : new RegExp("^\\s*\\\'([^\\\']*)\\\'\\s*$"),
+        "float" : new RegExp("^[+-]?[0-9]+\\.[0-9]+(e[+-]?[0-9]+(\\.[0-9]+)?)?$"),
+        "integer" : new RegExp("^[+-]?[0-9]+$"),
+        "array" : new RegExp("\\[\\s*(.*)\\s*\\]"),
+        "map" : new RegExp("\\{\\s*(.*)\\s*\\}"),
+        "key_value" : new RegExp("([a-z0-9_-][ a-z0-9_-]*):( .+)", "i"),
+        "single_key_value" : new RegExp("^([a-z0-9_-][ a-z0-9_-]*):( .+?)$", "i"),
+        "key" : new RegExp("([a-z0-9_-][ a-z0-9_-]+):( .+)?", "i"),
+        "item" : new RegExp("^-\\s+"),
+        "trim" : new RegExp("^\\s+|\\s+$"),
+        "comment" : new RegExp("([^\\\'\\\"#]+([\\\'\\\"][^\\\'\\\"]*[\\\'\\\"])*)*(#.*)?")
+    };
+
+  /**
+  * @class A block of lines of a given level.
+  * @param {int} lvl The block's level.
+  * @private
+  */
+function Block(lvl) {
+    return {
+        /* The block's parent */
+        parent: null,
+        /* Number of children */
+        length: 0,
+        /* Block's level */
+        level: lvl,
+        /* Lines of code to process */
+        lines: [],
+        /* Blocks with greater level */
+        children : [],
+        /* Add a block to the children collection */
+        addChild : function(obj) {
+            this.children.push(obj);
+            obj.parent = this;
+            ++this.length;
+        }
+    };
+}
+
+function parser$1(str) {
+    var regLevel = regex$1["regLevel"];
+    var invalidLine = regex$1["invalidLine"];
+    var lines = str.split("\n");
+    var m;
+    var level = 0, curLevel = 0;
+
+    var blocks = [];
+
+    var result = new Block(-1);
+    var currentBlock = new Block(0);
+    result.addChild(currentBlock);
+    var levels = [];
+    var line = "";
+
+    blocks.push(currentBlock);
+    levels.push(level);
+
+    for(var i = 0, len = lines.length; i < len; ++i) {
+        line = lines[i];
+
+        if(line.match(invalidLine)) {
+            continue;
+        }
+
+        if(m = regLevel.exec(line)) {
+            level = m[1].length;
+        } else
+            { level = 0; }
+
+        if(level > curLevel) {
+            var oldBlock = currentBlock;
+            currentBlock = new Block(level);
+            oldBlock.addChild(currentBlock);
+            blocks.push(currentBlock);
+            levels.push(level);
+        } else if(level < curLevel) {
+            var added = false;
+
+            var k = levels.length - 1;
+            for(; k >= 0; --k) {
+                if(levels[k] == level) {
+                    currentBlock = new Block(level);
+                    blocks.push(currentBlock);
+                    levels.push(level);
+                    if(blocks[k].parent!= null)
+                        { blocks[k].parent.addChild(currentBlock); }
+                    added = true;
+                    break;
+                }
+            }
+
+            if(!added) {
+                errors.push("Error: Invalid indentation at line " + i + ": " + line);
+                return;
+            }
+        }
+
+        currentBlock.lines.push(line.replace(regex$1["trim"], ""));
+        curLevel = level;
+    }
+
+    return result;
+}
+
+function processValue(val) {
+    val = val.replace(regex$1["trim"], "");
+    var m = null;
+
+    if(val == 'true') {
+        return true;
+    } else if(val == 'false') {
+        return false;
+    } else if(val == '.NaN') {
+        return Number.NaN;
+    } else if(val == 'null') {
+        return null;
+    } else if(val == '.inf') {
+        return Number.POSITIVE_INFINITY;
+    } else if(val == '-.inf') {
+        return Number.NEGATIVE_INFINITY;
+    } else if(m = val.match(regex$1["dashesString"])) {
+        return m[1];
+    } else if(m = val.match(regex$1["quotesString"])) {
+        return m[1];
+    } else if(m = val.match(regex$1["float"])) {
+        return parseFloat(m[0]);
+    } else if(m = val.match(regex$1["integer"])) {
+        return parseInt(m[0]);
+    } else if( !isNaN(m = Date.parse(val))) {
+        return new Date(m);
+    } else if(m = val.match(regex$1["single_key_value"])) {
+        var res = {};
+        res[m[1]] = processValue(m[2]);
+        return res;
+    } else if(m = val.match(regex$1["array"])){
+        var count = 0, c = ' ';
+        var res = [];
+        var content = "";
+        var str = false;
+        for(var j = 0, lenJ = m[1].length; j < lenJ; ++j) {
+            c = m[1][j];
+            if(c == '\'' || c == '"') {
+                if(str === false) {
+                    str = c;
+                    content += c;
+                    continue;
+                } else if((c == '\'' && str == '\'') || (c == '"' && str == '"')) {
+                    str = false;
+                    content += c;
+                    continue;
+                }
+            } else if(str === false && (c == '[' || c == '{')) {
+                ++count;
+            } else if(str === false && (c == ']' || c == '}')) {
+                --count;
+            } else if(str === false && count == 0 && c == ',') {
+                res.push(processValue(content));
+                content = "";
+                continue;
+            }
+
+            content += c;
+        }
+
+        if(content.length > 0)
+            { res.push(processValue(content)); }
+        return res;
+    } else if(m = val.match(regex$1["map"])){
+        var count = 0, c = ' ';
+        var res = [];
+        var content = "";
+        var str = false;
+        for(var j = 0, lenJ = m[1].length; j < lenJ; ++j) {
+            c = m[1][j];
+            if(c == '\'' || c == '"') {
+                if(str === false) {
+                    str = c;
+                    content += c;
+                    continue;
+                } else if((c == '\'' && str == '\'') || (c == '"' && str == '"')) {
+                    str = false;
+                    content += c;
+                    continue;
+                }
+            } else if(str === false && (c == '[' || c == '{')) {
+                ++count;
+            } else if(str === false && (c == ']' || c == '}')) {
+                --count;
+            } else if(str === false && count == 0 && c == ',') {
+                res.push(content);
+                content = "";
+                continue;
+            }
+
+            content += c;
+        }
+
+        if(content.length > 0)
+            { res.push(content); }
+
+        var newRes = {};
+        for(var j = 0, lenJ = res.length; j < lenJ; ++j) {
+            if(m = res[j].match(regex$1["key_value"])) {
+                newRes[m[1]] = processValue(m[2]);
+            }
+        }
+
+        return newRes;
+    } else
+        { return val; }
+}
+
+function processFoldedBlock(block) {
+    var lines = block.lines;
+    var children = block.children;
+    var str = lines.join(" ");
+    var chunks = [str];
+    for(var i = 0, len = children.length; i < len; ++i) {
+        chunks.push(processFoldedBlock(children[i]));
+    }
+    return chunks.join("\n");
+}
+
+function processLiteralBlock(block) {
+    var lines = block.lines;
+    var children = block.children;
+    var str = lines.join("\n");
+    for(var i = 0, len = children.length; i < len; ++i) {
+        str += processLiteralBlock(children[i]);
+    }
+    return str;
+}
+
+function processBlock(blocks) {
+    var m = null;
+    var res = {};
+    var lines = null;
+    var children = null;
+    var currentObj = null;
+
+    var level = -1;
+
+    var processedBlocks = [];
+
+    var isMap = true;
+
+    for(var j = 0, lenJ = blocks.length; j < lenJ; ++j) {
+
+        if(level != -1 && level != blocks[j].level)
+            { continue; }
+
+        processedBlocks.push(j);
+
+        level = blocks[j].level;
+        lines = blocks[j].lines;
+        children = blocks[j].children;
+        currentObj = null;
+
+        for(var i = 0, len = lines.length; i < len; ++i) {
+            var line = lines[i];
+
+            if(m = line.match(regex$1["key"])) {
+                var key = m[1];
+
+                if(key[0] == '-') {
+                    key = key.replace(regex$1["item"], "");
+                    if (isMap) {
+                        isMap = false;
+                        if (typeof(res.length) === "undefined") {
+                            res = [];
+                        }
+                    }
+                    if(currentObj != null) { res.push(currentObj); }
+                    currentObj = {};
+                    isMap = true;
+                }
+
+                if(typeof m[2] != "undefined") {
+                    var value = m[2].replace(regex$1["trim"], "");
+                    if(value[0] == '&') {
+                        var nb = processBlock(children);
+                        if(currentObj != null) { currentObj[key] = nb; }
+                        else { res[key] = nb; }
+                        reference_blocks[value.substr(1)] = nb;
+                    } else if(value[0] == '|') {
+                        if(currentObj != null) { currentObj[key] = processLiteralBlock(children.shift()); }
+                        else { res[key] = processLiteralBlock(children.shift()); }
+                    } else if(value[0] == '*') {
+                        var v = value.substr(1);
+                        var no = {};
+
+                        if(typeof reference_blocks[v] == "undefined") {
+                            errors.push("Reference '" + v + "' not found!");
+                        } else {
+                            for(var k in reference_blocks[v]) {
+                                no[k] = reference_blocks[v][k];
+                            }
+
+                            if(currentObj != null) { currentObj[key] = no; }
+                            else { res[key] = no; }
+                        }
+                    } else if(value[0] == '>') {
+                        if(currentObj != null) { currentObj[key] = processFoldedBlock(children.shift()); }
+                        else { res[key] = processFoldedBlock(children.shift()); }
+                    } else {
+                        if(currentObj != null) { currentObj[key] = processValue(value); }
+                        else { res[key] = processValue(value); }
+                    }
+                } else {
+                    if(currentObj != null) { currentObj[key] = processBlock(children); }
+                    else { res[key] = processBlock(children); }
+                }
+            } else if(line.match(/^-\s*$/)) {
+                if (isMap) {
+                    isMap = false;
+                    if (typeof(res.length) === "undefined") {
+                        res = [];
+                    }
+                }
+                if(currentObj != null) { res.push(currentObj); }
+                currentObj = {};
+                isMap = true;
+                continue;
+            } else if(m = line.match(/^-\s*(.*)/)) {
+                if(currentObj != null)
+                    { currentObj.push(processValue(m[1])); }
+                else {
+                    if (isMap) {
+                        isMap = false;
+                        if (typeof(res.length) === "undefined") {
+                            res = [];
+                        }
+                    }
+                    res.push(processValue(m[1]));
+                }
+                continue;
+            }
+        }
+
+        if(currentObj != null) {
+            if (isMap) {
+                isMap = false;
+                if (typeof(res.length) === "undefined") {
+                    res = [];
+                }
+            }
+            res.push(currentObj);
+        }
+    }
+
+    for(var j = processedBlocks.length - 1; j >= 0; --j) {
+        blocks.splice.call(blocks, processedBlocks[j], 1);
+    }
+
+    return res;
+}
+
+function semanticAnalysis(blocks) {
+    var res = processBlock(blocks.children);
+    return res;
+}
+
+function preProcess(src) {
+    var m;
+    var lines = src.split("\n");
+
+    var r = regex$1["comment"];
+
+    for(var i in lines) {
+        if(m = lines[i].match(r)) {
+/*                var cmt = "";
+            if(typeof m[3] != "undefined")
+                lines[i] = m[1];
+            else if(typeof m[3] != "undefined")
+                lines[i] = m[3];
+            else
+                lines[i] = "";
+                */
+            if(typeof m[3] !== "undefined") {
+                lines[i] = m[0].substr(0, m[0].length - m[3].length);
+            }
+        }
+    }
+
+    return lines.join("\n");
+}
+
+function load(str) {
+    errors = [];
+    reference_blocks = [];
+    processing_time = (new Date()).getTime();
+    var pre = preProcess(str);
+    var doc = parser$1(pre);
+    var res = semanticAnalysis(doc);
+    processing_time = (new Date()).getTime() - processing_time;
+
+    return res;
+}
+
+/**
+ * Fork https://github.com/egoist/docute/blob/master/src/utils/front-matter.js
+ */
+/* eslint-disable */
+var optionalByteOrderMark = '\\ufeff?';
+var pattern = '^(' +
+  optionalByteOrderMark +
+  '(= yaml =|---)' +
+  '$([\\s\\S]*?)' +
+  '(?:\\2|\\.\\.\\.)' +
+  '$' +
+  '' +
+  '(?:\\n)?)';
+// NOTE: If this pattern uses the 'g' flag the `regex` variable definition will
+// need to be moved down into the functions that use it.
+var regex = new RegExp(pattern, 'm');
+
+function extractor (string) {
+  string = string || '';
+
+  var lines = string.split(/(\r?\n)/);
+  if (lines[0] && /= yaml =|---/.test(lines[0])) {
+    return parse(string)
+  } else {
+    return { attributes: {}, body: string }
+  }
+}
+
+function parse (string) {
+  var match = regex.exec(string);
+
+  if (!match) {
+    return {
+      attributes: {},
+      body: string
+    }
+  }
+
+  var yaml = match[match.length - 1].replace(/^\s+|\s+$/g, '');
+  var attributes = load(yaml) || {};
+  var body = string.replace(match[0], '');
+
+  return { attributes: attributes, body: body, frontmatter: yaml }
+}
+
+var install = function (hook, vm) {
+  hook.beforeEach(function (content) {
+    var ref = extractor(content);
+    var attributes = ref.attributes;
+    var body = ref.body;
+
+    Docsify.util.merge(vm.config, attributes.config);
+
+    return body
+  });
+};
+
+window.$docsify.plugins = [].concat(install, window.$docsify.plugins);
+
+}());
diff --git a/lib/plugins/front-matter.min.js b/lib/plugins/front-matter.min.js
new file mode 100644
index 000000000..3fd1e3707
--- /dev/null
+++ b/lib/plugins/front-matter.min.js
@@ -0,0 +1 @@
+this.D=this.D||{},function(){"use strict";function e(e){return{parent:null,length:0,level:e,lines:[],children:[],addChild:function(e){this.children.push(e),e.parent=this,++this.length}}}function n(n){var t,r=g.regLevel,i=g.invalidLine,l=n.split("\n"),u=0,a=0,f=[],s=new e(-1),h=new e(0);s.addChild(h);var c=[],p="";f.push(h),c.push(u);for(var d=0,v=l.length;d<v;++d)if(p=l[d],!p.match(i)){if(u=(t=r.exec(p))?t[1].length:0,u>a){var m=h;h=new e(u),m.addChild(h),f.push(h),c.push(u)}else if(u<a){for(var w=!1,y=c.length-1;y>=0;--y)if(c[y]==u){h=new e(u),f.push(h),c.push(u),null!=f[y].parent&&f[y].parent.addChild(h),w=!0;break}if(!w)return void o.push("Error: Invalid indentation at line "+d+": "+p)}h.lines.push(p.replace(g.trim,"")),a=u}return s}function t(e){e=e.replace(g.trim,"");var n=null;if("true"==e)return!0;if("false"==e)return!1;if(".NaN"==e)return Number.NaN;if("null"==e)return null;if(".inf"==e)return Number.POSITIVE_INFINITY;if("-.inf"==e)return Number.NEGATIVE_INFINITY;if(n=e.match(g.dashesString))return n[1];if(n=e.match(g.quotesString))return n[1];if(n=e.match(g.float))return parseFloat(n[0]);if(n=e.match(g.integer))return parseInt(n[0]);if(isNaN(n=Date.parse(e))){if(n=e.match(g.single_key_value)){var r={};return r[n[1]]=t(n[2]),r}if(n=e.match(g.array)){for(var i=0,l=" ",r=[],u="",a=!1,f=0,s=n[1].length;f<s;++f){if(l=n[1][f],"'"==l||'"'==l){if(a===!1){a=l,u+=l;continue}if("'"==l&&"'"==a||'"'==l&&'"'==a){a=!1,u+=l;continue}}else if(a!==!1||"["!=l&&"{"!=l)if(a!==!1||"]"!=l&&"}"!=l){if(a===!1&&0==i&&","==l){r.push(t(u)),u="";continue}}else--i;else++i;u+=l}return u.length>0&&r.push(t(u)),r}if(n=e.match(g.map)){for(var i=0,l=" ",r=[],u="",a=!1,f=0,s=n[1].length;f<s;++f){if(l=n[1][f],"'"==l||'"'==l){if(a===!1){a=l,u+=l;continue}if("'"==l&&"'"==a||'"'==l&&'"'==a){a=!1,u+=l;continue}}else if(a!==!1||"["!=l&&"{"!=l)if(a!==!1||"]"!=l&&"}"!=l){if(a===!1&&0==i&&","==l){r.push(u),u="";continue}}else--i;else++i;u+=l}u.length>0&&r.push(u);for(var h={},f=0,s=r.length;f<s;++f)(n=r[f].match(g.key_value))&&(h[n[1]]=t(n[2]));return h}return e}return new Date(n)}function r(e){for(var n=e.lines,t=e.children,i=n.join(" "),l=[i],u=0,a=t.length;u<a;++u)l.push(r(t[u]));return l.join("\n")}function i(e){for(var n=e.lines,t=e.children,r=n.join("\n"),l=0,u=t.length;l<u;++l)r+=i(t[l]);return r}function l(e){for(var n=null,u={},a=null,f=null,s=null,h=-1,p=[],d=!0,v=0,m=e.length;v<m;++v)if(h==-1||h==e[v].level){p.push(v),h=e[v].level,a=e[v].lines,f=e[v].children,s=null;for(var w=0,y=a.length;w<y;++w){var E=a[w];if(n=E.match(g.key)){var x=n[1];if("-"==x[0]&&(x=x.replace(g.item,""),d&&(d=!1,"undefined"==typeof u.length&&(u=[])),null!=s&&u.push(s),s={},d=!0),"undefined"!=typeof n[2]){var b=n[2].replace(g.trim,"");if("&"==b[0]){var R=l(f);null!=s?s[x]=R:u[x]=R,c[b.substr(1)]=R}else if("|"==b[0])null!=s?s[x]=i(f.shift()):u[x]=i(f.shift());else if("*"==b[0]){var N=b.substr(1),_={};if("undefined"==typeof c[N])o.push("Reference '"+N+"' not found!");else{for(var $ in c[N])_[$]=c[N][$];null!=s?s[x]=_:u[x]=_}}else">"==b[0]?null!=s?s[x]=r(f.shift()):u[x]=r(f.shift()):null!=s?s[x]=t(b):u[x]=t(b)}else null!=s?s[x]=l(f):u[x]=l(f)}else{if(E.match(/^-\s*$/)){d&&(d=!1,"undefined"==typeof u.length&&(u=[])),null!=s&&u.push(s),s={},d=!0;continue}if(n=E.match(/^-\s*(.*)/)){null!=s?s.push(t(n[1])):(d&&(d=!1,"undefined"==typeof u.length&&(u=[])),u.push(t(n[1])));continue}}}null!=s&&(d&&(d=!1,"undefined"==typeof u.length&&(u=[])),u.push(s))}for(var v=p.length-1;v>=0;--v)e.splice.call(e,p[v],1);return u}function u(e){var n=l(e.children);return n}function a(e){var n,t=e.split("\n"),r=g.comment;for(var i in t)(n=t[i].match(r))&&"undefined"!=typeof n[3]&&(t[i]=n[0].substr(0,n[0].length-n[3].length));return t.join("\n")}function f(e){o=[],c=[],p=(new Date).getTime();var t=a(e),r=n(t),i=u(r);return p=(new Date).getTime()-p,i}function s(e){e=e||"";var n=e.split(/(\r?\n)/);return n[0]&&/= yaml =|---/.test(n[0])?h(e):{attributes:{},body:e}}function h(e){var n=m.exec(e);if(!n)return{attributes:{},body:e};var t=n[n.length-1].replace(/^\s+|\s+$/g,""),r=f(t)||{},i=e.replace(n[0],"");return{attributes:r,body:i,frontmatter:t}}var o=[],c=[],p=0,g={regLevel:new RegExp("^([\\s\\-]+)"),invalidLine:new RegExp("^\\-\\-\\-|^\\.\\.\\.|^\\s*#.*|^\\s*$"),dashesString:new RegExp('^\\s*\\"([^\\"]*)\\"\\s*$'),quotesString:new RegExp("^\\s*\\'([^\\']*)\\'\\s*$"),float:new RegExp("^[+-]?[0-9]+\\.[0-9]+(e[+-]?[0-9]+(\\.[0-9]+)?)?$"),integer:new RegExp("^[+-]?[0-9]+$"),array:new RegExp("\\[\\s*(.*)\\s*\\]"),map:new RegExp("\\{\\s*(.*)\\s*\\}"),key_value:new RegExp("([a-z0-9_-][ a-z0-9_-]*):( .+)","i"),single_key_value:new RegExp("^([a-z0-9_-][ a-z0-9_-]*):( .+?)$","i"),key:new RegExp("([a-z0-9_-][ a-z0-9_-]+):( .+)?","i"),item:new RegExp("^-\\s+"),trim:new RegExp("^\\s+|\\s+$"),comment:new RegExp("([^\\'\\\"#]+([\\'\\\"][^\\'\\\"]*[\\'\\\"])*)*(#.*)?")},d="\\ufeff?",v="^("+d+"(= yaml =|---)$([\\s\\S]*?)(?:\\2|\\.\\.\\.)$(?:\\n)?)",m=new RegExp(v,"m"),w=function(e,n){e.beforeEach(function(e){var t=s(e),r=t.attributes,i=t.body;return Docsify.util.merge(n.config,r.config),i})};window.$docsify.plugins=[].concat(w,window.$docsify.plugins)}();
diff --git a/lib/themes/buble.css b/lib/themes/buble.css
index 7e5d8cb05..04e1b9971 100644
--- a/lib/themes/buble.css
+++ b/lib/themes/buble.css
@@ -1 +1 @@
-@import url("https://fonts.googleapis.com/css?family=Inconsolata|Inconsolata-Bold");*{box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased}body:not(.ready){overflow:hidden}body:not(.ready) [data-cloak]{display:none}div#app{text-align:center;font-size:30px;font-weight:lighter;margin:40vh auto}div#app:empty:before{content:"Loading..."}.emoji{height:1.2em;vertical-align:middle}.progress{background-color:#0074d9;background-color:var(--theme-color,#0074d9);height:2px;left:0;position:fixed;right:0;top:0;-webkit-transition:width .2s,opacity .4s;transition:width .2s,opacity .4s;width:0;z-index:5}.search .search-keyword,.search a:hover{color:#0074d9;color:var(--theme-color,#0074d9)}.search .search-keyword{font-style:normal}body,html{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:15px;letter-spacing:0;margin:0;overflow-x:hidden;color:#34495e}img{max-width:100%}kbd{display:inline-block;padding:3px 5px;margin-bottom:3px;font-size:12px!important;line-height:12px;vertical-align:middle;border:1px solid #ccc;border-radius:3px}nav.app-nav{position:absolute;right:0;left:0;z-index:2;margin:25px 60px 0 0;text-align:right}nav.app-nav p{margin:0}nav.app-nav>a{margin:0 1em;padding:5px 0}nav.app-nav li,nav.app-nav ul{list-style:none;display:inline-block;margin:0}nav.app-nav a{font-size:16px;text-decoration:none;color:inherit;-webkit-transition:color .3s;transition:color .3s}nav.app-nav a.active,nav.app-nav a:hover{color:#0074d9;color:var(--theme-color,#0074d9)}nav.app-nav a.active{border-bottom:2px solid #0074d9;border-bottom:2px solid var(--theme-color,#0074d9)}nav.app-nav li{position:relative;display:inline-block;margin:0 1em;padding:5px 0}nav.app-nav li ul{display:none;box-sizing:border-box;max-height:calc(100vh - 61px);overflow-y:scroll;position:absolute;top:100%;right:-15px;background-color:#fff;padding:10px 0;border:1px solid #ddd;border-bottom-color:#ccc;text-align:left;border-radius:4px;white-space:nowrap}nav.app-nav li ul li{display:block;font-size:14px;margin:0;margin:8px 14px;white-space:nowrap;line-height:1em}nav.app-nav li ul a{display:block;font-size:inherit;margin:0;padding:0}nav.app-nav li ul a.active{border-bottom:0}nav.app-nav li:hover ul{display:block}nav.app-nav.no-badge{margin-right:25px}.github-corner{position:fixed;top:0;right:0;z-index:1;text-decoration:none;border-bottom:0}.github-corner svg{color:#fff;height:80px;width:80px;fill:#0074d9;fill:var(--theme-color,#0074d9)}.github-corner:hover .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}main{display:block;width:100vw;height:100%;position:relative}.anchor{text-decoration:none;-webkit-transition:all .3s;transition:all .3s;display:inline-block}.anchor span{color:#34495e}.anchor:hover{text-decoration:underline}.sidebar{overflow-y:auto;padding:40px 0;top:0;bottom:0;left:0;position:absolute;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out;width:16em;z-index:3;border-right:1px solid rgba(0,0,0,.07)}.sidebar>h1{text-align:center;margin:0 auto 1em;font-size:1.5em;font-weight:300}.sidebar>h1 a{color:inherit;text-decoration:none}.sidebar ul{margin:0;padding:0}.sidebar li>p{font-weight:700;margin:0}.sidebar ul,.sidebar ul li{list-style:none}.sidebar ul li a{display:block;border-bottom:none}.sidebar ul li ul{padding-left:20px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.sidebar:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,53%,.4)}.sidebar:hover::-webkit-scrollbar-track{background:hsla(0,0%,53%,.1)}.sidebar-toggle{background-color:transparent;border:0;bottom:0;left:0;position:absolute;text-align:center;-webkit-transition:opacity .3s;transition:opacity .3s;width:30px;z-index:4;outline:none;width:calc(16em - 16px);padding:10px;background-color:hsla(0,0%,100%,.8)}.sidebar-toggle .sidebar-toggle-button:hover{opacity:.4}.sidebar-toggle span{background-color:#0074d9;background-color:var(--theme-color,#0074d9);display:block;width:16px;height:2px;margin-bottom:4px}body.sticky .sidebar,body.sticky .sidebar-toggle{position:fixed}.content{top:0;right:0;bottom:0;left:16em;position:absolute;padding-top:20px;-webkit-transition:left .25s ease;transition:left .25s ease}.markdown-section{position:relative;margin:0 auto;max-width:800px;padding:20px 15px 40px}.markdown-section>*{box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section hr{border:none;margin:2em 0;border-bottom:1px solid #eee}.markdown-section table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse;margin-bottom:1em}.markdown-section th{font-weight:700}.markdown-section td,.markdown-section th{padding:6px 13px;border:1px solid #ddd}.markdown-section tr{border-top:1px solid #ccc}.markdown-section p.tip,.markdown-section tr:nth-child(2n){background-color:#f8f8f8}.markdown-section p.tip{padding:12px 24px 12px 30px;margin:2em 0;border-left:4px solid #f66;position:relative;border-bottom-right-radius:2px;border-top-right-radius:2px}.markdown-section p.tip code{background-color:#efefef}.markdown-section p.tip em{color:#34495e}.markdown-section p.tip:before{position:absolute;top:14px;left:-12px;background-color:#f66;color:#fff;content:"!";width:20px;height:20px;border-radius:100%;text-align:center;line-height:20px;font-weight:700;font-family:Dosis,Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:14px}.markdown-section p.warn{padding:1em;background:rgba(0,116,217,.1);border-radius:2px}body.close .sidebar{-webkit-transform:translateX(-16em);transform:translateX(-16em)}body.close .sidebar-toggle{width:auto}body.close .content{left:0}@media (max-width:600px){.github-corner,.sidebar,.sidebar-toggle{position:fixed}nav{margin-top:16px}nav li ul{top:30px}main{height:auto;overflow-x:hidden}.sidebar{left:-16em;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.content{left:0;max-width:100vw;position:static;-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.github-corner,nav{-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.sidebar-toggle{width:auto;background-color:transparent}body.close .sidebar{-webkit-transform:translateX(16em);transform:translateX(16em)}body.close .sidebar-toggle{width:calc(16em - 16px);background-color:hsla(0,0%,100%,.8);-webkit-transition:background-color 1s;transition:background-color 1s}body.close .content{-webkit-transform:translateX(16em);transform:translateX(16em)}body.close .github-corner,body.close nav{display:none}.github-corner .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}.github-corner:hover .octo-arm{-webkit-animation:none;animation:none}}@-webkit-keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}section.cover{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;height:100vh;display:none}section.cover .cover-main{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center;margin:-20px 16px 0;z-index:1}section.cover a{color:inherit}section.cover a,section.cover a:hover{text-decoration:none}section.cover p{margin:1em 0;line-height:24px;line-height:1.5rem}section.cover h1{text-align:center;font-size:40px;font-size:2.5rem;position:relative;margin:10px 0 40px;margin:.625rem 0 2.5rem;font-weight:300;color:inherit}section.cover h1 a{display:block}section.cover h1 small{position:absolute;bottom:-7px;bottom:-.4375rem;font-size:16px;font-size:1rem}section.cover blockquote{text-align:center;font-size:24px;font-size:1.5rem}section.cover ul{max-width:500px;list-style-type:none;margin:1em auto;padding:0;line-height:1.8}section.cover .cover-main>p:last-child a{border-radius:2em;border-color:#0074d9;border:1px solid var(--theme-color,#0074d9);box-sizing:border-box;color:#0074d9;color:var(--theme-color,#0074d9);font-size:1.05em;letter-spacing:.1em;padding:.75em 2em;text-decoration:none;-webkit-transition:all .15s ease;transition:all .15s ease;margin-right:1em;display:inline-block}section.cover .cover-main>p:last-child a:last-child{margin-right:0;background-color:#0074d9;background-color:var(--theme-color,#0074d9);color:#fff}section.cover .cover-main>p:last-child a:last-child:hover{opacity:.8;color:inherit}section.cover .cover-main>p:last-child a:hover{color:inherit}section.cover blockquote>p>a{border-bottom:2px solid #0074d9;border-bottom:2px solid var(--theme-color,#0074d9);-webkit-transition:color .3s;transition:color .3s}section.cover blockquote>p>a:hover{color:#0074d9;color:var(--theme-color,#0074d9)}section.cover.show{display:-webkit-box;display:-ms-flexbox;display:flex}section.cover.has-mask .mask{position:absolute;width:100%;height:100%;background-color:#fff;opacity:.8}.sidebar{color:#364149;background-color:#fff}.sidebar a{color:#666;text-decoration:none}.sidebar li{list-style:none;padding:.2em 0 .2em 1em;margin:0}.sidebar ul li ul{padding:0}.sidebar li.active{background-color:#eee}.sidebar li.active a{color:#333}.markdown-section h1,.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section strong{font-weight:400;color:#333}.markdown-section a{color:#0074d9;color:var(--theme-color,#0074d9);font-weight:400}.markdown-section ol,.markdown-section p,.markdown-section ul{word-spacing:.05em;line-height:1.6em;margin:0 0 1em}.markdown-section h1{margin:0 0 1em;font-size:2em;font-weight:500}.markdown-section h2{padding:16px 0 0;padding:1rem 0 0;margin:0 0 16px;margin:0 0 1rem;font-size:1.8em;font-weight:400}.markdown-section h3{margin:52px 0 1.2em;font-size:1.5em}.markdown-section h4{font-size:1.25em}.markdown-section h5{font-size:1em}.markdown-section h6{font-size:1em;color:#777}.markdown-section figure,.markdown-section ol,.markdown-section p,.markdown-section ul{margin:1.2em 0}.markdown-section ol,.markdown-section ul{padding-left:1.5em}.markdown-section li{margin:0;line-height:1.5}.markdown-section blockquote{color:#858585;border-left:4px solid #0074d9;border-left:4px solid var(--theme-color,#0074d9);margin:2em 0;padding-left:20px}.markdown-section blockquote p{font-weight:600;margin-left:0}.markdown-section iframe{margin:1em 0}.markdown-section em{color:#7f8c8d}.markdown-section code{padding:.2em .4em;border-radius:3px;white-space:pre}.markdown-section code,.markdown-section pre{background-color:#f9f9f9;font-family:Inconsolata}.markdown-section pre{border-left:2px solid #eee;padding:8px;margin:0 0 1em;padding:0 10px 12px 0;font-size:16px;overflow:auto;word-wrap:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#a11}.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.markdown-section pre>code{display:block;font-family:Inconsolata;overflow:inherit;max-width:inherit;position:relative;background-color:#f8f8f8;padding:20px .8em;line-height:1.1em;border-radius:2px}.markdown-section code:after,.markdown-section code:before{letter-spacing:.05em}code .token{min-height:1.5em;-webkit-font-smoothing:initial;-moz-osx-font-smoothing:initial}
\ No newline at end of file
+@import url("https://fonts.googleapis.com/css?family=Inconsolata|Inconsolata-Bold");*{box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased}body:not(.ready){overflow:hidden}body:not(.ready) [data-cloak],body:not(.ready) nav{display:none}div#app{text-align:center;font-size:30px;font-weight:lighter;margin:40vh auto}div#app:empty:before{content:"Loading..."}.emoji{height:1.2em;vertical-align:middle}.progress{background-color:#0074d9;background-color:var(--theme-color,#0074d9);height:2px;left:0;position:fixed;right:0;top:0;-webkit-transition:width .2s,opacity .4s;transition:width .2s,opacity .4s;width:0;z-index:5}.search .search-keyword,.search a:hover{color:#0074d9;color:var(--theme-color,#0074d9)}.search .search-keyword{font-style:normal}body,html{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:15px;letter-spacing:0;margin:0;overflow-x:hidden;color:#34495e}img{max-width:100%}kbd{display:inline-block;padding:3px 5px;margin-bottom:3px;font-size:12px!important;line-height:12px;vertical-align:middle;border:1px solid #ccc;border-radius:3px}nav.app-nav{position:absolute;right:0;left:0;z-index:2;margin:25px 60px 0 0;text-align:right}nav.app-nav p{margin:0}nav.app-nav>a{margin:0 1em;padding:5px 0}nav.app-nav li,nav.app-nav ul{list-style:none;display:inline-block;margin:0}nav.app-nav a{font-size:16px;text-decoration:none;color:inherit;-webkit-transition:color .3s;transition:color .3s}nav.app-nav a.active,nav.app-nav a:hover{color:#0074d9;color:var(--theme-color,#0074d9)}nav.app-nav a.active{border-bottom:2px solid #0074d9;border-bottom:2px solid var(--theme-color,#0074d9)}nav.app-nav li{position:relative;display:inline-block;margin:0 1em;padding:5px 0}nav.app-nav li ul{display:none;box-sizing:border-box;max-height:calc(100vh - 61px);overflow-y:scroll;position:absolute;top:100%;right:-15px;background-color:#fff;padding:10px 0;border:1px solid #ddd;border-bottom-color:#ccc;text-align:left;border-radius:4px;white-space:nowrap}nav.app-nav li ul li{display:block;font-size:14px;margin:0;margin:8px 14px;white-space:nowrap;line-height:1em}nav.app-nav li ul a{display:block;font-size:inherit;margin:0;padding:0}nav.app-nav li ul a.active{border-bottom:0}nav.app-nav li:hover ul{display:block}nav.app-nav.no-badge{margin-right:25px}.github-corner{position:fixed;top:0;right:0;z-index:1;text-decoration:none;border-bottom:0}.github-corner svg{color:#fff;height:80px;width:80px;fill:#0074d9;fill:var(--theme-color,#0074d9)}.github-corner:hover .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}main{display:block;width:100vw;height:100%;position:relative}.anchor{text-decoration:none;-webkit-transition:all .3s;transition:all .3s;display:inline-block}.anchor span{color:#34495e}.anchor:hover{text-decoration:underline}.sidebar{overflow-y:auto;padding:40px 0;top:0;bottom:0;left:0;position:absolute;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out;width:16em;z-index:3;border-right:1px solid rgba(0,0,0,.07)}.sidebar>h1{text-align:center;margin:0 auto 1em;font-size:1.5em;font-weight:300}.sidebar>h1 a{color:inherit;text-decoration:none}.sidebar ul{margin:0;padding:0}.sidebar li>p{font-weight:700;margin:0}.sidebar ul,.sidebar ul li{list-style:none}.sidebar ul li a{display:block;border-bottom:none}.sidebar ul li ul{padding-left:20px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.sidebar:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,53%,.4)}.sidebar:hover::-webkit-scrollbar-track{background:hsla(0,0%,53%,.1)}.sidebar-toggle{background-color:transparent;border:0;bottom:0;left:0;position:absolute;text-align:center;-webkit-transition:opacity .3s;transition:opacity .3s;width:30px;z-index:4;outline:none;width:calc(16em - 16px);padding:10px;background-color:hsla(0,0%,100%,.8)}.sidebar-toggle .sidebar-toggle-button:hover{opacity:.4}.sidebar-toggle span{background-color:#0074d9;background-color:var(--theme-color,#0074d9);display:block;width:16px;height:2px;margin-bottom:4px}body.sticky .sidebar,body.sticky .sidebar-toggle{position:fixed}.content{top:0;right:0;bottom:0;left:16em;position:absolute;padding-top:20px;-webkit-transition:left .25s ease;transition:left .25s ease}.markdown-section{position:relative;margin:0 auto;max-width:800px;padding:20px 15px 40px}.markdown-section>*{box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section hr{border:none;margin:2em 0;border-bottom:1px solid #eee}.markdown-section table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse;margin-bottom:1em}.markdown-section th{font-weight:700}.markdown-section td,.markdown-section th{padding:6px 13px;border:1px solid #ddd}.markdown-section tr{border-top:1px solid #ccc}.markdown-section p.tip,.markdown-section tr:nth-child(2n){background-color:#f8f8f8}.markdown-section p.tip{padding:12px 24px 12px 30px;margin:2em 0;border-left:4px solid #f66;position:relative;border-bottom-right-radius:2px;border-top-right-radius:2px}.markdown-section p.tip code{background-color:#efefef}.markdown-section p.tip em{color:#34495e}.markdown-section p.tip:before{position:absolute;top:14px;left:-12px;background-color:#f66;color:#fff;content:"!";width:20px;height:20px;border-radius:100%;text-align:center;line-height:20px;font-weight:700;font-family:Dosis,Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:14px}.markdown-section p.warn{padding:1em;background:rgba(0,116,217,.1);border-radius:2px}body.close .sidebar{-webkit-transform:translateX(-16em);transform:translateX(-16em)}body.close .sidebar-toggle{width:auto}body.close .content{left:0}@media (max-width:600px){.github-corner,.sidebar,.sidebar-toggle{position:fixed}nav{margin-top:16px}nav li ul{top:30px}main{height:auto;overflow-x:hidden}.sidebar{left:-16em;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.content{left:0;max-width:100vw;position:static;-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.github-corner,nav{-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.sidebar-toggle{width:auto;background-color:transparent}body.close .sidebar{-webkit-transform:translateX(16em);transform:translateX(16em)}body.close .sidebar-toggle{width:calc(16em - 16px);background-color:hsla(0,0%,100%,.8);-webkit-transition:background-color 1s;transition:background-color 1s}body.close .content{-webkit-transform:translateX(16em);transform:translateX(16em)}body.close .github-corner,body.close nav{display:none}.github-corner .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}.github-corner:hover .octo-arm{-webkit-animation:none;animation:none}}@-webkit-keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}section.cover{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;height:100vh;display:none}section.cover .cover-main{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center;margin:-20px 16px 0;z-index:1}section.cover a{color:inherit}section.cover a,section.cover a:hover{text-decoration:none}section.cover p{margin:1em 0;line-height:24px;line-height:1.5rem}section.cover h1{text-align:center;font-size:40px;font-size:2.5rem;position:relative;margin:10px 0 40px;margin:.625rem 0 2.5rem;font-weight:300;color:inherit}section.cover h1 a{display:block}section.cover h1 small{position:absolute;bottom:-7px;bottom:-.4375rem;font-size:16px;font-size:1rem}section.cover blockquote{text-align:center;font-size:24px;font-size:1.5rem}section.cover ul{max-width:500px;list-style-type:none;margin:1em auto;padding:0;line-height:1.8}section.cover .cover-main>p:last-child a{border-radius:2em;border-color:#0074d9;border:1px solid var(--theme-color,#0074d9);box-sizing:border-box;color:#0074d9;color:var(--theme-color,#0074d9);font-size:1.05em;letter-spacing:.1em;padding:.75em 2em;text-decoration:none;-webkit-transition:all .15s ease;transition:all .15s ease;margin-right:1em;display:inline-block}section.cover .cover-main>p:last-child a:last-child{margin-right:0;background-color:#0074d9;background-color:var(--theme-color,#0074d9);color:#fff}section.cover .cover-main>p:last-child a:last-child:hover{opacity:.8;color:inherit}section.cover .cover-main>p:last-child a:hover{color:inherit}section.cover blockquote>p>a{border-bottom:2px solid #0074d9;border-bottom:2px solid var(--theme-color,#0074d9);-webkit-transition:color .3s;transition:color .3s}section.cover blockquote>p>a:hover{color:#0074d9;color:var(--theme-color,#0074d9)}section.cover.show{display:-webkit-box;display:-ms-flexbox;display:flex}section.cover.has-mask .mask{position:absolute;width:100%;height:100%;background-color:#fff;opacity:.8}.sidebar{color:#364149;background-color:#fff}.sidebar a{color:#666;text-decoration:none}.sidebar li{list-style:none;padding:.2em 0 .2em 1em;margin:0}.sidebar ul li ul{padding:0}.sidebar li.active{background-color:#eee}.sidebar li.active a{color:#333}.markdown-section h1,.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section strong{font-weight:400;color:#333}.markdown-section a{color:#0074d9;color:var(--theme-color,#0074d9);font-weight:400}.markdown-section ol,.markdown-section p,.markdown-section ul{word-spacing:.05em;line-height:1.6em;margin:0 0 1em}.markdown-section h1{margin:0 0 1em;font-size:2em;font-weight:500}.markdown-section h2{padding:16px 0 0;padding:1rem 0 0;margin:0 0 16px;margin:0 0 1rem;font-size:1.8em;font-weight:400}.markdown-section h3{margin:52px 0 1.2em;font-size:1.5em}.markdown-section h4{font-size:1.25em}.markdown-section h5{font-size:1em}.markdown-section h6{font-size:1em;color:#777}.markdown-section figure,.markdown-section ol,.markdown-section p,.markdown-section ul{margin:1.2em 0}.markdown-section ol,.markdown-section ul{padding-left:1.5em}.markdown-section li{margin:0;line-height:1.5}.markdown-section blockquote{color:#858585;border-left:4px solid #0074d9;border-left:4px solid var(--theme-color,#0074d9);margin:2em 0;padding-left:20px}.markdown-section blockquote p{font-weight:600;margin-left:0}.markdown-section iframe{margin:1em 0}.markdown-section em{color:#7f8c8d}.markdown-section code{padding:.2em .4em;border-radius:3px;white-space:pre}.markdown-section code,.markdown-section pre{background-color:#f9f9f9;font-family:Inconsolata}.markdown-section pre{border-left:2px solid #eee;padding:8px;margin:0 0 1em;padding:0 10px 12px 0;font-size:16px;overflow:auto;word-wrap:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#a11}.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.markdown-section pre>code{display:block;font-family:Inconsolata;overflow:inherit;max-width:inherit;position:relative;background-color:#f8f8f8;padding:20px .8em;line-height:1.1em;border-radius:2px}.markdown-section code:after,.markdown-section code:before{letter-spacing:.05em}code .token{min-height:1.5em;-webkit-font-smoothing:initial;-moz-osx-font-smoothing:initial}
\ No newline at end of file
diff --git a/lib/themes/dark.css b/lib/themes/dark.css
index 54a688e0b..52c1f1e29 100644
--- a/lib/themes/dark.css
+++ b/lib/themes/dark.css
@@ -1 +1 @@
-@import url("https://fonts.googleapis.com/css?family=Roboto+Mono|Source+Sans+Pro:300,400,600");*{box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased}body:not(.ready){overflow:hidden}body:not(.ready) [data-cloak]{display:none}div#app{text-align:center;font-size:30px;font-weight:lighter;margin:40vh auto}div#app:empty:before{content:"Loading..."}.emoji{height:1.2em;vertical-align:middle}.progress{background-color:#ea6f5a;background-color:var(--theme-color,#ea6f5a);height:2px;left:0;position:fixed;right:0;top:0;-webkit-transition:width .2s,opacity .4s;transition:width .2s,opacity .4s;width:0;z-index:5}.search .search-keyword,.search a:hover{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}.search .search-keyword{font-style:normal}body,html{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:15px;letter-spacing:0;margin:0;overflow-x:hidden;color:#c8c8c8}img{max-width:100%}kbd{display:inline-block;padding:3px 5px;margin-bottom:3px;font-size:12px!important;line-height:12px;vertical-align:middle;border:1px solid #ccc;border-radius:3px}nav.app-nav{position:absolute;right:0;left:0;z-index:2;margin:25px 60px 0 0;text-align:right}nav.app-nav p{margin:0}nav.app-nav>a{margin:0 1em;padding:5px 0}nav.app-nav li,nav.app-nav ul{list-style:none;display:inline-block;margin:0}nav.app-nav a{font-size:16px;text-decoration:none;color:inherit;-webkit-transition:color .3s;transition:color .3s}nav.app-nav a.active,nav.app-nav a:hover{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}nav.app-nav a.active{border-bottom:2px solid #ea6f5a;border-bottom:2px solid var(--theme-color,#ea6f5a)}nav.app-nav li{position:relative;display:inline-block;margin:0 1em;padding:5px 0}nav.app-nav li ul{display:none;box-sizing:border-box;max-height:calc(100vh - 61px);overflow-y:scroll;position:absolute;top:100%;right:-15px;background-color:#fff;padding:10px 0;border:1px solid #ddd;border-bottom-color:#ccc;text-align:left;border-radius:4px;white-space:nowrap}nav.app-nav li ul li{display:block;font-size:14px;margin:0;margin:8px 14px;white-space:nowrap;line-height:1em}nav.app-nav li ul a{display:block;font-size:inherit;margin:0;padding:0}nav.app-nav li ul a.active{border-bottom:0}nav.app-nav li:hover ul{display:block}nav.app-nav.no-badge{margin-right:25px}.github-corner{position:fixed;top:0;right:0;z-index:1;text-decoration:none;border-bottom:0}.github-corner svg{color:#3f3f3f;height:80px;width:80px;fill:#ea6f5a;fill:var(--theme-color,#ea6f5a)}.github-corner:hover .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}main{display:block;width:100vw;height:100%;position:relative}.anchor{text-decoration:none;-webkit-transition:all .3s;transition:all .3s;display:inline-block}.anchor span{color:#c8c8c8}.anchor:hover{text-decoration:underline}.sidebar{overflow-y:auto;padding:40px 0;top:0;bottom:0;left:0;position:absolute;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out;width:300px;z-index:3;border-right:1px solid rgba(0,0,0,.07)}.sidebar>h1{text-align:center;margin:0 auto 1em;font-size:1.5em;font-weight:300}.sidebar>h1 a{color:inherit;text-decoration:none}.sidebar ul{margin:0;padding:0}.sidebar li>p{font-weight:700;margin:0}.sidebar ul,.sidebar ul li{list-style:none}.sidebar ul li a{display:block;border-bottom:none}.sidebar ul li ul{padding-left:20px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.sidebar:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,53%,.4)}.sidebar:hover::-webkit-scrollbar-track{background:hsla(0,0%,53%,.1)}.sidebar-toggle{background-color:transparent;border:0;bottom:0;left:0;position:absolute;text-align:center;-webkit-transition:opacity .3s;transition:opacity .3s;width:30px;z-index:4;outline:none;width:284px;padding:10px;background-color:rgba(63,63,63,.8)}.sidebar-toggle .sidebar-toggle-button:hover{opacity:.4}.sidebar-toggle span{background-color:#ea6f5a;background-color:var(--theme-color,#ea6f5a);display:block;width:16px;height:2px;margin-bottom:4px}body.sticky .sidebar,body.sticky .sidebar-toggle{position:fixed}.content{top:0;right:0;bottom:0;left:300px;position:absolute;padding-top:20px;-webkit-transition:left .25s ease;transition:left .25s ease}.markdown-section{position:relative;margin:0 auto;max-width:800px;padding:20px 15px 40px}.markdown-section>*{box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section hr{border:none;margin:2em 0;border-bottom:1px solid #eee}.markdown-section table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse;margin-bottom:1em}.markdown-section th{font-weight:700}.markdown-section td,.markdown-section th{padding:6px 13px;border:1px solid #ddd}.markdown-section tr{border-top:1px solid #ccc}.markdown-section p.tip,.markdown-section tr:nth-child(2n){background-color:#f8f8f8}.markdown-section p.tip{padding:12px 24px 12px 30px;margin:2em 0;border-left:4px solid #f66;position:relative;border-bottom-right-radius:2px;border-top-right-radius:2px}.markdown-section p.tip code{background-color:#efefef}.markdown-section p.tip em{color:#c8c8c8}.markdown-section p.tip:before{position:absolute;top:14px;left:-12px;background-color:#f66;color:#3f3f3f;content:"!";width:20px;height:20px;border-radius:100%;text-align:center;line-height:20px;font-weight:700;font-family:Dosis,Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:14px}.markdown-section p.warn{padding:1em;background:hsla(9,77%,64%,.1);border-radius:2px}body.close .sidebar{-webkit-transform:translateX(-300px);transform:translateX(-300px)}body.close .sidebar-toggle{width:auto}body.close .content{left:0}@media (max-width:600px){.github-corner,.sidebar,.sidebar-toggle{position:fixed}nav{margin-top:16px}nav li ul{top:30px}main{height:auto;overflow-x:hidden}.sidebar{left:-300px;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.content{left:0;max-width:100vw;position:static;-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.github-corner,nav{-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.sidebar-toggle{width:auto;background-color:transparent}body.close .sidebar{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .sidebar-toggle{width:284px;background-color:rgba(63,63,63,.8);-webkit-transition:background-color 1s;transition:background-color 1s}body.close .content{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .github-corner,body.close nav{display:none}.github-corner .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}.github-corner:hover .octo-arm{-webkit-animation:none;animation:none}}@-webkit-keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}section.cover{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;height:100vh;display:none}section.cover .cover-main{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center;margin:-20px 16px 0;z-index:1}section.cover a{color:inherit}section.cover a,section.cover a:hover{text-decoration:none}section.cover p{margin:1em 0;line-height:24px;line-height:1.5rem}section.cover h1{text-align:center;font-size:40px;font-size:2.5rem;position:relative;margin:10px 0 40px;margin:.625rem 0 2.5rem;font-weight:300;color:inherit}section.cover h1 a{display:block}section.cover h1 small{position:absolute;bottom:-7px;bottom:-.4375rem;font-size:16px;font-size:1rem}section.cover blockquote{text-align:center;font-size:24px;font-size:1.5rem}section.cover ul{max-width:500px;list-style-type:none;margin:1em auto;padding:0;line-height:1.8}section.cover .cover-main>p:last-child a{border-radius:2em;border-color:#ea6f5a;border:1px solid var(--theme-color,#ea6f5a);box-sizing:border-box;color:#ea6f5a;color:var(--theme-color,#ea6f5a);font-size:1.05em;letter-spacing:.1em;padding:.75em 2em;text-decoration:none;-webkit-transition:all .15s ease;transition:all .15s ease;margin-right:1em;display:inline-block}section.cover .cover-main>p:last-child a:last-child{margin-right:0;background-color:#ea6f5a;background-color:var(--theme-color,#ea6f5a);color:#fff}section.cover .cover-main>p:last-child a:last-child:hover{opacity:.8;color:inherit}section.cover .cover-main>p:last-child a:hover{color:inherit}section.cover blockquote>p>a{border-bottom:2px solid #ea6f5a;border-bottom:2px solid var(--theme-color,#ea6f5a);-webkit-transition:color .3s;transition:color .3s}section.cover blockquote>p>a:hover{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}section.cover.show{display:-webkit-box;display:-ms-flexbox;display:flex}section.cover.has-mask .mask{position:absolute;width:100%;height:100%;background-color:#3f3f3f;opacity:.8}.sidebar,body{background-color:#3f3f3f}.sidebar{color:#c8c8c8}.sidebar li{margin:6px 15px}.sidebar ul li a{color:#c8c8c8;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-decoration:none;font-size:14px}.sidebar ul li a:hover{text-decoration:underline}.sidebar ul li ul{padding:0}.sidebar ul li.active>a{color:#ea6f5a;color:var(--theme-color,#ea6f5a);font-weight:600}.markdown-section h1,.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section strong{font-weight:600;color:#2c3e50}.markdown-section a{color:#ea6f5a;color:var(--theme-color,#ea6f5a);font-weight:600}.markdown-section h1{margin:0 0 1em;font-size:2em}.markdown-section h2{font-size:1.75em;margin:45px 0 .8em}.markdown-section h3{margin:40px 0 .6em;font-size:1.5em}.markdown-section h4{font-size:1.25em}.markdown-section h5{font-size:1em}.markdown-section h6{font-size:1em;color:#777}.markdown-section figure,.markdown-section ol,.markdown-section p,.markdown-section ul{margin:1.2em 0}.markdown-section ol,.markdown-section p,.markdown-section ul{line-height:1.6em;word-spacing:.05em}.markdown-section ol,.markdown-section ul{padding-left:1.5em}.markdown-section blockquote{color:#858585;border-left:4px solid #ea6f5a;border-left:4px solid var(--theme-color,#ea6f5a);margin:2em 0;padding-left:20px}.markdown-section blockquote p{font-weight:600;margin-left:0}.markdown-section iframe{margin:1em 0}.markdown-section em{color:#7f8c8d}.markdown-section code{border-radius:2px;color:#657b83;margin:0 2px;padding:3px 5px;white-space:nowrap;font-size:.8em}.markdown-section code,.markdown-section pre{font-family:Roboto Mono,Monaco,courier,monospace;background-color:#282828}.markdown-section pre{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;line-height:1.5em;margin:1.2em 0;padding:0 1.4em;position:relative;overflow:auto;word-wrap:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#8e908c}.token.namespace{opacity:.7}.token.boolean,.token.number{color:#c76b29}.token.punctuation{color:#525252}.token.property{color:#c08b30}.token.tag{color:#2973b7}.token.string{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}.token.selector{color:#6679cc}.token.attr-name{color:#2973b7}.language-css .token.string,.style .token.string,.token.entity,.token.url{color:#22a2c9}.token.attr-value,.token.control,.token.directive,.token.unit{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}.token.keyword{color:#e96900}.token.atrule,.token.regex,.token.statement{color:#22a2c9}.token.placeholder,.token.variable{color:#3d8fd1}.token.deleted{text-decoration:line-through}.token.inserted{border-bottom:1px dotted #202746;text-decoration:none}.token.italic{font-style:italic}.token.bold,.token.important{font-weight:700}.token.important{color:#c94922}.token.entity{cursor:help}.markdown-section pre>code{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;background-color:#282828;border-radius:2px;color:#657b83;display:block;font-family:Roboto Mono,Monaco,courier,monospace;font-size:.8em;line-height:inherit;margin:0 2px;overflow:inherit;padding:2.2em 5px;white-space:inherit;max-width:inherit}.markdown-section code:after,.markdown-section code:before{letter-spacing:.05em}code .token{min-height:1.5em;-webkit-font-smoothing:initial;-moz-osx-font-smoothing:initial}pre:after{color:#ccc;content:attr(data-lang);font-size:.6em;font-weight:600;height:15px;line-height:15px;padding:5px 10px 0;position:absolute;right:0;text-align:right;top:0}.markdown-section p.tip{background-color:#282828;color:#657b83}input[type=search]{border-color:#4f4f4f;background:#4f4f4f;color:#c8c8c8}
\ No newline at end of file
+@import url("https://fonts.googleapis.com/css?family=Roboto+Mono|Source+Sans+Pro:300,400,600");*{box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased}body:not(.ready){overflow:hidden}body:not(.ready) [data-cloak],body:not(.ready) nav{display:none}div#app{text-align:center;font-size:30px;font-weight:lighter;margin:40vh auto}div#app:empty:before{content:"Loading..."}.emoji{height:1.2em;vertical-align:middle}.progress{background-color:#ea6f5a;background-color:var(--theme-color,#ea6f5a);height:2px;left:0;position:fixed;right:0;top:0;-webkit-transition:width .2s,opacity .4s;transition:width .2s,opacity .4s;width:0;z-index:5}.search .search-keyword,.search a:hover{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}.search .search-keyword{font-style:normal}body,html{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:15px;letter-spacing:0;margin:0;overflow-x:hidden;color:#c8c8c8}img{max-width:100%}kbd{display:inline-block;padding:3px 5px;margin-bottom:3px;font-size:12px!important;line-height:12px;vertical-align:middle;border:1px solid #ccc;border-radius:3px}nav.app-nav{position:absolute;right:0;left:0;z-index:2;margin:25px 60px 0 0;text-align:right}nav.app-nav p{margin:0}nav.app-nav>a{margin:0 1em;padding:5px 0}nav.app-nav li,nav.app-nav ul{list-style:none;display:inline-block;margin:0}nav.app-nav a{font-size:16px;text-decoration:none;color:inherit;-webkit-transition:color .3s;transition:color .3s}nav.app-nav a.active,nav.app-nav a:hover{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}nav.app-nav a.active{border-bottom:2px solid #ea6f5a;border-bottom:2px solid var(--theme-color,#ea6f5a)}nav.app-nav li{position:relative;display:inline-block;margin:0 1em;padding:5px 0}nav.app-nav li ul{display:none;box-sizing:border-box;max-height:calc(100vh - 61px);overflow-y:scroll;position:absolute;top:100%;right:-15px;background-color:#fff;padding:10px 0;border:1px solid #ddd;border-bottom-color:#ccc;text-align:left;border-radius:4px;white-space:nowrap}nav.app-nav li ul li{display:block;font-size:14px;margin:0;margin:8px 14px;white-space:nowrap;line-height:1em}nav.app-nav li ul a{display:block;font-size:inherit;margin:0;padding:0}nav.app-nav li ul a.active{border-bottom:0}nav.app-nav li:hover ul{display:block}nav.app-nav.no-badge{margin-right:25px}.github-corner{position:fixed;top:0;right:0;z-index:1;text-decoration:none;border-bottom:0}.github-corner svg{color:#3f3f3f;height:80px;width:80px;fill:#ea6f5a;fill:var(--theme-color,#ea6f5a)}.github-corner:hover .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}main{display:block;width:100vw;height:100%;position:relative}.anchor{text-decoration:none;-webkit-transition:all .3s;transition:all .3s;display:inline-block}.anchor span{color:#c8c8c8}.anchor:hover{text-decoration:underline}.sidebar{overflow-y:auto;padding:40px 0;top:0;bottom:0;left:0;position:absolute;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out;width:300px;z-index:3;border-right:1px solid rgba(0,0,0,.07)}.sidebar>h1{text-align:center;margin:0 auto 1em;font-size:1.5em;font-weight:300}.sidebar>h1 a{color:inherit;text-decoration:none}.sidebar ul{margin:0;padding:0}.sidebar li>p{font-weight:700;margin:0}.sidebar ul,.sidebar ul li{list-style:none}.sidebar ul li a{display:block;border-bottom:none}.sidebar ul li ul{padding-left:20px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.sidebar:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,53%,.4)}.sidebar:hover::-webkit-scrollbar-track{background:hsla(0,0%,53%,.1)}.sidebar-toggle{background-color:transparent;border:0;bottom:0;left:0;position:absolute;text-align:center;-webkit-transition:opacity .3s;transition:opacity .3s;width:30px;z-index:4;outline:none;width:284px;padding:10px;background-color:rgba(63,63,63,.8)}.sidebar-toggle .sidebar-toggle-button:hover{opacity:.4}.sidebar-toggle span{background-color:#ea6f5a;background-color:var(--theme-color,#ea6f5a);display:block;width:16px;height:2px;margin-bottom:4px}body.sticky .sidebar,body.sticky .sidebar-toggle{position:fixed}.content{top:0;right:0;bottom:0;left:300px;position:absolute;padding-top:20px;-webkit-transition:left .25s ease;transition:left .25s ease}.markdown-section{position:relative;margin:0 auto;max-width:800px;padding:20px 15px 40px}.markdown-section>*{box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section hr{border:none;margin:2em 0;border-bottom:1px solid #eee}.markdown-section table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse;margin-bottom:1em}.markdown-section th{font-weight:700}.markdown-section td,.markdown-section th{padding:6px 13px;border:1px solid #ddd}.markdown-section tr{border-top:1px solid #ccc}.markdown-section p.tip,.markdown-section tr:nth-child(2n){background-color:#f8f8f8}.markdown-section p.tip{padding:12px 24px 12px 30px;margin:2em 0;border-left:4px solid #f66;position:relative;border-bottom-right-radius:2px;border-top-right-radius:2px}.markdown-section p.tip code{background-color:#efefef}.markdown-section p.tip em{color:#c8c8c8}.markdown-section p.tip:before{position:absolute;top:14px;left:-12px;background-color:#f66;color:#3f3f3f;content:"!";width:20px;height:20px;border-radius:100%;text-align:center;line-height:20px;font-weight:700;font-family:Dosis,Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:14px}.markdown-section p.warn{padding:1em;background:hsla(9,77%,64%,.1);border-radius:2px}body.close .sidebar{-webkit-transform:translateX(-300px);transform:translateX(-300px)}body.close .sidebar-toggle{width:auto}body.close .content{left:0}@media (max-width:600px){.github-corner,.sidebar,.sidebar-toggle{position:fixed}nav{margin-top:16px}nav li ul{top:30px}main{height:auto;overflow-x:hidden}.sidebar{left:-300px;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.content{left:0;max-width:100vw;position:static;-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.github-corner,nav{-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.sidebar-toggle{width:auto;background-color:transparent}body.close .sidebar{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .sidebar-toggle{width:284px;background-color:rgba(63,63,63,.8);-webkit-transition:background-color 1s;transition:background-color 1s}body.close .content{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .github-corner,body.close nav{display:none}.github-corner .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}.github-corner:hover .octo-arm{-webkit-animation:none;animation:none}}@-webkit-keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}section.cover{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;height:100vh;display:none}section.cover .cover-main{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center;margin:-20px 16px 0;z-index:1}section.cover a{color:inherit}section.cover a,section.cover a:hover{text-decoration:none}section.cover p{margin:1em 0;line-height:24px;line-height:1.5rem}section.cover h1{text-align:center;font-size:40px;font-size:2.5rem;position:relative;margin:10px 0 40px;margin:.625rem 0 2.5rem;font-weight:300;color:inherit}section.cover h1 a{display:block}section.cover h1 small{position:absolute;bottom:-7px;bottom:-.4375rem;font-size:16px;font-size:1rem}section.cover blockquote{text-align:center;font-size:24px;font-size:1.5rem}section.cover ul{max-width:500px;list-style-type:none;margin:1em auto;padding:0;line-height:1.8}section.cover .cover-main>p:last-child a{border-radius:2em;border-color:#ea6f5a;border:1px solid var(--theme-color,#ea6f5a);box-sizing:border-box;color:#ea6f5a;color:var(--theme-color,#ea6f5a);font-size:1.05em;letter-spacing:.1em;padding:.75em 2em;text-decoration:none;-webkit-transition:all .15s ease;transition:all .15s ease;margin-right:1em;display:inline-block}section.cover .cover-main>p:last-child a:last-child{margin-right:0;background-color:#ea6f5a;background-color:var(--theme-color,#ea6f5a);color:#fff}section.cover .cover-main>p:last-child a:last-child:hover{opacity:.8;color:inherit}section.cover .cover-main>p:last-child a:hover{color:inherit}section.cover blockquote>p>a{border-bottom:2px solid #ea6f5a;border-bottom:2px solid var(--theme-color,#ea6f5a);-webkit-transition:color .3s;transition:color .3s}section.cover blockquote>p>a:hover{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}section.cover.show{display:-webkit-box;display:-ms-flexbox;display:flex}section.cover.has-mask .mask{position:absolute;width:100%;height:100%;background-color:#3f3f3f;opacity:.8}.sidebar,body{background-color:#3f3f3f}.sidebar{color:#c8c8c8}.sidebar li{margin:6px 15px}.sidebar ul li a{color:#c8c8c8;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-decoration:none;font-size:14px}.sidebar ul li a:hover{text-decoration:underline}.sidebar ul li ul{padding:0}.sidebar ul li.active>a{color:#ea6f5a;color:var(--theme-color,#ea6f5a);font-weight:600}.markdown-section h1,.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section strong{font-weight:600;color:#2c3e50}.markdown-section a{color:#ea6f5a;color:var(--theme-color,#ea6f5a);font-weight:600}.markdown-section h1{margin:0 0 1em;font-size:2em}.markdown-section h2{font-size:1.75em;margin:45px 0 .8em}.markdown-section h3{margin:40px 0 .6em;font-size:1.5em}.markdown-section h4{font-size:1.25em}.markdown-section h5{font-size:1em}.markdown-section h6{font-size:1em;color:#777}.markdown-section figure,.markdown-section ol,.markdown-section p,.markdown-section ul{margin:1.2em 0}.markdown-section ol,.markdown-section p,.markdown-section ul{line-height:1.6em;word-spacing:.05em}.markdown-section ol,.markdown-section ul{padding-left:1.5em}.markdown-section blockquote{color:#858585;border-left:4px solid #ea6f5a;border-left:4px solid var(--theme-color,#ea6f5a);margin:2em 0;padding-left:20px}.markdown-section blockquote p{font-weight:600;margin-left:0}.markdown-section iframe{margin:1em 0}.markdown-section em{color:#7f8c8d}.markdown-section code{border-radius:2px;color:#657b83;margin:0 2px;padding:3px 5px;white-space:nowrap;font-size:.8em}.markdown-section code,.markdown-section pre{font-family:Roboto Mono,Monaco,courier,monospace;background-color:#282828}.markdown-section pre{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;line-height:1.5em;margin:1.2em 0;padding:0 1.4em;position:relative;overflow:auto;word-wrap:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#8e908c}.token.namespace{opacity:.7}.token.boolean,.token.number{color:#c76b29}.token.punctuation{color:#525252}.token.property{color:#c08b30}.token.tag{color:#2973b7}.token.string{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}.token.selector{color:#6679cc}.token.attr-name{color:#2973b7}.language-css .token.string,.style .token.string,.token.entity,.token.url{color:#22a2c9}.token.attr-value,.token.control,.token.directive,.token.unit{color:#ea6f5a;color:var(--theme-color,#ea6f5a)}.token.keyword{color:#e96900}.token.atrule,.token.regex,.token.statement{color:#22a2c9}.token.placeholder,.token.variable{color:#3d8fd1}.token.deleted{text-decoration:line-through}.token.inserted{border-bottom:1px dotted #202746;text-decoration:none}.token.italic{font-style:italic}.token.bold,.token.important{font-weight:700}.token.important{color:#c94922}.token.entity{cursor:help}.markdown-section pre>code{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;background-color:#282828;border-radius:2px;color:#657b83;display:block;font-family:Roboto Mono,Monaco,courier,monospace;font-size:.8em;line-height:inherit;margin:0 2px;overflow:inherit;padding:2.2em 5px;white-space:inherit;max-width:inherit}.markdown-section code:after,.markdown-section code:before{letter-spacing:.05em}code .token{min-height:1.5em;-webkit-font-smoothing:initial;-moz-osx-font-smoothing:initial}pre:after{color:#ccc;content:attr(data-lang);font-size:.6em;font-weight:600;height:15px;line-height:15px;padding:5px 10px 0;position:absolute;right:0;text-align:right;top:0}.markdown-section p.tip{background-color:#282828;color:#657b83}input[type=search]{border-color:#4f4f4f;background:#4f4f4f;color:#c8c8c8}
\ No newline at end of file
diff --git a/lib/themes/pure.css b/lib/themes/pure.css
index 8f8fcc172..89c029c5c 100644
--- a/lib/themes/pure.css
+++ b/lib/themes/pure.css
@@ -1 +1 @@
-*{box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased}body:not(.ready){overflow:hidden}body:not(.ready) [data-cloak]{display:none}div#app{text-align:center;font-size:30px;font-weight:lighter;margin:40vh auto}div#app:empty:before{content:"Loading..."}.emoji{height:1.2em;vertical-align:middle}.progress{background-color:#000;background-color:var(--theme-color,#000);height:2px;left:0;position:fixed;right:0;top:0;-webkit-transition:width .2s,opacity .4s;transition:width .2s,opacity .4s;width:0;z-index:5}.search .search-keyword,.search a:hover{color:#000;color:var(--theme-color,#000)}.search .search-keyword{font-style:normal}body,html{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:15px;letter-spacing:0;margin:0;overflow-x:hidden;color:#000}img{max-width:100%}kbd{display:inline-block;padding:3px 5px;margin-bottom:3px;font-size:12px!important;line-height:12px;vertical-align:middle;border:1px solid #ccc;border-radius:3px}nav.app-nav{position:absolute;right:0;left:0;z-index:2;margin:25px 60px 0 0;text-align:right}nav.app-nav p{margin:0}nav.app-nav>a{margin:0 1em;padding:5px 0}nav.app-nav li,nav.app-nav ul{list-style:none;display:inline-block;margin:0}nav.app-nav a{font-size:16px;text-decoration:none;color:inherit;-webkit-transition:color .3s;transition:color .3s}nav.app-nav a.active,nav.app-nav a:hover{color:#000;color:var(--theme-color,#000)}nav.app-nav a.active{border-bottom:2px solid #000;border-bottom:2px solid var(--theme-color,#000)}nav.app-nav li{position:relative;display:inline-block;margin:0 1em;padding:5px 0}nav.app-nav li ul{display:none;box-sizing:border-box;max-height:calc(100vh - 61px);overflow-y:scroll;position:absolute;top:100%;right:-15px;background-color:#fff;padding:10px 0;border:1px solid #ddd;border-bottom-color:#ccc;text-align:left;border-radius:4px;white-space:nowrap}nav.app-nav li ul li{display:block;font-size:14px;margin:0;margin:8px 14px;white-space:nowrap;line-height:1em}nav.app-nav li ul a{display:block;font-size:inherit;margin:0;padding:0}nav.app-nav li ul a.active{border-bottom:0}nav.app-nav li:hover ul{display:block}nav.app-nav.no-badge{margin-right:25px}.github-corner{position:fixed;top:0;right:0;z-index:1;text-decoration:none;border-bottom:0}.github-corner svg{color:#fff;height:80px;width:80px;fill:#000;fill:var(--theme-color,#000)}.github-corner:hover .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}main{display:block;width:100vw;height:100%;position:relative}.anchor{text-decoration:none;-webkit-transition:all .3s;transition:all .3s;display:inline-block}.anchor span{color:#000}.anchor:hover{text-decoration:underline}.sidebar{overflow-y:auto;padding:40px 0;top:0;bottom:0;left:0;position:absolute;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out;width:300px;z-index:3;border-right:1px solid rgba(0,0,0,.07)}.sidebar>h1{text-align:center;margin:0 auto 1em;font-size:1.5em;font-weight:300}.sidebar>h1 a{color:inherit;text-decoration:none}.sidebar ul{margin:0;padding:0}.sidebar li>p{font-weight:700;margin:0}.sidebar ul,.sidebar ul li{list-style:none}.sidebar ul li a{display:block;border-bottom:none}.sidebar ul li ul{padding-left:20px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.sidebar:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,53%,.4)}.sidebar:hover::-webkit-scrollbar-track{background:hsla(0,0%,53%,.1)}.sidebar-toggle{background-color:transparent;border:0;bottom:0;left:0;position:absolute;text-align:center;-webkit-transition:opacity .3s;transition:opacity .3s;width:30px;z-index:4;outline:none;width:284px;padding:10px;background-color:hsla(0,0%,100%,.8)}.sidebar-toggle .sidebar-toggle-button:hover{opacity:.4}.sidebar-toggle span{background-color:#000;background-color:var(--theme-color,#000);display:block;width:16px;height:2px;margin-bottom:4px}body.sticky .sidebar,body.sticky .sidebar-toggle{position:fixed}.content{top:0;right:0;bottom:0;left:300px;position:absolute;padding-top:20px;-webkit-transition:left .25s ease;transition:left .25s ease}.markdown-section{position:relative;margin:0 auto;max-width:800px;padding:20px 15px 40px}.markdown-section>*{box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section hr{border:none;margin:2em 0;border-bottom:1px solid #eee}.markdown-section table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse;margin-bottom:1em}.markdown-section th{font-weight:700}.markdown-section td,.markdown-section th{padding:6px 13px;border:1px solid #ddd}.markdown-section tr{border-top:1px solid #ccc}.markdown-section p.tip,.markdown-section tr:nth-child(2n){background-color:#f8f8f8}.markdown-section p.tip{padding:12px 24px 12px 30px;margin:2em 0;border-left:4px solid #f66;position:relative;border-bottom-right-radius:2px;border-top-right-radius:2px}.markdown-section p.tip code{background-color:#efefef}.markdown-section p.tip em{color:#000}.markdown-section p.tip:before{position:absolute;top:14px;left:-12px;background-color:#f66;color:#fff;content:"!";width:20px;height:20px;border-radius:100%;text-align:center;line-height:20px;font-weight:700;font-family:Dosis,Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:14px}.markdown-section p.warn{padding:1em;background:rgba(0,0,0,.1);border-radius:2px}body.close .sidebar{-webkit-transform:translateX(-300px);transform:translateX(-300px)}body.close .sidebar-toggle{width:auto}body.close .content{left:0}@media (max-width:600px){.github-corner,.sidebar,.sidebar-toggle{position:fixed}nav{margin-top:16px}nav li ul{top:30px}main{height:auto;overflow-x:hidden}.sidebar{left:-300px;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.content{left:0;max-width:100vw;position:static;-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.github-corner,nav{-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.sidebar-toggle{width:auto;background-color:transparent}body.close .sidebar{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .sidebar-toggle{width:284px;background-color:hsla(0,0%,100%,.8);-webkit-transition:background-color 1s;transition:background-color 1s}body.close .content{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .github-corner,body.close nav{display:none}.github-corner .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}.github-corner:hover .octo-arm{-webkit-animation:none;animation:none}}@-webkit-keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}
\ No newline at end of file
+*{box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased}body:not(.ready){overflow:hidden}body:not(.ready) [data-cloak],body:not(.ready) nav{display:none}div#app{text-align:center;font-size:30px;font-weight:lighter;margin:40vh auto}div#app:empty:before{content:"Loading..."}.emoji{height:1.2em;vertical-align:middle}.progress{background-color:#000;background-color:var(--theme-color,#000);height:2px;left:0;position:fixed;right:0;top:0;-webkit-transition:width .2s,opacity .4s;transition:width .2s,opacity .4s;width:0;z-index:5}.search .search-keyword,.search a:hover{color:#000;color:var(--theme-color,#000)}.search .search-keyword{font-style:normal}body,html{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:15px;letter-spacing:0;margin:0;overflow-x:hidden;color:#000}img{max-width:100%}kbd{display:inline-block;padding:3px 5px;margin-bottom:3px;font-size:12px!important;line-height:12px;vertical-align:middle;border:1px solid #ccc;border-radius:3px}nav.app-nav{position:absolute;right:0;left:0;z-index:2;margin:25px 60px 0 0;text-align:right}nav.app-nav p{margin:0}nav.app-nav>a{margin:0 1em;padding:5px 0}nav.app-nav li,nav.app-nav ul{list-style:none;display:inline-block;margin:0}nav.app-nav a{font-size:16px;text-decoration:none;color:inherit;-webkit-transition:color .3s;transition:color .3s}nav.app-nav a.active,nav.app-nav a:hover{color:#000;color:var(--theme-color,#000)}nav.app-nav a.active{border-bottom:2px solid #000;border-bottom:2px solid var(--theme-color,#000)}nav.app-nav li{position:relative;display:inline-block;margin:0 1em;padding:5px 0}nav.app-nav li ul{display:none;box-sizing:border-box;max-height:calc(100vh - 61px);overflow-y:scroll;position:absolute;top:100%;right:-15px;background-color:#fff;padding:10px 0;border:1px solid #ddd;border-bottom-color:#ccc;text-align:left;border-radius:4px;white-space:nowrap}nav.app-nav li ul li{display:block;font-size:14px;margin:0;margin:8px 14px;white-space:nowrap;line-height:1em}nav.app-nav li ul a{display:block;font-size:inherit;margin:0;padding:0}nav.app-nav li ul a.active{border-bottom:0}nav.app-nav li:hover ul{display:block}nav.app-nav.no-badge{margin-right:25px}.github-corner{position:fixed;top:0;right:0;z-index:1;text-decoration:none;border-bottom:0}.github-corner svg{color:#fff;height:80px;width:80px;fill:#000;fill:var(--theme-color,#000)}.github-corner:hover .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}main{display:block;width:100vw;height:100%;position:relative}.anchor{text-decoration:none;-webkit-transition:all .3s;transition:all .3s;display:inline-block}.anchor span{color:#000}.anchor:hover{text-decoration:underline}.sidebar{overflow-y:auto;padding:40px 0;top:0;bottom:0;left:0;position:absolute;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out;width:300px;z-index:3;border-right:1px solid rgba(0,0,0,.07)}.sidebar>h1{text-align:center;margin:0 auto 1em;font-size:1.5em;font-weight:300}.sidebar>h1 a{color:inherit;text-decoration:none}.sidebar ul{margin:0;padding:0}.sidebar li>p{font-weight:700;margin:0}.sidebar ul,.sidebar ul li{list-style:none}.sidebar ul li a{display:block;border-bottom:none}.sidebar ul li ul{padding-left:20px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.sidebar:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,53%,.4)}.sidebar:hover::-webkit-scrollbar-track{background:hsla(0,0%,53%,.1)}.sidebar-toggle{background-color:transparent;border:0;bottom:0;left:0;position:absolute;text-align:center;-webkit-transition:opacity .3s;transition:opacity .3s;width:30px;z-index:4;outline:none;width:284px;padding:10px;background-color:hsla(0,0%,100%,.8)}.sidebar-toggle .sidebar-toggle-button:hover{opacity:.4}.sidebar-toggle span{background-color:#000;background-color:var(--theme-color,#000);display:block;width:16px;height:2px;margin-bottom:4px}body.sticky .sidebar,body.sticky .sidebar-toggle{position:fixed}.content{top:0;right:0;bottom:0;left:300px;position:absolute;padding-top:20px;-webkit-transition:left .25s ease;transition:left .25s ease}.markdown-section{position:relative;margin:0 auto;max-width:800px;padding:20px 15px 40px}.markdown-section>*{box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section hr{border:none;margin:2em 0;border-bottom:1px solid #eee}.markdown-section table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse;margin-bottom:1em}.markdown-section th{font-weight:700}.markdown-section td,.markdown-section th{padding:6px 13px;border:1px solid #ddd}.markdown-section tr{border-top:1px solid #ccc}.markdown-section p.tip,.markdown-section tr:nth-child(2n){background-color:#f8f8f8}.markdown-section p.tip{padding:12px 24px 12px 30px;margin:2em 0;border-left:4px solid #f66;position:relative;border-bottom-right-radius:2px;border-top-right-radius:2px}.markdown-section p.tip code{background-color:#efefef}.markdown-section p.tip em{color:#000}.markdown-section p.tip:before{position:absolute;top:14px;left:-12px;background-color:#f66;color:#fff;content:"!";width:20px;height:20px;border-radius:100%;text-align:center;line-height:20px;font-weight:700;font-family:Dosis,Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:14px}.markdown-section p.warn{padding:1em;background:rgba(0,0,0,.1);border-radius:2px}body.close .sidebar{-webkit-transform:translateX(-300px);transform:translateX(-300px)}body.close .sidebar-toggle{width:auto}body.close .content{left:0}@media (max-width:600px){.github-corner,.sidebar,.sidebar-toggle{position:fixed}nav{margin-top:16px}nav li ul{top:30px}main{height:auto;overflow-x:hidden}.sidebar{left:-300px;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.content{left:0;max-width:100vw;position:static;-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.github-corner,nav{-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.sidebar-toggle{width:auto;background-color:transparent}body.close .sidebar{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .sidebar-toggle{width:284px;background-color:hsla(0,0%,100%,.8);-webkit-transition:background-color 1s;transition:background-color 1s}body.close .content{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .github-corner,body.close nav{display:none}.github-corner .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}.github-corner:hover .octo-arm{-webkit-animation:none;animation:none}}@-webkit-keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}
\ No newline at end of file
diff --git a/lib/themes/vue.css b/lib/themes/vue.css
index dcfaeb949..6af840dcd 100644
--- a/lib/themes/vue.css
+++ b/lib/themes/vue.css
@@ -1 +1 @@
-@import url("https://fonts.googleapis.com/css?family=Roboto+Mono|Source+Sans+Pro:300,400,600");*{box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased}body:not(.ready){overflow:hidden}body:not(.ready) [data-cloak]{display:none}div#app{text-align:center;font-size:30px;font-weight:lighter;margin:40vh auto}div#app:empty:before{content:"Loading..."}.emoji{height:1.2em;vertical-align:middle}.progress{background-color:#42b983;background-color:var(--theme-color,#42b983);height:2px;left:0;position:fixed;right:0;top:0;-webkit-transition:width .2s,opacity .4s;transition:width .2s,opacity .4s;width:0;z-index:5}.search .search-keyword,.search a:hover{color:#42b983;color:var(--theme-color,#42b983)}.search .search-keyword{font-style:normal}body,html{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:15px;letter-spacing:0;margin:0;overflow-x:hidden;color:#34495e}img{max-width:100%}kbd{display:inline-block;padding:3px 5px;margin-bottom:3px;font-size:12px!important;line-height:12px;vertical-align:middle;border:1px solid #ccc;border-radius:3px}nav.app-nav{position:absolute;right:0;left:0;z-index:2;margin:25px 60px 0 0;text-align:right}nav.app-nav p{margin:0}nav.app-nav>a{margin:0 1em;padding:5px 0}nav.app-nav li,nav.app-nav ul{list-style:none;display:inline-block;margin:0}nav.app-nav a{font-size:16px;text-decoration:none;color:inherit;-webkit-transition:color .3s;transition:color .3s}nav.app-nav a.active,nav.app-nav a:hover{color:#42b983;color:var(--theme-color,#42b983)}nav.app-nav a.active{border-bottom:2px solid #42b983;border-bottom:2px solid var(--theme-color,#42b983)}nav.app-nav li{position:relative;display:inline-block;margin:0 1em;padding:5px 0}nav.app-nav li ul{display:none;box-sizing:border-box;max-height:calc(100vh - 61px);overflow-y:scroll;position:absolute;top:100%;right:-15px;background-color:#fff;padding:10px 0;border:1px solid #ddd;border-bottom-color:#ccc;text-align:left;border-radius:4px;white-space:nowrap}nav.app-nav li ul li{display:block;font-size:14px;margin:0;margin:8px 14px;white-space:nowrap;line-height:1em}nav.app-nav li ul a{display:block;font-size:inherit;margin:0;padding:0}nav.app-nav li ul a.active{border-bottom:0}nav.app-nav li:hover ul{display:block}nav.app-nav.no-badge{margin-right:25px}.github-corner{position:fixed;top:0;right:0;z-index:1;text-decoration:none;border-bottom:0}.github-corner svg{color:#fff;height:80px;width:80px;fill:#42b983;fill:var(--theme-color,#42b983)}.github-corner:hover .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}main{display:block;width:100vw;height:100%;position:relative}.anchor{text-decoration:none;-webkit-transition:all .3s;transition:all .3s;display:inline-block}.anchor span{color:#34495e}.anchor:hover{text-decoration:underline}.sidebar{overflow-y:auto;padding:40px 0;top:0;bottom:0;left:0;position:absolute;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out;width:300px;z-index:3;border-right:1px solid rgba(0,0,0,.07)}.sidebar>h1{text-align:center;margin:0 auto 1em;font-size:1.5em;font-weight:300}.sidebar>h1 a{color:inherit;text-decoration:none}.sidebar ul{margin:0;padding:0}.sidebar li>p{font-weight:700;margin:0}.sidebar ul,.sidebar ul li{list-style:none}.sidebar ul li a{display:block;border-bottom:none}.sidebar ul li ul{padding-left:20px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.sidebar:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,53%,.4)}.sidebar:hover::-webkit-scrollbar-track{background:hsla(0,0%,53%,.1)}.sidebar-toggle{background-color:transparent;border:0;bottom:0;left:0;position:absolute;text-align:center;-webkit-transition:opacity .3s;transition:opacity .3s;width:30px;z-index:4;outline:none;width:284px;padding:10px;background-color:hsla(0,0%,100%,.8)}.sidebar-toggle .sidebar-toggle-button:hover{opacity:.4}.sidebar-toggle span{background-color:#42b983;background-color:var(--theme-color,#42b983);display:block;width:16px;height:2px;margin-bottom:4px}body.sticky .sidebar,body.sticky .sidebar-toggle{position:fixed}.content{top:0;right:0;bottom:0;left:300px;position:absolute;padding-top:20px;-webkit-transition:left .25s ease;transition:left .25s ease}.markdown-section{position:relative;margin:0 auto;max-width:800px;padding:20px 15px 40px}.markdown-section>*{box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section hr{border:none;margin:2em 0;border-bottom:1px solid #eee}.markdown-section table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse;margin-bottom:1em}.markdown-section th{font-weight:700}.markdown-section td,.markdown-section th{padding:6px 13px;border:1px solid #ddd}.markdown-section tr{border-top:1px solid #ccc}.markdown-section p.tip,.markdown-section tr:nth-child(2n){background-color:#f8f8f8}.markdown-section p.tip{padding:12px 24px 12px 30px;margin:2em 0;border-left:4px solid #f66;position:relative;border-bottom-right-radius:2px;border-top-right-radius:2px}.markdown-section p.tip code{background-color:#efefef}.markdown-section p.tip em{color:#34495e}.markdown-section p.tip:before{position:absolute;top:14px;left:-12px;background-color:#f66;color:#fff;content:"!";width:20px;height:20px;border-radius:100%;text-align:center;line-height:20px;font-weight:700;font-family:Dosis,Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:14px}.markdown-section p.warn{padding:1em;background:rgba(66,185,131,.1);border-radius:2px}body.close .sidebar{-webkit-transform:translateX(-300px);transform:translateX(-300px)}body.close .sidebar-toggle{width:auto}body.close .content{left:0}@media (max-width:600px){.github-corner,.sidebar,.sidebar-toggle{position:fixed}nav{margin-top:16px}nav li ul{top:30px}main{height:auto;overflow-x:hidden}.sidebar{left:-300px;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.content{left:0;max-width:100vw;position:static;-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.github-corner,nav{-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.sidebar-toggle{width:auto;background-color:transparent}body.close .sidebar{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .sidebar-toggle{width:284px;background-color:hsla(0,0%,100%,.8);-webkit-transition:background-color 1s;transition:background-color 1s}body.close .content{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .github-corner,body.close nav{display:none}.github-corner .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}.github-corner:hover .octo-arm{-webkit-animation:none;animation:none}}@-webkit-keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}section.cover{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;height:100vh;display:none}section.cover .cover-main{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center;margin:-20px 16px 0;z-index:1}section.cover a{color:inherit}section.cover a,section.cover a:hover{text-decoration:none}section.cover p{margin:1em 0;line-height:24px;line-height:1.5rem}section.cover h1{text-align:center;font-size:40px;font-size:2.5rem;position:relative;margin:10px 0 40px;margin:.625rem 0 2.5rem;font-weight:300;color:inherit}section.cover h1 a{display:block}section.cover h1 small{position:absolute;bottom:-7px;bottom:-.4375rem;font-size:16px;font-size:1rem}section.cover blockquote{text-align:center;font-size:24px;font-size:1.5rem}section.cover ul{max-width:500px;list-style-type:none;margin:1em auto;padding:0;line-height:1.8}section.cover .cover-main>p:last-child a{border-radius:2em;border-color:#42b983;border:1px solid var(--theme-color,#42b983);box-sizing:border-box;color:#42b983;color:var(--theme-color,#42b983);font-size:1.05em;letter-spacing:.1em;padding:.75em 2em;text-decoration:none;-webkit-transition:all .15s ease;transition:all .15s ease;margin-right:1em;display:inline-block}section.cover .cover-main>p:last-child a:last-child{margin-right:0;background-color:#42b983;background-color:var(--theme-color,#42b983);color:#fff}section.cover .cover-main>p:last-child a:last-child:hover{opacity:.8;color:inherit}section.cover .cover-main>p:last-child a:hover{color:inherit}section.cover blockquote>p>a{border-bottom:2px solid #42b983;border-bottom:2px solid var(--theme-color,#42b983);-webkit-transition:color .3s;transition:color .3s}section.cover blockquote>p>a:hover{color:#42b983;color:var(--theme-color,#42b983)}section.cover.show{display:-webkit-box;display:-ms-flexbox;display:flex}section.cover.has-mask .mask{position:absolute;width:100%;height:100%;background-color:#fff;opacity:.8}.sidebar,body{background-color:#fff}.sidebar{color:#364149}.sidebar li{margin:6px 0 6px 15px}.sidebar ul li a{color:#505d6b;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-decoration:none;font-size:14px;font-weight:400}.sidebar ul li a:hover{text-decoration:underline}.sidebar ul li ul{padding:0}.sidebar ul li.active>a{color:#42b983;color:var(--theme-color,#42b983);font-weight:600;border-right:2px solid}.app-sub-sidebar .section-link:before{content:"-";padding-right:4px}.markdown-section h1,.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section strong{font-weight:600;color:#2c3e50}.markdown-section a{color:#42b983;color:var(--theme-color,#42b983);font-weight:600}.markdown-section h1{margin:0 0 1em;font-size:2em}.markdown-section h2{font-size:1.75em;margin:45px 0 .8em}.markdown-section h3{margin:40px 0 .6em;font-size:1.5em}.markdown-section h4{font-size:1.25em}.markdown-section h5{font-size:1em}.markdown-section h6{font-size:1em;color:#777}.markdown-section figure,.markdown-section ol,.markdown-section p,.markdown-section ul{margin:1.2em 0}.markdown-section ol,.markdown-section p,.markdown-section ul{line-height:1.6em;word-spacing:.05em}.markdown-section ol,.markdown-section ul{padding-left:1.5em}.markdown-section blockquote{color:#858585;border-left:4px solid #42b983;border-left:4px solid var(--theme-color,#42b983);margin:2em 0;padding-left:20px}.markdown-section blockquote p{font-weight:600;margin-left:0}.markdown-section iframe{margin:1em 0}.markdown-section em{color:#7f8c8d}.markdown-section code{border-radius:2px;color:#e96900;margin:0 2px;padding:3px 5px;white-space:nowrap;font-size:.8em}.markdown-section code,.markdown-section pre{font-family:Roboto Mono,Monaco,courier,monospace;background-color:#f8f8f8}.markdown-section pre{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;line-height:1.5em;margin:1.2em 0;padding:0 1.4em;position:relative;overflow:auto;word-wrap:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#8e908c}.token.namespace{opacity:.7}.token.boolean,.token.number{color:#c76b29}.token.punctuation{color:#525252}.token.property{color:#c08b30}.token.tag{color:#2973b7}.token.string{color:#42b983;color:var(--theme-color,#42b983)}.token.selector{color:#6679cc}.token.attr-name{color:#2973b7}.language-css .token.string,.style .token.string,.token.entity,.token.url{color:#22a2c9}.token.attr-value,.token.control,.token.directive,.token.unit{color:#42b983;color:var(--theme-color,#42b983)}.token.keyword{color:#e96900}.token.atrule,.token.regex,.token.statement{color:#22a2c9}.token.placeholder,.token.variable{color:#3d8fd1}.token.deleted{text-decoration:line-through}.token.inserted{border-bottom:1px dotted #202746;text-decoration:none}.token.italic{font-style:italic}.token.bold,.token.important{font-weight:700}.token.important{color:#c94922}.token.entity{cursor:help}.markdown-section pre>code{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;background-color:#f8f8f8;border-radius:2px;color:#525252;display:block;font-family:Roboto Mono,Monaco,courier,monospace;font-size:.8em;line-height:inherit;margin:0 2px;overflow:inherit;padding:2.2em 5px;white-space:inherit;max-width:inherit}.markdown-section code:after,.markdown-section code:before{letter-spacing:.05em}code .token{min-height:1.5em;-webkit-font-smoothing:initial;-moz-osx-font-smoothing:initial}pre:after{color:#ccc;content:attr(data-lang);font-size:.6em;font-weight:600;height:15px;line-height:15px;padding:5px 10px 0;position:absolute;right:0;text-align:right;top:0}
\ No newline at end of file
+@import url("https://fonts.googleapis.com/css?family=Roboto+Mono|Source+Sans+Pro:300,400,600");*{box-sizing:border-box;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:none;-webkit-touch-callout:none;-webkit-font-smoothing:antialiased}body:not(.ready){overflow:hidden}body:not(.ready) [data-cloak],body:not(.ready) nav{display:none}div#app{text-align:center;font-size:30px;font-weight:lighter;margin:40vh auto}div#app:empty:before{content:"Loading..."}.emoji{height:1.2em;vertical-align:middle}.progress{background-color:#42b983;background-color:var(--theme-color,#42b983);height:2px;left:0;position:fixed;right:0;top:0;-webkit-transition:width .2s,opacity .4s;transition:width .2s,opacity .4s;width:0;z-index:5}.search .search-keyword,.search a:hover{color:#42b983;color:var(--theme-color,#42b983)}.search .search-keyword{font-style:normal}body,html{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:15px;letter-spacing:0;margin:0;overflow-x:hidden;color:#34495e}img{max-width:100%}kbd{display:inline-block;padding:3px 5px;margin-bottom:3px;font-size:12px!important;line-height:12px;vertical-align:middle;border:1px solid #ccc;border-radius:3px}nav.app-nav{position:absolute;right:0;left:0;z-index:2;margin:25px 60px 0 0;text-align:right}nav.app-nav p{margin:0}nav.app-nav>a{margin:0 1em;padding:5px 0}nav.app-nav li,nav.app-nav ul{list-style:none;display:inline-block;margin:0}nav.app-nav a{font-size:16px;text-decoration:none;color:inherit;-webkit-transition:color .3s;transition:color .3s}nav.app-nav a.active,nav.app-nav a:hover{color:#42b983;color:var(--theme-color,#42b983)}nav.app-nav a.active{border-bottom:2px solid #42b983;border-bottom:2px solid var(--theme-color,#42b983)}nav.app-nav li{position:relative;display:inline-block;margin:0 1em;padding:5px 0}nav.app-nav li ul{display:none;box-sizing:border-box;max-height:calc(100vh - 61px);overflow-y:scroll;position:absolute;top:100%;right:-15px;background-color:#fff;padding:10px 0;border:1px solid #ddd;border-bottom-color:#ccc;text-align:left;border-radius:4px;white-space:nowrap}nav.app-nav li ul li{display:block;font-size:14px;margin:0;margin:8px 14px;white-space:nowrap;line-height:1em}nav.app-nav li ul a{display:block;font-size:inherit;margin:0;padding:0}nav.app-nav li ul a.active{border-bottom:0}nav.app-nav li:hover ul{display:block}nav.app-nav.no-badge{margin-right:25px}.github-corner{position:fixed;top:0;right:0;z-index:1;text-decoration:none;border-bottom:0}.github-corner svg{color:#fff;height:80px;width:80px;fill:#42b983;fill:var(--theme-color,#42b983)}.github-corner:hover .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}main{display:block;width:100vw;height:100%;position:relative}.anchor{text-decoration:none;-webkit-transition:all .3s;transition:all .3s;display:inline-block}.anchor span{color:#34495e}.anchor:hover{text-decoration:underline}.sidebar{overflow-y:auto;padding:40px 0;top:0;bottom:0;left:0;position:absolute;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out;width:300px;z-index:3;border-right:1px solid rgba(0,0,0,.07)}.sidebar>h1{text-align:center;margin:0 auto 1em;font-size:1.5em;font-weight:300}.sidebar>h1 a{color:inherit;text-decoration:none}.sidebar ul{margin:0;padding:0}.sidebar li>p{font-weight:700;margin:0}.sidebar ul,.sidebar ul li{list-style:none}.sidebar ul li a{display:block;border-bottom:none}.sidebar ul li ul{padding-left:20px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.sidebar:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,53%,.4)}.sidebar:hover::-webkit-scrollbar-track{background:hsla(0,0%,53%,.1)}.sidebar-toggle{background-color:transparent;border:0;bottom:0;left:0;position:absolute;text-align:center;-webkit-transition:opacity .3s;transition:opacity .3s;width:30px;z-index:4;outline:none;width:284px;padding:10px;background-color:hsla(0,0%,100%,.8)}.sidebar-toggle .sidebar-toggle-button:hover{opacity:.4}.sidebar-toggle span{background-color:#42b983;background-color:var(--theme-color,#42b983);display:block;width:16px;height:2px;margin-bottom:4px}body.sticky .sidebar,body.sticky .sidebar-toggle{position:fixed}.content{top:0;right:0;bottom:0;left:300px;position:absolute;padding-top:20px;-webkit-transition:left .25s ease;transition:left .25s ease}.markdown-section{position:relative;margin:0 auto;max-width:800px;padding:20px 15px 40px}.markdown-section>*{box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section hr{border:none;margin:2em 0;border-bottom:1px solid #eee}.markdown-section table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse;margin-bottom:1em}.markdown-section th{font-weight:700}.markdown-section td,.markdown-section th{padding:6px 13px;border:1px solid #ddd}.markdown-section tr{border-top:1px solid #ccc}.markdown-section p.tip,.markdown-section tr:nth-child(2n){background-color:#f8f8f8}.markdown-section p.tip{padding:12px 24px 12px 30px;margin:2em 0;border-left:4px solid #f66;position:relative;border-bottom-right-radius:2px;border-top-right-radius:2px}.markdown-section p.tip code{background-color:#efefef}.markdown-section p.tip em{color:#34495e}.markdown-section p.tip:before{position:absolute;top:14px;left:-12px;background-color:#f66;color:#fff;content:"!";width:20px;height:20px;border-radius:100%;text-align:center;line-height:20px;font-weight:700;font-family:Dosis,Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:14px}.markdown-section p.warn{padding:1em;background:rgba(66,185,131,.1);border-radius:2px}body.close .sidebar{-webkit-transform:translateX(-300px);transform:translateX(-300px)}body.close .sidebar-toggle{width:auto}body.close .content{left:0}@media (max-width:600px){.github-corner,.sidebar,.sidebar-toggle{position:fixed}nav{margin-top:16px}nav li ul{top:30px}main{height:auto;overflow-x:hidden}.sidebar{left:-300px;-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.content{left:0;max-width:100vw;position:static;-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.github-corner,nav{-webkit-transition:-webkit-transform .25s ease-out;transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.sidebar-toggle{width:auto;background-color:transparent}body.close .sidebar{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .sidebar-toggle{width:284px;background-color:hsla(0,0%,100%,.8);-webkit-transition:background-color 1s;transition:background-color 1s}body.close .content{-webkit-transform:translateX(300px);transform:translateX(300px)}body.close .github-corner,body.close nav{display:none}.github-corner .octo-arm{-webkit-animation:a .56s ease-in-out;animation:a .56s ease-in-out}.github-corner:hover .octo-arm{-webkit-animation:none;animation:none}}@-webkit-keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes a{0%,to{-webkit-transform:rotate(0);transform:rotate(0)}20%,60%{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}40%,80%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}section.cover{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;height:100vh;display:none}section.cover .cover-main{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center;margin:-20px 16px 0;z-index:1}section.cover a{color:inherit}section.cover a,section.cover a:hover{text-decoration:none}section.cover p{margin:1em 0;line-height:24px;line-height:1.5rem}section.cover h1{text-align:center;font-size:40px;font-size:2.5rem;position:relative;margin:10px 0 40px;margin:.625rem 0 2.5rem;font-weight:300;color:inherit}section.cover h1 a{display:block}section.cover h1 small{position:absolute;bottom:-7px;bottom:-.4375rem;font-size:16px;font-size:1rem}section.cover blockquote{text-align:center;font-size:24px;font-size:1.5rem}section.cover ul{max-width:500px;list-style-type:none;margin:1em auto;padding:0;line-height:1.8}section.cover .cover-main>p:last-child a{border-radius:2em;border-color:#42b983;border:1px solid var(--theme-color,#42b983);box-sizing:border-box;color:#42b983;color:var(--theme-color,#42b983);font-size:1.05em;letter-spacing:.1em;padding:.75em 2em;text-decoration:none;-webkit-transition:all .15s ease;transition:all .15s ease;margin-right:1em;display:inline-block}section.cover .cover-main>p:last-child a:last-child{margin-right:0;background-color:#42b983;background-color:var(--theme-color,#42b983);color:#fff}section.cover .cover-main>p:last-child a:last-child:hover{opacity:.8;color:inherit}section.cover .cover-main>p:last-child a:hover{color:inherit}section.cover blockquote>p>a{border-bottom:2px solid #42b983;border-bottom:2px solid var(--theme-color,#42b983);-webkit-transition:color .3s;transition:color .3s}section.cover blockquote>p>a:hover{color:#42b983;color:var(--theme-color,#42b983)}section.cover.show{display:-webkit-box;display:-ms-flexbox;display:flex}section.cover.has-mask .mask{position:absolute;width:100%;height:100%;background-color:#fff;opacity:.8}.sidebar,body{background-color:#fff}.sidebar{color:#364149}.sidebar li{margin:6px 0 6px 15px}.sidebar ul li a{color:#505d6b;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-decoration:none;font-size:14px;font-weight:400}.sidebar ul li a:hover{text-decoration:underline}.sidebar ul li ul{padding:0}.sidebar ul li.active>a{color:#42b983;color:var(--theme-color,#42b983);font-weight:600;border-right:2px solid}.app-sub-sidebar .section-link:before{content:"-";padding-right:4px}.markdown-section h1,.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section strong{font-weight:600;color:#2c3e50}.markdown-section a{color:#42b983;color:var(--theme-color,#42b983);font-weight:600}.markdown-section h1{margin:0 0 1em;font-size:2em}.markdown-section h2{font-size:1.75em;margin:45px 0 .8em}.markdown-section h3{margin:40px 0 .6em;font-size:1.5em}.markdown-section h4{font-size:1.25em}.markdown-section h5{font-size:1em}.markdown-section h6{font-size:1em;color:#777}.markdown-section figure,.markdown-section ol,.markdown-section p,.markdown-section ul{margin:1.2em 0}.markdown-section ol,.markdown-section p,.markdown-section ul{line-height:1.6em;word-spacing:.05em}.markdown-section ol,.markdown-section ul{padding-left:1.5em}.markdown-section blockquote{color:#858585;border-left:4px solid #42b983;border-left:4px solid var(--theme-color,#42b983);margin:2em 0;padding-left:20px}.markdown-section blockquote p{font-weight:600;margin-left:0}.markdown-section iframe{margin:1em 0}.markdown-section em{color:#7f8c8d}.markdown-section code{border-radius:2px;color:#e96900;margin:0 2px;padding:3px 5px;white-space:nowrap;font-size:.8em}.markdown-section code,.markdown-section pre{font-family:Roboto Mono,Monaco,courier,monospace;background-color:#f8f8f8}.markdown-section pre{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;line-height:1.5em;margin:1.2em 0;padding:0 1.4em;position:relative;overflow:auto;word-wrap:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#8e908c}.token.namespace{opacity:.7}.token.boolean,.token.number{color:#c76b29}.token.punctuation{color:#525252}.token.property{color:#c08b30}.token.tag{color:#2973b7}.token.string{color:#42b983;color:var(--theme-color,#42b983)}.token.selector{color:#6679cc}.token.attr-name{color:#2973b7}.language-css .token.string,.style .token.string,.token.entity,.token.url{color:#22a2c9}.token.attr-value,.token.control,.token.directive,.token.unit{color:#42b983;color:var(--theme-color,#42b983)}.token.keyword{color:#e96900}.token.atrule,.token.regex,.token.statement{color:#22a2c9}.token.placeholder,.token.variable{color:#3d8fd1}.token.deleted{text-decoration:line-through}.token.inserted{border-bottom:1px dotted #202746;text-decoration:none}.token.italic{font-style:italic}.token.bold,.token.important{font-weight:700}.token.important{color:#c94922}.token.entity{cursor:help}.markdown-section pre>code{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;background-color:#f8f8f8;border-radius:2px;color:#525252;display:block;font-family:Roboto Mono,Monaco,courier,monospace;font-size:.8em;line-height:inherit;margin:0 2px;overflow:inherit;padding:2.2em 5px;white-space:inherit;max-width:inherit}.markdown-section code:after,.markdown-section code:before{letter-spacing:.05em}code .token{min-height:1.5em;-webkit-font-smoothing:initial;-moz-osx-font-smoothing:initial}pre:after{color:#ccc;content:attr(data-lang);font-size:.6em;font-weight:600;height:15px;line-height:15px;padding:5px 10px 0;position:absolute;right:0;text-align:right;top:0}
\ No newline at end of file