html2canvas.min.js

/*!
 * html2canvas 1.0.0-rc.7 <https://html2canvas.hertzen.com>
 * Copyright (c) 2020 Niklas von Hertzen <https://hertzen.com>
 * Released under MIT License
 */
! function(A, e) {
	"object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define &&
		define.amd ? define(e) : (A = A || self).html2canvas = e()
}(this, function() {
	"use strict";
	/*! *****************************************************************************
	    Copyright (c) Microsoft Corporation. All rights reserved.
	    Licensed under the Apache License, Version 2.0 (the "License"); you may not use
	    this file except in compliance with the License. You may obtain a copy of the
	    License at http://www.apache.org/licenses/LICENSE-2.0

	    THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
	    KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
	    WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
	    MERCHANTABLITY OR NON-INFRINGEMENT.

	    See the Apache Version 2.0 License for specific language governing permissions
	    and limitations under the License.
	    ***************************************************************************** */
	var r = function(A, e) {
		return (r = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array && function(A, e) {
				A.__proto__ = e
			} || function(A, e) {
				for (var t in e) e.hasOwnProperty(t) && (A[t] = e[t])
			})(A, e)
	};

	function A(A, e) {
		function t() {
			this.constructor = A
		}
		r(A, e), A.prototype = null === e ? Object.create(e) : (t.prototype = e.prototype, new t)
	}
	var K = function() {
		return (K = Object.assign || function(A) {
			for (var e, t = 1, r = arguments.length; t < r; t++)
				for (var n in e = arguments[t]) Object.prototype.hasOwnProperty.call(e, n) && (A[n] = e[
					n]);
			return A
		}).apply(this, arguments)
	};

	function a(B, s, o, i) {
		return new(o || (o = Promise))(function(A, e) {
			function t(A) {
				try {
					n(i.next(A))
				} catch (A) {
					e(A)
				}
			}

			function r(A) {
				try {
					n(i.throw(A))
				} catch (A) {
					e(A)
				}
			}

			function n(e) {
				e.done ? A(e.value) : new o(function(A) {
					A(e.value)
				}).then(t, r)
			}
			n((i = i.apply(B, s || [])).next())
		})
	}

	function S(t, r) {
		var n, B, s, A, o = {
			label: 0,
			sent: function() {
				if (1 & s[0]) throw s[1];
				return s[1]
			},
			trys: [],
			ops: []
		};
		return A = {
			next: e(0),
			throw: e(1),
			return: e(2)
		}, "function" == typeof Symbol && (A[Symbol.iterator] = function() {
			return this
		}), A;

		function e(e) {
			return function(A) {
				return function(e) {
					if (n) throw new TypeError("Generator is already executing.");
					for (; o;) try {
						if (n = 1, B && (s = 2 & e[0] ? B.return : e[0] ? B.throw || ((s = B.return) &&
								s.call(B), 0) : B.next) && !(s = s.call(B, e[1])).done) return s;
						switch (B = 0, s && (e = [2 & e[0], s.value]), e[0]) {
							case 0:
							case 1:
								s = e;
								break;
							case 4:
								return o.label++, {
									value: e[1],
									done: !1
								};
							case 5:
								o.label++, B = e[1], e = [0];
								continue;
							case 7:
								e = o.ops.pop(), o.trys.pop();
								continue;
							default:
								if (!(s = 0 < (s = o.trys).length && s[s.length - 1]) && (6 === e[0] ||
										2 === e[0])) {
									o = 0;
									continue
								}
								if (3 === e[0] && (!s || e[1] > s[0] && e[1] < s[3])) {
									o.label = e[1];
									break
								}
								if (6 === e[0] && o.label < s[1]) {
									o.label = s[1], s = e;
									break
								}
								if (s && o.label < s[2]) {
									o.label = s[2], o.ops.push(e);
									break
								}
								s[2] && o.ops.pop(), o.trys.pop();
								continue
						}
						e = r.call(t, o)
					} catch (A) {
						e = [6, A], B = 0
					} finally {
						n = s = 0
					}
					if (5 & e[0]) throw e[1];
					return {
						value: e[0] ? e[1] : void 0,
						done: !0
					}
				}([e, A])
			}
		}
	}
	var I = (n.prototype.add = function(A, e, t, r) {
		return new n(this.left + A, this.top + e, this.width + t, this.height + r)
	}, n.fromClientRect = function(A) {
		return new n(A.left, A.top, A.width, A.height)
	}, n);

	function n(A, e, t, r) {
		this.left = A, this.top = e, this.width = t, this.height = r
	}
	for (var T = function(A) {
				return I.fromClientRect(A.getBoundingClientRect())
			}, c = function(A) {
				for (var e = [], t = 0, r = A.length; t < r;) {
					var n = A.charCodeAt(t++);
					if (55296 <= n && n <= 56319 && t < r) {
						var B = A.charCodeAt(t++);
						56320 == (64512 & B) ? e.push(((1023 & n) << 10) + (1023 & B) + 65536) : (e.push(n), t--)
					} else e.push(n)
				}
				return e
			}, l = function() {
				for (var A = [], e = 0; e < arguments.length; e++) A[e] = arguments[e];
				if (String.fromCodePoint) return String.fromCodePoint.apply(String, A);
				var t = A.length;
				if (!t) return "";
				for (var r = [], n = -1, B = ""; ++n < t;) {
					var s = A[n];
					s <= 65535 ? r.push(s) : (s -= 65536, r.push(55296 + (s >> 10), s % 1024 + 56320)), (n + 1 ===
						t || 16384 < r.length) && (B += String.fromCharCode.apply(String, r), r.length = 0)
				}
				return B
			}, e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", Q = "undefined" ==
			typeof Uint8Array ? [] : new Uint8Array(256), t = 0; t < e.length; t++) Q[e.charCodeAt(t)] = t;

	function B(A, e, t) {
		return A.slice ? A.slice(e, t) : new Uint16Array(Array.prototype.slice.call(A, e, t))
	}
	var s = (o.prototype.get = function(A) {
		var e;
		if (0 <= A) {
			if (A < 55296 || 56319 < A && A <= 65535) return e = ((e = this.index[A >> 5]) << 2) + (31 & A),
				this.data[e];
			if (A <= 65535) return e = ((e = this.index[2048 + (A - 55296 >> 5)]) << 2) + (31 & A), this
				.data[e];
			if (A < this.highStart) return e = 2080 + (A >> 11), e = this.index[e], e += A >> 5 & 63, e = ((
				e = this.index[e]) << 2) + (31 & A), this.data[e];
			if (A <= 1114111) return this.data[this.highValueIndex]
		}
		return this.errorValue
	}, o);

	function o(A, e, t, r, n, B) {
		this.initialValue = A, this.errorValue = e, this.highStart = t, this.highValueIndex = r, this.index = n,
			this.data = B
	}

	function C(A, e, t, r) {
		var n = r[t];
		if (Array.isArray(A) ? -1 !== A.indexOf(n) : A === n)
			for (var B = t; B <= r.length;) {
				if ((i = r[++B]) === e) return !0;
				if (i !== H) break
			}
		if (n === H)
			for (B = t; 0 < B;) {
				var s = r[--B];
				if (Array.isArray(A) ? -1 !== A.indexOf(s) : A === s)
					for (var o = t; o <= r.length;) {
						var i;
						if ((i = r[++o]) === e) return !0;
						if (i !== H) break
					}
				if (s !== H) break
			}
		return !1
	}

	function g(A, e) {
		for (var t = A; 0 <= t;) {
			var r = e[t];
			if (r !== H) return r;
			t--
		}
		return 0
	}

	function w(A, e, t, r, n) {
		if (0 === t[r]) return Y;
		var B = r - 1;
		if (Array.isArray(n) && !0 === n[B]) return Y;
		var s = B - 1,
			o = 1 + B,
			i = e[B],
			a = 0 <= s ? e[s] : 0,
			c = e[o];
		if (2 === i && 3 === c) return Y;
		if (-1 !== j.indexOf(i)) return "!";
		if (-1 !== j.indexOf(c)) return Y;
		if (-1 !== $.indexOf(c)) return Y;
		if (8 === g(B, e)) return "÷";
		if (11 === q.get(A[B]) && (c === X || c === P || c === x)) return Y;
		if (7 === i || 7 === c) return Y;
		if (9 === i) return Y;
		if (-1 === [H, d, f].indexOf(i) && 9 === c) return Y;
		if (-1 !== [p, N, m, v, y].indexOf(c)) return Y;
		if (g(B, e) === O) return Y;
		if (C(23, O, B, e)) return Y;
		if (C([p, N], L, B, e)) return Y;
		if (C(12, 12, B, e)) return Y;
		if (i === H) return "÷";
		if (23 === i || 23 === c) return Y;
		if (16 === c || 16 === i) return "÷";
		if (-1 !== [d, f, L].indexOf(c) || 14 === i) return Y;
		if (36 === a && -1 !== rA.indexOf(i)) return Y;
		if (i === y && 36 === c) return Y;
		if (c === R && -1 !== Z.concat(R, m, D, X, P, x).indexOf(i)) return Y;
		if (-1 !== Z.indexOf(c) && i === D || -1 !== Z.indexOf(i) && c === D) return Y;
		if (i === M && -1 !== [X, P, x].indexOf(c) || -1 !== [X, P, x].indexOf(i) && c === b) return Y;
		if (-1 !== Z.indexOf(i) && -1 !== AA.indexOf(c) || -1 !== AA.indexOf(i) && -1 !== Z.indexOf(c)) return Y;
		if (-1 !== [M, b].indexOf(i) && (c === D || -1 !== [O, f].indexOf(c) && e[1 + o] === D) || -1 !== [O, f]
			.indexOf(i) && c === D || i === D && -1 !== [D, y, v].indexOf(c)) return Y;
		if (-1 !== [D, y, v, p, N].indexOf(c))
			for (var Q = B; 0 <= Q;) {
				if ((w = e[Q]) === D) return Y;
				if (-1 === [y, v].indexOf(w)) break;
				Q--
			}
		if (-1 !== [M, b].indexOf(c))
			for (Q = -1 !== [p, N].indexOf(i) ? s : B; 0 <= Q;) {
				var w;
				if ((w = e[Q]) === D) return Y;
				if (-1 === [y, v].indexOf(w)) break;
				Q--
			}
		if (J === i && -1 !== [J, G, V, z].indexOf(c) || -1 !== [G, V].indexOf(i) && -1 !== [G, k].indexOf(c) || -
			1 !== [k, z].indexOf(i) && c === k) return Y;
		if (-1 !== tA.indexOf(i) && -1 !== [R, b].indexOf(c) || -1 !== tA.indexOf(c) && i === M) return Y;
		if (-1 !== Z.indexOf(i) && -1 !== Z.indexOf(c)) return Y;
		if (i === v && -1 !== Z.indexOf(c)) return Y;
		if (-1 !== Z.concat(D).indexOf(i) && c === O || -1 !== Z.concat(D).indexOf(c) && i === N) return Y;
		if (41 === i && 41 === c) {
			for (var u = t[B], U = 1; 0 < u && 41 === e[--u];) U++;
			if (U % 2 != 0) return Y
		}
		return i === P && c === x ? Y : "÷"
	}

	function u(t, A) {
		A || (A = {
			lineBreak: "normal",
			wordBreak: "normal"
		});
		var e = function(A, n) {
				void 0 === n && (n = "strict");
				var B = [],
					s = [],
					o = [];
				return A.forEach(function(A, e) {
					var t = q.get(A);
					if (50 < t ? (o.push(!0), t -= 50) : o.push(!1), -1 !== ["normal", "auto", "loose"]
						.indexOf(n) && -1 !== [8208, 8211, 12316, 12448].indexOf(A)) return s.push(e), B
						.push(16);
					if (4 !== t && 11 !== t) return s.push(e), 31 === t ? B.push("strict" === n ? L : X) :
						t === W ? B.push(_) : 29 === t ? B.push(_) : 43 === t ? 131072 <= A && A <=
						196605 || 196608 <= A && A <= 262141 ? B.push(X) : B.push(_) : void B.push(t);
					if (0 === e) return s.push(e), B.push(_);
					var r = B[e - 1];
					return -1 === eA.indexOf(r) ? (s.push(s[e - 1]), B.push(r)) : (s.push(e), B.push(_))
				}), [s, B, o]
			}(t, A.lineBreak),
			r = e[0],
			n = e[1],
			B = e[2];
		return "break-all" !== A.wordBreak && "break-word" !== A.wordBreak || (n = n.map(function(A) {
			return -1 !== [D, _, W].indexOf(A) ? X : A
		})), [r, n, "keep-all" === A.wordBreak ? B.map(function(A, e) {
			return A && 19968 <= t[e] && t[e] <= 40959
		}) : void 0]
	}
	var i, U, E, F, h, H = 10,
		d = 13,
		f = 15,
		p = 17,
		N = 18,
		m = 19,
		R = 20,
		L = 21,
		O = 22,
		v = 24,
		D = 25,
		b = 26,
		M = 27,
		y = 28,
		_ = 30,
		P = 32,
		x = 33,
		V = 34,
		z = 35,
		X = 37,
		J = 38,
		G = 39,
		k = 40,
		W = 42,
		Y = "×",
		q = (i = function(A) {
				var e, t, r, n, B, s = .75 * A.length,
					o = A.length,
					i = 0;
				"=" === A[A.length - 1] && (s--, "=" === A[A.length - 2] && s--);
				var a = "undefined" != typeof ArrayBuffer && "undefined" != typeof Uint8Array && void 0 !==
					Uint8Array.prototype.slice ? new ArrayBuffer(s) : new Array(s),
					c = Array.isArray(a) ? a : new Uint8Array(a);
				for (e = 0; e < o; e += 4) t = Q[A.charCodeAt(e)], r = Q[A.charCodeAt(e + 1)], n = Q[A.charCodeAt(
						e + 2)], B = Q[A.charCodeAt(e + 3)], c[i++] = t << 2 | r >> 4, c[i++] = (15 & r) << 4 | n >>
					2, c[i++] = (3 & n) << 6 | 63 & B;
				return a
			}(
				"KwAAAAAAAAAACA4AIDoAAPAfAAACAAAAAAAIABAAGABAAEgAUABYAF4AZgBeAGYAYABoAHAAeABeAGYAfACEAIAAiACQAJgAoACoAK0AtQC9AMUAXgBmAF4AZgBeAGYAzQDVAF4AZgDRANkA3gDmAOwA9AD8AAQBDAEUARoBIgGAAIgAJwEvATcBPwFFAU0BTAFUAVwBZAFsAXMBewGDATAAiwGTAZsBogGkAawBtAG8AcIBygHSAdoB4AHoAfAB+AH+AQYCDgIWAv4BHgImAi4CNgI+AkUCTQJTAlsCYwJrAnECeQKBAk0CiQKRApkCoQKoArACuALAAsQCzAIwANQC3ALkAjAA7AL0AvwCAQMJAxADGAMwACADJgMuAzYDPgOAAEYDSgNSA1IDUgNaA1oDYANiA2IDgACAAGoDgAByA3YDfgOAAIQDgACKA5IDmgOAAIAAogOqA4AAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAK8DtwOAAIAAvwPHA88D1wPfAyAD5wPsA/QD/AOAAIAABAQMBBIEgAAWBB4EJgQuBDMEIAM7BEEEXgBJBCADUQRZBGEEaQQwADAAcQQ+AXkEgQSJBJEEgACYBIAAoASoBK8EtwQwAL8ExQSAAIAAgACAAIAAgACgAM0EXgBeAF4AXgBeAF4AXgBeANUEXgDZBOEEXgDpBPEE+QQBBQkFEQUZBSEFKQUxBTUFPQVFBUwFVAVcBV4AYwVeAGsFcwV7BYMFiwWSBV4AmgWgBacFXgBeAF4AXgBeAKsFXgCyBbEFugW7BcIFwgXIBcIFwgXQBdQF3AXkBesF8wX7BQMGCwYTBhsGIwYrBjMGOwZeAD8GRwZNBl4AVAZbBl4AXgBeAF4AXgBeAF4AXgBeAF4AXgBeAGMGXgBqBnEGXgBeAF4AXgBeAF4AXgBeAF4AXgB5BoAG4wSGBo4GkwaAAIADHgR5AF4AXgBeAJsGgABGA4AAowarBrMGswagALsGwwbLBjAA0wbaBtoG3QbaBtoG2gbaBtoG2gblBusG8wb7BgMHCwcTBxsHCwcjBysHMAc1BzUHOgdCB9oGSgdSB1oHYAfaBloHaAfaBlIH2gbaBtoG2gbaBtoG2gbaBjUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHbQdeAF4ANQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQd1B30HNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B4MH2gaKB68EgACAAIAAgACAAIAAgACAAI8HlwdeAJ8HpweAAIAArwe3B14AXgC/B8UHygcwANAH2AfgB4AA6AfwBz4B+AcACFwBCAgPCBcIogEYAR8IJwiAAC8INwg/CCADRwhPCFcIXwhnCEoDGgSAAIAAgABvCHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIhAiLCI4IMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAANQc1BzUHNQc1BzUHNQc1BzUHNQc1B54INQc1B6II2gaqCLIIugiAAIAAvgjGCIAAgACAAIAAgACAAIAAgACAAIAAywiHAYAA0wiAANkI3QjlCO0I9Aj8CIAAgACAAAIJCgkSCRoJIgknCTYHLwk3CZYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiAAIAAAAFAAXgBeAGAAcABeAHwAQACQAKAArQC9AJ4AXgBeAE0A3gBRAN4A7AD8AMwBGgEAAKcBNwEFAUwBXAF4QkhCmEKnArcCgAHHAsABz4LAAcABwAHAAd+C6ABoAG+C/4LAAcABwAHAAc+DF4MAAcAB54M3gweDV4Nng3eDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEeDqABVg6WDqABoQ6gAaABoAHXDvcONw/3DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DncPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB7cPPwlGCU4JMACAAIAAgABWCV4JYQmAAGkJcAl4CXwJgAkwADAAMAAwAIgJgACLCZMJgACZCZ8JowmrCYAAswkwAF4AXgB8AIAAuwkABMMJyQmAAM4JgADVCTAAMAAwADAAgACAAIAAgACAAIAAgACAAIAAqwYWBNkIMAAwADAAMADdCeAJ6AnuCR4E9gkwAP4JBQoNCjAAMACAABUK0wiAAB0KJAosCjQKgAAwADwKQwqAAEsKvQmdCVMKWwowADAAgACAALcEMACAAGMKgABrCjAAMAAwADAAMAAwADAAMAAwADAAMAAeBDAAMAAwADAAMAAwADAAMAAwADAAMAAwAIkEPQFzCnoKiQSCCooKkAqJBJgKoAqkCokEGAGsCrQKvArBCjAAMADJCtEKFQHZCuEK/gHpCvEKMAAwADAAMACAAIwE+QowAIAAPwEBCzAAMAAwADAAMACAAAkLEQswAIAAPwEZCyELgAAOCCkLMAAxCzkLMAAwADAAMAAwADAAXgBeAEELMAAwADAAMAAwADAAMAAwAEkLTQtVC4AAXAtkC4AAiQkwADAAMAAwADAAMAAwADAAbAtxC3kLgAuFC4sLMAAwAJMLlwufCzAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAApwswADAAMACAAIAAgACvC4AAgACAAIAAgACAALcLMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAvwuAAMcLgACAAIAAgACAAIAAyguAAIAAgACAAIAA0QswADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAANkLgACAAIAA4AswADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACJCR4E6AswADAAhwHwC4AA+AsADAgMEAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMACAAIAAGAwdDCUMMAAwAC0MNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQw1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHPQwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADUHNQc1BzUHNQc1BzUHNQc2BzAAMAA5DDUHNQc1BzUHNQc1BzUHNQc1BzUHNQdFDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAgACAAIAATQxSDFoMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAF4AXgBeAF4AXgBeAF4AYgxeAGoMXgBxDHkMfwxeAIUMXgBeAI0MMAAwADAAMAAwAF4AXgCVDJ0MMAAwADAAMABeAF4ApQxeAKsMswy7DF4Awgy9DMoMXgBeAF4AXgBeAF4AXgBeAF4AXgDRDNkMeQBqCeAM3Ax8AOYM7Az0DPgMXgBeAF4AXgBeAF4AXgBeAF4AXgBeAF4AXgBeAF4AXgCgAAANoAAHDQ4NFg0wADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAeDSYNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIAAgACAAIAAgACAAC4NMABeAF4ANg0wADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAD4NRg1ODVYNXg1mDTAAbQ0wADAAMAAwADAAMAAwADAA2gbaBtoG2gbaBtoG2gbaBnUNeg3CBYANwgWFDdoGjA3aBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gaUDZwNpA2oDdoG2gawDbcNvw3HDdoG2gbPDdYN3A3fDeYN2gbsDfMN2gbaBvoN/g3aBgYODg7aBl4AXgBeABYOXgBeACUG2gYeDl4AJA5eACwO2w3aBtoGMQ45DtoG2gbaBtoGQQ7aBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gZJDjUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B1EO2gY1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQdZDjUHNQc1BzUHNQc1B2EONQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHaA41BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B3AO2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gY1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B2EO2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gZJDtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBkkOeA6gAKAAoAAwADAAMAAwAKAAoACgAKAAoACgAKAAgA4wADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAD//wQABAAEAAQABAAEAAQABAAEAA0AAwABAAEAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAKABMAFwAeABsAGgAeABcAFgASAB4AGwAYAA8AGAAcAEsASwBLAEsASwBLAEsASwBLAEsAGAAYAB4AHgAeABMAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAFgAbABIAHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYADQARAB4ABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkAFgAaABsAGwAbAB4AHQAdAB4ATwAXAB4ADQAeAB4AGgAbAE8ATwAOAFAAHQAdAB0ATwBPABcATwBPAE8AFgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwArAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAAQABAANAA0ASwBLAEsASwBLAEsASwBLAEsASwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUAArACsABABQAAQABAAEAAQABAAEAAQAKwArAAQABAArACsABAAEAAQAUAArACsAKwArACsAKwArACsABAArACsAKwArAFAAUAArAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAGgAaAFAAUABQAFAAUABMAB4AGwBQAB4AKwArACsABAAEAAQAKwBQAFAAUABQAFAAUAArACsAKwArAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUAArAFAAUAArACsABAArAAQABAAEAAQABAArACsAKwArAAQABAArACsABAAEAAQAKwArACsABAArACsAKwArACsAKwArAFAAUABQAFAAKwBQACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwAEAAQAUABQAFAABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUAArACsABABQAAQABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQAKwArAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwAeABsAKwArACsAKwArACsAKwBQAAQABAAEAAQABAAEACsABAAEAAQAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwArAAQABAArACsABAAEAAQAKwArACsAKwArACsAKwArAAQABAArACsAKwArAFAAUAArAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwAeAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwAEAFAAKwBQAFAAUABQAFAAUAArACsAKwBQAFAAUAArAFAAUABQAFAAKwArACsAUABQACsAUAArAFAAUAArACsAKwBQAFAAKwArACsAUABQAFAAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQAKwArACsABAAEAAQAKwAEAAQABAAEACsAKwBQACsAKwArACsAKwArAAQAKwArACsAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAB4AHgAeAB4AHgAeABsAHgArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABAArACsAKwArACsAKwArAAQABAArAFAAUABQACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAB4AUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABAArACsAKwArACsAKwArAAQABAArACsAKwArACsAKwArAFAAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwArAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAKwBcAFwAKwBcACsAKwBcACsAKwArACsAKwArAFwAXABcAFwAKwBcAFwAXABcAFwAXABcACsAXABcAFwAKwBcACsAXAArACsAXABcACsAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgArACoAKgBcACsAKwBcAFwAXABcAFwAKwBcACsAKgAqACoAKgAqACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAFwAXABcAFwAUAAOAA4ADgAOAB4ADgAOAAkADgAOAA0ACQATABMAEwATABMACQAeABMAHgAeAB4ABAAEAB4AHgAeAB4AHgAeAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUAANAAQAHgAEAB4ABAAWABEAFgARAAQABABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAAQABAAEAAQABAANAAQABABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsADQANAB4AHgAeAB4AHgAeAAQAHgAeAB4AHgAeAB4AKwAeAB4ADgAOAA0ADgAeAB4AHgAeAB4ACQAJACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgAeAB4AHgBcAFwAXABcAFwAXAAqACoAKgAqAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAKgAqACoAKgAqACoAKgBcAFwAXAAqACoAKgAqAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAXAAqAEsASwBLAEsASwBLAEsASwBLAEsAKgAqACoAKgAqACoAUABQAFAAUABQAFAAKwBQACsAKwArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQACsAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwAEAAQABAAeAA0AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAEQArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAADQANAA0AUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAA0ADQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoADQANABUAXAANAB4ADQAbAFwAKgArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAB4AHgATABMADQANAA4AHgATABMAHgAEAAQABAAJACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAUABQAFAAUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwAeACsAKwArABMAEwBLAEsASwBLAEsASwBLAEsASwBLAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwBcAFwAXABcAFwAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcACsAKwArACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwAeAB4AXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgArACsABABLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKgAqACoAKgAqACoAKgBcACoAKgAqACoAKgAqACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAUABQAFAAUABQAFAAUAArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4ADQANAA0ADQAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAHgAeAB4AHgBQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwANAA0ADQANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwBQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsABAAEAAQAHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAABABQAFAAUABQAAQABAAEAFAAUAAEAAQABAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAKwBQACsAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAKwArAB4AHgAeAB4AHgAeACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAUABQAFAAKwAeAB4AHgAeAB4AHgAeAA4AHgArAA0ADQANAA0ADQANAA0ACQANAA0ADQAIAAQACwAEAAQADQAJAA0ADQAMAB0AHQAeABcAFwAWABcAFwAXABYAFwAdAB0AHgAeABQAFAAUAA0AAQABAAQABAAEAAQABAAJABoAGgAaABoAGgAaABoAGgAeABcAFwAdABUAFQAeAB4AHgAeAB4AHgAYABYAEQAVABUAFQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgANAB4ADQANAA0ADQAeAA0ADQANAAcAHgAeAB4AHgArAAQABAAEAAQABAAEAAQABAAEAAQAUABQACsAKwBPAFAAUABQAFAAUAAeAB4AHgAWABEATwBQAE8ATwBPAE8AUABQAFAAUABQAB4AHgAeABYAEQArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAGwAbABsAGwAbABsAGwAaABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAaABsAGwAbABsAGgAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgBQABoAHgAdAB4AUAAeABoAHgAeAB4AHgAeAB4AHgAeAB4ATwAeAFAAGwAeAB4AUABQAFAAUABQAB4AHgAeAB0AHQAeAFAAHgBQAB4AUAAeAFAATwBQAFAAHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AUABQAFAAUABPAE8AUABQAFAAUABQAE8AUABQAE8AUABPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAE8ATwBPAE8ATwBPAE8ATwBPAE8AUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAATwAeAB4AKwArACsAKwAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB0AHQAeAB4AHgAdAB0AHgAeAB0AHgAeAB4AHQAeAB0AGwAbAB4AHQAeAB4AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB0AHgAdAB4AHQAdAB0AHQAdAB0AHgAdAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAdAB0AHQAdAB4AHgAdAB0AHgAeAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABQAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAlACUAHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBQAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAeAB4AHgAeAB0AHQAeAB4AHgAeAB0AHQAdAB4AHgAdAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB0AHQAeAB4AHQAeAB4AHgAeAB0AHQAeAB4AHgAeACUAJQAdAB0AJQAeACUAJQAlACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAHgAeAB4AHgAdAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHQAdAB0AHgAdACUAHQAdAB4AHQAdAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHQAdAB0AHQAlAB4AJQAlACUAHQAlACUAHQAdAB0AJQAlAB0AHQAlAB0AHQAlACUAJQAeAB0AHgAeAB4AHgAdAB0AJQAdAB0AHQAdAB0AHQAlACUAJQAlACUAHQAlACUAIAAlAB0AHQAlACUAJQAlACUAJQAlACUAHgAeAB4AJQAlACAAIAAgACAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeABcAFwAXABcAFwAXAB4AEwATACUAHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwArACUAJQBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAKwArACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAE8ATwBPAE8ATwBPAE8ATwAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeACsAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUAArACsAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQBQAFAAUABQACsAKwArACsAUABQAFAAUABQAFAAUABQAA0AUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQACsAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgBQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAABAAEAAQAKwAEAAQAKwArACsAKwArAAQABAAEAAQAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsABAAEAAQAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsADQANAA0ADQANAA0ADQANAB4AKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AUABQAFAAUABQAFAAUABQAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAUABQAFAAUABQAA0ADQANAA0ADQANABQAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwANAA0ADQANAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAeAAQABAAEAB4AKwArAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLACsADQArAB4AKwArAAQABAAEAAQAUABQAB4AUAArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwAEAAQABAAEAAQABAAEAAQABAAOAA0ADQATABMAHgAeAB4ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0AUABQAFAAUAAEAAQAKwArAAQADQANAB4AUAArACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXABcAA0ADQANACoASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUAArACsAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANACsADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEcARwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQACsAKwAeAAQABAANAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAEAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUAArACsAUAArACsAUABQACsAKwBQAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AKwArAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAeAB4ADQANAA0ADQAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAArAAQABAArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAEAAQABAAEAAQABAAEACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAFgAWAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAKwBQACsAKwArACsAKwArAFAAKwArACsAKwBQACsAUAArAFAAKwBQAFAAUAArAFAAUAArAFAAKwArAFAAKwBQACsAUAArAFAAKwBQACsAUABQACsAUAArACsAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAUABQAFAAUAArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUAArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAlACUAJQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeACUAJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeACUAJQAlACUAJQAeACUAJQAlACUAJQAgACAAIAAlACUAIAAlACUAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIQAhACEAIQAhACUAJQAgACAAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAgACAAIAAlACUAJQAlACAAJQAgACAAIAAgACAAIAAgACAAIAAlACUAJQAgACUAJQAlACUAIAAgACAAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeACUAHgAlAB4AJQAlACUAJQAlACAAJQAlACUAJQAeACUAHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAgACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAlACUAJQAlACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAIAAgACAAJQAlACUAIAAgACAAIAAgAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFwAXABcAFQAVABUAHgAeAB4AHgAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAgACAAJQAlACUAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAlACAAIAAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsA"),
			U = Array.isArray(i) ? function(A) {
				for (var e = A.length, t = [], r = 0; r < e; r += 4) t.push(A[r + 3] << 24 | A[r + 2] << 16 | A[r +
					1] << 8 | A[r]);
				return t
			}(i) : new Uint32Array(i), E = Array.isArray(i) ? function(A) {
				for (var e = A.length, t = [], r = 0; r < e; r += 2) t.push(A[r + 1] << 8 | A[r]);
				return t
			}(i) : new Uint16Array(i), F = B(E, 12, U[4] / 2), h = 2 === U[5] ? B(E, (24 + U[4]) / 2) : function(A,
				e, t) {
				return A.slice ? A.slice(e, t) : new Uint32Array(Array.prototype.slice.call(A, e, t))
			}(U, Math.ceil((24 + U[4]) / 4)), new s(U[0], U[1], U[2], U[3], F, h)),
		Z = [_, 36],
		j = [1, 2, 3, 5],
		$ = [H, 8],
		AA = [M, b],
		eA = j.concat($),
		tA = [J, G, k, V, z],
		rA = [f, d],
		nA = (BA.prototype.slice = function() {
			return l.apply(void 0, this.codePoints.slice(this.start, this.end))
		}, BA);

	function BA(A, e, t, r) {
		this.codePoints = A, this.required = "!" === e, this.start = t, this.end = r
	}
	var sA, oA;
	(oA = sA || (sA = {}))[oA.STRING_TOKEN = 0] = "STRING_TOKEN", oA[oA.BAD_STRING_TOKEN = 1] = "BAD_STRING_TOKEN",
		oA[oA.LEFT_PARENTHESIS_TOKEN = 2] = "LEFT_PARENTHESIS_TOKEN", oA[oA.RIGHT_PARENTHESIS_TOKEN = 3] =
		"RIGHT_PARENTHESIS_TOKEN", oA[oA.COMMA_TOKEN = 4] = "COMMA_TOKEN", oA[oA.HASH_TOKEN = 5] = "HASH_TOKEN", oA[
			oA.DELIM_TOKEN = 6] = "DELIM_TOKEN", oA[oA.AT_KEYWORD_TOKEN = 7] = "AT_KEYWORD_TOKEN", oA[oA
			.PREFIX_MATCH_TOKEN = 8] = "PREFIX_MATCH_TOKEN", oA[oA.DASH_MATCH_TOKEN = 9] = "DASH_MATCH_TOKEN", oA[oA
			.INCLUDE_MATCH_TOKEN = 10] = "INCLUDE_MATCH_TOKEN", oA[oA.LEFT_CURLY_BRACKET_TOKEN = 11] =
		"LEFT_CURLY_BRACKET_TOKEN", oA[oA.RIGHT_CURLY_BRACKET_TOKEN = 12] = "RIGHT_CURLY_BRACKET_TOKEN", oA[oA
			.SUFFIX_MATCH_TOKEN = 13] = "SUFFIX_MATCH_TOKEN", oA[oA.SUBSTRING_MATCH_TOKEN = 14] =
		"SUBSTRING_MATCH_TOKEN", oA[oA.DIMENSION_TOKEN = 15] = "DIMENSION_TOKEN", oA[oA.PERCENTAGE_TOKEN = 16] =
		"PERCENTAGE_TOKEN", oA[oA.NUMBER_TOKEN = 17] = "NUMBER_TOKEN", oA[oA.FUNCTION = 18] = "FUNCTION", oA[oA
			.FUNCTION_TOKEN = 19] = "FUNCTION_TOKEN", oA[oA.IDENT_TOKEN = 20] = "IDENT_TOKEN", oA[oA.COLUMN_TOKEN =
			21] = "COLUMN_TOKEN", oA[oA.URL_TOKEN = 22] = "URL_TOKEN", oA[oA.BAD_URL_TOKEN = 23] = "BAD_URL_TOKEN",
		oA[oA.CDC_TOKEN = 24] = "CDC_TOKEN", oA[oA.CDO_TOKEN = 25] = "CDO_TOKEN", oA[oA.COLON_TOKEN = 26] =
		"COLON_TOKEN", oA[oA.SEMICOLON_TOKEN = 27] = "SEMICOLON_TOKEN", oA[oA.LEFT_SQUARE_BRACKET_TOKEN = 28] =
		"LEFT_SQUARE_BRACKET_TOKEN", oA[oA.RIGHT_SQUARE_BRACKET_TOKEN = 29] = "RIGHT_SQUARE_BRACKET_TOKEN", oA[oA
			.UNICODE_RANGE_TOKEN = 30] = "UNICODE_RANGE_TOKEN", oA[oA.WHITESPACE_TOKEN = 31] = "WHITESPACE_TOKEN",
		oA[oA.EOF_TOKEN = 32] = "EOF_TOKEN";

	function iA(A) {
		return 48 <= A && A <= 57
	}

	function aA(A) {
		return iA(A) || 65 <= A && A <= 70 || 97 <= A && A <= 102
	}

	function cA(A) {
		return 10 === A || 9 === A || 32 === A
	}

	function QA(A) {
		return function(A) {
			return function(A) {
				return 97 <= A && A <= 122
			}(A) || function(A) {
				return 65 <= A && A <= 90
			}(A)
		}(A) || function(A) {
			return 128 <= A
		}(A) || 95 === A
	}

	function wA(A) {
		return QA(A) || iA(A) || 45 === A
	}

	function uA(A, e) {
		return 92 === A && 10 !== e
	}

	function UA(A, e, t) {
		return 45 === A ? QA(e) || uA(e, t) : !!QA(A) || !(92 !== A || !uA(A, e))
	}

	function lA(A, e, t) {
		return 43 === A || 45 === A ? !!iA(e) || 46 === e && iA(t) : iA(46 === A ? e : A)
	}
	var CA = {
			type: sA.LEFT_PARENTHESIS_TOKEN
		},
		gA = {
			type: sA.RIGHT_PARENTHESIS_TOKEN
		},
		EA = {
			type: sA.COMMA_TOKEN
		},
		FA = {
			type: sA.SUFFIX_MATCH_TOKEN
		},
		hA = {
			type: sA.PREFIX_MATCH_TOKEN
		},
		HA = {
			type: sA.COLUMN_TOKEN
		},
		dA = {
			type: sA.DASH_MATCH_TOKEN
		},
		fA = {
			type: sA.INCLUDE_MATCH_TOKEN
		},
		pA = {
			type: sA.LEFT_CURLY_BRACKET_TOKEN
		},
		NA = {
			type: sA.RIGHT_CURLY_BRACKET_TOKEN
		},
		KA = {
			type: sA.SUBSTRING_MATCH_TOKEN
		},
		IA = {
			type: sA.BAD_URL_TOKEN
		},
		TA = {
			type: sA.BAD_STRING_TOKEN
		},
		mA = {
			type: sA.CDO_TOKEN
		},
		RA = {
			type: sA.CDC_TOKEN
		},
		LA = {
			type: sA.COLON_TOKEN
		},
		OA = {
			type: sA.SEMICOLON_TOKEN
		},
		vA = {
			type: sA.LEFT_SQUARE_BRACKET_TOKEN
		},
		DA = {
			type: sA.RIGHT_SQUARE_BRACKET_TOKEN
		},
		bA = {
			type: sA.WHITESPACE_TOKEN
		},
		SA = {
			type: sA.EOF_TOKEN
		},
		MA = (yA.prototype.write = function(A) {
			this._value = this._value.concat(c(A))
		}, yA.prototype.read = function() {
			for (var A = [], e = this.consumeToken(); e !== SA;) A.push(e), e = this.consumeToken();
			return A
		}, yA.prototype.consumeToken = function() {
			var A = this.consumeCodePoint();
			switch (A) {
				case 34:
					return this.consumeStringToken(34);
				case 35:
					var e = this.peekCodePoint(0),
						t = this.peekCodePoint(1),
						r = this.peekCodePoint(2);
					if (wA(e) || uA(t, r)) {
						var n = UA(e, t, r) ? 2 : 1,
							B = this.consumeName();
						return {
							type: sA.HASH_TOKEN,
							value: B,
							flags: n
						}
					}
					break;
				case 36:
					if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), FA;
					break;
				case 39:
					return this.consumeStringToken(39);
				case 40:
					return CA;
				case 41:
					return gA;
				case 42:
					if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), KA;
					break;
				case 43:
					if (lA(A, this.peekCodePoint(0), this.peekCodePoint(1))) return this.reconsumeCodePoint(A),
						this.consumeNumericToken();
					break;
				case 44:
					return EA;
				case 45:
					var s = A,
						o = this.peekCodePoint(0),
						i = this.peekCodePoint(1);
					if (lA(s, o, i)) return this.reconsumeCodePoint(A), this.consumeNumericToken();
					if (UA(s, o, i)) return this.reconsumeCodePoint(A), this.consumeIdentLikeToken();
					if (45 === o && 62 === i) return this.consumeCodePoint(), this.consumeCodePoint(), RA;
					break;
				case 46:
					if (lA(A, this.peekCodePoint(0), this.peekCodePoint(1))) return this.reconsumeCodePoint(A),
						this.consumeNumericToken();
					break;
				case 47:
					if (42 === this.peekCodePoint(0))
						for (this.consumeCodePoint();;) {
							var a = this.consumeCodePoint();
							if (42 === a && 47 === (a = this.consumeCodePoint())) return this.consumeToken();
							if (-1 === a) return this.consumeToken()
						}
					break;
				case 58:
					return LA;
				case 59:
					return OA;
				case 60:
					if (33 === this.peekCodePoint(0) && 45 === this.peekCodePoint(1) && 45 === this
						.peekCodePoint(2)) return this.consumeCodePoint(), this.consumeCodePoint(), mA;
					break;
				case 64:
					var c = this.peekCodePoint(0),
						Q = this.peekCodePoint(1),
						w = this.peekCodePoint(2);
					if (UA(c, Q, w)) return B = this.consumeName(), {
						type: sA.AT_KEYWORD_TOKEN,
						value: B
					};
					break;
				case 91:
					return vA;
				case 92:
					if (uA(A, this.peekCodePoint(0))) return this.reconsumeCodePoint(A), this
						.consumeIdentLikeToken();
					break;
				case 93:
					return DA;
				case 61:
					if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), hA;
					break;
				case 123:
					return pA;
				case 125:
					return NA;
				case 117:
				case 85:
					var u = this.peekCodePoint(0),
						U = this.peekCodePoint(1);
					return 43 !== u || !aA(U) && 63 !== U || (this.consumeCodePoint(), this
							.consumeUnicodeRangeToken()), this.reconsumeCodePoint(A), this
						.consumeIdentLikeToken();
				case 124:
					if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), dA;
					if (124 === this.peekCodePoint(0)) return this.consumeCodePoint(), HA;
					break;
				case 126:
					if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), fA;
					break;
				case -1:
					return SA
			}
			return cA(A) ? (this.consumeWhiteSpace(), bA) : iA(A) ? (this.reconsumeCodePoint(A), this
					.consumeNumericToken()) : QA(A) ? (this.reconsumeCodePoint(A), this
			.consumeIdentLikeToken()) : {
					type: sA.DELIM_TOKEN,
					value: l(A)
				}
		}, yA.prototype.consumeCodePoint = function() {
			var A = this._value.shift();
			return void 0 === A ? -1 : A
		}, yA.prototype.reconsumeCodePoint = function(A) {
			this._value.unshift(A)
		}, yA.prototype.peekCodePoint = function(A) {
			return A >= this._value.length ? -1 : this._value[A]
		}, yA.prototype.consumeUnicodeRangeToken = function() {
			for (var A = [], e = this.consumeCodePoint(); aA(e) && A.length < 6;) A.push(e), e = this
				.consumeCodePoint();
			for (var t = !1; 63 === e && A.length < 6;) A.push(e), e = this.consumeCodePoint(), t = !0;
			if (t) {
				var r = parseInt(l.apply(void 0, A.map(function(A) {
						return 63 === A ? 48 : A
					})), 16),
					n = parseInt(l.apply(void 0, A.map(function(A) {
						return 63 === A ? 70 : A
					})), 16);
				return {
					type: sA.UNICODE_RANGE_TOKEN,
					start: r,
					end: n
				}
			}
			var B = parseInt(l.apply(void 0, A), 16);
			if (45 === this.peekCodePoint(0) && aA(this.peekCodePoint(1))) {
				this.consumeCodePoint(), e = this.consumeCodePoint();
				for (var s = []; aA(e) && s.length < 6;) s.push(e), e = this.consumeCodePoint();
				return n = parseInt(l.apply(void 0, s), 16), {
					type: sA.UNICODE_RANGE_TOKEN,
					start: B,
					end: n
				}
			}
			return {
				type: sA.UNICODE_RANGE_TOKEN,
				start: B,
				end: B
			}
		}, yA.prototype.consumeIdentLikeToken = function() {
			var A = this.consumeName();
			return "url" === A.toLowerCase() && 40 === this.peekCodePoint(0) ? (this.consumeCodePoint(), this
				.consumeUrlToken()) : 40 === this.peekCodePoint(0) ? (this.consumeCodePoint(), {
				type: sA.FUNCTION_TOKEN,
				value: A
			}) : {
				type: sA.IDENT_TOKEN,
				value: A
			}
		}, yA.prototype.consumeUrlToken = function() {
			var A = [];
			if (this.consumeWhiteSpace(), -1 === this.peekCodePoint(0)) return {
				type: sA.URL_TOKEN,
				value: ""
			};
			var e, t = this.peekCodePoint(0);
			if (39 === t || 34 === t) {
				var r = this.consumeStringToken(this.consumeCodePoint());
				return r.type === sA.STRING_TOKEN && (this.consumeWhiteSpace(), -1 === this.peekCodePoint(0) ||
					41 === this.peekCodePoint(0)) ? (this.consumeCodePoint(), {
					type: sA.URL_TOKEN,
					value: r.value
				}) : (this.consumeBadUrlRemnants(), IA)
			}
			for (;;) {
				var n = this.consumeCodePoint();
				if (-1 === n || 41 === n) return {
					type: sA.URL_TOKEN,
					value: l.apply(void 0, A)
				};
				if (cA(n)) return this.consumeWhiteSpace(), -1 === this.peekCodePoint(0) || 41 === this
					.peekCodePoint(0) ? (this.consumeCodePoint(), {
						type: sA.URL_TOKEN,
						value: l.apply(void 0, A)
					}) : (this.consumeBadUrlRemnants(), IA);
				if (34 === n || 39 === n || 40 === n || 0 <= (e = n) && e <= 8 || 11 === e || 14 <= e && e <=
					31 || 127 === e) return this.consumeBadUrlRemnants(), IA;
				if (92 === n) {
					if (!uA(n, this.peekCodePoint(0))) return this.consumeBadUrlRemnants(), IA;
					A.push(this.consumeEscapedCodePoint())
				} else A.push(n)
			}
		}, yA.prototype.consumeWhiteSpace = function() {
			for (; cA(this.peekCodePoint(0));) this.consumeCodePoint()
		}, yA.prototype.consumeBadUrlRemnants = function() {
			for (;;) {
				var A = this.consumeCodePoint();
				if (41 === A || -1 === A) return;
				uA(A, this.peekCodePoint(0)) && this.consumeEscapedCodePoint()
			}
		}, yA.prototype.consumeStringSlice = function(A) {
			for (var e = ""; 0 < A;) {
				var t = Math.min(6e4, A);
				e += l.apply(void 0, this._value.splice(0, t)), A -= t
			}
			return this._value.shift(), e
		}, yA.prototype.consumeStringToken = function(A) {
			for (var e = "", t = 0;;) {
				var r = this._value[t];
				if (-1 === r || void 0 === r || r === A) return e += this.consumeStringSlice(t), {
					type: sA.STRING_TOKEN,
					value: e
				};
				if (10 === r) return this._value.splice(0, t), TA;
				if (92 === r) {
					var n = this._value[t + 1]; - 1 !== n && void 0 !== n && (10 === n ? (e += this
						.consumeStringSlice(t), t = -1, this._value.shift()) : uA(r, n) && (e += this
						.consumeStringSlice(t), e += l(this.consumeEscapedCodePoint()), t = -1))
				}
				t++
			}
		}, yA.prototype.consumeNumber = function() {
			var A = [],
				e = 4,
				t = this.peekCodePoint(0);
			for (43 !== t && 45 !== t || A.push(this.consumeCodePoint()); iA(this.peekCodePoint(0));) A.push(
				this.consumeCodePoint());
			t = this.peekCodePoint(0);
			var r = this.peekCodePoint(1);
			if (46 === t && iA(r))
				for (A.push(this.consumeCodePoint(), this.consumeCodePoint()), e = 8; iA(this.peekCodePoint(
					0));) A.push(this.consumeCodePoint());
			t = this.peekCodePoint(0), r = this.peekCodePoint(1);
			var n = this.peekCodePoint(2);
			if ((69 === t || 101 === t) && ((43 === r || 45 === r) && iA(n) || iA(r)))
				for (A.push(this.consumeCodePoint(), this.consumeCodePoint()), e = 8; iA(this.peekCodePoint(
					0));) A.push(this.consumeCodePoint());
			return [function(A) {
				var e = 0,
					t = 1;
				43 !== A[e] && 45 !== A[e] || (45 === A[e] && (t = -1), e++);
				for (var r = []; iA(A[e]);) r.push(A[e++]);
				var n = r.length ? parseInt(l.apply(void 0, r), 10) : 0;
				46 === A[e] && e++;
				for (var B = []; iA(A[e]);) B.push(A[e++]);
				var s = B.length,
					o = s ? parseInt(l.apply(void 0, B), 10) : 0;
				69 !== A[e] && 101 !== A[e] || e++;
				var i = 1;
				43 !== A[e] && 45 !== A[e] || (45 === A[e] && (i = -1), e++);
				for (var a = []; iA(A[e]);) a.push(A[e++]);
				var c = a.length ? parseInt(l.apply(void 0, a), 10) : 0;
				return t * (n + o * Math.pow(10, -s)) * Math.pow(10, i * c)
			}(A), e]
		}, yA.prototype.consumeNumericToken = function() {
			var A = this.consumeNumber(),
				e = A[0],
				t = A[1],
				r = this.peekCodePoint(0),
				n = this.peekCodePoint(1),
				B = this.peekCodePoint(2);
			if (UA(r, n, B)) {
				var s = this.consumeName();
				return {
					type: sA.DIMENSION_TOKEN,
					number: e,
					flags: t,
					unit: s
				}
			}
			return 37 === r ? (this.consumeCodePoint(), {
				type: sA.PERCENTAGE_TOKEN,
				number: e,
				flags: t
			}) : {
				type: sA.NUMBER_TOKEN,
				number: e,
				flags: t
			}
		}, yA.prototype.consumeEscapedCodePoint = function() {
			var A = this.consumeCodePoint();
			if (aA(A)) {
				for (var e = l(A); aA(this.peekCodePoint(0)) && e.length < 6;) e += l(this.consumeCodePoint());
				cA(this.peekCodePoint(0)) && this.consumeCodePoint();
				var t = parseInt(e, 16);
				return 0 === t || function(A) {
					return 55296 <= A && A <= 57343
				}(t) || 1114111 < t ? 65533 : t
			}
			return -1 === A ? 65533 : A
		}, yA.prototype.consumeName = function() {
			for (var A = "";;) {
				var e = this.consumeCodePoint();
				if (wA(e)) A += l(e);
				else {
					if (!uA(e, this.peekCodePoint(0))) return this.reconsumeCodePoint(e), A;
					A += l(this.consumeEscapedCodePoint())
				}
			}
		}, yA);

	function yA() {
		this._value = []
	}
	var _A = (PA.create = function(A) {
		var e = new MA;
		return e.write(A), new PA(e.read())
	}, PA.parseValue = function(A) {
		return PA.create(A).parseComponentValue()
	}, PA.parseValues = function(A) {
		return PA.create(A).parseComponentValues()
	}, PA.prototype.parseComponentValue = function() {
		for (var A = this.consumeToken(); A.type === sA.WHITESPACE_TOKEN;) A = this.consumeToken();
		if (A.type === sA.EOF_TOKEN) throw new SyntaxError(
			"Error parsing CSS component value, unexpected EOF");
		this.reconsumeToken(A);
		for (var e = this.consumeComponentValue();
			(A = this.consumeToken()).type === sA.WHITESPACE_TOKEN;);
		if (A.type === sA.EOF_TOKEN) return e;
		throw new SyntaxError(
			"Error parsing CSS component value, multiple values found when expecting only one")
	}, PA.prototype.parseComponentValues = function() {
		for (var A = [];;) {
			var e = this.consumeComponentValue();
			if (e.type === sA.EOF_TOKEN) return A;
			A.push(e), A.push()
		}
	}, PA.prototype.consumeComponentValue = function() {
		var A = this.consumeToken();
		switch (A.type) {
			case sA.LEFT_CURLY_BRACKET_TOKEN:
			case sA.LEFT_SQUARE_BRACKET_TOKEN:
			case sA.LEFT_PARENTHESIS_TOKEN:
				return this.consumeSimpleBlock(A.type);
			case sA.FUNCTION_TOKEN:
				return this.consumeFunction(A)
		}
		return A
	}, PA.prototype.consumeSimpleBlock = function(A) {
		for (var e = {
				type: A,
				values: []
			}, t = this.consumeToken();;) {
			if (t.type === sA.EOF_TOKEN || Be(t, A)) return e;
			this.reconsumeToken(t), e.values.push(this.consumeComponentValue()), t = this.consumeToken()
		}
	}, PA.prototype.consumeFunction = function(A) {
		for (var e = {
				name: A.value,
				values: [],
				type: sA.FUNCTION
			};;) {
			var t = this.consumeToken();
			if (t.type === sA.EOF_TOKEN || t.type === sA.RIGHT_PARENTHESIS_TOKEN) return e;
			this.reconsumeToken(t), e.values.push(this.consumeComponentValue())
		}
	}, PA.prototype.consumeToken = function() {
		var A = this._tokens.shift();
		return void 0 === A ? SA : A
	}, PA.prototype.reconsumeToken = function(A) {
		this._tokens.unshift(A)
	}, PA);

	function PA(A) {
		this._tokens = A
	}

	function xA(A) {
		return A.type === sA.DIMENSION_TOKEN
	}

	function VA(A) {
		return A.type === sA.NUMBER_TOKEN
	}

	function zA(A) {
		return A.type === sA.IDENT_TOKEN
	}

	function XA(A) {
		return A.type === sA.STRING_TOKEN
	}

	function JA(A, e) {
		return zA(A) && A.value === e
	}

	function GA(A) {
		return A.type !== sA.WHITESPACE_TOKEN
	}

	function kA(A) {
		return A.type !== sA.WHITESPACE_TOKEN && A.type !== sA.COMMA_TOKEN
	}

	function WA(A) {
		var e = [],
			t = [];
		return A.forEach(function(A) {
			if (A.type === sA.COMMA_TOKEN) {
				if (0 === t.length) throw new Error("Error parsing function args, zero tokens for arg");
				return e.push(t), void(t = [])
			}
			A.type !== sA.WHITESPACE_TOKEN && t.push(A)
		}), t.length && e.push(t), e
	}

	function YA(A) {
		return A.type === sA.NUMBER_TOKEN || A.type === sA.DIMENSION_TOKEN
	}

	function qA(A) {
		return A.type === sA.PERCENTAGE_TOKEN || YA(A)
	}

	function ZA(A) {
		return 1 < A.length ? [A[0], A[1]] : [A[0]]
	}

	function jA(A, e, t) {
		var r = A[0],
			n = A[1];
		return [ae(r, e), ae(void 0 !== n ? n : r, t)]
	}

	function $A(A) {
		return A.type === sA.DIMENSION_TOKEN && ("deg" === A.unit || "grad" === A.unit || "rad" === A.unit ||
			"turn" === A.unit)
	}

	function Ae(A) {
		switch (A.filter(zA).map(function(A) {
			return A.value
		}).join(" ")) {
			case "to bottom right":
			case "to right bottom":
			case "left top":
			case "top left":
				return [se, se];
			case "to top":
			case "bottom":
				return Qe(0);
			case "to bottom left":
			case "to left bottom":
			case "right top":
			case "top right":
				return [se, ie];
			case "to right":
			case "left":
				return Qe(90);
			case "to top left":
			case "to left top":
			case "right bottom":
			case "bottom right":
				return [ie, ie];
			case "to bottom":
			case "top":
				return Qe(180);
			case "to top right":
			case "to right top":
			case "left bottom":
			case "bottom left":
				return [ie, se];
			case "to left":
			case "right":
				return Qe(270)
		}
		return 0
	}

	function ee(A) {
		return 0 == (255 & A)
	}

	function te(A) {
		var e = 255 & A,
			t = 255 & A >> 8,
			r = 255 & A >> 16,
			n = 255 & A >> 24;
		return e < 255 ? "rgba(" + n + "," + r + "," + t + "," + e / 255 + ")" : "rgb(" + n + "," + r + "," + t +
			")"
	}

	function re(A, e) {
		if (A.type === sA.NUMBER_TOKEN) return A.number;
		if (A.type !== sA.PERCENTAGE_TOKEN) return 0;
		var t = 3 === e ? 1 : 255;
		return 3 === e ? A.number / 100 * t : Math.round(A.number / 100 * t)
	}

	function ne(A) {
		var e = A.filter(kA);
		if (3 === e.length) {
			var t = e.map(re),
				r = t[0],
				n = t[1],
				B = t[2];
			return ue(r, n, B, 1)
		}
		if (4 !== e.length) return 0;
		var s = e.map(re),
			o = (r = s[0], n = s[1], B = s[2], s[3]);
		return ue(r, n, B, o)
	}
	var Be = function(A, e) {
			return e === sA.LEFT_CURLY_BRACKET_TOKEN && A.type === sA.RIGHT_CURLY_BRACKET_TOKEN || (e === sA
				.LEFT_SQUARE_BRACKET_TOKEN && A.type === sA.RIGHT_SQUARE_BRACKET_TOKEN || e === sA
				.LEFT_PARENTHESIS_TOKEN && A.type === sA.RIGHT_PARENTHESIS_TOKEN)
		},
		se = {
			type: sA.NUMBER_TOKEN,
			number: 0,
			flags: 4
		},
		oe = {
			type: sA.PERCENTAGE_TOKEN,
			number: 50,
			flags: 4
		},
		ie = {
			type: sA.PERCENTAGE_TOKEN,
			number: 100,
			flags: 4
		},
		ae = function(A, e) {
			if (A.type === sA.PERCENTAGE_TOKEN) return A.number / 100 * e;
			if (xA(A)) switch (A.unit) {
				case "rem":
				case "em":
					return 16 * A.number;
				case "px":
				default:
					return A.number
			}
			return A.number
		},
		ce = function(A) {
			if (A.type === sA.DIMENSION_TOKEN) switch (A.unit) {
				case "deg":
					return Math.PI * A.number / 180;
				case "grad":
					return Math.PI / 200 * A.number;
				case "rad":
					return A.number;
				case "turn":
					return 2 * Math.PI * A.number
			}
			throw new Error("Unsupported angle type")
		},
		Qe = function(A) {
			return Math.PI * A / 180
		},
		we = function(A) {
			if (A.type === sA.FUNCTION) {
				var e = he[A.name];
				if (void 0 === e) throw new Error('Attempting to parse an unsupported color function "' + A.name +
					'"');
				return e(A.values)
			}
			if (A.type === sA.HASH_TOKEN) {
				if (3 === A.value.length) {
					var t = A.value.substring(0, 1),
						r = A.value.substring(1, 2),
						n = A.value.substring(2, 3);
					return ue(parseInt(t + t, 16), parseInt(r + r, 16), parseInt(n + n, 16), 1)
				}
				if (4 === A.value.length) {
					t = A.value.substring(0, 1), r = A.value.substring(1, 2), n = A.value.substring(2, 3);
					var B = A.value.substring(3, 4);
					return ue(parseInt(t + t, 16), parseInt(r + r, 16), parseInt(n + n, 16), parseInt(B + B, 16) /
						255)
				}
				if (6 === A.value.length) {
					t = A.value.substring(0, 2), r = A.value.substring(2, 4), n = A.value.substring(4, 6);
					return ue(parseInt(t, 16), parseInt(r, 16), parseInt(n, 16), 1)
				}
				if (8 === A.value.length) {
					t = A.value.substring(0, 2), r = A.value.substring(2, 4), n = A.value.substring(4, 6), B = A
						.value.substring(6, 8);
					return ue(parseInt(t, 16), parseInt(r, 16), parseInt(n, 16), parseInt(B, 16) / 255)
				}
			}
			if (A.type === sA.IDENT_TOKEN) {
				var s = He[A.value.toUpperCase()];
				if (void 0 !== s) return s
			}
			return He.TRANSPARENT
		},
		ue = function(A, e, t, r) {
			return (A << 24 | e << 16 | t << 8 | Math.round(255 * r) << 0) >>> 0
		};

	function Ue(A, e, t) {
		return t < 0 && (t += 1), 1 <= t && (t -= 1), t < 1 / 6 ? (e - A) * t * 6 + A : t < .5 ? e : t < 2 / 3 ? 6 *
			(e - A) * (2 / 3 - t) + A : A
	}

	function le(A) {
		var e = A.filter(kA),
			t = e[0],
			r = e[1],
			n = e[2],
			B = e[3],
			s = (t.type === sA.NUMBER_TOKEN ? Qe(t.number) : ce(t)) / (2 * Math.PI),
			o = qA(r) ? r.number / 100 : 0,
			i = qA(n) ? n.number / 100 : 0,
			a = void 0 !== B && qA(B) ? ae(B, 1) : 1;
		if (0 == o) return ue(255 * i, 255 * i, 255 * i, 1);
		var c = i <= .5 ? i * (1 + o) : i + o - i * o,
			Q = 2 * i - c,
			w = Ue(Q, c, s + 1 / 3),
			u = Ue(Q, c, s),
			U = Ue(Q, c, s - 1 / 3);
		return ue(255 * w, 255 * u, 255 * U, a)
	}
	var Ce, ge, Ee, Fe, he = {
			hsl: le,
			hsla: le,
			rgb: ne,
			rgba: ne
		},
		He = {
			ALICEBLUE: 4042850303,
			ANTIQUEWHITE: 4209760255,
			AQUA: 16777215,
			AQUAMARINE: 2147472639,
			AZURE: 4043309055,
			BEIGE: 4126530815,
			BISQUE: 4293182719,
			BLACK: 255,
			BLANCHEDALMOND: 4293643775,
			BLUE: 65535,
			BLUEVIOLET: 2318131967,
			BROWN: 2771004159,
			BURLYWOOD: 3736635391,
			CADETBLUE: 1604231423,
			CHARTREUSE: 2147418367,
			CHOCOLATE: 3530104575,
			CORAL: 4286533887,
			CORNFLOWERBLUE: 1687547391,
			CORNSILK: 4294499583,
			CRIMSON: 3692313855,
			CYAN: 16777215,
			DARKBLUE: 35839,
			DARKCYAN: 9145343,
			DARKGOLDENROD: 3095837695,
			DARKGRAY: 2846468607,
			DARKGREEN: 6553855,
			DARKGREY: 2846468607,
			DARKKHAKI: 3182914559,
			DARKMAGENTA: 2332068863,
			DARKOLIVEGREEN: 1433087999,
			DARKORANGE: 4287365375,
			DARKORCHID: 2570243327,
			DARKRED: 2332033279,
			DARKSALMON: 3918953215,
			DARKSEAGREEN: 2411499519,
			DARKSLATEBLUE: 1211993087,
			DARKSLATEGRAY: 793726975,
			DARKSLATEGREY: 793726975,
			DARKTURQUOISE: 13554175,
			DARKVIOLET: 2483082239,
			DEEPPINK: 4279538687,
			DEEPSKYBLUE: 12582911,
			DIMGRAY: 1768516095,
			DIMGREY: 1768516095,
			DODGERBLUE: 512819199,
			FIREBRICK: 2988581631,
			FLORALWHITE: 4294635775,
			FORESTGREEN: 579543807,
			FUCHSIA: 4278255615,
			GAINSBORO: 3705462015,
			GHOSTWHITE: 4177068031,
			GOLD: 4292280575,
			GOLDENROD: 3668254975,
			GRAY: 2155905279,
			GREEN: 8388863,
			GREENYELLOW: 2919182335,
			GREY: 2155905279,
			HONEYDEW: 4043305215,
			HOTPINK: 4285117695,
			INDIANRED: 3445382399,
			INDIGO: 1258324735,
			IVORY: 4294963455,
			KHAKI: 4041641215,
			LAVENDER: 3873897215,
			LAVENDERBLUSH: 4293981695,
			LAWNGREEN: 2096890111,
			LEMONCHIFFON: 4294626815,
			LIGHTBLUE: 2916673279,
			LIGHTCORAL: 4034953471,
			LIGHTCYAN: 3774873599,
			LIGHTGOLDENRODYELLOW: 4210742015,
			LIGHTGRAY: 3553874943,
			LIGHTGREEN: 2431553791,
			LIGHTGREY: 3553874943,
			LIGHTPINK: 4290167295,
			LIGHTSALMON: 4288707327,
			LIGHTSEAGREEN: 548580095,
			LIGHTSKYBLUE: 2278488831,
			LIGHTSLATEGRAY: 2005441023,
			LIGHTSLATEGREY: 2005441023,
			LIGHTSTEELBLUE: 2965692159,
			LIGHTYELLOW: 4294959359,
			LIME: 16711935,
			LIMEGREEN: 852308735,
			LINEN: 4210091775,
			MAGENTA: 4278255615,
			MAROON: 2147483903,
			MEDIUMAQUAMARINE: 1724754687,
			MEDIUMBLUE: 52735,
			MEDIUMORCHID: 3126187007,
			MEDIUMPURPLE: 2473647103,
			MEDIUMSEAGREEN: 1018393087,
			MEDIUMSLATEBLUE: 2070474495,
			MEDIUMSPRINGGREEN: 16423679,
			MEDIUMTURQUOISE: 1221709055,
			MEDIUMVIOLETRED: 3340076543,
			MIDNIGHTBLUE: 421097727,
			MINTCREAM: 4127193855,
			MISTYROSE: 4293190143,
			MOCCASIN: 4293178879,
			NAVAJOWHITE: 4292783615,
			NAVY: 33023,
			OLDLACE: 4260751103,
			OLIVE: 2155872511,
			OLIVEDRAB: 1804477439,
			ORANGE: 4289003775,
			ORANGERED: 4282712319,
			ORCHID: 3664828159,
			PALEGOLDENROD: 4008225535,
			PALEGREEN: 2566625535,
			PALETURQUOISE: 2951671551,
			PALEVIOLETRED: 3681588223,
			PAPAYAWHIP: 4293907967,
			PEACHPUFF: 4292524543,
			PERU: 3448061951,
			PINK: 4290825215,
			PLUM: 3718307327,
			POWDERBLUE: 2967529215,
			PURPLE: 2147516671,
			REBECCAPURPLE: 1714657791,
			RED: 4278190335,
			ROSYBROWN: 3163525119,
			ROYALBLUE: 1097458175,
			SADDLEBROWN: 2336560127,
			SALMON: 4202722047,
			SANDYBROWN: 4104413439,
			SEAGREEN: 780883967,
			SEASHELL: 4294307583,
			SIENNA: 2689740287,
			SILVER: 3233857791,
			SKYBLUE: 2278484991,
			SLATEBLUE: 1784335871,
			SLATEGRAY: 1887473919,
			SLATEGREY: 1887473919,
			SNOW: 4294638335,
			SPRINGGREEN: 16744447,
			STEELBLUE: 1182971135,
			TAN: 3535047935,
			TEAL: 8421631,
			THISTLE: 3636451583,
			TOMATO: 4284696575,
			TRANSPARENT: 0,
			TURQUOISE: 1088475391,
			VIOLET: 4001558271,
			WHEAT: 4125012991,
			WHITE: 4294967295,
			WHITESMOKE: 4126537215,
			YELLOW: 4294902015,
			YELLOWGREEN: 2597139199
		};
	(ge = Ce || (Ce = {}))[ge.VALUE = 0] = "VALUE", ge[ge.LIST = 1] = "LIST", ge[ge.IDENT_VALUE = 2] =
		"IDENT_VALUE", ge[ge.TYPE_VALUE = 3] = "TYPE_VALUE", ge[ge.TOKEN_VALUE = 4] = "TOKEN_VALUE", (Fe = Ee || (
			Ee = {}))[Fe.BORDER_BOX = 0] = "BORDER_BOX", Fe[Fe.PADDING_BOX = 1] = "PADDING_BOX";

	function de(A) {
		var e = we(A[0]),
			t = A[1];
		return t && qA(t) ? {
			color: e,
			stop: t
		} : {
			color: e,
			stop: null
		}
	}

	function fe(A, t) {
		var e = A[0],
			r = A[A.length - 1];
		null === e.stop && (e.stop = se), null === r.stop && (r.stop = ie);
		for (var n = [], B = 0, s = 0; s < A.length; s++) {
			var o = A[s].stop;
			if (null !== o) {
				var i = ae(o, t);
				B < i ? n.push(i) : n.push(B), B = i
			} else n.push(null)
		}
		var a = null;
		for (s = 0; s < n.length; s++) {
			var c = n[s];
			if (null === c) null === a && (a = s);
			else if (null !== a) {
				for (var Q = s - a, w = (c - n[a - 1]) / (1 + Q), u = 1; u <= Q; u++) n[a + u - 1] = w * u;
				a = null
			}
		}
		return A.map(function(A, e) {
			return {
				color: A.color,
				stop: Math.max(Math.min(1, n[e] / t), 0)
			}
		})
	}

	function pe(A, e, t) {
		var r = "number" == typeof A ? A : function(A, e, t) {
				var r = e / 2,
					n = t / 2,
					B = ae(A[0], e) - r,
					s = n - ae(A[1], t);
				return (Math.atan2(s, B) + 2 * Math.PI) % (2 * Math.PI)
			}(A, e, t),
			n = Math.abs(e * Math.sin(r)) + Math.abs(t * Math.cos(r)),
			B = e / 2,
			s = t / 2,
			o = n / 2,
			i = Math.sin(r - Math.PI / 2) * o,
			a = Math.cos(r - Math.PI / 2) * o;
		return [n, B - a, B + a, s - i, s + i]
	}

	function Ne(A, e) {
		return Math.sqrt(A * A + e * e)
	}

	function Ke(A, e, B, s, o) {
		return [
			[0, 0],
			[0, e],
			[A, 0],
			[A, e]
		].reduce(function(A, e) {
			var t = e[0],
				r = e[1],
				n = Ne(B - t, s - r);
			return (o ? n < A.optimumDistance : n > A.optimumDistance) ? {
				optimumCorner: e,
				optimumDistance: n
			} : A
		}, {
			optimumDistance: o ? 1 / 0 : -1 / 0,
			optimumCorner: null
		}).optimumCorner
	}

	function Ie(A) {
		var n = Qe(180),
			B = [];
		return WA(A).forEach(function(A, e) {
			if (0 === e) {
				var t = A[0];
				if (t.type === sA.IDENT_TOKEN && -1 !== ["top", "left", "right", "bottom"].indexOf(t.value))
					return void(n = Ae(A));
				if ($A(t)) return void(n = (ce(t) + Qe(270)) % Qe(360))
			}
			var r = de(A);
			B.push(r)
		}), {
			angle: n,
			stops: B,
			type: xe.LINEAR_GRADIENT
		}
	}

	function Te(A) {
		return 0 === A[0] && 255 === A[1] && 0 === A[2] && 255 === A[3]
	}
	var me = {
			name: "background-clip",
			initialValue: "border-box",
			prefix: !(Fe[Fe.CONTENT_BOX = 2] = "CONTENT_BOX"),
			type: Ce.LIST,
			parse: function(A) {
				return A.map(function(A) {
					if (zA(A)) switch (A.value) {
						case "padding-box":
							return Ee.PADDING_BOX;
						case "content-box":
							return Ee.CONTENT_BOX
					}
					return Ee.BORDER_BOX
				})
			}
		},
		Re = {
			name: "background-color",
			initialValue: "transparent",
			prefix: !1,
			type: Ce.TYPE_VALUE,
			format: "color"
		},
		Le = function(A, e, t, r, n) {
			var B = "http://www.w3.org/2000/svg",
				s = document.createElementNS(B, "svg"),
				o = document.createElementNS(B, "foreignObject");
			return s.setAttributeNS(null, "width", A.toString()), s.setAttributeNS(null, "height", e.toString()), o
				.setAttributeNS(null, "width", "100%"), o.setAttributeNS(null, "height", "100%"), o.setAttributeNS(
					null, "x", t.toString()), o.setAttributeNS(null, "y", r.toString()), o.setAttributeNS(null,
					"externalResourcesRequired", "true"), s.appendChild(o), o.appendChild(n), s
		},
		Oe = function(r) {
			return new Promise(function(A, e) {
				var t = new Image;
				t.onload = function() {
					return A(t)
				}, t.onerror = e, t.src = "data:image/svg+xml;charset=utf-8," + encodeURIComponent((
					new XMLSerializer).serializeToString(r))
			})
		},
		ve = {
			get SUPPORT_RANGE_BOUNDS() {
				var A = function(A) {
					if (A.createRange) {
						var e = A.createRange();
						if (e.getBoundingClientRect) {
							var t = A.createElement("boundtest");
							t.style.height = "123px", t.style.display = "block", A.body.appendChild(t), e
								.selectNode(t);
							var r = e.getBoundingClientRect(),
								n = Math.round(r.height);
							if (A.body.removeChild(t), 123 === n) return !0
						}
					}
					return !1
				}(document);
				return Object.defineProperty(ve, "SUPPORT_RANGE_BOUNDS", {
					value: A
				}), A
			},
			get SUPPORT_SVG_DRAWING() {
				var A = function(A) {
					var e = new Image,
						t = A.createElement("canvas"),
						r = t.getContext("2d");
					if (!r) return !1;
					e.src = "data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";
					try {
						r.drawImage(e, 0, 0), t.toDataURL()
					} catch (A) {
						return !1
					}
					return !0
				}(document);
				return Object.defineProperty(ve, "SUPPORT_SVG_DRAWING", {
					value: A
				}), A
			},
			get SUPPORT_FOREIGNOBJECT_DRAWING() {
				var A = "function" == typeof Array.from && "function" == typeof window.fetch ? function(r) {
					var A = r.createElement("canvas"),
						n = 100;
					A.width = n, A.height = n;
					var B = A.getContext("2d");
					if (!B) return Promise.reject(!1);
					B.fillStyle = "rgb(0, 255, 0)", B.fillRect(0, 0, n, n);
					var e = new Image,
						s = A.toDataURL();
					e.src = s;
					var t = Le(n, n, 0, 0, e);
					return B.fillStyle = "red", B.fillRect(0, 0, n, n), Oe(t).then(function(A) {
						B.drawImage(A, 0, 0);
						var e = B.getImageData(0, 0, n, n).data;
						B.fillStyle = "red", B.fillRect(0, 0, n, n);
						var t = r.createElement("div");
						return t.style.backgroundImage = "url(" + s + ")", t.style.height = "100px",
							Te(e) ? Oe(Le(n, n, 0, 0, t)) : Promise.reject(!1)
					}).then(function(A) {
						return B.drawImage(A, 0, 0), Te(B.getImageData(0, 0, n, n).data)
					}).catch(function() {
						return !1
					})
				}(document) : Promise.resolve(!1);
				return Object.defineProperty(ve, "SUPPORT_FOREIGNOBJECT_DRAWING", {
					value: A
				}), A
			},
			get SUPPORT_CORS_IMAGES() {
				var A = void 0 !== (new Image).crossOrigin;
				return Object.defineProperty(ve, "SUPPORT_CORS_IMAGES", {
					value: A
				}), A
			},
			get SUPPORT_RESPONSE_TYPE() {
				var A = "string" == typeof(new XMLHttpRequest).responseType;
				return Object.defineProperty(ve, "SUPPORT_RESPONSE_TYPE", {
					value: A
				}), A
			},
			get SUPPORT_CORS_XHR() {
				var A = "withCredentials" in new XMLHttpRequest;
				return Object.defineProperty(ve, "SUPPORT_CORS_XHR", {
					value: A
				}), A
			}
		},
		De = (be.prototype.debug = function() {
			for (var A = [], e = 0; e < arguments.length; e++) A[e] = arguments[e];
			this.enabled && ("undefined" != typeof window && window.console && "function" == typeof console
				.debug ? console.debug.apply(console, [this.id, this.getTime() + "ms"].concat(A)) : this
				.info.apply(this, A))
		}, be.prototype.getTime = function() {
			return Date.now() - this.start
		}, be.create = function(A) {
			be.instances[A.id] = new be(A)
		}, be.destroy = function(A) {
			delete be.instances[A]
		}, be.getInstance = function(A) {
			var e = be.instances[A];
			if (void 0 === e) throw new Error("No logger instance found with id " + A);
			return e
		}, be.prototype.info = function() {
			for (var A = [], e = 0; e < arguments.length; e++) A[e] = arguments[e];
			this.enabled && "undefined" != typeof window && window.console && "function" == typeof console
				.info && console.info.apply(console, [this.id, this.getTime() + "ms"].concat(A))
		}, be.prototype.error = function() {
			for (var A = [], e = 0; e < arguments.length; e++) A[e] = arguments[e];
			this.enabled && ("undefined" != typeof window && window.console && "function" == typeof console
				.error ? console.error.apply(console, [this.id, this.getTime() + "ms"].concat(A)) : this
				.info.apply(this, A))
		}, be.instances = {}, be);

	function be(A) {
		var e = A.id,
			t = A.enabled;
		this.id = e, this.enabled = t, this.start = Date.now()
	}
	var Se = (Me.create = function(A, e) {
		return Me._caches[A] = new ye(A, e)
	}, Me.destroy = function(A) {
		delete Me._caches[A]
	}, Me.open = function(A) {
		var e = Me._caches[A];
		if (void 0 !== e) return e;
		throw new Error('Cache with key "' + A + '" not found')
	}, Me.getOrigin = function(A) {
		var e = Me._link;
		return e ? (e.href = A, e.href = e.href, e.protocol + e.hostname + e.port) : "about:blank"
	}, Me.isSameOrigin = function(A) {
		return Me.getOrigin(A) === Me._origin
	}, Me.setContext = function(A) {
		Me._link = A.document.createElement("a"), Me._origin = Me.getOrigin(A.location.href)
	}, Me.getInstance = function() {
		var A = Me._current;
		if (null === A) throw new Error("No cache instance attached");
		return A
	}, Me.attachInstance = function(A) {
		Me._current = A
	}, Me.detachInstance = function() {
		Me._current = null
	}, Me._caches = {}, Me._origin = "about:blank", Me._current = null, Me);

	function Me() {}
	var ye = (_e.prototype.addImage = function(A) {
		var e = Promise.resolve();
		return this.has(A) || (Ye(A) || Ge(A)) && (this._cache[A] = this.loadImage(A)), e
	}, _e.prototype.match = function(A) {
		return this._cache[A]
	}, _e.prototype.loadImage = function(s) {
		return a(this, void 0, void 0, function() {
			var e, r, t, n, B = this;
			return S(this, function(A) {
				switch (A.label) {
					case 0:
						return e = Se.isSameOrigin(s), r = !ke(s) && !0 === this._options
							.useCORS && ve.SUPPORT_CORS_IMAGES && !e, t = !ke(s) && !e &&
							"string" == typeof this._options.proxy && ve.SUPPORT_CORS_XHR &&
							!r, e || !1 !== this._options.allowTaint || ke(s) || t || r ? (
								n = s, t ? [4, this.proxy(n)] : [3, 2]) : [2];
					case 1:
						n = A.sent(), A.label = 2;
					case 2:
						return De.getInstance(this.id).debug("Added image " + s.substring(0,
							256)), [4, new Promise(function(A, e) {
							var t = new Image;
							t.onload = function() {
									return A(t)
								}, t.onerror = e, (We(n) || r) && (t
									.crossOrigin = "anonymous"), t.src = n, !
								0 === t.complete && setTimeout(function() {
									return A(t)
								}, 500), 0 < B._options.imageTimeout &&
								setTimeout(function() {
									return e("Timed out (" + B._options
										.imageTimeout +
										"ms) loading image")
								}, B._options.imageTimeout)
						})];
					case 3:
						return [2, A.sent()]
				}
			})
		})
	}, _e.prototype.has = function(A) {
		return void 0 !== this._cache[A]
	}, _e.prototype.keys = function() {
		return Promise.resolve(Object.keys(this._cache))
	}, _e.prototype.proxy = function(B) {
		var s = this,
			o = this._options.proxy;
		if (!o) throw new Error("No proxy defined");
		var i = B.substring(0, 256);
		return new Promise(function(e, t) {
			var r = ve.SUPPORT_RESPONSE_TYPE ? "blob" : "text",
				n = new XMLHttpRequest;
			if (n.onload = function() {
					if (200 === n.status)
						if ("text" == r) e(n.response);
						else {
							var A = new FileReader;
							A.addEventListener("load", function() {
								return e(A.result)
							}, !1), A.addEventListener("error", function(A) {
								return t(A)
							}, !1), A.readAsDataURL(n.response)
						}
					else t("Failed to proxy resource " + i + " with status code " + n.status)
				}, n.onerror = t, n.open("GET", o + "?url=" + encodeURIComponent(B) +
					"&responseType=" + r), "text" != r && n instanceof XMLHttpRequest && (n
					.responseType = r), s._options.imageTimeout) {
				var A = s._options.imageTimeout;
				n.timeout = A, n.ontimeout = function() {
					return t("Timed out (" + A + "ms) proxying " + i)
				}
			}
			n.send()
		})
	}, _e);

	function _e(A, e) {
		this.id = A, this._options = e, this._cache = {}
	}

	function Pe(A) {
		var n = rt.CIRCLE,
			B = Bt.FARTHEST_CORNER,
			s = [],
			o = [];
		return WA(A).forEach(function(A, e) {
			var t = !0;
			if (0 === e ? t = A.reduce(function(A, e) {
					if (zA(e)) switch (e.value) {
						case "center":
							return o.push(oe), !1;
						case "top":
						case "left":
							return o.push(se), !1;
						case "right":
						case "bottom":
							return o.push(ie), !1
					} else if (qA(e) || YA(e)) return o.push(e), !1;
					return A
				}, t) : 1 === e && (t = A.reduce(function(A, e) {
					if (zA(e)) switch (e.value) {
						case "circle":
							return n = rt.CIRCLE, !1;
						case et:
							return n = rt.ELLIPSE, !1;
						case tt:
						case Ze:
							return B = Bt.CLOSEST_SIDE, !1;
						case je:
							return B = Bt.FARTHEST_SIDE, !1;
						case $e:
							return B = Bt.CLOSEST_CORNER, !1;
						case "cover":
						case At:
							return B = Bt.FARTHEST_CORNER, !1
					} else if (YA(e) || qA(e)) return Array.isArray(B) || (B = []), B.push(e), !
						1;
					return A
				}, t)), t) {
				var r = de(A);
				s.push(r)
			}
		}), {
			size: B,
			shape: n,
			stops: s,
			position: o,
			type: xe.RADIAL_GRADIENT
		}
	}
	var xe, Ve, ze = /^data:image\/svg\+xml/i,
		Xe = /^data:image\/.*;base64,/i,
		Je = /^data:image\/.*/i,
		Ge = function(A) {
			return ve.SUPPORT_SVG_DRAWING || !qe(A)
		},
		ke = function(A) {
			return Je.test(A)
		},
		We = function(A) {
			return Xe.test(A)
		},
		Ye = function(A) {
			return "blob" === A.substr(0, 4)
		},
		qe = function(A) {
			return "svg" === A.substr(-3).toLowerCase() || ze.test(A)
		},
		Ze = "closest-side",
		je = "farthest-side",
		$e = "closest-corner",
		At = "farthest-corner",
		et = "ellipse",
		tt = "contain";
	(Ve = xe || (xe = {}))[Ve.URL = 0] = "URL", Ve[Ve.LINEAR_GRADIENT = 1] = "LINEAR_GRADIENT", Ve[Ve
		.RADIAL_GRADIENT = 2] = "RADIAL_GRADIENT";
	var rt, nt, Bt, st;
	(nt = rt || (rt = {}))[nt.CIRCLE = 0] = "CIRCLE", nt[nt.ELLIPSE = 1] = "ELLIPSE", (st = Bt || (Bt = {}))[st
		.CLOSEST_SIDE = 0] = "CLOSEST_SIDE", st[st.FARTHEST_SIDE = 1] = "FARTHEST_SIDE", st[st.CLOSEST_CORNER =
		2] = "CLOSEST_CORNER", st[st.FARTHEST_CORNER = 3] = "FARTHEST_CORNER";
	var ot = function(A) {
		if (A.type === sA.URL_TOKEN) {
			var e = {
				url: A.value,
				type: xe.URL
			};
			return Se.getInstance().addImage(A.value), e
		}
		if (A.type !== sA.FUNCTION) throw new Error("Unsupported image type");
		var t = ct[A.name];
		if (void 0 === t) throw new Error('Attempting to parse an unsupported image function "' + A.name + '"');
		return t(A.values)
	};
	var it, at, ct = {
			"linear-gradient": function(A) {
				var n = Qe(180),
					B = [];
				return WA(A).forEach(function(A, e) {
					if (0 === e) {
						var t = A[0];
						if (t.type === sA.IDENT_TOKEN && "to" === t.value) return void(n = Ae(A));
						if ($A(t)) return void(n = ce(t))
					}
					var r = de(A);
					B.push(r)
				}), {
					angle: n,
					stops: B,
					type: xe.LINEAR_GRADIENT
				}
			},
			"-moz-linear-gradient": Ie,
			"-ms-linear-gradient": Ie,
			"-o-linear-gradient": Ie,
			"-webkit-linear-gradient": Ie,
			"radial-gradient": function(A) {
				var B = rt.CIRCLE,
					s = Bt.FARTHEST_CORNER,
					o = [],
					i = [];
				return WA(A).forEach(function(A, e) {
					var t = !0;
					if (0 === e) {
						var r = !1;
						t = A.reduce(function(A, e) {
							if (r)
								if (zA(e)) switch (e.value) {
									case "center":
										return i.push(oe), A;
									case "top":
									case "left":
										return i.push(se), A;
									case "right":
									case "bottom":
										return i.push(ie), A
								} else(qA(e) || YA(e)) && i.push(e);
								else if (zA(e)) switch (e.value) {
								case "circle":
									return B = rt.CIRCLE, !1;
								case et:
									return B = rt.ELLIPSE, !1;
								case "at":
									return !(r = !0);
								case Ze:
									return s = Bt.CLOSEST_SIDE, !1;
								case "cover":
								case je:
									return s = Bt.FARTHEST_SIDE, !1;
								case tt:
								case $e:
									return s = Bt.CLOSEST_CORNER, !1;
								case At:
									return s = Bt.FARTHEST_CORNER, !1
							} else if (YA(e) || qA(e)) return Array.isArray(s) || (s = []),
								s.push(e), !1;
							return A
						}, t)
					}
					if (t) {
						var n = de(A);
						o.push(n)
					}
				}), {
					size: s,
					shape: B,
					stops: o,
					position: i,
					type: xe.RADIAL_GRADIENT
				}
			},
			"-moz-radial-gradient": Pe,
			"-ms-radial-gradient": Pe,
			"-o-radial-gradient": Pe,
			"-webkit-radial-gradient": Pe,
			"-webkit-gradient": function(A) {
				var e = Qe(180),
					s = [],
					o = xe.LINEAR_GRADIENT,
					t = rt.CIRCLE,
					r = Bt.FARTHEST_CORNER;
				return WA(A).forEach(function(A, e) {
					var t = A[0];
					if (0 === e) {
						if (zA(t) && "linear" === t.value) return void(o = xe.LINEAR_GRADIENT);
						if (zA(t) && "radial" === t.value) return void(o = xe.RADIAL_GRADIENT)
					}
					if (t.type === sA.FUNCTION)
						if ("from" === t.name) {
							var r = we(t.values[0]);
							s.push({
								stop: se,
								color: r
							})
						} else if ("to" === t.name) r = we(t.values[0]), s.push({
						stop: ie,
						color: r
					});
					else if ("color-stop" === t.name) {
						var n = t.values.filter(kA);
						if (2 === n.length) {
							r = we(n[1]);
							var B = n[0];
							VA(B) && s.push({
								stop: {
									type: sA.PERCENTAGE_TOKEN,
									number: 100 * B.number,
									flags: B.flags
								},
								color: r
							})
						}
					}
				}), o === xe.LINEAR_GRADIENT ? {
					angle: (e + Qe(180)) % Qe(360),
					stops: s,
					type: o
				} : {
					size: r,
					shape: t,
					stops: s,
					position: [],
					type: o
				}
			}
		},
		Qt = {
			name: "background-image",
			initialValue: "none",
			type: Ce.LIST,
			prefix: !1,
			parse: function(A) {
				if (0 === A.length) return [];
				var e = A[0];
				return e.type === sA.IDENT_TOKEN && "none" === e.value ? [] : A.filter(function(A) {
					return kA(A) && function(A) {
						return A.type !== sA.FUNCTION || ct[A.name]
					}(A)
				}).map(ot)
			}
		},
		wt = {
			name: "background-origin",
			initialValue: "border-box",
			prefix: !1,
			type: Ce.LIST,
			parse: function(A) {
				return A.map(function(A) {
					if (zA(A)) switch (A.value) {
						case "padding-box":
							return 1;
						case "content-box":
							return 2
					}
					return 0
				})
			}
		},
		ut = {
			name: "background-position",
			initialValue: "0% 0%",
			type: Ce.LIST,
			prefix: !1,
			parse: function(A) {
				return WA(A).map(function(A) {
					return A.filter(qA)
				}).map(ZA)
			}
		};
	(at = it || (it = {}))[at.REPEAT = 0] = "REPEAT", at[at.NO_REPEAT = 1] = "NO_REPEAT", at[at.REPEAT_X = 2] =
		"REPEAT_X";
	var Ut, lt, Ct = {
			name: "background-repeat",
			initialValue: "repeat",
			prefix: !(at[at.REPEAT_Y = 3] = "REPEAT_Y"),
			type: Ce.LIST,
			parse: function(A) {
				return WA(A).map(function(A) {
					return A.filter(zA).map(function(A) {
						return A.value
					}).join(" ")
				}).map(gt)
			}
		},
		gt = function(A) {
			switch (A) {
				case "no-repeat":
					return it.NO_REPEAT;
				case "repeat-x":
				case "repeat no-repeat":
					return it.REPEAT_X;
				case "repeat-y":
				case "no-repeat repeat":
					return it.REPEAT_Y;
				case "repeat":
				default:
					return it.REPEAT
			}
		};
	(lt = Ut || (Ut = {})).AUTO = "auto", lt.CONTAIN = "contain";

	function Et(A) {
		return {
			name: "border-" + A + "-color",
			initialValue: "transparent",
			prefix: !1,
			type: Ce.TYPE_VALUE,
			format: "color"
		}
	}

	function Ft(A) {
		return {
			name: "border-radius-" + A,
			initialValue: "0 0",
			prefix: !1,
			type: Ce.LIST,
			parse: function(A) {
				return ZA(A.filter(qA))
			}
		}
	}
	var ht, Ht, dt = {
			name: "background-size",
			initialValue: "0",
			prefix: !(lt.COVER = "cover"),
			type: Ce.LIST,
			parse: function(A) {
				return WA(A).map(function(A) {
					return A.filter(ft)
				})
			}
		},
		ft = function(A) {
			return zA(A) || qA(A)
		},
		pt = Et("top"),
		Nt = Et("right"),
		Kt = Et("bottom"),
		It = Et("left"),
		Tt = Ft("top-left"),
		mt = Ft("top-right"),
		Rt = Ft("bottom-right"),
		Lt = Ft("bottom-left");
	(Ht = ht || (ht = {}))[Ht.NONE = 0] = "NONE", Ht[Ht.SOLID = 1] = "SOLID";

	function Ot(A) {
		return {
			name: "border-" + A + "-style",
			initialValue: "solid",
			prefix: !1,
			type: Ce.IDENT_VALUE,
			parse: function(A) {
				switch (A) {
					case "none":
						return ht.NONE
				}
				return ht.SOLID
			}
		}
	}

	function vt(A) {
		return {
			name: "border-" + A + "-width",
			initialValue: "0",
			type: Ce.VALUE,
			prefix: !1,
			parse: function(A) {
				return xA(A) ? A.number : 0
			}
		}
	}
	var Dt, bt, St = Ot("top"),
		Mt = Ot("right"),
		yt = Ot("bottom"),
		_t = Ot("left"),
		Pt = vt("top"),
		xt = vt("right"),
		Vt = vt("bottom"),
		zt = vt("left"),
		Xt = {
			name: "color",
			initialValue: "transparent",
			prefix: !1,
			type: Ce.TYPE_VALUE,
			format: "color"
		},
		Jt = {
			name: "display",
			initialValue: "inline-block",
			prefix: !1,
			type: Ce.LIST,
			parse: function(A) {
				return A.filter(zA).reduce(function(A, e) {
					return A | Gt(e.value)
				}, 0)
			}
		},
		Gt = function(A) {
			switch (A) {
				case "block":
					return 2;
				case "inline":
					return 4;
				case "run-in":
					return 8;
				case "flow":
					return 16;
				case "flow-root":
					return 32;
				case "table":
					return 64;
				case "flex":
				case "-webkit-flex":
					return 128;
				case "grid":
				case "-ms-grid":
					return 256;
				case "ruby":
					return 512;
				case "subgrid":
					return 1024;
				case "list-item":
					return 2048;
				case "table-row-group":
					return 4096;
				case "table-header-group":
					return 8192;
				case "table-footer-group":
					return 16384;
				case "table-row":
					return 32768;
				case "table-cell":
					return 65536;
				case "table-column-group":
					return 131072;
				case "table-column":
					return 262144;
				case "table-caption":
					return 524288;
				case "ruby-base":
					return 1048576;
				case "ruby-text":
					return 2097152;
				case "ruby-base-container":
					return 4194304;
				case "ruby-text-container":
					return 8388608;
				case "contents":
					return 16777216;
				case "inline-block":
					return 33554432;
				case "inline-list-item":
					return 67108864;
				case "inline-table":
					return 134217728;
				case "inline-flex":
					return 268435456;
				case "inline-grid":
					return 536870912
			}
			return 0
		};
	(bt = Dt || (Dt = {}))[bt.NONE = 0] = "NONE", bt[bt.LEFT = 1] = "LEFT", bt[bt.RIGHT = 2] = "RIGHT", bt[bt
		.INLINE_START = 3] = "INLINE_START";
	var kt, Wt, Yt, qt, Zt = {
			name: "float",
			initialValue: "none",
			prefix: !(bt[bt.INLINE_END = 4] = "INLINE_END"),
			type: Ce.IDENT_VALUE,
			parse: function(A) {
				switch (A) {
					case "left":
						return Dt.LEFT;
					case "right":
						return Dt.RIGHT;
					case "inline-start":
						return Dt.INLINE_START;
					case "inline-end":
						return Dt.INLINE_END
				}
				return Dt.NONE
			}
		},
		jt = {
			name: "letter-spacing",
			initialValue: "0",
			prefix: !1,
			type: Ce.VALUE,
			parse: function(A) {
				return A.type === sA.IDENT_TOKEN && "normal" === A.value ? 0 : A.type === sA.NUMBER_TOKEN ? A
					.number : A.type === sA.DIMENSION_TOKEN ? A.number : 0
			}
		},
		$t = {
			name: "line-break",
			initialValue: (Wt = kt || (kt = {})).NORMAL = "normal",
			prefix: !(Wt.STRICT = "strict"),
			type: Ce.IDENT_VALUE,
			parse: function(A) {
				switch (A) {
					case "strict":
						return kt.STRICT;
					case "normal":
					default:
						return kt.NORMAL
				}
			}
		},
		Ar = {
			name: "line-height",
			initialValue: "normal",
			prefix: !1,
			type: Ce.TOKEN_VALUE
		},
		er = {
			name: "list-style-image",
			initialValue: "none",
			type: Ce.VALUE,
			prefix: !1,
			parse: function(A) {
				return A.type === sA.IDENT_TOKEN && "none" === A.value ? null : ot(A)
			}
		};
	(qt = Yt || (Yt = {}))[qt.INSIDE = 0] = "INSIDE";
	var tr, rr, nr = {
		name: "list-style-position",
		initialValue: "outside",
		prefix: !(qt[qt.OUTSIDE = 1] = "OUTSIDE"),
		type: Ce.IDENT_VALUE,
		parse: function(A) {
			switch (A) {
				case "inside":
					return Yt.INSIDE;
				case "outside":
				default:
					return Yt.OUTSIDE
			}
		}
	};
	(rr = tr || (tr = {}))[rr.NONE = -1] = "NONE", rr[rr.DISC = 0] = "DISC", rr[rr.CIRCLE = 1] = "CIRCLE", rr[rr
			.SQUARE = 2] = "SQUARE", rr[rr.DECIMAL = 3] = "DECIMAL", rr[rr.CJK_DECIMAL = 4] = "CJK_DECIMAL", rr[rr
			.DECIMAL_LEADING_ZERO = 5] = "DECIMAL_LEADING_ZERO", rr[rr.LOWER_ROMAN = 6] = "LOWER_ROMAN", rr[rr
			.UPPER_ROMAN = 7] = "UPPER_ROMAN", rr[rr.LOWER_GREEK = 8] = "LOWER_GREEK", rr[rr.LOWER_ALPHA = 9] =
		"LOWER_ALPHA", rr[rr.UPPER_ALPHA = 10] = "UPPER_ALPHA", rr[rr.ARABIC_INDIC = 11] = "ARABIC_INDIC", rr[rr
			.ARMENIAN = 12] = "ARMENIAN", rr[rr.BENGALI = 13] = "BENGALI", rr[rr.CAMBODIAN = 14] = "CAMBODIAN", rr[
			rr.CJK_EARTHLY_BRANCH = 15] = "CJK_EARTHLY_BRANCH", rr[rr.CJK_HEAVENLY_STEM = 16] = "CJK_HEAVENLY_STEM",
		rr[rr.CJK_IDEOGRAPHIC = 17] = "CJK_IDEOGRAPHIC", rr[rr.DEVANAGARI = 18] = "DEVANAGARI", rr[rr
			.ETHIOPIC_NUMERIC = 19] = "ETHIOPIC_NUMERIC", rr[rr.GEORGIAN = 20] = "GEORGIAN", rr[rr.GUJARATI = 21] =
		"GUJARATI", rr[rr.GURMUKHI = 22] = "GURMUKHI", rr[rr.HEBREW = 22] = "HEBREW", rr[rr.HIRAGANA = 23] =
		"HIRAGANA", rr[rr.HIRAGANA_IROHA = 24] = "HIRAGANA_IROHA", rr[rr.JAPANESE_FORMAL = 25] = "JAPANESE_FORMAL",
		rr[rr.JAPANESE_INFORMAL = 26] = "JAPANESE_INFORMAL", rr[rr.KANNADA = 27] = "KANNADA", rr[rr.KATAKANA = 28] =
		"KATAKANA", rr[rr.KATAKANA_IROHA = 29] = "KATAKANA_IROHA", rr[rr.KHMER = 30] = "KHMER", rr[rr
			.KOREAN_HANGUL_FORMAL = 31] = "KOREAN_HANGUL_FORMAL", rr[rr.KOREAN_HANJA_FORMAL = 32] =
		"KOREAN_HANJA_FORMAL", rr[rr.KOREAN_HANJA_INFORMAL = 33] = "KOREAN_HANJA_INFORMAL", rr[rr.LAO = 34] = "LAO",
		rr[rr.LOWER_ARMENIAN = 35] = "LOWER_ARMENIAN", rr[rr.MALAYALAM = 36] = "MALAYALAM", rr[rr.MONGOLIAN = 37] =
		"MONGOLIAN", rr[rr.MYANMAR = 38] = "MYANMAR", rr[rr.ORIYA = 39] = "ORIYA", rr[rr.PERSIAN = 40] = "PERSIAN",
		rr[rr.SIMP_CHINESE_FORMAL = 41] = "SIMP_CHINESE_FORMAL", rr[rr.SIMP_CHINESE_INFORMAL = 42] =
		"SIMP_CHINESE_INFORMAL", rr[rr.TAMIL = 43] = "TAMIL", rr[rr.TELUGU = 44] = "TELUGU", rr[rr.THAI = 45] =
		"THAI", rr[rr.TIBETAN = 46] = "TIBETAN", rr[rr.TRAD_CHINESE_FORMAL = 47] = "TRAD_CHINESE_FORMAL", rr[rr
			.TRAD_CHINESE_INFORMAL = 48] = "TRAD_CHINESE_INFORMAL", rr[rr.UPPER_ARMENIAN = 49] = "UPPER_ARMENIAN",
		rr[rr.DISCLOSURE_OPEN = 50] = "DISCLOSURE_OPEN";

	function Br(A) {
		return {
			name: "margin-" + A,
			initialValue: "0",
			prefix: !1,
			type: Ce.TOKEN_VALUE
		}
	}
	var sr, or, ir = {
			name: "list-style-type",
			initialValue: "none",
			prefix: !(rr[rr.DISCLOSURE_CLOSED = 51] = "DISCLOSURE_CLOSED"),
			type: Ce.IDENT_VALUE,
			parse: function(A) {
				switch (A) {
					case "disc":
						return tr.DISC;
					case "circle":
						return tr.CIRCLE;
					case "square":
						return tr.SQUARE;
					case "decimal":
						return tr.DECIMAL;
					case "cjk-decimal":
						return tr.CJK_DECIMAL;
					case "decimal-leading-zero":
						return tr.DECIMAL_LEADING_ZERO;
					case "lower-roman":
						return tr.LOWER_ROMAN;
					case "upper-roman":
						return tr.UPPER_ROMAN;
					case "lower-greek":
						return tr.LOWER_GREEK;
					case "lower-alpha":
						return tr.LOWER_ALPHA;
					case "upper-alpha":
						return tr.UPPER_ALPHA;
					case "arabic-indic":
						return tr.ARABIC_INDIC;
					case "armenian":
						return tr.ARMENIAN;
					case "bengali":
						return tr.BENGALI;
					case "cambodian":
						return tr.CAMBODIAN;
					case "cjk-earthly-branch":
						return tr.CJK_EARTHLY_BRANCH;
					case "cjk-heavenly-stem":
						return tr.CJK_HEAVENLY_STEM;
					case "cjk-ideographic":
						return tr.CJK_IDEOGRAPHIC;
					case "devanagari":
						return tr.DEVANAGARI;
					case "ethiopic-numeric":
						return tr.ETHIOPIC_NUMERIC;
					case "georgian":
						return tr.GEORGIAN;
					case "gujarati":
						return tr.GUJARATI;
					case "gurmukhi":
						return tr.GURMUKHI;
					case "hebrew":
						return tr.HEBREW;
					case "hiragana":
						return tr.HIRAGANA;
					case "hiragana-iroha":
						return tr.HIRAGANA_IROHA;
					case "japanese-formal":
						return tr.JAPANESE_FORMAL;
					case "japanese-informal":
						return tr.JAPANESE_INFORMAL;
					case "kannada":
						return tr.KANNADA;
					case "katakana":
						return tr.KATAKANA;
					case "katakana-iroha":
						return tr.KATAKANA_IROHA;
					case "khmer":
						return tr.KHMER;
					case "korean-hangul-formal":
						return tr.KOREAN_HANGUL_FORMAL;
					case "korean-hanja-formal":
						return tr.KOREAN_HANJA_FORMAL;
					case "korean-hanja-informal":
						return tr.KOREAN_HANJA_INFORMAL;
					case "lao":
						return tr.LAO;
					case "lower-armenian":
						return tr.LOWER_ARMENIAN;
					case "malayalam":
						return tr.MALAYALAM;
					case "mongolian":
						return tr.MONGOLIAN;
					case "myanmar":
						return tr.MYANMAR;
					case "oriya":
						return tr.ORIYA;
					case "persian":
						return tr.PERSIAN;
					case "simp-chinese-formal":
						return tr.SIMP_CHINESE_FORMAL;
					case "simp-chinese-informal":
						return tr.SIMP_CHINESE_INFORMAL;
					case "tamil":
						return tr.TAMIL;
					case "telugu":
						return tr.TELUGU;
					case "thai":
						return tr.THAI;
					case "tibetan":
						return tr.TIBETAN;
					case "trad-chinese-formal":
						return tr.TRAD_CHINESE_FORMAL;
					case "trad-chinese-informal":
						return tr.TRAD_CHINESE_INFORMAL;
					case "upper-armenian":
						return tr.UPPER_ARMENIAN;
					case "disclosure-open":
						return tr.DISCLOSURE_OPEN;
					case "disclosure-closed":
						return tr.DISCLOSURE_CLOSED;
					case "none":
					default:
						return tr.NONE
				}
			}
		},
		ar = Br("top"),
		cr = Br("right"),
		Qr = Br("bottom"),
		wr = Br("left");
	(or = sr || (sr = {}))[or.VISIBLE = 0] = "VISIBLE", or[or.HIDDEN = 1] = "HIDDEN", or[or.SCROLL = 2] = "SCROLL";

	function ur(A) {
		return {
			name: "padding-" + A,
			initialValue: "0",
			prefix: !1,
			type: Ce.TYPE_VALUE,
			format: "length-percentage"
		}
	}
	var Ur, lr, Cr, gr, Er = {
			name: "overflow",
			initialValue: "visible",
			prefix: !(or[or.AUTO = 3] = "AUTO"),
			type: Ce.LIST,
			parse: function(A) {
				return A.filter(zA).map(function(A) {
					switch (A.value) {
						case "hidden":
							return sr.HIDDEN;
						case "scroll":
							return sr.SCROLL;
						case "auto":
							return sr.AUTO;
						case "visible":
						default:
							return sr.VISIBLE
					}
				})
			}
		},
		Fr = {
			name: "overflow-wrap",
			initialValue: (lr = Ur || (Ur = {})).NORMAL = "normal",
			prefix: !(lr.BREAK_WORD = "break-word"),
			type: Ce.IDENT_VALUE,
			parse: function(A) {
				switch (A) {
					case "break-word":
						return Ur.BREAK_WORD;
					case "normal":
					default:
						return Ur.NORMAL
				}
			}
		},
		hr = ur("top"),
		Hr = ur("right"),
		dr = ur("bottom"),
		fr = ur("left");
	(gr = Cr || (Cr = {}))[gr.LEFT = 0] = "LEFT", gr[gr.CENTER = 1] = "CENTER";
	var pr, Nr, Kr = {
		name: "text-align",
		initialValue: "left",
		prefix: !(gr[gr.RIGHT = 2] = "RIGHT"),
		type: Ce.IDENT_VALUE,
		parse: function(A) {
			switch (A) {
				case "right":
					return Cr.RIGHT;
				case "center":
				case "justify":
					return Cr.CENTER;
				case "left":
				default:
					return Cr.LEFT
			}
		}
	};
	(Nr = pr || (pr = {}))[Nr.STATIC = 0] = "STATIC", Nr[Nr.RELATIVE = 1] = "RELATIVE", Nr[Nr.ABSOLUTE = 2] =
		"ABSOLUTE", Nr[Nr.FIXED = 3] = "FIXED";
	var Ir, Tr, mr = {
			name: "position",
			initialValue: "static",
			prefix: !(Nr[Nr.STICKY = 4] = "STICKY"),
			type: Ce.IDENT_VALUE,
			parse: function(A) {
				switch (A) {
					case "relative":
						return pr.RELATIVE;
					case "absolute":
						return pr.ABSOLUTE;
					case "fixed":
						return pr.FIXED;
					case "sticky":
						return pr.STICKY
				}
				return pr.STATIC
			}
		},
		Rr = {
			name: "text-shadow",
			initialValue: "none",
			type: Ce.LIST,
			prefix: !1,
			parse: function(A) {
				return 1 === A.length && JA(A[0], "none") ? [] : WA(A).map(function(A) {
					for (var e = {
							color: He.TRANSPARENT,
							offsetX: se,
							offsetY: se,
							blur: se
						}, t = 0, r = 0; r < A.length; r++) {
						var n = A[r];
						YA(n) ? (0 === t ? e.offsetX = n : 1 === t ? e.offsetY = n : e.blur = n, t++) :
							e.color = we(n)
					}
					return e
				})
			}
		};
	(Tr = Ir || (Ir = {}))[Tr.NONE = 0] = "NONE", Tr[Tr.LOWERCASE = 1] = "LOWERCASE", Tr[Tr.UPPERCASE = 2] =
		"UPPERCASE";
	var Lr, Or, vr = {
			name: "text-transform",
			initialValue: "none",
			prefix: !(Tr[Tr.CAPITALIZE = 3] = "CAPITALIZE"),
			type: Ce.IDENT_VALUE,
			parse: function(A) {
				switch (A) {
					case "uppercase":
						return Ir.UPPERCASE;
					case "lowercase":
						return Ir.LOWERCASE;
					case "capitalize":
						return Ir.CAPITALIZE
				}
				return Ir.NONE
			}
		},
		Dr = {
			name: "transform",
			initialValue: "none",
			prefix: !0,
			type: Ce.VALUE,
			parse: function(A) {
				if (A.type === sA.IDENT_TOKEN && "none" === A.value) return null;
				if (A.type !== sA.FUNCTION) return null;
				var e = br[A.name];
				if (void 0 === e) throw new Error('Attempting to parse an unsupported transform function "' + A
					.name + '"');
				return e(A.values)
			}
		},
		br = {
			matrix: function(A) {
				var e = A.filter(function(A) {
					return A.type === sA.NUMBER_TOKEN
				}).map(function(A) {
					return A.number
				});
				return 6 === e.length ? e : null
			},
			matrix3d: function(A) {
				var e = A.filter(function(A) {
						return A.type === sA.NUMBER_TOKEN
					}).map(function(A) {
						return A.number
					}),
					t = e[0],
					r = e[1],
					n = (e[2], e[3], e[4]),
					B = e[5],
					s = (e[6], e[7], e[8], e[9], e[10], e[11], e[12]),
					o = e[13];
				e[14], e[15];
				return 16 === e.length ? [t, r, n, B, s, o] : null
			}
		},
		Sr = {
			type: sA.PERCENTAGE_TOKEN,
			number: 50,
			flags: 4
		},
		Mr = [Sr, Sr],
		yr = {
			name: "transform-origin",
			initialValue: "50% 50%",
			prefix: !0,
			type: Ce.LIST,
			parse: function(A) {
				var e = A.filter(qA);
				return 2 !== e.length ? Mr : [e[0], e[1]]
			}
		};
	(Or = Lr || (Lr = {}))[Or.VISIBLE = 0] = "VISIBLE", Or[Or.HIDDEN = 1] = "HIDDEN";
	var _r, Pr, xr = {
		name: "visible",
		initialValue: "none",
		prefix: !(Or[Or.COLLAPSE = 2] = "COLLAPSE"),
		type: Ce.IDENT_VALUE,
		parse: function(A) {
			switch (A) {
				case "hidden":
					return Lr.HIDDEN;
				case "collapse":
					return Lr.COLLAPSE;
				case "visible":
				default:
					return Lr.VISIBLE
			}
		}
	};
	(Pr = _r || (_r = {})).NORMAL = "normal", Pr.BREAK_ALL = "break-all";
	var Vr, zr, Xr = {
			name: "word-break",
			initialValue: "normal",
			prefix: !(Pr.KEEP_ALL = "keep-all"),
			type: Ce.IDENT_VALUE,
			parse: function(A) {
				switch (A) {
					case "break-all":
						return _r.BREAK_ALL;
					case "keep-all":
						return _r.KEEP_ALL;
					case "normal":
					default:
						return _r.NORMAL
				}
			}
		},
		Jr = {
			name: "z-index",
			initialValue: "auto",
			prefix: !1,
			type: Ce.VALUE,
			parse: function(A) {
				if (A.type === sA.IDENT_TOKEN) return {
					auto: !0,
					order: 0
				};
				if (VA(A)) return {
					auto: !1,
					order: A.number
				};
				throw new Error("Invalid z-index number parsed")
			}
		},
		Gr = {
			name: "opacity",
			initialValue: "1",
			type: Ce.VALUE,
			prefix: !1,
			parse: function(A) {
				return VA(A) ? A.number : 1
			}
		},
		kr = {
			name: "text-decoration-color",
			initialValue: "transparent",
			prefix: !1,
			type: Ce.TYPE_VALUE,
			format: "color"
		},
		Wr = {
			name: "text-decoration-line",
			initialValue: "none",
			prefix: !1,
			type: Ce.LIST,
			parse: function(A) {
				return A.filter(zA).map(function(A) {
					switch (A.value) {
						case "underline":
							return 1;
						case "overline":
							return 2;
						case "line-through":
							return 3;
						case "none":
							return 4
					}
					return 0
				}).filter(function(A) {
					return 0 !== A
				})
			}
		},
		Yr = {
			name: "font-family",
			initialValue: "",
			prefix: !1,
			type: Ce.LIST,
			parse: function(A) {
				var e = [],
					t = [];
				return A.forEach(function(A) {
					switch (A.type) {
						case sA.IDENT_TOKEN:
						case sA.STRING_TOKEN:
							e.push(A.value);
							break;
						case sA.NUMBER_TOKEN:
							e.push(A.number.toString());
							break;
						case sA.COMMA_TOKEN:
							t.push(e.join(" ")), e.length = 0
					}
				}), e.length && t.push(e.join(" ")), t.map(function(A) {
					return -1 === A.indexOf(" ") ? A : "'" + A + "'"
				})
			}
		},
		qr = {
			name: "font-size",
			initialValue: "0",
			prefix: !1,
			type: Ce.TYPE_VALUE,
			format: "length"
		},
		Zr = {
			name: "font-weight",
			initialValue: "normal",
			type: Ce.VALUE,
			prefix: !1,
			parse: function(A) {
				if (VA(A)) return A.number;
				if (zA(A)) switch (A.value) {
					case "bold":
						return 700;
					case "normal":
					default:
						return 400
				}
				return 400
			}
		},
		jr = {
			name: "font-variant",
			initialValue: "none",
			type: Ce.LIST,
			prefix: !1,
			parse: function(A) {
				return A.filter(zA).map(function(A) {
					return A.value
				})
			}
		};
	(zr = Vr || (Vr = {})).NORMAL = "normal", zr.ITALIC = "italic";

	function $r(A, e) {
		return 0 != (A & e)
	}

	function An(A, e, t) {
		if (!A) return "";
		var r = A[Math.min(e, A.length - 1)];
		return r ? t ? r.open : r.close : ""
	}
	var en = {
			name: "font-style",
			initialValue: "normal",
			prefix: !(zr.OBLIQUE = "oblique"),
			type: Ce.IDENT_VALUE,
			parse: function(A) {
				switch (A) {
					case "oblique":
						return Vr.OBLIQUE;
					case "italic":
						return Vr.ITALIC;
					case "normal":
					default:
						return Vr.NORMAL
				}
			}
		},
		tn = {
			name: "content",
			initialValue: "none",
			type: Ce.LIST,
			prefix: !1,
			parse: function(A) {
				if (0 === A.length) return [];
				var e = A[0];
				return e.type === sA.IDENT_TOKEN && "none" === e.value ? [] : A
			}
		},
		rn = {
			name: "counter-increment",
			initialValue: "none",
			prefix: !0,
			type: Ce.LIST,
			parse: function(A) {
				if (0 === A.length) return null;
				var e = A[0];
				if (e.type === sA.IDENT_TOKEN && "none" === e.value) return null;
				for (var t = [], r = A.filter(GA), n = 0; n < r.length; n++) {
					var B = r[n],
						s = r[n + 1];
					if (B.type === sA.IDENT_TOKEN) {
						var o = s && VA(s) ? s.number : 1;
						t.push({
							counter: B.value,
							increment: o
						})
					}
				}
				return t
			}
		},
		nn = {
			name: "counter-reset",
			initialValue: "none",
			prefix: !0,
			type: Ce.LIST,
			parse: function(A) {
				if (0 === A.length) return [];
				for (var e = [], t = A.filter(GA), r = 0; r < t.length; r++) {
					var n = t[r],
						B = t[r + 1];
					if (zA(n) && "none" !== n.value) {
						var s = B && VA(B) ? B.number : 0;
						e.push({
							counter: n.value,
							reset: s
						})
					}
				}
				return e
			}
		},
		Bn = {
			name: "quotes",
			initialValue: "none",
			prefix: !0,
			type: Ce.LIST,
			parse: function(A) {
				if (0 === A.length) return null;
				var e = A[0];
				if (e.type === sA.IDENT_TOKEN && "none" === e.value) return null;
				var t = [],
					r = A.filter(XA);
				if (r.length % 2 != 0) return null;
				for (var n = 0; n < r.length; n += 2) {
					var B = r[n].value,
						s = r[n + 1].value;
					t.push({
						open: B,
						close: s
					})
				}
				return t
			}
		},
		sn = {
			name: "box-shadow",
			initialValue: "none",
			type: Ce.LIST,
			prefix: !1,
			parse: function(A) {
				return 1 === A.length && JA(A[0], "none") ? [] : WA(A).map(function(A) {
					for (var e = {
							color: 255,
							offsetX: se,
							offsetY: se,
							blur: se,
							spread: se,
							inset: !1
						}, t = 0, r = 0; r < A.length; r++) {
						var n = A[r];
						JA(n, "inset") ? e.inset = !0 : YA(n) ? (0 === t ? e.offsetX = n : 1 === t ? e
							.offsetY = n : 2 === t ? e.blur = n : e.spread = n, t++) : e.color = we(
							n)
					}
					return e
				})
			}
		},
		on = (an.prototype.isVisible = function() {
			return 0 < this.display && 0 < this.opacity && this.visibility === Lr.VISIBLE
		}, an.prototype.isTransparent = function() {
			return ee(this.backgroundColor)
		}, an.prototype.isTransformed = function() {
			return null !== this.transform
		}, an.prototype.isPositioned = function() {
			return this.position !== pr.STATIC
		}, an.prototype.isPositionedWithZIndex = function() {
			return this.isPositioned() && !this.zIndex.auto
		}, an.prototype.isFloating = function() {
			return this.float !== Dt.NONE
		}, an.prototype.isInlineLevel = function() {
			return $r(this.display, 4) || $r(this.display, 33554432) || $r(this.display, 268435456) || $r(this
				.display, 536870912) || $r(this.display, 67108864) || $r(this.display, 134217728)
		}, an);

	function an(A) {
		this.backgroundClip = un(me, A.backgroundClip), this.backgroundColor = un(Re, A.backgroundColor), this
			.backgroundImage = un(Qt, A.backgroundImage), this.backgroundOrigin = un(wt, A.backgroundOrigin), this
			.backgroundPosition = un(ut, A.backgroundPosition), this.backgroundRepeat = un(Ct, A.backgroundRepeat),
			this.backgroundSize = un(dt, A.backgroundSize), this.borderTopColor = un(pt, A.borderTopColor), this
			.borderRightColor = un(Nt, A.borderRightColor), this.borderBottomColor = un(Kt, A.borderBottomColor),
			this.borderLeftColor = un(It, A.borderLeftColor), this.borderTopLeftRadius = un(Tt, A
				.borderTopLeftRadius), this.borderTopRightRadius = un(mt, A.borderTopRightRadius), this
			.borderBottomRightRadius = un(Rt, A.borderBottomRightRadius), this.borderBottomLeftRadius = un(Lt, A
				.borderBottomLeftRadius), this.borderTopStyle = un(St, A.borderTopStyle), this.borderRightStyle =
			un(Mt, A.borderRightStyle), this.borderBottomStyle = un(yt, A.borderBottomStyle), this.borderLeftStyle =
			un(_t, A.borderLeftStyle), this.borderTopWidth = un(Pt, A.borderTopWidth), this.borderRightWidth = un(
				xt, A.borderRightWidth), this.borderBottomWidth = un(Vt, A.borderBottomWidth), this
			.borderLeftWidth = un(zt, A.borderLeftWidth), this.boxShadow = un(sn, A.boxShadow), this.color = un(Xt,
				A.color), this.display = un(Jt, A.display), this.float = un(Zt, A.cssFloat), this.fontFamily = un(
				Yr, A.fontFamily), this.fontSize = un(qr, A.fontSize), this.fontStyle = un(en, A.fontStyle), this
			.fontVariant = un(jr, A.fontVariant), this.fontWeight = un(Zr, A.fontWeight), this.letterSpacing = un(
				jt, A.letterSpacing), this.lineBreak = un($t, A.lineBreak), this.lineHeight = un(Ar, A.lineHeight),
			this.listStyleImage = un(er, A.listStyleImage), this.listStylePosition = un(nr, A.listStylePosition),
			this.listStyleType = un(ir, A.listStyleType), this.marginTop = un(ar, A.marginTop), this.marginRight =
			un(cr, A.marginRight), this.marginBottom = un(Qr, A.marginBottom), this.marginLeft = un(wr, A
				.marginLeft), this.opacity = un(Gr, A.opacity);
		var e = un(Er, A.overflow);
		this.overflowX = e[0], this.overflowY = e[1 < e.length ? 1 : 0], this.overflowWrap = un(Fr, A.overflowWrap),
			this.paddingTop = un(hr, A.paddingTop), this.paddingRight = un(Hr, A.paddingRight), this.paddingBottom =
			un(dr, A.paddingBottom), this.paddingLeft = un(fr, A.paddingLeft), this.position = un(mr, A.position),
			this.textAlign = un(Kr, A.textAlign), this.textDecorationColor = un(kr, A.textDecorationColor || A
				.color), this.textDecorationLine = un(Wr, A.textDecorationLine), this.textShadow = un(Rr, A
				.textShadow), this.textTransform = un(vr, A.textTransform), this.transform = un(Dr, A.transform),
			this.transformOrigin = un(yr, A.transformOrigin), this.visibility = un(xr, A.visibility), this
			.wordBreak = un(Xr, A.wordBreak), this.zIndex = un(Jr, A.zIndex)
	}
	var cn, Qn = function(A) {
			this.content = un(tn, A.content), this.quotes = un(Bn, A.quotes)
		},
		wn = function(A) {
			this.counterIncrement = un(rn, A.counterIncrement), this.counterReset = un(nn, A.counterReset)
		},
		un = function(A, e) {
			var t = new MA,
				r = null != e ? e.toString() : A.initialValue;
			t.write(r);
			var n = new _A(t.read());
			switch (A.type) {
				case Ce.IDENT_VALUE:
					var B = n.parseComponentValue();
					return A.parse(zA(B) ? B.value : A.initialValue);
				case Ce.VALUE:
					return A.parse(n.parseComponentValue());
				case Ce.LIST:
					return A.parse(n.parseComponentValues());
				case Ce.TOKEN_VALUE:
					return n.parseComponentValue();
				case Ce.TYPE_VALUE:
					switch (A.format) {
						case "angle":
							return ce(n.parseComponentValue());
						case "color":
							return we(n.parseComponentValue());
						case "image":
							return ot(n.parseComponentValue());
						case "length":
							var s = n.parseComponentValue();
							return YA(s) ? s : se;
						case "length-percentage":
							var o = n.parseComponentValue();
							return qA(o) ? o : se
					}
			}
			throw new Error("Attempting to parse unsupported css format type " + A.format)
		},
		Un = function(A) {
			this.styles = new on(window.getComputedStyle(A, null)), this.textNodes = [], this.elements = [],
				null !== this.styles.transform && wB(A) && (A.style.transform = "none"), this.bounds = T(A), this
				.flags = 0
		},
		ln = function(A, e) {
			this.text = A, this.bounds = e
		},
		Cn = function(A) {
			var e = A.ownerDocument;
			if (e) {
				var t = e.createElement("html2canvaswrapper");
				t.appendChild(A.cloneNode(!0));
				var r = A.parentNode;
				if (r) {
					r.replaceChild(t, A);
					var n = T(t);
					return t.firstChild && r.replaceChild(t.firstChild, t), n
				}
			}
			return new I(0, 0, 0, 0)
		},
		gn = function(A, e, t) {
			var r = A.ownerDocument;
			if (!r) throw new Error("Node has no owner document");
			var n = r.createRange();
			return n.setStart(A, e), n.setEnd(A, e + t), I.fromClientRect(n.getBoundingClientRect())
		},
		En = function(A, e) {
			return 0 !== e.letterSpacing ? c(A).map(function(A) {
				return l(A)
			}) : Fn(A, e)
		},
		Fn = function(A, e) {
			for (var t, r = function(A, e) {
					var t = c(A),
						r = u(t, e),
						n = r[0],
						B = r[1],
						s = r[2],
						o = t.length,
						i = 0,
						a = 0;
					return {
						next: function() {
							if (o <= a) return {
								done: !0,
								value: null
							};
							for (var A = Y; a < o && (A = w(t, B, n, ++a, s)) === Y;);
							if (A === Y && a !== o) return {
								done: !0,
								value: null
							};
							var e = new nA(t, A, i, a);
							return i = a, {
								value: e,
								done: !1
							}
						}
					}
				}(A, {
					lineBreak: e.lineBreak,
					wordBreak: e.overflowWrap === Ur.BREAK_WORD ? "break-word" : e.wordBreak
				}), n = []; !(t = r.next()).done;) t.value && n.push(t.value.slice());
			return n
		},
		hn = function(A, e) {
			this.text = Hn(A.data, e.textTransform), this.textBounds = function(A, t, r) {
				var e = En(A, t),
					n = [],
					B = 0;
				return e.forEach(function(A) {
					if (t.textDecorationLine.length || 0 < A.trim().length)
						if (ve.SUPPORT_RANGE_BOUNDS) n.push(new ln(A, gn(r, B, A.length)));
						else {
							var e = r.splitText(A.length);
							n.push(new ln(A, Cn(r))), r = e
						}
					else ve.SUPPORT_RANGE_BOUNDS || (r = r.splitText(A.length));
					B += A.length
				}), n
			}(this.text, e, A)
		},
		Hn = function(A, e) {
			switch (e) {
				case Ir.LOWERCASE:
					return A.toLowerCase();
				case Ir.CAPITALIZE:
					return A.replace(dn, fn);
				case Ir.UPPERCASE:
					return A.toUpperCase();
				default:
					return A
			}
		},
		dn = /(^|\s|:|-|\(|\))([a-z])/g,
		fn = function(A, e, t) {
			return 0 < A.length ? e + t.toUpperCase() : A
		},
		pn = (A(Nn, cn = Un), Nn);

	function Nn(A) {
		var e = cn.call(this, A) || this;
		return e.src = A.currentSrc || A.src, e.intrinsicWidth = A.naturalWidth, e.intrinsicHeight = A
			.naturalHeight, Se.getInstance().addImage(e.src), e
	}
	var Kn, In = (A(Tn, Kn = Un), Tn);

	function Tn(A) {
		var e = Kn.call(this, A) || this;
		return e.canvas = A, e.intrinsicWidth = A.width, e.intrinsicHeight = A.height, e
	}
	var mn, Rn = (A(Ln, mn = Un), Ln);

	function Ln(A) {
		var e = mn.call(this, A) || this,
			t = new XMLSerializer;
		return e.svg = "data:image/svg+xml," + encodeURIComponent(t.serializeToString(A)), e.intrinsicWidth = A
			.width.baseVal.value, e.intrinsicHeight = A.height.baseVal.value, Se.getInstance().addImage(e.svg), e
	}
	var On, vn = (A(Dn, On = Un), Dn);

	function Dn(A) {
		var e = On.call(this, A) || this;
		return e.value = A.value, e
	}
	var bn, Sn = (A(Mn, bn = Un), Mn);

	function Mn(A) {
		var e = bn.call(this, A) || this;
		return e.start = A.start, e.reversed = "boolean" == typeof A.reversed && !0 === A.reversed, e
	}
	var yn, _n = [{
			type: sA.DIMENSION_TOKEN,
			flags: 0,
			unit: "px",
			number: 3
		}],
		Pn = [{
			type: sA.PERCENTAGE_TOKEN,
			flags: 0,
			number: 50
		}],
		xn = "checkbox",
		Vn = "radio",
		zn = "password",
		Xn = 707406591,
		Jn = (A(Gn, yn = Un), Gn);

	function Gn(A) {
		var e = yn.call(this, A) || this;
		switch (e.type = A.type.toLowerCase(), e.checked = A.checked, e.value = function(A) {
			var e = A.type === zn ? new Array(A.value.length + 1).join("•") : A.value;
			return 0 === e.length ? A.placeholder || "" : e
		}(A), e.type !== xn && e.type !== Vn || (e.styles.backgroundColor = 3739148031, e.styles
			.borderTopColor = e.styles.borderRightColor = e.styles.borderBottomColor = e.styles
			.borderLeftColor = 2779096575, e.styles.borderTopWidth = e.styles.borderRightWidth = e.styles
			.borderBottomWidth = e.styles.borderLeftWidth = 1, e.styles.borderTopStyle = e.styles
			.borderRightStyle = e.styles.borderBottomStyle = e.styles.borderLeftStyle = ht.SOLID, e.styles
			.backgroundClip = [Ee.BORDER_BOX], e.styles.backgroundOrigin = [0], e.bounds = function(A) {
				return A.width > A.height ? new I(A.left + (A.width - A.height) / 2, A.top, A.height, A
					.height) : A.width < A.height ? new I(A.left, A.top + (A.height - A.width) / 2, A.width, A
						.width) : A
			}(e.bounds)), e.type) {
			case xn:
				e.styles.borderTopRightRadius = e.styles.borderTopLeftRadius = e.styles.borderBottomRightRadius = e
					.styles.borderBottomLeftRadius = _n;
				break;
			case Vn:
				e.styles.borderTopRightRadius = e.styles.borderTopLeftRadius = e.styles.borderBottomRightRadius = e
					.styles.borderBottomLeftRadius = Pn
		}
		return e
	}
	var kn, Wn = (A(Yn, kn = Un), Yn);

	function Yn(A) {
		var e = kn.call(this, A) || this,
			t = A.options[A.selectedIndex || 0];
		return e.value = t && t.text || "", e
	}
	var qn, Zn = (A(jn, qn = Un), jn);

	function jn(A) {
		var e = qn.call(this, A) || this;
		return e.value = A.value, e
	}

	function $n(A) {
		return we(_A.create(A).parseComponentValue())
	}
	var AB, eB = (A(tB, AB = Un), tB);

	function tB(A) {
		var e = AB.call(this, A) || this;
		e.src = A.src, e.width = parseInt(A.width, 10) || 0, e.height = parseInt(A.height, 10) || 0, e
			.backgroundColor = e.styles.backgroundColor;
		try {
			if (A.contentWindow && A.contentWindow.document && A.contentWindow.document.documentElement) {
				e.tree = oB(A.contentWindow.document.documentElement);
				var t = A.contentWindow.document.documentElement ? $n(getComputedStyle(A.contentWindow.document
						.documentElement).backgroundColor) : He.TRANSPARENT,
					r = A.contentWindow.document.body ? $n(getComputedStyle(A.contentWindow.document.body)
						.backgroundColor) : He.TRANSPARENT;
				e.backgroundColor = ee(t) ? ee(r) ? e.styles.backgroundColor : r : t
			}
		} catch (A) {}
		return e
	}

	function rB(A) {
		return "STYLE" === A.tagName
	}
	var nB = ["OL", "UL", "MENU"],
		BB = function(A, e, t) {
			for (var r = A.firstChild, n = void 0; r; r = n)
				if (n = r.nextSibling, cB(r) && 0 < r.data.trim().length) e.textNodes.push(new hn(r, e.styles));
				else if (QB(r)) {
				var B = sB(r);
				B.styles.isVisible() && (iB(r, B, t) ? B.flags |= 4 : aB(B.styles) && (B.flags |= 2), -1 !== nB
					.indexOf(r.tagName) && (B.flags |= 8), e.elements.push(B), dB(r) || gB(r) || fB(r) || BB(r,
						B, t))
			}
		},
		sB = function(A) {
			return hB(A) ? new pn(A) : FB(A) ? new In(A) : gB(A) ? new Rn(A) : UB(A) ? new vn(A) : lB(A) ? new Sn(
				A) : CB(A) ? new Jn(A) : fB(A) ? new Wn(A) : dB(A) ? new Zn(A) : HB(A) ? new eB(A) : new Un(A)
		},
		oB = function(A) {
			var e = sB(A);
			return e.flags |= 4, BB(A, e, e), e
		},
		iB = function(A, e, t) {
			return e.styles.isPositionedWithZIndex() || e.styles.opacity < 1 || e.styles.isTransformed() || EB(A) &&
				t.styles.isTransparent()
		},
		aB = function(A) {
			return A.isPositioned() || A.isFloating()
		},
		cB = function(A) {
			return A.nodeType === Node.TEXT_NODE
		},
		QB = function(A) {
			return A.nodeType === Node.ELEMENT_NODE
		},
		wB = function(A) {
			return QB(A) && void 0 !== A.style && !uB(A)
		},
		uB = function(A) {
			return "object" == typeof A.className
		},
		UB = function(A) {
			return "LI" === A.tagName
		},
		lB = function(A) {
			return "OL" === A.tagName
		},
		CB = function(A) {
			return "INPUT" === A.tagName
		},
		gB = function(A) {
			return "svg" === A.tagName
		},
		EB = function(A) {
			return "BODY" === A.tagName
		},
		FB = function(A) {
			return "CANVAS" === A.tagName
		},
		hB = function(A) {
			return "IMG" === A.tagName
		},
		HB = function(A) {
			return "IFRAME" === A.tagName
		},
		dB = function(A) {
			return "TEXTAREA" === A.tagName
		},
		fB = function(A) {
			return "SELECT" === A.tagName
		},
		pB = (NB.prototype.getCounterValue = function(A) {
			var e = this.counters[A];
			return e && e.length ? e[e.length - 1] : 1
		}, NB.prototype.getCounterValues = function(A) {
			var e = this.counters[A];
			return e || []
		}, NB.prototype.pop = function(A) {
			var e = this;
			A.forEach(function(A) {
				return e.counters[A].pop()
			})
		}, NB.prototype.parse = function(A) {
			var t = this,
				e = A.counterIncrement,
				r = A.counterReset,
				n = !0;
			null !== e && e.forEach(function(A) {
				var e = t.counters[A.counter];
				e && 0 !== A.increment && (n = !1, e[Math.max(0, e.length - 1)] += A.increment)
			});
			var B = [];
			return n && r.forEach(function(A) {
				var e = t.counters[A.counter];
				B.push(A.counter), e || (e = t.counters[A.counter] = []), e.push(A.reset)
			}), B
		}, NB);

	function NB() {
		this.counters = {}
	}

	function KB(r, A, e, n, t, B) {
		return r < A || e < r ? yB(r, t, 0 < B.length) : n.integers.reduce(function(A, e, t) {
			for (; e <= r;) r -= e, A += n.values[t];
			return A
		}, "") + B
	}

	function IB(A, e, t, r) {
		for (var n = ""; t || A--, n = r(A) + n, e <= (A /= e) * e;);
		return n
	}

	function TB(A, e, t, r, n) {
		var B = t - e + 1;
		return (A < 0 ? "-" : "") + (IB(Math.abs(A), B, r, function(A) {
			return l(Math.floor(A % B) + e)
		}) + n)
	}

	function mB(A, e, t) {
		void 0 === t && (t = ". ");
		var r = e.length;
		return IB(Math.abs(A), r, !1, function(A) {
			return e[Math.floor(A % r)]
		}) + t
	}

	function RB(A, e, t, r, n, B) {
		if (A < -9999 || 9999 < A) return yB(A, tr.CJK_DECIMAL, 0 < n.length);
		var s = Math.abs(A),
			o = n;
		if (0 === s) return e[0] + o;
		for (var i = 0; 0 < s && i <= 4; i++) {
			var a = s % 10;
			0 == a && $r(B, 1) && "" !== o ? o = e[a] + o : 1 < a || 1 == a && 0 === i || 1 == a && 1 === i && $r(B,
				2) || 1 == a && 1 === i && $r(B, 4) && 100 < A || 1 == a && 1 < i && $r(B, 8) ? o = e[a] + (0 <
				i ? t[i - 1] : "") + o : 1 == a && 0 < i && (o = t[i - 1] + o), s = Math.floor(s / 10)
		}
		return (A < 0 ? r : "") + o
	}
	var LB, OB, vB = {
			integers: [1e3, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1],
			values: ["M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"]
		},
		DB = {
			integers: [9e3, 8e3, 7e3, 6e3, 5e3, 4e3, 3e3, 2e3, 1e3, 900, 800, 700, 600, 500, 400, 300, 200, 100, 90,
				80, 70, 60, 50, 40, 30, 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1
			],
			values: ["Ք", "Փ", "Ւ", "Ց", "Ր", "Տ", "Վ", "Ս", "Ռ", "Ջ", "Պ", "Չ", "Ո", "Շ", "Ն", "Յ", "Մ", "Ճ", "Ղ",
				"Ձ", "Հ", "Կ", "Ծ", "Խ", "Լ", "Ի", "Ժ", "Թ", "Ը", "Է", "Զ", "Ե", "Դ", "Գ", "Բ", "Ա"
			]
		},
		bB = {
			integers: [1e4, 9e3, 8e3, 7e3, 6e3, 5e3, 4e3, 3e3, 2e3, 1e3, 400, 300, 200, 100, 90, 80, 70, 60, 50, 40,
				30, 20, 19, 18, 17, 16, 15, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1
			],
			values: ["י׳", "ט׳", "ח׳", "ז׳", "ו׳", "ה׳", "ד׳", "ג׳", "ב׳", "א׳", "ת", "ש", "ר", "ק", "צ", "פ", "ע",
				"ס", "נ", "מ", "ל", "כ", "יט", "יח", "יז", "טז", "טו", "י", "ט", "ח", "ז", "ו", "ה", "ד", "ג",
				"ב", "א"
			]
		},
		SB = {
			integers: [1e4, 9e3, 8e3, 7e3, 6e3, 5e3, 4e3, 3e3, 2e3, 1e3, 900, 800, 700, 600, 500, 400, 300, 200,
				100, 90, 80, 70, 60, 50, 40, 30, 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1
			],
			values: ["ჵ", "ჰ", "ჯ", "ჴ", "ხ", "ჭ", "წ", "ძ", "ც", "ჩ", "შ", "ყ", "ღ", "ქ", "ფ", "ჳ", "ტ", "ს", "რ",
				"ჟ", "პ", "ო", "ჲ", "ნ", "მ", "ლ", "კ", "ი", "თ", "ჱ", "ზ", "ვ", "ე", "დ", "გ", "ბ", "ა"
			]
		},
		MB = "마이너스",
		yB = function(A, e, t) {
			var r = t ? ". " : "",
				n = t ? "、" : "",
				B = t ? ", " : "",
				s = t ? " " : "";
			switch (e) {
				case tr.DISC:
					return "•" + s;
				case tr.CIRCLE:
					return "◦" + s;
				case tr.SQUARE:
					return "◾" + s;
				case tr.DECIMAL_LEADING_ZERO:
					var o = TB(A, 48, 57, !0, r);
					return o.length < 4 ? "0" + o : o;
				case tr.CJK_DECIMAL:
					return mB(A, "〇一二三四五六七八九", n);
				case tr.LOWER_ROMAN:
					return KB(A, 1, 3999, vB, tr.DECIMAL, r).toLowerCase();
				case tr.UPPER_ROMAN:
					return KB(A, 1, 3999, vB, tr.DECIMAL, r);
				case tr.LOWER_GREEK:
					return TB(A, 945, 969, !1, r);
				case tr.LOWER_ALPHA:
					return TB(A, 97, 122, !1, r);
				case tr.UPPER_ALPHA:
					return TB(A, 65, 90, !1, r);
				case tr.ARABIC_INDIC:
					return TB(A, 1632, 1641, !0, r);
				case tr.ARMENIAN:
				case tr.UPPER_ARMENIAN:
					return KB(A, 1, 9999, DB, tr.DECIMAL, r);
				case tr.LOWER_ARMENIAN:
					return KB(A, 1, 9999, DB, tr.DECIMAL, r).toLowerCase();
				case tr.BENGALI:
					return TB(A, 2534, 2543, !0, r);
				case tr.CAMBODIAN:
				case tr.KHMER:
					return TB(A, 6112, 6121, !0, r);
				case tr.CJK_EARTHLY_BRANCH:
					return mB(A, "子丑寅卯辰巳午未申酉戌亥", n);
				case tr.CJK_HEAVENLY_STEM:
					return mB(A, "甲乙丙丁戊己庚辛壬癸", n);
				case tr.CJK_IDEOGRAPHIC:
				case tr.TRAD_CHINESE_INFORMAL:
					return RB(A, "零一二三四五六七八九", "十百千萬", "負", n, 14);
				case tr.TRAD_CHINESE_FORMAL:
					return RB(A, "零壹貳參肆伍陸柒捌玖", "拾佰仟萬", "負", n, 15);
				case tr.SIMP_CHINESE_INFORMAL:
					return RB(A, "零一二三四五六七八九", "十百千萬", "负", n, 14);
				case tr.SIMP_CHINESE_FORMAL:
					return RB(A, "零壹贰叁肆伍陆柒捌玖", "拾佰仟萬", "负", n, 15);
				case tr.JAPANESE_INFORMAL:
					return RB(A, "〇一二三四五六七八九", "十百千万", "マイナス", n, 0);
				case tr.JAPANESE_FORMAL:
					return RB(A, "零壱弐参四伍六七八九", "拾百千万", "マイナス", n, 7);
				case tr.KOREAN_HANGUL_FORMAL:
					return RB(A, "영일이삼사오육칠팔구", "십백천만", MB, B, 7);
				case tr.KOREAN_HANJA_INFORMAL:
					return RB(A, "零一二三四五六七八九", "十百千萬", MB, B, 0);
				case tr.KOREAN_HANJA_FORMAL:
					return RB(A, "零壹貳參四五六七八九", "拾百千", MB, B, 7);
				case tr.DEVANAGARI:
					return TB(A, 2406, 2415, !0, r);
				case tr.GEORGIAN:
					return KB(A, 1, 19999, SB, tr.DECIMAL, r);
				case tr.GUJARATI:
					return TB(A, 2790, 2799, !0, r);
				case tr.GURMUKHI:
					return TB(A, 2662, 2671, !0, r);
				case tr.HEBREW:
					return KB(A, 1, 10999, bB, tr.DECIMAL, r);
				case tr.HIRAGANA:
					return mB(A, "あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん");
				case tr.HIRAGANA_IROHA:
					return mB(A, "いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす");
				case tr.KANNADA:
					return TB(A, 3302, 3311, !0, r);
				case tr.KATAKANA:
					return mB(A, "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン", n);
				case tr.KATAKANA_IROHA:
					return mB(A, "イロハニホヘトチリヌルヲワカヨタレソツネナラムウヰノオクヤマケフコエテアサキユメミシヱヒモセス", n);
				case tr.LAO:
					return TB(A, 3792, 3801, !0, r);
				case tr.MONGOLIAN:
					return TB(A, 6160, 6169, !0, r);
				case tr.MYANMAR:
					return TB(A, 4160, 4169, !0, r);
				case tr.ORIYA:
					return TB(A, 2918, 2927, !0, r);
				case tr.PERSIAN:
					return TB(A, 1776, 1785, !0, r);
				case tr.TAMIL:
					return TB(A, 3046, 3055, !0, r);
				case tr.TELUGU:
					return TB(A, 3174, 3183, !0, r);
				case tr.THAI:
					return TB(A, 3664, 3673, !0, r);
				case tr.TIBETAN:
					return TB(A, 3872, 3881, !0, r);
				case tr.DECIMAL:
				default:
					return TB(A, 48, 57, !0, r)
			}
		},
		_B = "data-html2canvas-ignore",
		PB = (xB.prototype.toIFrame = function(A, t) {
			var e = this,
				r = XB(A, t);
			if (!r.contentWindow) return Promise.reject("Unable to find iframe window");
			var n = A.defaultView.pageXOffset,
				B = A.defaultView.pageYOffset,
				s = r.contentWindow,
				o = s.document,
				i = JB(r).then(function() {
					return a(e, void 0, void 0, function() {
						var e;
						return S(this, function(A) {
							switch (A.label) {
								case 0:
									return this.scrolledElements.forEach(YB), s && (s
											.scrollTo(t.left, t.top), !/(iPad|iPhone|iPod)/g
											.test(navigator.userAgent) || s.scrollY === t
											.top && s.scrollX === t.left || (o
												.documentElement.style.top = -t.top + "px",
												o.documentElement.style.left = -t.left +
												"px", o.documentElement.style.position =
												"absolute")), e = this.options.onclone,
										void 0 === this.clonedReferenceElement ? [2, Promise
											.reject("Error finding the " + this
												.referenceElement.nodeName +
												" in the cloned document")
										] : o.fonts && o.fonts.ready ? [4, o.fonts.ready] :
										[3, 2];
								case 1:
									A.sent(), A.label = 2;
								case 2:
									return "function" == typeof e ? [2, Promise.resolve()
										.then(function() {
											return e(o)
										}).then(function() {
											return r
										})
									] : [2, r]
							}
						})
					})
				});
			return o.open(), o.write(kB(document.doctype) + "<html></html>"), WB(this.referenceElement
					.ownerDocument, n, B), o.replaceChild(o.adoptNode(this.documentElement), o.documentElement),
				o.close(), i
		}, xB.prototype.createElementClone = function(A) {
			if (FB(A)) return this.createCanvasClone(A);
			if (rB(A)) return this.createStyleClone(A);
			var e = A.cloneNode(!1);
			return hB(e) && "lazy" === e.loading && (e.loading = "eager"), e
		}, xB.prototype.createStyleClone = function(A) {
			try {
				var e = A.sheet;
				if (e && e.cssRules) {
					var t = [].slice.call(e.cssRules, 0).reduce(function(A, e) {
							return e && "string" == typeof e.cssText ? A + e.cssText : A
						}, ""),
						r = A.cloneNode(!1);
					return r.textContent = t, r
				}
			} catch (A) {
				if (De.getInstance(this.options.id).error("Unable to access cssRules property", A),
					"SecurityError" !== A.name) throw A
			}
			return A.cloneNode(!1)
		}, xB.prototype.createCanvasClone = function(A) {
			if (this.options.inlineImages && A.ownerDocument) {
				var e = A.ownerDocument.createElement("img");
				try {
					return e.src = A.toDataURL(), e
				} catch (A) {
					De.getInstance(this.options.id).info("Unable to clone canvas contents, canvas is tainted")
				}
			}
			var t = A.cloneNode(!1);
			try {
				t.width = A.width, t.height = A.height;
				var r = A.getContext("2d"),
					n = t.getContext("2d");
				return n && (r ? n.putImageData(r.getImageData(0, 0, A.width, A.height), 0, 0) : n.drawImage(A,
					0, 0)), t
			} catch (A) {}
			return t
		}, xB.prototype.cloneNode = function(A) {
			if (cB(A)) return document.createTextNode(A.data);
			if (!A.ownerDocument) return A.cloneNode(!1);
			var e = A.ownerDocument.defaultView;
			if (e && QB(A) && (wB(A) || uB(A))) {
				var t = this.createElementClone(A),
					r = e.getComputedStyle(A),
					n = e.getComputedStyle(A, ":before"),
					B = e.getComputedStyle(A, ":after");
				this.referenceElement === A && wB(t) && (this.clonedReferenceElement = t), EB(t) && $B(t);
				for (var s = this.counters.parse(new wn(r)), o = this.resolvePseudoContent(A, t, n, LB.BEFORE),
						i = A.firstChild; i; i = i.nextSibling) QB(i) && ("SCRIPT" === i.tagName || i
					.hasAttribute(_B) || "function" == typeof this.options.ignoreElements && this.options
					.ignoreElements(i)) || this.options.copyStyles && QB(i) && rB(i) || t.appendChild(this
					.cloneNode(i));
				o && t.insertBefore(o, t.firstChild);
				var a = this.resolvePseudoContent(A, t, B, LB.AFTER);
				return a && t.appendChild(a), this.counters.pop(s), r && (this.options.copyStyles || uB(A)) && !
					HB(A) && GB(r, t), 0 === A.scrollTop && 0 === A.scrollLeft || this.scrolledElements.push([t,
						A.scrollLeft, A.scrollTop
					]), (dB(A) || fB(A)) && (dB(t) || fB(t)) && (t.value = A.value), t
			}
			return A.cloneNode(!1)
		}, xB.prototype.resolvePseudoContent = function(U, A, e, t) {
			var l = this;
			if (e) {
				var r = e.content,
					C = A.ownerDocument;
				if (C && r && "none" !== r && "-moz-alt-content" !== r && "none" !== e.display) {
					this.counters.parse(new wn(e));
					var g = new Qn(e),
						E = C.createElement("html2canvaspseudoelement");
					GB(e, E), g.content.forEach(function(A) {
						if (A.type === sA.STRING_TOKEN) E.appendChild(C.createTextNode(A.value));
						else if (A.type === sA.URL_TOKEN) {
							var e = C.createElement("img");
							e.src = A.value, e.style.opacity = "1", E.appendChild(e)
						} else if (A.type === sA.FUNCTION) {
							if ("attr" === A.name) {
								var t = A.values.filter(zA);
								t.length && E.appendChild(C.createTextNode(U.getAttribute(t[0].value) ||
									""))
							} else if ("counter" === A.name) {
								var r = A.values.filter(kA),
									n = r[0],
									B = r[1];
								if (n && zA(n)) {
									var s = l.counters.getCounterValue(n.value),
										o = B && zA(B) ? ir.parse(B.value) : tr.DECIMAL;
									E.appendChild(C.createTextNode(yB(s, o, !1)))
								}
							} else if ("counters" === A.name) {
								var i = A.values.filter(kA),
									a = (n = i[0], i[1]);
								if (B = i[2], n && zA(n)) {
									var c = l.counters.getCounterValues(n.value),
										Q = B && zA(B) ? ir.parse(B.value) : tr.DECIMAL,
										w = a && a.type === sA.STRING_TOKEN ? a.value : "",
										u = c.map(function(A) {
											return yB(A, Q, !1)
										}).join(w);
									E.appendChild(C.createTextNode(u))
								}
							}
						} else if (A.type === sA.IDENT_TOKEN) switch (A.value) {
							case "open-quote":
								E.appendChild(C.createTextNode(An(g.quotes, l.quoteDepth++, !0)));
								break;
							case "close-quote":
								E.appendChild(C.createTextNode(An(g.quotes, --l.quoteDepth, !1)));
								break;
							default:
								E.appendChild(C.createTextNode(A.value))
						}
					}), E.className = qB + " " + ZB;
					var n = t === LB.BEFORE ? " " + qB : " " + ZB;
					return uB(A) ? A.className.baseValue += n : A.className += n, E
				}
			}
		}, xB.destroy = function(A) {
			return !!A.parentNode && (A.parentNode.removeChild(A), !0)
		}, xB);

	function xB(A, e) {
		if (this.options = e, this.scrolledElements = [], this.referenceElement = A, this.counters = new pB, this
			.quoteDepth = 0, !A.ownerDocument) throw new Error("Cloned element does not have an owner document");
		this.documentElement = this.cloneNode(A.ownerDocument.documentElement)
	}(OB = LB || (LB = {}))[OB.BEFORE = 0] = "BEFORE", OB[OB.AFTER = 1] = "AFTER";
	var VB, zB, XB = function(A, e) {
			var t = A.createElement("iframe");
			return t.className = "html2canvas-container", t.style.visibility = "hidden", t.style.position = "fixed",
				t.style.left = "-10000px", t.style.top = "0px", t.style.border = "0", t.width = e.width.toString(),
				t.height = e.height.toString(), t.scrolling = "no", t.setAttribute(_B, "true"), A.body.appendChild(
					t), t
		},
		JB = function(n) {
			return new Promise(function(e, A) {
				var t = n.contentWindow;
				if (!t) return A("No window assigned for iframe");
				var r = t.document;
				t.onload = n.onload = r.onreadystatechange = function() {
					t.onload = n.onload = r.onreadystatechange = null;
					var A = setInterval(function() {
						0 < r.body.childNodes.length && "complete" === r.readyState && (
							clearInterval(A), e(n))
					}, 50)
				}
			})
		},
		GB = function(A, e) {
			for (var t = A.length - 1; 0 <= t; t--) {
				var r = A.item(t);
				"content" !== r && e.style.setProperty(r, A.getPropertyValue(r))
			}
			return e
		},
		kB = function(A) {
			var e = "";
			return A && (e += "<!DOCTYPE ", A.name && (e += A.name), A.internalSubset && (e += A.internalSubset), A
				.publicId && (e += '"' + A.publicId + '"'), A.systemId && (e += '"' + A.systemId + '"'), e +=
				">"), e
		},
		WB = function(A, e, t) {
			A && A.defaultView && (e !== A.defaultView.pageXOffset || t !== A.defaultView.pageYOffset) && A
				.defaultView.scrollTo(e, t)
		},
		YB = function(A) {
			var e = A[0],
				t = A[1],
				r = A[2];
			e.scrollLeft = t, e.scrollTop = r
		},
		qB = "___html2canvas___pseudoelement_before",
		ZB = "___html2canvas___pseudoelement_after",
		jB = '{\n    content: "" !important;\n    display: none !important;\n}',
		$B = function(A) {
			As(A, "." + qB + ":before" + jB + "\n         ." + ZB + ":after" + jB)
		},
		As = function(A, e) {
			var t = A.ownerDocument;
			if (t) {
				var r = t.createElement("style");
				r.textContent = e, A.appendChild(r)
			}
		};
	(zB = VB || (VB = {}))[zB.VECTOR = 0] = "VECTOR", zB[zB.BEZIER_CURVE = 1] = "BEZIER_CURVE";

	function es(A, t) {
		return A.length === t.length && A.some(function(A, e) {
			return A === t[e]
		})
	}
	var ts = (rs.prototype.add = function(A, e) {
		return new rs(this.x + A, this.y + e)
	}, rs);

	function rs(A, e) {
		this.type = VB.VECTOR, this.x = A, this.y = e
	}

	function ns(A, e, t) {
		return new ts(A.x + (e.x - A.x) * t, A.y + (e.y - A.y) * t)
	}
	var Bs = (ss.prototype.subdivide = function(A, e) {
		var t = ns(this.start, this.startControl, A),
			r = ns(this.startControl, this.endControl, A),
			n = ns(this.endControl, this.end, A),
			B = ns(t, r, A),
			s = ns(r, n, A),
			o = ns(B, s, A);
		return e ? new ss(this.start, t, B, o) : new ss(o, s, n, this.end)
	}, ss.prototype.add = function(A, e) {
		return new ss(this.start.add(A, e), this.startControl.add(A, e), this.endControl.add(A, e), this.end
			.add(A, e))
	}, ss.prototype.reverse = function() {
		return new ss(this.end, this.endControl, this.startControl, this.start)
	}, ss);

	function ss(A, e, t, r) {
		this.type = VB.BEZIER_CURVE, this.start = A, this.startControl = e, this.endControl = t, this.end = r
	}

	function os(A) {
		return A.type === VB.BEZIER_CURVE
	}
	var is, as, cs = function(A) {
		var e = A.styles,
			t = A.bounds,
			r = jA(e.borderTopLeftRadius, t.width, t.height),
			n = r[0],
			B = r[1],
			s = jA(e.borderTopRightRadius, t.width, t.height),
			o = s[0],
			i = s[1],
			a = jA(e.borderBottomRightRadius, t.width, t.height),
			c = a[0],
			Q = a[1],
			w = jA(e.borderBottomLeftRadius, t.width, t.height),
			u = w[0],
			U = w[1],
			l = [];
		l.push((n + o) / t.width), l.push((u + c) / t.width), l.push((B + U) / t.height), l.push((i + Q) / t
			.height);
		var C = Math.max.apply(Math, l);
		1 < C && (n /= C, B /= C, o /= C, i /= C, c /= C, Q /= C, u /= C, U /= C);
		var g = t.width - o,
			E = t.height - Q,
			F = t.width - c,
			h = t.height - U,
			H = e.borderTopWidth,
			d = e.borderRightWidth,
			f = e.borderBottomWidth,
			p = e.borderLeftWidth,
			N = ae(e.paddingTop, A.bounds.width),
			K = ae(e.paddingRight, A.bounds.width),
			I = ae(e.paddingBottom, A.bounds.width),
			T = ae(e.paddingLeft, A.bounds.width);
		this.topLeftBorderBox = 0 < n || 0 < B ? us(t.left, t.top, n, B, is.TOP_LEFT) : new ts(t.left, t.top),
			this.topRightBorderBox = 0 < o || 0 < i ? us(t.left + g, t.top, o, i, is.TOP_RIGHT) : new ts(t
				.left + t.width, t.top), this.bottomRightBorderBox = 0 < c || 0 < Q ? us(t.left + F, t.top + E,
				c, Q, is.BOTTOM_RIGHT) : new ts(t.left + t.width, t.top + t.height), this.bottomLeftBorderBox =
			0 < u || 0 < U ? us(t.left, t.top + h, u, U, is.BOTTOM_LEFT) : new ts(t.left, t.top + t.height),
			this.topLeftPaddingBox = 0 < n || 0 < B ? us(t.left + p, t.top + H, Math.max(0, n - p), Math.max(0,
				B - H), is.TOP_LEFT) : new ts(t.left + p, t.top + H), this.topRightPaddingBox = 0 < o || 0 < i ?
			us(t.left + Math.min(g, t.width + p), t.top + H, g > t.width + p ? 0 : o - p, i - H, is.TOP_RIGHT) :
			new ts(t.left + t.width - d, t.top + H), this.bottomRightPaddingBox = 0 < c || 0 < Q ? us(t.left +
				Math.min(F, t.width - p), t.top + Math.min(E, t.height + H), Math.max(0, c - d), Q - f, is
				.BOTTOM_RIGHT) : new ts(t.left + t.width - d, t.top + t.height - f), this.bottomLeftPaddingBox =
			0 < u || 0 < U ? us(t.left + p, t.top + h, Math.max(0, u - p), U - f, is.BOTTOM_LEFT) : new ts(t
				.left + p, t.top + t.height - f), this.topLeftContentBox = 0 < n || 0 < B ? us(t.left + p + T, t
				.top + H + N, Math.max(0, n - (p + T)), Math.max(0, B - (H + N)), is.TOP_LEFT) : new ts(t.left +
				p + T, t.top + H + N), this.topRightContentBox = 0 < o || 0 < i ? us(t.left + Math.min(g, t
					.width + p + T), t.top + H + N, g > t.width + p + T ? 0 : o - p + T, i - (H + N), is
				.TOP_RIGHT) : new ts(t.left + t.width - (d + K), t.top + H + N), this.bottomRightContentBox =
			0 < c || 0 < Q ? us(t.left + Math.min(F, t.width - (p + T)), t.top + Math.min(E, t.height + H + N),
				Math.max(0, c - (d + K)), Q - (f + I), is.BOTTOM_RIGHT) : new ts(t.left + t.width - (d + K), t
				.top + t.height - (f + I)), this.bottomLeftContentBox = 0 < u || 0 < U ? us(t.left + p + T, t
				.top + h, Math.max(0, u - (p + T)), U - (f + I), is.BOTTOM_LEFT) : new ts(t.left + p + T, t
				.top + t.height - (f + I))
	};
	(as = is || (is = {}))[as.TOP_LEFT = 0] = "TOP_LEFT", as[as.TOP_RIGHT = 1] = "TOP_RIGHT", as[as.BOTTOM_RIGHT =
		2] = "BOTTOM_RIGHT", as[as.BOTTOM_LEFT = 3] = "BOTTOM_LEFT";

	function Qs(A) {
		return [A.topLeftBorderBox, A.topRightBorderBox, A.bottomRightBorderBox, A.bottomLeftBorderBox]
	}

	function ws(A) {
		return [A.topLeftPaddingBox, A.topRightPaddingBox, A.bottomRightPaddingBox, A.bottomLeftPaddingBox]
	}
	var us = function(A, e, t, r, n) {
			var B = (Math.sqrt(2) - 1) / 3 * 4,
				s = t * B,
				o = r * B,
				i = A + t,
				a = e + r;
			switch (n) {
				case is.TOP_LEFT:
					return new Bs(new ts(A, a), new ts(A, a - o), new ts(i - s, e), new ts(i, e));
				case is.TOP_RIGHT:
					return new Bs(new ts(A, e), new ts(A + s, e), new ts(i, a - o), new ts(i, a));
				case is.BOTTOM_RIGHT:
					return new Bs(new ts(i, e), new ts(i, e + o), new ts(A + s, a), new ts(A, a));
				case is.BOTTOM_LEFT:
				default:
					return new Bs(new ts(i, a), new ts(i - s, a), new ts(A, e + o), new ts(A, e))
			}
		},
		Us = function(A, e, t) {
			this.type = 0, this.target = 6, this.offsetX = A, this.offsetY = e, this.matrix = t
		},
		ls = function(A, e) {
			this.type = 1, this.target = e, this.path = A
		},
		Cs = function(A) {
			this.type = 2, this.target = 6, this.opacity = A
		},
		gs = function(A) {
			this.element = A, this.inlineLevel = [], this.nonInlineLevel = [], this.negativeZIndex = [], this
				.zeroOrAutoZIndexOrTransformedOrOpacity = [], this.positiveZIndex = [], this
				.nonPositionedFloats = [], this.nonPositionedInlineLevel = []
		},
		Es = (Fs.prototype.getParentEffects = function() {
			var A = this.effects.slice(0);
			if (this.container.styles.overflowX !== sr.VISIBLE) {
				var e = Qs(this.curves),
					t = ws(this.curves);
				es(e, t) || A.push(new ls(t, 6))
			}
			return A
		}, Fs);

	function Fs(A, e) {
		if (this.container = A, this.effects = e.slice(0), this.curves = new cs(A), A.styles.opacity < 1 && this
			.effects.push(new Cs(A.styles.opacity)), null !== A.styles.transform) {
			var t = A.bounds.left + A.styles.transformOrigin[0].number,
				r = A.bounds.top + A.styles.transformOrigin[1].number,
				n = A.styles.transform;
			this.effects.push(new Us(t, r, n))
		}
		if (A.styles.overflowX !== sr.VISIBLE) {
			var B = Qs(this.curves),
				s = ws(this.curves);
			es(B, s) ? this.effects.push(new ls(B, 6)) : (this.effects.push(new ls(B, 2)), this.effects.push(new ls(
				s, 4)))
		}
	}

	function hs(A) {
		var e = A.bounds,
			t = A.styles;
		return e.add(t.borderLeftWidth, t.borderTopWidth, -(t.borderRightWidth + t.borderLeftWidth), -(t
			.borderTopWidth + t.borderBottomWidth))
	}

	function Hs(A) {
		var e = A.styles,
			t = A.bounds,
			r = ae(e.paddingLeft, t.width),
			n = ae(e.paddingRight, t.width),
			B = ae(e.paddingTop, t.width),
			s = ae(e.paddingBottom, t.width);
		return t.add(r + e.borderLeftWidth, B + e.borderTopWidth, -(e.borderRightWidth + e.borderLeftWidth + r + n),
			-(e.borderTopWidth + e.borderBottomWidth + B + s))
	}

	function ds(A, e, t) {
		var r = function(A, e) {
				return 0 === A ? e.bounds : 2 === A ? Hs(e) : hs(e)
			}(ms(A.styles.backgroundOrigin, e), A),
			n = function(A, e) {
				return A === Ee.BORDER_BOX ? e.bounds : A === Ee.CONTENT_BOX ? Hs(e) : hs(e)
			}(ms(A.styles.backgroundClip, e), A),
			B = Ts(ms(A.styles.backgroundSize, e), t, r),
			s = B[0],
			o = B[1],
			i = jA(ms(A.styles.backgroundPosition, e), r.width - s, r.height - o);
		return [Rs(ms(A.styles.backgroundRepeat, e), i, B, r, n), Math.round(r.left + i[0]), Math.round(r.top + i[
			1]), s, o]
	}

	function fs(A) {
		return zA(A) && A.value === Ut.AUTO
	}

	function ps(A) {
		return "number" == typeof A
	}
	var Ns = function(c, Q, w, u) {
			c.container.elements.forEach(function(A) {
				var e = $r(A.flags, 4),
					t = $r(A.flags, 2),
					r = new Es(A, c.getParentEffects());
				$r(A.styles.display, 2048) && u.push(r);
				var n = $r(A.flags, 8) ? [] : u;
				if (e || t) {
					var B = e || A.styles.isPositioned() ? w : Q,
						s = new gs(r);
					if (A.styles.isPositioned() || A.styles.opacity < 1 || A.styles.isTransformed()) {
						var o = A.styles.zIndex.order;
						if (o < 0) {
							var i = 0;
							B.negativeZIndex.some(function(A, e) {
								return o > A.element.container.styles.zIndex.order ? (i = e, !1) :
									0 < i
							}), B.negativeZIndex.splice(i, 0, s)
						} else if (0 < o) {
							var a = 0;
							B.positiveZIndex.some(function(A, e) {
								return o >= A.element.container.styles.zIndex.order ? (a = e + 1, !
									1) : 0 < a
							}), B.positiveZIndex.splice(a, 0, s)
						} else B.zeroOrAutoZIndexOrTransformedOrOpacity.push(s)
					} else A.styles.isFloating() ? B.nonPositionedFloats.push(s) : B
						.nonPositionedInlineLevel.push(s);
					Ns(r, s, e ? s : w, n)
				} else A.styles.isInlineLevel() ? Q.inlineLevel.push(r) : Q.nonInlineLevel.push(r), Ns(r, Q,
					w, n);
				$r(A.flags, 8) && Ks(A, n)
			})
		},
		Ks = function(A, e) {
			for (var t = A instanceof Sn ? A.start : 1, r = A instanceof Sn && A.reversed, n = 0; n < e
				.length; n++) {
				var B = e[n];
				B.container instanceof vn && "number" == typeof B.container.value && 0 !== B.container.value && (t =
						B.container.value), B.listValue = yB(t, B.container.styles.listStyleType, !0), t += r ? -1 :
					1
			}
		},
		Is = function(A, e, t, r) {
			var n = [];
			return os(A) ? n.push(A.subdivide(.5, !1)) : n.push(A), os(t) ? n.push(t.subdivide(.5, !0)) : n.push(t),
				os(r) ? n.push(r.subdivide(.5, !0).reverse()) : n.push(r), os(e) ? n.push(e.subdivide(.5, !1)
					.reverse()) : n.push(e), n
		},
		Ts = function(A, e, t) {
			var r = e[0],
				n = e[1],
				B = e[2],
				s = A[0],
				o = A[1];
			if (qA(s) && o && qA(o)) return [ae(s, t.width), ae(o, t.height)];
			var i = ps(B);
			if (zA(s) && (s.value === Ut.CONTAIN || s.value === Ut.COVER)) return ps(B) ? t.width / t.height < B !=
				(s.value === Ut.COVER) ? [t.width, t.width / B] : [t.height * B, t.height] : [t.width, t.height];
			var a = ps(r),
				c = ps(n),
				Q = a || c;
			if (fs(s) && (!o || fs(o))) return a && c ? [r, n] : i || Q ? Q && i ? [a ? r : n * B, c ? n : r / B] :
				[a ? r : t.width, c ? n : t.height] : [t.width, t.height];
			if (i) {
				var w = 0,
					u = 0;
				return qA(s) ? w = ae(s, t.width) : qA(o) && (u = ae(o, t.height)), fs(s) ? w = u * B : o && !fs(
					o) || (u = w / B), [w, u]
			}
			var U = null,
				l = null;
			if (qA(s) ? U = ae(s, t.width) : o && qA(o) && (l = ae(o, t.height)), null === U || o && !fs(o) || (l =
					a && c ? U / r * n : t.height), null !== l && fs(s) && (U = a && c ? l / n * r : t.width),
				null !== U && null !== l) return [U, l];
			throw new Error("Unable to calculate background-size for element")
		},
		ms = function(A, e) {
			var t = A[e];
			return void 0 === t ? A[0] : t
		},
		Rs = function(A, e, t, r, n) {
			var B = e[0],
				s = e[1],
				o = t[0],
				i = t[1];
			switch (A) {
				case it.REPEAT_X:
					return [new ts(Math.round(r.left), Math.round(r.top + s)), new ts(Math.round(r.left + r.width),
						Math.round(r.top + s)), new ts(Math.round(r.left + r.width), Math.round(i + r.top +
						s)), new ts(Math.round(r.left), Math.round(i + r.top + s))];
				case it.REPEAT_Y:
					return [new ts(Math.round(r.left + B), Math.round(r.top)), new ts(Math.round(r.left + B + o),
							Math.round(r.top)), new ts(Math.round(r.left + B + o), Math.round(r.height + r
						.top)), new ts(Math.round(r.left + B), Math.round(r.height + r.top))
					];
				case it.NO_REPEAT:
					return [new ts(Math.round(r.left + B), Math.round(r.top + s)), new ts(Math.round(r.left + B +
						o), Math.round(r.top + s)), new ts(Math.round(r.left + B + o), Math.round(r.top +
						s + i)), new ts(Math.round(r.left + B), Math.round(r.top + s + i))];
				default:
					return [new ts(Math.round(n.left), Math.round(n.top)), new ts(Math.round(n.left + n.width), Math
							.round(n.top)), new ts(Math.round(n.left + n.width), Math.round(n.height + n.top)),
						new ts(Math.round(n.left), Math.round(n.height + n.top))
					]
			}
		},
		Ls = "Hidden Text",
		Os = (vs.prototype.parseMetrics = function(A, e) {
			var t = this._document.createElement("div"),
				r = this._document.createElement("img"),
				n = this._document.createElement("span"),
				B = this._document.body;
			t.style.visibility = "hidden", t.style.fontFamily = A, t.style.fontSize = e, t.style.margin = "0", t
				.style.padding = "0", B.appendChild(t), r.src =
				"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7", r.width = 1, r
				.height = 1, r.style.margin = "0", r.style.padding = "0", r.style.verticalAlign = "baseline", n
				.style.fontFamily = A, n.style.fontSize = e, n.style.margin = "0", n.style.padding = "0", n
				.appendChild(this._document.createTextNode(Ls)), t.appendChild(n), t.appendChild(r);
			var s = r.offsetTop - n.offsetTop + 2;
			t.removeChild(n), t.appendChild(this._document.createTextNode(Ls)), t.style.lineHeight = "normal", r
				.style.verticalAlign = "super";
			var o = r.offsetTop - t.offsetTop + 2;
			return B.removeChild(t), {
				baseline: s,
				middle: o
			}
		}, vs.prototype.getMetrics = function(A, e) {
			var t = A + " " + e;
			return void 0 === this._data[t] && (this._data[t] = this.parseMetrics(A, e)), this._data[t]
		}, vs);

	function vs(A) {
		this._data = {}, this._document = A
	}
	var Ds = (bs.prototype.applyEffects = function(A, e) {
		for (var t = this; this._activeEffects.length;) this.popEffect();
		A.filter(function(A) {
			return $r(A.target, e)
		}).forEach(function(A) {
			return t.applyEffect(A)
		})
	}, bs.prototype.applyEffect = function(A) {
		this.ctx.save(),
			function(A) {
				return 2 === A.type
			}(A) && (this.ctx.globalAlpha = A.opacity),
			function(A) {
				return 0 === A.type
			}(A) && (this.ctx.translate(A.offsetX, A.offsetY), this.ctx.transform(A.matrix[0], A.matrix[1],
				A.matrix[2], A.matrix[3], A.matrix[4], A.matrix[5]), this.ctx.translate(-A.offsetX, -A
				.offsetY)),
			function(A) {
				return 1 === A.type
			}(A) && (this.path(A.path), this.ctx.clip()), this._activeEffects.push(A)
	}, bs.prototype.popEffect = function() {
		this._activeEffects.pop(), this.ctx.restore()
	}, bs.prototype.renderStack = function(e) {
		return a(this, void 0, void 0, function() {
			return S(this, function(A) {
				switch (A.label) {
					case 0:
						return e.element.container.styles.isVisible() ? [4, this
							.renderStackContent(e)
						] : [3, 2];
					case 1:
						A.sent(), A.label = 2;
					case 2:
						return [2]
				}
			})
		})
	}, bs.prototype.renderNode = function(e) {
		return a(this, void 0, void 0, function() {
			return S(this, function(A) {
				switch (A.label) {
					case 0:
						return e.container.styles.isVisible() ? [4, this
							.renderNodeBackgroundAndBorders(e)
						] : [3, 3];
					case 1:
						return A.sent(), [4, this.renderNodeContent(e)];
					case 2:
						A.sent(), A.label = 3;
					case 3:
						return [2]
				}
			})
		})
	}, bs.prototype.renderTextWithLetterSpacing = function(t, A) {
		var r = this;
		0 === A ? this.ctx.fillText(t.text, t.bounds.left, t.bounds.top + t.bounds.height) : c(t.text).map(
			function(A) {
				return l(A)
			}).reduce(function(A, e) {
			return r.ctx.fillText(e, A, t.bounds.top + t.bounds.height), A + r.ctx.measureText(e)
				.width
		}, t.bounds.left)
	}, bs.prototype.createFontStyle = function(A) {
		var e = A.fontVariant.filter(function(A) {
				return "normal" === A || "small-caps" === A
			}).join(""),
			t = A.fontFamily.join(", "),
			r = xA(A.fontSize) ? "" + A.fontSize.number + A.fontSize.unit : A.fontSize.number + "px";
		return [
			[A.fontStyle, e, A.fontWeight, r, t].join(" "), t, r
		]
	}, bs.prototype.renderTextNode = function(r, o) {
		return a(this, void 0, void 0, function() {
			var e, t, n, B, s = this;
			return S(this, function(A) {
				return e = this.createFontStyle(o), t = e[0], n = e[1], B = e[2], this.ctx
					.font = t, r.textBounds.forEach(function(r) {
						s.ctx.fillStyle = te(o.color), s.renderTextWithLetterSpacing(r,
							o.letterSpacing);
						var A = o.textShadow;
						A.length && r.text.trim().length && (A.slice(0).reverse()
								.forEach(function(A) {
									s.ctx.shadowColor = te(A.color), s.ctx
										.shadowOffsetX = A.offsetX.number * s
										.options.scale, s.ctx.shadowOffsetY = A
										.offsetY.number * s.options.scale, s.ctx
										.shadowBlur = A.blur.number, s.ctx.fillText(
											r.text, r.bounds.left, r.bounds.top + r
											.bounds.height)
								}), s.ctx.shadowColor = "", s.ctx.shadowOffsetX = 0, s
								.ctx.shadowOffsetY = 0, s.ctx.shadowBlur = 0), o
							.textDecorationLine.length && (s.ctx.fillStyle = te(o
									.textDecorationColor || o.color), o
								.textDecorationLine.forEach(function(A) {
									switch (A) {
										case 1:
											var e = s.fontMetrics.getMetrics(n, B)
												.baseline;
											s.ctx.fillRect(r.bounds.left, Math
												.round(r.bounds.top + e), r
												.bounds.width, 1);
											break;
										case 2:
											s.ctx.fillRect(r.bounds.left, Math
												.round(r.bounds.top), r.bounds
												.width, 1);
											break;
										case 3:
											var t = s.fontMetrics.getMetrics(n, B)
												.middle;
											s.ctx.fillRect(r.bounds.left, Math.ceil(
													r.bounds.top + t), r.bounds
												.width, 1)
									}
								}))
					}), [2]
			})
		})
	}, bs.prototype.renderReplacedElement = function(A, e, t) {
		if (t && 0 < A.intrinsicWidth && 0 < A.intrinsicHeight) {
			var r = Hs(A),
				n = ws(e);
			this.path(n), this.ctx.save(), this.ctx.clip(), this.ctx.drawImage(t, 0, 0, A.intrinsicWidth, A
				.intrinsicHeight, r.left, r.top, r.width, r.height), this.ctx.restore()
		}
	}, bs.prototype.renderNodeContent = function(l) {
		return a(this, void 0, void 0, function() {
			var e, t, r, n, B, s, o, i, a, c, Q, w, u, U;
			return S(this, function(A) {
				switch (A.label) {
					case 0:
						this.applyEffects(l.effects, 4), e = l.container, t = l.curves, r =
							e.styles, n = 0, B = e.textNodes, A.label = 1;
					case 1:
						return n < B.length ? (s = B[n], [4, this.renderTextNode(s, r)]) : [
							3, 4
						];
					case 2:
						A.sent(), A.label = 3;
					case 3:
						return n++, [3, 1];
					case 4:
						if (!(e instanceof pn)) return [3, 8];
						A.label = 5;
					case 5:
						return A.trys.push([5, 7, , 8]), [4, this.options.cache.match(e
							.src)];
					case 6:
						return w = A.sent(), this.renderReplacedElement(e, t, w), [3, 8];
					case 7:
						return A.sent(), De.getInstance(this.options.id).error(
							"Error loading image " + e.src), [3, 8];
					case 8:
						if (e instanceof In && this.renderReplacedElement(e, t, e.canvas), !
							(e instanceof Rn)) return [3, 12];
						A.label = 9;
					case 9:
						return A.trys.push([9, 11, , 12]), [4, this.options.cache.match(e
							.svg)];
					case 10:
						return w = A.sent(), this.renderReplacedElement(e, t, w), [3, 12];
					case 11:
						return A.sent(), De.getInstance(this.options.id).error(
							"Error loading svg " + e.svg.substring(0, 255)), [3, 12];
					case 12:
						return e instanceof eB && e.tree ? [4, new bs({
							id: this.options.id,
							scale: this.options.scale,
							backgroundColor: e.backgroundColor,
							x: 0,
							y: 0,
							scrollX: 0,
							scrollY: 0,
							width: e.width,
							height: e.height,
							cache: this.options.cache,
							windowWidth: e.width,
							windowHeight: e.height
						}).render(e.tree)] : [3, 14];
					case 13:
						o = A.sent(), e.width && e.height && this.ctx.drawImage(o, 0, 0, e
							.width, e.height, e.bounds.left, e.bounds.top, e.bounds
							.width, e.bounds.height), A.label = 14;
					case 14:
						if (e instanceof Jn && (i = Math.min(e.bounds.width, e.bounds
								.height), e.type === xn ? e.checked && (this.ctx.save(),
								this.path([new ts(e.bounds.left + .39363 * i, e.bounds
									.top + .79 * i), new ts(e.bounds.left +
									.16 * i, e.bounds.top + .5549 * i), new ts(e
									.bounds.left + .27347 * i, e.bounds.top +
									.44071 * i), new ts(e.bounds.left + .39694 *
									i, e.bounds.top + .5649 * i), new ts(e
									.bounds.left + .72983 * i, e.bounds.top +
									.23 * i), new ts(e.bounds.left + .84 * i, e
									.bounds.top + .34085 * i), new ts(e.bounds
									.left + .39363 * i, e.bounds.top + .79 * i)]), this
								.ctx.fillStyle = te(Xn), this.ctx.fill(), this.ctx
								.restore()) : e.type === Vn && e.checked && (this.ctx
								.save(), this.ctx.beginPath(), this.ctx.arc(e.bounds
									.left + i / 2, e.bounds.top + i / 2, i / 4, 0, 2 *
									Math.PI, !0), this.ctx.fillStyle = te(Xn), this.ctx
								.fill(), this.ctx.restore())), Ss(e) && e.value.length) {
							switch (this.ctx.font = this.createFontStyle(r)[0], this.ctx
								.fillStyle = te(r.color), this.ctx.textBaseline = "middle",
								this.ctx.textAlign = ys(e.styles.textAlign), U = Hs(e), a =
								0, e.styles.textAlign) {
								case Cr.CENTER:
									a += U.width / 2;
									break;
								case Cr.RIGHT:
									a += U.width
							}
							c = U.add(a, 0, 0, -U.height / 2 + 1), this.ctx.save(), this
								.path([new ts(U.left, U.top), new ts(U.left + U.width, U
									.top), new ts(U.left + U.width, U.top + U
									.height), new ts(U.left, U.top + U.height)]), this.ctx
								.clip(), this.renderTextWithLetterSpacing(new ln(e.value,
									c), r.letterSpacing), this.ctx.restore(), this.ctx
								.textBaseline = "bottom", this.ctx.textAlign = "left"
						}
						if (!$r(e.styles.display, 2048)) return [3, 20];
						if (null === e.styles.listStyleImage) return [3, 19];
						if ((Q = e.styles.listStyleImage).type !== xe.URL) return [3, 18];
						w = void 0, u = Q.url, A.label = 15;
					case 15:
						return A.trys.push([15, 17, , 18]), [4, this.options.cache.match(
						u)];
					case 16:
						return w = A.sent(), this.ctx.drawImage(w, e.bounds.left - (w
							.width + 10), e.bounds.top), [3, 18];
					case 17:
						return A.sent(), De.getInstance(this.options.id).error(
							"Error loading list-style-image " + u), [3, 18];
					case 18:
						return [3, 20];
					case 19:
						l.listValue && e.styles.listStyleType !== tr.NONE && (this.ctx
							.font = this.createFontStyle(r)[0], this.ctx.fillStyle = te(
								r.color), this.ctx.textBaseline = "middle", this.ctx
							.textAlign = "right", U = new I(e.bounds.left, e.bounds
								.top + ae(e.styles.paddingTop, e.bounds.width), e.bounds
								.width,
								function(A, e) {
									return zA(A) && "normal" === A.value ? 1.2 * e : A
										.type === sA.NUMBER_TOKEN ? e * A.number : qA(
										A) ? ae(A, e) : e
								}(r.lineHeight, r.fontSize.number) / 2 + 1), this
							.renderTextWithLetterSpacing(new ln(l.listValue, U), r
								.letterSpacing), this.ctx.textBaseline = "bottom", this
							.ctx.textAlign = "left"), A.label = 20;
					case 20:
						return [2]
				}
			})
		})
	}, bs.prototype.renderStackContent = function(C) {
		return a(this, void 0, void 0, function() {
			var e, t, r, n, B, s, o, i, a, c, Q, w, u, U, l;
			return S(this, function(A) {
				switch (A.label) {
					case 0:
						return [4, this.renderNodeBackgroundAndBorders(C.element)];
					case 1:
						A.sent(), e = 0, t = C.negativeZIndex, A.label = 2;
					case 2:
						return e < t.length ? (l = t[e], [4, this.renderStack(l)]) : [3, 5];
					case 3:
						A.sent(), A.label = 4;
					case 4:
						return e++, [3, 2];
					case 5:
						return [4, this.renderNodeContent(C.element)];
					case 6:
						A.sent(), r = 0, n = C.nonInlineLevel, A.label = 7;
					case 7:
						return r < n.length ? (l = n[r], [4, this.renderNode(l)]) : [3, 10];
					case 8:
						A.sent(), A.label = 9;
					case 9:
						return r++, [3, 7];
					case 10:
						B = 0, s = C.nonPositionedFloats, A.label = 11;
					case 11:
						return B < s.length ? (l = s[B], [4, this.renderStack(l)]) : [3,
						14];
					case 12:
						A.sent(), A.label = 13;
					case 13:
						return B++, [3, 11];
					case 14:
						o = 0, i = C.nonPositionedInlineLevel, A.label = 15;
					case 15:
						return o < i.length ? (l = i[o], [4, this.renderStack(l)]) : [3,
						18];
					case 16:
						A.sent(), A.label = 17;
					case 17:
						return o++, [3, 15];
					case 18:
						a = 0, c = C.inlineLevel, A.label = 19;
					case 19:
						return a < c.length ? (l = c[a], [4, this.renderNode(l)]) : [3, 22];
					case 20:
						A.sent(), A.label = 21;
					case 21:
						return a++, [3, 19];
					case 22:
						Q = 0, w = C.zeroOrAutoZIndexOrTransformedOrOpacity, A.label = 23;
					case 23:
						return Q < w.length ? (l = w[Q], [4, this.renderStack(l)]) : [3,
						26];
					case 24:
						A.sent(), A.label = 25;
					case 25:
						return Q++, [3, 23];
					case 26:
						u = 0, U = C.positiveZIndex, A.label = 27;
					case 27:
						return u < U.length ? (l = U[u], [4, this.renderStack(l)]) : [3,
						30];
					case 28:
						A.sent(), A.label = 29;
					case 29:
						return u++, [3, 27];
					case 30:
						return [2]
				}
			})
		})
	}, bs.prototype.mask = function(A) {
		this.ctx.beginPath(), this.ctx.moveTo(0, 0), this.ctx.lineTo(this.canvas.width, 0), this.ctx.lineTo(
				this.canvas.width, this.canvas.height), this.ctx.lineTo(0, this.canvas.height), this.ctx
			.lineTo(0, 0), this.formatPath(A.slice(0).reverse()), this.ctx.closePath()
	}, bs.prototype.path = function(A) {
		this.ctx.beginPath(), this.formatPath(A), this.ctx.closePath()
	}, bs.prototype.formatPath = function(A) {
		var r = this;
		A.forEach(function(A, e) {
			var t = os(A) ? A.start : A;
			0 === e ? r.ctx.moveTo(t.x, t.y) : r.ctx.lineTo(t.x, t.y), os(A) && r.ctx.bezierCurveTo(
				A.startControl.x, A.startControl.y, A.endControl.x, A.endControl.y, A.end.x, A
				.end.y)
		})
	}, bs.prototype.renderRepeat = function(A, e, t, r) {
		this.path(A), this.ctx.fillStyle = e, this.ctx.translate(t, r), this.ctx.fill(), this.ctx.translate(
			-t, -r)
	}, bs.prototype.resizeImage = function(A, e, t) {
		if (A.width === e && A.height === t) return A;
		var r = this.canvas.ownerDocument.createElement("canvas");
		return r.width = e, r.height = t, r.getContext("2d").drawImage(A, 0, 0, A.width, A.height, 0, 0, e,
			t), r
	}, bs.prototype.renderBackgroundImage = function(b) {
		return a(this, void 0, void 0, function() {
			var v, e, D, t, r, n;
			return S(this, function(A) {
				switch (A.label) {
					case 0:
						v = b.styles.backgroundImage.length - 1, e = function(e) {
								var t, r, n, B, s, o, i, a, c, Q, w, u, U, l, C, g, E, F, h,
									H, d, f, p, N, K, I, T, m, R, L, O;
								return S(this, function(A) {
									switch (A.label) {
										case 0:
											if (e.type !== xe.URL) return [3, 5];
											t = void 0, r = e.url, A.label = 1;
										case 1:
											return A.trys.push([1, 3, , 4]), [4, D
												.options.cache.match(r)
											];
										case 2:
											return t = A.sent(), [3, 4];
										case 3:
											return A.sent(), De.getInstance(D
												.options.id).error(
												"Error loading background-image " +
												r), [3, 4];
										case 4:
											return t && (n = ds(b, v, [t.width, t
													.height, t.width / t
													.height
												]), g = n[0], f = n[1], p = n[
												2], h = n[3], H = n[4], l = D
												.ctx.createPattern(D
													.resizeImage(t, h, H),
													"repeat"), D.renderRepeat(g,
													l, f, p)), [3, 6];
										case 5:
											! function(A) {
												return A.type === xe.LINEAR_GRADIENT
											}(e) ? function(A) {
												return A.type === xe.RADIAL_GRADIENT
											}(e) && (C = ds(b, v, [null, null,
													null]), g = C[0], E = C[1], F =
												C[2], h = C[3], H = C[4], d = 0 ===
												e.position.length ? [oe] : e
												.position, f = ae(d[0], h), p = ae(
													d[d.length - 1], H), N =
												function(A, e, t, r, n) {
													var B = 0,
														s = 0;
													switch (A.size) {
														case Bt.CLOSEST_SIDE:
															A.shape === rt.CIRCLE ?
																B = s = Math.min(
																	Math.abs(e),
																	Math.abs(e - r),
																	Math.abs(t),
																	Math.abs(t - n)
																	) : A.shape ===
																rt.ELLIPSE && (B =
																	Math.min(Math
																		.abs(e),
																		Math.abs(e -
																			r)), s =
																	Math.min(Math
																		.abs(t),
																		Math.abs(t -
																			n)));
															break;
														case Bt.CLOSEST_CORNER:
															if (A.shape === rt
																.CIRCLE) B = s =
																Math.min(Ne(e, t),
																	Ne(e, t - n),
																	Ne(e - r, t),
																	Ne(e - r, t - n)
																	);
															else if (A.shape === rt
																.ELLIPSE) {
																var o = Math.min(
																		Math.abs(t),
																		Math.abs(t -
																			n)) /
																	Math.min(Math
																		.abs(e),
																		Math.abs(e -
																			r)),
																	i = Ke(r, n, e,
																		t, !0),
																	a = i[0],
																	c = i[1];
																s = o * (B = Ne(a -
																	e, (c -
																		t) /
																	o))
															}
															break;
														case Bt.FARTHEST_SIDE:
															A.shape === rt.CIRCLE ?
																B = s = Math.max(
																	Math.abs(e),
																	Math.abs(e - r),
																	Math.abs(t),
																	Math.abs(t - n)
																	) : A.shape ===
																rt.ELLIPSE && (B =
																	Math.max(Math
																		.abs(e),
																		Math.abs(e -
																			r)), s =
																	Math.max(Math
																		.abs(t),
																		Math.abs(t -
																			n)));
															break;
														case Bt.FARTHEST_CORNER:
															if (A.shape === rt
																.CIRCLE) B = s =
																Math.max(Ne(e, t),
																	Ne(e, t - n),
																	Ne(e - r, t),
																	Ne(e - r, t - n)
																	);
															else if (A.shape === rt
																.ELLIPSE) {
																o = Math.max(Math
																		.abs(t),
																		Math.abs(t -
																			n)) /
																	Math.max(Math
																		.abs(e),
																		Math.abs(e -
																			r));
																var Q = Ke(r, n, e,
																	t, !1);
																a = Q[0], c = Q[1],
																	s = o * (B = Ne(
																		a - e, (
																			c -
																			t) /
																		o))
															}
													}
													return Array.isArray(A.size) &&
														(B = ae(A.size[0], r), s =
															2 === A.size.length ?
															ae(A.size[1], n) : B), [
															B, s
														]
												}(e, f, p, h, H), K = N[0], I = N[
												1], 0 < K && 0 < K && (T = D.ctx
													.createRadialGradient(E + f, F +
														p, 0, E + f, F + p, K), fe(e
														.stops, 2 * K).forEach(
														function(A) {
															return T.addColorStop(A
																.stop, te(A
																	.color))
														}), D.path(g), D.ctx
													.fillStyle = T, K !== I ? (m = b
														.bounds.left + .5 * b.bounds
														.width, R = b.bounds.top +
														.5 * b.bounds.height, O =
														1 / (L = I / K), D.ctx
														.save(), D.ctx.translate(m,
															R), D.ctx.transform(1,
															0, 0, L, 0, 0), D.ctx
														.translate(-m, -R), D.ctx
														.fillRect(E, O * (F - R) +
															R, h, H * O), D.ctx
														.restore()) : D.ctx.fill())
												) : (B = ds(b, v, [null, null,
													null]), g = B[0], f = B[1], p =
												B[2], h = B[3], H = B[4], s = pe(e
													.angle, h, H), o = s[0], i = s[
													1], a = s[2], c = s[3], Q = s[
												4], (w = document.createElement(
													"canvas")).width = h, w.height =
												H, u = w.getContext("2d"), U = u
												.createLinearGradient(i, c, a, Q),
												fe(e.stops, o).forEach(function(A) {
													return U.addColorStop(A
														.stop, te(A.color))
												}), u.fillStyle = U, u.fillRect(0,
													0, h, H), 0 < h && 0 < H && (l =
													D.ctx.createPattern(w,
													"repeat"), D.renderRepeat(g, l,
														f, p))), A.label = 6;
										case 6:
											return v--, [2]
									}
								})
							}, D = this, t = 0, r = b.styles.backgroundImage.slice(0)
							.reverse(), A.label = 1;
					case 1:
						return t < r.length ? (n = r[t], [5, e(n)]) : [3, 4];
					case 2:
						A.sent(), A.label = 3;
					case 3:
						return t++, [3, 1];
					case 4:
						return [2]
				}
			})
		})
	}, bs.prototype.renderBorder = function(e, t, r) {
		return a(this, void 0, void 0, function() {
			return S(this, function(A) {
				return this.path(function(A, e) {
					switch (e) {
						case 0:
							return Is(A.topLeftBorderBox, A.topLeftPaddingBox, A
								.topRightBorderBox, A.topRightPaddingBox);
						case 1:
							return Is(A.topRightBorderBox, A.topRightPaddingBox, A
								.bottomRightBorderBox, A.bottomRightPaddingBox);
						case 2:
							return Is(A.bottomRightBorderBox, A
								.bottomRightPaddingBox, A.bottomLeftBorderBox, A
								.bottomLeftPaddingBox);
						case 3:
						default:
							return Is(A.bottomLeftBorderBox, A.bottomLeftPaddingBox,
								A.topLeftBorderBox, A.topLeftPaddingBox)
					}
				}(r, t)), this.ctx.fillStyle = te(e), this.ctx.fill(), [2]
			})
		})
	}, bs.prototype.renderNodeBackgroundAndBorders = function(c) {
		return a(this, void 0, void 0, function() {
			var e, t, r, n, B, s, o, i, a = this;
			return S(this, function(A) {
				switch (A.label) {
					case 0:
						return this.applyEffects(c.effects, 2), e = c.container.styles,
							t = !ee(e.backgroundColor) || e.backgroundImage.length, r = [{
								style: e.borderTopStyle,
								color: e.borderTopColor
							}, {
								style: e.borderRightStyle,
								color: e.borderRightColor
							}, {
								style: e.borderBottomStyle,
								color: e.borderBottomColor
							}, {
								style: e.borderLeftStyle,
								color: e.borderLeftColor
							}], n = Ms(ms(e.backgroundClip, 0), c.curves), t || e.boxShadow
							.length ? (this.ctx.save(), this.path(n), this.ctx.clip(), ee(e
								.backgroundColor) || (this.ctx.fillStyle = te(e
								.backgroundColor), this.ctx.fill()), [4, this
								.renderBackgroundImage(c.container)
							]) : [3, 2];
					case 1:
						A.sent(), this.ctx.restore(), e.boxShadow.slice(0).reverse()
							.forEach(function(A) {
								a.ctx.save();
								var e = Qs(c.curves),
									t = A.inset ? 0 : 1e4,
									r = function(A, t, r, n, B) {
										return A.map(function(A, e) {
											switch (e) {
												case 0:
													return A.add(t, r);
												case 1:
													return A.add(t + n, r);
												case 2:
													return A.add(t + n, r + B);
												case 3:
													return A.add(t, r + B)
											}
											return A
										})
									}(e, -t + (A.inset ? 1 : -1) * A.spread.number, (A
											.inset ? 1 : -1) * A.spread.number, A.spread
										.number * (A.inset ? -2 : 2), A.spread.number *
										(A.inset ? -2 : 2));
								A.inset ? (a.path(e), a.ctx.clip(), a.mask(r)) : (a
										.mask(e), a.ctx.clip(), a.path(r)), a.ctx
									.shadowOffsetX = A.offsetX.number + t, a.ctx
									.shadowOffsetY = A.offsetY.number, a.ctx
									.shadowColor = te(A.color), a.ctx.shadowBlur = A
									.blur.number, a.ctx.fillStyle = A.inset ? te(A
										.color) : "rgba(0,0,0,1)", a.ctx.fill(), a.ctx
									.restore()
							}), A.label = 2;
					case 2:
						s = B = 0, o = r, A.label = 3;
					case 3:
						return s < o.length ? (i = o[s]).style === ht.NONE || ee(i.color) ?
							[3, 5] : [4, this.renderBorder(i.color, B, c.curves)] : [3, 7];
					case 4:
						A.sent(), A.label = 5;
					case 5:
						B++, A.label = 6;
					case 6:
						return s++, [3, 3];
					case 7:
						return [2]
				}
			})
		})
	}, bs.prototype.render = function(t) {
		return a(this, void 0, void 0, function() {
			var e;
			return S(this, function(A) {
				switch (A.label) {
					case 0:
						return this.options.backgroundColor && (this.ctx.fillStyle = te(this
							.options.backgroundColor), this.ctx.fillRect(this
							.options.x - this.options.scrollX, this.options.y - this
							.options.scrollY, this.options.width, this.options
							.height)), e = function(A) {
							var e = new Es(A, []),
								t = new gs(e),
								r = [];
							return Ns(e, t, t, r), Ks(e.container, r), t
						}(t), [4, this.renderStack(e)];
					case 1:
						return A.sent(), this.applyEffects([], 2), [2, this.canvas]
				}
			})
		})
	}, bs);

	function bs(A) {
		this._activeEffects = [], this.canvas = A.canvas ? A.canvas : document.createElement("canvas"), this.ctx =
			this.canvas.getContext("2d"), (this.options = A).canvas || (this.canvas.width = Math.floor(A.width * A
					.scale), this.canvas.height = Math.floor(A.height * A.scale), this.canvas.style.width = A
				.width + "px", this.canvas.style.height = A.height + "px"), this.fontMetrics = new Os(document),
			this.ctx.scale(this.options.scale, this.options.scale), this.ctx.translate(-A.x + A.scrollX, -A.y + A
				.scrollY), this.ctx.textBaseline = "bottom", this._activeEffects = [], De.getInstance(A.id).debug(
				"Canvas renderer initialized (" + A.width + "x" + A.height + " at " + A.x + "," + A.y +
				") with scale " + A.scale)
	}
	var Ss = function(A) {
			return A instanceof Zn || (A instanceof Wn || A instanceof Jn && A.type !== Vn && A.type !== xn)
		},
		Ms = function(A, e) {
			switch (A) {
				case Ee.BORDER_BOX:
					return Qs(e);
				case Ee.CONTENT_BOX:
					return function(A) {
						return [A.topLeftContentBox, A.topRightContentBox, A.bottomRightContentBox, A
							.bottomLeftContentBox
						]
					}(e);
				case Ee.PADDING_BOX:
				default:
					return ws(e)
			}
		},
		ys = function(A) {
			switch (A) {
				case Cr.CENTER:
					return "center";
				case Cr.RIGHT:
					return "right";
				case Cr.LEFT:
				default:
					return "left"
			}
		},
		_s = (Ps.prototype.render = function(r) {
			return a(this, void 0, void 0, function() {
				var e, t;
				return S(this, function(A) {
					switch (A.label) {
						case 0:
							return e = Le(Math.max(this.options.windowWidth, this.options
								.width) * this.options.scale, Math.max(this.options
									.windowHeight, this.options.height) * this.options
								.scale, this.options.scrollX * this.options.scale, this
								.options.scrollY * this.options.scale, r), [4, Vs(e)];
						case 1:
							return t = A.sent(), this.options.backgroundColor && (this.ctx
									.fillStyle = te(this.options.backgroundColor), this.ctx
									.fillRect(0, 0, this.options.width * this.options.scale,
										this.options.height * this.options.scale)), this.ctx
								.drawImage(t, -this.options.x * this.options.scale, -this
									.options.y * this.options.scale), [2, this.canvas]
					}
				})
			})
		}, Ps);

	function Ps(A) {
		this.canvas = A.canvas ? A.canvas : document.createElement("canvas"), this.ctx = this.canvas.getContext(
				"2d"), this.options = A, this.canvas.width = Math.floor(A.width * A.scale), this.canvas.height =
			Math.floor(A.height * A.scale), this.canvas.style.width = A.width + "px", this.canvas.style.height = A
			.height + "px", this.ctx.scale(this.options.scale, this.options.scale), this.ctx.translate(-A.x + A
				.scrollX, -A.y + A.scrollY), De.getInstance(A.id).debug(
				"EXPERIMENTAL ForeignObject renderer initialized (" + A.width + "x" + A.height + " at " + A.x +
				"," + A.y + ") with scale " + A.scale)
	}

	function xs(A) {
		return we(_A.create(A).parseComponentValue())
	}
	var Vs = function(r) {
		return new Promise(function(A, e) {
			var t = new Image;
			t.onload = function() {
				A(t)
			}, t.onerror = e, t.src = "data:image/svg+xml;charset=utf-8," + encodeURIComponent((
				new XMLSerializer).serializeToString(r))
		})
	};
	"undefined" != typeof window && Se.setContext(window);
	var zs = function(p, N) {
		return a(void 0, void 0, void 0, function() {
			var e, t, r, n, B, s, o, i, a, c, Q, w, u, U, l, C, g, E, F, h, H, d, f;
			return S(this, function(A) {
				switch (A.label) {
					case 0:
						if (!(e = p.ownerDocument)) throw new Error(
							"Element is not attached to a Document");
						if (!(t = e.defaultView)) throw new Error(
							"Document is not attached to a Window");
						return r = (Math.round(1e3 * Math.random()) + Date.now()).toString(16),
							n = EB(p) || function(A) {
								return "HTML" === A.tagName
							}(p) ? function(A) {
								var e = A.body,
									t = A.documentElement;
								if (!e || !t) throw new Error("Unable to get document size");
								var r = Math.max(Math.max(e.scrollWidth, t.scrollWidth), Math
										.max(e.offsetWidth, t.offsetWidth), Math.max(e
											.clientWidth, t.clientWidth)),
									n = Math.max(Math.max(e.scrollHeight, t.scrollHeight), Math
										.max(e.offsetHeight, t.offsetHeight), Math.max(e
											.clientHeight, t.clientHeight));
								return new I(0, 0, r, n)
							}(e) : T(p), B = n.width, s = n.height, o = n.left, i = n.top, a =
							K({}, {
								allowTaint: !1,
								imageTimeout: 15e3,
								proxy: void 0,
								useCORS: !1
							}, N), c = {
								backgroundColor: "#ffffff",
								cache: N.cache ? N.cache : Se.create(r, a),
								logging: !0,
								removeContainer: !0,
								foreignObjectRendering: !1,
								scale: t.devicePixelRatio || 1,
								windowWidth: t.innerWidth,
								windowHeight: t.innerHeight,
								scrollX: t.pageXOffset,
								scrollY: t.pageYOffset,
								x: o,
								y: i,
								width: Math.ceil(B),
								height: Math.ceil(s),
								id: r
							}, Q = K({}, c, a, N), w = new I(Q.scrollX, Q.scrollY, Q
								.windowWidth, Q.windowHeight), De.create({
								id: r,
								enabled: Q.logging
							}), De.getInstance(r).debug("Starting document clone"), u = new PB(
								p, {
									id: r,
									onclone: Q.onclone,
									ignoreElements: Q.ignoreElements,
									inlineImages: Q.foreignObjectRendering,
									copyStyles: Q.foreignObjectRendering
								}), (U = u.clonedReferenceElement) ? [4, u.toIFrame(e, w)] : [2,
								Promise.reject("Unable to find element in cloned iframe")
							];
					case 1:
						return l = A.sent(), C = e.documentElement ? xs(getComputedStyle(e
								.documentElement).backgroundColor) : He.TRANSPARENT, g = e
							.body ? xs(getComputedStyle(e.body).backgroundColor) : He
							.TRANSPARENT, E = N.backgroundColor, F = "string" == typeof E ? xs(
								E) : null === E ? He.TRANSPARENT : 4294967295, h = p === e
							.documentElement ? ee(C) ? ee(g) ? F : g : C : F, H = {
								id: r,
								cache: Q.cache,
								canvas: Q.canvas,
								backgroundColor: h,
								scale: Q.scale,
								x: Q.x,
								y: Q.y,
								scrollX: Q.scrollX,
								scrollY: Q.scrollY,
								width: Q.width,
								height: Q.height,
								windowWidth: Q.windowWidth,
								windowHeight: Q.windowHeight
							}, Q.foreignObjectRendering ? (De.getInstance(r).debug(
								"Document cloned, using foreign object rendering"), [4,
								new _s(H).render(U)
							]) : [3, 3];
					case 2:
						return d = A.sent(), [3, 5];
					case 3:
						return De.getInstance(r).debug(
								"Document cloned, using computed rendering"), Se.attachInstance(
								Q.cache), De.getInstance(r).debug("Starting DOM parsing"), f =
							oB(U), Se.detachInstance(), h === f.styles.backgroundColor && (f
								.styles.backgroundColor = He.TRANSPARENT), De.getInstance(r)
							.debug("Starting renderer"), [4, new Ds(H).render(f)];
					case 4:
						d = A.sent(), A.label = 5;
					case 5:
						return !0 === Q.removeContainer && (PB.destroy(l) || De.getInstance(r)
								.error(
									"Cannot detach cloned iframe as it is not in the DOM anymore"
									)), De.getInstance(r).debug("Finished rendering"), De
							.destroy(r), Se.destroy(r), [2, d]
				}
			})
		})
	};
	return function(A, e) {
		return void 0 === e && (e = {}), zs(A, e)
	}
});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值