docsjs
Version:
HTML/Markdown-only documentation generator
24 lines (20 loc) • 125 kB
JavaScript
/*
MIT License
Copyright (c) 2017 Hailiax
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.
*/
var DocsJS={};DocsJS.aceTheme={Hailaxian:"chrome",Minimal:"clouds"},DocsJS.apply=function(e){"use strict";for(var t=document.getElementsByTagName("docs-js"),o=0;o<t.length;o++)e(t[o],o)},DocsJS.forEach=function(e,t){"use strict";for(var o=0;o<e.length;o++)t(e[o],o)},DocsJS.origin=document.getElementsByTagName("script")[document.getElementsByTagName("script").length-1].src,DocsJS.init=function(e){"use strict";showdown.setOption("omitExtraWLInCodeBlocks",!0),showdown.setOption("noHeaderId",!0),showdown.setOption("parseImgDimensions",!0),showdown.setOption("strikethrough",!0),showdown.setOption("tables",!0),showdown.setOption("tasklists",!0),showdown.setOption("openLinksInNewWindow",!0),showdown.setOption("backslashEscapesHTMLTags",!0),DocsJS.apply(function(e){if("markdown"===e.getAttribute("mode")){var t=new showdown.Converter,o=e.innerHTML.replace(/<!--/g,"").replace(/-->/g,""),n=t.makeHtml(o);e.innerHTML=n;for(var r=e.querySelectorAll("*"),s=[],c=0;c<r.length;c++){var i=r[c];switch(i.tagName.toUpperCase()){case"H1":i.outerHTML="\x3c!--</t-x></s-c><s-c>\r\n<h-d>\r\n<t-l>--\x3e"+i.innerHTML+"\x3c!--</t-l>\r\n<t-x>--\x3e",s.push(["s-c",1]),s.push(["h-d",1]),s.push(["t-x",1]);break;case"H2":i.outerHTML="\x3c!--</"+s[s.length-1][0]+">\r\n</"+s[s.length-2][0]+">\r\n<t-p>\r\n<t-l>--\x3e"+i.innerHTML+"\x3c!--</t-l>\r\n<t-x>--\x3e",s.pop(),s.pop(),s.push(["t-p",2]),s.push(["t-x",2]);break;case"PRE":var a=i.querySelector("code").className.split(" ")[0]||"plain_text";switch(a=a.toLowerCase()){case"js":a="javascript";break;case"bash":a="sh";break;case"cpp":a="c_cpp"}i.outerHTML='\x3c!--</t-x>\r\n<e-g>\r\n--\x3e<c-d docsjs-lang="'+a+'">'+i.querySelector("code").innerHTML+"</c-d>\x3c!--\r\n</e-g>\r\n<t-x>--\x3e"}}for(var l=s.length;l>0;l--)e.innerHTML+="\x3c!--\r\n</"+s[l-1][0]+">--\x3e";e.innerHTML=e.innerHTML.replace(/<!--/g,"").replace(/-->/g,"");var d="docs-js>*";r=document.querySelectorAll(d);for(var u=0;r.length>0;){for(var p=0;p<r.length;p++){r=document.querySelectorAll(d);for(var m="",h=0;h<u;h++)m+="\x3c!--\t--\x3e";var g=r[p].outerHTML.split("\n");"<"===g[g.length-1].charAt(0)&&"/"===g[g.length-1].charAt(1)&&(g[g.length-1]=m+g[g.length-1]),r[p].outerHTML=m+g.join("\n")}u++,d+=">*",r=document.querySelectorAll(d)}e.innerHTML=e.innerHTML.replace(/<!--/g,"").replace(/-->/g,""),DocsJS.doNotLogConvertedMarkdown||(console.log(e.innerHTML),console.log('See your converted Markdown above.\n\nIf you switch to regular DocsJS syntax, make sure to remove mode="markdown" on your <docs-js> tag.\n\nTo disable this message, set DocsJS.doNotLogConvertedMarkdown = true;')),DocsJS.eg.name="Code"}}),null!==document.getElementById("DocsJS-theme")&&(DocsJS.theme=document.getElementById("DocsJS-theme").href.split("/"),DocsJS.theme=DocsJS.theme[DocsJS.theme.length-1].split(".")[0],void 0===DocsJS.aceTheme[DocsJS.theme]&&(console.error(DocsJS.theme+' is not a theme used by DocsJS. DocsJS will assume the theme (DocsJS.theme =) "Hailaxian" and will use the Ace c-d theme (DocsJS.cd.theme =) "chrome".'),DocsJS.theme="Hailaxian")),DocsJS.apply(function(e){e.innerHTML='<main role="main"><s-c><button role="button" docsjs-tag="accessibility-button" tabindex="0" onclick="DocsJS.toggleRecommendedAccessibility(this)" onkeydown="DocsJS.accessButtonSpaceClick(this,event)">Accessibility Mode</button><div docsjs-tag="header"></div></s-c><s-c style="display:none;"><button role="button" docsjs-tag="accessibility-button" tabindex="0" onclick="DocsJS.toggleExtendedAccessibility()" onkeydown="DocsJS.accessButtonSpaceClick(this,event)">Extended Accessibility Mode</button></s-c>'+e.innerHTML+"</main>"}),DocsJS.apply(function(e){e.style.fontSize=DocsJS.fontsize._value+"px",e.innerHTML+='<div></div><div docsjs-tag="menu" style="display: none;"></div><div docsjs-tag="column-left" docsjs-state="none" style="position:fixed;">'+DocsJS.column.choice(-1)+'</div><div docsjs-tag="column-right" docsjs-state="none" style="left:100%;position:fixed;">'+DocsJS.column.choice(1)+'</div><div docsjs-extras="learnmore" style="position: relative; width: 100%; height: 1.25em; line-height:1.25em; text-align: center; font-size: 0.75em; opacity: 0.5; text-shadow: -0.04em -0.04em 0.12em #fff,0.04em 0.04em 0.12em #fff,-0.04em 0.04em 0.12em #fff,0.04em -0.04em 0.12em #fff;"><a href="https://hailiax.io/docsjs/" target="_blank" style="text-decoration: none; color: #000; line-height: 1.25em;">– Powered by Docs.JS –</a></div><div docsjs-tag="bg" docsjs-extra="invert"></div>'}),DocsJS.fontsize._init=DocsJS.fontsize._value;var t=function(){window.setTimeout(function(){DocsJS.addEvent(window,"scroll",DocsJS.scrolled),DocsJS.addEvent(window,"resize",DocsJS.resized),DocsJS.addEvent(window,"hashchange",DocsJS.hashchanged),DocsJS.resized();var t=DocsJS.animation.duration;DocsJS.animation.duration=0,DocsJS.apply(function(e){DocsJS.forEach(e.querySelectorAll('[docsjs-state="max"]'),function(e){"E-X"===e.tagName.toUpperCase()||"E-G"===e.tagName.toUpperCase()?(e.setAttribute("docsjs-internal-default","max"),DocsJS.rotate(e.previousSibling.querySelector('[docsjs-tag="button-ebefore"]'),90)):"T-P"===e.tagName.toUpperCase()||"H-D"===e.tagName.toUpperCase()?e.setAttribute("docsjs-internal-default","max"):"S-C"===e.tagName.toUpperCase()&&e.setAttribute("docsjs-internal-default","max")}),DocsJS.forEach(e.querySelectorAll('[docsjs-state="min"]'),function(e){"E-X"===e.tagName.toUpperCase()||"E-G"===e.tagName.toUpperCase()?(e.setAttribute("docsjs-internal-default","min"),e.docsjs.state="max",e.previousSibling.onclick()):"T-P"===e.tagName.toUpperCase()||"H-D"===e.tagName.toUpperCase()?(e.setAttribute("docsjs-internal-default","min"),e.docsjs.state="max",e.querySelector("t-l").onclick({target:{docsjs:{tag:"T-L"}}})):"S-C"===e.tagName.toUpperCase()&&(e.setAttribute("docsjs-internal-default","min"),e.docsjs.state="max",e.querySelector('[docsjs-tag="button-minimize"]').onclick())})});var o=document.createElement("style");(document.head||document.getElementsByTagName("head")[0]).appendChild(o);var n="[docsjs-tag=accessibility-mode-content] h1,[docsjs-tag=accessibility-mode-content] h2,[docsjs-tag=accessibility-mode-content] h3,[docsjs-tag=accessibility-mode-content] h4,[docsjs-tag=accessibility-mode-content] h5,[docsjs-tag=accessibility-mode-content] h6{line-height:2em;font-weight:bold;text-decoration:underline;margin:0}[docsjs-tag=accessibility-mode-wrapper]{position:fixed;width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch;z-index:999999999999;padding:1em;box-sizing:border-box;background:#eaeaea}[docsjs-tag=accessibility-mode-content]{position:relative;width:100%;left:0;right:0;margin-left:auto;margin-right:auto;padding:1em;background-color:"+DocsJS.getStyle(document.querySelector("t-x"),"background-color")+";color:"+DocsJS.getStyle(document.querySelector("t-x"),"color")+";box-shadow:0 5px 20px 3px rgba(0,0,0,.3);box-sizing:border-box;overflow:hidden;font-size:1.2em}[docsjs-tag=accessibility-mode-content] p[docsjs-tag=textNode]{display:inline;margin-top:0;margin-bottom:0}[docsjs-tag=accessibility-mode-content] h1{font-size:2.5em}[docsjs-tag=accessibility-mode-content] h2{font-size:2em}[docsjs-tag=accessibility-mode-content] h3{font-size:1.6em}[docsjs-tag=accessibility-mode-content] h4{font-size:1.4em}[docsjs-tag=accessibility-mode-content] h5{font-size:1.2em}[docsjs-tag=accessibility-mode-content] h6{font-size:1.2em; font-weight: regular;}";void 0===o.styleSheet?o.innerHTML=n:o.styleSheet.cssText=n,window.setTimeout(function(){DocsJS.cd.refresh(),void 0===e&&(e=function(){}),DocsJS.cache.initiated=!0,DocsJS.scrolled();var o=document.querySelector("docs-js").getAttribute("sidebars"),n=200;if(null!==o){switch((o=o.split(" "))[0]){case"choice":break;case"none":document.querySelector('[docsjs-tag="column-left"]').style.display="none";break;case"menu":DocsJS.window.width()>DocsJS.width.min+500&&(DocsJS.cache.events.columnchoice="menu",DocsJS.cache.events.oncolumn=-1,DocsJS.column.start(-1),n=0);break;case"e-g":DocsJS.window.width()>DocsJS.width.max-n&&(DocsJS.cache.events.columnchoice="e-g",DocsJS.cache.events.oncolumn=-1,DocsJS.column.start(-1));break;case"e-x":DocsJS.window.width()>DocsJS.width.max-n&&(DocsJS.cache.events.columnchoice="e-x",DocsJS.cache.events.oncolumn=-1,DocsJS.column.start(-1))}switch(o[1]){case"choice":break;case"none":document.querySelector('[docsjs-tag="column-right"]').style.display="none";break;case"menu":n>0&&DocsJS.window.width()>DocsJS.width.min+500&&(DocsJS.cache.events.columnchoice="menu",DocsJS.cache.events.oncolumn=1,DocsJS.column.start(1),n=0);break;case"e-g":DocsJS.window.width()>DocsJS.width.max-n?(DocsJS.cache.events.columnchoice="e-g",DocsJS.cache.events.oncolumn=1,DocsJS.column.start(1)):(n=400,DocsJS.window.width()>DocsJS.width.max-n&&(DocsJS.column.stop(-1),DocsJS.cache.events.columnchoice="e-g",DocsJS.cache.events.oncolumn=1,DocsJS.column.start(1)));break;case"e-x":DocsJS.window.width()>DocsJS.width.max-n?(DocsJS.cache.events.columnchoice="e-x",DocsJS.cache.events.oncolumn=1,DocsJS.column.start(1)):(n=400,DocsJS.window.width()>DocsJS.width.max-n&&(DocsJS.column.stop(-1),DocsJS.cache.events.columnchoice="e-x",DocsJS.cache.events.oncolumn=1,DocsJS.column.start(1)))}}DocsJS.hashchanged(),DocsJS.cd.refresh(),DocsJS.animation.duration=t,e(),DocsJS.events.ready()},0)},0)};window.setTimeout(function(){DocsJS.refresh(t)},0)},window.html5={elements:"s-c h-d t-p t-l t-x e-g e-x c-d docs-js main nav code button"},DocsJS.refresh=function(e){"use strict";if(DocsJS.cache.initiated&&(document.getElementsByTagName("head")[0].removeChild(document.getElementById("DocsJS-theme")),null!==DocsJS.theme)){var t=DocsJS.origin.split("/");t.pop(),t=t.join("/")+"/themes/"+DocsJS.theme+".min.css";var o=document.createElement("link");o.rel="stylesheet",o.href=t,o.id="DocsJS-theme",document.getElementsByTagName("head")[0].appendChild(o)}return DocsJS.apply(function(e){e.outerHTML=e.outerHTML.replace(/<v-r (.*?)\W/g,'<v-r docsjs-tag="v-r" aria-hidden="true" docsjs-name="$1"')}),DocsJS.apply(function(e){var t={};DocsJS.forEach(e.querySelectorAll('[docsjs-tag="v-r"]'),function(e){JSON.stringify(e.innerHTML).replace(/\\[\s\S]/g,"").length>2?(t[e.docsjs.name]=e.innerHTML,e.style.display="none"):e.outerHTML=t[e.docsjs.name]})}),DocsJS.apply(function(e){var t;(t=function(e){DocsJS.forEach(e.querySelectorAll("h-d > t-l"),function(e){e.parentElement.setAttribute("aria-labelledby","docsjs-aria-section-"+e.textContent.replace(/\W+/g,"_")),e.setAttribute("docsjs-arialabel","docsjs-aria-section-"+e.textContent.replace(/\W+/g,"_"));var o=document.createElement("div");o.setAttribute("docsjs-tag","button-minimize"),o.innerHTML=DocsJS.buttons.minimize.html(),e.appendChild(o),t(e)})})(e);var o=0,n="active";(t=function(e){o++,DocsJS.forEach(e.querySelectorAll("t-p > t-l"),function(e){e.parentElement.setAttribute("aria-labelledby","docsjs-aria-topic-"+e.textContent.replace(/\W+/g,"_")+o),e.setAttribute("docsjs-arialabel","docsjs-aria-topic-"+e.textContent.replace(/\W+/g,"_")+o);var r=document.createElement("div");r.setAttribute("docsjs-tag","button-menu"),r.setAttribute("docsjs-state",n),r.setAttribute("docsjs-internal","menuHidden"),r.innerHTML=DocsJS.buttons.menu.html(),e.appendChild(r),n="inactive",t(e)})})(e);var r=0;(t=function(e){r++,DocsJS.forEach(e.querySelectorAll("e-g"),function(e){e.setAttribute("labelledby","docsjs-aria-eg-"+(void 0===e.docsjs.name?DocsJS.eg.name.replace(/\W+/g,"_")+r:e.docsjs.name.replace(/\W+/g,"_")+r)),void 0===e.docsjs.state&&e.setAttribute("docsjs-state",DocsJS.eg.defaultState),(null===e.previousSibling||void 0===e.previousSibling.docsjs||"ebefore"!==e.previousSibling.tagName.toUpperCase()&&"column-content"!==e.parentElement.tagName.toUpperCase())&&e.insertAdjacentHTML("beforeBegin",'<div docsjs-tag="ebefore" role="button" tabindex="0" id="docsjs-aria-eg-'+(void 0===e.docsjs.name?DocsJS.eg.name.replace(/\W+/g,"_")+r:e.docsjs.name.replace(/\W+/g,"_")+r)+'"><div docsjs-tag="button-ebefore" >'+DocsJS.buttons.eg.html()+"</div>"+(void 0===e.docsjs.name?DocsJS.eg.name:e.docsjs.name)+"</div>"),t(e)})})(e);var s=0;(t=function(e){s++,DocsJS.forEach(e.querySelectorAll("e-x"),function(e){e.setAttribute("labelledby","docsjs-aria-ex-"+(void 0===e.docsjs.name?DocsJS.eg.name.replace(/\W+/g,"_")+s:e.docsjs.name.replace(/\W+/g,"_")+s)),void 0===e.docsjs.state&&e.setAttribute("docsjs-state",DocsJS.ex.defaultState),null!==e.previousSibling&&void 0!==e.previousSibling.docsjs&&"ebefore"===e.previousSibling.tagName.toUpperCase()||e.insertAdjacentHTML("beforeBegin",'<div docsjs-tag="ebefore" role="button" tabindex="0" id="docsjs-aria-ex-'+(void 0===e.docsjs.name?DocsJS.ex.name.replace(/\W+/g,"_")+s:e.docsjs.name.replace(/\W+/g,"_")+s)+'"><div docsjs-tag="button-ebefore" >'+DocsJS.buttons.ex.html()+"</div>"+(void 0===e.docsjs.name?DocsJS.ex.name:e.docsjs.name)+"</div>"),t(e)})})(e),(t=function(e){DocsJS.forEach(e.querySelectorAll("t-p,h-d"),function(e){e.innerHTML+='<div docsjs-tag="efiller" docsjs-side="left" aria-hidden="true"></div><div docsjs-tag="efiller" docsjs-side="right" aria-hidden="true"></div>',void 0===e.docsjs.state&&e.setAttribute("docsjs-state","max"),t(e)})})(e),(t=function(e){DocsJS.forEach(e.querySelectorAll("s-c"),function(e){null!==e.querySelector("h-d")&&e.setAttribute("aria-labelledby","docsjs-aria-section-"+e.querySelector("h-d").querySelector("t-l").textContent.replace(/\W+/g,"_")),void 0===e.docsjs.state&&e.setAttribute("docsjs-state","max"),t(e)})})(e)}),DocsJS.apply(function(e){var t="";DocsJS.forEach(e.querySelectorAll("docs-js>main>s-c"),function(e){var o=function(e,n){n>6&&(n=6),DocsJS.forEach(e.childNodes,function(e){if(1===e.nodeType)switch(e.hasAttribute("docsjs-tag"),e.tagName.toUpperCase()){case"H-D":o(e,n+1),n++;break;case"T-P":o(e,n+1);break;case"S-C":o(e,n);break;case"T-L":e.innerHTML="<h"+(n+1)+' id="'+e.docsjs.arialabel+'">'+e.innerHTML+"</h"+(n+1)+">",t+="<h"+n+">"+e.textContent+"</h"+n+">";break;case"T-X":o(e,n);break;case"E-G":t+="<h"+(n+1)+">"+(e.hasAttribute("docsjs-name")?e.docsjs.name:DocsJS.eg.name)+"</h"+(n+1)+">",o(e,n);break;case"E-X":t+="<h"+(n+1)+">"+(e.hasAttribute("docsjs-name")?e.docsjs.name:DocsJS.ex.name)+"</h"+(n+1)+">",o(e,n);break;case"C-D":t+='<pre style="position:relative; display:block; overflow:auto;"><code>'+e.innerHTML+"</code></pre>";break;case"ebefore":case"efiller":break;default:t+=e.outerHTML}else 3===e.nodeType&&(t+='<p docsjs-tag="textNode">'+e.nodeValue.replace(/[\u00A0-\u9999<>\&]/gim,function(e){return"&#"+e.charCodeAt(0)+";</p>"}))})};o(e,-1)}),DocsJS.cache.accessibility='<main role="main" docsjs-tag="accessibility"><div docsjs-tag="accessibility-mode-wrapper"><div docsjs-tag="accessibility-mode-background"></div><div docsjs-tag="accessibility-mode-content" style="max-width:'+DocsJS.width.max+'px;">'+t+"</div></div></main>"}),DocsJS.apply(function(e,t){var o=function(e,t){var n="",r=e.querySelectorAll("s-c,t-p");if(0!==r.length){for(var s=0,c=0;c<r.length;c++)if(1===r[c].nodeType&&r[c].parentElement===e){var i=t+","+(c-s);r[c].setAttribute("docsjs-location","["+i+"]");var a=r[c].querySelector("t-l")||r[c].querySelector("h-d > t-l")||void 0;void 0!==a&&(n+='<div docsjs-tag="menu-item" docsjs-state="max" onclick="if ((event.target || (event.srcElement || event.originalTarget)) === this){if (this.docsjs.state === \'min\'){this.docsjs.state = \'max\';} else{this.docsjs.state = \'min\';}}"><div docsjs-tag="menu-title" role="button" tabindex="0" aria-labelledby="Navigate to '+a.innerText+'" docsjs-state="" docsjs-menu-location="['+i+']" onkeyup="DocsJS.spaceClick(this,event)" onclick="DocsJS._menuClicked(this,['+i+']);" docsjs-menu-destination="'+r[c].tagName.toUpperCase()+'">'+a.innerText+"</div>"+o(r[c],i)+"</div>")}else s++;return n}return""};e.querySelector('[docsjs-tag="menu"]').innerHTML='<div docsjs-tag="menu-preferences"><div docsjs-tag="menu-preferences-item" docsjs-pref="aA" role="button" tabindex="0" aria-label="Increase Font-size">'+DocsJS.buttons.fontplus()+'</div><div docsjs-tag="menu-preferences-item" docsjs-pref="Aa" role="button" tabindex="0" aria-label="Decrease Font-size">'+DocsJS.buttons.fontminus()+'</div><div docsjs-tag="menu-preferences-item" docsjs-pref="O" role="button" tabindex="0" aria-label="Minimize everything">'+DocsJS.buttons.menuminimized()+'</div><div docsjs-tag="menu-preferences-item" docsjs-pref="C" role="button" tabindex="0" aria-label="Expand everything">'+DocsJS.buttons.menuminimize()+'</div><div docsjs-tag="menu-preferences-item" docsjs-pref="Iv" role="button" tabindex="0" aria-label="Invert colors">'+DocsJS.buttons.invert()+'</div><div docsjs-tag="menu-preferences-item" docsjs-pref="Rs">'+DocsJS.buttons.reset()+'</div></div><div docsjs-tag="menu-item"><div docsjs-tag="menu-title" docsjs-state="youarehere" docsjs-menu-internal="top" onclick="DocsJS._menuClicked(this,true);">'+DocsJS.menu.top+"</div></div>"+o(e.querySelector("main")||e,t)+'<div docsjs-tag="menu-item"><div docsjs-tag="menu-title" docsjs-state="" docsjs-menu-internal="btm" onclick="DocsJS._menuClicked(this,false);">'+DocsJS.menu.bottom+"</div></div>",e.querySelector('[docsjs-tag="header"]').innerHTML="",DocsJS.forEach(e.querySelectorAll("main>s-c"),function(t){try{e.querySelector('[docsjs-tag="header"]').innerHTML+='<span onclick="DocsJS.scroll('+t.docsjs.location+')">'+t.querySelector("t-l").textContent+"</span> "}catch(e){}})}),DocsJS.apply(function(e){DocsJS.bindPrefs(),DocsJS.forEach(e.querySelectorAll('[docsjs-tag="button-minimize"]'),function(t){var o=function(){t.onclick=function(){};var n="max"===t.parentElement.parentElement.parentElement.parentElement.docsjs.state?1:0,r=t.parentElement.parentElement,s=t.parentElement.parentElement.parentElement,c=t.parentElement.parentElement.parentElement.parentElement,i=parseInt(DocsJS.getStyle(r,"height"))+parseInt(DocsJS.getStyle(r,"padding-top"))+parseInt(DocsJS.getStyle(r,"padding-bottom"))+parseInt(DocsJS.getStyle(r,"border-top-width"))+parseInt(DocsJS.getStyle(r,"border-bottom-width"))+parseInt(DocsJS.getStyle(c,"padding-top"))+parseInt(DocsJS.getStyle(c,"padding-bottom"))+parseInt(DocsJS.getStyle(c,"border-top-width"))+parseInt(DocsJS.getStyle(c,"border-bottom-width")),a=c.style.height;c.style.height="";var l=s.style.height;s.style.height="";var d=parseInt(DocsJS.getStyle(c,"height"));c.style.height=a,s.style.height=l,DocsJS.animate({from:n,to:1-n,duration:DocsJS.animation.duration,easing:DocsJS.easings.easeOutQuart,pass:[t,n,d,i],step:function(e,t){DocsJS.buttons.minimize.animation(t[0].querySelector('[docsjs-tag="button-parent"]'),e),t[0].parentElement.parentElement.parentElement.parentElement.style.height=(t[2]-t[3])*e+t[3]+"px"},callback:function(t){0===t[1]?t[0].parentElement.parentElement.parentElement.parentElement.style.height="":t[0].parentElement.parentElement.parentElement.parentElement.style.height=t[3]+"px",t[0].onclick=o,DocsJS.scrolled(),DocsJS.column.align(e)}}),0===n?(t.parentElement.parentElement.parentElement.parentElement.docsjs.state="max","min"===t.parentElement.parentElement.parentElement.docsjs.state&&t.parentElement.parentElement.onclick({target:{docsjs:{tag:"_change"}}})):(t.parentElement.parentElement.parentElement.parentElement.docsjs.state="min","max"===t.parentElement.parentElement.parentElement.docsjs.state&&t.parentElement.parentElement.onclick({target:{docsjs:{tag:"_change"}}})),DocsJS.forEach(e.querySelectorAll('[docsjs-menu-location="'+t.parentElement.parentElement.parentElement.parentElement.docsjs.location+'"]'),function(e){e.parentElement.docsjs.state=0===n?"max":"min"}),DocsJS.events.sectionToggle(t.parentElement.parentElement.parentElement.parentElement)};t.onclick=o}),DocsJS.forEach(e.querySelectorAll('[docsjs-tag="button-menu"]'),function(t){var o=function(){t.onclick=function(){};var n="menuHidden"===t.docsjs.internal?1:0;if(1===n){var r=e.querySelector('[docsjs-tag="menu"]').cloneNode(!0);r.style.display="block",t.parentElement.parentElement.parentElement.insertBefore(r,t.parentElement.parentElement.nextElementSibling),"min"===t.parentElement.parentElement.parentElement.docsjs.state&&t.parentElement.parentElement.onclick({target:{docsjs:{tag:"T-L"}}}),t.docsjs.internal="menuVisible"}else t.docsjs.internal="menuHidden";DocsJS.bindPrefs(),DocsJS.animate({from:n,to:1-n,duration:DocsJS.animation.duration,easing:DocsJS.easings.easeOutQuart,pass:[t,n,parseInt(DocsJS.getStyle(t.parentElement.parentElement.parentElement.querySelector('[docsjs-tag="menu"]'),"height")),parseInt(DocsJS.getStyle(t.parentElement.parentElement.parentElement.querySelector('[docsjs-tag="menu"]'),"padding-top")),parseInt(DocsJS.getStyle(t.parentElement.parentElement.parentElement.querySelector('[docsjs-tag="menu"]'),"padding-bottom")),parseInt(DocsJS.getStyle(t.parentElement.parentElement.parentElement.querySelector('[docsjs-tag="menu"]'),"border-top-width")),parseInt(DocsJS.getStyle(t.parentElement.parentElement.parentElement.querySelector('[docsjs-tag="menu"]'),"border-bottom-width"))],step:function(e,t){e=1-e,DocsJS.buttons.menu.animation(t[0].querySelector('[docsjs-tag="button-parent"]'),e);var o=t[0].parentElement.parentElement.parentElement.querySelector('[docsjs-tag="menu"]');o.style.height=t[2]*e+"px",o.style.paddingTop=t[3]*e+"px",o.style.paddingBottom=t[4]*e+"px",o.style.borderTopWidth=t[5]*e+"px",o.style.borderBottomWidth=t[6]*e+"px"},callback:function(t){if(0===t[1])t[0].parentElement.parentElement.parentElement.removeChild(t[0].parentElement.parentElement.parentElement.querySelector('[docsjs-tag="menu"]'));else{var n=t[0].parentElement.parentElement.parentElement.querySelector('[docsjs-tag="menu"]');n.style.height="auto",n.style.padding=n.style.paddingTop=n.style.paddingBottom=n.style.borderTopWidth=n.style.borderBottomWidth=""}t[0].onclick=o,DocsJS.column.align(e)}}),DocsJS.events.menuToggle(t.parentElement.parentElement.parentElement.querySelector('[docsjs-tag="menu"]'))};t.onclick=o}),DocsJS.forEach(e.querySelectorAll("t-l"),function(t){var o=function(n){if("T-L"===(n.target||n.srcElement||n.originalTarget).tagName||"t-l"===(n.target||n.srcElement||n.originalTarget).tagName||"T-L"===(n.target||n.srcElement||n.originalTarget).docsjs.tag||"_change"===(n.target||n.srcElement||n.originalTarget).docsjs.tag||"H"===(n.target||n.srcElement||n.originalTarget).tagName.toUpperCase().charAt(0))if("H-D"===t.parentElement.tagName.toUpperCase()&&"min"===t.parentElement.parentElement.docsjs.state&&"min"===t.parentElement.docsjs.state)t.querySelector('[docsjs-tag="button-minimize"]').onclick();else{t.onclick=function(){};var r="max"===t.parentElement.docsjs.state?1:0,s=t.parentElement.style.height;t.parentElement.style.height="";var c=parseInt(DocsJS.getStyle(t.parentElement,"height"));t.parentElement.style.height=s;var i=parseInt(DocsJS.getStyle(t,"height"))+parseInt(DocsJS.getStyle(t,"padding-top"))+parseInt(DocsJS.getStyle(t,"padding-bottom"))+parseInt(DocsJS.getStyle(t,"border-top-width"))+parseInt(DocsJS.getStyle(t,"border-bottom-width"));DocsJS.animate({from:r,to:1-r,duration:DocsJS.animation.duration,easing:DocsJS.easings.easeOutQuart,pass:[t,r,c-i,i],step:function(e,t){t[0].parentElement.style.height=t[2]*e+t[3]+"px"},callback:function(t){0===t[1]&&(t[0].parentElement.style.height="auto"),DocsJS.column.align(e),t[0].parentElement.docsjs.state=0===t[1]?"max":"min",t[0].onclick=o}}),"T-P"===t.parentElement.tagName.toUpperCase()&&DocsJS.forEach(e.querySelectorAll('[docsjs-menu-location="'+t.parentElement.docsjs.location+'"]'),function(e){e.parentElement.childNodes.length>1&&(e.parentElement.docsjs.state=0===r?"max":"min")}),DocsJS.events.topicToggle(t.parentElement.parentElement)}};t.onclick=o}),DocsJS.forEach(e.querySelectorAll('[docsjs-tag="ebefore"]'),function(t){var o=function(){t.onclick=function(){};var n="max"===t.nextSibling.docsjs.state?1:0,r=t.nextSibling.style.height,s=t.nextSibling.style.paddingTop,c=t.nextSibling.style.paddingBottom;t.nextSibling.style.height="",t.nextSibling.style.paddingTop="",t.nextSibling.style.paddingBottom="";var i=parseInt(DocsJS.getStyle(t.nextSibling,"height")),a=parseInt(DocsJS.getStyle(t.nextSibling,"padding-top")),l=parseInt(DocsJS.getStyle(t.nextSibling,"padding-bottom")),d=parseInt(DocsJS.getStyle(t.nextSibling,"border-top-width")),u=parseInt(DocsJS.getStyle(t.nextSibling,"border-bottom-width"));t.nextSibling.style.height=r,t.nextSibling.style.paddingTop=s,t.nextSibling.style.paddingBottom=c,DocsJS.animate({from:n,to:1-n,duration:DocsJS.animation.duration,easing:DocsJS.easings.easeOutQuart,pass:[t.nextSibling,n,i,a,l,d,u],step:function(e,t){t[0].style.height=t[2]*e+"px",t[0].style.paddingTop=t[3]*e+"px",t[0].style.paddingBottom=t[4]*e+"px",t[0].style.borderTopWidth=t[5]*e+"px",t[0].style.borderBottomWidth=t[6]*e+"px","E-X"===t[0].tagName.toUpperCase()?DocsJS.buttons.ex.animation(t[0].previousSibling.querySelector('[docsjs-tag="button-ebefore"]'),e):"E-G"===t[0].tagName.toUpperCase()&&DocsJS.buttons.eg.animation(t[0].previousSibling.querySelector('[docsjs-tag="button-ebefore"]'),e)},callback:function(t){t[0].docsjs.state=0===t[1]?"max":"min",0===t[1]?t[0].style.height=t[0].style.paddingTop=t[0].style.paddingBottom=t[0].style.borderTopWidth=t[0].style.borderBottomWidth="":t[0].style.height=t[0].style.paddingTop=t[0].style.paddingBottom=t[0].style.borderTopWidth=t[0].style.borderBottomWidth="0px",t[0].previousSibling.onclick=o,DocsJS.scrolled(),DocsJS.column.align(e)}}),DocsJS.events.eToggle(t.nextSibling)};t.onclick=o,t.onkeyup=function(e){var t=e.which||e.keyCode;32!==t&&13!==t||o()}})}),DocsJS.apply(function(e){var t=function(o){if(0!==DocsJS.cache.events.oncolumn){DocsJS.removeEvent(e,"mousedown",t);var n=o.clientX,r=function(e){var t=DocsJS.cache.events.oncolumn*(n-e.clientX);n=e.clientX,DocsJS.columnOffsets[DocsJS.cache.events.oncolumn<0?"left":"right"]+=t,DocsJS.resized()};DocsJS.addEvent(e,"mousemove",r);var s=function(){DocsJS.column.align(e),DocsJS.removeEvent(e,"mousemove",r),DocsJS.removeEvent(e,"mouseup",s),DocsJS.cache.events.oncolumn=0,DocsJS.resized(),DocsJS.addEvent(e,"mousedown",t)};DocsJS.addEvent(e,"mouseup",s)}};DocsJS.addEvent(e,"mousedown",t);var o=function(t){if(0!==DocsJS.cache.events.oncolumn){DocsJS.removeEvent(e,"touchstart",o),exposeClose(1);var n=t.touches[0].pageX,r=function(e){var t=DocsJS.cache.events.oncolumn*(n-e.touches[0].pageX);n=e.touches[0].pageX,DocsJS.columnOffsets[DocsJS.cache.events.oncolumn<0?"left":"right"]+=t,DocsJS.resized()};DocsJS.addEvent(e,"touchmove",r,!!DocsJS.supports.passive&&{passive:!0});var s=function(){exposeClose(0),DocsJS.column.align(e),DocsJS.removeEvent(e,"touchmove",r),DocsJS.removeEvent(e,"touchend",s),DocsJS.cache.events.oncolumn=0,DocsJS.resized(),e.ontouchstart=o};DocsJS.addEvent(e,"touchend",s,!!DocsJS.supports.passive&&{passive:!0})}};DocsJS.addEvent(e,"touchstart",o,!!DocsJS.supports.passive&&{passive:!0})}),DocsJS.cache.initiated&&DocsJS.cd.refresh(),"function"==typeof e&&e(),1},DocsJS.hashchanged=function(){"use strict";if(DocsJS.cache.hashChanged)DocsJS.cache.hashChanged=!1;else{var e=decodeURIComponent(window.location.hash.substr(1));if(""!==e){try{e=JSON.parse(e)}catch(e){}DocsJS.scroll(e)}}},DocsJS.scrolled=function(){"use strict";DocsJS.cache.initiated&&!DocsJS.cache.scrollDebounce&&(DocsJS.cache.scrollDebounce=window.setTimeout(function(){var e=!1,t=!1,o=DocsJS.window.scrollTop(),n=DocsJS.window.height(),r=document.documentElement.scrollHeight,s=[],c=document.querySelectorAll("t-p,h-d");DocsJS.forEach(c,function(e){var t=e.querySelector("t-l").getBoundingClientRect();s.push((t.top+t.bottom)/2)}),DocsJS.forEach(c,function(o,n){"T-P"===o.tagName.toUpperCase()&&!0===t&&(t=n),s[n]>0&&"max"===o.parentElement.docsjs.state&&!e&&(e=n,t=!0)}),e=c[e]||c[0],t=c[t]||document.querySelector('div[docsjs-tag="button-menu"]').parentElement,document.querySelector('div[docsjs-state="active"]').docsjs.state="inactive","T-P"===e.tagName.toUpperCase()?e.querySelector('div[docsjs-tag="button-menu"]').docsjs.state="active":t.querySelector('div[docsjs-tag="button-menu"]').docsjs.state="active",e=e.docsjs.location||e.parentElement.docsjs.location,document.querySelector('div[docsjs-state="youarehere"]').docsjs.state="",0===o?document.querySelector('div[docsjs-menu-internal="top"]').docsjs.state="youarehere":o===r-n?document.querySelector('div[docsjs-menu-internal="btm"]').docsjs.state="youarehere":document.querySelector('div[docsjs-menu-location="'+e+'"]').docsjs.state="youarehere";var i=encodeURIComponent(document.querySelector('div[docsjs-state="youarehere"]').docsjs.menuLocation||0===o);i!==window.location.hash.substr(1)&&(window.history&&history.pushState&&history.replaceState(void 0,void 0,"#"+i),DocsJS.forEach(document.querySelectorAll('div[docsjs-state="youarehere"]'),function(e){e.docsjs.state=""}),0===o?DocsJS.forEach(document.querySelectorAll('div[docsjs-menu-internal="top"]'),function(e){e.docsjs.state="youarehere"}):o===r-n?DocsJS.forEach(document.querySelectorAll('div[docsjs-menu-internal="btm"]'),function(e){e.docsjs.state="youarehere"}):DocsJS.forEach(document.querySelectorAll('div[docsjs-menu-location="'+e+'"]'),function(e){e.docsjs.state="youarehere"}),DocsJS.forEach(document.querySelectorAll('div[docsjs-tag="column-left"] div[docsjs-state="youarehere"]'),function(e){var t=e.getBoundingClientRect(),o=n-t.bottom,r=document.querySelector('div[docsjs-tag="column-left"] div[docsjs-tag="menu"]'),s=t.top-parseInt(DocsJS.getStyle(r,"margin-top"))-parseInt(DocsJS.getStyle(r,"padding-top"))-parseInt(DocsJS.getStyle(r,"border-top-width"));o<0?e.offsetParent.parentElement.scrollTop-=o:s<0&&(e.offsetParent.parentElement.scrollTop+=s)})),DocsJS.cache.scrollDebounce=!1},150))},DocsJS.resized=function(){"use strict";var e,t,o,n;DocsJS.apply(function(e){o=e.querySelector('[docsjs-tag="column-right"]'),n=e.querySelector('[docsjs-tag="column-left"]')}),DocsJS.cache.extraWidth=0;var r=100,s=DocsJS.window.width();s>DocsJS.width.max+200?(DocsJS.fontsize._scalar=1,DocsJS.apply(function(c){c.style.fontSize=DocsJS.fontsize._value+"px";var i=(s-DocsJS.width.max)/2;DocsJS.cache.extraWidth=i-100,r=-1*(i-200),n.style.width=i+DocsJS.columnOffsets.left+"px",o.style.width=i+DocsJS.columnOffsets.right+"px",o.style.marginLeft=-1*i-DocsJS.columnOffsets.right+"px",DocsJS.forEach(c.querySelectorAll("main > s-c"),function(o){o.style.width=c.querySelector('[docsjs-extras="learnmore"]').style.width=e=DocsJS.width.max-DocsJS.columnOffsets.left-DocsJS.columnOffsets.right+"px",o.style.marginLeft=c.querySelector('[docsjs-extras="learnmore"]').style.marginLeft=t=i+DocsJS.columnOffsets.left+"px"})}),DocsJS.width.max-DocsJS.columnOffsets.left-DocsJS.columnOffsets.right<DocsJS.width.min&&(DocsJS.columnOffsets.left>DocsJS.columnOffsets.right?DocsJS.columnOffsets.left-=DocsJS.width.min-DocsJS.width.max+DocsJS.columnOffsets.left+DocsJS.columnOffsets.right:DocsJS.columnOffsets.right-=DocsJS.width.min-DocsJS.width.max+DocsJS.columnOffsets.left+DocsJS.columnOffsets.right),DocsJS.columnOffsets.right<r&&(DocsJS.columnOffsets.right=r),DocsJS.columnOffsets.left<r&&(DocsJS.columnOffsets.left=r)):s>DocsJS.width.min+200?(DocsJS.fontsize._scalar=1,"none"===DocsJS.column.state[0]&&s-DocsJS.width.min<400?DocsJS.columnOffsets.left=-25.8765:s-DocsJS.width.min>400&&-25.8765===DocsJS.columnOffsets.left&&(DocsJS.columnOffsets.left=0),"none"===DocsJS.column.state[1]&&s-DocsJS.width.min<400?DocsJS.columnOffsets.right=-25.8765:s-DocsJS.width.min>400&&-25.8765===DocsJS.columnOffsets.right&&(DocsJS.columnOffsets.right=0),DocsJS.columnOffsets.left>0&&"none"===DocsJS.column.state[0]&&(DocsJS.columnOffsets.left=0),DocsJS.columnOffsets.right>0&&"none"===DocsJS.column.state[1]&&(DocsJS.columnOffsets.right=0),DocsJS.apply(function(e){e.style.fontSize=DocsJS.fontsize._value+"px",n.style.width=100+DocsJS.columnOffsets.left+"px",o.style.width=100+DocsJS.columnOffsets.right+"px",o.style.marginLeft=-100-DocsJS.columnOffsets.right+"px",DocsJS.forEach(e.querySelectorAll("main > s-c"),function(e){e.style.width=s-200-DocsJS.columnOffsets.left-DocsJS.columnOffsets.right+"px",e.style.marginLeft=100+DocsJS.columnOffsets.left+"px"})}),DocsJS.columnOffsets.left<r&&"none"!==DocsJS.column.state[0]&&(DocsJS.columnOffsets.left=r),DocsJS.columnOffsets.right<r&&"none"!==DocsJS.column.state[1]&&(DocsJS.columnOffsets.right=r)):DocsJS.apply(function(e){DocsJS.fontsize._scalar=Math.sqrt(s/(DocsJS.width.min+200)),e.style.fontSize=DocsJS.fontsize._value*DocsJS.fontsize._scalar+"px",DocsJS.column.stop(1),DocsJS.column.stop(-1),n.style.width=o.style.width=o.style.marginLeft="0",DocsJS.forEach(e.querySelectorAll("main > s-c"),function(e){e.style.width="100%",e.style.marginLeft="0"})}),DocsJS.cache.initiated&&(DocsJS.cd.resize(),0===DocsJS.cache.events.oncolumn&&(DocsJS.scrolled(),DocsJS.apply(function(e){DocsJS.column.align(e)}))),DocsJS.forEach(document.querySelectorAll('[docsjs-tag="column-header"]'),function(e){e.style.width=e.parentElement.style.width})},DocsJS._menuClicked=function(e,t){"use strict";"T-P"===e.offsetParent.parentElement.tagName.toUpperCase()?(e.offsetParent.parentElement.querySelector('[docsjs-tag="button-menu"]').onclick(),window.setTimeout(function(){DocsJS.scroll(t)},DocsJS.animation.duration)):DocsJS.scroll(t)},DocsJS.bindPrefs=function(){"use strict";DocsJS.apply(function(e){DocsJS.forEach(e.querySelectorAll('[docsjs-pref="aA"]'),function(t){t.onclick=function(){DocsJS.fontsize._value++,DocsJS.resized(),DocsJS.column.align(e),DocsJS.scrolled(),DocsJS.events.preferenceChanged("Fontsize up")},t.onkeyup=function(e){var o=e.which||e.keyCode;32!==o&&13!==o||t.onclick()}}),DocsJS.forEach(e.querySelectorAll('[docsjs-pref="Aa"]'),function(t){t.onclick=function(){DocsJS.fontsize._value--,DocsJS.resized(),DocsJS.column.align(e),DocsJS.scrolled(),DocsJS.events.preferenceChanged("Fontsize down")},t.onkeyup=function(e){var o=e.which||e.keyCode;32!==o&&13!==o||t.onclick()}}),DocsJS.forEach(e.querySelectorAll('[docsjs-pref="O"]'),function(t){t.onclick=function(){DocsJS.forEach(e.querySelectorAll("t-l"),function(e){"max"===e.parentElement.docsjs.state&&e.onclick({target:{docsjs:{tag:"T-L"}}})}),window.setTimeout(function(){DocsJS.forEach(e.querySelectorAll('[docsjs-tag="button-minimize"]'),function(e){"max"===e.parentElement.parentElement.parentElement.parentElement.docsjs.state&&e.onclick()}),DocsJS.forEach(e.querySelectorAll('[docsjs-tag="ebefore"]'),function(e){"max"===e.nextElementSibling.docsjs.state&&e.onclick()}),DocsJS.forEach(e.querySelectorAll('[docsjs-tag="button-menu"]'),function(e){"menuVisible"===e.docsjs.internal&&e.onclick()}),window.setTimeout(function(){DocsJS.scrolled(),DocsJS.events.preferenceChanged("Minimize all")},DocsJS.animation.duration)},DocsJS.animation.duration)},t.onkeyup=function(e){var o=e.which||e.keyCode;32!==o&&13!==o||t.onclick()}}),DocsJS.forEach(e.querySelectorAll('[docsjs-pref="CM"]'),function(t){t.onclick=function(){DocsJS.forEach(e.querySelectorAll('[docsjs-tag="button-minimize"]'),function(e){"min"===e.parentElement.parentElement.parentElement.parentElement.docsjs.state&&e.onclick()}),window.setTimeout(function(){DocsJS.forEach(e.querySelectorAll("t-l"),function(e){"min"===e.parentElement.docsjs.state&&e.onclick({target:{docsjs:{tag:"T-L"}}})}),window.setTimeout(function(){DocsJS.scrolled(),DocsJS.events.preferenceChanged("Minimize half")},DocsJS.animation.duration)},DocsJS.animation.duration),DocsJS.forEach(e.querySelectorAll('[docsjs-tag="button-menu"]'),function(e){"menuVisible"===e.docsjs.internal&&e.onclick()}),DocsJS.forEach(e.querySelectorAll('[docsjs-tag="ebefore"]'),function(e){"max"===e.nextElementSibling.docsjs.state&&e.onclick()})},t.onkeyup=function(e){var o=e.which||e.keyCode;32!==o&&13!==o||t.onclick()}}),DocsJS.forEach(e.querySelectorAll('[docsjs-pref="C"]'),function(t){t.onclick=function(){DocsJS.forEach(e.querySelectorAll('[docsjs-tag="button-minimize"]'),function(e){"min"===e.parentElement.parentElement.parentElement.parentElement.docsjs.state&&e.onclick()}),DocsJS.forEach(e.querySelectorAll('[docsjs-tag="ebefore"]'),function(e){"min"===e.nextElementSibling.docsjs.state&&e.onclick()}),window.setTimeout(function(){DocsJS.forEach(e.querySelectorAll("t-l"),function(e){"min"===e.parentElement.docsjs.state&&e.onclick({target:{docsjs:{tag:"T-L"}}})}),window.setTimeout(function(){DocsJS.scrolled(),DocsJS.events.preferenceChanged("Minimize none")},DocsJS.animation.duration)},DocsJS.animation.duration)},t.onkeyup=function(e){var o=e.which||e.keyCode;32!==o&&13!==o||t.onclick()}}),DocsJS.forEach(e.querySelectorAll('[docsjs-pref="Iv"]'),function(t){t.onclick=function(){"invert(100%)"!==e.style.filter?DocsJS.animate({from:0,to:100,duration:DocsJS.animation.duration,easing:DocsJS.easings.easeOutQuart,step:function(t){e.style.filter="invert("+t+"%)",e.style.WebkitFilter="invert("+t+"%)",DocsJS.events.preferenceChanged("Invert colors")}}):DocsJS.animate({from:100,to:0,duration:DocsJS.animation.duration,easing:DocsJS.easings.easeOutQuart,step:function(t){e.style.filter="invert("+t+"%)",e.style.WebkitFilter="invert("+t+"%)"},callback:function(){e.style.filter="",e.style.WebkitFilter="",DocsJS.events.preferenceChanged("Invert colors")}})},t.onkeyup=function(e){var o=e.which||e.keyCode;32!==o&&13!==o||t.onclick()}}),DocsJS.forEach(e.querySelectorAll('[docsjs-pref="GPU"]'),function(t){t.onclick=function(){DocsJS.cache.fastmode.active?(DocsJS.cache.fastmode.active=!1,DocsJS.animation.duration=DocsJS.cache.fastmode.durtation,DocsJS.cache.fastmode.durtation=0,DocsJS.forEach(e.querySelectorAll('[docsjs-extra="gpu"]'),function(e){e.style.fontSize="1em",e.style.marginTop="0",e.style.marginLeft="0"})):(DocsJS.cache.fastmode.active=!0,DocsJS.cache.fastmode.durtation=DocsJS.animation.duration,DocsJS.animation.duration=0,DocsJS.forEach(e.querySelectorAll('[docsjs-extra="gpu"]'),function(e){e.style.fontSize="0.8em",e.style.marginTop="0.125em",e.style.marginLeft="0.125em"})),DocsJS.events.preferenceChanged("Lightning")},t.onkeyup=function(e){var o=e.which||e.keyCode;32!==o&&13!==o||t.onclick()}}),DocsJS.forEach(e.querySelectorAll('[docsjs-pref="Rs"]'),function(t){t.onclick=function(){"none"===e.style.filter&&(DocsJS.cache.fastmode.active=!1,DocsJS.animation.duration=DocsJS.cache.fastmode.durtation,DocsJS.cache.fastmode.durtation=0,DocsJS.forEach(e.querySelectorAll('[docsjs-extra="gpu"]'),function(e){e.style.fontSize="1em",e.style.marginTop="0",e.style.marginLeft="0"})),DocsJS.animate({from:DocsJS.columnOffsets.left,to:0,duration:DocsJS.animation.duration,easing:DocsJS.easings.easeOutQuart,step:function(e){DocsJS.columnOffsets.left=e,DocsJS.resized()},callback:function(){DocsJS.scrolled(),DocsJS.column.stop(-1),DocsJS.column.stop(1)}}),DocsJS.animate({from:DocsJS.columnOffsets.right,to:0,duration:DocsJS.animation.duration,easing:DocsJS.easings.easeOutQuart,step:function(e){DocsJS.columnOffsets.right=e,DocsJS.resized()},callback:function(){DocsJS.scrolled(),DocsJS.column.stop(-1),DocsJS.column.stop(1)}}),DocsJS.fontsize._value=DocsJS.fontsize._init,DocsJS.resized(),DocsJS.scrolled(),"invert(100%)"===e.style.filter&&DocsJS.animate({from:100,to:0,duration:DocsJS.animation.duration,easing:DocsJS.easings.easeOutQuart,step:function(t){e.style.filter="invert("+t+"%)",e.style.WebkitFilter="invert("+t+"%)"},callback:function(){e.style.filter="",e.style.WebkitFilter=""}}),DocsJS.forEach(e.querySelectorAll('[docsjs-tag="button-menu"]'),function(e){"menuVisible"===e.docsjs.internal&&e.onclick()}),DocsJS.forEach(e.querySelectorAll('[docsjs-internal-default="min"],[docsjs-internal-default="max"]'),function(e){if(e.docsjs.internalDefault!==e.docsjs.state)switch(e.tagName.toUpperCase()){case"S-C":e.querySelector('[docsjs-tag="button-minimize"]').onclick();break;case"T-P":e.querySelector("t-l").onclick({target:{docsjs:{tag:"T-L"}}});break;case"E-X":case"E-G":e.previousSibling.onclick()}}),window.setTimeout(function(){DocsJS.events.preferenceChanged("Reset")},DocsJS.animation.duration)}})})},DocsJS.toggleRecommendedAccessibility=function(e){"use strict";DocsJS.toggleRecommendedAccessibility=function(){},e.parentElement.nextSibling.style.display="",e.parentElement.style.display="none",DocsJS.fontsize.set(DocsJS.fontsize._value+3),DocsJS.apply(function(e){DocsJS.column.stop(1),DocsJS.column.stop(-1),DocsJS.cache.events.columnchoice="menu",DocsJS.columnOffsets.left=.1,DocsJS.cache.events.oncolumn=-1,DocsJS.column.start(-1),e.querySelector('[docsjs-pref="C"]').onclick();var t=Math.max(2*parseInt(e.querySelector('[docsjs-tag="column-left"]').style.width),300);e.querySelector('[docsjs-tag="column-right"]').style.display="none",e.querySelector('[docsjs-tag="column-header"]').style.display="none",e.querySelector('[docsjs-tag="column-left"]').style.width=t+"px",e.querySelector('[docsjs-tag="column-left"]').style.display="",DocsJS.forEach(e.querySelectorAll("main>s-c"),function(e){e.style.marginLeft=t+"px",e.style.width=DocsJS.window.width()-t+"px"}),DocsJS.forEach(e.querySelectorAll('[docsjs-pref="aA"]'),function(t){t.onclick=function(){DocsJS.fontsize._value++,e.style.fontSize=DocsJS.fontsize._value+"px",DocsJS.events.preferenceChanged("Fontsize up")},t.onkeyup=function(e){var o=e.which||e.keyCode;32!==o&&13!==o||t.onclick()}}),DocsJS.forEach(e.querySelectorAll('[docsjs-pref="Aa"]'),function(t){t.onclick=function(){DocsJS.fontsize._value--,e.style.fontSize=DocsJS.fontsize._value+"px",DocsJS.events.preferenceChanged("Fontsize down")},t.onkeyup=function(e){var o=e.which||e.keyCode;32!==o&&13!==o||t.onclick()}}),window.setTimeout(function(){DocsJS.forEach(e.querySelectorAll('[docsjs-tag="button-minimize"],[docsjs-tag="button-menu"]'),function(e){e.style.display="none"}),DocsJS.forEach(e.querySelectorAll('t-l,[docsjs-tag="ebefore"]'),function(e){e.onclick=function(){},e.onkeyup=function(){}})},1e3)}),window.setTimeout(DocsJS.cd.refresh,0),DocsJS.resized=function(){}},DocsJS.toggleExtendedAccessibility=function(){"use strict";DocsJS.toggleExtendedAccessibility=function(){},DocsJS.apply(function(e){e.innerHTML=DocsJS.cache.accessibility,e.querySelector('[docsjs-tag="accessibility-mode-content"]').removeChild(e.querySelector('[docsjs-tag="accessibility-button"]')),e.querySelector('[docsjs-tag="accessibility-mode-content"]').removeChild(e.querySelector('[docsjs-tag="accessibility-button"]'))})},DocsJS.accessButtonSpaceClick=function(e,t){"use strict";var o=t.which||t.keyCode;32!==o&&13!==o||e.onclick()},DocsJS.spaceClick=function(e,t){"use strict";var o=t.which||t.keyCode;32!==o&&13!==o||DocsJS.scroll(JSON.parse(e.getAttribute("onclick").split("DocsJS._menuClicked(this,")[1].slice(0,-2)))},DocsJS.column={start:function(e){"use strict";DocsJS.apply(function(t){e<0?(t.querySelector('[docsjs-tag="column-left"]').innerHTML=DocsJS.column.generate(DocsJS.cache.events.columnchoice,t),"menu"!==DocsJS.cache.events.columnchoice?t.querySelector('[docsjs-tag="column-left"]').style.position="absolute":DocsJS.bindPrefs(),DocsJS.column.state[0]=DocsJS.cache.events.columnchoice,DocsJS.forEach(t.querySelectorAll('[docsjs-tag="column-left"] e-g,[docsjs-tag="column-left"] e-x'),function(e){e.style.height=e.style.paddingTop=e.style.paddingBottom=e.style.borderTopWidth=e.style.borderBottomWidth=""}),t.querySelector('[docsjs-tag="column-left"]').docsjs.state=DocsJS.cache.events.columnchoice):(t.querySelector('[docsjs-tag="column-right"]').innerHTML=DocsJS.column.generate(DocsJS.cache.events.columnchoice,t),"menu"!==DocsJS.cache.events.columnchoice?t.querySelector('[docsjs-tag="column-right"]').style.position="absolute":DocsJS.bindPrefs(),t.querySelector('[docsjs-tag="column-right"]').lastChild.style.marginRight="-"+(100+DocsJS.cache.extraWidth)+"px",DocsJS.column.state[1]=DocsJS.cache.events.columnchoice,"none"===DocsJS.column.state[0]&&(t.querySelector('[docsjs-tag="column-left"]').innerHTML=DocsJS.column.choice(-1)),DocsJS.forEach(t.querySelectorAll('[docsjs-tag="column-right"] e-g,[docsjs-tag="column-right"] e-x'),function(e){e.style.height=e.style.paddingTop=e.style.paddingBottom=e.style.borderTopWidth=e.style.borderBottomWidth=""}),t.querySelector('[docsjs-tag="column-right"]').docsjs.state=DocsJS.cache.events.columnchoice)});var t=e>0?"right":"left";"menu"===DocsJS.cache.events.columnchoice?(DocsJS.columnOffsets[t]=e<0?-1*DocsJS.cache.extraWidth+170:Math.max(-1*DocsJS.cache.extraWidth+170,0),DocsJS.cache.events.columnchoice=0,DocsJS.cache.events.oncolumn=0,DocsJS.resized()):(DocsJS.columnOffsets[t]=(document.querySelector("s-c").getBoundingClientRect().right-document.querySelector("s-c").getBoundingClientRect().left+document.querySelector('[docsjs-tag="column-'+t+'"]').getBoundingClientRect().right-document.querySelector('[docsjs-tag="column-'+t+'"]').getBoundingClientRect().left-400-2*DocsJS.cache.extraWidth)/2,DocsJS.cache.events.columnchoice=0,DocsJS.cache.events.oncolumn=0,window.setTimeout(DocsJS.cd.refresh,0),DocsJS.resized())},stop:function(e){"use strict";DocsJS.apply(function(t){if(e<0&&"none"!==DocsJS.column.state[0]){if("menu"!==DocsJS.column.state[0]){var o=[];DocsJS.forEach(t.querySelectorAll('[docsjs-tag="'+DocsJS.column.state[0]+'-inactive"]'),function(e){e.docsjs.tag="ebefore",e.style.display="",o.push(e.nextSibling)}),DocsJS.forEach(t.querySelector('[docsjs-tag="column-left"]').querySelectorAll(DocsJS.column.state[0]),function(e,t){o[t].parentElement.insertBefore(e,o[t])}),DocsJS.forEach(t.querySelectorAll('[docsjs-tag="efiller"][docsjs-side="left"]'),function(e){e.style.height="0px"})}t.querySelector('[docsjs-tag="column-left"]').style.position="fixed",DocsJS.forEach(t.querySelectorAll("s-c e-g,s-c e-x"),function(e){"min"===e.docsjs.state&&(e.style.height=e.style.paddingTop=e.style.paddingBottom=e.style.borderTopWidth=e.style.borderBottomWidth="0px")}),t.querySelector('[docsjs-tag="column-left"]').docsjs.state="none","menu"!==DocsJS.column.state[0]&&window.setTimeout(DocsJS.cd.refresh,0),DocsJS.column.state[0]="none",t.querySelector('[docsjs-tag="column-left"]').innerHTML=DocsJS.column.choice(-1),DocsJS.columnOffsets[e>0?"right":"left"]=0,DocsJS.resized()}else if("none"!==DocsJS.column.state[1]){if("menu"!==DocsJS.column.state[1]){var n=[];DocsJS.forEach(t.querySelectorAll('[docsjs-tag="'+DocsJS.column.state[1]+'-inactive"]'),function(e){e.docsjs.tag="ebefore",e.style.display="",n.push(e.nextSibling)}),DocsJS.forEach(t.querySelector('[docsjs-tag="column-right"]').querySelectorAll(DocsJS.column.state[1]),function(e,t){n[t].parentElement.insertBefore(e,n[t])}),DocsJS.forEach(t.querySelectorAll('[docsjs-tag="efiller"][docsjs-side="right"]'),function(e){e.style.height="0px"})}t.querySelector('[docsjs-tag="column-right"]').style.position="fixed",DocsJS.forEach(t.querySelectorAll("s-c e-g,s-c e-x"),function(e){"min"===e.docsjs.state&&(e.style.height=e.style.paddingTop=e.style.paddingBottom=e.style.borderTopWidth=e.style.borderBottomWidth="0px")}),t.querySelector('[docsjs-tag="column-right"]').docsjs.state="none","menu"!==DocsJS.column.state[1]&&window.setTimeout(DocsJS.cd.refresh,0),DocsJS.column.state[1]="none",t.querySelector('[docsjs-tag="column-right"]').innerHTML=DocsJS.column.choice(1),"none"===DocsJS.column.state[0]&&(t.querySelector('[docsjs-tag="column-left"]').innerHTML=DocsJS.column.choice(-1)),DocsJS.columnOffsets[e>0?"right":"left"]=0,DocsJS.resized(),DocsJS.cache.events.oncolumn=0}})},choice:function(e){"use strict";var t=function(t){var o=document.createElement("div");return o.innerHTML='<div style="position:absolute;height:35px;width:35px;font-size:35px;top:0;bottom:0;margin-top:auto;margin-bottom:auto;left:0;right:0;margin-left:auto;margin-right:auto;">'+DocsJS.buttons[t].html()+"</div>",1===e&&DocsJS.rotate(o.firstChild,180),o.outerHTML},o=function(t){return"onclick=\"DocsJS.cache.events.columnchoice = '"+t+"'; DocsJS.cache.events.oncolumn = "+e+"; DocsJS.column.start("+e+');" onmouseover="this.docsjs.tag=\'column-content\'" onmouseout="this.docsjs.tag=\'column-filler\'"'},n={eg:'<div docsjs-tag="column-filler" style="height:50%; overflow:hidden; cursor:pointer; cursor:pointer;"'+o("e-g")+">"+t("eg")+"</div>",ex:'<div docsjs-tag="column-filler" style="height:50%; overflow:hidden; cursor:pointer; cursor:pointer;"'+o("e-x")+">"+t("ex")+"</div>",menuHalf:'<div docsjs-tag="column-filler" style="height:50%; overflow:hidden; cursor:pointer; cursor:pointer;"'+o("menu")+">"+t("menu")+"</div>",menuFull:'<div docsjs-tag="column-filler" style="height:100%; overflow:hidden; cursor:pointer; cursor:pointer;"'+o("menu")+">"+t("menu")+"</div>"};return-1===e?"e-g"===DocsJS.column.state[1]?n.menuHalf+n.ex:"e-x"===DocsJS.column.state[1]?n.menuHalf+n.eg:n.menuFull:n.eg+n.ex},generate:function(e,t){"use strict";var o="";if("menu"===e)(o=t.querySelector('[docsjs-tag="menu"]').cloneNode(!0)).style.display="",o='<div docsjs-tag="column-content" style="height:100%; overflow: auto; -webkit-overflow-scrolling: touch;" role="navigation">'+o.outerHTML+"</div>";else{var n="-1";DocsJS.forEach(t.querySelectorAll(e),function(t){var r=!1,s=t.parentElement.docsjs.location||t.parentElement.parentElement.docsjs.location;s!==n?n=s:(r=!0,n=s),t.p