在线微信对话生成器
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
weixin-chat/static/app/js/chat.bundle.js

4546 lines
307 KiB

/*!
* project:在线微信聊天生成器,抖音微信聊天搞笑视频制作神器
* author:追风少年
* 开源地址:https://gitee.com/lifeixue/weixin-chat
* 抖音号:peng071121
*/
! function (t) {
var r = {};
function n(A) {
if (r[A]) return r[A].exports;
var e = r[A] = {
i: A,
l: !1,
exports: {}
};
return t[A].call(e.exports, e, e.exports, n), e.l = !0, e.exports
}
n.m = t, n.c = r, n.d = function (A, e, t) {
n.o(A, e) || Object.defineProperty(A, e, {
enumerable: !0,
get: t
})
}, n.r = function (A) {
"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(A, Symbol.toStringTag, {
value: "Module"
}), Object.defineProperty(A, "__esModule", {
value: !0
})
}, n.t = function (e, A) {
if (1 & A && (e = n(e)), 8 & A) return e;
if (4 & A && "object" == typeof e && e && e.__esModule) return e;
var t = Object.create(null);
if (n.r(t), Object.defineProperty(t, "default", {
enumerable: !0,
value: e
}), 2 & A && "string" != typeof e)
for (var r in e) n.d(t, r, function (A) {
return e[A]
}.bind(null, r));
return t
}, n.n = function (A) {
var e = A && A.__esModule ? function () {
return A.
default
} : function () {
return A
};
return n.d(e, "a", e), e
}, n.o = function (A, e) {
return Object.prototype.hasOwnProperty.call(A, e)
}, n.p = "/assets/", n(n.s = 16)
}([
function (A, e) {
A.exports = function (A) {
function e(A) {
"undefined" != typeof console && (console.error || console.log)("[Script Loader]", A)
}
try {
"undefined" != typeof execScript && "undefined" != typeof attachEvent && "undefined" == typeof addEventListener ? execScript(A) : "undefined" != typeof eval ? eval.call(null, A) : e("EvalError: No eval function available")
} catch (A) {
e(A)
}
}
},
function (A, e, t) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}), e.
default = {
set: function (A, e) {
localStorage.setItem(A, JSON.stringify(e))
},
get: function (A) {
return JSON.parse(localStorage.getItem(A))
},
remove: function (A) {
localStorage.removeItem(A)
}
}
},
function (A, e, t) {
"use strict";
var r = s(t(3)),
n = s(t(1)),
B = s(t(4));
function s(A) {
return A && A.__esModule ? A : {
default: A
}
}
A.exports = {
run: function (e) {
new Vue({
el: "#vueApp",
mounted: function () {
// 创建 gif 对象
let gif = new GIF({
repeat: 0,
workers: 4,
quality: 30,
workerScript: "./static/app/js/gif.worker.js",
// transparent: "#fff",
});
// canvas 转视频
var elementToRecord = document.getElementById('element-to-record');
var canvas2d = document.getElementById('background-canvas');
var context = canvas2d.getContext('2d');
canvas2d.width = elementToRecord.clientWidth;
canvas2d.height = elementToRecord.clientHeight;
var isRecordingStarted = false;
var isStoppedRecording = false;
(function looper() {
if (!isRecordingStarted) {
return setTimeout(looper, 200);
}
html2canvas(elementToRecord).then(function (canvas) {
context.clearRect(0, 0, canvas2d.width, canvas2d.height);
context.drawImage(canvas, 0, 0, canvas2d.width, canvas2d.height);
if (isStoppedRecording) {
return;
}
requestAnimationFrame(looper);
// 添加加一个 canvas 对象的像素到当前帧
gif.addFrame(canvas2d, { copy: true, delay: 120 })
});
})();
// 返回一个 MediaStream 对象
const stream = canvas2d.captureStream(120); // 1秒120帧
// 检测当前浏览器是否支持该类型
const mime = MediaRecorder.isTypeSupported('video/mp4') ? "video/mp4;" : "video/webm;"
console.log(mime);
// 创建一个 MediaRecorder
const recorder = new MediaRecorder(stream, {
videoBitsPerSecond: 8500000, // 比特率
mimeType: mime
});
const data = [];
document.getElementById('btn-start-recording').onclick = function () {
this.disabled = true;
isStoppedRecording = false;
isRecordingStarted = true;
document.getElementById('btn-stop-recording').disabled = false;
// 注册 ondataavailable 事件,将数据记录下来
recorder.ondataavailable = function (event) {
if (event.data && event.data.size) {
data.push(event.data);
}
};
recorder.start(); // 开始录制
};
document.getElementById('btn-stop-recording').onclick = function () {
// 在 onstop 事件里,我们通过 Blob 对象,将数据写入到页面上的 video 标签中
recorder.onstop = () => {
this.disabled = true;
isRecordingStarted = false
isStoppedRecording = true;
console.log(data);
const url = URL.createObjectURL(new Blob(data, {
type: mime
}));
document.getElementById('preview-video').parentNode.style.display = 'block';
document.querySelector("video").src = url;
};
recorder.stop(); // 结束录制
// 合成 Gif 图片
var gifUrl
gif.on('finished', function (blob) {
gifUrl = URL.createObjectURL(blob);
$("#downGif").click(function () {
gifSave()
})
});
gif.render(); // 渲染图片
function gifSave() {
var A = $("#phone").find(".phone-body").scrollTop(),
t = $("#phone").clone().addClass("iPhoneX").get(0);
$("body").append(t), $(t).find(".phone-body").scrollTop(A),
$(".content-wrapper").addClass("loading"),
setTimeout(function () {
(0, r.
default)(t, {
scale: 1,
scrollY: 0,
scrollX: 0
}).then(function (A) {
$("#lightBoxToggle").data("zui.lightbox").show(gifUrl), $(t).remove(), $(".content-wrapper").removeClass("loading")
// 下载生成的GIF图片
$(".caption").click(function () {
var a = $("<a></a>").attr("href", gifUrl).attr("download", "1.gif").appendTo("body")
a[0].click();
a.remove()
})
})
}, 200)
}
};
},
function() {
"function" == typeof e.mounted && e.mounted.call(this);
var A = n.
default.get("phone"), A = (A && (this.phone = A), new Date);
this.phone.time_hour = 10 <= A.getHours() ? A.getHours() : "0" + A.getHours().toString(), this.phone.time_mini = 10 <= A.getMinutes() ? A.getMinutes() : "0" + A.getMinutes().toString(), this.___(), $(".phone").width(this.phone.mode.width), $(".phone").height(this.phone.mode.height), $(".phone-content").css("transform", "scale(" + this.phone.mode.zoom + ")"), $(".phone-wrap").width(this.phone.mode.width * this.phone.mode.zoom), $(".phone-wrap").height(this.phone.mode.height * this.phone.mode.zoom), window.user = {}, localforage.getItem("app").then(function (e) {
e && e.auth && e.auth.token && $.ajax({
url: "",
async: !1,
type: "post",
beforeSend: function (A) {
A.setRequestHeader("Authorization", "bearer " + e.auth.token)
},
success: function (A) {
window.user = A.result, $("#username").html(window.user.username), "1" === window.user.vip && window.user.vipDatetime >= (new Date).getTime() / 1e3 || "1" === window.user.vip && !window.user.vipDatetime ? window.user.noMask = !0 : window.user.noMask = !1
}
})
}).
catch(function (A) { });
try {
setInterval(function () { }, 50)
} catch (A) { }
},
data: Object.assign({
phone: {
single: 4,
wifi: 1,
wifi_single: 3,
time_hour: "12",
time_mini: "02",
battery_charge: 0,
battery_amount: 60,
ear: 0,
mode: {
width: 1125,
height: 2436,
radio: 3,
zoom: .26
}
}
}, e.data),
methods: Object.assign({
save: function () {
var e = this;
e.__();
var A = $("#phone").find(".phone-body").scrollTop(),
t = $("#phone").clone().addClass("iPhoneX").get(0);
$("body").append(t), $(t).find(".phone-body").scrollTop(A), $(".content-wrapper").addClass("loading"), setTimeout(function () {
(0, r.
default)(t, {
scale: 1,
scrollY: 0,
scrollX: 0
}).then(function (A) {
$("#lightBoxToggle").data("zui.lightbox").show(e.canvas2image(A)), $(t).remove(), $(".content-wrapper").removeClass("loading")
// 下载生成的图片
$(".caption").click(function() {
var a = $("<a></a>").attr("href", e.canvas2image(A)).attr("download", "1.png").appendTo("body")
a[0].click();
a.remove()
})
})
}, 200)
},
moneyFormat: function (A, e, t, r, n) {
e = isNaN(e = Math.abs(e)) ? 2 : e, t = void 0 !== t ? t : "$", r = 0 == r ? "" : r || ",", n = n || ".";
var B = A < 0 ? "-" : "",
s = parseInt(A = Math.abs(+A || 0).toFixed(e), 10) + "",
i = 3 < (i = s.length) ? i % 3 : 0;
return t + B + (i ? s.substr(0, i) + r : "") + s.substr(i).replace(/(\d{3})(?=\d)/g, "$1" + r) + (e ? n + Math.abs(A - s).toFixed(e).slice(2) : "")
},
canvas2image: function (A) {
return A.toDataURL("png")
},
matchReplace: function (A, r, n) {
return this.regxSplit(A, r).map(function (A, e) {
for (var t in r)
if (A.match(r[t])) return n[t](A, e);
return A
}).join("")
},
regxSplit: function (r, A) {
A = new RegExp(A.join("|"), "ig");
var n = [],
B = 0;
return r.replace(A, function (A) {
var e = arguments[arguments.length - 2],
t = r.substring(B, e);
t && n.push(t), n.push(A), B = e + A.length
}), B < r.length && n.push(r.substring(B)), n
},
onBatteryChange: function (A) {
A = A.target.value;
this.phone.battery_amount = A
},
_: function () {
return "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"
},
__: function () {
var A;
window.user && window.user.noMask ? $(".s" + window._d).remove() : (A = "s" + window._d, $("." + A).length || ($("head").append(B.
default.____(this._())), A = $('<div class="' + A + '"></div>'), $(".phone-bg").after(A)))
},
___: function () {
var A = this;
A.__(), setTimeout(function () {
A.___()
}, 1e3)
}
}, e.methods),
watch: Object.assign({
phone: {
handler: function (A, e) {
n.
default.set("phone", A)
},
deep: !0
}
}, e.watch)
})
}
}
},
function (A, e, t) {
"use strict";
var r, cs = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (A) {
return typeof A
} : function (A) {
return A && "function" == typeof Symbol && A.constructor === Symbol && A !== Symbol.prototype ? "symbol" : typeof A
};
r = function () {
var K = function (A, e) {
return (K = 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 v(A, e) {
function t() {
this.constructor = A
}
K(A, e), A.prototype = null === e ? Object.create(e) : (t.prototype = e.prototype, new t)
}
var S = function () {
return (S = 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 o(B, s, i, o) {
return new (i = i || Promise)(function (A, e) {
function t(A) {
try {
n(o.next(A))
} catch (A) {
e(A)
}
}
function r(A) {
try {
n(o.
throw(A))
} catch (A) {
e(A)
}
}
function n(e) {
e.done ? A(e.value) : new i(function (A) {
A(e.value)
}).then(t, r)
}
n((o = o.apply(B, s || [])).next())
})
}
function R(r, n) {
var B, s, i, o = {
label: 0,
sent: function () {
if (1 & i[0]) throw i[1];
return i[1]
},
trys: [],
ops: []
}, A = {
next: e(0),
throw: e(1),
return: e(2)
};
return "function" == typeof Symbol && (A[Symbol.iterator] = function () {
return this
}), A;
function e(t) {
return function (A) {
var e = [t, A];
if (B) throw new TypeError("Generator is already executing.");
for (; o;) try {
if (B = 1, s && (i = 2 & e[0] ? s.
return : e[0] ? s.
throw || ((i = s.
return) && i.call(s), 0) : s.next) && !(i = i.call(s, e[1])).done) return i;
switch (s = 0, (e = i ? [2 & e[0], i.value] : e)[0]) {
case 0:
case 1:
i = e;
break;
case 4:
return o.label++, {
value: e[1],
done: !1
};
case 5:
o.label++, s = e[1], e = [0];
continue;
case 7:
e = o.ops.pop(), o.trys.pop();
continue;
default:
if (!(i = 0 < (i = o.trys).length && i[i.length - 1]) && (6 === e[0] || 2 === e[0])) {
o = 0;
continue
}
if (3 === e[0] && (!i || e[1] > i[0] && e[1] < i[3])) {
o.label = e[1];
break
}
if (6 === e[0] && o.label < i[1]) {
o.label = i[1], i = e;
break
}
if (i && o.label < i[2]) {
o.label = i[2], o.ops.push(e);
break
}
i[2] && o.ops.pop(), o.trys.pop();
continue
}
e = n.call(r, o)
} catch (A) {
e = [6, A], s = 0
} finally {
B = i = 0
}
if (5 & e[0]) throw e[1];
return {
value: e[0] ? e[1] : void 0,
done: !0
}
}
}
}
V.prototype.add = function (A, e, t, r) {
return new V(this.left + A, this.top + e, this.width + t, this.height + r)
}, V.fromClientRect = function (A) {
return new V(A.left, A.top, A.width, A.height)
};
var P = V;
function V(A, e, t, r) {
this.left = A, this.top = e, this.width = t, this.height = r
}
for (var X = function (A) {
return P.fromClientRect(A.getBoundingClientRect())
}, z = function (A) {
for (var e = [], t = 0, r = A.length; t < r;) {
var n, B = A.charCodeAt(t++);
55296 <= B && B <= 56319 && t < r ? 56320 == (64512 & (n = A.charCodeAt(t++))) ? e.push(((1023 & B) << 10) + (1023 & n) + 65536) : (e.push(B), t--) : e.push(B)
}
return e
}, Q = 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
}, J = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", x = "undefined" == typeof Uint8Array ? [] : new Uint8Array(256), G = 0; G < J.length; G++) x[J.charCodeAt(G)] = G;
function k(A, e, t) {
return A.slice ? A.slice(e, t) : new Uint16Array(Array.prototype.slice.call(A, e, t))
}
Y.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 = this.index[e = 2080 + (A >> 11)], e = ((e = this.index[e += A >> 5 & 63]) << 2) + (31 & A), this.data[e];
if (A <= 1114111) return this.data[this.highValueIndex]
}
return this.errorValue
};
var W = Y;
function Y(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 Z(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 ((s = r[++B]) === e) return 1;
if (s !== q) break
}
if (n === q)
for (B = t; 0 < B;) {
var s, i = r[--B];
if (Array.isArray(A) ? -1 !== A.indexOf(i) : A === i)
for (var o = t; o <= r.length;) {
if ((s = r[++o]) === e) return 1;
if (s !== q) break
}
if (i !== q) break
}
}
function j(A, e) {
for (var t = A; 0 <= t;) {
var r = e[t];
if (r !== q) return r;
t--
}
return 0
}
var l, A, q = 10,
_ = 13,
$ = 15,
AA = 17,
eA = 18,
tA = 19,
rA = 20,
nA = 21,
BA = 22,
sA = 24,
d = 25,
iA = 26,
oA = 27,
aA = 28,
cA = 30,
QA = 32,
gA = 33,
CA = 34,
uA = 35,
lA = 37,
wA = 38,
UA = 39,
EA = 40,
dA = 42,
h = "×",
hA = (u = function (A) {
for (var e, t, r, n, B = .75 * A.length, s = A.length, i = 0, B = ("=" === A[A.length - 1] && (B--, "=" === A[A.length - 2] && B--), new ("undefined" != typeof ArrayBuffer && "undefined" != typeof Uint8Array && void 0 !== Uint8Array.prototype.slice ? ArrayBuffer : Array)(B)), o = Array.isArray(B) ? B : new Uint8Array(B), a = 0; a < s; a += 4) e = x[A.charCodeAt(a)], t = x[A.charCodeAt(a + 1)], r = x[A.charCodeAt(a + 2)], n = x[A.charCodeAt(a + 3)], o[i++] = e << 2 | t >> 4, o[i++] = (15 & t) << 4 | r >> 2, o[i++] = (3 & r) << 6 | 63 & n;
return B
}("KwAAAAAAAAAACA4AIDoAAPAfAAACAAAAAAAIABAAGABAAEgAUABYAF4AZgBeAGYAYABoAHAAeABeAGYAfACEAIAAiACQAJgAoACoAK0AtQC9AMUAXgBmAF4AZgBeAGYAzQDVAF4AZgDRANkA3gDmAOwA9AD8AAQBDAEUARoBIgGAAIgAJwEvATcBPwFFAU0BTAFUAVwBZAFsAXMBewGDATAAiwGTAZsBogGkAawBtAG8AcIBygHSAdoB4AHoAfAB+AH+AQYCDgIWAv4BHgImAi4CNgI+AkUCTQJTAlsCYwJrAnECeQKBAk0CiQKRApkCoQKoArACuALAAsQCzAIwANQC3ALkAjAA7AL0AvwCAQMJAxADGAMwACADJgMuAzYDPgOAAEYDSgNSA1IDUgNaA1oDYANiA2IDgACAAGoDgAByA3YDfgOAAIQDgACKA5IDmgOAAIAAogOqA4AAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAK8DtwOAAIAAvwPHA88D1wPfAyAD5wPsA/QD/AOAAIAABAQMBBIEgAAWBB4EJgQuBDMEIAM7BEEEXgBJBCADUQRZBGEEaQQwADAAcQQ+AXkEgQSJBJEEgACYBIAAoASoBK8EtwQwAL8ExQSAAIAAgACAAIAAgACgAM0EXgBeAF4AXgBeAF4AXgBeANUEXgDZBOEEXgDpBPEE+QQBBQkFEQUZBSEFKQUxBTUFPQVFBUwFVAVcBV4AYwVeAGsFcwV7BYMFiwWSBV4AmgWgBacFXgBeAF4AXgBeAKsFXgCyBbEFugW7BcIFwgXIBcIFwgXQBdQF3AXkBesF8wX7BQMGCwYTBhsGIwYrBjMGOwZeAD8GRwZNBl4AVAZbBl4AXgBeAF4AXgBeAF4AXgBeAF4AXgBeAGMGXgBqBnEGXgBeAF4AXgBeAF4AXgBeAF4AXgB5BoAG4wSGBo4GkwaAAIADHgR5AF4AXgBeAJsGgABGA4AAowarBrMGswagALsGwwbLBjAA0wbaBtoG3QbaBtoG2gbaBtoG2gblBusG8wb7BgMHCwcTBxsHCwcjBysHMAc1BzUHOgdCB9oGSgdSB1oHYAfaBloHaAfaBlIH2gbaBtoG2gbaBtoG2gbaBjUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHbQdeAF4ANQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQd1B30HNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B4MH2gaKB68EgACAAIAAgACAAIAAgACAAI8HlwdeAJ8HpweAAIAArwe3B14AXgC/B8UHygcwANAH2AfgB4AA6AfwBz4B+AcACFwBCAgPCBcIogEYAR8IJwiAAC8INwg/CCADRwhPCFcIXwhnCEoDGgSAAIAAgABvCHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIfQh3CHgIeQh6CHsIfAh9CHcIeAh5CHoIewh8CH0Idwh4CHkIegh7CHwIhAiLCI4IMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAANQc1BzUHNQc1BzUHNQc1BzUHNQc1B54INQc1B6II2gaqCLIIugiAAIAAvgjGCIAAgACAAIAAgACAAIAAgACAAIAAywiHAYAA0wiAANkI3QjlCO0I9Aj8CIAAgACAAAIJCgkSCRoJIgknCTYHLwk3CZYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiAAIAAAAFAAXgBeAGAAcABeAHwAQACQAKAArQC9AJ4AXgBeAE0A3gBRAN4A7AD8AMwBGgEAAKcBNwEFAUwBXAF4QkhCmEKnArcCgAHHAsABz4LAAcABwAHAAd+C6ABoAG+C/4LAAcABwAHAAc+DF4MAAcAB54M3gweDV4Nng3eDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEeDqABVg6WDqABoQ6gAaABoAHXDvcONw/3DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DvcO9w73DncPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB7cPPwlGCU4JMACAAIAAgABWCV4JYQmAAGkJcAl4CXwJgAkwADAAMAAwAIgJgACLCZMJgACZCZ8JowmrCYAAswkwAF4AXgB8AIAAuwkABMMJyQmAAM4JgADVCTAAMAAwADAAgACAAIAAgACAAIAAgACAAIAAqwYWBNkIMAAwADAAMADdCeAJ6AnuCR4E9gkwAP4JBQoNCjAAMACAABUK0wiAAB0KJAosCjQKgAAwADwKQwqAAEsKvQmdCVMKWwowADAAgACAALcEMACAAGMKgABrCjAAMAAwADAAMAAwADAAMAAwADAAMAAeBDAAMAAwADAAMAAwADAAMAAwADAAMAAwAIkEPQFzCnoKiQSCCooKkAqJBJgKoAqkCokEGAGsCrQKvArBCjAAMADJCtEKFQHZCuEK/gHpCvEKMAAwADAAMACAAIwE+QowAIAAPwEBCzAAMAAwADAAMACAAAkLEQswAIAAPwEZCyELgAAOCCkLMAAxCzkLMAAwADAAMAAwADAAXgBeAEELMAAwADAAMAAwADAAMAAwAEkLTQtVC4AAXAtkC4AAiQkwADAAMAAwADAAMAAwADAAbAtxC3kLgAuFC4sLMAAwAJMLlwufCzAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAApwswADAAMACAAIAAgACvC4AAgACAAIAAgACAALcLMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAvwuAAMcLgACAAIAAgACAAIAAyguAAIAAgACAAIAA0QswADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAANkLgACAAIAA4AswADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACJCR4E6AswADAAhwHwC4AA+AsADAgMEAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMACAAIAAGAwdDCUMMAAwAC0MNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQw1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHPQwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADUHNQc1BzUHNQc1BzUHNQc2BzAAMAA5DDUHNQc1BzUHNQc1BzUHNQc1BzUHNQdFDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAgACAAIAATQxSDFoMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAF4AXgBeAF4AXgBeAF4AYgxeAGoMXgBxDHkMfwxeAIUMXgBeAI0MMAAwADAAMAAwAF4AXgCVDJ0MMAAwADAAMABeAF4ApQxeAKsMswy7DF4Awgy9DMoMXgBeAF4AXgBeAF4AXgBeAF4AXgDRDNkMeQBqCeAM3Ax8AOYM7Az0DPgMXgBeAF4AXgBeAF4AXgBeAF4AXgBeAF4AXgBeAF4AXgCgAAANoAAHDQ4NFg0wADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAeDSYNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIAAgACAAIAAgACAAC4NMABeAF4ANg0wADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAD4NRg1ODVYNXg1mDTAAbQ0wADAAMAAwADAAMAAwADAA2gbaBtoG2gbaBtoG2gbaBnUNeg3CBYANwgWFDdoGjA3aBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gaUDZwNpA2oDdoG2gawDbcNvw3HDdoG2gbPDdYN3A3fDeYN2gbsDfMN2gbaBvoN/g3aBgYODg7aBl4AXgBeABYOXgBeACUG2gYeDl4AJA5eACwO2w3aBtoGMQ45DtoG2gbaBtoGQQ7aBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gZJDjUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B1EO2gY1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQdZDjUHNQc1BzUHNQc1B2EONQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHaA41BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B3AO2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gY1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1BzUHNQc1B2EO2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gZJDtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBtoG2gbaBkkOeA6gAKAAoAAwADAAMAAwAKAAoACgAKAAoACgAKAAgA4wADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAD//wQABAAEAAQABAAEAAQABAAEAA0AAwABAAEAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAKABMAFwAeABsAGgAeABcAFgASAB4AGwAYAA8AGAAcAEsASwBLAEsASwBLAEsASwBLAEsAGAAYAB4AHgAeABMAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAFgAbABIAHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYADQARAB4ABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkAFgAaABsAGwAbAB4AHQAdAB4ATwAXAB4ADQAeAB4AGgAbAE8ATwAOAFAAHQAdAB0ATwBPABcATwBPAE8AFgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwArAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAAQABAANAA0ASwBLAEsASwBLAEsASwBLAEsASwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUAArACsABABQAAQABAAEAAQABAAEAAQAKwArAAQABAArACsABAAEAAQAUAArACsAKwArACsAKwArACsABAArACsAKwArAFAAUAArAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAGgAaAFAAUABQAFAAUABMAB4AGwBQAB4AKwArACsABAAEAAQAKwBQAFAAUABQAFAAUAArACsAKwArAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUAArAFAAUAArACsABAArAAQABAAEAAQABAArACsAKwArAAQABAArACsABAAEAAQAKwArACsABAArACsAKwArACsAKwArAFAAUABQAFAAKwBQACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwAEAAQAUABQAFAABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUAArACsABABQAAQABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQAKwArAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwAeABsAKwArACsAKwArACsAKwBQAAQABAAEAAQABAAEACsABAAEAAQAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwArAAQABAArACsABAAEAAQAKwArACsAKwArACsAKwArAAQABAArACsAKwArAFAAUAArAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwAeAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwAEAFAAKwBQAFAAUABQAFAAUAArACsAKwBQAFAAUAArAFAAUABQAFAAKwArACsAUABQACsAUAArAFAAUAArACsAKwBQAFAAKwArACsAUABQAFAAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQAKwArACsABAAEAAQAKwAEAAQABAAEACsAKwBQACsAKwArACsAKwArAAQAKwArACsAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAB4AHgAeAB4AHgAeABsAHgArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABAArACsAKwArACsAKwArAAQABAArAFAAUABQACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAB4AUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABAArACsAKwArACsAKwArAAQABAArACsAKwArACsAKwArAFAAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwArAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAKwBcAFwAKwBcACsAKwBcACsAKwArACsAKwArAFwAXABcAFwAKwBcAFwAXABcAFwAXABcACsAXABcAFwAKwBcACsAXAArACsAXABcACsAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgArACoAKgBcACsAKwBcAFwAXABcAFwAKwBcACsAKgAqACoAKgAqACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAFwAXABcAFwAUAAOAA4ADgAOAB4ADgAOAAkADgAOAA0ACQATABMAEwATABMACQAeABMAHgAeAB4ABAAEAB4AHgAeAB4AHgAeAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUAANAAQAHgAEAB4ABAAWABEAFgARAAQABABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAAQABAAEAAQABAANAAQABABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsADQANAB4AHgAeAB4AHgAeAAQAHgAeAB4AHgAeAB4AKwAeAB4ADgAOAA0ADgAeAB4AHgAeAB4ACQAJACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgAeAB4AHgBcAFwAXABcAFwAXAAqACoAKgAqAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAKgAqACoAKgAqACoAKgBcAFwAXAAqACoAKgAqAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAXAAqAEsASwBLAEsASwBLAEsASwBLAEsAKgAqACoAKgAqACoAUABQAFAAUABQAFAAKwBQACsAKwArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQACsAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwAEAAQABAAeAA0AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAEQArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAADQANAA0AUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAA0ADQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQACsABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoADQANABUAXAANAB4ADQAbAFwAKgArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAB4AHgATABMADQANAA4AHgATABMAHgAEAAQABAAJACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAUABQAFAAUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwAeACsAKwArABMAEwBLAEsASwBLAEsASwBLAEsASwBLAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwBcAFwAXABcAFwAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcACsAKwArACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwAeAB4AXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgArACsABABLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKgAqACoAKgAqACoAKgBcACoAKgAqACoAKgAqACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAUABQAFAAUABQAFAAUAArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4ADQANAA0ADQAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAHgAeAB4AHgBQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwANAA0ADQANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwBQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsABAAEAAQAHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAABABQAFAAUABQAAQABAAEAFAAUAAEAAQABAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAKwBQACsAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAKwArAB4AHgAeAB4AHgAeACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAUABQAFAAKwAeAB4AHgAeAB4AHgAeAA4AHgArAA0ADQANAA0ADQANAA0ACQANAA0ADQAIAAQACwAEAAQADQAJAA0ADQAMAB0AHQAeABcAFwAWABcAFwAXABYAFwAdAB0AHgAeABQAFAAUAA0AAQABAAQABAAEAAQABAAJABoAGgAaABoAGgAaABoAGgAeABcAFwAdABUAFQAeAB4AHgAeAB4AHgAYABYAEQAVABUAFQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgANAB4ADQANAA0ADQAeAA0ADQANAAcAHgAeAB4AHgArAAQABAAEAAQABAAEAAQABAAEAAQAUABQACsAKwBPAFAAUABQAFAAUAAeAB4AHgAWABEATwBQAE8ATwBPAE8AUABQAFAAUABQAB4AHgAeABYAEQArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAGwAbABsAGwAbABsAGwAaABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAaABsAGwAbABsAGgAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgBQABoAHgAdAB4AUAAeABoAHgAeAB4AHgAeAB4AHgAeAB4ATwAeAFAAGwAeAB4AUABQAFAAUABQAB4AHgAeAB0AHQAeAFAAHgBQAB4AUAAeAFAATwBQAFAAHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AUABQAFAAUABPAE8AUABQAFAAUABQAE8AUABQAE8AUABPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAE8ATwBPAE8ATwBPAE8ATwBPAE8AUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAATwAeAB4AKwArACsAKwAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB0AHQAeAB4AHgAdAB0AHgAeAB0AHgAeAB4AHQAeAB0AGwAbAB4AHQAeAB4AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB0AHgAdAB4AHQAdAB0AHQAdAB0AHgAdAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAdAB0AHQAdAB4AHgAdAB0AHgAeAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABQAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAlACUAHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBQAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAeAB4AHgAeAB0AHQAeAB4AHgAeAB0AHQAdAB4AHgAdAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB0AHQAeAB4AHQAeAB4AHgAeAB0AHQAeAB4AHgAeACUAJQAdAB0AJQAeACUAJQAlACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAHgAeAB4AHgAdAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHQAdAB0AHgAdACUAHQAdAB4AHQAdAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHQAdAB0AHQAlAB4AJQAlACUAHQAlACUAHQAdAB0AJQAlAB0AHQAlAB0AHQAlACUAJQAeAB0AHgAeAB4AHgAdAB0AJQAdAB0AHQAdAB0AHQAlACUAJQAlACUAHQAlACUAIAAlAB0AHQAlACUAJQAlACUAJQAlACUAHgAeAB4AJQAlACAAIAAgACAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeABcAFwAXABcAFwAXAB4AEwATACUAHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwArACUAJQBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAKwArACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAE8ATwBPAE8ATwBPAE8ATwAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeACsAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUAArACsAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQBQAFAAUABQACsAKwArACsAUABQAFAAUABQAFAAUABQAA0AUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQACsAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgBQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAABAAEAAQAKwAEAAQAKwArACsAKwArAAQABAAEAAQAUABQAFAAUAArAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsABAAEAAQAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsADQANAA0ADQANAA0ADQANAB4AKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AUABQAFAAUABQAFAAUABQAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAUABQAFAAUABQAA0ADQANAA0ADQANABQAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwANAA0ADQANAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAeAAQABAAEAB4AKwArAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLACsADQArAB4AKwArAAQABAAEAAQAUABQAB4AUAArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwAEAAQABAAEAAQABAAEAAQABAAOAA0ADQATABMAHgAeAB4ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0AUABQAFAAUAAEAAQAKwArAAQADQANAB4AUAArACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXABcAA0ADQANACoASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUAArACsAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANACsADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEcARwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQACsAKwAeAAQABAANAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAEAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUAArACsAUAArACsAUABQACsAKwBQAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AKwArAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAeAB4ADQANAA0ADQAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAArAAQABAArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAEAAQABAAEAAQABAAEACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAFgAWAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAKwBQACsAKwArACsAKwArAFAAKwArACsAKwBQACsAUAArAFAAKwBQAFAAUAArAFAAUAArAFAAKwArAFAAKwBQACsAUAArAFAAKwBQACsAUABQACsAUAArACsAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAUABQAFAAUAArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUAArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAlACUAJQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeACUAJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeACUAJQAlACUAJQAeACUAJQAlACUAJQAgACAAIAAlACUAIAAlACUAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIQAhACEAIQAhACUAJQAgACAAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAgACAAIAAlACUAJQAlACAAJQAgACAAIAAgACAAIAAgACAAIAAlACUAJQAgACUAJQAlACUAIAAgACAAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeACUAHgAlAB4AJQAlACUAJQAlACAAJQAlACUAJQAeACUAHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAgACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAlACUAJQAlACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAIAAgACAAJQAlACUAIAAgACAAIAAgAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFwAXABcAFQAVABUAHgAeAB4AHgAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAIAAgACAAJQAlACUAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAlACAAIAAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsA"), c = Array.isArray(u) ? 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
}(u) : new Uint32Array(u), B = k(u = Array.isArray(u) ? function (A) {
for (var e = A.length, t = [], r = 0; r < e; r += 2) t.push(A[r + 1] << 8 | A[r]);
return t
}(u) : new Uint16Array(u), 12, c[4] / 2), u = 2 === c[5] ? k(u, (24 + c[4]) / 2) : (u = c, A = Math.ceil((24 + c[4]) / 4), u.slice ? u.slice(A, void 0) : new Uint32Array(Array.prototype.slice.call(u, A, void 0))), new W(c[0], c[1], c[2], c[3], B, u)),
fA = [cA, 36],
FA = [1, 2, 3, 5],
HA = [q, 8],
IA = [oA, iA],
pA = FA.concat(HA),
NA = [wA, UA, EA, CA, uA],
mA = [$, _],
KA = (vA.prototype.slice = function () {
return Q.apply(void 0, this.codePoints.slice(this.start, this.end))
}, vA);
function vA(A, e, t, r) {
this.codePoints = A, this.required = "!" === e, this.start = t, this.end = r
}
function g(A) {
return 48 <= A && A <= 57
}
function RA(A) {
return g(A) || 65 <= A && A <= 70 || 97 <= A && A <= 102
}
function bA(A) {
return 10 === A || 9 === A || 32 === A
}
function DA(A) {
return 97 <= (e = A) && e <= 122 || 65 <= e && e <= 90 || 128 <= A || 95 === A;
var e
}
function TA(A) {
return DA(A) || g(A) || 45 === A
}
function MA(A, e) {
return 92 === A && 10 !== e
}
function LA(A, e, t) {
return 45 === A ? DA(e) || MA(e, t) : DA(A) || 92 === A && MA(A, e)
}
function yA(A, e, t) {
return 43 === A || 45 === A ? g(e) || 46 === e && g(t) : g(46 === A ? e : A)
} (A = l = l || {})[A.STRING_TOKEN = 0] = "STRING_TOKEN", A[A.BAD_STRING_TOKEN = 1] = "BAD_STRING_TOKEN", A[A.LEFT_PARENTHESIS_TOKEN = 2] = "LEFT_PARENTHESIS_TOKEN", A[A.RIGHT_PARENTHESIS_TOKEN = 3] = "RIGHT_PARENTHESIS_TOKEN", A[A.COMMA_TOKEN = 4] = "COMMA_TOKEN", A[A.HASH_TOKEN = 5] = "HASH_TOKEN", A[A.DELIM_TOKEN = 6] = "DELIM_TOKEN", A[A.AT_KEYWORD_TOKEN = 7] = "AT_KEYWORD_TOKEN", A[A.PREFIX_MATCH_TOKEN = 8] = "PREFIX_MATCH_TOKEN", A[A.DASH_MATCH_TOKEN = 9] = "DASH_MATCH_TOKEN", A[A.INCLUDE_MATCH_TOKEN = 10] = "INCLUDE_MATCH_TOKEN", A[A.LEFT_CURLY_BRACKET_TOKEN = 11] = "LEFT_CURLY_BRACKET_TOKEN", A[A.RIGHT_CURLY_BRACKET_TOKEN = 12] = "RIGHT_CURLY_BRACKET_TOKEN", A[A.SUFFIX_MATCH_TOKEN = 13] = "SUFFIX_MATCH_TOKEN", A[A.SUBSTRING_MATCH_TOKEN = 14] = "SUBSTRING_MATCH_TOKEN", A[A.DIMENSION_TOKEN = 15] = "DIMENSION_TOKEN", A[A.PERCENTAGE_TOKEN = 16] = "PERCENTAGE_TOKEN", A[A.NUMBER_TOKEN = 17] = "NUMBER_TOKEN", A[A.FUNCTION = 18] = "FUNCTION", A[A.FUNCTION_TOKEN = 19] = "FUNCTION_TOKEN", A[A.IDENT_TOKEN = 20] = "IDENT_TOKEN", A[A.COLUMN_TOKEN = 21] = "COLUMN_TOKEN", A[A.URL_TOKEN = 22] = "URL_TOKEN", A[A.BAD_URL_TOKEN = 23] = "BAD_URL_TOKEN", A[A.CDC_TOKEN = 24] = "CDC_TOKEN", A[A.CDO_TOKEN = 25] = "CDO_TOKEN", A[A.COLON_TOKEN = 26] = "COLON_TOKEN", A[A.SEMICOLON_TOKEN = 27] = "SEMICOLON_TOKEN", A[A.LEFT_SQUARE_BRACKET_TOKEN = 28] = "LEFT_SQUARE_BRACKET_TOKEN", A[A.RIGHT_SQUARE_BRACKET_TOKEN = 29] = "RIGHT_SQUARE_BRACKET_TOKEN", A[A.UNICODE_RANGE_TOKEN = 30] = "UNICODE_RANGE_TOKEN", A[A.WHITESPACE_TOKEN = 31] = "WHITESPACE_TOKEN", A[A.EOF_TOKEN = 32] = "EOF_TOKEN";
var OA = {
type: l.LEFT_PARENTHESIS_TOKEN
}, SA = {
type: l.RIGHT_PARENTHESIS_TOKEN
}, PA = {
type: l.COMMA_TOKEN
}, VA = {
type: l.SUFFIX_MATCH_TOKEN
}, XA = {
type: l.PREFIX_MATCH_TOKEN
}, zA = {
type: l.COLUMN_TOKEN
}, JA = {
type: l.DASH_MATCH_TOKEN
}, xA = {
type: l.INCLUDE_MATCH_TOKEN
}, GA = {
type: l.LEFT_CURLY_BRACKET_TOKEN
}, kA = {
type: l.RIGHT_CURLY_BRACKET_TOKEN
}, WA = {
type: l.SUBSTRING_MATCH_TOKEN
}, YA = {
type: l.BAD_URL_TOKEN
}, ZA = {
type: l.BAD_STRING_TOKEN
}, jA = {
type: l.CDO_TOKEN
}, qA = {
type: l.CDC_TOKEN
}, _A = {
type: l.COLON_TOKEN
}, $A = {
type: l.SEMICOLON_TOKEN
}, Ae = {
type: l.LEFT_SQUARE_BRACKET_TOKEN
}, ee = {
type: l.RIGHT_SQUARE_BRACKET_TOKEN
}, te = {
type: l.WHITESPACE_TOKEN
}, re = {
type: l.EOF_TOKEN
}, ne = (e.prototype.write = function (A) {
this._value = this._value.concat(z(A))
}, e.prototype.read = function () {
for (var A = [], e = this.consumeToken(); e !== re;) A.push(e), e = this.consumeToken();
return A
}, e.prototype.consumeToken = function () {
var A = this.consumeCodePoint();
switch (A) {
case 34:
return this.consumeStringToken(34);
case 35:
var e, t = this.peekCodePoint(0),
r = this.peekCodePoint(1),
n = this.peekCodePoint(2);
if (TA(t) || MA(r, n)) return t = LA(t, r, n) ? 2 : 1, e = this.consumeName(), {
type: l.HASH_TOKEN,
value: e,
flags: t
};
break;
case 36:
if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), VA;
break;
case 39:
return this.consumeStringToken(39);
case 40:
return OA;
case 41:
return SA;
case 42:
if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), WA;
break;
case 43:
if (yA(A, this.peekCodePoint(0), this.peekCodePoint(1))) return this.reconsumeCodePoint(A), this.consumeNumericToken();
break;
case 44:
return PA;
case 45:
r = A, n = this.peekCodePoint(0), t = this.peekCodePoint(1);
if (yA(r, n, t)) return this.reconsumeCodePoint(A), this.consumeNumericToken();
if (LA(r, n, t)) return this.reconsumeCodePoint(A), this.consumeIdentLikeToken();
if (45 === n && 62 === t) return this.consumeCodePoint(), this.consumeCodePoint(), qA;
break;
case 46:
if (yA(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 B = this.consumeCodePoint();
if (42 === B && 47 === (B = this.consumeCodePoint())) return this.consumeToken();
if (-1 === B) return this.consumeToken()
}
break;
case 58:
return _A;
case 59:
return $A;
case 60:
if (33 === this.peekCodePoint(0) && 45 === this.peekCodePoint(1) && 45 === this.peekCodePoint(2)) return this.consumeCodePoint(), this.consumeCodePoint(), jA;
break;
case 64:
if (LA(this.peekCodePoint(0), this.peekCodePoint(1), this.peekCodePoint(2))) return e = this.consumeName(), {
type: l.AT_KEYWORD_TOKEN,
value: e
};
break;
case 91:
return Ae;
case 92:
if (MA(A, this.peekCodePoint(0))) return this.reconsumeCodePoint(A), this.consumeIdentLikeToken();
break;
case 93:
return ee;
case 61:
if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), XA;
break;
case 123:
return GA;
case 125:
return kA;
case 117:
case 85:
r = this.peekCodePoint(0), n = this.peekCodePoint(1);
return 43 !== r || !RA(n) && 63 !== n || (this.consumeCodePoint(), this.consumeUnicodeRangeToken()), this.reconsumeCodePoint(A), this.consumeIdentLikeToken();
case 124:
if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), JA;
if (124 === this.peekCodePoint(0)) return this.consumeCodePoint(), zA;
break;
case 126:
if (61 === this.peekCodePoint(0)) return this.consumeCodePoint(), xA;
break;
case -1:
return re
}
return bA(A) ? (this.consumeWhiteSpace(), te) : g(A) ? (this.reconsumeCodePoint(A), this.consumeNumericToken()) : DA(A) ? (this.reconsumeCodePoint(A), this.consumeIdentLikeToken()) : {
type: l.DELIM_TOKEN,
value: Q(A)
}
}, e.prototype.consumeCodePoint = function () {
var A = this._value.shift();
return void 0 === A ? -1 : A
}, e.prototype.reconsumeCodePoint = function (A) {
this._value.unshift(A)
}, e.prototype.peekCodePoint = function (A) {
return A >= this._value.length ? -1 : this._value[A]
}, e.prototype.consumeUnicodeRangeToken = function () {
for (var A = [], e = this.consumeCodePoint(); RA(e) && A.length < 6;) A.push(e), e = this.consumeCodePoint();
for (var t, r = !1; 63 === e && A.length < 6;) A.push(e), e = this.consumeCodePoint(), r = !0;
if (r) return n = parseInt(Q.apply(void 0, A.map(function (A) {
return 63 === A ? 48 : A
})), 16), t = parseInt(Q.apply(void 0, A.map(function (A) {
return 63 === A ? 70 : A
})), 16), {
type: l.UNICODE_RANGE_TOKEN,
start: n,
end: t
};
var n = parseInt(Q.apply(void 0, A), 16);
if (45 === this.peekCodePoint(0) && RA(this.peekCodePoint(1))) {
this.consumeCodePoint();
for (var e = this.consumeCodePoint(), B = []; RA(e) && B.length < 6;) B.push(e), e = this.consumeCodePoint();
return t = parseInt(Q.apply(void 0, B), 16), {
type: l.UNICODE_RANGE_TOKEN,
start: n,
end: t
}
}
return {
type: l.UNICODE_RANGE_TOKEN,
start: n,
end: n
}
}, e.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: l.FUNCTION_TOKEN,
value: A
}) : {
type: l.IDENT_TOKEN,
value: A
}
}, e.prototype.consumeUrlToken = function () {
var A = [];
if (this.consumeWhiteSpace(), -1 === this.peekCodePoint(0)) return {
type: l.URL_TOKEN,
value: ""
};
var e = this.peekCodePoint(0);
if (39 === e || 34 === e) return (e = this.consumeStringToken(this.consumeCodePoint())).type === l.STRING_TOKEN && (this.consumeWhiteSpace(), -1 === this.peekCodePoint(0) || 41 === this.peekCodePoint(0)) ? (this.consumeCodePoint(), {
type: l.URL_TOKEN,
value: e.value
}) : (this.consumeBadUrlRemnants(), YA);
for (; ;) {
var t = this.consumeCodePoint();
if (-1 === t || 41 === t) return {
type: l.URL_TOKEN,
value: Q.apply(void 0, A)
};
if (bA(t)) return this.consumeWhiteSpace(), -1 === this.peekCodePoint(0) || 41 === this.peekCodePoint(0) ? (this.consumeCodePoint(), {
type: l.URL_TOKEN,
value: Q.apply(void 0, A)
}) : (this.consumeBadUrlRemnants(), YA);
if (34 === t || 39 === t || 40 === t || 0 <= t && t <= 8 || 11 === t || 14 <= t && t <= 31 || 127 === t) return this.consumeBadUrlRemnants(), YA;
if (92 === t) {
if (!MA(t, this.peekCodePoint(0))) return this.consumeBadUrlRemnants(), YA;
A.push(this.consumeEscapedCodePoint())
} else A.push(t)
}
}, e.prototype.consumeWhiteSpace = function () {
for (; bA(this.peekCodePoint(0));) this.consumeCodePoint()
}, e.prototype.consumeBadUrlRemnants = function () {
for (; ;) {
var A = this.consumeCodePoint();
if (41 === A || -1 === A) return;
MA(A, this.peekCodePoint(0)) && this.consumeEscapedCodePoint()
}
}, e.prototype.consumeStringSlice = function (A) {
for (var e = ""; 0 < A;) {
var t = Math.min(6e4, A);
e += Q.apply(void 0, this._value.splice(0, t)), A -= t
}
return this._value.shift(), e
}, e.prototype.consumeStringToken = function (A) {
for (var e = "", t = 0; ;) {
var r, n = this._value[t];
if (-1 === n || void 0 === n || n === A) return e += this.consumeStringSlice(t), {
type: l.STRING_TOKEN,
value: e
};
if (10 === n) return this._value.splice(0, t), ZA;
92 !== n || -1 !== (r = this._value[t + 1]) && void 0 !== r && (10 === r ? (e += this.consumeStringSlice(t), t = -1, this._value.shift()) : MA(n, r) && (e = (e += this.consumeStringSlice(t)) + Q(this.consumeEscapedCodePoint()), t = -1)), t++
}
}, e.prototype.consumeNumber = function () {
var A = [],
e = 4;
for (43 !== (t = this.peekCodePoint(0)) && 45 !== t || A.push(this.consumeCodePoint()); g(this.peekCodePoint(0));) A.push(this.consumeCodePoint());
var t = this.peekCodePoint(0),
r = this.peekCodePoint(1);
if (46 === t && g(r))
for (A.push(this.consumeCodePoint(), this.consumeCodePoint()), e = 8; g(this.peekCodePoint(0));) A.push(this.consumeCodePoint());
t = this.peekCodePoint(0);
var r = this.peekCodePoint(1),
n = this.peekCodePoint(2);
if ((69 === t || 101 === t) && ((43 === r || 45 === r) && g(n) || g(r)))
for (A.push(this.consumeCodePoint(), this.consumeCodePoint()), e = 8; g(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 = []; g(A[e]);) r.push(A[e++]);
var n = r.length ? parseInt(Q.apply(void 0, r), 10) : 0;
46 === A[e] && e++;
for (var B = []; g(A[e]);) B.push(A[e++]);
var s = B.length,
i = s ? parseInt(Q.apply(void 0, B), 10) : 0,
o = (69 !== A[e] && 101 !== A[e] || e++, 1);
43 !== A[e] && 45 !== A[e] || (45 === A[e] && (o = -1), e++);
for (var a = []; g(A[e]);) a.push(A[e++]);
var c = a.length ? parseInt(Q.apply(void 0, a), 10) : 0;
return t * (n + i * Math.pow(10, -s)) * Math.pow(10, o * c)
}(A), e]
}, e.prototype.consumeNumericToken = function () {
var A, e = this.consumeNumber(),
t = e[0],
e = e[1],
r = this.peekCodePoint(0);
return LA(r, this.peekCodePoint(1), this.peekCodePoint(2)) ? (A = this.consumeName(), {
type: l.DIMENSION_TOKEN,
number: t,
flags: e,
unit: A
}) : 37 === r ? (this.consumeCodePoint(), {
type: l.PERCENTAGE_TOKEN,
number: t,
flags: e
}) : {
type: l.NUMBER_TOKEN,
number: t,
flags: e
}
}, e.prototype.consumeEscapedCodePoint = function () {
var A = this.consumeCodePoint();
if (RA(A)) {
for (var e = Q(A); RA(this.peekCodePoint(0)) && e.length < 6;) e += Q(this.consumeCodePoint());
bA(this.peekCodePoint(0)) && this.consumeCodePoint();
var t = parseInt(e, 16);
return 0 === t || 55296 <= t && t <= 57343 || 1114111 < t ? 65533 : t
}
return -1 === A ? 65533 : A
}, e.prototype.consumeName = function () {
for (var A = ""; ;) {
var e = this.consumeCodePoint();
if (TA(e)) A += Q(e);
else {
if (!MA(e, this.peekCodePoint(0))) return this.reconsumeCodePoint(e), A;
A += Q(this.consumeEscapedCodePoint())
}
}
}, e);
function e() {
this._value = []
}
t.create = function (A) {
var e = new ne;
return e.write(A), new t(e.read())
}, t.parseValue = function (A) {
return t.create(A).parseComponentValue()
}, t.parseValues = function (A) {
return t.create(A).parseComponentValues()
}, t.prototype.parseComponentValue = function () {
for (var A = this.consumeToken(); A.type === l.WHITESPACE_TOKEN;) A = this.consumeToken();
if (A.type === l.EOF_TOKEN) throw new SyntaxError("Error parsing CSS component value, unexpected EOF");
this.reconsumeToken(A);
for (var e = this.consumeComponentValue();
(A = this.consumeToken()).type === l.WHITESPACE_TOKEN;);
if (A.type === l.EOF_TOKEN) return e;
throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")
}, t.prototype.parseComponentValues = function () {
for (var A = []; ;) {
var e = this.consumeComponentValue();
if (e.type === l.EOF_TOKEN) return A;
A.push(e), A.push()
}
}, t.prototype.consumeComponentValue = function () {
var A = this.consumeToken();
switch (A.type) {
case l.LEFT_CURLY_BRACKET_TOKEN:
case l.LEFT_SQUARE_BRACKET_TOKEN:
case l.LEFT_PARENTHESIS_TOKEN:
return this.consumeSimpleBlock(A.type);
case l.FUNCTION_TOKEN:
return this.consumeFunction(A)
}
return A
}, t.prototype.consumeSimpleBlock = function (A) {
for (var e = {
type: A,
values: []
}, t = this.consumeToken(); ;) {
if (t.type === l.EOF_TOKEN || Fe(t, A)) return e;
this.reconsumeToken(t), e.values.push(this.consumeComponentValue()), t = this.consumeToken()
}
}, t.prototype.consumeFunction = function (A) {
for (var e = {
name: A.value,
values: [],
type: l.FUNCTION
}; ;) {
var t = this.consumeToken();
if (t.type === l.EOF_TOKEN || t.type === l.RIGHT_PARENTHESIS_TOKEN) return e;
this.reconsumeToken(t), e.values.push(this.consumeComponentValue())
}
}, t.prototype.consumeToken = function () {
var A = this._tokens.shift();
return void 0 === A ? re : A
}, t.prototype.reconsumeToken = function (A) {
this._tokens.unshift(A)
};
var Be = t;
function t(A) {
this._tokens = A
}
function se(A) {
return A.type === l.DIMENSION_TOKEN
}
function ie(A) {
return A.type === l.NUMBER_TOKEN
}
function w(A) {
return A.type === l.IDENT_TOKEN
}
function oe(A) {
return A.type === l.STRING_TOKEN
}
function ae(A, e) {
return w(A) && A.value === e
}
function ce(A) {
return A.type !== l.WHITESPACE_TOKEN
}
function Qe(A) {
return A.type !== l.WHITESPACE_TOKEN && A.type !== l.COMMA_TOKEN
}
function ge(A) {
var e = [],
t = [];
return A.forEach(function (A) {
if (A.type === l.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 !== l.WHITESPACE_TOKEN && t.push(A)
}), t.length && e.push(t), e
}
function Ce(A) {
return A.type === l.NUMBER_TOKEN || A.type === l.DIMENSION_TOKEN
}
function U(A) {
return A.type === l.PERCENTAGE_TOKEN || Ce(A)
}
function ue(A) {
return 1 < A.length ? [A[0], A[1]] : [A[0]]
}
function le(A, e, t) {
var r = A[0],
A = A[1];
return [D(r, e), D(void 0 !== A ? A : r, t)]
}
function we(A) {
return A.type === l.DIMENSION_TOKEN && ("deg" === A.unit || "grad" === A.unit || "rad" === A.unit || "turn" === A.unit)
}
function Ue(A) {
switch (A.filter(w).map(function (A) {
return A.value
}).join(" ")) {
case "to bottom right":
case "to right bottom":
case "left top":
case "top left":
return [C, C];
case "to top":
case "bottom":
return s(0);
case "to bottom left":
case "to left bottom":
case "right top":
case "top right":
return [C, Ie];
case "to right":
case "left":
return s(90);
case "to top left":
case "to left top":
case "right bottom":
case "bottom right":
return [Ie, Ie];
case "to bottom":
case "top":
return s(180);
case "to top right":
case "to right top":
case "left bottom":
case "bottom left":
return [Ie, C];
case "to left":
case "right":
return s(270)
}
return 0
}
function Ee(A) {
return 0 == (255 & A)
}
function b(A) {
var e = 255 & A,
t = 255 & A >> 8,
r = 255 & A >> 16,
A = 255 & A >> 24;
return e < 255 ? "rgba(" + A + "," + r + "," + t + "," + e / 255 + ")" : "rgb(" + A + "," + r + "," + t + ")"
}
function de(A, e) {
if (A.type === l.NUMBER_TOKEN) return A.number;
if (A.type !== l.PERCENTAGE_TOKEN) return 0;
var t = 3 === e ? 1 : 255;
return 3 === e ? A.number / 100 * t : Math.round(A.number / 100 * t)
}
function he(A) {
var e, t, r, A = A.filter(Qe);
if (3 === A.length) return e = (r = A.map(de))[0], t = r[1], r = r[2], Ne(e, t, r, 1);
if (4 !== A.length) return 0;
A = A.map(de), e = A[0], t = A[1], r = A[2], A = A[3];
return Ne(e, t, r, A)
}
function fe(A) {
if (A.type === l.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")
}
function s(A) {
return Math.PI * A / 180
}
var Fe = function (A, e) {
return e === l.LEFT_CURLY_BRACKET_TOKEN && A.type === l.RIGHT_CURLY_BRACKET_TOKEN || e === l.LEFT_SQUARE_BRACKET_TOKEN && A.type === l.RIGHT_SQUARE_BRACKET_TOKEN || e === l.LEFT_PARENTHESIS_TOKEN && A.type === l.RIGHT_PARENTHESIS_TOKEN
}, C = {
type: l.NUMBER_TOKEN,
number: 0,
flags: 4
}, He = {
type: l.PERCENTAGE_TOKEN,
number: 50,
flags: 4
}, Ie = {
type: l.PERCENTAGE_TOKEN,
number: 100,
flags: 4
}, D = function (A, e) {
if (A.type === l.PERCENTAGE_TOKEN) return A.number / 100 * e;
if (se(A)) switch (A.unit) {
case "rem":
case "em":
return 16 * A.number;
default:
return A.number
}
return A.number
}, pe = function (A) {
if (A.type === l.FUNCTION) {
var e = Re[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 === l.HASH_TOKEN) {
var t, r, n, B;
if (3 === A.value.length) return t = A.value.substring(0, 1), r = A.value.substring(1, 2), n = A.value.substring(2, 3), Ne(parseInt(t + t, 16), parseInt(r + r, 16), parseInt(n + n, 16), 1);
if (4 === A.value.length) return t = A.value.substring(0, 1), r = A.value.substring(1, 2), n = A.value.substring(2, 3), B = A.value.substring(3, 4), Ne(parseInt(t + t, 16), parseInt(r + r, 16), parseInt(n + n, 16), parseInt(B + B, 16) / 255);
if (6 === A.value.length) return t = A.value.substring(0, 2), r = A.value.substring(2, 4), n = A.value.substring(4, 6), Ne(parseInt(t, 16), parseInt(r, 16), parseInt(n, 16), 1);
if (8 === A.value.length) return t = A.value.substring(0, 2), r = A.value.substring(2, 4), n = A.value.substring(4, 6), B = A.value.substring(6, 8), Ne(parseInt(t, 16), parseInt(r, 16), parseInt(n, 16), parseInt(B, 16) / 255)
}
if (A.type === l.IDENT_TOKEN) {
e = be[A.value.toUpperCase()];
if (void 0 !== e) return e
}
return be.TRANSPARENT
}, Ne = function (A, e, t, r) {
return (A << 24 | e << 16 | t << 8 | Math.round(255 * r) << 0) >>> 0
};
function me(A, e, t) {
return t < 0 && (t += 1), 1 <= t && --t, t < 1 / 6 ? (e - A) * t * 6 + A : t < .5 ? e : t < 2 / 3 ? 6 * (e - A) * (2 / 3 - t) + A : A
}
function Ke(A) {
var A = A.filter(Qe),
e = A[0],
t = A[1],
r = A[2],
A = A[3],
e = (e.type === l.NUMBER_TOKEN ? s(e.number) : fe(e)) / (2 * Math.PI),
t = U(t) ? t.number / 100 : 0,
r = U(r) ? r.number / 100 : 0,
A = void 0 !== A && U(A) ? D(A, 1) : 1;
if (0 == t) return Ne(255 * r, 255 * r, 255 * r, 1);
var t = r <= .5 ? r * (1 + t) : r + t - r * t,
r = 2 * r - t,
n = me(r, t, e + 1 / 3),
B = me(r, t, e),
r = me(r, t, e - 1 / 3);
return Ne(255 * n, 255 * B, 255 * r, A)
}
var i, ve, Re = {
hsl: Ke,
hsla: Ke,
rgb: he,
rgba: he
}, be = {
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
};
function De(A) {
var e = pe(A[0]),
A = A[1];
return A && U(A) ? {
color: e,
stop: A
} : {
color: e,
stop: null
}
}
function Te(A, t) {
var e = A[0],
r = A[A.length - 1];
null === e.stop && (e.stop = C), null === r.stop && (r.stop = Ie);
for (var n = [], B = 0, s = 0; s < A.length; s++) {
var i = A[s].stop;
null !== i ? (B < (i = D(i, t)) ? n.push(i) : n.push(B), B = i) : n.push(null)
}
for (var o = null, s = 0; s < n.length; s++) {
var a = n[s];
if (null === a) null === o && (o = s);
else if (null !== o) {
for (var c = s - o, Q = (a - n[o - 1]) / (1 + c), g = 1; g <= c; g++) n[o + g - 1] = Q * g;
o = null
}
}
return A.map(function (A, e) {
return {
color: A.color,
stop: Math.max(Math.min(1, n[e] / t), 0)
}
})
}
function T(A, e) {
return Math.sqrt(A * A + e * e)
}
function Me(A, e, n, B, s) {
return [[0, 0], [0, e], [A, 0], [A, e]].reduce(function (A, e) {
var t = e[0],
r = e[1],
t = T(n - t, B - r);
return (s ? t < A.optimumDistance : t > A.optimumDistance) ? {
optimumCorner: e,
optimumDistance: t
} : A
}, {
optimumDistance: s ? 1 / 0 : -1 / 0,
optimumCorner: null
}).optimumCorner
}
function Le(A) {
var t = s(180),
r = [];
return ge(A).forEach(function (A, e) {
if (0 === e) {
e = A[0];
if (e.type === l.IDENT_TOKEN && -1 !== ["top", "left", "right", "bottom"].indexOf(e.value)) return void (t = Ue(A));
if (we(e)) return void (t = (fe(e) + s(270)) % s(360))
}
e = De(A);
r.push(e)
}), {
angle: t,
stops: r,
type: L.LINEAR_GRADIENT
}
}
function ye(A) {
return 0 === A[0] && 255 === A[1] && 0 === A[2] && 255 === A[3]
}
i = {
VALUE: 0,
0: "VALUE",
LIST: 1,
1: "LIST",
IDENT_VALUE: 2,
2: "IDENT_VALUE",
TYPE_VALUE: 3,
3: "TYPE_VALUE",
TOKEN_VALUE: 4,
4: "TOKEN_VALUE"
};
function Oe(A, e, t, r, n) {
var B = "http://www.w3.org/2000/svg",
s = document.createElementNS(B, "svg"),
B = document.createElementNS(B, "foreignObject");
return s.setAttributeNS(null, "width", A.toString()), s.setAttributeNS(null, "height", e.toString()), B.setAttributeNS(null, "width", "100%"), B.setAttributeNS(null, "height", "100%"), B.setAttributeNS(null, "x", t.toString()), B.setAttributeNS(null, "y", r.toString()), B.setAttributeNS(null, "externalResourcesRequired", "true"), s.appendChild(B), B.appendChild(n), s
}
function Se(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))
})
}
var Pe = {
name: "background-clip",
initialValue: "border-box",
prefix: !((W = ve = {
BORDER_BOX: 0,
0: "BORDER_BOX",
PADDING_BOX: 1,
1: "PADDING_BOX"
})[W.CONTENT_BOX = 2] = "CONTENT_BOX"),
type: i.LIST,
parse: function (A) {
return A.map(function (A) {
if (w(A)) switch (A.value) {
case "padding-box":
return ve.PADDING_BOX;
case "content-box":
return ve.CONTENT_BOX
}
return ve.BORDER_BOX
})
}
}, Ve = {
name: "background-color",
initialValue: "transparent",
prefix: !1,
type: i.TYPE_VALUE,
format: "color"
}, a = {
get SUPPORT_RANGE_BOUNDS() {
var A = function (A) {
if (A.createRange) {
var e = A.createRange();
if (e.getBoundingClientRect) {
var t = A.createElement("boundtest"),
e = (t.style.height = "123px", t.style.display = "block", A.body.appendChild(t), e.selectNode(t), e.getBoundingClientRect()),
e = Math.round(e.height);
if (A.body.removeChild(t), 123 === e) return !0
}
}
return !1
}(document);
return Object.defineProperty(a, "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(a, "SUPPORT_SVG_DRAWING", {
value: A
}), A
}, get SUPPORT_FOREIGNOBJECT_DRAWING() {
var A = "function" == typeof Array.from && "function" == typeof window.fetch ? function (t) {
var A = t.createElement("canvas"),
r = 100,
n = (A.width = r, A.height = r, A.getContext("2d"));
if (!n) return Promise.reject(!1);
n.fillStyle = "rgb(0, 255, 0)", n.fillRect(0, 0, r, r);
var e = new Image,
B = A.toDataURL(),
A = (e.src = B, Oe(r, r, 0, 0, e));
return n.fillStyle = "red", n.fillRect(0, 0, r, r), Se(A).then(function (A) {
n.drawImage(A, 0, 0);
var A = n.getImageData(0, 0, r, r).data,
e = (n.fillStyle = "red", n.fillRect(0, 0, r, r), t.createElement("div"));
return e.style.backgroundImage = "url(" + B + ")", e.style.height = "100px", ye(A) ? Se(Oe(r, r, 0, 0, e)) : Promise.reject(!1)
}).then(function (A) {
return n.drawImage(A, 0, 0), ye(n.getImageData(0, 0, r, r).data)
}).
catch(function () {
return !1
})
}(document) : Promise.resolve(!1);
return Object.defineProperty(a, "SUPPORT_FOREIGNOBJECT_DRAWING", {
value: A
}), A
}, get SUPPORT_CORS_IMAGES() {
var A = void 0 !== (new Image).crossOrigin;
return Object.defineProperty(a, "SUPPORT_CORS_IMAGES", {
value: A
}), A
}, get SUPPORT_RESPONSE_TYPE() {
var A = "string" == typeof (new XMLHttpRequest).responseType;
return Object.defineProperty(a, "SUPPORT_RESPONSE_TYPE", {
value: A
}), A
}, get SUPPORT_CORS_XHR() {
var A = "withCredentials" in new XMLHttpRequest;
return Object.defineProperty(a, "SUPPORT_CORS_XHR", {
value: A
}), A
}
}, M = (r.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 || this.info.apply(this, A)
}, r.prototype.getTime = function () {
return Date.now() - this.start
}, r.create = function (A) {
r.instances[A.id] = new r(A)
}, r.destroy = function (A) {
delete r.instances[A]
}, r.getInstance = function (A) {
var e = r.instances[A];
if (void 0 === e) throw new Error("No logger instance found with id " + A);
return e
}, r.prototype.info = function () {
for (var A = [], e = 0; e < arguments.length; e++) A[e] = arguments[e];
this.enabled && "undefined" != typeof window && window.console && console.info
}, r.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 || this.info.apply(this, A)
}, r.instances = {}, r);
function r(A) {
var e = A.id,
A = A.enabled;
this.id = e, this.enabled = A, this.start = Date.now()
}
n.create = function (A, e) {
return n._caches[A] = new ze(A, e)
}, n.destroy = function (A) {
delete n._caches[A]
}, n.open = function (A) {
var e = n._caches[A];
if (void 0 !== e) return e;
throw new Error('Cache with key "' + A + '" not found')
}, n.getOrigin = function (A) {
var e = n._link;
return e ? (e.href = A, e.href = e.href, e.protocol + e.hostname + e.port) : "about:blank"
}, n.isSameOrigin = function (A) {
return n.getOrigin(A) === n._origin
}, n.setContext = function (A) {
n._link = A.document.createElement("a"), n._origin = n.getOrigin(A.location.href)
}, n.getInstance = function () {
var A = n._current;
if (null === A) throw new Error("No cache instance attached");
return A
}, n.attachInstance = function (A) {
n._current = A
}, n.detachInstance = function () {
n._current = null
}, n._caches = {}, n._origin = "about:blank", n._current = null;
var Xe = n;
function n() { }
Je.prototype.addImage = function (A) {
var e = Promise.resolve();
return this.has(A) || (At(A) || qe(A)) && (this._cache[A] = this.loadImage(A)), e
}, Je.prototype.match = function (A) {
return this._cache[A]
}, Je.prototype.loadImage = function (s) {
return o(this, void 0, void 0, function () {
var e, r, t, n, B = this;
return R(this, function (A) {
switch (A.label) {
case 0:
return e = Xe.isSameOrigin(s), r = !_e(s) && !0 === this._options.useCORS && a.SUPPORT_CORS_IMAGES && !e, t = !_e(s) && !e && "string" == typeof this._options.proxy && a.SUPPORT_CORS_XHR && !r, e || !1 !== this._options.allowTaint || _e(s) || t || r ? (n = s, t ? [4, this.proxy(n)] : [3, 2]) : [2];
case 1:
n = A.sent(), A.label = 2;
case 2:
return M.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, ($e(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()]
}
})
})
}, Je.prototype.has = function (A) {
return void 0 !== this._cache[A]
}, Je.prototype.keys = function () {
return Promise.resolve(Object.keys(this._cache))
}, Je.prototype.proxy = function (B) {
var s = this,
i = this._options.proxy;
if (!i) throw new Error("No proxy defined");
var o = B.substring(0, 256);
return new Promise(function (e, t) {
var A, r = a.SUPPORT_RESPONSE_TYPE ? "blob" : "text",
n = new XMLHttpRequest;
n.onload = function () {
var A;
200 === n.status ? "text" == r ? e(n.response) : ((A = new FileReader).addEventListener("load", function () {
return e(A.result)
}, !1), A.addEventListener("error", function (A) {
return t(A)
}, !1), A.readAsDataURL(n.response)) : t("Failed to proxy resource " + o + " with status code " + n.status)
}, n.onerror = t, n.open("GET", i + "?url=" + encodeURIComponent(B) + "&responseType=" + r), "text" != r && n instanceof XMLHttpRequest && (n.responseType = r), s._options.imageTimeout && (A = s._options.imageTimeout, n.timeout = A, n.ontimeout = function () {
return t("Timed out (" + A + "ms) proxying " + o)
}), n.send()
})
};
var ze = Je;
function Je(A, e) {
this.id = A, this._options = e, this._cache = {}
}
function xe(A) {
var r = y.CIRCLE,
n = O.FARTHEST_CORNER,
B = [],
s = [];
return ge(A).forEach(function (A, e) {
var t = !0;
0 === e ? t = A.reduce(function (A, e) {
if (w(e)) switch (e.value) {
case "center":
return s.push(He), !1;
case "top":
case "left":
return s.push(C), !1;
case "right":
case "bottom":
return s.push(Ie), !1
} else if (U(e) || Ce(e)) return s.push(e), !1;
return A
}, t) : 1 === e && (t = A.reduce(function (A, e) {
if (w(e)) switch (e.value) {
case "circle":
return r = y.CIRCLE, !1;
case st:
return r = y.ELLIPSE, !1;
case it:
case tt:
return n = O.CLOSEST_SIDE, !1;
case rt:
return n = O.FARTHEST_SIDE, !1;
case nt:
return n = O.CLOSEST_CORNER, !1;
case "cover":
case Bt:
return n = O.FARTHEST_CORNER, !1
} else if (Ce(e) || U(e)) return (n = Array.isArray(n) ? n : []).push(e), !1;
return A
}, t)), t && (e = De(A), B.push(e))
}), {
size: n,
shape: r,
stops: B,
position: s,
type: L.RADIAL_GRADIENT
}
}
function Ge(A) {
if (A.type === l.URL_TOKEN) return e = {
url: A.value,
type: L.URL
}, Xe.getInstance().addImage(A.value), e;
if (A.type !== l.FUNCTION) throw new Error("Unsupported image type");
var e = ot[A.name];
if (void 0 === e) throw new Error('Attempting to parse an unsupported image function "' + A.name + '"');
return e(A.values)
}
var L, y, O, ke, We, Ye = /^data:image\/svg\+xml/i,
Ze = /^data:image\/.*;base64,/i,
je = /^data:image\/.*/i,
qe = function (A) {
return a.SUPPORT_SVG_DRAWING || !et(A)
}, _e = function (A) {
return je.test(A)
}, $e = function (A) {
return Ze.test(A)
}, At = function (A) {
return "blob" === A.substr(0, 4)
}, et = function (A) {
return "svg" === A.substr(-3).toLowerCase() || Ye.test(A)
}, tt = "closest-side",
rt = "farthest-side",
nt = "closest-corner",
Bt = "farthest-corner",
st = "ellipse",
it = "contain",
ot = ((c = L = L || {})[c.URL = 0] = "URL", c[c.LINEAR_GRADIENT = 1] = "LINEAR_GRADIENT", c[c.RADIAL_GRADIENT = 2] = "RADIAL_GRADIENT", y = {
CIRCLE: 0,
0: "CIRCLE",
ELLIPSE: 1,
1: "ELLIPSE"
}, O = {
CLOSEST_SIDE: 0,
0: "CLOSEST_SIDE",
FARTHEST_SIDE: 1,
1: "FARTHEST_SIDE",
CLOSEST_CORNER: 2,
2: "CLOSEST_CORNER",
FARTHEST_CORNER: 3,
3: "FARTHEST_CORNER"
}, {
"linear-gradient": function (A) {
var t = s(180),
r = [];
return ge(A).forEach(function (A, e) {
if (0 === e) {
e = A[0];
if (e.type === l.IDENT_TOKEN && "to" === e.value) return void (t = Ue(A));
if (we(e)) return void (t = fe(e))
}
e = De(A);
r.push(e)
}), {
angle: t,
stops: r,
type: L.LINEAR_GRADIENT
}
},
"-moz-linear-gradient": Le,
"-ms-linear-gradient": Le,
"-o-linear-gradient": Le,
"-webkit-linear-gradient": Le,
"radial-gradient": function (A) {
var n = y.CIRCLE,
B = O.FARTHEST_CORNER,
s = [],
i = [];
return ge(A).forEach(function (A, e) {
var t, r = !0;
0 === e && (t = !1, r = A.reduce(function (A, e) {
if (t)
if (w(e)) switch (e.value) {
case "center":
return i.push(He), A;
case "top":
case "left":
return i.push(C), A;
case "right":
case "bottom":
return i.push(Ie), A
} else (U(e) || Ce(e)) && i.push(e);
else if (w(e)) switch (e.value) {
case "circle":
return n = y.CIRCLE, !1;
case st:
return n = y.ELLIPSE, !1;
case "at":
return !(t = !0);
case tt:
return B = O.CLOSEST_SIDE, !1;
case "cover":
case rt:
return B = O.FARTHEST_SIDE, !1;
case it:
case nt:
return B = O.CLOSEST_CORNER, !1;
case Bt:
return B = O.FARTHEST_CORNER, !1
} else if (Ce(e) || U(e)) return (B = Array.isArray(B) ? B : []).push(e), !1;
return A
}, r)), r && (e = De(A), s.push(e))
}), {
size: B,
shape: n,
stops: s,
position: i,
type: L.RADIAL_GRADIENT
}
},
"-moz-radial-gradient": xe,
"-ms-radial-gradient": xe,
"-o-radial-gradient": xe,
"-webkit-radial-gradient": xe,
"-webkit-gradient": function (A) {
var e = s(180),
r = [],
n = L.LINEAR_GRADIENT,
t = y.CIRCLE,
B = O.FARTHEST_CORNER;
return ge(A).forEach(function (A, e) {
var t, A = A[0];
if (0 === e) {
if (w(A) && "linear" === A.value) return void (n = L.LINEAR_GRADIENT);
if (w(A) && "radial" === A.value) return void (n = L.RADIAL_GRADIENT)
}
A.type === l.FUNCTION && ("from" === A.name ? (t = pe(A.values[0]), r.push({
stop: C,
color: t
})) : "to" === A.name ? (t = pe(A.values[0]), r.push({
stop: Ie,
color: t
})) : "color-stop" === A.name && 2 === (e = A.values.filter(Qe)).length && (t = pe(e[1]), ie(A = e[0]) && r.push({
stop: {
type: l.PERCENTAGE_TOKEN,
number: 100 * A.number,
flags: A.flags
},
color: t
})))
}), n === L.LINEAR_GRADIENT ? {
angle: (e + s(180)) % s(360),
stops: r,
type: n
} : {
size: B,
shape: t,
stops: r,
position: [],
type: n
}
}
}),
at = {
name: "background-image",
initialValue: "none",
type: i.LIST,
prefix: !1,
parse: function (A) {
if (0 === A.length) return [];
var e = A[0];
return e.type === l.IDENT_TOKEN && "none" === e.value ? [] : A.filter(function (A) {
return Qe(A) && (A.type !== l.FUNCTION || ot[A.name])
}).map(Ge)
}
}, ct = {
name: "background-origin",
initialValue: "border-box",
prefix: !1,
type: i.LIST,
parse: function (A) {
return A.map(function (A) {
if (w(A)) switch (A.value) {
case "padding-box":
return 1;
case "content-box":
return 2
}
return 0
})
}
}, Qt = {
name: "background-position",
initialValue: "0% 0%",
type: i.LIST,
prefix: !1,
parse: function (A) {
return ge(A).map(function (A) {
return A.filter(U)
}).map(ue)
}
}, B = ke = {
REPEAT: 0,
0: "REPEAT",
NO_REPEAT: 1,
1: "NO_REPEAT",
REPEAT_X: 2,
2: "REPEAT_X"
}, gt = {
name: "background-repeat",
initialValue: "repeat",
prefix: !(B[B.REPEAT_Y = 3] = "REPEAT_Y"),
type: i.LIST,
parse: function (A) {
return ge(A).map(function (A) {
return A.filter(w).map(function (A) {
return A.value
}).join(" ")
}).map(Ct)
}
}, Ct = function (A) {
switch (A) {
case "no-repeat":
return ke.NO_REPEAT;
case "repeat-x":
case "repeat no-repeat":
return ke.REPEAT_X;
case "repeat-y":
case "no-repeat repeat":
return ke.REPEAT_Y;
default:
return ke.REPEAT
}
};
function ut(A) {
return {
name: "border-" + A + "-color",
initialValue: "transparent",
prefix: !1,
type: i.TYPE_VALUE,
format: "color"
}
}
function lt(A) {
return {
name: "border-radius-" + A,
initialValue: "0 0",
prefix: !1,
type: i.LIST,
parse: function (A) {
return ue(A.filter(U))
}
}
} (u = We = We || {}).AUTO = "auto", u.CONTAIN = "contain";
var wt, Ut = {
name: "background-size",
initialValue: "0",
prefix: !(u.COVER = "cover"),
type: i.LIST,
parse: function (A) {
return ge(A).map(function (A) {
return A.filter(Et)
})
}
}, Et = function (A) {
return w(A) || U(A)
}, dt = ut("top"),
ht = ut("right"),
ft = ut("bottom"),
Ft = ut("left"),
Ht = lt("top-left"),
It = lt("top-right"),
pt = lt("bottom-right"),
Nt = lt("bottom-left");
function mt(A) {
return {
name: "border-" + A + "-style",
initialValue: "solid",
prefix: !1,
type: i.IDENT_VALUE,
parse: function (A) {
return "none" === A ? wt.NONE : wt.SOLID
}
}
}
function Kt(A) {
return {
name: "border-" + A + "-width",
initialValue: "0",
type: i.VALUE,
prefix: !1,
parse: function (A) {
return se(A) ? A.number : 0
}
}
}
wt = {
NONE: 0,
0: "NONE",
SOLID: 1,
1: "SOLID"
};
var vt, Rt, bt, E, Dt = mt("top"),
Tt = mt("right"),
Mt = mt("bottom"),
Lt = mt("left"),
yt = Kt("top"),
Ot = Kt("right"),
St = Kt("bottom"),
Pt = Kt("left"),
Vt = {
name: "color",
initialValue: "transparent",
prefix: !1,
type: i.TYPE_VALUE,
format: "color"
}, Xt = {
name: "display",
initialValue: "inline-block",
prefix: !1,
type: i.LIST,
parse: function (A) {
return A.filter(w).reduce(function (A, e) {
return A | zt(e.value)
}, 0)
}
}, zt = 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
}, W = vt = {
NONE: 0,
0: "NONE",
LEFT: 1,
1: "LEFT",
RIGHT: 2,
2: "RIGHT",
INLINE_START: 3,
3: "INLINE_START"
}, Jt = {
name: "float",
initialValue: "none",
prefix: !(W[W.INLINE_END = 4] = "INLINE_END"),
type: i.IDENT_VALUE,
parse: function (A) {
switch (A) {
case "left":
return vt.LEFT;
case "right":
return vt.RIGHT;
case "inline-start":
return vt.INLINE_START;
case "inline-end":
return vt.INLINE_END
}
return vt.NONE
}
}, xt = {
name: "letter-spacing",
initialValue: "0",
prefix: !1,
type: i.VALUE,
parse: function (A) {
return !(A.type === l.IDENT_TOKEN && "normal" === A.value || A.type !== l.NUMBER_TOKEN && A.type !== l.DIMENSION_TOKEN) ? A.number : 0
}
}, Gt = {
name: "line-break",
initialValue: (Rt = {}).NORMAL = "normal",
prefix: !(Rt.STRICT = "strict"),
type: i.IDENT_VALUE,
parse: function (A) {
return "strict" !== A ? Rt.NORMAL : Rt.STRICT
}
}, kt = {
name: "line-height",
initialValue: "normal",
prefix: !1,
type: i.TOKEN_VALUE
}, Wt = {
name: "list-style-image",
initialValue: "none",
type: i.VALUE,
prefix: !1,
parse: function (A) {
return A.type === l.IDENT_TOKEN && "none" === A.value ? null : Ge(A)
}
}, c = bt = {
INSIDE: 0,
0: "INSIDE"
}, Yt = {
name: "list-style-position",
initialValue: "outside",
prefix: !(c[c.OUTSIDE = 1] = "OUTSIDE"),
type: i.IDENT_VALUE,
parse: function (A) {
return "inside" !== A ? bt.OUTSIDE : bt.INSIDE
}
};
function Zt(A) {
return {
name: "margin-" + A,
initialValue: "0",
prefix: !1,
type: i.TOKEN_VALUE
}
} (B = E = E || {})[B.NONE = -1] = "NONE", B[B.DISC = 0] = "DISC", B[B.CIRCLE = 1] = "CIRCLE", B[B.SQUARE = 2] = "SQUARE", B[B.DECIMAL = 3] = "DECIMAL", B[B.CJK_DECIMAL = 4] = "CJK_DECIMAL", B[B.DECIMAL_LEADING_ZERO = 5] = "DECIMAL_LEADING_ZERO", B[B.LOWER_ROMAN = 6] = "LOWER_ROMAN", B[B.UPPER_ROMAN = 7] = "UPPER_ROMAN", B[B.LOWER_GREEK = 8] = "LOWER_GREEK", B[B.LOWER_ALPHA = 9] = "LOWER_ALPHA", B[B.UPPER_ALPHA = 10] = "UPPER_ALPHA", B[B.ARABIC_INDIC = 11] = "ARABIC_INDIC", B[B.ARMENIAN = 12] = "ARMENIAN", B[B.BENGALI = 13] = "BENGALI", B[B.CAMBODIAN = 14] = "CAMBODIAN", B[B.CJK_EARTHLY_BRANCH = 15] = "CJK_EARTHLY_BRANCH", B[B.CJK_HEAVENLY_STEM = 16] = "CJK_HEAVENLY_STEM", B[B.CJK_IDEOGRAPHIC = 17] = "CJK_IDEOGRAPHIC", B[B.DEVANAGARI = 18] = "DEVANAGARI", B[B.ETHIOPIC_NUMERIC = 19] = "ETHIOPIC_NUMERIC", B[B.GEORGIAN = 20] = "GEORGIAN", B[B.GUJARATI = 21] = "GUJARATI", B[B.GURMUKHI = 22] = "GURMUKHI", B[B.HEBREW = 22] = "HEBREW", B[B.HIRAGANA = 23] = "HIRAGANA", B[B.HIRAGANA_IROHA = 24] = "HIRAGANA_IROHA", B[B.JAPANESE_FORMAL = 25] = "JAPANESE_FORMAL", B[B.JAPANESE_INFORMAL = 26] = "JAPANESE_INFORMAL", B[B.KANNADA = 27] = "KANNADA", B[B.KATAKANA = 28] = "KATAKANA", B[B.KATAKANA_IROHA = 29] = "KATAKANA_IROHA", B[B.KHMER = 30] = "KHMER", B[B.KOREAN_HANGUL_FORMAL = 31] = "KOREAN_HANGUL_FORMAL", B[B.KOREAN_HANJA_FORMAL = 32] = "KOREAN_HANJA_FORMAL", B[B.KOREAN_HANJA_INFORMAL = 33] = "KOREAN_HANJA_INFORMAL", B[B.LAO = 34] = "LAO", B[B.LOWER_ARMENIAN = 35] = "LOWER_ARMENIAN", B[B.MALAYALAM = 36] = "MALAYALAM", B[B.MONGOLIAN = 37] = "MONGOLIAN", B[B.MYANMAR = 38] = "MYANMAR", B[B.ORIYA = 39] = "ORIYA", B[B.PERSIAN = 40] = "PERSIAN", B[B.SIMP_CHINESE_FORMAL = 41] = "SIMP_CHINESE_FORMAL", B[B.SIMP_CHINESE_INFORMAL = 42] = "SIMP_CHINESE_INFORMAL", B[B.TAMIL = 43] = "TAMIL", B[B.TELUGU = 44] = "TELUGU", B[B.THAI = 45] = "THAI", B[B.TIBETAN = 46] = "TIBETAN", B[B.TRAD_CHINESE_FORMAL = 47] = "TRAD_CHINESE_FORMAL", B[B.TRAD_CHINESE_INFORMAL = 48] = "TRAD_CHINESE_INFORMAL", B[B.UPPER_ARMENIAN = 49] = "UPPER_ARMENIAN", B[B.DISCLOSURE_OPEN = 50] = "DISCLOSURE_OPEN";
var jt, qt = {
name: "list-style-type",
initialValue: "none",
prefix: !(B[B.DISCLOSURE_CLOSED = 51] = "DISCLOSURE_CLOSED"),
type: i.IDENT_VALUE,
parse: function (A) {
switch (A) {
case "disc":
return E.DISC;
case "circle":
return E.CIRCLE;
case "square":
return E.SQUARE;
case "decimal":
return E.DECIMAL;
case "cjk-decimal":
return E.CJK_DECIMAL;
case "decimal-leading-zero":
return E.DECIMAL_LEADING_ZERO;
case "lower-roman":
return E.LOWER_ROMAN;
case "upper-roman":
return E.UPPER_ROMAN;
case "lower-greek":
return E.LOWER_GREEK;
case "lower-alpha":
return E.LOWER_ALPHA;
case "upper-alpha":
return E.UPPER_ALPHA;
case "arabic-indic":
return E.ARABIC_INDIC;
case "armenian":
return E.ARMENIAN;
case "bengali":
return E.BENGALI;
case "cambodian":
return E.CAMBODIAN;
case "cjk-earthly-branch":
return E.CJK_EARTHLY_BRANCH;
case "cjk-heavenly-stem":
return E.CJK_HEAVENLY_STEM;
case "cjk-ideographic":
return E.CJK_IDEOGRAPHIC;
case "devanagari":
return E.DEVANAGARI;
case "ethiopic-numeric":
return E.ETHIOPIC_NUMERIC;
case "georgian":
return E.GEORGIAN;
case "gujarati":
return E.GUJARATI;
case "gurmukhi":
return E.GURMUKHI;
case "hebrew":
return E.HEBREW;
case "hiragana":
return E.HIRAGANA;
case "hiragana-iroha":
return E.HIRAGANA_IROHA;
case "japanese-formal":
return E.JAPANESE_FORMAL;
case "japanese-informal":
return E.JAPANESE_INFORMAL;
case "kannada":
return E.KANNADA;
case "katakana":
return E.KATAKANA;
case "katakana-iroha":
return E.KATAKANA_IROHA;
case "khmer":
return E.KHMER;
case "korean-hangul-formal":
return E.KOREAN_HANGUL_FORMAL;
case "korean-hanja-formal":
return E.KOREAN_HANJA_FORMAL;
case "korean-hanja-informal":
return E.KOREAN_HANJA_INFORMAL;
case "lao":
return E.LAO;
case "lower-armenian":
return E.LOWER_ARMENIAN;
case "malayalam":
return E.MALAYALAM;
case "mongolian":
return E.MONGOLIAN;
case "myanmar":
return E.MYANMAR;
case "oriya":
return E.ORIYA;
case "persian":
return E.PERSIAN;
case "simp-chinese-formal":
return E.SIMP_CHINESE_FORMAL;
case "simp-chinese-informal":
return E.SIMP_CHINESE_INFORMAL;
case "tamil":
return E.TAMIL;
case "telugu":
return E.TELUGU;
case "thai":
return E.THAI;
case "tibetan":
return E.TIBETAN;
case "trad-chinese-formal":
return E.TRAD_CHINESE_FORMAL;
case "trad-chinese-informal":
return E.TRAD_CHINESE_INFORMAL;
case "upper-armenian":
return E.UPPER_ARMENIAN;
case "disclosure-open":
return E.DISCLOSURE_OPEN;
case "disclosure-closed":
return E.DISCLOSURE_CLOSED;
default:
return E.NONE
}
}
}, _t = Zt("top"),
$t = Zt("right"),
Ar = Zt("bottom"),
er = Zt("left");
function tr(A) {
return {
name: "padding-" + A,
initialValue: "0",
prefix: !1,
type: i.TYPE_VALUE,
format: "length-percentage"
}
}
var rr, nr, Br, sr, ir, or, ar, cr = {
name: "overflow",
initialValue: "visible",
prefix: !((u = jt = {
VISIBLE: 0,
0: "VISIBLE",
HIDDEN: 1,
1: "HIDDEN",
SCROLL: 2,
2: "SCROLL"
})[u.AUTO = 3] = "AUTO"),
type: i.LIST,
parse: function (A) {
return A.filter(w).map(function (A) {
switch (A.value) {
case "hidden":
return jt.HIDDEN;
case "scroll":
return jt.SCROLL;
case "auto":
return jt.AUTO;
default:
return jt.VISIBLE
}
})
}
}, Qr = {
name: "overflow-wrap",
initialValue: (rr = {}).NORMAL = "normal",
prefix: !(rr.BREAK_WORD = "break-word"),
type: i.IDENT_VALUE,
parse: function (A) {
return "break-word" !== A ? rr.NORMAL : rr.BREAK_WORD
}
}, gr = tr("top"),
Cr = tr("right"),
ur = tr("bottom"),
lr = tr("left"),
W = nr = {
LEFT: 0,
0: "LEFT",
CENTER: 1,
1: "CENTER"
}, wr = {
name: "text-align",
initialValue: "left",
prefix: !(W[W.RIGHT = 2] = "RIGHT"),
type: i.IDENT_VALUE,
parse: function (A) {
switch (A) {
case "right":
return nr.RIGHT;
case "center":
case "justify":
return nr.CENTER;
default:
return nr.LEFT
}
}
}, c = Br = {
STATIC: 0,
0: "STATIC",
RELATIVE: 1,
1: "RELATIVE",
ABSOLUTE: 2,
2: "ABSOLUTE",
FIXED: 3,
3: "FIXED"
}, Ur = {
name: "position",
initialValue: "static",
prefix: !(c[c.STICKY = 4] = "STICKY"),
type: i.IDENT_VALUE,
parse: function (A) {
switch (A) {
case "relative":
return Br.RELATIVE;
case "absolute":
return Br.ABSOLUTE;
case "fixed":
return Br.FIXED;
case "sticky":
return Br.STICKY
}
return Br.STATIC
}
}, Er = {
name: "text-shadow",
initialValue: "none",
type: i.LIST,
prefix: !1,
parse: function (A) {
return 1 === A.length && ae(A[0], "none") ? [] : ge(A).map(function (A) {
for (var e = {
color: be.TRANSPARENT,
offsetX: C,
offsetY: C,
blur: C
}, t = 0, r = 0; r < A.length; r++) {
var n = A[r];
Ce(n) ? (0 === t ? e.offsetX = n : 1 === t ? e.offsetY = n : e.blur = n, t++) : e.color = pe(n)
}
return e
})
}
}, B = sr = {
NONE: 0,
0: "NONE",
LOWERCASE: 1,
1: "LOWERCASE",
UPPERCASE: 2,
2: "UPPERCASE"
}, dr = {
name: "text-transform",
initialValue: "none",
prefix: !(B[B.CAPITALIZE = 3] = "CAPITALIZE"),
type: i.IDENT_VALUE,
parse: function (A) {
switch (A) {
case "uppercase":
return sr.UPPERCASE;
case "lowercase":
return sr.LOWERCASE;
case "capitalize":
return sr.CAPITALIZE
}
return sr.NONE
}
}, hr = {
name: "transform",
initialValue: "none",
prefix: !0,
type: i.VALUE,
parse: function (A) {
if (A.type === l.IDENT_TOKEN && "none" === A.value) return null;
if (A.type !== l.FUNCTION) return null;
var e = fr[A.name];
if (void 0 === e) throw new Error('Attempting to parse an unsupported transform function "' + A.name + '"');
return e(A.values)
}
}, fr = {
matrix: function (A) {
A = A.filter(function (A) {
return A.type === l.NUMBER_TOKEN
}).map(function (A) {
return A.number
});
return 6 === A.length ? A : null
},
matrix3d: function (A) {
var A = A.filter(function (A) {
return A.type === l.NUMBER_TOKEN
}).map(function (A) {
return A.number
}),
e = A[0],
t = A[1],
r = (A[2], A[3], A[4]),
n = A[5],
B = (A[6], A[7], A[8], A[9], A[10], A[11], A[12]),
s = A[13];
return A[14], A[15], 16 === A.length ? [e, t, r, n, B, s] : null
}
}, u = {
type: l.PERCENTAGE_TOKEN,
number: 50,
flags: 4
}, Fr = [u, u],
Hr = {
name: "transform-origin",
initialValue: "50% 50%",
prefix: !0,
type: i.LIST,
parse: function (A) {
A = A.filter(U);
return 2 !== A.length ? Fr : [A[0], A[1]]
}
}, W = ir = {
VISIBLE: 0,
0: "VISIBLE",
HIDDEN: 1,
1: "HIDDEN"
}, Ir = {
name: "visible",
initialValue: "none",
prefix: !(W[W.COLLAPSE = 2] = "COLLAPSE"),
type: i.IDENT_VALUE,
parse: function (A) {
switch (A) {
case "hidden":
return ir.HIDDEN;
case "collapse":
return ir.COLLAPSE;
default:
return ir.VISIBLE
}
}
}, c = or = {
NORMAL: "normal",
BREAK_ALL: "break-all"
}, pr = {
name: "word-break",
initialValue: "normal",
prefix: !(c.KEEP_ALL = "keep-all"),
type: i.IDENT_VALUE,
parse: function (A) {
switch (A) {
case "break-all":
return or.BREAK_ALL;
case "keep-all":
return or.KEEP_ALL;
default:
return or.NORMAL
}
}
}, Nr = {
name: "z-index",
initialValue: "auto",
prefix: !1,
type: i.VALUE,
parse: function (A) {
if (A.type === l.IDENT_TOKEN) return {
auto: !0,
order: 0
};
if (ie(A)) return {
auto: !1,
order: A.number
};
throw new Error("Invalid z-index number parsed")
}
}, mr = {
name: "opacity",
initialValue: "1",
type: i.VALUE,
prefix: !1,
parse: function (A) {
return ie(A) ? A.number : 1
}
}, Kr = {
name: "text-decoration-color",
initialValue: "transparent",
prefix: !1,
type: i.TYPE_VALUE,
format: "color"
}, vr = {
name: "text-decoration-line",
initialValue: "none",
prefix: !1,
type: i.LIST,
parse: function (A) {
return A.filter(w).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
})
}
}, Rr = {
name: "font-family",
initialValue: "",
prefix: !1,
type: i.LIST,
parse: function (A) {
var e = [],
t = [];
return A.forEach(function (A) {
switch (A.type) {
case l.IDENT_TOKEN:
case l.STRING_TOKEN:
e.push(A.value);
break;
case l.NUMBER_TOKEN:
e.push(A.number.toString());
break;
case l.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 + "'"
})
}
}, br = {
name: "font-size",
initialValue: "0",
prefix: !1,
type: i.TYPE_VALUE,
format: "length"
}, Dr = {
name: "font-weight",
initialValue: "normal",
type: i.VALUE,
prefix: !1,
parse: function (A) {
return ie(A) ? A.number : !w(A) || "bold" !== A.value ? 400 : 700
}
}, Tr = {
name: "font-variant",
initialValue: "none",
type: i.LIST,
prefix: !1,
parse: function (A) {
return A.filter(w).map(function (A) {
return A.value
})
}
};
function f(A, e) {
return 0 != (A & e)
}
function Mr(A, e, t) {
if (!A) return "";
e = A[Math.min(e, A.length - 1)];
return e ? t ? e.open : e.close : ""
}
var Lr, yr = {
name: "font-style",
initialValue: "normal",
prefix: !((Lr = ar = {
NORMAL: "normal",
ITALIC: "italic"
}).OBLIQUE = "oblique"),
type: i.IDENT_VALUE,
parse: function (A) {
switch (A) {
case "oblique":
return ar.OBLIQUE;
case "italic":
return ar.ITALIC;
default:
return ar.NORMAL
}
}
}, Or = {
name: "content",
initialValue: "none",
type: i.LIST,
prefix: !1,
parse: function (A) {
if (0 === A.length) return [];
var e = A[0];
return e.type === l.IDENT_TOKEN && "none" === e.value ? [] : A
}
}, Sr = {
name: "counter-increment",
initialValue: "none",
prefix: !0,
type: i.LIST,
parse: function (A) {
if (0 === A.length) return null;
var e = A[0];
if (e.type === l.IDENT_TOKEN && "none" === e.value) return null;
for (var t = [], r = A.filter(ce), n = 0; n < r.length; n++) {
var B = r[n],
s = r[n + 1];
B.type === l.IDENT_TOKEN && (s = s && ie(s) ? s.number : 1, t.push({
counter: B.value,
increment: s
}))
}
return t
}
}, Pr = {
name: "counter-reset",
initialValue: "none",
prefix: !0,
type: i.LIST,
parse: function (A) {
if (0 === A.length) return [];
for (var e = [], t = A.filter(ce), r = 0; r < t.length; r++) {
var n = t[r],
B = t[r + 1];
w(n) && "none" !== n.value && (B = B && ie(B) ? B.number : 0, e.push({
counter: n.value,
reset: B
}))
}
return e
}
}, Vr = {
name: "quotes",
initialValue: "none",
prefix: !0,
type: i.LIST,
parse: function (A) {
if (0 === A.length) return null;
var e = A[0];
if (e.type === l.IDENT_TOKEN && "none" === e.value) return null;
var t = [],
r = A.filter(oe);
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
}
}, Xr = {
name: "box-shadow",
initialValue: "none",
type: i.LIST,
prefix: !1,
parse: function (A) {
return 1 === A.length && ae(A[0], "none") ? [] : ge(A).map(function (A) {
for (var e = {
color: 255,
offsetX: C,
offsetY: C,
blur: C,
spread: C,
inset: !1
}, t = 0, r = 0; r < A.length; r++) {
var n = A[r];
ae(n, "inset") ? e.inset = !0 : Ce(n) ? (0 === t ? e.offsetX = n : 1 === t ? e.offsetY = n : 2 === t ? e.blur = n : e.spread = n, t++) : e.color = pe(n)
}
return e
})
}
}, zr = (Jr.prototype.isVisible = function () {
return 0 < this.display && 0 < this.opacity && this.visibility === ir.VISIBLE
}, Jr.prototype.isTransparent = function () {
return Ee(this.backgroundColor)
}, Jr.prototype.isTransformed = function () {
return null !== this.transform
}, Jr.prototype.isPositioned = function () {
return this.position !== Br.STATIC
}, Jr.prototype.isPositionedWithZIndex = function () {
return this.isPositioned() && !this.zIndex.auto
}, Jr.prototype.isFloating = function () {
return this.float !== vt.NONE
}, Jr.prototype.isInlineLevel = function () {
return f(this.display, 4) || f(this.display, 33554432) || f(this.display, 268435456) || f(this.display, 536870912) || f(this.display, 67108864) || f(this.display, 134217728)
}, Jr);
function Jr(A) {
this.backgroundClip = F(Pe, A.backgroundClip), this.backgroundColor = F(Ve, A.backgroundColor), this.backgroundImage = F(at, A.backgroundImage), this.backgroundOrigin = F(ct, A.backgroundOrigin), this.backgroundPosition = F(Qt, A.backgroundPosition), this.backgroundRepeat = F(gt, A.backgroundRepeat), this.backgroundSize = F(Ut, A.backgroundSize), this.borderTopColor = F(dt, A.borderTopColor), this.borderRightColor = F(ht, A.borderRightColor), this.borderBottomColor = F(ft, A.borderBottomColor), this.borderLeftColor = F(Ft, A.borderLeftColor), this.borderTopLeftRadius = F(Ht, A.borderTopLeftRadius), this.borderTopRightRadius = F(It, A.borderTopRightRadius), this.borderBottomRightRadius = F(pt, A.borderBottomRightRadius), this.borderBottomLeftRadius = F(Nt, A.borderBottomLeftRadius), this.borderTopStyle = F(Dt, A.borderTopStyle), this.borderRightStyle = F(Tt, A.borderRightStyle), this.borderBottomStyle = F(Mt, A.borderBottomStyle), this.borderLeftStyle = F(Lt, A.borderLeftStyle), this.borderTopWidth = F(yt, A.borderTopWidth), this.borderRightWidth = F(Ot, A.borderRightWidth), this.borderBottomWidth = F(St, A.borderBottomWidth), this.borderLeftWidth = F(Pt, A.borderLeftWidth), this.boxShadow = F(Xr, A.boxShadow), this.color = F(Vt, A.color), this.display = F(Xt, A.display), this.float = F(Jt, A.cssFloat), this.fontFamily = F(Rr, A.fontFamily), this.fontSize = F(br, A.fontSize), this.fontStyle = F(yr, A.fontStyle), this.fontVariant = F(Tr, A.fontVariant), this.fontWeight = F(Dr, A.fontWeight), this.letterSpacing = F(xt, A.letterSpacing), this.lineBreak = F(Gt, A.lineBreak), this.lineHeight = F(kt, A.lineHeight), this.listStyleImage = F(Wt, A.listStyleImage), this.listStylePosition = F(Yt, A.listStylePosition), this.listStyleType = F(qt, A.listStyleType), this.marginTop = F(_t, A.marginTop), this.marginRight = F($t, A.marginRight), this.marginBottom = F(Ar, A.marginBottom), this.marginLeft = F(er, A.marginLeft), this.opacity = F(mr, A.opacity);
var e = F(cr, A.overflow);
this.overflowX = e[0], this.overflowY = e[1 < e.length ? 1 : 0], this.overflowWrap = F(Qr, A.overflowWrap), this.paddingTop = F(gr, A.paddingTop), this.paddingRight = F(Cr, A.paddingRight), this.paddingBottom = F(ur, A.paddingBottom), this.paddingLeft = F(lr, A.paddingLeft), this.position = F(Ur, A.position), this.textAlign = F(wr, A.textAlign), this.textDecorationColor = F(Kr, A.textDecorationColor || A.color), this.textDecorationLine = F(vr, A.textDecorationLine), this.textShadow = F(Er, A.textShadow), this.textTransform = F(dr, A.textTransform), this.transform = F(hr, A.transform), this.transformOrigin = F(Hr, A.transformOrigin), this.visibility = F(Ir, A.visibility), this.wordBreak = F(pr, A.wordBreak), this.zIndex = F(Nr, A.zIndex)
}
function xr(A) {
this.content = F(Or, A.content), this.quotes = F(Vr, A.quotes)
}
function Gr(A) {
this.counterIncrement = F(Sr, A.counterIncrement), this.counterReset = F(Pr, A.counterReset)
}
function kr(A, e) {
this.text = A, this.bounds = e
}
function Wr(A, e) {
e = {
lineBreak: e.lineBreak,
wordBreak: e.overflowWrap === rr.BREAK_WORD ? "break-word" : e.wordBreak
}, c = z(A), r = c, void 0 === (n = (e = (e = e) || {
lineBreak: "normal",
wordBreak: "normal"
}).lineBreak) && (n = "strict"), B = [], s = [], i = [], r.forEach(function (A, e) {
var t = hA.get(A);
if (50 < t ? (i.push(!0), t -= 50) : i.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 ? nA : lA) : t === dA || 29 === t ? B.push(cA) : 43 === t ? 131072 <= A && A <= 196605 || 196608 <= A && A <= 262141 ? B.push(lA) : B.push(cA) : void B.push(t);
if (0 === e) return s.push(e), B.push(cA);
A = B[e - 1];
return -1 === pA.indexOf(A) ? (s.push(s[e - 1]), B.push(A)) : (s.push(e), B.push(cA))
}), o = (A = [s, B, i])[1], a = A[2], A = [A[0], o = "break-all" !== e.wordBreak && "break-word" !== e.wordBreak ? o : o.map(function (A) {
return -1 !== [d, cA, dA].indexOf(A) ? lA : A
}), "keep-all" === e.wordBreak ? a.map(function (A, e) {
return A && 19968 <= r[e] && r[e] <= 40959
}) : void 0], Q = A[0], g = A[1], C = A[2], u = c.length, w = l = 0;
for (var t, r, n, B, s, i, o, a, c, Q, g, C, u, l, w, U = {
next: function () {
if (u <= w) return {
done: !0,
value: null
};
for (var A = h; w < u && (A = function (A, e, t, r, n) {
if (0 === t[r]) return h;
if (r -= 1, Array.isArray(n) && !0 === n[r]) return h;
var B, n = r - 1,
s = 1 + r,
i = e[r],
o = 0 <= n ? e[n] : 0,
a = e[s];
if (2 === i && 3 === a) return h;
if (-1 !== FA.indexOf(i)) return "!";
if (-1 !== FA.indexOf(a)) return h;
if (-1 !== HA.indexOf(a)) return h;
if (8 === j(r, e)) return "÷";
if (11 === hA.get(A[r]) && (a === lA || a === QA || a === gA)) return h;
if (7 === i || 7 === a) return h;
if (9 === i) return h;
if (-1 === [q, _, $].indexOf(i) && 9 === a) return h;
if (-1 !== [AA, eA, tA, sA, aA].indexOf(a)) return h;
if (j(r, e) === BA) return h;
if (Z(23, BA, r, e)) return h;
if (Z([AA, eA], nA, r, e)) return h;
if (Z(12, 12, r, e)) return h;
if (i === q) return "÷";
if (23 === i || 23 === a) return h;
if (16 === a || 16 === i) return "÷";
if (-1 !== [_, $, nA].indexOf(a) || 14 === i) return h;
if (36 === o && -1 !== mA.indexOf(i)) return h;
if (i === aA && 36 === a) return h;
if (a === rA && -1 !== fA.concat(rA, tA, d, lA, QA, gA).indexOf(i)) return h;
if (-1 !== fA.indexOf(a) && i === d || -1 !== fA.indexOf(i) && a === d) return h;
if (i === oA && -1 !== [lA, QA, gA].indexOf(a) || -1 !== [lA, QA, gA].indexOf(i) && a === iA) return h;
if (-1 !== fA.indexOf(i) && -1 !== IA.indexOf(a) || -1 !== IA.indexOf(i) && -1 !== fA.indexOf(a)) return h;
if (-1 !== [oA, iA].indexOf(i) && (a === d || -1 !== [BA, $].indexOf(a) && e[1 + s] === d) || -1 !== [BA, $].indexOf(i) && a === d || i === d && -1 !== [d, aA, sA].indexOf(a)) return h;
if (-1 !== [d, aA, sA, AA, eA].indexOf(a))
for (var c = r; 0 <= c;) {
if ((B = e[c]) === d) return h;
if (-1 === [aA, sA].indexOf(B)) break;
c--
}
if (-1 !== [oA, iA].indexOf(a))
for (c = -1 !== [AA, eA].indexOf(i) ? n : r; 0 <= c;) {
if ((B = e[c]) === d) return h;
if (-1 === [aA, sA].indexOf(B)) break;
c--
}
if (wA === i && -1 !== [wA, UA, CA, uA].indexOf(a) || -1 !== [UA, CA].indexOf(i) && -1 !== [UA, EA].indexOf(a) || -1 !== [EA, uA].indexOf(i) && a === EA) return h;
if (-1 !== NA.indexOf(i) && -1 !== [rA, iA].indexOf(a) || -1 !== NA.indexOf(a) && i === oA) return h;
if (-1 !== fA.indexOf(i) && -1 !== fA.indexOf(a)) return h;
if (i === sA && -1 !== fA.indexOf(a)) return h;
if (-1 !== fA.concat(d).indexOf(i) && a === BA || -1 !== fA.concat(d).indexOf(a) && i === eA) return h;
if (41 === i && 41 === a) {
for (var Q = t[r], g = 1; 0 < Q && 41 === e[--Q];) g++;
if (g % 2 != 0) return h
}
return i === QA && a === gA ? h : "÷"
}(c, g, Q, ++w, C)) === h;);
if (A === h && w !== u) return {
done: !0,
value: null
};
var e = new KA(c, A, l, w);
return l = w, {
value: e,
done: !1
}
}
}, E = []; !(t = U.next()).done;) t.value && E.push(t.value.slice());
return E
}
function Yr(A, e) {
switch (e) {
case sr.LOWERCASE:
return A.toLowerCase();
case sr.CAPITALIZE:
return A.replace(_r, $r);
case sr.UPPERCASE:
return A.toUpperCase();
default:
return A
}
}
var Zr, F = function (A, e) {
var t = new ne,
e = null != e ? e.toString() : A.initialValue,
r = (t.write(e), new Be(t.read()));
switch (A.type) {
case i.IDENT_VALUE:
var n = r.parseComponentValue();
return A.parse(w(n) ? n.value : A.initialValue);
case i.VALUE:
return A.parse(r.parseComponentValue());
case i.LIST:
return A.parse(r.parseComponentValues());
case i.TOKEN_VALUE:
return r.parseComponentValue();
case i.TYPE_VALUE:
switch (A.format) {
case "angle":
return fe(r.parseComponentValue());
case "color":
return pe(r.parseComponentValue());
case "image":
return Ge(r.parseComponentValue());
case "length":
var B = r.parseComponentValue();
return Ce(B) ? B : C;
case "length-percentage":
B = r.parseComponentValue();
return U(B) ? B : C
}
}
throw new Error("Attempting to parse unsupported css format type " + A.format)
}, jr = function (A) {
this.styles = new zr(window.getComputedStyle(A, null)), this.textNodes = [], this.elements = [], null !== this.styles.transform && Jn(A) && (A.style.transform = "none"), this.bounds = X(A), this.flags = 0
}, qr = function (A, e) {
var t, r, n, B, s;
this.text = Yr(A.data, e.textTransform), this.textBounds = (t = this.text, n = A, t = t, t = 0 !== (A = r = e).letterSpacing ? z(t).map(function (A) {
return Q(A)
}) : Wr(t, A), B = [], s = 0, t.forEach(function (A) {
var e;
r.textDecorationLine.length || 0 < A.trim().length ? a.SUPPORT_RANGE_BOUNDS ? B.push(new kr(A, function (A, e, t) {
var r = A.ownerDocument;
if (!r) throw new Error("Node has no owner document");
r = r.createRange();
return r.setStart(A, e), r.setEnd(A, e + t), P.fromClientRect(r.getBoundingClientRect())
}(n, s, A.length))) : (e = n.splitText(A.length), B.push(new kr(A, function (A) {
var e = A.ownerDocument;
if (e) {
var e = e.createElement("html2canvaswrapper"),
t = (e.appendChild(A.cloneNode(!0)), A.parentNode);
if (t) return t.replaceChild(e, A), A = X(e), e.firstChild && t.replaceChild(e.firstChild, e), A
}
return new P(0, 0, 0, 0)
}(n))), n = e) : a.SUPPORT_RANGE_BOUNDS || (n = n.splitText(A.length)), s += A.length
}), B)
}, _r = /(^|\s|:|-|\(|\))([a-z])/g,
$r = function (A, e, t) {
return 0 < A.length ? e + t.toUpperCase() : A
}, An = (v(en, Zr = jr), en);
function en(A) {
var e = Zr.call(this, A) || this;
return e.src = A.currentSrc || A.src, e.intrinsicWidth = A.naturalWidth, e.intrinsicHeight = A.naturalHeight, Xe.getInstance().addImage(e.src), e
}
v(nn, tn = jr);
var tn, rn = nn;
function nn(A) {
var e = tn.call(this, A) || this;
return e.canvas = A, e.intrinsicWidth = A.width, e.intrinsicHeight = A.height, e
}
v(on, Bn = jr);
var Bn, sn = on;
function on(A) {
var e = Bn.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, Xe.getInstance().addImage(e.svg), e
}
v(Qn, an = jr);
var an, cn = Qn;
function Qn(A) {
var e = an.call(this, A) || this;
return e.value = A.value, e
}
v(un, gn = jr);
var gn, Cn = un;
function un(A) {
var e = gn.call(this, A) || this;
return e.start = A.start, e.reversed = "boolean" == typeof A.reversed && !0 === A.reversed, e
}
var ln, wn = [{
type: l.DIMENSION_TOKEN,
flags: 0,
unit: "px",
number: 3
}],
Un = [{
type: l.PERCENTAGE_TOKEN,
flags: 0,
number: 50
}],
En = "checkbox",
dn = "radio",
hn = 707406591,
fn = (v(Fn, ln = jr), Fn);
function Fn(A) {
var e, t = ln.call(this, A) || this;
switch (t.type = A.type.toLowerCase(), t.checked = A.checked, t.value = 0 === (e = "password" === (A = A).type ? new Array(A.value.length + 1).join("•") : A.value).length ? A.placeholder || "" : e, t.type !== En && t.type !== dn || (t.styles.backgroundColor = 3739148031, t.styles.borderTopColor = t.styles.borderRightColor = t.styles.borderBottomColor = t.styles.borderLeftColor = 2779096575, t.styles.borderTopWidth = t.styles.borderRightWidth = t.styles.borderBottomWidth = t.styles.borderLeftWidth = 1, t.styles.borderTopStyle = t.styles.borderRightStyle = t.styles.borderBottomStyle = t.styles.borderLeftStyle = wt.SOLID, t.styles.backgroundClip = [ve.BORDER_BOX], t.styles.backgroundOrigin = [0], t.bounds = (A = t.bounds).width > A.height ? new P(A.left + (A.width - A.height) / 2, A.top, A.height, A.height) : A.width < A.height ? new P(A.left, A.top + (A.height - A.width) / 2, A.width, A.width) : A), t.type) {
case En:
t.styles.borderTopRightRadius = t.styles.borderTopLeftRadius = t.styles.borderBottomRightRadius = t.styles.borderBottomLeftRadius = wn;
break;
case dn:
t.styles.borderTopRightRadius = t.styles.borderTopLeftRadius = t.styles.borderBottomRightRadius = t.styles.borderBottomLeftRadius = Un
}
return t
}
v(pn, Hn = jr);
var Hn, In = pn;
function pn(A) {
var e = Hn.call(this, A) || this,
A = A.options[A.selectedIndex || 0];
return e.value = A && A.text || "", e
}
v(Kn, Nn = jr);
var Nn, mn = Kn;
function Kn(A) {
var e = Nn.call(this, A) || this;
return e.value = A.value, e
}
function vn(A) {
return pe(Be.create(A).parseComponentValue())
}
v(Dn, Rn = jr);
var Rn, bn = Dn;
function Dn(A) {
var e, t, r = Rn.call(this, A) || this;
r.src = A.src, r.width = parseInt(A.width, 10) || 0, r.height = parseInt(A.height, 10) || 0, r.backgroundColor = r.styles.backgroundColor;
try {
A.contentWindow && A.contentWindow.document && A.contentWindow.document.documentElement && (r.tree = Sn(A.contentWindow.document.documentElement), e = A.contentWindow.document.documentElement ? vn(getComputedStyle(A.contentWindow.document.documentElement).backgroundColor) : be.TRANSPARENT, t = A.contentWindow.document.body ? vn(getComputedStyle(A.contentWindow.document.body).backgroundColor) : be.TRANSPARENT, r.backgroundColor = Ee(e) ? Ee(t) ? r.styles.backgroundColor : t : e)
} catch (A) { }
return r
}
function Tn(A) {
return "STYLE" === A.tagName
}
function Mn(A, e, t) {
for (var r = A.firstChild; r; r = B) {
var n, B = r.nextSibling;
Xn(r) && 0 < r.data.trim().length ? e.textNodes.push(new qr(r, e.styles)) : zn(r) && (n = On(r)).styles.isVisible() && (Pn(r, n, t) ? n.flags |= 4 : Vn(n.styles) && (n.flags |= 2), -1 !== yn.indexOf(r.tagName) && (n.flags |= 8), e.elements.push(n), _n(r) || Yn(r) || $n(r) || Mn(r, n, t))
}
}
function Ln(A) {
return "BODY" === A.tagName
}
var yn = ["OL", "UL", "MENU"],
On = function (A) {
return new (jn(A) ? An : Zn(A) ? rn : Yn(A) ? sn : Gn(A) ? cn : kn(A) ? Cn : Wn(A) ? fn : $n(A) ? In : _n(A) ? mn : qn(A) ? bn : jr)(A)
}, Sn = function (A) {
var e = On(A);
return e.flags |= 4, Mn(A, e, e), e
}, Pn = function (A, e, t) {
return e.styles.isPositionedWithZIndex() || e.styles.opacity < 1 || e.styles.isTransformed() || Ln(A) && t.styles.isTransparent()
}, Vn = function (A) {
return A.isPositioned() || A.isFloating()
}, Xn = function (A) {
return A.nodeType === Node.TEXT_NODE
}, zn = function (A) {
return A.nodeType === Node.ELEMENT_NODE
}, Jn = function (A) {
return zn(A) && void 0 !== A.style && !xn(A)
}, xn = function (A) {
return "object" == cs(A.className)
}, Gn = function (A) {
return "LI" === A.tagName
}, kn = function (A) {
return "OL" === A.tagName
}, Wn = function (A) {
return "INPUT" === A.tagName
}, Yn = function (A) {
return "svg" === A.tagName
}, Zn = function (A) {
return "CANVAS" === A.tagName
}, jn = function (A) {
return "IMG" === A.tagName
}, qn = function (A) {
return "IFRAME" === A.tagName
}, _n = function (A) {
return "TEXTAREA" === A.tagName
}, $n = function (A) {
return "SELECT" === A.tagName
}, AB = (eB.prototype.getCounterValue = function (A) {
A = this.counters[A];
return A && A.length ? A[A.length - 1] : 1
}, eB.prototype.getCounterValues = function (A) {
return this.counters[A] || []
}, eB.prototype.pop = function (A) {
var e = this;
A.forEach(function (A) {
return e.counters[A].pop()
})
}, eB.prototype.parse = function (A) {
var t = this,
e = A.counterIncrement,
A = A.counterReset,
r = !0,
n = (null !== e && e.forEach(function (A) {
var e = t.counters[A.counter];
e && 0 !== A.increment && (r = !1, e[Math.max(0, e.length - 1)] += A.increment)
}), []);
return r && A.forEach(function (A) {
var e = t.counters[A.counter];
n.push(A.counter), (e = e || (t.counters[A.counter] = [])).push(A.reset)
}), n
}, eB);
function eB() {
this.counters = {}
}
function tB(r, A, e, n, t, B) {
return r < A || e < r ? gB(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 rB(A, e, t, r) {
for (var n = ""; t || A--, n = r(A) + n, e <= (A /= e) * e;);
return n
}
function H(A, e, t, r, n) {
var B = t - e + 1;
return (A < 0 ? "-" : "") + (rB(Math.abs(A), B, r, function (A) {
return Q(Math.floor(A % B) + e)
}) + n)
}
function nB(A, e, t) {
void 0 === t && (t = ". ");
var r = e.length;
return rB(Math.abs(A), r, !1, function (A) {
return e[Math.floor(A % r)]
}) + t
}
function BB(A, e, t, r, n, B) {
if (A < -9999 || 9999 < A) return gB(A, E.CJK_DECIMAL, 0 < n.length);
var s = Math.abs(A),
i = n;
if (0 === s) return e[0] + i;
for (var o = 0; 0 < s && o <= 4; o++) {
var a = s % 10;
0 == a && f(B, 1) && "" !== i ? i = e[a] + i : 1 < a || 1 == a && 0 === o || 1 == a && 1 === o && f(B, 2) || 1 == a && 1 === o && f(B, 4) && 100 < A || 1 == a && 1 < o && f(B, 8) ? i = e[a] + (0 < o ? t[o - 1] : "") + i : 1 == a && 0 < o && (i = t[o - 1] + i), s = Math.floor(s / 10)
}
return (A < 0 ? r : "") + i
}
var sB, iB = {
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"]
}, oB = {
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: ["Ք", "Փ", "Ւ", "Ց", "Ր", "Տ", "Վ", "Ս", "Ռ", "Ջ", "Պ", "Չ", "Ո", "Շ", "Ն", "Յ", "Մ", "Ճ", "Ղ", "Ձ", "Հ", "Կ", "Ծ", "Խ", "Լ", "Ի", "Ժ", "Թ", "Ը", "Է", "Զ", "Ե", "Դ", "Գ", "Բ", "Ա"]
}, aB = {
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: ["י׳", "ט׳", "ח׳", "ז׳", "ו׳", "ה׳", "ד׳", "ג׳", "ב׳", "א׳", "ת", "ש", "ר", "ק", "צ", "פ", "ע", "ס", "נ", "מ", "ל", "כ", "יט", "יח", "יז", "טז", "טו", "י", "ט", "ח", "ז", "ו", "ה", "ד", "ג", "ב", "א"]
}, cB = {
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: ["ჵ", "ჰ", "ჯ", "ჴ", "ხ", "ჭ", "წ", "ძ", "ც", "ჩ", "შ", "ყ", "ღ", "ქ", "ფ", "ჳ", "ტ", "ს", "რ", "ჟ", "პ", "ო", "ჲ", "ნ", "მ", "ლ", "კ", "ი", "თ", "ჱ", "ზ", "ვ", "ე", "დ", "გ", "ბ", "ა"]
}, QB = "마이너스",
gB = function (A, e, t) {
var r = t ? ". " : "",
n = t ? "、" : "",
B = t ? ", " : "",
s = t ? " " : "";
switch (e) {
case E.DISC:
return "•" + s;
case E.CIRCLE:
return "◦" + s;
case E.SQUARE:
return "◾" + s;
case E.DECIMAL_LEADING_ZERO:
var i = H(A, 48, 57, !0, r);
return i.length < 4 ? "0" + i : i;
case E.CJK_DECIMAL:
return nB(A, "〇一二三四五六七八九", n);
case E.LOWER_ROMAN:
return tB(A, 1, 3999, iB, E.DECIMAL, r).toLowerCase();
case E.UPPER_ROMAN:
return tB(A, 1, 3999, iB, E.DECIMAL, r);
case E.LOWER_GREEK:
return H(A, 945, 969, !1, r);
case E.LOWER_ALPHA:
return H(A, 97, 122, !1, r);
case E.UPPER_ALPHA:
return H(A, 65, 90, !1, r);
case E.ARABIC_INDIC:
return H(A, 1632, 1641, !0, r);
case E.ARMENIAN:
case E.UPPER_ARMENIAN:
return tB(A, 1, 9999, oB, E.DECIMAL, r);
case E.LOWER_ARMENIAN:
return tB(A, 1, 9999, oB, E.DECIMAL, r).toLowerCase();
case E.BENGALI:
return H(A, 2534, 2543, !0, r);
case E.CAMBODIAN:
case E.KHMER:
return H(A, 6112, 6121, !0, r);
case E.CJK_EARTHLY_BRANCH:
return nB(A, "子丑寅卯辰巳午未申酉戌亥", n);
case E.CJK_HEAVENLY_STEM:
return nB(A, "甲乙丙丁戊己庚辛壬癸", n);
case E.CJK_IDEOGRAPHIC:
case E.TRAD_CHINESE_INFORMAL:
return BB(A, "零一二三四五六七八九", "十百千萬", "負", n, 14);
case E.TRAD_CHINESE_FORMAL:
return BB(A, "零壹貳參肆伍陸柒捌玖", "拾佰仟萬", "負", n, 15);
case E.SIMP_CHINESE_INFORMAL:
return BB(A, "零一二三四五六七八九", "十百千萬", "负", n, 14);
case E.SIMP_CHINESE_FORMAL:
return BB(A, "零壹贰叁肆伍陆柒捌玖", "拾佰仟萬", "负", n, 15);
case E.JAPANESE_INFORMAL:
return BB(A, "〇一二三四五六七八九", "十百千万", "マイナス", n, 0);
case E.JAPANESE_FORMAL:
return BB(A, "零壱弐参四伍六七八九", "拾百千万", "マイナス", n, 7);
case E.KOREAN_HANGUL_FORMAL:
return BB(A, "영일이삼사오육칠팔구", "십백천만", QB, B, 7);
case E.KOREAN_HANJA_INFORMAL:
return BB(A, "零一二三四五六七八九", "十百千萬", QB, B, 0);
case E.KOREAN_HANJA_FORMAL:
return BB(A, "零壹貳參四五六七八九", "拾百千", QB, B, 7);
case E.DEVANAGARI:
return H(A, 2406, 2415, !0, r);
case E.GEORGIAN:
return tB(A, 1, 19999, cB, E.DECIMAL, r);
case E.GUJARATI:
return H(A, 2790, 2799, !0, r);
case E.GURMUKHI:
return H(A, 2662, 2671, !0, r);
case E.HEBREW:
return tB(A, 1, 10999, aB, E.DECIMAL, r);
case E.HIRAGANA:
return nB(A, "あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん");
case E.HIRAGANA_IROHA:
return nB(A, "いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす");
case E.KANNADA:
return H(A, 3302, 3311, !0, r);
case E.KATAKANA:
return nB(A, "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン", n);
case E.KATAKANA_IROHA:
return nB(A, "イロハニホヘトチリヌルヲワカヨタレソツネナラムウヰノオクヤマケフコエテアサキユメミシヱヒモセス", n);
case E.LAO:
return H(A, 3792, 3801, !0, r);
case E.MONGOLIAN:
return H(A, 6160, 6169, !0, r);
case E.MYANMAR:
return H(A, 4160, 4169, !0, r);
case E.ORIYA:
return H(A, 2918, 2927, !0, r);
case E.PERSIAN:
return H(A, 1776, 1785, !0, r);
case E.TAMIL:
return H(A, 3046, 3055, !0, r);
case E.TELUGU:
return H(A, 3174, 3183, !0, r);
case E.THAI:
return H(A, 3664, 3673, !0, r);
case E.TIBETAN:
return H(A, 3872, 3881, !0, r);
default:
E.DECIMAL;
return H(A, 48, 57, !0, r)
}
}, CB = "data-html2canvas-ignore",
uB = (lB.prototype.toIFrame = function (A, t) {
var e = this,
r = UB(A, t);
if (!r.contentWindow) return Promise.reject("Unable to find iframe window");
var n = A.defaultView.pageXOffset,
A = A.defaultView.pageYOffset,
B = r.contentWindow,
s = B.document,
i = EB(r).then(function () {
return o(e, void 0, void 0, function () {
var e;
return R(this, function (A) {
switch (A.label) {
case 0:
return this.scrolledElements.forEach(FB), B && (B.scrollTo(t.left, t.top), !/(iPad|iPhone|iPod)/g.test(navigator.userAgent) || B.scrollY === t.top && B.scrollX === t.left || (s.documentElement.style.top = -t.top + "px", s.documentElement.style.left = -t.left + "px", s.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")] : s.fonts && s.fonts.ready ? [4, s.fonts.ready] : [3, 2];
case 1:
A.sent(), A.label = 2;
case 2:
return "function" == typeof e ? [2, Promise.resolve().then(function () {
return e(s)
}).then(function () {
return r
})] : [2, r]
}
})
})
});
return s.open(), s.write(hB(document.doctype) + "<html></html>"), fB(this.referenceElement.ownerDocument, n, A), s.replaceChild(s.adoptNode(this.documentElement), s.documentElement), s.close(), i
}, lB.prototype.createElementClone = function (A) {
if (Zn(A)) return this.createCanvasClone(A);
if (Tn(A)) return this.createStyleClone(A);
A = A.cloneNode(!1);
return jn(A) && "lazy" === A.loading && (A.loading = "eager"), A
}, lB.prototype.createStyleClone = function (A) {
try {
var e, t, r = A.sheet;
if (r && r.cssRules) return e = [].slice.call(r.cssRules, 0).reduce(function (A, e) {
return e && "string" == typeof e.cssText ? A + e.cssText : A
}, ""), (t = A.cloneNode(!1)).textContent = e, t
} catch (A) {
if (M.getInstance(this.options.id).error("Unable to access cssRules property", A), "SecurityError" !== A.name) throw A
}
return A.cloneNode(!1)
}, lB.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) {
M.getInstance(this.options.id).info("Unable to clone canvas contents, canvas is tainted")
}
}
e = A.cloneNode(!1);
try {
e.width = A.width, e.height = A.height;
var t = A.getContext("2d"),
r = e.getContext("2d");
return r && (t ? r.putImageData(t.getImageData(0, 0, A.width, A.height), 0, 0) : r.drawImage(A, 0, 0)), e
} catch (A) { }
return e
}, lB.prototype.cloneNode = function (A) {
if (Xn(A)) return document.createTextNode(A.data);
if (!A.ownerDocument) return A.cloneNode(!1);
var e = A.ownerDocument.defaultView;
if (e && zn(A) && (Jn(A) || xn(A))) {
var t = this.createElementClone(A),
r = e.getComputedStyle(A),
n = e.getComputedStyle(A, ":before"),
e = e.getComputedStyle(A, ":after");
this.referenceElement === A && Jn(t) && (this.clonedReferenceElement = t), Ln(t) && NB(t);
for (var B = this.counters.parse(new Gr(r)), n = this.resolvePseudoContent(A, t, n, sB.BEFORE), s = A.firstChild; s; s = s.nextSibling) zn(s) && ("SCRIPT" === s.tagName || s.hasAttribute(CB) || "function" == typeof this.options.ignoreElements && this.options.ignoreElements(s)) || this.options.copyStyles && zn(s) && Tn(s) || t.appendChild(this.cloneNode(s));
n && t.insertBefore(n, t.firstChild);
n = this.resolvePseudoContent(A, t, e, sB.AFTER);
return n && t.appendChild(n), this.counters.pop(B), r && (this.options.copyStyles || xn(A)) && !qn(A) && dB(r, t), 0 === A.scrollTop && 0 === A.scrollLeft || this.scrolledElements.push([t, A.scrollLeft, A.scrollTop]), (_n(A) || $n(A)) && (_n(t) || $n(t)) && (t.value = A.value), t
}
return A.cloneNode(!1)
}, lB.prototype.resolvePseudoContent = function (s, A, e, t) {
var i = this;
if (e) {
var o, a, r = e.content,
c = A.ownerDocument;
if (c && r && "none" !== r && "-moz-alt-content" !== r && "none" !== e.display) return this.counters.parse(new Gr(e)), o = new xr(e), a = c.createElement("html2canvaspseudoelement"), dB(e, a), o.content.forEach(function (A) {
if (A.type === l.STRING_TOKEN) a.appendChild(c.createTextNode(A.value));
else if (A.type === l.URL_TOKEN) {
var e = c.createElement("img");
e.src = A.value, e.style.opacity = "1", a.appendChild(e)
} else if (A.type === l.FUNCTION) {
var t, r, n, B;
"attr" === A.name ? (e = A.values.filter(w)).length && a.appendChild(c.createTextNode(s.getAttribute(e[0].value) || "")) : "counter" === A.name ? (n = (e = A.values.filter(Qe))[0], B = e[1], n && w(n) && (e = i.counters.getCounterValue(n.value), t = B && w(B) ? qt.parse(B.value) : E.DECIMAL, a.appendChild(c.createTextNode(gB(e, t, !1))))) : "counters" === A.name && (n = (e = A.values.filter(Qe))[0], t = e[1], B = e[2], n && w(n) && (e = i.counters.getCounterValues(n.value), r = B && w(B) ? qt.parse(B.value) : E.DECIMAL, n = t && t.type === l.STRING_TOKEN ? t.value : "", B = e.map(function (A) {
return gB(A, r, !1)
}).join(n), a.appendChild(c.createTextNode(B))))
} else if (A.type === l.IDENT_TOKEN) switch (A.value) {
case "open-quote":
a.appendChild(c.createTextNode(Mr(o.quotes, i.quoteDepth++, !0)));
break;
case "close-quote":
a.appendChild(c.createTextNode(Mr(o.quotes, --i.quoteDepth, !1)));
break;
default:
a.appendChild(c.createTextNode(A.value))
}
}), a.className = HB + " " + IB, r = t === sB.BEFORE ? " " + HB : " " + IB, xn(A) ? A.className.baseValue += r : A.className += r, a
}
}, lB.destroy = function (A) {
return !!A.parentNode && (A.parentNode.removeChild(A), !0)
}, lB);
function lB(A, e) {
if (this.options = e, this.scrolledElements = [], this.referenceElement = A, this.counters = new AB, this.quoteDepth = 0, !A.ownerDocument) throw new Error("Cloned element does not have an owner document");
this.documentElement = this.cloneNode(A.ownerDocument.documentElement)
} (B = sB = sB || {})[B.BEFORE = 0] = "BEFORE", B[B.AFTER = 1] = "AFTER";
var wB, UB = 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(CB, "true"), A.body.appendChild(t), t
}, EB = 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)
}
})
}, dB = 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
}, hB = 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
}, fB = function (A, e, t) {
A && A.defaultView && (e !== A.defaultView.pageXOffset || t !== A.defaultView.pageYOffset) && A.defaultView.scrollTo(e, t)
}, FB = function (A) {
var e = A[0],
t = A[1],
A = A[2];
e.scrollLeft = t, e.scrollTop = A
}, HB = "___html2canvas___pseudoelement_before",
IB = "___html2canvas___pseudoelement_after",
pB = '{\n content: "" !important;\n display: none !important;\n}',
NB = function (A) {
mB(A, "." + HB + ":before" + pB + "\n ." + IB + ":after" + pB)
}, mB = function (A, e) {
var t = A.ownerDocument;
t && ((t = t.createElement("style")).textContent = e, A.appendChild(t))
};
function KB(A, t) {
return A.length === t.length && A.some(function (A, e) {
return A === t[e]
})
} (u = wB = wB || {})[u.VECTOR = 0] = "VECTOR", u[u.BEZIER_CURVE = 1] = "BEZIER_CURVE";
vB.prototype.add = function (A, e) {
return new vB(this.x + A, this.y + e)
};
var I = vB;
function vB(A, e) {
this.type = wB.VECTOR, this.x = A, this.y = e
}
function RB(A, e, t) {
return new I(A.x + (e.x - A.x) * t, A.y + (e.y - A.y) * t)
}
DB.prototype.subdivide = function (A, e) {
var t = RB(this.start, this.startControl, A),
r = RB(this.startControl, this.endControl, A),
n = RB(this.endControl, this.end, A),
B = RB(t, r, A),
r = RB(r, n, A),
A = RB(B, r, A);
return e ? new DB(this.start, t, B, A) : new DB(A, r, n, this.end)
}, DB.prototype.add = function (A, e) {
return new DB(this.start.add(A, e), this.startControl.add(A, e), this.endControl.add(A, e), this.end.add(A, e))
}, DB.prototype.reverse = function () {
return new DB(this.end, this.endControl, this.startControl, this.start)
};
var bB = DB;
function DB(A, e, t, r) {
this.type = wB.BEZIER_CURVE, this.start = A, this.startControl = e, this.endControl = t, this.end = r
}
function TB(A) {
return A.type === wB.BEZIER_CURVE
}
function MB(A) {
var e = A.styles,
t = A.bounds,
r = (n = le(e.borderTopLeftRadius, t.width, t.height))[0],
n = n[1],
B = (s = le(e.borderTopRightRadius, t.width, t.height))[0],
s = s[1],
i = (o = le(e.borderBottomRightRadius, t.width, t.height))[0],
o = o[1],
a = (c = le(e.borderBottomLeftRadius, t.width, t.height))[0],
c = c[1];
(Q = []).push((r + B) / t.width), Q.push((a + i) / t.width), Q.push((n + c) / t.height), Q.push((s + o) / t.height);
1 < (Q = Math.max.apply(Math, Q)) && (r /= Q, n /= Q, B /= Q, s /= Q, i /= Q, o /= Q, a /= Q, c /= Q);
var Q = t.width - B,
g = t.height - o,
C = t.width - i,
u = t.height - c,
l = e.borderTopWidth,
w = e.borderRightWidth,
U = e.borderBottomWidth,
E = e.borderLeftWidth,
d = D(e.paddingTop, A.bounds.width),
h = D(e.paddingRight, A.bounds.width),
f = D(e.paddingBottom, A.bounds.width),
e = D(e.paddingLeft, A.bounds.width);
this.topLeftBorderBox = 0 < r || 0 < n ? N(t.left, t.top, r, n, p.TOP_LEFT) : new I(t.left, t.top), this.topRightBorderBox = 0 < B || 0 < s ? N(t.left + Q, t.top, B, s, p.TOP_RIGHT) : new I(t.left + t.width, t.top), this.bottomRightBorderBox = 0 < i || 0 < o ? N(t.left + C, t.top + g, i, o, p.BOTTOM_RIGHT) : new I(t.left + t.width, t.top + t.height), this.bottomLeftBorderBox = 0 < a || 0 < c ? N(t.left, t.top + u, a, c, p.BOTTOM_LEFT) : new I(t.left, t.top + t.height), this.topLeftPaddingBox = 0 < r || 0 < n ? N(t.left + E, t.top + l, Math.max(0, r - E), Math.max(0, n - l), p.TOP_LEFT) : new I(t.left + E, t.top + l), this.topRightPaddingBox = 0 < B || 0 < s ? N(t.left + Math.min(Q, t.width + E), t.top + l, Q > t.width + E ? 0 : B - E, s - l, p.TOP_RIGHT) : new I(t.left + t.width - w, t.top + l), this.bottomRightPaddingBox = 0 < i || 0 < o ? N(t.left + Math.min(C, t.width - E), t.top + Math.min(g, t.height + l), Math.max(0, i - w), o - U, p.BOTTOM_RIGHT) : new I(t.left + t.width - w, t.top + t.height - U), this.bottomLeftPaddingBox = 0 < a || 0 < c ? N(t.left + E, t.top + u, Math.max(0, a - E), c - U, p.BOTTOM_LEFT) : new I(t.left + E, t.top + t.height - U), this.topLeftContentBox = 0 < r || 0 < n ? N(t.left + E + e, t.top + l + d, Math.max(0, r - (E + e)), Math.max(0, n - (l + d)), p.TOP_LEFT) : new I(t.left + E + e, t.top + l + d), this.topRightContentBox = 0 < B || 0 < s ? N(t.left + Math.min(Q, t.width + E + e), t.top + l + d, Q > t.width + E + e ? 0 : B - E + e, s - (l + d), p.TOP_RIGHT) : new I(t.left + t.width - (w + h), t.top + l + d), this.bottomRightContentBox = 0 < i || 0 < o ? N(t.left + Math.min(C, t.width - (E + e)), t.top + Math.min(g, t.height + l + d), Math.max(0, i - (w + h)), o - (U + f), p.BOTTOM_RIGHT) : new I(t.left + t.width - (w + h), t.top + t.height - (U + f)), this.bottomLeftContentBox = 0 < a || 0 < c ? N(t.left + E + e, t.top + u, Math.max(0, a - (E + e)), c - (U + f), p.BOTTOM_LEFT) : new I(t.left + E + e, t.top + t.height - (U + f))
}
var p;
function LB(A) {
return [A.topLeftBorderBox, A.topRightBorderBox, A.bottomRightBorderBox, A.bottomLeftBorderBox]
}
function yB(A) {
return [A.topLeftPaddingBox, A.topRightPaddingBox, A.bottomRightPaddingBox, A.bottomLeftPaddingBox]
}
p = {
TOP_LEFT: 0,
0: "TOP_LEFT",
TOP_RIGHT: 1,
1: "TOP_RIGHT",
BOTTOM_RIGHT: 2,
2: "BOTTOM_RIGHT",
BOTTOM_LEFT: 3,
3: "BOTTOM_LEFT"
};
function OB(A, e, t) {
this.type = 0, this.offsetX = A, this.offsetY = e, this.matrix = t, this.target = 6
}
function SB(A, e) {
this.type = 1, this.target = e, this.path = A
}
function PB(A) {
this.element = A, this.inlineLevel = [], this.nonInlineLevel = [], this.negativeZIndex = [], this.zeroOrAutoZIndexOrTransformedOrOpacity = [], this.positiveZIndex = [], this.nonPositionedFloats = [], this.nonPositionedInlineLevel = []
}
var N = function (A, e, t, r, n) {
var B = (Math.sqrt(2) - 1) / 3 * 4,
s = t * B,
i = r * B,
o = A + t,
a = e + r;
switch (n) {
case p.TOP_LEFT:
return new bB(new I(A, a), new I(A, a - i), new I(o - s, e), new I(o, e));
case p.TOP_RIGHT:
return new bB(new I(A, e), new I(A + s, e), new I(o, a - i), new I(o, a));
case p.BOTTOM_RIGHT:
return new bB(new I(o, e), new I(o, e + i), new I(A + s, a), new I(A, a));
default:
p.BOTTOM_LEFT;
return new bB(new I(o, a), new I(o - s, a), new I(A, e + i), new I(A, e))
}
}, VB = (XB.prototype.getParentEffects = function () {
var A, e = this.effects.slice(0);
return this.container.styles.overflowX === jt.VISIBLE || KB(LB(this.curves), A = yB(this.curves)) || e.push(new SB(A, 6)), e
}, XB);
function XB(A, e) {
var t, r;
this.container = A, this.effects = e.slice(0), this.curves = new MB(A), null !== A.styles.transform && (e = A.bounds.left + A.styles.transformOrigin[0].number, r = A.bounds.top + A.styles.transformOrigin[1].number, t = A.styles.transform, this.effects.push(new OB(e, r, t))), A.styles.overflowX !== jt.VISIBLE && (KB(e = LB(this.curves), r = yB(this.curves)) ? this.effects.push(new SB(e, 6)) : (this.effects.push(new SB(e, 2)), this.effects.push(new SB(r, 4))))
}
function zB(A) {
var e = A.bounds,
A = A.styles;
return e.add(A.borderLeftWidth, A.borderTopWidth, -(A.borderRightWidth + A.borderLeftWidth), -(A.borderTopWidth + A.borderBottomWidth))
}
function JB(A) {
var e = A.styles,
A = A.bounds,
t = D(e.paddingLeft, A.width),
r = D(e.paddingRight, A.width),
n = D(e.paddingTop, A.width),
B = D(e.paddingBottom, A.width);
return A.add(t + e.borderLeftWidth, n + e.borderTopWidth, -(e.borderRightWidth + e.borderLeftWidth + t + r), -(e.borderTopWidth + e.borderBottomWidth + n + B))
}
function xB(A, e, t) {
r = qB(A.styles.backgroundOrigin, e), n = A;
var r = 0 === r ? n.bounds : (2 === r ? JB : zB)(n),
n = (n = qB(A.styles.backgroundClip, e), B = A, n === ve.BORDER_BOX ? B.bounds : (n === ve.CONTENT_BOX ? JB : zB)(B)),
B = jB(qB(A.styles.backgroundSize, e), t, r),
t = B[0],
s = B[1],
i = le(qB(A.styles.backgroundPosition, e), r.width - t, r.height - s);
return [_B(qB(A.styles.backgroundRepeat, e), i, B, r, n), Math.round(r.left + i[0]), Math.round(r.top + i[1]), t, s]
}
function GB(A) {
return w(A) && A.value === We.AUTO
}
function kB(A) {
return "number" == typeof A
}
function WB(a, c, Q, g) {
a.container.elements.forEach(function (A) {
var e, t, r, n, B = f(A.flags, 4),
s = f(A.flags, 2),
i = new VB(A, a.getParentEffects()),
o = (f(A.styles.display, 2048) && g.push(i), f(A.flags, 8) ? [] : g);
B || s ? (s = B || A.styles.isPositioned() ? Q : c, e = new PB(i), A.styles.isPositioned() || A.styles.opacity < 1 || A.styles.isTransformed() ? (t = A.styles.zIndex.order) < 0 ? (r = 0, s.negativeZIndex.some(function (A, e) {
return t > A.element.container.styles.zIndex.order ? (r = e, !1) : 0 < r
}), s.negativeZIndex.splice(r, 0, e)) : 0 < t ? (n = 0, s.positiveZIndex.some(function (A, e) {
return t >= A.element.container.styles.zIndex.order ? (n = e + 1, !1) : 0 < n
}), s.positiveZIndex.splice(n, 0, e)) : s.zeroOrAutoZIndexOrTransformedOrOpacity.push(e) : (A.styles.isFloating() ? s.nonPositionedFloats : s.nonPositionedInlineLevel).push(e), WB(i, e, B ? e : Q, o)) : ((A.styles.isInlineLevel() ? c.inlineLevel : c.nonInlineLevel).push(i), WB(i, c, Q, o)), f(A.flags, 8) && YB(A, o)
})
}
function YB(A, e) {
for (var t = A instanceof Cn ? A.start : 1, r = A instanceof Cn && A.reversed, n = 0; n < e.length; n++) {
var B = e[n];
B.container instanceof cn && "number" == typeof B.container.value && 0 !== B.container.value && (t = B.container.value), B.listValue = gB(t, B.container.styles.listStyleType, !0), t += r ? -1 : 1
}
}
function ZB(A, e, t, r) {
var n = [];
return TB(A) ? n.push(A.subdivide(.5, !1)) : n.push(A), TB(t) ? n.push(t.subdivide(.5, !0)) : n.push(t), TB(r) ? n.push(r.subdivide(.5, !0).reverse()) : n.push(r), TB(e) ? n.push(e.subdivide(.5, !1).reverse()) : n.push(e), n
}
var jB = function (A, e, t) {
var r = e[0],
n = e[1],
e = e[2],
B = A[0],
A = A[1];
if (U(B) && A && U(A)) return [D(B, t.width), D(A, t.height)];
var s = kB(e);
if (w(B) && (B.value === We.CONTAIN || B.value === We.COVER)) return kB(e) ? t.width / t.height < e != (B.value === We.COVER) ? [t.width, t.width / e] : [t.height * e, t.height] : [t.width, t.height];
var i = kB(r),
o = kB(n),
a = i || o;
if (GB(B) && (!A || GB(A))) return i && o ? [r, n] : s || a ? a && s ? [i ? r : n * e, o ? n : r / e] : [i ? r : t.width, o ? n : t.height] : [t.width, t.height];
if (s) return s = a = 0, U(B) ? a = D(B, t.width) : U(A) && (s = D(A, t.height)), GB(B) ? a = s * e : A && !GB(A) || (s = a / e), [a, s];
e = null, a = null;
if (U(B) ? e = D(B, t.width) : A && U(A) && (a = D(A, t.height)), null !== (e = null !== (a = null === e || A && !GB(A) ? a : i && o ? e / r * n : t.height) && GB(B) ? i && o ? a / n * r : t.width : e) && null !== a) return [e, a];
throw new Error("Unable to calculate background-size for element")
}, qB = function (A, e) {
e = A[e];
return void 0 === e ? A[0] : e
}, _B = function (A, e, t, r, n) {
var B = e[0],
s = e[1],
i = t[0],
o = t[1];
switch (A) {
case ke.REPEAT_X:
return [new I(Math.round(r.left), Math.round(r.top + s)), new I(Math.round(r.left + r.width), Math.round(r.top + s)), new I(Math.round(r.left + r.width), Math.round(o + r.top + s)), new I(Math.round(r.left), Math.round(o + r.top + s))];
case ke.REPEAT_Y:
return [new I(Math.round(r.left + B), Math.round(r.top)), new I(Math.round(r.left + B + i), Math.round(r.top)), new I(Math.round(r.left + B + i), Math.round(r.height + r.top)), new I(Math.round(r.left + B), Math.round(r.height + r.top))];
case ke.NO_REPEAT:
return [new I(Math.round(r.left + B), Math.round(r.top + s)), new I(Math.round(r.left + B + i), Math.round(r.top + s)), new I(Math.round(r.left + B + i), Math.round(r.top + s + o)), new I(Math.round(r.left + B), Math.round(r.top + s + o))];
default:
return [new I(Math.round(n.left), Math.round(n.top)), new I(Math.round(n.left + n.width), Math.round(n.top)), new I(Math.round(n.left + n.width), Math.round(n.height + n.top)), new I(Math.round(n.left), Math.round(n.height + n.top))]
}
}, $B = "Hidden Text",
As = (es.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,
A = (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($B)), t.appendChild(n), t.appendChild(r), r.offsetTop - n.offsetTop + 2),
e = (t.removeChild(n), t.appendChild(this._document.createTextNode($B)), t.style.lineHeight = "normal", r.style.verticalAlign = "super", r.offsetTop - t.offsetTop + 2);
return B.removeChild(t), {
baseline: A,
middle: e
}
}, es.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]
}, es);
function es(A) {
this._data = {}, this._document = A
}
m.prototype.applyEffects = function (A, e) {
for (var t = this; this._activeEffects.length;) this.popEffect();
A.filter(function (A) {
return f(A.target, e)
}).forEach(function (A) {
return t.applyEffect(A)
})
}, m.prototype.applyEffect = function (A) {
this.ctx.save(), 0 === A.type && (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)), 1 === A.type && (this.path(A.path), this.ctx.clip()), this._activeEffects.push(A)
}, m.prototype.popEffect = function () {
this._activeEffects.pop(), this.ctx.restore()
}, m.prototype.renderStack = function (t) {
return o(this, void 0, void 0, function () {
var e;
return R(this, function (A) {
switch (A.label) {
case 0:
return (e = t.element.container.styles).isVisible() ? (this.ctx.globalAlpha = e.opacity, [4, this.renderStackContent(t)]) : [3, 2];
case 1:
A.sent(), A.label = 2;
case 2:
return [2]
}
})
})
}, m.prototype.renderNode = function (e) {
return o(this, void 0, void 0, function () {
return R(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]
}
})
})
}, m.prototype.renderTextWithLetterSpacing = function (t, A) {
var r = this;
0 === A ? this.ctx.fillText(t.text, t.bounds.left, t.bounds.top + t.bounds.height) : z(t.text).map(function (A) {
return Q(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)
}, m.prototype.createFontStyle = function (A) {
var e = A.fontVariant.filter(function (A) {
return "normal" === A || "small-caps" === A
}).join(""),
t = A.fontFamily.join(", "),
r = se(A.fontSize) ? "" + A.fontSize.number + A.fontSize.unit : A.fontSize.number + "px";
return [[A.fontStyle, e, A.fontWeight, r, t].join(" "), t, r]
}, m.prototype.renderTextNode = function (s, i) {
return o(this, void 0, void 0, function () {
var e, t, r, n, B = this;
return R(this, function (A) {
return e = this.createFontStyle(i), t = e[0], r = e[1], n = e[2], this.ctx.font = t, s.textBounds.forEach(function (t) {
B.ctx.fillStyle = b(i.color), B.renderTextWithLetterSpacing(t, i.letterSpacing);
var A = i.textShadow;
A.length && t.text.trim().length && (A.slice(0).reverse().forEach(function (A) {
B.ctx.shadowColor = b(A.color), B.ctx.shadowOffsetX = A.offsetX.number * B.options.scale, B.ctx.shadowOffsetY = A.offsetY.number * B.options.scale, B.ctx.shadowBlur = A.blur.number, B.ctx.fillText(t.text, t.bounds.left, t.bounds.top + t.bounds.height)
}), B.ctx.shadowColor = "", B.ctx.shadowOffsetX = 0, B.ctx.shadowOffsetY = 0, B.ctx.shadowBlur = 0), i.textDecorationLine.length && (B.ctx.fillStyle = b(i.textDecorationColor || i.color), i.textDecorationLine.forEach(function (A) {
switch (A) {
case 1:
var e = B.fontMetrics.getMetrics(r, n).baseline;
B.ctx.fillRect(t.bounds.left, Math.round(t.bounds.top + e), t.bounds.width, 1);
break;
case 2:
B.ctx.fillRect(t.bounds.left, Math.round(t.bounds.top), t.bounds.width, 1);
break;
case 3:
e = B.fontMetrics.getMetrics(r, n).middle;
B.ctx.fillRect(t.bounds.left, Math.ceil(t.bounds.top + e), t.bounds.width, 1)
}
}))
}), [2]
})
})
}, m.prototype.renderReplacedElement = function (A, e, t) {
var r;
t && 0 < A.intrinsicWidth && 0 < A.intrinsicHeight && (r = JB(A), e = yB(e), this.path(e), 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())
}, m.prototype.renderNodeContent = function (u) {
return o(this, void 0, void 0, function () {
var r, n, B, s, i, o, a, c, Q, g, C;
return R(this, function (A) {
switch (A.label) {
case 0:
this.applyEffects(u.effects, 4), r = u.container, n = u.curves, B = r.styles, s = 0, i = r.textNodes, A.label = 1;
case 1:
return s < i.length ? (o = i[s], [4, this.renderTextNode(o, B)]) : [3, 4];
case 2:
A.sent(), A.label = 3;
case 3:
return s++, [3, 1];
case 4:
if (!(r instanceof An)) return [3, 8];
A.label = 5;
case 5:
return A.trys.push([5, 7, , 8]), [4, this.options.cache.match(r.src)];
case 6:
return Q = A.sent(), this.renderReplacedElement(r, n, Q), [3, 8];
case 7:
return A.sent(), M.getInstance(this.options.id).error("Error loading image " + r.src), [3, 8];
case 8:
if (r instanceof rn && this.renderReplacedElement(r, n, r.canvas), !(r instanceof sn)) return [3, 12];
A.label = 9;
case 9:
return A.trys.push([9, 11, , 12]), [4, this.options.cache.match(r.svg)];
case 10:
return Q = A.sent(), this.renderReplacedElement(r, n, Q), [3, 12];
case 11:
return A.sent(), M.getInstance(this.options.id).error("Error loading svg " + r.svg.substring(0, 255)), [3, 12];
case 12:
return r instanceof bn && r.tree ? [4, new m({
id: this.options.id,
scale: this.options.scale,
backgroundColor: r.backgroundColor,
x: 0,
y: 0,
scrollX: 0,
scrollY: 0,
width: r.width,
height: r.height,
cache: this.options.cache,
windowWidth: r.width,
windowHeight: r.height
}).render(r.tree)] : [3, 14];
case 13:
o = A.sent(), r.width && r.height && this.ctx.drawImage(o, 0, 0, r.width, r.height, r.bounds.left, r.bounds.top, r.bounds.width, r.bounds.height), A.label = 14;
case 14:
if (r instanceof fn && (c = Math.min(r.bounds.width, r.bounds.height), r.type === En ? r.checked && (this.ctx.save(), this.path([new I(r.bounds.left + .39363 * c, r.bounds.top + .79 * c), new I(r.bounds.left + .16 * c, r.bounds.top + .5549 * c), new I(r.bounds.left + .27347 * c, r.bounds.top + .44071 * c), new I(r.bounds.left + .39694 * c, r.bounds.top + .5649 * c), new I(r.bounds.left + .72983 * c, r.bounds.top + .23 * c), new I(r.bounds.left + .84 * c, r.bounds.top + .34085 * c), new I(r.bounds.left + .39363 * c, r.bounds.top + .79 * c)]), this.ctx.fillStyle = b(hn), this.ctx.fill(), this.ctx.restore()) : r.type === dn && r.checked && (this.ctx.save(), this.ctx.beginPath(), this.ctx.arc(r.bounds.left + c / 2, r.bounds.top + c / 2, c / 4, 0, 2 * Math.PI, !0), this.ctx.fillStyle = b(hn), this.ctx.fill(), this.ctx.restore())), rs(r) && r.value.length) {
switch (this.ctx.font = this.createFontStyle(B)[0], this.ctx.fillStyle = b(B.color), this.ctx.textBaseline = "middle", this.ctx.textAlign = Bs(r.styles.textAlign), C = JB(r), a = 0, r.styles.textAlign) {
case nr.CENTER:
a += C.width / 2;
break;
case nr.RIGHT:
a += C.width
}
c = C.add(a, 0, 0, -C.height / 2 + 1), this.ctx.save(), this.path([new I(C.left, C.top), new I(C.left + C.width, C.top), new I(C.left + C.width, C.top + C.height), new I(C.left, C.top + C.height)]), this.ctx.clip(), this.renderTextWithLetterSpacing(new kr(r.value, c), B.letterSpacing), this.ctx.restore(), this.ctx.textBaseline = "bottom", this.ctx.textAlign = "left"
}
if (!f(r.styles.display, 2048)) return [3, 20];
if (null === r.styles.listStyleImage) return [3, 19];
if ((g = r.styles.listStyleImage).type !== L.URL) return [3, 18];
Q = void 0, g = g.url, A.label = 15;
case 15:
return A.trys.push([15, 17, , 18]), [4, this.options.cache.match(g)];
case 16:
return Q = A.sent(), this.ctx.drawImage(Q, r.bounds.left - (Q.width + 10), r.bounds.top), [3, 18];
case 17:
return A.sent(), M.getInstance(this.options.id).error("Error loading list-style-image " + g), [3, 18];
case 18:
return [3, 20];
case 19:
u.listValue && r.styles.listStyleType !== E.NONE && (this.ctx.font = this.createFontStyle(B)[0], this.ctx.fillStyle = b(B.color), this.ctx.textBaseline = "middle", this.ctx.textAlign = "right", C = new P(r.bounds.left, r.bounds.top + D(r.styles.paddingTop, r.bounds.width), r.bounds.width, (e = B.lineHeight, t = B.fontSize.number, (w(e) && "normal" === e.value ? 1.2 * t : e.type === l.NUMBER_TOKEN ? t * e.number : U(e) ? D(e, t) : t) / 2 + 1)), this.renderTextWithLetterSpacing(new kr(u.listValue, C), B.letterSpacing), this.ctx.textBaseline = "bottom", this.ctx.textAlign = "left"), A.label = 20;
case 20:
return [2]
}
var e, t
})
})
}, m.prototype.renderStackContent = function (w) {
return o(this, void 0, void 0, function () {
var e, t, r, n, B, s, i, o, a, c, Q, g, C, u, l;
return R(this, function (A) {
switch (A.label) {
case 0:
return [4, this.renderNodeBackgroundAndBorders(w.element)];
case 1:
A.sent(), e = 0, t = w.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(w.element)];
case 6:
A.sent(), r = 0, n = w.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 = w.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:
i = 0, o = w.nonPositionedInlineLevel, A.label = 15;
case 15:
return i < o.length ? (l = o[i], [4, this.renderStack(l)]) : [3, 18];
case 16:
A.sent(), A.label = 17;
case 17:
return i++, [3, 15];
case 18:
a = 0, c = w.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, g = w.zeroOrAutoZIndexOrTransformedOrOpacity, A.label = 23;
case 23:
return Q < g.length ? (l = g[Q], [4, this.renderStack(l)]) : [3, 26];
case 24:
A.sent(), A.label = 25;
case 25:
return Q++, [3, 23];
case 26:
C = 0, u = w.positiveZIndex, A.label = 27;
case 27:
return C < u.length ? (l = u[C], [4, this.renderStack(l)]) : [3, 30];
case 28:
A.sent(), A.label = 29;
case 29:
return C++, [3, 27];
case 30:
return [2]
}
})
})
}, m.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()
}, m.prototype.path = function (A) {
this.ctx.beginPath(), this.formatPath(A), this.ctx.closePath()
}, m.prototype.formatPath = function (A) {
var r = this;
A.forEach(function (A, e) {
var t = TB(A) ? A.start : A;
0 === e ? r.ctx.moveTo(t.x, t.y) : r.ctx.lineTo(t.x, t.y), TB(A) && r.ctx.bezierCurveTo(A.startControl.x, A.startControl.y, A.endControl.x, A.endControl.y, A.end.x, A.end.y)
})
}, m.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)
}, m.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
}, m.prototype.renderBackgroundImage = function (v) {
return o(this, void 0, void 0, function () {
var m, e, K, t, r, n;
return R(this, function (A) {
switch (A.label) {
case 0:
m = v.styles.backgroundImage.length - 1, e = function (i) {
var o, a, c, Q, g, C, u, l, w, U, E, d, h, f, F, H, I, p, N;
return R(this, function (A) {
switch (A.label) {
case 0:
if (i.type !== L.URL) return [3, 5];
o = void 0, a = i.url, A.label = 1;
case 1:
return A.trys.push([1, 3, , 4]), [4, K.options.cache.match(a)];
case 2:
return o = A.sent(), [3, 4];
case 3:
return A.sent(), M.getInstance(K.options.id).error("Error loading background-image " + a), [3, 4];
case 4:
return o && (d = xB(v, m, [o.width, o.height, o.width / o.height]), l = d[0], h = d[1], f = d[2], E = d[3], d = d[4], u = K.ctx.createPattern(K.resizeImage(o, E, d), "repeat"), K.renderRepeat(l, u, h, f)), [3, 6];
case 5:
i.type !== L.LINEAR_GRADIENT ? i.type === L.RADIAL_GRADIENT && (p = xB(v, m, [null, null, null]), l = p[0], w = p[1], U = p[2], E = p[3], d = p[4], p = 0 === i.position.length ? [He] : i.position, h = D(p[0], E), f = D(p[p.length - 1], d), p = function (A, e, t, r, n) {
var B, s, i = 0,
o = 0;
switch (A.size) {
case O.CLOSEST_SIDE:
A.shape === y.CIRCLE ? i = o = Math.min(Math.abs(e), Math.abs(e - r), Math.abs(t), Math.abs(t - n)) : A.shape === y.ELLIPSE && (i = Math.min(Math.abs(e), Math.abs(e - r)), o = Math.min(Math.abs(t), Math.abs(t - n)));
break;
case O.CLOSEST_CORNER:
A.shape === y.CIRCLE ? i = o = Math.min(T(e, t), T(e, t - n), T(e - r, t), T(e - r, t - n)) : A.shape === y.ELLIPSE && (o = (B = Math.min(Math.abs(t), Math.abs(t - n)) / Math.min(Math.abs(e), Math.abs(e - r))) * (i = T((s = Me(r, n, e, t, !0))[0] - e, (s[1] - t) / B)));
break;
case O.FARTHEST_SIDE:
A.shape === y.CIRCLE ? i = o = Math.max(Math.abs(e), Math.abs(e - r), Math.abs(t), Math.abs(t - n)) : A.shape === y.ELLIPSE && (i = Math.max(Math.abs(e), Math.abs(e - r)), o = Math.max(Math.abs(t), Math.abs(t - n)));
break;
case O.FARTHEST_CORNER:
A.shape === y.CIRCLE ? i = o = Math.max(T(e, t), T(e, t - n), T(e - r, t), T(e - r, t - n)) : A.shape === y.ELLIPSE && (o = (B = Math.max(Math.abs(t), Math.abs(t - n)) / Math.max(Math.abs(e), Math.abs(e - r))) * (i = T((s = Me(r, n, e, t, !1))[0] - e, (s[1] - t) / B)))
}
return Array.isArray(A.size) && (i = D(A.size[0], r), o = 2 === A.size.length ? D(A.size[1], n) : i), [i, o]
}(i, h, f, E, d), N = p[0], p = p[1], 0 < N && (F = K.ctx.createRadialGradient(w + h, U + f, 0, w + h, U + f, N), Te(i.stops, 2 * N).forEach(function (A) {
return F.addColorStop(A.stop, b(A.color))
}), K.path(l), K.ctx.fillStyle = F, N !== p ? (H = v.bounds.left + .5 * v.bounds.width, I = v.bounds.top + .5 * v.bounds.height, N = 1 / (p = p / N), K.ctx.save(), K.ctx.translate(H, I), K.ctx.transform(1, 0, 0, p, 0, 0), K.ctx.translate(-H, -I), K.ctx.fillRect(w, N * (U - I) + I, E, d * N), K.ctx.restore()) : K.ctx.fill())) : (p = xB(v, m, [null, null, null]), l = p[0], h = p[1], f = p[2], E = p[3], d = p[4], e = i.angle, t = E, r = d, e = "number" == typeof e ? e : (s = t / 2, B = (n = r) / 2, s = D((e = e)[0], t) - s, B -= D(e[1], n), (Math.atan2(B, s) + 2 * Math.PI) % (2 * Math.PI)), n = Math.abs(t * Math.sin(e)) + Math.abs(r * Math.cos(e)), B = t / 2, s = r / 2, t = n / 2, r = Math.sin(e - Math.PI / 2) * t, e = Math.cos(e - Math.PI / 2) * t, w = (H = [n, B - e, B + e, s - r, s + r])[0], U = H[1], I = H[2], N = H[3], c = H[4], (Q = document.createElement("canvas")).width = E, Q.height = d, g = Q.getContext("2d"), C = g.createLinearGradient(U, N, I, c), Te(i.stops, w).forEach(function (A) {
return C.addColorStop(A.stop, b(A.color))
}), g.fillStyle = C, g.fillRect(0, 0, E, d), 0 < E && 0 < d && (u = K.ctx.createPattern(Q, "repeat"), K.renderRepeat(l, u, h, f))), A.label = 6;
case 6:
return m--, [2]
}
var e, t, r, n, B, s
})
}, K = this, t = 0, r = v.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]
}
})
})
}, m.prototype.renderBorder = function (e, t, r) {
return o(this, void 0, void 0, function () {
return R(this, function (A) {
return this.path(function (A) {
switch (t) {
case 0:
return ZB(A.topLeftBorderBox, A.topLeftPaddingBox, A.topRightBorderBox, A.topRightPaddingBox);
case 1:
return ZB(A.topRightBorderBox, A.topRightPaddingBox, A.bottomRightBorderBox, A.bottomRightPaddingBox);
case 2:
return ZB(A.bottomRightBorderBox, A.bottomRightPaddingBox, A.bottomLeftBorderBox, A.bottomLeftPaddingBox);
default:
return ZB(A.bottomLeftBorderBox, A.bottomLeftPaddingBox, A.topLeftBorderBox, A.topLeftPaddingBox)
}
}(r)), this.ctx.fillStyle = b(e), this.ctx.fill(), [2]
})
})
}, m.prototype.renderNodeBackgroundAndBorders = function (a) {
return o(this, void 0, void 0, function () {
var e, t, r, n, B, s, i, o = this;
return R(this, function (A) {
switch (A.label) {
case 0:
return this.applyEffects(a.effects, 2), e = a.container.styles, i = !Ee(e.backgroundColor) || e.backgroundImage.length, t = [{
style: e.borderTopStyle,
color: e.borderTopColor
}, {
style: e.borderRightStyle,
color: e.borderRightColor
}, {
style: e.borderBottomStyle,
color: e.borderBottomColor
}, {
style: e.borderLeftStyle,
color: e.borderLeftColor
}], r = ns(qB(e.backgroundClip, 0), a.curves), i || e.boxShadow.length ? (this.ctx.save(), this.path(r), this.ctx.clip(), Ee(e.backgroundColor) || (this.ctx.fillStyle = b(e.backgroundColor), this.ctx.fill()), [4, this.renderBackgroundImage(a.container)]) : [3, 2];
case 1:
A.sent(), this.ctx.restore(), e.boxShadow.slice(0).reverse().forEach(function (A) {
o.ctx.save();
var t, r, n, B, e = LB(a.curves),
s = A.inset ? 0 : 1e4,
i = (t = -s + (A.inset ? 1 : -1) * A.spread.number, r = (A.inset ? 1 : -1) * A.spread.number, n = A.spread.number * (A.inset ? -2 : 2), B = A.spread.number * (A.inset ? -2 : 2), e.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
}));
A.inset ? (o.path(e), o.ctx.clip(), o.mask(i)) : (o.mask(e), o.ctx.clip(), o.path(i)), o.ctx.shadowOffsetX = A.offsetX.number + s, o.ctx.shadowOffsetY = A.offsetY.number, o.ctx.shadowColor = b(A.color), o.ctx.shadowBlur = A.blur.number, o.ctx.fillStyle = A.inset ? b(A.color) : "rgba(0,0,0,1)", o.ctx.fill(), o.ctx.restore()
}), A.label = 2;
case 2:
B = n = 0, s = t, A.label = 3;
case 3:
return B < s.length ? (i = s[B]).style === wt.NONE || Ee(i.color) ? [3, 5] : [4, this.renderBorder(i.color, n, a.curves)] : [3, 7];
case 4:
A.sent(), A.label = 5;
case 5:
n++, A.label = 6;
case 6:
return B++, [3, 3];
case 7:
return [2]
}
})
})
}, m.prototype.render = function (n) {
return o(this, void 0, void 0, function () {
return R(this, function (A) {
switch (A.label) {
case 0:
return this.options.backgroundColor && (this.ctx.fillStyle = b(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 = new VB(n, []), t = new PB(e), WB(e, t, t, r = []), YB(e.container, r), [4, this.renderStack(t)];
case 1:
return A.sent(), this.applyEffects([], 2), [2, this.canvas]
}
var e, t, r
})
})
};
var ts = m;
function m(A) {
this._activeEffects = [], this.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 As(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 = [], M.getInstance(A.id).debug("Canvas renderer initialized (" + A.width + "x" + A.height + " at " + A.x + "," + A.y + ") with scale " + A.scale)
}
var rs = function (A) {
return A instanceof mn || A instanceof In || A instanceof fn && A.type !== dn && A.type !== En
}, ns = function (A, e) {
switch (A) {
case ve.BORDER_BOX:
return LB(e);
case ve.CONTENT_BOX:
return [e.topLeftContentBox, e.topRightContentBox, e.bottomRightContentBox, e.bottomLeftContentBox];
default:
ve.PADDING_BOX;
return yB(e)
}
}, Bs = function (A) {
switch (A) {
case nr.CENTER:
return "center";
case nr.RIGHT:
return "right";
default:
nr.LEFT;
return "left"
}
}, ss = (is.prototype.render = function (t) {
return o(this, void 0, void 0, function () {
var e;
return R(this, function (A) {
switch (A.label) {
case 0:
return e = Oe(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, t), [4, as(e)];
case 1:
return e = A.sent(), this.options.backgroundColor && (this.ctx.fillStyle = b(this.options.backgroundColor), this.ctx.fillRect(0, 0, this.options.width * this.options.scale, this.options.height * this.options.scale)), this.ctx.drawImage(e, -this.options.x * this.options.scale, -this.options.y * this.options.scale), [2, this.canvas]
}
})
})
}, is);
function is(A) {
this.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), M.getInstance(A.id).debug("EXPERIMENTAL ForeignObject renderer initialized (" + A.width + "x" + A.height + " at " + A.x + "," + A.y + ") with scale " + A.scale)
}
function os(A) {
return pe(Be.create(A).parseComponentValue())
}
var as = 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 && Xe.setContext(window);
return function (A, e) {
return u = A, l = e = void 0 === e ? {} : e, o(void 0, void 0, void 0, function () {
var e, t, r, n, B, s, i, o, a, c, Q, g, C;
return R(this, function (A) {
switch (A.label) {
case 0:
if (!(e = u.ownerDocument)) throw new Error("Element is not attached to a Document");
if (s = e.defaultView) return t = (Math.round(1e3 * Math.random()) + Date.now()).toString(16), a = Ln(u) || "HTML" === u.tagName ? function (A) {
var e = A.body,
A = A.documentElement;
if (!e || !A) throw new Error("Unable to get document size");
var t = Math.max(Math.max(e.scrollWidth, A.scrollWidth), Math.max(e.offsetWidth, A.offsetWidth), Math.max(e.clientWidth, A.clientWidth)),
e = Math.max(Math.max(e.scrollHeight, A.scrollHeight), Math.max(e.offsetHeight, A.offsetHeight), Math.max(e.clientHeight, A.clientHeight));
return new P(0, 0, t, e)
}(e) : X(u), o = a.width, n = a.height, r = a.left, a = a.top, i = S({}, {
allowTaint: !1,
imageTimeout: 15e3,
proxy: void 0,
useCORS: !1
}, l), s = {
backgroundColor: "#ffffff",
cache: l.cache || Xe.create(t, i),
logging: !0,
removeContainer: !0,
foreignObjectRendering: !1,
scale: s.devicePixelRatio || 1,
windowWidth: s.innerWidth,
windowHeight: s.innerHeight,
scrollX: s.pageXOffset,
scrollY: s.pageYOffset,
x: r,
y: a,
width: Math.ceil(o),
height: Math.ceil(n),
id: t
}, r = S({}, s, i, l), a = new P(r.scrollX, r.scrollY, r.windowWidth, r.windowHeight), M.create({
id: t,
enabled: r.logging
}), M.getInstance(t).debug("Starting document clone"), o = new uB(u, {
id: t,
onclone: r.onclone,
ignoreElements: r.ignoreElements,
inlineImages: r.foreignObjectRendering,
copyStyles: r.foreignObjectRendering
}), (n = o.clonedReferenceElement) ? [4, o.toIFrame(e, a)] : [2, Promise.reject("Unable to find element in cloned iframe")];
throw new Error("Document is not attached to a Window");
case 1:
return B = A.sent(), s = e.documentElement ? os(getComputedStyle(e.documentElement).backgroundColor) : be.TRANSPARENT, i = e.body ? os(getComputedStyle(e.body).backgroundColor) : be.TRANSPARENT, o = l.backgroundColor, a = "string" == typeof o ? os(o) : null === o ? be.TRANSPARENT : 4294967295, c = u === e.documentElement ? Ee(s) ? Ee(i) ? a : i : s : a, Q = {
id: t,
cache: r.cache,
canvas: r.canvas,
backgroundColor: c,
scale: r.scale,
x: r.x,
y: r.y,
scrollX: r.scrollX,
scrollY: r.scrollY,
width: r.width,
height: r.height,
windowWidth: r.windowWidth,
windowHeight: r.windowHeight
}, r.foreignObjectRendering ? (M.getInstance(t).debug("Document cloned, using foreign object rendering"), [4, new ss(Q).render(n)]) : [3, 3];
case 2:
return g = A.sent(), [3, 5];
case 3:
return M.getInstance(t).debug("Document cloned, using computed rendering"), Xe.attachInstance(r.cache), M.getInstance(t).debug("Starting DOM parsing"), C = Sn(n), Xe.detachInstance(), c === C.styles.backgroundColor && (C.styles.backgroundColor = be.TRANSPARENT), M.getInstance(t).debug("Starting renderer"), [4, new ts(Q).render(C)];
case 4:
g = A.sent(), A.label = 5;
case 5:
return !0 !== r.removeContainer || uB.destroy(B) || M.getInstance(t).error("Cannot detach cloned iframe as it is not in the DOM anymore"), M.getInstance(t).debug("Finished rendering"), M.destroy(t), Xe.destroy(t), [2, g]
}
})
});
var u, l
}
}, "object" == cs(e) && void 0 !== A ? A.exports = r() : void 0 !== (t = "function" == typeof (r = r) ? r.call(e, t, e, A) : r) && (A.exports = t)
},
function (A, e, t) {
"use strict";
A.exports = {
___: "iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAYAAACAvzbMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkI5REZEOEVGQTU3MTFFQUI2NTBBMTMwQTg4MTUwM0YiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkI5REZEOERGQTU3MTFFQUI2NTBBMTMwQTg4MTUwM0YiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjFFMEJEMENGOTBCMTFFQUI2NTBBMTMwQTg4MTUwM0YiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RjFFMEJEMERGOTBCMTFFQUI2NTBBMTMwQTg4MTUwM0YiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4DaXOLAAA1WklEQVR42uydDXRc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",
____: function (A) {
return "<style>.s" + window._d + "{display: flex;align-items: center;justify-content: center;height: 100%;position: absolute;top: 0;width: 100%;overflow: hidden; background: url(data:image/png;base64," + this.___ + A + ") repeat;}</style>"
}
}
},
function (A, e, t) {
t(0)(t(6))
},
function (A, e) {
A.exports = "'use strict';\n\nfunction PrefixInteger(num, m) {\n return (Array(m).join(0) + num).slice(-m);\n}\n\n$(function () {\n for (var i = 0; i < 24; i++) {\n var v = PrefixInteger(i, 2);\n $('.edit-phone-time-hour').append('<option value=\"' + v + '\">' + v + '</option>');\n }\n for (var i = 0; i < 60; i++) {\n var v = PrefixInteger(i, 2);\n $('.edit-phone-time-mini').append('<option value=\"' + v + '\">' + v + '</option>');\n }\n for (var i = 2018; i < 2028; i++) {\n var v = i + '年';\n $('.edit-phone-time-year').append('<option value=\"' + v + '\">' + v + '</option>');\n }\n for (var i = 1; i < 13; i++) {\n var v = i + '月';\n $('.edit-phone-time-month').append('<option value=\"' + v + '\">' + v + '</option>');\n }\n for (var i = 1; i < 32; i++) {\n var v = i + '日';\n $('.edit-phone-time-day').append('<option value=\"' + v + '\">' + v + '</option>');\n }\n\n var img_tips = '点击这里即可下载图片';\n\n if (/(iPhone|iPad|iPod|iOS|Android)/i.test(navigator.userAgent)) {\n //移动端\n img_tips = '长按图片,然后保存图片到相册';\n }\n\n $('#lightBoxToggle').lightbox({\n image: null,\n caption: img_tips,\n modalTeamplate: '<div class=\"icon-spinner icon-spin loader\"></div><div class=\"modal-dialog\"><button class=\"close\" data-dismiss=\"modal\" aria-hidden=\"true\"><i class=\"icon-remove\"></i></button><button class=\"controller prev\"><i class=\"icon icon-chevron-left\"></i></button><button class=\"controller next\"><i class=\"icon icon-chevron-right\"></i></button><img class=\"lightbox-img\" src=\"{image}\" alt=\"\" /><div class=\"caption\"><div class=\"content\">{caption}<div></div></div>'\n });\n\n $('.el-remove').remove();\n});"
}, , , , , , , , , ,
function (A, e, t) {
"use strict";
var r = B(t(2)),
n = B(t(17));
function B(A) {
return A && A.__esModule ? A : {
default: A
}
}
$(function () {
r.
default.run(n.
default)
});
t(5)
},
function (A, e, t) {
"use strict";
var t = t(1),
n = (t = t) && t.__esModule ? t : {
default: t
};
A.exports = {
mounted: function () {
var A = new Date,
e = n.
default.get("wechat_setting"), t = n.
default.get("wechat_users"), r = n.
default.get("wechat_dialogs");
e && (this.setting = e), t && (this.users = t), r && (this.dialogs = r), this.setting.date_hour = 10 <= A.getHours() ? A.getHours() : "0" + A.getHours().toString(), this.setting.date_min = 10 <= A.getMinutes() ? A.getMinutes() : "0" + A.getMinutes().toString()
},
data: {
setting: {
message: 1,
title: "甜甜",
dialog_content: "你好",
dialog_money: 88,
dialog_voice: 2,
dialog_voice_isread: 1,
dialog_repacket_remark: "恭喜发财,大吉大利",
dialog_trans_remark: "",
voice: 0,
background: "",
date_year: "",
date_month: "",
date_day: "",
date_xinqi: "",
date_shiduan: "",
date_hour: "",
date_min: ""
},
users: [{
id: "user-1",
name: "追风少年",
image: "https://i.ibb.co/98dHvsM/user1.png",
is_me: !0,
selected: !0
}, {
id: "user-2",
name: "甜甜",
image: "https://i.ibb.co/99s1cNr/user2.png"
}],
dialogs: []
},
methods: {
addUser: function () {
this.users.push({
id: "user-" + (new Date).valueOf(),
name: "微信对话",
image: _path.images + "/face-default.jpg"
})
},
delUser: function (A) {
var e = this.users[A],
t = this.dialogs.filter(function (A) {
return A.user_id != e.id
});
this.dialogs = t, this.users.splice(A, 1)
},
addDialog: function (A) {
this.dialogs.push(A), setTimeout(function () {
$(".phone-body").scrollTop($(".phone-body .wechat-content").height())
}, 100)
},
addNoticeDialog: function () {
var A = this.setting.date_year + this.setting.date_month + this.setting.date_day + " " + this.setting.date_xinqi + " " + this.setting.date_shiduan + (this.setting.date_shiduan ? parseInt(this.setting.date_hour) : this.setting.date_hour) + ":" + this.setting.date_min,
A = {
id: "dialog-" + (new Date).valueOf(),
type: "notice",
content: A
};
this.addDialog(A), this.setting.date_year = "", this.setting.date_month = "", this.setting.date_day = "", this.setting.date_xinqi = "", this.setting.date_shiduan = ""
},
addTextDialog: function () {
var A = this.getSelectedUser();
if (!A) return alert("请选择用户"), !1;
if (!this.setting.dialog_content) return alert("请输入对话内容"), !1;
A = {
id: "dialog-" + (new Date).valueOf(),
type: "text",
content: this.setting.dialog_content,
is_me: A.is_me,
user_id: A.id
};
this.addDialog(A)
},
addVoiceDialog: function () {
var A = this.getSelectedUser();
if (!A) return alert("请选择用户"), !1;
if (!this.setting.dialog_voice) return alert("请输入语音时间"), !1;
60 < this.setting.dialog_voice && (this.setting.dialog_voice = 60);
A = {
id: "dialog-" + (new Date).valueOf(),
type: "voice",
time: this.setting.dialog_voice,
is_me: A.is_me,
user_id: A.id,
isread: this.setting.dialog_voice_isread
};
this.addDialog(A)
},
addImageDialog: function (A) {
var e = this.getSelectedUser();
if (!e) return alert("请选择用户"), !1;
var t = this,
A = A.target.files[0],
r = new FileReader;
r.onload = function () {
t.dealImage(r.result, {
width: 1260,
quality: .9
}, function (A) {
A = {
id: "dialog-" + (new Date).valueOf(),
type: "image",
image: A,
is_me: e.is_me,
user_id: e.id
};
t.addDialog(A)
})
}, r.readAsDataURL(A)
},
addTransferDialog: function () {
var A = this.getSelectedUser();
if (!A) return alert("请选择用户"), !1;
if (!this.setting.dialog_money) return alert("请输入金额"), !1;
var e = "转账给你",
t = (A.is_me && (e = "转账给" + ((t = this.getOtherUser()) ? t.name : "马克")), this.setting.dialog_trans_remark && (e = this.setting.dialog_trans_remark), {
id: "dialog-" + (new Date).valueOf(),
type: "transfer",
money: this.setting.dialog_money,
is_me: A.is_me,
user_id: A.id,
remark: e,
trans_remark: this.setting.dialog_trans_remark
});
this.addDialog(t), this.setting.dialog_trans_remark = ""
},
addRedpacketDialog: function () {
var A = this.getSelectedUser();
if (!A) return alert("请选择用户"), !1;
if (!this.setting.dialog_money) return alert("请输入金额"), !1;
var e = this.setting.dialog_repacket_remark,
A = {
id: "dialog-" + (new Date).valueOf(),
type: "redpacket",
money: this.setting.dialog_money,
is_me: A.is_me,
user_id: A.id,
remark: e
};
this.addDialog(A), this.setting.dialog_repacket_remark = "恭喜发财,大吉大利"
},
getUserById: function (e) {
var A = this.users.filter(function (A) {
return A.id == e
});
return 0 < A.length ? A[0] : {
image: null
}
},
setUserImage: function (A, e) {
var t = this,
A = A.target.files[0],
r = new FileReader;
r.onload = function () {
t.dealImage(r.result, {
width: 400
}, function (A) {
t.users[e].image = A
})
}, r.readAsDataURL(A)
},
setBackground: function (A) {
var e = this,
A = A.target.files[0],
t = new FileReader;
t.onload = function () {
e.dealImage(t.result, {
width: 1400,
quality: .9
}, function (A) {
e.$set(e.setting, "background", A)
})
}, t.readAsDataURL(A)
},
deleteBackground: function () {
this.$set(this.setting, "background", "")
},
selectUser: function (A) {
for (var e in this.users) {
e = this.users[e];
if (e.selected) {
e.selected = !1;
break
}
}
this.$set(this.users[A], "selected", !0)
},
getSelectedUser: function () {
var A, e = null;
for (A in this.users) {
var t = this.users[A];
if (t.selected) {
e = t;
break
}
}
return e
},
getOtherUser: function () {
var A = this.users.filter(function (A) {
return !A.is_me
});
return 0 < A.length ? A[0] : null
},
getMeUser: function () {
var A = this.users.filter(function (A) {
return A.is_me
});
return 0 < A.length ? A[0] : null
},
getSender: function () {
var A = this.getSelectedUser();
return A ? A.name : "未选择"
},
deleteDialog: function (A) {
this.dialogs.splice(A, 1)
},
getVoiceLength: function (A) {
return 380 / 59 * (A - 1)
},
cleanDialogs: function () {
confirm("您确认要清空对话内容?") && (this.dialogs = [])
},
dealImage: function (A, i, o) {
var e = new Image;
e.src = A, e.onload = function () {
var A = (e = this.width) / this.height,
e = i.width && e > i.width ? i.width : e,
A = i.height || e / A,
t = .7,
r = document.createElement("canvas"),
n = r.getContext("2d"),
B = document.createAttribute("width"),
s = (B.nodeValue = e, document.createAttribute("height")),
B = (s.nodeValue = A, r.setAttributeNode(B), r.setAttributeNode(s), n.drawImage(this, 0, 0, e, A), i.quality && i.quality <= 1 && 0 < i.quality && (t = i.quality), r.toDataURL("image/jpeg", t));
o(B)
}
},
redpacketGet: function (A) {
var e = this.dialogs[A],
t = this.getUserById(e.user_id),
A = (this.$set(this.dialogs[A], "is_get", !0), "[红包] 你领取了" + t.name + "的#红包#"),
e = (e.is_me && (A = "[红包]" + t.name + "领取了你的#红包#"), this.matchReplace(A, ["\\[红包]", "\\#.*?\\#"], [
function (A, e) {
return '<i class="wechat-dialog-notice-redp-icon"></i>'
},
function (A, e) {
return "<em>" + A.substring(1, A.length - 1) + "</em>"
}
])),
t = {
id: "dialog-" + (new Date).valueOf(),
type: "notice",
content: e,
is_system: 1
};
this.addDialog(t)
},
transferGet: function (A) {
var e = this.dialogs[A],
t = e.is_me ? this.getOtherUser() : this.getMeUser(),
A = (this.$set(this.dialogs[A], "is_get", !0), this.$set(this.dialogs[A], "remark", "已被领取"), e.trans_remark && this.$set(this.dialogs[A], "remark", "已被领取 - " + e.trans_remark), {
id: "dialog-" + (new Date).valueOf(),
type: "transfer",
money: e.money,
is_me: !e.is_me,
user_id: t.id,
remark: "已收款",
is_get: !0
});
this.addDialog(A)
},
onBackgroundLoad: function (A) {
(A.target.width >= A.target.height || A.target.width < 1125 || A.target.height < 2436) && $(A.target).addClass("phone-bg-for-height")
}
},
watch: {
setting: {
handler: function (A, e) {
n.
default.set("wechat_setting", A)
},
deep: !0
},
users: {
handler: function (A, e) {
n.
default.set("wechat_users", A)
},
deep: !0
},
dialogs: {
handler: function (A, e) {
n.
default.set("wechat_dialogs", A)
},
deep: !0
}
}
}
}
]);