var CKFinder = function () {
function __internalInit(e) {
return e = e || {}, e['demoMessage'] = 'This is a demo version of CKFinder 3', e['hello'] = 'Hello fellow cracker! We are really sad that you are trying to crack our application - we put lots of effort to create it. ' + 'Would you like to get a free CKFinder license? Feel free to submit your translation! http://docs.cksource.com/ckfinder3/#!/guide/dev_translations', e['isDemo'] = !0, e;
}
function internalCKFinderInit(e, t, n) {
var i = t.getElementsByTagName('head')[0], r = t.createElement('script');
r[r.innerText ? 'innerText' : 'innerHTML'] = n + '.CKFinder._setup( window, document );CKFinder.start(' + JSON.stringify(e) + ');', i.appendChild(r);
}
function configOrDefault(e, t) {
return e ? e : t;
}
function createUrlParams(e) {
var t = [];
for (var n in e)
t.push(encodeURIComponent(n) + '=' + encodeURIComponent(e[n]));
return '?' + t.join('&');
}
function extendObject(e, t) {
for (var n in t)
t.hasOwnProperty(n) && (e[n] = t[n]);
return e;
}
function getCookie(e) {
e = e.toLowerCase();
for (var t = window.document.cookie.split(';'), n = 0; n < t.length; n++) {
var i = t[n].split('='), r = decodeURIComponent(i[0].trim().toLowerCase()), o = i.length > 1 ? i[1] : '';
if (r === e)
return decodeURIComponent(o);
}
return null;
}
function setCookie(e, t) {
window.document.cookie = encodeURIComponent(e) + '=' + encodeURIComponent(t) + ';path=/';
}
function updateIOSConfig(e, t) {
e._iosWidgetHeight = parseInt(getComputedStyle(t).height), e._iosWidgetWidth = parseInt(getComputedStyle(t).width);
}
function checkOnInit(e, t) {
var n = t.navigator.userAgent;
if ((n.indexOf('MSIE ') > 0 || n.indexOf('Trident/') > 0 || n.indexOf('Edge/') > 0) && t.addEventListener('ckfinderReady', function (e) {
setTimeout(function () {
var t = e.detail.ckfinder, n = getCookie('ckCsrfToken');
n || (n = t.request('csrf:getToken'), setCookie('ckCsrfToken', n)), t.request('internal:csrf:setParentWindowToken', { token: n });
}, 1000);
}), e && !e._omitCheckOnInit && 'function' == typeof e.onInit) {
var i = e.onInit;
delete e.onInit, t.addEventListener('ckfinderReady', function (t) {
e._initCalled || (e._initCalled = !0, i(t.detail.ckfinder));
});
}
}
function S(e) {
for (var t = '', n = e.charCodeAt(0), i = 1; i < e.length; ++i)
t += String.fromCharCode(e.charCodeAt(i) ^ i + n & 127);
return t;
}
function isIE9() {
var e, t, n = -1;
return navigator.appName == 'Microsoft Internet Explorer' && (e = navigator.userAgent, t = new RegExp('MSIE ([0-9]{1,}[.0-9]{0,})'), null !== t.exec(e) && (n = parseFloat(RegExp.$1))), 9 === n;
}
var connectors = {
php: './core/connector/php/connector.php',
net: './core/connector/php/connector.php'
}, connector = 'net', basePath = function () {
if (parent && parent.CKFinder && parent.CKFinder.basePath)
return parent.CKFinder.basePath;
var e, t, n, i = document.getElementsByTagName('script');
for (e = 0; e < i.length && (t = i[e], n = void 0 !== t.getAttribute.length ? t.src : t.getAttribute('src'), !n || n.split('/').slice(-1)[0].indexOf('ckfinder.js') === -1); e++);
return n.split('/').slice(0, -1).join('/') + '/';
}(), Modal = {
open: function (e) {
function t(e, t, n) {
t.forEach(function (t) {
e.addEventListener(t, n);
});
}
function n(e, t, n) {
t.forEach(function (t) {
e.removeEventListener(t, n);
});
}
function i(e) {
return 0 === e.type.indexOf('touch') ? {
x: e.touches[0].pageX,
y: e.touches[0].pageY
} : {
x: document.all ? window.event.clientX : e.pageX,
y: document.all ? window.event.clientX : e.pageY
};
}
function r(e) {
var t = i(e);
p = t.x, v = t.y;
var n = v - E;
y.style.left = p - x + 'px', y.style.top = (n < 0 ? 0 : n) + 'px';
}
function o(e) {
var t, n, r = i(e);
f ? (t = l - (I - r.x), n = u - (R - r.y), t > 200 && (M.style.width = t + 'px'), n > 200 && (M.style.height = n + 'px')) : h && (t = l + (I - r.x), n = u - (R - r.y), t > 200 && (M.style.width = t + 'px', y.style.left = x - (I - r.x) + 'px'), n > 200 && (M.style.height = n + 'px'));
}
function s() {
T.parentNode === M && M.removeChild(T), f = !1, h = !1, n(document, [
'mousemove',
'touchmove'
], o), n(document, [
'mouseup',
'touchend'
], s);
}
function a(e) {
e.preventDefault();
var n = i(e);
I = n.x, R = n.y, l = M.clientWidth, u = M.clientHeight, M.appendChild(T), t(document, [
'mousemove',
'touchmove'
], o), t(document, [
'mouseup',
'touchend'
], s);
}
if (e = e || {}, !Modal.div) {
Modal.heightAdded = 48, Modal.widthAdded = 2;
var l, u, c = Math.min(configOrDefault(e.width, 1000), window.innerWidth - Modal.widthAdded), d = Math.min(configOrDefault(e.height, 700), window.innerHeight - Modal.heightAdded), f = !1, h = !1, g = !1, p = 0, v = 0, m = e.width, w = e.height;
e.width = e.height = '100%';
var y = Modal.div = document.createElement('div');
y.id = 'ckf-modal', y.style.position = 'fixed', y.style.top = (document.documentElement.clientHeight - Modal.heightAdded) / 2 - d / 2 + 'px', y.style.left = (document.documentElement.clientWidth - Modal.widthAdded) / 2 - c / 2 + 'px', y.style.background = '#fff', y.style.border = '1px solid #aaa', y.style.boxShadow = '3px 3px 5px rgba(0,0,0,0.2)', y.style.borderTopLeftRadius = y.style.borderTopRightRadius = '5px', y.style.zIndex = 8999, y.innerHTML = '
XML 地图' + ''), r.close(), ckfPopupWindow.focus());
}
e = e || {}, window.CKFinder._popupOptions = e;
var n = isIE9() ? window.CKFinder.basePath + 'ckfinder.html' : 'about:blank', i = 'location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes';
i += ',width=' + configOrDefault(e.width, 1000), i += ',height=' + configOrDefault(e.height, 700), i += ',top=50', i += ',left=100', 'undefined' == typeof ckfPopupWindow || ckfPopupWindow.closed || ckfPopupWindow.close();
var r;
try {
var o = 'CKFPopup' + Date.now();
ckfPopupWindow = window.open(n, o, i, !0);
} catch (e) {
return;
}
return /iPad|iPhone|iPod/.test(navigator.platform) ? setTimeout(t, 100) : t(), ckfPopupWindow;
},
start: function (e) {
if (!e) {
var t = window.opener, n = {};
e = {};
var i = window.location.search.substring(1);
if (i)
for (var r = i.split('&'), o = 0; o < r.length; ++o) {
var s = r[o].split('=');
n[s[0]] = s[1] || null;
}
if (n.popup && (window.isCKFinderPopup = !0), t && n.configId && t.CKFinder && t.CKFinder._popupOptions) {
var a = decodeURIComponent(n.configId);
e = t.CKFinder._popupOptions[a] || {}, e._omitCheckOnInit = !0;
}
}
CKFinder._setup(window, document), checkOnInit(e, window), CKFinder.start(e);
},
setupCKEditor: function (e, t, n) {
function i(e) {
if (/^(http(s)?:)?\/\/.+/i.test(e))
return e;
0 !== e.indexOf('/') && (e = '/' + e);
var t = window.parent ? window.parent.location : window.location, n = t.protocol + '//' + t.host;
return n + e;
}
if (!e) {
for (var r in CKEDITOR.instances)
CKFinder.setupCKEditor(CKEDITOR.instances[r]);
return void CKEDITOR.on('instanceCreated', function (e) {
CKFinder.setupCKEditor(e.editor);
});
}
e.config.filebrowserBrowseUrl = window.CKFinder.basePath + 'ckfinder.html', n = extendObject({
command: 'QuickUpload',
type: 'Files'
}, n), t = extendObject(window.CKFinder._config || {}, t);
var o = window.CKFinder._connectors[window.CKFinder.connector];
'/' !== o.charAt(0) && (o = window.CKFinder.basePath + o), o = i(o), Object.keys(t).length && (window.CKFinder._popupOptions || (window.CKFinder._popupOptions = {}), t._omitCheckOnInit = !0, window.CKFinder._popupOptions[e.name] = t, e.config.filebrowserBrowseUrl += '?popup=1&configId=' + encodeURIComponent(e.name), t.connectorPath && (o = i(t.connectorPath))), e.config.filebrowserUploadUrl = o + createUrlParams(n);
},
_setup: function (window, document) {
window.CKFinder = window.CKFinder || {}, window.CKFinder.connector = connector, window.CKFinder._connectors = connectors, window.CKFinder.basePath = function () {
if (window.parent && window.parent.CKFinder && window.parent.CKFinder.basePath)
return window.parent.CKFinder.basePath;
for (var e, t, n = document.getElementsByTagName('script'), i = 0; i < n.length && (e = n[i], t = void 0 !== e.getAttribute.length ? e.src : e.getAttribute('src'), !t || t.split('/').slice(-1)[0].indexOf('ckfinder.js') === -1); i++);
return t.split('/').slice(0, -1).join('/') + '/';
}();
var CKFinder;
!function () {
if (!CKFinder || !CKFinder.requirejs) {
CKFinder ? require = CKFinder : CKFinder = {};
var requirejs, require, define;
!function (global) {
function isFunction(e) {
return '[object Function]' === ostring.call(e);
}
function isArray(e) {
return '[object Array]' === ostring.call(e);
}
function each(e, t) {
if (e) {
var n;
for (n = 0; n < e.length && (!e[n] || !t(e[n], n, e)); n += 1);
}
}
function eachReverse(e, t) {
if (e) {
var n;
for (n = e.length - 1; n > -1 && (!e[n] || !t(e[n], n, e)); n -= 1);
}
}
function hasProp(e, t) {
return hasOwn.call(e, t);
}
function getOwn(e, t) {
return hasProp(e, t) && e[t];
}
function eachProp(e, t) {
var n;
for (n in e)
if (hasProp(e, n) && t(e[n], n))
break;
}
function mixin(e, t, n, i) {
return t && eachProp(t, function (t, r) {
!n && hasProp(e, r) || (!i || 'object' != typeof t || !t || isArray(t) || isFunction(t) || t instanceof RegExp ? e[r] = t : (e[r] || (e[r] = {}), mixin(e[r], t, n, i)));
}), e;
}
function bind(e, t) {
return function () {
return t.apply(e, arguments);
};
}
function scripts() {
return document.getElementsByTagName('script');
}
function defaultOnError(e) {
throw e;
}
function getGlobal(e) {
if (!e)
return e;
var t = global;
return each(e.split('.'), function (e) {
t = t[e];
}), t;
}
function makeError(e, t, n, i) {
var r = new Error(t + '\nhttp://requirejs.org/docs/errors.html#' + e);
return r.requireType = e, r.requireModules = i, n && (r.originalError = n), r;
}
function newContext(e) {
function t(e) {
var t, n;
for (t = 0; t < e.length; t++)
if (n = e[t], '.' === n)
e.splice(t, 1), t -= 1;
else if ('..' === n) {
if (0 === t || 1 === t && '..' === e[2] || '..' === e[t - 1])
continue;
t > 0 && (e.splice(t - 1, 2), t -= 2);
}
}
function n(e, n, i) {
var r, o, s, a, l, u, c, d, f, S, h, g, p = n && n.split('/'), v = E.map, m = v && v['*'];
if (e && (e = e.split('/'), c = e.length - 1, E.nodeIdCompat && jsSuffixRegExp.test(e[c]) && (e[c] = e[c].replace(jsSuffixRegExp, '')), '.' === e[0].charAt(0) && p && (g = p.slice(0, p.length - 1), e = g.concat(e)), t(e), e = e.join('/')), i && v && (p || m)) {
s = e.split('/');
e:
for (a = s.length; a > 0; a -= 1) {
if (u = s.slice(0, a).join('/'), p)
for (l = p.length; l > 0; l -= 1)
if (o = getOwn(v, p.slice(0, l).join('/')), o && (o = getOwn(o, u))) {
d = o, f = a;
break e;
}
!S && m && getOwn(m, u) && (S = getOwn(m, u), h = a);
}
!d && S && (d = S, f = h), d && (s.splice(0, f, d), e = s.join('/'));
}
return r = getOwn(E.pkgs, e), r ? r : e;
}
function i(e) {
isBrowser && each(scripts(), function (t) {
if (t.getAttribute('data-requiremodule') === e && t.getAttribute('data-requirecontext') === C.contextName)
return t.parentNode.removeChild(t), !0;
});
}
function r(e) {
var t = getOwn(E.paths, e);
if (t && isArray(t) && t.length > 1)
return t.shift(), C.require.undef(e), C.makeRequire(null, { skipMap: !0 })([e]), !0;
}
function o(e) {
var t, n = e ? e.indexOf('!') : -1;
return n > -1 && (t = e.substring(0, n), e = e.substring(n + 1, e.length)), [
t,
e
];
}
function s(e, t, i, r) {
var s, a, l, u, c = null, d = t ? t.name : null, f = e, h = !0, g = '';
return e || (h = !1, e = '_@r' + (B += 1)), u = o(e), c = u[0], e = u[1], c && (c = n(c, d, r), a = getOwn(I, c)), e && (c ? g = a && a.normalize ? a.normalize(e, function (e) {
return n(e, d, r);
}) : e.indexOf('!') === -1 ? n(e, d, r) : e : (g = n(e, d, r), u = o(g), c = u[0], g = u[1], i = !0, s = C.nameToUrl(g))), l = !c || a || i ? '' : '_unnormalized' + (A += 1), {
prefix: c,
name: g,
parentMap: t,
unnormalized: !!l,
url: s,
originalName: f,
isDefine: h,
id: (c ? c + '!' + g : g) + l
};
}
function a(e) {
var t = e.id, n = getOwn(_, t);
return n || (n = _[t] = new C.Module(e)), n;
}
function l(e, t, n) {
var i = e.id, r = getOwn(_, i);
!hasProp(I, i) || r && !r.defineEmitComplete ? (r = a(e), r.error && t === 'error' ? n(r.error) : r.on(t, n)) : 'defined' === t && n(I[i]);
}
function u(e, t) {
var n = e.requireModules, i = !1;
t ? t(e) : (each(n, function (t) {
var n = getOwn(_, t);
n && (n.error = e, n.events.error && (i = !0, n.emit('error', e)));
}), i || req.onError(e));
}
function c() {
globalDefQueue.length && (each(globalDefQueue, function (e) {
var t = e[0];
'string' == typeof t && (C.defQueueMap[t] = !0), T.push(e);
}), globalDefQueue = []);
}
function d(e) {
delete _[e], delete F[e];
}
function f(e, t, n) {
var i = e.map.id;
e.error ? e.emit('error', e.error) : (t[i] = !0, each(e.depMaps, function (i, r) {
var o = i.id, s = getOwn(_, o);
!s || e.depMatched[r] || n[o] || (getOwn(t, o) ? (e.defineDep(r, I[o]), e.check()) : f(s, t, n));
}), n[i] = !0);
}
function h() {
var e, t, n = 1000 * E.waitSeconds, o = n && C.startTime + n < new Date().getTime(), s = [], a = [], l = !1, c = !0;
if (!w) {
if (w = !0, eachProp(F, function (e) {
var n = e.map, u = n.id;
if (e.enabled && (n.isDefine || a.push(e), !e.error))
if (!e.inited && o)
r(u) ? (t = !0, l = !0) : (s.push(u), i(u));
else if (!e.inited && e.fetched && n.isDefine && (l = !0, !n.prefix))
return c = !1;
}), o && s.length)
return e = makeError('timeout', 'Load timeout for modules: ' + s, null, s), e.contextName = C.contextName, u(e);
c && each(a, function (e) {
f(e, {}, {});
}), o && !t || !l || !isBrowser && !isWebWorker || x || (x = setTimeout(function () {
x = 0, h();
}, 50)), w = !1;
}
}
function g(e) {
hasProp(I, e[0]) || a(s(e[0], null, !0)).init(e[1], e[2]);
}
function p(e, t, n, i) {
e.detachEvent && !isOpera ? i && e.detachEvent(i, t) : e.removeEventListener(n, t, !1);
}
function v(e) {
var t = e.currentTarget || e.srcElement;
return p(t, C.onScriptLoad, 'load', 'onreadystatechange'), p(t, C.onScriptError, 'error'), {
node: t,
id: t && t.getAttribute('data-requiremodule')
};
}
function m() {
var e;
for (c(); T.length;) {
if (e = T.shift(), null === e[0])
return u(makeError('mismatch', 'Mismatched anonymous define() module: ' + e[e.length - 1]));
g(e);
}
C.defQueueMap = {};
}
var w, y, C, b, x, E = {
waitSeconds: 7,
baseUrl: './',
paths: {},
bundles: {},
pkgs: {},
shim: {},
config: {}
}, _ = {}, F = {}, M = {}, T = [], I = {}, R = {}, O = {}, B = 1, A = 1;
return b = {
require: function (e) {
return e.require ? e.require : e.require = C.makeRequire(e.map);
},
exports: function (e) {
if (e.usingExports = !0, e.map.isDefine)
return e.exports ? I[e.map.id] = e.exports : e.exports = I[e.map.id] = {};
},
module: function (e) {
return e.module ? e.module : e.module = {
id: e.map.id,
uri: e.map.url,
config: function () {
return getOwn(E.config, e.map.id) || {};
},
exports: e.exports || (e.exports = {})
};
}
}, y = function (e) {
this.events = getOwn(M, e.id) || {}, this.map = e, this.shim = getOwn(E.shim, e.id), this.depExports = [], this.depMaps = [], this.depMatched = [], this.pluginMaps = {}, this.depCount = 0;
}, y.prototype = {
init: function (e, t, n, i) {
i = i || {}, this.inited || (this.factory = t, n ? this.on('error', n) : this.events.error && (n = bind(this, function (e) {
this.emit('error', e);
})), this.depMaps = e && e.slice(0), this.errback = n, this.inited = !0, this.ignore = i.ignore, i.enabled || this.enabled ? this.enable() : this.check());
},
defineDep: function (e, t) {
this.depMatched[e] || (this.depMatched[e] = !0, this.depCount -= 1, this.depExports[e] = t);
},
fetch: function () {
if (!this.fetched) {
this.fetched = !0, C.startTime = new Date().getTime();
var e = this.map;
return this.shim ? void C.makeRequire(this.map, { enableBuildCallback: !0 })(this.shim.deps || [], bind(this, function () {
return e.prefix ? this.callPlugin() : this.load();
})) : e.prefix ? this.callPlugin() : this.load();
}
},
load: function () {
var e = this.map.url;
R[e] || (R[e] = !0, C.load(this.map.id, e));
},
check: function () {
if (this.enabled && !this.enabling) {
var e, t, n = this.map.id, i = this.depExports, r = this.exports, o = this.factory;
if (this.inited) {
if (this.error)
this.emit('error', this.error);
else if (!this.defining) {
if (this.defining = !0, this.depCount < 1 && !this.defined) {
if (isFunction(o)) {
try {
r = C.execCb(n, o, i, r);
} catch (t) {
e = t;
}
if (this.map.isDefine && void 0 === r && (t = this.module, t ? r = t.exports : this.usingExports && (r = this.exports)), e) {
if (this.events.error && this.map.isDefine || req.onError !== defaultOnError)
return e.requireMap = this.map, e.requireModules = this.map.isDefine ? [this.map.id] : null, e.requireType = this.map.isDefine ? 'define' : 'require', u(this.error = e);
'undefined' != typeof console && console.error ? console.error(e) : req.onError(e);
}
} else
r = o;
if (this.exports = r, this.map.isDefine && !this.ignore && (I[n] = r, req.onResourceLoad)) {
var s = [];
each(this.depMaps, function (e) {
s.push(e.normalizedMap || e);
}), req.onResourceLoad(C, this.map, s);
}
d(n), this.defined = !0;
}
this.defining = !1, this.defined && !this.defineEmitted && (this.defineEmitted = !0, this.emit('defined', this.exports), this.defineEmitComplete = !0);
}
} else
hasProp(C.defQueueMap, n) || this.fetch();
}
},
callPlugin: function () {
var e = this.map, t = e.id, i = s(e.prefix);
this.depMaps.push(i), l(i, 'defined', bind(this, function (i) {
var r, o, c, f = getOwn(O, this.map.id), h = this.map.name, g = this.map.parentMap ? this.map.parentMap.name : null, p = C.makeRequire(e.parentMap, { enableBuildCallback: !0 });
return this.map.unnormalized ? (i.normalize && (h = i.normalize(h, function (e) {
return n(e, g, !0);
}) || ''), o = s(e.prefix + '!' + h, this.map.parentMap), l(o, 'defined', bind(this, function (e) {
this.map.normalizedMap = o, this.init([], function () {
return e;
}, null, {
enabled: !0,
ignore: !0
});
})), c = getOwn(_, o.id), void (c && (this.depMaps.push(o), this.events.error && c.on('error', bind(this, function (e) {
this.emit('error', e);
})), c.enable()))) : f ? (this.map.url = C.nameToUrl(f), void this.load()) : (r = bind(this, function (e) {
this.init([], function () {
return e;
}, null, { enabled: !0 });
}), r.error = bind(this, function (e) {
this.inited = !0, this.error = e, e.requireModules = [t], eachProp(_, function (e) {
0 === e.map.id.indexOf(t + '_unnormalized') && d(e.map.id);
}), u(e);
}), r.fromText = bind(this, function (n, i) {
var o = e.name, l = s(o), c = useInteractive;
i && (n = i), c && (useInteractive = !1), a(l), hasProp(E.config, t) && (E.config[o] = E.config[t]);
try {
req.exec(n);
} catch (e) {
return u(makeError('fromtexteval', 'fromText eval for ' + t + ' failed: ' + e, e, [t]));
}
c && (useInteractive = !0), this.depMaps.push(l), C.completeLoad(o), p([o], r);
}), void i.load(e.name, p, r, E));
})), C.enable(i, this), this.pluginMaps[i.id] = i;
},
enable: function () {
F[this.map.id] = this, this.enabled = !0, this.enabling = !0, each(this.depMaps, bind(this, function (e, t) {
var n, i, r;
if ('string' == typeof e) {
if (e = s(e, this.map.isDefine ? this.map : this.map.parentMap, !1, !this.skipMap), this.depMaps[t] = e, r = getOwn(b, e.id))
return void (this.depExports[t] = r(this));
this.depCount += 1, l(e, 'defined', bind(this, function (e) {
this.undefed || (this.defineDep(t, e), this.check());
})), this.errback ? l(e, 'error', bind(this, this.errback)) : this.events.error && l(e, 'error', bind(this, function (e) {
this.emit('error', e);
}));
}
n = e.id, i = _[n], hasProp(b, n) || !i || i.enabled || C.enable(e, this);
})), eachProp(this.pluginMaps, bind(this, function (e) {
var t = getOwn(_, e.id);
t && !t.enabled && C.enable(e, this);
})), this.enabling = !1, this.check();
},
on: function (e, t) {
var n = this.events[e];
n || (n = this.events[e] = []), n.push(t);
},
emit: function (e, t) {
each(this.events[e], function (e) {
e(t);
}), e === 'error' && delete this.events[e];
}
}, C = {
config: E,
contextName: e,
registry: _,
defined: I,
urlFetched: R,
defQueue: T,
defQueueMap: {},
Module: y,
makeModuleMap: s,
nextTick: req.nextTick,
onError: u,
configure: function (e) {
e.baseUrl && '/' !== e.baseUrl.charAt(e.baseUrl.length - 1) && (e.baseUrl += '/');
var t = E.shim, n = {
paths: !0,
bundles: !0,
config: !0,
map: !0
};
eachProp(e, function (e, t) {
n[t] ? (E[t] || (E[t] = {}), mixin(E[t], e, !0, !0)) : E[t] = e;
}), e.bundles && eachProp(e.bundles, function (e, t) {
each(e, function (e) {
e !== t && (O[e] = t);
});
}), e.shim && (eachProp(e.shim, function (e, n) {
isArray(e) && (e = { deps: e }), !e.exports && !e.init || e.exportsFn || (e.exportsFn = C.makeShimExports(e)), t[n] = e;
}), E.shim = t), e.packages && each(e.packages, function (e) {
var t, n;
e = 'string' == typeof e ? { name: e } : e, n = e.name, t = e.location, t && (E.paths[n] = e.location), E.pkgs[n] = e.name + '/' + (e.main || 'main').replace(currDirRegExp, '').replace(jsSuffixRegExp, '');
}), eachProp(_, function (e, t) {
e.inited || e.map.unnormalized || (e.map = s(t, null, !0));
}), (e.deps || e.callback) && C.require(e.deps || [], e.callback);
},
makeShimExports: function (e) {
function t() {
var t;
return e.init && (t = e.init.apply(global, arguments)), t || e.exports && getGlobal(e.exports);
}
return t;
},
makeRequire: function (t, r) {
function o(n, i, l) {
var c, d, f;
return r.enableBuildCallback && i && isFunction(i) && (i.__requireJsBuild = !0), 'string' == typeof n ? isFunction(i) ? u(makeError('requireargs', 'Invalid require call'), l) : t && hasProp(b, n) ? b[n](_[t.id]) : req.get ? req.get(C, n, t, o) : (d = s(n, t, !1, !0), c = d.id, hasProp(I, c) ? I[c] : u(makeError('notloaded', 'Module name "' + c + '" has not been loaded yet for context: ' + e + (t ? '' : '. Use require([])')))) : (m(), C.nextTick(function () {
m(), f = a(s(null, t)), f.skipMap = r.skipMap, f.init(n, i, l, { enabled: !0 }), h();
}), o);
}
return r = r || {}, mixin(o, {
isBrowser: isBrowser,
toUrl: function (e) {
var i, r = e.lastIndexOf('.'), o = e.split('/')[0], s = '.' === o || '..' === o;
return r !== -1 && (!s || r > 1) && (i = e.substring(r, e.length), e = e.substring(0, r)), C.nameToUrl(n(e, t && t.id, !0), i, !0);
},
defined: function (e) {
return hasProp(I, s(e, t, !1, !0).id);
},
specified: function (e) {
return e = s(e, t, !1, !0).id, hasProp(I, e) || hasProp(_, e);
}
}), t || (o.undef = function (e) {
c();
var n = s(e, t, !0), r = getOwn(_, e);
r.undefed = !0, i(e), delete I[e], delete R[n.url], delete M[e], eachReverse(T, function (t, n) {
t[0] === e && T.splice(n, 1);
}), delete C.defQueueMap[e], r && (r.events.defined && (M[e] = r.events), d(e));
}), o;
},
enable: function (e) {
var t = getOwn(_, e.id);
t && a(e).enable();
},
completeLoad: function (e) {
var t, n, i, o = getOwn(E.shim, e) || {}, s = o.exports;
for (c(); T.length;) {
if (n = T.shift(), null === n[0]) {
if (n[0] = e, t)
break;
t = !0;
} else
n[0] === e && (t = !0);
g(n);
}
if (C.defQueueMap = {}, i = getOwn(_, e), !t && !hasProp(I, e) && i && !i.inited) {
if (!(!E.enforceDefine || s && getGlobal(s)))
return r(e) ? void 0 : u(makeError('nodefine', 'No define call for ' + e, null, [e]));
g([
e,
o.deps || [],
o.exportsFn
]);
}
h();
},
nameToUrl: function (e, t, n) {
var i, r, o, s, a, l, u, c = getOwn(E.pkgs, e);
if (c && (e = c), u = getOwn(O, e))
return C.nameToUrl(u, t, n);
if (req.jsExtRegExp.test(e))
a = e + (t || '');
else {
for (i = E.paths, r = e.split('/'), o = r.length; o > 0; o -= 1)
if (s = r.slice(0, o).join('/'), l = getOwn(i, s)) {
isArray(l) && (l = l[0]), r.splice(0, o, l);
break;
}
a = r.join('/'), a += t || (/^data\:|\?/.test(a) || n ? '' : '.js'), a = ('/' === a.charAt(0) || a.match(/^[\w\+\.\-]+:/) ? '' : E.baseUrl) + a;
}
return E.urlArgs ? a + ((a.indexOf('?') === -1 ? '?' : '&') + E.urlArgs) : a;
},
load: function (e, t) {
req.load(C, e, t);
},
execCb: function (e, t, n, i) {
return t.apply(i, n);
},
onScriptLoad: function (e) {
if (e.type === 'load' || readyRegExp.test((e.currentTarget || e.srcElement).readyState)) {
interactiveScript = null;
var t = v(e);
C.completeLoad(t.id);
}
},
onScriptError: function (e) {
var t = v(e);
if (!r(t.id)) {
var n = [];
return eachProp(_, function (e, i) {
0 !== i.indexOf('_@r') && each(e.depMaps, function (e) {
return e.id === t.id && n.push(i), !0;
});
}), u(makeError('scripterror', 'Script error for "' + t.id + (n.length ? '", needed by: ' + n.join(', ') : '"'), e, [t.id]));
}
}
}, C.require = C.makeRequire(), C;
}
function getInteractiveScript() {
return interactiveScript && interactiveScript.readyState === 'interactive' ? interactiveScript : (eachReverse(scripts(), function (e) {
if (e.readyState === 'interactive')
return interactiveScript = e;
}), interactiveScript);
}
var req, s, head, baseElement, dataMain, src, interactiveScript, currentlyAddingScript, mainScript, subPath, version = '2.1.22', commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm, cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g, jsSuffixRegExp = /\.js$/, currDirRegExp = /^\.\//, op = Object.prototype, ostring = op.toString, hasOwn = op.hasOwnProperty, ap = Array.prototype, isBrowser = !('undefined' == typeof window || 'undefined' == typeof navigator || !window.document), isWebWorker = !isBrowser && 'undefined' != typeof importScripts, readyRegExp = isBrowser && navigator.platform === 'PLAYSTATION 3' ? /^complete$/ : /^(complete|loaded)$/, defContextName = '_', isOpera = 'undefined' != typeof opera && opera.toString() === '[object Opera]', contexts = {}, cfg = {}, globalDefQueue = [], useInteractive = !1;
if ('undefined' == typeof define) {
if ('undefined' != typeof requirejs) {
if (isFunction(requirejs))
return;
cfg = requirejs, requirejs = void 0;
}
'undefined' == typeof require || isFunction(require) || (cfg = require, require = void 0), req = requirejs = function (e, t, n, i) {
var r, o, s = defContextName;
return isArray(e) || 'string' == typeof e || (o = e, isArray(t) ? (e = t, t = n, n = i) : e = []), o && o.context && (s = o.context), r = getOwn(contexts, s), r || (r = contexts[s] = req.s.newContext(s)), o && r.configure(o), r.require(e, t, n);
}, req.config = function (e) {
return req(e);
}, req.nextTick = 'undefined' != typeof setTimeout ? function (e) {
setTimeout(e, 4);
} : function (e) {
e();
}, require || (require = req), req.version = version, req.jsExtRegExp = /^\/|:|\?|\.js$/, req.isBrowser = isBrowser, s = req.s = {
contexts: contexts,
newContext: newContext
}, req({}), each([
'toUrl',
'undef',
'defined',
'specified'
], function (e) {
req[e] = function () {
var t = contexts[defContextName];
return t.require[e].apply(t, arguments);
};
}), isBrowser && (head = s.head = document.getElementsByTagName('head')[0], baseElement = document.getElementsByTagName('base')[0], baseElement && (head = s.head = baseElement.parentNode)), req.onError = defaultOnError, req.createNode = function (e, t, n) {
var i = e.xhtml ? document.createElementNS('http://www.w3.org/1999/xhtml', 'html:script') : document.createElement('script');
return i.type = e.scriptType || 'text/javascript', i.charset = 'utf-8', i.async = !0, i;
}, req.load = function (e, t, n) {
var i, r = e && e.config || {};
if (isBrowser)
return i = req.createNode(r, t, n), r.onNodeCreated && r.onNodeCreated(i, r, t, n), i.setAttribute('data-requirecontext', e.contextName), i.setAttribute('data-requiremodule', t), !i.attachEvent || i.attachEvent.toString && i.attachEvent.toString().indexOf('[native code') < 0 || isOpera ? (i.addEventListener('load', e.onScriptLoad, !1), i.addEventListener('error', e.onScriptError, !1)) : (useInteractive = !0, i.attachEvent('onreadystatechange', e.onScriptLoad)), i.src = n, currentlyAddingScript = i, baseElement ? head.insertBefore(i, baseElement) : head.appendChild(i), currentlyAddingScript = null, i;
if (isWebWorker)
try {
importScripts(n), e.completeLoad(t);
} catch (i) {
e.onError(makeError('importscripts', 'importScripts failed for ' + t + ' at ' + n, i, [t]));
}
}, isBrowser && !cfg.skipDataMain && eachReverse(scripts(), function (e) {
if (head || (head = e.parentNode), dataMain = e.getAttribute('data-main'))
return mainScript = dataMain, cfg.baseUrl || (src = mainScript.split('/'), mainScript = src.pop(), subPath = src.length ? src.join('/') + '/' : './', cfg.baseUrl = subPath), mainScript = mainScript.replace(jsSuffixRegExp, ''), req.jsExtRegExp.test(mainScript) && (mainScript = dataMain), cfg.deps = cfg.deps ? cfg.deps.concat(mainScript) : [mainScript], !0;
}), define = function (e, t, n) {
var i, r;
'string' != typeof e && (n = t, t = e, e = null), isArray(t) || (n = t, t = null), !t && isFunction(n) && (t = [], n.length && (n.toString().replace(commentRegExp, '').replace(cjsRequireRegExp, function (e, n) {
t.push(n);
}), t = (1 === n.length ? ['require'] : [
'require',
'exports',
'module'
]).concat(t))), useInteractive && (i = currentlyAddingScript || getInteractiveScript(), i && (e || (e = i.getAttribute('data-requiremodule')), r = contexts[i.getAttribute('data-requirecontext')])), r ? (r.defQueue.push([
e,
t,
n
]), r.defQueueMap[e] = !0) : globalDefQueue.push([
e,
t,
n
]);
}, define.amd = { jQuery: !0 }, req.exec = function (text) {
return eval(text);
}, req(cfg);
}
}(this), CKFinder.requirejs = requirejs, CKFinder.require = require, CKFinder.define = define;
}
}(), CKFinder.define('requireLib', function () {
}), function () {
function e(e, t, n) {
for (var i = (n || 0) - 1, r = e ? e.length : 0; ++i < r;)
if (e[i] === t)
return i;
return -1;
}
function t(t, n) {
var i = typeof n;
if (t = t.cache, 'boolean' == i || null == n)
return t[n] ? 0 : -1;
'number' != i && 'string' != i && (i = 'object');
var r = 'number' == i ? n : m + n;
return t = (t = t[i]) && t[r], 'object' == i ? t && e(t, n) > -1 ? 0 : -1 : t ? 0 : -1;
}
function n(e) {
var t = this.cache, n = typeof e;
if ('boolean' == n || null == e)
t[e] = !0;
else {
'number' != n && 'string' != n && (n = 'object');
var i = 'number' == n ? e : m + e, r = t[n] || (t[n] = {});
'object' == n ? (r[i] || (r[i] = [])).push(e) : r[i] = !0;
}
}
function i(e) {
return e.charCodeAt(0);
}
function r(e, t) {
for (var n = e.criteria, i = t.criteria, r = -1, o = n.length; ++r < o;) {
var s = n[r], a = i[r];
if (s !== a) {
if (s > a || 'undefined' == typeof s)
return 1;
if (s < a || 'undefined' == typeof a)
return -1;
}
}
return e.index - t.index;
}
function o(e) {
var t = -1, i = e.length, r = e[0], o = e[i / 2 | 0], s = e[i - 1];
if (r && 'object' == typeof r && o && 'object' == typeof o && s && 'object' == typeof s)
return !1;
var a = l();
a['false'] = a['null'] = a['true'] = a.undefined = !1;
var u = l();
for (u.array = e, u.cache = a, u.push = n; ++t < i;)
u.push(e[t]);
return u;
}
function s(e) {
return '\\' + Q[e];
}
function a() {
return g.pop() || [];
}
function l() {
return p.pop() || {
array: null,
cache: null,
criteria: null,
false: !1,
index: 0,
null: !1,
number: null,
object: null,
push: null,
string: null,
true: !1,
undefined: !1,
value: null
};
}
function u(e) {
e.length = 0, g.length < y && g.push(e);
}
function c(e) {
var t = e.cache;
t && c(t), e.array = e.cache = e.criteria = e.object = e.number = e.string = e.value = null, p.length < y && p.push(e);
}
function d(e, t, n) {
t || (t = 0), 'undefined' == typeof n && (n = e ? e.length : 0);
for (var i = -1, r = n - t || 0, o = Array(r < 0 ? 0 : r); ++i < r;)
o[i] = e[t + i];
return o;
}
function f(n) {
function g(e) {
return e && 'object' == typeof e && !jn(e) && Dn.call(e, '__wrapped__') ? e : new p(e);
}
function p(e, t) {
this.__chain__ = !!t, this.__wrapped__ = e;
}
function y(e) {
function t() {
if (i) {
var e = d(i);
Vn.apply(e, arguments);
}
if (this instanceof t) {
var o = J(n.prototype), s = n.apply(o, e || arguments);
return Oe(s) ? s : o;
}
return n.apply(r, e || arguments);
}
var n = e[0], i = e[2], r = e[4];
return Gn(t, e), t;
}
function Q(e, t, n, i, r) {
if (n) {
var o = n(e);
if ('undefined' != typeof o)
return o;
}
var s = Oe(e);
if (!s)
return e;
var l = Tn.call(e);
if (!k[l])
return e;
var c = Jn[l];
switch (l) {
case K:
case H:
return new c(+e);
case W:
case U:
return new c(e);
case L:
return o = c(e.source, F.exec(e)), o.lastIndex = e.lastIndex, o;
}
var f = jn(e);
if (t) {
var h = !i;
i || (i = a()), r || (r = a());
for (var g = i.length; g--;)
if (i[g] == e)
return r[g];
o = f ? c(e.length) : {};
} else
o = f ? d(e) : si({}, e);
return f && (Dn.call(e, 'index') && (o.index = e.index), Dn.call(e, 'input') && (o.input = e.input)), t ? (i.push(e), r.push(o), (f ? Ye : ui)(e, function (e, s) {
o[s] = Q(e, t, n, i, r);
}), h && (u(i), u(r)), o) : o;
}
function J(e, t) {
return Oe(e) ? qn(e) : {};
}
function Y(e, t, n) {
if ('function' != typeof e)
return Gt;
if ('undefined' == typeof t || !('prototype' in e))
return e;
var i = e.__bindData__;
if ('undefined' == typeof i && (Yn.funcNames && (i = !e.name), i = i || !Yn.funcDecomp, !i)) {
var r = An.call(e);
Yn.funcNames || (i = !M.test(r)), i || (i = O.test(r), Gn(e, i));
}
if (i === !1 || i !== !0 && 1 & i[1])
return e;
switch (n) {
case 1:
return function (n) {
return e.call(t, n);
};
case 2:
return function (n, i) {
return e.call(t, n, i);
};
case 3:
return function (n, i, r) {
return e.call(t, n, i, r);
};
case 4:
return function (n, i, r, o) {
return e.call(t, n, i, r, o);
};
}
return Dt(e, t);
}
function G(e) {
function t() {
var e = l ? s : this;
if (r) {
var h = d(r);
Vn.apply(h, arguments);
}
if ((o || c) && (h || (h = d(arguments)), o && Vn.apply(h, o), c && h.length < a))
return i |= 16, G([
n,
f ? i : i & -4,
h,
null,
s,
a
]);
if (h || (h = arguments), u && (n = e[S]), this instanceof t) {
e = J(n.prototype);
var g = n.apply(e, h);
return Oe(g) ? g : e;
}
return n.apply(e, h);
}
var n = e[0], i = e[1], r = e[2], o = e[3], s = e[4], a = e[5], l = 1 & i, u = 2 & i, c = 4 & i, f = 8 & i, S = n;
return Gn(t, e), t;
}
function j(n, i) {
var r = -1, s = ue(), a = n ? n.length : 0, l = a >= w && s === e, u = [];
if (l) {
var d = o(i);
d ? (s = t, i = d) : l = !1;
}
for (; ++r < a;) {
var f = n[r];
s(i, f) < 0 && u.push(f);
}
return l && c(i), u;
}
function te(e, t, n, i) {
for (var r = (i || 0) - 1, o = e ? e.length : 0, s = []; ++r < o;) {
var a = e[r];
if (a && 'object' == typeof a && 'number' == typeof a.length && (jn(a) || Se(a))) {
t || (a = te(a, t, n));
var l = -1, u = a.length, c = s.length;
for (s.length += u; ++l < u;)
s[c++] = a[l];
} else
n || s.push(a);
}
return s;
}
function ne(e, t, n, i, r, o) {
if (n) {
var s = n(e, t);
if ('undefined' != typeof s)
return !!s;
}
if (e === t)
return 0 !== e || 1 / e == 1 / t;
var l = typeof e, c = typeof t;
if (!(e !== e || e && z[l] || t && z[c]))
return !1;
if (null == e || null == t)
return e === t;
var d = Tn.call(e), f = Tn.call(t);
if (d == D && (d = q), f == D && (f = q), d != f)
return !1;
switch (d) {
case K:
case H:
return +e == +t;
case W:
return e != +e ? t != +t : 0 == e ? 1 / e == 1 / t : e == +t;
case L:
case U:
return e == xn(t);
}
var h = d == V;
if (!h) {
var g = Dn.call(e, '__wrapped__'), p = Dn.call(t, '__wrapped__');
if (g || p)
return ne(g ? e.__wrapped__ : e, p ? t.__wrapped__ : t, n, i, r, o);
if (d != q)
return !1;
var v = e.constructor, m = t.constructor;
if (v != m && !(Re(v) && v instanceof v && Re(m) && m instanceof m) && 'constructor' in e && 'constructor' in t)
return !1;
}
var w = !r;
r || (r = a()), o || (o = a());
for (var y = r.length; y--;)
if (r[y] == e)
return o[y] == t;
var C = 0;
if (s = !0, r.push(e), o.push(t), h) {
if (y = e.length, C = t.length, s = C == y, s || i)
for (; C--;) {
var b = y, x = t[C];
if (i)
for (; b-- && !(s = ne(e[b], x, n, i, r, o)););
else if (!(s = ne(e[C], x, n, i, r, o)))
break;
}
} else
li(t, function (t, a, l) {
if (Dn.call(l, a))
return C++, s = Dn.call(e, a) && ne(e[a], t, n, i, r, o);
}), s && !i && li(e, function (e, t, n) {
if (Dn.call(n, t))
return s = --C > -1;
});
return r.pop(), o.pop(), w && (u(r), u(o)), s;
}
function ie(e, t, n, i, r) {
(jn(t) ? Ye : ui)(t, function (t, o) {
var s, a, l = t, u = e[o];
if (t && ((a = jn(t)) || ci(t))) {
for (var c = i.length; c--;)
if (s = i[c] == t) {
u = r[c];
break;
}
if (!s) {
var d;
n && (l = n(u, t), (d = 'undefined' != typeof l) && (u = l)), d || (u = a ? jn(u) ? u : [] : ci(u) ? u : {}), i.push(t), r.push(u), d || ie(u, t, n, i, r);
}
} else
n && (l = n(u, t), 'undefined' == typeof l && (l = t)), 'undefined' != typeof l && (u = l);
e[o] = u;
});
}
function re(e, t) {
return e + Bn(Zn() * (t - e + 1));
}
function oe(n, i, r) {
var s = -1, l = ue(), d = n ? n.length : 0, f = [], S = !i && d >= w && l === e, h = r || S ? a() : f;
if (S) {
var g = o(h);
l = t, h = g;
}
for (; ++s < d;) {
var p = n[s], v = r ? r(p, s, n) : p;
(i ? !s || h[h.length - 1] !== v : l(h, v) < 0) && ((r || S) && h.push(v), f.push(p));
}
return S ? (u(h.array), c(h)) : r && u(h), f;
}
function se(e) {
return function (t, n, i) {
var r = {};
n = g.createCallback(n, i, 3);
var o = -1, s = t ? t.length : 0;
if ('number' == typeof s)
for (; ++o < s;) {
var a = t[o];
e(r, a, n(a, o, t), t);
}
else
ui(t, function (t, i, o) {
e(r, t, n(t, i, o), o);
});
return r;
};
}
function ae(e, t, n, i, r, o) {
var s = 1 & t, a = 2 & t, l = 4 & t, u = 16 & t, c = 32 & t;
if (!a && !Re(e))
throw new En();
u && !n.length && (t &= -17, u = n = !1), c && !i.length && (t &= -33, c = i = !1);
var f = e && e.__bindData__;
if (f && f !== !0)
return f = d(f), f[2] && (f[2] = d(f[2])), f[3] && (f[3] = d(f[3])), !s || 1 & f[1] || (f[4] = r), !s && 1 & f[1] && (t |= 8), !l || 4 & f[1] || (f[5] = o), u && Vn.apply(f[2] || (f[2] = []), n), c && Nn.apply(f[3] || (f[3] = []), i), f[1] |= t, ae.apply(null, f);
var S = 1 == t || 17 === t ? y : G;
return S([
e,
t,
n,
i,
r,
o
]);
}
function le(e) {
return ni[e];
}
function ue() {
var t = (t = g.indexOf) === mt ? e : t;
return t;
}
function ce(e) {
return 'function' == typeof e && In.test(e);
}
function de(e) {
var t, n;
return !!(e && Tn.call(e) == q && (t = e.constructor, !Re(t) || t instanceof t)) && (li(e, function (e, t) {
n = t;
}), 'undefined' == typeof n || Dn.call(e, n));
}
function fe(e) {
return ii[e];
}
function Se(e) {
return e && 'object' == typeof e && 'number' == typeof e.length && Tn.call(e) == D || !1;
}
function he(e, t, n, i) {
return 'boolean' != typeof t && null != t && (i = n, n = t, t = !1), Q(e, t, 'function' == typeof n && Y(n, i, 1));
}
function ge(e, t, n) {
return Q(e, !0, 'function' == typeof t && Y(t, n, 1));
}
function pe(e, t) {
var n = J(e);
return t ? si(n, t) : n;
}
function ve(e, t, n) {
var i;
return t = g.createCallback(t, n, 3), ui(e, function (e, n, r) {
if (t(e, n, r))
return i = n, !1;
}), i;
}
function me(e, t, n) {
var i;
return t = g.createCallback(t, n, 3), ye(e, function (e, n, r) {
if (t(e, n, r))
return i = n, !1;
}), i;
}
function we(e, t, n) {
var i = [];
li(e, function (e, t) {
i.push(t, e);
});
var r = i.length;
for (t = Y(t, n, 3); r-- && t(i[r--], i[r], e) !== !1;);
return e;
}
function ye(e, t, n) {
var i = ti(e), r = i.length;
for (t = Y(t, n, 3); r--;) {
var o = i[r];
if (t(e[o], o, e) === !1)
break;
}
return e;
}
function Ce(e) {
var t = [];
return li(e, function (e, n) {
Re(e) && t.push(n);
}), t.sort();
}
function be(e, t) {
return !!e && Dn.call(e, t);
}
function xe(e) {
for (var t = -1, n = ti(e), i = n.length, r = {}; ++t < i;) {
var o = n[t];
r[e[o]] = o;
}
return r;
}
function Ee(e) {
return e === !0 || e === !1 || e && 'object' == typeof e && Tn.call(e) == K || !1;
}
function _e(e) {
return e && 'object' == typeof e && Tn.call(e) == H || !1;
}
function Fe(e) {
return e && 1 === e.nodeType || !1;
}
function Me(e) {
var t = !0;
if (!e)
return t;
var n = Tn.call(e), i = e.length;
return n == V || n == U || n == D || n == q && 'number' == typeof i && Re(e.splice) ? !i : (ui(e, function () {
return t = !1;
}), t);
}
function Te(e, t, n, i) {
return ne(e, t, 'function' == typeof n && Y(n, i, 2));
}
function Ie(e) {
return Un(e) && !kn(parseFloat(e));
}
function Re(e) {
return 'function' == typeof e;
}
function Oe(e) {
return !(!e || !z[typeof e]);
}
function Be(e) {
return Pe(e) && e != +e;
}
function Ae(e) {
return null === e;
}
function Pe(e) {
return 'number' == typeof e || e && 'object' == typeof e && Tn.call(e) == W || !1;
}
function De(e) {
return e && 'object' == typeof e && Tn.call(e) == L || !1;
}
function Ve(e) {
return 'string' == typeof e || e && 'object' == typeof e && Tn.call(e) == U || !1;
}
function Ke(e) {
return 'undefined' == typeof e;
}
function He(e, t, n) {
var i = {};
return t = g.createCallback(t, n, 3), ui(e, function (e, n, r) {
i[n] = t(e, n, r);
}), i;
}
function Ne(e) {
var t = arguments, n = 2;
if (!Oe(e))
return e;
if ('number' != typeof t[2] && (n = t.length), n > 3 && 'function' == typeof t[n - 2])
var i = Y(t[--n - 1], t[n--], 2);
else
n > 2 && 'function' == typeof t[n - 1] && (i = t[--n]);
for (var r = d(arguments, 1, n), o = -1, s = a(), l = a(); ++o < n;)
ie(e, r[o], i, s, l);
return u(s), u(l), e;
}
function We(e, t, n) {
var i = {};
if ('function' != typeof t) {
var r = [];
li(e, function (e, t) {
r.push(t);
}), r = j(r, te(arguments, !0, !1, 1));
for (var o = -1, s = r.length; ++o < s;) {
var a = r[o];
i[a] = e[a];
}
} else
t = g.createCallback(t, n, 3), li(e, function (e, n, r) {
t(e, n, r) || (i[n] = e);
});
return i;
}
function qe(e) {
for (var t = -1, n = ti(e), i = n.length, r = gn(i); ++t < i;) {
var o = n[t];
r[t] = [
o,
e[o]
];
}
return r;
}
function Le(e, t, n) {
var i = {};
if ('function' != typeof t)
for (var r = -1, o = te(arguments, !0, !1, 1), s = Oe(e) ? o.length : 0; ++r < s;) {
var a = o[r];
a in e && (i[a] = e[a]);
}
else
t = g.createCallback(t, n, 3), li(e, function (e, n, r) {
t(e, n, r) && (i[n] = e);
});
return i;
}
function Ue(e, t, n, i) {
var r = jn(e);
if (null == n)
if (r)
n = [];
else {
var o = e && e.constructor, s = o && o.prototype;
n = J(s);
}
return t && (t = g.createCallback(t, i, 4), (r ? Ye : ui)(e, function (e, i, r) {
return t(n, e, i, r);
})), n;
}
function ke(e) {
for (var t = -1, n = ti(e), i = n.length, r = gn(i); ++t < i;)
r[t] = e[n[t]];
return r;
}
function $e(e) {
for (var t = arguments, n = -1, i = te(t, !0, !1, 1), r = t[2] && t[2][t[1]] === e ? 1 : i.length, o = gn(r); ++n < r;)
o[n] = e[i[n]];
return o;
}
function Xe(e, t, n) {
var i = -1, r = ue(), o = e ? e.length : 0, s = !1;
return n = (n < 0 ? Xn(0, o + n) : n) || 0, jn(e) ? s = r(e, t, n) > -1 : 'number' == typeof o ? s = (Ve(e) ? e.indexOf(t, n) : r(e, t, n)) > -1 : ui(e, function (e) {
if (++i >= n)
return !(s = e === t);
}), s;
}
function ze(e, t, n) {
var i = !0;
t = g.createCallback(t, n, 3);
var r = -1, o = e ? e.length : 0;
if ('number' == typeof o)
for (; ++r < o && (i = !!t(e[r], r, e)););
else
ui(e, function (e, n, r) {
return i = !!t(e, n, r);
});
return i;
}
function Qe(e, t, n) {
var i = [];
t = g.createCallback(t, n, 3);
var r = -1, o = e ? e.length : 0;
if ('number' == typeof o)
for (; ++r < o;) {
var s = e[r];
t(s, r, e) && i.push(s);
}
else
ui(e, function (e, n, r) {
t(e, n, r) && i.push(e);
});
return i;
}
function Ze(e, t, n) {
t = g.createCallback(t, n, 3);
var i = -1, r = e ? e.length : 0;
if ('number' != typeof r) {
var o;
return ui(e, function (e, n, i) {
if (t(e, n, i))
return o = e, !1;
}), o;
}
for (; ++i < r;) {
var s = e[i];
if (t(s, i, e))
return s;
}
}
function Je(e, t, n) {
var i;
return t = g.createCallback(t, n, 3), Ge(e, function (e, n, r) {
if (t(e, n, r))
return i = e, !1;
}), i;
}
function Ye(e, t, n) {
var i = -1, r = e ? e.length : 0;
if (t = t && 'undefined' == typeof n ? t : Y(t, n, 3), 'number' == typeof r)
for (; ++i < r && t(e[i], i, e) !== !1;);
else
ui(e, t);
return e;
}
function Ge(e, t, n) {
var i = e ? e.length : 0;
if (t = t && 'undefined' == typeof n ? t : Y(t, n, 3), 'number' == typeof i)
for (; i-- && t(e[i], i, e) !== !1;);
else {
var r = ti(e);
i = r.length, ui(e, function (e, n, o) {
return n = r ? r[--i] : --i, t(o[n], n, o);
});
}
return e;
}
function je(e, t) {
var n = d(arguments, 2), i = -1, r = 'function' == typeof t, o = e ? e.length : 0, s = gn('number' == typeof o ? o : 0);
return Ye(e, function (e) {
s[++i] = (r ? t : e[t]).apply(e, n);
}), s;
}
function et(e, t, n) {
var i = -1, r = e ? e.length : 0;
if (t = g.createCallback(t, n, 3), 'number' == typeof r)
for (var o = gn(r); ++i < r;)
o[i] = t(e[i], i, e);
else
o = [], ui(e, function (e, n, r) {
o[++i] = t(e, n, r);
});
return o;
}
function tt(e, t, n) {
var r = -(1 / 0), o = r;
if ('function' != typeof t && n && n[t] === e && (t = null), null == t && jn(e))
for (var s = -1, a = e.length; ++s < a;) {
var l = e[s];
l > o && (o = l);
}
else
t = null == t && Ve(e) ? i : g.createCallback(t, n, 3), Ye(e, function (e, n, i) {
var s = t(e, n, i);
s > r && (r = s, o = e);
});
return o;
}
function nt(e, t, n) {
var r = 1 / 0, o = r;
if ('function' != typeof t && n && n[t] === e && (t = null), null == t && jn(e))
for (var s = -1, a = e.length; ++s < a;) {
var l = e[s];
l < o && (o = l);
}
else
t = null == t && Ve(e) ? i : g.createCallback(t, n, 3), Ye(e, function (e, n, i) {
var s = t(e, n, i);
s < r && (r = s, o = e);
});
return o;
}
function it(e, t, n, i) {
if (!e)
return n;
var r = arguments.length < 3;
t = g.createCallback(t, i, 4);
var o = -1, s = e.length;
if ('number' == typeof s)
for (r && (n = e[++o]); ++o < s;)
n = t(n, e[o], o, e);
else
ui(e, function (e, i, o) {
n = r ? (r = !1, e) : t(n, e, i, o);
});
return n;
}
function rt(e, t, n, i) {
var r = arguments.length < 3;
return t = g.createCallback(t, i, 4), Ge(e, function (e, i, o) {
n = r ? (r = !1, e) : t(n, e, i, o);
}), n;
}
function ot(e, t, n) {
return t = g.createCallback(t, n, 3), Qe(e, function (e, n, i) {
return !t(e, n, i);
});
}
function st(e, t, n) {
if (e && 'number' != typeof e.length && (e = ke(e)), null == t || n)
return e ? e[re(0, e.length - 1)] : h;
var i = at(e);
return i.length = zn(Xn(0, t), i.length), i;
}
function at(e) {
var t = -1, n = e ? e.length : 0, i = gn('number' == typeof n ? n : 0);
return Ye(e, function (e) {
var n = re(0, ++t);
i[t] = i[n], i[n] = e;
}), i;
}
function lt(e) {
var t = e ? e.length : 0;
return 'number' == typeof t ? t : ti(e).length;
}
function ut(e, t, n) {
var i;
t = g.createCallback(t, n, 3);
var r = -1, o = e ? e.length : 0;
if ('number' == typeof o)
for (; ++r < o && !(i = t(e[r], r, e)););
else
ui(e, function (e, n, r) {
return !(i = t(e, n, r));
});
return !!i;
}
function ct(e, t, n) {
var i = -1, o = jn(t), s = e ? e.length : 0, d = gn('number' == typeof s ? s : 0);
for (o || (t = g.createCallback(t, n, 3)), Ye(e, function (e, n, r) {
var s = d[++i] = l();
o ? s.criteria = et(t, function (t) {
return e[t];
}) : (s.criteria = a())[0] = t(e, n, r), s.index = i, s.value = e;
}), s = d.length, d.sort(r); s--;) {
var f = d[s];
d[s] = f.value, o || u(f.criteria), c(f);
}
return d;
}
function dt(e) {
return e && 'number' == typeof e.length ? d(e) : ke(e);
}
function ft(e) {
for (var t = -1, n = e ? e.length : 0, i = []; ++t < n;) {
var r = e[t];
r && i.push(r);
}
return i;
}
function St(e) {
return j(e, te(arguments, !0, !0, 1));
}
function ht(e, t, n) {
var i = -1, r = e ? e.length : 0;
for (t = g.createCallback(t, n, 3); ++i < r;)
if (t(e[i], i, e))
return i;
return -1;
}
function gt(e, t, n) {
var i = e ? e.length : 0;
for (t = g.createCallback(t, n, 3); i--;)
if (t(e[i], i, e))
return i;
return -1;
}
function pt(e, t, n) {
var i = 0, r = e ? e.length : 0;
if ('number' != typeof t && null != t) {
var o = -1;
for (t = g.createCallback(t, n, 3); ++o < r && t(e[o], o, e);)
i++;
} else if (i = t, null == i || n)
return e ? e[0] : h;
return d(e, 0, zn(Xn(0, i), r));
}
function vt(e, t, n, i) {
return 'boolean' != typeof t && null != t && (i = n, n = 'function' != typeof t && i && i[t] === e ? null : t, t = !1), null != n && (e = et(e, n, i)), te(e, t);
}
function mt(t, n, i) {
if ('number' == typeof i) {
var r = t ? t.length : 0;
i = i < 0 ? Xn(0, r + i) : i || 0;
} else if (i) {
var o = Mt(t, n);
return t[o] === n ? o : -1;
}
return e(t, n, i);
}
function wt(e, t, n) {
var i = 0, r = e ? e.length : 0;
if ('number' != typeof t && null != t) {
var o = r;
for (t = g.createCallback(t, n, 3); o-- && t(e[o], o, e);)
i++;
} else
i = null == t || n ? 1 : t || i;
return d(e, 0, zn(Xn(0, r - i), r));
}
function yt() {
for (var n = [], i = -1, r = arguments.length, s = a(), l = ue(), d = l === e, f = a(); ++i < r;) {
var S = arguments[i];
(jn(S) || Se(S)) && (n.push(S), s.push(d && S.length >= w && o(i ? n[i] : f)));
}
var h = n[0], g = -1, p = h ? h.length : 0, v = [];
e:
for (; ++g < p;) {
var m = s[0];
if (S = h[g], (m ? t(m, S) : l(f, S)) < 0) {
for (i = r, (m || f).push(S); --i;)
if (m = s[i], (m ? t(m, S) : l(n[i], S)) < 0)
continue e;
v.push(S);
}
}
for (; r--;)
m = s[r], m && c(m);
return u(s), u(f), v;
}
function Ct(e, t, n) {
var i = 0, r = e ? e.length : 0;
if ('number' != typeof t && null != t) {
var o = r;
for (t = g.createCallback(t, n, 3); o-- && t(e[o], o, e);)
i++;
} else if (i = t, null == i || n)
return e ? e[r - 1] : h;
return d(e, Xn(0, r - i));
}
function bt(e, t, n) {
var i = e ? e.length : 0;
for ('number' == typeof n && (i = (n < 0 ? Xn(0, i + n) : zn(n, i - 1)) + 1); i--;)
if (e[i] === t)
return i;
return -1;
}
function xt(e) {
for (var t = arguments, n = 0, i = t.length, r = e ? e.length : 0; ++n < i;)
for (var o = -1, s = t[n]; ++o < r;)
e[o] === s && (Hn.call(e, o--, 1), r--);
return e;
}
function Et(e, t, n) {
e = +e || 0, n = 'number' == typeof n ? n : +n || 1, null == t && (t = e, e = 0);
for (var i = -1, r = Xn(0, Rn((t - e) / (n || 1))), o = gn(r); ++i < r;)
o[i] = e, e += n;
return o;
}
function _t(e, t, n) {
var i = -1, r = e ? e.length : 0, o = [];
for (t = g.createCallback(t, n, 3); ++i < r;) {
var s = e[i];
t(s, i, e) && (o.push(s), Hn.call(e, i--, 1), r--);
}
return o;
}
function Ft(e, t, n) {
if ('number' != typeof t && null != t) {
var i = 0, r = -1, o = e ? e.length : 0;
for (t = g.createCallback(t, n, 3); ++r < o && t(e[r], r, e);)
i++;
} else
i = null == t || n ? 1 : Xn(0, t);
return d(e, i);
}
function Mt(e, t, n, i) {
var r = 0, o = e ? e.length : r;
for (n = n ? g.createCallback(n, i, 1) : Gt, t = n(t); r < o;) {
var s = r + o >>> 1;
n(e[s]) < t ? r = s + 1 : o = s;
}
return r;
}
function Tt() {
return oe(te(arguments, !0, !0));
}
function It(e, t, n, i) {
return 'boolean' != typeof t && null != t && (i = n, n = 'function' != typeof t && i && i[t] === e ? null : t, t = !1), null != n && (n = g.createCallback(n, i, 3)), oe(e, t, n);
}
function Rt(e) {
return j(e, d(arguments, 1));
}
function Ot() {
for (var e = -1, t = arguments.length; ++e < t;) {
var n = arguments[e];
if (jn(n) || Se(n))
var i = i ? oe(j(i, n).concat(j(n, i))) : n;
}
return i || [];
}
function Bt() {
for (var e = arguments.length > 1 ? arguments : arguments[0], t = -1, n = e ? tt(hi(e, 'length')) : 0, i = gn(n < 0 ? 0 : n); ++t < n;)
i[t] = hi(e, t);
return i;
}
function At(e, t) {
var n = -1, i = e ? e.length : 0, r = {};
for (t || !i || jn(e[0]) || (t = []); ++n < i;) {
var o = e[n];
t ? r[o] = t[n] : o && (r[o[0]] = o[1]);
}
return r;
}
function Pt(e, t) {
if (!Re(t))
throw new En();
return function () {
if (--e < 1)
return t.apply(this, arguments);
};
}
function Dt(e, t) {
return arguments.length > 2 ? ae(e, 17, d(arguments, 2), null, t) : ae(e, 1, null, null, t);
}
function Vt(e) {
for (var t = arguments.length > 1 ? te(arguments, !0, !1, 1) : Ce(e), n = -1, i = t.length; ++n < i;) {
var r = t[n];
e[r] = ae(e[r], 1, null, null, e);
}
return e;
}
function Kt(e, t) {
return arguments.length > 2 ? ae(t, 19, d(arguments, 2), null, e) : ae(t, 3, null, null, e);
}
function Ht() {
for (var e = arguments, t = e.length; t--;)
if (!Re(e[t]))
throw new En();
return function () {
for (var t = arguments, n = e.length; n--;)
t = [e[n].apply(this, t)];
return t[0];
};
}
function Nt(e, t) {
return t = 'number' == typeof t ? t : +t || e.length, ae(e, 4, null, null, null, t);
}
function Wt(e, t, n) {
var i, r, o, s, a, l, u, c = 0, d = !1, f = !0;
if (!Re(e))
throw new En();
if (t = Xn(0, t) || 0, n === !0) {
var g = !0;
f = !1;
} else
Oe(n) && (g = n.leading, d = 'maxWait' in n && (Xn(t, n.maxWait) || 0), f = 'trailing' in n ? n.trailing : f);
var p = function () {
var n = t - (pi() - s);
if (n <= 0) {
r && On(r);
var d = u;
r = l = u = h, d && (c = pi(), o = e.apply(a, i), l || r || (i = a = null));
} else
l = Kn(p, n);
}, v = function () {
l && On(l), r = l = u = h, (f || d !== t) && (c = pi(), o = e.apply(a, i), l || r || (i = a = null));
};
return function () {
if (i = arguments, s = pi(), a = this, u = f && (l || !g), d === !1)
var n = g && !l;
else {
r || g || (c = s);
var S = d - (s - c), h = S <= 0;
h ? (r && (r = On(r)), c = s, o = e.apply(a, i)) : r || (r = Kn(v, S));
}
return h && l ? l = On(l) : l || t === d || (l = Kn(p, t)), n && (h = !0, o = e.apply(a, i)), !h || l || r || (i = a = null), o;
};
}
function qt(e) {
if (!Re(e))
throw new En();
var t = d(arguments, 1);
return Kn(function () {
e.apply(h, t);
}, 1);
}
function Lt(e, t) {
if (!Re(e))
throw new En();
var n = d(arguments, 2);
return Kn(function () {
e.apply(h, n);
}, t);
}
function Ut(e, t) {
if (!Re(e))
throw new En();
var n = function () {
var i = n.cache, r = t ? t.apply(this, arguments) : m + arguments[0];
return Dn.call(i, r) ? i[r] : i[r] = e.apply(this, arguments);
};
return n.cache = {}, n;
}
function kt(e) {
var t, n;
if (!Re(e))
throw new En();
return function () {
return t ? n : (t = !0, n = e.apply(this, arguments), e = null, n);
};
}
function $t(e) {
return ae(e, 16, d(arguments, 1));
}
function Xt(e) {
return ae(e, 32, null, d(arguments, 1));
}
function zt(e, t, n) {
var i = !0, r = !0;
if (!Re(e))
throw new En();
return n === !1 ? i = !1 : Oe(n) && (i = 'leading' in n ? n.leading : i, r = 'trailing' in n ? n.trailing : r), $.leading = i, $.maxWait = t, $.trailing = r, Wt(e, t, $);
}
function Qt(e, t) {
return ae(t, 16, [e]);
}
function Zt(e) {
return function () {
return e;
};
}
function Jt(e, t, n) {
var i = typeof e;
if (null == e || 'function' == i)
return Y(e, t, n);
if ('object' != i)
return nn(e);
var r = ti(e), o = r[0], s = e[o];
return 1 != r.length || s !== s || Oe(s) ? function (t) {
for (var n = r.length, i = !1; n-- && (i = ne(t[r[n]], e[r[n]], null, !0)););
return i;
} : function (e) {
var t = e[o];
return s === t && (0 !== s || 1 / s == 1 / t);
};
}
function Yt(e) {
return null == e ? '' : xn(e).replace(oi, le);
}
function Gt(e) {
return e;
}
function jt(e, t, n) {
var i = !0, r = t && Ce(t);
t && (n || r.length) || (null == n && (n = t), o = p, t = e, e = g, r = Ce(t)), n === !1 ? i = !1 : Oe(n) && 'chain' in n && (i = n.chain);
var o = e, s = Re(o);
Ye(r, function (n) {
var r = e[n] = t[n];
s && (o.prototype[n] = function () {
var t = this.__chain__, n = this.__wrapped__, s = [n];
Vn.apply(s, arguments);
var a = r.apply(e, s);
if (i || t) {
if (n === a && Oe(a))
return this;
a = new o(a), a.__chain__ = t;
}
return a;
});
});
}
function en() {
return n._ = Mn, this;
}
function tn() {
}
function nn(e) {
return function (t) {
return t[e];
};
}
function rn(e, t, n) {
var i = null == e, r = null == t;
if (null == n && ('boolean' == typeof e && r ? (n = e, e = 1) : r || 'boolean' != typeof t || (n = t, r = !0)), i && r && (t = 1), e = +e || 0, r ? (t = e, e = 0) : t = +t || 0, n || e % 1 || t % 1) {
var o = Zn();
return zn(e + o * (t - e + parseFloat('1e-' + ((o + '').length - 1))), t);
}
return re(e, t);
}
function on(e, t) {
if (e) {
var n = e[t];
return Re(n) ? e[t]() : n;
}
}
function sn(e, t, n) {
var i = g.templateSettings;
e = xn(e || ''), n = ai({}, n, i);
var r, o = ai({}, n.imports, i.imports), a = ti(o), l = ke(o), u = 0, c = n.interpolate || R, d = '__p += \'', f = bn((n.escape || R).source + '|' + c.source + '|' + (c === T ? _ : R).source + '|' + (n.evaluate || R).source + '|$', 'g');
e.replace(f, function (t, n, i, o, a, l) {
return i || (i = o), d += e.slice(u, l).replace(B, s), n && (d += '\' +\n__e(' + n + ') +\n\''), a && (r = !0, d += '\';\n' + a + ';\n__p += \''), i && (d += '\' +\n((__t = (' + i + ')) == null ? \'\' : __t) +\n\''), u = l + t.length, t;
}), d += '\';\n';
var p = n.variable, v = p;
v || (p = 'obj', d = 'with (' + p + ') {\n' + d + '\n}\n'), d = (r ? d.replace(b, '') : d).replace(x, '$1').replace(E, '$1;'), d = 'function(' + p + ') {\n' + (v ? '' : p + ' || (' + p + ' = {});\n') + 'var __t, __p = \'\', __e = _.escape' + (r ? ', __j = Array.prototype.join;\n' + 'function print() { __p += __j.call(arguments, \'\') }\n' : ';\n') + d + 'return __p\n}';
var m = '\n/*\n//# sourceURL=' + (n.sourceURL || '/lodash/template/source[' + P++ + ']') + '\n*/';
try {
var w = mn(a, 'return ' + d + m).apply(h, l);
} catch (e) {
throw e.source = d, e;
}
return t ? w(t) : (w.source = d, w);
}
function an(e, t, n) {
e = (e = +e) > -1 ? e : 0;
var i = -1, r = gn(e);
for (t = Y(t, n, 1); ++i < e;)
r[i] = t(i);
return r;
}
function ln(e) {
return null == e ? '' : xn(e).replace(ri, fe);
}
function un(e) {
var t = ++v;
return xn(null == e ? '' : e) + t;
}
function cn(e) {
return e = new p(e), e.__chain__ = !0, e;
}
function dn(e, t) {
return t(e), e;
}
function fn() {
return this.__chain__ = !0, this;
}
function Sn() {
return xn(this.__wrapped__);
}
function hn() {
return this.__wrapped__;
}
n = n ? ee.defaults(Z.Object(), n, ee.pick(Z, A)) : Z;
var gn = n.Array, pn = n.Boolean, vn = n.Date, mn = n.Function, wn = n.Math, yn = n.Number, Cn = n.Object, bn = n.RegExp, xn = n.String, En = n.TypeError, _n = [], Fn = Cn.prototype, Mn = n._, Tn = Fn.toString, In = bn('^' + xn(Tn).replace(/[.*+?^${}()|[\]\\]/g, '\\$&').replace(/toString| for [^\]]+/g, '.*?') + '$'), Rn = wn.ceil, On = n.clearTimeout, Bn = wn.floor, An = mn.prototype.toString, Pn = ce(Pn = Cn.getPrototypeOf) && Pn, Dn = Fn.hasOwnProperty, Vn = _n.push, Kn = n.setTimeout, Hn = _n.splice, Nn = _n.unshift, Wn = function () {
try {
var e = {}, t = ce(t = Cn.defineProperty) && t, n = t(e, e, e) && t;
} catch (e) {
}
return n;
}(), qn = ce(qn = Cn.create) && qn, Ln = ce(Ln = gn.isArray) && Ln, Un = n.isFinite, kn = n.isNaN, $n = ce($n = Cn.keys) && $n, Xn = wn.max, zn = wn.min, Qn = n.parseInt, Zn = wn.random, Jn = {};
Jn[V] = gn, Jn[K] = pn, Jn[H] = vn, Jn[N] = mn, Jn[q] = Cn, Jn[W] = yn, Jn[L] = bn, Jn[U] = xn, p.prototype = g.prototype;
var Yn = g.support = {};
Yn.funcDecomp = !ce(n.WinRTError) && O.test(f), Yn.funcNames = 'string' == typeof mn.name, g.templateSettings = {
escape: /<%-([\s\S]+?)%>/g,
evaluate: /<%([\s\S]+?)%>/g,
interpolate: T,
variable: '',
imports: { _: g }
}, qn || (J = function () {
function e() {
}
return function (t) {
if (Oe(t)) {
e.prototype = t;
var i = new e();
e.prototype = null;
}
return i || n.Object();
};
}());
var Gn = Wn ? function (e, t) {
X.value = t, Wn(e, '__bindData__', X), X.value = null;
} : tn, jn = Ln || function (e) {
return e && 'object' == typeof e && 'number' == typeof e.length && Tn.call(e) == V || !1;
}, ei = function (e) {
var t, n = e, i = [];
if (!n)
return i;
if (!z[typeof e])
return i;
for (t in n)
Dn.call(n, t) && i.push(t);
return i;
}, ti = $n ? function (e) {
return Oe(e) ? $n(e) : [];
} : ei, ni = {
'&': '&',
'<': '<',
'>': '>',
'"': '"',
'\'': '''
}, ii = xe(ni), ri = bn('(' + ti(ii).join('|') + ')', 'g'), oi = bn('[' + ti(ni).join('') + ']', 'g'), si = function (e, t, n) {
var i, r = e, o = r;
if (!r)
return o;
var s = arguments, a = 0, l = 'number' == typeof n ? 2 : s.length;
if (l > 3 && 'function' == typeof s[l - 2])
var u = Y(s[--l - 1], s[l--], 2);
else
l > 2 && 'function' == typeof s[l - 1] && (u = s[--l]);
for (; ++a < l;)
if (r = s[a], r && z[typeof r])
for (var c = -1, d = z[typeof r] && ti(r), f = d ? d.length : 0; ++c < f;)
i = d[c], o[i] = u ? u(o[i], r[i]) : r[i];
return o;
}, ai = function (e, t, n) {
var i, r = e, o = r;
if (!r)
return o;
for (var s = arguments, a = 0, l = 'number' == typeof n ? 2 : s.length; ++a < l;)
if (r = s[a], r && z[typeof r])
for (var u = -1, c = z[typeof r] && ti(r), d = c ? c.length : 0; ++u < d;)
i = c[u], 'undefined' == typeof o[i] && (o[i] = r[i]);
return o;
}, li = function (e, t, n) {
var i, r = e, o = r;
if (!r)
return o;
if (!z[typeof r])
return o;
t = t && 'undefined' == typeof n ? t : Y(t, n, 3);
for (i in r)
if (t(r[i], i, e) === !1)
return o;
return o;
}, ui = function (e, t, n) {
var i, r = e, o = r;
if (!r)
return o;
if (!z[typeof r])
return o;
t = t && 'undefined' == typeof n ? t : Y(t, n, 3);
for (var s = -1, a = z[typeof r] && ti(r), l = a ? a.length : 0; ++s < l;)
if (i = a[s], t(r[i], i, e) === !1)
return o;
return o;
}, ci = Pn ? function (e) {
if (!e || Tn.call(e) != q)
return !1;
var t = e.valueOf, n = ce(t) && (n = Pn(t)) && Pn(n);
return n ? e == n || Pn(e) == n : de(e);
} : de, di = se(function (e, t, n) {
Dn.call(e, n) ? e[n]++ : e[n] = 1;
}), fi = se(function (e, t, n) {
(Dn.call(e, n) ? e[n] : e[n] = []).push(t);
}), Si = se(function (e, t, n) {
e[n] = t;
}), hi = et, gi = Qe, pi = ce(pi = vn.now) && pi || function () {
return new vn().getTime();
}, vi = 8 == Qn(C + '08') ? Qn : function (e, t) {
return Qn(Ve(e) ? e.replace(I, '') : e, t || 0);
};
return g.after = Pt, g.assign = si, g.at = $e, g.bind = Dt, g.bindAll = Vt, g.bindKey = Kt, g.chain = cn, g.compact = ft, g.compose = Ht, g.constant = Zt, g.countBy = di, g.create = pe, g.createCallback = Jt, g.curry = Nt, g.debounce = Wt, g.defaults = ai, g.defer = qt, g.delay = Lt, g.difference = St, g.filter = Qe, g.flatten = vt, g.forEach = Ye, g.forEachRight = Ge, g.forIn = li, g.forInRight = we, g.forOwn = ui, g.forOwnRight = ye, g.functions = Ce, g.groupBy = fi, g.indexBy = Si, g.initial = wt, g.intersection = yt, g.invert = xe, g.invoke = je, g.keys = ti, g.map = et, g.mapValues = He, g.max = tt, g.memoize = Ut, g.merge = Ne, g.min = nt, g.omit = We, g.once = kt, g.pairs = qe, g.partial = $t, g.partialRight = Xt, g.pick = Le, g.pluck = hi, g.property = nn, g.pull = xt, g.range = Et, g.reject = ot, g.remove = _t, g.rest = Ft, g.shuffle = at, g.sortBy = ct, g.tap = dn, g.throttle = zt, g.times = an, g.toArray = dt, g.transform = Ue, g.union = Tt, g.uniq = It, g.values = ke, g.where = gi, g.without = Rt, g.wrap = Qt, g.xor = Ot, g.zip = Bt, g.zipObject = At, g.collect = et, g.drop = Ft, g.each = Ye, g.eachRight = Ge, g.extend = si, g.methods = Ce, g.object = At, g.select = Qe, g.tail = Ft, g.unique = It, g.unzip = Bt, jt(g), g.clone = he, g.cloneDeep = ge, g.contains = Xe, g.escape = Yt, g.every = ze, g.find = Ze, g.findIndex = ht, g.findKey = ve, g.findLast = Je, g.findLastIndex = gt, g.findLastKey = me, g.has = be, g.identity = Gt, g.indexOf = mt, g.isArguments = Se, g.isArray = jn, g.isBoolean = Ee, g.isDate = _e, g.isElement = Fe, g.isEmpty = Me, g.isEqual = Te, g.isFinite = Ie, g.isFunction = Re, g.isNaN = Be, g.isNull = Ae, g.isNumber = Pe, g.isObject = Oe, g.isPlainObject = ci, g.isRegExp = De, g.isString = Ve, g.isUndefined = Ke, g.lastIndexOf = bt, g.mixin = jt, g.noConflict = en, g.noop = tn, g.now = pi, g.parseInt = vi, g.random = rn, g.reduce = it, g.reduceRight = rt, g.result = on, g.runInContext = f, g.size = lt, g.some = ut, g.sortedIndex = Mt, g.template = sn, g.unescape = ln, g.uniqueId = un, g.all = ze, g.any = ut, g.detect = Ze, g.findWhere = Ze, g.foldl = it, g.foldr = rt, g.include = Xe, g.inject = it, jt(function () {
var e = {};
return ui(g, function (t, n) {
g.prototype[n] || (e[n] = t);
}), e;
}(), !1), g.first = pt, g.last = Ct, g.sample = st, g.take = pt, g.head = pt, ui(g, function (e, t) {
var n = t !== 'sample';
g.prototype[t] || (g.prototype[t] = function (t, i) {
var r = this.__chain__, o = e(this.__wrapped__, t, i);
return r || null != t && (!i || n && 'function' == typeof t) ? new p(o, r) : o;
});
}), g.VERSION = '2.4.2', g.prototype.chain = fn, g.prototype.toString = Sn, g.prototype.value = hn, g.prototype.valueOf = hn, Ye([
'join',
'pop',
'shift'
], function (e) {
var t = _n[e];
g.prototype[e] = function () {
var e = this.__chain__, n = t.apply(this.__wrapped__, arguments);
return e ? new p(n, e) : n;
};
}), Ye([
'push',
'reverse',
'sort',
'unshift'
], function (e) {
var t = _n[e];
g.prototype[e] = function () {
return t.apply(this.__wrapped__, arguments), this;
};
}), Ye([
'concat',
'slice',
'splice'
], function (e) {
var t = _n[e];
g.prototype[e] = function () {
return new p(t.apply(this.__wrapped__, arguments), this.__chain__);
};
}), g;
}
var h, g = [], p = [], v = 0, m = +new Date() + '', w = 75, y = 40, C = ' \t\x0B\f\xA0\uFEFF' + '\n\r\u2028\u2029' + '\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000', b = /\b__p \+= '';/g, x = /\b(__p \+=) '' \+/g, E = /(__e\(.*?\)|\b__t\)) \+\n'';/g, _ = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g, F = /\w*$/, M = /^\s*function[ \n\r\t]+\w/, T = /<%=([\s\S]+?)%>/g, I = RegExp('^[' + C + ']*0+(?=.$)'), R = /($^)/, O = /\bthis\b/, B = /['\n\r\t\u2028\u2029\\]/g, A = [
'Array',
'Boolean',
'Date',
'Function',
'Math',
'Number',
'Object',
'RegExp',
'String',
'_',
'attachEvent',
'clearTimeout',
'isFinite',
'isNaN',
'parseInt',
'setTimeout'
], P = 0, D = '[object Arguments]', V = '[object Array]', K = '[object Boolean]', H = '[object Date]', N = '[object Function]', W = '[object Number]', q = '[object Object]', L = '[object RegExp]', U = '[object String]', k = {};
k[N] = !1, k[D] = k[V] = k[K] = k[H] = k[W] = k[q] = k[L] = k[U] = !0;
var $ = {
leading: !1,
maxWait: 0,
trailing: !1
}, X = {
configurable: !1,
enumerable: !1,
value: null,
writable: !1
}, z = {
boolean: !1,
function: !0,
object: !0,
number: !1,
string: !1,
undefined: !1
}, Q = {
'\\': '\\',
'\'': '\'',
'\n': 'n',
'\r': 'r',
'\t': 't',
'\u2028': 'u2028',
'\u2029': 'u2029'
}, Z = z[typeof window] && window || this, J = z[typeof exports] && exports && !exports.nodeType && exports, Y = z[typeof module] && module && !module.nodeType && module, G = Y && Y.exports === J && J, j = z[typeof global] && global;
!j || j.global !== j && j.window !== j || (Z = j);
var ee = f();
'function' == typeof CKFinder.define && 'object' == typeof CKFinder.define.amd && CKFinder.define.amd ? (Z._ = ee, CKFinder.define('underscore', [], function () {
return ee;
})) : J && Y ? G ? (Y.exports = ee)._ = ee : J._ = ee : Z._ = ee;
}.call(this), function () {
function e(t, n, i) {
return ('string' == typeof n ? n : n.toString()).replace(t.define || s, function (e, n, r, o) {
return 0 === n.indexOf('def.') && (n = n.substring(4)), n in i || (':' === r ? (t.defineParams && o.replace(t.defineParams, function (e, t, r) {
i[n] = {
arg: t,
text: r
};
}), n in i || (i[n] = o)) : new Function('def', 'def[\'' + n + '\']=' + o)(i)), '';
}).replace(t.use || s, function (n, r) {
t.useParams && (r = r.replace(t.useParams, function (e, t, n, r) {
if (i[n] && i[n].arg && r)
return e = (n + ':' + r).replace(/'|\\/g, '_'), i.__exp = i.__exp || {}, i.__exp[e] = i[n].text.replace(new RegExp('(^|[^\\w$])' + i[n].arg + '([^\\w$])', 'g'), '$1' + r + '$2'), t + 'def.__exp[\'' + e + '\']';
}));
var o = new Function('def', 'return ' + r)(i);
return o ? e(t, o, i) : o;
});
}
function t(e) {
return e.replace(/\\('|\\)/g, '$1').replace(/[\r\t\n]/g, ' ');
}
var n, i = {
version: '1.0.3',
templateSettings: {
evaluate: /\{\{([\s\S]+?(\}?)+)\}\}/g,
interpolate: /\{\{=([\s\S]+?)\}\}/g,
encode: /\{\{!([\s\S]+?)\}\}/g,
use: /\{\{#([\s\S]+?)\}\}/g,
useParams: /(^|[^\w$])def(?:\.|\[[\'\"])([\w$\.]+)(?:[\'\"]\])?\s*\:\s*([\w$\.]+|\"[^\"]+\"|\'[^\']+\'|\{[^\}]+\})/g,
define: /\{\{##\s*([\w\.$]+)\s*(\:|=)([\s\S]+?)#\}\}/g,
defineParams: /^\s*([\w$]+):([\s\S]+)/,
conditional: /\{\{\?(\?)?\s*([\s\S]*?)\s*\}\}/g,
iterate: /\{\{~\s*(?:\}\}|([\s\S]+?)\s*\:\s*([\w$]+)\s*(?:\:\s*([\w$]+))?\s*\}\})/g,
varname: 'it',
strip: !0,
append: !0,
selfcontained: !1,
doNotSkipEncoded: !1
},
template: void 0,
compile: void 0
};
i.encodeHTMLSource = function (e) {
var t = {
'&': '&',
'<': '<',
'>': '>',
'"': '"',
'\'': ''',
'/': '/'
}, n = e ? /[&<>"'\/]/g : /&(?!#?\w+;)|<|>|"|'|\//g;
return function (e) {
return e ? e.toString().replace(n, function (e) {
return t[e] || e;
}) : '';
};
}, n = function () {
return this || (0, eval)('this');
}(), 'undefined' != typeof module && module.exports ? module.exports = i : 'function' == typeof CKFinder.define && CKFinder.define.amd ? CKFinder.define('doT', [], function () {
return i;
}) : n.doT = i;
var r = {
start: '\'+(',
end: ')+\'',
startencode: '\'+encodeHTML('
}, o = {
start: '\';out+=(',
end: ');out+=\'',
startencode: '\';out+=encodeHTML('
}, s = /$^/;
i.template = function (a, l, u) {
l = l || i.templateSettings;
var c, d, f = l.append ? r : o, h = 0;
a = l.use || l.define ? e(l, a, u || {}) : a, a = ('var out=\'' + (l.strip ? a.replace(/(^|\r|\n)\t* +| +\t*(\r|\n|$)/g, ' ').replace(/\r|\n|\t|\/\*[\s\S]*?\*\//g, '') : a).replace(/'|\\/g, '\\$&').replace(l.interpolate || s, function (e, n) {
return f.start + t(n) + f.end;
}).replace(l.encode || s, function (e, n) {
return c = !0, f.startencode + t(n) + f.end;
}).replace(l.conditional || s, function (e, n, i) {
return n ? i ? '\';}else if(' + t(i) + '){out+=\'' : '\';}else{out+=\'' : i ? '\';if(' + t(i) + '){out+=\'' : '\';}out+=\'';
}).replace(l.iterate || s, function (e, n, i, r) {
return n ? (h += 1, d = r || 'i' + h, n = t(n), '\';var arr' + h + '=' + n + ';if(arr' + h + '){var ' + i + ',' + d + '=-1,l' + h + '=arr' + h + '.length-1;while(' + d + '').attr(e);
this.setElement(i, !1);
}
}
}), t.sync = function (e, i, r) {
var o = E[e];
n.defaults(r || (r = {}), {
emulateHTTP: t.emulateHTTP,
emulateJSON: t.emulateJSON
});
var s = {
type: o,
dataType: 'json'
};
if (r.url || (s.url = n.result(i, 'url') || K()), null != r.data || !i || e !== 'create' && e !== 'update' && e !== 'patch' || (s.contentType = 'application/json', s.data = JSON.stringify(r.attrs || i.toJSON(r))), r.emulateJSON && (s.contentType = 'application/x-www-form-urlencoded', s.data = s.data ? { model: s.data } : {}), r.emulateHTTP && (o === 'PUT' || o === 'DELETE' || o === 'PATCH')) {
s.type = 'POST', r.emulateJSON && (s.data._method = o);
var a = r.beforeSend;
r.beforeSend = function (e) {
if (e.setRequestHeader('X-HTTP-Method-Override', o), a)
return a.apply(this, arguments);
};
}
s.type === 'GET' || r.emulateJSON || (s.processData = !1), s.type === 'PATCH' && x && (s.xhr = function () {
return new ActiveXObject('Microsoft.XMLHTTP');
});
var l = r.xhr = t.ajax(n.extend(s, r));
return i.trigger('request', i, l, r), l;
};
var x = !('undefined' == typeof window || !window.ActiveXObject || window.XMLHttpRequest && new XMLHttpRequest().dispatchEvent), E = {
create: 'POST',
update: 'PUT',
patch: 'PATCH',
delete: 'DELETE',
read: 'GET'
};
t.ajax = function () {
return t.$.ajax.apply(t.$, arguments);
};
var _ = t.Router = function (e) {
e || (e = {}), e.routes && (this.routes = e.routes), this._bindRoutes(), this.initialize.apply(this, arguments);
}, F = /\((.*?)\)/g, M = /(\(\?)?:\w+/g, T = /\*\w+/g, I = /[\-{}\[\]+?.,\\\^$|#\s]/g;
n.extend(_.prototype, a, {
initialize: function () {
},
route: function (e, i, r) {
n.isRegExp(e) || (e = this._routeToRegExp(e)), n.isFunction(i) && (r = i, i = ''), r || (r = this[i]);
var o = this;
return t.history.route(e, function (n) {
var s = o._extractParameters(e, n);
o.execute(r, s), o.trigger.apply(o, ['route:' + i].concat(s)), o.trigger('route', i, s), t.history.trigger('route', o, i, s);
}), this;
},
execute: function (e, t) {
e && e.apply(this, t);
},
navigate: function (e, n) {
return t.history.navigate(e, n), this;
},
_bindRoutes: function () {
if (this.routes) {
this.routes = n.result(this, 'routes');
for (var e, t = n.keys(this.routes); null != (e = t.pop());)
this.route(e, this.routes[e]);
}
},
_routeToRegExp: function (e) {
return e = e.replace(I, '\\$&').replace(F, '(?:$1)?').replace(M, function (e, t) {
return t ? e : '([^/?]+)';
}).replace(T, '([^?]*?)'), new RegExp('^' + e + '(?:\\?([\\s\\S]*))?$');
},
_extractParameters: function (e, t) {
var i = e.exec(t).slice(1);
return n.map(i, function (e, t) {
return t === i.length - 1 ? e || null : e ? decodeURIComponent(e) : null;
});
}
});
var R = t.History = function () {
this.handlers = [], n.bindAll(this, 'checkUrl'), 'undefined' != typeof window && (this.location = window.location, this.history = window.history);
}, O = /^[#\/]|\s+$/g, B = /^\/+|\/+$/g, A = /msie [\w.]+/, P = /\/$/, D = /#.*$/;
R.started = !1, n.extend(R.prototype, a, {
interval: 50,
atRoot: function () {
return this.location.pathname.replace(/[^\/]$/, '$&/') === this.root;
},
getHash: function (e) {
var t = (e || this).location.href.match(/#(.*)$/);
return t ? t[1] : '';
},
getFragment: function (e, t) {
if (null == e)
if (this._hasPushState || !this._wantsHashChange || t) {
e = decodeURI(this.location.pathname + this.location.search);
var n = this.root.replace(P, '');
e.indexOf(n) || (e = e.slice(n.length));
} else
e = this.getHash();
return e.replace(O, '');
},
start: function (e) {
if (R.started)
throw new Error('Backbone.history has already been started');
R.started = !0, this.options = n.extend({ root: '/' }, this.options, e), this.root = this.options.root, this._wantsHashChange = this.options.hashChange !== !1, this._wantsPushState = !!this.options.pushState, this._hasPushState = !!(this.options.pushState && this.history && this.history.pushState);
var i = this.getFragment(), r = document.documentMode, o = A.exec(navigator.userAgent.toLowerCase()) && (!r || r <= 7);
if (this.root = ('/' + this.root + '/').replace(B, '/'), o && this._wantsHashChange) {
var s = t.$('