-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathtreesaver-0.10.0.js
129 lines (128 loc) · 61 KB
/
treesaver-0.10.0.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
var Mustache=function(){var j=function(){};j.prototype={otag:"{{",ctag:"}}",pragmas:{},buffer:[],pragmas_implemented:{"IMPLICIT-ITERATOR":true},context:{},render:function(a,b,d,c){if(!c)this.context=b,this.buffer=[];if(!this.includes("",a))if(c)return a;else{this.send(a);return}a=this.render_pragmas(a);a=this.render_section(a,b,d);if(c)return this.render_tags(a,b,d,c);this.render_tags(a,b,d,c)},send:function(a){a!==""&&this.buffer.push(a)},render_pragmas:function(a){if(!this.includes("%",a))return a;
var b=this;return a.replace(RegExp(this.otag+"%([\\w-]+) ?([\\w]+=[\\w]+)?"+this.ctag,"g"),function(a,c,e){if(!b.pragmas_implemented[c])throw{message:"This implementation of mustache doesn't understand the '"+c+"' pragma"};b.pragmas[c]={};e&&(a=e.split("="),b.pragmas[c][a[0]]=a[1]);return""})},render_partial:function(a,b,d){a=this.trim(a);if(!d||d[a]===void 0)throw{message:"unknown_partial '"+a+"'"};return typeof b[a]!="object"?this.render(d[a],b,d,true):this.render(d[a],b[a],d,true)},render_section:function(a,
b,d){if(!this.includes("#",a)&&!this.includes("^",a))return a;var c=this;return a.replace(RegExp(this.otag+"(\\^|\\#)\\s*(.+)\\s*"+this.ctag+"\n*([\\s\\S]+?)"+this.otag+"\\/\\s*\\2\\s*"+this.ctag+"\\s*","mg"),function(a,g,i,f){a=c.find(i,b);if(g=="^")return!a||c.is_array(a)&&a.length===0?c.render(f,b,d,true):"";else if(g=="#")return c.is_array(a)?c.map(a,function(a){return c.render(f,c.create_context(a),d,true)}).join(""):c.is_object(a)?c.render(f,c.create_context(a),d,true):typeof a==="function"?
a.call(b,f,function(a){return c.render(a,b,d,true)}):a?c.render(f,b,d,true):""})},render_tags:function(a,b,d,c){for(var e=this,g=function(){return RegExp(e.otag+"(=|!|>|\\{|%|\\$)?([^\\/#\\^]+?)\\1?"+e.ctag+"+","g")},i=g(),f=function(a,c,f){switch(c){case "!":return"";case "=":return e.set_delimiters(f),i=g(),"";case ">":return e.render_partial(f,b,d);case "{":return e.find(f,b);case "$":return encodeURIComponent(e.find(f,b));default:return e.escape(e.find(f,b))}},a=a.split("\n"),h=0;h<a.length;h++)a[h]=
a[h].replace(i,f,this),c||this.send(a[h]);if(c)return a.join("\n")},set_delimiters:function(a){a=a.split(" ");this.otag=this.escape_regex(a[0]);this.ctag=this.escape_regex(a[1])},escape_regex:function(a){if(!arguments.callee.sRE)arguments.callee.sRE=RegExp("(\\/|\\.|\\*|\\+|\\?|\\||\\(|\\)|\\[|\\]|\\{|\\}|\\\\)","g");return a.replace(arguments.callee.sRE,"\\$1")},find:function(a,b){var a=this.trim(a),d;b[a]===false||b[a]===0||b[a]?d=b[a]:(this.context[a]===false||this.context[a]===0||this.context[a])&&
(d=this.context[a]);return typeof d==="function"?d.apply(b):d!==void 0?d:""},includes:function(a,b){return b.indexOf(this.otag+a)!=-1},escape:function(a){return String(a===null?"":a).replace(/&(?!\w+;)|["'<>\\]/g,function(a){switch(a){case "&":return"&";case "\\":return"\\\\";case '"':return""";case "'":return"'";case "<":return"<";case ">":return">";default:return a}})},create_context:function(a){if(this.is_object(a))return a;else{var b=".";if(this.pragmas["IMPLICIT-ITERATOR"])b=
this.pragmas["IMPLICIT-ITERATOR"].iterator;var d={};d[b]=a;return d}},is_object:function(a){return a&&typeof a=="object"},is_array:function(a){return Object.prototype.toString.call(a)==="[object Array]"},trim:function(a){return a.replace(/^\s*|\s*$/g,"")},map:function(a,b){if(typeof a.map=="function")return a.map(b);else{for(var d=[],c=a.length,e=0;e<c;e++)d.push(b(a[e]));return d}}};return{name:"mustache.js",version:"0.3.1-dev",to_html:function(a,b,d,c){var e=new j;if(c)e.send=c;e.render(a,b,d);
if(!c)return e.buffer.join("\n")}}}();
(function(){'use strict';var f=void 0,h=true,j=null,k=false,o;window.Fc=h;var ba=this,ca=Date.now||function(){return+new Date};function r(a,b){var c=a.split("."),d=ba;!(c[0]in d)&&d.execScript&&d.execScript("var "+c[0]);for(var e;c.length&&(e=c.shift());)!c.length&&b!==f?d[e]=b:d=d[e]?d[e]:d[e]={}};var da={},t,ea,ga,ha,ia;if(k in Array)Array.isArray=function(a){return Object.prototype.toString.apply(a)==="[object Array]"};function ja(a){return Array.prototype.slice.call(a,0)}function ka(a,b){var c=a.slice(b+1||a.length);a.length=b<0?a.length+b:b;a.push.apply(a,c)};r("treesaver.VERSION","0.10.0-0-g73c799f");var ma,na,oa=window.navigator.userAgent.toLowerCase(),pa=document.compatMode!=="BackCompat"&&"XMLHttpRequest"in window&&"addEventListener"in document&&"getComputedStyle"in window&&"querySelectorAll"in document&&"localStorage"in window&&"JSON"in window,u=!!window.TS_WITHIN_NATIVE_IOS_APP,ra=u||qa==="android"||/mobile/.test(oa),sa=window.screen.width<=600,ta=u?"safari":/webkit/.test(oa)?/chrome|safari/.test(oa)?/(chrome|safari)/.exec(oa)[0]:"webkit":/opera/.test(oa)?"opera":/msie/.test(oa)?"msie":!/compatible/.test(oa)&&
/mozilla/.test(oa)?"mozilla":"unknown",qa=(/(android|ipad|iphone|ipod|win|mac|linux)/.exec(window.navigator.platform?window.navigator.platform.toLowerCase():/android/.test(oa)?"android":"unknown")||["unknown"])[0],ua=function(){switch(ta){case "chrome":case "safari":case "webkit":return"-webkit-";case "mozilla":return"-moz-";case "msie":return"-ms-";case "opera":return"-o-";default:return""}}(),va=function(){switch(ta){case "chrome":case "safari":case "webkit":return"Webkit";case "mozilla":return"Moz";
case "msie":return"ms";case "opera":return"O";default:return""}}();function wa(a,b,c){var d=document.documentElement.style,b=b&&va?va+a[0].toUpperCase()+a.substr(1):k;return!c&&typeof d[a]!=="undefined"||!!b&&typeof d[b]!=="undefined"}
var xa=u||"orientation"in window,ya=u||"createTouch"in document||/android/.test(oa),za=!u&&function(){if(window.navigator.plugins&&window.navigator.plugins.length)return!!window.navigator.plugins["Shockwave Flash"];else if("ActiveXObject"in window)try{return!!new window.ActiveXObject("ShockwaveFlash.ShockwaveFlash.7")}catch(a){}return k}(),Aa="CSSFontFaceRule"in window,Ba="getContext"in document.createElement("canvas");
if("createElementNS"in document)var Ca="createElementNS"in document&&"createSVGRect"in document.createElementNS("http://www.w3.org/2000/svg","svg"),Da=Ca&&/SVG/.test(document.createElementNS("http://www.w3.org/2000/svg","animate").toString()),Ea=Ca&&/SVG/.test(document.createElementNS("http://www.w3.org/2000/svg","clipPath").toString());var Fa,Ga=document.createElement("div");Ga.innerHTML="<svg/>";Fa=(Ga.firstChild&&Ga.firstChild.namespaceURI)=="http://www.w3.org/2000/svg";
var Ha="canPlayType"in document.createElement("video"),Ia="localStorage"in window,Ja=!u&&"applicationCache"in window,Ka=u||window.navigator.standalone,La=u||wa("transformProperty")||wa("transform",h,h),Ma;
if(!(Ma=u)){var Na=wa("perspectiveProperty")||wa("perspective",h,h);if(Na&&"WebkitPerspective"in document.documentElement.style&&ta!=="safari"){var Oa=document.createElement("style"),Pa=document.createElement("div"),Qa="@media (perspective)",Ra;Qa+=",("+ua+"perspective)";Oa.textContent=Qa+"{#ts-test {height:3px}}";Pa.setAttribute("id","ts-test");document.documentElement.appendChild(Oa);document.documentElement.appendChild(Pa);Ra=Pa.offsetHeight===3;document.documentElement.removeChild(Oa);document.documentElement.removeChild(Pa);
Na=Ra}Ma=Na}var Sa=Ma,Ta=u||wa("transitionProperty",h),Ua=document.createElement("div"),Va;Ua.style.visibility="hidden";Ua.style.fontSize="13px";Ua.style.height="1.5em";document.documentElement.appendChild(Ua);Va=Ua.getBoundingClientRect().height%1;document.documentElement.removeChild(Ua);function v(a){return a?"":"no-"}var Xa=k;
function Ya(){ma||(ma=[],ma.push("js",v(Ba)+"canvas",v(Ia)+"localstorage",v(Ha)+"video",v(Ja)+"applicationcache",v(Aa)+"fontface",v(ya)+"touch",v(La)+"csstransforms",v(Sa)+"csstransforms3d",v(Ta)+"csstransitions",v(Ca)+"svg",v(Fa)+"inlinesvg",v(Da)+"smil",v(Ea)+"svgclippaths",v(pa)+"treesaver",v(za)+"flash",v(xa)+"orientation",v(Ka)+"fullscreen",v(ra)+"mobile",v(sa)+"smallscreen",v(w.qc())+"cached",v(u)+"nativeapp",v(Va)+"subpixels","browser-"+ta,"os-"+qa));na=[v(!w.fb())+"offline"];xa&&na.push("orientation-"+
(window.orientation?"horizontal":"vertical"));var a=document.documentElement.className;Xa||(Xa=h,a=a?a.replace(/no-js|no-treesaver/g,""):"",a+=" "+ma.join(" "));Za.lastIndex=0;a=a.replace(Za,"");a+=" "+na.join(" ");document.documentElement.className=a.split(/\s+/).join(" ")}var $a=["offline","orientation-vertical","orientation-horizontal"],Za=function(){var a=$a.map(function(a){return"((no-)?"+a+")"});return RegExp(a.join("|"),"g")}();
function ab(a,b){return!a.length?h:a.every(function(a){var d=a.substr(0,3)==="no-",a=d?a.substr(3):a,e=ma.concat(b?na:[]);return d?e.indexOf(a)===-1:e.indexOf(a)!==-1?h:!b&&$a.indexOf(a)!==-1?h:k})};ca();var bb=[],cb={},db=j,eb=-1,fb=-1,gb=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){return window.setTimeout(a,17)},hb=window.cancelAnimationFrame||window.webkitCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||window.oCancelRequestAnimationFrame||window.msCancelRequestAnimationFrame||window.clearTimeout;
function ib(){var a=ca();bb.forEach(function(b,c){if(eb!==-1&&!b.Sb&&(!db||b.name&&db.indexOf(b.name)!==-1)&&!(a-b.gb<=b.nc)){b.gb=a;b.rb-=1;if(b.rb<=0&&(!b.Gb||b.rb<0))if(ka(bb,c),delete cb[b.name],b.Gb)return;b.jc.apply(b.rc,b.dc)}});eb=-1;bb.length&&eb===-1&&(eb=gb.call(window,ib,document.body))}
function jb(a,b,c,d,e,g,i){var s=ca(),q=g?cb[g]:j;g&&g in cb?q=cb[g]:(q={jc:a,name:g,rc:i,gb:e?-Infinity:s},bb.push(q),g&&(cb[g]=q));q.dc=d||[];q.rb=c;q.nc=b;q.Gb=e;q.Sb=k;eb===-1&&(eb=gb.call(window,ib,document.body))}function kb(a,b,c,d,e){jb(a,b,1,c,k,d,e)}function lb(a,b,c){jb(a,0,1,[],k,b,c)}function mb(a){db=a;fb!==-1&&window.clearTimeout(fb)}function nb(){db=j;fb!==-1&&(window.clearTimeout(fb),fb=-1)}function x(a){delete cb[a];bb.forEach(function(b,c){if(b.name===a)ka(bb,c),b.Sb=h})};if("Node"in window&&Node.prototype&&!("contains"in Node.prototype))Node.prototype.contains=function(a){return!!(this.compareDocumentPosition(a)&16)};
if("classList"in document.documentElement)var y=function(a,b){b.split(/\s+/).forEach(function(b){a.classList.add(b)})},ob=function(a,b){return a.classList.remove(b)},z=function(a,b){return a.classList.contains(b)},pb=function(a){return ja(a.classList)};else y=function(a,b){a.className?z(a,b)||(a.className+=" "+b):a.className=b},ob=function(a,b){a.className=a.className.replace(RegExp("(^|\\s)"+b+"(\\s|$)"),"$2")},z=function(a,b){return!(!a.className||!RegExp("(^|\\s)"+b+"(\\s|$)").test(a.className))},
pb=function(a){return!a.className?[]:a.className.split(/\s+/)};function B(a,b){b||(b=document);return ja(b.querySelectorAll(a))}function qb(a){for(;a.firstChild;)a.removeChild(a.firstChild)}function tb(a){if("outerHTML"in a)return a.outerHTML;var a=a.cloneNode(h),b;ub.appendChild(a);b=ub.innerHTML;ub.removeChild(a);return b}function vb(a){ub.innerHTML=a;a=ub.firstChild;qb(ub);return!a||a.nodeType!==1?j:a}
function wb(a,b){for(var c=a,d=b.toUpperCase();(c=c.parentNode)!==j&&c.nodeType===1;)if(c.nodeName===d)return c;return j}var xb=[];function yb(a){xb.push(a);a.setAttribute("src","data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=");var a=zb,b=[];cb.clearImgCache||jb(a,3E3,1,b,h,"clearImgCache",f)}function zb(){xb=[]}var ub=document.createElement("div");ub.style.display="none";function D(a,b,c){var d=document.createEvent("UIEvents"),e;d.initEvent(b,k,h);if(c)for(e in c)d[e]=c[e];a.dispatchEvent(d)}function G(a,b,c){a.addEventListener(b,c,k)}function Ab(a,b,c){a.removeEventListener(b,c,k)}r("treesaver.addListener",G);r("treesaver.removeListener",Ab);var Bb,Cb,Db,Eb,Fb,Gb;function Hb(a){var b=window.treesaverFonts;Db=a;Eb={};Fb=k;Gb=setTimeout(Ib,4E3);(function(){var a=document.createElement("script");a.src="//ajax.googleapis.com/ajax/libs/webfont/1/webfont.js";a.type="text/javascript";a.async="true";a.onload=function(){window.WebFont.load(Jb(b))};var d=document.getElementsByTagName("script")[0];d.parentNode.insertBefore(a,d)})()}
function Jb(a){var b=Object.F(Kb),c;for(c=0;c<Lb.length;c++)a.hasOwnProperty(Lb[c])&&(b[Lb[c]]=a[Lb[c]]);return b}var Lb=["ascender","custom","google","monotype","typekit"];function Mb(){var a=Eb;clearTimeout(Gb);Fb||(Fb=h,Db(a))}function Ib(){Mb()}var Kb={active:function(){Mb()},fontactive:function(a){Eb[a]="active"},fontinactive:function(a){Eb[a]="inactive"},fontloading:function(a){Eb[a]="loading"},inactive:function(){Mb()},loading:function(){}};function Nb(){Hb(function(a){var b=[],c,d;for(d in a)a.hasOwnProperty(d)&&(c="ts-"+d.toLowerCase().replace(/[^a-z]+/g,"-")+(a[d]=="active"?"-active":"-inactive"),b.push(c));y(document.documentElement,b.join(" "));Ob()})}function Ob(){Bb=Pb;var a=Cb.slice(0);Cb=[];a.forEach(function(a){a()})}var Pb=2;function Qb(a,b,c){c=c?window.localStorage:window.sessionStorage;c.removeItem(a);try{c.setItem(a,window.JSON.stringify(b))}catch(d){}}function Rb(a){return(a=window.sessionStorage.getItem(a)||window.localStorage.getItem(a))?window.JSON.parse(a):j};var Sb,Tb,Ub,Vb="pushState"in window.history;function Wb(){var a=document.location.href.indexOf("#");return a===-1?"":document.location.href.substr(a+1)}if(document.location.hash){var Xb=Wb();Xb[0]==="-"&&Xb.length>=2&&document.location.replace(Xb.substr(1))}Tb=function(a,b,c){window.history.pushState(a,b,c)};Sb=function(a,b,c){window.history.replaceState(a,b,c)};
if(!Vb){Tb=function(a,b,c){Yb(a,b,c,k)};Sb=function(a,b,c){Yb(a,b,c,h)};var Yb=function(a,b,c,d){var e="-"+window.escape(c);Qb("history:"+e,{state:a,title:b});c===document.location.pathname&&(e="");Ub=e;d?document.location.replace("#"+e):document.location.hash="#"+e};window.onhashchange=function(){var a=Wb();a!==Ub&&(a=(Ub=a)?Rb("history:"+a):{},D(window,"popstate",{state:a?a.state:j}))}};var w={ac:1E4,Fb:{cc:"treesaver.online",bc:"treesaver.offline"},Zb:["offline","online"],Yb:"uncached,idle,checking,downloading,updateready,obsolete".split(","),Ha:k};w.load=function(){if(!w.Ha)w.Ha=h,w.Zb.forEach(function(a){G(document,a,w)}),Ja&&w.hb&&w.Yb.forEach(function(a){G(window.applicationCache,a,w)})};w.Cc=function(){if(w.Ha)w.Ha=k,w.Zb.forEach(function(a){Ab(window,a,w)}),Ja&&w.hb&&w.Yb.forEach(function(a){Ab(window.applicationCache,a,w)})};
w.Nb="onLine"in window.navigator?window.navigator.onLine:h;w.fb=function(){return w.Nb};w.Vb=function(a){w.Nb=a;Ya();D(window,a?w.Fb.cc:w.Fb.bc)};w.hb=Ja&&!!window.applicationCache.status;w.qc=function(){return w.hb};w.handleEvent=function(a){switch(a.type){case "online":w.Vb(h);break;case "offline":w.Vb(k);break;case "updateready":window.applicationCache.swapCache()}};w.vc=/^https?:\/\//i;w.oa=function(a){if(a&&a[0]==="/"||w.vc.test(a))return a;var b=document.createElement("a");b.href=a;return b.href};
w.get=function(a,b,c){var d={N:new XMLHttpRequest,url:a,zb:b};kb(function(){w.wc(d)},c||w.ac,[],w.Lb(d));d.N.onreadystatechange=w.hc(d);try{d.N.open("GET",d.url,h),d.N.send(j)}catch(e){w.qb(d)}};w.Lb=function(a){return"fetch:"+a.url};w.hc=function(a){return function(){a.N.readyState===4&&(a.N.status===0||a.N.status===200||a.N.status===304?(a.zb(a.N.responseText,a.url),w.Cb(a)):w.qb(a))}};w.Cb=function(a){x(w.Lb(a));a.N.onreadystatechange=j};w.qb=function(a){a.zb(j,a.url);w.Cb(a)};
w.wc=function(a){a.N.abort();w.qb(a)};var Zb,$b,ac,bc=/<body>\s*([\s\S]+?)\s*<\/body>/i;function cc(a){return(a=bc.exec(a))&&a[1]?a[1]:j}function dc(a){ac=document.createElement("div");if(a&&(a=cc(a))){var b=document.createElement("div");b.style.display="none";b.innerHTML=a;ja(b.childNodes).forEach(function(a){/^div$/i.test(a.nodeName)&&ac.appendChild(a)});qb(b)}ec()}function ec(){Zb=fc;var a=$b.slice(0);$b=[];a.forEach(function(a){a()})}function gc(a){return ac?B("."+a,ac):[]}var fc=2;var hc=document.createElement("style");hc.setAttribute("type","text/css");B("head").length&&(B("head")[0].appendChild(hc),hc=document.styleSheets[document.styleSheets.length-1],hc.insertRule(".offscreen{position:absolute;top:-200%;right:-200%;visibility:hidden;}",0),hc.insertRule(".viewer .grid{top:50%;left:50%;margin:0}",0));var jc=/^-?\d+(:?\.\d+)?(?:px)?$/i;function kc(a,b){if(!a)return k;var c=a.m||a.m===0?a.m:a.b;return b.d>=(a.K||a.K===0?a.K:a.d)&&b.b>=c&&b.d<=a.Ia&&b.b<=a.V}function H(a){return a&&jc.test(a)?parseFloat(a)||0:j}function J(a){return a&&a.offsetHeight||0}function lc(a){return a&&Math.round(a.getBoundingClientRect().width*1E3)/1E3||0}function K(a,b,c){a.style[b]=c+"px";return c}function mc(a,b){"transformProperty"in a.style?a.style.transformProperty=b:a.style[va+"Transform"]=b}
function nc(a,b,c){mc(a,"translate("+b+"px,"+c+"px)")}Sa&&(nc=function(a,b,c){mc(a,"translate3d("+b+"px,"+c+"px,0)")});function oc(a,b){return Math.ceil(a)+b-Math.ceil(a%b)}
function L(a){if(a){var b=document.defaultView.getComputedStyle(a,j);a.getAttribute("style");this.display=b.display;this.position=b.position;this.marginTop=H(b.marginTop)||0;this.marginBottom=H(b.marginBottom)||0;this.marginLeft=H(b.marginLeft)||0;this.marginRight=H(b.marginRight)||0;this.marginHeight=this.marginTop+this.marginBottom;this.marginWidth=this.marginLeft+this.marginRight;this.borderTop=H(b.borderTopWidth);this.borderBottom=H(b.borderBottomWidth);this.borderLeft=H(b.borderLeftWidth);this.borderRight=
H(b.borderRightWidth);this.paddingTop=H(b.paddingTop);this.paddingBottom=H(b.paddingBottom);this.paddingLeft=H(b.paddingLeft);this.paddingRight=H(b.paddingRight);this.G=this.borderTop+this.paddingTop;this.ga=this.borderBottom+this.paddingBottom;this.P=this.G+this.ga;this.ec=this.borderLeft+this.paddingLeft;this.fc=this.borderRight+this.paddingRight;this.Da=this.ec+this.fc;this.L=lc(a);this.n=J(a);this.d=this.L-this.Da;this.b=this.n-this.P;this.K=H(b.minWidth)||0;this.m=H(b.minHeight)||0;a=H(b.maxWidth);
this.Ia=!a||a===-1?Infinity:a;a=H(b.maxHeight);this.V=!a||a===-1?Infinity:a;this.lineHeight=H(b.lineHeight)||j}}L.prototype.F=function(){var a=new L,b;for(b in this)a[b]!==this[b]&&(a[b]=this[b]);return a};function pc(a,b,c){this.X=a;this.s=b;this.g=c}var qc=new pc(Infinity,Infinity,Infinity);pc.prototype.wb=function(){return!this.X&&!this.s&&!this.g};function rc(a,b){if(a.X!==b.X)return b.X-a.X;else if(a.g!==b.g)return a.g-b.g;return b.s-a.s}pc.prototype.F=function(){return new this.constructor(this.X,this.s,this.g)};function sc(){this.g=this.f=this.index=0;this.u=[];this.la=[];this.wa=0}sc.prototype.F=function(){var a=new this.constructor;a.index=this.index;a.f=this.f;a.g=this.g;a.J=this.J;a.u=this.u.slice(0);a.la=this.la.slice(0);a.wa=this.wa;return a};sc.prototype.Z=function(a){return!!a&&a.index===this.index&&a.f===this.f&&a.g===this.g&&a.u.length===this.u.length};
function tc(a,b){if(a.g)return k;for(var c=a.index,d=b.i.length,e;c<d;){c=b.i[c];e=uc(c);if(!c.ta)return k;if(!vc(a,c.s.f)&&!c.s.ca)return k;c=e?e.index:d}if(!a.u.length&&a.f===b.o.length)return h;for(d=a.u.slice(0);d.length;)if(e=b.o[d.pop()],!e.ca)return k;for(c=a.f,d=b.o.length;c<d;c+=1)if(e=b.o[c],!e.ca)return k;return h}function wc(a,b){var c;if(b<a.f)(c=a.u.indexOf(b))!==-1?ka(a.u,c):(c=a.la.indexOf(b))!==-1&&ka(a.la,c);else{if(b>a.f)for(;a.f<b;a.f+=1)a.u.push(a.f);a.f=b+1}}
function xc(a,b){a.u.indexOf(b)===-1&&(wc(a,b),a.u.push(b))}function vc(a,b){return a.f<=b?k:a.u.indexOf(b)!==-1?k:a.la.indexOf(b)!==-1?k:h};function yc(a,b,c,d){this.l=a;this.K=parseInt(b||0,10);this.m=parseInt(c||0,10);this.r=d}yc.prototype.ba=function(){return!this.r?h:ab(this.r,h)};function zc(a,b,c){c&&y(b,c);b.innerHTML=a.l;B("img[data-src], iframe[data-src], video[data-src], source[data-src], audio[data-src]",b).forEach(function(a){a.setAttribute("src",a.getAttribute("data-src"))})};if(k in String.prototype)String.prototype.trim=function(){return this.replace(/^\s\s*/,"").replace(/\s\s*$/,"")};function Ac(a,b,c){this.Gc=c.index;this.f=c.f;c.f+=1;this.ma=j;this.q={};this.ca=!z(a,"required");this.$b=z(a,"zoomable");this.La=z(a,"scroll");ja(a.childNodes).forEach(function(a){if(a.nodeType!==1)a.data&&a.data.trim();else{var b=a.getAttribute("data-sizes"),c=parseInt(a.getAttribute(a.hasAttribute("width")?"width":"data-minwidth"),10),i=parseInt(a.getAttribute(a.hasAttribute("height")?"height":"data-minheight"),10),s=a.hasAttribute("data-requires")?a.getAttribute("data-requires").split(" "):j;
if(!s||ab(s))a.removeAttribute("hidden"),ob(a,"hidden"),Bc(a),a=tb(a),b=b?b.split(" "):["fallback"],Cc(this,b,a,c,i,s)}},this);this.q.fallback&&(Dc(this,this.q.fallback[0].l,a,b,c),delete this.q.fallback)}
function Dc(a,b,c,d,e){var g=c.parentNode,i=document.createElement("div");i.innerHTML=b;b=i.childNodes.length===1?i.firstChild:i;g.insertBefore(b,c);a.$b&&(y(b,"zoomable"),b.setAttribute("data-figureindex",a.f),(u||ya)&&b.setAttribute("onclick","void(0)"));Ec(b,d);a.ma=new Gc(b,d,e,h);a.ma.s=a;a.ma.i&&a.ma.i.forEach(function(a){a.s=this;a.Dc=h},a);g.removeChild(b)}
function Hc(a,b){var c=-Infinity,d,e=Infinity,g,i,s=a.q;a.q.lightbox&&(s={lightbox:a.q.lightbox});for(i in s)a.q[i].forEach(function(a){if(a.ba()){var s=a.K*a.m;a.K&&a.K>b.d||a.m&&a.m>b.b?!g&&this.La&&s<=e&&(e=s,d={name:i,qa:a}):s>=c&&(c=s,g={name:i,qa:a})}},a);return g||d}function Cc(a,b,c,d,e,g){var i=new yc(c,d,e,g);b.forEach(function(a){this.q[a]?this.q[a].push(i):this.q[a]=[i]},a)}function Ic(a){var b=a.nodeName.toLowerCase();return a.nodeType===1&&b==="figure"};function Gc(a,b,c,d){var e=Jc(a),g,i="";if(a.nodeType!==1)this.sa=h;else if(J(a)){this.index=c.index;c.index+=1;this.$=!e&&Kc(a);this.i=[];this.o=[];g=k;if(this.$&&!z(a,"keeptogether"))Lc(this,a,b,c,d),g=!!this.o.length,this.$=!!this.i.length;this.Pa=this.Pa||!e;this.oc=z(a,"keepwithnext");this.gc=z(a,"columnbreak");this.na=this.na||!this.Pa||z(a,"keeptogether");this.e=new L(a);if(!this.e.lineHeight)this.e.lineHeight=b;if(!this.na)this.na=this.e.P+this.e.lineHeight===this.e.n;this.ra=this.na?this.e.n:
!this.$?this.e.G+this.e.lineHeight:!this.ka?this.e.G+this.i[0].ra+(this.e.G?this.i[0].e.marginTop:0):this.e.G+this.i[0].ra;this.l=tb(a);this.Ob=this.$?this.l.substr(0,this.l.indexOf(">")+1):j;this.Qa=this.$?this.l.slice(this.l.lastIndexOf("<")):j;if(g)this.l=this.Ob,this.i.forEach(function(a){this.l+=a.l},this),this.l+=this.Qa;this.$&&(a=a.cloneNode(h),this.e.marginTop&&K(a,"marginTop",0),this.e.borderTop&&K(a,"borderTopWidth",0),this.e.paddingTop&&K(a,"paddingTop",0),i=tb(a));this.sc=this.$?i.substr(0,
i.indexOf(">")+1):j}else this.sa=h}function uc(a){return a.nextSibling?a.nextSibling:a.parent?uc(a.parent):j}
function Lc(a,b,c,d,e){var g,i=a instanceof Gc,s=b.nodeName.toLowerCase()==="ol"&&"start"in b,q=s?b.start:j;q===-1&&(q=1);ja(b.childNodes).forEach(function(b){if(s&&b.nodeName.toLowerCase()==="li"){if(b.value&&b.value!==-1)q=b.value;b.setAttribute("value",q);q+=1}if(Ic(b)){if(e)return;b=new Ac(b,c,d);a.o.push(b);if(b=b.ma)if(b.ta=h,i)a.ka=h}else if(b=new Gc(b,c,d,!!e),i&&!a.ka)a.ka=b.ka;if(b&&!b.sa){a.i=a.i.concat(b,b.i||[]);if(b.o.length)a.o=a.o.concat(b.o),delete b.o;b.parent=i?a:j;if(g)g.nextSibling=
b;g=b}})}function Mc(a){for(var a=a.parent,b=[];a;)b.unshift(a.sc),a=a.parent;return b.join("")}function Nc(a){for(var a=a.parent,b=[];a;)b.push(a.Qa),a=a.parent;return b.join("")}
function Kc(a){if(Oc(a))return k;if(Pc(a))return h;var b,c,d,e=k;for(b=0,c=a.childNodes.length;b<c;b+=1)if(d=a.childNodes[b],d.nodeType===3&&/[^\s]/.test(d.data))return k;else if(d.nodeType===1){if(Oc(d)||Pc(d))return h;e=h;d=document.defaultView.getComputedStyle(d,j);if(/inline/.test(d.display))return k;else if(/block/.test(d.display))return h}return e}var Qc="img,video,object,embed,iframe,audio,canvas,svg,table".split(",");
function Jc(a){var b=a.nodeName.toLowerCase();return a.nodeType===1&&Qc.indexOf(b)!==-1}var Rc="p,h1,h2,h3,h4,h5,h6".split(",");function Oc(a){var b=a.nodeName.toLowerCase();return a.nodeType===1&&Rc.indexOf(b)!==-1}var Sc="div,article,ul,ol,figure,aside".split(",");function Pc(a){var b=a.nodeName.toLowerCase();return a.nodeType===1&&Sc.indexOf(b)!==-1}
function Ec(a,b){if(a.nodeType===1){var c,d;a.removeAttribute("id");if(!Ic(a)){if(Kc(a)&&!z(a,"keeptogether"))for(c=a.childNodes.length-1;c>=0;c-=1)d=a.childNodes[c],d.nodeType!==1?a.removeChild(d):Ec(d,b);if(!window.TS_NO_AUTOMETRICS)if(c=new L(a),c.marginTop%b&&K(a,"marginTop",oc(c.marginTop,b)),c.marginBottom%b&&K(a,"marginBottom",oc(c.marginBottom,b)),Jc(a)||z(a,"keeptogether"))c.n%b&&K(a,"paddingBottom",c.paddingBottom+b-c.n%b);else{c.lineHeight?c.lineHeight%b&&K(a,"lineHeight",oc(c.lineHeight,
b)):(c.lineHeight=b,K(a,"lineHeight",b));c.G%b&&K(a,"paddingTop",oc(c.G,b)-c.borderTop);if(c.ga%b)c.paddingBottom=K(a,"paddingBottom",oc(c.ga,b)-c.borderBottom);c.n=J(a);c.n%b&&(c.paddingBottom+=b-c.n%b,K(a,"paddingBottom",c.paddingBottom))}}}};function Tc(a,b){this.lineHeight=Math.ceil(H(document.defaultView.getComputedStyle(a,j).lineHeight)||1);this.Y=lc(a);B("figure",a).forEach(function(a){a.style.display="none"});Ec(a,this.lineHeight);this.o=[];this.i=[];this.Wa=b;Lc(this,a,this.lineHeight,{index:0,f:0})};function Uc(a,b){var c=new L(a);this.z=!z(a,"fixed");(this.m=c.m)&&K(a,"minHeight",0);this.b=c.n;this.d=c.L;this.Ea=Math.max(0,b-this.b)}Uc.prototype.xa=function(a){if(!this.z)return this;this.b=Math.max(0,a-this.Ea);return this};function Vc(a,b){var c=new L(a);this.z=!z(a,"fixed");(this.m=c.m)&&K(a,"minHeight",0);this.b=c.n;this.Ea=Math.max(0,b-this.b);this.q=(c=a.getAttribute("data-sizes"))?c.split(" "):[]}Vc.prototype.xa=function(a){if(!this.z)return this;this.b=Math.max(0,a-this.Ea);return this};function Wc(a){document.body.appendChild(a);this.r=a.hasAttribute("data-requires")?a.getAttribute("data-requires").split(" "):j;this.Bb=pb(a).map(function(a){return a.toLowerCase()});this.z=!z(a,"fixed");Xc(this);this.ya=this.size=new L(a);this.z?this.size.K=Math.max(this.size.K||0,this.size.d):(this.size.m=this.size.b,this.size.K=this.size.d);this.lineHeight=Math.ceil(this.size.lineHeight||1);this.Y=this.aa=this.W=0;this.cols=[];B(".column",a).forEach(function(a){a=new Uc(a,this.size.b);this.cols.push(a);
this.W+=a.b;this.aa=Math.max(this.aa,a.b);if(this.Y){if(this.Y!==a.d)this.error=h}else this.Y=a.d},this);this.I=[];B(".container",a).forEach(function(a){this.I.push(new Vc(a,this.size.b))},this);this.l=tb(a);this.yb=a.hasAttribute("data-ts-bonus")?parseInt(a.getAttribute("data-ts-bonus"),10):0;document.body.removeChild(a)}var Yc={onlypage:h,odd:h,even:h,sizetocontainer:h},Zc=/^(no-)?page-(\d+)$/;
function Xc(a){var b=k,c,d;a.M={};a.Ja={};a.Pb={};a.Bb.forEach(function(a){if(a in Yc)this.M[a]=h;else if(c=Zc.exec(a))d=parseInt(c[2],10),isNaN(d)||(a.substr(0,3)==="no-"?this.Pb[d]=h:(b=h,this.Ja[d]=h))},a);if(!b)a.Ja=j}
Wc.prototype.xa=function(a){if(!this.z)return this;var b=Math.min(this.size.V,Math.max(a-(this.size.marginHeight+this.size.P),this.size.m));b-=(b-this.size.m||0)%this.lineHeight;this.W=this.aa=0;this.cols.forEach(function(a){this.W+=a.xa(b).b;this.aa=Math.max(this.aa,a.b)},this);this.I.forEach(function(a){a.xa(b)},this);this.ya=this.size.F();this.ya.b=b;this.ya.n=b+this.size.P;this.ya.V=this.M.sizetocontainer?this.size.V:Math.min(this.size.V,b+this.lineHeight*3);return this};
function $c(a,b){return b.size.d+20*b.I.length-(a.size.d+20*a.I.length)}Wc.prototype.ia=function(){return!this.r?h:ab(this.r,h)};
function ad(a,b,c){var d=j,e=-Infinity,g,i,s=a.i.length,q,E,X,Q,n,l,N,A,F,C,I,aa,m;X=0;Q=b.length;for(;X<Q;X+=1){n=b[X];aa=0;m=k;g=c.F();N=g.g;A=n.W-N;N&&n.W&&(m=h);l=0;i=g.wa+1;l+=n.cols.length*50;n.lineHeight!==a.lineHeight&&(l-=2E3);n.Y&&n.Y!==a.Y&&(l-=Infinity);n.M.onlypage&&(l+=g.wa?-Infinity:4E3);n.Ja&&(n.Ja[i]?l+=3E3:l-=Infinity);n.Pb[i]&&(l-=Infinity);l+=i%2?n.M.odd?2E3:n.M.even?-Infinity:0:n.M.even?2E3:n.M.odd?-Infinity:0;n.yb&&l>=0&&(l+=n.yb);i=n;q=a;E=g;var U=I=C=F=f,V=f,fa=f,p=f,la=f,
T=f,rb=f,pd=f,ic=[];F=0;C=i.I.length;for(;F<C;F+=1){I=i.I[F];ic[F]=j;fa=E.f;rb=E.u.slice(0);c:for(;rb.length||fa<q.o.length;){p=(pd=!!rb.length)?rb.shift():fa;la=q.o[p];U=I.q.length-1;d:for(;U>=0;U-=1){V=I.q[U];e:{var T=la,sb=V,Wa=f,qd=f;if(T.q[sb])for(Wa=0,qd=T.q[sb].length;Wa<qd;Wa+=1)if(T.q[sb][Wa].ba()){T=T.q[sb][Wa];break e}T=j}if(T){if(I.z&&T.m&&T.m>I.b)continue d;ic[F]={f:p,qa:T,size:V,z:I.z};wc(E,p);break c}}if(!la.ca)break;pd||(fa+=1)}}i=ic;E=0;F=i.length;for(;E<F;E+=1)C=n.I[E],(I=i[E])?
(q=a.o[I.f],l+=2E3+I.qa.m*5,q.ca||(l+=4E3),C.z||(l+=5E3),aa+=1):C.z||(l-=5E3);b:for(;n.W&&g.index<s&&N<=n.W;){q=a.i[g.index];E=q.e.n+q.e.marginTop;if(q.na&&(E>n.aa||E>A))break b;if(E>A){if(q.na)break b;if(q.children){g.index+=1;continue b}N+=E}N+=E;l+=E;A-=E;m=h;g.index=q.nextSibling?q.nextSibling.index:g.index+1}if(m)A>0&&(g=A/n.W,g-=aa*0.2,g>0.5&&(l-=A,l-=g*g*2E3));else if(aa){if((q=a.i[g.index])&&q.s&&!q.s.ca&&(g.g||q.Dc))l=-Infinity}else l=-Infinity;l>e&&(e=l,d={Q:n,I:i})}return d};function bd(a,b,c){a.innerHTML=Mustache.to_html(b,c,f,f);B("img[data-src], iframe[data-src], video[data-src]",a).forEach(function(a){a.setAttribute("src",a.getAttribute("data-src"))});B("a[data-href]",a).forEach(function(a){a.setAttribute("href",a.getAttribute("data-href"))})};function cd(a){ya&&a.setAttribute("onclick","void(0)")}function Bc(a){var b=B(".scroll",a);z(a,"scroll")&&b.unshift(a);b.forEach(cd)};function dd(a,b,c,d){var e=ad(a,b,c),b=document.createElement("div"),g=c.F(),i=k;!e||!e.Q?(c.J=tc(c,a)||c.f===a.o.length,c.J?this.sa=h:this.error=h):(this.size=e.Q.ya.F(),this.xb=new pc(c.index,c.f,c.g),y(b,"offscreen"),document.body.appendChild(b),b.innerHTML=e.Q.l,b.firstChild.className+=" "+d.join(" "),this.a=b.firstChild,K(this.a,"width",this.size.d),K(this.a,"height",this.size.b),B("[data-ts-template=document]",this.a).forEach(function(b){bd(b,b.innerHTML,a.Wa.j)}),B(".container",this.a).forEach(function(b,
d){var g=e.I[d],X,Q,n;if(g){Q=g.f;X=a.o[Q];a:{var l=a.lineHeight,N,A,F;n=h;N=g.size;A=g.qa;F=J(b);zc(A,b,N);if(g.z){z(b,"bottom")?(n=k,b.style.top="auto"):b.style.bottom="auto";A=new L(b);g=A.n;if(g>F)if(X.La)g=F,K(b,"height",g-A.P);else{ob(b,N);qb(b);n=k;break a}else l&&g%l&&(g=oc(g,l));X.La&&(y(b,"scroll"),cd(b));for(l=b;l=l.nextSibling;)if(l.nodeType===1&&!z(l,"fixed")&&(z(l,"column")||z(l,"container")||z(l,"group")))y(l,"flexed"),J(l)<=g?K(l,"height",0):n?K(l,"top",(l&&l.offsetTop||0)+g):K(l,
"bottom",J(l.offsetParent)-((l&&l.offsetTop||0)+J(l))+g)}n=h}if(n){if(wc(c,Q),i=h,X.$b&&(y(b,"zoomable"),b.setAttribute("data-figureindex",Q),(u||ya)&&b.setAttribute("onclick","void(0)")),d===0&&e.Q.M.sizetocontainer)this.size.b=J(b)+e.Q.I[0].Ea,this.size.n=this.size.b+this.size.P,K(this.a,"height",this.size.b)}else!X.ca&&X.ma?xc(c,X.f):z(b,"flexed")||(wc(c,Q),c.la.push(Q)),b.parentNode.removeChild(b)}else b.parentNode.removeChild(b)},this),B(".column",this.a).forEach(function(b,d){var g=J(b),i=0,
Q,n,l=h,N=0,A=0,F=0,C=0,I=[],aa=a.i.length,m=a.i[c.index],U,V,fa,p;U=[];var la,A=k,T=e.Q.aa/g>1.5;if(m&&(g%a.lineHeight&&(g-=g%a.lineHeight),g&&!(g<e.Q.cols[d].m))){m.parent&&I.push(Mc(m));N=c.g?m.e.n-c.g:0;a:for(;c.index<aa&&i<g;){m=a.i[c.index];V=(U=m.nextSibling)||uc(m);if(C=U)b:{p=C=f;for(C=U.index;C<aa;C++)if(p=a.i[C],!p.ta||!vc(c,p.s.f)){C=p;break b}C=j}fa=C;if(m.ta&&vc(c,m.s.f)&&(!l||!c.g)){c.index=V?V.index:aa;continue a}p=m.parent;Q=g-i;l&&!F?(F=-N,A=c.overflow?m.e.lineHeight:m.ra):(F=Math.max(F,
m.e.marginTop),A=F+m.ra);C=Math.max(m.e.marginBottom,fa?fa.e.marginTop:0);la=m.e.n+F;A=Q<A;if(!A&&m.oc&&fa&&!(c.g||l&&!T))A=Q>=la&&Q<la+C+fa.ra;A&&(A=!l||T);A&&(A=!m.ka);m.gc&&!l&&(A=h);if(A){if(p){for(;p&&p.index===m.index-1;)I.pop(),c.index=p.index,p.ta&&xc(c,p.s.f),m=p,p=m.parent;p&&I.push(Nc(m))}break a}m.ta&&wc(c,m.s.f);if(m.ka||m.i.length&&Q<la){m.e.G&&(i+=l?0:F,F=0,i+=m.e.G);I.push(m.Ob);c.index+=1;continue a}i+=la;I.push(m.l);l=k;n=n||m;c.g=0;if(g>i+C){c.index=V?V.index:aa;if(!U&&p){U=[];
do U.push(p.Qa),p.e.ga?(i+=C+p.e.ga,C=p.e.marginBottom):C=Math.max(C,p.e.marginBottom);while(!p.nextSibling&&(p=p.parent));if(g>i+C)I.push(U.join(""));else{p&&I.push(Nc(m));i=g;break a}}F=C;continue a}p&&I.push(Nc(m));if(m.Pa){if(i<=g)c.index=V?V.index:aa,i=g}else i=g,c.index=V?V.index:aa;break a}l=m;if(g>=i||!l)c.g=0;else if(c.g=i-g,i=c.g-l.e.ga,i<=0)c.g=0,c.index=l.index+1;else if(i=(l.e.b-i)%l.e.lineHeight)g-=i,c.g+=i;K(b,"height",g);b.innerHTML=I.join("");if(n&&b.firstChild)if(b.firstChild.style.marginTop=
-N+"px",n.parent&&!N){for(p=n.parent;p;)p.e.G&&(n=p),p=p.parent;if(p!==n){p=n.parent;for(m=b.firstChild;p;)m=m.firstChild,p=p.parent,m&&(m.style.marginTop=0)}}else{if(n.i.length&&!N)for(m=b.firstChild;n;)n.i.length&&m.firstChild?(n=n.i[0],m=m.firstChild,m.style.marginTop=0):n=j}else qb(b)}}),g.Z(c)?this.error=h:!i&&e.Q.M.sizetocontainer?this.sa=h:(K(this.a,"marginTop",-this.size.n/2),K(this.a,"marginLeft",-this.size.L/2),c.J=e.Q.M.onlypage||tc(c,a),c.J&&y(this.a,"last-page"),this.l=b.innerHTML,this.end=
new pc(c.index,c.f,c.g),c.wa+=1),this.v(),document.body.removeChild(b))}dd.prototype.O=function(){if(this.t)return this.a;this.a=vb(this.l);this.t=h;return this.a};dd.prototype.v=function(){this.t=k;mc(this.a,"none");B("img",this.a).forEach(yb);this.a=j};dd.prototype.F=function(){var a=Object.F(this);a.a=this.a&&this.a.cloneNode(h)||j;a.t=this.t;return a};function ed(a,b,c){this.k=[];this.Za=[];this.cb=a;this.Wa=c;if(b)if(b.nodeName!=="ARTICLE")this.error=h;else{this.loaded=h;a=document.createElement("div");c=document.createElement("div");a.style.display="none";y(a,"offscreen grid");y(c,"column");b.removeAttribute("id");qb(a);if(this.za=b.getAttribute("data-theme")||b.getAttribute("data-grids")||j)y(a,this.za),y(c,this.za),fd(this,this.cb);for(this.ic=pb(b);b.firstChild;)c.appendChild(b.firstChild);a.appendChild(c);c.style.display="block";a.style.display=
"block";document.body.appendChild(a);this.content=new Tc(c,this.Wa);document.body.removeChild(a);a.removeChild(c);qb(c);gd(this)}}function fd(a,b){a.cb=a.za?b.filter(function(a){return a.Bb.indexOf(this.za)!==-1},a):b.slice(0)}function hd(a,b){a.Za=a.cb.filter(function(a){return a.ia()&&kc(a.size,{d:b.d-a.size.Da,b:b.b-a.size.P-a.size.marginHeight})}).map(function(a){return a.xa(b.b)});a.Za.sort($c)}function id(a,b){if(!a.va||a.va.d!==b.d||a.va.b!==b.b)a.va=b,a.Ka=kc(a.pa,b);return!a.Ka}
function gd(a){x("paginate");a.k=[];a.B=0;a.va&&hd(a,a.va);a.ha=new sc;a.pa=j;a.Ka=h;a.R=k}
ed.prototype.uc=function(a,b,c){x("paginate");for(var d,b=b||0;!this.ha.J;)if(d=new dd(this.content,this.Za,this.ha,this.ic),d.sa){if(this.ha.J)break}else{if(d.error){if(this.ha.J)break;this.error=h;D(document,"treesaver.paginationerror",{vb:this});this.ha.J=h;break}this.k.push(d);this.B+=1;this.error=k;var e=this.pa||{},g=d.size||{},i=g.P||(g.n?g.n-g.b:0),s=g.Da||(g.L?g.L-g.d:0);this.pa={d:Math.max(e.d||0,g.d+s||0),b:Math.max(e.b||0,g.b+i||0),Ia:Math.min(e.Ia||Infinity,g.Ia+s||Infinity),V:Math.min(e.V||
Infinity,g.V+i||Infinity)};if(!(b&&this.B<=b||c&&(c===qc||!(rc(c,d.end)>=0)))&&!this.ha.J){a&&(D(document,"treesaver.paginationprogress",{vb:this}),jd(this,ja(arguments)));return}}this.R=h;D(document,"treesaver.paginationprogress",{vb:this,Hc:h})};function jd(a,b){kb(ed.prototype.uc,200,b,"paginate",a)}
function kd(a,b,c){a.Ka||gd(a);var d=[],e=b>=0?b+c-1:Infinity;!a.R&&e>a.k.length-1&&jd(a,[h,e]);if(a.R)c=Math.min(c,a.B-(b>=0?b:b-1));else if(d.length=c,b<0)return d;if(b<0)for(e=-b;e<=c;e+=1)d[e+b]=a.k[a.B-e];else for(e=b;e<b+c;e+=1)d[e-b]=a.k[e];return d}
function ld(){var a=M.c[O.index],b=P;if(!a.content)return-1;var c,d;if(!b||b.wb())return 0;a.Ka||gd(a);if(!a.R&&(b===qc||!a.B||!(rc(b,a.k[a.B-1].end)>=0)))return jd(a,[h,j,b]),-1;if(b===qc)return a.R?a.B-1:-1;for(c=0,d=a.B;c<d;c+=1)if(rc(a.k[c].end,b)<0)return c;return a.R?a.B-1:-1};function md(a,b){this.index=a;this.anchor=b}var nd=new md(Infinity),od=new md(0);md.prototype.wb=function(){return this.index===0};md.prototype.Z=function(a){return this.index===a.index};function rd(){this.h=[];this.parent=j}rd.prototype.appendChild=function(a){a.parent=this;this.h.push(a);return a};rd.prototype.replaceChild=function(a,b){var c=this.h.indexOf(b);return c!==-1?(a.parent=b.parent,b.parent=j,this.h.splice(c,1,a)[0]):j};rd.prototype.insertBefore=function(a,b){var c=this.h.indexOf(b);a.parent=this;c===0?this.h.unshift(a):c>1&&this.h.splice(c,0,a);return a};rd.prototype.removeChild=function(a){var a=this.h.indexOf(a),b=j;if(a!==-1)b=this.h.splice(a,1)[0],b.parent=j;return b};if(!Object.keys)Object.keys=function(a){var b=[],c;for(c in a)a.hasOwnProperty(c)&&b.push(c);return b};Object.F=function(a){function b(){}b.prototype=a;return new b};var sd=/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,td="source,scheme,authority,userInfo,user,password,host,port,relative,path,directory,file,query,anchor".split(",");function ud(a){for(var b=td.length,a=sd.exec(a),c={};b--;)c[td[b]]=a[b]||j;return c}
function vd(a){var b="";a.scheme&&(b+=a.scheme+":");a.source&&/^(?:[^:\/?#]+:)?\/\//.test(a.source)&&(b+="//");a.authority&&(a.userInfo&&(b+=a.user||"",a.userInfo.indexOf(":")!==-1&&(b+=":"),b+=a.password||"",b+="@"),b+=a.host||"",a.port!==j&&(b+=":"+a.port));a.relative&&(a.path&&(b+=a.directory||"",b+=a.file||""),a.query&&(b+="?"+a.query),a.anchor&&(b+="#"+a.anchor));return b}
function wd(a){a=ud(a);return a.file?/^(index|default)\.(html?|php|asp|aspx)$/i.test(a.file)||R&&R.get("DirectoryIndex","index.html")===a.file:k}function xd(a){a=ud(a);a.anchor=j;return vd(a)}function yd(a){a=ud(a);a.file=j;return vd(a)};function S(a,b){if(a)this.url=a,this.path=ud(a).relative,this.j=b||{},this.c=[],this.Oa={},this.ub=[],this.h=[]}var zd=/<title>\s*(.+?)\s*<\/title>/i;S.prototype=new rd;o=S.prototype;
o.parse=function(a){var b=document.createElement("div"),c=[];if(!a||typeof a!=="string"||a.trim()==="")return[];b.innerHTML=a;B("meta[name]",b).forEach(function(a){var b=a.getAttribute("name"),a=a.getAttribute("content");b&&a&&(this.j[b]=a)},this);c=B("article",b).filter(function(a){return wb(a,"article")===j});if(c.length===0)c.push(document.createElement("article")),c[0].innerHTML=b.innerHTML;return c.map(function(a,b){var c=a.getAttribute("id")||(b===0?j:"_"+b),i=new ed(Ad,a,this);c&&(this.Oa[c]=
b,this.ub[b]=c);return i},this)};o.Z=function(a){var b=a;if(!b)return k;if(typeof a!=="string"&&a.url)b=a.url;return wd(b)&&wd(this.url)?b===this.url:wd(b)?yd(b)===this.url:wd(this.url)?b===yd(this.url):b===this.url};o.ia=function(){return this.r?ab(this.r,h):h};o.$a=function(a){return this.c[a]||j};o.yc=function(a){this.c=a};o.bb=function(){return this.j};o.mc=function(){return this.url};o.zc=function(a){this.url=a};o.kc=function(){return this.c.length};
function Bd(a){return(a=zd.exec(a))&&a[1]?a[1]:j}o.load=function(){var a=this,b=j;if(!this.ua){this.ua=h;if(!u&&(b=Rb("cache:"+this.url)))this.c=this.parse(b),this.title=Bd(b),this.loaded=h,D(document,"treesaver.loaded",{document:this});w.get(this.url,function(c){a.ua=k;if(c){if(u||b!==c)u||Qb("cache:"+a.url,c,h),a.c=a.parse(c),a.title=Bd(c),a.loaded=h,D(document,"treesaver.loaded",{document:a})}else if(u||!b)a.pc=h,a.loaded=k,D(document,"treesaver.loadfailed",{document:a})})}};
r("treesaver.Document",S);r("treesaver.Document.prototype.setArticles",S.prototype.yc);r("treesaver.Document.prototype.getNumberOfArticles",S.prototype.kc);r("treesaver.Document.prototype.getArticle",S.prototype.$a);r("treesaver.Document.prototype.parse",S.prototype.parse);r("treesaver.Document.prototype.getUrl",S.prototype.mc);r("treesaver.Document.prototype.setUrl",S.prototype.zc);r("treesaver.Document.prototype.getMeta",S.prototype.bb);function Cd(a){this.url=a;this.D={};this.j={}}Cd.prototype=new rd;o=Cd.prototype;o.w=[];
function Dd(a,b){var c=j,d=j,e={},g=j,i=j;typeof b==="string"?c=b:(c=b.url,d=b.contents,Object.keys(b).forEach(function(a){e[a]=b[a]}),b.requires&&(typeof b.requires==="string"?g=b.requires.split(/\s|,\s/g):Array.isArray(b.requires)&&(g=b.requires.map(function(a){return a.toString()})),g=g.filter(function(a){return a.trim()!==""})));if(!c)return j;c=xd(w.oa(c));i=new S(c,e);d&&Array.isArray(d)&&d.forEach(function(a){i.appendChild(Dd(this,a))},a);if(g)i.r=g;return i}
o.update=function(){var a=0;this.w=[];this.Xa={};this.Ya={};Ed(this,this.h,function(b){this.Xa[b.url]?this.Xa[b.url].push(b):this.Xa[b.url]=[b];this.w.push(b);this.Ya[b.url]?this.Ya[b.url].push(a):this.Ya[b.url]=[a];a+=1},this);D(document,"treesaver.index.updated",{index:this})};function Ed(a,b,c,d){return b.every(function(a){return c.call(d,a)!==k&&Ed(this,a.h,c,d)},a)}o.lc=function(){return this.w.length};function Fd(a,b){var c=-1,d=0;Ed(a,a.h,function(a){a.Z(b)&&(c=d);d+=1},a);return c}
o.ab=function(a){var b=[];return a?(Ed(this,this.h,function(c){c.Z(a)&&b.push(c)},this),b):this.w};
o.parse=function(a){var b={h:[],D:{},j:{}};if(!a)return b;if(typeof a==="string")try{a=window.JSON.parse(a)}catch(c){return b}if(Object.prototype.toString.apply(a)!=="[object Object]")return b;if(!a.contents||!Array.isArray(a.contents))return b;b.h=a.contents.map(function(a){return Dd(this,a)},this);b.h=b.h.filter(function(a){return a!==j});b.h=b.h.map(function(a){return this.appendChild(a)},this);if(a.settings)b.D={},Object.keys(a.D).forEach(function(c){b.D[c]=a.D[c]});Object.keys(a).forEach(function(c){c!==
"settings"&&(b.j[c]=a[c])});return b};o.set=function(a,b){return this.D[a]=b};o.get=function(a,b){return this.D.hasOwnProperty(a)?this.D[a]:b};o.bb=function(){return this.j};
o.load=function(){var a=this,b=j,c=j;if(!this.ua)if(this.url){this.ua=h;if(!u&&(b=Rb("cache:"+this.url)))c=this.parse(b),this.h=c.h,this.j=c.j,this.D=c.D,this.loaded=h,D(document,"treesaver.index.loaded",{index:this}),this.update();w.get(this.url,function(d){a.ua=k;if(d){if(u||b!==d)u||Qb("cache:"+a.url,d,h),c=a.parse(d),a.h=c.h,a.j=c.j,a.D=c.D,a.loaded=h,D(document,"treesaver.index.loaded",{index:a}),a.update()}else if(u||!b)a.pc=h,a.loaded=k,D(document,"treesaver.index.loadfailed",{index:a})})}else D(document,
"treesaver.index.loadfailed",{index:this})};r("treesaver.Index",Cd);r("treesaver.Index.prototype.get",Cd.prototype.get);r("treesaver.Index.prototype.set",Cd.prototype.set);r("treesaver.Index.prototype.update",Cd.prototype.update);r("treesaver.Index.prototype.getDocuments",Cd.prototype.ab);r("treesaver.Index.prototype.getNumberOfDocuments",Cd.prototype.lc);r("treesaver.Index.prototype.getMeta",Cd.prototype.bb);var R,Ad,W,Y,O,M,Gd,P,Hd,Z,Id,Jd,Kd,Ld;function Md(){var a=ia;Y=W=-1;O=od;Ad=Nd();if(!Ad)return k;Z=new S(xd(document.location.href),{});if(a)Z.c=Z.parse(a),Z.title=document.title,Z.loaded=h;G(document,"treesaver.index.loaded",Od);R=new Cd(Pd());R.appendChild(Z);R.update();R.load();Qd(Z,od,j,j,h);Rd();Sd();Td.forEach(function(a){G(document,a,Ud)});G(window,"popstate",Ud);return h}
function Vd(){P=Gd=M=j;Y=W=-1;Jd=Id=O=j;Ab(document,"treesaver.index.loaded",Od);Td.forEach(function(a){Ab(document,a,Ud)});Ab(window,"popstate",Ud)}function Od(a){var a=a.index,b=a.ab(Z.url),c=B("meta[name]");if(b.length)b.forEach(function(a){Z.j=a.j;Z.h=a.h;Z.r=a.r;c.forEach(function(b){var c=b.getAttribute("name"),b=b.getAttribute("content");c&&b&&(a.j[c]=b)});a.parent.replaceChild(Z,a)}),Y=Fd(a,Z),document.title=Z.j.title||Z.title}
function Nd(){var a=[];gc("grid").forEach(function(b){var c=b.getAttribute("data-requires");if(!c||ab(c.split(" ")))b=new Wc(b),b.error||a.push(b)});return a}function Rd(){var a=gc("loading")[0];a||(a=document.createElement("div"));document.body.appendChild(a);a.style.top="50%";a.style.left="50%";K(a,"margin-top",-J(a)/2);K(a,"margin-left",-lc(a)/2);document.body.removeChild(a);Id=tb(a);a=a.cloneNode(h);document.body.appendChild(a);Jd=new L(a);document.body.removeChild(a)}
function Sd(){var a=gc("error")[0];a||(a=document.createElement("div"));document.body.appendChild(a);a.style.top="50%";a.style.left="50%";K(a,"margin-top",-J(a)/2);K(a,"margin-left",-lc(a)/2);document.body.removeChild(a);Kd=tb(a);a=a.cloneNode(h);document.body.appendChild(a);Ld=new L(a);document.body.removeChild(a)}var Td=["treesaver.loaded","treesaver.loadfailed","treesaver.paginationprogress"];
function Ud(a){if(a.type==="treesaver.paginationprogress")D(document,"treesaver.pageschanged");else if(a.type==="treesaver.loaded")document.title=M.j.title||M.title,D(document,"treesaver.pageschanged");else if(a.type==="treesaver.loadfailed"&&a.document===M&&!u)w.fb()&&(document.location=M.url);else if(a.type==="popstate"){var b=-1,c=j,d;a.state?(d=(b=a.state.index)||b===0?R.w[b]:j)?(c=a.state.position,Qd(d,od,c?new pc(c.X,c.s,c.g):j,b,h)):Wd(a.state.url):(b=Fd(R,Z),Qd(Z,od,j,b))}}
function Pd(){var a=B("link[rel~=index]")[0];return!a?j:w.oa(a.href)}function Xd(){return W!==-1?W>=1?h:Yd():!P&&Yd()}function Yd(){return O.index>0||Zd()}function Zd(){for(var a=Y-1;a>=0;a-=1)if(R.w[a].ia())return h;return k}function $d(a,b){if(!Yd())return j;if(O.index>0){var c=new md(O.index-1),d=Y,e=M;return b?e:Qd(e,c,a?qc:j,d)}else{if(Zd()){c=Y-1;for(e=d=j;c>=0;c-=1)if(d=R.w[c],d.ia())break;d?(e=d.loaded?new md(d.c.length-1):nd,c=b?d:Qd(d,e,a?qc:j,c)):c=j}else c=j;return c}}
function ae(){if(W===-1)return!P&&$d(h)?h:k;var a=W-1;if(a<0)return $d(h)?h:k;W=a;P=j;D(document,"treesaver.pageschanged");return h}function be(){return W!==-1?W<M.c[O.index].B-1?h:M.c[O.index].R&&ce():P===qc?ce():k}function ce(){return O.index<M.c.length-1||de()}function de(){for(var a=Y+1,b=R.w.length;a<b;a+=1)if(R.w[a].ia())return h;return k}
function ee(a){if(!ce())return j;if(O.index<M.c.length-1){var b=new md(O.index+1),c=Y,d=M;return a?d:Qd(d,b,j,c)}else{if(de()){b=Y+1;c=j;for(d=R.w.length;b<d;b+=1)if(c=R.w[b],c.ia())break;a=c?a?c:Qd(c,od,j,b):j}else a=j;return a}}function fe(){if(W===-1)return P===qc?ee():k;var a=W+1;if(a>=M.c[O.index].B)return M.c[O.index].R?ee():k;W=a;P=j;D(document,"treesaver.pageschanged");return h}
function Wd(a){var b=ud(a).anchor,c=R.ab(xd(a)),a=-1,d=j;return c.length!==0&&(c=c[0],a=Fd(R,c),d=c.loaded&&b?new md(c.Oa[b]||0):new md(0,b),a!==-1)?Qd(c,d,j,a):k}
function ge(a){O.index===Infinity&&M.loaded?O=new md(M.c.length-1):O.anchor&&M.loaded&&(O=new md(M.Oa[O.anchor]||0));M.c[O.index]&&id(M.c[O.index],a)&&(W=-1,Hd=0);var b=[],c,d,e;if(M.c[O.index]&&W===-1&&(W=ld(),W===-1))return b.length=3,b[1]=he(),b;c=W-1;if(c<0){if((d=$d(k,h))&&d.loaded&&d===M)id(d.c[O.index-1],a),b=kd(d.c[O.index-1],c,-c);else if(d&&d.loaded&&d.c[d.c.length-1].R)b=kd(d.c[d.c.length-1],c,-c);else for(d=0,e=-c;d<e;d+=1)b[d]=j;d=3+c;c=0}else d=3;M.c[O.index]&&(b=b.concat(kd(M.c[O.index],
c,d)));if(d=3-b.length)if((c=ee(h))&&c===M)id(c.c[O.index+1],a),b=b.concat(kd(c.c[O.index+1],0,d));else if(c)c.loaded?(id(c.c[0],a),b=b.concat(kd(c.c[0],0,d))):(c.load(),b.length=3);for(d=1,e=b.length;d<e;d+=1)b[d]||(b[d]=M.error?{O:dd.prototype.O,v:dd.prototype.v,l:Kd,size:Ld}:he());if((!P||P===qc)&&b[1]&&b[1].xb)P=b[1].xb;M.c[O.index]&&!Hd&&(a=M.c[O.index],Hd=a.pa?a.pa.d:0);for(d=0;d<b.length;d+=1)for(a=d+1;a<b.length;a+=1)b[d]&&b[d]===b[a]&&(b[a]=b[d].F());return b}function ie(){return M.url}
function je(){return W+1||1}function ke(){return!M.c[O.index]||O===nd?1:M.c[O.index].B||1}function le(){return Y+1||1}function me(){return R.w.length}
function Qd(a,b,c,d,e){var g=j,i=j,g=j,s;if(!a)return k;g=a.ub[b&&b.index||0]||j||!!b.anchor&&b.anchor;i=a.url+(g?"#"+g:"");g=a.path+(g?"#"+g:"");if(a.Z(M)&&d!==Y&&!O.Z(b))return Gd=s=M.$a(b.index),O=b,P!==c&&(P=c,W=-1),W=-1,e?Sb({index:d,url:i,position:c},a.j.title,g):Tb({index:d,url:i,position:c},a.j.title,g),D(document,"treesaver.pageschanged"),D(document,"treesaver.articlechanged",{article:s}),h;document.title=a.j.title||a.title;M=a;P!==c&&(P=c,W=-1);W=-1;O=b;Gd=M.$a(b&&b.index||0);if(a.loaded){if(a.error&&
!u)w.fb()&&(document.location=a.url)}else a.load();Y=d||d===0?d:Fd(R,a);e?Sb({index:d,url:i,position:c},a.j.title||"",g):Tb({index:d,url:i,position:c},a.j.title||"",g);D(document,"treesaver.pageschanged");D(document,"treesaver.documentchanged",{document:a,url:i,path:g});D(document,"treesaver.articlechanged",{article:Gd});return h}function he(){return{O:dd.prototype.O,v:dd.prototype.v,l:Id,size:Jd}}r("treesaver.canGoToNextPage",be);r("treesaver.canGoToPreviousPage",Xd);
r("treesaver.canGoToNextDocument",de);r("treesaver.canGoToPreviousDocument",Zd);r("treesaver.getCurrentUrl",ie);r("treesaver.getCurrentPageNumber",je);r("treesaver.getCurrentPageCount",ke);r("treesaver.getCurrentDocumentNumber",le);r("treesaver.getCurrentDocument",function(){return M});r("treesaver.getDocumentCount",me);r("treesaver.goToDocumentByURL",Wd);function ne(a){this.r=a.hasAttribute("data-requires")?a.getAttribute("data-requires").split(" "):j;Bc(a);this.l=a.parentNode.innerHTML;this.size=new L(a);delete this.size.d;delete this.size.b}
ne.prototype.O=function(){if(!this.t)this.t=h,this.a=vb(this.l),this.T=B(".viewer",this.a)[0],this.Rb=B(".pagewidth",this.a),this.nextPage=B(".next",this.a),this.ib=B(".nextArticle",this.a),this.nb=B(".prev",this.a),this.mb=B(".prevArticle",this.a),this.kb=[],this.lb=[],this.Ga=[],this.eb=[],this.Ra=[],this.Sa=[],this.ob=[],this.pb=[],B("[data-ts-template]",this.a).forEach(function(a){var b,c;switch(a.getAttribute("data-ts-template")){case "position":b=this.kb;c=this.lb;break;case "index":b=this.Ga;
c=this.eb;break;case "currentdocument":b=this.Ra;c=this.Sa;break;case "publication":b=this.ob;c=this.pb;break;default:return}c.push(a.innerHTML);a.nodeName.toLowerCase()==="script"&&(c=document.createElement("div"),a.parentNode.replaceChild(c,a),a=c);b.push(a)},this),this.Mb=B(".menu",this.a),this.Ma=B(".sidebar",this.a),this.k=[],oe.forEach(function(a){G(document,a,this)},this),this.Ba=k,pe(this);return this.a};
ne.prototype.v=function(){if(this.t)qe(),this.t=k,oe.forEach(function(a){Ab(document,a,this)},this),this.pb=this.ob=this.Sa=this.Ra=this.eb=this.Ga=this.lb=this.kb=this.mb=this.nb=this.ib=this.nextPage=this.Ma=this.Mb=this.Rb=this.T=this.a=j,this.k.forEach(function(a){a&&a.v()}),this.jb=this.k=j,x("idletimer"),x("updateTOC"),qe()};function qe(){x("selectPages");x("animatePages")}var oe="treesaver.index.updated,treesaver.pageschanged,treesaver.documentchanged,keydown,click,mousewheel,DOMMouseScroll".split(",");
ya?oe.push("touchstart","touchmove","touchend","touchcancel"):oe.push("mouseover");
ne.prototype.handleEvent=function(a){switch(a.type){case "treesaver.pageschanged":return re(this);case "treesaver.index.updated":return lb(this.Xb,"updateTOC",this),re(this);case "treesaver.documentchanged":se(this);te(this);break;case "mouseover":a.touches||pe(this);break;case "touchstart":var b=ue(a.target),c=ve(b),d,e,g;if(t.contains(ue(a.target)))if(a.stopPropagation(),a.preventDefault(),this.U&&!c)we(this);else{if(c)for(d=c;d;){e=d.id;if(e==="prevPage"||e==="nextPage"){c=j;break}d=d.parentNode}b=
this.T.contains(b);d=a.touches[0].pageX;e=a.touches[0].pageY;g=ca();this.Aa={Jc:d,Kc:e,startTime:g,Jb:d,Kb:e,Ic:g,Ta:0,Ua:0,Db:0,ea:0,tb:0,Bc:0,fa:a.touches.length,Ec:b,tc:this.C,Ub:c,Ab:c&&c.scrollWidth!==c.clientWidth};if(this.Aa.fa===2)this.Aa.Ac=a.touches[1].pageX;mb(["resumeTasks"])}break;case "touchmove":if(c=this.Aa)a.stopPropagation(),a.preventDefault(),b=ca(),d=a.touches[0].pageX,e=a.touches[0].pageY,c.Db=c.Ib-b,c.Ta=d-c.Jb,c.Ua=e-c.Kb,c.Ib=b,c.Jb=a.touches[0].pageX,c.Kb=a.touches[0].pageY,
c.Bc+=c.Db,c.ea+=c.Ta,c.tb+=c.Ua,c.fa=Math.min(a.touches.length,c.fa),c.Wb=c.fa===1&&Math.abs(c.ea)>=30&&Math.abs(c.ea)*2>Math.abs(c.tb),c.Ub&&(c.Va||c.Ab||!c.Wb)?(c.Va=c.Va||c.Ab||Math.abs(c.tb)>=30,a=c.Ub,b=-c.Ua,a.scrollLeft+=-c.Ta,a.scrollTop+=b,c.Ec||pe(this)):c.fa===2?c.sb=a.touches[1].pageX-c.Ac:(this.C=c.tc+c.ea,this.Ca(h));break;case "touchend":d=this.Aa;e=k;c=ue(a.target);b=this.U||this.T.contains(c);xe(this);if(d&&(a.stopPropagation(),a.preventDefault(),d.Va?b?this.S():pe(this):d.fa===
1?d.Ib?d.Wb&&((e=d.ea>0?ye(this):ze(this))?this.S():pe(this)):(d=document.createEvent("MouseEvents"),d.initMouseEvent("click",h,h,a.view,1,a.changedTouches[0].screenX,a.changedTouches[0].screenY,a.changedTouches[0].clientX,a.changedTouches[0].clientY,a.ctrlKey,a.altKey,a.shiftKey,a.metaKey,0,j),c.dispatchEvent(d)&&b?this.Ba?this.S():pe(this):b?this.S():pe(this),e=h):d.fa===2&&Math.abs(d.sb)>=30&&(d.ea<0&&d.sb<0?e=ee():d.ea>0&&d.sb>0&&(e=$d()),e?this.S():pe(this)),!e))this.Na=ca(),this.C=0,this.Ca();
break;case "touchcancel":return xe(this);case "keydown":a:if(this.U)we(this),a.preventDefault();else if(!/input|select|textarea/i.test(a.target.tagName)&&!Ae(a)){switch(a.keyCode){case 34:case 39:case 40:case 74:case 32:ze(this);break;case 33:case 37:case 38:case 75:ye(this);break;case 72:$d();break;case 76:ee();break;default:b=f;break a}this.S();a.preventDefault()}return b;case "click":return this.click(a);case "mousewheel":case "DOMMouseScroll":if(Ae(a))c=h;else if(ve(ue(a.target)))c=h;else if(this.U)we(this),
a.preventDefault();else if(b=ca(),!(this.Hb&&b-this.Hb<400))this.Hb=b,b=a.wheelDelta?a.wheelDelta:a.detail?-a.detail:0,d=this.T.contains(ue(a.target)),b&&d&&(a.preventDefault(),a.stopPropagation(),b>0?ye(this):ze(this),this.S());return c}};function Ae(a){return a.ctrlKey||a.shiftKey||a.altKey||a.metaKey}o=ne.prototype;
o.click=function(a){if(Ae(a))return h;if(!("which"in a&&a.which!==1||a.button)){var b=ue(a.target),c,d,e=k,g=e=c=k,i=j;d=j;if(this.U){if(this.A.a.contains(b)&&(c=b.nodeName==="A"?b:wb(b,"A"))&&c.href)if(d=w.oa(c.href),!Wd(d))return;we(this);a.stopPropagation();a.preventDefault()}else{this.Mb.forEach(function(a){z(a,"menu-active")&&(g=a.contains(b),ob(a,"menu-active"))},this);(e=this.Ma.some(function(a){return a.contains(b)}))?(d=Be(b))&&z(d,"sidebar")&&z(d,"close-on-click")&&this.Ma.forEach(function(a){Ce(a)},
this):this.Ma.forEach(function(a){Ce(a)},this);if(this.k[0]&&this.k[0].a.contains(b))ye(this),c=h;else if(this.k[2]&&this.k[2].a.contains(b))ze(this),c=h;else for(e=this.k[1]&&this.k[1].a.contains(b);!c&&b&&b!==t;){if(e)z(b,"zoomable")&&(c=De(this,b));else if(z(b,"prev"))ye(this),c=h;else if(z(b,"next"))ze(this),c=h;else if(z(b,"prevArticle"))$d(),c=h;else if(z(b,"nextArticle"))ee(),c=h;else if(z(b,"menu"))g||y(b,"menu-active"),c=h;else if(z(b,"sidebar")||z(b,"open-sidebar")||z(b,"toggle-sidebar")||
z(b,"close-sidebar"))if(d=Be(b))z(b,"sidebar")||z(b,"open-sidebar")?Ee(d):z(b,"toggle-sidebar")?Fe(d):Ce(d),c=h;if(!c&&b.href)if(i=b.getAttribute("target"),d=w.oa(b.href),i==="_blank")return;else if(i==="ts-lightbox"){b=b.parentNode;continue}else Wd(d)?c=h:i==="ts-treesaver"&&(R.appendChild(new S(d)),R.update(),Wd(d)&&(c=h));b=b.parentNode}c&&(a.stopPropagation(),a.preventDefault())}}};function ue(a){a?a.nodeType!==1&&a.parentNode&&(a=a.parentNode||t):a=t;return a}
function xe(a){lb(nb,"resumeTasks");a.Aa=j}function ve(a){for(;a&&a!=document.documentElement;){if(z(a,"scroll"))return a;a=a.parentNode}return j}function ye(a){if(Xd())return Ge(a,-1),kb(ae,50,[],"prevPage"),h}function ze(a){if(be())return Ge(a,1),kb(fe,50,[],"nextPage"),h}function pe(a){if(!a.Ba)a.Ba=h,y(a.a,"active"),D(document,"treesaver.active");var b=a.S,c=cb.idletimer;c?c.gb=ca():jb(b,5E3,1,j,k,"idletimer",a)}
o.S=function(){if(this.Ba)this.Ba=k,ob(this.a,"active"),D(document,"treesaver.idle");x("idletimer")};function Ee(a){D(document,"treesaver.sidebaractive",{sidebar:a});y(a,"sidebar-active")}function Ce(a){z(a,"sidebar-active")&&D(document,"treesaver.sidebarinactive",{sidebar:a});ob(a,"sidebar-active")}function Fe(a){z(a,"sidebar-active")?Ce(a):Ee(a)}function Be(a){if(z(a,"sidebar"))return a;for(;(a=a.parentNode)!==j&&a.nodeType===1;)if(z(a,"sidebar"))return a;return j}
function De(a,b){var c;c=parseInt(b.getAttribute("data-figureindex"),10);c=isNaN(c)?j:M.c[O.index].content.o[c];if(!c)return k;a.S();if(!a.U){var d=He(),e=Ie,g,i,s,q=j;for(g=0,i=e.length;g<i;g+=1)if(s=e[g],s.ba()&&s.Fa(d)){q=s;break}a.A=q;if(!a.A)return k;a.U=h;a.A.O();a.a.parentNode.appendChild(a.A.a)}a.A.a=a.A.a;K(a.A.a,"width",lc(a.a));K(a.A.a,"height",J(a.a));d=a.A;d.p=d.p;e=new L(d.p);e={d:e.d,b:e.b};s=Hc(c,e);g=lc(d.p.offsetParent);i=J(d.p.offsetParent);var E;d.p=d.p;d.t&&s?(zc(s.qa,d.p,s.name),
d.p.style.bottom="auto",d.p.style.right="auto",E=new L(d.p),s=E.d,q=E.b,c.La&&(s=Math.min(e.d,s),q=Math.min(e.b,q),K(d.p,"width",s),K(d.p,"height",q),y(d.p,"scroll"),cd(d.p)),K(d.p,"left",(g-s-E.Da)/2),K(d.p,"top",(i-q-E.P)/2),c=h):c=k;return!c?(we(a),k):h}function we(a){if(a.U)a.U=k,a.a.parentNode.removeChild(a.A.a),a.A.v(),a.A=j}o.ba=function(){return!this.r?h:ab(this.r,h)};o.Fa=function(a){return kc(this.size,a)};
function se(a){var b=ie();a.Ga.forEach(function(a){var d=B("a[href]",a).filter(function(a){return w.oa(a.href)===b}),e=[];d.length&&(e=ja(a.children),e.forEach(function(a){d.some(function(b){return a.contains(b)})?y(a,"current"):ob(a,"current")}))})}function te(a){a.kb.forEach(function(a,c){bd(a,this.lb[c],{pagenumber:je(),pagecount:ke(),url:ie(),documentnumber:le(),documentcount:me()})},a)}function Je(a){a.ob.forEach(function(a,c){bd(a,this.pb[c],R.j)},a)}
function Ke(a){a.Ra.forEach(function(a,c){bd(a,this.Sa[c],M.j)},a)}function Le(a){var b=Hd;b&&a.Rb.forEach(function(a){K(a,"width",b)},a)}function Me(a,b){a.nodeName==="BUTTON"?a.disabled=!b:b?ob(a,"disabled"):y(a,"disabled")}function Ne(a){if(a.nextPage){var b=be();a.nextPage.forEach(function(a){Me(a,b)},a)}}function Oe(a){if(a.ib){var b=ce();a.ib.forEach(function(a){Me(a,b)},a)}}function Pe(a){if(a.nb){var b=Xd();a.nb.forEach(function(a){Me(a,b)},a)}}
function Qe(a){if(a.mb){var b=Yd();a.mb.forEach(function(a){Me(a,b)},a)}}function re(a){lb(a.xc,"selectPages",a)}o.xc=function(){qe();Re(this);Ge(this);te(this);Ke(this);Je(this);Le(this);Ne(this);Oe(this);Pe(this);Qe(this)};o.Xb=function(){x("updateTOC");var a={contents:R.h.map(function(a){return a.j})};this.Ga.forEach(function(b,c){bd(b,this.eb[c],a)},this);se(this)};
function Re(a){var b=a.k;a.k=ge(a.jb);b.forEach(function(a){if(a){var b=a.a;this.k.indexOf(a)===-1&&(a.v(),b&&b.parentNode===this.T&&this.T.removeChild(b))}},a);a.k.forEach(function(a,b){if(a){var e=a.a||a.O();e.parentNode||this.T.appendChild(e);e.setAttribute("id",b===0?"previousPage":b===1?"currentPage":"nextPage")}},a)}
function Ge(a,b){var c=a.k[0],d=a.k[1],e=a.k[2],g,i=d.size.L/2;if(!(a.Qb&&b===a.Qb))a.Qb=b,a.da=[0,0,0],c&&(g=Math.max(d.size.marginLeft,c.size.marginRight),a.da[0]=-(i+g+c.size.L/2)),e&&(g=Math.max(d.size.marginRight,e.size.marginLeft),a.da[2]=i+g+e.size.L/2),b?(b>0?(d.a.setAttribute("id","nextPage"),e?(b=-a.da[2],e.a.setAttribute("id","currentPage")):b=-(d.size.L+d.size.marginRight)):(d.a.setAttribute("id","previousPage"),c?(b=-a.da[0],c.a.setAttribute("id","currentPage")):b=d.size.L+d.size.marginLeft),
a.da=a.da.map(function(a){return a+b}),a.Na=ca(),a.C-=b):a.C=a.C||0,a.Ca()}o.Ca=function(a){!a&&this.C?this.Na?(mb(["animatePages","resumeTasks"]),a=1-(ca()-this.Na)/200,a=Math.max(0,Math.min(1,a)),(this.C=Math.round(this.C*a))?lb(this.Ca,"animatePages",this):(this.C=0,lb(nb,"resumeTasks"))):this.C=0:x("animatePages");this.k.forEach(function(a,c){a&&a.a&&nc(a.a,this.da[c]+this.C,0)},this)};function Se(a){B(".container",a);this.r=a.hasAttribute("data-requires")?a.getAttribute("data-requires").split(" "):j;this.l=a.parentNode.innerHTML;this.size=new L(a);delete this.size.d;delete this.size.b}Se.prototype.O=function(){if(!this.t)this.t=h,this.a=vb(this.l),this.p=B(".container",this.a)[0];return this.a};Se.prototype.v=function(){if(this.t)this.t=k,this.a=j};Se.prototype.Fa=function(a){return kc(this.size,a)};Se.prototype.ba=function(){return!this.r?h:ab(this.r,h)};var $,Te,Ie;function Ue(){var a=[];gc("chrome").forEach(function(b){var c;c=b.getAttribute("data-requires");if(!c||ab(c.split(" ")))$.ja.appendChild(b),c=new ne(b),a.push(c),$.ja.removeChild(b)});return a}function Ve(){var a=[];gc("lightbox").forEach(function(b){var c;c=b.getAttribute("data-requires");if(!c||ab(c.split(" ")))$.ja.appendChild(b),c=new Se(b),a.push(c),$.ja.removeChild(b)});return a}
function We(){if($.orientation!==window.orientation)Ya(),$.orientation=window.orientation,$.orientation%180?$.viewport.setAttribute("content","width=device-height, height=device-width"):$.viewport.setAttribute("content","width=device-width, height=device-height"),xa&&!ea&&!Ka&&window.scrollTo(0,0)}function He(){if(u||!ea)return(window.pageYOffset||window.pageXOffset)&&window.scrollTo(0,0),{d:window.innerWidth,b:window.innerHeight};else{var a=t;return{d:lc(a),b:J(a)}}}
function Xe(){var a=He(),b;if(a.b!==$.size.b||a.d!==$.size.d){$.size=a;if(!$.H||!$.H.ba()||!$.H.Fa(a)){b=Te;var c,d,e,g=j;for(c=0,d=b.length;c<d;c+=1)if(e=b[c],e.ba()&&e.Fa(a)){g=e;break}b=g;if(!b)return;qb($.ja);$.H&&$.H.v();$.ja.appendChild(b.O());$.H=b;D(document,"treesaver.chromechanged",{node:b.a})}b=$.H;K(b.a,"width",a.d);K(b.a,"height",a.b);b.jb=j;b.jb={d:lc(b.T),b:J(b.T)};M&&(re(b),lb(b.Xb,"updateTOC",b))}}
if(u){var Ye=function(a){return function(){$.H&&pe($.H);a()}};r("treesaver.nextPage",Ye(fe));r("treesaver.previousPage",Ye(ae));r("treesaver.nextArticle",Ye(ee));r("treesaver.previousArticle",Ye($d))};/*
Copyright 2011 Filipe Fortes ( www.fortes.com ).
Version: 0.1.
Licensed under MIT and GPLv2.
*/
function Ze(){if(ea)t.innerHTML=ha;else if(ia)t.innerHTML=ia;$e();eb&&hb.call(window,eb);nb();eb=-1;bb=[];cb={};ac=j;Zb=0;$b=[];w.Cc();Bb=0;Cb=[];document.documentElement.className="js no-treesaver";document.documentElement.style.display="block"}function $e(){x("unboot");Ab(document,"DOMContentLoaded",af);delete da.Tb;delete da.Eb}
function af(){da.Eb=h;(t=document.getElementById("ts_container"))?(ea=h,ha=t.innerHTML):(ea=k,t=document.body);ia=document.body.innerHTML;qb(t);t.innerHTML='<div id="loading">Loading '+document.title+"...</div>";document.documentElement.style.display="block";D(document,"treesaver.loader_shown");bf()}
function bf(){if(da.Tb&&ga&&da.Eb&&document.body){$e();G(window,"unload",cf);var a;$={orientation:0,size:{d:0,b:0}};qb(t);a=$;var b;ea?b=t:(b=document.createElement("div"),b.setAttribute("id","chromeContainer"),t.appendChild(b));a.ja=b;a=$;b=B("meta[name=viewport]")[0];b||(b=document.createElement("meta"),b.setAttribute("name","viewport"),B("head")[0].appendChild(b));a.viewport=b;Te=Ue();Ie=Ve();Te.length?(Xe(),jb(Xe,100,Infinity,[],k,"checkState",f),xa&&!ea&&!Ka&&(G(window,"orientationchange",We),
kb(window.scrollTo,100,[0,0])),a=h):a=k;(!a||!Md())&&cf()}}function cf(){Ab(window,"unload",cf);Vd();xa&&!ea&&Ab(window,"orientationchange",We);$.H&&$.H.v();Ie=Te=$=j;Ze()}
if(pa){document.documentElement.style.display="none";w.load();Ya();var df=function(){da.Tb=h;bf()},ef,ff=document.querySelectorAll("link[rel~=resources]");(ef=ff.length?ff[0].getAttribute("href"):j)?Zb?Zb===fc?df():$b.push(df):(Zb=1,$b=[df],w.get(ef,dc)):df();var gf=function(){ga=h;bf()};window.treesaverFonts?Bb?Bb===Pb?gf():Cb.push(gf):(Bb=1,Cb=[gf],G(document,"treesaver.loader_shown",Nb)):gf();/complete|loaded/.test(document.readyState)?af():G(document,"DOMContentLoaded",af);kb(Ze,5E3,[],"unboot")};}).call(window);