-
Notifications
You must be signed in to change notification settings - Fork 0
/
asylum.html
380 lines (305 loc) · 508 KB
/
asylum.html
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
<!DOCTYPE html>
<html data-init="no-js">
<head>
<meta charset="UTF-8" />
<title>asylum</title>
<meta name="viewport" content="width=device-width,initial-scale=1" />
<!--
SugarCube (v2.34.1): A free (gratis and libre) story format.
Copyright © 2013–2020 Thomas Michael Edwards <[email protected]>.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-->
<script id="script-libraries" type="text/javascript">
if(document.head&&document.addEventListener&&document.querySelector&&Object.create&&Object.freeze&&JSON){document.documentElement.setAttribute("data-init", "loading");
/*! @source http://purl.eligrey.com/github/classList.js/blob/1.2.20171210/classList.js */
"document"in self&&("classList"in document.createElement("_")&&(!document.createElementNS||"classList"in document.createElementNS("http://www.w3.org/2000/svg","g"))||!function(t){"use strict";if("Element"in t){var e="classList",n="prototype",i=t.Element[n],s=Object,r=String[n].trim||function(){return this.replace(/^\s+|\s+$/g,"")},o=Array[n].indexOf||function(t){for(var e=0,n=this.length;n>e;e++)if(e in this&&this[e]===t)return e;return-1},c=function(t,e){this.name=t,this.code=DOMException[t],this.message=e},a=function(t,e){if(""===e)throw new c("SYNTAX_ERR","The token must not be empty.");if(/\s/.test(e))throw new c("INVALID_CHARACTER_ERR","The token must not contain space characters.");return o.call(t,e)},l=function(t){for(var e=r.call(t.getAttribute("class")||""),n=e?e.split(/\s+/):[],i=0,s=n.length;s>i;i++)this.push(n[i]);this._updateClassName=function(){t.setAttribute("class",this.toString())}},u=l[n]=[],h=function(){return new l(this)};if(c[n]=Error[n],u.item=function(t){return this[t]||null},u.contains=function(t){return~a(this,t+"")},u.add=function(){var t,e=arguments,n=0,i=e.length,s=!1;do t=e[n]+"",~a(this,t)||(this.push(t),s=!0);while(++n<i);s&&this._updateClassName()},u.remove=function(){var t,e,n=arguments,i=0,s=n.length,r=!1;do for(t=n[i]+"",e=a(this,t);~e;)this.splice(e,1),r=!0,e=a(this,t);while(++i<s);r&&this._updateClassName()},u.toggle=function(t,e){var n=this.contains(t),i=n?e!==!0&&"remove":e!==!1&&"add";return i&&this[i](t),e===!0||e===!1?e:!n},u.replace=function(t,e){var n=a(t+"");~n&&(this.splice(n,1,e),this._updateClassName())},u.toString=function(){return this.join(" ")},s.defineProperty){var f={get:h,enumerable:!0,configurable:!0};try{s.defineProperty(i,e,f)}catch(p){void 0!==p.number&&-2146823252!==p.number||(f.enumerable=!1,s.defineProperty(i,e,f))}}else s[n].__defineGetter__&&i.__defineGetter__(e,h)}}(self),function(){"use strict";var t=document.createElement("_");if(t.classList.add("c1","c2"),!t.classList.contains("c2")){var e=function(t){var e=DOMTokenList.prototype[t];DOMTokenList.prototype[t]=function(t){var n,i=arguments.length;for(n=0;i>n;n++)t=arguments[n],e.call(this,t)}};e("add"),e("remove")}if(t.classList.toggle("c3",!1),t.classList.contains("c3")){var n=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return 1 in arguments&&!this.contains(t)==!e?e:n.call(this,t)}}"replace"in document.createElement("_").classList||(DOMTokenList.prototype.replace=function(t,e){var n=this.toString().split(" "),i=n.indexOf(t+"");~i&&(n=n.slice(i),this.remove.apply(this,n),this.add(e),this.add.apply(this,n.slice(1)))}),t=null}());
/*!
* https://github.com/es-shims/es5-shim
* @license es5-shim Copyright 2009-2020 by contributors, MIT License
* see https://github.com/es-shims/es5-shim/blob/v4.5.14/LICENSE
*/
(function(t,r){"use strict";if(typeof define==="function"&&define.amd){define(r)}else if(typeof exports==="object"){module.exports=r()}else{t.returnExports=r()}})(this,function(){var t=Array;var r=t.prototype;var e=Object;var n=e.prototype;var i=Function;var a=i.prototype;var o=String;var f=o.prototype;var u=Number;var l=u.prototype;var s=r.slice;var c=r.splice;var v=r.push;var h=r.unshift;var p=r.concat;var y=r.join;var d=a.call;var g=a.apply;var w=Math.max;var b=Math.min;var T=n.toString;var m=typeof Symbol==="function"&&typeof Symbol.toStringTag==="symbol";var D;var S=Function.prototype.toString,x=/^\s*class /,O=function isES6ClassFn(t){try{var r=S.call(t);var e=r.replace(/\/\/.*\n/g,"");var n=e.replace(/\/\*[.\s\S]*\*\//g,"");var i=n.replace(/\n/gm," ").replace(/ {2}/g," ");return x.test(i)}catch(a){return false}},E=function tryFunctionObject(t){try{if(O(t)){return false}S.call(t);return true}catch(r){return false}},j="[object Function]",I="[object GeneratorFunction]",D=function isCallable(t){if(!t){return false}if(typeof t!=="function"&&typeof t!=="object"){return false}if(m){return E(t)}if(O(t)){return false}var r=T.call(t);return r===j||r===I};var M;var U=RegExp.prototype.exec,$=function tryRegexExec(t){try{U.call(t);return true}catch(r){return false}},F="[object RegExp]";M=function isRegex(t){if(typeof t!=="object"){return false}return m?$(t):T.call(t)===F};var N;var C=String.prototype.valueOf,k=function tryStringObject(t){try{C.call(t);return true}catch(r){return false}},A="[object String]";N=function isString(t){if(typeof t==="string"){return true}if(typeof t!=="object"){return false}return m?k(t):T.call(t)===A};var R=e.defineProperty&&function(){try{var t={};e.defineProperty(t,"x",{enumerable:false,value:t});for(var r in t){return false}return t.x===t}catch(n){return false}}();var P=function(t){var r;if(R){r=function(t,r,n,i){if(!i&&r in t){return}e.defineProperty(t,r,{configurable:true,enumerable:false,writable:true,value:n})}}else{r=function(t,r,e,n){if(!n&&r in t){return}t[r]=e}}return function defineProperties(e,n,i){for(var a in n){if(t.call(n,a)){r(e,a,n[a],i)}}}}(n.hasOwnProperty);var J=function isPrimitive(t){var r=typeof t;return t===null||r!=="object"&&r!=="function"};var Y=u.isNaN||function isActualNaN(t){return t!==t};var z={ToInteger:function ToInteger(t){var r=+t;if(Y(r)){r=0}else if(r!==0&&r!==1/0&&r!==-(1/0)){r=(r>0||-1)*Math.floor(Math.abs(r))}return r},ToPrimitive:function ToPrimitive(t){var r,e,n;if(J(t)){return t}e=t.valueOf;if(D(e)){r=e.call(t);if(J(r)){return r}}n=t.toString;if(D(n)){r=n.call(t);if(J(r)){return r}}throw new TypeError},ToObject:function(t){if(t==null){throw new TypeError("can't convert "+t+" to object")}return e(t)},ToUint32:function ToUint32(t){return t>>>0}};var Z=function Empty(){};P(a,{bind:function bind(t){var r=this;if(!D(r)){throw new TypeError("Function.prototype.bind called on incompatible "+r)}var n=s.call(arguments,1);var a;var o=function(){if(this instanceof a){var i=g.call(r,this,p.call(n,s.call(arguments)));if(e(i)===i){return i}return this}else{return g.call(r,t,p.call(n,s.call(arguments)))}};var f=w(0,r.length-n.length);var u=[];for(var l=0;l<f;l++){v.call(u,"$"+l)}a=i("binder","return function ("+y.call(u,",")+"){ return binder.apply(this, arguments); }")(o);if(r.prototype){Z.prototype=r.prototype;a.prototype=new Z;Z.prototype=null}return a}});var G=d.bind(n.hasOwnProperty);var H=d.bind(n.toString);var W=d.bind(s);var B=g.bind(s);if(typeof document==="object"&&document&&document.documentElement){try{W(document.documentElement.childNodes)}catch(X){var L=W;var q=B;W=function arraySliceIE(t){var r=[];var e=t.length;while(e-- >0){r[e]=t[e]}return q(r,L(arguments,1))};B=function arraySliceApplyIE(t,r){return q(W(t),r)}}}var K=d.bind(f.slice);var Q=d.bind(f.split);var V=d.bind(f.indexOf);var _=d.bind(v);var tt=d.bind(n.propertyIsEnumerable);var rt=d.bind(r.sort);var et=t.isArray||function isArray(t){return H(t)==="[object Array]"};var nt=[].unshift(0)!==1;P(r,{unshift:function(){h.apply(this,arguments);return this.length}},nt);P(t,{isArray:et});var it=e("a");var at=it[0]!=="a"||!(0 in it);var ot=function properlyBoxed(t){var r=true;var e=true;var n=false;if(t){try{t.call("foo",function(t,e,n){if(typeof n!=="object"){r=false}});t.call([1],function(){"use strict";e=typeof this==="string"},"x")}catch(i){n=true}}return!!t&&!n&&r&&e};P(r,{forEach:function forEach(t){var r=z.ToObject(this);var e=at&&N(this)?Q(this,""):r;var n=-1;var i=z.ToUint32(e.length);var a;if(arguments.length>1){a=arguments[1]}if(!D(t)){throw new TypeError("Array.prototype.forEach callback must be a function")}while(++n<i){if(n in e){if(typeof a==="undefined"){t(e[n],n,r)}else{t.call(a,e[n],n,r)}}}}},!ot(r.forEach));P(r,{map:function map(r){var e=z.ToObject(this);var n=at&&N(this)?Q(this,""):e;var i=z.ToUint32(n.length);var a=t(i);var o;if(arguments.length>1){o=arguments[1]}if(!D(r)){throw new TypeError("Array.prototype.map callback must be a function")}for(var f=0;f<i;f++){if(f in n){if(typeof o==="undefined"){a[f]=r(n[f],f,e)}else{a[f]=r.call(o,n[f],f,e)}}}return a}},!ot(r.map));P(r,{filter:function filter(t){var r=z.ToObject(this);var e=at&&N(this)?Q(this,""):r;var n=z.ToUint32(e.length);var i=[];var a;var o;if(arguments.length>1){o=arguments[1]}if(!D(t)){throw new TypeError("Array.prototype.filter callback must be a function")}for(var f=0;f<n;f++){if(f in e){a=e[f];if(typeof o==="undefined"?t(a,f,r):t.call(o,a,f,r)){_(i,a)}}}return i}},!ot(r.filter));P(r,{every:function every(t){var r=z.ToObject(this);var e=at&&N(this)?Q(this,""):r;var n=z.ToUint32(e.length);var i;if(arguments.length>1){i=arguments[1]}if(!D(t)){throw new TypeError("Array.prototype.every callback must be a function")}for(var a=0;a<n;a++){if(a in e&&!(typeof i==="undefined"?t(e[a],a,r):t.call(i,e[a],a,r))){return false}}return true}},!ot(r.every));P(r,{some:function some(t){var r=z.ToObject(this);var e=at&&N(this)?Q(this,""):r;var n=z.ToUint32(e.length);var i;if(arguments.length>1){i=arguments[1]}if(!D(t)){throw new TypeError("Array.prototype.some callback must be a function")}for(var a=0;a<n;a++){if(a in e&&(typeof i==="undefined"?t(e[a],a,r):t.call(i,e[a],a,r))){return true}}return false}},!ot(r.some));var ft=false;if(r.reduce){ft=typeof r.reduce.call("es5",function(t,r,e,n){return n})==="object"}P(r,{reduce:function reduce(t){var r=z.ToObject(this);var e=at&&N(this)?Q(this,""):r;var n=z.ToUint32(e.length);if(!D(t)){throw new TypeError("Array.prototype.reduce callback must be a function")}if(n===0&&arguments.length===1){throw new TypeError("reduce of empty array with no initial value")}var i=0;var a;if(arguments.length>=2){a=arguments[1]}else{do{if(i in e){a=e[i++];break}if(++i>=n){throw new TypeError("reduce of empty array with no initial value")}}while(true)}for(;i<n;i++){if(i in e){a=t(a,e[i],i,r)}}return a}},!ft);var ut=false;if(r.reduceRight){ut=typeof r.reduceRight.call("es5",function(t,r,e,n){return n})==="object"}P(r,{reduceRight:function reduceRight(t){var r=z.ToObject(this);var e=at&&N(this)?Q(this,""):r;var n=z.ToUint32(e.length);if(!D(t)){throw new TypeError("Array.prototype.reduceRight callback must be a function")}if(n===0&&arguments.length===1){throw new TypeError("reduceRight of empty array with no initial value")}var i;var a=n-1;if(arguments.length>=2){i=arguments[1]}else{do{if(a in e){i=e[a--];break}if(--a<0){throw new TypeError("reduceRight of empty array with no initial value")}}while(true)}if(a<0){return i}do{if(a in e){i=t(i,e[a],a,r)}}while(a--);return i}},!ut);var lt=r.indexOf&&[0,1].indexOf(1,2)!==-1;P(r,{indexOf:function indexOf(t){var r=at&&N(this)?Q(this,""):z.ToObject(this);var e=z.ToUint32(r.length);if(e===0){return-1}var n=0;if(arguments.length>1){n=z.ToInteger(arguments[1])}n=n>=0?n:w(0,e+n);for(;n<e;n++){if(n in r&&r[n]===t){return n}}return-1}},lt);var st=r.lastIndexOf&&[0,1].lastIndexOf(0,-3)!==-1;P(r,{lastIndexOf:function lastIndexOf(t){var r=at&&N(this)?Q(this,""):z.ToObject(this);var e=z.ToUint32(r.length);if(e===0){return-1}var n=e-1;if(arguments.length>1){n=b(n,z.ToInteger(arguments[1]))}n=n>=0?n:e-Math.abs(n);for(;n>=0;n--){if(n in r&&t===r[n]){return n}}return-1}},st);var ct=function(){var t=[1,2];var r=t.splice();return t.length===2&&et(r)&&r.length===0}();P(r,{splice:function splice(t,r){if(arguments.length===0){return[]}else{return c.apply(this,arguments)}}},!ct);var vt=function(){var t={};r.splice.call(t,0,0,1);return t.length===1}();P(r,{splice:function splice(t,r){if(arguments.length===0){return[]}var e=arguments;this.length=w(z.ToInteger(this.length),0);if(arguments.length>0&&typeof r!=="number"){e=W(arguments);if(e.length<2){_(e,this.length-t)}else{e[1]=z.ToInteger(r)}}return c.apply(this,e)}},!vt);var ht=function(){var r=new t(1e5);r[8]="x";r.splice(1,1);return r.indexOf("x")===7}();var pt=function(){var t=256;var r=[];r[t]="a";r.splice(t+1,0,"b");return r[t]==="a"}();P(r,{splice:function splice(t,r){var e=z.ToObject(this);var n=[];var i=z.ToUint32(e.length);var a=z.ToInteger(t);var f=a<0?w(i+a,0):b(a,i);var u=arguments.length===0?0:arguments.length===1?i-f:b(w(z.ToInteger(r),0),i-f);var l=0;var s;while(l<u){s=o(f+l);if(G(e,s)){n[l]=e[s]}l+=1}var c=W(arguments,2);var v=c.length;var h;if(v<u){l=f;var p=i-u;while(l<p){s=o(l+u);h=o(l+v);if(G(e,s)){e[h]=e[s]}else{delete e[h]}l+=1}l=i;var y=i-u+v;while(l>y){delete e[l-1];l-=1}}else if(v>u){l=i-u;while(l>f){s=o(l+u-1);h=o(l+v-1);if(G(e,s)){e[h]=e[s]}else{delete e[h]}l-=1}}l=f;for(var d=0;d<c.length;++d){e[l]=c[d];l+=1}e.length=i-u+v;return n}},!ht||!pt);var yt=r.join;var dt;try{dt=Array.prototype.join.call("123",",")!=="1,2,3"}catch(X){dt=true}if(dt){P(r,{join:function join(t){var r=typeof t==="undefined"?",":t;return yt.call(N(this)?Q(this,""):this,r)}},dt)}var gt=[1,2].join(undefined)!=="1,2";if(gt){P(r,{join:function join(t){var r=typeof t==="undefined"?",":t;return yt.call(this,r)}},gt)}var wt=function push(t){var r=z.ToObject(this);var e=z.ToUint32(r.length);var n=0;while(n<arguments.length){r[e+n]=arguments[n];n+=1}r.length=e+n;return e+n};var bt=function(){var t={};var r=Array.prototype.push.call(t,undefined);return r!==1||t.length!==1||typeof t[0]!=="undefined"||!G(t,0)}();P(r,{push:function push(t){if(et(this)){return v.apply(this,arguments)}return wt.apply(this,arguments)}},bt);var Tt=function(){var t=[];var r=t.push(undefined);return r!==1||t.length!==1||typeof t[0]!=="undefined"||!G(t,0)}();P(r,{push:wt},Tt);P(r,{slice:function(t,r){var e=N(this)?Q(this,""):this;return B(e,arguments)}},at);var mt=function(){try{[1,2].sort(null)}catch(t){try{[1,2].sort({})}catch(r){return false}}return true}();var Dt=function(){try{[1,2].sort(/a/);return false}catch(t){}return true}();var St=function(){try{[1,2].sort(undefined);return true}catch(t){}return false}();P(r,{sort:function sort(t){if(typeof t==="undefined"){return rt(this)}if(!D(t)){throw new TypeError("Array.prototype.sort callback must be a function")}return rt(this,t)}},mt||!St||!Dt);var xt=!tt({toString:null},"toString");var Ot=tt(function(){},"prototype");var Et=!G("x","0");var jt=function(t){var r=t.constructor;return r&&r.prototype===t};var It={$applicationCache:true,$console:true,$external:true,$frame:true,$frameElement:true,$frames:true,$innerHeight:true,$innerWidth:true,$onmozfullscreenchange:true,$onmozfullscreenerror:true,$outerHeight:true,$outerWidth:true,$pageXOffset:true,$pageYOffset:true,$parent:true,$scrollLeft:true,$scrollTop:true,$scrollX:true,$scrollY:true,$self:true,$webkitIndexedDB:true,$webkitStorageInfo:true,$window:true,$width:true,$height:true,$top:true,$localStorage:true};var Mt=function(){if(typeof window==="undefined"){return false}for(var t in window){try{if(!It["$"+t]&&G(window,t)&&window[t]!==null&&typeof window[t]==="object"){jt(window[t])}}catch(r){return true}}return false}();var Ut=function(t){if(typeof window==="undefined"||!Mt){return jt(t)}try{return jt(t)}catch(r){return false}};var $t=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"];var Ft=$t.length;var Nt=function isArguments(t){return H(t)==="[object Arguments]"};var Ct=function isArguments(t){return t!==null&&typeof t==="object"&&typeof t.length==="number"&&t.length>=0&&!et(t)&&D(t.callee)};var kt=Nt(arguments)?Nt:Ct;P(e,{keys:function keys(t){var r=D(t);var e=kt(t);var n=t!==null&&typeof t==="object";var i=n&&N(t);if(!n&&!r&&!e){throw new TypeError("Object.keys called on a non-object")}var a=[];var f=Ot&&r;if(i&&Et||e){for(var u=0;u<t.length;++u){_(a,o(u))}}if(!e){for(var l in t){if(!(f&&l==="prototype")&&G(t,l)){_(a,o(l))}}}if(xt){var s=Ut(t);for(var c=0;c<Ft;c++){var v=$t[c];if(!(s&&v==="constructor")&&G(t,v)){_(a,v)}}}return a}});var At=e.keys&&function(){return e.keys(arguments).length===2}(1,2);var Rt=e.keys&&function(){var t=e.keys(arguments);return arguments.length!==1||t.length!==1||t[0]!==1}(1);var Pt=e.keys;P(e,{keys:function keys(t){if(kt(t)){return Pt(W(t))}else{return Pt(t)}}},!At||Rt);var Jt=new Date(-0xc782b5b342b24).getUTCMonth()!==0;var Yt=new Date(-0x55d318d56a724);var zt=new Date(14496624e5);var Zt=Yt.toUTCString()!=="Mon, 01 Jan -45875 11:59:59 GMT";var Gt;var Ht;var Wt=Yt.getTimezoneOffset();if(Wt<-720){Gt=Yt.toDateString()!=="Tue Jan 02 -45875";Ht=!/^Thu Dec 10 2015 \d\d:\d\d:\d\d GMT[-+]\d\d\d\d(?: |$)/.test(String(zt))}else{Gt=Yt.toDateString()!=="Mon Jan 01 -45875";Ht=!/^Wed Dec 09 2015 \d\d:\d\d:\d\d GMT[-+]\d\d\d\d(?: |$)/.test(String(zt))}var Bt=d.bind(Date.prototype.getFullYear);var Xt=d.bind(Date.prototype.getMonth);var Lt=d.bind(Date.prototype.getDate);var qt=d.bind(Date.prototype.getUTCFullYear);var Kt=d.bind(Date.prototype.getUTCMonth);var Qt=d.bind(Date.prototype.getUTCDate);var Vt=d.bind(Date.prototype.getUTCDay);var _t=d.bind(Date.prototype.getUTCHours);var tr=d.bind(Date.prototype.getUTCMinutes);var rr=d.bind(Date.prototype.getUTCSeconds);var er=d.bind(Date.prototype.getUTCMilliseconds);var nr=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];var ir=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];var ar=function daysInMonth(t,r){return Lt(new Date(r,t,0))};P(Date.prototype,{getFullYear:function getFullYear(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Bt(this);if(t<0&&Xt(this)>11){return t+1}return t},getMonth:function getMonth(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Bt(this);var r=Xt(this);if(t<0&&r>11){return 0}return r},getDate:function getDate(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Bt(this);var r=Xt(this);var e=Lt(this);if(t<0&&r>11){if(r===12){return e}var n=ar(0,t+1);return n-e+1}return e},getUTCFullYear:function getUTCFullYear(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=qt(this);if(t<0&&Kt(this)>11){return t+1}return t},getUTCMonth:function getUTCMonth(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=qt(this);var r=Kt(this);if(t<0&&r>11){return 0}return r},getUTCDate:function getUTCDate(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=qt(this);var r=Kt(this);var e=Qt(this);if(t<0&&r>11){if(r===12){return e}var n=ar(0,t+1);return n-e+1}return e}},Jt);P(Date.prototype,{toUTCString:function toUTCString(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Vt(this);var r=Qt(this);var e=Kt(this);var n=qt(this);var i=_t(this);var a=tr(this);var o=rr(this);return nr[t]+", "+(r<10?"0"+r:r)+" "+ir[e]+" "+n+" "+(i<10?"0"+i:i)+":"+(a<10?"0"+a:a)+":"+(o<10?"0"+o:o)+" GMT"}},Jt||Zt);P(Date.prototype,{toDateString:function toDateString(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=this.getDay();var r=this.getDate();var e=this.getMonth();var n=this.getFullYear();return nr[t]+" "+ir[e]+" "+(r<10?"0"+r:r)+" "+n}},Jt||Gt);if(Jt||Ht){Date.prototype.toString=function toString(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=this.getDay();var r=this.getDate();var e=this.getMonth();var n=this.getFullYear();var i=this.getHours();var a=this.getMinutes();var o=this.getSeconds();var f=this.getTimezoneOffset();var u=Math.floor(Math.abs(f)/60);var l=Math.floor(Math.abs(f)%60);return nr[t]+" "+ir[e]+" "+(r<10?"0"+r:r)+" "+n+" "+(i<10?"0"+i:i)+":"+(a<10?"0"+a:a)+":"+(o<10?"0"+o:o)+" GMT"+(f>0?"-":"+")+(u<10?"0"+u:u)+(l<10?"0"+l:l)};if(R){e.defineProperty(Date.prototype,"toString",{configurable:true,enumerable:false,writable:true})}}var or=-621987552e5;var fr="-000001";var ur=Date.prototype.toISOString&&new Date(or).toISOString().indexOf(fr)===-1;var lr=Date.prototype.toISOString&&new Date(-1).toISOString()!=="1969-12-31T23:59:59.999Z";var sr=d.bind(Date.prototype.getTime);P(Date.prototype,{toISOString:function toISOString(){if(!isFinite(this)||!isFinite(sr(this))){throw new RangeError("Date.prototype.toISOString called on non-finite value.")}var t=qt(this);var r=Kt(this);t+=Math.floor(r/12);r=(r%12+12)%12;var e=[r+1,Qt(this),_t(this),tr(this),rr(this)];t=(t<0?"-":t>9999?"+":"")+K("00000"+Math.abs(t),0<=t&&t<=9999?-4:-6);for(var n=0;n<e.length;++n){e[n]=K("00"+e[n],-2)}return t+"-"+W(e,0,2).join("-")+"T"+W(e,2).join(":")+"."+K("000"+er(this),-3)+"Z"}},ur||lr);var cr=function(){try{return Date.prototype.toJSON&&new Date(NaN).toJSON()===null&&new Date(or).toJSON().indexOf(fr)!==-1&&Date.prototype.toJSON.call({toISOString:function(){return true}})}catch(t){return false}}();if(!cr){Date.prototype.toJSON=function toJSON(t){var r=e(this);var n=z.ToPrimitive(r);if(typeof n==="number"&&!isFinite(n)){return null}var i=r.toISOString;if(!D(i)){throw new TypeError("toISOString property is not callable")}return i.call(r)}}var vr=Date.parse("+033658-09-27T01:46:40.000Z")===1e15;var hr=!isNaN(Date.parse("2012-04-04T24:00:00.500Z"))||!isNaN(Date.parse("2012-11-31T23:59:59.000Z"))||!isNaN(Date.parse("2012-12-31T23:59:60.000Z"));var pr=isNaN(Date.parse("2000-01-01T00:00:00.000Z"));if(pr||hr||!vr){var yr=Math.pow(2,31)-1;var dr=Y(new Date(1970,0,1,0,0,0,yr+1).getTime());Date=function(t){var r=function Date(e,n,i,a,f,u,l){var s=arguments.length;var c;if(this instanceof t){var v=u;var h=l;if(dr&&s>=7&&l>yr){var p=Math.floor(l/yr)*yr;var y=Math.floor(p/1e3);v+=y;h-=y*1e3}c=s===1&&o(e)===e?new t(r.parse(e)):s>=7?new t(e,n,i,a,f,v,h):s>=6?new t(e,n,i,a,f,v):s>=5?new t(e,n,i,a,f):s>=4?new t(e,n,i,a):s>=3?new t(e,n,i):s>=2?new t(e,n):s>=1?new t(e instanceof t?+e:e):new t}else{c=t.apply(this,arguments)}if(!J(c)){P(c,{constructor:r},true)}return c};var e=new RegExp("^"+"(\\d{4}|[+-]\\d{6})"+"(?:-(\\d{2})"+"(?:-(\\d{2})"+"(?:"+"T(\\d{2})"+":(\\d{2})"+"(?:"+":(\\d{2})"+"(?:(\\.\\d{1,}))?"+")?"+"("+"Z|"+"(?:"+"([-+])"+"(\\d{2})"+":(\\d{2})"+")"+")?)?)?)?"+"$");var n=[0,31,59,90,120,151,181,212,243,273,304,334,365];var i=function dayFromMonth(t,r){var e=r>1?1:0;return n[r]+Math.floor((t-1969+e)/4)-Math.floor((t-1901+e)/100)+Math.floor((t-1601+e)/400)+365*(t-1970)};var a=function toUTC(r){var e=0;var n=r;if(dr&&n>yr){var i=Math.floor(n/yr)*yr;var a=Math.floor(i/1e3);e+=a;n-=a*1e3}return u(new t(1970,0,1,0,0,e,n))};for(var f in t){if(G(t,f)){r[f]=t[f]}}P(r,{now:t.now,UTC:t.UTC},true);r.prototype=t.prototype;P(r.prototype,{constructor:r},true);var l=function parse(r){var n=e.exec(r);if(n){var o=u(n[1]),f=u(n[2]||1)-1,l=u(n[3]||1)-1,s=u(n[4]||0),c=u(n[5]||0),v=u(n[6]||0),h=Math.floor(u(n[7]||0)*1e3),p=Boolean(n[4]&&!n[8]),y=n[9]==="-"?1:-1,d=u(n[10]||0),g=u(n[11]||0),w;var b=c>0||v>0||h>0;if(s<(b?24:25)&&c<60&&v<60&&h<1e3&&f>-1&&f<12&&d<24&&g<60&&l>-1&&l<i(o,f+1)-i(o,f)){w=((i(o,f)+l)*24+s+d*y)*60;w=((w+c+g*y)*60+v)*1e3+h;if(p){w=a(w)}if(-864e13<=w&&w<=864e13){return w}}return NaN}return t.parse.apply(this,arguments)};P(r,{parse:l});return r}(Date)}if(!Date.now){Date.now=function now(){return(new Date).getTime()}}var gr=l.toFixed&&(8e-5.toFixed(3)!=="0.000"||.9.toFixed(0)!=="1"||1.255.toFixed(2)!=="1.25"||(1000000000000000128).toFixed(0)!=="1000000000000000128");var wr={base:1e7,size:6,data:[0,0,0,0,0,0],multiply:function multiply(t,r){var e=-1;var n=r;while(++e<wr.size){n+=t*wr.data[e];wr.data[e]=n%wr.base;n=Math.floor(n/wr.base)}},divide:function divide(t){var r=wr.size;var e=0;while(--r>=0){e+=wr.data[r];wr.data[r]=Math.floor(e/t);e=e%t*wr.base}},numToString:function numToString(){var t=wr.size;var r="";while(--t>=0){if(r!==""||t===0||wr.data[t]!==0){var e=o(wr.data[t]);if(r===""){r=e}else{r+=K("0000000",0,7-e.length)+e}}}return r},pow:function pow(t,r,e){return r===0?e:r%2===1?pow(t,r-1,e*t):pow(t*t,r/2,e)},log:function log(t){var r=0;var e=t;while(e>=4096){r+=12;e/=4096}while(e>=2){r+=1;e/=2}return r}};var br=function toFixed(t){var r,e,n,i,a,f,l,s;r=u(t);r=Y(r)?0:Math.floor(r);if(r<0||r>20){throw new RangeError("Number.toFixed called with invalid number of decimals")}e=u(this);if(Y(e)){return"NaN"}if(e<=-1e21||e>=1e21){return o(e)}n="";if(e<0){n="-";e=-e}i="0";if(e>1e-21){a=wr.log(e*wr.pow(2,69,1))-69;f=a<0?e*wr.pow(2,-a,1):e/wr.pow(2,a,1);f*=4503599627370496;a=52-a;if(a>0){wr.multiply(0,f);l=r;while(l>=7){wr.multiply(1e7,0);l-=7}wr.multiply(wr.pow(10,l,1),0);l=a-1;while(l>=23){wr.divide(1<<23);l-=23}wr.divide(1<<l);wr.multiply(1,1);wr.divide(2);i=wr.numToString()}else{wr.multiply(0,f);wr.multiply(1<<-a,0);i=wr.numToString()+K("0.00000000000000000000",2,2+r)}}if(r>0){s=i.length;if(s<=r){i=n+K("0.0000000000000000000",0,r-s+2)+i}else{i=n+K(i,0,s-r)+"."+K(i,s-r)}}else{i=n+i}return i};P(l,{toFixed:br},gr);var Tr=function(){try{return 1..toPrecision(undefined)==="1"}catch(t){return true}}();var mr=l.toPrecision;P(l,{toPrecision:function toPrecision(t){return typeof t==="undefined"?mr.call(this):mr.call(this,t)}},Tr);if("ab".split(/(?:ab)*/).length!==2||".".split(/(.?)(.?)/).length!==4||"tesst".split(/(s)*/)[1]==="t"||"test".split(/(?:)/,-1).length!==4||"".split(/.?/).length||".".split(/()()/).length>1){(function(){var t=typeof/()??/.exec("")[1]==="undefined";var r=Math.pow(2,32)-1;f.split=function(e,n){var i=String(this);if(typeof e==="undefined"&&n===0){return[]}if(!M(e)){return Q(this,e,n)}var a=[];var o=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,u,l,s,c;var h=new RegExp(e.source,o+"g");if(!t){u=new RegExp("^"+h.source+"$(?!\\s)",o)}var p=typeof n==="undefined"?r:z.ToUint32(n);l=h.exec(i);while(l){s=l.index+l[0].length;if(s>f){_(a,K(i,f,l.index));if(!t&&l.length>1){l[0].replace(u,function(){for(var t=1;t<arguments.length-2;t++){if(typeof arguments[t]==="undefined"){l[t]=void 0}}})}if(l.length>1&&l.index<i.length){v.apply(a,W(l,1))}c=l[0].length;f=s;if(a.length>=p){break}}if(h.lastIndex===l.index){h.lastIndex++}l=h.exec(i)}if(f===i.length){if(c||!h.test("")){_(a,"")}}else{_(a,K(i,f))}return a.length>p?W(a,0,p):a}})()}else if("0".split(void 0,0).length){f.split=function split(t,r){if(typeof t==="undefined"&&r===0){return[]}return Q(this,t,r)}}var Dr=f.replace;var Sr=function(){var t=[];"x".replace(/x(.)?/g,function(r,e){_(t,e)});return t.length===1&&typeof t[0]==="undefined"}();if(!Sr){f.replace=function replace(t,r){var e=D(r);var n=M(t)&&/\)[*?]/.test(t.source);if(!e||!n){return Dr.call(this,t,r)}else{var i=function(e){var n=arguments.length;var i=t.lastIndex;t.lastIndex=0;var a=t.exec(e)||[];t.lastIndex=i;_(a,arguments[n-2],arguments[n-1]);return r.apply(this,a)};return Dr.call(this,t,i)}}}var xr=f.substr;var Or="".substr&&"0b".substr(-1)!=="b";P(f,{substr:function substr(t,r){var e=t;if(t<0){e=w(this.length+t,0)}return xr.call(this,e,r)}},Or);var Er="\t\n\x0B\f\r \xa0\u1680\u2000\u2001\u2002\u2003"+"\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028"+"\u2029\ufeff";var jr="\u200b";var Ir="["+Er+"]";var Mr=new RegExp("^"+Ir+Ir+"*");var Ur=new RegExp(Ir+Ir+"*$");var $r=f.trim&&(Er.trim()||!jr.trim());P(f,{trim:function trim(){if(typeof this==="undefined"||this===null){throw new TypeError("can't convert "+this+" to object")}return o(this).replace(Mr,"").replace(Ur,"")}},$r);var Fr=d.bind(String.prototype.trim);var Nr=f.lastIndexOf&&"abc\u3042\u3044".lastIndexOf("\u3042\u3044",2)!==-1;P(f,{lastIndexOf:function lastIndexOf(t){if(typeof this==="undefined"||this===null){throw new TypeError("can't convert "+this+" to object")}var r=o(this);var e=o(t);var n=arguments.length>1?u(arguments[1]):NaN;var i=Y(n)?Infinity:z.ToInteger(n);var a=b(w(i,0),r.length);var f=e.length;var l=a+f;while(l>0){l=w(0,l-f);var s=V(K(r,l,a+f),e);if(s!==-1){return l+s}}return-1}},Nr);var Cr=f.lastIndexOf;P(f,{lastIndexOf:function lastIndexOf(t){return Cr.apply(this,arguments)}},f.lastIndexOf.length!==1);if(parseInt(Er+"08")!==8||parseInt(Er+"0x16")!==22){parseInt=function(t){var r=/^[-+]?0[xX]/;return function parseInt(e,n){if(typeof e==="symbol"){""+e}var i=Fr(String(e));var a=u(n)||(r.test(i)?16:10);return t(i,a)}}(parseInt)}if(1/parseFloat("-0")!==-Infinity){parseFloat=function(t){return function parseFloat(r){var e=Fr(String(r));var n=t(e);return n===0&&K(e,0,1)==="-"?-0:n}}(parseFloat)}if(String(new RangeError("test"))!=="RangeError: test"){var kr=function toString(){if(typeof this==="undefined"||this===null){throw new TypeError("can't convert "+this+" to object")}var t=this.name;if(typeof t==="undefined"){t="Error"}else if(typeof t!=="string"){t=o(t)}var r=this.message;if(typeof r==="undefined"){r=""}else if(typeof r!=="string"){r=o(r)}if(!t){return r}if(!r){return t}return t+": "+r};Error.prototype.toString=kr}if(R){var Ar=function(t,r){if(tt(t,r)){var e=Object.getOwnPropertyDescriptor(t,r);if(e.configurable){e.enumerable=false;Object.defineProperty(t,r,e)}}};Ar(Error.prototype,"message");if(Error.prototype.message!==""){Error.prototype.message=""}Ar(Error.prototype,"name")}if(String(/a/gim)!=="/a/gim"){var Rr=function toString(){var t="/"+this.source+"/";if(this.global){t+="g"}if(this.ignoreCase){t+="i"}if(this.multiline){t+="m"}return t};RegExp.prototype.toString=Rr}});
/*!
* https://github.com/paulmillr/es6-shim
* @license es6-shim Copyright 2013-2016 by Paul Miller (http://paulmillr.com)
* and contributors, MIT License
* es6-shim: v0.35.4
* see https://github.com/paulmillr/es6-shim/blob/0.35.4/LICENSE
* Details and documentation:
* https://github.com/paulmillr/es6-shim/
*/
(function(e,t){if(typeof define==="function"&&define.amd){define(t)}else if(typeof exports==="object"){module.exports=t()}else{e.returnExports=t()}})(this,function(){"use strict";var e=Function.call.bind(Function.apply);var t=Function.call.bind(Function.call);var r=Array.isArray;var n=Object.keys;var o=function notThunker(t){return function notThunk(){return!e(t,this,arguments)}};var i=function(e){try{e();return false}catch(t){return true}};var a=function valueOrFalseIfThrows(e){try{return e()}catch(t){return false}};var u=o(i);var f=function(){return!i(function(){return Object.defineProperty({},"x",{get:function(){}})})};var s=!!Object.defineProperty&&f();var c=function foo(){}.name==="foo";var l=Function.call.bind(Array.prototype.forEach);var p=Function.call.bind(Array.prototype.reduce);var v=Function.call.bind(Array.prototype.filter);var y=Function.call.bind(Array.prototype.some);var h=function(e,t,r,n){if(!n&&t in e){return}if(s){Object.defineProperty(e,t,{configurable:true,enumerable:false,writable:true,value:r})}else{e[t]=r}};var b=function(e,t,r){l(n(t),function(n){var o=t[n];h(e,n,o,!!r)})};var g=Function.call.bind(Object.prototype.toString);var d=typeof/abc/==="function"?function IsCallableSlow(e){return typeof e==="function"&&g(e)==="[object Function]"}:function IsCallableFast(e){return typeof e==="function"};var m={getter:function(e,t,r){if(!s){throw new TypeError("getters require true ES5 support")}Object.defineProperty(e,t,{configurable:true,enumerable:false,get:r})},proxy:function(e,t,r){if(!s){throw new TypeError("getters require true ES5 support")}var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,{configurable:n.configurable,enumerable:n.enumerable,get:function getKey(){return e[t]},set:function setKey(r){e[t]=r}})},redefine:function(e,t,r){if(s){var n=Object.getOwnPropertyDescriptor(e,t);n.value=r;Object.defineProperty(e,t,n)}else{e[t]=r}},defineByDescriptor:function(e,t,r){if(s){Object.defineProperty(e,t,r)}else if("value"in r){e[t]=r.value}},preserveToString:function(e,t){if(t&&d(t.toString)){h(e,"toString",t.toString.bind(t),true)}}};var O=Object.create||function(e,t){var r=function Prototype(){};r.prototype=e;var o=new r;if(typeof t!=="undefined"){n(t).forEach(function(e){m.defineByDescriptor(o,e,t[e])})}return o};var w=function(e,t){if(!Object.setPrototypeOf){return false}return a(function(){var r=function Subclass(t){var r=new e(t);Object.setPrototypeOf(r,Subclass.prototype);return r};Object.setPrototypeOf(r,e);r.prototype=O(e.prototype,{constructor:{value:r}});return t(r)})};var j=function(){if(typeof self!=="undefined"){return self}if(typeof window!=="undefined"){return window}if(typeof global!=="undefined"){return global}throw new Error("unable to locate global object")};var S=j();var T=S.isFinite;var I=Function.call.bind(String.prototype.indexOf);var E=Function.apply.bind(Array.prototype.indexOf);var P=Function.call.bind(Array.prototype.concat);var C=Function.call.bind(String.prototype.slice);var M=Function.call.bind(Array.prototype.push);var x=Function.apply.bind(Array.prototype.push);var N=Function.call.bind(Array.prototype.shift);var A=Math.max;var R=Math.min;var _=Math.floor;var k=Math.abs;var L=Math.exp;var F=Math.log;var D=Math.sqrt;var z=Function.call.bind(Object.prototype.hasOwnProperty);var q;var W=function(){};var G=S.Map;var H=G&&G.prototype["delete"];var V=G&&G.prototype.get;var B=G&&G.prototype.has;var U=G&&G.prototype.set;var $=S.Symbol||{};var J=$.species||"@@species";var X=Number.isNaN||function isNaN(e){return e!==e};var K=Number.isFinite||function isFinite(e){return typeof e==="number"&&T(e)};var Z=d(Math.sign)?Math.sign:function sign(e){var t=Number(e);if(t===0){return t}if(X(t)){return t}return t<0?-1:1};var Y=function log1p(e){var t=Number(e);if(t<-1||X(t)){return NaN}if(t===0||t===Infinity){return t}if(t===-1){return-Infinity}return 1+t-1===0?t:t*(F(1+t)/(1+t-1))};var Q=function isArguments(e){return g(e)==="[object Arguments]"};var ee=function isArguments(e){return e!==null&&typeof e==="object"&&typeof e.length==="number"&&e.length>=0&&g(e)!=="[object Array]"&&g(e.callee)==="[object Function]"};var te=Q(arguments)?Q:ee;var re={primitive:function(e){return e===null||typeof e!=="function"&&typeof e!=="object"},string:function(e){return g(e)==="[object String]"},regex:function(e){return g(e)==="[object RegExp]"},symbol:function(e){return typeof S.Symbol==="function"&&typeof e==="symbol"}};var ne=function overrideNative(e,t,r){var n=e[t];h(e,t,r,true);m.preserveToString(e[t],n)};var oe=typeof $==="function"&&typeof $["for"]==="function"&&re.symbol($());var ie=re.symbol($.iterator)?$.iterator:"_es6-shim iterator_";if(S.Set&&typeof(new S.Set)["@@iterator"]==="function"){ie="@@iterator"}if(!S.Reflect){h(S,"Reflect",{},true)}var ae=S.Reflect;var ue=String;var fe=typeof document==="undefined"||!document?null:document.all;var se=fe==null?function isNullOrUndefined(e){return e==null}:function isNullOrUndefinedAndNotDocumentAll(e){return e==null&&e!==fe};var ce={Call:function Call(t,r){var n=arguments.length>2?arguments[2]:[];if(!ce.IsCallable(t)){throw new TypeError(t+" is not a function")}return e(t,r,n)},RequireObjectCoercible:function(e,t){if(se(e)){throw new TypeError(t||"Cannot call method on "+e)}return e},TypeIsObject:function(e){if(e===void 0||e===null||e===true||e===false){return false}return typeof e==="function"||typeof e==="object"||e===fe},ToObject:function(e,t){return Object(ce.RequireObjectCoercible(e,t))},IsCallable:d,IsConstructor:function(e){return ce.IsCallable(e)},ToInt32:function(e){return ce.ToNumber(e)>>0},ToUint32:function(e){return ce.ToNumber(e)>>>0},ToNumber:function(e){if(g(e)==="[object Symbol]"){throw new TypeError("Cannot convert a Symbol value to a number")}return+e},ToInteger:function(e){var t=ce.ToNumber(e);if(X(t)){return 0}if(t===0||!K(t)){return t}return(t>0?1:-1)*_(k(t))},ToLength:function(e){var t=ce.ToInteger(e);if(t<=0){return 0}if(t>Number.MAX_SAFE_INTEGER){return Number.MAX_SAFE_INTEGER}return t},SameValue:function(e,t){if(e===t){if(e===0){return 1/e===1/t}return true}return X(e)&&X(t)},SameValueZero:function(e,t){return e===t||X(e)&&X(t)},IsIterable:function(e){return ce.TypeIsObject(e)&&(typeof e[ie]!=="undefined"||te(e))},GetIterator:function(e){if(te(e)){return new q(e,"value")}var t=ce.GetMethod(e,ie);if(!ce.IsCallable(t)){throw new TypeError("value is not an iterable")}var r=ce.Call(t,e);if(!ce.TypeIsObject(r)){throw new TypeError("bad iterator")}return r},GetMethod:function(e,t){var r=ce.ToObject(e)[t];if(se(r)){return void 0}if(!ce.IsCallable(r)){throw new TypeError("Method not callable: "+t)}return r},IteratorComplete:function(e){return!!e.done},IteratorClose:function(e,t){var r=ce.GetMethod(e,"return");if(r===void 0){return}var n,o;try{n=ce.Call(r,e)}catch(i){o=i}if(t){return}if(o){throw o}if(!ce.TypeIsObject(n)){throw new TypeError("Iterator's return method returned a non-object.")}},IteratorNext:function(e){var t=arguments.length>1?e.next(arguments[1]):e.next();if(!ce.TypeIsObject(t)){throw new TypeError("bad iterator")}return t},IteratorStep:function(e){var t=ce.IteratorNext(e);var r=ce.IteratorComplete(t);return r?false:t},Construct:function(e,t,r,n){var o=typeof r==="undefined"?e:r;if(!n&&ae.construct){return ae.construct(e,t,o)}var i=o.prototype;if(!ce.TypeIsObject(i)){i=Object.prototype}var a=O(i);var u=ce.Call(e,a,t);return ce.TypeIsObject(u)?u:a},SpeciesConstructor:function(e,t){var r=e.constructor;if(r===void 0){return t}if(!ce.TypeIsObject(r)){throw new TypeError("Bad constructor")}var n=r[J];if(se(n)){return t}if(!ce.IsConstructor(n)){throw new TypeError("Bad @@species")}return n},CreateHTML:function(e,t,r,n){var o=ce.ToString(e);var i="<"+t;if(r!==""){var a=ce.ToString(n);var u=a.replace(/"/g,""");i+=" "+r+'="'+u+'"'}var f=i+">";var s=f+o;return s+"</"+t+">"},IsRegExp:function IsRegExp(e){if(!ce.TypeIsObject(e)){return false}var t=e[$.match];if(typeof t!=="undefined"){return!!t}return re.regex(e)},ToString:function ToString(e){return ue(e)}};if(s&&oe){var le=function defineWellKnownSymbol(e){if(re.symbol($[e])){return $[e]}var t=$["for"]("Symbol."+e);Object.defineProperty($,e,{configurable:false,enumerable:false,writable:false,value:t});return t};if(!re.symbol($.search)){var pe=le("search");var ve=String.prototype.search;h(RegExp.prototype,pe,function search(e){return ce.Call(ve,e,[this])});var ye=function search(e){var t=ce.RequireObjectCoercible(this);if(!se(e)){var r=ce.GetMethod(e,pe);if(typeof r!=="undefined"){return ce.Call(r,e,[t])}}return ce.Call(ve,t,[ce.ToString(e)])};ne(String.prototype,"search",ye)}if(!re.symbol($.replace)){var he=le("replace");var be=String.prototype.replace;h(RegExp.prototype,he,function replace(e,t){return ce.Call(be,e,[this,t])});var ge=function replace(e,t){var r=ce.RequireObjectCoercible(this);if(!se(e)){var n=ce.GetMethod(e,he);if(typeof n!=="undefined"){return ce.Call(n,e,[r,t])}}return ce.Call(be,r,[ce.ToString(e),t])};ne(String.prototype,"replace",ge)}if(!re.symbol($.split)){var de=le("split");var me=String.prototype.split;h(RegExp.prototype,de,function split(e,t){return ce.Call(me,e,[this,t])});var Oe=function split(e,t){var r=ce.RequireObjectCoercible(this);if(!se(e)){var n=ce.GetMethod(e,de);if(typeof n!=="undefined"){return ce.Call(n,e,[r,t])}}return ce.Call(me,r,[ce.ToString(e),t])};ne(String.prototype,"split",Oe)}var we=re.symbol($.match);var je=we&&function(){var e={};e[$.match]=function(){return 42};return"a".match(e)!==42}();if(!we||je){var Se=le("match");var Te=String.prototype.match;h(RegExp.prototype,Se,function match(e){return ce.Call(Te,e,[this])});var Ie=function match(e){var t=ce.RequireObjectCoercible(this);if(!se(e)){var r=ce.GetMethod(e,Se);if(typeof r!=="undefined"){return ce.Call(r,e,[t])}}return ce.Call(Te,t,[ce.ToString(e)])};ne(String.prototype,"match",Ie)}}var Ee=function wrapConstructor(e,t,r){m.preserveToString(t,e);if(Object.setPrototypeOf){Object.setPrototypeOf(e,t)}if(s){l(Object.getOwnPropertyNames(e),function(n){if(n in W||r[n]){return}m.proxy(e,n,t)})}else{l(Object.keys(e),function(n){if(n in W||r[n]){return}t[n]=e[n]})}t.prototype=e.prototype;m.redefine(e.prototype,"constructor",t)};var Pe=function(){return this};var Ce=function(e){if(s&&!z(e,J)){m.getter(e,J,Pe)}};var Me=function(e,t){var r=t||function iterator(){return this};h(e,ie,r);if(!e[ie]&&re.symbol(ie)){e[ie]=r}};var xe=function createDataProperty(e,t,r){if(s){Object.defineProperty(e,t,{configurable:true,enumerable:true,writable:true,value:r})}else{e[t]=r}};var Ne=function createDataPropertyOrThrow(e,t,r){xe(e,t,r);if(!ce.SameValue(e[t],r)){throw new TypeError("property is nonconfigurable")}};var Ae=function(e,t,r,n){if(!ce.TypeIsObject(e)){throw new TypeError("Constructor requires `new`: "+t.name)}var o=t.prototype;if(!ce.TypeIsObject(o)){o=r}var i=O(o);for(var a in n){if(z(n,a)){var u=n[a];h(i,a,u,true)}}return i};if(String.fromCodePoint&&String.fromCodePoint.length!==1){var Re=String.fromCodePoint;ne(String,"fromCodePoint",function fromCodePoint(e){return ce.Call(Re,this,arguments)})}var _e={fromCodePoint:function fromCodePoint(e){var t=[];var r;for(var n=0,o=arguments.length;n<o;n++){r=Number(arguments[n]);if(!ce.SameValue(r,ce.ToInteger(r))||r<0||r>1114111){throw new RangeError("Invalid code point "+r)}if(r<65536){M(t,String.fromCharCode(r))}else{r-=65536;M(t,String.fromCharCode((r>>10)+55296));M(t,String.fromCharCode(r%1024+56320))}}return t.join("")},raw:function raw(e){var t=ce.ToObject(e,"bad callSite");var r=ce.ToObject(t.raw,"bad raw value");var n=r.length;var o=ce.ToLength(n);if(o<=0){return""}var i=[];var a=0;var u,f,s,c;while(a<o){u=ce.ToString(a);s=ce.ToString(r[u]);M(i,s);if(a+1>=o){break}f=a+1<arguments.length?arguments[a+1]:"";c=ce.ToString(f);M(i,c);a+=1}return i.join("")}};if(String.raw&&String.raw({raw:{0:"x",1:"y",length:2}})!=="xy"){ne(String,"raw",_e.raw)}b(String,_e);var ke=function repeat(e,t){if(t<1){return""}if(t%2){return repeat(e,t-1)+e}var r=repeat(e,t/2);return r+r};var Le=Infinity;var Fe={repeat:function repeat(e){var t=ce.ToString(ce.RequireObjectCoercible(this));var r=ce.ToInteger(e);if(r<0||r>=Le){throw new RangeError("repeat count must be less than infinity and not overflow maximum string size")}return ke(t,r)},startsWith:function startsWith(e){var t=ce.ToString(ce.RequireObjectCoercible(this));if(ce.IsRegExp(e)){throw new TypeError('Cannot call method "startsWith" with a regex')}var r=ce.ToString(e);var n;if(arguments.length>1){n=arguments[1]}var o=A(ce.ToInteger(n),0);return C(t,o,o+r.length)===r},endsWith:function endsWith(e){var t=ce.ToString(ce.RequireObjectCoercible(this));if(ce.IsRegExp(e)){throw new TypeError('Cannot call method "endsWith" with a regex')}var r=ce.ToString(e);var n=t.length;var o;if(arguments.length>1){o=arguments[1]}var i=typeof o==="undefined"?n:ce.ToInteger(o);var a=R(A(i,0),n);return C(t,a-r.length,a)===r},includes:function includes(e){if(ce.IsRegExp(e)){throw new TypeError('"includes" does not accept a RegExp')}var t=ce.ToString(e);var r;if(arguments.length>1){r=arguments[1]}return I(this,t,r)!==-1},codePointAt:function codePointAt(e){var t=ce.ToString(ce.RequireObjectCoercible(this));var r=ce.ToInteger(e);var n=t.length;if(r>=0&&r<n){var o=t.charCodeAt(r);var i=r+1===n;if(o<55296||o>56319||i){return o}var a=t.charCodeAt(r+1);if(a<56320||a>57343){return o}return(o-55296)*1024+(a-56320)+65536}}};if(String.prototype.includes&&"a".includes("a",Infinity)!==false){ne(String.prototype,"includes",Fe.includes)}if(String.prototype.startsWith&&String.prototype.endsWith){var De=i(function(){return"/a/".startsWith(/a/)});var ze=a(function(){return"abc".startsWith("a",Infinity)===false});if(!De||!ze){ne(String.prototype,"startsWith",Fe.startsWith);ne(String.prototype,"endsWith",Fe.endsWith)}}if(oe){var qe=a(function(){var e=/a/;e[$.match]=false;return"/a/".startsWith(e)});if(!qe){ne(String.prototype,"startsWith",Fe.startsWith)}var We=a(function(){var e=/a/;e[$.match]=false;return"/a/".endsWith(e)});if(!We){ne(String.prototype,"endsWith",Fe.endsWith)}var Ge=a(function(){var e=/a/;e[$.match]=false;return"/a/".includes(e)});if(!Ge){ne(String.prototype,"includes",Fe.includes)}}b(String.prototype,Fe);var He=["\t\n\x0B\f\r \xa0\u1680\u180e\u2000\u2001\u2002\u2003","\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028","\u2029\ufeff"].join("");var Ve=new RegExp("(^["+He+"]+)|(["+He+"]+$)","g");var Be=function trim(){return ce.ToString(ce.RequireObjectCoercible(this)).replace(Ve,"")};var Ue=["\x85","\u200b","\ufffe"].join("");var $e=new RegExp("["+Ue+"]","g");var Je=/^[-+]0x[0-9a-f]+$/i;var Xe=Ue.trim().length!==Ue.length;h(String.prototype,"trim",Be,Xe);var Ke=function(e){return{value:e,done:arguments.length===0}};var Ze=function(e){ce.RequireObjectCoercible(e);this._s=ce.ToString(e);this._i=0};Ze.prototype.next=function(){var e=this._s;var t=this._i;if(typeof e==="undefined"||t>=e.length){this._s=void 0;return Ke()}var r=e.charCodeAt(t);var n,o;if(r<55296||r>56319||t+1===e.length){o=1}else{n=e.charCodeAt(t+1);o=n<56320||n>57343?1:2}this._i=t+o;return Ke(e.substr(t,o))};Me(Ze.prototype);Me(String.prototype,function(){return new Ze(this)});var Ye={from:function from(e){var r=this;var n;if(arguments.length>1){n=arguments[1]}var o,i;if(typeof n==="undefined"){o=false}else{if(!ce.IsCallable(n)){throw new TypeError("Array.from: when provided, the second argument must be a function")}if(arguments.length>2){i=arguments[2]}o=true}var a=typeof(te(e)||ce.GetMethod(e,ie))!=="undefined";var u,f,s;if(a){f=ce.IsConstructor(r)?Object(new r):[];var c=ce.GetIterator(e);var l,p;s=0;while(true){l=ce.IteratorStep(c);if(l===false){break}p=l.value;try{if(o){p=typeof i==="undefined"?n(p,s):t(n,i,p,s)}f[s]=p}catch(v){ce.IteratorClose(c,true);throw v}s+=1}u=s}else{var y=ce.ToObject(e);u=ce.ToLength(y.length);f=ce.IsConstructor(r)?Object(new r(u)):new Array(u);var h;for(s=0;s<u;++s){h=y[s];if(o){h=typeof i==="undefined"?n(h,s):t(n,i,h,s)}Ne(f,s,h)}}f.length=u;return f},of:function of(){var e=arguments.length;var t=this;var n=r(t)||!ce.IsCallable(t)?new Array(e):ce.Construct(t,[e]);for(var o=0;o<e;++o){Ne(n,o,arguments[o])}n.length=e;return n}};b(Array,Ye);Ce(Array);q=function(e,t){this.i=0;this.array=e;this.kind=t};b(q.prototype,{next:function(){var e=this.i;var t=this.array;if(!(this instanceof q)){throw new TypeError("Not an ArrayIterator")}if(typeof t!=="undefined"){var r=ce.ToLength(t.length);for(;e<r;e++){var n=this.kind;var o;if(n==="key"){o=e}else if(n==="value"){o=t[e]}else if(n==="entry"){o=[e,t[e]]}this.i=e+1;return Ke(o)}}this.array=void 0;return Ke()}});Me(q.prototype);var Qe=Array.of===Ye.of||function(){var e=function Foo(e){this.length=e};e.prototype=[];var t=Array.of.apply(e,[1,2]);return t instanceof e&&t.length===2}();if(!Qe){ne(Array,"of",Ye.of)}var et={copyWithin:function copyWithin(e,t){var r=ce.ToObject(this);var n=ce.ToLength(r.length);var o=ce.ToInteger(e);var i=ce.ToInteger(t);var a=o<0?A(n+o,0):R(o,n);var u=i<0?A(n+i,0):R(i,n);var f;if(arguments.length>2){f=arguments[2]}var s=typeof f==="undefined"?n:ce.ToInteger(f);var c=s<0?A(n+s,0):R(s,n);var l=R(c-u,n-a);var p=1;if(u<a&&a<u+l){p=-1;u+=l-1;a+=l-1}while(l>0){if(u in r){r[a]=r[u]}else{delete r[a]}u+=p;a+=p;l-=1}return r},fill:function fill(e){var t;if(arguments.length>1){t=arguments[1]}var r;if(arguments.length>2){r=arguments[2]}var n=ce.ToObject(this);var o=ce.ToLength(n.length);t=ce.ToInteger(typeof t==="undefined"?0:t);r=ce.ToInteger(typeof r==="undefined"?o:r);var i=t<0?A(o+t,0):R(t,o);var a=r<0?o+r:r;for(var u=i;u<o&&u<a;++u){n[u]=e}return n},find:function find(e){var r=ce.ToObject(this);var n=ce.ToLength(r.length);if(!ce.IsCallable(e)){throw new TypeError("Array#find: predicate must be a function")}var o=arguments.length>1?arguments[1]:null;for(var i=0,a;i<n;i++){a=r[i];if(o){if(t(e,o,a,i,r)){return a}}else if(e(a,i,r)){return a}}},findIndex:function findIndex(e){var r=ce.ToObject(this);var n=ce.ToLength(r.length);if(!ce.IsCallable(e)){throw new TypeError("Array#findIndex: predicate must be a function")}var o=arguments.length>1?arguments[1]:null;for(var i=0;i<n;i++){if(o){if(t(e,o,r[i],i,r)){return i}}else if(e(r[i],i,r)){return i}}return-1},keys:function keys(){return new q(this,"key")},values:function values(){return new q(this,"value")},entries:function entries(){return new q(this,"entry")}};if(Array.prototype.keys&&!ce.IsCallable([1].keys().next)){delete Array.prototype.keys}if(Array.prototype.entries&&!ce.IsCallable([1].entries().next)){delete Array.prototype.entries}if(Array.prototype.keys&&Array.prototype.entries&&!Array.prototype.values&&Array.prototype[ie]){b(Array.prototype,{values:Array.prototype[ie]});if(re.symbol($.unscopables)){Array.prototype[$.unscopables].values=true}}if(c&&Array.prototype.values&&Array.prototype.values.name!=="values"){var tt=Array.prototype.values;ne(Array.prototype,"values",function values(){return ce.Call(tt,this,arguments)});h(Array.prototype,ie,Array.prototype.values,true)}b(Array.prototype,et);if(1/[true].indexOf(true,-0)<0){h(Array.prototype,"indexOf",function indexOf(e){var t=E(this,arguments);if(t===0&&1/t<0){return 0}return t},true)}Me(Array.prototype,function(){return this.values()});if(Object.getPrototypeOf){Me(Object.getPrototypeOf([].values()))}var rt=function(){return a(function(){return Array.from({length:-1}).length===0})}();var nt=function(){var e=Array.from([0].entries());return e.length===1&&r(e[0])&&e[0][0]===0&&e[0][1]===0}();if(!rt||!nt){ne(Array,"from",Ye.from)}var ot=function(){return a(function(){return Array.from([0],void 0)})}();if(!ot){var it=Array.from;ne(Array,"from",function from(e){if(arguments.length>1&&typeof arguments[1]!=="undefined"){return ce.Call(it,this,arguments)}else{return t(it,this,e)}})}var at=-(Math.pow(2,32)-1);var ut=function(e,r){var n={length:at};n[r?(n.length>>>0)-1:0]=true;return a(function(){t(e,n,function(){throw new RangeError("should not reach here")},[]);return true})};if(!ut(Array.prototype.forEach)){var ft=Array.prototype.forEach;ne(Array.prototype,"forEach",function forEach(e){return ce.Call(ft,this.length>=0?this:[],arguments)},true)}if(!ut(Array.prototype.map)){var st=Array.prototype.map;ne(Array.prototype,"map",function map(e){return ce.Call(st,this.length>=0?this:[],arguments)},true)}if(!ut(Array.prototype.filter)){var ct=Array.prototype.filter;ne(Array.prototype,"filter",function filter(e){return ce.Call(ct,this.length>=0?this:[],arguments)},true)}if(!ut(Array.prototype.some)){var lt=Array.prototype.some;ne(Array.prototype,"some",function some(e){return ce.Call(lt,this.length>=0?this:[],arguments)},true)}if(!ut(Array.prototype.every)){var pt=Array.prototype.every;ne(Array.prototype,"every",function every(e){return ce.Call(pt,this.length>=0?this:[],arguments)},true)}if(!ut(Array.prototype.reduce)){var vt=Array.prototype.reduce;ne(Array.prototype,"reduce",function reduce(e){return ce.Call(vt,this.length>=0?this:[],arguments)},true)}if(!ut(Array.prototype.reduceRight,true)){var yt=Array.prototype.reduceRight;ne(Array.prototype,"reduceRight",function reduceRight(e){return ce.Call(yt,this.length>=0?this:[],arguments)},true)}var ht=Number("0o10")!==8;var bt=Number("0b10")!==2;var gt=y(Ue,function(e){return Number(e+0+e)===0});if(ht||bt||gt){var dt=Number;var mt=/^0b[01]+$/i;var Ot=/^0o[0-7]+$/i;var wt=mt.test.bind(mt);var jt=Ot.test.bind(Ot);var St=function(e){var t;if(typeof e.valueOf==="function"){t=e.valueOf();if(re.primitive(t)){return t}}if(typeof e.toString==="function"){t=e.toString();if(re.primitive(t)){return t}}throw new TypeError("No default value")};var Tt=$e.test.bind($e);var It=Je.test.bind(Je);var Et=function(){var e=function Number(t){var r;if(arguments.length>0){r=re.primitive(t)?t:St(t,"number")}else{r=0}if(typeof r==="string"){r=ce.Call(Be,r);if(wt(r)){r=parseInt(C(r,2),2)}else if(jt(r)){r=parseInt(C(r,2),8)}else if(Tt(r)||It(r)){r=NaN}}var n=this;var o=a(function(){dt.prototype.valueOf.call(n);return true});if(n instanceof e&&!o){return new dt(r)}return dt(r)};return e}();Ee(dt,Et,{});b(Et,{NaN:dt.NaN,MAX_VALUE:dt.MAX_VALUE,MIN_VALUE:dt.MIN_VALUE,NEGATIVE_INFINITY:dt.NEGATIVE_INFINITY,POSITIVE_INFINITY:dt.POSITIVE_INFINITY});Number=Et;m.redefine(S,"Number",Et)}var Pt=Math.pow(2,53)-1;b(Number,{MAX_SAFE_INTEGER:Pt,MIN_SAFE_INTEGER:-Pt,EPSILON:2.220446049250313e-16,parseInt:S.parseInt,parseFloat:S.parseFloat,isFinite:K,isInteger:function isInteger(e){return K(e)&&ce.ToInteger(e)===e},isSafeInteger:function isSafeInteger(e){return Number.isInteger(e)&&k(e)<=Number.MAX_SAFE_INTEGER},isNaN:X});h(Number,"parseInt",S.parseInt,Number.parseInt!==S.parseInt);if([,1].find(function(){return true})===1){ne(Array.prototype,"find",et.find)}if([,1].findIndex(function(){return true})!==0){ne(Array.prototype,"findIndex",et.findIndex)}var Ct=Function.bind.call(Function.bind,Object.prototype.propertyIsEnumerable);var Mt=function ensureEnumerable(e,t){if(s&&Ct(e,t)){Object.defineProperty(e,t,{enumerable:false})}};var xt=function sliceArgs(){var e=Number(this);var t=arguments.length;var r=t-e;var n=new Array(r<0?0:r);for(var o=e;o<t;++o){n[o-e]=arguments[o]}return n};var Nt=function assignTo(e){return function assignToSource(t,r){t[r]=e[r];return t}};var At=function(e,t){var r=n(Object(t));var o;if(ce.IsCallable(Object.getOwnPropertySymbols)){o=v(Object.getOwnPropertySymbols(Object(t)),Ct(t))}return p(P(r,o||[]),Nt(t),e)};var Rt={assign:function(e,t){var r=ce.ToObject(e,"Cannot convert undefined or null to object");return p(ce.Call(xt,1,arguments),At,r)},is:function is(e,t){return ce.SameValue(e,t)}};var _t=Object.assign&&Object.preventExtensions&&function(){var e=Object.preventExtensions({1:2});try{Object.assign(e,"xy")}catch(t){return e[1]==="y"}}();if(_t){ne(Object,"assign",Rt.assign)}b(Object,Rt);if(s){var kt={setPrototypeOf:function(e,r){var n;var o=function(e,t){if(!ce.TypeIsObject(e)){throw new TypeError("cannot set prototype on a non-object")}if(!(t===null||ce.TypeIsObject(t))){throw new TypeError("can only set prototype to an object or null"+t)}};var i=function(e,r){o(e,r);t(n,e,r);return e};try{n=e.getOwnPropertyDescriptor(e.prototype,r).set;t(n,{},null)}catch(a){if(e.prototype!=={}[r]){return}n=function(e){this[r]=e};i.polyfill=i(i({},null),e.prototype)instanceof e}return i}(Object,"__proto__")};b(Object,kt)}if(Object.setPrototypeOf&&Object.getPrototypeOf&&Object.getPrototypeOf(Object.setPrototypeOf({},null))!==null&&Object.getPrototypeOf(Object.create(null))===null){(function(){var e=Object.create(null);var t=Object.getPrototypeOf;var r=Object.setPrototypeOf;Object.getPrototypeOf=function(r){var n=t(r);return n===e?null:n};Object.setPrototypeOf=function(t,n){var o=n===null?e:n;return r(t,o)};Object.setPrototypeOf.polyfill=false})()}var Lt=!i(function(){return Object.keys("foo")});if(!Lt){var Ft=Object.keys;ne(Object,"keys",function keys(e){return Ft(ce.ToObject(e))});n=Object.keys}var Dt=i(function(){return Object.keys(/a/g)});if(Dt){var zt=Object.keys;ne(Object,"keys",function keys(e){if(re.regex(e)){var t=[];for(var r in e){if(z(e,r)){M(t,r)}}return t}return zt(e)});n=Object.keys}if(Object.getOwnPropertyNames){var qt=!i(function(){return Object.getOwnPropertyNames("foo")});if(!qt){var Wt=typeof window==="object"?Object.getOwnPropertyNames(window):[];var Gt=Object.getOwnPropertyNames;ne(Object,"getOwnPropertyNames",function getOwnPropertyNames(e){var t=ce.ToObject(e);if(g(t)==="[object Window]"){try{return Gt(t)}catch(r){return P([],Wt)}}return Gt(t)})}}if(Object.getOwnPropertyDescriptor){var Ht=!i(function(){return Object.getOwnPropertyDescriptor("foo","bar")});if(!Ht){var Vt=Object.getOwnPropertyDescriptor;ne(Object,"getOwnPropertyDescriptor",function getOwnPropertyDescriptor(e,t){return Vt(ce.ToObject(e),t)})}}if(Object.seal){var Bt=!i(function(){return Object.seal("foo")});if(!Bt){var Ut=Object.seal;ne(Object,"seal",function seal(e){if(!ce.TypeIsObject(e)){return e}return Ut(e)})}}if(Object.isSealed){var $t=!i(function(){return Object.isSealed("foo")});if(!$t){var Jt=Object.isSealed;ne(Object,"isSealed",function isSealed(e){if(!ce.TypeIsObject(e)){return true}return Jt(e)})}}if(Object.freeze){var Xt=!i(function(){return Object.freeze("foo")});if(!Xt){var Kt=Object.freeze;ne(Object,"freeze",function freeze(e){if(!ce.TypeIsObject(e)){return e}return Kt(e)})}}if(Object.isFrozen){var Zt=!i(function(){return Object.isFrozen("foo")});if(!Zt){var Yt=Object.isFrozen;ne(Object,"isFrozen",function isFrozen(e){if(!ce.TypeIsObject(e)){return true}return Yt(e)})}}if(Object.preventExtensions){var Qt=!i(function(){return Object.preventExtensions("foo")});if(!Qt){var er=Object.preventExtensions;ne(Object,"preventExtensions",function preventExtensions(e){if(!ce.TypeIsObject(e)){return e}return er(e)})}}if(Object.isExtensible){var tr=!i(function(){return Object.isExtensible("foo")});if(!tr){var rr=Object.isExtensible;ne(Object,"isExtensible",function isExtensible(e){if(!ce.TypeIsObject(e)){return false}return rr(e)})}}if(Object.getPrototypeOf){var nr=!i(function(){return Object.getPrototypeOf("foo")});if(!nr){var or=Object.getPrototypeOf;ne(Object,"getPrototypeOf",function getPrototypeOf(e){return or(ce.ToObject(e))})}}var ir=s&&function(){var e=Object.getOwnPropertyDescriptor(RegExp.prototype,"flags");return e&&ce.IsCallable(e.get)}();if(s&&!ir){var ar=function flags(){if(!ce.TypeIsObject(this)){throw new TypeError("Method called on incompatible type: must be an object.")}var e="";if(this.global){e+="g"}if(this.ignoreCase){e+="i"}if(this.multiline){e+="m"}if(this.unicode){e+="u"}if(this.sticky){e+="y"}return e};m.getter(RegExp.prototype,"flags",ar)}var ur=s&&a(function(){return String(new RegExp(/a/g,"i"))==="/a/i"});var fr=oe&&s&&function(){var e=/./;e[$.match]=false;return RegExp(e)===e}();var sr=a(function(){return RegExp.prototype.toString.call({source:"abc"})==="/abc/"});var cr=sr&&a(function(){return RegExp.prototype.toString.call({source:"a",flags:"b"})==="/a/b"});if(!sr||!cr){var lr=RegExp.prototype.toString;h(RegExp.prototype,"toString",function toString(){var e=ce.RequireObjectCoercible(this);if(re.regex(e)){return t(lr,e)}var r=ue(e.source);var n=ue(e.flags);return"/"+r+"/"+n},true);m.preserveToString(RegExp.prototype.toString,lr)}if(s&&(!ur||fr)){var pr=Object.getOwnPropertyDescriptor(RegExp.prototype,"flags").get;var vr=Object.getOwnPropertyDescriptor(RegExp.prototype,"source")||{};var yr=function(){return this.source};var hr=ce.IsCallable(vr.get)?vr.get:yr;var br=RegExp;var gr=function(){return function RegExp(e,t){var r=ce.IsRegExp(e);var n=this instanceof RegExp;if(!n&&r&&typeof t==="undefined"&&e.constructor===RegExp){return e}var o=e;var i=t;if(re.regex(e)){o=ce.Call(hr,e);i=typeof t==="undefined"?ce.Call(pr,e):t;return new RegExp(o,i)}else if(r){o=e.source;i=typeof t==="undefined"?e.flags:t}return new br(e,t)}}();Ee(br,gr,{$input:true});RegExp=gr;m.redefine(S,"RegExp",gr)}if(s){var dr={input:"$_",lastMatch:"$&",lastParen:"$+",leftContext:"$`",rightContext:"$'"};l(n(dr),function(e){if(e in RegExp&&!(dr[e]in RegExp)){m.getter(RegExp,dr[e],function get(){return RegExp[e]})}})}Ce(RegExp);var mr=1/Number.EPSILON;var Or=function roundTiesToEven(e){return e+mr-mr};var wr=Math.pow(2,-23);var jr=Math.pow(2,127)*(2-wr);var Sr=Math.pow(2,-126);var Tr=Math.E;var Ir=Math.LOG2E;var Er=Math.LOG10E;var Pr=Number.prototype.clz;delete Number.prototype.clz;var Cr={acosh:function acosh(e){var t=Number(e);if(X(t)||e<1){return NaN}if(t===1){return 0}if(t===Infinity){return t}var r=1/(t*t);if(t<2){return Y(t-1+D(1-r)*t)}var n=t/2;return Y(n+D(1-r)*n-1)+1/Ir},asinh:function asinh(e){var t=Number(e);if(t===0||!T(t)){return t}var r=k(t);var n=r*r;var o=Z(t);if(r<1){return o*Y(r+n/(D(n+1)+1))}return o*(Y(r/2+D(1+1/n)*r/2-1)+1/Ir)},atanh:function atanh(e){var t=Number(e);if(t===0){return t}if(t===-1){return-Infinity}if(t===1){return Infinity}if(X(t)||t<-1||t>1){return NaN}var r=k(t);return Z(t)*Y(2*r/(1-r))/2},cbrt:function cbrt(e){var t=Number(e);if(t===0){return t}var r=t<0;var n;if(r){t=-t}if(t===Infinity){n=Infinity}else{n=L(F(t)/3);n=(t/(n*n)+2*n)/3}return r?-n:n},clz32:function clz32(e){var t=Number(e);var r=ce.ToUint32(t);if(r===0){return 32}return Pr?ce.Call(Pr,r):31-_(F(r+.5)*Ir)},cosh:function cosh(e){var t=Number(e);if(t===0){return 1}if(X(t)){return NaN}if(!T(t)){return Infinity}var r=L(k(t)-1);return(r+1/(r*Tr*Tr))*(Tr/2)},expm1:function expm1(e){var t=Number(e);if(t===-Infinity){return-1}if(!T(t)||t===0){return t}if(k(t)>.5){return L(t)-1}var r=t;var n=0;var o=1;while(n+r!==n){n+=r;o+=1;r*=t/o}return n},hypot:function hypot(e,t){var r=0;var n=0;for(var o=0;o<arguments.length;++o){var i=k(Number(arguments[o]));if(n<i){r*=n/i*(n/i);r+=1;n=i}else{r+=i>0?i/n*(i/n):i}}return n===Infinity?Infinity:n*D(r)},log2:function log2(e){return F(e)*Ir},log10:function log10(e){return F(e)*Er},log1p:Y,sign:Z,sinh:function sinh(e){var t=Number(e);if(!T(t)||t===0){return t}var r=k(t);if(r<1){var n=Math.expm1(r);return Z(t)*n*(1+1/(n+1))/2}var o=L(r-1);return Z(t)*(o-1/(o*Tr*Tr))*(Tr/2)},tanh:function tanh(e){var t=Number(e);if(X(t)||t===0){return t}if(t>=20){return 1}if(t<=-20){return-1}return(Math.expm1(t)-Math.expm1(-t))/(L(t)+L(-t))},trunc:function trunc(e){var t=Number(e);return t<0?-_(-t):_(t)},imul:function imul(e,t){var r=ce.ToUint32(e);var n=ce.ToUint32(t);var o=r>>>16&65535;var i=r&65535;var a=n>>>16&65535;var u=n&65535;return i*u+(o*u+i*a<<16>>>0)|0},fround:function fround(e){var t=Number(e);if(t===0||t===Infinity||t===-Infinity||X(t)){return t}var r=Z(t);var n=k(t);if(n<Sr){return r*Or(n/Sr/wr)*Sr*wr}var o=(1+wr/Number.EPSILON)*n;var i=o-(o-n);if(i>jr||X(i)){return r*Infinity}return r*i}};var Mr=function withinULPDistance(e,t,r){return k(1-e/t)/Number.EPSILON<(r||8)};b(Math,Cr);h(Math,"sinh",Cr.sinh,Math.sinh(710)===Infinity);h(Math,"cosh",Cr.cosh,Math.cosh(710)===Infinity);h(Math,"log1p",Cr.log1p,Math.log1p(-1e-17)!==-1e-17);h(Math,"asinh",Cr.asinh,Math.asinh(-1e7)!==-Math.asinh(1e7));h(Math,"asinh",Cr.asinh,Math.asinh(1e300)===Infinity);h(Math,"atanh",Cr.atanh,Math.atanh(1e-300)===0);h(Math,"tanh",Cr.tanh,Math.tanh(-2e-17)!==-2e-17);
h(Math,"acosh",Cr.acosh,Math.acosh(Number.MAX_VALUE)===Infinity);h(Math,"acosh",Cr.acosh,!Mr(Math.acosh(1+Number.EPSILON),Math.sqrt(2*Number.EPSILON)));h(Math,"cbrt",Cr.cbrt,!Mr(Math.cbrt(1e-300),1e-100));h(Math,"sinh",Cr.sinh,Math.sinh(-2e-17)!==-2e-17);var xr=Math.expm1(10);h(Math,"expm1",Cr.expm1,xr>22025.465794806718||xr<22025.465794806718);var Nr=Math.round;var Ar=Math.round(.5-Number.EPSILON/4)===0&&Math.round(-.5+Number.EPSILON/3.99)===1;var Rr=mr+1;var _r=2*mr-1;var kr=[Rr,_r].every(function(e){return Math.round(e)===e});h(Math,"round",function round(e){var t=_(e);var r=t===-1?-0:t+1;return e-t<.5?t:r},!Ar||!kr);m.preserveToString(Math.round,Nr);var Lr=Math.imul;if(Math.imul(4294967295,5)!==-5){Math.imul=Cr.imul;m.preserveToString(Math.imul,Lr)}if(Math.imul.length!==2){ne(Math,"imul",function imul(e,t){return ce.Call(Lr,Math,arguments)})}var Fr=function(){var e=S.setTimeout;if(typeof e!=="function"&&typeof e!=="object"){return}ce.IsPromise=function(e){if(!ce.TypeIsObject(e)){return false}if(typeof e._promise==="undefined"){return false}return true};var r=function(e){if(!ce.IsConstructor(e)){throw new TypeError("Bad promise constructor")}var t=this;var r=function(e,r){if(t.resolve!==void 0||t.reject!==void 0){throw new TypeError("Bad Promise implementation!")}t.resolve=e;t.reject=r};t.resolve=void 0;t.reject=void 0;t.promise=new e(r);if(!(ce.IsCallable(t.resolve)&&ce.IsCallable(t.reject))){throw new TypeError("Bad promise constructor")}};var n;if(typeof window!=="undefined"&&ce.IsCallable(window.postMessage)){n=function(){var e=[];var t="zero-timeout-message";var r=function(r){M(e,r);window.postMessage(t,"*")};var n=function(r){if(r.source===window&&r.data===t){r.stopPropagation();if(e.length===0){return}var n=N(e);n()}};window.addEventListener("message",n,true);return r}}var o=function(){var e=S.Promise;var t=e&&e.resolve&&e.resolve();return t&&function(e){return t.then(e)}};var i=ce.IsCallable(S.setImmediate)?S.setImmediate:typeof process==="object"&&process.nextTick?process.nextTick:o()||(ce.IsCallable(n)?n():function(t){e(t,0)});var a=function(e){return e};var u=function(e){throw e};var f=0;var s=1;var c=2;var l=0;var p=1;var v=2;var y={};var h=function(e,t,r){i(function(){g(e,t,r)})};var g=function(e,t,r){var n,o;if(t===y){return e(r)}try{n=e(r);o=t.resolve}catch(i){n=i;o=t.reject}o(n)};var d=function(e,t){var r=e._promise;var n=r.reactionLength;if(n>0){h(r.fulfillReactionHandler0,r.reactionCapability0,t);r.fulfillReactionHandler0=void 0;r.rejectReactions0=void 0;r.reactionCapability0=void 0;if(n>1){for(var o=1,i=0;o<n;o++,i+=3){h(r[i+l],r[i+v],t);e[i+l]=void 0;e[i+p]=void 0;e[i+v]=void 0}}}r.result=t;r.state=s;r.reactionLength=0};var m=function(e,t){var r=e._promise;var n=r.reactionLength;if(n>0){h(r.rejectReactionHandler0,r.reactionCapability0,t);r.fulfillReactionHandler0=void 0;r.rejectReactions0=void 0;r.reactionCapability0=void 0;if(n>1){for(var o=1,i=0;o<n;o++,i+=3){h(r[i+p],r[i+v],t);e[i+l]=void 0;e[i+p]=void 0;e[i+v]=void 0}}}r.result=t;r.state=c;r.reactionLength=0};var O=function(e){var t=false;var r=function(r){var n;if(t){return}t=true;if(r===e){return m(e,new TypeError("Self resolution"))}if(!ce.TypeIsObject(r)){return d(e,r)}try{n=r.then}catch(o){return m(e,o)}if(!ce.IsCallable(n)){return d(e,r)}i(function(){j(e,r,n)})};var n=function(r){if(t){return}t=true;return m(e,r)};return{resolve:r,reject:n}};var w=function(e,r,n,o){if(e===I){t(e,r,n,o,y)}else{t(e,r,n,o)}};var j=function(e,t,r){var n=O(e);var o=n.resolve;var i=n.reject;try{w(r,t,o,i)}catch(a){i(a)}};var T,I;var E=function(){var e=function Promise(t){if(!(this instanceof e)){throw new TypeError('Constructor Promise requires "new"')}if(this&&this._promise){throw new TypeError("Bad construction")}if(!ce.IsCallable(t)){throw new TypeError("not a valid resolver")}var r=Ae(this,e,T,{_promise:{result:void 0,state:f,reactionLength:0,fulfillReactionHandler0:void 0,rejectReactionHandler0:void 0,reactionCapability0:void 0}});var n=O(r);var o=n.reject;try{t(n.resolve,o)}catch(i){o(i)}return r};return e}();T=E.prototype;var P=function(e,t,r,n){var o=false;return function(i){if(o){return}o=true;t[e]=i;if(--n.count===0){var a=r.resolve;a(t)}}};var C=function(e,t,r){var n=e.iterator;var o=[];var i={count:1};var a,u;var f=0;while(true){try{a=ce.IteratorStep(n);if(a===false){e.done=true;break}u=a.value}catch(s){e.done=true;throw s}o[f]=void 0;var c=t.resolve(u);var l=P(f,o,r,i);i.count+=1;w(c.then,c,l,r.reject);f+=1}if(--i.count===0){var p=r.resolve;p(o)}return r.promise};var x=function(e,t,r){var n=e.iterator;var o,i,a;while(true){try{o=ce.IteratorStep(n);if(o===false){e.done=true;break}i=o.value}catch(u){e.done=true;throw u}a=t.resolve(i);w(a.then,a,r.resolve,r.reject)}return r.promise};b(E,{all:function all(e){var t=this;if(!ce.TypeIsObject(t)){throw new TypeError("Promise is not object")}var n=new r(t);var o,i;try{o=ce.GetIterator(e);i={iterator:o,done:false};return C(i,t,n)}catch(a){var u=a;if(i&&!i.done){try{ce.IteratorClose(o,true)}catch(f){u=f}}var s=n.reject;s(u);return n.promise}},race:function race(e){var t=this;if(!ce.TypeIsObject(t)){throw new TypeError("Promise is not object")}var n=new r(t);var o,i;try{o=ce.GetIterator(e);i={iterator:o,done:false};return x(i,t,n)}catch(a){var u=a;if(i&&!i.done){try{ce.IteratorClose(o,true)}catch(f){u=f}}var s=n.reject;s(u);return n.promise}},reject:function reject(e){var t=this;if(!ce.TypeIsObject(t)){throw new TypeError("Bad promise constructor")}var n=new r(t);var o=n.reject;o(e);return n.promise},resolve:function resolve(e){var t=this;if(!ce.TypeIsObject(t)){throw new TypeError("Bad promise constructor")}if(ce.IsPromise(e)){var n=e.constructor;if(n===t){return e}}var o=new r(t);var i=o.resolve;i(e);return o.promise}});b(T,{"catch":function(e){return this.then(null,e)},then:function then(e,t){var n=this;if(!ce.IsPromise(n)){throw new TypeError("not a promise")}var o=ce.SpeciesConstructor(n,E);var i;var b=arguments.length>2&&arguments[2]===y;if(b&&o===E){i=y}else{i=new r(o)}var g=ce.IsCallable(e)?e:a;var d=ce.IsCallable(t)?t:u;var m=n._promise;var O;if(m.state===f){if(m.reactionLength===0){m.fulfillReactionHandler0=g;m.rejectReactionHandler0=d;m.reactionCapability0=i}else{var w=3*(m.reactionLength-1);m[w+l]=g;m[w+p]=d;m[w+v]=i}m.reactionLength+=1}else if(m.state===s){O=m.result;h(g,i,O)}else if(m.state===c){O=m.result;h(d,i,O)}else{throw new TypeError("unexpected Promise state")}return i.promise}});y=new r(E);I=T.then;return E}();if(S.Promise){delete S.Promise.accept;delete S.Promise.defer;delete S.Promise.prototype.chain}if(typeof Fr==="function"){b(S,{Promise:Fr});var Dr=w(S.Promise,function(e){return e.resolve(42).then(function(){})instanceof e});var zr=!i(function(){return S.Promise.reject(42).then(null,5).then(null,W)});var qr=i(function(){return S.Promise.call(3,W)});var Wr=function(e){var t=e.resolve(5);t.constructor={};var r=e.resolve(t);try{r.then(null,W).then(null,W)}catch(n){return true}return t===r}(S.Promise);var Gr=s&&function(){var e=0;var t=Object.defineProperty({},"then",{get:function(){e+=1}});Promise.resolve(t);return e===1}();var Hr=function BadResolverPromise(e){var t=new Promise(e);e(3,function(){});this.then=t.then;this.constructor=BadResolverPromise};Hr.prototype=Promise.prototype;Hr.all=Promise.all;var Vr=a(function(){return!!Hr.all([1,2])});if(!Dr||!zr||!qr||Wr||!Gr||Vr){Promise=Fr;ne(S,"Promise",Fr)}if(Promise.all.length!==1){var Br=Promise.all;ne(Promise,"all",function all(e){return ce.Call(Br,this,arguments)})}if(Promise.race.length!==1){var Ur=Promise.race;ne(Promise,"race",function race(e){return ce.Call(Ur,this,arguments)})}if(Promise.resolve.length!==1){var $r=Promise.resolve;ne(Promise,"resolve",function resolve(e){return ce.Call($r,this,arguments)})}if(Promise.reject.length!==1){var Jr=Promise.reject;ne(Promise,"reject",function reject(e){return ce.Call(Jr,this,arguments)})}Mt(Promise,"all");Mt(Promise,"race");Mt(Promise,"resolve");Mt(Promise,"reject");Ce(Promise)}var Xr=function(e){var t=n(p(e,function(e,t){e[t]=true;return e},{}));return e.join(":")===t.join(":")};var Kr=Xr(["z","a","bb"]);var Zr=Xr(["z",1,"a","3",2]);if(s){var Yr=function fastkey(e,t){if(!t&&!Kr){return null}if(se(e)){return"^"+ce.ToString(e)}else if(typeof e==="string"){return"$"+e}else if(typeof e==="number"){if(!Zr){return"n"+e}return e}else if(typeof e==="boolean"){return"b"+e}return null};var Qr=function emptyObject(){return Object.create?Object.create(null):{}};var en=function addIterableToMap(e,n,o){if(r(o)||re.string(o)){l(o,function(e){if(!ce.TypeIsObject(e)){throw new TypeError("Iterator value "+e+" is not an entry object")}n.set(e[0],e[1])})}else if(o instanceof e){t(e.prototype.forEach,o,function(e,t){n.set(t,e)})}else{var i,a;if(!se(o)){a=n.set;if(!ce.IsCallable(a)){throw new TypeError("bad map")}i=ce.GetIterator(o)}if(typeof i!=="undefined"){while(true){var u=ce.IteratorStep(i);if(u===false){break}var f=u.value;try{if(!ce.TypeIsObject(f)){throw new TypeError("Iterator value "+f+" is not an entry object")}t(a,n,f[0],f[1])}catch(s){ce.IteratorClose(i,true);throw s}}}}};var tn=function addIterableToSet(e,n,o){if(r(o)||re.string(o)){l(o,function(e){n.add(e)})}else if(o instanceof e){t(e.prototype.forEach,o,function(e){n.add(e)})}else{var i,a;if(!se(o)){a=n.add;if(!ce.IsCallable(a)){throw new TypeError("bad set")}i=ce.GetIterator(o)}if(typeof i!=="undefined"){while(true){var u=ce.IteratorStep(i);if(u===false){break}var f=u.value;try{t(a,n,f)}catch(s){ce.IteratorClose(i,true);throw s}}}}};var rn={Map:function(){var e={};var r=function MapEntry(e,t){this.key=e;this.value=t;this.next=null;this.prev=null};r.prototype.isRemoved=function isRemoved(){return this.key===e};var n=function isMap(e){return!!e._es6map};var o=function requireMapSlot(e,t){if(!ce.TypeIsObject(e)||!n(e)){throw new TypeError("Method Map.prototype."+t+" called on incompatible receiver "+ce.ToString(e))}};var i=function MapIterator(e,t){o(e,"[[MapIterator]]");this.head=e._head;this.i=this.head;this.kind=t};i.prototype={isMapIterator:true,next:function next(){if(!this.isMapIterator){throw new TypeError("Not a MapIterator")}var e=this.i;var t=this.kind;var r=this.head;if(typeof this.i==="undefined"){return Ke()}while(e.isRemoved()&&e!==r){e=e.prev}var n;while(e.next!==r){e=e.next;if(!e.isRemoved()){if(t==="key"){n=e.key}else if(t==="value"){n=e.value}else{n=[e.key,e.value]}this.i=e;return Ke(n)}}this.i=void 0;return Ke()}};Me(i.prototype);var a;var u=function Map(){if(!(this instanceof Map)){throw new TypeError('Constructor Map requires "new"')}if(this&&this._es6map){throw new TypeError("Bad construction")}var e=Ae(this,Map,a,{_es6map:true,_head:null,_map:G?new G:null,_size:0,_storage:Qr()});var t=new r(null,null);t.next=t.prev=t;e._head=t;if(arguments.length>0){en(Map,e,arguments[0])}return e};a=u.prototype;m.getter(a,"size",function(){if(typeof this._size==="undefined"){throw new TypeError("size method called on incompatible Map")}return this._size});b(a,{get:function get(e){o(this,"get");var t;var r=Yr(e,true);if(r!==null){t=this._storage[r];if(t){return t.value}else{return}}if(this._map){t=V.call(this._map,e);if(t){return t.value}else{return}}var n=this._head;var i=n;while((i=i.next)!==n){if(ce.SameValueZero(i.key,e)){return i.value}}},has:function has(e){o(this,"has");var t=Yr(e,true);if(t!==null){return typeof this._storage[t]!=="undefined"}if(this._map){return B.call(this._map,e)}var r=this._head;var n=r;while((n=n.next)!==r){if(ce.SameValueZero(n.key,e)){return true}}return false},set:function set(e,t){o(this,"set");var n=this._head;var i=n;var a;var u=Yr(e,true);if(u!==null){if(typeof this._storage[u]!=="undefined"){this._storage[u].value=t;return this}else{a=this._storage[u]=new r(e,t);i=n.prev}}else if(this._map){if(B.call(this._map,e)){V.call(this._map,e).value=t}else{a=new r(e,t);U.call(this._map,e,a);i=n.prev}}while((i=i.next)!==n){if(ce.SameValueZero(i.key,e)){i.value=t;return this}}a=a||new r(e,t);if(ce.SameValue(-0,e)){a.key=+0}a.next=this._head;a.prev=this._head.prev;a.prev.next=a;a.next.prev=a;this._size+=1;return this},"delete":function(t){o(this,"delete");var r=this._head;var n=r;var i=Yr(t,true);if(i!==null){if(typeof this._storage[i]==="undefined"){return false}n=this._storage[i].prev;delete this._storage[i]}else if(this._map){if(!B.call(this._map,t)){return false}n=V.call(this._map,t).prev;H.call(this._map,t)}while((n=n.next)!==r){if(ce.SameValueZero(n.key,t)){n.key=e;n.value=e;n.prev.next=n.next;n.next.prev=n.prev;this._size-=1;return true}}return false},clear:function clear(){o(this,"clear");this._map=G?new G:null;this._size=0;this._storage=Qr();var t=this._head;var r=t;var n=r.next;while((r=n)!==t){r.key=e;r.value=e;n=r.next;r.next=r.prev=t}t.next=t.prev=t},keys:function keys(){o(this,"keys");return new i(this,"key")},values:function values(){o(this,"values");return new i(this,"value")},entries:function entries(){o(this,"entries");return new i(this,"key+value")},forEach:function forEach(e){o(this,"forEach");var r=arguments.length>1?arguments[1]:null;var n=this.entries();for(var i=n.next();!i.done;i=n.next()){if(r){t(e,r,i.value[1],i.value[0],this)}else{e(i.value[1],i.value[0],this)}}}});Me(a,a.entries);return u}(),Set:function(){var e=function isSet(e){return e._es6set&&typeof e._storage!=="undefined"};var r=function requireSetSlot(t,r){if(!ce.TypeIsObject(t)||!e(t)){throw new TypeError("Set.prototype."+r+" called on incompatible receiver "+ce.ToString(t))}};var o;var i=function Set(){if(!(this instanceof Set)){throw new TypeError('Constructor Set requires "new"')}if(this&&this._es6set){throw new TypeError("Bad construction")}var e=Ae(this,Set,o,{_es6set:true,"[[SetData]]":null,_storage:Qr()});if(!e._es6set){throw new TypeError("bad set")}if(arguments.length>0){tn(Set,e,arguments[0])}return e};o=i.prototype;var a=function(e){var t=e;if(t==="^null"){return null}else if(t==="^undefined"){return void 0}else{var r=t.charAt(0);if(r==="$"){return C(t,1)}else if(r==="n"){return+C(t,1)}else if(r==="b"){return t==="btrue"}}return+t};var u=function ensureMap(e){if(!e["[[SetData]]"]){var t=new rn.Map;e["[[SetData]]"]=t;l(n(e._storage),function(e){var r=a(e);t.set(r,r)});e["[[SetData]]"]=t}e._storage=null};m.getter(i.prototype,"size",function(){r(this,"size");if(this._storage){return n(this._storage).length}u(this);return this["[[SetData]]"].size});b(i.prototype,{has:function has(e){r(this,"has");var t;if(this._storage&&(t=Yr(e))!==null){return!!this._storage[t]}u(this);return this["[[SetData]]"].has(e)},add:function add(e){r(this,"add");var t;if(this._storage&&(t=Yr(e))!==null){this._storage[t]=true;return this}u(this);this["[[SetData]]"].set(e,e);return this},"delete":function(e){r(this,"delete");var t;if(this._storage&&(t=Yr(e))!==null){var n=z(this._storage,t);return delete this._storage[t]&&n}u(this);return this["[[SetData]]"]["delete"](e)},clear:function clear(){r(this,"clear");if(this._storage){this._storage=Qr()}if(this["[[SetData]]"]){this["[[SetData]]"].clear()}},values:function values(){r(this,"values");u(this);return new f(this["[[SetData]]"].values())},entries:function entries(){r(this,"entries");u(this);return new f(this["[[SetData]]"].entries())},forEach:function forEach(e){r(this,"forEach");var n=arguments.length>1?arguments[1]:null;var o=this;u(o);this["[[SetData]]"].forEach(function(r,i){if(n){t(e,n,i,i,o)}else{e(i,i,o)}})}});h(i.prototype,"keys",i.prototype.values,true);Me(i.prototype,i.prototype.values);var f=function SetIterator(e){this.it=e};f.prototype={isSetIterator:true,next:function next(){if(!this.isSetIterator){throw new TypeError("Not a SetIterator")}return this.it.next()}};Me(f.prototype);return i}()};var nn=S.Set&&!Set.prototype["delete"]&&Set.prototype.remove&&Set.prototype.items&&Set.prototype.map&&Array.isArray((new Set).keys);if(nn){S.Set=rn.Set}if(S.Map||S.Set){var on=a(function(){return new Map([[1,2]]).get(1)===2});if(!on){S.Map=function Map(){if(!(this instanceof Map)){throw new TypeError('Constructor Map requires "new"')}var e=new G;if(arguments.length>0){en(Map,e,arguments[0])}delete e.constructor;Object.setPrototypeOf(e,S.Map.prototype);return e};S.Map.prototype=O(G.prototype);h(S.Map.prototype,"constructor",S.Map,true);m.preserveToString(S.Map,G)}var an=new Map;var un=function(){var e=new Map([[1,0],[2,0],[3,0],[4,0]]);e.set(-0,e);return e.get(0)===e&&e.get(-0)===e&&e.has(0)&&e.has(-0)}();var fn=an.set(1,2)===an;if(!un||!fn){ne(Map.prototype,"set",function set(e,r){t(U,this,e===0?0:e,r);return this})}if(!un){b(Map.prototype,{get:function get(e){return t(V,this,e===0?0:e)},has:function has(e){return t(B,this,e===0?0:e)}},true);m.preserveToString(Map.prototype.get,V);m.preserveToString(Map.prototype.has,B)}var sn=new Set;var cn=Set.prototype["delete"]&&Set.prototype.add&&Set.prototype.has&&function(e){e["delete"](0);e.add(-0);return!e.has(0)}(sn);var ln=sn.add(1)===sn;if(!cn||!ln){var pn=Set.prototype.add;Set.prototype.add=function add(e){t(pn,this,e===0?0:e);return this};m.preserveToString(Set.prototype.add,pn)}if(!cn){var vn=Set.prototype.has;Set.prototype.has=function has(e){return t(vn,this,e===0?0:e)};m.preserveToString(Set.prototype.has,vn);var yn=Set.prototype["delete"];Set.prototype["delete"]=function SetDelete(e){return t(yn,this,e===0?0:e)};m.preserveToString(Set.prototype["delete"],yn)}var hn=w(S.Map,function(e){var t=new e([]);t.set(42,42);return t instanceof e});var bn=Object.setPrototypeOf&&!hn;var gn=function(){try{return!(S.Map()instanceof S.Map)}catch(e){return e instanceof TypeError}}();if(S.Map.length!==0||bn||!gn){S.Map=function Map(){if(!(this instanceof Map)){throw new TypeError('Constructor Map requires "new"')}var e=new G;if(arguments.length>0){en(Map,e,arguments[0])}delete e.constructor;Object.setPrototypeOf(e,Map.prototype);return e};S.Map.prototype=G.prototype;h(S.Map.prototype,"constructor",S.Map,true);m.preserveToString(S.Map,G)}var dn=w(S.Set,function(e){var t=new e([]);t.add(42,42);return t instanceof e});var mn=Object.setPrototypeOf&&!dn;var On=function(){try{return!(S.Set()instanceof S.Set)}catch(e){return e instanceof TypeError}}();if(S.Set.length!==0||mn||!On){var wn=S.Set;S.Set=function Set(){if(!(this instanceof Set)){throw new TypeError('Constructor Set requires "new"')}var e=new wn;if(arguments.length>0){tn(Set,e,arguments[0])}delete e.constructor;Object.setPrototypeOf(e,Set.prototype);return e};S.Set.prototype=wn.prototype;h(S.Set.prototype,"constructor",S.Set,true);m.preserveToString(S.Set,wn)}var jn=new S.Map;var Sn=!a(function(){return jn.keys().next().done});if(typeof S.Map.prototype.clear!=="function"||(new S.Set).size!==0||jn.size!==0||typeof S.Map.prototype.keys!=="function"||typeof S.Set.prototype.keys!=="function"||typeof S.Map.prototype.forEach!=="function"||typeof S.Set.prototype.forEach!=="function"||u(S.Map)||u(S.Set)||typeof jn.keys().next!=="function"||Sn||!hn){b(S,{Map:rn.Map,Set:rn.Set},true)}if(S.Set.prototype.keys!==S.Set.prototype.values){h(S.Set.prototype,"keys",S.Set.prototype.values,true)}Me(Object.getPrototypeOf((new S.Map).keys()));Me(Object.getPrototypeOf((new S.Set).keys()));if(c&&S.Set.prototype.has.name!=="has"){var Tn=S.Set.prototype.has;ne(S.Set.prototype,"has",function has(e){return t(Tn,this,e)})}}b(S,rn);Ce(S.Map);Ce(S.Set)}var In=function throwUnlessTargetIsObject(e){if(!ce.TypeIsObject(e)){throw new TypeError("target must be an object")}};var En={apply:function apply(){return ce.Call(ce.Call,null,arguments)},construct:function construct(e,t){if(!ce.IsConstructor(e)){throw new TypeError("First argument must be a constructor.")}var r=arguments.length>2?arguments[2]:e;if(!ce.IsConstructor(r)){throw new TypeError("new.target must be a constructor.")}return ce.Construct(e,t,r,"internal")},deleteProperty:function deleteProperty(e,t){In(e);if(s){var r=Object.getOwnPropertyDescriptor(e,t);if(r&&!r.configurable){return false}}return delete e[t]},has:function has(e,t){In(e);return t in e}};if(Object.getOwnPropertyNames){Object.assign(En,{ownKeys:function ownKeys(e){In(e);var t=Object.getOwnPropertyNames(e);if(ce.IsCallable(Object.getOwnPropertySymbols)){x(t,Object.getOwnPropertySymbols(e))}return t}})}var Pn=function ConvertExceptionToBoolean(e){return!i(e)};if(Object.preventExtensions){Object.assign(En,{isExtensible:function isExtensible(e){In(e);return Object.isExtensible(e)},preventExtensions:function preventExtensions(e){In(e);return Pn(function(){return Object.preventExtensions(e)})}})}if(s){var Cn=function get(e,t,r){var n=Object.getOwnPropertyDescriptor(e,t);if(!n){var o=Object.getPrototypeOf(e);if(o===null){return void 0}return Cn(o,t,r)}if("value"in n){return n.value}if(n.get){return ce.Call(n.get,r)}return void 0};var Mn=function set(e,r,n,o){var i=Object.getOwnPropertyDescriptor(e,r);if(!i){var a=Object.getPrototypeOf(e);if(a!==null){return Mn(a,r,n,o)}i={value:void 0,writable:true,enumerable:true,configurable:true}}if("value"in i){if(!i.writable){return false}if(!ce.TypeIsObject(o)){return false}var u=Object.getOwnPropertyDescriptor(o,r);if(u){return ae.defineProperty(o,r,{value:n})}else{return ae.defineProperty(o,r,{value:n,writable:true,enumerable:true,configurable:true})}}if(i.set){t(i.set,o,n);return true}return false};Object.assign(En,{defineProperty:function defineProperty(e,t,r){In(e);return Pn(function(){return Object.defineProperty(e,t,r)})},getOwnPropertyDescriptor:function getOwnPropertyDescriptor(e,t){In(e);return Object.getOwnPropertyDescriptor(e,t)},get:function get(e,t){In(e);var r=arguments.length>2?arguments[2]:e;return Cn(e,t,r)},set:function set(e,t,r){In(e);var n=arguments.length>3?arguments[3]:e;return Mn(e,t,r,n)}})}if(Object.getPrototypeOf){var xn=Object.getPrototypeOf;En.getPrototypeOf=function getPrototypeOf(e){In(e);return xn(e)}}if(Object.setPrototypeOf&&En.getPrototypeOf){var Nn=function(e,t){var r=t;while(r){if(e===r){return true}r=En.getPrototypeOf(r)}return false};Object.assign(En,{setPrototypeOf:function setPrototypeOf(e,t){In(e);if(t!==null&&!ce.TypeIsObject(t)){throw new TypeError("proto must be an object or null")}if(t===ae.getPrototypeOf(e)){return true}if(ae.isExtensible&&!ae.isExtensible(e)){return false}if(Nn(e,t)){return false}Object.setPrototypeOf(e,t);return true}})}var An=function(e,t){if(!ce.IsCallable(S.Reflect[e])){h(S.Reflect,e,t)}else{var r=a(function(){S.Reflect[e](1);S.Reflect[e](NaN);S.Reflect[e](true);return true});if(r){ne(S.Reflect,e,t)}}};Object.keys(En).forEach(function(e){An(e,En[e])});var Rn=S.Reflect.getPrototypeOf;if(c&&Rn&&Rn.name!=="getPrototypeOf"){ne(S.Reflect,"getPrototypeOf",function getPrototypeOf(e){return t(Rn,S.Reflect,e)})}if(S.Reflect.setPrototypeOf){if(a(function(){S.Reflect.setPrototypeOf(1,{});return true})){ne(S.Reflect,"setPrototypeOf",En.setPrototypeOf)}}if(S.Reflect.defineProperty){if(!a(function(){var e=!S.Reflect.defineProperty(1,"test",{value:1});var t=typeof Object.preventExtensions!=="function"||!S.Reflect.defineProperty(Object.preventExtensions({}),"test",{});return e&&t})){ne(S.Reflect,"defineProperty",En.defineProperty)}}if(S.Reflect.construct){if(!a(function(){var e=function F(){};return S.Reflect.construct(function(){},[],e)instanceof e})){ne(S.Reflect,"construct",En.construct)}}if(String(new Date(NaN))!=="Invalid Date"){var _n=Date.prototype.toString;var kn=function toString(){var e=+this;if(e!==e){return"Invalid Date"}return ce.Call(_n,this)};ne(Date.prototype,"toString",kn)}var Ln={anchor:function anchor(e){return ce.CreateHTML(this,"a","name",e)},big:function big(){return ce.CreateHTML(this,"big","","")},blink:function blink(){return ce.CreateHTML(this,"blink","","")},bold:function bold(){return ce.CreateHTML(this,"b","","")},fixed:function fixed(){return ce.CreateHTML(this,"tt","","")},fontcolor:function fontcolor(e){return ce.CreateHTML(this,"font","color",e)},fontsize:function fontsize(e){return ce.CreateHTML(this,"font","size",e)},italics:function italics(){return ce.CreateHTML(this,"i","","")},link:function link(e){return ce.CreateHTML(this,"a","href",e)},small:function small(){return ce.CreateHTML(this,"small","","")},strike:function strike(){return ce.CreateHTML(this,"strike","","")},sub:function sub(){return ce.CreateHTML(this,"sub","","")},sup:function sub(){return ce.CreateHTML(this,"sup","","")}};l(Object.keys(Ln),function(e){var r=String.prototype[e];var n=false;if(ce.IsCallable(r)){var o=t(r,"",' " ');var i=P([],o.match(/"/g)).length;n=o!==o.toLowerCase()||i>2}else{n=true}if(n){ne(String.prototype,e,Ln[e])}});var Fn=function(){if(!oe){return false}var e=typeof JSON==="object"&&typeof JSON.stringify==="function"?JSON.stringify:null;if(!e){return false}if(typeof e($())!=="undefined"){return true}if(e([$()])!=="[null]"){return true}var t={a:$()};t[$()]=true;if(e(t)!=="{}"){return true}return false}();var Dn=a(function(){if(!oe){return true}return JSON.stringify(Object($()))==="{}"&&JSON.stringify([Object($())])==="[{}]"});if(Fn||!Dn){var zn=JSON.stringify;ne(JSON,"stringify",function stringify(e){if(typeof e==="symbol"){return}var n;if(arguments.length>1){n=arguments[1]}var o=[e];if(!r(n)){var i=ce.IsCallable(n)?n:null;var a=function(e,r){var n=i?t(i,this,e,r):r;if(typeof n!=="symbol"){if(re.symbol(n)){return Nt({})(n)}else{return n}}};o.push(a)}else{o.push(n)}if(arguments.length>2){o.push(arguments[2])}return zn.apply(this,o)})}return S});
/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */
!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),D=function(e,t){return e===t&&(l=!0),0},j={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&j.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(D),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(D).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(D(this,e||[],!1))},not:function(e){return this.pushStack(D(this,e||[],!0))},is:function(e){return!!D(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var j,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^key/,we=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\.(.+)|)/;function Ce(){return!0}function Ee(){return!1}function Se(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function ke(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)ke(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ee;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Ae(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,Ce)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=Te.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=Te.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Ae(t,"click",Ce),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Ae(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ce:Ee,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Ee,isPropagationStopped:Ee,isImmediatePropagationStopped:Ee,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ce,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ce,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ce,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&be.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&we.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Ae(this,e,Se),!1},trigger:function(){return Ae(this,e),!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return ke(this,e,t,n,r)},one:function(e,t,n,r){return ke(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Ee),this.each(function(){S.event.remove(this,e,n,t)})}});var Ne=/<script|<style|<link/i,De=/checked\s*(?:[^=]|=\s*.checked.)/i,je=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function Pe(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&De.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),Pe(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),Le)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,He),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(je,""),u,l))}return n}function Re(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Oe(o[r],a[r]);else Oe(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Re(this,e,!0)},remove:function(e){return Re(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Pe(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)})},prepend:function(){return Pe(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ne.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Pe(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Me=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Ie=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},We=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Fe=new RegExp(ne.join("|"),"i");function Be(e,t,n){var r,i,o,a,s=e.style;return(n=n||Ie(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Me.test(a)&&Fe.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function $e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px",t.style.height="1px",n.style.height="9px",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=3<parseInt(r.height),re.removeChild(e)),a}}))}();var _e=["Webkit","Moz","ms"],ze=E.createElement("div").style,Ue={};function Xe(e){var t=S.cssProps[e]||Ue[e];return t||(e in ze?e:Ue[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=_e.length;while(n--)if((e=_e[n]+t)in ze)return e}(e)||e)}var Ve=/^(none|table(?!-c[ea]).+)/,Ge=/^--/,Ye={position:"absolute",visibility:"hidden",display:"block"},Qe={letterSpacing:"0",fontWeight:"400"};function Je(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Ke(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Ze(e,t,n){var r=Ie(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=Be(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Me.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Ke(e,t,n||(i?"border":"content"),o,r,a)+"px"}function et(e,t,n,r,i){return new et.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Be(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Ge.test(t),l=e.style;if(u||(t=Xe(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Ge.test(t)||(t=Xe(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Be(e,t,r)),"normal"===i&&t in Qe&&(i=Qe[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ve.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Ze(e,u,n):We(e,Ye,function(){return Ze(e,u,n)})},set:function(e,t,n){var r,i=Ie(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Ke(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Ke(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Je(0,t,s)}}}),S.cssHooks.marginLeft=$e(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Be(e,"marginLeft"))||e.getBoundingClientRect().left-We(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Je)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Ie(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=et).prototype={constructor:et,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=et.propHooks[this.prop];return e&&e.get?e.get(this):et.propHooks._default.get(this)},run:function(e){var t,n=et.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):et.propHooks._default.set(this),this}}).init.prototype=et.prototype,(et.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[Xe(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=et.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=et.prototype.init,S.fx.step={};var tt,nt,rt,it,ot=/^(?:toggle|show|hide)$/,at=/queueHooks$/;function st(){nt&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(st):C.setTimeout(st,S.fx.interval),S.fx.tick())}function ut(){return C.setTimeout(function(){tt=void 0}),tt=Date.now()}function lt(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ct(e,t,n){for(var r,i=(ft.tweeners[t]||[]).concat(ft.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ft(o,e,t){var n,a,r=0,i=ft.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=tt||ut(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:tt||ut(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=ft.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ct,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(ft,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ft.tweeners[n]=ft.tweeners[n]||[],ft.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],ot.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ct(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?ft.prefilters.unshift(e):ft.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=ft(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&at.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(lt(r,!0),e,t,n)}}),S.each({slideDown:lt("show"),slideUp:lt("hide"),slideToggle:lt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(tt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),tt=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){nt||(nt=!0,st())},S.fx.stop=function(){nt=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},rt=E.createElement("input"),it=E.createElement("select").appendChild(E.createElement("option")),rt.type="checkbox",y.checkOn=""!==rt.value,y.optSelected=it.selected,(rt=E.createElement("input")).value="t",rt.type="radio",y.radioValue="t"===rt.value;var pt,dt=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?pt:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),pt={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=dt[t]||S.find.attr;dt[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=dt[o],dt[o]=r,r=null!=a(e,t,n)?o:null,dt[o]=i),r}});var ht=/^(?:input|select|textarea|button)$/i,gt=/^(?:a|area)$/i;function vt(e){return(e.match(P)||[]).join(" ")}function yt(e){return e.getAttribute&&e.getAttribute("class")||""}function mt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):ht.test(e.nodeName)||gt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,yt(this)))});if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,yt(this)))});if(!arguments.length)return this.attr("class","");if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,yt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=mt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=yt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+vt(yt(n))+" ").indexOf(t))return!0;return!1}});var xt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(xt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:vt(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var bt=/^(?:focusinfocus|focusoutblur)$/,wt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!bt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,bt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,wt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,wt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var Tt=C.location,Ct={guid:Date.now()},Et=/\?/;S.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||S.error("Invalid XML: "+e),t};var St=/\[\]$/,kt=/\r?\n/g,At=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;function Dt(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||St.test(n)?i(n,t):Dt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)Dt(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)Dt(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&Nt.test(this.nodeName)&&!At.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(kt,"\r\n")}}):{name:t.name,value:n.replace(kt,"\r\n")}}).get()}});var jt=/%20/g,qt=/#.*$/,Lt=/([?&])_=[^&]*/,Ht=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ot=/^(?:GET|HEAD)$/,Pt=/^\/\//,Rt={},Mt={},It="*/".concat("*"),Wt=E.createElement("a");function Ft(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Bt(t,i,o,a){var s={},u=t===Mt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function $t(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Wt.href=Tt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Tt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Tt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":It,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?$t($t(e,S.ajaxSettings),t):$t(S.ajaxSettings,e)},ajaxPrefilter:Ft(Rt),ajaxTransport:Ft(Mt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=Ht.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||Tt.href)+"").replace(Pt,Tt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Wt.protocol+"//"+Wt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Bt(Rt,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Ot.test(v.type),f=v.url.replace(qt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(jt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Et.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Lt,"$1"),o=(Et.test(f)?"&":"?")+"_="+Ct.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+It+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Bt(Mt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var _t={0:200,1223:204},zt=S.ajaxSettings.xhr();y.cors=!!zt&&"withCredentials"in zt,y.ajax=zt=!!zt,S.ajaxTransport(function(i){var o,a;if(y.cors||zt&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(_t[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=vt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Gt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Gt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Yt=C.jQuery,Qt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Qt),e&&C.jQuery===S&&(C.jQuery=Yt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S});
/*
* jQuery throttle / debounce - v1.1 - 3/7/2010
* http://benalman.com/projects/jquery-throttle-debounce-plugin/
*
* Copyright (c) 2010 "Cowboy" Ben Alman
* Dual licensed under the MIT and GPL licenses.
* http://benalman.com/about/license/
*/
(function(b,c){var $=b.jQuery||b.Cowboy||(b.Cowboy={}),a;$.throttle=a=function(e,f,j,i){var h,d=0;if(typeof f!=="boolean"){i=j;j=f;f=c}function g(){var o=this,m=+new Date()-d,n=arguments;function l(){d=+new Date();j.apply(o,n)}function k(){h=c}if(i&&!h){l()}h&&clearTimeout(h);if(i===c&&m>e){l()}else{if(f!==true){h=setTimeout(i?k:l,i===c?e-m:e)}}}if($.guid){g.guid=j.guid=j.guid||$.guid++}return g};$.debounce=function(d,e,f){return f===c?a(d,e,false):a(d,f,e!==false)}})(this);
/*!
* imagesLoaded PACKAGED v4.1.4
* JavaScript is all like "You images are done yet or what?"
* MIT License
*/
!function(e,t){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",t):"object"==typeof module&&module.exports?module.exports=t():e.EvEmitter=t()}("undefined"!=typeof window?window:this,function(){function e(){}var t=e.prototype;return t.on=function(e,t){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return n.indexOf(t)==-1&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return n!=-1&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){i=i.slice(0),t=t||[];for(var n=this._onceEvents&&this._onceEvents[e],o=0;o<i.length;o++){var r=i[o],s=n&&n[r];s&&(this.off(e,r),delete n[r]),r.apply(this,t)}return this}},t.allOff=function(){delete this._events,delete this._onceEvents},e}),function(e,t){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(i){return t(e,i)}):"object"==typeof module&&module.exports?module.exports=t(e,require("ev-emitter")):e.imagesLoaded=t(e,e.EvEmitter)}("undefined"!=typeof window?window:this,function(e,t){function i(e,t){for(var i in t)e[i]=t[i];return e}function n(e){if(Array.isArray(e))return e;var t="object"==typeof e&&"number"==typeof e.length;return t?d.call(e):[e]}function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);var s=e;return"string"==typeof e&&(s=document.querySelectorAll(e)),s?(this.elements=n(s),this.options=i({},this.options),"function"==typeof t?r=t:i(this.options,t),r&&this.on("always",r),this.getImages(),h&&(this.jqDeferred=new h.Deferred),void setTimeout(this.check.bind(this))):void a.error("Bad element for imagesLoaded "+(s||e))}function r(e){this.img=e}function s(e,t){this.url=e,this.element=t,this.img=new Image}var h=e.jQuery,a=e.console,d=Array.prototype.slice;o.prototype=Object.create(t.prototype),o.prototype.options={},o.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},o.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),this.options.background===!0&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&u[t]){for(var i=e.querySelectorAll("img"),n=0;n<i.length;n++){var o=i[n];this.addImage(o)}if("string"==typeof this.options.background){var r=e.querySelectorAll(this.options.background);for(n=0;n<r.length;n++){var s=r[n];this.addElementBackgroundImages(s)}}}};var u={1:!0,9:!0,11:!0};return o.prototype.addElementBackgroundImages=function(e){var t=getComputedStyle(e);if(t)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(t.backgroundImage);null!==n;){var o=n&&n[2];o&&this.addBackground(o,e),n=i.exec(t.backgroundImage)}},o.prototype.addImage=function(e){var t=new r(e);this.images.push(t)},o.prototype.addBackground=function(e,t){var i=new s(e,t);this.images.push(i)},o.prototype.check=function(){function e(e,i,n){setTimeout(function(){t.progress(e,i,n)})}var t=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(t){t.once("progress",e),t.check()}):void this.complete()},o.prototype.progress=function(e,t,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded,this.emitEvent("progress",[this,e,t]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,e),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&a&&a.log("progress: "+i,e,t)},o.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(e,[this]),this.emitEvent("always",[this]),this.jqDeferred){var t=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[t](this)}},r.prototype=Object.create(t.prototype),r.prototype.check=function(){var e=this.getIsImageComplete();return e?void this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),void(this.proxyImage.src=this.img.src))},r.prototype.getIsImageComplete=function(){return this.img.complete&&this.img.naturalWidth},r.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.img,t])},r.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},r.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},r.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},r.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype=Object.create(r.prototype),s.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url;var e=this.getIsImageComplete();e&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},s.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.element,t])},o.makeJQueryPlugin=function(t){t=t||e.jQuery,t&&(h=t,h.fn.imagesLoaded=function(e,t){var i=new o(this,e,t);return i.jqDeferred.promise(h(this))})},o.makeJQueryPlugin(),o});
/*! lz-string-1.3.3-min.js | (c) 2013 Pieroxy | Licensed under a WTFPL license */
var LZString={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_f:String.fromCharCode,compressToBase64:function(e){if(e==null)return"";var t="";var n,r,i,s,o,u,a;var f=0;e=LZString.compress(e);while(f<e.length*2){if(f%2==0){n=e.charCodeAt(f/2)>>8;r=e.charCodeAt(f/2)&255;if(f/2+1<e.length)i=e.charCodeAt(f/2+1)>>8;else i=NaN}else{n=e.charCodeAt((f-1)/2)&255;if((f+1)/2<e.length){r=e.charCodeAt((f+1)/2)>>8;i=e.charCodeAt((f+1)/2)&255}else r=i=NaN}f+=3;s=n>>2;o=(n&3)<<4|r>>4;u=(r&15)<<2|i>>6;a=i&63;if(isNaN(r)){u=a=64}else if(isNaN(i)){a=64}t=t+LZString._keyStr.charAt(s)+LZString._keyStr.charAt(o)+LZString._keyStr.charAt(u)+LZString._keyStr.charAt(a)}return t},decompressFromBase64:function(e){if(e==null)return"";var t="",n=0,r,i,s,o,u,a,f,l,c=0,h=LZString._f;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(c<e.length){u=LZString._keyStr.indexOf(e.charAt(c++));a=LZString._keyStr.indexOf(e.charAt(c++));f=LZString._keyStr.indexOf(e.charAt(c++));l=LZString._keyStr.indexOf(e.charAt(c++));i=u<<2|a>>4;s=(a&15)<<4|f>>2;o=(f&3)<<6|l;if(n%2==0){r=i<<8;if(f!=64){t+=h(r|s)}if(l!=64){r=o<<8}}else{t=t+h(r|i);if(f!=64){r=s<<8}if(l!=64){t+=h(r|o)}}n+=3}return LZString.decompress(t)},compressToUTF16:function(e){if(e==null)return"";var t="",n,r,i,s=0,o=LZString._f;e=LZString.compress(e);for(n=0;n<e.length;n++){r=e.charCodeAt(n);switch(s++){case 0:t+=o((r>>1)+32);i=(r&1)<<14;break;case 1:t+=o(i+(r>>2)+32);i=(r&3)<<13;break;case 2:t+=o(i+(r>>3)+32);i=(r&7)<<12;break;case 3:t+=o(i+(r>>4)+32);i=(r&15)<<11;break;case 4:t+=o(i+(r>>5)+32);i=(r&31)<<10;break;case 5:t+=o(i+(r>>6)+32);i=(r&63)<<9;break;case 6:t+=o(i+(r>>7)+32);i=(r&127)<<8;break;case 7:t+=o(i+(r>>8)+32);i=(r&255)<<7;break;case 8:t+=o(i+(r>>9)+32);i=(r&511)<<6;break;case 9:t+=o(i+(r>>10)+32);i=(r&1023)<<5;break;case 10:t+=o(i+(r>>11)+32);i=(r&2047)<<4;break;case 11:t+=o(i+(r>>12)+32);i=(r&4095)<<3;break;case 12:t+=o(i+(r>>13)+32);i=(r&8191)<<2;break;case 13:t+=o(i+(r>>14)+32);i=(r&16383)<<1;break;case 14:t+=o(i+(r>>15)+32,(r&32767)+32);s=0;break}}return t+o(i+32)},decompressFromUTF16:function(e){if(e==null)return"";var t="",n,r,i=0,s=0,o=LZString._f;while(s<e.length){r=e.charCodeAt(s)-32;switch(i++){case 0:n=r<<1;break;case 1:t+=o(n|r>>14);n=(r&16383)<<2;break;case 2:t+=o(n|r>>13);n=(r&8191)<<3;break;case 3:t+=o(n|r>>12);n=(r&4095)<<4;break;case 4:t+=o(n|r>>11);n=(r&2047)<<5;break;case 5:t+=o(n|r>>10);n=(r&1023)<<6;break;case 6:t+=o(n|r>>9);n=(r&511)<<7;break;case 7:t+=o(n|r>>8);n=(r&255)<<8;break;case 8:t+=o(n|r>>7);n=(r&127)<<9;break;case 9:t+=o(n|r>>6);n=(r&63)<<10;break;case 10:t+=o(n|r>>5);n=(r&31)<<11;break;case 11:t+=o(n|r>>4);n=(r&15)<<12;break;case 12:t+=o(n|r>>3);n=(r&7)<<13;break;case 13:t+=o(n|r>>2);n=(r&3)<<14;break;case 14:t+=o(n|r>>1);n=(r&1)<<15;break;case 15:t+=o(n|r);i=0;break}s++}return LZString.decompress(t)},compress:function(e){if(e==null)return"";var t,n,r={},i={},s="",o="",u="",a=2,f=3,l=2,c="",h=0,p=0,d,v=LZString._f;for(d=0;d<e.length;d+=1){s=e.charAt(d);if(!Object.prototype.hasOwnProperty.call(r,s)){r[s]=f++;i[s]=true}o=u+s;if(Object.prototype.hasOwnProperty.call(r,o)){u=o}else{if(Object.prototype.hasOwnProperty.call(i,u)){if(u.charCodeAt(0)<256){for(t=0;t<l;t++){h=h<<1;if(p==15){p=0;c+=v(h);h=0}else{p++}}n=u.charCodeAt(0);for(t=0;t<8;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}else{n=1;for(t=0;t<l;t++){h=h<<1|n;if(p==15){p=0;c+=v(h);h=0}else{p++}n=0}n=u.charCodeAt(0);for(t=0;t<16;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}delete i[u]}else{n=r[u];for(t=0;t<l;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}r[o]=f++;u=String(s)}}if(u!==""){if(Object.prototype.hasOwnProperty.call(i,u)){if(u.charCodeAt(0)<256){for(t=0;t<l;t++){h=h<<1;if(p==15){p=0;c+=v(h);h=0}else{p++}}n=u.charCodeAt(0);for(t=0;t<8;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}else{n=1;for(t=0;t<l;t++){h=h<<1|n;if(p==15){p=0;c+=v(h);h=0}else{p++}n=0}n=u.charCodeAt(0);for(t=0;t<16;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}delete i[u]}else{n=r[u];for(t=0;t<l;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}}n=2;for(t=0;t<l;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}while(true){h=h<<1;if(p==15){c+=v(h);break}else p++}return c},decompress:function(e){if(e==null)return"";if(e=="")return null;var t=[],n,r=4,i=4,s=3,o="",u="",a,f,l,c,h,p,d,v=LZString._f,m={string:e,val:e.charCodeAt(0),position:32768,index:1};for(a=0;a<3;a+=1){t[a]=a}l=0;h=Math.pow(2,2);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}switch(n=l){case 0:l=0;h=Math.pow(2,8);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}d=v(l);break;case 1:l=0;h=Math.pow(2,16);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}d=v(l);break;case 2:return""}t[3]=d;f=u=d;while(true){if(m.index>m.string.length){return""}l=0;h=Math.pow(2,s);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}switch(d=l){case 0:l=0;h=Math.pow(2,8);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}t[i++]=v(l);d=i-1;r--;break;case 1:l=0;h=Math.pow(2,16);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}t[i++]=v(l);d=i-1;r--;break;case 2:return u}if(r==0){r=Math.pow(2,s);s++}if(t[d]){o=t[d]}else{if(d===i){o=f+f.charAt(0)}else{return null}}u+=o;t[i++]=f+o.charAt(0);r--;f=o;if(r==0){r=Math.pow(2,s);s++}}}};if(typeof module!=="undefined"&&module!=null){module.exports=LZString}
/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/dist/FileSaver.js */
(function(a,b){if("function"==typeof define&&define.amd)define([],b);else if("undefined"!=typeof exports)b();else{b(),a.FileSaver={exports:{}}.exports}})(this,function(){"use strict";function b(a,b){return"undefined"==typeof b?b={autoBom:!1}:"object"!=typeof b&&(console.warn("Deprecated: Expected third argument to be a object"),b={autoBom:!b}),b.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\uFEFF",a],{type:a.type}):a}function c(a,b,c){var d=new XMLHttpRequest;d.open("GET",a),d.responseType="blob",d.onload=function(){g(d.response,b,c)},d.onerror=function(){console.error("could not download file")},d.send()}function d(a){var b=new XMLHttpRequest;b.open("HEAD",a,!1);try{b.send()}catch(a){}return 200<=b.status&&299>=b.status}function e(a){try{a.dispatchEvent(new MouseEvent("click"))}catch(c){var b=document.createEvent("MouseEvents");b.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),a.dispatchEvent(b)}}var f="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:void 0,a=/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),g=f.saveAs||("object"!=typeof window||window!==f?function(){}:"download"in HTMLAnchorElement.prototype&&!a?function(b,g,h){var i=f.URL||f.webkitURL,j=document.createElement("a");g=g||b.name||"download",j.download=g,j.rel="noopener","string"==typeof b?(j.href=b,j.origin===location.origin?e(j):d(j.href)?c(b,g,h):e(j,j.target="_blank")):(j.href=i.createObjectURL(b),setTimeout(function(){i.revokeObjectURL(j.href)},4E4),setTimeout(function(){e(j)},0))}:"msSaveOrOpenBlob"in navigator?function(f,g,h){if(g=g||f.name||"download","string"!=typeof f)navigator.msSaveOrOpenBlob(b(f,h),g);else if(d(f))c(f,g,h);else{var i=document.createElement("a");i.href=f,i.target="_blank",setTimeout(function(){e(i)})}}:function(b,d,e,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),"string"==typeof b)return c(b,d,e);var h="application/octet-stream"===b.type,i=/constructor/i.test(f.HTMLElement)||f.safari,j=/CriOS\/[\d]+/.test(navigator.userAgent);if((j||h&&i||a)&&"undefined"!=typeof FileReader){var k=new FileReader;k.onloadend=function(){var a=k.result;a=j?a:a.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=a:location=a,g=null},k.readAsDataURL(b)}else{var l=f.URL||f.webkitURL,m=l.createObjectURL(b);g?g.location=m:location.href=m,g=null,setTimeout(function(){l.revokeObjectURL(m)},4E4)}});f.saveAs=g.saveAs=g,"undefined"!=typeof module&&(module.exports=g)});
/*! seedrandom.js v2.3.3 | (c) 2013 David Bau, all rights reserved. | Licensed under a BSD-style license */
!function(a,b,c,d,e,f,g,h,i){function j(a){var b,c=a.length,e=this,f=0,g=e.i=e.j=0,h=e.S=[];for(c||(a=[c++]);d>f;)h[f]=f++;for(f=0;d>f;f++)h[f]=h[g=r&g+a[f%c]+(b=h[f])],h[g]=b;(e.g=function(a){for(var b,c=0,f=e.i,g=e.j,h=e.S;a--;)b=h[f=r&f+1],c=c*d+h[r&(h[f]=h[g=r&g+b])+(h[g]=b)];return e.i=f,e.j=g,c})(d)}function k(a,b){var c,d=[],e=typeof a;if(b&&"object"==e)for(c in a)try{d.push(k(a[c],b-1))}catch(f){}return d.length?d:"string"==e?a:a+"\0"}function l(a,b){for(var c,d=a+"",e=0;e<d.length;)b[r&e]=r&(c^=19*b[r&e])+d.charCodeAt(e++);return n(b)}function m(c){try{return a.crypto.getRandomValues(c=new Uint8Array(d)),n(c)}catch(e){return[+new Date,a,(c=a.navigator)&&c.plugins,a.screen,n(b)]}}function n(a){return String.fromCharCode.apply(0,a)}var o=c.pow(d,e),p=c.pow(2,f),q=2*p,r=d-1,s=c["seed"+i]=function(a,f,g){var h=[],r=l(k(f?[a,n(b)]:null==a?m():a,3),h),s=new j(h);return l(n(s.S),b),(g||function(a,b,d){return d?(c[i]=a,b):a})(function(){for(var a=s.g(e),b=o,c=0;p>a;)a=(a+c)*d,b*=d,c=s.g(1);for(;a>=q;)a/=2,b/=2,c>>>=1;return(a+c)/b},r,this==c)};l(c[i](),b),g&&g.exports?g.exports=s:h&&h.amd&&h(function(){return s})}(this,[],Math,256,6,52,"object"==typeof module&&module,"function"==typeof define&&define,"random");
/*! console_hack.js | (c) 2015 Thomas Michael Edwards | Licensed under SugarCube's Simple BSD license */
!function(){for(var methods=["assert","clear","count","debug","dir","dirxml","error","exception","group","groupCollapsed","groupEnd","info","log","markTimeline","profile","profileEnd","table","time","timeEnd","timeline","timelineEnd","timeStamp","trace","warn"],length=methods.length,noop=function(){},console=window.console=window.console||{};length--;){var method=methods[length];console[method]||(console[method]=noop)}}();
}else{document.documentElement.setAttribute("data-init", "lacking");}
</script>
<style id="style-normalize" type="text/css">/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}</style>
<style id="style-init-screen" type="text/css">@-webkit-keyframes init-loading-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-o-keyframes init-loading-spin{0%{-o-transform:rotate(0);transform:rotate(0)}100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes init-loading-spin{0%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}#init-screen{display:none;z-index:500000;position:fixed;top:0;left:0;height:100%;width:100%;font:28px/1 Helmet,Freesans,sans-serif;font-weight:700;color:#eee;background-color:#111;text-align:center}#init-screen>div{display:none;position:relative;margin:0 auto;max-width:1136px;top:25%}html[data-init=lacking] #init-screen,html[data-init=loading] #init-screen,html[data-init=no-js] #init-screen{display:block}html[data-init=lacking] #init-lacking,html[data-init=no-js] #init-no-js{display:block;padding:0 1em}html[data-init=no-js] #init-no-js{color:red}html[data-init=loading] #init-loading{display:block;border:24px solid transparent;border-radius:50%;border-top-color:#7f7f7f;border-bottom-color:#7f7f7f;width:100px;height:100px;-webkit-animation:init-loading-spin 2s linear infinite;-o-animation:init-loading-spin 2s linear infinite;animation:init-loading-spin 2s linear infinite}html[data-init=loading] #init-loading>div{text-indent:9999em;overflow:hidden;white-space:nowrap}html[data-init=loading] #passages,html[data-init=loading] #ui-bar{display:none}</style>
<style id="style-font" type="text/css">@font-face{font-family:tme-fa-icons;src:url(data:application/octet-stream;base64,d09GRgABAAAAADLAAA8AAAAAWHgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABWAAAADsAAABUIIslek9TLzIAAAGUAAAAQwAAAFY+IEkIY21hcAAAAdgAAAG8AAAF3rob9jFjdnQgAAADlAAAABMAAAAgBtX/BGZwZ20AAAOoAAAFkAAAC3CKkZBZZ2FzcAAACTgAAAAIAAAACAAAABBnbHlmAAAJQAAAI6gAADv+gJOpzGhlYWQAACzoAAAAMwAAADYY1IZaaGhlYQAALRwAAAAgAAAAJAfCBClobXR4AAAtPAAAAJEAAAFMBfb/0WxvY2EAAC3QAAAAqAAAAKhjiHI5bWF4cAAALngAAAAgAAAAIAFjDA9uYW1lAAAumAAAAY0AAAL94+zEpHBvc3QAADAoAAACHAAAA11cG/YjcHJlcAAAMkQAAAB6AAAAhuVBK7x4nGNgZGBg4GIwYLBjYHJx8wlh4MtJLMljkGJgYYAAkDwymzEnMz2RgQPGA8qxgGkOIGaDiAIAJjsFSAB4nGNgZNZgnMDAysDAVMW0h4GBoQdCMz5gMGRkAooysDIzYAUBaa4pDA4vGF4EMgf9z2KIYg5imAYUZgTJAQDSIQumAHic7dTVbltRAETR7dpNCikzQ8rMzMxt/M39mHnsU1/TfZz5jFpaV7pXJunMDLAZmOqaZjD5y4Tx+uPTyeL5lG2L5zN+L94zG8+ztr7ulXH1fra4bvK9M79xiWW2sNXPbWeFHexkF7vZw172sZ8DHOQQhznCUY5xnBOc5BSnOcNZVjnHeS5wkUtc5gpX/f3r3OAmt7jNHe5yj/s84CGPeMwTnvKM57zgJa94zRve8o73fOAjn/jMF77yje/84Ce/WGPun1zi/2tlXKbp3Xyc44bFyZanSWokJDXOOjXSk/LUSXn+pEwCKTNBaqQqZU5IjX+XMjukTBEp80TKZJEyY6RMGylzR8oEkjKLpEwlKfNJyqSSMrOkTC8pc0zKRJMy26RMOSnzTsrkk7IDpGwDKXtByoaQsiukbA0p+0PKJpGyU6RsFyl7RmosQcrukbKFpOwjKZtJyo6Ssq2k7C0pG0zKLpOy1aTsNymbTsrOk7L9pNwBUi4CKbeBlCtByr0g5XKQckNIuSak3BVSLgwpt4aUq0PK/SHlEpFyk0i5TqTcKVIuFim3i5QrRso9I+WykXLjXOYNzP8BuAPUwHicY2BAAxIQyBz0PwuEARJsA90AeJytVml300YUHXlJnIQsJQstamHExGmwRiZswYAJQbJjIF2crZWgixQ76b7xid/gX/Nk2nPoN35a7xsvJJC053Cak6N3583VzNtlElqS2AvrkZSbL8XU1iaN7DwJ6YZNy1F8KDt7IWWKyd8FURCtltq3HYdERCJQta6wRBD7HlmaZHzoUUbLtqRXTcotPekuW+NBvVXffho6yrE7oaRmM3RoPbIlVRhVokimPVLSpmWo+itJK7y/wsxXzVDCiE4iabwZxtBI3htntMpoNbbjKIpsstwoUiSa4UEUeZTVEufkigkMygfNkPLKpxHlw/yIrNijnFawS7bT/L4vead3OT+xX29RtuRAH8iO7ODsdCVfhFtbYdy0k+0oVBF213dCbNnsVP9mj/KaRgO3KzK90IxgqXyFECs/ocz+IVktnE/5kkejWrKRE0HrZU7sSz6B1uOIKXHNGFnQ3dEJEdT9kjMM9pg+Hvzx3imWCxMCeBzLekclnAgTKWFzNEnaMHJgJWWLKqn1rpg45XVaxFvCfu3a0ZfOaONQd2I8Ww8dWzlRyfFoUqeZTJ3aSc2jKQ2ilHQmeMyvAyg/oklebWM1iZVH0zhmxoREIgIt3EtTQSw7saQpBM2jGb25G6a5di1apMkD9dyj9/TmVri501PaDvSzRn9Wp2I62AvT6WnkL/Fp2uUiRen66Rl+TOJB1gIykS02w5SDB2/9DtLL15YchdcG2O7t8yuofdZE8KQB+xvQHk/VKQlMhZhViFZAYq1rWZbJ1awWqcjUd0OaVr6s0wSKchwXx76Mcf1fMzOWmBK+34nTsyMuPXPtSwjTHHybdT2a16nFcgFxZnlOp1mW7+s0x/IDneZZntfpCEtbp6MsP9RpgeVHOh1jeUELmnTfwZCLMOQCDpAwhKUDQ1hegiEsFQxhuQhDWBZhCMslGMLyYxjCchmGsLysZdXUU0nj2plYBmxCYGKOHrnMReVqKrlUQrtoVGpDnhJulVQUz6p/ZaBePPKGObAWSJfIml8xzpWPRuX41hUtbxo7V8Cx6m8fjvY58VLWi4U/Bf/V1lQlvWLNw5Or8BuGnmwnqjapeHRNl89VPbr+X1RUWAv0G0iFWCjKsmxwZyKEjzqdhmqglUPMbMw8tOt1y5qfw/03MUIWUP34NxQaC9yDTllJWe3grNXX27LcO4NyOBMsSTE38/pW+CIjs9J+kVnKno98HnAFjEpl2GoDrRW82ScxD5neJM8EcVtRNkja2M4EiQ0c84B5850EJmHqqg3kTuGGDfgFYW7BeSdconqjLIfuRezzKKT8W6fiRPaoaIzAs9kbYa/vQspvcQwkNPmlfgxUFaGpGDUV0DRSbqgGX8bZum1Cxg70Iyp2w7Ks4sPHFveVkm0ZhHykiNWjo5/WXqJOqtx+ZhSX752+BcEgNTF/e990cZDKu1rJMkdtA1O3GpVT15pD41WH6uZR9b3j7BM5a5puuiceel/TqtvBxVwssPZtDtJSJhfU9WGFDaLLxaVQ6mU0Se+4BxgWGNDvUIqN/6v62HyeK1WF0XEk307Ut9HnYAz8D9h/R/UD0Pdj6HINLs/3mhOfbvThbJmuohfrp+g3MGutuVm6BtzQdAPiIUetjrjKDXynBnF6pLkc6SHgY90V4gHAJoDF4BPdtYzmUwCj+Yw5PsDnzGHQZA6DLeYw2GbOGsAOcxjsMofBHnMYfMGcdYAvmcMgZA6DiDkMnjAnAHjKHAZfMYfB18xh8A1z7gN8yxwGMXMYJMxhsK/p1jDMLV7QXaC2QVWgA1NPWNzD4lBTZcj+jheG/b1BzP7BIKb+qOn2kPoTLwz1Z4OY+otBTP1V050h9TdeGOrvBjH1D4OY+ky/GMtlBr+MfJcKB5RdbD7n74n3D9vFQLkAAQAB//8AD3icrXsLcFzlleZ//v+++nb37dfte/VotVrdrW5JltuKpO6WJVluPyXbsmOEbGRjO4KVjWPZlsM4QIU4IYGlgCE2yxqKIQkJg2GreKQCTCZb1CZkiswjzOwOmSTATNVWTZLdDUwSMrVDsomD23vOf69assFAqgbk+773P4//nPOdc/5mwNjFl8WjosbaWblmxiOmIlTGYXzb11M7Z2ohAMbZCcZ5iG9prZl4whfwGju05xtttitUdwXYEUgkbQtWga5lC+XBaqJI285qpb8dVEc8Gnm5L5QM/f58yAlB399a7dD0mWAmdAqaMvBmKPKX9TdDwSjod9yhx03FAPcvI6Gk2lV33XoXUtKgL8C6Wa0WSzXbVjhg6JoqIPShCK0FOvOuE48K1V4B1VUQAVevugmP7Fz2CmTzW5/8+ZGP/+Kp7h/8oI4MuOZ7M5B9IvujH2Wf+PnCAjzn8ZK6AieMKRcvXnxWWSWCzGARlPcqtqs21WZzEBFgYIVDAYWzVJIrXBlH+hXGlWNM00GAJmYZ8sKBzTJFVZVppijqDFMVdTIWLa0o5JrdaHusPZGIG1IjFhQGK2mAZEe56kJnR1bTY7ZT7eivFGODBTdma3pHtlCNDVbwmgMHx/aO4R8ffeet5/ZCG6TfuV03IaSJU3oIzKsGO9+5PV+BwU5xqnOQx1aO8fW71yvD9fPn55/fA22PmsaFvfSgwZ8wzPiFvZ2DUMnzJ2hHVDMmHucPsSRrq7UQo4DMAV/AW7CANw/Zru3NIx20bBEpXwukArlxxOPReibaG63/SyQyiftzcBy3k1HuOHgjEgFHnkYfh4VodDJC4138Ff8hv5PlWbrWmm2O6grNEgGNCWGnbFtRm1Z04gzQPPWvkqMWF4eWU8DB267Df+gNe84bBvfRpfNI5Ny5yAmHDh5/PPLuByMlekDS9DsRR73nWHetwBShSO5PqCBQONO4E2wGlSvYZG6gMzeQ09SWFZC0tWION3oOVVXGTbGM+hrAzQj0O25yoN8R8YzzRsaZdzLwhpsGPEm783hAJ9+kq286eDX5pn/VydDjvk7i8EuchU21JJ3DNOqFzeABmywPcNXxhu/wB+3whrqwVw7Cn1j8vPfdDH6O7PR3fDV/Cb85wua/waSit309grZJHHOhHEQ9CA7zTGVCUb0ZvXzc1lrRe5Af+4An0aSL9op0IU9y6vRFtAYGKy7KJGFbQrdg2dXqGAwWilld0zUy9xLqd6A/zeFuy7gzYFmBOwOhZ6NNhZakm8YTI7S1pyM1mM032V26qevXGlzZ8+TKvROlB/BBkO9ACDalB7OZuBnuC5tRcAItpalENNOfhajVH1A2a1HjbHZ4N4r54oWLz4qPoe4jrMo2sonapm5QRQBQ3XycKVxwRRxjQuVCnWc6mrzOZ5FvBiraOmia5FubYRpok8n0ioRTKOQMNbWiszxYWAFZrQ1sB+dDJTFYghzyiBN3oB857ndIAha4Se/+YGUtjAkXXUO2xPE2eoe3TWPeMOXmzNi+j9w1HghvVbSAmu4c6nFac6MgbzXFU2baDr1241+98TfHtU/9t7df+MzU4msmfPYj06Wbw8Gqohda0/FkSyiyvtPGG/FsMKq1pLqmPvndkye/+y+08eYIHEJZpFmJra2Nop/VWuKcCwPvgRhnGlOFps6iIdAEmFVAKh53jblZyBU6nAFdbfX03tGwioZ9oGnEyDSWTQCyFzhoR+s/jdjgWLmc3L2K21zEmXCsM5aDm4g9Ny5v0PZVb+dY9Rcd/sl5eTiPj0nTaeiU+BhhW2qbuzJcUy2Nc2gCrjBkxWCqZiArGgOuwSzjAlDb5L91XfpvfYbpij6ZRIUWYoVcLqC2+UqNLddsMrekY3GZztVl2uQjpl4xjedIM+Uybc/r5viShuHgcgXuwQtpuoMHz8utCe/s8S+Y/7xMaYu2DX1yDrez3lp3cyyKdop+HLcLi878Uh9SKOSlj73cOIUFRVKVKHhaSS9JP452RCcYoJ3w85bz8Ckp9VN4xeZj9atpH4FnPCV4OtiDNIVYCrWwsbauK81VxUlaQnA+riFBisoUsiU0LbQpASCmmRAwg1MNJoH19uQ6WpriUV1jIQjphA5QjosiTfiy1tF+kPJKMTFYpAu6lkx40odnTv7VjYtC/QtTJyGH9HmMnKamGrcaqmaagRsMUwR9WeLmwsQREvIRevSvYa8uVFXo9Sc0w5A8/Rp5+jcxhXLuYAOIx/pbY+ggFp0FV8lNoLNAEQvyDkwBZR9T1ZC6xR0qFgsybix3DJcR7iIGwCsCHHQM0nYKVSBXQZPnqG7KDZiqrn8K524gpN9ghAx42k4GsvF3nohnA0kbnglkC9mrl7h4Db2TommKcVE1QOPRd97K5WJxsKO5nIjHbHtx/og3kK8iWys1he/EkKlqCbFOB6iKQp5Q5Yp6DB0AsjmPvHEFSGsoFraPaVpI2zLc2lmudErjJ/eeQwbKPoRBZulcwhwXYc6i1SdiEpiCF+KrFOIrAzKaHdhQ79tw4MAGuJv4rt8sQQu80jloGnnDfNVJBa+vn1WjSg1d8NHrg44FbTgdJ5+T77yy/gDI5wY7633yTbI7+CdyMDyEL2paDd0BvZjyfIYXH2/H+aqjDfXUisgnk3rFYMePoyZBegWanQpM5hKdlUSU1JnoQH2iG1d90IYADi0JPV2/oxMEeB7apm+aBngFw/ObMjzHzv7dgzyOh48fHZnmO9c8Wv+2RAGwHiP20UNnzx46mvYxyaMixDpZX22lQqQgRDqG4kYcMo92cpypAOo0Ti+iSYXJRGc5l8wvQhPfqpE0SYa7nDwkeQyh26OOlbecqVumoCwJ8+mDm+9/5T4eOyOt+4wk8WjavYTIG+7nD5Li2cWv8zGkMYoz51q2u3Y1JQSwfcumSn9JUxW0CZIWQ5isqKCo8zoGFPybx/lyHD2w4AaCBw7Ap1HIxAaHyZlr1tXG1owMt7h5Ox5QmxF4Iv6vDhaQoTFAYADuYIlnLa7b7RwtiOBDtVK1dbyCMXXxn5azOIIKfLFKaQP9K3HKIMYEQosvhkIWH23TQ9wIpCq9M4WxycnJsQIUYrEJ/bPGuOZohfHVzdmMaAmHm418c7DU3xdoyYPebFktPJtpHu7fefjw4R0VHiNTa06ZUTPe09a1sdTUVNrYtbo3nth11VW7tBa1d/U1a1t71rdG2u1IJNkWDYdbUs0pnnFT+OloWzISsdsjqVpvy9prqrNjed41POfPx2+J7TIXaWP5Wgf5bvToBEvpppQYOXPOJoda4gTQE6TsNK8sAvUSSHBFygfnfM9wL+8aK/Bddv0tZ8SufyKZ7ml7s20iCWdsPpPu4YVaXuur/2M6WX8riReTE21vtPUAnn4iyTxdf0vJ+/QM0pwsUL4D5BmUBQEeXpaU4W6RtExzN1In7eT9qHPpIoUdqAzSrdyHIPo1JNRps1uioCWJyIm2U/JG8oO4aZMXozF8b4RupRd5JJv7Nn8ZeUyxjlrakhJHcwO2gHMUDgGLR0MmS0GrIoMRWos0K81LUnPZYgmkw6sM8HtCoQTaT9y0Wu3f/MZuCYfijhMPhUVQNdL2hY8kMroS/8UvEqqeSfC/xzPV07k3vsqyrL+2ykYnhJjEz45OLIdbu4ncrbrWhImzltU7oqqaXAEdMWiHxPsSdvuF70K6/xf6FejjL13YBvFVP+UXrkwnyelZjBcltoLypQIoEmsoiDUw4C2QFS/I/J6yx5ybWOOqaMad0kJlKo+ElAdLqvRTMqOsgucuM64j3hgHU1H1mIkQ084Oje3eXT1lZwL1nwaD0BZMNfFTcHpv+sf7v6LEo4oZMlRbFNqH9tb60nEN0UkQ0mYawZNpR878eFuD1lWsl/Jb9J5iMbPlDKnkh3raBmS66U1M9Jm5rKUmMel1dKLOcxrVSgf5dJqU4o0g0pJyTlV37x4bytpCATOG8VUT4+m9cPoURiakE34ZMes/wbB0Roun+2p7h9oLSlwzQqZq2eIr+xe2/Rhp5QF8hHn5Hh/FfM9ibs32UrNG+l22ZbrnJ8N+fERAcD6YCp6nuPc2Aq/vWXiMfzKaye/BDfzTLPwe33MT8ns4P/y0uiLBdyZw3qRvNvGZegjF6H+escXvreOnkD7zm7IkADTbJEkU4sdw1jmwzpTj42smHLB82ijenjfx9YsXkccR+B5+I1azGtQk+4maTpnLlsBL75E7O1IPea+mzfPmUwQt00FJoG+nPxN/zruZzZprTljyx2GpXiHdYWBZtcINeB+2xVP16/GT9euDwf00TbqgK5gK7QvCmfp/wPn15WDa3BcM1l/Hy8F9wZQ31nf4Q2IjjrXyG+BnzXnMmqXiTuB5CLa01gINjvb8mesSTwHuSAEtzm8anp+uvwbdprkfhUs0wCNIxH6TP1l/vf6aPDThK0TXI5I+tjj+SX/8wIcaPxWX4y+CqsCiEIiAIzhsKrgfh+6qv+4L4RETPl6/zqMKukki9AA96OseZb3Zk7UKVKxZKt65tpR1J9p1sTGgP5Z4ah+KEzl73R/xEfr+I8H5fchlN/Jr0n0c3fSGkrz+vbhd5m2ZWltThDeKUaKh3WTZXWauS+WomBdMkjGvOCRuT9YfcIZxk0x24/5cT3q8redxe8TpTsLn03b9LIaFo/I0eQ7uxtjQm6rffI4elnTcJfbwX/qRFyG+Vw+SaJdyFIpugk0WXCcnaZFo1323viNAWHZPvk1+ugfjTf2sbcPR5LDT442bhwPj6Z5z9qi9wr8B85Ji51yXb3tISxlpSUtaZEYnFX8ZbHI6C8vk4ll2h5/YdRQbM0CUbSmXHsd5rH5zWz7fBnc/5iA1NLANwyQZ2+5JjiYfQ4mle+BxJA1prT9g+770dv4zTz9RnTPp+JlY4DJKoroOucmyT4fnsGIeFC3H9EtmB+qnGyP6413tPvs4BhIwipskDKakeIg+KKTgbl92JBkkHn1J3c8t+9ia2vBKhMFkGBJtEjrGDIzKE1SeAgTJiDAVRYpKmSGwMlksJor5gUWgjKlXYS0gurS4neaYflXJnaWBUjDKNAVhkWoF1WhHz7uJ2PapE8NHJkulySPD62/qVmLapMq10a997JqvnphQarc8dO3UQ2smYr38pfOWszK6fTs+eBKfHy4j8t2uWNrWnbDx5CNfe+TkxrHVE/EEW4ynxM9H2FhtpAeE2tnGFUH1J4xXChxD5hACLNXbLgOA3WU353rI37Y44SipbwdxwED/mEC0rOmuIzmlGkw7SBzNxZ6NN3519+zXRhV1Uosp3TdtGD68s4eXJo8uzHVtjyXc85gC9MYmRh+euuaRk+vhAG43Tm3RLGW7Clp52Oesq3N7dKVjnW9KxCdWjyFvi/nUs+Ja5CnPxtn+2t4NnVwLrELw76JqDMz1MacMGJoR0I5RVsA1lR/DLEdonLJLQWnOMcSamKlrszLnWWZ3mzcVOjsrnYWynTfVNmQ6aQFxrWtL9SQtgjqsojbxf5lp+qquSF1rVGyk02qZZEEKRkPdlv9ff3LVQ6MTFMas8xSft3fNVbd+vqg1KaF5w7RwBsirUye24UVXDS3oIcj/nz+56mF6qQlUAQ++gGoNytcxFG7P98DWMXMoHIL/6l/Z7p1riv8ko2oiyiru129WsSrmUjO1XdtWc0Pr7miOoWOV9YUQ07WQPmsCisWYDge5puAUAI3NIk6EQACmaQ+BGRaAwOSemV1TH90+vnlDrZBNFOi/nEUlLL96lYx5VZLqB5zDQLFQzGm6KuUX89L6YqxRuaPsCwXYTlJE1EVJt9ycWTo8bereoW7Wv38ewfOzmgI/N42Kn53LatjTxUCv85zbEyg+Y5hTcDddq99M2ysc8/51lABfjZ++8KvSxvUlnpCj7U+mIG3vR8yhXSbXEbaB3cDmatdds4lrhi9Z8hskNo2hkI+RQHWN6fMIUwKGFZiNhDmCNq6BoR1gejCoTzNdD86woB6cPDh33YFr91w99dHJLePr1tp525NylKZkzJtthLplN+ADzhOxjpiN1trRPwb/vhKfqIcMg8Mr3DDqd38o4cM36y9KWa+Tsn7v4/ocj134Vcg2TZsf/ABFKH4tYwrtObZYYxoF3QiQC+PjATwUho5+W8MkQlOOqUDxnlMNjZpsfB8zjJCxZe2afKeTjXeuboqT2XcOlsACB6XROFhWch7AeNy/VsZfx4fO5Aj8EjTVRPjLdtrmTS1NX7Azce6kmjZnnHf+1iuBiG0duzsmQTiZPzfjEoTGAqZ7xqt/nmmai8gXOWb0/sG9z8vyyPNOZjKDf9DlRgmQR93keVlHOU/9RTkfH8W8ieTQzWpsc21DGRM0Xw4soAUWDEDPtMB0oS9I5qeXC0PhMySPyTWjuYFctn9JEgWLp6FSXdz71TeSgzuQBmnXVHPXGqWhIhXkF+H2lQXxVqiSO5OthN9CQQSazmBOhdycwSgoZRJvQ28Yz8SVltDiwd3PUxMLN9De1dWehinH5783RvA9xhpyoHgnWAfGvE3sqtqOFT25rGIoMB4GBa0NAaepg2KYyiwVijQqFKGtopEeUFFYgQCboj0jZ8cCk7U1Q2W3MBBLjMRi0SCKxO0od6gD6Muon6Q35JGLDZS9DEpfLNZTA4aqrmrD0rwHCAO8Cs/Ur4a3J0Lql9WU4RfBJiYySfg+cviqaczLvipt59LuhbjXflPdSuRLUUd/9VV422jRv6SF/NbehYrcQ1p2AZ6jd80L5+kSRwE3WV+OVGTs9GvnU6yLDbJsrZ2aE+iijskqPtuHgTAktgz0r+xtaUaslZRRH6FKlRJrBwO9bK+lef8YXipg7j8GSJjM+GRPmSApRv6n//T4VrH3qqbRaNxoqoxSNMfwD6MV18yPulftrX+xZ7gXeka7vMCPgf2aQ8+N4bPuaKz7lg2LIGjjTT3x4T4jvubPYKL+cFtPTxscwm0DA+yVNaMjbFNt/cE9k+sUpoxgas8Gu1qjhG7GqUu+oAFel8B2gTDcgt+54If2XXv1VVsmVvRkM4m4TnnrYCGLtt5foc4F2rWO/NrIbxENvBHUy0WJBYqEg8hbyklAxoATvupfHMCZ3wAHaASEAFz/Y7pUPh+ZumWK7z65G1KGftgMJro0NbIzrOvbm1sCuhL9tBGKtrof1aLaZkdRjS4zYhzSDTDVw4bldnrPGtubWgKGiH0adR1JuR9VI/qErSgB72HMk0emp2+anr6F7kfTydZ+zdKSO0EdDRuTqaip3xAIjapaLa1aWqg/kmqNQEiXzza3ZFbqId3euezR4Iiqbkj5j7ZEIeTX7X4n9vLvLmKL2mAXILVUp0WPoyLCVJVGQ+/yNlGhjP8PNLq4y9vNy9rPrn+eW36OaPmdX0nTF7EIpu9XPlvW1XMgOiHbSHIL1ji1nsbpBdbAyXtlTRwjSHuCqyJvkjfAVEiMe317oeLEURlNKa/CI7tfVLxLp5qb4tFwUFVYJ3R6/STHqy1Xi1R9RLvvd6lSPIba14rZoo6zwa3w/7L18OGzRwC+N7B52+HD2zYPfA8OP3iIH9kyjkd4Fdwj9x85skUPzfXhQd9cSN96mB+97yjgoYUXvZ7kxYu/UW7mL7Eo+rwKK9byTKWsSWWz6N8VBaZxB5ShgDJZHerscm0J6L1at2fNGPH4CqQNZ+gAGTeaPZVNBB52IJ7nt/uI3N/B0707Do+8vmEH37rpdTLX8eEDd47Xr564Y3aIj+67azM8Q4dwYHjpHbJoOu1/8OkH++lk4s59Y2Lo+tsevG1ukA/N3uHb9f9TbkFebNRET61I/GEuOEtdCkxKcdfISpPptmSn01kdVNF4Y4NjHF1rWnh0cxWZKImsJdKcKPPIkZR5RIoYkcJ7dh665dDOHqV/4jgc2ILXkYz77zgwypGsH1zKst/L+ir6nJVsPdtR2zaC4aQTZC9CR4p0jigDQ6gmexJcUeeXdbS0xY7WslzDdpPF8uryAPX0L+tqoVNFD5QrFi7rbKGXwYnkJGCpwra4XMZe1th6JZcOCL0VgV445HepqL+l5jVdKMHP1VeH89a/WtYaK2/9Z/g4noyFYduzjf6WpSS0FIKDRovrC4aaQ9ZArQ9b1r/K58P0Yhi/4Msl4WPhFbUuzCTBb1OitsjmCVsAn+Qs3eokTJ1FeEQlI1nGXNlfnbS8tcc/sYz4wU8vsbd+lr/UII5u7mncOYBJ+WKc+5jsETe/L03AXCfmN4IlTVnCOYiVSxyWr5h45up7d/Lpu568c7ey4zRcu6yjzk9P3Xvu3im5qb9yaf98ab2AwZIsy0Zrq6nXxkG22zi121ScGiC71IoiZwcZqlAmzUCmvaU5GgkkzaQfoNCjlKimWnxvGhtR5b4r0roYFX59BZLFsvVB5NMRIVAGQ65bJoBsRuaFbLJM/0n3nZCLlZaWYKj+efWy88WezKv+yiG5dKnN23mX2uUJbi5bY+Rc4XgxBrHXGnlYb637gwLPEuXVBmD1ViiIyzgRfl5f9NddvfoB9NDxw0clWD9KV0FbdhMMjzfc+H7uJXEG8fo6Ns4O1q5fU+KCCq16PhXG3JuJcczFw6GwEaLSBXkQwNwF4DgLs1AgHDqA2FToAXEgCDpj+jTudDaDgUmnGsaG9bWx1UOVctJGzBlDf2HJWgZyh1HHkeV53RK5WC6Gc8fr45AzKSByxwlWHShTsxydSgfVLhALUZsXOiS8w0TlVOdJ006bC4ZayA43j7cN9WCqeCgYDTvGJzKnKG0Jn7ou6KSC18Frs8FUk2Jch1frv65/kWLdMMbf2fWfDKac4HFdaYpb8HY9ZDXZhnEylEgHP7t2L6YMcO46M22b111HA113zoFBDJQUpy/WLx6B36K+MxQdmlHBKerm0BIJKqUu68GgoLY0VSpexdChJiDC1WpC9qwK1cQYpS7U0BW0JAzeMrX6P+hRI2Dy4z/hqqmb4gS3jG8GLT77P1Ue5E4wfOFTFoioAS8NYVYZhv9umJapaPV6hct6wHdkHiowcqVYnvUivt5Qa+3vK/X2dBXy2Uy6pclBE4pR4XkwxWHTtq93vH+tv0l2U6pFvbNRePWrv51uBFbBWmgHbw/upXv+0LnRc1AxL/RjLrVgmvx/yP0Fq1KJxarV2A+PHct2HDvWwbvxJIYX60/THfzHrcdGH7shQm/iC2l6E/fXRumtaPU/ybeyx+p34UkVL0LJv9PAUHOomzL1w8q9uZaYoV3SIOoujHBKKii60eKMxhJHXUMgTQW0InVqqErq22AbYN6BHOMkFCMtlpWLDDc/0NM23tYLZ1uGMX5ZrWfPtkQj+chQ61lZiH+gZSiai0Sbz4JhDbeswXd2PSVr8E/twqtr8KXdu690Q2KpI6jHMMuhBjdRdbG9iQslEae6YVhDV7gBdOiHgK4iKtSERkv4yOpAP8ZMpimmNqtSRuUFG50FDD2AeaYRNrasGS0P2LTwuGDncpRJNtZ5Fpev85SVhMY6T3ewBJrtjAFIs8XZi95eSXOXLJkW75wKaXmE7afkst1TsjBDJxP3v3I//kG6Z9R+ce7WnfcfrvHRo6fPnT46CpteTMJZ7yXKMb2XTlHieMpspgUYLz+k3UsJV/LFTWNH7vvT08eHlfWHHtx+69yLSbZMRhHWhDn2SG0oYCC3qE/B0qAKuZqPg+b5XkErlwWmYkKlMkNY2eLmUAqF3OJinmKjrPIhuK1/W/IJ6z8kh5K1D2aK+/UTWqOzkz1fC4xVOgKKKqgjZqKV9nhTGGOgUGnZjiK4Mq8jJFKOMwJ0UxSLdlO/Ymvrtq8H3/UG+nBNcG0e7Vh79xt/yOf37KklDMPYaeyc3LZ1y8hwT671KoP8BApooL9agOqYUm2FATeRptTcdeQGxexmC3pWyw2u5ZSr4l9xsLCKW+DaaeqxVskXZql+XdTggY9NDrcHk331MoTzqZSj3fGlCe3GxJQT6IsGjeBkQOGQO53v+VKSb9E1EVMQ5vKs2/R7axiimWAmiVCh4/MZ1eYrecvvMWx9oa71KppmNkVhBs6G6m+veHkw8amOFi0QFY4pTI7RrikRxSd1jgBaCeytDEHmYSsUN/HTEEyqQVQ6ppY4937ER/nPmMXaWK6W8TvQy1cj+s28wcIlS70LHqQsSoS5rB18abP70ubwv0VMqrRhJALnb2SJXZ76vg7pAPc9++oF2+s8XzLyZUMt/3ajhy35encPGy4n+lIy4Xvvou1JERMJFmTa8zqHldSwlaBa9k6VC63heDzM/3cYttfndDMiKlbIwCN7eV2F8FS61toUNZhCzHltUoKChwg/yah6WVnr8jIXJer+ultoizj14CWn/GfvvEU5uIjTdtnx8nw86K1TlzWF5QsXBhYXGlw+3rLk/5IB/G8+gzZuYUagPa8ByoUaWfiRIuA35I4CrJOMVariLtOCaKD+Ryq3gvWTwSDci1AAfVtQi7zzsmWE4F5Vq/+RPKDe8714vX5SVSVGuXjxa2K/iCyN42qyOkbLkXwt6FIjmt5sRsHC11VB2yANZQl1HL+GWjFC9Em4Vx7Q2oKTeB2+oKkeL3xEkBU015zWlri4VEBrpICIlwZ7Eso2mgSVKs8GLeJN5YsLnmn7Lh7/45KS6ncSg5I/Por8NcaWi7UW27Te2JeyTGPqPg3VS9j2CzJyeznjn1qaGXCrpsq8ro655n7+1zi3WwkBRkGuRl5e3eMyi6L0TvDJcnYwTnM14fWG5Xyh5nXVLya56BmNJRUi25oYoiGRJBGXdaO+Rb1Y9R861mlZYzodsf21K8/wZ1mC8I75Hr9viTsF+fsW5BzxTSO1IFQNz6DJvnC/lPv9L6Ab4KcvfJU6gC94y9NfMP31s7i5XY5RIn6LJqKRxjAKDuOVppiQA65ycUhaEvVeQya8dVuF6uCYKClVFADVGd5FyGt9RTWAAgg50ahiNFm2YkcCarHv3QTW/6Jna0TY0VA0FEpnMkbciKJ0RGSrrMN/XzzKfy7p3saOsq21cUl7FVQ2Dboqxg8D38S4hnxooL2bGRU1qurqAtP1Q1M7xzd3Sd4MKlx9aN7cxtWq/1OQAi25ohrK0s0ilVHwbgmKVNGWD1T/IMmcmd2u68h5MhPsLpW6Mf7ZEUPfceC+0zfhdXy9uTm5cQffujnZrMQFzmZdv+n0HyDOnl33Z4RjOcFoIL338N50IIpBxBEd9+2+7fV+vGGHQ5Y18NCTDw1EwkITYRu/JwZe9fPMI+IfxFUsyjbSqvKhAcwt168pdedsTBbTzZxTnRzRxQyV/if8uggP8y2VcpqWw7iyTmgJOy3GuEu5oK35P5xC0L6GZFag308hopD9/6r3KyoE7rKG5Tqi3D9z8s6TM/3+7mEeeCxiPDanxdWDjxmRxwKIeebmVFVePajGtTl5VaWLcGDdLdMVpbTvxD0n9pWUyvQtew1RfioQFOU/1vU/Lotg4KmyMEz9nnuM2OINTVu8ETPuuUeXPuNZUcFYEmd9rFRbYSxfVUjLiN9dFerqyvd2yKWFBEEB548Fup3m1PWnBQHUERnjyKYur0O1v1pBfvl30u2Hnj4EwydOw/CBOyd23vd4+YefpuUbvHb84elmO9HXD1P3Tq1f48YM5VZ17msH5/d1fPtmWQndeOwTd1EnZNeXbtwsoBRbcbJ29T3T0GbGDO+3J95aen6KxViWDVCHL8i5wsPAxPLfE1FDb55RmQnmCYgrEoijOyX+6KeDoE66Tt5ONjkSgheKBA9LqL6qpqchU0E7QaSYtJ3+irSVimrrmpLJU3ej0gsK6vTRXbdlEXtnb9u17Z9B+Un9m9Hg5rmoE93YF4zCPwZ31H9b/6f6b3cEgzvAgAIYO4IwfMe64Q03nOX3fXzD8Lo7brzrLtiCz85tCkajwb6N0b9LJD738MOfSxTs2x7mj3yGsEgjzzBYB9Xw2hGCYAZOzYWG2uR6nFlvxlJeEZfO732ziNsX84be4ffMGz7/gRmQb1dyTX8Q/dtArU8Hb8Wybmgod53NBlQOilxbg9mPCIstK3sTAzE7O5BMJuTKkvJgwfulBskXM0CBMymXLQrpkSoDMVmJ6aA2QjGG4SJkRk38g5sd61dtYGoQ4St+jHY+U23r4aVWOEjtseoMnDgvfwCEm2+hp6r/X91AK4zYkU3HMVEaxnR3qBfqPzn+/wHPnsOreJxjYGRgYABi1vIsoXh+m68M3MwvgCIMt5YoxkDp2P9f/2exVDAHAbkcDEwgUQAz1Qu/AHicY2BkYGAO+p/FwMBS9v/r/68sFQxAERQQDACh8QbyeJxdT0sVwzAMy49AkAxAkbT3UQiAITGAISmAYQiA9th4ttUs7Q568UeSlVidiwSkB3PUPg+ESd6ZD/+8v7HyrtzwghY89ZB6BcyrYqc6RZhw48YhaA1Wc/v1PQtdeXJ/HppUmFM597nvBVK7D+Z+E8/uQZLBgDyaz3Llvxx02S3c/Hv813JrznryZP4F+6lSfQAAAAAAAAAAUAC2ATABaAGyAfoCJAKwAzYDmgQSBFwExgUyBbQF/AZOBvwHRAe2B/YISgigCPIJGglCCWQJignACgAKQAp2CroLAAtGC4oL8gxcDPINng5iDuYPag/6EF4RIBGGEeQSShKYEyQTbhOyFAoUYhS+FVoVphYoFooXHBeGGFoYnhjGGOwZChlOGXgZrBneGhwaWhqgGtIbLhvyHHQc2B1QHZ4d/wABAAAAUwBtAAYAAAAAAAIAIAAwAHMAAAB2C3AAAAAAeJx1kN9q2zAUh39q0441YxcbjN3tXJWWEcc1lEGvWkLbXZeSu8JUV/6T2VKQlY48w95ifYa9zt6jd/vFESUUYiP5O5/O8ZEE4AP+QWH9nHKsWeEdozXv4A0uIu/Sf488IN9G3sMQPyLv0/+MfICv+BV5iI/4wz+owVtGM/yNrPBZfYm8g/fqW+Rd+svIA/Jd5D18UovI+/S/Ix9gqp4iD3GoniduvvR1WQU5mhxLlmap3C/FUdVWN6IXoXK+k3MpnA2maVySuza0ZlToUZ07292YctFov6k2eWp8VzsrJ0m6qa+NNV4H87Dq1j2WWQiFFN61chX7yNy7mclDUoUwPxuPN/tjAoc5lvCoUaJCgOCI9pjfDGk/BPfMEGaus2pYaDQ0GgtWVP1Kx/ico2BkaQ0zGnKCnHNL09KNuK451721rLqhLfmfht5vzdrmp7Sr3nUfC07YL92afU1r+wrd7/Dh5WwdHrmLjDawanUK3+9acPXqPML7Wq3NaHL6pL+1QHuGMd8t5/8PvPGO3QAAAHicbZLnlpswEIV9DRiwvZtseu89Ib333vvmBWRZYMVC0pHEEufpg8BO/kTncOfTaLgMOtPr97o17P1/baKPACEiDBAjQYohRhhjDevYhu3YwA7sxC7sxh7sxT7sxwEcxCEcxhEcxTEcxwmcxCmcxhmcxTmcxwVcxCVkuIwruIpruI4buIlbuI07uIt7uI8HeIhHeIwneIpneI4XeIlXeI03eIt3eI8P+IhP+Iwv+Ipv+I5N/OiF1hEz9JKxUrtFrDl1lWF9NR9QIikToRaVjUouKxvOmNBjLxnlhgo2DbnM1djLKrNGnGPScSUzItzGv93yPP2bSQSX84z9cqFQdJ56yZRmMhW8mLlJJSaBI0XYPDaZKDUviZmvr6DrNjJMi0WcK1MTM02mqpbZlJtEsNx5SI238jSodJtoS7qv+BpPw67IY9xU+dg5TXjROTWwdGrIOzWhT+uA0jolxqjaZrSOnCF2Nmq16651EYpMm1fakAul9SJQeR5QVYQlk1VkZ8SwoVNFIVjWnKQrlBGdMToftdoZjrs77DajqXKrS02YEFxbbtdWkG0x44JJVUS5aBqKSlJwmhDrmOF2Hv9Wqsy4TNqoKhfmSrrQKuNSL5nvPG6p0s0AkEWkSWVZMy1Kx3ljk03qLuZ14lTmB8gNGmByGrGfjLrhlhJV2f7SaIneNF1ypQNbybBUSgZswQaWEUNngeay1/sD4l/60HicY/DewXAiKGIjI2Nf5AbGnRwMHAzJBRsZWJ02MTAyaIEYm7mYGDkgLD4GMIvNaRfTAaA0J5DN7rSLwQHCZmZw2ajC2BEYscGhI2Ijc4rLRjUQbxdHAwMji0NHckgESEkkEGzmYWLk0drB+L91A0vvRiYGFwAMdiP0AAA=) format('woff')}</style>
<style id="style-core" type="text/css">html{font:16px/1 Helmet,Freesans,sans-serif}#store-area,tw-storydata{display:none!important;z-index:0}.no-transition{-webkit-transition:none!important;-o-transition:none!important;transition:none!important}:-webkit-full-screen{height:100%;width:100%}:-ms-fullscreen{height:100%;width:100%}:fullscreen{height:100%;width:100%}body::-ms-backdrop{background:0 0}:focus{outline:thin dotted}:disabled{cursor:not-allowed!important}body{color:#eee;background-color:#111;overflow:auto}a{cursor:pointer;color:#68d;text-decoration:none;-webkit-transition-duration:.2s;-o-transition-duration:.2s;transition-duration:.2s}a:hover{color:#8af;text-decoration:underline}a.link-broken{color:#c22}a.link-broken:hover{color:#e44}a[disabled],span.link-disabled{color:#aaa;cursor:not-allowed!important;text-decoration:none}area{cursor:pointer}button{cursor:pointer;color:#eee;background-color:#35a;border:1px solid #57c;line-height:normal;padding:.4em;-webkit-transition-duration:.2s;-o-transition-duration:.2s;transition-duration:.2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}button:hover{background-color:#57c;border-color:#79e}button:disabled{background-color:#444;border:1px solid #666}input,select,textarea{color:#eee;background-color:transparent;border:1px solid #444;padding:.4em}select{padding:.34em .4em}input[type=text]{min-width:18em}textarea{min-width:30em;resize:vertical}input[type=checkbox],input[type=file],input[type=radio],select{cursor:pointer}input[type=range]{-webkit-appearance:none;min-height:1.2em}input[type=range]:focus{outline:0}input[type=range]::-webkit-slider-runnable-track{background:#222;border:1px solid #444;border-radius:0;cursor:pointer;height:10px;width:100%}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#35a;border:1px solid #57c;border-radius:0;cursor:pointer;height:18px;margin-top:-5px;width:33px}input[type=range]:focus::-webkit-slider-runnable-track{background:#222}input[type=range]::-moz-range-track{background:#222;border:1px solid #444;border-radius:0;cursor:pointer;height:10px;width:100%}input[type=range]::-moz-range-thumb{background:#35a;border:1px solid #57c;border-radius:0;cursor:pointer;height:18px;width:33px}input[type=range]::-ms-track{background:0 0;border-color:transparent;color:transparent;cursor:pointer;height:10px;width:calc(100% - 1px)}input[type=range]::-ms-fill-lower{background:#222;border:1px solid #444;border-radius:0}input[type=range]::-ms-fill-upper{background:#222;border:1px solid #444;border-radius:0}input[type=range]::-ms-thumb{background:#35a;border:1px solid #57c;border-radius:0;cursor:pointer;height:16px;width:33px}input:not(:disabled):focus,input:not(:disabled):hover,select:not(:disabled):focus,select:not(:disabled):hover,textarea:not(:disabled):focus,textarea:not(:disabled):hover{background-color:#333;border-color:#eee}hr{display:block;height:1px;border:none;border-top:1px solid #eee;margin:1em 0;padding:0}audio,canvas,progress,video{max-width:100%;vertical-align:middle}.error-view{background-color:#511;border-left:.5em solid #c22;display:inline-block;margin:.1em;max-width:100%;padding:0 .25em;position:relative}.error-view>.error-toggle{background-color:transparent;border:none;line-height:inherit;left:0;padding:0;position:absolute;top:0;width:1.75em}.error-view>.error{display:inline-block;margin-left:.25em}.error-view>.error-toggle+.error{margin-left:1.5em}.error-view>.error-source[hidden]{display:none}.error-view>.error-source:not([hidden]){background-color:rgba(0,0,0,.2);display:block;margin:0 0 .25em;overflow-x:auto;padding:.25em}.highlight,.marked{color:#ff0;font-weight:700;font-style:italic}.nobr{white-space:nowrap}.error-view>.error-toggle:before,.error-view>.error:before,[data-icon-after]:after,[data-icon-before]:before,[data-icon]:before,a.link-external:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}[data-icon]:before{content:attr(data-icon)}[data-icon-before]:before{content:attr(data-icon-before) "\00a0\00a0"}[data-icon-after]:after{content:"\00a0\00a0" attr(data-icon-after)}.error-view>.error-toggle:before{content:"\e81a"}.error-view>.error-toggle.enabled:before{content:"\e818"}.error-view>.error:before{content:"\e80d\00a0\00a0"}a.link-external:after{content:"\00a0\e80e"}</style>
<style id="style-core-display" type="text/css">#story{z-index:10;margin:2.5em}@media screen and (max-width:1136px){#story{margin-right:1.5em}}#passages{max-width:54em;margin:0 auto}</style>
<style id="style-core-passage" type="text/css">.passage{line-height:1.75;text-align:left;-webkit-transition:opacity .4s ease-in;-o-transition:opacity .4s ease-in;transition:opacity .4s ease-in}.passage-in{opacity:0}.passage ol,.passage ul{margin-left:.5em;padding-left:1.5em}.passage table{margin:1em 0;border-collapse:collapse;font-size:100%}.passage caption,.passage td,.passage th,.passage tr{padding:3px}</style>
<style id="style-core-macro" type="text/css">@-webkit-keyframes cursor-blink{0%{opacity:1}50%{opacity:0}100%{opacity:1}}@-o-keyframes cursor-blink{0%{opacity:1}50%{opacity:0}100%{opacity:1}}@keyframes cursor-blink{0%{opacity:1}50%{opacity:0}100%{opacity:1}}.macro-append-insert,.macro-linkappend-insert,.macro-linkprepend-insert,.macro-linkreplace-insert,.macro-prepend-insert,.macro-repeat-insert,.macro-replace-insert,.macro-timed-insert{-webkit-transition:opacity .4s ease-in;-o-transition:opacity .4s ease-in;transition:opacity .4s ease-in}.macro-append-in,.macro-linkappend-in,.macro-linkprepend-in,.macro-linkreplace-in,.macro-prepend-in,.macro-repeat-in,.macro-replace-in,.macro-timed-in{opacity:0}.macro-type-cursor:after{-webkit-animation:cursor-blink 1s infinite;-o-animation:cursor-blink 1s infinite;animation:cursor-blink 1s infinite;content:"\2590";opacity:1}</style>
<style id="style-ui-dialog" type="text/css">html[data-dialog] body{overflow:hidden}#ui-overlay.open{visibility:visible;-webkit-transition:opacity .2s ease-in;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in}#ui-overlay:not(.open){-webkit-transition:visibility .2s step-end,opacity .2s ease-in;-o-transition:visibility .2s step-end,opacity .2s ease-in;transition:visibility .2s step-end,opacity .2s ease-in}#ui-overlay{visibility:hidden;opacity:0;z-index:100000;position:fixed;top:-50%;left:-50%;height:200%;width:200%}#ui-dialog.open{display:block;-webkit-transition:opacity .2s ease-in;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in}#ui-dialog{display:none;opacity:0;z-index:100100;position:fixed;top:50px;margin:0;padding:0}#ui-dialog>*{-webkit-box-sizing:border-box;box-sizing:border-box}#ui-dialog-titlebar{position:relative}#ui-dialog-close{display:block;position:absolute;right:0;top:0;white-space:nowrap}#ui-dialog-body{overflow:auto;min-width:280px;height:92%;height:calc(100% - 2.1em)}#ui-overlay{background-color:#000}#ui-overlay.open{opacity:.8}#ui-dialog{max-width:66em}#ui-dialog.open{opacity:1}#ui-dialog-titlebar{background-color:#444;min-height:24px}#ui-dialog-title{margin:0;padding:.2em 3.5em .2em .5em;font-size:1.5em;text-align:center;text-transform:uppercase}#ui-dialog-close{cursor:pointer;font-size:120%;margin:0;padding:0;width:3.6em;height:92%;background-color:transparent;border:1px solid transparent;-webkit-transition-duration:.2s;-o-transition-duration:.2s;transition-duration:.2s}#ui-dialog-close:hover{background-color:#b44;border-color:#d66}#ui-dialog-body{background-color:#111;border:1px solid #444;text-align:left;line-height:1.5;padding:1em}#ui-dialog-body>:first-child{margin-top:0}#ui-dialog-body hr{background-color:#444}#ui-dialog-body ul.buttons{margin:0;padding:0;list-style:none}#ui-dialog-body ul.buttons li{display:inline-block;margin:0;padding:.4em .4em 0 0}#ui-dialog-body ul.buttons>li+li>button{margin-left:1em}#ui-dialog-close{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-close{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}</style>
<style id="style-ui" type="text/css">#ui-dialog-body.settings [id|=setting-body]>div:first-child{display:table;width:100%}#ui-dialog-body.settings [id|=setting-label]{display:table-cell;padding:.4em 2em .4em 0}#ui-dialog-body.settings [id|=setting-label]+div{display:table-cell;min-width:8em;text-align:right;vertical-align:middle;white-space:nowrap}#ui-dialog-body.list{padding:0}#ui-dialog-body.list ul{margin:0;padding:0;list-style:none;border:1px solid transparent}#ui-dialog-body.list li{margin:0}#ui-dialog-body.list li:not(:first-child){border-top:1px solid #444}#ui-dialog-body.list li a{display:block;padding:.25em .75em;border:1px solid transparent;color:#eee;text-decoration:none}#ui-dialog-body.list li a:hover{background-color:#333;border-color:#eee}#ui-dialog-body.saves{padding:0 0 1px}#ui-dialog-body.saves>:not(:first-child){border-top:1px solid #444}#ui-dialog-body.saves table{border-spacing:0;width:100%}#ui-dialog-body.saves tr:not(:first-child){border-top:1px solid #444}#ui-dialog-body.saves td{padding:.33em .33em}#ui-dialog-body.saves td:first-child{min-width:1.5em;text-align:center}#ui-dialog-body.saves td:nth-child(3){line-height:1.2}#ui-dialog-body.saves td:last-child{text-align:right}#ui-dialog-body.saves .empty{color:#999;speak:none;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-body.saves .datestamp{font-size:75%;margin-left:1em}#ui-dialog-body.saves ul.buttons li{padding:.4em}#ui-dialog-body.saves ul.buttons>li+li>button{margin-left:.2em}#ui-dialog-body.saves ul.buttons li:last-child{float:right}#ui-dialog-body.settings div[id|=header-body]{margin:1em 0}#ui-dialog-body.settings div[id|=header-body]:first-child{margin-top:0}#ui-dialog-body.settings div[id|=header-body]:not(:first-child){border-top:1px solid #444;padding-top:1em}#ui-dialog-body.settings div[id|=header-body]>*{margin:0}#ui-dialog-body.settings h2[id|=header-heading]{font-size:1.375em}#ui-dialog-body.settings p[id|=header-desc],#ui-dialog-body.settings p[id|=setting-desc]{font-size:87.5%;margin:0 0 0 .5em}#ui-dialog-body.settings div[id|=setting-body]+div[id|=setting-body]{margin:1em 0}#ui-dialog-body.settings [id|=setting-control]{white-space:nowrap}#ui-dialog-body.settings button[id|=setting-control]{color:#eee;background-color:transparent;border:1px solid #444;padding:.4em}#ui-dialog-body.settings button[id|=setting-control]:hover{background-color:#333;border-color:#eee}#ui-dialog-body.settings button[id|=setting-control].enabled{background-color:#282;border-color:#4a4}#ui-dialog-body.settings button[id|=setting-control].enabled:hover{background-color:#4a4;border-color:#6c6}#ui-dialog-body.settings input[type=range][id|=setting-control]{max-width:35vw}#ui-dialog-body.list a,#ui-dialog-body.settings span[id|=setting-input]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-body.saves button[id=saves-clear]:before,#ui-dialog-body.saves button[id=saves-export]:before,#ui-dialog-body.saves button[id=saves-import]:before,#ui-dialog-body.settings button[id|=setting-control].enabled:after,#ui-dialog-body.settings button[id|=setting-control]:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#ui-dialog-body.saves button[id=saves-export]:before{content:"\e829\00a0"}#ui-dialog-body.saves button[id=saves-import]:before{content:"\e82a\00a0"}#ui-dialog-body.saves button[id=saves-clear]:before{content:"\e827\00a0"}#ui-dialog-body.settings button[id|=setting-control]:after{content:"\00a0\00a0\e830"}#ui-dialog-body.settings button[id|=setting-control].enabled:after{content:"\00a0\00a0\e831"}</style>
<style id="style-ui-bar" type="text/css">#story{margin-left:20em;-webkit-transition:margin-left .2s ease-in;-o-transition:margin-left .2s ease-in;transition:margin-left .2s ease-in}#ui-bar.stowed~#story{margin-left:4.5em}@media screen and (max-width:1136px){#story{margin-left:19em}#ui-bar.stowed~#story{margin-left:3.5em}}@media screen and (max-width:768px){#story{margin-left:3.5em}}#ui-bar{position:fixed;z-index:50;top:0;left:0;width:17.5em;height:100%;margin:0;padding:0;-webkit-transition:left .2s ease-in;-o-transition:left .2s ease-in;transition:left .2s ease-in}#ui-bar.stowed{left:-15.5em}#ui-bar-tray{position:absolute;top:.2em;left:0;right:0}#ui-bar-body{height:90%;height:calc(100% - 2.5em);margin:2.5em 0;padding:0 1.5em}#ui-bar.stowed #ui-bar-body,#ui-bar.stowed #ui-bar-history{visibility:hidden;-webkit-transition:visibility .2s step-end;-o-transition:visibility .2s step-end;transition:visibility .2s step-end}#ui-bar{background-color:#222;border-right:1px solid #444;text-align:center}#ui-bar a{text-decoration:none}#ui-bar hr{border-color:#444}#ui-bar-history [id|=history],#ui-bar-toggle{font-size:1.2em;line-height:inherit;color:#eee;background-color:transparent;border:1px solid #444}#ui-bar-toggle{display:block;position:absolute;top:0;right:0;border-right:none;padding:.3em .45em .25em}#ui-bar.stowed #ui-bar-toggle{padding:.3em .35em .25em .55em}#ui-bar-toggle:hover{background-color:#444;border-color:#eee}#ui-bar-history{margin:0 auto}#ui-bar-history [id|=history]{padding:.2em .45em .35em}#ui-bar-history #history-jumpto{padding:.2em .665em .35em}#ui-bar-history [id|=history]:not(:first-child){margin-left:1.2em}#ui-bar-history [id|=history]:hover{background-color:#444;border-color:#eee}#ui-bar-history [id|=history]:disabled{color:#444;background-color:transparent;border-color:#444}#ui-bar-body{line-height:1.5;overflow:auto}#ui-bar-body>:not(:first-child){margin-top:2em}#story-title{margin:0;font-size:162.5%}#story-author{margin-top:2em;font-weight:700}#menu ul{margin:1em 0 0;padding:0;list-style:none;border:1px solid #444}#menu ul:empty{display:none}#menu li{margin:0}#menu li:not(:first-child){border-top:1px solid #444}#menu li a{display:block;padding:.25em .75em;border:1px solid transparent;color:#eee;text-transform:uppercase}#menu li a:hover{background-color:#444;border-color:#eee}#menu a,#ui-bar-history [id|=history],#ui-bar-toggle{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#menu-core li[id|=menu-item] a:before,#ui-bar-history [id|=history],#ui-bar-toggle:before{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#ui-bar-toggle:before{content:"\e81d"}#ui-bar.stowed #ui-bar-toggle:before{content:"\e81e"}#menu-item-saves a:before{content:"\e82b\00a0"}#menu-item-settings a:before{content:"\e82d\00a0"}#menu-item-restart a:before{content:"\e82c\00a0"}#menu-item-share a:before{content:"\e82f\00a0"}</style>
<style id="style-ui-debug" type="text/css">#debug-bar{background-color:#222;border-left:1px solid #444;border-top:1px solid #444;bottom:0;margin:0;max-height:75%;padding:.5em;position:fixed;right:0;z-index:99900}#debug-bar>div:not([id])+div{margin-top:.5em}#debug-bar>div>label{margin-right:.5em}#debug-bar>div>input[type=text]{min-width:0;width:8em}#debug-bar>div>select{width:15em}#debug-bar-toggle{color:#eee;background-color:#222;border:1px solid #444;height:101%;height:calc(100% + 1px);left:-2em;left:calc(-2em - 1px);position:absolute;top:-1px;width:2em}#debug-bar-toggle:hover{background-color:#333;border-color:#eee}#debug-bar-hint{bottom:.175em;font-size:4.5em;opacity:.33;pointer-events:none;position:fixed;right:.6em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}#debug-bar-watch{background-color:#222;border-left:1px solid #444;border-top:1px solid #444;bottom:102%;bottom:calc(100% + 1px);font-size:.9em;left:-1px;max-height:650%;max-height:65vh;position:absolute;overflow-x:hidden;overflow-y:scroll;right:0;z-index:99800}#debug-bar-watch[hidden]{display:none}#debug-bar-watch div{color:#999;font-style:italic;margin:1em auto;text-align:center}#debug-bar-watch table{width:100%}#debug-bar-watch tr:nth-child(2n){background-color:rgba(127,127,127,.15)}#debug-bar-watch td{padding:.2em 0}#debug-bar-watch td:first-child+td{padding:.2em .3em .2em .1em}#debug-bar-watch .watch-delete{background-color:transparent;border:none;color:#c00}#debug-bar-watch-all,#debug-bar-watch-none{margin-left:.5em}#debug-bar-views-toggle,#debug-bar-watch-toggle{color:#eee;background-color:transparent;border:1px solid #444;margin-right:1em;padding:.4em}#debug-bar-views-toggle:hover,#debug-bar-watch-toggle:hover{background-color:#333;border-color:#eee}#debug-bar-watch:not([hidden])~div #debug-bar-watch-toggle,html[data-debug-view] #debug-bar-views-toggle{background-color:#282;border-color:#4a4}#debug-bar-watch:not([hidden])~div #debug-bar-watch-toggle:hover,html[data-debug-view] #debug-bar-views-toggle:hover{background-color:#4a4;border-color:#6c6}#debug-bar-hint:after,#debug-bar-toggle:before,#debug-bar-views-toggle:after,#debug-bar-watch .watch-delete:before,#debug-bar-watch-add:before,#debug-bar-watch-all:before,#debug-bar-watch-none:before,#debug-bar-watch-toggle:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#debug-bar-toggle:before{content:"\e838"}#debug-bar-hint:after{content:"\e838\202f\e822"}#debug-bar-watch .watch-delete:before{content:"\e804"}#debug-bar-watch-add:before{content:"\e805"}#debug-bar-watch-all:before{content:"\e83a"}#debug-bar-watch-none:before{content:"\e827"}#debug-bar-views-toggle:after,#debug-bar-watch-toggle:after{content:"\00a0\00a0\e830"}#debug-bar-watch:not([hidden])~div #debug-bar-watch-toggle:after,html[data-debug-view] #debug-bar-views-toggle:after{content:"\00a0\00a0\e831"}html[data-debug-view] .debug{padding:.25em;background-color:#234}html[data-debug-view] .debug[title]{cursor:help}html[data-debug-view] .debug.block{display:inline-block;vertical-align:middle}html[data-debug-view] .debug.invalid{text-decoration:line-through}html[data-debug-view] .debug.hidden,html[data-debug-view] .debug.hidden .debug{background-color:#555}html:not([data-debug-view]) .debug.hidden{display:none}html[data-debug-view] .debug[data-name][data-type].nonvoid:after,html[data-debug-view] .debug[data-name][data-type]:before{background-color:rgba(0,0,0,.25);font-family:monospace,monospace;white-space:pre}html[data-debug-view] .debug[data-name][data-type]:before{content:attr(data-name)}html[data-debug-view] .debug[data-name][data-type|=macro]:before{content:"<<" attr(data-name) ">>"}html[data-debug-view] .debug[data-name][data-type|=macro].nonvoid:after{content:"<</" attr(data-name) ">>"}html[data-debug-view] .debug[data-name][data-type|=html]:before{content:"<" attr(data-name) ">"}html[data-debug-view] .debug[data-name][data-type|=html].nonvoid:after{content:"</" attr(data-name) ">"}html[data-debug-view] .debug[data-name][data-type]:not(:empty):before{margin-right:.25em}html[data-debug-view] .debug[data-name][data-type].nonvoid:not(:empty):after{margin-left:.25em}html[data-debug-view] .debug[data-name][data-type|=special],html[data-debug-view] .debug[data-name][data-type|=special]:before{display:block}</style>
</head>
<body>
<div id="init-screen">
<div id="init-no-js"><noscript>JavaScript is required. Please enable it to continue.</noscript></div>
<div id="init-lacking">Your browser lacks required capabilities. Please upgrade it or switch to another to continue.</div>
<div id="init-loading"><div>Loading…</div></div>
</div>
<tw-storydata name="asylum" startnode="1" creator="Twine" creator-version="2.3.14" ifid="F95AFF43-B9C0-499E-BEB9-1421717F6850" zoom="1" format="SugarCube" format-version="2.34.1" options="" hidden><style role="stylesheet" id="twine-user-stylesheet" type="text/twine-css">body {
background-color: #f5f3e6;
font-size: 150%;
color: #324c00;
}
a {
color: #7a8800;
font-style: narrow;
font-size: 75%;
}
input[type="text"] {
background: white;
color: black;
}
input[type="text"]:hover {
background: white;
color: black;
}
input[type="text"]:onmouseout {
background: white;
color: black;
}
input[type="text"]:change {
background: white;
color: black;
}
input[type="text"]:keypress {
background: white;
color: black;
}
.ending {
background-color: #d5c68d;
}
.happy-ending {
background-color: #cfe2f3;
color: #134f5c;
}
.macro-timed-insert {
-webkit-transition-duration: 400ms;
-o-transition-duration: 400ms;
transition-duration: 400ms;
}
.footer {
font-size: 50%;
}
.credits {
color: black;
}
#ui-bar {
display: none;
}
#story {
margin-left:3.5em;
}</style><script role="script" id="twine-user-script" type="text/twine-javascript"></script><tw-tag name="ending" color="blue"></tw-tag>,<tw-tag name="footer" color="red"></tw-tag>,<tw-tag name="happy-ending" color="purple"></tw-tag>,<tw-tag name="has-image" color="yellow"></tw-tag>,<tw-tag name="image" color="yellow"></tw-tag>,<tw-tag name="increase-drug-level" color="red"></tw-tag>,<tw-tag name="meta" color="orange"></tw-tag>,<tw-tag name="reduce-drug-level" color="green"></tw-tag><tw-passagedata pid="1" name="Start" tags="" position="829,238" size="100,100"><<set $final_ending to false>><<audio mainsong volume 0.5 loop play>><<if $times is 0>>You start to wake up feeling dizzy, like from a dream. A bad dream.
<<elseif $times is 1>>You wake up again feeling dizzy, like from a dream. A //very// bad dream.
[[Care to read some hints?|hints]]
<<else>>You wake up again feeling dizzy, like from a dream. A //very// bad dream.
<</if>><<set $times += 1>>
[[You want to wake up.|wake up]]
[[Nah, keep sleeping.|keep sleeping][$medicine_level to ($medicine_level -1)]]</tw-passagedata><tw-passagedata pid="2" name="wake up" tags="has-image" position="634,449" size="100,100"><<audio mainsong volume 1>>You look around. Well, a little. You're moving but you notice you're not walking -- you're laying in some sort of stretcher, tied up.
"//What?!//" -- you think.
You are in a hospital-like building. There are a number of people walking by, but only two are watching you, as they carry your stretcher across the hallway.
<<set $randomimage = random(1, 12)>>
[img["images/" + $randomimage + ".png"]]
You seem to be firmly tied, but you can still [[move your wrists|try to break free][$medicine_level to ($medicine_level - 1)]].
[[Try to talk to the nurses close to you.|talk to nurses][$medicine_level to ($medicine_level - 1)]]
[[You keep quiet, trying to understand what is happening.|keep quiet]]</tw-passagedata><tw-passagedata pid="3" name="keep sleeping" tags="ending reduce-drug-level" position="1330,379" size="100,100"><<audio yawn play>><<audio mainsong volume 0.2>><<set $ending to true>>
You keep sleeping<<if $times gt 1>> this time<</if>>. You see nothing. You hear nothing. Sometimes you feel something, but you'd rather you didn't.
You can still [[wake up]], if you want.</tw-passagedata><tw-passagedata pid="4" name="try to break free" tags="reduce-drug-level" position="896,540" size="100,100">You cannot break free, you're really tied up.
<<if $medicine_level lte 0>>
//Or so you thought... Your ties actually seem to be loosen now.//
<</if>>
[[Look at the people carrying your stretcher.|look nurses]]
[[Go back to sleep, this must be a nightmare.|keep sleeping][$medicine_level to ($medicine_level - 1)]]
<<if $medicine_level lte 0>>[[You untie yourself and get up from the stretch, scarying the nurses, that call for help in no time.|run]]<</if>></tw-passagedata><tw-passagedata pid="5" name="look nurses" tags="" position="611,565" size="100,100">They don't seem pleased to see you're awaken.
[[Talk to the nurses.|talk to nurses]]</tw-passagedata><tw-passagedata pid="6" name="talk to nurses" tags="reduce-drug-level" position="439,502" size="100,100">"Where am I?" -- you ask them.
They look at each other.
"No memories of being here. Take note of the that, the doctor would like to know." -- one says to the other, deliberately ignoring you.
"You'll feel better in no time, honey." the other nurse replies to you, giving //that// look to the other. "We're taking you to the doctor. We'll take good care of you here, prescribe you a treatment. You will be able to see your family and friends again shortly, you'll see."
"Yeah... shortly or someday. Maybe", the first one complements, rolling eyes.
They open a door in the end of the hallway and knock. They are going to push you into the room.
[[You enter the doctor's office.|doctors office]]
<<if $medicine_level lte 0>>[[You now notice your ties are loosen. You hurry to get up from the stretch, making the nurses call for help.|run]]<</if>></tw-passagedata><tw-passagedata pid="7" name="doctors office" tags="" position="227,684" size="100,100"><<audio door play>><<audio mainsong volume 0.2>>The nurses leave the room and close the door.
You look across the very large room, hardly a typical doctor's office, and you see someone bended over a small table, picking papers maybe. The doctor goes to where you are, start untying you and says:
"Now, now, you're here! How are you today?",
It feels good to have your hands free.
"[[Where is here exactly?|ask doctor where]]", you ask.</tw-passagedata><tw-passagedata pid="8" name="run from doctor" tags="" position="533,1028" size="100,100"><<audio door play>><<audio mainsong volume 1>>//"This conversation did not make sense. I'm out of here"//, you still manage to think, in the run.
You go to nearest bright green exit sign. No one pays attention to you at this point.
You open the exit door.
[[You go down the stairs.|downstairs]]
[[You take the emergency exit ladder.|emergency ladder]]</tw-passagedata><tw-passagedata pid="9" name="ask doctor where" tags="" position="231,893" size="100,100">"Oh, I see you don't remember our conversation yesterday?"
"Was I here yesterday?!", you ask, looking around confused. "I... can't remember."
"What's the last thing you remember?", the doctor asks, starting to make notes.
You think. And realize not much.
"Do you know what your name is?", the doctor insists.
<<set $name to "">>
[[You tell the doctor your name.|tell name][$medicine_level to ($medicine_level - 1)]]
[[You ignore the question and ask why you're being kept in the hospital.|talk to doctor]]
<<if $medicine_level lt 3>>[[You get up fast, don't give the doctor time for anything else, and escape from the room.|run from doctor]]
<</if>></tw-passagedata><tw-passagedata pid="10" name="tell name" tags="reduce-drug-level" position="89,1078" size="100,100">You can say your name:
<<textbox "$name" "">>
Or not. Up to you.
[[You ask the doctor why you're being kept in the hospital.|talk to doctor]]</tw-passagedata><tw-passagedata pid="11" name="emergency ladder" tags="" position="915,828" size="100,100"><<audio mainsong volume 0.2>><<audio metalstairs fadeout>>You finish going down the ladder. You're free, in the street now, and you see no one from the hospital is on sight.
[[You walk towards the back street, to get distance from this place.|walk with caution]]
[[You walk in the direction of the park nearby.|park]]
[[You look behind to see if there's anyone following you.|guards]]</tw-passagedata><tw-passagedata pid="12" name="walk with caution" tags="happy-ending ending" position="1101,641" size="100,100"><<audio mainsong fadeoverto 2 0>><<audio birds fadeout>><<set $ending to true>>
<<set $final_ending to true>>
You keep walking, very aware of your unusual outfit, while you try to remember how to get home. And who you are. Eventually the effects of the medication will run off and you'll be able to find your way.
You'll get there. You will be okay.
<<timed 2000ms t8n>>You think.
<</timed>></tw-passagedata><tw-passagedata pid="13" name="guards" tags="ending increase-drug-level" position="1365,763" size="100,100"><<audio guards play>><<set $ending to true>>
<<set $lost to false>>
<<set $guards to random(1, 3)>>
<<if $guards is 1>>A guard comes running in your direction, followed by a nurse.
The guard is stronger than you, but you're faster. [[You manage to escape.|walk with caution]]
<<else>>$guards guards come running in your direction, followed by a nurse.
<<if $medicine_level lte 0>>You fight back, and somehow [[manage to escape.|walk with caution]]
<<else>>You fight back, but they overcome you. The nurse give you a shot, and you feel dizzy again, worse than before.<<set $lost to true>><</if>><</if>>
<<if $lost>><<set $medicine_level to ($medicine_level + 1)>>
<<if $medicine_level gte 6>>[[You pass out.|overdose]]
<<else>>[[You pass out.|Start]]
<</if>>
<</if>></tw-passagedata><tw-passagedata pid="14" name="downstairs" tags="" position="926,957" size="100,100"><<audio stairs play>>Downstairs, there's more people.
You don't have many options, though. [[You walk away by the front door, hoping no one will notice|guards]].</tw-passagedata><tw-passagedata pid="15" name="talk to doctor" tags="" position="407,1294" size="100,100"><<if $name is "">><<set $name to "my friend">><</if>>"Well, $name...", the doctor says. "There has been an incident. You were feeling sick, then we had to prescribe you a medicine. To make you feel better, you know."
"And why was I tied? Did I do anything bad?", you ask.
"There has been an incident. At that moment, you were a danger to yourself and others. We had to tie you, for your own protection, you see."
//"This doctor seem to be hiding something. Why the evasive responses?"//, you think to yourself.
[[You engage in a conversation with the doctor, trying to learn more.|engage in conversation][$medicine_level to ($medicine_level - 1)]]
<<if $medicine_level lt 3>>[[You run for the door in an attempt to escape.|run from doctor]]<</if>></tw-passagedata><tw-passagedata pid="16" name="StoryInit" tags="" position="224,83" size="100,100"><<set $times to 0>>
<<set $start_time to Date.now()>>
<<set $medicine_level to random(3, 5)>>
<<set $mult_factor to random(37, 69)>>
<<set $name to "">>
<<cacheaudio "mainsong" "audio/hospital.mp3">>
<<cacheaudio "door" "audio/door.mp3">>
<<cacheaudio "yawn" "audio/yawn.mp3">>
<<cacheaudio "beep" "audio/beep.mp3">>
<<cacheaudio "guards" "audio/running.mp3">>
<<cacheaudio "stairs" "audio/stairs.mp3">>
<<cacheaudio "metalstairs" "audio/metalstairs.mp3">>
<<cacheaudio "birds" "audio/birds.mp3">>
<<cacheaudio "tires" "audio/tires.mp3">></tw-passagedata><tw-passagedata pid="17" name="PassageFooter" tags="" position="342,141" size="100,100"><<if passage() isnot "credits" and passage() isnot "hints" and passage() isnot "spoilers">>
<<if $medicine_level lt 0>><<set $medicine_level to 0>>
<</if>>
<div class="footer">
<<if $final_ending>>
<<timed 4000ms t8n>>You were in the hospital for <<print (Date.now() - $start_time)>> <<print either(["milliseconds", "seconds", "minutes", "hours", "days", "weeks", "months", "years"])>>.
Drug blood level: it doesn't matter anymore.
<a data-passage="credits" class="credits">About Asylum</a>
<</timed>>
<<else>>You have been here for <<print (Date.now() - $start_time)>> <<print either(["milliseconds", "seconds", "minutes", "hours", "days", "weeks", "months", "years"])>>.
Drug blood level: <<print ($medicine_level * $mult_factor) / 100>>.
<</if>>
</div>
<</if>></tw-passagedata><tw-passagedata pid="18" name="PassageHeader" tags="" position="223,204" size="100,100"><<set $ending to false>>
<<set $final_ending to false>></tw-passagedata><tw-passagedata pid="19" name="engage in conversation" tags="reduce-drug-level" position="922,1114" size="100,100">"What type of incident? Did I hurt someone?", you ask.
"I'm afraid I cannot share the exact details with you, $name. I was hoping you could tell me more about yourself, your memories, and then we could learn together about what happened. The causes of it."
<<if $name is "">>"I can't even remember my own name", you say.
<<else>>"I can barely remember my own name", you say.
<</if>>
"I understand. This may take some time. Don't worry, we'll take good care of you in the meantime. And we have all the time in the world.", the doctor smiles. "By the way, it's time for your medicine now. Let me call the nurse."
The doctor gets the phone extension, to call for someone to help with your medication.
[[You wait while they talk, watching the room around you.|wait][$medicine_level to ($medicine_level + 1)]]
<<if $medicine_level lt 3>>[[You decide any medication that cause you to forget everything cannot be a good thing. You run for the door, to try to run away.|run from doctor]]<</if>></tw-passagedata><tw-passagedata pid="20" name="keep quiet" tags="" position="195,453" size="100,100">The nurses carry your stretch across a long corridor, until its end, watching you closely. They knock at a door. They are going to push you into the room.
[[You enter the doctor's office.|doctors office]]
<<if $medicine_level lte 0>>[[You notice your ties are loosen and quickly get up from the stretch, making the nurses call for help.|run]]<</if>></tw-passagedata><tw-passagedata pid="21" name="wait" tags="increase-drug-level ending" position="1634,856" size="100,100">A nurse arrives with a guard.
You don't fight, but they hold you firmly anyway. The nurse give you the shot, and you feel you're going to pass out.
<<set $medicine_level to ($medicine_level + 1)>>
<<if $medicine_level gte 6>>[[Everything goes black.|overdose]]
<<else>>[[Everything goes black.|Start]]
<</if>></tw-passagedata><tw-passagedata pid="22" name="overdose" tags="ending has-image" position="1559,513" size="100,100"><<audio mainsong fadeoverto 3 0>><<audio beep fadeout>><<set $final_ending to true>>
The drug levels in your blood were just too high.
<<timed 2000ms t8n>>
You never got the chance to recover your memory, and you feel sorry for that. For less than a second, though. You won't wake up again.
<<next>>
[img["images/life.gif"]]<</timed>></tw-passagedata><tw-passagedata pid="23" name="credits" tags="meta" position="511,93" size="100,100">Asylum is an interactive fiction created by Mírian Bruckschen Motta Barros during Ludum Dare 49 using Twine 2.1 with Sugarcube 2.34.1.
All graphics are public domain. Originals from https://picryl.com , minimally processed using Gimp.
All sounds are also public domain (CC 0), from https://freesound.org .
Version: 1.2.
<<set $times to 0>><<set $start_time to Date.now()>><<set $medicine_level to random(3, 5)>><<set $mult_factor to random(37, 69)>>
<<link "Go back to asylum." Start>><</link>>
<<link "Or check some hints first, maybe?" hints>><</link>></tw-passagedata><tw-passagedata pid="24" name="hints" tags="meta" position="640,91" size="100,100">Chance decides some events, as do the drug levels in your blood.
You cannot do much about chance, but you can stall, so that your blood drug levels reduce over time. Note that stalling can also work against you, though.
[[Go back to asylum.|Start]]
[[Even more hints? Be warned: spoilers ahead!|spoilers]]</tw-passagedata><tw-passagedata pid="25" name="spoilers" tags="meta" position="580,279" size="100,100">There are loop endings, yes, but definitive endings too.
If you choose your actions carefully and watch for your blood drug levels to reduce, you just might be able to escape.
Otherwise, if you get too many medication shots, or are just unlucky enough, you can overdose. Or get hit by a car.
[[Go back to hints.|hints]]</tw-passagedata><tw-passagedata pid="26" name="run" tags="" position="549,769" size="100,100"><<audio guards play>>You run for the nearest bright green exit sign you can spot. Everybody is looking at you, but you don't give them a chance.
You open the exit door.
[[You go down the stairs.|downstairs]]
[[You take the emergency exit ladder.|emergency ladder]]</tw-passagedata><tw-passagedata pid="27" name="park" tags="ending has-image" position="826,666" size="100,100"><<audio tires play>><<if $medicine_level lte 1>>You are //almost// hit by a car. [[Still shaking, you finish crossing.|walk with caution]]
<<else>><<set $final_ending to true>>You are hit by a car. For a second, with the adrenaline levels high, all drugs wear off and you remember... you remember.
<<timed 2000ms t8n>>
You had a good life.
<<next>>
[img["images/life.gif"]]<</timed>>
<</if>></tw-passagedata></tw-storydata>
<script id="script-sugarcube" type="text/javascript">
/*! SugarCube JS */
if(document.documentElement.getAttribute("data-init")==="loading"){!function(window,document,jQuery,undefined){"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}return Array.from(e)}var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),_slicedToArray=function(){function e(e,t){var r=[],n=!0,a=!1,i=undefined;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!t||r.length!==t);n=!0);}catch(e){a=!0,i=e}finally{try{!n&&s.return&&s.return()}finally{if(a)throw i}}return r}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},errorPrologRegExp=/^(?:(?:uncaught\s+(?:exception:\s+)?)?\w*(?:error|exception|_err):\s+)+/i,Alert=function(){function e(e,t,r,n){var a="fatal"===e,i="Apologies! "+(a?"A fatal":"An")+" error has occurred.";i+=a?" Aborting.":" You may be able to continue, but some parts may not work properly.",null==t&&null==r||(i+="\n\nError",null!=t&&(i+=" ["+t+"]"),i+=null!=r?": "+r.replace(errorPrologRegExp,"")+".":": unknown error."),"object"===(void 0===n?"undefined":_typeof(n))&&null!==n&&n.stack&&(i+="\n\nStack Trace:\n"+n.stack),window.alert(i)}function t(t,r,n){e(null,t,r,n)}function r(t,r,n){e("fatal",t,r,n)}return function(e){window.onerror=function(n,a,i,o,s){"complete"===document.readyState?t(null,n,s):(r(null,n,s),window.onerror=e,"function"==typeof window.onerror&&window.onerror.apply(this,arguments))}}(window.onerror),Object.freeze(Object.defineProperties({},{error:{value:t},fatal:{value:r}}))}(),Patterns=function(){var e=function(){var e=new Map([[" ","\\u0020"],["\f","\\f"],["\n","\\n"],["\r","\\r"],["\t","\\t"],["\v","\\v"],[" ","\\u00a0"],[" ","\\u1680"],["","\\u180e"],[" ","\\u2000"],[" ","\\u2001"],[" ","\\u2002"],[" ","\\u2003"],[" ","\\u2004"],[" ","\\u2005"],[" ","\\u2006"],[" ","\\u2007"],[" ","\\u2008"],[" ","\\u2009"],[" ","\\u200a"],["\u2028","\\u2028"],["\u2029","\\u2029"],[" ","\\u202f"],[" ","\\u205f"],[" ","\\u3000"],["\ufeff","\\ufeff"]]),t=/^\s$/,r="";return e.forEach(function(e,n){t.test(n)||(r+=e)}),r?"[\\s"+r+"]":"\\s"}(),t="[\\u0020\\f\\t\\v\\u00a0\\u1680\\u180e\\u2000-\\u200a\\u202f\\u205f\\u3000\\ufeff]",r="\\s"===e?"\\S":e.replace(/^\[/,"[^"),n="[0-9A-Z_a-z\\-\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]",a=n.replace("\\-",""),i=function(){var e="(?:[\\x2D.0-9A-Z_a-z\\xB7\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u037D\\u037F-\\u1FFF\\u200C\\u200D\\u203F\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]|[\\uD800-\\uDB7F][\\uDC00-\\uDFFF])";return"[A-Za-z](?:"+e+"*-"+e+"*|[0-9A-Za-z]*)"}(),o=function(){return"("+n+"+)\\(([^\\)\\|\\n]+)\\):|"+t+"*("+n+"+)"+t+"*:([^;\\|\\n]+);|"+t+"*((?:[#.]"+n+"+"+t+"*)+);"}();return Object.freeze({space:e,spaceNoTerminator:t,lineTerminator:"[\\n\\r\\u2028\\u2029]",notSpace:r,anyChar:"(?:.|[\\n\\r\\u2028\\u2029])",anyLetter:n,anyLetterStrict:a,identifierFirstChar:"[$A-Z_a-z]",identifierNextChar:"[$0-9A-Z_a-z]",identifier:"[$A-Z_a-z][$0-9A-Z_a-z]*",variableSigil:"[$_]",variable:"[$_][$A-Z_a-z][$0-9A-Z_a-z]*",macroName:"[A-Za-z][\\w-]*|[=-]",templateName:"[A-Za-z][\\w-]*",htmlTagName:i,cssIdOrClassSigil:"[#.]",cssImage:"\\[[<>]?[Ii][Mm][Gg]\\[(?:\\s|\\S)*?\\]\\]+",inlineCss:o,url:"(?:file|https?|mailto|ftp|javascript|irc|news|data):[^\\s'\"]+"})}();!function(){function e(e,t){var r=Number.parseInt(e,10)||0;if(r<1)return"";var n=void 0===t?"":String(t);for(""===n&&(n=" ");n.length<r;){var a=n.length,i=r-a;n+=a>i?n.slice(0,i):n}return n.length>r&&(n=n.slice(0,r)),n}var t=function(){function e(e,n){var a=String(e);if(!a)return a;switch(n){case"start":return t.test(a)?a.replace(t,""):a;case"end":return r.test(a)?a.replace(r,""):a;default:throw new Error('_trimString called with incorrect where parameter value: "'+n+'"')}}var t=new RegExp("^"+Patterns.space+Patterns.space+"*"),r=new RegExp(""+Patterns.space+Patterns.space+"*$");return e}();Array.prototype.flat||Object.defineProperty(Array.prototype,"flat",{configurable:!0,writable:!0,value:function(){function e(){if(null==this)throw new TypeError("Array.prototype.flat called on null or undefined");var t=0===arguments.length?1:Number(arguments[0])||0;return t<1?Array.prototype.slice.call(this):Array.prototype.reduce.call(this,function(r,n){return n instanceof Array?r.push.apply(r,_toConsumableArray(e.call(n,t-1))):r.push(n),r},[])}return e}()}),Array.prototype.flatMap||Object.defineProperty(Array.prototype,"flatMap",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.flatMap called on null or undefined");return Array.prototype.map.apply(this,arguments).flat()}}),Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includes called on null or undefined");if(0===arguments.length)return!1;var e=this.length>>>0;if(0===e)return!1;var t=arguments[0],r=Number(arguments[1])||0;for(r<0&&(r=Math.max(0,e+r));r<e;++r){var n=this[r];if(n===t||n!==n&&t!==t)return!0}return!1}}),Object.entries||Object.defineProperty(Object,"entries",{configurable:!0,writable:!0,value:function(e){if("object"!==(void 0===e?"undefined":_typeof(e))||null===e)throw new TypeError("Object.entries object parameter must be an object");return Object.keys(e).map(function(t){return[t,e[t]]})}}),Object.fromEntries||Object.defineProperty(Object,"fromEntries",{configurable:!0,writable:!0,value:function(e){return Array.from(e).reduce(function(e,t){if(Object(t)!==t)throw new TypeError("Object.fromEntries iterable parameter must yield objects");return t[0]in e?Object.defineProperty(e,t[0],{configurable:!0,enumerable:!0,writable:!0,value:t[1]}):e[t[0]]=t[1],e},{})}}),Object.getOwnPropertyDescriptors||Object.defineProperty(Object,"getOwnPropertyDescriptors",{configurable:!0,writable:!0,value:function(e){if(null==e)throw new TypeError("Object.getOwnPropertyDescriptors object parameter is null or undefined");var t=Object(e);return Reflect.ownKeys(t).reduce(function(e,r){var n=Object.getOwnPropertyDescriptor(t,r);return void 0!==n&&(r in e?Object.defineProperty(e,r,{configurable:!0,enumerable:!0,writable:!0,value:n}):e[r]=n),e},{})}}),Object.values||Object.defineProperty(Object,"values",{configurable:!0,writable:!0,value:function(e){if("object"!==(void 0===e?"undefined":_typeof(e))||null===e)throw new TypeError("Object.values object parameter must be an object");return Object.keys(e).map(function(t){return e[t]})}}),String.prototype.padStart||Object.defineProperty(String.prototype,"padStart",{configurable:!0,writable:!0,value:function(t,r){if(null==this)throw new TypeError("String.prototype.padStart called on null or undefined");var n=String(this),a=n.length,i=Number.parseInt(t,10);return i<=a?n:e(i-a,r)+n}}),String.prototype.padEnd||Object.defineProperty(String.prototype,"padEnd",{configurable:!0,writable:!0,value:function(t,r){if(null==this)throw new TypeError("String.prototype.padEnd called on null or undefined");var n=String(this),a=n.length,i=Number.parseInt(t,10);return i<=a?n:n+e(i-a,r)}}),String.prototype.trimStart||Object.defineProperty(String.prototype,"trimStart",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimStart called on null or undefined");return t(this,"start")}}),String.prototype.trimLeft||Object.defineProperty(String.prototype,"trimLeft",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimLeft called on null or undefined");return t(this,"start")}}),String.prototype.trimEnd||Object.defineProperty(String.prototype,"trimEnd",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimEnd called on null or undefined");return t(this,"end")}}),String.prototype.trimRight||Object.defineProperty(String.prototype,"trimRight",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimRight called on null or undefined");return t(this,"end")}})}(),function(){function _random(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("_random called with insufficient parameters");case 1:e=0,t=arguments[0];break;default:e=arguments[0],t=arguments[1]}if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(_nativeMathRandom()*(t-e+1))+e}function _randomIndex(e,t){var r=void 0,n=void 0;switch(t.length){case 1:r=0,n=e-1;break;case 2:r=0,n=Math.trunc(t[1]);break;default:r=Math.trunc(t[1]),n=Math.trunc(t[2])}return Number.isNaN(r)?r=0:!Number.isFinite(r)||r>=e?r=e-1:r<0&&(r=e+r)<0&&(r=0),Number.isNaN(n)?n=0:!Number.isFinite(n)||n>=e?n=e-1:n<0&&(n=e+n)<0&&(n=e-1),_random(r,n)}function _getCodePointStartAndEnd(e,t){var r=e.charCodeAt(t);if(Number.isNaN(r))return{char:"",start:-1,end:-1};if(r<55296||r>57343)return{char:e.charAt(t),start:t,end:t};if(r>=55296&&r<=56319){var n=t+1;if(n>=e.length)throw new Error("high surrogate without trailing low surrogate");var a=e.charCodeAt(n);if(a<56320||a>57343)throw new Error("high surrogate without trailing low surrogate");return{char:e.charAt(t)+e.charAt(n),start:t,end:n}}if(0===t)throw new Error("low surrogate without leading high surrogate");var i=t-1,o=e.charCodeAt(i);if(o<55296||o>56319)throw new Error("low surrogate without leading high surrogate");return{char:e.charAt(i)+e.charAt(t),start:i,end:t}}var _nativeMathRandom=Math.random;Object.defineProperty(Array,"random",{configurable:!0,writable:!0,value:function(e){if("object"!==(void 0===e?"undefined":_typeof(e))||null===e||!Object.prototype.hasOwnProperty.call(e,"length"))throw new TypeError("Array.random array parameter must be an array or array-lke object");var t=e.length>>>0;if(0!==t){return e[0===arguments.length?_random(0,t-1):_randomIndex(t,Array.prototype.slice.call(arguments,1))]}}}),Object.defineProperty(Array.prototype,"concatUnique",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.concatUnique called on null or undefined");var e=Array.from(this);if(0===arguments.length)return e;var t=Array.prototype.reduce.call(arguments,function(e,t){return e.concat(t)},[]),r=t.length;if(0===r)return e;for(var n=Array.prototype.indexOf,a=Array.prototype.push,i=0;i<r;++i){var o=t[i];-1===n.call(e,o)&&a.call(e,o)}return e}}),Object.defineProperty(Array.prototype,"count",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.count called on null or undefined");for(var e=Array.prototype.indexOf,t=arguments[0],r=Number(arguments[1])||0,n=0;-1!==(r=e.call(this,t,r));)++n,++r;return n}}),Object.defineProperty(Array.prototype,"delete",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.delete called on null or undefined");if(0===arguments.length)return[];var e=this.length>>>0;if(0===e)return[];for(var t=Array.prototype.concat.apply([],arguments),r=t.length,n=[],a=0;a<e;++a)for(var i=this[a],o=0;o<r;++o){var s=t[o];if(i===s||i!==i&&s!==s){n.push(a);break}}for(var u=[],l=0,c=n.length;l<c;++l)u[l]=this[n[l]];for(var d=Array.prototype.splice,f=n.length-1;f>=0;--f)d.call(this,n[f],1);return u}}),Object.defineProperty(Array.prototype,"deleteAt",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.deleteAt called on null or undefined");if(0===arguments.length)return[];var e=this.length>>>0;if(0===e)return[];for(var t=Array.prototype.splice,r=[].concat(_toConsumableArray(new Set(Array.prototype.concat.apply([],arguments).map(function(t){return t<0?Math.max(0,e+t):t})).values())),n=[].concat(_toConsumableArray(r)).sort(function(e,t){return t-e}),a=[],i=0,o=r.length;i<o;++i)a[i]=this[r[i]];for(var s=0,u=n.length;s<u;++s)t.call(this,n[s],1);return a}}),Object.defineProperty(Array.prototype,"deleteWith",{configurable:!0,writable:!0,value:function(e,t){if(null==this)throw new TypeError("Array.prototype.deleteWith called on null or undefined");if("function"!=typeof e)throw new Error("Array.prototype.deleteWith predicate parameter must be a function");var r=this.length>>>0;if(0===r)return[];for(var n=Array.prototype.splice,a=[],i=[],o=0;o<r;++o)e.call(t,this[o],o,this)&&(i.push(this[o]),a.push(o));for(var s=a.length-1;s>=0;--s)n.call(this,a[s],1);return i}}),Object.defineProperty(Array.prototype,"first",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.first called on null or undefined");if(0!=this.length>>>0)return this[0]}}),Object.defineProperty(Array.prototype,"includesAll",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includesAll called on null or undefined");if(1===arguments.length)return Array.isArray(arguments[0])?Array.prototype.includesAll.apply(this,arguments[0]):Array.prototype.includes.apply(this,arguments);for(var e=0,t=arguments.length;e<t;++e)if(!Array.prototype.some.call(this,function(e){return e===this.val||e!==e&&this.val!==this.val},{val:arguments[e]}))return!1;return!0}}),Object.defineProperty(Array.prototype,"includesAny",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includesAny called on null or undefined");if(1===arguments.length)return Array.isArray(arguments[0])?Array.prototype.includesAny.apply(this,arguments[0]):Array.prototype.includes.apply(this,arguments);for(var e=0,t=arguments.length;e<t;++e)if(Array.prototype.some.call(this,function(e){return e===this.val||e!==e&&this.val!==this.val},{val:arguments[e]}))return!0;return!1}}),Object.defineProperty(Array.prototype,"last",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.last called on null or undefined");var e=this.length>>>0;if(0!==e)return this[e-1]}}),Object.defineProperty(Array.prototype,"pluck",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.pluck called on null or undefined");var e=this.length>>>0;if(0!==e){var t=0===arguments.length?_random(0,e-1):_randomIndex(e,[].concat(Array.prototype.slice.call(arguments)));return Array.prototype.splice.call(this,t,1)[0]}}}),Object.defineProperty(Array.prototype,"pluckMany",{configurable:!0,writable:!0,value:function(e){if(null==this)throw new TypeError("Array.prototype.pluckMany called on null or undefined");var t=this.length>>>0;if(0===t)return[];var r=Math.trunc(e);if(!Number.isInteger(r))throw new Error("Array.prototype.pluckMany want parameter must be an integer");if(r<1)return[];r>t&&(r=t);var n=Array.prototype.splice,a=[],i=t-1;do{a.push(n.call(this,_random(0,i--),1)[0])}while(a.length<r);return a}}),Object.defineProperty(Array.prototype,"pushUnique",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.pushUnique called on null or undefined");var e=arguments.length;if(0===e)return this.length>>>0;for(var t=Array.prototype.indexOf,r=Array.prototype.push,n=0;n<e;++n){var a=arguments[n];-1===t.call(this,a)&&r.call(this,a)}return this.length>>>0}}),Object.defineProperty(Array.prototype,"random",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.random called on null or undefined");var e=this.length>>>0;if(0!==e){return this[0===arguments.length?_random(0,e-1):_randomIndex(e,[].concat(Array.prototype.slice.call(arguments)))]}}}),Object.defineProperty(Array.prototype,"randomMany",{configurable:!0,writable:!0,value:function(e){if(null==this)throw new TypeError("Array.prototype.randomMany called on null or undefined");var t=this.length>>>0;if(0===t)return[];var r=Math.trunc(e);if(!Number.isInteger(r))throw new Error("Array.prototype.randomMany want parameter must be an integer");if(r<1)return[];r>t&&(r=t);var n=new Map,a=[],i=t-1;do{var o=void 0;do{o=_random(0,i)}while(n.has(o));n.set(o,!0),a.push(this[o])}while(a.length<r);return a}}),Object.defineProperty(Array.prototype,"shuffle",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.shuffle called on null or undefined");var e=this.length>>>0;if(0===e)return this;for(var t=e-1;t>0;--t){var r=Math.floor(_nativeMathRandom()*(t+1));if(t!==r){var n=this[t];this[t]=this[r],this[r]=n}}return this}}),Object.defineProperty(Array.prototype,"unshiftUnique",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.unshiftUnique called on null or undefined");var e=arguments.length;if(0===e)return this.length>>>0;for(var t=Array.prototype.indexOf,r=Array.prototype.unshift,n=0;n<e;++n){var a=arguments[n];-1===t.call(this,a)&&r.call(this,a)}return this.length>>>0}}),Object.defineProperty(Function.prototype,"partial",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Function.prototype.partial called on null or undefined");var e=Array.prototype.slice,t=this,r=e.call(arguments,0);return function(){for(var n=[],a=0,i=0;i<r.length;++i)n.push(r[i]===undefined?arguments[a++]:r[i]);return t.apply(this,n.concat(e.call(arguments,a)))}}}),Object.defineProperty(Math,"clamp",{configurable:!0,writable:!0,value:function(e,t,r){var n=Number(e);return Number.isNaN(n)?NaN:n.clamp(t,r)}}),Object.defineProperty(Math,"easeInOut",{configurable:!0,writable:!0,value:function(e){return 1-(Math.cos(Number(e)*Math.PI)+1)/2}}),Object.defineProperty(Number.prototype,"clamp",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Number.prototype.clamp called on null or undefined");if(2!==arguments.length)throw new Error("Number.prototype.clamp called with an incorrect number of parameters");var e=Number(arguments[0]),t=Number(arguments[1]);if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.min(Math.max(this,e),t)}}),RegExp.escape||function(){var e=/[\\^$*+?.()|[\]{}]/g,t=new RegExp(e.source);Object.defineProperty(RegExp,"escape",{configurable:!0,writable:!0,value:function(r){var n=String(r);return n&&t.test(n)?n.replace(e,"\\$&"):n}})}(),function(){var e=/{(\d+)(?:,([+-]?\d+))?}/g,t=new RegExp(e.source);Object.defineProperty(String,"format",{configurable:!0,writable:!0,value:function(r){function n(e,t,r){if(!t)return e;var n=Math.abs(t)-e.length;if(n<1)return e;var a=String(r).repeat(n);return t<0?e+a:a+e}if(arguments.length<2)return 0===arguments.length?"":r;var a=2===arguments.length&&Array.isArray(arguments[1])?[].concat(_toConsumableArray(arguments[1])):Array.prototype.slice.call(arguments,1);return 0===a.length?r:t.test(r)?(e.lastIndex=0,r.replace(e,function(e,t,r){var i=a[t];if(null==i)return"";for(;"function"==typeof i;)i=i();switch(void 0===i?"undefined":_typeof(i)){case"string":break;case"object":i=JSON.stringify(i);break;default:i=String(i)}return n(i,r?Number.parseInt(r,10):0," ")})):r}})}(),Object.defineProperty(String.prototype,"contains",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.contains called on null or undefined");return-1!==String.prototype.indexOf.apply(this,arguments)}}),Object.defineProperty(String.prototype,"count",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.count called on null or undefined");var e=String(arguments[0]||"");if(""===e)return 0;for(var t=String.prototype.indexOf,r=e.length,n=Number(arguments[1])||0,a=0;-1!==(n=t.call(this,e,n));)++a,n+=r;return a}}),Object.defineProperty(String.prototype,"first",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.first called on null or undefined");return _getCodePointStartAndEnd(String(this),0).char}}),Object.defineProperty(String.prototype,"last",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.last called on null or undefined");var e=String(this);return _getCodePointStartAndEnd(e,e.length-1).char}}),Object.defineProperty(String.prototype,"splice",{configurable:!0,writable:!0,value:function(e,t,r){if(null==this)throw new TypeError("String.prototype.splice called on null or undefined");var n=this.length>>>0;if(0===n)return"";var a=Number(e);Number.isSafeInteger(a)?a<0&&(a+=n)<0&&(a=0):a=0,a>n&&(a=n);var i=Number(t);(!Number.isSafeInteger(i)||i<0)&&(i=0);var o=this.slice(0,a);return void 0!==r&&(o+=r),a+i<n&&(o+=this.slice(a+i)),o}}),Object.defineProperty(String.prototype,"splitOrEmpty",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.splitOrEmpty called on null or undefined");return""===String(this)?[]:String.prototype.split.apply(this,arguments)}}),Object.defineProperty(String.prototype,"toLocaleUpperFirst",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.toLocaleUpperFirst called on null or undefined");var e=String(this),t=_getCodePointStartAndEnd(e,0),r=t.char,n=t.end;return-1===n?"":r.toLocaleUpperCase()+e.slice(n+1)}}),Object.defineProperty(String.prototype,"toUpperFirst",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.toUpperFirst called on null or undefined");var e=String(this),t=_getCodePointStartAndEnd(e,0),r=t.char,n=t.end;return-1===n?"":r.toUpperCase()+e.slice(n+1)}}),Object.defineProperty(Date.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:date)",this.toISOString()]}}),Object.defineProperty(Function.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:eval)","("+this.toString()+")"]}}),Object.defineProperty(Map.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:map)",[].concat(_toConsumableArray(this))]}}),Object.defineProperty(RegExp.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:eval)",this.toString()]}}),Object.defineProperty(Set.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:set)",[].concat(_toConsumableArray(this))]}}),Object.defineProperty(JSON,"reviveWrapper",{configurable:!0,writable:!0,value:function(e,t){if("string"!=typeof e)throw new TypeError("JSON.reviveWrapper code parameter must be a string");return["(revive:eval)",[e,t]]}}),Object.defineProperty(JSON,"_real_stringify",{value:JSON.stringify}),Object.defineProperty(JSON,"stringify",{configurable:!0,writable:!0,value:function(e,t,r){return JSON._real_stringify(e,function(e,r){var n=r;if("function"==typeof t)try{n=t(e,n)}catch(e){}return void 0===n&&(n=["(revive:eval)","undefined"]),n},r)}}),Object.defineProperty(JSON,"_real_parse",{value:JSON.parse}),Object.defineProperty(JSON,"parse",{configurable:!0,writable:!0,value:function value(text,reviver){return JSON._real_parse(text,function(key,val){var value=val;if(Array.isArray(value)&&2===value.length)switch(value[0]){case"(revive:set)":value=new Set(value[1]);break;case"(revive:map)":value=new Map(value[1]);break;case"(revive:date)":value=new Date(value[1]);break;case"(revive:eval)":try{if(Array.isArray(value[1])){var $ReviveData$=value[1][1];value=eval(value[1][0])}else value=eval(value[1])}catch(e){}}else if("string"==typeof value&&"@@revive@@"===value.slice(0,10))try{value=eval(value.slice(10))}catch(e){}if("function"==typeof reviver)try{value=reviver(key,value)}catch(e){}return value})}}),Object.defineProperty(Array.prototype,"contains",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.contains called on null or undefined");return Array.prototype.includes.apply(this,arguments)}}),Object.defineProperty(Array.prototype,"containsAll",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.containsAll called on null or undefined");return Array.prototype.includesAll.apply(this,arguments)}}),Object.defineProperty(Array.prototype,"containsAny",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.containsAny called on null or undefined");return Array.prototype.includesAny.apply(this,arguments)}}),Object.defineProperty(Array.prototype,"flatten",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.flatten called on null or undefined");return Array.prototype.flat.call(this,1/0)}}),Object.defineProperty(String.prototype,"readBracketedList",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.readBracketedList called on null or undefined");for(var e=new RegExp("(?:\\[\\[((?:\\s|\\S)*?)\\]\\])|([^\"'\\s]\\S*)","gm"),t=[],r=void 0;null!==(r=e.exec(this));)r[1]?t.push(r[1]):r[2]&&t.push(r[2]);return t}})}();var Browser=function(){var e=navigator.userAgent.toLowerCase(),t=e.includes("windows phone"),r=Object.freeze({Android:!t&&e.includes("android"),BlackBerry:/blackberry|bb10/.test(e),iOS:!t&&/ip(?:hone|ad|od)/.test(e),Opera:!t&&("object"===_typeof(window.operamini)||e.includes("opera mini")),Windows:t||/iemobile|wpdesktop/.test(e),any:function(){return r.Android||r.BlackBerry||r.iOS||r.Opera||r.Windows}}),n=!r.Windows&&!/khtml|trident|edge/.test(e)&&e.includes("gecko"),a=!e.includes("opera")&&/msie|trident/.test(e),i=a?function(){var t=/(?:msie\s+|rv:)(\d+\.\d)/.exec(e);return t?Number(t[1]):0}():null,o=e.includes("opera")||e.includes(" opr/"),s=o?function(){var t=new RegExp((/khtml|chrome/.test(e)?"opr":"version")+"\\/(\\d+\\.\\d+)"),r=t.exec(e);return r?Number(r[1]):0}():null,u=e.includes("vivaldi");return Object.freeze({userAgent:e,isMobile:r,isGecko:n,isIE:a,ieVersion:i,isOpera:o,operaVersion:s,isVivaldi:u})}(),Has=function(){var e=function(){try{return"function"==typeof document.createElement("audio").canPlayType}catch(e){}return!1}(),t=function(){try{return"Blob"in window&&"File"in window&&"FileList"in window&&"FileReader"in window&&(!Browser.isOpera||Browser.operaVersion>=15)}catch(e){}return!1}(),r=function(){try{return"geolocation"in navigator&&"function"==typeof navigator.geolocation.getCurrentPosition&&"function"==typeof navigator.geolocation.watchPosition}catch(e){}return!1}(),n=function(){try{return"MutationObserver"in window&&"function"==typeof window.MutationObserver}catch(e){}return!1}(),a=function(){try{return"performance"in window&&"function"==typeof window.performance.now}catch(e){}return!1}(),i=function(){try{return"ontouchstart"in window||!!window.DocumentTouch&&document instanceof window.DocumentTouch||!!navigator.maxTouchPoints||!!navigator.msMaxTouchPoints}catch(e){}return!1}(),o=function(){try{for(var e=new Map([["transition","transitionend"],["MSTransition","msTransitionEnd"],["WebkitTransition","webkitTransitionEnd"],["MozTransition","transitionend"]]),t=[].concat(_toConsumableArray(e.keys())),r=document.createElement("div"),n=0;n<t.length;++n)if(r.style[t[n]]!==undefined)return e.get(t[n])}catch(e){}return!1}();return Object.freeze({audio:e,fileAPI:t,geolocation:r,mutationObserver:n,performance:a,touch:i,transitionEndEvent:o})}(),Visibility=function(){function e(){return a}function t(){return a&&document[a.stateProperty]||"visible"}function r(){return Boolean(a)}function n(){return Boolean(a&&document[a.hiddenProperty])}var a=function(){try{return Object.freeze([{hiddenProperty:"hidden",stateProperty:"visibilityState",changeEvent:"visibilitychange"},{hiddenProperty:"webkitHidden",stateProperty:"webkitVisibilityState",changeEvent:"webkitvisibilitychange"},{hiddenProperty:"mozHidden",stateProperty:"mozVisibilityState",changeEvent:"mozvisibilitychange"},{hiddenProperty:"msHidden",stateProperty:"msVisibilityState",changeEvent:"msvisibilitychange"}].find(function(e){return e.hiddenProperty in document}))}catch(e){}return undefined}();return Object.freeze(Object.defineProperties({},{vendor:{get:e},state:{get:t},isEnabled:{value:r},isHidden:{value:n},hiddenProperty:{value:a&&a.hiddenProperty},stateProperty:{value:a&&a.stateProperty},changeEvent:{value:a&&a.changeEvent}}))}(),Fullscreen=function(){function e(e){var t=e||document.documentElement;return t===document.documentElement&&("msRequestFullscreen"===f.requestFn||Browser.isOpera&&Browser.operaVersion<15)&&(t=document.body),t}function t(){return f}function r(){return(f||null)&&document[f.element]}function n(){return Boolean(f&&document[f.isEnabled])}function a(){return Boolean(f&&document[f.element])}function i(t,r){var n=this;if(!f)return Promise.reject(new Error("fullscreen not supported"));var i=e(r);if("function"!=typeof i[f.requestFn])return Promise.reject(new Error("fullscreen not supported"));if(a())return Promise.resolve();if(p())return i[f.requestFn](t);var o=".Fullscreen_requestFullscreen";return new Promise(function(e,r){jQuery(i).off(o).one(""+f.errorEvent+o+" "+f.changeEvent+o,function(t){jQuery(n).off(o),t.type===f.errorEvent?r(new Error("unknown fullscreen request error")):e()}),i[f.requestFn](t)})}function o(){var e=this;if(!f||"function"!=typeof document[f.exitFn])return Promise.reject(new TypeError("fullscreen not supported"));if(!a())return Promise.reject(new TypeError("fullscreen mode not active"));if(p())return document[f.exitFn]();var t=".Fullscreen_exitFullscreen";return new Promise(function(r,n){jQuery(document).off(t).one(""+f.errorEvent+t+" "+f.changeEvent+t,function(a){jQuery(e).off(t),a.type===f.errorEvent?n(new Error("unknown fullscreen exit error")):r()}),document[f.exitFn]()})}function s(e,t){return a()?o():i(e,t)}function u(t,r){if(f){var n=e(r);$(n).on(f.changeEvent,t)}}function l(t,r){if(f){var n=e(r);t?$(n).off(f.changeEvent,t):$(n).off(f.changeEvent)}}function c(t,r){if(f){var n=e(r);$(n).on(f.errorEvent,t)}}function d(t,r){if(f){var n=e(r);t?$(n).off(f.errorEvent,t):$(n).off(f.errorEvent)}}var f=function(){try{return Object.freeze([{isEnabled:"fullscreenEnabled",element:"fullscreenElement",requestFn:"requestFullscreen",exitFn:"exitFullscreen",changeEvent:"fullscreenchange",errorEvent:"fullscreenerror"},{isEnabled:"webkitFullscreenEnabled",element:"webkitFullscreenElement",requestFn:"webkitRequestFullscreen",exitFn:"webkitExitFullscreen",changeEvent:"webkitfullscreenchange",errorEvent:"webkitfullscreenerror"},{isEnabled:"mozFullScreenEnabled",element:"mozFullScreenElement",requestFn:"mozRequestFullScreen",exitFn:"mozCancelFullScreen",changeEvent:"mozfullscreenchange",errorEvent:"mozfullscreenerror"},{isEnabled:"msFullscreenEnabled",element:"msFullscreenElement",requestFn:"msRequestFullscreen",exitFn:"msExitFullscreen",changeEvent:"MSFullscreenChange",errorEvent:"MSFullscreenError"}].find(function(e){return e.isEnabled in document}))}catch(e){}return undefined}(),p=function(){function e(){if(null!==t)return t;if(t=!1,f)try{var e=document.exitFullscreen();e.catch(function(){}),t=e instanceof Promise}catch(e){}return t}var t=null;return e}();return Object.freeze(Object.defineProperties({},{vendor:{get:t},element:{get:r},isEnabled:{value:n},isFullscreen:{value:a},request:{value:i},exit:{value:o},toggle:{value:s},onChange:{value:u},offChange:{value:l},onError:{value:c},offError:{value:d}}))}(),_ref3=function(){function e(e){for(var t=e.cloneNode(!0),r=document.createDocumentFragment(),n=void 0;null!==(n=t.firstChild);){if(n.nodeType===Node.ELEMENT_NODE)switch(n.nodeName.toUpperCase()){case"BR":case"DIV":case"P":r.appendChild(document.createTextNode(" "))}r.appendChild(n)}return r.textContent}function t(e){if("object"!==(void 0===e?"undefined":_typeof(e))||null===e)return e;if(e instanceof String)return String(e);if(e instanceof Number)return Number(e);if(e instanceof Boolean)return Boolean(e)
;if("function"==typeof e.clone)return e.clone(!0);if(e.nodeType&&"function"==typeof e.cloneNode)return e.cloneNode(!0);var r=void 0;return e instanceof Array?r=new Array(e.length):e instanceof Date?r=new Date(e.getTime()):e instanceof Map?(r=new Map,e.forEach(function(e,n){return r.set(n,t(e))})):e instanceof RegExp?r=new RegExp(e):e instanceof Set?(r=new Set,e.forEach(function(e){return r.add(t(e))})):r=Object.create(Object.getPrototypeOf(e)),Object.keys(e).forEach(function(n){return r[n]=t(e[n])}),r}function r(e){for(var t=document.createDocumentFragment(),r=document.createElement("p"),n=void 0;null!==(n=e.firstChild);){if(n.nodeType===Node.ELEMENT_NODE){switch(n.nodeName.toUpperCase()){case"BR":if(null!==n.nextSibling&&n.nextSibling.nodeType===Node.ELEMENT_NODE&&"BR"===n.nextSibling.nodeName.toUpperCase()){e.removeChild(n.nextSibling),e.removeChild(n),t.appendChild(r),r=document.createElement("p");continue}if(!r.hasChildNodes()){e.removeChild(n);continue}break;case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":r.hasChildNodes()&&(t.appendChild(r),r=document.createElement("p")),t.appendChild(n);continue}}r.appendChild(n)}r.hasChildNodes()&&t.appendChild(r),e.appendChild(t)}function n(){try{return document.activeElement||null}catch(e){return null}}function a(t){if("string"!=typeof t)throw new TypeError("story display title must be a string (received: "+Util.getType(t)+")");var r=document.createDocumentFragment();new Wikifier(r,t);var n=e(r).trim();document.title=Config.passages.displayTitles&&""!==State.passage&&State.passage!==Config.passages.start?State.passage+" | "+n:n;var a=document.getElementById("story-title");null!==a&&jQuery(a).empty().append(r)}function i(e,t,r){var n="object"===(void 0===e?"undefined":_typeof(e))?e:document.getElementById(e);if(null==n)return null;var a=Array.isArray(t)?t:[t];jQuery(n).empty();for(var i=0,o=a.length;i<o;++i)if(Story.has(a[i]))return new Wikifier(n,Story.get(a[i]).processText().trim()),n;if(null!=r){var s=String(r).trim();""!==s&&new Wikifier(n,s)}return n}function o(e,t,r){var n=jQuery(document.createElement("div")),a=jQuery(document.createElement("button")),i=jQuery(document.createElement("pre")),o=L10n.get("errorTitle")+": "+(t||"unknown error");return a.addClass("error-toggle").ariaClick({label:L10n.get("errorToggle")},function(){a.hasClass("enabled")?(a.removeClass("enabled"),i.attr({"aria-hidden":!0,hidden:"hidden"})):(a.addClass("enabled"),i.removeAttr("aria-hidden hidden"))}).appendTo(n),jQuery(document.createElement("span")).addClass("error").text(o).appendTo(n),jQuery(document.createElement("code")).text(r).appendTo(i),i.addClass("error-source").attr({"aria-hidden":!0,hidden:"hidden"}).appendTo(n),n.addClass("error-view").appendTo(e),console.warn(o+"\n\t"+r.replace(/\n/g,"\n\t")),!1}function s(e){switch(void 0===e?"undefined":_typeof(e)){case"function":return"[function]";case"number":if(Number.isNaN(e))return"[number NaN]";break;case"object":if(null===e)return"[null]";if(e instanceof Array)return e.map(function(e){return s(e)}).join(", ");if(e instanceof Set)return Array.from(e).map(function(e){return s(e)}).join(", ");if(e instanceof Map){return"{ "+Array.from(e).map(function(e){var t=_slicedToArray(e,2),r=t[0],n=t[1];return s(r)+" → "+s(n)}).join(", ")+" }"}return e instanceof Date?e.toLocaleString():e instanceof Element?e.outerHTML:e instanceof Node?e.textContent:"function"==typeof e.toString?e.toString():Object.prototype.toString.call(e);case"symbol":return"[symbol"+(void 0!==e.description?' "'+e.description+'"':"")+"]";case"undefined":return"[undefined]"}return String(e)}return Object.freeze(Object.defineProperties({},{clone:{value:t},convertBreaks:{value:r},safeActiveElement:{value:n},setDisplayTitle:{value:a},setPageElement:{value:i},throwError:{value:o},stringFrom:{value:s}}))}(),clone=_ref3.clone,convertBreaks=_ref3.convertBreaks,safeActiveElement=_ref3.safeActiveElement,setDisplayTitle=_ref3.setDisplayTitle,setPageElement=_ref3.setPageElement,throwError=_ref3.throwError,stringFrom=_ref3.stringFrom;!function(){function e(e){13!==e.which&&32!==e.which||(e.preventDefault(),jQuery(safeActiveElement()||this).trigger("click"))}function t(e){return function(){var t=jQuery(this);t.ariaIsDisabled()||(t.is("[aria-pressed]")&&t.attr("aria-pressed","true"===t.attr("aria-pressed")?"false":"true"),e.apply(this,arguments))}}function r(e){return t(function(){jQuery(this).off(".aria-clickable").removeAttr("tabindex aria-controls aria-pressed").not("a,button").removeAttr("role").end().filter("button").prop("disabled",!0),e.apply(this,arguments)})}jQuery.fn.extend({ariaClick:function(n,a){if(0===this.length||0===arguments.length)return this;var i=n,o=a;return null==o&&(o=i,i=undefined),i=jQuery.extend({namespace:undefined,one:!1,selector:undefined,data:undefined,controls:undefined,pressed:undefined,label:undefined},i),"string"!=typeof i.namespace?i.namespace="":"."!==i.namespace[0]&&(i.namespace="."+i.namespace),"boolean"==typeof i.pressed&&(i.pressed=i.pressed?"true":"false"),this.filter("button").prop("type","button"),this.not("a,button").attr("role","button"),this.attr("tabindex",0),null!=i.controls&&this.attr("aria-controls",i.controls),null!=i.pressed&&this.attr("aria-pressed",i.pressed),null!=i.label&&this.attr({"aria-label":i.label,title:i.label}),this.not("button").on("keypress.aria-clickable"+i.namespace,i.selector,e),this.on("click.aria-clickable"+i.namespace,i.selector,i.data,i.one?r(o):t(o)),this},ariaDisabled:function(e){if(0===this.length||0===arguments.length)return this;var t=this.not("button,fieldset,input,menuitem,optgroup,option,select,textarea"),r=this.filter("button,fieldset,input,menuitem,optgroup,option,select,textarea");return e?(t.each(function(){this.setAttribute("disabled",""),this.setAttribute("aria-disabled","true")}),r.each(function(){this.disabled=!0,this.setAttribute("aria-disabled","true")})):(t.each(function(){this.removeAttribute("disabled"),this.removeAttribute("aria-disabled")}),r.each(function(){this.disabled=!1,this.removeAttribute("aria-disabled")})),this},ariaIsDisabled:function(){return this.is("[disabled]")}})}(),function(){jQuery.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];if(0!==r.length){var a=document.createDocumentFragment();r.forEach(function(t){return new Wikifier(a,t,e)});var i=[].concat(_toConsumableArray(a.querySelectorAll(".error"))).map(function(e){return e.textContent.replace(errorPrologRegExp,"")});if(i.length>0)throw new Error(i.join("; "))}},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.wikiWithOptions.apply(this,[undefined].concat(_toConsumableArray(t)))}}),jQuery.fn.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];if(0===this.length||0===r.length)return this;var a=document.createDocumentFragment();return r.forEach(function(t){return new Wikifier(a,t,e)}),this.append(a),this},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.wikiWithOptions.apply(this,[undefined].concat(_toConsumableArray(t)))}})}();var Util=function(){function e(e){if(null===e)return"null";var t=void 0===e?"undefined":_typeof(e);return"object"===t?Object.prototype.toString.call(e).slice(8,-1):t}function t(e){return"boolean"==typeof e||"string"==typeof e&&("true"===e||"false"===e)}function r(e){return null!=e&&"function"==typeof e[Symbol.iterator]}function n(e){var t=void 0;switch(void 0===e?"undefined":_typeof(e)){case"number":t=e;break;case"string":t=Number(e);break;default:return!1}return!Number.isNaN(t)&&Number.isFinite(t)}function a(e,t){return e===t||e!==e&&t!==t}function i(e){var t=Object.create(null);if(e instanceof Array)e.forEach(function(e,r){return t[String(e)]=r});else if(e instanceof Set)Array.from(e).forEach(function(e,r){return t[String(e)]=r});else if(e instanceof Map)e.forEach(function(e,r){return t[String(r)]=e});else{if("object"!==(void 0===e?"undefined":_typeof(e))||null===e||Object.getPrototypeOf(e)!==Object.prototype)throw new TypeError("Util.toEnum obj parameter must be an Array, Map, Set, or generic object");Object.assign(t,e)}return Object.freeze(t)}function o(e){return Object.prototype.toString.call(e).slice(8,-1)}function s(e){var t=String(e).trim(),r=t.replace(/[^\w\s\u2013\u2014-]+/g,"").replace(/[_\s\u2013\u2014-]+/g,"-").toLocaleLowerCase();return b.test(r)?t.replace(y,"").replace(/[_\s\u2013\u2014-]+/g,"-"):r}function u(e){if(null==e)return"";var t=String(e);return t&&k.test(t)?t.replace(w,function(e){return S[e]}):t}function l(e){if(null==e)return"";var t=String(e);return t&&j.test(t)?t.replace(E,function(e){return x[e]}):t}function c(e){if(null==e)return"";var t=String(e);return t&&O.test(t)?t.replace(T,function(e){return C[e.toLowerCase()]}):t}function d(e,t){var r=String(e),n=Math.trunc(t),a=r.charCodeAt(n);if(Number.isNaN(a))return{char:"",start:-1,end:-1};var i={char:r.charAt(n),start:n,end:n};if(a<55296||a>57343)return i;if(a>=55296&&a<=56319){var o=n+1;if(o>=r.length)return i;var s=r.charCodeAt(o);return s<56320||s>57343?i:(i.char=i.char+r.charAt(o),i.end=o,i)}if(0===n)return i;var u=n-1,l=r.charCodeAt(u);return l<55296||l>56319?i:(i.char=r.charAt(u)+i.char,i.start=u,i)}function f(){return A.now()}function p(e){var t=P.exec(String(e));if(null===t)throw new SyntaxError('invalid time value syntax: "'+e+'"');var r=Number(t[1]);if(1===t[2].length&&(r*=1e3),Number.isNaN(r)||!Number.isFinite(r))throw new RangeError('invalid time value: "'+e+'"');return r}function h(e){if("number"!=typeof e||Number.isNaN(e)||!Number.isFinite(e)){var t=void 0;switch(void 0===e?"undefined":_typeof(e)){case"string":t='"'+e+'"';break;case"number":t=String(e);break;default:t=o(e)}throw new Error("invalid milliseconds: "+t)}return e+"ms"}function g(e){if(!e.includes("-"))switch(e){case"bgcolor":return"backgroundColor";case"float":return"cssFloat";default:return e}return("-ms-"===e.slice(0,4)?e.slice(1):e).split("-").map(function(e,t){return 0===t?e:e.toUpperFirst()}).join("")}function m(e){var t=document.createElement("a"),r=Object.create(null);t.href=e,t.search&&t.search.replace(/^\?/,"").splitOrEmpty(/(?:&(?:amp;)?|;)/).forEach(function(e){var t=e.split("="),n=_slicedToArray(t,2),a=n[0],i=n[1];r[a]=i});var n=t.host&&"/"!==t.pathname[0]?"/"+t.pathname:t.pathname;return{href:t.href,protocol:t.protocol,host:t.host,hostname:t.hostname,port:t.port,path:""+n+t.search,pathname:n,query:t.search,search:t.search,queries:r,searches:r,hash:t.hash}}function v(e,t,r){if("object"!==(void 0===e?"undefined":_typeof(e))||null===e)throw new Error("Util.newExceptionFrom original parameter must be an object");if("function"!=typeof t)throw new Error("Util.newExceptionFrom exceptionType parameter must be an error type constructor");var n=new t(e.message);void 0!==e.name&&(n.name=e.name),void 0!==e.code&&(n.code=e.code),void 0!==e.columnNumber&&(n.columnNumber=e.columnNumber),void 0!==e.description&&(n.description=e.description),void 0!==e.fileName&&(n.fileName=e.fileName),void 0!==e.lineNumber&&(n.lineNumber=e.lineNumber),void 0!==e.number&&(n.number=e.number),void 0!==e.stack&&(n.stack=e.stack);var a=void 0===r?"undefined":_typeof(r);if("undefined"!==a)if("object"===a&&null!==r)Object.assign(n,r);else{if("string"!==a)throw new Error("Util.newExceptionFrom override parameter must be an object or string");n.message=r}return n}var y=/[\x00-\x20!-/:-@[-^`{-\x9f]+/g,b=/^-*$/,w=/[!"#$&'*\-/<=>?@[\\\]^_`{|}~]/g,k=new RegExp(w.source),S=i({"!":"!",'"':""","#":"#",$:"$","&":"&","'":"'","*":"*","-":"-","/":"/","<":"<","=":"=",">":">","?":"?","@":"@","[":"[","\\":"\","]":"]","^":"^",_:"_","`":"`","{":"{","|":"|","}":"}","~":"~"}),E=/[&<>"'`]/g,j=new RegExp(E.source),x=i({"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"}),T=/&(?:amp|#38|#x26|lt|#60|#x3c|gt|#62|#x3e|quot|#34|#x22|apos|#39|#x27|#96|#x60);/gi,O=new RegExp(T.source,"i"),C=i({"&":"&","&":"&","&":"&","<":"<","<":"<","<":"<",">":">",">":">",">":">",""":'"',""":'"',""":'"',"'":"'","'":"'","'":"'","`":"`","`":"`"}),A=Has.performance?performance:Date,P=/^([+-]?(?:\d*\.)?\d+)([Mm]?[Ss])$/,_=function(){function e(e){switch(e){case"Scroll":return"ScrollLock";case"Spacebar":return" ";case"Left":return"ArrowLeft";case"Right":return"ArrowRight";case"Up":return"ArrowUp";case"Down":return"ArrowDown";case"Del":return"Delete";case"Crsel":return"CrSel";case"Exsel":return"ExSel";case"Esc":return"Escape";case"Apps":return"ContextMenu";case"Nonconvert":return"NonConvert";case"MediaNextTrack":return"MediaTrackNext";case"MediaPreviousTrack":return"MediaTrackPrevious";case"VolumeUp":return"AudioVolumeUp";case"VolumeDown":return"AudioVolumeDown";case"VolumeMute":return"AudioVolumeMute";case"Zoom":return"ZoomToggle";case"SelectMedia":case"MediaSelect":return"LaunchMediaPlayer";case"Add":return"+";case"Divide":return"/";case"Multiply":return"*";case"Subtract":return"-";case"Decimal":return r;case"Separator":return t}return e}var t=void 0,r=void 0;if("undefined"!=typeof Intl&&"function"==typeof Intl.NumberFormat){var n=(new Intl.NumberFormat).format(111111.5).match(/(\D*)\d+(\D*)/);n&&(t=n[1],r=n[2])}return t||r||(t=",",r="."),e}();return Object.freeze(Object.defineProperties({},{getType:{value:e},isBoolean:{value:t},isIterable:{value:r},isNumeric:{value:n},sameValueZero:{value:a},toEnum:{value:i},toStringTag:{value:o},slugify:{value:s},escapeMarkup:{value:u},escape:{value:l},unescape:{value:c},charAndPosAt:{value:d},now:{value:f},fromCssTime:{value:p},toCssTime:{value:h},fromCssProperty:{value:g},parseUrl:{value:m},newExceptionFrom:{value:v},scrubEventKey:{value:_},random:{value:Math.random},entityEncode:{value:l},entityDecode:{value:c},evalExpression:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),SimpleStore=function(){function e(e,n){if(r)return r.create(e,n);for(var a=0;a<t.length;++a)if(t[a].init(e,n))return r=t[a],r.create(e,n);throw new Error("no valid storage adapters found")}var t=[],r=null;return Object.freeze(Object.defineProperties({},{adapters:{value:t},create:{value:e}}))}();SimpleStore.adapters.push(function(){function e(){function e(e){try{var t=window[e],r="_sc_"+String(Date.now());t.setItem(r,r);var n=t.getItem(r)===r;return t.removeItem(r),n}catch(e){}return!1}return r=e("localStorage")&&e("sessionStorage")}function t(e,t){if(!r)throw new Error("adapter not initialized");return new n(e,t)}var r=!1,n=function(){function e(t,r){_classCallCheck(this,e);var n=t+".",a=null,i=null;r?(a=window.localStorage,i="localStorage"):(a=window.sessionStorage,i="sessionStorage"),Object.defineProperties(this,{_engine:{value:a},_prefix:{value:n},_prefixRe:{value:new RegExp("^"+RegExp.escape(n))},name:{value:i},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function(){for(var e=[],t=0;t<this._engine.length;++t){var r=this._engine.key(t);this._prefixRe.test(r)&&e.push(r.replace(this._prefixRe,""))}return e}},{key:"has",value:function(e){return!("string"!=typeof e||!e)&&this._engine.hasOwnProperty(this._prefix+e)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=this._engine.getItem(this._prefix+t);return null==r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{this._engine.setItem(this._prefix+t,e._serialize(r))}catch(e){if(/quota.?(?:exceeded|reached)/i.test(e.name+e.message))throw Util.newExceptionFrom(e,Error,this.name+" quota exceeded");throw e}return!0}},{key:"delete",value:function(e){return!("string"!=typeof e||!e)&&(this._engine.removeItem(this._prefix+e),!0)}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_serialize",value:function(e){return LZString.compressToUTF16(JSON.stringify(e))}},{key:"_deserialize",value:function(e){return JSON.parse(LZString.decompressFromUTF16(e))}}]),e}();return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}()),SimpleStore.adapters.push(function(){function e(e){try{var t="_sc_"+String(Date.now());o._setCookie(t,o._serialize(t),undefined),i=o._deserialize(o._getCookie(t))===t,o._setCookie(t,undefined,a)}catch(e){i=!1}return i&&r(e),i}function t(e,t){if(!i)throw new Error("adapter not initialized");return new o(e,t)}function r(e){if(""!==document.cookie)for(var t=e+".",r=new RegExp("^"+RegExp.escape(t)),i=e+"!.",s=e+"*.",u=/\.(?:state|rcWarn)$/,l=document.cookie.split(/;\s*/),c=0;c<l.length;++c){var d=l[c].split("="),f=decodeURIComponent(d[0]);if(r.test(f)){var p=decodeURIComponent(d[1]);""!==p&&function(){var e=!u.test(f);o._setCookie(f,undefined,a),o._setCookie(f.replace(r,function(){return e?i:s}),p,e?n:undefined)}()}}}var n="Tue, 19 Jan 2038 03:14:07 GMT",a="Thu, 01 Jan 1970 00:00:00 GMT",i=!1,o=function(){function e(t,r){_classCallCheck(this,e);var n=t+(r?"!":"*")+".";Object.defineProperties(this,{_prefix:{value:n},_prefixRe:{value:new RegExp("^"+RegExp.escape(n))},name:{value:"cookie"},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function(){if(""===document.cookie)return[];for(var e=document.cookie.split(/;\s*/),t=[],r=0;r<e.length;++r){var n=e[r].split("="),a=decodeURIComponent(n[0]);if(this._prefixRe.test(a)){""!==decodeURIComponent(n[1])&&t.push(a.replace(this._prefixRe,""))}}return t}},{key:"has",value:function(t){return!("string"!=typeof t||!t)&&null!==e._getCookie(this._prefix+t)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=e._getCookie(this._prefix+t);return null===r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{if(e._setCookie(this._prefix+t,e._serialize(r),this.persistent?n:undefined),!this.has(t))throw new Error("unknown validation error during set")}catch(e){throw Util.newExceptionFrom(e,Error,"cookie error: "+e.message)}return!0}},{key:"delete",value:function(t){if("string"!=typeof t||!t||!this.has(t))return!1;try{if(e._setCookie(this._prefix+t,undefined,a),this.has(t))throw new Error("unknown validation error during delete")}catch(e){throw Util.newExceptionFrom(e,Error,"cookie error: "+e.message)}return!0}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_getCookie",value:function(e){if(!e||""===document.cookie)return null;for(var t=document.cookie.split(/;\s*/),r=0;r<t.length;++r){var n=t[r].split("=");if(e===decodeURIComponent(n[0])){return decodeURIComponent(n[1])||null}}return null}},{key:"_setCookie",value:function(e,t,r){if(e){var n=encodeURIComponent(e)+"=";null!=t&&(n+=encodeURIComponent(t)),null!=r&&(n+="; expires="+r),n+="; path=/",document.cookie=n}}},{key:"_serialize",value:function(e){return LZString.compressToBase64(JSON.stringify(e))}},{key:"_deserialize",value:function(e){return JSON.parse(LZString.decompressFromBase64(e))}}]),e}();return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}());var DebugView=function(){return function(){function e(t,r,n,a){_classCallCheck(this,e),Object.defineProperties(this,{parent:{value:t},view:{value:document.createElement("span")},break:{value:document.createElement("wbr")}}),jQuery(this.view).attr({title:a,"aria-label":a,"data-type":null!=r?r:"","data-name":null!=n?n:""}).addClass("debug"),jQuery(this.break).addClass("debug hidden"),this.parent.appendChild(this.view),this.parent.appendChild(this.break)}return _createClass(e,[{key:"append",value:function(e){return jQuery(this.view).append(e),this}},{key:"modes",value:function(e){if(null==e){var t={};return this.view.className.splitOrEmpty(/\s+/).forEach(function(e){"debug"!==e&&(t[e]=!0)}),t}if("object"===(void 0===e?"undefined":_typeof(e)))return Object.keys(e).forEach(function(t){this[e[t]?"addClass":"removeClass"](t)},jQuery(this.view)),this;throw new Error("DebugView.prototype.modes options parameter must be an object or null/undefined")}},{key:"remove",value:function(){var e=jQuery(this.view);this.view.hasChildNodes()&&e.contents().appendTo(this.parent),e.remove(),jQuery(this.break).remove()}},{key:"output",get:function(){return this.view}},{key:"type",get:function(){return this.view.getAttribute("data-type")},set:function(e){this.view.setAttribute("data-type",null!=e?e:"")}},{key:"name",get:function(){return this.view.getAttribute("data-name")},set:function(e){this.view.setAttribute("data-name",null!=e?e:"")}},{key:"title",get:function(){return this.view.title},set:function(e){this.view.title=e}}],[{key:"isEnabled",value:function(){return"enabled"===jQuery(document.documentElement).attr("data-debug-view")}},{key:"enable",value:function(){jQuery(document.documentElement).attr("data-debug-view","enabled"),jQuery.event.trigger(":debugviewupdate")}},{key:"disable",value:function(){jQuery(document.documentElement).removeAttr("data-debug-view"),jQuery.event.trigger(":debugviewupdate")}},{key:"toggle",value:function(){"enabled"===jQuery(document.documentElement).attr("data-debug-view")?e.disable():e.enable()}}]),e}()}(),NodeTyper=function(){return function(){function e(t){if(_classCallCheck(this,e),"object"!==(void 0===t?"undefined":_typeof(t))||null===t)throw new Error("config parameter must be an object (received: "+Util.getType(t)+")");if(!(t.hasOwnProperty("targetNode")&&t.targetNode instanceof Node))throw new Error('config parameter object "targetNode" property must be a node');Object.defineProperties(this,{node:{value:t.targetNode},childNodes:{value:[]},nodeValue:{writable:!0,value:""},appendTo:{writable:!0,value:t.parentNode||null},classNames:{writable:!0,value:t.classNames||null},finished:{writable:!0,value:!1}});var r=this.node;r.nodeValue&&(this.nodeValue=r.nodeValue,r.nodeValue="");for(var n=void 0;null!==(n=r.firstChild);)this.childNodes.push(new e({targetNode:n,parentNode:r,classNames:this.classNames})),r.removeChild(n)}return _createClass(e,[{key:"finish",value:function(){for(;this.type(!0););return!1}},{key:"type",value:function(e){if(this.finished)return!1;if(this.appendTo){if(this.appendTo.appendChild(this.node),this.appendTo=null,this.node.nodeType!==Node.ELEMENT_NODE&&this.node.nodeType!==Node.TEXT_NODE||"none"===jQuery(this.node.parentNode).css("display"))return this.finish();this.node.parentNode&&this.classNames&&jQuery(this.node.parentNode).addClass(this.classNames)}if(this.nodeValue){if(e)this.node.nodeValue+=this.nodeValue,this.nodeValue="";else{var t=Util.charAndPosAt(this.nodeValue,0),r=t.char,n=t.start,a=t.end;this.node.nodeValue+=r,this.nodeValue=this.nodeValue.slice(1+a-n)}return!0}this.classNames&&(jQuery(this.node.parentNode).removeClass(this.classNames),this.classNames=null);for(var i=this.childNodes;i.length>0;){if(i[0].type())return!0;i.shift()}return this.finished=!0,!1}}]),e}()}(),PRNGWrapper=function(){return function(){function e(t,r){_classCallCheck(this,e),Object.defineProperties(this,new Math.seedrandom(t,r,function(e,t){return{_prng:{value:e},seed:{writable:!0,value:t},pull:{writable:!0,value:0},random:{value:function(){return++this.pull,this._prng()}}}}))}return _createClass(e,null,[{key:"marshal",value:function(e){if(!e||!e.hasOwnProperty("seed")||!e.hasOwnProperty("pull"))throw new Error("PRNG is missing required data");return{seed:e.seed,pull:e.pull}}},{key:"unmarshal",value:function(t){if(!t||!t.hasOwnProperty("seed")||!t.hasOwnProperty("pull"))throw new Error("PRNG object is missing required data");for(var r=new e(t.seed,!1),n=t.pull;n>0;--n)r.random();return r}}]),e}()}(),StyleWrapper=function(){var e=new RegExp(Patterns.cssImage,"g"),t=new RegExp(Patterns.cssImage);return function(){function r(e){if(_classCallCheck(this,r),null==e)throw new TypeError("StyleWrapper style parameter must be an HTMLStyleElement object");Object.defineProperties(this,{style:{value:e}})}return _createClass(r,[{key:"isEmpty",value:function(){return 0===this.style.cssRules.length}},{key:"set",value:function(e){this.clear(),this.add(e)}},{key:"add",value:function(r){var n=r;t.test(n)&&(e.lastIndex=0,n=n.replace(e,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var n=Story.get(r);n.tags.includes("Twine.image")&&(r=n.text.trim())}return'url("'+r.replace(/"/g,"%22")+'")'})),this.style.styleSheet?this.style.styleSheet.cssText+=n:this.style.appendChild(document.createTextNode(n))}},{key:"clear",value:function(){this.style.styleSheet?this.style.styleSheet.cssText="":jQuery(this.style).empty()}}]),r}()}(),Diff=function(){function e(t,n){for(var a=Object.prototype.toString,i=t instanceof Array,o=[].concat(Object.keys(t),Object.keys(n)).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}),s={},u=void 0,l=function(e){return e===u},c=0,d=o.length;c<d;++c){var f=o[c],p=t[f],h=n[f];if(t.hasOwnProperty(f))if(n.hasOwnProperty(f)){if(p===h)continue;if((void 0===p?"undefined":_typeof(p))===(void 0===h?"undefined":_typeof(h)))if("function"==typeof p)p.toString()!==h.toString()&&(s[f]=[r.Copy,h]);else if("object"!==(void 0===p?"undefined":_typeof(p))||null===p)s[f]=[r.Copy,h];else{var g=a.call(p),m=a.call(h);if(g===m)if(p instanceof Date)Number(p)!==Number(h)&&(s[f]=[r.Copy,clone(h)]);else if(p instanceof Map)s[f]=[r.Copy,clone(h)];else if(p instanceof RegExp)p.toString()!==h.toString()&&(s[f]=[r.Copy,clone(h)]);else if(p instanceof Set)s[f]=[r.Copy,clone(h)];else if("[object Object]"!==g)s[f]=[r.Copy,clone(h)];else{var v=e(p,h);null!==v&&(s[f]=v)}else s[f]=[r.Copy,clone(h)]}else s[f]=[r.Copy,"object"!==(void 0===h?"undefined":_typeof(h))||null===h?h:clone(h)]}else if(i&&Util.isNumeric(f)){var y=Number(f);if(!u){u="";do{u+="~"}while(o.some(l));s[u]=[r.SpliceArray,y,y]}y<s[u][1]&&(s[u][1]=y),y>s[u][2]&&(s[u][2]=y)}else s[f]=r.Delete;else s[f]=[r.Copy,"object"!==(void 0===h?"undefined":_typeof(h))||null===h?h:clone(h)]}return Object.keys(s).length>0?s:null}function t(e,n){for(var a=Object.keys(n||{}),i=clone(e),o=0,s=a.length;o<s;++o){var u=a[o],l=n[u];if(l===r.Delete)delete i[u];else if(l instanceof Array)switch(l[0]){case r.SpliceArray:i.splice(l[1],l[2]-l[1]+1);break;case r.Copy:i[u]=clone(l[1]);break;case r.CopyDate:i[u]=new Date(l[1])}else i[u]=t(i[u],l)}return i}var r=Util.toEnum({Delete:0,SpliceArray:1,Copy:2,CopyDate:3});return Object.freeze(Object.defineProperties({},{Op:{value:r},diff:{value:e},patch:{value:t}}))}(),L10n=function(){function e(){r()}function t(e,t){if(!e)return"";var r=function(e){var t=void 0;return e.some(function(e){return!!l10nStrings.hasOwnProperty(e)&&(t=e,!0)}),t}(Array.isArray(e)?e:[e]);if(!r)return"";for(var i=l10nStrings[r],o=0;a.test(i);){if(++o>50)throw new Error("L10n.get exceeded maximum replacement iterations, probable infinite loop");n.lastIndex=0,i=i.replace(n,function(e){var r=e.slice(1,-1);return t&&t.hasOwnProperty(r)?t[r]:l10nStrings.hasOwnProperty(r)?l10nStrings[r]:void 0})}return i}function r(){strings&&Object.keys(strings).length>0&&Object.keys(l10nStrings).forEach(function(e){try{var t=void 0;switch(e){case"identity":t=strings.identity;break;case"aborting":t=strings.aborting;break;case"cancel":t=strings.cancel;break;case"close":t=strings.close;break;case"ok":t=strings.ok;break;case"errorTitle":t=strings.errors.title;break;case"errorNonexistentPassage":t=strings.errors.nonexistentPassage;break;case"errorSaveMissingData":t=strings.errors.saveMissingData;break;case"errorSaveIdMismatch":t=strings.errors.saveIdMismatch;break;case"warningDegraded":t=strings.warnings.degraded;break;case"debugViewTitle":t=strings.debugView.title;break;case"debugViewToggle":t=strings.debugView.toggle;break;case"uiBarToggle":t=strings.uiBar.toggle;break;case"uiBarBackward":t=strings.uiBar.backward;break;case"uiBarForward":t=strings.uiBar.forward;break;case"uiBarJumpto":t=strings.uiBar.jumpto;break;case"jumptoTitle":t=strings.jumpto.title;break;case"jumptoTurn":t=strings.jumpto.turn;break;case"jumptoUnavailable":t=strings.jumpto.unavailable;break;case"savesTitle":t=strings.saves.title;break;case"savesDisallowed":t=strings.saves.disallowed;break;case"savesIncapable":t=strings.saves.incapable;break;case"savesLabelAuto":t=strings.saves.labelAuto;break;case"savesLabelDelete":t=strings.saves.labelDelete;break;case"savesLabelExport":t=strings.saves.labelExport;break;case"savesLabelImport":t=strings.saves.labelImport;break;case"savesLabelLoad":t=strings.saves.labelLoad;break;case"savesLabelClear":t=strings.saves.labelClear;break;case"savesLabelSave":t=strings.saves.labelSave;break;case"savesLabelSlot":t=strings.saves.labelSlot;break;case"savesUnavailable":t=strings.saves.unavailable;break;case"savesUnknownDate":t=strings.saves.unknownDate;break;case"settingsTitle":t=strings.settings.title;break;case"settingsOff":t=strings.settings.off;break;case"settingsOn":t=strings.settings.on;break;case"settingsReset":t=strings.settings.reset;break;case"restartTitle":t=strings.restart.title;break;case"restartPrompt":t=strings.restart.prompt;break;case"shareTitle":t=strings.share.title;break;case"alertTitle":break;case"autoloadTitle":t=strings.autoload.title;break;case"autoloadCancel":t=strings.autoload.cancel;break;case"autoloadOk":t=strings.autoload.ok;break;case"autoloadPrompt":t=strings.autoload.prompt;break;case"macroBackText":t=strings.macros.back.text;break;case"macroReturnText":t=strings.macros.return.text}t&&(l10nStrings[e]=t.replace(/%\w+%/g,function(e){return"{"+e.slice(1,-1)+"}"}))}catch(e){}})}var n=/\{\w+\}/g,a=new RegExp(n.source);return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:t}}))}(),strings={errors:{},warnings:{},debugView:{},uiBar:{},jumpto:{},saves:{},settings:{},restart:{},share:{},autoload:{},macros:{back:{},return:{}}},l10nStrings={identity:"game",aborting:"Aborting",cancel:"Cancel",close:"Close",ok:"OK",errorTitle:"Error",errorToggle:"Toggle the error view",errorNonexistentPassage:'the passage "{passage}" does not exist',errorSaveMissingData:"save is missing required data. Either the loaded file is not a save or the save has become corrupted",errorSaveIdMismatch:"save is from the wrong {identity}",_warningIntroLacking:"Your browser either lacks or has disabled",_warningOutroDegraded:", so this {identity} is running in a degraded mode. You may be able to continue, however, some parts may not work properly.",warningNoWebStorage:"{_warningIntroLacking} the Web Storage API{_warningOutroDegraded}",warningDegraded:"{_warningIntroLacking} some of the capabilities required by this {identity}{_warningOutroDegraded}",debugBarToggle:"Toggle the debug bar",debugBarNoWatches:"— no watches set —",debugBarAddWatch:"Add watch",debugBarDeleteWatch:"Delete watch",debugBarWatchAll:"Watch all",debugBarWatchNone:"Delete all",debugBarLabelAdd:"Add",debugBarLabelWatch:"Watch",debugBarLabelTurn:"Turn",debugBarLabelViews:"Views",debugBarViewsToggle:"Toggle the debug views",debugBarWatchToggle:"Toggle the watch panel",uiBarToggle:"Toggle the UI bar",uiBarBackward:"Go backward within the {identity} history",uiBarForward:"Go forward within the {identity} history",uiBarJumpto:"Jump to a specific point within the {identity} history",jumptoTitle:"Jump To",jumptoTurn:"Turn",jumptoUnavailable:"No jump points currently available…",savesTitle:"Saves",
savesDisallowed:"Saving has been disallowed on this passage.",savesIncapable:"{_warningIntroLacking} the capabilities required to support saves, so saves have been disabled for this session.",savesLabelAuto:"Autosave",savesLabelDelete:"Delete",savesLabelExport:"Save to Disk…",savesLabelImport:"Load from Disk…",savesLabelLoad:"Load",savesLabelClear:"Delete All",savesLabelSave:"Save",savesLabelSlot:"Slot",savesUnavailable:"No save slots found…",savesUnknownDate:"unknown",settingsTitle:"Settings",settingsOff:"Off",settingsOn:"On",settingsReset:"Reset to Defaults",restartTitle:"Restart",restartPrompt:"Are you sure that you want to restart? Unsaved progress will be lost.",shareTitle:"Share",alertTitle:"Alert",autoloadTitle:"Autoload",autoloadCancel:"Go to start",autoloadOk:"Load autosave",autoloadPrompt:"An autosave exists. Load it now or go to the start?",macroBackText:"Back",macroReturnText:"Return"},Config=function(){var e=!1,t=!1,r=!1,n=0,a=!0,i=!0,o=!0,s=100,u=!0,l=1e3,c=" ",d=!0,f=void 0,p=void 0,h=!1,g=!1,m=void 0,v=void 0,y=void 0,b=void 0,w=void 0,k="untitled-story",S=void 0,E=void 0,j=void 0,x=8,T=!0,O=void 0,C=800,A=!0,P="Config.history.mode has been deprecated and is no longer used by SugarCube, please remove it from your code",_="Config.history.tracking has been deprecated, use Config.history.maxStates instead";return Object.freeze({get debug(){return e},set debug(t){e=Boolean(t)},get addVisitedLinkClass(){return t},set addVisitedLinkClass(e){t=Boolean(e)},get cleanupWikifierOutput(){return r},set cleanupWikifierOutput(e){r=Boolean(e)},get loadDelay(){return n},set loadDelay(e){if(!Number.isSafeInteger(e)||e<0)throw new RangeError("Config.loadDelay must be a non-negative integer");n=e},audio:Object.freeze({get pauseOnFadeToZero(){return a},set pauseOnFadeToZero(e){a=Boolean(e)},get preloadMetadata(){return i},set preloadMetadata(e){i=Boolean(e)}}),history:Object.freeze({get controls(){return o},set controls(e){var t=Boolean(e);if(1===s&&t)throw new Error("Config.history.controls must be false when Config.history.maxStates is 1");o=t},get maxStates(){return s},set maxStates(e){if(!Number.isSafeInteger(e)||e<0)throw new RangeError("Config.history.maxStates must be a non-negative integer");s=e,o&&1===e&&(o=!1)},get mode(){throw new Error(P)},set mode(e){throw new Error(P)},get tracking(){throw new Error(_)},set tracking(e){throw new Error(_)}}),macros:Object.freeze({get ifAssignmentError(){return u},set ifAssignmentError(e){u=Boolean(e)},get maxLoopIterations(){return l},set maxLoopIterations(e){if(!Number.isSafeInteger(e)||e<0)throw new RangeError("Config.macros.maxLoopIterations must be a non-negative integer");l=e},get typeSkipKey(){return c},set typeSkipKey(e){c=String(e)},get typeVisitedPassages(){return d},set typeVisitedPassages(e){d=Boolean(e)}}),navigation:Object.freeze({get override(){return f},set override(e){if(!(null==e||e instanceof Function))throw new TypeError("Config.navigation.override must be a function or null/undefined (received: "+Util.getType(e)+")");f=e}}),passages:Object.freeze({get descriptions(){return p},set descriptions(e){if(null!=e){var t=Util.getType(e);if("boolean"!==t&&"Object"!==t&&"function"!==t)throw new TypeError("Config.passages.descriptions must be a boolean, object, function, or null/undefined (received: "+t+")")}p=e},get displayTitles(){return h},set displayTitles(e){h=Boolean(e)},get nobr(){return g},set nobr(e){g=Boolean(e)},get onProcess(){return v},set onProcess(e){if(null!=e){var t=Util.getType(e);if("function"!==t)throw new TypeError("Config.passages.onProcess must be a function or null/undefined (received: "+t+")")}v=e},get start(){return m},set start(e){if(null!=e){var t=Util.getType(e);if("string"!==t)throw new TypeError("Config.passages.start must be a string or null/undefined (received: "+t+")")}m=e},get transitionOut(){return y},set transitionOut(e){if(null!=e){var t=Util.getType(e);if("string"!==t&&("number"!==t||!Number.isSafeInteger(e)||e<0))throw new TypeError("Config.passages.transitionOut must be a string, non-negative integer, or null/undefined (received: "+t+")")}y=e}}),saves:Object.freeze({get autoload(){return b},set autoload(e){if(null!=e){var t=Util.getType(e);if("boolean"!==t&&"string"!==t&&"function"!==t)throw new TypeError("Config.saves.autoload must be a boolean, string, function, or null/undefined (received: "+t+")")}b=e},get autosave(){return w},set autosave(e){if(null!=e){var t=Util.getType(e);if("string"===t)return void(w=[e]);if("boolean"!==t&&("Array"!==t||!e.every(function(e){return"string"==typeof e}))&&"function"!==t)throw new TypeError("Config.saves.autosave must be a boolean, Array of strings, function, or null/undefined (received: "+t+("Array"===t?" of mixed":"")+")")}w=e},get id(){return k},set id(e){if("string"!=typeof e||""===e)throw new TypeError("Config.saves.id must be a non-empty string (received: "+Util.getType(e)+")");k=e},get isAllowed(){return S},set isAllowed(e){if(!(null==e||e instanceof Function))throw new TypeError("Config.saves.isAllowed must be a function or null/undefined (received: "+Util.getType(e)+")");S=e},get onLoad(){return E},set onLoad(e){if(!(null==e||e instanceof Function))throw new TypeError("Config.saves.onLoad must be a function or null/undefined (received: "+Util.getType(e)+")");E=e},get onSave(){return j},set onSave(e){if(!(null==e||e instanceof Function))throw new TypeError("Config.saves.onSave must be a function or null/undefined (received: "+Util.getType(e)+")");j=e},get slots(){return x},set slots(e){if(!Number.isSafeInteger(e)||e<0)throw new TypeError("Config.saves.slots must be a non-negative integer (received: "+Util.getType(e)+")");x=e},get tryDiskOnMobile(){return T},set tryDiskOnMobile(e){T=Boolean(e)},get version(){return O},set version(e){O=e}}),ui:Object.freeze({get stowBarInitially(){return C},set stowBarInitially(e){var t=Util.getType(e);if("boolean"!==t&&("number"!==t||!Number.isSafeInteger(e)||e<0))throw new TypeError("Config.ui.stowBarInitially must be a boolean or non-negative integer (received: "+t+")");C=e},get updateStoryElements(){return A},set updateStoryElements(e){A=Boolean(e)}})})}(),SimpleAudio=function(){function e(){if(arguments.length<2){var e=[];throw arguments.length<1&&e.push("track ID"),arguments.length<2&&e.push("sources"),new Error("no "+e.join(" or ")+" specified")}var t=String(arguments[0]).trim(),r='track ID "'+t+'"';if(_.test(t))throw new Error("invalid "+r+": track IDs must not contain colons or whitespace");var n=Array.isArray(arguments[1])?Array.from(arguments[1]):Array.from(arguments).slice(1),a=void 0;try{a=O(n)}catch(e){throw new Error(r+": error during track initialization: "+e.message)}if(Config.debug&&!a.hasSource())throw new Error(r+": no supported audio sources found");N.has(t)&&N.get(t)._destroy(),N.set(t,a)}function t(e){return N.has(e)&&N.get(e)._destroy(),N.delete(e)}function r(){N.forEach(function(e){return e._destroy()}),N.clear()}function n(e){return N.has(e)}function a(e){return N.get(e)||null}function i(){if(arguments.length<2){var e=[];throw arguments.length<1&&e.push("group ID"),arguments.length<2&&e.push("track IDs"),new Error("no "+e.join(" or ")+" specified")}var t=String(arguments[0]).trim(),r='group ID "'+t+'"';if(":"!==t[0]||_.test(t.slice(1)))throw new Error("invalid "+r+": group IDs must start with a colon and must not contain colons or whitespace");if(A.includes(t))throw new Error("cannot clobber special "+r);var n=Array.isArray(arguments[1])?Array.from(arguments[1]):Array.from(arguments).slice(1),a=void 0;try{a=new Set(n.map(function(e){if(!N.has(e))throw new Error('track "'+e+'" does not exist');return e}))}catch(e){throw new Error(r+": error during group initialization: "+e.message)}D.set(t,Object.freeze(Array.from(a)))}function o(e){return D.delete(e)}function s(){D.clear()}function u(e){return D.has(e)}function l(e){return D.get(e)||null}function c(){if(arguments.length<2){var e=[];throw arguments.length<1&&e.push("list ID"),arguments.length<2&&e.push("track IDs"),new Error("no "+e.join(" or ")+" specified")}var t=String(arguments[0]).trim(),r='list ID "'+t+'"';if(_.test(t))return this.error("invalid "+r+": list IDs must not contain colons or whitespace");var n=Array.isArray(arguments[1])?Array.from(arguments[1]):Array.from(arguments).slice(1),a=void 0;try{a=new U(n.map(function(e){if(null===e)throw new Error("track descriptor must be a string or object (type: null)");switch(void 0===e?"undefined":_typeof(e)){case"string":e={id:e};break;case"object":if(!e.hasOwnProperty("id")&&!e.hasOwnProperty("sources"))throw new Error('track descriptor must contain one of either an "id" or a "sources" property');if(e.hasOwnProperty("id")&&e.hasOwnProperty("sources"))throw new Error('track descriptor must contain either an "id" or a "sources" property, not both');break;default:throw new Error("track descriptor must be a string or object (type: "+(void 0===e?"undefined":_typeof(e))+")")}var t=void 0,r=void 0,n=void 0;if(e.hasOwnProperty("id")){if("string"!=typeof e.id)throw new Error('"id" property must be a string');if(!N.has(e.id))throw new Error('track "'+e.id+'" does not exist');r=N.get(e.id)}else if(e.hasOwnProperty("sources")){if(!Array.isArray(e.sources)||0===e.sources.length)throw new Error('"sources" property must be a non-empty array');if(e.hasOwnProperty("own"))throw new Error('"own" property is not allowed with the "sources" property');try{r=O(e.sources),t=!0}catch(e){throw new Error("error during track initialization: "+e.message)}if(Config.debug&&!r.hasSource())throw new Error("no supported audio sources found")}if(e.hasOwnProperty("own")){if("boolean"!=typeof e.own)throw new Error('"own" property must be a boolean');t=e.own,t&&(r=r.clone())}if(e.hasOwnProperty("volume")){if("number"!=typeof e.volume||Number.isNaN(e.volume)||!Number.isFinite(e.volume)||e.volume<0)throw new Error('"volume" property must be a non-negative finite number');n=e.volume}return{own:null!=t&&t,track:r,volume:null!=n?n:r.volume()}}))}catch(e){throw new Error(r+": error during playlist initialization: "+e.message)}I.has(t)&&I.get(t)._destroy(),I.set(t,a)}function d(e){return I.has(e)&&I.get(e)._destroy(),I.delete(e)}function f(){I.forEach(function(e){return e._destroy()}),I.clear()}function p(e){return I.has(e)}function h(e){return I.get(e)||null}function g(){if(0===arguments.length)throw new Error("no track selector specified");var e=String(arguments[0]).trim(),t=new Set;try{var r=function e(t){var r=t.id,a=void 0;switch(r){case":all":a=n;break;case":looped":a=n.filter(function(e){return N.get(e).loop()});break;case":muted":a=n.filter(function(e){return N.get(e).mute()});break;case":paused":a=n.filter(function(e){return N.get(e).isPaused()});break;case":playing":a=n.filter(function(e){return N.get(e).isPlaying()});break;default:a=":"===r[0]?D.get(r):[r]}if(t.hasOwnProperty("not")){var i=t.not.map(function(t){return e(t)}).flat(1/0);a=a.filter(function(e){return!i.includes(e)})}return a},n=Array.from(N.keys());z(e).forEach(function(e){return r(e).forEach(function(e){if(!N.has(e))throw new Error('track "'+e+'" does not exist');t.add(e)})})}catch(e){throw new Error("error during runner initialization: "+e.message)}return new B(t)}function m(){T("load")}function v(){T("loadwithscreen")}function y(e){if(null==e)return F;F=!!e,T("mute",F)}function b(e){if(!Visibility.isEnabled())return!1;if(null==e)return R;R=!!e;var t=".SimpleAudio_masterMuteOnHidden";if(R){var r=""+Visibility.changeEvent+t;jQuery(document).off(t).on(r,function(){return y(Visibility.isHidden())}),Visibility.isHidden()&&y(!0)}else jQuery(document).off(t)}function w(e){if(null==e)return L;if("number"!=typeof e||Number.isNaN(e)||!Number.isFinite(e))throw new Error("rate must be a finite number");L=Math.clamp(e,.2,5),T("rate",L)}function k(){T("stop")}function S(){T("unload")}function E(e){if(null==e)return Q;if("number"!=typeof e||Number.isNaN(e)||!Number.isFinite(e))throw new Error("volume must be a finite number");Q=Math.clamp(e,0,1),T("volume",Q)}function j(e,t){if("function"!=typeof t)throw new Error("callback parameter must be a function");M.set(e,t)}function x(e){M.delete(e)}function T(e,t){M.forEach(function(r){return r(e,t)})}function O(e){return new V(e.map(function(e){if("data:"!==e.slice(0,5)&&Story.has(e)){var t=Story.get(e);if(t.tags.includes("Twine.audio"))return t.text.trim()}var r=P.exec(e);return null===r?e:{format:r[1],src:r[2]}}))}var C=Object.freeze(["click","contextmenu","dblclick","keyup","mouseup","pointerup","touchend"]),A=Object.freeze([":not",":all",":looped",":muted",":paused",":playing"]),P=/^([\w-]+)\s*\|\s*(\S.*)$/,_=/[:\s]/,N=new Map,D=new Map,I=new Map,M=new Map,L=1,Q=1,F=!1,R=!1,W=function(){function e(){if(null!==t)return t;if(t=!1,Has.audio)try{var e=document.createElement("audio");e.muted=!0;var r=e.play();r.catch(function(){}),t=r instanceof Promise}catch(e){}return t}var t=null;return e}(),V=function(){function e(t){if(_classCallCheck(this,e),t instanceof Array)this._create(t);else{if(!(t instanceof e))throw new Error("sources parameter must be either an array, of URIs or source objects, or an AudioTrack instance");this._copy(t)}}return _createClass(e,[{key:"_create",value:function(t){var r=/^data:\s*audio\/(?:x-)?([^;,]+)\s*[;,]/i,n=/\.([^./\\]+)$/,a=e.formats,i=[],o=document.createElement("audio");o.preload="none",t.forEach(function(e){var t=null;switch(void 0===e?"undefined":_typeof(e)){case"string":var s=void 0;if("data:"===e.slice(0,5)){if(null===(s=r.exec(e)))throw new Error("source data URI missing media type")}else if(null===(s=n.exec(Util.parseUrl(e).pathname)))throw new Error("source URL missing file extension");a[s[1]]&&(t=e);break;case"object":if(null===e)throw new Error("source object cannot be null");if(!e.hasOwnProperty("src"))throw new Error('source object missing required "src" property');if(!e.hasOwnProperty("format"))throw new Error('source object missing required "format" property');a[e.format]&&(t=e.src);break;default:throw new Error("invalid source value (type: "+(void 0===e?"undefined":_typeof(e))+")")}if(null!==t){var u=document.createElement("source");u.src=t,o.appendChild(u),i.push(t)}}),o.hasChildNodes()&&Config.audio.preloadMetadata&&(o.preload="metadata"),this._finalize(o,i,clone(t))}},{key:"_copy",value:function(e){this._finalize(e.audio.cloneNode(!0),clone(e.sources),clone(e.originals))}},{key:"_finalize",value:function(e,t,r){var n=this;Object.defineProperties(this,{audio:{configurable:!0,value:e},sources:{value:Object.freeze(t)},originals:{value:Object.freeze(r)},_error:{writable:!0,value:!1},_faderId:{writable:!0,value:null},_mute:{writable:!0,value:!1},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1}}),jQuery(this.audio).on("loadstart.AudioTrack",function(){return n._error=!1}).on("error.AudioTrack",function(){return n._error=!0}).find("source:last-of-type").on("error.AudioTrack",function(){return n._trigger("error")}),j(this,function(e){if(!n.audio)return void x(n);switch(e){case"loadwithscreen":if(n.hasSource()){var t=LoadScreen.lock();n.one("canplaythrough.AudioTrack_loadwithscreen error.AudioTrack_loadwithscreen",function(){jQuery(this).off(".AudioTrack_loadwithscreen"),LoadScreen.unlock(t)}).load()}break;case"load":n.load();break;case"mute":n._updateAudioMute();break;case"rate":n._updateAudioRate();break;case"stop":n.stop();break;case"volume":n._updateAudioVolume();break;case"unload":n.unload()}}),this._updateAudioMute(),this._updateAudioRate(),this._updateAudioVolume()}},{key:"_trigger",value:function(e){jQuery(this.audio).triggerHandler(e)}},{key:"_destroy",value:function(){x(this),this.audio&&(jQuery(this.audio).off(),this.unload(),this._error=!0,delete this.audio)}},{key:"clone",value:function(){return new e(this)}},{key:"load",value:function(){var e=this;if(this.fadeStop(),this.audio.pause(),!this.audio.hasChildNodes()){if(0===this.sources.length)return;this.sources.forEach(function(t){var r=document.createElement("source");r.src=t,e.audio.appendChild(r)})}"auto"!==this.audio.preload&&(this.audio.preload="auto"),this.isLoading()||this.audio.load()}},{key:"unload",value:function(){this.fadeStop(),this.stop();var e=this.audio;for(e.preload="none";e.hasChildNodes();)e.removeChild(e.firstChild);e.load()}},{key:"play",value:function(){var e=this;if(!this.hasSource())return Promise.reject(new Error("none of the candidate sources were acceptable"));if(this.isUnloaded())return Promise.reject(new Error("no sources are loaded"));if(this.isFailed())return Promise.reject(new Error("failed to load any of the sources"));"auto"!==this.audio.preload&&(this.audio.preload="auto");var t=".AudioTrack_play";return W()?this.audio.play():new Promise(function(r,n){e.isPlaying()?r():(jQuery(e.audio).off(t).one("error"+t+" playing"+t+" timeupdate"+t,function(a){jQuery(e).off(t),"error"===a.type?n(new Error("unknown audio play error")):r()}),e.audio.play())})}},{key:"playWhenAllowed",value:function(){var e=this;this.play().catch(function(){var t=C.map(function(e){return e+".AudioTrack_playWhenAllowed"}).join(" ");jQuery(document).one(t,function(){jQuery(document).off(".AudioTrack_playWhenAllowed"),e.audio.play()})})}},{key:"pause",value:function(){this.audio.pause()}},{key:"stop",value:function(){this.audio.pause(),this.time(0),this._trigger(":stopped")}},{key:"fade",value:function(e,t,r){var n=this;if("number"!=typeof e)throw new TypeError("duration parameter must be a number");if("number"!=typeof t)throw new TypeError("toVolume parameter must be a number");if(null!=r&&"number"!=typeof r)throw new TypeError("fromVolume parameter must be a number");if(!this.hasSource())return Promise.reject(new Error("none of the candidate sources were acceptable"));if(this.isUnloaded())return Promise.reject(new Error("no sources are loaded"));if(this.isFailed())return Promise.reject(new Error("failed to load any of the sources"));this.fadeStop();var a=Math.clamp(null==r?this.volume():r,0,1),i=Math.clamp(t,0,1);return a!==i?(this.volume(a),jQuery(this.audio).off("timeupdate.AudioTrack_fade").one("timeupdate.AudioTrack_fade",function(){var t=void 0,r=void 0;a<i?(t=a,r=i):(t=i,r=a);var o=Math.max(e,1),s=(i-a)/(o/.025);n._trigger(":fading"),n._faderId=setInterval(function(){if(!n.isPlaying())return void n.fadeStop();n.volume(Math.clamp(n.volume()+s,t,r)),Config.audio.pauseOnFadeToZero&&0===n.volume()&&n.pause(),n.volume()===i&&(n.fadeStop(),n._trigger(":faded"))},25)}),this.play()):void 0}},{key:"fadeIn",value:function(e,t){return this.fade(e,1,t)}},{key:"fadeOut",value:function(e,t){return this.fade(e,0,t)}},{key:"fadeStop",value:function(){null!==this._faderId&&(clearInterval(this._faderId),this._faderId=null)}},{key:"loop",value:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){return null==e?this.audio.loop:(this.audio.loop=!!e,this)})},{key:"mute",value:function(e){return null==e?this._mute:(this._mute=!!e,this._updateAudioMute(),this)}},{key:"_updateAudioMute",value:function(){this.audio.muted=this._mute||F}},{key:"rate",value:function(e){if(null==e)return this._rate;if("number"!=typeof e)throw new TypeError("rate parameter must be a number");return this._rate=Math.clamp(e,.2,5),this._updateAudioRate(),this}},{key:"_updateAudioRate",value:function(){this.audio.playbackRate=Math.clamp(this._rate*L,.2,5)}},{key:"time",value:function(e){var t=this;if(null==e)return this.audio.currentTime;if("number"!=typeof e)throw new TypeError("time parameter must be a number");return this.hasMetadata()?this.audio.currentTime=e:jQuery(this.audio).off("loadedmetadata.AudioTrack_time").one("loadedmetadata.AudioTrack_time",function(){return t.audio.currentTime=e}),this}},{key:"volume",value:function(e){if(null==e)return this._volume;if("number"!=typeof e)throw new TypeError("volume parameter must be a number");return this._volume=Math.clamp(e,0,1),this._updateAudioVolume(),this}},{key:"_updateAudioVolume",value:function(){this.audio.volume=Math.clamp(this._volume*Q,0,1)}},{key:"duration",value:function(){return this.audio.duration}},{key:"remaining",value:function(){return this.audio.duration-this.audio.currentTime}},{key:"isFailed",value:function(){return this._error}},{key:"isLoading",value:function(){return this.audio.networkState===HTMLMediaElement.NETWORK_LOADING}},{key:"isUnloaded",value:function(){return!this.audio.hasChildNodes()}},{key:"isUnavailable",value:function(){return!this.hasSource()||this.isUnloaded()||this.isFailed()}},{key:"isPlaying",value:function(){return!this.audio.paused&&this.hasSomeData()}},{key:"isPaused",value:function(){return this.audio.paused&&(this.audio.duration===1/0||this.audio.currentTime>0)&&!this.audio.ended}},{key:"isStopped",value:function(){return this.audio.paused&&0===this.audio.currentTime}},{key:"isEnded",value:function(){return this.audio.ended}},{key:"isFading",value:function(){return null!==this._faderId}},{key:"isSeeking",value:function(){return this.audio.seeking}},{key:"hasSource",value:function(){return this.sources.length>0}},{key:"hasNoData",value:function(){return this.audio.readyState===HTMLMediaElement.HAVE_NOTHING}},{key:"hasMetadata",value:function(){return this.audio.readyState>=HTMLMediaElement.HAVE_METADATA}},{key:"hasSomeData",value:function(){return this.audio.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA}},{key:"hasData",value:function(){return this.audio.readyState===HTMLMediaElement.HAVE_ENOUGH_DATA}},{key:"on",value:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return jQuery.fn.on.apply(jQuery(this.audio),t),this}},{key:"one",value:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return jQuery.fn.one.apply(jQuery(this.audio),t),this}},{key:"off",value:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return jQuery.fn.off.apply(jQuery(this.audio),t),this}}]),e}();Object.defineProperties(V,{formats:{value:function(){function e(e){return r.has(e)||r.set(e,""!==t.canPlayType(e).replace(/^no$/i,"")),r.get(e)}var t=document.createElement("audio"),r=new Map;return Object.assign(Object.create(null),{aac:e("audio/aac"),caf:e("audio/x-caf")||e("audio/caf"),flac:e("audio/x-flac")||e("audio/flac"),mp3:e('audio/mpeg; codecs="mp3"')||e("audio/mpeg")||e("audio/mp3")||e("audio/mpa"),mpeg:e("audio/mpeg"),m4a:e("audio/x-m4a")||e("audio/m4a")||e("audio/aac"),mp4:e("audio/x-mp4")||e("audio/mp4")||e("audio/aac"),ogg:e("audio/ogg"),oga:e("audio/ogg"),opus:e('audio/ogg; codecs="opus"')||e("audio/opus"),wav:e('audio/wave; codecs="1"')||e('audio/wav; codecs="1"')||e("audio/wave")||e("audio/wav"),wave:e('audio/wave; codecs="1"')||e('audio/wav; codecs="1"')||e("audio/wave")||e("audio/wav"),weba:e("audio/webm"),webm:e("audio/webm")})}()}});var U=function(){function e(t){if(_classCallCheck(this,e),t instanceof Array)this._create(t);else{if(!(t instanceof e))throw new Error("tracks parameter must be either an array, of track objects, or an AudioTrack instance");this._copy(t)}}return _createClass(e,[{key:"_create",value:function(e){var t=this;this._finalize(e.map(function(e){if("object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("tracks parameter array members must be objects");var r=void 0,n=void 0,a=void 0,i=void 0;if(e instanceof V)r=!0,n=e.rate(),a=e.clone(),i=e.volume();else{if(!e.hasOwnProperty("track"))throw new Error('track object missing required "track" property');if(!(e.track instanceof V))throw new Error('track object\'s "track" property must be an AudioTrack object');r=e.hasOwnProperty("own")&&e.own,n=e.hasOwnProperty("rate")?e.rate:e.track.rate(),a=e.track,i=e.hasOwnProperty("volume")?e.volume:e.track.volume()}return a.stop(),a.loop(!1),a.mute(!1),a.rate(n),a.volume(i),a.on("ended.AudioList",function(){return t._onEnd()}),{own:r,track:a,volume:i,rate:n}}))}},{key:"_copy",value:function(e){this._finalize(clone(e.tracks))}},{key:"_finalize",value:function(e){Object.defineProperties(this,{tracks:{configurable:!0,value:Object.freeze(e)},queue:{configurable:!0,value:[]},current:{writable:!0,value:null},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1},_mute:{writable:!0,value:!1},_loop:{writable:!0,value:!1},_shuffle:{writable:!0,value:!1}})}},{key:"_destroy",value:function(){this.stop(),this.tracks.filter(function(e){return e.own}).forEach(function(e){return e.track._destroy()}),delete this.tracks,delete this.queue}},{key:"load",value:function(){this.tracks.forEach(function(e){return e.track.load()})}},{key:"unload",value:function(){this.stop(),this.tracks.forEach(function(e){return e.track.unload()})}},{key:"play",value:function(){return null!==this.current&&!this.current.track.isUnavailable()&&!this.current.track.isEnded()||(0===this.queue.length&&this._fillQueue(),this._next())?this.current.track.play():Promise.reject(new Error("no tracks were available"))}},{key:"playWhenAllowed",value:function(){var e=this;this.play().catch(function(){var t=C.map(function(e){return e+".AudioList_playWhenAllowed"}).join(" ");jQuery(document).one(t,function(){jQuery(document).off(".AudioList_playWhenAllowed"),e.play()})})}},{key:"pause",value:function(){null!==this.current&&this.current.track.pause()}},{key:"stop",value:function(){null!==this.current&&(this.current.track.stop(),this.current=null),this._drainQueue()}},{key:"skip",value:function(){this._next()?this.current.track.play():this._loop&&this.play()}},{key:"fade",value:function(e,t,r){if("number"!=typeof e)throw new TypeError("duration parameter must be a number");if("number"!=typeof t)throw new TypeError("toVolume parameter must be a number");if(null!=r&&"number"!=typeof r)throw new TypeError("fromVolume parameter must be a number");if(0===this.queue.length&&this._fillQueue(),null!==this.current&&!this.current.track.isUnavailable()&&!this.current.track.isEnded()||this._next()){var n=Math.clamp(t,0,1)*this.current.volume,a=void 0;return null!=r&&(a=Math.clamp(r,0,1)*this.current.volume),this._volume=t,this.current.track.fade(e,n,a)}}},{key:"fadeIn",value:function(e,t){return this.fade(e,1,t)}},{key:"fadeOut",value:function(e,t){return this.fade(e,0,t)}},{key:"fadeStop",value:function(){null!==this.current&&this.current.track.fadeStop()}},{key:"loop",value:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){return null==e?this._loop:(this._loop=!!e,this)})},{key:"mute",value:function(e){return null==e?this._mute:(this._mute=!!e,null!==this.current&&this.current.track.mute(this._mute),this)}},{key:"rate",value:function(e){if(null==e)return this._rate;if("number"!=typeof e)throw new TypeError("rate parameter must be a number");return this._rate=Math.clamp(e,.2,5),null!==this.current&&this.current.track.rate(this._rate*this.current.rate),this}},{key:"shuffle",value:function(e){var t=this;if(null==e)return this._shuffle;if(this._shuffle=!!e,this.queue.length>0&&(this._fillQueue(),!this._shuffle&&null!==this.current&&this.queue.length>1)){var r=this.queue.findIndex(function(e){return e===t.current});if(-1!==r){var n;(n=this.queue).push.apply(n,_toConsumableArray(this.queue.splice(0,r+1)))}}return this}},{key:"volume",value:function(e){if(null==e)return this._volume;if("number"!=typeof e)throw new TypeError("volume parameter must be a number");return this._volume=Math.clamp(e,0,1),null!==this.current&&this.current.track.volume(this._volume*this.current.volume),this}},{key:"duration",value:function(){if(arguments.length>0)throw new Error("duration takes no parameters");return this.tracks.map(function(e){return e.track.duration()}).reduce(function(e,t){return e+t},0)}},{key:"remaining",value:function(){if(arguments.length>0)throw new Error("remaining takes no parameters");var e=this.queue.map(function(e){return e.track.duration()}).reduce(function(e,t){return e+t},0);return null!==this.current&&(e+=this.current.track.remaining()),e}},{key:"time",value:function(){if(arguments.length>0)throw new Error("time takes no parameters");return this.duration()-this.remaining()}},{key:"isPlaying",value:function(){return null!==this.current&&this.current.track.isPlaying()}},{key:"isPaused",value:function(){return null===this.current||this.current.track.isPaused()}},{key:"isStopped",value:function(){return 0===this.queue.length&&null===this.current}},{key:"isEnded",value:function(){return 0===this.queue.length&&(null===this.current||this.current.track.isEnded())}},{key:"isFading",value:function(){return null!==this.current&&this.current.track.isFading()}},{key:"_next",value:function(){null!==this.current&&(this.current.track.stop(),this.current=null);for(var e=void 0;e=this.queue.shift();)if(!e.track.isUnavailable()){this.current=e;break}return null!==this.current&&(this.current.track.mute(this._mute),this.current.track.rate(this._rate*this.current.rate),this.current.track.volume(this._volume*this.current.volume),this.current.track.loop(!1),!0)}},{key:"_onEnd",value:function(){if(0===this.queue.length){if(!this._loop)return;this._fillQueue()}this._next()&&this.current.track.play()}},{key:"_drainQueue",value:function(){this.queue.splice(0)}},{key:"_fillQueue",value:function(){var e;this._drainQueue(),(e=this.queue).push.apply(e,_toConsumableArray(this.tracks.filter(function(e){return!e.track.isUnavailable()}))),0!==this.queue.length&&this._shuffle&&(this.queue.shuffle(),this.queue.length>1&&this.queue[0]===this.current&&this.queue.push(this.queue.shift()))}}]),e}(),B=function(){function e(t){if(_classCallCheck(this,e),!(t instanceof Set||t instanceof e))throw new TypeError("list parameter must be a Set or a AudioRunner instance");Object.defineProperties(this,{trackIds:{value:new Set(t instanceof e?t.trackIds:t)}})}return _createClass(e,[{key:"load",value:function(){e._run(this.trackIds,V.prototype.load)}},{key:"unload",value:function(){e._run(this.trackIds,V.prototype.unload)}},{key:"play",value:function(){e._run(this.trackIds,V.prototype.play)}},{key:"playWhenAllowed",value:function(){e._run(this.trackIds,V.prototype.playWhenAllowed)}},{key:"pause",value:function(){e._run(this.trackIds,V.prototype.pause)}},{key:"stop",value:function(){e._run(this.trackIds,V.prototype.stop)}},{key:"fade",value:function(t,r,n){if(null==t||null==r)throw new Error("fade requires parameters");e._run(this.trackIds,V.prototype.fade,t,r,n)}},{key:"fadeIn",value:function(t,r){if(null==t)throw new Error("fadeIn requires a parameter");e._run(this.trackIds,V.prototype.fadeIn,t,r)}},{key:"fadeOut",value:function(t,r){if(null==t)throw new Error("fadeOut requires a parameter");e._run(this.trackIds,V.prototype.fadeOut,t,r)}},{key:"fadeStop",value:function(){e._run(this.trackIds,V.prototype.fadeStop)}},{key:"loop",value:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(t){if(null==t)throw new Error("loop requires a parameter");return e._run(this.trackIds,V.prototype.loop,t),this})},{key:"mute",value:function(t){if(null==t)throw new Error("mute requires a parameter");return e._run(this.trackIds,V.prototype.mute,t),this}},{key:"rate",value:function(t){if(null==t)throw new Error("rate requires a parameter");return e._run(this.trackIds,V.prototype.rate,t),this}},{key:"time",value:function(t){if(null==t)throw new Error("time requires a parameter");return e._run(this.trackIds,V.prototype.time,t),this}},{key:"volume",value:function(t){if(null==t)throw new Error("volume requires a parameter");return e._run(this.trackIds,V.prototype.volume,t),this}},{key:"on",value:function(){for(var t=arguments.length,r=Array(t),n=0;n<t;n++)r[n]=arguments[n];return e._run.apply(e,[this.trackIds,V.prototype.on].concat(r)),this}},{key:"one",value:function(){for(var t=arguments.length,r=Array(t),n=0;n<t;n++)r[n]=arguments[n];return e._run.apply(e,[this.trackIds,V.prototype.one].concat(r)),this}},{key:"off",value:function(){for(var t=arguments.length,r=Array(t),n=0;n<t;n++)r[n]=arguments[n];return e._run.apply(e,[this.trackIds,V.prototype.off].concat(r)),this}}],[{key:"_run",value:function(e,t){
for(var r=arguments.length,n=Array(r>2?r-2:0),a=2;a<r;a++)n[a-2]=arguments[a];e.forEach(function(e){var r=N.get(e);r&&t.apply(r,n)})}}]),e}(),z=function(){function e(e,t){var a=void 0;if(r.lastIndex=t,null===(a=r.exec(e))||"("!==a[0])throw new Error('invalid ":not()" syntax: missing parentheticals');n.lastIndex=r.lastIndex;for(var i=r.lastIndex,o={str:"",nextMatch:-1},s=1;null!==(a=n.exec(e));)if("("===a[0]?++s:--s,s<1){o.nextMatch=n.lastIndex,o.str=e.slice(i,o.nextMatch-1);break}return o}function t(r){for(var n=[],a=/:?[^\s:()]+/g,i=void 0;null!==(i=a.exec(r));){var o=i[0];if(":not"===o){if(0===n.length)throw new Error('invalid negation: no group ID preceded ":not()"');var s=n[n.length-1];if(":"!==s.id[0])throw new Error('invalid negation of track "'+s.id+'": only groups may be negated with ":not()"');var u=e(r,a.lastIndex);if(-1===u.nextMatch)throw new Error('unknown error parsing ":not()"');a.lastIndex=u.nextMatch,s.not=t(u.str)}else n.push({id:o})}return n}var r=/\S/g,n=/[()]/g;return t}();return Object.freeze(Object.defineProperties({},{tracks:{value:Object.freeze(Object.defineProperties({},{add:{value:e},delete:{value:t},clear:{value:r},has:{value:n},get:{value:a}}))},groups:{value:Object.freeze(Object.defineProperties({},{add:{value:i},delete:{value:o},clear:{value:s},has:{value:u},get:{value:l}}))},lists:{value:Object.freeze(Object.defineProperties({},{add:{value:c},delete:{value:d},clear:{value:f},has:{value:p},get:{value:h}}))},select:{value:g},load:{value:m},loadWithScreen:{value:v},mute:{value:y},muteOnHidden:{value:b},rate:{value:w},stop:{value:k},unload:{value:S},volume:{value:E}}))}(),State=function(){function e(){session.delete("state"),$=[],H=c(),J=-1,G=[],Z=null===Z?null:new PRNGWrapper(Z.seed,!1)}function t(){if(session.has("state")){var e=session.get("state");return null!=e&&(n(e),!0)}return!1}function r(e){var t={index:J};return e?t.history=clone($):t.delta=A($),G.length>0&&(t.expired=[].concat(_toConsumableArray(G))),null!==Z&&(t.seed=Z.seed),t}function n(e,t){if(null==e)throw new Error("state object is null or undefined");if(!e.hasOwnProperty(t?"history":"delta")||0===e[t?"history":"delta"].length)throw new Error("state object has no history or history is empty");if(!e.hasOwnProperty("index"))throw new Error("state object has no index");if(null!==Z&&!e.hasOwnProperty("seed"))throw new Error("state object has no seed, but PRNG is enabled");if(null===Z&&e.hasOwnProperty("seed"))throw new Error("state object has seed, but PRNG is disabled");$=t?clone(e.history):P(e.delta),J=e.index,G=e.hasOwnProperty("expired")?[].concat(_toConsumableArray(e.expired)):[],e.hasOwnProperty("seed")&&(Z.seed=e.seed),g(J)}function a(){return r(!0)}function i(e){return n(e,!0)}function o(){return G}function s(){return G.length+v()}function u(){return G.concat($.slice(0,v()).map(function(e){return e.title}))}function l(e){return null!=e&&""!==e&&(!!G.includes(e)||!!$.slice(0,v()).some(function(t){return t.title===e}))}function c(e,t){return{title:null==e?"":String(e),variables:null==t?{}:clone(t)}}function d(){return H}function f(){return J}function p(){return H.title}function h(){return H.variables}function g(e){if(null==e)throw new Error("moment activation attempted with null or undefined");switch(void 0===e?"undefined":_typeof(e)){case"object":H=clone(e);break;case"number":if(b())throw new Error("moment activation attempted with index on empty history");if(e<0||e>=y())throw new RangeError("moment activation attempted with out-of-bounds index; need [0, "+(y()-1)+"], got "+e);H=clone($[e]);break;default:throw new TypeError('moment activation attempted with a "'+(void 0===e?"undefined":_typeof(e))+'"; must be an object or valid history stack index')}return null!==Z&&(Z=PRNGWrapper.unmarshal({seed:Z.seed,pull:H.pull})),session.set("state",r()),jQuery.event.trigger(":historyupdate"),H}function m(){return $}function v(){return J+1}function y(){return $.length}function b(){return 0===$.length}function w(){return $.length>0?$[J]:null}function k(){return $.length>0?$[$.length-1]:null}function S(){return $.length>0?$[0]:null}function E(e){return b()||e<0||e>J?null:$[e]}function j(e){if(b())return null;var t=1+(e?Math.abs(e):0);return t>v()?null:$[v()-t]}function x(e){if(b()||null==e||""===e)return!1;for(var t=J;t>=0;--t)if($[t].title===e)return!0;return!1}function T(e){if(v()<y()&&$.splice(v(),y()-v()),$.push(c(e,H.variables)),Z&&(k().pull=Z.pull),Config.history.maxStates>0)for(;y()>Config.history.maxStates;)G.push($.shift().title);return J=y()-1,g(J),v()}function O(e){return!(null==e||e<0||e>=y()||e===J)&&(J=e,g(J),!0)}function C(e){return null!=e&&0!==e&&O(J+e)}function A(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[e[0]],r=1,n=e.length;r<n;++r)t.push(Diff.diff(e[r-1],e[r]));return t}function P(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,n=e.length;r<n;++r)t.push(Diff.patch(t[r-1],e[r]));return t}function _(e,t){if(!b()){var r=void 0;throw r="the Story JavaScript",new Error("State.initPRNG must be called during initialization, within either "+r+" or the StoryInit special passage")}Z=new PRNGWrapper(e,t),H.pull=Z.pull}function N(){return null!==Z}function D(){return Z?Z.pull:NaN}function I(){return Z?Z.seed:null}function M(){return Z?Z.random():Math.random()}function L(){Y={},TempVariables=Y}function Q(){return Y}function F(e){try{return Scripting.evalTwineScript(e)}catch(e){}}function R(e,t){try{return Scripting.evalTwineScript(e+" = evalTwineScript$Data$",null,t),!0}catch(e){}return!1}function W(){storage.delete(K)}function V(e){if("string"!=typeof e)throw new TypeError("State.metadata.delete key parameter must be a string (received: "+(void 0===e?"undefined":_typeof(e))+")");var t=storage.get(K);t&&t.hasOwnProperty(e)&&(1===Object.keys(t).length?storage.delete(K):(delete t[e],storage.set(K,t)))}function U(e){if("string"!=typeof e)throw new TypeError("State.metadata.get key parameter must be a string (received: "+(void 0===e?"undefined":_typeof(e))+")");var t=storage.get(K);return t&&t.hasOwnProperty(e)?t[e]:undefined}function B(e){if("string"!=typeof e)throw new TypeError("State.metadata.has key parameter must be a string (received: "+(void 0===e?"undefined":_typeof(e))+")");var t=storage.get(K);return t&&t.hasOwnProperty(e)}function z(e,t){if("string"!=typeof e)throw new TypeError("State.metadata.set key parameter must be a string (received: "+(void 0===e?"undefined":_typeof(e))+")");if(void 0===t)V(e);else{var r=storage.get(K)||{};r[e]=t,storage.set(K,r)}}function q(){var e=storage.get(K);return e?Object.keys(e).length:0}var $=[],H=c(),J=-1,G=[],Z=null,Y={},K="metadata";return Object.freeze(Object.defineProperties({},{reset:{value:e},restore:{value:t},marshalForSave:{value:a},unmarshalForSave:{value:i},expired:{get:o},turns:{get:s},passages:{get:u},hasPlayed:{value:l},active:{get:d},activeIndex:{get:f},passage:{get:p},variables:{get:h},history:{get:m},length:{get:v},size:{get:y},isEmpty:{value:b},current:{get:w},top:{get:k},bottom:{get:S},index:{value:E},peek:{value:j},has:{value:x},create:{value:T},goTo:{value:O},go:{value:C},deltaEncode:{value:A},deltaDecode:{value:P},prng:{value:Object.freeze(Object.defineProperties({},{init:{value:_},isEnabled:{value:N},pull:{get:D},seed:{get:I}}))},random:{value:M},clearTemporary:{value:L},temporary:{get:Q},getVar:{value:F},setVar:{value:R},metadata:{value:Object.freeze(Object.defineProperties({},{clear:{value:W},delete:{value:V},get:{value:U},has:{value:B},set:{value:z},size:{get:q}}))},initPRNG:{value:_},restart:{value:function(){return Engine.restart()}},backward:{value:function(){return Engine.backward()}},forward:{value:function(){return Engine.forward()}},display:{value:function(){return Engine.display.apply(Engine,arguments)}},show:{value:function(){return Engine.show.apply(Engine,arguments)}},play:{value:function(){return Engine.play.apply(Engine,arguments)}}}))}(),Scripting=function(){function addAccessibleClickHandler(e,t,r,n,a){if(arguments.length<2)throw new Error("addAccessibleClickHandler insufficient number of parameters");var i=void 0,o=void 0;if("function"==typeof t?(i=t,o={namespace:n,one:!!r}):(i=r,o={namespace:a,one:!!n,selector:t}),"function"!=typeof i)throw new TypeError("addAccessibleClickHandler handler parameter must be a function");return jQuery(e).ariaClick(o,i)}function insertElement(e,t,r,n,a,i){var o=jQuery(document.createElement(t));return r&&o.attr("id",r),n&&o.addClass(n),i&&o.attr("title",i),a&&o.text(a),e&&o.appendTo(e),o[0]}function insertText(e,t){jQuery(e).append(document.createTextNode(t))}function removeChildren(e){jQuery(e).empty()}function removeElement(e){jQuery(e).remove()}function fade(e,t){function r(){i+=.05*a,n(o,Math.easeInOut(i)),(1===a&&i>=1||-1===a&&i<=0)&&(e.style.visibility="in"===t.fade?"visible":"hidden",o.parentNode.replaceChild(e,o),o=null,window.clearInterval(s),t.onComplete&&t.onComplete())}function n(e,t){e.style.zoom=1,e.style.filter="alpha(opacity="+Math.floor(100*t)+")",e.style.opacity=t}var a="in"===t.fade?1:-1,i=void 0,o=e.cloneNode(!0),s=void 0;e.parentNode.replaceChild(o,e),"in"===t.fade?(i=0,o.style.visibility="visible"):i=1,n(o,i),s=window.setInterval(r,25)}function scrollWindowTo(e,t){function r(){l+=a,window.scroll(0,i+u*(s*Math.easeInOut(l))),l>=1&&window.clearInterval(c)}function n(e){for(var t=0;e.offsetParent;)t+=e.offsetTop,e=e.offsetParent;return t}var a=null!=t?Number(t):.1;Number.isNaN(a)||!Number.isFinite(a)||a<0?a=.1:a>1&&(a=1);var i=window.scrollY?window.scrollY:document.body.scrollTop,o=function(e){var t=n(e),r=t+e.offsetHeight,a=window.scrollY?window.scrollY:document.body.scrollTop,i=window.innerHeight?window.innerHeight:document.body.clientHeight,o=a+i;return t>=a&&r>o&&e.offsetHeight<i?t-(i-e.offsetHeight)+20:t}(e),s=Math.abs(i-o),u=i>o?-1:1,l=0,c=void 0;c=window.setInterval(r,25)}function toStringOrDefault(e){return stringFrom(e)}function either(){if(0!==arguments.length)return Array.prototype.concat.apply([],arguments).random()}function forget(e){if("string"!=typeof e)throw new TypeError("forget key parameter must be a string (received: "+Util.getType(e)+")");State.metadata.delete(e)}function hasVisited(){if(0===arguments.length)throw new Error("hasVisited called with insufficient parameters");if(State.isEmpty())return!1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=0,n=e.length;r<n;++r)if(!t.includes(e[r]))return!1;return!0}function lastVisited(){if(0===arguments.length)throw new Error("lastVisited called with insufficient parameters");if(State.isEmpty())return-1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=t.length-1,n=State.turns,a=0,i=e.length;a<i&&n>-1;++a){var o=t.lastIndexOf(e[a]);n=Math.min(n,-1===o?-1:r-o)}return n}function memorize(e,t){if("string"!=typeof e)throw new TypeError("memorize key parameter must be a string (received: "+Util.getType(e)+")");State.metadata.set(e,t)}function passage(){return State.passage}function previous(){var e=State.passages;if(arguments.length>0){var t=Number(arguments[0]);if(!Number.isSafeInteger(t)||t<1)throw new RangeError("previous offset parameter must be a positive integer greater than zero");return e.length>t?e[e.length-1-t]:""}for(var r=e.length-2;r>=0;--r)if(e[r]!==State.passage)return e[r];return""}function random(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("random called with insufficient parameters");case 1:e=0,t=Math.trunc(arguments[0]);break;default:e=Math.trunc(arguments[0]),t=Math.trunc(arguments[1])}if(!Number.isInteger(e))throw new Error("random min parameter must be an integer");if(!Number.isInteger(t))throw new Error("random max parameter must be an integer");if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(State.random()*(t-e+1))+e}function randomFloat(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("randomFloat called with insufficient parameters");case 1:e=0,t=Number(arguments[0]);break;default:e=Number(arguments[0]),t=Number(arguments[1])}if(Number.isNaN(e)||!Number.isFinite(e))throw new Error("randomFloat min parameter must be a number");if(Number.isNaN(t)||!Number.isFinite(t))throw new Error("randomFloat max parameter must be a number");if(e>t){var r=[t,e];e=r[0],t=r[1]}return State.random()*(t-e)+e}function recall(e,t){if("string"!=typeof e)throw new TypeError("recall key parameter must be a string (received: "+Util.getType(e)+")");return State.metadata.has(e)?State.metadata.get(e):t}function tags(){if(0===arguments.length)return Story.get(State.passage).tags.slice(0);for(var e=Array.prototype.concat.apply([],arguments),t=[],r=0,n=e.length;r<n;++r)t=t.concat(Story.get(e[r]).tags);return t}function temporary(){return State.temporary}function time(){return null===Engine.lastPlay?0:Util.now()-Engine.lastPlay}function turns(){return State.turns}function variables(){return State.variables}function visited(){if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],0===arguments.length?[State.passage]:arguments),t=State.passages,r=State.turns,n=0,a=e.length;n<a&&r>0;++n)r=Math.min(r,t.count(e[n]));return r}function visitedTags(){if(0===arguments.length)throw new Error("visitedTags called with insufficient parameters");if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],arguments),t=e.length,r=State.passages,n=new Map,a=0,i=0,o=r.length;i<o;++i){var s=r[i];if(n.has(s))n.get(s)&&++a;else{var u=Story.get(s).tags;if(u.length>0){for(var l=0,c=0;c<t;++c)u.includes(e[c])&&++l;l===t?(++a,n.set(s,!0)):n.set(s,!1)}}}return a}function evalJavaScript(code,output,data){return function(code,output,evalJavaScript$Data$){return eval(code)}.call(output?{output:output}:null,String(code),output,data)}function evalTwineScript(code,output,data){return function(code,output,evalTwineScript$Data$){return eval(code)}.call(output?{output:output}:null,parse(String(code)),output,data)}var _ref8=function(){function e(e){return Util.parseUrl(e).path.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w]+/g,"-").toLocaleLowerCase()}function t(t){return new Promise(function(r,n){jQuery(document.createElement("script")).one("load abort error",function(e){jQuery(e.target).off(),"load"===e.type?r(e.target):n(new Error('importScripts failed to load the script "'+t+'".'))}).appendTo(document.head).attr({id:"script-imported-"+e(t),type:"text/javascript",src:t})})}function r(t){return new Promise(function(r,n){jQuery(document.createElement("link")).one("load abort error",function(e){jQuery(e.target).off(),"load"===e.type?r(e.target):n(new Error('importStyles failed to load the stylesheet "'+t+'".'))}).appendTo(document.head).attr({id:"style-imported-"+e(t),rel:"stylesheet",href:t})})}function n(e){return e.reduce(function(e,t){return e=e.then(t)},Promise.resolve())}function a(){for(var e=arguments.length,r=Array(e),a=0;a<e;a++)r[a]=arguments[a];return Promise.all(r.map(function(e){return Array.isArray(e)?n(e.map(function(e){return function(){return t(e)}})):t(e)}))}function i(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return Promise.all(t.map(function(e){return Array.isArray(e)?n(e.map(function(e){return function(){return r(e)}})):r(e)}))}return{importScripts:a,importStyles:i}}(),importScripts=_ref8.importScripts,importStyles=_ref8.importStyles,parse=function(){function e(e){if(0!==r.lastIndex)throw new RangeError("Scripting.parse last index is non-zero at start");for(var s=e,u=void 0;null!==(u=r.exec(s));)if(u[5]){var l=u[5];if("$"===l||"_"===l)continue;if(a.test(l))l=l[0];else if("is"===l){var c=r.lastIndex,d=s.slice(c);o.test(d)&&(s=s.splice(c,d.search(n)),l="isnot")}else{var f=s.slice(r.lastIndex);if(i.test(f))continue}t[l]&&(s=s.splice(u.index,l.length,t[l]),r.lastIndex+=t[l].length-l.length)}return s}var t=Util.toEnum({$:"State.variables.",_:"State.temporary.",to:"=",eq:"==",neq:"!=",is:"===",isnot:"!==",gt:">",gte:">=",lt:"<",lte:"<=",and:"&&",or:"||",not:"!",def:'"undefined" !== typeof',ndef:'"undefined" === typeof'}),r=new RegExp(["(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","([=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}]+)","([^\"'=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}\\s]+)"].join("|"),"g"),n=/\S/,a=new RegExp("^"+Patterns.variable),i=/^\s*:/,o=/^\s+not\b/;return e}();return Object.freeze(Object.defineProperties({},{parse:{value:parse},evalJavaScript:{value:evalJavaScript},evalTwineScript:{value:evalTwineScript}}))}(),_ref9=function(){return{EOF:-1,Lexer:function(){function e(t,r){if(_classCallCheck(this,e),arguments.length<2)throw new Error("Lexer constructor called with too few parameters (source:string , initialState:function)");Object.defineProperties(this,{source:{value:t},initial:{value:r},state:{writable:!0,value:r},start:{writable:!0,value:0},pos:{writable:!0,value:0},depth:{writable:!0,value:0},items:{writable:!0,value:[]},data:{writable:!0,value:{}}})}return _createClass(e,[{key:"reset",value:function(){this.state=this.initial,this.start=0,this.pos=0,this.depth=0,this.items=[],this.data={}}},{key:"run",value:function(){for(;null!==this.state;)this.state=this.state(this);return this.items}},{key:"nextItem",value:function(){for(;0===this.items.length&&null!==this.state;)this.state=this.state(this);return this.items.shift()}},{key:"next",value:function(){return this.pos>=this.source.length?-1:this.source[this.pos++]}},{key:"peek",value:function(){return this.pos>=this.source.length?-1:this.source[this.pos]}},{key:"backup",value:function(e){this.pos-=e||1}},{key:"forward",value:function(e){this.pos+=e||1}},{key:"ignore",value:function(){this.start=this.pos}},{key:"accept",value:function(e){var t=this.next();return-1!==t&&(!!e.includes(t)||(this.backup(),!1))}},{key:"acceptRe",value:function(e){var t=this.next();return-1!==t&&(!!e.test(t)||(this.backup(),!1))}},{key:"acceptRun",value:function(e){for(;;){var t=this.next();if(-1===t)return;if(!e.includes(t))break}this.backup()}},{key:"acceptRunRe",value:function(e){for(;;){var t=this.next();if(-1===t)return;if(!e.test(t))break}this.backup()}},{key:"emit",value:function(e){this.items.push({type:e,text:this.source.slice(this.start,this.pos),start:this.start,pos:this.pos}),this.start=this.pos}},{key:"error",value:function(e,t){if(arguments.length<2)throw new Error("Lexer.prototype.error called with too few parameters (type:number , message:string)");return this.items.push({type:e,message:t,text:this.source.slice(this.start,this.pos),start:this.start,pos:this.pos}),null}}],[{key:"enumFromNames",value:function(e){var t=e.reduce(function(e,t,r){return e[t]=r,e},{});return Object.freeze(Object.assign(Object.create(null),t))}}]),e}()}}(),EOF=_ref9.EOF,Lexer=_ref9.Lexer,Wikifier=function(){var e=0,t=function(){function t(r,n,a){_classCallCheck(this,t),t.Parser.Profile.isEmpty()&&t.Parser.Profile.compile(),Object.defineProperties(this,{source:{value:String(n)},options:{writable:!0,value:Object.assign({profile:"all"},a)},nextMatch:{writable:!0,value:0},output:{writable:!0,value:null},_rawArgs:{writable:!0,value:""}}),null==r?this.output=document.createDocumentFragment():r.jquery?this.output=r[0]:this.output=r;try{++e,this.subWikify(this.output),1===e&&Config.cleanupWikifierOutput&&convertBreaks(this.output)}finally{--e}}return _createClass(t,[{key:"subWikify",value:function(e,r,n){var a=this.output;this.output=e;var i=void 0,o=void 0;t.Option.length>0&&(i=Object.assign(i||{},t.Option.options)),null!==n&&"object"===(void 0===n?"undefined":_typeof(n))&&(i=Object.assign(i||{},n)),i&&(o=this.options,this.options=Object.assign({},this.options,i));var s=t.Parser.Profile.get(this.options.profile),u=r?new RegExp("(?:"+r+")",this.options.ignoreTerminatorCase?"gim":"gm"):null,l=void 0,c=void 0;do{if(s.parserRegExp.lastIndex=this.nextMatch,u&&(u.lastIndex=this.nextMatch),c=s.parserRegExp.exec(this.source),(l=u?u.exec(this.source):null)&&(!c||l.index<=c.index))return l.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,l.index),this.matchStart=l.index,this.matchLength=l[0].length,this.matchText=l[0],this.nextMatch=u.lastIndex,this.output=a,void(o&&(this.options=o));if(c){c.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,c.index),this.matchStart=c.index,this.matchLength=c[0].length,this.matchText=c[0],this.nextMatch=s.parserRegExp.lastIndex;for(var d=void 0,f=1,p=c.length;f<p;++f)if(c[f]){d=f-1;break}if(s.parsers[d].handler(this),null!=TempState.break)break}}while(l||c);null==TempState.break?this.nextMatch<this.source.length&&(this.outputText(this.output,this.nextMatch,this.source.length),this.nextMatch=this.source.length):this.output.lastChild&&this.output.lastChild.nodeType===Node.ELEMENT_NODE&&"BR"===this.output.lastChild.nodeName.toUpperCase()&&jQuery(this.output.lastChild).remove(),this.output=a,o&&(this.options=o)}},{key:"outputText",value:function(e,t,r){jQuery(e).append(document.createTextNode(this.source.substring(t,r)))}},{key:"rawArgs",value:function(){return this._rawArgs}},{key:"fullArgs",value:function(){return Scripting.parse(this._rawArgs)}}],[{key:"wikifyEval",value:function(e){var r=document.createDocumentFragment();new t(r,e);var n=r.querySelector(".error");if(null!==n)throw new Error(n.textContent.replace(errorPrologRegExp,""));return r}},{key:"createInternalLink",value:function(e,t,r,n){var a=jQuery(document.createElement("a"));return null!=t&&(a.attr("data-passage",t),Story.has(t)?(a.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(t)&&a.addClass("link-visited")):a.addClass("link-broken"),a.ariaClick({one:!0},function(){"function"==typeof n&&n(),Engine.play(t)})),r&&a.append(document.createTextNode(r)),e&&a.appendTo(e),a[0]}},{key:"createExternalLink",value:function(e,t,r){var n=jQuery(document.createElement("a")).attr("target","_blank").addClass("link-external").text(r).appendTo(e);return null!=t&&n.attr({href:t,tabindex:0}),n[0]}},{key:"isExternalLink",value:function(e){return!Story.has(e)&&(new RegExp("^"+Patterns.url,"gim").test(e)||/[/.?#]/.test(e))}}]),t}();return Object.defineProperty(t,"Option",{value:function(){function e(){return o.length}function t(){return Object.assign.apply(Object,[{}].concat(_toConsumableArray(o)))}function r(){o=[]}function n(e){return o[e]}function a(){return o.pop()}function i(e){if("object"!==(void 0===e?"undefined":_typeof(e))||null===e)throw new TypeError("Wikifier.Option.push options parameter must be an object (received: "+Util.getType(e)+")");return o.push(e)}var o=[];return Object.freeze(Object.defineProperties({},{length:{get:e},options:{get:t},clear:{value:r},get:{value:n},pop:{value:a},push:{value:i}}))}()}),Object.defineProperty(t,"Parser",{value:function(){function e(){return d}function t(e){if("object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("Wikifier.Parser.add parser parameter must be an object");if(!e.hasOwnProperty("name"))throw new Error('parser object missing required "name" property');if("string"!=typeof e.name)throw new Error('parser object "name" property must be a string');if(!e.hasOwnProperty("match"))throw new Error('parser object missing required "match" property');if("string"!=typeof e.match)throw new Error('parser object "match" property must be a string');if(!e.hasOwnProperty("handler"))throw new Error('parser object missing required "handler" property');if("function"!=typeof e.handler)throw new Error('parser object "handler" property must be a function');if(e.hasOwnProperty("profiles")&&!Array.isArray(e.profiles))throw new Error('parser object "profiles" property must be an array');if(a(e.name))throw new Error('cannot clobber existing parser "'+e.name+'"');d.push(e)}function r(e){var t=d.find(function(t){return t.name===e});t&&d.delete(t)}function n(){return 0===d.length}function a(e){return!!d.find(function(t){return t.name===e})}function i(e){return d.find(function(t){return t.name===e})||null}function o(){return f}function s(){var e=d,t=e.filter(function(e){return!Array.isArray(e.profiles)||e.profiles.includes("core")});return f=Object.freeze({all:{parsers:e,parserRegExp:new RegExp(e.map(function(e){return"("+e.match+")"}).join("|"),"gm")},core:{parsers:t,parserRegExp:new RegExp(t.map(function(e){return"("+e.match+")"}).join("|"),"gm")}})}function u(){return"object"!==(void 0===f?"undefined":_typeof(f))||0===Object.keys(f).length}function l(e){if("object"!==(void 0===f?"undefined":_typeof(f))||!f.hasOwnProperty(e))throw new Error('nonexistent parser profile "'+e+'"');return f[e]}function c(e){return"object"===(void 0===f?"undefined":_typeof(f))&&f.hasOwnProperty(e)}var d=[],f=void 0;return Object.freeze(Object.defineProperties({},{parsers:{get:e},add:{value:t},delete:{value:r},isEmpty:{value:n},has:{value:a},get:{value:i},Profile:{value:Object.freeze(Object.defineProperties({},{profiles:{get:o},compile:{value:s},isEmpty:{value:u},has:{value:c},get:{value:l}}))}}))}()}),Object.defineProperties(t,{helpers:{value:{}},getValue:{value:State.getVar},setValue:{value:State.setVar},parse:{value:Scripting.parse},evalExpression:{value:Scripting.evalTwineScript},evalStatements:{value:Scripting.evalTwineScript},textPrimitives:{value:Patterns}}),Object.defineProperties(t.helpers,{inlineCss:{value:function(){function e(e){var n={classes:[],id:"",styles:{}},a=void 0;do{t.lastIndex=e.nextMatch;var i=t.exec(e.source);if(a=i&&i.index===e.nextMatch){if(i[1])n.styles[Util.fromCssProperty(i[1])]=i[2].trim();else if(i[3])n.styles[Util.fromCssProperty(i[3])]=i[4].trim();else if(i[5]){var o=void 0;for(r.lastIndex=0;null!==(o=r.exec(i[5]));)"."===o[1]?n.classes.push(o[2]):n.id=o[2]}e.nextMatch=t.lastIndex}}while(a);return n}var t=new RegExp(Patterns.inlineCss,"gm"),r=new RegExp("("+Patterns.cssIdOrClassSigil+")("+Patterns.anyLetter+"+)","g");return e}()},evalText:{value:function(e){var t=void 0;try{switch(t=Scripting.evalTwineScript(e),void 0===t?"undefined":_typeof(t)){case"string":""===t.trim()&&(t=e);break;case"number":t=String(t);break;default:t=e}}catch(r){t=e}return t}},evalPassageId:{value:function(e){return null==e||Story.has(e)?e:t.helpers.evalText(e)}},hasBlockContext:{value:function(e){for(var t="function"==typeof window.getComputedStyle,r=e.length-1;r>=0;--r){var n=e[r];switch(n.nodeType){case Node.ELEMENT_NODE:var a=n.nodeName.toUpperCase();if("BR"===a)return!0;var i=t?window.getComputedStyle(n,null):n.currentStyle;if(i&&i.display){if("none"===i.display)continue;return"block"===i.display}switch(a){case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":return!0}return!1;case Node.COMMENT_NODE:continue;default:return!1}}return!0}},createShadowSetterCallback:{value:function(){function e(){if(!a&&!(a=t.Parser.get("macro")))throw new Error('cannot find "macro" parser');return a}function r(){for(var t=a||e(),r=new Set,n=t.context;null!==n;n=n.parent)n._shadows&&n._shadows.forEach(function(e){return r.add(e)});return[].concat(_toConsumableArray(r))}function n(e){var t={};return r().forEach(function(e){var r=e.slice(1),n="$"===e[0]?State.variables:State.temporary;t[e]=n[r]}),function(){var r=Object.keys(t),n=r.length>0?{}:null;try{return r.forEach(function(e){var r=e.slice(1),a="$"===e[0]?State.variables:State.temporary;a.hasOwnProperty(r)&&(n[r]=a[r]),a[r]=t[e]}),Scripting.evalJavaScript(e)}finally{r.forEach(function(e){var r=e.slice(1),a="$"===e[0]?State.variables:State.temporary;t[e]=a[r],n.hasOwnProperty(r)?a[r]=n[r]:delete a[r]})}}}var a=null;return n}()},parseSquareBracketedMarkup:{value:function(){function e(e,t){e:for(;;)switch(e.next()){case"\\":var r=e.next();if(r!==EOF&&"\n"!==r)break;case EOF:case"\n":return EOF;case t:break e}return e.pos}function t(e){if(!e.accept("["))return e.error(o.Error,"malformed square-bracketed markup");if(e.accept("["))e.data.isLink=!0,e.emit(o.LinkMeta);else{if(e.accept("<>"),!(e.accept("Ii")&&e.accept("Mm")&&e.accept("Gg")&&e.accept("[")))return e.error(o.Error,"malformed square-bracketed markup");e.data.isLink=!1,e.emit(o.ImageMeta)}return e.depth=2,r}function r(t){for(var r=t.data.isLink?"link":"image",i=s.None;;)switch(t.next()){case EOF:case"\n":return t.error(o.Error,"unterminated "+r+" markup");case'"':if(e(t,'"')===EOF)return t.error(o.Error,"unterminated double quoted string in "+r+" markup");break;case"|":i===s.None&&(i=s.LTR,t.backup(),t.emit(o.Text),t.forward(),t.emit(o.DelimLTR));break;case"-":i===s.None&&">"===t.peek()&&(i=s.LTR,t.backup(),t.emit(o.Text),t.forward(2),t.emit(o.DelimLTR));break;case"<":i===s.None&&"-"===t.peek()&&(i=s.RTL,t.backup(),t.emit(t.data.isLink?o.Link:o.Source),t.forward(2),t.emit(o.DelimRTL));break;case"[":++t.depth;break;case"]":if(1===--t.depth)switch(t.peek()){case"[":return++t.depth,t.backup(),i===s.RTL?t.emit(o.Text):t.emit(t.data.isLink?o.Link:o.Source),t.forward(2),t.emit(o.InnerMeta),t.data.isLink?a:n;case"]":return--t.depth,t.backup(),i===s.RTL?t.emit(o.Text):t.emit(t.data.isLink?o.Link:o.Source),t.forward(2),t.emit(o.RightMeta),null;default:return t.error(o.Error,"malformed "+r+" markup")}}}function n(t){for(var r=t.data.isLink?"link":"image";;)switch(t.next()){case EOF:case"\n":return t.error(o.Error,"unterminated "+r+" markup");case'"':if(e(t,'"')===EOF)return t.error(o.Error,"unterminated double quoted string in "+r+" markup link component");break;case"[":++t.depth;break;case"]":if(1===--t.depth)switch(t.peek()){case"[":return++t.depth,t.backup(),t.emit(o.Link),t.forward(2),t.emit(o.InnerMeta),a;case"]":return--t.depth,t.backup(),t.emit(o.Link),t.forward(2),t.emit(o.RightMeta),null;default:return t.error(o.Error,"malformed "+r+" markup")}}}function a(t){for(var r=t.data.isLink?"link":"image";;)switch(t.next()){case EOF:case"\n":return t.error(o.Error,"unterminated "+r+" markup");case'"':if(e(t,'"')===EOF)return t.error(o.Error,"unterminated double quoted string in "+r+" markup setter component");break;case"'":if(e(t,"'")===EOF)return t.error(o.Error,"unterminated single quoted string in "+r+" markup setter component");break;case"[":++t.depth;break;case"]":if(1===--t.depth)return"]"!==t.peek()?t.error(o.Error,"malformed "+r+" markup"):(--t.depth,t.backup(),t.emit(o.Setter),t.forward(2),t.emit(o.RightMeta),null)}}function i(e){var r=new Lexer(e.source,t);r.start=r.pos=e.matchStart;var n={},a=r.run(),i=a.last();return i&&i.type===o.Error?n.error=i.message:a.forEach(function(e){var t=e.text.trim();switch(e.type){case o.ImageMeta:n.isImage=!0,"<"===t[1]?n.align="left":">"===t[1]&&(n.align="right");break;case o.LinkMeta:n.isLink=!0;break;case o.Link:"~"===t[0]?(n.forceInternal=!0,n.link=t.slice(1)):n.link=t;break;case o.Setter:n.setter=t;break;case o.Source:n.source=t;break;case o.Text:n.text=t}}),n.pos=r.pos,n}var o=Lexer.enumFromNames(["Error","DelimLTR","DelimRTL","InnerMeta","ImageMeta","LinkMeta","Link","RightMeta","Setter","Source","Text"]),s=Lexer.enumFromNames(["None","LTR","RTL"]);return i}()}}),t}();!function(){function e(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createDocumentFragment()).append(t[1]).appendTo(e.output))}Wikifier.Parser.add({name:"quoteByBlock",profiles:["block"],match:"^<<<\\n",terminator:"^<<<\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.subWikify(jQuery(document.createElement("blockquote")).appendTo(e.output).get(0),this.terminator)}}),Wikifier.Parser.add({name:"quoteByLine",profiles:["block"],match:"^>+",lookahead:/^>+/gm,terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=[e.output],r=0,n=e.matchLength,a=void 0,i=void 0;do{
if(n>r)for(i=r;i<n;++i)t.push(jQuery(document.createElement("blockquote")).appendTo(t[t.length-1]).get(0));else if(n<r)for(i=r;i>n;--i)t.pop();r=n,e.subWikify(t[t.length-1],this.terminator),jQuery(document.createElement("br")).appendTo(t[t.length-1]),this.lookahead.lastIndex=e.nextMatch;var o=this.lookahead.exec(e.source);a=o&&o.index===e.nextMatch,a&&(n=o[0].length,e.nextMatch+=o[0].length)}while(a)}}),Wikifier.Parser.add({name:"macro",profiles:["core"],match:"<<",lookahead:new RegExp("<<(/?"+Patterns.macroName+")(?:\\s*)((?:(?:`(?:\\\\.|[^`\\\\])*`)|(?:\"(?:\\\\.|[^\"\\\\])*\")|(?:'(?:\\\\.|[^'\\\\])*')|(?:\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)|[^>]|(?:>(?!>)))*)>>","gm"),working:{source:"",name:"",arguments:"",index:0},context:null,handler:function(e){var t=this.lookahead.lastIndex=e.matchStart;if(this.parseTag(e)){var r=e.nextMatch,n=this.working.name,a=this.working.arguments,i=void 0;try{if(!(i=Macro.get(n))){if(Macro.tags.has(n)){var o=Macro.tags.get(n);return throwError(e.output,"child tag <<"+n+">> was found outside of a call to its parent macro"+(1===o.length?"":"s")+" <<"+o.join(">>, <<")+">>",e.source.slice(t,e.nextMatch))}return throwError(e.output,"macro <<"+n+">> does not exist",e.source.slice(t,e.nextMatch))}var s=null;if(void 0!==i.tags&&!(s=this.parseBody(e,i)))return e.nextMatch=r,throwError(e.output,"cannot find a closing tag for macro <<"+n+">>",e.source.slice(t,e.nextMatch)+"…");if("function"!=typeof i.handler)return throwError(e.output,"macro <<"+n+">> handler function "+(void 0===i.handler?"does not exist":"is not a function"),e.source.slice(t,e.nextMatch));var u=s?s[0].args:this.createArgs(a,this.skipArgs(i,i.name));if(void 0!==i._MACRO_API){this.context=new MacroContext({macro:i,name:n,args:u,payload:s,source:e.source.slice(t,e.nextMatch),parent:this.context,parser:e});try{i.handler.call(this.context)}finally{this.context=this.context.parent}}else{var l=e._rawArgs;e._rawArgs=a;try{i.handler(e.output,n,u,e,s)}finally{e._rawArgs=l}}}catch(r){return throwError(e.output,"cannot execute "+(i&&i.isWidget?"widget":"macro")+" <<"+n+">>: "+r.message,e.source.slice(t,e.nextMatch))}finally{this.working.source="",this.working.name="",this.working.arguments="",this.working.index=0}}else e.outputText(e.output,e.matchStart,e.nextMatch)},parseTag:function(e){var t=this.lookahead.exec(e.source);return!(!t||t.index!==e.matchStart||!t[1])&&(e.nextMatch=this.lookahead.lastIndex,this.working.source=e.source.slice(t.index,this.lookahead.lastIndex),this.working.name=t[1],this.working.arguments=t[2],this.working.index=t.index,!0)},parseBody:function(e,t){for(var r=this.working.name,n="/"+r,a="end"+r,i=!!Array.isArray(t.tags)&&t.tags,o=[],s=-1,u=1,l=this.working.source,c=this.working.name,d=this.working.arguments,f=e.nextMatch;-1!==(e.matchStart=e.source.indexOf(this.match,e.nextMatch));)if(this.parseTag(e)){var p=this.working.source,h=this.working.name,g=this.working.arguments,m=this.working.index,v=e.nextMatch,y=""!==g.trim();switch(h){case r:++u;break;case a:case n:if(y)throw e.nextMatch=m+2+h.length,new Error('malformed closing tag: "'+p+'"');--u;break;default:if(y&&(h.startsWith("/")||h.startsWith("end"))){this.lookahead.lastIndex=e.nextMatch=m+2+h.length;continue}if(1===u&&i)for(var b=0,w=i.length;b<w;++b)h===i[b]&&(o.push({source:l,name:c,arguments:d,args:this.createArgs(d,this.skipArgs(t,c)),contents:e.source.slice(f,m)}),l=p,c=h,d=g,f=v)}if(0===u){o.push({source:l,name:c,arguments:d,args:this.createArgs(d,this.skipArgs(t,c)),contents:e.source.slice(f,m)}),s=v;break}}else this.lookahead.lastIndex=e.nextMatch=e.matchStart+this.match.length;return-1!==s?(e.nextMatch=s,o):null},createArgs:function(e,t){var r=t?[]:this.parseArgs(e);return Object.defineProperties(r,{raw:{value:e},full:{value:Scripting.parse(e)}}),r},skipArgs:function(e,t){if(void 0!==e.skipArgs){var r=e.skipArgs;return"boolean"==typeof r&&r||Array.isArray(r)&&r.includes(t)}return void 0!==e.skipArg0&&(e.skipArg0&&e.name===t)},parseArgs:function(){function e(e,t){e:for(;;)switch(e.next()){case"\\":var r=e.next();if(r!==EOF&&"\n"!==r)break;case EOF:case"\n":return EOF;case t:break e}return e.pos}function t(e){var t=e.source.slice(e.pos).search(c);if(t===EOF)return null;switch(0!==t&&(e.pos+=t,e.ignore()),e.next()){case"`":return r;case'"':return n;case"'":return a;case"[":return i;default:return o}}function r(r){return e(r,"`")===EOF?r.error(u.Error,"unterminated backquote expression"):(r.emit(u.Expression),t)}function n(r){return e(r,'"')===EOF?r.error(u.Error,"unterminated double quoted string"):(r.emit(u.String),t)}function a(r){return e(r,"'")===EOF?r.error(u.Error,"unterminated single quoted string"):(r.emit(u.String),t)}function i(e){var r=void 0;if(e.accept("<>IiMmGg")?(r="image",e.acceptRun("<>IiMmGg")):r="link",!e.accept("["))return e.error(u.Error,"malformed "+r+" markup");e.depth=2;e:for(;;)switch(e.next()){case"\\":var n=e.next();if(n!==EOF&&"\n"!==n)break;case EOF:case"\n":return e.error(u.Error,"unterminated "+r+" markup");case"[":++e.depth;break;case"]":if(--e.depth<0)return e.error(u.Error,"unexpected right square bracket ']'");if(1===e.depth){if("]"===e.next()){--e.depth;break e}e.backup()}}return e.emit(u.SquareBracket),t}function o(e){var r=e.source.slice(e.pos).search(l);return e.pos=r===EOF?e.source.length:e.pos+r,e.emit(u.Bareword),r===EOF?null:t}function s(e){var r=new Lexer(e,t),n=[];return r.run().forEach(function(e){var t=e.text;switch(e.type){case u.Error:throw new Error('unable to parse macro argument "'+t+'": '+e.message);case u.Bareword:if(d.test(t))t=State.getVar(t);else if(/^(?:settings|setup)[.[]/.test(t))try{t=Scripting.evalTwineScript(t)}catch(e){throw new Error('unable to parse macro argument "'+t+'": '+e.message)}else if("null"===t)t=null;else if("undefined"===t)t=undefined;else if("true"===t)t=!0;else if("false"===t)t=!1;else if("NaN"===t)t=NaN;else{var r=Number(t);Number.isNaN(r)||(t=r)}break;case u.Expression:if(""===(t=t.slice(1,-1).trim()))t=undefined;else try{t=Scripting.evalTwineScript("("+t+")")}catch(e){throw new Error('unable to parse macro argument expression "'+t+'": '+e.message)}break;case u.String:try{t=Scripting.evalJavaScript(t)}catch(e){throw new Error('unable to parse macro argument string "'+t+'": '+e.message)}break;case u.SquareBracket:var a=Wikifier.helpers.parseSquareBracketedMarkup({source:t,matchStart:0});if(a.hasOwnProperty("error"))throw new Error('unable to parse macro argument "'+t+'": '+a.error);if(a.pos<t.length)throw new Error('unable to parse macro argument "'+t+'": unexpected character(s) "'+t.slice(a.pos)+'" (pos: '+a.pos+")");a.isLink?(t={isLink:!0},t.count=a.hasOwnProperty("text")?2:1,t.link=Wikifier.helpers.evalPassageId(a.link),t.text=a.hasOwnProperty("text")?Wikifier.helpers.evalText(a.text):t.link,t.external=!a.forceInternal&&Wikifier.isExternalLink(t.link),t.setFn=a.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(a.setter)):null):a.isImage&&(t=function(e){var t={source:e,isImage:!0};if("data:"!==e.slice(0,5)&&Story.has(e)){var r=Story.get(e);r.tags.includes("Twine.image")&&(t.source=r.text,t.passage=r.title)}return t}(Wikifier.helpers.evalPassageId(a.source)),a.hasOwnProperty("align")&&(t.align=a.align),a.hasOwnProperty("text")&&(t.title=Wikifier.helpers.evalText(a.text)),a.hasOwnProperty("link")&&(t.link=Wikifier.helpers.evalPassageId(a.link),t.external=!a.forceInternal&&Wikifier.isExternalLink(t.link)),t.setFn=a.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(a.setter)):null)}n.push(t)}),n}var u=Lexer.enumFromNames(["Error","Bareword","Expression","String","SquareBracket"]),l=new RegExp(Patterns.space),c=new RegExp(Patterns.notSpace),d=new RegExp("^"+Patterns.variable);return s}()}),Wikifier.Parser.add({name:"link",profiles:["core"],match:"\\[\\[[^[]",handler:function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var r=Wikifier.helpers.evalPassageId(t.link),n=t.hasOwnProperty("text")?Wikifier.helpers.evalText(t.text):r,a=t.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,i=(Config.debug?new DebugView(e.output,"link-markup","[[link]]",e.source.slice(e.matchStart,e.nextMatch)):e).output;t.forceInternal||!Wikifier.isExternalLink(r)?Wikifier.createInternalLink(i,r,n,a):Wikifier.createExternalLink(i,r,n)}}),Wikifier.Parser.add({name:"urlLink",profiles:["core"],match:Patterns.url,handler:function(e){e.outputText(Wikifier.createExternalLink(e.output,e.matchText),e.matchStart,e.nextMatch)}}),Wikifier.Parser.add({name:"image",profiles:["core"],match:"\\[[<>]?[Ii][Mm][Gg]\\[",handler:function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var r=void 0;Config.debug&&(r=new DebugView(e.output,"image-markup",t.hasOwnProperty("link")?"[img[][link]]":"[img[]]",e.source.slice(e.matchStart,e.nextMatch)),r.modes({block:!0}));var n=t.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,a=(Config.debug?r:e).output,i=void 0;if(t.hasOwnProperty("link")){var o=Wikifier.helpers.evalPassageId(t.link);a=t.forceInternal||!Wikifier.isExternalLink(o)?Wikifier.createInternalLink(a,o,null,n):Wikifier.createExternalLink(a,o),a.classList.add("link-image")}if(a=jQuery(document.createElement("img")).appendTo(a).get(0),i=Wikifier.helpers.evalPassageId(t.source),"data:"!==i.slice(0,5)&&Story.has(i)){var s=Story.get(i);s.tags.includes("Twine.image")&&(a.setAttribute("data-passage",s.title),i=s.text.trim())}a.src=i,t.hasOwnProperty("text")&&(a.title=Wikifier.helpers.evalText(t.text)),t.hasOwnProperty("align")&&(a.align=t.align)}}),Wikifier.Parser.add({name:"monospacedByBlock",profiles:["block"],match:"^\\{\\{\\{\\n",lookahead:/^\{\{\{\n((?:^[^\n]*\n)+?)(^\}\}\}$\n?)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);if(t&&t.index===e.matchStart){var r=jQuery(document.createElement("pre"));jQuery(document.createElement("code")).text(t[1]).appendTo(r),r.appendTo(e.output),e.nextMatch=this.lookahead.lastIndex}}}),Wikifier.Parser.add({name:"formatByChar",profiles:["core"],match:"''|//|__|\\^\\^|~~|==|\\{\\{\\{",handler:function(e){switch(e.matchText){case"''":e.subWikify(jQuery(document.createElement("strong")).appendTo(e.output).get(0),"''");break;case"//":e.subWikify(jQuery(document.createElement("em")).appendTo(e.output).get(0),"//");break;case"__":e.subWikify(jQuery(document.createElement("u")).appendTo(e.output).get(0),"__");break;case"^^":e.subWikify(jQuery(document.createElement("sup")).appendTo(e.output).get(0),"\\^\\^");break;case"~~":e.subWikify(jQuery(document.createElement("sub")).appendTo(e.output).get(0),"~~");break;case"==":e.subWikify(jQuery(document.createElement("s")).appendTo(e.output).get(0),"==");break;case"{{{":var t=/\{\{\{((?:.|\n)*?)\}\}\}/gm;t.lastIndex=e.matchStart;var r=t.exec(e.source);r&&r.index===e.matchStart&&(jQuery(document.createElement("code")).text(r[1]).appendTo(e.output),e.nextMatch=t.lastIndex)}}}),Wikifier.Parser.add({name:"customStyle",profiles:["core"],match:"@@",terminator:"@@",blockRe:/\s*\n/gm,handler:function(e){var t=Wikifier.helpers.inlineCss(e);this.blockRe.lastIndex=e.nextMatch;var r=this.blockRe.exec(e.source),n=r&&r.index===e.nextMatch,a=jQuery(document.createElement(n?"div":"span")).appendTo(e.output);0===t.classes.length&&""===t.id&&0===Object.keys(t.styles).length?a.addClass("marked"):(t.classes.forEach(function(e){return a.addClass(e)}),""!==t.id&&a.attr("id",t.id),a.css(t.styles)),n?(e.nextMatch+=r[0].length,e.subWikify(a[0],"\\n?"+this.terminator)):e.subWikify(a[0],this.terminator)}}),Wikifier.Parser.add({name:"verbatimText",profiles:["core"],match:'"{3}|<[Nn][Oo][Ww][Ii][Kk][Ii]>',lookahead:/(?:"{3}((?:.|\n)*?)"{3})|(?:<[Nn][Oo][Ww][Ii][Kk][Ii]>((?:.|\n)*?)<\/[Nn][Oo][Ww][Ii][Kk][Ii]>)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createElement("span")).addClass("verbatim").text(t[1]||t[2]).appendTo(e.output))}}),Wikifier.Parser.add({name:"horizontalRule",profiles:["core"],match:"^----+$\\n?|<[Hh][Rr]\\s*/?>\\n?",handler:function(e){jQuery(document.createElement("hr")).appendTo(e.output)}}),Wikifier.Parser.add({name:"emdash",profiles:["core"],match:"--",handler:function(e){jQuery(document.createTextNode("—")).appendTo(e.output)}}),Wikifier.Parser.add({name:"doubleDollarSign",profiles:["core"],match:"\\${2}",handler:function(e){jQuery(document.createTextNode("$")).appendTo(e.output)}}),Wikifier.Parser.add({name:"nakedVariable",profiles:["core"],match:Patterns.variable+"(?:(?:\\."+Patterns.identifier+")|(?:\\[\\d+\\])|(?:\\[\"(?:\\\\.|[^\"\\\\])+\"\\])|(?:\\['(?:\\\\.|[^'\\\\])+'\\])|(?:\\["+Patterns.variable+"\\]))*",handler:function(e){var t=State.getVar(e.matchText);null==t?jQuery(document.createTextNode(e.matchText)).appendTo(e.output):new Wikifier((Config.debug?new DebugView(e.output,"variable",e.matchText,e.matchText):e).output,stringFrom(t))}}),Wikifier.Parser.add({name:"template",profiles:["core"],match:"\\?"+Patterns.templateName,handler:function(e){var t=e.matchText.slice(1),r=Template.get(t),n=null;switch(r instanceof Array&&(r=r.random()),void 0===r?"undefined":_typeof(r)){case"function":try{n=stringFrom(r.call({name:t}))}catch(r){return throwError(e.output,"cannot execute function template ?"+t+": "+r.message,e.source.slice(e.matchStart,e.nextMatch))}break;case"string":n=r}null===n?jQuery(document.createTextNode(e.matchText)).appendTo(e.output):new Wikifier((Config.debug?new DebugView(e.output,"template",e.matchText,e.matchText):e).output,n)}}),Wikifier.Parser.add({name:"heading",profiles:["block"],match:"^!{1,6}",terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.subWikify(jQuery(document.createElement("h"+e.matchLength)).appendTo(e.output).get(0),this.terminator)}}),Wikifier.Parser.add({name:"table",profiles:["block"],match:"^\\|(?:[^\\n]*)\\|(?:[fhck]?)$",lookahead:/^\|([^\n]*)\|([fhck]?)$/gm,rowTerminator:"\\|(?:[cfhk]?)$\\n?",cellPattern:"(?:\\|([^\\n\\|]*)\\|)|(\\|[cfhk]?$\\n?)",cellTerminator:"(?:\\u0020*)\\|",rowTypes:{c:"caption",f:"tfoot",h:"thead","":"tbody"},handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=jQuery(document.createElement("table")).appendTo(e.output).get(0),r=[],n=null,a=null,i=0,o=void 0;e.nextMatch=e.matchStart;do{this.lookahead.lastIndex=e.nextMatch;var s=this.lookahead.exec(e.source);if(o=s&&s.index===e.nextMatch){var u=s[2];"k"===u?(t.className=s[1],e.nextMatch+=s[0].length+1):(u!==n&&(n=u,a=jQuery(document.createElement(this.rowTypes[u])).appendTo(t)),"c"===n?(a.css("caption-side",0===i?"top":"bottom"),e.nextMatch+=1,e.subWikify(a[0],this.rowTerminator)):this.rowHandler(e,jQuery(document.createElement("tr")).appendTo(a).get(0),r),++i)}}while(o)},rowHandler:function(e,t,r){var n=this,a=new RegExp(this.cellPattern,"gm"),i=0,o=1,s=void 0;do{a.lastIndex=e.nextMatch;var u=a.exec(e.source);if(s=u&&u.index===e.nextMatch){if("~"===u[1]){var l=r[i];l&&(++l.rowCount,l.$element.attr("rowspan",l.rowCount).css("vertical-align","middle")),e.nextMatch=u.index+u[0].length-1}else if(">"===u[1])++o,e.nextMatch=u.index+u[0].length-1;else{if(u[2]){e.nextMatch=u.index+u[0].length;break}!function(){++e.nextMatch;for(var a=Wikifier.helpers.inlineCss(e),s=!1,u=!1,l=void 0;" "===e.source.substr(e.nextMatch,1);)s=!0,++e.nextMatch;"!"===e.source.substr(e.nextMatch,1)?(l=jQuery(document.createElement("th")).appendTo(t),++e.nextMatch):l=jQuery(document.createElement("td")).appendTo(t),r[i]={rowCount:1,$element:l},o>1&&(l.attr("colspan",o),o=1),e.subWikify(l[0],n.cellTerminator)," "===e.matchText.substr(e.matchText.length-2,1)&&(u=!0),a.classes.forEach(function(e){return l.addClass(e)}),""!==a.id&&l.attr("id",a.id),s&&u?a.styles["text-align"]="center":s?a.styles["text-align"]="right":u&&(a.styles["text-align"]="left"),l.css(a.styles),e.nextMatch=e.nextMatch-1}()}++i}}while(s)}}),Wikifier.Parser.add({name:"list",profiles:["block"],match:"^(?:(?:\\*+)|(?:#+))",lookahead:/^(?:(\*+)|(#+))/gm,terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.nextMatch=e.matchStart;var t=[e.output],r=null,n=0,a=void 0,i=void 0;do{this.lookahead.lastIndex=e.nextMatch;var o=this.lookahead.exec(e.source);if(a=o&&o.index===e.nextMatch){var s=o[2]?"ol":"ul",u=o[0].length;if(e.nextMatch+=o[0].length,u>n)for(i=n;i<u;++i)t.push(jQuery(document.createElement(s)).appendTo(t[t.length-1]).get(0));else if(u<n)for(i=n;i>u;--i)t.pop();else u===n&&s!==r&&(t.pop(),t.push(jQuery(document.createElement(s)).appendTo(t[t.length-1]).get(0)));n=u,r=s,e.subWikify(jQuery(document.createElement("li")).appendTo(t[t.length-1]).get(0),this.terminator)}}while(a)}}),Wikifier.Parser.add({name:"commentByBlock",profiles:["core"],match:"(?:/(?:%|\\*))|(?:\x3c!--)",lookahead:/(?:\/(%|\*)(?:(?:.|\n)*?)\1\/)|(?:<!--(?:(?:.|\n)*?)-->)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex)}}),Wikifier.Parser.add({name:"lineContinuation",profiles:["core"],match:"\\\\"+Patterns.spaceNoTerminator+"*\\n|\\n"+Patterns.spaceNoTerminator+"*\\\\|\\n?\\\\"+Patterns.spaceNoTerminator+"*$|^"+Patterns.spaceNoTerminator+"*\\\\\\n?",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}}),Wikifier.Parser.add({name:"lineBreak",profiles:["core"],match:"\\n|<[Bb][Rr]\\s*/?>",handler:function(e){e.options.nobr||jQuery(document.createElement("br")).appendTo(e.output)}}),Wikifier.Parser.add({name:"htmlCharacterReference",profiles:["core"],match:"(?:(?:&#?[0-9A-Za-z]{2,8};|.)(?:&#?(?:x0*(?:3[0-6][0-9A-Fa-f]|1D[C-Fc-f][0-9A-Fa-f]|20[D-Fd-f][0-9A-Fa-f]|FE2[0-9A-Fa-f])|0*(?:76[89]|7[7-9][0-9]|8[0-7][0-9]|761[6-9]|76[2-7][0-9]|84[0-3][0-9]|844[0-7]|6505[6-9]|6506[0-9]|6507[0-1]));)+|&#?[0-9A-Za-z]{2,8};)",handler:function(e){jQuery(document.createDocumentFragment()).append(e.matchText).appendTo(e.output)}}),Wikifier.Parser.add({name:"xmlProlog",profiles:["core"],match:"<\\?[Xx][Mm][Ll][^>]*\\?>",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}}),Wikifier.Parser.add({name:"verbatimHtml",profiles:["core"],match:"<[Hh][Tt][Mm][Ll]>",lookahead:/<[Hh][Tt][Mm][Ll]>((?:.|\n)*?)<\/[Hh][Tt][Mm][Ll]>/gm,handler:e}),Wikifier.Parser.add({name:"verbatimScriptTag",profiles:["core"],match:"<[Ss][Cc][Rr][Ii][Pp][Tt][^>]*>",lookahead:/(<[Ss][Cc][Rr][Ii][Pp][Tt]*>(?:.|\n)*?<\/[Ss][Cc][Rr][Ii][Pp][Tt]>)/gm,handler:e}),Wikifier.Parser.add({name:"styleTag",profiles:["core"],match:"<[Ss][Tt][Yy][Ll][Ee][^>]*>",lookahead:/(<[Ss][Tt][Yy][Ll][Ee]*>)((?:.|\n)*?)(<\/[Ss][Tt][Yy][Ll][Ee]>)/gm,imageMarkup:new RegExp(Patterns.cssImage,"g"),hasImageMarkup:new RegExp(Patterns.cssImage),handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);if(t&&t.index===e.matchStart){e.nextMatch=this.lookahead.lastIndex;var r=t[2];this.hasImageMarkup.test(r)&&(this.imageMarkup.lastIndex=0,r=r.replace(this.imageMarkup,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var n=Story.get(r);n.tags.includes("Twine.image")&&(r=n.text)}return'url("'+r.replace(/"/g,"%22")+'")'})),jQuery(document.createDocumentFragment()).append(t[1]+r+t[3]).appendTo(e.output)}}}),Wikifier.Parser.add({name:"svgTag",profiles:["core"],match:"<[Ss][Vv][Gg][^>]*>",lookahead:/(<[Ss][Vv][Gg][^>]*>(?:.|\n)*?<\/[Ss][Vv][Gg]>)/gm,namespace:"http://www.w3.org/2000/svg",handler:function(e){var t=this;this.lookahead.lastIndex=e.matchStart;var r=this.lookahead.exec(e.source);if(r&&r.index===e.matchStart){e.nextMatch=this.lookahead.lastIndex;var n=jQuery(document.createDocumentFragment()).append(r[1]);n.find("a[data-passage],image[data-passage]").each(function(r,n){var a=n.tagName.toLowerCase();try{t.processAttributeDirectives(n)}catch(t){return throwError(e.output,"svg|<"+a+">: "+t.message,e.matchText+"…")}n.hasAttribute("data-passage")&&t.processDataAttributes(n,a)}),n.appendTo(e.output)}},processAttributeDirectives:function(e){[].concat(_toConsumableArray(e.attributes)).forEach(function(t){var r=t.name,n=t.value,a="@"===r[0];if(a||r.startsWith("sc-eval:")){var i=r.slice(a?1:8);if("data-setter"===i)throw new Error('evaluation directive is not allowed on the data-setter attribute: "'+r+'"');var o=void 0;try{o=Scripting.evalTwineScript(n)}catch(e){throw new Error('bad evaluation from attribute directive "'+r+'": '+e.message)}try{e.setAttribute(i,o),e.removeAttribute(r)}catch(e){throw new Error('cannot transform attribute directive "'+r+'" into attribute "'+i+'"')}}})},processDataAttributes:function(e,t){var r=e.getAttribute("data-passage");if(null!=r){var n=Wikifier.helpers.evalPassageId(r);if(n!==r&&(r=n,e.setAttribute("data-passage",n)),""!==r)if("image"===t)"data:"!==r.slice(0,5)&&Story.has(r)&&(r=Story.get(r),r.tags.includes("Twine.image")&&e.setAttribute("href",r.text.trim()));else{var a=e.getAttribute("data-setter"),i=void 0;null!=a&&""!==(a=String(a).trim())&&(i=Wikifier.helpers.createShadowSetterCallback(Scripting.parse(a))),Story.has(r)?(e.classList.add("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&e.classList.add("link-visited")):e.classList.add("link-broken"),jQuery(e).ariaClick({one:!0},function(){"function"==typeof i&&i.call(this),Engine.play(r)})}}}}),Wikifier.Parser.add({name:"htmlTag",profiles:["core"],match:"<"+Patterns.htmlTagName+"(?:\\s+[^\\u0000-\\u001F\\u007F-\\u009F\\s\"'>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*?\"|'[^']*?'|[^\\s\"'=<>`]+))?)*\\s*\\/?>",tagRe:new RegExp("^<("+Patterns.htmlTagName+")"),mediaTags:["audio","img","source","track","video"],nobrTags:["audio","colgroup","datalist","dl","figure","meter","ol","optgroup","picture","progress","ruby","select","table","tbody","tfoot","thead","tr","ul","video"],voidTags:["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],handler:function(e){var t=this.tagRe.exec(e.matchText),r=t&&t[1],n=r&&r.toLowerCase();if(n){var a=this.voidTags.includes(n)||e.matchText.endsWith("/>"),i=this.nobrTags.includes(n),o=void 0,s=void 0;if(!a){o="<\\/"+n+"\\s*>";var u=new RegExp(o,"gim");u.lastIndex=e.matchStart,s=u.exec(e.source)}if(!a&&!s)return throwError(e.output,"cannot find a closing tag for HTML <"+r+">",e.matchText+"…");var l=e.output,c=document.createElement(e.output.tagName),d=void 0;for(c.innerHTML=e.matchText;c.firstChild;)c=c.firstChild;try{this.processAttributeDirectives(c)}catch(t){return throwError(e.output,"<"+n+">: "+t.message,e.matchText+"…")}if(c.hasAttribute("data-passage")&&(this.processDataAttributes(c,n),Config.debug&&(d=new DebugView(e.output,"html-"+n,n,e.matchText),d.modes({block:"img"===n,nonvoid:s}),l=d.output)),s){try{Wikifier.Option.push({nobr:i}),e.subWikify(c,o,{ignoreTerminatorCase:!0})}finally{Wikifier.Option.pop()}d&&jQuery(c).find(".debug.block").length>0&&d.modes({block:!0})}l.appendChild("track"===n?c.cloneNode(!0):c)}},processAttributeDirectives:function(e){[].concat(_toConsumableArray(e.attributes)).forEach(function(t){var r=t.name,n=t.value,a="@"===r[0];if(a||r.startsWith("sc-eval:")){var i=r.slice(a?1:8);if("data-setter"===i)throw new Error('evaluation directive is not allowed on the data-setter attribute: "'+r+'"');var o=void 0;try{o=Scripting.evalTwineScript(n)}catch(e){throw new Error('bad evaluation from attribute directive "'+r+'": '+e.message)}try{e.setAttribute(i,o),e.removeAttribute(r)}catch(e){throw new Error('cannot transform attribute directive "'+r+'" into attribute "'+i+'"')}}})},processDataAttributes:function(e,t){var r=e.getAttribute("data-passage");if(null!=r){var n=Wikifier.helpers.evalPassageId(r);if(n!==r&&(r=n,e.setAttribute("data-passage",n)),""!==r)if(this.mediaTags.includes(t)){if("data:"!==r.slice(0,5)&&Story.has(r)){r=Story.get(r);var a=void 0,i=void 0;switch(t){case"audio":case"video":i="Twine."+t;break;case"img":i="Twine.image";break;case"track":i="Twine.vtt";break;case"source":var o=$(e).closest("audio,picture,video");o.length&&(a=o.get(0).tagName.toLowerCase(),i="Twine."+("picture"===a?"image":a))}r.tags.includes(i)&&(e["picture"===a?"srcset":"src"]=r.text.trim())}}else{var s=e.getAttribute("data-setter"),u=void 0;null!=s&&""!==(s=String(s).trim())&&(u=Wikifier.helpers.createShadowSetterCallback(Scripting.parse(s))),Story.has(r)?(e.classList.add("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&e.classList.add("link-visited")):e.classList.add("link-broken"),jQuery(e).ariaClick({one:!0},function(){"function"==typeof u&&u.call(this),Engine.play(r)})}}}})}();var Template=function(){function e(e,t){if(!(s(t)||t instanceof Array&&t.length>0&&t.every(s)))throw new TypeError("invalid template type ("+e+"); templates must be: functions, strings, or an array of either");(e instanceof Array?e:[e]).forEach(function(e){if(!o.test(e))throw new Error('invalid template name "'+e+'"');if(i.has(e))throw new Error("cannot clobber existing template ?"+e);i.set(e,t)})}function t(e){(e instanceof Array?e:[e]).forEach(function(e){return i.delete(e)})}function r(e){return i.has(e)?i.get(e):null}function n(e){return i.has(e)}function a(){return i.size}var i=new Map,o=new RegExp("^(?:"+Patterns.templateName+")$"),s=function(e){var t=void 0===e?"undefined":_typeof(e);return"function"===t||"string"===t};return Object.freeze(Object.defineProperties({},{add:{value:e},delete:{value:t},get:{value:r},has:{value:n},size:{get:a}}))}(),Macro=function(){function e(t,r){if(Array.isArray(t))return void t.forEach(function(t){return e(t,r)});if(!f.test(t))throw new Error('invalid macro name "'+t+'"');if(n(t))throw new Error("cannot clobber existing macro <<"+t+">>");if(u(t))throw new Error("cannot clobber child tag <<"+t+">> of parent macro"+(1===d[t].length?"":"s")+" <<"+d[t].join(">>, <<")+">>");try{if("object"===(void 0===r?"undefined":_typeof(r)))c[t]=Object.assign(Object.create(null),r,{_MACRO_API:!0});else{if(!n(r))throw new Error("cannot create alias of nonexistent macro <<"+r+">>");c[t]=Object.create(c[r],{_ALIAS_OF:{enumerable:!0,value:r}})}Object.defineProperty(c,t,{writable:!1})}catch(e){throw"TypeError"===e.name?new Error("cannot clobber protected macro <<"+t+">>"):new Error("unknown error when attempting to add macro <<"+t+">>: ["+e.name+"] "+e.message)}if(void 0!==c[t].tags)if(null==c[t].tags)o(t);else{if(!Array.isArray(c[t].tags))throw new Error('bad value for "tags" property of macro <<'+t+">>");o(t,c[t].tags)}}function t(e){if(Array.isArray(e))return void e.forEach(function(e){return t(e)});if(n(e)){void 0!==c[e].tags&&s(e);try{Object.defineProperty(c,e,{writable:!0}),delete c[e]}catch(t){throw new Error("unknown error removing macro <<"+e+">>: "+t.message)}}else if(u(e))throw new Error("cannot remove child tag <<"+e+">> of parent macro <<"+d[e]+">>")}function r(){return 0===Object.keys(c).length}function n(e){return c.hasOwnProperty(e)}function a(e){var t=null;return n(e)&&"function"==typeof c[e].handler?t=c[e]:macros.hasOwnProperty(e)&&"function"==typeof macros[e].handler&&(t=macros[e]),t}function i(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"init";Object.keys(c).forEach(function(t){"function"==typeof c[t][e]&&c[t][e](t)}),Object.keys(macros).forEach(function(t){"function"==typeof macros[t][e]&¯os[t][e](t)})}function o(e,t){if(!e)throw new Error("no parent specified");for(var r=["/"+e,"end"+e],a=[].concat(r,Array.isArray(t)?t:[]),i=0;i<a.length;++i){var o=a[i];if(n(o))throw new Error("cannot register tag for an existing macro");u(o)?d[o].includes(e)||(d[o].push(e),d[o].sort()):d[o]=[e]}}function s(e){if(!e)throw new Error("no parent specified");Object.keys(d).forEach(function(t){var r=d[t].indexOf(e);-1!==r&&(1===d[t].length?delete d[t]:d[t].splice(r,1))})}function u(e){return d.hasOwnProperty(e)}function l(e){return u(e)?d[e]:null}var c={},d={},f=new RegExp("^(?:"+Patterns.macroName+")$");return Object.freeze(Object.defineProperties({},{add:{value:e},delete:{value:t},isEmpty:{value:r},has:{value:n},get:{value:a},init:{value:i},tags:{value:Object.freeze(Object.defineProperties({},{register:{value:o},unregister:{value:s},has:{value:u},get:{value:l}}))},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),MacroContext=function(){return function(){function e(t){_classCallCheck(this,e);var r=Object.assign({parent:null,macro:null,name:"",displayName:"",args:null,payload:null,parser:null,source:""},t);if(null===r.macro||""===r.name||null===r.parser)throw new TypeError("context object missing required properties");Object.defineProperties(this,{self:{value:r.macro},name:{value:void 0===r.macro._ALIAS_OF?r.name:r.macro._ALIAS_OF},displayName:{value:r.name},args:{value:r.args},payload:{value:r.payload},source:{value:r.source},parent:{value:r.parent},parser:{value:r.parser},_output:{value:r.parser.output},_shadows:{writable:!0,value:null},_debugView:{writable:!0,value:null},_debugViewEnabled:{writable:!0,value:Config.debug}})}return _createClass(e,[{key:"contextHas",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return!0;return!1}},{key:"contextSelect",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return t;return null}},{key:"contextSelectAll",value:function(e){for(var t=[],r=this;null!==(r=r.parent);)e(r)&&t.push(r);return t}},{key:"addShadow",value:function(){var e=this;this._shadows||(this._shadows=new Set);for(var t=new RegExp("^"+Patterns.variable+"$"),r=arguments.length,n=Array(r),a=0;a<r;a++)n[a]=arguments[a];n.flat(1/0).forEach(function(r){if("string"!=typeof r)throw new TypeError("variable name must be a string; type: "+(void 0===r?"undefined":_typeof(r)));if(!t.test(r))throw new Error('invalid variable name "'+r+'"');e._shadows.add(r)})}},{key:"createShadowWrapper",value:function(e,t,r){var n=this,a=void 0;return"function"==typeof e&&(a={},this.shadowView.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;a[e]=r[t]})),function(){for(var i=arguments.length,o=Array(i),s=0;s<i;s++)o[s]=arguments[s];if("function"==typeof r&&r.apply(this,o),"function"==typeof e){var u=Object.keys(a),l=u.length>0?{}:null,c=Wikifier.Parser.get("macro"),d=void 0;try{u.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;r.hasOwnProperty(t)&&(l[t]=r[t]),r[t]=a[e]}),d=c.context,c.context=n,e.apply(this,o)}finally{d!==undefined&&(c.context=d),u.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;a[e]=r[t],l.hasOwnProperty(t)?r[t]=l[t]:delete r[t]})}}"function"==typeof t&&t.apply(this,o)}}},{key:"createDebugView",value:function(e,t){return this._debugView=new DebugView(this._output,"macro",e||this.displayName,t||this.source),null!==this.payload&&this.payload.length>0&&this._debugView.modes({nonvoid:!0}),this._debugViewEnabled=!0,this._debugView}},{key:"removeDebugView",value:function(){null!==this._debugView&&(this._debugView.remove(),this._debugView=null),this._debugViewEnabled=!1}},{key:"error",value:function(e,t){return throwError(this._output,"<<"+this.displayName+">>: "+e,t||this.source)}},{key:"output",get:function(){return this._debugViewEnabled?this.debugView.output:this._output}},{key:"shadows",get:function(){return[].concat(_toConsumableArray(this._shadows))}},{key:"shadowView",get:function(){var e=new Set;return this.contextSelectAll(function(e){return e._shadows
}).forEach(function(t){return t._shadows.forEach(function(t){return e.add(t)})}),[].concat(_toConsumableArray(e))}},{key:"debugView",get:function(){return this._debugViewEnabled?null!==this._debugView?this._debugView:this.createDebugView():null}}]),e}()}();!function(){if(Macro.add("capture",{skipArgs:!0,tags:null,tsVarRe:new RegExp("("+Patterns.variable+")","g"),handler:function(){if(0===this.args.raw.length)return this.error("no story/temporary variable list specified");var e={};try{for(var t=this.self.tsVarRe,r=void 0;null!==(r=t.exec(this.args.raw));){var n=r[1],a=n.slice(1),i="$"===n[0]?State.variables:State.temporary;i.hasOwnProperty(a)&&(e[a]=i[a]),this.addShadow(n)}new Wikifier(this.output,this.payload[0].contents)}finally{this.shadows.forEach(function(t){var r=t.slice(1),n="$"===t[0]?State.variables:State.temporary;e.hasOwnProperty(r)?n[r]=e[r]:delete n[r]})}}}),Macro.add("set",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("unset",{skipArgs:!0,jsVarRe:new RegExp("State\\.(variables|temporary)\\.("+Patterns.identifier+")","g"),handler:function(){if(0===this.args.full.length)return this.error("no story/temporary variable list specified");for(var e=this.self.jsVarRe,t=void 0;null!==(t=e.exec(this.args.full));){var r=State[t[1]],n=t[2];r.hasOwnProperty(n)&&delete r[n]}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("remember",{skipArgs:!0,jsVarRe:new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}for(var e=storage.get("remember")||{},t=this.self.jsVarRe,r=void 0;null!==(r=t.exec(this.args.full));){var n=r[1];e[n]=State.variables[n]}if(!storage.set("remember",e))return this.error("unknown error, cannot remember: "+this.args.raw);Config.debug&&this.debugView.modes({hidden:!0})},init:function(){var e=storage.get("remember");e&&Object.keys(e).forEach(function(t){return State.variables[t]=e[t]})}}),Macro.add("forget",{skipArgs:!0,jsVarRe:new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),handler:function(){if(0===this.args.full.length)return this.error("no story variable list specified");for(var e=storage.get("remember"),t=this.self.jsVarRe,r=void 0,n=!1;null!==(r=t.exec(this.args.full));){var a=r[1];State.variables.hasOwnProperty(a)&&delete State.variables[a],e&&e.hasOwnProperty(a)&&(n=!0,delete e[a])}if(n)if(0===Object.keys(e).length){if(!storage.delete("remember"))return this.error("unknown error, cannot update remember store")}else if(!storage.set("remember",e))return this.error("unknown error, cannot update remember store");Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("run","set"),Macro.add("script",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();try{Scripting.evalJavaScript(this.payload[0].contents,e)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}Config.debug&&this.createDebugView(),e.hasChildNodes()&&this.output.appendChild(e)}}),Macro.add("include",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');Config.debug&&this.debugView.modes({block:!0}),e=Story.get(e);var t=void 0;t=this.args[1]?jQuery(document.createElement(this.args[1])).addClass(e.domId+" macro-"+this.name).attr("data-passage",e.title).appendTo(this.output):jQuery(this.output),t.wiki(e.processText())}}),Macro.add("nobr",{skipArgs:!0,tags:null,handler:function(){new Wikifier(this.output,this.payload[0].contents.replace(/^\n+|\n+$/g,"").replace(/\n+/g," "))}}),Macro.add(["print","=","-"],{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{var e=stringFrom(Scripting.evalJavaScript(this.args.full));null!==e&&new Wikifier(this.output,"-"===this.name?Util.escape(e):e)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}}}),Macro.add("silently",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();if(new Wikifier(e,this.payload[0].contents.trim()),Config.debug)this.debugView.modes({block:!0,hidden:!0}),this.output.appendChild(e);else{var t=[].concat(_toConsumableArray(e.querySelectorAll(".error"))).map(function(e){return e.textContent});if(t.length>0)return this.error("error"+(1===t.length?"":"s")+" within contents ("+t.join("; ")+")")}}}),Macro.add("type",{isAsync:!0,tags:null,typeId:0,handler:function(){if(0===this.args.length)return this.error("no speed specified");var e=Util.fromCssTime(this.args[0]);if(e<0)return this.error("speed time value must be non-negative (received: "+this.args[0]+")");for(var t=void 0,r="",n="",a="div",i=Config.macros.typeSkipKey,o=400,s=this.args.slice(1);s.length>0;){var u=s.shift();switch(u){case"class":if(0===s.length)return this.error("class option missing required class name(s)");if(""===(r=s.shift()))throw new Error('class option class name(s) must be non-empty (received: "")');break;case"element":if(0===s.length)return this.error("element option missing required element tag name");if(""===(a=s.shift()))throw new Error('element option tag name must be non-empty (received: "")');break;case"id":if(0===s.length)return this.error("id option missing required ID");if(""===(n=s.shift()))throw new Error('id option ID must be non-empty (received: "")');break;case"keep":t="keep";break;case"none":t="none";break;case"skipkey":if(0===s.length)return this.error("skipkey option missing required key value");if(""===(i=s.shift()))throw new Error('skipkey option key value must be non-empty (received: "")');break;case"start":if(0===s.length)return this.error("start option missing required time value");var l=s.shift();if((o=Util.fromCssTime(l))<0)throw new Error("start option time value must be non-negative (received: "+l+")");break;default:return this.error("unknown option: "+u)}}var c=this.payload[0].contents;if(""!==c.trim()){Config.debug&&this.debugView.modes({block:!0});var d="macro-"+this.name,f="."+d,p=jQuery(document.createElement(a)).addClass(d+" "+d+"-target").appendTo(this.output);TempState.macroTypeQueue||(TempState.macroTypeQueue=[],$(document).off(f).one(":passageinit"+f,function(){return $(document).off(f)}));var h=0===TempState.macroTypeQueue.length,g=++this.self.typeId;TempState.macroTypeQueue.push({id:g,handler:function(){var s=jQuery(document.createElement(a)).addClass(d);n&&s.attr("id",n),r&&s.addClass(r),new Wikifier(s,c);var u=State.passage,l=State.turns;if(!Config.macros.typeVisitedPassages&&State.passages.slice(0,-1).some(function(e){return e===u})||s.find(".error").length>0)return p.replaceWith(s),TempState.macroTypeQueue.shift(),void(TempState.macroTypeQueue.length>0&&TempState.macroTypeQueue.first().handler());var h=new NodeTyper({targetNode:s.get(0),classNames:"none"===t?null:d+"-cursor"});p.replaceWith(s);var m="keydown"+f,v=":typingstop"+f;$(document).off(m).on(m,function(e){Util.scrubEventKey(e.key)!==i||e.target!==document.body&&e.target!==document.documentElement||(e.preventDefault(),$(document).off(m),h.finish())}).one(v,function(){TempState.macroTypeQueue&&(0===TempState.macroTypeQueue.length?jQuery.event.trigger(":typingcomplete"):TempState.macroTypeQueue.first().handler())});var y=function(){var r=function(e){State.passage===u&&State.turns===l&&h.type()||(e&&clearInterval(e),TempState.macroTypeQueue&&TempState.macroTypeQueue.length>0&&TempState.macroTypeQueue.first().id===g&&TempState.macroTypeQueue.shift(),s.trigger(":typingstop"),s.addClass(d+"-done"),"keep"===t&&s.addClass(d+"-cursor"))};s.trigger(":typingstart"),r();var n=setInterval(function(){return r(n)},e)};o?setTimeout(y,o):y()}}),h&&(Engine.isPlaying()?$(document).one(":passageend"+f,function(){return TempState.macroTypeQueue.first().handler()}):TempState.macroTypeQueue.first().handler())}}}),Macro.add("display","include"),Macro.add("if",{skipArgs:!0,tags:["elseif","else"],elseifWsRe:/^\s*if\b/i,ifAssignRe:/[^!=&^|<>*/%+-]=[^=>]/,handler:function(){var e=void 0;try{var t=this.payload.length,r=this.self.elseifWsRe,n=this.self.ifAssignRe;for(e=0;e<t;++e)switch(this.payload[e].name){case"else":if(this.payload[e].args.raw.length>0)return r.test(this.payload[e].args.raw)?this.error('whitespace is not allowed between the "else" and "if" in <<elseif>> clause'+(e>0?" (#"+e+")":"")):this.error("<<else>> does not accept a conditional expression (perhaps you meant to use <<elseif>>), invalid: "+this.payload[e].args.raw);if(e+1!==t)return this.error("<<else>> must be the final clause");break;default:if(0===this.payload[e].args.full.length)return this.error("no conditional expression specified for <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":""));if(Config.macros.ifAssignmentError&&n.test(this.payload[e].args.full))return this.error("assignment operator found within <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":"")+" (perhaps you meant to use an equality operator: ==, ===, eq, is), invalid: "+this.payload[e].args.raw)}var a=Scripting.evalJavaScript,i=!1;for(e=0;e<t;++e){if(Config.debug&&this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1}),"else"===this.payload[e].name||a(this.payload[e].args.full)){i=!0,new Wikifier(this.output,this.payload[e].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++e;e<t;++e)this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1,hidden:!0,invalid:!0});this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!i,invalid:!i})}}catch(t){return this.error("bad conditional expression in <<"+(0===e?"if":"elseif")+">> clause"+(e>0?" (#"+e+")":"")+": "+("object"===(void 0===t?"undefined":_typeof(t))?t.message:t))}}}),Macro.add("switch",{skipArgs:["switch"],tags:["case","default"],handler:function(){if(0===this.args.full.length)return this.error("no expression specified");var e=this.payload.length;if(1===e)return this.error("no cases specified");var t=void 0;for(t=1;t<e;++t)switch(this.payload[t].name){case"default":if(this.payload[t].args.length>0)return this.error("<<default>> does not accept values, invalid: "+this.payload[t].args.raw);if(t+1!==e)return this.error("<<default>> must be the final case");break;default:if(0===this.payload[t].args.length)return this.error("no value(s) specified for <<"+this.payload[t].name+">> (#"+t+")")}var r=void 0;try{r=Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}var n=this.debugView,a=!1;for(Config.debug&&n.modes({nonvoid:!1,hidden:!0}),t=1;t<e;++t){if(Config.debug&&this.createDebugView(this.payload[t].name,this.payload[t].source).modes({nonvoid:!1}),"default"===this.payload[t].name||this.payload[t].args.some(function(e){return e===r})){a=!0,new Wikifier(this.output,this.payload[t].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++t;t<e;++t)this.createDebugView(this.payload[t].name,this.payload[t].source).modes({nonvoid:!1,hidden:!0,invalid:!0});n.modes({nonvoid:!1,hidden:!0,invalid:!a}),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0,invalid:!a})}}}),Macro.add("for",{skipArgs:!0,tags:null,hasRangeRe:new RegExp("^\\S"+Patterns.anyChar+"*?\\s+range\\s+\\S"+Patterns.anyChar+"*?$"),rangeRe:new RegExp("^(?:State\\.(variables|temporary)\\.("+Patterns.identifier+")\\s*,\\s*)?State\\.(variables|temporary)\\.("+Patterns.identifier+")\\s+range\\s+(\\S"+Patterns.anyChar+"*?)$"),threePartRe:/^([^;]*?)\s*;\s*([^;]*?)\s*;\s*([^;]*?)$/,forInRe:/^\S+\s+in\s+\S+/i,forOfRe:/^\S+\s+of\s+\S+/i,handler:function(){var e=this.args.full.trim(),t=this.payload[0].contents.replace(/\n$/,"");if(0===e.length)this.self.handleFor.call(this,t,null,!0,null);else if(this.self.hasRangeRe.test(e)){var r=e.match(this.self.rangeRe);if(null===r)return this.error("invalid range form syntax, format: [index ,] value range collection");this.self.handleForRange.call(this,t,{type:r[1],name:r[2]},{type:r[3],name:r[4]},r[5])}else{var n=void 0,a=void 0,i=void 0;if(-1===e.indexOf(";")){if(this.self.forInRe.test(e))return this.error("invalid syntax, for…in is not supported; see: for…range");if(this.self.forOfRe.test(e))return this.error("invalid syntax, for…of is not supported; see: for…range");a=e}else{var o=e.match(this.self.threePartRe);if(null===o)return this.error("invalid 3-part conditional form syntax, format: [init] ; [condition] ; [post]");n=o[1],a=o[2].trim(),i=o[3],0===a.length&&(a=!0)}this.self.handleFor.call(this,t,n,a,i)}},handleFor:function(e,t,r,n){var a=Scripting.evalJavaScript,i=!0,o=Config.macros.maxLoopIterations;Config.debug&&this.debugView.modes({block:!0});try{if(TempState.break=null,t)try{a(t)}catch(e){return this.error("bad init expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}for(;a(r);){if(--o<0)return this.error("exceeded configured maximum loop iterations ("+Config.macros.maxLoopIterations+")");if(new Wikifier(this.output,i?e.replace(/^\n/,""):e),i&&(i=!1),null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}if(n)try{a(n)}catch(e){return this.error("bad post expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}}}catch(e){return this.error("bad conditional expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}finally{TempState.break=null}},handleForRange:function(e,t,r,n){var a=!0,i=void 0;try{i=this.self.toRangeList(n)}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});try{TempState.break=null;for(var o=0;o<i.length;++o)if(t.name&&(State[t.type][t.name]=i[o][0]),State[r.type][r.name]=i[o][1],new Wikifier(this.output,a?e.replace(/^\n/,""):e),a&&(a=!1),null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}}catch(e){return this.error("object"===(void 0===e?"undefined":_typeof(e))?e.message:e)}finally{TempState.break=null}},toRangeList:function(e){var t=Scripting.evalJavaScript,r=void 0;try{r=t("{"===e[0]?"("+e+")":e)}catch(e){if("object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("bad range expression: "+e);throw e.message="bad range expression: "+e.message,e}var n=void 0;switch(void 0===r?"undefined":_typeof(r)){case"string":n=[];for(var a=0;a<r.length;){var i=Util.charAndPosAt(r,a);n.push([a,i.char]),a=1+i.end}break;case"object":if(Array.isArray(r))n=r.map(function(e,t){return[t,e]});else if(r instanceof Set)n=[].concat(_toConsumableArray(r)).map(function(e,t){return[t,e]});else if(r instanceof Map)n=[].concat(_toConsumableArray(r.entries()));else{if("Object"!==Util.toStringTag(r))throw new Error("unsupported range expression type: "+Util.toStringTag(r));n=Object.keys(r).map(function(e){return[e,r[e]]})}break;default:throw new Error("unsupported range expression type: "+(void 0===r?"undefined":_typeof(r)))}return n}}),Macro.add(["break","continue"],{skipArgs:!0,handler:function(){if(!this.contextHas(function(e){return"for"===e.name}))return this.error("must only be used in conjunction with its parent macro <<for>>");TempState.break="continue"===this.name?1:2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add(["button","link"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no "+("button"===this.name?"button":"link")+" text specified");var t=jQuery(document.createElement("button"===this.name?"button":"a")),r=void 0;if("object"===_typeof(this.args[0]))if(this.args[0].isImage){var n=jQuery(document.createElement("img")).attr("src",this.args[0].source).appendTo(t);this.args[0].hasOwnProperty("passage")&&n.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&n.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&n.attr("align",this.args[0].align),r=this.args[0].link}else t.append(document.createTextNode(this.args[0].text)),r=this.args[0].link;else t.wikiWithOptions({profile:"core"},this.args[0]),r=this.args.length>1?this.args[1]:undefined;null!=r?(t.attr("data-passage",r),Story.has(r)?(t.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&t.addClass("link-visited")):t.addClass("link-broken")):t.addClass("link-internal"),t.addClass("macro-"+this.name).ariaClick({namespace:".macros",one:null!=r},this.createShadowWrapper(""!==this.payload[0].contents?function(){return Wikifier.wikifyEval(e.payload[0].contents.trim())}:null,null!=r?function(){return Engine.play(r)}:null)).appendTo(this.output)}}),Macro.add("checkbox",{isAsync:!0,handler:function(){if(this.args.length<3){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("unchecked value"),this.args.length<3&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),n=this.args[1],a=this.args[2],i=document.createElement("input");switch(jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"checkbox",tabindex:0}).addClass("macro-"+this.name).on("change.macros",this.createShadowWrapper(function(){State.setVar(t,this.checked?a:n)})).appendTo(this.output),this.args[3]){case"autocheck":State.getVar(t)===a?i.checked=!0:State.setVar(t,n);break;case"checked":i.checked=!0,State.setVar(t,a);break;default:State.setVar(t,n)}}}),Macro.add(["cycle","listbox"],{isAsync:!0,skipArgs:["optionsfrom"],tags:["option","optionsfrom"],handler:function(){var e=this;if(0===this.args.length)return this.error("no variable name specified");if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),n=this.payload.length;if(1===n)return this.error("no options specified");for(var a=this.args.length>1&&"autoselect"===this.args[1],i=[],o={option:0,optionsfrom:0},s=-1,u=1;u<n;++u){var l=this.payload[u];if("option"===l.name){if(++o.option,0===l.args.length)return this.error("no arguments specified for <<"+l.name+">> (#"+o.option+")");if(i.push({label:String(l.args[0]),value:1===l.args.length?l.args[0]:l.args[1]}),l.args.length>2&&"selected"===l.args[2]){if(a)return this.error("cannot specify both the autoselect and selected keywords");if(-1!==s)return this.error("multiple selected keywords specified for <<"+l.name+">> (#"+(s+1)+" & #"+o.option+")");s=i.length-1}}else{var c=function(){if(++o.optionsfrom,0===l.args.full.length)return{v:e.error("no expression specified for <<"+l.name+">> (#"+o.optionsfrom+")")};var t=void 0;try{var r=l.args.full;t=Scripting.evalJavaScript("{"===r[0]?"("+r+")":r)}catch(t){return{v:e.error("bad evaluation: "+("object"===(void 0===t?"undefined":_typeof(t))?t.message:t))}}if("object"!==(void 0===t?"undefined":_typeof(t))||null===t)return{v:e.error("expression must yield a supported collection or generic object (type: "+(null===t?"null":void 0===t?"undefined":_typeof(t))+")")};if(t instanceof Array||t instanceof Set)t.forEach(function(e){return i.push({label:String(e),value:e})});else if(t instanceof Map)t.forEach(function(e,t){return i.push({label:String(t),value:e})});else{var n=Util.toStringTag(t);if("Object"!==n)return{v:e.error("expression must yield a supported collection or generic object (object type: "+n+")")};Object.keys(t).forEach(function(e){return i.push({label:e,value:t[e]})})}}();if("object"===(void 0===c?"undefined":_typeof(c)))return c.v}}if(-1===s)if(a){var d=Util.sameValueZero,f=State.getVar(t),p=i.findIndex(function(e){return d(e.value,f)});s=-1===p?0:p}else s=0;if("cycle"===this.name){var h=s;jQuery(document.createElement("a")).wikiWithOptions({profile:"core"},i[s].label).attr("id",this.name+"-"+r).addClass("macro-"+this.name).ariaClick({namespace:".macros"},this.createShadowWrapper(function(){h=(h+1)%i.length,$(this).empty().wikiWithOptions({profile:"core"},i[h].label),State.setVar(t,i[h].value)})).appendTo(this.output)}else{var g=jQuery(document.createElement("select"));i.forEach(function(e,t){jQuery(document.createElement("option")).val(t).text(e.label).appendTo(g)}),g.attr({id:this.name+"-"+r,name:this.name+"-"+r,tabindex:0}).addClass("macro-"+this.name).val(s).on("change.macros",this.createShadowWrapper(function(){State.setVar(t,i[Number(this.value)].value)})).appendTo(this.output)}State.setVar(t,i[s].value)}}),Macro.add(["linkappend","linkprepend","linkreplace"],{isAsync:!0,tags:null,t8nRe:/^(?:transition|t8n)$/,handler:function(){var e=this;if(0===this.args.length)return this.error("no link text specified");var t=jQuery(document.createElement("a")),r=jQuery(document.createElement("span")),n=this.args.length>1&&this.self.t8nRe.test(this.args[1]);t.wikiWithOptions({profile:"core"},this.args[0]).addClass("link-internal macro-"+this.name).ariaClick({namespace:".macros",one:!0},this.createShadowWrapper(function(){if("linkreplace"===e.name?t.remove():t.wrap('<span class="macro-'+e.name+'"></span>').replaceWith(function(){return t.html()}),""!==e.payload[0].contents){var a=document.createDocumentFragment();new Wikifier(a,e.payload[0].contents),r.append(a)}n&&setTimeout(function(){return r.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)})).appendTo(this.output),r.addClass("macro-"+this.name+"-insert"),n&&r.addClass("macro-"+this.name+"-in"),"linkprepend"===this.name?r.insertBefore(t):r.insertAfter(t)}}),Macro.add(["numberbox","textbox"],{isAsync:!0,handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r="numberbox"===this.name,n=r?Number(this.args[1]):this.args[1];if(r&&Number.isNaN(n))return this.error('default value "'+this.args[1]+'" is neither a number nor can it be parsed into a number');var a=Util.slugify(t),i=document.createElement("input"),o=!1,s=void 0;this.args.length>3?(s=this.args[2],o="autofocus"===this.args[3]):this.args.length>2&&("autofocus"===this.args[2]?o=!0:s=this.args[2]),"object"===(void 0===s?"undefined":_typeof(s))&&(s=s.link),jQuery(i).attr({id:this.name+"-"+a,name:this.name+"-"+a,type:r?"number":"text",tabindex:0}).addClass("macro-"+this.name).on("change.macros",this.createShadowWrapper(function(){State.setVar(t,r?Number(this.value):this.value)})).on("keypress.macros",this.createShadowWrapper(function(e){13===e.which&&(e.preventDefault(),State.setVar(t,r?Number(this.value):this.value),null!=s&&Engine.play(s))})).appendTo(this.output),r&&(i.step="any"),State.setVar(t,n),i.value=n,o&&(i.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+i.id]=function(e){delete postdisplay[e],setTimeout(function(){return i.focus()},Engine.minDomActionDelay)})}}),Macro.add("radiobutton",{isAsync:!0,handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),n=this.args[1],a=document.createElement("input");switch(TempState.hasOwnProperty(this.name)||(TempState[this.name]={}),TempState[this.name].hasOwnProperty(r)||(TempState[this.name][r]=0),jQuery(a).attr({id:this.name+"-"+r+"-"+TempState[this.name][r]++,name:this.name+"-"+r,type:"radio",tabindex:0}).addClass("macro-"+this.name).on("change.macros",this.createShadowWrapper(function(){this.checked&&State.setVar(t,n)})).appendTo(this.output),this.args[2]){case"autocheck":State.getVar(t)===n&&(a.checked=!0);break;case"checked":a.checked=!0,State.setVar(t,n)}}}),Macro.add("textarea",{isAsync:!0,handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),n=this.args[1],a="autofocus"===this.args[2],i=document.createElement("textarea");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,rows:4,tabindex:0}).addClass("macro-"+this.name).on("change.macros",this.createShadowWrapper(function(){State.setVar(t,this.value)})).appendTo(this.output),State.setVar(t,n),i.textContent=n,a&&(i.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+i.id]=function(e){delete postdisplay[e],setTimeout(function(){return i.focus()},Engine.minDomActionDelay)})}}),Macro.add("click","link"),Macro.add("actions",{handler:function(){for(var e=jQuery(document.createElement("ul")).addClass(this.name).appendTo(this.output),t=0;t<this.args.length;++t){var r=void 0,n=void 0,a=void 0,i=void 0;"object"===_typeof(this.args[t])?this.args[t].isImage?(a=jQuery(document.createElement("img")).attr("src",this.args[t].source),this.args[t].hasOwnProperty("passage")&&a.attr("data-passage",this.args[t].passage),this.args[t].hasOwnProperty("title")&&a.attr("title",this.args[t].title),this.args[t].hasOwnProperty("align")&&a.attr("align",this.args[t].align),r=this.args[t].link,i=this.args[t].setFn):(n=this.args[t].text,r=this.args[t].link,i=this.args[t].setFn):n=r=this.args[t],State.variables.hasOwnProperty("#actions")&&State.variables["#actions"].hasOwnProperty(r)&&State.variables["#actions"][r]||jQuery(Wikifier.createInternalLink(jQuery(document.createElement("li")).appendTo(e),r,null,function(e,t){return function(){State.variables.hasOwnProperty("#actions")||(State.variables["#actions"]={}),State.variables["#actions"][e]=!0,"function"==typeof t&&t()}}(r,i))).addClass("macro-"+this.name).append(a||document.createTextNode(n))}}}),Macro.add(["back","return"],{handler:function(){if(this.args.length>1)return this.error("too many arguments specified, check the documentation for details");var e=-1,t=void 0,r=void 0,n=void 0;if(1===this.args.length&&("object"===_typeof(this.args[0])?this.args[0].isImage?(n=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&n.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&n.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&n.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(t=this.args[0].link)):1===this.args[0].count?t=this.args[0].link:(r=this.args[0].text,t=this.args[0].link):1===this.args.length&&(r=this.args[0])),null==t){for(var a=State.length-2;a>=0;--a)if(State.history[a].title!==State.passage){e=a,t=State.history[a].title;break}if(null==t&&"return"===this.name)for(var i=State.expired.length-1;i>=0;--i)if(State.expired[i]!==State.passage){t=State.expired[i];break}}else{if(!Story.has(t))return this.error('passage "'+t+'" does not exist');if("back"===this.name){for(var o=State.length-2;o>=0;--o)if(State.history[o].title===t){e=o;break}if(-1===e)return this.error('cannot find passage "'+t+'" in the current story history')}}if(null==t)return this.error("cannot find passage");var s=void 0;s="back"!==this.name||-1!==e?jQuery(document.createElement("a")).addClass("link-internal").ariaClick({one:!0},"return"===this.name?function(){return Engine.play(t)}:function(){return Engine.goTo(e)}):jQuery(document.createElement("span")).addClass("link-disabled"),s.addClass("macro-"+this.name).append(n||document.createTextNode(r||L10n.get("macro"+this.name.toUpperFirst()+"Text"))).appendTo(this.output)}}),Macro.add("choice",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=State.passage,t=void 0,r=void 0,n=void 0,a=void 0;if(1===this.args.length?"object"===_typeof(this.args[0])?this.args[0].isImage?(n=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&n.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&n.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&n.attr("align",this.args[0].align),t=this.args[0].link,a=this.args[0].setFn):(r=this.args[0].text,t=this.args[0].link,a=this.args[0].setFn):r=t=this.args[0]:(t=this.args[0],r=this.args[1]),State.variables.hasOwnProperty("#choice")&&State.variables["#choice"].hasOwnProperty(e)&&State.variables["#choice"][e])return void jQuery(document.createElement("span")).addClass("link-disabled macro-"+this.name).attr("tabindex",-1).append(n||document.createTextNode(r)).appendTo(this.output);jQuery(Wikifier.createInternalLink(this.output,t,null,function(){State.variables.hasOwnProperty("#choice")||(State.variables["#choice"]={}),State.variables["#choice"][e]=!0,"function"==typeof a&&a()})).addClass("macro-"+this.name).append(n||document.createTextNode(r))}}),Macro.add(["addclass","toggleclass"],{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("selector"),this.args.length<2&&e.push("class names"),this.error("no "+e.join(" or ")+" specified")}var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');switch(this.name){case"addclass":t.addClass(this.args[1].trim());break;case"toggleclass":t.toggleClass(this.args[1].trim())}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("removeclass",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');this.args.length>1?e.removeClass(this.args[1].trim()):e.removeClass(),Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("copy",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');jQuery(this.output).append(e.html()),Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add(["append","prepend","replace"],{tags:null,t8nRe:/^(?:transition|t8n)$/,handler:function(){var e=this;if(0===this.args.length)return this.error("no selector specified");var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');if(""!==this.payload[0].contents){var r=this.args.length>1&&this.self.t8nRe.test(this.args[1]),n=void 0;switch(r?(n=jQuery(document.createElement("span")),n.addClass("macro-"+this.name+"-insert macro-"+this.name+"-in"),setTimeout(function(){return n.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)):n=jQuery(document.createDocumentFragment()),n.wiki(this.payload[0].contents),
this.name){case"replace":t.empty();case"append":t.append(n);break;case"prepend":t.prepend(n)}}else"replace"===this.name&&t.empty();Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("remove",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');e.remove(),Config.debug&&this.debugView.modes({hidden:!0})}}),Has.audio){var e=function(e,t){return'only one playback action allowed per invocation, "'+e+'" cannot be combined with "'+t+'"'};Macro.add("audio",{handler:function(){if(this.args.length<2){var t=[];return this.args.length<1&&t.push("track and/or group IDs"),this.args.length<2&&t.push("actions"),this.error("no "+t.join(" or ")+" specified")}var r=void 0;try{r=SimpleAudio.select(this.args[0])}catch(e){return this.error(e.message)}for(var n=this.args.slice(1),a=void 0,i=5,o=void 0,s=void 0,u=void 0,l=void 0,c=void 0,d=void 0;n.length>0;){var f=n.shift(),p=void 0;switch(f){case"load":case"pause":case"play":case"stop":case"unload":if(a)return this.error(e(f,a));a=f;break;case"fadein":if(a)return this.error(e(f,a));a="fade",o=1;break;case"fadeout":if(a)return this.error(e(f,a));a="fade",o=0;break;case"fadeto":if(a)return this.error(e(f,a));if(0===n.length)return this.error("fadeto missing required level value");if(a="fade",p=n.shift(),o=Number.parseFloat(p),Number.isNaN(o)||!Number.isFinite(o))return this.error("cannot parse fadeto: "+p);break;case"fadeoverto":if(a)return this.error(e(f,a));if(n.length<2){var h=[];return n.length<1&&h.push("seconds"),n.length<2&&h.push("level"),this.error("fadeoverto missing required "+h.join(" and ")+" value"+(h.length>1?"s":""))}if(a="fade",p=n.shift(),i=Number.parseFloat(p),Number.isNaN(i)||!Number.isFinite(i))return this.error("cannot parse fadeoverto: "+p);if(p=n.shift(),o=Number.parseFloat(p),Number.isNaN(o)||!Number.isFinite(o))return this.error("cannot parse fadeoverto: "+p);break;case"volume":if(0===n.length)return this.error("volume missing required level value");if(p=n.shift(),d=Number.parseFloat(p),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse volume: "+p);break;case"mute":case"unmute":u="mute"===f;break;case"time":if(0===n.length)return this.error("time missing required seconds value");if(p=n.shift(),c=Number.parseFloat(p),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse time: "+p);break;case"loop":case"unloop":s="loop"===f;break;case"goto":if(0===n.length)return this.error("goto missing required passage title");if(p=n.shift(),l="object"===(void 0===p?"undefined":_typeof(p))?p.link:p,!Story.has(l))return this.error('passage "'+l+'" does not exist');break;default:return this.error("unknown action: "+f)}}try{if(null!=d&&r.volume(d),null!=c&&r.time(c),null!=u&&r.mute(u),null!=s&&r.loop(s),null!=l){var g="ended.macros.macro-"+this.name+"_goto";r.off(g).one(g,function(){r.off(g),Engine.play(l)})}switch(a){case"fade":r.fade(i,o);break;case"load":r.load();break;case"pause":r.pause();break;case"play":r.playWhenAllowed();break;case"stop":r.stop();break;case"unload":r.unload()}Config.debug&&this.debugView.modes({hidden:!0})}catch(e){return this.error("error executing action: "+e.message)}}}),Macro.add("cacheaudio",{handler:function(){var e=this;if(this.args.length<2){var t=[];return this.args.length<1&&t.push("track ID"),this.args.length<2&&t.push("sources"),this.error("no "+t.join(" or ")+" specified")}var r=String(this.args[0]).trim(),n=/^format:\s*([\w-]+)\s*;\s*/i;try{SimpleAudio.tracks.add(r,this.args.slice(1).map(function(t){if(n.test(t)){if(Config.debug)return e.error('track ID "'+r+'": format specifier migration required, "format:formatId;" → "formatId|"');t=t.replace(n,"$1|")}return t}))}catch(e){return this.error(e.message)}if(Config.debug&&!SimpleAudio.tracks.get(r).hasSource())return this.error('track ID "'+r+'": no supported audio sources found');Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("createaudiogroup",{tags:["track"],handler:function(){if(0===this.args.length)return this.error("no group ID specified");if(1===this.payload.length)return this.error("no tracks defined via <<track>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var e=String(this.args[0]).trim(),t=[],r=1,n=this.payload.length;r<n;++r){if(this.payload[r].args.length<1)return this.error("no track ID specified");t.push(String(this.payload[r].args[0]).trim()),Config.debug&&this.createDebugView(this.payload[r].name,this.payload[r].source).modes({nonvoid:!1,hidden:!0})}try{SimpleAudio.groups.add(e,t)}catch(e){return this.error(e.message)}Config.debug&&this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("createplaylist",{tags:["track"],handler:function(){if(0===this.args.length)return this.error("no list ID specified");if(1===this.payload.length)return this.error("no tracks defined via <<track>>");var e=Macro.get("playlist");if(null!==e.from&&"createplaylist"!==e.from)return this.error("a playlist has already been defined with <<setplaylist>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var t=String(this.args[0]).trim(),r=[],n=1,a=this.payload.length;n<a;++n){if(0===this.payload[n].args.length)return this.error("no track ID specified");for(var i={id:String(this.payload[n].args[0]).trim()},o=this.payload[n].args.slice(1);o.length>0;){var s=o.shift(),u=void 0,l=void 0;switch(s){case"copy":case"own":i.own=!0;break;case"rate":o.length>0&&o.shift();break;case"volume":if(0===o.length)return this.error("volume missing required level value");if(u=o.shift(),l=Number.parseFloat(u),Number.isNaN(l)||!Number.isFinite(l))return this.error("cannot parse volume: "+u);i.volume=l;break;default:return this.error("unknown action: "+s)}}r.push(i),Config.debug&&this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1,hidden:!0})}try{SimpleAudio.lists.add(t,r)}catch(e){return this.error(e.message)}null===e.from&&(e.from="createplaylist"),Config.debug&&this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("masteraudio",{handler:function(){if(0===this.args.length)return this.error("no actions specified");for(var t=this.args.slice(0),r=void 0,n=void 0,a=void 0,i=void 0;t.length>0;){var o=t.shift(),s=void 0;switch(o){case"load":case"stop":case"unload":if(r)return this.error(e(o,r));r=o;break;case"mute":case"unmute":n="mute"===o;break;case"muteonhide":case"nomuteonhide":a="muteonhide"===o;break;case"volume":if(0===t.length)return this.error("volume missing required level value");if(s=t.shift(),i=Number.parseFloat(s),Number.isNaN(i)||!Number.isFinite(i))return this.error("cannot parse volume: "+s);break;default:return this.error("unknown action: "+o)}}try{switch(null!=n&&SimpleAudio.mute(n),null!=a&&SimpleAudio.muteOnHidden(a),null!=i&&SimpleAudio.volume(i),r){case"load":SimpleAudio.load();break;case"stop":SimpleAudio.stop();break;case"unload":SimpleAudio.unload()}Config.debug&&this.debugView.modes({hidden:!0})}catch(e){return this.error("error executing action: "+e.message)}}}),Macro.add("playlist",{from:null,handler:function(){var t=this.self.from;if(null===t)return this.error("no playlists have been created");var r=void 0,n=void 0;if("createplaylist"===t){if(this.args.length<2){var a=[];return this.args.length<1&&a.push("list ID"),this.args.length<2&&a.push("actions"),this.error("no "+a.join(" or ")+" specified")}var i=String(this.args[0]).trim();if(!SimpleAudio.lists.has(i))return this.error('playlist "'+i+'" does not exist');r=SimpleAudio.lists.get(i),n=this.args.slice(1)}else{if(0===this.args.length)return this.error("no actions specified");r=SimpleAudio.lists.get("setplaylist"),n=this.args.slice(0)}for(var o=void 0,s=5,u=void 0,l=void 0,c=void 0,d=void 0,f=void 0;n.length>0;){var p=n.shift(),h=void 0;switch(p){case"load":case"pause":case"play":case"skip":case"stop":case"unload":if(o)return this.error(e(p,o));o=p;break;case"fadein":if(o)return this.error(e(p,o));o="fade",u=1;break;case"fadeout":if(o)return this.error(e(p,o));o="fade",u=0;break;case"fadeto":if(o)return this.error(e(p,o));if(0===n.length)return this.error("fadeto missing required level value");if(o="fade",h=n.shift(),u=Number.parseFloat(h),Number.isNaN(u)||!Number.isFinite(u))return this.error("cannot parse fadeto: "+h);break;case"fadeoverto":if(o)return this.error(e(p,o));if(n.length<2){var g=[];return n.length<1&&g.push("seconds"),n.length<2&&g.push("level"),this.error("fadeoverto missing required "+g.join(" and ")+" value"+(g.length>1?"s":""))}if(o="fade",h=n.shift(),s=Number.parseFloat(h),Number.isNaN(s)||!Number.isFinite(s))return this.error("cannot parse fadeoverto: "+h);if(h=n.shift(),u=Number.parseFloat(h),Number.isNaN(u)||!Number.isFinite(u))return this.error("cannot parse fadeoverto: "+h);break;case"volume":if(0===n.length)return this.error("volume missing required level value");if(h=n.shift(),f=Number.parseFloat(h),Number.isNaN(f)||!Number.isFinite(f))return this.error("cannot parse volume: "+h);break;case"mute":case"unmute":c="mute"===p;break;case"loop":case"unloop":l="loop"===p;break;case"shuffle":case"unshuffle":d="shuffle"===p;break;default:return this.error("unknown action: "+p)}}try{switch(null!=f&&r.volume(f),null!=c&&r.mute(c),null!=l&&r.loop(l),null!=d&&r.shuffle(d),o){case"fade":r.fade(s,u);break;case"load":r.load();break;case"pause":r.pause();break;case"play":r.playWhenAllowed();break;case"skip":r.skip();break;case"stop":r.stop();break;case"unload":r.unload()}Config.debug&&this.debugView.modes({hidden:!0})}catch(e){return this.error("error executing action: "+e.message)}}}),Macro.add("removeaudiogroup",{handler:function(){if(0===this.args.length)return this.error("no group ID specified");var e=String(this.args[0]).trim();if(!SimpleAudio.groups.has(e))return this.error('group "'+e+'" does not exist');SimpleAudio.groups.delete(e),Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("removeplaylist",{handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=String(this.args[0]).trim();if(!SimpleAudio.lists.has(e))return this.error('playlist "'+e+'" does not exist');SimpleAudio.lists.delete(e),Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("waitforaudio",{skipArgs:!0,handler:function(){SimpleAudio.loadWithScreen()}}),Macro.add("setplaylist",{handler:function(){if(0===this.args.length)return this.error("no track ID(s) specified");var e=Macro.get("playlist");if(null!==e.from&&"setplaylist"!==e.from)return this.error("playlists have already been defined with <<createplaylist>>");try{SimpleAudio.lists.add("setplaylist",this.args.slice(0))}catch(e){return this.error(e.message)}null===e.from&&(e.from="setplaylist"),Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("stopallaudio",{skipArgs:!0,handler:function(){SimpleAudio.select(":all").stop(),Config.debug&&this.debugView.modes({hidden:!0})}})}else Macro.add(["audio","cacheaudio","createaudiogroup","createplaylist","masteraudio","playlist","removeaudiogroup","removeplaylist","waitforaudio","setplaylist","stopallaudio"],{skipArgs:!0,handler:function(){Config.debug&&this.debugView.modes({hidden:!0})}});Macro.add("goto",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');setTimeout(function(){return Engine.play(e)},Engine.minDomActionDelay)}}),Macro.add("repeat",{isAsync:!0,tags:null,timers:new Set,t8nRe:/^(?:transition|t8n)$/,handler:function(){var e=this;if(0===this.args.length)return this.error("no time value specified");var t=void 0;try{t=Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0]))}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});var r=this.args.length>1&&this.self.t8nRe.test(this.args[1]),n=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerInterval(this.createShadowWrapper(function(){var t=document.createDocumentFragment();new Wikifier(t,e.payload[0].contents);var a=n;r&&(a=jQuery(document.createElement("span")).addClass("macro-repeat-insert macro-repeat-in").appendTo(a)),a.append(t),r&&setTimeout(function(){return a.removeClass("macro-repeat-in")},Engine.minDomActionDelay)}),t)},registerInterval:function(e,t){var r=this;if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var n=State.passage,a=State.turns,i=this.timers,o=null;o=setInterval(function(){if(State.passage!==n||State.turns!==a)return clearInterval(o),void i.delete(o);var t=void 0;try{TempState.break=null,TempState.hasOwnProperty("repeatTimerId")&&(t=TempState.repeatTimerId),TempState.repeatTimerId=o,e.call(r)}finally{void 0!==t?TempState.repeatTimerId=t:delete TempState.repeatTimerId,TempState.break=null}},t),i.add(o),prehistory.hasOwnProperty("#repeat-timers-cleanup")||(prehistory["#repeat-timers-cleanup"]=function(e){delete prehistory[e],i.forEach(function(e){return clearInterval(e)}),i.clear()})}}),Macro.add("stop",{skipArgs:!0,handler:function(){if(!TempState.hasOwnProperty("repeatTimerId"))return this.error("must only be used in conjunction with its parent macro <<repeat>>");var e=Macro.get("repeat").timers,t=TempState.repeatTimerId;clearInterval(t),e.delete(t),TempState.break=2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("timed",{isAsync:!0,tags:["next"],timers:new Set,t8nRe:/^(?:transition|t8n)$/,handler:function(){if(0===this.args.length)return this.error("no time value specified in <<timed>>");var e=[];try{e.push({name:this.name,source:this.source,delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0])),content:this.payload[0].contents})}catch(e){return this.error(e.message+" in <<timed>>")}if(this.payload.length>1){var t=void 0;try{var r=void 0;for(t=1,r=this.payload.length;t<r;++t)e.push({name:this.payload[t].name,source:this.payload[t].source,delay:0===this.payload[t].args.length?e[e.length-1].delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.payload[t].args[0])),content:this.payload[t].contents})}catch(e){return this.error(e.message+" in <<next>> (#"+t+")")}}Config.debug&&this.debugView.modes({block:!0});var n=this.args.length>1&&this.self.t8nRe.test(this.args[1]),a=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerTimeout(this.createShadowWrapper(function(e){var t=document.createDocumentFragment();new Wikifier(t,e.content);var r=a;Config.debug&&"next"===e.name&&(r=jQuery(new DebugView(r[0],"macro",e.name,e.source).output)),n&&(r=jQuery(document.createElement("span")).addClass("macro-timed-insert macro-timed-in").appendTo(r)),r.append(t),n&&setTimeout(function(){return r.removeClass("macro-timed-in")},Engine.minDomActionDelay)}),e)},registerTimeout:function(e,t){if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var r=State.passage,n=State.turns,a=this.timers,i=null,o=t.shift(),s=function s(){if(a.delete(i),State.passage===r&&State.turns===n){var u=o;null!=(o=t.shift())&&(i=setTimeout(s,o.delay),a.add(i)),e.call(this,u)}};i=setTimeout(s,o.delay),a.add(i),prehistory.hasOwnProperty("#timed-timers-cleanup")||(prehistory["#timed-timers-cleanup"]=function(e){delete prehistory[e],a.forEach(function(e){return clearTimeout(e)}),a.clear()})}}),Macro.add("widget",{tags:null,handler:function(){if(0===this.args.length)return this.error("no widget name specified");var e=this.args[0];if(Macro.has(e)){if(!Macro.get(e).isWidget)return this.error('cannot clobber existing macro "'+e+'"');Macro.delete(e)}try{Macro.add(e,{isWidget:!0,handler:function(e){return function(){var t=void 0;try{State.variables.hasOwnProperty("args")&&(t=State.variables.args),State.variables.args=[].concat(_toConsumableArray(this.args)),State.variables.args.raw=this.args.raw,State.variables.args.full=this.args.full,this.addShadow("$args");var r=document.createDocumentFragment(),n=[];if(new Wikifier(r,e),Array.from(r.querySelectorAll(".error")).forEach(function(e){n.push(e.textContent)}),0!==n.length)return this.error("error"+(n.length>1?"s":"")+" within widget contents ("+n.join("; ")+")");this.output.appendChild(r)}catch(e){return this.error("cannot execute widget: "+e.message)}finally{void 0!==t?State.variables.args=t:delete State.variables.args}}}(this.payload[0].contents)}),Config.debug&&this.debugView.modes({hidden:!0})}catch(t){return this.error('cannot create widget macro "'+e+'": '+t.message)}}})}();var Dialog=function(){function e(e,t,r,n,a){return jQuery(e).ariaClick(function(e){e.preventDefault(),"function"==typeof r&&r(e),o(t,a),"function"==typeof n&&n(e)})}function t(){var e;return(e=g).append.apply(e,arguments),Dialog}function r(){return g.get(0)}function n(e){return g.trigger(":dialogclosing"),jQuery(document).off(".dialog-close"),y?(y.disconnect(),y=null):g.off(".dialog-resize"),jQuery(window).off(".dialog-resize"),p.removeClass("open").css({left:"",right:"",top:"",bottom:""}),jQuery("#ui-bar,#story").find("[tabindex=-2]").removeAttr("aria-hidden").attr("tabindex",0),jQuery("body>[tabindex=-3]").removeAttr("aria-hidden").removeAttr("tabindex"),f.removeClass("open"),jQuery(document.documentElement).removeAttr("data-dialog"),h.empty(),g.empty().removeClass(),null!==m&&(jQuery(m).focus(),m=null),e&&e.data&&"function"==typeof e.data.closeFn&&e.data.closeFn(e),g.trigger(":dialogclose"),g.trigger(":dialogclosed"),Dialog}function a(){if(!document.getElementById("ui-dialog")){v=function(){var e=void 0;try{var t=document.createElement("p"),r=document.createElement("div");t.style.width="100%",t.style.height="200px",r.style.position="absolute",r.style.left="0px",r.style.top="0px",r.style.width="100px",r.style.height="100px",r.style.visibility="hidden",r.style.overflow="hidden",r.appendChild(t),document.body.appendChild(r);var n=t.offsetWidth;r.style.overflow="auto";var a=t.offsetWidth;n===a&&(a=r.clientWidth),document.body.removeChild(r),e=n-a}catch(e){}return e||17}();var e=jQuery(document.createDocumentFragment()).append('<div id="ui-overlay" class="ui-close"></div><div id="ui-dialog" tabindex="0" role="dialog" aria-labelledby="ui-dialog-title"><div id="ui-dialog-titlebar"><h1 id="ui-dialog-title"></h1><button id="ui-dialog-close" class="ui-close" tabindex="0" aria-label="'+L10n.get("close")+'"></button></div><div id="ui-dialog-body"></div></div>');f=jQuery(e.find("#ui-overlay").get(0)),p=jQuery(e.find("#ui-dialog").get(0)),h=jQuery(e.find("#ui-dialog-title").get(0)),g=jQuery(e.find("#ui-dialog-body").get(0)),e.insertBefore("body>script#script-sugarcube")}}function i(e){return p.hasClass("open")&&(!e||e.splitOrEmpty(/\s+/).every(function(e){return g.hasClass(e)}))}function o(e,t){g.trigger(":dialogopening");var r=jQuery.extend({top:50},e),a=r.top;return i()||(m=safeActiveElement()),jQuery(document.documentElement).attr("data-dialog","open"),f.addClass("open"),null!==g[0].querySelector("img")&&g.imagesLoaded().always(function(){return d({data:{top:a}})}),jQuery("body>:not(script,#store-area,tw-storydata,#ui-bar,#ui-overlay,#ui-dialog)").attr("tabindex",-3).attr("aria-hidden",!0),jQuery("#ui-bar,#story").find("[tabindex]:not([tabindex^=-])").attr("tabindex",-2).attr("aria-hidden",!0),p.css(c(a)).addClass("open").focus(),jQuery(window).on("resize.dialog-resize",null,{top:a},jQuery.throttle(40,d)),Has.mutationObserver?(y=new MutationObserver(function(e){for(var t=0;t<e.length;++t)if("childList"===e[t].type){d({data:{top:a}});break}}),y.observe(g[0],{childList:!0,subtree:!0})):g.on("DOMNodeInserted.dialog-resize DOMNodeRemoved.dialog-resize",null,{top:a},jQuery.throttle(40,d)),jQuery(document).one("click.dialog-close",".ui-close",{closeFn:t},function(e){n(e)}).one("keypress.dialog-close",".ui-close",function(e){13!==e.which&&32!==e.which||jQuery(this).trigger("click")}),g.trigger(":dialogopen"),g.trigger(":dialogopened"),Dialog}function s(e){return d("object"===(void 0===e?"undefined":_typeof(e))?{data:e}:undefined)}function u(e,t){return g.empty().removeClass(),null!=t&&g.addClass(t),h.empty().append((null!=e?String(e):"")||" "),g.get(0)}function l(){var e;return(e=g).wiki.apply(e,arguments),Dialog}function c(e){var t=null!=e?e:50,r=jQuery(window),n={left:"",right:"",top:"",bottom:""};p.css(n);var a=r.width()-p.outerWidth(!0)-1,i=r.height()-p.outerHeight(!0)-1;return a<=32+v&&(i-=v),i<=32+v&&(a-=v),n.left=n.right=a<=32?16:a/2>>0,n.top=i<=32?n.bottom=16:i/2>t?t:n.bottom=i/2>>0,Object.keys(n).forEach(function(e){""!==n[e]&&(n[e]+="px")}),n}function d(e){var t=e&&e.data&&void 0!==e.data.top?e.data.top:50;"block"===p.css("display")&&(p.css({display:"none"}),p.css(jQuery.extend({display:""},c(t))))}var f=null,p=null,h=null,g=null,m=null,v=0,y=null;return Object.freeze(Object.defineProperties({},{append:{value:t},body:{value:r},close:{value:n},init:{value:a},isOpen:{value:i},open:{value:o},resize:{value:s},setup:{value:u},wiki:{value:l},addClickHandler:{value:e}}))}(),Engine=function(){function e(){jQuery("#init-no-js,#init-lacking").remove(),function(){var e=jQuery(document.createDocumentFragment()),t=Story.has("StoryInterface")&&Story.get("StoryInterface").text.trim();if(t){if(UIBar.destroy(),jQuery(document.head).find("#style-core-display").remove(),e.append(t),0===e.find("#passages").length)throw new Error('no element with ID "passages" found within "StoryInterface" special passage');var r=[];e.find("[data-passage]").each(function(e,t){if("passages"===t.id)throw new Error('"StoryInterface" element <'+t.nodeName.toLowerCase()+' id="passages"> must not contain a "data-passage" content attribute');var n=t.getAttribute("data-passage").trim();if(null!==t.firstElementChild)throw new Error('"StoryInterface" element <'+t.nodeName.toLowerCase()+' data-passage="'+n+'"> contains child elements');Story.has(n)&&r.push({passage:n,element:t})}),r.length>0&&(E=r),Config.ui.updateStoryElements=!1}else e.append('<div id="story" role="main"><div id="passages"></div></div>');e.insertBefore("body>script#script-sugarcube")}(),S=new StyleWrapper(function(){return jQuery(document.createElement("style")).attr({id:"style-aria-outlines",type:"text/css"}).appendTo(document.head).get(0)}()),g();var e=void 0;jQuery(document).on("mousedown.aria-outlines keydown.aria-outlines",function(t){t.type!==e&&(e=t.type,"keydown"===t.type?m():g())})}function t(){if(Story.has("StoryInit"))try{var e=Wikifier.wikifyEval(Story.get("StoryInit").text);if(Config.debug){var t=new DebugView(document.createDocumentFragment(),"special","StoryInit","StoryInit");t.modes({hidden:!0}),t.append(e),k=t.output}}catch(e){console.error(e),Alert.error("StoryInit",e.message)}if(null==Config.passages.start)throw new Error("starting passage not selected");if(!Story.has(Config.passages.start))throw new Error('starting passage ("'+Config.passages.start+'") not found');if(jQuery(document.documentElement).focus(),State.restore())f();else{var r=!0;switch(_typeof(Config.saves.autoload)){case"boolean":Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!Save.autosave.load());break;case"string":"prompt"===Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!1,UI.buildAutoload(),Dialog.open());break;case"function":Save.autosave.ok()&&Save.autosave.has()&&Config.saves.autoload()&&(r=!Save.autosave.load())}r&&p(Config.passages.start)}}function r(){LoadScreen.show(),window.scroll(0,0),State.reset(),jQuery.event.trigger(":enginerestart"),window.location.reload()}function n(){return b}function a(){return b===v.Idle}function i(){return b!==v.Idle}function o(){return b===v.Rendering}function s(){return w}function u(e){var t=State.goTo(e);return t&&f(),t}function l(e){var t=State.go(e);return t&&f(),t}function c(){return l(-1)}function d(){return l(1)}function f(){return p(State.passage,!0)}function p(e,t){var r=e;b=v.Playing,TempState={},State.clearTemporary();var n=void 0,a=void 0;if("function"==typeof Config.navigation.override)try{var i=Config.navigation.override(r);i&&(r=i)}catch(e){}var o=Story.get(r);if(jQuery.event.trigger({type:":passageinit",passage:o}),Object.keys(prehistory).forEach(function(e){"function"==typeof prehistory[e]&&prehistory[e].call(o,e)}),t||State.create(o.title),document.body.className&&(document.body.className=""),w=Util.now(),Object.keys(predisplay).forEach(function(e){"function"==typeof predisplay[e]&&predisplay[e].call(o,e)}),Story.has("PassageReady"))try{n=Wikifier.wikifyEval(Story.get("PassageReady").text)}catch(e){console.error(e),Alert.error("PassageReady",e.message)}b=v.Rendering;var s=o.tags.length>0?o.tags.join(" "):null,u=document.createElement("div");jQuery(u).attr({id:o.domId,"data-passage":o.title,"data-tags":s}).addClass("passage "+o.className),jQuery(document.body).attr("data-tags",s).addClass(o.className),jQuery(document.documentElement).attr("data-tags",s),jQuery.event.trigger({type:":passagestart",content:u,passage:o}),Object.keys(prerender).forEach(function(e){"function"==typeof prerender[e]&&prerender[e].call(o,u,e)}),Story.has("PassageHeader")&&new Wikifier(u,Story.get("PassageHeader").processText()),u.appendChild(o.render()),Story.has("PassageFooter")&&new Wikifier(u,Story.get("PassageFooter").processText()),jQuery.event.trigger({type:":passagerender",content:u,passage:o}),Object.keys(postrender).forEach(function(e){"function"==typeof postrender[e]&&postrender[e].call(o,u,e)});var l=document.getElementById("passages");if(l.hasChildNodes()&&("number"==typeof Config.passages.transitionOut||"string"==typeof Config.passages.transitionOut&&""!==Config.passages.transitionOut&&Has.transitionEndEvent?[].concat(_toConsumableArray(l.childNodes)).forEach(function(e){var t=jQuery(e);if(e.nodeType===Node.ELEMENT_NODE&&t.hasClass("passage")){if(t.hasClass("passage-out"))return;t.attr("id","out-"+t.attr("id")).addClass("passage-out"),"string"==typeof Config.passages.transitionOut?t.on(Has.transitionEndEvent,function(e){e.originalEvent.propertyName===Config.passages.transitionOut&&t.remove()}):setTimeout(function(){return t.remove()},Math.max(y,Config.passages.transitionOut))}else t.remove()}):jQuery(l).empty()),jQuery(u).addClass("passage-in").appendTo(l),setTimeout(function(){return jQuery(u).removeClass("passage-in")},y),Story.has("StoryDisplayTitle")?null===E&&Config.ui.updateStoryElements||setDisplayTitle(Story.get("StoryDisplayTitle").processText()):Config.passages.displayTitles&&o.title!==Config.passages.start&&(document.title=o.title+" | "+Story.title),window.scroll(0,0),b=v.Playing,Story.has("PassageDone"))try{a=Wikifier.wikifyEval(Story.get("PassageDone").text)}catch(e){console.error(e),Alert.error("PassageDone",e.message)}if(jQuery.event.trigger({type:":passagedisplay",content:u,passage:o}),Object.keys(postdisplay).forEach(function(e){"function"==typeof postdisplay[e]&&postdisplay[e].call(o,e)}),null!==E?E.forEach(function(e){jQuery(e.element).empty(),new Wikifier(e.element,Story.get(e.passage).processText().trim())}):Config.ui.updateStoryElements&&UIBar.update(),Config.debug){var c=void 0;null!=n&&(c=new DebugView(document.createDocumentFragment(),"special","PassageReady","PassageReady"),c.modes({hidden:!0}),c.append(n),jQuery(u).prepend(c.output)),null!=a&&(c=new DebugView(document.createDocumentFragment(),"special","PassageDone","PassageDone"),c.modes({hidden:!0}),c.append(a),jQuery(u).append(c.output)),1===State.turns&&null!=k&&jQuery(u).prepend(k)}switch(jQuery("#story").find("a[href]:not(.link-external)").addClass("link-external").end().find("a,link,button,input,select,textarea").not("[tabindex]").attr("tabindex",0),_typeof(Config.saves.autosave)){case"boolean":Config.saves.autosave&&Save.autosave.save();break;case"object":o.tags.some(function(e){return Config.saves.autosave.includes(e)})&&Save.autosave.save();break;case"function":Config.saves.autosave()&&Save.autosave.save()}return jQuery.event.trigger({type:":passageend",content:u,passage:o}),b=v.Idle,w=Util.now(),u}function h(e,t,r){var n=!1;switch(r){case undefined:break;case"replace":case"back":n=!0;break;default:throw new Error('Engine.display option parameter called with obsolete value "'+r+'"; please notify the developer')}p(e,n)}function g(){S.set("*:focus{outline:none;}")}function m(){S.clear()}var v=Util.toEnum({Idle:"idle",Playing:"playing",Rendering:"rendering"}),y=40,b=v.Idle,w=null,k=null,S=null,E=null;return Object.freeze(Object.defineProperties({},{States:{value:v},minDomActionDelay:{value:y},init:{value:e},start:{value:t},restart:{value:r},state:{get:n},isIdle:{value:a},isPlaying:{value:i},isRendering:{value:o},lastPlay:{get:s},goTo:{value:u},go:{value:l},backward:{value:c},forward:{value:d},show:{value:f},play:{value:p},display:{value:h}}))}(),Passage=function(){var e=void 0;e=/^(?:debug|nobr|passage|widget|twine\..*)$/i;return function(){function t(r,n){var a=this;_classCallCheck(this,t),Object.defineProperties(this,{title:{value:Util.unescape(r)},element:{value:n||null},tags:{value:Object.freeze(n&&n.hasAttribute("tags")?n.getAttribute("tags").trim().splitOrEmpty(/\s+/).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}):[])},_excerpt:{writable:!0,value:null}}),Object.defineProperties(this,{domId:{value:"passage-"+Util.slugify(this.title)},classes:{value:Object.freeze(0===this.tags.length?[]:function(){return a.tags.filter(function(t){return!e.test(t)}).map(function(e){return Util.slugify(e)})}())}})}return _createClass(t,[{key:"description",value:function(){var e=Config.passages.descriptions;switch(void 0===e?"undefined":_typeof(e)){case"boolean":if(e)return this.title;break;case"object":if(e.hasOwnProperty(this.title))return e[this.title];break;case"function":var r=e.call(this);if(r)return r}return null===this._excerpt&&(this._excerpt=t.getExcerptFromText(this.text)),this._excerpt}},{key:"processText",value:function(){if(null==this.element)return this.text;if(this.tags.includes("Twine.image"))return"[img["+this.text+"]]";var e=this.text;return Config.passages.onProcess&&(e=Config.passages.onProcess.call(null,{title:this.title,tags:this.tags,text:e})),(Config.passages.nobr||this.tags.includes("nobr"))&&(e=e.replace(/^\n+|\n+$/g,"").replace(/\n+/g," ")),e}},{key:"render",value:function(e){var r=document.createDocumentFragment();return new Wikifier(r,this.processText(),e),this._excerpt=t.getExcerptFromNode(r),r}},{key:"className",get:function(){return this.classes.join(" ")}},{key:"text",get:function(){if(null==this.element){var e=Util.escapeMarkup(this.title);return'<div class="error-view"><span class="error">'+(L10n.get("errorTitle")+": "+L10n.get("errorNonexistentPassage",{passage:e}))+"</span></div>"}return this.element.textContent.replace(/\r/g,"")}}],[{key:"getExcerptFromNode",value:function(e,t){if(!e.hasChildNodes())return"";var r=e.textContent.trim();if(""!==r){var n=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})");r=r.replace(/\s+/g," ").match(n)}return r?r[1]+"…":"…"}},{key:"getExcerptFromText",value:function(e,t){if(""===e)return"";var r=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})"),n=e.replace(/<<.*?>>/g," ").replace(/<.*?>/g," ").trim().replace(/^\s*\|.*\|.*?$/gm,"").replace(/\[[<>]?img\[[^\]]*\]\]/g,"").replace(/\[\[([^|\]]*?)(?:(?:\||->|<-)[^\]]*)?\]\]/g,"$1").replace(/^\s*!+(.*?)$/gm,"$1").replace(/'{2}|\/{2}|_{2}|@{2}/g,"").trim().replace(/\s+/g," ").match(r);return n?n[1]+"…":"…"}}]),t}()}(),Save=function(){function e(){if("cookie"===storage.name)return n(),Config.saves.autoload=undefined,Config.saves.autosave=undefined,Config.saves.slots=0,!1;var e=r(),t=!1;Array.isArray(e)&&(e={autosave:null,slots:e},t=!0),Config.saves.slots!==e.slots.length&&(Config.saves.slots<e.slots.length?(e.slots.reverse(),e.slots=e.slots.filter(function(e){return!(null===e&&this.count>0)||(--this.count,!1)},{count:e.slots.length-Config.saves.slots}),e.slots.reverse()):Config.saves.slots>e.slots.length&&j(e.slots,Config.saves.slots-e.slots.length),t=!0),
O(e.autosave)&&(t=!0);for(var a=0;a<e.slots.length;++a)O(e.slots[a])&&(t=!0);return x(e)&&(storage.delete("saves"),t=!1),t&&T(e),_=e.slots.length-1,!0}function t(){return{autosave:null,slots:j([],Config.saves.slots)}}function r(){var e=storage.get("saves");return null===e?t():e}function n(){return storage.delete("saves"),!0}function a(){return i()||d()}function i(){return"cookie"!==storage.name&&void 0!==Config.saves.autosave}function o(){return null!==r().autosave}function s(){return r().autosave}function u(){var e=r();return null!==e.autosave&&A(e.autosave)}function l(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return!1;var n=r(),a={title:e||Story.get(State.passage).description(),date:Date.now()};return null!=t&&(a.metadata=t),n.autosave=C(a,{type:P.Autosave}),T(n)}function c(){var e=r();return e.autosave=null,T(e)}function d(){return"cookie"!==storage.name&&-1!==_}function f(){return _+1}function p(){if(!d())return 0;for(var e=r(),t=0,n=0,a=e.slots.length;n<a;++n)null!==e.slots[n]&&++t;return t}function h(){return 0===p()}function g(e){if(e<0||e>_)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])}function m(e){if(e<0||e>_)return null;var t=r();return e>=t.slots.length?null:t.slots[e]}function v(e){if(e<0||e>_)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])&&A(t.slots[e])}function y(e,t,n){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return Dialog.isOpen()?$(document).one(":dialogclosed",function(){return UI.alert(L10n.get("savesDisallowed"))}):UI.alert(L10n.get("savesDisallowed")),!1;if(e<0||e>_)return!1;var a=r();if(e>=a.slots.length)return!1;var i={title:t||Story.get(State.passage).description(),date:Date.now()};return null!=n&&(i.metadata=n),a.slots[e]=C(i,{type:P.Slot}),T(a)}function b(e){if(e<0||e>_)return!1;var t=r();return!(e>=t.slots.length)&&(t.slots[e]=null,T(t))}function w(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return void(Dialog.isOpen()?$(document).one(":dialogclosed",function(){return UI.alert(L10n.get("savesDisallowed"))}):UI.alert(L10n.get("savesDisallowed")));var r=null==e?Story.domId:function(e){return String(e).trim().replace(/[\x00-\x1f"#$%&'*+,/:;<=>?\\^`|\x7f-\x9f]+/g,"").replace(/[_\s\u2013\u2014-]+/g,"-")}(e),n=r+"-"+function(){var e=new Date,t=e.getMonth()+1,r=e.getDate(),n=e.getHours(),a=e.getMinutes(),i=e.getSeconds();return t<10&&(t="0"+t),r<10&&(r="0"+r),n<10&&(n="0"+n),a<10&&(a="0"+a),i<10&&(i="0"+i),""+e.getFullYear()+t+r+"-"+n+a+i}()+".save",a=null==t?{}:{metadata:t},i=LZString.compressToBase64(JSON.stringify(C(a,{type:P.Disk})));saveAs(new Blob([i],{type:"text/plain;charset=UTF-8"}),n)}function k(e){var t=e.target.files[0],r=new FileReader;jQuery(r).on("load",function(e){var r=e.currentTarget;if(r.result){var n=void 0;try{n=JSON.parse(/\.json$/i.test(t.name)||/^\{/.test(r.result)?r.result:LZString.decompressFromBase64(r.result))}catch(e){}A(n)}}),r.readAsText(t)}function S(e){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return Dialog.isOpen()?$(document).one(":dialogclosed",function(){return UI.alert(L10n.get("savesDisallowed"))}):UI.alert(L10n.get("savesDisallowed")),null;var t=null==e?{}:{metadata:e};return LZString.compressToBase64(JSON.stringify(C(t,{type:P.Serialize})))}function E(e){var t=void 0;try{t=JSON.parse(LZString.decompressFromBase64(e))}catch(e){}return A(t)?t.metadata:null}function j(e,t){for(var r=0;r<t;++r)e.push(null);return e}function x(e){for(var t=e.slots,r=!0,n=0,a=t.length;n<a;++n)if(null!==t[n]){r=!1;break}return null===e.autosave&&r}function T(e){return x(e)?(storage.delete("saves"),!0):storage.set("saves",e)}function O(e){if(null==e||"object"!==(void 0===e?"undefined":_typeof(e)))return!1;var t=!1;return e.hasOwnProperty("state")&&e.state.hasOwnProperty("delta")&&e.state.hasOwnProperty("index")||(e.hasOwnProperty("data")?(delete e.mode,e.state={delta:State.deltaEncode(e.data)},delete e.data):e.state.hasOwnProperty("delta")?e.state.hasOwnProperty("index")||delete e.state.mode:(delete e.state.mode,e.state.delta=State.deltaEncode(e.state.history),delete e.state.history),e.state.index=e.state.delta.length-1,t=!0),e.state.hasOwnProperty("rseed")&&(e.state.seed=e.state.rseed,delete e.state.rseed,e.state.delta.forEach(function(e,t,r){r[t].hasOwnProperty("rcount")&&(r[t].pull=r[t].rcount,delete r[t].rcount)}),t=!0),(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired||e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired&&delete e.state.expired,(e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.expired=[],e.state.hasOwnProperty("unique")&&(e.state.expired.push(e.state.unique),delete e.state.unique),e.state.hasOwnProperty("last")&&(e.state.expired.push(e.state.last),delete e.state.last)),t=!0),t}function C(e,t){if(null!=e&&"object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("supplemental parameter must be an object");var r=Object.assign({},e,{id:Config.saves.id,state:State.marshalForSave()});return Config.saves.version&&(r.version=Config.saves.version),"function"==typeof Config.saves.onSave&&Config.saves.onSave(r,t),r.state.delta=State.deltaEncode(r.state.history),delete r.state.history,r}function A(e){try{if(O(e),!e||!e.hasOwnProperty("id")||!e.hasOwnProperty("state"))throw new Error(L10n.get("errorSaveMissingData"));if(e.state.history=State.deltaDecode(e.state.delta),delete e.state.delta,"function"==typeof Config.saves.onLoad&&Config.saves.onLoad(e),e.id!==Config.saves.id)throw new Error(L10n.get("errorSaveIdMismatch"));State.unmarshalForSave(e.state),Engine.show()}catch(e){return UI.alert(e.message.toUpperFirst()+".</p><p>"+L10n.get("aborting")+"."),!1}return!0}var P=Util.toEnum({Autosave:"autosave",Disk:"disk",Serialize:"serialize",Slot:"slot"}),_=-1;return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:r},clear:{value:n},ok:{value:a},autosave:{value:Object.freeze(Object.defineProperties({},{ok:{value:i},has:{value:o},get:{value:s},load:{value:u},save:{value:l},delete:{value:c}}))},slots:{value:Object.freeze(Object.defineProperties({},{ok:{value:d},length:{get:f},isEmpty:{value:h},count:{value:p},has:{value:g},get:{value:m},load:{value:v},save:{value:y},delete:{value:b}}))},export:{value:w},import:{value:k},serialize:{value:S},deserialize:{value:E}}))}(),Setting=function(){function e(){if(storage.has("options")){var e=storage.get("options");null!==e&&(window.SugarCube.settings=settings=Object.assign(t(),e)),r(),storage.delete("options")}n(),v.forEach(function(e){if(e.hasOwnProperty("onInit")){var t={name:e.name,value:settings[e.name],default:e.default};e.hasOwnProperty("list")&&(t.list=e.list),e.onInit.call(t)}})}function t(){return Object.create(null)}function r(){var e=t();return Object.keys(settings).length>0&&v.filter(function(e){return e.type!==m.Header&&settings[e.name]!==e.default}).forEach(function(t){return e[t.name]=settings[t.name]}),0===Object.keys(e).length?(storage.delete("settings"),!0):storage.set("settings",e)}function n(){var e=t(),r=storage.get("settings")||t();v.filter(function(e){return e.type!==m.Header}).forEach(function(t){return e[t.name]=t.default}),window.SugarCube.settings=settings=Object.assign(e,r)}function a(){return window.SugarCube.settings=settings=t(),storage.delete("settings"),!0}function i(e){if(0===arguments.length)a(),n();else{if(null==e||!p(e))throw new Error('nonexistent setting "'+e+'"');var t=h(e);t.type!==m.Header&&(settings[e]=t.default)}return r()}function o(e,t){v.forEach(e,t)}function s(e,t,r){if(arguments.length<3){var n=[];throw arguments.length<1&&n.push("type"),arguments.length<2&&n.push("name"),arguments.length<3&&n.push("definition"),new Error("missing parameters, no "+n.join(" or ")+" specified")}if("object"!==(void 0===r?"undefined":_typeof(r)))throw new TypeError("definition parameter must be an object");if(p(t))throw new Error('cannot clobber existing setting "'+t+'"');var a={type:e,name:t,label:"string"==typeof r.label?r.label.trim():""};if("string"==typeof r.desc){var i=r.desc.trim();""!==i&&(a.desc=i)}switch(e){case m.Header:break;case m.Toggle:a.default=!!r.default;break;case m.List:if(!r.hasOwnProperty("list"))throw new Error("no list specified");if(!Array.isArray(r.list))throw new TypeError("list must be an array");if(0===r.list.length)throw new Error("list must not be empty");if(a.list=Object.freeze(r.list),null==r.default)a.default=r.list[0];else{var o=r.list.indexOf(r.default);if(-1===o)throw new Error("list does not contain default");a.default=r.list[o]}break;case m.Range:if(!r.hasOwnProperty("min"))throw new Error("no min specified");if("number"!=typeof r.min||Number.isNaN(r.min)||!Number.isFinite(r.min))throw new TypeError("min must be a finite number");if(!r.hasOwnProperty("max"))throw new Error("no max specified");if("number"!=typeof r.max||Number.isNaN(r.max)||!Number.isFinite(r.max))throw new TypeError("max must be a finite number");if(!r.hasOwnProperty("step"))throw new Error("no step specified");if("number"!=typeof r.step||Number.isNaN(r.step)||!Number.isFinite(r.step)||r.step<=0)throw new TypeError("step must be a finite number greater than zero");var s=function(){var e=String(r.step),t=e.lastIndexOf(".");return-1===t?0:e.length-t-1}();if(function(e){if(s>0){var t=Number(r.min+"e"+s),n=Number(r.step+"e"+s),a=Number(e+"e"+s)-t;return Number(a-a%n+t+"e-"+s)}var i=e-r.min;return i-i%r.step+r.min}(r.max)!==r.max)throw new RangeError("max ("+r.max+") is not a multiple of the step ("+r.step+") plus the min ("+r.min+")");if(a.max=r.max,a.min=r.min,a.step=r.step,null==r.default)a.default=r.max;else{if("number"!=typeof r.default||Number.isNaN(r.default)||!Number.isFinite(r.default))throw new TypeError("default must be a finite number");if(r.default<r.min)throw new RangeError("default ("+r.default+") is less than min ("+r.min+")");if(r.default>r.max)throw new RangeError("default ("+r.default+") is greater than max ("+r.max+")");a.default=r.default}break;default:throw new Error("unknown Setting type: "+e)}"function"==typeof r.onInit&&(a.onInit=Object.freeze(r.onInit)),"function"==typeof r.onChange&&(a.onChange=Object.freeze(r.onChange)),v.push(Object.freeze(a))}function u(e,t){s(m.Header,e,{desc:t})}function l(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.Toggle].concat(t))}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.List].concat(t))}function d(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.Range].concat(t))}function f(){return 0===v.length}function p(e){return v.some(function(t){return t.name===e})}function h(e){return v.find(function(t){return t.name===e})}function g(e){p(e)&&delete settings[e];for(var t=0;t<v.length;++t)if(v[t].name===e){v.splice(t,1),g(e);break}}var m=Util.toEnum({Header:0,Toggle:1,List:2,Range:3}),v=[];return Object.freeze(Object.defineProperties({},{Types:{value:m},init:{value:e},create:{value:t},save:{value:r},load:{value:n},clear:{value:a},reset:{value:i},forEach:{value:o},add:{value:s},addHeader:{value:u},addToggle:{value:l},addList:{value:c},addRange:{value:d},isEmpty:{value:f},has:{value:p},get:{value:h},delete:{value:g}}))}(),Story=function(){function e(){function e(e){if(e.tags.includesAny(n))throw new Error('starting passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return n.includes(e)}).sort().join('", "')+'"')}function t(e){if(a.includes(e.title)&&e.tags.includesAny(n))throw new Error('special passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return n.includes(e)}).sort().join('", "')+'"')}var n=["widget"],a=["PassageDone","PassageFooter","PassageHeader","PassageReady","StoryAuthor","StoryBanner","StoryCaption","StoryInit","StoryMenu","StoryShare","StorySubtitle"],i=jQuery("tw-storydata"),o=i.attr("startnode")||"";Config.passages.start=null,Config.debug=/\bdebug\b/.test(i.attr("options")),i.children("style").each(function(e){v.push(new Passage("tw-user-style-"+e,this))}),i.children("script").each(function(e){m.push(new Passage("tw-user-script-"+e,this))}),i.children('tw-passagedata:not([tags~="Twine.private"],[tags~="annotation"])').each(function(){var r=jQuery(this),n=r.attr("pid")||"",a=new Passage(r.attr("name"),this);n===o&&""!==o?(Config.passages.start=a.title,e(a),g[a.title]=a):a.tags.includes("widget")?y.push(a):(t(a),g[a.title]=a)}),w=i.attr("ifid"),r("asylum"),Config.saves.id=Story.domId}function t(){!function(){var e=document.createElement("style");new StyleWrapper(e).add(v.map(function(e){return e.text.trim()}).join("\n")),jQuery(e).appendTo(document.head).attr({id:"style-story",type:"text/css"})}();for(var e=0;e<m.length;++e)try{Scripting.evalJavaScript(m[e].text)}catch(t){console.error(t),Alert.error(m[e].title,"object"===(void 0===t?"undefined":_typeof(t))?t.message:t)}for(var t=0;t<y.length;++t)try{Wikifier.wikifyEval(y[t].processText())}catch(e){console.error(e),Alert.error(y[t].title,"object"===(void 0===e?"undefined":_typeof(e))?e.message:e)}}function r(e){if(null==e)throw new Error("story title must not be null or undefined");var t=Util.unescape(String(e)).trim();if(""===t)throw new Error("story title must not be empty or consist solely of whitespace");if(document.title=b=t,""===(k=Util.slugify(b)))if(""!==w)k=w;else for(var r=0,n=b.length;r<n;++r){var a=Util.charAndPosAt(b,r),i=a.char,o=a.start,s=a.end;k+=i.codePointAt(0).toString(16),r+=s-o}}function n(){return b}function a(){return k}function i(){return w}function o(e){if(!(e instanceof Passage))throw new TypeError("Story.add passage parameter must be an instance of Passage");var t=e.title;return!g.hasOwnProperty(t)&&(g[t]=e,!0)}function s(e){var t=void 0===e?"undefined":_typeof(e);switch(t){case"number":case"string":return g.hasOwnProperty(String(e));case"undefined":break;case"object":t=null===e?"null":"an object";break;default:t="a "+t}throw new TypeError("Story.has title parameter cannot be "+t)}function u(e){var t=void 0===e?"undefined":_typeof(e);switch(t){case"number":case"string":var r=String(e);return g.hasOwnProperty(r)?g[r]:new Passage(r||"(unknown)");case"undefined":break;case"object":t=null===e?"null":"an object";break;default:t="a "+t}throw new TypeError("Story.get title parameter cannot be "+t)}function l(){return Object.freeze(Object.assign({},g))}function c(){return Object.freeze(Array.from(m))}function d(){return Object.freeze(Array.from(v))}function f(){return Object.freeze(Array.from(y))}function p(e,t){var r=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"title",n=[];return Object.keys(g).forEach(function(r){var a=g[r];"object"===_typeof(a[e])&&null!==a[e]?a[e]instanceof Array&&a[e].some(function(e){return Util.sameValueZero(e,t)})&&n.push(a):Util.sameValueZero(a[e],t)&&n.push(a)}),n.sort(function(e,t){return e[r]==t[r]?0:e[r]<t[r]?-1:1}),n}function h(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"title";if("function"!=typeof e)throw new TypeError("Story.lookupWith predicate parameter must be a function");var r=[];return Object.keys(g).forEach(function(t){var n=g[t];e(n)&&r.push(n)}),r.sort(function(e,r){return e[t]==r[t]?0:e[t]<r[t]?-1:1}),r}var g={},m=[],v=[],y=[],b="",w="",k="";return Object.freeze(Object.defineProperties({},{load:{value:e},init:{value:t},title:{get:n},domId:{get:a},ifId:{get:i},add:{value:o},has:{value:s},get:{value:u},getAllRegular:{value:l},getAllScript:{value:c},getAllStylesheet:{value:d},getAllWidget:{value:f},lookup:{value:p},lookupWith:{value:h}}))}(),UI=function(){function e(e,t){var r=t,n=Config.debug,a=Config.cleanupWikifierOutput;Config.debug=!1,Config.cleanupWikifierOutput=!1;try{null==r&&(r=document.createElement("ul"));var i=document.createDocumentFragment();new Wikifier(i,Story.get(e).processText().trim());var o=[].concat(_toConsumableArray(i.querySelectorAll(".error"))).map(function(e){return e.textContent.replace(errorPrologRegExp,"")});if(o.length>0)throw new Error(o.join("; "));for(;i.hasChildNodes();){var s=i.firstChild;if(s.nodeType===Node.ELEMENT_NODE&&"A"===s.nodeName.toUpperCase()){var u=document.createElement("li");r.appendChild(u),u.appendChild(s)}else i.removeChild(s)}}finally{Config.cleanupWikifierOutput=a,Config.debug=n}return r}function t(e){jQuery(Dialog.setup(L10n.get("alertTitle"),"alert")).append("<p>"+e+'</p><ul class="buttons"><li><button id="alert-ok" class="ui-close">'+L10n.get(["alertOk","ok"])+"</button></li></ul>");for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];Dialog.open.apply(Dialog,r)}function r(){u(),Dialog.open.apply(Dialog,arguments)}function n(){l(),Dialog.open.apply(Dialog,arguments)}function a(){c(),Dialog.open.apply(Dialog,arguments)}function i(){d(),Dialog.open.apply(Dialog,arguments)}function o(){f(),Dialog.open.apply(Dialog,arguments)}function s(){return jQuery(Dialog.setup(L10n.get("autoloadTitle"),"autoload")).append("<p>"+L10n.get("autoloadPrompt")+'</p><ul class="buttons"><li><button id="autoload-ok" class="ui-close">'+L10n.get(["autoloadOk","ok"])+'</button></li><li><button id="autoload-cancel" class="ui-close">'+L10n.get(["autoloadCancel","cancel"])+"</button></li></ul>"),jQuery(document).one("click.autoload",".ui-close",function(e){var t="autoload-ok"===e.target.id;jQuery(document).one(":dialogclosed",function(){t&&Save.autosave.load()||Engine.play(Config.passages.start)})}),!0}function u(){var e=document.createElement("ul");jQuery(Dialog.setup(L10n.get("jumptoTitle"),"jumpto list")).append(e);for(var t=State.expired.length,r=State.size-1;r>=0;--r)if(r!==State.activeIndex){var n=Story.get(State.history[r].title);n&&n.tags.includes("bookmark")&&jQuery(document.createElement("li")).append(jQuery(document.createElement("a")).ariaClick({one:!0},function(e){return function(){return jQuery(document).one(":dialogclosed",function(){return Engine.goTo(e)})}}(r)).addClass("ui-close").text(L10n.get("jumptoTurn")+" "+(t+r+1)+": "+n.description())).appendTo(e)}e.hasChildNodes()||jQuery(e).append("<li><a><em>"+L10n.get("jumptoUnavailable")+"</em></a></li>")}function l(){return jQuery(Dialog.setup(L10n.get("restartTitle"),"restart")).append("<p>"+L10n.get("restartPrompt")+'</p><ul class="buttons"><li><button id="restart-ok">'+L10n.get(["restartOk","ok"])+'</button></li><li><button id="restart-cancel" class="ui-close">'+L10n.get(["restartCancel","cancel"])+"</button></li></ul>").find("#restart-ok").ariaClick({one:!0},function(){jQuery(document).one(":dialogclosed",function(){return Engine.restart()}),Dialog.close()}),!0}function c(){function e(e,t,r,n){var a=jQuery(document.createElement("button")).attr("id","saves-"+e).html(r);return t&&a.addClass(t),n?a.ariaClick(n):a.ariaDisabled(!0),jQuery(document.createElement("li")).append(a)}var r="function"!=typeof Config.saves.isAllowed||Config.saves.isAllowed(),n=jQuery(Dialog.setup(L10n.get("savesTitle"),"saves")),a=Save.ok(),i=Has.fileAPI&&(Config.saves.tryDiskOnMobile||!Browser.isMobile.any());if(a&&n.append(function(){function e(e,t,r,n,a){var i=jQuery(document.createElement("button")).attr("id","saves-"+e+"-"+n).addClass(e).html(r);return t&&i.addClass(t),a?"auto"===n?i.ariaClick({label:r+" "+L10n.get("savesLabelAuto")},function(){return a()}):i.ariaClick({label:r+" "+L10n.get("savesLabelSlot")+" "+(n+1)},function(){return a(n)}):i.ariaDisabled(!0),i}var t=Save.get(),n=jQuery(document.createElement("tbody"));if(Save.autosave.ok()){var a=jQuery(document.createElement("td")),i=jQuery(document.createElement("td")),o=jQuery(document.createElement("td")),s=jQuery(document.createElement("td"));jQuery(document.createElement("b")).attr({title:L10n.get("savesLabelAuto"),"aria-label":L10n.get("savesLabelAuto")}).text("A").appendTo(a),t.autosave?(i.append(e("load","ui-close",L10n.get("savesLabelLoad"),"auto",function(){jQuery(document).one(":dialogclosed",function(){return Save.autosave.load()})})),jQuery(document.createElement("div")).text(t.autosave.title).appendTo(o),jQuery(document.createElement("div")).addClass("datestamp").html(t.autosave.date?""+new Date(t.autosave.date).toLocaleString():"<em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(o),s.append(e("delete",null,L10n.get("savesLabelDelete"),"auto",function(){Save.autosave.delete(),c()}))):(i.append(e("load",null,L10n.get("savesLabelLoad"),"auto")),o.addClass("empty").text("• • •"),s.append(e("delete",null,L10n.get("savesLabelDelete"),"auto"))),jQuery(document.createElement("tr")).append(a).append(i).append(o).append(s).appendTo(n)}for(var u=0,l=t.slots.length;u<l;++u){var d=jQuery(document.createElement("td")),f=jQuery(document.createElement("td")),p=jQuery(document.createElement("td")),h=jQuery(document.createElement("td"));d.append(document.createTextNode(u+1)),t.slots[u]?(f.append(e("load","ui-close",L10n.get("savesLabelLoad"),u,function(e){jQuery(document).one(":dialogclosed",function(){return Save.slots.load(e)})})),jQuery(document.createElement("div")).text(t.slots[u].title).appendTo(p),jQuery(document.createElement("div")).addClass("datestamp").html(t.slots[u].date?""+new Date(t.slots[u].date).toLocaleString():"<em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(p),h.append(e("delete",null,L10n.get("savesLabelDelete"),u,function(e){Save.slots.delete(e),c()}))):(f.append(e("save","ui-close",L10n.get("savesLabelSave"),u,r?Save.slots.save:null)),p.addClass("empty").text("• • •"),h.append(e("delete",null,L10n.get("savesLabelDelete"),u))),jQuery(document.createElement("tr")).append(d).append(f).append(p).append(h).appendTo(n)}return jQuery(document.createElement("table")).attr("id","saves-list").append(n)}()),a||i){var o=jQuery(document.createElement("ul")).addClass("buttons").appendTo(n);return i&&(o.append(e("export","ui-close",L10n.get("savesLabelExport"),r?function(){return Save.export()}:null)),o.append(e("import",null,L10n.get("savesLabelImport"),function(){return n.find("#saves-import-file").trigger("click")})),jQuery(document.createElement("input")).css({display:"block",visibility:"hidden",position:"fixed",left:"-9999px",top:"-9999px",width:"1px",height:"1px"}).attr({type:"file",id:"saves-import-file",tabindex:-1,"aria-hidden":!0}).on("change",function(e){jQuery(document).one(":dialogclosed",function(){return Save.import(e)}),Dialog.close()}).appendTo(n)),a&&o.append(e("clear",null,L10n.get("savesLabelClear"),Save.autosave.has()||!Save.slots.isEmpty()?function(){Save.clear(),c()}:null)),!0}return t(L10n.get("savesIncapable")),!1}function d(){var e=jQuery(Dialog.setup(L10n.get("settingsTitle"),"settings"));return Setting.forEach(function(t){if(t.type===Setting.Types.Header){var r=t.name,n=Util.slugify(r),a=jQuery(document.createElement("div")),i=jQuery(document.createElement("h2"));return a.attr("id","header-body-"+n).append(i).appendTo(e),i.attr("id","header-heading-"+n).wiki(r),void(t.desc&&jQuery(document.createElement("p")).attr("id","header-desc-"+n).wiki(t.desc).appendTo(a))}var o=t.name,s=Util.slugify(o),u=jQuery(document.createElement("div")),l=jQuery(document.createElement("label")),c=jQuery(document.createElement("div")),d=void 0;switch(jQuery(document.createElement("div")).append(l).append(c).appendTo(u),t.desc&&jQuery(document.createElement("p")).attr("id","setting-desc-"+s).wiki(t.desc).appendTo(u),l.attr({id:"setting-label-"+s,for:"setting-control-"+s}).wiki(t.label),null==settings[o]&&(settings[o]=t.default),t.type){case Setting.Types.Toggle:d=jQuery(document.createElement("button")),settings[o]?d.addClass("enabled").text(L10n.get("settingsOn")):d.text(L10n.get("settingsOff")),d.ariaClick(function(){settings[o]?(jQuery(this).removeClass("enabled").text(L10n.get("settingsOff")),settings[o]=!1):(jQuery(this).addClass("enabled").text(L10n.get("settingsOn")),settings[o]=!0),Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:o,value:settings[o],default:t.default})});break;case Setting.Types.List:d=jQuery(document.createElement("select"));for(var f=0,p=t.list.length;f<p;++f)jQuery(document.createElement("option")).val(f).text(t.list[f]).appendTo(d);d.val(t.list.indexOf(settings[o])).attr("tabindex",0).on("change",function(){settings[o]=t.list[Number(this.value)],Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:o,value:settings[o],default:t.default,list:t.list})});break;case Setting.Types.Range:d=jQuery(document.createElement("input")),d.attr({type:"range",min:t.min,max:t.max,step:t.step,value:settings[o],tabindex:0}).on("change input",function(){settings[o]=Number(this.value),Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:o,value:settings[o],default:t.default,min:t.min,max:t.max,step:t.step})}).on("keypress",function(e){13===e.which&&(e.preventDefault(),d.trigger("change"))})}d.attr("id","setting-control-"+s).appendTo(c),u.attr("id","setting-body-"+s).appendTo(e)}),e.append('<ul class="buttons"><li><button id="settings-ok" class="ui-close">'+L10n.get(["settingsOk","ok"])+'</button></li><li><button id="settings-reset">'+L10n.get("settingsReset")+"</button></li></ul>").find("#settings-reset").ariaClick({one:!0},function(){jQuery(document).one(":dialogclosed",function(){Setting.reset(),window.location.reload()}),Dialog.close()}),!0}function f(){try{jQuery(Dialog.setup(L10n.get("shareTitle"),"share list")).append(e("StoryShare"))}catch(e){return console.error(e),Alert.error("StoryShare",e.message),!1}return!0}return Object.freeze(Object.defineProperties({},{assembleLinkList:{value:e},alert:{value:t},jumpto:{value:r},restart:{value:n},saves:{value:a},settings:{value:i},share:{value:o},buildAutoload:{value:s},buildJumpto:{value:u},buildRestart:{value:l},buildSaves:{value:c},buildSettings:{value:d},buildShare:{value:f},stow:{value:function(){return UIBar.stow()}},unstow:{value:function(){return UIBar.unstow()}},setStoryElements:{value:function(){return UIBar.update()}},isOpen:{value:function(){return Dialog.isOpen.apply(Dialog,arguments)}},body:{value:function(){return Dialog.body()}},setup:{value:function(){return Dialog.setup.apply(Dialog,arguments)}},addClickHandler:{value:function(){return Dialog.addClickHandler.apply(Dialog,arguments)}},open:{value:function(){return Dialog.open.apply(Dialog,arguments)}},close:{value:function(){return Dialog.close.apply(Dialog,arguments)}},resize:{value:function(){return Dialog.resize()}},buildDialogAutoload:{value:s},buildDialogJumpto:{value:u},buildDialogRestart:{value:l},buildDialogSaves:{value:c},buildDialogSettings:{value:d},buildDialogShare:{value:f},buildLinkListFromPassage:{value:e}}))}(),UIBar=function(){function e(){c&&(c.hide(),jQuery(document).off(".ui-bar"),jQuery(document.head).find("#style-ui-bar").remove(),c.remove(),c=null)}function t(){return c&&c.hide(),this}function r(){if(!document.getElementById("ui-bar")){var e=function(){var e=L10n.get("uiBarToggle"),t=L10n.get("uiBarBackward"),r=L10n.get("uiBarJumpto"),n=L10n.get("uiBarForward");return jQuery(document.createDocumentFragment()).append('<div id="ui-bar"><div id="ui-bar-tray"><button id="ui-bar-toggle" tabindex="0" title="'+e+'" aria-label="'+e+'"></button><div id="ui-bar-history"><button id="history-backward" tabindex="0" title="'+t+'" aria-label="'+t+'"></button><button id="history-jumpto" tabindex="0" title="'+r+'" aria-label="'+r+'"></button><button id="history-forward" tabindex="0" title="'+n+'" aria-label="'+n+'"></button></div></div><div id="ui-bar-body"><header id="title" role="banner"><div id="story-banner"></div><h1 id="story-title"></h1><div id="story-subtitle"></div><div id="story-title-separator"></div><p id="story-author"></p></header><div id="story-caption"></div><nav id="menu" role="navigation"><ul id="menu-story"></ul><ul id="menu-core"><li id="menu-item-saves"><a tabindex="0">'+L10n.get("savesTitle")+'</a></li><li id="menu-item-settings"><a tabindex="0">'+L10n.get("settingsTitle")+'</a></li><li id="menu-item-restart"><a tabindex="0">'+L10n.get("restartTitle")+'</a></li><li id="menu-item-share"><a tabindex="0">'+L10n.get("shareTitle")+"</a></li></ul></nav></div></div>")}();c=jQuery(e.find("#ui-bar").get(0)),e.insertBefore("body>script#script-sugarcube"),jQuery(document).on(":historyupdate.ui-bar",function(e,t){return function(){e.ariaDisabled(State.length<2),t.ariaDisabled(State.length===State.size)}}(jQuery("#history-backward"),jQuery("#history-forward")))}}function n(){return c&&"none"===c.css("display")}function a(){return c&&c.hasClass("stowed")}function i(){return c&&c.show(),this}function o(){c&&(("boolean"==typeof Config.ui.stowBarInitially?Config.ui.stowBarInitially:jQuery(window).width()<=Config.ui.stowBarInitially)&&s(!0),jQuery("#ui-bar-toggle").ariaClick({label:L10n.get("uiBarToggle")},function(){return c.toggleClass("stowed")}),Config.history.controls?(jQuery("#history-backward").ariaDisabled(State.length<2).ariaClick({label:L10n.get("uiBarBackward")},function(){return Engine.backward()}),Story.lookup("tags","bookmark").length>0?jQuery("#history-jumpto").ariaClick({label:L10n.get("uiBarJumpto")},function(){return UI.jumpto()}):jQuery("#history-jumpto").remove(),jQuery("#history-forward").ariaDisabled(State.length===State.size).ariaClick({label:L10n.get("uiBarForward")},function(){return Engine.forward()})):jQuery("#ui-bar-history").remove(),Story.has("StoryDisplayTitle")?setDisplayTitle(Story.get("StoryDisplayTitle").processText()):jQuery("#story-title").text(Story.title),Story.has("StoryCaption")||jQuery("#story-caption").remove(),Story.has("StoryMenu")||jQuery("#menu-story").remove(),Config.ui.updateStoryElements||l(),jQuery("#menu-item-saves a").ariaClick(function(e){e.preventDefault(),UI.buildSaves(),Dialog.open()}).text(L10n.get("savesTitle")),Setting.isEmpty()?jQuery("#menu-item-settings").remove():jQuery("#menu-item-settings a").ariaClick(function(e){e.preventDefault(),UI.buildSettings(),Dialog.open()}).text(L10n.get("settingsTitle")),jQuery("#menu-item-restart a").ariaClick(function(e){e.preventDefault(),UI.buildRestart(),Dialog.open()}).text(L10n.get("restartTitle")),Story.has("StoryShare")?jQuery("#menu-item-share a").ariaClick(function(e){e.preventDefault(),UI.buildShare(),Dialog.open()}).text(L10n.get("shareTitle")):jQuery("#menu-item-share").remove())}function s(e){if(c&&!c.hasClass("stowed")){var t=void 0;e&&(t=jQuery("#story"),t.addClass("no-transition"),c.addClass("no-transition")),c.addClass("stowed"),e&&setTimeout(function(){t.removeClass("no-transition"),c.removeClass("no-transition")},Engine.minDomActionDelay)}return this}function u(e){if(c&&c.hasClass("stowed")){var t=void 0;e&&(t=jQuery("#story"),t.addClass("no-transition"),c.addClass("no-transition")),c.removeClass("stowed"),e&&setTimeout(function(){t.removeClass("no-transition"),c.removeClass("no-transition")},Engine.minDomActionDelay)}return this}function l(){if(c){setPageElement("story-banner","StoryBanner"),Story.has("StoryDisplayTitle")&&setDisplayTitle(Story.get("StoryDisplayTitle").processText()),setPageElement("story-subtitle","StorySubtitle"),setPageElement("story-author","StoryAuthor"),setPageElement("story-caption","StoryCaption");var e=document.getElementById("menu-story");if(null!==e&&(jQuery(e).empty(),Story.has("StoryMenu")))try{UI.assembleLinkList("StoryMenu",e)}catch(e){console.error(e),Alert.error("StoryMenu",e.message)}}}var c=null;return Object.freeze(Object.defineProperties({},{destroy:{value:e},hide:{value:t},init:{value:r},isHidden:{value:n},isStowed:{value:a},show:{value:i},start:{value:o},stow:{value:s},unstow:{value:u},update:{value:l},setStoryElements:{value:l}}))}(),DebugBar=function(){function e(){var e=L10n.get("debugBarToggle"),t=L10n.get("debugBarAddWatch"),r=L10n.get("debugBarWatchAll"),n=L10n.get("debugBarWatchNone"),a=L10n.get("debugBarWatchToggle"),l=L10n.get("debugBarViewsToggle")
;jQuery(document.createDocumentFragment()).append('<div id="debug-bar"><div id="debug-bar-watch"><div>'+L10n.get("debugBarNoWatches")+'</div>></div><div><button id="debug-bar-watch-toggle" tabindex="0" title="'+a+'" aria-label="'+a+'">'+L10n.get("debugBarLabelWatch")+'</button><label id="debug-bar-watch-label" for="debug-bar-watch-input">'+L10n.get("debugBarLabelAdd")+'</label><input id="debug-bar-watch-input" name="debug-bar-watch-input" type="text" list="debug-bar-watch-list" tabindex="0"><datalist id="debug-bar-watch-list" aria-hidden="true" hidden="hidden"></datalist><button id="debug-bar-watch-add" tabindex="0" title="'+t+'" aria-label="'+t+'"></button><button id="debug-bar-watch-all" tabindex="0" title="'+r+'" aria-label="'+r+'"></button><button id="debug-bar-watch-none" tabindex="0" title="'+n+'" aria-label="'+n+'"></button></div><div><button id="debug-bar-views-toggle" tabindex="0" title="'+l+'" aria-label="'+l+'">'+L10n.get("debugBarLabelViews")+'</button><label id="debug-bar-turn-label" for="debug-bar-turn-select">'+L10n.get("debugBarLabelTurn")+'</label><select id="debug-bar-turn-select" tabindex="0"></select></div><button id="debug-bar-toggle" tabindex="0" title="'+e+'" aria-label="'+e+'"></button></div><div id="debug-bar-hint"></div>').appendTo("body"),P=jQuery("#debug-bar"),_=jQuery(P.find("#debug-bar-watch").get(0)),N=jQuery(P.find("#debug-bar-watch-list").get(0)),D=jQuery(P.find("#debug-bar-turn-select").get(0));var c=jQuery(P.find("#debug-bar-toggle").get(0)),d=jQuery(P.find("#debug-bar-watch-toggle").get(0)),f=jQuery(P.find("#debug-bar-watch-input").get(0)),h=jQuery(P.find("#debug-bar-watch-add").get(0)),g=jQuery(P.find("#debug-bar-watch-all").get(0)),m=jQuery(P.find("#debug-bar-watch-none").get(0)),v=jQuery(P.find("#debug-bar-views-toggle").get(0));c.ariaClick(i),d.ariaClick(p),f.on(":addwatch",function(){o(this.value.trim()),this.value=""}).on("keypress",function(e){13===e.which&&(e.preventDefault(),f.trigger(":addwatch"))}),h.ariaClick(function(){return f.trigger(":addwatch")}),g.ariaClick(s),m.ariaClick(u),D.on("change",function(){Engine.goTo(Number(this.value))}),v.ariaClick(function(){DebugView.toggle(),k()}),jQuery(document).on(":historyupdate.debug-bar",x).on(":passageend.debug-bar",function(){E(),j()}).on(":enginerestart.debug-bar",y),b()||DebugView.enable()}function t(){w(),S(),x(),E(),j()}function r(){return I}function n(){h(),I=!0,k()}function a(){g(),I=!1,k()}function i(){I?a():n()}function o(e){O.test(e)&&(A.pushUnique(e),A.sort(),E(),j(),k())}function s(){Object.keys(State.variables).map(function(e){return A.pushUnique("$"+e)}),Object.keys(State.temporary).map(function(e){return A.pushUnique("_"+e)}),A.sort(),E(),j(),k()}function u(){for(var e=A.length-1;e>=0;--e)A.pop();E(),j(),k()}function l(e){A.delete(e),E(),j(),k()}function c(){m(),k()}function d(){v(),k()}function f(){return!_.attr("hidden")}function p(){_.attr("hidden")?d():c()}function h(){P.css("right","-"+P.outerWidth()+"px")}function g(){P.css("right",0)}function m(){_.attr({"aria-hidden":!0,hidden:"hidden"})}function v(){_.removeAttr("aria-hidden hidden")}function y(){session.delete("debugState")}function b(){return session.has("debugState")}function w(){if(!b())return!1;var e=session.get("debugState");return I=e.stowed,A.push.apply(A,_toConsumableArray(e.watchList)),e.watchEnabled?v():m(),e.viewsEnabled?DebugView.enable():DebugView.disable(),!0}function k(){session.set("debugState",{stowed:I,watchList:A,watchEnabled:f(),viewsEnabled:DebugView.isEnabled()})}function S(){I?n():a()}function E(){if(0===A.length)return void _.empty().append("<div>"+L10n.get("debugBarNoWatches")+"</div>");for(var e=L10n.get("debugBarDeleteWatch"),t=jQuery(document.createElement("table")),r=jQuery(document.createElement("tbody")),n=0,a=A.length;n<a;++n)!function(t,n){var a=A[t],i=a.slice(1),o="$"===a[0]?State.variables:State.temporary,s=jQuery(document.createElement("tr")),u=jQuery(document.createElement("button")),c=jQuery(document.createElement("code"));u.addClass("watch-delete").attr("data-name",a).ariaClick({one:!0,label:e},function(){return l(a)}),c.text(T(o[i])),jQuery(document.createElement("td")).append(u).appendTo(s),jQuery(document.createElement("td")).text(a).appendTo(s),jQuery(document.createElement("td")).append(c).appendTo(s),s.appendTo(r)}(n);t.append(r),_.empty().append(t)}function j(){var e=Object.keys(State.variables),t=Object.keys(State.temporary);if(0===e.length&&0===t.length)return void N.empty();var r=[].concat(_toConsumableArray(e.map(function(e){return"$"+e})),_toConsumableArray(t.map(function(e){return"_"+e}))).sort(),n=document.createDocumentFragment();r.delete(A);for(var a=0,i=r.length;a<i;++a)jQuery(document.createElement("option")).val(r[a]).appendTo(n);N.empty().append(n)}function x(){for(var e=State.size,t=State.expired.length,r=document.createDocumentFragment(),n=0;n<e;++n)jQuery(document.createElement("option")).val(n).text(t+n+1+". "+Util.escape(State.history[n].title)).appendTo(r);D.empty().ariaDisabled(e<2).append(r).val(State.activeIndex)}function T(e){if(null===e)return"null";switch(void 0===e?"undefined":_typeof(e)){case"number":if(Number.isNaN(e))return"NaN";if(!Number.isFinite(e))return"Infinity";case"boolean":case"symbol":case"undefined":return String(e);case"string":return JSON.stringify(e);case"function":return"Function"}var t=Util.toStringTag(e);if("Date"===t)return"Date {"+e.toLocaleString()+"}";if("RegExp"===t)return"RegExp "+e.toString();var r=[];if(e instanceof Array||e instanceof Set){for(var n=e instanceof Array?e:Array.from(e),a=0,i=n.length;a<i;++a)r.push(n.hasOwnProperty(a)?T(n[a]):"<empty>");return Object.keys(n).filter(function(e){return!C.test(e)}).forEach(function(e){return r.push(T(e)+": "+T(n[e]))}),t+"("+n.length+") ["+r.join(", ")+"]"}return e instanceof Map?(e.forEach(function(e,t){return r.push(T(t)+" → "+T(e))}),t+"("+e.size+") {"+r.join(", ")+"}"):(Object.keys(e).forEach(function(t){return r.push(T(t)+": "+T(e[t]))}),t+" {"+r.join(", ")+"}")}var O=new RegExp("^"+Patterns.variable+"$"),C=/^\d+$/,A=[],P=null,_=null,N=null,D=null,I=!0;return Object.freeze(Object.defineProperties({},{init:{value:e},isStowed:{value:r},start:{value:t},stow:{value:n},toggle:{value:i},unstow:{value:a},watch:{value:Object.freeze(Object.defineProperties({},{add:{value:o},all:{value:s},clear:{value:u},delete:{value:l},disable:{value:c},enable:{value:d},isEnabled:{value:f},toggle:{value:p}}))}}))}(),LoadScreen=function(){function e(){jQuery(document).on("readystatechange.SugarCube",function(){o.size>0||("complete"===document.readyState?"loading"===jQuery(document.documentElement).attr("data-init")&&(Config.loadDelay>0?setTimeout(function(){0===o.size&&r()},Math.max(Engine.minDomActionDelay,Config.loadDelay)):r()):n())})}function t(){jQuery(document).off("readystatechange.SugarCube"),o.clear(),r()}function r(){jQuery(document.documentElement).removeAttr("data-init")}function n(){jQuery(document.documentElement).attr("data-init","loading")}function a(){return++s,o.add(s),n(),s}function i(e){if(null==e)throw new Error("LoadScreen.unlock called with a null or undefined ID");o.has(e)&&o.delete(e),0===o.size&&jQuery(document).trigger("readystatechange")}var o=new Set,s=0;return Object.freeze(Object.defineProperties({},{init:{value:e},clear:{value:t},hide:{value:r},show:{value:n},lock:{value:a},unlock:{value:i}}))}(),version=Object.freeze({title:"SugarCube",major:2,minor:34,patch:1,prerelease:null,build:9589,date:new Date("2021-01-18T18:31:16.199Z"),extensions:{},toString:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.major+"."+this.minor+"."+this.patch+e+"+"+this.build},short:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.title+" (v"+this.major+"."+this.minor+"."+this.patch+e+")"},long:function(){return this.title+" v"+this.toString()+" ("+this.date.toUTCString()+")"}}),TempState={},macros={},postdisplay={},postrender={},predisplay={},prehistory={},prerender={},session=null,settings={},setup={},storage=null,browser=Browser,config=Config,has=Has,History=State,state=State,tale=Story,TempVariables=State.temporary;window.SugarCube={},jQuery(function(){try{var e=LoadScreen.lock();LoadScreen.init(),document.normalize&&document.normalize(),Story.load(),storage=SimpleStore.create(Story.domId,!0),session=SimpleStore.create(Story.domId,!1),Dialog.init(),UIBar.init(),Engine.init(),Story.init(),L10n.init(),session.has("rcWarn")||"cookie"!==storage.name||(session.set("rcWarn",1),window.alert(L10n.get("warningNoWebStorage"))),Save.init(),Setting.init(),Macro.init(),Engine.start(),Config.debug&&DebugBar.init();var t=$(window),r=setInterval(function(){t.width()&&(clearInterval(r),UIBar.start(),Config.debug&&DebugBar.start(),jQuery.event.trigger({type:":storyready"}),setTimeout(function(){return LoadScreen.unlock(e)},2*Engine.minDomActionDelay))},Engine.minDomActionDelay);Object.defineProperty(window,"SugarCube",{value:Object.seal(Object.assign(Object.create(null),{Browser:Browser,Config:Config,Dialog:Dialog,Engine:Engine,Fullscreen:Fullscreen,Has:Has,L10n:L10n,Macro:Macro,Passage:Passage,Save:Save,Scripting:Scripting,Setting:Setting,SimpleAudio:SimpleAudio,State:State,Story:Story,UI:UI,UIBar:UIBar,DebugBar:DebugBar,Util:Util,Visibility:Visibility,Wikifier:Wikifier,session:session,settings:settings,setup:setup,storage:storage,version:version}))})}catch(e){return console.error(e),LoadScreen.clear(),Alert.fatal(null,e.message,e)}})}(window,window.document,jQuery);}
</script>
</body>
</html>